{"report_id":"52b78255-6c93-47f7-855a-25ac4fbdec0b","version":0,"status":"done","tags":[],"date":"2026-07-27T13:35:01Z","url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":0,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"final":{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"title":"Walmartfundholdings","dom":{"size":56135,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (9903)","md5":"94fe19e4e2a6a9a6c865c4008b6b38e9","sha1":"2279a7a718427c51624560ae9a2f7fc544887545","sha256":"636c4dd5684c8af801ed80bbeaed4a849df34ce6df9e32824b9edc275e20e880","sha512":"308caa87f894080bebb14adc2b6c1b8365fb0d9a5efc18059f76642c9a9718b30fe52d83dba7ee75cf347e51e837c10888aba1e89ac1e67af78eb1f91f17f8b1","ssdeep":"768:/tvTCm70XXJi3myr/bBHFmHQhe+2ILjzesDjjUj7abH+K0PSzIF:lTCw+KmyHBlmHqe+2IFjg7zSzIF","tlshash":"7943953069a0992b41cb84c4a672573a2bb9c307c6174588ffbc97f45f9fcaac933558","dom_hash":"domhashbb17836751415830f8d017cae3dbfafb","first_seen":"","last_seen":"","times_seen":0,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":0,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T13:35: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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null},"summary":[{"fqdn":"s2.coinmarketcap.com","ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"domain_registered":"2013-04-28","domain_rank":209181,"first_seen":"2018-01-12T04:47:19Z","last_seen":"2026-07-27T02:47:27.888767Z","alert_count":0,"request_count":50,"received_data":130285,"sent_data":28007,"comment":"","tags":null,"fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":"fonts.gstatic.com","ip":{"addr":"142.250.178.99","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":11,"received_data":349890,"sent_data":6225,"comment":"","tags":null,"fingerprints":null},{"fqdn":"fonts.googleapis.com","ip":{"addr":"142.250.178.106","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":3,"received_data":25530,"sent_data":1634,"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":"s3-symbol-logo.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":110931,"first_seen":"2020-11-23T08:22:37Z","last_seen":"2026-07-25T00:19:15.629884Z","alert_count":0,"request_count":9,"received_data":15559,"sent_data":5202,"comment":"","tags":null,"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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}]},{"fqdn":"translate.google.com","ip":{"addr":"142.250.178.110","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"1997-09-15","domain_rank":609,"first_seen":"2012-05-30T01:30:32Z","last_seen":"2026-07-20T21:58:05.03314Z","alert_count":0,"request_count":2,"received_data":77724,"sent_data":1104,"comment":"","tags":null,"fingerprints":null},{"fqdn":"translate.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":6317,"first_seen":"2012-05-31T07:21:21Z","last_seen":"2026-07-20T14:48:05.930258Z","alert_count":0,"request_count":5,"received_data":200675,"sent_data":2983,"comment":"","tags":null,"fingerprints":null},{"fqdn":"bootstrap.smartsuppchat.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"domain_registered":"2014-02-02","domain_rank":425291,"first_seen":"2018-01-29T06:10:36Z","last_seen":"2026-07-24T07:15:25.204838Z","alert_count":0,"request_count":1,"received_data":0,"sent_data":549,"comment":"","tags":null,"fingerprints":null},{"fqdn":"static.getbutton.io","ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2019-09-03","domain_rank":386210,"first_seen":"2019-10-01T09:11:58Z","last_seen":"2026-07-25T14:48:54.018453Z","alert_count":0,"request_count":2,"received_data":443360,"sent_data":961,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"www.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":146047,"first_seen":"2012-05-29T15:36:17Z","last_seen":"2026-07-26T23:06:30.068608Z","alert_count":0,"request_count":6,"received_data":49824,"sent_data":3619,"comment":"","tags":null,"fingerprints":null},{"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":677,"sent_data":631,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}]},{"fqdn":"www.google.com","ip":{"addr":"142.251.154.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"1997-09-15","domain_rank":22,"first_seen":"2015-05-10T13:11:19Z","last_seen":"2026-07-26T22:51:17.688286Z","alert_count":0,"request_count":2,"received_data":63673,"sent_data":1052,"comment":"","tags":null,"fingerprints":null},{"fqdn":"i.ytimg.com","ip":{"addr":"142.250.178.86","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2007-12-11","domain_rank":436,"first_seen":"2012-10-03T19:11:04Z","last_seen":"2026-07-27T08:17:00.256785Z","alert_count":0,"request_count":1,"received_data":40442,"sent_data":656,"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":13694,"sent_data":509,"comment":"","tags":null,"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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}]},{"fqdn":"translate-pa.googleapis.com","ip":{"addr":"172.217.117.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":8472,"first_seen":"2021-11-04T06:37:42Z","last_seen":"2026-07-21T21:38:43.172366Z","alert_count":0,"request_count":1,"received_data":32349,"sent_data":579,"comment":"","tags":null,"fingerprints":null},{"fqdn":"www.tradingview-widget.com","ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"domain_registered":"2020-06-05","domain_rank":196495,"first_seen":"2021-04-08T06:14:48Z","last_seen":"2026-07-24T15:28:31.440139Z","alert_count":0,"request_count":28,"received_data":666643,"sent_data":15484,"comment":"","tags":null,"fingerprints":[{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.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":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]}]},{"fqdn":"widget-v3.smartsuppcdn.com","ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"domain_registered":"2018-11-20","domain_rank":532262,"first_seen":"2022-10-03T13:48:45Z","last_seen":"2026-07-24T15:28:31.507831Z","alert_count":0,"request_count":4,"received_data":329036,"sent_data":1910,"comment":"","tags":null,"fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}]},{"fqdn":"www.smartsuppchat.com","ip":{"addr":"185.76.9.12","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"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":18547,"sent_data":470,"comment":"","tags":null,"fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}]},{"fqdn":"jnn-pa.googleapis.com","ip":{"addr":"172.217.115.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":1579,"first_seen":"2021-11-16T06:12:21Z","last_seen":"2026-07-27T10:05:01.711627Z","alert_count":0,"request_count":2,"received_data":1197,"sent_data":1220,"comment":"","tags":null,"fingerprints":null},{"fqdn":"translations.smartsuppcdn.com","ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"domain_registered":"2018-11-20","domain_rank":560346,"first_seen":"2022-11-04T22:28:35Z","last_seen":"2026-07-24T15:28:31.911258Z","alert_count":0,"request_count":1,"received_data":7734,"sent_data":531,"comment":"","tags":null,"fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}]},{"fqdn":"translate.yandex.net","ip":{"addr":"213.180.204.194","port":443,"asn":13238,"as":"YANDEX LLC","country":"Russia","country_code":"RU"},"domain_registered":"2000-11-14","domain_rank":123882,"first_seen":"2013-04-25T11:29:08Z","last_seen":"2026-07-24T08:16:34.761788Z","alert_count":0,"request_count":2,"received_data":598,"sent_data":1229,"comment":"","tags":null,"fingerprints":null},{"fqdn":"www.googletagmanager.com","ip":{"addr":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2011-11-11","domain_rank":283,"first_seen":"2012-10-04T01:07:32Z","last_seen":"2026-07-26T22:31:28.839046Z","alert_count":0,"request_count":1,"received_data":489157,"sent_data":473,"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":"widgetdata.tradingview.com","ip":{"addr":"92.38.154.216","port":443,"asn":202422,"as":"G-Core Labs S.A.","country":"The Netherlands","country_code":"NL"},"domain_registered":"2010-03-20","domain_rank":179381,"first_seen":"2015-02-20T09:47:36Z","last_seen":"2026-07-26T01:26:45.690501Z","alert_count":0,"request_count":1,"received_data":224,"sent_data":787,"comment":"","tags":null,"fingerprints":null},{"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":856468,"sent_data":7748,"comment":"","tags":null,"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"]},{"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":"www.youtube.com","ip":{"addr":"142.251.152.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":8,"received_data":3658696,"sent_data":9889,"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":"websocket-visitors.smartsupp.com","ip":{"addr":"52.59.7.56","port":443,"asn":16509,"as":"AMAZON-02","country":"Germany","country_code":"DE"},"domain_registered":"2012-08-25","domain_rank":411464,"first_seen":"2021-07-12T07:42:32Z","last_seen":"2026-07-24T09:04:26.067381Z","alert_count":0,"request_count":1,"received_data":224,"sent_data":638,"comment":"","tags":null,"fingerprints":null},{"fqdn":"widget-sheriff.tradingview-widget.com","ip":{"addr":"143.204.238.89","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"domain_registered":"2020-06-05","domain_rank":206730,"first_seen":"2024-02-01T14:12:53Z","last_seen":"2026-07-24T23:32:22.077351Z","alert_count":0,"request_count":1,"received_data":655,"sent_data":573,"comment":"","tags":null,"fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":"walmartfundholdings.com","ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"domain_registered":"2022-10-09","domain_rank":0,"first_seen":"2026-07-27T07:08:32.031513Z","last_seen":"2026-07-27T07:08:32.031513Z","alert_count":48,"request_count":48,"received_data":2145010,"sent_data":25020,"comment":"","tags":null,"fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]},{"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":"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:2.1.4","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":"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"]}]}],"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":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"04d43d476fc66e43b545912ac9e06410","sha1":"4b3f58985347c8ef6ca71351d82309171cf507c9","sha256":"f50c4e82b55b7c70b931a6b4abe9844100e9a7b2a994a76accbaf6414645b02f","sha512":"5162b010b3bb20ef68b83aac7cd8cf9a2ef7a1ddfae9a1fc5cc6568fc9f698c116dfc6f617cb56df3e3d26a41ddcf123e37ed149275e541bd50c800e0c2a402d","ssdeep":"","tlshash":"cae068b6c00271aa3bcd42179ca37e1880f17915fd2e68ceb140a29dee24023600648f","size":399,"data":"","first_seen":"2026-07-27T00:29:31.73942Z","last_seen":"2026-07-28T07:04:56.52577Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2fa55cf120cce28707af1ba6a6235bc1","sha1":"65c1c8c828eceeeb4dcfef82e3233d93d4481d4c","sha256":"3e392b8a407e240e3c6ba3bbe6ec68cfc5564083cbc01a721d8b7e24f458bb67","sha512":"96756c245788a6f83d9f8123c7b7f789bdca00d26d02fc822e8bc40c5798223eac50768284955eb23a66241f6cc9edce8ffe6943a9fc87a7a12b9fbf795f0a6c","ssdeep":"","tlshash":"ccf0eb2b914f23ad9a8961092ca3ec42383bf8643026446e06dd13f015d06e8e4ece42","size":585,"data":"","first_seen":"2026-07-27T00:29:31.592417Z","last_seen":"2026-07-28T07:04:56.441303Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7e5cec842256e3f47d70b3085fd4b4e7","sha1":"5546521bbb99af58059ae8866b62e5ca0102cf6c","sha256":"2511327b3eb1835430b0e19f65747475bae631945c3360e49e157c01d9c3334d","sha512":"6eddfe962fd9435f350093764956ddd18c719c776487914eaca38f343a08f89b711618d3ed40c167e25dd8cf2ae50344f612f2fdeb3fc2618ae77dbd9add8bde","ssdeep":"","tlshash":"30a024047c751017f01fc015740f110400cf3107c0141401f44d05c400f0c1470114cf","size":72,"data":"","first_seen":"2026-07-27T00:29:31.618862Z","last_seen":"2026-07-28T07:04:56.484313Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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-07-30T06:23:10.731129Z","times_seen":296178,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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-07-30T06:23:10.731626Z","times_seen":259998,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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-07-30T06:37:33.055077Z","times_seen":17977,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"d920b9686186b318c107b01047e7965f","sha1":"96da13b1963b8bfeb05a6190fe7cd78ccb056a5b","sha256":"9ea43ba0f12e06c6d596e62068ea3fbee3079dc007dcb90a547687ae1155fee8","sha512":"ffa544132ecbd9ded974e643eccf59e8f225b4b06339d1669c36768718689aa6dfea3dd4100eeaa5ee24d07ecbd2ebc50a3d8a37c8ea6fc7d98b196a07c4dfdd","ssdeep":"768:K1ChGD4UkXHwUPDi7bO5rgJjMzKYMdmq97SyY/v1M6LnBKMzh7DR5zg3cHyVloQ:o+QKPjMFzYVM6bBTzhJccJQ","tlshash":"fb7352240868a8769893e547deb9ff3e9cf406790bc99aadbcb7835c01ec6510d9f413","size":78002,"data":"","first_seen":"2026-07-27T13:35:15.360921Z","last_seen":"2026-07-27T13:35:15.360921Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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-07-30T06:23:10.733517Z","times_seen":111575,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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-07-30T06:37:33.059011Z","times_seen":17958,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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-07-30T06:23:10.734534Z","times_seen":258062,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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-07-30T06:23:10.736126Z","times_seen":254728,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"13d94bbe6c41c7906f70f147800c5163","sha1":"191f1fee83622dbb54c36b95fddb266d63517322","sha256":"7e00ed6d41121a73f99b9b97953103884fdc95e794ab567baab13d757d577969","sha512":"f7ea31991e41baccb5ad37b3c9c55979732ba60726a6b0c854a8f28dd6eebcf6c5dd68a6458d712ffa911a8bb8ca77ed7df812f6dfe91876943c580f89b70743","ssdeep":"768:F6ScvYQzFF3xjyEsdCljT/3lfDRtlY4tej1fLspBriJJ6M4I98jKX3+8:OzFtxjsdCljjlLXlYkejxLspQJJ6M4It","tlshash":"20f2e1c7f085dfe712552f927e4f68bd0e28053aba15d5dbe1c14180bead902e10eda5","size":37393,"data":"","first_seen":"2026-07-27T13:35:15.368292Z","last_seen":"2026-07-27T13:35:15.368292Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"a85ccaacee41a2fba92e1e1d8dbfd529","sha1":"d629865d669837db49119129ee8aed81e81eb360","sha256":"0bf2a8fec3875fc76f50aac6925fe334c4497cd72551e4242b6419319592d725","sha512":"eac6801004b5c9c03859805c6d87d942c33942387347f8e0c2834cd767f292682b52be3d5ab9ae1799590bae98c371ed531c249851c329d8b20d8b497b0ae891","ssdeep":"","tlshash":"fca02223c028c003003880a00e833002e00803208802a00c030a020c30e800bfe8808a","size":62,"data":"","first_seen":"2023-12-11T07:26:29Z","last_seen":"2026-07-30T06:58:00.994542Z","times_seen":5878,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"Function","is_inline":false,"md5":"29d0c84b9d1d8da446a6062c6a840ad9","sha1":"6d6b3a6065667c7c50d92f3889c85ed65a9ad784","sha256":"3c3cbdb71d0d2c22f504f4d63d8a6ffe8d250cde7e58300619be35b6bbab26a1","sha512":"52cfcbf2f7c3521c5a6c6120099ee6822d16e04ffbc04720da925a11242c8c2050f9cfc8d864a6d39a0036ac599f701080195a29a7c5e8d3e9308b91f9f0390f","ssdeep":"","tlshash":"428004d533c350004753117c04571cc4d034447014444d405040d4531c570315115c7c","size":37,"data":"","first_seen":"2023-04-11T21:31:25Z","last_seen":"2026-07-30T06:20:34.057144Z","times_seen":735419,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"42e34d43963ba5c8f37c775b35258a3f","sha1":"77848caef3f422b34490fbcc9b420a2eae91e973","sha256":"4bca020551dc54855ef72cda3d88a25ac010c32345bebd8111e1d884f56b1dfb","sha512":"1d102717114d2322ba1fd3ec6fab0b9da9bc194793c340ce4efc56611ac5ea53860b13a04ec8c3e20da463da1c752b9254516dce5bc499934db40f301037ea5a","ssdeep":"","tlshash":"8690020da4210201206830c4fa8236426c9104a04f099c100101d81061c910bc8556df","size":46,"data":"","first_seen":"2026-05-25T20:24:44.282834Z","last_seen":"2026-07-30T06:08:06.717821Z","times_seen":4153,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"2d411354f21bb22b65f55d8bfad14f6e","sha1":"0a0a24845eb1cac5a48518e1bc5db6e3d5dce792","sha256":"cb1426008557b5894157468472242e22bb84d186d91063e50456abb38b79ed23","sha512":"f95f53d57cf6b8cd06137c700ea9f82b2342115f8ac40630b9fcd57322f6e4d42e6ed7ffe48e64c0dbe39388cfb9f76813d882fb40b9c5504cf0e670ab3b28fb","ssdeep":"","tlshash":"1d80002080a00000a28830c2e008002c3838c3320a8022c0838080028082ae082e02a3","size":27,"data":"","first_seen":"2026-07-16T11:36:17.999846Z","last_seen":"2026-07-30T06:08:06.718417Z","times_seen":2727,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"cedf52b3a3dd4f89f143cef57be3e25e","sha1":"4bbdaab0ef4608f280bcfbede3355e64435b4605","sha256":"7310ca8236b9865b54804e035240f54fa63a15a95a5f97114f103f45860d1cf8","sha512":"767ccf1923e0338f70c4a9e3d9e32cee66a05dc0a5a22010f81905ba9c872e473dc89c939e8d9792e2857090d357b522de09161f09c760b845044c41df863218","ssdeep":"384:LipOwuVkogCEowCWLg/JcVlRcHtmjpfbrtka4Mus30:eNogFbLrv30","tlshash":"f0822067c80da32ac456de26bc7bb602fc2e075945b529646aecc86c04c7d53e30ba7d","size":18677,"data":"","first_seen":"2026-07-27T08:06:30.222765Z","last_seen":"2026-07-28T04:59:54.550965Z","times_seen":89,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"8062d232826eee4ffac1e152a5142514","sha1":"1b7f2090ebcfc1380f56c34dfc4f294c7301605d","sha256":"ace81cabed19b96885e6fec0ca99bfc73b71b6ad7df50664f92e68ca7281512c","sha512":"4e11703f66d5cb936d78dc2aca12c94504819135e1040189ba4675f1c0b5c1478ece5ca2f02d7c893a38b341f34dc318703d6d7a4c51307c031d5384676f2c01","ssdeep":"","tlshash":"78f02d7c1403dcf784fa1082c6b8e2c0c653856aef942ee123408ac2220ebaf02b1bd1","size":651,"data":"","first_seen":"2026-05-25T20:24:44.288837Z","last_seen":"2026-07-30T06:08:06.719959Z","times_seen":4297,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"f07c4f86a1b5524cec5397c170a0e9b5","sha1":"a8ef59c61a316f6095680bcecfa0c48466d72593","sha256":"32849254237db69547de8eb2f61b99d95e7466b89168687bf780bfd79467fbd0","sha512":"2c656e2adb0d00233577547ecc1f0efcf98bdfcf0f87ffc62fedafb4e4fc22e8c04e348d02bb3f3d0db21962e55712f132738e0685fa2c3e9755a241d55b9446","ssdeep":"","tlshash":"ce11570a0135042a7ae04164b6362ef5352c3add4b43daec5b857c0972b3a768d50bfe","size":957,"data":"","first_seen":"2026-05-25T20:34:17.759767Z","last_seen":"2026-07-30T06:08:06.72288Z","times_seen":3436,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"a451bd95e420d24a151cb5a25660fc44","sha1":"de8b722786339662ff8f0f6a25cd85930eddfb6d","sha256":"c8f09d6bcd1db51b6c98a3f11c98e6af82972a8fbd80e72dd14822bdc7c8ca97","sha512":"80b4700545cf6047c2c0d3f4a2156c0bef71d9bb050e302185e1806abce0b043b96d282712e02494ca2472e027a0e018e825ef23fd7a8d5f2768342dd46f086a","ssdeep":"","tlshash":"25e0cd478124c410b2d65848e53919f53109b59ae64309f1f260bf0cb1567f394d5dfc","size":321,"data":"","first_seen":"2026-07-24T11:36:48.290535Z","last_seen":"2026-07-28T07:05:00.709149Z","times_seen":1650,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"9d9bc5ffab15aed4773d569d62c5ba8b","sha1":"0c8d1aaf4c47cdfcda045dab107ca532b1f79b2c","sha256":"46a2e650802f69388f056281de89811b65b26bbb94350a0e175c7c4c4368a483","sha512":"8a7e0f121165dd69fcc12c3e8c8fa5cc13a4459d091f1229d33efba3db5cbe6adbd703665df67609399e5adc89884506e7fd6abb61759b06e7abd565d01c79e9","ssdeep":"384:RMt9Rl8Do+vHgzH6wmrebszczwhH/p5lOrylk6uNFCSF5I3epMtK3/MWFei:RWvGDo+vHgzH6/8szcyzuvCSF56yMi","tlshash":"44a2648196270c052bea174a68325103b22446f8d647395cbd786dee6e2cbc671f37fb","size":21867,"data":"","first_seen":"2026-07-24T11:36:48.297592Z","last_seen":"2026-07-30T06:08:06.724046Z","times_seen":1834,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"569704bfe6c1be70bea96e62c95d10b2","sha1":"1ebe9e3483f15928d18af8367a993cc1fe6f95f6","sha256":"577136df8200adf35699ebd443ff95aff588911e5451a64e7249b954d496ab08","sha512":"27482e4bae245a82e789bd6bba1746bd03fc6d2916045062e35f6bd7d8496ff54720271e9b16bf9c72972f08d7d7aeed33e1c0e2d0ef905ea9253578b05d44f2","ssdeep":"","tlshash":"6c3150f9e42264750ad310d832b7c7aa3f333595f1c72552c4bcc08a15a6dca24a3eed","size":1547,"data":"","first_seen":"2026-07-20T15:50:49.068553Z","last_seen":"2026-07-30T06:08:06.721151Z","times_seen":2603,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":true,"md5":"d080aef1e28b9ced897f549e49b13916","sha1":"75abf1173fad589cc5e35b388fa0a3067188e157","sha256":"cb914bbd5f3df056d111c04f26650d699d100920c24e13e5e50c67ecd1de4e93","sha512":"746fc099bb9ed96629e79d592c09b25bb38203a52cb1dced0a65325ff096b1ce9f508f5f2a26570312d75569a6b56be634501e6fa6a59c2fbde67af8418caa04","ssdeep":"","tlshash":"48d0a754212b612234dc3054d62ee6d1f5151a922fd310ebd7992018b665893a9547ed","size":245,"data":"","first_seen":"2026-05-25T20:24:44.292788Z","last_seen":"2026-07-30T06:08:06.721741Z","times_seen":4299,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1855a87d3f4aba7953ed6c6e95765678","sha1":"85431e8e30b87b1586c77c00e648abf3419fbe06","sha256":"d6c53d15606a1331049401414384be2df5d32c371224c85b67a7f3261546ef67","sha512":"ff148858ba17f8fcf680b3aad0e26f16eeb5e5ef968b18f3c730fca8edc1213ed09dcc4a591559a4eac96e2513f2d61aca8000b202d4b7fa9f2d4c6ea3337dc9","ssdeep":"","tlshash":"7fc092f6927ae822808ef272894a0538a10ab49a581d1c8d6605f568eff5314c269d46","size":135,"data":"","first_seen":"2026-07-27T00:29:31.746576Z","last_seen":"2026-07-28T07:04:56.482585Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"20a8416af2b17d630eec21a003e46152","sha1":"03d141aee4824bc2ccbfa6651dbbb53901c31f38","sha256":"fe0405628d7fe64ceb66f72ec0136c6a93cec7ae3a389462a169d0ea280f9aec","sha512":"93ccbd7eded70fc31497e79b215e5f104e37f993f590d5d502a7513e5e5b7a3f1fc921cf9b27a9f494bf917b9613e03167c324a2415f9293d0338cd2ab86173d","ssdeep":"","tlshash":"68d02bf74c79013f021f1bd5b6d7e1ed61da32ea25564b0dae74d1d4019449ce1c4e47","size":287,"data":"","first_seen":"2026-07-27T00:29:31.612434Z","last_seen":"2026-07-28T07:04:56.502942Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e213815f8e0b9954f8d43e3a59f8b742","sha1":"563796cb191f082f24fc52b017905533a0ceccc5","sha256":"842c53eb438fb28e95c14d32423b0fe01bf557c9e623b684b19663d497bce97e","sha512":"b5bae6d10c35f01992dcc33c3f24a7cee7ac0fb56cf4a9e79453d213297ffe3b8e6e4b3eb7de9b1d10a5ca2638e81ac3fd3e66e6d76d157a75163ac7caea4f89","ssdeep":"","tlshash":"ad60000ffc0c330000033030003f000c003300000c000000000000c00c3000f0003c0c","size":14,"data":"","first_seen":"2023-03-07T01:11:47Z","last_seen":"2026-07-30T06:23:09.397449Z","times_seen":202453,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c8d2aa8ba9377ef9dde4c69be2c71756","sha1":"e68ebea3bac5cc4cbee63d7f3868b90062165bb5","sha256":"e57b8072fa822139451ef537ee055d4a58e1b1dd2e490fbe1733d3ac5d143f3b","sha512":"2759d01a4329cb35fba481a44483f4ac472de5adadf86dbaa7dd2e6f6ec20babcda4d9e36badbcb8b3d70ef3ca72d76f7792a3c3587ca2e463766c473dc9148f","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000300000000000c00","size":2,"data":"","first_seen":"2023-03-07T13:57:02Z","last_seen":"2026-07-28T07:04:56.412336Z","times_seen":5866,"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-07-30T06:07:43.540498Z","times_seen":1706,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9f502ac14e14405587d798139e860b5f","sha1":"b267cfc679f39f2d95f9d3fa41bca0eafb931aa6","sha256":"39d2483e41bf71db160191d9a148b4bc26c0739e732727e37be0f18bdc8cabca","sha512":"f5bc3d4834c9c4ed165d49476795fb1170fdc577b58fe4b21dfc67cfb4f6eebf045a3812ef48a2f15758e790ce7e111cf9dbd9ffcc3438288c7340e6eeb7661f","ssdeep":"","tlshash":"b1c022ccbb3e600d9121f90031f84e46cb4125ac4407ede3a70128b4448180aca1f406","size":194,"data":"","first_seen":"2024-08-23T10:18:17Z","last_seen":"2026-07-30T06:23:09.379556Z","times_seen":174692,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80706.a5913aa6ad62d9dbf031.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"7d7a3ddeb844a1fdfe8b024f9df9f0b6","sha1":"b3afece36b14fafc7889e9b954f9736c892a2849","sha256":"0752584a0f2ad3bba4f44bbd6a44bf08a76726c524b79367996ab9b20e03bfba","sha512":"c0b04bf9ca52fee536a54ae9fcb3fcac9ee210f95be1205e4fe48f0cbb1f25a4db788a4ae10cd4b5ee13e1dc5159c2a4d48516d50bf1ee07d2da1a00fa95ac38","ssdeep":"96:VI23hKdh7P1lIbeWL9aqfMbFNriK6Vizc/MuomCA9P0LX4BYyCnsI6T:n3wT9lIbeWJaqfvXQcEA0LHxnf6T","tlshash":"c4e1c6c832b1f0eaa3e325e480ab5806e13a6d5a558e60b6e34557d37874fc540ffec5","size":7142,"data":"","first_seen":"2026-07-23T13:38:20.481503Z","last_seen":"2026-07-30T06:08:06.352469Z","times_seen":1727,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7dcbdbfdffdd0d6e0f5ce735a058fb4e","sha1":"e952d1ce93989f85117f1f945c7283a32bda5736","sha256":"adb78e319448281b1db736a61006b3059b2cd94d4a1b447319ff911334bf69e7","sha512":"abc803f00411d5368288622d6d553d2110328368a428b14a852b81d9c0008359d1eb69b94de46859ff76c59647f9c49da3f35ae9ce09b538eac42afbe604f87b","ssdeep":"","tlshash":"05f0237b648083b308e570db086f8989049eb419bc8044be4c22b3f4d67ebf7549ae21","size":649,"data":"","first_seen":"2026-07-27T00:29:31.672624Z","last_seen":"2026-07-28T07:04:56.521734Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f465da03521180d47c811a98c793a2d6","sha1":"9b76105ff4c8bb84cd630914d772f4cc73df0155","sha256":"e8183224e440eb4578fd87c4c47735f9ede4c43b1c6ebbdcd7033e98aba6a009","sha512":"b10685b1bf88080c98cfa2493e4c1734797a6ee17e9d59ddd7cbd685a9596d4c908ac2a12be9ea2aed3f6ac67ced98f3c6e76b1882f6c0731d1dd60ae5de4156","ssdeep":"","tlshash":"7450000000303000c0c300000030300003000000c00000000300c0000c0000c0000000","size":9,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-07-30T06:23:10.773113Z","times_seen":185511,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"219505d4d5ae5b145370ed3cef98cfa3","sha1":"89498e7304c8074715c729700b3955fc065531b0","sha256":"d298bd11845e65f3a66d13d3a5ab32c91d5430be6dd23c2bb70ef16c03e21751","sha512":"c169611018ff9ff3e5d894a922f07106d329ca6d9668b9dab35bed80b825bbe371edd8cbb5a63171e6f300470e690bf74d7704b7109cf78b286207e396916335","ssdeep":"","tlshash":"314000000000000000c3c000000000000000c000000300000030c00000000000c00000","size":6,"data":"","first_seen":"2024-07-23T18:45:21Z","last_seen":"2026-07-30T06:23:09.411597Z","times_seen":175499,"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-07-30T06:07:43.488015Z","times_seen":1988,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5f2a6217a8d4d41ac854a9934f29d539","sha1":"66c309ccdf1880c59450b9484114f9127a8802f0","sha256":"51e3f39020a5c36d26f860b8e16d66d109a9b43fb1986cf8ca60c2ae8a5d7375","sha512":"d3f9a2aa396293953990d9331646d682ca3aef43eb476b98e3e8907c75ece2f4147271f1c1bfb00a388c16312e320017bd9e973bba6948a5a340bb0603b90547","ssdeep":"","tlshash":"ede068b6c00271aa3bcd42179ca37e1880f17915fd2e68ceb140a29dde24023600648f","size":397,"data":"","first_seen":"2026-07-27T00:29:31.665952Z","last_seen":"2026-07-28T07:04:56.415659Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5c3116796f5ff62adaf85580801f3fa4","sha1":"70c94a757c2ae007ce99d35d3f02b9237082cf60","sha256":"08cf51fe8f3e7b9c9b08f6ae4803831975d480e39bc806ed7c8120fd66d8086d","sha512":"a5393b353508591af106ec0f10c733e1c3dda67474d8bf4a54b5d098bdf1d4dda6631769abcbd8687c11e0a2091e57ed70aa2760f553af98fff45296b3a078f4","ssdeep":"","tlshash":"c7100000000000000000000300000030000000000000000000030000c0000000000000","size":2,"data":"","first_seen":"2023-03-26T13:52:04Z","last_seen":"2026-07-28T07:04:56.448025Z","times_seen":383,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"63b39853c60d1092c257c1ab898bad0a","sha1":"f87cf1a14902692dfa942c109550a2e672b61e99","sha256":"ec587e500dad5aec5d7d7bc518e552e6ca420cf58288b14a2344fccdadf569c1","sha512":"afd219f1b06269656fc59684088ef20c04ad48cf9043340ee3f6bb2527005af6b1c4ca993410b77122c8095d055b33078fcd1866c8534a3bab8715c2f4bec9b5","ssdeep":"","tlshash":"c7100000000000000003000000000000000000000000000000000000c0000000000000","size":2,"data":"","first_seen":"2023-03-13T11:31:48Z","last_seen":"2026-07-28T09:07:27.722802Z","times_seen":1357,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"772f886781c1a2fe0d138da864bd1a0d","sha1":"ed7bdac6b5065277c59e9b3cafee709c2af4bf9b","sha256":"9ffa72ea50ac24f7971dc4301227ab985f71fa481eded61825f752f9a907dae8","sha512":"64e6338ec403963209f36738436586dd74708ed1bda8f8829b33241c22b0ce9aa2c9296f3f3e25df707e05433452b2e4802abe7995fe947d26a5645c0eb75b82","ssdeep":"","tlshash":"04a01288490c440c451211c0f013b40401e1341b80c00c81c19c9a4105e03a25012489","size":79,"data":"","first_seen":"2026-07-27T00:29:31.735217Z","last_seen":"2026-07-28T07:04:56.434717Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"79f44e5dd7602c709646d4eeecdb8f4d","sha1":"e1168a05c28ba598334dde0d6aef0c545e9b7c70","sha256":"92e9034cfa6f00cdc1749b4f56b2fc094cc4a999ff04b4012ea8727f6095e9ba","sha512":"99d6cd5f5388abc70e23b8952fd32cd2e191213b1694e4fda5f20cc66450319e392be745d0eead719e91de54f0a00445e64f7bac2a230bf528fe2e302ee36ad7","ssdeep":"","tlshash":"b7e0c037b6420427806708c630270dccc9543556f85879d9c47035a14194efb509ddc6","size":328,"data":"","first_seen":"2026-07-27T00:29:31.648585Z","last_seen":"2026-07-28T07:04:56.448814Z","times_seen":324,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e2da3efa536fb67c7170a415b9a058b0","sha1":"a370b7cb382a8e1d70437d9c3465195440bae925","sha256":"f5c0cc24306db6871daef9d7f5fe842e5cbd3fbb5d89aa833ef100bb5a158453","sha512":"96bb9ce1aa41937e6ddf49ddb2aca103f65e26f5969684f45824adc902853c0647a1730eaa27e46fe1c09f508aa1a03453fda5f37784ffa775da1b1b5cd56d4a","ssdeep":"","tlshash":"dfa012084e092a1400805a41010f0b7910c4400a949a5d14601d4f911969945217b00c","size":82,"data":"","first_seen":"2026-07-27T00:29:31.62022Z","last_seen":"2026-07-28T07:04:56.535655Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0485d1a69b0a1c36230f03961efc16ce","sha1":"8560a7f76470008188e1e5acf7662e6c7a319f40","sha256":"f4721ed8fb0e9f9beea333083e6a051a20c3b4eceeabf84cfc936d2eed0762aa","sha512":"64748850787c5039e184c1cc08798c63dca897c29914df9175776881246ee5f51f95fd138cc81a6debe274ea21a84be44dfe3a163767dd315b206304b1ada834","ssdeep":"","tlshash":"d19002882e2d3559153621648097c60640d2110759e745506e59897b1a26686017949a","size":56,"data":"","first_seen":"2026-07-27T00:29:31.589685Z","last_seen":"2026-07-28T07:04:56.524972Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.550432Z","times_seen":1791,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.550979Z","times_seen":4642,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.551492Z","times_seen":1672,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:26:15.700436Z","times_seen":208029,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.553064Z","times_seen":1720,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.553511Z","times_seen":1720,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.555646Z","times_seen":1700,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.557321Z","times_seen":1700,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.557805Z","times_seen":1709,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.558302Z","times_seen":1474,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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-07-30T06:07:43.558746Z","times_seen":1474,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/js/jquery-2.1.4.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":false,"md5":"605ccb57ab3da4d1a5b6a0c77f7475e2","sha1":"96447d2da69a239c884a2aa9330bea43f12a41e0","sha256":"df028a1d70c7d7d932cf3cd27efe1995c34e85e9d4eb2a21f00ad38f5ca90e79","sha512":"c4994ade42cbbed633bbc466746a8cfadd77ca84bd42eeafa9ea510332a9197105b230e37e5baaf290d7daabb8f9d6862c3c02a92d10412251123ffc2a2b4eb3","ssdeep":"6144:cFaUYc1a9XN7rmJwsZ5zU9FjlR0eV9fiY12KMAjJ/kDABp8HN6bu4t:rUYhsaFjl39xF8DG8HN6blt","tlshash":"7644c4d9734f111f87a2336ae43b6249fe7cd1b1520551bdb58d986c24a081883fafbe","size":261249,"data":"","first_seen":"2026-07-27T07:08:39.295581Z","last_seen":"2026-07-27T13:35:41.7409Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/js/bootstrap.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":false,"md5":"b187846b778003722db4770f0ec69346","sha1":"fb9e33c65e7e929344ef951e048219f49a8812ec","sha256":"b803181c0425687ab56ee28bc2b93b145e2ac6f70b5a7b52dbf0e974ab9c7e65","sha512":"e712863500279e2bb54cb17afb0ad286520630d3718a7c854347f4d8e55e69168d040bfbacad6f784090137c269ab4a72f423e46d775fd93b7d4a7b5cb8c3bc8","ssdeep":"768:OP5XzvG/L9nq7D7o241fPnxPQ/nInR4UTVFjeRQxF6KrVm7MT9GF1vA4R5UAV297:OmluNnMtSLFqG4kd7s","tlshash":"3443b55a3258b83309de44a69032474bf7295d94b147806cb9bdacde1b3dc8272b7f78","size":59517,"data":"","first_seen":"2023-03-08T06:42:33Z","last_seen":"2026-07-27T13:35:41.708322Z","times_seen":97,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1e165145a97571da936032f6bdc25987","sha1":"3708ee3564e62e191805ee96ac418dc1633d6a9b","sha256":"434e517d538444e8ecbfeac4f10b3affef8f606f57e6c7bd90b4e7678aac7721","sha512":"27cf9960df019fa54c80b623612b4b654100f5a4a1f48f0785a0483880ebc1d18b300a5fdbf7cd4a11f437ff79304ecef1f934ed5c0c1f53a38f7e344658f4dd","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-11T15:36:04Z","last_seen":"2026-07-28T07:04:56.497157Z","times_seen":2666,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2dd96114cb21cd5fe28e94362f0efdd2","sha1":"37e9d317dcb7145d3987b8b4b96f5b649b8db3e6","sha256":"965dcac169e4617e5deb5e95fe3bb656e89bc7de173525e1e4712851145d1928","sha512":"fc118e3fd7a7c3545200b9cd0e2e4db154f38f3ff634eb97b2027b803b180aae5b504594bc39224de239b144b54471319fe876c4604961fe646387f9fb85d7fe","ssdeep":"","tlshash":"d4e026a01c023c0e214b9abaf03b231ce550957a97894f59ec02cd297d37d43aadb680","size":353,"data":"","first_seen":"2026-07-27T00:29:31.627576Z","last_seen":"2026-07-28T07:04:56.423137Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"891b9b58a353597a14389f567b8d708f","sha1":"c9f894cf58c05d63f0832eae0cb257df8e3cb74e","sha256":"86b8988f0a7e2e42e9ac2e23445f2fb36ee56c3f2577fdbd85de20658776b207","sha512":"d78dacdd8dd790977d63709f6f0c956ddf6c5e81a2b07fb8df190ba68266f4d8d182de280216c7091389d193d1acde00763574c49622f15ff97a7ca8787c1fe2","ssdeep":"","tlshash":"c7100000000000000000000300000000000000000000000000000000c0000000000000","size":2,"data":"","first_seen":"2023-03-10T09:35:58Z","last_seen":"2026-07-28T07:04:56.52256Z","times_seen":1187,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_forex_cross_rates_widget.d7cd8bbba41a0d54656c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"22801bb506d6dad77306f77a8e5105a1","sha1":"b6fe247a1f52aed43a1d788cca49b0adf1f6fc64","sha256":"370863792c0f726ef634011ffd719bd59d4ba8cf35ea9d32183589645f80f52c","sha512":"8ba4ec36838eb2eb5a0a6317a22ba6cf2f68365e859aa0322f2a8c6aaaa14a8acbacb206bdead71e59c13bccc12224c79f5b774c65cd20f8727a2fbb32db59a1","ssdeep":"192:YLwqLptVvG6uptkfr8lJkNnmn1BnRMC4p2koVcsFAVrGg:4wqLp/vXunkfr8/kVm1BnRMC4p2kIzAb","tlshash":"7312d9ac314ce53225fb08114479e462f72d72fb5e0ae0a1a367fcb96868ed46633d51","size":9146,"data":"","first_seen":"2026-07-25T00:19:44.438661Z","last_seen":"2026-07-28T04:59:54.480331Z","times_seen":245,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/79207.6a62fc803d3d07898936.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"9f9984517a8cd65036faf42932513a8f","sha1":"05cac6f7fbc24daccaaefb92b34f6eecdc91d8d1","sha256":"597ae9e64dd837a96e9166ffeb016e0757a49f06719163620ea9c616bae3ea2a","sha512":"f122449c6f6d72c179c4a59ec669368d3caaf2e5fc59ab4dbe5a3b10c172380e9033fe19842cb0c81ba7ef956058ff787693678223786ed92f6f5188ca177f44","ssdeep":"96:S0yn+dFlV8m0eKoPnRuKfeYX1X45tTZkcdrEAUbNfBn3Codbrbth1o3I9dxKsbRN:S0yn+dFlV81YRuKWYXWhdrIBn3Pjh1Ag","tlshash":"faa1b6c630f770d673aa19e5813b0447f2be09d13a0b96e5b4989cc938750167a63fac","size":4721,"data":"","first_seen":"2026-07-23T13:38:20.419582Z","last_seen":"2026-07-28T07:05:00.696213Z","times_seen":1428,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"672b9211895a127e2ceaa149bbe7a59c","sha1":"904187b43eaae97d99beea75a02d51824ea35ada","sha256":"6cb0b848460e2526a49e15d0b007b50968470ca4d17b3d08980bfab0cfe34d04","sha512":"2a068e10b2b370399ec0fe4c6655f16281d35980c5f515308ad97dd6fcd0bdac5d4cac1a5ca1916671c6907c9915f530353d40ed92e6ff46146b198591183fc3","ssdeep":"","tlshash":"e4e0cd7877455cda49cf74495345704a555d5f52fc2caca5810050f0751e91feb8c43c","size":297,"data":"","first_seen":"2026-07-27T00:29:31.621583Z","last_seen":"2026-07-28T07:04:56.544453Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"167665ed46af3eca5e4d2b71345a73a0","sha1":"bee620c4967353bf791caf8049e4e70f63fb0eed","sha256":"18a2b849387eb11339a4b060ce20bf78648182f2a6dbf3434209dd7e983a071a","sha512":"e983bc5808576bd0fbd3bba79806060a1050c0446cc32de41e9a2d1b26a51e48831d19afa8d8246934751930fb5b7beadbfdd72bd11a069edb5ef4005646cdbe","ssdeep":"","tlshash":"0e7000883c08200808323222000bca0c082200c202088288000080820c3220b020ba08","size":22,"data":"","first_seen":"2026-07-27T00:29:31.646088Z","last_seen":"2026-07-28T07:04:56.459778Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"646ac41c6e82c646ba804807550f2817","sha1":"5ea0bc6e90462c43b26e49e1f49f532435c00cca","sha256":"cf617055ff38446c4742cd6bd014bec69fb9ecb5b6b12843647d6284631e9fad","sha512":"5b281fa7850c4dd4a90ad9142093e57655af1b953902864a0e92ac2ab4d85fb32072a1eb97d8e92d6a6d273705933a0804d60b03f88ded3299237408a8c60fc9","ssdeep":"","tlshash":"42c02b4606010391437f29805d0b133bc1c200073c01284c89f10481e09cf40089ac12","size":133,"data":"","first_seen":"2026-07-27T00:29:31.595033Z","last_seen":"2026-07-28T07:04:56.479176Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f3cb400ab8db471ab376e67e68db49b8","sha1":"95c5779da722f8256c12d8aed658689bc4cbf3cc","sha256":"298f91269a3be144e0a0747ba1938e2e78e724f973872a848cda00f6591c07be","sha512":"58468d4524d46a3f4dd8901f9fa670774124524509a3c3fc1b7f0cc5f8ea407bae385eb81f422fa2aa0b775c213ab3f8b51b33035a0dad04d78f63e8186067da","ssdeep":"","tlshash":"41a011888a0c8c0c8a2222c0f023b80802e0302b80c00c8282acaa820ae03a2a02288a","size":79,"data":"","first_seen":"2026-07-27T00:29:31.693865Z","last_seen":"2026-07-28T07:04:56.509076Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.39147.30b888a5ea9796cb7d58.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"ad61195f03f12e78d238d4a9203f0449","sha1":"1784e4e0de4f473231a8eccb06846ed523cd8e14","sha256":"7673dd94cc13d2dc00d5937cc5b1bc5a0bb64b94e0bcfa8d28cd0ea6291c58dc","sha512":"d681a2b3b386af653697765f91b39eff665af151cb0bd4d4b20f31481f4a2d08f02f3a135c00977ace846dfd67df5ba1464fd1c421cdf3f958a72106b95218c6","ssdeep":"","tlshash":"ce813f27d010c1f22f73ca19b791edc6b5f4b2a111f2e8cab7862f69c617c8019396b4","size":3899,"data":"","first_seen":"2026-07-23T13:38:20.401292Z","last_seen":"2026-07-29T06:14:13.933383Z","times_seen":283,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"88cd75b972ac65ea66d51cca418cd69c","sha1":"f4df7f63194fb7a17442ba8c04e626440cdf7985","sha256":"c7c434bf3cf0f1b1f069cde14034f32a220711a98b1190aca13e5f5b85ad3971","sha512":"877ef0b222a370b5ebeef0a0b5ec62ae76954d81f00617c2c9a7f58e0c171a599cf35ae0ac615d4daec98634a6f67c438043e0b7342efc2dc6837666902e216c","ssdeep":"","tlshash":"1c712d9a2252a8cd2553d979cc3b05e5621fa8fc3a8f43e0f973cf30a0831d5a912928","size":3529,"data":"","first_seen":"2026-07-23T13:38:20.341671Z","last_seen":"2026-07-29T11:04:57.516744Z","times_seen":1718,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3c4a9f0faa6fb701a920a1b70924b26c","sha1":"f7db769e191400203fb2530bf2ad948431a7eb0f","sha256":"fa5a672fc4057898c72f889e9e2b394546de9c00494f7e7e7b100851e8b6ec01","sha512":"2710d162f4df552343b1a7a27f1eaa1a8cb5d8004e6c4c2ba88c22aba3dc099af302dfce3f1cb0d93c0ba5cb99760e9da25da05d34a65704f22f85008a17ee8c","ssdeep":"","tlshash":"cbd0a738002e9086181b6e5452c6991795d6d40728049d09c89cd4d441f09a554be52d","size":221,"data":"","first_seen":"2026-07-27T00:29:31.710641Z","last_seen":"2026-07-28T07:04:56.467696Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f0e976b756b6afe7f40bca206a2d7150","sha1":"db9bee9a7bba93a60330ec5ef1334d9c164fcd56","sha256":"029b84af88c5d6ced58173997a15fa47011e198e5449027d87e2f7b871f332c2","sha512":"486596b8b7d88539b3147ed55749794ab08962047191f33ff9915fd4e4a8a9a24bc164c0d44f24357b6e9dd72d1ccd88f981aa0cf2c7df585a83000d4baccc9f","ssdeep":"","tlshash":"3f8000883cbab30e8222283223ab200aa2ae28c232088e00a00080803a3003a8032c0c","size":29,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-07-30T06:23:09.398544Z","times_seen":246434,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"050e1c22f7a12bc8867a7fe41d70a49a","sha1":"b9de7654a728e7ccd8cebd8e990a2f29e1ef4397","sha256":"0891030d3deca893e178c2e5760b57583e4ded2e3418ab45f1799749e337fe1d","sha512":"fd65a1dc9f76398371900c8a8f1d3581d6eb95cb39dc6b927ab63cb1bcf5b949e8291900c4dea6d0ba9212f5b9ae59990b4f8bf841fa3ba9a25a86338213c3f7","ssdeep":"","tlshash":"9ac08ce9b2a25864c3e0a82b21324200d8aa1d488e0040b5c102f448fd90349da6df81","size":146,"data":"","first_seen":"2026-07-27T00:29:31.706316Z","last_seen":"2026-07-28T07:04:56.434011Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"eeb0a66e770d8cff3ddbbc1ee9581cc7","sha1":"9fc6ed9740257ca291f4c8a1e24c8b4d7547aebb","sha256":"d60a5521fb413d0d84580fccc7bcc14a7f7b648e79fabee34d26ea24a3b6a667","sha512":"3373fb2851d15e63be07d30fe5ba6de0eb5ac12381db687f47c9ac02e131872125bdce4ed48e9a125b7a27f98d3e3e22d869bc88783b182f2dbd740296d5d3f2","ssdeep":"","tlshash":"95c02b3c70160008ac83a221cf8f4c0a801ea0540c08890e1941a8e87c83a901eb2c42","size":130,"data":"","first_seen":"2026-07-27T00:29:31.563759Z","last_seen":"2026-07-28T07:04:56.410592Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3cc690f7d4d0f9d684db14556d27e980","sha1":"3882ed3164fb3beb4bf69440c698b303dcf554ee","sha256":"744a290669e65d4157f7fb236d95c09aeeea78d14eebe23c765dd7a72b1f1275","sha512":"ae4dbd69df8add91de700fccbfdd435716d557e21aa8334fd4104cc66f6b4dafc41ebb883e6e6611c35cb061b5db12ecc8d41805454a53c925f7ca7c35d2f45c","ssdeep":"","tlshash":"9fc02b948d1cdc87050fa4d4140f00197180f5e3564018cce41ed71857204fe20df08a","size":132,"data":"","first_seen":"2026-07-27T00:29:31.744553Z","last_seen":"2026-07-28T07:04:56.407171Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"13632c97439beb0cf3239688a15254e4","sha1":"796384e694ba83d7e3250c171ad59d7109728d2c","sha256":"07302499974f21b9e32dcccf30d83d15c17ad96c2e2c3b6d99e34780aba9b217","sha512":"33d7ebb45210a02bc08c24dd91af080fdaf3c5d08be2760c5984c147d9efa498721f69c2c30178acf1955930cfa38f6869364800a64ae9aaf186f66ea6cf18d4","ssdeep":"","tlshash":"c7100000000c30c0000000000000000000000000000000000000000000000000000c00","size":2,"data":"","first_seen":"2023-03-08T15:47:57Z","last_seen":"2026-07-30T00:21:47.012659Z","times_seen":1263,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"69691c7bdcc3ce6d5d8a1361f22d04ac","sha1":"c63ae6dd4fc9f9dda66970e827d13f7c73fe841c","sha256":"08f271887ce94707da822d5263bae19d5519cb3614e0daedc4c7ce5dab7473f1","sha512":"253405e03b91441a6dd354a9b72e040068b1bfe10e83eb1a64a086c05525d8ccae2bf09130c624af50d55c3522a4fbb7c18cfc8dd843e5f4801d9ad2b5164b12","ssdeep":"","tlshash":"c700000000000000c00000300000c000000000000000000000c0000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:15:12Z","last_seen":"2026-07-30T06:46:30.72812Z","times_seen":57609,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b9ece18c950afbfa6b0fdbfa4ff731d3","sha1":"c2c53d66948214258a26ca9ca845d7ac0c17f8e7","sha256":"e632b7095b0bf32c260fa4c539e9fd7b852d0de454e9be26f24d0d6f91d069d3","sha512":"b2396a002fe7aec008808687d7cbacb340b7f7a090008382f3c95870f6fb10415f61f5737c102d4bfec58fe525407ea2001e761dab1da8a501d9523921f0ec21","ssdeep":"","tlshash":"c700000000000000c000003000000000000000000000000000000c0000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:18Z","last_seen":"2026-07-30T06:50:39.96892Z","times_seen":53592,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3c10c34c8143b9578b0f63ea21692fc4","sha1":"71e150c23691b76c13896c50ed60f6b0a7c738e1","sha256":"9f05eb58b89a0c41431ae6fde5147c4aa521cc66aac32736ab63d666d3d6bc62","sha512":"39ce126f879e9608a8a1cc6c35f66a83c34c7dde2282d2e720770d92273f1dbc2aba2c32a2bfa6255b2d43a1f2b697020e196cd20cc8c8532e2b49d8e23d0c29","ssdeep":"","tlshash":"3aa022880f0ea008000f28caf0b3c28fc0eb280fa0803c02e20cc2ce0ee22c0b0030ce","size":75,"data":"","first_seen":"2026-07-27T00:29:31.702215Z","last_seen":"2026-07-28T07:04:56.466803Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"d5795ace72d2af6344bce5913552b2eb","sha1":"46573f846169b8fce72131428c15914544558e4f","sha256":"473b8f33778d3cd175b7dc741b39937491efa2bfc07615c0b4e2944bae9afe98","sha512":"6fed601a4f637f45c34f825e8dc24cde7c2c1251bcf8251a2df3c409179d74b8b74ee5750d1908936a506a8bf0b1451b170598a25f8e1b3765043a88526ca50a","ssdeep":"","tlshash":"0951ee3cef60443bc5f9e476b4931b53f32c52568411985fbdae085c5f4e8a4e29a738","size":2808,"data":"","first_seen":"2026-07-27T07:08:39.452494Z","last_seen":"2026-07-27T13:35:41.805437Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"b41859498611a3bab2362ce092789d41","sha1":"7893d1a2c31c965a7e774b2fbc12153a067d6b60","sha256":"f6d60628699e2f9d9a5ba5507f3203a2017c1b9abc950df7c5e585d2981a5060","sha512":"e854af2503145490b3a74b9408b6df9e852a10f9fc6ee5424dcad2faf0faa89cdcda977f2e43ff80cdbf9856a4d9d08caa99ccd85048873471308320165ac863","ssdeep":"","tlshash":"3ae0ab3d2c34408457a310b481abe2383d2b30208040dd179896c82d28f0bd97e02584","size":416,"data":"","first_seen":"2026-07-27T07:08:39.454576Z","last_seen":"2026-07-27T13:35:41.806323Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"173569263a244e66551e2f231d1e39f4","sha1":"1a532f05dadb506e92f264b45a5d9f5bbe79ee07","sha256":"fb0a9c307a98554b440c5e5e73707477c2b84e2c805445243cf265978d7957ec","sha512":"8046d8dd489c109fe35b40d71ee1046149fa969cb7eb8a4095a3b6f4f0903f1356e20e41afcf091c3a595b8272ec62b2307732114957dcf4159a973746471ce0","ssdeep":"","tlshash":"1201fe8c9d063a37250b71e5313f901035b440598819e41cb80ec6906fa1d986c0fdee","size":704,"data":"","first_seen":"2026-07-27T07:08:39.456561Z","last_seen":"2026-07-27T13:35:41.807214Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"192e5f5f335e672de8bdb29956c287d9","sha1":"eb4b118accf51338c18745c0b47950ad9790d41a","sha256":"ad605003c66fab6f396a31ce27c6213bb1ef83d4dce45bfc0b07f26cd29c5a5a","sha512":"4713e5b55f871347f33d101df74545239b976d563c9bcce7a4aadc4a9d7c909b7f40d0f45388704b552b2a7d53cc5321aa72342e8e50e7ea1b5bf7d0176b1128","ssdeep":"","tlshash":"9911ad6c1bba123453977123989f975c7734c9022513ee0bb82ca191af50d3269f6ed8","size":1066,"data":"","first_seen":"2026-07-27T07:08:39.458702Z","last_seen":"2026-07-27T13:35:41.808102Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"fad65b9159a5c9f6082a70e88dee0e29","sha1":"39d5ddd9196ea0631d5850e5fdf303fa6c8f06fa","sha256":"316636e0c1f983642af435364b2283d7157e266d6a5c36529c6b41e2176f8a95","sha512":"cf5ece24c02c62c3c198758346c517123f3661dd8a5b53b3eb0ca34538cf6178e467be48439b96c345d3b664aab733bab704d7213737ca06bfa91fd5d2dc8805","ssdeep":"","tlshash":"b0c09b47f579154b04959105d386458c7264450d05365d352341609b3cf3f9d174d1bc","size":136,"data":"","first_seen":"2026-06-08T08:22:25.104796Z","last_seen":"2026-07-27T13:37:19.554652Z","times_seen":54,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"ebe868d590c82f8878106781c01c7dda","sha1":"1a7578b21809e6a9dbd64cdc1245fcf783304a4e","sha256":"92bf9b106d802b56770adae83522ee750ddd4b87e6d81829c968eb214a7f1064","sha512":"25c873e63d31ccdb8c582f97f985add970338799e3a9907f587030ddeadc596a120713b2631c05cc275b712f2344f47d95e113906048b2164f3c978e286cdb92","ssdeep":"","tlshash":"6df04c3a1b61293105bb65ebaadb73c43d300083654b9543742e17d44fa094279b2aed","size":603,"data":"","first_seen":"2026-07-27T07:08:39.461571Z","last_seen":"2026-07-27T13:35:41.809883Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":true,"md5":"70df254bfe2a8e5e7e369065b039a9c3","sha1":"f665ee34660a7ea3a5445039389028c871bfcb48","sha256":"94b94a6017fcfd31952b933d9ca63e6122726813bde23efed302ba6bccd7e96f","sha512":"11df2733c24d12bd7c41b0dc6e9fd70f563dcfeed8d5bd27c8f9672905b0dc99c3c62924329a9c3f67aeac87a515595efec1e3601eca5ac0b2a29f9344759360","ssdeep":"","tlshash":"7be0227d3c3541950ba211b8c1b6e6287e1a30784894ca57a4aad86a98b0fce6e06898","size":414,"data":"","first_seen":"2026-07-27T07:08:39.463295Z","last_seen":"2026-07-27T13:35:41.810711Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"af83da2a769d59fe45aab962f63d91ae","sha1":"567f3a3f97d8fc8dc51b36ad62cd0b88626d55df","sha256":"6eef6cfbc646c41376c99294021f2e5ac342ae76f7efa30e449cc981db20ab45","sha512":"cd7ebd3eb1f0e2edfe170b2f91c68b27aec3fd454400c27130f5bd78e53d264303562095d97fb257ef5bd1ccffa188d84a7f2e3f8b5f64df8269b74913277afb","ssdeep":"","tlshash":"aba01288490c440c451211c0f023b40401e0301b80c00c81819c9a4105e03a25052489","size":79,"data":"","first_seen":"2026-07-27T00:29:31.698944Z","last_seen":"2026-07-28T07:04:56.416516Z","times_seen":332,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2ae15878b48be1c38e824af4f23c5ad9","sha1":"724412ef28cf96860378b5c180e38233aa03ec7a","sha256":"4a524fc5a71de66ad3e5bb071a47e56042edff624f091244a347cba1239cf44b","sha512":"35afb14c9840b51e98b6129ff8706208b2f450e423f443212d483134c5a77148cc1114791ac96791e5afc3c03e9f2ccedb52c41ae93e85b20a9218b5e01a7d0a","ssdeep":"","tlshash":"42b012c8546c45385009b8840047a7084081141a8513ce35956b8e451330d07754146b","size":93,"data":"","first_seen":"2026-07-27T00:29:31.725026Z","last_seen":"2026-07-28T07:04:56.424334Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ec7e53845feb375870343182efd0b929","sha1":"63e71d0c5bcadc37a725d971054eb55e017f6989","sha256":"a2253e1fad60aa1ccf31416ca8cde6ffaa5af2510733c7186adc04a503346c5b","sha512":"339f50fe30462dd6204552b2d3d3fe5cbaeea2cadcfbde096f16b40f1d985a5a68ebb227dbbb9f37c9451a36376ed392b7fb50c6e661963124146bac7e03284a","ssdeep":"","tlshash":"cf50003cc00000c0000f03000300000cc0000c00c0c00300c3cc000c3c0cc00c000000","size":11,"data":"","first_seen":"2024-07-23T18:45:21Z","last_seen":"2026-07-30T06:23:09.405995Z","times_seen":173377,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4c62bc4fd3c4e105cb3fb62fb748d59c","sha1":"f6e2d1e74e35ec4c4740ba02e890b98bda11417f","sha256":"9f4a6a370cd350425d8ac08047e7646116468672e99765ca198e6d463ee5286d","sha512":"5cb125ce0b7fdde81c6df58f6e27943a130f0d9e2a366d94ea8ed926da635dfe2b2c5778a14ed99bb35c7b2a48dcd12090cbac18370611d1c0438e1c2621efb4","ssdeep":"","tlshash":"6cd0129b738060e3d797fea709580020c1ef0b8402d2753d42d5d51070fe9ce83461e3","size":203,"data":"","first_seen":"2023-06-16T07:31:00Z","last_seen":"2026-07-30T06:07:43.584087Z","times_seen":191264,"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-07-30T06:07:43.527233Z","times_seen":1720,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/49265.c208ef8379e073f94d16.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"7b82078f584e6803982971fd98e254ad","sha1":"68381b82a3c15fb84e25d74f902a92fd1de3a245","sha256":"e79b56277f3ab3f995df2d44c612a393858265d70e8d4151a858384901aaa5ae","sha512":"856120280da4d842117fb927a8dbab94215dfb803172d5217ef06b3e3160c27bfbc9fda244b20ac94ce02cebb4356d25c92927cb9292b29f658e377fca579fec","ssdeep":"384:j9PRJCURbRGehSowQ7pJIdRW5TejB6ScRTtDe1efLBHxe+Wl2XaKKTV28fRJmRDM:RPTCURbwehStQ7pJIdk5TejB6ScZtDeb","tlshash":"7e92de8679c2f0e962d55cd4c07b4846f01a0d3c704db8e9e7e6c8d2da7a14ed436bba","size":19935,"data":"","first_seen":"2026-06-30T14:35:40.41523Z","last_seen":"2026-07-30T06:08:06.359896Z","times_seen":3281,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ff44570aca8241914870afbc310cdb85","sha1":"58668e7669fd564d99db5d581fcdb6a5618440b5","sha256":"6da43b944e494e885e69af021f93c6d9331c78aa228084711429160a5bbd15b5","sha512":"3c266c0035de59eab2a0dd31b3dcb4a9dd157b310289e5db9ab4f8c2fddb7433466d48f25da7ad735a1cb8f2935aa612ad1f62f0efcece3933ba9979082e2304","ssdeep":"","tlshash":"c700000000000003c00000300000003000000000000000000003000000000000000000","size":1,"data":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:25:17.620102Z","times_seen":493932,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7463516a439ac7bd8cbabebf99e8588e","sha1":"46c8af3f3cdcba77460d9f792f520b7c7019ec50","sha256":"6714a108bd67a28899b2266d4370bcb3c2bab1ea052ec11841e9a4c6315aaa7d","sha512":"8a109bbcd9f495cd8b3ce97f9ec64131d71f3ea0e7a4b12e5a5f9b1dd922e0e06bdab6bf8a4031a3eebeac7592707d5a0fb1f9add45bb1f0885284855471bb61","ssdeep":"","tlshash":"cb700088ac8e20080023322800cf8e082222008000300202002020820c3300a0002838","size":22,"data":"","first_seen":"2026-07-27T00:29:31.561589Z","last_seen":"2026-07-28T07:04:56.49883Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9d59bf62eb4d4befed1f736500ac7f27","sha1":"44b20bec79abbd3df4fbacb84a8d3d7b93cc091f","sha256":"3bba6fd3e6602d3f7ce5cf48e5c8785a2e8825e22048fca2b6c64b1342ebb72c","sha512":"08e80d61b07f2a4610ecbd2778975c49f3f5b70568eba9e0ecbe137377c0c3e17b67d2a39ccea93bfb0a5720727ab4f6868d0694fa2c1a9b2ebe829c803df86b","ssdeep":"","tlshash":"c71000300000000000000c000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-07T13:57:01Z","last_seen":"2026-07-28T07:04:56.41732Z","times_seen":3791,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"98ade430ece83148aa2ab05e8471427d","sha1":"3099f4a1dd303bfbae77cda007797d763e13ed48","sha256":"bbe7c0ea759e990e83a6c24ceea814b66a2ef08e54b52dc9768cf1b9e8dd9546","sha512":"5e92a1720adebdf897ccc117ab6121187c270393e7558439aeb17c948f868ca8e4763d7a6df3331c0e3c9a96f296be8ceafd1f9ab37d5521107b36c30480feb6","ssdeep":"","tlshash":"65b01274e52754309025b2b5ea7f211cd0b318cc18ea2d84601142c9f9f0784715fd4a","size":107,"data":"","first_seen":"2026-07-27T00:29:31.624869Z","last_seen":"2026-07-28T07:04:56.514701Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e5af9ef2f883044b06511fa39105babc","sha1":"82f18d9e8f2b8ce5f187eb5aea87b80dcb508232","sha256":"a4cf529561255261c11ba5f571d1c82361483653a41b24764c828eb5d9fb2e81","sha512":"5bb85f74a9c12b13211fbfec101706b8ff9a6b5775d36101b8e8eb0214ae02ee5fd15c312cf2be4077f03484407252c0403300bd156644fa09d25fc596912ce0","ssdeep":"","tlshash":"25f09ea9f2c7d47491798634d8aa4305d6133d402006289ea465e0fcfd57866e932b7d","size":508,"data":"","first_seen":"2026-07-27T00:29:31.575522Z","last_seen":"2026-07-28T07:04:56.45046Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/65862.95764752c09f3f18f890.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"d5f37343643dde0b01c1d10dbbdb91df","sha1":"acf466d1f2aaa1c4e577a663cc0c197647ff1b0c","sha256":"ad4421c24189dacdd5b62aa07485176e838543c7e572a23a90b2e5d70b28c982","sha512":"b6fba60ec4a7056bdda7602c545749c4b49d93c597e471e20f312b470a5c949b390f959900f2267b02646d6ce1c6f9fcd1ebddb7b4fbc2383344305b5179923d","ssdeep":"768:8HXyKsaOA/R4POygg6FUOaovTBa81zNh3h6kIRdnNy84MnxbDE3xZwDZscCDjvFR:OWgDagTBa0zNhRIRdnNy84y4BZw1FCHz","tlshash":"41e2e892aa135c331ed5176ad87b3902d1d80679f5863c68bdf858de0d8dac070f355e","size":34195,"data":"","first_seen":"2026-07-24T11:36:47.857631Z","last_seen":"2026-07-28T07:05:00.680835Z","times_seen":1734,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d48a24ae9672ee573050e4d3aeeebe4d","sha1":"8f8c4d27852980a1ec5a8b1aba30769001314ec8","sha256":"53e5b7d706a350fe98d52499058624e15cddc1541f17370f94a899a386c50255","sha512":"02dd385ce15083c89617859325e29ce885ae235c8c5be416828066dcb5db78e69229802d87aaf759224e2656ab4c23bf1740ae1d357cfdb57ebf78ab77488921","ssdeep":"","tlshash":"43800020202088288888200b20308b8abaa0a228a83a2000a08c8e2cb822e80a038820","size":29,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-07-30T06:29:20.423124Z","times_seen":187393,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"24cc3dc813f384fde380df619f1525cb","sha1":"56399e3ce57ff98d68c7de98a563e572230dff6b","sha256":"5421715bbdaf2550e31d10fc28d444310a8fe7147bbddecf0abb490358a1553b","sha512":"fdb6e7d3b9452cc36c1e877ebe47c50c82fd413f2cef945f808e47b081da88ae6aaac7aa14386687c59479e19c856f6031d7ae666fe9c5b54a0b6fe37fa062f7","ssdeep":"","tlshash":"027000c008088802080aa02008800080220088023e0a0e0008200000832000280a28aa","size":19,"data":"","first_seen":"2023-03-07T01:02:05Z","last_seen":"2026-07-30T06:23:09.367Z","times_seen":235738,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/js/th/-kKZYXbYL1zKddVWiRpKQAs-FFrmXi_6UkcmhFlYLos.js","fqdn":"www.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.251.154.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"175c5223286c359a85dc124e70b631cc","sha1":"9783da70cc4ec9e1ee0345dcbad47674d41c5ed7","sha256":"fa42996176d82f5cca75d556891a4a400b3e145ae65e2ffa5247268459582e8b","sha512":"cfa0f26623d1cb13939c7b675013156701c25016a2eb9c8fe728cb97c652643368bb57914488e6f2ad40d97606a7cb39396905dad46897148f68f353b80b2d82","ssdeep":"768:jcaBTPMErdYHnCuKN9dPS5oPX3zp76JSAZg+hCU7aeTEPecnjfJG9CwaebQHr6na:jcainjK1pHh6i+9aeQmKSLQLOEEK","tlshash":"cc532aeff2d273710de665e2045b820d92be75525c40189eba05e7f86eb0c47e02bf29","size":62145,"data":"","first_seen":"2026-07-22T04:26:21.664288Z","last_seen":"2026-07-28T07:04:56.300909Z","times_seen":362,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"cfe749683ca1521d063fecd1aef91fc4","sha1":"14a5db185e972ebfbf33d3e75dac38b3eacbeb97","sha256":"7a8b9eba1d338c7353c5fec3fb33b660f78b1bf23660e31bd2b1658113b3be7e","sha512":"f15bc4113a72f655af8ae406355173dde59998b1dc97c5d183fbeb9d22a137ade54cb3df0a08457ca5b6600d14081432ee0179c38b22c037ce6d87ac88f785cb","ssdeep":"","tlshash":"4190029662837010119568138996646a5969694124041865804521d92cb0027e221e0e","size":49,"data":"","first_seen":"2026-07-27T00:29:31.72947Z","last_seen":"2026-07-28T07:04:56.533415Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d2e749ad3733e27df3e9838394f85f1d","sha1":"ca344c012ae37b1b14e0b932add947996258c5e9","sha256":"fa251f9520facfe727ec1253ffa6376dffc1871a85f5ac2835a6110e370b4525","sha512":"8c1000de4f1b8ab6a9eba49c7381f1042832e8a6bcba9050855985e7256f7dbc43c32963b23b6c71cca36851b9bd62eb889be7eb4279d7c6e20a261bf2aaf856","ssdeep":"","tlshash":"1c9022e03c2a388002223220880f00b0320b088bc08000c080a0b82a2c300000ce0080","size":56,"data":"","first_seen":"2026-07-27T13:35:15.430291Z","last_seen":"2026-07-27T13:35:15.430291Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"c37495f6ca72950f28ad5a6a79a0bab4","sha1":"b23429fd2dea7f2557a8a68545083949759c3ad4","sha256":"b4511e0c850bde295127e6af14148f016b9aea35ea705cdf3106a5a1edbd93b8","sha512":"ddee6e0c9cd60676d9195e2fb635982af76e72cf188acf0f42ba7ac648dbd5acc579a186a2c51fb5ac9d5e758c5289ab285ea4e80694b19f70a1715a5707b77c","ssdeep":"384:L+x0EMPsBRgXD2PTmdN2/5dQ1tHSJm/BtU:L7E2NJuJmI","tlshash":"2cc2c007cd96b099f3f6e24e0eb4d50c2cb453495270d702be868e289ae5ee69d2f315","size":27626,"data":"","first_seen":"2026-05-05T10:36:04.872376Z","last_seen":"2026-07-30T06:08:06.349039Z","times_seen":4429,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a4d9b5501294e7f7449a79b22b21e5eb","sha1":"1354467848747256e51a9a6b2ac961ebfc54197b","sha256":"051b0b66d998b6b7f8f66d0a6ef99271b61799c668c6799df6a0755a2843b51c","sha512":"f8daea8c9048bbe6ca8ae012ce51364ab8f8b33cee83e333ff79385d953f4e9f8cb827cd74dce9faffef57547df485808b654973b99c727a2bee685a1c9feebe","ssdeep":"","tlshash":"c7c08c312f39682891a16314b9bb0c0298b0424058ac194c4f01a848a6f8f0c008ad40","size":155,"data":"","first_seen":"2026-07-27T00:29:31.721669Z","last_seen":"2026-07-28T07:04:56.413179Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"637f0eba5ed2446da06f8dfaaa71b920","sha1":"e25d0a8466bfee620dd9296debc19ffdeaa85a05","sha256":"d6b7abdd7a602d01fe46f14a23c4f2297557b2a789beff590d898aa7e03bbb13","sha512":"3077975b2b3ac30e9bfe70e9f0b55117750b27e41906a76797d3db8adfc753974338025f2b90d936be047d1464780a67192cc86a3cade5eff17aadfe1e3e872e","ssdeep":"","tlshash":"75f002f19a4669ff4c9275611ce56073e1bb2cc348117c4abb05d3ca9235fdb24c9c6a","size":617,"data":"","first_seen":"2026-07-27T00:29:31.687603Z","last_seen":"2026-07-28T07:04:56.418135Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3ed79134cf61d2a263c18b4ffc594bed","sha1":"271638819dfbb7662485bee958a9ae5b77606eb1","sha256":"d5719ba5160699c389db8e2aba14d03f7e8b000a4de9c7f3914f451d2c89eb6e","sha512":"1a1282fe3975543ed0a174027a48e39879bf90011ee2c4bb4eb5bf25ac2aaae4d8f0b0bd878b177ba4f0bee74684e2ec1ae18c53c6e96acfa460408975d71ac0","ssdeep":"768:z8BTPMErdYHnCu2NPdPS5oPX3zp76JSAZg+hCU7aeTEPecn9fJG9CwaebQHr6pdc:z8inj2rpHh6i+9aeQm6SLQLUEEK","tlshash":"3f6319eff2d673710de665f2045b820992be7552dc40189eba05e6f86eb0c47e02bf25","size":68204,"data":"","first_seen":"2026-07-27T13:35:15.433481Z","last_seen":"2026-07-27T13:35:15.433481Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2db95e8e1a9267b7a1188556b2013b33","sha1":"07c342be6e560e7f43842e2e21b774e61d85f047","sha256":"acac86c0e609ca906f632b0e2dacccb2b77d22b0621f20ebece1a4835b93f6f0","sha512":"f10127742e07a7705735572f823574b89aaf1cbe071935cb9e75e5cfeb817700cb484d1100a10ad5c32b59c3d6565211108aa9ef0611d7ec830c1b66f60e614d","ssdeep":"","tlshash":"c700000003000000c00000300000000000000000000000000000000000000000000300","size":1,"data":"","first_seen":"2023-03-07T01:15:12Z","last_seen":"2026-07-30T04:33:25.573185Z","times_seen":57183,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"13e4d4eacd186a52c688b45ae374ddc9","sha1":"d143221d36c33a44096b811fb5248b8a325265b8","sha256":"aa931b41f1dd816e4abd8cad35850741fdb6e4657cea2add1427e0a5e02f2b54","sha512":"d3eca32c5a355c3122a1a2120cfcc22b1762257bf100fef44c85ef7b242f22603f784573dd78affedc6a0aefbbb31e1b2f75ec31955402b439a5bce508bf64a4","ssdeep":"","tlshash":"d9e07d149b4e26f5957fecc920ced10510be706b40296c54556dc90014b89238174908","size":299,"data":"","first_seen":"2026-07-27T00:29:31.609353Z","last_seen":"2026-07-28T07:04:56.491631Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3552.4c5535183b7a0330a89d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"8cb7d12d58618d9e9433db7cf169e678","sha1":"dd2e2830dd9f4f8c3e4000fb90c94712f7315f67","sha256":"e54bba4bdf7867aec664fc0c023a4e77650464bb7e2e1a2d80ef75500363cd92","sha512":"9c9ce4a19d03df706a0fb6495901a15dd961b87797e48e43669a130ec51d4d3788fcd9e251dd54f1560134509553e5c7a1cc17249ad1f6f562d104b6b10d9a66","ssdeep":"192:ETCSGJXJ6h4GX8tWKEN7Nbj61RO2g6OQLgwF8TEz5XnC/x6/v60KjBHAH4yiFbBw:EmSGehtqWNN7Nbj61ROQLRF8TkVNjaAj","tlshash":"ab42b53d719358a8666780e980390b7ba6283980a58741bcfb78dccf46cddd46277f38","size":12192,"data":"","first_seen":"2026-07-22T11:33:41.980937Z","last_seen":"2026-07-28T07:05:00.655129Z","times_seen":1853,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"525e99684c16907d295ddd82473b3408","sha1":"8be034fd1d390ea633901fb8c1be4c01eeda343f","sha256":"b78837afef36e371c2dc417614664332c84a7e2c27f537edf442e730486b67d4","sha512":"bfb8507502ed1d6189fb1a60a8802458a4cac5584b4e63df602b3ef0f2441a8bbf7d4acd54f1dcec11d6e981de5153f905e672c2dd77bc318589f9c34704f719","ssdeep":"","tlshash":"bce0c0bf8237421019f25de7ce97236ce11d27a00b216c6ed32e9169d426896b258c49","size":346,"data":"","first_seen":"2026-07-27T00:29:31.571342Z","last_seen":"2026-07-28T07:04:56.433204Z","times_seen":334,"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-07-30T06:07:43.493012Z","times_seen":1711,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"da2ef09dbc6b0f85bf0db51037bfe17a","sha1":"e42f689642a1969c3e7a3da390191d81510a8ec2","sha256":"4fd64c9d5058b36498ffed3c805ae9b3d35f885c8f063a3b1372d09086e489fd","sha512":"c84b5f322afb9e1909844b8ef52b3287a27cccdfaf17361dfceecff396ae873a8d59f75fb928e2ee07f7a4bc4c8b7f0990905f642a2746fdef3b9c9d7b5a57bc","ssdeep":"","tlshash":"eef09e99f2c7d47491798634d8aa4305d6133d402006289aa465e0fced57866e932b7d","size":506,"data":"","first_seen":"2026-07-27T00:29:31.654529Z","last_seen":"2026-07-28T07:04:56.523407Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7c60abf1f9cbe086f9088b7022df4e43","sha1":"9e861f47a7bc785870da1bd37be033dfb3418f4e","sha256":"459990baee71111a476418d9ef771c219296d975a20f7a139b13a9e21da11067","sha512":"87064c9633c03478a62b8b2e1ea0b45bbba061ffde1fd29399820dc71ef3df2237b873e66d24f664b1d24a7d3ddbd538ac1b289a5b9004230b89f467a7c7eade","ssdeep":"","tlshash":"987000883c08200000333220000bca0c082200c202088288000000820c3200a000aa0c","size":22,"data":"","first_seen":"2026-07-27T00:29:31.731043Z","last_seen":"2026-07-28T07:04:56.465097Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3f16ba6bdfd02c4e6d6ae33b270a1f81","sha1":"f5d52f0d69a9dcd7911c892ee2dcce029f1c75e5","sha256":"a104c10429792d6a042a0fb0751a968e9aa8956b47d40c1f74dc2da583ad9a37","sha512":"fab03881cc443b59aa2d84e016969b4c760c09d13de47b248ae17efa22ebff60806ce1cefc203f813781f5a760e73b5d32a8c3917bff0fefc7ac14eaac13a32f","ssdeep":"","tlshash":"87d0a744a02e504a093e2d6b759bea27729078033816cc6d965e888d0cb0813c55fc5c","size":225,"data":"","first_seen":"2026-07-27T00:29:31.667493Z","last_seen":"2026-07-28T07:04:56.471214Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9cf78eef34d81797843553088423cc4c","sha1":"4c318f4848444ebeffd7c3ec362e7a5d9d8dc1d6","sha256":"08cb761b3122248600905b315d7839106f6090b3f0b7496b3d6f817a15fa134e","sha512":"c64ab5ad79ad42752434c79a13f34faff7dcbde611281078b2454feec5c4ee3b34f5ea2011a402792e0828759876b339dcba5c7a09a5bd2ab58c9d7891b5c2bb","ssdeep":"","tlshash":"0bc08ceca97db246606b6e8c900322181763960fa4402854c51592413a33a06a50f9bc","size":160,"data":"","first_seen":"2026-07-27T00:29:31.613797Z","last_seen":"2026-07-28T07:04:56.409749Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.smartsuppchat.com/loader.js?","fqdn":"www.smartsuppchat.com","domain":"smartsuppchat.com","tld":"com"},"ip":{"addr":"185.76.9.12","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"introduction_type":"scriptElement","is_inline":false,"md5":"218d24439d4e2c0990f35338a7ac220c","sha1":"5a7b913584c1244bf61beab9dc644204d130101c","sha256":"efb497f7159de26ea5e0521d675d909dc063e36d0d23c2ad96fa9109b73ee263","sha512":"17af39bfdc350c9d1f8dd74652641d0c028881ecb3935d2d9fdb763d24136665d135d00219aabac57693112e2314d4fa91b802ba2662a1580aa35c5e0b6e624b","ssdeep":"384:2/xzy2A3wyxNeBWbEgl/EuVaBWbE0rIcvqSI/aQ/UpG:2/xzy2A3wXscuVaAxka05","tlshash":"4182b7cc7691b16543ab61b4843f620ff1376929740d8865b965eae13cb8c8ed037fb8","size":18024,"data":"","first_seen":"2026-03-30T19:01:55.527327Z","last_seen":"2026-07-30T06:08:39.271456Z","times_seen":7765,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4fcbef6e7bb2b153c0a015529ceb3f91","sha1":"2969b9477d52e35b527322b6961cc28254bc252c","sha256":"eab988586f405f0967700f5518505207e779bf4b743c126021d08c8289052560","sha512":"ef957d074e3bd5fd8c6fcbf4e7b34acbaa5358ae1064d1c029b861b88bcbbf387b577aecab35aeca5edb650f4b02ec930ffac631ad4184ab639e46ec11b48b86","ssdeep":"","tlshash":"64d097d57442422508cc0a86f8ff133f7a60bea291884a58c0cb8be02f204c3c6a3a37","size":282,"data":"","first_seen":"2026-07-27T00:29:31.732671Z","last_seen":"2026-07-28T07:04:56.541153Z","times_seen":333,"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-07-30T06:07:43.511426Z","times_seen":2104,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/exm=el_conf/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main","fqdn":"translate.googleapis.com","domain":"translate.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"cdf9309b56a4ff330627409baead2538","sha1":"e98eac16441e99c9512052eb0087f535b9a609b9","sha256":"310629c4e47d7960e5a89cbd6a9c1d24a4e4d7c5e18346a69a67d92355cf2cd4","sha512":"cafd13a201e26b9f94f9a636ca1f7c191ec3a9fc3f297d35ee51b1304962383e7147509932a759bd903e27e53fb251600ad6942739e472161f5a09367c3776c1","ssdeep":"3072:kjsNxt45eITHt28KRu9gKavNuBDHK0QppB0/I:osb0muBzg","tlshash":"dd14e8d9b26270679263f4a5403f004eb53b68a5f9484dacb28de8e26df4d19017bf7c","size":194344,"data":"","first_seen":"2026-07-22T18:30:16.180779Z","last_seen":"2026-07-27T19:37:31.609707Z","times_seen":2601,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_forex_cross_rates_widget.777cea271d0c0d67c09e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"686875cf199c7af0be3de2a5a2bffc57","sha1":"67f4e29b649a6641be9ad6f99db217ae6a30121c","sha256":"e62fb06f3628b281bc3f17bd41735a65af72ec9a545d1404885fff36cb5f80df","sha512":"9eb81f5be62b7352d397604220c39f01461801d232e6409ed60f8cedced7080c3d80da4f305d313d5dc053557b1e55f42dc7d15b41179de3265e8886984bf523","ssdeep":"768:OG4E1H6Xn6hVwEfGAM3r+ddH3NC2p7nHBiJMNg3v5c1W0U9z51qKrDIwPzPAIF7x:DH6X6hVwrA17BiJMW3v5c1W0U9z51qKn","tlshash":"0b13e64ab19064a362db40a7807b100bfa3f6aecb405857db578ccdd27add487267b3d","size":45309,"data":"","first_seen":"2026-07-23T13:38:20.430637Z","last_seen":"2026-07-28T04:59:54.43658Z","times_seen":255,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1fff332780e527639f64c89183f49b53","sha1":"e9c0d16f6e00accc87eeddec9845e7a9714f282b","sha256":"d41142433105e76432dcf3234e68b7bf2d11ead80465d9d13da9303ca72504b4","sha512":"b3edbdd776178eba7eef0a761a0ce926f74d982caf23c61f4d82e17a12cacc50dc1a00dc0418c6fc90e3af287a4cb73ed79763f80a6bfe97c3dee08903e32ff3","ssdeep":"","tlshash":"c71000000000000000000000000000000000c000000000000000000c0000c000000003","size":2,"data":"","first_seen":"2023-03-10T13:21:30Z","last_seen":"2026-07-30T00:21:47.079664Z","times_seen":4232,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bc832d5258e3425462a253f85c9c5c22","sha1":"1b093fab2bd12d503ba8dd6eeaaf1d785e25e0e6","sha256":"4b13a906ee170cee2ff47dec2e11b62d74a1e306390b03cf2623e5bebc8d2493","sha512":"44ccc0aab0f5fa56d38b62987b643de93e8848add5fc33144bc45a2c89836638d780daf2aeebcfcd3ea99aa7e35d53756197fcd538e71c917940c88c1feef831","ssdeep":"","tlshash":"aee07de020025414848d8996f87f232ba960fa62d1440e69d843d7c36f200c3ead3537","size":327,"data":"","first_seen":"2026-07-27T00:29:31.741417Z","last_seen":"2026-07-28T07:04:56.516469Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1530dfef260a42c6cf4ae74e3b3a0ccb","sha1":"65d508f3134b2fa935267af6ae5ff74065af1ac1","sha256":"aa73448b0997636c2ad8130d820f28d761120fbbf441fe39a79700d729a1968d","sha512":"a03dc4c2521e4da4a2214b3c814d6a9a72a790b033ecf18959ea623f3922ec89ecb3778ececf6e6c47451f2f5a3e620210497a1b19fdd17bc9635cf760319d16","ssdeep":"","tlshash":"32e0680f69a1535f48e400c4407707716e640902bc84e9bf8c05e37e86187c3d0acf18","size":378,"data":"","first_seen":"2026-07-27T00:29:31.558429Z","last_seen":"2026-07-28T07:04:56.480039Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/20061.8715a452514d45d5dd3b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"7d505e8048a3d56a7c35fec43b942e28","sha1":"7cc8e3f14d3c2bc72667a4b341a18173ba08360e","sha256":"3c8a6537a973cf0adf27e43d6727b986d50fc12ac3b1bf62528b892270b5a901","sha512":"42ecf81a5c530657c264164cdace5abb238353df391c16cb5f4eb18c3d4eea154e934f76f113c9fe8c77cd66d8e6038b288ce213c22f225e959c5b61f6221849","ssdeep":"192:OlOIsbRrYGv5JJjaqRSPoi35z6e5WyoEH6R+0332JtcIKidzTnM:OlOIs1BnJjaq+oCm1GH6etcFidzTM","tlshash":"44f1b89870c9b07653c60867f0735488f23c2550788e89a0f298dcf63ab285ed267f9d","size":7907,"data":"","first_seen":"2026-07-23T13:38:20.472499Z","last_seen":"2026-07-30T06:08:06.3548Z","times_seen":1507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f5cb050e3ad0ed3ce59271b07f97dd51","sha1":"1bac449f3080230ba3fdbcaf0b98ccbc33c09d04","sha256":"e2872821331488fa4384f08b2a13050f6420cfe89c204db05be1d46a32c14c74","sha512":"285a9bc45e8f501f09aae916504c806ac2724d0fffdb092195360a8fd3293fba42dbdcdfe49135393686f1127deffed16576c7ab268902bba3ae48a355e85b73","ssdeep":"","tlshash":"d5a01208180d2009041201d5a0e3a00441d1341f60c00cc5b74ec1820b707e1700191c","size":77,"data":"","first_seen":"2026-07-27T00:29:31.690531Z","last_seen":"2026-07-28T07:04:56.464278Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"96d66a4d9708fdb6dd5597f3bbc7d624","sha1":"e10a66fa8a836f6f948941262b70e1fc928a446e","sha256":"3cabac574ada654802fc1c4518d870f0791a9a3ac31371677e75fb683e47ce89","sha512":"06c25bc4dba52367cbe19252c1a013e1714a198141d139939944422266aaaed60ea3953c5d0f890a7f9ce7887c5f2a4cbb47173d06f829d50ac33f6f353c015d","ssdeep":"","tlshash":"ebd023cb729c1114574337141eef0448bc64b4d70dbc941d8649581058011ede03aecf","size":195,"data":"","first_seen":"2023-03-08T14:47:45Z","last_seen":"2026-07-30T06:22:09.49686Z","times_seen":208029,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a5f1b1fae88e7c924e78f29b246f89be","sha1":"0803ca78502f773ba3c00003fa5553356186c5af","sha256":"6fea8a9519d7077ef74493d7d9adfd74ce31b1b351246358968fda26029df9ac","sha512":"a604211ab03e82aa91e6ed1e954a9ca6052e3a8e31afd9cda8754e80adaa33e7c4434f26e94cbf11a42f64c72e41902cfd142401d11d3e3a1a427e9ffba80146","ssdeep":"","tlshash":"f98000a82c08a080c00a3a20000fca0c222200a800000a0320820aca0f33cab8083c0c","size":26,"data":"","first_seen":"2026-07-27T00:29:31.597711Z","last_seen":"2026-07-28T07:04:56.444388Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"43d936683a74f717424b20bb2cd4f0a9","sha1":"14b0065e083c5180bc57d3cce2092e116f2d82eb","sha256":"f29458568e1530958b457baf622428227531bebacffda294b6d6441675e7b644","sha512":"d45c6b7571d6fc0eb1a54e8eb551bf84532f931fcec92502a1330b2e7ecb50b4393cfa779f3b45085f6e5c371e938e687ef3a610ff494c1c60e0f297435685e8","ssdeep":"","tlshash":"c71000000000030000000c0000000000c0000c00000000000000000c00000000000000","size":2,"data":"","first_seen":"2023-03-13T01:43:35Z","last_seen":"2026-07-28T07:04:56.499668Z","times_seen":4203,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3b78ec746f872bea7567042b64a4b673","sha1":"1dd8f71188b74547045d7fc9e9340eeb2098a0c3","sha256":"0392eb24f28399c3c1d3f10df83aa25712c95c6eea6a2e89f84586a350ea402a","sha512":"77bb101b08c601ce64a885cae13fc6a92f624d5ec7d03f4e7513762c3fc6caff1f85c2dcd1b95c5e5751f094229db7b7636675b0a23ec739b18435446be521d5","ssdeep":"","tlshash":"b5a01208180ea009042201d5a0e3a00441d1340f60c00c84b34ec1c20b707e27001c18","size":78,"data":"","first_seen":"2026-07-27T00:29:31.641653Z","last_seen":"2026-07-28T07:04:56.475666Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"50fa8efab11d7035bc94b7e4db0e00a2","sha1":"23e2a99575731db1e5d7f6ad8ad646852f10f027","sha256":"4c743cb7cf6833aa384b56a5d7c2b0660ed10419f4cdf4bdea32195ee4993fa5","sha512":"da97d5179208aacd7071bc9fe7a1413a0436150035c435cf58edb9294c7059efad47a2d229b754ff4f4fe2b7302a0eca0cac11f03802c0fe892024606440cd5f","ssdeep":"","tlshash":"95d09530bb1c10c46a7756f21b53c45d00e4b3df4534d4d7e45980e00665d554436d48","size":258,"data":"","first_seen":"2026-07-27T00:29:31.56825Z","last_seen":"2026-07-28T07:04:56.542566Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b640f7845a4341a89d25c0ca0f9b26f4","sha1":"5b98b63751f6e77fe954f5b95388d615eb263003","sha256":"3fdecbfeaacc1474406d975d54141cd22c1be7ed72ccf31bf23f5304e2b50164","sha512":"ec2592241ccbd9a0e93c49ad07121af8cb3acb2a4d8fc25e4f4599a1052d1fb51c9ef8538ac383c52e1205f9b6a17525703f2c4d4bd0d69fc090c04f93943066","ssdeep":"","tlshash":"2dd02b38e11c422b26970b4197c2183b05004642dd011d7b2eae28eb7044c9a9a1481a","size":256,"data":"","first_seen":"2025-03-17T23:26:20.961709Z","last_seen":"2026-07-30T06:23:09.387631Z","times_seen":167726,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ca35c0bc42e49148dafefbe13185819a","sha1":"a9b2702d2fb01ea08f26bdf11fc43027fc570a0c","sha256":"93d0ca8fc5cd704de1d0302e5b2d95089fec809742305d1ccdc0fef634db9689","sha512":"7ec63c17463e23f080c07ae538cdde1a4063edbedf87016ae34086b332185fe6f55628a92d64c8511a27f1f3944802cf1fe5298419ea3ef9b51304edaec8c3e6","ssdeep":"","tlshash":"d3d095d57442412508cc0686f4ff133f7a60bd5191444a5cc0c747e02f104c3c553537","size":284,"data":"","first_seen":"2026-07-27T00:29:31.601069Z","last_seen":"2026-07-28T07:04:56.435987Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"be1f545aca0d962a6e9de54c71048707","sha1":"d4f5e7c69c5eb9533944c52244111aaf5f0aed04","sha256":"4c290ff95bb736224e617b184ad97497af15aa53846f7067f5d0db5e8c4e617d","sha512":"6d30d1789ea8c302d698cc4bd29763fd2da46d7246dc389483ac262d8c3579e922fc0d45f29474f0580b802f1c2b494ea5df6cc70bca01170ba4a4d87a838558","ssdeep":"","tlshash":"917000883c08200008323220000bca0c0a2200c202088a88000000820c3200a800aa08","size":22,"data":"","first_seen":"2026-07-27T00:29:31.692344Z","last_seen":"2026-07-28T07:04:56.422239Z","times_seen":331,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1801cf0c94344d850a7396d39794eeac","sha1":"838ec656e5a6ac06a4002e5e741f8aef38a04d36","sha256":"711086bffba7991c6bd5bc970008f28ece8414e0ff513da8b652c1586a90281d","sha512":"7973c2fc0c5dcd0edd201b4caa7f52f4c50fd43c700bfe6e0357b0df2f91423966e301412a99e4d6e473649619e9cda59e2f91873d49dd546b42c7efde54bbea","ssdeep":"","tlshash":"40a012145c751016e01d8029a40b1104008a320790145401e449058000e4824a01048b","size":71,"data":"","first_seen":"2026-07-27T00:29:31.738096Z","last_seen":"2026-07-28T07:04:56.411513Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9706fbc074ca558823ab699e88c416f3","sha1":"444f28608265f8b73bc6df02581043ad54608a94","sha256":"4d8a4fd940462430cc488836bce6260af85e699db93794d73f42f068ce95832a","sha512":"4abc154be2b80d94ab621e5ba14a65edfbc284f509395db52a828b35643c42bbfb37d163f60cc7308f24f8636dcf35e76512e317ca6fa6ef17f0117dc264d147","ssdeep":"","tlshash":"2190029662837010119568138996646a5969694528041965804521da2cb0027e221e0e","size":51,"data":"","first_seen":"2026-07-27T00:29:31.708907Z","last_seen":"2026-07-28T07:04:56.502136Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"90eb8e6176ec2db449b973749c08f6cc","sha1":"ba5f15b9b337f2ec6371e30b3ca0f70858136c52","sha256":"9ee3a02208f34973ce99f07605977b9557d786c345832252bbd13c9e3ad6b014","sha512":"35b9aec976337e214711f7003c87637817a65dfaea02284a7a0d4b00bae89b245ae3e20d3a02471b0991a1f95db9c4d476cd4aaa599ef780f64e4549125d63e1","ssdeep":"","tlshash":"e1e07dd020025414848d8996f87f232ba960fa62d1440e69d843d7c35f200c3ead3537","size":325,"data":"","first_seen":"2026-07-27T00:29:31.587207Z","last_seen":"2026-07-28T07:04:56.445975Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"dd9ac26fd4e46f3a73d20975f620f2b6","sha1":"b9739f7859dac8196b06390ce579d14da84644d6","sha256":"08de55088ae96e4867cf521fe3348b7d212be41a530d2aa80fd26483395189f9","sha512":"7bb1358411aa9cd856c410bc552027d2a292e1a8b7a93bbfc94cfb8a83015bb907b3baa9d7ffa523ed7d4c7213cbda309aa23d9ecf05506e8c14326ea5068427","ssdeep":"","tlshash":"d6d09708cb48614abc11c8e421e1fe7c60ce8c2f704009c2b3692d201ebaf23e0ebd0d","size":258,"data":"","first_seen":"2026-07-27T00:29:31.679419Z","last_seen":"2026-07-28T07:04:56.435273Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8d8b85adc4d2474a84fbca1381afb3c7","sha1":"3815645d5a8680fd3ed4ce5a3b82f8d432448698","sha256":"3eb8abc484d33a620c974de75babdd2caae4fff7dc8daad7d860dd41c93ee611","sha512":"910cbf3ddef06885833d1127febca48a7f76337a577db0e125a3157ee738bba15ad1d30405e79e1de60279b2605f489b16d8b258fd17bc0c04bce685d65fedfa","ssdeep":"","tlshash":"08a0124823d0a000e671241804070a80b1a069046d1f22048280018d60d0682405c509","size":83,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-07-30T06:23:09.372942Z","times_seen":208351,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/13148.32cc01dc01751b91682c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"9eb8a2729659cd900aee823198b62b43","sha1":"27c53602ca760b97d71eef345b01c1d537900aad","sha256":"3ac4b66b0a6823b837035a5dfdf7fe41b01ccf2a2ac115b143c12356080ebdac","sha512":"6c86fb2c2378e589f4353d32a048ae866196581fc0a8a7ed13c379eb47eab41fcbfc0ee44f3ffe77ff3800136be1da4fbfecfe3456524b96712a1e5cef42945f","ssdeep":"96:FRi/jMMHFeHojARuZi0DWss7UebYiWWD+WRdiaEBymSM0qRIv0nrWvW1HN6Fb0so:rEjMMlIeARmLWss77bJWWD+WRd8ymSM9","tlshash":"66a1e987b9c2f0a063d9aca5953b054ae23d6c1c711bf0e8e2e9d5d19c7b10b9112f36","size":4812,"data":"","first_seen":"2026-05-15T11:49:16.287975Z","last_seen":"2026-07-30T06:08:06.468221Z","times_seen":4839,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8d9c307cb7f3c4a32822a51922d1ceaa","sha1":"b51a60734da64be0e618bacbea2865a8a7dcd669","sha256":"8ce86a6ae65d3692e7305e2c58ac62eebd97d3d943e093f577da25c36988246b","sha512":"6b3b006aa3a86286c359a6d243d62a61e46f0c5f7d1db587faa26fbe72718eaee33f774af164e3ba790d4ae4136a25dc993d3246f7be6691fa7346d0be0f1a71","ssdeep":"","tlshash":"c700000000000000c000c0300000000000000000003000000000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-07-30T05:53:57.55521Z","times_seen":64063,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0d61f8370cad1d412f80b84d143e1257","sha1":"32096c2e0eff33d844ee6d675407ace18289357d","sha256":"6b23c0d5f35d1b11f9b683f0b0a617355deb11277d91ae091d399c655b87940d","sha512":"3d637ae63d59522dd3cb1b81c1ad67e56d46185b0971e0bc7dd2d8ad3b26090acb634c252fc6a63b3766934314ea1a6e59fa0c8c2bc027a7b6a460b291cd4dfb","ssdeep":"","tlshash":"c700000000000000c000003300000000000000000000000000000000c0000000000000","size":1,"data":"","first_seen":"2023-03-07T12:12:28Z","last_seen":"2026-07-29T12:54:40.322943Z","times_seen":75911,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c1466f3e470c7b768dd55792ec54d047","sha1":"608ec6c74344fd48de7aec8da3b9c652091f5247","sha256":"9efd2d75eaa2c2d73d54de006191c0cb3c6ebe1e029a745c5402fc61956afba7","sha512":"028b1f70fce56b317ae85cb0a29e278bd46ad7700be717e0a760179c81ad869e9d150018b2279da473d7ce279c19b552eb01220489f2974ba1a70bb750b50897","ssdeep":"","tlshash":"f2d023d565d74434c5e2d92e01331240cc254d18dd040eb17102f245cc70745577e9c7","size":196,"data":"","first_seen":"2026-07-27T00:29:31.66023Z","last_seen":"2026-07-28T07:04:56.527426Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"37a6259cc0c1dae299a7866489dff0bd","sha1":"2be88ca4242c76e8253ac62474851065032d6833","sha256":"74234e98afe7498fb5daf1f36ac2d78acc339464f950703b8c019892f982b90b","sha512":"04f8ff2682604862e405bf88de102ed7710ac45c1205957625e4ee3e5f5a2241e453614acc451345b91bafc88f38804019c7492444595674e94e8cf4be53817f","ssdeep":"","tlshash":"b9300000000000000000000000000000000300000000000000000000000c0000000000","size":4,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-07-30T06:23:09.374456Z","times_seen":279655,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"89aa4b196b48c8a13a6549bb1eaebd80","sha1":"1247e024fd6d643afe2cdb7eafe74907ca00d25d","sha256":"19503ea6785ee1243cd3373fe0d201404089fb7c559d2cd4b025585ee36ff3c3","sha512":"36c3a3f8a8082a7db91e846a7d533c1ea0e04a662b60f37b245790bdb15599093360d980c5fa949d0d79b4d95aa401beb698ced062215c9707dc4d5a4fd4e54c","ssdeep":"","tlshash":"c710000000000000000000000000000000003003000000003000000000000000000000","size":2,"data":"","first_seen":"2023-03-14T01:57:03Z","last_seen":"2026-07-28T07:04:56.495522Z","times_seen":2525,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"df3acf196a66e135c3446e07e0a82708","sha1":"301ceef105300a4fabe93076248b037ffb9ef422","sha256":"4d053772fcc0218f108d840e4f4694caba2524c7cf18235bc8132a077f4edccf","sha512":"8e7b84f25d96941e7c6af5dd7182b0d22e1f06cac02e7a67a88c73253cc246276cdbcf23144784e0063b34499b696da5b84d595b081ed09df723cfa4f291afa4","ssdeep":"","tlshash":"aaa01240268b6040041a11d450a3910840d6000b60cc2cc0d14ccc420a112ac2113259","size":71,"data":"","first_seen":"2026-07-27T00:29:31.554952Z","last_seen":"2026-07-28T07:04:56.52001Z","times_seen":335,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9dd4e461268c8034f5c8564e155c67a6","sha1":"11f6ad8ec52a2984abaafd7c3b516503785c2072","sha256":"2d711642b726b04401627ca9fbac32f5c8530fb1903cc4db02258717921a4881","sha512":"a4abd4448c49562d828115d13a1fccea927f52b4d5459297f8b43e42da89238bc13626e43dcb38ddb082488927ec904fb42057443983e88585179d50551afe62","ssdeep":"","tlshash":"c700000000000000c0000030000000000000000000000000c000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-07-30T00:21:47.021127Z","times_seen":65175,"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-07-30T06:07:43.484238Z","times_seen":2855,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"af7a45486748bd9d8fbc1e8988c8de2a","sha1":"aec443b589dd677d524f4b38c72cb09cc3888334","sha256":"ed1e0f33e73696fd1e79db950560ceb5d1acf35ac4fabe43a7c5dcce91d90b11","sha512":"f23c74a9079059a09918e9f5b8c37887ba9bc93f6ec84f38c589ae0aba5a0d8367d9c9631800ed45ca46e444247df8f62aa0974859e04a7501621ebfb0923b05","ssdeep":"","tlshash":"afb012ac9fc4c46ca04c08782887ea042089640b40290941b44696211738c8a20e08cf","size":93,"data":"","first_seen":"2026-07-27T00:29:31.71769Z","last_seen":"2026-07-28T07:04:56.508247Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2cc43ad532377e05783b919d86a896d9","sha1":"69e00bdb15ac21186c8d27764e6311759ba5b99b","sha256":"007cd5f5a967155b6963ac5de46c369ee23237414c3f576b4197fe46229808ce","sha512":"404182f4b51a22a4a35e58480d372a65db2465803ca23913e379199413edf84fa74dcf0f92026d8561dcc35bdff981cb98a38c8f50ae05f7224e5c7b42b30c92","ssdeep":"","tlshash":"2cd022c93c4978d20279238888ba01f7e2fbb8dc78068b40c32442002a3ca3a5464402","size":199,"data":"","first_seen":"2024-10-31T11:08:50.83142Z","last_seen":"2026-07-30T06:23:09.394731Z","times_seen":155841,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"fd037685d3af5317ffa0fbe08c1281e0","sha1":"933dcf01d288d285d07ace051b6e43f1ca080911","sha256":"725cb452273c6e73417b860f55c5f2df1d12790b425e982a8d66364b7c55f98b","sha512":"134357ce0061b815d42b5cd3387865ec2b2e594fb4b022b00d934d65a4122a5f05846c2e5a79434600197a4fbdc090a93074ae392d5d7f9d7ba53c881d8f5717","ssdeep":"","tlshash":"a40144ebe890c33888e025d60c4795855026f844ec12d88d8c50d3d4de7e9ff65cb900","size":678,"data":"","first_seen":"2026-07-27T00:29:31.714835Z","last_seen":"2026-07-28T07:04:56.526613Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5d43ef05e57cdeab7895fe8a3b6ee014","sha1":"19671e4e00cc9b5f8f6a6167c1ea8800ee539aeb","sha256":"b7893a0611b91f5fe47ce3889faf375eddbda47517f4e44c8c338eef6d2c41e5","sha512":"535346ebfe272e052e64dfa1845da29662c36e84fa5a946e52dcbb2cf4d894851a102180fb1c04603f86ec920d89fdfb62c1ddc14ea81ba4cec7d4723ad5598e","ssdeep":"","tlshash":"8db092a4a20c0b5812813919ad2b06e950e42704f82994884ac0ae2548e0a41568ead8","size":116,"data":"","first_seen":"2024-07-19T01:23:55Z","last_seen":"2026-07-30T06:22:09.391874Z","times_seen":189911,"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-07-30T06:07:43.516728Z","times_seen":1706,"alerts":{"ids":null,"analyzer":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":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"2ca987f27dbee6434faaa87c0bb3775e","sha1":"1514e49aadd900d255d2b68832184a9475dbbd4c","sha256":"9ecf53ae7638eb4eae44692512062b0efde9485d80d3c4e073b71d8449325bed","sha512":"d1370434890d0efd043b9d565d6ce4a6f3b6f3fe8cd770692c994332b0792a035e68789e2d02c8f2387d5cc9003c3d1f5437f9566096b888338511cf11387ea2","ssdeep":"6144:/yH5RU0jIWXbP69FMxmRknhqsScPmfxNf3EjUxVGaZoXzRYGg:/85C1WLP69VwqxVZOvg","tlshash":"17a4f8cdb3d674225396f478903f018ba57b29e2b44cc899f189cce42e7465a8267f7c","size":488553,"data":"","first_seen":"2026-07-27T07:02:55.664103Z","last_seen":"2026-07-27T14:57:18.250575Z","times_seen":250,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4aae7fd3c815b1cfa3660cb3227a214c","sha1":"4531c0c13ac8462f9dd8f0dff0e13b1c3e150bcd","sha256":"cca00c516ba05df351915a75df4db57659d685c5af3622cedbba3c6b626af2a9","sha512":"c2f67d5e011e7ad703ab55ea89f91fff91b4245f5294cb73ded819757eb158102fd038f24b175c1f6eae717100cd63d9e9529cc90d124cd90a26ab4a1f650d4e","ssdeep":"","tlshash":"4d50003c30003000c0c0003000000000303c000cc0c000c0003c03c0c00f0c00000000","size":11,"data":"","first_seen":"2026-02-18T03:26:52.257023Z","last_seen":"2026-07-30T06:29:20.247657Z","times_seen":83156,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0be6600367fee76523db94834295e241","sha1":"a2f2659dc9f4a3185878580210cde1f3e7ad093d","sha256":"e5819dfe160d11a607ca64745cf31e2f79e6d642ee0565aef7eed47c872711c9","sha512":"b83363a5ddb32adea20765f2a926ce5d4998a32d0969a18ec6cea9ca9f8dc9f42641adf366a747ae1c9a2ec1c7cf33d2e6025a719dac017ab8aa6390f7bdde67","ssdeep":"","tlshash":"c7100000000000000000000000000000000000000000000000c0000000000000000000","size":2,"data":"","first_seen":"2023-03-07T12:23:15Z","last_seen":"2026-07-28T07:04:56.458021Z","times_seen":633,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"67884a7c07ba8bbb5343281aefa35921","sha1":"b1bc7fd9373dc3bd0fca386a55683e1e488c6b6b","sha256":"9d4ab4209bab35caefbfbefa29b528f93b86da33a53881492b374d11952face6","sha512":"d75cebdb7204eb1ff4839de7d237e1f8d4c45d9179f205f260f23bbe15dca4bc2d218b84388ee40400fa435cecc93ca5fff99702dfdffd6c0f959c3484475588","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000300000000000030000000000000","size":2,"data":"","first_seen":"2023-04-05T02:10:24Z","last_seen":"2026-07-28T07:04:56.50743Z","times_seen":892,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/js/script.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":false,"md5":"62e271a8a7e9ea8e6a3482b58a65e498","sha1":"d10d38c6a68e8a2178f95e31ae9df130b2acb367","sha256":"7237c13688b844a1988ed75acace36a9a09977726dc883a63d42f1ad7aed60e1","sha512":"92a5fc06ad938269540602abaa97eca54baf15775ca4294817da2297ca51ba163a5f025fe326606a1387a91490682f2556a94147afb33f2c3e40f249950d7d09","ssdeep":"","tlshash":"2611ce0d70a8501969fb71056e794a48d7a5200bf005b8cafcbdb2103f3a14b26eaf0e","size":985,"data":"","first_seen":"2026-07-27T07:08:39.367597Z","last_seen":"2026-07-27T13:35:41.644505Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"93f7b592f2574e498c25585a59934906","sha1":"0614689e2e7cfe9ae5beaffd1c464f07ba7a7ea7","sha256":"b1aa91332810bb2148e37c657e0665bbae437082b77e63ca7108b65921f65c27","sha512":"d56f41933833fc0762b26704637be985f4d81d3b9efda7b55e249c07b1d3b80e73e36197d42b98277f15305d4e81d52f4a2b93d1576709a890d862066ad3abc5","ssdeep":"","tlshash":"72a002bea416f810242964a8968e149742d260479099adcdcc29d5446e55154d149998","size":64,"data":"","first_seen":"2026-07-27T00:29:31.670787Z","last_seen":"2026-07-28T07:04:56.503708Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7b0a74d2e293eb8c72de5b643b681089","sha1":"fe66c702d503ed278c323414a6464ffac17966ee","sha256":"35e812ee1dc11d4413c230c93b9e681ac4579d02692f607aa646bf35b856d6a9","sha512":"419e4e74e043fcb618f4e6c98ac3254c6e327326914fe688661fc19d3b3c1c0f3651edafaaa989b713151482b052ae40a6f720c3791dbb92f8d39dce067a13b4","ssdeep":"","tlshash":"e3d023d565d74434c5e2d92e01331240cc254d18dd040eb57102f245cc70745577e9c7","size":198,"data":"","first_seen":"2026-07-27T00:29:31.623578Z","last_seen":"2026-07-28T07:04:56.510661Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"6ece2b454fce2dbbcad72056a3098292","sha1":"cc99d4f07f155a29aba3972685ee852eb8c2ef37","sha256":"dbe5a33f7437ffd8358578d2b49be50db17c5709d69dec06c4d496d0531b868c","sha512":"850de402ab1f27afd2a51a6ada067b036f678053450dbfaae94daf45aefa348840b4e373497663ad93d754b4cbf19697e87b5b0e6caab97c5bae404b12bce17f","ssdeep":"","tlshash":"b22165faf3c672946bd756d0accf270001687581ef794a0f4861e3b057546976085e4f","size":1288,"data":"","first_seen":"2026-07-27T00:29:31.59985Z","last_seen":"2026-07-28T07:04:56.474803Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"33268455bec60d6e8b3106cce5aa8191","sha1":"45f611b7e2afab0b79cb7c1e891ac6f46b704904","sha256":"d29505fc15b3c47068fee2bb25e61c381c102403dffbb1ec744be884abc6ac11","sha512":"0ad3b2296b8eabcd70e3228bf25c165ad265cb0ad786a5d09ceb2d4a7158975a6bf6961cf21d00e9c04343ef1d54c8025b6b894a29235e8627a08aa969ad7d76","ssdeep":"","tlshash":"baa02208080830a200a2f000b08b0e0880c0b083a0380000802f8e8e033202a200300a","size":59,"data":"","first_seen":"2026-07-27T00:29:31.633857Z","last_seen":"2026-07-28T07:04:56.458886Z","times_seen":321,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"14e40422ad8a27f36371ae52c7dd339f","sha1":"4c1717c61dd24e928fed689d81c8a412fc58e59c","sha256":"e9eb52d0ff851acca5ec650406a22ebfc895d4cafce8e273bd36f754934b3f72","sha512":"1320707d81da23c7a41167bcbb7ba0c2d8426176cbc3c9f0cf7a23d84717235ca9e97e0baceea890e4740e8751b13b2178c1f8d5c04e9bc24c53a3530610c4ca","ssdeep":"","tlshash":"83b012887d3cdc05619718c8508ad00880421d0310010a40e01fcd513770d85304fcad","size":93,"data":"","first_seen":"2026-07-27T00:29:31.655611Z","last_seen":"2026-07-28T07:04:56.4375Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80594.e87444e26f9e12545231.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"75148ecd9563758ef37fbf710fa1ed9c","sha1":"de1a10ecd54ec0decbb03a8cd557426111cea6d0","sha256":"cf8c7a93d59e717ec020cee201f3d4cc1c2abdd9d284d8c741acd1489c03835c","sha512":"f58c5f5e173f73a99e68100eddfff45b2ea08d85d707f75a9b525aed76766a2a71017d55a717a9392da38d5c5ae394e073d0e7784e029bda8c8aae2a167f353d","ssdeep":"768:E+Rr6eBG5q/FjGgPqzEthfn9evRIZ3XQl0m0FSCUSxlfHiTzJuqgyLDNZGItbNb6:spKxt59evRIZXxQy8NbNANtfJiO","tlshash":"5f13c83df5d1956372eb84ff4f66f6435a266402b26b6fe0b135d3c0244ac8b1222e6d","size":41784,"data":"","first_seen":"2026-07-23T13:38:20.394325Z","last_seen":"2026-07-28T07:05:00.704151Z","times_seen":1503,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9ab95f1af82ba1b0456232030e52b20e","sha1":"2872b47fd0067d16748856546bd53e99995ea52a","sha256":"8bae950c98153b70946a1dce7a63de32802f6d1b268c5b88faa8e9f80aa2ad9d","sha512":"6bdf046752061ce20a27a4ff921a68f42b2c6fedcf8c55f94f400461db0aee984f499969ff7d0422cb97da033d1a40234d865a6ce3e060d60203d462d9b29264","ssdeep":"","tlshash":"5cc02be6b1b72404c390f01700324300d8a90c48c70040788043a01dfd61309c97cf42","size":130,"data":"","first_seen":"2026-07-27T00:29:31.658738Z","last_seen":"2026-07-28T07:04:56.428017Z","times_seen":332,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"da04c318a55359f32360ca8a986e282e","sha1":"e3baca1718399fcfe561970fcf6dba81648d6b24","sha256":"33153d55280e139f3b0c2ee818cdb8743e2d87d1078904067d080badf15192da","sha512":"3c60ee8bc870e326db30eecd0cfdd71ba34cefc1f6c40b9574cc15357e255c2aae98a0a820dbf5d3bdcac98e57bcd37a40d5ff363f4cacd97138334c8aab51a1","ssdeep":"","tlshash":"f0d0a7e9929a8431b2256094055d06119085d85b14124c8dbbfdc75cabb5c04d515e09","size":217,"data":"","first_seen":"2026-07-27T00:29:31.636077Z","last_seen":"2026-07-28T07:04:56.436731Z","times_seen":321,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"51792c67c588ce8139b246f015ed8a85","sha1":"d3148f014e0f4790ff65a8004585d17ed319833f","sha256":"6f70d853ba1dee4fc189490cfe4b6b1ab59f5853344cd85576bd2a4af2b506fe","sha512":"963ef7a25d5437d1a045dedfe34afbab41db4c620e4378606ca3b7b0c4219e51fda11b9b0e0b761093eda33aeac0e532a27b3f1a1ee110c13ba1433cdb28c067","ssdeep":"","tlshash":"cb60003f03000003300003ff0c0cf30030fc0c0c000c033c0c003330000300000c0000","size":15,"data":"","first_seen":"2024-07-23T18:45:20Z","last_seen":"2026-07-30T06:23:09.36747Z","times_seen":176630,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8a3f559a9ec90c0901283b97e979c109","sha1":"8859ff86e2b1e5ed6a0e28778fb749b58ef50224","sha256":"5020851a6e6bf1d1dec6faea76630924b429593e59c4ba8ea710c2fef00421c9","sha512":"10224ffcb1d495c946a3b140433ea3ce2a3ddf84708caddfdc83e17ee16b31fe76329405be6a5dd53691d13812b706dd3927677ef7d764791bb184a03a55d9cb","ssdeep":"","tlshash":"76700088ac0c208080023a20000fcf0c8822b08888002a02808002820e3380ba02280c","size":25,"data":"","first_seen":"2026-07-27T00:29:31.630724Z","last_seen":"2026-07-28T07:04:56.532422Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4d9ac09e2b9428fdf2e4a1080a0b7d4a","sha1":"b48305efe8b5158354f0d72d5a89a795f8456bb1","sha256":"b35f28def4481b87c38c345bde940dea7be81557d08375b8ed6464bd41023a13","sha512":"d3b0c2d5a94d0350854e08dffa8244ebc2a36b4f3bd6d1611930d9ce2976c786bc661ada3e5cdace44aeb03f23e9e4b915c4fd3d85c30fec2f67cb47c92d2a82","ssdeep":"","tlshash":"e02165eaf3c672946bd756d0accf270001687581ef794a0f4861e3b057546936085e4f","size":1286,"data":"","first_seen":"2026-07-27T00:29:31.662258Z","last_seen":"2026-07-28T07:04:56.509866Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b0683db4d2a1dcce56002a5aae49385d","sha1":"c977aeb11087ac6ff5fed7e712f858d7821bb124","sha256":"40263aba605b175fd58fa896c53350a3216282e2c10b44c50da36c72575f5aaa","sha512":"032c74ef081469145784aee79b1b43b8b2049c018355b47b9ba4204fd19c28690395715dcccdeb59f227c359a51e811c5805270324d2a48234d618d40a8df474","ssdeep":"","tlshash":"13e0c0bf8237421019f25de7ce97236ce11d27a00b216c6ed32e9169d426896b258c49","size":348,"data":"","first_seen":"2026-07-27T00:29:31.560202Z","last_seen":"2026-07-28T07:04:56.449636Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ed48ef5f6b1d0bb57bff4d6b1f4bb54f","sha1":"534ed3d9f61f43921b30fcfc7f8bfccb679e88e3","sha256":"31eeea2981f0d60c392a6eefcf04ce2b4ff74d0c540abc3cc2ae0b47d6050f8f","sha512":"b755e728c45e25a918586bdeaa50ffdad293eacfdee895b4586aa8808a8722b81d00b29900d6bec11a6060d2c0350e98f94b387f64009850c49909dd77c7e3df","ssdeep":"","tlshash":"c9c012e478178498815d669e9705e92f805b048b2071d810a01a5141363ea27c15a21c","size":181,"data":"","first_seen":"2026-07-27T00:29:31.556597Z","last_seen":"2026-07-28T07:04:56.492739Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8b537b3294601302084dd0ee891a73fd","sha1":"af1e5bed3b4cb4260b4322a2a935e2194db4ff9e","sha256":"e46dd0dc5bebbabf4a883401e1bed90eb30123d8051a9e485fb2f079e1568c43","sha512":"a1eedd7200a6dfe05b5f70e87375c5f6c31543aef15d3f34f51699ef0bbf212e445f771acba837b8a47476562bb4c7eae094c8923f7fe62fd77de3ebfa3c9500","ssdeep":"","tlshash":"05d0a7e9929a8431b2256094055d06119085d85b14120c8dbbfdc75c6bb5c04d515e09","size":215,"data":"","first_seen":"2026-07-27T00:29:31.566404Z","last_seen":"2026-07-28T07:04:56.43827Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d7b26c3bb88e3f8eac6ad7e35e777c67","sha1":"2379fb95114571b0baac29e9db1410af0eb86cd1","sha256":"3a563b19b8ee34acb1aa360533d55172540a8b43906b9b7db10256a9030a444c","sha512":"edd611d01c4de3fc0d656156d353df29e43c01df93dd67d1ecd6e6dc5df5ecc3b1273acb13c3202f98a79ea8051205d9bd2af9c04bda95892e0d6889e1fb33f8","ssdeep":"","tlshash":"1bf005b6b530b4982a759ab2a42b2071907dd023e74236dc4385b5202711d43fb01f84","size":496,"data":"","first_seen":"2026-07-27T00:29:31.656999Z","last_seen":"2026-07-28T07:04:56.472102Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"64d8c858156192a16a990983d35fb3f9","sha1":"1ae03179ebb040c510ecf6f785c0002f21932433","sha256":"bdfd55577f7056ab007e88fcfe9352e9805fc05f504131193cbe81c001162fd3","sha512":"e6c8b62010e24ed3c7a59b3d92aa3165bc2270274b755e8ecee06a238fe29682b08510402a6e8b7b3f85027d7e403447ed4694ec2bc43c136d5c0f1cb1b3f23a","ssdeep":"","tlshash":"cd60000c3f003000000000030000cc30c30cc3c0c0f000f3c003000000000000003f0c","size":15,"data":"","first_seen":"2024-07-23T18:45:21Z","last_seen":"2026-07-30T06:23:09.390681Z","times_seen":172263,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b14f6fa105f068088709b139cff5c8b7","sha1":"f9cdf0110749c12bace5fd2ee6a8f1d1034c41a2","sha256":"b1e722516abfd4cdaba507d31af2d6a1a258ad759b5b29e25851e5955b769570","sha512":"83feb0c702e136b028cfdd527fe8063cf87874eae31bd6e97d60b0957baabb7ed3e5845b8a94632ab6530b09653c0eb7d127a22aa7eae1651d1e24401be469b5","ssdeep":"","tlshash":"7f70008cac88a08000333228000f0e080222008000200e02002020822c3300e000282a","size":22,"data":"","first_seen":"2026-07-27T00:29:31.696735Z","last_seen":"2026-07-28T07:04:56.515579Z","times_seen":320,"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-30T06:07:43.52664Z","times_seen":1505,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8673dabfddfa6347e822f593dfa1d916","sha1":"24feb390ef779b4c8d9596eceb50bba1d0ae03fa","sha256":"7418d3cb701381f05be89fb705d663a4455a26035c0dfd80576a4f716390454f","sha512":"236700f570a1ce92777c3f878d6fd174732a5786e1004dc4d95fea38b679de84d97a3de2f4ad7915815087aee4682b47e471113e9e6fedf69a85003e6c728e1e","ssdeep":"","tlshash":"c7100000000000000000000300000000000000000000000000000000c0000000000000","size":2,"data":"","first_seen":"2023-03-26T07:09:39Z","last_seen":"2026-07-28T07:04:56.429354Z","times_seen":2856,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7694f4a66316e53c8cdd9d9954bd611d","sha1":"22ea1c649c82946aa6e479e1ffd321e4a318b1b0","sha256":"8e35c2cd3bf6641bdb0e2050b76932cbb2e6034a0ddacc1d9bea82a6ba57f7cf","sha512":"2e96772232487fb3a058d58f2c310023e07e4017c94d56cc5fae4b54b44605f42a75b0b1f358991f8c6cbe9b68b64e5b2a09d0ad23fcac07ee9a9198a745e1d5","ssdeep":"","tlshash":"c700000000000000c00030300000000000000000000000000000000300000000000000","size":1,"data":"","first_seen":"2023-03-07T01:20:09Z","last_seen":"2026-07-29T21:06:22.501412Z","times_seen":56718,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"71664ae133d81090010036edfbcf2372","sha1":"8d777c5c06d8002edf04aca4921a43b993c3c83a","sha256":"de53398fc90b7401cda8a9146bba8ce842fe1df8c30153ebd66a3f0376a6cd79","sha512":"6491fea54a714ed5d363c59ef2c8def2d60d7a34da1f03a33ca310bb4960e8a8da00bbf1341673931071e888636536beee11d09b0826d4d82bb10411c337ca0d","ssdeep":"","tlshash":"2c119436280cd03fd0de28d2879ad25563f5e4c7b8c8f99a321320d8ca75f48619ea81","size":1018,"data":"","first_seen":"2026-07-27T00:29:31.596387Z","last_seen":"2026-07-28T07:04:56.439802Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"98da94d83c6805242132c6165e921d97","sha1":"42637bb5411c7fc2679eb91a5f80c271d861e4bc","sha256":"2f4d956ebfbfba38c40a0676b6d2d6907d6f40fd04f8b2b8b189532ad525cc9d","sha512":"79ea84f90af64049f583ac430f0af0487c9464666d9d1cb46ca87457888f59dc4f3e46fd3a1567f735ce82f4e88c128422be7f5456e2d5be2c77d1b96473b50e","ssdeep":"","tlshash":"48d022fbbe8984ca22083cac8c27310c636d491afdd2ba20c551e1e008ed088884e6ac","size":210,"data":"","first_seen":"2026-07-27T00:29:31.700534Z","last_seen":"2026-07-28T07:04:56.431747Z","times_seen":336,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3506f2c3f0a0c7f4d1c8512a5f182e3e","sha1":"bb601a6a7e14bb74daf05b89b61c2d05faa5864f","sha256":"3ba80ad3d800b4c9bee2ae0bbd8e82eb68bea7dd052701316f4b9f2844b8f5d4","sha512":"d1a8350bc3f975c5b65f170c7766e3ff82767087bada7b46a90f6523334cac06f33fc685ac960c3bf8e48e63b19200c7798cd4788fe56028d94c5e9ae9324ffd","ssdeep":"","tlshash":"39b092d9e2d261b28049898e497aa219e1f23dc06a00247ec2a2a85aeaa071f45bd411","size":118,"data":"","first_seen":"2026-07-27T00:29:31.723604Z","last_seen":"2026-07-28T07:04:56.461761Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b2f5ff47436671b6e533d8dc3614845d","sha1":"54fd1711209fb1c0781092374132c66e79e2241b","sha256":"cd0aa9856147b6c5b4ff2b7dfee5da20aa38253099ef1b4a64aced233c9afe29","sha512":"19f142b018f307bfdf1c7009d15a29417c96d8678d2982eebce4961b2e67eeb118a8ebb1d75b70087c3e65bc793450e3fe4a10002befa2d038e5aed4796937f2","ssdeep":"","tlshash":"c700000000000000c00000300000000000000000000000000c0000000000c000000003","size":1,"data":"","first_seen":"2023-03-07T01:15:11Z","last_seen":"2026-07-29T23:00:47.241538Z","times_seen":53169,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"61a6f2652a0b6db05139abddb9b96ab7","sha1":"05548eab56f32db3c8c42fd2487a3f3b3ccf0ee1","sha256":"cc6e0d6af3dc4f620458aa79c4f4c0631ebc1bd55a148f5e9a06ea8874885831","sha512":"f2f89b1252cfe849de0cb4e8e8b7ee29cf99c563c5113ede3c45d470d5d14c45e0a3e30e560a79d14bfd4c46943c24a8444a1e81e4a0e93addf71ebdeaccaef4","ssdeep":"","tlshash":"4780047cdd4c5c350f157415001740441177700d50150005170004c44f311c5140fddc","size":38,"data":"","first_seen":"2023-03-11T13:53:37Z","last_seen":"2026-07-30T06:23:10.728754Z","times_seen":267002,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b1daa0f419bad4fee11d1830f76c241a","sha1":"170dafa47acaf253b64d8bc3016a52a381a3f2f2","sha256":"ea59b0d1b997b2f6c07024a837533b6e934f64f3807eccbbc0a1f7f1b2eeaa78","sha512":"340eb61e023dbf69b13e971b5104b1e067474897e4465aeec2a0c8eb6018bafc2b3c7effde0697c7007866bf235865ffbad6af3e8037516847e6491da2da90dd","ssdeep":"","tlshash":"a5d05e37d03f9368676672983cf7869c33e0a2742862a8ccc2933c14d9950c7e08a9dd","size":256,"data":"","first_seen":"2026-07-27T00:29:31.712509Z","last_seen":"2026-07-28T07:04:56.476577Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bae3f90cb000352645e35fad60da411c","sha1":"00023f94c170125b979cb1914925d06ab1abfbce","sha256":"1e3606d95ce27d593157594820335681a9380f51a96147303cd8000e60a95e12","sha512":"d83d07979674822b4c966ddcb3bd4feb84830834e1f9fb255774ae237056cc357599e3aab9c6f47242aada2148a65c9ea11c859b1e8f550004535cc363fa02db","ssdeep":"","tlshash":"03800000203008388088000f3032cb8afaa0a22ae2322800c8a88c2cb0e8f80ba28838","size":35,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-07-30T06:29:20.357605Z","times_seen":183416,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"05b8c74cbd96fbf2de4c1a352702fbf4","sha1":"320ad267d8d969f285eda5c184f5455bd29c8c95","sha256":"44ff7b02c80d38b26dd6aa31d9470aed81b32e10331a3c994fb1a9945fd847ba","sha512":"1ab6ceacde9b312b4f32d7c9f2d54448e82264c30807e4db86ec8e295791c1fb9aafb38985b2054e589c0a0a2830f1a389312fb2912dc2f9c949231967e03545","ssdeep":"","tlshash":"f6400000000000000030000003033300000000000000000000000000300000300000c0","size":6,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-07-30T06:05:29.855588Z","times_seen":156789,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8277e0910d750195b448797616e091ad","sha1":"3c363836cf4e16666669a25da280a1865c2d2874","sha256":"18ac3e7343f016890c510e93f935261169d9e3f565436429830faf0934f4f8e4","sha512":"48fb10b15f3d44a09dc82d02b06581e0c0c69478c9fd2cf8f9093659019a1687baecdbb38c9e72b12169dc4148690f87467f9154f5931c5df665c6496cbfd5f5","ssdeep":"","tlshash":"c700000000000000c00000300000000000000000000000000000000000000000030000","size":1,"data":"","first_seen":"2023-03-07T01:15:11Z","last_seen":"2026-07-30T04:33:25.589971Z","times_seen":57851,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8d1b507ffa76e1fa8fa03978c66aec23","sha1":"a4c81e0e2494de576355f91584e8c90b2a4686ba","sha256":"9bde46e1b993b06bd4561dfac0ed227b202736014bf06490738b931a9d0be16b","sha512":"45d793e4ed010d40e0d2e27641f87fd41a3b033f978043f921db065cf8a13e5d362e3fd9e9892cdae33e8fd45109bc705d88d0dc38b334dc7d44067ec91a6ba2","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000c00003000000000000300000","size":2,"data":"","first_seen":"2023-03-08T10:00:13Z","last_seen":"2026-07-28T07:04:56.497994Z","times_seen":7482,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8ce4b16b22b58894aa86c421e8759df3","sha1":"13fbd79c3d390e5d6585a21e11ff5ec1970cff0c","sha256":"8254c329a92850f6d539dd376f4816ee2764517da5e0235514af433164480d7a","sha512":"2af8a9104b3f64ed640d8c7e298d2d480f03a3610cbc2b33474321ec59024a48592ea8545e41e09d5d1108759df48ede0054f225df39d4f0f312450e0aa9dd25","ssdeep":"","tlshash":"c700000000000000c000003000000000000000000000000000000000c0000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-07-30T06:23:10.81944Z","times_seen":52191,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f0e9786cc26fbeacec181934a90f5cb6","sha1":"984c0dcbf07ca50a8b5650ef3162fb20f1dd1e83","sha256":"3882c3fec1162244ce29938529c74d5bfc8a6a308c2f75e9db60fa781c43c4ca","sha512":"2e46eca652a486e7f7bcbfdcd8db6a2023944e2a52f9cbd5930ff5b832f7f30a0b388dec9d365a931286d4d665eec10a397f88109ad48035120f91876e319046","ssdeep":"","tlshash":"c710000000000000000000000000000000030000000000000000000000000c000c0000","size":2,"data":"","first_seen":"2023-03-07T23:41:36Z","last_seen":"2026-07-28T07:04:56.463464Z","times_seen":13330,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"fc5db2d55e37e6b19c011096290a334a","sha1":"c05770422f83d9a201a14f438e8a3cc4f40c58ef","sha256":"42d39b50a4ebc83684b6403ab722a3ba6746739266a8e7bbd5291f32f35fb286","sha512":"3c5933ca355dceee4f798bbf06754d2421a4d50cf93c19e90b5f7a3b09f0f90aeebd81c635482d6bc72482b9efcda640ea15dbfeb3e2943783f6630344c7b542","ssdeep":"","tlshash":"94d02b84c81d11177c2b6ac79127dc1f209570031d29eb01923fa4c934e4151c18a09c","size":262,"data":"","first_seen":"2026-07-27T00:29:31.591149Z","last_seen":"2026-07-28T07:04:56.493695Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c942bf5ed0077692b061a2841e8b8cb4","sha1":"a85e0c0acc865b82b611bd50c830e1d3356f597f","sha256":"1acedf979cdfd53874c7a2bb299396dc38e51507d794fe9e03e7859afddb64c9","sha512":"8cc17c8a1d7734d111ee272597b349b7e235837534bb5f289d8102e1108aee727f9668eafda41794232178a7f177ff01d6652a935185c52885d4393e65f022c0","ssdeep":"","tlshash":"948004047d541440105114500047044f011315d431530434151c01f55c311553101d7c","size":34,"data":"","first_seen":"2026-07-27T00:29:31.605306Z","last_seen":"2026-07-28T07:04:56.408068Z","times_seen":317,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bb2e810ca9cabce02f0227a0a785b436","sha1":"f62801b1fbefe21f6b96033f890b17e8ff642771","sha256":"d9b0cc52f942fbeb4deca6bb2b33f074b177015803f39e625fa1d0aa9fe1adde","sha512":"4125c78e75330e3c17dfc67a055f9698b4ffa1c4c29351f18443d71935f0a4a107c821302098e15d40c800f413cd1db7f14da781b681c95906c2c2deb4137837","ssdeep":"","tlshash":"2cc02b4606010391437f29805d0b133bc1c200073c01284c89f00481e09cf400896c12","size":131,"data":"","first_seen":"2026-07-27T00:29:31.616706Z","last_seen":"2026-07-28T07:04:56.45711Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c481888d991e6cfadc55f4153a06c191","sha1":"aa8f7ef5122c65dbbf0b3457f635ea97d9bec091","sha256":"08545c51a27a94b6858fece52b7f8601dc21627a48133f6f783336f862b51571","sha512":"04523ad7fcab32c3c05e262f3c84bca7394483f0f1fbc29c7bffd9f8fda36bb91a00009db85f64e6c4fc704bac3e8e26ad7ee297523377c383f8908377102c67","ssdeep":"","tlshash":"887000883c082002003a3220000bca0c082280c20308828c000000820c3200a000aa88","size":22,"data":"","first_seen":"2026-07-27T00:29:31.747939Z","last_seen":"2026-07-28T07:04:56.430998Z","times_seen":319,"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.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"779ffe8039ad87e2a1aa1c111061fae4","sha1":"7765f6360937f90e51dc4974d13c20887adca712","sha256":"9e5e6d330bae7d5d640cf35fbbd6dbac19e4eec6c5bdea7b99a664523269f90f","sha512":"17cd5c8a938106fbe74d4ea623e67c3669683343c08f866700fd6284152c7397141c9ca02451bf6a32808003c4b4bf3fcce72cbbe6c53a851a1da6d254ea3619","ssdeep":"6144:OZaBJxrsw56sgMoiImct8de1F6Suapko3iM80AvhapoXgvWbq/+:FFpgMoircDkMiM80CapoXgvWbq/+","tlshash":"30944cd97762707392a2f5a5902f0103b17a68a6f40c8c7cf798ddd16eb494942bbf38","size":442344,"data":"","first_seen":"2026-07-24T13:29:06.322297Z","last_seen":"2026-07-27T16:56:48.620174Z","times_seen":1326,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"708197c3f2abe60e5b0e1b9d77dbf54a","sha1":"78bddbf3689f7301db53d22c684bf404ab3528a1","sha256":"ec14f274daddc5197d69049df42efe6d2ae021f65a7328f0bdc02d6bdac996ff","sha512":"f625f839f01f50aa60bca470ca2ece77be6b4c2ef572866adb6a80a7a3c6c3e262f94993e1489e9c60c4ec21d93812fa7ade62c6ffafafe984946067bd859b0d","ssdeep":"","tlshash":"1b7000882e88208880023aa0000fca0c0022808820022e02808082822e32a0ac20282c","size":25,"data":"","first_seen":"2026-07-27T00:29:31.628814Z","last_seen":"2026-07-28T07:04:56.529913Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c2284743fe8a6178f117d584e3091d6e","sha1":"93d24c83d4a695e2a463bf66ea18a3e2147e9148","sha256":"8cf878073f71bf93dd67f56aab913b4a584f5ea15c56ea7030f96b9f26f23a4b","sha512":"7aa1cd340f7dc20e2259c9ef76fc6dd184133548d47ee9cf1c300e8ded20ae3e298748b874bb735dc639bb025be759096e3edfedd1c0396a094748bfe2734cf1","ssdeep":"","tlshash":"28c02bcf30c6da74817d001203179dc48107349f114b808743d040e400174908c1dcd7","size":138,"data":"","first_seen":"2026-02-18T11:53:38.7823Z","last_seen":"2026-07-30T06:29:20.494693Z","times_seen":78359,"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/ck=ytembeds.base.NxniuuZETZw.L.F4.O/am=AAAAgA/d=1/exm=base,root/excm=base,root/ed=1/br=1/rs=AGKMywHU6qHNitns5XqYEK-2yyUEaGOVkQ/m=r78Drb","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"6f2dc696d3e2c5e8b0536728ac5a3aea","sha1":"8da6a7915f0b3ff607db13862fc417574d8d4999","sha256":"4036991c2199a96276eabd866d75631508768ad958639f2ef3d985061bddef47","sha512":"481bcb7979552bb2b61e9faaf2cc6abdeeb36c7e5e4e0a483ba1e93c62bea4c29bd94f525ec183b9a9bb4518f02e3e9748be080d771f801fa3cc7d4e73a09116","ssdeep":"12288:Rhrh0EencTyXGld16WDVcIm4zDSG8UvCeoBJjlXc7WPz6/wWXqkZTNvl6hkTeubf:R41jofemc+tD70LCSn4AqVnYU1YtsxDT","tlshash":"a2159ff0b25271b4d147b926fab7c003b57e4903e2081879f0a7ae9c55fca942e77729","size":942843,"data":"","first_seen":"2026-07-24T13:38:07.888738Z","last_seen":"2026-07-27T16:56:48.650117Z","times_seen":570,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"cec2466c512046247fcee7b41d4febff","sha1":"f435166429f9f6b17d5e59bfeff477d80f41092f","sha256":"2c91ca6f50bc77f02def816379429b411ee5dda90eafa7e8c149a725032810a5","sha512":"6db7c130dc0c2403960e22dd6e2918ca808a4e7dab3044d5d4cce10fa832a1a5e1f38396e11c19944f02d7420f9c1f05a1320a558a071be858679e347655b68a","ssdeep":"","tlshash":"3bd02bf74c79013f021f1bd5b6d7e1ed61da32ea25564b0dae74d1d4019449ce1c4e47","size":285,"data":"","first_seen":"2026-07-27T00:29:31.745602Z","last_seen":"2026-07-28T07:04:56.481731Z","times_seen":333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/94708.73d2bca37207c67a41f4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"eb8c592becd98b3361efe0b94719d5c6","sha1":"a0d1ee8521cfba7aa407ac50937aedd5f39bf878","sha256":"647fb8708ead9f5ba58a75d3b5e6d45f3df1f26a67f068d19a46752de40e327d","sha512":"27e850e1b55df1bfb523a33007db88c5bf3fca11c34b9f448fad508275031d48062410c7e49cd891d38f4058b2dad657828a8ce9f5a047b24a8804c477a90feb","ssdeep":"768:Qy2uEBDBP0oAifg+OMQjn3FMjhYVwPn9/meP+Tjwqcq8xGQKpb5dg+xU7wbwpEvK:k950TT3WOOP9AsqcK555x/dMDjcXRdH6","tlshash":"f4f2f917f1a7b46693db809ae4724213a33c18013d05486dbabc9ddd2a3f942b663f7d","size":35736,"data":"","first_seen":"2026-07-23T13:38:20.417189Z","last_seen":"2026-07-28T07:05:00.7004Z","times_seen":1555,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a931635074a5017da74948b67e16c76f","sha1":"a6799582ad16a7c1ab8221c166268130df6691d2","sha256":"1fb437ac78114eda813a7c4d5771b6d3aa34908a5ca3b743d5eb5c79088cf82c","sha512":"7c96bb515bdba9ad60854b433d24e77982a321dd7ca71599fd8f79acee580802f56829a5dbb7f64932a51ad50d18a9438251a6ad8127ad2b2e332811033d2c7b","ssdeep":"","tlshash":"a5d023cc3941f262d06274b9041704dfd173384a1e1cdf4184154875667c5d9407f4c4","size":206,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-07-30T06:22:09.380389Z","times_seen":207995,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"170fb7cb50cd42a959632f2f237eff01","sha1":"e56f7653bfb3e6539d1eed96f14084a0b6532a1d","sha256":"a311aefee43bb33374c671d154cb766d50337de09461089392fed54821b0587d","sha512":"cf011634cf35733360219dce59473d9d0309d445bed06724456cfc57c94cf6dd0bf511a79c458dfeb04e6b6ec3ac0ca5210ede49cb8f2e9088a6610e3d2cef42","ssdeep":"","tlshash":"1ac080ea59545236c0664c7347874d0ce19f915304b76fcdc47450483374b55d005a57","size":173,"data":"","first_seen":"2026-07-27T00:29:31.675624Z","last_seen":"2026-07-28T07:04:56.460875Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c4ca4238a0b923820dcc509a6f75849b","sha1":"356a192b7913b04c54574d18c28d46e6395428ab","sha256":"6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b","sha512":"4dff4ea340f0a823f15d3f4f01ab62eae0e5da579ccb851f8db9dfe84c58b2b37b89903a740e1ee172da793a6e79d560e5f7f9bd058a12a280433ed6fa46510a","ssdeep":"","tlshash":"c70000000c000000c00000300000000000000000000000000000000000000000000030","size":1,"data":"","first_seen":"2023-03-07T01:10:09Z","last_seen":"2026-07-30T06:29:20.361103Z","times_seen":134932,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0de3ba01184b62b2d8e5b01ca4842f76","sha1":"dd2d76d959659ab5793eccc79cd2dec6f73433e6","sha256":"bdc33b950db6906c874faf1e5693acd3a5be7c1d5b32acf31c962026f8bad6dc","sha512":"944a8bc67c389c73a3db4b5a2c5ca593eadf35afc250aec42cf3f96c5744c8d70fd98d00e24ec8d5bf098303c5fb833df05742437f64bde0e866a9ab3c3dbf5f","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000000000030000","size":2,"data":"","first_seen":"2023-03-08T14:47:46Z","last_seen":"2026-07-30T05:53:57.440291Z","times_seen":2668,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f184e393cd49024013cf566cf53ad3f5","sha1":"d64819bb1fe5a51f54634938af92402fc04b58f9","sha256":"a626f8bd4c773160d25e2d6eaf231c27a5d50e76dc41ff97e349ef3fbe7e9e62","sha512":"1c22a36fe952552f680c3f2ea5dffe7c11cccaad12b46657f1050da4d6d13a76156fe9f72dccf366dc2a8da8f469fb2fc718c7a070eac0864b4e1f0ab5e33d10","ssdeep":"","tlshash":"68e026a01c023c0e214b9abaf03b231ce550957ad7894f59ec02cd297d37d43badb680","size":355,"data":"","first_seen":"2026-07-27T00:29:31.68577Z","last_seen":"2026-07-28T07:04:56.440567Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e76e9157a8702162ebe0dfb9e7b04e72","sha1":"52175cf5a0cd15990245ff6c8ee9de57eefb923a","sha256":"ca524d904769be71810fcfe1cb0b4ddc0ae154db3feb77055689cf960d9b8956","sha512":"9628debbac18d7b9d4055bb41d963d4337fa15aea8057e438b6aed141995dc94c01250e0ddd4ec0bd0b5efd8a9a96ae05a15bf75e350336830b752ba9b91568e","ssdeep":"","tlshash":"91c08ce9b2a25864c3e0a82b21324200d8aa1d489e0040b9c102f448fd90349da6df81","size":148,"data":"","first_seen":"2026-07-27T00:29:31.639041Z","last_seen":"2026-07-28T07:04:56.439Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9d0137bffa0f20d5e8e9f54f2c84cf0a","sha1":"39edf6d919f82b9692a2edfecc78427a82567c42","sha256":"269d4d56785ffc82f3ed05d8ee3b84fc18d7474663ddd06c6fd285165190bb19","sha512":"0b8b09f13f8fbeb3546c08a3501f4060ba8e5f762722ffb1a53be6d0e297abaf9719d48d50cac29940e403702c66627187396b8961aee26586ac934568af2ea9","ssdeep":"","tlshash":"db50000000300000c30000000c30f00003000030c00000000300c0cc0c000300000000","size":10,"data":"","first_seen":"2023-03-07T01:02:15Z","last_seen":"2026-07-30T06:07:43.592821Z","times_seen":184862,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c987d68cc10a227f055b84626a48a0e9","sha1":"2fdabf2d840a90c89c520a78254ab9d49a11b334","sha256":"210c163506a8612cc88bd448b4cf01d7646fa80390ad547f30383375e3264c69","sha512":"1ba28dd36ddcc1461b99b2307ee47bd0bcb5564cda9907a8bd170c86689d151b0ce435436d29fd24d0c473657b2576037e1c058afdfcd2fbcfaca1cba26bb6f1","ssdeep":"","tlshash":"c7100000000000000000000300000003000000300000000000000000c0000000000030","size":2,"data":"","first_seen":"2023-04-01T10:43:24Z","last_seen":"2026-07-28T07:04:56.478272Z","times_seen":1941,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/shared-kb1yqHaA.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"introduction_type":"scriptElement","is_inline":false,"md5":"4a99d6fd0e84ed566d578d0ed5dea128","sha1":"c729468068793db7ca783d243b2ec065b6e2f202","sha256":"99501ff83cea2d37fb29f4ff7e0bfc1a93655e56db91bce74171fe29f0821884","sha512":"fcab2b13f37fe49c7a500be1285445ec1dfb120ed4f6d909925ea5616ee9f62d999fe83c1f8210dcc1742528ee3469e5671b34191317836ab4ed3b020ade8608","ssdeep":"6144:mLjnOEIL18ad2jJKaQF+tRkYcuBa+y+mFJW:iOEIZRd29Uqj4r+mF4","tlshash":"b3443ad53294b03543db51e6906f1106b33e5c58580d812cf269ede638baec8a2f7fb8","size":272133,"data":"","first_seen":"2026-07-27T07:28:16.16312Z","last_seen":"2026-07-29T06:17:50.104199Z","times_seen":1066,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c64a5dae48f04e16deab001d4b9dbd80","sha1":"a1382f8f61bcba9266e29a3fce9ccd7c9b961459","sha256":"49e72f36eb565cffdbcc8f08e9d29d128067c85592da711cfb157f62bf27a669","sha512":"31851165dd1c3a96b1dcae230b835304eb94a9dca4538821fd37c042e1ea2e84e3290ebd4013a05ca01db43c4ce2b843e7c3d7dc309a8ede31a7714a78a884f3","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000030000000c00000000","size":2,"data":"","first_seen":"2023-03-08T09:42:33Z","last_seen":"2026-07-28T07:04:56.539675Z","times_seen":2078,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5d6bee325faac2b32bcb0e2e91d28f80","sha1":"6951adeb52891128e58c508122c2fdd5ad73f6b9","sha256":"deaced38fb4d3946d8411a171331199c7c969805c9c693a317b0bdf65be9808c","sha512":"a5a1b8023ec5550cfb6dea5cf1b51a557281061d6e24883f3b53c230b3bab0ceac32f2d965009e9db56a0d430e69d1b0390d9c76427a673a7c90310b5a77db7e","ssdeep":"","tlshash":"04c02b584ccd40cf98065060a403410410ce745b90a40842c9ccce690720b702078ccf","size":133,"data":"","first_seen":"2026-07-27T00:29:31.574143Z","last_seen":"2026-07-28T07:04:56.524228Z","times_seen":320,"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.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"ad17d7aaa5500fe1d163e297a0cb3628","sha1":"4607dffbd44e617ef494ece0d8770698d1541cad","sha256":"e8273aae46fb97f1786246772222f93463401dfcf2a0956928723ab6de5ebba0","sha512":"f787cdda2c4d3a5d970765c62929e3fb088af57fe2ef62bd9f8debe4064d563a4ac72ed8bd8c0425e9dc22766b1915a5004593d1b8652033d43e6d45245c3b96","ssdeep":"24576:JddEUuuYnFCL4xFUnYNmJYqJNI5Dt/yV2hD4k494v5/CTEF6:fdhuuYnFCL4MVJBJO5DtKV2hd49p","tlshash":"10755c9977e2b86343b2e0e5685f0142f23f584854ccd12cb97df9e52da0d0a617afb8","size":1597230,"data":"","first_seen":"2026-07-22T15:37:53.90669Z","last_seen":"2026-07-27T15:49:32.120651Z","times_seen":1747,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8bcca505f2517c062fdd0ad40a31ac91","sha1":"57cdc3971cc4b708a1d8c95095e37798cae41fbc","sha256":"29e99dc983760fcb49bd0bcdbc2b0ba2dbf3ae44e39ec3610d6b75c037eedfb3","sha512":"ebaebd5882e96015b06bc08ad0584b8a4a475ff6c151038d75f1c972c8223d26288021b37e2137e2823d6f2bfb3307e7def2e9f6c4f70088f68fc2ca5a9665f2","ssdeep":"","tlshash":"25a01288490c440c451215c0f013b40401e0301b80c00c81819d9a8105e03a25013499","size":79,"data":"","first_seen":"2026-07-27T00:29:31.664474Z","last_seen":"2026-07-28T07:04:56.430176Z","times_seen":332,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8478d74bf7cea5b04e006a4d011174d3","sha1":"6617255ad32a43aa5bac9dbae30b6eca48b582a0","sha256":"a35339f2fdef852e886273a34f027a411bb24f3bfeec4df99371a4527957c214","sha512":"2b6307facb328fdb109a90fdc9780af9b23f98ac0c83d8932584f37cb88dfa48a690d49efb66c7284fee16fdc65023efdd7cc1adfa2805b82a51c1f60da40c5c","ssdeep":"","tlshash":"53700088ac88200000233228800f0e080222008008200a02802230828c3300e0022828","size":22,"data":"","first_seen":"2026-07-27T00:29:31.632649Z","last_seen":"2026-07-28T07:04:56.419012Z","times_seen":320,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/main-B-VHc1K4.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"introduction_type":"scriptElement","is_inline":false,"md5":"44df6240c839beea4111582dddf02793","sha1":"4b4dd2241d5ff95eba46fb8893058404630825cd","sha256":"a4019ee0c737ef5d214e80e5a87a5a6e839ff2cf4e286cdad9ed6ff397eba250","sha512":"2f30c45b38eeb4a1900f295893fa30362dce2af015cb8eac6b997795ff4b72db55a92d8d38bb7a8cc8f529c612906aa9d2a2a41539c6a67052ae569733ff7e02","ssdeep":"384:Xrgi5RFMkSjJOE/0BW2rvZZ795P6nrnBOVmPCRkXQbpaIF2x:XEizlSjJOEiWYPR5P6rnBOVmycQbpaIi","tlshash":"6c72d7742700783f712f489e15ade546b232c29dd693892d8b2fec0976c5cc0a8b37b9","size":16281,"data":"","first_seen":"2026-07-27T07:28:16.135673Z","last_seen":"2026-07-29T06:17:50.042235Z","times_seen":1081,"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-07-30T06:07:43.524757Z","times_seen":1966,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_conf","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":false,"md5":"b85f95308a308a60d4a756a73b9af98d","sha1":"6df9b5ba466f4313cd0090994e0532a009c62384","sha256":"353232b820948ebdfa0da5f6114ce94046e818841c3333730fc8420560cc40a6","sha512":"aca1772aaac4a3358247c03c4385b162652f7873a9e538ff5d456d07d67244b31d426597e4e3912fe12673b4b0775b2365684d7bcef6d4135c6f417861cf25a7","ssdeep":"1536:XWjLpxIZnZzYOwRUSfl26KKZkXtmqR6Y06ECi4wNWF0:XDD4U6KKZgtBgtCim0","tlshash":"a373b88cb6a5b4658363f4b5412f000fb23b58adf8484cadb288d8e1adf5949453bf7d","size":75428,"data":"","first_seen":"2026-07-27T13:01:51.242895Z","last_seen":"2026-07-27T13:54:26.952715Z","times_seen":74,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32387.47ace83c61a884341cd6.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"6ca36e244c390f41edaabac69e09f117","sha1":"8cfcf1d847ab9d43572b0f37ce475fca4bba1dbd","sha256":"fb8f00815532561e6403dfa828baaf51b380bfdf9f9c92754695c2cfe989db60","sha512":"9d1bd8f2293d36779a4c8cc18dd6650a7b35228b865226f0071eb07da8a810a5bc9aebd1cd29957a9fdd12cab5df40ab9fbbd7d68ac374e023c356b4178e4e3d","ssdeep":"1536:pvqY4wv/eXX5nEIk5JGA1SpxhDGougC6dZJUz3wA3ovSuHpL+:pyIscb61Uz3wGZML+","tlshash":"6bd3f7e83996f6526ab7126700ef1807733c1a1b280c4960a615fd8e75b842fb17bfdd","size":132552,"data":"","first_seen":"2026-05-05T10:36:04.869805Z","last_seen":"2026-07-30T06:08:06.351922Z","times_seen":2765,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-forex-cross-rates.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":"6ff9630986d3855842b586b326474dae","sha1":"69f83fc5e5e46f4ae60db6c9a2c7a0624f2b971d","sha256":"2eb114ab8c6de3b23037ae8feb4df46fc8d082acfe985a7086ad2744b49f2618","sha512":"7aea1b79bb1426698dcc337f9814dddffd5bcbddf75914dd5e73e107f13b378656aacca54997eb6dffbbeabb0c071c3b1a30d5e3d6eff3e117964eac45090f24","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6OrmaRMViZMEa:uD5Unb26nD6OrmaRkFEa","tlshash":"5b42d7aab660dcbd919945dba07a2321b61d3944b203eca4b5ace4c510fdccca531f7e","size":12720,"data":"","first_seen":"2026-07-16T22:06:47.112342Z","last_seen":"2026-07-30T06:08:06.388052Z","times_seen":913,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/16067.9d24889b2af3eb305dcf.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"1d9a347c6cdf907920b1993e9feddfba","sha1":"bcc6d02f92bd3eac53876be063d13f785ca1179e","sha256":"5190f0eab3ed44eb52290be2d754d52b090408e7d499dc46833fb4d0017b18f9","sha512":"cfbdb76074a6eb51120e6910bde5aaa8bfe2549f80c281d492e99346ec89e6c8532136fe25e9b6c6aecdbdd0ea78235327149fd53b5d063f7256027cb7b6ea4a","ssdeep":"384:gtprvDyVG3ll4CRbiobm+FXM3Op0dv5JbOrDkSN48WNknWPx:gLrveVKllPllxlM3mU0rDkSN48W+nWPx","tlshash":"4f52b669f0c267dc3ab196e0f8b710c1f16bac55f5016860eff04de229a5d4a3166fac","size":13271,"data":"","first_seen":"2026-07-23T13:38:20.449846Z","last_seen":"2026-07-28T04:59:54.460146Z","times_seen":306,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0d80d99d7f209071a284c9ab6d14accf","sha1":"c91e7389c28a7b35eeb114484808a20cddb8c20e","sha256":"0cb21d1de060008bab472c15c63e6f15828de601f85deff00d701d26c0f6819a","sha512":"59df0ea3f533182f0884e52768ba3b5b1dea918c81a430aed117aa60584df1bfc3569ba05dc9c95426cd97513318e2bc4272ec2771e3528117cefce002576740","ssdeep":"","tlshash":"0aa012b01c1dd3d81271c03118250410d6cc2205f8260d086219825248a81067f02014","size":83,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-07-30T06:23:10.775143Z","times_seen":339492,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"92a1f7984eba504b4eef2a9601b5ac73","sha1":"b8bd4fe4f67489638b0ef337ae8c5808bb4f16e3","sha256":"a89aad5cb9834d06e8ebfa5695b54d1ac6bdba2c3deb109738472e69db48b911","sha512":"5a10edf6f9304fb387fb7d6500bce13734bbd73dc7de0ff063c7c7dd9cc53881d92632d6b3fe38b11f2eed01010f1e7112fff046ebf8d37112ceab4abb045918","ssdeep":"","tlshash":"c710000300000000000000000000000000000000000000000000000000000000c00000","size":2,"data":"","first_seen":"2023-05-01T16:31:42Z","last_seen":"2026-07-28T08:03:08.975513Z","times_seen":593,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a5c244fde4e6f1ade71beed5c11edb59","sha1":"6bc634a7f8505a2ce340807aecfa1e50c2a578b3","sha256":"d561924e4295103128924509bbe71b3eed6625592d75ba3cc35c365189d6081d","sha512":"6ed66e7a246ab961cedd150553b6a9aa692988813dd4ee30c8b7d78d80bb8765a828112c6860d08eb382cae34e22bdd76ecda5ee1c9c7ee25a49b1d2639474f9","ssdeep":"","tlshash":"966000300c000330c0000c00000c0000003300000000003003000c0000300c0000000f","size":13,"data":"","first_seen":"2024-07-23T18:45:20Z","last_seen":"2026-07-30T06:23:09.354984Z","times_seen":174527,"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-07-30T06:07:43.530668Z","times_seen":1983,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"static.getbutton.io/widget-send-button/js/init.js","fqdn":"static.getbutton.io","domain":"getbutton.io","tld":"io"},"ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"bc3e8108dcd36c0d0c129a726dd8f47f","sha1":"db6320723c55ad91550a1ca87176058bed49d99c","sha256":"791450932271b1682c103cadb334baea8bf68100069c3c3eb317ed8a20098483","sha512":"821203cb21570cee7a989e40a417990e408949e7d239766562cfee62c0a0320c936bfbc8fcb2ecb35067ba1034eb7363d907edb72ccd878ee510640aa7a976b3","ssdeep":"6144:HSFryQhY3HpsS+U6qAcXha0oPKiqLVwoNbsR5LoQGnE2:xQhY3JsS+U6qASoPKiq+oNbsRFoQGnE2","tlshash":"53946de93290f0a653b352b700af240bf379641a785d8860a215ecdcf8b94ed513bf6d","size":442041,"data":"","first_seen":"2026-02-13T07:56:32.581356Z","last_seen":"2026-07-30T06:05:27.02052Z","times_seen":2759,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/js/owl.carousel.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"introduction_type":"scriptElement","is_inline":false,"md5":"dc33f40904c568db5a77a019b31f854e","sha1":"a227ef65815ce6bb7b99004cdc52c05987bda091","sha256":"ebb46809148b36344b14b249a0e89ff366936c5bf9eaa97439db3882527ccbf9","sha512":"08cc2fd07269dbccaae884991e0d9eb6b54763aadae25467e6ce6360ceb49cc093d83166ecb4718ad853644a4b7bb58dd1786de699a249d4741d3b8a7a4be304","ssdeep":"768:RCI7dmuMFAAJG4dlQKNORpnXGAtep2lcwJeL+wr2RSNc7UuHjRUQuFBt3N:AITMFC4dbMVRSNcgRDz","tlshash":"4b137346b3202d2a869b61a0663f160bb23a241ce414547d7d79e6de6d7dc8c213ffbc","size":44370,"data":"","first_seen":"2026-07-27T07:08:39.276882Z","last_seen":"2026-07-27T13:35:41.721892Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3607caa028d214a9c8a07c05ed41f53e","sha1":"5674daef708810bc46c529af25c171300ead8252","sha256":"4f956f8fea1bf812e046d3d7ef36a29700d6959fdaabae376f3a78110c934720","sha512":"67da101469be9175b0cc735dd8b8c2d15b1b5c8432380f850e68578d5631c5e0bc7c0792737dab961765f48ce482e8c5d1dceebb77b4e30058319ac89bc606a2","ssdeep":"","tlshash":"11f0d45f50cd5765957724c4420fde08413e24030cd5416f7c1af67058706839085d4c","size":471,"data":"","first_seen":"2026-07-27T00:29:31.640347Z","last_seen":"2026-07-28T07:04:56.543578Z","times_seen":319,"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-07-30T06:07:43.512018Z","times_seen":1870,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1bcb2103e54b2232fa4f021206aaac2b","sha1":"f4a82203a1cf8c1edab9196faf9ea4c80702945c","sha256":"6d4e2e52887ec428faa4fc30712686fb68783e56095063b47ba21383eda8a21d","sha512":"2e0db6eaaa8d239513ff121ae21c835c93ff4ae1909f817b58f89270d5d03020a47f84acac253ad0a78ee39bace86ddd6962a39845fc0653f0855ce4699a34b2","ssdeep":"","tlshash":"12b012887d3ccc85619518c8108ad00882422c0310020940e01fcd513770d86304fdad","size":92,"data":"","first_seen":"2026-07-27T00:29:31.615229Z","last_seen":"2026-07-28T07:04:56.529124Z","times_seen":334,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b1a82c958451a0a4f0f7373dad43ca67","sha1":"2b0ee5ac2e3ca5ab194a88e9e280819804a71de8","sha256":"a8d0a1117e28efe9d9bcd29833dd103ca8f1110f68e814dbff635c08c6d71907","sha512":"3073a8b7f01cf71397ea52e6994c76562a2dcba867522d35339c664bf90f04531083bcde25d5af3a390de0b91c249029b5b317f0f64c12ea4439120f1df8a62e","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-11T15:11:20Z","last_seen":"2026-07-28T07:04:56.414884Z","times_seen":12539,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51031.535f27b776f394c7e43a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"cd701b7197ef255d09501c8c91343508","sha1":"d84cab0e7c13c5801a0a2c6df4aba3f32e6b316d","sha256":"714cb61cc6924e6d1e8241ff191fc5aeb03baebbbaa81c15949838a09fb406f6","sha512":"ae8f1406dc1e5c9e8082d922e8a0d6257582733129c26617fefb99243013fa5f0bc9eb178dd69665786b8fb7fd0b7ccdd7ed719fe60676564b82598253efca75","ssdeep":"768:CcDTi4tT8YE9xSrNtzDcsIj/XWm9hIz4dp9VUZ+n5Vz2mpehIeVeLh9zoJZemINE:hryj/XWgGET5Vz2mp9emzoJZemINyKfS","tlshash":"7e131a35652af5f79ee941ea543754829bbc00523444042876bccdec278caf9f23aef9","size":43860,"data":"","first_seen":"2026-07-24T11:36:48.046407Z","last_seen":"2026-07-28T07:05:00.665702Z","times_seen":1638,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2c689baf336c49be53a9275c253d1a70","sha1":"dd68ef00c84c558efd3f770fea0b318bf2ab0b6a","sha256":"97bb6dfa3147dd08017cc33aa96112967d73d13ede8553ef11a72329ea09625c","sha512":"80fbe90ef940729ced075276b278eb21e7b836333c9e39caaf13ca7fe47e6dbbf00e4d15e77334813127329ccd22444c254b940a109f0fd3ef7b531036531346","ssdeep":"","tlshash":"27c02bf6b1b72404c390f01700324300d8a90c48c704407c8043a01dfd61309c97cf42","size":132,"data":"","first_seen":"2026-07-27T00:29:31.644173Z","last_seen":"2026-07-28T07:04:56.470348Z","times_seen":318,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3f0a7488ecc0857223d8b1b87dee08ff","sha1":"3992ac479cd292d55110ff5836e8abe096ba618a","sha256":"ef243629e0d198e608f2e084335bec20b458893fb5dfbbac50f1808445d251f5","sha512":"86c4039c06162306e3cfbe3fd0eacbb899d8bf7d70cf6cb9a9e8ecc2cf152d0862bd0e65dc3098d396f1b4f303fe6adf01cce456f07250bcfdc82292b6159b10","ssdeep":"","tlshash":"e9d02ea2202eb092887f5e821c2b802842a900030a203d32904c080850eae3ea0b4999","size":243,"data":"","first_seen":"2026-07-27T00:29:31.726132Z","last_seen":"2026-07-28T07:04:56.548013Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"de6dbd97c8dd3a754877fa143cd8e692","sha1":"3e85513884db6ba05f060700fb01a9d7ba26b569","sha256":"8f0b65c9522b9729a962b7920b32d2d389dcd3d319a68e4054dfdd6dc7e00f07","sha512":"b40574e5585be773614350a7d6031a6172853d27d9a33283339591f6a4d2630f1bf3bb891fbdb6c3b2971ced5b76598dc74f3e667bff46c028a224b2bc7c40af","ssdeep":"","tlshash":"3ac012aeb0e187954dc121dc0943569a5a587c052cc9044e5e827368b825447d06cf15","size":186,"data":"","first_seen":"2026-07-27T00:29:31.743215Z","last_seen":"2026-07-28T07:04:56.419788Z","times_seen":319,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d51b042d8ac9bab5d5186ec2c244edc5","sha1":"c486f3212f9ebff8aa36d34a2cf041e09d32b07d","sha256":"3fbe57b29f670d76e90fa6e7a66a5856ec458a9b3cd7792141ad1abcc8c48362","sha512":"6a918db5ee5b059e8c909596ba38d4da45c7a57cfe99aa19030434006273715dbdf6f0609e57937a9711cca78753f13d7392b1d18cec36c882e911d343efeced","ssdeep":"","tlshash":"e8c02b3c7016000cac83a221cf8f4c0a801ea0550d08890e1d41a8e87c83a902eb2c42","size":132,"data":"","first_seen":"2026-07-27T00:29:31.603991Z","last_seen":"2026-07-28T07:04:56.483456Z","times_seen":321,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"log","text":"\u003e longCodeInit","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":439085},{"level":"log","text":"\u003e try","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":439267},{"level":"log","text":"config loading..10","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":259826},{"level":"log","text":"validation...false","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":254413},{"level":"log","text":"config loading..500","filename":"https://static.getbutton.io/widget-send-button/js/init.js","line_number":2,"column_number":259826}]},"http":[{"url":{"schema":"https","addr":"walmartfundholdings.com/images/con-ico3.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.004Z","timestamp":1785159268004,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/con-ico3.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"b24-66136805-4c5a0471a336891b;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2852\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2852,"size_decoded":3177,"mime_type":"image/png","magic":"PNG image data, 63 x 57, 8-bit/color RGBA, non-interlaced","md5":"457cdabc26f2e83f819a28fccbd1c451","sha1":"972817da553886a19ea4c9f8f7248f26896097a6","sha256":"8a4f99f000c99dc5d0b08dc6ae1fe00629bd059fe17731d79f47268dde9edb0d","sha512":"5382a3959dee5b21871cb9b7cb8f2ebcadeddda43788f22ba98fb7162ef13fff45e9efc44e9aff320daacfc0943a65c555a0b6f85f40b1564724f30e19157d08","ssdeep":"","tlshash":"d3514c55f0472951b506cd4538f24629dd238084ddc0ebc49a8dcdea356e177447d3fb","first_seen":"2026-07-27T07:08:39.224772Z","last_seen":"2026-07-27T13:35:41.706834Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAD8AAAA5CAYAAACBBvPCAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MUE4RDExNzUxQjkzMTFFQ0JFMUM4RDBCRDVGOUFDM0YiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MUE4RDExNzYxQjkzMTFFQ0JFMUM4RDBCRDVGOUFDM0YiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxQThEMTE3MzFCOTMxMUVDQkUxQzhEMEJENUY5QUMzRiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxQThEMTE3NDFCOTMxMUVDQkUxQzhEMEJENUY5QUMzRiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkXeDaAAAAeYSURBVHja5FppbFVV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"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":36,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/8916.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.675Z","timestamp":1785159268675,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/8916.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1559\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 03:09:32 GMT\r\nlast-modified: Tue, 19 Oct 2021 05:36:37 GMT\r\netag: \"e906697de32eb7e1420f46bd4da7cd67\"\r\ncache-control: max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 37497\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: gnZWhAxkLqOiWDy67WEEE8726j-n2Za5Xvqjz6S-9gsJoScEjQw65Q==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":1559,"size_decoded":2068,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"e906697de32eb7e1420f46bd4da7cd67","sha1":"d0f7184d0ff38878e831c144adff337cc0491674","sha256":"ce49c1f0b7dc5863f73c4423b606298fd367fbe32ee3696739ba1b72d807bb4d","sha512":"df582a3537249deb5266554b8c5f88458655fae63630f007436b43cb075a4a22663277dc3873758aeae50e4fc2abaf24b5ea224c54dcf8987195a043cbdab668","ssdeep":"","tlshash":"a7310ae99993516aaff8a51387383c787c4a20e0371c1a8442a3fe8f2b0d520188ad57","first_seen":"2023-06-06T18:28:25Z","last_seen":"2026-07-29T06:14:00.403099Z","times_seen":1451,"resource_available":false,"data":"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"}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3905.682e89ef2dc4c70423c6.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.268Z","timestamp":1785159269268,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3905.682e89ef2dc4c70423c6.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b71-23c4\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:21 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:40\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f771e3b6ec1bf896435a20bbf5a21d8c\r\ncdn-cache: HIT\r\ncontent-encoding: br\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"]}],"data":{"size":9156,"size_decoded":2693,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9156), with no line terminators","md5":"585b0debea11681772c2af93fac32f6f","sha1":"239ef62778933c4ffbb2003ad1da3ab7f1c412e6","sha256":"7a6f9ce2286878bf4b28af0ff0922e443fe7fd6f6289968222d35cacb1fd8f85","sha512":"f37cf7f51a2fb42cf0f1822ddea62c13673cc6ac0dd4e9ec40de3f0387a5fc680d4eeec0d9d2b81cbc71136e743b6e8692b20d29e16cd72a6c83c741eea6239e","ssdeep":"192:aB56ZYifpWjOHpRSvoAyGGoCARk3NPmHHZ+DG4x8:ayXsh","tlshash":"6612cf5bf5e30baa2f63e1255a2d7b48516773062887a5f5ee42f3e045caec216036cc","first_seen":"2026-03-24T10:38:42.78469Z","last_seen":"2026-07-30T06:08:06.321389Z","times_seen":6908,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtd01EZjojMDAwMDstLV8xLXdNRGY6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tXzItd01EZjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8zLXdNRGY6IzAwMDB9W2RhdGEtdGhlbWU9ZGFya117LS1fMC13TURmOiMwMDAwOy0tXzEtd01EZjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1fMi13TURmOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tXzMtd01EZjojMDAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elh7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxM3B4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjQwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHg7Y29sb3I6dmFyKC0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dCk7ZGlzcGxheTppbmxpbmUtZmxleDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtLWhpZGRlbi1FSkJEOTZ6WHtvcGFjaXR5OjB9LmNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYe21hcmdpbjo0cHggMH0uY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtLWZhcnRoZXItRUpCRDk2elh7bWFyZ2luOjhweCAwfS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elh7bWFyZ2luOjAgNHB4fS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtZmFydGhlci1FSkJEOTZ6WHttYXJnaW46MCA4cHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvd30uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zLUVKQkQ5NnpYLC5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXItRUpCRDk2elh7Ym9yZGVyLWVuZC1lbmQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoycHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1lbmQ6MXB4fS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtib3JkZXItZW5kLWVuZC1yYWRpdXM6MnB4O2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMtRUpCRDk2elgsLmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4taW5saW5lLXN0YXJ0OjFweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elh7cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXIsLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItbGVmdDo2cHggc29saWQ7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tXzMtd01EZik7Ym9yZGVyLXJpZ2h0OjZweCBzb2xpZDtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tXzMtd01EZik7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTZweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6NHB4O2JvdHRvbToxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXRvcC13aWR0aDo0cHg7dG9wOjEwMCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDphZnRlcntib3JkZXItYm90dG9tOjZweCBzb2xpZDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLV8zLXdNRGYpO2JvcmRlci10b3A6NnB4IHNvbGlkO2JvcmRlci10b3AtY29sb3I6dmFyKC0tXzMtd01EZik7bWFyZ2luLXRvcDotNnB4O3RvcDo1MCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXJpZ2h0LXdpZHRoOjRweDtyaWdodDoxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWxlZnQtd2lkdGg6NHB4O2xlZnQ6MTAwJX0uY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjMxMHB4O3BhZGRpbmc6M3B4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtvdmVyZmxvdzpoaWRkZW47dGV4dC1hbGlnbjpzdGFydH0uY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5LUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6NDIwcHg7cGFkZGluZzowfS5jb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZS1FSkJEOTZ6WHttYXgtd2lkdGg6NjQwcHh9LmNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elh7bWF4LXdpZHRoOjIwMHB4fS5jb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZy1FSkJEOTZ6WHtwYWRkaW5nOjB9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleDoxIDAgYXV0bztqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjEycHg7bWFyZ2luOjNweCAwO3BhZGRpbmctaW5saW5lLWVuZDo4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stLWRpdmlkZXItRUpCRDk2elg6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7Y29udGVudDoiIjtoZWlnaHQ6MTAwJTttYXJnaW4taW5saW5lLWVuZDo4cHg7d2lkdGg6MXB4fS5jb21tb24tdG9vbHRpcF9faG90a2V5LXRleHQtRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luOjNweCA4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uLUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtoZWlnaHQ6MThweDtwYWRkaW5nOjFweCA2cHg7d2lkdGg6YXV0bzstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjEycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMH0uY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WHtoZWlnaHQ6MTVweDtsaW5lLWhlaWdodDoxNHB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEzcHh9LmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19idXR0b24tRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX19LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRle2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvcmRlci1yYWRpdXM6MH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItaW5saW5lLWVuZDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1lbmQtY29sb3I6dmFyKC0tXzAtd01EZik7Ym9yZGVyLWlubGluZS1zdGFydDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1zdGFydC1jb2xvcjp2YXIoLS1fMC13TURmKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YmVmb3Jle2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmUsLmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YmVmb3Jle2JvcmRlci1pbmxpbmUtZW5kOjdweCBzb2xpZDtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItaW5saW5lLXN0YXJ0OjdweCBzb2xpZDtib3JkZXItaW5saW5lLXN0YXJ0LWNvbG9yOnZhcigtLV8wLXdNRGYpO2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWlubGluZS1zdGFydDotN3B4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItYm90dG9tLXdpZHRoOjZweDt0b3A6LTZweH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLXRvcC13aWR0aDo2cHg7Ym90dG9tOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YmVmb3JlLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWJvdHRvbTo3cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjdweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpO21hcmdpbi10b3A6LTdweDt0b3A6NTAlfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWlubGluZS1lbmQtd2lkdGg6NnB4O2luc2V0LWlubGluZS1zdGFydDotNnB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOjZweDtpbnNldC1pbmxpbmUtZW5kOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvd3tib3gtc2hhZG93OjAgMXB4IDNweCAwICMyYTJjMzk0YTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtcm91bmQtc2hhZG93IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWlubGluZS1lbmQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtZW5kLWNvbG9yOnZhcigtLV8wLXdNRGYpO2JvcmRlci1pbmxpbmUtc3RhcnQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tXzAtd01EZil9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmFmdGVyLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1jaGFydCAuY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTttYXgtd2lkdGg6MzQycHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLWNoYXJ0IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLW5ld3MgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czo4cHg7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eSk7bWF4LXdpZHRoOjMyMHB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1uZXdzIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9"}},"time_used":30,"timings":{"blocked":-1,"dns":10,"connect":1,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_forex_cross_rates_widget.d7cd8bbba41a0d54656c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.275Z","timestamp":1785159269275,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/runtime-embed_forex_cross_rates_widget.d7cd8bbba41a0d54656c.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-23ba\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:52:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b499560cdaa4042efee72455cab088bf\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"]}],"data":{"size":9146,"size_decoded":5430,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3059)","md5":"22801bb506d6dad77306f77a8e5105a1","sha1":"b6fe247a1f52aed43a1d788cca49b0adf1f6fc64","sha256":"370863792c0f726ef634011ffd719bd59d4ba8cf35ea9d32183589645f80f52c","sha512":"8ba4ec36838eb2eb5a0a6317a22ba6cf2f68365e859aa0322f2a8c6aaaa14a8acbacb206bdead71e59c13bccc12224c79f5b774c65cd20f8727a2fbb32db59a1","ssdeep":"192:YLwqLptVvG6uptkfr8lJkNnmn1BnRMC4p2koVcsFAVrGg:4wqLp/vXunkfr8/kVm1BnRMC4p2kIzAb","tlshash":"7312d9ac314ce53225fb08114479e462f72d72fb5e0ae0a1a367fcb96868ed46633d51","first_seen":"2026-07-25T00:19:44.438661Z","last_seen":"2026-07-28T04:59:54.480331Z","times_seen":245,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO3ZhciBlLHQscixuPXt9LGE9e307ZnVuY3Rpb24gbChlKXt2YXIgdD1hW2VdO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQuZXhwb3J0czt2YXIgcj1hW2VdPXtleHBvcnRzOnt9fTtyZXR1cm4gbltlXS5jYWxsKHIuZXhwb3J0cyxyLHIuZXhwb3J0cyxsKSxyLmV4cG9ydHN9bC5tPW4sbC5fcGx1cmFsPXthcjooZSx0PTYscj0oMD09ZT8wOjE9PWU/MToyPT1lPzI6ZSUxMDA+PTMmJmUlMTAwPD0xMD8zOmUlMTAwPj0xMSYmZSUxMDA8PTk5PzQ6NSkpPT5udWxsPT1lPzA6K3IsY3M6KGUsdD0zLHI9KDE9PWU/MDplPj0yJiZlPD00PzE6MikpPT5udWxsPT1lPzA6K3IscnU6KGUsdD0zLHI9KGUlMTA9PTEmJmUlMTAwIT0xMT8wOmUlMTA+PTImJmUlMTA8PTQmJihlJTEwMDwxMHx8ZSUxMDA+PTIwKT8xOjIpKT0+bnVsbD09ZT8wOityLHJvOihlLHQ9MyxyPSgxPT1lPzA6ZSUxMDA+MTl8fGUlMTAwPT0wJiYwIT1lPzI6MSkpPT5udWxsPT1lPzA6K3IscGw6KGUsdD0zLHI9KDE9PWU/MDplJTEwPj0yJiZlJTEwPD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyKSk9Pm51bGw9PWU/MDorcixwdDooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLGRlOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsZW46KGUsdD0yLHI9MSE9ZSk9Pm51bGw9PWU/MDorcixlczooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLHN2OihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsaXQ6KGUsdD0yLHI9MSE9ZSk9Pm51bGw9PWU/MDorcix0cjooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLGVsOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsZnI6KGUsdD0yLHI9ZT4xKT0+bnVsbD09ZT8wOityLGZhOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3IsamE6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcixrbzooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLHRoOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3Isdmk6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcix6aDooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLGhlX0lMOihlLHQ9NCxyPSgxPT1lPzA6Mj09ZT8xOmU+MTAmJmUlMTA9PTA/MjozKSk9Pm51bGw9PWU/MDorcixjYV9FUzooZSx0PTIscj0xIT1lKT0+bnVsbD09ZT8wOityLG5sX05MOihlLHQ9MixyPTEhPWUpPT5udWxsPT1lPzA6K3IsaHVfSFU6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcixpZF9JRDooZSx0PTEscj0wKT0+bnVsbD09ZT8wOityLG1zX01ZOihlLHQ9MSxyPTApPT5udWxsPT1lPzA6K3IsemhfVFc6KGUsdD0xLHI9MCk9Pm51bGw9PWU/MDorcn0sZT1bXSxsLk89KHQscixuLGEpPT57aWYoIXIpe3ZhciBjPTEvMDtmb3IoZj0wO2Y8ZS5sZW5ndGg7ZisrKXtmb3IodmFyW3IsbixhXT1lW2ZdLGk9ITAsbz0wO288ci5sZW5ndGg7bysrKSghMSZhfHxjPj1hKSYmT2JqZWN0LmtleXMobC5PKS5ldmVyeSgoZT0+bC5PW2VdKHJbb10pKSk/ci5zcGxpY2Uoby0tLDEpOihpPSExLGE8YyYmKGM9YSkpO2lmKGkpe2Uuc3BsaWNlKGYtLSwxKTt2YXIgZD1uKCk7dm9pZCAwIT09ZCYmKHQ9ZCl9fXJldHVybiB0fWE9YXx8MDtmb3IodmFyIGY9ZS5sZW5ndGg7Zj4wJiZlW2YtMV1bMl0+YTtmLS0pZVtmXT1lW2YtMV07ZVtmXT1bcixuLGFdfSxsLm49ZT0+e3ZhciB0PWUmJmUuX19lc01vZHVsZT8oKT0+ZS5kZWZhdWx0OigpPT5lO3JldHVybiBsLmQodCx7YTp0fSksdH0sbC5kPShlLHQpPT57Zm9yKHZhciByIGluIHQpbC5vKHQscikmJiFsLm8oZSxyKSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUscix7ZW51bWVyYWJsZTohMCxnZXQ6dFtyXX0pfSxsLmY9e30sbC5lPWU9PlByb21pc2UuYWxsKE9iamVjdC5rZXlzKGwuZikucmVkdWNlKCgodCxyKT0+KGwuZltyXShlLHQpLHQpKSxbXSkpLGwudT1lPT4yODgzMT09PWU/Il9fTEFOR19fLiIrZSsiLmY5ZTczNTZmZjkxZjgzN2Y0N2M3LmpzIjoyMzU2Nz09PWU/Il9fTEFOR19fLiIrZSsiLjVmZGRjMTU5OTgxNDJjYmM2MWVmLmpzIjooezczOTc6InBlcmlvZC1mb3JtYXR0ZXIiLDEzOTkzOiJwdXNoc3RyZWFtLW11bHRpcGxleGVyIiwxNjgxMzoidHJhZGluZ3ZpZXctY29weXJpZ2h0LXdpdGgtYm9yZGVyLWRhdGEtaW1wbCIsMzU5ODA6ImNsZWFyLW9sZC1zZXR0aW5ncyIsNDI3MDY6InNpbXBsZS1kaWFsb2ciLDcxMzk0OiJjbW9uZXljb210dy1jb3B5cmlnaHQtZGF0YS1pbXBsIiw3NjA0MDoidHJhZGluZ3ZpZXctY29weXJpZ2h0LW5ldy1kYXRhLWltcGwiLDc5MDQxOiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtdHJhZGUtd2l0aC1kYXRhLWltcGwiLDg1MDM4OiJsZW50YXJ1LWNvcHlyaWdodC1kYXRhLWltcGwiLDk1MjA3OiJzbm93cGxvdy10cmFja2VyLWJhc2UiLDk3NTA5OiJ0cmFkaW5ndmlldy1jb3B5cmlnaHQtZGF0YS1pbXBsIn1bZV18fGUpKyIuIit7MTUzNDoiNzRmZmUxZTcyNWE0NjVkNDM0MWUiLDcyODU6IjhiYzgyOTI2NjUyOGZhNzRhZjVjIiw3Mzk3OiIwNTllNjIyOTI0MDIzMjcwMTZjNCIsMTM5OTM6IjNiMTk5YzZhZDhiZjVjM2NhYzY3IiwxNjgxMzoiN2U0NTI3YmM1NTIxOWVhM2FkNzYiLDI4MTc2OiIyMTM0Mjg2NWU3NGZmYmVmZmY0NCIsMzU5ODA6ImMzNDA0MmE0YTEwY2I1ZmIyZTNkIiwzOTYwOToiOGNlMGQ3OTNiMmI2MGJlN2E0ZDUiLDQyNzA2OiI2YjExNWU3Mzc3MjU0M2Y0YmMzMCIsNTUyMjk6IjI1NzIxODgxOWZhYTY2MzlhMzg5Iiw2NTEwMDoiZjQyMmUxYWQwNjAxNmRiMGQ0N2EiLDcwNjQ0OiI0NDg3NDNkZWYzMjVmZWI2MTk2NyIsNzEzOTQ6ImU2Mzk3NWJhMWQzNjdkZjdhOWQ4Iiw3NjA0MDoiODlhNTFiOTg4ZWM0M2VkMDRlZTciLDc5MDQxOiJiYjRmN2NiMDY4ZmZiZWU4Y2JiYSIsODA5MTU6IjY5NDA0ZmRhOGFhZmMyNzQyYzU1Iiw4NTAzODoiNGMwZDZkZjMwNDVkZTQxNzMxNzgiLDg1NDM0OiJiODViNzVkZjkxYjIyYmFjOGQzOSIsOTUyMDc6IjQ2NWY4YWYxYWE3MmFjM2ExYzMyIiw5NzUwOToiMjdmMzQ5YTFkNTg0ODNmMjdlYWEifVtlXSsiLmpzIiwKbC5taW5pQ3NzRj1lPT45Nzc5Nz09PWU/ZSsiLmQ5ODVlZWJlNjczOTdmMDJmYTY0LmNzcyI6ODQzMDY9PT1lP2UrIi4zMWQ2Y2ZlMGQxNmFlOTMxYjczYy5jc3MiOjUyMzk2PT09ZT9lKyIuZWQ3NmNhZjJmZmUwMTQ0NjBiYTYuY3NzIjoyMDM1ND09PWU/ZSsiLjJkZGY5MzRmOGVkYzI4MDJkOTBhLmNzcyI6MTM0OTI9PT1lP2UrIi4yYzc3NzMwZDExMjVhNDk4NWJkYy5jc3MiOjM3NzQ2PT09ZT9lKyIuMzQ1MjI3YmIxNmUwZDhiYzliZDUuY3NzIjoxMjM4NT09PWU/ZSsiLjc4NTYxZWJkZWYwNWNlNjQ4YjVkLmNzcyI6ODEwNzI9PT1lP2UrIi4yOTI3YTE3NzIzMWZkZDBlMjRjMS5jc3MiOjk0MjMyPT09ZT9lKyIuYWI2NzMxYjY5OGE4YzI4NTRhOTAuY3NzIjoxNzA4Nz09PWU/ZSsiLmE1ZWFlYjMwZjdkMjY5Zjk3YjQxLmNzcyI6ZSsiLiIrezY0NDU6ImFjNjM1YmExNTE5NGRmNDg0NjE2Iiw4NTc5OiI2ZjY1MThiZTQyOTM4MjI3ODZlMCIsMTAzNjY6IjA3ZTIwZTdiYmVlMjdjOWQ1ZmJjIiwxMjA1MToiYjg0YmU3ODFiYjkwZDQ1N2YxZGYiLDE5NTk1OiJkOTYyYWI3NWJkM2UxYmFhNWFhZSIsMTk3ODc6ImJiYjY2ZmEwZmQyYmQwNGQwODc1IiwyOTI5NjoiYjQwOGYyODIyZmE1Yjk1NjliYWMiLDQwOTE0OiJhOGRkNjk2YmU3ZGRlNmNlNmRkYiIsNDQyNTM6Ijg0MDViYWYzM2MzZWZkMDE1MjhlIiw1MzUyMToiZGM5YmM3MGE2YTgwZjJjOTRmNTUiLDU3MzAwOiJjMWY1ZmM0ZTE1OTkwNjg1ZmI3MyIsNTk5NDE6ImFmMjJmM2FiODNjZGZjYzM5MzVhIiw2MDA2MjoiNDk1NDQ0YTdmYWMxNzNmYjI4Y2QiLDY3MjEyOiI3Y2ExMmFiN2VjY2YxYzQ4YWVhMSIsNzQwMTE6ImUzMWQ4ZjkyNDEzZjBiZWNhOTg0Iiw3ODg5OToiYmI1ZjgxZDk0YmU1YjVhN2JiZDEiLDg3NzQwOiI1ZTFhNzY3OTBlZTQ5YTM3OTVmYSIsODk1NTg6Ijk4MWEzNGIxOWI0MWZhZDkyYjg4Iiw5MDk2MDoiZWM5NDFhY2NmYWEzZWQyY2Q2ZTIifVtlXSsiLmNzcyIsbC5nPWZ1bmN0aW9uKCl7aWYoIm9iamVjdCI9PXR5cGVvZiBnbG9iYWxUaGlzKXJldHVybiBnbG9iYWxUaGlzO3RyeXtyZXR1cm4gdGhpc3x8bmV3IEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9Y2F0Y2goZSl7aWYoIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cpcmV0dXJuIHdpbmRvd319KCksbC5vPShlLHQpPT5PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSx0KSx0PXt9LHI9InRyYWRpbmd2aWV3OiIsbC5sPShlLG4sYSxjKT0+e2lmKHRbZV0pdFtlXS5wdXNoKG4pO2Vsc2V7dmFyIGksbztpZih2b2lkIDAhPT1hKWZvcih2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IiksZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgdT1kW2ZdO2lmKHUuZ2V0QXR0cmlidXRlKCJzcmMiKT09ZXx8dS5nZXRBdHRyaWJ1dGUoImRhdGEtd2VicGFjayIpPT1yK2Epe2k9dTticmVha319aXx8KG89ITAsKGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0IikpLmNoYXJzZXQ9InV0Zi04IixsLm5jJiZpLnNldEF0dHJpYnV0ZSgibm9uY2UiLGwubmMpLGkuc2V0QXR0cmlidXRlKCJkYXRhLXdlYnBhY2siLHIrYSksaS5zcmM9ZSwwIT09aS5zcmMuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihpLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSksdFtlXT1bbl07dmFyIHM9KHIsbik9PntpLm9uZXJyb3I9aS5vbmxvYWQ9bnVsbCxjbGVhclRpbWVvdXQoYik7dmFyIGE9dFtlXTtpZihkZWxldGUgdFtlXSxpLnBhcmVudE5vZGUmJmkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChpKSxhJiZhLmZvckVhY2goKGU9PmUobikpKSxyKXJldHVybiByKG4pfSxiPXNldFRpbWVvdXQocy5iaW5kKG51bGwsdm9pZCAwLHt0eXBlOiJ0aW1lb3V0Iix0YXJnZXQ6aX0pLDEyZTQpO2kub25lcnJvcj1zLmJpbmQobnVsbCxpLm9uZXJyb3IpLGkub25sb2FkPXMuYmluZChudWxsLGkub25sb2FkKSxvJiZkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGkpfX0sbC5yPWU9PnsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxsLmo9NzAzMzQsKCgpPT57dmFyIGU7bC5nLmltcG9ydFNjcmlwdHMmJihlPWwuZy5sb2NhdGlvbisiIik7dmFyIHQ9bC5nLmRvY3VtZW50O2lmKCFlJiZ0JiYodC5jdXJyZW50U2NyaXB0JiYiU0NSSVBUIj09PXQuY3VycmVudFNjcmlwdC50YWdOYW1lLnRvVXBwZXJDYXNlKCkmJihlPXQuY3VycmVudFNjcmlwdC5zcmMpLCFlKSl7dmFyIHI9dC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0Iik7aWYoci5sZW5ndGgpZm9yKHZhciBuPXIubGVuZ3RoLTE7bj4tMSYmKCFlfHwhL15odHRwKHM/KTovLnRlc3QoZSkpOyllPXJbbi0tXS5zcmN9aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBdXRvbWF0aWMgcHVibGljUGF0aCBpcyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgYnJvd3NlciIpO2U9ZS5yZXBsYWNlKC9eYmxvYjovLCIiKS5yZXBsYWNlKC8jLiokLywiIikucmVwbGFjZSgvXD8uKiQvLCIiKS5yZXBsYWNlKC9cL1teXC9dKyQvLCIvIiksbC5wPWV9KSgpLGwuZy5sb2NhdGlvbiYmbC5wLnN0YXJ0c1dpdGgobC5nLmxvY2F0aW9uLm9yaWdpbikmJihsLnA9bC5wLnNsaWNlKGwuZy5sb2NhdGlvbi5vcmlnaW4ubGVuZ3RoKSksKCgpPT57Y29uc3QgZT1sLnU7bC51PXQ9PmUodCkucmVwbGFjZSgiX19MQU5HX18iLGwuZy5sYW5ndWFnZSl9KSgpLCgoKT0+e3ZhciBlPWwuZSx0PU9iamVjdC5jcmVhdGUobnVsbCk7ZnVuY3Rpb24gcih0LG4pe3JldHVybiBlKHQpLmNhdGNoKChmdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oYSl7dmFyIGw9ZnVuY3Rpb24oKXtzZWxmLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbCwhMSksITE9PT1uYXZpZ2F0b3Iub25MaW5lP3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixsLCExKTphKG48Mj9yKHQsbisxKTplKHQpKX0KO3NldFRpbWVvdXQobCxuKm4qMWUzKX0pKX0pKX1sLmU9ZnVuY3Rpb24oZSl7aWYoIXRbZV0pe3RbZV09cihlLDApO3ZhciBuPWZ1bmN0aW9uKCl7ZGVsZXRlIHRbZV19O3RbZV0udGhlbihuLG4pfXJldHVybiB0W2VdfX0pKCksKCgpPT57aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCl7dmFyIGU9ZT0+bmV3IFByb21pc2UoKCh0LHIpPT57dmFyIG49bC5taW5pQ3NzRihlKSxhPWwucCtuO2lmKCgoZSx0KT0+e2Zvcih2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpLG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIGE9KGM9cltuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKXx8Yy5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZigic3R5bGVzaGVldCI9PT1jLnJlbCYmKGE9PT1lfHxhPT09dCkpcmV0dXJuIGN9dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInN0eWxlIik7Zm9yKG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIGM7aWYoKGE9KGM9bFtuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKSk9PT1lfHxhPT09dClyZXR1cm4gY319KShuLGEpKXJldHVybiB0KCk7KChlLHQscixuLGEpPT57dmFyIGw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2wucmVsPSJzdHlsZXNoZWV0IixsLnR5cGU9InRleHQvY3NzIixsLm9uZXJyb3I9bC5vbmxvYWQ9cj0+e2lmKGwub25lcnJvcj1sLm9ubG9hZD1udWxsLCJsb2FkIj09PXIudHlwZSluKCk7ZWxzZXt2YXIgYz1yJiYoImxvYWQiPT09ci50eXBlPyJtaXNzaW5nIjpyLnR5cGUpLGk9ciYmci50YXJnZXQmJnIudGFyZ2V0LmhyZWZ8fHQsbz1uZXcgRXJyb3IoIkxvYWRpbmcgQ1NTIGNodW5rICIrZSsiIGZhaWxlZC5cbigiK2krIikiKTtvLmNvZGU9IkNTU19DSFVOS19MT0FEX0ZBSUxFRCIsby50eXBlPWMsby5yZXF1ZXN0PWksbC5wYXJlbnROb2RlJiZsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobCksYShvKX19LGwuaHJlZj10LDAhPT1sLmhyZWYuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihsLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSxyP3IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobCxyLm5leHRTaWJsaW5nKTpkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGwpfSkoZSxhLG51bGwsdCxyKX0pKSx0PXs3MDMzNDowfTtsLmYubWluaUNzcz0ocixuKT0+e3Rbcl0/bi5wdXNoKHRbcl0pOjAhPT10W3JdJiZ7NjQ0NToxLDg1Nzk6MSwxMDM2NjoxLDEyMDUxOjEsMTIzODU6MSwxMzQ5MjoxLDE3MDg3OjEsMTk1OTU6MSwxOTc4NzoxLDIwMzU0OjEsMjkyOTY6MSwzNzc0NjoxLDQwOTE0OjEsNDQyNTM6MSw1MjM5NjoxLDUzNTIxOjEsNTczMDA6MSw1OTk0MToxLDYwMDYyOjEsNjcyMTI6MSw3NDAxMToxLDc4ODk5OjEsODEwNzI6MSw4NDMwNjoxLDg3NzQwOjEsODk1NTg6MSw5MDk2MDoxLDk0MjMyOjEsOTc3OTc6MX1bcl0mJm4ucHVzaCh0W3JdPWUocikudGhlbigoKCk9Pnt0W3JdPTB9KSwoZT0+e3Rocm93IGRlbGV0ZSB0W3JdLGV9KSkpfX19KSgpLGwuaTE4bmV4dD0oZSx0PXt9LHIsbj1sLmcubGFuZ3VhZ2UpPT57aWYobnVsbD09PWUpe2lmKEFycmF5LmlzQXJyYXkocikpcmV0dXJuIHJbdm9pZCAwPT09dC5jb3VudD8wOmwuX3BsdXJhbFtuXSh0LmNvdW50KV0ucmVwbGFjZSgveyhcdyspfS9nLCgoZSxyKT0+dm9pZCAwIT09KHQucmVwbGFjZXx8dClbcl0/KHQucmVwbGFjZXx8dClbcl06ZSkpO2lmKCJvYmplY3QiPT10eXBlb2YgcilyZXR1cm4gcltsLmcubGFuZ3VhZ2VdP2wuaTE4bmV4dChudWxsLHQscltsLmcubGFuZ3VhZ2VdKTpsLmkxOG5leHQobnVsbCx0LHIuZW4sImVuIil9ZWxzZSBpZihyJiZlKXtjb25zdCBuPWAke2V9JHt0LmNvbnRleHQ/YF8ke3QuY29udGV4dH1gOiIifWA7aWYocltuXSlyZXR1cm4gbC5pMThuZXh0KG51bGwsdCxyW25dKX1yZXR1cm4ibnVtYmVyIj09dHlwZW9mIGU/ZS50b1N0cmluZygpOiJzdHJpbmciIT10eXBlb2YgZT8iIjplfSwoKCk9Pnt2YXIgZT17NzAzMzQ6MCw0NjkwNzowLDQzMzI1OjAsMzkwNTowLDE1OTMyOjAsNTE1MDg6MCw4NDA4OjAsODE4MDk6MH07bC5mLmo9KHQscik9Pnt2YXIgbj1sLm8oZSx0KT9lW3RdOnZvaWQgMDtpZigwIT09bilpZihuKXIucHVzaChuWzJdKTtlbHNlIGlmKC9eKDEoMzE0OHwzOTkzfDUzNHw2MDY3fDY4MTMpfDIoMDA2MXwzNTY3fDgxNzZ8ODgzMSl8MygyMzg3fDU1Mnw1OTgwfDkxNDd8OTYwOSl8NSgxMDMxfDUyMjl8ODY2Nyl8NjUoMTAwfDg2Mil8NygoMzl8ODB8OTIwKTd8MDY0NHwxMzk0fDI4NXw2MDQwfDkwNDEpfDgoMCg1OTR8NzA2fDkxNSl8NTAzOHw1NDM0KXw5KDQ3MDh8NTIwN3w3NTA5KXw0MjcwNnw0OTI2NSkkLy50ZXN0KHQpKXt2YXIgYT1uZXcgUHJvbWlzZSgoKHIsYSk9Pm49ZVt0XT1bcixhXSkpO3IucHVzaChuWzJdPWEpO3ZhciBjPWwucCtsLnUodCksaT1uZXcgRXJyb3I7bC5sKGMsKHI9PntpZihsLm8oZSx0KSYmKDAhPT0obj1lW3RdKSYmKGVbdF09dm9pZCAwKSxuKSl7dmFyIGE9ciYmKCJsb2FkIj09PXIudHlwZT8ibWlzc2luZyI6ci50eXBlKSxjPXImJnIudGFyZ2V0JiZyLnRhcmdldC5zcmM7aS5tZXNzYWdlPSJMb2FkaW5nIGNodW5rICIrdCsiIGZhaWxlZC5cbigiK2ErIjogIitjKyIpIixpLm5hbWU9IkNodW5rTG9hZEVycm9yIixpLnR5cGU9YSxpLnJlcXVlc3Q9YyxuWzFdKGkpfX0pLCJjaHVuay0iK3QsdCl9ZWxzZSBlW3RdPTB9LGwuTy5qPXQ9PjA9PT1lW3RdO3ZhciB0PSh0LHIpPT57dmFyIG4sYSxbYyxpLG9dPXIsZD0wO2lmKGMuc29tZSgodD0+MCE9PWVbdF0pKSl7Zm9yKG4gaW4gaSlsLm8oaSxuKSYmKGwubVtuXT1pW25dKTtpZihvKXZhciBmPW8obCl9Zm9yKHQmJnQocik7ZDxjLmxlbmd0aDtkKyspYT1jW2RdLGwubyhlLGEpJiZlW2FdJiZlW2FdWzBdKCksZVthXT0wO3JldHVybiBsLk8oZil9LHI9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlldz1zZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3fHxbXTtyLmZvckVhY2godC5iaW5kKG51bGwsMCkpLHIucHVzaD10LmJpbmQobnVsbCxyLnB1c2guYmluZChyKSl9KSgpLApsLnA9bC5nJiZsLmcuV0VCUEFDS19QVUJMSUNfUEFUSHx8bC5wfSkoKTs="}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/24478.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.672Z","timestamp":1785159268672,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/24478.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 5281\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 06:10:21 GMT\r\nlast-modified: Thu, 10 Aug 2023 04:10:01 GMT\r\netag: \"ad12f5c035cc80c127981051cbcc352e\"\r\nx-amz-server-side-encryption: AES256\r\ncache-control: public, max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 26648\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: rmxstcDMYYut_AMEErQHQdlU8saFsLrpUMmvWSLVltCocAiO91zdOQ==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":5281,"size_decoded":5836,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"ad12f5c035cc80c127981051cbcc352e","sha1":"41c31c90fc78394ce8114dc4c1df7ee9055220ed","sha256":"ec537de040a73db93b37350b1e6ec11f9d51f663c121ddc9fed6ad9b9f803eac","sha512":"0da5bbd7ba132fe249125efa243e4d05869fcc37b10ec398b844854b3b7f49f242736927998310587db25e3f34be4d7cfc0f67b73dc6702e977a290de7e14791","ssdeep":"96:Sx8GlMxymDWozd9jYO3n8WBxIdEpu0GKDU648UVhXncrbVJD1Dn:Sx88qDTzd90OX8WBxIdau0GKW8idncHh","tlshash":"1eb18e4e2ed2662ac2cc35f9e3d913387d003984f5946b1d313b6e966534623518ded6","first_seen":"2023-08-15T00:41:51Z","last_seen":"2026-07-29T06:14:00.319081Z","times_seen":1068,"resource_available":false,"data":"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"}},"time_used":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51508.767219283c65f4d4ca6e.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.271Z","timestamp":1785159269271,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/51508.767219283c65f4d4ca6e.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b75-9e1\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:25 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3abf871a460336e9ef3884bd077f51b6\r\ncdn-cache: HIT\r\ncontent-encoding: br\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"]}],"data":{"size":2529,"size_decoded":1497,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2529), with no line terminators","md5":"76e3b34ef660092cb6ebcda4b1e8a0b0","sha1":"d997b9296e92721e4cfa8c5cd062150dd5a72d76","sha256":"1f4abc998292aaf8b21eb2933273369f5d7611063f098e70b47fbd27258859c0","sha512":"91d3087923640eeca24866262f097a03a730ca9ecbcab63c5851539144aca3fc7b28c2b2a340a3318f5a5f4149e8f995999a8ec0680a94a7780ac64e2ce591a3","ssdeep":"","tlshash":"6651481fb3fb1d212c234b0047d56e432330e5a315e36aece810d1ae9eda9de39b1285","first_seen":"2026-04-15T09:47:56.501715Z","last_seen":"2026-07-30T06:08:06.422892Z","times_seen":5655,"resource_available":false,"data":"LnR2LWRhdGEtbW9kZXt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWV7Y29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtZGF0YS1tb2RlLS1zbmFwc2hvdHtjb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCl9LnR2LWRhdGEtbW9kZS0tZW5kb2ZkYXl7Y29sb3I6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS00MDApfS50di1kYXRhLW1vZGUtLWNvbm5lY3RpbmcsLnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLC50di1kYXRhLW1vZGUtLWludmFsaWQsLnR2LWRhdGEtbW9kZS0tbG9hZGluZ3t2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1kZWxheWVke2NvbG9yOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKX0udHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4O3Bvc2l0aW9uOmFic29sdXRlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLXRhcGV7Zm9udC1zaXplOjEwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMnB4KX0udHYtZGF0YS1tb2RlLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXI6ZGlyKHJ0bCksLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci10YXBlOmRpcihydGwpe3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0ycHgpfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXIsLnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci10aWNrZXItdGFwZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6bm9ybWFsO21hcmdpbi1pbmxpbmUtc3RhcnQ6MXB4O21hcmdpbi10b3A6NHB4O3ZlcnRpY2FsLWFsaWduOnRvcH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bWFyZ2luLWxlZnQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1uby1yZWFsdGltZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tcmVwbGF5e2NvbG9yOnZhcigtLWNvbG9yLXJlcGxheS1kYXRhLW1vZGUpfS50di1kYXRhLW1vZGUtLWZvci1jaGFydHtmbG9hdDppbmxpbmUtZW5kO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWlubGluZS1zdGFydDo2cHh9LnR2LWRhdGEtbW9kZS0tY29ubmVjdGluZy0tZm9yLWNoYXJ0LC50di1kYXRhLW1vZGUtLWxvYWRpbmctLWZvci1jaGFydHtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLS1mb3ItY2hhcnQsLnR2LWRhdGEtbW9kZS0taW52YWxpZC0tZm9yLWNoYXJ0e2NvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7dmlzaWJpbGl0eTp2aXNpYmxlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItY2hhcnR7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1jaGFydC50di1kYXRhLW1vZGUtLXJlcGxheXttYXJnaW4tbGVmdDowfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXItY2FyZHtkaXNwbGF5OmlubGluZTttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtZGF0YS1tb2RlLS1mb3Itc3ltYm9sLXdpZGdldHtkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtd2lkZ2V0LC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1jYXJke2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itd2F0Y2gtbGlzdHtmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNHB4O292ZXJmbG93OnZpc2libGU7cG9pbnRlci1ldmVudHM6YXV0bzt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtbW9kZS0tZm9yLXdhdGNoLWxpc3Q6ZGlyKHJ0bCl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itd2F0Y2gtbGlzdHt2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1zaXplX2xhcmdle2ZvbnQtc2l6ZToxMnB4fS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtaW5mb3tkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXN5bWJvbC1pbmZve2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itc2NyZWVuZXJ7Zm9udC1zaXplOjEwcHh9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci1zY3JlZW5lcntkaXNwbGF5Om5vbmV9"}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/style-CliJwUTR.css","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:35.079Z","timestamp":1785159275079,"http_version":"HTTP/2","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":"1857279285.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 14:34:45 GMT","end":"Wed, 02 Sep 2026 14:34:44 GMT"},"fingerprint":{"sha1":"92:5D:A0:17:13:91:72:7B:B6:8C:6A:7D:A9:55:7F:C8:A9:47:11:99","sha256":"0E:FC:E3:4D:AD:32:B2:11:05:DC:E3:CD:CC:9E:10:DC:C5:2D:9E:1C:D7:C1:9C:00:92:15:43:C5:B7:0B:3A:D6"}}},"request":{"raw":"GET /assets/style-CliJwUTR.css HTTP/1.1\r\nHost: widget-v3.smartsuppcdn.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\nOrigin: https://walmartfundholdings.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: 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\ndate: Mon, 27 Jul 2026 13:34:35 GMT\r\ncontent-type: text/css\r\naccess-control-allow-origin: *\r\ncache-control: max-age=31536000, public, immutable\r\netag: W/\"6a4cb803-8d68\"\r\nexpires: Wed, 07 Jul 2027 08:30:01 GMT\r\nlast-modified: Tue, 07 Jul 2026 08:25:39 GMT\r\nx-77-nzt: kwQfm8lLYEw9KEDTW7EYLlj6H4LktbeGV1gzFryMm3lOLAeYmT3mJHIPVOLY6RTTxBuAokU\r\nx-77-nzt-ray: fdb54123451bfdfe6b5e676ac5a5f204\r\nx-77-cache: HIT\r\nx-77-age: 1746232\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":36200,"size_decoded":8208,"mime_type":"text/css","magic":"ASCII text, with very long lines (36187)","md5":"840dfdb09fc1a11a5c3a5b5f808e3160","sha1":"46140a50b100fa33b974027c13bb9f2de5c784b7","sha256":"b5b9a339413a55a0d828ab6be236e2a495594a19fb3283f846c607d7b6996ad7","sha512":"61e37700ee60ed584c8ae7b6313c5dddf6950c9664aa57f32bb4a70d775b1a1d5bfc249c6c1238495ef2cb7e12bae5f00c4ddb3df4dde44a01081117b74e2ba2","ssdeep":"384:F8fY2l091g7Tc6/WYtGLadKzSVX8Kj6+eZcrNSN56qB56YR9evZLLq51vZLLq5G:F8wM091gTcCWYtG4XqcrNSN56DwQ43","tlshash":"05f2966daad9093dac23c179e3f8e58c911af5d5df3226daf74239008ac17ff0986514","first_seen":"2026-07-07T11:50:17.712499Z","last_seen":"2026-07-30T06:08:39.263959Z","times_seen":2921,"resource_available":false,"data":"LmJ0bi5zdmVsdGUteXdvZm1se2JvcmRlci1yYWRpdXM6OTk5OXB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6LjI1cmVtO2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjc1cmVtO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtkaXNwbGF5OmlubGluZS1mbGV4fS5idG4tcHJpbWFyeS5zdmVsdGUteXdvZm1se2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSB9LmJ0bi1wcmltYXJ5LnN2ZWx0ZS15d29mbWw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5idG4tZ2hvc3Quc3ZlbHRlLXl3b2ZtbDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6LjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMCAwIDAvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYnRuLXN1Y2Nlc3Muc3ZlbHRlLXl3b2ZtbHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxNiAxODUgMTI5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSA7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5idG4tc3VjY2Vzcy5zdmVsdGUteXdvZm1sOmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDUgMTUwIDEwNS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5idG4tc20uc3ZlbHRlLXl3b2ZtbHt3aWR0aDoxLjVyZW07aGVpZ2h0OjEuNXJlbX0uYnRuLW1kLnN2ZWx0ZS15d29mbWx7d2lkdGg6MnJlbTtoZWlnaHQ6MnJlbX0uYnRuLWxnLnN2ZWx0ZS15d29mbWx7d2lkdGg6Mi43NXJlbTtoZWlnaHQ6Mi43NXJlbX0uYnRuLXhsLnN2ZWx0ZS15d29mbWx7d2lkdGg6M3JlbTtoZWlnaHQ6M3JlbX0uYnRuLWRpc2FibGVkLnN2ZWx0ZS15d29mbWx7Y3Vyc29yOm5vdC1hbGxvd2VkO29wYWNpdHk6LjJ9LmJ0bi1kaXNhYmxlZC5zdmVsdGUteXdvZm1sOmhvdmVyOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzAwMDB9Kiw6YmVmb3JlLDphZnRlcntib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDowO2JvcmRlci1jb2xvcjp2YXIoLS11bi1kZWZhdWx0LWJvcmRlci1jb2xvciwjZTVlN2ViKX06YmVmb3JlLDphZnRlcnstLXVuLWNvbnRlbnQ6IiJ9aHRtbCw6aG9zdHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTt0YWItc2l6ZTo0O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczpub3JtYWw7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6bm9ybWFsOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDtmb250LWZhbWlseTp1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSxzYW5zLXNlcmlmLEFwcGxlIENvbG9yIEVtb2ppLFNlZ29lIFVJIEVtb2ppLFNlZ29lIFVJIFN5bWJvbCxOb3RvIENvbG9yIEVtb2ppO2xpbmUtaGVpZ2h0OjEuNX1ib2R5e2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjB9aHJ7aGVpZ2h0OjA7Y29sb3I6aW5oZXJpdDtib3JkZXItdG9wLXdpZHRoOjFweH1hYmJyOndoZXJlKFt0aXRsZV0pey13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9aDEsaDIsaDMsaDQsaDUsaDZ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdH1he2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9Y29kZSxrYmQsc2FtcCxwcmV7Zm9udC1mZWF0dXJlLXNldHRpbmdzOm5vcm1hbDtmb250LXZhcmlhdGlvbi1zZXR0aW5nczpub3JtYWw7Zm9udC1mYW1pbHk6dWktbW9ub3NwYWNlLFNGTW9uby1SZWd1bGFyLE1lbmxvLE1vbmFjbyxDb25zb2xhcyxMaWJlcmF0aW9uIE1vbm8sQ291cmllciBOZXcsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxZW19c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX1zdWJ7Ym90dG9tOi0uMjVlbX1zdXB7dG9wOi0uNWVtfXRhYmxle3RleHQtaW5kZW50OjA7Ym9yZGVyLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Zm9udC1mZWF0dXJlLXNldHRpbmdzOmluaGVyaXQ7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6aW5oZXJpdDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxMDAlO2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O21hcmdpbjowO3BhZGRpbmc6MH1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9YnV0dG9uLFt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JhY2tncm91bmQtaW1hZ2U6bm9uZX06LW1vei1mb2N1c3Jpbmd7b3V0bGluZTphdXRvfTotbW96LXVpLWludmFsaWR7Ym94LXNoYWRvdzpub25lfXByb2dyZXNze3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b306Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9c2VhcmNoXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO291dGxpbmUtb2Zmc2V0Oi0ycHh9Ojotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtmb250OmluaGVyaXR9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbX1ibG9ja3F1b3RlLGRsLGRkLGgxLGgyLGgzLGg0LGg1LGg2LGhyLGZpZ3VyZSxwLHByZXttYXJnaW46MH1maWVsZHNldHttYXJnaW46MDtwYWRkaW5nOjB9bGVnZW5ke3BhZGRpbmc6MH1vbCx1bCxtZW51e21hcmdpbjowO3BhZGRpbmc6MDtsaXN0LXN0eWxlOm5vbmV9ZGlhbG9ne3BhZGRpbmc6MH10ZXh0YXJlYXtyZXNpemU6dmVydGljYWx9aW5wdXQ6OnBsYWNlaG9sZGVyLHRleHRhcmVhOjpwbGFjZWhvbGRlcntvcGFjaXR5OjE7Y29sb3I6IzljYTNhZn1idXR0b24sW3JvbGU9YnV0dG9uXXtjdXJzb3I6cG9pbnRlcn06ZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9aW1nLHN2Zyx2aWRlbyxjYW52YXMsYXVkaW8saWZyYW1lLGVtYmVkLG9iamVjdHt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTpibG9ja31pbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99W2hpZGRlbl06d2hlcmUoOm5vdChbaGlkZGVuPXVudGlsLWZvdW5kXSkpe2Rpc3BsYXk6bm9uZX0qLDpiZWZvcmUsOmFmdGVyLDo6YmFja2Ryb3B7LS11bi1yb3RhdGU6MDstLXVuLXJvdGF0ZS14OjA7LS11bi1yb3RhdGUteTowOy0tdW4tcm90YXRlLXo6MDstLXVuLXNjYWxlLXg6MTstLXVuLXNjYWxlLXk6MTstLXVuLXNjYWxlLXo6MTstLXVuLXNrZXcteDowOy0tdW4tc2tldy15OjA7LS11bi10cmFuc2xhdGUteDowOy0tdW4tdHJhbnNsYXRlLXk6MDstLXVuLXRyYW5zbGF0ZS16OjA7LS11bi1wYW4teDogOy0tdW4tcGFuLXk6IDstLXVuLXBpbmNoLXpvb206IDstLXVuLXNjcm9sbC1zbmFwLXN0cmljdG5lc3M6cHJveGltaXR5Oy0tdW4tb3JkaW5hbDogOy0tdW4tc2xhc2hlZC16ZXJvOiA7LS11bi1udW1lcmljLWZpZ3VyZTogOy0tdW4tbnVtZXJpYy1zcGFjaW5nOiA7LS11bi1udW1lcmljLWZyYWN0aW9uOiA7LS11bi1ib3JkZXItc3BhY2luZy14OjA7LS11bi1ib3JkZXItc3BhY2luZy15OjA7LS11bi1yaW5nLW9mZnNldC1zaGFkb3c6MCAwICMwMDAwOy0tdW4tcmluZy1zaGFkb3c6MCAwICMwMDAwOy0tdW4tc2hhZG93LWluc2V0OiA7LS11bi1zaGFkb3c6MCAwICMwMDAwOy0tdW4tcmluZy1pbnNldDogOy0tdW4tcmluZy1vZmZzZXQtd2lkdGg6MHB4Oy0tdW4tcmluZy1vZmZzZXQtY29sb3I6I2ZmZjstLXVuLXJpbmctd2lkdGg6MHB4Oy0tdW4tcmluZy1jb2xvcjojOTNjNWZkODA7LS11bi1ibHVyOiA7LS11bi1icmlnaHRuZXNzOiA7LS11bi1jb250cmFzdDogOy0tdW4tZHJvcC1zaGFkb3c6IDstLXVuLWdyYXlzY2FsZTogOy0tdW4taHVlLXJvdGF0ZTogOy0tdW4taW52ZXJ0OiA7LS11bi1zYXR1cmF0ZTogOy0tdW4tc2VwaWE6IDstLXVuLWJhY2tkcm9wLWJsdXI6IDstLXVuLWJhY2tkcm9wLWJyaWdodG5lc3M6IDstLXVuLWJhY2tkcm9wLWNvbnRyYXN0OiA7LS11bi1iYWNrZHJvcC1ncmF5c2NhbGU6IDstLXVuLWJhY2tkcm9wLWh1ZS1yb3RhdGU6IDstLXVuLWJhY2tkcm9wLWludmVydDogOy0tdW4tYmFja2Ryb3Atb3BhY2l0eTogOy0tdW4tYmFja2Ryb3Atc2F0dXJhdGU6IDstLXVuLWJhY2tkcm9wLXNlcGlhOiB9LmZsZXgtY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH0uYnV0dG9uLWZvY3VzOmZvY3VzLXZpc2libGV7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6MXB4O291dGxpbmUtc3R5bGU6c29saWR9LmJ1dHRvbi1mb2N1cy1zZWNvbmRhcnk6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLXdpZHRoOjJweDtvdXRsaW5lLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktZm9jdXMpIDtvdXRsaW5lLWNvbG9yOnZhcigtLWNvbG9yLXNlY29uZGFyeS1mb2N1cykgO291dGxpbmUtb2Zmc2V0OjFweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5jb250ZW50LWZvY3VzOmZvY3VzLXZpc2libGV7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6LTVweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5jb250ZW50LWZvY3VzLXNlY29uZGFyeTpmb2N1cy12aXNpYmxle291dGxpbmUtd2lkdGg6MnB4O291dGxpbmUtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1mb2N1cykgO291dGxpbmUtY29sb3I6dmFyKC0tY29sb3Itc2Vjb25kYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6LTVweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5cW2NsaXBcOnJlY3RcKDBcLDBcLDBcLDBcKVxde2NsaXA6cmVjdCgwLDAsMCwwKX0uc3Itb25seXtjbGlwOnJlY3QoMCwwLDAsMCk7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci13aWR0aDowO3dpZHRoOjFweDtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTtvdmVyZmxvdzpoaWRkZW59LnBvaW50ZXItZXZlbnRzLWF1dG97cG9pbnRlci1ldmVudHM6YXV0b30ucG9pbnRlci1ldmVudHMtbm9uZXtwb2ludGVyLWV2ZW50czpub25lfS5hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0uZml4ZWR7cG9zaXRpb246Zml4ZWR9LnJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGlja3l7cG9zaXRpb246c3RpY2t5fS4tYm90dG9tLTRcLjV7Ym90dG9tOi0xLjEyNXJlbX0uLXJpZ2h0LVxbNHB4XF17cmlnaHQ6LTRweH0uLXRvcC1cWzRweFxde3RvcDotNHB4fS5ib3R0b20tXFstOHB4XF17Ym90dG9tOi04cHh9LmJvdHRvbS0we2JvdHRvbTowfS5ib3R0b20tM3tib3R0b206Ljc1cmVtfS5ib3R0b20tZnVsbHtib3R0b206MTAwJX0ubGVmdC1cWzJweFxde2xlZnQ6MnB4fS5sZWZ0LTB7bGVmdDowfS5sZWZ0LTFcLzJ7bGVmdDo1MCV9LmxlZnQtMntsZWZ0Oi41cmVtfS5sZWZ0LTNcLjd7bGVmdDouOTI1cmVtfS5yaWdodC1cWzE2cHhcXXtyaWdodDoxNnB4fS5yaWdodC0we3JpZ2h0OjB9LnJpZ2h0LTBcLjV7cmlnaHQ6LjEyNXJlbX0ucmlnaHQtMntyaWdodDouNXJlbX0ucmlnaHQtM3tyaWdodDouNzVyZW19LnRvcC1cWzJweFxde3RvcDoycHh9LnRvcC0we3RvcDowfS50b3AtMnt0b3A6LjVyZW19LnRvcC0ze3RvcDouNzVyZW19LnRvcC0zXC43e3RvcDouOTI1cmVtfS50b3AtMzB7dG9wOjcuNXJlbX0udG9wLTQwe3RvcDoxMHJlbX0ubGluZS1jbGFtcC0xey13ZWJraXQtbGluZS1jbGFtcDoxO2xpbmUtY2xhbXA6MTstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW59LmxpbmUtY2xhbXAtMnstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS5saW5lLWNsYW1wLTN7LXdlYmtpdC1saW5lLWNsYW1wOjM7bGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbn0ubGluZS1jbGFtcC01ey13ZWJraXQtbGluZS1jbGFtcDo1O2xpbmUtY2xhbXA6NTstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW59LnotMXt6LWluZGV4OjF9LnotMTB7ei1pbmRleDoxMH0uei0xMDB7ei1pbmRleDoxMDB9LnotNTB7ei1pbmRleDo1MH0uZ3JpZHtkaXNwbGF5OmdyaWR9LmZsb2F0LXJpZ2h0e2Zsb2F0OnJpZ2h0fS4tbS1weHttYXJnaW46LTFweH0ubS0ze21hcmdpbjouNzVyZW19Lm0tYXV0b3ttYXJnaW46YXV0b30ubTE1e21hcmdpbjozLjc1cmVtfS5tMTZ7bWFyZ2luOjRyZW19Lm0xOHttYXJnaW46NC41cmVtfS5tMjF7bWFyZ2luOjUuMjVyZW19Lm0yMnttYXJnaW46NS41cmVtfS5tNnttYXJnaW46MS41cmVtfS5tN3ttYXJnaW46MS43NXJlbX0ubTh7bWFyZ2luOjJyZW19Lm05e21hcmdpbjoyLjI1cmVtfS5teC0ye21hcmdpbi1sZWZ0Oi41cmVtO21hcmdpbi1yaWdodDouNXJlbX0ubXgtM3ttYXJnaW4tbGVmdDouNzVyZW07bWFyZ2luLXJpZ2h0Oi43NXJlbX0ubXgtNHttYXJnaW4tbGVmdDoxcmVtO21hcmdpbi1yaWdodDoxcmVtfS5teS0ze21hcmdpbi10b3A6Ljc1cmVtO21hcmdpbi1ib3R0b206Ljc1cmVtfS5teS00e21hcmdpbi10b3A6MXJlbTttYXJnaW4tYm90dG9tOjFyZW19Li1tdC0ze21hcmdpbi10b3A6LS43NXJlbX0ubWItXFsycHhcXXttYXJnaW4tYm90dG9tOjJweH0ubWItMHttYXJnaW4tYm90dG9tOjB9Lm1iLTEsLm5vdC1sYXN0LW9mLXR5cGVcOm1iLTE6bm90KDpsYXN0LW9mLXR5cGUpe21hcmdpbi1ib3R0b206LjI1cmVtfS5tYi0ye21hcmdpbi1ib3R0b206LjVyZW19Lm1iLTN7bWFyZ2luLWJvdHRvbTouNzVyZW19Lm1iLTR7bWFyZ2luLWJvdHRvbToxcmVtfS5tYi02e21hcmdpbi1ib3R0b206MS41cmVtfS5tbC0wXC41e21hcmdpbi1sZWZ0Oi4xMjVyZW19Lm1sLTF7bWFyZ2luLWxlZnQ6LjI1cmVtfS5tbC0ye21hcmdpbi1sZWZ0Oi41cmVtfS5tbC0ze21hcmdpbi1sZWZ0Oi43NXJlbX0ubWwtNHttYXJnaW4tbGVmdDoxcmVtfS5tbC04e21hcmdpbi1sZWZ0OjJyZW19Lm1yLTF7bWFyZ2luLXJpZ2h0Oi4yNXJlbX0ubXItMVwuNXttYXJnaW4tcmlnaHQ6LjM3NXJlbX0ubXItMTB7bWFyZ2luLXJpZ2h0OjIuNXJlbX0ubXItMnttYXJnaW4tcmlnaHQ6LjVyZW19Lm1yLTN7bWFyZ2luLXJpZ2h0Oi43NXJlbX0ubXItNHttYXJnaW4tcmlnaHQ6MXJlbX0ubXQtXFsxcHhcXXttYXJnaW4tdG9wOjFweH0ubXQtMFwuNXttYXJnaW4tdG9wOi4xMjVyZW19Lm10LTJ7bWFyZ2luLXRvcDouNXJlbX0ubXQtM3ttYXJnaW4tdG9wOi43NXJlbX0ubXQtNHttYXJnaW4tdG9wOjFyZW19Lm10LTZ7bWFyZ2luLXRvcDoxLjVyZW19Lm10LTh7bWFyZ2luLXRvcDoycmVtfS5maXJzdC1vZi10eXBlXDptdC0yOmZpcnN0LW9mLXR5cGV7bWFyZ2luLXRvcDouNXJlbX0uaW5saW5le2Rpc3BsYXk6aW5saW5lfS5ibG9ja3tkaXNwbGF5OmJsb2NrfS5pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmhpZGRlbntkaXNwbGF5Om5vbmV9LmgtXFsxXC4yZW1cXXtoZWlnaHQ6MS4yZW19LmgtXFsxZW1cXXtoZWlnaHQ6MWVtfS5oLVxbNTBweFxde2hlaWdodDo1MHB4fS5oLTF7aGVpZ2h0Oi4yNXJlbX0uaC0xMHtoZWlnaHQ6Mi41cmVtfS5oLTExe2hlaWdodDoyLjc1cmVtfS5oLTEye2hlaWdodDozcmVtfS5oLTJ7aGVpZ2h0Oi41cmVtfS5oLTJcLjV7aGVpZ2h0Oi42MjVyZW19LmgtMjB7aGVpZ2h0OjVyZW19LmgtMzB7aGVpZ2h0OjcuNXJlbX0uaC00e2hlaWdodDoxcmVtfS5oLTQwe2hlaWdodDoxMHJlbX0uaC00MDBweHtoZWlnaHQ6NDAwcHh9LmgtNXtoZWlnaHQ6MS4yNXJlbX0uaC01NHB4e2hlaWdodDo1NHB4fS5oLTZ7aGVpZ2h0OjEuNXJlbX0uaC02MHB4e2hlaWdodDo2MHB4fS5oLTY0cHh7aGVpZ2h0OjY0cHh9LmgtN3toZWlnaHQ6MS43NXJlbX0uaC04e2hlaWdodDoycmVtfS5oLWZ1bGx7aGVpZ2h0OjEwMCV9LmgtcHh7aGVpZ2h0OjFweH0ubWF4LWgtXFsxMjVweFxde21heC1oZWlnaHQ6MTI1cHh9Lm1heC1oLVxbMjQwcHhcXXttYXgtaGVpZ2h0OjI0MHB4fS5tYXgtaC1cWzMycHhcXXttYXgtaGVpZ2h0OjMycHh9Lm1heC1oLTEzMnB4e21heC1oZWlnaHQ6MTMycHh9Lm1heC1oLTY0e21heC1oZWlnaHQ6MTZyZW19Lm1heC1oLTgwdmh7bWF4LWhlaWdodDo4MHZofS5tYXgtaC04NnttYXgtaGVpZ2h0OjIxLjVyZW19Lm1heC1oLWZ1bGx7bWF4LWhlaWdodDoxMDAlfS5tYXgtdy1cWzgwXCVcXXttYXgtd2lkdGg6ODAlfS5tYXgtdy1cWzg1XCVcXXttYXgtd2lkdGg6ODUlfS5tYXgtdy1cW2NhbGNcKDEwMFwlLTE1MHB4XClcXXttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMTUwcHgpfS5tYXgtdy1mdWxse21heC13aWR0aDoxMDAlfS5taW4taC1cWzE2cHhcXXttaW4taGVpZ2h0OjE2cHh9Lm1pbi13LVxbMTZweFxde21pbi13aWR0aDoxNnB4fS5taW4tdy0we21pbi13aWR0aDowfS5taW4tdy01e21pbi13aWR0aDoxLjI1cmVtfS5taW4tdy01XC41e21pbi13aWR0aDoxLjM3NXJlbX0ubWluLXctNnttaW4td2lkdGg6MS41cmVtfS53LVxbMVwuMmVtXF17d2lkdGg6MS4yZW19LnctXFsxZW1cXXt3aWR0aDoxZW19LnctXFs1MHB4XF17d2lkdGg6NTBweH0udy0we3dpZHRoOjB9LnctMXt3aWR0aDouMjVyZW19LnctMTF7d2lkdGg6Mi43NXJlbX0udy0xMTZ7d2lkdGg6MjlyZW19LnctMTJ7d2lkdGg6M3JlbX0udy0ye3dpZHRoOi41cmVtfS53LTJcLjV7d2lkdGg6LjYyNXJlbX0udy0yODBweHt3aWR0aDoyODBweH0udy0zNDhweHt3aWR0aDozNDhweH0udy00e3dpZHRoOjFyZW19LnctNXt3aWR0aDoxLjI1cmVtfS53LTUye3dpZHRoOjEzcmVtfS53LTU2e3dpZHRoOjE0cmVtfS53LTZ7d2lkdGg6MS41cmVtfS53LTYwcHh7d2lkdGg6NjBweH0udy03e3dpZHRoOjEuNzVyZW19LnctOHt3aWR0aDoycmVtfS53LWZ1bGx7d2lkdGg6MTAwJX0udy1tYXh7d2lkdGg6bWF4LWNvbnRlbnR9LnctcHh7d2lkdGg6MXB4fS5mbGV4e2Rpc3BsYXk6ZmxleH0uaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleH0uZmxleC0xe2ZsZXg6MX0uZmxleC1ub25le2ZsZXg6bm9uZX0uZmxleC1zaHJpbmt7ZmxleC1zaHJpbms6MX0uZmxleC1zaHJpbmstMCwuc2hyaW5rLTB7ZmxleC1zaHJpbms6MH0uZmxleC1ncm93LC5ncm93e2ZsZXgtZ3JvdzoxfS5mbGV4LXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmZsZXgtY29se2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZmxleC13cmFwe2ZsZXgtd3JhcDp3cmFwfS4tdHJhbnNsYXRlLXgtMVwvMnstLXVuLXRyYW5zbGF0ZS14Oi01MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0udHJhbnNsYXRlLXgtZnVsbHstLXVuLXRyYW5zbGF0ZS14OjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0uZ3JvdXA6aG92ZXIgLmdyb3VwLWhvdmVyXDpzY2FsZS0xMTV7LS11bi1zY2FsZS14OjEuMTU7LS11bi1zY2FsZS15OjEuMTU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0uaG92ZXJcOnNjYWxlLTEyMDpob3ZlcnstLXVuLXNjYWxlLXg6MS4yOy0tdW4tc2NhbGUteToxLjI7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0udHJhbnNmb3Jte3RyYW5zZm9ybTp0cmFuc2xhdGVYKHZhcigtLXVuLXRyYW5zbGF0ZS14KSkgdHJhbnNsYXRlWSh2YXIoLS11bi10cmFuc2xhdGUteSkpIHRyYW5zbGF0ZVoodmFyKC0tdW4tdHJhbnNsYXRlLXopKSByb3RhdGUodmFyKC0tdW4tcm90YXRlKSkgcm90YXRlWCh2YXIoLS11bi1yb3RhdGUteCkpIHJvdGF0ZVkodmFyKC0tdW4tcm90YXRlLXkpKSByb3RhdGVaKHZhcigtLXVuLXJvdGF0ZS16KSkgc2tld1godmFyKC0tdW4tc2tldy14KSkgc2tld1kodmFyKC0tdW4tc2tldy15KSkgc2NhbGVYKHZhcigtLXVuLXNjYWxlLXgpKSBzY2FsZVkodmFyKC0tdW4tc2NhbGUteSkpIHNjYWxlWih2YXIoLS11bi1zY2FsZS16KSl9QGtleWZyYW1lcyBwdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjV9fUBrZXlmcmFtZXMgcHVzaC10by1sZWZ0ezAle21hcmdpbi1yaWdodDotNTAlO3RyYW5zZm9ybTpzY2FsZSgwKX10b3ttYXJnaW4tcmlnaHQ6aW5oZXJpdDt0cmFuc2Zvcm06c2NhbGUoMSl9fUBrZXlmcmFtZXMgc3BpbnswJXtyb3RhdGU6MGRlZ310b3tyb3RhdGU6MzYwZGVnfX1Aa2V5ZnJhbWVzIHR5cGluZ3swJSw1MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9MjUle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC02cHgpfX0uYW5pbWF0ZS1wdWxzZXthbmltYXRpb246MnMgY3ViaWMtYmV6aWVyKC40LDAsLjYsMSkgaW5maW5pdGUgcHVsc2V9LmFuaW1hdGUtcHVzaC10by1sZWZ0e2FuaW1hdGlvbjouMjVzIGVhc2UtaW4tb3V0IHB1c2gtdG8tbGVmdH0uYW5pbWF0ZS1zcGlue2FuaW1hdGlvbjoxcyBsaW5lYXIgaW5maW5pdGUgc3Bpbn0uYW5pbWF0ZS10eXBpbmd7YW5pbWF0aW9uOi44cyBlYXNlLWluLW91dCB0eXBpbmd9LmN1cnNvci1hdXRve2N1cnNvcjphdXRvfS5jdXJzb3ItcG9pbnRlciwuaG92ZXJcOmN1cnNvci1wb2ludGVyOmhvdmVye2N1cnNvcjpwb2ludGVyfS5jdXJzb3Itbm90LWFsbG93ZWR7Y3Vyc29yOm5vdC1hbGxvd2VkfS5zZWxlY3Qtbm9uZXstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ucmVzaXple3Jlc2l6ZTpib3RofS5yZXNpemUtbm9uZXtyZXNpemU6bm9uZX0uc2Nyb2xsLW10LTJ7c2Nyb2xsLW1hcmdpbi10b3A6LjVyZW19Lmxpc3QtZGVjaW1hbHtsaXN0LXN0eWxlLXR5cGU6ZGVjaW1hbH0ubGlzdC1kaXNje2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5jb250ZW50LWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlcn0uaXRlbXMtc3RhcnR7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uaXRlbXMtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5pdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyfS5pdGVtcy1iYXNlbGluZXthbGlnbi1pdGVtczpiYXNlbGluZX0uc2VsZi1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaH0uanVzdGlmeS1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0uanVzdGlmeS1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5qdXN0aWZ5LWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5qdXN0aWZ5LWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmdhcC0ye2dhcDouNXJlbX0uZ2FwLTN7Z2FwOi43NXJlbX0uc3BhY2UteC0yPjpub3QoW2hpZGRlbl0pfjpub3QoW2hpZGRlbl0pey0tdW4tc3BhY2UteC1yZXZlcnNlOjA7bWFyZ2luLWxlZnQ6Y2FsYyguNXJlbSAqIGNhbGMoMSAtIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpKTttYXJnaW4tcmlnaHQ6Y2FsYyguNXJlbSAqIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpfS5zcGFjZS14LTU+Om5vdChbaGlkZGVuXSl+Om5vdChbaGlkZGVuXSl7LS11bi1zcGFjZS14LXJldmVyc2U6MDttYXJnaW4tbGVmdDpjYWxjKDEuMjVyZW0gKiBjYWxjKDEgLSB2YXIoLS11bi1zcGFjZS14LXJldmVyc2UpKSk7bWFyZ2luLXJpZ2h0OmNhbGMoMS4yNXJlbSAqIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpfS5zcGFjZS15LTI+Om5vdChbaGlkZGVuXSl+Om5vdChbaGlkZGVuXSl7LS11bi1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tdG9wOmNhbGMoLjVyZW0gKiBjYWxjKDEgLSB2YXIoLS11bi1zcGFjZS15LXJldmVyc2UpKSk7bWFyZ2luLWJvdHRvbTpjYWxjKC41cmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9LnNwYWNlLXktND46bm90KFtoaWRkZW5dKX46bm90KFtoaWRkZW5dKXstLXVuLXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi10b3A6Y2FsYygxcmVtICogY2FsYygxIC0gdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSkpO21hcmdpbi1ib3R0b206Y2FsYygxcmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9LnNwYWNlLXktNT46bm90KFtoaWRkZW5dKX46bm90KFtoaWRkZW5dKXstLXVuLXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi10b3A6Y2FsYygxLjI1cmVtICogY2FsYygxIC0gdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSkpO21hcmdpbi1ib3R0b206Y2FsYygxLjI1cmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9Lm92ZXJmbG93LWF1dG97b3ZlcmZsb3c6YXV0b30ub3ZlcmZsb3ctY2xpcHtvdmVyZmxvdzpjbGlwfS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVufS5vdmVyZmxvdy14LWhpZGRlbntvdmVyZmxvdy14OmhpZGRlbn0ub3ZlcmZsb3cteS1hdXRve292ZXJmbG93LXk6YXV0b30ub3ZlcmZsb3cteS1zY3JvbGx7b3ZlcmZsb3cteTpzY3JvbGx9Lm92ZXJzY3JvbGwtY29udGFpbntvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW59LnRydW5jYXRle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0udGV4dC1lbGxpcHNpc3t0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS53aGl0ZXNwYWNlLW5vcm1hbHt3aGl0ZS1zcGFjZTpub3JtYWx9LndoaXRlc3BhY2Utbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0ud2hpdGVzcGFjZS1wcmV7d2hpdGUtc3BhY2U6cHJlfS53aGl0ZXNwYWNlLXByZS13cmFwe3doaXRlLXNwYWNlOnByZS13cmFwfS5icmVhay13b3Jkc3tvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmR9LmJyZWFrLWFsbHt3b3JkLWJyZWFrOmJyZWFrLWFsbH0uYm9yZGVyLC5ib3JkZXItMXtib3JkZXItd2lkdGg6MXB4fS5ib3JkZXItMHtib3JkZXItd2lkdGg6MH0uYm9yZGVyLTJ7Ym9yZGVyLXdpZHRoOjJweH0uYm9yZGVyLXQtMntib3JkZXItdG9wLXdpZHRoOjJweH0uYm9yZGVyLWdyYXktMzAwey0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiKDIwOSAyMTMgMjE5L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9LmJvcmRlci1ncmVlbi00MDB7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoNzQgMjIyIDEyOC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5ib3JkZXItcHJpbWFyeXtib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeSl9LmJvcmRlci1wcmltYXJ5LWJ1dHRvbntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pfS5ib3JkZXItcmVkLTUwMHstLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYigyMzkgNjggNjgvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKX0uYm9yZGVyLXNsYXRlLTIwMHstLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYigyMjYgMjMyIDI0MC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5ib3JkZXItd2hpdGV7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKX0uZm9jdXNcOmJvcmRlci1ibHVlLTUwMDpmb2N1c3stLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYig1OSAxMzAgMjQ2L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9LmJvcmRlci10LW5ldXRyYWwtMTAwey0tdW4tYm9yZGVyLW9wYWNpdHk6MTstLXVuLWJvcmRlci10b3Atb3BhY2l0eTp2YXIoLS11bi1ib3JkZXItb3BhY2l0eSk7Ym9yZGVyLXRvcC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYm9yZGVyLXRvcC1vcGFjaXR5KSl9LmJvcmRlci1yb3VuZGVkLWZ1bGwsLnJvdW5kZWQtZnVsbHtib3JkZXItcmFkaXVzOjk5OTlweH0ucm91bmRlZC0yLC5yb3VuZGVkLWxne2JvcmRlci1yYWRpdXM6LjVyZW19LnJvdW5kZWQtMnhse2JvcmRlci1yYWRpdXM6MXJlbX0ucm91bmRlZC0zeGwsLnJvdW5kZWQtNntib3JkZXItcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1tZHtib3JkZXItcmFkaXVzOi4zNzVyZW19LnJvdW5kZWQteGx7Ym9yZGVyLXJhZGl1czouNzVyZW19LnJvdW5kZWQtbHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbX0ucm91bmRlZC1sLTN4bHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjEuNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1ye2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouMjVyZW19LnJvdW5kZWQtci0zeGx7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC10LTZ7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxLjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5yb3VuZGVkLWxiLTN4bHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1sdC0zeGx7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxLjVyZW19LnJvdW5kZWQtcmItM3hse2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1ydC0zeGx7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5ib3JkZXItZGFzaGVke2JvcmRlci1zdHlsZTpkYXNoZWR9LmJvcmRlci1ub25le2JvcmRlci1zdHlsZTpub25lfS5iZy1ibGFja3stLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ibGFja1wvODB7YmFja2dyb3VuZC1jb2xvcjojMDAwY30uYmctZW1lcmFsZC01MDB7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMTYgMTg1IDEyOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTIwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjkgMjMxIDIzNS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTMwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMDkgMjEzIDIxOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTQwMFwvXFtcLjk1XF17YmFja2dyb3VuZC1jb2xvcjojOWNhM2FmZjJ9LmJnLWdyYXktNjAwXC9cW1wuOTVcXXtiYWNrZ3JvdW5kLWNvbG9yOiM0YjU1NjNmMn0uYmctZ3JlZW4tNDAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDc0IDIyMiAxMjgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctZ3JlZW4tNTAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDM0IDE5NyA5NC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1uZXV0cmFsLTEwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDUgMjQ1IDI0NS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1uZXV0cmFsLTEwMFwvNTB7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1ODB9LmJnLW5ldXRyYWwtNjAwXC80MHtiYWNrZ3JvdW5kLWNvbG9yOiM1MjUyNTI2Nn0uYmctb3JhbmdlLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDkgMTE1IDIyL3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXByaW1hcnktYnV0dG9ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIH0uYmctcmVkLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMzkgNjggNjgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctcmVkLTYwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjAgMzggMzgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctc2xhdGUtMTAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXNsYXRlLTIwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjYgMjMyIDI0MC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1zbGF0ZS0zMDB7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjAzIDIxMyAyMjUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctc2xhdGUtNDAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDE0OCAxNjMgMTg0L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXNsYXRlLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5iZy13aGl0ZXstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUgMjU1IDI1NS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy1ibGFjazpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy1lbWVyYWxkLTYwMDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYig1IDE1MCAxMDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uaG92ZXItYmctcHJpbWFyeS1idXR0b24taG92ZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5ob3Zlci1iZy1wcmltYXJ5LWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LmhvdmVyLWJnLXNsYXRlLTEwMDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDEgMjQ1IDI0OS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy10cmFuc3BhcmVudDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5ob3Zlclw6Ymctc2xhdGUtMTAwOmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLW9wYWNpdHktMTAsLmhvdmVyLWJnLW9wYWNpdHktMTA6aG92ZXJ7LS11bi1iZy1vcGFjaXR5Oi4xfS5mcm9tLXdoaXRlXC8xMDB7LS11bi1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlOy0tdW4tZ3JhZGllbnQtZnJvbTojZmZmIHZhcigtLXVuLWdyYWRpZW50LWZyb20tcG9zaXRpb24pOy0tdW4tZ3JhZGllbnQtdG8tcG9zaXRpb246MTAwJTstLXVuLWdyYWRpZW50LXRvOiNmZmYwIHZhcigtLXVuLWdyYWRpZW50LXRvLXBvc2l0aW9uKTstLXVuLWdyYWRpZW50LXN0b3BzOnZhcigtLXVuLWdyYWRpZW50LWZyb20pLCB2YXIoLS11bi1ncmFkaWVudC10byl9LnZpYS13aGl0ZVwvNDB7LS11bi1ncmFkaWVudC12aWEtcG9zaXRpb246NTAlOy0tdW4tZ3JhZGllbnQtdG86I2ZmZjA7LS11bi1ncmFkaWVudC1zdG9wczp2YXIoLS11bi1ncmFkaWVudC1mcm9tKSwgI2ZmZjYgdmFyKC0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uKSwgdmFyKC0tdW4tZ3JhZGllbnQtdG8pfS52aWEtd2hpdGVcLzUwey0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjUwJTstLXVuLWdyYWRpZW50LXRvOiNmZmYwOy0tdW4tZ3JhZGllbnQtc3RvcHM6dmFyKC0tdW4tZ3JhZGllbnQtZnJvbSksICNmZmZmZmY4MCB2YXIoLS11bi1ncmFkaWVudC12aWEtcG9zaXRpb24pLCB2YXIoLS11bi1ncmFkaWVudC10byl9LnRvLXRyYW5zcGFyZW50ey0tdW4tZ3JhZGllbnQtdG8tcG9zaXRpb246MTAwJTstLXVuLWdyYWRpZW50LXRvOnRyYW5zcGFyZW50IHZhcigtLXVuLWdyYWRpZW50LXRvLXBvc2l0aW9uKX0uZnJvbS0wXCV7LS11bi1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlfS52aWEtNTBcJXstLXVuLWdyYWRpZW50LXZpYS1wb3NpdGlvbjo1MCV9LnZpYS03MFwley0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjcwJX0uYmctZ3JhZGllbnQtdG8tdHstLXVuLWdyYWRpZW50LXNoYXBlOnRvIHRvcCBpbiBva2xjaDstLXVuLWdyYWRpZW50OnZhcigtLXVuLWdyYWRpZW50LXNoYXBlKSwgdmFyKC0tdW4tZ3JhZGllbnQtc3RvcHMpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHZhcigtLXVuLWdyYWRpZW50KSl9LmZpbGwtY3VycmVudHtmaWxsOmN1cnJlbnRDb2xvcn0uZmlsbC1wcmltYXJ5LWJ1dHRvbntmaWxsOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LmZpbGwtcHJpbWFyeS1idXR0b24tY29udGVudHtmaWxsOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0ub2JqZWN0LWNvbnRhaW57b2JqZWN0LWZpdDpjb250YWlufS5wLTB7cGFkZGluZzowfS5wLTBcLjh7cGFkZGluZzouMnJlbX0ucC0xe3BhZGRpbmc6LjI1cmVtfS5wLTFcLjV7cGFkZGluZzouMzc1cmVtfS5wLTJ7cGFkZGluZzouNXJlbX0ucC0ze3BhZGRpbmc6Ljc1cmVtfS5wLTR7cGFkZGluZzoxcmVtfS5wLTh7cGFkZGluZzoycmVtfS5weCwucHgtNHtwYWRkaW5nLWxlZnQ6MXJlbTtwYWRkaW5nLXJpZ2h0OjFyZW19LnB4LTF7cGFkZGluZy1sZWZ0Oi4yNXJlbTtwYWRkaW5nLXJpZ2h0Oi4yNXJlbX0ucHgtMntwYWRkaW5nLWxlZnQ6LjVyZW07cGFkZGluZy1yaWdodDouNXJlbX0ucHgtM3twYWRkaW5nLWxlZnQ6Ljc1cmVtO3BhZGRpbmctcmlnaHQ6Ljc1cmVtfS5weC04e3BhZGRpbmctbGVmdDoycmVtO3BhZGRpbmctcmlnaHQ6MnJlbX0ucHktMXtwYWRkaW5nLXRvcDouMjVyZW07cGFkZGluZy1ib3R0b206LjI1cmVtfS5weS0ye3BhZGRpbmctdG9wOi41cmVtO3BhZGRpbmctYm90dG9tOi41cmVtfS5weS0yXC41e3BhZGRpbmctdG9wOi42MjVyZW07cGFkZGluZy1ib3R0b206LjYyNXJlbX0ucHktM3twYWRkaW5nLXRvcDouNzVyZW07cGFkZGluZy1ib3R0b206Ljc1cmVtfS5wYi0we3BhZGRpbmctYm90dG9tOjB9LnBiLTF7cGFkZGluZy1ib3R0b206LjI1cmVtfS5wYi0ye3BhZGRpbmctYm90dG9tOi41cmVtfS5wYi0ze3BhZGRpbmctYm90dG9tOi43NXJlbX0ucGItNHtwYWRkaW5nLWJvdHRvbToxcmVtfS5wbC0ye3BhZGRpbmctbGVmdDouNXJlbX0ucGwtNCwuZ3JvdXA6aG92ZXIgLmdyb3VwLWhvdmVyXDpub3QtZmlyc3RcOnBsLTQ6bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZy1sZWZ0OjFyZW19LnByLTF7cGFkZGluZy1yaWdodDouMjVyZW19LnByLTR7cGFkZGluZy1yaWdodDoxcmVtfS5wdC0xe3BhZGRpbmctdG9wOi4yNXJlbX0ucHQtNntwYWRkaW5nLXRvcDoxLjVyZW19LnB0LTl7cGFkZGluZy10b3A6Mi4yNXJlbX0udGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9LnRleHQtMnhse2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6MnJlbX0udGV4dC1iYXNle2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNXJlbX0udGV4dC1iYXNlLWlucHV0e2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuMjVyZW19LnRleHQtbGd7Zm9udC1zaXplOjEuMTI1cmVtO2xpbmUtaGVpZ2h0OjEuNzVyZW19LnRleHQtc217Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS4yNXJlbX0udGV4dC14c3tmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjFyZW19LnRleHQtYmxhY2t7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMCAwIDAvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LWdyYXktMzAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIwOSAyMTMgMjE5L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1ncmF5LTUwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDcgMTE0IDEyOC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtbmV1dHJhbC00MDB7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMTYzIDE2MyAxNjMvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LW5ldXRyYWwtNTAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDExNSAxMTUgMTE1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1wcmltYXJ5e2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnkpIH0udGV4dC1wcmltYXJ5LWJ1dHRvbntjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbikgfS50ZXh0LXByaW1hcnktYnV0dG9uLWNvbnRlbnR7Y29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24tY29udGVudCkgfS50ZXh0LXByaW1hcnktY29udGVudHtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWNvbnRlbnQpIH0udGV4dC1yZWQtNTAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIzOSA2OCA2OC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtc2xhdGUtNDAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDE0OCAxNjMgMTg0L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uY29sb3Itc2xhdGUtNTAwLC50ZXh0LXNsYXRlLTUwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtc2xhdGUtNjAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDcxIDg1IDEwNS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LmNvbG9yLXNsYXRlLTgwMCwudGV4dC1zbGF0ZS04MDB7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMzAgNDEgNTkvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LXdoaXRley0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDI1NSAyNTUgMjU1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uaG92ZXItdGV4dC1wcmltYXJ5LWJ1dHRvbi1jb250ZW50OmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0uaG92ZXJcOnRleHQtZ3JheS00MDA6aG92ZXJ7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMTU2IDE2MyAxNzUvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5ob3Zlclw6dGV4dC1zbGF0ZS04MDA6aG92ZXJ7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMzAgNDEgNTkvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5wbGFjZWhvbGRlclw6dGV4dC1zbGF0ZS0zMDA6OnBsYWNlaG9sZGVyey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIwMyAyMTMgMjI1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uY29sb3ItcmVkLTYwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigyMjAgMzggMzgvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5ob3Zlclw6Y29sb3Itc2xhdGUtNzAwOmhvdmVyey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDUxIDY1IDg1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1vcGFjaXR5LTIwey0tdW4tdGV4dC1vcGFjaXR5Oi4yfS5mb250LTIwMHtmb250LXdlaWdodDoyMDB9LmZvbnQtNTAwLC5mb250LW1lZGl1bXtmb250LXdlaWdodDo1MDB9LmZvbnQtYm9sZHtmb250LXdlaWdodDo3MDB9LmZvbnQtbGlnaHR7Zm9udC13ZWlnaHQ6MzAwfS5mb250LXNlbWlib2xke2ZvbnQtd2VpZ2h0OjYwMH0ubGVhZGluZy1cWzIycHhcXXtsaW5lLWhlaWdodDoyMnB4fS5sZWFkaW5nLTRcLjV7bGluZS1oZWlnaHQ6MS4xMjVyZW19LmxlYWRpbmctNVwuNXtsaW5lLWhlaWdodDoxLjM3NXJlbX0ubGVhZGluZy02e2xpbmUtaGVpZ2h0OjEuNXJlbX0ubGVhZGluZy1ub3JtYWx7bGluZS1oZWlnaHQ6MS41fS5pdGFsaWN7Zm9udC1zdHlsZTppdGFsaWN9LnVuZGVybGluZXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lm5vLXVuZGVybGluZSwuaG92ZXItbm8tdW5kZXJsaW5lOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5vcGFjaXR5LTEwe29wYWNpdHk6LjF9Lm9wYWNpdHktMTAwe29wYWNpdHk6MX0ub3BhY2l0eS0yMHtvcGFjaXR5Oi4yfS5vcGFjaXR5LTMwe29wYWNpdHk6LjN9Lm9wYWNpdHktNjB7b3BhY2l0eTouNn0uc2hhZG93ey0tdW4tc2hhZG93OnZhcigtLXVuLXNoYWRvdy1pbnNldCkgMCAxcHggM3B4IDAgdmFyKC0tdW4tc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksdmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDFweCAycHggLTFweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uc2hhZG93LWxney0tdW4tc2hhZG93OnZhcigtLXVuLXNoYWRvdy1pbnNldCkgMCAxMHB4IDE1cHggLTNweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSx2YXIoLS11bi1zaGFkb3ctaW5zZXQpIDAgNHB4IDZweCAtNHB4IHZhcigtLXVuLXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdW4tcmluZy1vZmZzZXQtc2hhZG93KSwgdmFyKC0tdW4tcmluZy1zaGFkb3cpLCB2YXIoLS11bi1zaGFkb3cpfS5zaGFkb3ctbWR7LS11bi1zaGFkb3c6dmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDRweCA2cHggLTFweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSx2YXIoLS11bi1zaGFkb3ctaW5zZXQpIDAgMnB4IDRweCAtMnB4IHZhcigtLXVuLXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdW4tcmluZy1vZmZzZXQtc2hhZG93KSwgdmFyKC0tdW4tcmluZy1zaGFkb3cpLCB2YXIoLS11bi1zaGFkb3cpfS5zaGFkb3ctc217LS11bi1zaGFkb3c6dmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDFweCAycHggMCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDBkKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uZm9jdXMtd2l0aGluXDpvdXRsaW5lLTI6Zm9jdXMtd2l0aGlue291dGxpbmUtd2lkdGg6MnB4fS5mb2N1cy13aXRoaW5cOm91dGxpbmUtcHJpbWFyeS1mb2N1czpmb2N1cy13aXRoaW57b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSB9Lm91dGxpbmUsLmZvY3VzLXdpdGhpblw6b3V0bGluZS1zb2xpZDpmb2N1cy13aXRoaW57b3V0bGluZS1zdHlsZTpzb2xpZH0ub3V0bGluZS1ub25lLC5mb2N1c1w6b3V0bGluZS1ub25lOmZvY3VzLC5mb2N1cy12aXNpYmxlXDpvdXRsaW5lLW5vbmU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDoycHg7b3V0bGluZToycHggc29saWQgIzAwMDB9LmZvY3VzLXdpdGhpblw6cmluZy0zOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctd2lkdGg6M3B4Oy0tdW4tcmluZy1vZmZzZXQtc2hhZG93OnZhcigtLXVuLXJpbmctaW5zZXQpIDAgMCAwIHZhcigtLXVuLXJpbmctb2Zmc2V0LXdpZHRoKSB2YXIoLS11bi1yaW5nLW9mZnNldC1jb2xvcik7LS11bi1yaW5nLXNoYWRvdzp2YXIoLS11bi1yaW5nLWluc2V0KSAwIDAgMCBjYWxjKHZhcigtLXVuLXJpbmctd2lkdGgpICsgdmFyKC0tdW4tcmluZy1vZmZzZXQtd2lkdGgpKSB2YXIoLS11bi1yaW5nLWNvbG9yKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uZm9jdXMtd2l0aGluXDpyaW5nLW9mZnNldC0xOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctb2Zmc2V0LXdpZHRoOjFweH0uZm9jdXMtd2l0aGluXDpyaW5nLWJsdWUtNDAwOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctb3BhY2l0eToxOy0tdW4tcmluZy1jb2xvcjpyZ2IoOTYgMTY1IDI1MC92YXIoLS11bi1yaW5nLW9wYWNpdHkpKSB9LmZvY3VzXDpyaW5nLWJsdWUtNTAwOmZvY3Vzey0tdW4tcmluZy1vcGFjaXR5OjE7LS11bi1yaW5nLWNvbG9yOnJnYig1OSAxMzAgMjQ2L3ZhcigtLXVuLXJpbmctb3BhY2l0eSkpIH0udHJhbnNpdGlvbnt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLWNvbG9yLHRleHQtZGVjb3JhdGlvbi1jb2xvcixmaWxsLHN0cm9rZSxvcGFjaXR5LGJveC1zaGFkb3csdHJhbnNmb3JtLGZpbHRlciwtd2Via2l0LWJhY2tkcm9wLWZpbHRlcixiYWNrZHJvcC1maWx0ZXI7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS50cmFuc2l0aW9uLWFsbHt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24tY29sb3Jze3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0udHJhbnNpdGlvbi1vcGFjaXR5e3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24tcGFkZGluZy00MDB7dHJhbnNpdGlvbi1wcm9wZXJ0eTpwYWRkaW5nO3RyYW5zaXRpb24tZHVyYXRpb246LjRzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS50cmFuc2l0aW9uLXRyYW5zZm9ybXt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24td2lkdGgtMjUwe3RyYW5zaXRpb24tcHJvcGVydHk6d2lkdGg7dHJhbnNpdGlvbi1kdXJhdGlvbjouMjVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS5kdXJhdGlvbi0xNTB7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzfS5kdXJhdGlvbi0zMDB7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3N9LmR1cmF0aW9uLTc1e3RyYW5zaXRpb24tZHVyYXRpb246NzVtc30uZGVsYXktMHt0cmFuc2l0aW9uLWRlbGF5OjBzfS5lYXNlLWluLW91dHt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0uZWFzZS1vdXR7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0uY29udGVudC1cW1wiXCJcXXtjb250ZW50OiIifS5iZy1wcmltYXJ5LWdyYWRpZW50e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDgwZGVnLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWZyb20pLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LXRvKSAxMzAlKX0uYmctcHJpbWFyeS1ncmFkaWVudC1idXR0b257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoODBkZWcsIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtYnV0dG9uLWZyb20pLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWJ1dHRvbi10bykgMTMwJSl9LmJnLXByaW1hcnktZ3JhZGllbnQtaG92ZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoODBkZWcsIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtaG92ZXItZnJvbSksIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtaG92ZXItdG8pIDEzMCUpfS5saW5lLWNsYW1wLTV7LXdlYmtpdC1saW5lLWNsYW1wOjU7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS50eXBpbmctaW5kaWNhdG9yLnN2ZWx0ZS1zNDB4Z2t7Ym9yZGVyLXJhZGl1czo5OTk5cHh9LnR5cGluZy1pbmRpY2F0b3Iuc20uc3ZlbHRlLXM0MHhna3t3aWR0aDouMjVyZW07aGVpZ2h0Oi4yNXJlbX0udHlwaW5nLWluZGljYXRvci5tZC5zdmVsdGUtczQweGdre3dpZHRoOi41cmVtO2hlaWdodDouNXJlbX0udHlwaW5nLWluZGljYXRvci5pbmRpY2F0b3ItY29sb3ItYmxhY2suc3ZlbHRlLXM0MHhna3stLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS50eXBpbmctaW5kaWNhdG9yLmluZGljYXRvci1jb2xvci1ncmF5LnN2ZWx0ZS1zNDB4Z2t7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMTAwIDExNiAxMzkvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0udHlwaW5nLWluZGljYXRvci5zdmVsdGUtczQweGdrOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi4yNXJlbX0udHlwaW5nLWluZGljYXRvci1zZWNvbmQuc3ZlbHRlLXM0MHhna3thbmltYXRpb24tZGVsYXk6LjFzfS50eXBpbmctaW5kaWNhdG9yLXRoaXJkLnN2ZWx0ZS1zNDB4Z2t7YW5pbWF0aW9uLWRlbGF5Oi4yc30uYnRuLnN2ZWx0ZS0xZTg0bjd3e2JvcmRlci1yYWRpdXM6MS41cmVtO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmctbGVmdDoxcmVtO3BhZGRpbmctcmlnaHQ6MXJlbTt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlzcGxheTppbmxpbmUtZmxleH0uYnRuLXByaW1hcnkuc3ZlbHRlLTFlODRuN3d7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbikgO2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0uYnRuLXByaW1hcnkuc3ZlbHRlLTFlODRuN3c6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5idG4tb3V0bGluZS5zdmVsdGUtMWU4NG43d3tib3JkZXItd2lkdGg6MXB4O2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbik7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigwIDAgMC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LmJ0bi1vdXRsaW5lLnN2ZWx0ZS0xZTg0bjd3OmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSB9LmJ0bi1yYWlzZWQuc3ZlbHRlLTFlODRuN3d7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSA7Ym94LXNoYWRvdzowIDJweCA2cHggIzAwMDAwMDI5fS5idG4tcmFpc2VkLnN2ZWx0ZS0xZTg0bjd3OmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJ0bi1zbS5zdmVsdGUtMWU4NG43d3toZWlnaHQ6MnJlbX0uYnRuLW1kLnN2ZWx0ZS0xZTg0bjd3e2hlaWdodDoyLjVyZW19LmJ0bi1sZy5zdmVsdGUtMWU4NG43d3toZWlnaHQ6M3JlbX0uYnRuLWRpc2FibGVkLnN2ZWx0ZS0xZTg0bjd3e2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi4yfS5kYXJrLnN2ZWx0ZS1zajk5aDN7YmFja2dyb3VuZC1jb2xvcjojNGI1NTYzZjI7cGFkZGluZzouNXJlbSAuNzVyZW19LmxpZ2h0LnN2ZWx0ZS1zajk5aDN7YmFja2dyb3VuZC1jb2xvcjojOWNhM2FmZjI7cGFkZGluZzouMjVyZW0gLjVyZW19c3ZnLnN2ZWx0ZS15aXhoYXR7ZmlsbDpjdXJyZW50Q29sb3I7d2lkdGg6MWVtO2hlaWdodDoxZW19LmNhcm91c2VsLnN2ZWx0ZS0xMHFxanpke2p1c3RpZnktY29udGVudDpzdGFydDthbGlnbi1pdGVtczpzdGFydDt3aWR0aDoxMDAlfS5jYXJvdXNlbC5zdmVsdGUtMTBxcWp6ZDpob3ZlciAuYnV0dG9uOndoZXJlKC5zdmVsdGUtMTBxcWp6ZCksLmNhcm91c2VsLnN2ZWx0ZS0xMHFxanpkOmZvY3VzLXdpdGhpbiAuYnV0dG9uOndoZXJlKC5zdmVsdGUtMTBxcWp6ZCl7b3BhY2l0eToxfS5idXR0b24uc3ZlbHRlLTEwcXFqemR7b3BhY2l0eTowO3otaW5kZXg6MTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlcjpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuNHM7cG9zaXRpb246YWJzb2x1dGV9LmxlZnQuc3ZlbHRlLTEwcXFqemR7bGVmdDotMWVtfS5yaWdodC5zdmVsdGUtMTBxcWp6ZHtyaWdodDotMWVtfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCB1bHttYXJnaW4tcmlnaHQ6LjI1cmVtO3BhZGRpbmctbGVmdDoxcmVtO2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCBsaTpub3QoOmZpcnN0LWNoaWxkKSwubWVzc2FnZS1jb250ZW50LWh0bWwgbGk+dWwsLm1lc3NhZ2UtY29udGVudC1odG1sIGxpPm9se21hcmdpbi10b3A6LjVyZW19Lm1lc3NhZ2UtY29udGVudC1odG1sIG9se21hcmdpbi1yaWdodDouMjVyZW07cGFkZGluZy1sZWZ0OjFyZW07bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9Lm1lc3NhZ2UtY29udGVudC1odG1sIGF7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCAqe3doaXRlLXNwYWNlOm5vcm1hbDtvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmR9Lm1lc3NhZ2UtY29udGVudC10ZXh0LnN2ZWx0ZS1uZmIweW17b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkO3dvcmQtYnJlYWs6YnJlYWstd29yZDt3aGl0ZS1zcGFjZTpwcmUtd3JhcH0ubWVzc2FnZS1jb250ZW50LXRleHQgYXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lm1lc3NhZ2UtY29udGVudC10ZXh0IGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmF2YXRhci1ncm91cC1pdGVtLnN2ZWx0ZS15ZnhhN3Q6Zmlyc3Qtb2YtdHlwZXt6LWluZGV4OjN9LmF2YXRhci1ncm91cC1pdGVtLnN2ZWx0ZS15ZnhhN3Q6bnRoLW9mLXR5cGUoMil7ei1pbmRleDoyfS5hdmF0YXItZ3JvdXAtaXRlbS5zdmVsdGUteWZ4YTd0Om50aC1vZi10eXBlKDMpe3otaW5kZXg6MX0uYXZhdGFyLXNtLnN2ZWx0ZS15ZnhhN3Q6bm90KDpmaXJzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LTEycHh9LmF2YXRhci1tZC5zdmVsdGUteWZ4YTd0Om5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi0xNnB4fS5hdmF0YXItbGcuc3ZlbHRlLXlmeGE3dDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDotMjJweH0ucmVtb3ZlSWNvbi5zdmVsdGUtMTFmM2Jkd3tvcGFjaXR5OjA7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5O3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0uYXR0YWNobWVudFdyYXBwZXIuc3ZlbHRlLTExZjNiZHc6aG92ZXIgLnJlbW92ZUljb246d2hlcmUoLnN2ZWx0ZS0xMWYzYmR3KSwuYXR0YWNobWVudFdyYXBwZXIuc3ZlbHRlLTExZjNiZHc6Zm9jdXMtd2l0aGluIC5yZW1vdmVJY29uOndoZXJlKC5zdmVsdGUtMTFmM2Jkdyl7b3BhY2l0eToxfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2V7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWluO3Njcm9sbGJhci13aWR0aDpub25lO2ZsZXg6MTttYXgtaGVpZ2h0OjMycHg7bWFyZ2luLXRvcDouNzVyZW07bWFyZ2luLWJvdHRvbTouNzVyZW07ZGlzcGxheTpncmlkO292ZXJmbG93OmhpZGRlbiBhdXRvfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0udGV4dGFyZWEtY29udGFpbmVyLXJlc2l6YWJsZS5zdmVsdGUtMXRsOWxjZXttYXgtaGVpZ2h0OjEyNXB4fS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtdGV4dGFyZWEtdmFsdWUpICIgIjt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt2aXNpYmlsaXR5OmhpZGRlbjtvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmQ7d29yZC1icmVhazpicmVhay13b3JkfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6YWZ0ZXIsdGV4dGFyZWEuc3ZlbHRlLTF0bDlsY2V7Zm9udC1zaXplOmluaGVyaXQ7Z3JpZC1hcmVhOjEvMS8yLzI7bWFyZ2luLWxlZnQ6MXJlbTttYXJnaW4tcmlnaHQ6Ljc1cmVtfXRleHRhcmVhLnN2ZWx0ZS0xdGw5bGNlOjpwbGFjZWhvbGRlcnt3b3JkLWJyZWFrOmJyZWFrLWFsbDtvdmVyZmxvdzpoaWRkZW59ZW0tZW1vamktcGlja2Vyey0tYm9yZGVyLXJhZGl1czoxMnB4Oy0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1jb2xvcjpyZ2IoMjI2IDIzMiAyNDAvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKTtib3JkZXItcmFkaXVzOi43NXJlbTt3aWR0aDoxMDAlO2hlaWdodDo0MDBweDttYXgtaGVpZ2h0Ojgwdmg7cGFkZGluZy10b3A6LjI1cmVtO2JveC1zaGFkb3c6MCAxcHggMTVweCAxcHggIzAwMDAwMDFmfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em97LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjI5IDIzMSAyMzUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDtib3JkZXItcmFkaXVzOjk5OTlweDt3aWR0aDoyLjc1cmVtO2hlaWdodDoxLjVyZW07dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLGJvcmRlci1jb2xvcix0ZXh0LWRlY29yYXRpb24tY29sb3IsZmlsbCxzdHJva2U7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em86Zm9jdXN7b3V0bGluZS1vZmZzZXQ6MnB4O291dGxpbmU6MnB4IHNvbGlkICMwMDAwfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em86YWZ0ZXJ7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLWNvbG9yOnJnYigyMDkgMjEzIDIxOS92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpOy0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0NSAyNDUgMjQ1L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSA7Y29udGVudDoiIjtib3JkZXItcmFkaXVzOjk5OTlweDt3aWR0aDoxLjI1cmVtO2hlaWdodDoxLjI1cmVtO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MnB4O2xlZnQ6MnB4fS5zd2l0Y2guY2hlY2tlZC5zdmVsdGUtMXl6Znp6b3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LnN3aXRjaC5jaGVja2VkLnN2ZWx0ZS0xeXpmenpvOmFmdGVyey0tdW4tdHJhbnNsYXRlLXg6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCh2YXIoLS11bi10cmFuc2xhdGUteCkpIHRyYW5zbGF0ZVkodmFyKC0tdW4tdHJhbnNsYXRlLXkpKSB0cmFuc2xhdGVaKHZhcigtLXVuLXRyYW5zbGF0ZS16KSkgcm90YXRlKHZhcigtLXVuLXJvdGF0ZSkpIHJvdGF0ZVgodmFyKC0tdW4tcm90YXRlLXgpKSByb3RhdGVZKHZhcigtLXVuLXJvdGF0ZS15KSkgcm90YXRlWih2YXIoLS11bi1yb3RhdGUteikpIHNrZXdYKHZhcigtLXVuLXNrZXcteCkpIHNrZXdZKHZhcigtLXVuLXNrZXcteSkpIHNjYWxlWCh2YXIoLS11bi1zY2FsZS14KSkgc2NhbGVZKHZhcigtLXVuLXNjYWxlLXkpKSBzY2FsZVoodmFyKC0tdW4tc2NhbGUteikpOy0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0NSAyNDUgMjQ1L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmludmFsaWQuc3ZlbHRlLTEyZjRjMWcsLmludmFsaWQuc3ZlbHRlLTE5bTN1Y3l7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoMjM5IDY4IDY4L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9c2VsZWN0LnN2ZWx0ZS04aDVycTR7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdub25lJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNFJTNDcGF0aCBzdHJva2U9JyUyMzZCNzI4MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzEuNScgZD0nbTYgOCA0IDQgNC00Jy8lM0UlM0Mvc3ZnJTNFIik7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAuNXJlbSBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxLjVlbSAxLjVlbX0uaW52YWxpZC5zdmVsdGUtOGg1cnE0ey0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiKDIzOSA2OCA2OC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5pY29uLnN2ZWx0ZS0xcnNhMnF2e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSA7Ym9yZGVyLXJhZGl1czoxLjVyZW07cGFkZGluZzouNXJlbTtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0uZHJhd2VyLWJ1dHRvbi5zdmVsdGUtajZleHEwe3RleHQtYWxpZ246bGVmdDtib3JkZXItcmFkaXVzOi41cmVtO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO3BhZGRpbmc6LjVyZW07dHJhbnNpdGlvbjpjb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJhY2tncm91bmQtY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxib3JkZXItY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0ZXh0LWRlY29yYXRpb24tY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxmaWxsIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksc3Ryb2tlIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlzcGxheTpmbGV4fS5kcmF3ZXItYnV0dG9uLnN2ZWx0ZS1qNmV4cTA6aG92ZXJ7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uZHJhd2VyLWJ1dHRvbi1kaXNhYmxlZC5zdmVsdGUtajZleHEwe3RleHQtYWxpZ246bGVmdDtvcGFjaXR5Oi4zO2JvcmRlci1yYWRpdXM6LjVyZW07YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7cGFkZGluZzouNXJlbTtkaXNwbGF5OmZsZXh9LmRyYXdlci1idXR0b24tZGlzYWJsZWQuc3ZlbHRlLWo2ZXhxMDpob3ZlcntjdXJzb3I6bm90LWFsbG93ZWR9LmRyYXdlci1zd2l0Y2guc3ZlbHRlLTFqZXN4dGN7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7dGV4dC1hbGlnbjpsZWZ0O2JvcmRlci1yYWRpdXM6LjVyZW07YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7cGFkZGluZzouNXJlbTt0cmFuc2l0aW9uOmNvbG9yIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksYmFja2dyb3VuZC1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJvcmRlci1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLHRleHQtZGVjb3JhdGlvbi1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGZpbGwgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxzdHJva2UgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtkaXNwbGF5OmZsZXh9LmRyYXdlci1zd2l0Y2guc3ZlbHRlLTFqZXN4dGM6aG92ZXJ7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0ubWVzc2FnZS1jb250ZW50LnN2ZWx0ZS0xZ2Z2aGk2e292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d2hpdGUtc3BhY2U6cHJlLXdyYXB9Lm1lc3NhZ2UtY29udGVudC1sZWZ0LnN2ZWx0ZS0xZ2Z2aGk2e2JvcmRlci1yYWRpdXM6LjI1cmVtIDEuNXJlbSAxLjVyZW0gLjI1cmVtfS5tZXNzYWdlLWNvbnRlbnQtbGVmdC1maXJzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItdG9wLWxlZnQtcmFkaXVzOjEuNXJlbX0ubWVzc2FnZS1jb250ZW50LWxlZnQtbGFzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ubWVzc2FnZS1jb250ZW50LXJpZ2h0LnN2ZWx0ZS0xZ2Z2aGk2e2JvcmRlci1yYWRpdXM6MS41cmVtIC4yNXJlbSAuMjVyZW0gMS41cmVtfS5tZXNzYWdlLWNvbnRlbnQtcmlnaHQtZmlyc3Quc3ZlbHRlLTFnZnZoaTZ7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5tZXNzYWdlLWNvbnRlbnQtcmlnaHQtbGFzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czoxLjVyZW19LmNvdW50LWFuaW1hdGUuc3ZlbHRlLTIyOGM3bnthbmltYXRpb246LjJzIGN1YmljLWJlemllciguNCwyLC42LDEpIHN2ZWx0ZS0yMjhjN24tcG9wLXNjYWxlfUBrZXlmcmFtZXMgc3ZlbHRlLTIyOGM3bi1wb3Atc2NhbGV7MCV7dHJhbnNmb3JtOnNjYWxlKDEpfTUwJXt0cmFuc2Zvcm06c2NhbGUoMS4xKX10b3t0cmFuc2Zvcm06c2NhbGUoMSl9fQovKiR2aXRlJDoxKi8="}},"time_used":30,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":30,"receive":0,"ssl":0},"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"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.314Z","timestamp":1785159268314,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 3846784\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 13:34:28 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=3Q9KCBt4MTQNq185x%2Fzuf8wKg2wQxxcaQ5erv7Y4vfivCodywdhtmFeG0xXMJEpufcM5TLMsh6SCU%2BkS7mwCAN7yxekBtSyb6SavjCCM3mBxWtHT1RoWyajlJ%2Bpe\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0593094356a3-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":3649,"size_decoded":3724,"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-07-30T06:07:43.540498Z","times_seen":1706,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDQyMDkyLGU9PnsidXNlIHN0cmljdCI7dmFyIHQ9ZS5pKDc1MjAxKSxyPShlLHQscixuLHMsYSxvLGwpPT57bGV0IGk9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LG09WyJsaWdodCIsImRhcmsiXTtmdW5jdGlvbiBjKHQpe3ZhciByOyhBcnJheS5pc0FycmF5KGUpP2U6W2VdKS5mb3JFYWNoKGU9PntsZXQgcj0iY2xhc3MiPT09ZSxuPXImJmE/cy5tYXAoZT0+YVtlXXx8ZSk6cztyPyhpLmNsYXNzTGlzdC5yZW1vdmUoLi4ubiksaS5jbGFzc0xpc3QuYWRkKGEmJmFbdF0/YVt0XTp0KSk6aS5zZXRBdHRyaWJ1dGUoZSx0KX0pLHI9dCxsJiZtLmluY2x1ZGVzKHIpJiYoaS5zdHlsZS5jb2xvclNjaGVtZT1yKX1pZihuKWMobik7ZWxzZSB0cnl7bGV0IGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0odCl8fHIsbj1vJiYic3lzdGVtIj09PWU/d2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykiKS5tYXRjaGVzPyJkYXJrIjoibGlnaHQiOmU7YyhuKX1jYXRjaChlKXt9fSxuPVsibGlnaHQiLCJkYXJrIl0scz0iKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIsYT0idSI8dHlwZW9mIHdpbmRvdyxvPXQuY3JlYXRlQ29udGV4dCh2b2lkIDApLGw9e3NldFRoZW1lOmU9Pnt9LHRoZW1lczpbXX0saT0oKT0+e3ZhciBlO3JldHVybiBudWxsIT0oZT10LnVzZUNvbnRleHQobykpP2U6bH0sbT1lPT50LnVzZUNvbnRleHQobyk/dC5jcmVhdGVFbGVtZW50KHQuRnJhZ21lbnQsbnVsbCxlLmNoaWxkcmVuKTp0LmNyZWF0ZUVsZW1lbnQoZCx7Li4uZX0pLGM9WyJsaWdodCIsImRhcmsiXSxkPSh7Zm9yY2VkVGhlbWU6ZSxkaXNhYmxlVHJhbnNpdGlvbk9uQ2hhbmdlOnI9ITEsZW5hYmxlU3lzdGVtOmE9ITAsZW5hYmxlQ29sb3JTY2hlbWU6bD0hMCxzdG9yYWdlS2V5Omk9InRoZW1lIix0aGVtZXM6bT1jLGRlZmF1bHRUaGVtZTpkPWE/InN5c3RlbSI6ImxpZ2h0IixhdHRyaWJ1dGU6cD0iZGF0YS10aGVtZSIsdmFsdWU6YixjaGlsZHJlbjp2LG5vbmNlOmcsc2NyaXB0UHJvcHM6VH0pPT57bGV0W3csU109dC51c2VTdGF0ZSgoKT0+aChpLGQpKSxbQyxFXT10LnVzZVN0YXRlKCgpPT4ic3lzdGVtIj09PXc/ZigpOncpLGs9Yj9PYmplY3QudmFsdWVzKGIpOm0sQT10LnVzZUNhbGxiYWNrKGU9PntsZXQgdD1lO2lmKCF0KXJldHVybjsic3lzdGVtIj09PWUmJmEmJih0PWYoKSk7bGV0IHM9Yj9iW3RdOnQsbz1yP3koZyk6bnVsbCxpPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxtPWU9PnsiY2xhc3MiPT09ZT8oaS5jbGFzc0xpc3QucmVtb3ZlKC4uLmspLHMmJmkuY2xhc3NMaXN0LmFkZChzKSk6ZS5zdGFydHNXaXRoKCJkYXRhLSIpJiYocz9pLnNldEF0dHJpYnV0ZShlLHMpOmkucmVtb3ZlQXR0cmlidXRlKGUpKX07aWYoQXJyYXkuaXNBcnJheShwKT9wLmZvckVhY2gobSk6bShwKSxsKXtsZXQgZT1uLmluY2x1ZGVzKGQpP2Q6bnVsbCxyPW4uaW5jbHVkZXModCk/dDplO2kuc3R5bGUuY29sb3JTY2hlbWU9cn1udWxsPT1vfHxvKCl9LFtnXSksTD10LnVzZUNhbGxiYWNrKGU9PntsZXQgdD0iZnVuY3Rpb24iPT10eXBlb2YgZT9lKHcpOmU7Uyh0KTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oaSx0KX1jYXRjaChlKXt9fSxbd10pLFA9dC51c2VDYWxsYmFjayh0PT57RShmKHQpKSwic3lzdGVtIj09PXcmJmEmJiFlJiZBKCJzeXN0ZW0iKX0sW3csZV0pO3QudXNlRWZmZWN0KCgpPT57bGV0IGU9d2luZG93Lm1hdGNoTWVkaWEocyk7cmV0dXJuIGUuYWRkTGlzdGVuZXIoUCksUChlKSwoKT0+ZS5yZW1vdmVMaXN0ZW5lcihQKX0sW1BdKSx0LnVzZUVmZmVjdCgoKT0+e2xldCBlPWU9PntlLmtleT09PWkmJihlLm5ld1ZhbHVlP1MoZS5uZXdWYWx1ZSk6TChkKSl9O3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RvcmFnZSIsZSksKCk9PndpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJzdG9yYWdlIixlKX0sW0xdKSx0LnVzZUVmZmVjdCgoKT0+e0EobnVsbCE9ZT9lOncpfSxbZSx3XSk7bGV0IE89dC51c2VNZW1vKCgpPT4oe3RoZW1lOncsc2V0VGhlbWU6TCxmb3JjZWRUaGVtZTplLHJlc29sdmVkVGhlbWU6InN5c3RlbSI9PT13P0M6dyx0aGVtZXM6YT9bLi4ubSwic3lzdGVtIl06bSxzeXN0ZW1UaGVtZTphP0M6dm9pZCAwfSksW3csTCxlLEMsYSxtXSk7cmV0dXJuIHQuY3JlYXRlRWxlbWVudChvLlByb3ZpZGVyLHt2YWx1ZTpPfSx0LmNyZWF0ZUVsZW1lbnQodSx7Zm9yY2VkVGhlbWU6ZSxzdG9yYWdlS2V5OmksYXR0cmlidXRlOnAsZW5hYmxlU3lzdGVtOmEsZW5hYmxlQ29sb3JTY2hlbWU6bCxkZWZhdWx0VGhlbWU6ZCx2YWx1ZTpiLHRoZW1lczptLG5vbmNlOmcsc2NyaXB0UHJvcHM6VH0pLHYpfSx1PXQubWVtbygoe2ZvcmNlZFRoZW1lOmUsc3RvcmFnZUtleTpuLGF0dHJpYnV0ZTpzLGVuYWJsZVN5c3RlbTphLGVuYWJsZUNvbG9yU2NoZW1lOm8sZGVmYXVsdFRoZW1lOmwsdmFsdWU6aSx0aGVtZXM6bSxub25jZTpjLHNjcmlwdFByb3BzOmR9KT0+e2xldCB1PUpTT04uc3RyaW5naWZ5KFtzLG4sbCxlLG0saSxhLG9dKS5zbGljZSgxLC0xKTtyZXR1cm4gdC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiLHsuLi5kLHN1cHByZXNzSHlkcmF0aW9uV2FybmluZzohMCxub25jZToidSI8dHlwZW9mIHdpbmRvdz9jOiIiLGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MOntfX2h0bWw6YCgke3IudG9TdHJpbmcoKX0pKCR7dX0pYH19KX0pLGg9KGUsdCk9PntsZXQgcjtpZighYSl7dHJ5e3I9bG9jYWxTdG9yYWdlLmdldEl0ZW0oZSl8fHZvaWQgMH1jYXRjaChlKXt9cmV0dXJuIHJ8fHR9fSx5PWU9PntsZXQgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiBlJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGUpLHQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiosKjo6YmVmb3JlLCo6OmFmdGVyey13ZWJraXQtdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDstbW96LXRyYW5zaXRpb246bm9uZSFpbXBvcnRhbnQ7LW8tdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDstbXMtdHJhbnNpdGlvbjpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fSIpKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHQpLCgpPT57d2luZG93LmdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuYm9keSksc2V0VGltZW91dCgoKT0+e2RvY3VtZW50LmhlYWQucmVtb3ZlQ2hpbGQodCl9LDEpfX0sZj1lPT4oZXx8KGU9d2luZG93Lm1hdGNoTWVkaWEocykpLGUubWF0Y2hlcz8iZGFyayI6ImxpZ2h0Iik7ZS5zKFsiVGhlbWVQcm92aWRlciIsKCk9Pm0sInVzZVRoZW1lIiwoKT0+aV0pfSw4MzY2MSxlPT57InVzZSBzdHJpY3QiO3ZhciB0PWUuaSg5ODEzNCkscj1lLmkoNDIwOTIpO2Z1bmN0aW9uIG4oe2NoaWxkcmVuOmV9KXtyZXR1cm4oMCx0LmpzeCkoci5UaGVtZVByb3ZpZGVyLHthdHRyaWJ1dGU6ImNsYXNzIixkZWZhdWx0VGhlbWU6ImRhcmsiLGVuYWJsZVN5c3RlbTohMCxkaXNhYmxlVHJhbnNpdGlvbk9uQ2hhbmdlOiEwLGNoaWxkcmVuOmV9KX1lLnMoWyJUaGVtZVByb3ZpZGVyIiwoKT0+bl0pfV0pOw=="}},"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":"s2.coinmarketcap.com/static/img/coins/64x64/5176.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.646Z","timestamp":1785159268646,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/5176.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 746\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Fri, 28 Jul 2023 07:43:45 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 06:36:38 GMT\r\netag: \"5b97c0a26ca9707d0aade8420216c659\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 25071\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: x7fRjvUvB2zD9Nx9dyPEn9zz4xfzse5CNxVAKTHshEhOZWYbvju9XQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":746,"size_decoded":1279,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"5b97c0a26ca9707d0aade8420216c659","sha1":"00bd79b81ba15abe30772de87262fb62b704b954","sha256":"acf372af35817cf300680492e46a0788ba2b0afd14c62cd7a033c85b6f015e73","sha512":"9536a33d35ffcc11aba99ddd8b2be7a950015e2a62d017b0d6da2e62959f7d85bf3ddabefb749755e0133012019b75ae76a1a052c62faeb3dd73af3d0166e9d6","ssdeep":"","tlshash":"620165da57f155bed619c4839e084597106e1fc4826d24c992189dc4e470abc2b485da","first_seen":"2024-01-09T05:16:20Z","last_seen":"2026-07-29T06:14:00.301439Z","times_seen":1374,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAACsUlEQVR4Xu2ay0ocQRSGfQQfIY+QR/AxguPCTfY+RNbJ2lUWrkUyIWQTCASyEWFAjeDGXBBDUBAhEhDBzBF6sL/prsupi9VjffAtdLrqnP/MdE/P6NJSpVKpVCrOHIxHdyX77cPqc/YcjcnO+jILlij7jgYLFewlew/mcDx621GoWNl/MCwwBJlBDTcejO/XVpjFm4N3o8ncxgOSebzhhkOUmZzhRiZzw/omJzsvnjGblelVf4MbmcwN69tkPivcwGZuWN/m/nj0hhl74WIXc8P6LjJnJ9rb3dywvqP2O8SORU6efH3l5OWvL8zSgsf3yfquMm+L/fHqOhfE9s/xNjO34PEpZO4ZPDCFJQxATnNmzxJeLGEAYiu89sJnUs7TvxdHzOeN7BFyzvcpp/tsAHxQ6+3NNftPwvGnjbnaGpvwn/mAj0cfX7K/bIS+MqZ3u9+Dn30TN9fn9+e86xoeezrZtJ5Goa+GqAOQwHy8yz44gC6vfu95rzEZfA0Q+DubffiG0ax56OwiGDIE4d/Vj7nfm5SmRXl5i83PPud0c0epHUArfAMPcpHw8dgSzQCYuwUPtmlDnmG5mHGdzZ+7r60XQIHrbDLvHJrPAxIwN5pnvnXzY0IzhEbbp70Q5B2A9Vx1Dt8gf2PjJiHKS1qeNXmrNCEDPDvcur/B4h5a1X8vjD0EMfeHIXX4h3DTEHMOgDmC4OZacw2A/UeBRTTmGAD7jgqL+Zp6AOw3OqFfnqQcQOdXXalgcVdTDYD9ZYFNuJhiAOwrK2zGpnyBwe/4Q77vZz+PApvKJft4VNhcalm/CNhkKlm3KNhsbFmvSNh0LFmnaNh8qNx/EDCEVu47KBjGV+43SFT/azhdw30Gjc//GsuxXL8QuAxhYcM3MDDl8QsJQz+p8A1POnylUqlUCuE/+/pKU82qDO4AAAAASUVORK5CYII="}},"time_used":27,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":27,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/css/fontawesome-all.css","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.904Z","timestamp":1785159267904,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /css/fontawesome-all.css HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"ca47-66136805-7fd3442af1a770e6;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 8986\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":51783,"size_decoded":9349,"mime_type":"text/css","magic":"ASCII text, with very long lines (366)","md5":"7042e450a58920e06421b907ce7d8aa8","sha1":"06c2150c51b9c6f639a12da9fe411557bf1782c3","sha256":"18d31a27beea7813d8e7428260a45a0ad797b75872701c46bf79fec5a18a8f30","sha512":"a3b7c47b02db6a1b2421cb1d50203293274f46ec812e088d9cabdadb4863632abfe0e8693ecf23bc0294c123700af1b64e1570b68be10f3297403afa833f88ad","ssdeep":"768:FUii4ukQxT9fM4h65sTODNn/gCJ0+0UyqCx:yii4wTdM4hIsaDNn/vD0U/M","tlshash":"853300eed1bf01904311e0812743e3e0b739b66cec8a5d98d2a67d8df6d065ca186bdd","first_seen":"2023-10-31T20:28:17Z","last_seen":"2026-07-27T13:35:41.582646Z","times_seen":4,"resource_available":false,"data":"LyohCiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMC4xMyBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbQogKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZSAoSWNvbnM6IENDIEJZIDQuMCwgRm9udHM6IFNJTCBPRkwgMS4xLCBDb2RlOiBNSVQgTGljZW5zZSkKICovCi5mYSwKLmZhcywKLmZhciwKLmZhbCwKLmZhYiB7CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtdmFyaWFudDogbm9ybWFsOwogIHRleHQtcmVuZGVyaW5nOiBhdXRvOwogIGxpbmUtaGVpZ2h0OiAxOyB9CgouZmEtbGcgewogIGZvbnQtc2l6ZTogMS4zMzMzM2VtOwogIGxpbmUtaGVpZ2h0OiAwLjc1ZW07CiAgdmVydGljYWwtYWxpZ246IC0uMDY2N2VtOyB9CgouZmEteHMgewogIGZvbnQtc2l6ZTogLjc1ZW07IH0KCi5mYS1zbSB7CiAgZm9udC1zaXplOiAuODc1ZW07IH0KCi5mYS0xeCB7CiAgZm9udC1zaXplOiAxZW07IH0KCi5mYS0yeCB7CiAgZm9udC1zaXplOiAyZW07IH0KCi5mYS0zeCB7CiAgZm9udC1zaXplOiAzZW07IH0KCi5mYS00eCB7CiAgZm9udC1zaXplOiA0ZW07IH0KCi5mYS01eCB7CiAgZm9udC1zaXplOiA1ZW07IH0KCi5mYS02eCB7CiAgZm9udC1zaXplOiA2ZW07IH0KCi5mYS03eCB7CiAgZm9udC1zaXplOiA3ZW07IH0KCi5mYS04eCB7CiAgZm9udC1zaXplOiA4ZW07IH0KCi5mYS05eCB7CiAgZm9udC1zaXplOiA5ZW07IH0KCi5mYS0xMHggewogIGZvbnQtc2l6ZTogMTBlbTsgfQoKLmZhLWZ3IHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgd2lkdGg6IDEuMjVlbTsgfQoKLmZhLXVsIHsKICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CiAgbWFyZ2luLWxlZnQ6IDIuNWVtOwogIHBhZGRpbmctbGVmdDogMDsgfQogIC5mYS11bCA+IGxpIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfQoKLmZhLWxpIHsKICBsZWZ0OiAtMmVtOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgd2lkdGg6IDJlbTsKICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfQoKLmZhLWJvcmRlciB7CiAgYm9yZGVyOiBzb2xpZCAwLjA4ZW0gI2VlZTsKICBib3JkZXItcmFkaXVzOiAuMWVtOwogIHBhZGRpbmc6IC4yZW0gLjI1ZW0gLjE1ZW07IH0KCi5mYS1wdWxsLWxlZnQgewogIGZsb2F0OiBsZWZ0OyB9CgouZmEtcHVsbC1yaWdodCB7CiAgZmxvYXQ6IHJpZ2h0OyB9CgouZmEuZmEtcHVsbC1sZWZ0LAouZmFzLmZhLXB1bGwtbGVmdCwKLmZhci5mYS1wdWxsLWxlZnQsCi5mYWwuZmEtcHVsbC1sZWZ0LAouZmFiLmZhLXB1bGwtbGVmdCB7CiAgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9CgouZmEuZmEtcHVsbC1yaWdodCwKLmZhcy5mYS1wdWxsLXJpZ2h0LAouZmFyLmZhLXB1bGwtcmlnaHQsCi5mYWwuZmEtcHVsbC1yaWdodCwKLmZhYi5mYS1wdWxsLXJpZ2h0IHsKICBtYXJnaW4tbGVmdDogLjNlbTsgfQoKLmZhLXNwaW4gewogIC13ZWJraXQtYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjsKICAgICAgICAgIGFuaW1hdGlvbjogZmEtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7IH0KCi5mYS1wdWxzZSB7CiAgLXdlYmtpdC1hbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7CiAgICAgICAgICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7IH0KCkAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluIHsKICAwJSB7CiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfQogIDEwMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH0KCkBrZXlmcmFtZXMgZmEtc3BpbiB7CiAgMCUgewogICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH0KICAxMDAlIHsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9CgouZmEtcm90YXRlLTkwIHsKICAtbXMtZmlsdGVyOiAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MSkiOwogIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOwogICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9CgouZmEtcm90YXRlLTE4MCB7CiAgLW1zLWZpbHRlcjogInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIpIjsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7CiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9CgouZmEtcm90YXRlLTI3MCB7CiAgLW1zLWZpbHRlcjogInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTMpIjsKICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7CiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB9CgouZmEtZmxpcC1ob3Jpem9udGFsIHsKICAtbXMtZmlsdGVyOiAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MCwgbWlycm9yPTEpIjsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLTEsIDEpOwogICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7IH0KCi5mYS1mbGlwLXZlcnRpY2FsIHsKICAtbXMtZmlsdGVyOiAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MiwgbWlycm9yPTEpIjsKICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgLTEpOwogICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7IH0KCi5mYS1mbGlwLWhvcml6b250YWwuZmEtZmxpcC12ZXJ0aWNhbCB7CiAgLW1zLWZpbHRlcjogInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKSI7CiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7CiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7IH0KCjpyb290IC5mYS1yb3RhdGUtOTAsCjpyb290IC5mYS1yb3RhdGUtMTgwLAo6cm9vdCAuZmEtcm90YXRlLTI3MCwKOnJvb3QgLmZhLWZsaXAtaG9yaXpvbnRhbCwKOnJvb3QgLmZhLWZsaXAtdmVydGljYWwgewogIC13ZWJraXQtZmlsdGVyOiBub25lOwogICAgICAgICAgZmlsdGVyOiBub25lOyB9CgouZmEtc3RhY2sgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBoZWlnaHQ6IDJlbTsKICBsaW5lLWhlaWdodDogMmVtOwogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogIHdpZHRoOiAyZW07IH0KCi5mYS1zdGFjay0xeCwKLmZhLXN0YWNrLTJ4IHsKICBsZWZ0OiAwOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgd2lkdGg6IDEwMCU7IH0KCi5mYS1zdGFjay0xeCB7CiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH0KCi5mYS1zdGFjay0yeCB7CiAgZm9udC1zaXplOiAyZW07IH0KCi5mYS1pbnZlcnNlIHsKICBjb2xvcjogI2ZmZjsgfQoKLyogRm9udCBBd2Vzb21lIHVzZXMgdGhlIFVuaWNvZGUgUHJpdmF0ZSBVc2UgQXJlYSAoUFVBKSB0byBlbnN1cmUgc2NyZWVuCnJlYWRlcnMgZG8gbm90IHJlYWQgb2ZmIHJhbmRvbSBjaGFyYWN0ZXJzIHRoYXQgcmVwcmVzZW50IGljb25zICovCi5mYS01MDBweDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2ZSI7IH0KCi5mYS1hY2Nlc3NpYmxlLWljb246YmVmb3JlIHsKICBjb250ZW50OiAiXGYzNjgiOyB9CgouZmEtYWNjdXNvZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzNjkiOyB9CgouZmEtYWRkcmVzcy1ib29rOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmI5IjsgfQoKLmZhLWFkZHJlc3MtY2FyZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJiYiI7IH0KCi5mYS1hZGp1c3Q6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNDIiOyB9CgouZmEtYWRuOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTcwIjsgfQoKLmZhLWFkdmVyc2FsOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzZhIjsgfQoKLmZhLWFmZmlsaWF0ZXRoZW1lOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzZiIjsgfQoKLmZhLWFsZ29saWE6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzNmMiOyB9CgouZmEtYWxpZ24tY2VudGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDM3IjsgfQoKLmZhLWFsaWduLWp1c3RpZnk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMzkiOyB9CgouZmEtYWxpZ24tbGVmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAzNiI7IH0KCi5mYS1hbGlnbi1yaWdodDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAzOCI7IH0KCi5mYS1hbGxlcmdpZXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NjEiOyB9CgouZmEtYW1hem9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjcwIjsgfQoKLmZhLWFtYXpvbi1wYXk6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MmMiOyB9CgouZmEtYW1idWxhbmNlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGY5IjsgfQoKLmZhLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmEzIjsgfQoKLmZhLWFtaWxpYTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM2ZCI7IH0KCi5mYS1hbmNob3I6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxM2QiOyB9CgouZmEtYW5kcm9pZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE3YiI7IH0KCi5mYS1hbmdlbGxpc3Q6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMDkiOyB9CgouZmEtYW5nbGUtZG91YmxlLWRvd246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMDMiOyB9CgouZmEtYW5nbGUtZG91YmxlLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMDAiOyB9CgouZmEtYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMTAxIjsgfQoKLmZhLWFuZ2xlLWRvdWJsZS11cDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEwMiI7IH0KCi5mYS1hbmdsZS1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTA3IjsgfQoKLmZhLWFuZ2xlLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMDQiOyB9CgouZmEtYW5nbGUtcmlnaHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMDUiOyB9CgouZmEtYW5nbGUtdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMDYiOyB9CgouZmEtYW5ncnljcmVhdGl2ZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM2ZSI7IH0KCi5mYS1hbmd1bGFyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDIwIjsgfQoKLmZhLWFwcC1zdG9yZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM2ZiI7IH0KCi5mYS1hcHAtc3RvcmUtaW9zOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzcwIjsgfQoKLmZhLWFwcGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzcxIjsgfQoKLmZhLWFwcGxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTc5IjsgfQoKLmZhLWFwcGxlLXBheTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxNSI7IH0KCi5mYS1hcmNoaXZlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTg3IjsgfQoKLmZhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM1OCI7IH0KCi5mYS1hcnJvdy1hbHQtY2lyY2xlLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzNTkiOyB9CgouZmEtYXJyb3ctYWx0LWNpcmNsZS1yaWdodDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM1YSI7IH0KCi5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzViIjsgfQoKLmZhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGFiIjsgfQoKLmZhLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMGE4IjsgfQoKLmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBhOSI7IH0KCi5mYS1hcnJvdy1jaXJjbGUtdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYWEiOyB9CgouZmEtYXJyb3ctZG93bjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA2MyI7IH0KCi5mYS1hcnJvdy1sZWZ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDYwIjsgfQoKLmZhLWFycm93LXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDYxIjsgfQoKLmZhLWFycm93LXVwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDYyIjsgfQoKLmZhLWFycm93cy1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYjIiOyB9CgouZmEtYXJyb3dzLWFsdC1oOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzM3IjsgfQoKLmZhLWFycm93cy1hbHQtdjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjMzOCI7IH0KCi5mYS1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYTIiOyB9CgouZmEtYXN0ZXJpc2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNjkiOyB9CgouZmEtYXN5bW1ldHJpazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM3MiI7IH0KCi5mYS1hdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFmYSI7IH0KCi5mYS1hdWRpYmxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzczIjsgfQoKLmZhLWF1ZGlvLWRlc2NyaXB0aW9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjllIjsgfQoKLmZhLWF1dG9wcmVmaXhlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxYyI7IH0KCi5mYS1hdmlhbmV4OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzc0IjsgfQoKLmZhLWF2aWF0bzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQyMSI7IH0KCi5mYS1hd3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzNzUiOyB9CgouZmEtYmFja3dhcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNGEiOyB9CgouZmEtYmFsYW5jZS1zY2FsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI0ZSI7IH0KCi5mYS1iYW46YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNWUiOyB9CgouZmEtYmFuZC1haWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NjIiOyB9CgouZmEtYmFuZGNhbXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyZDUiOyB9CgouZmEtYmFyY29kZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAyYSI7IH0KCi5mYS1iYXJzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGM5IjsgfQoKLmZhLWJhc2ViYWxsLWJhbGw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MzMiOyB9CgouZmEtYmFza2V0YmFsbC1iYWxsOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDM0IjsgfQoKLmZhLWJhdGg6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyY2QiOyB9CgouZmEtYmF0dGVyeS1lbXB0eTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI0NCI7IH0KCi5mYS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNDAiOyB9CgouZmEtYmF0dGVyeS1oYWxmOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjQyIjsgfQoKLmZhLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI0MyI7IH0KCi5mYS1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjQxIjsgfQoKLmZhLWJlZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIzNiI7IH0KCi5mYS1iZWVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGZjIjsgfQoKLmZhLWJlaGFuY2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYjQiOyB9CgouZmEtYmVoYW5jZS1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYjUiOyB9CgouZmEtYmVsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBmMyI7IH0KCi5mYS1iZWxsLXNsYXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWY2IjsgfQoKLmZhLWJpY3ljbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMDYiOyB9CgouZmEtYmltb2JqZWN0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzc4IjsgfQoKLmZhLWJpbm9jdWxhcnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZTUiOyB9CgouZmEtYmlydGhkYXktY2FrZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFmZCI7IH0KCi5mYS1iaXRidWNrZXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNzEiOyB9CgouZmEtYml0Y29pbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM3OSI7IH0KCi5mYS1iaXR5OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzdhIjsgfQoKLmZhLWJsYWNrLXRpZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI3ZSI7IH0KCi5mYS1ibGFja2JlcnJ5OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzdiIjsgfQoKLmZhLWJsZW5kZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MTciOyB9CgouZmEtYmxpbmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyOWQiOyB9CgouZmEtYmxvZ2dlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM3YyI7IH0KCi5mYS1ibG9nZ2VyLWI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzN2QiOyB9CgouZmEtYmx1ZXRvb3RoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjkzIjsgfQoKLmZhLWJsdWV0b290aC1iOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjk0IjsgfQoKLmZhLWJvbGQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMzIiOyB9CgouZmEtYm9sdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBlNyI7IH0KCi5mYS1ib21iOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWUyIjsgfQoKLmZhLWJvb2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMmQiOyB9CgouZmEtYm9vay1vcGVuOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTE4IjsgfQoKLmZhLWJvb2ttYXJrOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDJlIjsgfQoKLmZhLWJvd2xpbmctYmFsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQzNiI7IH0KCi5mYS1ib3g6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NjYiOyB9CgouZmEtYm94LW9wZW46YmVmb3JlIHsKICBjb250ZW50OiAiXGY0OWUiOyB9CgouZmEtYm94ZXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NjgiOyB9CgouZmEtYnJhaWxsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJhMSI7IH0KCi5mYS1icmllZmNhc2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYjEiOyB9CgouZmEtYnJpZWZjYXNlLW1lZGljYWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NjkiOyB9CgouZmEtYnJvYWRjYXN0LXRvd2VyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTE5IjsgfQoKLmZhLWJyb29tOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTFhIjsgfQoKLmZhLWJ0YzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE1YSI7IH0KCi5mYS1idWc6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxODgiOyB9CgouZmEtYnVpbGRpbmc6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYWQiOyB9CgouZmEtYnVsbGhvcm46YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYTEiOyB9CgouZmEtYnVsbHNleWU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNDAiOyB9CgouZmEtYnVybjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ2YSI7IH0KCi5mYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzdmIjsgfQoKLmZhLWJ1czpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIwNyI7IH0KCi5mYS1idXlzZWxsYWRzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjBkIjsgfQoKLmZhLWNhbGN1bGF0b3I6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZWMiOyB9CgouZmEtY2FsZW5kYXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMzMiOyB9CgouZmEtY2FsZW5kYXItYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDczIjsgfQoKLmZhLWNhbGVuZGFyLWNoZWNrOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjc0IjsgfQoKLmZhLWNhbGVuZGFyLW1pbnVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjcyIjsgfQoKLmZhLWNhbGVuZGFyLXBsdXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNzEiOyB9CgouZmEtY2FsZW5kYXItdGltZXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNzMiOyB9CgouZmEtY2FtZXJhOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDMwIjsgfQoKLmZhLWNhbWVyYS1yZXRybzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA4MyI7IH0KCi5mYS1jYXBzdWxlczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ2YiI7IH0KCi5mYS1jYXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYjkiOyB9CgouZmEtY2FyZXQtZG93bjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBkNyI7IH0KCi5mYS1jYXJldC1sZWZ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMGQ5IjsgfQoKLmZhLWNhcmV0LXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMGRhIjsgfQoKLmZhLWNhcmV0LXNxdWFyZS1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTUwIjsgfQoKLmZhLWNhcmV0LXNxdWFyZS1sZWZ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMTkxIjsgfQoKLmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE1MiI7IH0KCi5mYS1jYXJldC1zcXVhcmUtdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNTEiOyB9CgouZmEtY2FyZXQtdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZDgiOyB9CgouZmEtY2FydC1hcnJvdy1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjE4IjsgfQoKLmZhLWNhcnQtcGx1czpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIxNyI7IH0KCi5mYS1jYy1hbWF6b24tcGF5OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDJkIjsgfQoKLmZhLWNjLWFtZXg6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZjMiOyB9CgouZmEtY2MtYXBwbGUtcGF5OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDE2IjsgfQoKLmZhLWNjLWRpbmVycy1jbHViOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjRjIjsgfQoKLmZhLWNjLWRpc2NvdmVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWYyIjsgfQoKLmZhLWNjLWpjYjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI0YiI7IH0KCi5mYS1jYy1tYXN0ZXJjYXJkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWYxIjsgfQoKLmZhLWNjLXBheXBhbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFmNCI7IH0KCi5mYS1jYy1zdHJpcGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZjUiOyB9CgouZmEtY2MtdmlzYTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFmMCI7IH0KCi5mYS1jZW50ZXJjb2RlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzgwIjsgfQoKLmZhLWNlcnRpZmljYXRlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGEzIjsgfQoKLmZhLWNoYWxrYm9hcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MWIiOyB9CgouZmEtY2hhbGtib2FyZC10ZWFjaGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTFjIjsgfQoKLmZhLWNoYXJ0LWFyZWE6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZmUiOyB9CgouZmEtY2hhcnQtYmFyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDgwIjsgfQoKLmZhLWNoYXJ0LWxpbmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMDEiOyB9CgouZmEtY2hhcnQtcGllOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjAwIjsgfQoKLmZhLWNoZWNrOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDBjIjsgfQoKLmZhLWNoZWNrLWNpcmNsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA1OCI7IH0KCi5mYS1jaGVjay1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNGEiOyB9CgouZmEtY2hlc3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MzkiOyB9CgouZmEtY2hlc3MtYmlzaG9wOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDNhIjsgfQoKLmZhLWNoZXNzLWJvYXJkOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDNjIjsgfQoKLmZhLWNoZXNzLWtpbmc6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0M2YiOyB9CgouZmEtY2hlc3Mta25pZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDQxIjsgfQoKLmZhLWNoZXNzLXBhd246YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NDMiOyB9CgouZmEtY2hlc3MtcXVlZW46YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NDUiOyB9CgouZmEtY2hlc3Mtcm9vazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ0NyI7IH0KCi5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTNhIjsgfQoKLmZhLWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMzciOyB9CgouZmEtY2hldnJvbi1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMzgiOyB9CgouZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMzkiOyB9CgouZmEtY2hldnJvbi1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDc4IjsgfQoKLmZhLWNoZXZyb24tbGVmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA1MyI7IH0KCi5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDU0IjsgfQoKLmZhLWNoZXZyb24tdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNzciOyB9CgouZmEtY2hpbGQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYWUiOyB9CgouZmEtY2hyb21lOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjY4IjsgfQoKLmZhLWNodXJjaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUxZCI7IH0KCi5mYS1jaXJjbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMTEiOyB9CgouZmEtY2lyY2xlLW5vdGNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWNlIjsgfQoKLmZhLWNsaXBib2FyZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjMyOCI7IH0KCi5mYS1jbGlwYm9hcmQtY2hlY2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NmMiOyB9CgouZmEtY2xpcGJvYXJkLWxpc3Q6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NmQiOyB9CgouZmEtY2xvY2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMTciOyB9CgouZmEtY2xvbmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNGQiOyB9CgouZmEtY2xvc2VkLWNhcHRpb25pbmc6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMGEiOyB9CgouZmEtY2xvdWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYzIiOyB9CgouZmEtY2xvdWQtZG93bmxvYWQtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzgxIjsgfQoKLmZhLWNsb3VkLXVwbG9hZC1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzODIiOyB9CgouZmEtY2xvdWRzY2FsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM4MyI7IH0KCi5mYS1jbG91ZHNtaXRoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzg0IjsgfQoKLmZhLWNsb3VkdmVyc2lmeTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM4NSI7IH0KCi5mYS1jb2RlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTIxIjsgfQoKLmZhLWNvZGUtYnJhbmNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTI2IjsgfQoKLmZhLWNvZGVwZW46YmVmb3JlIHsKICBjb250ZW50OiAiXGYxY2IiOyB9CgouZmEtY29kaWVwaWU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyODQiOyB9CgouZmEtY29mZmVlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGY0IjsgfQoKLmZhLWNvZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxMyI7IH0KCi5mYS1jb2dzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDg1IjsgfQoKLmZhLWNvaW5zOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTFlIjsgfQoKLmZhLWNvbHVtbnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZGIiOyB9CgouZmEtY29tbWVudDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA3NSI7IH0KCi5mYS1jb21tZW50LWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI3YSI7IH0KCi5mYS1jb21tZW50LWRvdHM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0YWQiOyB9CgouZmEtY29tbWVudC1zbGFzaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRiMyI7IH0KCi5mYS1jb21tZW50czpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA4NiI7IH0KCi5mYS1jb21wYWN0LWRpc2M6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MWYiOyB9CgouZmEtY29tcGFzczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE0ZSI7IH0KCi5mYS1jb21wcmVzczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA2NiI7IH0KCi5mYS1jb25uZWN0ZGV2ZWxvcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIwZSI7IH0KCi5mYS1jb250YW86YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNmQiOyB9CgouZmEtY29weTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBjNSI7IH0KCi5mYS1jb3B5cmlnaHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZjkiOyB9CgouZmEtY291Y2g6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0YjgiOyB9CgouZmEtY3BhbmVsOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzg4IjsgfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNWUiOyB9CgouZmEtY3JlYXRpdmUtY29tbW9ucy1ieTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRlNyI7IH0KCi5mYS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGU4IjsgfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZTkiOyB9CgouZmEtY3JlYXRpdmUtY29tbW9ucy1uYy1qcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRlYSI7IH0KCi5mYS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGViIjsgfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZWMiOyB9CgouZmEtY3JlYXRpdmUtY29tbW9ucy1wZC1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZWQiOyB9CgouZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRlZSI7IH0KCi5mYS1jcmVhdGl2ZS1jb21tb25zLXNhOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGVmIjsgfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmc6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZjAiOyB9CgouZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGYxIjsgfQoKLmZhLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZjIiOyB9CgouZmEtY3JlZGl0LWNhcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwOWQiOyB9CgouZmEtY3JvcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEyNSI7IH0KCi5mYS1jcm9zc2hhaXJzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDViIjsgfQoKLmZhLWNyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MjAiOyB9CgouZmEtY3Jvd246YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MjEiOyB9CgouZmEtY3NzMzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEzYyI7IH0KCi5mYS1jc3MzLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM4YiI7IH0KCi5mYS1jdWJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWIyIjsgfQoKLmZhLWN1YmVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWIzIjsgfQoKLmZhLWN1dDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBjNCI7IH0KCi5mYS1jdXR0bGVmaXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzhjIjsgfQoKLmZhLWQtYW5kLWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzOGQiOyB9CgouZmEtZGFzaGN1YmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMTAiOyB9CgouZmEtZGF0YWJhc2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYzAiOyB9CgouZmEtZGVhZjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJhNCI7IH0KCi5mYS1kZWxpY2lvdXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYTUiOyB9CgouZmEtZGVwbG95ZG9nOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzhlIjsgfQoKLmZhLWRlc2twcm86YmVmb3JlIHsKICBjb250ZW50OiAiXGYzOGYiOyB9CgouZmEtZGVza3RvcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEwOCI7IH0KCi5mYS1kZXZpYW50YXJ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMWJkIjsgfQoKLmZhLWRpYWdub3NlczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ3MCI7IH0KCi5mYS1kaWNlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTIyIjsgfQoKLmZhLWRpY2UtZml2ZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUyMyI7IH0KCi5mYS1kaWNlLWZvdXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MjQiOyB9CgouZmEtZGljZS1vbmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MjUiOyB9CgouZmEtZGljZS1zaXg6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MjYiOyB9CgouZmEtZGljZS10aHJlZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUyNyI7IH0KCi5mYS1kaWNlLXR3bzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUyOCI7IH0KCi5mYS1kaWdnOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWE2IjsgfQoKLmZhLWRpZ2l0YWwtb2NlYW46YmVmb3JlIHsKICBjb250ZW50OiAiXGYzOTEiOyB9CgouZmEtZGlzY29yZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM5MiI7IH0KCi5mYS1kaXNjb3Vyc2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzOTMiOyB9CgouZmEtZGl2aWRlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTI5IjsgfQoKLmZhLWRuYTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ3MSI7IH0KCi5mYS1kb2NodWI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzOTQiOyB9CgouZmEtZG9ja2VyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzk1IjsgfQoKLmZhLWRvbGxhci1zaWduOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTU1IjsgfQoKLmZhLWRvbGx5OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDcyIjsgfQoKLmZhLWRvbGx5LWZsYXRiZWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NzQiOyB9CgouZmEtZG9uYXRlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGI5IjsgfQoKLmZhLWRvb3ItY2xvc2VkOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTJhIjsgfQoKLmZhLWRvb3Itb3BlbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUyYiI7IH0KCi5mYS1kb3QtY2lyY2xlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTkyIjsgfQoKLmZhLWRvdmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0YmEiOyB9CgouZmEtZG93bmxvYWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMTkiOyB9CgouZmEtZHJhZnQyZGlnaXRhbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM5NiI7IH0KCi5mYS1kcmliYmJsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE3ZCI7IH0KCi5mYS1kcmliYmJsZS1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzOTciOyB9CgouZmEtZHJvcGJveDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE2YiI7IH0KCi5mYS1kcnVwYWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYTkiOyB9CgouZmEtZHVtYmJlbGw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NGIiOyB9CgouZmEtZHlhbG9nOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzk5IjsgfQoKLmZhLWVhcmx5YmlyZHM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzOWEiOyB9CgouZmEtZWJheTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRmNCI7IH0KCi5mYS1lZGdlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjgyIjsgfQoKLmZhLWVkaXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNDQiOyB9CgouZmEtZWplY3Q6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNTIiOyB9CgouZmEtZWxlbWVudG9yOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDMwIjsgfQoKLmZhLWVsbGlwc2lzLWg6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNDEiOyB9CgouZmEtZWxsaXBzaXMtdjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE0MiI7IH0KCi5mYS1lbWJlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQyMyI7IH0KCi5mYS1lbXBpcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZDEiOyB9CgouZmEtZW52ZWxvcGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZTAiOyB9CgouZmEtZW52ZWxvcGUtb3BlbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJiNiI7IH0KCi5mYS1lbnZlbG9wZS1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxOTkiOyB9CgouZmEtZW52aXJhOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjk5IjsgfQoKLmZhLWVxdWFsczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUyYyI7IH0KCi5mYS1lcmFzZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMmQiOyB9CgouZmEtZXJsYW5nOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzlkIjsgfQoKLmZhLWV0aGVyZXVtOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDJlIjsgfQoKLmZhLWV0c3k6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyZDciOyB9CgouZmEtZXVyby1zaWduOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTUzIjsgfQoKLmZhLWV4Y2hhbmdlLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM2MiI7IH0KCi5mYS1leGNsYW1hdGlvbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEyYSI7IH0KCi5mYS1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNmEiOyB9CgouZmEtZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNzEiOyB9CgouZmEtZXhwYW5kOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDY1IjsgfQoKLmZhLWV4cGFuZC1hcnJvd3MtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzFlIjsgfQoKLmZhLWV4cGVkaXRlZHNzbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIzZSI7IH0KCi5mYS1leHRlcm5hbC1saW5rLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM1ZCI7IH0KCi5mYS1leHRlcm5hbC1saW5rLXNxdWFyZS1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzNjAiOyB9CgouZmEtZXllOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDZlIjsgfQoKLmZhLWV5ZS1kcm9wcGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWZiIjsgfQoKLmZhLWV5ZS1zbGFzaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA3MCI7IH0KCi5mYS1mYWNlYm9vazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA5YSI7IH0KCi5mYS1mYWNlYm9vay1mOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzllIjsgfQoKLmZhLWZhY2Vib29rLW1lc3NlbmdlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjM5ZiI7IH0KCi5mYS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwODIiOyB9CgouZmEtZmFzdC1iYWNrd2FyZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA0OSI7IH0KCi5mYS1mYXN0LWZvcndhcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNTAiOyB9CgouZmEtZmF4OmJlZm9yZSB7CiAgY29udGVudDogIlxmMWFjIjsgfQoKLmZhLWZlYXRoZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MmQiOyB9CgouZmEtZmVtYWxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTgyIjsgfQoKLmZhLWZpZ2h0ZXItamV0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMGZiIjsgfQoKLmZhLWZpbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNWIiOyB9CgouZmEtZmlsZS1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNWMiOyB9CgouZmEtZmlsZS1hcmNoaXZlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWM2IjsgfQoKLmZhLWZpbGUtYXVkaW86YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYzciOyB9CgouZmEtZmlsZS1jb2RlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWM5IjsgfQoKLmZhLWZpbGUtZXhjZWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYzMiOyB9CgouZmEtZmlsZS1pbWFnZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFjNSI7IH0KCi5mYS1maWxlLW1lZGljYWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NzciOyB9CgouZmEtZmlsZS1tZWRpY2FsLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ3OCI7IH0KCi5mYS1maWxlLXBkZjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFjMSI7IH0KCi5mYS1maWxlLXBvd2VycG9pbnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYzQiOyB9CgouZmEtZmlsZS12aWRlbzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFjOCI7IH0KCi5mYS1maWxlLXdvcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYzIiOyB9CgouZmEtZmlsbTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAwOCI7IH0KCi5mYS1maWx0ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYjAiOyB9CgouZmEtZmlyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA2ZCI7IH0KCi5mYS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEzNCI7IH0KCi5mYS1maXJlZm94OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjY5IjsgfQoKLmZhLWZpcnN0LWFpZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ3OSI7IH0KCi5mYS1maXJzdC1vcmRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJiMCI7IH0KCi5mYS1maXJzdC1vcmRlci1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MGEiOyB9CgouZmEtZmlyc3RkcmFmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNhMSI7IH0KCi5mYS1mbGFnOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDI0IjsgfQoKLmZhLWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTFlIjsgfQoKLmZhLWZsYXNrOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGMzIjsgfQoKLmZhLWZsaWNrcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE2ZSI7IH0KCi5mYS1mbGlwYm9hcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NGQiOyB9CgouZmEtZmx5OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDE3IjsgfQoKLmZhLWZvbGRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA3YiI7IH0KCi5mYS1mb2xkZXItb3BlbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA3YyI7IH0KCi5mYS1mb250OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDMxIjsgfQoKLmZhLWZvbnQtYXdlc29tZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJiNCI7IH0KCi5mYS1mb250LWF3ZXNvbWUtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzVjIjsgfQoKLmZhLWZvbnQtYXdlc29tZS1mbGFnOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDI1IjsgfQoKLmZhLWZvbnQtYXdlc29tZS1sb2dvLWZ1bGw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZTYiOyB9CgouZmEtZm9udGljb25zOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjgwIjsgfQoKLmZhLWZvbnRpY29ucy1maTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNhMiI7IH0KCi5mYS1mb290YmFsbC1iYWxsOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDRlIjsgfQoKLmZhLWZvcnQtYXdlc29tZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI4NiI7IH0KCi5mYS1mb3J0LWF3ZXNvbWUtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2EzIjsgfQoKLmZhLWZvcnVtYmVlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjExIjsgfQoKLmZhLWZvcndhcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNGUiOyB9CgouZmEtZm91cnNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE4MCI7IH0KCi5mYS1mcmVlLWNvZGUtY2FtcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJjNSI7IH0KCi5mYS1mcmVlYnNkOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2E0IjsgfQoKLmZhLWZyb2c6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MmUiOyB9CgouZmEtZnJvd246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMTkiOyB9CgouZmEtZnVsY3J1bTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUwYiI7IH0KCi5mYS1mdXRib2w6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZTMiOyB9CgouZmEtZ2FsYWN0aWMtcmVwdWJsaWM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MGMiOyB9CgouZmEtZ2FsYWN0aWMtc2VuYXRlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTBkIjsgfQoKLmZhLWdhbWVwYWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMWIiOyB9CgouZmEtZ2FzLXB1bXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MmYiOyB9CgouZmEtZ2F2ZWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZTMiOyB9CgouZmEtZ2VtOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2E1IjsgfQoKLmZhLWdlbmRlcmxlc3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMmQiOyB9CgouZmEtZ2V0LXBvY2tldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2NSI7IH0KCi5mYS1nZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2MCI7IH0KCi5mYS1nZy1jaXJjbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNjEiOyB9CgouZmEtZ2lmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA2YiI7IH0KCi5mYS1naXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZDMiOyB9CgouZmEtZ2l0LXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFkMiI7IH0KCi5mYS1naXRodWI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwOWIiOyB9CgouZmEtZ2l0aHViLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjExMyI7IH0KCi5mYS1naXRodWItc3F1YXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDkyIjsgfQoKLmZhLWdpdGtyYWtlbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNhNiI7IH0KCi5mYS1naXRsYWI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyOTYiOyB9CgouZmEtZ2l0dGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDI2IjsgfQoKLmZhLWdsYXNzLW1hcnRpbmk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMDAiOyB9CgouZmEtZ2xhc3NlczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUzMCI7IH0KCi5mYS1nbGlkZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJhNSI7IH0KCi5mYS1nbGlkZS1nOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmE2IjsgfQoKLmZhLWdsb2JlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGFjIjsgfQoKLmZhLWdvZm9yZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNhNyI7IH0KCi5mYS1nb2xmLWJhbGw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NTAiOyB9CgouZmEtZ29vZHJlYWRzOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2E4IjsgfQoKLmZhLWdvb2RyZWFkcy1nOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2E5IjsgfQoKLmZhLWdvb2dsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFhMCI7IH0KCi5mYS1nb29nbGUtZHJpdmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYWEiOyB9CgouZmEtZ29vZ2xlLXBsYXk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYWIiOyB9CgouZmEtZ29vZ2xlLXBsdXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYjMiOyB9CgouZmEtZ29vZ2xlLXBsdXMtZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBkNSI7IH0KCi5mYS1nb29nbGUtcGx1cy1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZDQiOyB9CgouZmEtZ29vZ2xlLXdhbGxldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFlZSI7IH0KCi5mYS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE5ZCI7IH0KCi5mYS1ncmF0aXBheTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE4NCI7IH0KCi5mYS1ncmF2OmJlZm9yZSB7CiAgY29udGVudDogIlxmMmQ2IjsgfQoKLmZhLWdyZWF0ZXItdGhhbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUzMSI7IH0KCi5mYS1ncmVhdGVyLXRoYW4tZXF1YWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MzIiOyB9CgouZmEtZ3JpcGZpcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYWMiOyB9CgouZmEtZ3J1bnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYWQiOyB9CgouZmEtZ3VscDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNhZSI7IH0KCi5mYS1oLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBmZCI7IH0KCi5mYS1oYWNrZXItbmV3czpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFkNCI7IH0KCi5mYS1oYWNrZXItbmV3cy1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYWYiOyB9CgouZmEtaGFuZC1ob2xkaW5nOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGJkIjsgfQoKLmZhLWhhbmQtaG9sZGluZy1oZWFydDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRiZSI7IH0KCi5mYS1oYW5kLWhvbGRpbmctdXNkOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGMwIjsgfQoKLmZhLWhhbmQtbGl6YXJkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjU4IjsgfQoKLmZhLWhhbmQtcGFwZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNTYiOyB9CgouZmEtaGFuZC1wZWFjZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI1YiI7IH0KCi5mYS1oYW5kLXBvaW50LWRvd246YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYTciOyB9CgouZmEtaGFuZC1wb2ludC1sZWZ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMGE1IjsgfQoKLmZhLWhhbmQtcG9pbnQtcmlnaHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYTQiOyB9CgouZmEtaGFuZC1wb2ludC11cDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBhNiI7IH0KCi5mYS1oYW5kLXBvaW50ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNWEiOyB9CgouZmEtaGFuZC1yb2NrOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjU1IjsgfQoKLmZhLWhhbmQtc2Npc3NvcnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNTciOyB9CgouZmEtaGFuZC1zcG9jazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI1OSI7IH0KCi5mYS1oYW5kczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRjMiI7IH0KCi5mYS1oYW5kcy1oZWxwaW5nOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGM0IjsgfQoKLmZhLWhhbmRzaGFrZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJiNSI7IH0KCi5mYS1oYXNodGFnOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjkyIjsgfQoKLmZhLWhkZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBhMCI7IH0KCi5mYS1oZWFkaW5nOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWRjIjsgfQoKLmZhLWhlYWRwaG9uZXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMjUiOyB9CgouZmEtaGVhcnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMDQiOyB9CgouZmEtaGVhcnRiZWF0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjFlIjsgfQoKLmZhLWhlbGljb3B0ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MzMiOyB9CgouZmEtaGlwczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ1MiI7IH0KCi5mYS1oaXJlLWEtaGVscGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2IwIjsgfQoKLmZhLWhpc3Rvcnk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZGEiOyB9CgouZmEtaG9ja2V5LXB1Y2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NTMiOyB9CgouZmEtaG9tZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxNSI7IH0KCi5mYS1ob29saTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQyNyI7IH0KCi5mYS1ob3NwaXRhbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBmOCI7IH0KCi5mYS1ob3NwaXRhbC1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0N2QiOyB9CgouZmEtaG9zcGl0YWwtc3ltYm9sOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDdlIjsgfQoKLmZhLWhvdGphcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNiMSI7IH0KCi5mYS1ob3VyZ2xhc3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNTQiOyB9CgouZmEtaG91cmdsYXNzLWVuZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI1MyI7IH0KCi5mYS1ob3VyZ2xhc3MtaGFsZjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI1MiI7IH0KCi5mYS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNTEiOyB9CgouZmEtaG91eno6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyN2MiOyB9CgouZmEtaHRtbDU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxM2IiOyB9CgouZmEtaHVic3BvdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNiMiI7IH0KCi5mYS1pLWN1cnNvcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI0NiI7IH0KCi5mYS1pZC1iYWRnZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJjMSI7IH0KCi5mYS1pZC1jYXJkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmMyIjsgfQoKLmZhLWlkLWNhcmQtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDdmIjsgfQoKLmZhLWltYWdlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDNlIjsgfQoKLmZhLWltYWdlczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjMwMiI7IH0KCi5mYS1pbWRiOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmQ4IjsgfQoKLmZhLWluYm94OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDFjIjsgfQoKLmZhLWluZGVudDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAzYyI7IH0KCi5mYS1pbmR1c3RyeTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI3NSI7IH0KCi5mYS1pbmZpbml0eTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUzNCI7IH0KCi5mYS1pbmZvOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTI5IjsgfQoKLmZhLWluZm8tY2lyY2xlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDVhIjsgfQoKLmZhLWluc3RhZ3JhbTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE2ZCI7IH0KCi5mYS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2YiI7IH0KCi5mYS1pb3hob3N0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjA4IjsgfQoKLmZhLWl0YWxpYzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAzMyI7IH0KCi5mYS1pdHVuZXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYjQiOyB9CgouZmEtaXR1bmVzLW5vdGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYjUiOyB9CgouZmEtamF2YTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRlNCI7IH0KCi5mYS1qZWRpLW9yZGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTBlIjsgfQoKLmZhLWplbmtpbnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYjYiOyB9CgouZmEtam9nZXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYjciOyB9CgouZmEtam9vbWxhOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWFhIjsgfQoKLmZhLWpzOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2I4IjsgfQoKLmZhLWpzLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNiOSI7IH0KCi5mYS1qc2ZpZGRsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFjYyI7IH0KCi5mYS1rZXk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwODQiOyB9CgouZmEta2V5YmFzZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRmNSI7IH0KCi5mYS1rZXlib2FyZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjExYyI7IH0KCi5mYS1rZXljZG46YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYmEiOyB9CgouZmEta2lja3N0YXJ0ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYmIiOyB9CgouZmEta2lja3N0YXJ0ZXItazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNiYyI7IH0KCi5mYS1raXdpLWJpcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MzUiOyB9CgouZmEta29ydnVlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDJmIjsgfQoKLmZhLWxhbmd1YWdlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWFiIjsgfQoKLmZhLWxhcHRvcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEwOSI7IH0KCi5mYS1sYXJhdmVsOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2JkIjsgfQoKLmZhLWxhc3RmbTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIwMiI7IH0KCi5mYS1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjAzIjsgfQoKLmZhLWxlYWY6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNmMiOyB9CgouZmEtbGVhbnB1YjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIxMiI7IH0KCi5mYS1sZW1vbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA5NCI7IH0KCi5mYS1sZXNzOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDFkIjsgfQoKLmZhLWxlc3MtdGhhbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUzNiI7IH0KCi5mYS1sZXNzLXRoYW4tZXF1YWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MzciOyB9CgouZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYmUiOyB9CgouZmEtbGV2ZWwtdXAtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2JmIjsgfQoKLmZhLWxpZmUtcmluZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFjZCI7IH0KCi5mYS1saWdodGJ1bGI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZWIiOyB9CgouZmEtbGluZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNjMCI7IH0KCi5mYS1saW5rOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGMxIjsgfQoKLmZhLWxpbmtlZGluOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDhjIjsgfQoKLmZhLWxpbmtlZGluLWluOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGUxIjsgfQoKLmZhLWxpbm9kZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJiOCI7IH0KCi5mYS1saW51eDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE3YyI7IH0KCi5mYS1saXJhLXNpZ246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxOTUiOyB9CgouZmEtbGlzdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAzYSI7IH0KCi5mYS1saXN0LWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAyMiI7IH0KCi5mYS1saXN0LW9sOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGNiIjsgfQoKLmZhLWxpc3QtdWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwY2EiOyB9CgouZmEtbG9jYXRpb24tYXJyb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMjQiOyB9CgouZmEtbG9jazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAyMyI7IH0KCi5mYS1sb2NrLW9wZW46YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYzEiOyB9CgouZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjMwOSI7IH0KCi5mYS1sb25nLWFycm93LWFsdC1sZWZ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzBhIjsgfQoKLmZhLWxvbmctYXJyb3ctYWx0LXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMzBiIjsgfQoKLmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMzBjIjsgfQoKLmZhLWxvdy12aXNpb246YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYTgiOyB9CgouZmEtbHlmdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNjMyI7IH0KCi5mYS1tYWdlbnRvOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2M0IjsgfQoKLmZhLW1hZ2ljOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGQwIjsgfQoKLmZhLW1hZ25ldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA3NiI7IH0KCi5mYS1tYWxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTgzIjsgfQoKLmZhLW1hbmRhbG9yaWFuOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTBmIjsgfQoKLmZhLW1hcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI3OSI7IH0KCi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDQxIjsgfQoKLmZhLW1hcC1tYXJrZXItYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2M1IjsgfQoKLmZhLW1hcC1waW46YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNzYiOyB9CgouZmEtbWFwLXNpZ25zOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjc3IjsgfQoKLmZhLW1hcnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMjIiOyB9CgouZmEtbWFycy1kb3VibGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMjciOyB9CgouZmEtbWFycy1zdHJva2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMjkiOyB9CgouZmEtbWFycy1zdHJva2UtaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIyYiI7IH0KCi5mYS1tYXJzLXN0cm9rZS12OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjJhIjsgfQoKLmZhLW1hc3RvZG9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGY2IjsgfQoKLmZhLW1heGNkbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEzNiI7IH0KCi5mYS1tZWRhcHBzOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2M2IjsgfQoKLmZhLW1lZGl1bTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIzYSI7IH0KCi5mYS1tZWRpdW0tbTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNjNyI7IH0KCi5mYS1tZWRraXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZmEiOyB9CgouZmEtbWVkcnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzYzgiOyB9CgouZmEtbWVldHVwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmUwIjsgfQoKLmZhLW1laDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjExYSI7IH0KCi5mYS1tZW1vcnk6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MzgiOyB9CgouZmEtbWVyY3VyeTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIyMyI7IH0KCi5mYS1taWNyb2NoaXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyZGIiOyB9CgouZmEtbWljcm9waG9uZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEzMCI7IH0KCi5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNjOSI7IH0KCi5mYS1taWNyb3Bob25lLWFsdC1zbGFzaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUzOSI7IH0KCi5mYS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTMxIjsgfQoKLmZhLW1pY3Jvc29mdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNjYSI7IH0KCi5mYS1taW51czpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA2OCI7IH0KCi5mYS1taW51cy1jaXJjbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNTYiOyB9CgouZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTQ2IjsgfQoKLmZhLW1peDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNjYiI7IH0KCi5mYS1taXhjbG91ZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI4OSI7IH0KCi5mYS1taXp1bmk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzY2MiOyB9CgouZmEtbW9iaWxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTBiIjsgfQoKLmZhLW1vYmlsZS1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzY2QiOyB9CgouZmEtbW9keDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI4NSI7IH0KCi5mYS1tb25lcm86YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZDAiOyB9CgouZmEtbW9uZXktYmlsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBkNiI7IH0KCi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNkMSI7IH0KCi5mYS1tb25leS1iaWxsLXdhdmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1M2EiOyB9CgouZmEtbW9uZXktYmlsbC13YXZlLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUzYiI7IH0KCi5mYS1tb25leS1jaGVjazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUzYyI7IH0KCi5mYS1tb25leS1jaGVjay1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1M2QiOyB9CgouZmEtbW9vbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE4NiI7IH0KCi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjFjIjsgfQoKLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNDUiOyB9CgouZmEtbXVzaWM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMDEiOyB9CgouZmEtbmFwc3RlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNkMiI7IH0KCi5mYS1uZXV0ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMmMiOyB9CgouZmEtbmV3c3BhcGVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWVhIjsgfQoKLmZhLW5pbnRlbmRvLXN3aXRjaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxOCI7IH0KCi5mYS1ub2RlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDE5IjsgfQoKLmZhLW5vZGUtanM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZDMiOyB9CgouZmEtbm90LWVxdWFsOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTNlIjsgfQoKLmZhLW5vdGVzLW1lZGljYWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ODEiOyB9CgouZmEtbnBtOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2Q0IjsgfQoKLmZhLW5zODpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNkNSI7IH0KCi5mYS1udXRyaXRpb25peDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNkNiI7IH0KCi5mYS1vYmplY3QtZ3JvdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNDciOyB9CgouZmEtb2JqZWN0LXVuZ3JvdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNDgiOyB9CgouZmEtb2Rub2tsYXNzbmlraTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2MyI7IH0KCi5mYS1vZG5va2xhc3NuaWtpLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2NCI7IH0KCi5mYS1vbGQtcmVwdWJsaWM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MTAiOyB9CgouZmEtb3BlbmNhcnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyM2QiOyB9CgouZmEtb3BlbmlkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTliIjsgfQoKLmZhLW9wZXJhOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjZhIjsgfQoKLmZhLW9wdGluLW1vbnN0ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyM2MiOyB9CgouZmEtb3NpOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDFhIjsgfQoKLmZhLW91dGRlbnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwM2IiOyB9CgouZmEtcGFnZTQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZDciOyB9CgouZmEtcGFnZWxpbmVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMThjIjsgfQoKLmZhLXBhaW50LWJydXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWZjIjsgfQoKLmZhLXBhbGV0dGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1M2YiOyB9CgouZmEtcGFsZmVkOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2Q4IjsgfQoKLmZhLXBhbGxldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ4MiI7IH0KCi5mYS1wYXBlci1wbGFuZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFkOCI7IH0KCi5mYS1wYXBlcmNsaXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYzYiOyB9CgouZmEtcGFyYWNodXRlLWJveDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRjZCI7IH0KCi5mYS1wYXJhZ3JhcGg6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZGQiOyB9CgouZmEtcGFya2luZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU0MCI7IH0KCi5mYS1wYXN0ZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBlYSI7IH0KCi5mYS1wYXRyZW9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2Q5IjsgfQoKLmZhLXBhdXNlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDRjIjsgfQoKLmZhLXBhdXNlLWNpcmNsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI4YiI7IH0KCi5mYS1wYXc6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYjAiOyB9CgouZmEtcGF5cGFsOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWVkIjsgfQoKLmZhLXBlbi1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNGIiOyB9CgouZmEtcGVuY2lsLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjMwMyI7IH0KCi5mYS1wZW9wbGUtY2Fycnk6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0Y2UiOyB9CgouZmEtcGVyY2VudDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI5NSI7IH0KCi5mYS1wZXJjZW50YWdlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTQxIjsgfQoKLmZhLXBlcmlzY29wZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNkYSI7IH0KCi5mYS1waGFicmljYXRvcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNkYiI7IH0KCi5mYS1waG9lbml4LWZyYW1ld29yazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNkYyI7IH0KCi5mYS1waG9lbml4LXNxdWFkcm9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTExIjsgfQoKLmZhLXBob25lOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDk1IjsgfQoKLmZhLXBob25lLXNsYXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2RkIjsgfQoKLmZhLXBob25lLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA5OCI7IH0KCi5mYS1waG9uZS12b2x1bWU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYTAiOyB9CgouZmEtcGhwOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDU3IjsgfQoKLmZhLXBpZWQtcGlwZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYWUiOyB9CgouZmEtcGllZC1waXBlci1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYTgiOyB9CgouZmEtcGllZC1waXBlci1oYXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZTUiOyB9CgouZmEtcGllZC1waXBlci1wcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFhNyI7IH0KCi5mYS1waWdneS1iYW5rOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGQzIjsgfQoKLmZhLXBpbGxzOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDg0IjsgfQoKLmZhLXBpbnRlcmVzdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBkMiI7IH0KCi5mYS1waW50ZXJlc3QtcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIzMSI7IH0KCi5mYS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGQzIjsgfQoKLmZhLXBsYW5lOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDcyIjsgfQoKLmZhLXBsYXk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNGIiOyB9CgouZmEtcGxheS1jaXJjbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNDQiOyB9CgouZmEtcGxheXN0YXRpb246YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZGYiOyB9CgouZmEtcGx1ZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFlNiI7IH0KCi5mYS1wbHVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDY3IjsgfQoKLmZhLXBsdXMtY2lyY2xlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDU1IjsgfQoKLmZhLXBsdXMtc3F1YXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGZlIjsgfQoKLmZhLXBvZGNhc3Q6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyY2UiOyB9CgouZmEtcG9vOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmZlIjsgfQoKLmZhLXBvcnRyYWl0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2UwIjsgfQoKLmZhLXBvdW5kLXNpZ246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNTQiOyB9CgouZmEtcG93ZXItb2ZmOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDExIjsgfQoKLmZhLXByZXNjcmlwdGlvbi1ib3R0bGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ODUiOyB9CgouZmEtcHJlc2NyaXB0aW9uLWJvdHRsZS1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ODYiOyB9CgouZmEtcHJpbnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMmYiOyB9CgouZmEtcHJvY2VkdXJlczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ4NyI7IH0KCi5mYS1wcm9kdWN0LWh1bnQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyODgiOyB9CgouZmEtcHJvamVjdC1kaWFncmFtOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTQyIjsgfQoKLmZhLXB1c2hlZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNlMSI7IH0KCi5mYS1wdXp6bGUtcGllY2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMmUiOyB9CgouZmEtcHl0aG9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2UyIjsgfQoKLmZhLXFxOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWQ2IjsgfQoKLmZhLXFyY29kZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAyOSI7IH0KCi5mYS1xdWVzdGlvbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEyOCI7IH0KCi5mYS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNTkiOyB9CgouZmEtcXVpZGRpdGNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDU4IjsgfQoKLmZhLXF1aW5zY2FwZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ1OSI7IH0KCi5mYS1xdW9yYTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJjNCI7IH0KCi5mYS1xdW90ZS1sZWZ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMTBkIjsgfQoKLmZhLXF1b3RlLXJpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMTBlIjsgfQoKLmZhLXItcHJvamVjdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRmNyI7IH0KCi5mYS1yYW5kb206YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNzQiOyB9CgouZmEtcmF2ZWxyeTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJkOSI7IH0KCi5mYS1yZWFjdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxYiI7IH0KCi5mYS1yZWFkbWU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZDUiOyB9CgouZmEtcmViZWw6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZDAiOyB9CgouZmEtcmVjZWlwdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU0MyI7IH0KCi5mYS1yZWN5Y2xlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWI4IjsgfQoKLmZhLXJlZC1yaXZlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNlMyI7IH0KCi5mYS1yZWRkaXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYTEiOyB9CgouZmEtcmVkZGl0LWFsaWVuOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjgxIjsgfQoKLmZhLXJlZGRpdC1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYTIiOyB9CgouZmEtcmVkbzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxZSI7IH0KCi5mYS1yZWRvLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJmOSI7IH0KCi5mYS1yZWdpc3RlcmVkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjVkIjsgfQoKLmZhLXJlbmRhY3Q6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZTQiOyB9CgouZmEtcmVucmVuOmJlZm9yZSB7CiAgY29udGVudDogIlxmMThiIjsgfQoKLmZhLXJlcGx5OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2U1IjsgfQoKLmZhLXJlcGx5LWFsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEyMiI7IH0KCi5mYS1yZXBseWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZTYiOyB9CgouZmEtcmVzZWFyY2hnYXRlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGY4IjsgfQoKLmZhLXJlc29sdmluZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNlNyI7IH0KCi5mYS1yZXR3ZWV0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDc5IjsgfQoKLmZhLXJpYmJvbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRkNiI7IH0KCi5mYS1yb2FkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDE4IjsgfQoKLmZhLXJvYm90OmJlZm9yZSB7CiAgY29udGVudDogIlxmNTQ0IjsgfQoKLmZhLXJvY2tldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEzNSI7IH0KCi5mYS1yb2NrZXRjaGF0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2U4IjsgfQoKLmZhLXJvY2tybXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZTkiOyB9CgouZmEtcnNzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDllIjsgfQoKLmZhLXJzcy1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNDMiOyB9CgouZmEtcnVibGUtc2lnbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE1OCI7IH0KCi5mYS1ydWxlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU0NSI7IH0KCi5mYS1ydWxlci1jb21iaW5lZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU0NiI7IH0KCi5mYS1ydWxlci1ob3Jpem9udGFsOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTQ3IjsgfQoKLmZhLXJ1bGVyLXZlcnRpY2FsOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTQ4IjsgfQoKLmZhLXJ1cGVlLXNpZ246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNTYiOyB9CgouZmEtc2FmYXJpOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjY3IjsgfQoKLmZhLXNhc3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MWUiOyB9CgouZmEtc2F2ZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBjNyI7IH0KCi5mYS1zY2hsaXg6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZWEiOyB9CgouZmEtc2Nob29sOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTQ5IjsgfQoKLmZhLXNjcmV3ZHJpdmVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTRhIjsgfQoKLmZhLXNjcmliZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI4YSI7IH0KCi5mYS1zZWFyY2g6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMDIiOyB9CgouZmEtc2VhcmNoLW1pbnVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDEwIjsgfQoKLmZhLXNlYXJjaC1wbHVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDBlIjsgfQoKLmZhLXNlYXJjaGVuZ2luOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2ViIjsgfQoKLmZhLXNlZWRsaW5nOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGQ4IjsgfQoKLmZhLXNlbGxjYXN0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMmRhIjsgfQoKLmZhLXNlbGxzeTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIxMyI7IH0KCi5mYS1zZXJ2ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMzMiOyB9CgouZmEtc2VydmljZXN0YWNrOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2VjIjsgfQoKLmZhLXNoYXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDY0IjsgfQoKLmZhLXNoYXJlLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFlMCI7IH0KCi5mYS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWUxIjsgfQoKLmZhLXNoYXJlLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE0ZCI7IH0KCi5mYS1zaGVrZWwtc2lnbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIwYiI7IH0KCi5mYS1zaGllbGQtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2VkIjsgfQoKLmZhLXNoaXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMWEiOyB9CgouZmEtc2hpcHBpbmctZmFzdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ4YiI7IH0KCi5mYS1zaGlydHNpbmJ1bGs6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMTQiOyB9CgouZmEtc2hvZS1wcmludHM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1NGIiOyB9CgouZmEtc2hvcHBpbmctYmFnOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjkwIjsgfQoKLmZhLXNob3BwaW5nLWJhc2tldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI5MSI7IH0KCi5mYS1zaG9wcGluZy1jYXJ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDdhIjsgfQoKLmZhLXNob3dlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJjYyI7IH0KCi5mYS1zaWduOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGQ5IjsgfQoKLmZhLXNpZ24taW4tYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMmY2IjsgfQoKLmZhLXNpZ24tbGFuZ3VhZ2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYTciOyB9CgouZmEtc2lnbi1vdXQtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMmY1IjsgfQoKLmZhLXNpZ25hbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAxMiI7IH0KCi5mYS1zaW1wbHlidWlsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIxNSI7IH0KCi5mYS1zaXN0cml4OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2VlIjsgfQoKLmZhLXNpdGVtYXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZTgiOyB9CgouZmEtc2l0aDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUxMiI7IH0KCi5mYS1za3VsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU0YyI7IH0KCi5mYS1za3lhdGxhczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIxNiI7IH0KCi5mYS1za3lwZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE3ZSI7IH0KCi5mYS1zbGFjazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE5OCI7IH0KCi5mYS1zbGFjay1oYXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2VmIjsgfQoKLmZhLXNsaWRlcnMtaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFkZSI7IH0KCi5mYS1zbGlkZXNoYXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWU3IjsgfQoKLmZhLXNtaWxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTE4IjsgfQoKLmZhLXNtb2tpbmc6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0OGQiOyB9CgouZmEtc21va2luZy1iYW46YmVmb3JlIHsKICBjb250ZW50OiAiXGY1NGQiOyB9CgouZmEtc25hcGNoYXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYWIiOyB9CgouZmEtc25hcGNoYXQtZ2hvc3Q6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYWMiOyB9CgouZmEtc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmFkIjsgfQoKLmZhLXNub3dmbGFrZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJkYyI7IH0KCi5mYS1zb3J0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMGRjIjsgfQoKLmZhLXNvcnQtYWxwaGEtZG93bjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE1ZCI7IH0KCi5mYS1zb3J0LWFscGhhLXVwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTVlIjsgfQoKLmZhLXNvcnQtYW1vdW50LWRvd246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNjAiOyB9CgouZmEtc29ydC1hbW91bnQtdXA6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNjEiOyB9CgouZmEtc29ydC1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGRkIjsgfQoKLmZhLXNvcnQtbnVtZXJpYy1kb3duOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTYyIjsgfQoKLmZhLXNvcnQtbnVtZXJpYy11cDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE2MyI7IH0KCi5mYS1zb3J0LXVwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGRlIjsgfQoKLmZhLXNvdW5kY2xvdWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYmUiOyB9CgouZmEtc3BhY2Utc2h1dHRsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE5NyI7IH0KCi5mYS1zcGVha2FwOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2YzIjsgfQoKLmZhLXNwaW5uZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMTAiOyB9CgouZmEtc3BvdGlmeTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFiYyI7IH0KCi5mYS1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwYzgiOyB9CgouZmEtc3F1YXJlLWZ1bGw6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0NWMiOyB9CgouZmEtc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxOGQiOyB9CgouZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNmMiOyB9CgouZmEtc3RhcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAwNSI7IH0KCi5mYS1zdGFyLWhhbGY6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwODkiOyB9CgouZmEtc3RheWxpbmtlZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNmNSI7IH0KCi5mYS1zdGVhbTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFiNiI7IH0KCi5mYS1zdGVhbS1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYjciOyB9CgouZmEtc3RlYW0tc3ltYm9sOmJlZm9yZSB7CiAgY29udGVudDogIlxmM2Y2IjsgfQoKLmZhLXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwNDgiOyB9CgouZmEtc3RlcC1mb3J3YXJkOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDUxIjsgfQoKLmZhLXN0ZXRob3Njb3BlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGYxIjsgfQoKLmZhLXN0aWNrZXItbXVsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNmNyI7IH0KCi5mYS1zdGlja3ktbm90ZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI0OSI7IH0KCi5mYS1zdG9wOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDRkIjsgfQoKLmZhLXN0b3AtY2lyY2xlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjhkIjsgfQoKLmZhLXN0b3B3YXRjaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJmMiI7IH0KCi5mYS1zdG9yZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU0ZSI7IH0KCi5mYS1zdG9yZS1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1NGYiOyB9CgouZmEtc3RyYXZhOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDI4IjsgfQoKLmZhLXN0cmVhbTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU1MCI7IH0KCi5mYS1zdHJlZXQtdmlldzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIxZCI7IH0KCi5mYS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGNjIjsgfQoKLmZhLXN0cmlwZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQyOSI7IH0KCi5mYS1zdHJpcGUtczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQyYSI7IH0KCi5mYS1zdHJvb3B3YWZlbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU1MSI7IH0KCi5mYS1zdHVkaW92aW5hcmk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZjgiOyB9CgouZmEtc3R1bWJsZXVwb246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxYTQiOyB9CgouZmEtc3R1bWJsZXVwb24tY2lyY2xlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWEzIjsgfQoKLmZhLXN1YnNjcmlwdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEyYyI7IH0KCi5mYS1zdWJ3YXk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMzkiOyB9CgouZmEtc3VpdGNhc2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZjIiOyB9CgouZmEtc3VuOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTg1IjsgfQoKLmZhLXN1cGVycG93ZXJzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmRkIjsgfQoKLmZhLXN1cGVyc2NyaXB0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMTJiIjsgfQoKLmZhLXN1cHBsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNmOSI7IH0KCi5mYS1zeW5jOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDIxIjsgfQoKLmZhLXN5bmMtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMmYxIjsgfQoKLmZhLXN5cmluZ2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0OGUiOyB9CgouZmEtdGFibGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwY2UiOyB9CgouZmEtdGFibGUtdGVubmlzOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDVkIjsgfQoKLmZhLXRhYmxldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjEwYSI7IH0KCi5mYS10YWJsZXQtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2ZhIjsgfQoKLmZhLXRhYmxldHM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0OTAiOyB9CgouZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYzZmQiOyB9CgouZmEtdGFnOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDJiIjsgfQoKLmZhLXRhZ3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMmMiOyB9CgouZmEtdGFwZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRkYiI7IH0KCi5mYS10YXNrczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBhZSI7IH0KCi5mYS10YXhpOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWJhIjsgfQoKLmZhLXRlYW1zcGVhazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRmOSI7IH0KCi5mYS10ZWxlZ3JhbTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJjNiI7IH0KCi5mYS10ZWxlZ3JhbS1wbGFuZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjNmZSI7IH0KCi5mYS10ZW5jZW50LXdlaWJvOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWQ1IjsgfQoKLmZhLXRlcm1pbmFsOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTIwIjsgfQoKLmZhLXRleHQtaGVpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDM0IjsgfQoKLmZhLXRleHQtd2lkdGg6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMzUiOyB9CgouZmEtdGg6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMGEiOyB9CgouZmEtdGgtbGFyZ2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMDkiOyB9CgouZmEtdGgtbGlzdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAwYiI7IH0KCi5mYS10aGVtZWlzbGU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYjIiOyB9CgouZmEtdGhlcm1vbWV0ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0OTEiOyB9CgouZmEtdGhlcm1vbWV0ZXItZW1wdHk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyY2IiOyB9CgouZmEtdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJjNyI7IH0KCi5mYS10aGVybW9tZXRlci1oYWxmOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmM5IjsgfQoKLmZhLXRoZXJtb21ldGVyLXF1YXJ0ZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyY2EiOyB9CgouZmEtdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYzgiOyB9CgouZmEtdGh1bWJzLWRvd246YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNjUiOyB9CgouZmEtdGh1bWJzLXVwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTY0IjsgfQoKLmZhLXRodW1idGFjazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA4ZCI7IH0KCi5mYS10aWNrZXQtYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmM2ZmIjsgfQoKLmZhLXRpbWVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDBkIjsgfQoKLmZhLXRpbWVzLWNpcmNsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA1NyI7IH0KCi5mYS10aW50OmJlZm9yZSB7CiAgY29udGVudDogIlxmMDQzIjsgfQoKLmZhLXRvZ2dsZS1vZmY6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMDQiOyB9CgouZmEtdG9nZ2xlLW9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjA1IjsgfQoKLmZhLXRvb2xib3g6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1NTIiOyB9CgouZmEtdHJhZGUtZmVkZXJhdGlvbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUxMyI7IH0KCi5mYS10cmFkZW1hcms6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyNWMiOyB9CgouZmEtdHJhaW46YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMzgiOyB9CgouZmEtdHJhbnNnZW5kZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMjQiOyB9CgouZmEtdHJhbnNnZW5kZXItYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjI1IjsgfQoKLmZhLXRyYXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWY4IjsgfQoKLmZhLXRyYXNoLWFsdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJlZCI7IH0KCi5mYS10cmVlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWJiIjsgfQoKLmZhLXRyZWxsbzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE4MSI7IH0KCi5mYS10cmlwYWR2aXNvcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2MiI7IH0KCi5mYS10cm9waHk6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwOTEiOyB9CgouZmEtdHJ1Y2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwZDEiOyB9CgouZmEtdHJ1Y2stbG9hZGluZzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRkZSI7IH0KCi5mYS10cnVjay1tb3Zpbmc6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZGYiOyB9CgouZmEtdHNoaXJ0OmJlZm9yZSB7CiAgY29udGVudDogIlxmNTUzIjsgfQoKLmZhLXR0eTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFlNCI7IH0KCi5mYS10dW1ibHI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNzMiOyB9CgouZmEtdHVtYmxyLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE3NCI7IH0KCi5mYS10djpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjI2YyI7IH0KCi5mYS10d2l0Y2g6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxZTgiOyB9CgouZmEtdHdpdHRlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA5OSI7IH0KCi5mYS10d2l0dGVyLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjA4MSI7IH0KCi5mYS10eXBvMzpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQyYiI7IH0KCi5mYS11YmVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDAyIjsgfQoKLmZhLXVpa2l0OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDAzIjsgfQoKLmZhLXVtYnJlbGxhOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGU5IjsgfQoKLmZhLXVuZGVybGluZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBjZCI7IH0KCi5mYS11bmRvOmJlZm9yZSB7CiAgY29udGVudDogIlxmMGUyIjsgfQoKLmZhLXVuZG8tYWx0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMmVhIjsgfQoKLmZhLXVuaXJlZ2lzdHJ5OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDA0IjsgfQoKLmZhLXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyOWEiOyB9CgouZmEtdW5pdmVyc2l0eTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE5YyI7IH0KCi5mYS11bmxpbms6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxMjciOyB9CgouZmEtdW5sb2NrOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDljIjsgfQoKLmZhLXVubG9jay1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxM2UiOyB9CgouZmEtdW50YXBwZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQwNSI7IH0KCi5mYS11cGxvYWQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwOTMiOyB9CgouZmEtdXNiOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjg3IjsgfQoKLmZhLXVzZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYwMDciOyB9CgouZmEtdXNlci1hbHQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MDYiOyB9CgouZmEtdXNlci1hbHQtc2xhc2g6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZmEiOyB9CgouZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0ZmIiOyB9CgouZmEtdXNlci1jaGVjazpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRmYyI7IH0KCi5mYS11c2VyLWNpcmNsZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJiZCI7IH0KCi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGZkIjsgfQoKLmZhLXVzZXItY29nOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGZlIjsgfQoKLmZhLXVzZXItZWRpdDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRmZiI7IH0KCi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MDAiOyB9CgouZmEtdXNlci1ncmFkdWF0ZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjUwMSI7IH0KCi5mYS11c2VyLWxvY2s6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MDIiOyB9CgouZmEtdXNlci1tZDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBmMCI7IH0KCi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTAzIjsgfQoKLmZhLXVzZXItbmluamE6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MDQiOyB9CgouZmEtdXNlci1wbHVzOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjM0IjsgfQoKLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjFiIjsgfQoKLmZhLXVzZXItc2hpZWxkOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTA1IjsgfQoKLmZhLXVzZXItc2xhc2g6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MDYiOyB9CgouZmEtdXNlci10YWc6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MDciOyB9CgouZmEtdXNlci10aWU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MDgiOyB9CgouZmEtdXNlci10aW1lczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIzNSI7IH0KCi5mYS11c2VyczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBjMCI7IH0KCi5mYS11c2Vycy1jb2c6YmVmb3JlIHsKICBjb250ZW50OiAiXGY1MDkiOyB9CgouZmEtdXNzdW5uYWg6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MDciOyB9CgouZmEtdXRlbnNpbC1zcG9vbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJlNSI7IH0KCi5mYS11dGVuc2lsczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJlNyI7IH0KCi5mYS12YWFkaW46YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MDgiOyB9CgouZmEtdmVudXM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMjEiOyB9CgouZmEtdmVudXMtZG91YmxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjI2IjsgfQoKLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyMjgiOyB9CgouZmEtdmlhY29pbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIzNyI7IH0KCi5mYS12aWFkZW86YmVmb3JlIHsKICBjb250ZW50OiAiXGYyYTkiOyB9CgouZmEtdmlhZGVvLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJhYSI7IH0KCi5mYS12aWFsOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDkyIjsgfQoKLmZhLXZpYWxzOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDkzIjsgfQoKLmZhLXZpYmVyOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDA5IjsgfQoKLmZhLXZpZGVvOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDNkIjsgfQoKLmZhLXZpZGVvLXNsYXNoOmJlZm9yZSB7CiAgY29udGVudDogIlxmNGUyIjsgfQoKLmZhLXZpbWVvOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDBhIjsgfQoKLmZhLXZpbWVvLXNxdWFyZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE5NCI7IH0KCi5mYS12aW1lby12OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjdkIjsgfQoKLmZhLXZpbmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxY2EiOyB9CgouZmEtdms6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxODkiOyB9CgouZmEtdm52OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDBiIjsgfQoKLmZhLXZvbGxleWJhbGwtYmFsbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ1ZiI7IH0KCi5mYS12b2x1bWUtZG93bjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAyNyI7IH0KCi5mYS12b2x1bWUtb2ZmOmJlZm9yZSB7CiAgY29udGVudDogIlxmMDI2IjsgfQoKLmZhLXZvbHVtZS11cDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjAyOCI7IH0KCi5mYS12dWVqczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxZiI7IH0KCi5mYS13YWxraW5nOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTU0IjsgfQoKLmZhLXdhbGxldDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjU1NSI7IH0KCi5mYS13YXJlaG91c2U6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0OTQiOyB9CgouZmEtd2VpYm86YmVmb3JlIHsKICBjb250ZW50OiAiXGYxOGEiOyB9CgouZmEtd2VpZ2h0OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDk2IjsgfQoKLmZhLXdlaXhpbjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjFkNyI7IH0KCi5mYS13aGF0c2FwcDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjIzMiI7IH0KCi5mYS13aGF0c2FwcC1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MGMiOyB9CgouZmEtd2hlZWxjaGFpcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE5MyI7IH0KCi5mYS13aG1jczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQwZCI7IH0KCi5mYS13aWZpOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWViIjsgfQoKLmZhLXdpa2lwZWRpYS13OmJlZm9yZSB7CiAgY29udGVudDogIlxmMjY2IjsgfQoKLmZhLXdpbmRvdy1jbG9zZTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxMCI7IH0KCi5mYS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyZDAiOyB9CgouZmEtd2luZG93LW1pbmltaXplOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmQxIjsgfQoKLmZhLXdpbmRvdy1yZXN0b3JlOmJlZm9yZSB7CiAgY29udGVudDogIlxmMmQyIjsgfQoKLmZhLXdpbmRvd3M6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxN2EiOyB9CgouZmEtd2luZS1nbGFzczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjRlMyI7IH0KCi5mYS13b2xmLXBhY2stYmF0dGFsaW9uOmJlZm9yZSB7CiAgY29udGVudDogIlxmNTE0IjsgfQoKLmZhLXdvbi1zaWduOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTU5IjsgfQoKLmZhLXdvcmRwcmVzczpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjE5YSI7IH0KCi5mYS13b3JkcHJlc3Mtc2ltcGxlOmJlZm9yZSB7CiAgY29udGVudDogIlxmNDExIjsgfQoKLmZhLXdwYmVnaW5uZXI6YmVmb3JlIHsKICBjb250ZW50OiAiXGYyOTciOyB9CgouZmEtd3BleHBsb3JlcjpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjJkZSI7IH0KCi5mYS13cGZvcm1zOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjk4IjsgfQoKLmZhLXdyZW5jaDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjBhZCI7IH0KCi5mYS14LXJheTpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQ5NyI7IH0KCi5mYS14Ym94OmJlZm9yZSB7CiAgY29udGVudDogIlxmNDEyIjsgfQoKLmZhLXhpbmc6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNjgiOyB9CgouZmEteGluZy1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNjkiOyB9CgouZmEteS1jb21iaW5hdG9yOmJlZm9yZSB7CiAgY29udGVudDogIlxmMjNiIjsgfQoKLmZhLXlhaG9vOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTllIjsgfQoKLmZhLXlhbmRleDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxMyI7IH0KCi5mYS15YW5kZXgtaW50ZXJuYXRpb25hbDpiZWZvcmUgewogIGNvbnRlbnQ6ICJcZjQxNCI7IH0KCi5mYS15ZWxwOmJlZm9yZSB7CiAgY29udGVudDogIlxmMWU5IjsgfQoKLmZhLXllbi1zaWduOmJlZm9yZSB7CiAgY29udGVudDogIlxmMTU3IjsgfQoKLmZhLXlvYXN0OmJlZm9yZSB7CiAgY29udGVudDogIlxmMmIxIjsgfQoKLmZhLXlvdXR1YmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGYxNjciOyB9CgouZmEteW91dHViZS1zcXVhcmU6YmVmb3JlIHsKICBjb250ZW50OiAiXGY0MzEiOyB9Cgouc3Itb25seSB7CiAgYm9yZGVyOiAwOwogIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7CiAgaGVpZ2h0OiAxcHg7CiAgbWFyZ2luOiAtMXB4OwogIG92ZXJmbG93OiBoaWRkZW47CiAgcGFkZGluZzogMDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgd2lkdGg6IDFweDsgfQoKLnNyLW9ubHktZm9jdXNhYmxlOmFjdGl2ZSwgLnNyLW9ubHktZm9jdXNhYmxlOmZvY3VzIHsKICBjbGlwOiBhdXRvOwogIGhlaWdodDogYXV0bzsKICBtYXJnaW46IDA7CiAgb3ZlcmZsb3c6IHZpc2libGU7CiAgcG9zaXRpb246IHN0YXRpYzsKICB3aWR0aDogYXV0bzsgfQpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEJyYW5kcyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiBub3JtYWw7CiAgc3JjOiB1cmwoIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lL2ZhLWJyYW5kcy00MDAuZW90Iik7CiAgc3JjOiB1cmwoIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lL2ZhLWJyYW5kcy00MDBkNDFkLmVvdD8jaWVmaXgiKSBmb3JtYXQoImVtYmVkZGVkLW9wZW50eXBlIiksIHVybCgiLi4vZm9udHMvZm9udGF3ZXNvbWUvZmEtYnJhbmRzLTQwMC53b2ZmMiIpIGZvcm1hdCgid29mZjIiKSwgdXJsKCIuLi9mb250cy9mb250YXdlc29tZS9mYS1icmFuZHMtNDAwLndvZmYiKSBmb3JtYXQoIndvZmYiKSwgdXJsKCIuLi9mb250cy9mb250YXdlc29tZS9mYS1icmFuZHMtNDAwLnR0ZiIpIGZvcm1hdCgidHJ1ZXR5cGUiKSwgdXJsKCIuLi9mb250cy9mb250YXdlc29tZS9mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZSIpIGZvcm1hdCgic3ZnIik7IH0KCi5mYWIgewogIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgQnJhbmRzJzsgfQpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIHNyYzogdXJsKCIuLi9mb250cy9mb250YXdlc29tZS9mYS1yZWd1bGFyLTQwMC5lb3QiKTsKICBzcmM6IHVybCgiLi4vZm9udHMvZm9udGF3ZXNvbWUvZmEtcmVndWxhci00MDBkNDFkLmVvdD8jaWVmaXgiKSBmb3JtYXQoImVtYmVkZGVkLW9wZW50eXBlIiksIHVybCgiLi4vZm9udHMvZm9udGF3ZXNvbWUvZmEtcmVndWxhci00MDAud29mZjIiKSBmb3JtYXQoIndvZmYyIiksIHVybCgiLi4vZm9udHMvZm9udGF3ZXNvbWUvZmEtcmVndWxhci00MDAud29mZiIpIGZvcm1hdCgid29mZiIpLCB1cmwoIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lL2ZhLXJlZ3VsYXItNDAwLnR0ZiIpIGZvcm1hdCgidHJ1ZXR5cGUiKSwgdXJsKCIuLi9mb250cy9mb250YXdlc29tZS9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWUiKSBmb3JtYXQoInN2ZyIpOyB9CgouZmFyIHsKICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnOwogIGZvbnQtd2VpZ2h0OiA0MDA7IH0KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDkwMDsKICBzcmM6IHVybCgiLi4vZm9udHMvZm9udGF3ZXNvbWUvZmEtc29saWQtOTAwLmVvdCIpOwogIHNyYzogdXJsKCIuLi9mb250cy9mb250YXdlc29tZS9mYS1zb2xpZC05MDBkNDFkLmVvdD8jaWVmaXgiKSBmb3JtYXQoImVtYmVkZGVkLW9wZW50eXBlIiksIHVybCgiLi4vZm9udHMvZm9udGF3ZXNvbWUvZmEtc29saWQtOTAwLndvZmYyIikgZm9ybWF0KCJ3b2ZmMiIpLCB1cmwoIi4uL2ZvbnRzL2ZvbnRhd2Vzb21lL2ZhLXNvbGlkLTkwMC53b2ZmIikgZm9ybWF0KCJ3b2ZmIiksIHVybCgiLi4vZm9udHMvZm9udGF3ZXNvbWUvZmEtc29saWQtOTAwLnR0ZiIpIGZvcm1hdCgidHJ1ZXR5cGUiKSwgdXJsKCIuLi9mb250cy9mb250YXdlc29tZS9mYS1zb2xpZC05MDAuc3ZnI2ZvbnRhd2Vzb21lIikgZm9ybWF0KCJzdmciKTsgfQoKLmZhLAouZmFzIHsKICBmb250LWZhbWlseTogJ0ZvbnQgQXdlc29tZSA1IEZyZWUnOwogIGZvbnQtd2VpZ2h0OiA5MDA7IH0K"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"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":"walmartfundholdings.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.152.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/6jePbqXJhe8","date":"2026-07-27T13:34:28.825Z","timestamp":1785159268825,"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/6jePbqXJhe8\r\nCookie: __Secure-YNID=20.YT=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; YSC=KVevwPvGbos; __Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; VISITOR_INFO1_LIVE=mydA6aM0K4I; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%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 07:28:48 GMT\r\nexpires: Thu, 22 Jul 2027 07:28:48 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: 453940\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":27,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":17,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/i/productlogos/translate/v14/24px.svg","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.499Z","timestamp":1785159269499,"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/i/productlogos/translate/v14/24px.svg 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: 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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncontent-encoding: gzip\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\ncontent-length: 3340\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 10:10:10 GMT\r\nexpires: Fri, 23 Jul 2027 10:10:10 GMT\r\ncache-control: public, max-age=31536000\r\nage: 357859\r\nlast-modified: Wed, 20 Apr 2022 14:24:23 GMT\r\ncontent-type: image/svg+xml\r\nvary: Accept-Encoding\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":6225,"size_decoded":4178,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"2bd5c073a88b83ed74db88282a56ddfb","sha1":"d0ebfc376f8c6a44a8d4cd216817dcd7d0c33650","sha256":"ab5c23a05e39deed14d9d8262b0dce9f024f86105a27196cad37d14a3f516e09","sha512":"5c6c4a92e93fc0f6a675658cc84f6187fdebd3eee94efd07e24658736cba598f3bc7156b19834b13fb44c1d43fcb7df9fcca7f0a453037e30da76ba8f4b23b89","ssdeep":"96:+R2K3Z4n7tyVwip82hezk6227gLFoXhu1XuE20ot+pVY3YptWDzOzgXK3Zx:ql3KnxyGGMzb7noR20NTww33","tlshash":"c1d1e6f19309d815cd6a83d8cd9b8002aa1f25ddd50ac6cc7639fb3bd1a50eb1d2d7a4","first_seen":"2023-04-06T21:34:37Z","last_seen":"2026-07-30T06:08:30.861502Z","times_seen":77970,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCI+PHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjxkZWZzPjxwYXRoIGQ9Ik0yMS41IDVoLTkuMTdMMTEgMUgyLjVDMS42OCAxIDEgMS42OCAxIDIuNXYxNWMwIC44My42OCAxLjUgMS41IDEuNWg5LjE3TDEzIDIzaDguNWMuODIgMCAxLjUtLjY4IDEuNS0xLjV2LTE1YzAtLjgzLS42OC0xLjUtMS41LTEuNXoiIGlkPSJhIi8+PC9kZWZzPjxjbGlwUGF0aCBpZD0iYiI+PHVzZSBvdmVyZmxvdz0idmlzaWJsZSIgeGxpbms6aHJlZj0iI2EiLz48L2NsaXBQYXRoPjxnIGNsaXAtcGF0aD0idXJsKCNiKSI+PGltYWdlIGhlaWdodD0iMzEiIG9wYWNpdHk9Ii4yIiBvdmVyZmxvdz0idmlzaWJsZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMyAxKSIgd2lkdGg9IjI5IiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUIwQUFBQWZDQVlBQUFBYlc4WUVBQUFBQ1hCSVdYTUFBQXNTQUFBTEVnSFMzWDc4QUFBQSBHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFCUUJKUkVGVWVOcThWOHR1MjBZVXZYZG0rTENrIFJLaU13STFURkVYaFZaSmQxZ1c2Nnhla3Y5RFBxUHN2WGRVL1VhRHJvSnNrS3krQ0luQ2NHcEt0RnkyU00vZjJERVhaaWEwb2R0S1cgQWtGSjh6aHp6bjNTMFljdnBzKzc5RU1EYmozWWZndjRFTStYVE4vZkVPYjNaZzNBWG1xN2o2NEQ1L2UveC9FZnpaTW5YNWp4K0xGWiBMTHlwNnlORE96c2tZYjZSdWJGZHBiZHZLVWwySmMrZDlQdlA1ZG16VXlINlRWb1lYUU9xK0g1Zzl2YitjT05zTzltYUxwSXl5WlBVIGtaTkFwcG1oOVZwZzVrU1h3Q1NWSjUvVmkvcjhUbDczeTJGOWVQaWRKM29hZ2ErQjR2a1VnRis2RVcxbmR6MTFndk5kRGRMMWJETnIgeUtrQ1dPMTZ0aHlVR1dJSWVhZTJaR3ZuMW9mNXhGRXhvR0Y1ZUhnTTRBTlpzVzAzMlRmMDVNamVXK3htTktlZWRlV0FnOXRteXdQTSA2ckdZek9BUEJTZlE1U3MwTmY0cEFtUnJTbUJQMWVoSXhRNkRweEYxYVhhU0g1WDBiRGNBUjFhT3hMUlB0UGRyWnJ3bmQ1NVN4M2d6IElNTzcyT3dCcTlrbW94MFJTa0hIUk54clJKV0ZEYlFYS3BSMXhONGVPZngwTnFuTWRGSHVsWS9ydy8xUkFFNWNyRXZ2ZmZHQ3ZYL0UgVlVvT0MzTW0yNGVhTzZUeU5aamVCNUUrc0RMTXQydENxWkVXOGxjZ1BTVTJ4MEloS2xBWW9UUDR4VVR1ZVVNdkh2Skszb3VROGZmSCBIUDYySnBHZWcvVlNZY2lxTkFEYkhReHZZNWV0ZHI2NXloTlhsRzJCNXhqemdXZkhKb1NlWjVPbGJ1YXErY3pReVlTdnhhbDcwMWRKIFNXb2lnUk5xWEl0ak9SaHNDK3g3NE5mRHRQUTZhR1BrZ0FVbEdST3BUS0JRUjRnYkIxeDZmanozL0RLOEdzb0hqL1NWRzZwSkFDaSsgTmhRZEFwc1FKRlBDZWxpWUtJbWdlRUpteWxjM1h6dzV5cDl4bklNWU1rWnQ5SGpWaEsvR2VIdHFaSTUrS1VWSlh0U1ZRY3djWURQbyBGSTkzamhXK0RXU2p6WnJHdHMwTlFTd09aVEZvTWFNQmFseTZDVEZaRzJLWFV0M1oxYVF6QzM2cktyRkowY2dVYjZhWlJudVJ3anRJIGxvN0VxM0NMV1N5YTRlSjdhK1ROMmV1ZHZDbGJrMTdJdEZlcG9RTHJweVF5eGtaVGpCWUlpd3FuWHdGLzFtWGVyUWl2dHUrSG9ocDcgdGY3Y1dKbkNUZ0JsZUNRM2JCRWFQaWFDVFJYa05xQkx1OTU1bzJrditOeklJb2dEa0dsQUVmdXdMNTFEWWg5ejNzZEsxeTFBTHlYMiBGeEpMSzNGajMzOU5Zbk8xNlA0ZkVsOEo5SFVTYXl0eFRIRlJZcXJobko2MEFaVTJsTnBETk9VTGFaSDFGcUJYSlM0TGhOOEVDZW9zIE1nYkxXVXgzQUsreHY0K1pLTjZBQ3h4bFp3MHhEemRaS2o3WjZFMUFMeVErOTFXTmNsd2dJVTZ3d1JsaTd4VGt6akE4QlFDU0J4ZkwgK01VaGxuR01ETVlsZnNQdVdzZFNGNEdaYTIyNmlvMU1XNG56UHZrUWJXZ0RuSWxHWUhTQ1RVK1FiT0k5Qk50VFRCN2h4bUVJaCtGVCBLREpHWm9pVnBrQTZLbU5SajkwRTBkdVBObWFOeEoyOVFWaDBSeFdzT01OUmgwSnlESWs3TEJLMWl3NjJCVjFjTEthWHBZMm4rSFdzIEdrWmlkT1pFeXNwM2ZESzRLM1R2SzkwRWlzR2Y2YkQvazZDVHFEcEJadDZFb1RXY1NYUVU1bWhYMUZ2Tm0vWFJpeVFpYXcwWEttRGkgRVhMOWtkVjZGTU11OWt2cHlVRG9CM1NJQjV1WXhwMitmU3I5UDdOYTdJT2lwc1VweFo1QnFJU05UdzFyRnk2YkdyS29JakFiUzl1dSBFS29UMk5vd3FpV0o3Y3FNMEtEOWxUOFgydCtsS3ozUzJsNFovZTR2OXB0WHpjRnluOVpkOG5sSEhjalhhTlpzYUN2S3FsVzZkV1AyIElicjdzZEUyZTY4SDlzeStUdk41SjZud3lkTFV2dHVXZm1vTHVnSDRaZzM0SnpiYkh3Ty93YXZHKzY4VmRKUFhpaHVDL3pjdlVKKzAgMFcydWZ3UVlBR0hLSzJDRk1JcnpBQUFBQUVsRlRrU3VRbUNDIi8+PHJhZGlhbEdyYWRpZW50IGN4PSI3LjM5NCIgY3k9IjUuNDM3IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgaWQ9ImMiIHI9IjIzLjQxNiI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjRUVFIi8+PHN0b3Agb2Zmc2V0PSIuNDMyIiBzdG9wLWNvbG9yPSIjRTZFNkU2Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRTFFMUUxIi8+PC9yYWRpYWxHcmFkaWVudD48cGF0aCBkPSJNMTMgMjNoOC41Yy44MiAwIDEuNS0uNjggMS41LTEuNXYtMTVjMC0uODMtLjY4LTEuNS0xLjUtMS41SDdsNiAxOHoiIGZpbGw9InVybCgjYykiLz48L2c+PHBhdGggY2xpcC1wYXRoPSJ1cmwoI2IpIiBkPSJNMTggMTF2LTFoLTF2MWgtMy43NXYxaDUuMzJjLS4yLjQ5LS42IDEuMy0xLjMyIDIuMTQtLjUxLS42LS44Ni0xLjE4LTEuMS0xLjY0aC0xLjExYy4zNi44NC45IDEuNjYgMS41MiAyLjM4bC0yLjYgMi41OC43MS43MSAyLjU4LTIuNTggMi41OCAyLjU4LjcxLS43MS0yLjYtMi41OGMuNzQtLjg2IDEuMzMtMS44NSAxLjY4LTIuODhIMjF2LTFoLTN6IiBmaWxsPSIjNjA3RDhCIi8+PGxpbmVhckdyYWRpZW50IGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBpZD0iZCIgeDE9IjEyLjMzMyIgeDI9IjIzIiB5MT0iMTQiIHkyPSIxNCI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjMjEyMTIxIiBzdG9wLW9wYWNpdHk9Ii4xIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMjEyMTIxIiBzdG9wLW9wYWNpdHk9Ii4wMiIvPjwvbGluZWFyR3JhZGllbnQ+PHBhdGggY2xpcC1wYXRoPSJ1cmwoI2IpIiBkPSJNMTIuMzMgNUwyMyAxNS42N1YyM0gxMyIgZmlsbD0idXJsKCNkKSIvPjxnIGNsaXAtcGF0aD0idXJsKCNiKSI+PGltYWdlIGhlaWdodD0iOCIgb3BhY2l0eT0iLjEiIG92ZXJmbG93PSJ2aXNpYmxlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMC41IDE3LjUpIiB3aWR0aD0iOSIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBb0FBQUFKQ0FZQUFBQUxwcjBUQUFBQUNYQklXWE1BQUFzU0FBQUxFZ0hTM1g3OEFBQUEgR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU9GSlJFRlVlTnAwVUQxTEEwRVVuTGU3SnNKaCBDaUZwTFZOWWFTMzQxMUw3Wi9JblVwZ21xUklSTEd4RU9FVlFzb1JjYm5lY3U2QUdUQjRNNzJ2ZXZqZHIrRFBEZitOdnMzODU4cTdhIEZwNG9ET1pCSjVkSk1DVkR6SjJUK0xZWXBlQXlUajM5VU1OWGhBMDBIQUJYS3k4OWJZNlVscXJGb01IbTVRSzBhL21iWFl4U3l5Wm0gZUNCVGU1S3I2OCtOR3ErS3Y0UXpvU004cTNaUDhpbWpYamRFdi82WXNuZCtxNmE3VU40WEZzS1lsaWZiVUpYdmozZnR5dEFxTTF2SiB6NlVnR3ZnaUliTjkwZzhSVmRkRktaL3B6cVgrWTVORHRkb25IVEk3MXZnV1lBRHpXbWR4LzRmcG1RQUFBQUJKUlU1RXJrSmdnZz09Ii8+PHBhdGggZD0iTTE3IDE5bC00IDQtMS4zMy00IiBmaWxsPSIjM0Y1MUI1Ii8+PC9nPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTIxLjUgNUg3bC4wNC4xMkgyMS41Yy44MiAwIDEuNS42NyAxLjUgMS41VjYuNWMwLS44My0uNjgtMS41LTEuNS0xLjV6IiBmaWxsPSIjMjEyMTIxIiBmaWxsLW9wYWNpdHk9Ii4wMiIvPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTIxLjUgMjIuODhIMTNMMTEuNzEgMTloLS4wNEwxMyAyM2g4LjVjLjgyIDAgMS41LS42OCAxLjUtMS41di0uMTJjMCAuODItLjY4IDEuNS0xLjUgMS41eiIgZmlsbD0iIzIxMjEyMSIgZmlsbC1vcGFjaXR5PSIuMSIvPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTEyLjk3IDIyLjkxTDEzIDIzbDQtNGgtLjEyIiBmaWxsPSIjMUEyMzdFIiBmaWxsLW9wYWNpdHk9Ii4yIi8+PHBhdGggY2xpcC1wYXRoPSJ1cmwoI2IpIiBkPSJNMTEuNjcgMTkuMTJoNS4yMUwxNyAxOWgtNS4zMyIgZmlsbD0iIzFBMjM3RSIgZmlsbC1vcGFjaXR5PSIuMSIvPjxnIGNsaXAtcGF0aD0idXJsKCNiKSI+PGltYWdlIGhlaWdodD0iMjIiIG9wYWNpdHk9Ii4yIiBvdmVyZmxvdz0idmlzaWJsZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLS41IC0uNSkiIHdpZHRoPSIyMCIgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCVUFBQUFYQ0FZQUFBRGszd1NkQUFBQUNYQklXWE1BQUFzU0FBQUxFZ0hTM1g3OEFBQUEgR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQVVwSlJFRlVlTnFzbGJGT3d6QVFRTy9zUUNSYyBzcUFPbFJnck1qQ1ZyK0VyK0laK0F4L1dUQ3dWZXlWUWw5SU9RWTJQYzJxaE5Gd2NHc2RTckhOc1A1MmZwVFBDZVVQNFg2UFFaQTJaIFBpNDFscVhScENZS3RBNXRzRkJWRmRvOXBlbmg4MjFaU1dzUzExMlgxaEJkUFhHNDRCU3lRTWFFb0hjSjZRSkx1K0x4cmd1S1FEUUIgVUF1T24zbmZMQVRscWMwcHNtdnV2eVFWaWJmQVJ5YVhvUVBlaDZIazlNdzR1TDJidjN4czMxK1A3VVdxNVJkN0xzdk44YWtnNXpCUCBLVFBTSWdXWE4zT0NRbzZBUmtwaUNOUWQzNm1hZWdWNkRHZ2pXMWxCSkZSV01CUWFWREFVR2xRd0F2U3ZnaGhvcDRJWWFLZUNrYURuIENtS2hvb0pZcUtoQXRhbzU5VlYxb2Qzdzk5QlU0RXNmY1FWWHJ1QnVQQk12Z0pJdjFzZG1QU1ZBM0hPaEx2eS9iQ0MwcURrOHJqUDkgVHRXQjM2Z1Z2MUhydmplcTc5MlNqb2tSRi9aN0Z6OENEQUM4RW1XREtWR0RMZ0FBQUFCSlJVNUVya0pnZ2c9PSIvPjxwYXRoIGQ9Ik0xMSAxSDIuNUMxLjY4IDEgMSAxLjY4IDEgMi41djE1YzAgLjgzLjY4IDEuNSAxLjUgMS41SDE3TDExIDF6IiBmaWxsPSIjNDI4NUY0Ii8+PC9nPjxwYXRoIGNsaXAtcGF0aD0idXJsKCNiKSIgZD0iTTIuNSAxQzEuNjggMSAxIDEuNjggMSAyLjV2LjEyYzAtLjgyLjY4LTEuNSAxLjUtMS41SDExVjFIMi41eiIgZmlsbD0iI0ZGRiIgZmlsbC1vcGFjaXR5PSIuMDIiLz48cGF0aCBjbGlwLXBhdGg9InVybCgjYikiIGQ9Ik0xMSAxdi4xMmw1LjkyIDE3Ljc1SDIuNWMtLjgyIDAtMS41LS42Ny0xLjUtMS41di4xMmMwIC44NC42OCAxLjUxIDEuNSAxLjUxSDE3TDExIDF6IiBmaWxsPSIjMjEyMTIxIiBmaWxsLW9wYWNpdHk9Ii4xIi8+PGcgY2xpcC1wYXRoPSJ1cmwoI2IpIj48cGF0aCBkPSJNNy41IDEwdjEuMmgxLjk4Yy0uMDguNTItLjYgMS41MS0xLjk4IDEuNTEtMS4yIDAtMi4xNy0uOTktMi4xNy0yLjIxUzYuMyA4LjI5IDcuNSA4LjI5Yy42OCAwIDEuMTMuMjkgMS4zOS41NGwuOTUtLjkyQzkuMjQgNy4zNSA4LjQ0IDcgNy41IDcgNS41NyA3IDQgOC41NyA0IDEwLjVTNS41NyAxNCA3LjUgMTRjMi4wMiAwIDMuMzYtMS40MiAzLjM2LTMuNDIgMC0uMjMtLjAyLS40MS0uMDYtLjU4SDcuNXoiIGZpbGw9IiNFRUUiLz48cGF0aCBkPSJNNCA3aDd2N0g0eiIgZmlsbD0ibm9uZSIvPjwvZz48cmFkaWFsR3JhZGllbnQgY3g9IjEuNDU3IiBjeT0iMS40MiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGlkPSJlIiByPSIyOS43OTIiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIi8+PC9yYWRpYWxHcmFkaWVudD48cGF0aCBkPSJNMjEuNSA1aC05LjE3TDExIDFIMi41QzEuNjggMSAxIDEuNjggMSAyLjV2MTVjMCAuODMuNjggMS41IDEuNSAxLjVoOS4xN0wxMyAyM2g4LjVjLjgyIDAgMS41LS42OCAxLjUtMS41di0xNWMwLS44My0uNjgtMS41LTEuNS0xLjV6IiBmaWxsPSJ1cmwoI2UpIi8+PC9zdmc+"}},"time_used":17,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/20947.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.642Z","timestamp":1785159268642,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/20947.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1010\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Wed, 30 Aug 2023 05:52:21 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 05:38:23 GMT\r\ncache-control: public, max-age=86400\r\netag: \"0fb70690288109f594a3ee773a489890\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 28566\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: Ocax-1-IDpIXTJcUItdvdE4UOErg9apJXCFX-wFJZ6qtYscY8Sc3jA==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":1010,"size_decoded":1582,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"0fb70690288109f594a3ee773a489890","sha1":"0063896e70219950943a66b781db9d3799702fb3","sha256":"8fc174251647f28d51d31f696603bcbae579788915ac49818f93b1ef695f5853","sha512":"4b37ebf118d32fb1193365836acf307907777b736e73795b3cc292a13e148f0476a840fbe02f98067e354c7408a2275b0c18b8c1552c71143a0ad185ec9632bf","ssdeep":"","tlshash":"e811c877e52c93f6dc90c4d0439e3824da355f1adbc3b5d98ac1a424f9d93140488c2b","first_seen":"2024-08-20T10:34:45.05581Z","last_seen":"2026-07-29T06:14:00.438055Z","times_seen":1505,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADuUlEQVR4XtWbPW8TMRiA+xP4Cf0/vaJs7LAXVqZGonv7DwokBTGFARZUKSyoI4KFhaoSLHSADnRhOuykl/geO/6618nlkR4J5X1959e52OfesbOzJvZf1k/2R/VNNaprn3c5Q7bfOvbH9TGLy1Ud65TH7y3svLQ8Xy8YTOp77GhpB6/rXfZj7aiOTNmxDThhv9aCoyMblf0rhprNxSY3afXEy/6Kcn9UP+ZJe+gh+y1CNa4/O07WT1Vf2f9OqEvryjpJz9V9Zh1ZbNU3T7teCdVZfWgddMvcU7fgrCuKPs/2qWatDjxICRv4eQlZnxc2LiFhvISs04najk7YUNqvv1j+/DPmFXDKei0cjUQ9eM/Slxy8s/OlZb0t9A6LDaQNwXxp9c6VdS9gsrS3/9rFvvoy10TnsJ20rHsBEyU9Q6HXf5cx/W+Tt9/s9pKy7hlMkpQFXvy0cy5+tHMu/9g5krL+YgNwNG0XpmFOIzn+ZOdI2Spe/9GRCVKSpx/sHF8+44KeLAbAERTRBXOo/tYJc6QsOgCrYJ5Lzhmx7VItNgBc7kyYu0pSYnlsih8y0EW9hPlgvk8ivTzujdVWOeZxVYohmB+SMN7RG9HLn6z6LFXCeBfFBuDhpN3JR5P557wDPPpotw354E37GKGlNEWxASCxsVgJ47kWGQDGXPt/5sTYtb1LkQHgzM+41gVzQppIrQgiA2By+duOu/IazF1hyOvbdlvGcxQfgNAEtYpm0vSpJ1ATxnMUHwDGKFcLk5i7PRPGchS5EcrplG8gmGsamxfpzezlJUcgSZNnUzvu07Xx0TBPW+AnMBTZDJmkTGqNq64G5nGwGE9VbDcoNTsTTqgmvtUmVrEB4K0q47HyODyWScyqEdIcgBMGUyWMx0r0oLg+Z7tUrXcPmZAqb3dzvyFunvTSyDkiZ56hreIlBkBLGI81BPNzZP0zmJSq6zec86dtH8zNkXUvYGKOLlIvWR/MzZF1LxicyrzyuorzSzuXci4xYW6OqsZd1t2CDXINoSc3/Tjs/Lv/r8gNPH6urNeiGsu9/8s7txwkbngWnkW+V2w17GguPE5XWacXNpbQ9/tuKPWqDOsLUgncHfbI5YPQFCS2yhv3Rcf/f6QOsr2vyo46virboK6EK8fBe63uM+voRLVdV4LMN08q4SfJJZw98S1J1e/VIW+2z8Fx8o3K/q2FdbxXHHQc8f5vafQOy+pYYfXOlf3oBeyotDxfb1E/j+fsfAfXN7mVQhUxjHkMp3P0LTjbl+I/FOSziVJW7ugAAAAASUVORK5CYII="}},"time_used":32,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":30,"receive":2,"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.99","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/6jePbqXJhe8","date":"2026-07-27T13:34:28.983Z","timestamp":1785159268983,"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: 386241\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-07-30T06:23:10.672189Z","times_seen":949769,"resource_available":false,"data":"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"}},"time_used":19,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.39147.30b888a5ea9796cb7d58.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.277Z","timestamp":1785159269277,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.39147.30b888a5ea9796cb7d58.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a7-f3b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:07 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:44:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: bf01816b7821410e56304df608e12081\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"]}],"data":{"size":3899,"size_decoded":2345,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (3054)","md5":"ad61195f03f12e78d238d4a9203f0449","sha1":"1784e4e0de4f473231a8eccb06846ed523cd8e14","sha256":"7673dd94cc13d2dc00d5937cc5b1bc5a0bb64b94e0bcfa8d28cd0ea6291c58dc","sha512":"d681a2b3b386af653697765f91b39eff665af151cb0bd4d4b20f31481f4a2d08f02f3a135c00977ace846dfd67df5ba1464fd1c421cdf3f958a72106b95218c6","ssdeep":"","tlshash":"ce813f27d010c1f22f73ca19b791edc6b5f4b2a111f2e8cab7862f69c617c8019396b4","first_seen":"2026-07-23T13:38:20.401292Z","last_seen":"2026-07-29T06:14:13.933383Z","times_seen":283,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNzg1OSwzNzg2NSwzOTE0Nyw0MDI0MCw0NzAzMCw1NzE4NCw2MzE5NSw5NDM4OF0sezU1ODQxMihlKXtlLmV4cG9ydHM9WyIlIG9mIEdEUCJdfSw0Njg0NjAoZSl7ZS5leHBvcnRzPVsiJSBvZiBwYXIiXX0sNDQ1MDUoZSl7ZS5leHBvcnRzPVsiRGlzYy4geWllbGQsICUiXX0sODU5OTk0KGUpe2UuZXhwb3J0cz1bIkMiXX0sODkyMzYzKGUpe2UuZXhwb3J0cz1bIkQiXX0sMzk0NTAxKGUpe2UuZXhwb3J0cz1bIkQiXX0sNTcwOTM5KGUpe2UuZXhwb3J0cz1bIkUiXX0sMzk0OTIxKGUpe2UuZXhwb3J0cz1bIkYiXX0sODY2NDQoZSl7ZS5leHBvcnRzPVsiUiJdfSw3NTY0NTcoZSl7ZS5leHBvcnRzPVsiUiJdfSwyNTczMjYoZSl7ZS5leHBvcnRzPVsiUyJdfSw1NTIxNShlKXtlLmV4cG9ydHM9WyJEZWxpc3RlZCJdfSw2ODUxMDQoZSl7ZS5leHBvcnRzPVsiSG9saWRheSJdfSw2Mzg0MDUoZSl7ZS5leHBvcnRzPVsiSW52YWxpZCBzeW1ib2wiXX0sODk3NTkxKGUpe2UuZXhwb3J0cz1bIk92ZXJuaWdodCB2aWEgQk9BVFMiXX0sMjc0NDE1KGUpe2UuZXhwb3J0cz1bIkxvYWRpbmciXX0sNzAyNzg4KGUpe2UuZXhwb3J0cz1bIk1hcmtldCBvcGVuIl19LDkxNDU3MihlKXtlLmV4cG9ydHM9WyJNYXJrZXQgY2xvc2VkIl19LDg2NzQ1NShlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCJdfSw5MTg4NDIoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCJdfSwzODQ1OTcoZSl7ZS5leHBvcnRzPVsiQ0ZEIl19LDY1NTIzNShlKXtlLmV4cG9ydHM9WyJDcnlwdG8iXX0sMzUwMTQ2KGUpe2UuZXhwb3J0cz1bIkFsbCJdfSw3NjU0NDAoZSl7ZS5leHBvcnRzPVsiQm9uZHMiXX0sNTQ4MzIyKGUpe2UuZXhwb3J0cz1bIkVjb25vbXkiXX0sOTc5OTcoZSl7ZS5leHBvcnRzPVsiRm9yZXgiXX0sNTA1MDc5KGUpe2UuZXhwb3J0cz1bIkZ1dHVyZXMiXX0sNTY0OTE3KGUpe2UuZXhwb3J0cz1bIkZ1bmRzIl19LDkyNzQxMShlKXtlLmV4cG9ydHM9WyJJbmRpY2VzIl19LDc5NjAwKGUpe2UuZXhwb3J0cz1bIk9wdGlvbnMiXX0sNTU1NTEwKGUpe2UuZXhwb3J0cz1bIlN0b2NrcyJdfSw1NzA2MihlKXtlLmV4cG9ydHM9WyJOL0EiXX0sMTExOTc2KGUpe2UuZXhwb3J0cz1bIjEgeWVhciJdfSwzMjgwMzAoZSl7ZS5leHBvcnRzPVsiMyBtb250aHMiXX0sMTM1ODY3KGUpe2UuZXhwb3J0cz1bIkNvbG9tYmlhIl19LDE5NDE5NChlKXtlLmV4cG9ydHM9WyJDb25uZWN0aW5nIl19LDEwODAwMShlKXtlLmV4cG9ydHM9WyJDYW5hZGlhbiBEb2xsYXIiXX0sOTA0MzM4KGUpe2UuZXhwb3J0cz1bIkNoaWxlIl19LDg1NzU4NyhlKXtlLmV4cG9ydHM9WyJBcmdlbnRpbmEiXX0sNzIzMzQyKGUpe2UuZXhwb3J0cz1bIkF1c3RyYWxpYW4gRG9sbGFyIl19LDEwNDgzMShlKXtlLmV4cG9ydHM9WyJCYWh0Il19LDg2ODgxMChlKXtlLmV4cG9ydHM9WyJCaWxsZWQgZXZlcnkgbW9udGguIl19LDkxMzk1NShlKXtlLmV4cG9ydHM9WyJCaWxsZWQgZXZlcnkgeWVhci4iXX0sNTIwMDAyKGUpe2UuZXhwb3J0cz1bIkJyYXppbGlhbiBSZWFsIl19LDcxNzAzMyhlKXtlLmV4cG9ydHM9WyJCcml0aXNoIFBvdW5kIl19LDI0MTU4NShlKXtlLmV4cG9ydHM9WyJEYW5pc2ggS3JvbmUiXX0sMjI5NTI1KGUpe2UuZXhwb3J0cz1bIkRlbGF5ZWQiXX0sNjAxNzY0KGUpe2UuZXhwb3J0cz1bIkVuZCBvZiBEYXkiXX0sNTYxNjUoZSl7ZS5leHBvcnRzPVsiRXVybyJdfSw5Njg4MTUoZSl7ZS5leHBvcnRzPVsiRnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSw5MjIyNDQoZSl7ZS5leHBvcnRzPVsiS3V3YWl0aSBEaW5hciJdfSw3MDI5MjQoZSl7ZS5leHBvcnRzPVsiSG9uZyBLb25nIERvbGxhciJdfSwxNTk4MzAoZSl7ZS5leHBvcnRzPVsiSW5kaWFuIFJ1cGVlIl19LDMyODMxMyhlKXtlLmV4cG9ydHM9WyJJbnN0cnVtZW50IGlzIG5vdCBhbGxvd2VkIl19LDc0NzI4KGUpe2UuZXhwb3J0cz1bIkljZWxhbmQgS3JvbmEiXX0sODE2ODM2KGUpe2UuZXhwb3J0cz1bIklzcmFlbGkgU2hla2VsIl19LDY4OTExNyhlKXtlLmV4cG9ydHM9WyJNYWxheXNpYW4gUmluZ2dpdCJdfSwyMjA3NDAoZSl7ZS5leHBvcnRzPVsiTWV4aWNhbiBQZXNvIl19LDk5Mzk5OShlKXtlLmV4cG9ydHM9WyJOb3J3ZWdpYW4gS3JvbmUiXX0sODU0ODcwKGUpe2UuZXhwb3J0cz1bIk5ldyBJc3JhZWxpIFNoZXFlbCJdfSw1ODA4MDIoZSl7ZS5leHBvcnRzPVsiTmV3IFRhaXdhbiBEb2xsYXIiXX0sOTA0NDAwKGUpe2UuZXhwb3J0cz1bIk5ldyBaZWFsYW5kIERvbGxhciJdfSw1NjIzOTUoZSl7ZS5leHBvcnRzPVsiU25hcHNob3QiXX0sOTk1OTY2KGUpe2UuZXhwb3J0cz1bIlNhdWRpIFJpeWFsIl19LDg1MDI5OChlKXtlLmV4cG9ydHM9WyJTZWNvbmQgZnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSwyNTE3MChlKXtlLmV4cG9ydHM9WyJTaW5nYXBvcmUgRG9sbGFyIl19LDk5MjM2MihlKXtlLmV4cG9ydHM9WyJTdHVkaWVzIGxpbWl0IGV4Y2VlZGVkOiB7bnVtYmVyfSBzdHVkaWVzIHBlciBsYXlvdXQuXG5QbGVhc2UsIHJlbW92ZSBzb21lIHN0dWRpZXMuIl19LDc3NzEyMChlKXtlLmV4cG9ydHM9WyJTd2VkaXNoIEtyb25hIl19LDYwODYzMShlKXtlLmV4cG9ydHM9WyJTd2lzcyBGcmFuYyJdfSw4NTExMTEoZSl7ZS5leHBvcnRzPVsiUGVydSJdfSw0MjUyNzYoZSl7ZS5leHBvcnRzPVsiUGhpbGlwcGluZSBQZXNvIl19LDYxNjE4KGUpe2UuZXhwb3J0cz1bIlByaWNlIGZvcm1hdCBpcyBpbnZhbGlkLiJdfSw4MTQ2MShlKXtlLmV4cG9ydHM9WyJRdW90ZXMgYXJlIGRlbGF5ZWQgYnkge251bWJlcn0gbWluIl19LDc5MDUyNChlKXtlLmV4cG9ydHM9WyJRdW90ZXMgYXJlIGRlbGF5ZWQgYnkge251bWJlcn0gbWluIGFuZCB1cGRhdGVkIGV2ZXJ5IDMwIHNlY29uZHMiXX0sMTgwOTMxKGUpe2UuZXhwb3J0cz1bIlJhbmQiXX0sODgzOTI4KGUpe2UuZXhwb3J0cz1bIlJlYWwtdGltZSJdfSw5NzcyNyhlKXtlLmV4cG9ydHM9WyJSZXBsYXkgTW9kZSJdfSwzOTAzNjAoZSl7CmUuZXhwb3J0cz1bIlJ1cGlhaCJdfSwzMzMyOChlKXtlLmV4cG9ydHM9WyJSdXNzaWFuIFJ1YmxlIl19LDU4OTA3MShlKXtlLmV4cG9ydHM9WyJXb24iXX0sOTM3MDE3KGUpe2UuZXhwb3J0cz1bIldhcm5pbmciXX0sMjg2OTIxKGUpe2UuZXhwb3J0cz1bIlR1cmtpc2ggTGlyYSJdfSw5ODMxMDcoZSl7ZS5leHBvcnRzPVsiVS5BLkUuIERpcmhhbSJdfSwyMjkxMTAoZSl7ZS5leHBvcnRzPVsiVVMgRG9sbGFyIl19LDkyODU1MyhlKXtlLmV4cG9ydHM9WyJVcnVndWF5Il19LDU4OTQwOChlKXtlLmV4cG9ydHM9WyJWaWV0bmFtZXNlIERvbmciXX0sNTE3ODU5KGUpe2UuZXhwb3J0cz1bIlZpc2l0IFRyYWRpbmdWaWV3IOKAlCBmaW5hbmNpYWwgY2hhcnRpbmcgcGxhdGZvcm0gYW5kIHRyYWRpbmcgY29tbXVuaXR5Il19LDMwNzMzNihlKXtlLmV4cG9ydHM9WyJZZW4iXX0sMjM0NzgyKGUpe2UuZXhwb3J0cz1bIll1YW4gUmVubWluYmkiXX0sNDc3NjUwKGUpe2UuZXhwb3J0cz1bIlpsb3R5Il19LDcyMTExOChlKXtlLmV4cG9ydHM9WyJhbm51YWxseSJdfSw2NTM2OShlKXtlLmV4cG9ydHM9WyJiaWxsZWQgbW9udGhseSJdfSwyNjAxOTMoZSl7ZS5leHBvcnRzPVsiYmlsbGVkIGFubnVhbGx5Il19LDU1NjU2OChlKXtlLmV4cG9ydHM9WyJtb250aGx5Il19LDg2Mzg1MihlKXtlLmV4cG9ydHM9WyJ0aHJlZSBtb250aHMiXX0sODM1OChlKXtlLmV4cG9ydHM9WyJ0cmlhbCJdfSwxNTM3NjYoZSl7ZS5leHBvcnRzPVsie3Byb1BsYW5OYW1lfSBUcmlhbCJdfSwzMjM0ODUoZSl7ZS5leHBvcnRzPVsibW9udGgiLCJtb250aHMiXX0sNDQyNjY2KGUpe2UuZXhwb3J0cz1bInllYXIiLCJ5ZWFycyJdfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.googleapis.com/css2?family=Poppins:wght@100;400;500;600\u0026display=swap","fqdn":"fonts.googleapis.com","domain":"fonts.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.898Z","timestamp":1785159267898,"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 /css2?family=Poppins:wght@100;400;500;600\u0026display=swap 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://walmartfundholdings.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 13:34:28 GMT\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\ncache-control: private, max-age=86400\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin-allow-popups\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":4788,"size_decoded":1242,"mime_type":"text/css; charset=utf-8","magic":"ASCII text","md5":"46c123053a2442c75abf88d492c0b841","sha1":"eebc2a70121f4caf562f19c4c14bf8caaa057856","sha256":"ccde48eae33718433573447d5e90ed4b2f80a11a2e95e1a9602d7f314152c69b","sha512":"bc3ce192cadef6255a4ce37b013df8b864cef9804020ec9dbbc2a165b256dd50a0d247aae5fd49f6c8e26f9345ea326dc1492a32a2b8cf2cd8714613a33af195","ssdeep":"96:SOS0a4OS0aeJc+ukOS0a8N3OEanOEaCJc+ukOEauN3OXa3OXavJc+ukOXaON3Oxs:+pspOlp9gKQcXr3lVwaq","tlshash":"9fa19bd1087be114ab835cc123cf7d36ee1e9255b850e5786bfd0c98adabc254362b2d","first_seen":"2026-04-22T19:49:34.909217Z","last_seen":"2026-07-27T13:35:41.698593Z","times_seen":5,"resource_available":false,"data":"LyogZGV2YW5hZ2FyaSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpR3lwOGt2OEpIZ0ZWckxQVHVjWHRBS1BZLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswOTAwLTA5N0YsIFUrMUNEMC0xQ0Y5LCBVKzIwMEMtMjAwRCwgVSsyMEE4LCBVKzIwQjksIFUrMjBGMCwgVSsyNUNDLCBVK0E4MzAtQTgzOSwgVStBOEUwLUE4RkYsIFUrMTFCMDAtMTFCMDk7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAxMDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlHeXA4a3Y4SkhnRlZyTFBUdWZudEFLUFkud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpR3lwOGt2OEpIZ0ZWckxQVHVjSHRBLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogZGV2YW5hZ2FyaSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpRXlwOGt2OEpIZ0ZWckpKYmVjbU5FLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswOTAwLTA5N0YsIFUrMUNEMC0xQ0Y5LCBVKzIwMEMtMjAwRCwgVSsyMEE4LCBVKzIwQjksIFUrMjBGMCwgVSsyNUNDLCBVK0E4MzAtQTgzOSwgVStBOEUwLUE4RkYsIFUrMTFCMDAtMTFCMDk7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlFeXA4a3Y4SkhnRlZySkpuZWNtTkUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpRXlwOGt2OEpIZ0ZWckpKZmVjZy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGRldmFuYWdhcmkgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMR1Q5WjExbEZjLUsud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA5MDAtMDk3RiwgVSsxQ0QwLTFDRjksIFUrMjAwQy0yMDBELCBVKzIwQTgsIFUrMjBCOSwgVSsyMEYwLCBVKzI1Q0MsIFUrQTgzMC1BODM5LCBVK0E4RTAtQThGRiwgVSsxMUIwMC0xMUIwOTsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMR1Q5WjFKbEZjLUsud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1BvcHBpbnMnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcG9wcGlucy92MjQvcHhpQnlwOGt2OEpIZ0ZWckxHVDlaMXhsRlEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBkZXZhbmFnYXJpICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEVqNloxMWxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswOTAwLTA5N0YsIFUrMUNEMC0xQ0Y5LCBVKzIwMEMtMjAwRCwgVSsyMEE4LCBVKzIwQjksIFUrMjBGMCwgVSsyNUNDLCBVK0E4MzAtQTgzOSwgVStBOEUwLUE4RkYsIFUrMTFCMDAtMTFCMDk7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUG9wcGlucyc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9wb3BwaW5zL3YyNC9weGlCeXA4a3Y4SkhnRlZyTEVqNloxSmxGYy1LLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDYwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3BvcHBpbnMvdjI0L3B4aUJ5cDhrdjhKSGdGVnJMRWo2WjF4bEZRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0K"}},"time_used":139,"timings":{"blocked":-1,"dns":1,"connect":15,"send":0,"wait":31,"receive":0,"ssl":91},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80706.a5913aa6ad62d9dbf031.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.282Z","timestamp":1785159269282,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80706.a5913aa6ad62d9dbf031.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1be6\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9a3d18dbf83d00dc0e11afdb39800443\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"]}],"data":{"size":7142,"size_decoded":4236,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3068)","md5":"7d7a3ddeb844a1fdfe8b024f9df9f0b6","sha1":"b3afece36b14fafc7889e9b954f9736c892a2849","sha256":"0752584a0f2ad3bba4f44bbd6a44bf08a76726c524b79367996ab9b20e03bfba","sha512":"c0b04bf9ca52fee536a54ae9fcb3fcac9ee210f95be1205e4fe48f0cbb1f25a4db788a4ae10cd4b5ee13e1dc5159c2a4d48516d50bf1ee07d2da1a00fa95ac38","ssdeep":"96:VI23hKdh7P1lIbeWL9aqfMbFNriK6Vizc/MuomCA9P0LX4BYyCnsI6T:n3wT9lIbeWJaqfvXQcEA0LHxnf6T","tlshash":"c4e1c6c832b1f0eaa3e325e480ab5806e13a6d5a558e60b6e34557d37874fc540ffec5","first_seen":"2026-07-23T13:38:20.481503Z","last_seen":"2026-07-30T06:08:06.352469Z","times_seen":1727,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s4MDcwNl0sezcxMjc0NShyLGUsdCl7dmFyIG47IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBpLG89MWU2LHM9MWU2LGM9IltiaWcuanNdICIsZj1jKyJJbnZhbGlkICIsdT1mKyJkZWNpbWFsIHBsYWNlcyIsaD1mKyJyb3VuZGluZyBtb2RlIixsPWMrIkRpdmlzaW9uIGJ5IHplcm8iLGE9e30sZz12b2lkIDAsdj0vXi0/KFxkKyhcLlxkKik/fFwuXGQrKShlWystXT9cZCspPyQvaTtmdW5jdGlvbiB3KHIsZSx0LG4pe3ZhciBpPXIuYztpZih0PT09ZyYmKHQ9ci5jb25zdHJ1Y3Rvci5STSksMCE9PXQmJjEhPT10JiYyIT09dCYmMyE9PXQpdGhyb3cgRXJyb3IoaCk7aWYoZTwxKW49Mz09PXQmJihufHwhIWlbMF0pfHwwPT09ZSYmKDE9PT10JiZpWzBdPj01fHwyPT09dCYmKGlbMF0+NXx8NT09PWlbMF0mJihufHxpWzFdIT09ZykpKSxpLmxlbmd0aD0xLG4/KHIuZT1yLmUtZSsxLGlbMF09MSk6aVswXT1yLmU9MDtlbHNlIGlmKGU8aS5sZW5ndGgpe2lmKG49MT09PXQmJmlbZV0+PTV8fDI9PT10JiYoaVtlXT41fHw1PT09aVtlXSYmKG58fGlbZSsxXSE9PWd8fDEmaVtlLTFdKSl8fDM9PT10JiYobnx8ISFpWzBdKSxpLmxlbmd0aD1lLS0sbilmb3IoOysraVtlXT45OylpW2VdPTAsZS0tfHwoKytyLmUsaS51bnNoaWZ0KDEpKTtmb3IoZT1pLmxlbmd0aDshaVstLWVdOylpLnBvcCgpfXJldHVybiByfWZ1bmN0aW9uIHAocixlLHQpe3ZhciBuPXIuZSxpPXIuYy5qb2luKCIiKSxvPWkubGVuZ3RoO2lmKGUpaT1pLmNoYXJBdCgwKSsobz4xPyIuIitpLnNsaWNlKDEpOiIiKSsobjwwPyJlIjoiZSsiKStuO2Vsc2UgaWYobjwwKXtmb3IoOysrbjspaT0iMCIraTtpPSIwLiIraX1lbHNlIGlmKG4+MClpZigrK24+bylmb3Iobi09bztuLS07KWkrPSIwIjtlbHNlIG48byYmKGk9aS5zbGljZSgwLG4pKyIuIitpLnNsaWNlKG4pKTtlbHNlIG8+MSYmKGk9aS5jaGFyQXQoMCkrIi4iK2kuc2xpY2UoMSkpO3JldHVybiByLnM8MCYmdD8iLSIraTppfWEuYWJzPWZ1bmN0aW9uKCl7dmFyIHI9bmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyk7cmV0dXJuIHIucz0xLHJ9LGEuY21wPWZ1bmN0aW9uKHIpe3ZhciBlLHQ9dGhpcyxuPXQuYyxpPShyPW5ldyB0LmNvbnN0cnVjdG9yKHIpKS5jLG89dC5zLHM9ci5zLGM9dC5lLGY9ci5lO2lmKCFuWzBdfHwhaVswXSlyZXR1cm4gblswXT9vOmlbMF0/LXM6MDtpZihvIT1zKXJldHVybiBvO2lmKGU9bzwwLGMhPWYpcmV0dXJuIGM+Zl5lPzE6LTE7Zm9yKHM9KGM9bi5sZW5ndGgpPChmPWkubGVuZ3RoKT9jOmYsbz0tMTsrK288czspaWYobltvXSE9aVtvXSlyZXR1cm4gbltvXT5pW29dXmU/MTotMTtyZXR1cm4gYz09Zj8wOmM+Zl5lPzE6LTF9LGEuZGl2PWZ1bmN0aW9uKHIpe3ZhciBlPXRoaXMsdD1lLmNvbnN0cnVjdG9yLG49ZS5jLGk9KHI9bmV3IHQocikpLmMscz1lLnM9PXIucz8xOi0xLGM9dC5EUDtpZihjIT09fn5jfHxjPDB8fGM+byl0aHJvdyBFcnJvcih1KTtpZighaVswXSl0aHJvdyBFcnJvcihsKTtpZighblswXSlyZXR1cm4gci5zPXMsci5jPVtyLmU9MF0scjt2YXIgZixoLGEsdixwLGQ9aS5zbGljZSgpLEU9Zj1pLmxlbmd0aCxtPW4ubGVuZ3RoLGI9bi5zbGljZSgwLGYpLFA9Yi5sZW5ndGgsXz1yLEQ9Xy5jPVtdLGs9MCxNPWMrKF8uZT1lLmUtci5lKSsxO2ZvcihfLnM9cyxzPU08MD8wOk0sZC51bnNoaWZ0KDApO1ArKzxmOyliLnB1c2goMCk7ZG97Zm9yKGE9MDthPDEwO2ErKyl7aWYoZiE9KFA9Yi5sZW5ndGgpKXY9Zj5QPzE6LTE7ZWxzZSBmb3IocD0tMSx2PTA7KytwPGY7KWlmKGlbcF0hPWJbcF0pe3Y9aVtwXT5iW3BdPzE6LTE7YnJlYWt9aWYoISh2PDApKWJyZWFrO2ZvcihoPVA9PWY/aTpkO1A7KXtpZihiWy0tUF08aFtQXSl7Zm9yKHA9UDtwJiYhYlstLXBdOyliW3BdPTk7LS1iW3BdLGJbUF0rPTEwfWJbUF0tPWhbUF19Zm9yKDshYlswXTspYi5zaGlmdCgpfURbaysrXT12P2E6KythLGJbMF0mJnY/YltQXT1uW0VdfHwwOmI9W25bRV1dfXdoaWxlKChFKys8bXx8YlswXSE9PWcpJiZzLS0pO3JldHVybiBEWzBdfHwxPT1rfHwoRC5zaGlmdCgpLF8uZS0tLE0tLSksaz5NJiZ3KF8sTSx0LlJNLGJbMF0hPT1nKSxffSxhLmVxPWZ1bmN0aW9uKHIpe3JldHVybiAwPT09dGhpcy5jbXAocil9LGEuZ3Q9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuY21wKHIpPjB9LGEuZ3RlPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLmNtcChyKT4tMX0sYS5sdD1mdW5jdGlvbihyKXtyZXR1cm4gdGhpcy5jbXAocik8MH0sYS5sdGU9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuY21wKHIpPDF9LGEubWludXM9YS5zdWI9ZnVuY3Rpb24ocil7dmFyIGUsdCxuLGksbz10aGlzLHM9by5jb25zdHJ1Y3RvcixjPW8ucyxmPShyPW5ldyBzKHIpKS5zO2lmKGMhPWYpcmV0dXJuIHIucz0tZixvLnBsdXMocik7dmFyIHU9by5jLnNsaWNlKCksaD1vLmUsbD1yLmMsYT1yLmU7aWYoIXVbMF18fCFsWzBdKXJldHVybiBsWzBdP3Iucz0tZjp1WzBdP3I9bmV3IHMobyk6ci5zPTEscjtpZihjPWgtYSl7Zm9yKChpPWM8MCk/KGM9LWMsbj11KTooYT1oLG49bCksbi5yZXZlcnNlKCksZj1jO2YtLTspbi5wdXNoKDApO24ucmV2ZXJzZSgpfWVsc2UgZm9yKHQ9KChpPXUubGVuZ3RoPGwubGVuZ3RoKT91OmwpLmxlbmd0aCxjPWY9MDtmPHQ7ZisrKWlmKHVbZl0hPWxbZl0pe2k9dVtmXTxsW2ZdO2JyZWFrfWlmKGkmJihuPXUsdT1sLGw9bixyLnM9LXIucyksKGY9KHQ9bC5sZW5ndGgpLShlPXUubGVuZ3RoKSk+MClmb3IoO2YtLTspdVtlKytdPTA7Zm9yKGY9ZTt0PmM7KXtpZih1Wy0tdF08bFt0XSl7Zm9yKGU9dDtlJiYhdVstLWVdOyl1W2VdPTk7LS11W2VdLHVbdF0rPTEwfXVbdF0tPWxbdF19Zm9yKDswPT09dVstLWZdOyl1LnBvcCgpO2Zvcig7MD09PXVbMF07KXUuc2hpZnQoKSwtLWE7cmV0dXJuIHVbMF18fChyLnM9MSx1PVthPTBdKSxyLmM9dSxyLmU9YSxyfSxhLm1vZD1mdW5jdGlvbihyKXt2YXIgZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yLGk9dC5zLG89KHI9bmV3IG4ocikpLnMKO2lmKCFyLmNbMF0pdGhyb3cgRXJyb3IobCk7cmV0dXJuIHQucz1yLnM9MSxlPTE9PXIuY21wKHQpLHQucz1pLHIucz1vLGU/bmV3IG4odCk6KGk9bi5EUCxvPW4uUk0sbi5EUD1uLlJNPTAsdD10LmRpdihyKSxuLkRQPWksbi5STT1vLHRoaXMubWludXModC50aW1lcyhyKSkpfSxhLnBsdXM9YS5hZGQ9ZnVuY3Rpb24ocil7dmFyIGUsdCxuLGk9dGhpcyxvPWkuY29uc3RydWN0b3I7aWYocj1uZXcgbyhyKSxpLnMhPXIucylyZXR1cm4gci5zPS1yLnMsaS5taW51cyhyKTt2YXIgcz1pLmUsYz1pLmMsZj1yLmUsdT1yLmM7aWYoIWNbMF18fCF1WzBdKXJldHVybiB1WzBdfHwoY1swXT9yPW5ldyBvKGkpOnIucz1pLnMpLHI7aWYoYz1jLnNsaWNlKCksZT1zLWYpe2ZvcihlPjA/KGY9cyxuPXUpOihlPS1lLG49Yyksbi5yZXZlcnNlKCk7ZS0tOyluLnB1c2goMCk7bi5yZXZlcnNlKCl9Zm9yKGMubGVuZ3RoLXUubGVuZ3RoPDAmJihuPXUsdT1jLGM9biksZT11Lmxlbmd0aCx0PTA7ZTtjW2VdJT0xMCl0PShjWy0tZV09Y1tlXSt1W2VdK3QpLzEwfDA7Zm9yKHQmJihjLnVuc2hpZnQodCksKytmKSxlPWMubGVuZ3RoOzA9PT1jWy0tZV07KWMucG9wKCk7cmV0dXJuIHIuYz1jLHIuZT1mLHJ9LGEucG93PWZ1bmN0aW9uKHIpe3ZhciBlPXRoaXMsdD1uZXcgZS5jb25zdHJ1Y3RvcigiMSIpLG49dCxpPXI8MDtpZihyIT09fn5yfHxyPC0xZTZ8fHI+cyl0aHJvdyBFcnJvcihmKyJleHBvbmVudCIpO2ZvcihpJiYocj0tcik7MSZyJiYobj1uLnRpbWVzKGUpKSxyPj49MTspZT1lLnRpbWVzKGUpO3JldHVybiBpP3QuZGl2KG4pOm59LGEucHJlYz1mdW5jdGlvbihyLGUpe2lmKHIhPT1+fnJ8fHI8MXx8cj5vKXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO3JldHVybiB3KG5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMpLHIsZSl9LGEucm91bmQ9ZnVuY3Rpb24ocixlKXtpZihyPT09ZylyPTA7ZWxzZSBpZihyIT09fn5yfHxyPC1vfHxyPm8pdGhyb3cgRXJyb3IodSk7cmV0dXJuIHcobmV3IHRoaXMuY29uc3RydWN0b3IodGhpcykscit0aGlzLmUrMSxlKX0sYS5zcXJ0PWZ1bmN0aW9uKCl7dmFyIHIsZSx0LG49dGhpcyxpPW4uY29uc3RydWN0b3Isbz1uLnMscz1uLmUsZj1uZXcgaSgiMC41Iik7aWYoIW4uY1swXSlyZXR1cm4gbmV3IGkobik7aWYobzwwKXRocm93IEVycm9yKGMrIk5vIHNxdWFyZSByb290Iik7MD09PShvPU1hdGguc3FydChuKyIiKSl8fG89PT0xLzA/KChlPW4uYy5qb2luKCIiKSkubGVuZ3RoK3MmMXx8KGUrPSIwIikscz0oKHMrMSkvMnwwKS0oczwwfHwxJnMpLHI9bmV3IGkoKChvPU1hdGguc3FydChlKSk9PTEvMD8iNWUiOihvPW8udG9FeHBvbmVudGlhbCgpKS5zbGljZSgwLG8uaW5kZXhPZigiZSIpKzEpKStzKSk6cj1uZXcgaShvKyIiKSxzPXIuZSsoaS5EUCs9NCk7ZG97dD1yLHI9Zi50aW1lcyh0LnBsdXMobi5kaXYodCkpKX13aGlsZSh0LmMuc2xpY2UoMCxzKS5qb2luKCIiKSE9PXIuYy5zbGljZSgwLHMpLmpvaW4oIiIpKTtyZXR1cm4gdyhyLChpLkRQLT00KStyLmUrMSxpLlJNKX0sYS50aW1lcz1hLm11bD1mdW5jdGlvbihyKXt2YXIgZSx0PXRoaXMsbj10LmNvbnN0cnVjdG9yLGk9dC5jLG89KHI9bmV3IG4ocikpLmMscz1pLmxlbmd0aCxjPW8ubGVuZ3RoLGY9dC5lLHU9ci5lO2lmKHIucz10LnM9PXIucz8xOi0xLCFpWzBdfHwhb1swXSlyZXR1cm4gci5jPVtyLmU9MF0scjtmb3Ioci5lPWYrdSxzPGMmJihlPWksaT1vLG89ZSx1PXMscz1jLGM9dSksZT1uZXcgQXJyYXkodT1zK2MpO3UtLTspZVt1XT0wO2ZvcihmPWM7Zi0tOyl7Zm9yKGM9MCx1PXMrZjt1PmY7KWM9ZVt1XStvW2ZdKmlbdS1mLTFdK2MsZVt1LS1dPWMlMTAsYz1jLzEwfDA7ZVt1XT1jfWZvcihjPysrci5lOmUuc2hpZnQoKSxmPWUubGVuZ3RoOyFlWy0tZl07KWUucG9wKCk7cmV0dXJuIHIuYz1lLHJ9LGEudG9FeHBvbmVudGlhbD1mdW5jdGlvbihyLGUpe3ZhciB0PXRoaXMsbj10LmNbMF07aWYociE9PWcpe2lmKHIhPT1+fnJ8fHI8MHx8cj5vKXRocm93IEVycm9yKHUpO2Zvcih0PXcobmV3IHQuY29uc3RydWN0b3IodCksKytyLGUpO3QuYy5sZW5ndGg8cjspdC5jLnB1c2goMCl9cmV0dXJuIHAodCwhMCwhIW4pfSxhLnRvRml4ZWQ9ZnVuY3Rpb24ocixlKXt2YXIgdD10aGlzLG49dC5jWzBdO2lmKHIhPT1nKXtpZihyIT09fn5yfHxyPDB8fHI+byl0aHJvdyBFcnJvcih1KTtmb3Iocj1yKyh0PXcobmV3IHQuY29uc3RydWN0b3IodCkscit0LmUrMSxlKSkuZSsxO3QuYy5sZW5ndGg8cjspdC5jLnB1c2goMCl9cmV0dXJuIHAodCwhMSwhIW4pfSxhLnRvSlNPTj1hLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIHI9dGhpcyxlPXIuY29uc3RydWN0b3I7cmV0dXJuIHAocixyLmU8PWUuTkV8fHIuZT49ZS5QRSwhIXIuY1swXSl9LGEudG9OdW1iZXI9ZnVuY3Rpb24oKXt2YXIgcj1OdW1iZXIocCh0aGlzLCEwLCEwKSk7aWYoITA9PT10aGlzLmNvbnN0cnVjdG9yLnN0cmljdCYmIXRoaXMuZXEoci50b1N0cmluZygpKSl0aHJvdyBFcnJvcihjKyJJbXByZWNpc2UgY29udmVyc2lvbiIpO3JldHVybiByfSxhLnRvUHJlY2lzaW9uPWZ1bmN0aW9uKHIsZSl7dmFyIHQ9dGhpcyxuPXQuY29uc3RydWN0b3IsaT10LmNbMF07aWYociE9PWcpe2lmKHIhPT1+fnJ8fHI8MXx8cj5vKXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO2Zvcih0PXcobmV3IG4odCkscixlKTt0LmMubGVuZ3RoPHI7KXQuYy5wdXNoKDApfXJldHVybiBwKHQscjw9dC5lfHx0LmU8PW4uTkV8fHQuZT49bi5QRSwhIWkpfSxhLnZhbHVlT2Y9ZnVuY3Rpb24oKXt2YXIgcj10aGlzLGU9ci5jb25zdHJ1Y3RvcjtpZighMD09PWUuc3RyaWN0KXRocm93IEVycm9yKGMrInZhbHVlT2YgZGlzYWxsb3dlZCIpO3JldHVybiBwKHIsci5lPD1lLk5FfHxyLmU+PWUuUEUsITApfSxpPWZ1bmN0aW9uIHIoKXtmdW5jdGlvbiBlKHQpe3ZhciBuPXRoaXM7aWYoIShuIGluc3RhbmNlb2YgZSkpcmV0dXJuIHQ9PT1nP3IoKTpuZXcgZSh0KTtpZih0IGluc3RhbmNlb2YgZSluLnM9dC5zLG4uZT10LmUsbi5jPXQuYy5zbGljZSgpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiB0KXsKaWYoITA9PT1lLnN0cmljdCl0aHJvdyBUeXBlRXJyb3IoZisibnVtYmVyIik7dD0wPT09dCYmMS90PDA/Ii0wIjpTdHJpbmcodCl9IWZ1bmN0aW9uKHIsZSl7dmFyIHQsbixpO2lmKCF2LnRlc3QoZSkpdGhyb3cgRXJyb3IoZisibnVtYmVyIik7ci5zPSItIj09ZS5jaGFyQXQoMCk/KGU9ZS5zbGljZSgxKSwtMSk6MSwodD1lLmluZGV4T2YoIi4iKSk+LTEmJihlPWUucmVwbGFjZSgiLiIsIiIpKTsobj1lLnNlYXJjaCgvZS9pKSk+MD8odDwwJiYodD1uKSx0Kz0rZS5zbGljZShuKzEpLGU9ZS5zdWJzdHJpbmcoMCxuKSk6dDwwJiYodD1lLmxlbmd0aCk7Zm9yKGk9ZS5sZW5ndGgsbj0wO248aSYmIjAiPT1lLmNoYXJBdChuKTspKytuO2lmKG49PWkpci5jPVtyLmU9MF07ZWxzZXtmb3IoO2k+MCYmIjAiPT1lLmNoYXJBdCgtLWkpOyk7Zm9yKHIuZT10LW4tMSxyLmM9W10sdD0wO248PWk7KXIuY1t0KytdPStlLmNoYXJBdChuKyspfX0obix0KX1uLmNvbnN0cnVjdG9yPWV9cmV0dXJuIGUucHJvdG90eXBlPWEsZS5EUD0yMCxlLlJNPTEsZS5ORT0tNyxlLlBFPTIxLGUuc3RyaWN0PWZhbHNlLGUucm91bmREb3duPTAsZS5yb3VuZEhhbGZVcD0xLGUucm91bmRIYWxmRXZlbj0yLGUucm91bmRVcD0zLGV9KCksaS5kZWZhdWx0PWkuQmlnPWksdm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gaX0uY2FsbChlLHQsZSxyKSl8fChyLmV4cG9ydHM9bil9KCl9LDk2MzA5OChyLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtnZXRJc29MYW5ndWFnZUNvZGVGcm9tTGFuZ3VhZ2U6KCk9Pml9KTtjb25zdCBuPXthcl9BRToiYXIiLGJyOiJwdCIsZGVfREU6ImRlIixjYV9FUzoiY2EiLGhlX0lMOiJoZSIsaWRfSUQ6ImlkIixpbjoiZW4iLGtyOiJrbyIsbXNfTVk6Im1zIixzdl9TRToic3YiLHRoX1RIOiJ0aCIsdWs6ImVuIix2aV9WTjoidmkiLHpoX0NOOiJ6aC1IYW5zIix6aF9UVzoiemgtSGFudCIsemg6InpoLUhhbnMiLGh1X0hVOiJodS1IVSJ9O2Z1bmN0aW9uIGkocil7cmV0dXJuIG5bcl18fHJ9fX1dKTs="}},"time_used":4,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/20061.8715a452514d45d5dd3b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.294Z","timestamp":1785159269294,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/20061.8715a452514d45d5dd3b.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1ee3\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1bbaf345811d32e654c06475dc49ab22\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"]}],"data":{"size":7907,"size_decoded":4450,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3062)","md5":"7d505e8048a3d56a7c35fec43b942e28","sha1":"7cc8e3f14d3c2bc72667a4b341a18173ba08360e","sha256":"3c8a6537a973cf0adf27e43d6727b986d50fc12ac3b1bf62528b892270b5a901","sha512":"42ecf81a5c530657c264164cdace5abb238353df391c16cb5f4eb18c3d4eea154e934f76f113c9fe8c77cd66d8e6038b288ce213c22f225e959c5b61f6221849","ssdeep":"192:OlOIsbRrYGv5JJjaqRSPoi35z6e5WyoEH6R+0332JtcIKidzTnM:OlOIs1BnJjaq+oCm1GH6etcFidzTM","tlshash":"44f1b89870c9b07653c60867f0735488f23c2550788e89a0f298dcf63ab285ed267f9d","first_seen":"2026-07-23T13:38:20.472499Z","last_seen":"2026-07-30T06:08:06.3548Z","times_seen":1507,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMjAwNjFdLHszMjA0MDMoZSx0KXt2YXIgbixvPSEoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3d8fCF3aW5kb3cuZG9jdW1lbnR8fCF3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCk7ZnVuY3Rpb24gcigpe2lmKG4pcmV0dXJuIG47aWYoIW98fCF3aW5kb3cuZG9jdW1lbnQuYm9keSlyZXR1cm4iaW5kZXRlcm1pbmF0ZSI7dmFyIGU9d2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiBlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJBQkNEIikpLGUuZGlyPSJydGwiLGUuc3R5bGUuZm9udFNpemU9IjE0cHgiLGUuc3R5bGUud2lkdGg9IjRweCIsZS5zdHlsZS5oZWlnaHQ9IjFweCIsZS5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLGUuc3R5bGUudG9wPSItMTAwMHB4IixlLnN0eWxlLm92ZXJmbG93PSJzY3JvbGwiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSksbj0icmV2ZXJzZSIsZS5zY3JvbGxMZWZ0PjA/bj0iZGVmYXVsdCI6KGUuc2Nyb2xsTGVmdD0xLDA9PT1lLnNjcm9sbExlZnQmJihuPSJuZWdhdGl2ZSIpKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGUpLG59fSwzODQwMTcoZSx0LG4pe24uZCh0LHtmZXRjaDooKT0+c30pO3ZhciBvPW4oMjIxMDYxKTtuKDMwMDI4Nik7Y29uc3Qgcj0oMCxvLmdldExvZ2dlcikoIkZldGNoIik7ZnVuY3Rpb24gcyhlLHQsbj17fSl7e2NvbnN0e2xvZ09uRXJyb3JTdGF0dXM6bz0hMCxsb2dCb2R5T25FcnJvcjpzPSExfT1uO3Q9dHx8e30sZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBVUkwoZSxkb2N1bWVudC5iYXNlVVJJKS5vcmlnaW49PT1sb2NhdGlvbi5vcmlnaW59KGUpJiYodC5oZWFkZXJzP3QuaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnN8fCh0LmhlYWRlcnM9bmV3IEhlYWRlcnModC5oZWFkZXJzKSk6dC5oZWFkZXJzPW5ldyBIZWFkZXJzLHdpbmRvdy5sb2NhbGUmJnQuaGVhZGVycy5zZXQoIlgtTGFuZ3VhZ2UiLHdpbmRvdy5sb2NhbGUpLHQuaGVhZGVycy5zZXQoIlgtUmVxdWVzdGVkLVdpdGgiLCJYTUxIdHRwUmVxdWVzdCIpKSx2b2lkIDA9PT10LmNyZWRlbnRpYWxzJiYodC5jcmVkZW50aWFscz0ic2FtZS1vcmlnaW4iKTtjb25zdCBpPXdpbmRvdy5mZXRjaChlLHQpO3JldHVybiBpLnRoZW4oKG49PntpZighbi5vayYmbyl7bGV0IG89IiI7dC5tZXRob2QmJihvKz1gJHt0Lm1ldGhvZC50b1VwcGVyQ2FzZSgpfSBgKSxvKz1lLG8rPWAuIFN0YXR1cyAke24uc3RhdHVzfWAsbi5zdGF0dXNUZXh0JiYobys9YC4gJHtuLnN0YXR1c1RleHR9YCksbi5oZWFkZXJzLnZpYSYmKG8rPWAuIFZpYTogJHtuLmhlYWRlcnMudmlhfWApLHMmJiJzdHJpbmciPT10eXBlb2YgdC5ib2R5JiYobys9YC4gQm9keTogJHt0LmJvZHkuc2xpY2UoMCwxMDI0KX1gKSxyLmxvZ0Vycm9yKG8pfXJldHVybiBufSksKG49PntpZihuJiYiQWJvcnRFcnJvciI9PT1uLm5hbWUpcmV0dXJuO2xldCBvPSIiO3QubWV0aG9kJiYobys9YCR7dC5tZXRob2QudG9VcHBlckNhc2UoKX0gYCksbys9ZSxuYXZpZ2F0b3Iub25MaW5lP28rPWAuICR7U3RyaW5nKG4pfWA6bys9Ii4gVXNlciBpcyBvZmZsaW5lLiIsci5sb2dFcnJvcihvKX0pKSxpfX19LDI0NzkwMShlLHQsbil7dmFyIG87bi5kKHQse1N0ZFRoZW1lOigpPT5vfSksZnVuY3Rpb24oZSl7ZS5MaWdodD0ibGlnaHQiLGUuRGFyaz0iZGFyayJ9KG98fChvPXt9KSl9LDcyMTM2OShlLHQsbil7bi5kKHQse2lzTmF0aXZlVUlJbnRlcmFjdGlvbjooKT0+c30pO3ZhciBvPW4oMjM1NzI0KTtmdW5jdGlvbiByKGUpe2lmKCJJTlBVVCI9PT1lLnRhZ05hbWUpe2NvbnN0IHQ9ZS50eXBlO3JldHVybiJ0ZXh0Ij09PXR8fCJlbWFpbCI9PT10fHwibnVtYmVyIj09PXR8fCJwYXNzd29yZCI9PT10fHwic2VhcmNoIj09PXR8fCJ0ZWwiPT09dHx8InVybCI9PT10fXJldHVybiJURVhUQVJFQSI9PT1lLnRhZ05hbWV8fGUuaXNDb250ZW50RWRpdGFibGV9ZnVuY3Rpb24gcyhlLHQpe2lmKCF0KXJldHVybiExO2NvbnN0IG49MjU1JmU7aWYoMjc9PT1ufHxuPj4+ND09NylyZXR1cm4hMTtzd2l0Y2goZV5uKXtjYXNlIG8uTW9kaWZpZXJzLkFsdDpyZXR1cm4oMzg9PT1ufHw0MD09PW4pJiYiU0VMRUNUIj09PXQudGFnTmFtZXx8cih0KTtjYXNlIG8uTW9kaWZpZXJzLkFsdCtvLk1vZGlmaWVycy5TaGlmdDpyZXR1cm4gcih0KTtjYXNlIG8uTW9kaWZpZXJzLk1vZDppZig2Nz09PW58fCFvLmlzTWFjS2V5Ym9hcmQmJjQ1PT09bil7Y29uc3QgZT10Lm93bmVyRG9jdW1lbnQmJnQub3duZXJEb2N1bWVudC5nZXRTZWxlY3Rpb24oKTtpZihlJiYhZS5pc0NvbGxhcHNlZClyZXR1cm4hMH1yZXR1cm4gcih0KTtjYXNlIG8uTW9kaWZpZXJzLk1vZCtvLk1vZGlmaWVycy5TaGlmdDpyZXR1cm4gbj49MzMmJm48PTQwJiZyKHQpO2Nhc2Ugby5Nb2RpZmllcnMuU2hpZnQ6Y2FzZSAwOnJldHVybiA5PT09bj8hKCF0Lm93bmVyRG9jdW1lbnR8fHQ9PT10Lm93bmVyRG9jdW1lbnQuYm9keXx8dD09PXQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpOighZnVuY3Rpb24oZSl7aWYoIkJVVFRPTiI9PT1lLnRhZ05hbWUpcmV0dXJuITA7aWYoIklOUFVUIj09PWUudGFnTmFtZSl7Y29uc3QgdD1lLnR5cGU7aWYoInN1Ym1pdCI9PT10fHwiYnV0dG9uIj09PXR8fCJyZXNldCI9PT10fHwiY2hlY2tib3giPT09dHx8InJhZGlvIj09PXQpcmV0dXJuITB9cmV0dXJuITF9KHQpfHwxMz09PW58fDMyPT09bnx8OT09PW4pJiYoImZvcm0iaW4gdHx8dC5pc0NvbnRlbnRFZGl0YWJsZSl9cmV0dXJuITF9fSw1MDU1NihlLHQsbil7bi5kKHQse2NvbG9yc1BhbGV0dGU6KCk9PmR9KTt2YXIgbz1uKDMxNzY2Mykscj1uKDg2NzUyMikscz1uKDEzODYzOCk7Y29uc3QgaT17Li4ubywuLi5yfSxhPXt9LGM9T2JqZWN0LmtleXMoaSkubGVuZ3RoLGw9L14jKChbYS1mMC05XXsyfSl7Miw0fXxbYS1mMC05XXszfSkkL2k7ZnVuY3Rpb24gdShlLHQ9W10sbj1pKXtjb25zdCBvPW5bZV0KO2lmKCFvKXJldHVybiBudWxsO2lmKGwudGVzdChvKSlyZXR1cm4gbztjb25zdCByPW87cmV0dXJuIHQucHVzaChlKSwtMSE9PXQuaW5kZXhPZihyKT8oY29uc29sZS53YXJuKCJDb2xvcnMgZGVmaW5pdGlvbnMgY3ljbGVkIiksbyk6dC5sZW5ndGg+Yz8oY29uc29sZS53YXJuKCJUb28gbWFueSB2YXJpYWJsZXMtbGluayBpbiBIRVgtY29sb3Igc2VhcmNoOiAiK3RbMF0pLG51bGwpOnUocix0LG4pfU9iamVjdC5rZXlzKGkpLmZvckVhY2goKGU9Pntjb25zdCB0PXUoZSk7YVtlXT0oMCxzLmVuc3VyZU5vdE51bGwpKHQpfSkpO2NvbnN0IGQ9YX0sMjE4ODE0KGUsdCxuKXtuLmQodCx7Y29sb3I6KCk9Pm99KTtjb25zdCBvPXtibGFjazcwOiIjNEE0QTRBIixibGFjazgwOiIjNTM1MzUzIn19LDEzODYzOChlLHQsbil7ZnVuY3Rpb24gbyhlLHQpe2lmKCFlKXRocm93IG5ldyBFcnJvcigiQXNzZXJ0aW9uIGZhaWxlZCIrKHQ/YDogJHt0fWA6IiIpKX1mdW5jdGlvbiByKGUsdCl7aWYodm9pZCAwPT09ZSl0aHJvdyBuZXcgRXJyb3IoYCR7dD8/IlZhbHVlIn0gaXMgdW5kZWZpbmVkYCk7cmV0dXJuIGV9ZnVuY3Rpb24gcyhlLHQpe2lmKG51bGw9PT1lKXRocm93IG5ldyBFcnJvcihgJHt0Pz8iVmFsdWUifSBpcyBudWxsYCk7cmV0dXJuIGV9bi5kKHQse2Fzc2VydDooKT0+byxlbnN1cmVEZWZpbmVkOigpPT5yLGVuc3VyZU5vdE51bGw6KCk9PnN9KX0sODU2MzI0KGUsdCxuKXtuLmQodCx7Z2V0TGFuZ3VhZ2U6KCk9PnMscmVnaXN0ZXJMYW5ndWFnZUNvZGVNYXBwZXI6KCk9PmEscmVnaXN0ZXJMYW5ndWFnZUdldHRlcjooKT0+cn0pO2xldCBvPW51bGw7ZnVuY3Rpb24gcihlKXtvPWV9ZnVuY3Rpb24gcygpe2lmKCFvKXRocm93IG5ldyBFcnJvcigiTGFuZ3VhZ2UgZ2V0dGVyIG5vdCByZWdpc3RlcmVkLiBDYWxsIHJlZ2lzdGVyTGFuZ3VhZ2VHZXR0ZXIoKSBmaXJzdC4iKTtyZXR1cm4gbygpfWxldCBpPWU9PmU7ZnVuY3Rpb24gYShlKXtpPWV9fSw3NzMwODgoZSx0LG4pe3ZhciBvO2Z1bmN0aW9uIHIoZSx0PSExKXtpZigicGVyaW9kLWJhY2siPT09ZS50eXBlKXtsZXQgbj1lLnZhbHVlO3JldHVybiB0JiYiWVREIiE9PW4mJiJEIj09PW4uc2xpY2UoLTEpJiYobj1uLnNsaWNlKDAsLTEpKSxufXJldHVybiJyLCIrZS5mcm9tKyI6IitlLnRvfWZ1bmN0aW9uIHMoZSl7Y29uc3QgdD0vciwoXGQrKTooXGQrKS8uZXhlYyhlKTtyZXR1cm4gbnVsbCE9PXQ/e2Zyb206TnVtYmVyKHRbMV0pLHRvOk51bWJlcih0WzJdKSx0eXBlOiJ0aW1lLXJhbmdlIn06e3ZhbHVlOmUsdHlwZToicGVyaW9kLWJhY2sifX1uLmQodCx7Y29udmVydFN0clRvVGltZUZyYW1lOigpPT5zLGNvbnZlcnRUaW1lRnJhbWVUb1N0cjooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuUGVyaW9kQmFjaz0icGVyaW9kLWJhY2siLGUuVGltZVJhbmdlPSJ0aW1lLXJhbmdlIn0ob3x8KG89e30pKX0sODEwNDEoZSx0LG4pe24uZCh0LHtTdGRUaGVtZTooKT0+by5TdGRUaGVtZX0pO3ZhciBvPW4oMjQ3OTAxKX0sOTExMzI3KGUsdCxuKXtuLmQodCx7bWFrZVN5bWJvbFBhZ2VVcmw6KCk9PmcsbWFrZVRlbXBsYXRlU3ltYm9sVXJsOigpPT5wfSk7big5NjM5MDApO3ZhciBvPW4oMzA5ODM2KSxyPW4oMjQxOTM3KSxzPW4oNzMwNjQ1KSxpPW4oODUxNDU4KSxhPW4oMTU2ODI5KTtjb25zdCBjPW5ldyBTZXQoWyJTUDpTUFgiLCJDQk9FOlNQWCJdKTtmdW5jdGlvbiBsKGUpe2NvbnN0IHQ9ey4uLmV9O2lmKCJzcHJlYWQiPT09dC50eXBlfHwiZXhwcmVzc2lvbiI9PT10LnR5cGUpe2NvbnN0IGU9dC5zaG9ydE5hbWUmJnUodC5zaG9ydE5hbWUpLG49dC5wcm9OYW1lJiZ1KHQucHJvTmFtZSk7dC50eXBlPXZvaWQgMCx0LnNob3J0TmFtZT1lLHQucHJvTmFtZT1ufXJldHVybiB0fWZ1bmN0aW9uIHUoZSl7cmV0dXJuKDAsaS50b2tlbml6ZSkoZSkuZmluZCgoZT0+InN5bWJvbCI9PT1lLnR5cGUpKT8udmFsdWV9ZnVuY3Rpb24gZChlKXtjb25zdCB0PXtzaG9ydE5hbWU6ZS5zaG9ydE5hbWUsZXhjaGFuZ2U6ZS5leGNoYW5nZSxwcm9OYW1lOmUucHJvTmFtZSx0eXBlOmUudHlwZSx0eXBlc3BlY3M6ZS50eXBlc3BlY3Mscm9vdDplLnJvb3R9O3JldHVybiB0LnByb05hbWUmJnQucHJvTmFtZS5pbmNsdWRlcygiOiIpJiYoW3QuZXhjaGFuZ2UsdC5zaG9ydE5hbWVdPXQucHJvTmFtZS5zcGxpdCgiOiIpKSx0fWZ1bmN0aW9uIG0oZSx0KXtjb25zdCBuPWVuY29kZVVSSUNvbXBvbmVudCh0LnNob3J0TmFtZXx8IiIpLG89ZW5jb2RlVVJJQ29tcG9uZW50KHQuZXhjaGFuZ2V8fCIiKSxyPWVuY29kZVVSSUNvbXBvbmVudCh0LnByb05hbWV8fCIiKSxzPWVuY29kZVVSSUNvbXBvbmVudCh0LnJvb3R8fCIiKTtyZXR1cm4gZS5yZXBsYWNlKCJ7dHZleGNoYW5nZX0iLG8pLnJlcGxhY2UoInt0dnN5bWJvbH0iLG4pLnJlcGxhY2UoInt0dnByb3N5bWJvbH0iLHIpLnJlcGxhY2UoInt0dnJvb3R9IixzKX1mdW5jdGlvbiBmKGUsdD0iIil7Y29uc3Qgbj1kKGUpLHt0eXBlOm8sdHlwZXNwZWNzOnIsc2hvcnROYW1lOnMscHJvTmFtZTppLGV4Y2hhbmdlOmwscm9vdDp1fT1uO3JldHVybiB2b2lkIDA9PT1zJiZ2b2lkIDA9PT1pPyhjb25zb2xlLndhcm4oIlBhcmFtcyBtaXNzZWQiKSwiLyIpOmkmJmMuaGFzKGkpP2Avc3ltYm9scy97dHZzeW1ib2x9LyR7dH1gOm98fHI/ImNvbW1vZGl0eSI9PT1vJiZyJiZyLmluY2x1ZGVzKCJjZmQiKT8iL3N5bWJvbHMve3R2c3ltYm9sfS8/ZXhjaGFuZ2U9e3R2ZXhjaGFuZ2V9IjohdXx8IXJ8fCJmdXR1cmVzIiE9PW98fHIuaW5jbHVkZXMoImNvbnRpbnVvdXMiKSYmcz8uZW5kc1dpdGgoIjEhIil8fHIuaW5jbHVkZXMoImV4Y2hhbmdlLWNvbnRpbnVvdXMiKT9sJiYoImZvcmV4Ij09PW98fHImJigwLAphLmhhc0NyeXB0b1R5cGVzcGVjKShyKSk/Ii9zeW1ib2xzL3t0dnN5bWJvbH0vP2V4Y2hhbmdlPXt0dmV4Y2hhbmdlfSI6bD9gL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dmV4Y2hhbmdlfS17dHZyb290fTEhLyR7dH0/Y29udHJhY3Q9e3R2c3ltYm9sfWA6bD9gL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnN5bWJvbH0vJHt0fWA6YC9zeW1ib2xzL3t0dnN5bWJvbH0vJHt0fWB9ZnVuY3Rpb24gcChlLHQpe2xldCBuPWU7aWYoIS97dHZzeW1ib2x9fHt0dmV4Y2hhbmdlfXx7dHZwcm9zeW1ib2x9Ly50ZXN0KGUpKXtsZXQgbz0idHZwcm9zeW1ib2wiO3ZvaWQgMD09PXQucHJvTmFtZSYmKG89InR2c3ltYm9sIiksbj1gJHtlfT90dndpZGdldHN5bWJvbD17JHtvfX1gfWNvbnN0IG89bShuLGQobCh0KSkpO2lmKCEoMCxzLmlzU2FmZVVybCkobykpdGhyb3cgbmV3IEVycm9yKGBUaGUgc3ltYm9sIFVSTCAke299IGlzIG5vdCBhbGxvd2VkLmApO3JldHVybiBvfWZ1bmN0aW9uIGgoZSx0LG4scyl7Y29uc3QgaT0od2luZG93LmxvY2FsZV9kb21haW5zPygwLHIuZGV0ZXJtaW5lQmFzZVVybCkod2luZG93LmxvY2FsZV9kb21haW5zLHMpOndpbmRvdy5sb2NhdGlvbi5vcmlnaW4pK20oZSxkKGwodCkpKTtyZXR1cm4gbj8oMCxvLmFkZFV0bVRvVXJsKShpLG4pOml9ZnVuY3Rpb24gZyhlLHQsbixvKXtjb25zdCByPWwoZSk7cmV0dXJuIGgoZihyLG8pLHIsdCxuKX19LDQ0MzU1NyhlLHQsbil7bi5kKHQse3BhcnNlSHRtbEVsZW1lbnQ6KCk9PnN9KTtjb25zdCBvPW5ldyBXZWFrTWFwO3ZhciByO2Z1bmN0aW9uIHMoZSx0KXtjb25zdCBuPWZ1bmN0aW9uKGUsdCl7bGV0IG4scjtyZXR1cm4gbj1udWxsPT10P2RvY3VtZW50LmRvY3VtZW50RWxlbWVudDo5PT09dC5ub2RlVHlwZT90LmRvY3VtZW50RWxlbWVudDp0LG8mJihyPW8uZ2V0KG4pKSxyfHwocj1uLm93bmVyRG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxyLnNlbGVjdE5vZGVDb250ZW50cyhuKSxvJiZvLnNldChuLHIpKSxyLmNyZWF0ZUNvbnRleHR1YWxGcmFnbWVudChlKX0oZSx0KSxyPW4uZmlyc3RFbGVtZW50Q2hpbGQ7cmV0dXJuIG51bGwhPT1yJiZuLnJlbW92ZUNoaWxkKHIpLHJ9IWZ1bmN0aW9uKGUpe2VbZS5FbGVtZW50PTFdPSJFbGVtZW50IixlW2UuRG9jdW1lbnQ9OV09IkRvY3VtZW50In0ocnx8KHI9e30pKX0sMzA5ODM2KGUsdCxuKXtuLmQodCx7YWRkVXRtVG9Vcmw6KCk9PnJ9KTt2YXIgbz1uKDYwMTU4Nyk7ZnVuY3Rpb24gcihlLHQpe2lmKCEvKFthLXpBLVowLTkuLV0qdHJhZGluZ3ZpZXcuY29tKXxsb2NhbGhvc3QvLnRlc3QoZSkpcmV0dXJuIGU7Y29uc3Qgbj0oMCxvLmJ1aWxkVXRtUXVlcnlTdHJpbmcpKHQpO2lmKCIiPT09bilyZXR1cm4gZTtjb25zdCByPWUuaW5kZXhPZigiPyIpLHM9ZS5pbmRleE9mKCIjIiksaT0tMSE9PXM7aWYoLTEhPT1yJiYoIWl8fHI8cykpe3JldHVybmAke2Uuc2xpY2UoMCxyKX0/JHtpP2Uuc2xpY2UocisxLHMpOmUuc2xpY2UocisxKX0mJHtufSR7aT9lLnNsaWNlKHMpOiIifWB9aWYoaSl7cmV0dXJuYCR7ZS5zbGljZSgwLHMpfT8ke259JHtlLnNsaWNlKHMpfWB9cmV0dXJuYCR7ZX0/JHtufWB9fSw2MDE1ODcoZSx0LG4pe24uZCh0LHtidWlsZFV0bVF1ZXJ5U3RyaW5nOigpPT5hLGZpbHRlclV0bUluZm86KCk9Pml9KTt2YXIgbz1uKDQ5MjY3Nykscj1uKDY0MTU5Myk7Y29uc3Qgcz1bInV0bV9zb3VyY2UiLCJ1dG1fbWVkaXVtIiwidXRtX2NhbXBhaWduIl07ZnVuY3Rpb24gaShlKXtjb25zdCB0PXt9O3JldHVybiBzLmZvckVhY2goKG49Pntjb25zdCBvPWVbbl07InN0cmluZyI9PXR5cGVvZiBvJiYiIiE9PW8mJih0W25dPSgwLHIuaHRtbEVzY2FwZSkobykpfSkpLHR9ZnVuY3Rpb24gYShlLHQ9ITEpe2NvbnN0IG49KDAsby5jcmVhdGVVcmxQYXJhbXMpKGUpO3JldHVybiBuJiZ0PyI/IituOm59fX1dKTs="}},"time_used":4,"timings":{"blocked":2,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.smartsuppchat.com/loader.js?","fqdn":"www.smartsuppchat.com","domain":"smartsuppchat.com","tld":"com"},"ip":{"addr":"185.76.9.12","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.293Z","timestamp":1785159268293,"http_version":"HTTP/2","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":"1161431244.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 14:34:49 GMT","end":"Wed, 02 Sep 2026 14:34:48 GMT"},"fingerprint":{"sha1":"77:06:42:CE:73:9F:CA:05:A3:6E:99:99:F2:3F:B7:EE:E4:60:E9:29","sha256":"E7:6E:68:C5:CD:6C:F6:14:84:A0:18:1A:D7:94:77:7A:28:F6:67:8E:90:58:94:AE:3A:65:6A:B7:95:0F:5D:1B"}}},"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://walmartfundholdings.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 13:34:31 GMT\r\ncontent-type: application/javascript\r\ncache-control: max-age=300, public, s-maxage=60\r\netag: W/\"6a2663cd-4668\"\r\nexpires: Mon, 08 Jun 2026 06:46:12 GMT\r\nlast-modified: Mon, 08 Jun 2026 06:40:13 GMT\r\nx-77-nzt: k9pTt+fpTlmbck5hZ4EOceTjWjGsaOBCVDTizpU4PREu+C9O5vDIF7l760z62xf6cU+Ek6o\r\nx-77-nzt-ray: e2f754202d143939675e676a02c7c823\r\nx-77-cache: HIT\r\nx-77-age: 54\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":18024,"size_decoded":6042,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (17951)","md5":"218d24439d4e2c0990f35338a7ac220c","sha1":"5a7b913584c1244bf61beab9dc644204d130101c","sha256":"efb497f7159de26ea5e0521d675d909dc063e36d0d23c2ad96fa9109b73ee263","sha512":"17af39bfdc350c9d1f8dd74652641d0c028881ecb3935d2d9fdb763d24136665d135d00219aabac57693112e2314d4fa91b802ba2662a1580aa35c5e0b6e624b","ssdeep":"384:2/xzy2A3wyxNeBWbEgl/EuVaBWbE0rIcvqSI/aQ/UpG:2/xzy2A3wXscuVaAxka05","tlshash":"4182b7cc7691b16543ab61b4843f620ff1376929740d8865b965eae13cb8c8ed037fb8","first_seen":"2026-03-30T19:01:55.527327Z","last_seen":"2026-07-30T06:08:39.271456Z","times_seen":7765,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgbG9hZGVyLnRlbXBsYXRlLmpzLkxJQ0VOU0UudHh0ICovCigoKT0+e3ZhciB0PXs3MTUodCl7dC5leHBvcnRzPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7LTEhPT1uYXZpZ2F0b3IuYXBwVmVyc2lvbi5pbmRleE9mKCJNU0lFIDEwIikmJih0PSEwKTt2YXIgZSxuPVtdLHI9Im9iamVjdCI9PXR5cGVvZiBkb2N1bWVudCYmZG9jdW1lbnQsbz10P3IuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsKCJsZWZ0Iik6ci5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGwsaT0iRE9NQ29udGVudExvYWRlZCIscz1yJiYobz8vXmxvYWRlZHxeYy86L15sb2FkZWR8Xml8XmMvKS50ZXN0KHIucmVhZHlTdGF0ZSk7cmV0dXJuIXMmJnImJnIuYWRkRXZlbnRMaXN0ZW5lcihpLGU9ZnVuY3Rpb24oKXtmb3Ioci5yZW1vdmVFdmVudExpc3RlbmVyKGksZSkscz0xO2U9bi5zaGlmdCgpOyllKCl9KSxmdW5jdGlvbih0KXtzP3NldFRpbWVvdXQodCwwKTpuLnB1c2godCl9fSgpfSw3NjEodCxlLG4peyJ1c2Ugc3RyaWN0Ijtjb25zdCByPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuY29uc3RydWN0b3I7cmV0dXJuIHRoaXMudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gZS5yZXNvbHZlKHQoKSkudGhlbihmdW5jdGlvbigpe3JldHVybiBufSl9LGZ1bmN0aW9uKG4pe3JldHVybiBlLnJlc29sdmUodCgpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGUucmVqZWN0KG4pfSl9KX0sbz1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IHRoaXMoZnVuY3Rpb24oZSxuKXtpZighdHx8dm9pZCAwPT09dC5sZW5ndGgpcmV0dXJuIG4obmV3IFR5cGVFcnJvcih0eXBlb2YgdCsiICIrdCsiIGlzIG5vdCBpdGVyYWJsZShjYW5ub3QgcmVhZCBwcm9wZXJ0eSBTeW1ib2woU3ltYm9sLml0ZXJhdG9yKSkiKSk7dmFyIHI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodCk7aWYoMD09PXIubGVuZ3RoKXJldHVybiBlKFtdKTt2YXIgbz1yLmxlbmd0aDtmdW5jdGlvbiBpKHQsbil7aWYobiYmKCJvYmplY3QiPT10eXBlb2Ygbnx8ImZ1bmN0aW9uIj09dHlwZW9mIG4pKXt2YXIgcz1uLnRoZW47aWYoImZ1bmN0aW9uIj09dHlwZW9mIHMpcmV0dXJuIHZvaWQgcy5jYWxsKG4sZnVuY3Rpb24oZSl7aSh0LGUpfSxmdW5jdGlvbihuKXtyW3RdPXtzdGF0dXM6InJlamVjdGVkIixyZWFzb246bn0sMD09PS0tbyYmZShyKX0pfXJbdF09e3N0YXR1czoiZnVsZmlsbGVkIix2YWx1ZTpufSwwPT09LS1vJiZlKHIpfWZvcih2YXIgcz0wO3M8ci5sZW5ndGg7cysrKWkocyxyW3NdKX0pfTtmdW5jdGlvbiBpKHQsZSl7dGhpcy5uYW1lPSJBZ2dyZWdhdGVFcnJvciIsdGhpcy5lcnJvcnM9dCx0aGlzLm1lc3NhZ2U9ZXx8IiJ9aS5wcm90b3R5cGU9RXJyb3IucHJvdG90eXBlO2NvbnN0IHM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztyZXR1cm4gbmV3IGUoZnVuY3Rpb24obixyKXtpZighdHx8dm9pZCAwPT09dC5sZW5ndGgpcmV0dXJuIHIobmV3IFR5cGVFcnJvcigiUHJvbWlzZS5hbnkgYWNjZXB0cyBhbiBhcnJheSIpKTt2YXIgbz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0KTtpZigwPT09by5sZW5ndGgpcmV0dXJuIHIoKTtmb3IodmFyIHM9W10sYT0wO2E8by5sZW5ndGg7YSsrKXRyeXtlLnJlc29sdmUob1thXSkudGhlbihuKS5jYXRjaChmdW5jdGlvbih0KXtzLnB1c2godCkscy5sZW5ndGg9PT1vLmxlbmd0aCYmcihuZXcgaShzLCJBbGwgcHJvbWlzZXMgd2VyZSByZWplY3RlZCIpKX0pfWNhdGNoKHQpe3IodCl9fSl9O3ZhciBhPXNldFRpbWVvdXQ7ZnVuY3Rpb24gYyh0KXtyZXR1cm4gQm9vbGVhbih0JiZ2b2lkIDAhPT10Lmxlbmd0aCl9ZnVuY3Rpb24gdSgpe31mdW5jdGlvbiBsKHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGwpKXRocm93IG5ldyBUeXBlRXJyb3IoIlByb21pc2VzIG11c3QgYmUgY29uc3RydWN0ZWQgdmlhIG5ldyIpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoIm5vdCBhIGZ1bmN0aW9uIik7dGhpcy5fc3RhdGU9MCx0aGlzLl9oYW5kbGVkPSExLHRoaXMuX3ZhbHVlPXZvaWQgMCx0aGlzLl9kZWZlcnJlZHM9W10sdyh0LHRoaXMpfWZ1bmN0aW9uIHAodCxlKXtmb3IoOzM9PT10Ll9zdGF0ZTspdD10Ll92YWx1ZTswIT09dC5fc3RhdGU/KHQuX2hhbmRsZWQ9ITAsbC5faW1tZWRpYXRlRm4oZnVuY3Rpb24oKXt2YXIgbj0xPT09dC5fc3RhdGU/ZS5vbkZ1bGZpbGxlZDplLm9uUmVqZWN0ZWQ7aWYobnVsbCE9PW4pe3ZhciByO3RyeXtyPW4odC5fdmFsdWUpfWNhdGNoKHQpe3JldHVybiB2b2lkIGQoZS5wcm9taXNlLHQpfWYoZS5wcm9taXNlLHIpfWVsc2UoMT09PXQuX3N0YXRlP2Y6ZCkoZS5wcm9taXNlLHQuX3ZhbHVlKX0pKTp0Ll9kZWZlcnJlZHMucHVzaChlKX1mdW5jdGlvbiBmKHQsZSl7dHJ5e2lmKGU9PT10KXRocm93IG5ldyBUeXBlRXJyb3IoIkEgcHJvbWlzZSBjYW5ub3QgYmUgcmVzb2x2ZWQgd2l0aCBpdHNlbGYuIik7aWYoZSYmKCJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpKXt2YXIgbj1lLnRoZW47aWYoZSBpbnN0YW5jZW9mIGwpcmV0dXJuIHQuX3N0YXRlPTMsdC5fdmFsdWU9ZSx2b2lkIGgodCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIG4pcmV0dXJuIHZvaWQgdygocj1uLG89ZSxmdW5jdGlvbigpe3IuYXBwbHkobyxhcmd1bWVudHMpfSksdCl9dC5fc3RhdGU9MSx0Ll92YWx1ZT1lLGgodCl9Y2F0Y2goZSl7ZCh0LGUpfXZhciByLG99ZnVuY3Rpb24gZCh0LGUpe3QuX3N0YXRlPTIsdC5fdmFsdWU9ZSxoKHQpfWZ1bmN0aW9uIGgodCl7Mj09PXQuX3N0YXRlJiYwPT09dC5fZGVmZXJyZWRzLmxlbmd0aCYmbC5faW1tZWRpYXRlRm4oZnVuY3Rpb24oKXt0Ll9oYW5kbGVkfHxsLl91bmhhbmRsZWRSZWplY3Rpb25Gbih0Ll92YWx1ZSl9KTtmb3IodmFyIGU9MCxuPXQuX2RlZmVycmVkcy5sZW5ndGg7ZTxuO2UrKylwKHQsdC5fZGVmZXJyZWRzW2VdKTt0Ll9kZWZlcnJlZHM9bnVsbH1mdW5jdGlvbiB5KHQsZSxuKXt0aGlzLm9uRnVsZmlsbGVkPSJmdW5jdGlvbiI9PXR5cGVvZiB0P3Q6bnVsbCx0aGlzLm9uUmVqZWN0ZWQ9ImZ1bmN0aW9uIj09dHlwZW9mIGU/ZTpudWxsLHRoaXMucHJvbWlzZT1ufWZ1bmN0aW9uIHcodCxlKXt2YXIgbj0hMTt0cnl7dChmdW5jdGlvbih0KXtufHwobj0hMCxmKGUsdCkpfSxmdW5jdGlvbih0KXtufHwobj0hMCxkKGUsdCkpfSl9Y2F0Y2godCl7aWYobilyZXR1cm47bj0hMCxkKGUsdCl9fWwucHJvdG90eXBlLmNhdGNoPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnRoZW4obnVsbCx0KX0sbC5wcm90b3R5cGUudGhlbj1mdW5jdGlvbih0LGUpe3ZhciBuPW5ldyB0aGlzLmNvbnN0cnVjdG9yKHUpO3JldHVybiBwKHRoaXMsbmV3IHkodCxlLG4pKSxufSxsLnByb3RvdHlwZS5maW5hbGx5PXIsbC5hbGw9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBsKGZ1bmN0aW9uKGUsbil7aWYoIWModCkpcmV0dXJuIG4obmV3IFR5cGVFcnJvcigiUHJvbWlzZS5hbGwgYWNjZXB0cyBhbiBhcnJheSIpKTt2YXIgcj1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0KTtpZigwPT09ci5sZW5ndGgpcmV0dXJuIGUoW10pO3ZhciBvPXIubGVuZ3RoO2Z1bmN0aW9uIGkodCxzKXt0cnl7aWYocyYmKCJvYmplY3QiPT10eXBlb2Ygc3x8ImZ1bmN0aW9uIj09dHlwZW9mIHMpKXt2YXIgYT1zLnRoZW47aWYoImZ1bmN0aW9uIj09dHlwZW9mIGEpcmV0dXJuIHZvaWQgYS5jYWxsKHMsZnVuY3Rpb24oZSl7aSh0LGUpfSxuKX1yW3RdPXMsMD09PS0tbyYmZShyKX1jYXRjaCh0KXtuKHQpfX1mb3IodmFyIHM9MDtzPHIubGVuZ3RoO3MrKylpKHMscltzXSl9KX0sbC5hbnk9cyxsLmFsbFNldHRsZWQ9byxsLnJlc29sdmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJvYmplY3QiPT10eXBlb2YgdCYmdC5jb25zdHJ1Y3Rvcj09PWw/dDpuZXcgbChmdW5jdGlvbihlKXtlKHQpfSl9LGwucmVqZWN0PWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgbChmdW5jdGlvbihlLG4pe24odCl9KX0sbC5yYWNlPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgbChmdW5jdGlvbihlLG4pe2lmKCFjKHQpKXJldHVybiBuKG5ldyBUeXBlRXJyb3IoIlByb21pc2UucmFjZSBhY2NlcHRzIGFuIGFycmF5IikpO2Zvcih2YXIgcj0wLG89dC5sZW5ndGg7cjxvO3IrKylsLnJlc29sdmUodFtyXSkudGhlbihlLG4pfSl9LGwuX2ltbWVkaWF0ZUZuPSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRJbW1lZGlhdGUmJmZ1bmN0aW9uKHQpe3NldEltbWVkaWF0ZSh0KX18fGZ1bmN0aW9uKHQpe2EodCwwKX0sbC5fdW5oYW5kbGVkUmVqZWN0aW9uRm49ZnVuY3Rpb24odCl7InVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlJiZjb25zb2xlLndhcm4oIlBvc3NpYmxlIFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjoiLHQpfTtjb25zdCB2PWw7dmFyIGc9ZnVuY3Rpb24oKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYpcmV0dXJuIHNlbGY7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpcmV0dXJuIHdpbmRvdztpZih2b2lkIDAhPT1uLmcpcmV0dXJuIG4uZzt0aHJvdyBuZXcgRXJyb3IoInVuYWJsZSB0byBsb2NhdGUgZ2xvYmFsIG9iamVjdCIpfSgpOyJmdW5jdGlvbiIhPXR5cGVvZiBnLlByb21pc2U/Zy5Qcm9taXNlPXY6KGcuUHJvbWlzZS5wcm90b3R5cGUuZmluYWxseXx8KGcuUHJvbWlzZS5wcm90b3R5cGUuZmluYWxseT1yKSxnLlByb21pc2UuYWxsU2V0dGxlZHx8KGcuUHJvbWlzZS5hbGxTZXR0bGVkPW8pLGcuUHJvbWlzZS5hbnl8fChnLlByb21pc2UuYW55PXMpKX0sMzQ1KHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUuU21hcnRzdXBwTG9hZGVyPXZvaWQgMDt2YXIgcj1uKDc0MCksbz1uKDg5MyksaT1uKDEzMCkscz1mdW5jdGlvbigpe2Z1bmN0aW9uIHQodCl7dGhpcy5vcHRpb25zPXQsdGhpcy53aWRnZXRzPXt9LHRoaXMuY2hhdHM9dGhpcy53aWRnZXRzfXJldHVybiB0LnByb3RvdHlwZS5zZXREZWZhdWx0cz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5vcHRpb25zPSgwLG8ubWVyZ2VEZWVwKSh0aGlzLm9wdGlvbnMsdCksdGhpc30sdC5wcm90b3R5cGUuZ2V0Q2hhdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy53aWRnZXRzW3RdfSx0LnByb3RvdHlwZS5nZXRXaWRnZXQ9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMud2lkZ2V0c1t0XX0sdC5wcm90b3R5cGUuY3JlYXRlPWZ1bmN0aW9uKHQsZSxuLHMpe3ZhciBjPSgwLG8ubWVyZ2VEZWVwKSh0aGlzLm9wdGlvbnMsZSk7YShjKTt2YXIgdT10aGlzLndpZGdldHNbdF09bmV3IGkuU21hcnRzdXBwV2lkZ2V0KHQsYyxuKTtyZXR1cm4gdS5faW5pdFByb21pc2U9KDAsby5yZXF1ZXN0KSgiIi5jb25jYXQoYy5ib290c3RyYXBVcmwsIi93aWRnZXQvIikuY29uY2F0KGMua2V5LCIuanNvbiIpKS50aGVuKGZ1bmN0aW9uKHQpe3ZhciBuPSgwLG8ucGFyc2VKU09OKSh0KTtyZXR1cm4gZGVsZXRlIGUuZmVhdHVyZXMsdS5pbml0KCgwLG8ubWVyZ2VEZWVwKShuLGUpLG4uZmVhdHVyZXMpLGUmJmUud2lkZ2V0VHJhY2tlckVuYWJsZWQmJigwLHIudHJhY2tPcHRpb25zKSh1Lm9wdGlvbnMsT2JqZWN0LmtleXMoZSkpLHdpbmRvdy5zbWFydHN1cHAuZ2V0QXNzZXRVcmw9dS5nZXRBc3NldFVybC5iaW5kKHUpLHMmJnModm9pZCAwLHUpLHUub3B0aW9ucy5yZW5kZXJUbyYmdS5yZW5kZXIodS5vcHRpb25zLnJlbmRlclRvKSxudWxsfSkuY2F0Y2goZnVuY3Rpb24odCl7cyYmcyh0KX0pLHV9LHQucHJvdG90eXBlLmNyZWF0ZVdpZGdldD1mdW5jdGlvbih0LGUsbil7dmFyIHM9dGhpcyxjPSgwLG8ubWVyZ2VEZWVwKSh0aGlzLm9wdGlvbnMsZSk7cmV0dXJuIGEoYyksKDAsby5yZXF1ZXN0KSgiIi5jb25jYXQoYy5ib290c3RyYXBVcmwsIi93aWRnZXQvIikuY29uY2F0KGMua2V5LCIuanNvbiIpKS50aGVuKGZ1bmN0aW9uKGEpe3ZhciB1PSgwLG8ucGFyc2VKU09OKShhKSxsPXMud2lkZ2V0c1t0XT1uZXcgaS5TbWFydHN1cHBXaWRnZXQodCxjLG4pO3JldHVybiBkZWxldGUgZS5mZWF0dXJlcyxsLmluaXQoKDAsby5tZXJnZURlZXApKHUsZSksdS5mZWF0dXJlcyksZSYmZS53aWRnZXRUcmFja2VyRW5hYmxlZCYmKDAsci50cmFja09wdGlvbnMpKGwub3B0aW9ucyxPYmplY3Qua2V5cyhlKSksd2luZG93LnNtYXJ0c3VwcC5nZXRBc3NldFVybD1sLmdldEFzc2V0VXJsLmJpbmQobCksbH0pfSx0fSgpO2UuU21hcnRzdXBwTG9hZGVyPXM7dmFyIGE9ZnVuY3Rpb24odCl7aWYoIXQuYm9vdHN0cmFwVXJsKXRocm93IG5ldyBFcnJvcigiTWlzc2luZyBvcHRpb24gYm9vdHN0cmFwVXJsIik7aWYoIXQua2V5KXRocm93IG5ldyBFcnJvcigiTWlzc2luZyBvcHRpb24ga2V5Iil9fSw3NDAodCxlLG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcj10aGlzJiZ0aGlzLl9fYXdhaXRlcnx8ZnVuY3Rpb24odCxlLG4scil7cmV0dXJuIG5ldyhufHwobj1Qcm9taXNlKSkoZnVuY3Rpb24obyxpKXtmdW5jdGlvbiBzKHQpe3RyeXtjKHIubmV4dCh0KSl9Y2F0Y2godCl7aSh0KX19ZnVuY3Rpb24gYSh0KXt0cnl7YyhyLnRocm93KHQpKX1jYXRjaCh0KXtpKHQpfX1mdW5jdGlvbiBjKHQpe3ZhciBlO3QuZG9uZT9vKHQudmFsdWUpOihlPXQudmFsdWUsZSBpbnN0YW5jZW9mIG4/ZTpuZXcgbihmdW5jdGlvbih0KXt0KGUpfSkpLnRoZW4ocyxhKX1jKChyPXIuYXBwbHkodCxlfHxbXSkpLm5leHQoKSl9KX0sbz10aGlzJiZ0aGlzLl9fZ2VuZXJhdG9yfHxmdW5jdGlvbih0LGUpe3ZhciBuLHIsbyxpLHM9e2xhYmVsOjAsc2VudDpmdW5jdGlvbigpe2lmKDEmb1swXSl0aHJvdyBvWzFdO3JldHVybiBvWzFdfSx0cnlzOltdLG9wczpbXX07cmV0dXJuIGk9e25leHQ6YSgwKSx0aHJvdzphKDEpLHJldHVybjphKDIpfSwiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYoaVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSxpO2Z1bmN0aW9uIGEoYSl7cmV0dXJuIGZ1bmN0aW9uKGMpe3JldHVybiBmdW5jdGlvbihhKXtpZihuKXRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTtmb3IoO2kmJihpPTAsYVswXSYmKHM9MCkpLHM7KXRyeXtpZihuPTEsciYmKG89MiZhWzBdP3IucmV0dXJuOmFbMF0/ci50aHJvd3x8KChvPXIucmV0dXJuKSYmby5jYWxsKHIpLDApOnIubmV4dCkmJiEobz1vLmNhbGwocixhWzFdKSkuZG9uZSlyZXR1cm4gbztzd2l0Y2gocj0wLG8mJihhPVsyJmFbMF0sby52YWx1ZV0pLGFbMF0pe2Nhc2UgMDpjYXNlIDE6bz1hO2JyZWFrO2Nhc2UgNDpyZXR1cm4gcy5sYWJlbCsrLHt2YWx1ZTphWzFdLGRvbmU6ITF9O2Nhc2UgNTpzLmxhYmVsKysscj1hWzFdLGE9WzBdO2NvbnRpbnVlO2Nhc2UgNzphPXMub3BzLnBvcCgpLHMudHJ5cy5wb3AoKTtjb250aW51ZTtkZWZhdWx0OmlmKCEoKG89KG89cy50cnlzKS5sZW5ndGg+MCYmb1tvLmxlbmd0aC0xXSl8fDYhPT1hWzBdJiYyIT09YVswXSkpe3M9MDtjb250aW51ZX1pZigzPT09YVswXSYmKCFvfHxhWzFdPm9bMF0mJmFbMV08b1szXSkpe3MubGFiZWw9YVsxXTticmVha31pZig2PT09YVswXSYmcy5sYWJlbDxvWzFdKXtzLmxhYmVsPW9bMV0sbz1hO2JyZWFrfWlmKG8mJnMubGFiZWw8b1syXSl7cy5sYWJlbD1vWzJdLHMub3BzLnB1c2goYSk7YnJlYWt9b1syXSYmcy5vcHMucG9wKCkscy50cnlzLnBvcCgpO2NvbnRpbnVlfWE9ZS5jYWxsKHQscyl9Y2F0Y2godCl7YT1bNix0XSxyPTB9ZmluYWxseXtuPW89MH1pZig1JmFbMF0pdGhyb3cgYVsxXTtyZXR1cm57dmFsdWU6YVswXT9hWzFdOnZvaWQgMCxkb25lOiEwfX0oW2EsY10pfX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxlLnRyYWNrT3BlcmF0aW9uPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHIodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7cmV0dXJuIG8odGhpcyxmdW5jdGlvbihuKXtzd2l0Y2gobi5sYWJlbCl7Y2FzZSAwOmlmKCF0LndpZGdldFRyYWNrZXJVcmx8fHMuaW5kZXhPZihlKT49MHx8YS5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSk+PTApcmV0dXJuWzIsITFdO24ubGFiZWw9MTtjYXNlIDE6cmV0dXJuIG4udHJ5cy5wdXNoKFsxLDMsLDRdKSxbNCwoMCxpLnJlcXVlc3QpKHQud2lkZ2V0VHJhY2tlclVybCsiL3RyYWNrL29wZXJhdGlvbj9rZXk9Ii5jb25jYXQodC5rZXksIiZvcGVyYXRpb249IikuY29uY2F0KGUsIiZkb21haW49IikuY29uY2F0KHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSkpXTtjYXNlIDI6cmV0dXJuIG4uc2VudCgpLFsyLCEwXTtjYXNlIDM6cmV0dXJuIG4uc2VudCgpLFsyLCExXTtjYXNlIDQ6cmV0dXJuWzJdfX0pfSl9LGUudHJhY2tPcHRpb25zPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHIodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG47cmV0dXJuIG8odGhpcyxmdW5jdGlvbihyKXtzd2l0Y2goci5sYWJlbCl7Y2FzZSAwOmlmKCF0LndpZGdldFRyYWNrZXJVcmx8fGEuaW5kZXhPZih3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpPj0wKXJldHVyblsyLCExXTtpZigwPT09KG49ZS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIGMuaW5kZXhPZih0KTwwfSkpLmxlbmd0aClyZXR1cm5bMiwhMV07ci5sYWJlbD0xO2Nhc2UgMTpyZXR1cm4gci50cnlzLnB1c2goWzEsMywsNF0pLFs0LCgwLGkucmVxdWVzdCkodC53aWRnZXRUcmFja2VyVXJsKyIvdHJhY2svb3B0aW9ucz9rZXk9Ii5jb25jYXQodC5rZXksIiZvcHRpb25zPSIpLmNvbmNhdChuLmpvaW4oIiwiKSwiJmRvbWFpbj0iKS5jb25jYXQod2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKSldO2Nhc2UgMjpyZXR1cm4gci5zZW50KCksWzIsITBdO2Nhc2UgMzpyZXR1cm4gci5zZW50KCksWzIsITFdO2Nhc2UgNDpyZXR1cm5bMl19fSl9KX07dmFyIGk9big4OTMpLHM9WyJodG1sOmFwcGx5IiwiY2hhdDptZXNzYWdlIiwib24iXSxhPVsid3d3LnNtYXJ0c3VwcC5jb20iLCJhcHAuc21hcnRzdXBwLmNvbSJdLGM9WyJrZXkiLCJnYU9wdGlvbnMiLCJnYU5hbWUiLCJjb29raWVQcmVmaXgiLCJjb29raWVQYXRoIiwiY3Jvc3NEb21haW5FbmFibGVkIiwicG9zaXRpb24iLCJvcGVuT25UcmlnZ2VyIl19LDg5Myh0LGUpeyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5wYXJzZUpTT049ZS5yZXF1ZXN0PWUuY3JlYXRlTGluaz1lLmNyZWF0ZVNjcmlwdD1lLnJlc29sdmVUYXJnZXRFbGVtZW50PWUubWVyZ2VEZWVwPXZvaWQgMDt2YXIgbj1mdW5jdGlvbih0KXtyZXR1cm4gdCYmIm9iamVjdCI9PXR5cGVvZiB0fTtlLm1lcmdlRGVlcD1mdW5jdGlvbigpe2Zvcih2YXIgdD1bXSxyPTA7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3JdPWFyZ3VtZW50c1tyXTt2YXIgbz17fTtyZXR1cm4gdC5mb3JFYWNoKGZ1bmN0aW9uKHQpe09iamVjdC5rZXlzKHQpLmZvckVhY2goZnVuY3Rpb24ocil7dmFyIGk9b1tyXSxzPXRbcl07dm9pZCAwIT09cyYmKEFycmF5LmlzQXJyYXkoaSl8fEFycmF5LmlzQXJyYXkocyk/b1tyXT1zOm4oaSkmJm4ocyk/b1tyXT0oMCxlLm1lcmdlRGVlcCkoaSxzKTpvW3JdPXMpfSl9KSxvfSxlLnJlc29sdmVUYXJnZXRFbGVtZW50PWZ1bmN0aW9uKHQpe3JldHVybiB0IGluc3RhbmNlb2YgRWxlbWVudD90OiJzdHJpbmciPT10eXBlb2YgdD9kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0KTpkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYm9keSIpWzBdfSxlLmNyZWF0ZVNjcmlwdD1mdW5jdGlvbih0LGUpe3ZhciBuPXQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7cmV0dXJuIG4udHlwZT0idGV4dC9qYXZhc2NyaXB0IixuLmNoYXJzZXQ9InV0ZjgiLGUmJihuLnNyYz1lKSxufSxlLmNyZWF0ZUxpbms9ZnVuY3Rpb24odCxlKXt2YXIgbj10LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtyZXR1cm4gZSYmKG4uaHJlZj1lKSxufSxlLnJlcXVlc3Q9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihuLHIpe2Uub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09PWUucmVhZHlTdGF0ZSYmKGUuc3RhdHVzPj0yMDAmJmUuc3RhdHVzPDMwMD9uKGUucmVzcG9uc2UpOnIobmV3IEVycm9yKCJSZXF1ZXN0IGZhaWxlZCB3aXRoIHN0YXR1cyAiLmNvbmNhdChlLnN0YXR1cykpKSl9LGUub3BlbigiR0VUIix0LCEwKSxlLnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsInRleHQvcGxhaW4iKSxlLnNlbmQoKX0pfSxlLnBhcnNlSlNPTj1mdW5jdGlvbih0KXtpZihKU09OLnBhcnNlKXJldHVybiBKU09OLnBhcnNlKHQpO2lmKEpTT04uZGVjb2RlKXJldHVybiBKU09OLmRlY29kZSh0KTt0aHJvdyBuZXcgRXJyb3IoIlVuYWJsZSB0byBwYXJzZSBqc29uLiIpfX0sMTMwKHQsZSxuKXsidXNlIHN0cmljdCI7dmFyIHI9dGhpcyYmdGhpcy5fX2F3YWl0ZXJ8fGZ1bmN0aW9uKHQsZSxuLHIpe3JldHVybiBuZXcobnx8KG49UHJvbWlzZSkpKGZ1bmN0aW9uKG8saSl7ZnVuY3Rpb24gcyh0KXt0cnl7YyhyLm5leHQodCkpfWNhdGNoKHQpe2kodCl9fWZ1bmN0aW9uIGEodCl7dHJ5e2Moci50aHJvdyh0KSl9Y2F0Y2godCl7aSh0KX19ZnVuY3Rpb24gYyh0KXt2YXIgZTt0LmRvbmU/byh0LnZhbHVlKTooZT10LnZhbHVlLGUgaW5zdGFuY2VvZiBuP2U6bmV3IG4oZnVuY3Rpb24odCl7dChlKX0pKS50aGVuKHMsYSl9Yygocj1yLmFwcGx5KHQsZXx8W10pKS5uZXh0KCkpfSl9LG89dGhpcyYmdGhpcy5fX2dlbmVyYXRvcnx8ZnVuY3Rpb24odCxlKXt2YXIgbixyLG8saSxzPXtsYWJlbDowLHNlbnQ6ZnVuY3Rpb24oKXtpZigxJm9bMF0pdGhyb3cgb1sxXTtyZXR1cm4gb1sxXX0sdHJ5czpbXSxvcHM6W119O3JldHVybiBpPXtuZXh0OmEoMCksdGhyb3c6YSgxKSxyZXR1cm46YSgyKX0sImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKGlbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSksaTtmdW5jdGlvbiBhKGEpe3JldHVybiBmdW5jdGlvbihjKXtyZXR1cm4gZnVuY3Rpb24oYSl7aWYobil0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7Zm9yKDtpJiYoaT0wLGFbMF0mJihzPTApKSxzOyl0cnl7aWYobj0xLHImJihvPTImYVswXT9yLnJldHVybjphWzBdP3IudGhyb3d8fCgobz1yLnJldHVybikmJm8uY2FsbChyKSwwKTpyLm5leHQpJiYhKG89by5jYWxsKHIsYVsxXSkpLmRvbmUpcmV0dXJuIG87c3dpdGNoKHI9MCxvJiYoYT1bMiZhWzBdLG8udmFsdWVdKSxhWzBdKXtjYXNlIDA6Y2FzZSAxOm89YTticmVhaztjYXNlIDQ6cmV0dXJuIHMubGFiZWwrKyx7dmFsdWU6YVsxXSxkb25lOiExfTtjYXNlIDU6cy5sYWJlbCsrLHI9YVsxXSxhPVswXTtjb250aW51ZTtjYXNlIDc6YT1zLm9wcy5wb3AoKSxzLnRyeXMucG9wKCk7Y29udGludWU7ZGVmYXVsdDppZighKChvPShvPXMudHJ5cykubGVuZ3RoPjAmJm9bby5sZW5ndGgtMV0pfHw2IT09YVswXSYmMiE9PWFbMF0pKXtzPTA7Y29udGludWV9aWYoMz09PWFbMF0mJighb3x8YVsxXT5vWzBdJiZhWzFdPG9bM10pKXtzLmxhYmVsPWFbMV07YnJlYWt9aWYoNj09PWFbMF0mJnMubGFiZWw8b1sxXSl7cy5sYWJlbD1vWzFdLG89YTticmVha31pZihvJiZzLmxhYmVsPG9bMl0pe3MubGFiZWw9b1syXSxzLm9wcy5wdXNoKGEpO2JyZWFrfW9bMl0mJnMub3BzLnBvcCgpLHMudHJ5cy5wb3AoKTtjb250aW51ZX1hPWUuY2FsbCh0LHMpfWNhdGNoKHQpe2E9WzYsdF0scj0wfWZpbmFsbHl7bj1vPTB9aWYoNSZhWzBdKXRocm93IGFbMV07cmV0dXJue3ZhbHVlOmFbMF0/YVsxXTp2b2lkIDAsZG9uZTohMH19KFthLGNdKX19fTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5TbWFydHN1cHBXaWRnZXQ9dm9pZCAwO3ZhciBpPW4oNzQwKSxzPW4oODkzKSxhPXdpbmRvdyxjPSItYXBwbGljYXRpb24taWZyYW1lIix1PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCh0LGUsbil7aWYodm9pZCAwPT09biYmKG49W10pLHRoaXMuaWQ9dCx0aGlzLm9wdGlvbnM9ZSx0aGlzLl9wdXNoQXBpPW4sdGhpcy5yZW5kZXJlZD0hMSx0aGlzLmFwaT1udWxsLHRoaXMuZWw9bnVsbCx0aGlzLmZyYW1lPW51bGwsdGhpcy52ZXJzaW9uPTIsdGhpcy5pbml0aWFsaXplZD0hMSwhZS5ib290c3RyYXBVcmwpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIG9wdGlvbiBib290c3RyYXBVcmwiKTtpZighZS5rZXkpdGhyb3cgbmV3IEVycm9yKCJNaXNzaW5nIG9wdGlvbiBrZXkiKX1yZXR1cm4gdC5wcm90b3R5cGUuc2V0T3B0aW9ucz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5vcHRpb25zPSgwLHMubWVyZ2VEZWVwKSh0aGlzLm9wdGlvbnMsdCksdGhpcy5mZWF0dXJlcyYmKHRoaXMuZmVhdHVyZXMucmF0aW5nfHwodGhpcy5vcHRpb25zLnJhdGluZ0VuYWJsZWQ9ITEpLHRoaXMuZmVhdHVyZXMuZ3JvdXBzfHwodGhpcy5vcHRpb25zLmdyb3VwU2VsZWN0RW5hYmxlZD0hMSksdGhpcy5mZWF0dXJlcy5jdXN0b21pemV8fCh0aGlzLm9wdGlvbnMuaGlkZVdpZGdldD0hMSx0aGlzLm9wdGlvbnMuaGlkZU9mZmxpbmVDaGF0PSExLHRoaXMub3B0aW9ucy5udW1iZXJDb250cm9sPSExLHRoaXMub3B0aW9ucy5yZXF1aXJlTG9naW49ITEsdGhpcy5vcHRpb25zLnByaXZhY3lOb3RpY2VFbmFibGVkPSEwLHRoaXMub3B0aW9ucy5vcmllbnRhdGlvbj0icmlnaHQiKSx0aGlzLmZlYXR1cmVzLmdhfHwodGhpcy5vcHRpb25zLmdvb2dsZUFuYWx5dGljc0VuYWJsZWQ9ITEpKSx0aGlzfSx0LnByb3RvdHlwZS5pbml0PWZ1bmN0aW9uKHQsZSl7dGhpcy5mZWF0dXJlcz1lLHRoaXMuc2V0T3B0aW9ucyh0KSx0aGlzLmluaXRpYWxpemVkPSEwLCJhdXRvIj09PXRoaXMub3B0aW9ucy5wb3NpdGlvbiYmKHRoaXMub3B0aW9ucy5wb3NpdGlvbj10aGlzLm9wdGlvbnMucmVuZGVyVG8/InJlbGF0aXZlIjoiZml4ZWQiKX0sdC5wcm90b3R5cGUuY3JlYXRlRnJhbWU9ZnVuY3Rpb24oKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtyZXR1cm4gdC5pZD0iIi5jb25jYXQodGhpcy5pZCkuY29uY2F0KGMpLHQuc2V0QXR0cmlidXRlKCJ0aXRsZSIsIlNtYXJ0c3VwcCIpLHQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKSx0LnN0eWxlLmRpc3BsYXk9ImJsb2NrIix0LnN0eWxlLnBvc2l0aW9uPSJmaXhlZCIsdC5zdHlsZS50b3A9IjAiLHQuc3R5bGUubGVmdD0iMCIsdC5zdHlsZS53aWR0aD0iMXB4Iix0LnN0eWxlLmhlaWdodD0iMXB4Iix0LnN0eWxlLm9wYWNpdHk9IjAiLHQuc3R5bGUuYm9yZGVyPSJub25lIix0LnN0eWxlLnpJbmRleD0iLTEiLHQuc3R5bGUucG9pbnRlckV2ZW50cz0ibm9uZSIsdH0sdC5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKHQpe3JldHVybiByKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBvKHRoaXMsZnVuY3Rpb24obil7c3dpdGNoKG4ubGFiZWwpe2Nhc2UgMDpyZXR1cm4gdGhpcy5faW5pdFByb21pc2U/WzQsdGhpcy5faW5pdFByb21pc2VdOlszLDJdO2Nhc2UgMTpuLnNlbnQoKSxuLmxhYmVsPTI7Y2FzZSAyOmlmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQrYykpcmV0dXJuWzJdO2lmKCF0aGlzLmluaXRpYWxpemVkKXRocm93IG5ldyBFcnJvcigiZmFpbGVkIHRvIGluaXRpYWxpemUgd2lkZ2V0Iik7aWYoIShlPSgwLHMucmVzb2x2ZVRhcmdldEVsZW1lbnQpKHQpKSl0aHJvdyBuZXcgRXJyb3IoInRhcmdldCBlbGVtZW50IG5vdCBmb3VuZCIpO3JldHVybiB0aGlzLnJlbmRlckZyYW1lKGUpLHRoaXMucmVuZGVyZWQ9ITAsWzJdfX0pfSl9LHQucHJvdG90eXBlLnJlbmRlckZyYW1lPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMsbj10aGlzLmZyYW1lPXRoaXMuY3JlYXRlRnJhbWUoKTtuLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKCl7dmFyIHQsaSxhPW51bGwhPT0odD1uLmNvbnRlbnREb2N1bWVudCkmJnZvaWQgMCE9PXQ/dDpudWxsPT09KGk9bi5jb250ZW50V2luZG93KXx8dm9pZCAwPT09aT92b2lkIDA6aS5kb2N1bWVudDtpZighYSl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBmaW5kIERvY3VtZW50Iik7dmFyIGM9YS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLHU9YS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYm9keSIpWzBdO3UuaWQ9ImJvZHkiLHUuZGF0YXNldC5zbWFydHN1cHBJZD1lLmlkLHUuaW5uZXJIVE1MPSc8ZGl2IGlkPSJhcHAiPjwvZGl2Pic7dmFyIGw9InNyYy9tYWluLnRzIixwPWZ1bmN0aW9uKHQpe3ZhciBuPSgwLHMuY3JlYXRlU2NyaXB0KShhLGUuZ2V0QmFzZVVybCgpKyIvIi5jb25jYXQodCkpO24udHlwZT0ibW9kdWxlIixjLmFwcGVuZENoaWxkKG4pfSxmPWZ1bmN0aW9uKHQpe3ZhciBuPSgwLHMuY3JlYXRlTGluaykoYSwiIi5jb25jYXQoZS5nZXRCYXNlVXJsKCksIi8iKS5jb25jYXQodCkpO24ucmVsPSJzdHlsZXNoZWV0IixuLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiLGMuYXBwZW5kQ2hpbGQobil9O2Uub3B0aW9ucy53aWRnZXRWM0Rldk1vZGU/WyJAdml0ZS9jbGllbnQiLGxdLmZvckVhY2gocCk6cihlLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgdCxuLHIsaTtyZXR1cm4gbyh0aGlzLGZ1bmN0aW9uKG8pe3N3aXRjaChvLmxhYmVsKXtjYXNlIDA6cmV0dXJuWzQsKDAscy5yZXF1ZXN0KSgiIi5jb25jYXQodGhpcy5nZXRCYXNlVXJsKCksIi9tYW5pZmVzdC5qc29uIikpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuKDAscy5wYXJzZUpTT04pKHQpfSldO2Nhc2UgMTpyZXR1cm4gdD1vLnNlbnQoKSxuPXRbbF0scChuLmZpbGUpLG51bGw9PT0ocj1uLmltcG9ydHMpfHx2b2lkIDA9PT1yfHxyLmZvckVhY2goZnVuY3Rpb24obil7dmFyIHIsbztyPXRbbl0uZmlsZSwobz0oMCxzLmNyZWF0ZUxpbmspKGEsIiIuY29uY2F0KGUuZ2V0QmFzZVVybCgpLCIvIikuY29uY2F0KHIpKSkucmVsPSJtb2R1bGVwcmVsb2FkIixjLmFwcGVuZENoaWxkKG8pfSksbnVsbD09PShpPW4uY3NzKXx8dm9pZCAwPT09aXx8aS5mb3JFYWNoKGYpLGYodFsic3R5bGUuY3NzIl0uZmlsZSksWzJdfX0pfSl9KSx0LmFwcGVuZENoaWxkKG4pfSx0LnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy5lbCYmdGhpcy5lbC5wYXJlbnROb2RlJiYodGhpcy5lbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMuZWwpLHRoaXMuZWw9bnVsbCl9LHQucHJvdG90eXBlLmdldE9wdGlvbj1mdW5jdGlvbih0LGUpe3JldHVybiB2b2lkIDA9PT10aGlzLm9wdGlvbnNbdF0/ZTp0aGlzLm9wdGlvbnNbdF19LHQucHJvdG90eXBlLmdldEJhc2VVcmw9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5vcHRpb25zLndpZGdldFYzVXJsfSx0LnByb3RvdHlwZS5nZXRBc3NldFVybD1mdW5jdGlvbih0KXtyZXR1cm4iIi5jb25jYXQodGhpcy5nZXRCYXNlVXJsKCksIi8iKS5jb25jYXQodCl9LHQucHJvdG90eXBlLmdldEludGVybmFsQXBpVXJsPWZ1bmN0aW9uKCl7cmV0dXJuIiIuY29uY2F0KHRoaXMub3B0aW9ucy5ib290c3RyYXBVcmwsIi93aWRnZXQvIikuY29uY2F0KHRoaXMub3B0aW9ucy5rZXksIi9jb2RlLmpzIil9LHQucHJvdG90eXBlLmV4ZWM9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdFtlXT1hcmd1bWVudHNbZV07dGhpcy5fcHVzaEFwaS5wdXNoKHQpfSx0LnByb3RvdHlwZS5pbnN0YWxsQXBpPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7aWYodGhpcy5hcGk9dCxhLnNtYXJ0c3VwcC5hcGk9dCx0aGlzLl9wdXNoQXBpJiYodGhpcy5fcHVzaEFwaS5mb3JFYWNoKGZ1bmN0aW9uKG4pe3ZhciByPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKG4sMCk7dHJ5e2Uub3B0aW9ucy53aWRnZXRUcmFja2VyRW5hYmxlZCYmKDAsaS50cmFja09wZXJhdGlvbikoZS5vcHRpb25zLHJbMF0pLHQuZXhlY3V0ZShyKX1jYXRjaCh0KXtjb25zb2xlLmxvZyh0KX19KSx0aGlzLl9wdXNoQXBpLnB1c2g9ZnVuY3Rpb24obil7dmFyIHI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobiwwKTt0cnl7ZS5vcHRpb25zLndpZGdldFRyYWNrZXJFbmFibGVkJiYoMCxpLnRyYWNrT3BlcmF0aW9uKShlLm9wdGlvbnMsclswXSksdC5leGVjdXRlKHIpfWNhdGNoKHQpe2NvbnNvbGUubG9nKHQpfX0pLHRoaXMub3B0aW9ucy5vblN0YXJ0dXApdHJ5e3RoaXMub3B0aW9ucy5vblN0YXJ0dXAodCl9Y2F0Y2godCl7Y29uc29sZS5sb2codCl9fSx0fSgpO2UuU21hcnRzdXBwV2lkZ2V0PXV9fSxlPXt9O2Z1bmN0aW9uIG4ocil7dmFyIG89ZVtyXTtpZih2b2lkIDAhPT1vKXJldHVybiBvLmV4cG9ydHM7dmFyIGk9ZVtyXT17ZXhwb3J0czp7fX07cmV0dXJuIHRbcl0uY2FsbChpLmV4cG9ydHMsaSxpLmV4cG9ydHMsbiksaS5leHBvcnRzfW4uZz1mdW5jdGlvbigpe2lmKCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcylyZXR1cm4gZ2xvYmFsVGhpczt0cnl7cmV0dXJuIHRoaXN8fG5ldyBGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfWNhdGNoKHQpe2lmKCJvYmplY3QiPT10eXBlb2Ygd2luZG93KXJldHVybiB3aW5kb3d9fSgpLCgoKT0+eyJ1c2Ugc3RyaWN0IjtuKDc2MSk7dmFyIHQ9big3MTUpLGU9bigzNDUpLHI9ImNoYXQiO2lmKHdpbmRvdy5zbWFydHN1cHB8fCh3aW5kb3cuc21hcnRzdXBwPWZ1bmN0aW9uKCl7d2luZG93LnNtYXJ0c3VwcC5fLnB1c2goYXJndW1lbnRzKX0sd2luZG93LnNtYXJ0c3VwcC5fPVtdKSwhd2luZG93LlNNQVJUU1VQUF9MT0FERUQpe3dpbmRvdy5TTUFSVFNVUFBfTE9BREVEPSEwO3ZhciBvPW5ldyBlLlNtYXJ0c3VwcExvYWRlcih7d2lkZ2V0VmVyc2lvbjozLGJvb3RzdHJhcFVybDoiaHR0cHM6Ly9ib290c3RyYXAuc21hcnRzdXBwY2hhdC5jb20iLGZpbGVzVXJsOiJodHRwczovL2ZpbGVzLnNtYXJ0c3VwcGNkbi5jb20iLHdpZGdldFYzVXJsOiJodHRwczovL3dpZGdldC12My5zbWFydHN1cHBjZG4uY29tIixzdG9yYWdlVXJsOiJodHRwczovL3trZXl9LnN0b3JhZ2Uuc21hcnRzdXBwY2hhdC5jb20iLHdpZGdldEFwaVVybDoiaHR0cHM6Ly9hcGkuc21hcnRzdXBwY2hhdC5jb20iLHpJbmRleDoxZTcscG9zaXRpb246ImF1dG8iLG9yaWVudGF0aW9uOiJyaWdodCIsYXV0b0lubGluZU1vZGU6ITAsd2lkZ2V0VjNEZXZNb2RlOiExfSk7d2luZG93LiRzbWFydHN1cHA9byx3aW5kb3cuc21hcnRzdXBwPU9iamVjdC5hc3NpZ24od2luZG93LnNtYXJ0c3VwcCx7Y2hhdHM6by53aWRnZXRzLGNyZWF0ZTpvLmNyZWF0ZS5iaW5kKG8pLGNyZWF0ZVdpZGdldDpvLmNyZWF0ZVdpZGdldC5iaW5kKG8pLGdldENoYXQ6by5nZXRDaGF0LmJpbmQobyksZ2V0V2lkZ2V0Om8uZ2V0V2lkZ2V0LmJpbmQobyksc2V0RGVmYXVsdHM6by5zZXREZWZhdWx0cy5iaW5kKG8pfSksITEhPT13aW5kb3cuU01BUlRTVVBQX0FVVE9DUkVBVEUmJighMD09PXdpbmRvdy5TTUFSVFNVUFBfQkZDQUNIRSYmKHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlc2hvdyIsZnVuY3Rpb24oKXt2YXIgdDtudWxsPT09KHQ9d2luZG93LnNtYXJ0c3VwcC5nZXRXaWRnZXQocikpfHx2b2lkIDA9PT10fHx0LnJlbmRlcigpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImJlZm9yZXVubG9hZCIsZnVuY3Rpb24oKXt2YXIgdCxlO251bGw9PT0odD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjIi5jb25jYXQociwiLWFwcGxpY2F0aW9uLWlmcmFtZSIpKSl8fHZvaWQgMD09PXR8fHQucmVtb3ZlKCksbnVsbD09PShlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNzbWFydHN1cHAtd2lkZ2V0LWNvbnRhaW5lciIpKXx8dm9pZCAwPT09ZXx8ZS5yZW1vdmUoKX0pKSx0KGZ1bmN0aW9uKCl7d2luZG93LnNtYXJ0c3VwcCgiaHRtbDphcHBseSIsZG9jdW1lbnQpLG8uY3JlYXRlV2lkZ2V0KHIsd2luZG93Ll9zbWFydHN1cHAsd2luZG93LnNtYXJ0c3VwcC5fKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0LnJlbmRlcigpfSkuY2F0Y2goZnVuY3Rpb24odCl7Y29uc29sZS53YXJuKHQpfSl9KSl9fSkoKX0pKCk7"}},"time_used":3307,"timings":{"blocked":-1,"dns":33,"connect":8,"send":0,"wait":8,"receive":0,"ssl":3258},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/AU.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.437Z","timestamp":1785159269437,"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 /country/AU.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"ffaa89557725b51eb58753956db0a148\"\r\nlast-modified: Wed, 08 Sep 2021 09:02:00 GMT\r\ncdn-cachedat: 08/14/2025 09:10:20\r\nx-amz-id-2: DzpdTGdCk+nHWeQwZOfiUK1wdHPTCX6EFgXZCRAjmpAlX0lsoqTo4C7VSzuTwI9+aYlyFOIRTdU=\r\nx-amz-request-id: MSMKKXBR4HGB1RJZ\r\nx-amz-meta-hash: ffaa89557725b51eb58753956db0a148\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7a9a9072f7016d6caf1dab99720a7b98\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":937,"size_decoded":1310,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (937), with no line terminators","md5":"ffaa89557725b51eb58753956db0a148","sha1":"af4c43200c5a85ad2d525412bf83e55e90138bd3","sha256":"27c815d48181359be416f858593d35e363b546bf3f237e0458cccf01fefbdf30","sha512":"012df6822dab500101b05a391d897c6523bcc4e1f7f65ffce67f4ff4a87b520380c8c4b2cd0b5f2f6ce718fdc7422facea451a03893b5f611af0b68a10275c10","ssdeep":"","tlshash":"95115b85b154d25bcd42ca2dd2381230a25e61cab1ed66c8ace3b35d291fad9fdd40bc","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-30T06:08:06.703721Z","times_seen":2694,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDBoMTh2MThIMFYweiIgZmlsbD0iIzBENDdBMSIvPjxwYXRoIGQ9Ik05IDRWMEgwdjloNFY2bDMgM2gyVjdMNiA0aDN6IiBmaWxsPSIjRjhGOUZEIi8+PHBhdGggZD0iTTMgMVYwSDF2MUgwdjJoMXY2aDJWM2g2VjFIM3oiIGZpbGw9IiNFRjUzNTAiLz48cGF0aCBkPSJNOSA4TDUgNEg0bDUgNVY4eiIgZmlsbD0iI0VGNTM1MCIvPjxwYXRoIGQ9Ik03IDEzbC0xIC41di41aC0uNUw1IDE1bC0uNS0xSDR2LS41TDMgMTNsMS0uNVYxMmguNWwuNS0xIC41IDFINnYuNWwxIC41eiIgZmlsbD0iI0Y4RjlGRCIvPjxwYXRoIGQ9Ik0xMy4wNiAxMi42MmwuMjUuNTIuNTYtLjEzLS4yNS41MS40NS4zNi0uNTYuMTJ2LjU4bC0uNDUtLjM2LS40NC4zNlYxNGwtLjU2LS4xMi40NS0uMzYtLjI1LS41MS41Ni4xMy4yNC0uNTJ6TTEwLjc3IDcuMTRsLjI0LjUyLjU2LS4xMy0uMjUuNTEuNDUuMzYtLjU2LjEzdi41N2wtLjQ0LS4zNi0uNDUuMzZ2LS41N2wtLjU2LS4xMy40NS0uMzYtLjI1LS41MS41Ni4xMy4yNS0uNTJ6TTEzLjA2IDQuMDFsLjI1LjUyLjU2LS4xMy0uMjUuNTEuNDUuMzYtLjU2LjEydi41OGwtLjQ1LS4zNi0uNDQuMzZ2LS41OGwtLjU2LS4xMi40NS0uMzYtLjI1LS41MS41Ni4xMy4yNC0uNTJ6TTE1LjA3IDYuMzZsLjI1LjUyLjU2LS4xMy0uMjUuNTEuNDQuMzYtLjU1LjEydi41OGwtLjQ1LS4zNi0uNDUuMzZ2LS41OGwtLjU1LS4xMi40NS0uMzYtLjI1LS41MS41NS4xMy4yNS0uNTJ6TTEzLjY0IDkuMWwuMi42aC42MmwtLjUuMzcuMTkuNi0uNTEtLjM4LS41MS4zNy4yLS42LS41Mi0uMzZoLjYzbC4yLS42eiIgZmlsbD0iI0Y4RjlGRCIvPjwvc3ZnPg=="}},"time_used":93,"timings":{"blocked":-1,"dns":45,"connect":25,"send":0,"wait":6,"receive":-1,"ssl":15},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"jnn-pa.googleapis.com/$rpc/google.internal.waa.v1.Waa/GenerateIT","fqdn":"jnn-pa.googleapis.com","domain":"jnn-pa.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"172.217.115.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://www.youtube.com/embed/6jePbqXJhe8","date":"2026-07-27T13:34:30.177Z","timestamp":1785159270177,"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":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:20 GMT","end":"Mon, 21 Sep 2026 08:39:19 GMT"},"fingerprint":{"sha1":"2A:E6:04:0E:76:A4:02:27:67:28:31:4D:E5:61:19:26:CA:0E:32:84","sha256":"D4:ED:C4:F8:DB:31:8A:2D:35:15:01:14:C0:49:CB:47:FF:5B:CC:17:14:82:63:9B:A8:6F:61:4D:AA:E5:96:94"}}},"request":{"raw":"OPTIONS /$rpc/google.internal.waa.v1.Waa/GenerateIT HTTP/1.1\r\nHost: jnn-pa.googleapis.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\nAccess-Control-Request-Method: POST\r\nAccess-Control-Request-Headers: content-type,x-goog-api-key\r\nReferer: https://www.youtube.com/\r\nOrigin: https://www.youtube.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=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"HTTP/2 200 \r\naccess-control-allow-origin: https://www.youtube.com\r\nvary: origin, referer, x-origin\r\naccess-control-allow-credentials: true\r\naccess-control-allow-methods: DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT\r\naccess-control-allow-headers: content-type,x-goog-api-key\r\naccess-control-max-age: 3600\r\ndate: Mon, 27 Jul 2026 13:34:30 GMT\r\ncontent-type: text/html\r\nserver: ESF\r\ncontent-length: 0\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":null,"data":{"size":0,"size_decoded":555,"mime_type":"text/html","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":""}},"time_used":53,"timings":{"blocked":0,"dns":3,"connect":10,"send":0,"wait":20,"receive":0,"ssl":20},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.google.com/translate_a/element.js?cb=googleTranslateElementInit","fqdn":"translate.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.250.178.110","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.924Z","timestamp":1785159267924,"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":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:35 GMT","end":"Mon, 21 Sep 2026 08:37:34 GMT"},"fingerprint":{"sha1":"2F:20:3B:91:88:65:20:CD:06:9D:0C:58:4D:17:6F:FC:9D:EC:41:83","sha256":"0C:7B:D3:23:E9:5B:D6:6B:F2:5C:71:91:4D:41:CE:E6:D7:1F:A2:F2:63:BA:25:70:1D:00:F3:C0:72:21:51:6D"}}},"request":{"raw":"GET /translate_a/element.js?cb=googleTranslateElementInit HTTP/1.1\r\nHost: translate.google.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: text/javascript; charset=utf-8\r\nvary: Sec-Fetch-Dest, Sec-Fetch-Mode, Sec-Fetch-Site\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 13:34:28 GMT\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin-allow-popups\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":null,"data":{"size":75428,"size_decoded":27152,"mime_type":"text/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (2543)","md5":"b85f95308a308a60d4a756a73b9af98d","sha1":"6df9b5ba466f4313cd0090994e0532a009c62384","sha256":"353232b820948ebdfa0da5f6114ce94046e818841c3333730fc8420560cc40a6","sha512":"aca1772aaac4a3358247c03c4385b162652f7873a9e538ff5d456d07d67244b31d426597e4e3912fe12673b4b0775b2365684d7bcef6d4135c6f417861cf25a7","ssdeep":"1536:XWjLpxIZnZzYOwRUSfl26KKZkXtmqR6Y06ECi4wNWF0:XDD4U6KKZgtBgtCim0","tlshash":"a373b88cb6a5b4658363f4b5412f000fb23b58adf8484cadb288d8e1adf5949453bf7d","first_seen":"2026-07-27T13:01:51.242895Z","last_seen":"2026-07-27T13:54:26.952715Z","times_seen":74,"resource_available":true,"data":"CiAgICAvLyBnby9tc3Mtc2V0dXAjNy1sb2FkLXRoZS1qcy1vci1jc3MtZnJvbS15b3VyLWluaXRpYWwtcGFnZQogICAgaWYoIXdpbmRvd1snX0R1bXBFeGNlcHRpb24nXSkgewogICAgICBjb25zdCBfRHVtcEV4Y2VwdGlvbiA9IHdpbmRvd1snX0R1bXBFeGNlcHRpb24nXSB8fCBmdW5jdGlvbihlKSB7CiAgICAgICAgdGhyb3cgZTsKICAgICAgfTsKICAgICAgd2luZG93WydfRHVtcEV4Y2VwdGlvbiddID0gX0R1bXBFeGNlcHRpb247CiAgICB9CiAgInVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF90cj10aGlzLmRlZmF1bHRfdHJ8fHt9OyhmdW5jdGlvbihfKXt2YXIgd2luZG93PXRoaXM7CnRyeXsKXy5fRl90b2dnbGVzX2luaXRpYWxpemU9ZnVuY3Rpb24oYSl7KHR5cGVvZiBnbG9iYWxUaGlzIT09InVuZGVmaW5lZCI/Z2xvYmFsVGhpczp0eXBlb2Ygc2VsZiE9PSJ1bmRlZmluZWQiP3NlbGY6dGhpcykuX0ZfdG9nZ2xlc19kZWZhdWx0X3RyPWF8fFtdfTsoMCxfLl9GX3RvZ2dsZXNfaW5pdGlhbGl6ZSkoWzB4NzAwODAwNCwgMHgwLCBdKTsKLyoKCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgMjAwNSwgMjAwNyBCb2IgSXBwb2xpdG8uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVAoqLwp2YXIgYWEsY2EsZmEsamEscmEseGEsQmEsRGEsRmEsR2EsSWEsWWEsYmIsZmIsZ2IsamIsa2IsbmIscGIscWIsc2IsdWIsdmIsQWIsQmIsRmIsSWIsSmIsTWIsTmIsT2IsUWIsU2IseixSYixVYixZYixaYixhYyxiYzthYT1mdW5jdGlvbihhLGIpe2lmKEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKUVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsYWEpO2Vsc2V7dmFyIGM9RXJyb3IoKS5zdGFjaztjJiYodGhpcy5zdGFjaz1jKX1hJiYodGhpcy5tZXNzYWdlPVN0cmluZyhhKSk7YiE9PXZvaWQgMCYmKHRoaXMuY2F1c2U9Yil9O2NhPWZ1bmN0aW9uKGEsYil7YT1hLnNwbGl0KCIlcyIpO2Zvcih2YXIgYz0iIixkPWEubGVuZ3RoLTEsZT0wO2U8ZDtlKyspYys9YVtlXSsoZTxiLmxlbmd0aD9iW2VdOiIlcyIpO2FhLmNhbGwodGhpcyxjK2FbZF0pfTtmYT1mdW5jdGlvbihhKXtpZihfLmRhKWEoXy5kYSk7ZWxzZXt2YXIgYjsoKGI9ZWEpIT1udWxsP2I6ZWE9W10pLnB1c2goYSl9fTsKamE9ZnVuY3Rpb24oKXshXy5kYSYmXy5oYSYmXy5pYSgpO3JldHVybiBfLmRhfTtfLmlhPWZ1bmN0aW9uKCl7Xy5kYT1fLmhhKCk7dmFyIGE7KGE9ZWEpPT1udWxsfHxhLmZvckVhY2goZmEpO2VhPXZvaWQgMH07Xy5sYT1mdW5jdGlvbihhKXtfLmRhJiZrYShhKX07Xy5tYT1mdW5jdGlvbigpe18uZGEmJl8uZGEubWQoKX07Xy5vYT1mdW5jdGlvbihhLGIpe2IuaGFzT3duUHJvcGVydHkoImRpc3BsYXlOYW1lIil8fChiLmRpc3BsYXlOYW1lPWEudG9TdHJpbmcoKSk7YltuYV09YX07Xy5wYT1mdW5jdGlvbihhKXthJiZ0eXBlb2YgYS5kaXNwb3NlPT0iZnVuY3Rpb24iJiZhLmRpc3Bvc2UoKX07cmE9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz1hcmd1bWVudHMubGVuZ3RoO2I8YzsrK2Ipe3ZhciBkPWFyZ3VtZW50c1tiXTtfLnFhKGQpP3JhLmFwcGx5KG51bGwsZCk6Xy5wYShkKX19O18udT1mdW5jdGlvbigpe3RoaXMucWE9dGhpcy5xYTt0aGlzLlc9dGhpcy5XfTsKXy50YT1mdW5jdGlvbihhLGIpe3JldHVybiBzYShhLGIpPj0wfTtfLnVhPWZ1bmN0aW9uKGEsYil7Xy50YShhLGIpfHxhLnB1c2goYil9O18udmE9ZnVuY3Rpb24oYSxiKXtiPXNhKGEsYik7dmFyIGM7KGM9Yj49MCkmJkFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChhLGIsMSk7cmV0dXJuIGN9O18ud2E9ZnVuY3Rpb24oYSl7dmFyIGI9YS5sZW5ndGg7aWYoYj4wKXtmb3IodmFyIGM9QXJyYXkoYiksZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfTt4YT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTtpZihfLnFhKGQpKXt2YXIgZT1hLmxlbmd0aHx8MCxmPWQubGVuZ3RofHwwO2EubGVuZ3RoPWUrZjtmb3IodmFyIGc9MDtnPGY7ZysrKWFbZStnXT1kW2ddfWVsc2UgYS5wdXNoKGQpfX07CkJhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wLGM9MCxkPXt9O2M8YS5sZW5ndGg7KXt2YXIgZT1hW2MrK10sZj1fLnlhKGUpPyJvIisoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsemEpJiZlW3phXXx8KGVbemFdPSsrQWEpKToodHlwZW9mIGUpLmNoYXJBdCgwKStlO09iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkLGYpfHwoZFtmXT0hMCxhW2IrK109ZSl9YS5sZW5ndGg9Yn07Xy5DYT1mdW5jdGlvbihhLGIpe3RoaXMud2lkdGg9YTt0aGlzLmhlaWdodD1ifTtEYT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYyBpbiBhKWlmKGIuY2FsbCh2b2lkIDAsYVtjXSxjLGEpKXJldHVybiEwO3JldHVybiExfTsKRmE9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMsZCxlPTE7ZTxhcmd1bWVudHMubGVuZ3RoO2UrKyl7ZD1hcmd1bWVudHNbZV07Zm9yKGMgaW4gZClhW2NdPWRbY107Zm9yKHZhciBmPTA7ZjxFYS5sZW5ndGg7ZisrKWM9RWFbZl0sT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGQsYykmJihhW2NdPWRbY10pfX07R2E9ZnVuY3Rpb24oYSl7cmV0dXJue3ZhbHVlT2Y6YX0udmFsdWVPZigpfTtJYT1mdW5jdGlvbigpe3ZhciBhPW51bGw7aWYoIUhhKXJldHVybiBhO3RyeXt2YXIgYj1mdW5jdGlvbihjKXtyZXR1cm4gY307YT1IYS5jcmVhdGVQb2xpY3koImdvb2cjaHRtbCIse2NyZWF0ZUhUTUw6YixjcmVhdGVTY3JpcHQ6YixjcmVhdGVTY3JpcHRVUkw6Yn0pfWNhdGNoKGMpe31yZXR1cm4gYX07Xy5LYT1mdW5jdGlvbigpe0phPT09dm9pZCAwJiYoSmE9SWEoKSk7cmV0dXJuIEphfTsKXy5NYT1mdW5jdGlvbihhKXt2YXIgYj1fLkthKCk7YT1iP2IuY3JlYXRlU2NyaXB0VVJMKGEpOmE7cmV0dXJuIG5ldyBfLkxhKGEpfTtfLk5hPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLkxhKXJldHVybiBhLmc7dGhyb3cgRXJyb3IoInQiKTt9O18uT2E9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/ZG9jdW1lbnQ6Yjt2YXIgYyxkO2I9KGQ9KGM9YikucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOmQuY2FsbChjLGErIltub25jZV0iKTtyZXR1cm4gYj09bnVsbD8iIjpiLm5vbmNlfHxiLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiJ9O18uUWE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5LYSgpO2E9Yj9iLmNyZWF0ZVNjcmlwdChhKTphO3JldHVybiBuZXcgXy5QYShhKX07Xy5SYT1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5QYSlyZXR1cm4gYS5nO3Rocm93IEVycm9yKCJ0Iik7fTsKXy5TYT1mdW5jdGlvbihhLGIpe2Euc3JjPV8uTmEoYik7KGI9Xy5PYSgic2NyaXB0IixhLm93bmVyRG9jdW1lbnQpKSYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixiKX07Xy5UYT1mdW5jdGlvbigpe3ZhciBhPV8udi5uYXZpZ2F0b3I7cmV0dXJuIGEmJihhPWEudXNlckFnZW50KT9hOiIifTtfLnc9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uVGEoKS5pbmRleE9mKGEpIT0tMX07Xy5XYT1mdW5jdGlvbigpe3JldHVybiBfLlVhPyEhXy5WYSYmXy5WYS5icmFuZHMubGVuZ3RoPjA6ITF9O18uWGE9ZnVuY3Rpb24oKXtyZXR1cm4gXy5XYSgpPyExOl8udygiT3BlcmEiKX07WWE9ZnVuY3Rpb24oKXtyZXR1cm4gXy5VYT8hIV8uVmEmJiEhXy5WYS5wbGF0Zm9ybTohMX07Xy5aYT1mdW5jdGlvbigpe3JldHVybiBfLncoImlQaG9uZSIpJiYhXy53KCJpUG9kIikmJiFfLncoImlQYWQiKX07Xy4kYT1mdW5jdGlvbigpe3JldHVybiBfLlphKCl8fF8udygiaVBhZCIpfHxfLncoImlQb2QiKX07Cl8uYWI9ZnVuY3Rpb24oKXtyZXR1cm4gWWEoKT9fLlZhLnBsYXRmb3JtPT09Im1hY09TIjpfLncoIk1hY2ludG9zaCIpfTtiYj1mdW5jdGlvbigpe3RoaXMuaWQ9ImIifTtfLmRiPWZ1bmN0aW9uKGEsYil7Y2IuY2FsbCh0aGlzLGE/YS50eXBlOiIiKTt0aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PW51bGw7dGhpcy5idXR0b249dGhpcy5zY3JlZW5ZPXRoaXMuc2NyZWVuWD10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPXRoaXMub2Zmc2V0WT10aGlzLm9mZnNldFg9MDt0aGlzLmtleT0iIjt0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wO3RoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT0hMTt0aGlzLnN0YXRlPW51bGw7dGhpcy5wb2ludGVySWQ9MDt0aGlzLnBvaW50ZXJUeXBlPSIiO3RoaXMudGltZVN0YW1wPTA7dGhpcy5nPW51bGw7YSYmdGhpcy5pbml0KGEsYil9OwpmYj1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMubGlzdGVuZXI9YTt0aGlzLnByb3h5PW51bGw7dGhpcy5zcmM9Yjt0aGlzLnR5cGU9Yzt0aGlzLmNhcHR1cmU9ISFkO3RoaXMuVmM9ZTt0aGlzLmtleT0rK2ViO3RoaXMub2M9dGhpcy5IYz0hMX07Z2I9ZnVuY3Rpb24oYSl7dGhpcy5zcmM9YTt0aGlzLmc9e307dGhpcy5oPTB9O18uaGI9ZnVuY3Rpb24oKXtfLnUuY2FsbCh0aGlzKTt0aGlzLlFhPW5ldyBnYih0aGlzKTt0aGlzLldnPXRoaXM7dGhpcy5mZD1udWxsfTtqYj1mdW5jdGlvbihhKXtfLmhiLmNhbGwodGhpcyk7dGhpcy5nPWF8fHdpbmRvdzt0aGlzLmg9Xy54KHRoaXMuZywicmVzaXplIix0aGlzLmwsITEsdGhpcyk7dGhpcy5qPV8uaWIodGhpcy5nfHx3aW5kb3cpfTsKa2I9ZnVuY3Rpb24oYSl7Xy5oYi5jYWxsKHRoaXMpO3RoaXMuaD1hP2EuZy5kZWZhdWx0Vmlldzp3aW5kb3c7dGhpcy5vPXRoaXMuaC5kZXZpY2VQaXhlbFJhdGlvPj0xLjU/MjoxO3RoaXMuaj0oMCxfLnkpKHRoaXMuQSx0aGlzKTt0aGlzLmw9bnVsbDsodGhpcy5nPXRoaXMuaC5tYXRjaE1lZGlhP3RoaXMuaC5tYXRjaE1lZGlhKCIobWluLXJlc29sdXRpb246IDEuNWRwcHgpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjUpIik6bnVsbCkmJnR5cGVvZiB0aGlzLmcuYWRkTGlzdGVuZXIhPT0iZnVuY3Rpb24iJiZ0eXBlb2YgdGhpcy5nLmFkZEV2ZW50TGlzdGVuZXIhPT0iZnVuY3Rpb24iJiYodGhpcy5nPW51bGwpfTsKbmI9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLm89YTtpZihiKXtpZih0aGlzLmwpdGhyb3cgRXJyb3IoIngiKTt0aGlzLmw9Yjt0aGlzLmg9Xy5sYihiKTt0aGlzLmc9bmV3IGpiKF8ubWIoYikpO3RoaXMuZy5uZCh0aGlzLm8uaCgpKTt0aGlzLmo9bmV3IGtiKHRoaXMuaCk7dGhpcy5qLnN0YXJ0KCl9fTtwYj1mdW5jdGlvbihhKXthPWEuSGQuY2hhckNvZGVBdChhLkJiKyspO3JldHVybiBvYlthXX07cWI9ZnVuY3Rpb24oYSl7dmFyIGI9MCxjPTA7ZG97dmFyIGQ9cGIoYSk7Ynw9KGQmMzEpPDxjO2MrPTV9d2hpbGUoZCYzMik7cmV0dXJuIGI8MD9iKzQyOTQ5NjcyOTY6Yn07Xy5yYj1mdW5jdGlvbihhKXtfLnYuc2V0VGltZW91dChmdW5jdGlvbigpe3Rocm93IGE7fSwwKX07c2I9ZnVuY3Rpb24oYSxiKXt0aGlzLmc9YTt0aGlzLmg9Yn07CnViPWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7dGhpcy5sPWE7dGhpcy5BPWI7dGhpcy5qPXRiP251bGw6W107dGhpcy5oPXRiP251bGw6W107dGhpcy5vPXRiP251bGw6W107dGhpcy5CPSExfTt2Yj1mdW5jdGlvbigpe3RoaXMuTz10aGlzLnFhPW51bGx9O0FiPWZ1bmN0aW9uKCl7Zm9yKHZhciBhO2E9d2IucmVtb3ZlKCk7KXt0cnl7YS5nLmNhbGwoYS5zY29wZSl9Y2F0Y2goYil7Xy5yYihiKX14Yih5YixhKX16Yj0hMX07QmI9ZnVuY3Rpb24oKXt0aGlzLkI9W107dGhpcy5vPXRoaXMuaD0hMTt0aGlzLmw9dm9pZCAwO3RoaXMuRz10aGlzLlc9dGhpcy5EPSExO3RoaXMuQz0wO3RoaXMuaj1udWxsO3RoaXMuQT0wfTtfLkNiPWZ1bmN0aW9uKGEpe3JldHVybiBhP2RlY29kZVVSSShhKTphfTsKXy5FYj1mdW5jdGlvbihhLGIpe2lmKGEpe2E9YS5zcGxpdCgiJiIpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLmluZGV4T2YoIj0iKSxlPW51bGw7aWYoZD49MCl7dmFyIGY9YVtjXS5zdWJzdHJpbmcoMCxkKTtlPWFbY10uc3Vic3RyaW5nKGQrMSl9ZWxzZSBmPWFbY107YihmLGU/Xy5EYihlKToiIil9fX07RmI9ZnVuY3Rpb24oYSxiLGMpe2lmKEFycmF5LmlzQXJyYXkoYikpZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspRmIoYSxTdHJpbmcoYltkXSksYyk7ZWxzZSBiIT1udWxsJiZjLnB1c2goYSsoYj09PSIiPyIiOiI9IitfLkdiKGIpKSl9O18uSGI9ZnVuY3Rpb24oYSl7Xy51LmNhbGwodGhpcyk7dGhpcy5oPWE7dGhpcy5nPXt9fTtJYj1mdW5jdGlvbigpe307SmI9ZnVuY3Rpb24oKXt9O18uTGI9ZnVuY3Rpb24oYSl7YT1fLktiKGEpO3JldHVybiBfLk1hKGEpfTsKXy5LYj1mdW5jdGlvbihhKXtyZXR1cm4gYT09PW51bGw/Im51bGwiOmE9PT12b2lkIDA/InVuZGVmaW5lZCI6YX07TWI9dHlwZW9mIE9iamVjdC5jcmVhdGU9PSJmdW5jdGlvbiI/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbigpe307Yi5wcm90b3R5cGU9YTtyZXR1cm4gbmV3IGJ9O05iPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09ImZ1bmN0aW9uIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PUFycmF5LnByb3RvdHlwZXx8YT09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2JdPWMudmFsdWU7cmV0dXJuIGF9OwpPYj1mdW5jdGlvbihhKXthPVsib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMsYSwib2JqZWN0Ij09dHlwZW9mIHdpbmRvdyYmd2luZG93LCJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiwib2JqZWN0Ij09dHlwZW9mIGdsb2JhbCYmZ2xvYmFsXTtmb3IodmFyIGI9MDtiPGEubGVuZ3RoOysrYil7dmFyIGM9YVtiXTtpZihjJiZjLk1hdGg9PU1hdGgpcmV0dXJuIGN9dGhyb3cgRXJyb3IoImEiKTt9O18uUGI9T2IodGhpcyk7UWI9IkludDggVWludDggVWludDhDbGFtcGVkIEludDE2IFVpbnQxNiBJbnQzMiBVaW50MzIgRmxvYXQzMiBGbG9hdDY0Ii5zcGxpdCgiICIpO18uUGIuQmlnSW50NjRBcnJheSYmKFFiLnB1c2goIkJpZ0ludDY0IiksUWIucHVzaCgiQmlnVWludDY0IikpO1NiPWZ1bmN0aW9uKGEsYil7aWYoYilmb3IodmFyIGM9MDtjPFFiLmxlbmd0aDtjKyspUmIoUWJbY10rIkFycmF5LnByb3RvdHlwZS4iK2EsYil9Owp6PWZ1bmN0aW9uKGEsYil7YiYmUmIoYSxiKX07UmI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLlBiO2E9YS5zcGxpdCgiLiIpO2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGgtMTtkKyspe3ZhciBlPWFbZF07aWYoIShlIGluIGMpKXJldHVybjtjPWNbZV19YT1hW2EubGVuZ3RoLTFdO2Q9Y1thXTtiPWIoZCk7YiE9ZCYmYiE9bnVsbCYmTmIoYyxhLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Yn0pfTsKXy5UYj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtmdW5jdGlvbiBjKCl7fW5ldyBjO1JlZmxlY3QuY29uc3RydWN0KGMsW10sZnVuY3Rpb24oKXt9KTtyZXR1cm4gbmV3IGMgaW5zdGFuY2VvZiBjfWlmKHR5cGVvZiBSZWZsZWN0IT0idW5kZWZpbmVkIiYmUmVmbGVjdC5jb25zdHJ1Y3Qpe2lmKGEoKSlyZXR1cm4gUmVmbGVjdC5jb25zdHJ1Y3Q7dmFyIGI9UmVmbGVjdC5jb25zdHJ1Y3Q7cmV0dXJuIGZ1bmN0aW9uKGMsZCxlKXtjPWIoYyxkKTtlJiZSZWZsZWN0LnNldFByb3RvdHlwZU9mKGMsZS5wcm90b3R5cGUpO3JldHVybiBjfX1yZXR1cm4gZnVuY3Rpb24oYyxkLGUpe2U9PT12b2lkIDAmJihlPWMpO2U9TWIoZS5wcm90b3R5cGV8fE9iamVjdC5wcm90b3R5cGUpO3JldHVybiBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkuY2FsbChjLGUsZCl8fGV9fSgpOwppZih0eXBlb2YgT2JqZWN0LnNldFByb3RvdHlwZU9mPT0iZnVuY3Rpb24iKVViPU9iamVjdC5zZXRQcm90b3R5cGVPZjtlbHNle3ZhciBWYjthOnt2YXIgV2I9e2E6ITB9LFhiPXt9O3RyeXtYYi5fX3Byb3RvX189V2I7VmI9WGIuYTticmVhayBhfWNhdGNoKGEpe31WYj0hMX1VYj1WYj9mdW5jdGlvbihhLGIpe2EuX19wcm90b19fPWI7aWYoYS5fX3Byb3RvX18hPT1iKXRocm93IG5ldyBUeXBlRXJyb3IoImJgIithKTtyZXR1cm4gYX06bnVsbH1ZYj1VYjsKXy5CPWZ1bmN0aW9uKGEsYil7YS5wcm90b3R5cGU9TWIoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYoWWIpWWIoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPSJwcm90b3R5cGUiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLmVhPWIucHJvdG90eXBlfTtaYj1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX07Cl8uQz1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6WmIoYSl9O3Rocm93IEVycm9yKCJjYCIrU3RyaW5nKGEpKTt9O18uJGI9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgQXJyYXkpKXthPV8uQyhhKTtmb3IodmFyIGIsYz1bXTshKGI9YS5uZXh0KCkpLmRvbmU7KWMucHVzaChiLnZhbHVlKTthPWN9cmV0dXJuIGF9O2FjPWZ1bmN0aW9uKGEsYil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLGIpfTsKYmM9dHlwZW9mIE9iamVjdC5hc3NpZ249PSJmdW5jdGlvbiI/T2JqZWN0LmFzc2lnbjpmdW5jdGlvbihhLGIpe2lmKGE9PW51bGwpdGhyb3cgbmV3IFR5cGVFcnJvcigiZCIpO2E9T2JqZWN0KGEpO2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTtpZihkKWZvcih2YXIgZSBpbiBkKWFjKGQsZSkmJihhW2VdPWRbZV0pfXJldHVybiBhfTt6KCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8YmN9KTtfLmNjPWZ1bmN0aW9uKGEpe2lmKCEoYSBpbnN0YW5jZW9mIE9iamVjdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiZWAiK2EpO307Xy5GPWZ1bmN0aW9uKCl7dGhpcy5HPSExO3RoaXMuQT1udWxsO3RoaXMuaj12b2lkIDA7dGhpcy5nPTE7dGhpcy5vPXRoaXMuQz0wO3RoaXMuVz10aGlzLmw9bnVsbH07Xy5GLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGEpe3RoaXMuaj1hfTsKXy5GLnByb3RvdHlwZS5nZXROZXh0QWRkcmVzc0pzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd9O18uRi5wcm90b3R5cGUuZ2V0WWllbGRSZXN1bHRKc2M9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qfTtfLkYucHJvdG90eXBlLnJldHVybj1mdW5jdGlvbihhKXt0aGlzLmw9e3JldHVybjphfTt0aGlzLmc9dGhpcy5vfTtfLkYucHJvdG90eXBlWyJyZXR1cm4iXT1fLkYucHJvdG90eXBlLnJldHVybjtfLkYucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7dGhpcy5sPXt4YTphfTt0aGlzLmc9dGhpcy5vfTtfLkYucHJvdG90eXBlLmp1bXBUaHJvdWdoRmluYWxseUJsb2Nrcz1fLkYucHJvdG90eXBlLlI7Xy5GLnByb3RvdHlwZS5oPWZ1bmN0aW9uKGEsYil7dGhpcy5nPWI7cmV0dXJue3ZhbHVlOmF9fTtfLkYucHJvdG90eXBlLnlpZWxkPV8uRi5wcm90b3R5cGUuaDsKXy5GLnByb3RvdHlwZS5UPWZ1bmN0aW9uKGEsYil7YT1fLkMoYSk7dmFyIGM9YS5uZXh0KCk7Xy5jYyhjKTtpZihjLmRvbmUpdGhpcy5qPWMudmFsdWUsdGhpcy5nPWI7ZWxzZSByZXR1cm4gdGhpcy5BPWEsdGhpcy5oKGMudmFsdWUsYil9O18uRi5wcm90b3R5cGUueWllbGRBbGw9Xy5GLnByb3RvdHlwZS5UO18uRi5wcm90b3R5cGUueGE9ZnVuY3Rpb24oYSl7dGhpcy5nPWF9O18uRi5wcm90b3R5cGUuanVtcFRvPV8uRi5wcm90b3R5cGUueGE7Xy5GLnByb3RvdHlwZS5CPWZ1bmN0aW9uKCl7dGhpcy5nPTB9O18uRi5wcm90b3R5cGUuanVtcFRvRW5kPV8uRi5wcm90b3R5cGUuQjtfLkYucHJvdG90eXBlLkY9ZnVuY3Rpb24oYSxiKXt0aGlzLkM9YTtiIT12b2lkIDAmJih0aGlzLm89Yil9O18uRi5wcm90b3R5cGUuc2V0Q2F0Y2hGaW5hbGx5QmxvY2tzPV8uRi5wcm90b3R5cGUuRjtfLkYucHJvdG90eXBlLlA9ZnVuY3Rpb24oYSl7dGhpcy5DPTA7dGhpcy5vPWF8fDB9OwpfLkYucHJvdG90eXBlLnNldEZpbmFsbHlCbG9jaz1fLkYucHJvdG90eXBlLlA7Xy5GLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYil7dGhpcy5nPWE7dGhpcy5DPWJ8fDB9O18uRi5wcm90b3R5cGUubGVhdmVUcnlCbG9jaz1fLkYucHJvdG90eXBlLks7Xy5GLnByb3RvdHlwZS5EPWZ1bmN0aW9uKGEpe3RoaXMuQz1hfHwwO2E9dGhpcy5sLmJmO3RoaXMubD1udWxsO3JldHVybiBhfTtfLkYucHJvdG90eXBlLmVudGVyQ2F0Y2hCbG9jaz1fLkYucHJvdG90eXBlLkQ7Xy5GLnByb3RvdHlwZS5MPWZ1bmN0aW9uKGEsYixjKXtjP3RoaXMuV1tjXT10aGlzLmw6dGhpcy5XPVt0aGlzLmxdO3RoaXMuQz1hfHwwO3RoaXMubz1ifHwwfTtfLkYucHJvdG90eXBlLmVudGVyRmluYWxseUJsb2NrPV8uRi5wcm90b3R5cGUuTDsKXy5GLnByb3RvdHlwZS5xYT1mdW5jdGlvbihhLGIpe2I9dGhpcy5XLnNwbGljZShifHwwKVswXTsoYj10aGlzLmw9dGhpcy5sfHxiKT9iLkNmP3RoaXMuZz10aGlzLkN8fHRoaXMubzpiLnhhIT12b2lkIDAmJnRoaXMubzxiLnhhPyh0aGlzLmc9Yi54YSx0aGlzLmw9bnVsbCk6dGhpcy5nPXRoaXMubzp0aGlzLmc9YX07Xy5GLnByb3RvdHlwZS5sZWF2ZUZpbmFsbHlCbG9jaz1fLkYucHJvdG90eXBlLnFhO18uRi5wcm90b3R5cGUuTz1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IGRjKGEpfTtfLkYucHJvdG90eXBlLmZvckluPV8uRi5wcm90b3R5cGUuTzt2YXIgZGM9ZnVuY3Rpb24oYSl7dGhpcy5qPWE7dGhpcy5nPVtdO2Zvcih2YXIgYiBpbiBhKXRoaXMuZy5wdXNoKGIpO3RoaXMuZy5yZXZlcnNlKCl9O2RjLnByb3RvdHlwZS5oPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLmcubGVuZ3RoPjA7KXt2YXIgYT10aGlzLmcucG9wKCk7aWYoYSBpbiB0aGlzLmopcmV0dXJuIGF9cmV0dXJuIG51bGx9OwpkYy5wcm90b3R5cGUuZ2V0TmV4dD1kYy5wcm90b3R5cGUuaDtfLmVjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9O3ooImdsb2JhbFRoaXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhfHxfLlBifSk7eigiUmVmbGVjdCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTp7fX0pO3ooIlJlZmxlY3QuY29uc3RydWN0IixmdW5jdGlvbigpe3JldHVybiBfLlRifSk7eigiUmVmbGVjdC5zZXRQcm90b3R5cGVPZiIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpZYj9mdW5jdGlvbihiLGMpe3RyeXtyZXR1cm4gWWIoYixjKSwhMH1jYXRjaChkKXtyZXR1cm4hMX19Om51bGx9KTsKeigiU3ltYm9sIixmdW5jdGlvbihhKXtpZihhKXJldHVybiBhO3ZhciBiPWZ1bmN0aW9uKGYsZyl7dGhpcy5nPWY7TmIodGhpcywiZGVzY3JpcHRpb24iLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Z30pfTtiLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd9O3ZhciBjPSJqc2NvbXBfc3ltYm9sXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCkrIl8iLGQ9MCxlPWZ1bmN0aW9uKGYpe2lmKHRoaXMgaW5zdGFuY2VvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoImciKTtyZXR1cm4gbmV3IGIoYysoZnx8IiIpKyJfIitkKyssZil9O3JldHVybiBlfSk7eigiU3ltYm9sLml0ZXJhdG9yIixmdW5jdGlvbihhKXtpZihhKXJldHVybiBhO2E9U3ltYm9sKCJoIik7TmIoQXJyYXkucHJvdG90eXBlLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBmYyhaYih0aGlzKSl9fSk7cmV0dXJuIGF9KTsKdmFyIGZjPWZ1bmN0aW9uKGEpe2E9e25leHQ6YX07YVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O3JldHVybiBhfTsKeigiUHJvbWlzZSIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe3RoaXMuZz1udWxsfWZ1bmN0aW9uIGMoZyl7cmV0dXJuIGcgaW5zdGFuY2VvZiBlP2c6bmV3IGUoZnVuY3Rpb24oaCl7aChnKX0pfWlmKGEpcmV0dXJuIGE7Yi5wcm90b3R5cGUuaD1mdW5jdGlvbihnKXtpZih0aGlzLmc9PW51bGwpe3RoaXMuZz1bXTt2YXIgaD10aGlzO3RoaXMuaihmdW5jdGlvbigpe2gubygpfSl9dGhpcy5nLnB1c2goZyl9O3ZhciBkPV8uUGIuc2V0VGltZW91dDtiLnByb3RvdHlwZS5qPWZ1bmN0aW9uKGcpe2QoZywwKX07Yi5wcm90b3R5cGUubz1mdW5jdGlvbigpe2Zvcig7dGhpcy5nJiZ0aGlzLmcubGVuZ3RoOyl7dmFyIGc9dGhpcy5nO3RoaXMuZz1bXTtmb3IodmFyIGg9MDtoPGcubGVuZ3RoOysraCl7dmFyIGs9Z1toXTtnW2hdPW51bGw7dHJ5e2soKX1jYXRjaChsKXt0aGlzLmwobCl9fX10aGlzLmc9bnVsbH07Yi5wcm90b3R5cGUubD1mdW5jdGlvbihnKXt0aGlzLmooZnVuY3Rpb24oKXt0aHJvdyBnOwp9KX07dmFyIGU9ZnVuY3Rpb24oZyl7dGhpcy5nPTA7dGhpcy5qPXZvaWQgMDt0aGlzLmg9W107dGhpcy5CPSExO3ZhciBoPXRoaXMubCgpO3RyeXtnKGgucmVzb2x2ZSxoLnJlamVjdCl9Y2F0Y2goayl7aC5yZWplY3Qoayl9fTtlLnByb3RvdHlwZS5sPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZyhsKXtyZXR1cm4gZnVuY3Rpb24obil7a3x8KGs9ITAsbC5jYWxsKGgsbikpfX12YXIgaD10aGlzLGs9ITE7cmV0dXJue3Jlc29sdmU6Zyh0aGlzLkkpLHJlamVjdDpnKHRoaXMubyl9fTtlLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGcpe2lmKGc9PT10aGlzKXRoaXMubyhuZXcgVHlwZUVycm9yKCJpIikpO2Vsc2UgaWYoZyBpbnN0YW5jZW9mIGUpdGhpcy5LKGcpO2Vsc2V7YTpzd2l0Y2godHlwZW9mIGcpe2Nhc2UgIm9iamVjdCI6dmFyIGg9ZyE9bnVsbDticmVhayBhO2Nhc2UgImZ1bmN0aW9uIjpoPSEwO2JyZWFrIGE7ZGVmYXVsdDpoPSExfWg/dGhpcy5HKGcpOnRoaXMuQShnKX19O2UucHJvdG90eXBlLkc9CmZ1bmN0aW9uKGcpe3ZhciBoPXZvaWQgMDt0cnl7aD1nLnRoZW59Y2F0Y2goayl7dGhpcy5vKGspO3JldHVybn10eXBlb2YgaD09ImZ1bmN0aW9uIj90aGlzLkwoaCxnKTp0aGlzLkEoZyl9O2UucHJvdG90eXBlLm89ZnVuY3Rpb24oZyl7dGhpcy5DKDIsZyl9O2UucHJvdG90eXBlLkE9ZnVuY3Rpb24oZyl7dGhpcy5DKDEsZyl9O2UucHJvdG90eXBlLkM9ZnVuY3Rpb24oZyxoKXtpZih0aGlzLmchPTApdGhyb3cgRXJyb3IoImpgIitnKyJgIitoKyJgIit0aGlzLmcpO3RoaXMuZz1nO3RoaXMuaj1oO3RoaXMuZz09PTImJnRoaXMuVygpO3RoaXMuRCgpfTtlLnByb3RvdHlwZS5XPWZ1bmN0aW9uKCl7dmFyIGc9dGhpcztkKGZ1bmN0aW9uKCl7aWYoZy5GKCkpe3ZhciBoPV8uUGIuY29uc29sZTt0eXBlb2YgaCE9PSJ1bmRlZmluZWQiJiZoLmVycm9yKGcuail9fSwxKX07ZS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe2lmKHRoaXMuQilyZXR1cm4hMTt2YXIgZz1fLlBiLkN1c3RvbUV2ZW50LApoPV8uUGIuRXZlbnQsaz1fLlBiLmRpc3BhdGNoRXZlbnQ7aWYodHlwZW9mIGs9PT0idW5kZWZpbmVkIilyZXR1cm4hMDt0eXBlb2YgZz09PSJmdW5jdGlvbiI/Zz1uZXcgZygidW5oYW5kbGVkcmVqZWN0aW9uIix7Y2FuY2VsYWJsZTohMH0pOnR5cGVvZiBoPT09ImZ1bmN0aW9uIj9nPW5ldyBoKCJ1bmhhbmRsZWRyZWplY3Rpb24iLHtjYW5jZWxhYmxlOiEwfSk6KGc9Xy5QYi5kb2N1bWVudC5jcmVhdGVFdmVudCgiQ3VzdG9tRXZlbnQiKSxnLmluaXRDdXN0b21FdmVudCgidW5oYW5kbGVkcmVqZWN0aW9uIiwhMSwhMCxnKSk7Zy5wcm9taXNlPXRoaXM7Zy5yZWFzb249dGhpcy5qO3JldHVybiBrKGcpfTtlLnByb3RvdHlwZS5EPWZ1bmN0aW9uKCl7aWYodGhpcy5oIT1udWxsKXtmb3IodmFyIGc9MDtnPHRoaXMuaC5sZW5ndGg7KytnKWYuaCh0aGlzLmhbZ10pO3RoaXMuaD1udWxsfX07dmFyIGY9bmV3IGI7ZS5wcm90b3R5cGUuSz1mdW5jdGlvbihnKXt2YXIgaD10aGlzLmwoKTtnLkljKGgucmVzb2x2ZSwKaC5yZWplY3QpfTtlLnByb3RvdHlwZS5MPWZ1bmN0aW9uKGcsaCl7dmFyIGs9dGhpcy5sKCk7dHJ5e2cuY2FsbChoLGsucmVzb2x2ZSxrLnJlamVjdCl9Y2F0Y2gobCl7ay5yZWplY3QobCl9fTtlLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGcsaCl7ZnVuY3Rpb24gayhwLHIpe3JldHVybiB0eXBlb2YgcD09ImZ1bmN0aW9uIj9mdW5jdGlvbih0KXt0cnl7bChwKHQpKX1jYXRjaChBKXtuKEEpfX06cn12YXIgbCxuLHE9bmV3IGUoZnVuY3Rpb24ocCxyKXtsPXA7bj1yfSk7dGhpcy5JYyhrKGcsbCksayhoLG4pKTtyZXR1cm4gcX07ZS5wcm90b3R5cGUuY2F0Y2g9ZnVuY3Rpb24oZyl7cmV0dXJuIHRoaXMudGhlbih2b2lkIDAsZyl9O2UucHJvdG90eXBlLkljPWZ1bmN0aW9uKGcsaCl7ZnVuY3Rpb24gaygpe3N3aXRjaChsLmcpe2Nhc2UgMTpnKGwuaik7YnJlYWs7Y2FzZSAyOmgobC5qKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJrYCIrbC5nKTt9fXZhciBsPXRoaXM7dGhpcy5oPT0KbnVsbD9mLmgoayk6dGhpcy5oLnB1c2goayk7dGhpcy5CPSEwfTtlLnJlc29sdmU9YztlLnJlamVjdD1mdW5jdGlvbihnKXtyZXR1cm4gbmV3IGUoZnVuY3Rpb24oaCxrKXtrKGcpfSl9O2UucmFjZT1mdW5jdGlvbihnKXtyZXR1cm4gbmV3IGUoZnVuY3Rpb24oaCxrKXtmb3IodmFyIGw9Xy5DKGcpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKWMobi52YWx1ZSkuSWMoaCxrKX0pfTtlLmFsbD1mdW5jdGlvbihnKXt2YXIgaD1fLkMoZyksaz1oLm5leHQoKTtyZXR1cm4gay5kb25lP2MoW10pOm5ldyBlKGZ1bmN0aW9uKGwsbil7ZnVuY3Rpb24gcSh0KXtyZXR1cm4gZnVuY3Rpb24oQSl7cFt0XT1BO3ItLTtyPT0wJiZsKHApfX12YXIgcD1bXSxyPTA7ZG8gcC5wdXNoKHZvaWQgMCkscisrLGMoay52YWx1ZSkuSWMocShwLmxlbmd0aC0xKSxuKSxrPWgubmV4dCgpO3doaWxlKCFrLmRvbmUpfSl9O3JldHVybiBlfSk7CnZhciBoYz1mdW5jdGlvbihhLGIsYyl7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJsYCIrYyk7aWYoYiBpbnN0YW5jZW9mIFJlZ0V4cCl0aHJvdyBuZXcgVHlwZUVycm9yKCJtYCIrYyk7cmV0dXJuIGErIiJ9O3ooIlN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3ZhciBkPWhjKHRoaXMsYiwic3RhcnRzV2l0aCIpLGU9ZC5sZW5ndGgsZj1iLmxlbmd0aDtjPU1hdGgubWF4KDAsTWF0aC5taW4oY3wwLGQubGVuZ3RoKSk7Zm9yKHZhciBnPTA7ZzxmJiZjPGU7KWlmKGRbYysrXSE9YltnKytdKXJldHVybiExO3JldHVybiBnPj1mfX0pO3ooIk9iamVjdC5zZXRQcm90b3R5cGVPZiIsZnVuY3Rpb24oYSl7cmV0dXJuIGF8fFlifSk7eigiU3ltYm9sLmRpc3Bvc2UiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6U3ltYm9sKCJuIil9KTsKeigiV2Vha01hcCIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe31mdW5jdGlvbiBjKGspe3ZhciBsPXR5cGVvZiBrO3JldHVybiBsPT09Im9iamVjdCImJmshPT1udWxsfHxsPT09ImZ1bmN0aW9uIn1mdW5jdGlvbiBkKGspe2lmKCFhYyhrLGYpKXt2YXIgbD1uZXcgYjtOYihrLGYse3ZhbHVlOmx9KX19ZnVuY3Rpb24gZShrKXt2YXIgbD1PYmplY3Rba107bCYmKE9iamVjdFtrXT1mdW5jdGlvbihuKXtpZihuIGluc3RhbmNlb2YgYilyZXR1cm4gbjtPYmplY3QuaXNFeHRlbnNpYmxlKG4pJiZkKG4pO3JldHVybiBsKG4pfSl9aWYoZnVuY3Rpb24oKXtpZighYXx8IU9iamVjdC5zZWFsKXJldHVybiExO3RyeXt2YXIgaz1PYmplY3Quc2VhbCh7fSksbD1PYmplY3Quc2VhbCh7fSksbj1uZXcgYShbW2ssMl0sW2wsM11dKTtpZihuLmdldChrKSE9Mnx8bi5nZXQobCkhPTMpcmV0dXJuITE7bi5kZWxldGUoayk7bi5zZXQobCw0KTtyZXR1cm4hbi5oYXMoaykmJm4uZ2V0KGwpPT00fWNhdGNoKHEpe3JldHVybiExfX0oKSlyZXR1cm4gYTsKdmFyIGY9IiRqc2NvbXBfaGlkZGVuXyIrTWF0aC5yYW5kb20oKTtlKCJmcmVlemUiKTtlKCJwcmV2ZW50RXh0ZW5zaW9ucyIpO2UoInNlYWwiKTt2YXIgZz0wLGg9ZnVuY3Rpb24oayl7dGhpcy5nPShnKz1NYXRoLnJhbmRvbSgpKzEpLnRvU3RyaW5nKCk7aWYoayl7az1fLkMoayk7Zm9yKHZhciBsOyEobD1rLm5leHQoKSkuZG9uZTspbD1sLnZhbHVlLHRoaXMuc2V0KGxbMF0sbFsxXSl9fTtoLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oayxsKXtpZighYyhrKSl0aHJvdyBFcnJvcigibyIpO2Qoayk7aWYoIWFjKGssZikpdGhyb3cgRXJyb3IoInBgIitrKTtrW2ZdW3RoaXMuZ109bDtyZXR1cm4gdGhpc307aC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGspe3JldHVybiBjKGspJiZhYyhrLGYpP2tbZl1bdGhpcy5nXTp2b2lkIDB9O2gucHJvdG90eXBlLmhhcz1mdW5jdGlvbihrKXtyZXR1cm4gYyhrKSYmYWMoayxmKSYmYWMoa1tmXSx0aGlzLmcpfTtoLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oayl7cmV0dXJuIGMoaykmJgphYyhrLGYpJiZhYyhrW2ZdLHRoaXMuZyk/ZGVsZXRlIGtbZl1bdGhpcy5nXTohMX07cmV0dXJuIGh9KTsKeigiTWFwIixmdW5jdGlvbihhKXtpZihmdW5jdGlvbigpe2lmKCFhfHx0eXBlb2YgYSE9ImZ1bmN0aW9uInx8IWEucHJvdG90eXBlLmVudHJpZXN8fHR5cGVvZiBPYmplY3Quc2VhbCE9ImZ1bmN0aW9uIilyZXR1cm4hMTt0cnl7dmFyIGg9T2JqZWN0LnNlYWwoe3g6NH0pLGs9bmV3IGEoXy5DKFtbaCwicyJdXSkpO2lmKGsuZ2V0KGgpIT0icyJ8fGsuc2l6ZSE9MXx8ay5nZXQoe3g6NH0pfHxrLnNldCh7eDo0fSwidCIpIT1rfHxrLnNpemUhPTIpcmV0dXJuITE7dmFyIGw9ay5lbnRyaWVzKCksbj1sLm5leHQoKTtpZihuLmRvbmV8fG4udmFsdWVbMF0hPWh8fG4udmFsdWVbMV0hPSJzIilyZXR1cm4hMTtuPWwubmV4dCgpO3JldHVybiBuLmRvbmV8fG4udmFsdWVbMF0ueCE9NHx8bi52YWx1ZVsxXSE9InQifHwhbC5uZXh0KCkuZG9uZT8hMTohMH1jYXRjaChxKXtyZXR1cm4hMX19KCkpcmV0dXJuIGE7dmFyIGI9bmV3IFdlYWtNYXAsYz1mdW5jdGlvbihoKXt0aGlzWzBdPXt9O3RoaXNbMV09CmYoKTt0aGlzLnNpemU9MDtpZihoKXtoPV8uQyhoKTtmb3IodmFyIGs7IShrPWgubmV4dCgpKS5kb25lOylrPWsudmFsdWUsdGhpcy5zZXQoa1swXSxrWzFdKX19O2MucHJvdG90eXBlLnNldD1mdW5jdGlvbihoLGspe2g9aD09PTA/MDpoO3ZhciBsPWQodGhpcyxoKTtsLmxpc3R8fChsLmxpc3Q9dGhpc1swXVtsLmlkXT1bXSk7bC5lbnRyeT9sLmVudHJ5LnZhbHVlPWs6KGwuZW50cnk9e25leHQ6dGhpc1sxXSxiYjp0aGlzWzFdLmJiLGhlYWQ6dGhpc1sxXSxrZXk6aCx2YWx1ZTprfSxsLmxpc3QucHVzaChsLmVudHJ5KSx0aGlzWzFdLmJiLm5leHQ9bC5lbnRyeSx0aGlzWzFdLmJiPWwuZW50cnksdGhpcy5zaXplKyspO3JldHVybiB0aGlzfTtjLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24oaCl7aD1kKHRoaXMsaCk7cmV0dXJuIGguZW50cnkmJmgubGlzdD8oaC5saXN0LnNwbGljZShoLmluZGV4LDEpLGgubGlzdC5sZW5ndGh8fGRlbGV0ZSB0aGlzWzBdW2guaWRdLGguZW50cnkuYmIubmV4dD0KaC5lbnRyeS5uZXh0LGguZW50cnkubmV4dC5iYj1oLmVudHJ5LmJiLGguZW50cnkuaGVhZD1udWxsLHRoaXMuc2l6ZS0tLCEwKTohMX07Yy5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzWzBdPXt9O3RoaXNbMV09dGhpc1sxXS5iYj1mKCk7dGhpcy5zaXplPTB9O2MucHJvdG90eXBlLmhhcz1mdW5jdGlvbihoKXtyZXR1cm4hIWQodGhpcyxoKS5lbnRyeX07Yy5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGgpe3JldHVybihoPWQodGhpcyxoKS5lbnRyeSkmJmgudmFsdWV9O2MucHJvdG90eXBlLmVudHJpZXM9ZnVuY3Rpb24oKXtyZXR1cm4gZSh0aGlzLGZ1bmN0aW9uKGgpe3JldHVybltoLmtleSxoLnZhbHVlXX0pfTtjLnByb3RvdHlwZS5rZXlzPWZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcyxmdW5jdGlvbihoKXtyZXR1cm4gaC5rZXl9KX07Yy5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcyxmdW5jdGlvbihoKXtyZXR1cm4gaC52YWx1ZX0pfTtjLnByb3RvdHlwZS5mb3JFYWNoPQpmdW5jdGlvbihoLGspe2Zvcih2YXIgbD10aGlzLmVudHJpZXMoKSxuOyEobj1sLm5leHQoKSkuZG9uZTspbj1uLnZhbHVlLGguY2FsbChrLG5bMV0sblswXSx0aGlzKX07Yy5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1jLnByb3RvdHlwZS5lbnRyaWVzO3ZhciBkPWZ1bmN0aW9uKGgsayl7dmFyIGw9ayYmdHlwZW9mIGs7bD09Im9iamVjdCJ8fGw9PSJmdW5jdGlvbiI/Yi5oYXMoayk/bD1iLmdldChrKToobD0iIisgKytnLGIuc2V0KGssbCkpOmw9InBfIitrO3ZhciBuPWhbMF1bbF07aWYobiYmYWMoaFswXSxsKSlmb3IoaD0wO2g8bi5sZW5ndGg7aCsrKXt2YXIgcT1uW2hdO2lmKGshPT1rJiZxLmtleSE9PXEua2V5fHxrPT09cS5rZXkpcmV0dXJue2lkOmwsbGlzdDpuLGluZGV4OmgsZW50cnk6cX19cmV0dXJue2lkOmwsbGlzdDpuLGluZGV4Oi0xLGVudHJ5OnZvaWQgMH19LGU9ZnVuY3Rpb24oaCxrKXt2YXIgbD1oWzFdO3JldHVybiBmYyhmdW5jdGlvbigpe2lmKGwpe2Zvcig7bC5oZWFkIT0KaFsxXTspbD1sLmJiO2Zvcig7bC5uZXh0IT1sLmhlYWQ7KXJldHVybiBsPWwubmV4dCx7ZG9uZTohMSx2YWx1ZTprKGwpfTtsPW51bGx9cmV0dXJue2RvbmU6ITAsdmFsdWU6dm9pZCAwfX0pfSxmPWZ1bmN0aW9uKCl7dmFyIGg9e307cmV0dXJuIGguYmI9aC5uZXh0PWguaGVhZD1ofSxnPTA7cmV0dXJuIGN9KTsKeigiU2V0IixmdW5jdGlvbihhKXtpZihmdW5jdGlvbigpe2lmKCFhfHx0eXBlb2YgYSE9ImZ1bmN0aW9uInx8IWEucHJvdG90eXBlLmVudHJpZXN8fHR5cGVvZiBPYmplY3Quc2VhbCE9ImZ1bmN0aW9uIilyZXR1cm4hMTt0cnl7dmFyIGM9T2JqZWN0LnNlYWwoe3g6NH0pLGQ9bmV3IGEoXy5DKFtjXSkpO2lmKCFkLmhhcyhjKXx8ZC5zaXplIT0xfHxkLmFkZChjKSE9ZHx8ZC5zaXplIT0xfHxkLmFkZCh7eDo0fSkhPWR8fGQuc2l6ZSE9MilyZXR1cm4hMTt2YXIgZT1kLmVudHJpZXMoKSxmPWUubmV4dCgpO2lmKGYuZG9uZXx8Zi52YWx1ZVswXSE9Y3x8Zi52YWx1ZVsxXSE9YylyZXR1cm4hMTtmPWUubmV4dCgpO3JldHVybiBmLmRvbmV8fGYudmFsdWVbMF09PWN8fGYudmFsdWVbMF0ueCE9NHx8Zi52YWx1ZVsxXSE9Zi52YWx1ZVswXT8hMTplLm5leHQoKS5kb25lfWNhdGNoKGcpe3JldHVybiExfX0oKSlyZXR1cm4gYTt2YXIgYj1mdW5jdGlvbihjKXt0aGlzLmc9bmV3IE1hcDtpZihjKXtjPQpfLkMoYyk7Zm9yKHZhciBkOyEoZD1jLm5leHQoKSkuZG9uZTspdGhpcy5hZGQoZC52YWx1ZSl9dGhpcy5zaXplPXRoaXMuZy5zaXplfTtiLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYyl7Yz1jPT09MD8wOmM7dGhpcy5nLnNldChjLGMpO3RoaXMuc2l6ZT10aGlzLmcuc2l6ZTtyZXR1cm4gdGhpc307Yi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGMpe2M9dGhpcy5nLmRlbGV0ZShjKTt0aGlzLnNpemU9dGhpcy5nLnNpemU7cmV0dXJuIGN9O2IucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5nLmNsZWFyKCk7dGhpcy5zaXplPTB9O2IucHJvdG90eXBlLmhhcz1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy5nLmhhcyhjKX07Yi5wcm90b3R5cGUuZW50cmllcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuZW50cmllcygpfTtiLnByb3RvdHlwZS52YWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLnZhbHVlcygpfTtiLnByb3RvdHlwZS5rZXlzPWIucHJvdG90eXBlLnZhbHVlczsKYi5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1iLnByb3RvdHlwZS52YWx1ZXM7Yi5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihjLGQpe3ZhciBlPXRoaXM7dGhpcy5nLmZvckVhY2goZnVuY3Rpb24oZil7cmV0dXJuIGMuY2FsbChkLGYsZixlKX0pfTtyZXR1cm4gYn0pO3ZhciBpYz1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiBTdHJpbmcmJihhKz0iIik7dmFyIGM9MCxkPSExLGU9e25leHQ6ZnVuY3Rpb24oKXtpZighZCYmYzxhLmxlbmd0aCl7dmFyIGY9YysrO3JldHVybnt2YWx1ZTpiKGYsYVtmXSksZG9uZTohMX19ZD0hMDtyZXR1cm57ZG9uZTohMCx2YWx1ZTp2b2lkIDB9fX07ZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBlfTt6KCJBcnJheS5wcm90b3R5cGUuZW50cmllcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybiBpYyh0aGlzLGZ1bmN0aW9uKGIsYyl7cmV0dXJuW2IsY119KX19KTsKeigiQXJyYXkucHJvdG90eXBlLmtleXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oKXtyZXR1cm4gaWModGhpcyxmdW5jdGlvbihiKXtyZXR1cm4gYn0pfX0pO3ooIlN0cmluZy5wcm90b3R5cGUuZW5kc1dpdGgiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXt2YXIgZD1oYyh0aGlzLGIsImVuZHNXaXRoIik7Yz09PXZvaWQgMCYmKGM9ZC5sZW5ndGgpO2M9TWF0aC5tYXgoMCxNYXRoLm1pbihjfDAsZC5sZW5ndGgpKTtmb3IodmFyIGU9Yi5sZW5ndGg7ZT4wJiZjPjA7KWlmKGRbLS1jXSE9YlstLWVdKXJldHVybiExO3JldHVybiBlPD0wfX0pO3ooIk51bWJlci5pc0Zpbml0ZSIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGIhPT0ibnVtYmVyIj8hMTohaXNOYU4oYikmJmIhPT1JbmZpbml0eSYmYiE9PS1JbmZpbml0eX19KTsKeigiQXJyYXkucHJvdG90eXBlLmZpbmQiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXthOnt2YXIgZD10aGlzO2QgaW5zdGFuY2VvZiBTdHJpbmcmJihkPVN0cmluZyhkKSk7Zm9yKHZhciBlPWQubGVuZ3RoLGY9MDtmPGU7ZisrKXt2YXIgZz1kW2ZdO2lmKGIuY2FsbChjLGcsZixkKSl7Yj1nO2JyZWFrIGF9fWI9dm9pZCAwfXJldHVybiBifX0pO3ooIk9iamVjdC5lbnRyaWVzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYilhYyhiLGQpJiZjLnB1c2goW2QsYltkXV0pO3JldHVybiBjfX0pOwp6KCJBcnJheS5mcm9tIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyxkKXtjPWMhPW51bGw/YzpmdW5jdGlvbihoKXtyZXR1cm4gaH07dmFyIGU9W10sZj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZiW1N5bWJvbC5pdGVyYXRvcl07aWYodHlwZW9mIGY9PSJmdW5jdGlvbiIpe2I9Zi5jYWxsKGIpO2Zvcih2YXIgZz0wOyEoZj1iLm5leHQoKSkuZG9uZTspZS5wdXNoKGMuY2FsbChkLGYudmFsdWUsZysrKSl9ZWxzZSBmb3IoZj1iLmxlbmd0aCxnPTA7ZzxmO2crKyllLnB1c2goYy5jYWxsKGQsYltnXSxnKSk7cmV0dXJuIGV9fSk7eigiQXJyYXkucHJvdG90eXBlLnZhbHVlcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybiBpYyh0aGlzLGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGN9KX19KTsKeigiT2JqZWN0LnZhbHVlcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGIpYWMoYixkKSYmYy5wdXNoKGJbZF0pO3JldHVybiBjfX0pO3ooIk9iamVjdC5pcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3JldHVybiBiPT09Yz9iIT09MHx8MS9iPT09MS9jOmIhPT1iJiZjIT09Y319KTt6KCJBcnJheS5wcm90b3R5cGUuaW5jbHVkZXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXt2YXIgZD10aGlzO2QgaW5zdGFuY2VvZiBTdHJpbmcmJihkPVN0cmluZyhkKSk7dmFyIGU9ZC5sZW5ndGg7Yz1jfHwwO2ZvcihjPDAmJihjPU1hdGgubWF4KGMrZSwwKSk7YzxlO2MrKyl7dmFyIGY9ZFtjXTtpZihmPT09Ynx8T2JqZWN0LmlzKGYsYikpcmV0dXJuITB9cmV0dXJuITF9fSk7CnooIlN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXtyZXR1cm4gaGModGhpcyxiLCJpbmNsdWRlcyIpLmluZGV4T2YoYixjfHwwKSE9PS0xfX0pO3ooIk51bWJlci5NQVhfU0FGRV9JTlRFR0VSIixmdW5jdGlvbigpe3JldHVybiA5MDA3MTk5MjU0NzQwOTkxfSk7eigiTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIiLGZ1bmN0aW9uKCl7cmV0dXJuLTkwMDcxOTkyNTQ3NDA5OTF9KTt6KCJOdW1iZXIuaXNJbnRlZ2VyIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIpe3JldHVybiBOdW1iZXIuaXNGaW5pdGUoYik/Yj09PU1hdGguZmxvb3IoYik6ITF9fSk7eigiTnVtYmVyLmlzU2FmZUludGVnZXIiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7cmV0dXJuIE51bWJlci5pc0ludGVnZXIoYikmJk1hdGguYWJzKGIpPD1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUn19KTsKeigiT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybltdfX0pO3ooIk1hdGgudHJ1bmMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7Yj1OdW1iZXIoYik7aWYoaXNOYU4oYil8fGI9PT1JbmZpbml0eXx8Yj09PS1JbmZpbml0eXx8Yj09PTApcmV0dXJuIGI7dmFyIGM9TWF0aC5mbG9vcihNYXRoLmFicyhiKSk7cmV0dXJuIGI8MD8tYzpjfX0pO3ooIk51bWJlci5pc05hTiIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGI9PT0ibnVtYmVyIiYmaXNOYU4oYil9fSk7CnooIlN0cmluZy5wcm90b3R5cGUucmVwbGFjZUFsbCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe2lmKGIgaW5zdGFuY2VvZiBSZWdFeHAmJiFiLmdsb2JhbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJxIik7cmV0dXJuIGIgaW5zdGFuY2VvZiBSZWdFeHA/dGhpcy5yZXBsYWNlKGIsYyk6dGhpcy5yZXBsYWNlKG5ldyBSZWdFeHAoU3RyaW5nKGIpLnJlcGxhY2UoLyhbLSgpXFtcXXt9Kz8qLiRcXnwsOiM8IVxcXSkvZywiXFwkMSIpLnJlcGxhY2UoL1x4MDgvZywiXFx4MDgiKSwiZyIpLGMpfX0pOwp6KCJBcnJheS5wcm90b3R5cGUuZmxhdCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtiPWI9PT12b2lkIDA/MTpiO3ZhciBjPVtdO0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwodGhpcyxmdW5jdGlvbihkKXtBcnJheS5pc0FycmF5KGQpJiZiPjA/KGQ9QXJyYXkucHJvdG90eXBlLmZsYXQuY2FsbChkLGItMSksYy5wdXNoLmFwcGx5KGMsZCkpOmMucHVzaChkKX0pO3JldHVybiBjfX0pO3ooIlByb21pc2UucHJvdG90eXBlLmZpbmFsbHkiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7cmV0dXJuIHRoaXMudGhlbihmdW5jdGlvbihjKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGIoKSkudGhlbihmdW5jdGlvbigpe3JldHVybiBjfSl9LGZ1bmN0aW9uKGMpe3JldHVybiBQcm9taXNlLnJlc29sdmUoYigpKS50aGVuKGZ1bmN0aW9uKCl7dGhyb3cgYzt9KX0pfX0pOwp6KCJBcnJheS5wcm90b3R5cGUuZmlsbCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMsZCl7dmFyIGU9dGhpcy5sZW5ndGh8fDA7YzwwJiYoYz1NYXRoLm1heCgwLGUrYykpO2lmKGQ9PW51bGx8fGQ+ZSlkPWU7ZD1OdW1iZXIoZCk7ZDwwJiYoZD1NYXRoLm1heCgwLGUrZCkpO2ZvcihjPU51bWJlcihjfHwwKTtjPGQ7YysrKXRoaXNbY109YjtyZXR1cm4gdGhpc319KTtTYigiZmlsbCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpBcnJheS5wcm90b3R5cGUuZmlsbH0pO18uX0R1bXBFeGNlcHRpb249d2luZG93Ll9EdW1wRXhjZXB0aW9ufHxmdW5jdGlvbihhKXt0aHJvdyBhO307d2luZG93Ll9EdW1wRXhjZXB0aW9uPV8uX0R1bXBFeGNlcHRpb247dmFyIGpjLGxjLG1jLG5jLHphLEFhLHBjLHFjO2pjPWpjfHx7fTtfLnY9dGhpc3x8c2VsZjtsYz1mdW5jdGlvbihhLGIpe3ZhciBjPV8ua2MoIldJWl9nbG9iYWxfZGF0YS5veE4zbmIiKTthPWMmJmNbYV07cmV0dXJuIGEhPW51bGw/YTpifTttYz1fLnYuX0ZfdG9nZ2xlc19kZWZhdWx0X3RyfHxbXTtuYz1mdW5jdGlvbigpe307bmMuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O18ua2M9ZnVuY3Rpb24oYSxiKXthPWEuc3BsaXQoIi4iKTtiPWJ8fF8udjtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihiPWJbYVtjXV0sYj09bnVsbClyZXR1cm4gbnVsbDtyZXR1cm4gYn07Xy5vYz1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgYTtyZXR1cm4gYiE9Im9iamVjdCI/YjphP0FycmF5LmlzQXJyYXkoYSk/ImFycmF5IjpiOiJudWxsIn07Xy5xYT1mdW5jdGlvbihhKXt2YXIgYj1fLm9jKGEpO3JldHVybiBiPT0iYXJyYXkifHxiPT0ib2JqZWN0IiYmdHlwZW9mIGEubGVuZ3RoPT0ibnVtYmVyIn07Cl8ueWE9ZnVuY3Rpb24oYSl7dmFyIGI9dHlwZW9mIGE7cmV0dXJuIGI9PSJvYmplY3QiJiZhIT1udWxsfHxiPT0iZnVuY3Rpb24ifTt6YT0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTtBYT0wO3BjPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYS5jYWxsLmFwcGx5KGEuYmluZCxhcmd1bWVudHMpfTtxYz1mdW5jdGlvbihhLGIsYyl7aWYoIWEpdGhyb3cgRXJyb3IoKTtpZihhcmd1bWVudHMubGVuZ3RoPjIpe3ZhciBkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywyKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO0FycmF5LnByb3RvdHlwZS51bnNoaWZ0LmFwcGx5KGUsZCk7cmV0dXJuIGEuYXBwbHkoYixlKX19cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkoYixhcmd1bWVudHMpfX07Cl8ueT1mdW5jdGlvbihhLGIsYyl7Xy55PUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kJiZGdW5jdGlvbi5wcm90b3R5cGUuYmluZC50b1N0cmluZygpLmluZGV4T2YoIm5hdGl2ZSBjb2RlIikhPS0xP3BjOnFjO3JldHVybiBfLnkuYXBwbHkobnVsbCxhcmd1bWVudHMpfTtfLnJjPWZ1bmN0aW9uKGEsYil7YT1hLnNwbGl0KCIuIik7Zm9yKHZhciBjPV8udixkO2EubGVuZ3RoJiYoZD1hLnNoaWZ0KCkpOylhLmxlbmd0aHx8Yj09PXZvaWQgMD9jW2RdJiZjW2RdIT09T2JqZWN0LnByb3RvdHlwZVtkXT9jPWNbZF06Yz1jW2RdPXt9OmNbZF09Yn07Cl8uRz1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt9Yy5wcm90b3R5cGU9Yi5wcm90b3R5cGU7YS5lYT1iLnByb3RvdHlwZTthLnByb3RvdHlwZT1uZXcgYzthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2EuTWs9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGg9MjtoPGFyZ3VtZW50cy5sZW5ndGg7aCsrKWdbaC0yXT1hcmd1bWVudHNbaF07cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsZyl9fTtfLkcoYWEsRXJyb3IpO2FhLnByb3RvdHlwZS5uYW1lPSJDdXN0b21FcnJvciI7dmFyIHNjO18uRyhjYSxhYSk7Y2EucHJvdG90eXBlLm5hbWU9IkFzc2VydGlvbkVycm9yIjt2YXIgZWE7dmFyIHRjPWZ1bmN0aW9uKGEsYil7dGhpcy5oPWE7dGhpcy5nPWJ8fG51bGx9O3RjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmh9O3ZhciB1Yz1uZXcgdGMoIm43M3F3ZiIsIm43M3F3ZiIpO3ZhciBuYT1TeW1ib2woInMiKTtfLnUucHJvdG90eXBlLnFhPSExO18udS5wcm90b3R5cGUucWI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5xYX07Xy51LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5xYXx8KHRoaXMucWE9ITAsdGhpcy5NKCkpfTtfLnUucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTtfLnUucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtpZih0aGlzLlcpZm9yKDt0aGlzLlcubGVuZ3RoOyl0aGlzLlcuc2hpZnQoKSgpfTt2YXIgc2Esd2M7c2E9QXJyYXkucHJvdG90eXBlLmluZGV4T2Y/ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhLGIsdm9pZCAwKX06ZnVuY3Rpb24oYSxiKXtpZih0eXBlb2YgYT09PSJzdHJpbmciKXJldHVybiB0eXBlb2YgYiE9PSJzdHJpbmcifHxiLmxlbmd0aCE9MT8tMTphLmluZGV4T2YoYiwwKTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihjIGluIGEmJmFbY109PT1iKXJldHVybiBjO3JldHVybi0xfTtfLnZjPUFycmF5LnByb3RvdHlwZS5mb3JFYWNoP2Z1bmN0aW9uKGEsYil7QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChhLGIsdm9pZCAwKX06ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5sZW5ndGgsZD10eXBlb2YgYT09PSJzdHJpbmciP2Euc3BsaXQoIiIpOmEsZT0wO2U8YztlKyspZSBpbiBkJiZiLmNhbGwodm9pZCAwLGRbZV0sZSxhKX07CndjPUFycmF5LnByb3RvdHlwZS5yZWR1Y2U/ZnVuY3Rpb24oYSxiLGMpe0FycmF5LnByb3RvdHlwZS5yZWR1Y2UuY2FsbChhLGIsYyl9OmZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jOygwLF8udmMpKGEsZnVuY3Rpb24oZSxmKXtkPWIuY2FsbCh2b2lkIDAsZCxlLGYsYSl9KX07Xy54Yz1BcnJheS5wcm90b3R5cGUuc29tZT9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc29tZS5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hLmxlbmd0aCxkPXR5cGVvZiBhPT09InN0cmluZyI/YS5zcGxpdCgiIik6YSxlPTA7ZTxjO2UrKylpZihlIGluIGQmJmIuY2FsbCh2b2lkIDAsZFtlXSxlLGEpKXJldHVybiEwO3JldHVybiExfTtfLnljPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PWI/ITA6YSYmYj9hLndpZHRoPT1iLndpZHRoJiZhLmhlaWdodD09Yi5oZWlnaHQ6ITF9O18uQ2EucHJvdG90eXBlLmFzcGVjdFJhdGlvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMud2lkdGgvdGhpcy5oZWlnaHR9O18uQ2EucHJvdG90eXBlLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLkNhLnByb3RvdHlwZS5mbG9vcj1mdW5jdGlvbigpe3RoaXMud2lkdGg9TWF0aC5mbG9vcih0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmZsb29yKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5DYS5wcm90b3R5cGUucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGgucm91bmQodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5yb3VuZCh0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9O3ZhciBFYTtFYT0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpO18uemM9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZCBpbiBhKWIuY2FsbChjLGFbZF0sZCxhKX07Xy5BYz1TdHJpbmcucHJvdG90eXBlLnRyaW0/ZnVuY3Rpb24oYSl7cmV0dXJuIGEudHJpbSgpfTpmdW5jdGlvbihhKXtyZXR1cm4vXltcc1x4YTBdKihbXHNcU10qPylbXHNceGEwXSokLy5leGVjKGEpWzFdfTt2YXIgQmM9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsSGE9QmMsSmE7Xy5MYT1mdW5jdGlvbihhKXt0aGlzLmc9YX07Xy5MYS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nKyIifTtfLkNjPUdhKGZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiBVUkw9PT0iZnVuY3Rpb24ifSk7Xy5EYz1mdW5jdGlvbihhKXt0aGlzLmc9YX07Xy5EYy5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nKyIifTtfLkVjPUdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBfLkRjKEJjP0JjLmVtcHR5SFRNTDoiIil9KTtfLlBhPWZ1bmN0aW9uKGEpe3RoaXMuZz1hfTtfLlBhLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcrIiJ9O18uR2I9ZnVuY3Rpb24oYSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYSkpfTtfLkRiPWZ1bmN0aW9uKGEpe3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoYS5yZXBsYWNlKC9cKy9nLCIgIikpfTt2YXIgRmM9ISEobWNbMF0+PjI1JjEpLEdjPSEhKG1jWzBdPj4yMCYxKSxIYz0hIShtY1swXT4+MjcmMSksSWM9ISEobWNbMF0mODE5MiksSmM9ISEobWNbMF0+PjE5JjEpLEtjPSEhKG1jWzBdPj4xNyYxKSxMYz0hIShtY1swXT4+MTgmMSk7dmFyIHRiLE5jLE9jO18uVWE9RmM/SGM6bGMoNjEwNDAxMzAxLCExKTtfLk1jPUZjP0djfHwhSWM6bGMoNzQ4NDAyMTQ3LCEwKTt0Yj1GYz9KYzpsYyg5MTk0NDQ4MjQsITEpO05jPUZjP0tjOmxjKDkyODg3NTM5OCwhMSk7T2M9RmM/TGM6bGMoNjgzNzQ5MjAxLCExKTt2YXIgUGM7UGM9Xy52Lm5hdmlnYXRvcjtfLlZhPVBjP1BjLnVzZXJBZ2VudERhdGF8fG51bGw6bnVsbDtfLlFjPWZ1bmN0aW9uKGEpe18uUWNbIiAiXShhKTtyZXR1cm4gYX07Xy5RY1siICJdPWZ1bmN0aW9uKCl7fTt2YXIgZWQ7Xy5SYz1fLlhhKCk7Xy5TYz1fLldhKCk/ITE6Xy53KCJUcmlkZW50Iil8fF8udygiTVNJRSIpO18uVGM9Xy53KCJFZGdlIik7Xy5VYz1fLncoIkdlY2tvIikmJiEoXy5UYSgpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZigid2Via2l0IikhPS0xJiYhXy53KCJFZGdlIikpJiYhKF8udygiVHJpZGVudCIpfHxfLncoIk1TSUUiKSkmJiFfLncoIkVkZ2UiKTtfLlZjPV8uVGEoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoIndlYmtpdCIpIT0tMSYmIV8udygiRWRnZSIpO18uV2M9Xy5WYyYmXy53KCJNb2JpbGUiKTtfLlljPV8uYWIoKTtfLlpjPVlhKCk/Xy5WYS5wbGF0Zm9ybT09PSJXaW5kb3dzIjpfLncoIldpbmRvd3MiKTtfLiRjPVlhKCk/Xy5WYS5wbGF0Zm9ybT09PSJBbmRyb2lkIjpfLncoIkFuZHJvaWQiKTtfLmFkPV8uWmEoKTtfLmJkPV8udygiaVBhZCIpO18uY2Q9Xy53KCJpUG9kIik7Xy5kZD1fLiRhKCk7CmE6e3ZhciBmZD0iIixnZD1mdW5jdGlvbigpe3ZhciBhPV8uVGEoKTtpZihfLlVjKXJldHVybi9ydjooW15cKTtdKykoXCl8OykvLmV4ZWMoYSk7aWYoXy5UYylyZXR1cm4vRWRnZVwvKFtcZFwuXSspLy5leGVjKGEpO2lmKF8uU2MpcmV0dXJuL1xiKD86TVNJRXxydilbOiBdKFteXCk7XSspKFwpfDspLy5leGVjKGEpO2lmKF8uVmMpcmV0dXJuL1dlYktpdFwvKFxTKykvLmV4ZWMoYSk7aWYoXy5SYylyZXR1cm4vKD86VmVyc2lvbilbIFwvXT8oXFMrKS8uZXhlYyhhKX0oKTtnZCYmKGZkPWdkP2dkWzFdOiIiKTtpZihfLlNjKXt2YXIgaGQsaWQ9Xy52LmRvY3VtZW50O2hkPWlkP2lkLmRvY3VtZW50TW9kZTp2b2lkIDA7aWYoaGQhPW51bGwmJmhkPnBhcnNlRmxvYXQoZmQpKXtlZD1TdHJpbmcoaGQpO2JyZWFrIGF9fWVkPWZkfV8uamQ9ZWQ7dmFyIGtkPSJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIiksCmxkPVtbIkEiLG5ldyBNYXAoW1siaHJlZiIse3VhOjd9XV0pXSxbIkFSRUEiLG5ldyBNYXAoW1siaHJlZiIse3VhOjd9XV0pXSxbIkxJTksiLG5ldyBNYXAoW1siaHJlZiIse3VhOjUsY29uZGl0aW9uczpuZXcgTWFwKFtbInJlbCIsbmV3IFNldCgiYWx0ZXJuYXRlIGF1dGhvciBib29rbWFyayBjYW5vbmljYWwgY2l0ZSBoZWxwIGljb24gbGljZW5zZSBuZXh0IHByZWZldGNoIGRucy1wcmVmZXRjaCBwcmVyZW5kZXIgcHJlY29ubmVjdCBwcmVsb2FkIHByZXYgc2VhcmNoIHN1YnJlc291cmNlIi5zcGxpdCgiICIpKV1dKX1dXSldLFsiU09VUkNFIixuZXcgTWFwKFtbInNyYyIse3VhOjV9XSxbInNyY3NldCIse3VhOjZ9XV0pXSxbIklNRyIsbmV3IE1hcChbWyJzcmMiLHt1YTo1fV0sWyJzcmNzZXQiLHt1YTo2fV1dKV0sWyJWSURFTyIsbmV3IE1hcChbWyJzcmMiLHt1YTo1fV1dKV0sWyJBVURJTyIsbmV3IE1hcChbWyJzcmMiLHt1YTo1fV1dKV1dLG1kPSJ0aXRsZSBhcmlhLWF0b21pYyBhcmlhLWF1dG9jb21wbGV0ZSBhcmlhLWJ1c3kgYXJpYS1jaGVja2VkIGFyaWEtY3VycmVudCBhcmlhLWRpc2FibGVkIGFyaWEtZHJvcGVmZmVjdCBhcmlhLWV4cGFuZGVkIGFyaWEtaGFzcG9wdXAgYXJpYS1oaWRkZW4gYXJpYS1pbnZhbGlkIGFyaWEtbGFiZWwgYXJpYS1sZXZlbCBhcmlhLWxpdmUgYXJpYS1tdWx0aWxpbmUgYXJpYS1tdWx0aXNlbGVjdGFibGUgYXJpYS1vcmllbnRhdGlvbiBhcmlhLXBvc2luc2V0IGFyaWEtcHJlc3NlZCBhcmlhLXJlYWRvbmx5IGFyaWEtcmVsZXZhbnQgYXJpYS1yZXF1aXJlZCBhcmlhLXNlbGVjdGVkIGFyaWEtc2V0c2l6ZSBhcmlhLXNvcnQgYXJpYS12YWx1ZW1heCBhcmlhLXZhbHVlbWluIGFyaWEtdmFsdWVub3cgYXJpYS12YWx1ZXRleHQgYWx0IGFsaWduIGF1dG9jYXBpdGFsaXplIGF1dG9jb21wbGV0ZSBhdXRvY29ycmVjdCBhdXRvZm9jdXMgYXV0b3BsYXkgYmdjb2xvciBib3JkZXIgY2VsbHBhZGRpbmcgY2VsbHNwYWNpbmcgY2hlY2tlZCBjaXRlIGNvbG9yIGNvbHMgY29sc3BhbiBjb250cm9scyBjb250cm9sc2xpc3QgY29vcmRzIGNyb3Nzb3JpZ2luIGRhdGV0aW1lIGRpc2FibGVkIGRvd25sb2FkIGRyYWdnYWJsZSBlbmN0eXBlIGZhY2UgZm9ybWVuY3R5cGUgZnJhbWVib3JkZXIgaGVpZ2h0IGhyZWZsYW5nIGhpZGRlbiBpbmVydCBpc21hcCBsYWJlbCBsYW5nIGxvb3AgbWF4IG1heGxlbmd0aCBtZWRpYSBtaW5sZW5ndGggbWluIG11bHRpcGxlIG11dGVkIG5vbmNlIG9wZW4gcGxheXNpbmxpbmUgcGxhY2Vob2xkZXIgcHJlbG9hZCByZWwgcmVxdWlyZWQgcmV2ZXJzZWQgcm9sZSByb3dzIHJvd3NwYW4gc2VsZWN0ZWQgc2hhcGUgc2l6ZSBzaXplcyBzbG90IHNwYW4gc3BlbGxjaGVjayBzdGFydCBzdGVwIHN1bW1hcnkgdHJhbnNsYXRlIHR5cGUgdXNlbWFwIHZhbGlnbiB2YWx1ZSB3aWR0aCB3cmFwIGl0ZW1zY29wZSBpdGVtdHlwZSBpdGVtaWQgaXRlbXByb3AgaXRlbXJlZiIuc3BsaXQoIiAiKSwKbmQ9W1siZGlyIix7dWE6Myxjb25kaXRpb25zOkdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXAoW1siZGlyIixuZXcgU2V0KFsiYXV0byIsImx0ciIsInJ0bCJdKV1dKX0pfV0sWyJhc3luYyIse3VhOjMsY29uZGl0aW9uczpHYShmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwKFtbImFzeW5jIixuZXcgU2V0KFsiYXN5bmMiXSldXSl9KX1dLFsibG9hZGluZyIse3VhOjMsY29uZGl0aW9uczpHYShmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwKFtbImxvYWRpbmciLG5ldyBTZXQoWyJlYWdlciIsImxhenkiXSldXSl9KX1dLFsicG9zdGVyIix7dWE6NX1dLFsidGFyZ2V0Iix7dWE6Myxjb25kaXRpb25zOkdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXAoW1sidGFyZ2V0IixuZXcgU2V0KFsiX3NlbGYiLCJfYmxhbmsiXSldXSl9KX1dXSxvZD1uZXcgZnVuY3Rpb24oYSxiLGMpe3ZhciBkPW5ldyBTZXQoWyJkYXRhLSIsImFyaWEtIl0pLGU9bmV3IE1hcChsZCk7dGhpcy5qPWE7dGhpcy5nPQplO3RoaXMubD1iO3RoaXMubz1jO3RoaXMuaD1kfShuZXcgU2V0KEdhKGZ1bmN0aW9uKCl7cmV0dXJuIGtkLmNvbmNhdCgiU1RZTEUgVElUTEUgSU5QVVQgVEVYVEFSRUEgQlVUVE9OIExBQkVMIi5zcGxpdCgiICIpKX0pKSxuZXcgU2V0KEdhKGZ1bmN0aW9uKCl7cmV0dXJuIG1kLmNvbmNhdChbImNsYXNzIiwiaWQiLCJ0YWJpbmRleCIsImNvbnRlbnRlZGl0YWJsZSIsIm5hbWUiXSl9KSksbmV3IE1hcChHYShmdW5jdGlvbigpe3JldHVybiBuZC5jb25jYXQoW1sic3R5bGUiLHt1YToxfV1dKX0pKSk7dmFyIHBkPWZ1bmN0aW9uKCl7dGhpcy5nPW9kfTtwZC5wcm90b3R5cGUuY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oYSl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGEpfTtfLnFkPUdhKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBwZH0pO3ZhciB2ZCx1ZCx4ZDtfLmxiPWZ1bmN0aW9uKGEpe3JldHVybiBhP25ldyBfLnJkKF8uc2QoYSkpOnNjfHwoc2M9bmV3IF8ucmQpfTtfLnRkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHR5cGVvZiBiPT09InN0cmluZyI/YS5nZXRFbGVtZW50QnlJZChiKTpifTt2ZD1mdW5jdGlvbihhLGIpe18uemMoYixmdW5jdGlvbihjLGQpe2Q9PSJzdHlsZSI/YS5zdHlsZS5jc3NUZXh0PWM6ZD09ImNsYXNzIj9hLmNsYXNzTmFtZT1jOmQ9PSJmb3IiP2EuaHRtbEZvcj1jOnVkLmhhc093blByb3BlcnR5KGQpP2Euc2V0QXR0cmlidXRlKHVkW2RdLGMpOmQubGFzdEluZGV4T2YoImFyaWEtIiwwKT09MHx8ZC5sYXN0SW5kZXhPZigiZGF0YS0iLDApPT0wP2Euc2V0QXR0cmlidXRlKGQsYyk6YVtkXT1jfSl9Owp1ZD17Y2VsbHBhZGRpbmc6ImNlbGxQYWRkaW5nIixjZWxsc3BhY2luZzoiY2VsbFNwYWNpbmciLGNvbHNwYW46ImNvbFNwYW4iLGZyYW1lYm9yZGVyOiJmcmFtZUJvcmRlciIsaGVpZ2h0OiJoZWlnaHQiLG1heGxlbmd0aDoibWF4TGVuZ3RoIixub25jZToibm9uY2UiLHJvbGU6InJvbGUiLHJvd3NwYW46InJvd1NwYW4iLHR5cGU6InR5cGUiLHVzZW1hcDoidXNlTWFwIix2YWxpZ246InZBbGlnbiIsd2lkdGg6IndpZHRoIn07Xy5pYj1mdW5jdGlvbihhKXthPWEuZG9jdW1lbnQ7YT1hLmNvbXBhdE1vZGU9PSJDU1MxQ29tcGF0Ij9hLmRvY3VtZW50RWxlbWVudDphLmJvZHk7cmV0dXJuIG5ldyBfLkNhKGEuY2xpZW50V2lkdGgsYS5jbGllbnRIZWlnaHQpfTtfLm1iPWZ1bmN0aW9uKGEpe3JldHVybiBhP2EuZGVmYXVsdFZpZXc6d2luZG93fTsKXy55ZD1mdW5jdGlvbihhLGIpe3ZhciBjPWJbMV0sZD1fLndkKGEsU3RyaW5nKGJbMF0pKTtjJiYodHlwZW9mIGM9PT0ic3RyaW5nIj9kLmNsYXNzTmFtZT1jOkFycmF5LmlzQXJyYXkoYyk/ZC5jbGFzc05hbWU9Yy5qb2luKCIgIik6dmQoZCxjKSk7Yi5sZW5ndGg+MiYmeGQoYSxkLGIsMik7cmV0dXJuIGR9Owp4ZD1mdW5jdGlvbihhLGIsYyxkKXtmdW5jdGlvbiBlKGgpe2gmJmIuYXBwZW5kQ2hpbGQodHlwZW9mIGg9PT0ic3RyaW5nIj9hLmNyZWF0ZVRleHROb2RlKGgpOmgpfWZvcig7ZDxjLmxlbmd0aDtkKyspe3ZhciBmPWNbZF07aWYoIV8ucWEoZil8fF8ueWEoZikmJmYubm9kZVR5cGU+MCllKGYpO2Vsc2V7YTp7aWYoZiYmdHlwZW9mIGYubGVuZ3RoPT0ibnVtYmVyIil7aWYoXy55YShmKSl7dmFyIGc9dHlwZW9mIGYuaXRlbT09ImZ1bmN0aW9uInx8dHlwZW9mIGYuaXRlbT09InN0cmluZyI7YnJlYWsgYX1pZih0eXBlb2YgZj09PSJmdW5jdGlvbiIpe2c9dHlwZW9mIGYuaXRlbT09ImZ1bmN0aW9uIjticmVhayBhfX1nPSExfV8udmMoZz9fLndhKGYpOmYsZSl9fX07Xy53ZD1mdW5jdGlvbihhLGIpe2I9U3RyaW5nKGIpO2EuY29udGVudFR5cGU9PT0iYXBwbGljYXRpb24veGh0bWwreG1sIiYmKGI9Yi50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gYS5jcmVhdGVFbGVtZW50KGIpfTsKXy56ZD1mdW5jdGlvbihhKXtmb3IodmFyIGI7Yj1hLmZpcnN0Q2hpbGQ7KWEucmVtb3ZlQ2hpbGQoYil9O18uQWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEucGFyZW50Tm9kZT9hLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYSk6bnVsbH07Xy5CZD1mdW5jdGlvbihhLGIpe2lmKCFhfHwhYilyZXR1cm4hMTtpZihhLmNvbnRhaW5zJiZiLm5vZGVUeXBlPT0xKXJldHVybiBhPT1ifHxhLmNvbnRhaW5zKGIpO2lmKHR5cGVvZiBhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIT0idW5kZWZpbmVkIilyZXR1cm4gYT09Ynx8ISEoYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihiKSYxNik7Zm9yKDtiJiZhIT1iOyliPWIucGFyZW50Tm9kZTtyZXR1cm4gYj09YX07Xy5zZD1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlVHlwZT09OT9hOmEub3duZXJEb2N1bWVudHx8YS5kb2N1bWVudH07Cl8uQ2Q9ZnVuY3Rpb24oYSxiKXtpZigidGV4dENvbnRlbnQiaW4gYSlhLnRleHRDb250ZW50PWI7ZWxzZSBpZihhLm5vZGVUeXBlPT0zKWEuZGF0YT1TdHJpbmcoYik7ZWxzZSBpZihhLmZpcnN0Q2hpbGQmJmEuZmlyc3RDaGlsZC5ub2RlVHlwZT09Myl7Zm9yKDthLmxhc3RDaGlsZCE9YS5maXJzdENoaWxkOylhLnJlbW92ZUNoaWxkKGEubGFzdENoaWxkKTthLmZpcnN0Q2hpbGQuZGF0YT1TdHJpbmcoYil9ZWxzZSBfLnpkKGEpLGEuYXBwZW5kQ2hpbGQoXy5zZChhKS5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoYikpKX07Xy5yZD1mdW5jdGlvbihhKXt0aGlzLmc9YXx8Xy52LmRvY3VtZW50fHxkb2N1bWVudH07Xy5tPV8ucmQucHJvdG90eXBlO18ubS5IPWZ1bmN0aW9uKGEpe3JldHVybiBfLnRkKHRoaXMuZyxhKX07Xy5tLmRqPV8ucmQucHJvdG90eXBlLkg7Xy5tLmdldEVsZW1lbnRzQnlUYWdOYW1lPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGJ8fHRoaXMuZykuZ2V0RWxlbWVudHNCeVRhZ05hbWUoU3RyaW5nKGEpKX07Cl8ubS5TPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy55ZCh0aGlzLmcsYXJndW1lbnRzKX07Xy5tLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oYSl7cmV0dXJuIF8ud2QodGhpcy5nLGEpfTtfLm0uY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZy5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoYSkpfTtfLm0uYXBwZW5kQ2hpbGQ9ZnVuY3Rpb24oYSxiKXthLmFwcGVuZENoaWxkKGIpfTtfLm0uYXBwZW5kPWZ1bmN0aW9uKGEsYil7eGQoXy5zZChhKSxhLGFyZ3VtZW50cywxKX07Xy5tLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihhKXtpZihhLm5vZGVUeXBlIT0xKXJldHVybiExO3N3aXRjaChhLnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4hMX1yZXR1cm4hMH07Cl8ubS5pZT1fLnpkO18ubS5yZW1vdmVOb2RlPV8uQWQ7Xy5tLmNvbnRhaW5zPV8uQmQ7Xy5tLlNiPV8uQ2Q7YmIucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWR9O3ZhciBjYj1mdW5jdGlvbihhLGIpe3RoaXMudHlwZT1hIGluc3RhbmNlb2YgYmI/U3RyaW5nKGEpOmE7dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PWI7dGhpcy5kZWZhdWx0UHJldmVudGVkPXRoaXMuaD0hMX07Y2IucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe3RoaXMuaD0hMH07Y2IucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwfTt2YXIgRGQ9ZnVuY3Rpb24oKXtpZighXy52LmFkZEV2ZW50TGlzdGVuZXJ8fCFPYmplY3QuZGVmaW5lUHJvcGVydHkpcmV0dXJuITE7dmFyIGE9ITEsYj1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXthPSEwfX0pO3RyeXt2YXIgYz1mdW5jdGlvbigpe307Xy52LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLGMsYik7Xy52LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3QiLGMsYil9Y2F0Y2goZCl7fXJldHVybiBhfSgpO18uRyhfLmRiLGNiKTsKXy5kYi5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMudHlwZT1hLnR5cGUsZD1hLmNoYW5nZWRUb3VjaGVzJiZhLmNoYW5nZWRUb3VjaGVzLmxlbmd0aD9hLmNoYW5nZWRUb3VjaGVzWzBdOm51bGw7dGhpcy50YXJnZXQ9YS50YXJnZXR8fGEuc3JjRWxlbWVudDt0aGlzLmN1cnJlbnRUYXJnZXQ9YjtiPWEucmVsYXRlZFRhcmdldDtifHwoYz09Im1vdXNlb3ZlciI/Yj1hLmZyb21FbGVtZW50OmM9PSJtb3VzZW91dCImJihiPWEudG9FbGVtZW50KSk7dGhpcy5yZWxhdGVkVGFyZ2V0PWI7ZD8odGhpcy5jbGllbnRYPWQuY2xpZW50WCE9PXZvaWQgMD9kLmNsaWVudFg6ZC5wYWdlWCx0aGlzLmNsaWVudFk9ZC5jbGllbnRZIT09dm9pZCAwP2QuY2xpZW50WTpkLnBhZ2VZLHRoaXMuc2NyZWVuWD1kLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPWQuc2NyZWVuWXx8MCk6KHRoaXMub2Zmc2V0WD1fLlZjfHxhLm9mZnNldFghPT12b2lkIDA/YS5vZmZzZXRYOmEubGF5ZXJYLAp0aGlzLm9mZnNldFk9Xy5WY3x8YS5vZmZzZXRZIT09dm9pZCAwP2Eub2Zmc2V0WTphLmxheWVyWSx0aGlzLmNsaWVudFg9YS5jbGllbnRYIT09dm9pZCAwP2EuY2xpZW50WDphLnBhZ2VYLHRoaXMuY2xpZW50WT1hLmNsaWVudFkhPT12b2lkIDA/YS5jbGllbnRZOmEucGFnZVksdGhpcy5zY3JlZW5YPWEuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9YS5zY3JlZW5ZfHwwKTt0aGlzLmJ1dHRvbj1hLmJ1dHRvbjt0aGlzLmtleUNvZGU9YS5rZXlDb2RlfHwwO3RoaXMua2V5PWEua2V5fHwiIjt0aGlzLmNoYXJDb2RlPWEuY2hhckNvZGV8fChjPT0ia2V5cHJlc3MiP2Eua2V5Q29kZTowKTt0aGlzLmN0cmxLZXk9YS5jdHJsS2V5O3RoaXMuYWx0S2V5PWEuYWx0S2V5O3RoaXMuc2hpZnRLZXk9YS5zaGlmdEtleTt0aGlzLm1ldGFLZXk9YS5tZXRhS2V5O3RoaXMucG9pbnRlcklkPWEucG9pbnRlcklkfHwwO3RoaXMucG9pbnRlclR5cGU9YS5wb2ludGVyVHlwZTt0aGlzLnN0YXRlPWEuc3RhdGU7CnRoaXMudGltZVN0YW1wPWEudGltZVN0YW1wO3RoaXMuZz1hO2EuZGVmYXVsdFByZXZlbnRlZCYmXy5kYi5lYS5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpfTtfLmRiLnByb3RvdHlwZS5zdG9wUHJvcGFnYXRpb249ZnVuY3Rpb24oKXtfLmRiLmVhLnN0b3BQcm9wYWdhdGlvbi5jYWxsKHRoaXMpO3RoaXMuZy5zdG9wUHJvcGFnYXRpb24/dGhpcy5nLnN0b3BQcm9wYWdhdGlvbigpOnRoaXMuZy5jYW5jZWxCdWJibGU9ITB9O18uZGIucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7Xy5kYi5lYS5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpO3ZhciBhPXRoaXMuZzthLnByZXZlbnREZWZhdWx0P2EucHJldmVudERlZmF1bHQoKTphLnJldHVyblZhbHVlPSExfTt2YXIgRWQ9ImNsb3N1cmVfbGlzdGVuYWJsZV8iKyhNYXRoLnJhbmRvbSgpKjFFNnwwKSxGZD1mdW5jdGlvbihhKXtyZXR1cm4hKCFhfHwhYVtFZF0pfTt2YXIgZWI9MDt2YXIgR2Q9ZnVuY3Rpb24oYSl7YS5vYz0hMDthLmxpc3RlbmVyPW51bGw7YS5wcm94eT1udWxsO2Euc3JjPW51bGw7YS5WYz1udWxsfTtnYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YS50b1N0cmluZygpO2E9dGhpcy5nW2ZdO2F8fChhPXRoaXMuZ1tmXT1bXSx0aGlzLmgrKyk7dmFyIGc9SGQoYSxiLGQsZSk7Zz4tMT8oYj1hW2ddLGN8fChiLkhjPSExKSk6KGI9bmV3IGZiKGIsdGhpcy5zcmMsZiwhIWQsZSksYi5IYz1jLGEucHVzaChiKSk7cmV0dXJuIGJ9O2diLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSxiLGMsZCl7YT1hLnRvU3RyaW5nKCk7aWYoIShhIGluIHRoaXMuZykpcmV0dXJuITE7dmFyIGU9dGhpcy5nW2FdO2I9SGQoZSxiLGMsZCk7cmV0dXJuIGI+LTE/KEdkKGVbYl0pLEFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChlLGIsMSksZS5sZW5ndGg9PTAmJihkZWxldGUgdGhpcy5nW2FdLHRoaXMuaC0tKSwhMCk6ITF9Owp2YXIgSWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnR5cGU7YyBpbiBhLmcmJl8udmEoYS5nW2NdLGIpJiYoR2QoYiksYS5nW2NdLmxlbmd0aD09MCYmKGRlbGV0ZSBhLmdbY10sYS5oLS0pKX07Z2IucHJvdG90eXBlLmpjPWZ1bmN0aW9uKGEsYixjLGQpe2E9dGhpcy5nW2EudG9TdHJpbmcoKV07dmFyIGU9LTE7YSYmKGU9SGQoYSxiLGMsZCkpO3JldHVybiBlPi0xP2FbZV06bnVsbH07Z2IucHJvdG90eXBlLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKGEsYil7dmFyIGM9YSE9PXZvaWQgMCxkPWM/YS50b1N0cmluZygpOiIiLGU9YiE9PXZvaWQgMDtyZXR1cm4gRGEodGhpcy5nLGZ1bmN0aW9uKGYpe2Zvcih2YXIgZz0wO2c8Zi5sZW5ndGg7KytnKWlmKCEoYyYmZltnXS50eXBlIT1kfHxlJiZmW2ddLmNhcHR1cmUhPWIpKXJldHVybiEwO3JldHVybiExfSl9Owp2YXIgSGQ9ZnVuY3Rpb24oYSxiLGMsZCl7Zm9yKHZhciBlPTA7ZTxhLmxlbmd0aDsrK2Upe3ZhciBmPWFbZV07aWYoIWYub2MmJmYubGlzdGVuZXI9PWImJmYuY2FwdHVyZT09ISFjJiZmLlZjPT1kKXJldHVybiBlfXJldHVybi0xfTt2YXIgSmQsS2QsTWQsUGQsUmQsU2QsVGQsUWQsV2QsT2Q7SmQ9ImNsb3N1cmVfbG1fIisoTWF0aC5yYW5kb20oKSoxRTZ8MCk7S2Q9e307TWQ9MDtfLng9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihkJiZkLm9uY2UpcmV0dXJuIF8uTmQoYSxiLGMsZCxlKTtpZihBcnJheS5pc0FycmF5KGIpKXtmb3IodmFyIGY9MDtmPGIubGVuZ3RoO2YrKylfLngoYSxiW2ZdLGMsZCxlKTtyZXR1cm4gbnVsbH1jPU9kKGMpO3JldHVybiBGZChhKT9hLk4oYixjLF8ueWEoZCk/ISFkLmNhcHR1cmU6ISFkLGUpOlBkKGEsYixjLCExLGQsZSl9OwpQZD1mdW5jdGlvbihhLGIsYyxkLGUsZil7aWYoIWIpdGhyb3cgRXJyb3IoInYiKTt2YXIgZz1fLnlhKGUpPyEhZS5jYXB0dXJlOiEhZSxoPVFkKGEpO2h8fChhW0pkXT1oPW5ldyBnYihhKSk7Yz1oLmFkZChiLGMsZCxnLGYpO2lmKGMucHJveHkpcmV0dXJuIGM7ZD1SZCgpO2MucHJveHk9ZDtkLnNyYz1hO2QubGlzdGVuZXI9YztpZihhLmFkZEV2ZW50TGlzdGVuZXIpRGR8fChlPWcpLGU9PT12b2lkIDAmJihlPSExKSxhLmFkZEV2ZW50TGlzdGVuZXIoYi50b1N0cmluZygpLGQsZSk7ZWxzZSBpZihhLmF0dGFjaEV2ZW50KWEuYXR0YWNoRXZlbnQoU2QoYi50b1N0cmluZygpKSxkKTtlbHNlIGlmKGEuYWRkTGlzdGVuZXImJmEucmVtb3ZlTGlzdGVuZXIpYS5hZGRMaXN0ZW5lcihkKTtlbHNlIHRocm93IEVycm9yKCJ3Iik7TWQrKztyZXR1cm4gY307UmQ9ZnVuY3Rpb24oKXt2YXIgYT1UZCxiPWZ1bmN0aW9uKGMpe3JldHVybiBhLmNhbGwoYi5zcmMsYi5saXN0ZW5lcixjKX07cmV0dXJuIGJ9OwpfLk5kPWZ1bmN0aW9uKGEsYixjLGQsZSl7aWYoQXJyYXkuaXNBcnJheShiKSl7Zm9yKHZhciBmPTA7ZjxiLmxlbmd0aDtmKyspXy5OZChhLGJbZl0sYyxkLGUpO3JldHVybiBudWxsfWM9T2QoYyk7cmV0dXJuIEZkKGEpP2EuYWUoYixjLF8ueWEoZCk/ISFkLmNhcHR1cmU6ISFkLGUpOlBkKGEsYixjLCEwLGQsZSl9O18uVWQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGIpKWZvcih2YXIgZj0wO2Y8Yi5sZW5ndGg7ZisrKV8uVWQoYSxiW2ZdLGMsZCxlKTtlbHNlIGQ9Xy55YShkKT8hIWQuY2FwdHVyZTohIWQsYz1PZChjKSxGZChhKT9hLnljKGIsYyxkLGUpOmEmJihhPVFkKGEpKSYmKGI9YS5qYyhiLGMsZCxlKSkmJl8uVmQoYil9OwpfLlZkPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09Im51bWJlciImJmEmJiFhLm9jKXt2YXIgYj1hLnNyYztpZihGZChiKSlJZChiLlFhLGEpO2Vsc2V7dmFyIGM9YS50eXBlLGQ9YS5wcm94eTtiLnJlbW92ZUV2ZW50TGlzdGVuZXI/Yi5yZW1vdmVFdmVudExpc3RlbmVyKGMsZCxhLmNhcHR1cmUpOmIuZGV0YWNoRXZlbnQ/Yi5kZXRhY2hFdmVudChTZChjKSxkKTpiLmFkZExpc3RlbmVyJiZiLnJlbW92ZUxpc3RlbmVyJiZiLnJlbW92ZUxpc3RlbmVyKGQpO01kLS07KGM9UWQoYikpPyhJZChjLGEpLGMuaD09MCYmKGMuc3JjPW51bGwsYltKZF09bnVsbCkpOkdkKGEpfX19O1NkPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluIEtkP0tkW2FdOktkW2FdPSJvbiIrYX07VGQ9ZnVuY3Rpb24oYSxiKXtpZihhLm9jKWE9ITA7ZWxzZXtiPW5ldyBfLmRiKGIsdGhpcyk7dmFyIGM9YS5saXN0ZW5lcixkPWEuVmN8fGEuc3JjO2EuSGMmJl8uVmQoYSk7YT1jLmNhbGwoZCxiKX1yZXR1cm4gYX07ClFkPWZ1bmN0aW9uKGEpe2E9YVtKZF07cmV0dXJuIGEgaW5zdGFuY2VvZiBnYj9hOm51bGx9O1dkPSJfX2Nsb3N1cmVfZXZlbnRzX2ZuXyIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCk7T2Q9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGE9PT0iZnVuY3Rpb24iKXJldHVybiBhO2FbV2RdfHwoYVtXZF09ZnVuY3Rpb24oYil7cmV0dXJuIGEuaGFuZGxlRXZlbnQoYil9KTtyZXR1cm4gYVtXZF19O18uRyhfLmhiLF8udSk7Xy5oYi5wcm90b3R5cGVbRWRdPSEwO18ubT1fLmhiLnByb3RvdHlwZTtfLm0ubmQ9ZnVuY3Rpb24oYSl7dGhpcy5mZD1hfTtfLm0uYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhLGIsYyxkKXtfLngodGhpcyxhLGIsYyxkKX07Xy5tLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5VZCh0aGlzLGEsYixjLGQpfTsKXy5tLmRpc3BhdGNoRXZlbnQ9ZnVuY3Rpb24oYSl7dmFyIGIsYz10aGlzLmZkO2lmKGMpZm9yKGI9W107YztjPWMuZmQpYi5wdXNoKGMpO2M9dGhpcy5XZzt2YXIgZD1hLnR5cGV8fGE7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilhPW5ldyBjYihhLGMpO2Vsc2UgaWYoYSBpbnN0YW5jZW9mIGNiKWEudGFyZ2V0PWEudGFyZ2V0fHxjO2Vsc2V7dmFyIGU9YTthPW5ldyBjYihkLGMpO0ZhKGEsZSl9ZT0hMDt2YXIgZjtpZihiKWZvcihmPWIubGVuZ3RoLTE7IWEuaCYmZj49MDtmLS0pe3ZhciBnPWEuY3VycmVudFRhcmdldD1iW2ZdO2U9WGQoZyxkLCEwLGEpJiZlfWEuaHx8KGc9YS5jdXJyZW50VGFyZ2V0PWMsZT1YZChnLGQsITAsYSkmJmUsYS5ofHwoZT1YZChnLGQsITEsYSkmJmUpKTtpZihiKWZvcihmPTA7IWEuaCYmZjxiLmxlbmd0aDtmKyspZz1hLmN1cnJlbnRUYXJnZXQ9YltmXSxlPVhkKGcsZCwhMSxhKSYmZTtyZXR1cm4gZX07Cl8ubS5NPWZ1bmN0aW9uKCl7Xy5oYi5lYS5NLmNhbGwodGhpcyk7aWYodGhpcy5RYSl7dmFyIGE9dGhpcy5RYSxiPTAsYztmb3IoYyBpbiBhLmcpe2Zvcih2YXIgZD1hLmdbY10sZT0wO2U8ZC5sZW5ndGg7ZSsrKSsrYixHZChkW2VdKTtkZWxldGUgYS5nW2NdO2EuaC0tfX10aGlzLmZkPW51bGx9O18ubS5OPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLlFhLmFkZChTdHJpbmcoYSksYiwhMSxjLGQpfTtfLm0uYWU9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMuUWEuYWRkKFN0cmluZyhhKSxiLCEwLGMsZCl9O18ubS55Yz1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gdGhpcy5RYS5yZW1vdmUoU3RyaW5nKGEpLGIsYyxkKX07CnZhciBYZD1mdW5jdGlvbihhLGIsYyxkKXtiPWEuUWEuZ1tTdHJpbmcoYildO2lmKCFiKXJldHVybiEwO2I9Yi5jb25jYXQoKTtmb3IodmFyIGU9ITAsZj0wO2Y8Yi5sZW5ndGg7KytmKXt2YXIgZz1iW2ZdO2lmKGcmJiFnLm9jJiZnLmNhcHR1cmU9PWMpe3ZhciBoPWcubGlzdGVuZXIsaz1nLlZjfHxnLnNyYztnLkhjJiZJZChhLlFhLGcpO2U9aC5jYWxsKGssZCkhPT0hMSYmZX19cmV0dXJuIGUmJiFkLmRlZmF1bHRQcmV2ZW50ZWR9O18uaGIucHJvdG90eXBlLmpjPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLlFhLmpjKFN0cmluZyhhKSxiLGMsZCl9O18uaGIucHJvdG90eXBlLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuUWEuaGFzTGlzdGVuZXIoYSE9PXZvaWQgMD9TdHJpbmcoYSk6dm9pZCAwLGIpfTtfLkcoamIsXy5oYik7amIucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtqYi5lYS5NLmNhbGwodGhpcyk7dGhpcy5oJiYoXy5WZCh0aGlzLmgpLHRoaXMuaD1udWxsKTt0aGlzLmo9dGhpcy5nPW51bGx9O2piLnByb3RvdHlwZS5sPWZ1bmN0aW9uKCl7dmFyIGE9Xy5pYih0aGlzLmd8fHdpbmRvdyk7Xy55YyhhLHRoaXMuail8fCh0aGlzLmo9YSx0aGlzLmRpc3BhdGNoRXZlbnQoInJlc2l6ZSIpKX07Xy5HKGtiLF8uaGIpO2tiLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5nJiYodHlwZW9mIHRoaXMuZy5hZGRFdmVudExpc3RlbmVyPT09ImZ1bmN0aW9uIj8odGhpcy5nLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsdGhpcy5qKSx0aGlzLmw9ZnVuY3Rpb24oKXthLmcucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixhLmopfSk6KHRoaXMuZy5hZGRMaXN0ZW5lcih0aGlzLmopLHRoaXMubD1mdW5jdGlvbigpe2EuZy5yZW1vdmVMaXN0ZW5lcihhLmopfSkpfTtrYi5wcm90b3R5cGUuQT1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5kZXZpY2VQaXhlbFJhdGlvPj0xLjU/MjoxO3RoaXMubyE9YSYmKHRoaXMubz1hLHRoaXMuZGlzcGF0Y2hFdmVudCgiYSIpKX07a2IucHJvdG90eXBlLk09ZnVuY3Rpb24oKXt0aGlzLmwmJnRoaXMubCgpO2tiLmVhLk0uY2FsbCh0aGlzKX07Xy5HKG5iLF8udSk7bmIucHJvdG90eXBlLk09ZnVuY3Rpb24oKXt0aGlzLmg9dGhpcy5sPW51bGw7dGhpcy5nJiYodGhpcy5nLmRpc3Bvc2UoKSx0aGlzLmc9bnVsbCk7Xy5wYSh0aGlzLmopO3RoaXMuaj1udWxsfTtfLm9hKHVjLG5iKTt2YXIgb2I9bmV3IFVpbnQ4QXJyYXkoMTIzKSxZZD0hMTt2YXIgWmQ9W107bmM9bmN8fHt9O3ZhciAkZD1mdW5jdGlvbigpe18udS5jYWxsKHRoaXMpfTtfLkcoJGQsXy51KTskZC5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbigpe307c2IucHJvdG90eXBlLmV4ZWN1dGU9ZnVuY3Rpb24oYSl7dGhpcy5nJiYodGhpcy5nLmNhbGwodGhpcy5ofHxudWxsLGEpLHRoaXMuZz10aGlzLmg9bnVsbCl9O3NiLnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMuaD10aGlzLmc9bnVsbH07bmMuR2U9c2I7Xy5HKHViLF8udSk7dWIucHJvdG90eXBlLkM9JGQ7dWIucHJvdG90eXBlLmc9bnVsbDt1Yi5wcm90b3R5cGUuUmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5BfTt2YXIgYWU9ZnVuY3Rpb24oYSxiLGMpe2Euanx8KGEuaj1bXSk7YS5qLnB1c2gobmV3IG5jLkdlKGIsYykpfSxiZT1mdW5jdGlvbihhLGIpe2EuaHx8KGEuaD1bXSk7YS5oLnB1c2gobmV3IG5jLkdlKGIsdm9pZCAwKSl9O3ViLnByb3RvdHlwZS5tZD1mdW5jdGlvbigpe3RoaXMuZz1uZXcgJGR9O3ViLnByb3RvdHlwZS5vbkxvYWQ9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IHRoaXMuQztiLmluaXRpYWxpemUoYSgpKTt0aGlzLmc9YjtpZih0aGlzLm8mJihiPWNlKHRoaXMubyxhKCkpKSlyZXR1cm4gYjtpZih0aGlzLmomJihhPWNlKHRoaXMuaixhKCkpKSlyZXR1cm4gYTt0aGlzLmgmJih0aGlzLmgubGVuZ3RoPTApO3JldHVybiBudWxsfTsKdWIucHJvdG90eXBlLmZlPWZ1bmN0aW9uKGEpe3RoaXMuaCYmKGE9Y2UodGhpcy5oLGEpKSYmXy5yYihFcnJvcigieWAiK2EpKTt0aGlzLm8mJih0aGlzLm8ubGVuZ3RoPTApO3RoaXMuaiYmKHRoaXMuai5sZW5ndGg9MCl9O3ZhciBjZT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspdHJ5e2FbZF0uZXhlY3V0ZShiKX1jYXRjaChlKXtfLnJiKGUpLGMucHVzaChlKX1hLmxlbmd0aD0wO3JldHVybiBjLmxlbmd0aD9jOm51bGx9O3ViLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7dWIuZWEuTS5jYWxsKHRoaXMpO18ucGEodGhpcy5nKX07bmMuRmU9dWI7dmFyIGRlPXtFUlJPUjoiZXJyb3IiLElETEU6ImlkbGUiLGxnOiJhY3RpdmUiLElnOiJ1c2VySWRsZSIsSGc6InVzZXJBY3RpdmUifTtfLm09dmIucHJvdG90eXBlO18ubS5YZj1mdW5jdGlvbigpe307Xy5tLnFlPWZ1bmN0aW9uKCl7fTtfLm0uamU9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiQSIpO307Xy5tLmtmPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucWF9O18ubS5zZT1mdW5jdGlvbihhKXt0aGlzLnFhPWF9O18ubS5pc0FjdGl2ZT1mdW5jdGlvbigpe3JldHVybiExfTtfLm0uRGY9ZnVuY3Rpb24oKXtyZXR1cm4hMX07dmFyIGVlPXR5cGVvZiBBc3luY0NvbnRleHQhPT0idW5kZWZpbmVkIiYmdHlwZW9mIEFzeW5jQ29udGV4dC5TbmFwc2hvdD09PSJmdW5jdGlvbiI/ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJkFzeW5jQ29udGV4dC5TbmFwc2hvdC53cmFwKGEpfTpmdW5jdGlvbihhKXtyZXR1cm4gYX07dmFyIGZlPWZ1bmN0aW9uKGEsYil7dGhpcy5sPWE7dGhpcy5qPWI7dGhpcy5oPTA7dGhpcy5nPW51bGx9O2ZlLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtpZih0aGlzLmg+MCl7dGhpcy5oLS07dmFyIGE9dGhpcy5nO3RoaXMuZz1hLm5leHQ7YS5uZXh0PW51bGx9ZWxzZSBhPXRoaXMubCgpO3JldHVybiBhfTt2YXIgeGI9ZnVuY3Rpb24oYSxiKXthLmooYik7YS5oPDEwMCYmKGEuaCsrLGIubmV4dD1hLmcsYS5nPWIpfTt2YXIgZ2U9ZnVuY3Rpb24oKXt0aGlzLmg9dGhpcy5nPW51bGx9O2dlLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz15Yi5nZXQoKTtjLnNldChhLGIpO3RoaXMuaD90aGlzLmgubmV4dD1jOnRoaXMuZz1jO3RoaXMuaD1jfTtnZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKCl7dmFyIGE9bnVsbDt0aGlzLmcmJihhPXRoaXMuZyx0aGlzLmc9dGhpcy5nLm5leHQsdGhpcy5nfHwodGhpcy5oPW51bGwpLGEubmV4dD1udWxsKTtyZXR1cm4gYX07dmFyIHliPW5ldyBmZShmdW5jdGlvbigpe3JldHVybiBuZXcgaGV9LGZ1bmN0aW9uKGEpe3JldHVybiBhLnJlc2V0KCl9KSxoZT1mdW5jdGlvbigpe3RoaXMubmV4dD10aGlzLnNjb3BlPXRoaXMuZz1udWxsfTtoZS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5nPWE7dGhpcy5zY29wZT1iO3RoaXMubmV4dD1udWxsfTsKaGUucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuc2NvcGU9dGhpcy5nPW51bGx9O3ZhciBpZSx6Yj0hMSx3Yj1uZXcgZ2Usa2U9ZnVuY3Rpb24oYSxiKXtpZXx8amUoKTt6Ynx8KGllKCksemI9ITApO3diLmFkZChhLGIpfSxqZT1mdW5jdGlvbigpe3ZhciBhPVByb21pc2UucmVzb2x2ZSh2b2lkIDApO2llPWZ1bmN0aW9uKCl7YS50aGVuKEFiKX19O18ubGU9ZnVuY3Rpb24oKXt9O3ZhciBtZT1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4hMTt0cnl7cmV0dXJuISFhLiRnb29nX1RoZW5hYmxlfWNhdGNoKGIpe3JldHVybiExfX07dmFyIHBlLEFlLHllLHdlO18ub2U9ZnVuY3Rpb24oYSl7dGhpcy5nPTA7dGhpcy5CPXZvaWQgMDt0aGlzLmw9dGhpcy5oPXRoaXMuaj1udWxsO3RoaXMubz10aGlzLkE9ITE7aWYoYSE9Xy5sZSl0cnl7dmFyIGI9dGhpczthLmNhbGwodm9pZCAwLGZ1bmN0aW9uKGMpe18ubmUoYiwyLGMpfSxmdW5jdGlvbihjKXtfLm5lKGIsMyxjKX0pfWNhdGNoKGMpe18ubmUodGhpcywzLGMpfX07cGU9ZnVuY3Rpb24oKXt0aGlzLm5leHQ9dGhpcy5qPXRoaXMuaD10aGlzLmw9dGhpcy5nPW51bGw7dGhpcy5vPSExfTtwZS5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLmo9dGhpcy5oPXRoaXMubD10aGlzLmc9bnVsbDt0aGlzLm89ITF9O3ZhciBxZT1uZXcgZmUoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHBlfSxmdW5jdGlvbihhKXthLnJlc2V0KCl9KSxyZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cWUuZ2V0KCk7ZC5sPWE7ZC5oPWI7ZC5qPWM7cmV0dXJuIGR9OwpfLm9lLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gc2UodGhpcyxlZSh0eXBlb2YgYT09PSJmdW5jdGlvbiI/YTpudWxsKSxlZSh0eXBlb2YgYj09PSJmdW5jdGlvbiI/YjpudWxsKSxjKX07Xy5vZS5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7Xy5vZS5wcm90b3R5cGUuQz1mdW5jdGlvbihhLGIpe3JldHVybiBzZSh0aGlzLG51bGwsZWUoYSksYil9O18ub2UucHJvdG90eXBlLmNhdGNoPV8ub2UucHJvdG90eXBlLkM7Xy5vZS5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMuZz09MCl7dmFyIGI9bmV3IHVlKGEpO2tlKGZ1bmN0aW9uKCl7dmUodGhpcyxiKX0sdGhpcyl9fTsKdmFyIHZlPWZ1bmN0aW9uKGEsYil7aWYoYS5nPT0wKWlmKGEuail7dmFyIGM9YS5qO2lmKGMuaCl7Zm9yKHZhciBkPTAsZT1udWxsLGY9bnVsbCxnPWMuaDtnJiYoZy5vfHwoZCsrLGcuZz09YSYmKGU9ZyksIShlJiZkPjEpKSk7Zz1nLm5leHQpZXx8KGY9Zyk7ZSYmKGMuZz09MCYmZD09MT92ZShjLGIpOihmPyhkPWYsZC5uZXh0PT1jLmwmJihjLmw9ZCksZC5uZXh0PWQubmV4dC5uZXh0KTp3ZShjKSx4ZShjLGUsMyxiKSkpfWEuaj1udWxsfWVsc2UgXy5uZShhLDMsYil9LHplPWZ1bmN0aW9uKGEsYil7YS5ofHxhLmchPTImJmEuZyE9M3x8eWUoYSk7YS5sP2EubC5uZXh0PWI6YS5oPWI7YS5sPWJ9LHNlPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXJlKG51bGwsbnVsbCxudWxsKTtlLmc9bmV3IF8ub2UoZnVuY3Rpb24oZixnKXtlLmw9Yj9mdW5jdGlvbihoKXt0cnl7dmFyIGs9Yi5jYWxsKGQsaCk7ZihrKX1jYXRjaChsKXtnKGwpfX06ZjtlLmg9Yz9mdW5jdGlvbihoKXt0cnl7dmFyIGs9CmMuY2FsbChkLGgpO2s9PT12b2lkIDAmJmggaW5zdGFuY2VvZiB1ZT9nKGgpOmYoayl9Y2F0Y2gobCl7ZyhsKX19Omd9KTtlLmcuaj1hO3plKGEsZSk7cmV0dXJuIGUuZ307Xy5vZS5wcm90b3R5cGUuRj1mdW5jdGlvbihhKXt0aGlzLmc9MDtfLm5lKHRoaXMsMixhKX07Xy5vZS5wcm90b3R5cGUuRz1mdW5jdGlvbihhKXt0aGlzLmc9MDtfLm5lKHRoaXMsMyxhKX07Cl8ubmU9ZnVuY3Rpb24oYSxiLGMpe2lmKGEuZz09MCl7YT09PWMmJihiPTMsYz1uZXcgVHlwZUVycm9yKCJCIikpO2EuZz0xO2E6e3ZhciBkPWMsZT1hLkYsZj1hLkc7aWYoZCBpbnN0YW5jZW9mIF8ub2Upe3plKGQscmUoZXx8Xy5sZSxmfHxudWxsLGEpKTt2YXIgZz0hMH1lbHNlIGlmKG1lKGQpKWQudGhlbihlLGYsYSksZz0hMDtlbHNle2lmKF8ueWEoZCkpdHJ5e3ZhciBoPWQudGhlbjtpZih0eXBlb2YgaD09PSJmdW5jdGlvbiIpe0FlKGQsaCxlLGYsYSk7Zz0hMDticmVhayBhfX1jYXRjaChrKXtmLmNhbGwoYSxrKTtnPSEwO2JyZWFrIGF9Zz0hMX19Z3x8KGEuQj1jLGEuZz1iLGEuaj1udWxsLHllKGEpLGIhPTN8fGMgaW5zdGFuY2VvZiB1ZXx8QmUoYSxjKSl9fTtBZT1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSExLGc9ZnVuY3Rpb24oayl7Znx8KGY9ITAsYy5jYWxsKGUsaykpfSxoPWZ1bmN0aW9uKGspe2Z8fChmPSEwLGQuY2FsbChlLGspKX07dHJ5e2IuY2FsbChhLGcsaCl9Y2F0Y2goayl7aChrKX19Owp5ZT1mdW5jdGlvbihhKXthLkF8fChhLkE9ITAsa2UoYS5ELGEpKX07d2U9ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbDthLmgmJihiPWEuaCxhLmg9Yi5uZXh0LGIubmV4dD1udWxsKTthLmh8fChhLmw9bnVsbCk7cmV0dXJuIGJ9O18ub2UucHJvdG90eXBlLkQ9ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT13ZSh0aGlzKTspeGUodGhpcyxhLHRoaXMuZyx0aGlzLkIpO3RoaXMuQT0hMX07CnZhciB4ZT1mdW5jdGlvbihhLGIsYyxkKXtpZihjPT0zJiZiLmgmJiFiLm8pZm9yKDthJiZhLm87YT1hLmopYS5vPSExO2lmKGIuZyliLmcuaj1udWxsLENlKGIsYyxkKTtlbHNlIHRyeXtiLm8/Yi5sLmNhbGwoYi5qKTpDZShiLGMsZCl9Y2F0Y2goZSl7RmUuY2FsbChudWxsLGUpfXhiKHFlLGIpfSxDZT1mdW5jdGlvbihhLGIsYyl7Yj09Mj9hLmwuY2FsbChhLmosYyk6YS5oJiZhLmguY2FsbChhLmosYyl9LEJlPWZ1bmN0aW9uKGEsYil7YS5vPSEwO2tlKGZ1bmN0aW9uKCl7YS5vJiZGZS5jYWxsKG51bGwsYil9KX0sRmU9Xy5yYix1ZT1mdW5jdGlvbihhKXthYS5jYWxsKHRoaXMsYSl9O18uRyh1ZSxhYSk7dWUucHJvdG90eXBlLm5hbWU9ImNhbmNlbCI7QmIucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbihhKXtpZih0aGlzLmgpdGhpcy5sIGluc3RhbmNlb2YgQmImJnRoaXMubC5jYW5jZWwoKTtlbHNle2lmKHRoaXMuail7dmFyIGI9dGhpcy5qO2RlbGV0ZSB0aGlzLmo7YT9iLmNhbmNlbChhKTooYi5BLS0sYi5BPD0wJiZiLmNhbmNlbCgpKX10aGlzLkc9ITA7dGhpcy5ofHx0aGlzLkYobmV3IEdlKHRoaXMpKX19O0JiLnByb3RvdHlwZS5JPWZ1bmN0aW9uKGEsYil7dGhpcy5EPSExO0hlKHRoaXMsYSxiKX07dmFyIEhlPWZ1bmN0aW9uKGEsYixjKXthLmg9ITA7YS5sPWM7YS5vPSFiO0llKGEpfSxLZT1mdW5jdGlvbihhKXtpZihhLmgpe2lmKCFhLkcpdGhyb3cgbmV3IEplKGEpO2EuRz0hMX19O0JiLnByb3RvdHlwZS5nPWZ1bmN0aW9uKGEpe0tlKHRoaXMpO0hlKHRoaXMsITAsYSl9O0JiLnByb3RvdHlwZS5GPWZ1bmN0aW9uKGEpe0tlKHRoaXMpO0hlKHRoaXMsITEsYSl9Owp2YXIgTWU9ZnVuY3Rpb24oYSxiLGMpe0xlKGEsYixudWxsLGMpfSxOZT1mdW5jdGlvbihhLGIsYyl7TGUoYSxudWxsLGIsYyl9LExlPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuaDtlfHwoYj09PWM/Yj1jPWVlKGIpOihiPWVlKGIpLGM9ZWUoYykpKTthLkIucHVzaChbYixjLGRdKTtlJiZJZShhKX07QmIucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj1uZXcgXy5vZShmdW5jdGlvbihnLGgpe2U9ZztkPWh9KTtMZSh0aGlzLGUsZnVuY3Rpb24oZyl7ZyBpbnN0YW5jZW9mIEdlP2YuY2FuY2VsKCk6ZChnKTtyZXR1cm4gT2V9LHRoaXMpO3JldHVybiBmLnRoZW4oYSxiLGMpfTtCYi5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7dmFyIFBlPWZ1bmN0aW9uKGEsYil7YiBpbnN0YW5jZW9mIEJiP01lKGEsKDAsXy55KShiLkssYikpOk1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gYn0pfTsKQmIucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IEJiO0xlKHRoaXMsYi5nLGIuRixiKTthJiYoYi5qPXRoaXMsdGhpcy5BKyspO3JldHVybiBifTsKdmFyIFFlPWZ1bmN0aW9uKGEpe3JldHVybiBfLnhjKGEuQixmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGJbMV09PT0iZnVuY3Rpb24ifSl9LE9lPXt9LEllPWZ1bmN0aW9uKGEpe2lmKGEuQyYmYS5oJiZRZShhKSl7dmFyIGI9YS5DLGM9UmVbYl07YyYmKF8udi5jbGVhclRpbWVvdXQoYy5nKSxkZWxldGUgUmVbYl0pO2EuQz0wfWEuaiYmKGEuai5BLS0sZGVsZXRlIGEuaik7Yj1hLmw7Zm9yKHZhciBkPWM9ITE7YS5CLmxlbmd0aCYmIWEuRDspe3ZhciBlPWEuQi5zaGlmdCgpLGY9ZVswXSxnPWVbMV07ZT1lWzJdO2lmKGY9YS5vP2c6Zil0cnl7dmFyIGg9Zi5jYWxsKGV8fG51bGwsYik7aD09PU9lJiYoaD12b2lkIDApO2ghPT12b2lkIDAmJihhLm89YS5vJiYoaD09Ynx8aCBpbnN0YW5jZW9mIEVycm9yKSxhLmw9Yj1oKTtpZihtZShiKXx8dHlwZW9mIF8udi5Qcm9taXNlPT09ImZ1bmN0aW9uIiYmYiBpbnN0YW5jZW9mIF8udi5Qcm9taXNlKWQ9ITAsYS5EPSEwfWNhdGNoKGspe2I9CmssYS5vPSEwLFFlKGEpfHwoYz0hMCl9fWEubD1iO2QmJihoPSgwLF8ueSkoYS5JLGEsITApLGQ9KDAsXy55KShhLkksYSwhMSksYiBpbnN0YW5jZW9mIEJiPyhMZShiLGgsZCksYi5XPSEwKTpiLnRoZW4oaCxkKSk7YyYmKGI9bmV3IFNlKGIpLFJlW2IuZ109YixhLkM9Yi5nKX0sSmU9ZnVuY3Rpb24oKXthYS5jYWxsKHRoaXMpfTtfLkcoSmUsYWEpO0plLnByb3RvdHlwZS5tZXNzYWdlPSJEZWZlcnJlZCBoYXMgYWxyZWFkeSBmaXJlZCI7SmUucHJvdG90eXBlLm5hbWU9IkFscmVhZHlDYWxsZWRFcnJvciI7dmFyIEdlPWZ1bmN0aW9uKCl7YWEuY2FsbCh0aGlzKX07Xy5HKEdlLGFhKTtHZS5wcm90b3R5cGUubWVzc2FnZT0iRGVmZXJyZWQgd2FzIGNhbmNlbGVkIjtHZS5wcm90b3R5cGUubmFtZT0iQ2FuY2VsZWRFcnJvciI7dmFyIFNlPWZ1bmN0aW9uKGEpe3RoaXMuZz1fLnYuc2V0VGltZW91dCgoMCxfLnkpKHRoaXMudGhyb3dFcnJvcix0aGlzKSwwKTt0aGlzLmg9YX07ClNlLnByb3RvdHlwZS50aHJvd0Vycm9yPWZ1bmN0aW9uKCl7ZGVsZXRlIFJlW3RoaXMuZ107dGhyb3cgdGhpcy5oO307dmFyIFJlPXt9O3ZhciBUZT1mdW5jdGlvbihhLGIsYyxkLGUpe2M9RXJyb3IuY2FsbCh0aGlzKTt0aGlzLm1lc3NhZ2U9Yy5tZXNzYWdlOyJzdGFjayJpbiBjJiYodGhpcy5zdGFjaz1jLnN0YWNrKTt0aGlzLm5hbWU9Ik1vZHVsZUxvYWRGYWlsdXJlIjt0aGlzLnR5cGU9YTt0aGlzLnN0YXR1cz1iO3RoaXMudXJsPWQ7dGhpcy5jYXVzZT1lO3RoaXMubWVzc2FnZT10aGlzLnRvU3RyaW5nKCl9O18uQihUZSxFcnJvcik7VGUucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIFVlKHRoaXMpKyIgKCIrKHRoaXMuc3RhdHVzIT12b2lkIDA/dGhpcy5zdGF0dXM6Ij8iKSsiKSJ9Owp2YXIgVWU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEudHlwZSl7Y2FzZSBUZS5nLkplOnJldHVybiJVbmF1dGhvcml6ZWQiO2Nhc2UgVGUuZy5CZTpyZXR1cm4iQ29uc2VjdXRpdmUgbG9hZCBmYWlsdXJlcyI7Y2FzZSBUZS5nLlRJTUVPVVQ6cmV0dXJuIlRpbWVkIG91dCI7Y2FzZSBUZS5nLkhlOnJldHVybiJPdXQgb2YgZGF0ZSBtb2R1bGUgaWQiO2Nhc2UgVGUuZy50ZDpyZXR1cm4iSW5pdCBlcnJvciI7ZGVmYXVsdDpyZXR1cm4iVW5rbm93biBmYWlsdXJlIHR5cGUgIithLnR5cGV9fTtuYy5GYT1UZTtuYy5GYS5nPXtKZTowLEJlOjEsVElNRU9VVDoyLEhlOjMsdGQ6NH07dmFyIFZlPWZ1bmN0aW9uKCl7dmIuY2FsbCh0aGlzKTt0aGlzLkk9bnVsbDt0aGlzLmc9bmV3IE1hcDt0aGlzLm89bmV3IFNldDt0aGlzLkE9W107dGhpcy5DPW5ldyBTZXQ7dGhpcy5qPVtdO3RoaXMuQj1uZXcgU2V0O3RoaXMuaD1OYz9uZXcgTWFwOnt9O3RoaXMuSz1uZXcgTWFwO3RoaXMubD10aGlzLkQ9bmV3IG5jLkZlKFtdLCIiKTt0aGlzLkw9bnVsbDt0aGlzLkY9bmV3IEJiO3RoaXMuUj10aGlzLlQ9dGhpcy5QPXRoaXMuVz0hMX07Xy5HKFZlLHZiKTt2YXIgV2U9ZnVuY3Rpb24oYSxiKXthYS5jYWxsKHRoaXMsIkVycm9yIGxvYWRpbmcgIithKyI6ICIrYil9O18uRyhXZSxhYSk7VmUucHJvdG90eXBlLlhmPWZ1bmN0aW9uKGEpe3RoaXMuVz1hfTsKVmUucHJvdG90eXBlLnFlPWZ1bmN0aW9uKGEsYil7aWYoISh0aGlzIGluc3RhbmNlb2YgVmUpKXRoaXMucWUoYSxiKTtlbHNlIGlmKHR5cGVvZiBhPT09InN0cmluZyIpe2lmKGEuc3RhcnRzV2l0aCgiZCQiKSl7YT1hLnN1YnN0cmluZygyKTtmb3IodmFyIGM9W10sZD0wLGU9YS5pbmRleE9mKCIvIiksZj0wLGc9ITEsaD0wOzspe3ZhciBrPWc/YS5zdWJzdHJpbmcoZik6YS5zdWJzdHJpbmcoZixlKTtpZihrLmxlbmd0aD09PTApZCsrLGY9InN5IitkLnRvU3RyaW5nKDM2KSxrPVtdO2Vsc2V7dmFyIGw9ay5pbmRleE9mKCI6Iik7aWYobDwwKWY9ayxrPVtdO2Vsc2UgaWYobD09PWsubGVuZ3RoLTEpZj1rLnN1YnN0cmluZygwLGwpLGs9QXJyYXkoY1toLTFdKTtlbHNle2Y9ay5zdWJzdHJpbmcoMCxsKTtrPWsuc3Vic3RyaW5nKGwrMSkuc3BsaXQoIiwiKTtsPWg7Zm9yKHZhciBuPTA7bjxrLmxlbmd0aDtuKyspbC09a1tuXS5sZW5ndGg9PT0wPzE6TnVtYmVyKGtbbl0pLGtbbl09Y1tsXX1sPQowO2lmKGYubGVuZ3RoPT09MClsPTE7ZWxzZSBpZihmLmNoYXJBdCgwKT09PSIrInx8Zi5jaGFyQXQoMCk9PT0iLSIpbD1OdW1iZXIoZik7bCE9PTAmJihkKz1sLGY9InN5IitkLnRvU3RyaW5nKDM2KSl9Yy5wdXNoKGYpO1hlKHRoaXMsZixrKTtpZihnKWJyZWFrO2Y9ZSsxO2U9YS5pbmRleE9mKCIvIixmKTtlPT09LTEmJihnPSEwKTtoKyt9dGhpcy5JPWN9ZWxzZSBpZihhLnN0YXJ0c1dpdGgoInAkIikpWWUodGhpcyxhKTtlbHNle2E9YS5zcGxpdCgiLyIpO2M9W107Zm9yKGQ9MDtkPGEubGVuZ3RoO2QrKyl7aD1hW2RdLnNwbGl0KCI6Iik7ZT1oWzBdO2c9W107aWYoaFsxXSlmb3IoZz1oWzFdLnNwbGl0KCIsIiksaD0wO2g8Zy5sZW5ndGg7aCsrKWdbaF09Y1twYXJzZUludChnW2hdLDM2KV07Yy5wdXNoKGUpO1hlKHRoaXMsZSxnKX10aGlzLkk9Y31pZihiJiZiLmxlbmd0aCl7YT1fLkMoYik7Zm9yKGM9YS5uZXh0KCk7IWMuZG9uZTtjPWEubmV4dCgpKXRoaXMuby5hZGQoYy52YWx1ZSk7CnRoaXMuTD1iW2IubGVuZ3RoLTFdfWVsc2UgdGhpcy5GLmh8fHRoaXMuRi5nKCk7T2JqZWN0LmZyZWV6ZSh0aGlzLkkpO1plKHRoaXMpfX07CnZhciBZZT1mdW5jdGlvbihhLGIpe2lmKCFZZCl7Zm9yKHZhciBjPTA7Yzw2NDtjKyspb2JbIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5LV8iLmNoYXJDb2RlQXQoYyldPWM7WWQ9ITB9dmFyIGQ9e0hkOmIsQmI6Mn07cWIoZCk7dmFyIGU9cWIoZCksZj1xYihkKSsxO2I9QXJyYXkoZSk7Yz1BcnJheShlKTt2YXIgZz1BcnJheShlKTtmPUFycmF5KGYpO3ZhciBoPTAsaz0wLGw9ZC5IZCxuPWQuQmI7ZC5CYj1kLkhkLmluZGV4T2YoInwiLGQuQmIpKzE7Zm9yKHZhciBxPTA7cTxlO3ErKyl7dmFyIHA9cWIoZCkscj1wJjIsdD1wJjE7cD4+Pj0yO3Q/KGgrPXA+Pj4xXi0ocCYxKSxwPSJzeSIraC50b1N0cmluZygzNikpOih0PW4sbis9cCxwPWwuc3Vic3RyaW5nKHQsbikpO2JbcV09cDtyJiYoZltrKytdPXApfWZba109IiI7ZC5CYisrO2s9ZSYtMjtoPWUmMTtmb3IobD0wO2w8aztsKz0yKW49cGIoZCksZ1tsXT1uJjcsZ1tsKwoxXT1uPj4+MyY3O2gmJihoPXBiKGQpLGdba109aCY3KTtkLkJiKys7Zm9yKGs9MDtrPGU7aysrKWdba109PT03JiYoZ1trXT1xYihkKSk7ZC5CYisrO2ZvcihoPWs9MDtoPGU7aCsrKXtsPWdbaF07bj1sPT09MD9aZDpBcnJheShsKTtjW2hdPW47cT1rO2ZvcihyPTA7cjxsO3IrKylxLT1xYihkKSxuW3JdPWZbcV07ZltrXT09PWJbaF0mJmsrK31mb3IoZD0wO2Q8Yi5sZW5ndGg7ZCsrKVhlKGEsYltkXSxjW2RdKTthLkk9Yn07VmUucHJvdG90eXBlLmplPWZ1bmN0aW9uKGEsYil7aWYodGhpcy5oIGluc3RhbmNlb2YgTWFwKXt2YXIgYz10aGlzLmguZ2V0KGEpO2MmJihjLmRlbGV0ZShiKSxjLnNpemU9PT0wJiZ0aGlzLmguZGVsZXRlKGEpKX1lbHNlIGlmKHRoaXMuaFthXSl7ZGVsZXRlIHRoaXMuaFthXVtiXTtmb3IoYyBpbiB0aGlzLmhbYV0pcmV0dXJuO2RlbGV0ZSB0aGlzLmhbYV19fTtWZS5wcm90b3R5cGUuc2U9ZnVuY3Rpb24oYSl7VmUuZWEuc2UuY2FsbCh0aGlzLGEpO1plKHRoaXMpfTsKVmUucHJvdG90eXBlLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuby5zaXplPjB9O1ZlLnByb3RvdHlwZS5EZj1mdW5jdGlvbigpe3JldHVybiB0aGlzLkIuc2l6ZT4wfTsKdmFyIGFmPWZ1bmN0aW9uKGEpe3ZhciBiPWEuUCxjPWEuaXNBY3RpdmUoKTtjIT1iJiYoJGUoYSxjP2RlLmxnOmRlLklETEUpLGEuUD1jKTtiPWEuRGYoKTtiIT1hLlQmJigkZShhLGI/ZGUuSGc6ZGUuSWcpLGEuVD1iKX0sWGU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuZy5nZXQoYik7ZD9kLmw9YzphLmcuc2V0KGIsbmV3IG5jLkZlKGMsYikpfSxkZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W10sZT17fTtiPV8uQyhuZXcgU2V0KGIpKTtmb3IodmFyIGY9Yi5uZXh0KCk7IWYuZG9uZTtmPWIubmV4dCgpKXtmPWYudmFsdWU7dmFyIGc9YS5nLmdldChmKTtpZighZyl0aHJvdyBFcnJvcigiQ2AiK2YpO3ZhciBoPW5ldyBCYjtlW2ZdPWg7Zy5nP2guZyhhLnFhKTooYmYoYSxmLGcsISFjLGgpLGNmKGEsZil8fGQucHVzaChmKSl9ZC5sZW5ndGg+MCYmKGEuby5zaXplPT09MD9hLkcoZCk6KGEuai5wdXNoKGQpLGFmKGEpKSk7cmV0dXJuIGV9LGJmPWZ1bmN0aW9uKGEsYixjLGQsZSl7YWUoYywKZS5nLGUpO2JlKGMsZnVuY3Rpb24oZil7ZS5GKG5ldyBXZShiLGYpKX0pO2NmKGEsYik/ZCYmKGEuQi5hZGQoYiksYWYoYSkpOmQmJmEuQi5hZGQoYil9OwpWZS5wcm90b3R5cGUuRz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcztiPWI9PT12b2lkIDA/MDpiO3ZhciBlPWVmKHRoaXMsYSk7dGhpcy5vPW5ldyBTZXQoZSk7dGhpcy5BPXRoaXMuVz9hOl8ud2EoZSk7YWYodGhpcyk7aWYoZS5sZW5ndGghPT0wKXthPV8uQyhlKTtmb3IodmFyIGY9YS5uZXh0KCk7IWYuZG9uZTtmPWEubmV4dCgpKXRoaXMuQy5hZGQoZi52YWx1ZSk7YT10aGlzLk87aWYoIWEpdGhyb3cgRXJyb3IoIkQiKTtpZigodGhpcy5oIGluc3RhbmNlb2YgTWFwP3RoaXMuaC5zaXplPjA6T2JqZWN0LmtleXModGhpcy5oKS5sZW5ndGg+MCkmJiFhLkkpdGhyb3cgRXJyb3IoIkUiKTtmZihhLF8ud2EoZSksdGhpcy5nLHtqaDp0aGlzLmgsZmU6ZnVuY3Rpb24oZyxoLGspe3JldHVybiBnZihkLGQuQSxlLGchPW51bGw/Zzp2b2lkIDAsaCxiLCEhayl9LEZpOigwLF8ueSkodGhpcy5sYSx0aGlzKSxtaDohIWN9KX19Owp2YXIgaGY9ZnVuY3Rpb24oYSl7dGhpcy5oPWE7dGhpcy5qPW5ldyBTZXQ7dGhpcy5nPVtdfSxqZj1mdW5jdGlvbihhLGIpe2lmKCFhLmouaGFzKGIpJiYoYS5qLmFkZChiKSwhYS5oLkMuaGFzKGIpKSl7dmFyIGM9YS5oLmcuZ2V0KGIpO2lmKGMmJiFjLmcpe2M9Yy5sO2Zvcih2YXIgZD0wO2Q8Yy5sZW5ndGg7ZCsrKWpmKGEsY1tkXSk7YS5nLnB1c2goYil9fX0sZWY9ZnVuY3Rpb24oYSxiKXtiPWIuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBhLmcuZ2V0KGUpLmc/KF8udi5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIEVycm9yKCJGYCIrZSl9LDApLCExKTohMH0pO2lmKE9jKXt2YXIgYz1uZXcgaGYoYSk7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspamYoYyxiW2RdKTtjPWMuZ31lbHNle2M9W107Zm9yKGQ9MDtkPGIubGVuZ3RoO2QrKyljPWMuY29uY2F0KGtmKGEsYltkXSkpO0JhKGMpfXJldHVybiFhLlcmJmMubGVuZ3RoPjE/KGI9Yy5zaGlmdCgpLGEuaj1jLm1hcChmdW5jdGlvbihlKXtyZXR1cm5bZV19KS5jb25jYXQoYS5qKSwKW2JdKTpjfSxrZj1mdW5jdGlvbihhLGIpe2lmKE9jKXJldHVybiBhPW5ldyBoZihhKSxqZihhLGIpLGEuZzt2YXIgYz1bXTthLkMuaGFzKGIpfHxjLnB1c2goYik7Yj1bYl07Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspZm9yKHZhciBlPWEuZy5nZXQoYltkXSkubCxmPWUubGVuZ3RoLTE7Zj49MDtmLS0pe3ZhciBnPWVbZl07YS5nLmdldChnKS5nfHxhLkMuaGFzKGcpfHwoYy5wdXNoKGcpLGIucHVzaChnKSl9Yy5yZXZlcnNlKCk7QmEoYyk7cmV0dXJuIGN9LFplPWZ1bmN0aW9uKGEpe2lmKGEubD09YS5EKXthLmw9bnVsbDt2YXIgYj1hLkQub25Mb2FkKCgwLF8ueSkoYS5rZixhKSk7YiYmYi5sZW5ndGgmJmxmKGEsbmV3IG5jLkZhKG5jLkZhLmcudGQsdm9pZCAwLHZvaWQgMCx2b2lkIDAsYlswXSkpO2FmKGEpfX07ClZlLnByb3RvdHlwZS5tZD1mdW5jdGlvbigpe2lmKHRoaXMubCl7dmFyIGE9dGhpcy5sLlJhKCksYj1bXTtpZih0aGlzLmggaW5zdGFuY2VvZiBNYXApe3ZhciBjPXRoaXMuaC5nZXQoYSk7aWYoYyl7Yz1fLkMoQXJyYXkuZnJvbShjKSk7Zm9yKHZhciBkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7ZD1kLnZhbHVlO3ZhciBlPXRoaXMuZy5nZXQoZCk7ZSYmIWUuZyYmKHRoaXMuamUoYSxkKSxiLnB1c2goZCkpfWRmKHRoaXMsYil9fWVsc2UgaWYodGhpcy5oW2FdKXtjPV8uQyhPYmplY3Qua2V5cyh0aGlzLmhbYV0pKTtmb3IoZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZD1kLnZhbHVlLChlPXRoaXMuZy5nZXQoZCkpJiYhZS5nJiYodGhpcy5qZShhLGQpLGIucHVzaChkKSk7ZGYodGhpcyxiKX10aGlzLnFiKCl8fCgoYj10aGlzLmcuZ2V0KGEpLm9uTG9hZCgoMCxfLnkpKHRoaXMua2YsdGhpcykpKSYmYi5sZW5ndGgmJmxmKHRoaXMsbmV3IG5jLkZhKG5jLkZhLmcudGQsCnZvaWQgMCx2b2lkIDAsdm9pZCAwLGJbMF0pKSx0aGlzLkIuZGVsZXRlKGEpLHRoaXMuby5kZWxldGUoYSksdGhpcy5vLnNpemUhPT0wfHxtZih0aGlzKSx0aGlzLkwmJmE9PXRoaXMuTCYmKHRoaXMuRi5ofHx0aGlzLkYuZygpKSxhZih0aGlzKSx0aGlzLmw9bnVsbCl9fTt2YXIgY2Y9ZnVuY3Rpb24oYSxiKXtpZihhLm8uaGFzKGIpKXJldHVybiEwO2Zvcih2YXIgYz0wO2M8YS5qLmxlbmd0aDtjKyspaWYoXy50YShhLmpbY10sYikpcmV0dXJuITA7cmV0dXJuITF9O1ZlLnByb3RvdHlwZS5sb2FkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGRmKHRoaXMsW2FdLGIpW2FdfTsKdmFyIGthPWZ1bmN0aW9uKGEpe3ZhciBiPV8uZGE7Yi5sJiZiLmwuUmEoKT09PSJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIiYmKGIubWQoKSxiLmcuZGVsZXRlKCJzeW50aGV0aWNfbW9kdWxlX292ZXJoZWFkIikpO3ZhciBjPWIuZy5nZXQoYSk7YyYmbmYoYixjLmx8fFtdLGZ1bmN0aW9uKGQpe2QubWQoKTtiLm8uZGVsZXRlKGQuUmEoKSl9LGZ1bmN0aW9uKGQpe3JldHVybiFkLmd9LG5ldyBTZXQpO2IubD1iLmcuZ2V0KGEpO2IubCYmKGIubC5CPSEwKX0sZ2Y9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7dmFyIGg9KGc9PT12b2lkIDA/MDpnKT8wOihmPT09dm9pZCAwPzA6ZikrMTtmPV8ud2EoYyk7YS5BPWI7Yz1fLkMoYyk7Zm9yKGc9Yy5uZXh0KCk7IWcuZG9uZTtnPWMubmV4dCgpKWEuQy5kZWxldGUoZy52YWx1ZSk7aWYoZD09NDAxKWxmKGEsbmV3IG5jLkZhKG5jLkZhLmcuSmUsZCkpLGEuai5sZW5ndGg9MDtlbHNlIGlmKGQ9PTQxMClvZihhLG5ldyBuYy5GYShuYy5GYS5nLkhlLApkKSksbWYoYSk7ZWxzZSBpZihoPj0zKW9mKGEsbmV3IG5jLkZhKG5jLkZhLmcuQmUsZCxmLGUpKSxtZihhKTtlbHNle3ZhciBrPWQ9PTgwMDF8fCExOyhkPU1hdGgucG93KGgsMikqNUUzKT9fLnYuc2V0VGltZW91dChmdW5jdGlvbigpe2EuRyhiLGgsayl9LGQpOmEuRyhiLGgsayl9fTtWZS5wcm90b3R5cGUubGE9ZnVuY3Rpb24oKXtvZih0aGlzLG5ldyBuYy5GYShuYy5GYS5nLlRJTUVPVVQpKTttZih0aGlzKX07CnZhciBvZj1mdW5jdGlvbihhLGIpe2EuQS5sZW5ndGg+MT9hLmo9YS5BLm1hcChmdW5jdGlvbihjKXtyZXR1cm5bY119KS5jb25jYXQoYS5qKTpsZihhLGIpfSxsZj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuQTthLm8uY2xlYXIoKTtmb3IodmFyIGQ9W10sZT0wO2U8YS5qLmxlbmd0aDtlKyspe3ZhciBmPWEualtlXS5maWx0ZXIoZnVuY3Rpb24oayl7dmFyIGw9a2YodGhpcyxrKTtyZXR1cm4gXy54YyhjLGZ1bmN0aW9uKG4pe3JldHVybiBfLnRhKGwsbil9KX0sYSk7eGEoZCxmKX1mb3IoZT0wO2U8Yy5sZW5ndGg7ZSsrKV8udWEoZCxjW2VdKTtmb3IoZT0wO2U8ZC5sZW5ndGg7ZSsrKXtmb3IoZj0wO2Y8YS5qLmxlbmd0aDtmKyspXy52YShhLmpbZl0sZFtlXSk7YS5CLmRlbGV0ZShkW2VdKX1pZihlPWEuSy5nZXQoZGUuRVJST1IpKWZvcihmPTA7ZjxlLmxlbmd0aDtmKyspZm9yKHZhciBnPWVbZl0saD0wO2g8ZC5sZW5ndGg7aCsrKWcoZGUuRVJST1IsZFtoXSxiKTtmb3IoZD0wO2Q8Yy5sZW5ndGg7ZCsrKShlPQphLmcuZ2V0KGNbZF0pKSYmZS5mZShiKTthLkEubGVuZ3RoPTA7YWYoYSl9LG1mPWZ1bmN0aW9uKGEpe2Zvcig7YS5qLmxlbmd0aDspe3ZhciBiPWEuai5zaGlmdCgpLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4hdGhpcy5nLmdldChjKS5nfSxhKTtpZihiLmxlbmd0aD4wKXthLkcoYik7cmV0dXJufX1hZihhKX0sJGU9ZnVuY3Rpb24oYSxiKXthPWEuSy5nZXQoYik7Zm9yKHZhciBjPTA7YSYmYzxhLmxlbmd0aDtjKyspYVtjXShiKX0sbmY9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPV8uQyhiKTtmb3IodmFyIGY9Yi5uZXh0KCk7IWYuZG9uZTtmPWIubmV4dCgpKXtmPWYudmFsdWU7dmFyIGc9YS5nLmdldChmKTshZS5oYXMoZikmJmQoZykmJihlLmFkZChmKSxuZihhLGcubHx8W10sYyxkLGUpLGMoZykpfX07ClZlLnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7cmEoQXJyYXkuZnJvbSh0aGlzLmcudmFsdWVzKCkpLHRoaXMuRCk7dGhpcy5nLmNsZWFyKCk7dGhpcy5vLmNsZWFyKCk7dGhpcy5BPVtdO3RoaXMuQi5jbGVhcigpO3RoaXMuaj1bXTt0aGlzLksuY2xlYXIoKTt0aGlzLlI9ITB9O1ZlLnByb3RvdHlwZS5xYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJ9O18uaGE9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFZlfTt2YXIgcGY9W10scWY9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihkKXtkJiZ3YyhkLGZ1bmN0aW9uKGUsZil7ZVtmLmlkXT0hMDtyZXR1cm4gZX0sYy5KaSl9dmFyIGM9e0ppOnt9LGluZGV4OnBmLmxlbmd0aCxWbDphfTtiKGEubGQpO2IoYS5qbSk7cGYucHVzaChjKTthLmxkJiZfLnZjKGEubGQsZnVuY3Rpb24oZCl7dmFyIGU9ZC5pZDtlIGluc3RhbmNlb2YgdGMmJmQubW9kdWxlJiYoZS5nPWQubW9kdWxlKX0pfTtxZih7bGQ6W3tpZDp1YyxMYjpuYixtdWx0aXBsZTohMH1dfSk7Xy5yZj1SZWdFeHAoIl4oPzooW146Lz8jLl0rKTopPyg/Oi8vKD86KFteXFxcXC8/I10qKUApPyhbXlxcXFwvPyNdKj8pKD86OihbMC05XSspKT8oPz1bXFxcXC8/I118JCkpPyhbXj8jXSspPyg/OlxcPyhbXiNdKikpPyg/OiMoW1xcc1xcU10qKSk/JCIpO3ZhciBzZj17fTt2YXIgdGY9bmV3IHRjKCJNcEp3WmMiLCJNcEp3WmMiKTtfLnVmPW5ldyB0YygiVVVKcVZlIiwiVVVKcVZlIik7dmFyIHZmPW5ldyBiYix3Zj1mdW5jdGlvbihhLGIsYyl7Y2IuY2FsbCh0aGlzLGEsYik7dGhpcy5ub2RlPWI7dGhpcy5raW5kPWN9O18uQih3ZixjYik7Xy54Zj1SZWdFeHAoIl4oYXJ8Y2tifGR2fGhlfGl3fGZhfG5xb3xwc3xzZHx1Z3x1cnx5aXwuKlstX10oQWRsbXxBcmFifEhlYnJ8Tmtvb3xSb2hnfFRoYWEpKSg/IS4qWy1fXShMYXRufEN5cmwpKCR8LXxfKSkoJHwtfF8pIiwiaSIpO18ueWY9ZnVuY3Rpb24oYSxiKXtifHxfLmxiKCk7dGhpcy5oPWF8fG51bGx9O18ueWYucHJvdG90eXBlLmthPWZ1bmN0aW9uKGEsYil7YT1hKGJ8fHt9LHRoaXMuaD90aGlzLmguZ2V0RGF0YSgpOnt9KTt0aGlzLmcobnVsbCwiZnVuY3Rpb24iPT10eXBlb2YgXy56ZiYmYSBpbnN0YW5jZW9mIF8uemY/YS5aYjpudWxsKTtyZXR1cm4gU3RyaW5nKGEpfTtfLnlmLnByb3RvdHlwZS5nPWZ1bmN0aW9uKCl7fTt2YXIgQWY9ZnVuY3Rpb24oYSl7dGhpcy5nPWE7dGhpcy5oPXRoaXMuZy5nKF8udWYpfTtBZi5wcm90b3R5cGUuZ2V0RGF0YT1mdW5jdGlvbigpe3RoaXMuZy5xYigpfHwodGhpcy5oPXRoaXMuZy5nKF8udWYpKTtyZXR1cm4gdGhpcy5oP3RoaXMuaC5qKCk6e319O3ZhciBCZj1mdW5jdGlvbihhKXt2YXIgYj1uZXcgQWYoYSk7Xy55Zi5jYWxsKHRoaXMsYixhLmdldCh1YykuaCk7dGhpcy5qPW5ldyBfLmhiO3RoaXMubD1ifTtfLkIoQmYsXy55Zik7QmYucHJvdG90eXBlLmdldERhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sLmdldERhdGEoKX07QmYucHJvdG90eXBlLmc9ZnVuY3Rpb24oYSxiKXtfLnlmLnByb3RvdHlwZS5nLmNhbGwodGhpcyxhLGIpO3RoaXMuai5kaXNwYXRjaEV2ZW50KG5ldyB3Zih2ZixhLGIpKX07Xy5vYSh0ZixCZik7cWYoe2xkOlt7aWQ6dGYsTGI6QmYsbXVsdGlwbGU6ITB9XX0pO3ZhciBDZj1mdW5jdGlvbihhLGIpe3RoaXMuZGVmYXVsdFZhbHVlPWE7dGhpcy50eXBlPWI7dGhpcy52YWx1ZT1hfTtDZi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O0NmLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZT1hfTt2YXIgRGY9ZnVuY3Rpb24oYSl7Q2YuY2FsbCh0aGlzLGEsImIiKX07Xy5CKERmLENmKTtEZi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O3ZhciBFZj1mdW5jdGlvbigpe3RoaXMuZz17fTt0aGlzLmo9IiI7dGhpcy5oPXt9fTtFZi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmorRmYodGhpcyk7dmFyIGI9dGhpcy5oO3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYilGYihkLGJbZF0sYyk7Yj1jLmpvaW4oIiYiKTtjPSIiO2IhPSIiJiYoYz0iPyIrYik7cmV0dXJuIGErY307CnZhciBIZj1mdW5jdGlvbihhKXthPUdmKGEsIm1kIik7cmV0dXJuISFhJiZhIT09IjAifSxGZj1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPWZ1bmN0aW9uKGQpe2EuZ1tkXSE9PXZvaWQgMCYmYi5wdXNoKGQrIj0iK2EuZ1tkXSl9O0hmKGEpPyhjKCJtZCIpLGMoImsiKSxjKCJjayIpLGMoImFtIiksYygicnMiKSxjKCJnc3Ntb2R1bGVzZXRwcm90byIpLGMoInNsayIpLGMoImR0aSIpLGMoImRid2giKSk6KGMoInNkY2giKSxjKCJrIiksYygiY2siKSxjKCJhbSIpLGMoImFtYyIpLGMoInJ0IiksImQiaW4gYS5nfHxJZihhLCJkIiwiMCIpLGMoImQiKSxjKCJleG0iKSxjKCJleGNtIiksKGEuZy5leGNtfHxhLmcuZXhtKSYmYi5wdXNoKCJlZD0xIiksYygiaW0iKSxjKCJkZyIpLGMoInNtIiksR2YoYSwiYnIiKSE9IjEiJiZHZihhLCJiciIpIT0iMCJ8fGMoImJyIiksYygiYnItZCIpLEdmKGEsInJiIik9PSIxIiYmYygicmIiKSxHZihhLCJ6cyIpIT09IjAiJiZjKCJ6cyIpLEpmKGEpIT09IiImJgpjKCJ3dCIpLGMoImdzc21vZHVsZXNldHByb3RvIiksYygidWpnIiksYygic3AiKSxjKCJpY2hjIiksYygicnMiKSxjKCJjYiIpLGMoImNjYiIpLGMoImVlIiksYygic2xrIiksYygiZHRpIiksYygiZGJ3aCIpLGMoImljIiksYygibSIpKTtyZXR1cm4gYi5qb2luKCIvIil9LEdmPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuZ1tiXT9hLmdbYl06bnVsbH0sSWY9ZnVuY3Rpb24oYSxiLGMpe2M/YS5nW2JdPWM6ZGVsZXRlIGEuZ1tiXX0sSmY9ZnVuY3Rpb24oYSl7c3dpdGNoKEdmKGEsInd0Iikpe2Nhc2UgIjAiOnJldHVybiIwIjtjYXNlICIxIjpyZXR1cm4iMSI7Y2FzZSAiMiI6cmV0dXJuIjIiO2RlZmF1bHQ6cmV0dXJuIiJ9fSxNZj1mdW5jdGlvbihhKXt2YXIgYj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9S2YoYSksZD1uZXcgRWYsZT1jLm1hdGNoKF8ucmYpWzVdO18uemMoTGYsZnVuY3Rpb24oZyl7dmFyIGg9ZS5tYXRjaCgiLyIrZysiPShbXi9dKykiKTtoJiZJZihkLGcsaFsxXSl9KTsKdmFyIGY9IiI7Zj1hLmluZGV4T2YoIl8vc3MvIikhPS0xPyJfL3NzLyI6Il8vanMvIjtkLmo9YS5zdWJzdHIoMCxhLmluZGV4T2YoZikrZi5sZW5ndGgpO2lmKCFiKXJldHVybiBkOyhhPWMubWF0Y2goXy5yZilbNl18fG51bGwpJiZfLkViKGEsZnVuY3Rpb24oZyxoKXtkLmhbZ109aH0pO3JldHVybiBkfSxLZj1mdW5jdGlvbihhKXtyZXR1cm4gYS5zdGFydHNXaXRoKCJodHRwczovL3ViZXJwcm94eS1wZW4tcmVkaXJlY3QuY29ycC5nb29nbGUuY29tL3ViZXJwcm94eS9wZW4/dXJsPSIpP2Euc3Vic3RyKDY1KTphfSxMZj17Wmo6ImsiLHFqOiJjayIsVGo6Im0iLERqOiJleG0iLEJqOiJleGNtIixlajoiYW0iLGZqOiJhbWMiLFJqOiJtbSIsWWo6InJ0IixNajoiZCIsQ2o6ImVkIixqazoic3YiLHNqOiJkZW9iIixtajoiY2IiLG9qOiJjY2IiLG5qOiJjYmkiLGdrOiJycyIsYWs6InNkY2giLE5qOiJpbSIsdGo6ImRnIix6ajoiYnIiLHlqOiJici1kIixBajoicmIiLEJrOiJ6cyIsQWs6Ind0IiwKRWo6ImVlIixpazoic20iLFNqOiJtZCIsSmo6Imdzc21vZHVsZXNldHByb3RvIix5azoidWpnIix4azoic3AiLExqOiJpY2hjIixmazoic2xrIix2ajoiZHRpIix1ajoiZGJ3aCIsT2o6ImljIn0sTmY9UmVnRXhwKCJeW2EtekEtWjAtOS1fKl0rJCIpO18uRyhfLkhiLF8udSk7dmFyIE9mPVtdO18uSGIucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIFBmKHRoaXMsYSxiLGMsZCl9O3ZhciBQZj1mdW5jdGlvbihhLGIsYyxkLGUsZil7QXJyYXkuaXNBcnJheShjKXx8KGMmJihPZlswXT1jLnRvU3RyaW5nKCkpLGM9T2YpO2Zvcih2YXIgZz0wO2c8Yy5sZW5ndGg7ZysrKXt2YXIgaD1fLngoYixjW2ddLGR8fGEuaGFuZGxlRXZlbnQsZXx8ITEsZnx8YS5ofHxhKTtpZighaClicmVhazthLmdbaC5rZXldPWh9cmV0dXJuIGF9O18uSGIucHJvdG90eXBlLmFlPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBRZih0aGlzLGEsYixjLGQpfTsKdmFyIFFmPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZihBcnJheS5pc0FycmF5KGMpKWZvcih2YXIgZz0wO2c8Yy5sZW5ndGg7ZysrKVFmKGEsYixjW2ddLGQsZSxmKTtlbHNle2I9Xy5OZChiLGMsZHx8YS5oYW5kbGVFdmVudCxlLGZ8fGEuaHx8YSk7aWYoIWIpcmV0dXJuIGE7YS5nW2Iua2V5XT1ifXJldHVybiBhfTtfLkhiLnByb3RvdHlwZS55Yz1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKEFycmF5LmlzQXJyYXkoYikpZm9yKHZhciBmPTA7ZjxiLmxlbmd0aDtmKyspdGhpcy55YyhhLGJbZl0sYyxkLGUpO2Vsc2UgYz1jfHx0aGlzLmhhbmRsZUV2ZW50LGQ9Xy55YShkKT8hIWQuY2FwdHVyZTohIWQsZT1lfHx0aGlzLmh8fHRoaXMsYz1PZChjKSxkPSEhZCxiPUZkKGEpP2EuamMoYixjLGQsZSk6YT8oYT1RZChhKSk/YS5qYyhiLGMsZCxlKTpudWxsOm51bGwsYiYmKF8uVmQoYiksZGVsZXRlIHRoaXMuZ1tiLmtleV0pO3JldHVybiB0aGlzfTsKXy5SZj1mdW5jdGlvbihhKXtfLnpjKGEuZyxmdW5jdGlvbihiLGMpe3RoaXMuZy5oYXNPd25Qcm9wZXJ0eShjKSYmXy5WZChiKX0sYSk7YS5nPXt9fTtfLkhiLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy5IYi5lYS5NLmNhbGwodGhpcyk7Xy5SZih0aGlzKX07Xy5IYi5wcm90b3R5cGUuaGFuZGxlRXZlbnQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiTiIpO307dmFyIFNmLFRmPWZ1bmN0aW9uKCl7fTtfLkcoVGYsSWIpO1RmLnByb3RvdHlwZS5nPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBYTUxIdHRwUmVxdWVzdH07U2Y9bmV3IFRmO18uRyhKYixJYik7SmIucHJvdG90eXBlLmc9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgWE1MSHR0cFJlcXVlc3Q7aWYoIndpdGhDcmVkZW50aWFscyJpbiBhKXJldHVybiBhO2lmKHR5cGVvZiBYRG9tYWluUmVxdWVzdCE9InVuZGVmaW5lZCIpcmV0dXJuIG5ldyBVZjt0aHJvdyBFcnJvcigiTyIpO307dmFyIFVmPWZ1bmN0aW9uKCl7dGhpcy5nPW5ldyBYRG9tYWluUmVxdWVzdDt0aGlzLnJlYWR5U3RhdGU9MDt0aGlzLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsO3RoaXMucmVzcG9uc2VUeXBlPXRoaXMucmVzcG9uc2VUZXh0PSIiO3RoaXMuc3RhdHVzPS0xO3RoaXMuc3RhdHVzVGV4dD0iIjt0aGlzLmcub25sb2FkPSgwLF8ueSkodGhpcy5QaCx0aGlzKTt0aGlzLmcub25lcnJvcj0oMCxfLnkpKHRoaXMuRGUsdGhpcyk7dGhpcy5nLm9ucHJvZ3Jlc3M9KDAsXy55KSh0aGlzLlNoLHRoaXMpO3RoaXMuZy5vbnRpbWVvdXQ9KDAsXy55KSh0aGlzLldoLHRoaXMpfTtfLm09VWYucHJvdG90eXBlOwpfLm0ub3Blbj1mdW5jdGlvbihhLGIsYyl7aWYoYyE9bnVsbCYmIWMpdGhyb3cgRXJyb3IoIlAiKTt0aGlzLmcub3BlbihhLGIpfTtfLm0uc2VuZD1mdW5jdGlvbihhKXtpZihhKWlmKHR5cGVvZiBhPT0ic3RyaW5nIil0aGlzLmcuc2VuZChhKTtlbHNlIHRocm93IEVycm9yKCJRIik7ZWxzZSB0aGlzLmcuc2VuZCgpfTtfLm0uYWJvcnQ9ZnVuY3Rpb24oKXt0aGlzLmcuYWJvcnQoKX07Xy5tLnNldFJlcXVlc3RIZWFkZXI9ZnVuY3Rpb24oKXt9O18ubS5nZXRSZXNwb25zZUhlYWRlcj1mdW5jdGlvbihhKXtyZXR1cm4gYS50b0xvd2VyQ2FzZSgpPT0iY29udGVudC10eXBlIj90aGlzLmcuY29udGVudFR5cGU6IiJ9O18ubS5QaD1mdW5jdGlvbigpe3RoaXMuc3RhdHVzPTIwMDt0aGlzLnJlc3BvbnNlVGV4dD10aGlzLmcucmVzcG9uc2VUZXh0O1ZmKHRoaXMsNCl9O18ubS5EZT1mdW5jdGlvbigpe3RoaXMuc3RhdHVzPTUwMDt0aGlzLnJlc3BvbnNlVGV4dD0iIjtWZih0aGlzLDQpfTsKXy5tLldoPWZ1bmN0aW9uKCl7dGhpcy5EZSgpfTtfLm0uU2g9ZnVuY3Rpb24oKXt0aGlzLnN0YXR1cz0yMDA7VmYodGhpcywxKX07dmFyIFZmPWZ1bmN0aW9uKGEsYil7YS5yZWFkeVN0YXRlPWI7aWYoYS5vbnJlYWR5c3RhdGVjaGFuZ2UpYS5vbnJlYWR5c3RhdGVjaGFuZ2UoKX07VWYucHJvdG90eXBlLmdldEFsbFJlc3BvbnNlSGVhZGVycz1mdW5jdGlvbigpe3JldHVybiJjb250ZW50LXR5cGU6ICIrdGhpcy5nLmNvbnRlbnRUeXBlfTt2YXIgWGYsWWY7Xy5XZj1mdW5jdGlvbihhKXtfLmhiLmNhbGwodGhpcyk7dGhpcy5oZWFkZXJzPW5ldyBNYXA7dGhpcy5LPWF8fG51bGw7dGhpcy5oPSExO3RoaXMuZz1udWxsO3RoaXMuQT0iIjt0aGlzLmo9dGhpcy5GPXRoaXMubz10aGlzLkQ9ITE7dGhpcy5CPTA7dGhpcy5sPW51bGw7dGhpcy5JPSIiO3RoaXMuQz0hMX07Xy5HKF8uV2YsXy5oYik7WGY9L15odHRwcz8kL2k7WWY9WyJQT1NUIiwiUFVUIl07Xy5aZj1bXTtfLldmLnByb3RvdHlwZS5MPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCk7Xy52YShfLlpmLHRoaXMpfTsKXy5XZi5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihhLGIsYyxkKXtpZih0aGlzLmcpdGhyb3cgRXJyb3IoIlNgIit0aGlzLkErImAiK2EpO2I9Yj9iLnRvVXBwZXJDYXNlKCk6IkdFVCI7dGhpcy5BPWE7dGhpcy5EPSExO3RoaXMuaD0hMDt0aGlzLmc9dGhpcy5LP3RoaXMuSy5nKCk6U2YuZygpO3RoaXMuZy5vbnJlYWR5c3RhdGVjaGFuZ2U9ZWUoKDAsXy55KSh0aGlzLkcsdGhpcykpO3RyeXt0aGlzLkY9ITAsdGhpcy5nLm9wZW4oYixTdHJpbmcoYSksITApLHRoaXMuRj0hMX1jYXRjaChnKXskZih0aGlzKTtyZXR1cm59YT1jfHwiIjtjPW5ldyBNYXAodGhpcy5oZWFkZXJzKTtpZihkKWlmKE9iamVjdC5nZXRQcm90b3R5cGVPZihkKT09PU9iamVjdC5wcm90b3R5cGUpZm9yKHZhciBlIGluIGQpYy5zZXQoZSxkW2VdKTtlbHNlIGlmKHR5cGVvZiBkLmtleXM9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgZC5nZXQ9PT0iZnVuY3Rpb24iKXtlPV8uQyhkLmtleXMoKSk7Zm9yKHZhciBmPWUubmV4dCgpOyFmLmRvbmU7Zj0KZS5uZXh0KCkpZj1mLnZhbHVlLGMuc2V0KGYsZC5nZXQoZikpfWVsc2UgdGhyb3cgRXJyb3IoIlRgIitTdHJpbmcoZCkpO2Q9QXJyYXkuZnJvbShjLmtleXMoKSkuZmluZChmdW5jdGlvbihnKXtyZXR1cm4iY29udGVudC10eXBlIj09Zy50b0xvd2VyQ2FzZSgpfSk7ZT1fLnYuRm9ybURhdGEmJmEgaW5zdGFuY2VvZiBfLnYuRm9ybURhdGE7IV8udGEoWWYsYil8fGR8fGV8fGMuc2V0KCJDb250ZW50LVR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD11dGYtOCIpO2I9Xy5DKGMpO2ZvcihkPWIubmV4dCgpOyFkLmRvbmU7ZD1iLm5leHQoKSljPV8uQyhkLnZhbHVlKSxkPWMubmV4dCgpLnZhbHVlLGM9Yy5uZXh0KCkudmFsdWUsdGhpcy5nLnNldFJlcXVlc3RIZWFkZXIoZCxjKTt0aGlzLkkmJih0aGlzLmcucmVzcG9uc2VUeXBlPXRoaXMuSSk7IndpdGhDcmVkZW50aWFscyJpbiB0aGlzLmcmJnRoaXMuZy53aXRoQ3JlZGVudGlhbHMhPT10aGlzLkMmJgoodGhpcy5nLndpdGhDcmVkZW50aWFscz10aGlzLkMpO3RyeXt0aGlzLmwmJihjbGVhclRpbWVvdXQodGhpcy5sKSx0aGlzLmw9bnVsbCksdGhpcy5CPjAmJih0aGlzLmw9c2V0VGltZW91dCh0aGlzLlIuYmluZCh0aGlzKSx0aGlzLkIpKSx0aGlzLm89ITAsdGhpcy5nLnNlbmQoYSksdGhpcy5vPSExfWNhdGNoKGcpeyRmKHRoaXMpfX07Xy5XZi5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3R5cGVvZiBqYyE9InVuZGVmaW5lZCImJnRoaXMuZyYmKHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTt2YXIgJGY9ZnVuY3Rpb24oYSl7YS5oPSExO2EuZyYmKGEuaj0hMCxhLmcuYWJvcnQoKSxhLmo9ITEpO2RnKGEpO2VnKGEpfSxkZz1mdW5jdGlvbihhKXthLkR8fChhLkQ9ITAsYS5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLGEuZGlzcGF0Y2hFdmVudCgiZXJyb3IiKSl9OwpfLldmLnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMuZyYmdGhpcy5oJiYodGhpcy5oPSExLHRoaXMuaj0hMCx0aGlzLmcuYWJvcnQoKSx0aGlzLmo9ITEsdGhpcy5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLHRoaXMuZGlzcGF0Y2hFdmVudCgiYWJvcnQiKSxlZyh0aGlzKSl9O18uV2YucHJvdG90eXBlLk09ZnVuY3Rpb24oKXt0aGlzLmcmJih0aGlzLmgmJih0aGlzLmg9ITEsdGhpcy5qPSEwLHRoaXMuZy5hYm9ydCgpLHRoaXMuaj0hMSksZWcodGhpcywhMCkpO18uV2YuZWEuTS5jYWxsKHRoaXMpfTtfLldmLnByb3RvdHlwZS5HPWZ1bmN0aW9uKCl7dGhpcy5xYigpfHwodGhpcy5GfHx0aGlzLm98fHRoaXMuaj9mZyh0aGlzKTp0aGlzLk8oKSl9O18uV2YucHJvdG90eXBlLk89ZnVuY3Rpb24oKXtmZyh0aGlzKX07CnZhciBmZz1mdW5jdGlvbihhKXtpZihhLmgmJnR5cGVvZiBqYyE9InVuZGVmaW5lZCIpaWYoYS5vJiYoYS5nP2EuZy5yZWFkeVN0YXRlOjApPT00KXNldFRpbWVvdXQoYS5HLmJpbmQoYSksMCk7ZWxzZSBpZihhLmRpc3BhdGNoRXZlbnQoInJlYWR5c3RhdGVjaGFuZ2UiKSwoYS5nP2EuZy5yZWFkeVN0YXRlOjApPT00KXthLmg9ITE7dHJ5e18uZ2coYSk/KGEuZGlzcGF0Y2hFdmVudCgiY29tcGxldGUiKSxhLmRpc3BhdGNoRXZlbnQoInN1Y2Nlc3MiKSk6ZGcoYSl9ZmluYWxseXtlZyhhKX19fSxlZz1mdW5jdGlvbihhLGIpe2lmKGEuZyl7YS5sJiYoY2xlYXJUaW1lb3V0KGEubCksYS5sPW51bGwpO3ZhciBjPWEuZzthLmc9bnVsbDtifHxhLmRpc3BhdGNoRXZlbnQoInJlYWR5Iik7dHJ5e2Mub25yZWFkeXN0YXRlY2hhbmdlPW51bGx9Y2F0Y2goZCl7fX19O18uV2YucHJvdG90eXBlLmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuISF0aGlzLmd9OwpfLmdnPWZ1bmN0aW9uKGEpe3ZhciBiPV8uaGcoYSk7YTpzd2l0Y2goYil7Y2FzZSAyMDA6Y2FzZSAyMDE6Y2FzZSAyMDI6Y2FzZSAyMDQ6Y2FzZSAyMDY6Y2FzZSAzMDQ6Y2FzZSAxMjIzOnZhciBjPSEwO2JyZWFrIGE7ZGVmYXVsdDpjPSExfWlmKCFjKXtpZihiPWI9PT0wKWE9U3RyaW5nKGEuQSkubWF0Y2goXy5yZilbMV18fG51bGwsIWEmJl8udi5zZWxmJiZfLnYuc2VsZi5sb2NhdGlvbiYmKGE9Xy52LnNlbGYubG9jYXRpb24ucHJvdG9jb2wuc2xpY2UoMCwtMSkpLGI9IVhmLnRlc3QoYT9hLnRvTG93ZXJDYXNlKCk6IiIpO2M9Yn1yZXR1cm4gY307Xy5oZz1mdW5jdGlvbihhKXt0cnl7cmV0dXJuKGEuZz9hLmcucmVhZHlTdGF0ZTowKT4yP2EuZy5zdGF0dXM6LTF9Y2F0Y2goYil7cmV0dXJuLTF9fTtfLmlnPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gYS5nP2EuZy5yZXNwb25zZVRleHQ6IiJ9Y2F0Y2goYil7cmV0dXJuIiJ9fTt2YXIga2c9ZnVuY3Rpb24oYSl7Xy51LmNhbGwodGhpcyk7dGhpcy5GPWE7dGhpcy5CPU1mKGEpO3RoaXMubD10aGlzLm89bnVsbDt0aGlzLkk9ITA7dGhpcy5oPW5ldyBfLkhiKHRoaXMpO3RoaXMuRz1bXTt0aGlzLkE9bmV3IFNldDt0aGlzLmc9W107dGhpcy5LPW5ldyBqZzt0aGlzLmo9W107dGhpcy5DPSExO2E9KDAsXy55KSh0aGlzLkQsdGhpcyk7c2YudmVyc2lvbj1hfTtfLkIoa2csXy51KTsKdmFyIGxnPWZ1bmN0aW9uKGEsYil7YS5nLmxlbmd0aCYmUGUoYixhLmdbYS5nLmxlbmd0aC0xXSk7YS5nLnB1c2goYik7TWUoYixmdW5jdGlvbigpe18udmEodGhpcy5nLGIpfSxhKX0sZmY9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZD09PXZvaWQgMD97fTpkO3ZhciBmPWUuamg7ZD1lLm1oO3ZhciBnPWUuZmU7ZT1lLkZpO2I9bWcoYSxiLGMsZixkKTtuZyhhLGIsZyxlLGQpfSxtZz1mdW5jdGlvbihhLGIsYyxkLGUpe2Q9ZD09PXZvaWQgMD9OYz9uZXcgTWFwOnt9OmQ7dmFyIGY9W107b2coYSxiLGMsZCxlPT09dm9pZCAwPyExOmUsZnVuY3Rpb24oZyl7Zi5wdXNoKGcuUmEoKSl9KTtyZXR1cm4gZn0sb2c9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7Zz1nPT09dm9pZCAwP3t9Omc7Yj1fLkMoYik7Zm9yKHZhciBoPWIubmV4dCgpOyFoLmRvbmU7aD1iLm5leHQoKSl7dmFyIGs9aC52YWx1ZTtoPWMuZ2V0KGspOyFlJiYoYS5BLmhhcyhrKXx8aC5nKXx8Z1trXXx8KGdba109ITAsaz1kIGluc3RhbmNlb2YKTWFwPyhrPWQuZ2V0KGspKT9BcnJheS5mcm9tKGspOltdOmRba10/T2JqZWN0LmtleXMoZFtrXSk6W10sb2coYSxoLmwuY29uY2F0KGspLGMsZCxlLGYsZyksZihoKSl9fSxuZz1mdW5jdGlvbihhLGIsYyxkLGUpe2U9ZT09PXZvaWQgMD8hMTplO3ZhciBmPVtdLGc9bmV3IEJiO2I9W2JdO2Zvcih2YXIgaD1mdW5jdGlvbihxLHApe2Zvcih2YXIgcj1bXSx0PTAsQT1NYXRoLmZsb29yKHEubGVuZ3RoL3ApKzEsRD0wO0Q8cDtEKyspe3ZhciBFPShEKzEpKkE7ci5wdXNoKHEuc2xpY2UodCxFKSk7dD1FfXJldHVybiByfSxrPWIuc2hpZnQoKTtrOyl7dmFyIGw9cGcoYSxrLCEhZSwhMCk7aWYobC5sZW5ndGg8PTJFMyl7aWYoaz1yZyhhLGssZSkpZi5wdXNoKGspLFBlKGcsay5nKX1lbHNlIGI9aChrLE1hdGguY2VpbChsLmxlbmd0aC8yRTMpKS5jb25jYXQoYik7az1iLnNoaWZ0KCl9dmFyIG49bmV3IEJiO2xnKGEsbik7TWUobixmdW5jdGlvbigpe3JldHVybiBzZyhhLGYsYyxkKX0pO05lKG4sCmZ1bmN0aW9uKCl7dmFyIHE9bmV3IHRnO3Euaj0hMDtxLmg9LTE7c2codGhpcyxbcV0sYyxkKX0sYSk7TWUoZyxmdW5jdGlvbigpe3JldHVybiBuLmcoKX0pO2cuZygpfSxyZz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cGcoYSxiLCEoYz09PXZvaWQgMHx8IWMpKTthLkcucHVzaChkKTtiPV8uQyhiKTtmb3IoYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYS5BLmFkZChjLnZhbHVlKTtpZihhLkMpYT1fLndkKGRvY3VtZW50LCJTQ1JJUFQiKSxfLlNhKGEsXy5MYihkKSksYS50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLGEuYXN5bmM9ITEsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtlbHNle3ZhciBlPW5ldyB0ZyxmPW5ldyBfLldmKGEuai5sZW5ndGg+MD9uZXcgSmI6dm9pZCAwKTthLmguTihmLCJzdWNjZXNzIiwoMCxfLnkpKGUuQixlLGYpKTthLmguTihmLCJlcnJvciIsKDAsXy55KShlLkEsZSxmKSk7YS5oLk4oZiwidGltZW91dCIsKDAsXy55KShlLkMsZSkpO1BmKGEuaCwKZiwicmVhZHkiLGYuZGlzcG9zZSwhMSxmKTtmLkI9M0U0O3VnKGEuSyxmdW5jdGlvbigpe2Yuc2VuZChkKTtyZXR1cm4gZS5nfSk7cmV0dXJuIGV9cmV0dXJuIG51bGx9LHNnPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT0hMSxmLGc9ITEsaD0wO2g8Yi5sZW5ndGg7aCsrKXt2YXIgaz1iW2hdO2lmKCFmJiZrLmope2U9ITA7Zj1rLmg7YnJlYWt9ZWxzZSBrLmwmJihnPSEwKX1oPV8ud2EoYS5nKTsoZXx8ZykmJmYhPS0xJiYoYS5nLmxlbmd0aD0wKTtpZihlKWMmJmMoZik7ZWxzZSBpZihnKWQmJmQoKTtlbHNlIGZvcihhPTA7YTxiLmxlbmd0aDthKyspZD1iW2FdLHZnKGQubyxkLkNhKXx8YyYmYyg4MDAxKTsoZXx8ZykmJmYhPS0xJiZfLnZjKGgsZnVuY3Rpb24obCl7bC5jYW5jZWwoKX0pfTtrZy5wcm90b3R5cGUuTT1mdW5jdGlvbigpe3RoaXMuaC5kaXNwb3NlKCk7ZGVsZXRlIHNmLnZlcnNpb247Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyl9OwprZy5wcm90b3R5cGUuRD1mdW5jdGlvbigpe3JldHVybiBHZih0aGlzLkIsImsiKX07CnZhciBwZz1mdW5jdGlvbihhLGIsYyxkKXtkPWQ9PT12b2lkIDA/ITE6ZDt2YXIgZT1fLkNiKGEuRi5tYXRjaChfLnJmKVszXXx8bnVsbCk7aWYoYS5qLmxlbmd0aD4wJiYhXy50YShhLmosZSkmJmUhPW51bGwmJndpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSE9ZSl0aHJvdyBFcnJvcigiV2AiK2UpO3ZhciBmPWEuQjtlPW5ldyBFZjtlLmc9T2JqZWN0LmFzc2lnbih7fSxmLmcpO2Uuaj1mLmo7ZS5oPU9iamVjdC5hc3NpZ24oe30sZi5oKTtkZWxldGUgZS5nLm07ZGVsZXRlIGUuZy5leG07ZGVsZXRlIGUuZy5lZDtpZihiKXtmPV8uQyhiKTtmb3IodmFyIGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWlmKGc9Zy52YWx1ZSwhTmYudGVzdChnKSl0aHJvdyBFcnJvcigiTWAiK2cpO31JZihlLCJtIixiLmpvaW4oIiwiKSk7YS5vJiYoSWYoZSwiY2siLGEubyksYS5sJiZJZihlLCJycyIsYS5sKSk7SWYoZSwiZCIsIjAiKTtjJiYoZS5oLnp4PU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoKMjE0NzQ4MzY0OCkudG9TdHJpbmcoMzYpK01hdGguYWJzKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyMTQ3NDgzNjQ4KV5EYXRlLm5vdygpKS50b1N0cmluZygzNikpO2E9ZS50b1N0cmluZygpO2QmJmEubGFzdEluZGV4T2YoIi8iLDApPT0wJiYoZT1kb2N1bWVudC5sb2NhdGlvbi5ocmVmLm1hdGNoKF8ucmYpLGQ9ZVsxXSxiPWVbMl0sYz1lWzNdLGU9ZVs0XSxmPSIiLGQmJihmKz1kKyI6IiksYyYmKGYrPSIvLyIsYiYmKGYrPWIrIkAiKSxmKz1jLGUmJihmKz0iOiIrZSkpLGE9ZithKTtyZXR1cm4gYX0sdmc9ZnVuY3Rpb24oYSxiKXt2YXIgYz0iIjtpZihhLmxlbmd0aD4xJiZhLmNoYXJBdChhLmxlbmd0aC0xKT09PSJcbiIpe3ZhciBkPWEubGFzdEluZGV4T2YoIlxuIixhLmxlbmd0aC0yKTtkPj0wJiYoYz1hLnN1YnN0cmluZyhkKzEsYS5sZW5ndGgtMSkpfWQ9Yy5sZW5ndGgtMTE7aWYoZD49MCYmYy5pbmRleE9mKCJHb29nbGUgSW5jLiIsZCk9PWR8fGMubGFzdEluZGV4T2YoIi8vIyBzb3VyY2VNYXBwaW5nVVJMPSIsCjApPT0wKXRyeXtjPXdpbmRvdzthPWErIlxyXG4vLyMgc291cmNlVVJMPSIrYjthPV8uS2IoYSk7dmFyIGU9Xy5RYShhKTt2YXIgZj1fLlJhKGUpO2MuZXZhbChmKT09PWYmJmMuZXZhbChmLnRvU3RyaW5nKCkpfWNhdGNoKGcpe3JldHVybiExfWVsc2UgcmV0dXJuITE7cmV0dXJuITB9LHdnPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQ2IoYS5tYXRjaChfLnJmKVs1XXx8bnVsbCl8fCIiO2I9Xy5DYihLZihiKS5tYXRjaChfLnJmKVs1XXx8bnVsbCk7cmV0dXJuKGI9PT1udWxsPzA6UmVnRXhwKCIoL18vanMvKXwoL18vc3MvKSIsImciKS50ZXN0KGIpJiYvXC9rPS8udGVzdChiKSk/YTpudWxsfSx0Zz1mdW5jdGlvbigpe3RoaXMuZz1uZXcgQmI7dGhpcy5DYT10aGlzLm89IiI7dGhpcy5qPSExO3RoaXMuaD0wO3RoaXMubD0hMX07dGcucHJvdG90eXBlLkI9ZnVuY3Rpb24oYSl7dGhpcy5vPV8uaWcoYSk7dGhpcy5DYT1TdHJpbmcoYS5BKTt0aGlzLmcuZygpfTsKdGcucHJvdG90eXBlLkE9ZnVuY3Rpb24oYSl7dGhpcy5qPSEwO3RoaXMuaD1fLmhnKGEpO3RoaXMuZy5nKCl9O3RnLnByb3RvdHlwZS5DPWZ1bmN0aW9uKCl7dGhpcy5sPSEwO3RoaXMuZy5nKCl9O3ZhciBqZz1mdW5jdGlvbigpe3RoaXMuZz0wO3RoaXMuaD1bXX0sdWc9ZnVuY3Rpb24oYSxiKXthLmgucHVzaChiKTt4ZyhhKX0seGc9ZnVuY3Rpb24oYSl7Zm9yKDthLmc8NSYmYS5oLmxlbmd0aDspeWcoYSxhLmguc2hpZnQoKSl9LHlnPWZ1bmN0aW9uKGEsYil7YS5nKys7TWUoYigpLGZ1bmN0aW9uKCl7dGhpcy5nLS07eGcodGhpcyl9LGEpfTt2YXIgemc9bmV3IERmKCExKSxBZz1kb2N1bWVudC5sb2NhdGlvbi5ocmVmOwpxZih7ZmxhZ3M6e2RtbDp6Z30saW5pdGlhbGl6ZTpmdW5jdGlvbihhKXt2YXIgYj16Zy5nZXQoKSxjPSIiLGQ9IiI7d2luZG93JiZ3aW5kb3cuX0ZfY3NzUm93S2V5JiYoYz13aW5kb3cuX0ZfY3NzUm93S2V5LHdpbmRvdy5fRl9jb21iaW5lZFNpZ25hdHVyZSYmKGQ9d2luZG93Ll9GX2NvbWJpbmVkU2lnbmF0dXJlKSk7aWYoYyYmdHlwZW9mIHdpbmRvdy5fRl9pbnN0YWxsQ3NzIT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiVSIpO3ZhciBlLGY9Xy52Ll9GX2pzVXJsO2YmJihlPXdnKGYpKTshZSYmKGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJhc2UtanMiKSkmJihlPWYuc3JjP2Yuc3JjOmYuZ2V0QXR0cmlidXRlKCJocmVmIiksZT13ZyhlKSk7ZXx8KGU9d2coQWcpKTtlfHwoZT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IiksZT13ZyhlW2UubGVuZ3RoLTFdLnNyYykpO2lmKCFlKXRocm93IEVycm9yKCJWIik7ZT1uZXcga2coZSk7YyYmKGUubz1jKTsKZCYmKGUubD1kKTtlLkM9YjtiPWphKCk7Yi5PPWU7Yi5YZighMCk7Yj1qYSgpO2Iuc2UoYSk7YS5qKGIpfX0pOwpfLl9Nb2R1bGVNYW5hZ2VyX2luaXRpYWxpemU9ZnVuY3Rpb24oYSxiKXtpZighXy5kYSl7aWYoIV8uaGEpcmV0dXJuO18uaWEoKX1fLmRhLnFlKGEsYil9OwpfLl9Nb2R1bGVNYW5hZ2VyX2luaXRpYWxpemUoJ2IvbjczcXdmL1VVSnFWZS9NcEp3WmMvZWxfY29uZi9lbF9tYWluX2Nzcy9zeTEvc3kyOjYvc3kzOjcvc3k0OjYvZWxfbWFpbjo1LDgsOS9jb3JzcHJveHkvd2Vic2l0ZV9lcnJvci9uYXZpZ2F0aW9udWk6Ny9waGlzaGluZ19wcm90ZWN0aW9uOjgvX3N0YW06OScsWydlbF9jb25mJ10pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmxhKCJlbF9jb25mIik7CnZhciBDZztfLl9leHBvcnRWZXJzaW9uPWZ1bmN0aW9uKGEpe18ucmMoImdvb2dsZS50cmFuc2xhdGUudiIsYSl9O18uX2dldENhbGxiYWNrRnVuY3Rpb249ZnVuY3Rpb24oYSl7cmV0dXJuIF8ua2MoYSl9O0NnPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF07Ynx8KGI9ZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImhlYWQiKSkpO2IuYXBwZW5kQ2hpbGQoYSl9O18uX2xvYWRKcz1mdW5jdGlvbihhKXt2YXIgYj1fLndkKGRvY3VtZW50LCJTQ1JJUFQiKTtiLnR5cGU9InRleHQvamF2YXNjcmlwdCI7Yi5jaGFyc2V0PSJVVEYtOCI7Xy5TYShiLF8uTGIoYSkpO0NnKGIpfTsKXy5fbG9hZENzcz1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7Yi50eXBlPSJ0ZXh0L2NzcyI7Yi5yZWw9InN0eWxlc2hlZXQiO2IuY2hhcnNldD0iVVRGLTgiO2IuaHJlZj1hO0NnKGIpfTtfLl9pc05TPWZ1bmN0aW9uKGEpe2E9YS5zcGxpdCgiLiIpO2Zvcih2YXIgYj13aW5kb3csYz0wO2M8YS5sZW5ndGg7KytjKWlmKCEoYj1iW2FbY11dKSlyZXR1cm4hMTtyZXR1cm4hMH07Xy5fc2V0dXBOUz1mdW5jdGlvbihhKXthPWEuc3BsaXQoIi4iKTtmb3IodmFyIGI9d2luZG93LGM9MDtjPGEubGVuZ3RoOysrYyliLmhhc093blByb3BlcnR5P2IuaGFzT3duUHJvcGVydHkoYVtjXSk/Yj1iW2FbY11dOmI9YlthW2NdXT17fTpiPWJbYVtjXV18fChiW2FbY11dPXt9KTtyZXR1cm4gYn07Xy5yYygiX2V4cG9ydFZlcnNpb24iLF8uX2V4cG9ydFZlcnNpb24pO18ucmMoIl9nZXRDYWxsYmFja0Z1bmN0aW9uIixfLl9nZXRDYWxsYmFja0Z1bmN0aW9uKTsKXy5yYygiX2xvYWRKcyIsXy5fbG9hZEpzKTtfLnJjKCJfbG9hZENzcyIsXy5fbG9hZENzcyk7Xy5yYygiX2lzTlMiLF8uX2lzTlMpO18ucmMoIl9zZXR1cE5TIixfLl9zZXR1cE5TKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lciYmdHlwZW9mIGRvY3VtZW50LnJlYWR5U3RhdGU9PSJ1bmRlZmluZWQiJiZ3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsZnVuY3Rpb24oKXtkb2N1bWVudC5yZWFkeVN0YXRlPSJjb21wbGV0ZSJ9LCExKTsKXy5tYSgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF90cik7Ci8vIEdvb2dsZSBJbmMuCgovLyMgc291cmNlVVJMPS9fL3RyYW5zbGF0ZV9odHRwL18vanMvaz10cmFuc2xhdGVfaHR0cC50ci5uby5zY3JuWTZRMl95dy5PL2FtPUJJQUFCdy9kPTEvcnM9QU44U1BmcTFLbFVGcWVpRnZCTXVkZHV6R3RiMzlRV1h1dy9tPWVsX2NvbmYKICAgIC8vIENvbmZpZ3VyZSBDb25zdGFudHMKICAgIChmdW5jdGlvbigpewogICAgICBsZXQgZ3RDb25zdEV2YWxTdGFydFRpbWUgPSBuZXcgRGF0ZSgpOwogICAgICBpZiAoX2lzTlMoJ2dvb2dsZS50cmFuc2xhdGUuRWxlbWVudCcpKXtyZXR1cm59CgogICAgICAoZnVuY3Rpb24oKXsKICAgICAgICBjb25zdCBjPV9zZXR1cE5TKCdnb29nbGUudHJhbnNsYXRlLl9jb25zdCcpOwoKICAgICAgICBjLl9jZXN0ID0gZ3RDb25zdEV2YWxTdGFydFRpbWU7CiAgICAgICAgZ3RDb25zdEV2YWxTdGFydFRpbWUgPSB1bmRlZmluZWQ7IC8vIGhpZGUgdGhpcyBldmFsIHN0YXJ0IHRpbWUgY29uc3RhbnQKICBjLl9jbD0nbm8nOyBjLl9jdWM9J2dvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0JzsgYy5fY2VmPSdceDViMCwxLDAsXHg1Ylx4MjJlc19lblx4MjIsXHgyMmVuX3poXHgyMixceDIyZW5fZGVceDIyLFx4MjJlbl9qYVx4MjIsXHgyMmVuX2VzXHgyMixceDIyZGVfZW5ceDIyXHg1ZCxudWxsLFx4NWIwLDMsMTAwLFx4NWJceDIyZW5faGlceDIyLFx4MjJoaV9lblx4MjIsXHgyMmVuX2VzXHgyMixceDIyZXNfZW5ceDIyLFx4MjJlbl9kZVx4MjIsXHgyMmRlX2VuXHgyMixceDIyZW5femhceDIyLFx4MjJlbl9qYVx4MjIsXHgyMmVuX2FyXHgyMixceDIyZW5faWRceDIyXHg1ZFx4NWQsMCwxLDBceDVkJzsgYy5fY2FjPScnOyBjLl9jYW09Jyc7IGMuX2NlbnY9J3Byb2QnO2MuX2NsbD0nSU5GTyc7IGMuX2NnYWs9Jyc7IGMuX2N0a2s9JzQ5NTg3Ny4xMzg1ODQ1Njc3JzsgY29uc3QgaD0ndHJhbnNsYXRlLmdvb2dsZWFwaXMuY29tJzsgY29uc3Qgb3BoPSd0cmFuc2xhdGUtcGEuZ29vZ2xlYXBpcy5jb20nOyBjb25zdCBzPSdodHRwcycrJzovLyc7IGMuX3BhaD1oOyBjLl9wYXM9czsgY29uc3QgYj1zKyd0cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb20nOyBjb25zdCBzdGF0aWNQYXRoID0gJy90cmFuc2xhdGVfc3RhdGljLyc7IGMuX3BjaT1iK3N0YXRpY1BhdGgrJ2ltZy90ZV9jdHJsMy5naWYnOyBjLl9wbWk9YitzdGF0aWNQYXRoKydpbWcvbWluaV9nb29nbGUucG5nJzsgYy5fcGJpPWIrc3RhdGljUGF0aCsnaW1nL3RlX2JrLmdpZic7IGMuX3BsaT1iK3N0YXRpY1BhdGgrJ2ltZy9sb2FkaW5nLmdpZic7IGMuX3BzPSdodHRwczpcL1wvd3d3LmdzdGF0aWMuY29tXC9fXC90cmFuc2xhdGVfaHR0cFwvX1wvc3NcL2tceDNkdHJhbnNsYXRlX2h0dHAudHIuQjdEaWg5SnlqbncuTC5GNC5PXC9hbVx4M2RCSUFBQndcL2RceDNkMFwvcnNceDNkQU44U1BmcEMwNHZycnpRWGdzX1RDTTVFdHJ1d2ZQek50UVwvbVx4M2RlbF9tYWluX2Nzcyc7IGMuX3BsbGE9b3BoKydcL3YxXC9zdXBwb3J0ZWRMYW5ndWFnZXMnOyBjLl9wdWg9J3RyYW5zbGF0ZS5nb29nbGUuY29tJztjLl9jbmFsPXt9O19sb2FkQ3NzKGMuX3BzKTsgX2xvYWRKcygnaHR0cHM6XC9cL3RyYW5zbGF0ZS5nb29nbGVhcGlzLmNvbVwvX1wvdHJhbnNsYXRlX2h0dHBcL19cL2pzXC9rXHgzZHRyYW5zbGF0ZV9odHRwLnRyLm5vLnNjcm5ZNlEyX3l3Lk9cL2FtXHgzZEJJQUFCd1wvZFx4M2QxXC9leG1ceDNkZWxfY29uZlwvZWRceDNkMVwvcnNceDNkQU44U1BmcTFLbFVGcWVpRnZCTXVkZHV6R3RiMzlRV1h1d1wvbVx4M2RlbF9tYWluJyk7X2V4cG9ydFZlcnNpb24oJ1RFXzIwMjYwNzIyJyk7CiAgICAgICAgfSkoKTsKICAgICAgfSkoKTsKICA="}},"time_used":190,"timings":{"blocked":-1,"dns":4,"connect":23,"send":0,"wait":108,"receive":0,"ssl":54},"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.303Z","timestamp":1785159268303,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 3839850\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 13:34:28 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=MJy%2BGYl7rEMCB4F23JB02ucq1c78Bd%2FvJ%2BBb1pM6H4%2Bu4WzNMb2BRolhbdbi6%2FQVRwLWm2ncR8O0Qk1RDZ0qoh4xq0Og1mVJMYE5n1wtKp9FvycgUSwwbQkQ38XY\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=2,i=?0\r\ncf-ray: a21c0592e93c56a3-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":"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":48432,"size_decoded":50507,"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-07-30T06:15:27.339629Z","times_seen":84100,"resource_available":false,"data":"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"}},"time_used":29,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":13,"receive":16,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/plan-head-right.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.434Z","timestamp":1785159268434,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/plan-head-right.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"530-66136805-75287f2fd20df033;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 1328\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1328,"size_decoded":1653,"mime_type":"image/png","magic":"PNG image data, 23 x 64, 8-bit/color RGBA, non-interlaced","md5":"44fcfe160f8aafe5c8404b2bd09b1739","sha1":"a5337631f98ab0e140692c876781d3024fb88c37","sha256":"72b85b1ff26af7cbc4838cdfce3608008cba74edf1df7453cf692c56ae6b78d8","sha512":"74d7d2fc959ec45ba4827b7b74a58aa50e1ab4fff25efa13bdc0717285e6ee4fccd05eb394f68d49925b4037d456625b46620a54b8ddb6d18a5738707ea5d67f","ssdeep":"","tlshash":"b321a546e8a4786983edc0413cf7e061d832c850d9c0f166668fe11618622b6dc3e4ef","first_seen":"2026-07-27T07:08:39.197603Z","last_seen":"2026-07-27T13:35:41.719667Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAABcAAABACAYAAADxoezvAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NERGRUY3MzgxQkFBMTFFQzkyMTZCQjgxMDRBNzYyMkUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NERGRUY3MzkxQkFBMTFFQzkyMTZCQjgxMDRBNzYyMkUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0REZFRjczNjFCQUExMUVDOTIxNkJCODEwNEE3NjIyRSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0REZFRjczNzFCQUExMUVDOTIxNkJCODEwNEE3NjIyRSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Ph12E24AAAGkSURBVHja1JhLS8NAFIUnY0XF6EJciVuXgouSVrTUTkT8C/5BRURE/AF5+Ni6dJPl7K2PJrqKd9ooIS/B3LNw4ITJTDh8nGlvMmMtngw+hRAT0gspJiWk51zfjL9n/TfSazZnNM49N858kuQ0NM8Ii8xTgWlPHYGyFuJRClzzkeYeylwnZ2FEmUNCD80FRe6bC+rX4qHIdXJ+G6HMw+9Ox0oxeaPIvR9y5gXV8cUs75k5r3uYv+Em9/M3EpU3N7mOL+8iFHlQHOAkL5lLVN4ZecqT99V9hCIPqga5Mq80l6i8uch1fF3Om6vkBnUTHIWrwTzF5M2xoHpy8xChyIOmSYnKm4Pc+8W8lfsHMhbVbG7A/y7335JvLh/vbjWQt3Mn1dJLU7haSqFiMVL2Ud9CvSzWSdso8ik98jVXY27+/u01tA97cyjyVVIXlXll7pyfcwpJvmer3gKKfInUR5GXSrAUvO4KSe7YB46N2nDNkwacJbeoEXJ77iLNd1aGzhpiQY2M5xB5DOVy7uaKbbqolr3fRZ2JbiAPLUdIc4U8KHa/BBgAUTGEc9A6EQQAAAAASUVORK5CYII="}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/49265.c208ef8379e073f94d16.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.281Z","timestamp":1785159269281,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/49265.c208ef8379e073f94d16.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a435fcb-4ddf\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 30 Jun 2026 06:18:51 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/30/2026 11:55:09\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9886026fbfba69407086817d1e4dacb5\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"]}],"data":{"size":19935,"size_decoded":7323,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"7b82078f584e6803982971fd98e254ad","sha1":"68381b82a3c15fb84e25d74f902a92fd1de3a245","sha256":"e79b56277f3ab3f995df2d44c612a393858265d70e8d4151a858384901aaa5ae","sha512":"856120280da4d842117fb927a8dbab94215dfb803172d5217ef06b3e3160c27bfbc9fda244b20ac94ce02cebb4356d25c92927cb9292b29f658e377fca579fec","ssdeep":"384:j9PRJCURbRGehSowQ7pJIdRW5TejB6ScRTtDe1efLBHxe+Wl2XaKKTV28fRJmRDM:RPTCURbwehStQ7pJIdk5TejB6ScZtDeb","tlshash":"7e92de8679c2f0e962d55cd4c07b4846f01a0d3c704db8e9e7e6c8d2da7a14ed436bba","first_seen":"2026-06-30T14:35:40.41523Z","last_seen":"2026-07-30T06:08:06.359896Z","times_seen":3281,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s0OTI2NV0sezc1Njg1MSh0KXsidXNlIHN0cmljdCI7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1bXSxyPXQubGVuZ3RoLG49MDtuPHI7bisrKXt2YXIgdT10LmNoYXJDb2RlQXQobik7aWYodT49NTUyOTYmJnU8PTU2MzE5JiZyPm4rMSl7dmFyIGE9dC5jaGFyQ29kZUF0KG4rMSk7YT49NTYzMjAmJmE8PTU3MzQzJiYodT0xMDI0Kih1LTU1Mjk2KSthLTU2MzIwKzY1NTM2LG4rPTEpfXU8MTI4P2UucHVzaCh1KTp1PDIwNDg/KGUucHVzaCh1Pj42fDE5MiksZS5wdXNoKDYzJnV8MTI4KSk6dTw1NTI5Nnx8dT49NTczNDQmJnU8NjU1MzY/KGUucHVzaCh1Pj4xMnwyMjQpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6dT49NjU1MzYmJnU8PTExMTQxMTE/KGUucHVzaCh1Pj4xOHwyNDApLGUucHVzaCh1Pj4xMiY2M3wxMjgpLGUucHVzaCh1Pj42JjYzfDEyOCksZS5wdXNoKDYzJnV8MTI4KSk6ZS5wdXNoKDIzOSwxOTEsMTg5KX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZSkuYnVmZmVyfX0sNTA0NDAyKHQsZSxyKXt2YXIgbj1yKDYzODIyMSk7dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiB0PW4odF49dD4+PjE2LDIyNDY4MjI1MDcpLHQ9bih0Xj10Pj4+MTMsMzI2NjQ4OTkwOSksKHRePXQ+Pj4xNik+Pj4wfX0sNjM4MjIxKHQpeyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9TWF0aC5pbXVsfHxmdW5jdGlvbih0LGUpe3ZhciByPTY1NTM1JnQsbj02NTUzNSZlO3JldHVybiByKm4rKCh0Pj4+MTYmNjU1MzUpKm4rciooZT4+PjE2JjY1NTM1KTw8MTY+Pj4wKXwwfX0sMTAwNTk1KHQsZSxyKXt2YXIgbj1yKDYzODIyMSksdT1yKDUwNDQwMiksYT1yKDc1Njg1MSksbz1uZXcgVWludDMyQXJyYXkoWzM0MzI5MTgzNTMsNDYxODQ1OTA3XSk7ZnVuY3Rpb24gYyh0LGUpe3JldHVybiB0PDxlfHQ+Pj4zMi1lfXQuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2lmKGU9ZT8wfGU6MCwic3RyaW5nIj09dHlwZW9mIHQmJih0PWEodCkpLCEodCBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBrZXkgdG8gYmUgQXJyYXlCdWZmZXIgb3Igc3RyaW5nIik7dmFyIHI9bmV3IFVpbnQzMkFycmF5KFtlXSk7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT1uZXcgVWludDMyQXJyYXkodCwwLHIpLGE9MDthPHI7YSsrKXVbYV09bih1W2FdLG9bMF0pLHVbYV09Yyh1W2FdLDE1KSx1W2FdPW4odVthXSxvWzFdKSxlWzBdPWVbMF1edVthXSxlWzBdPWMoZVswXSwxMyksZVswXT1uKGVbMF0sNSkrMzg2NDI5MjE5Nn0odCxyKSxmdW5jdGlvbih0LGUpe3ZhciByPXQuYnl0ZUxlbmd0aC80fDAsdT10LmJ5dGVMZW5ndGglNCxhPTAsZj1uZXcgVWludDhBcnJheSh0LDQqcix1KTtzd2l0Y2godSl7Y2FzZSAzOmFePWZbMl08PDE2O2Nhc2UgMjphXj1mWzFdPDw4O2Nhc2UgMTphXj1mWzBdLGE9YyhhPW4oYSxvWzBdKSwxNSksYT1uKGEsb1sxXSksZVswXT1lWzBdXmF9fSh0LHIpLGZ1bmN0aW9uKHQsZSl7ZVswXT1lWzBdXnQuYnl0ZUxlbmd0aCxlWzBdPXUoZVswXSl9KHQsciksci5idWZmZXJ9fSw0MTQxMjModCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoMTYyMzE2KSx1PXIoOTgxNTIzKTtjb25zdCBhPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJTZXQiKX0sMjY5MzY2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDcxMzE0OCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5zZXQodCwiX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyIpLHRoaXN9O2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKHQpfTtmdW5jdGlvbiBvKHQpe3ZhciBlPS0xLHI9bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQ7KytlPHI7KXRoaXMuYWRkKHRbZV0pfW8ucHJvdG90eXBlLmFkZD1vLnByb3RvdHlwZS5wdXNoPXUsby5wcm90b3R5cGUuaGFzPWE7Y29uc3QgYz1vfSw4ODY1MTQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoNzM1OTgzKTtjb25zdCB1PWZ1bmN0aW9uKCl7dGhpcy5fX2RhdGFfXz1uZXcgbi5kZWZhdWx0LHRoaXMuc2l6ZT0wfTtjb25zdCBhPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX18scj1lLmRlbGV0ZSh0KTtyZXR1cm4gdGhpcy5zaXplPWUuc2l6ZSxyfTtjb25zdCBvPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9fZGF0YV9fLmdldCh0KX07Y29uc3QgYz1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5oYXModCl9O3ZhciBmPXIoNjk0MjEpLHM9cig3MTMxNDgpO2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj10aGlzLl9fZGF0YV9fO2lmKHIgaW5zdGFuY2VvZiBuLmRlZmF1bHQpe3ZhciB1PXIuX19kYXRhX187aWYoIWYuZGVmYXVsdHx8dS5sZW5ndGg8MTk5KXJldHVybiB1LnB1c2goW3QsZV0pLHRoaXMuc2l6ZT0rK3Iuc2l6ZSx0aGlzO3I9dGhpcy5fX2RhdGFfXz1uZXcgcy5kZWZhdWx0KHUpfXJldHVybiByLnNldCh0LGUpLHRoaXMuc2l6ZT1yLnNpemUsdGhpc307ZnVuY3Rpb24gbCh0KXt2YXIgZT10aGlzLl9fZGF0YV9fPW5ldyBuLmRlZmF1bHQodCk7dGhpcy5zaXplPWUuc2l6ZX1sLnByb3RvdHlwZS5jbGVhcj11LGwucHJvdG90eXBlLmRlbGV0ZT1hLGwucHJvdG90eXBlLmdldD1vLGwucHJvdG90eXBlLmhhcz1jLGwucHJvdG90eXBlLnNldD1pO2NvbnN0IGQ9bH0sODY1MzMwKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPXIoOTgxNTIzKS5kZWZhdWx0LlVpbnQ4QXJyYXl9LDkyODQ1Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjIzMTYpLHU9cig5ODE1MjMpO2NvbnN0IGE9KDAsbi5kZWZhdWx0KSh1LmRlZmF1bHQsIldlYWtNYXAiKX0sCjk4NDEzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK3I8biYmITEhPT1lKHRbcl0scix0KTspO3JldHVybiB0fX0sMjI0NDE2KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PmN9KTt2YXIgbj1yKDY4ODk2NSk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdCE9dH07Y29uc3QgYT1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPXItMSx1PXQubGVuZ3RoOysrbjx1OylpZih0W25dPT09ZSlyZXR1cm4gbjtyZXR1cm4tMX07Y29uc3Qgbz1mdW5jdGlvbih0LGUscil7cmV0dXJuIGU9PWU/YSh0LGUscik6KDAsbi5kZWZhdWx0KSh0LHUscil9O2NvbnN0IGM9ZnVuY3Rpb24odCxlKXtyZXR1cm4hIShudWxsPT10PzA6dC5sZW5ndGgpJiZvKHQsZSwwKT4tMX19LDgyNTAzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscil7Zm9yKHZhciBuPS0xLHU9bnVsbD09dD8wOnQubGVuZ3RoOysrbjx1OylpZihyKGUsdFtuXSkpcmV0dXJuITA7cmV0dXJuITF9fSw4MjA5NzUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1BcnJheSh0KTsrK3I8dDspbltyXT1lKHIpO3JldHVybiBufTt2YXIgdT1yKDUzMTU1NyksYT1yKDI5NTYzNSksbz1yKDY1OTAxOCksYz1yKDkyMTE0MyksZj1yKDE2NTI2Nykscz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IGk9ZnVuY3Rpb24odCxlKXt2YXIgcj0oMCxhLmRlZmF1bHQpKHQpLGk9IXImJigwLHUuZGVmYXVsdCkodCksbD0hciYmIWkmJigwLG8uZGVmYXVsdCkodCksZD0hciYmIWkmJiFsJiYoMCxmLmRlZmF1bHQpKHQpLHY9cnx8aXx8bHx8ZCxwPXY/bih0Lmxlbmd0aCxTdHJpbmcpOltdLGI9cC5sZW5ndGg7Zm9yKHZhciB5IGluIHQpIWUmJiFzLmNhbGwodCx5KXx8diYmKCJsZW5ndGgiPT15fHxsJiYoIm9mZnNldCI9PXl8fCJwYXJlbnQiPT15KXx8ZCYmKCJidWZmZXIiPT15fHwiYnl0ZUxlbmd0aCI9PXl8fCJieXRlT2Zmc2V0Ij09eSl8fCgwLGMuZGVmYXVsdCkoeSxiKSl8fHAucHVzaCh5KTtyZXR1cm4gcH19LDQ0ODYyNih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj0tMSxuPWUubGVuZ3RoLHU9dC5sZW5ndGg7KytyPG47KXRbdStyXT1lW3JdO3JldHVybiB0fX0sMTY4NTMzKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDI1NDczOCksdT1yKDkxMDc3OCksYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IG89ZnVuY3Rpb24odCxlLHIpe3ZhciBvPXRbZV07YS5jYWxsKHQsZSkmJigwLHUuZGVmYXVsdCkobyxyKSYmKHZvaWQgMCE9PXJ8fGUgaW4gdCl8fCgwLG4uZGVmYXVsdCkodCxlLHIpfX0sMjU0NzM4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDM2MDQ5KTtjb25zdCB1PWZ1bmN0aW9uKHQsZSxyKXsiX19wcm90b19fIj09ZSYmbi5kZWZhdWx0PygwLG4uZGVmYXVsdCkodCxlLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx2YWx1ZTpyLHdyaXRhYmxlOiEwfSk6dFtlXT1yfX0sNDkzMDE4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pkh9KTt2YXIgbj1yKDg4NjUxNCksdT1yKDk4NDEzOSksYT1yKDE2ODUzMyksbz1yKDYxODU3KSxjPXIoMzA5MDgwKTtjb25zdCBmPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQmJigwLG8uZGVmYXVsdCkoZSwoMCxjLmRlZmF1bHQpKGUpLHQpfTt2YXIgcz1yKDIxNzQ1Nyk7Y29uc3QgaT1mdW5jdGlvbih0LGUpe3JldHVybiB0JiYoMCxvLmRlZmF1bHQpKGUsKDAscy5kZWZhdWx0KShlKSx0KX07dmFyIGw9cig0ODcwNjApLGQ9cig3MDU3NDkpLHY9cigyMzA5NTEpO2NvbnN0IHA9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsdi5kZWZhdWx0KSh0KSxlKX07dmFyIGI9cigxMTY2NDEpO2NvbnN0IHk9ZnVuY3Rpb24odCxlKXtyZXR1cm4oMCxvLmRlZmF1bHQpKHQsKDAsYi5kZWZhdWx0KSh0KSxlKX07dmFyIGg9cig4MDYyNDApLGo9cig5OTE1OTkpLGc9cig5Njk3ODUpLHc9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBfPWZ1bmN0aW9uKHQpe3ZhciBlPXQubGVuZ3RoLHI9bmV3IHQuY29uc3RydWN0b3IoZSk7cmV0dXJuIGUmJiJzdHJpbmciPT10eXBlb2YgdFswXSYmdy5jYWxsKHQsImluZGV4IikmJihyLmluZGV4PXQuaW5kZXgsci5pbnB1dD10LmlucHV0KSxyfTt2YXIgQT1yKDM3NzI1MSk7Y29uc3QgbT1mdW5jdGlvbih0LGUpe3ZhciByPWU/KDAsQS5kZWZhdWx0KSh0LmJ1ZmZlcik6dC5idWZmZXI7cmV0dXJuIG5ldyB0LmNvbnN0cnVjdG9yKHIsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9O3ZhciBPPS9cdyokLztjb25zdCB4PWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyB0LmNvbnN0cnVjdG9yKHQuc291cmNlLE8uZXhlYyh0KSk7cmV0dXJuIGUubGFzdEluZGV4PXQubGFzdEluZGV4LGV9O3ZhciBVPXIoODcyOTk5KSxFPVUuZGVmYXVsdD9VLmRlZmF1bHQucHJvdG90eXBlOnZvaWQgMCxUPUU/RS52YWx1ZU9mOnZvaWQgMDtjb25zdCBTPWZ1bmN0aW9uKHQpe3JldHVybiBUP09iamVjdChULmNhbGwodCkpOnt9fTt2YXIgST1yKDEzOTA3KTtjb25zdCBNPWZ1bmN0aW9uKHQsZSxyKXt2YXIgbj10LmNvbnN0cnVjdG9yO3N3aXRjaChlKXtjYXNlIltvYmplY3QgQXJyYXlCdWZmZXJdIjpyZXR1cm4oMCxBLmRlZmF1bHQpKHQpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpyZXR1cm4gbmV3IG4oK3QpO2Nhc2UiW29iamVjdCBEYXRhVmlld10iOnJldHVybiBtKHQscik7Y2FzZSJbb2JqZWN0IEZsb2F0MzJBcnJheV0iOmNhc2UiW29iamVjdCBGbG9hdDY0QXJyYXldIjoKY2FzZSJbb2JqZWN0IEludDhBcnJheV0iOmNhc2UiW29iamVjdCBJbnQxNkFycmF5XSI6Y2FzZSJbb2JqZWN0IEludDMyQXJyYXldIjpjYXNlIltvYmplY3QgVWludDhBcnJheV0iOmNhc2UiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MTZBcnJheV0iOmNhc2UiW29iamVjdCBVaW50MzJBcnJheV0iOnJldHVybigwLEkuZGVmYXVsdCkodCxyKTtjYXNlIltvYmplY3QgTWFwXSI6Y2FzZSJbb2JqZWN0IFNldF0iOnJldHVybiBuZXcgbjtjYXNlIltvYmplY3QgTnVtYmVyXSI6Y2FzZSJbb2JqZWN0IFN0cmluZ10iOnJldHVybiBuZXcgbih0KTtjYXNlIltvYmplY3QgUmVnRXhwXSI6cmV0dXJuIHgodCk7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOnJldHVybiBTKHQpfX07dmFyIEI9cig4MDc1NzUpLFA9cigyOTU2MzUpLGs9cig2NTkwMTgpLHo9cig2NzI1MTEpLEM9cig4ODAxMTUpLEQ9cigzNjA2MjApO2NvbnN0IEY9ZnVuY3Rpb24odCl7cmV0dXJuKDAsRC5kZWZhdWx0KSh0KSYmIltvYmplY3QgU2V0XSI9PSgwLGcuZGVmYXVsdCkodCl9O3ZhciBMPXIoODk5MzM5KSxOPXIoMzY5ODk5KSxXPU4uZGVmYXVsdCYmTi5kZWZhdWx0LmlzU2V0O2NvbnN0IFY9Vz8oMCxMLmRlZmF1bHQpKFcpOkY7dmFyICQ9IltvYmplY3QgQXJndW1lbnRzXSIsUj0iW29iamVjdCBGdW5jdGlvbl0iLHE9IltvYmplY3QgT2JqZWN0XSIsRz17fTtHWyRdPUdbIltvYmplY3QgQXJyYXldIl09R1siW29iamVjdCBBcnJheUJ1ZmZlcl0iXT1HWyJbb2JqZWN0IERhdGFWaWV3XSJdPUdbIltvYmplY3QgQm9vbGVhbl0iXT1HWyJbb2JqZWN0IERhdGVdIl09R1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09R1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09R1siW29iamVjdCBJbnQ4QXJyYXldIl09R1siW29iamVjdCBJbnQxNkFycmF5XSJdPUdbIltvYmplY3QgSW50MzJBcnJheV0iXT1HWyJbb2JqZWN0IE1hcF0iXT1HWyJbb2JqZWN0IE51bWJlcl0iXT1HW3FdPUdbIltvYmplY3QgUmVnRXhwXSJdPUdbIltvYmplY3QgU2V0XSJdPUdbIltvYmplY3QgU3RyaW5nXSJdPUdbIltvYmplY3QgU3ltYm9sXSJdPUdbIltvYmplY3QgVWludDhBcnJheV0iXT1HWyJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSJdPUdbIltvYmplY3QgVWludDE2QXJyYXldIl09R1siW29iamVjdCBVaW50MzJBcnJheV0iXT0hMCxHWyJbb2JqZWN0IEVycm9yXSJdPUdbUl09R1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IEg9ZnVuY3Rpb24gdChlLHIsbyx2LGIsdyl7dmFyIEEsbT0xJnIsTz0yJnIseD00JnI7aWYobyYmKEE9Yj9vKGUsdixiLHcpOm8oZSkpLHZvaWQgMCE9PUEpcmV0dXJuIEE7aWYoISgwLEMuZGVmYXVsdCkoZSkpcmV0dXJuIGU7dmFyIFU9KDAsUC5kZWZhdWx0KShlKTtpZihVKXtpZihBPV8oZSksIW0pcmV0dXJuKDAsZC5kZWZhdWx0KShlLEEpfWVsc2V7dmFyIEU9KDAsZy5kZWZhdWx0KShlKSxUPUU9PVJ8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PUU7aWYoKDAsay5kZWZhdWx0KShlKSlyZXR1cm4oMCxsLmRlZmF1bHQpKGUsbSk7aWYoRT09cXx8RT09JHx8VCYmIWIpe2lmKEE9T3x8VD97fTooMCxCLmRlZmF1bHQpKGUpLCFtKXJldHVybiBPP3koZSxpKEEsZSkpOnAoZSxmKEEsZSkpfWVsc2V7aWYoIUdbRV0pcmV0dXJuIGI/ZTp7fTtBPU0oZSxFLG0pfX13fHwodz1uZXcgbi5kZWZhdWx0KTt2YXIgUz13LmdldChlKTtpZihTKXJldHVybiBTO3cuc2V0KGUsQSksVihlKT9lLmZvckVhY2goKGZ1bmN0aW9uKG4pe0EuYWRkKHQobixyLG8sbixlLHcpKX0pKTooMCx6LmRlZmF1bHQpKGUpJiZlLmZvckVhY2goKGZ1bmN0aW9uKG4sdSl7QS5zZXQodSx0KG4scixvLHUsZSx3KSl9KSk7dmFyIEk9eD9PP2ouZGVmYXVsdDpoLmRlZmF1bHQ6Tz9zLmRlZmF1bHQ6Yy5kZWZhdWx0LEQ9VT92b2lkIDA6SShlKTtyZXR1cm4oMCx1LmRlZmF1bHQpKER8fGUsKGZ1bmN0aW9uKG4sdSl7RCYmKG49ZVt1PW5dKSwoMCxhLmRlZmF1bHQpKEEsdSx0KG4scixvLHUsZSx3KSl9KSksQX19LDg1MTA4Mih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig4ODAxMTUpLHU9T2JqZWN0LmNyZWF0ZTtjb25zdCBhPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe31yZXR1cm4gZnVuY3Rpb24oZSl7aWYoISgwLG4uZGVmYXVsdCkoZSkpcmV0dXJue307aWYodSlyZXR1cm4gdShlKTt0LnByb3RvdHlwZT1lO3ZhciByPW5ldyB0O3JldHVybiB0LnByb3RvdHlwZT12b2lkIDAscn19KCl9LDY4ODk2NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0LGUscixuKXtmb3IodmFyIHU9dC5sZW5ndGgsYT1yKyhuPzE6LTEpO24/YS0tOisrYTx1OylpZihlKHRbYV0sYSx0KSlyZXR1cm4gYTtyZXR1cm4tMX19LDkxNjA4NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig0NDg2MjYpLHU9cigyOTU2MzUpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIpe3ZhciBhPWUodCk7cmV0dXJuKDAsdS5kZWZhdWx0KSh0KT9hOigwLG4uZGVmYXVsdCkoYSxyKHQpKX19LDgzMDg3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig2OTM5NDEpO2NvbnN0IHU9KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5rZXlzLE9iamVjdCk7dmFyIGE9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBvPWZ1bmN0aW9uKHQpe2lmKCEoMCxuLmRlZmF1bHQpKHQpKXJldHVybiB1KHQpO3ZhciBlPVtdO2Zvcih2YXIgciBpbiBPYmplY3QodCkpYS5jYWxsKHQscikmJiJjb25zdHJ1Y3RvciIhPXImJmUucHVzaChyKTtyZXR1cm4gZX19LDg5OTMzOSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5ufSk7Y29uc3Qgbj1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIHQoZSl9fX0sNzEyODAxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuaGFzKGUpfX0sCjM3NzI1MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49cig4NjUzMzApO2NvbnN0IHU9ZnVuY3Rpb24odCl7dmFyIGU9bmV3IHQuY29uc3RydWN0b3IodC5ieXRlTGVuZ3RoKTtyZXR1cm4gbmV3IG4uZGVmYXVsdChlKS5zZXQobmV3IG4uZGVmYXVsdCh0KSksZX19LDQ4NzA2MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5mfSk7dmFyIG49cig5ODE1MjMpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXU/bi5kZWZhdWx0LkJ1ZmZlcjp2b2lkIDAsYz1vP28uYWxsb2NVbnNhZmU6dm9pZCAwO2NvbnN0IGY9ZnVuY3Rpb24odCxlKXtpZihlKXJldHVybiB0LnNsaWNlKCk7dmFyIHI9dC5sZW5ndGgsbj1jP2Mocik6bmV3IHQuY29uc3RydWN0b3Iocik7cmV0dXJuIHQuY29weShuKSxufX0sMTM5MDcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMzc3MjUxKTtjb25zdCB1PWZ1bmN0aW9uKHQsZSl7dmFyIHI9ZT8oMCxuLmRlZmF1bHQpKHQuYnVmZmVyKTp0LmJ1ZmZlcjtyZXR1cm4gbmV3IHQuY29uc3RydWN0b3Iocix0LmJ5dGVPZmZzZXQsdC5sZW5ndGgpfX0sNzA1NzQ5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQsZSl7dmFyIHI9LTEsbj10Lmxlbmd0aDtmb3IoZXx8KGU9QXJyYXkobikpOysrcjxuOyllW3JdPXRbcl07cmV0dXJuIGV9fSw2MTg1Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNjg1MzMpLHU9cigyNTQ3MzgpO2NvbnN0IGE9ZnVuY3Rpb24odCxlLHIsYSl7dmFyIG89IXI7cnx8KHI9e30pO2Zvcih2YXIgYz0tMSxmPWUubGVuZ3RoOysrYzxmOyl7dmFyIHM9ZVtjXSxpPWE/YShyW3NdLHRbc10scyxyLHQpOnZvaWQgMDt2b2lkIDA9PT1pJiYoaT10W3NdKSxvPygwLHUuZGVmYXVsdCkocixzLGkpOigwLG4uZGVmYXVsdCkocixzLGkpfXJldHVybiByfX0sMzYwNDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPXIoMTYyMzE2KTtjb25zdCB1PWZ1bmN0aW9uKCl7dHJ5e3ZhciB0PSgwLG4uZGVmYXVsdCkoT2JqZWN0LCJkZWZpbmVQcm9wZXJ0eSIpO3JldHVybiB0KHt9LCIiLHt9KSx0fWNhdGNoKHQpe319KCl9LDgwNjI0MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig5MTYwODUpLHU9cigyMzA5NTEpLGE9cigzMDkwODApO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsbi5kZWZhdWx0KSh0LGEuZGVmYXVsdCx1LmRlZmF1bHQpfX0sOTkxNTk5KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm99KTt2YXIgbj1yKDkxNjA4NSksdT1yKDExNjY0MSksYT1yKDIxNzQ1Nyk7Y29uc3Qgbz1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsYS5kZWZhdWx0LHUuZGVmYXVsdCl9fSwzOTI1NDUodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49KDAscigxMzk4NDkpLmRlZmF1bHQpKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpfSwyMzA5NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtmb3IodmFyIHI9LTEsbj1udWxsPT10PzA6dC5sZW5ndGgsdT0wLGE9W107KytyPG47KXt2YXIgbz10W3JdO2UobyxyLHQpJiYoYVt1KytdPW8pfXJldHVybiBhfTt2YXIgdT1yKDE3NzY1NSksYT1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLG89T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scztjb25zdCBjPW8/ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/W106KHQ9T2JqZWN0KHQpLG4obyh0KSwoZnVuY3Rpb24oZSl7cmV0dXJuIGEuY2FsbCh0LGUpfSkpKX06dS5kZWZhdWx0fSwxMTY2NDEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Y30pO3ZhciBuPXIoNDQ4NjI2KSx1PXIoMzkyNTQ1KSxhPXIoMjMwOTUxKSxvPXIoMTc3NjU1KTtjb25zdCBjPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/ZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdO3Q7KSgwLG4uZGVmYXVsdCkoZSwoMCxhLmRlZmF1bHQpKHQpKSx0PSgwLHUuZGVmYXVsdCkodCk7cmV0dXJuIGV9Om8uZGVmYXVsdH0sOTY5Nzg1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm19KTt2YXIgbj1yKDE2MjMxNiksdT1yKDk4MTUyMyk7Y29uc3QgYT0oMCxuLmRlZmF1bHQpKHUuZGVmYXVsdCwiRGF0YVZpZXciKTt2YXIgbz1yKDY5NDIxKTtjb25zdCBjPSgwLG4uZGVmYXVsdCkodS5kZWZhdWx0LCJQcm9taXNlIik7dmFyIGY9cig0MTQxMjMpLHM9cig5Mjg0NTMpLGk9cigxNzg0OTcpLGw9cig3MzA1MDMpLGQ9IltvYmplY3QgTWFwXSIsdj0iW29iamVjdCBQcm9taXNlXSIscD0iW29iamVjdCBTZXRdIixiPSJbb2JqZWN0IFdlYWtNYXBdIix5PSJbb2JqZWN0IERhdGFWaWV3XSIsaD0oMCxsLmRlZmF1bHQpKGEpLGo9KDAsbC5kZWZhdWx0KShvLmRlZmF1bHQpLGc9KDAsbC5kZWZhdWx0KShjKSx3PSgwLGwuZGVmYXVsdCkoZi5kZWZhdWx0KSxfPSgwLGwuZGVmYXVsdCkocy5kZWZhdWx0KSxBPWkuZGVmYXVsdDsoYSYmQShuZXcgYShuZXcgQXJyYXlCdWZmZXIoMSkpKSE9eXx8by5kZWZhdWx0JiZBKG5ldyBvLmRlZmF1bHQpIT1kfHxjJiZBKGMucmVzb2x2ZSgpKSE9dnx8Zi5kZWZhdWx0JiZBKG5ldyBmLmRlZmF1bHQpIT1wfHxzLmRlZmF1bHQmJkEobmV3IHMuZGVmYXVsdCkhPWIpJiYoQT1mdW5jdGlvbih0KXt2YXIgZT0oMCxpLmRlZmF1bHQpKHQpLHI9IltvYmplY3QgT2JqZWN0XSI9PWU/dC5jb25zdHJ1Y3Rvcjp2b2lkIDAsbj1yPygwLGwuZGVmYXVsdCkocik6IiI7aWYobilzd2l0Y2gobil7Y2FzZSBoOgpyZXR1cm4geTtjYXNlIGo6cmV0dXJuIGQ7Y2FzZSBnOnJldHVybiB2O2Nhc2UgdzpyZXR1cm4gcDtjYXNlIF86cmV0dXJuIGJ9cmV0dXJuIGV9KTtjb25zdCBtPUF9LDgwNzU3NSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4NTEwODIpLHU9cigzOTI1NDUpLGE9cig2OTM5NDEpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIHQuY29uc3RydWN0b3J8fCgwLGEuZGVmYXVsdCkodCk/e306KDAsbi5kZWZhdWx0KSgoMCx1LmRlZmF1bHQpKHQpKX19LDkyMTE0Myh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49L14oPzowfFsxLTldXGQqKSQvO2NvbnN0IHU9ZnVuY3Rpb24odCxlKXt2YXIgcj10eXBlb2YgdDtyZXR1cm4hIShlPWU/PzkwMDcxOTkyNTQ3NDA5OTEpJiYoIm51bWJlciI9PXJ8fCJzeW1ib2wiIT1yJiZuLnRlc3QodCkpJiZ0Pi0xJiZ0JTE9PTAmJnQ8ZX19LDY5Mzk0MSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT51fSk7dmFyIG49T2JqZWN0LnByb3RvdHlwZTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXQmJnQuY29uc3RydWN0b3I7cmV0dXJuIHQ9PT0oImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUucHJvdG90eXBlfHxuKX19LDM2OTg5OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5jfSk7dmFyIG49cig2MDI5NDIpLHU9Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiZleHBvcnRzJiYhZXhwb3J0cy5ub2RlVHlwZSYmZXhwb3J0cyxhPXUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlJiZtb2R1bGUmJiFtb2R1bGUubm9kZVR5cGUmJm1vZHVsZSxvPWEmJmEuZXhwb3J0cz09PXUmJm4uZGVmYXVsdC5wcm9jZXNzO2NvbnN0IGM9ZnVuY3Rpb24oKXt0cnl7dmFyIHQ9YSYmYS5yZXF1aXJlJiZhLnJlcXVpcmUoInV0aWwiKS50eXBlcztyZXR1cm4gdHx8byYmby5iaW5kaW5nJiZvLmJpbmRpbmcoInV0aWwiKX1jYXRjaCh0KXt9fSgpfSwxMzk4NDkodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCxlKXtyZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJuIHQoZShyKSl9fX0sOTcyMDE3KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKHQpe3ZhciBlPS0xLHI9QXJyYXkodC5zaXplKTtyZXR1cm4gdC5mb3JFYWNoKChmdW5jdGlvbih0KXtyWysrZV09dH0pKSxyfX0sMjAzNjgxKHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbj1yKDQ5MzAxOCk7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4oMCxuLmRlZmF1bHQpKHQsNSl9fSw1NDc4NTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoODgwMTE1KSx1PXIoOTgxNTIzKTtjb25zdCBhPWZ1bmN0aW9uKCl7cmV0dXJuIHUuZGVmYXVsdC5EYXRlLm5vdygpfTt2YXIgbz1yKDQwNjQ0OSksYz1NYXRoLm1heCxmPU1hdGgubWluO2NvbnN0IHM9ZnVuY3Rpb24odCxlLHIpe3ZhciB1LHMsaSxsLGQsdixwPTAsYj0hMSx5PSExLGg9ITA7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmdW5jdGlvbiIpO2Z1bmN0aW9uIGooZSl7dmFyIHI9dSxuPXM7cmV0dXJuIHU9cz12b2lkIDAscD1lLGw9dC5hcHBseShuLHIpfWZ1bmN0aW9uIGcodCl7dmFyIHI9dC12O3JldHVybiB2b2lkIDA9PT12fHxyPj1lfHxyPDB8fHkmJnQtcD49aX1mdW5jdGlvbiB3KCl7dmFyIHQ9YSgpO2lmKGcodCkpcmV0dXJuIF8odCk7ZD1zZXRUaW1lb3V0KHcsZnVuY3Rpb24odCl7dmFyIHI9ZS0odC12KTtyZXR1cm4geT9mKHIsaS0odC1wKSk6cn0odCkpfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGQ9dm9pZCAwLGgmJnU/aih0KToodT1zPXZvaWQgMCxsKX1mdW5jdGlvbiBBKCl7dmFyIHQ9YSgpLHI9Zyh0KTtpZih1PWFyZ3VtZW50cyxzPXRoaXMsdj10LHIpe2lmKHZvaWQgMD09PWQpcmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBwPXQsZD1zZXRUaW1lb3V0KHcsZSksYj9qKHQpOmx9KHYpO2lmKHkpcmV0dXJuIGNsZWFyVGltZW91dChkKSxkPXNldFRpbWVvdXQodyxlKSxqKHYpfXJldHVybiB2b2lkIDA9PT1kJiYoZD1zZXRUaW1lb3V0KHcsZSkpLGx9cmV0dXJuIGU9KDAsby5kZWZhdWx0KShlKXx8MCwoMCxuLmRlZmF1bHQpKHIpJiYoYj0hIXIubGVhZGluZyxpPSh5PSJtYXhXYWl0ImluIHIpP2MoKDAsby5kZWZhdWx0KShyLm1heFdhaXQpfHwwLGUpOmksaD0idHJhaWxpbmciaW4gcj8hIXIudHJhaWxpbmc6aCksQS5jYW5jZWw9ZnVuY3Rpb24oKXt2b2lkIDAhPT1kJiZjbGVhclRpbWVvdXQoZCkscD0wLHU9dj1zPWQ9dm9pZCAwfSxBLmZsdXNoPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMD09PWQ/bDpfKGEoKSl9LEF9fSw1MzE1NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoMTc4NDk3KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IEFyZ3VtZW50c10iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1PYmplY3QucHJvdG90eXBlLGM9by5oYXNPd25Qcm9wZXJ0eSxmPW8ucHJvcGVydHlJc0VudW1lcmFibGUscz1hKGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50c30oKSk/YTpmdW5jdGlvbih0KXtyZXR1cm4oMCx1LmRlZmF1bHQpKHQpJiZjLmNhbGwodCwiY2FsbGVlIikmJiFmLmNhbGwodCwiY2FsbGVlIil9O2NvbnN0IGk9c30sMjk1NjM1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPUFycmF5LmlzQXJyYXl9LDM5MjkwOCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cig5MjgxMzIpLHU9cig5OTA2MDQpO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJigwLHUuZGVmYXVsdCkodC5sZW5ndGgpJiYhKDAsbi5kZWZhdWx0KSh0KX19LDY1OTAxOCh0LGUscil7CiJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+Zn0pO3ZhciBuPXIoOTgxNTIzKTtjb25zdCB1PWZ1bmN0aW9uKCl7cmV0dXJuITF9O3ZhciBhPSJvYmplY3QiPT10eXBlb2YgZXhwb3J0cyYmZXhwb3J0cyYmIWV4cG9ydHMubm9kZVR5cGUmJmV4cG9ydHMsbz1hJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmbW9kdWxlJiYhbW9kdWxlLm5vZGVUeXBlJiZtb2R1bGUsYz1vJiZvLmV4cG9ydHM9PT1hP24uZGVmYXVsdC5CdWZmZXI6dm9pZCAwO2NvbnN0IGY9KGM/Yy5pc0J1ZmZlcjp2b2lkIDApfHx1fSw5OTA2MDQodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0JiZ0Pi0xJiZ0JTE9PTAmJnQ8PTkwMDcxOTkyNTQ3NDA5OTF9fSw2NzI1MTEodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+c30pO3ZhciBuPXIoOTY5Nzg1KSx1PXIoMzYwNjIwKTtjb25zdCBhPWZ1bmN0aW9uKHQpe3JldHVybigwLHUuZGVmYXVsdCkodCkmJiJbb2JqZWN0IE1hcF0iPT0oMCxuLmRlZmF1bHQpKHQpfTt2YXIgbz1yKDg5OTMzOSksYz1yKDM2OTg5OSksZj1jLmRlZmF1bHQmJmMuZGVmYXVsdC5pc01hcDtjb25zdCBzPWY/KDAsby5kZWZhdWx0KShmKTphfSwzNjA2MjAodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+bn0pO2NvbnN0IG49ZnVuY3Rpb24odCl7cmV0dXJuIG51bGwhPXQmJiJvYmplY3QiPT10eXBlb2YgdH19LDcxNzMzMih0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5hfSk7dmFyIG49cigxNzg0OTcpLHU9cigzNjA2MjApO2NvbnN0IGE9ZnVuY3Rpb24odCl7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiB0fHwoMCx1LmRlZmF1bHQpKHQpJiYiW29iamVjdCBTeW1ib2xdIj09KDAsbi5kZWZhdWx0KSh0KX19LDE2NTI2Nyh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5sfSk7dmFyIG49cigxNzg0OTcpLHU9cig5OTA2MDQpLGE9cigzNjA2MjApLG89e307b1siW29iamVjdCBGbG9hdDMyQXJyYXldIl09b1siW29iamVjdCBGbG9hdDY0QXJyYXldIl09b1siW29iamVjdCBJbnQ4QXJyYXldIl09b1siW29iamVjdCBJbnQxNkFycmF5XSJdPW9bIltvYmplY3QgSW50MzJBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQ4QXJyYXldIl09b1siW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iXT1vWyJbb2JqZWN0IFVpbnQxNkFycmF5XSJdPW9bIltvYmplY3QgVWludDMyQXJyYXldIl09ITAsb1siW29iamVjdCBBcmd1bWVudHNdIl09b1siW29iamVjdCBBcnJheV0iXT1vWyJbb2JqZWN0IEFycmF5QnVmZmVyXSJdPW9bIltvYmplY3QgQm9vbGVhbl0iXT1vWyJbb2JqZWN0IERhdGFWaWV3XSJdPW9bIltvYmplY3QgRGF0ZV0iXT1vWyJbb2JqZWN0IEVycm9yXSJdPW9bIltvYmplY3QgRnVuY3Rpb25dIl09b1siW29iamVjdCBNYXBdIl09b1siW29iamVjdCBOdW1iZXJdIl09b1siW29iamVjdCBPYmplY3RdIl09b1siW29iamVjdCBSZWdFeHBdIl09b1siW29iamVjdCBTZXRdIl09b1siW29iamVjdCBTdHJpbmddIl09b1siW29iamVjdCBXZWFrTWFwXSJdPSExO2NvbnN0IGM9ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KSYmKDAsdS5kZWZhdWx0KSh0Lmxlbmd0aCkmJiEhb1soMCxuLmRlZmF1bHQpKHQpXX07dmFyIGY9cig4OTkzMzkpLHM9cigzNjk4OTkpLGk9cy5kZWZhdWx0JiZzLmRlZmF1bHQuaXNUeXBlZEFycmF5O2NvbnN0IGw9aT8oMCxmLmRlZmF1bHQpKGkpOmN9LDMwOTA4MCh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49cig4MjA5NzUpLHU9cig4MzA4NzUpLGE9cigzOTI5MDgpO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuKDAsYS5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQpOigwLHUuZGVmYXVsdCkodCl9fSwyMTc0NTcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+aX0pO3ZhciBuPXIoODIwOTc1KSx1PXIoODgwMTE1KSxhPXIoNjkzOTQxKTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPVtdO2lmKG51bGwhPXQpZm9yKHZhciByIGluIE9iamVjdCh0KSllLnB1c2gocik7cmV0dXJuIGV9O3ZhciBjPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7Y29uc3QgZj1mdW5jdGlvbih0KXtpZighKDAsdS5kZWZhdWx0KSh0KSlyZXR1cm4gbyh0KTt2YXIgZT0oMCxhLmRlZmF1bHQpKHQpLHI9W107Zm9yKHZhciBuIGluIHQpKCJjb25zdHJ1Y3RvciIhPW58fCFlJiZjLmNhbGwodCxuKSkmJnIucHVzaChuKTtyZXR1cm4gcn07dmFyIHM9cigzOTI5MDgpO2NvbnN0IGk9ZnVuY3Rpb24odCl7cmV0dXJuKDAscy5kZWZhdWx0KSh0KT8oMCxuLmRlZmF1bHQpKHQsITApOmYodCl9fSw2NjMwNDYodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNzEzMTQ4KTtmdW5jdGlvbiB1KHQsZSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHR8fG51bGwhPWUmJiJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgZnVuY3Rpb24iKTt2YXIgcj1mdW5jdGlvbigpe3ZhciBuPWFyZ3VtZW50cyx1PWU/ZS5hcHBseSh0aGlzLG4pOm5bMF0sYT1yLmNhY2hlO2lmKGEuaGFzKHUpKXJldHVybiBhLmdldCh1KTt2YXIgbz10LmFwcGx5KHRoaXMsbik7cmV0dXJuIHIuY2FjaGU9YS5zZXQodSxvKXx8YSxvfTtyZXR1cm4gci5jYWNoZT1uZXcodS5DYWNoZXx8bi5kZWZhdWx0KSxyfXUuQ2FjaGU9bi5kZWZhdWx0O2NvbnN0IGE9dX0sODYyMzg4KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7fX0sMTc3NjU1KHQsZSxyKXsidXNlIHN0cmljdCI7ci5kKGUse2RlZmF1bHQ6KCk9Pm59KTtjb25zdCBuPWZ1bmN0aW9uKCl7cmV0dXJuW119fSw1ODcxNjgodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBuPXIoNTQ3ODUxKSx1PXIoODgwMTE1KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSxyKXsKdmFyIGE9ITAsbz0hMDtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZ1bmN0aW9uIik7cmV0dXJuKDAsdS5kZWZhdWx0KShyKSYmKGE9ImxlYWRpbmciaW4gcj8hIXIubGVhZGluZzphLG89InRyYWlsaW5nImluIHI/ISFyLnRyYWlsaW5nOm8pLCgwLG4uZGVmYXVsdCkodCxlLHtsZWFkaW5nOmEsbWF4V2FpdDplLHRyYWlsaW5nOm99KX19LDQwNjQ0OSh0LGUscil7InVzZSBzdHJpY3QiO3IuZChlLHtkZWZhdWx0OigpPT52fSk7dmFyIG49L1xzLztjb25zdCB1PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT10Lmxlbmd0aDtlLS0mJm4udGVzdCh0LmNoYXJBdChlKSk7KTtyZXR1cm4gZX07dmFyIGE9L15ccysvO2NvbnN0IG89ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dC5zbGljZSgwLHUodCkrMSkucmVwbGFjZShhLCIiKTp0fTt2YXIgYz1yKDg4MDExNSksZj1yKDcxNzMzMikscz0vXlstK10weFswLTlhLWZdKyQvaSxpPS9eMGJbMDFdKyQvaSxsPS9eMG9bMC03XSskL2ksZD1wYXJzZUludDtjb25zdCB2PWZ1bmN0aW9uKHQpe2lmKCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gdDtpZigoMCxmLmRlZmF1bHQpKHQpKXJldHVybiBOYU47aWYoKDAsYy5kZWZhdWx0KSh0KSl7dmFyIGU9ImZ1bmN0aW9uIj09dHlwZW9mIHQudmFsdWVPZj90LnZhbHVlT2YoKTp0O3Q9KDAsYy5kZWZhdWx0KShlKT9lKyIiOmV9aWYoInN0cmluZyIhPXR5cGVvZiB0KXJldHVybiAwPT09dD90Oit0O3Q9byh0KTt2YXIgcj1pLnRlc3QodCk7cmV0dXJuIHJ8fGwudGVzdCh0KT9kKHQuc2xpY2UoMikscj8yOjgpOnMudGVzdCh0KT9OYU46K3R9fSwzNTI4MzcodCxlLHIpeyJ1c2Ugc3RyaWN0IjtyLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBuPXIoMjY5MzY2KSx1PXIoMjI0NDE2KSxhPXIoODI1MDM5KSxvPXIoNzEyODAxKSxjPXIoNDE0MTIzKSxmPXIoODYyMzg4KSxzPXIoOTcyMDE3KTtjb25zdCBpPWMuZGVmYXVsdCYmMS8oMCxzLmRlZmF1bHQpKG5ldyBjLmRlZmF1bHQoWywtMF0pKVsxXT09MS8wP2Z1bmN0aW9uKHQpe3JldHVybiBuZXcgYy5kZWZhdWx0KHQpfTpmLmRlZmF1bHQ7Y29uc3QgbD1mdW5jdGlvbih0LGUscil7dmFyIGM9LTEsZj11LmRlZmF1bHQsbD10Lmxlbmd0aCxkPSEwLHY9W10scD12O2lmKHIpZD0hMSxmPWEuZGVmYXVsdDtlbHNlIGlmKGw+PTIwMCl7dmFyIGI9ZT9udWxsOmkodCk7aWYoYilyZXR1cm4oMCxzLmRlZmF1bHQpKGIpO2Q9ITEsZj1vLmRlZmF1bHQscD1uZXcgbi5kZWZhdWx0fWVsc2UgcD1lP1tdOnY7dDpmb3IoOysrYzxsOyl7dmFyIHk9dFtjXSxoPWU/ZSh5KTp5O2lmKHk9cnx8MCE9PXk/eTowLGQmJmg9PWgpe2Zvcih2YXIgaj1wLmxlbmd0aDtqLS07KWlmKHBbal09PT1oKWNvbnRpbnVlIHQ7ZSYmcC5wdXNoKGgpLHYucHVzaCh5KX1lbHNlIGYocCxoLHIpfHwocCE9PXYmJnAucHVzaChoKSx2LnB1c2goeSkpfXJldHVybiB2fTtjb25zdCBkPWZ1bmN0aW9uKHQpe3JldHVybiB0JiZ0Lmxlbmd0aD9sKHQpOltdfX19XSk7"}},"time_used":7,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":6,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/43325.256fa5a5213b9cb70f5c.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.267Z","timestamp":1785159269267,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/43325.256fa5a5213b9cb70f5c.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b74-b07\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:24 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:17:08\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: bf5220107e742c92451b343426573484\r\ncdn-cache: HIT\r\ncontent-encoding: br\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"]}],"data":{"size":2823,"size_decoded":1643,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2823), with no line terminators","md5":"9117f5417af5435afba6f7700053a6fc","sha1":"28521c103a762e72c133892f41ee2fb550e20888","sha256":"e121896dc20723795767320cb9facd147ce5ba20427b67b47b47eb2f85d85b67","sha512":"7e71e1b26466a549b6496d8e84f2581eff4877ff30f1d0deaa365a3c6729bf545e9672f4a4c8417b5dfe1c7d61cfd349b3c6d476823a50b074c4a6423cb09a67","ssdeep":"","tlshash":"275188abfbcb1e2de71bcea1e7a712ff91a405c1be584138e5b3ad71064ca741724184","first_seen":"2026-04-15T09:47:56.523899Z","last_seen":"2026-07-30T06:08:06.355505Z","times_seen":5233,"resource_available":false,"data":"LmxhYmVsLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDttYXgtd2lkdGg6MjhweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDZweDtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOm1heC13aWR0aCAuNnMgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHMsYmFja2dyb3VuZCAuM3MgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHM7ei1pbmRleDozfS5sYWJlbC1kemJkN2x5ViAubG9nb1dyYXAtZHpiZDdseVZ7cGFkZGluZy1pbmxpbmUtZW5kOjVweH0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWRCeUNsaWNrLWR6YmQ3bHlWLC5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWe21heC13aWR0aDoxMDVweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmxhYmVsLWR6YmQ3bHlWOmhvdmVye21heC13aWR0aDoxMDVweH19LmxhYmVsLWR6YmQ3bHlWOm5vdChhKXtjdXJzb3I6ZGVmYXVsdH0ubGFiZWwtZHpiZDdseVY6Zm9jdXN7b3V0bGluZTphdXRvO291dGxpbmUtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApO291dGxpbmUtb2Zmc2V0Oi0ycHg7b3V0bGluZS13aWR0aDoycHh9LmxhYmVsLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2luc2V0LWlubGluZS1zdGFydDo4cHh9LmxhYmVsLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzowIDJweCA0cHggMCB2YXIoLS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KX0ubGFiZWwtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2luc2V0LWlubGluZS1lbmQ6OHB4fS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MDtib3JkZXItZW5kLWVuZC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoxMnB4O2luc2V0LWlubGluZS1zdGFydDowfS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLmVuZC1kemJkN2x5Vntib3JkZXItcmFkaXVzOjA7Ym9yZGVyLWVuZC1zdGFydC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjEycHg7aW5zZXQtaW5saW5lLWVuZDowfS5sYWJlbC1kemJkN2x5Vi50b3AtZHpiZDdseVZ7dG9wOjhweH1AbWVkaWEgKG1heC1oZWlnaHQ6NTBweCl7LmxhYmVsLWR6YmQ3bHlWLnRvcC1kemJkN2x5Vnt0b3A6YXV0bzt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfX0ubGFiZWwtZHpiZDdseVYuYm90dG9tLWR6YmQ3bHlWe2JvdHRvbTo4cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTtib3JkZXItcmFkaXVzOjE3cHg7aGVpZ2h0OjM0cHg7bWF4LXdpZHRoOjM0cHg7cGFkZGluZzowIDZweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYgLmxvZ29XcmFwLWR6YmQ3bHlWe3BhZGRpbmctaW5saW5lLWVuZDo1cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzpub25lfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MCAxN3B4IDE3cHggMH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5zdGFydC1kemJkN2x5VjpkaXIocnRsKXtib3JkZXItcmFkaXVzOjE3cHggMCAwIDE3cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLnNuYXAtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTdweCAwIDAgMTdweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5lbmQtZHpiZDdseVY6ZGlyKHJ0bCl7Ym9yZGVyLXJhZGl1czowIDE3cHggMTdweCAwfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5leHBhbmRlZEJ5Q2xpY2stZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVZ7bWF4LXdpZHRoOjExMXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOjExMXB4fX0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVZ7bWF4LXdpZHRoOm5vbmU7dHJhbnNpdGlvbjpub25lfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOm5vbmV9fS5sYWJlbF9fbGluay1kemJkN2x5Vntib3JkZXItcmFkaXVzOmluaGVyaXQ7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZC1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkQnlDbGljay1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVYgLmxhYmVsX19saW5rLWR6YmQ3bHlWe3BvaW50ZXItZXZlbnRzOmF1dG99QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5sYWJlbC1kemJkN2x5Vjpob3ZlciAubGFiZWxfX2xpbmstZHpiZDdseVZ7cG9pbnRlci1ldmVudHM6YXV0b319"}},"time_used":28,"timings":{"blocked":-1,"dns":11,"connect":1,"send":0,"wait":17,"receive":0,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.307Z","timestamp":1785159268307,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 3846784\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 13:34:28 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=aQdbcKv3nmpodWWwqwXNssRUPFV6C0TnmM1Vs4NWD25rqjxtfsOStqf0WpwMyND4h3joUUL0AD0WnjshQlsBdLtIiahrVMBokqyMfynVVsbcTOh%2BPjzp8%2F5eSY3u\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0592e93d56a3-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":4388,"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-07-30T06:07:43.493012Z","times_seen":1711,"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":15,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/img-bg5.jpg","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.431Z","timestamp":1785159268431,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/img-bg5.jpg HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"22e66-66136805-fd41190b77afcc1d;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 142950\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":142950,"size_decoded":143280,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 1349x755, components 3","md5":"c656e380547a78c82408990ab738acc4","sha1":"f6552fe64caa5dce89980846752ee23703a80616","sha256":"90035b1a4ba1d7374c1224f1abe148a1e162cb87200f16498c19abce693a718a","sha512":"f659bd3975e748aa0e0603272acfcaf9bfec5d994083ca18b789fef48ade9e179881903b10f9fe408eafd9d58bf536ba5494a24b10b40cf896fa8cce74062692","ssdeep":"3072:Mx4gWNGCYDIQl8hszlc4j9BTonFg9WfRSDHW//Wm:ko6DIQl5jTTbcSD2/F","tlshash":"35d302e411917475fbe0cca937f3602b100f6e5413ba1d6d9cd753ef6a40daeca9a881","first_seen":"2026-07-27T07:08:39.274956Z","last_seen":"2026-07-27T13:35:41.602064Z","times_seen":3,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjJFNTIwMDg2MUJBODExRUM5OEJFOTc3NDNFRDBFQjFCIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjJFNTIwMDg3MUJBODExRUM5OEJFOTc3NDNFRDBFQjFCIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MkU1MjAwODQxQkE4MTFFQzk4QkU5Nzc0M0VEMEVCMUIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MkU1MjAwODUxQkE4MTFFQzk4QkU5Nzc0M0VEMEVCMUIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAGBAQEBQQGBQUGCQYFBgkLCAYG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"}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/512.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.621Z","timestamp":1785159268621,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/512.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2552\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:35:14 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:24:43 GMT\r\ncache-control: max-age=86400\r\netag: \"51cec93b9021a4e88470ef0ff6a4ff76\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 36586\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: iGyHAsBOcCpKKeFPv8-gkk11-aF6JmbEH6e_ciPpPC-MW9jcLg0Kvg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2552,"size_decoded":3078,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"51cec93b9021a4e88470ef0ff6a4ff76","sha1":"4dce5c11e1c9988f8c2985dfdd9eaf25057b9c64","sha256":"ee839df8763a293723c6b3727d4891d06fe4f151216b5e7b7b900bf8f03cecae","sha512":"7b04b9e4013baea8aaeeced565a4665138cdbd24609d34b618172d3ddac01cca48506257de05ec0e8c6c1b1d9569f53e17dbcaed45fd6ec4a60db57dc05c7b10","ssdeep":"","tlshash":"0c511a6873a9aae7f44fb03096f265114e20aeb007e24d82b63565b5ca1481282367bb","first_seen":"2023-05-25T22:55:54Z","last_seen":"2026-07-29T06:14:00.451178Z","times_seen":1486,"resource_available":false,"data":"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"}},"time_used":34,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":11,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/6636.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.664Z","timestamp":1785159268664,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/6636.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1745\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 23 Dec 2025 07:43:14 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:13:57 GMT\r\ncache-control: public, max-age=86400\r\netag: \"9354a310aca2467883088a4c17693018\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 22832\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: ksCzTRgf0DeEA9oncA3lxP1zw0XYHwCemFx3lPzR_woUORPktNNzAw==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":1745,"size_decoded":2317,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"9354a310aca2467883088a4c17693018","sha1":"8b68d24379142124633ae339e148c3db3baa73e8","sha256":"66498e82dee76d44bd12f5517f74785af51b6c23c7895fe18684ac914abf33c1","sha512":"597efe5d74e6c66063f06724931aec73e4edb064bc939ed48618af592bd8b602694ad04a1534c816ce8c334d6711affc474f99f45f0338919a7a5413eea29966","ssdeep":"","tlshash":"6f31c5d01452a47bb1030b9196bfc6b14e7024f800ced7bc946a48d273399ba78960a4","first_seen":"2025-12-23T14:18:57.776197Z","last_seen":"2026-07-29T06:14:00.410724Z","times_seen":1452,"resource_available":false,"data":"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"}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/ser-ico2.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.937Z","timestamp":1785159267937,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/ser-ico2.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"aad-66136805-62240c5b504b479f;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2733\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2733,"size_decoded":3058,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"8e9f887a30569ff62abd02e98973edf4","sha1":"08c742a4483ef5a59dc60d2ca9427a2008f76daf","sha256":"86507555352543da318a00ec767be4a2cf7a5ee127ec53256141a7542cc1c967","sha512":"9ad2c56c679ed5303cc0f109143d80f7fe04041898c6247256dd51639d1e4f884039ef013d25ba8aae0118700de234fcb62242f99f1715cc2aec33ecc6ea5570","ssdeep":"","tlshash":"ee512beef8a0c851f54bdac07ce380229b5343e2e7d0d56565cec7014a770738996acb","first_seen":"2026-07-27T07:08:39.414922Z","last_seen":"2026-07-27T13:35:41.645297Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MUI4NTJBMTcxQjc4MTFFQ0JBNzE4RjdDNTQ1MzkxNEUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MUI4NTJBMTgxQjc4MTFFQ0JBNzE4RjdDNTQ1MzkxNEUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxQjg1MkExNTFCNzgxMUVDQkE3MThGN0M1NDUzOTE0RSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxQjg1MkExNjFCNzgxMUVDQkE3MThGN0M1NDUzOTE0RSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pj53/YsAAAchSURBVHja7JwJbBRV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"}},"time_used":74,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":56,"receive":18,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1831.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.628Z","timestamp":1785159268628,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1831.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2694\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 03:10:17 GMT\r\nlast-modified: Tue, 19 Oct 2021 05:33:50 GMT\r\netag: \"6ad5509616a5fca9f389801052bea3fe\"\r\ncache-control: max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 37451\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: GMqE-at3LRRYyJfMq5t5EQCBZCkY-sGSeClLhYXAQKIrXiv20dAt0A==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":2694,"size_decoded":3203,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"6ad5509616a5fca9f389801052bea3fe","sha1":"5b53d204b7e6066409067fba9fce5202ff20e9d6","sha256":"6becc3abea448b67731610708852a70c3ceb99059b2dee98da3711dc0620218a","sha512":"18729e5d7521224c032a2a7f18c154b1d02905dda6a06dc3a1af5d876bc5f651b78699589772cd6158bc1bfa75aead83b084bca2b06539a3e4cc9b4a6d476ded","ssdeep":"","tlshash":"ed512be6a252222ac78335be8a25f1dbdf560afb123220858088c13aa40f750c98a573","first_seen":"2023-05-02T21:54:45Z","last_seen":"2026-07-29T06:14:00.32278Z","times_seen":20078,"resource_available":false,"data":"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"}},"time_used":37,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":31,"receive":6,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/32387.47ace83c61a884341cd6.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.278Z","timestamp":1785159269278,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/32387.47ace83c61a884341cd6.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b73-205c8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: df67710ebf7e338ef4f9a6ea0dfd3e5f\r\ncdn-cache: HIT\r\ncontent-encoding: br\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"]}],"data":{"size":132552,"size_decoded":45610,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"6ca36e244c390f41edaabac69e09f117","sha1":"8cfcf1d847ab9d43572b0f37ce475fca4bba1dbd","sha256":"fb8f00815532561e6403dfa828baaf51b380bfdf9f9c92754695c2cfe989db60","sha512":"9d1bd8f2293d36779a4c8cc18dd6650a7b35228b865226f0071eb07da8a810a5bc9aebd1cd29957a9fdd12cab5df40ab9fbbd7d68ac374e023c356b4178e4e3d","ssdeep":"1536:pvqY4wv/eXX5nEIk5JGA1SpxhDGougC6dZJUz3wA3ovSuHpL+:pyIscb61Uz3wGZML+","tlshash":"6bd3f7e83996f6526ab7126700ef1807733c1a1b280c4960a615fd8e75b842fb17bfdd","first_seen":"2026-05-05T10:36:04.869805Z","last_seen":"2026-07-30T06:08:06.351922Z","times_seen":2765,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMzIzODddLHs1MzIzODcoZSxuLHQpe3ZhciByPXQoNzc5NDc0KSxsPXQoMTgyNjE0KTtmdW5jdGlvbiBhKGUpe2Zvcih2YXIgbj0iaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2Vycm9yLWRlY29kZXIuaHRtbD9pbnZhcmlhbnQ9IitlLHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKW4rPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1t0XSk7cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIituKyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9dmFyIHU9bmV3IFNldCxvPXt9O2Z1bmN0aW9uIGkoZSxuKXtzKGUsbikscyhlKyJDYXB0dXJlIixuKX1mdW5jdGlvbiBzKGUsbil7Zm9yKG9bZV09bixlPTA7ZTxuLmxlbmd0aDtlKyspdS5hZGQobltlXSl9dmFyIGM9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8dm9pZCAwPT09d2luZG93LmRvY3VtZW50fHx2b2lkIDA9PT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCksZj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LGQ9L15bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRF1bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRFwtLjAtOVx1MDBCN1x1MDMwMC1cdTAzNkZcdTIwM0YtXHUyMDQwXSokLyxwPXt9LG09e307ZnVuY3Rpb24gaChlLG4sdCxyLGwsYSx1KXt0aGlzLmFjY2VwdHNCb29sZWFucz0yPT09bnx8Mz09PW58fDQ9PT1uLHRoaXMuYXR0cmlidXRlTmFtZT1yLHRoaXMuYXR0cmlidXRlTmFtZXNwYWNlPWwsdGhpcy5tdXN0VXNlUHJvcGVydHk9dCx0aGlzLnByb3BlcnR5TmFtZT1lLHRoaXMudHlwZT1uLHRoaXMuc2FuaXRpemVVUkw9YSx0aGlzLnJlbW92ZUVtcHR5U3RyaW5nPXV9dmFyIGc9e307ImNoaWxkcmVuIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIGRlZmF1bHRWYWx1ZSBkZWZhdWx0Q2hlY2tlZCBpbm5lckhUTUwgc3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZyBzdHlsZSIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMCwhMSxlLG51bGwsITEsITEpfSkpLFtbImFjY2VwdENoYXJzZXQiLCJhY2NlcHQtY2hhcnNldCJdLFsiY2xhc3NOYW1lIiwiY2xhc3MiXSxbImh0bWxGb3IiLCJmb3IiXSxbImh0dHBFcXVpdiIsImh0dHAtZXF1aXYiXV0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZVswXTtnW25dPW5ldyBoKG4sMSwhMSxlWzFdLG51bGwsITEsITEpfSkpLFsiY29udGVudEVkaXRhYmxlIiwiZHJhZ2dhYmxlIiwic3BlbGxDaGVjayIsInZhbHVlIl0uZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDIsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiYXV0b1JldmVyc2UiLCJleHRlcm5hbFJlc291cmNlc1JlcXVpcmVkIiwiZm9jdXNhYmxlIiwicHJlc2VydmVBbHBoYSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwyLCExLGUsbnVsbCwhMSwhMSl9KSksImFsbG93RnVsbFNjcmVlbiBhc3luYyBhdXRvRm9jdXMgYXV0b1BsYXkgY29udHJvbHMgZGVmYXVsdCBkZWZlciBkaXNhYmxlZCBkaXNhYmxlUGljdHVyZUluUGljdHVyZSBkaXNhYmxlUmVtb3RlUGxheWJhY2sgZm9ybU5vVmFsaWRhdGUgaGlkZGVuIGxvb3Agbm9Nb2R1bGUgbm9WYWxpZGF0ZSBvcGVuIHBsYXlzSW5saW5lIHJlYWRPbmx5IHJlcXVpcmVkIHJldmVyc2VkIHNjb3BlZCBzZWFtbGVzcyBpdGVtU2NvcGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7Z1tlXT1uZXcgaChlLDMsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITEsITEpfSkpLFsiY2hlY2tlZCIsIm11bHRpcGxlIiwibXV0ZWQiLCJzZWxlY3RlZCJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwzLCEwLGUsbnVsbCwhMSwhMSl9KSksWyJjYXB0dXJlIiwiZG93bmxvYWQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNCwhMSxlLG51bGwsITEsITEpfSkpLFsiY29scyIsInJvd3MiLCJzaXplIiwic3BhbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSw2LCExLGUsbnVsbCwhMSwhMSl9KSksWyJyb3dTcGFuIiwic3RhcnQiXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsNSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMSwhMSl9KSk7dmFyIHY9L1tcLTpdKFthLXpdKS9nO2Z1bmN0aW9uIHkoZSl7cmV0dXJuIGVbMV0udG9VcHBlckNhc2UoKX1mdW5jdGlvbiBiKGUsbix0LHIpe3ZhciBsPWcuaGFzT3duUHJvcGVydHkobik/Z1tuXTpudWxsOyhudWxsIT09bD8wIT09bC50eXBlOnJ8fCEoMjxuLmxlbmd0aCl8fCJvIiE9PW5bMF0mJiJPIiE9PW5bMF18fCJuIiE9PW5bMV0mJiJOIiE9PW5bMV0pJiYoZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbD09bnx8ZnVuY3Rpb24oZSxuLHQscil7aWYobnVsbCE9PXQmJjA9PT10LnR5cGUpcmV0dXJuITE7c3dpdGNoKHR5cGVvZiBuKXtjYXNlImZ1bmN0aW9uIjpjYXNlInN5bWJvbCI6cmV0dXJuITA7Y2FzZSJib29sZWFuIjpyZXR1cm4hciYmKG51bGwhPT10PyF0LmFjY2VwdHNCb29sZWFuczoiZGF0YS0iIT09KGU9ZS50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsNSkpJiYiYXJpYS0iIT09ZSk7ZGVmYXVsdDpyZXR1cm4hMX19KGUsbix0LHIpKXJldHVybiEwCjtpZihyKXJldHVybiExO2lmKG51bGwhPT10KXN3aXRjaCh0LnR5cGUpe2Nhc2UgMzpyZXR1cm4hbjtjYXNlIDQ6cmV0dXJuITE9PT1uO2Nhc2UgNTpyZXR1cm4gaXNOYU4obik7Y2FzZSA2OnJldHVybiBpc05hTihuKXx8MT5ufXJldHVybiExfShuLHQsbCxyKSYmKHQ9bnVsbCkscnx8bnVsbD09PWw/ZnVuY3Rpb24oZSl7cmV0dXJuISFmLmNhbGwobSxlKXx8IWYuY2FsbChwLGUpJiYoZC50ZXN0KGUpP21bZV09ITA6KHBbZV09ITAsITEpKX0obikmJihudWxsPT09dD9lLnJlbW92ZUF0dHJpYnV0ZShuKTplLnNldEF0dHJpYnV0ZShuLCIiK3QpKTpsLm11c3RVc2VQcm9wZXJ0eT9lW2wucHJvcGVydHlOYW1lXT1udWxsPT09dD8zIT09bC50eXBlJiYiIjp0OihuPWwuYXR0cmlidXRlTmFtZSxyPWwuYXR0cmlidXRlTmFtZXNwYWNlLG51bGw9PT10P2UucmVtb3ZlQXR0cmlidXRlKG4pOih0PTM9PT0obD1sLnR5cGUpfHw0PT09bCYmITA9PT10PyIiOiIiK3Qscj9lLnNldEF0dHJpYnV0ZU5TKHIsbix0KTplLnNldEF0dHJpYnV0ZShuLHQpKSkpfSJhY2NlbnQtaGVpZ2h0IGFsaWdubWVudC1iYXNlbGluZSBhcmFiaWMtZm9ybSBiYXNlbGluZS1zaGlmdCBjYXAtaGVpZ2h0IGNsaXAtcGF0aCBjbGlwLXJ1bGUgY29sb3ItaW50ZXJwb2xhdGlvbiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnMgY29sb3ItcHJvZmlsZSBjb2xvci1yZW5kZXJpbmcgZG9taW5hbnQtYmFzZWxpbmUgZW5hYmxlLWJhY2tncm91bmQgZmlsbC1vcGFjaXR5IGZpbGwtcnVsZSBmbG9vZC1jb2xvciBmbG9vZC1vcGFjaXR5IGZvbnQtZmFtaWx5IGZvbnQtc2l6ZSBmb250LXNpemUtYWRqdXN0IGZvbnQtc3RyZXRjaCBmb250LXN0eWxlIGZvbnQtdmFyaWFudCBmb250LXdlaWdodCBnbHlwaC1uYW1lIGdseXBoLW9yaWVudGF0aW9uLWhvcml6b250YWwgZ2x5cGgtb3JpZW50YXRpb24tdmVydGljYWwgaG9yaXotYWR2LXggaG9yaXotb3JpZ2luLXggaW1hZ2UtcmVuZGVyaW5nIGxldHRlci1zcGFjaW5nIGxpZ2h0aW5nLWNvbG9yIG1hcmtlci1lbmQgbWFya2VyLW1pZCBtYXJrZXItc3RhcnQgb3ZlcmxpbmUtcG9zaXRpb24gb3ZlcmxpbmUtdGhpY2tuZXNzIHBhaW50LW9yZGVyIHBhbm9zZS0xIHBvaW50ZXItZXZlbnRzIHJlbmRlcmluZy1pbnRlbnQgc2hhcGUtcmVuZGVyaW5nIHN0b3AtY29sb3Igc3RvcC1vcGFjaXR5IHN0cmlrZXRocm91Z2gtcG9zaXRpb24gc3RyaWtldGhyb3VnaC10aGlja25lc3Mgc3Ryb2tlLWRhc2hhcnJheSBzdHJva2UtZGFzaG9mZnNldCBzdHJva2UtbGluZWNhcCBzdHJva2UtbGluZWpvaW4gc3Ryb2tlLW1pdGVybGltaXQgc3Ryb2tlLW9wYWNpdHkgc3Ryb2tlLXdpZHRoIHRleHQtYW5jaG9yIHRleHQtZGVjb3JhdGlvbiB0ZXh0LXJlbmRlcmluZyB1bmRlcmxpbmUtcG9zaXRpb24gdW5kZXJsaW5lLXRoaWNrbmVzcyB1bmljb2RlLWJpZGkgdW5pY29kZS1yYW5nZSB1bml0cy1wZXItZW0gdi1hbHBoYWJldGljIHYtaGFuZ2luZyB2LWlkZW9ncmFwaGljIHYtbWF0aGVtYXRpY2FsIHZlY3Rvci1lZmZlY3QgdmVydC1hZHYteSB2ZXJ0LW9yaWdpbi14IHZlcnQtb3JpZ2luLXkgd29yZC1zcGFjaW5nIHdyaXRpbmctbW9kZSB4bWxuczp4bGluayB4LWhlaWdodCIuc3BsaXQoIiAiKS5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbj1lLnJlcGxhY2Uodix5KTtnW25dPW5ldyBoKG4sMSwhMSxlLG51bGwsITEsITEpfSkpLCJ4bGluazphY3R1YXRlIHhsaW5rOmFyY3JvbGUgeGxpbms6cm9sZSB4bGluazpzaG93IHhsaW5rOnRpdGxlIHhsaW5rOnR5cGUiLnNwbGl0KCIgIikuZm9yRWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49ZS5yZXBsYWNlKHYseSk7Z1tuXT1uZXcgaChuLDEsITEsZSwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITEsITEpfSkpLFsieG1sOmJhc2UiLCJ4bWw6bGFuZyIsInhtbDpzcGFjZSJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuPWUucmVwbGFjZSh2LHkpO2dbbl09bmV3IGgobiwxLCExLGUsImh0dHA6Ly93d3cudzMub3JnL1hNTC8xOTk4L25hbWVzcGFjZSIsITEsITEpfSkpLFsidGFiSW5kZXgiLCJjcm9zc09yaWdpbiJdLmZvckVhY2goKGZ1bmN0aW9uKGUpe2dbZV09bmV3IGgoZSwxLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pKSxnLnhsaW5rSHJlZj1uZXcgaCgieGxpbmtIcmVmIiwxLCExLCJ4bGluazpocmVmIiwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsITAsITEpLFsic3JjIiwiaHJlZiIsImFjdGlvbiIsImZvcm1BY3Rpb24iXS5mb3JFYWNoKChmdW5jdGlvbihlKXtnW2VdPW5ldyBoKGUsMSwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMCwhMCl9KSk7dmFyIGs9ci5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCx3PVN5bWJvbC5mb3IoInJlYWN0LmVsZW1lbnQiKSxTPVN5bWJvbC5mb3IoInJlYWN0LnBvcnRhbCIpLHg9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxFPVN5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIiksQz1TeW1ib2wuZm9yKCJyZWFjdC5wcm9maWxlciIpLHo9U3ltYm9sLmZvcigicmVhY3QucHJvdmlkZXIiKSxOPVN5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKSxfPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIiksUD1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLFQ9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLEw9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLE09U3ltYm9sLmZvcigicmVhY3QubGF6eSIpO1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIiksU3ltYm9sLmZvcigicmVhY3QuZGVidWdfdHJhY2VfbW9kZSIpO3ZhciBGPVN5bWJvbC5mb3IoInJlYWN0Lm9mZnNjcmVlbiIpO1N5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKSxTeW1ib2wuZm9yKCJyZWFjdC5jYWNoZSIpLFN5bWJvbC5mb3IoInJlYWN0LnRyYWNpbmdfbWFya2VyIik7dmFyIFI9U3ltYm9sLml0ZXJhdG9yO2Z1bmN0aW9uIEQoZSl7CnJldHVybiBudWxsPT09ZXx8Im9iamVjdCIhPXR5cGVvZiBlP251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKGU9UiYmZVtSXXx8ZVsiQEBpdGVyYXRvciJdKT9lOm51bGx9dmFyIEksTz1PYmplY3QuYXNzaWduO2Z1bmN0aW9uIFUoZSl7aWYodm9pZCAwPT09SSl0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXt2YXIgbj1lLnN0YWNrLnRyaW0oKS5tYXRjaCgvXG4oICooYXQgKT8pLyk7ST1uJiZuWzFdfHwiIn1yZXR1cm4iXG4iK0krZX12YXIgVj0hMTtmdW5jdGlvbiBBKGUsbil7aWYoIWV8fFYpcmV0dXJuIiI7Vj0hMDt2YXIgdD1FcnJvci5wcmVwYXJlU3RhY2tUcmFjZTtFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT12b2lkIDA7dHJ5e2lmKG4paWYobj1mdW5jdGlvbigpe3Rocm93IEVycm9yKCl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLnByb3RvdHlwZSwicHJvcHMiLHtzZXQ6ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigpfX0pLCJvYmplY3QiPT10eXBlb2YgUmVmbGVjdCYmUmVmbGVjdC5jb25zdHJ1Y3Qpe3RyeXtSZWZsZWN0LmNvbnN0cnVjdChuLFtdKX1jYXRjaChlKXt2YXIgcj1lfVJlZmxlY3QuY29uc3RydWN0KGUsW10sbil9ZWxzZXt0cnl7bi5jYWxsKCl9Y2F0Y2goZSl7cj1lfWUuY2FsbChuLnByb3RvdHlwZSl9ZWxzZXt0cnl7dGhyb3cgRXJyb3IoKX1jYXRjaChlKXtyPWV9ZSgpfX1jYXRjaChuKXtpZihuJiZyJiYic3RyaW5nIj09dHlwZW9mIG4uc3RhY2spe2Zvcih2YXIgbD1uLnN0YWNrLnNwbGl0KCJcbiIpLGE9ci5zdGFjay5zcGxpdCgiXG4iKSx1PWwubGVuZ3RoLTEsbz1hLmxlbmd0aC0xOzE8PXUmJjA8PW8mJmxbdV0hPT1hW29dOylvLS07Zm9yKDsxPD11JiYwPD1vO3UtLSxvLS0paWYobFt1XSE9PWFbb10pe2lmKDEhPT11fHwxIT09bylkb3tpZih1LS0sMD4tLW98fGxbdV0hPT1hW29dKXt2YXIgaT0iXG4iK2xbdV0ucmVwbGFjZSgiIGF0IG5ldyAiLCIgYXQgIik7cmV0dXJuIGUuZGlzcGxheU5hbWUmJmkuaW5jbHVkZXMoIjxhbm9ueW1vdXM+IikmJihpPWkucmVwbGFjZSgiPGFub255bW91cz4iLGUuZGlzcGxheU5hbWUpKSxpfX13aGlsZSgxPD11JiYwPD1vKTticmVha319fWZpbmFsbHl7Vj0hMSxFcnJvci5wcmVwYXJlU3RhY2tUcmFjZT10fXJldHVybihlPWU/ZS5kaXNwbGF5TmFtZXx8ZS5uYW1lOiIiKT9VKGUpOiIifWZ1bmN0aW9uIEIoZSl7c3dpdGNoKGUudGFnKXtjYXNlIDU6cmV0dXJuIFUoZS50eXBlKTtjYXNlIDE2OnJldHVybiBVKCJMYXp5Iik7Y2FzZSAxMzpyZXR1cm4gVSgiU3VzcGVuc2UiKTtjYXNlIDE5OnJldHVybiBVKCJTdXNwZW5zZUxpc3QiKTtjYXNlIDA6Y2FzZSAyOmNhc2UgMTU6cmV0dXJuIGU9QShlLnR5cGUsITEpO2Nhc2UgMTE6cmV0dXJuIGU9QShlLnR5cGUucmVuZGVyLCExKTtjYXNlIDE6cmV0dXJuIGU9QShlLnR5cGUsITApO2RlZmF1bHQ6cmV0dXJuIiJ9fWZ1bmN0aW9uIFcoZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gZS5kaXNwbGF5TmFtZXx8ZS5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgZSlyZXR1cm4gZTtzd2l0Y2goZSl7Y2FzZSB4OnJldHVybiJGcmFnbWVudCI7Y2FzZSBTOnJldHVybiJQb3J0YWwiO2Nhc2UgQzpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgRTpyZXR1cm4iU3RyaWN0TW9kZSI7Y2FzZSBQOnJldHVybiJTdXNwZW5zZSI7Y2FzZSBUOnJldHVybiJTdXNwZW5zZUxpc3QifWlmKCJvYmplY3QiPT10eXBlb2YgZSlzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBOOnJldHVybihlLmRpc3BsYXlOYW1lfHwiQ29udGV4dCIpKyIuQ29uc3VtZXIiO2Nhc2UgejpyZXR1cm4oZS5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIF86dmFyIG49ZS5yZW5kZXI7cmV0dXJuKGU9ZS5kaXNwbGF5TmFtZSl8fChlPSIiIT09KGU9bi5kaXNwbGF5TmFtZXx8bi5uYW1lfHwiIik/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpLGU7Y2FzZSBMOnJldHVybiBudWxsIT09KG49ZS5kaXNwbGF5TmFtZXx8bnVsbCk/bjpXKGUudHlwZSl8fCJNZW1vIjtjYXNlIE06bj1lLl9wYXlsb2FkLGU9ZS5faW5pdDt0cnl7cmV0dXJuIFcoZShuKSl9Y2F0Y2goZSl7fX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBIKGUpe3ZhciBuPWUudHlwZTtzd2l0Y2goZS50YWcpe2Nhc2UgMjQ6cmV0dXJuIkNhY2hlIjtjYXNlIDk6cmV0dXJuKG4uZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSAxMDpyZXR1cm4obi5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIDE4OnJldHVybiJEZWh5ZHJhdGVkRnJhZ21lbnQiO2Nhc2UgMTE6cmV0dXJuIGU9KGU9bi5yZW5kZXIpLmRpc3BsYXlOYW1lfHxlLm5hbWV8fCIiLG4uZGlzcGxheU5hbWV8fCgiIiE9PWU/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpO2Nhc2UgNzpyZXR1cm4iRnJhZ21lbnQiO2Nhc2UgNTpyZXR1cm4gbjtjYXNlIDQ6cmV0dXJuIlBvcnRhbCI7Y2FzZSAzOnJldHVybiJSb290IjtjYXNlIDY6cmV0dXJuIlRleHQiO2Nhc2UgMTY6cmV0dXJuIFcobik7Y2FzZSA4OnJldHVybiBuPT09RT8iU3RyaWN0TW9kZSI6Ik1vZGUiO2Nhc2UgMjI6cmV0dXJuIk9mZnNjcmVlbiI7Y2FzZSAxMjpyZXR1cm4iUHJvZmlsZXIiO2Nhc2UgMjE6cmV0dXJuIlNjb3BlIjtjYXNlIDEzOnJldHVybiJTdXNwZW5zZSI7Y2FzZSAxOTpyZXR1cm4iU3VzcGVuc2VMaXN0IjtjYXNlIDI1OnJldHVybiJUcmFjaW5nTWFya2VyIjtjYXNlIDE6Y2FzZSAwOmNhc2UgMTc6Y2FzZSAyOmNhc2UgMTQ6Y2FzZSAxNTppZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm4gbi5kaXNwbGF5TmFtZXx8bi5uYW1lfHxudWxsO2lmKCJzdHJpbmciPT10eXBlb2YgbilyZXR1cm4gbn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBRKGUpe3N3aXRjaCh0eXBlb2YgZSl7Y2FzZSJib29sZWFuIjpjYXNlIm51bWJlciI6Y2FzZSJzdHJpbmciOmNhc2UidW5kZWZpbmVkIjpjYXNlIm9iamVjdCI6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gaihlKXt2YXIgbj1lLnR5cGUKO3JldHVybihlPWUubm9kZU5hbWUpJiYiaW5wdXQiPT09ZS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW58fCJyYWRpbyI9PT1uKX1mdW5jdGlvbiAkKGUpe2UuX3ZhbHVlVHJhY2tlcnx8KGUuX3ZhbHVlVHJhY2tlcj1mdW5jdGlvbihlKXt2YXIgbj1qKGUpPyJjaGVja2VkIjoidmFsdWUiLHQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLmNvbnN0cnVjdG9yLnByb3RvdHlwZSxuKSxyPSIiK2Vbbl07aWYoIWUuaGFzT3duUHJvcGVydHkobikmJnZvaWQgMCE9PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldCYmImZ1bmN0aW9uIj09dHlwZW9mIHQuc2V0KXt2YXIgbD10LmdldCxhPXQuc2V0O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGwuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe3I9IiIrZSxhLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHtlbnVtZXJhYmxlOnQuZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiByfSxzZXRWYWx1ZTpmdW5jdGlvbihlKXtyPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW25dfX19fShlKSl9ZnVuY3Rpb24gcShlKXtpZighZSlyZXR1cm4hMTt2YXIgbj1lLl92YWx1ZVRyYWNrZXI7aWYoIW4pcmV0dXJuITA7dmFyIHQ9bi5nZXRWYWx1ZSgpLHI9IiI7cmV0dXJuIGUmJihyPWooZSk/ZS5jaGVja2VkPyJ0cnVlIjoiZmFsc2UiOmUudmFsdWUpLChlPXIpIT09dCYmKG4uc2V0VmFsdWUoZSksITApfWZ1bmN0aW9uIEsoZSl7aWYodm9pZCAwPT09KGU9ZXx8KCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQ/ZG9jdW1lbnQ6dm9pZCAwKSkpcmV0dXJuIG51bGw7dHJ5e3JldHVybiBlLmFjdGl2ZUVsZW1lbnR8fGUuYm9keX1jYXRjaChuKXtyZXR1cm4gZS5ib2R5fX1mdW5jdGlvbiBZKGUsbil7dmFyIHQ9bi5jaGVja2VkO3JldHVybiBPKHt9LG4se2RlZmF1bHRDaGVja2VkOnZvaWQgMCxkZWZhdWx0VmFsdWU6dm9pZCAwLHZhbHVlOnZvaWQgMCxjaGVja2VkOm51bGwhPXQ/dDplLl93cmFwcGVyU3RhdGUuaW5pdGlhbENoZWNrZWR9KX1mdW5jdGlvbiBYKGUsbil7dmFyIHQ9bnVsbD09bi5kZWZhdWx0VmFsdWU/IiI6bi5kZWZhdWx0VmFsdWUscj1udWxsIT1uLmNoZWNrZWQ/bi5jaGVja2VkOm4uZGVmYXVsdENoZWNrZWQ7dD1RKG51bGwhPW4udmFsdWU/bi52YWx1ZTp0KSxlLl93cmFwcGVyU3RhdGU9e2luaXRpYWxDaGVja2VkOnIsaW5pdGlhbFZhbHVlOnQsY29udHJvbGxlZDoiY2hlY2tib3giPT09bi50eXBlfHwicmFkaW8iPT09bi50eXBlP251bGwhPW4uY2hlY2tlZDpudWxsIT1uLnZhbHVlfX1mdW5jdGlvbiBHKGUsbil7bnVsbCE9KG49bi5jaGVja2VkKSYmYihlLCJjaGVja2VkIixuLCExKX1mdW5jdGlvbiBaKGUsbil7RyhlLG4pO3ZhciB0PVEobi52YWx1ZSkscj1uLnR5cGU7aWYobnVsbCE9dCkibnVtYmVyIj09PXI/KDA9PT10JiYiIj09PWUudmFsdWV8fGUudmFsdWUhPXQpJiYoZS52YWx1ZT0iIit0KTplLnZhbHVlIT09IiIrdCYmKGUudmFsdWU9IiIrdCk7ZWxzZSBpZigic3VibWl0Ij09PXJ8fCJyZXNldCI9PT1yKXJldHVybiB2b2lkIGUucmVtb3ZlQXR0cmlidXRlKCJ2YWx1ZSIpO24uaGFzT3duUHJvcGVydHkoInZhbHVlIik/ZWUoZSxuLnR5cGUsdCk6bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikmJmVlKGUsbi50eXBlLFEobi5kZWZhdWx0VmFsdWUpKSxudWxsPT1uLmNoZWNrZWQmJm51bGwhPW4uZGVmYXVsdENoZWNrZWQmJihlLmRlZmF1bHRDaGVja2VkPSEhbi5kZWZhdWx0Q2hlY2tlZCl9ZnVuY3Rpb24gSihlLG4sdCl7aWYobi5oYXNPd25Qcm9wZXJ0eSgidmFsdWUiKXx8bi5oYXNPd25Qcm9wZXJ0eSgiZGVmYXVsdFZhbHVlIikpe3ZhciByPW4udHlwZTtpZighKCJzdWJtaXQiIT09ciYmInJlc2V0IiE9PXJ8fHZvaWQgMCE9PW4udmFsdWUmJm51bGwhPT1uLnZhbHVlKSlyZXR1cm47bj0iIitlLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlLHR8fG49PT1lLnZhbHVlfHwoZS52YWx1ZT1uKSxlLmRlZmF1bHRWYWx1ZT1ufSIiIT09KHQ9ZS5uYW1lKSYmKGUubmFtZT0iIiksZS5kZWZhdWx0Q2hlY2tlZD0hIWUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsQ2hlY2tlZCwiIiE9PXQmJihlLm5hbWU9dCl9ZnVuY3Rpb24gZWUoZSxuLHQpeyJudW1iZXIiPT09biYmSyhlLm93bmVyRG9jdW1lbnQpPT09ZXx8KG51bGw9PXQ/ZS5kZWZhdWx0VmFsdWU9IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZTplLmRlZmF1bHRWYWx1ZSE9PSIiK3QmJihlLmRlZmF1bHRWYWx1ZT0iIit0KSl9dmFyIG5lPUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gdGUoZSxuLHQscil7aWYoZT1lLm9wdGlvbnMsbil7bj17fTtmb3IodmFyIGw9MDtsPHQubGVuZ3RoO2wrKyluWyIkIit0W2xdXT0hMDtmb3IodD0wO3Q8ZS5sZW5ndGg7dCsrKWw9bi5oYXNPd25Qcm9wZXJ0eSgiJCIrZVt0XS52YWx1ZSksZVt0XS5zZWxlY3RlZCE9PWwmJihlW3RdLnNlbGVjdGVkPWwpLGwmJnImJihlW3RdLmRlZmF1bHRTZWxlY3RlZD0hMCl9ZWxzZXtmb3IodD0iIitRKHQpLG49bnVsbCxsPTA7bDxlLmxlbmd0aDtsKyspe2lmKGVbbF0udmFsdWU9PT10KXJldHVybiBlW2xdLnNlbGVjdGVkPSEwLHZvaWQociYmKGVbbF0uZGVmYXVsdFNlbGVjdGVkPSEwKSk7bnVsbCE9PW58fGVbbF0uZGlzYWJsZWR8fChuPWVbbF0pfW51bGwhPT1uJiYobi5zZWxlY3RlZD0hMCl9fWZ1bmN0aW9uIHJlKGUsbil7aWYobnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCl0aHJvdyBFcnJvcihhKDkxKSk7cmV0dXJuIE8oe30sbix7dmFsdWU6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsY2hpbGRyZW46IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZX0pfWZ1bmN0aW9uIGxlKGUsbil7dmFyIHQ9bi52YWx1ZTtpZihudWxsPT10KXtpZih0PW4uY2hpbGRyZW4sbj1uLmRlZmF1bHRWYWx1ZSxudWxsIT10KXtpZihudWxsIT1uKXRocm93IEVycm9yKGEoOTIpKTtpZihuZSh0KSl7CmlmKDE8dC5sZW5ndGgpdGhyb3cgRXJyb3IoYSg5MykpO3Q9dFswXX1uPXR9bnVsbD09biYmKG49IiIpLHQ9bn1lLl93cmFwcGVyU3RhdGU9e2luaXRpYWxWYWx1ZTpRKHQpfX1mdW5jdGlvbiBhZShlLG4pe3ZhciB0PVEobi52YWx1ZSkscj1RKG4uZGVmYXVsdFZhbHVlKTtudWxsIT10JiYoKHQ9IiIrdCkhPT1lLnZhbHVlJiYoZS52YWx1ZT10KSxudWxsPT1uLmRlZmF1bHRWYWx1ZSYmZS5kZWZhdWx0VmFsdWUhPT10JiYoZS5kZWZhdWx0VmFsdWU9dCkpLG51bGwhPXImJihlLmRlZmF1bHRWYWx1ZT0iIityKX1mdW5jdGlvbiB1ZShlKXt2YXIgbj1lLnRleHRDb250ZW50O249PT1lLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlJiYiIiE9PW4mJm51bGwhPT1uJiYoZS52YWx1ZT1uKX1mdW5jdGlvbiBvZShlKXtzd2l0Y2goZSl7Y2FzZSJzdmciOnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI7Y2FzZSJtYXRoIjpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI7ZGVmYXVsdDpyZXR1cm4iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCJ9fWZ1bmN0aW9uIGllKGUsbil7cmV0dXJuIG51bGw9PWV8fCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/b2Uobik6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj09PWUmJiJmb3JlaWduT2JqZWN0Ij09PW4/Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiOmV9dmFyIHNlLGNlLGZlPShjZT1mdW5jdGlvbihlLG4pe2lmKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIhPT1lLm5hbWVzcGFjZVVSSXx8ImlubmVySFRNTCJpbiBlKWUuaW5uZXJIVE1MPW47ZWxzZXtmb3IoKHNlPXNlfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuaW5uZXJIVE1MPSI8c3ZnPiIrbi52YWx1ZU9mKCkudG9TdHJpbmcoKSsiPC9zdmc+IixuPXNlLmZpcnN0Q2hpbGQ7ZS5maXJzdENoaWxkOyllLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCk7Zm9yKDtuLmZpcnN0Q2hpbGQ7KWUuYXBwZW5kQ2hpbGQobi5maXJzdENoaWxkKX19LCJ1bmRlZmluZWQiIT10eXBlb2YgTVNBcHAmJk1TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uP2Z1bmN0aW9uKGUsbix0LHIpe01TQXBwLmV4ZWNVbnNhZmVMb2NhbEZ1bmN0aW9uKChmdW5jdGlvbigpe3JldHVybiBjZShlLG4pfSkpfTpjZSk7ZnVuY3Rpb24gZGUoZSxuKXtpZihuKXt2YXIgdD1lLmZpcnN0Q2hpbGQ7aWYodCYmdD09PWUubGFzdENoaWxkJiYzPT09dC5ub2RlVHlwZSlyZXR1cm4gdm9pZCh0Lm5vZGVWYWx1ZT1uKX1lLnRleHRDb250ZW50PW59dmFyIHBlPXthbmltYXRpb25JdGVyYXRpb25Db3VudDohMCxhc3BlY3RSYXRpbzohMCxib3JkZXJJbWFnZU91dHNldDohMCxib3JkZXJJbWFnZVNsaWNlOiEwLGJvcmRlckltYWdlV2lkdGg6ITAsYm94RmxleDohMCxib3hGbGV4R3JvdXA6ITAsYm94T3JkaW5hbEdyb3VwOiEwLGNvbHVtbkNvdW50OiEwLGNvbHVtbnM6ITAsZmxleDohMCxmbGV4R3JvdzohMCxmbGV4UG9zaXRpdmU6ITAsZmxleFNocmluazohMCxmbGV4TmVnYXRpdmU6ITAsZmxleE9yZGVyOiEwLGdyaWRBcmVhOiEwLGdyaWRSb3c6ITAsZ3JpZFJvd0VuZDohMCxncmlkUm93U3BhbjohMCxncmlkUm93U3RhcnQ6ITAsZ3JpZENvbHVtbjohMCxncmlkQ29sdW1uRW5kOiEwLGdyaWRDb2x1bW5TcGFuOiEwLGdyaWRDb2x1bW5TdGFydDohMCxmb250V2VpZ2h0OiEwLGxpbmVDbGFtcDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCx0YWJTaXplOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMCxmaWxsT3BhY2l0eTohMCxmbG9vZE9wYWNpdHk6ITAsc3RvcE9wYWNpdHk6ITAsc3Ryb2tlRGFzaGFycmF5OiEwLHN0cm9rZURhc2hvZmZzZXQ6ITAsc3Ryb2tlTWl0ZXJsaW1pdDohMCxzdHJva2VPcGFjaXR5OiEwLHN0cm9rZVdpZHRoOiEwfSxtZT1bIldlYmtpdCIsIm1zIiwiTW96IiwiTyJdO2Z1bmN0aW9uIGhlKGUsbix0KXtyZXR1cm4gbnVsbD09bnx8ImJvb2xlYW4iPT10eXBlb2Ygbnx8IiI9PT1uPyIiOnR8fCJudW1iZXIiIT10eXBlb2Ygbnx8MD09PW58fHBlLmhhc093blByb3BlcnR5KGUpJiZwZVtlXT8oIiIrbikudHJpbSgpOm4rInB4In1mdW5jdGlvbiBnZShlLG4pe2Zvcih2YXIgdCBpbiBlPWUuc3R5bGUsbilpZihuLmhhc093blByb3BlcnR5KHQpKXt2YXIgcj0wPT09dC5pbmRleE9mKCItLSIpLGw9aGUodCxuW3RdLHIpOyJmbG9hdCI9PT10JiYodD0iY3NzRmxvYXQiKSxyP2Uuc2V0UHJvcGVydHkodCxsKTplW3RdPWx9fU9iamVjdC5rZXlzKHBlKS5mb3JFYWNoKChmdW5jdGlvbihlKXttZS5mb3JFYWNoKChmdW5jdGlvbihuKXtuPW4rZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStlLnN1YnN0cmluZygxKSxwZVtuXT1wZVtlXX0pKX0pKTt2YXIgdmU9Tyh7bWVudWl0ZW06ITB9LHthcmVhOiEwLGJhc2U6ITAsYnI6ITAsY29sOiEwLGVtYmVkOiEwLGhyOiEwLGltZzohMCxpbnB1dDohMCxrZXlnZW46ITAsbGluazohMCxtZXRhOiEwLHBhcmFtOiEwLHNvdXJjZTohMCx0cmFjazohMCx3YnI6ITB9KTtmdW5jdGlvbiB5ZShlLG4pe2lmKG4pe2lmKHZlW2VdJiYobnVsbCE9bi5jaGlsZHJlbnx8bnVsbCE9bi5kYW5nZXJvdXNseVNldElubmVySFRNTCkpdGhyb3cgRXJyb3IoYSgxMzcsZSkpO2lmKG51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpe2lmKG51bGwhPW4uY2hpbGRyZW4pdGhyb3cgRXJyb3IoYSg2MCkpO2lmKCJvYmplY3QiIT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTHx8ISgiX19odG1sImluIG4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpKXRocm93IEVycm9yKGEoNjEpKX1pZihudWxsIT1uLnN0eWxlJiYib2JqZWN0IiE9dHlwZW9mIG4uc3R5bGUpdGhyb3cgRXJyb3IoYSg2MikpfX1mdW5jdGlvbiBiZShlLG4pe2lmKC0xPT09ZS5pbmRleE9mKCItIikpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBuLmlzO3N3aXRjaChlKXtjYXNlImFubm90YXRpb24teG1sIjpjYXNlImNvbG9yLXByb2ZpbGUiOmNhc2UiZm9udC1mYWNlIjpjYXNlImZvbnQtZmFjZS1zcmMiOgpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIga2U9bnVsbDtmdW5jdGlvbiB3ZShlKXtyZXR1cm4oZT1lLnRhcmdldHx8ZS5zcmNFbGVtZW50fHx3aW5kb3cpLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50JiYoZT1lLmNvcnJlc3BvbmRpbmdVc2VFbGVtZW50KSwzPT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZX12YXIgU2U9bnVsbCx4ZT1udWxsLEVlPW51bGw7ZnVuY3Rpb24gQ2UoZSl7aWYoZT1ibChlKSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIFNlKXRocm93IEVycm9yKGEoMjgwKSk7dmFyIG49ZS5zdGF0ZU5vZGU7biYmKG49d2wobiksU2UoZS5zdGF0ZU5vZGUsZS50eXBlLG4pKX19ZnVuY3Rpb24gemUoZSl7eGU/RWU/RWUucHVzaChlKTpFZT1bZV06eGU9ZX1mdW5jdGlvbiBOZSgpe2lmKHhlKXt2YXIgZT14ZSxuPUVlO2lmKEVlPXhlPW51bGwsQ2UoZSksbilmb3IoZT0wO2U8bi5sZW5ndGg7ZSsrKUNlKG5bZV0pfX1mdW5jdGlvbiBfZShlLG4pe3JldHVybiBlKG4pfWZ1bmN0aW9uIFBlKCl7fXZhciBUZT0hMTtmdW5jdGlvbiBMZShlLG4sdCl7aWYoVGUpcmV0dXJuIGUobix0KTtUZT0hMDt0cnl7cmV0dXJuIF9lKGUsbix0KX1maW5hbGx5e1RlPSExLChudWxsIT09eGV8fG51bGwhPT1FZSkmJihQZSgpLE5lKCkpfX1mdW5jdGlvbiBNZShlLG4pe3ZhciB0PWUuc3RhdGVOb2RlO2lmKG51bGw9PT10KXJldHVybiBudWxsO3ZhciByPXdsKHQpO2lmKG51bGw9PT1yKXJldHVybiBudWxsO3Q9cltuXTtlOnN3aXRjaChuKXtjYXNlIm9uQ2xpY2siOmNhc2Uib25DbGlja0NhcHR1cmUiOmNhc2Uib25Eb3VibGVDbGljayI6Y2FzZSJvbkRvdWJsZUNsaWNrQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlRG93biI6Y2FzZSJvbk1vdXNlRG93bkNhcHR1cmUiOmNhc2Uib25Nb3VzZU1vdmUiOmNhc2Uib25Nb3VzZU1vdmVDYXB0dXJlIjpjYXNlIm9uTW91c2VVcCI6Y2FzZSJvbk1vdXNlVXBDYXB0dXJlIjpjYXNlIm9uTW91c2VFbnRlciI6KHI9IXIuZGlzYWJsZWQpfHwocj0hKCJidXR0b24iPT09KGU9ZS50eXBlKXx8ImlucHV0Ij09PWV8fCJzZWxlY3QiPT09ZXx8InRleHRhcmVhIj09PWUpKSxlPSFyO2JyZWFrIGU7ZGVmYXVsdDplPSExfWlmKGUpcmV0dXJuIG51bGw7aWYodCYmImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgRXJyb3IoYSgyMzEsbix0eXBlb2YgdCkpO3JldHVybiB0fXZhciBGZT0hMTtpZihjKXRyeXt2YXIgUmU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KFJlLCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7RmU9ITB9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLFJlLFJlKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsUmUsUmUpfWNhdGNoKGNlKXtGZT0hMX1mdW5jdGlvbiBEZShlLG4sdCxyLGwsYSx1LG8saSl7dmFyIHM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDMpO3RyeXtuLmFwcGx5KHQscyl9Y2F0Y2goZSl7dGhpcy5vbkVycm9yKGUpfX12YXIgSWU9ITEsT2U9bnVsbCxVZT0hMSxWZT1udWxsLEFlPXtvbkVycm9yOmZ1bmN0aW9uKGUpe0llPSEwLE9lPWV9fTtmdW5jdGlvbiBCZShlLG4sdCxyLGwsYSx1LG8saSl7SWU9ITEsT2U9bnVsbCxEZS5hcHBseShBZSxhcmd1bWVudHMpfWZ1bmN0aW9uIFdlKGUpe3ZhciBuPWUsdD1lO2lmKGUuYWx0ZXJuYXRlKWZvcig7bi5yZXR1cm47KW49bi5yZXR1cm47ZWxzZXtlPW47ZG97ISEoNDA5OCYobj1lKS5mbGFncykmJih0PW4ucmV0dXJuKSxlPW4ucmV0dXJufXdoaWxlKGUpfXJldHVybiAzPT09bi50YWc/dDpudWxsfWZ1bmN0aW9uIEhlKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPWUubWVtb2l6ZWRTdGF0ZTtpZihudWxsPT09biYmKG51bGwhPT0oZT1lLmFsdGVybmF0ZSkmJihuPWUubWVtb2l6ZWRTdGF0ZSkpLG51bGwhPT1uKXJldHVybiBuLmRlaHlkcmF0ZWR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gUWUoZSl7aWYoV2UoZSkhPT1lKXRocm93IEVycm9yKGEoMTg4KSl9ZnVuY3Rpb24gamUoZSl7cmV0dXJuIG51bGwhPT0oZT1mdW5jdGlvbihlKXt2YXIgbj1lLmFsdGVybmF0ZTtpZighbil7aWYobnVsbD09PShuPVdlKGUpKSl0aHJvdyBFcnJvcihhKDE4OCkpO3JldHVybiBuIT09ZT9udWxsOmV9Zm9yKHZhciB0PWUscj1uOzspe3ZhciBsPXQucmV0dXJuO2lmKG51bGw9PT1sKWJyZWFrO3ZhciB1PWwuYWx0ZXJuYXRlO2lmKG51bGw9PT11KXtpZihudWxsIT09KHI9bC5yZXR1cm4pKXt0PXI7Y29udGludWV9YnJlYWt9aWYobC5jaGlsZD09PXUuY2hpbGQpe2Zvcih1PWwuY2hpbGQ7dTspe2lmKHU9PT10KXJldHVybiBRZShsKSxlO2lmKHU9PT1yKXJldHVybiBRZShsKSxuO3U9dS5zaWJsaW5nfXRocm93IEVycm9yKGEoMTg4KSl9aWYodC5yZXR1cm4hPT1yLnJldHVybil0PWwscj11O2Vsc2V7Zm9yKHZhciBvPSExLGk9bC5jaGlsZDtpOyl7aWYoaT09PXQpe289ITAsdD1sLHI9dTticmVha31pZihpPT09cil7bz0hMCxyPWwsdD11O2JyZWFrfWk9aS5zaWJsaW5nfWlmKCFvKXtmb3IoaT11LmNoaWxkO2k7KXtpZihpPT09dCl7bz0hMCx0PXUscj1sO2JyZWFrfWlmKGk9PT1yKXtvPSEwLHI9dSx0PWw7YnJlYWt9aT1pLnNpYmxpbmd9aWYoIW8pdGhyb3cgRXJyb3IoYSgxODkpKX19aWYodC5hbHRlcm5hdGUhPT1yKXRocm93IEVycm9yKGEoMTkwKSl9aWYoMyE9PXQudGFnKXRocm93IEVycm9yKGEoMTg4KSk7cmV0dXJuIHQuc3RhdGVOb2RlLmN1cnJlbnQ9PT10P2U6bn0oZSkpPyRlKGUpOm51bGx9ZnVuY3Rpb24gJGUoZSl7aWYoNT09PWUudGFnfHw2PT09ZS50YWcpcmV0dXJuIGU7Zm9yKGU9ZS5jaGlsZDtudWxsIT09ZTspe3ZhciBuPSRlKGUpO2lmKG51bGwhPT1uKXJldHVybiBuO2U9ZS5zaWJsaW5nfXJldHVybiBudWxsfQp2YXIgcWU9bC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrLEtlPWwudW5zdGFibGVfY2FuY2VsQ2FsbGJhY2ssWWU9bC51bnN0YWJsZV9zaG91bGRZaWVsZCxYZT1sLnVuc3RhYmxlX3JlcXVlc3RQYWludCxHZT1sLnVuc3RhYmxlX25vdyxaZT1sLnVuc3RhYmxlX2dldEN1cnJlbnRQcmlvcml0eUxldmVsLEplPWwudW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHksZW49bC51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eSxubj1sLnVuc3RhYmxlX05vcm1hbFByaW9yaXR5LHRuPWwudW5zdGFibGVfTG93UHJpb3JpdHkscm49bC51bnN0YWJsZV9JZGxlUHJpb3JpdHksbG49bnVsbCxhbj1udWxsO3ZhciB1bj1NYXRoLmNsejMyP01hdGguY2x6MzI6ZnVuY3Rpb24oZSl7cmV0dXJuIGU+Pj49MCwwPT09ZT8zMjozMS0ob24oZSkvc258MCl8MH0sb249TWF0aC5sb2csc249TWF0aC5MTjI7dmFyIGNuPTY0LGZuPTQxOTQzMDQ7ZnVuY3Rpb24gZG4oZSl7c3dpdGNoKGUmLWUpe2Nhc2UgMTpyZXR1cm4gMTtjYXNlIDI6cmV0dXJuIDI7Y2FzZSA0OnJldHVybiA0O2Nhc2UgODpyZXR1cm4gODtjYXNlIDE2OnJldHVybiAxNjtjYXNlIDMyOnJldHVybiAzMjtjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiA0MTk0MjQwJmU7Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpyZXR1cm4gMTMwMDIzNDI0JmU7Y2FzZSAxMzQyMTc3Mjg6cmV0dXJuIDEzNDIxNzcyODtjYXNlIDI2ODQzNTQ1NjpyZXR1cm4gMjY4NDM1NDU2O2Nhc2UgNTM2ODcwOTEyOnJldHVybiA1MzY4NzA5MTI7Y2FzZSAxMDczNzQxODI0OnJldHVybiAxMDczNzQxODI0O2RlZmF1bHQ6cmV0dXJuIGV9fWZ1bmN0aW9uIHBuKGUsbil7dmFyIHQ9ZS5wZW5kaW5nTGFuZXM7aWYoMD09PXQpcmV0dXJuIDA7dmFyIHI9MCxsPWUuc3VzcGVuZGVkTGFuZXMsYT1lLnBpbmdlZExhbmVzLHU9MjY4NDM1NDU1JnQ7aWYoMCE9PXUpe3ZhciBvPXUmfmw7MCE9PW8/cj1kbihvKTowIT09KGEmPXUpJiYocj1kbihhKSl9ZWxzZSAwIT09KHU9dCZ+bCk/cj1kbih1KTowIT09YSYmKHI9ZG4oYSkpO2lmKDA9PT1yKXJldHVybiAwO2lmKDAhPT1uJiZuIT09ciYmIShuJmwpJiYoKGw9ciYtcik+PShhPW4mLW4pfHwxNj09PWwmJjQxOTQyNDAmYSkpcmV0dXJuIG47aWYoNCZyJiYocnw9MTYmdCksMCE9PShuPWUuZW50YW5nbGVkTGFuZXMpKWZvcihlPWUuZW50YW5nbGVtZW50cyxuJj1yOzA8bjspbD0xPDwodD0zMS11bihuKSkscnw9ZVt0XSxuJj1+bDtyZXR1cm4gcn1mdW5jdGlvbiBtbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgNDpyZXR1cm4gbisyNTA7Y2FzZSA4OmNhc2UgMTY6Y2FzZSAzMjpjYXNlIDY0OmNhc2UgMTI4OmNhc2UgMjU2OmNhc2UgNTEyOmNhc2UgMTAyNDpjYXNlIDIwNDg6Y2FzZSA0MDk2OmNhc2UgODE5MjpjYXNlIDE2Mzg0OmNhc2UgMzI3Njg6Y2FzZSA2NTUzNjpjYXNlIDEzMTA3MjpjYXNlIDI2MjE0NDpjYXNlIDUyNDI4ODpjYXNlIDEwNDg1NzY6Y2FzZSAyMDk3MTUyOnJldHVybiBuKzVlMztkZWZhdWx0OnJldHVybi0xfX1mdW5jdGlvbiBobihlKXtyZXR1cm4gMCE9PShlPS0xMDczNzQxODI1JmUucGVuZGluZ0xhbmVzKT9lOjEwNzM3NDE4MjQmZT8xMDczNzQxODI0OjB9ZnVuY3Rpb24gZ24oKXt2YXIgZT1jbjtyZXR1cm4hKDQxOTQyNDAmKGNuPDw9MSkpJiYoY249NjQpLGV9ZnVuY3Rpb24gdm4oZSl7Zm9yKHZhciBuPVtdLHQ9MDszMT50O3QrKyluLnB1c2goZSk7cmV0dXJuIG59ZnVuY3Rpb24geW4oZSxuLHQpe2UucGVuZGluZ0xhbmVzfD1uLDUzNjg3MDkxMiE9PW4mJihlLnN1c3BlbmRlZExhbmVzPTAsZS5waW5nZWRMYW5lcz0wKSwoZT1lLmV2ZW50VGltZXMpW249MzEtdW4obildPXR9ZnVuY3Rpb24gYm4oZSxuKXt2YXIgdD1lLmVudGFuZ2xlZExhbmVzfD1uO2ZvcihlPWUuZW50YW5nbGVtZW50czt0Oyl7dmFyIHI9MzEtdW4odCksbD0xPDxyO2wmbnxlW3JdJm4mJihlW3JdfD1uKSx0Jj1+bH19dmFyIGtuPTA7ZnVuY3Rpb24gd24oZSl7cmV0dXJuIDE8KGUmPS1lKT80PGU/MjY4NDM1NDU1JmU/MTY6NTM2ODcwOTEyOjQ6MX12YXIgU24seG4sRW4sQ24sem4sTm49ITEsX249W10sUG49bnVsbCxUbj1udWxsLExuPW51bGwsTW49bmV3IE1hcCxGbj1uZXcgTWFwLFJuPVtdLERuPSJtb3VzZWRvd24gbW91c2V1cCB0b3VjaGNhbmNlbCB0b3VjaGVuZCB0b3VjaHN0YXJ0IGF1eGNsaWNrIGRibGNsaWNrIHBvaW50ZXJjYW5jZWwgcG9pbnRlcmRvd24gcG9pbnRlcnVwIGRyYWdlbmQgZHJhZ3N0YXJ0IGRyb3AgY29tcG9zaXRpb25lbmQgY29tcG9zaXRpb25zdGFydCBrZXlkb3duIGtleXByZXNzIGtleXVwIGlucHV0IHRleHRJbnB1dCBjb3B5IGN1dCBwYXN0ZSBjbGljayBjaGFuZ2UgY29udGV4dG1lbnUgcmVzZXQgc3VibWl0Ii5zcGxpdCgiICIpO2Z1bmN0aW9uIEluKGUsbil7c3dpdGNoKGUpe2Nhc2UiZm9jdXNpbiI6Y2FzZSJmb2N1c291dCI6UG49bnVsbDticmVhaztjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnbGVhdmUiOlRuPW51bGw7YnJlYWs7Y2FzZSJtb3VzZW92ZXIiOmNhc2UibW91c2VvdXQiOkxuPW51bGw7YnJlYWs7Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVyb3V0IjpNbi5kZWxldGUobi5wb2ludGVySWQpO2JyZWFrO2Nhc2UiZ290cG9pbnRlcmNhcHR1cmUiOmNhc2UibG9zdHBvaW50ZXJjYXB0dXJlIjpGbi5kZWxldGUobi5wb2ludGVySWQpfX1mdW5jdGlvbiBPbihlLG4sdCxyLGwsYSl7cmV0dXJuIG51bGw9PT1lfHxlLm5hdGl2ZUV2ZW50IT09YT8oZT17YmxvY2tlZE9uOm4sZG9tRXZlbnROYW1lOnQsZXZlbnRTeXN0ZW1GbGFnczpyLG5hdGl2ZUV2ZW50OmEsdGFyZ2V0Q29udGFpbmVyczpbbF19LG51bGwhPT1uJiYobnVsbCE9PShuPWJsKG4pKSYmeG4obikpLAplKTooZS5ldmVudFN5c3RlbUZsYWdzfD1yLG49ZS50YXJnZXRDb250YWluZXJzLG51bGwhPT1sJiYtMT09PW4uaW5kZXhPZihsKSYmbi5wdXNoKGwpLGUpfWZ1bmN0aW9uIFVuKGUpe3ZhciBuPXlsKGUudGFyZ2V0KTtpZihudWxsIT09bil7dmFyIHQ9V2Uobik7aWYobnVsbCE9PXQpaWYoMTM9PT0obj10LnRhZykpe2lmKG51bGwhPT0obj1IZSh0KSkpcmV0dXJuIGUuYmxvY2tlZE9uPW4sdm9pZCB6bihlLnByaW9yaXR5LChmdW5jdGlvbigpe0VuKHQpfSkpfWVsc2UgaWYoMz09PW4mJnQuc3RhdGVOb2RlLmN1cnJlbnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpcmV0dXJuIHZvaWQoZS5ibG9ja2VkT249Mz09PXQudGFnP3Quc3RhdGVOb2RlLmNvbnRhaW5lckluZm86bnVsbCl9ZS5ibG9ja2VkT249bnVsbH1mdW5jdGlvbiBWbihlKXtpZihudWxsIT09ZS5ibG9ja2VkT24pcmV0dXJuITE7Zm9yKHZhciBuPWUudGFyZ2V0Q29udGFpbmVyczswPG4ubGVuZ3RoOyl7dmFyIHQ9WG4oZS5kb21FdmVudE5hbWUsZS5ldmVudFN5c3RlbUZsYWdzLG5bMF0sZS5uYXRpdmVFdmVudCk7aWYobnVsbCE9PXQpcmV0dXJuIG51bGwhPT0obj1ibCh0KSkmJnhuKG4pLGUuYmxvY2tlZE9uPXQsITE7dmFyIHI9bmV3KHQ9ZS5uYXRpdmVFdmVudCkuY29uc3RydWN0b3IodC50eXBlLHQpO2tlPXIsdC50YXJnZXQuZGlzcGF0Y2hFdmVudChyKSxrZT1udWxsLG4uc2hpZnQoKX1yZXR1cm4hMH1mdW5jdGlvbiBBbihlLG4sdCl7Vm4oZSkmJnQuZGVsZXRlKG4pfWZ1bmN0aW9uIEJuKCl7Tm49ITEsbnVsbCE9PVBuJiZWbihQbikmJihQbj1udWxsKSxudWxsIT09VG4mJlZuKFRuKSYmKFRuPW51bGwpLG51bGwhPT1MbiYmVm4oTG4pJiYoTG49bnVsbCksTW4uZm9yRWFjaChBbiksRm4uZm9yRWFjaChBbil9ZnVuY3Rpb24gV24oZSxuKXtlLmJsb2NrZWRPbj09PW4mJihlLmJsb2NrZWRPbj1udWxsLE5ufHwoTm49ITAsbC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrKGwudW5zdGFibGVfTm9ybWFsUHJpb3JpdHksQm4pKSl9ZnVuY3Rpb24gSG4oZSl7ZnVuY3Rpb24gbihuKXtyZXR1cm4gV24obixlKX1pZigwPF9uLmxlbmd0aCl7V24oX25bMF0sZSk7Zm9yKHZhciB0PTE7dDxfbi5sZW5ndGg7dCsrKXt2YXIgcj1fblt0XTtyLmJsb2NrZWRPbj09PWUmJihyLmJsb2NrZWRPbj1udWxsKX19Zm9yKG51bGwhPT1QbiYmV24oUG4sZSksbnVsbCE9PVRuJiZXbihUbixlKSxudWxsIT09TG4mJlduKExuLGUpLE1uLmZvckVhY2gobiksRm4uZm9yRWFjaChuKSx0PTA7dDxSbi5sZW5ndGg7dCsrKShyPVJuW3RdKS5ibG9ja2VkT249PT1lJiYoci5ibG9ja2VkT249bnVsbCk7Zm9yKDswPFJuLmxlbmd0aCYmbnVsbD09PSh0PVJuWzBdKS5ibG9ja2VkT247KVVuKHQpLG51bGw9PT10LmJsb2NrZWRPbiYmUm4uc2hpZnQoKX12YXIgUW49ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxqbj0hMDtmdW5jdGlvbiAkbihlLG4sdCxyKXt2YXIgbD1rbixhPVFuLnRyYW5zaXRpb247UW4udHJhbnNpdGlvbj1udWxsO3RyeXtrbj0xLEtuKGUsbix0LHIpfWZpbmFsbHl7a249bCxRbi50cmFuc2l0aW9uPWF9fWZ1bmN0aW9uIHFuKGUsbix0LHIpe3ZhciBsPWtuLGE9UW4udHJhbnNpdGlvbjtRbi50cmFuc2l0aW9uPW51bGw7dHJ5e2tuPTQsS24oZSxuLHQscil9ZmluYWxseXtrbj1sLFFuLnRyYW5zaXRpb249YX19ZnVuY3Rpb24gS24oZSxuLHQscil7aWYoam4pe3ZhciBsPVhuKGUsbix0LHIpO2lmKG51bGw9PT1sKVFyKGUsbixyLFluLHQpLEluKGUscik7ZWxzZSBpZihmdW5jdGlvbihlLG4sdCxyLGwpe3N3aXRjaChuKXtjYXNlImZvY3VzaW4iOnJldHVybiBQbj1PbihQbixlLG4sdCxyLGwpLCEwO2Nhc2UiZHJhZ2VudGVyIjpyZXR1cm4gVG49T24oVG4sZSxuLHQscixsKSwhMDtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIExuPU9uKExuLGUsbix0LHIsbCksITA7Y2FzZSJwb2ludGVyb3ZlciI6dmFyIGE9bC5wb2ludGVySWQ7cmV0dXJuIE1uLnNldChhLE9uKE1uLmdldChhKXx8bnVsbCxlLG4sdCxyLGwpKSwhMDtjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpyZXR1cm4gYT1sLnBvaW50ZXJJZCxGbi5zZXQoYSxPbihGbi5nZXQoYSl8fG51bGwsZSxuLHQscixsKSksITB9cmV0dXJuITF9KGwsZSxuLHQscikpci5zdG9wUHJvcGFnYXRpb24oKTtlbHNlIGlmKEluKGUsciksNCZuJiYtMTxEbi5pbmRleE9mKGUpKXtmb3IoO251bGwhPT1sOyl7dmFyIGE9YmwobCk7aWYobnVsbCE9PWEmJlNuKGEpLG51bGw9PT0oYT1YbihlLG4sdCxyKSkmJlFyKGUsbixyLFluLHQpLGE9PT1sKWJyZWFrO2w9YX1udWxsIT09bCYmci5zdG9wUHJvcGFnYXRpb24oKX1lbHNlIFFyKGUsbixyLG51bGwsdCl9fXZhciBZbj1udWxsO2Z1bmN0aW9uIFhuKGUsbix0LHIpe2lmKFluPW51bGwsbnVsbCE9PShlPXlsKGU9d2UocikpKSlpZihudWxsPT09KG49V2UoZSkpKWU9bnVsbDtlbHNlIGlmKDEzPT09KHQ9bi50YWcpKXtpZihudWxsIT09KGU9SGUobikpKXJldHVybiBlO2U9bnVsbH1lbHNlIGlmKDM9PT10KXtpZihuLnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiAzPT09bi50YWc/bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzpudWxsO2U9bnVsbH1lbHNlIG4hPT1lJiYoZT1udWxsKTtyZXR1cm4gWW49ZSxudWxsfWZ1bmN0aW9uIEduKGUpe3N3aXRjaChlKXtjYXNlImNhbmNlbCI6Y2FzZSJjbGljayI6Y2FzZSJjbG9zZSI6Y2FzZSJjb250ZXh0bWVudSI6Y2FzZSJjb3B5IjpjYXNlImN1dCI6Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdzdGFydCI6Y2FzZSJkcm9wIjpjYXNlImZvY3VzaW4iOmNhc2UiZm9jdXNvdXQiOmNhc2UiaW5wdXQiOmNhc2UiaW52YWxpZCI6Y2FzZSJrZXlkb3duIjpjYXNlImtleXByZXNzIjpjYXNlImtleXVwIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZXVwIjpjYXNlInBhc3RlIjpjYXNlInBhdXNlIjpjYXNlInBsYXkiOmNhc2UicG9pbnRlcmNhbmNlbCI6Y2FzZSJwb2ludGVyZG93biI6Y2FzZSJwb2ludGVydXAiOmNhc2UicmF0ZWNoYW5nZSI6CmNhc2UicmVzZXQiOmNhc2UicmVzaXplIjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG91Y2hjYW5jZWwiOmNhc2UidG91Y2hlbmQiOmNhc2UidG91Y2hzdGFydCI6Y2FzZSJ2b2x1bWVjaGFuZ2UiOmNhc2UiY2hhbmdlIjpjYXNlInNlbGVjdGlvbmNoYW5nZSI6Y2FzZSJ0ZXh0SW5wdXQiOmNhc2UiY29tcG9zaXRpb25zdGFydCI6Y2FzZSJjb21wb3NpdGlvbmVuZCI6Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6Y2FzZSJiZWZvcmVpbnB1dCI6Y2FzZSJibHVyIjpjYXNlImZ1bGxzY3JlZW5jaGFuZ2UiOmNhc2UiZm9jdXMiOmNhc2UiaGFzaGNoYW5nZSI6Y2FzZSJwb3BzdGF0ZSI6Y2FzZSJzZWxlY3QiOmNhc2Uic2VsZWN0c3RhcnQiOnJldHVybiAxO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2V4aXQiOmNhc2UiZHJhZ2xlYXZlIjpjYXNlImRyYWdvdmVyIjpjYXNlIm1vdXNlbW92ZSI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJzY3JvbGwiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ3aGVlbCI6Y2FzZSJtb3VzZWVudGVyIjpjYXNlIm1vdXNlbGVhdmUiOmNhc2UicG9pbnRlcmVudGVyIjpjYXNlInBvaW50ZXJsZWF2ZSI6cmV0dXJuIDQ7Y2FzZSJtZXNzYWdlIjpzd2l0Y2goWmUoKSl7Y2FzZSBKZTpyZXR1cm4gMTtjYXNlIGVuOnJldHVybiA0O2Nhc2Ugbm46Y2FzZSB0bjpyZXR1cm4gMTY7Y2FzZSBybjpyZXR1cm4gNTM2ODcwOTEyO2RlZmF1bHQ6cmV0dXJuIDE2fWRlZmF1bHQ6cmV0dXJuIDE2fX12YXIgWm49bnVsbCxKbj1udWxsLGV0PW51bGw7ZnVuY3Rpb24gbnQoKXtpZihldClyZXR1cm4gZXQ7dmFyIGUsbix0PUpuLHI9dC5sZW5ndGgsbD0idmFsdWUiaW4gWm4/Wm4udmFsdWU6Wm4udGV4dENvbnRlbnQsYT1sLmxlbmd0aDtmb3IoZT0wO2U8ciYmdFtlXT09PWxbZV07ZSsrKTt2YXIgdT1yLWU7Zm9yKG49MTtuPD11JiZ0W3Itbl09PT1sW2Etbl07bisrKTtyZXR1cm4gZXQ9bC5zbGljZShlLDE8bj8xLW46dm9pZCAwKX1mdW5jdGlvbiB0dChlKXt2YXIgbj1lLmtleUNvZGU7cmV0dXJuImNoYXJDb2RlImluIGU/MD09PShlPWUuY2hhckNvZGUpJiYxMz09PW4mJihlPTEzKTplPW4sMTA9PT1lJiYoZT0xMyksMzI8PWV8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gcnQoKXtyZXR1cm4hMH1mdW5jdGlvbiBsdCgpe3JldHVybiExfWZ1bmN0aW9uIGF0KGUpe2Z1bmN0aW9uIG4obix0LHIsbCxhKXtmb3IodmFyIHUgaW4gdGhpcy5fcmVhY3ROYW1lPW4sdGhpcy5fdGFyZ2V0SW5zdD1yLHRoaXMudHlwZT10LHRoaXMubmF0aXZlRXZlbnQ9bCx0aGlzLnRhcmdldD1hLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGUpZS5oYXNPd25Qcm9wZXJ0eSh1KSYmKG49ZVt1XSx0aGlzW3VdPW4/bihsKTpsW3VdKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPWwuZGVmYXVsdFByZXZlbnRlZD9sLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1sLnJldHVyblZhbHVlKT9ydDpsdCx0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPWx0LHRoaXN9cmV0dXJuIE8obi5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1ydCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1ydCl9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDpydH0pLG59dmFyIHV0LG90LGl0LHN0PXtldmVudFBoYXNlOjAsYnViYmxlczowLGNhbmNlbGFibGU6MCx0aW1lU3RhbXA6ZnVuY3Rpb24oZSl7cmV0dXJuIGUudGltZVN0YW1wfHxEYXRlLm5vdygpfSxkZWZhdWx0UHJldmVudGVkOjAsaXNUcnVzdGVkOjB9LGN0PWF0KHN0KSxmdD1PKHt9LHN0LHt2aWV3OjAsZGV0YWlsOjB9KSxkdD1hdChmdCkscHQ9Tyh7fSxmdCx7c2NyZWVuWDowLHNjcmVlblk6MCxjbGllbnRYOjAsY2xpZW50WTowLHBhZ2VYOjAscGFnZVk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxidXR0b246MCxidXR0b25zOjAscmVsYXRlZFRhcmdldDpmdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09ZS5yZWxhdGVkVGFyZ2V0P2UuZnJvbUVsZW1lbnQ9PT1lLnNyY0VsZW1lbnQ/ZS50b0VsZW1lbnQ6ZS5mcm9tRWxlbWVudDplLnJlbGF0ZWRUYXJnZXR9LG1vdmVtZW50WDpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRYImluIGU/ZS5tb3ZlbWVudFg6KGUhPT1pdCYmKGl0JiYibW91c2Vtb3ZlIj09PWUudHlwZT8odXQ9ZS5zY3JlZW5YLWl0LnNjcmVlblgsb3Q9ZS5zY3JlZW5ZLWl0LnNjcmVlblkpOm90PXV0PTAsaXQ9ZSksdXQpfSxtb3ZlbWVudFk6ZnVuY3Rpb24oZSl7cmV0dXJuIm1vdmVtZW50WSJpbiBlP2UubW92ZW1lbnRZOm90fX0pLG10PWF0KHB0KSxodD1hdChPKHt9LHB0LHtkYXRhVHJhbnNmZXI6MH0pKSxndD1hdChPKHt9LGZ0LHtyZWxhdGVkVGFyZ2V0OjB9KSksdnQ9YXQoTyh7fSxzdCx7YW5pbWF0aW9uTmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLHl0PU8oe30sc3Qse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuImNsaXBib2FyZERhdGEiaW4gZT9lLmNsaXBib2FyZERhdGE6d2luZG93LmNsaXBib2FyZERhdGF9fSksYnQ9YXQoeXQpLGt0PWF0KE8oe30sc3Qse2RhdGE6MH0pKSx3dD17RXNjOiJFc2NhcGUiLFNwYWNlYmFyOiIgIixMZWZ0OiJBcnJvd0xlZnQiLApVcDoiQXJyb3dVcCIsUmlnaHQ6IkFycm93UmlnaHQiLERvd246IkFycm93RG93biIsRGVsOiJEZWxldGUiLFdpbjoiT1MiLE1lbnU6IkNvbnRleHRNZW51IixBcHBzOiJDb250ZXh0TWVudSIsU2Nyb2xsOiJTY3JvbGxMb2NrIixNb3pQcmludGFibGVLZXk6IlVuaWRlbnRpZmllZCJ9LFN0PXs4OiJCYWNrc3BhY2UiLDk6IlRhYiIsMTI6IkNsZWFyIiwxMzoiRW50ZXIiLDE2OiJTaGlmdCIsMTc6IkNvbnRyb2wiLDE4OiJBbHQiLDE5OiJQYXVzZSIsMjA6IkNhcHNMb2NrIiwyNzoiRXNjYXBlIiwzMjoiICIsMzM6IlBhZ2VVcCIsMzQ6IlBhZ2VEb3duIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zZXJ0Iiw0NjoiRGVsZXRlIiwxMTI6IkYxIiwxMTM6IkYyIiwxMTQ6IkYzIiwxMTU6IkY0IiwxMTY6IkY1IiwxMTc6IkY2IiwxMTg6IkY3IiwxMTk6IkY4IiwxMjA6IkY5IiwxMjE6IkYxMCIsMTIyOiJGMTEiLDEyMzoiRjEyIiwxNDQ6Ik51bUxvY2siLDE0NToiU2Nyb2xsTG9jayIsMjI0OiJNZXRhIn0seHQ9e0FsdDoiYWx0S2V5IixDb250cm9sOiJjdHJsS2V5IixNZXRhOiJtZXRhS2V5IixTaGlmdDoic2hpZnRLZXkifTtmdW5jdGlvbiBFdChlKXt2YXIgbj10aGlzLm5hdGl2ZUV2ZW50O3JldHVybiBuLmdldE1vZGlmaWVyU3RhdGU/bi5nZXRNb2RpZmllclN0YXRlKGUpOiEhKGU9eHRbZV0pJiYhIW5bZV19ZnVuY3Rpb24gQ3QoKXtyZXR1cm4gRXR9dmFyIHp0PU8oe30sZnQse2tleTpmdW5jdGlvbihlKXtpZihlLmtleSl7dmFyIG49d3RbZS5rZXldfHxlLmtleTtpZigiVW5pZGVudGlmaWVkIiE9PW4pcmV0dXJuIG59cmV0dXJuImtleXByZXNzIj09PWUudHlwZT8xMz09PShlPXR0KGUpKT8iRW50ZXIiOlN0cmluZy5mcm9tQ2hhckNvZGUoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP1N0W2Uua2V5Q29kZV18fCJVbmlkZW50aWZpZWQiOiIifSxjb2RlOjAsbG9jYXRpb246MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAscmVwZWF0OjAsbG9jYWxlOjAsZ2V0TW9kaWZpZXJTdGF0ZTpDdCxjaGFyQ29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOjB9LGtleUNvZGU6ZnVuY3Rpb24oZSl7cmV0dXJuImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfSx3aGljaDpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP3R0KGUpOiJrZXlkb3duIj09PWUudHlwZXx8ImtleXVwIj09PWUudHlwZT9lLmtleUNvZGU6MH19KSxOdD1hdCh6dCksX3Q9YXQoTyh7fSxwdCx7cG9pbnRlcklkOjAsd2lkdGg6MCxoZWlnaHQ6MCxwcmVzc3VyZTowLHRhbmdlbnRpYWxQcmVzc3VyZTowLHRpbHRYOjAsdGlsdFk6MCx0d2lzdDowLHBvaW50ZXJUeXBlOjAsaXNQcmltYXJ5OjB9KSksUHQ9YXQoTyh7fSxmdCx7dG91Y2hlczowLHRhcmdldFRvdWNoZXM6MCxjaGFuZ2VkVG91Y2hlczowLGFsdEtleTowLG1ldGFLZXk6MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxnZXRNb2RpZmllclN0YXRlOkN0fSkpLFR0PWF0KE8oe30sc3Qse3Byb3BlcnR5TmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLEx0PU8oe30scHQse2RlbHRhWDpmdW5jdGlvbihlKXtyZXR1cm4iZGVsdGFYImluIGU/ZS5kZWx0YVg6IndoZWVsRGVsdGFYImluIGU/LWUud2hlZWxEZWx0YVg6MH0sZGVsdGFZOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVkiaW4gZT9lLmRlbHRhWToid2hlZWxEZWx0YVkiaW4gZT8tZS53aGVlbERlbHRhWToid2hlZWxEZWx0YSJpbiBlPy1lLndoZWVsRGVsdGE6MH0sZGVsdGFaOjAsZGVsdGFNb2RlOjB9KSxNdD1hdChMdCksRnQ9WzksMTMsMjcsMzJdLFJ0PWMmJiJDb21wb3NpdGlvbkV2ZW50ImluIHdpbmRvdyxEdD1udWxsO2MmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJihEdD1kb2N1bWVudC5kb2N1bWVudE1vZGUpO3ZhciBJdD1jJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIUR0LE90PWMmJighUnR8fER0JiY4PER0JiYxMT49RHQpLFV0PVN0cmluZy5mcm9tQ2hhckNvZGUoMzIpLFZ0PSExO2Z1bmN0aW9uIEF0KGUsbil7c3dpdGNoKGUpe2Nhc2Uia2V5dXAiOnJldHVybi0xIT09RnQuaW5kZXhPZihuLmtleUNvZGUpO2Nhc2Uia2V5ZG93biI6cmV0dXJuIDIyOSE9PW4ua2V5Q29kZTtjYXNlImtleXByZXNzIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJmb2N1c291dCI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4hMX19ZnVuY3Rpb24gQnQoZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZihlPWUuZGV0YWlsKSYmImRhdGEiaW4gZT9lLmRhdGE6bnVsbH12YXIgV3Q9ITE7dmFyIEh0PXtjb2xvcjohMCxkYXRlOiEwLGRhdGV0aW1lOiEwLCJkYXRldGltZS1sb2NhbCI6ITAsZW1haWw6ITAsbW9udGg6ITAsbnVtYmVyOiEwLHBhc3N3b3JkOiEwLHJhbmdlOiEwLHNlYXJjaDohMCx0ZWw6ITAsdGV4dDohMCx0aW1lOiEwLHVybDohMCx3ZWVrOiEwfTtmdW5jdGlvbiBRdChlKXt2YXIgbj1lJiZlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PW4/ISFIdFtlLnR5cGVdOiJ0ZXh0YXJlYSI9PT1ufWZ1bmN0aW9uIGp0KGUsbix0LHIpe3plKHIpLDA8KG49JHIobiwib25DaGFuZ2UiKSkubGVuZ3RoJiYodD1uZXcgY3QoIm9uQ2hhbmdlIiwiY2hhbmdlIixudWxsLHQsciksZS5wdXNoKHtldmVudDp0LGxpc3RlbmVyczpufSkpfXZhciAkdD1udWxsLHF0PW51bGw7ZnVuY3Rpb24gS3QoZSl7VXIoZSwwKX1mdW5jdGlvbiBZdChlKXtpZihxKGtsKGUpKSlyZXR1cm4gZX1mdW5jdGlvbiBYdChlLG4pe2lmKCJjaGFuZ2UiPT09ZSlyZXR1cm4gbn12YXIgR3Q9ITE7aWYoYyl7dmFyIFp0O2lmKGMpe3ZhciBKdD0ib25pbnB1dCJpbiBkb2N1bWVudDtpZighSnQpe3ZhciBlcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlci5zZXRBdHRyaWJ1dGUoIm9uaW5wdXQiLCJyZXR1cm47IiksSnQ9ImZ1bmN0aW9uIj09dHlwZW9mIGVyLm9uaW5wdXR9WnQ9SnQKfWVsc2UgWnQ9ITE7R3Q9WnQmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHw5PGRvY3VtZW50LmRvY3VtZW50TW9kZSl9ZnVuY3Rpb24gbnIoKXskdCYmKCR0LmRldGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikscXQ9JHQ9bnVsbCl9ZnVuY3Rpb24gdHIoZSl7aWYoInZhbHVlIj09PWUucHJvcGVydHlOYW1lJiZZdChxdCkpe3ZhciBuPVtdO2p0KG4scXQsZSx3ZShlKSksTGUoS3Qsbil9fWZ1bmN0aW9uIHJyKGUsbix0KXsiZm9jdXNpbiI9PT1lPyhucigpLHF0PXQsKCR0PW4pLmF0dGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIix0cikpOiJmb2N1c291dCI9PT1lJiZucigpfWZ1bmN0aW9uIGxyKGUpe2lmKCJzZWxlY3Rpb25jaGFuZ2UiPT09ZXx8ImtleXVwIj09PWV8fCJrZXlkb3duIj09PWUpcmV0dXJuIFl0KHF0KX1mdW5jdGlvbiBhcihlLG4pe2lmKCJjbGljayI9PT1lKXJldHVybiBZdChuKX1mdW5jdGlvbiB1cihlLG4pe2lmKCJpbnB1dCI9PT1lfHwiY2hhbmdlIj09PWUpcmV0dXJuIFl0KG4pfXZhciBvcj0iZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmlzP09iamVjdC5pczpmdW5jdGlvbihlLG4pe3JldHVybiBlPT09biYmKDAhPT1lfHwxL2U9PTEvbil8fGUhPWUmJm4hPW59O2Z1bmN0aW9uIGlyKGUsbil7aWYob3IoZSxuKSlyZXR1cm4hMDtpZigib2JqZWN0IiE9dHlwZW9mIGV8fG51bGw9PT1lfHwib2JqZWN0IiE9dHlwZW9mIG58fG51bGw9PT1uKXJldHVybiExO3ZhciB0PU9iamVjdC5rZXlzKGUpLHI9T2JqZWN0LmtleXMobik7aWYodC5sZW5ndGghPT1yLmxlbmd0aClyZXR1cm4hMTtmb3Iocj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO2lmKCFmLmNhbGwobixsKXx8IW9yKGVbbF0sbltsXSkpcmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gc3IoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIGNyKGUsbil7dmFyIHQscj1zcihlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYodD1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PW4mJnQ+PW4pcmV0dXJue25vZGU6cixvZmZzZXQ6bi1lfTtlPXR9ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1zcihyKX19ZnVuY3Rpb24gZnIoZSxuKXtyZXR1cm4hKCFlfHwhbikmJihlPT09bnx8KCFlfHwzIT09ZS5ub2RlVHlwZSkmJihuJiYzPT09bi5ub2RlVHlwZT9mcihlLG4ucGFyZW50Tm9kZSk6ImNvbnRhaW5zImluIGU/ZS5jb250YWlucyhuKTohIWUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJiEhKDE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24obikpKSl9ZnVuY3Rpb24gZHIoKXtmb3IodmFyIGU9d2luZG93LG49SygpO24gaW5zdGFuY2VvZiBlLkhUTUxJRnJhbWVFbGVtZW50Oyl7dHJ5e3ZhciB0PSJzdHJpbmciPT10eXBlb2Ygbi5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWZ9Y2F0Y2goZSl7dD0hMX1pZighdClicmVhaztuPUsoKGU9bi5jb250ZW50V2luZG93KS5kb2N1bWVudCl9cmV0dXJuIG59ZnVuY3Rpb24gcHIoZSl7dmFyIG49ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiBuJiYoImlucHV0Ij09PW4mJigidGV4dCI9PT1lLnR5cGV8fCJzZWFyY2giPT09ZS50eXBlfHwidGVsIj09PWUudHlwZXx8InVybCI9PT1lLnR5cGV8fCJwYXNzd29yZCI9PT1lLnR5cGUpfHwidGV4dGFyZWEiPT09bnx8InRydWUiPT09ZS5jb250ZW50RWRpdGFibGUpfWZ1bmN0aW9uIG1yKGUpe3ZhciBuPWRyKCksdD1lLmZvY3VzZWRFbGVtLHI9ZS5zZWxlY3Rpb25SYW5nZTtpZihuIT09dCYmdCYmdC5vd25lckRvY3VtZW50JiZmcih0Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHQpKXtpZihudWxsIT09ciYmcHIodCkpaWYobj1yLnN0YXJ0LHZvaWQgMD09PShlPXIuZW5kKSYmKGU9biksInNlbGVjdGlvblN0YXJ0ImluIHQpdC5zZWxlY3Rpb25TdGFydD1uLHQuc2VsZWN0aW9uRW5kPU1hdGgubWluKGUsdC52YWx1ZS5sZW5ndGgpO2Vsc2UgaWYoKGU9KG49dC5vd25lckRvY3VtZW50fHxkb2N1bWVudCkmJm4uZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uKXtlPWUuZ2V0U2VsZWN0aW9uKCk7dmFyIGw9dC50ZXh0Q29udGVudC5sZW5ndGgsYT1NYXRoLm1pbihyLnN0YXJ0LGwpO3I9dm9pZCAwPT09ci5lbmQ/YTpNYXRoLm1pbihyLmVuZCxsKSwhZS5leHRlbmQmJmE+ciYmKGw9cixyPWEsYT1sKSxsPWNyKHQsYSk7dmFyIHU9Y3IodCxyKTtsJiZ1JiYoMSE9PWUucmFuZ2VDb3VudHx8ZS5hbmNob3JOb2RlIT09bC5ub2RlfHxlLmFuY2hvck9mZnNldCE9PWwub2Zmc2V0fHxlLmZvY3VzTm9kZSE9PXUubm9kZXx8ZS5mb2N1c09mZnNldCE9PXUub2Zmc2V0KSYmKChuPW4uY3JlYXRlUmFuZ2UoKSkuc2V0U3RhcnQobC5ub2RlLGwub2Zmc2V0KSxlLnJlbW92ZUFsbFJhbmdlcygpLGE+cj8oZS5hZGRSYW5nZShuKSxlLmV4dGVuZCh1Lm5vZGUsdS5vZmZzZXQpKToobi5zZXRFbmQodS5ub2RlLHUub2Zmc2V0KSxlLmFkZFJhbmdlKG4pKSl9Zm9yKG49W10sZT10O2U9ZS5wYXJlbnROb2RlOykxPT09ZS5ub2RlVHlwZSYmbi5wdXNoKHtlbGVtZW50OmUsbGVmdDplLnNjcm9sbExlZnQsdG9wOmUuc2Nyb2xsVG9wfSk7Zm9yKCJmdW5jdGlvbiI9PXR5cGVvZiB0LmZvY3VzJiZ0LmZvY3VzKCksdD0wO3Q8bi5sZW5ndGg7dCsrKShlPW5bdF0pLmVsZW1lbnQuc2Nyb2xsTGVmdD1lLmxlZnQsZS5lbGVtZW50LnNjcm9sbFRvcD1lLnRvcH19dmFyIGhyPWMmJiJkb2N1bWVudE1vZGUiaW4gZG9jdW1lbnQmJjExPj1kb2N1bWVudC5kb2N1bWVudE1vZGUsZ3I9bnVsbCx2cj1udWxsLHlyPW51bGwsYnI9ITE7ZnVuY3Rpb24ga3IoZSxuLHQpe3ZhciByPXQud2luZG93PT09dD90LmRvY3VtZW50Ojk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50O2JyfHxudWxsPT1ncnx8Z3IhPT1LKHIpfHwoInNlbGVjdGlvblN0YXJ0ImluKHI9Z3IpJiZwcihyKT9yPXtzdGFydDpyLnNlbGVjdGlvblN0YXJ0LGVuZDpyLnNlbGVjdGlvbkVuZAp9OnI9e2FuY2hvck5vZGU6KHI9KHIub3duZXJEb2N1bWVudCYmci5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbigpKS5hbmNob3JOb2RlLGFuY2hvck9mZnNldDpyLmFuY2hvck9mZnNldCxmb2N1c05vZGU6ci5mb2N1c05vZGUsZm9jdXNPZmZzZXQ6ci5mb2N1c09mZnNldH0seXImJmlyKHlyLHIpfHwoeXI9ciwwPChyPSRyKHZyLCJvblNlbGVjdCIpKS5sZW5ndGgmJihuPW5ldyBjdCgib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsbix0KSxlLnB1c2goe2V2ZW50Om4sbGlzdGVuZXJzOnJ9KSxuLnRhcmdldD1ncikpKX1mdW5jdGlvbiB3cihlLG4pe3ZhciB0PXt9O3JldHVybiB0W2UudG9Mb3dlckNhc2UoKV09bi50b0xvd2VyQ2FzZSgpLHRbIldlYmtpdCIrZV09IndlYmtpdCIrbix0WyJNb3oiK2VdPSJtb3oiK24sdH12YXIgU3I9e2FuaW1hdGlvbmVuZDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uRW5kIiksYW5pbWF0aW9uaXRlcmF0aW9uOndyKCJBbmltYXRpb24iLCJBbmltYXRpb25JdGVyYXRpb24iKSxhbmltYXRpb25zdGFydDp3cigiQW5pbWF0aW9uIiwiQW5pbWF0aW9uU3RhcnQiKSx0cmFuc2l0aW9uZW5kOndyKCJUcmFuc2l0aW9uIiwiVHJhbnNpdGlvbkVuZCIpfSx4cj17fSxFcj17fTtmdW5jdGlvbiBDcihlKXtpZih4cltlXSlyZXR1cm4geHJbZV07aWYoIVNyW2VdKXJldHVybiBlO3ZhciBuLHQ9U3JbZV07Zm9yKG4gaW4gdClpZih0Lmhhc093blByb3BlcnR5KG4pJiZuIGluIEVyKXJldHVybiB4cltlXT10W25dO3JldHVybiBlfWMmJihFcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKS5zdHlsZSwiQW5pbWF0aW9uRXZlbnQiaW4gd2luZG93fHwoZGVsZXRlIFNyLmFuaW1hdGlvbmVuZC5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbml0ZXJhdGlvbi5hbmltYXRpb24sZGVsZXRlIFNyLmFuaW1hdGlvbnN0YXJ0LmFuaW1hdGlvbiksIlRyYW5zaXRpb25FdmVudCJpbiB3aW5kb3d8fGRlbGV0ZSBTci50cmFuc2l0aW9uZW5kLnRyYW5zaXRpb24pO3ZhciB6cj1DcigiYW5pbWF0aW9uZW5kIiksTnI9Q3IoImFuaW1hdGlvbml0ZXJhdGlvbiIpLF9yPUNyKCJhbmltYXRpb25zdGFydCIpLFByPUNyKCJ0cmFuc2l0aW9uZW5kIiksVHI9bmV3IE1hcCxMcj0iYWJvcnQgYXV4Q2xpY2sgY2FuY2VsIGNhblBsYXkgY2FuUGxheVRocm91Z2ggY2xpY2sgY2xvc2UgY29udGV4dE1lbnUgY29weSBjdXQgZHJhZyBkcmFnRW5kIGRyYWdFbnRlciBkcmFnRXhpdCBkcmFnTGVhdmUgZHJhZ092ZXIgZHJhZ1N0YXJ0IGRyb3AgZHVyYXRpb25DaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgZ290UG9pbnRlckNhcHR1cmUgaW5wdXQgaW52YWxpZCBrZXlEb3duIGtleVByZXNzIGtleVVwIGxvYWQgbG9hZGVkRGF0YSBsb2FkZWRNZXRhZGF0YSBsb2FkU3RhcnQgbG9zdFBvaW50ZXJDYXB0dXJlIG1vdXNlRG93biBtb3VzZU1vdmUgbW91c2VPdXQgbW91c2VPdmVyIG1vdXNlVXAgcGFzdGUgcGF1c2UgcGxheSBwbGF5aW5nIHBvaW50ZXJDYW5jZWwgcG9pbnRlckRvd24gcG9pbnRlck1vdmUgcG9pbnRlck91dCBwb2ludGVyT3ZlciBwb2ludGVyVXAgcHJvZ3Jlc3MgcmF0ZUNoYW5nZSByZXNldCByZXNpemUgc2Vla2VkIHNlZWtpbmcgc3RhbGxlZCBzdWJtaXQgc3VzcGVuZCB0aW1lVXBkYXRlIHRvdWNoQ2FuY2VsIHRvdWNoRW5kIHRvdWNoU3RhcnQgdm9sdW1lQ2hhbmdlIHNjcm9sbCB0b2dnbGUgdG91Y2hNb3ZlIHdhaXRpbmcgd2hlZWwiLnNwbGl0KCIgIik7ZnVuY3Rpb24gTXIoZSxuKXtUci5zZXQoZSxuKSxpKG4sW2VdKX1mb3IodmFyIEZyPTA7RnI8THIubGVuZ3RoO0ZyKyspe3ZhciBScj1McltGcl07TXIoUnIudG9Mb3dlckNhc2UoKSwib24iKyhSclswXS50b1VwcGVyQ2FzZSgpK1JyLnNsaWNlKDEpKSl9TXIoenIsIm9uQW5pbWF0aW9uRW5kIiksTXIoTnIsIm9uQW5pbWF0aW9uSXRlcmF0aW9uIiksTXIoX3IsIm9uQW5pbWF0aW9uU3RhcnQiKSxNcigiZGJsY2xpY2siLCJvbkRvdWJsZUNsaWNrIiksTXIoImZvY3VzaW4iLCJvbkZvY3VzIiksTXIoImZvY3Vzb3V0Iiwib25CbHVyIiksTXIoUHIsIm9uVHJhbnNpdGlvbkVuZCIpLHMoIm9uTW91c2VFbnRlciIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSxzKCJvbk1vdXNlTGVhdmUiLFsibW91c2VvdXQiLCJtb3VzZW92ZXIiXSkscygib25Qb2ludGVyRW50ZXIiLFsicG9pbnRlcm91dCIsInBvaW50ZXJvdmVyIl0pLHMoIm9uUG9pbnRlckxlYXZlIixbInBvaW50ZXJvdXQiLCJwb2ludGVyb3ZlciJdKSxpKCJvbkNoYW5nZSIsImNoYW5nZSBjbGljayBmb2N1c2luIGZvY3Vzb3V0IGlucHV0IGtleWRvd24ga2V5dXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxpKCJvblNlbGVjdCIsImZvY3Vzb3V0IGNvbnRleHRtZW51IGRyYWdlbmQgZm9jdXNpbiBrZXlkb3duIGtleXVwIG1vdXNlZG93biBtb3VzZXVwIHNlbGVjdGlvbmNoYW5nZSIuc3BsaXQoIiAiKSksaSgib25CZWZvcmVJbnB1dCIsWyJjb21wb3NpdGlvbmVuZCIsImtleXByZXNzIiwidGV4dElucHV0IiwicGFzdGUiXSksaSgib25Db21wb3NpdGlvbkVuZCIsImNvbXBvc2l0aW9uZW5kIGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uU3RhcnQiLCJjb21wb3NpdGlvbnN0YXJ0IGZvY3Vzb3V0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgbW91c2Vkb3duIi5zcGxpdCgiICIpKSxpKCJvbkNvbXBvc2l0aW9uVXBkYXRlIiwiY29tcG9zaXRpb251cGRhdGUgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpCjt2YXIgRHI9ImFib3J0IGNhbnBsYXkgY2FucGxheXRocm91Z2ggZHVyYXRpb25jaGFuZ2UgZW1wdGllZCBlbmNyeXB0ZWQgZW5kZWQgZXJyb3IgbG9hZGVkZGF0YSBsb2FkZWRtZXRhZGF0YSBsb2Fkc3RhcnQgcGF1c2UgcGxheSBwbGF5aW5nIHByb2dyZXNzIHJhdGVjaGFuZ2UgcmVzaXplIHNlZWtlZCBzZWVraW5nIHN0YWxsZWQgc3VzcGVuZCB0aW1ldXBkYXRlIHZvbHVtZWNoYW5nZSB3YWl0aW5nIi5zcGxpdCgiICIpLElyPW5ldyBTZXQoImNhbmNlbCBjbG9zZSBpbnZhbGlkIGxvYWQgc2Nyb2xsIHRvZ2dsZSIuc3BsaXQoIiAiKS5jb25jYXQoRHIpKTtmdW5jdGlvbiBPcihlLG4sdCl7dmFyIHI9ZS50eXBlfHwidW5rbm93bi1ldmVudCI7ZS5jdXJyZW50VGFyZ2V0PXQsZnVuY3Rpb24oZSxuLHQscixsLHUsbyxpLHMpe2lmKEJlLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxJZSl7aWYoIUllKXRocm93IEVycm9yKGEoMTk4KSk7dmFyIGM9T2U7SWU9ITEsT2U9bnVsbCxVZXx8KFVlPSEwLFZlPWMpfX0ocixuLHZvaWQgMCxlKSxlLmN1cnJlbnRUYXJnZXQ9bnVsbH1mdW5jdGlvbiBVcihlLG4pe249ISEoNCZuKTtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIHI9ZVt0XSxsPXIuZXZlbnQ7cj1yLmxpc3RlbmVycztlOnt2YXIgYT12b2lkIDA7aWYobilmb3IodmFyIHU9ci5sZW5ndGgtMTswPD11O3UtLSl7dmFyIG89clt1XSxpPW8uaW5zdGFuY2Uscz1vLmN1cnJlbnRUYXJnZXQ7aWYobz1vLmxpc3RlbmVyLGkhPT1hJiZsLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYnJlYWsgZTtPcihsLG8scyksYT1pfWVsc2UgZm9yKHU9MDt1PHIubGVuZ3RoO3UrKyl7aWYoaT0obz1yW3VdKS5pbnN0YW5jZSxzPW8uY3VycmVudFRhcmdldCxvPW8ubGlzdGVuZXIsaSE9PWEmJmwuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO09yKGwsbyxzKSxhPWl9fX1pZihVZSl0aHJvdyBlPVZlLFVlPSExLFZlPW51bGwsZX1mdW5jdGlvbiBWcihlLG4pe3ZhciB0PW5baGxdO3ZvaWQgMD09PXQmJih0PW5baGxdPW5ldyBTZXQpO3ZhciByPWUrIl9fYnViYmxlIjt0LmhhcyhyKXx8KEhyKG4sZSwyLCExKSx0LmFkZChyKSl9ZnVuY3Rpb24gQXIoZSxuLHQpe3ZhciByPTA7biYmKHJ8PTQpLEhyKHQsZSxyLG4pfXZhciBCcj0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiBXcihlKXtpZighZVtCcl0pe2VbQnJdPSEwLHUuZm9yRWFjaCgoZnVuY3Rpb24obil7InNlbGVjdGlvbmNoYW5nZSIhPT1uJiYoSXIuaGFzKG4pfHxBcihuLCExLGUpLEFyKG4sITAsZSkpfSkpO3ZhciBuPTk9PT1lLm5vZGVUeXBlP2U6ZS5vd25lckRvY3VtZW50O251bGw9PT1ufHxuW0JyXXx8KG5bQnJdPSEwLEFyKCJzZWxlY3Rpb25jaGFuZ2UiLCExLG4pKX19ZnVuY3Rpb24gSHIoZSxuLHQscil7c3dpdGNoKEduKG4pKXtjYXNlIDE6dmFyIGw9JG47YnJlYWs7Y2FzZSA0Omw9cW47YnJlYWs7ZGVmYXVsdDpsPUtufXQ9bC5iaW5kKG51bGwsbix0LGUpLGw9dm9pZCAwLCFGZXx8InRvdWNoc3RhcnQiIT09biYmInRvdWNobW92ZSIhPT1uJiYid2hlZWwiIT09bnx8KGw9ITApLHI/dm9pZCAwIT09bD9lLmFkZEV2ZW50TGlzdGVuZXIobix0LHtjYXB0dXJlOiEwLHBhc3NpdmU6bH0pOmUuYWRkRXZlbnRMaXN0ZW5lcihuLHQsITApOnZvaWQgMCE9PWw/ZS5hZGRFdmVudExpc3RlbmVyKG4sdCx7cGFzc2l2ZTpsfSk6ZS5hZGRFdmVudExpc3RlbmVyKG4sdCwhMSl9ZnVuY3Rpb24gUXIoZSxuLHQscixsKXt2YXIgYT1yO2lmKCEoMSZufHwyJm58fG51bGw9PT1yKSllOmZvcig7Oyl7aWYobnVsbD09PXIpcmV0dXJuO3ZhciB1PXIudGFnO2lmKDM9PT11fHw0PT09dSl7dmFyIG89ci5zdGF0ZU5vZGUuY29udGFpbmVySW5mbztpZihvPT09bHx8OD09PW8ubm9kZVR5cGUmJm8ucGFyZW50Tm9kZT09PWwpYnJlYWs7aWYoND09PXUpZm9yKHU9ci5yZXR1cm47bnVsbCE9PXU7KXt2YXIgaT11LnRhZztpZigoMz09PWl8fDQ9PT1pKSYmKChpPXUuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pPT09bHx8OD09PWkubm9kZVR5cGUmJmkucGFyZW50Tm9kZT09PWwpKXJldHVybjt1PXUucmV0dXJufWZvcig7bnVsbCE9PW87KXtpZihudWxsPT09KHU9eWwobykpKXJldHVybjtpZig1PT09KGk9dS50YWcpfHw2PT09aSl7cj1hPXU7Y29udGludWUgZX1vPW8ucGFyZW50Tm9kZX19cj1yLnJldHVybn1MZSgoZnVuY3Rpb24oKXt2YXIgcj1hLGw9d2UodCksdT1bXTtlOnt2YXIgbz1Uci5nZXQoZSk7aWYodm9pZCAwIT09byl7dmFyIGk9Y3Qscz1lO3N3aXRjaChlKXtjYXNlImtleXByZXNzIjppZigwPT09dHQodCkpYnJlYWsgZTtjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmk9TnQ7YnJlYWs7Y2FzZSJmb2N1c2luIjpzPSJmb2N1cyIsaT1ndDticmVhaztjYXNlImZvY3Vzb3V0IjpzPSJibHVyIixpPWd0O2JyZWFrO2Nhc2UiYmVmb3JlYmx1ciI6Y2FzZSJhZnRlcmJsdXIiOmk9Z3Q7YnJlYWs7Y2FzZSJjbGljayI6aWYoMj09PXQuYnV0dG9uKWJyZWFrIGU7Y2FzZSJhdXhjbGljayI6Y2FzZSJkYmxjbGljayI6Y2FzZSJtb3VzZWRvd24iOmNhc2UibW91c2Vtb3ZlIjpjYXNlIm1vdXNldXAiOmNhc2UibW91c2VvdXQiOmNhc2UibW91c2VvdmVyIjpjYXNlImNvbnRleHRtZW51IjppPW10O2JyZWFrO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW5kIjpjYXNlImRyYWdlbnRlciI6Y2FzZSJkcmFnZXhpdCI6Y2FzZSJkcmFnbGVhdmUiOmNhc2UiZHJhZ292ZXIiOmNhc2UiZHJhZ3N0YXJ0IjpjYXNlImRyb3AiOmk9aHQ7YnJlYWs7Y2FzZSJ0b3VjaGNhbmNlbCI6Y2FzZSJ0b3VjaGVuZCI6Y2FzZSJ0b3VjaG1vdmUiOmNhc2UidG91Y2hzdGFydCI6aT1QdDticmVhaztjYXNlIHpyOmNhc2UgTnI6Y2FzZSBfcjppPXZ0O2JyZWFrO2Nhc2UgUHI6aT1UdDticmVhaztjYXNlInNjcm9sbCI6aT1kdDticmVhaztjYXNlIndoZWVsIjppPU10O2JyZWFrO2Nhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UicGFzdGUiOmk9YnQ7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOgpjYXNlInBvaW50ZXJjYW5jZWwiOmNhc2UicG9pbnRlcmRvd24iOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJwb2ludGVydXAiOmk9X3R9dmFyIGM9ISEoNCZuKSxmPSFjJiYic2Nyb2xsIj09PWUsZD1jP251bGwhPT1vP28rIkNhcHR1cmUiOm51bGw6bztjPVtdO2Zvcih2YXIgcCxtPXI7bnVsbCE9PW07KXt2YXIgaD0ocD1tKS5zdGF0ZU5vZGU7aWYoNT09PXAudGFnJiZudWxsIT09aCYmKHA9aCxudWxsIT09ZCYmKG51bGwhPShoPU1lKG0sZCkpJiZjLnB1c2goanIobSxoLHApKSkpLGYpYnJlYWs7bT1tLnJldHVybn0wPGMubGVuZ3RoJiYobz1uZXcgaShvLHMsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6byxsaXN0ZW5lcnM6Y30pKX19aWYoISg3Jm4pKXtpZihpPSJtb3VzZW91dCI9PT1lfHwicG9pbnRlcm91dCI9PT1lLCghKG89Im1vdXNlb3ZlciI9PT1lfHwicG9pbnRlcm92ZXIiPT09ZSl8fHQ9PT1rZXx8IShzPXQucmVsYXRlZFRhcmdldHx8dC5mcm9tRWxlbWVudCl8fCF5bChzKSYmIXNbbWxdKSYmKGl8fG8pJiYobz1sLndpbmRvdz09PWw/bDoobz1sLm93bmVyRG9jdW1lbnQpP28uZGVmYXVsdFZpZXd8fG8ucGFyZW50V2luZG93OndpbmRvdyxpPyhpPXIsbnVsbCE9PShzPShzPXQucmVsYXRlZFRhcmdldHx8dC50b0VsZW1lbnQpP3lsKHMpOm51bGwpJiYocyE9PShmPVdlKHMpKXx8NSE9PXMudGFnJiY2IT09cy50YWcpJiYocz1udWxsKSk6KGk9bnVsbCxzPXIpLGkhPT1zKSl7aWYoYz1tdCxoPSJvbk1vdXNlTGVhdmUiLGQ9Im9uTW91c2VFbnRlciIsbT0ibW91c2UiLCJwb2ludGVyb3V0IiE9PWUmJiJwb2ludGVyb3ZlciIhPT1lfHwoYz1fdCxoPSJvblBvaW50ZXJMZWF2ZSIsZD0ib25Qb2ludGVyRW50ZXIiLG09InBvaW50ZXIiKSxmPW51bGw9PWk/bzprbChpKSxwPW51bGw9PXM/bzprbChzKSwobz1uZXcgYyhoLG0rImxlYXZlIixpLHQsbCkpLnRhcmdldD1mLG8ucmVsYXRlZFRhcmdldD1wLGg9bnVsbCx5bChsKT09PXImJigoYz1uZXcgYyhkLG0rImVudGVyIixzLHQsbCkpLnRhcmdldD1wLGMucmVsYXRlZFRhcmdldD1mLGg9YyksZj1oLGkmJnMpZTp7Zm9yKGQ9cyxtPTAscD1jPWk7cDtwPXFyKHApKW0rKztmb3IocD0wLGg9ZDtoO2g9cXIoaCkpcCsrO2Zvcig7MDxtLXA7KWM9cXIoYyksbS0tO2Zvcig7MDxwLW07KWQ9cXIoZCkscC0tO2Zvcig7bS0tOyl7aWYoYz09PWR8fG51bGwhPT1kJiZjPT09ZC5hbHRlcm5hdGUpYnJlYWsgZTtjPXFyKGMpLGQ9cXIoZCl9Yz1udWxsfWVsc2UgYz1udWxsO251bGwhPT1pJiZLcih1LG8saSxjLCExKSxudWxsIT09cyYmbnVsbCE9PWYmJktyKHUsZixzLGMsITApfWlmKCJzZWxlY3QiPT09KGk9KG89cj9rbChyKTp3aW5kb3cpLm5vZGVOYW1lJiZvLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpfHwiaW5wdXQiPT09aSYmImZpbGUiPT09by50eXBlKXZhciBnPVh0O2Vsc2UgaWYoUXQobykpaWYoR3QpZz11cjtlbHNle2c9bHI7dmFyIHY9cnJ9ZWxzZShpPW8ubm9kZU5hbWUpJiYiaW5wdXQiPT09aS50b0xvd2VyQ2FzZSgpJiYoImNoZWNrYm94Ij09PW8udHlwZXx8InJhZGlvIj09PW8udHlwZSkmJihnPWFyKTtzd2l0Y2goZyYmKGc9ZyhlLHIpKT9qdCh1LGcsdCxsKToodiYmdihlLG8sciksImZvY3Vzb3V0Ij09PWUmJih2PW8uX3dyYXBwZXJTdGF0ZSkmJnYuY29udHJvbGxlZCYmIm51bWJlciI9PT1vLnR5cGUmJmVlKG8sIm51bWJlciIsby52YWx1ZSkpLHY9cj9rbChyKTp3aW5kb3csZSl7Y2FzZSJmb2N1c2luIjooUXQodil8fCJ0cnVlIj09PXYuY29udGVudEVkaXRhYmxlKSYmKGdyPXYsdnI9cix5cj1udWxsKTticmVhaztjYXNlImZvY3Vzb3V0Ijp5cj12cj1ncj1udWxsO2JyZWFrO2Nhc2UibW91c2Vkb3duIjpicj0hMDticmVhaztjYXNlImNvbnRleHRtZW51IjpjYXNlIm1vdXNldXAiOmNhc2UiZHJhZ2VuZCI6YnI9ITEsa3IodSx0LGwpO2JyZWFrO2Nhc2Uic2VsZWN0aW9uY2hhbmdlIjppZihocilicmVhaztjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOmtyKHUsdCxsKX12YXIgeTtpZihSdCllOntzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbnN0YXJ0Ijp2YXIgYj0ib25Db21wb3NpdGlvblN0YXJ0IjticmVhayBlO2Nhc2UiY29tcG9zaXRpb25lbmQiOmI9Im9uQ29tcG9zaXRpb25FbmQiO2JyZWFrIGU7Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Yj0ib25Db21wb3NpdGlvblVwZGF0ZSI7YnJlYWsgZX1iPXZvaWQgMH1lbHNlIFd0P0F0KGUsdCkmJihiPSJvbkNvbXBvc2l0aW9uRW5kIik6ImtleWRvd24iPT09ZSYmMjI5PT09dC5rZXlDb2RlJiYoYj0ib25Db21wb3NpdGlvblN0YXJ0Iik7YiYmKE90JiYia28iIT09dC5sb2NhbGUmJihXdHx8Im9uQ29tcG9zaXRpb25TdGFydCIhPT1iPyJvbkNvbXBvc2l0aW9uRW5kIj09PWImJld0JiYoeT1udCgpKTooSm49InZhbHVlImluKFpuPWwpP1puLnZhbHVlOlpuLnRleHRDb250ZW50LFd0PSEwKSksMDwodj0kcihyLGIpKS5sZW5ndGgmJihiPW5ldyBrdChiLGUsbnVsbCx0LGwpLHUucHVzaCh7ZXZlbnQ6YixsaXN0ZW5lcnM6dn0pLHk/Yi5kYXRhPXk6bnVsbCE9PSh5PUJ0KHQpKSYmKGIuZGF0YT15KSkpLCh5PUl0P2Z1bmN0aW9uKGUsbil7c3dpdGNoKGUpe2Nhc2UiY29tcG9zaXRpb25lbmQiOnJldHVybiBCdChuKTtjYXNlImtleXByZXNzIjpyZXR1cm4gMzIhPT1uLndoaWNoP251bGw6KFZ0PSEwLFV0KTtjYXNlInRleHRJbnB1dCI6cmV0dXJuKGU9bi5kYXRhKT09PVV0JiZWdD9udWxsOmU7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KGUsdCk6ZnVuY3Rpb24oZSxuKXtpZihXdClyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IVJ0JiZBdChlLG4pPyhlPW50KCksZXQ9Sm49Wm49bnVsbCxXdD0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpkZWZhdWx0OnJldHVybiBudWxsO2Nhc2Uia2V5cHJlc3MiOmlmKCEobi5jdHJsS2V5fHxuLmFsdEtleXx8bi5tZXRhS2V5KXx8bi5jdHJsS2V5JiZuLmFsdEtleSl7aWYobi5jaGFyJiYxPG4uY2hhci5sZW5ndGgpcmV0dXJuIG4uY2hhcgo7aWYobi53aGljaClyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShuLndoaWNoKX1yZXR1cm4gbnVsbDtjYXNlImNvbXBvc2l0aW9uZW5kIjpyZXR1cm4gT3QmJiJrbyIhPT1uLmxvY2FsZT9udWxsOm4uZGF0YX19KGUsdCkpJiYoMDwocj0kcihyLCJvbkJlZm9yZUlucHV0IikpLmxlbmd0aCYmKGw9bmV3IGt0KCJvbkJlZm9yZUlucHV0IiwiYmVmb3JlaW5wdXQiLG51bGwsdCxsKSx1LnB1c2goe2V2ZW50OmwsbGlzdGVuZXJzOnJ9KSxsLmRhdGE9eSkpfVVyKHUsbil9KSl9ZnVuY3Rpb24ganIoZSxuLHQpe3JldHVybntpbnN0YW5jZTplLGxpc3RlbmVyOm4sY3VycmVudFRhcmdldDp0fX1mdW5jdGlvbiAkcihlLG4pe2Zvcih2YXIgdD1uKyJDYXB0dXJlIixyPVtdO251bGwhPT1lOyl7dmFyIGw9ZSxhPWwuc3RhdGVOb2RlOzU9PT1sLnRhZyYmbnVsbCE9PWEmJihsPWEsbnVsbCE9KGE9TWUoZSx0KSkmJnIudW5zaGlmdChqcihlLGEsbCkpLG51bGwhPShhPU1lKGUsbikpJiZyLnB1c2goanIoZSxhLGwpKSksZT1lLnJldHVybn1yZXR1cm4gcn1mdW5jdGlvbiBxcihlKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtkb3tlPWUucmV0dXJufXdoaWxlKGUmJjUhPT1lLnRhZyk7cmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gS3IoZSxuLHQscixsKXtmb3IodmFyIGE9bi5fcmVhY3ROYW1lLHU9W107bnVsbCE9PXQmJnQhPT1yOyl7dmFyIG89dCxpPW8uYWx0ZXJuYXRlLHM9by5zdGF0ZU5vZGU7aWYobnVsbCE9PWkmJmk9PT1yKWJyZWFrOzU9PT1vLnRhZyYmbnVsbCE9PXMmJihvPXMsbD9udWxsIT0oaT1NZSh0LGEpKSYmdS51bnNoaWZ0KGpyKHQsaSxvKSk6bHx8bnVsbCE9KGk9TWUodCxhKSkmJnUucHVzaChqcih0LGksbykpKSx0PXQucmV0dXJufTAhPT11Lmxlbmd0aCYmZS5wdXNoKHtldmVudDpuLGxpc3RlbmVyczp1fSl9dmFyIFlyPS9cclxuPy9nLFhyPS9cdTAwMDB8XHVGRkZEL2c7ZnVuY3Rpb24gR3IoZSl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgZT9lOiIiK2UpLnJlcGxhY2UoWXIsIlxuIikucmVwbGFjZShYciwiIil9ZnVuY3Rpb24gWnIoZSxuLHQpe2lmKG49R3IobiksR3IoZSkhPT1uJiZ0KXRocm93IEVycm9yKGEoNDI1KSl9ZnVuY3Rpb24gSnIoKXt9dmFyIGVsPW51bGwsbmw9bnVsbDtmdW5jdGlvbiB0bChlLG4pe3JldHVybiJ0ZXh0YXJlYSI9PT1lfHwibm9zY3JpcHQiPT09ZXx8InN0cmluZyI9PXR5cGVvZiBuLmNoaWxkcmVufHwibnVtYmVyIj09dHlwZW9mIG4uY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2Ygbi5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPW4uZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBybD0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OnZvaWQgMCxsbD0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDp2b2lkIDAsYWw9ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2U/UHJvbWlzZTp2b2lkIDAsdWw9ImZ1bmN0aW9uIj09dHlwZW9mIHF1ZXVlTWljcm90YXNrP3F1ZXVlTWljcm90YXNrOnZvaWQgMCE9PWFsP2Z1bmN0aW9uKGUpe3JldHVybiBhbC5yZXNvbHZlKG51bGwpLnRoZW4oZSkuY2F0Y2gob2wpfTpybDtmdW5jdGlvbiBvbChlKXtzZXRUaW1lb3V0KChmdW5jdGlvbigpe3Rocm93IGV9KSl9ZnVuY3Rpb24gaWwoZSxuKXt2YXIgdD1uLHI9MDtkb3t2YXIgbD10Lm5leHRTaWJsaW5nO2lmKGUucmVtb3ZlQ2hpbGQodCksbCYmOD09PWwubm9kZVR5cGUpaWYoIi8kIj09PSh0PWwuZGF0YSkpe2lmKDA9PT1yKXJldHVybiBlLnJlbW92ZUNoaWxkKGwpLHZvaWQgSG4obik7ci0tfWVsc2UiJCIhPT10JiYiJD8iIT09dCYmIiQhIiE9PXR8fHIrKzt0PWx9d2hpbGUodCk7SG4obil9ZnVuY3Rpb24gc2woZSl7Zm9yKDtudWxsIT1lO2U9ZS5uZXh0U2libGluZyl7dmFyIG49ZS5ub2RlVHlwZTtpZigxPT09bnx8Mz09PW4pYnJlYWs7aWYoOD09PW4pe2lmKCIkIj09PShuPWUuZGF0YSl8fCIkISI9PT1ufHwiJD8iPT09bilicmVhaztpZigiLyQiPT09bilyZXR1cm4gbnVsbH19cmV0dXJuIGV9ZnVuY3Rpb24gY2woZSl7ZT1lLnByZXZpb3VzU2libGluZztmb3IodmFyIG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiJCI9PT10fHwiJCEiPT09dHx8IiQ/Ij09PXQpe2lmKDA9PT1uKXJldHVybiBlO24tLX1lbHNlIi8kIj09PXQmJm4rK31lPWUucHJldmlvdXNTaWJsaW5nfXJldHVybiBudWxsfXZhciBmbD1NYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKSxkbD0iX19yZWFjdEZpYmVyJCIrZmwscGw9Il9fcmVhY3RQcm9wcyQiK2ZsLG1sPSJfX3JlYWN0Q29udGFpbmVyJCIrZmwsaGw9Il9fcmVhY3RFdmVudHMkIitmbCxnbD0iX19yZWFjdExpc3RlbmVycyQiK2ZsLHZsPSJfX3JlYWN0SGFuZGxlcyQiK2ZsO2Z1bmN0aW9uIHlsKGUpe3ZhciBuPWVbZGxdO2lmKG4pcmV0dXJuIG47Zm9yKHZhciB0PWUucGFyZW50Tm9kZTt0Oyl7aWYobj10W21sXXx8dFtkbF0pe2lmKHQ9bi5hbHRlcm5hdGUsbnVsbCE9PW4uY2hpbGR8fG51bGwhPT10JiZudWxsIT09dC5jaGlsZClmb3IoZT1jbChlKTtudWxsIT09ZTspe2lmKHQ9ZVtkbF0pcmV0dXJuIHQ7ZT1jbChlKX1yZXR1cm4gbn10PShlPXQpLnBhcmVudE5vZGV9cmV0dXJuIG51bGx9ZnVuY3Rpb24gYmwoZSl7cmV0dXJuIShlPWVbZGxdfHxlW21sXSl8fDUhPT1lLnRhZyYmNiE9PWUudGFnJiYxMyE9PWUudGFnJiYzIT09ZS50YWc/bnVsbDplfWZ1bmN0aW9uIGtsKGUpe2lmKDU9PT1lLnRhZ3x8Nj09PWUudGFnKXJldHVybiBlLnN0YXRlTm9kZTt0aHJvdyBFcnJvcihhKDMzKSl9ZnVuY3Rpb24gd2woZSl7cmV0dXJuIGVbcGxdfHxudWxsfXZhciBTbD1bXSx4bD0tMTtmdW5jdGlvbiBFbChlKXtyZXR1cm57Y3VycmVudDplfX1mdW5jdGlvbiBDbChlKXswPnhsfHwoZS5jdXJyZW50PVNsW3hsXSxTbFt4bF09bnVsbCx4bC0tKX1mdW5jdGlvbiB6bChlLG4pe3hsKyssU2xbeGxdPWUuY3VycmVudCxlLmN1cnJlbnQ9bn0KdmFyIE5sPXt9LF9sPUVsKE5sKSxQbD1FbCghMSksVGw9Tmw7ZnVuY3Rpb24gTGwoZSxuKXt2YXIgdD1lLnR5cGUuY29udGV4dFR5cGVzO2lmKCF0KXJldHVybiBObDt2YXIgcj1lLnN0YXRlTm9kZTtpZihyJiZyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkVW5tYXNrZWRDaGlsZENvbnRleHQ9PT1uKXJldHVybiByLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWFza2VkQ2hpbGRDb250ZXh0O3ZhciBsLGE9e307Zm9yKGwgaW4gdClhW2xdPW5bbF07cmV0dXJuIHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1uLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksYX1mdW5jdGlvbiBNbChlKXtyZXR1cm4gbnVsbCE9KGU9ZS5jaGlsZENvbnRleHRUeXBlcyl9ZnVuY3Rpb24gRmwoKXtDbChQbCksQ2woX2wpfWZ1bmN0aW9uIFJsKGUsbix0KXtpZihfbC5jdXJyZW50IT09TmwpdGhyb3cgRXJyb3IoYSgxNjgpKTt6bChfbCxuKSx6bChQbCx0KX1mdW5jdGlvbiBEbChlLG4sdCl7dmFyIHI9ZS5zdGF0ZU5vZGU7aWYobj1uLmNoaWxkQ29udGV4dFR5cGVzLCJmdW5jdGlvbiIhPXR5cGVvZiByLmdldENoaWxkQ29udGV4dClyZXR1cm4gdDtmb3IodmFyIGwgaW4gcj1yLmdldENoaWxkQ29udGV4dCgpKWlmKCEobCBpbiBuKSl0aHJvdyBFcnJvcihhKDEwOCxIKGUpfHwiVW5rbm93biIsbCkpO3JldHVybiBPKHt9LHQscil9ZnVuY3Rpb24gSWwoZSl7cmV0dXJuIGU9KGU9ZS5zdGF0ZU5vZGUpJiZlLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0fHxObCxUbD1fbC5jdXJyZW50LHpsKF9sLGUpLHpsKFBsLFBsLmN1cnJlbnQpLCEwfWZ1bmN0aW9uIE9sKGUsbix0KXt2YXIgcj1lLnN0YXRlTm9kZTtpZighcil0aHJvdyBFcnJvcihhKDE2OSkpO3Q/KGU9RGwoZSxuLFRsKSxyLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0PWUsQ2woUGwpLENsKF9sKSx6bChfbCxlKSk6Q2woUGwpLHpsKFBsLHQpfXZhciBVbD1udWxsLFZsPSExLEFsPSExO2Z1bmN0aW9uIEJsKGUpe251bGw9PT1VbD9VbD1bZV06VWwucHVzaChlKX1mdW5jdGlvbiBXbCgpe2lmKCFBbCYmbnVsbCE9PVVsKXtBbD0hMDt2YXIgZT0wLG49a247dHJ5e3ZhciB0PVVsO2Zvcihrbj0xO2U8dC5sZW5ndGg7ZSsrKXt2YXIgcj10W2VdO2Rve3I9cighMCl9d2hpbGUobnVsbCE9PXIpfVVsPW51bGwsVmw9ITF9Y2F0Y2gobil7dGhyb3cgbnVsbCE9PVVsJiYoVWw9VWwuc2xpY2UoZSsxKSkscWUoSmUsV2wpLG59ZmluYWxseXtrbj1uLEFsPSExfX1yZXR1cm4gbnVsbH12YXIgSGw9W10sUWw9MCxqbD1udWxsLCRsPTAscWw9W10sS2w9MCxZbD1udWxsLFhsPTEsR2w9IiI7ZnVuY3Rpb24gWmwoZSxuKXtIbFtRbCsrXT0kbCxIbFtRbCsrXT1qbCxqbD1lLCRsPW59ZnVuY3Rpb24gSmwoZSxuLHQpe3FsW0tsKytdPVhsLHFsW0tsKytdPUdsLHFsW0tsKytdPVlsLFlsPWU7dmFyIHI9WGw7ZT1HbDt2YXIgbD0zMi11bihyKS0xO3ImPX4oMTw8bCksdCs9MTt2YXIgYT0zMi11bihuKStsO2lmKDMwPGEpe3ZhciB1PWwtbCU1O2E9KHImKDE8PHUpLTEpLnRvU3RyaW5nKDMyKSxyPj49dSxsLT11LFhsPTE8PDMyLXVuKG4pK2x8dDw8bHxyLEdsPWErZX1lbHNlIFhsPTE8PGF8dDw8bHxyLEdsPWV9ZnVuY3Rpb24gZWEoZSl7bnVsbCE9PWUucmV0dXJuJiYoWmwoZSwxKSxKbChlLDEsMCkpfWZ1bmN0aW9uIG5hKGUpe2Zvcig7ZT09PWpsOylqbD1IbFstLVFsXSxIbFtRbF09bnVsbCwkbD1IbFstLVFsXSxIbFtRbF09bnVsbDtmb3IoO2U9PT1ZbDspWWw9cWxbLS1LbF0scWxbS2xdPW51bGwsR2w9cWxbLS1LbF0scWxbS2xdPW51bGwsWGw9cWxbLS1LbF0scWxbS2xdPW51bGx9dmFyIHRhPW51bGwscmE9bnVsbCxsYT0hMSxhYT1udWxsO2Z1bmN0aW9uIHVhKGUsbil7dmFyIHQ9THMoNSxudWxsLG51bGwsMCk7dC5lbGVtZW50VHlwZT0iREVMRVRFRCIsdC5zdGF0ZU5vZGU9bix0LnJldHVybj1lLG51bGw9PT0obj1lLmRlbGV0aW9ucyk/KGUuZGVsZXRpb25zPVt0XSxlLmZsYWdzfD0xNik6bi5wdXNoKHQpfWZ1bmN0aW9uIG9hKGUsbil7c3dpdGNoKGUudGFnKXtjYXNlIDU6dmFyIHQ9ZS50eXBlO3JldHVybiBudWxsIT09KG49MSE9PW4ubm9kZVR5cGV8fHQudG9Mb3dlckNhc2UoKSE9PW4ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT9udWxsOm4pJiYoZS5zdGF0ZU5vZGU9bix0YT1lLHJhPXNsKG4uZmlyc3RDaGlsZCksITApO2Nhc2UgNjpyZXR1cm4gbnVsbCE9PShuPSIiPT09ZS5wZW5kaW5nUHJvcHN8fDMhPT1uLm5vZGVUeXBlP251bGw6bikmJihlLnN0YXRlTm9kZT1uLHRhPWUscmE9bnVsbCwhMCk7Y2FzZSAxMzpyZXR1cm4gbnVsbCE9PShuPTghPT1uLm5vZGVUeXBlP251bGw6bikmJih0PW51bGwhPT1ZbD97aWQ6WGwsb3ZlcmZsb3c6R2x9Om51bGwsZS5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOm4sdHJlZUNvbnRleHQ6dCxyZXRyeUxhbmU6MTA3Mzc0MTgyNH0sKHQ9THMoMTgsbnVsbCxudWxsLDApKS5zdGF0ZU5vZGU9bix0LnJldHVybj1lLGUuY2hpbGQ9dCx0YT1lLHJhPW51bGwsITApO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIGlhKGUpe3JldHVybiEoISgxJmUubW9kZSl8fDEyOCZlLmZsYWdzKX1mdW5jdGlvbiBzYShlKXtpZihsYSl7dmFyIG49cmE7aWYobil7dmFyIHQ9bjtpZighb2EoZSxuKSl7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtuPXNsKHQubmV4dFNpYmxpbmcpO3ZhciByPXRhO24mJm9hKGUsbik/dWEocix0KTooZS5mbGFncz0tNDA5NyZlLmZsYWdzfDIsbGE9ITEsdGE9ZSl9fWVsc2V7aWYoaWEoZSkpdGhyb3cgRXJyb3IoYSg0MTgpKTtlLmZsYWdzPS00MDk3JmUuZmxhZ3N8MixsYT0hMSx0YT1lfX19ZnVuY3Rpb24gY2EoZSl7Zm9yKGU9ZS5yZXR1cm47bnVsbCE9PWUmJjUhPT1lLnRhZyYmMyE9PWUudGFnJiYxMyE9PWUudGFnOyllPWUucmV0dXJuO3RhPWV9ZnVuY3Rpb24gZmEoZSl7aWYoZSE9PXRhKXJldHVybiExO2lmKCFsYSlyZXR1cm4gY2EoZSksbGE9ITAsITE7dmFyIG4KO2lmKChuPTMhPT1lLnRhZykmJiEobj01IT09ZS50YWcpJiYobj0iaGVhZCIhPT0obj1lLnR5cGUpJiYiYm9keSIhPT1uJiYhdGwoZS50eXBlLGUubWVtb2l6ZWRQcm9wcykpLG4mJihuPXJhKSl7aWYoaWEoZSkpdGhyb3cgZGEoKSxFcnJvcihhKDQxOCkpO2Zvcig7bjspdWEoZSxuKSxuPXNsKG4ubmV4dFNpYmxpbmcpfWlmKGNhKGUpLDEzPT09ZS50YWcpe2lmKCEoZT1udWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKT9lLmRlaHlkcmF0ZWQ6bnVsbCkpdGhyb3cgRXJyb3IoYSgzMTcpKTtlOntmb3IoZT1lLm5leHRTaWJsaW5nLG49MDtlOyl7aWYoOD09PWUubm9kZVR5cGUpe3ZhciB0PWUuZGF0YTtpZigiLyQiPT09dCl7aWYoMD09PW4pe3JhPXNsKGUubmV4dFNpYmxpbmcpO2JyZWFrIGV9bi0tfWVsc2UiJCIhPT10JiYiJCEiIT09dCYmIiQ/IiE9PXR8fG4rK31lPWUubmV4dFNpYmxpbmd9cmE9bnVsbH19ZWxzZSByYT10YT9zbChlLnN0YXRlTm9kZS5uZXh0U2libGluZyk6bnVsbDtyZXR1cm4hMH1mdW5jdGlvbiBkYSgpe2Zvcih2YXIgZT1yYTtlOyllPXNsKGUubmV4dFNpYmxpbmcpfWZ1bmN0aW9uIHBhKCl7cmE9dGE9bnVsbCxsYT0hMX1mdW5jdGlvbiBtYShlKXtudWxsPT09YWE/YWE9W2VdOmFhLnB1c2goZSl9dmFyIGhhPWsuUmVhY3RDdXJyZW50QmF0Y2hDb25maWc7ZnVuY3Rpb24gZ2EoZSxuKXtpZihlJiZlLmRlZmF1bHRQcm9wcyl7Zm9yKHZhciB0IGluIG49Tyh7fSxuKSxlPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PW5bdF0mJihuW3RdPWVbdF0pO3JldHVybiBufXJldHVybiBufXZhciB2YT1FbChudWxsKSx5YT1udWxsLGJhPW51bGwsa2E9bnVsbDtmdW5jdGlvbiB3YSgpe2thPWJhPXlhPW51bGx9ZnVuY3Rpb24gU2EoZSl7dmFyIG49dmEuY3VycmVudDtDbCh2YSksZS5fY3VycmVudFZhbHVlPW59ZnVuY3Rpb24geGEoZSxuLHQpe2Zvcig7bnVsbCE9PWU7KXt2YXIgcj1lLmFsdGVybmF0ZTtpZigoZS5jaGlsZExhbmVzJm4pIT09bj8oZS5jaGlsZExhbmVzfD1uLG51bGwhPT1yJiYoci5jaGlsZExhbmVzfD1uKSk6bnVsbCE9PXImJihyLmNoaWxkTGFuZXMmbikhPT1uJiYoci5jaGlsZExhbmVzfD1uKSxlPT09dClicmVhaztlPWUucmV0dXJufX1mdW5jdGlvbiBFYShlLG4pe3lhPWUsa2E9YmE9bnVsbCxudWxsIT09KGU9ZS5kZXBlbmRlbmNpZXMpJiZudWxsIT09ZS5maXJzdENvbnRleHQmJighIShlLmxhbmVzJm4pJiYoa289ITApLGUuZmlyc3RDb250ZXh0PW51bGwpfWZ1bmN0aW9uIENhKGUpe3ZhciBuPWUuX2N1cnJlbnRWYWx1ZTtpZihrYSE9PWUpaWYoZT17Y29udGV4dDplLG1lbW9pemVkVmFsdWU6bixuZXh0Om51bGx9LG51bGw9PT1iYSl7aWYobnVsbD09PXlhKXRocm93IEVycm9yKGEoMzA4KSk7YmE9ZSx5YS5kZXBlbmRlbmNpZXM9e2xhbmVzOjAsZmlyc3RDb250ZXh0OmV9fWVsc2UgYmE9YmEubmV4dD1lO3JldHVybiBufXZhciB6YT1udWxsO2Z1bmN0aW9uIE5hKGUpe251bGw9PT16YT96YT1bZV06emEucHVzaChlKX1mdW5jdGlvbiBfYShlLG4sdCxyKXt2YXIgbD1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09bD8odC5uZXh0PXQsTmEobikpOih0Lm5leHQ9bC5uZXh0LGwubmV4dD10KSxuLmludGVybGVhdmVkPXQsUGEoZSxyKX1mdW5jdGlvbiBQYShlLG4pe2UubGFuZXN8PW47dmFyIHQ9ZS5hbHRlcm5hdGU7Zm9yKG51bGwhPT10JiYodC5sYW5lc3w9biksdD1lLGU9ZS5yZXR1cm47bnVsbCE9PWU7KWUuY2hpbGRMYW5lc3w9bixudWxsIT09KHQ9ZS5hbHRlcm5hdGUpJiYodC5jaGlsZExhbmVzfD1uKSx0PWUsZT1lLnJldHVybjtyZXR1cm4gMz09PXQudGFnP3Quc3RhdGVOb2RlOm51bGx9dmFyIFRhPSExO2Z1bmN0aW9uIExhKGUpe2UudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLm1lbW9pemVkU3RhdGUsZmlyc3RCYXNlVXBkYXRlOm51bGwsbGFzdEJhc2VVcGRhdGU6bnVsbCxzaGFyZWQ6e3BlbmRpbmc6bnVsbCxpbnRlcmxlYXZlZDpudWxsLGxhbmVzOjB9LGVmZmVjdHM6bnVsbH19ZnVuY3Rpb24gTWEoZSxuKXtlPWUudXBkYXRlUXVldWUsbi51cGRhdGVRdWV1ZT09PWUmJihuLnVwZGF0ZVF1ZXVlPXtiYXNlU3RhdGU6ZS5iYXNlU3RhdGUsZmlyc3RCYXNlVXBkYXRlOmUuZmlyc3RCYXNlVXBkYXRlLGxhc3RCYXNlVXBkYXRlOmUubGFzdEJhc2VVcGRhdGUsc2hhcmVkOmUuc2hhcmVkLGVmZmVjdHM6ZS5lZmZlY3RzfSl9ZnVuY3Rpb24gRmEoZSxuKXtyZXR1cm57ZXZlbnRUaW1lOmUsbGFuZTpuLHRhZzowLHBheWxvYWQ6bnVsbCxjYWxsYmFjazpudWxsLG5leHQ6bnVsbH19ZnVuY3Rpb24gUmEoZSxuLHQpe3ZhciByPWUudXBkYXRlUXVldWU7aWYobnVsbD09PXIpcmV0dXJuIG51bGw7aWYocj1yLnNoYXJlZCwyJl9pKXt2YXIgbD1yLnBlbmRpbmc7cmV0dXJuIG51bGw9PT1sP24ubmV4dD1uOihuLm5leHQ9bC5uZXh0LGwubmV4dD1uKSxyLnBlbmRpbmc9bixQYShlLHQpfXJldHVybiBudWxsPT09KGw9ci5pbnRlcmxlYXZlZCk/KG4ubmV4dD1uLE5hKHIpKToobi5uZXh0PWwubmV4dCxsLm5leHQ9biksci5pbnRlcmxlYXZlZD1uLFBhKGUsdCl9ZnVuY3Rpb24gRGEoZSxuLHQpe2lmKG51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKSYmKG49bi5zaGFyZWQsNDE5NDI0MCZ0KSl7dmFyIHI9bi5sYW5lczt0fD1yJj1lLnBlbmRpbmdMYW5lcyxuLmxhbmVzPXQsYm4oZSx0KX19ZnVuY3Rpb24gSWEoZSxuKXt2YXIgdD1lLnVwZGF0ZVF1ZXVlLHI9ZS5hbHRlcm5hdGU7aWYobnVsbCE9PXImJnQ9PT0ocj1yLnVwZGF0ZVF1ZXVlKSl7dmFyIGw9bnVsbCxhPW51bGw7aWYobnVsbCE9PSh0PXQuZmlyc3RCYXNlVXBkYXRlKSl7ZG97dmFyIHU9e2V2ZW50VGltZTp0LmV2ZW50VGltZSxsYW5lOnQubGFuZSx0YWc6dC50YWcscGF5bG9hZDp0LnBheWxvYWQsY2FsbGJhY2s6dC5jYWxsYmFjayxuZXh0Om51bGx9O251bGw9PT1hP2w9YT11OmE9YS5uZXh0PXUsdD10Lm5leHR9d2hpbGUobnVsbCE9PXQpO251bGw9PT1hP2w9YT1uOmE9YS5uZXh0PW59ZWxzZSBsPWE9bjtyZXR1cm4gdD17YmFzZVN0YXRlOnIuYmFzZVN0YXRlLGZpcnN0QmFzZVVwZGF0ZTpsLGxhc3RCYXNlVXBkYXRlOmEsCnNoYXJlZDpyLnNoYXJlZCxlZmZlY3RzOnIuZWZmZWN0c30sdm9pZChlLnVwZGF0ZVF1ZXVlPXQpfW51bGw9PT0oZT10Lmxhc3RCYXNlVXBkYXRlKT90LmZpcnN0QmFzZVVwZGF0ZT1uOmUubmV4dD1uLHQubGFzdEJhc2VVcGRhdGU9bn1mdW5jdGlvbiBPYShlLG4sdCxyKXt2YXIgbD1lLnVwZGF0ZVF1ZXVlO1RhPSExO3ZhciBhPWwuZmlyc3RCYXNlVXBkYXRlLHU9bC5sYXN0QmFzZVVwZGF0ZSxvPWwuc2hhcmVkLnBlbmRpbmc7aWYobnVsbCE9PW8pe2wuc2hhcmVkLnBlbmRpbmc9bnVsbDt2YXIgaT1vLHM9aS5uZXh0O2kubmV4dD1udWxsLG51bGw9PT11P2E9czp1Lm5leHQ9cyx1PWk7dmFyIGM9ZS5hbHRlcm5hdGU7bnVsbCE9PWMmJigobz0oYz1jLnVwZGF0ZVF1ZXVlKS5sYXN0QmFzZVVwZGF0ZSkhPT11JiYobnVsbD09PW8/Yy5maXJzdEJhc2VVcGRhdGU9czpvLm5leHQ9cyxjLmxhc3RCYXNlVXBkYXRlPWkpKX1pZihudWxsIT09YSl7dmFyIGY9bC5iYXNlU3RhdGU7Zm9yKHU9MCxjPXM9aT1udWxsLG89YTs7KXt2YXIgZD1vLmxhbmUscD1vLmV2ZW50VGltZTtpZigociZkKT09PWQpe251bGwhPT1jJiYoYz1jLm5leHQ9e2V2ZW50VGltZTpwLGxhbmU6MCx0YWc6by50YWcscGF5bG9hZDpvLnBheWxvYWQsY2FsbGJhY2s6by5jYWxsYmFjayxuZXh0Om51bGx9KTtlOnt2YXIgbT1lLGg9bztzd2l0Y2goZD1uLHA9dCxoLnRhZyl7Y2FzZSAxOmlmKCJmdW5jdGlvbiI9PXR5cGVvZihtPWgucGF5bG9hZCkpe2Y9bS5jYWxsKHAsZixkKTticmVhayBlfWY9bTticmVhayBlO2Nhc2UgMzptLmZsYWdzPS02NTUzNyZtLmZsYWdzfDEyODtjYXNlIDA6aWYobnVsbD09KGQ9ImZ1bmN0aW9uIj09dHlwZW9mKG09aC5wYXlsb2FkKT9tLmNhbGwocCxmLGQpOm0pKWJyZWFrIGU7Zj1PKHt9LGYsZCk7YnJlYWsgZTtjYXNlIDI6VGE9ITB9fW51bGwhPT1vLmNhbGxiYWNrJiYwIT09by5sYW5lJiYoZS5mbGFnc3w9NjQsbnVsbD09PShkPWwuZWZmZWN0cyk/bC5lZmZlY3RzPVtvXTpkLnB1c2gobykpfWVsc2UgcD17ZXZlbnRUaW1lOnAsbGFuZTpkLHRhZzpvLnRhZyxwYXlsb2FkOm8ucGF5bG9hZCxjYWxsYmFjazpvLmNhbGxiYWNrLG5leHQ6bnVsbH0sbnVsbD09PWM/KHM9Yz1wLGk9Zik6Yz1jLm5leHQ9cCx1fD1kO2lmKG51bGw9PT0obz1vLm5leHQpKXtpZihudWxsPT09KG89bC5zaGFyZWQucGVuZGluZykpYnJlYWs7bz0oZD1vKS5uZXh0LGQubmV4dD1udWxsLGwubGFzdEJhc2VVcGRhdGU9ZCxsLnNoYXJlZC5wZW5kaW5nPW51bGx9fWlmKG51bGw9PT1jJiYoaT1mKSxsLmJhc2VTdGF0ZT1pLGwuZmlyc3RCYXNlVXBkYXRlPXMsbC5sYXN0QmFzZVVwZGF0ZT1jLG51bGwhPT0obj1sLnNoYXJlZC5pbnRlcmxlYXZlZCkpe2w9bjtkb3t1fD1sLmxhbmUsbD1sLm5leHR9d2hpbGUobCE9PW4pfWVsc2UgbnVsbD09PWEmJihsLnNoYXJlZC5sYW5lcz0wKTtJaXw9dSxlLmxhbmVzPXUsZS5tZW1vaXplZFN0YXRlPWZ9fWZ1bmN0aW9uIFVhKGUsbix0KXtpZihlPW4uZWZmZWN0cyxuLmVmZmVjdHM9bnVsbCxudWxsIT09ZSlmb3Iobj0wO248ZS5sZW5ndGg7bisrKXt2YXIgcj1lW25dLGw9ci5jYWxsYmFjaztpZihudWxsIT09bCl7aWYoci5jYWxsYmFjaz1udWxsLHI9dCwiZnVuY3Rpb24iIT10eXBlb2YgbCl0aHJvdyBFcnJvcihhKDE5MSxsKSk7bC5jYWxsKHIpfX19dmFyIFZhPShuZXcgci5Db21wb25lbnQpLnJlZnM7ZnVuY3Rpb24gQWEoZSxuLHQscil7dD1udWxsPT0odD10KHIsbj1lLm1lbW9pemVkU3RhdGUpKT9uOk8oe30sbix0KSxlLm1lbW9pemVkU3RhdGU9dCwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPXQpfXZhciBCYT17aXNNb3VudGVkOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5fcmVhY3RJbnRlcm5hbHMpJiZXZShlKT09PWV9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EucGF5bG9hZD1uLG51bGwhPXQmJihhLmNhbGxiYWNrPXQpLG51bGwhPT0obj1SYShlLGEsbCkpJiYodHMobixlLGwsciksRGEobixlLGwpKX0sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbihlLG4sdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1lcygpLGw9bnMoZSksYT1GYShyLGwpO2EudGFnPTEsYS5wYXlsb2FkPW4sbnVsbCE9dCYmKGEuY2FsbGJhY2s9dCksbnVsbCE9PShuPVJhKGUsYSxsKSkmJih0cyhuLGUsbCxyKSxEYShuLGUsbCkpfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oZSxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciB0PWVzKCkscj1ucyhlKSxsPUZhKHQscik7bC50YWc9MixudWxsIT1uJiYobC5jYWxsYmFjaz1uKSxudWxsIT09KG49UmEoZSxsLHIpKSYmKHRzKG4sZSxyLHQpLERhKG4sZSxyKSl9fTtmdW5jdGlvbiBXYShlLG4sdCxyLGwsYSx1KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YoZT1lLnN0YXRlTm9kZSkuc2hvdWxkQ29tcG9uZW50VXBkYXRlP2Uuc2hvdWxkQ29tcG9uZW50VXBkYXRlKHIsYSx1KTohbi5wcm90b3R5cGV8fCFuLnByb3RvdHlwZS5pc1B1cmVSZWFjdENvbXBvbmVudHx8KCFpcih0LHIpfHwhaXIobCxhKSl9ZnVuY3Rpb24gSGEoZSxuLHQpe3ZhciByPSExLGw9TmwsYT1uLmNvbnRleHRUeXBlO3JldHVybiJvYmplY3QiPT10eXBlb2YgYSYmbnVsbCE9PWE/YT1DYShhKToobD1NbChuKT9UbDpfbC5jdXJyZW50LGE9KHI9bnVsbCE9KHI9bi5jb250ZXh0VHlwZXMpKT9MbChlLGwpOk5sKSxuPW5ldyBuKHQsYSksZS5tZW1vaXplZFN0YXRlPW51bGwhPT1uLnN0YXRlJiZ2b2lkIDAhPT1uLnN0YXRlP24uc3RhdGU6bnVsbCxuLnVwZGF0ZXI9QmEsZS5zdGF0ZU5vZGU9bixuLl9yZWFjdEludGVybmFscz1lLHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1sLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSksbn1mdW5jdGlvbiBRYShlLG4sdCxyKXtlPW4uc3RhdGUsCiJmdW5jdGlvbiI9PXR5cGVvZiBuLmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJm4uY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyh0LHIpLCJmdW5jdGlvbiI9PXR5cGVvZiBuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZuLlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKHQsciksbi5zdGF0ZSE9PWUmJkJhLmVucXVldWVSZXBsYWNlU3RhdGUobixuLnN0YXRlLG51bGwpfWZ1bmN0aW9uIGphKGUsbix0LHIpe3ZhciBsPWUuc3RhdGVOb2RlO2wucHJvcHM9dCxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxsLnJlZnM9VmEsTGEoZSk7dmFyIGE9bi5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2wuY29udGV4dD1DYShhKTooYT1NbChuKT9UbDpfbC5jdXJyZW50LGwuY29udGV4dD1MbChlLGEpKSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSwiZnVuY3Rpb24iPT10eXBlb2YoYT1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcykmJihBYShlLG4sYSx0KSxsLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzfHwiZnVuY3Rpb24iPT10eXBlb2YgbC5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGwuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGwuY29tcG9uZW50V2lsbE1vdW50fHwobj1sLnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudFdpbGxNb3VudCYmbC5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgbC5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZsLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSxuIT09bC5zdGF0ZSYmQmEuZW5xdWV1ZVJlcGxhY2VTdGF0ZShsLGwuc3RhdGUsbnVsbCksT2EoZSx0LGwsciksbC5zdGF0ZT1lLm1lbW9pemVkU3RhdGUpLCJmdW5jdGlvbiI9PXR5cGVvZiBsLmNvbXBvbmVudERpZE1vdW50JiYoZS5mbGFnc3w9NDE5NDMwOCl9ZnVuY3Rpb24gJGEoZSxuLHQpe2lmKG51bGwhPT0oZT10LnJlZikmJiJmdW5jdGlvbiIhPXR5cGVvZiBlJiYib2JqZWN0IiE9dHlwZW9mIGUpe2lmKHQuX293bmVyKXtpZih0PXQuX293bmVyKXtpZigxIT09dC50YWcpdGhyb3cgRXJyb3IoYSgzMDkpKTt2YXIgcj10LnN0YXRlTm9kZX1pZighcil0aHJvdyBFcnJvcihhKDE0NyxlKSk7dmFyIGw9cix1PSIiK2U7cmV0dXJuIG51bGwhPT1uJiZudWxsIT09bi5yZWYmJiJmdW5jdGlvbiI9PXR5cGVvZiBuLnJlZiYmbi5yZWYuX3N0cmluZ1JlZj09PXU/bi5yZWY6KG49ZnVuY3Rpb24oZSl7dmFyIG49bC5yZWZzO249PT1WYSYmKG49bC5yZWZzPXt9KSxudWxsPT09ZT9kZWxldGUgblt1XTpuW3VdPWV9LG4uX3N0cmluZ1JlZj11LG4pfWlmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBFcnJvcihhKDI4NCkpO2lmKCF0Ll9vd25lcil0aHJvdyBFcnJvcihhKDI5MCxlKSl9cmV0dXJuIGV9ZnVuY3Rpb24gcWEoZSxuKXt0aHJvdyBlPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChuKSxFcnJvcihhKDMxLCJbb2JqZWN0IE9iamVjdF0iPT09ZT8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyhuKS5qb2luKCIsICIpKyJ9IjplKSl9ZnVuY3Rpb24gS2EoZSl7cmV0dXJuKDAsZS5faW5pdCkoZS5fcGF5bG9hZCl9ZnVuY3Rpb24gWWEoZSl7ZnVuY3Rpb24gbihuLHQpe2lmKGUpe3ZhciByPW4uZGVsZXRpb25zO251bGw9PT1yPyhuLmRlbGV0aW9ucz1bdF0sbi5mbGFnc3w9MTYpOnIucHVzaCh0KX19ZnVuY3Rpb24gdCh0LHIpe2lmKCFlKXJldHVybiBudWxsO2Zvcig7bnVsbCE9PXI7KW4odCxyKSxyPXIuc2libGluZztyZXR1cm4gbnVsbH1mdW5jdGlvbiByKGUsbil7Zm9yKGU9bmV3IE1hcDtudWxsIT09bjspbnVsbCE9PW4ua2V5P2Uuc2V0KG4ua2V5LG4pOmUuc2V0KG4uaW5kZXgsbiksbj1uLnNpYmxpbmc7cmV0dXJuIGV9ZnVuY3Rpb24gbChlLG4pe3JldHVybihlPUZzKGUsbikpLmluZGV4PTAsZS5zaWJsaW5nPW51bGwsZX1mdW5jdGlvbiB1KG4sdCxyKXtyZXR1cm4gbi5pbmRleD1yLGU/bnVsbCE9PShyPW4uYWx0ZXJuYXRlKT8ocj1yLmluZGV4KTx0PyhuLmZsYWdzfD0yLHQpOnI6KG4uZmxhZ3N8PTIsdCk6KG4uZmxhZ3N8PTEwNDg1NzYsdCl9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gZSYmbnVsbD09PW4uYWx0ZXJuYXRlJiYobi5mbGFnc3w9Miksbn1mdW5jdGlvbiBpKGUsbix0LHIpe3JldHVybiBudWxsPT09bnx8NiE9PW4udGFnPygobj1Pcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gcyhlLG4sdCxyKXt2YXIgYT10LnR5cGU7cmV0dXJuIGE9PT14P2YoZSxuLHQucHJvcHMuY2hpbGRyZW4scix0LmtleSk6bnVsbCE9PW4mJihuLmVsZW1lbnRUeXBlPT09YXx8Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YSYmYS4kJHR5cGVvZj09PU0mJkthKGEpPT09bi50eXBlKT8oKHI9bChuLHQucHJvcHMpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscik6KChyPVJzKHQudHlwZSx0LmtleSx0LnByb3BzLG51bGwsZS5tb2RlLHIpKS5yZWY9JGEoZSxuLHQpLHIucmV0dXJuPWUscil9ZnVuY3Rpb24gYyhlLG4sdCxyKXtyZXR1cm4gbnVsbD09PW58fDQhPT1uLnRhZ3x8bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyE9PXQuY29udGFpbmVySW5mb3x8bi5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb24hPT10LmltcGxlbWVudGF0aW9uPygobj1Vcyh0LGUubW9kZSxyKSkucmV0dXJuPWUsbik6KChuPWwobix0LmNoaWxkcmVufHxbXSkpLnJldHVybj1lLG4pfWZ1bmN0aW9uIGYoZSxuLHQscixhKXtyZXR1cm4gbnVsbD09PW58fDchPT1uLnRhZz8oKG49RHModCxlLm1vZGUscixhKSkucmV0dXJuPWUsbik6KChuPWwobix0KSkucmV0dXJuPWUsbil9ZnVuY3Rpb24gZChlLG4sdCl7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2YgbilyZXR1cm4obj1PcygiIituLGUubW9kZSx0KSkucmV0dXJuPWUsbjtpZigib2JqZWN0Ij09dHlwZW9mIG4mJm51bGwhPT1uKXsKc3dpdGNoKG4uJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4odD1ScyhuLnR5cGUsbi5rZXksbi5wcm9wcyxudWxsLGUubW9kZSx0KSkucmVmPSRhKGUsbnVsbCxuKSx0LnJldHVybj1lLHQ7Y2FzZSBTOnJldHVybihuPVVzKG4sZS5tb2RlLHQpKS5yZXR1cm49ZSxuO2Nhc2UgTTpyZXR1cm4gZChlLCgwLG4uX2luaXQpKG4uX3BheWxvYWQpLHQpfWlmKG5lKG4pfHxEKG4pKXJldHVybihuPURzKG4sZS5tb2RlLHQsbnVsbCkpLnJldHVybj1lLG47cWEoZSxuKX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBwKGUsbix0LHIpe3ZhciBsPW51bGwhPT1uP24ua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiB0JiYiIiE9PXR8fCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4gbnVsbCE9PWw/bnVsbDppKGUsbiwiIit0LHIpO2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe3N3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIHc6cmV0dXJuIHQua2V5PT09bD9zKGUsbix0LHIpOm51bGw7Y2FzZSBTOnJldHVybiB0LmtleT09PWw/YyhlLG4sdCxyKTpudWxsO2Nhc2UgTTpyZXR1cm4gcChlLG4sKGw9dC5faW5pdCkodC5fcGF5bG9hZCkscil9aWYobmUodCl8fEQodCkpcmV0dXJuIG51bGwhPT1sP251bGw6ZihlLG4sdCxyLG51bGwpO3FhKGUsdCl9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbShlLG4sdCxyLGwpe2lmKCJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHIpcmV0dXJuIGkobixlPWUuZ2V0KHQpfHxudWxsLCIiK3IsbCk7aWYoIm9iamVjdCI9PXR5cGVvZiByJiZudWxsIT09cil7c3dpdGNoKHIuJCR0eXBlb2Ype2Nhc2UgdzpyZXR1cm4gcyhuLGU9ZS5nZXQobnVsbD09PXIua2V5P3Q6ci5rZXkpfHxudWxsLHIsbCk7Y2FzZSBTOnJldHVybiBjKG4sZT1lLmdldChudWxsPT09ci5rZXk/dDpyLmtleSl8fG51bGwscixsKTtjYXNlIE06cmV0dXJuIG0oZSxuLHQsKDAsci5faW5pdCkoci5fcGF5bG9hZCksbCl9aWYobmUocil8fEQocikpcmV0dXJuIGYobixlPWUuZ2V0KHQpfHxudWxsLHIsbCxudWxsKTtxYShuLHIpfXJldHVybiBudWxsfWZ1bmN0aW9uIGgobCxhLG8saSl7Zm9yKHZhciBzPW51bGwsYz1udWxsLGY9YSxoPWE9MCxnPW51bGw7bnVsbCE9PWYmJmg8by5sZW5ndGg7aCsrKXtmLmluZGV4Pmg/KGc9ZixmPW51bGwpOmc9Zi5zaWJsaW5nO3ZhciB2PXAobCxmLG9baF0saSk7aWYobnVsbD09PXYpe251bGw9PT1mJiYoZj1nKTticmVha31lJiZmJiZudWxsPT09di5hbHRlcm5hdGUmJm4obCxmKSxhPXUodixhLGgpLG51bGw9PT1jP3M9djpjLnNpYmxpbmc9dixjPXYsZj1nfWlmKGg9PT1vLmxlbmd0aClyZXR1cm4gdChsLGYpLGxhJiZabChsLGgpLHM7aWYobnVsbD09PWYpe2Zvcig7aDxvLmxlbmd0aDtoKyspbnVsbCE9PShmPWQobCxvW2hdLGkpKSYmKGE9dShmLGEsaCksbnVsbD09PWM/cz1mOmMuc2libGluZz1mLGM9Zik7cmV0dXJuIGxhJiZabChsLGgpLHN9Zm9yKGY9cihsLGYpO2g8by5sZW5ndGg7aCsrKW51bGwhPT0oZz1tKGYsbCxoLG9baF0saSkpJiYoZSYmbnVsbCE9PWcuYWx0ZXJuYXRlJiZmLmRlbGV0ZShudWxsPT09Zy5rZXk/aDpnLmtleSksYT11KGcsYSxoKSxudWxsPT09Yz9zPWc6Yy5zaWJsaW5nPWcsYz1nKTtyZXR1cm4gZSYmZi5mb3JFYWNoKChmdW5jdGlvbihlKXtyZXR1cm4gbihsLGUpfSkpLGxhJiZabChsLGgpLHN9ZnVuY3Rpb24gZyhsLG8saSxzKXt2YXIgYz1EKGkpO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBjKXRocm93IEVycm9yKGEoMTUwKSk7aWYobnVsbD09KGk9Yy5jYWxsKGkpKSl0aHJvdyBFcnJvcihhKDE1MSkpO2Zvcih2YXIgZj1jPW51bGwsaD1vLGc9bz0wLHY9bnVsbCx5PWkubmV4dCgpO251bGwhPT1oJiYheS5kb25lO2crKyx5PWkubmV4dCgpKXtoLmluZGV4Pmc/KHY9aCxoPW51bGwpOnY9aC5zaWJsaW5nO3ZhciBiPXAobCxoLHkudmFsdWUscyk7aWYobnVsbD09PWIpe251bGw9PT1oJiYoaD12KTticmVha31lJiZoJiZudWxsPT09Yi5hbHRlcm5hdGUmJm4obCxoKSxvPXUoYixvLGcpLG51bGw9PT1mP2M9YjpmLnNpYmxpbmc9YixmPWIsaD12fWlmKHkuZG9uZSlyZXR1cm4gdChsLGgpLGxhJiZabChsLGcpLGM7aWYobnVsbD09PWgpe2Zvcig7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9ZChsLHkudmFsdWUscykpJiYobz11KHksbyxnKSxudWxsPT09Zj9jPXk6Zi5zaWJsaW5nPXksZj15KTtyZXR1cm4gbGEmJlpsKGwsZyksY31mb3IoaD1yKGwsaCk7IXkuZG9uZTtnKysseT1pLm5leHQoKSludWxsIT09KHk9bShoLGwsZyx5LnZhbHVlLHMpKSYmKGUmJm51bGwhPT15LmFsdGVybmF0ZSYmaC5kZWxldGUobnVsbD09PXkua2V5P2c6eS5rZXkpLG89dSh5LG8sZyksbnVsbD09PWY/Yz15OmYuc2libGluZz15LGY9eSk7cmV0dXJuIGUmJmguZm9yRWFjaCgoZnVuY3Rpb24oZSl7cmV0dXJuIG4obCxlKX0pKSxsYSYmWmwobCxnKSxjfXJldHVybiBmdW5jdGlvbiBlKHIsYSx1LGkpe2lmKCJvYmplY3QiPT10eXBlb2YgdSYmbnVsbCE9PXUmJnUudHlwZT09PXgmJm51bGw9PT11LmtleSYmKHU9dS5wcm9wcy5jaGlsZHJlbiksIm9iamVjdCI9PXR5cGVvZiB1JiZudWxsIT09dSl7c3dpdGNoKHUuJCR0eXBlb2Ype2Nhc2UgdzplOntmb3IodmFyIHM9dS5rZXksYz1hO251bGwhPT1jOyl7aWYoYy5rZXk9PT1zKXtpZigocz11LnR5cGUpPT09eCl7aWYoNz09PWMudGFnKXt0KHIsYy5zaWJsaW5nKSwoYT1sKGMsdS5wcm9wcy5jaGlsZHJlbikpLnJldHVybj1yLHI9YTticmVhayBlfX1lbHNlIGlmKGMuZWxlbWVudFR5cGU9PT1zfHwib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zJiZzLiQkdHlwZW9mPT09TSYmS2Eocyk9PT1jLnR5cGUpe3QocixjLnNpYmxpbmcpLChhPWwoYyx1LnByb3BzKSkucmVmPSRhKHIsYyx1KSxhLnJldHVybj1yLHI9YTticmVhayBlfXQocixjKTticmVha31uKHIsYyksYz1jLnNpYmxpbmd9dS50eXBlPT09eD8oKGE9RHModS5wcm9wcy5jaGlsZHJlbixyLm1vZGUsaSx1LmtleSkpLnJldHVybj1yLHI9YSk6KChpPVJzKHUudHlwZSx1LmtleSx1LnByb3BzLG51bGwsci5tb2RlLGkpKS5yZWY9JGEocixhLHUpLAppLnJldHVybj1yLHI9aSl9cmV0dXJuIG8ocik7Y2FzZSBTOmU6e2ZvcihjPXUua2V5O251bGwhPT1hOyl7aWYoYS5rZXk9PT1jKXtpZig0PT09YS50YWcmJmEuc3RhdGVOb2RlLmNvbnRhaW5lckluZm89PT11LmNvbnRhaW5lckluZm8mJmEuc3RhdGVOb2RlLmltcGxlbWVudGF0aW9uPT09dS5pbXBsZW1lbnRhdGlvbil7dChyLGEuc2libGluZyksKGE9bChhLHUuY2hpbGRyZW58fFtdKSkucmV0dXJuPXIscj1hO2JyZWFrIGV9dChyLGEpO2JyZWFrfW4ocixhKSxhPWEuc2libGluZ30oYT1Vcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hfXJldHVybiBvKHIpO2Nhc2UgTTpyZXR1cm4gZShyLGEsKGM9dS5faW5pdCkodS5fcGF5bG9hZCksaSl9aWYobmUodSkpcmV0dXJuIGgocixhLHUsaSk7aWYoRCh1KSlyZXR1cm4gZyhyLGEsdSxpKTtxYShyLHUpfXJldHVybiJzdHJpbmciPT10eXBlb2YgdSYmIiIhPT11fHwibnVtYmVyIj09dHlwZW9mIHU/KHU9IiIrdSxudWxsIT09YSYmNj09PWEudGFnPyh0KHIsYS5zaWJsaW5nKSwoYT1sKGEsdSkpLnJldHVybj1yLHI9YSk6KHQocixhKSwoYT1Pcyh1LHIubW9kZSxpKSkucmV0dXJuPXIscj1hKSxvKHIpKTp0KHIsYSl9fXZhciBYYT1ZYSghMCksR2E9WWEoITEpLFphPXt9LEphPUVsKFphKSxldT1FbChaYSksbnU9RWwoWmEpO2Z1bmN0aW9uIHR1KGUpe2lmKGU9PT1aYSl0aHJvdyBFcnJvcihhKDE3NCkpO3JldHVybiBlfWZ1bmN0aW9uIHJ1KGUsbil7c3dpdGNoKHpsKG51LG4pLHpsKGV1LGUpLHpsKEphLFphKSxlPW4ubm9kZVR5cGUpe2Nhc2UgOTpjYXNlIDExOm49KG49bi5kb2N1bWVudEVsZW1lbnQpP24ubmFtZXNwYWNlVVJJOmllKG51bGwsIiIpO2JyZWFrO2RlZmF1bHQ6bj1pZShuPShlPTg9PT1lP24ucGFyZW50Tm9kZTpuKS5uYW1lc3BhY2VVUkl8fG51bGwsZT1lLnRhZ05hbWUpfUNsKEphKSx6bChKYSxuKX1mdW5jdGlvbiBsdSgpe0NsKEphKSxDbChldSksQ2wobnUpfWZ1bmN0aW9uIGF1KGUpe3R1KG51LmN1cnJlbnQpO3ZhciBuPXR1KEphLmN1cnJlbnQpLHQ9aWUobixlLnR5cGUpO24hPT10JiYoemwoZXUsZSksemwoSmEsdCkpfWZ1bmN0aW9uIHV1KGUpe2V1LmN1cnJlbnQ9PT1lJiYoQ2woSmEpLENsKGV1KSl9dmFyIG91PUVsKDApO2Z1bmN0aW9uIGl1KGUpe2Zvcih2YXIgbj1lO251bGwhPT1uOyl7aWYoMTM9PT1uLnRhZyl7dmFyIHQ9bi5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT10JiYobnVsbD09PSh0PXQuZGVoeWRyYXRlZCl8fCIkPyI9PT10LmRhdGF8fCIkISI9PT10LmRhdGEpKXJldHVybiBufWVsc2UgaWYoMTk9PT1uLnRhZyYmdm9pZCAwIT09bi5tZW1vaXplZFByb3BzLnJldmVhbE9yZGVyKXtpZigxMjgmbi5mbGFncylyZXR1cm4gbn1lbHNlIGlmKG51bGwhPT1uLmNoaWxkKXtuLmNoaWxkLnJldHVybj1uLG49bi5jaGlsZDtjb250aW51ZX1pZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4gbnVsbDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9cmV0dXJuIG51bGx9dmFyIHN1PVtdO2Z1bmN0aW9uIGN1KCl7Zm9yKHZhciBlPTA7ZTxzdS5sZW5ndGg7ZSsrKXN1W2VdLl93b3JrSW5Qcm9ncmVzc1ZlcnNpb25QcmltYXJ5PW51bGw7c3UubGVuZ3RoPTB9dmFyIGZ1PWsuUmVhY3RDdXJyZW50RGlzcGF0Y2hlcixkdT1rLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLHB1PTAsbXU9bnVsbCxodT1udWxsLGd1PW51bGwsdnU9ITEseXU9ITEsYnU9MCxrdT0wO2Z1bmN0aW9uIHd1KCl7dGhyb3cgRXJyb3IoYSgzMjEpKX1mdW5jdGlvbiBTdShlLG4pe2lmKG51bGw9PT1uKXJldHVybiExO2Zvcih2YXIgdD0wO3Q8bi5sZW5ndGgmJnQ8ZS5sZW5ndGg7dCsrKWlmKCFvcihlW3RdLG5bdF0pKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIHh1KGUsbix0LHIsbCx1KXtpZihwdT11LG11PW4sbi5tZW1vaXplZFN0YXRlPW51bGwsbi51cGRhdGVRdWV1ZT1udWxsLG4ubGFuZXM9MCxmdS5jdXJyZW50PW51bGw9PT1lfHxudWxsPT09ZS5tZW1vaXplZFN0YXRlP3VvOm9vLGU9dChyLGwpLHl1KXt1PTA7ZG97aWYoeXU9ITEsYnU9MCwyNTw9dSl0aHJvdyBFcnJvcihhKDMwMSkpO3UrPTEsZ3U9aHU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsZnUuY3VycmVudD1pbyxlPXQocixsKX13aGlsZSh5dSl9aWYoZnUuY3VycmVudD1hbyxuPW51bGwhPT1odSYmbnVsbCE9PWh1Lm5leHQscHU9MCxndT1odT1tdT1udWxsLHZ1PSExLG4pdGhyb3cgRXJyb3IoYSgzMDApKTtyZXR1cm4gZX1mdW5jdGlvbiBFdSgpe3ZhciBlPTAhPT1idTtyZXR1cm4gYnU9MCxlfWZ1bmN0aW9uIEN1KCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1ndT9tdS5tZW1vaXplZFN0YXRlPWd1PWU6Z3U9Z3UubmV4dD1lLGd1fWZ1bmN0aW9uIHp1KCl7aWYobnVsbD09PWh1KXt2YXIgZT1tdS5hbHRlcm5hdGU7ZT1udWxsIT09ZT9lLm1lbW9pemVkU3RhdGU6bnVsbH1lbHNlIGU9aHUubmV4dDt2YXIgbj1udWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZTpndS5uZXh0O2lmKG51bGwhPT1uKWd1PW4saHU9ZTtlbHNle2lmKG51bGw9PT1lKXRocm93IEVycm9yKGEoMzEwKSk7ZT17bWVtb2l6ZWRTdGF0ZTooaHU9ZSkubWVtb2l6ZWRTdGF0ZSxiYXNlU3RhdGU6aHUuYmFzZVN0YXRlLGJhc2VRdWV1ZTpodS5iYXNlUXVldWUscXVldWU6aHUucXVldWUsbmV4dDpudWxsfSxudWxsPT09Z3U/bXUubWVtb2l6ZWRTdGF0ZT1ndT1lOmd1PWd1Lm5leHQ9ZX1yZXR1cm4gZ3V9ZnVuY3Rpb24gTnUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj9uKGUpOm59ZnVuY3Rpb24gX3UoZSl7dmFyIG49enUoKSx0PW4ucXVldWU7aWYobnVsbD09PXQpdGhyb3cgRXJyb3IoYSgzMTEpKTt0Lmxhc3RSZW5kZXJlZFJlZHVjZXI9ZTt2YXIgcj1odSxsPXIuYmFzZVF1ZXVlLHU9dC5wZW5kaW5nO2lmKG51bGwhPT11KXtpZihudWxsIT09bCl7dmFyIG89bC5uZXh0CjtsLm5leHQ9dS5uZXh0LHUubmV4dD1vfXIuYmFzZVF1ZXVlPWw9dSx0LnBlbmRpbmc9bnVsbH1pZihudWxsIT09bCl7dT1sLm5leHQscj1yLmJhc2VTdGF0ZTt2YXIgaT1vPW51bGwscz1udWxsLGM9dTtkb3t2YXIgZj1jLmxhbmU7aWYoKHB1JmYpPT09ZiludWxsIT09cyYmKHM9cy5uZXh0PXtsYW5lOjAsYWN0aW9uOmMuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6Yy5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6Yy5lYWdlclN0YXRlLG5leHQ6bnVsbH0pLHI9Yy5oYXNFYWdlclN0YXRlP2MuZWFnZXJTdGF0ZTplKHIsYy5hY3Rpb24pO2Vsc2V7dmFyIGQ9e2xhbmU6ZixhY3Rpb246Yy5hY3Rpb24saGFzRWFnZXJTdGF0ZTpjLmhhc0VhZ2VyU3RhdGUsZWFnZXJTdGF0ZTpjLmVhZ2VyU3RhdGUsbmV4dDpudWxsfTtudWxsPT09cz8oaT1zPWQsbz1yKTpzPXMubmV4dD1kLG11LmxhbmVzfD1mLElpfD1mfWM9Yy5uZXh0fXdoaWxlKG51bGwhPT1jJiZjIT09dSk7bnVsbD09PXM/bz1yOnMubmV4dD1pLG9yKHIsbi5tZW1vaXplZFN0YXRlKXx8KGtvPSEwKSxuLm1lbW9pemVkU3RhdGU9cixuLmJhc2VTdGF0ZT1vLG4uYmFzZVF1ZXVlPXMsdC5sYXN0UmVuZGVyZWRTdGF0ZT1yfWlmKG51bGwhPT0oZT10LmludGVybGVhdmVkKSl7bD1lO2Rve3U9bC5sYW5lLG11LmxhbmVzfD11LElpfD11LGw9bC5uZXh0fXdoaWxlKGwhPT1lKX1lbHNlIG51bGw9PT1sJiYodC5sYW5lcz0wKTtyZXR1cm5bbi5tZW1vaXplZFN0YXRlLHQuZGlzcGF0Y2hdfWZ1bmN0aW9uIFB1KGUpe3ZhciBuPXp1KCksdD1uLnF1ZXVlO2lmKG51bGw9PT10KXRocm93IEVycm9yKGEoMzExKSk7dC5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9dC5kaXNwYXRjaCxsPXQucGVuZGluZyx1PW4ubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09bCl7dC5wZW5kaW5nPW51bGw7dmFyIG89bD1sLm5leHQ7ZG97dT1lKHUsby5hY3Rpb24pLG89by5uZXh0fXdoaWxlKG8hPT1sKTtvcih1LG4ubWVtb2l6ZWRTdGF0ZSl8fChrbz0hMCksbi5tZW1vaXplZFN0YXRlPXUsbnVsbD09PW4uYmFzZVF1ZXVlJiYobi5iYXNlU3RhdGU9dSksdC5sYXN0UmVuZGVyZWRTdGF0ZT11fXJldHVyblt1LHJdfWZ1bmN0aW9uIFR1KCl7fWZ1bmN0aW9uIEx1KGUsbil7dmFyIHQ9bXUscj16dSgpLGw9bigpLHU9IW9yKHIubWVtb2l6ZWRTdGF0ZSxsKTtpZih1JiYoci5tZW1vaXplZFN0YXRlPWwsa289ITApLHI9ci5xdWV1ZSxIdShSdS5iaW5kKG51bGwsdCxyLGUpLFtlXSksci5nZXRTbmFwc2hvdCE9PW58fHV8fG51bGwhPT1ndSYmMSZndS5tZW1vaXplZFN0YXRlLnRhZyl7aWYodC5mbGFnc3w9MjA0OCxVdSg5LEZ1LmJpbmQobnVsbCx0LHIsbCxuKSx2b2lkIDAsbnVsbCksbnVsbD09PVBpKXRocm93IEVycm9yKGEoMzQ5KSk7MzAmcHV8fE11KHQsbixsKX1yZXR1cm4gbH1mdW5jdGlvbiBNdShlLG4sdCl7ZS5mbGFnc3w9MTYzODQsZT17Z2V0U25hcHNob3Q6bix2YWx1ZTp0fSxudWxsPT09KG49bXUudXBkYXRlUXVldWUpPyhuPXtsYXN0RWZmZWN0Om51bGwsc3RvcmVzOm51bGx9LG11LnVwZGF0ZVF1ZXVlPW4sbi5zdG9yZXM9W2VdKTpudWxsPT09KHQ9bi5zdG9yZXMpP24uc3RvcmVzPVtlXTp0LnB1c2goZSl9ZnVuY3Rpb24gRnUoZSxuLHQscil7bi52YWx1ZT10LG4uZ2V0U25hcHNob3Q9cixEdShuKSYmSXUoZSl9ZnVuY3Rpb24gUnUoZSxuLHQpe3JldHVybiB0KChmdW5jdGlvbigpe0R1KG4pJiZJdShlKX0pKX1mdW5jdGlvbiBEdShlKXt2YXIgbj1lLmdldFNuYXBzaG90O2U9ZS52YWx1ZTt0cnl7dmFyIHQ9bigpO3JldHVybiFvcihlLHQpfWNhdGNoKGUpe3JldHVybiEwfX1mdW5jdGlvbiBJdShlKXt2YXIgbj1QYShlLDEpO251bGwhPT1uJiZ0cyhuLGUsMSwtMSl9ZnVuY3Rpb24gT3UoZSl7dmFyIG49Q3UoKTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmKGU9ZSgpKSxuLm1lbW9pemVkU3RhdGU9bi5iYXNlU3RhdGU9ZSxlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjpOdSxsYXN0UmVuZGVyZWRTdGF0ZTplfSxuLnF1ZXVlPWUsZT1lLmRpc3BhdGNoPW5vLmJpbmQobnVsbCxtdSxlKSxbbi5tZW1vaXplZFN0YXRlLGVdfWZ1bmN0aW9uIFV1KGUsbix0LHIpe3JldHVybiBlPXt0YWc6ZSxjcmVhdGU6bixkZXN0cm95OnQsZGVwczpyLG5leHQ6bnVsbH0sbnVsbD09PShuPW11LnVwZGF0ZVF1ZXVlKT8obj17bGFzdEVmZmVjdDpudWxsLHN0b3JlczpudWxsfSxtdS51cGRhdGVRdWV1ZT1uLG4ubGFzdEVmZmVjdD1lLm5leHQ9ZSk6bnVsbD09PSh0PW4ubGFzdEVmZmVjdCk/bi5sYXN0RWZmZWN0PWUubmV4dD1lOihyPXQubmV4dCx0Lm5leHQ9ZSxlLm5leHQ9cixuLmxhc3RFZmZlY3Q9ZSksZX1mdW5jdGlvbiBWdSgpe3JldHVybiB6dSgpLm1lbW9pemVkU3RhdGV9ZnVuY3Rpb24gQXUoZSxuLHQscil7dmFyIGw9Q3UoKTttdS5mbGFnc3w9ZSxsLm1lbW9pemVkU3RhdGU9VXUoMXxuLHQsdm9pZCAwLHZvaWQgMD09PXI/bnVsbDpyKX1mdW5jdGlvbiBCdShlLG4sdCxyKXt2YXIgbD16dSgpO3I9dm9pZCAwPT09cj9udWxsOnI7dmFyIGE9dm9pZCAwO2lmKG51bGwhPT1odSl7dmFyIHU9aHUubWVtb2l6ZWRTdGF0ZTtpZihhPXUuZGVzdHJveSxudWxsIT09ciYmU3Uocix1LmRlcHMpKXJldHVybiB2b2lkKGwubWVtb2l6ZWRTdGF0ZT1VdShuLHQsYSxyKSl9bXUuZmxhZ3N8PWUsbC5tZW1vaXplZFN0YXRlPVV1KDF8bix0LGEscil9ZnVuY3Rpb24gV3UoZSxuKXtyZXR1cm4gQXUoODM5MDY1Niw4LGUsbil9ZnVuY3Rpb24gSHUoZSxuKXtyZXR1cm4gQnUoMjA0OCw4LGUsbil9ZnVuY3Rpb24gUXUoZSxuKXtyZXR1cm4gQnUoNCwyLGUsbil9ZnVuY3Rpb24ganUoZSxuKXtyZXR1cm4gQnUoNCw0LGUsbil9ZnVuY3Rpb24gJHUoZSxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygbj8oZT1lKCksbihlKSxmdW5jdGlvbigpe24obnVsbCl9KTpudWxsIT1uPyhlPWUoKSxuLmN1cnJlbnQ9ZSxmdW5jdGlvbigpe24uY3VycmVudD1udWxsfSk6dm9pZCAwfWZ1bmN0aW9uIHF1KGUsbix0KXsKcmV0dXJuIHQ9bnVsbCE9dD90LmNvbmNhdChbZV0pOm51bGwsQnUoNCw0LCR1LmJpbmQobnVsbCxuLGUpLHQpfWZ1bmN0aW9uIEt1KCl7fWZ1bmN0aW9uIFl1KGUsbil7dmFyIHQ9enUoKTtuPXZvaWQgMD09PW4/bnVsbDpuO3ZhciByPXQubWVtb2l6ZWRTdGF0ZTtyZXR1cm4gbnVsbCE9PXImJm51bGwhPT1uJiZTdShuLHJbMV0pP3JbMF06KHQubWVtb2l6ZWRTdGF0ZT1bZSxuXSxlKX1mdW5jdGlvbiBYdShlLG4pe3ZhciB0PXp1KCk7bj12b2lkIDA9PT1uP251bGw6bjt2YXIgcj10Lm1lbW9pemVkU3RhdGU7cmV0dXJuIG51bGwhPT1yJiZudWxsIT09biYmU3UobixyWzFdKT9yWzBdOihlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZSl9ZnVuY3Rpb24gR3UoZSxuLHQpe3JldHVybiAyMSZwdT8ob3IodCxuKXx8KHQ9Z24oKSxtdS5sYW5lc3w9dCxJaXw9dCxlLmJhc2VTdGF0ZT0hMCksbik6KGUuYmFzZVN0YXRlJiYoZS5iYXNlU3RhdGU9ITEsa289ITApLGUubWVtb2l6ZWRTdGF0ZT10KX1mdW5jdGlvbiBadShlLG4pe3ZhciB0PWtuO2tuPTAhPT10JiY0PnQ/dDo0LGUoITApO3ZhciByPWR1LnRyYW5zaXRpb247ZHUudHJhbnNpdGlvbj17fTt0cnl7ZSghMSksbigpfWZpbmFsbHl7a249dCxkdS50cmFuc2l0aW9uPXJ9fWZ1bmN0aW9uIEp1KCl7cmV0dXJuIHp1KCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBlbyhlLG4sdCl7dmFyIHI9bnMoZSk7aWYodD17bGFuZTpyLGFjdGlvbjp0LGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH0sdG8oZSkpcm8obix0KTtlbHNlIGlmKG51bGwhPT0odD1fYShlLG4sdCxyKSkpe3RzKHQsZSxyLGVzKCkpLGxvKHQsbixyKX19ZnVuY3Rpb24gbm8oZSxuLHQpe3ZhciByPW5zKGUpLGw9e2xhbmU6cixhY3Rpb246dCxoYXNFYWdlclN0YXRlOiExLGVhZ2VyU3RhdGU6bnVsbCxuZXh0Om51bGx9O2lmKHRvKGUpKXJvKG4sbCk7ZWxzZXt2YXIgYT1lLmFsdGVybmF0ZTtpZigwPT09ZS5sYW5lcyYmKG51bGw9PT1hfHwwPT09YS5sYW5lcykmJm51bGwhPT0oYT1uLmxhc3RSZW5kZXJlZFJlZHVjZXIpKXRyeXt2YXIgdT1uLmxhc3RSZW5kZXJlZFN0YXRlLG89YSh1LHQpO2lmKGwuaGFzRWFnZXJTdGF0ZT0hMCxsLmVhZ2VyU3RhdGU9byxvcihvLHUpKXt2YXIgaT1uLmludGVybGVhdmVkO3JldHVybiBudWxsPT09aT8obC5uZXh0PWwsTmEobikpOihsLm5leHQ9aS5uZXh0LGkubmV4dD1sKSx2b2lkKG4uaW50ZXJsZWF2ZWQ9bCl9fWNhdGNoKGUpe31udWxsIT09KHQ9X2EoZSxuLGwscikpJiYodHModCxlLHIsbD1lcygpKSxsbyh0LG4scikpfX1mdW5jdGlvbiB0byhlKXt2YXIgbj1lLmFsdGVybmF0ZTtyZXR1cm4gZT09PW11fHxudWxsIT09biYmbj09PW11fWZ1bmN0aW9uIHJvKGUsbil7eXU9dnU9ITA7dmFyIHQ9ZS5wZW5kaW5nO251bGw9PT10P24ubmV4dD1uOihuLm5leHQ9dC5uZXh0LHQubmV4dD1uKSxlLnBlbmRpbmc9bn1mdW5jdGlvbiBsbyhlLG4sdCl7aWYoNDE5NDI0MCZ0KXt2YXIgcj1uLmxhbmVzO3R8PXImPWUucGVuZGluZ0xhbmVzLG4ubGFuZXM9dCxibihlLHQpfX12YXIgYW89e3JlYWRDb250ZXh0OkNhLHVzZUNhbGxiYWNrOnd1LHVzZUNvbnRleHQ6d3UsdXNlRWZmZWN0Ond1LHVzZUltcGVyYXRpdmVIYW5kbGU6d3UsdXNlSW5zZXJ0aW9uRWZmZWN0Ond1LHVzZUxheW91dEVmZmVjdDp3dSx1c2VNZW1vOnd1LHVzZVJlZHVjZXI6d3UsdXNlUmVmOnd1LHVzZVN0YXRlOnd1LHVzZURlYnVnVmFsdWU6d3UsdXNlRGVmZXJyZWRWYWx1ZTp3dSx1c2VUcmFuc2l0aW9uOnd1LHVzZU11dGFibGVTb3VyY2U6d3UsdXNlU3luY0V4dGVybmFsU3RvcmU6d3UsdXNlSWQ6d3UsdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSx1bz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6ZnVuY3Rpb24oZSxuKXtyZXR1cm4gQ3UoKS5tZW1vaXplZFN0YXRlPVtlLHZvaWQgMD09PW4/bnVsbDpuXSxlfSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpXdSx1c2VJbXBlcmF0aXZlSGFuZGxlOmZ1bmN0aW9uKGUsbix0KXtyZXR1cm4gdD1udWxsIT10P3QuY29uY2F0KFtlXSk6bnVsbCxBdSg0MTk0MzA4LDQsJHUuYmluZChudWxsLG4sZSksdCl9LHVzZUxheW91dEVmZmVjdDpmdW5jdGlvbihlLG4pe3JldHVybiBBdSg0MTk0MzA4LDQsZSxuKX0sdXNlSW5zZXJ0aW9uRWZmZWN0OmZ1bmN0aW9uKGUsbil7cmV0dXJuIEF1KDQsMixlLG4pfSx1c2VNZW1vOmZ1bmN0aW9uKGUsbil7dmFyIHQ9Q3UoKTtyZXR1cm4gbj12b2lkIDA9PT1uP251bGw6bixlPWUoKSx0Lm1lbW9pemVkU3RhdGU9W2Usbl0sZX0sdXNlUmVkdWNlcjpmdW5jdGlvbihlLG4sdCl7dmFyIHI9Q3UoKTtyZXR1cm4gbj12b2lkIDAhPT10P3Qobik6bixyLm1lbW9pemVkU3RhdGU9ci5iYXNlU3RhdGU9bixlPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOm59LHIucXVldWU9ZSxlPWUuZGlzcGF0Y2g9ZW8uYmluZChudWxsLG11LGUpLFtyLm1lbW9pemVkU3RhdGUsZV19LHVzZVJlZjpmdW5jdGlvbihlKXtyZXR1cm4gZT17Y3VycmVudDplfSxDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlU3RhdGU6T3UsdXNlRGVidWdWYWx1ZTpLdSx1c2VEZWZlcnJlZFZhbHVlOmZ1bmN0aW9uKGUpe3JldHVybiBDdSgpLm1lbW9pemVkU3RhdGU9ZX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3ZhciBlPU91KCExKSxuPWVbMF07cmV0dXJuIGU9WnUuYmluZChudWxsLGVbMV0pLEN1KCkubWVtb2l6ZWRTdGF0ZT1lLFtuLGVdfSx1c2VNdXRhYmxlU291cmNlOmZ1bmN0aW9uKCl7fSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpmdW5jdGlvbihlLG4sdCl7dmFyIHI9bXUsbD1DdSgpO2lmKGxhKXtpZih2b2lkIDA9PT10KXRocm93IEVycm9yKGEoNDA3KSk7dD10KCl9ZWxzZXtpZih0PW4oKSxudWxsPT09UGkpdGhyb3cgRXJyb3IoYSgzNDkpKTszMCZwdXx8TXUocixuLHQpfWwubWVtb2l6ZWRTdGF0ZT10O3ZhciB1PXt2YWx1ZTp0LGdldFNuYXBzaG90Om59O3JldHVybiBsLnF1ZXVlPXUsCld1KFJ1LmJpbmQobnVsbCxyLHUsZSksW2VdKSxyLmZsYWdzfD0yMDQ4LFV1KDksRnUuYmluZChudWxsLHIsdSx0LG4pLHZvaWQgMCxudWxsKSx0fSx1c2VJZDpmdW5jdGlvbigpe3ZhciBlPUN1KCksbj1QaS5pZGVudGlmaWVyUHJlZml4O2lmKGxhKXt2YXIgdD1HbDtuPSI6IituKyJSIisodD0oWGwmfigxPDwzMi11bihYbCktMSkpLnRvU3RyaW5nKDMyKSt0KSwwPCh0PWJ1KyspJiYobis9IkgiK3QudG9TdHJpbmcoMzIpKSxuKz0iOiJ9ZWxzZSBuPSI6IituKyJyIisodD1rdSsrKS50b1N0cmluZygzMikrIjoiO3JldHVybiBlLm1lbW9pemVkU3RhdGU9bn0sdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSxvbz17cmVhZENvbnRleHQ6Q2EsdXNlQ2FsbGJhY2s6WXUsdXNlQ29udGV4dDpDYSx1c2VFZmZlY3Q6SHUsdXNlSW1wZXJhdGl2ZUhhbmRsZTpxdSx1c2VJbnNlcnRpb25FZmZlY3Q6UXUsdXNlTGF5b3V0RWZmZWN0Omp1LHVzZU1lbW86WHUsdXNlUmVkdWNlcjpfdSx1c2VSZWY6VnUsdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gX3UoTnUpfSx1c2VEZWJ1Z1ZhbHVlOkt1LHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIEd1KHp1KCksaHUubWVtb2l6ZWRTdGF0ZSxlKX0sdXNlVHJhbnNpdGlvbjpmdW5jdGlvbigpe3JldHVybltfdShOdSlbMF0senUoKS5tZW1vaXplZFN0YXRlXX0sdXNlTXV0YWJsZVNvdXJjZTpUdSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpMdSx1c2VJZDpKdSx1bnN0YWJsZV9pc05ld1JlY29uY2lsZXI6ITF9LGlvPXtyZWFkQ29udGV4dDpDYSx1c2VDYWxsYmFjazpZdSx1c2VDb250ZXh0OkNhLHVzZUVmZmVjdDpIdSx1c2VJbXBlcmF0aXZlSGFuZGxlOnF1LHVzZUluc2VydGlvbkVmZmVjdDpRdSx1c2VMYXlvdXRFZmZlY3Q6anUsdXNlTWVtbzpYdSx1c2VSZWR1Y2VyOlB1LHVzZVJlZjpWdSx1c2VTdGF0ZTpmdW5jdGlvbigpe3JldHVybiBQdShOdSl9LHVzZURlYnVnVmFsdWU6S3UsdXNlRGVmZXJyZWRWYWx1ZTpmdW5jdGlvbihlKXt2YXIgbj16dSgpO3JldHVybiBudWxsPT09aHU/bi5tZW1vaXplZFN0YXRlPWU6R3UobixodS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW1B1KE51KVswXSx6dSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOlR1LHVzZVN5bmNFeHRlcm5hbFN0b3JlOkx1LHVzZUlkOkp1LHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX07ZnVuY3Rpb24gc28oZSxuKXt0cnl7dmFyIHQ9IiIscj1uO2Rve3QrPUIocikscj1yLnJldHVybn13aGlsZShyKTt2YXIgbD10fWNhdGNoKGUpe2w9IlxuRXJyb3IgZ2VuZXJhdGluZyBzdGFjazogIitlLm1lc3NhZ2UrIlxuIitlLnN0YWNrfXJldHVybnt2YWx1ZTplLHNvdXJjZTpuLHN0YWNrOmwsZGlnZXN0Om51bGx9fWZ1bmN0aW9uIGNvKGUsbix0KXtyZXR1cm57dmFsdWU6ZSxzb3VyY2U6bnVsbCxzdGFjazpudWxsIT10P3Q6bnVsbCxkaWdlc3Q6bnVsbCE9bj9uOm51bGx9fWZ1bmN0aW9uIGZvKGUsbil7dHJ5e2NvbnNvbGUuZXJyb3Iobi52YWx1ZSl9Y2F0Y2goZSl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt0aHJvdyBlfSkpfX12YXIgcG89ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtNYXA/V2Vha01hcDpNYXA7ZnVuY3Rpb24gbW8oZSxuLHQpeyh0PUZhKC0xLHQpKS50YWc9Myx0LnBheWxvYWQ9e2VsZW1lbnQ6bnVsbH07dmFyIHI9bi52YWx1ZTtyZXR1cm4gdC5jYWxsYmFjaz1mdW5jdGlvbigpe1FpfHwoUWk9ITAsamk9ciksZm8oMCxuKX0sdH1mdW5jdGlvbiBobyhlLG4sdCl7KHQ9RmEoLTEsdCkpLnRhZz0zO3ZhciByPWUudHlwZS5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBsPW4udmFsdWU7dC5wYXlsb2FkPWZ1bmN0aW9uKCl7cmV0dXJuIHIobCl9LHQuY2FsbGJhY2s9ZnVuY3Rpb24oKXtmbygwLG4pfX12YXIgYT1lLnN0YXRlTm9kZTtyZXR1cm4gbnVsbCE9PWEmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLmNvbXBvbmVudERpZENhdGNoJiYodC5jYWxsYmFjaz1mdW5jdGlvbigpe2ZvKDAsbiksImZ1bmN0aW9uIiE9dHlwZW9mIHImJihudWxsPT09JGk/JGk9bmV3IFNldChbdGhpc10pOiRpLmFkZCh0aGlzKSk7dmFyIGU9bi5zdGFjazt0aGlzLmNvbXBvbmVudERpZENhdGNoKG4udmFsdWUse2NvbXBvbmVudFN0YWNrOm51bGwhPT1lP2U6IiJ9KX0pLHR9ZnVuY3Rpb24gZ28oZSxuLHQpe3ZhciByPWUucGluZ0NhY2hlO2lmKG51bGw9PT1yKXtyPWUucGluZ0NhY2hlPW5ldyBwbzt2YXIgbD1uZXcgU2V0O3Iuc2V0KG4sbCl9ZWxzZSB2b2lkIDA9PT0obD1yLmdldChuKSkmJihsPW5ldyBTZXQsci5zZXQobixsKSk7bC5oYXModCl8fChsLmFkZCh0KSxlPUNzLmJpbmQobnVsbCxlLG4sdCksbi50aGVuKGUsZSkpfWZ1bmN0aW9uIHZvKGUpe2Rve3ZhciBuO2lmKChuPTEzPT09ZS50YWcpJiYobj1udWxsPT09KG49ZS5tZW1vaXplZFN0YXRlKXx8bnVsbCE9PW4uZGVoeWRyYXRlZCksbilyZXR1cm4gZTtlPWUucmV0dXJufXdoaWxlKG51bGwhPT1lKTtyZXR1cm4gbnVsbH1mdW5jdGlvbiB5byhlLG4sdCxyLGwpe3JldHVybiAxJmUubW9kZT8oZS5mbGFnc3w9NjU1MzYsZS5sYW5lcz1sLGUpOihlPT09bj9lLmZsYWdzfD02NTUzNjooZS5mbGFnc3w9MTI4LHQuZmxhZ3N8PTEzMTA3Mix0LmZsYWdzJj0tNTI4MDUsMT09PXQudGFnJiYobnVsbD09PXQuYWx0ZXJuYXRlP3QudGFnPTE3Oigobj1GYSgtMSwxKSkudGFnPTIsUmEodCxuLDEpKSksdC5sYW5lc3w9MSksZSl9dmFyIGJvPWsuUmVhY3RDdXJyZW50T3duZXIsa289ITE7ZnVuY3Rpb24gd28oZSxuLHQscil7bi5jaGlsZD1udWxsPT09ZT9HYShuLG51bGwsdCxyKTpYYShuLGUuY2hpbGQsdCxyKX1mdW5jdGlvbiBTbyhlLG4sdCxyLGwpe3Q9dC5yZW5kZXI7dmFyIGE9bi5yZWY7cmV0dXJuIEVhKG4sbCkscj14dShlLG4sdCxyLGEsbCksdD1FdSgpLG51bGw9PT1lfHxrbz8obGEmJnQmJmVhKG4pLG4uZmxhZ3N8PTEsd28oZSxuLHIsbCksbi5jaGlsZCk6KG4udXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSxuLmZsYWdzJj0tMjA1MywKZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiB4byhlLG4sdCxyLGwpe2lmKG51bGw9PT1lKXt2YXIgYT10LnR5cGU7cmV0dXJuImZ1bmN0aW9uIiE9dHlwZW9mIGF8fE1zKGEpfHx2b2lkIDAhPT1hLmRlZmF1bHRQcm9wc3x8bnVsbCE9PXQuY29tcGFyZXx8dm9pZCAwIT09dC5kZWZhdWx0UHJvcHM/KChlPVJzKHQudHlwZSxudWxsLHIsbixuLm1vZGUsbCkpLnJlZj1uLnJlZixlLnJldHVybj1uLG4uY2hpbGQ9ZSk6KG4udGFnPTE1LG4udHlwZT1hLEVvKGUsbixhLHIsbCkpfWlmKGE9ZS5jaGlsZCwhKGUubGFuZXMmbCkpe3ZhciB1PWEubWVtb2l6ZWRQcm9wcztpZigodD1udWxsIT09KHQ9dC5jb21wYXJlKT90OmlyKSh1LHIpJiZlLnJlZj09PW4ucmVmKXJldHVybiBRbyhlLG4sbCl9cmV0dXJuIG4uZmxhZ3N8PTEsKGU9RnMoYSxyKSkucmVmPW4ucmVmLGUucmV0dXJuPW4sbi5jaGlsZD1lfWZ1bmN0aW9uIEVvKGUsbix0LHIsbCl7aWYobnVsbCE9PWUpe3ZhciBhPWUubWVtb2l6ZWRQcm9wcztpZihpcihhLHIpJiZlLnJlZj09PW4ucmVmKXtpZihrbz0hMSxuLnBlbmRpbmdQcm9wcz1yPWEsIShlLmxhbmVzJmwpKXJldHVybiBuLmxhbmVzPWUubGFuZXMsUW8oZSxuLGwpOzEzMTA3MiZlLmZsYWdzJiYoa289ITApfX1yZXR1cm4gTm8oZSxuLHQscixsKX1mdW5jdGlvbiBDbyhlLG4sdCl7dmFyIHI9bi5wZW5kaW5nUHJvcHMsbD1yLmNoaWxkcmVuLGE9bnVsbCE9PWU/ZS5tZW1vaXplZFN0YXRlOm51bGw7aWYoImhpZGRlbiI9PT1yLm1vZGUpaWYoMSZuLm1vZGUpe2lmKCEoMTA3Mzc0MTgyNCZ0KSlyZXR1cm4gZT1udWxsIT09YT9hLmJhc2VMYW5lc3x0OnQsbi5sYW5lcz1uLmNoaWxkTGFuZXM9MTA3Mzc0MTgyNCxuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczplLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LG4udXBkYXRlUXVldWU9bnVsbCx6bChGaSxNaSksTWl8PWUsbnVsbDtuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHI9bnVsbCE9PWE/YS5iYXNlTGFuZXM6dCx6bChGaSxNaSksTWl8PXJ9ZWxzZSBuLm1lbW9pemVkU3RhdGU9e2Jhc2VMYW5lczowLGNhY2hlUG9vbDpudWxsLHRyYW5zaXRpb25zOm51bGx9LHpsKEZpLE1pKSxNaXw9dDtlbHNlIG51bGwhPT1hPyhyPWEuYmFzZUxhbmVzfHQsbi5tZW1vaXplZFN0YXRlPW51bGwpOnI9dCx6bChGaSxNaSksTWl8PXI7cmV0dXJuIHdvKGUsbixsLHQpLG4uY2hpbGR9ZnVuY3Rpb24gem8oZSxuKXt2YXIgdD1uLnJlZjsobnVsbD09PWUmJm51bGwhPT10fHxudWxsIT09ZSYmZS5yZWYhPT10KSYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKX1mdW5jdGlvbiBObyhlLG4sdCxyLGwpe3ZhciBhPU1sKHQpP1RsOl9sLmN1cnJlbnQ7cmV0dXJuIGE9TGwobixhKSxFYShuLGwpLHQ9eHUoZSxuLHQscixhLGwpLHI9RXUoKSxudWxsPT09ZXx8a28/KGxhJiZyJiZlYShuKSxuLmZsYWdzfD0xLHdvKGUsbix0LGwpLG4uY2hpbGQpOihuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbi5mbGFncyY9LTIwNTMsZS5sYW5lcyY9fmwsUW8oZSxuLGwpKX1mdW5jdGlvbiBfbyhlLG4sdCxyLGwpe2lmKE1sKHQpKXt2YXIgYT0hMDtJbChuKX1lbHNlIGE9ITE7aWYoRWEobixsKSxudWxsPT09bi5zdGF0ZU5vZGUpSG8oZSxuKSxIYShuLHQsciksamEobix0LHIsbCkscj0hMDtlbHNlIGlmKG51bGw9PT1lKXt2YXIgdT1uLnN0YXRlTm9kZSxvPW4ubWVtb2l6ZWRQcm9wczt1LnByb3BzPW87dmFyIGk9dS5jb250ZXh0LHM9dC5jb250ZXh0VHlwZTsib2JqZWN0Ij09dHlwZW9mIHMmJm51bGwhPT1zP3M9Q2Eocyk6cz1MbChuLHM9TWwodCk/VGw6X2wuY3VycmVudCk7dmFyIGM9dC5nZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMsZj0iZnVuY3Rpb24iPT10eXBlb2YgY3x8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGU7Znx8ImZ1bmN0aW9uIiE9dHlwZW9mIHUuVU5TQUZFX2NvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHN8fChvIT09cnx8aSE9PXMpJiZRYShuLHUscixzKSxUYT0hMTt2YXIgZD1uLm1lbW9pemVkU3RhdGU7dS5zdGF0ZT1kLE9hKG4scix1LGwpLGk9bi5tZW1vaXplZFN0YXRlLG8hPT1yfHxkIT09aXx8UGwuY3VycmVudHx8VGE/KCJmdW5jdGlvbiI9PXR5cGVvZiBjJiYoQWEobix0LGMsciksaT1uLm1lbW9pemVkU3RhdGUpLChvPVRhfHxXYShuLHQsbyxyLGQsaSxzKSk/KGZ8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJiJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudHx8KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudFdpbGxNb3VudCYmdS5jb21wb25lbnRXaWxsTW91bnQoKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiZ1LlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQoKSksImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSk6KCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZE1vdW50JiYobi5mbGFnc3w9NDE5NDMwOCksbi5tZW1vaXplZFByb3BzPXIsbi5tZW1vaXplZFN0YXRlPWkpLHUucHJvcHM9cix1LnN0YXRlPWksdS5jb250ZXh0PXMscj1vKTooImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50RGlkTW91bnQmJihuLmZsYWdzfD00MTk0MzA4KSxyPSExKX1lbHNle3U9bi5zdGF0ZU5vZGUsTWEoZSxuKSxvPW4ubWVtb2l6ZWRQcm9wcyxzPW4udHlwZT09PW4uZWxlbWVudFR5cGU/bzpnYShuLnR5cGUsbyksdS5wcm9wcz1zLGY9bi5wZW5kaW5nUHJvcHMsZD11LmNvbnRleHQsIm9iamVjdCI9PXR5cGVvZihpPXQuY29udGV4dFR5cGUpJiZudWxsIT09aT9pPUNhKGkpOmk9TGwobixpPU1sKHQpP1RsOl9sLmN1cnJlbnQpO3ZhciBwPXQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzCjsoYz0iZnVuY3Rpb24iPT10eXBlb2YgcHx8ImZ1bmN0aW9uIj09dHlwZW9mIHUuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIHUuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8KG8hPT1mfHxkIT09aSkmJlFhKG4sdSxyLGkpLFRhPSExLGQ9bi5tZW1vaXplZFN0YXRlLHUuc3RhdGU9ZCxPYShuLHIsdSxsKTt2YXIgbT1uLm1lbW9pemVkU3RhdGU7byE9PWZ8fGQhPT1tfHxQbC5jdXJyZW50fHxUYT8oImZ1bmN0aW9uIj09dHlwZW9mIHAmJihBYShuLHQscCxyKSxtPW4ubWVtb2l6ZWRTdGF0ZSksKHM9VGF8fFdhKG4sdCxzLHIsZCxtLGkpfHwhMSk/KGN8fCJmdW5jdGlvbiIhPXR5cGVvZiB1LlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiYiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnRXaWxsVXBkYXRlfHwoImZ1bmN0aW9uIj09dHlwZW9mIHUuY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5jb21wb25lbnRXaWxsVXBkYXRlKHIsbSxpKSwiZnVuY3Rpb24iPT10eXBlb2YgdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZSYmdS5VTlNBRkVfY29tcG9uZW50V2lsbFVwZGF0ZShyLG0saSkpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZSYmKG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiI9PXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlJiYobi5mbGFnc3w9MTAyNCkpOigiZnVuY3Rpb24iIT10eXBlb2YgdS5jb21wb25lbnREaWRVcGRhdGV8fG89PT1lLm1lbW9pemVkUHJvcHMmJmQ9PT1lLm1lbW9pemVkU3RhdGV8fChuLmZsYWdzfD00KSwiZnVuY3Rpb24iIT10eXBlb2YgdS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTEwMjQpLG4ubWVtb2l6ZWRQcm9wcz1yLG4ubWVtb2l6ZWRTdGF0ZT1tKSx1LnByb3BzPXIsdS5zdGF0ZT1tLHUuY29udGV4dD1pLHI9cyk6KCJmdW5jdGlvbiIhPXR5cGVvZiB1LmNvbXBvbmVudERpZFVwZGF0ZXx8bz09PWUubWVtb2l6ZWRQcm9wcyYmZD09PWUubWVtb2l6ZWRTdGF0ZXx8KG4uZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiB1LmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxvPT09ZS5tZW1vaXplZFByb3BzJiZkPT09ZS5tZW1vaXplZFN0YXRlfHwobi5mbGFnc3w9MTAyNCkscj0hMSl9cmV0dXJuIFBvKGUsbix0LHIsYSxsKX1mdW5jdGlvbiBQbyhlLG4sdCxyLGwsYSl7em8oZSxuKTt2YXIgdT0hISgxMjgmbi5mbGFncyk7aWYoIXImJiF1KXJldHVybiBsJiZPbChuLHQsITEpLFFvKGUsbixhKTtyPW4uc3RhdGVOb2RlLGJvLmN1cnJlbnQ9bjt2YXIgbz11JiYiZnVuY3Rpb24iIT10eXBlb2YgdC5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3I/bnVsbDpyLnJlbmRlcigpO3JldHVybiBuLmZsYWdzfD0xLG51bGwhPT1lJiZ1PyhuLmNoaWxkPVhhKG4sZS5jaGlsZCxudWxsLGEpLG4uY2hpbGQ9WGEobixudWxsLG8sYSkpOndvKGUsbixvLGEpLG4ubWVtb2l6ZWRTdGF0ZT1yLnN0YXRlLGwmJk9sKG4sdCwhMCksbi5jaGlsZH1mdW5jdGlvbiBUbyhlKXt2YXIgbj1lLnN0YXRlTm9kZTtuLnBlbmRpbmdDb250ZXh0P1JsKDAsbi5wZW5kaW5nQ29udGV4dCxuLnBlbmRpbmdDb250ZXh0IT09bi5jb250ZXh0KTpuLmNvbnRleHQmJlJsKDAsbi5jb250ZXh0LCExKSxydShlLG4uY29udGFpbmVySW5mbyl9ZnVuY3Rpb24gTG8oZSxuLHQscixsKXtyZXR1cm4gcGEoKSxtYShsKSxuLmZsYWdzfD0yNTYsd28oZSxuLHQsciksbi5jaGlsZH12YXIgTW8sRm8sUm8sRG89e2RlaHlkcmF0ZWQ6bnVsbCx0cmVlQ29udGV4dDpudWxsLHJldHJ5TGFuZTowfTtmdW5jdGlvbiBJbyhlKXtyZXR1cm57YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH19ZnVuY3Rpb24gT28oZSxuLHQpe3ZhciByLGw9bi5wZW5kaW5nUHJvcHMsdT1vdS5jdXJyZW50LG89ITEsaT0hISgxMjgmbi5mbGFncyk7aWYoKHI9aSl8fChyPShudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSkmJiEhKDImdSkpLHI/KG89ITAsbi5mbGFncyY9LTEyOSk6bnVsbCE9PWUmJm51bGw9PT1lLm1lbW9pemVkU3RhdGV8fCh1fD0xKSx6bChvdSwxJnUpLG51bGw9PT1lKXJldHVybiBzYShuKSxudWxsIT09KGU9bi5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShlPWUuZGVoeWRyYXRlZCk/KDEmbi5tb2RlPyIkISI9PT1lLmRhdGE/bi5sYW5lcz04Om4ubGFuZXM9MTA3Mzc0MTgyNDpuLmxhbmVzPTEsbnVsbCk6KGk9bC5jaGlsZHJlbixlPWwuZmFsbGJhY2ssbz8obD1uLm1vZGUsbz1uLmNoaWxkLGk9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46aX0sMSZsfHxudWxsPT09bz9vPUlzKGksbCwwLG51bGwpOihvLmNoaWxkTGFuZXM9MCxvLnBlbmRpbmdQcm9wcz1pKSxlPURzKGUsbCx0LG51bGwpLG8ucmV0dXJuPW4sZS5yZXR1cm49bixvLnNpYmxpbmc9ZSxuLmNoaWxkPW8sbi5jaGlsZC5tZW1vaXplZFN0YXRlPUlvKHQpLG4ubWVtb2l6ZWRTdGF0ZT1EbyxlKTpVbyhuLGkpKTtpZihudWxsIT09KHU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PShyPXUuZGVoeWRyYXRlZCkpcmV0dXJuIGZ1bmN0aW9uKGUsbix0LHIsbCx1LG8pe2lmKHQpcmV0dXJuIDI1NiZuLmZsYWdzPyhuLmZsYWdzJj0tMjU3LFZvKGUsbixvLHI9Y28oRXJyb3IoYSg0MjIpKSkpKTpudWxsIT09bi5tZW1vaXplZFN0YXRlPyhuLmNoaWxkPWUuY2hpbGQsbi5mbGFnc3w9MTI4LG51bGwpOih1PXIuZmFsbGJhY2ssbD1uLm1vZGUscj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46ci5jaGlsZHJlbn0sbCwwLG51bGwpLCh1PURzKHUsbCxvLG51bGwpKS5mbGFnc3w9MixyLnJldHVybj1uLHUucmV0dXJuPW4sci5zaWJsaW5nPXUsbi5jaGlsZD1yLDEmbi5tb2RlJiZYYShuLGUuY2hpbGQsbnVsbCxvKSxuLmNoaWxkLm1lbW9pemVkU3RhdGU9SW8obyksbi5tZW1vaXplZFN0YXRlPURvLHUpO2lmKCEoMSZuLm1vZGUpKXJldHVybiBWbyhlLG4sbyxudWxsKTtpZigiJCEiPT09bC5kYXRhKXsKaWYocj1sLm5leHRTaWJsaW5nJiZsLm5leHRTaWJsaW5nLmRhdGFzZXQpdmFyIGk9ci5kZ3N0O3JldHVybiByPWksVm8oZSxuLG8scj1jbyh1PUVycm9yKGEoNDE5KSkscix2b2lkIDApKX1pZihpPSEhKG8mZS5jaGlsZExhbmVzKSxrb3x8aSl7aWYobnVsbCE9PShyPVBpKSl7c3dpdGNoKG8mLW8pe2Nhc2UgNDpsPTI7YnJlYWs7Y2FzZSAxNjpsPTg7YnJlYWs7Y2FzZSA2NDpjYXNlIDEyODpjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMTY3NzcyMTY6Y2FzZSAzMzU1NDQzMjpjYXNlIDY3MTA4ODY0Omw9MzI7YnJlYWs7Y2FzZSA1MzY4NzA5MTI6bD0yNjg0MzU0NTY7YnJlYWs7ZGVmYXVsdDpsPTB9MCE9PShsPWwmKHIuc3VzcGVuZGVkTGFuZXN8byk/MDpsKSYmbCE9PXUucmV0cnlMYW5lJiYodS5yZXRyeUxhbmU9bCxQYShlLGwpLHRzKHIsZSxsLC0xKSl9cmV0dXJuIGhzKCksVm8oZSxuLG8scj1jbyhFcnJvcihhKDQyMSkpKSl9cmV0dXJuIiQ/Ij09PWwuZGF0YT8obi5mbGFnc3w9MTI4LG4uY2hpbGQ9ZS5jaGlsZCxuPU5zLmJpbmQobnVsbCxlKSxsLl9yZWFjdFJldHJ5PW4sbnVsbCk6KGU9dS50cmVlQ29udGV4dCxyYT1zbChsLm5leHRTaWJsaW5nKSx0YT1uLGxhPSEwLGFhPW51bGwsbnVsbCE9PWUmJihxbFtLbCsrXT1YbCxxbFtLbCsrXT1HbCxxbFtLbCsrXT1ZbCxYbD1lLmlkLEdsPWUub3ZlcmZsb3csWWw9biksbj1VbyhuLHIuY2hpbGRyZW4pLG4uZmxhZ3N8PTQwOTYsbil9KGUsbixpLGwscix1LHQpO2lmKG8pe289bC5mYWxsYmFjayxpPW4ubW9kZSxyPSh1PWUuY2hpbGQpLnNpYmxpbmc7dmFyIHM9e21vZGU6ImhpZGRlbiIsY2hpbGRyZW46bC5jaGlsZHJlbn07cmV0dXJuIDEmaXx8bi5jaGlsZD09PXU/KGw9RnModSxzKSkuc3VidHJlZUZsYWdzPTE0NjgwMDY0JnUuc3VidHJlZUZsYWdzOigobD1uLmNoaWxkKS5jaGlsZExhbmVzPTAsbC5wZW5kaW5nUHJvcHM9cyxuLmRlbGV0aW9ucz1udWxsKSxudWxsIT09cj9vPUZzKHIsbyk6KG89RHMobyxpLHQsbnVsbCkpLmZsYWdzfD0yLG8ucmV0dXJuPW4sbC5yZXR1cm49bixsLnNpYmxpbmc9byxuLmNoaWxkPWwsbD1vLG89bi5jaGlsZCxpPW51bGw9PT0oaT1lLmNoaWxkLm1lbW9pemVkU3RhdGUpP0lvKHQpOntiYXNlTGFuZXM6aS5iYXNlTGFuZXN8dCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczppLnRyYW5zaXRpb25zfSxvLm1lbW9pemVkU3RhdGU9aSxvLmNoaWxkTGFuZXM9ZS5jaGlsZExhbmVzJn50LG4ubWVtb2l6ZWRTdGF0ZT1EbyxsfXJldHVybiBlPShvPWUuY2hpbGQpLnNpYmxpbmcsbD1GcyhvLHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjpsLmNoaWxkcmVufSksISgxJm4ubW9kZSkmJihsLmxhbmVzPXQpLGwucmV0dXJuPW4sbC5zaWJsaW5nPW51bGwsbnVsbCE9PWUmJihudWxsPT09KHQ9bi5kZWxldGlvbnMpPyhuLmRlbGV0aW9ucz1bZV0sbi5mbGFnc3w9MTYpOnQucHVzaChlKSksbi5jaGlsZD1sLG4ubWVtb2l6ZWRTdGF0ZT1udWxsLGx9ZnVuY3Rpb24gVW8oZSxuKXtyZXR1cm4obj1Jcyh7bW9kZToidmlzaWJsZSIsY2hpbGRyZW46bn0sZS5tb2RlLDAsbnVsbCkpLnJldHVybj1lLGUuY2hpbGQ9bn1mdW5jdGlvbiBWbyhlLG4sdCxyKXtyZXR1cm4gbnVsbCE9PXImJm1hKHIpLFhhKG4sZS5jaGlsZCxudWxsLHQpLChlPVVvKG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4pKS5mbGFnc3w9MixuLm1lbW9pemVkU3RhdGU9bnVsbCxlfWZ1bmN0aW9uIEFvKGUsbix0KXtlLmxhbmVzfD1uO3ZhciByPWUuYWx0ZXJuYXRlO251bGwhPT1yJiYoci5sYW5lc3w9bikseGEoZS5yZXR1cm4sbix0KX1mdW5jdGlvbiBCbyhlLG4sdCxyLGwpe3ZhciBhPWUubWVtb2l6ZWRTdGF0ZTtudWxsPT09YT9lLm1lbW9pemVkU3RhdGU9e2lzQmFja3dhcmRzOm4scmVuZGVyaW5nOm51bGwscmVuZGVyaW5nU3RhcnRUaW1lOjAsbGFzdDpyLHRhaWw6dCx0YWlsTW9kZTpsfTooYS5pc0JhY2t3YXJkcz1uLGEucmVuZGVyaW5nPW51bGwsYS5yZW5kZXJpbmdTdGFydFRpbWU9MCxhLmxhc3Q9cixhLnRhaWw9dCxhLnRhaWxNb2RlPWwpfWZ1bmN0aW9uIFdvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcyxsPXIucmV2ZWFsT3JkZXIsYT1yLnRhaWw7aWYod28oZSxuLHIuY2hpbGRyZW4sdCksMiYocj1vdS5jdXJyZW50KSlyPTEmcnwyLG4uZmxhZ3N8PTEyODtlbHNle2lmKG51bGwhPT1lJiYxMjgmZS5mbGFncyllOmZvcihlPW4uY2hpbGQ7bnVsbCE9PWU7KXtpZigxMz09PWUudGFnKW51bGwhPT1lLm1lbW9pemVkU3RhdGUmJkFvKGUsdCxuKTtlbHNlIGlmKDE5PT09ZS50YWcpQW8oZSx0LG4pO2Vsc2UgaWYobnVsbCE9PWUuY2hpbGQpe2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkO2NvbnRpbnVlfWlmKGU9PT1uKWJyZWFrIGU7Zm9yKDtudWxsPT09ZS5zaWJsaW5nOyl7aWYobnVsbD09PWUucmV0dXJufHxlLnJldHVybj09PW4pYnJlYWsgZTtlPWUucmV0dXJufWUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmd9ciY9MX1pZih6bChvdSxyKSwxJm4ubW9kZSlzd2l0Y2gobCl7Y2FzZSJmb3J3YXJkcyI6Zm9yKHQ9bi5jaGlsZCxsPW51bGw7bnVsbCE9PXQ7KW51bGwhPT0oZT10LmFsdGVybmF0ZSkmJm51bGw9PT1pdShlKSYmKGw9dCksdD10LnNpYmxpbmc7bnVsbD09PSh0PWwpPyhsPW4uY2hpbGQsbi5jaGlsZD1udWxsKToobD10LnNpYmxpbmcsdC5zaWJsaW5nPW51bGwpLEJvKG4sITEsbCx0LGEpO2JyZWFrO2Nhc2UiYmFja3dhcmRzIjpmb3IodD1udWxsLGw9bi5jaGlsZCxuLmNoaWxkPW51bGw7bnVsbCE9PWw7KXtpZihudWxsIT09KGU9bC5hbHRlcm5hdGUpJiZudWxsPT09aXUoZSkpe24uY2hpbGQ9bDticmVha31lPWwuc2libGluZyxsLnNpYmxpbmc9dCx0PWwsbD1lfUJvKG4sITAsdCxudWxsLGEpO2JyZWFrO2Nhc2UidG9nZXRoZXIiOgpCbyhuLCExLG51bGwsbnVsbCx2b2lkIDApO2JyZWFrO2RlZmF1bHQ6bi5tZW1vaXplZFN0YXRlPW51bGx9ZWxzZSBuLm1lbW9pemVkU3RhdGU9bnVsbDtyZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBIbyhlLG4peyEoMSZuLm1vZGUpJiZudWxsIT09ZSYmKGUuYWx0ZXJuYXRlPW51bGwsbi5hbHRlcm5hdGU9bnVsbCxuLmZsYWdzfD0yKX1mdW5jdGlvbiBRbyhlLG4sdCl7aWYobnVsbCE9PWUmJihuLmRlcGVuZGVuY2llcz1lLmRlcGVuZGVuY2llcyksSWl8PW4ubGFuZXMsISh0Jm4uY2hpbGRMYW5lcykpcmV0dXJuIG51bGw7aWYobnVsbCE9PWUmJm4uY2hpbGQhPT1lLmNoaWxkKXRocm93IEVycm9yKGEoMTUzKSk7aWYobnVsbCE9PW4uY2hpbGQpe2Zvcih0PUZzKGU9bi5jaGlsZCxlLnBlbmRpbmdQcm9wcyksbi5jaGlsZD10LHQucmV0dXJuPW47bnVsbCE9PWUuc2libGluZzspZT1lLnNpYmxpbmcsKHQ9dC5zaWJsaW5nPUZzKGUsZS5wZW5kaW5nUHJvcHMpKS5yZXR1cm49bjt0LnNpYmxpbmc9bnVsbH1yZXR1cm4gbi5jaGlsZH1mdW5jdGlvbiBqbyhlLG4pe2lmKCFsYSlzd2l0Y2goZS50YWlsTW9kZSl7Y2FzZSJoaWRkZW4iOm49ZS50YWlsO2Zvcih2YXIgdD1udWxsO251bGwhPT1uOyludWxsIT09bi5hbHRlcm5hdGUmJih0PW4pLG49bi5zaWJsaW5nO251bGw9PT10P2UudGFpbD1udWxsOnQuc2libGluZz1udWxsO2JyZWFrO2Nhc2UiY29sbGFwc2VkIjp0PWUudGFpbDtmb3IodmFyIHI9bnVsbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYocj10KSx0PXQuc2libGluZztudWxsPT09cj9ufHxudWxsPT09ZS50YWlsP2UudGFpbD1udWxsOmUudGFpbC5zaWJsaW5nPW51bGw6ci5zaWJsaW5nPW51bGx9fWZ1bmN0aW9uICRvKGUpe3ZhciBuPW51bGwhPT1lLmFsdGVybmF0ZSYmZS5hbHRlcm5hdGUuY2hpbGQ9PT1lLmNoaWxkLHQ9MCxyPTA7aWYobilmb3IodmFyIGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9MTQ2ODAwNjQmbC5zdWJ0cmVlRmxhZ3Mscnw9MTQ2ODAwNjQmbC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO2Vsc2UgZm9yKGw9ZS5jaGlsZDtudWxsIT09bDspdHw9bC5sYW5lc3xsLmNoaWxkTGFuZXMscnw9bC5zdWJ0cmVlRmxhZ3Mscnw9bC5mbGFncyxsLnJldHVybj1lLGw9bC5zaWJsaW5nO3JldHVybiBlLnN1YnRyZWVGbGFnc3w9cixlLmNoaWxkTGFuZXM9dCxufWZ1bmN0aW9uIHFvKGUsbix0KXt2YXIgcj1uLnBlbmRpbmdQcm9wcztzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMjpjYXNlIDE2OmNhc2UgMTU6Y2FzZSAwOmNhc2UgMTE6Y2FzZSA3OmNhc2UgODpjYXNlIDEyOmNhc2UgOTpjYXNlIDE0OnJldHVybiAkbyhuKSxudWxsO2Nhc2UgMTpjYXNlIDE3OnJldHVybiBNbChuLnR5cGUpJiZGbCgpLCRvKG4pLG51bGw7Y2FzZSAzOnJldHVybiByPW4uc3RhdGVOb2RlLGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLHIucGVuZGluZ0NvbnRleHQmJihyLmNvbnRleHQ9ci5wZW5kaW5nQ29udGV4dCxyLnBlbmRpbmdDb250ZXh0PW51bGwpLG51bGwhPT1lJiZudWxsIT09ZS5jaGlsZHx8KGZhKG4pP24uZmxhZ3N8PTQ6bnVsbD09PWV8fGUubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQmJiEoMjU2Jm4uZmxhZ3MpfHwobi5mbGFnc3w9MTAyNCxudWxsIT09YWEmJih1cyhhYSksYWE9bnVsbCkpKSwkbyhuKSxudWxsO2Nhc2UgNTp1dShuKTt2YXIgbD10dShudS5jdXJyZW50KTtpZih0PW4udHlwZSxudWxsIT09ZSYmbnVsbCE9bi5zdGF0ZU5vZGUpRm8oZSxuLHQsciksZS5yZWYhPT1uLnJlZiYmKG4uZmxhZ3N8PTUxMixuLmZsYWdzfD0yMDk3MTUyKTtlbHNle2lmKCFyKXtpZihudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtyZXR1cm4gJG8obiksbnVsbH1pZihlPXR1KEphLmN1cnJlbnQpLGZhKG4pKXtyPW4uc3RhdGVOb2RlLHQ9bi50eXBlO3ZhciB1PW4ubWVtb2l6ZWRQcm9wcztzd2l0Y2gocltkbF09bixyW3BsXT11LGU9ISEoMSZuLm1vZGUpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixyKSxWcigiY2xvc2UiLHIpO2JyZWFrO2Nhc2UiaWZyYW1lIjpjYXNlIm9iamVjdCI6Y2FzZSJlbWJlZCI6VnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UidmlkZW8iOmNhc2UiYXVkaW8iOmZvcihsPTA7bDxEci5sZW5ndGg7bCsrKVZyKERyW2xdLHIpO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLHIpO2JyZWFrO2Nhc2UiaW1nIjpjYXNlImltYWdlIjpjYXNlImxpbmsiOlZyKCJlcnJvciIsciksVnIoImxvYWQiLHIpO2JyZWFrO2Nhc2UiZGV0YWlscyI6VnIoInRvZ2dsZSIscik7YnJlYWs7Y2FzZSJpbnB1dCI6WChyLHUpLFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInNlbGVjdCI6ci5fd3JhcHBlclN0YXRlPXt3YXNNdWx0aXBsZTohIXUubXVsdGlwbGV9LFZyKCJpbnZhbGlkIixyKTticmVhaztjYXNlInRleHRhcmVhIjpsZShyLHUpLFZyKCJpbnZhbGlkIixyKX1mb3IodmFyIGkgaW4geWUodCx1KSxsPW51bGwsdSlpZih1Lmhhc093blByb3BlcnR5KGkpKXt2YXIgcz11W2ldOyJjaGlsZHJlbiI9PT1pPyJzdHJpbmciPT10eXBlb2Ygcz9yLnRleHRDb250ZW50IT09cyYmKCEwIT09dS5zdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmcmJlpyKHIudGV4dENvbnRlbnQscyxlKSxsPVsiY2hpbGRyZW4iLHNdKToibnVtYmVyIj09dHlwZW9mIHMmJnIudGV4dENvbnRlbnQhPT0iIitzJiYoITAhPT11LnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci50ZXh0Q29udGVudCxzLGUpLGw9WyJjaGlsZHJlbiIsIiIrc10pOm8uaGFzT3duUHJvcGVydHkoaSkmJm51bGwhPXMmJiJvblNjcm9sbCI9PT1pJiZWcigic2Nyb2xsIixyKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChyKSxKKHIsdSwhMCk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChyKSx1ZShyKTticmVhaztjYXNlInNlbGVjdCI6Y2FzZSJvcHRpb24iOmJyZWFrO2RlZmF1bHQ6ImZ1bmN0aW9uIj09dHlwZW9mIHUub25DbGljayYmKHIub25jbGljaz1Kcil9cj1sLG4udXBkYXRlUXVldWU9cixudWxsIT09ciYmKG4uZmxhZ3N8PTQpfWVsc2V7Cmk9OT09PWwubm9kZVR5cGU/bDpsLm93bmVyRG9jdW1lbnQsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPT09ZSYmKGU9b2UodCkpLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/InNjcmlwdCI9PT10PygoZT1pLmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5pbm5lckhUTUw9IjxzY3JpcHQ+PFwvc2NyaXB0PiIsZT1lLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCkpOiJzdHJpbmciPT10eXBlb2Ygci5pcz9lPWkuY3JlYXRlRWxlbWVudCh0LHtpczpyLmlzfSk6KGU9aS5jcmVhdGVFbGVtZW50KHQpLCJzZWxlY3QiPT09dCYmKGk9ZSxyLm11bHRpcGxlP2kubXVsdGlwbGU9ITA6ci5zaXplJiYoaS5zaXplPXIuc2l6ZSkpKTplPWkuY3JlYXRlRWxlbWVudE5TKGUsdCksZVtkbF09bixlW3BsXT1yLE1vKGUsbiksbi5zdGF0ZU5vZGU9ZTtlOntzd2l0Y2goaT1iZSh0LHIpLHQpe2Nhc2UiZGlhbG9nIjpWcigiY2FuY2VsIixlKSxWcigiY2xvc2UiLGUpLGw9cjticmVhaztjYXNlImlmcmFtZSI6Y2FzZSJvYmplY3QiOmNhc2UiZW1iZWQiOlZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJ2aWRlbyI6Y2FzZSJhdWRpbyI6Zm9yKGw9MDtsPERyLmxlbmd0aDtsKyspVnIoRHJbbF0sZSk7bD1yO2JyZWFrO2Nhc2Uic291cmNlIjpWcigiZXJyb3IiLGUpLGw9cjticmVhaztjYXNlImltZyI6Y2FzZSJpbWFnZSI6Y2FzZSJsaW5rIjpWcigiZXJyb3IiLGUpLFZyKCJsb2FkIixlKSxsPXI7YnJlYWs7Y2FzZSJkZXRhaWxzIjpWcigidG9nZ2xlIixlKSxsPXI7YnJlYWs7Y2FzZSJpbnB1dCI6WChlLHIpLGw9WShlLHIpLFZyKCJpbnZhbGlkIixlKTticmVhaztjYXNlIm9wdGlvbiI6ZGVmYXVsdDpsPXI7YnJlYWs7Y2FzZSJzZWxlY3QiOmUuX3dyYXBwZXJTdGF0ZT17d2FzTXVsdGlwbGU6ISFyLm11bHRpcGxlfSxsPU8oe30scix7dmFsdWU6dm9pZCAwfSksVnIoImludmFsaWQiLGUpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmxlKGUsciksbD1yZShlLHIpLFZyKCJpbnZhbGlkIixlKX1mb3IodSBpbiB5ZSh0LGwpLHM9bClpZihzLmhhc093blByb3BlcnR5KHUpKXt2YXIgYz1zW3VdOyJzdHlsZSI9PT11P2dlKGUsYyk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PXU/bnVsbCE9KGM9Yz9jLl9faHRtbDp2b2lkIDApJiZmZShlLGMpOiJjaGlsZHJlbiI9PT11PyJzdHJpbmciPT10eXBlb2YgYz8oInRleHRhcmVhIiE9PXR8fCIiIT09YykmJmRlKGUsYyk6Im51bWJlciI9PXR5cGVvZiBjJiZkZShlLCIiK2MpOiJzdXBwcmVzc0NvbnRlbnRFZGl0YWJsZVdhcm5pbmciIT09dSYmInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIhPT11JiYiYXV0b0ZvY3VzIiE9PXUmJihvLmhhc093blByb3BlcnR5KHUpP251bGwhPWMmJiJvblNjcm9sbCI9PT11JiZWcigic2Nyb2xsIixlKTpudWxsIT1jJiZiKGUsdSxjLGkpKX1zd2l0Y2godCl7Y2FzZSJpbnB1dCI6JChlKSxKKGUsciwhMSk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6JChlKSx1ZShlKTticmVhaztjYXNlIm9wdGlvbiI6bnVsbCE9ci52YWx1ZSYmZS5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIitRKHIudmFsdWUpKTticmVhaztjYXNlInNlbGVjdCI6ZS5tdWx0aXBsZT0hIXIubXVsdGlwbGUsbnVsbCE9KHU9ci52YWx1ZSk/dGUoZSwhIXIubXVsdGlwbGUsdSwhMSk6bnVsbCE9ci5kZWZhdWx0VmFsdWUmJnRlKGUsISFyLm11bHRpcGxlLHIuZGVmYXVsdFZhbHVlLCEwKTticmVhaztkZWZhdWx0OiJmdW5jdGlvbiI9PXR5cGVvZiBsLm9uQ2xpY2smJihlLm9uY2xpY2s9SnIpfXN3aXRjaCh0KXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOnI9ISFyLmF1dG9Gb2N1czticmVhayBlO2Nhc2UiaW1nIjpyPSEwO2JyZWFrIGU7ZGVmYXVsdDpyPSExfX1yJiYobi5mbGFnc3w9NCl9bnVsbCE9PW4ucmVmJiYobi5mbGFnc3w9NTEyLG4uZmxhZ3N8PTIwOTcxNTIpfXJldHVybiAkbyhuKSxudWxsO2Nhc2UgNjppZihlJiZudWxsIT1uLnN0YXRlTm9kZSlSbygwLG4sZS5tZW1vaXplZFByb3BzLHIpO2Vsc2V7aWYoInN0cmluZyIhPXR5cGVvZiByJiZudWxsPT09bi5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjYpKTtpZih0PXR1KG51LmN1cnJlbnQpLHR1KEphLmN1cnJlbnQpLGZhKG4pKXtpZihyPW4uc3RhdGVOb2RlLHQ9bi5tZW1vaXplZFByb3BzLHJbZGxdPW4sKHU9ci5ub2RlVmFsdWUhPT10KSYmbnVsbCE9PShlPXRhKSlzd2l0Y2goZS50YWcpe2Nhc2UgMzpacihyLm5vZGVWYWx1ZSx0LCEhKDEmZS5tb2RlKSk7YnJlYWs7Y2FzZSA1OiEwIT09ZS5tZW1vaXplZFByb3BzLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmWnIoci5ub2RlVmFsdWUsdCwhISgxJmUubW9kZSkpfXUmJihuLmZsYWdzfD00KX1lbHNlKHI9KDk9PT10Lm5vZGVUeXBlP3Q6dC5vd25lckRvY3VtZW50KS5jcmVhdGVUZXh0Tm9kZShyKSlbZGxdPW4sbi5zdGF0ZU5vZGU9cn1yZXR1cm4gJG8obiksbnVsbDtjYXNlIDEzOmlmKENsKG91KSxyPW4ubWVtb2l6ZWRTdGF0ZSxudWxsPT09ZXx8bnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZS5kZWh5ZHJhdGVkKXtpZihsYSYmbnVsbCE9PXJhJiYxJm4ubW9kZSYmISgxMjgmbi5mbGFncykpZGEoKSxwYSgpLG4uZmxhZ3N8PTk4NTYwLHU9ITE7ZWxzZSBpZih1PWZhKG4pLG51bGwhPT1yJiZudWxsIT09ci5kZWh5ZHJhdGVkKXtpZihudWxsPT09ZSl7aWYoIXUpdGhyb3cgRXJyb3IoYSgzMTgpKTtpZighKHU9bnVsbCE9PSh1PW4ubWVtb2l6ZWRTdGF0ZSk/dS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKGEoMzE3KSk7dVtkbF09bn1lbHNlIHBhKCksISgxMjgmbi5mbGFncykmJihuLm1lbW9pemVkU3RhdGU9bnVsbCksbi5mbGFnc3w9NDskbyhuKSx1PSExfWVsc2UgbnVsbCE9PWFhJiYodXMoYWEpLGFhPW51bGwpLHU9ITA7aWYoIXUpcmV0dXJuIDY1NTM2Jm4uZmxhZ3M/bjpudWxsfXJldHVybiAxMjgmbi5mbGFncz8obi5sYW5lcz10LG4pOigocj1udWxsIT09cikhPT0obnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUpJiZyJiYobi5jaGlsZC5mbGFnc3w9ODE5MiwKMSZuLm1vZGUmJihudWxsPT09ZXx8MSZvdS5jdXJyZW50PzA9PT1SaSYmKFJpPTMpOmhzKCkpKSxudWxsIT09bi51cGRhdGVRdWV1ZSYmKG4uZmxhZ3N8PTQpLCRvKG4pLG51bGwpO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsPT09ZSYmV3Iobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyksJG8obiksbnVsbDtjYXNlIDEwOnJldHVybiBTYShuLnR5cGUuX2NvbnRleHQpLCRvKG4pLG51bGw7Y2FzZSAxOTppZihDbChvdSksbnVsbD09PSh1PW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuICRvKG4pLG51bGw7aWYocj0hISgxMjgmbi5mbGFncyksbnVsbD09PShpPXUucmVuZGVyaW5nKSlpZihyKWpvKHUsITEpO2Vsc2V7aWYoMCE9PVJpfHxudWxsIT09ZSYmMTI4JmUuZmxhZ3MpZm9yKGU9bi5jaGlsZDtudWxsIT09ZTspe2lmKG51bGwhPT0oaT1pdShlKSkpe2ZvcihuLmZsYWdzfD0xMjgsam8odSwhMSksbnVsbCE9PShyPWkudXBkYXRlUXVldWUpJiYobi51cGRhdGVRdWV1ZT1yLG4uZmxhZ3N8PTQpLG4uc3VidHJlZUZsYWdzPTAscj10LHQ9bi5jaGlsZDtudWxsIT09dDspZT1yLCh1PXQpLmZsYWdzJj0xNDY4MDA2NixudWxsPT09KGk9dS5hbHRlcm5hdGUpPyh1LmNoaWxkTGFuZXM9MCx1LmxhbmVzPWUsdS5jaGlsZD1udWxsLHUuc3VidHJlZUZsYWdzPTAsdS5tZW1vaXplZFByb3BzPW51bGwsdS5tZW1vaXplZFN0YXRlPW51bGwsdS51cGRhdGVRdWV1ZT1udWxsLHUuZGVwZW5kZW5jaWVzPW51bGwsdS5zdGF0ZU5vZGU9bnVsbCk6KHUuY2hpbGRMYW5lcz1pLmNoaWxkTGFuZXMsdS5sYW5lcz1pLmxhbmVzLHUuY2hpbGQ9aS5jaGlsZCx1LnN1YnRyZWVGbGFncz0wLHUuZGVsZXRpb25zPW51bGwsdS5tZW1vaXplZFByb3BzPWkubWVtb2l6ZWRQcm9wcyx1Lm1lbW9pemVkU3RhdGU9aS5tZW1vaXplZFN0YXRlLHUudXBkYXRlUXVldWU9aS51cGRhdGVRdWV1ZSx1LnR5cGU9aS50eXBlLGU9aS5kZXBlbmRlbmNpZXMsdS5kZXBlbmRlbmNpZXM9bnVsbD09PWU/bnVsbDp7bGFuZXM6ZS5sYW5lcyxmaXJzdENvbnRleHQ6ZS5maXJzdENvbnRleHR9KSx0PXQuc2libGluZztyZXR1cm4gemwob3UsMSZvdS5jdXJyZW50fDIpLG4uY2hpbGR9ZT1lLnNpYmxpbmd9bnVsbCE9PXUudGFpbCYmR2UoKT5XaSYmKG4uZmxhZ3N8PTEyOCxyPSEwLGpvKHUsITEpLG4ubGFuZXM9NDE5NDMwNCl9ZWxzZXtpZighcilpZihudWxsIT09KGU9aXUoaSkpKXtpZihuLmZsYWdzfD0xMjgscj0hMCxudWxsIT09KHQ9ZS51cGRhdGVRdWV1ZSkmJihuLnVwZGF0ZVF1ZXVlPXQsbi5mbGFnc3w9NCksam8odSwhMCksbnVsbD09PXUudGFpbCYmImhpZGRlbiI9PT11LnRhaWxNb2RlJiYhaS5hbHRlcm5hdGUmJiFsYSlyZXR1cm4gJG8obiksbnVsbH1lbHNlIDIqR2UoKS11LnJlbmRlcmluZ1N0YXJ0VGltZT5XaSYmMTA3Mzc0MTgyNCE9PXQmJihuLmZsYWdzfD0xMjgscj0hMCxqbyh1LCExKSxuLmxhbmVzPTQxOTQzMDQpO3UuaXNCYWNrd2FyZHM/KGkuc2libGluZz1uLmNoaWxkLG4uY2hpbGQ9aSk6KG51bGwhPT0odD11Lmxhc3QpP3Quc2libGluZz1pOm4uY2hpbGQ9aSx1Lmxhc3Q9aSl9cmV0dXJuIG51bGwhPT11LnRhaWw/KG49dS50YWlsLHUucmVuZGVyaW5nPW4sdS50YWlsPW4uc2libGluZyx1LnJlbmRlcmluZ1N0YXJ0VGltZT1HZSgpLG4uc2libGluZz1udWxsLHQ9b3UuY3VycmVudCx6bChvdSxyPzEmdHwyOjEmdCksbik6KCRvKG4pLG51bGwpO2Nhc2UgMjI6Y2FzZSAyMzpyZXR1cm4gZnMoKSxyPW51bGwhPT1uLm1lbW9pemVkU3RhdGUsbnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUhPT1yJiYobi5mbGFnc3w9ODE5MiksciYmMSZuLm1vZGU/ISEoMTA3Mzc0MTgyNCZNaSkmJigkbyhuKSw2Jm4uc3VidHJlZUZsYWdzJiYobi5mbGFnc3w9ODE5MikpOiRvKG4pLG51bGw7Y2FzZSAyNDpjYXNlIDI1OnJldHVybiBudWxsfXRocm93IEVycm9yKGEoMTU2LG4udGFnKSl9ZnVuY3Rpb24gS28oZSxuKXtzd2l0Y2gobmEobiksbi50YWcpe2Nhc2UgMTpyZXR1cm4gTWwobi50eXBlKSYmRmwoKSw2NTUzNiYoZT1uLmZsYWdzKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDM6cmV0dXJuIGx1KCksQ2woUGwpLENsKF9sKSxjdSgpLDY1NTM2JihlPW4uZmxhZ3MpJiYhKDEyOCZlKT8obi5mbGFncz0tNjU1MzcmZXwxMjgsbik6bnVsbDtjYXNlIDU6cmV0dXJuIHV1KG4pLG51bGw7Y2FzZSAxMzppZihDbChvdSksbnVsbCE9PShlPW4ubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT1lLmRlaHlkcmF0ZWQpe2lmKG51bGw9PT1uLmFsdGVybmF0ZSl0aHJvdyBFcnJvcihhKDM0MCkpO3BhKCl9cmV0dXJuIDY1NTM2JihlPW4uZmxhZ3MpPyhuLmZsYWdzPS02NTUzNyZlfDEyOCxuKTpudWxsO2Nhc2UgMTk6cmV0dXJuIENsKG91KSxudWxsO2Nhc2UgNDpyZXR1cm4gbHUoKSxudWxsO2Nhc2UgMTA6cmV0dXJuIFNhKG4udHlwZS5fY29udGV4dCksbnVsbDtjYXNlIDIyOmNhc2UgMjM6cmV0dXJuIGZzKCksbnVsbDtkZWZhdWx0OnJldHVybiBudWxsfX1Nbz1mdW5jdGlvbihlLG4pe2Zvcih2YXIgdD1uLmNoaWxkO251bGwhPT10Oyl7aWYoNT09PXQudGFnfHw2PT09dC50YWcpZS5hcHBlbmRDaGlsZCh0LnN0YXRlTm9kZSk7ZWxzZSBpZig0IT09dC50YWcmJm51bGwhPT10LmNoaWxkKXt0LmNoaWxkLnJldHVybj10LHQ9dC5jaGlsZDtjb250aW51ZX1pZih0PT09bilicmVhaztmb3IoO251bGw9PT10LnNpYmxpbmc7KXtpZihudWxsPT09dC5yZXR1cm58fHQucmV0dXJuPT09bilyZXR1cm47dD10LnJldHVybn10LnNpYmxpbmcucmV0dXJuPXQucmV0dXJuLHQ9dC5zaWJsaW5nfX0sRm89ZnVuY3Rpb24oZSxuLHQscil7dmFyIGw9ZS5tZW1vaXplZFByb3BzO2lmKGwhPT1yKXtlPW4uc3RhdGVOb2RlLHR1KEphLmN1cnJlbnQpO3ZhciBhLHU9bnVsbDtzd2l0Y2godCl7Y2FzZSJpbnB1dCI6bD1ZKGUsbCkscj1ZKGUsciksdT1bXTticmVhaztjYXNlInNlbGVjdCI6bD1PKHt9LGwse3ZhbHVlOnZvaWQgMH0pLHI9Tyh7fSxyLHt2YWx1ZTp2b2lkIDB9KSx1PVtdO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmw9cmUoZSxsKSxyPXJlKGUsciksdT1bXTticmVhawo7ZGVmYXVsdDoiZnVuY3Rpb24iIT10eXBlb2YgbC5vbkNsaWNrJiYiZnVuY3Rpb24iPT10eXBlb2Ygci5vbkNsaWNrJiYoZS5vbmNsaWNrPUpyKX1mb3IoYyBpbiB5ZSh0LHIpLHQ9bnVsbCxsKWlmKCFyLmhhc093blByb3BlcnR5KGMpJiZsLmhhc093blByb3BlcnR5KGMpJiZudWxsIT1sW2NdKWlmKCJzdHlsZSI9PT1jKXt2YXIgaT1sW2NdO2ZvcihhIGluIGkpaS5oYXNPd25Qcm9wZXJ0eShhKSYmKHR8fCh0PXt9KSx0W2FdPSIiKX1lbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIiE9PWMmJiJjaGlsZHJlbiIhPT1jJiYic3VwcHJlc3NDb250ZW50RWRpdGFibGVXYXJuaW5nIiE9PWMmJiJzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmciIT09YyYmImF1dG9Gb2N1cyIhPT1jJiYoby5oYXNPd25Qcm9wZXJ0eShjKT91fHwodT1bXSk6KHU9dXx8W10pLnB1c2goYyxudWxsKSk7Zm9yKGMgaW4gcil7dmFyIHM9cltjXTtpZihpPW51bGwhPWw/bFtjXTp2b2lkIDAsci5oYXNPd25Qcm9wZXJ0eShjKSYmcyE9PWkmJihudWxsIT1zfHxudWxsIT1pKSlpZigic3R5bGUiPT09YylpZihpKXtmb3IoYSBpbiBpKSFpLmhhc093blByb3BlcnR5KGEpfHxzJiZzLmhhc093blByb3BlcnR5KGEpfHwodHx8KHQ9e30pLHRbYV09IiIpO2ZvcihhIGluIHMpcy5oYXNPd25Qcm9wZXJ0eShhKSYmaVthXSE9PXNbYV0mJih0fHwodD17fSksdFthXT1zW2FdKX1lbHNlIHR8fCh1fHwodT1bXSksdS5wdXNoKGMsdCkpLHQ9cztlbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWM/KHM9cz9zLl9faHRtbDp2b2lkIDAsaT1pP2kuX19odG1sOnZvaWQgMCxudWxsIT1zJiZpIT09cyYmKHU9dXx8W10pLnB1c2goYyxzKSk6ImNoaWxkcmVuIj09PWM/InN0cmluZyIhPXR5cGVvZiBzJiYibnVtYmVyIiE9dHlwZW9mIHN8fCh1PXV8fFtdKS5wdXNoKGMsIiIrcyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT1jJiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PWMmJihvLmhhc093blByb3BlcnR5KGMpPyhudWxsIT1zJiYib25TY3JvbGwiPT09YyYmVnIoInNjcm9sbCIsZSksdXx8aT09PXN8fCh1PVtdKSk6KHU9dXx8W10pLnB1c2goYyxzKSl9dCYmKHU9dXx8W10pLnB1c2goInN0eWxlIix0KTt2YXIgYz11OyhuLnVwZGF0ZVF1ZXVlPWMpJiYobi5mbGFnc3w9NCl9fSxSbz1mdW5jdGlvbihlLG4sdCxyKXt0IT09ciYmKG4uZmxhZ3N8PTQpfTt2YXIgWW89ITEsWG89ITEsR289ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsWm89bnVsbDtmdW5jdGlvbiBKbyhlLG4pe3ZhciB0PWUucmVmO2lmKG51bGwhPT10KWlmKCJmdW5jdGlvbiI9PXR5cGVvZiB0KXRyeXt0KG51bGwpfWNhdGNoKHQpe0VzKGUsbix0KX1lbHNlIHQuY3VycmVudD1udWxsfWZ1bmN0aW9uIGVpKGUsbix0KXt0cnl7dCgpfWNhdGNoKHQpe0VzKGUsbix0KX19dmFyIG5pPSExO2Z1bmN0aW9uIHRpKGUsbix0KXt2YXIgcj1uLnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT0ocj1udWxsIT09cj9yLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciBsPXI9ci5uZXh0O2Rve2lmKChsLnRhZyZlKT09PWUpe3ZhciBhPWwuZGVzdHJveTtsLmRlc3Ryb3k9dm9pZCAwLHZvaWQgMCE9PWEmJmVpKG4sdCxhKX1sPWwubmV4dH13aGlsZShsIT09cil9fWZ1bmN0aW9uIHJpKGUsbil7aWYobnVsbCE9PShuPW51bGwhPT0obj1uLnVwZGF0ZVF1ZXVlKT9uLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciB0PW49bi5uZXh0O2Rve2lmKCh0LnRhZyZlKT09PWUpe3ZhciByPXQuY3JlYXRlO3QuZGVzdHJveT1yKCl9dD10Lm5leHR9d2hpbGUodCE9PW4pfX1mdW5jdGlvbiBsaShlKXt2YXIgbj1lLnJlZjtpZihudWxsIT09bil7dmFyIHQ9ZS5zdGF0ZU5vZGU7ZS50YWcsZT10LCJmdW5jdGlvbiI9PXR5cGVvZiBuP24oZSk6bi5jdXJyZW50PWV9fWZ1bmN0aW9uIGFpKGUpe3ZhciBuPWUuYWx0ZXJuYXRlO251bGwhPT1uJiYoZS5hbHRlcm5hdGU9bnVsbCxhaShuKSksZS5jaGlsZD1udWxsLGUuZGVsZXRpb25zPW51bGwsZS5zaWJsaW5nPW51bGwsNT09PWUudGFnJiYobnVsbCE9PShuPWUuc3RhdGVOb2RlKSYmKGRlbGV0ZSBuW2RsXSxkZWxldGUgbltwbF0sZGVsZXRlIG5baGxdLGRlbGV0ZSBuW2dsXSxkZWxldGUgblt2bF0pKSxlLnN0YXRlTm9kZT1udWxsLGUucmV0dXJuPW51bGwsZS5kZXBlbmRlbmNpZXM9bnVsbCxlLm1lbW9pemVkUHJvcHM9bnVsbCxlLm1lbW9pemVkU3RhdGU9bnVsbCxlLnBlbmRpbmdQcm9wcz1udWxsLGUuc3RhdGVOb2RlPW51bGwsZS51cGRhdGVRdWV1ZT1udWxsfWZ1bmN0aW9uIHVpKGUpe3JldHVybiA1PT09ZS50YWd8fDM9PT1lLnRhZ3x8ND09PWUudGFnfWZ1bmN0aW9uIG9pKGUpe2U6Zm9yKDs7KXtmb3IoO251bGw9PT1lLnNpYmxpbmc7KXtpZihudWxsPT09ZS5yZXR1cm58fHVpKGUucmV0dXJuKSlyZXR1cm4gbnVsbDtlPWUucmV0dXJufWZvcihlLnNpYmxpbmcucmV0dXJuPWUucmV0dXJuLGU9ZS5zaWJsaW5nOzUhPT1lLnRhZyYmNiE9PWUudGFnJiYxOCE9PWUudGFnOyl7aWYoMiZlLmZsYWdzKWNvbnRpbnVlIGU7aWYobnVsbD09PWUuY2hpbGR8fDQ9PT1lLnRhZyljb250aW51ZSBlO2UuY2hpbGQucmV0dXJuPWUsZT1lLmNoaWxkfWlmKCEoMiZlLmZsYWdzKSlyZXR1cm4gZS5zdGF0ZU5vZGV9fWZ1bmN0aW9uIGlpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSxuPzg9PT10Lm5vZGVUeXBlP3QucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZSxuKTp0Lmluc2VydEJlZm9yZShlLG4pOig4PT09dC5ub2RlVHlwZT8obj10LnBhcmVudE5vZGUpLmluc2VydEJlZm9yZShlLHQpOihuPXQpLmFwcGVuZENoaWxkKGUpLG51bGwhPSh0PXQuX3JlYWN0Um9vdENvbnRhaW5lcil8fG51bGwhPT1uLm9uY2xpY2t8fChuLm9uY2xpY2s9SnIpKTtlbHNlIGlmKDQhPT1yJiZudWxsIT09KGU9ZS5jaGlsZCkpZm9yKGlpKGUsbix0KSxlPWUuc2libGluZztudWxsIT09ZTspaWkoZSxuLHQpLGU9ZS5zaWJsaW5nfWZ1bmN0aW9uIHNpKGUsbix0KXt2YXIgcj1lLnRhZztpZig1PT09cnx8Nj09PXIpZT1lLnN0YXRlTm9kZSwKbj90Lmluc2VydEJlZm9yZShlLG4pOnQuYXBwZW5kQ2hpbGQoZSk7ZWxzZSBpZig0IT09ciYmbnVsbCE9PShlPWUuY2hpbGQpKWZvcihzaShlLG4sdCksZT1lLnNpYmxpbmc7bnVsbCE9PWU7KXNpKGUsbix0KSxlPWUuc2libGluZ312YXIgY2k9bnVsbCxmaT0hMTtmdW5jdGlvbiBkaShlLG4sdCl7Zm9yKHQ9dC5jaGlsZDtudWxsIT09dDspcGkoZSxuLHQpLHQ9dC5zaWJsaW5nfWZ1bmN0aW9uIHBpKGUsbix0KXtpZihhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uQ29tbWl0RmliZXJVbm1vdW50KXRyeXthbi5vbkNvbW1pdEZpYmVyVW5tb3VudChsbix0KX1jYXRjaChlKXt9c3dpdGNoKHQudGFnKXtjYXNlIDU6WG98fEpvKHQsbik7Y2FzZSA2OnZhciByPWNpLGw9Zmk7Y2k9bnVsbCxkaShlLG4sdCksZmk9bCxudWxsIT09KGNpPXIpJiYoZmk/KGU9Y2ksdD10LnN0YXRlTm9kZSw4PT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCk6ZS5yZW1vdmVDaGlsZCh0KSk6Y2kucmVtb3ZlQ2hpbGQodC5zdGF0ZU5vZGUpKTticmVhaztjYXNlIDE4Om51bGwhPT1jaSYmKGZpPyhlPWNpLHQ9dC5zdGF0ZU5vZGUsOD09PWUubm9kZVR5cGU/aWwoZS5wYXJlbnROb2RlLHQpOjE9PT1lLm5vZGVUeXBlJiZpbChlLHQpLEhuKGUpKTppbChjaSx0LnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgNDpyPWNpLGw9ZmksY2k9dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxmaT0hMCxkaShlLG4sdCksY2k9cixmaT1sO2JyZWFrO2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTppZighWG8mJihudWxsIT09KHI9dC51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1yLmxhc3RFZmZlY3QpKSl7bD1yPXIubmV4dDtkb3t2YXIgYT1sLHU9YS5kZXN0cm95O2E9YS50YWcsdm9pZCAwIT09dSYmKDImYXx8NCZhKSYmZWkodCxuLHUpLGw9bC5uZXh0fXdoaWxlKGwhPT1yKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAxOmlmKCFYbyYmKEpvKHQsbiksImZ1bmN0aW9uIj09dHlwZW9mKHI9dC5zdGF0ZU5vZGUpLmNvbXBvbmVudFdpbGxVbm1vdW50KSl0cnl7ci5wcm9wcz10Lm1lbW9pemVkUHJvcHMsci5zdGF0ZT10Lm1lbW9pemVkU3RhdGUsci5jb21wb25lbnRXaWxsVW5tb3VudCgpfWNhdGNoKGUpe0VzKHQsbixlKX1kaShlLG4sdCk7YnJlYWs7Y2FzZSAyMTpkaShlLG4sdCk7YnJlYWs7Y2FzZSAyMjoxJnQubW9kZT8oWG89KHI9WG8pfHxudWxsIT09dC5tZW1vaXplZFN0YXRlLGRpKGUsbix0KSxYbz1yKTpkaShlLG4sdCk7YnJlYWs7ZGVmYXVsdDpkaShlLG4sdCl9fWZ1bmN0aW9uIG1pKGUpe3ZhciBuPWUudXBkYXRlUXVldWU7aWYobnVsbCE9PW4pe2UudXBkYXRlUXVldWU9bnVsbDt2YXIgdD1lLnN0YXRlTm9kZTtudWxsPT09dCYmKHQ9ZS5zdGF0ZU5vZGU9bmV3IEdvKSxuLmZvckVhY2goKGZ1bmN0aW9uKG4pe3ZhciByPV9zLmJpbmQobnVsbCxlLG4pO3QuaGFzKG4pfHwodC5hZGQobiksbi50aGVuKHIscikpfSkpfX1mdW5jdGlvbiBoaShlLG4pe3ZhciB0PW4uZGVsZXRpb25zO2lmKG51bGwhPT10KWZvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgbD10W3JdO3RyeXt2YXIgdT1lLG89bixpPW87ZTpmb3IoO251bGwhPT1pOyl7c3dpdGNoKGkudGFnKXtjYXNlIDU6Y2k9aS5zdGF0ZU5vZGUsZmk9ITE7YnJlYWsgZTtjYXNlIDM6Y2FzZSA0OmNpPWkuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8sZmk9ITA7YnJlYWsgZX1pPWkucmV0dXJufWlmKG51bGw9PT1jaSl0aHJvdyBFcnJvcihhKDE2MCkpO3BpKHUsbyxsKSxjaT1udWxsLGZpPSExO3ZhciBzPWwuYWx0ZXJuYXRlO251bGwhPT1zJiYocy5yZXR1cm49bnVsbCksbC5yZXR1cm49bnVsbH1jYXRjaChlKXtFcyhsLG4sZSl9fWlmKDEyODU0Jm4uc3VidHJlZUZsYWdzKWZvcihuPW4uY2hpbGQ7bnVsbCE9PW47KWdpKG4sZSksbj1uLnNpYmxpbmd9ZnVuY3Rpb24gZ2koZSxuKXt2YXIgdD1lLmFsdGVybmF0ZSxyPWUuZmxhZ3M7c3dpdGNoKGUudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWYoaGkobixlKSx2aShlKSw0JnIpe3RyeXt0aSgzLGUsZS5yZXR1cm4pLHJpKDMsZSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX10cnl7dGkoNSxlLGUucmV0dXJuKX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDE6aGkobixlKSx2aShlKSw1MTImciYmbnVsbCE9PXQmJkpvKHQsdC5yZXR1cm4pO2JyZWFrO2Nhc2UgNTppZihoaShuLGUpLHZpKGUpLDUxMiZyJiZudWxsIT09dCYmSm8odCx0LnJldHVybiksMzImZS5mbGFncyl7dmFyIGw9ZS5zdGF0ZU5vZGU7dHJ5e2RlKGwsIiIpfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWlmKDQmciYmbnVsbCE9KGw9ZS5zdGF0ZU5vZGUpKXt2YXIgdT1lLm1lbW9pemVkUHJvcHMsbz1udWxsIT09dD90Lm1lbW9pemVkUHJvcHM6dSxpPWUudHlwZSxzPWUudXBkYXRlUXVldWU7aWYoZS51cGRhdGVRdWV1ZT1udWxsLG51bGwhPT1zKXRyeXsiaW5wdXQiPT09aSYmInJhZGlvIj09PXUudHlwZSYmbnVsbCE9dS5uYW1lJiZHKGwsdSksYmUoaSxvKTt2YXIgYz1iZShpLHUpO2ZvcihvPTA7bzxzLmxlbmd0aDtvKz0yKXt2YXIgZj1zW29dLGQ9c1tvKzFdOyJzdHlsZSI9PT1mP2dlKGwsZCk6ImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PWY/ZmUobCxkKToiY2hpbGRyZW4iPT09Zj9kZShsLGQpOmIobCxmLGQsYyl9c3dpdGNoKGkpe2Nhc2UiaW5wdXQiOloobCx1KTticmVhaztjYXNlInRleHRhcmVhIjphZShsLHUpO2JyZWFrO2Nhc2Uic2VsZWN0Ijp2YXIgcD1sLl93cmFwcGVyU3RhdGUud2FzTXVsdGlwbGU7bC5fd3JhcHBlclN0YXRlLndhc011bHRpcGxlPSEhdS5tdWx0aXBsZTt2YXIgbT11LnZhbHVlO251bGwhPW0/dGUobCwhIXUubXVsdGlwbGUsbSwhMSk6cCE9PSEhdS5tdWx0aXBsZSYmKG51bGwhPXUuZGVmYXVsdFZhbHVlP3RlKGwsISF1Lm11bHRpcGxlLHUuZGVmYXVsdFZhbHVlLCEwKTp0ZShsLCEhdS5tdWx0aXBsZSx1Lm11bHRpcGxlP1tdOiIiLCExKSl9bFtwbF09dX1jYXRjaChuKXtFcyhlLGUucmV0dXJuLG4pfX1icmVhaztjYXNlIDY6aWYoaGkobixlKSx2aShlKSw0JnIpewppZihudWxsPT09ZS5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoYSgxNjIpKTtsPWUuc3RhdGVOb2RlLHU9ZS5tZW1vaXplZFByb3BzO3RyeXtsLm5vZGVWYWx1ZT11fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWJyZWFrO2Nhc2UgMzppZihoaShuLGUpLHZpKGUpLDQmciYmbnVsbCE9PXQmJnQubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e0huKG4uY29udGFpbmVySW5mbyl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX1icmVhaztjYXNlIDQ6ZGVmYXVsdDpoaShuLGUpLHZpKGUpO2JyZWFrO2Nhc2UgMTM6aGkobixlKSx2aShlKSw4MTkyJihsPWUuY2hpbGQpLmZsYWdzJiYodT1udWxsIT09bC5tZW1vaXplZFN0YXRlLGwuc3RhdGVOb2RlLmlzSGlkZGVuPXUsIXV8fG51bGwhPT1sLmFsdGVybmF0ZSYmbnVsbCE9PWwuYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGV8fChCaT1HZSgpKSksNCZyJiZtaShlKTticmVhaztjYXNlIDIyOmlmKGY9bnVsbCE9PXQmJm51bGwhPT10Lm1lbW9pemVkU3RhdGUsMSZlLm1vZGU/KFhvPShjPVhvKXx8ZixoaShuLGUpLFhvPWMpOmhpKG4sZSksdmkoZSksODE5MiZyKXtpZihjPW51bGwhPT1lLm1lbW9pemVkU3RhdGUsKGUuc3RhdGVOb2RlLmlzSGlkZGVuPWMpJiYhZiYmMSZlLm1vZGUpZm9yKFpvPWUsZj1lLmNoaWxkO251bGwhPT1mOyl7Zm9yKGQ9Wm89ZjtudWxsIT09Wm87KXtzd2l0Y2gobT0ocD1abykuY2hpbGQscC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTp0aSg0LHAscC5yZXR1cm4pO2JyZWFrO2Nhc2UgMTpKbyhwLHAucmV0dXJuKTt2YXIgaD1wLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgaC5jb21wb25lbnRXaWxsVW5tb3VudCl7cj1wLHQ9cC5yZXR1cm47dHJ5e249cixoLnByb3BzPW4ubWVtb2l6ZWRQcm9wcyxoLnN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxoLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7RXMocix0LGUpfX1icmVhaztjYXNlIDU6Sm8ocCxwLnJldHVybik7YnJlYWs7Y2FzZSAyMjppZihudWxsIT09cC5tZW1vaXplZFN0YXRlKXt3aShkKTtjb250aW51ZX19bnVsbCE9PW0/KG0ucmV0dXJuPXAsWm89bSk6d2koZCl9Zj1mLnNpYmxpbmd9ZTpmb3IoZj1udWxsLGQ9ZTs7KXtpZig1PT09ZC50YWcpe2lmKG51bGw9PT1mKXtmPWQ7dHJ5e2w9ZC5zdGF0ZU5vZGUsYz8iZnVuY3Rpb24iPT10eXBlb2YodT1sLnN0eWxlKS5zZXRQcm9wZXJ0eT91LnNldFByb3BlcnR5KCJkaXNwbGF5Iiwibm9uZSIsImltcG9ydGFudCIpOnUuZGlzcGxheT0ibm9uZSI6KGk9ZC5zdGF0ZU5vZGUsbz1udWxsIT0ocz1kLm1lbW9pemVkUHJvcHMuc3R5bGUpJiZzLmhhc093blByb3BlcnR5KCJkaXNwbGF5Iik/cy5kaXNwbGF5Om51bGwsaS5zdHlsZS5kaXNwbGF5PWhlKCJkaXNwbGF5IixvKSl9Y2F0Y2gobil7RXMoZSxlLnJldHVybixuKX19fWVsc2UgaWYoNj09PWQudGFnKXtpZihudWxsPT09Zil0cnl7ZC5zdGF0ZU5vZGUubm9kZVZhbHVlPWM/IiI6ZC5tZW1vaXplZFByb3BzfWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9fWVsc2UgaWYoKDIyIT09ZC50YWcmJjIzIT09ZC50YWd8fG51bGw9PT1kLm1lbW9pemVkU3RhdGV8fGQ9PT1lKSYmbnVsbCE9PWQuY2hpbGQpe2QuY2hpbGQucmV0dXJuPWQsZD1kLmNoaWxkO2NvbnRpbnVlfWlmKGQ9PT1lKWJyZWFrIGU7Zm9yKDtudWxsPT09ZC5zaWJsaW5nOyl7aWYobnVsbD09PWQucmV0dXJufHxkLnJldHVybj09PWUpYnJlYWsgZTtmPT09ZCYmKGY9bnVsbCksZD1kLnJldHVybn1mPT09ZCYmKGY9bnVsbCksZC5zaWJsaW5nLnJldHVybj1kLnJldHVybixkPWQuc2libGluZ319YnJlYWs7Y2FzZSAxOTpoaShuLGUpLHZpKGUpLDQmciYmbWkoZSk7Y2FzZSAyMTp9fWZ1bmN0aW9uIHZpKGUpe3ZhciBuPWUuZmxhZ3M7aWYoMiZuKXt0cnl7ZTp7Zm9yKHZhciB0PWUucmV0dXJuO251bGwhPT10Oyl7aWYodWkodCkpe3ZhciByPXQ7YnJlYWsgZX10PXQucmV0dXJufXRocm93IEVycm9yKGEoMTYwKSl9c3dpdGNoKHIudGFnKXtjYXNlIDU6dmFyIGw9ci5zdGF0ZU5vZGU7MzImci5mbGFncyYmKGRlKGwsIiIpLHIuZmxhZ3MmPS0zMyksc2koZSxvaShlKSxsKTticmVhaztjYXNlIDM6Y2FzZSA0OnZhciB1PXIuc3RhdGVOb2RlLmNvbnRhaW5lckluZm87aWkoZSxvaShlKSx1KTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMTYxKSl9fWNhdGNoKG4pe0VzKGUsZS5yZXR1cm4sbil9ZS5mbGFncyY9LTN9NDA5NiZuJiYoZS5mbGFncyY9LTQwOTcpfWZ1bmN0aW9uIHlpKGUsbix0KXtabz1lLGJpKGUsbix0KX1mdW5jdGlvbiBiaShlLG4sdCl7Zm9yKHZhciByPSEhKDEmZS5tb2RlKTtudWxsIT09Wm87KXt2YXIgbD1abyxhPWwuY2hpbGQ7aWYoMjI9PT1sLnRhZyYmcil7dmFyIHU9bnVsbCE9PWwubWVtb2l6ZWRTdGF0ZXx8WW87aWYoIXUpe3ZhciBvPWwuYWx0ZXJuYXRlLGk9bnVsbCE9PW8mJm51bGwhPT1vLm1lbW9pemVkU3RhdGV8fFhvO289WW87dmFyIHM9WG87aWYoWW89dSwoWG89aSkmJiFzKWZvcihabz1sO251bGwhPT1abzspaT0odT1abykuY2hpbGQsMjI9PT11LnRhZyYmbnVsbCE9PXUubWVtb2l6ZWRTdGF0ZT9TaShsKTpudWxsIT09aT8oaS5yZXR1cm49dSxabz1pKTpTaShsKTtmb3IoO251bGwhPT1hOylabz1hLGJpKGEsbix0KSxhPWEuc2libGluZztabz1sLFlvPW8sWG89c31raShlKX1lbHNlIDg3NzImbC5zdWJ0cmVlRmxhZ3MmJm51bGwhPT1hPyhhLnJldHVybj1sLFpvPWEpOmtpKGUpfX1mdW5jdGlvbiBraShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKDg3NzImbi5mbGFncyl7dmFyIHQ9bi5hbHRlcm5hdGU7dHJ5e2lmKDg3NzImbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6WG98fHJpKDUsbik7YnJlYWs7Y2FzZSAxOnZhciByPW4uc3RhdGVOb2RlO2lmKDQmbi5mbGFncyYmIVhvKWlmKG51bGw9PT10KXIuY29tcG9uZW50RGlkTW91bnQoKTtlbHNle3ZhciBsPW4uZWxlbWVudFR5cGU9PT1uLnR5cGU/dC5tZW1vaXplZFByb3BzOmdhKG4udHlwZSx0Lm1lbW9pemVkUHJvcHMpCjtyLmNvbXBvbmVudERpZFVwZGF0ZShsLHQubWVtb2l6ZWRTdGF0ZSxyLl9fcmVhY3RJbnRlcm5hbFNuYXBzaG90QmVmb3JlVXBkYXRlKX12YXIgdT1uLnVwZGF0ZVF1ZXVlO251bGwhPT11JiZVYShuLHUscik7YnJlYWs7Y2FzZSAzOnZhciBvPW4udXBkYXRlUXVldWU7aWYobnVsbCE9PW8pe2lmKHQ9bnVsbCxudWxsIT09bi5jaGlsZClzd2l0Y2gobi5jaGlsZC50YWcpe2Nhc2UgNTpjYXNlIDE6dD1uLmNoaWxkLnN0YXRlTm9kZX1VYShuLG8sdCl9YnJlYWs7Y2FzZSA1OnZhciBpPW4uc3RhdGVOb2RlO2lmKG51bGw9PT10JiY0Jm4uZmxhZ3Mpe3Q9aTt2YXIgcz1uLm1lbW9pemVkUHJvcHM7c3dpdGNoKG4udHlwZSl7Y2FzZSJidXR0b24iOmNhc2UiaW5wdXQiOmNhc2Uic2VsZWN0IjpjYXNlInRleHRhcmVhIjpzLmF1dG9Gb2N1cyYmdC5mb2N1cygpO2JyZWFrO2Nhc2UiaW1nIjpzLnNyYyYmKHQuc3JjPXMuc3JjKX19YnJlYWs7Y2FzZSA2OmNhc2UgNDpjYXNlIDEyOmNhc2UgMTk6Y2FzZSAxNzpjYXNlIDIxOmNhc2UgMjI6Y2FzZSAyMzpjYXNlIDI1OmJyZWFrO2Nhc2UgMTM6aWYobnVsbD09PW4ubWVtb2l6ZWRTdGF0ZSl7dmFyIGM9bi5hbHRlcm5hdGU7aWYobnVsbCE9PWMpe3ZhciBmPWMubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09Zil7dmFyIGQ9Zi5kZWh5ZHJhdGVkO251bGwhPT1kJiZIbihkKX19fWJyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoYSgxNjMpKX1Yb3x8NTEyJm4uZmxhZ3MmJmxpKG4pfWNhdGNoKGUpe0VzKG4sbi5yZXR1cm4sZSl9fWlmKG49PT1lKXtabz1udWxsO2JyZWFrfWlmKG51bGwhPT0odD1uLnNpYmxpbmcpKXt0LnJldHVybj1uLnJldHVybixabz10O2JyZWFrfVpvPW4ucmV0dXJufX1mdW5jdGlvbiB3aShlKXtmb3IoO251bGwhPT1abzspe3ZhciBuPVpvO2lmKG49PT1lKXtabz1udWxsO2JyZWFrfXZhciB0PW4uc2libGluZztpZihudWxsIT09dCl7dC5yZXR1cm49bi5yZXR1cm4sWm89dDticmVha31abz1uLnJldHVybn19ZnVuY3Rpb24gU2koZSl7Zm9yKDtudWxsIT09Wm87KXt2YXIgbj1abzt0cnl7c3dpdGNoKG4udGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OnZhciB0PW4ucmV0dXJuO3RyeXtyaSg0LG4pfWNhdGNoKGUpe0VzKG4sdCxlKX1icmVhaztjYXNlIDE6dmFyIHI9bi5zdGF0ZU5vZGU7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkTW91bnQpe3ZhciBsPW4ucmV0dXJuO3RyeXtyLmNvbXBvbmVudERpZE1vdW50KCl9Y2F0Y2goZSl7RXMobixsLGUpfX12YXIgYT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobixhLGUpfWJyZWFrO2Nhc2UgNTp2YXIgdT1uLnJldHVybjt0cnl7bGkobil9Y2F0Y2goZSl7RXMobix1LGUpfX19Y2F0Y2goZSl7RXMobixuLnJldHVybixlKX1pZihuPT09ZSl7Wm89bnVsbDticmVha312YXIgbz1uLnNpYmxpbmc7aWYobnVsbCE9PW8pe28ucmV0dXJuPW4ucmV0dXJuLFpvPW87YnJlYWt9Wm89bi5yZXR1cm59fXZhciB4aSxFaT1NYXRoLmNlaWwsQ2k9ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLHppPWsuUmVhY3RDdXJyZW50T3duZXIsTmk9ay5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxfaT0wLFBpPW51bGwsVGk9bnVsbCxMaT0wLE1pPTAsRmk9RWwoMCksUmk9MCxEaT1udWxsLElpPTAsT2k9MCxVaT0wLFZpPW51bGwsQWk9bnVsbCxCaT0wLFdpPTEvMCxIaT1udWxsLFFpPSExLGppPW51bGwsJGk9bnVsbCxxaT0hMSxLaT1udWxsLFlpPTAsWGk9MCxHaT1udWxsLFppPS0xLEppPTA7ZnVuY3Rpb24gZXMoKXtyZXR1cm4gNiZfaT9HZSgpOi0xIT09Wmk/Wmk6Wmk9R2UoKX1mdW5jdGlvbiBucyhlKXtyZXR1cm4gMSZlLm1vZGU/MiZfaSYmMCE9PUxpP0xpJi1MaTpudWxsIT09aGEudHJhbnNpdGlvbj8oMD09PUppJiYoSmk9Z24oKSksSmkpOjAhPT0oZT1rbik/ZTplPXZvaWQgMD09PShlPXdpbmRvdy5ldmVudCk/MTY6R24oZS50eXBlKToxfWZ1bmN0aW9uIHRzKGUsbix0LHIpe2lmKDUwPFhpKXRocm93IFhpPTAsR2k9bnVsbCxFcnJvcihhKDE4NSkpO3luKGUsdCxyKSwyJl9pJiZlPT09UGl8fChlPT09UGkmJighKDImX2kpJiYoT2l8PXQpLDQ9PT1SaSYmb3MoZSxMaSkpLHJzKGUsciksMT09PXQmJjA9PT1faSYmISgxJm4ubW9kZSkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSkpfWZ1bmN0aW9uIHJzKGUsbil7dmFyIHQ9ZS5jYWxsYmFja05vZGU7IWZ1bmN0aW9uKGUsbil7Zm9yKHZhciB0PWUuc3VzcGVuZGVkTGFuZXMscj1lLnBpbmdlZExhbmVzLGw9ZS5leHBpcmF0aW9uVGltZXMsYT1lLnBlbmRpbmdMYW5lczswPGE7KXt2YXIgdT0zMS11bihhKSxvPTE8PHUsaT1sW3VdOy0xPT09aT9vJnQmJiEobyZyKXx8KGxbdV09bW4obyxuKSk6aTw9biYmKGUuZXhwaXJlZExhbmVzfD1vKSxhJj1+b319KGUsbik7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpbnVsbCE9PXQmJktlKHQpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7ZWxzZSBpZihuPXImLXIsZS5jYWxsYmFja1ByaW9yaXR5IT09bil7aWYobnVsbCE9dCYmS2UodCksMT09PW4pMD09PWUudGFnP2Z1bmN0aW9uKGUpe1ZsPSEwLEJsKGUpfShpcy5iaW5kKG51bGwsZSkpOkJsKGlzLmJpbmQobnVsbCxlKSksdWwoKGZ1bmN0aW9uKCl7ISg2Jl9pKSYmV2woKX0pKSx0PW51bGw7ZWxzZXtzd2l0Y2god24ocikpe2Nhc2UgMTp0PUplO2JyZWFrO2Nhc2UgNDp0PWVuO2JyZWFrO2Nhc2UgMTY6ZGVmYXVsdDp0PW5uO2JyZWFrO2Nhc2UgNTM2ODcwOTEyOnQ9cm59dD1Qcyh0LGxzLmJpbmQobnVsbCxlKSl9ZS5jYWxsYmFja1ByaW9yaXR5PW4sZS5jYWxsYmFja05vZGU9dH19ZnVuY3Rpb24gbHMoZSxuKXtpZihaaT0tMSxKaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTt2YXIgdD1lLmNhbGxiYWNrTm9kZTtpZihTcygpJiZlLmNhbGxiYWNrTm9kZSE9PXQpcmV0dXJuIG51bGw7dmFyIHI9cG4oZSxlPT09UGk/TGk6MCk7aWYoMD09PXIpcmV0dXJuIG51bGw7aWYoMzAmcnx8ciZlLmV4cGlyZWRMYW5lc3x8biluPWdzKGUscik7ZWxzZXtuPXI7dmFyIGw9X2k7X2l8PTI7dmFyIHU9bXMoKQo7Zm9yKFBpPT09ZSYmTGk9PT1ufHwoSGk9bnVsbCxXaT1HZSgpKzUwMCxkcyhlLG4pKTs7KXRyeXt5cygpO2JyZWFrfWNhdGNoKG4pe3BzKGUsbil9d2EoKSxDaS5jdXJyZW50PXUsX2k9bCxudWxsIT09VGk/bj0wOihQaT1udWxsLExpPTAsbj1SaSl9aWYoMCE9PW4pe2lmKDI9PT1uJiYoMCE9PShsPWhuKGUpKSYmKHI9bCxuPWFzKGUsbCkpKSwxPT09bil0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7aWYoNj09PW4pb3MoZSxyKTtlbHNle2lmKGw9ZS5jdXJyZW50LmFsdGVybmF0ZSwhKDMwJnJ8fGZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1lOzspe2lmKDE2Mzg0Jm4uZmxhZ3Mpe3ZhciB0PW4udXBkYXRlUXVldWU7aWYobnVsbCE9PXQmJm51bGwhPT0odD10LnN0b3JlcykpZm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBsPXRbcl0sYT1sLmdldFNuYXBzaG90O2w9bC52YWx1ZTt0cnl7aWYoIW9yKGEoKSxsKSlyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX19fWlmKHQ9bi5jaGlsZCwxNjM4NCZuLnN1YnRyZWVGbGFncyYmbnVsbCE9PXQpdC5yZXR1cm49bixuPXQ7ZWxzZXtpZihuPT09ZSlicmVhaztmb3IoO251bGw9PT1uLnNpYmxpbmc7KXtpZihudWxsPT09bi5yZXR1cm58fG4ucmV0dXJuPT09ZSlyZXR1cm4hMDtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9fXJldHVybiEwfShsKXx8KG49Z3MoZSxyKSwyPT09biYmKHU9aG4oZSksMCE9PXUmJihyPXUsbj1hcyhlLHUpKSksMSE9PW4pKSl0aHJvdyB0PURpLGRzKGUsMCksb3MoZSxyKSxycyhlLEdlKCkpLHQ7c3dpdGNoKGUuZmluaXNoZWRXb3JrPWwsZS5maW5pc2hlZExhbmVzPXIsbil7Y2FzZSAwOmNhc2UgMTp0aHJvdyBFcnJvcihhKDM0NSkpO2Nhc2UgMjpjYXNlIDU6d3MoZSxBaSxIaSk7YnJlYWs7Y2FzZSAzOmlmKG9zKGUsciksKDEzMDAyMzQyNCZyKT09PXImJjEwPChuPUJpKzUwMC1HZSgpKSl7aWYoMCE9PXBuKGUsMCkpYnJlYWs7aWYoKChsPWUuc3VzcGVuZGVkTGFuZXMpJnIpIT09cil7ZXMoKSxlLnBpbmdlZExhbmVzfD1lLnN1c3BlbmRlZExhbmVzJmw7YnJlYWt9ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxuKTticmVha313cyhlLEFpLEhpKTticmVhaztjYXNlIDQ6aWYob3MoZSxyKSwoNDE5NDI0MCZyKT09PXIpYnJlYWs7Zm9yKG49ZS5ldmVudFRpbWVzLGw9LTE7MDxyOyl7dmFyIG89MzEtdW4ocik7dT0xPDxvLChvPW5bb10pPmwmJihsPW8pLHImPX51fWlmKHI9bCwxMDwocj0oMTIwPihyPUdlKCktcik/MTIwOjQ4MD5yPzQ4MDoxMDgwPnI/MTA4MDoxOTIwPnI/MTkyMDozZTM+cj8zZTM6NDMyMD5yPzQzMjA6MTk2MCpFaShyLzE5NjApKS1yKSl7ZS50aW1lb3V0SGFuZGxlPXJsKHdzLmJpbmQobnVsbCxlLEFpLEhpKSxyKTticmVha313cyhlLEFpLEhpKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzI5KSl9fX1yZXR1cm4gcnMoZSxHZSgpKSxlLmNhbGxiYWNrTm9kZT09PXQ/bHMuYmluZChudWxsLGUpOm51bGx9ZnVuY3Rpb24gYXMoZSxuKXt2YXIgdD1WaTtyZXR1cm4gZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYoZHMoZSxuKS5mbGFnc3w9MjU2KSwyIT09KGU9Z3MoZSxuKSkmJihuPUFpLEFpPXQsbnVsbCE9PW4mJnVzKG4pKSxlfWZ1bmN0aW9uIHVzKGUpe251bGw9PT1BaT9BaT1lOkFpLnB1c2guYXBwbHkoQWksZSl9ZnVuY3Rpb24gb3MoZSxuKXtmb3IobiY9flVpLG4mPX5PaSxlLnN1c3BlbmRlZExhbmVzfD1uLGUucGluZ2VkTGFuZXMmPX5uLGU9ZS5leHBpcmF0aW9uVGltZXM7MDxuOyl7dmFyIHQ9MzEtdW4obikscj0xPDx0O2VbdF09LTEsbiY9fnJ9fWZ1bmN0aW9uIGlzKGUpe2lmKDYmX2kpdGhyb3cgRXJyb3IoYSgzMjcpKTtTcygpO3ZhciBuPXBuKGUsMCk7aWYoISgxJm4pKXJldHVybiBycyhlLEdlKCkpLG51bGw7dmFyIHQ9Z3MoZSxuKTtpZigwIT09ZS50YWcmJjI9PT10KXt2YXIgcj1obihlKTswIT09ciYmKG49cix0PWFzKGUscikpfWlmKDE9PT10KXRocm93IHQ9RGksZHMoZSwwKSxvcyhlLG4pLHJzKGUsR2UoKSksdDtpZig2PT09dCl0aHJvdyBFcnJvcihhKDM0NSkpO3JldHVybiBlLmZpbmlzaGVkV29yaz1lLmN1cnJlbnQuYWx0ZXJuYXRlLGUuZmluaXNoZWRMYW5lcz1uLHdzKGUsQWksSGkpLHJzKGUsR2UoKSksbnVsbH1mdW5jdGlvbiBzcyhlLG4pe3ZhciB0PV9pO19pfD0xO3RyeXtyZXR1cm4gZShuKX1maW5hbGx5ezA9PT0oX2k9dCkmJihXaT1HZSgpKzUwMCxWbCYmV2woKSl9fWZ1bmN0aW9uIGNzKGUpe251bGwhPT1LaSYmMD09PUtpLnRhZyYmISg2Jl9pKSYmU3MoKTt2YXIgbj1faTtfaXw9MTt2YXIgdD1OaS50cmFuc2l0aW9uLHI9a247dHJ5e2lmKE5pLnRyYW5zaXRpb249bnVsbCxrbj0xLGUpcmV0dXJuIGUoKX1maW5hbGx5e2tuPXIsTmkudHJhbnNpdGlvbj10LCEoNiYoX2k9bikpJiZXbCgpfX1mdW5jdGlvbiBmcygpe01pPUZpLmN1cnJlbnQsQ2woRmkpfWZ1bmN0aW9uIGRzKGUsbil7ZS5maW5pc2hlZFdvcms9bnVsbCxlLmZpbmlzaGVkTGFuZXM9MDt2YXIgdD1lLnRpbWVvdXRIYW5kbGU7aWYoLTEhPT10JiYoZS50aW1lb3V0SGFuZGxlPS0xLGxsKHQpKSxudWxsIT09VGkpZm9yKHQ9VGkucmV0dXJuO251bGwhPT10Oyl7dmFyIHI9dDtzd2l0Y2gobmEociksci50YWcpe2Nhc2UgMTpudWxsIT0ocj1yLnR5cGUuY2hpbGRDb250ZXh0VHlwZXMpJiZGbCgpO2JyZWFrO2Nhc2UgMzpsdSgpLENsKFBsKSxDbChfbCksY3UoKTticmVhaztjYXNlIDU6dXUocik7YnJlYWs7Y2FzZSA0Omx1KCk7YnJlYWs7Y2FzZSAxMzpjYXNlIDE5OkNsKG91KTticmVhaztjYXNlIDEwOlNhKHIudHlwZS5fY29udGV4dCk7YnJlYWs7Y2FzZSAyMjpjYXNlIDIzOmZzKCl9dD10LnJldHVybn1pZihQaT1lLFRpPWU9RnMoZS5jdXJyZW50LG51bGwpLExpPU1pPW4sUmk9MCxEaT1udWxsLFVpPU9pPUlpPTAsQWk9Vmk9bnVsbCxudWxsIT09emEpe2ZvcihuPTA7bjx6YS5sZW5ndGg7bisrKWlmKG51bGwhPT0ocj0odD16YVtuXSkuaW50ZXJsZWF2ZWQpKXt0LmludGVybGVhdmVkPW51bGwKO3ZhciBsPXIubmV4dCxhPXQucGVuZGluZztpZihudWxsIT09YSl7dmFyIHU9YS5uZXh0O2EubmV4dD1sLHIubmV4dD11fXQucGVuZGluZz1yfXphPW51bGx9cmV0dXJuIGV9ZnVuY3Rpb24gcHMoZSxuKXtmb3IoOzspe3ZhciB0PVRpO3RyeXtpZih3YSgpLGZ1LmN1cnJlbnQ9YW8sdnUpe2Zvcih2YXIgcj1tdS5tZW1vaXplZFN0YXRlO251bGwhPT1yOyl7dmFyIGw9ci5xdWV1ZTtudWxsIT09bCYmKGwucGVuZGluZz1udWxsKSxyPXIubmV4dH12dT0hMX1pZihwdT0wLGd1PWh1PW11PW51bGwseXU9ITEsYnU9MCx6aS5jdXJyZW50PW51bGwsbnVsbD09PXR8fG51bGw9PT10LnJldHVybil7Umk9MSxEaT1uLFRpPW51bGw7YnJlYWt9ZTp7dmFyIHU9ZSxvPXQucmV0dXJuLGk9dCxzPW47aWYobj1MaSxpLmZsYWdzfD0zMjc2OCxudWxsIT09cyYmIm9iamVjdCI9PXR5cGVvZiBzJiYiZnVuY3Rpb24iPT10eXBlb2Ygcy50aGVuKXt2YXIgYz1zLGY9aSxkPWYudGFnO2lmKCEoMSZmLm1vZGV8fDAhPT1kJiYxMSE9PWQmJjE1IT09ZCkpe3ZhciBwPWYuYWx0ZXJuYXRlO3A/KGYudXBkYXRlUXVldWU9cC51cGRhdGVRdWV1ZSxmLm1lbW9pemVkU3RhdGU9cC5tZW1vaXplZFN0YXRlLGYubGFuZXM9cC5sYW5lcyk6KGYudXBkYXRlUXVldWU9bnVsbCxmLm1lbW9pemVkU3RhdGU9bnVsbCl9dmFyIG09dm8obyk7aWYobnVsbCE9PW0pe20uZmxhZ3MmPS0yNTcseW8obSxvLGksMCxuKSwxJm0ubW9kZSYmZ28odSxjLG4pLHM9Yzt2YXIgaD0obj1tKS51cGRhdGVRdWV1ZTtpZihudWxsPT09aCl7dmFyIGc9bmV3IFNldDtnLmFkZChzKSxuLnVwZGF0ZVF1ZXVlPWd9ZWxzZSBoLmFkZChzKTticmVhayBlfWlmKCEoMSZuKSl7Z28odSxjLG4pLGhzKCk7YnJlYWsgZX1zPUVycm9yKGEoNDI2KSl9ZWxzZSBpZihsYSYmMSZpLm1vZGUpe3ZhciB2PXZvKG8pO2lmKG51bGwhPT12KXshKDY1NTM2JnYuZmxhZ3MpJiYodi5mbGFnc3w9MjU2KSx5byh2LG8saSwwLG4pLG1hKHNvKHMsaSkpO2JyZWFrIGV9fXU9cz1zbyhzLGkpLDQhPT1SaSYmKFJpPTIpLG51bGw9PT1WaT9WaT1bdV06VmkucHVzaCh1KSx1PW87ZG97c3dpdGNoKHUudGFnKXtjYXNlIDM6dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LG1vKDAscyxuKSk7YnJlYWsgZTtjYXNlIDE6aT1zO3ZhciB5PXUudHlwZSxiPXUuc3RhdGVOb2RlO2lmKCEoMTI4JnUuZmxhZ3N8fCJmdW5jdGlvbiIhPXR5cGVvZiB5LmdldERlcml2ZWRTdGF0ZUZyb21FcnJvciYmKG51bGw9PT1ifHwiZnVuY3Rpb24iIT10eXBlb2YgYi5jb21wb25lbnREaWRDYXRjaHx8bnVsbCE9PSRpJiYkaS5oYXMoYikpKSl7dS5mbGFnc3w9NjU1MzYsbiY9LW4sdS5sYW5lc3w9bixJYSh1LGhvKHUsaSxuKSk7YnJlYWsgZX19dT11LnJldHVybn13aGlsZShudWxsIT09dSl9a3ModCl9Y2F0Y2goZSl7bj1lLFRpPT09dCYmbnVsbCE9PXQmJihUaT10PXQucmV0dXJuKTtjb250aW51ZX1icmVha319ZnVuY3Rpb24gbXMoKXt2YXIgZT1DaS5jdXJyZW50O3JldHVybiBDaS5jdXJyZW50PWFvLG51bGw9PT1lP2FvOmV9ZnVuY3Rpb24gaHMoKXswIT09UmkmJjMhPT1SaSYmMiE9PVJpfHwoUmk9NCksbnVsbD09PVBpfHwhKDI2ODQzNTQ1NSZJaSkmJiEoMjY4NDM1NDU1Jk9pKXx8b3MoUGksTGkpfWZ1bmN0aW9uIGdzKGUsbil7dmFyIHQ9X2k7X2l8PTI7dmFyIHI9bXMoKTtmb3IoUGk9PT1lJiZMaT09PW58fChIaT1udWxsLGRzKGUsbikpOzspdHJ5e3ZzKCk7YnJlYWt9Y2F0Y2gobil7cHMoZSxuKX1pZih3YSgpLF9pPXQsQ2kuY3VycmVudD1yLG51bGwhPT1UaSl0aHJvdyBFcnJvcihhKDI2MSkpO3JldHVybiBQaT1udWxsLExpPTAsUml9ZnVuY3Rpb24gdnMoKXtmb3IoO251bGwhPT1UaTspYnMoVGkpfWZ1bmN0aW9uIHlzKCl7Zm9yKDtudWxsIT09VGkmJiFZZSgpOylicyhUaSl9ZnVuY3Rpb24gYnMoZSl7dmFyIG49eGkoZS5hbHRlcm5hdGUsZSxNaSk7ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT1uP2tzKGUpOlRpPW4semkuY3VycmVudD1udWxsfWZ1bmN0aW9uIGtzKGUpe3ZhciBuPWU7ZG97dmFyIHQ9bi5hbHRlcm5hdGU7aWYoZT1uLnJldHVybiwzMjc2OCZuLmZsYWdzKXtpZihudWxsIT09KHQ9S28odCxuKSkpcmV0dXJuIHQuZmxhZ3MmPTMyNzY3LHZvaWQoVGk9dCk7aWYobnVsbD09PWUpcmV0dXJuIFJpPTYsdm9pZChUaT1udWxsKTtlLmZsYWdzfD0zMjc2OCxlLnN1YnRyZWVGbGFncz0wLGUuZGVsZXRpb25zPW51bGx9ZWxzZSBpZihudWxsIT09KHQ9cW8odCxuLE1pKSkpcmV0dXJuIHZvaWQoVGk9dCk7aWYobnVsbCE9PShuPW4uc2libGluZykpcmV0dXJuIHZvaWQoVGk9bik7VGk9bj1lfXdoaWxlKG51bGwhPT1uKTswPT09UmkmJihSaT01KX1mdW5jdGlvbiB3cyhlLG4sdCl7dmFyIHI9a24sbD1OaS50cmFuc2l0aW9uO3RyeXtOaS50cmFuc2l0aW9uPW51bGwsa249MSxmdW5jdGlvbihlLG4sdCxyKXtkb3tTcygpfXdoaWxlKG51bGwhPT1LaSk7aWYoNiZfaSl0aHJvdyBFcnJvcihhKDMyNykpO3Q9ZS5maW5pc2hlZFdvcms7dmFyIGw9ZS5maW5pc2hlZExhbmVzO2lmKG51bGw9PT10KXJldHVybiBudWxsO2lmKGUuZmluaXNoZWRXb3JrPW51bGwsZS5maW5pc2hlZExhbmVzPTAsdD09PWUuY3VycmVudCl0aHJvdyBFcnJvcihhKDE3NykpO2UuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7dmFyIHU9dC5sYW5lc3x0LmNoaWxkTGFuZXM7aWYoZnVuY3Rpb24oZSxuKXt2YXIgdD1lLnBlbmRpbmdMYW5lcyZ+bjtlLnBlbmRpbmdMYW5lcz1uLGUuc3VzcGVuZGVkTGFuZXM9MCxlLnBpbmdlZExhbmVzPTAsZS5leHBpcmVkTGFuZXMmPW4sZS5tdXRhYmxlUmVhZExhbmVzJj1uLGUuZW50YW5nbGVkTGFuZXMmPW4sbj1lLmVudGFuZ2xlbWVudHM7dmFyIHI9ZS5ldmVudFRpbWVzO2ZvcihlPWUuZXhwaXJhdGlvblRpbWVzOzA8dDspe3ZhciBsPTMxLXVuKHQpLGE9MTw8bDtuW2xdPTAscltsXT0tMSxlW2xdPS0xLHQmPX5hfX0oZSx1KSxlPT09UGkmJihUaT1QaT1udWxsLExpPTApLAohKDIwNjQmdC5zdWJ0cmVlRmxhZ3MpJiYhKDIwNjQmdC5mbGFncyl8fHFpfHwocWk9ITAsUHMobm4sKGZ1bmN0aW9uKCl7cmV0dXJuIFNzKCksbnVsbH0pKSksdT0hISgxNTk5MCZ0LmZsYWdzKSwhISgxNTk5MCZ0LnN1YnRyZWVGbGFncyl8fHUpe3U9TmkudHJhbnNpdGlvbixOaS50cmFuc2l0aW9uPW51bGw7dmFyIG89a247a249MTt2YXIgaT1faTtfaXw9NCx6aS5jdXJyZW50PW51bGwsZnVuY3Rpb24oZSxuKXtpZihlbD1qbixwcihlPWRyKCkpKXtpZigic2VsZWN0aW9uU3RhcnQiaW4gZSl2YXIgdD17c3RhcnQ6ZS5zZWxlY3Rpb25TdGFydCxlbmQ6ZS5zZWxlY3Rpb25FbmR9O2Vsc2UgZTp7dmFyIHI9KHQ9KHQ9ZS5vd25lckRvY3VtZW50KSYmdC5kZWZhdWx0Vmlld3x8d2luZG93KS5nZXRTZWxlY3Rpb24mJnQuZ2V0U2VsZWN0aW9uKCk7aWYociYmMCE9PXIucmFuZ2VDb3VudCl7dD1yLmFuY2hvck5vZGU7dmFyIGw9ci5hbmNob3JPZmZzZXQsdT1yLmZvY3VzTm9kZTtyPXIuZm9jdXNPZmZzZXQ7dHJ5e3Qubm9kZVR5cGUsdS5ub2RlVHlwZX1jYXRjaChlKXt0PW51bGw7YnJlYWsgZX12YXIgbz0wLGk9LTEscz0tMSxjPTAsZj0wLGQ9ZSxwPW51bGw7bjpmb3IoOzspe2Zvcih2YXIgbTtkIT09dHx8MCE9PWwmJjMhPT1kLm5vZGVUeXBlfHwoaT1vK2wpLGQhPT11fHwwIT09ciYmMyE9PWQubm9kZVR5cGV8fChzPW8rciksMz09PWQubm9kZVR5cGUmJihvKz1kLm5vZGVWYWx1ZS5sZW5ndGgpLG51bGwhPT0obT1kLmZpcnN0Q2hpbGQpOylwPWQsZD1tO2Zvcig7Oyl7aWYoZD09PWUpYnJlYWsgbjtpZihwPT09dCYmKytjPT09bCYmKGk9bykscD09PXUmJisrZj09PXImJihzPW8pLG51bGwhPT0obT1kLm5leHRTaWJsaW5nKSlicmVhaztwPShkPXApLnBhcmVudE5vZGV9ZD1tfXQ9LTE9PT1pfHwtMT09PXM/bnVsbDp7c3RhcnQ6aSxlbmQ6c319ZWxzZSB0PW51bGx9dD10fHx7c3RhcnQ6MCxlbmQ6MH19ZWxzZSB0PW51bGw7Zm9yKG5sPXtmb2N1c2VkRWxlbTplLHNlbGVjdGlvblJhbmdlOnR9LGpuPSExLFpvPW47bnVsbCE9PVpvOylpZihlPShuPVpvKS5jaGlsZCwxMDI4Jm4uc3VidHJlZUZsYWdzJiZudWxsIT09ZSllLnJldHVybj1uLFpvPWU7ZWxzZSBmb3IoO251bGwhPT1abzspe249Wm87dHJ5e3ZhciBoPW4uYWx0ZXJuYXRlO2lmKDEwMjQmbi5mbGFncylzd2l0Y2gobi50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6Y2FzZSA1OmNhc2UgNjpjYXNlIDQ6Y2FzZSAxNzpicmVhaztjYXNlIDE6aWYobnVsbCE9PWgpe3ZhciBnPWgubWVtb2l6ZWRQcm9wcyx2PWgubWVtb2l6ZWRTdGF0ZSx5PW4uc3RhdGVOb2RlLGI9eS5nZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZShuLmVsZW1lbnRUeXBlPT09bi50eXBlP2c6Z2Eobi50eXBlLGcpLHYpO3kuX19yZWFjdEludGVybmFsU25hcHNob3RCZWZvcmVVcGRhdGU9Yn1icmVhaztjYXNlIDM6dmFyIGs9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzsxPT09ay5ub2RlVHlwZT9rLnRleHRDb250ZW50PSIiOjk9PT1rLm5vZGVUeXBlJiZrLmRvY3VtZW50RWxlbWVudCYmay5yZW1vdmVDaGlsZChrLmRvY3VtZW50RWxlbWVudCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihhKDE2MykpfX1jYXRjaChlKXtFcyhuLG4ucmV0dXJuLGUpfWlmKG51bGwhPT0oZT1uLnNpYmxpbmcpKXtlLnJldHVybj1uLnJldHVybixabz1lO2JyZWFrfVpvPW4ucmV0dXJufWg9bmksbmk9ITF9KGUsdCksZ2kodCxlKSxtcihubCksam49ISFlbCxubD1lbD1udWxsLGUuY3VycmVudD10LHlpKHQsZSxsKSxYZSgpLF9pPWksa249byxOaS50cmFuc2l0aW9uPXV9ZWxzZSBlLmN1cnJlbnQ9dDtpZihxaSYmKHFpPSExLEtpPWUsWWk9bCksdT1lLnBlbmRpbmdMYW5lcywwPT09dSYmKCRpPW51bGwpLGZ1bmN0aW9uKGUpe2lmKGFuJiYiZnVuY3Rpb24iPT10eXBlb2YgYW4ub25Db21taXRGaWJlclJvb3QpdHJ5e2FuLm9uQ29tbWl0RmliZXJSb290KGxuLGUsdm9pZCAwLCEoMTI4Jn5lLmN1cnJlbnQuZmxhZ3MpKX1jYXRjaChlKXt9fSh0LnN0YXRlTm9kZSkscnMoZSxHZSgpKSxudWxsIT09bilmb3Iocj1lLm9uUmVjb3ZlcmFibGVFcnJvcix0PTA7dDxuLmxlbmd0aDt0KyspbD1uW3RdLHIobC52YWx1ZSx7Y29tcG9uZW50U3RhY2s6bC5zdGFjayxkaWdlc3Q6bC5kaWdlc3R9KTtpZihRaSl0aHJvdyBRaT0hMSxlPWppLGppPW51bGwsZTshISgxJllpKSYmMCE9PWUudGFnJiZTcygpLHU9ZS5wZW5kaW5nTGFuZXMsMSZ1P2U9PT1HaT9YaSsrOihYaT0wLEdpPWUpOlhpPTAsV2woKX0oZSxuLHQscil9ZmluYWxseXtOaS50cmFuc2l0aW9uPWwsa249cn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBTcygpe2lmKG51bGwhPT1LaSl7dmFyIGU9d24oWWkpLG49TmkudHJhbnNpdGlvbix0PWtuO3RyeXtpZihOaS50cmFuc2l0aW9uPW51bGwsa249MTY+ZT8xNjplLG51bGw9PT1LaSl2YXIgcj0hMTtlbHNle2lmKGU9S2ksS2k9bnVsbCxZaT0wLDYmX2kpdGhyb3cgRXJyb3IoYSgzMzEpKTt2YXIgbD1faTtmb3IoX2l8PTQsWm89ZS5jdXJyZW50O251bGwhPT1abzspe3ZhciB1PVpvLG89dS5jaGlsZDtpZigxNiZaby5mbGFncyl7dmFyIGk9dS5kZWxldGlvbnM7aWYobnVsbCE9PWkpe2Zvcih2YXIgcz0wO3M8aS5sZW5ndGg7cysrKXt2YXIgYz1pW3NdO2Zvcihabz1jO251bGwhPT1abzspe3ZhciBmPVpvO3N3aXRjaChmLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTp0aSg4LGYsdSl9dmFyIGQ9Zi5jaGlsZDtpZihudWxsIT09ZClkLnJldHVybj1mLFpvPWQ7ZWxzZSBmb3IoO251bGwhPT1abzspe3ZhciBwPShmPVpvKS5zaWJsaW5nLG09Zi5yZXR1cm47aWYoYWkoZiksZj09PWMpe1pvPW51bGw7YnJlYWt9aWYobnVsbCE9PXApe3AucmV0dXJuPW0sWm89cDticmVha31abz1tfX19dmFyIGg9dS5hbHRlcm5hdGU7aWYobnVsbCE9PWgpe3ZhciBnPWguY2hpbGQ7aWYobnVsbCE9PWcpe2guY2hpbGQ9bnVsbDtkb3t2YXIgdj1nLnNpYmxpbmc7Zy5zaWJsaW5nPW51bGwsZz12fXdoaWxlKG51bGwhPT1nKX19Wm89dX19aWYoMjA2NCZ1LnN1YnRyZWVGbGFncyYmbnVsbCE9PW8pby5yZXR1cm49dSwKWm89bztlbHNlIGU6Zm9yKDtudWxsIT09Wm87KXtpZigyMDQ4Jih1PVpvKS5mbGFncylzd2l0Y2godS50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6dGkoOSx1LHUucmV0dXJuKX12YXIgeT11LnNpYmxpbmc7aWYobnVsbCE9PXkpe3kucmV0dXJuPXUucmV0dXJuLFpvPXk7YnJlYWsgZX1abz11LnJldHVybn19dmFyIGI9ZS5jdXJyZW50O2Zvcihabz1iO251bGwhPT1abzspe3ZhciBrPShvPVpvKS5jaGlsZDtpZigyMDY0Jm8uc3VidHJlZUZsYWdzJiZudWxsIT09aylrLnJldHVybj1vLFpvPWs7ZWxzZSBlOmZvcihvPWI7bnVsbCE9PVpvOyl7aWYoMjA0OCYoaT1abykuZmxhZ3MpdHJ5e3N3aXRjaChpLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpyaSg5LGkpfX1jYXRjaChlKXtFcyhpLGkucmV0dXJuLGUpfWlmKGk9PT1vKXtabz1udWxsO2JyZWFrIGV9dmFyIHc9aS5zaWJsaW5nO2lmKG51bGwhPT13KXt3LnJldHVybj1pLnJldHVybixabz13O2JyZWFrIGV9Wm89aS5yZXR1cm59fWlmKF9pPWwsV2woKSxhbiYmImZ1bmN0aW9uIj09dHlwZW9mIGFuLm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7YW4ub25Qb3N0Q29tbWl0RmliZXJSb290KGxuLGUpfWNhdGNoKGUpe31yPSEwfXJldHVybiByfWZpbmFsbHl7a249dCxOaS50cmFuc2l0aW9uPW59fXJldHVybiExfWZ1bmN0aW9uIHhzKGUsbix0KXtlPVJhKGUsbj1tbygwLG49c28odCxuKSwxKSwxKSxuPWVzKCksbnVsbCE9PWUmJih5bihlLDEsbikscnMoZSxuKSl9ZnVuY3Rpb24gRXMoZSxuLHQpe2lmKDM9PT1lLnRhZyl4cyhlLGUsdCk7ZWxzZSBmb3IoO251bGwhPT1uOyl7aWYoMz09PW4udGFnKXt4cyhuLGUsdCk7YnJlYWt9aWYoMT09PW4udGFnKXt2YXIgcj1uLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2Ygbi50eXBlLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcnx8ImZ1bmN0aW9uIj09dHlwZW9mIHIuY29tcG9uZW50RGlkQ2F0Y2gmJihudWxsPT09JGl8fCEkaS5oYXMocikpKXtuPVJhKG4sZT1obyhuLGU9c28odCxlKSwxKSwxKSxlPWVzKCksbnVsbCE9PW4mJih5bihuLDEsZSkscnMobixlKSk7YnJlYWt9fW49bi5yZXR1cm59fWZ1bmN0aW9uIENzKGUsbix0KXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUobiksbj1lcygpLGUucGluZ2VkTGFuZXN8PWUuc3VzcGVuZGVkTGFuZXMmdCxQaT09PWUmJihMaSZ0KT09PXQmJig0PT09Uml8fDM9PT1SaSYmKDEzMDAyMzQyNCZMaSk9PT1MaSYmNTAwPkdlKCktQmk/ZHMoZSwwKTpVaXw9dCkscnMoZSxuKX1mdW5jdGlvbiB6cyhlLG4pezA9PT1uJiYoMSZlLm1vZGU/KG49Zm4sISgxMzAwMjM0MjQmKGZuPDw9MSkpJiYoZm49NDE5NDMwNCkpOm49MSk7dmFyIHQ9ZXMoKTtudWxsIT09KGU9UGEoZSxuKSkmJih5bihlLG4sdCkscnMoZSx0KSl9ZnVuY3Rpb24gTnMoZSl7dmFyIG49ZS5tZW1vaXplZFN0YXRlLHQ9MDtudWxsIT09biYmKHQ9bi5yZXRyeUxhbmUpLHpzKGUsdCl9ZnVuY3Rpb24gX3MoZSxuKXt2YXIgdD0wO3N3aXRjaChlLnRhZyl7Y2FzZSAxMzp2YXIgcj1lLnN0YXRlTm9kZSxsPWUubWVtb2l6ZWRTdGF0ZTtudWxsIT09bCYmKHQ9bC5yZXRyeUxhbmUpO2JyZWFrO2Nhc2UgMTk6cj1lLnN0YXRlTm9kZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKGEoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKG4pLHpzKGUsdCl9ZnVuY3Rpb24gUHMoZSxuKXtyZXR1cm4gcWUoZSxuKX1mdW5jdGlvbiBUcyhlLG4sdCxyKXt0aGlzLnRhZz1lLHRoaXMua2V5PXQsdGhpcy5zaWJsaW5nPXRoaXMuY2hpbGQ9dGhpcy5yZXR1cm49dGhpcy5zdGF0ZU5vZGU9dGhpcy50eXBlPXRoaXMuZWxlbWVudFR5cGU9bnVsbCx0aGlzLmluZGV4PTAsdGhpcy5yZWY9bnVsbCx0aGlzLnBlbmRpbmdQcm9wcz1uLHRoaXMuZGVwZW5kZW5jaWVzPXRoaXMubWVtb2l6ZWRTdGF0ZT10aGlzLnVwZGF0ZVF1ZXVlPXRoaXMubWVtb2l6ZWRQcm9wcz1udWxsLHRoaXMubW9kZT1yLHRoaXMuc3VidHJlZUZsYWdzPXRoaXMuZmxhZ3M9MCx0aGlzLmRlbGV0aW9ucz1udWxsLHRoaXMuY2hpbGRMYW5lcz10aGlzLmxhbmVzPTAsdGhpcy5hbHRlcm5hdGU9bnVsbH1mdW5jdGlvbiBMcyhlLG4sdCxyKXtyZXR1cm4gbmV3IFRzKGUsbix0LHIpfWZ1bmN0aW9uIE1zKGUpe3JldHVybiEoIShlPWUucHJvdG90eXBlKXx8IWUuaXNSZWFjdENvbXBvbmVudCl9ZnVuY3Rpb24gRnMoZSxuKXt2YXIgdD1lLmFsdGVybmF0ZTtyZXR1cm4gbnVsbD09PXQ/KCh0PUxzKGUudGFnLG4sZS5rZXksZS5tb2RlKSkuZWxlbWVudFR5cGU9ZS5lbGVtZW50VHlwZSx0LnR5cGU9ZS50eXBlLHQuc3RhdGVOb2RlPWUuc3RhdGVOb2RlLHQuYWx0ZXJuYXRlPWUsZS5hbHRlcm5hdGU9dCk6KHQucGVuZGluZ1Byb3BzPW4sdC50eXBlPWUudHlwZSx0LmZsYWdzPTAsdC5zdWJ0cmVlRmxhZ3M9MCx0LmRlbGV0aW9ucz1udWxsKSx0LmZsYWdzPTE0NjgwMDY0JmUuZmxhZ3MsdC5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyx0LmxhbmVzPWUubGFuZXMsdC5jaGlsZD1lLmNoaWxkLHQubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsdC5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSx0LnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsbj1lLmRlcGVuZGVuY2llcyx0LmRlcGVuZGVuY2llcz1udWxsPT09bj9udWxsOntsYW5lczpuLmxhbmVzLGZpcnN0Q29udGV4dDpuLmZpcnN0Q29udGV4dH0sdC5zaWJsaW5nPWUuc2libGluZyx0LmluZGV4PWUuaW5kZXgsdC5yZWY9ZS5yZWYsdH1mdW5jdGlvbiBScyhlLG4sdCxyLGwsdSl7dmFyIG89MjtpZihyPWUsImZ1bmN0aW9uIj09dHlwZW9mIGUpTXMoZSkmJihvPTEpO2Vsc2UgaWYoInN0cmluZyI9PXR5cGVvZiBlKW89NTtlbHNlIGU6c3dpdGNoKGUpe2Nhc2UgeDpyZXR1cm4gRHModC5jaGlsZHJlbixsLHUsbik7Y2FzZSBFOm89OCxsfD04O2JyZWFrO2Nhc2UgQzpyZXR1cm4oZT1McygxMix0LG4sMnxsKSkuZWxlbWVudFR5cGU9QyxlLmxhbmVzPXUsZTtjYXNlIFA6cmV0dXJuKGU9THMoMTMsdCxuLGwpKS5lbGVtZW50VHlwZT1QLGUubGFuZXM9dSxlO2Nhc2UgVDoKcmV0dXJuKGU9THMoMTksdCxuLGwpKS5lbGVtZW50VHlwZT1ULGUubGFuZXM9dSxlO2Nhc2UgRjpyZXR1cm4gSXModCxsLHUsbik7ZGVmYXVsdDppZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXN3aXRjaChlLiQkdHlwZW9mKXtjYXNlIHo6bz0xMDticmVhayBlO2Nhc2UgTjpvPTk7YnJlYWsgZTtjYXNlIF86bz0xMTticmVhayBlO2Nhc2UgTDpvPTE0O2JyZWFrIGU7Y2FzZSBNOm89MTYscj1udWxsO2JyZWFrIGV9dGhyb3cgRXJyb3IoYSgxMzAsbnVsbD09ZT9lOnR5cGVvZiBlLCIiKSl9cmV0dXJuKG49THMobyx0LG4sbCkpLmVsZW1lbnRUeXBlPWUsbi50eXBlPXIsbi5sYW5lcz11LG59ZnVuY3Rpb24gRHMoZSxuLHQscil7cmV0dXJuKGU9THMoNyxlLHIsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBJcyhlLG4sdCxyKXtyZXR1cm4oZT1McygyMixlLHIsbikpLmVsZW1lbnRUeXBlPUYsZS5sYW5lcz10LGUuc3RhdGVOb2RlPXtpc0hpZGRlbjohMX0sZX1mdW5jdGlvbiBPcyhlLG4sdCl7cmV0dXJuKGU9THMoNixlLG51bGwsbikpLmxhbmVzPXQsZX1mdW5jdGlvbiBVcyhlLG4sdCl7cmV0dXJuKG49THMoNCxudWxsIT09ZS5jaGlsZHJlbj9lLmNoaWxkcmVuOltdLGUua2V5LG4pKS5sYW5lcz10LG4uc3RhdGVOb2RlPXtjb250YWluZXJJbmZvOmUuY29udGFpbmVySW5mbyxwZW5kaW5nQ2hpbGRyZW46bnVsbCxpbXBsZW1lbnRhdGlvbjplLmltcGxlbWVudGF0aW9ufSxufWZ1bmN0aW9uIFZzKGUsbix0LHIsbCl7dGhpcy50YWc9bix0aGlzLmNvbnRhaW5lckluZm89ZSx0aGlzLmZpbmlzaGVkV29yaz10aGlzLnBpbmdDYWNoZT10aGlzLmN1cnJlbnQ9dGhpcy5wZW5kaW5nQ2hpbGRyZW49bnVsbCx0aGlzLnRpbWVvdXRIYW5kbGU9LTEsdGhpcy5jYWxsYmFja05vZGU9dGhpcy5wZW5kaW5nQ29udGV4dD10aGlzLmNvbnRleHQ9bnVsbCx0aGlzLmNhbGxiYWNrUHJpb3JpdHk9MCx0aGlzLmV2ZW50VGltZXM9dm4oMCksdGhpcy5leHBpcmF0aW9uVGltZXM9dm4oLTEpLHRoaXMuZW50YW5nbGVkTGFuZXM9dGhpcy5maW5pc2hlZExhbmVzPXRoaXMubXV0YWJsZVJlYWRMYW5lcz10aGlzLmV4cGlyZWRMYW5lcz10aGlzLnBpbmdlZExhbmVzPXRoaXMuc3VzcGVuZGVkTGFuZXM9dGhpcy5wZW5kaW5nTGFuZXM9MCx0aGlzLmVudGFuZ2xlbWVudHM9dm4oMCksdGhpcy5pZGVudGlmaWVyUHJlZml4PXIsdGhpcy5vblJlY292ZXJhYmxlRXJyb3I9bCx0aGlzLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGE9bnVsbH1mdW5jdGlvbiBBcyhlLG4sdCxyLGwsYSx1LG8saSl7cmV0dXJuIGU9bmV3IFZzKGUsbix0LG8saSksMT09PW4/KG49MSwhMD09PWEmJihufD04KSk6bj0wLGE9THMoMyxudWxsLG51bGwsbiksZS5jdXJyZW50PWEsYS5zdGF0ZU5vZGU9ZSxhLm1lbW9pemVkU3RhdGU9e2VsZW1lbnQ6cixpc0RlaHlkcmF0ZWQ6dCxjYWNoZTpudWxsLHRyYW5zaXRpb25zOm51bGwscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpudWxsfSxMYShhKSxlfWZ1bmN0aW9uIEJzKGUpe2lmKCFlKXJldHVybiBObDtlOntpZihXZShlPWUuX3JlYWN0SW50ZXJuYWxzKSE9PWV8fDEhPT1lLnRhZyl0aHJvdyBFcnJvcihhKDE3MCkpO3ZhciBuPWU7ZG97c3dpdGNoKG4udGFnKXtjYXNlIDM6bj1uLnN0YXRlTm9kZS5jb250ZXh0O2JyZWFrIGU7Y2FzZSAxOmlmKE1sKG4udHlwZSkpe249bi5zdGF0ZU5vZGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHQ7YnJlYWsgZX19bj1uLnJldHVybn13aGlsZShudWxsIT09bik7dGhyb3cgRXJyb3IoYSgxNzEpKX1pZigxPT09ZS50YWcpe3ZhciB0PWUudHlwZTtpZihNbCh0KSlyZXR1cm4gRGwoZSx0LG4pfXJldHVybiBufWZ1bmN0aW9uIFdzKGUsbix0LHIsbCxhLHUsbyxpKXtyZXR1cm4oZT1Bcyh0LHIsITAsZSwwLGEsMCxvLGkpKS5jb250ZXh0PUJzKG51bGwpLHQ9ZS5jdXJyZW50LChhPUZhKHI9ZXMoKSxsPW5zKHQpKSkuY2FsbGJhY2s9bnVsbCE9bj9uOm51bGwsUmEodCxhLGwpLGUuY3VycmVudC5sYW5lcz1sLHluKGUsbCxyKSxycyhlLHIpLGV9ZnVuY3Rpb24gSHMoZSxuLHQscil7dmFyIGw9bi5jdXJyZW50LGE9ZXMoKSx1PW5zKGwpO3JldHVybiB0PUJzKHQpLG51bGw9PT1uLmNvbnRleHQ/bi5jb250ZXh0PXQ6bi5wZW5kaW5nQ29udGV4dD10LChuPUZhKGEsdSkpLnBheWxvYWQ9e2VsZW1lbnQ6ZX0sbnVsbCE9PShyPXZvaWQgMD09PXI/bnVsbDpyKSYmKG4uY2FsbGJhY2s9ciksbnVsbCE9PShlPVJhKGwsbix1KSkmJih0cyhlLGwsdSxhKSxEYShlLGwsdSkpLHV9ZnVuY3Rpb24gUXMoZSl7cmV0dXJuKGU9ZS5jdXJyZW50KS5jaGlsZD8oZS5jaGlsZC50YWcsZS5jaGlsZC5zdGF0ZU5vZGUpOm51bGx9ZnVuY3Rpb24ganMoZSxuKXtpZihudWxsIT09KGU9ZS5tZW1vaXplZFN0YXRlKSYmbnVsbCE9PWUuZGVoeWRyYXRlZCl7dmFyIHQ9ZS5yZXRyeUxhbmU7ZS5yZXRyeUxhbmU9MCE9PXQmJnQ8bj90Om59fWZ1bmN0aW9uICRzKGUsbil7anMoZSxuKSwoZT1lLmFsdGVybmF0ZSkmJmpzKGUsbil9eGk9ZnVuY3Rpb24oZSxuLHQpe2lmKG51bGwhPT1lKWlmKGUubWVtb2l6ZWRQcm9wcyE9PW4ucGVuZGluZ1Byb3BzfHxQbC5jdXJyZW50KWtvPSEwO2Vsc2V7aWYoIShlLmxhbmVzJnR8fDEyOCZuLmZsYWdzKSlyZXR1cm4ga289ITEsZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuLnRhZyl7Y2FzZSAzOlRvKG4pLHBhKCk7YnJlYWs7Y2FzZSA1OmF1KG4pO2JyZWFrO2Nhc2UgMTpNbChuLnR5cGUpJiZJbChuKTticmVhaztjYXNlIDQ6cnUobixuLnN0YXRlTm9kZS5jb250YWluZXJJbmZvKTticmVhaztjYXNlIDEwOnZhciByPW4udHlwZS5fY29udGV4dCxsPW4ubWVtb2l6ZWRQcm9wcy52YWx1ZTt6bCh2YSxyLl9jdXJyZW50VmFsdWUpLHIuX2N1cnJlbnRWYWx1ZT1sO2JyZWFrO2Nhc2UgMTM6aWYobnVsbCE9PShyPW4ubWVtb2l6ZWRTdGF0ZSkpcmV0dXJuIG51bGwhPT1yLmRlaHlkcmF0ZWQ/KHpsKG91LDEmb3UuY3VycmVudCksbi5mbGFnc3w9MTI4LG51bGwpOnQmbi5jaGlsZC5jaGlsZExhbmVzP09vKGUsbix0KTooemwob3UsMSZvdS5jdXJyZW50KSwKbnVsbCE9PShlPVFvKGUsbix0KSk/ZS5zaWJsaW5nOm51bGwpO3psKG91LDEmb3UuY3VycmVudCk7YnJlYWs7Y2FzZSAxOTppZihyPSEhKHQmbi5jaGlsZExhbmVzKSwxMjgmZS5mbGFncyl7aWYocilyZXR1cm4gV28oZSxuLHQpO24uZmxhZ3N8PTEyOH1pZihudWxsIT09KGw9bi5tZW1vaXplZFN0YXRlKSYmKGwucmVuZGVyaW5nPW51bGwsbC50YWlsPW51bGwsbC5sYXN0RWZmZWN0PW51bGwpLHpsKG91LG91LmN1cnJlbnQpLHIpYnJlYWs7cmV0dXJuIG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBuLmxhbmVzPTAsQ28oZSxuLHQpfXJldHVybiBRbyhlLG4sdCl9KGUsbix0KTtrbz0hISgxMzEwNzImZS5mbGFncyl9ZWxzZSBrbz0hMSxsYSYmMTA0ODU3NiZuLmZsYWdzJiZKbChuLCRsLG4uaW5kZXgpO3N3aXRjaChuLmxhbmVzPTAsbi50YWcpe2Nhc2UgMjp2YXIgcj1uLnR5cGU7SG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzO3ZhciBsPUxsKG4sX2wuY3VycmVudCk7RWEobix0KSxsPXh1KG51bGwsbixyLGUsbCx0KTt2YXIgdT1FdSgpO3JldHVybiBuLmZsYWdzfD0xLCJvYmplY3QiPT10eXBlb2YgbCYmbnVsbCE9PWwmJiJmdW5jdGlvbiI9PXR5cGVvZiBsLnJlbmRlciYmdm9pZCAwPT09bC4kJHR5cGVvZj8obi50YWc9MSxuLm1lbW9pemVkU3RhdGU9bnVsbCxuLnVwZGF0ZVF1ZXVlPW51bGwsTWwocik/KHU9ITAsSWwobikpOnU9ITEsbi5tZW1vaXplZFN0YXRlPW51bGwhPT1sLnN0YXRlJiZ2b2lkIDAhPT1sLnN0YXRlP2wuc3RhdGU6bnVsbCxMYShuKSxsLnVwZGF0ZXI9QmEsbi5zdGF0ZU5vZGU9bCxsLl9yZWFjdEludGVybmFscz1uLGphKG4scixlLHQpLG49UG8obnVsbCxuLHIsITAsdSx0KSk6KG4udGFnPTAsbGEmJnUmJmVhKG4pLHdvKG51bGwsbixsLHQpLG49bi5jaGlsZCksbjtjYXNlIDE2OnI9bi5lbGVtZW50VHlwZTtlOntzd2l0Y2goSG8oZSxuKSxlPW4ucGVuZGluZ1Byb3BzLHI9KGw9ci5faW5pdCkoci5fcGF5bG9hZCksbi50eXBlPXIsbD1uLnRhZz1mdW5jdGlvbihlKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gTXMoZSk/MTowO2lmKG51bGwhPWUpe2lmKChlPWUuJCR0eXBlb2YpPT09XylyZXR1cm4gMTE7aWYoZT09PUwpcmV0dXJuIDE0fXJldHVybiAyfShyKSxlPWdhKHIsZSksbCl7Y2FzZSAwOm49Tm8obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTpuPV9vKG51bGwsbixyLGUsdCk7YnJlYWsgZTtjYXNlIDExOm49U28obnVsbCxuLHIsZSx0KTticmVhayBlO2Nhc2UgMTQ6bj14byhudWxsLG4scixnYShyLnR5cGUsZSksdCk7YnJlYWsgZX10aHJvdyBFcnJvcihhKDMwNixyLCIiKSl9cmV0dXJuIG47Y2FzZSAwOnJldHVybiByPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLE5vKGUsbixyLGw9bi5lbGVtZW50VHlwZT09PXI/bDpnYShyLGwpLHQpO2Nhc2UgMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxfbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDM6ZTp7aWYoVG8obiksbnVsbD09PWUpdGhyb3cgRXJyb3IoYSgzODcpKTtyPW4ucGVuZGluZ1Byb3BzLGw9KHU9bi5tZW1vaXplZFN0YXRlKS5lbGVtZW50LE1hKGUsbiksT2EobixyLG51bGwsdCk7dmFyIG89bi5tZW1vaXplZFN0YXRlO2lmKHI9by5lbGVtZW50LHUuaXNEZWh5ZHJhdGVkKXtpZih1PXtlbGVtZW50OnIsaXNEZWh5ZHJhdGVkOiExLGNhY2hlOm8uY2FjaGUscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpvLnBlbmRpbmdTdXNwZW5zZUJvdW5kYXJpZXMsdHJhbnNpdGlvbnM6by50cmFuc2l0aW9uc30sbi51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9dSxuLm1lbW9pemVkU3RhdGU9dSwyNTYmbi5mbGFncyl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjMpKSxuKSk7YnJlYWsgZX1pZihyIT09bCl7bj1MbyhlLG4scix0LGw9c28oRXJyb3IoYSg0MjQpKSxuKSk7YnJlYWsgZX1mb3IocmE9c2wobi5zdGF0ZU5vZGUuY29udGFpbmVySW5mby5maXJzdENoaWxkKSx0YT1uLGxhPSEwLGFhPW51bGwsdD1HYShuLG51bGwscix0KSxuLmNoaWxkPXQ7dDspdC5mbGFncz0tMyZ0LmZsYWdzfDQwOTYsdD10LnNpYmxpbmd9ZWxzZXtpZihwYSgpLHI9PT1sKXtuPVFvKGUsbix0KTticmVhayBlfXdvKGUsbixyLHQpfW49bi5jaGlsZH1yZXR1cm4gbjtjYXNlIDU6cmV0dXJuIGF1KG4pLG51bGw9PT1lJiZzYShuKSxyPW4udHlwZSxsPW4ucGVuZGluZ1Byb3BzLHU9bnVsbCE9PWU/ZS5tZW1vaXplZFByb3BzOm51bGwsbz1sLmNoaWxkcmVuLHRsKHIsbCk/bz1udWxsOm51bGwhPT11JiZ0bChyLHUpJiYobi5mbGFnc3w9MzIpLHpvKGUsbiksd28oZSxuLG8sdCksbi5jaGlsZDtjYXNlIDY6cmV0dXJuIG51bGw9PT1lJiZzYShuKSxudWxsO2Nhc2UgMTM6cmV0dXJuIE9vKGUsbix0KTtjYXNlIDQ6cmV0dXJuIHJ1KG4sbi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbykscj1uLnBlbmRpbmdQcm9wcyxudWxsPT09ZT9uLmNoaWxkPVhhKG4sbnVsbCxyLHQpOndvKGUsbixyLHQpLG4uY2hpbGQ7Y2FzZSAxMTpyZXR1cm4gcj1uLnR5cGUsbD1uLnBlbmRpbmdQcm9wcyxTbyhlLG4scixsPW4uZWxlbWVudFR5cGU9PT1yP2w6Z2EocixsKSx0KTtjYXNlIDc6cmV0dXJuIHdvKGUsbixuLnBlbmRpbmdQcm9wcyx0KSxuLmNoaWxkO2Nhc2UgODpjYXNlIDEyOnJldHVybiB3byhlLG4sbi5wZW5kaW5nUHJvcHMuY2hpbGRyZW4sdCksbi5jaGlsZDtjYXNlIDEwOmU6e2lmKHI9bi50eXBlLl9jb250ZXh0LGw9bi5wZW5kaW5nUHJvcHMsdT1uLm1lbW9pemVkUHJvcHMsbz1sLnZhbHVlLHpsKHZhLHIuX2N1cnJlbnRWYWx1ZSksci5fY3VycmVudFZhbHVlPW8sbnVsbCE9PXUpaWYob3IodS52YWx1ZSxvKSl7aWYodS5jaGlsZHJlbj09PWwuY2hpbGRyZW4mJiFQbC5jdXJyZW50KXtuPVFvKGUsbix0KTticmVhayBlfX1lbHNlIGZvcihudWxsIT09KHU9bi5jaGlsZCkmJih1LnJldHVybj1uKTtudWxsIT09dTspe3ZhciBpPXUuZGVwZW5kZW5jaWVzO2lmKG51bGwhPT1pKXtvPXUuY2hpbGQ7Zm9yKHZhciBzPWkuZmlyc3RDb250ZXh0O251bGwhPT1zOyl7aWYocy5jb250ZXh0PT09cil7CmlmKDE9PT11LnRhZyl7KHM9RmEoLTEsdCYtdCkpLnRhZz0yO3ZhciBjPXUudXBkYXRlUXVldWU7aWYobnVsbCE9PWMpe3ZhciBmPShjPWMuc2hhcmVkKS5wZW5kaW5nO251bGw9PT1mP3MubmV4dD1zOihzLm5leHQ9Zi5uZXh0LGYubmV4dD1zKSxjLnBlbmRpbmc9c319dS5sYW5lc3w9dCxudWxsIT09KHM9dS5hbHRlcm5hdGUpJiYocy5sYW5lc3w9dCkseGEodS5yZXR1cm4sdCxuKSxpLmxhbmVzfD10O2JyZWFrfXM9cy5uZXh0fX1lbHNlIGlmKDEwPT09dS50YWcpbz11LnR5cGU9PT1uLnR5cGU/bnVsbDp1LmNoaWxkO2Vsc2UgaWYoMTg9PT11LnRhZyl7aWYobnVsbD09PShvPXUucmV0dXJuKSl0aHJvdyBFcnJvcihhKDM0MSkpO28ubGFuZXN8PXQsbnVsbCE9PShpPW8uYWx0ZXJuYXRlKSYmKGkubGFuZXN8PXQpLHhhKG8sdCxuKSxvPXUuc2libGluZ31lbHNlIG89dS5jaGlsZDtpZihudWxsIT09bylvLnJldHVybj11O2Vsc2UgZm9yKG89dTtudWxsIT09bzspe2lmKG89PT1uKXtvPW51bGw7YnJlYWt9aWYobnVsbCE9PSh1PW8uc2libGluZykpe3UucmV0dXJuPW8ucmV0dXJuLG89dTticmVha31vPW8ucmV0dXJufXU9b313byhlLG4sbC5jaGlsZHJlbix0KSxuPW4uY2hpbGR9cmV0dXJuIG47Y2FzZSA5OnJldHVybiBsPW4udHlwZSxyPW4ucGVuZGluZ1Byb3BzLmNoaWxkcmVuLEVhKG4sdCkscj1yKGw9Q2EobCkpLG4uZmxhZ3N8PTEsd28oZSxuLHIsdCksbi5jaGlsZDtjYXNlIDE0OnJldHVybiBsPWdhKHI9bi50eXBlLG4ucGVuZGluZ1Byb3BzKSx4byhlLG4scixsPWdhKHIudHlwZSxsKSx0KTtjYXNlIDE1OnJldHVybiBFbyhlLG4sbi50eXBlLG4ucGVuZGluZ1Byb3BzLHQpO2Nhc2UgMTc6cmV0dXJuIHI9bi50eXBlLGw9bi5wZW5kaW5nUHJvcHMsbD1uLmVsZW1lbnRUeXBlPT09cj9sOmdhKHIsbCksSG8oZSxuKSxuLnRhZz0xLE1sKHIpPyhlPSEwLElsKG4pKTplPSExLEVhKG4sdCksSGEobixyLGwpLGphKG4scixsLHQpLFBvKG51bGwsbixyLCEwLGUsdCk7Y2FzZSAxOTpyZXR1cm4gV28oZSxuLHQpO2Nhc2UgMjI6cmV0dXJuIENvKGUsbix0KX10aHJvdyBFcnJvcihhKDE1NixuLnRhZykpfTt2YXIgcXM9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uIEtzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFlzKGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIFhzKGUpe3JldHVybiEoIWV8fDEhPT1lLm5vZGVUeXBlJiY5IT09ZS5ub2RlVHlwZSYmMTEhPT1lLm5vZGVUeXBlKX1mdW5jdGlvbiBHcyhlKXtyZXR1cm4hKCFlfHwxIT09ZS5ub2RlVHlwZSYmOSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZSYmKDghPT1lLm5vZGVUeXBlfHwiIHJlYWN0LW1vdW50LXBvaW50LXVuc3RhYmxlICIhPT1lLm5vZGVWYWx1ZSkpfWZ1bmN0aW9uIFpzKCl7fWZ1bmN0aW9uIEpzKGUsbix0LHIsbCl7dmFyIGE9dC5fcmVhY3RSb290Q29udGFpbmVyO2lmKGEpe3ZhciB1PWE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGwpe3ZhciBvPWw7bD1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO28uY2FsbChlKX19SHMobix1LGUsbCl9ZWxzZSB1PWZ1bmN0aW9uKGUsbix0LHIsbCl7aWYobCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBhPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKHUpO2EuY2FsbChlKX19dmFyIHU9V3MobixyLGUsMCxudWxsLCExLDAsIiIsWnMpO3JldHVybiBlLl9yZWFjdFJvb3RDb250YWluZXI9dSxlW21sXT11LmN1cnJlbnQsV3IoOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLGNzKCksdX1mb3IoO2w9ZS5sYXN0Q2hpbGQ7KWUucmVtb3ZlQ2hpbGQobCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHIpe3ZhciBvPXI7cj1mdW5jdGlvbigpe3ZhciBlPVFzKGkpO28uY2FsbChlKX19dmFyIGk9QXMoZSwwLCExLG51bGwsMCwhMSwwLCIiLFpzKTtyZXR1cm4gZS5fcmVhY3RSb290Q29udGFpbmVyPWksZVttbF09aS5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxjcygoZnVuY3Rpb24oKXtIcyhuLGksdCxyKX0pKSxpfSh0LG4sZSxsLHIpO3JldHVybiBRcyh1KX1Zcy5wcm90b3R5cGUucmVuZGVyPUtzLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIG49dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGw9PT1uKXRocm93IEVycm9yKGEoNDA5KSk7SHMoZSxuLG51bGwsbnVsbCl9LFlzLnByb3RvdHlwZS51bm1vdW50PUtzLnByb3RvdHlwZS51bm1vdW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5faW50ZXJuYWxSb290O2lmKG51bGwhPT1lKXt0aGlzLl9pbnRlcm5hbFJvb3Q9bnVsbDt2YXIgbj1lLmNvbnRhaW5lckluZm87Y3MoKGZ1bmN0aW9uKCl7SHMobnVsbCxlLG51bGwsbnVsbCl9KSksblttbF09bnVsbH19LFlzLnByb3RvdHlwZS51bnN0YWJsZV9zY2hlZHVsZUh5ZHJhdGlvbj1mdW5jdGlvbihlKXtpZihlKXt2YXIgbj1DbigpO2U9e2Jsb2NrZWRPbjpudWxsLHRhcmdldDplLHByaW9yaXR5Om59O2Zvcih2YXIgdD0wO3Q8Um4ubGVuZ3RoJiYwIT09biYmbjxSblt0XS5wcmlvcml0eTt0KyspO1JuLnNwbGljZSh0LDAsZSksMD09PXQmJlVuKGUpfX0sU249ZnVuY3Rpb24oZSl7c3dpdGNoKGUudGFnKXtjYXNlIDM6dmFyIG49ZS5zdGF0ZU5vZGU7aWYobi5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXt2YXIgdD1kbihuLnBlbmRpbmdMYW5lcyk7MCE9PXQmJihibihuLDF8dCkscnMobixHZSgpKSwhKDYmX2kpJiYoV2k9R2UoKSs1MDAsV2woKSkpfWJyZWFrO2Nhc2UgMTM6Y3MoKGZ1bmN0aW9uKCl7dmFyIG49UGEoZSwxKTtpZihudWxsIT09bil7dmFyIHQ9ZXMoKTt0cyhuLGUsMSx0KX19KSksJHMoZSwxKX19LHhuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPVBhKGUsMTM0MjE3NzI4KTtpZihudWxsIT09bil0cyhuLGUsMTM0MjE3NzI4LGVzKCkpOyRzKGUsMTM0MjE3NzI4KX19LEVuPWZ1bmN0aW9uKGUpe2lmKDEzPT09ZS50YWcpe3ZhciBuPW5zKGUpLHQ9UGEoZSxuKQo7aWYobnVsbCE9PXQpdHModCxlLG4sZXMoKSk7JHMoZSxuKX19LENuPWZ1bmN0aW9uKCl7cmV0dXJuIGtufSx6bj1mdW5jdGlvbihlLG4pe3ZhciB0PWtuO3RyeXtyZXR1cm4ga249ZSxuKCl9ZmluYWxseXtrbj10fX0sU2U9ZnVuY3Rpb24oZSxuLHQpe3N3aXRjaChuKXtjYXNlImlucHV0IjppZihaKGUsdCksbj10Lm5hbWUsInJhZGlvIj09PXQudHlwZSYmbnVsbCE9bil7Zm9yKHQ9ZTt0LnBhcmVudE5vZGU7KXQ9dC5wYXJlbnROb2RlO2Zvcih0PXQucXVlcnlTZWxlY3RvckFsbCgiaW5wdXRbbmFtZT0iK0pTT04uc3RyaW5naWZ5KCIiK24pKyddW3R5cGU9InJhZGlvIl0nKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07aWYociE9PWUmJnIuZm9ybT09PWUuZm9ybSl7dmFyIGw9d2wocik7aWYoIWwpdGhyb3cgRXJyb3IoYSg5MCkpO3EociksWihyLGwpfX19YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6YWUoZSx0KTticmVhaztjYXNlInNlbGVjdCI6bnVsbCE9KG49dC52YWx1ZSkmJnRlKGUsISF0Lm11bHRpcGxlLG4sITEpfX0sX2U9c3MsUGU9Y3M7dmFyIGVjPXt1c2luZ0NsaWVudEVudHJ5UG9pbnQ6ITEsRXZlbnRzOltibCxrbCx3bCx6ZSxOZSxzc119LG5jPXtmaW5kRmliZXJCeUhvc3RJbnN0YW5jZTp5bCxidW5kbGVUeXBlOjAsdmVyc2lvbjoiMTguMi4wIixyZW5kZXJlclBhY2thZ2VOYW1lOiJyZWFjdC1kb20ifSx0Yz17YnVuZGxlVHlwZTpuYy5idW5kbGVUeXBlLHZlcnNpb246bmMudmVyc2lvbixyZW5kZXJlclBhY2thZ2VOYW1lOm5jLnJlbmRlcmVyUGFja2FnZU5hbWUscmVuZGVyZXJDb25maWc6bmMucmVuZGVyZXJDb25maWcsb3ZlcnJpZGVIb29rU3RhdGU6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZURlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZUhvb2tTdGF0ZVJlbmFtZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzOm51bGwsb3ZlcnJpZGVQcm9wc0RlbGV0ZVBhdGg6bnVsbCxvdmVycmlkZVByb3BzUmVuYW1lUGF0aDpudWxsLHNldEVycm9ySGFuZGxlcjpudWxsLHNldFN1c3BlbnNlSGFuZGxlcjpudWxsLHNjaGVkdWxlVXBkYXRlOm51bGwsY3VycmVudERpc3BhdGNoZXJSZWY6ay5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLGZpbmRIb3N0SW5zdGFuY2VCeUZpYmVyOmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT09KGU9amUoZSkpP251bGw6ZS5zdGF0ZU5vZGV9LGZpbmRGaWJlckJ5SG9zdEluc3RhbmNlOm5jLmZpbmRGaWJlckJ5SG9zdEluc3RhbmNlfHxmdW5jdGlvbigpe3JldHVybiBudWxsfSxmaW5kSG9zdEluc3RhbmNlc0ZvclJlZnJlc2g6bnVsbCxzY2hlZHVsZVJlZnJlc2g6bnVsbCxzY2hlZHVsZVJvb3Q6bnVsbCxzZXRSZWZyZXNoSGFuZGxlcjpudWxsLGdldEN1cnJlbnRGaWJlcjpudWxsLHJlY29uY2lsZXJWZXJzaW9uOiIxOC4yLjAtbmV4dC05ZTNiNzcyYjgtMjAyMjA2MDgifTtpZigidW5kZWZpbmVkIiE9dHlwZW9mIF9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXyl7dmFyIHJjPV9fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXztpZighcmMuaXNEaXNhYmxlZCYmcmMuc3VwcG9ydHNGaWJlcil0cnl7bG49cmMuaW5qZWN0KHRjKSxhbj1yY31jYXRjaChjZSl7fX1uLl9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPWVjLG4uY3JlYXRlUG9ydGFsPWZ1bmN0aW9uKGUsbil7dmFyIHQ9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGw7aWYoIVhzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIGZ1bmN0aW9uKGUsbix0KXt2YXIgcj0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbDtyZXR1cm57JCR0eXBlb2Y6UyxrZXk6bnVsbD09cj9udWxsOiIiK3IsY2hpbGRyZW46ZSxjb250YWluZXJJbmZvOm4saW1wbGVtZW50YXRpb246dH19KGUsbixudWxsLHQpfSxuLmNyZWF0ZVJvb3Q9ZnVuY3Rpb24oZSxuKXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSgyOTkpKTt2YXIgdD0hMSxyPSIiLGw9cXM7cmV0dXJuIG51bGwhPW4mJighMD09PW4udW5zdGFibGVfc3RyaWN0TW9kZSYmKHQ9ITApLHZvaWQgMCE9PW4uaWRlbnRpZmllclByZWZpeCYmKHI9bi5pZGVudGlmaWVyUHJlZml4KSx2b2lkIDAhPT1uLm9uUmVjb3ZlcmFibGVFcnJvciYmKGw9bi5vblJlY292ZXJhYmxlRXJyb3IpKSxuPUFzKGUsMSwhMSxudWxsLDAsdCwwLHIsbCksZVttbF09bi5jdXJyZW50LFdyKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKSxuZXcgS3Mobil9LG4uZmluZERPTU5vZGU9ZnVuY3Rpb24oZSl7aWYobnVsbD09ZSlyZXR1cm4gbnVsbDtpZigxPT09ZS5ub2RlVHlwZSlyZXR1cm4gZTt2YXIgbj1lLl9yZWFjdEludGVybmFscztpZih2b2lkIDA9PT1uKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZS5yZW5kZXIpdGhyb3cgRXJyb3IoYSgxODgpKTt0aHJvdyBlPU9iamVjdC5rZXlzKGUpLmpvaW4oIiwiKSxFcnJvcihhKDI2OCxlKSl9cmV0dXJuIGU9bnVsbD09PShlPWplKG4pKT9udWxsOmUuc3RhdGVOb2RlfSxuLmZsdXNoU3luYz1mdW5jdGlvbihlKXtyZXR1cm4gY3MoZSl9LG4uaHlkcmF0ZT1mdW5jdGlvbihlLG4sdCl7aWYoIUdzKG4pKXRocm93IEVycm9yKGEoMjAwKSk7cmV0dXJuIEpzKG51bGwsZSxuLCEwLHQpfSxuLmh5ZHJhdGVSb290PWZ1bmN0aW9uKGUsbix0KXtpZighWHMoZSkpdGhyb3cgRXJyb3IoYSg0MDUpKTt2YXIgcj1udWxsIT10JiZ0Lmh5ZHJhdGVkU291cmNlc3x8bnVsbCxsPSExLHU9IiIsbz1xcztpZihudWxsIT10JiYoITA9PT10LnVuc3RhYmxlX3N0cmljdE1vZGUmJihsPSEwKSx2b2lkIDAhPT10LmlkZW50aWZpZXJQcmVmaXgmJih1PXQuaWRlbnRpZmllclByZWZpeCksdm9pZCAwIT09dC5vblJlY292ZXJhYmxlRXJyb3ImJihvPXQub25SZWNvdmVyYWJsZUVycm9yKSksbj1XcyhuLG51bGwsZSwxLG51bGwhPXQ/dDpudWxsLGwsMCx1LG8pLGVbbWxdPW4uY3VycmVudCxXcihlKSxyKWZvcihlPTA7ZTxyLmxlbmd0aDtlKyspbD0obD0odD1yW2VdKS5fZ2V0VmVyc2lvbikodC5fc291cmNlKSwKbnVsbD09bi5tdXRhYmxlU291cmNlRWFnZXJIeWRyYXRpb25EYXRhP24ubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1bdCxsXTpuLm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGEucHVzaCh0LGwpO3JldHVybiBuZXcgWXMobil9LG4ucmVuZGVyPWZ1bmN0aW9uKGUsbix0KXtpZighR3MobikpdGhyb3cgRXJyb3IoYSgyMDApKTtyZXR1cm4gSnMobnVsbCxlLG4sITEsdCl9LG4udW5tb3VudENvbXBvbmVudEF0Tm9kZT1mdW5jdGlvbihlKXtpZighR3MoZSkpdGhyb3cgRXJyb3IoYSg0MCkpO3JldHVybiEhZS5fcmVhY3RSb290Q29udGFpbmVyJiYoY3MoKGZ1bmN0aW9uKCl7SnMobnVsbCxudWxsLGUsITEsKGZ1bmN0aW9uKCl7ZS5fcmVhY3RSb290Q29udGFpbmVyPW51bGwsZVttbF09bnVsbH0pKX0pKSwhMCl9LG4udW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9c3Msbi51bnN0YWJsZV9yZW5kZXJTdWJ0cmVlSW50b0NvbnRhaW5lcj1mdW5jdGlvbihlLG4sdCxyKXtpZighR3ModCkpdGhyb3cgRXJyb3IoYSgyMDApKTtpZihudWxsPT1lfHx2b2lkIDA9PT1lLl9yZWFjdEludGVybmFscyl0aHJvdyBFcnJvcihhKDM4KSk7cmV0dXJuIEpzKGUsbix0LCExLHIpfSxuLnZlcnNpb249IjE4LjIuMC1uZXh0LTllM2I3NzJiOC0yMDIyMDYwOCJ9LDUwODIwNyhlLG4pe2Z1bmN0aW9uIHQoZSxuKXt2YXIgdD1lLmxlbmd0aDtlLnB1c2gobik7ZTpmb3IoOzA8dDspe3ZhciByPXQtMT4+PjEsbD1lW3JdO2lmKCEoMDxhKGwsbikpKWJyZWFrIGU7ZVtyXT1uLGVbdF09bCx0PXJ9fWZ1bmN0aW9uIHIoZSl7cmV0dXJuIDA9PT1lLmxlbmd0aD9udWxsOmVbMF19ZnVuY3Rpb24gbChlKXtpZigwPT09ZS5sZW5ndGgpcmV0dXJuIG51bGw7dmFyIG49ZVswXSx0PWUucG9wKCk7aWYodCE9PW4pe2VbMF09dDtlOmZvcih2YXIgcj0wLGw9ZS5sZW5ndGgsdT1sPj4+MTtyPHU7KXt2YXIgbz0yKihyKzEpLTEsaT1lW29dLHM9bysxLGM9ZVtzXTtpZigwPmEoaSx0KSlzPGwmJjA+YShjLGkpPyhlW3JdPWMsZVtzXT10LHI9cyk6KGVbcl09aSxlW29dPXQscj1vKTtlbHNle2lmKCEoczxsJiYwPmEoYyx0KSkpYnJlYWsgZTtlW3JdPWMsZVtzXT10LHI9c319fXJldHVybiBufWZ1bmN0aW9uIGEoZSxuKXt2YXIgdD1lLnNvcnRJbmRleC1uLnNvcnRJbmRleDtyZXR1cm4gMCE9PXQ/dDplLmlkLW4uaWR9aWYoIm9iamVjdCI9PXR5cGVvZiBwZXJmb3JtYW5jZSYmImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLm5vdyl7dmFyIHU9cGVyZm9ybWFuY2U7bi51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gdS5ub3coKX19ZWxzZXt2YXIgbz1EYXRlLGk9by5ub3coKTtuLnVuc3RhYmxlX25vdz1mdW5jdGlvbigpe3JldHVybiBvLm5vdygpLWl9fXZhciBzPVtdLGM9W10sZj0xLGQ9bnVsbCxwPTMsbT0hMSxoPSExLGc9ITEsdj0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om51bGwseT0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDpudWxsLGI9InVuZGVmaW5lZCIhPXR5cGVvZiBzZXRJbW1lZGlhdGU/c2V0SW1tZWRpYXRlOm51bGw7ZnVuY3Rpb24gayhlKXtmb3IodmFyIG49cihjKTtudWxsIT09bjspe2lmKG51bGw9PT1uLmNhbGxiYWNrKWwoYyk7ZWxzZXtpZighKG4uc3RhcnRUaW1lPD1lKSlicmVhaztsKGMpLG4uc29ydEluZGV4PW4uZXhwaXJhdGlvblRpbWUsdChzLG4pfW49cihjKX19ZnVuY3Rpb24gdyhlKXtpZihnPSExLGsoZSksIWgpaWYobnVsbCE9PXIocykpaD0hMCxGKFMpO2Vsc2V7dmFyIG49cihjKTtudWxsIT09biYmUih3LG4uc3RhcnRUaW1lLWUpfX1mdW5jdGlvbiBTKGUsdCl7aD0hMSxnJiYoZz0hMSx5KHopLHo9LTEpLG09ITA7dmFyIGE9cDt0cnl7Zm9yKGsodCksZD1yKHMpO251bGwhPT1kJiYoIShkLmV4cGlyYXRpb25UaW1lPnQpfHxlJiYhUCgpKTspe3ZhciB1PWQuY2FsbGJhY2s7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHUpe2QuY2FsbGJhY2s9bnVsbCxwPWQucHJpb3JpdHlMZXZlbDt2YXIgbz11KGQuZXhwaXJhdGlvblRpbWU8PXQpO3Q9bi51bnN0YWJsZV9ub3coKSwiZnVuY3Rpb24iPT10eXBlb2Ygbz9kLmNhbGxiYWNrPW86ZD09PXIocykmJmwocyksayh0KX1lbHNlIGwocyk7ZD1yKHMpfWlmKG51bGwhPT1kKXZhciBpPSEwO2Vsc2V7dmFyIGY9cihjKTtudWxsIT09ZiYmUih3LGYuc3RhcnRUaW1lLXQpLGk9ITF9cmV0dXJuIGl9ZmluYWxseXtkPW51bGwscD1hLG09ITF9fSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiZ2b2lkIDAhPT1uYXZpZ2F0b3Iuc2NoZWR1bGluZyYmdm9pZCAwIT09bmF2aWdhdG9yLnNjaGVkdWxpbmcuaXNJbnB1dFBlbmRpbmcmJm5hdmlnYXRvci5zY2hlZHVsaW5nLmlzSW5wdXRQZW5kaW5nLmJpbmQobmF2aWdhdG9yLnNjaGVkdWxpbmcpO3ZhciB4LEU9ITEsQz1udWxsLHo9LTEsTj01LF89LTE7ZnVuY3Rpb24gUCgpe3JldHVybiEobi51bnN0YWJsZV9ub3coKS1fPE4pfWZ1bmN0aW9uIFQoKXtpZihudWxsIT09Qyl7dmFyIGU9bi51bnN0YWJsZV9ub3coKTtfPWU7dmFyIHQ9ITA7dHJ5e3Q9QyghMCxlKX1maW5hbGx5e3Q/eCgpOihFPSExLEM9bnVsbCl9fWVsc2UgRT0hMX1pZigiZnVuY3Rpb24iPT10eXBlb2YgYil4PWZ1bmN0aW9uKCl7YihUKX07ZWxzZSBpZigidW5kZWZpbmVkIiE9dHlwZW9mIE1lc3NhZ2VDaGFubmVsKXt2YXIgTD1uZXcgTWVzc2FnZUNoYW5uZWwsTT1MLnBvcnQyO0wucG9ydDEub25tZXNzYWdlPVQseD1mdW5jdGlvbigpe00ucG9zdE1lc3NhZ2UobnVsbCl9fWVsc2UgeD1mdW5jdGlvbigpe3YoVCwwKX07ZnVuY3Rpb24gRihlKXtDPWUsRXx8KEU9ITAseCgpKX1mdW5jdGlvbiBSKGUsdCl7ej12KChmdW5jdGlvbigpe2Uobi51bnN0YWJsZV9ub3coKSl9KSx0KX1uLnVuc3RhYmxlX0lkbGVQcmlvcml0eT01LG4udW5zdGFibGVfSW1tZWRpYXRlUHJpb3JpdHk9MSxuLnVuc3RhYmxlX0xvd1ByaW9yaXR5PTQsbi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eT0zLG4udW5zdGFibGVfUHJvZmlsaW5nPW51bGwsbi51bnN0YWJsZV9Vc2VyQmxvY2tpbmdQcmlvcml0eT0yLApuLnVuc3RhYmxlX2NhbmNlbENhbGxiYWNrPWZ1bmN0aW9uKGUpe2UuY2FsbGJhY2s9bnVsbH0sbi51bnN0YWJsZV9jb250aW51ZUV4ZWN1dGlvbj1mdW5jdGlvbigpe2h8fG18fChoPSEwLEYoUykpfSxuLnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpezA+ZXx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6Tj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sbi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBwfSxuLnVuc3RhYmxlX2dldEZpcnN0Q2FsbGJhY2tOb2RlPWZ1bmN0aW9uKCl7cmV0dXJuIHIocyl9LG4udW5zdGFibGVfbmV4dD1mdW5jdGlvbihlKXtzd2l0Y2gocCl7Y2FzZSAxOmNhc2UgMjpjYXNlIDM6dmFyIG49MzticmVhaztkZWZhdWx0Om49cH12YXIgdD1wO3A9bjt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e3A9dH19LG4udW5zdGFibGVfcGF1c2VFeGVjdXRpb249ZnVuY3Rpb24oKXt9LG4udW5zdGFibGVfcmVxdWVzdFBhaW50PWZ1bmN0aW9uKCl7fSxuLnVuc3RhYmxlX3J1bldpdGhQcmlvcml0eT1mdW5jdGlvbihlLG4pe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgMzpjYXNlIDQ6Y2FzZSA1OmJyZWFrO2RlZmF1bHQ6ZT0zfXZhciB0PXA7cD1lO3RyeXtyZXR1cm4gbigpfWZpbmFsbHl7cD10fX0sbi51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrPWZ1bmN0aW9uKGUsbCxhKXt2YXIgdT1uLnVuc3RhYmxlX25vdygpO3N3aXRjaCgib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hP2E9Im51bWJlciI9PXR5cGVvZihhPWEuZGVsYXkpJiYwPGE/dSthOnU6YT11LGUpe2Nhc2UgMTp2YXIgbz0tMTticmVhaztjYXNlIDI6bz0yNTA7YnJlYWs7Y2FzZSA1Om89MTA3Mzc0MTgyMzticmVhaztjYXNlIDQ6bz0xZTQ7YnJlYWs7ZGVmYXVsdDpvPTVlM31yZXR1cm4gZT17aWQ6ZisrLGNhbGxiYWNrOmwscHJpb3JpdHlMZXZlbDplLHN0YXJ0VGltZTphLGV4cGlyYXRpb25UaW1lOm89YStvLHNvcnRJbmRleDotMX0sYT51PyhlLnNvcnRJbmRleD1hLHQoYyxlKSxudWxsPT09cihzKSYmZT09PXIoYykmJihnPyh5KHopLHo9LTEpOmc9ITAsUih3LGEtdSkpKTooZS5zb3J0SW5kZXg9byx0KHMsZSksaHx8bXx8KGg9ITAsRihTKSkpLGV9LG4udW5zdGFibGVfc2hvdWxkWWllbGQ9UCxuLnVuc3RhYmxlX3dyYXBDYWxsYmFjaz1mdW5jdGlvbihlKXt2YXIgbj1wO3JldHVybiBmdW5jdGlvbigpe3ZhciB0PXA7cD1uO3RyeXtyZXR1cm4gZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZmluYWxseXtwPXR9fX19LDE4MjYxNChlLG4sdCl7ZS5leHBvcnRzPXQoNTA4MjA3KX19XSk7"}},"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":"walmartfundholdings.com/js/bootstrap.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.927Z","timestamp":1785159267927,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /js/bootstrap.min.js HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"e87d-66136805-ece7bb8fdc88199;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 15348\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":59517,"size_decoded":15725,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (59232), with CRLF line terminators","md5":"b187846b778003722db4770f0ec69346","sha1":"fb9e33c65e7e929344ef951e048219f49a8812ec","sha256":"b803181c0425687ab56ee28bc2b93b145e2ac6f70b5a7b52dbf0e974ab9c7e65","sha512":"e712863500279e2bb54cb17afb0ad286520630d3718a7c854347f4d8e55e69168d040bfbacad6f784090137c269ab4a72f423e46d775fd93b7d4a7b5cb8c3bc8","ssdeep":"768:OP5XzvG/L9nq7D7o241fPnxPQ/nInR4UTVFjeRQxF6KrVm7MT9GF1vA4R5UAV297:OmluNnMtSLFqG4kd7s","tlshash":"3443b55a3258b83309de44a69032474bf7295d94b147806cb9bdacde1b3dc8272b7f78","first_seen":"2023-03-08T06:42:33Z","last_seen":"2026-07-27T13:35:41.708322Z","times_seen":97,"resource_available":true,"data":"LyohDQogICogQm9vdHN0cmFwIHY1LjEuMCAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLykNCiAgKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9ycyAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2dyYXBocy9jb250cmlidXRvcnMpDQogICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpDQogICovDQohZnVuY3Rpb24odCxlKXsib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJiJ1bmRlZmluZWQiIT10eXBlb2YgbW9kdWxlP21vZHVsZS5leHBvcnRzPWUocmVxdWlyZSgiQHBvcHBlcmpzL2NvcmUiKSk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJAcG9wcGVyanMvY29yZSJdLGUpOih0PSJ1bmRlZmluZWQiIT10eXBlb2YgZ2xvYmFsVGhpcz9nbG9iYWxUaGlzOnR8fHNlbGYpLmJvb3RzdHJhcD1lKHQuUG9wcGVyKX0odGhpcywoZnVuY3Rpb24odCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGUodCl7aWYodCYmdC5fX2VzTW9kdWxlKXJldHVybiB0O3ZhciBlPU9iamVjdC5jcmVhdGUobnVsbCk7cmV0dXJuIHQmJk9iamVjdC5rZXlzKHQpLmZvckVhY2goKGZ1bmN0aW9uKGkpe2lmKCJkZWZhdWx0IiE9PWkpe3ZhciBzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxpKTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxpLHMuZ2V0P3M6e2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbaV19fSl9fSkpLGUuZGVmYXVsdD10LE9iamVjdC5mcmVlemUoZSl9dmFyIGk9ZSh0KTtjb25zdCBzPXQ9PntsZXQgZT10LmdldEF0dHJpYnV0ZSgiZGF0YS1icy10YXJnZXQiKTtpZighZXx8IiMiPT09ZSl7bGV0IGk9dC5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZighaXx8IWkuaW5jbHVkZXMoIiMiKSYmIWkuc3RhcnRzV2l0aCgiLiIpKXJldHVybiBudWxsO2kuaW5jbHVkZXMoIiMiKSYmIWkuc3RhcnRzV2l0aCgiIyIpJiYoaT0iIyIraS5zcGxpdCgiIyIpWzFdKSxlPWkmJiIjIiE9PWk/aS50cmltKCk6bnVsbH1yZXR1cm4gZX0sbj10PT57Y29uc3QgZT1zKHQpO3JldHVybiBlJiZkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUpP2U6bnVsbH0sbz10PT57Y29uc3QgZT1zKHQpO3JldHVybiBlP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSk6bnVsbH0scj10PT57dC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgidHJhbnNpdGlvbmVuZCIpKX0sYT10PT4hKCF0fHwib2JqZWN0IiE9dHlwZW9mIHQpJiYodm9pZCAwIT09dC5qcXVlcnkmJih0PXRbMF0pLHZvaWQgMCE9PXQubm9kZVR5cGUpLGw9dD0+YSh0KT90LmpxdWVyeT90WzBdOnQ6InN0cmluZyI9PXR5cGVvZiB0JiZ0Lmxlbmd0aD4wP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodCk6bnVsbCxjPSh0LGUsaSk9PntPYmplY3Qua2V5cyhpKS5mb3JFYWNoKHM9Pntjb25zdCBuPWlbc10sbz1lW3NdLHI9byYmYShvKT8iZWxlbWVudCI6bnVsbD09KGw9byk/IiIrbDp7fS50b1N0cmluZy5jYWxsKGwpLm1hdGNoKC9ccyhbYS16XSspL2kpWzFdLnRvTG93ZXJDYXNlKCk7dmFyIGw7aWYoIW5ldyBSZWdFeHAobikudGVzdChyKSl0aHJvdyBuZXcgVHlwZUVycm9yKGAke3QudG9VcHBlckNhc2UoKX06IE9wdGlvbiAiJHtzfSIgcHJvdmlkZWQgdHlwZSAiJHtyfSIgYnV0IGV4cGVjdGVkIHR5cGUgIiR7bn0iLmApfSl9LGg9dD0+ISghYSh0KXx8MD09PXQuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpJiYidmlzaWJsZSI9PT1nZXRDb21wdXRlZFN0eWxlKHQpLmdldFByb3BlcnR5VmFsdWUoInZpc2liaWxpdHkiKSxkPXQ9PiF0fHx0Lm5vZGVUeXBlIT09Tm9kZS5FTEVNRU5UX05PREV8fCEhdC5jbGFzc0xpc3QuY29udGFpbnMoImRpc2FibGVkIil8fCh2b2lkIDAhPT10LmRpc2FibGVkP3QuZGlzYWJsZWQ6dC5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIikmJiJmYWxzZSIhPT10LmdldEF0dHJpYnV0ZSgiZGlzYWJsZWQiKSksdT10PT57aWYoIWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hdHRhY2hTaGFkb3cpcmV0dXJuIG51bGw7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQuZ2V0Um9vdE5vZGUpe2NvbnN0IGU9dC5nZXRSb290Tm9kZSgpO3JldHVybiBlIGluc3RhbmNlb2YgU2hhZG93Um9vdD9lOm51bGx9cmV0dXJuIHQgaW5zdGFuY2VvZiBTaGFkb3dSb290P3Q6dC5wYXJlbnROb2RlP3UodC5wYXJlbnROb2RlKTpudWxsfSxnPSgpPT57fSxwPXQ9Pnt0Lm9mZnNldEhlaWdodH0sZj0oKT0+e2NvbnN0e2pRdWVyeTp0fT13aW5kb3c7cmV0dXJuIHQmJiFkb2N1bWVudC5ib2R5Lmhhc0F0dHJpYnV0ZSgiZGF0YS1icy1uby1qcXVlcnkiKT90Om51bGx9LF89W10sbT0oKT0+InJ0bCI9PT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGlyLGI9dD0+e3ZhciBlO2U9KCk9Pntjb25zdCBlPWYoKTtpZihlKXtjb25zdCBpPXQuTkFNRSxzPWUuZm5baV07ZS5mbltpXT10LmpRdWVyeUludGVyZmFjZSxlLmZuW2ldLkNvbnN0cnVjdG9yPXQsZS5mbltpXS5ub0NvbmZsaWN0PSgpPT4oZS5mbltpXT1zLHQualF1ZXJ5SW50ZXJmYWNlKX19LCJsb2FkaW5nIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/KF8ubGVuZ3RofHxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwoKT0+e18uZm9yRWFjaCh0PT50KCkpfSksXy5wdXNoKGUpKTplKCl9LHY9dD0+eyJmdW5jdGlvbiI9PXR5cGVvZiB0JiZ0KCl9LHk9KHQsZSxpPSEwKT0+e2lmKCFpKXJldHVybiB2b2lkIHYodCk7Y29uc3Qgcz0odD0+e2lmKCF0KXJldHVybiAwO2xldHt0cmFuc2l0aW9uRHVyYXRpb246ZSx0cmFuc2l0aW9uRGVsYXk6aX09d2luZG93LmdldENvbXB1dGVkU3R5bGUodCk7Y29uc3Qgcz1OdW1iZXIucGFyc2VGbG9hdChlKSxuPU51bWJlci5wYXJzZUZsb2F0KGkpO3JldHVybiBzfHxuPyhlPWUuc3BsaXQoIiwiKVswXSxpPWkuc3BsaXQoIiwiKVswXSwxZTMqKE51bWJlci5wYXJzZUZsb2F0KGUpK051bWJlci5wYXJzZUZsb2F0KGkpKSk6MH0pKGUpKzU7bGV0IG49ITE7Y29uc3Qgbz0oe3RhcmdldDppfSk9PntpPT09ZSYmKG49ITAsZS5yZW1vdmVFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9uZW5kIixvKSx2KHQpKX07ZS5hZGRFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9uZW5kIixvKSxzZXRUaW1lb3V0KCgpPT57bnx8cihlKX0scyl9LHc9KHQsZSxpLHMpPT57bGV0IG49dC5pbmRleE9mKGUpO2lmKC0xPT09bilyZXR1cm4gdFshaSYmcz90Lmxlbmd0aC0xOjBdO2NvbnN0IG89dC5sZW5ndGg7cmV0dXJuIG4rPWk/MTotMSxzJiYobj0obitvKSVvKSx0W01hdGgubWF4KDAsTWF0aC5taW4obixvLTEpKV19LEU9L1teLl0qKD89XC4uKilcLnwuKi8sQT0vXC4uKi8sVD0vOjpcZCskLyxDPXt9O2xldCBrPTE7Y29uc3QgTD17bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91dCJ9LFM9L14obW91c2VlbnRlcnxtb3VzZWxlYXZlKS9pLE89bmV3IFNldChbImNsaWNrIiwiZGJsY2xpY2siLCJtb3VzZXVwIiwibW91c2Vkb3duIiwiY29udGV4dG1lbnUiLCJtb3VzZXdoZWVsIiwiRE9NTW91c2VTY3JvbGwiLCJtb3VzZW92ZXIiLCJtb3VzZW91dCIsIm1vdXNlbW92ZSIsInNlbGVjdHN0YXJ0Iiwic2VsZWN0ZW5kIiwia2V5ZG93biIsImtleXByZXNzIiwia2V5dXAiLCJvcmllbnRhdGlvbmNoYW5nZSIsInRvdWNoc3RhcnQiLCJ0b3VjaG1vdmUiLCJ0b3VjaGVuZCIsInRvdWNoY2FuY2VsIiwicG9pbnRlcmRvd24iLCJwb2ludGVybW92ZSIsInBvaW50ZXJ1cCIsInBvaW50ZXJsZWF2ZSIsInBvaW50ZXJjYW5jZWwiLCJnZXN0dXJlc3RhcnQiLCJnZXN0dXJlY2hhbmdlIiwiZ2VzdHVyZWVuZCIsImZvY3VzIiwiYmx1ciIsImNoYW5nZSIsInJlc2V0Iiwic2VsZWN0Iiwic3VibWl0IiwiZm9jdXNpbiIsImZvY3Vzb3V0IiwibG9hZCIsInVubG9hZCIsImJlZm9yZXVubG9hZCIsInJlc2l6ZSIsIm1vdmUiLCJET01Db250ZW50TG9hZGVkIiwicmVhZHlzdGF0ZWNoYW5nZSIsImVycm9yIiwiYWJvcnQiLCJzY3JvbGwiXSk7ZnVuY3Rpb24gTih0LGUpe3JldHVybiBlJiZgJHtlfTo6JHtrKyt9YHx8dC51aWRFdmVudHx8aysrfWZ1bmN0aW9uIEQodCl7Y29uc3QgZT1OKHQpO3JldHVybiB0LnVpZEV2ZW50PWUsQ1tlXT1DW2VdfHx7fSxDW2VdfWZ1bmN0aW9uIEkodCxlLGk9bnVsbCl7Y29uc3Qgcz1PYmplY3Qua2V5cyh0KTtmb3IobGV0IG49MCxvPXMubGVuZ3RoO248bztuKyspe2NvbnN0IG89dFtzW25dXTtpZihvLm9yaWdpbmFsSGFuZGxlcj09PWUmJm8uZGVsZWdhdGlvblNlbGVjdG9yPT09aSlyZXR1cm4gb31yZXR1cm4gbnVsbH1mdW5jdGlvbiB4KHQsZSxpKXtjb25zdCBzPSJzdHJpbmciPT10eXBlb2YgZSxuPXM/aTplO2xldCBvPWoodCk7cmV0dXJuIE8uaGFzKG8pfHwobz10KSxbcyxuLG9dfWZ1bmN0aW9uIFAodCxlLGkscyxuKXtpZigic3RyaW5nIiE9dHlwZW9mIGV8fCF0KXJldHVybjtpZihpfHwoaT1zLHM9bnVsbCksUy50ZXN0KGUpKXtjb25zdCB0PXQ9PmZ1bmN0aW9uKGUpe2lmKCFlLnJlbGF0ZWRUYXJnZXR8fGUucmVsYXRlZFRhcmdldCE9PWUuZGVsZWdhdGVUYXJnZXQmJiFlLmRlbGVnYXRlVGFyZ2V0LmNvbnRhaW5zKGUucmVsYXRlZFRhcmdldCkpcmV0dXJuIHQuY2FsbCh0aGlzLGUpfTtzP3M9dChzKTppPXQoaSl9Y29uc3RbbyxyLGFdPXgoZSxpLHMpLGw9RCh0KSxjPWxbYV18fChsW2FdPXt9KSxoPUkoYyxyLG8/aTpudWxsKTtpZihoKXJldHVybiB2b2lkKGgub25lT2ZmPWgub25lT2ZmJiZuKTtjb25zdCBkPU4ocixlLnJlcGxhY2UoRSwiIikpLHU9bz9mdW5jdGlvbih0LGUsaSl7cmV0dXJuIGZ1bmN0aW9uIHMobil7Y29uc3Qgbz10LnF1ZXJ5U2VsZWN0b3JBbGwoZSk7Zm9yKGxldHt0YXJnZXQ6cn09bjtyJiZyIT09dGhpcztyPXIucGFyZW50Tm9kZSlmb3IobGV0IGE9by5sZW5ndGg7YS0tOylpZihvW2FdPT09cilyZXR1cm4gbi5kZWxlZ2F0ZVRhcmdldD1yLHMub25lT2ZmJiZILm9mZih0LG4udHlwZSxlLGkpLGkuYXBwbHkocixbbl0pO3JldHVybiBudWxsfX0odCxpLHMpOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIGZ1bmN0aW9uIGkocyl7cmV0dXJuIHMuZGVsZWdhdGVUYXJnZXQ9dCxpLm9uZU9mZiYmSC5vZmYodCxzLnR5cGUsZSksZS5hcHBseSh0LFtzXSl9fSh0LGkpO3UuZGVsZWdhdGlvblNlbGVjdG9yPW8/aTpudWxsLHUub3JpZ2luYWxIYW5kbGVyPXIsdS5vbmVPZmY9bix1LnVpZEV2ZW50PWQsY1tkXT11LHQuYWRkRXZlbnRMaXN0ZW5lcihhLHUsbyl9ZnVuY3Rpb24gTSh0LGUsaSxzLG4pe2NvbnN0IG89SShlW2ldLHMsbik7byYmKHQucmVtb3ZlRXZlbnRMaXN0ZW5lcihpLG8sQm9vbGVhbihuKSksZGVsZXRlIGVbaV1bby51aWRFdmVudF0pfWZ1bmN0aW9uIGoodCl7cmV0dXJuIHQ9dC5yZXBsYWNlKEEsIiIpLExbdF18fHR9Y29uc3QgSD17b24odCxlLGkscyl7UCh0LGUsaSxzLCExKX0sb25lKHQsZSxpLHMpe1AodCxlLGkscywhMCl9LG9mZih0LGUsaSxzKXtpZigic3RyaW5nIiE9dHlwZW9mIGV8fCF0KXJldHVybjtjb25zdFtuLG8scl09eChlLGkscyksYT1yIT09ZSxsPUQodCksYz1lLnN0YXJ0c1dpdGgoIi4iKTtpZih2b2lkIDAhPT1vKXtpZighbHx8IWxbcl0pcmV0dXJuO3JldHVybiB2b2lkIE0odCxsLHIsbyxuP2k6bnVsbCl9YyYmT2JqZWN0LmtleXMobCkuZm9yRWFjaChpPT57IWZ1bmN0aW9uKHQsZSxpLHMpe2NvbnN0IG49ZVtpXXx8e307T2JqZWN0LmtleXMobikuZm9yRWFjaChvPT57aWYoby5pbmNsdWRlcyhzKSl7Y29uc3Qgcz1uW29dO00odCxlLGkscy5vcmlnaW5hbEhhbmRsZXIscy5kZWxlZ2F0aW9uU2VsZWN0b3IpfX0pfSh0LGwsaSxlLnNsaWNlKDEpKX0pO2NvbnN0IGg9bFtyXXx8e307T2JqZWN0LmtleXMoaCkuZm9yRWFjaChpPT57Y29uc3Qgcz1pLnJlcGxhY2UoVCwiIik7aWYoIWF8fGUuaW5jbHVkZXMocykpe2NvbnN0IGU9aFtpXTtNKHQsbCxyLGUub3JpZ2luYWxIYW5kbGVyLGUuZGVsZWdhdGlvblNlbGVjdG9yKX19KX0sdHJpZ2dlcih0LGUsaSl7aWYoInN0cmluZyIhPXR5cGVvZiBlfHwhdClyZXR1cm4gbnVsbDtjb25zdCBzPWYoKSxuPWooZSksbz1lIT09bixyPU8uaGFzKG4pO2xldCBhLGw9ITAsYz0hMCxoPSExLGQ9bnVsbDtyZXR1cm4gbyYmcyYmKGE9cy5FdmVudChlLGkpLHModCkudHJpZ2dlcihhKSxsPSFhLmlzUHJvcGFnYXRpb25TdG9wcGVkKCksYz0hYS5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCgpLGg9YS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSkscj8oZD1kb2N1bWVudC5jcmVhdGVFdmVudCgiSFRNTEV2ZW50cyIpLGQuaW5pdEV2ZW50KG4sbCwhMCkpOmQ9bmV3IEN1c3RvbUV2ZW50KGUse2J1YmJsZXM6bCxjYW5jZWxhYmxlOiEwfSksdm9pZCAwIT09aSYmT2JqZWN0LmtleXMoaSkuZm9yRWFjaCh0PT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGQsdCx7Z2V0OigpPT5pW3RdfSl9KSxoJiZkLnByZXZlbnREZWZhdWx0KCksYyYmdC5kaXNwYXRjaEV2ZW50KGQpLGQuZGVmYXVsdFByZXZlbnRlZCYmdm9pZCAwIT09YSYmYS5wcmV2ZW50RGVmYXVsdCgpLGR9fSxCPW5ldyBNYXA7dmFyIHo9e3NldCh0LGUsaSl7Qi5oYXModCl8fEIuc2V0KHQsbmV3IE1hcCk7Y29uc3Qgcz1CLmdldCh0KTtzLmhhcyhlKXx8MD09PXMuc2l6ZT9zLnNldChlLGkpOmNvbnNvbGUuZXJyb3IoYEJvb3RzdHJhcCBkb2Vzbid0IGFsbG93IG1vcmUgdGhhbiBvbmUgaW5zdGFuY2UgcGVyIGVsZW1lbnQuIEJvdW5kIGluc3RhbmNlOiAke0FycmF5LmZyb20ocy5rZXlzKCkpWzBdfS5gKX0sZ2V0Oih0LGUpPT5CLmhhcyh0KSYmQi5nZXQodCkuZ2V0KGUpfHxudWxsLHJlbW92ZSh0LGUpe2lmKCFCLmhhcyh0KSlyZXR1cm47Y29uc3QgaT1CLmdldCh0KTtpLmRlbGV0ZShlKSwwPT09aS5zaXplJiZCLmRlbGV0ZSh0KX19O2NsYXNzIFJ7Y29uc3RydWN0b3IodCl7KHQ9bCh0KSkmJih0aGlzLl9lbGVtZW50PXQsei5zZXQodGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZLHRoaXMpKX1kaXNwb3NlKCl7ei5yZW1vdmUodGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkRBVEFfS0VZKSxILm9mZih0aGlzLl9lbGVtZW50LHRoaXMuY29uc3RydWN0b3IuRVZFTlRfS0VZKSxPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKS5mb3JFYWNoKHQ9Pnt0aGlzW3RdPW51bGx9KX1fcXVldWVDYWxsYmFjayh0LGUsaT0hMCl7eSh0LGUsaSl9c3RhdGljIGdldEluc3RhbmNlKHQpe3JldHVybiB6LmdldChsKHQpLHRoaXMuREFUQV9LRVkpfXN0YXRpYyBnZXRPckNyZWF0ZUluc3RhbmNlKHQsZT17fSl7cmV0dXJuIHRoaXMuZ2V0SW5zdGFuY2UodCl8fG5ldyB0aGlzKHQsIm9iamVjdCI9PXR5cGVvZiBlP2U6bnVsbCl9c3RhdGljIGdldCBWRVJTSU9OKCl7cmV0dXJuIjUuMS4wIn1zdGF0aWMgZ2V0IE5BTUUoKXt0aHJvdyBuZXcgRXJyb3IoJ1lvdSBoYXZlIHRvIGltcGxlbWVudCB0aGUgc3RhdGljIG1ldGhvZCAiTkFNRSIsIGZvciBlYWNoIGNvbXBvbmVudCEnKX1zdGF0aWMgZ2V0IERBVEFfS0VZKCl7cmV0dXJuImJzLiIrdGhpcy5OQU1FfXN0YXRpYyBnZXQgRVZFTlRfS0VZKCl7cmV0dXJuIi4iK3RoaXMuREFUQV9LRVl9fWNvbnN0IEY9KHQsZT0iaGlkZSIpPT57Y29uc3QgaT0iY2xpY2suZGlzbWlzcyIrdC5FVkVOVF9LRVkscz10Lk5BTUU7SC5vbihkb2N1bWVudCxpLGBbZGF0YS1icy1kaXNtaXNzPSIke3N9Il1gLChmdW5jdGlvbihpKXtpZihbIkEiLCJBUkVBIl0uaW5jbHVkZXModGhpcy50YWdOYW1lKSYmaS5wcmV2ZW50RGVmYXVsdCgpLGQodGhpcykpcmV0dXJuO2NvbnN0IG49byh0aGlzKXx8dGhpcy5jbG9zZXN0KCIuIitzKTt0LmdldE9yQ3JlYXRlSW5zdGFuY2UobilbZV0oKX0pKX07Y2xhc3MgVyBleHRlbmRzIFJ7c3RhdGljIGdldCBOQU1FKCl7cmV0dXJuImFsZXJ0In1jbG9zZSgpe2lmKEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJjbG9zZS5icy5hbGVydCIpLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO3RoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgic2hvdyIpO2NvbnN0IHQ9dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoImZhZGUiKTt0aGlzLl9xdWV1ZUNhbGxiYWNrKCgpPT50aGlzLl9kZXN0cm95RWxlbWVudCgpLHRoaXMuX2VsZW1lbnQsdCl9X2Rlc3Ryb3lFbGVtZW50KCl7dGhpcy5fZWxlbWVudC5yZW1vdmUoKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCwiY2xvc2VkLmJzLmFsZXJ0IiksdGhpcy5kaXNwb3NlKCl9c3RhdGljIGpRdWVyeUludGVyZmFjZSh0KXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGU9Vy5nZXRPckNyZWF0ZUluc3RhbmNlKHRoaXMpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7aWYodm9pZCAwPT09ZVt0XXx8dC5zdGFydHNXaXRoKCJfIil8fCJjb25zdHJ1Y3RvciI9PT10KXRocm93IG5ldyBUeXBlRXJyb3IoYE5vIG1ldGhvZCBuYW1lZCAiJHt0fSJgKTtlW3RdKHRoaXMpfX0pKX19RihXLCJjbG9zZSIpLGIoVyk7Y2xhc3MgJCBleHRlbmRzIFJ7c3RhdGljIGdldCBOQU1FKCl7cmV0dXJuImJ1dHRvbiJ9dG9nZ2xlKCl7dGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiKSl9c3RhdGljIGpRdWVyeUludGVyZmFjZSh0KXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGU9JC5nZXRPckNyZWF0ZUluc3RhbmNlKHRoaXMpOyJ0b2dnbGUiPT09dCYmZVt0XSgpfSkpfX1mdW5jdGlvbiBxKHQpe3JldHVybiJ0cnVlIj09PXR8fCJmYWxzZSIhPT10JiYodD09PU51bWJlcih0KS50b1N0cmluZygpP051bWJlcih0KToiIj09PXR8fCJudWxsIj09PXQ/bnVsbDp0KX1mdW5jdGlvbiBVKHQpe3JldHVybiB0LnJlcGxhY2UoL1tBLVpdL2csdD0+Ii0iK3QudG9Mb3dlckNhc2UoKSl9SC5vbihkb2N1bWVudCwiY2xpY2suYnMuYnV0dG9uLmRhdGEtYXBpIiwnW2RhdGEtYnMtdG9nZ2xlPSJidXR0b24iXScsdD0+e3QucHJldmVudERlZmF1bHQoKTtjb25zdCBlPXQudGFyZ2V0LmNsb3Nlc3QoJ1tkYXRhLWJzLXRvZ2dsZT0iYnV0dG9uIl0nKTskLmdldE9yQ3JlYXRlSW5zdGFuY2UoZSkudG9nZ2xlKCl9KSxiKCQpO2NvbnN0IEs9e3NldERhdGFBdHRyaWJ1dGUodCxlLGkpe3Quc2V0QXR0cmlidXRlKCJkYXRhLWJzLSIrVShlKSxpKX0scmVtb3ZlRGF0YUF0dHJpYnV0ZSh0LGUpe3QucmVtb3ZlQXR0cmlidXRlKCJkYXRhLWJzLSIrVShlKSl9LGdldERhdGFBdHRyaWJ1dGVzKHQpe2lmKCF0KXJldHVybnt9O2NvbnN0IGU9e307cmV0dXJuIE9iamVjdC5rZXlzKHQuZGF0YXNldCkuZmlsdGVyKHQ9PnQuc3RhcnRzV2l0aCgiYnMiKSkuZm9yRWFjaChpPT57bGV0IHM9aS5yZXBsYWNlKC9eYnMvLCIiKTtzPXMuY2hhckF0KDApLnRvTG93ZXJDYXNlKCkrcy5zbGljZSgxLHMubGVuZ3RoKSxlW3NdPXEodC5kYXRhc2V0W2ldKX0pLGV9LGdldERhdGFBdHRyaWJ1dGU6KHQsZSk9PnEodC5nZXRBdHRyaWJ1dGUoImRhdGEtYnMtIitVKGUpKSksb2Zmc2V0KHQpe2NvbnN0IGU9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm57dG9wOmUudG9wK3dpbmRvdy5wYWdlWU9mZnNldCxsZWZ0OmUubGVmdCt3aW5kb3cucGFnZVhPZmZzZXR9fSxwb3NpdGlvbjp0PT4oe3RvcDp0Lm9mZnNldFRvcCxsZWZ0OnQub2Zmc2V0TGVmdH0pfSxWPXtmaW5kOih0LGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KT0+W10uY29uY2F0KC4uLkVsZW1lbnQucHJvdG90eXBlLnF1ZXJ5U2VsZWN0b3JBbGwuY2FsbChlLHQpKSxmaW5kT25lOih0LGU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KT0+RWxlbWVudC5wcm90b3R5cGUucXVlcnlTZWxlY3Rvci5jYWxsKGUsdCksY2hpbGRyZW46KHQsZSk9PltdLmNvbmNhdCguLi50LmNoaWxkcmVuKS5maWx0ZXIodD0+dC5tYXRjaGVzKGUpKSxwYXJlbnRzKHQsZSl7Y29uc3QgaT1bXTtsZXQgcz10LnBhcmVudE5vZGU7Zm9yKDtzJiZzLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREUmJjMhPT1zLm5vZGVUeXBlOylzLm1hdGNoZXMoZSkmJmkucHVzaChzKSxzPXMucGFyZW50Tm9kZTtyZXR1cm4gaX0scHJldih0LGUpe2xldCBpPXQucHJldmlvdXNFbGVtZW50U2libGluZztmb3IoO2k7KXtpZihpLm1hdGNoZXMoZSkpcmV0dXJuW2ldO2k9aS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nfXJldHVybltdfSxuZXh0KHQsZSl7bGV0IGk9dC5uZXh0RWxlbWVudFNpYmxpbmc7Zm9yKDtpOyl7aWYoaS5tYXRjaGVzKGUpKXJldHVybltpXTtpPWkubmV4dEVsZW1lbnRTaWJsaW5nfXJldHVybltdfSxmb2N1c2FibGVDaGlsZHJlbih0KXtjb25zdCBlPVsiYSIsImJ1dHRvbiIsImlucHV0IiwidGV4dGFyZWEiLCJzZWxlY3QiLCJkZXRhaWxzIiwiW3RhYmluZGV4XSIsJ1tjb250ZW50ZWRpdGFibGU9InRydWUiXSddLm1hcCh0PT50Kyc6bm90KFt0YWJpbmRleF49Ii0iXSknKS5qb2luKCIsICIpO3JldHVybiB0aGlzLmZpbmQoZSx0KS5maWx0ZXIodD0+IWQodCkmJmgodCkpfX0sWD17aW50ZXJ2YWw6NWUzLGtleWJvYXJkOiEwLHNsaWRlOiExLHBhdXNlOiJob3ZlciIsd3JhcDohMCx0b3VjaDohMH0sWT17aW50ZXJ2YWw6IihudW1iZXJ8Ym9vbGVhbikiLGtleWJvYXJkOiJib29sZWFuIixzbGlkZToiKGJvb2xlYW58c3RyaW5nKSIscGF1c2U6IihzdHJpbmd8Ym9vbGVhbikiLHdyYXA6ImJvb2xlYW4iLHRvdWNoOiJib29sZWFuIn0sUT0ibmV4dCIsRz0icHJldiIsWj0ibGVmdCIsSj0icmlnaHQiLHR0PXtBcnJvd0xlZnQ6SixBcnJvd1JpZ2h0Olp9O2NsYXNzIGV0IGV4dGVuZHMgUntjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKHQpLHRoaXMuX2l0ZW1zPW51bGwsdGhpcy5faW50ZXJ2YWw9bnVsbCx0aGlzLl9hY3RpdmVFbGVtZW50PW51bGwsdGhpcy5faXNQYXVzZWQ9ITEsdGhpcy5faXNTbGlkaW5nPSExLHRoaXMudG91Y2hUaW1lb3V0PW51bGwsdGhpcy50b3VjaFN0YXJ0WD0wLHRoaXMudG91Y2hEZWx0YVg9MCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMuX2luZGljYXRvcnNFbGVtZW50PVYuZmluZE9uZSgiLmNhcm91c2VsLWluZGljYXRvcnMiLHRoaXMuX2VsZW1lbnQpLHRoaXMuX3RvdWNoU3VwcG9ydGVkPSJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fHxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHM+MCx0aGlzLl9wb2ludGVyRXZlbnQ9Qm9vbGVhbih3aW5kb3cuUG9pbnRlckV2ZW50KSx0aGlzLl9hZGRFdmVudExpc3RlbmVycygpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBYfXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJjYXJvdXNlbCJ9bmV4dCgpe3RoaXMuX3NsaWRlKFEpfW5leHRXaGVuVmlzaWJsZSgpeyFkb2N1bWVudC5oaWRkZW4mJmgodGhpcy5fZWxlbWVudCkmJnRoaXMubmV4dCgpfXByZXYoKXt0aGlzLl9zbGlkZShHKX1wYXVzZSh0KXt0fHwodGhpcy5faXNQYXVzZWQ9ITApLFYuZmluZE9uZSgiLmNhcm91c2VsLWl0ZW0tbmV4dCwgLmNhcm91c2VsLWl0ZW0tcHJldiIsdGhpcy5fZWxlbWVudCkmJihyKHRoaXMuX2VsZW1lbnQpLHRoaXMuY3ljbGUoITApKSxjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsfWN5Y2xlKHQpe3R8fCh0aGlzLl9pc1BhdXNlZD0hMSksdGhpcy5faW50ZXJ2YWwmJihjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsKSx0aGlzLl9jb25maWcmJnRoaXMuX2NvbmZpZy5pbnRlcnZhbCYmIXRoaXMuX2lzUGF1c2VkJiYodGhpcy5fdXBkYXRlSW50ZXJ2YWwoKSx0aGlzLl9pbnRlcnZhbD1zZXRJbnRlcnZhbCgoZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlP3RoaXMubmV4dFdoZW5WaXNpYmxlOnRoaXMubmV4dCkuYmluZCh0aGlzKSx0aGlzLl9jb25maWcuaW50ZXJ2YWwpKX10byh0KXt0aGlzLl9hY3RpdmVFbGVtZW50PVYuZmluZE9uZSgiLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIix0aGlzLl9lbGVtZW50KTtjb25zdCBlPXRoaXMuX2dldEl0ZW1JbmRleCh0aGlzLl9hY3RpdmVFbGVtZW50KTtpZih0PnRoaXMuX2l0ZW1zLmxlbmd0aC0xfHx0PDApcmV0dXJuO2lmKHRoaXMuX2lzU2xpZGluZylyZXR1cm4gdm9pZCBILm9uZSh0aGlzLl9lbGVtZW50LCJzbGlkLmJzLmNhcm91c2VsIiwoKT0+dGhpcy50byh0KSk7aWYoZT09PXQpcmV0dXJuIHRoaXMucGF1c2UoKSx2b2lkIHRoaXMuY3ljbGUoKTtjb25zdCBpPXQ+ZT9ROkc7dGhpcy5fc2xpZGUoaSx0aGlzLl9pdGVtc1t0XSl9X2dldENvbmZpZyh0KXtyZXR1cm4gdD17Li4uWCwuLi5LLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpLC4uLiJvYmplY3QiPT10eXBlb2YgdD90Ont9fSxjKCJjYXJvdXNlbCIsdCxZKSx0fV9oYW5kbGVTd2lwZSgpe2NvbnN0IHQ9TWF0aC5hYnModGhpcy50b3VjaERlbHRhWCk7aWYodDw9NDApcmV0dXJuO2NvbnN0IGU9dC90aGlzLnRvdWNoRGVsdGFYO3RoaXMudG91Y2hEZWx0YVg9MCxlJiZ0aGlzLl9zbGlkZShlPjA/SjpaKX1fYWRkRXZlbnRMaXN0ZW5lcnMoKXt0aGlzLl9jb25maWcua2V5Ym9hcmQmJkgub24odGhpcy5fZWxlbWVudCwia2V5ZG93bi5icy5jYXJvdXNlbCIsdD0+dGhpcy5fa2V5ZG93bih0KSksImhvdmVyIj09PXRoaXMuX2NvbmZpZy5wYXVzZSYmKEgub24odGhpcy5fZWxlbWVudCwibW91c2VlbnRlci5icy5jYXJvdXNlbCIsdD0+dGhpcy5wYXVzZSh0KSksSC5vbih0aGlzLl9lbGVtZW50LCJtb3VzZWxlYXZlLmJzLmNhcm91c2VsIix0PT50aGlzLmN5Y2xlKHQpKSksdGhpcy5fY29uZmlnLnRvdWNoJiZ0aGlzLl90b3VjaFN1cHBvcnRlZCYmdGhpcy5fYWRkVG91Y2hFdmVudExpc3RlbmVycygpfV9hZGRUb3VjaEV2ZW50TGlzdGVuZXJzKCl7Y29uc3QgdD10PT57IXRoaXMuX3BvaW50ZXJFdmVudHx8InBlbiIhPT10LnBvaW50ZXJUeXBlJiYidG91Y2giIT09dC5wb2ludGVyVHlwZT90aGlzLl9wb2ludGVyRXZlbnR8fCh0aGlzLnRvdWNoU3RhcnRYPXQudG91Y2hlc1swXS5jbGllbnRYKTp0aGlzLnRvdWNoU3RhcnRYPXQuY2xpZW50WH0sZT10PT57dGhpcy50b3VjaERlbHRhWD10LnRvdWNoZXMmJnQudG91Y2hlcy5sZW5ndGg+MT8wOnQudG91Y2hlc1swXS5jbGllbnRYLXRoaXMudG91Y2hTdGFydFh9LGk9dD0+eyF0aGlzLl9wb2ludGVyRXZlbnR8fCJwZW4iIT09dC5wb2ludGVyVHlwZSYmInRvdWNoIiE9PXQucG9pbnRlclR5cGV8fCh0aGlzLnRvdWNoRGVsdGFYPXQuY2xpZW50WC10aGlzLnRvdWNoU3RhcnRYKSx0aGlzLl9oYW5kbGVTd2lwZSgpLCJob3ZlciI9PT10aGlzLl9jb25maWcucGF1c2UmJih0aGlzLnBhdXNlKCksdGhpcy50b3VjaFRpbWVvdXQmJmNsZWFyVGltZW91dCh0aGlzLnRvdWNoVGltZW91dCksdGhpcy50b3VjaFRpbWVvdXQ9c2V0VGltZW91dCh0PT50aGlzLmN5Y2xlKHQpLDUwMCt0aGlzLl9jb25maWcuaW50ZXJ2YWwpKX07Vi5maW5kKCIuY2Fyb3VzZWwtaXRlbSBpbWciLHRoaXMuX2VsZW1lbnQpLmZvckVhY2godD0+e0gub24odCwiZHJhZ3N0YXJ0LmJzLmNhcm91c2VsIix0PT50LnByZXZlbnREZWZhdWx0KCkpfSksdGhpcy5fcG9pbnRlckV2ZW50PyhILm9uKHRoaXMuX2VsZW1lbnQsInBvaW50ZXJkb3duLmJzLmNhcm91c2VsIixlPT50KGUpKSxILm9uKHRoaXMuX2VsZW1lbnQsInBvaW50ZXJ1cC5icy5jYXJvdXNlbCIsdD0+aSh0KSksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJwb2ludGVyLWV2ZW50IikpOihILm9uKHRoaXMuX2VsZW1lbnQsInRvdWNoc3RhcnQuYnMuY2Fyb3VzZWwiLGU9PnQoZSkpLEgub24odGhpcy5fZWxlbWVudCwidG91Y2htb3ZlLmJzLmNhcm91c2VsIix0PT5lKHQpKSxILm9uKHRoaXMuX2VsZW1lbnQsInRvdWNoZW5kLmJzLmNhcm91c2VsIix0PT5pKHQpKSl9X2tleWRvd24odCl7aWYoL2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKSlyZXR1cm47Y29uc3QgZT10dFt0LmtleV07ZSYmKHQucHJldmVudERlZmF1bHQoKSx0aGlzLl9zbGlkZShlKSl9X2dldEl0ZW1JbmRleCh0KXtyZXR1cm4gdGhpcy5faXRlbXM9dCYmdC5wYXJlbnROb2RlP1YuZmluZCgiLmNhcm91c2VsLWl0ZW0iLHQucGFyZW50Tm9kZSk6W10sdGhpcy5faXRlbXMuaW5kZXhPZih0KX1fZ2V0SXRlbUJ5T3JkZXIodCxlKXtjb25zdCBpPXQ9PT1RO3JldHVybiB3KHRoaXMuX2l0ZW1zLGUsaSx0aGlzLl9jb25maWcud3JhcCl9X3RyaWdnZXJTbGlkZUV2ZW50KHQsZSl7Y29uc3QgaT10aGlzLl9nZXRJdGVtSW5kZXgodCkscz10aGlzLl9nZXRJdGVtSW5kZXgoVi5maW5kT25lKCIuYWN0aXZlLmNhcm91c2VsLWl0ZW0iLHRoaXMuX2VsZW1lbnQpKTtyZXR1cm4gSC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsInNsaWRlLmJzLmNhcm91c2VsIix7cmVsYXRlZFRhcmdldDp0LGRpcmVjdGlvbjplLGZyb206cyx0bzppfSl9X3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQodCl7aWYodGhpcy5faW5kaWNhdG9yc0VsZW1lbnQpe2NvbnN0IGU9Vi5maW5kT25lKCIuYWN0aXZlIix0aGlzLl9pbmRpY2F0b3JzRWxlbWVudCk7ZS5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSxlLnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1jdXJyZW50Iik7Y29uc3QgaT1WLmZpbmQoIltkYXRhLWJzLXRhcmdldF0iLHRoaXMuX2luZGljYXRvcnNFbGVtZW50KTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoO2UrKylpZihOdW1iZXIucGFyc2VJbnQoaVtlXS5nZXRBdHRyaWJ1dGUoImRhdGEtYnMtc2xpZGUtdG8iKSwxMCk9PT10aGlzLl9nZXRJdGVtSW5kZXgodCkpe2lbZV0uY2xhc3NMaXN0LmFkZCgiYWN0aXZlIiksaVtlXS5zZXRBdHRyaWJ1dGUoImFyaWEtY3VycmVudCIsInRydWUiKTticmVha319fV91cGRhdGVJbnRlcnZhbCgpe2NvbnN0IHQ9dGhpcy5fYWN0aXZlRWxlbWVudHx8Vi5maW5kT25lKCIuYWN0aXZlLmNhcm91c2VsLWl0ZW0iLHRoaXMuX2VsZW1lbnQpO2lmKCF0KXJldHVybjtjb25zdCBlPU51bWJlci5wYXJzZUludCh0LmdldEF0dHJpYnV0ZSgiZGF0YS1icy1pbnRlcnZhbCIpLDEwKTtlPyh0aGlzLl9jb25maWcuZGVmYXVsdEludGVydmFsPXRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWx8fHRoaXMuX2NvbmZpZy5pbnRlcnZhbCx0aGlzLl9jb25maWcuaW50ZXJ2YWw9ZSk6dGhpcy5fY29uZmlnLmludGVydmFsPXRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWx8fHRoaXMuX2NvbmZpZy5pbnRlcnZhbH1fc2xpZGUodCxlKXtjb25zdCBpPXRoaXMuX2RpcmVjdGlvblRvT3JkZXIodCkscz1WLmZpbmRPbmUoIi5hY3RpdmUuY2Fyb3VzZWwtaXRlbSIsdGhpcy5fZWxlbWVudCksbj10aGlzLl9nZXRJdGVtSW5kZXgocyksbz1lfHx0aGlzLl9nZXRJdGVtQnlPcmRlcihpLHMpLHI9dGhpcy5fZ2V0SXRlbUluZGV4KG8pLGE9Qm9vbGVhbih0aGlzLl9pbnRlcnZhbCksbD1pPT09USxjPWw/ImNhcm91c2VsLWl0ZW0tc3RhcnQiOiJjYXJvdXNlbC1pdGVtLWVuZCIsaD1sPyJjYXJvdXNlbC1pdGVtLW5leHQiOiJjYXJvdXNlbC1pdGVtLXByZXYiLGQ9dGhpcy5fb3JkZXJUb0RpcmVjdGlvbihpKTtpZihvJiZvLmNsYXNzTGlzdC5jb250YWlucygiYWN0aXZlIikpcmV0dXJuIHZvaWQodGhpcy5faXNTbGlkaW5nPSExKTtpZih0aGlzLl9pc1NsaWRpbmcpcmV0dXJuO2lmKHRoaXMuX3RyaWdnZXJTbGlkZUV2ZW50KG8sZCkuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47aWYoIXN8fCFvKXJldHVybjt0aGlzLl9pc1NsaWRpbmc9ITAsYSYmdGhpcy5wYXVzZSgpLHRoaXMuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQobyksdGhpcy5fYWN0aXZlRWxlbWVudD1vO2NvbnN0IHU9KCk9PntILnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2xpZC5icy5jYXJvdXNlbCIse3JlbGF0ZWRUYXJnZXQ6byxkaXJlY3Rpb246ZCxmcm9tOm4sdG86cn0pfTtpZih0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygic2xpZGUiKSl7by5jbGFzc0xpc3QuYWRkKGgpLHAobykscy5jbGFzc0xpc3QuYWRkKGMpLG8uY2xhc3NMaXN0LmFkZChjKTtjb25zdCB0PSgpPT57by5jbGFzc0xpc3QucmVtb3ZlKGMsaCksby5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSxzLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIsaCxjKSx0aGlzLl9pc1NsaWRpbmc9ITEsc2V0VGltZW91dCh1LDApfTt0aGlzLl9xdWV1ZUNhbGxiYWNrKHQscywhMCl9ZWxzZSBzLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLG8uY2xhc3NMaXN0LmFkZCgiYWN0aXZlIiksdGhpcy5faXNTbGlkaW5nPSExLHUoKTthJiZ0aGlzLmN5Y2xlKCl9X2RpcmVjdGlvblRvT3JkZXIodCl7cmV0dXJuW0osWl0uaW5jbHVkZXModCk/bSgpP3Q9PT1aP0c6UTp0PT09Wj9ROkc6dH1fb3JkZXJUb0RpcmVjdGlvbih0KXtyZXR1cm5bUSxHXS5pbmNsdWRlcyh0KT9tKCk/dD09PUc/WjpKOnQ9PT1HP0o6Wjp0fXN0YXRpYyBjYXJvdXNlbEludGVyZmFjZSh0LGUpe2NvbnN0IGk9ZXQuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0LGUpO2xldHtfY29uZmlnOnN9PWk7Im9iamVjdCI9PXR5cGVvZiBlJiYocz17Li4ucywuLi5lfSk7Y29uc3Qgbj0ic3RyaW5nIj09dHlwZW9mIGU/ZTpzLnNsaWRlO2lmKCJudW1iZXIiPT10eXBlb2YgZSlpLnRvKGUpO2Vsc2UgaWYoInN0cmluZyI9PXR5cGVvZiBuKXtpZih2b2lkIDA9PT1pW25dKXRocm93IG5ldyBUeXBlRXJyb3IoYE5vIG1ldGhvZCBuYW1lZCAiJHtufSJgKTtpW25dKCl9ZWxzZSBzLmludGVydmFsJiZzLnJpZGUmJihpLnBhdXNlKCksaS5jeWNsZSgpKX1zdGF0aWMgalF1ZXJ5SW50ZXJmYWNlKHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7ZXQuY2Fyb3VzZWxJbnRlcmZhY2UodGhpcyx0KX0pKX1zdGF0aWMgZGF0YUFwaUNsaWNrSGFuZGxlcih0KXtjb25zdCBlPW8odGhpcyk7aWYoIWV8fCFlLmNsYXNzTGlzdC5jb250YWlucygiY2Fyb3VzZWwiKSlyZXR1cm47Y29uc3QgaT17Li4uSy5nZXREYXRhQXR0cmlidXRlcyhlKSwuLi5LLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMpfSxzPXRoaXMuZ2V0QXR0cmlidXRlKCJkYXRhLWJzLXNsaWRlLXRvIik7cyYmKGkuaW50ZXJ2YWw9ITEpLGV0LmNhcm91c2VsSW50ZXJmYWNlKGUsaSkscyYmZXQuZ2V0SW5zdGFuY2UoZSkudG8ocyksdC5wcmV2ZW50RGVmYXVsdCgpfX1ILm9uKGRvY3VtZW50LCJjbGljay5icy5jYXJvdXNlbC5kYXRhLWFwaSIsIltkYXRhLWJzLXNsaWRlXSwgW2RhdGEtYnMtc2xpZGUtdG9dIixldC5kYXRhQXBpQ2xpY2tIYW5kbGVyKSxILm9uKHdpbmRvdywibG9hZC5icy5jYXJvdXNlbC5kYXRhLWFwaSIsKCk9Pntjb25zdCB0PVYuZmluZCgnW2RhdGEtYnMtcmlkZT0iY2Fyb3VzZWwiXScpO2ZvcihsZXQgZT0wLGk9dC5sZW5ndGg7ZTxpO2UrKylldC5jYXJvdXNlbEludGVyZmFjZSh0W2VdLGV0LmdldEluc3RhbmNlKHRbZV0pKX0pLGIoZXQpO2NvbnN0IGl0PXt0b2dnbGU6ITAscGFyZW50Om51bGx9LHN0PXt0b2dnbGU6ImJvb2xlYW4iLHBhcmVudDoiKG51bGx8ZWxlbWVudCkifTtjbGFzcyBudCBleHRlbmRzIFJ7Y29uc3RydWN0b3IodCxlKXtzdXBlcih0KSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl90cmlnZ2VyQXJyYXk9W107Y29uc3QgaT1WLmZpbmQoJ1tkYXRhLWJzLXRvZ2dsZT0iY29sbGFwc2UiXScpO2ZvcihsZXQgdD0wLGU9aS5sZW5ndGg7dDxlO3QrKyl7Y29uc3QgZT1pW3RdLHM9bihlKSxvPVYuZmluZChzKS5maWx0ZXIodD0+dD09PXRoaXMuX2VsZW1lbnQpO251bGwhPT1zJiZvLmxlbmd0aCYmKHRoaXMuX3NlbGVjdG9yPXMsdGhpcy5fdHJpZ2dlckFycmF5LnB1c2goZSkpfXRoaXMuX2luaXRpYWxpemVDaGlsZHJlbigpLHRoaXMuX2NvbmZpZy5wYXJlbnR8fHRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyh0aGlzLl90cmlnZ2VyQXJyYXksdGhpcy5faXNTaG93bigpKSx0aGlzLl9jb25maWcudG9nZ2xlJiZ0aGlzLnRvZ2dsZSgpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBpdH1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4iY29sbGFwc2UifXRvZ2dsZSgpe3RoaXMuX2lzU2hvd24oKT90aGlzLmhpZGUoKTp0aGlzLnNob3coKX1zaG93KCl7aWYodGhpcy5faXNUcmFuc2l0aW9uaW5nfHx0aGlzLl9pc1Nob3duKCkpcmV0dXJuO2xldCB0LGU9W107aWYodGhpcy5fY29uZmlnLnBhcmVudCl7Y29uc3QgdD1WLmZpbmQoIi5jb2xsYXBzZSAuY29sbGFwc2UiLHRoaXMuX2NvbmZpZy5wYXJlbnQpO2U9Vi5maW5kKCIuc2hvdywgLmNvbGxhcHNpbmciLHRoaXMuX2NvbmZpZy5wYXJlbnQpLmZpbHRlcihlPT4hdC5pbmNsdWRlcyhlKSl9Y29uc3QgaT1WLmZpbmRPbmUodGhpcy5fc2VsZWN0b3IpO2lmKGUubGVuZ3RoKXtjb25zdCBzPWUuZmluZCh0PT5pIT09dCk7aWYodD1zP250LmdldEluc3RhbmNlKHMpOm51bGwsdCYmdC5faXNUcmFuc2l0aW9uaW5nKXJldHVybn1pZihILnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvdy5icy5jb2xsYXBzZSIpLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2UuZm9yRWFjaChlPT57aSE9PWUmJm50LmdldE9yQ3JlYXRlSW5zdGFuY2UoZSx7dG9nZ2xlOiExfSkuaGlkZSgpLHR8fHouc2V0KGUsImJzLmNvbGxhcHNlIixudWxsKX0pO2NvbnN0IHM9dGhpcy5fZ2V0RGltZW5zaW9uKCk7dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzZSIpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgiY29sbGFwc2luZyIpLHRoaXMuX2VsZW1lbnQuc3R5bGVbc109MCx0aGlzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModGhpcy5fdHJpZ2dlckFycmF5LCEwKSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITA7Y29uc3Qgbj0ic2Nyb2xsIisoc1swXS50b1VwcGVyQ2FzZSgpK3Muc2xpY2UoMSkpO3RoaXMuX3F1ZXVlQ2FsbGJhY2soKCk9Pnt0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzaW5nIiksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZSIsInNob3ciKSx0aGlzLl9lbGVtZW50LnN0eWxlW3NdPSIiLEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93bi5icy5jb2xsYXBzZSIpfSx0aGlzLl9lbGVtZW50LCEwKSx0aGlzLl9lbGVtZW50LnN0eWxlW3NdPXRoaXMuX2VsZW1lbnRbbl0rInB4In1oaWRlKCl7aWYodGhpcy5faXNUcmFuc2l0aW9uaW5nfHwhdGhpcy5faXNTaG93bigpKXJldHVybjtpZihILnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZS5icy5jb2xsYXBzZSIpLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2NvbnN0IHQ9dGhpcy5fZ2V0RGltZW5zaW9uKCk7dGhpcy5fZWxlbWVudC5zdHlsZVt0XT10aGlzLl9lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpW3RdKyJweCIscCh0aGlzLl9lbGVtZW50KSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoImNvbGxhcHNpbmciKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoImNvbGxhcHNlIiwic2hvdyIpO2NvbnN0IGU9dGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aDtmb3IobGV0IHQ9MDt0PGU7dCsrKXtjb25zdCBlPXRoaXMuX3RyaWdnZXJBcnJheVt0XSxpPW8oZSk7aSYmIXRoaXMuX2lzU2hvd24oaSkmJnRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyhbZV0sITEpfXRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMCx0aGlzLl9lbGVtZW50LnN0eWxlW3RdPSIiLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCk9Pnt0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzaW5nIiksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZSIpLEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJoaWRkZW4uYnMuY29sbGFwc2UiKX0sdGhpcy5fZWxlbWVudCwhMCl9X2lzU2hvd24odD10aGlzLl9lbGVtZW50KXtyZXR1cm4gdC5jbGFzc0xpc3QuY29udGFpbnMoInNob3ciKX1fZ2V0Q29uZmlnKHQpe3JldHVybih0PXsuLi5pdCwuLi5LLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpLC4uLnR9KS50b2dnbGU9Qm9vbGVhbih0LnRvZ2dsZSksdC5wYXJlbnQ9bCh0LnBhcmVudCksYygiY29sbGFwc2UiLHQsc3QpLHR9X2dldERpbWVuc2lvbigpe3JldHVybiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2UtaG9yaXpvbnRhbCIpPyJ3aWR0aCI6ImhlaWdodCJ9X2luaXRpYWxpemVDaGlsZHJlbigpe2lmKCF0aGlzLl9jb25maWcucGFyZW50KXJldHVybjtjb25zdCB0PVYuZmluZCgiLmNvbGxhcHNlIC5jb2xsYXBzZSIsdGhpcy5fY29uZmlnLnBhcmVudCk7Vi5maW5kKCdbZGF0YS1icy10b2dnbGU9ImNvbGxhcHNlIl0nLHRoaXMuX2NvbmZpZy5wYXJlbnQpLmZpbHRlcihlPT4hdC5pbmNsdWRlcyhlKSkuZm9yRWFjaCh0PT57Y29uc3QgZT1vKHQpO2UmJnRoaXMuX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyhbdF0sdGhpcy5faXNTaG93bihlKSl9KX1fYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzKHQsZSl7dC5sZW5ndGgmJnQuZm9yRWFjaCh0PT57ZT90LmNsYXNzTGlzdC5yZW1vdmUoImNvbGxhcHNlZCIpOnQuY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIiksdC5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLGUpfSl9c3RhdGljIGpRdWVyeUludGVyZmFjZSh0KXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGU9e307InN0cmluZyI9PXR5cGVvZiB0JiYvc2hvd3xoaWRlLy50ZXN0KHQpJiYoZS50b2dnbGU9ITEpO2NvbnN0IGk9bnQuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzLGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7aWYodm9pZCAwPT09aVt0XSl0aHJvdyBuZXcgVHlwZUVycm9yKGBObyBtZXRob2QgbmFtZWQgIiR7dH0iYCk7aVt0XSgpfX0pKX19SC5vbihkb2N1bWVudCwiY2xpY2suYnMuY29sbGFwc2UuZGF0YS1hcGkiLCdbZGF0YS1icy10b2dnbGU9ImNvbGxhcHNlIl0nLChmdW5jdGlvbih0KXsoIkEiPT09dC50YXJnZXQudGFnTmFtZXx8dC5kZWxlZ2F0ZVRhcmdldCYmIkEiPT09dC5kZWxlZ2F0ZVRhcmdldC50YWdOYW1lKSYmdC5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IGU9bih0aGlzKTtWLmZpbmQoZSkuZm9yRWFjaCh0PT57bnQuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0LHt0b2dnbGU6ITF9KS50b2dnbGUoKX0pfSkpLGIobnQpO2NvbnN0IG90PW5ldyBSZWdFeHAoIkFycm93VXB8QXJyb3dEb3dufEVzY2FwZSIpLHJ0PW0oKT8idG9wLWVuZCI6InRvcC1zdGFydCIsYXQ9bSgpPyJ0b3Atc3RhcnQiOiJ0b3AtZW5kIixsdD1tKCk/ImJvdHRvbS1lbmQiOiJib3R0b20tc3RhcnQiLGN0PW0oKT8iYm90dG9tLXN0YXJ0IjoiYm90dG9tLWVuZCIsaHQ9bSgpPyJsZWZ0LXN0YXJ0IjoicmlnaHQtc3RhcnQiLGR0PW0oKT8icmlnaHQtc3RhcnQiOiJsZWZ0LXN0YXJ0Iix1dD17b2Zmc2V0OlswLDJdLGJvdW5kYXJ5OiJjbGlwcGluZ1BhcmVudHMiLHJlZmVyZW5jZToidG9nZ2xlIixkaXNwbGF5OiJkeW5hbWljIixwb3BwZXJDb25maWc6bnVsbCxhdXRvQ2xvc2U6ITB9LGd0PXtvZmZzZXQ6IihhcnJheXxzdHJpbmd8ZnVuY3Rpb24pIixib3VuZGFyeToiKHN0cmluZ3xlbGVtZW50KSIscmVmZXJlbmNlOiIoc3RyaW5nfGVsZW1lbnR8b2JqZWN0KSIsZGlzcGxheToic3RyaW5nIixwb3BwZXJDb25maWc6IihudWxsfG9iamVjdHxmdW5jdGlvbikiLGF1dG9DbG9zZToiKGJvb2xlYW58c3RyaW5nKSJ9O2NsYXNzIHB0IGV4dGVuZHMgUntjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKHQpLHRoaXMuX3BvcHBlcj1udWxsLHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcoZSksdGhpcy5fbWVudT10aGlzLl9nZXRNZW51RWxlbWVudCgpLHRoaXMuX2luTmF2YmFyPXRoaXMuX2RldGVjdE5hdmJhcigpfXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiB1dH1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIGd0fXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJkcm9wZG93biJ9dG9nZ2xlKCl7cmV0dXJuIHRoaXMuX2lzU2hvd24oKT90aGlzLmhpZGUoKTp0aGlzLnNob3coKX1zaG93KCl7aWYoZCh0aGlzLl9lbGVtZW50KXx8dGhpcy5faXNTaG93bih0aGlzLl9tZW51KSlyZXR1cm47Y29uc3QgdD17cmVsYXRlZFRhcmdldDp0aGlzLl9lbGVtZW50fTtpZihILnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvdy5icy5kcm9wZG93biIsdCkuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47Y29uc3QgZT1wdC5nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTt0aGlzLl9pbk5hdmJhcj9LLnNldERhdGFBdHRyaWJ1dGUodGhpcy5fbWVudSwicG9wcGVyIiwibm9uZSIpOnRoaXMuX2NyZWF0ZVBvcHBlcihlKSwib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmIWUuY2xvc2VzdCgiLm5hdmJhci1uYXYiKSYmW10uY29uY2F0KC4uLmRvY3VtZW50LmJvZHkuY2hpbGRyZW4pLmZvckVhY2godD0+SC5vbih0LCJtb3VzZW92ZXIiLGcpKSx0aGlzLl9lbGVtZW50LmZvY3VzKCksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCEwKSx0aGlzLl9tZW51LmNsYXNzTGlzdC5hZGQoInNob3ciKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoInNob3ciKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvd24uYnMuZHJvcGRvd24iLHQpfWhpZGUoKXtpZihkKHRoaXMuX2VsZW1lbnQpfHwhdGhpcy5faXNTaG93bih0aGlzLl9tZW51KSlyZXR1cm47Y29uc3QgdD17cmVsYXRlZFRhcmdldDp0aGlzLl9lbGVtZW50fTt0aGlzLl9jb21wbGV0ZUhpZGUodCl9ZGlzcG9zZSgpe3RoaXMuX3BvcHBlciYmdGhpcy5fcG9wcGVyLmRlc3Ryb3koKSxzdXBlci5kaXNwb3NlKCl9dXBkYXRlKCl7dGhpcy5faW5OYXZiYXI9dGhpcy5fZGV0ZWN0TmF2YmFyKCksdGhpcy5fcG9wcGVyJiZ0aGlzLl9wb3BwZXIudXBkYXRlKCl9X2NvbXBsZXRlSGlkZSh0KXtILnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZS5icy5kcm9wZG93biIsdCkuZGVmYXVsdFByZXZlbnRlZHx8KCJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZbXS5jb25jYXQoLi4uZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaCh0PT5ILm9mZih0LCJtb3VzZW92ZXIiLGcpKSx0aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5kZXN0cm95KCksdGhpcy5fbWVudS5jbGFzc0xpc3QucmVtb3ZlKCJzaG93IiksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJzaG93IiksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpLEsucmVtb3ZlRGF0YUF0dHJpYnV0ZSh0aGlzLl9tZW51LCJwb3BwZXIiKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZGVuLmJzLmRyb3Bkb3duIix0KSl9X2dldENvbmZpZyh0KXtpZih0PXsuLi50aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHQsLi4uSy5nZXREYXRhQXR0cmlidXRlcyh0aGlzLl9lbGVtZW50KSwuLi50fSxjKCJkcm9wZG93biIsdCx0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRUeXBlKSwib2JqZWN0Ij09dHlwZW9mIHQucmVmZXJlbmNlJiYhYSh0LnJlZmVyZW5jZSkmJiJmdW5jdGlvbiIhPXR5cGVvZiB0LnJlZmVyZW5jZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QpdGhyb3cgbmV3IFR5cGVFcnJvcigiZHJvcGRvd24iLnRvVXBwZXJDYXNlKCkrJzogT3B0aW9uICJyZWZlcmVuY2UiIHByb3ZpZGVkIHR5cGUgIm9iamVjdCIgd2l0aG91dCBhIHJlcXVpcmVkICJnZXRCb3VuZGluZ0NsaWVudFJlY3QiIG1ldGhvZC4nKTtyZXR1cm4gdH1fY3JlYXRlUG9wcGVyKHQpe2lmKHZvaWQgMD09PWkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9vdHN0cmFwJ3MgZHJvcGRvd25zIHJlcXVpcmUgUG9wcGVyIChodHRwczovL3BvcHBlci5qcy5vcmcpIik7bGV0IGU9dGhpcy5fZWxlbWVudDsicGFyZW50Ij09PXRoaXMuX2NvbmZpZy5yZWZlcmVuY2U/ZT10OmEodGhpcy5fY29uZmlnLnJlZmVyZW5jZSk/ZT1sKHRoaXMuX2NvbmZpZy5yZWZlcmVuY2UpOiJvYmplY3QiPT10eXBlb2YgdGhpcy5fY29uZmlnLnJlZmVyZW5jZSYmKGU9dGhpcy5fY29uZmlnLnJlZmVyZW5jZSk7Y29uc3Qgcz10aGlzLl9nZXRQb3BwZXJDb25maWcoKSxuPXMubW9kaWZpZXJzLmZpbmQodD0+ImFwcGx5U3R5bGVzIj09PXQubmFtZSYmITE9PT10LmVuYWJsZWQpO3RoaXMuX3BvcHBlcj1pLmNyZWF0ZVBvcHBlcihlLHRoaXMuX21lbnUscyksbiYmSy5zZXREYXRhQXR0cmlidXRlKHRoaXMuX21lbnUsInBvcHBlciIsInN0YXRpYyIpfV9pc1Nob3duKHQ9dGhpcy5fZWxlbWVudCl7cmV0dXJuIHQuY2xhc3NMaXN0LmNvbnRhaW5zKCJzaG93Iil9X2dldE1lbnVFbGVtZW50KCl7cmV0dXJuIFYubmV4dCh0aGlzLl9lbGVtZW50LCIuZHJvcGRvd24tbWVudSIpWzBdfV9nZXRQbGFjZW1lbnQoKXtjb25zdCB0PXRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZTtpZih0LmNsYXNzTGlzdC5jb250YWlucygiZHJvcGVuZCIpKXJldHVybiBodDtpZih0LmNsYXNzTGlzdC5jb250YWlucygiZHJvcHN0YXJ0IikpcmV0dXJuIGR0O2NvbnN0IGU9ImVuZCI9PT1nZXRDb21wdXRlZFN0eWxlKHRoaXMuX21lbnUpLmdldFByb3BlcnR5VmFsdWUoIi0tYnMtcG9zaXRpb24iKS50cmltKCk7cmV0dXJuIHQuY2xhc3NMaXN0LmNvbnRhaW5zKCJkcm9wdXAiKT9lP2F0OnJ0OmU/Y3Q6bHR9X2RldGVjdE5hdmJhcigpe3JldHVybiBudWxsIT09dGhpcy5fZWxlbWVudC5jbG9zZXN0KCIubmF2YmFyIil9X2dldE9mZnNldCgpe2NvbnN0e29mZnNldDp0fT10aGlzLl9jb25maWc7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0P3Quc3BsaXQoIiwiKS5tYXAodD0+TnVtYmVyLnBhcnNlSW50KHQsMTApKToiZnVuY3Rpb24iPT10eXBlb2YgdD9lPT50KGUsdGhpcy5fZWxlbWVudCk6dH1fZ2V0UG9wcGVyQ29uZmlnKCl7Y29uc3QgdD17cGxhY2VtZW50OnRoaXMuX2dldFBsYWNlbWVudCgpLG1vZGlmaWVyczpbe25hbWU6InByZXZlbnRPdmVyZmxvdyIsb3B0aW9uczp7Ym91bmRhcnk6dGhpcy5fY29uZmlnLmJvdW5kYXJ5fX0se25hbWU6Im9mZnNldCIsb3B0aW9uczp7b2Zmc2V0OnRoaXMuX2dldE9mZnNldCgpfX1dfTtyZXR1cm4ic3RhdGljIj09PXRoaXMuX2NvbmZpZy5kaXNwbGF5JiYodC5tb2RpZmllcnM9W3tuYW1lOiJhcHBseVN0eWxlcyIsZW5hYmxlZDohMX1dKSx7Li4udCwuLi4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fY29uZmlnLnBvcHBlckNvbmZpZz90aGlzLl9jb25maWcucG9wcGVyQ29uZmlnKHQpOnRoaXMuX2NvbmZpZy5wb3BwZXJDb25maWd9fV9zZWxlY3RNZW51SXRlbSh7a2V5OnQsdGFyZ2V0OmV9KXtjb25zdCBpPVYuZmluZCgiLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCkiLHRoaXMuX21lbnUpLmZpbHRlcihoKTtpLmxlbmd0aCYmdyhpLGUsIkFycm93RG93biI9PT10LCFpLmluY2x1ZGVzKGUpKS5mb2N1cygpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPXB0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF0pdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0oKX19KSl9c3RhdGljIGNsZWFyTWVudXModCl7aWYodCYmKDI9PT10LmJ1dHRvbnx8ImtleXVwIj09PXQudHlwZSYmIlRhYiIhPT10LmtleSkpcmV0dXJuO2NvbnN0IGU9Vi5maW5kKCdbZGF0YS1icy10b2dnbGU9ImRyb3Bkb3duIl0nKTtmb3IobGV0IGk9MCxzPWUubGVuZ3RoO2k8cztpKyspe2NvbnN0IHM9cHQuZ2V0SW5zdGFuY2UoZVtpXSk7aWYoIXN8fCExPT09cy5fY29uZmlnLmF1dG9DbG9zZSljb250aW51ZTtpZighcy5faXNTaG93bigpKWNvbnRpbnVlO2NvbnN0IG49e3JlbGF0ZWRUYXJnZXQ6cy5fZWxlbWVudH07aWYodCl7Y29uc3QgZT10LmNvbXBvc2VkUGF0aCgpLGk9ZS5pbmNsdWRlcyhzLl9tZW51KTtpZihlLmluY2x1ZGVzKHMuX2VsZW1lbnQpfHwiaW5zaWRlIj09PXMuX2NvbmZpZy5hdXRvQ2xvc2UmJiFpfHwib3V0c2lkZSI9PT1zLl9jb25maWcuYXV0b0Nsb3NlJiZpKWNvbnRpbnVlO2lmKHMuX21lbnUuY29udGFpbnModC50YXJnZXQpJiYoImtleXVwIj09PXQudHlwZSYmIlRhYiI9PT10LmtleXx8L2lucHV0fHNlbGVjdHxvcHRpb258dGV4dGFyZWF8Zm9ybS9pLnRlc3QodC50YXJnZXQudGFnTmFtZSkpKWNvbnRpbnVlOyJjbGljayI9PT10LnR5cGUmJihuLmNsaWNrRXZlbnQ9dCl9cy5fY29tcGxldGVIaWRlKG4pfX1zdGF0aWMgZ2V0UGFyZW50RnJvbUVsZW1lbnQodCl7cmV0dXJuIG8odCl8fHQucGFyZW50Tm9kZX1zdGF0aWMgZGF0YUFwaUtleWRvd25IYW5kbGVyKHQpe2lmKC9pbnB1dHx0ZXh0YXJlYS9pLnRlc3QodC50YXJnZXQudGFnTmFtZSk/IlNwYWNlIj09PXQua2V5fHwiRXNjYXBlIiE9PXQua2V5JiYoIkFycm93RG93biIhPT10LmtleSYmIkFycm93VXAiIT09dC5rZXl8fHQudGFyZ2V0LmNsb3Nlc3QoIi5kcm9wZG93bi1tZW51IikpOiFvdC50ZXN0KHQua2V5KSlyZXR1cm47Y29uc3QgZT10aGlzLmNsYXNzTGlzdC5jb250YWlucygic2hvdyIpO2lmKCFlJiYiRXNjYXBlIj09PXQua2V5KXJldHVybjtpZih0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSxkKHRoaXMpKXJldHVybjtjb25zdCBpPXRoaXMubWF0Y2hlcygnW2RhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biJdJyk/dGhpczpWLnByZXYodGhpcywnW2RhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biJdJylbMF0scz1wdC5nZXRPckNyZWF0ZUluc3RhbmNlKGkpO2lmKCJFc2NhcGUiIT09dC5rZXkpcmV0dXJuIkFycm93VXAiPT09dC5rZXl8fCJBcnJvd0Rvd24iPT09dC5rZXk/KGV8fHMuc2hvdygpLHZvaWQgcy5fc2VsZWN0TWVudUl0ZW0odCkpOnZvaWQoZSYmIlNwYWNlIiE9PXQua2V5fHxwdC5jbGVhck1lbnVzKCkpO3MuaGlkZSgpfX1ILm9uKGRvY3VtZW50LCJrZXlkb3duLmJzLmRyb3Bkb3duLmRhdGEtYXBpIiwnW2RhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biJdJyxwdC5kYXRhQXBpS2V5ZG93bkhhbmRsZXIpLEgub24oZG9jdW1lbnQsImtleWRvd24uYnMuZHJvcGRvd24uZGF0YS1hcGkiLCIuZHJvcGRvd24tbWVudSIscHQuZGF0YUFwaUtleWRvd25IYW5kbGVyKSxILm9uKGRvY3VtZW50LCJjbGljay5icy5kcm9wZG93bi5kYXRhLWFwaSIscHQuY2xlYXJNZW51cyksSC5vbihkb2N1bWVudCwia2V5dXAuYnMuZHJvcGRvd24uZGF0YS1hcGkiLHB0LmNsZWFyTWVudXMpLEgub24oZG9jdW1lbnQsImNsaWNrLmJzLmRyb3Bkb3duLmRhdGEtYXBpIiwnW2RhdGEtYnMtdG9nZ2xlPSJkcm9wZG93biJdJywoZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpLHB0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcykudG9nZ2xlKCl9KSksYihwdCk7Y2xhc3MgZnR7Y29uc3RydWN0b3IoKXt0aGlzLl9lbGVtZW50PWRvY3VtZW50LmJvZHl9Z2V0V2lkdGgoKXtjb25zdCB0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aDtyZXR1cm4gTWF0aC5hYnMod2luZG93LmlubmVyV2lkdGgtdCl9aGlkZSgpe2NvbnN0IHQ9dGhpcy5nZXRXaWR0aCgpO3RoaXMuX2Rpc2FibGVPdmVyRmxvdygpLHRoaXMuX3NldEVsZW1lbnRBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQsInBhZGRpbmdSaWdodCIsZT0+ZSt0KSx0aGlzLl9zZXRFbGVtZW50QXR0cmlidXRlcygiLmZpeGVkLXRvcCwgLmZpeGVkLWJvdHRvbSwgLmlzLWZpeGVkLCAuc3RpY2t5LXRvcCIsInBhZGRpbmdSaWdodCIsZT0+ZSt0KSx0aGlzLl9zZXRFbGVtZW50QXR0cmlidXRlcygiLnN0aWNreS10b3AiLCJtYXJnaW5SaWdodCIsZT0+ZS10KX1fZGlzYWJsZU92ZXJGbG93KCl7dGhpcy5fc2F2ZUluaXRpYWxBdHRyaWJ1dGUodGhpcy5fZWxlbWVudCwib3ZlcmZsb3ciKSx0aGlzLl9lbGVtZW50LnN0eWxlLm92ZXJmbG93PSJoaWRkZW4ifV9zZXRFbGVtZW50QXR0cmlidXRlcyh0LGUsaSl7Y29uc3Qgcz10aGlzLmdldFdpZHRoKCk7dGhpcy5fYXBwbHlNYW5pcHVsYXRpb25DYWxsYmFjayh0LHQ9PntpZih0IT09dGhpcy5fZWxlbWVudCYmd2luZG93LmlubmVyV2lkdGg+dC5jbGllbnRXaWR0aCtzKXJldHVybjt0aGlzLl9zYXZlSW5pdGlhbEF0dHJpYnV0ZSh0LGUpO2NvbnN0IG49d2luZG93LmdldENvbXB1dGVkU3R5bGUodClbZV07dC5zdHlsZVtlXT1pKE51bWJlci5wYXJzZUZsb2F0KG4pKSsicHgifSl9cmVzZXQoKXt0aGlzLl9yZXNldEVsZW1lbnRBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQsIm92ZXJmbG93IiksdGhpcy5fcmVzZXRFbGVtZW50QXR0cmlidXRlcyh0aGlzLl9lbGVtZW50LCJwYWRkaW5nUmlnaHQiKSx0aGlzLl9yZXNldEVsZW1lbnRBdHRyaWJ1dGVzKCIuZml4ZWQtdG9wLCAuZml4ZWQtYm90dG9tLCAuaXMtZml4ZWQsIC5zdGlja3ktdG9wIiwicGFkZGluZ1JpZ2h0IiksdGhpcy5fcmVzZXRFbGVtZW50QXR0cmlidXRlcygiLnN0aWNreS10b3AiLCJtYXJnaW5SaWdodCIpfV9zYXZlSW5pdGlhbEF0dHJpYnV0ZSh0LGUpe2NvbnN0IGk9dC5zdHlsZVtlXTtpJiZLLnNldERhdGFBdHRyaWJ1dGUodCxlLGkpfV9yZXNldEVsZW1lbnRBdHRyaWJ1dGVzKHQsZSl7dGhpcy5fYXBwbHlNYW5pcHVsYXRpb25DYWxsYmFjayh0LHQ9Pntjb25zdCBpPUsuZ2V0RGF0YUF0dHJpYnV0ZSh0LGUpO3ZvaWQgMD09PWk/dC5zdHlsZS5yZW1vdmVQcm9wZXJ0eShlKTooSy5yZW1vdmVEYXRhQXR0cmlidXRlKHQsZSksdC5zdHlsZVtlXT1pKX0pfV9hcHBseU1hbmlwdWxhdGlvbkNhbGxiYWNrKHQsZSl7YSh0KT9lKHQpOlYuZmluZCh0LHRoaXMuX2VsZW1lbnQpLmZvckVhY2goZSl9aXNPdmVyZmxvd2luZygpe3JldHVybiB0aGlzLmdldFdpZHRoKCk+MH19Y29uc3QgX3Q9e2NsYXNzTmFtZToibW9kYWwtYmFja2Ryb3AiLGlzVmlzaWJsZTohMCxpc0FuaW1hdGVkOiExLHJvb3RFbGVtZW50OiJib2R5IixjbGlja0NhbGxiYWNrOm51bGx9LG10PXtjbGFzc05hbWU6InN0cmluZyIsaXNWaXNpYmxlOiJib29sZWFuIixpc0FuaW1hdGVkOiJib29sZWFuIixyb290RWxlbWVudDoiKGVsZW1lbnR8c3RyaW5nKSIsY2xpY2tDYWxsYmFjazoiKGZ1bmN0aW9ufG51bGwpIn07Y2xhc3MgYnR7Y29uc3RydWN0b3IodCl7dGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyh0KSx0aGlzLl9pc0FwcGVuZGVkPSExLHRoaXMuX2VsZW1lbnQ9bnVsbH1zaG93KHQpe3RoaXMuX2NvbmZpZy5pc1Zpc2libGU/KHRoaXMuX2FwcGVuZCgpLHRoaXMuX2NvbmZpZy5pc0FuaW1hdGVkJiZwKHRoaXMuX2dldEVsZW1lbnQoKSksdGhpcy5fZ2V0RWxlbWVudCgpLmNsYXNzTGlzdC5hZGQoInNob3ciKSx0aGlzLl9lbXVsYXRlQW5pbWF0aW9uKCgpPT57dih0KX0pKTp2KHQpfWhpZGUodCl7dGhpcy5fY29uZmlnLmlzVmlzaWJsZT8odGhpcy5fZ2V0RWxlbWVudCgpLmNsYXNzTGlzdC5yZW1vdmUoInNob3ciKSx0aGlzLl9lbXVsYXRlQW5pbWF0aW9uKCgpPT57dGhpcy5kaXNwb3NlKCksdih0KX0pKTp2KHQpfV9nZXRFbGVtZW50KCl7aWYoIXRoaXMuX2VsZW1lbnQpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9dGhpcy5fY29uZmlnLmNsYXNzTmFtZSx0aGlzLl9jb25maWcuaXNBbmltYXRlZCYmdC5jbGFzc0xpc3QuYWRkKCJmYWRlIiksdGhpcy5fZWxlbWVudD10fXJldHVybiB0aGlzLl9lbGVtZW50fV9nZXRDb25maWcodCl7cmV0dXJuKHQ9ey4uLl90LC4uLiJvYmplY3QiPT10eXBlb2YgdD90Ont9fSkucm9vdEVsZW1lbnQ9bCh0LnJvb3RFbGVtZW50KSxjKCJiYWNrZHJvcCIsdCxtdCksdH1fYXBwZW5kKCl7dGhpcy5faXNBcHBlbmRlZHx8KHRoaXMuX2NvbmZpZy5yb290RWxlbWVudC5hcHBlbmQodGhpcy5fZ2V0RWxlbWVudCgpKSxILm9uKHRoaXMuX2dldEVsZW1lbnQoKSwibW91c2Vkb3duLmJzLmJhY2tkcm9wIiwoKT0+e3YodGhpcy5fY29uZmlnLmNsaWNrQ2FsbGJhY2spfSksdGhpcy5faXNBcHBlbmRlZD0hMCl9ZGlzcG9zZSgpe3RoaXMuX2lzQXBwZW5kZWQmJihILm9mZih0aGlzLl9lbGVtZW50LCJtb3VzZWRvd24uYnMuYmFja2Ryb3AiKSx0aGlzLl9lbGVtZW50LnJlbW92ZSgpLHRoaXMuX2lzQXBwZW5kZWQ9ITEpfV9lbXVsYXRlQW5pbWF0aW9uKHQpe3kodCx0aGlzLl9nZXRFbGVtZW50KCksdGhpcy5fY29uZmlnLmlzQW5pbWF0ZWQpfX1jb25zdCB2dD17dHJhcEVsZW1lbnQ6bnVsbCxhdXRvZm9jdXM6ITB9LHl0PXt0cmFwRWxlbWVudDoiZWxlbWVudCIsYXV0b2ZvY3VzOiJib29sZWFuIn07Y2xhc3Mgd3R7Y29uc3RydWN0b3IodCl7dGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyh0KSx0aGlzLl9pc0FjdGl2ZT0hMSx0aGlzLl9sYXN0VGFiTmF2RGlyZWN0aW9uPW51bGx9YWN0aXZhdGUoKXtjb25zdHt0cmFwRWxlbWVudDp0LGF1dG9mb2N1czplfT10aGlzLl9jb25maWc7dGhpcy5faXNBY3RpdmV8fChlJiZ0LmZvY3VzKCksSC5vZmYoZG9jdW1lbnQsIi5icy5mb2N1c3RyYXAiKSxILm9uKGRvY3VtZW50LCJmb2N1c2luLmJzLmZvY3VzdHJhcCIsdD0+dGhpcy5faGFuZGxlRm9jdXNpbih0KSksSC5vbihkb2N1bWVudCwia2V5ZG93bi50YWIuYnMuZm9jdXN0cmFwIix0PT50aGlzLl9oYW5kbGVLZXlkb3duKHQpKSx0aGlzLl9pc0FjdGl2ZT0hMCl9ZGVhY3RpdmF0ZSgpe3RoaXMuX2lzQWN0aXZlJiYodGhpcy5faXNBY3RpdmU9ITEsSC5vZmYoZG9jdW1lbnQsIi5icy5mb2N1c3RyYXAiKSl9X2hhbmRsZUZvY3VzaW4odCl7Y29uc3R7dGFyZ2V0OmV9PXQse3RyYXBFbGVtZW50Oml9PXRoaXMuX2NvbmZpZztpZihlPT09ZG9jdW1lbnR8fGU9PT1pfHxpLmNvbnRhaW5zKGUpKXJldHVybjtjb25zdCBzPVYuZm9jdXNhYmxlQ2hpbGRyZW4oaSk7MD09PXMubGVuZ3RoP2kuZm9jdXMoKToiYmFja3dhcmQiPT09dGhpcy5fbGFzdFRhYk5hdkRpcmVjdGlvbj9zW3MubGVuZ3RoLTFdLmZvY3VzKCk6c1swXS5mb2N1cygpfV9oYW5kbGVLZXlkb3duKHQpeyJUYWIiPT09dC5rZXkmJih0aGlzLl9sYXN0VGFiTmF2RGlyZWN0aW9uPXQuc2hpZnRLZXk/ImJhY2t3YXJkIjoiZm9yd2FyZCIpfV9nZXRDb25maWcodCl7cmV0dXJuIHQ9ey4uLnZ0LC4uLiJvYmplY3QiPT10eXBlb2YgdD90Ont9fSxjKCJmb2N1c3RyYXAiLHQseXQpLHR9fWNvbnN0IEV0PXtiYWNrZHJvcDohMCxrZXlib2FyZDohMCxmb2N1czohMH0sQXQ9e2JhY2tkcm9wOiIoYm9vbGVhbnxzdHJpbmcpIixrZXlib2FyZDoiYm9vbGVhbiIsZm9jdXM6ImJvb2xlYW4ifTtjbGFzcyBUdCBleHRlbmRzIFJ7Y29uc3RydWN0b3IodCxlKXtzdXBlcih0KSx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMuX2RpYWxvZz1WLmZpbmRPbmUoIi5tb2RhbC1kaWFsb2ciLHRoaXMuX2VsZW1lbnQpLHRoaXMuX2JhY2tkcm9wPXRoaXMuX2luaXRpYWxpemVCYWNrRHJvcCgpLHRoaXMuX2ZvY3VzdHJhcD10aGlzLl9pbml0aWFsaXplRm9jdXNUcmFwKCksdGhpcy5faXNTaG93bj0hMSx0aGlzLl9pZ25vcmVCYWNrZHJvcENsaWNrPSExLHRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMSx0aGlzLl9zY3JvbGxCYXI9bmV3IGZ0fXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBFdH1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4ibW9kYWwifXRvZ2dsZSh0KXtyZXR1cm4gdGhpcy5faXNTaG93bj90aGlzLmhpZGUoKTp0aGlzLnNob3codCl9c2hvdyh0KXt0aGlzLl9pc1Nob3dufHx0aGlzLl9pc1RyYW5zaXRpb25pbmd8fEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93LmJzLm1vZGFsIix7cmVsYXRlZFRhcmdldDp0fSkuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuX2lzU2hvd249ITAsdGhpcy5faXNBbmltYXRlZCgpJiYodGhpcy5faXNUcmFuc2l0aW9uaW5nPSEwKSx0aGlzLl9zY3JvbGxCYXIuaGlkZSgpLGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgibW9kYWwtb3BlbiIpLHRoaXMuX2FkanVzdERpYWxvZygpLHRoaXMuX3NldEVzY2FwZUV2ZW50KCksdGhpcy5fc2V0UmVzaXplRXZlbnQoKSxILm9uKHRoaXMuX2RpYWxvZywibW91c2Vkb3duLmRpc21pc3MuYnMubW9kYWwiLCgpPT57SC5vbmUodGhpcy5fZWxlbWVudCwibW91c2V1cC5kaXNtaXNzLmJzLm1vZGFsIix0PT57dC50YXJnZXQ9PT10aGlzLl9lbGVtZW50JiYodGhpcy5faWdub3JlQmFja2Ryb3BDbGljaz0hMCl9KX0pLHRoaXMuX3Nob3dCYWNrZHJvcCgoKT0+dGhpcy5fc2hvd0VsZW1lbnQodCkpKX1oaWRlKCl7aWYoIXRoaXMuX2lzU2hvd258fHRoaXMuX2lzVHJhbnNpdGlvbmluZylyZXR1cm47aWYoSC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImhpZGUuYnMubW9kYWwiKS5kZWZhdWx0UHJldmVudGVkKXJldHVybjt0aGlzLl9pc1Nob3duPSExO2NvbnN0IHQ9dGhpcy5faXNBbmltYXRlZCgpO3QmJih0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITApLHRoaXMuX3NldEVzY2FwZUV2ZW50KCksdGhpcy5fc2V0UmVzaXplRXZlbnQoKSx0aGlzLl9mb2N1c3RyYXAuZGVhY3RpdmF0ZSgpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgic2hvdyIpLEgub2ZmKHRoaXMuX2VsZW1lbnQsImNsaWNrLmRpc21pc3MuYnMubW9kYWwiKSxILm9mZih0aGlzLl9kaWFsb2csIm1vdXNlZG93bi5kaXNtaXNzLmJzLm1vZGFsIiksdGhpcy5fcXVldWVDYWxsYmFjaygoKT0+dGhpcy5faGlkZU1vZGFsKCksdGhpcy5fZWxlbWVudCx0KX1kaXNwb3NlKCl7W3dpbmRvdyx0aGlzLl9kaWFsb2ddLmZvckVhY2godD0+SC5vZmYodCwiLmJzLm1vZGFsIikpLHRoaXMuX2JhY2tkcm9wLmRpc3Bvc2UoKSx0aGlzLl9mb2N1c3RyYXAuZGVhY3RpdmF0ZSgpLHN1cGVyLmRpc3Bvc2UoKX1oYW5kbGVVcGRhdGUoKXt0aGlzLl9hZGp1c3REaWFsb2coKX1faW5pdGlhbGl6ZUJhY2tEcm9wKCl7cmV0dXJuIG5ldyBidCh7aXNWaXNpYmxlOkJvb2xlYW4odGhpcy5fY29uZmlnLmJhY2tkcm9wKSxpc0FuaW1hdGVkOnRoaXMuX2lzQW5pbWF0ZWQoKX0pfV9pbml0aWFsaXplRm9jdXNUcmFwKCl7cmV0dXJuIG5ldyB3dCh7dHJhcEVsZW1lbnQ6dGhpcy5fZWxlbWVudH0pfV9nZXRDb25maWcodCl7cmV0dXJuIHQ9ey4uLkV0LC4uLksuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCksLi4uIm9iamVjdCI9PXR5cGVvZiB0P3Q6e319LGMoIm1vZGFsIix0LEF0KSx0fV9zaG93RWxlbWVudCh0KXtjb25zdCBlPXRoaXMuX2lzQW5pbWF0ZWQoKSxpPVYuZmluZE9uZSgiLm1vZGFsLWJvZHkiLHRoaXMuX2RpYWxvZyk7dGhpcy5fZWxlbWVudC5wYXJlbnROb2RlJiZ0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERXx8ZG9jdW1lbnQuYm9keS5hcHBlbmQodGhpcy5fZWxlbWVudCksdGhpcy5fZWxlbWVudC5zdHlsZS5kaXNwbGF5PSJibG9jayIsdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtbW9kYWwiLCEwKSx0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgicm9sZSIsImRpYWxvZyIpLHRoaXMuX2VsZW1lbnQuc2Nyb2xsVG9wPTAsaSYmKGkuc2Nyb2xsVG9wPTApLGUmJnAodGhpcy5fZWxlbWVudCksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJzaG93IiksdGhpcy5fcXVldWVDYWxsYmFjaygoKT0+e3RoaXMuX2NvbmZpZy5mb2N1cyYmdGhpcy5fZm9jdXN0cmFwLmFjdGl2YXRlKCksdGhpcy5faXNUcmFuc2l0aW9uaW5nPSExLEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93bi5icy5tb2RhbCIse3JlbGF0ZWRUYXJnZXQ6dH0pfSx0aGlzLl9kaWFsb2csZSl9X3NldEVzY2FwZUV2ZW50KCl7dGhpcy5faXNTaG93bj9ILm9uKHRoaXMuX2VsZW1lbnQsImtleWRvd24uZGlzbWlzcy5icy5tb2RhbCIsdD0+e3RoaXMuX2NvbmZpZy5rZXlib2FyZCYmIkVzY2FwZSI9PT10LmtleT8odC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaGlkZSgpKTp0aGlzLl9jb25maWcua2V5Ym9hcmR8fCJFc2NhcGUiIT09dC5rZXl8fHRoaXMuX3RyaWdnZXJCYWNrZHJvcFRyYW5zaXRpb24oKX0pOkgub2ZmKHRoaXMuX2VsZW1lbnQsImtleWRvd24uZGlzbWlzcy5icy5tb2RhbCIpfV9zZXRSZXNpemVFdmVudCgpe3RoaXMuX2lzU2hvd24/SC5vbih3aW5kb3csInJlc2l6ZS5icy5tb2RhbCIsKCk9PnRoaXMuX2FkanVzdERpYWxvZygpKTpILm9mZih3aW5kb3csInJlc2l6ZS5icy5tb2RhbCIpfV9oaWRlTW9kYWwoKXt0aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsITApLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLW1vZGFsIiksdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoInJvbGUiKSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fYmFja2Ryb3AuaGlkZSgoKT0+e2RvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnJlbW92ZSgibW9kYWwtb3BlbiIpLHRoaXMuX3Jlc2V0QWRqdXN0bWVudHMoKSx0aGlzLl9zY3JvbGxCYXIucmVzZXQoKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZGVuLmJzLm1vZGFsIil9KX1fc2hvd0JhY2tkcm9wKHQpe0gub24odGhpcy5fZWxlbWVudCwiY2xpY2suZGlzbWlzcy5icy5tb2RhbCIsdD0+e3RoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2s/dGhpcy5faWdub3JlQmFja2Ryb3BDbGljaz0hMTp0LnRhcmdldD09PXQuY3VycmVudFRhcmdldCYmKCEwPT09dGhpcy5fY29uZmlnLmJhY2tkcm9wP3RoaXMuaGlkZSgpOiJzdGF0aWMiPT09dGhpcy5fY29uZmlnLmJhY2tkcm9wJiZ0aGlzLl90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCkpfSksdGhpcy5fYmFja2Ryb3Auc2hvdyh0KX1faXNBbmltYXRlZCgpe3JldHVybiB0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygiZmFkZSIpfV90cmlnZ2VyQmFja2Ryb3BUcmFuc2l0aW9uKCl7aWYoSC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImhpZGVQcmV2ZW50ZWQuYnMubW9kYWwiKS5kZWZhdWx0UHJldmVudGVkKXJldHVybjtjb25zdHtjbGFzc0xpc3Q6dCxzY3JvbGxIZWlnaHQ6ZSxzdHlsZTppfT10aGlzLl9lbGVtZW50LHM9ZT5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0OyFzJiYiaGlkZGVuIj09PWkub3ZlcmZsb3dZfHx0LmNvbnRhaW5zKCJtb2RhbC1zdGF0aWMiKXx8KHN8fChpLm92ZXJmbG93WT0iaGlkZGVuIiksdC5hZGQoIm1vZGFsLXN0YXRpYyIpLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCk9Pnt0LnJlbW92ZSgibW9kYWwtc3RhdGljIiksc3x8dGhpcy5fcXVldWVDYWxsYmFjaygoKT0+e2kub3ZlcmZsb3dZPSIifSx0aGlzLl9kaWFsb2cpfSx0aGlzLl9kaWFsb2cpLHRoaXMuX2VsZW1lbnQuZm9jdXMoKSl9X2FkanVzdERpYWxvZygpe2NvbnN0IHQ9dGhpcy5fZWxlbWVudC5zY3JvbGxIZWlnaHQ+ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCxlPXRoaXMuX3Njcm9sbEJhci5nZXRXaWR0aCgpLGk9ZT4wOyghaSYmdCYmIW0oKXx8aSYmIXQmJm0oKSkmJih0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdMZWZ0PWUrInB4IiksKGkmJiF0JiYhbSgpfHwhaSYmdCYmbSgpKSYmKHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0PWUrInB4Iil9X3Jlc2V0QWRqdXN0bWVudHMoKXt0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdMZWZ0PSIiLHRoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ1JpZ2h0PSIifXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCxlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGk9VHQuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0aGlzLHQpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7aWYodm9pZCAwPT09aVt0XSl0aHJvdyBuZXcgVHlwZUVycm9yKGBObyBtZXRob2QgbmFtZWQgIiR7dH0iYCk7aVt0XShlKX19KSl9fUgub24oZG9jdW1lbnQsImNsaWNrLmJzLm1vZGFsLmRhdGEtYXBpIiwnW2RhdGEtYnMtdG9nZ2xlPSJtb2RhbCJdJywoZnVuY3Rpb24odCl7Y29uc3QgZT1vKHRoaXMpO1siQSIsIkFSRUEiXS5pbmNsdWRlcyh0aGlzLnRhZ05hbWUpJiZ0LnByZXZlbnREZWZhdWx0KCksSC5vbmUoZSwic2hvdy5icy5tb2RhbCIsdD0+e3QuZGVmYXVsdFByZXZlbnRlZHx8SC5vbmUoZSwiaGlkZGVuLmJzLm1vZGFsIiwoKT0+e2godGhpcykmJnRoaXMuZm9jdXMoKX0pfSksVHQuZ2V0T3JDcmVhdGVJbnN0YW5jZShlKS50b2dnbGUodGhpcyl9KSksRihUdCksYihUdCk7Y29uc3QgQ3Q9e2JhY2tkcm9wOiEwLGtleWJvYXJkOiEwLHNjcm9sbDohMX0sa3Q9e2JhY2tkcm9wOiJib29sZWFuIixrZXlib2FyZDoiYm9vbGVhbiIsc2Nyb2xsOiJib29sZWFuIn07Y2xhc3MgTHQgZXh0ZW5kcyBSe2NvbnN0cnVjdG9yKHQsZSl7c3VwZXIodCksdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl9pc1Nob3duPSExLHRoaXMuX2JhY2tkcm9wPXRoaXMuX2luaXRpYWxpemVCYWNrRHJvcCgpLHRoaXMuX2ZvY3VzdHJhcD10aGlzLl9pbml0aWFsaXplRm9jdXNUcmFwKCksdGhpcy5fYWRkRXZlbnRMaXN0ZW5lcnMoKX1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4ib2ZmY2FudmFzIn1zdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm4gQ3R9dG9nZ2xlKHQpe3JldHVybiB0aGlzLl9pc1Nob3duP3RoaXMuaGlkZSgpOnRoaXMuc2hvdyh0KX1zaG93KHQpe3RoaXMuX2lzU2hvd258fEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93LmJzLm9mZmNhbnZhcyIse3JlbGF0ZWRUYXJnZXQ6dH0pLmRlZmF1bHRQcmV2ZW50ZWR8fCh0aGlzLl9pc1Nob3duPSEwLHRoaXMuX2VsZW1lbnQuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSIsdGhpcy5fYmFja2Ryb3Auc2hvdygpLHRoaXMuX2NvbmZpZy5zY3JvbGx8fChuZXcgZnQpLmhpZGUoKSx0aGlzLl9lbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKSx0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1tb2RhbCIsITApLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJyb2xlIiwiZGlhbG9nIiksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJzaG93IiksdGhpcy5fcXVldWVDYWxsYmFjaygoKT0+e3RoaXMuX2NvbmZpZy5zY3JvbGx8fHRoaXMuX2ZvY3VzdHJhcC5hY3RpdmF0ZSgpLEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93bi5icy5vZmZjYW52YXMiLHtyZWxhdGVkVGFyZ2V0OnR9KX0sdGhpcy5fZWxlbWVudCwhMCkpfWhpZGUoKXt0aGlzLl9pc1Nob3duJiYoSC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsImhpZGUuYnMub2ZmY2FudmFzIikuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuX2ZvY3VzdHJhcC5kZWFjdGl2YXRlKCksdGhpcy5fZWxlbWVudC5ibHVyKCksdGhpcy5faXNTaG93bj0hMSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoInNob3ciKSx0aGlzLl9iYWNrZHJvcC5oaWRlKCksdGhpcy5fcXVldWVDYWxsYmFjaygoKT0+e3RoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsITApLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLW1vZGFsIiksdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoInJvbGUiKSx0aGlzLl9lbGVtZW50LnN0eWxlLnZpc2liaWxpdHk9ImhpZGRlbiIsdGhpcy5fY29uZmlnLnNjcm9sbHx8KG5ldyBmdCkucmVzZXQoKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZGVuLmJzLm9mZmNhbnZhcyIpfSx0aGlzLl9lbGVtZW50LCEwKSkpfWRpc3Bvc2UoKXt0aGlzLl9iYWNrZHJvcC5kaXNwb3NlKCksdGhpcy5fZm9jdXN0cmFwLmRlYWN0aXZhdGUoKSxzdXBlci5kaXNwb3NlKCl9X2dldENvbmZpZyh0KXtyZXR1cm4gdD17Li4uQ3QsLi4uSy5nZXREYXRhQXR0cmlidXRlcyh0aGlzLl9lbGVtZW50KSwuLi4ib2JqZWN0Ij09dHlwZW9mIHQ/dDp7fX0sYygib2ZmY2FudmFzIix0LGt0KSx0fV9pbml0aWFsaXplQmFja0Ryb3AoKXtyZXR1cm4gbmV3IGJ0KHtjbGFzc05hbWU6Im9mZmNhbnZhcy1iYWNrZHJvcCIsaXNWaXNpYmxlOnRoaXMuX2NvbmZpZy5iYWNrZHJvcCxpc0FuaW1hdGVkOiEwLHJvb3RFbGVtZW50OnRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSxjbGlja0NhbGxiYWNrOigpPT50aGlzLmhpZGUoKX0pfV9pbml0aWFsaXplRm9jdXNUcmFwKCl7cmV0dXJuIG5ldyB3dCh7dHJhcEVsZW1lbnQ6dGhpcy5fZWxlbWVudH0pfV9hZGRFdmVudExpc3RlbmVycygpe0gub24odGhpcy5fZWxlbWVudCwia2V5ZG93bi5kaXNtaXNzLmJzLm9mZmNhbnZhcyIsdD0+e3RoaXMuX2NvbmZpZy5rZXlib2FyZCYmIkVzY2FwZSI9PT10LmtleSYmdGhpcy5oaWRlKCl9KX1zdGF0aWMgalF1ZXJ5SW50ZXJmYWNlKHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7Y29uc3QgZT1MdC5nZXRPckNyZWF0ZUluc3RhbmNlKHRoaXMsdCk7aWYoInN0cmluZyI9PXR5cGVvZiB0KXtpZih2b2lkIDA9PT1lW3RdfHx0LnN0YXJ0c1dpdGgoIl8iKXx8ImNvbnN0cnVjdG9yIj09PXQpdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0odGhpcyl9fSkpfX1ILm9uKGRvY3VtZW50LCJjbGljay5icy5vZmZjYW52YXMuZGF0YS1hcGkiLCdbZGF0YS1icy10b2dnbGU9Im9mZmNhbnZhcyJdJywoZnVuY3Rpb24odCl7Y29uc3QgZT1vKHRoaXMpO2lmKFsiQSIsIkFSRUEiXS5pbmNsdWRlcyh0aGlzLnRhZ05hbWUpJiZ0LnByZXZlbnREZWZhdWx0KCksZCh0aGlzKSlyZXR1cm47SC5vbmUoZSwiaGlkZGVuLmJzLm9mZmNhbnZhcyIsKCk9PntoKHRoaXMpJiZ0aGlzLmZvY3VzKCl9KTtjb25zdCBpPVYuZmluZE9uZSgiLm9mZmNhbnZhcy5zaG93Iik7aSYmaSE9PWUmJkx0LmdldEluc3RhbmNlKGkpLmhpZGUoKSxMdC5nZXRPckNyZWF0ZUluc3RhbmNlKGUpLnRvZ2dsZSh0aGlzKX0pKSxILm9uKHdpbmRvdywibG9hZC5icy5vZmZjYW52YXMuZGF0YS1hcGkiLCgpPT5WLmZpbmQoIi5vZmZjYW52YXMuc2hvdyIpLmZvckVhY2godD0+THQuZ2V0T3JDcmVhdGVJbnN0YW5jZSh0KS5zaG93KCkpKSxGKEx0KSxiKEx0KTtjb25zdCBTdD1uZXcgU2V0KFsiYmFja2dyb3VuZCIsImNpdGUiLCJocmVmIiwiaXRlbXR5cGUiLCJsb25nZGVzYyIsInBvc3RlciIsInNyYyIsInhsaW5rOmhyZWYiXSksT3Q9L14oPzooPzpodHRwcz98bWFpbHRvfGZ0cHx0ZWx8ZmlsZSk6fFteIyYvOj9dKig/OlsjLz9dfCQpKS9pLE50PS9eZGF0YTooPzppbWFnZVwvKD86Ym1wfGdpZnxqcGVnfGpwZ3xwbmd8dGlmZnx3ZWJwKXx2aWRlb1wvKD86bXBlZ3xtcDR8b2dnfHdlYm0pfGF1ZGlvXC8oPzptcDN8b2dhfG9nZ3xvcHVzKSk7YmFzZTY0LFtcZCsvYS16XSs9KiQvaSxEdD0odCxlKT0+e2NvbnN0IGk9dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO2lmKGUuaW5jbHVkZXMoaSkpcmV0dXJuIVN0LmhhcyhpKXx8Qm9vbGVhbihPdC50ZXN0KHQubm9kZVZhbHVlKXx8TnQudGVzdCh0Lm5vZGVWYWx1ZSkpO2NvbnN0IHM9ZS5maWx0ZXIodD0+dCBpbnN0YW5jZW9mIFJlZ0V4cCk7Zm9yKGxldCB0PTAsZT1zLmxlbmd0aDt0PGU7dCsrKWlmKHNbdF0udGVzdChpKSlyZXR1cm4hMDtyZXR1cm4hMX07ZnVuY3Rpb24gSXQodCxlLGkpe2lmKCF0Lmxlbmd0aClyZXR1cm4gdDtpZihpJiYiZnVuY3Rpb24iPT10eXBlb2YgaSlyZXR1cm4gaSh0KTtjb25zdCBzPShuZXcgd2luZG93LkRPTVBhcnNlcikucGFyc2VGcm9tU3RyaW5nKHQsInRleHQvaHRtbCIpLG49T2JqZWN0LmtleXMoZSksbz1bXS5jb25jYXQoLi4ucy5ib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSk7Zm9yKGxldCB0PTAsaT1vLmxlbmd0aDt0PGk7dCsrKXtjb25zdCBpPW9bdF0scz1pLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7aWYoIW4uaW5jbHVkZXMocykpe2kucmVtb3ZlKCk7Y29udGludWV9Y29uc3Qgcj1bXS5jb25jYXQoLi4uaS5hdHRyaWJ1dGVzKSxhPVtdLmNvbmNhdChlWyIqIl18fFtdLGVbc118fFtdKTtyLmZvckVhY2godD0+e0R0KHQsYSl8fGkucmVtb3ZlQXR0cmlidXRlKHQubm9kZU5hbWUpfSl9cmV0dXJuIHMuYm9keS5pbm5lckhUTUx9Y29uc3QgeHQ9bmV3IFNldChbInNhbml0aXplIiwiYWxsb3dMaXN0Iiwic2FuaXRpemVGbiJdKSxQdD17YW5pbWF0aW9uOiJib29sZWFuIix0ZW1wbGF0ZToic3RyaW5nIix0aXRsZToiKHN0cmluZ3xlbGVtZW50fGZ1bmN0aW9uKSIsdHJpZ2dlcjoic3RyaW5nIixkZWxheToiKG51bWJlcnxvYmplY3QpIixodG1sOiJib29sZWFuIixzZWxlY3RvcjoiKHN0cmluZ3xib29sZWFuKSIscGxhY2VtZW50OiIoc3RyaW5nfGZ1bmN0aW9uKSIsb2Zmc2V0OiIoYXJyYXl8c3RyaW5nfGZ1bmN0aW9uKSIsY29udGFpbmVyOiIoc3RyaW5nfGVsZW1lbnR8Ym9vbGVhbikiLGZhbGxiYWNrUGxhY2VtZW50czoiYXJyYXkiLGJvdW5kYXJ5OiIoc3RyaW5nfGVsZW1lbnQpIixjdXN0b21DbGFzczoiKHN0cmluZ3xmdW5jdGlvbikiLHNhbml0aXplOiJib29sZWFuIixzYW5pdGl6ZUZuOiIobnVsbHxmdW5jdGlvbikiLGFsbG93TGlzdDoib2JqZWN0Iixwb3BwZXJDb25maWc6IihudWxsfG9iamVjdHxmdW5jdGlvbikifSxNdD17QVVUTzoiYXV0byIsVE9QOiJ0b3AiLFJJR0hUOm0oKT8ibGVmdCI6InJpZ2h0IixCT1RUT006ImJvdHRvbSIsTEVGVDptKCk/InJpZ2h0IjoibGVmdCJ9LGp0PXthbmltYXRpb246ITAsdGVtcGxhdGU6JzxkaXYgY2xhc3M9InRvb2x0aXAiIHJvbGU9InRvb2x0aXAiPjxkaXYgY2xhc3M9InRvb2x0aXAtYXJyb3ciPjwvZGl2PjxkaXYgY2xhc3M9InRvb2x0aXAtaW5uZXIiPjwvZGl2PjwvZGl2PicsdHJpZ2dlcjoiaG92ZXIgZm9jdXMiLHRpdGxlOiIiLGRlbGF5OjAsaHRtbDohMSxzZWxlY3RvcjohMSxwbGFjZW1lbnQ6InRvcCIsb2Zmc2V0OlswLDBdLGNvbnRhaW5lcjohMSxmYWxsYmFja1BsYWNlbWVudHM6WyJ0b3AiLCJyaWdodCIsImJvdHRvbSIsImxlZnQiXSxib3VuZGFyeToiY2xpcHBpbmdQYXJlbnRzIixjdXN0b21DbGFzczoiIixzYW5pdGl6ZTohMCxzYW5pdGl6ZUZuOm51bGwsYWxsb3dMaXN0OnsiKiI6WyJjbGFzcyIsImRpciIsImlkIiwibGFuZyIsInJvbGUiLC9eYXJpYS1bXHctXSokL2ldLGE6WyJ0YXJnZXQiLCJocmVmIiwidGl0bGUiLCJyZWwiXSxhcmVhOltdLGI6W10sYnI6W10sY29sOltdLGNvZGU6W10sZGl2OltdLGVtOltdLGhyOltdLGgxOltdLGgyOltdLGgzOltdLGg0OltdLGg1OltdLGg2OltdLGk6W10saW1nOlsic3JjIiwic3Jjc2V0IiwiYWx0IiwidGl0bGUiLCJ3aWR0aCIsImhlaWdodCJdLGxpOltdLG9sOltdLHA6W10scHJlOltdLHM6W10sc21hbGw6W10sc3BhbjpbXSxzdWI6W10sc3VwOltdLHN0cm9uZzpbXSx1OltdLHVsOltdfSxwb3BwZXJDb25maWc6bnVsbH0sSHQ9e0hJREU6ImhpZGUuYnMudG9vbHRpcCIsSElEREVOOiJoaWRkZW4uYnMudG9vbHRpcCIsU0hPVzoic2hvdy5icy50b29sdGlwIixTSE9XTjoic2hvd24uYnMudG9vbHRpcCIsSU5TRVJURUQ6Imluc2VydGVkLmJzLnRvb2x0aXAiLENMSUNLOiJjbGljay5icy50b29sdGlwIixGT0NVU0lOOiJmb2N1c2luLmJzLnRvb2x0aXAiLEZPQ1VTT1VUOiJmb2N1c291dC5icy50b29sdGlwIixNT1VTRUVOVEVSOiJtb3VzZWVudGVyLmJzLnRvb2x0aXAiLE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUuYnMudG9vbHRpcCJ9O2NsYXNzIEJ0IGV4dGVuZHMgUntjb25zdHJ1Y3Rvcih0LGUpe2lmKHZvaWQgMD09PWkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQm9vdHN0cmFwJ3MgdG9vbHRpcHMgcmVxdWlyZSBQb3BwZXIgKGh0dHBzOi8vcG9wcGVyLmpzLm9yZykiKTtzdXBlcih0KSx0aGlzLl9pc0VuYWJsZWQ9ITAsdGhpcy5fdGltZW91dD0wLHRoaXMuX2hvdmVyU3RhdGU9IiIsdGhpcy5fYWN0aXZlVHJpZ2dlcj17fSx0aGlzLl9wb3BwZXI9bnVsbCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMudGlwPW51bGwsdGhpcy5fc2V0TGlzdGVuZXJzKCl9c3RhdGljIGdldCBEZWZhdWx0KCl7cmV0dXJuIGp0fXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJ0b29sdGlwIn1zdGF0aWMgZ2V0IEV2ZW50KCl7cmV0dXJuIEh0fXN0YXRpYyBnZXQgRGVmYXVsdFR5cGUoKXtyZXR1cm4gUHR9ZW5hYmxlKCl7dGhpcy5faXNFbmFibGVkPSEwfWRpc2FibGUoKXt0aGlzLl9pc0VuYWJsZWQ9ITF9dG9nZ2xlRW5hYmxlZCgpe3RoaXMuX2lzRW5hYmxlZD0hdGhpcy5faXNFbmFibGVkfXRvZ2dsZSh0KXtpZih0aGlzLl9pc0VuYWJsZWQpaWYodCl7Y29uc3QgZT10aGlzLl9pbml0aWFsaXplT25EZWxlZ2F0ZWRUYXJnZXQodCk7ZS5fYWN0aXZlVHJpZ2dlci5jbGljaz0hZS5fYWN0aXZlVHJpZ2dlci5jbGljayxlLl9pc1dpdGhBY3RpdmVUcmlnZ2VyKCk/ZS5fZW50ZXIobnVsbCxlKTplLl9sZWF2ZShudWxsLGUpfWVsc2V7aWYodGhpcy5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKCJzaG93IikpcmV0dXJuIHZvaWQgdGhpcy5fbGVhdmUobnVsbCx0aGlzKTt0aGlzLl9lbnRlcihudWxsLHRoaXMpfX1kaXNwb3NlKCl7Y2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLEgub2ZmKHRoaXMuX2VsZW1lbnQuY2xvc2VzdCgiLm1vZGFsIiksImhpZGUuYnMubW9kYWwiLHRoaXMuX2hpZGVNb2RhbEhhbmRsZXIpLHRoaXMudGlwJiZ0aGlzLnRpcC5yZW1vdmUoKSx0aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5kZXN0cm95KCksc3VwZXIuZGlzcG9zZSgpfXNob3coKXtpZigibm9uZSI9PT10aGlzLl9lbGVtZW50LnN0eWxlLmRpc3BsYXkpdGhyb3cgbmV3IEVycm9yKCJQbGVhc2UgdXNlIHNob3cgb24gdmlzaWJsZSBlbGVtZW50cyIpO2lmKCF0aGlzLmlzV2l0aENvbnRlbnQoKXx8IXRoaXMuX2lzRW5hYmxlZClyZXR1cm47Y29uc3QgdD1ILnRyaWdnZXIodGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LlNIT1cpLGU9dSh0aGlzLl9lbGVtZW50KSxzPW51bGw9PT1lP3RoaXMuX2VsZW1lbnQub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnModGhpcy5fZWxlbWVudCk6ZS5jb250YWlucyh0aGlzLl9lbGVtZW50KTtpZih0LmRlZmF1bHRQcmV2ZW50ZWR8fCFzKXJldHVybjtjb25zdCBuPXRoaXMuZ2V0VGlwRWxlbWVudCgpLG89KHQ9Pntkb3t0Kz1NYXRoLmZsb29yKDFlNipNYXRoLnJhbmRvbSgpKX13aGlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0KSk7cmV0dXJuIHR9KSh0aGlzLmNvbnN0cnVjdG9yLk5BTUUpO24uc2V0QXR0cmlidXRlKCJpZCIsbyksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtZGVzY3JpYmVkYnkiLG8pLHRoaXMuX2NvbmZpZy5hbmltYXRpb24mJm4uY2xhc3NMaXN0LmFkZCgiZmFkZSIpO2NvbnN0IHI9ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuX2NvbmZpZy5wbGFjZW1lbnQ/dGhpcy5fY29uZmlnLnBsYWNlbWVudC5jYWxsKHRoaXMsbix0aGlzLl9lbGVtZW50KTp0aGlzLl9jb25maWcucGxhY2VtZW50LGE9dGhpcy5fZ2V0QXR0YWNobWVudChyKTt0aGlzLl9hZGRBdHRhY2htZW50Q2xhc3MoYSk7Y29uc3R7Y29udGFpbmVyOmx9PXRoaXMuX2NvbmZpZzt6LnNldChuLHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVksdGhpcyksdGhpcy5fZWxlbWVudC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jb250YWlucyh0aGlzLnRpcCl8fChsLmFwcGVuZChuKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LklOU0VSVEVEKSksdGhpcy5fcG9wcGVyP3RoaXMuX3BvcHBlci51cGRhdGUoKTp0aGlzLl9wb3BwZXI9aS5jcmVhdGVQb3BwZXIodGhpcy5fZWxlbWVudCxuLHRoaXMuX2dldFBvcHBlckNvbmZpZyhhKSksbi5jbGFzc0xpc3QuYWRkKCJzaG93Iik7Y29uc3QgYz10aGlzLl9yZXNvbHZlUG9zc2libGVGdW5jdGlvbih0aGlzLl9jb25maWcuY3VzdG9tQ2xhc3MpO2MmJm4uY2xhc3NMaXN0LmFkZCguLi5jLnNwbGl0KCIgIikpLCJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZbXS5jb25jYXQoLi4uZG9jdW1lbnQuYm9keS5jaGlsZHJlbikuZm9yRWFjaCh0PT57SC5vbih0LCJtb3VzZW92ZXIiLGcpfSk7Y29uc3QgaD10aGlzLnRpcC5jbGFzc0xpc3QuY29udGFpbnMoImZhZGUiKTt0aGlzLl9xdWV1ZUNhbGxiYWNrKCgpPT57Y29uc3QgdD10aGlzLl9ob3ZlclN0YXRlO3RoaXMuX2hvdmVyU3RhdGU9bnVsbCxILnRyaWdnZXIodGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LlNIT1dOKSwib3V0Ij09PXQmJnRoaXMuX2xlYXZlKG51bGwsdGhpcyl9LHRoaXMudGlwLGgpfWhpZGUoKXtpZighdGhpcy5fcG9wcGVyKXJldHVybjtjb25zdCB0PXRoaXMuZ2V0VGlwRWxlbWVudCgpO2lmKEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSElERSkuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47dC5jbGFzc0xpc3QucmVtb3ZlKCJzaG93IiksIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJltdLmNvbmNhdCguLi5kb2N1bWVudC5ib2R5LmNoaWxkcmVuKS5mb3JFYWNoKHQ9Pkgub2ZmKHQsIm1vdXNlb3ZlciIsZykpLHRoaXMuX2FjdGl2ZVRyaWdnZXIuY2xpY2s9ITEsdGhpcy5fYWN0aXZlVHJpZ2dlci5mb2N1cz0hMSx0aGlzLl9hY3RpdmVUcmlnZ2VyLmhvdmVyPSExO2NvbnN0IGU9dGhpcy50aXAuY2xhc3NMaXN0LmNvbnRhaW5zKCJmYWRlIik7dGhpcy5fcXVldWVDYWxsYmFjaygoKT0+e3RoaXMuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKXx8KCJzaG93IiE9PXRoaXMuX2hvdmVyU3RhdGUmJnQucmVtb3ZlKCksdGhpcy5fY2xlYW5UaXBDbGFzcygpLHRoaXMuX2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IiksSC50cmlnZ2VyKHRoaXMuX2VsZW1lbnQsdGhpcy5jb25zdHJ1Y3Rvci5FdmVudC5ISURERU4pLHRoaXMuX3BvcHBlciYmKHRoaXMuX3BvcHBlci5kZXN0cm95KCksdGhpcy5fcG9wcGVyPW51bGwpKX0sdGhpcy50aXAsZSksdGhpcy5faG92ZXJTdGF0ZT0iIn11cGRhdGUoKXtudWxsIT09dGhpcy5fcG9wcGVyJiZ0aGlzLl9wb3BwZXIudXBkYXRlKCl9aXNXaXRoQ29udGVudCgpe3JldHVybiBCb29sZWFuKHRoaXMuZ2V0VGl0bGUoKSl9Z2V0VGlwRWxlbWVudCgpe2lmKHRoaXMudGlwKXJldHVybiB0aGlzLnRpcDtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuaW5uZXJIVE1MPXRoaXMuX2NvbmZpZy50ZW1wbGF0ZTtjb25zdCBlPXQuY2hpbGRyZW5bMF07cmV0dXJuIHRoaXMuc2V0Q29udGVudChlKSxlLmNsYXNzTGlzdC5yZW1vdmUoImZhZGUiLCJzaG93IiksdGhpcy50aXA9ZSx0aGlzLnRpcH1zZXRDb250ZW50KHQpe3RoaXMuX3Nhbml0aXplQW5kU2V0Q29udGVudCh0LHRoaXMuZ2V0VGl0bGUoKSwiLnRvb2x0aXAtaW5uZXIiKX1fc2FuaXRpemVBbmRTZXRDb250ZW50KHQsZSxpKXtjb25zdCBzPVYuZmluZE9uZShpLHQpO2V8fCFzP3RoaXMuc2V0RWxlbWVudENvbnRlbnQocyxlKTpzLnJlbW92ZSgpfXNldEVsZW1lbnRDb250ZW50KHQsZSl7aWYobnVsbCE9PXQpcmV0dXJuIGEoZSk/KGU9bChlKSx2b2lkKHRoaXMuX2NvbmZpZy5odG1sP2UucGFyZW50Tm9kZSE9PXQmJih0LmlubmVySFRNTD0iIix0LmFwcGVuZChlKSk6dC50ZXh0Q29udGVudD1lLnRleHRDb250ZW50KSk6dm9pZCh0aGlzLl9jb25maWcuaHRtbD8odGhpcy5fY29uZmlnLnNhbml0aXplJiYoZT1JdChlLHRoaXMuX2NvbmZpZy5hbGxvd0xpc3QsdGhpcy5fY29uZmlnLnNhbml0aXplRm4pKSx0LmlubmVySFRNTD1lKTp0LnRleHRDb250ZW50PWUpfWdldFRpdGxlKCl7Y29uc3QgdD10aGlzLl9lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1icy1vcmlnaW5hbC10aXRsZSIpfHx0aGlzLl9jb25maWcudGl0bGU7cmV0dXJuIHRoaXMuX3Jlc29sdmVQb3NzaWJsZUZ1bmN0aW9uKHQpfXVwZGF0ZUF0dGFjaG1lbnQodCl7cmV0dXJuInJpZ2h0Ij09PXQ/ImVuZCI6ImxlZnQiPT09dD8ic3RhcnQiOnR9X2luaXRpYWxpemVPbkRlbGVnYXRlZFRhcmdldCh0LGUpe3JldHVybiBlfHx0aGlzLmNvbnN0cnVjdG9yLmdldE9yQ3JlYXRlSW5zdGFuY2UodC5kZWxlZ2F0ZVRhcmdldCx0aGlzLl9nZXREZWxlZ2F0ZUNvbmZpZygpKX1fZ2V0T2Zmc2V0KCl7Y29uc3R7b2Zmc2V0OnR9PXRoaXMuX2NvbmZpZztyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/dC5zcGxpdCgiLCIpLm1hcCh0PT5OdW1iZXIucGFyc2VJbnQodCwxMCkpOiJmdW5jdGlvbiI9PXR5cGVvZiB0P2U9PnQoZSx0aGlzLl9lbGVtZW50KTp0fV9yZXNvbHZlUG9zc2libGVGdW5jdGlvbih0KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdD90LmNhbGwodGhpcy5fZWxlbWVudCk6dH1fZ2V0UG9wcGVyQ29uZmlnKHQpe2NvbnN0IGU9e3BsYWNlbWVudDp0LG1vZGlmaWVyczpbe25hbWU6ImZsaXAiLG9wdGlvbnM6e2ZhbGxiYWNrUGxhY2VtZW50czp0aGlzLl9jb25maWcuZmFsbGJhY2tQbGFjZW1lbnRzfX0se25hbWU6Im9mZnNldCIsb3B0aW9uczp7b2Zmc2V0OnRoaXMuX2dldE9mZnNldCgpfX0se25hbWU6InByZXZlbnRPdmVyZmxvdyIsb3B0aW9uczp7Ym91bmRhcnk6dGhpcy5fY29uZmlnLmJvdW5kYXJ5fX0se25hbWU6ImFycm93IixvcHRpb25zOntlbGVtZW50OmAuJHt0aGlzLmNvbnN0cnVjdG9yLk5BTUV9LWFycm93YH19LHtuYW1lOiJvbkNoYW5nZSIsZW5hYmxlZDohMCxwaGFzZToiYWZ0ZXJXcml0ZSIsZm46dD0+dGhpcy5faGFuZGxlUG9wcGVyUGxhY2VtZW50Q2hhbmdlKHQpfV0sb25GaXJzdFVwZGF0ZTp0PT57dC5vcHRpb25zLnBsYWNlbWVudCE9PXQucGxhY2VtZW50JiZ0aGlzLl9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UodCl9fTtyZXR1cm57Li4uZSwuLi4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fY29uZmlnLnBvcHBlckNvbmZpZz90aGlzLl9jb25maWcucG9wcGVyQ29uZmlnKGUpOnRoaXMuX2NvbmZpZy5wb3BwZXJDb25maWd9fV9hZGRBdHRhY2htZW50Q2xhc3ModCl7dGhpcy5nZXRUaXBFbGVtZW50KCkuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9nZXRCYXNpY0NsYXNzUHJlZml4KCl9LSR7dGhpcy51cGRhdGVBdHRhY2htZW50KHQpfWApfV9nZXRBdHRhY2htZW50KHQpe3JldHVybiBNdFt0LnRvVXBwZXJDYXNlKCldfV9zZXRMaXN0ZW5lcnMoKXt0aGlzLl9jb25maWcudHJpZ2dlci5zcGxpdCgiICIpLmZvckVhY2godD0+e2lmKCJjbGljayI9PT10KUgub24odGhpcy5fZWxlbWVudCx0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LkNMSUNLLHRoaXMuX2NvbmZpZy5zZWxlY3Rvcix0PT50aGlzLnRvZ2dsZSh0KSk7ZWxzZSBpZigibWFudWFsIiE9PXQpe2NvbnN0IGU9ImhvdmVyIj09PXQ/dGhpcy5jb25zdHJ1Y3Rvci5FdmVudC5NT1VTRUVOVEVSOnRoaXMuY29uc3RydWN0b3IuRXZlbnQuRk9DVVNJTixpPSJob3ZlciI9PT10P3RoaXMuY29uc3RydWN0b3IuRXZlbnQuTU9VU0VMRUFWRTp0aGlzLmNvbnN0cnVjdG9yLkV2ZW50LkZPQ1VTT1VUO0gub24odGhpcy5fZWxlbWVudCxlLHRoaXMuX2NvbmZpZy5zZWxlY3Rvcix0PT50aGlzLl9lbnRlcih0KSksSC5vbih0aGlzLl9lbGVtZW50LGksdGhpcy5fY29uZmlnLnNlbGVjdG9yLHQ9PnRoaXMuX2xlYXZlKHQpKX19KSx0aGlzLl9oaWRlTW9kYWxIYW5kbGVyPSgpPT57dGhpcy5fZWxlbWVudCYmdGhpcy5oaWRlKCl9LEgub24odGhpcy5fZWxlbWVudC5jbG9zZXN0KCIubW9kYWwiKSwiaGlkZS5icy5tb2RhbCIsdGhpcy5faGlkZU1vZGFsSGFuZGxlciksdGhpcy5fY29uZmlnLnNlbGVjdG9yP3RoaXMuX2NvbmZpZz17Li4udGhpcy5fY29uZmlnLHRyaWdnZXI6Im1hbnVhbCIsc2VsZWN0b3I6IiJ9OnRoaXMuX2ZpeFRpdGxlKCl9X2ZpeFRpdGxlKCl7Y29uc3QgdD10aGlzLl9lbGVtZW50LmdldEF0dHJpYnV0ZSgidGl0bGUiKSxlPXR5cGVvZiB0aGlzLl9lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1icy1vcmlnaW5hbC10aXRsZSIpOyh0fHwic3RyaW5nIiE9PWUpJiYodGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImRhdGEtYnMtb3JpZ2luYWwtdGl0bGUiLHR8fCIiKSwhdHx8dGhpcy5fZWxlbWVudC5nZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiKXx8dGhpcy5fZWxlbWVudC50ZXh0Q29udGVudHx8dGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLHQpLHRoaXMuX2VsZW1lbnQuc2V0QXR0cmlidXRlKCJ0aXRsZSIsIiIpKX1fZW50ZXIodCxlKXtlPXRoaXMuX2luaXRpYWxpemVPbkRlbGVnYXRlZFRhcmdldCh0LGUpLHQmJihlLl9hY3RpdmVUcmlnZ2VyWyJmb2N1c2luIj09PXQudHlwZT8iZm9jdXMiOiJob3ZlciJdPSEwKSxlLmdldFRpcEVsZW1lbnQoKS5jbGFzc0xpc3QuY29udGFpbnMoInNob3ciKXx8InNob3ciPT09ZS5faG92ZXJTdGF0ZT9lLl9ob3ZlclN0YXRlPSJzaG93IjooY2xlYXJUaW1lb3V0KGUuX3RpbWVvdXQpLGUuX2hvdmVyU3RhdGU9InNob3ciLGUuX2NvbmZpZy5kZWxheSYmZS5fY29uZmlnLmRlbGF5LnNob3c/ZS5fdGltZW91dD1zZXRUaW1lb3V0KCgpPT57InNob3ciPT09ZS5faG92ZXJTdGF0ZSYmZS5zaG93KCl9LGUuX2NvbmZpZy5kZWxheS5zaG93KTplLnNob3coKSl9X2xlYXZlKHQsZSl7ZT10aGlzLl9pbml0aWFsaXplT25EZWxlZ2F0ZWRUYXJnZXQodCxlKSx0JiYoZS5fYWN0aXZlVHJpZ2dlclsiZm9jdXNvdXQiPT09dC50eXBlPyJmb2N1cyI6ImhvdmVyIl09ZS5fZWxlbWVudC5jb250YWlucyh0LnJlbGF0ZWRUYXJnZXQpKSxlLl9pc1dpdGhBY3RpdmVUcmlnZ2VyKCl8fChjbGVhclRpbWVvdXQoZS5fdGltZW91dCksZS5faG92ZXJTdGF0ZT0ib3V0IixlLl9jb25maWcuZGVsYXkmJmUuX2NvbmZpZy5kZWxheS5oaWRlP2UuX3RpbWVvdXQ9c2V0VGltZW91dCgoKT0+eyJvdXQiPT09ZS5faG92ZXJTdGF0ZSYmZS5oaWRlKCl9LGUuX2NvbmZpZy5kZWxheS5oaWRlKTplLmhpZGUoKSl9X2lzV2l0aEFjdGl2ZVRyaWdnZXIoKXtmb3IoY29uc3QgdCBpbiB0aGlzLl9hY3RpdmVUcmlnZ2VyKWlmKHRoaXMuX2FjdGl2ZVRyaWdnZXJbdF0pcmV0dXJuITA7cmV0dXJuITF9X2dldENvbmZpZyh0KXtjb25zdCBlPUsuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCk7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2godD0+e3h0Lmhhcyh0KSYmZGVsZXRlIGVbdF19KSwodD17Li4udGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0LC4uLmUsLi4uIm9iamVjdCI9PXR5cGVvZiB0JiZ0P3Q6e319KS5jb250YWluZXI9ITE9PT10LmNvbnRhaW5lcj9kb2N1bWVudC5ib2R5OmwodC5jb250YWluZXIpLCJudW1iZXIiPT10eXBlb2YgdC5kZWxheSYmKHQuZGVsYXk9e3Nob3c6dC5kZWxheSxoaWRlOnQuZGVsYXl9KSwibnVtYmVyIj09dHlwZW9mIHQudGl0bGUmJih0LnRpdGxlPXQudGl0bGUudG9TdHJpbmcoKSksIm51bWJlciI9PXR5cGVvZiB0LmNvbnRlbnQmJih0LmNvbnRlbnQ9dC5jb250ZW50LnRvU3RyaW5nKCkpLGMoInRvb2x0aXAiLHQsdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSksdC5zYW5pdGl6ZSYmKHQudGVtcGxhdGU9SXQodC50ZW1wbGF0ZSx0LmFsbG93TGlzdCx0LnNhbml0aXplRm4pKSx0fV9nZXREZWxlZ2F0ZUNvbmZpZygpe2NvbnN0IHQ9e307Zm9yKGNvbnN0IGUgaW4gdGhpcy5fY29uZmlnKXRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFtlXSE9PXRoaXMuX2NvbmZpZ1tlXSYmKHRbZV09dGhpcy5fY29uZmlnW2VdKTtyZXR1cm4gdH1fY2xlYW5UaXBDbGFzcygpe2NvbnN0IHQ9dGhpcy5nZXRUaXBFbGVtZW50KCksZT1uZXcgUmVnRXhwKGAoXnxcXHMpJHt0aGlzLl9nZXRCYXNpY0NsYXNzUHJlZml4KCl9XFxTK2AsImciKSxpPXQuZ2V0QXR0cmlidXRlKCJjbGFzcyIpLm1hdGNoKGUpO251bGwhPT1pJiZpLmxlbmd0aD4wJiZpLm1hcCh0PT50LnRyaW0oKSkuZm9yRWFjaChlPT50LmNsYXNzTGlzdC5yZW1vdmUoZSkpfV9nZXRCYXNpY0NsYXNzUHJlZml4KCl7cmV0dXJuImJzLXRvb2x0aXAifV9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2UodCl7Y29uc3R7c3RhdGU6ZX09dDtlJiYodGhpcy50aXA9ZS5lbGVtZW50cy5wb3BwZXIsdGhpcy5fY2xlYW5UaXBDbGFzcygpLHRoaXMuX2FkZEF0dGFjaG1lbnRDbGFzcyh0aGlzLl9nZXRBdHRhY2htZW50KGUucGxhY2VtZW50KSkpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPUJ0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF0pdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0oKX19KSl9fWIoQnQpO2NvbnN0IHp0PXsuLi5CdC5EZWZhdWx0LHBsYWNlbWVudDoicmlnaHQiLG9mZnNldDpbMCw4XSx0cmlnZ2VyOiJjbGljayIsY29udGVudDoiIix0ZW1wbGF0ZTonPGRpdiBjbGFzcz0icG9wb3ZlciIgcm9sZT0idG9vbHRpcCI+PGRpdiBjbGFzcz0icG9wb3Zlci1hcnJvdyI+PC9kaXY+PGgzIGNsYXNzPSJwb3BvdmVyLWhlYWRlciI+PC9oMz48ZGl2IGNsYXNzPSJwb3BvdmVyLWJvZHkiPjwvZGl2PjwvZGl2Pid9LFJ0PXsuLi5CdC5EZWZhdWx0VHlwZSxjb250ZW50OiIoc3RyaW5nfGVsZW1lbnR8ZnVuY3Rpb24pIn0sRnQ9e0hJREU6ImhpZGUuYnMucG9wb3ZlciIsSElEREVOOiJoaWRkZW4uYnMucG9wb3ZlciIsU0hPVzoic2hvdy5icy5wb3BvdmVyIixTSE9XTjoic2hvd24uYnMucG9wb3ZlciIsSU5TRVJURUQ6Imluc2VydGVkLmJzLnBvcG92ZXIiLENMSUNLOiJjbGljay5icy5wb3BvdmVyIixGT0NVU0lOOiJmb2N1c2luLmJzLnBvcG92ZXIiLEZPQ1VTT1VUOiJmb2N1c291dC5icy5wb3BvdmVyIixNT1VTRUVOVEVSOiJtb3VzZWVudGVyLmJzLnBvcG92ZXIiLE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUuYnMucG9wb3ZlciJ9O2NsYXNzIFd0IGV4dGVuZHMgQnR7c3RhdGljIGdldCBEZWZhdWx0KCl7cmV0dXJuIHp0fXN0YXRpYyBnZXQgTkFNRSgpe3JldHVybiJwb3BvdmVyIn1zdGF0aWMgZ2V0IEV2ZW50KCl7cmV0dXJuIEZ0fXN0YXRpYyBnZXQgRGVmYXVsdFR5cGUoKXtyZXR1cm4gUnR9aXNXaXRoQ29udGVudCgpe3JldHVybiB0aGlzLmdldFRpdGxlKCl8fHRoaXMuX2dldENvbnRlbnQoKX1zZXRDb250ZW50KHQpe3RoaXMuX3Nhbml0aXplQW5kU2V0Q29udGVudCh0LHRoaXMuZ2V0VGl0bGUoKSwiLnBvcG92ZXItaGVhZGVyIiksdGhpcy5fc2FuaXRpemVBbmRTZXRDb250ZW50KHQsdGhpcy5fZ2V0Q29udGVudCgpLCIucG9wb3Zlci1ib2R5Iil9X2dldENvbnRlbnQoKXtyZXR1cm4gdGhpcy5fcmVzb2x2ZVBvc3NpYmxlRnVuY3Rpb24odGhpcy5fY29uZmlnLmNvbnRlbnQpfV9nZXRCYXNpY0NsYXNzUHJlZml4KCl7cmV0dXJuImJzLXBvcG92ZXIifXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPVd0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF0pdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0oKX19KSl9fWIoV3QpO2NvbnN0ICR0PXtvZmZzZXQ6MTAsbWV0aG9kOiJhdXRvIix0YXJnZXQ6IiJ9LHF0PXtvZmZzZXQ6Im51bWJlciIsbWV0aG9kOiJzdHJpbmciLHRhcmdldDoiKHN0cmluZ3xlbGVtZW50KSJ9LFV0PSIubmF2LWxpbmssIC5saXN0LWdyb3VwLWl0ZW0sIC5kcm9wZG93bi1pdGVtIjtjbGFzcyBLdCBleHRlbmRzIFJ7Y29uc3RydWN0b3IodCxlKXtzdXBlcih0KSx0aGlzLl9zY3JvbGxFbGVtZW50PSJCT0RZIj09PXRoaXMuX2VsZW1lbnQudGFnTmFtZT93aW5kb3c6dGhpcy5fZWxlbWVudCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMuX29mZnNldHM9W10sdGhpcy5fdGFyZ2V0cz1bXSx0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLl9zY3JvbGxIZWlnaHQ9MCxILm9uKHRoaXMuX3Njcm9sbEVsZW1lbnQsInNjcm9sbC5icy5zY3JvbGxzcHkiLCgpPT50aGlzLl9wcm9jZXNzKCkpLHRoaXMucmVmcmVzaCgpLHRoaXMuX3Byb2Nlc3MoKX1zdGF0aWMgZ2V0IERlZmF1bHQoKXtyZXR1cm4gJHR9c3RhdGljIGdldCBOQU1FKCl7cmV0dXJuInNjcm9sbHNweSJ9cmVmcmVzaCgpe2NvbnN0IHQ9dGhpcy5fc2Nyb2xsRWxlbWVudD09PXRoaXMuX3Njcm9sbEVsZW1lbnQud2luZG93PyJvZmZzZXQiOiJwb3NpdGlvbiIsZT0iYXV0byI9PT10aGlzLl9jb25maWcubWV0aG9kP3Q6dGhpcy5fY29uZmlnLm1ldGhvZCxpPSJwb3NpdGlvbiI9PT1lP3RoaXMuX2dldFNjcm9sbFRvcCgpOjA7dGhpcy5fb2Zmc2V0cz1bXSx0aGlzLl90YXJnZXRzPVtdLHRoaXMuX3Njcm9sbEhlaWdodD10aGlzLl9nZXRTY3JvbGxIZWlnaHQoKSxWLmZpbmQoVXQsdGhpcy5fY29uZmlnLnRhcmdldCkubWFwKHQ9Pntjb25zdCBzPW4odCksbz1zP1YuZmluZE9uZShzKTpudWxsO2lmKG8pe2NvbnN0IHQ9by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZih0LndpZHRofHx0LmhlaWdodClyZXR1cm5bS1tlXShvKS50b3AraSxzXX1yZXR1cm4gbnVsbH0pLmZpbHRlcih0PT50KS5zb3J0KCh0LGUpPT50WzBdLWVbMF0pLmZvckVhY2godD0+e3RoaXMuX29mZnNldHMucHVzaCh0WzBdKSx0aGlzLl90YXJnZXRzLnB1c2godFsxXSl9KX1kaXNwb3NlKCl7SC5vZmYodGhpcy5fc2Nyb2xsRWxlbWVudCwiLmJzLnNjcm9sbHNweSIpLHN1cGVyLmRpc3Bvc2UoKX1fZ2V0Q29uZmlnKHQpe3JldHVybih0PXsuLi4kdCwuLi5LLmdldERhdGFBdHRyaWJ1dGVzKHRoaXMuX2VsZW1lbnQpLC4uLiJvYmplY3QiPT10eXBlb2YgdCYmdD90Ont9fSkudGFyZ2V0PWwodC50YXJnZXQpfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsYygic2Nyb2xsc3B5Iix0LHF0KSx0fV9nZXRTY3JvbGxUb3AoKXtyZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudD09PXdpbmRvdz90aGlzLl9zY3JvbGxFbGVtZW50LnBhZ2VZT2Zmc2V0OnRoaXMuX3Njcm9sbEVsZW1lbnQuc2Nyb2xsVG9wfV9nZXRTY3JvbGxIZWlnaHQoKXtyZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxIZWlnaHR8fE1hdGgubWF4KGRvY3VtZW50LmJvZHkuc2Nyb2xsSGVpZ2h0LGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxIZWlnaHQpfV9nZXRPZmZzZXRIZWlnaHQoKXtyZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudD09PXdpbmRvdz93aW5kb3cuaW5uZXJIZWlnaHQ6dGhpcy5fc2Nyb2xsRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHR9X3Byb2Nlc3MoKXtjb25zdCB0PXRoaXMuX2dldFNjcm9sbFRvcCgpK3RoaXMuX2NvbmZpZy5vZmZzZXQsZT10aGlzLl9nZXRTY3JvbGxIZWlnaHQoKSxpPXRoaXMuX2NvbmZpZy5vZmZzZXQrZS10aGlzLl9nZXRPZmZzZXRIZWlnaHQoKTtpZih0aGlzLl9zY3JvbGxIZWlnaHQhPT1lJiZ0aGlzLnJlZnJlc2goKSx0Pj1pKXtjb25zdCB0PXRoaXMuX3RhcmdldHNbdGhpcy5fdGFyZ2V0cy5sZW5ndGgtMV07dGhpcy5fYWN0aXZlVGFyZ2V0IT09dCYmdGhpcy5fYWN0aXZhdGUodCl9ZWxzZXtpZih0aGlzLl9hY3RpdmVUYXJnZXQmJnQ8dGhpcy5fb2Zmc2V0c1swXSYmdGhpcy5fb2Zmc2V0c1swXT4wKXJldHVybiB0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx2b2lkIHRoaXMuX2NsZWFyKCk7Zm9yKGxldCBlPXRoaXMuX29mZnNldHMubGVuZ3RoO2UtLTspdGhpcy5fYWN0aXZlVGFyZ2V0IT09dGhpcy5fdGFyZ2V0c1tlXSYmdD49dGhpcy5fb2Zmc2V0c1tlXSYmKHZvaWQgMD09PXRoaXMuX29mZnNldHNbZSsxXXx8dDx0aGlzLl9vZmZzZXRzW2UrMV0pJiZ0aGlzLl9hY3RpdmF0ZSh0aGlzLl90YXJnZXRzW2VdKX19X2FjdGl2YXRlKHQpe3RoaXMuX2FjdGl2ZVRhcmdldD10LHRoaXMuX2NsZWFyKCk7Y29uc3QgZT1VdC5zcGxpdCgiLCIpLm1hcChlPT5gJHtlfVtkYXRhLWJzLXRhcmdldD0iJHt0fSJdLCR7ZX1baHJlZj0iJHt0fSJdYCksaT1WLmZpbmRPbmUoZS5qb2luKCIsIiksdGhpcy5fY29uZmlnLnRhcmdldCk7aS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSxpLmNsYXNzTGlzdC5jb250YWlucygiZHJvcGRvd24taXRlbSIpP1YuZmluZE9uZSgiLmRyb3Bkb3duLXRvZ2dsZSIsaS5jbG9zZXN0KCIuZHJvcGRvd24iKSkuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIik6Vi5wYXJlbnRzKGksIi5uYXYsIC5saXN0LWdyb3VwIikuZm9yRWFjaCh0PT57Vi5wcmV2KHQsIi5uYXYtbGluaywgLmxpc3QtZ3JvdXAtaXRlbSIpLmZvckVhY2godD0+dC5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSksVi5wcmV2KHQsIi5uYXYtaXRlbSIpLmZvckVhY2godD0+e1YuY2hpbGRyZW4odCwiLm5hdi1saW5rIikuZm9yRWFjaCh0PT50LmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpKX0pfSksSC50cmlnZ2VyKHRoaXMuX3Njcm9sbEVsZW1lbnQsImFjdGl2YXRlLmJzLnNjcm9sbHNweSIse3JlbGF0ZWRUYXJnZXQ6dH0pfV9jbGVhcigpe1YuZmluZChVdCx0aGlzLl9jb25maWcudGFyZ2V0KS5maWx0ZXIodD0+dC5jbGFzc0xpc3QuY29udGFpbnMoImFjdGl2ZSIpKS5mb3JFYWNoKHQ9PnQuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIikpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPUt0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF0pdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0oKX19KSl9fUgub24od2luZG93LCJsb2FkLmJzLnNjcm9sbHNweS5kYXRhLWFwaSIsKCk9PntWLmZpbmQoJ1tkYXRhLWJzLXNweT0ic2Nyb2xsIl0nKS5mb3JFYWNoKHQ9Pm5ldyBLdCh0KSl9KSxiKEt0KTtjbGFzcyBWdCBleHRlbmRzIFJ7c3RhdGljIGdldCBOQU1FKCl7cmV0dXJuInRhYiJ9c2hvdygpe2lmKHRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSYmdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREUmJnRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJhY3RpdmUiKSlyZXR1cm47bGV0IHQ7Y29uc3QgZT1vKHRoaXMuX2VsZW1lbnQpLGk9dGhpcy5fZWxlbWVudC5jbG9zZXN0KCIubmF2LCAubGlzdC1ncm91cCIpO2lmKGkpe2NvbnN0IGU9IlVMIj09PWkubm9kZU5hbWV8fCJPTCI9PT1pLm5vZGVOYW1lPyI6c2NvcGUgPiBsaSA+IC5hY3RpdmUiOiIuYWN0aXZlIjt0PVYuZmluZChlLGkpLHQ9dFt0Lmxlbmd0aC0xXX1jb25zdCBzPXQ/SC50cmlnZ2VyKHQsImhpZGUuYnMudGFiIix7cmVsYXRlZFRhcmdldDp0aGlzLl9lbGVtZW50fSk6bnVsbDtpZihILnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvdy5icy50YWIiLHtyZWxhdGVkVGFyZ2V0OnR9KS5kZWZhdWx0UHJldmVudGVkfHxudWxsIT09cyYmcy5kZWZhdWx0UHJldmVudGVkKXJldHVybjt0aGlzLl9hY3RpdmF0ZSh0aGlzLl9lbGVtZW50LGkpO2NvbnN0IG49KCk9PntILnRyaWdnZXIodCwiaGlkZGVuLmJzLnRhYiIse3JlbGF0ZWRUYXJnZXQ6dGhpcy5fZWxlbWVudH0pLEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJzaG93bi5icy50YWIiLHtyZWxhdGVkVGFyZ2V0OnR9KX07ZT90aGlzLl9hY3RpdmF0ZShlLGUucGFyZW50Tm9kZSxuKTpuKCl9X2FjdGl2YXRlKHQsZSxpKXtjb25zdCBzPSghZXx8IlVMIiE9PWUubm9kZU5hbWUmJiJPTCIhPT1lLm5vZGVOYW1lP1YuY2hpbGRyZW4oZSwiLmFjdGl2ZSIpOlYuZmluZCgiOnNjb3BlID4gbGkgPiAuYWN0aXZlIixlKSlbMF0sbj1pJiZzJiZzLmNsYXNzTGlzdC5jb250YWlucygiZmFkZSIpLG89KCk9PnRoaXMuX3RyYW5zaXRpb25Db21wbGV0ZSh0LHMsaSk7cyYmbj8ocy5jbGFzc0xpc3QucmVtb3ZlKCJzaG93IiksdGhpcy5fcXVldWVDYWxsYmFjayhvLHQsITApKTpvKCl9X3RyYW5zaXRpb25Db21wbGV0ZSh0LGUsaSl7aWYoZSl7ZS5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKTtjb25zdCB0PVYuZmluZE9uZSgiOnNjb3BlID4gLmRyb3Bkb3duLW1lbnUgLmFjdGl2ZSIsZS5wYXJlbnROb2RlKTt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLCJ0YWIiPT09ZS5nZXRBdHRyaWJ1dGUoInJvbGUiKSYmZS5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCExKX10LmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpLCJ0YWIiPT09dC5nZXRBdHRyaWJ1dGUoInJvbGUiKSYmdC5zZXRBdHRyaWJ1dGUoImFyaWEtc2VsZWN0ZWQiLCEwKSxwKHQpLHQuY2xhc3NMaXN0LmNvbnRhaW5zKCJmYWRlIikmJnQuY2xhc3NMaXN0LmFkZCgic2hvdyIpO2xldCBzPXQucGFyZW50Tm9kZTtpZihzJiYiTEkiPT09cy5ub2RlTmFtZSYmKHM9cy5wYXJlbnROb2RlKSxzJiZzLmNsYXNzTGlzdC5jb250YWlucygiZHJvcGRvd24tbWVudSIpKXtjb25zdCBlPXQuY2xvc2VzdCgiLmRyb3Bkb3duIik7ZSYmVi5maW5kKCIuZHJvcGRvd24tdG9nZ2xlIixlKS5mb3JFYWNoKHQ9PnQuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIikpLHQuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwhMCl9aSYmaSgpfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPVZ0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyk7aWYoInN0cmluZyI9PXR5cGVvZiB0KXtpZih2b2lkIDA9PT1lW3RdKXRocm93IG5ldyBUeXBlRXJyb3IoYE5vIG1ldGhvZCBuYW1lZCAiJHt0fSJgKTtlW3RdKCl9fSkpfX1ILm9uKGRvY3VtZW50LCJjbGljay5icy50YWIuZGF0YS1hcGkiLCdbZGF0YS1icy10b2dnbGU9InRhYiJdLCBbZGF0YS1icy10b2dnbGU9InBpbGwiXSwgW2RhdGEtYnMtdG9nZ2xlPSJsaXN0Il0nLChmdW5jdGlvbih0KXtbIkEiLCJBUkVBIl0uaW5jbHVkZXModGhpcy50YWdOYW1lKSYmdC5wcmV2ZW50RGVmYXVsdCgpLGQodGhpcyl8fFZ0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcykuc2hvdygpfSkpLGIoVnQpO2NvbnN0IFh0PXthbmltYXRpb246ImJvb2xlYW4iLGF1dG9oaWRlOiJib29sZWFuIixkZWxheToibnVtYmVyIn0sWXQ9e2FuaW1hdGlvbjohMCxhdXRvaGlkZTohMCxkZWxheTo1ZTN9O2NsYXNzIFF0IGV4dGVuZHMgUntjb25zdHJ1Y3Rvcih0LGUpe3N1cGVyKHQpLHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcoZSksdGhpcy5fdGltZW91dD1udWxsLHRoaXMuX2hhc01vdXNlSW50ZXJhY3Rpb249ITEsdGhpcy5faGFzS2V5Ym9hcmRJbnRlcmFjdGlvbj0hMSx0aGlzLl9zZXRMaXN0ZW5lcnMoKX1zdGF0aWMgZ2V0IERlZmF1bHRUeXBlKCl7cmV0dXJuIFh0fXN0YXRpYyBnZXQgRGVmYXVsdCgpe3JldHVybiBZdH1zdGF0aWMgZ2V0IE5BTUUoKXtyZXR1cm4idG9hc3QifXNob3coKXtILnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvdy5icy50b2FzdCIpLmRlZmF1bHRQcmV2ZW50ZWR8fCh0aGlzLl9jbGVhclRpbWVvdXQoKSx0aGlzLl9jb25maWcuYW5pbWF0aW9uJiZ0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoImZhZGUiKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoImhpZGUiKSxwKHRoaXMuX2VsZW1lbnQpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgic2hvdyIpLHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgic2hvd2luZyIpLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCk9Pnt0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoInNob3dpbmciKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCwic2hvd24uYnMudG9hc3QiKSx0aGlzLl9tYXliZVNjaGVkdWxlSGlkZSgpfSx0aGlzLl9lbGVtZW50LHRoaXMuX2NvbmZpZy5hbmltYXRpb24pKX1oaWRlKCl7dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoInNob3ciKSYmKEgudHJpZ2dlcih0aGlzLl9lbGVtZW50LCJoaWRlLmJzLnRvYXN0IikuZGVmYXVsdFByZXZlbnRlZHx8KHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgic2hvd2luZyIpLHRoaXMuX3F1ZXVlQ2FsbGJhY2soKCk9Pnt0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoImhpZGUiKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoInNob3dpbmciKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoInNob3ciKSxILnRyaWdnZXIodGhpcy5fZWxlbWVudCwiaGlkZGVuLmJzLnRvYXN0Iil9LHRoaXMuX2VsZW1lbnQsdGhpcy5fY29uZmlnLmFuaW1hdGlvbikpKX1kaXNwb3NlKCl7dGhpcy5fY2xlYXJUaW1lb3V0KCksdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoInNob3ciKSYmdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJzaG93Iiksc3VwZXIuZGlzcG9zZSgpfV9nZXRDb25maWcodCl7cmV0dXJuIHQ9ey4uLll0LC4uLksuZ2V0RGF0YUF0dHJpYnV0ZXModGhpcy5fZWxlbWVudCksLi4uIm9iamVjdCI9PXR5cGVvZiB0JiZ0P3Q6e319LGMoInRvYXN0Iix0LHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpLHR9X21heWJlU2NoZWR1bGVIaWRlKCl7dGhpcy5fY29uZmlnLmF1dG9oaWRlJiYodGhpcy5faGFzTW91c2VJbnRlcmFjdGlvbnx8dGhpcy5faGFzS2V5Ym9hcmRJbnRlcmFjdGlvbnx8KHRoaXMuX3RpbWVvdXQ9c2V0VGltZW91dCgoKT0+e3RoaXMuaGlkZSgpfSx0aGlzLl9jb25maWcuZGVsYXkpKSl9X29uSW50ZXJhY3Rpb24odCxlKXtzd2l0Y2godC50eXBlKXtjYXNlIm1vdXNlb3ZlciI6Y2FzZSJtb3VzZW91dCI6dGhpcy5faGFzTW91c2VJbnRlcmFjdGlvbj1lO2JyZWFrO2Nhc2UiZm9jdXNpbiI6Y2FzZSJmb2N1c291dCI6dGhpcy5faGFzS2V5Ym9hcmRJbnRlcmFjdGlvbj1lfWlmKGUpcmV0dXJuIHZvaWQgdGhpcy5fY2xlYXJUaW1lb3V0KCk7Y29uc3QgaT10LnJlbGF0ZWRUYXJnZXQ7dGhpcy5fZWxlbWVudD09PWl8fHRoaXMuX2VsZW1lbnQuY29udGFpbnMoaSl8fHRoaXMuX21heWJlU2NoZWR1bGVIaWRlKCl9X3NldExpc3RlbmVycygpe0gub24odGhpcy5fZWxlbWVudCwibW91c2VvdmVyLmJzLnRvYXN0Iix0PT50aGlzLl9vbkludGVyYWN0aW9uKHQsITApKSxILm9uKHRoaXMuX2VsZW1lbnQsIm1vdXNlb3V0LmJzLnRvYXN0Iix0PT50aGlzLl9vbkludGVyYWN0aW9uKHQsITEpKSxILm9uKHRoaXMuX2VsZW1lbnQsImZvY3VzaW4uYnMudG9hc3QiLHQ9PnRoaXMuX29uSW50ZXJhY3Rpb24odCwhMCkpLEgub24odGhpcy5fZWxlbWVudCwiZm9jdXNvdXQuYnMudG9hc3QiLHQ9PnRoaXMuX29uSW50ZXJhY3Rpb24odCwhMSkpfV9jbGVhclRpbWVvdXQoKXtjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dCksdGhpcy5fdGltZW91dD1udWxsfXN0YXRpYyBqUXVlcnlJbnRlcmZhY2UodCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtjb25zdCBlPVF0LmdldE9yQ3JlYXRlSW5zdGFuY2UodGhpcyx0KTtpZigic3RyaW5nIj09dHlwZW9mIHQpe2lmKHZvaWQgMD09PWVbdF0pdGhyb3cgbmV3IFR5cGVFcnJvcihgTm8gbWV0aG9kIG5hbWVkICIke3R9ImApO2VbdF0odGhpcyl9fSkpfX1yZXR1cm4gRihRdCksYihRdCkse0FsZXJ0OlcsQnV0dG9uOiQsQ2Fyb3VzZWw6ZXQsQ29sbGFwc2U6bnQsRHJvcGRvd246cHQsTW9kYWw6VHQsT2ZmY2FudmFzOkx0LFBvcG92ZXI6V3QsU2Nyb2xsU3B5Okt0LFRhYjpWdCxUb2FzdDpRdCxUb29sdGlwOkJ0fX0pKTsNCi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJvb3RzdHJhcC5taW4uanMubWFw"}},"time_used":84,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":59,"receive":25,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/21159.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.650Z","timestamp":1785159268650,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/21159.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1109\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Mon, 27 Feb 2023 08:52:26 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:16:23 GMT\r\netag: \"7fc6b4e871a3083132fe9efd2c32810b\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 22702\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: kgUhoT0fAmD8MsaBfK7tOoL5RT1ffQZfprEoWTL6wnqFwe5evtgXtQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":1109,"size_decoded":1643,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"7fc6b4e871a3083132fe9efd2c32810b","sha1":"af58b11f58be987c5046adfe366e54ffc442dab4","sha256":"fafa5f5e91dcd9a9df807a32d2e2f632e82116d3a6315ac4880e9faeec0c842d","sha512":"e50f074d52a4ebe7e26a28e016141af04d28452709296826a865587c6d846ea7e66e74afaacf99449a8275ebb85c53561c5990d41dac1069ec51eb435571c701","ssdeep":"","tlshash":"9611b9dbf1dfb46dd9f66a2d4a586b637cd074b500d10823a44ae025343ca4d7cd97b1","first_seen":"2024-08-19T19:26:13.825682Z","last_seen":"2026-07-29T06:14:00.35321Z","times_seen":1346,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAEHElEQVR4XuWZ4ZWrNhBGp4SUQAkpgRJSAiW8DtYd5HWAO8jrgBJSAiWkhGTHRot0ZyQExhhv7jnfH+bOSNr1GuwVOZY/P/PPZ/7NRGvqfAs6sQfcmk7ehE7s5vdOJyekF7vRZ6eXk8CNrck4hdfX5GVwI7mMoWED2st5uRwKF2eGWd2Nv8Suwzyd0i1M89usPhWuG0f3+BR6sYvFORquH0f3uiuj2EVCmlmr4o/P/C12jl5rZ62KRuyckHHWHqP0t1fDh9i+2vyQOtgXont/CA5cM5g9j2aJR39RLhxUM/BDrL9XPqQM/ZBNcIjmGgtA7wD0n5USV7H+Uo+BzUtDBrEu0wW5gk5sPzME2YFuSDVsLDXTizNG3lZ0Budu3VfVcwqbSo304jSz9jCN2PlxPHJ/kkVGsQ25Ju9eXvL3gOuE6F486GmGxACUNR6NWE/TzkoR/e30cn9s1egtLPcqI/ogxXU1uX56uTO5j7o56Gl+TwzLILYnl37qydGK7dHkoHdJqhOUcgN1c/RyboBubUrQ1eS+T6TnzqbQp+Uv6LnDJpY+Pdak9OmOrsbjIgteHxVcYYKOpomFCHqPxmPNOz2dn6Vi7ZA+LX9BL46+ieXoxPpxPAap8+gkHgu/4uJEL9bLQW/JJ+xb6qc3pOUbV7HeF9lCBJ01Xu4+XSL3nOFBp9a70eYKgE6TVO+MYr3cvBo4R6NrkEas50Hnduv2ftIeW5yctwbOy83c4ozeRa/5IsuOQqdJqttoxc71oJO8y0/Quc3iBW8B1j3He0TdC87tkuodOt76rN8cXhiCHUHHG+499OwF53oPR3S89QdxHF7ogx1BxxvOuudshXO92ax7zlUchxf6SY6h4w1n3XO2wrnebNY95yqOwwvDJMfQ8Yaz7jlb4VxvNuueM4jj8ILXyLrn/JBlZyucq2sROt76rN8cXvAar7LsKHRyX1KshXM96PRp+Qad26yad2/vU5cHnZy3Bs7LzaTj/fDp3O4mtfdvOjULaLZ8DjgcbtqDzhpv6euyl8MNX5LqnZo/lQA9zZAYJ4ObzR2OTpdUZ+gtzX05g9RtlE7OU+idMQkstkn1TiPWM4Mi6J0pBgquJP57gffhJODdQs8QwyAV0gS9khug/+q4UMqJ3mNvzvXQf4Wx98hk8V7eY2LM0Asp/Tm8BTxQ6SdGr6bn9LRiD1M6EL047ay9FzyIZkiMFLpe3g4eQFN6pr+I9UsZ5f5m2B+U1TRiN60ZI8fDeyN9dS6yEQ4KaSLHoxPb88o8BIeF6Mu3BvYdnV3g0K0L6Jcv3r/inpVd4fA4Y+R9a3hw5n9BI/bgjDrfHh46l3byvyWd2APXZJD7J8p2h3jfTh8OD3hUTscodpPPyFuw9yPxKV7qj/BT7KFyGeWgA/8HnQmb9kre5jAAAAAASUVORK5CYII="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"static.getbutton.io/widget/bundle.js","fqdn":"static.getbutton.io","domain":"getbutton.io","tld":"io"},"ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.061Z","timestamp":1785159269061,"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":"getbutton.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Tue, 16 Jun 2026 00:45:37 GMT","end":"Mon, 14 Sep 2026 01:45:33 GMT"},"fingerprint":{"sha1":"DC:2F:40:2C:2E:8F:A1:FE:B6:A3:D2:1B:01:7E:28:02:66:38:0E:86","sha256":"E1:C6:2E:FD:25:F8:44:CA:B3:2C:26:9B:A5:CB:26:9B:6D:77:7B:CF:2A:52:29:CD:23:39:99:E7:89:F4:41:57"}}},"request":{"raw":"GET /widget/bundle.js HTTP/1.1\r\nHost: static.getbutton.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nReferer: https://walmartfundholdings.com/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: cloudflare\r\nlast-modified: Fri, 13 Feb 2026 07:15:48 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\netag: \"698ecfa4-6beb9\"\r\nexpires: Mon, 27 Jul 2026 15:21:51 GMT\r\ncache-control: max-age=14400\r\naccess-control-allow-origin: *\r\ncontent-encoding: gzip\r\nage: 4357\r\ncf-cache-status: HIT\r\nvary: accept-encoding\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=VltWeNQ2FcVZznUwsLg97%2FibNikde5RVx6KC7yORoY5L6wm%2Fhu1g1pP5sYZ6YLmcbGC1f%2BiC62ow9aMkENGd4uDofljiUUd7tKM0wg6rKfmisg%2BP5E%2Bo51GaRZwCWfht8cNICUw%3D\"}]}\r\ncf-ray: a21c0597ab0b3181-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":442041,"size_decoded":129345,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (65475)","md5":"bc3e8108dcd36c0d0c129a726dd8f47f","sha1":"db6320723c55ad91550a1ca87176058bed49d99c","sha256":"791450932271b1682c103cadb334baea8bf68100069c3c3eb317ed8a20098483","sha512":"821203cb21570cee7a989e40a417990e408949e7d239766562cfee62c0a0320c936bfbc8fcb2ecb35067ba1034eb7363d907edb72ccd878ee510640aa7a976b3","ssdeep":"6144:HSFryQhY3HpsS+U6qAcXha0oPKiqLVwoNbsR5LoQGnE2:xQhY3JsS+U6qASoPKiq+oNbsRFoQGnE2","tlshash":"53946de93290f0a653b352b700af240bf379641a785d8860a215ecdcf8b94ed513bf6d","first_seen":"2026-02-13T07:56:32.581356Z","last_seen":"2026-07-30T06:05:27.02052Z","times_seen":2759,"resource_available":true,"data":"LyohIEZvciBsaWNlbnNlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUgYnVuZGxlLmpzLkxJQ0VOU0UgKi8KIWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG8oZSl7dmFyIHQ7cmV0dXJuKHJbZV18fCh0PXJbZV09e2k6ZSxsOiExLGV4cG9ydHM6e319LG5bZV0uY2FsbCh0LmV4cG9ydHMsdCx0LmV4cG9ydHMsbyksdC5sPSEwLHQpKS5leHBvcnRzfXZhciBuLHI7bj1bZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKDE2OCl9LGZ1bmN0aW9uKGUsVWUsQmUpeyFmdW5jdGlvbihlKXtCZS5kKFVlLCJhIixmdW5jdGlvbigpe3JldHVybiB6ZX0pLEJlLmQoVWUsImIiLGZ1bmN0aW9uKCl7cmV0dXJuIFJlfSksQmUuZChVZSwiYyIsZnVuY3Rpb24oKXtyZXR1cm4gQX0pLEJlLmQoVWUsImUiLGZ1bmN0aW9uKCl7cmV0dXJuIE5lfSk7dmFyIGE9QmUoNTYpLHg9QmUoMCksZD1CZS5uKHgpLHQ9QmUoOTUpLFI9QmUubih0KSxOPUJlKDk2KSxEPUJlKDk3KSxVPUJlKDU4KSx0PUJlKDU3KSxCPUJlLm4odCk7ZnVuY3Rpb24gaygpe3JldHVybihrPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspe3ZhciBuLHI9YXJndW1lbnRzW3RdO2ZvcihuIGluIHIpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHIsbikmJihlW25dPXJbbl0pfXJldHVybiBlfSkuYXBwbHkodGhpcyxhcmd1bWVudHMpfXZhciBGPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPVtlWzBdXSxyPTAsbz10Lmxlbmd0aDtyPG87cis9MSluLnB1c2godFtyXSxlW3IrMV0pO3JldHVybiBufSxjPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT09ZSYmIm9iamVjdCI9PXR5cGVvZiBlJiYiW29iamVjdCBPYmplY3RdIj09PShlLnRvU3RyaW5nP2UudG9TdHJpbmcoKTpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkpJiYhT2JqZWN0KGEudHlwZU9mKShlKX0scD1PYmplY3QuZnJlZXplKFtdKSxTPU9iamVjdC5mcmVlemUoe30pO2Z1bmN0aW9uIEMoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV9ZnVuY3Rpb24gSChlKXtyZXR1cm4gZS5kaXNwbGF5TmFtZXx8ZS5uYW1lfHwiQ29tcG9uZW50In1mdW5jdGlvbiBtKGUpe3JldHVybiBlJiYic3RyaW5nIj09dHlwZW9mIGUuc3R5bGVkQ29tcG9uZW50SWR9dmFyIHU9dm9pZCAwIT09ZSYmKHtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfQVRUUnx8e1JFQUNUX0FQUF9DT05UQUNUX0ZPUk1fSE9TVDoiZ2V0YnV0dG9uLmlvIixSRUFDVF9BUFBfVkFMSURBVElPTl9VUkw6Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiLFJFQUNUX0FQUF9BTExPV0VEX0RPTUFJTlNfTElTVDoiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIixSRUFDVF9BUFBfR09PR0xFTUFQU19BUElfS0VZOiJBSXphU3lCenhObzItbGFJekFULUdycWd0NVVhUWhNU3NsVDFIQkUiLFJFQUNUX0FQUF9BSV9CVU5ETEVfVVJMOiJodHRwczovL3N0YXRpYy5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS1haS5qcyJ9LlNDX0FUVFIpfHwiZGF0YS1zdHlsZWQiLHM9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJiJIVE1MRWxlbWVudCJpbiB3aW5kb3csdD1Cb29sZWFuKCJib29sZWFuIj09dHlwZW9mIFNDX0RJU0FCTEVfU1BFRURZP1NDX0RJU0FCTEVfU1BFRURZOnZvaWQgMCE9PWUmJih2b2lkIDAhPT17UkVBQ1RfQVBQX0NPTlRBQ1RfRk9STV9IT1NUOiJnZXRidXR0b24uaW8iLFJFQUNUX0FQUF9WQUxJREFUSU9OX1VSTDoiaHR0cHM6Ly93aWRnZXQuZ2V0YnV0dG9uLmlvL2FwaS92YWxpZGF0ZSIsUkVBQ1RfQVBQX0FMTE9XRURfRE9NQUlOU19MSVNUOiJhZG1pbi5nZXRidXR0b24uaW8sIG5leHQuZ2V0YnV0dG9uLmlvLCAxMjcuMC4wLjEsIGxvY2FsaG9zdCwgdGVzdC5nZXRidXR0b24uaW8sIGRldi5nZXRidXR0b24uaW8sIGdldGJ1dHRvbi5pbywgYWRtaW4uc2hvcGlmeS5jb20iLFJFQUNUX0FQUF9HT09HTEVNQVBTX0FQSV9LRVk6IkFJemFTeUJ6eE5vMi1sYUl6QVQtR3JxZ3Q1VWFRaE1Tc2xUMUhCRSIsUkVBQ1RfQVBQX0FJX0JVTkRMRV9VUkw6Imh0dHBzOi8vc3RhdGljLmdldGJ1dHRvbi5pby93aWRnZXQvYnVuZGxlLWFpLmpzIn0uUkVBQ1RfQVBQX1NDX0RJU0FCTEVfU1BFRURZJiYiIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfRElTQUJMRV9TUEVFRFk/ImZhbHNlIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfRElTQUJMRV9TUEVFRFkmJntSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5SRUFDVF9BUFBfU0NfRElTQUJMRV9TUEVFRFk6dm9pZCAwIT09e1JFQUNUX0FQUF9DT05UQUNUX0ZPUk1fSE9TVDoiZ2V0YnV0dG9uLmlvIixSRUFDVF9BUFBfVkFMSURBVElPTl9VUkw6Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiLFJFQUNUX0FQUF9BTExPV0VEX0RPTUFJTlNfTElTVDoiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIixSRUFDVF9BUFBfR09PR0xFTUFQU19BUElfS0VZOiJBSXphU3lCenhObzItbGFJekFULUdycWd0NVVhUWhNU3NsVDFIQkUiLFJFQUNUX0FQUF9BSV9CVU5ETEVfVVJMOiJodHRwczovL3N0YXRpYy5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS1haS5qcyJ9LlNDX0RJU0FCTEVfU1BFRURZJiYiIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5TQ19ESVNBQkxFX1NQRUVEWSYmImZhbHNlIiE9PXtSRUFDVF9BUFBfQ09OVEFDVF9GT1JNX0hPU1Q6ImdldGJ1dHRvbi5pbyIsUkVBQ1RfQVBQX1ZBTElEQVRJT05fVVJMOiJodHRwczovL3dpZGdldC5nZXRidXR0b24uaW8vYXBpL3ZhbGlkYXRlIixSRUFDVF9BUFBfQUxMT1dFRF9ET01BSU5TX0xJU1Q6ImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIsUkVBQ1RfQVBQX0dPT0dMRU1BUFNfQVBJX0tFWToiQUl6YVN5Qnp4Tm8yLWxhSXpBVC1HcnFndDVVYVFoTVNzbFQxSEJFIixSRUFDVF9BUFBfQUlfQlVORExFX1VSTDoiaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifS5TQ19ESVNBQkxFX1NQRUVEWSYme1JFQUNUX0FQUF9DT05UQUNUX0ZPUk1fSE9TVDoiZ2V0YnV0dG9uLmlvIixSRUFDVF9BUFBfVkFMSURBVElPTl9VUkw6Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiLFJFQUNUX0FQUF9BTExPV0VEX0RPTUFJTlNfTElTVDoiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIixSRUFDVF9BUFBfR09PR0xFTUFQU19BUElfS0VZOiJBSXphU3lCenhObzItbGFJekFULUdycWd0NVVhUWhNU3NsVDFIQkUiLFJFQUNUX0FQUF9BSV9CVU5ETEVfVVJMOiJodHRwczovL3N0YXRpYy5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS1haS5qcyJ9LlNDX0RJU0FCTEVfU1BFRURZKSksVj17fTtmdW5jdGlvbiBoKGUpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49bmV3IEFycmF5KDE8dD90LTE6MCkscj0xO3I8dDtyKyspbltyLTFdPWFyZ3VtZW50c1tyXTt0aHJvdyBuZXcgRXJyb3IoIkFuIGVycm9yIG9jY3VycmVkLiBTZWUgaHR0cHM6Ly9naXQuaW8vSlVJYUUjIitlKyIgZm9yIG1vcmUgaW5mb3JtYXRpb24uIisoMDxuLmxlbmd0aD8iIEFyZ3M6ICIrbi5qb2luKCIsICIpOiIiKSl9ZnVuY3Rpb24gcihlKXtpZihuLmhhcyhlKSlyZXR1cm4gbi5nZXQoZSk7Zm9yKDtmLmhhcyhvKTspbysrO3ZhciB0PW8rKztyZXR1cm4gbi5zZXQoZSx0KSxmLnNldCh0LGUpLHR9ZnVuY3Rpb24gJChlKXt2YXIgdD1kb2N1bWVudC5oZWFkLHI9ZXx8dCxlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIiksdD12b2lkIDAhPT0odD1mdW5jdGlvbigpe2Zvcih2YXIgZT1yLmNoaWxkTm9kZXMsdD1lLmxlbmd0aDswPD10O3QtLSl7dmFyIG49ZVt0XTtpZihuJiYxPT09bi5ub2RlVHlwZSYmbi5oYXNBdHRyaWJ1dGUodSkpcmV0dXJuIG59fSgpKT90Lm5leHRTaWJsaW5nOm51bGwsbj0oZS5zZXRBdHRyaWJ1dGUodSwiYWN0aXZlIiksZS5zZXRBdHRyaWJ1dGUoImRhdGEtc3R5bGVkLXZlcnNpb24iLCI1LjMuMTEiKSxpKCkpO3JldHVybiBuJiZlLnNldEF0dHJpYnV0ZSgibm9uY2UiLG4pLHIuaW5zZXJ0QmVmb3JlKGUsdCksZX1mdW5jdGlvbiBXKGUpe3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGUrKDI1PGU/Mzk6OTcpKX0oZT1pZS5wcm90b3R5cGUpLmluZGV4T2ZHcm91cD1mdW5jdGlvbihlKXtmb3IodmFyIHQ9MCxuPTA7bjxlO24rKyl0Kz10aGlzLmdyb3VwU2l6ZXNbbl07cmV0dXJuIHR9LGUuaW5zZXJ0UnVsZXM9ZnVuY3Rpb24oZSx0KXtpZihlPj10aGlzLmdyb3VwU2l6ZXMubGVuZ3RoKXtmb3IodmFyIG49dGhpcy5ncm91cFNpemVzLHI9bi5sZW5ndGgsbz1yO288PWU7KShvPDw9MSk8MCYmaCgxNiwiIitlKTt0aGlzLmdyb3VwU2l6ZXM9bmV3IFVpbnQzMkFycmF5KG8pLHRoaXMuZ3JvdXBTaXplcy5zZXQobiksdGhpcy5sZW5ndGg9bztmb3IodmFyIGE9cjthPG87YSsrKXRoaXMuZ3JvdXBTaXplc1thXT0wfWZvcih2YXIgaT10aGlzLmluZGV4T2ZHcm91cChlKzEpLGw9MCxjPXQubGVuZ3RoO2w8YztsKyspdGhpcy50YWcuaW5zZXJ0UnVsZShpLHRbbF0pJiYodGhpcy5ncm91cFNpemVzW2VdKyssaSsrKX0sZS5jbGVhckdyb3VwPWZ1bmN0aW9uKGUpe2lmKGU8dGhpcy5sZW5ndGgpe3ZhciB0PXRoaXMuZ3JvdXBTaXplc1tlXSxuPXRoaXMuaW5kZXhPZkdyb3VwKGUpLHI9bit0O3RoaXMuZ3JvdXBTaXplc1tlXT0wO2Zvcih2YXIgbz1uO288cjtvKyspdGhpcy50YWcuZGVsZXRlUnVsZShuKX19LGUuZ2V0R3JvdXA9ZnVuY3Rpb24oZSl7dmFyIHQ9IiI7aWYoIShlPj10aGlzLmxlbmd0aHx8MD09PXRoaXMuZ3JvdXBTaXplc1tlXSkpZm9yKHZhciBuPXRoaXMuZ3JvdXBTaXplc1tlXSxlPXRoaXMuaW5kZXhPZkdyb3VwKGUpLHI9ZStuLG89ZTtvPHI7bysrKXQrPXRoaXMudGFnLmdldFJ1bGUobykrIi8qIXNjKi9cbiI7cmV0dXJuIHR9O3ZhciBHPWllLG49bmV3IE1hcCxmPW5ldyBNYXAsbz0xLHE9ZnVuY3Rpb24oZSx0KXtvPD10JiYobz10KzEpLG4uc2V0KGUsdCksZi5zZXQodCxlKX0sWj0ic3R5bGVbIit1KyddW2RhdGEtc3R5bGVkLXZlcnNpb249IjUuMy4xMSJdJyxYPW5ldyBSZWdFeHAoIl4iK3UrJ1xcLmcoXFxkKylcXFtpZD0iKFtcXHdcXGQtXSspIlxcXS4qPyIoW14iXSopJyksWT1mdW5jdGlvbihlLHQsbil7Zm9yKHZhciByLG89bi5zcGxpdCgiLCIpLGE9MCxpPW8ubGVuZ3RoO2E8aTthKyspKHI9b1thXSkmJmUucmVnaXN0ZXJOYW1lKHQscil9LGk9ZnVuY3Rpb24oKXtyZXR1cm4gQmUubmN9LFE9KChlPWFlLnByb3RvdHlwZSkuaW5zZXJ0UnVsZT1mdW5jdGlvbihlLHQpe3RyeXtyZXR1cm4gdGhpcy5zaGVldC5pbnNlcnRSdWxlKHQsZSksdGhpcy5sZW5ndGgrKywhMH1jYXRjaChlKXtyZXR1cm4hMX19LGUuZGVsZXRlUnVsZT1mdW5jdGlvbihlKXt0aGlzLnNoZWV0LmRlbGV0ZVJ1bGUoZSksdGhpcy5sZW5ndGgtLX0sZS5nZXRSdWxlPWZ1bmN0aW9uKGUpe2U9dGhpcy5zaGVldC5jc3NSdWxlc1tlXTtyZXR1cm4gdm9pZCAwIT09ZSYmInN0cmluZyI9PXR5cGVvZiBlLmNzc1RleHQ/ZS5jc3NUZXh0OiIifSxhZSksSz0oKGU9b2UucHJvdG90eXBlKS5pbnNlcnRSdWxlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU8PXRoaXMubGVuZ3RoJiYwPD1lJiYodD1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0KSxlPXRoaXMubm9kZXNbZV0sdGhpcy5lbGVtZW50Lmluc2VydEJlZm9yZSh0LGV8fG51bGwpLHRoaXMubGVuZ3RoKyssITApfSxlLmRlbGV0ZVJ1bGU9ZnVuY3Rpb24oZSl7dGhpcy5lbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMubm9kZXNbZV0pLHRoaXMubGVuZ3RoLS19LGUuZ2V0UnVsZT1mdW5jdGlvbihlKXtyZXR1cm4gZTx0aGlzLmxlbmd0aD90aGlzLm5vZGVzW2VdLnRleHRDb250ZW50OiIifSxvZSksSj0oKGU9cmUucHJvdG90eXBlKS5pbnNlcnRSdWxlPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU8PXRoaXMubGVuZ3RoJiYodGhpcy5ydWxlcy5zcGxpY2UoZSwwLHQpLHRoaXMubGVuZ3RoKyssITApfSxlLmRlbGV0ZVJ1bGU9ZnVuY3Rpb24oZSl7dGhpcy5ydWxlcy5zcGxpY2UoZSwxKSx0aGlzLmxlbmd0aC0tfSxlLmdldFJ1bGU9ZnVuY3Rpb24oZSl7cmV0dXJuIGU8dGhpcy5sZW5ndGg/dGhpcy5ydWxlc1tlXToiIn0scmUpLGVlPXMsdGU9e2lzU2VydmVyOiFzLHVzZUNTU09NSW5qZWN0aW9uOiF0fSxsPShnLnJlZ2lzdGVySWQ9ciwoZT1nLnByb3RvdHlwZSkucmVjb25zdHJ1Y3RXaXRoT3B0aW9ucz1mdW5jdGlvbihlLHQpe3JldHVybiB2b2lkIDA9PT10JiYodD0hMCksbmV3IGcoayh7fSx0aGlzLm9wdGlvbnMse30sZSksdGhpcy5ncyx0JiZ0aGlzLm5hbWVzfHx2b2lkIDApfSxlLmFsbG9jYXRlR1NJbnN0YW5jZT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5nc1tlXT0odGhpcy5nc1tlXXx8MCkrMX0sZS5nZXRUYWc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50YWd8fCh0aGlzLnRhZz0oZT0obj10aGlzLm9wdGlvbnMpLmlzU2VydmVyLHQ9bi51c2VDU1NPTUluamVjdGlvbixuPW4udGFyZ2V0LGU9bmV3KGU/Sjp0P1E6SykobiksbmV3IEcoZSkpKTt2YXIgZSx0LG59LGUuaGFzTmFtZUZvcklkPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubmFtZXMuaGFzKGUpJiZ0aGlzLm5hbWVzLmdldChlKS5oYXModCl9LGUucmVnaXN0ZXJOYW1lPWZ1bmN0aW9uKGUsdCl7dmFyIG47cihlKSx0aGlzLm5hbWVzLmhhcyhlKT90aGlzLm5hbWVzLmdldChlKS5hZGQodCk6KChuPW5ldyBTZXQpLmFkZCh0KSx0aGlzLm5hbWVzLnNldChlLG4pKX0sZS5pbnNlcnRSdWxlcz1mdW5jdGlvbihlLHQsbil7dGhpcy5yZWdpc3Rlck5hbWUoZSx0KSx0aGlzLmdldFRhZygpLmluc2VydFJ1bGVzKHIoZSksbil9LGUuY2xlYXJOYW1lcz1mdW5jdGlvbihlKXt0aGlzLm5hbWVzLmhhcyhlKSYmdGhpcy5uYW1lcy5nZXQoZSkuY2xlYXIoKX0sZS5jbGVhclJ1bGVzPWZ1bmN0aW9uKGUpe3RoaXMuZ2V0VGFnKCkuY2xlYXJHcm91cChyKGUpKSx0aGlzLmNsZWFyTmFtZXMoZSl9LGUuY2xlYXJUYWc9ZnVuY3Rpb24oKXt0aGlzLnRhZz12b2lkIDB9LGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcyx0PWUuZ2V0VGFnKCksbj10Lmxlbmd0aCxyPSIiLG89MDtvPG47bysrKXtjPW87dmFyIGEsaSxsLGM9Zi5nZXQoYyk7dm9pZCAwIT09YyYmKGE9ZS5uYW1lcy5nZXQoYyksaT10LmdldEdyb3VwKG8pLGEpJiZpJiZhLnNpemUmJihjPXUrIi5nIitvKydbaWQ9IicrYysnIl0nLGw9IiIsdm9pZCAwIT09YSYmYS5mb3JFYWNoKGZ1bmN0aW9uKGUpezA8ZS5sZW5ndGgmJihsKz1lKyIsIil9KSxyKz1pK2MrJ3tjb250ZW50OiInK2wrJyJ9Lyohc2MqL1xuJyl9cmV0dXJuIHJ9LGcpLG5lPS8oYSkoZCkvZ2k7ZnVuY3Rpb24gZyhlLHQsbil7aWYodm9pZCAwPT09ZSYmKGU9Uyksdm9pZCAwPT09dCYmKHQ9e30pLHRoaXMub3B0aW9ucz1rKHt9LHRlLHt9LGUpLHRoaXMuZ3M9dCx0aGlzLm5hbWVzPW5ldyBNYXAobiksdGhpcy5zZXJ2ZXI9ISFlLmlzU2VydmVyLCF0aGlzLnNlcnZlciYmcyYmZWUpe2VlPSExO2Zvcih2YXIgcj10aGlzLG89ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChaKSxhPTAsaT1vLmxlbmd0aDthPGk7YSsrKXt2YXIgbD1vW2FdO2wmJiJhY3RpdmUiIT09bC5nZXRBdHRyaWJ1dGUodSkmJihmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0odC50ZXh0Q29udGVudHx8IiIpLnNwbGl0KCIvKiFzYyovXG4iKSxyPVtdLG89MCxhPW4ubGVuZ3RoO288YTtvKyspe3ZhciBpLGwsYyx1PW5bb10udHJpbSgpO3UmJigoaT11Lm1hdGNoKFgpKT8obD0wfHBhcnNlSW50KGlbMV0sMTApLGM9aVsyXSwwIT1sJiYocShjLGwpLFkoZSxjLGlbM10pLGUuZ2V0VGFnKCkuaW5zZXJ0UnVsZXMobCxyKSksci5sZW5ndGg9MCk6ci5wdXNoKHUpKX19KHIsbCksbC5wYXJlbnROb2RlKSYmbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGwpfX19ZnVuY3Rpb24gcmUoZSl7dGhpcy5ydWxlcz1bXSx0aGlzLmxlbmd0aD0wfWZ1bmN0aW9uIG9lKGUpe2U9dGhpcy5lbGVtZW50PSQoZSk7dGhpcy5ub2Rlcz1lLmNoaWxkTm9kZXMsdGhpcy5sZW5ndGg9MH1mdW5jdGlvbiBhZShlKXtlPXRoaXMuZWxlbWVudD0kKGUpO2UuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpKSx0aGlzLnNoZWV0PWZ1bmN0aW9uKGUpe2lmKGUuc2hlZXQpcmV0dXJuIGUuc2hlZXQ7Zm9yKHZhciB0PWRvY3VtZW50LnN0eWxlU2hlZXRzLG49MCxyPXQubGVuZ3RoO248cjtuKyspe3ZhciBvPXRbbl07aWYoby5vd25lck5vZGU9PT1lKXJldHVybiBvfWgoMTcpfShlKSx0aGlzLmxlbmd0aD0wfWZ1bmN0aW9uIGllKGUpe3RoaXMuZ3JvdXBTaXplcz1uZXcgVWludDMyQXJyYXkoNTEyKSx0aGlzLmxlbmd0aD01MTIsdGhpcy50YWc9ZX1mdW5jdGlvbiBiKGUpe2Zvcih2YXIgdD0iIixuPU1hdGguYWJzKGUpOzUyPG47bj1uLzUyfDApdD1XKG4lNTIpK3Q7cmV0dXJuKFcobiU1MikrdCkucmVwbGFjZShuZSwiJDEtJDIiKX1mdW5jdGlvbiB5KGUsdCl7Zm9yKHZhciBuPXQubGVuZ3RoO247KWU9MzMqZV50LmNoYXJDb2RlQXQoLS1uKTtyZXR1cm4gZX1mdW5jdGlvbiBsZShlKXtyZXR1cm4geSg1MzgxLGUpfWZ1bmN0aW9uIGNlKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCs9MSl7dmFyIG49ZVt0XTtpZihDKG4pJiYhbShuKSlyZXR1cm4hMX1yZXR1cm4hMH12YXIgdWU9bGUoIjUuMy4xMSIpLHNlPShwZS5wcm90b3R5cGUuZ2VuZXJhdGVBbmRJbmplY3RTdHlsZXM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRoaXMuY29tcG9uZW50SWQsbz1bXTtpZih0aGlzLmJhc2VTdHlsZSYmby5wdXNoKHRoaXMuYmFzZVN0eWxlLmdlbmVyYXRlQW5kSW5qZWN0U3R5bGVzKGUsdCxuKSksdGhpcy5pc1N0YXRpYyYmIW4uaGFzaCl0aGlzLnN0YXRpY1J1bGVzSWQmJnQuaGFzTmFtZUZvcklkKHIsdGhpcy5zdGF0aWNSdWxlc0lkKT9vLnB1c2godGhpcy5zdGF0aWNSdWxlc0lkKTooYT1qKHRoaXMucnVsZXMsZSx0LG4pLmpvaW4oIiIpLGk9Yih5KHRoaXMuYmFzZUhhc2gsYSk+Pj4wKSx0Lmhhc05hbWVGb3JJZChyLGkpfHwoYT1uKGEsIi4iK2ksdm9pZCAwLHIpLHQuaW5zZXJ0UnVsZXMocixpLGEpKSxvLnB1c2goaSksdGhpcy5zdGF0aWNSdWxlc0lkPWkpO2Vsc2V7Zm9yKHZhciBhLGksbD10aGlzLnJ1bGVzLmxlbmd0aCxjPXkodGhpcy5iYXNlSGFzaCxuLmhhc2gpLHU9IiIscz0wO3M8bDtzKyspe3ZhciBmPXRoaXMucnVsZXNbc107InN0cmluZyI9PXR5cGVvZiBmP3UrPWY6ZiYmKGY9aihmLGUsdCxuKSxmPUFycmF5LmlzQXJyYXkoZik/Zi5qb2luKCIiKTpmLGM9eShjLGYrcyksdSs9Zil9dSYmKGE9YihjPj4+MCksdC5oYXNOYW1lRm9ySWQocixhKXx8KGk9bih1LCIuIithLHZvaWQgMCxyKSx0Lmluc2VydFJ1bGVzKHIsYSxpKSksby5wdXNoKGEpKX1yZXR1cm4gby5qb2luKCIgIil9LHBlKSxmZT0vXlxzKlwvXC8uKiQvZ20sZGU9WyI6IiwiWyIsIi4iLCIjIl07ZnVuY3Rpb24gcGUoZSx0LG4pe3RoaXMucnVsZXM9ZSx0aGlzLnN0YXRpY1J1bGVzSWQ9IiIsdGhpcy5pc1N0YXRpYz0odm9pZCAwPT09bnx8bi5pc1N0YXRpYykmJmNlKGUpLHRoaXMuY29tcG9uZW50SWQ9dCx0aGlzLmJhc2VIYXNoPXkodWUsdCksdGhpcy5iYXNlU3R5bGU9bixsLnJlZ2lzdGVySWQodCl9ZnVuY3Rpb24gbWUoZSl7ZnVuY3Rpb24gdChlLHQsbixyLG8sYSxpLGwsYyx1KXtzd2l0Y2goZSl7Y2FzZSAxOmlmKDA9PT1jJiY2ND09PXQuY2hhckNvZGVBdCgwKSlyZXR1cm4gcyh0KyI7IiksIiI7YnJlYWs7Y2FzZSAyOmlmKDA9PT1sKXJldHVybiB0KyIvKnwqLyI7YnJlYWs7Y2FzZSAzOnN3aXRjaChsKXtjYXNlIDEwMjpjYXNlIDExMjpyZXR1cm4gcyhuWzBdK3QpLCIiO2RlZmF1bHQ6cmV0dXJuIHQrKDA9PT11PyIvKnwqLyI6IiIpfWNhc2UtMjp0LnNwbGl0KCIvKnwqL30iKS5mb3JFYWNoKGYpfX1mdW5jdGlvbiByKGUsdCxuKXtyZXR1cm4gMD09PXQmJi0xIT09ZGUuaW5kZXhPZihuW2EubGVuZ3RoXSl8fG4ubWF0Y2gobCk/ZToiLiIrb312YXIgbyxhLGksbCxzLGU9dm9pZCAwPT09ZT9TOmUsbj1lLm9wdGlvbnMsbj12b2lkIDA9PT1uP1M6bixlPWUucGx1Z2lucyxlPXZvaWQgMD09PWU/cDplLGM9bmV3IE4uYShuKSx1PVtdO3M9ZnVuY3Rpb24oZSl7dS5wdXNoKGUpfTtmdW5jdGlvbiBmKGUpe2lmKGUpdHJ5e3MoZSsifSIpfWNhdGNoKGUpe319ZnVuY3Rpb24gZChlLHQsbixyKXt2b2lkIDA9PT1yJiYocj0iJiIpO2U9ZS5yZXBsYWNlKGZlLCIiKSxlPXQmJm4/bisiICIrdCsiIHsgIitlKyIgfSI6ZTtyZXR1cm4gbz1yLGE9dCxpPW5ldyBSZWdFeHAoIlxcIithKyJcXGIiLCJnIiksbD1uZXcgUmVnRXhwKCIoXFwiK2ErIlxcYil7Mix9IiksYyhufHwhdD8iIjp0LGUpfXJldHVybiBjLnVzZShbXS5jb25jYXQoZSxbZnVuY3Rpb24oZSx0LG4pezI9PT1lJiZuLmxlbmd0aCYmMDxuWzBdLmxhc3RJbmRleE9mKGEpJiYoblswXT1uWzBdLnJlcGxhY2UoaSxyKSl9LHQsZnVuY3Rpb24oZSl7aWYoLTI9PT1lKXJldHVybiBlPXUsdT1bXSxlfV0pKSxkLmhhc2g9ZS5sZW5ndGg/ZS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5uYW1lfHxoKDE1KSx5KGUsdC5uYW1lKX0sNTM4MSkudG9TdHJpbmcoKToiIixkfXZhciB2PWQuYS5jcmVhdGVDb250ZXh0KCksdz0odi5Db25zdW1lcixkLmEuY3JlYXRlQ29udGV4dCgpKSxoZT0ody5Db25zdW1lcixuZXcgbCksRT1tZSgpO2Z1bmN0aW9uIE8oKXtyZXR1cm4gT2JqZWN0KHgudXNlQ29udGV4dCkodil8fGhlfWZ1bmN0aW9uIGdlKCl7cmV0dXJuIE9iamVjdCh4LnVzZUNvbnRleHQpKHcpfHxFfWZ1bmN0aW9uIGJlKHQpe3ZhciBlPU9iamVjdCh4LnVzZVN0YXRlKSh0LnN0eWxpc1BsdWdpbnMpLG49ZVswXSxyPWVbMV0sbz1PKCksZT1PYmplY3QoeC51c2VNZW1vKShmdW5jdGlvbigpe3ZhciBlPW87cmV0dXJuIHQuc2hlZXQ/ZT10LnNoZWV0OnQudGFyZ2V0JiYoZT1lLnJlY29uc3RydWN0V2l0aE9wdGlvbnMoe3RhcmdldDp0LnRhcmdldH0sITEpKSxlPXQuZGlzYWJsZUNTU09NSW5qZWN0aW9uP2UucmVjb25zdHJ1Y3RXaXRoT3B0aW9ucyh7dXNlQ1NTT01JbmplY3Rpb246ITF9KTplfSxbdC5kaXNhYmxlQ1NTT01JbmplY3Rpb24sdC5zaGVldCx0LnRhcmdldF0pLGE9T2JqZWN0KHgudXNlTWVtbykoZnVuY3Rpb24oKXtyZXR1cm4gbWUoe29wdGlvbnM6e3ByZWZpeDohdC5kaXNhYmxlVmVuZG9yUHJlZml4ZXN9LHBsdWdpbnM6bn0pfSxbdC5kaXNhYmxlVmVuZG9yUHJlZml4ZXMsbl0pO3JldHVybiBPYmplY3QoeC51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7UigpKG4sdC5zdHlsaXNQbHVnaW5zKXx8cih0LnN0eWxpc1BsdWdpbnMpfSxbdC5zdHlsaXNQbHVnaW5zXSksZC5hLmNyZWF0ZUVsZW1lbnQodi5Qcm92aWRlcix7dmFsdWU6ZX0sZC5hLmNyZWF0ZUVsZW1lbnQody5Qcm92aWRlcix7dmFsdWU6YX0sdC5jaGlsZHJlbikpfVNlLnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lJiYoZT1FKSx0aGlzLm5hbWUrZS5oYXNofTt2YXIgeWU9U2UsdmU9LyhbQS1aXSkvLHdlPS8oW0EtWl0pL2cseGU9L15tcy0vLGtlPWZ1bmN0aW9uKGUpe3JldHVybiItIitlLnRvTG93ZXJDYXNlKCl9O2Z1bmN0aW9uIFNlKGUsdCl7dmFyIHI9dGhpczt0aGlzLmluamVjdD1mdW5jdGlvbihlLHQpe3ZvaWQgMD09PXQmJih0PUUpO3ZhciBuPXIubmFtZSt0Lmhhc2g7ZS5oYXNOYW1lRm9ySWQoci5pZCxuKXx8ZS5pbnNlcnRSdWxlcyhyLmlkLG4sdChyLnJ1bGVzLG4sIkBrZXlmcmFtZXMiKSl9LHRoaXMudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gaCgxMixTdHJpbmcoci5uYW1lKSl9LHRoaXMubmFtZT1lLHRoaXMuaWQ9InNjLWtleWZyYW1lcy0iK2UsdGhpcy5ydWxlcz10fWZ1bmN0aW9uIENlKGUpe3JldHVybiB2ZS50ZXN0KGUpP2UucmVwbGFjZSh3ZSxrZSkucmVwbGFjZSh4ZSwiLW1zLSIpOmV9dmFyIEVlPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lfHwhMT09PWV8fCIiPT09ZX07ZnVuY3Rpb24gaihlLHQsbixyKXtpZihBcnJheS5pc0FycmF5KGUpKXtmb3IodmFyIG8sYT1bXSxpPTAsbD1lLmxlbmd0aDtpPGw7aSs9MSkiIiE9PShvPWooZVtpXSx0LG4scikpJiYoQXJyYXkuaXNBcnJheShvKT9hLnB1c2guYXBwbHkoYSxvKTphLnB1c2gobykpO3JldHVybiBhfXJldHVybiBFZShlKT8iIjptKGUpPyIuIitlLnN0eWxlZENvbXBvbmVudElkOkMoZSk/ImZ1bmN0aW9uIiE9dHlwZW9mIGV8fGUucHJvdG90eXBlJiZlLnByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50fHwhdD9lOmooZSh0KSx0LG4scik6ZSBpbnN0YW5jZW9mIHllP24/KGUuaW5qZWN0KG4sciksZS5nZXROYW1lKHIpKTplOmMoZSk/ZnVuY3Rpb24gZSh0LG4pe3ZhciByLG8sYSxpPVtdO2ZvcihhIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShhKSYmIUVlKHRbYV0pJiYoQXJyYXkuaXNBcnJheSh0W2FdKSYmdFthXS5pc0Nzc3x8Qyh0W2FdKT9pLnB1c2goQ2UoYSkrIjoiLHRbYV0sIjsiKTpjKHRbYV0pP2kucHVzaC5hcHBseShpLGUodFthXSxhKSk6aS5wdXNoKENlKGEpKyI6ICIrKHI9YSxudWxsPT0obz10W2FdKXx8ImJvb2xlYW4iPT10eXBlb2Ygb3x8IiI9PT1vPyIiOiJudW1iZXIiIT10eXBlb2Ygb3x8MD09PW98fHIgaW4gRC5hfHxyLnN0YXJ0c1dpdGgoIi0tIik/U3RyaW5nKG8pLnRyaW0oKTpvKyJweCIpKyI7IikpO3JldHVybiBuP1tuKyIgeyJdLmNvbmNhdChpLFsifSJdKTppfShlKTplLnRvU3RyaW5nKCl9dmFyIE9lPWZ1bmN0aW9uKGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpJiYoZS5pc0Nzcz0hMCksZX07ZnVuY3Rpb24gQShlKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxuPW5ldyBBcnJheSgxPHQ/dC0xOjApLHI9MTtyPHQ7cisrKW5bci0xXT1hcmd1bWVudHNbcl07cmV0dXJuIEMoZSl8fGMoZSk/T2UoaihGKHAsW2VdLmNvbmNhdChuKSkpKTowPT09bi5sZW5ndGgmJjE9PT1lLmxlbmd0aCYmInN0cmluZyI9PXR5cGVvZiBlWzBdP2U6T2UoaihGKGUsbikpKX1uZXcgU2V0O3ZhciBqZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHZvaWQgMD09PW4mJihuPVMpLGUudGhlbWUhPT1uLnRoZW1lJiZlLnRoZW1lfHx0fHxuLnRoZW1lfSxBZT0vWyEiIyQlJicoKSorLC4vOjs8PT4/QFtcXFxdXmB7fH1+LV0rL2csUGU9LyheLXwtJCkvZztmdW5jdGlvbiBQKGUpe3JldHVybiBlLnJlcGxhY2UoQWUsIi0iKS5yZXBsYWNlKFBlLCIiKX12YXIgST1mdW5jdGlvbihlKXtyZXR1cm4gYihsZShlKT4+PjApfTtmdW5jdGlvbiBfKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmITB9dmFyIHo9ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV8fCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJiFBcnJheS5pc0FycmF5KGUpfSxJZT1mdW5jdGlvbihlKXtyZXR1cm4iX19wcm90b19fIiE9PWUmJiJjb25zdHJ1Y3RvciIhPT1lJiYicHJvdG90eXBlIiE9PWV9O2Z1bmN0aW9uIF9lKGUpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLG49bmV3IEFycmF5KDE8dD90LTE6MCkscj0xO3I8dDtyKyspbltyLTFdPWFyZ3VtZW50c1tyXTtmb3IodmFyIG8sYSxpLGw9MCxjPW47bDxjLmxlbmd0aDtsKyspe3ZhciB1PWNbbF07aWYoeih1KSlmb3IodmFyIHMgaW4gdSlJZShzKSYmKG89ZSxhPXVbc10scz1zLGk9dm9pZCAwLGk9b1tzXSx6KGEpJiZ6KGkpP19lKGksYSk6b1tzXT1hKX1yZXR1cm4gZX12YXIgVD1kLmEuY3JlYXRlQ29udGV4dCgpO1QuQ29uc3VtZXI7ZnVuY3Rpb24gemUobil7dmFyIHI9T2JqZWN0KHgudXNlQ29udGV4dCkoVCksZT1PYmplY3QoeC51c2VNZW1vKShmdW5jdGlvbigpe3JldHVybiBlPW4udGhlbWUsdD1yLGU/QyhlKT9lKHQpOkFycmF5LmlzQXJyYXkoZSl8fCJvYmplY3QiIT10eXBlb2YgZT9oKDgpOnQ/ayh7fSx0LHt9LGUpOmU6aCgxNCk7dmFyIGUsdH0sW24udGhlbWUscl0pO3JldHVybiBuLmNoaWxkcmVuP2QuYS5jcmVhdGVFbGVtZW50KFQuUHJvdmlkZXIse3ZhbHVlOmV9LG4uY2hpbGRyZW4pOm51bGx9dmFyIEw9e307ZnVuY3Rpb24gVGUocixvLGEpe3ZhciB0PW0ociksZT0hXyhyKSxuPW8uYXR0cnMsbj12b2lkIDA9PT1uP3A6bixpPW8uY29tcG9uZW50SWQsaT12b2lkIDA9PT1pP2Z1bmN0aW9uKGUsdCl7ZT0ic3RyaW5nIiE9dHlwZW9mIGU/InNjIjpQKGUpLExbZV09KExbZV18fDApKzEsZT1lKyItIitJKCI1LjMuMTEiK2UrTFtlXSk7cmV0dXJuIHQ/dCsiLSIrZTplfShvLmRpc3BsYXlOYW1lLG8ucGFyZW50Q29tcG9uZW50SWQpOmksbD1vLmRpc3BsYXlOYW1lLGw9dm9pZCAwPT09bD9fKHIpPyJzdHlsZWQuIityOiJTdHlsZWQoIitIKHIpKyIpIjpsLGk9by5kaXNwbGF5TmFtZSYmby5jb21wb25lbnRJZD9QKG8uZGlzcGxheU5hbWUpKyItIitvLmNvbXBvbmVudElkOm8uY29tcG9uZW50SWR8fGksYz10JiZyLmF0dHJzP0FycmF5LnByb3RvdHlwZS5jb25jYXQoci5hdHRycyxuKS5maWx0ZXIoQm9vbGVhbik6bix1PW8uc2hvdWxkRm9yd2FyZFByb3A7dCYmci5zaG91bGRGb3J3YXJkUHJvcCYmKHU9by5zaG91bGRGb3J3YXJkUHJvcD9mdW5jdGlvbihlLHQsbil7cmV0dXJuIHIuc2hvdWxkRm9yd2FyZFByb3AoZSx0LG4pJiZvLnNob3VsZEZvcndhcmRQcm9wKGUsdCxuKX06ci5zaG91bGRGb3J3YXJkUHJvcCk7ZnVuY3Rpb24gcyhlLHQpe3ZhciBuLHIsYSxpLG8sbD13LGM9KG09dikuYXR0cnMsdT1tLmNvbXBvbmVudFN0eWxlLHM9bS5kZWZhdWx0UHJvcHMsZj1tLmZvbGRlZENvbXBvbmVudElkcyxkPW0uc2hvdWxkRm9yd2FyZFByb3AscD1tLnN0eWxlZENvbXBvbmVudElkLG09bS50YXJnZXQsYz0ocz1qZShlLE9iamVjdCh4LnVzZUNvbnRleHQpKFQpLHMpfHxTLGM9YyxhPWsoe30sZSx7dGhlbWU6cz12b2lkIDA9PT1zP1M6c30pLGk9e30sYy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG4scixvPWU7Zm9yKHQgaW4gbz1DKG8pP28oYSk6bylhW3RdPWlbdF09ImNsYXNzTmFtZSI9PT10PyhuPWlbdF0scj1vW3RdLG4mJnI/bisiICIrcjpufHxyKTpvW3RdfSksKHM9W2EsaV0pWzFdKSxsPSh1PXUsbD1sLHM9c1swXSxuPU8oKSxyPWdlKCksbD91LmdlbmVyYXRlQW5kSW5qZWN0U3R5bGVzKFMsbixyKTp1LmdlbmVyYXRlQW5kSW5qZWN0U3R5bGVzKHMsbixyKSksdT10LGg9Yy4kYXN8fGUuJGFzfHxjLmFzfHxlLmFzfHxtLGc9XyhoKSxiPWMhPT1lP2soe30sZSx7fSxjKTplLHk9e307Zm9yKG8gaW4gYikiJCIhPT1vWzBdJiYiYXMiIT09byYmKCJmb3J3YXJkZWRBcyI9PT1vP3kuYXM9YltvXTooZD9kKG8sVS5hLGgpOiFnfHxPYmplY3QoVS5hKShvKSkmJih5W29dPWJbb10pKTtyZXR1cm4gZS5zdHlsZSYmYy5zdHlsZSE9PWUuc3R5bGUmJih5LnN0eWxlPWsoe30sZS5zdHlsZSx7fSxjLnN0eWxlKSkseS5jbGFzc05hbWU9QXJyYXkucHJvdG90eXBlLmNvbmNhdChmLHAsbCE9PXA/bDpudWxsLGUuY2xhc3NOYW1lLGMuY2xhc3NOYW1lKS5maWx0ZXIoQm9vbGVhbikuam9pbigiICIpLHkucmVmPXUsT2JqZWN0KHguY3JlYXRlRWxlbWVudCkoaCx5KX12YXIgdixmPW5ldyBzZShhLGksdD9yLmNvbXBvbmVudFN0eWxlOnZvaWQgMCksdz1mLmlzU3RhdGljJiYwPT09bi5sZW5ndGg7cmV0dXJuIHMuZGlzcGxheU5hbWU9bCwodj1kLmEuZm9yd2FyZFJlZihzKSkuYXR0cnM9Yyx2LmNvbXBvbmVudFN0eWxlPWYsdi5kaXNwbGF5TmFtZT1sLHYuc2hvdWxkRm9yd2FyZFByb3A9dSx2LmZvbGRlZENvbXBvbmVudElkcz10P0FycmF5LnByb3RvdHlwZS5jb25jYXQoci5mb2xkZWRDb21wb25lbnRJZHMsci5zdHlsZWRDb21wb25lbnRJZCk6cCx2LnN0eWxlZENvbXBvbmVudElkPWksdi50YXJnZXQ9dD9yLnRhcmdldDpyLHYud2l0aENvbXBvbmVudD1mdW5jdGlvbihlKXt2YXIgdD1vLmNvbXBvbmVudElkLG49ZnVuY3Rpb24oZSx0KXtpZihudWxsPT1lKXJldHVybnt9O2Zvcih2YXIgbixyPXt9LG89T2JqZWN0LmtleXMoZSksYT0wO2E8by5sZW5ndGg7YSsrKW49b1thXSwwPD10LmluZGV4T2Yobil8fChyW25dPWVbbl0pO3JldHVybiByfShvLFsiY29tcG9uZW50SWQiXSksdD10JiZ0KyItIisoXyhlKT9lOlAoSChlKSkpO3JldHVybiBUZShlLGsoe30sbix7YXR0cnM6Yyxjb21wb25lbnRJZDp0fSksYSl9LE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh2LCJkZWZhdWx0UHJvcHMiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZm9sZGVkRGVmYXVsdFByb3BzfSxzZXQ6ZnVuY3Rpb24oZSl7dGhpcy5fZm9sZGVkRGVmYXVsdFByb3BzPXQ/X2Uoe30sci5kZWZhdWx0UHJvcHMsZSk6ZX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkodiwidG9TdHJpbmciLHt2YWx1ZTpmdW5jdGlvbigpe3JldHVybiIuIit2LnN0eWxlZENvbXBvbmVudElkfX0pLGUmJkIoKSh2LHIse2F0dHJzOiEwLGNvbXBvbmVudFN0eWxlOiEwLGRpc3BsYXlOYW1lOiEwLGZvbGRlZENvbXBvbmVudElkczohMCxzaG91bGRGb3J3YXJkUHJvcDohMCxzdHlsZWRDb21wb25lbnRJZDohMCx0YXJnZXQ6ITAsd2l0aENvbXBvbmVudDohMH0pLHZ9ZnVuY3Rpb24gTShlKXtyZXR1cm4gZnVuY3Rpb24gdChuLHIsbyl7dmFyIGU7cmV0dXJuIHZvaWQgMD09PW8mJihvPVMpLE9iamVjdChhLmlzVmFsaWRFbGVtZW50VHlwZSkocik/KChlPWZ1bmN0aW9uKCl7cmV0dXJuIG4ocixvLEEuYXBwbHkodm9pZCAwLGFyZ3VtZW50cykpfSkud2l0aENvbmZpZz1mdW5jdGlvbihlKXtyZXR1cm4gdChuLHIsayh7fSxvLHt9LGUpKX0sZS5hdHRycz1mdW5jdGlvbihlKXtyZXR1cm4gdChuLHIsayh7fSxvLHthdHRyczpBcnJheS5wcm90b3R5cGUuY29uY2F0KG8uYXR0cnMsZSkuZmlsdGVyKEJvb2xlYW4pfSkpfSxlKTpoKDEsU3RyaW5nKHIpKX0oVGUsZSl9WyJhIiwiYWJiciIsImFkZHJlc3MiLCJhcmVhIiwiYXJ0aWNsZSIsImFzaWRlIiwiYXVkaW8iLCJiIiwiYmFzZSIsImJkaSIsImJkbyIsImJpZyIsImJsb2NrcXVvdGUiLCJib2R5IiwiYnIiLCJidXR0b24iLCJjYW52YXMiLCJjYXB0aW9uIiwiY2l0ZSIsImNvZGUiLCJjb2wiLCJjb2xncm91cCIsImRhdGEiLCJkYXRhbGlzdCIsImRkIiwiZGVsIiwiZGV0YWlscyIsImRmbiIsImRpYWxvZyIsImRpdiIsImRsIiwiZHQiLCJlbSIsImVtYmVkIiwiZmllbGRzZXQiLCJmaWdjYXB0aW9uIiwiZmlndXJlIiwiZm9vdGVyIiwiZm9ybSIsImgxIiwiaDIiLCJoMyIsImg0IiwiaDUiLCJoNiIsImhlYWQiLCJoZWFkZXIiLCJoZ3JvdXAiLCJociIsImh0bWwiLCJpIiwiaWZyYW1lIiwiaW1nIiwiaW5wdXQiLCJpbnMiLCJrYmQiLCJrZXlnZW4iLCJsYWJlbCIsImxlZ2VuZCIsImxpIiwibGluayIsIm1haW4iLCJtYXAiLCJtYXJrIiwibWFycXVlZSIsIm1lbnUiLCJtZW51aXRlbSIsIm1ldGEiLCJtZXRlciIsIm5hdiIsIm5vc2NyaXB0Iiwib2JqZWN0Iiwib2wiLCJvcHRncm91cCIsIm9wdGlvbiIsIm91dHB1dCIsInAiLCJwYXJhbSIsInBpY3R1cmUiLCJwcmUiLCJwcm9ncmVzcyIsInEiLCJycCIsInJ0IiwicnVieSIsInMiLCJzYW1wIiwic2NyaXB0Iiwic2VjdGlvbiIsInNlbGVjdCIsInNtYWxsIiwic291cmNlIiwic3BhbiIsInN0cm9uZyIsInN0eWxlIiwic3ViIiwic3VtbWFyeSIsInN1cCIsInRhYmxlIiwidGJvZHkiLCJ0ZCIsInRleHRhcmVhIiwidGZvb3QiLCJ0aCIsInRoZWFkIiwidGltZSIsInRpdGxlIiwidHIiLCJ0cmFjayIsInUiLCJ1bCIsInZhciIsInZpZGVvIiwid2JyIiwiY2lyY2xlIiwiY2xpcFBhdGgiLCJkZWZzIiwiZWxsaXBzZSIsImZvcmVpZ25PYmplY3QiLCJnIiwiaW1hZ2UiLCJsaW5lIiwibGluZWFyR3JhZGllbnQiLCJtYXJrZXIiLCJtYXNrIiwicGF0aCIsInBhdHRlcm4iLCJwb2x5Z29uIiwicG9seWxpbmUiLCJyYWRpYWxHcmFkaWVudCIsInJlY3QiLCJzdG9wIiwic3ZnIiwidGV4dCIsInRleHRQYXRoIiwidHNwYW4iXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe01bZV09TShlKX0pLCh0PU1lLnByb3RvdHlwZSkuY3JlYXRlU3R5bGVzPWZ1bmN0aW9uKGUsdCxuLHIpe3Q9cihqKHRoaXMucnVsZXMsdCxuLHIpLmpvaW4oIiIpLCIiKSxyPXRoaXMuY29tcG9uZW50SWQrZTtuLmluc2VydFJ1bGVzKHIscix0KX0sdC5yZW1vdmVTdHlsZXM9ZnVuY3Rpb24oZSx0KXt0LmNsZWFyUnVsZXModGhpcy5jb21wb25lbnRJZCtlKX0sdC5yZW5kZXJTdHlsZXM9ZnVuY3Rpb24oZSx0LG4scil7MjxlJiZsLnJlZ2lzdGVySWQodGhpcy5jb21wb25lbnRJZCtlKSx0aGlzLnJlbW92ZVN0eWxlcyhlLG4pLHRoaXMuY3JlYXRlU3R5bGVzKGUsdCxuLHIpfTt2YXIgTGU9TWU7ZnVuY3Rpb24gTWUoZSx0KXt0aGlzLnJ1bGVzPWUsdGhpcy5jb21wb25lbnRJZD10LHRoaXMuaXNTdGF0aWM9Y2UoZSksbC5yZWdpc3RlcklkKHRoaXMuY29tcG9uZW50SWQrMSl9ZnVuY3Rpb24gUmUoZSl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsbj1uZXcgQXJyYXkoMTx0P3QtMTowKSxyPTE7cjx0O3IrKyluW3ItMV09YXJndW1lbnRzW3JdO3ZhciBlPUEuYXBwbHkodm9pZCAwLFtlXS5jb25jYXQobikpLGE9InNjLWdsb2JhbC0iK0koSlNPTi5zdHJpbmdpZnkoZSkpLGk9bmV3IExlKGUsYSk7ZnVuY3Rpb24gbChlKXt2YXIgdD1PKCksbj1nZSgpLHI9T2JqZWN0KHgudXNlQ29udGV4dCkoVCksbz1PYmplY3QoeC51c2VSZWYpKHQuYWxsb2NhdGVHU0luc3RhbmNlKGEpKS5jdXJyZW50O3JldHVybiB0LnNlcnZlciYmYyhvLGUsdCxyLG4pLE9iamVjdCh4LnVzZUxheW91dEVmZmVjdCkoZnVuY3Rpb24oKXtpZighdC5zZXJ2ZXIpcmV0dXJuIGMobyxlLHQscixuKSxmdW5jdGlvbigpe3JldHVybiBpLnJlbW92ZVN0eWxlcyhvLHQpfX0sW28sZSx0LHIsbl0pLG51bGx9ZnVuY3Rpb24gYyhlLHQsbixyLG8pe2kuaXNTdGF0aWM/aS5yZW5kZXJTdHlsZXMoZSxWLG4sbyk6KHQ9ayh7fSx0LHt0aGVtZTpqZSh0LHIsbC5kZWZhdWx0UHJvcHMpfSksaS5yZW5kZXJTdHlsZXMoZSx0LG4sbykpfXJldHVybiBkLmEubWVtbyhsKX1mdW5jdGlvbiBOZShlKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxuPW5ldyBBcnJheSgxPHQ/dC0xOjApLHI9MTtyPHQ7cisrKW5bci0xXT1hcmd1bWVudHNbcl07dmFyIGU9QS5hcHBseSh2b2lkIDAsW2VdLmNvbmNhdChuKSkuam9pbigiIiksbz1JKGUpO3JldHVybiBuZXcgeWUobyxlKX0oZT1EZS5wcm90b3R5cGUpLmNvbGxlY3RTdHlsZXM9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuc2VhbGVkP2goMik6ZC5hLmNyZWF0ZUVsZW1lbnQoYmUse3NoZWV0OnRoaXMuaW5zdGFuY2V9LGUpfSxlLmludGVybGVhdmVXaXRoTm9kZVN0cmVhbT1mdW5jdGlvbihlKXtyZXR1cm4gaCgzKX07ZnVuY3Rpb24gRGUoKXt2YXIgbj10aGlzO3RoaXMuX2VtaXRTaGVldENTUz1mdW5jdGlvbigpe3ZhciBlLHQ9bi5pbnN0YW5jZS50b1N0cmluZygpO3JldHVybiB0PyI8c3R5bGUgIitbKGU9aSgpKSYmJ25vbmNlPSInK2UrJyInLHUrJz0idHJ1ZSInLCdkYXRhLXN0eWxlZC12ZXJzaW9uPSI1LjMuMTEiJ10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiAiKSsiPiIrdCsiPC9zdHlsZT4iOiIifSx0aGlzLmdldFN0eWxlVGFncz1mdW5jdGlvbigpe3JldHVybiBuLnNlYWxlZD9oKDIpOm4uX2VtaXRTaGVldENTUygpfSx0aGlzLmdldFN0eWxlRWxlbWVudD1mdW5jdGlvbigpe3ZhciBlLHQ7cmV0dXJuIG4uc2VhbGVkP2goMik6KChlPXt9KVt1XT0iIixlWyJkYXRhLXN0eWxlZC12ZXJzaW9uIl09IjUuMy4xMSIsZS5kYW5nZXJvdXNseVNldElubmVySFRNTD17X19odG1sOm4uaW5zdGFuY2UudG9TdHJpbmcoKX0sZT1lLCh0PWkoKSkmJihlLm5vbmNlPXQpLFtkLmEuY3JlYXRlRWxlbWVudCgic3R5bGUiLGsoe30sZSx7a2V5OiJzYy0wLTAifSkpXSl9LHRoaXMuc2VhbD1mdW5jdGlvbigpe24uc2VhbGVkPSEwfSx0aGlzLmluc3RhbmNlPW5ldyBsKHtpc1NlcnZlcjohMH0pLHRoaXMuc2VhbGVkPSExfVVlLmQ9TX0uY2FsbCh0aGlzLEJlKDkyKSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDYxKSxyPW4uYWxsO2UuZXhwb3J0cz1uLklTX0hUTUxEREE/ZnVuY3Rpb24oZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV8fGU9PT1yfTpmdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZX19LGZ1bmN0aW9uKG4sZSx0KXshZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdChlKXtyZXR1cm4gZSYmZS5NYXRoPT09TWF0aCYmZX1uLmV4cG9ydHM9dCgib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMpfHx0KCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3cpfHx0KCJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZil8fHQoIm9iamVjdCI9PXR5cGVvZiBlJiZlKXx8dCgib2JqZWN0Ij09dHlwZW9mIHRoaXMmJnRoaXMpfHxmdW5jdGlvbigpe3JldHVybiB0aGlzfSgpfHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfS5jYWxsKHRoaXMsdCgyMikpfSxmdW5jdGlvbihlLHQsbil7dmFyIG49bigyOCkscj1GdW5jdGlvbi5wcm90b3R5cGUsbz1yLmNhbGwscj1uJiZyLmJpbmQuYmluZChvLG8pO2UuZXhwb3J0cz1uP3I6ZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG8uYXBwbHkoZSxhcmd1bWVudHMpfX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMpLG89big2NiksYT1uKDExKSxpPW4oNjgpLGw9big2NCksbj1uKDYzKSxjPXIuU3ltYm9sLHU9bygid2tzIikscz1uP2MuZm9yfHxjOmMmJmMud2l0aG91dFNldHRlcnx8aTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGEodSxlKXx8KHVbZV09bCYmYShjLGUpP2NbZV06cygiU3ltYm9sLiIrZSkpLHVbZV19fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4hIWUoKX1jYXRjaChlKXtyZXR1cm4hMH19fSxmdW5jdGlvbihlLHQsbil7dmFyIHU9bigzKSxzPW4oNDEpLmYsZj1uKDE4KSxkPW4oMTkpLHA9big0NSksbT1uKDczKSxoPW4oNzYpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhPWUudGFyZ2V0LGk9ZS5nbG9iYWwsbD1lLnN0YXQsYz1pP3U6bD91W2FdfHxwKGEse30pOih1W2FdfHx7fSkucHJvdG90eXBlO2lmKGMpZm9yKG4gaW4gdCl7aWYocj10W25dLG89ZS5kb250Q2FsbEdldFNldD8obz1zKGMsbikpJiZvLnZhbHVlOmNbbl0sIWgoaT9uOmErKGw/Ii4iOiIjIikrbixlLmZvcmNlZCkmJnZvaWQgMCE9PW8pe2lmKHR5cGVvZiByPT10eXBlb2Ygbyljb250aW51ZTttKHIsbyl9KGUuc2hhbXx8byYmby5zaGFtKSYmZihyLCJzaGFtIiwhMCksZChjLG4scixlKX19fSxmdW5jdGlvbihlLHQsbil7dmFyIG49bigyOCkscj1GdW5jdGlvbi5wcm90b3R5cGUuY2FsbDtlLmV4cG9ydHM9bj9yLmJpbmQocik6ZnVuY3Rpb24oKXtyZXR1cm4gci5hcHBseShyLGFyZ3VtZW50cyl9fSxmdW5jdGlvbihlLHQsbil7bj1uKDYpO2UuZXhwb3J0cz0hbihmdW5jdGlvbigpe3JldHVybiA3IT09T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LDEse2dldDpmdW5jdGlvbigpe3JldHVybiA3fX0pWzFdfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDIpLG89bigzMyksYT1UeXBlRXJyb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHIoZSkpcmV0dXJuIGU7dGhyb3cgbmV3IGEobyhlKSsiIGlzIG5vdCBhIGZ1bmN0aW9uIil9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big0KSxvPW4oNjcpLGE9cih7fS5oYXNPd25Qcm9wZXJ0eSk7ZS5leHBvcnRzPU9iamVjdC5oYXNPd258fGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGEobyhlKSx0KX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEzKSxvPVN0cmluZyxhPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYocihlKSlyZXR1cm4gZTt0aHJvdyBuZXcgYShvKGUpKyIgaXMgbm90IGFuIG9iamVjdCIpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMiksbj1uKDYxKSxvPW4uYWxsO2UuZXhwb3J0cz1uLklTX0hUTUxEREE/ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlP251bGwhPT1lOnIoZSl8fGU9PT1vfTpmdW5jdGlvbihlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGU/bnVsbCE9PWU6cihlKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMpLG89bigyKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDwyPyhuPXJbZV0sbyhuKT9uOnZvaWQgMCk6cltlXSYmcltlXVt0XTt2YXIgbn19LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9ITF9LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGUpe3ZhciBuLHI7dGhpcy5wcm9taXNlPW5ldyBlKGZ1bmN0aW9uKGUsdCl7aWYodm9pZCAwIT09bnx8dm9pZCAwIT09cil0aHJvdyBuZXcgYSgiQmFkIFByb21pc2UgY29uc3RydWN0b3IiKTtuPWUscj10fSksdGhpcy5yZXNvbHZlPW8obiksdGhpcy5yZWplY3Q9byhyKX12YXIgbz1uKDEwKSxhPVR5cGVFcnJvcjtlLmV4cG9ydHMuZj1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IHIoZSl9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big5KSxvPW4oNjkpLGE9big3MCksaT1uKDEyKSxsPW4oNjApLGM9VHlwZUVycm9yLHU9T2JqZWN0LmRlZmluZVByb3BlcnR5LHM9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixmPSJlbnVtZXJhYmxlIixkPSJjb25maWd1cmFibGUiLHA9IndyaXRhYmxlIjt0LmY9cj9hP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcjtyZXR1cm4gaShlKSx0PWwodCksaShuKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmInByb3RvdHlwZSI9PT10JiYidmFsdWUiaW4gbiYmcCBpbiBuJiYhbltwXSYmKHI9cyhlLHQpKSYmcltwXSYmKGVbdF09bi52YWx1ZSxuPXtjb25maWd1cmFibGU6KGQgaW4gbj9uOnIpW2RdLGVudW1lcmFibGU6KGYgaW4gbj9uOnIpW2ZdLHdyaXRhYmxlOiExfSksdShlLHQsbil9OnU6ZnVuY3Rpb24oZSx0LG4pe2lmKGkoZSksdD1sKHQpLGkobiksbyl0cnl7cmV0dXJuIHUoZSx0LG4pfWNhdGNoKGUpe31pZigiZ2V0ImluIG58fCJzZXQiaW4gbil0aHJvdyBuZXcgYygiQWNjZXNzb3JzIG5vdCBzdXBwb3J0ZWQiKTtyZXR1cm4idmFsdWUiaW4gbiYmKGVbdF09bi52YWx1ZSksZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG89bigxNyksYT1uKDIzKTtlLmV4cG9ydHM9cj9mdW5jdGlvbihlLHQsbil7cmV0dXJuIG8uZihlLHQsYSgxLG4pKX06ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBlW3RdPW4sZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgaT1uKDIpLGw9bigxNyksYz1uKDcxKSx1PW4oNDUpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixyKXt2YXIgbz0ocj1yfHx7fSkuZW51bWVyYWJsZSxhPXZvaWQgMCE9PXIubmFtZT9yLm5hbWU6dDtpZihpKG4pJiZjKG4sYSxyKSxyLmdsb2JhbClvP2VbdF09bjp1KHQsbik7ZWxzZXt0cnl7ci51bnNhZmU/ZVt0XSYmKG89ITApOmRlbGV0ZSBlW3RdfWNhdGNoKGUpe31vP2VbdF09bjpsLmYoZSx0LHt2YWx1ZTpuLGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiFyLm5vbkNvbmZpZ3VyYWJsZSx3cml0YWJsZTohci5ub25Xcml0YWJsZX0pfXJldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1mdW5jdGlvbihlKXt0cnl7cmV0dXJue2Vycm9yOiExLHZhbHVlOmUoKX19Y2F0Y2goZSl7cmV0dXJue2Vycm9yOiEwLHZhbHVlOmV9fX19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMyk7ZS5leHBvcnRzPW4uUHJvbWlzZX0sZnVuY3Rpb24oZSx0KXt2YXIgbj1mdW5jdGlvbigpe3JldHVybiB0aGlzfSgpO3RyeXtuPW58fG5ldyBGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfWNhdGNoKGUpeyJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYobj13aW5kb3cpfWUuZXhwb3J0cz1ufSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJue2VudW1lcmFibGU6ISgxJmUpLGNvbmZpZ3VyYWJsZTohKDImZSksd3JpdGFibGU6ISg0JmUpLHZhbHVlOnR9fX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTA1KSxvPW4oNDIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gcihvKGUpKX19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiBiKGUsdCl7dGhpcy5zdG9wcGVkPWUsdGhpcy5yZXN1bHQ9dH12YXIgeT1uKDUzKSx2PW4oOCksdz1uKDEyKSx4PW4oMzMpLGs9bigxMjYpLFM9big3NSksQz1uKDMxKSxFPW4oMTI3KSxPPW4oNzgpLGo9bigxMjgpLEE9VHlwZUVycm9yLFA9Yi5wcm90b3R5cGU7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGUpe3JldHVybiBhJiZqKGEsIm5vcm1hbCIsZSksbmV3IGIoITAsZSl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZD8odyhlKSxoP2coZVswXSxlWzFdLHIpOmcoZVswXSxlWzFdKSk6aD9nKGUscik6ZyhlKX12YXIgYSxpLGwsYyx1LHMsZj1uJiZuLnRoYXQsZD0hKCFufHwhbi5BU19FTlRSSUVTKSxwPSEoIW58fCFuLklTX1JFQ09SRCksbT0hKCFufHwhbi5JU19JVEVSQVRPUiksaD0hKCFufHwhbi5JTlRFUlJVUFRFRCksZz15KHQsZik7aWYocClhPWUuaXRlcmF0b3I7ZWxzZSBpZihtKWE9ZTtlbHNle2lmKCEobj1PKGUpKSl0aHJvdyBuZXcgQSh4KGUpKyIgaXMgbm90IGl0ZXJhYmxlIik7aWYoayhuKSl7Zm9yKGk9MCxsPVMoZSk7aTxsO2krKylpZigoYz1vKGVbaV0pKSYmQyhQLGMpKXJldHVybiBjO3JldHVybiBuZXcgYighMSl9YT1FKGUsbil9Zm9yKHU9KHA/ZTphKS5uZXh0OyEocz12KHUsYSkpLmRvbmU7KXt0cnl7Yz1vKHMudmFsdWUpfWNhdGNoKGUpe2ooYSwidGhyb3ciLGUpfWlmKCJvYmplY3QiPT10eXBlb2YgYyYmYyYmQyhQLGMpKXJldHVybiBjfXJldHVybiBuZXcgYighMSl9fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPXt9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzKSxvPW4oMjEpLGE9bigyKSxpPW4oNzYpLGw9big0NiksYz1uKDUpLHU9bigxNDgpLHM9big4NyksZj1uKDE1KSxkPW4oNjUpLHA9byYmby5wcm90b3R5cGUsbT1jKCJzcGVjaWVzIiksaD0hMSxnPWEoci5Qcm9taXNlUmVqZWN0aW9uRXZlbnQpLG49aSgiUHJvbWlzZSIsZnVuY3Rpb24oKXt2YXIgZT1sKG8pLHQ9ZSE9PVN0cmluZyhvKTtpZighdCYmNjY9PT1kKXJldHVybiEwO2lmKGYmJighcC5jYXRjaHx8IXAuZmluYWxseSkpcmV0dXJuITA7aWYoIWR8fGQ8NTF8fCEvbmF0aXZlIGNvZGUvLnRlc3QoZSkpe3ZhciBlPW5ldyBvKGZ1bmN0aW9uKGUpe2UoMSl9KSxuPWZ1bmN0aW9uKGUpe2UoZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKCl7fSl9O2lmKChlLmNvbnN0cnVjdG9yPXt9KVttXT1uLCEoaD1lLnRoZW4oZnVuY3Rpb24oKXt9KWluc3RhbmNlb2YgbikpcmV0dXJuITB9cmV0dXJuIXQmJih1fHxzKSYmIWd9KTtlLmV4cG9ydHM9e0NPTlNUUlVDVE9SOm4sUkVKRUNUSU9OX0VWRU5UOmcsU1VCQ0xBU1NJTkc6aH19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNik7ZS5leHBvcnRzPSFuKGZ1bmN0aW9uKCl7dmFyIGU9ZnVuY3Rpb24oKXt9LmJpbmQoKTtyZXR1cm4iZnVuY3Rpb24iIT10eXBlb2YgZXx8ZS5oYXNPd25Qcm9wZXJ0eSgicHJvdG90eXBlIil9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBuPW4oNCkscj1uKHt9LnRvU3RyaW5nKSxvPW4oIiIuc2xpY2UpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhyKGUpLDgsLTEpfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZX19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNCk7ZS5leHBvcnRzPW4oe30uaXNQcm90b3R5cGVPZil9LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9InVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJlN0cmluZyhuYXZpZ2F0b3IudXNlckFnZW50KXx8IiJ9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gcihlKX1jYXRjaChlKXtyZXR1cm4iT2JqZWN0In19fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzKSxuPW4oMTMpLG89ci5kb2N1bWVudCxhPW4obykmJm4oby5jcmVhdGVFbGVtZW50KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGE/by5jcmVhdGVFbGVtZW50KGUpOnt9fX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByLG8sYSxpLGw9bigxMDgpLGM9bigzKSx1PW4oMTMpLHM9bigxOCksZj1uKDExKSxkPW4oNDQpLHA9big0Nyksbj1uKDQ4KSxtPSJPYmplY3QgYWxyZWFkeSBpbml0aWFsaXplZCIsaD1jLlR5cGVFcnJvcixjPWMuV2Vha01hcCxnPWx8fGQuc3RhdGU/KChhPWQuc3RhdGV8fChkLnN0YXRlPW5ldyBjKSkuZ2V0PWEuZ2V0LGEuaGFzPWEuaGFzLGEuc2V0PWEuc2V0LHI9ZnVuY3Rpb24oZSx0KXtpZihhLmhhcyhlKSl0aHJvdyBuZXcgaChtKTtyZXR1cm4gdC5mYWNhZGU9ZSxhLnNldChlLHQpLHR9LG89ZnVuY3Rpb24oZSl7cmV0dXJuIGEuZ2V0KGUpfHx7fX0sZnVuY3Rpb24oZSl7cmV0dXJuIGEuaGFzKGUpfSk6KG5baT1wKCJzdGF0ZSIpXT0hMCxyPWZ1bmN0aW9uKGUsdCl7aWYoZihlLGkpKXRocm93IG5ldyBoKG0pO3JldHVybiB0LmZhY2FkZT1lLHMoZSxpLHQpLHR9LG89ZnVuY3Rpb24oZSl7cmV0dXJuIGYoZSxpKT9lW2ldOnt9fSxmdW5jdGlvbihlKXtyZXR1cm4gZihlLGkpfSk7ZS5leHBvcnRzPXtzZXQ6cixnZXQ6byxoYXM6ZyxlbmZvcmNlOmZ1bmN0aW9uKGUpe3JldHVybiBnKGUpP28oZSk6cihlLHt9KX0sZ2V0dGVyRm9yOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlKXtpZih1KGUpJiYoZT1vKGUpKS50eXBlPT09dClyZXR1cm4gZTt0aHJvdyBuZXcgaCgiSW5jb21wYXRpYmxlIHJlY2VpdmVyLCAiK3QrIiByZXF1aXJlZCIpfX19fSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcigpe31mdW5jdGlvbiBvKGUpe2Uud3JpdGUoaCgiIikpLGUuY2xvc2UoKTt2YXIgdD1lLnBhcmVudFdpbmRvdy5PYmplY3Q7cmV0dXJuIGU9bnVsbCx0fXZhciBhLGk9bigxMiksbD1uKDExOSksYz1uKDUwKSx1PW4oNDgpLHM9big3NyksZj1uKDM0KSxuPW4oNDcpLGQ9InByb3RvdHlwZSIscD0ic2NyaXB0IixtPW4oIklFX1BST1RPIiksaD1mdW5jdGlvbihlKXtyZXR1cm4iPCIrcCsiPiIrZSsiPC8iK3ArIj4ifSxnPWZ1bmN0aW9uKCl7dHJ5e2E9bmV3IEFjdGl2ZVhPYmplY3QoImh0bWxmaWxlIil9Y2F0Y2goZSl7fWc9InVuZGVmaW5lZCI9PXR5cGVvZiBkb2N1bWVudHx8ZG9jdW1lbnQuZG9tYWluJiZhP28oYSk6KGU9ZigiaWZyYW1lIiksdD0iamF2YSIrcCsiOiIsZS5zdHlsZS5kaXNwbGF5PSJub25lIixzLmFwcGVuZENoaWxkKGUpLGUuc3JjPVN0cmluZyh0KSwodD1lLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQpLm9wZW4oKSx0LndyaXRlKGgoImRvY3VtZW50LkY9T2JqZWN0IikpLHQuY2xvc2UoKSx0LkYpO2Zvcih2YXIgZSx0LG49Yy5sZW5ndGg7bi0tOylkZWxldGUgZ1tkXVtjW25dXTtyZXR1cm4gZygpfTt1W21dPSEwLGUuZXhwb3J0cz1PYmplY3QuY3JlYXRlfHxmdW5jdGlvbihlLHQpe3ZhciBuO3JldHVybiBudWxsIT09ZT8ocltkXT1pKGUpLG49bmV3IHIscltkXT1udWxsLG5bbV09ZSk6bj1nKCksdm9pZCAwPT09dD9uOmwuZihuLHQpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNTQpLG89bigyKSxhPW4oMjkpLGk9big1KSgidG9TdHJpbmdUYWciKSxsPU9iamVjdCxjPSJBcmd1bWVudHMiPT09YShmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHN9KCkpO2UuZXhwb3J0cz1yP2E6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuIHZvaWQgMD09PWU/IlVuZGVmaW5lZCI6bnVsbD09PWU/Ik51bGwiOiJzdHJpbmciPT10eXBlb2YodD1mdW5jdGlvbihlLHQpe3RyeXtyZXR1cm4gZVt0XX1jYXRjaChlKXt9fShlPWwoZSksaSkpP3Q6Yz9hKGUpOiJPYmplY3QiPT09KHQ9YShlKSkmJm8oZS5jYWxsZWUpPyJBcmd1bWVudHMiOnR9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxNykuZixvPW4oMTEpLGE9big1KSgidG9TdHJpbmdUYWciKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4peyhlPWUmJiFuP2UucHJvdG90eXBlOmUpJiYhbyhlLGEpJiZyKGUsYSx7Y29uZmlndXJhYmxlOiEwLHZhbHVlOnR9KX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMpLG49bigyOSk7ZS5leHBvcnRzPSJwcm9jZXNzIj09PW4oci5wcm9jZXNzKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMjEpLG89bigxNTApLG49bigyNykuQ09OU1RSVUNUT1I7ZS5leHBvcnRzPW58fCFvKGZ1bmN0aW9uKGUpe3IuYWxsKGUpLnRoZW4odm9pZCAwLGZ1bmN0aW9uKCl7fSl9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oOSksbz1uKDgpLGE9bigxMDQpLGk9bigyMyksbD1uKDI0KSxjPW4oNjApLHU9bigxMSkscz1uKDY5KSxmPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7dC5mPXI/ZjpmdW5jdGlvbihlLHQpe2lmKGU9bChlKSx0PWModCkscyl0cnl7cmV0dXJuIGYoZSx0KX1jYXRjaChlKXt9aWYodShlLHQpKXJldHVybiBpKCFvKGEuZixlLHQpLGVbdF0pfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMzApLG89VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZihyKGUpKXRocm93IG5ldyBvKCJDYW4ndCBjYWxsIG1ldGhvZCBvbiAiK2UpO3JldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTApLG89bigzMCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7ZT1lW3RdO3JldHVybiBvKGUpP3ZvaWQgMDpyKGUpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMyksbj1uKDQ1KSxvPSJfX2NvcmUtanNfc2hhcmVkX18iLHI9cltvXXx8bihvLHt9KTtlLmV4cG9ydHM9cn0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMyksbz1PYmplY3QuZGVmaW5lUHJvcGVydHk7ZS5leHBvcnRzPWZ1bmN0aW9uKHQsbil7dHJ5e28ocix0LHt2YWx1ZTpuLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pfWNhdGNoKGUpe3JbdF09bn1yZXR1cm4gbn19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLG89bigyKSxuPW4oNDQpLGE9cihGdW5jdGlvbi50b1N0cmluZyk7byhuLmluc3BlY3RTb3VyY2UpfHwobi5pbnNwZWN0U291cmNlPWZ1bmN0aW9uKGUpe3JldHVybiBhKGUpfSksZS5leHBvcnRzPW4uaW5zcGVjdFNvdXJjZX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNjYpLG89big2OCksYT1yKCJrZXlzIik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBhW2VdfHwoYVtlXT1vKGUpKX19LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9e319LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDExMyk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2U9K2U7cmV0dXJuIGUhPWV8fDA9PWU/MDpyKGUpfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1bImNvbnN0cnVjdG9yIiwiaGFzT3duUHJvcGVydHkiLCJpc1Byb3RvdHlwZU9mIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJ0b0xvY2FsZVN0cmluZyIsInRvU3RyaW5nIiwidmFsdWVPZiJdfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxMSksbz1uKDIpLGE9big2NyksaT1uKDQ3KSxuPW4oMTE2KSxsPWkoIklFX1BST1RPIiksYz1PYmplY3QsdT1jLnByb3RvdHlwZTtlLmV4cG9ydHM9bj9jLmdldFByb3RvdHlwZU9mOmZ1bmN0aW9uKGUpe3ZhciB0LGU9YShlKTtyZXR1cm4gcihlLGwpP2VbbF06KHQ9ZS5jb25zdHJ1Y3RvcixvKHQpJiZlIGluc3RhbmNlb2YgdD90LnByb3RvdHlwZTplIGluc3RhbmNlb2YgYz91Om51bGwpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBvPW4oMTE3KSxhPW4oMTIpLGk9bigxMTgpO2UuZXhwb3J0cz1PYmplY3Quc2V0UHJvdG90eXBlT2Z8fCgiX19wcm90b19fImlue30/ZnVuY3Rpb24oKXt2YXIgbixyPSExLGU9e307dHJ5eyhuPW8oT2JqZWN0LnByb3RvdHlwZSwiX19wcm90b19fIiwic2V0IikpKGUsW10pLHI9ZSBpbnN0YW5jZW9mIEFycmF5fWNhdGNoKGUpe31yZXR1cm4gZnVuY3Rpb24oZSx0KXtyZXR1cm4gYShlKSxpKHQpLHI/bihlLHQpOmUuX19wcm90b19fPXQsZX19KCk6dm9pZCAwKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTI1KSxvPW4oMTApLGE9bigyOCksaT1yKHIuYmluZCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG8oZSksdm9pZCAwPT09dD9lOmE/aShlLHQpOmZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodCxhcmd1bWVudHMpfX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj17fTtyW24oNSkoInRvU3RyaW5nVGFnIildPSJ6IixlLmV4cG9ydHM9IltvYmplY3Qgel0iPT09U3RyaW5nKHIpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzNyksbz1TdHJpbmc7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKCJTeW1ib2wiPT09cihlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY29udmVydCBhIFN5bWJvbCB2YWx1ZSB0byBhIHN0cmluZyIpO3JldHVybiBvKGUpfX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1uKDE3NSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDE3Niksbz17Y2hpbGRDb250ZXh0VHlwZXM6ITAsY29udGV4dFR5cGU6ITAsY29udGV4dFR5cGVzOiEwLGRlZmF1bHRQcm9wczohMCxkaXNwbGF5TmFtZTohMCxnZXREZWZhdWx0UHJvcHM6ITAsZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yOiEwLGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wczohMCxtaXhpbnM6ITAscHJvcFR5cGVzOiEwLHR5cGU6ITB9LGY9e25hbWU6ITAsbGVuZ3RoOiEwLHByb3RvdHlwZTohMCxjYWxsZXI6ITAsY2FsbGVlOiEwLGFyZ3VtZW50czohMCxhcml0eTohMH0sYT17JCR0eXBlb2Y6ITAsY29tcGFyZTohMCxkZWZhdWx0UHJvcHM6ITAsZGlzcGxheU5hbWU6ITAscHJvcFR5cGVzOiEwLHR5cGU6ITB9LGk9e307ZnVuY3Rpb24gZChlKXtyZXR1cm4gci5pc01lbW8oZSk/YTppW2UuJCR0eXBlb2ZdfHxvfWlbci5Gb3J3YXJkUmVmXT17JCR0eXBlb2Y6ITAscmVuZGVyOiEwLGRlZmF1bHRQcm9wczohMCxkaXNwbGF5TmFtZTohMCxwcm9wVHlwZXM6ITB9LGlbci5NZW1vXT1hO3ZhciBwPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSxtPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzLGg9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyxnPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IsYj1PYmplY3QuZ2V0UHJvdG90eXBlT2YseT1PYmplY3QucHJvdG90eXBlO2UuZXhwb3J0cz1mdW5jdGlvbiBlKHQsbixyKXtpZigic3RyaW5nIiE9dHlwZW9mIG4pe3kmJihvPWIobikpJiZvIT09eSYmZSh0LG8scik7Zm9yKHZhciBvLGE9bShuKSxpPShoJiYoYT1hLmNvbmNhdChoKG4pKSksZCh0KSksbD1kKG4pLGM9MDtjPGEubGVuZ3RoOysrYyl7dmFyIHU9YVtjXTtpZighKGZbdV18fHImJnJbdV18fGwmJmxbdV18fGkmJmlbdV0pKXt2YXIgcz1nKG4sdSk7dHJ5e3AodCx1LHMpfWNhdGNoKGUpe319fX1yZXR1cm4gdH19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKHQpe3ZhciBuPU9iamVjdC5jcmVhdGUobnVsbCk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1uW2VdJiYobltlXT10KGUpKSxuW2VdfX1uLmQodCwiYSIsZnVuY3Rpb24oKXtyZXR1cm4gYX0pO3ZhciBvPS9eKChjaGlsZHJlbnxkYW5nZXJvdXNseVNldElubmVySFRNTHxrZXl8cmVmfGF1dG9Gb2N1c3xkZWZhdWx0VmFsdWV8ZGVmYXVsdENoZWNrZWR8aW5uZXJIVE1MfHN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZ3xzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmd8dmFsdWVMaW5rfGFiYnJ8YWNjZXB0fGFjY2VwdENoYXJzZXR8YWNjZXNzS2V5fGFjdGlvbnxhbGxvd3xhbGxvd1VzZXJNZWRpYXxhbGxvd1BheW1lbnRSZXF1ZXN0fGFsbG93RnVsbFNjcmVlbnxhbGxvd1RyYW5zcGFyZW5jeXxhbHR8YXN5bmN8YXV0b0NvbXBsZXRlfGF1dG9QbGF5fGNhcHR1cmV8Y2VsbFBhZGRpbmd8Y2VsbFNwYWNpbmd8Y2hhbGxlbmdlfGNoYXJTZXR8Y2hlY2tlZHxjaXRlfGNsYXNzSUR8Y2xhc3NOYW1lfGNvbHN8Y29sU3Bhbnxjb250ZW50fGNvbnRlbnRFZGl0YWJsZXxjb250ZXh0TWVudXxjb250cm9sc3xjb250cm9sc0xpc3R8Y29vcmRzfGNyb3NzT3JpZ2lufGRhdGF8ZGF0ZVRpbWV8ZGVjb2Rpbmd8ZGVmYXVsdHxkZWZlcnxkaXJ8ZGlzYWJsZWR8ZGlzYWJsZVBpY3R1cmVJblBpY3R1cmV8ZG93bmxvYWR8ZHJhZ2dhYmxlfGVuY1R5cGV8ZW50ZXJLZXlIaW50fGZvcm18Zm9ybUFjdGlvbnxmb3JtRW5jVHlwZXxmb3JtTWV0aG9kfGZvcm1Ob1ZhbGlkYXRlfGZvcm1UYXJnZXR8ZnJhbWVCb3JkZXJ8aGVhZGVyc3xoZWlnaHR8aGlkZGVufGhpZ2h8aHJlZnxocmVmTGFuZ3xodG1sRm9yfGh0dHBFcXVpdnxpZHxpbnB1dE1vZGV8aW50ZWdyaXR5fGlzfGtleVBhcmFtc3xrZXlUeXBlfGtpbmR8bGFiZWx8bGFuZ3xsaXN0fGxvYWRpbmd8bG9vcHxsb3d8bWFyZ2luSGVpZ2h0fG1hcmdpbldpZHRofG1heHxtYXhMZW5ndGh8bWVkaWF8bWVkaWFHcm91cHxtZXRob2R8bWlufG1pbkxlbmd0aHxtdWx0aXBsZXxtdXRlZHxuYW1lfG5vbmNlfG5vVmFsaWRhdGV8b3BlbnxvcHRpbXVtfHBhdHRlcm58cGxhY2Vob2xkZXJ8cGxheXNJbmxpbmV8cG9zdGVyfHByZWxvYWR8cHJvZmlsZXxyYWRpb0dyb3VwfHJlYWRPbmx5fHJlZmVycmVyUG9saWN5fHJlbHxyZXF1aXJlZHxyZXZlcnNlZHxyb2xlfHJvd3N8cm93U3BhbnxzYW5kYm94fHNjb3BlfHNjb3BlZHxzY3JvbGxpbmd8c2VhbWxlc3N8c2VsZWN0ZWR8c2hhcGV8c2l6ZXxzaXplc3xzbG90fHNwYW58c3BlbGxDaGVja3xzcmN8c3JjRG9jfHNyY0xhbmd8c3JjU2V0fHN0YXJ0fHN0ZXB8c3R5bGV8c3VtbWFyeXx0YWJJbmRleHx0YXJnZXR8dGl0bGV8dHJhbnNsYXRlfHR5cGV8dXNlTWFwfHZhbHVlfHdpZHRofHdtb2RlfHdyYXB8YWJvdXR8ZGF0YXR5cGV8aW5saXN0fHByZWZpeHxwcm9wZXJ0eXxyZXNvdXJjZXx0eXBlb2Z8dm9jYWJ8YXV0b0NhcGl0YWxpemV8YXV0b0NvcnJlY3R8YXV0b1NhdmV8Y29sb3J8aW5jcmVtZW50YWx8ZmFsbGJhY2t8aW5lcnR8aXRlbVByb3B8aXRlbVNjb3BlfGl0ZW1UeXBlfGl0ZW1JRHxpdGVtUmVmfG9ufG9wdGlvbnxyZXN1bHRzfHNlY3VyaXR5fHVuc2VsZWN0YWJsZXxhY2NlbnRIZWlnaHR8YWNjdW11bGF0ZXxhZGRpdGl2ZXxhbGlnbm1lbnRCYXNlbGluZXxhbGxvd1Jlb3JkZXJ8YWxwaGFiZXRpY3xhbXBsaXR1ZGV8YXJhYmljRm9ybXxhc2NlbnR8YXR0cmlidXRlTmFtZXxhdHRyaWJ1dGVUeXBlfGF1dG9SZXZlcnNlfGF6aW11dGh8YmFzZUZyZXF1ZW5jeXxiYXNlbGluZVNoaWZ0fGJhc2VQcm9maWxlfGJib3h8YmVnaW58Ymlhc3xieXxjYWxjTW9kZXxjYXBIZWlnaHR8Y2xpcHxjbGlwUGF0aFVuaXRzfGNsaXBQYXRofGNsaXBSdWxlfGNvbG9ySW50ZXJwb2xhdGlvbnxjb2xvckludGVycG9sYXRpb25GaWx0ZXJzfGNvbG9yUHJvZmlsZXxjb2xvclJlbmRlcmluZ3xjb250ZW50U2NyaXB0VHlwZXxjb250ZW50U3R5bGVUeXBlfGN1cnNvcnxjeHxjeXxkfGRlY2VsZXJhdGV8ZGVzY2VudHxkaWZmdXNlQ29uc3RhbnR8ZGlyZWN0aW9ufGRpc3BsYXl8ZGl2aXNvcnxkb21pbmFudEJhc2VsaW5lfGR1cnxkeHxkeXxlZGdlTW9kZXxlbGV2YXRpb258ZW5hYmxlQmFja2dyb3VuZHxlbmR8ZXhwb25lbnR8ZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZHxmaWxsfGZpbGxPcGFjaXR5fGZpbGxSdWxlfGZpbHRlcnxmaWx0ZXJSZXN8ZmlsdGVyVW5pdHN8Zmxvb2RDb2xvcnxmbG9vZE9wYWNpdHl8Zm9jdXNhYmxlfGZvbnRGYW1pbHl8Zm9udFNpemV8Zm9udFNpemVBZGp1c3R8Zm9udFN0cmV0Y2h8Zm9udFN0eWxlfGZvbnRWYXJpYW50fGZvbnRXZWlnaHR8Zm9ybWF0fGZyb218ZnJ8Znh8Znl8ZzF8ZzJ8Z2x5cGhOYW1lfGdseXBoT3JpZW50YXRpb25Ib3Jpem9udGFsfGdseXBoT3JpZW50YXRpb25WZXJ0aWNhbHxnbHlwaFJlZnxncmFkaWVudFRyYW5zZm9ybXxncmFkaWVudFVuaXRzfGhhbmdpbmd8aG9yaXpBZHZYfGhvcml6T3JpZ2luWHxpZGVvZ3JhcGhpY3xpbWFnZVJlbmRlcmluZ3xpbnxpbjJ8aW50ZXJjZXB0fGt8azF8azJ8azN8azR8a2VybmVsTWF0cml4fGtlcm5lbFVuaXRMZW5ndGh8a2VybmluZ3xrZXlQb2ludHN8a2V5U3BsaW5lc3xrZXlUaW1lc3xsZW5ndGhBZGp1c3R8bGV0dGVyU3BhY2luZ3xsaWdodGluZ0NvbG9yfGxpbWl0aW5nQ29uZUFuZ2xlfGxvY2FsfG1hcmtlckVuZHxtYXJrZXJNaWR8bWFya2VyU3RhcnR8bWFya2VySGVpZ2h0fG1hcmtlclVuaXRzfG1hcmtlcldpZHRofG1hc2t8bWFza0NvbnRlbnRVbml0c3xtYXNrVW5pdHN8bWF0aGVtYXRpY2FsfG1vZGV8bnVtT2N0YXZlc3xvZmZzZXR8b3BhY2l0eXxvcGVyYXRvcnxvcmRlcnxvcmllbnR8b3JpZW50YXRpb258b3JpZ2lufG92ZXJmbG93fG92ZXJsaW5lUG9zaXRpb258b3ZlcmxpbmVUaGlja25lc3N8cGFub3NlMXxwYWludE9yZGVyfHBhdGhMZW5ndGh8cGF0dGVybkNvbnRlbnRVbml0c3xwYXR0ZXJuVHJhbnNmb3JtfHBhdHRlcm5Vbml0c3xwb2ludGVyRXZlbnRzfHBvaW50c3xwb2ludHNBdFh8cG9pbnRzQXRZfHBvaW50c0F0WnxwcmVzZXJ2ZUFscGhhfHByZXNlcnZlQXNwZWN0UmF0aW98cHJpbWl0aXZlVW5pdHN8cnxyYWRpdXN8cmVmWHxyZWZZfHJlbmRlcmluZ0ludGVudHxyZXBlYXRDb3VudHxyZXBlYXREdXJ8cmVxdWlyZWRFeHRlbnNpb25zfHJlcXVpcmVkRmVhdHVyZXN8cmVzdGFydHxyZXN1bHR8cm90YXRlfHJ4fHJ5fHNjYWxlfHNlZWR8c2hhcGVSZW5kZXJpbmd8c2xvcGV8c3BhY2luZ3xzcGVjdWxhckNvbnN0YW50fHNwZWN1bGFyRXhwb25lbnR8c3BlZWR8c3ByZWFkTWV0aG9kfHN0YXJ0T2Zmc2V0fHN0ZERldmlhdGlvbnxzdGVtaHxzdGVtdnxzdGl0Y2hUaWxlc3xzdG9wQ29sb3J8c3RvcE9wYWNpdHl8c3RyaWtldGhyb3VnaFBvc2l0aW9ufHN0cmlrZXRocm91Z2hUaGlja25lc3N8c3RyaW5nfHN0cm9rZXxzdHJva2VEYXNoYXJyYXl8c3Ryb2tlRGFzaG9mZnNldHxzdHJva2VMaW5lY2FwfHN0cm9rZUxpbmVqb2lufHN0cm9rZU1pdGVybGltaXR8c3Ryb2tlT3BhY2l0eXxzdHJva2VXaWR0aHxzdXJmYWNlU2NhbGV8c3lzdGVtTGFuZ3VhZ2V8dGFibGVWYWx1ZXN8dGFyZ2V0WHx0YXJnZXRZfHRleHRBbmNob3J8dGV4dERlY29yYXRpb258dGV4dFJlbmRlcmluZ3x0ZXh0TGVuZ3RofHRvfHRyYW5zZm9ybXx1MXx1Mnx1bmRlcmxpbmVQb3NpdGlvbnx1bmRlcmxpbmVUaGlja25lc3N8dW5pY29kZXx1bmljb2RlQmlkaXx1bmljb2RlUmFuZ2V8dW5pdHNQZXJFbXx2QWxwaGFiZXRpY3x2SGFuZ2luZ3x2SWRlb2dyYXBoaWN8dk1hdGhlbWF0aWNhbHx2YWx1ZXN8dmVjdG9yRWZmZWN0fHZlcnNpb258dmVydEFkdll8dmVydE9yaWdpblh8dmVydE9yaWdpbll8dmlld0JveHx2aWV3VGFyZ2V0fHZpc2liaWxpdHl8d2lkdGhzfHdvcmRTcGFjaW5nfHdyaXRpbmdNb2RlfHh8eEhlaWdodHx4MXx4Mnx4Q2hhbm5lbFNlbGVjdG9yfHhsaW5rQWN0dWF0ZXx4bGlua0FyY3JvbGV8eGxpbmtIcmVmfHhsaW5rUm9sZXx4bGlua1Nob3d8eGxpbmtUaXRsZXx4bGlua1R5cGV8eG1sQmFzZXx4bWxuc3x4bWxuc1hsaW5rfHhtbExhbmd8eG1sU3BhY2V8eXx5MXx5Mnx5Q2hhbm5lbFNlbGVjdG9yfHp8em9vbUFuZFBhbnxmb3J8Y2xhc3N8YXV0b2ZvY3VzKXwoKFtEZF1bQWFdW1R0XVtBYV18W0FhXVtScl1bSWldW0FhXXx4KS0uKikpJC8sYT1yKGZ1bmN0aW9uKGUpe3JldHVybiBvLnRlc3QoZSl8fDExMT09PWUuY2hhckNvZGVBdCgwKSYmMTEwPT09ZS5jaGFyQ29kZUF0KDEpJiZlLmNoYXJDb2RlQXQoMik8OTF9KX0sZnVuY3Rpb24oZSx0LG4pe24oMTAzKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTA2KSxvPW4oNjIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtlPXIoZSwic3RyaW5nIik7cmV0dXJuIG8oZSk/ZTplKyIifX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPSJvYmplY3QiPT10eXBlb2YgZG9jdW1lbnQmJmRvY3VtZW50LmFsbDtlLmV4cG9ydHM9e2FsbDpyLElTX0hUTUxEREE6dm9pZCAwPT09ciYmdm9pZCAwIT09cn19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDE0KSxvPW4oMiksYT1uKDMxKSxuPW4oNjMpLGk9T2JqZWN0O2UuZXhwb3J0cz1uP2Z1bmN0aW9uKGUpe3JldHVybiJzeW1ib2wiPT10eXBlb2YgZX06ZnVuY3Rpb24oZSl7dmFyIHQ9cigiU3ltYm9sIik7cmV0dXJuIG8odCkmJmEodC5wcm90b3R5cGUsaShlKSl9fSxmdW5jdGlvbihlLHQsbil7bj1uKDY0KTtlLmV4cG9ydHM9biYmIVN5bWJvbC5zaGFtJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcn0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNjUpLG89big2KSxhPW4oMykuU3RyaW5nO2UuZXhwb3J0cz0hIU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMmJiFvKGZ1bmN0aW9uKCl7dmFyIGU9U3ltYm9sKCJzeW1ib2wgZGV0ZWN0aW9uIik7cmV0dXJuIWEoZSl8fCEoT2JqZWN0KGUpaW5zdGFuY2VvZiBTeW1ib2wpfHwhU3ltYm9sLnNoYW0mJnImJnI8NDF9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByLG8sYT1uKDMpLG49bigzMiksaT1hLnByb2Nlc3MsYT1hLkRlbm8saT1pJiZpLnZlcnNpb25zfHxhJiZhLnZlcnNpb24sYT1pJiZpLnY4OyEobz1hPzA8KHI9YS5zcGxpdCgiLiIpKVswXSYmclswXTw0PzE6KyhyWzBdK3JbMV0pOm8pJiZuJiYoIShyPW4ubWF0Y2goL0VkZ2VcLyhcZCspLykpfHw3NDw9clsxXSkmJihyPW4ubWF0Y2goL0Nocm9tZVwvKFxkKykvKSkmJihvPStyWzFdKSxlLmV4cG9ydHM9b30sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTUpLG89big0NCk7KGUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3JldHVybiBvW2VdfHwob1tlXT12b2lkIDAhPT10P3Q6e30pfSkoInZlcnNpb25zIixbXSkucHVzaCh7dmVyc2lvbjoiMy4zNC4wIixtb2RlOnI/InB1cmUiOiJnbG9iYWwiLGNvcHlyaWdodDoiwqkgMjAxNC0yMDIzIERlbmlzIFB1c2hrYXJldiAoemxvaXJvY2sucnUpIixsaWNlbnNlOiJodHRwczovL2dpdGh1Yi5jb20vemxvaXJvY2svY29yZS1qcy9ibG9iL3YzLjM0LjAvTElDRU5TRSIsc291cmNlOiJodHRwczovL2dpdGh1Yi5jb20vemxvaXJvY2svY29yZS1qcyJ9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNDIpLG89T2JqZWN0O2UuZXhwb3J0cz1mdW5jdGlvbihlKXtyZXR1cm4gbyhyKGUpKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDQpLHI9MCxvPU1hdGgucmFuZG9tKCksYT1uKDEuLnRvU3RyaW5nKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIlN5bWJvbCgiKyh2b2lkIDA9PT1lPyIiOmUpKyIpXyIrYSgrK3IrbywzNil9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big5KSxvPW4oNiksYT1uKDM0KTtlLmV4cG9ydHM9IXImJiFvKGZ1bmN0aW9uKCl7cmV0dXJuIDchPT1PYmplY3QuZGVmaW5lUHJvcGVydHkoYSgiZGl2IiksImEiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gN319KS5hfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG49big2KTtlLmV4cG9ydHM9ciYmbihmdW5jdGlvbigpe3JldHVybiA0MiE9PU9iamVjdC5kZWZpbmVQcm9wZXJ0eShmdW5jdGlvbigpe30sInByb3RvdHlwZSIse3ZhbHVlOjQyLHdyaXRhYmxlOiExfSkucHJvdG90eXBlfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLG89big2KSxhPW4oMiksaT1uKDExKSxsPW4oOSksYz1uKDcyKS5DT05GSUdVUkFCTEUsdT1uKDQ2KSxuPW4oMzUpLHM9bi5lbmZvcmNlLGY9bi5nZXQsZD1TdHJpbmcscD1PYmplY3QuZGVmaW5lUHJvcGVydHksbT1yKCIiLnNsaWNlKSxoPXIoIiIucmVwbGFjZSksZz1yKFtdLmpvaW4pLGI9bCYmIW8oZnVuY3Rpb24oKXtyZXR1cm4gOCE9PXAoZnVuY3Rpb24oKXt9LCJsZW5ndGgiLHt2YWx1ZTo4fSkubGVuZ3RofSkseT1TdHJpbmcoU3RyaW5nKS5zcGxpdCgiU3RyaW5nIiksbj1lLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4peyJTeW1ib2woIj09PW0oZCh0KSwwLDcpJiYodD0iWyIraChkKHQpLC9eU3ltYm9sXCgoW14pXSopXCkvLCIkMSIpKyJdIiksbiYmbi5nZXR0ZXImJih0PSJnZXQgIit0KSxuJiZuLnNldHRlciYmKHQ9InNldCAiK3QpLCghaShlLCJuYW1lIil8fGMmJmUubmFtZSE9PXQpJiYobD9wKGUsIm5hbWUiLHt2YWx1ZTp0LGNvbmZpZ3VyYWJsZTohMH0pOmUubmFtZT10KSxiJiZuJiZpKG4sImFyaXR5IikmJmUubGVuZ3RoIT09bi5hcml0eSYmcChlLCJsZW5ndGgiLHt2YWx1ZTpuLmFyaXR5fSk7dHJ5e24mJmkobiwiY29uc3RydWN0b3IiKSYmbi5jb25zdHJ1Y3Rvcj9sJiZwKGUsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSk6ZS5wcm90b3R5cGUmJihlLnByb3RvdHlwZT12b2lkIDApfWNhdGNoKGUpe31uPXMoZSk7cmV0dXJuIGkobiwic291cmNlIil8fChuLnNvdXJjZT1nKHksInN0cmluZyI9PXR5cGVvZiB0P3Q6IiIpKSxlfTtGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc9bihmdW5jdGlvbigpe3JldHVybiBhKHRoaXMpJiZmKHRoaXMpLnNvdXJjZXx8dSh0aGlzKX0sInRvU3RyaW5nIil9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG49bigxMSksbz1GdW5jdGlvbi5wcm90b3R5cGUsYT1yJiZPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yLG49bihvLCJuYW1lIiksaT1uJiYic29tZXRoaW5nIj09PWZ1bmN0aW9uKCl7fS5uYW1lLHI9biYmKCFyfHxhKG8sIm5hbWUiKS5jb25maWd1cmFibGUpO2UuZXhwb3J0cz17RVhJU1RTOm4sUFJPUEVSOmksQ09ORklHVVJBQkxFOnJ9fSxmdW5jdGlvbihlLHQsbil7dmFyIGM9bigxMSksdT1uKDEwOSkscz1uKDQxKSxmPW4oMTcpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPXUodCksbz1mLmYsYT1zLmYsaT0wO2k8ci5sZW5ndGg7aSsrKXt2YXIgbD1yW2ldO2MoZSxsKXx8biYmYyhuLGwpfHxvKGUsbCxhKHQsbCkpfX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLGk9bigxMSksbD1uKDI0KSxjPW4oMTExKS5pbmRleE9mLHU9big0OCkscz1yKFtdLnB1c2gpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHI9bChlKSxvPTAsYT1bXTtmb3IobiBpbiByKSFpKHUsbikmJmkocixuKSYmcyhhLG4pO2Zvcig7dC5sZW5ndGg+bzspIWkocixuPXRbbysrXSl8fH5jKGEsbil8fHMoYSxuKTtyZXR1cm4gYX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDExNCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiByKGUubGVuZ3RoKX19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGUsdCl7cmV0dXJuKGU9Y1tsKGUpXSk9PT1zfHxlIT09dSYmKGEodCk/byh0KTohIXQpfXZhciBvPW4oNiksYT1uKDIpLGk9LyN8XC5wcm90b3R5cGVcLi8sbD1yLm5vcm1hbGl6ZT1mdW5jdGlvbihlKXtyZXR1cm4gU3RyaW5nKGUpLnJlcGxhY2UoaSwiLiIpLnRvTG93ZXJDYXNlKCl9LGM9ci5kYXRhPXt9LHU9ci5OQVRJVkU9Ik4iLHM9ci5QT0xZRklMTD0iUCI7ZS5leHBvcnRzPXJ9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMTQpO2UuZXhwb3J0cz1uKCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigzNyksbz1uKDQzKSxhPW4oMzApLGk9bigyNiksbD1uKDUpKCJpdGVyYXRvciIpO2UuZXhwb3J0cz1mdW5jdGlvbihlKXtpZighYShlKSlyZXR1cm4gbyhlLGwpfHxvKGUsIkBAaXRlcmF0b3IiKXx8aVtyKGUpXX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDI0KSxvPW4oMTMwKSxhPW4oMjYpLGk9bigzNSksbD1uKDE3KS5mLGM9big4MCksdT1uKDgyKSxzPW4oMTUpLG49big5KSxmPSJBcnJheSBJdGVyYXRvciIsZD1pLnNldCxwPWkuZ2V0dGVyRm9yKGYpLGk9KGUuZXhwb3J0cz1jKEFycmF5LCJBcnJheSIsZnVuY3Rpb24oZSx0KXtkKHRoaXMse3R5cGU6Zix0YXJnZXQ6cihlKSxpbmRleDowLGtpbmQ6dH0pfSxmdW5jdGlvbigpe3ZhciBlPXAodGhpcyksdD1lLnRhcmdldCxuPWUuaW5kZXgrKztpZighdHx8bj49dC5sZW5ndGgpcmV0dXJuIGUudGFyZ2V0PXZvaWQgMCx1KHZvaWQgMCwhMCk7c3dpdGNoKGUua2luZCl7Y2FzZSJrZXlzIjpyZXR1cm4gdShuLCExKTtjYXNlInZhbHVlcyI6cmV0dXJuIHUodFtuXSwhMSl9cmV0dXJuIHUoW24sdFtuXV0sITEpfSwidmFsdWVzIiksYS5Bcmd1bWVudHM9YS5BcnJheSk7aWYobygia2V5cyIpLG8oInZhbHVlcyIpLG8oImVudHJpZXMiKSwhcyYmbiYmInZhbHVlcyIhPT1pLm5hbWUpdHJ5e2woaSwibmFtZSIse3ZhbHVlOiJ2YWx1ZXMifSl9Y2F0Y2goZSl7fX0sZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIGgoKXtyZXR1cm4gdGhpc312YXIgZz1uKDcpLGI9big4KSx5PW4oMTUpLHI9big3Miksdj1uKDIpLHc9bigxMzEpLHg9big1MSksaz1uKDUyKSxTPW4oMzgpLEM9bigxOCksRT1uKDE5KSxvPW4oNSksTz1uKDI2KSxuPW4oODEpLGo9ci5QUk9QRVIsQT1yLkNPTkZJR1VSQUJMRSxQPW4uSXRlcmF0b3JQcm90b3R5cGUsST1uLkJVR0dZX1NBRkFSSV9JVEVSQVRPUlMsXz1vKCJpdGVyYXRvciIpLHo9InZhbHVlcyIsVD0iZW50cmllcyI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHIsbyxhLGkpe3cobix0LHIpO2Z1bmN0aW9uIGwoZSl7aWYoZT09PW8mJnApcmV0dXJuIHA7aWYoIUkmJmUmJmUgaW4gZilyZXR1cm4gZltlXTtzd2l0Y2goZSl7Y2FzZSJrZXlzIjpjYXNlIHo6Y2FzZSBUOnJldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgbih0aGlzLGUpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG4odGhpcyl9fXZhciBjLHUscj10KyIgSXRlcmF0b3IiLHM9ITEsZj1lLnByb3RvdHlwZSxkPWZbX118fGZbIkBAaXRlcmF0b3IiXXx8byYmZltvXSxwPSFJJiZkfHxsKG8pLG09IkFycmF5Ij09PXQmJmYuZW50cmllc3x8ZDtpZihtJiYobT14KG0uY2FsbChuZXcgZSkpKSE9PU9iamVjdC5wcm90b3R5cGUmJm0ubmV4dCYmKHl8fHgobSk9PT1QfHwoaz9rKG0sUCk6dihtW19dKXx8RShtLF8saCkpLFMobSxyLCEwLCEwKSx5KSYmKE9bcl09aCksaiYmbz09PXomJmQmJmQubmFtZSE9PXomJigheSYmQT9DKGYsIm5hbWUiLHopOihzPSEwLHA9ZnVuY3Rpb24oKXtyZXR1cm4gYihkLHRoaXMpfSkpLG8paWYoYz17dmFsdWVzOmwoeiksa2V5czphP3A6bCgia2V5cyIpLGVudHJpZXM6bChUKX0saSlmb3IodSBpbiBjKSFJJiYhcyYmdSBpbiBmfHxFKGYsdSxjW3VdKTtlbHNlIGcoe3RhcmdldDp0LHByb3RvOiEwLGZvcmNlZDpJfHxzfSxjKTtyZXR1cm4geSYmIWl8fGZbX109PT1wfHxFKGYsXyxwLHtuYW1lOm99KSxPW3RdPXAsY319LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGE9big2KSxpPW4oMiksbD1uKDEzKSxjPW4oMzYpLHU9big1MSkscz1uKDE5KSxmPW4oNSksbj1uKDE1KSxkPWYoIml0ZXJhdG9yIiksZj0hMTtbXS5rZXlzJiYoIm5leHQiaW4obz1bXS5rZXlzKCkpPyh1PXUodShvKSkpIT09T2JqZWN0LnByb3RvdHlwZSYmKHI9dSk6Zj0hMCksIWwocil8fGEoZnVuY3Rpb24oKXt2YXIgZT17fTtyZXR1cm4gcltkXS5jYWxsKGUpIT09ZX0pP3I9e306biYmKHI9YyhyKSksaShyW2RdKXx8cyhyLGQsZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pLGUuZXhwb3J0cz17SXRlcmF0b3JQcm90b3R5cGU6cixCVUdHWV9TQUZBUklfSVRFUkFUT1JTOmZ9fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJue3ZhbHVlOmUsZG9uZTp0fX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEyKSxvPW4oMTM5KSxhPW4oMzApLGk9big1KSgic3BlY2llcyIpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBlPXIoZSkuY29uc3RydWN0b3I7cmV0dXJuIHZvaWQgMD09PWV8fGEoZT1yKGUpW2ldKT90Om8oZSl9fSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcihlKXtyZXR1cm4gZnVuY3Rpb24oKXtQKGUpfX1mdW5jdGlvbiBvKGUpe1AoZS5kYXRhKX1mdW5jdGlvbiBhKGUpe2MucG9zdE1lc3NhZ2UoRShlKSxpLnByb3RvY29sKyIvLyIraS5ob3N0KX12YXIgaSxsLGM9bigzKSx1PW4oMTQxKSxzPW4oNTMpLGY9bigyKSxkPW4oMTEpLHA9big2KSxtPW4oNzcpLGg9bigxNDIpLGc9bigzNCksYj1uKDE0MykseT1uKDg1KSxuPW4oMzkpLHY9Yy5zZXRJbW1lZGlhdGUsdz1jLmNsZWFySW1tZWRpYXRlLHg9Yy5wcm9jZXNzLGs9Yy5EaXNwYXRjaCxTPWMuRnVuY3Rpb24sQz1jLk1lc3NhZ2VDaGFubmVsLEU9Yy5TdHJpbmcsTz0wLGo9e30sQT0ib25yZWFkeXN0YXRlY2hhbmdlIixQPShwKGZ1bmN0aW9uKCl7aT1jLmxvY2F0aW9ufSksZnVuY3Rpb24oZSl7dmFyIHQ7ZChqLGUpJiYodD1qW2VdLGRlbGV0ZSBqW2VdLHQoKSl9KTt2JiZ3fHwodj1mdW5jdGlvbihlKXtiKGFyZ3VtZW50cy5sZW5ndGgsMSk7dmFyIHQ9ZihlKT9lOlMoZSksbj1oKGFyZ3VtZW50cywxKTtyZXR1cm4galsrK09dPWZ1bmN0aW9uKCl7dSh0LHZvaWQgMCxuKX0sbChPKSxPfSx3PWZ1bmN0aW9uKGUpe2RlbGV0ZSBqW2VdfSxuP2w9ZnVuY3Rpb24oZSl7eC5uZXh0VGljayhyKGUpKX06ayYmay5ub3c/bD1mdW5jdGlvbihlKXtrLm5vdyhyKGUpKX06QyYmIXk/KHk9KG49bmV3IEMpLnBvcnQyLG4ucG9ydDEub25tZXNzYWdlPW8sbD1zKHkucG9zdE1lc3NhZ2UseSkpOmMuYWRkRXZlbnRMaXN0ZW5lciYmZihjLnBvc3RNZXNzYWdlKSYmIWMuaW1wb3J0U2NyaXB0cyYmaSYmImZpbGU6IiE9PWkucHJvdG9jb2wmJiFwKGEpPyhsPWEsYy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixvLCExKSk6bD1BIGluIGcoInNjcmlwdCIpP2Z1bmN0aW9uKGUpe20uYXBwZW5kQ2hpbGQoZygic2NyaXB0IikpW0FdPWZ1bmN0aW9uKCl7bS5yZW1vdmVDaGlsZCh0aGlzKSxQKGUpfX06ZnVuY3Rpb24oZSl7c2V0VGltZW91dChyKGUpLDApfSksZS5leHBvcnRzPXtzZXQ6dixjbGVhcjp3fX0sZnVuY3Rpb24oZSx0LG4pe249bigzMik7ZS5leHBvcnRzPS8oPzppcGFkfGlwaG9uZXxpcG9kKS4qYXBwbGV3ZWJraXQvaS50ZXN0KG4pfSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcigpe3RoaXMuaGVhZD1udWxsLHRoaXMudGFpbD1udWxsfXIucHJvdG90eXBlPXthZGQ6ZnVuY3Rpb24oZSl7dmFyIGU9e2l0ZW06ZSxuZXh0Om51bGx9LHQ9dGhpcy50YWlsO3Q/dC5uZXh0PWU6dGhpcy5oZWFkPWUsdGhpcy50YWlsPWV9LGdldDpmdW5jdGlvbigpe3ZhciBlPXRoaXMuaGVhZDtpZihlKXJldHVybiBudWxsPT09KHRoaXMuaGVhZD1lLm5leHQpJiYodGhpcy50YWlsPW51bGwpLGUuaXRlbX19LGUuZXhwb3J0cz1yfSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPSJvYmplY3QiPT10eXBlb2YgRGVubyYmRGVubyYmIm9iamVjdCI9PXR5cGVvZiBEZW5vLnZlcnNpb259LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEyKSxvPW4oMTMpLGE9bigxNik7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHIoZSksbyh0KSYmdC5jb25zdHJ1Y3Rvcj09PWU/dDooKDAsKGU9YS5mKGUpKS5yZXNvbHZlKSh0KSxlLnByb21pc2UpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNyksdT1uKDgpLHM9bigxMCksbz1uKDE2KSxhPW4oMjApLGY9bigyNSk7cih7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwLGZvcmNlZDpuKDQwKX0se2FsbFNldHRsZWQ6ZnVuY3Rpb24oZSl7dmFyIGw9dGhpcyx0PW8uZihsKSxjPXQucmVzb2x2ZSxuPXQucmVqZWN0LHI9YShmdW5jdGlvbigpe3ZhciByPXMobC5yZXNvbHZlKSxvPVtdLGE9MCxpPTE7ZihlLGZ1bmN0aW9uKGUpe3ZhciB0PWErKyxuPSExO2krKyx1KHIsbCxlKS50aGVuKGZ1bmN0aW9uKGUpe258fChuPSEwLG9bdF09e3N0YXR1czoiZnVsZmlsbGVkIix2YWx1ZTplfSwtLWkpfHxjKG8pfSxmdW5jdGlvbihlKXtufHwobj0hMCxvW3RdPXtzdGF0dXM6InJlamVjdGVkIixyZWFzb246ZX0sLS1pKXx8YyhvKX0pfSksLS1pfHxjKG8pfSk7cmV0dXJuIHIuZXJyb3ImJm4oci52YWx1ZSksdC5wcm9taXNlfX0pfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big3KSxkPW4oOCkscD1uKDEwKSxvPW4oMTQpLGE9bigxNiksaT1uKDIwKSxtPW4oMjUpLG49big0MCksaD0iTm8gb25lIHByb21pc2UgcmVzb2x2ZWQiO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6bn0se2FueTpmdW5jdGlvbihlKXt2YXIgYz10aGlzLHU9bygiQWdncmVnYXRlRXJyb3IiKSx0PWEuZihjKSxzPXQucmVzb2x2ZSxmPXQucmVqZWN0LG49aShmdW5jdGlvbigpe3ZhciByPXAoYy5yZXNvbHZlKSxvPVtdLGE9MCxpPTEsbD0hMTttKGUsZnVuY3Rpb24oZSl7dmFyIHQ9YSsrLG49ITE7aSsrLGQocixjLGUpLnRoZW4oZnVuY3Rpb24oZSl7bnx8bHx8KGw9ITAscyhlKSl9LGZ1bmN0aW9uKGUpe258fGx8fChuPSEwLG9bdF09ZSwtLWkpfHxmKG5ldyB1KG8saCkpfSl9KSwtLWl8fGYobmV3IHUobyxoKSl9KTtyZXR1cm4gbi5lcnJvciYmZihuLnZhbHVlKSx0LnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89bigxNik7cih7dGFyZ2V0OiJQcm9taXNlIixzdGF0OiEwfSx7d2l0aFJlc29sdmVyczpmdW5jdGlvbigpe3ZhciBlPW8uZih0aGlzKTtyZXR1cm57cHJvbWlzZTplLnByb21pc2UscmVzb2x2ZTplLnJlc29sdmUscmVqZWN0OmUucmVqZWN0fX19KX0sZnVuY3Rpb24oZSx0KXt2YXIgbixyLGU9ZS5leHBvcnRzPXt9O2Z1bmN0aW9uIG8oKXt0aHJvdyBuZXcgRXJyb3IoInNldFRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX1mdW5jdGlvbiBhKCl7dGhyb3cgbmV3IEVycm9yKCJjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX10cnl7bj0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om99Y2F0Y2goZSl7bj1vfXRyeXtyPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0OmF9Y2F0Y2goZSl7cj1hfWZ1bmN0aW9uIGkodCl7aWYobj09PXNldFRpbWVvdXQpcmV0dXJuIHNldFRpbWVvdXQodCwwKTtpZigobj09PW98fCFuKSYmc2V0VGltZW91dClyZXR1cm4obj1zZXRUaW1lb3V0KSh0LDApO3RyeXtyZXR1cm4gbih0LDApfWNhdGNoKGUpe3RyeXtyZXR1cm4gbi5jYWxsKG51bGwsdCwwKX1jYXRjaChlKXtyZXR1cm4gbi5jYWxsKHRoaXMsdCwwKX19fXZhciBsLGM9W10sdT0hMSxzPS0xO2Z1bmN0aW9uIGYoKXt1JiZsJiYodT0hMSxsLmxlbmd0aD9jPWwuY29uY2F0KGMpOnM9LTEsYy5sZW5ndGgpJiZkKCl9ZnVuY3Rpb24gZCgpe2lmKCF1KXtmb3IodmFyIGU9aShmKSx0PSh1PSEwLGMubGVuZ3RoKTt0Oyl7Zm9yKGw9YyxjPVtdOysrczx0OylsJiZsW3NdLnJ1bigpO3M9LTEsdD1jLmxlbmd0aH1sPW51bGwsdT0hMSwhZnVuY3Rpb24odCl7aWYocj09PWNsZWFyVGltZW91dClyZXR1cm4gY2xlYXJUaW1lb3V0KHQpO2lmKChyPT09YXx8IXIpJiZjbGVhclRpbWVvdXQpcmV0dXJuKHI9Y2xlYXJUaW1lb3V0KSh0KTt0cnl7cih0KX1jYXRjaChlKXt0cnl7cmV0dXJuIHIuY2FsbChudWxsLHQpfWNhdGNoKGUpe3JldHVybiByLmNhbGwodGhpcyx0KX19fShlKX19ZnVuY3Rpb24gcChlLHQpe3RoaXMuZnVuPWUsdGhpcy5hcnJheT10fWZ1bmN0aW9uIG0oKXt9ZS5uZXh0VGljaz1mdW5jdGlvbihlKXt2YXIgdD1uZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aC0xKTtpZigxPGFyZ3VtZW50cy5sZW5ndGgpZm9yKHZhciBuPTE7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl0W24tMV09YXJndW1lbnRzW25dO2MucHVzaChuZXcgcChlLHQpKSwxIT09Yy5sZW5ndGh8fHV8fGkoZCl9LHAucHJvdG90eXBlLnJ1bj1mdW5jdGlvbigpe3RoaXMuZnVuLmFwcGx5KG51bGwsdGhpcy5hcnJheSl9LGUudGl0bGU9ImJyb3dzZXIiLGUuYnJvd3Nlcj0hMCxlLmVudj17fSxlLmFyZ3Y9W10sZS52ZXJzaW9uPSIiLGUudmVyc2lvbnM9e30sZS5vbj1tLGUuYWRkTGlzdGVuZXI9bSxlLm9uY2U9bSxlLm9mZj1tLGUucmVtb3ZlTGlzdGVuZXI9bSxlLnJlbW92ZUFsbExpc3RlbmVycz1tLGUuZW1pdD1tLGUucHJlcGVuZExpc3RlbmVyPW0sZS5wcmVwZW5kT25jZUxpc3RlbmVyPW0sZS5saXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuW119LGUuYmluZGluZz1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoInByb2Nlc3MuYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkIil9LGUuY3dkPWZ1bmN0aW9uKCl7cmV0dXJuIi8ifSxlLmNoZGlyPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigicHJvY2Vzcy5jaGRpciBpcyBub3Qgc3VwcG9ydGVkIil9LGUudW1hc2s9ZnVuY3Rpb24oKXtyZXR1cm4gMH19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMTY5KTt0LmNyZWF0ZVJvb3Q9bi5jcmVhdGVSb290LHQuaHlkcmF0ZVJvb3Q9bi5oeWRyYXRlUm9vdH0sZnVuY3Rpb24odixlLHQpeyFmdW5jdGlvbihlKXt2YXIgbj05MDA3MTk5MjU0NzQwOTkxLHI9IltvYmplY3QgQXJndW1lbnRzXSIsbz0iW29iamVjdCBGdW5jdGlvbl0iLGE9IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIixpPSJbb2JqZWN0IFN5bWJvbF0iLGU9Im9iamVjdCI9PXR5cGVvZiBlJiZlJiZlLk9iamVjdD09PU9iamVjdCYmZSx0PSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGYsZT1lfHx0fHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpO3ZhciB0PU9iamVjdC5wcm90b3R5cGUsbD10Lmhhc093blByb3BlcnR5LGM9dC50b1N0cmluZyxlPWUuU3ltYm9sLHU9dC5wcm9wZXJ0eUlzRW51bWVyYWJsZSxzPWU/ZS5pc0NvbmNhdFNwcmVhZGFibGU6dm9pZCAwLGY9TWF0aC5tYXg7ZnVuY3Rpb24gbShlKXtyZXR1cm4gcChlKXx8ZnVuY3Rpb24oZSl7cmV0dXJuIGgoZSkmJmZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZmdW5jdGlvbihlKXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIGUmJi0xPGUmJmUlMT09MCYmZTw9bn0oZS5sZW5ndGgpJiYhZnVuY3Rpb24oZSl7ZT1mdW5jdGlvbihlKXt2YXIgdD10eXBlb2YgZTtyZXR1cm4gZSYmKCJvYmplY3QiPT10fHwiZnVuY3Rpb24iPT10KX0oZSk/Yy5jYWxsKGUpOiIiO3JldHVybiBlPT1vfHxlPT1hfShlKX0oZSl9KHQ9ZSkmJmwuY2FsbCh0LCJjYWxsZWUiKSYmKCF1LmNhbGwodCwiY2FsbGVlIil8fGMuY2FsbCh0KT09cil8fCEhKHMmJmUmJmVbc10pO3ZhciB0fWZ1bmN0aW9uIGQoZSl7dmFyIHQ7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlfHwic3ltYm9sIj09dHlwZW9mKHQ9ZSl8fGgodCkmJmMuY2FsbCh0KT09aT9lOiIwIj09KHQ9ZSsiIikmJjEvZT09LTEvMD8iLTAiOnR9dmFyIHA9QXJyYXkuaXNBcnJheTtmdW5jdGlvbiBoKGUpe3JldHVybiEhZSYmIm9iamVjdCI9PXR5cGVvZiBlfWZ1bmN0aW9uIGcoKXtmb3IodmFyIGU9YXJndW1lbnRzLHQ9LTEsbj1mKGUubGVuZ3RoLXksMCkscj1BcnJheShuKTsrK3Q8bjspclt0XT1lW3krdF07Zm9yKHZhciB0PS0xLG89QXJyYXkoeSsxKTsrK3Q8eTspb1t0XT1lW3RdO29beV09cjt2YXIgYT1iLGk9dGhpcyxsPW87c3dpdGNoKGwubGVuZ3RoKXtjYXNlIDA6cmV0dXJuIGEuY2FsbChpKTtjYXNlIDE6cmV0dXJuIGEuY2FsbChpLGxbMF0pO2Nhc2UgMjpyZXR1cm4gYS5jYWxsKGksbFswXSxsWzFdKTtjYXNlIDM6cmV0dXJuIGEuY2FsbChpLGxbMF0sbFsxXSxsWzJdKX1yZXR1cm4gYS5hcHBseShpLGwpfXZhciBiLHk7Yj1mdW5jdGlvbihlLHQpe2lmKG51bGw9PWUpcmV0dXJue307Zm9yKHZhciBuPWUsZT1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0tMSxyPWU/ZS5sZW5ndGg6MCxvPUFycmF5KHIpOysrbjxyOylvW25dPXQoZVtuXSxuLGUpO3JldHVybiBvfShmdW5jdGlvbiBlKHQsbixyLG8sYSl7dmFyIGk9LTEsbD10Lmxlbmd0aDtmb3Iocj1yfHxtLGE9YXx8W107KytpPGw7KXt2YXIgYz10W2ldO2lmKDA8biYmcihjKSlpZigxPG4pZShjLG4tMSxyLG8sYSk7ZWxzZXtwPWQ9Zj1zPXU9dm9pZCAwO2Zvcih2YXIgdT1hLHM9YyxmPS0xLGQ9cy5sZW5ndGgscD11Lmxlbmd0aDsrK2Y8ZDspdVtwK2ZdPXNbZl19ZWxzZSBvfHwoYVthLmxlbmd0aF09Yyl9cmV0dXJuIGF9KHQsMSksZCkscj1uPU9iamVjdChuKSxvPWUsYT1mdW5jdGlvbihlLHQpe3JldHVybiB0IGluIG59LGk9LTEsbD1vLmxlbmd0aCxjPXt9OysraTxsOyl7dmFyIHU9b1tpXSxzPXJbdV07YShzLHUpJiYoY1t1XT1zKX1yZXR1cm4gY30seT1mKHZvaWQgMD09PXk/Yi5sZW5ndGgtMTp5LDApO3YuZXhwb3J0cz1nfS5jYWxsKHRoaXMsdCgyMikpfSxmdW5jdGlvbihlLHQpe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQsbixyKXtpZih2b2lkIDAhPT0odT1uP24uY2FsbChyLGUsdCk6dm9pZCAwKSlyZXR1cm4hIXU7aWYoZSE9PXQpe2lmKCJvYmplY3QiIT10eXBlb2YgZXx8IWV8fCJvYmplY3QiIT10eXBlb2YgdHx8IXQpcmV0dXJuITE7dmFyIG89T2JqZWN0LmtleXMoZSksYT1PYmplY3Qua2V5cyh0KTtpZihvLmxlbmd0aCE9PWEubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgaT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmJpbmQodCksbD0wO2w8by5sZW5ndGg7bCsrKXt2YXIgYz1vW2xdO2lmKCFpKGMpKXJldHVybiExO3ZhciB1LHM9ZVtjXSxmPXRbY107aWYoITE9PT0odT1uP24uY2FsbChyLHMsZixjKTp2b2lkIDApfHx2b2lkIDA9PT11JiZzIT09ZilyZXR1cm4hMX19cmV0dXJuITB9fSxmdW5jdGlvbihlLHQsbil7dC5hPWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIEEoZSx0LG4pe3ZhciByPXQudHJpbSgpLnNwbGl0KGYpLG89KHQ9cikubGVuZ3RoLGE9ZS5sZW5ndGg7c3dpdGNoKGEpe2Nhc2UgMDpjYXNlIDE6dmFyIGk9MDtmb3IoZT0wPT09YT8iIjplWzBdKyIgIjtpPG87KytpKXRbaV09dShlLHRbaV0sbikudHJpbSgpO2JyZWFrO2RlZmF1bHQ6dmFyIGw9aT0wO2Zvcih0PVtdO2k8bzsrK2kpZm9yKHZhciBjPTA7YzxhOysrYyl0W2wrK109dShlW2NdKyIgIixyW2ldLG4pLnRyaW0oKX1yZXR1cm4gdH1mdW5jdGlvbiB1KGUsdCxuKXt2YXIgcj10LmNoYXJDb2RlQXQoMCk7c3dpdGNoKHI9cjwzMz8odD10LnRyaW0oKSkuY2hhckNvZGVBdCgwKTpyKXtjYXNlIDM4OnJldHVybiB0LnJlcGxhY2UobywiJDEiK2UudHJpbSgpKTtjYXNlIDU4OnJldHVybiBlLnRyaW0oKSt0LnJlcGxhY2UobywiJDEiK2UudHJpbSgpKTtkZWZhdWx0OmlmKDA8K24mJjA8dC5pbmRleE9mKCJcZiIpKXJldHVybiB0LnJlcGxhY2UobywoNTg9PT1lLmNoYXJDb2RlQXQoMCk/IiI6IiQxIikrZS50cmltKCkpfXJldHVybiBlK3R9ZnVuY3Rpb24gUChlLHQsbixyKXt2YXIgbyxhPWUrIjsiLGk9Mip0KzMqbis0KnI7aWYoOTQ0PT1pKXJldHVybiBlPWEuaW5kZXhPZigiOiIsOSkrMSxvPWEuc3Vic3RyaW5nKGUsYS5sZW5ndGgtMSkudHJpbSgpLG89YS5zdWJzdHJpbmcoMCxlKS50cmltKCkrbysiOyIsMT09PUh8fDI9PT1IJiZJKG8sMSk/Ii13ZWJraXQtIitvK286bztpZigwIT09SCYmKDIhPT1IfHxJKGEsMSkpKXN3aXRjaChpKXtjYXNlIDEwMTU6cmV0dXJuIDk3PT09YS5jaGFyQ29kZUF0KDEwKT8iLXdlYmtpdC0iK2ErYTphO2Nhc2UgOTUxOnJldHVybiAxMTY9PT1hLmNoYXJDb2RlQXQoMyk/Ii13ZWJraXQtIithK2E6YTtjYXNlIDk2MzpyZXR1cm4gMTEwPT09YS5jaGFyQ29kZUF0KDUpPyItd2Via2l0LSIrYSthOmE7Y2FzZSAxMDA5OmlmKDEwMCE9PWEuY2hhckNvZGVBdCg0KSlicmVhaztjYXNlIDk2OTpjYXNlIDk0MjpyZXR1cm4iLXdlYmtpdC0iK2ErYTtjYXNlIDk3ODpyZXR1cm4iLXdlYmtpdC0iK2ErIi1tb3otIithK2E7Y2FzZSAxMDE5OmNhc2UgOTgzOnJldHVybiItd2Via2l0LSIrYSsiLW1vei0iK2ErIi1tcy0iK2ErYTtjYXNlIDg4MzppZig0NT09PWEuY2hhckNvZGVBdCg4KSlyZXR1cm4iLXdlYmtpdC0iK2ErYTtpZigwPGEuaW5kZXhPZigiaW1hZ2Utc2V0KCIsMTEpKXJldHVybiBhLnJlcGxhY2UoZywiJDEtd2Via2l0LSQyIikrYTticmVhaztjYXNlIDkzMjppZig0NT09PWEuY2hhckNvZGVBdCg0KSlzd2l0Y2goYS5jaGFyQ29kZUF0KDUpKXtjYXNlIDEwMzpyZXR1cm4iLXdlYmtpdC1ib3gtIithLnJlcGxhY2UoIi1ncm93IiwiIikrIi13ZWJraXQtIithKyItbXMtIithLnJlcGxhY2UoImdyb3ciLCJwb3NpdGl2ZSIpK2E7Y2FzZSAxMTU6cmV0dXJuIi13ZWJraXQtIithKyItbXMtIithLnJlcGxhY2UoInNocmluayIsIm5lZ2F0aXZlIikrYTtjYXNlIDk4OnJldHVybiItd2Via2l0LSIrYSsiLW1zLSIrYS5yZXBsYWNlKCJiYXNpcyIsInByZWZlcnJlZC1zaXplIikrYX1yZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy0iK2ErYTtjYXNlIDk2NDpyZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy1mbGV4LSIrYSthO2Nhc2UgMTAyMzppZig5OSE9PWEuY2hhckNvZGVBdCg4KSlicmVhaztyZXR1cm4iLXdlYmtpdC1ib3gtcGFjayIrKG89YS5zdWJzdHJpbmcoYS5pbmRleE9mKCI6IiwxNSkpLnJlcGxhY2UoImZsZXgtIiwiIikucmVwbGFjZSgic3BhY2UtYmV0d2VlbiIsImp1c3RpZnkiKSkrIi13ZWJraXQtIithKyItbXMtZmxleC1wYWNrIitvK2E7Y2FzZSAxMDA1OnJldHVybiBjLnRlc3QoYSk/YS5yZXBsYWNlKGwsIjotd2Via2l0LSIpK2EucmVwbGFjZShsLCI6LW1vei0iKSthOmE7Y2FzZSAxZTM6c3dpdGNoKHQ9KG89YS5zdWJzdHJpbmcoMTMpLnRyaW0oKSkuaW5kZXhPZigiLSIpKzEsby5jaGFyQ29kZUF0KDApK28uY2hhckNvZGVBdCh0KSl7Y2FzZSAyMjY6bz1hLnJlcGxhY2UoZCwidGIiKTticmVhaztjYXNlIDIzMjpvPWEucmVwbGFjZShkLCJ0Yi1ybCIpO2JyZWFrO2Nhc2UgMjIwOm89YS5yZXBsYWNlKGQsImxyIik7YnJlYWs7ZGVmYXVsdDpyZXR1cm4gYX1yZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy0iK28rYTtjYXNlIDEwMTc6aWYoLTE9PT1hLmluZGV4T2YoInN0aWNreSIsOSkpYnJlYWs7Y2FzZSA5NzU6c3dpdGNoKHQ9KGE9ZSkubGVuZ3RoLTEwLGk9KG89KDMzPT09YS5jaGFyQ29kZUF0KHQpP2Euc3Vic3RyaW5nKDAsdCk6YSkuc3Vic3RyaW5nKGUuaW5kZXhPZigiOiIsNykrMSkudHJpbSgpKS5jaGFyQ29kZUF0KDApKygwfG8uY2hhckNvZGVBdCg3KSkpe2Nhc2UgMjAzOmlmKG8uY2hhckNvZGVBdCg4KTwxMTEpYnJlYWs7Y2FzZSAxMTU6YT1hLnJlcGxhY2UobywiLXdlYmtpdC0iK28pKyI7IithO2JyZWFrO2Nhc2UgMjA3OmNhc2UgMTAyOmE9YS5yZXBsYWNlKG8sIi13ZWJraXQtIisoMTAyPGk/ImlubGluZS0iOiIiKSsiYm94IikrIjsiK2EucmVwbGFjZShvLCItd2Via2l0LSIrbykrIjsiK2EucmVwbGFjZShvLCItbXMtIitvKyJib3giKSsiOyIrYX1yZXR1cm4gYSsiOyI7Y2FzZSA5Mzg6aWYoNDU9PT1hLmNoYXJDb2RlQXQoNSkpc3dpdGNoKGEuY2hhckNvZGVBdCg2KSl7Y2FzZSAxMDU6cmV0dXJuIG89YS5yZXBsYWNlKCItaXRlbXMiLCIiKSwiLXdlYmtpdC0iK2ErIi13ZWJraXQtYm94LSIrbysiLW1zLWZsZXgtIitvK2E7Y2FzZSAxMTU6cmV0dXJuIi13ZWJraXQtIithKyItbXMtZmxleC1pdGVtLSIrYS5yZXBsYWNlKG0sIiIpK2E7ZGVmYXVsdDpyZXR1cm4iLXdlYmtpdC0iK2ErIi1tcy1mbGV4LWxpbmUtcGFjayIrYS5yZXBsYWNlKCJhbGlnbi1jb250ZW50IiwiIikucmVwbGFjZShtLCIiKSthfWJyZWFrO2Nhc2UgOTczOmNhc2UgOTg5OmlmKDQ1IT09YS5jaGFyQ29kZUF0KDMpfHwxMjI9PT1hLmNoYXJDb2RlQXQoNCkpYnJlYWs7Y2FzZSA5MzE6Y2FzZSA5NTM6aWYoITA9PT1oLnRlc3QoZSkpcmV0dXJuIDExNT09PShvPWUuc3Vic3RyaW5nKGUuaW5kZXhPZigiOiIpKzEpKS5jaGFyQ29kZUF0KDApP1AoZS5yZXBsYWNlKCJzdHJldGNoIiwiZmlsbC1hdmFpbGFibGUiKSx0LG4scikucmVwbGFjZSgiOmZpbGwtYXZhaWxhYmxlIiwiOnN0cmV0Y2giKTphLnJlcGxhY2UobywiLXdlYmtpdC0iK28pK2EucmVwbGFjZShvLCItbW96LSIrby5yZXBsYWNlKCJmaWxsLSIsIiIpKSthO2JyZWFrO2Nhc2UgOTYyOmlmKGE9Ii13ZWJraXQtIithKygxMDI9PT1hLmNoYXJDb2RlQXQoNSk/Ii1tcy0iK2E6IiIpK2EsMjExPT09bityJiYxMDU9PT1hLmNoYXJDb2RlQXQoMTMpJiYwPGEuaW5kZXhPZigidHJhbnNmb3JtIiwxMCkpcmV0dXJuIGEuc3Vic3RyaW5nKDAsYS5pbmRleE9mKCI7IiwyNykrMSkucmVwbGFjZShzLCIkMS13ZWJraXQtJDIiKSthfXJldHVybiBhfWZ1bmN0aW9uIEkoZSx0KXt2YXIgbj1lLmluZGV4T2YoMT09PXQ/IjoiOiJ7Iikscj1lLnN1YnN0cmluZygwLDMhPT10P246MTApLG49ZS5zdWJzdHJpbmcobisxLGUubGVuZ3RoLTEpO3JldHVybiBpKDIhPT10P3I6ci5yZXBsYWNlKGEsIiQxIiksbix0KX1mdW5jdGlvbiBfKGUsdCl7dmFyIG49UCh0LHQuY2hhckNvZGVBdCgwKSx0LmNoYXJDb2RlQXQoMSksdC5jaGFyQ29kZUF0KDIpKTtyZXR1cm4gbiE9PXQrIjsiP24ucmVwbGFjZShyLCIgb3IgKCQxKSIpLnN1YnN0cmluZyg0KToiKCIrdCsiKSJ9ZnVuY3Rpb24geihlLHQsbixyLG8sYSxpLGwsYyx1KXtmb3IodmFyIHMsZj0wLGQ9dDtmPCQ7KytmKXN3aXRjaChzPWJbZl0uY2FsbChwLGUsZCxuLHIsbyxhLGksbCxjLHUpKXtjYXNlIHZvaWQgMDpjYXNlITE6Y2FzZSEwOmNhc2UgbnVsbDpicmVhaztkZWZhdWx0OmQ9c31pZihkIT09dClyZXR1cm4gZH1mdW5jdGlvbiB0KGUpe3JldHVybiB2b2lkIDAhPT0oZT1lLnByZWZpeCkmJihpPW51bGwsZT8iZnVuY3Rpb24iIT10eXBlb2YgZT9IPTE6KEg9MixpPWUpOkg9MCksdH1mdW5jdGlvbiBwKGUsdCl7ZT1bZT1lLmNoYXJDb2RlQXQoMCk8MzM/ZS50cmltKCk6ZV0sMDwkJiZ2b2lkIDAhPT0obj16KC0xLHQsZSxlLEIsVSwwLDAsMCwwKSkmJiJzdHJpbmciPT10eXBlb2YgbiYmKHQ9bik7dmFyIG4sdD1mdW5jdGlvbiBlKHQsbixyLG8sYSl7Zm9yKHZhciBpLGwsYyx1LHMsZj0wLGQ9MCxwPTAsbT0wLGg9MCxnPTAsYj1jPWk9MCx5PTAsdj0wLHc9MCx4PTAsaz1yLmxlbmd0aCxTPWstMSxDPSIiLEU9IiIsTz0iIixqPSIiO3k8azspe2lmKGw9ci5jaGFyQ29kZUF0KHkpLHk9PT1TJiYwIT09ZCttK3ArZiYmKDAhPT1kJiYobD00Nz09PWQ/MTA6NDcpLG09cD1mPTAsaysrLFMrKyksMD09PWQrbStwK2Ype2lmKHk9PT1TJiYwPChDPTA8dj9DLnJlcGxhY2UoTCwiIik6QykudHJpbSgpLmxlbmd0aCl7c3dpdGNoKGwpe2Nhc2UgMzI6Y2FzZSA5OmNhc2UgNTk6Y2FzZSAxMzpjYXNlIDEwOmJyZWFrO2RlZmF1bHQ6Qys9ci5jaGFyQXQoeSl9bD01OX1zd2l0Y2gobCl7Y2FzZSAxMjM6Zm9yKGk9KEM9Qy50cmltKCkpLmNoYXJDb2RlQXQoMCksYz0xLHg9Kyt5O3k8azspe3N3aXRjaChsPXIuY2hhckNvZGVBdCh5KSl7Y2FzZSAxMjM6YysrO2JyZWFrO2Nhc2UgMTI1OmMtLTticmVhaztjYXNlIDQ3OnN3aXRjaChsPXIuY2hhckNvZGVBdCh5KzEpKXtjYXNlIDQyOmNhc2UgNDc6ZTp7Zm9yKGI9eSsxO2I8UzsrK2Ipc3dpdGNoKHIuY2hhckNvZGVBdChiKSl7Y2FzZSA0NzppZig0MiE9PWx8fDQyIT09ci5jaGFyQ29kZUF0KGItMSl8fHkrMj09PWIpYnJlYWs7eT1iKzE7YnJlYWsgZTtjYXNlIDEwOmlmKDQ3PT09bCl7eT1iKzE7YnJlYWsgZX19eT1ifX1icmVhaztjYXNlIDkxOmwrKztjYXNlIDQwOmwrKztjYXNlIDM0OmNhc2UgMzk6Zm9yKDt5Kys8UyYmci5jaGFyQ29kZUF0KHkpIT09bDspO31pZigwPT09YylicmVhazt5Kyt9aWYoYz1yLnN1YnN0cmluZyh4LHkpLDY0PT09KGk9MD09PWk/KEM9Qy5yZXBsYWNlKFQsIiIpLnRyaW0oKSkuY2hhckNvZGVBdCgwKTppKSl7c3dpdGNoKGw9KEM9MDx2P0MucmVwbGFjZShMLCIiKTpDKS5jaGFyQ29kZUF0KDEpKXtjYXNlIDEwMDpjYXNlIDEwOTpjYXNlIDExNTpjYXNlIDQ1OnY9bjticmVhaztkZWZhdWx0OnY9Vn1pZih4PShjPWUobix2LGMsbCxhKzEpKS5sZW5ndGgsMDwkJiYocz16KDMsYyx2PUEoVixDLHcpLG4sQixVLHgsbCxhLG8pLEM9di5qb2luKCIiKSx2b2lkIDAhPT1zKSYmMD09PSh4PShjPXMudHJpbSgpKS5sZW5ndGgpJiYobD0wLGM9IiIpLDA8eClzd2l0Y2gobCl7Y2FzZSAxMTU6Qz1DLnJlcGxhY2UoRCxfKTtjYXNlIDEwMDpjYXNlIDEwOTpjYXNlIDQ1OmM9QysieyIrYysifSI7YnJlYWs7Y2FzZSAxMDc6Yz0oQz1DLnJlcGxhY2UoTSwiJDEgJDIiKSkrInsiK2MrIn0iLGM9MT09PUh8fDI9PT1IJiZJKCJAIitjLDMpPyJALXdlYmtpdC0iK2MrIkAiK2M6IkAiK2M7YnJlYWs7ZGVmYXVsdDpjPUMrYywxMTI9PT1vJiYoRSs9YyxjPSIiKX1lbHNlIGM9IiJ9ZWxzZSBjPWUobixBKG4sQyx3KSxjLG8sYSsxKTtPKz1jLGM9dz12PWI9aT0wLEM9IiIsbD1yLmNoYXJDb2RlQXQoKyt5KTticmVhaztjYXNlIDEyNTpjYXNlIDU5OmlmKDE8KHg9KEM9KDA8dj9DLnJlcGxhY2UoTCwiIik6QykudHJpbSgpKS5sZW5ndGgpKXN3aXRjaCgwPT09YiYmKGk9Qy5jaGFyQ29kZUF0KDApLDQ1PT09aXx8OTY8aSYmaTwxMjMpJiYoeD0oQz1DLnJlcGxhY2UoIiAiLCI6IikpLmxlbmd0aCksMDwkJiZ2b2lkIDAhPT0ocz16KDEsQyxuLHQsQixVLEUubGVuZ3RoLG8sYSxvKSkmJjA9PT0oeD0oQz1zLnRyaW0oKSkubGVuZ3RoKSYmKEM9IlwwXDAiKSxpPUMuY2hhckNvZGVBdCgwKSxsPUMuY2hhckNvZGVBdCgxKSxpKXtjYXNlIDA6YnJlYWs7Y2FzZSA2NDppZigxMDU9PT1sfHw5OT09PWwpe2orPUMrci5jaGFyQXQoeSk7YnJlYWt9ZGVmYXVsdDo1OCE9PUMuY2hhckNvZGVBdCh4LTEpJiYoRSs9UChDLGksbCxDLmNoYXJDb2RlQXQoMikpKX13PXY9Yj1pPTAsQz0iIixsPXIuY2hhckNvZGVBdCgrK3kpfX1zd2l0Y2gobCl7Y2FzZSAxMzpjYXNlIDEwOjQ3PT09ZD9kPTA6MD09PTEraSYmMTA3IT09byYmMDxDLmxlbmd0aCYmKHY9MSxDKz0iXDAiKSwwPCQqVyYmeigwLEMsbix0LEIsVSxFLmxlbmd0aCxvLGEsbyksVT0xLEIrKzticmVhaztjYXNlIDU5OmNhc2UgMTI1OmlmKDA9PT1kK20rcCtmKXtVKys7YnJlYWt9ZGVmYXVsdDpzd2l0Y2goVSsrLHU9ci5jaGFyQXQoeSksbCl7Y2FzZSA5OmNhc2UgMzI6aWYoMD09PW0rZitkKXN3aXRjaChoKXtjYXNlIDQ0OmNhc2UgNTg6Y2FzZSA5OmNhc2UgMzI6dT0iIjticmVhaztkZWZhdWx0OjMyIT09bCYmKHU9IiAiKX1icmVhaztjYXNlIDA6dT0iXFwwIjticmVhaztjYXNlIDEyOnU9IlxcZiI7YnJlYWs7Y2FzZSAxMTp1PSJcXHYiO2JyZWFrO2Nhc2UgMzg6MD09PW0rZCtmJiYodj13PTEsdT0iXGYiK3UpO2JyZWFrO2Nhc2UgMTA4OmlmKDA9PT1tK2QrZitGJiYwPGIpc3dpdGNoKHktYil7Y2FzZSAyOjExMj09PWgmJjU4PT09ci5jaGFyQ29kZUF0KHktMykmJihGPWgpO2Nhc2UgODoxMTE9PT1nJiYoRj1nKX1icmVhaztjYXNlIDU4OjA9PT1tK2QrZiYmKGI9eSk7YnJlYWs7Y2FzZSA0NDowPT09ZCtwK20rZiYmKHY9MSx1Kz0iXHIiKTticmVhaztjYXNlIDM0OmNhc2UgMzk6MD09PWQmJihtPW09PT1sPzA6MD09PW0/bDptKTticmVhaztjYXNlIDkxOjA9PT1tK2QrcCYmZisrO2JyZWFrO2Nhc2UgOTM6MD09PW0rZCtwJiZmLS07YnJlYWs7Y2FzZSA0MTowPT09bStkK2YmJnAtLTticmVhaztjYXNlIDQwOjA9PT1tK2QrZiYmKDA9PT1pJiYyKmgrMypnIT01MzMmJihpPTEpLHArKyk7YnJlYWs7Y2FzZSA2NDowPT09ZCtwK20rZitiK2MmJihjPTEpO2JyZWFrO2Nhc2UgNDI6Y2FzZSA0NzppZighKDA8bStmK3ApKXN3aXRjaChkKXtjYXNlIDA6c3dpdGNoKDIqbCszKnIuY2hhckNvZGVBdCh5KzEpKXtjYXNlIDIzNTpkPTQ3O2JyZWFrO2Nhc2UgMjIwOng9eSxkPTQyfWJyZWFrO2Nhc2UgNDI6NDc9PT1sJiY0Mj09PWgmJngrMiE9PXkmJigzMz09PXIuY2hhckNvZGVBdCh4KzIpJiYoRSs9ci5zdWJzdHJpbmcoeCx5KzEpKSx1PSIiLGQ9MCl9fTA9PT1kJiYoQys9dSl9Zz1oLGg9bCx5Kyt9aWYoMDwoeD1FLmxlbmd0aCkpe2lmKHY9biwwPCQmJnZvaWQgMCE9PShzPXooMixFLHYsdCxCLFUseCxvLGEsbykpJiYwPT09KEU9cykubGVuZ3RoKXJldHVybiBqK0UrTztpZihFPXYuam9pbigiLCIpKyJ7IitFKyJ9IiwwIT1IKkYpe3N3aXRjaChGPTIhPT1IfHxJKEUsMik/RjowKXtjYXNlIDExMTpFPUUucmVwbGFjZShOLCI6LW1vei0kMSIpK0U7YnJlYWs7Y2FzZSAxMTI6RT1FLnJlcGxhY2UoUiwiOjotd2Via2l0LWlucHV0LSQxIikrRS5yZXBsYWNlKFIsIjo6LW1vei0kMSIpK0UucmVwbGFjZShSLCI6LW1zLWlucHV0LSQxIikrRX1GPTB9fXJldHVybiBqK0UrT30oVixlLHQsMCwwKTtyZXR1cm4gMDwkJiZ2b2lkIDAhPT0obj16KC0yLHQsZSxlLEIsVSx0Lmxlbmd0aCwwLDAsMCkpJiYodD1uKSxGPTAsVT1CPTEsdH12YXIgVD0vXlwwKy9nLEw9L1tcMFxyXGZdL2csbD0vOiAqL2csYz0vem9vfGdyYS8scz0vKFssOiBdKSh0cmFuc2Zvcm0pL2csZj0vLFxyKz8vZyxvPS8oW1x0XHJcbiBdKSpcZj8mL2csTT0vQChrXHcrKVxzKihcUyopXHMqLyxSPS86OihwbGFjZSkvZyxOPS86KHJlYWQtb25seSkvZyxkPS9bc3ZoXVx3Ky1bdGJscl17Mn0vLEQ9L1woXHMqKC4qKVxzKlwpL2cscj0vKFtcc1xTXSo/KTsvZyxtPS8tc2VsZnxmbGV4LS9nLGE9L1teXSo/KDpbcnBdW2VsXWFbXHctXSspW15dKi8saD0vc3RyZXRjaHw6XHMqXHcrXC0oPzpjb250ZXxhdmFpbCkvLGc9LyhbXi1dKShpbWFnZS1zZXRcKCkvLFU9MSxCPTEsRj0wLEg9MSxWPVtdLGI9W10sJD0wLGk9bnVsbCxXPTA7cmV0dXJuIHAudXNlPWZ1bmN0aW9uIGUodCl7c3dpdGNoKHQpe2Nhc2Ugdm9pZCAwOmNhc2UgbnVsbDokPWIubGVuZ3RoPTA7YnJlYWs7ZGVmYXVsdDppZigiZnVuY3Rpb24iPT10eXBlb2YgdCliWyQrK109dDtlbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgdClmb3IodmFyIG49MCxyPXQubGVuZ3RoO248cjsrK24pZSh0W25dKTtlbHNlIFc9MHwhIXR9cmV0dXJuIGV9LHAuc2V0PXQsdm9pZCAwIT09ZSYmdChlKSxwfX0sZnVuY3Rpb24oZSx0LG4pe3QuYT17YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6MSxib3JkZXJJbWFnZU91dHNldDoxLGJvcmRlckltYWdlU2xpY2U6MSxib3JkZXJJbWFnZVdpZHRoOjEsYm94RmxleDoxLGJveEZsZXhHcm91cDoxLGJveE9yZGluYWxHcm91cDoxLGNvbHVtbkNvdW50OjEsY29sdW1uczoxLGZsZXg6MSxmbGV4R3JvdzoxLGZsZXhQb3NpdGl2ZToxLGZsZXhTaHJpbms6MSxmbGV4TmVnYXRpdmU6MSxmbGV4T3JkZXI6MSxncmlkUm93OjEsZ3JpZFJvd0VuZDoxLGdyaWRSb3dTcGFuOjEsZ3JpZFJvd1N0YXJ0OjEsZ3JpZENvbHVtbjoxLGdyaWRDb2x1bW5FbmQ6MSxncmlkQ29sdW1uU3BhbjoxLGdyaWRDb2x1bW5TdGFydDoxLG1zR3JpZFJvdzoxLG1zR3JpZFJvd1NwYW46MSxtc0dyaWRDb2x1bW46MSxtc0dyaWRDb2x1bW5TcGFuOjEsZm9udFdlaWdodDoxLGxpbmVIZWlnaHQ6MSxvcGFjaXR5OjEsb3JkZXI6MSxvcnBoYW5zOjEsdGFiU2l6ZToxLHdpZG93czoxLHpJbmRleDoxLHpvb206MSxXZWJraXRMaW5lQ2xhbXA6MSxmaWxsT3BhY2l0eToxLGZsb29kT3BhY2l0eToxLHN0b3BPcGFjaXR5OjEsc3Ryb2tlRGFzaGFycmF5OjEsc3Ryb2tlRGFzaG9mZnNldDoxLHN0cm9rZU1pdGVybGltaXQ6MSxzdHJva2VPcGFjaXR5OjEsc3Ryb2tlV2lkdGg6MX19LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9big5OSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDEwMCk7bigxNjMpLG4oMTY0KSxuKDE2NSksbigxNjYpLGUuZXhwb3J0cz1yfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxMDEpO24oMTYyKSxlLmV4cG9ydHM9cn0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTAyKTtuKDE1OSksZS5leHBvcnRzPXJ9LGZ1bmN0aW9uKGUsdCxuKXtuKDU5KSxuKDc5KSxuKDEzMiksbigxMzQpLG4oODkpLG4oOTApLG4oOTEpLG4oMTU1KSxuKDE1Nik7bj1uKDE1OCk7ZS5leHBvcnRzPW4uUHJvbWlzZX0sZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIG8oZSx0KXt2YXIgbixyPWEodix0aGlzKTtyZXR1cm4gbD9uPWwobmV3IGIscj9pKHRoaXMpOnYpOihuPXI/dGhpczp1KHYpLHMobixnLCJFcnJvciIpKSx2b2lkIDAhPT10JiZzKG4sIm1lc3NhZ2UiLGgodCkpLHAobixvLG4uc3RhY2ssMSksMjxhcmd1bWVudHMubGVuZ3RoJiZkKG4sYXJndW1lbnRzWzJdKSxtKGUseSx7dGhhdDpyPVtdfSkscyhuLCJlcnJvcnMiLHIpLG59dmFyIHI9big3KSxhPW4oMzEpLGk9big1MSksbD1uKDUyKSxjPW4oNzMpLHU9bigzNikscz1uKDE4KSxmPW4oMjMpLGQ9bigxMjEpLHA9bigxMjIpLG09bigyNSksaD1uKDEyOSksZz1uKDUpKCJ0b1N0cmluZ1RhZyIpLGI9RXJyb3IseT1bXS5wdXNoLHY9KGw/bChvLGIpOmMobyxiLHtuYW1lOiEwfSksby5wcm90b3R5cGU9dShiLnByb3RvdHlwZSx7Y29uc3RydWN0b3I6ZigxLG8pLG1lc3NhZ2U6ZigxLCIiKSxuYW1lOmYoMSwiQWdncmVnYXRlRXJyb3IiKX0pKTtyKHtnbG9iYWw6ITAsY29uc3RydWN0b3I6ITAsYXJpdHk6Mn0se0FnZ3JlZ2F0ZUVycm9yOm99KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPXt9LnByb3BlcnR5SXNFbnVtZXJhYmxlLG89T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcixhPW8mJiFyLmNhbGwoezE6Mn0sMSk7dC5mPWE/ZnVuY3Rpb24oZSl7ZT1vKHRoaXMsZSk7cmV0dXJuISFlJiZlLmVudW1lcmFibGV9OnJ9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQpLG89big2KSxhPW4oMjkpLGk9T2JqZWN0LGw9cigiIi5zcGxpdCk7ZS5leHBvcnRzPW8oZnVuY3Rpb24oKXtyZXR1cm4haSgieiIpLnByb3BlcnR5SXNFbnVtZXJhYmxlKDApfSk/ZnVuY3Rpb24oZSl7cmV0dXJuIlN0cmluZyI9PT1hKGUpP2woZSwiIik6aShlKX06aX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oOCksbz1uKDEzKSxhPW4oNjIpLGk9big0MyksbD1uKDEwNyksbj1uKDUpLGM9VHlwZUVycm9yLHU9bigidG9QcmltaXRpdmUiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZighbyhlKXx8YShlKSlyZXR1cm4gZTt2YXIgbj1pKGUsdSk7aWYobil7aWYobj1yKG4sZSx0PXZvaWQgMD09PXQ/ImRlZmF1bHQiOnQpLCFvKG4pfHxhKG4pKXJldHVybiBuO3Rocm93IG5ldyBjKCJDYW4ndCBjb252ZXJ0IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUiKX1yZXR1cm4gbChlLHQ9dm9pZCAwPT09dD8ibnVtYmVyIjp0KX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbz1uKDgpLGE9bigyKSxpPW4oMTMpLGw9VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuLHI7aWYoInN0cmluZyI9PT10JiZhKG49ZS50b1N0cmluZykmJiFpKHI9byhuLGUpKSlyZXR1cm4gcjtpZihhKG49ZS52YWx1ZU9mKSYmIWkocj1vKG4sZSkpKXJldHVybiByO2lmKCJzdHJpbmciIT09dCYmYShuPWUudG9TdHJpbmcpJiYhaShyPW8obixlKSkpcmV0dXJuIHI7dGhyb3cgbmV3IGwoIkNhbid0IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2ZSB2YWx1ZSIpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMyksbj1uKDIpLHI9ci5XZWFrTWFwO2UuZXhwb3J0cz1uKHIpJiYvbmF0aXZlIGNvZGUvLnRlc3QoU3RyaW5nKHIpKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTQpLG89big0KSxhPW4oMTEwKSxpPW4oMTE1KSxsPW4oMTIpLGM9byhbXS5jb25jYXQpO2UuZXhwb3J0cz1yKCJSZWZsZWN0Iiwib3duS2V5cyIpfHxmdW5jdGlvbihlKXt2YXIgdD1hLmYobChlKSksbj1pLmY7cmV0dXJuIG4/Yyh0LG4oZSkpOnR9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big3NCksbz1uKDUwKS5jb25jYXQoImxlbmd0aCIsInByb3RvdHlwZSIpO3QuZj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lc3x8ZnVuY3Rpb24oZSl7cmV0dXJuIHIoZSxvKX19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKGwpe3JldHVybiBmdW5jdGlvbihlLHQsbil7dmFyIHIsbz1jKGUpLGE9cyhvKSxpPXUobixhKTtpZihsJiZ0IT10KXtmb3IoO2k8YTspaWYoKHI9b1tpKytdKSE9cilyZXR1cm4hMH1lbHNlIGZvcig7aTxhO2krKylpZigobHx8aSBpbiBvKSYmb1tpXT09PXQpcmV0dXJuIGx8fGl8fDA7cmV0dXJuIWwmJi0xfX12YXIgYz1uKDI0KSx1PW4oMTEyKSxzPW4oNzUpO2UuZXhwb3J0cz17aW5jbHVkZXM6cighMCksaW5kZXhPZjpyKCExKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDQ5KSxvPU1hdGgubWF4LGE9TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7ZT1yKGUpO3JldHVybiBlPDA/byhlK3QsMCk6YShlLHQpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPU1hdGguY2VpbCxvPU1hdGguZmxvb3I7ZS5leHBvcnRzPU1hdGgudHJ1bmN8fGZ1bmN0aW9uKGUpe2U9K2U7cmV0dXJuKDA8ZT9vOnIpKGUpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNDkpLG89TWF0aC5taW47ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiAwPGU/byhyKGUpLDkwMDcxOTkyNTQ3NDA5OTEpOjB9fSxmdW5jdGlvbihlLHQsbil7dC5mPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHN9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNik7ZS5leHBvcnRzPSFuKGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe31yZXR1cm4gZS5wcm90b3R5cGUuY29uc3RydWN0b3I9bnVsbCxPYmplY3QuZ2V0UHJvdG90eXBlT2YobmV3IGUpIT09ZS5wcm90b3R5cGV9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNCksbz1uKDEwKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3RyeXtyZXR1cm4gcihvKE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KVtuXSkpfWNhdGNoKGUpe319fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigyKSxvPVN0cmluZyxhPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoIm9iamVjdCI9PXR5cGVvZiBlfHxyKGUpKXJldHVybiBlO3Rocm93IG5ldyBhKCJDYW4ndCBzZXQgIitvKGUpKyIgYXMgYSBwcm90b3R5cGUiKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDkpLG89big3MCksbD1uKDE3KSxjPW4oMTIpLHU9bigyNCkscz1uKDEyMCk7dC5mPXImJiFvP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzOmZ1bmN0aW9uKGUsdCl7YyhlKTtmb3IodmFyIG4scj11KHQpLG89cyh0KSxhPW8ubGVuZ3RoLGk9MDtpPGE7KWwuZihlLG49b1tpKytdLHJbbl0pO3JldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNzQpLG89big1MCk7ZS5leHBvcnRzPU9iamVjdC5rZXlzfHxmdW5jdGlvbihlKXtyZXR1cm4gcihlLG8pfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTMpLG89bigxOCk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cih0KSYmImNhdXNlImluIHQmJm8oZSwiY2F1c2UiLHQuY2F1c2UpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBvPW4oMTgpLGE9bigxMjMpLGk9bigxMjQpLGw9RXJyb3IuY2FwdHVyZVN0YWNrVHJhY2U7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuLHIpe2kmJihsP2woZSx0KTpvKGUsInN0YWNrIixhKG4scikpKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDQpLHI9RXJyb3Isbz1uKCIiLnJlcGxhY2UpLG49U3RyaW5nKG5ldyByKCJ6eGNhc2QiKS5zdGFjayksYT0vXG5ccyphdCBbXjpdKjpbXlxuXSovLGk9YS50ZXN0KG4pO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKGkmJiJzdHJpbmciPT10eXBlb2YgZSYmIXIucHJlcGFyZVN0YWNrVHJhY2UpZm9yKDt0LS07KWU9byhlLGEsIiIpO3JldHVybiBlfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNiksbz1uKDIzKTtlLmV4cG9ydHM9IXIoZnVuY3Rpb24oKXt2YXIgZT1uZXcgRXJyb3IoImEiKTtyZXR1cm4hKCJzdGFjayJpbiBlKXx8KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJzdGFjayIsbygxLDcpKSw3IT09ZS5zdGFjayl9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMjkpLG89big0KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aWYoIkZ1bmN0aW9uIj09PXIoZSkpcmV0dXJuIG8oZSl9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big1KSxvPW4oMjYpLGE9cigiaXRlcmF0b3IiKSxpPUFycmF5LnByb3RvdHlwZTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7cmV0dXJuIHZvaWQgMCE9PWUmJihvLkFycmF5PT09ZXx8aVthXT09PWUpfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oOCksbz1uKDEwKSxhPW4oMTIpLGk9bigzMyksbD1uKDc4KSxjPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0PWFyZ3VtZW50cy5sZW5ndGg8Mj9sKGUpOnQ7aWYobyh0KSlyZXR1cm4gYShyKHQsZSkpO3Rocm93IG5ldyBjKGkoZSkrIiBpcyBub3QgaXRlcmFibGUiKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgYT1uKDgpLGk9bigxMiksbD1uKDQzKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG87aShlKTt0cnl7aWYoIShyPWwoZSwicmV0dXJuIikpKXtpZigidGhyb3ciPT09dCl0aHJvdyBuO3JldHVybiBufXI9YShyLGUpfWNhdGNoKGUpe289ITAscj1lfWlmKCJ0aHJvdyI9PT10KXRocm93IG47aWYobyl0aHJvdyByO3JldHVybiBpKHIpLG59fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big1NSk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PWU/YXJndW1lbnRzLmxlbmd0aDwyPyIiOnQ6cihlKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDUpLG89bigzNiksbj1uKDE3KS5mLGE9cigidW5zY29wYWJsZXMiKSxpPUFycmF5LnByb3RvdHlwZTt2b2lkIDA9PT1pW2FdJiZuKGksYSx7Y29uZmlndXJhYmxlOiEwLHZhbHVlOm8obnVsbCl9KSxlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7aVthXVtlXT0hMH19LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiBvKCl7cmV0dXJuIHRoaXN9dmFyIGE9big4MSkuSXRlcmF0b3JQcm90b3R5cGUsaT1uKDM2KSxsPW4oMjMpLGM9bigzOCksdT1uKDI2KTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4scil7dCs9IiBJdGVyYXRvciI7cmV0dXJuIGUucHJvdG90eXBlPWkoYSx7bmV4dDpsKCshcixuKX0pLGMoZSx0LCExLCEwKSx1W3RdPW8sZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDU0KSxvPW4oMTkpLG49bigxMzMpO3J8fG8oT2JqZWN0LnByb3RvdHlwZSwidG9TdHJpbmciLG4se3Vuc2FmZTohMH0pfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big1NCksbz1uKDM3KTtlLmV4cG9ydHM9cj97fS50b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiJbb2JqZWN0ICIrbyh0aGlzKSsiXSJ9fSxmdW5jdGlvbihlLHQsbil7bigxMzUpLG4oMTQ5KSxuKDE1MSksbigxNTIpLG4oMTUzKSxuKDE1NCl9LGZ1bmN0aW9uKFIsTixlKXtmdW5jdGlvbiBhKGUsdCl7dmFyIG4scixvLGEsaT10LnZhbHVlLGw9dC5zdGF0ZT09PU8sYz1sP2Uub2s6ZS5mYWlsLHU9ZS5yZXNvbHZlLHM9ZS5yZWplY3QsZj1lLmRvbWFpbjt0cnl7Yz8obHx8KHQucmVqZWN0aW9uPT09QSYmKGE9dCxtKGgscCxmdW5jdGlvbigpe3ZhciBlPWEuZmFjYWRlO2Q/Uy5lbWl0KCJyZWplY3Rpb25IYW5kbGVkIixlKTpfKEosZSxhLnZhbHVlKX0pKSx0LnJlamVjdGlvbj1qKSwhMD09PWM/bj1pOihmJiZmLmVudGVyKCksbj1jKGkpLGYmJihmLmV4aXQoKSxvPSEwKSksbj09PWUucHJvbWlzZT9zKG5ldyB4KCJQcm9taXNlLWNoYWluIGN5Y2xlIikpOihyPVAobikpP20ocixuLHUscyk6dShuKSk6cyhpKX1jYXRjaChlKXtmJiYhbyYmZi5leGl0KCkscyhlKX19dmFyIG4sdCxyLEQ9ZSg3KSxVPWUoMTUpLGQ9ZSgzOSkscD1lKDMpLG09ZSg4KSxvPWUoMTkpLGk9ZSg1MiksQj1lKDM4KSxGPWUoMTM2KSxIPWUoMTApLGw9ZSgyKSxWPWUoMTMpLCQ9ZSgxMzgpLFc9ZSg4MyksaD1lKDg0KS5zZXQsYz1lKDE0NCksRz1lKDE0NykscT1lKDIwKSxaPWUoODYpLHU9ZSgzNSkscz1lKDIxKSxmPWUoMjcpLGU9ZSgxNiksZz0iUHJvbWlzZSIsYj1mLkNPTlNUUlVDVE9SLFg9Zi5SRUpFQ1RJT05fRVZFTlQsZj1mLlNVQkNMQVNTSU5HLHk9dS5nZXR0ZXJGb3IoZyksWT11LnNldCx1PXMmJnMucHJvdG90eXBlLHY9cyx3PXUseD1wLlR5cGVFcnJvcixrPXAuZG9jdW1lbnQsUz1wLnByb2Nlc3MsQz1lLmYsUT1DLEs9ISEoayYmay5jcmVhdGVFdmVudCYmcC5kaXNwYXRjaEV2ZW50KSxFPSJ1bmhhbmRsZWRyZWplY3Rpb24iLEo9InJlamVjdGlvbmhhbmRsZWQiLE89MSxlZT0yLGo9MSxBPTIsUD1mdW5jdGlvbihlKXt2YXIgdDtyZXR1cm4hKCFWKGUpfHwhbCh0PWUudGhlbikpJiZ0fSxJPWZ1bmN0aW9uKG4sbyl7bi5ub3RpZmllZHx8KG4ubm90aWZpZWQ9ITAsYyhmdW5jdGlvbigpe2Zvcih2YXIgZSxyLHQ9bi5yZWFjdGlvbnM7ZT10LmdldCgpOylhKGUsbik7bi5ub3RpZmllZD0hMSxvJiYhbi5yZWplY3Rpb24mJihyPW4sbShoLHAsZnVuY3Rpb24oKXt2YXIgZT1yLmZhY2FkZSx0PXIudmFsdWUsbj16KHIpO2lmKG4mJihuPXEoZnVuY3Rpb24oKXtkP1MuZW1pdCgidW5oYW5kbGVkUmVqZWN0aW9uIix0LGUpOl8oRSxlLHQpfSksci5yZWplY3Rpb249ZHx8eihyKT9BOmosbi5lcnJvcikpdGhyb3cgbi52YWx1ZX0pKX0pKX0sXz1mdW5jdGlvbihlLHQsbil7dmFyIHI7Sz8oKHI9ay5jcmVhdGVFdmVudCgiRXZlbnQiKSkucHJvbWlzZT10LHIucmVhc29uPW4sci5pbml0RXZlbnQoZSwhMSwhMCkscC5kaXNwYXRjaEV2ZW50KHIpKTpyPXtwcm9taXNlOnQscmVhc29uOm59LCFYJiYodD1wWyJvbiIrZV0pP3Qocik6ZT09PUUmJkcoIlVuaGFuZGxlZCBwcm9taXNlIHJlamVjdGlvbiIsbil9LHo9ZnVuY3Rpb24oZSl7cmV0dXJuIGUucmVqZWN0aW9uIT09aiYmIWUucGFyZW50fSxUPWZ1bmN0aW9uKHQsbixyKXtyZXR1cm4gZnVuY3Rpb24oZSl7dChuLGUscil9fSxMPWZ1bmN0aW9uKGUsdCxuKXtlLmRvbmV8fChlLmRvbmU9ITAsKGU9bj9uOmUpLnZhbHVlPXQsZS5zdGF0ZT1lZSxJKGUsITApKX0sTT1mdW5jdGlvbihuLGUsdCl7aWYoIW4uZG9uZSl7bi5kb25lPSEwLHQmJihuPXQpO3RyeXtpZihuLmZhY2FkZT09PWUpdGhyb3cgbmV3IHgoIlByb21pc2UgY2FuJ3QgYmUgcmVzb2x2ZWQgaXRzZWxmIik7dmFyIHI9UChlKTtyP2MoZnVuY3Rpb24oKXt2YXIgdD17ZG9uZTohMX07dHJ5e20ocixlLFQoTSx0LG4pLFQoTCx0LG4pKX1jYXRjaChlKXtMKHQsZSxuKX19KToobi52YWx1ZT1lLG4uc3RhdGU9TyxJKG4sITEpKX1jYXRjaChlKXtMKHtkb25lOiExfSxlLG4pfX19O2lmKGImJih3PSh2PWZ1bmN0aW9uKGUpeyQodGhpcyx3KSxIKGUpLG0obix0aGlzKTt2YXIgdD15KHRoaXMpO3RyeXtlKFQoTSx0KSxUKEwsdCkpfWNhdGNoKGUpe0wodCxlKX19KS5wcm90b3R5cGUsKG49ZnVuY3Rpb24oZSl7WSh0aGlzLHt0eXBlOmcsZG9uZTohMSxub3RpZmllZDohMSxwYXJlbnQ6ITEscmVhY3Rpb25zOm5ldyBaLHJlamVjdGlvbjohMSxzdGF0ZTowLHZhbHVlOnZvaWQgMH0pfSkucHJvdG90eXBlPW8odywidGhlbiIsZnVuY3Rpb24oZSx0KXt2YXIgbj15KHRoaXMpLHI9QyhXKHRoaXMsdikpO3JldHVybiBuLnBhcmVudD0hMCxyLm9rPSFsKGUpfHxlLHIuZmFpbD1sKHQpJiZ0LHIuZG9tYWluPWQ/Uy5kb21haW46dm9pZCAwLDA9PT1uLnN0YXRlP24ucmVhY3Rpb25zLmFkZChyKTpjKGZ1bmN0aW9uKCl7YShyLG4pfSksci5wcm9taXNlfSksdD1mdW5jdGlvbigpe3ZhciBlPW5ldyBuLHQ9eShlKTt0aGlzLnByb21pc2U9ZSx0aGlzLnJlc29sdmU9VChNLHQpLHRoaXMucmVqZWN0PVQoTCx0KX0sZS5mPUM9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT12fHx2b2lkIDA9PT1lP25ldyB0OlEoZSl9LCFVKSYmbChzKSYmdSE9PU9iamVjdC5wcm90b3R5cGUpe3I9dS50aGVuLGZ8fG8odSwidGhlbiIsZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO3JldHVybiBuZXcgdihmdW5jdGlvbihlLHQpe20ocixuLGUsdCl9KS50aGVuKGUsdCl9LHt1bnNhZmU6ITB9KTt0cnl7ZGVsZXRlIHUuY29uc3RydWN0b3J9Y2F0Y2goZSl7fWkmJmkodSx3KX1EKHtnbG9iYWw6ITAsY29uc3RydWN0b3I6ITAsd3JhcDohMCxmb3JjZWQ6Yn0se1Byb21pc2U6dn0pLEIodixnLCExLCEwKSxGKGcpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxNCksbz1uKDEzNyksYT1uKDUpLGk9big5KSxsPWEoInNwZWNpZXMiKTtlLmV4cG9ydHM9ZnVuY3Rpb24oZSl7ZT1yKGUpO2kmJmUmJiFlW2xdJiZvKGUsbCx7Y29uZmlndXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzfX0pfX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNzEpLG89bigxNyk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbi5nZXQmJnIobi5nZXQsdCx7Z2V0dGVyOiEwfSksbi5zZXQmJnIobi5zZXQsdCx7c2V0dGVyOiEwfSksby5mKGUsdCxuKX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDMxKSxvPVR5cGVFcnJvcjtlLmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXtpZihyKHQsZSkpcmV0dXJuIGU7dGhyb3cgbmV3IG8oIkluY29ycmVjdCBpbnZvY2F0aW9uIil9fSxmdW5jdGlvbihlLHQsbil7dmFyIHI9bigxNDApLG89bigzMyksYT1UeXBlRXJyb3I7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2lmKHIoZSkpcmV0dXJuIGU7dGhyb3cgbmV3IGEobyhlKSsiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIil9fSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcigpe31mdW5jdGlvbiBvKGUpe2lmKCFjKGUpKXJldHVybiExO3RyeXtyZXR1cm4gcChyLGQsZSksITB9Y2F0Y2goZSl7cmV0dXJuITF9fWZ1bmN0aW9uIGEoZSl7aWYoIWMoZSkpcmV0dXJuITE7c3dpdGNoKHUoZSkpe2Nhc2UiQXN5bmNGdW5jdGlvbiI6Y2FzZSJHZW5lcmF0b3JGdW5jdGlvbiI6Y2FzZSJBc3luY0dlbmVyYXRvckZ1bmN0aW9uIjpyZXR1cm4hMX10cnl7cmV0dXJuIGd8fCEhaChtLGYoZSkpfWNhdGNoKGUpe3JldHVybiEwfX12YXIgaT1uKDQpLGw9big2KSxjPW4oMiksdT1uKDM3KSxzPW4oMTQpLGY9big0NiksZD1bXSxwPXMoIlJlZmxlY3QiLCJjb25zdHJ1Y3QiKSxtPS9eXHMqKD86Y2xhc3N8ZnVuY3Rpb24pXGIvLGg9aShtLmV4ZWMpLGc9IW0udGVzdChyKTthLnNoYW09ITAsZS5leHBvcnRzPSFwfHxsKGZ1bmN0aW9uKCl7dmFyIGU7cmV0dXJuIG8oby5jYWxsKXx8IW8oT2JqZWN0KXx8IW8oZnVuY3Rpb24oKXtlPSEwfSl8fGV9KT9hOm99LGZ1bmN0aW9uKGUsdCxuKXt2YXIgbj1uKDI4KSxyPUZ1bmN0aW9uLnByb3RvdHlwZSxvPXIuYXBwbHksYT1yLmNhbGw7ZS5leHBvcnRzPSJvYmplY3QiPT10eXBlb2YgUmVmbGVjdCYmUmVmbGVjdC5hcHBseXx8KG4/YS5iaW5kKG8pOmZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkobyxhcmd1bWVudHMpfSl9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oNCk7ZS5leHBvcnRzPW4oW10uc2xpY2UpfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9VHlwZUVycm9yO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKGU8dCl0aHJvdyBuZXcgcigiTm90IGVub3VnaCBhcmd1bWVudHMiKTtyZXR1cm4gZX19LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGEsaSxsLGMsdT1uKDMpLHM9big1MyksZj1uKDQxKS5mLGQ9big4NCkuc2V0LHA9big4NiksbT1uKDg1KSxoPW4oMTQ1KSxnPW4oMTQ2KSxiPW4oMzkpLG49dS5NdXRhdGlvbk9ic2VydmVyfHx1LldlYktpdE11dGF0aW9uT2JzZXJ2ZXIseT11LmRvY3VtZW50LHY9dS5wcm9jZXNzLHc9dS5Qcm9taXNlLGY9Zih1LCJxdWV1ZU1pY3JvdGFzayIpLGY9ZiYmZi52YWx1ZTtmfHwoaT1uZXcgcCxsPWZ1bmN0aW9uKCl7dmFyIGUsdDtmb3IoYiYmKGU9di5kb21haW4pJiZlLmV4aXQoKTt0PWkuZ2V0KCk7KXRyeXt0KCl9Y2F0Y2goZSl7dGhyb3cgaS5oZWFkJiZjKCksZX1lJiZlLmVudGVyKCl9LGM9bXx8Ynx8Z3x8IW58fCF5PyFoJiZ3JiZ3LnJlc29sdmU/KChwPXcucmVzb2x2ZSh2b2lkIDApKS5jb25zdHJ1Y3Rvcj13LGE9cyhwLnRoZW4scCksZnVuY3Rpb24oKXthKGwpfSk6Yj9mdW5jdGlvbigpe3YubmV4dFRpY2sobCl9OihkPXMoZCx1KSxmdW5jdGlvbigpe2QobCl9KToocj0hMCxvPXkuY3JlYXRlVGV4dE5vZGUoIiIpLG5ldyBuKGwpLm9ic2VydmUobyx7Y2hhcmFjdGVyRGF0YTohMH0pLGZ1bmN0aW9uKCl7by5kYXRhPXI9IXJ9KSxmPWZ1bmN0aW9uKGUpe2kuaGVhZHx8YygpLGkuYWRkKGUpfSksZS5leHBvcnRzPWZ9LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMzIpO2UuZXhwb3J0cz0vaXBhZHxpcGhvbmV8aXBvZC9pLnRlc3QobikmJiJ1bmRlZmluZWQiIT10eXBlb2YgUGViYmxlfSxmdW5jdGlvbihlLHQsbil7bj1uKDMyKTtlLmV4cG9ydHM9L3dlYjBzKD8hLipjaHJvbWUpL2kudGVzdChuKX0sZnVuY3Rpb24oZSx0LG4pe2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3RyeXsxPT09YXJndW1lbnRzLmxlbmd0aD9jb25zb2xlLmVycm9yKGUpOmNvbnNvbGUuZXJyb3IoZSx0KX1jYXRjaChlKXt9fX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oODcpLG49bigzOSk7ZS5leHBvcnRzPSFyJiYhbiYmIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJiJvYmplY3QiPT10eXBlb2YgZG9jdW1lbnR9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLHM9big4KSxmPW4oMTApLG89bigxNiksYT1uKDIwKSxkPW4oMjUpO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6big0MCl9LHthbGw6ZnVuY3Rpb24oZSl7dmFyIGw9dGhpcyx0PW8uZihsKSxjPXQucmVzb2x2ZSx1PXQucmVqZWN0LG49YShmdW5jdGlvbigpe3ZhciByPWYobC5yZXNvbHZlKSxvPVtdLGE9MCxpPTE7ZChlLGZ1bmN0aW9uKGUpe3ZhciB0PWErKyxuPSExO2krKyxzKHIsbCxlKS50aGVuKGZ1bmN0aW9uKGUpe258fChuPSEwLG9bdF09ZSwtLWkpfHxjKG8pfSx1KX0pLC0taXx8YyhvKX0pO3JldHVybiBuLmVycm9yJiZ1KG4udmFsdWUpLHQucHJvbWlzZX19KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciBvPW4oNSkoIml0ZXJhdG9yIiksYT0hMTt0cnl7dmFyIHI9MCxpPXtuZXh0OmZ1bmN0aW9uKCl7cmV0dXJue2RvbmU6ISFyKyt9fSxyZXR1cm46ZnVuY3Rpb24oKXthPSEwfX07aVtvXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxBcnJheS5mcm9tKGksZnVuY3Rpb24oKXt0aHJvdyAyfSl9Y2F0Y2goZSl7fWUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3RyeXtpZighdCYmIWEpcmV0dXJuITF9Y2F0Y2goZSl7cmV0dXJuITF9dmFyIG49ITE7dHJ5e3ZhciByPXt9O3Jbb109ZnVuY3Rpb24oKXtyZXR1cm57bmV4dDpmdW5jdGlvbigpe3JldHVybntkb25lOm49ITB9fX19LGUocil9Y2F0Y2goZSl7fXJldHVybiBufX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oNyksbz1uKDE1KSxhPW4oMjcpLkNPTlNUUlVDVE9SLGk9bigyMSksbD1uKDE0KSxjPW4oMiksbj1uKDE5KSx1PWkmJmkucHJvdG90eXBlO3Ioe3RhcmdldDoiUHJvbWlzZSIscHJvdG86ITAsZm9yY2VkOmEscmVhbDohMH0se2NhdGNoOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnRoZW4odm9pZCAwLGUpfX0pLCFvJiZjKGkpJiYocj1sKCJQcm9taXNlIikucHJvdG90eXBlLmNhdGNoLHUuY2F0Y2ghPT1yKSYmbih1LCJjYXRjaCIscix7dW5zYWZlOiEwfSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLGE9big4KSxpPW4oMTApLGw9bigxNiksYz1uKDIwKSx1PW4oMjUpO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6big0MCl9LHtyYWNlOmZ1bmN0aW9uKGUpe3ZhciBuPXRoaXMscj1sLmYobiksbz1yLnJlamVjdCx0PWMoZnVuY3Rpb24oKXt2YXIgdD1pKG4ucmVzb2x2ZSk7dShlLGZ1bmN0aW9uKGUpe2EodCxuLGUpLnRoZW4oci5yZXNvbHZlLG8pfSl9KTtyZXR1cm4gdC5lcnJvciYmbyh0LnZhbHVlKSxyLnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89big4KSxhPW4oMTYpO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6bigyNykuQ09OU1RSVUNUT1J9LHtyZWplY3Q6ZnVuY3Rpb24oZSl7dmFyIHQ9YS5mKHRoaXMpO3JldHVybiBvKHQucmVqZWN0LHZvaWQgMCxlKSx0LnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89bigxNCksYT1uKDE1KSxpPW4oMjEpLGw9bigyNykuQ09OU1RSVUNUT1IsYz1uKDg4KSx1PW8oIlByb21pc2UiKSxzPWEmJiFsO3Ioe3RhcmdldDoiUHJvbWlzZSIsc3RhdDohMCxmb3JjZWQ6YXx8bH0se3Jlc29sdmU6ZnVuY3Rpb24oZSl7cmV0dXJuIGMocyYmdGhpcz09PXU/aTp0aGlzLGUpfX0pfSxmdW5jdGlvbihlLHQsbil7dmFyIHI9big3KSxvPW4oMTUpLGE9bigyMSksaT1uKDYpLGw9bigxNCksYz1uKDIpLHU9big4Mykscz1uKDg4KSxuPW4oMTkpLGY9YSYmYS5wcm90b3R5cGU7cih7dGFyZ2V0OiJQcm9taXNlIixwcm90bzohMCxyZWFsOiEwLGZvcmNlZDohIWEmJmkoZnVuY3Rpb24oKXtmLmZpbmFsbHkuY2FsbCh7dGhlbjpmdW5jdGlvbigpe319LGZ1bmN0aW9uKCl7fSl9KX0se2ZpbmFsbHk6ZnVuY3Rpb24odCl7dmFyIG49dSh0aGlzLGwoIlByb21pc2UiKSksZT1jKHQpO3JldHVybiB0aGlzLnRoZW4oZT9mdW5jdGlvbihlKXtyZXR1cm4gcyhuLHQoKSkudGhlbihmdW5jdGlvbigpe3JldHVybiBlfSl9OnQsZT9mdW5jdGlvbihlKXtyZXR1cm4gcyhuLHQoKSkudGhlbihmdW5jdGlvbigpe3Rocm93IGV9KX06dCl9fSksIW8mJmMoYSkmJihyPWwoIlByb21pc2UiKS5wcm90b3R5cGUuZmluYWxseSxmLmZpbmFsbHkhPT1yKSYmbihmLCJmaW5hbGx5IixyLHt1bnNhZmU6ITB9KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPW4oMTU3KS5jaGFyQXQsbz1uKDU1KSxhPW4oMzUpLGk9big4MCksbD1uKDgyKSxjPSJTdHJpbmcgSXRlcmF0b3IiLHU9YS5zZXQscz1hLmdldHRlckZvcihjKTtpKFN0cmluZywiU3RyaW5nIixmdW5jdGlvbihlKXt1KHRoaXMse3R5cGU6YyxzdHJpbmc6byhlKSxpbmRleDowfSl9LGZ1bmN0aW9uKCl7dmFyIGU9cyh0aGlzKSx0PWUuc3RyaW5nLG49ZS5pbmRleDtyZXR1cm4gbj49dC5sZW5ndGg/bCh2b2lkIDAsITApOih0PXIodCxuKSxlLmluZGV4Kz10Lmxlbmd0aCxsKHQsITEpKX0pfSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcihvKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXt2YXIgbixlPWkobChlKSksdD1hKHQpLHI9ZS5sZW5ndGg7cmV0dXJuIHQ8MHx8cjw9dD9vPyIiOnZvaWQgMDoobj11KGUsdCkpPDU1Mjk2fHw1NjMxOTxufHx0KzE9PT1yfHwocj11KGUsdCsxKSk8NTYzMjB8fDU3MzQzPHI/bz9jKGUsdCk6bjpvP3MoZSx0LHQrMik6ci01NjMyMCsobi01NTI5Njw8MTApKzY1NTM2fX12YXIgbz1uKDQpLGE9big0OSksaT1uKDU1KSxsPW4oNDIpLGM9bygiIi5jaGFyQXQpLHU9bygiIi5jaGFyQ29kZUF0KSxzPW8oIiIuc2xpY2UpO2UuZXhwb3J0cz17Y29kZUF0OnIoITEpLGNoYXJBdDpyKCEwKX19LGZ1bmN0aW9uKGUsdCxuKXtuPW4oMyk7ZS5leHBvcnRzPW59LGZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiByKHQsZSl7aWYodCl7aWYodFtmXSE9PWQpdHJ5e3UodCxmLGQpfWNhdGNoKGUpe3RbZl09ZH1pZihzKHQsZSwhMCksaVtlXSlmb3IodmFyIG4gaW4gYylpZih0W25dIT09Y1tuXSl0cnl7dSh0LG4sY1tuXSl9Y2F0Y2goZSl7dFtuXT1jW25dfX19dmFyIG8sYT1uKDMpLGk9bigxNjApLGw9bigxNjEpLGM9big3OSksdT1uKDE4KSxzPW4oMzgpLGY9big1KSgiaXRlcmF0b3IiKSxkPWMudmFsdWVzO2ZvcihvIGluIGkpcihhW29dJiZhW29dLnByb3RvdHlwZSxvKTtyKGwsIkRPTVRva2VuTGlzdCIpfSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPXtDU1NSdWxlTGlzdDowLENTU1N0eWxlRGVjbGFyYXRpb246MCxDU1NWYWx1ZUxpc3Q6MCxDbGllbnRSZWN0TGlzdDowLERPTVJlY3RMaXN0OjAsRE9NU3RyaW5nTGlzdDowLERPTVRva2VuTGlzdDoxLERhdGFUcmFuc2Zlckl0ZW1MaXN0OjAsRmlsZUxpc3Q6MCxIVE1MQWxsQ29sbGVjdGlvbjowLEhUTUxDb2xsZWN0aW9uOjAsSFRNTEZvcm1FbGVtZW50OjAsSFRNTFNlbGVjdEVsZW1lbnQ6MCxNZWRpYUxpc3Q6MCxNaW1lVHlwZUFycmF5OjAsTmFtZWROb2RlTWFwOjAsTm9kZUxpc3Q6MSxQYWludFJlcXVlc3RMaXN0OjAsUGx1Z2luOjAsUGx1Z2luQXJyYXk6MCxTVkdMZW5ndGhMaXN0OjAsU1ZHTnVtYmVyTGlzdDowLFNWR1BhdGhTZWdMaXN0OjAsU1ZHUG9pbnRMaXN0OjAsU1ZHU3RyaW5nTGlzdDowLFNWR1RyYW5zZm9ybUxpc3Q6MCxTb3VyY2VCdWZmZXJMaXN0OjAsU3R5bGVTaGVldExpc3Q6MCxUZXh0VHJhY2tDdWVMaXN0OjAsVGV4dFRyYWNrTGlzdDowLFRvdWNoTGlzdDowfX0sZnVuY3Rpb24oZSx0LG4pe249bigzNCkoInNwYW4iKS5jbGFzc0xpc3Qsbj1uJiZuLmNvbnN0cnVjdG9yJiZuLmNvbnN0cnVjdG9yLnByb3RvdHlwZTtlLmV4cG9ydHM9bj09PU9iamVjdC5wcm90b3R5cGU/dm9pZCAwOm59LGZ1bmN0aW9uKGUsdCxuKXtuKDkxKX0sZnVuY3Rpb24oZSx0LG4pe24oNTkpfSxmdW5jdGlvbihlLHQsbil7big4OSl9LGZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1uKDcpLG89bigxNiksYT1uKDIwKTtyKHt0YXJnZXQ6IlByb21pc2UiLHN0YXQ6ITAsZm9yY2VkOiEwfSx7dHJ5OmZ1bmN0aW9uKGUpe3ZhciB0PW8uZih0aGlzKSxlPWEoZSk7cmV0dXJuKGUuZXJyb3I/dC5yZWplY3Q6dC5yZXNvbHZlKShlLnZhbHVlKSx0LnByb21pc2V9fSl9LGZ1bmN0aW9uKGUsdCxuKXtuKDkwKX0sZnVuY3Rpb24oZSx0LG4peyFmdW5jdGlvbihlKXt2YXIgdCxuLGM9InVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWxUaGlzJiZnbG9iYWxUaGlzfHwidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGZ8fHZvaWQgMCE9PWUmJmV8fHt9LHI9IlVSTFNlYXJjaFBhcmFtcyJpbiBjLG89IlN5bWJvbCJpbiBjJiYiaXRlcmF0b3IiaW4gU3ltYm9sLHU9IkZpbGVSZWFkZXIiaW4gYyYmIkJsb2IiaW4gYyYmZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBCbG9iLCEwfWNhdGNoKGUpe3JldHVybiExfX0oKSxhPSJGb3JtRGF0YSJpbiBjLHM9IkFycmF5QnVmZmVyImluIGM7ZnVuY3Rpb24gZihlKXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJihlPVN0cmluZyhlKSksL1teYS16MC05XC0jJCUmJyorLl5fYHx+IV0vaS50ZXN0KGUpfHwiIj09PWUpdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBjaGFyYWN0ZXIgaW4gaGVhZGVyIGZpZWxkIG5hbWU6ICInK2UrJyInKTtyZXR1cm4gZS50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuIGU9InN0cmluZyIhPXR5cGVvZiBlP1N0cmluZyhlKTplfWZ1bmN0aW9uIGkodCl7dmFyIGU9e25leHQ6ZnVuY3Rpb24oKXt2YXIgZT10LnNoaWZ0KCk7cmV0dXJue2RvbmU6dm9pZCAwPT09ZSx2YWx1ZTplfX19O3JldHVybiBvJiYoZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIGV9KSxlfWZ1bmN0aW9uIHAodCl7dGhpcy5tYXA9e30sdCBpbnN0YW5jZW9mIHA/dC5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7dGhpcy5hcHBlbmQodCxlKX0sdGhpcyk6QXJyYXkuaXNBcnJheSh0KT90LmZvckVhY2goZnVuY3Rpb24oZSl7aWYoMiE9ZS5sZW5ndGgpdGhyb3cgbmV3IFR5cGVFcnJvcigiSGVhZGVycyBjb25zdHJ1Y3RvcjogZXhwZWN0ZWQgbmFtZS92YWx1ZSBwYWlyIHRvIGJlIGxlbmd0aCAyLCBmb3VuZCIrZS5sZW5ndGgpO3RoaXMuYXBwZW5kKGVbMF0sZVsxXSl9LHRoaXMpOnQmJk9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHQpLmZvckVhY2goZnVuY3Rpb24oZSl7dGhpcy5hcHBlbmQoZSx0W2VdKX0sdGhpcyl9ZnVuY3Rpb24gbChlKXtpZighZS5fbm9Cb2R5KXJldHVybiBlLmJvZHlVc2VkP1Byb21pc2UucmVqZWN0KG5ldyBUeXBlRXJyb3IoIkFscmVhZHkgcmVhZCIpKTp2b2lkKGUuYm9keVVzZWQ9ITApfWZ1bmN0aW9uIG0obil7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsdCl7bi5vbmxvYWQ9ZnVuY3Rpb24oKXtlKG4ucmVzdWx0KX0sbi5vbmVycm9yPWZ1bmN0aW9uKCl7dChuLmVycm9yKX19KX1mdW5jdGlvbiBoKGUpe3ZhciB0PW5ldyBGaWxlUmVhZGVyLG49bSh0KTtyZXR1cm4gdC5yZWFkQXNBcnJheUJ1ZmZlcihlKSxufWZ1bmN0aW9uIGcoZSl7dmFyIHQ7cmV0dXJuIGUuc2xpY2U/ZS5zbGljZSgwKTooKHQ9bmV3IFVpbnQ4QXJyYXkoZS5ieXRlTGVuZ3RoKSkuc2V0KG5ldyBVaW50OEFycmF5KGUpKSx0LmJ1ZmZlcil9ZnVuY3Rpb24gYigpe3JldHVybiB0aGlzLmJvZHlVc2VkPSExLHRoaXMuX2luaXRCb2R5PWZ1bmN0aW9uKGUpe3ZhciB0O3RoaXMuYm9keVVzZWQ9dGhpcy5ib2R5VXNlZCwodGhpcy5fYm9keUluaXQ9ZSk/InN0cmluZyI9PXR5cGVvZiBlP3RoaXMuX2JvZHlUZXh0PWU6dSYmQmxvYi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKT90aGlzLl9ib2R5QmxvYj1lOmEmJkZvcm1EYXRhLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKGUpP3RoaXMuX2JvZHlGb3JtRGF0YT1lOnImJlVSTFNlYXJjaFBhcmFtcy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZihlKT90aGlzLl9ib2R5VGV4dD1lLnRvU3RyaW5nKCk6cyYmdSYmKHQ9ZSkmJkRhdGFWaWV3LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHQpPyh0aGlzLl9ib2R5QXJyYXlCdWZmZXI9ZyhlLmJ1ZmZlciksdGhpcy5fYm9keUluaXQ9bmV3IEJsb2IoW3RoaXMuX2JvZHlBcnJheUJ1ZmZlcl0pKTpzJiYoQXJyYXlCdWZmZXIucHJvdG90eXBlLmlzUHJvdG90eXBlT2YoZSl8fG4oZSkpP3RoaXMuX2JvZHlBcnJheUJ1ZmZlcj1nKGUpOnRoaXMuX2JvZHlUZXh0PWU9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpOih0aGlzLl9ub0JvZHk9ITAsdGhpcy5fYm9keVRleHQ9IiIpLHRoaXMuaGVhZGVycy5nZXQoImNvbnRlbnQtdHlwZSIpfHwoInN0cmluZyI9PXR5cGVvZiBlP3RoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsInRleHQvcGxhaW47Y2hhcnNldD1VVEYtOCIpOnRoaXMuX2JvZHlCbG9iJiZ0aGlzLl9ib2R5QmxvYi50eXBlP3RoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsdGhpcy5fYm9keUJsb2IudHlwZSk6ciYmVVJMU2VhcmNoUGFyYW1zLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKGUpJiZ0aGlzLmhlYWRlcnMuc2V0KCJjb250ZW50LXR5cGUiLCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7Y2hhcnNldD1VVEYtOCIpKX0sdSYmKHRoaXMuYmxvYj1mdW5jdGlvbigpe3ZhciBlPWwodGhpcyk7aWYoZSlyZXR1cm4gZTtpZih0aGlzLl9ib2R5QmxvYilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlCbG9iKTtpZih0aGlzLl9ib2R5QXJyYXlCdWZmZXIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShuZXcgQmxvYihbdGhpcy5fYm9keUFycmF5QnVmZmVyXSkpO2lmKHRoaXMuX2JvZHlGb3JtRGF0YSl0aHJvdyBuZXcgRXJyb3IoImNvdWxkIG5vdCByZWFkIEZvcm1EYXRhIGJvZHkgYXMgYmxvYiIpO3JldHVybiBQcm9taXNlLnJlc29sdmUobmV3IEJsb2IoW3RoaXMuX2JvZHlUZXh0XSkpfSksdGhpcy5hcnJheUJ1ZmZlcj1mdW5jdGlvbigpe2lmKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcilyZXR1cm4gbCh0aGlzKXx8KEFycmF5QnVmZmVyLmlzVmlldyh0aGlzLl9ib2R5QXJyYXlCdWZmZXIpP1Byb21pc2UucmVzb2x2ZSh0aGlzLl9ib2R5QXJyYXlCdWZmZXIuYnVmZmVyLnNsaWNlKHRoaXMuX2JvZHlBcnJheUJ1ZmZlci5ieXRlT2Zmc2V0LHRoaXMuX2JvZHlBcnJheUJ1ZmZlci5ieXRlT2Zmc2V0K3RoaXMuX2JvZHlBcnJheUJ1ZmZlci5ieXRlTGVuZ3RoKSk6UHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcikpO2lmKHUpcmV0dXJuIHRoaXMuYmxvYigpLnRoZW4oaCk7dGhyb3cgbmV3IEVycm9yKCJjb3VsZCBub3QgcmVhZCBhcyBBcnJheUJ1ZmZlciIpfSx0aGlzLnRleHQ9ZnVuY3Rpb24oKXt2YXIgZSx0LG4scj1sKHRoaXMpO2lmKHIpcmV0dXJuIHI7aWYodGhpcy5fYm9keUJsb2IpcmV0dXJuIHI9dGhpcy5fYm9keUJsb2IsZT1uZXcgRmlsZVJlYWRlcix0PW0oZSksbj0obj0vY2hhcnNldD0oW0EtWmEtejAtOV8tXSspLy5leGVjKHIudHlwZSkpP25bMV06InV0Zi04IixlLnJlYWRBc1RleHQocixuKSx0O2lmKHRoaXMuX2JvZHlBcnJheUJ1ZmZlcilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1uZXcgVWludDhBcnJheShlKSxuPW5ldyBBcnJheSh0Lmxlbmd0aCkscj0wO3I8dC5sZW5ndGg7cisrKW5bcl09U3RyaW5nLmZyb21DaGFyQ29kZSh0W3JdKTtyZXR1cm4gbi5qb2luKCIiKX0odGhpcy5fYm9keUFycmF5QnVmZmVyKSk7aWYodGhpcy5fYm9keUZvcm1EYXRhKXRocm93IG5ldyBFcnJvcigiY291bGQgbm90IHJlYWQgRm9ybURhdGEgYm9keSBhcyB0ZXh0Iik7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLl9ib2R5VGV4dCl9LGEmJih0aGlzLmZvcm1EYXRhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGV4dCgpLnRoZW4odyl9KSx0aGlzLmpzb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50ZXh0KCkudGhlbihKU09OLnBhcnNlKX0sdGhpc31zJiYodD1bIltvYmplY3QgSW50OEFycmF5XSIsIltvYmplY3QgVWludDhBcnJheV0iLCJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSIsIltvYmplY3QgSW50MTZBcnJheV0iLCJbb2JqZWN0IFVpbnQxNkFycmF5XSIsIltvYmplY3QgSW50MzJBcnJheV0iLCJbb2JqZWN0IFVpbnQzMkFycmF5XSIsIltvYmplY3QgRmxvYXQzMkFycmF5XSIsIltvYmplY3QgRmxvYXQ2NEFycmF5XSJdLG49QXJyYXlCdWZmZXIuaXNWaWV3fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmLTE8dC5pbmRleE9mKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKSl9KSxwLnByb3RvdHlwZS5hcHBlbmQ9ZnVuY3Rpb24oZSx0KXtlPWYoZSksdD1kKHQpO3ZhciBuPXRoaXMubWFwW2VdO3RoaXMubWFwW2VdPW4/bisiLCAiK3Q6dH0scC5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGUpe2RlbGV0ZSB0aGlzLm1hcFtmKGUpXX0scC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiBlPWYoZSksdGhpcy5oYXMoZSk/dGhpcy5tYXBbZV06bnVsbH0scC5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eShmKGUpKX0scC5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGUsdCl7dGhpcy5tYXBbZihlKV09ZCh0KX0scC5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihlLHQpe2Zvcih2YXIgbiBpbiB0aGlzLm1hcCl0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eShuKSYmZS5jYWxsKHQsdGhpcy5tYXBbbl0sbix0aGlzKX0scC5wcm90b3R5cGUua2V5cz1mdW5jdGlvbigpe3ZhciBuPVtdO3JldHVybiB0aGlzLmZvckVhY2goZnVuY3Rpb24oZSx0KXtuLnB1c2godCl9KSxpKG4pfSxwLnByb3RvdHlwZS52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgdD1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKGUpe3QucHVzaChlKX0pLGkodCl9LHAucHJvdG90eXBlLmVudHJpZXM9ZnVuY3Rpb24oKXt2YXIgbj1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7bi5wdXNoKFt0LGVdKX0pLGkobil9LG8mJihwLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPXAucHJvdG90eXBlLmVudHJpZXMpO3ZhciB5PVsiQ09OTkVDVCIsIkRFTEVURSIsIkdFVCIsIkhFQUQiLCJPUFRJT05TIiwiUEFUQ0giLCJQT1NUIiwiUFVUIiwiVFJBQ0UiXTtmdW5jdGlvbiB2KGUsdCl7aWYoISh0aGlzIGluc3RhbmNlb2YgdikpdGhyb3cgbmV3IFR5cGVFcnJvcignUGxlYXNlIHVzZSB0aGUgIm5ldyIgb3BlcmF0b3IsIHRoaXMgRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uJyk7dmFyIG4scj0odD10fHx7fSkuYm9keTtpZihlIGluc3RhbmNlb2Ygdil7aWYoZS5ib2R5VXNlZCl0aHJvdyBuZXcgVHlwZUVycm9yKCJBbHJlYWR5IHJlYWQiKTt0aGlzLnVybD1lLnVybCx0aGlzLmNyZWRlbnRpYWxzPWUuY3JlZGVudGlhbHMsdC5oZWFkZXJzfHwodGhpcy5oZWFkZXJzPW5ldyBwKGUuaGVhZGVycykpLHRoaXMubWV0aG9kPWUubWV0aG9kLHRoaXMubW9kZT1lLm1vZGUsdGhpcy5zaWduYWw9ZS5zaWduYWwscnx8bnVsbD09ZS5fYm9keUluaXR8fChyPWUuX2JvZHlJbml0LGUuYm9keVVzZWQ9ITApfWVsc2UgdGhpcy51cmw9U3RyaW5nKGUpO2lmKHRoaXMuY3JlZGVudGlhbHM9dC5jcmVkZW50aWFsc3x8dGhpcy5jcmVkZW50aWFsc3x8InNhbWUtb3JpZ2luIiwhdC5oZWFkZXJzJiZ0aGlzLmhlYWRlcnN8fCh0aGlzLmhlYWRlcnM9bmV3IHAodC5oZWFkZXJzKSksdGhpcy5tZXRob2Q9KGU9dC5tZXRob2R8fHRoaXMubWV0aG9kfHwiR0VUIixuPWUudG9VcHBlckNhc2UoKSwtMTx5LmluZGV4T2Yobik/bjplKSx0aGlzLm1vZGU9dC5tb2RlfHx0aGlzLm1vZGV8fG51bGwsdGhpcy5zaWduYWw9dC5zaWduYWx8fHRoaXMuc2lnbmFsfHxmdW5jdGlvbigpe2lmKCJBYm9ydENvbnRyb2xsZXIiaW4gYylyZXR1cm4obmV3IEFib3J0Q29udHJvbGxlcikuc2lnbmFsfSgpLHRoaXMucmVmZXJyZXI9bnVsbCwoIkdFVCI9PT10aGlzLm1ldGhvZHx8IkhFQUQiPT09dGhpcy5tZXRob2QpJiZyKXRocm93IG5ldyBUeXBlRXJyb3IoIkJvZHkgbm90IGFsbG93ZWQgZm9yIEdFVCBvciBIRUFEIHJlcXVlc3RzIik7dGhpcy5faW5pdEJvZHkociksIkdFVCIhPT10aGlzLm1ldGhvZCYmIkhFQUQiIT09dGhpcy5tZXRob2R8fCJuby1zdG9yZSIhPT10LmNhY2hlJiYibm8tY2FjaGUiIT09dC5jYWNoZXx8KChuPS8oWz8mXSlfPVteJl0qLykudGVzdCh0aGlzLnVybCk/dGhpcy51cmw9dGhpcy51cmwucmVwbGFjZShuLCIkMV89IisobmV3IERhdGUpLmdldFRpbWUoKSk6dGhpcy51cmwrPSgvXD8vLnRlc3QodGhpcy51cmwpPyImIjoiPyIpKyJfPSIrKG5ldyBEYXRlKS5nZXRUaW1lKCkpfWZ1bmN0aW9uIHcoZSl7dmFyIG49bmV3IEZvcm1EYXRhO3JldHVybiBlLnRyaW0oKS5zcGxpdCgiJiIpLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ7ZSYmKHQ9KGU9ZS5zcGxpdCgiPSIpKS5zaGlmdCgpLnJlcGxhY2UoL1wrL2csIiAiKSxlPWUuam9pbigiPSIpLnJlcGxhY2UoL1wrL2csIiAiKSxuLmFwcGVuZChkZWNvZGVVUklDb21wb25lbnQodCksZGVjb2RlVVJJQ29tcG9uZW50KGUpKSl9KSxufWZ1bmN0aW9uIHgoZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiB4KSl0aHJvdyBuZXcgVHlwZUVycm9yKCdQbGVhc2UgdXNlIHRoZSAibmV3IiBvcGVyYXRvciwgdGhpcyBET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMgYSBmdW5jdGlvbi4nKTtpZih0PXR8fHt9LHRoaXMudHlwZT0iZGVmYXVsdCIsdGhpcy5zdGF0dXM9dm9pZCAwPT09dC5zdGF0dXM/MjAwOnQuc3RhdHVzLHRoaXMuc3RhdHVzPDIwMHx8NTk5PHRoaXMuc3RhdHVzKXRocm93IG5ldyBSYW5nZUVycm9yKCJGYWlsZWQgdG8gY29uc3RydWN0ICdSZXNwb25zZSc6IFRoZSBzdGF0dXMgcHJvdmlkZWQgKDApIGlzIG91dHNpZGUgdGhlIHJhbmdlIFsyMDAsIDU5OV0uIik7dGhpcy5vaz0yMDA8PXRoaXMuc3RhdHVzJiZ0aGlzLnN0YXR1czwzMDAsdGhpcy5zdGF0dXNUZXh0PXZvaWQgMD09PXQuc3RhdHVzVGV4dD8iIjoiIit0LnN0YXR1c1RleHQsdGhpcy5oZWFkZXJzPW5ldyBwKHQuaGVhZGVycyksdGhpcy51cmw9dC51cmx8fCIiLHRoaXMuX2luaXRCb2R5KGUpfXYucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB2KHRoaXMse2JvZHk6dGhpcy5fYm9keUluaXR9KX0sYi5jYWxsKHYucHJvdG90eXBlKSxiLmNhbGwoeC5wcm90b3R5cGUpLHgucHJvdG90eXBlLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB4KHRoaXMuX2JvZHlJbml0LHtzdGF0dXM6dGhpcy5zdGF0dXMsc3RhdHVzVGV4dDp0aGlzLnN0YXR1c1RleHQsaGVhZGVyczpuZXcgcCh0aGlzLmhlYWRlcnMpLHVybDp0aGlzLnVybH0pfSx4LmVycm9yPWZ1bmN0aW9uKCl7dmFyIGU9bmV3IHgobnVsbCx7c3RhdHVzOjIwMCxzdGF0dXNUZXh0OiIifSk7cmV0dXJuIGUuc3RhdHVzPTAsZS50eXBlPSJlcnJvciIsZX07dmFyIGs9WzMwMSwzMDIsMzAzLDMwNywzMDhdLFM9KHgucmVkaXJlY3Q9ZnVuY3Rpb24oZSx0KXtpZigtMT09PWsuaW5kZXhPZih0KSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCBzdGF0dXMgY29kZSIpO3JldHVybiBuZXcgeChudWxsLHtzdGF0dXM6dCxoZWFkZXJzOntsb2NhdGlvbjplfX0pfSxjLkRPTUV4Y2VwdGlvbik7dHJ5e25ldyBTfWNhdGNoKGUpeyhTPWZ1bmN0aW9uKGUsdCl7dGhpcy5tZXNzYWdlPWUsdGhpcy5uYW1lPXQ7dD1FcnJvcihlKTt0aGlzLnN0YWNrPXQuc3RhY2t9KS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShFcnJvci5wcm90b3R5cGUpLFMucHJvdG90eXBlLmNvbnN0cnVjdG9yPVN9ZnVuY3Rpb24gQyhyLGwpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihvLGUpe3ZhciBhPW5ldyB2KHIsbCk7aWYoYS5zaWduYWwmJmEuc2lnbmFsLmFib3J0ZWQpcmV0dXJuIGUobmV3IFMoIkFib3J0ZWQiLCJBYm9ydEVycm9yIikpO3ZhciBuLGk9bmV3IFhNTEh0dHBSZXF1ZXN0O2Z1bmN0aW9uIHQoKXtpLmFib3J0KCl9aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZSxuLHQ9e3N0YXR1c1RleHQ6aS5zdGF0dXNUZXh0LGhlYWRlcnM6KGU9aS5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiIsbj1uZXcgcCxlLnJlcGxhY2UoL1xyP1xuW1x0IF0rL2csIiAiKS5zcGxpdCgiXHIiKS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIDA9PT1lLmluZGV4T2YoIlxuIik/ZS5zdWJzdHIoMSxlLmxlbmd0aCk6ZX0pLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIGU9ZS5zcGxpdCgiOiIpLHQ9ZS5zaGlmdCgpLnRyaW0oKTtpZih0KXtlPWUuam9pbigiOiIpLnRyaW0oKTt0cnl7bi5hcHBlbmQodCxlKX1jYXRjaChlKXtjb25zb2xlLndhcm4oIlJlc3BvbnNlICIrZS5tZXNzYWdlKX19fSksbil9LHI9KGEudXJsLnN0YXJ0c1dpdGgoImZpbGU6Ly8iKSYmKGkuc3RhdHVzPDIwMHx8NTk5PGkuc3RhdHVzKT90LnN0YXR1cz0yMDA6dC5zdGF0dXM9aS5zdGF0dXMsdC51cmw9InJlc3BvbnNlVVJMImluIGk/aS5yZXNwb25zZVVSTDp0LmhlYWRlcnMuZ2V0KCJYLVJlcXVlc3QtVVJMIiksInJlc3BvbnNlImluIGk/aS5yZXNwb25zZTppLnJlc3BvbnNlVGV4dCk7c2V0VGltZW91dChmdW5jdGlvbigpe28obmV3IHgocix0KSl9LDApfSxpLm9uZXJyb3I9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZShuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgZmFpbGVkIikpfSwwKX0saS5vbnRpbWVvdXQ9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZShuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgdGltZWQgb3V0IikpfSwwKX0saS5vbmFib3J0PWZ1bmN0aW9uKCl7c2V0VGltZW91dChmdW5jdGlvbigpe2UobmV3IFMoIkFib3J0ZWQiLCJBYm9ydEVycm9yIikpfSwwKX0saS5vcGVuKGEubWV0aG9kLGZ1bmN0aW9uKHQpe3RyeXtyZXR1cm4iIj09PXQmJmMubG9jYXRpb24uaHJlZj9jLmxvY2F0aW9uLmhyZWY6dH1jYXRjaChlKXtyZXR1cm4gdH19KGEudXJsKSwhMCksImluY2x1ZGUiPT09YS5jcmVkZW50aWFscz9pLndpdGhDcmVkZW50aWFscz0hMDoib21pdCI9PT1hLmNyZWRlbnRpYWxzJiYoaS53aXRoQ3JlZGVudGlhbHM9ITEpLCJyZXNwb25zZVR5cGUiaW4gaSYmKHU/aS5yZXNwb25zZVR5cGU9ImJsb2IiOnMmJihpLnJlc3BvbnNlVHlwZT0iYXJyYXlidWZmZXIiKSksbCYmIm9iamVjdCI9PXR5cGVvZiBsLmhlYWRlcnMmJiEobC5oZWFkZXJzIGluc3RhbmNlb2YgcHx8Yy5IZWFkZXJzJiZsLmhlYWRlcnMgaW5zdGFuY2VvZiBjLkhlYWRlcnMpPyhuPVtdLE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGwuaGVhZGVycykuZm9yRWFjaChmdW5jdGlvbihlKXtuLnB1c2goZihlKSksaS5zZXRSZXF1ZXN0SGVhZGVyKGUsZChsLmhlYWRlcnNbZV0pKX0pLGEuaGVhZGVycy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7LTE9PT1uLmluZGV4T2YodCkmJmkuc2V0UmVxdWVzdEhlYWRlcih0LGUpfSkpOmEuaGVhZGVycy5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7aS5zZXRSZXF1ZXN0SGVhZGVyKHQsZSl9KSxhLnNpZ25hbCYmKGEuc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0Iix0KSxpLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT1pLnJlYWR5U3RhdGUmJmEuc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFib3J0Iix0KX0pLGkuc2VuZCh2b2lkIDA9PT1hLl9ib2R5SW5pdD9udWxsOmEuX2JvZHlJbml0KX0pfUMucG9seWZpbGw9ITAsYy5mZXRjaHx8KGMuZmV0Y2g9QyxjLkhlYWRlcnM9cCxjLlJlcXVlc3Q9dixjLlJlc3BvbnNlPXgpfS5jYWxsKHRoaXMsbigyMikpfSxmdW5jdGlvbihlLHQsbil7dmFyIGY9U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLGQ9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIikscj1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLG89U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxhPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksaT1TeW1ib2wuZm9yKCJyZWFjdC5wcm92aWRlciIpLGw9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGM9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSx1PVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlIikscz1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIikscD1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5IiksbT1TeW1ib2wuaXRlcmF0b3I7dmFyIGg9e2lzTW91bnRlZDpmdW5jdGlvbigpe3JldHVybiExfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVSZXBsYWNlU3RhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbigpe319LGc9T2JqZWN0LmFzc2lnbixiPXt9O2Z1bmN0aW9uIHkoZSx0LG4pe3RoaXMucHJvcHM9ZSx0aGlzLmNvbnRleHQ9dCx0aGlzLnJlZnM9Yix0aGlzLnVwZGF0ZXI9bnx8aH1mdW5jdGlvbiB2KCl7fWZ1bmN0aW9uIHcoZSx0LG4pe3RoaXMucHJvcHM9ZSx0aGlzLmNvbnRleHQ9dCx0aGlzLnJlZnM9Yix0aGlzLnVwZGF0ZXI9bnx8aH15LnByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50PXt9LHkucHJvdG90eXBlLnNldFN0YXRlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPXR5cGVvZiBlJiYiZnVuY3Rpb24iIT10eXBlb2YgZSYmbnVsbCE9ZSl0aHJvdyBFcnJvcigic2V0U3RhdGUoLi4uKTogdGFrZXMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcyB0byB1cGRhdGUgb3IgYSBmdW5jdGlvbiB3aGljaCByZXR1cm5zIGFuIG9iamVjdCBvZiBzdGF0ZSB2YXJpYWJsZXMuIik7dGhpcy51cGRhdGVyLmVucXVldWVTZXRTdGF0ZSh0aGlzLGUsdCwic2V0U3RhdGUiKX0seS5wcm90b3R5cGUuZm9yY2VVcGRhdGU9ZnVuY3Rpb24oZSl7dGhpcy51cGRhdGVyLmVucXVldWVGb3JjZVVwZGF0ZSh0aGlzLGUsImZvcmNlVXBkYXRlIil9LHYucHJvdG90eXBlPXkucHJvdG90eXBlO3ZhciB4PXcucHJvdG90eXBlPW5ldyB2LGs9KHguY29uc3RydWN0b3I9dyxnKHgseS5wcm90b3R5cGUpLHguaXNQdXJlUmVhY3RDb21wb25lbnQ9ITAsQXJyYXkuaXNBcnJheSksUz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LEM9e2N1cnJlbnQ6bnVsbH0sRT17a2V5OiEwLHJlZjohMCxfX3NlbGY6ITAsX19zb3VyY2U6ITB9O2Z1bmN0aW9uIE8oZSx0LG4pe3ZhciByLG89e30sYT1udWxsLGk9bnVsbDtpZihudWxsIT10KWZvcihyIGluIHZvaWQgMCE9PXQucmVmJiYoaT10LnJlZiksdm9pZCAwIT09dC5rZXkmJihhPSIiK3Qua2V5KSx0KVMuY2FsbCh0LHIpJiYhRS5oYXNPd25Qcm9wZXJ0eShyKSYmKG9bcl09dFtyXSk7dmFyIGw9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1sKW8uY2hpbGRyZW49bjtlbHNlIGlmKDE8bCl7Zm9yKHZhciBjPUFycmF5KGwpLHU9MDt1PGw7dSsrKWNbdV09YXJndW1lbnRzW3UrMl07by5jaGlsZHJlbj1jfWlmKGUmJmUuZGVmYXVsdFByb3BzKWZvcihyIGluIGw9ZS5kZWZhdWx0UHJvcHMpdm9pZCAwPT09b1tyXSYmKG9bcl09bFtyXSk7cmV0dXJueyQkdHlwZW9mOmYsdHlwZTplLGtleTphLHJlZjppLHByb3BzOm8sX293bmVyOkMuY3VycmVudH19ZnVuY3Rpb24gaihlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09Zn12YXIgQT0vXC8rL2c7ZnVuY3Rpb24gUChlLHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJm51bGwhPWUua2V5PyhlPSIiK2Uua2V5LG49eyI9IjoiPTAiLCI6IjoiPTIifSwiJCIrZS5yZXBsYWNlKC9bPTpdL2csZnVuY3Rpb24oZSl7cmV0dXJuIG5bZV19KSk6dC50b1N0cmluZygzNik7dmFyIG59ZnVuY3Rpb24gSShlLHQsbixyLG8pe3ZhciBhLGksbD0hMTtpZihudWxsPT09KGU9InVuZGVmaW5lZCIhPT0odT10eXBlb2YgZSkmJiJib29sZWFuIiE9PXU/ZTpudWxsKSlsPSEwO2Vsc2Ugc3dpdGNoKHUpe2Nhc2Uic3RyaW5nIjpjYXNlIm51bWJlciI6bD0hMDticmVhaztjYXNlIm9iamVjdCI6c3dpdGNoKGUuJCR0eXBlb2Ype2Nhc2UgZjpjYXNlIGQ6bD0hMH19aWYobClyZXR1cm4gbz1vKGw9ZSksZT0iIj09PXI/Ii4iK1AobCwwKTpyLGsobyk/KG49IiIsSShvLHQsbj1udWxsIT1lP2UucmVwbGFjZShBLCIkJi8iKSsiLyI6biwiIixmdW5jdGlvbihlKXtyZXR1cm4gZX0pKTpudWxsIT1vJiYoaihvKSYmKGk9bisoIShhPW8pLmtleXx8bCYmbC5rZXk9PT1vLmtleT8iIjooIiIrby5rZXkpLnJlcGxhY2UoQSwiJCYvIikrIi8iKStlLG89eyQkdHlwZW9mOmYsdHlwZTphLnR5cGUsa2V5OmkscmVmOmEucmVmLHByb3BzOmEucHJvcHMsX293bmVyOmEuX293bmVyfSksdC5wdXNoKG8pKSwxO2lmKGw9MCxyPSIiPT09cj8iLiI6cisiOiIsayhlKSlmb3IodmFyIGM9MDtjPGUubGVuZ3RoO2MrKyl7dmFyIHUscz1yK1AodT1lW2NdLGMpO2wrPUkodSx0LG4scyxvKX1lbHNlIGlmKCJmdW5jdGlvbiI9PXR5cGVvZihzPW51bGwhPT0oaT1lKSYmIm9iamVjdCI9PXR5cGVvZiBpJiYiZnVuY3Rpb24iPT10eXBlb2YoaT1tJiZpW21dfHxpWyJAQGl0ZXJhdG9yIl0pP2k6bnVsbCkpZm9yKGU9cy5jYWxsKGUpLGM9MDshKHU9ZS5uZXh0KCkpLmRvbmU7KWwrPUkodT11LnZhbHVlLHQsbixzPXIrUCh1LGMrKyksbyk7ZWxzZSBpZigib2JqZWN0Ij09PXUpdGhyb3cgdD1TdHJpbmcoZSksRXJyb3IoIk9iamVjdHMgYXJlIG5vdCB2YWxpZCBhcyBhIFJlYWN0IGNoaWxkIChmb3VuZDogIisoIltvYmplY3QgT2JqZWN0XSI9PT10PyJvYmplY3Qgd2l0aCBrZXlzIHsiK09iamVjdC5rZXlzKGUpLmpvaW4oIiwgIikrIn0iOnQpKyIpLiBJZiB5b3UgbWVhbnQgdG8gcmVuZGVyIGEgY29sbGVjdGlvbiBvZiBjaGlsZHJlbiwgdXNlIGFuIGFycmF5IGluc3RlYWQuIik7cmV0dXJuIGx9ZnVuY3Rpb24gXyhlLHQsbil7dmFyIHI7cmV0dXJuIG51bGw9PWV8fChyPTAsSShlLGU9W10sIiIsIiIsZnVuY3Rpb24oZSl7cmV0dXJuIHQuY2FsbChuLGUscisrKX0pKSxlfWZ1bmN0aW9uIHoodCl7dmFyIGU7aWYoLTE9PT10Ll9zdGF0dXMmJigoZT0oZT10Ll9yZXN1bHQpKCkpLnRoZW4oZnVuY3Rpb24oZSl7MCE9PXQuX3N0YXR1cyYmLTEhPT10Ll9zdGF0dXN8fCh0Ll9zdGF0dXM9MSx0Ll9yZXN1bHQ9ZSl9LGZ1bmN0aW9uKGUpezAhPT10Ll9zdGF0dXMmJi0xIT09dC5fc3RhdHVzfHwodC5fc3RhdHVzPTIsdC5fcmVzdWx0PWUpfSksLTE9PT10Ll9zdGF0dXMpJiYodC5fc3RhdHVzPTAsdC5fcmVzdWx0PWUpLDE9PT10Ll9zdGF0dXMpcmV0dXJuIHQuX3Jlc3VsdC5kZWZhdWx0O3Rocm93IHQuX3Jlc3VsdH12YXIgVD17Y3VycmVudDpudWxsfSxMPXt0cmFuc2l0aW9uOm51bGx9LHg9e1JlYWN0Q3VycmVudERpc3BhdGNoZXI6VCxSZWFjdEN1cnJlbnRCYXRjaENvbmZpZzpMLFJlYWN0Q3VycmVudE93bmVyOkN9O3QuQ2hpbGRyZW49e21hcDpfLGZvckVhY2g6ZnVuY3Rpb24oZSx0LG4pe18oZSxmdW5jdGlvbigpe3QuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxuKX0sY291bnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9MDtyZXR1cm4gXyhlLGZ1bmN0aW9uKCl7dCsrfSksdH0sdG9BcnJheTpmdW5jdGlvbihlKXtyZXR1cm4gXyhlLGZ1bmN0aW9uKGUpe3JldHVybiBlfSl8fFtdfSxvbmx5OmZ1bmN0aW9uKGUpe2lmKGooZSkpcmV0dXJuIGU7dGhyb3cgRXJyb3IoIlJlYWN0LkNoaWxkcmVuLm9ubHkgZXhwZWN0ZWQgdG8gcmVjZWl2ZSBhIHNpbmdsZSBSZWFjdCBlbGVtZW50IGNoaWxkLiIpfX0sdC5Db21wb25lbnQ9eSx0LkZyYWdtZW50PXIsdC5Qcm9maWxlcj1hLHQuUHVyZUNvbXBvbmVudD13LHQuU3RyaWN0TW9kZT1vLHQuU3VzcGVuc2U9dSx0Ll9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPXgsdC5jbG9uZUVsZW1lbnQ9ZnVuY3Rpb24oZSx0LG4pe2lmKG51bGw9PWUpdGhyb3cgRXJyb3IoIlJlYWN0LmNsb25lRWxlbWVudCguLi4pOiBUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkICIrZSsiLiIpO3ZhciByPWcoe30sZS5wcm9wcyksbz1lLmtleSxhPWUucmVmLGk9ZS5fb3duZXI7aWYobnVsbCE9dClmb3IobCBpbiB2b2lkIDAhPT10LnJlZiYmKGE9dC5yZWYsaT1DLmN1cnJlbnQpLHZvaWQgMCE9PXQua2V5JiYobz0iIit0LmtleSksZS50eXBlJiZlLnR5cGUuZGVmYXVsdFByb3BzJiYoYz1lLnR5cGUuZGVmYXVsdFByb3BzKSx0KVMuY2FsbCh0LGwpJiYhRS5oYXNPd25Qcm9wZXJ0eShsKSYmKHJbbF09KHZvaWQgMD09PXRbbF0mJnZvaWQgMCE9PWM/Yzp0KVtsXSk7dmFyIGw9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1sKXIuY2hpbGRyZW49bjtlbHNlIGlmKDE8bCl7Zm9yKHZhciBjPUFycmF5KGwpLHU9MDt1PGw7dSsrKWNbdV09YXJndW1lbnRzW3UrMl07ci5jaGlsZHJlbj1jfXJldHVybnskJHR5cGVvZjpmLHR5cGU6ZS50eXBlLGtleTpvLHJlZjphLHByb3BzOnIsX293bmVyOml9fSx0LmNyZWF0ZUNvbnRleHQ9ZnVuY3Rpb24oZSl7cmV0dXJuKGU9eyQkdHlwZW9mOmwsX2N1cnJlbnRWYWx1ZTplLF9jdXJyZW50VmFsdWUyOmUsX3RocmVhZENvdW50OjAsUHJvdmlkZXI6bnVsbCxDb25zdW1lcjpudWxsLF9kZWZhdWx0VmFsdWU6bnVsbCxfZ2xvYmFsTmFtZTpudWxsfSkuUHJvdmlkZXI9eyQkdHlwZW9mOmksX2NvbnRleHQ6ZX0sZS5Db25zdW1lcj1lfSx0LmNyZWF0ZUVsZW1lbnQ9Tyx0LmNyZWF0ZUZhY3Rvcnk9ZnVuY3Rpb24oZSl7dmFyIHQ9Ty5iaW5kKG51bGwsZSk7cmV0dXJuIHQudHlwZT1lLHR9LHQuY3JlYXRlUmVmPWZ1bmN0aW9uKCl7cmV0dXJue2N1cnJlbnQ6bnVsbH19LHQuZm9yd2FyZFJlZj1mdW5jdGlvbihlKXtyZXR1cm57JCR0eXBlb2Y6YyxyZW5kZXI6ZX19LHQuaXNWYWxpZEVsZW1lbnQ9aix0Lmxhenk9ZnVuY3Rpb24oZSl7cmV0dXJueyQkdHlwZW9mOnAsX3BheWxvYWQ6e19zdGF0dXM6LTEsX3Jlc3VsdDplfSxfaW5pdDp6fX0sdC5tZW1vPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOnMsdHlwZTplLGNvbXBhcmU6dm9pZCAwPT09dD9udWxsOnR9fSx0LnN0YXJ0VHJhbnNpdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1MLnRyYW5zaXRpb247TC50cmFuc2l0aW9uPXt9O3RyeXtlKCl9ZmluYWxseXtMLnRyYW5zaXRpb249dH19LHQudW5zdGFibGVfYWN0PWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoImFjdCguLi4pIGlzIG5vdCBzdXBwb3J0ZWQgaW4gcHJvZHVjdGlvbiBidWlsZHMgb2YgUmVhY3QuIil9LHQudXNlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZUNhbGxiYWNrKGUsdCl9LHQudXNlQ29udGV4dD1mdW5jdGlvbihlKXtyZXR1cm4gVC5jdXJyZW50LnVzZUNvbnRleHQoZSl9LHQudXNlRGVidWdWYWx1ZT1mdW5jdGlvbigpe30sdC51c2VEZWZlcnJlZFZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiBULmN1cnJlbnQudXNlRGVmZXJyZWRWYWx1ZShlKX0sdC51c2VFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZUVmZmVjdChlLHQpfSx0LnVzZUlkPWZ1bmN0aW9uKCl7cmV0dXJuIFQuY3VycmVudC51c2VJZCgpfSx0LnVzZUltcGVyYXRpdmVIYW5kbGU9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBULmN1cnJlbnQudXNlSW1wZXJhdGl2ZUhhbmRsZShlLHQsbil9LHQudXNlSW5zZXJ0aW9uRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIFQuY3VycmVudC51c2VJbnNlcnRpb25FZmZlY3QoZSx0KX0sdC51c2VMYXlvdXRFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZUxheW91dEVmZmVjdChlLHQpfSx0LnVzZU1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gVC5jdXJyZW50LnVzZU1lbW8oZSx0KX0sdC51c2VSZWR1Y2VyPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVC5jdXJyZW50LnVzZVJlZHVjZXIoZSx0LG4pfSx0LnVzZVJlZj1mdW5jdGlvbihlKXtyZXR1cm4gVC5jdXJyZW50LnVzZVJlZihlKX0sdC51c2VTdGF0ZT1mdW5jdGlvbihlKXtyZXR1cm4gVC5jdXJyZW50LnVzZVN0YXRlKGUpfSx0LnVzZVN5bmNFeHRlcm5hbFN0b3JlPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gVC5jdXJyZW50LnVzZVN5bmNFeHRlcm5hbFN0b3JlKGUsdCxuKX0sdC51c2VUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7cmV0dXJuIFQuY3VycmVudC51c2VUcmFuc2l0aW9uKCl9LHQudmVyc2lvbj0iMTguMi4wIn0sZnVuY3Rpb24oZSx0LG4peyFmdW5jdGlvbiBlKCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRShlKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKGUpfX0oKSxlLmV4cG9ydHM9bigxNzApfSxmdW5jdGlvbihhLGMsUil7dmFyIE49UigwKSxCPVIoMTcxKTtmdW5jdGlvbiBEKGUpe2Zvcih2YXIgdD0iaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2Vycm9yLWRlY29kZXIuaHRtbD9pbnZhcmlhbnQ9IitlLG49MTtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKXQrPSImYXJnc1tdPSIrZW5jb2RlVVJJQ29tcG9uZW50KGFyZ3VtZW50c1tuXSk7cmV0dXJuIk1pbmlmaWVkIFJlYWN0IGVycm9yICMiK2UrIjsgdmlzaXQgIit0KyIgZm9yIHRoZSBmdWxsIG1lc3NhZ2Ugb3IgdXNlIHRoZSBub24tbWluaWZpZWQgZGV2IGVudmlyb25tZW50IGZvciBmdWxsIGVycm9ycyBhbmQgYWRkaXRpb25hbCBoZWxwZnVsIHdhcm5pbmdzLiJ9dmFyIEY9bmV3IFNldCxIPXt9O2Z1bmN0aW9uIFYoZSx0KXskKGUsdCksJChlKyJDYXB0dXJlIix0KX1mdW5jdGlvbiAkKGUsdCl7Zm9yKEhbZV09dCxlPTA7ZTx0Lmxlbmd0aDtlKyspRi5hZGQodFtlXSl9dmFyIFI9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8dm9pZCAwPT09d2luZG93LmRvY3VtZW50fHx2b2lkIDA9PT13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCksVz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LEc9L15bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRF1bOkEtWl9hLXpcdTAwQzAtXHUwMEQ2XHUwMEQ4LVx1MDBGNlx1MDBGOC1cdTAyRkZcdTAzNzAtXHUwMzdEXHUwMzdGLVx1MUZGRlx1MjAwQy1cdTIwMERcdTIwNzAtXHUyMThGXHUyQzAwLVx1MkZFRlx1MzAwMS1cdUQ3RkZcdUY5MDAtXHVGRENGXHVGREYwLVx1RkZGRFwtLjAtOVx1MDBCN1x1MDMwMC1cdTAzNkZcdTIwM0YtXHUyMDQwXSokLyxxPXt9LFo9e307ZnVuY3Rpb24gWChlLHQsbixyKXtpZihudWxsPT10fHxmdW5jdGlvbihlLHQsbixyKXtpZihudWxsPT09bnx8MCE9PW4udHlwZSlzd2l0Y2godHlwZW9mIHQpe2Nhc2UiZnVuY3Rpb24iOmNhc2Uic3ltYm9sIjpyZXR1cm4gMTtjYXNlImJvb2xlYW4iOnJldHVybiByP3ZvaWQgMDpudWxsIT09bj8hbi5hY2NlcHRzQm9vbGVhbnM6ImRhdGEtIiE9PShlPWUudG9Mb3dlckNhc2UoKS5zbGljZSgwLDUpKSYmImFyaWEtIiE9PWU7ZGVmYXVsdDpyZXR1cm59fShlLHQsbixyKSlyZXR1cm4gMTtpZighciYmbnVsbCE9PW4pc3dpdGNoKG4udHlwZSl7Y2FzZSAzOnJldHVybiF0O2Nhc2UgNDpyZXR1cm4hMT09PXQ7Y2FzZSA1OnJldHVybiBpc05hTih0KTtjYXNlIDY6cmV0dXJuIGlzTmFOKHQpfHx0PDF9fWZ1bmN0aW9uIG4oZSx0LG4scixvLGEsaSl7dGhpcy5hY2NlcHRzQm9vbGVhbnM9Mj09PXR8fDM9PT10fHw0PT09dCx0aGlzLmF0dHJpYnV0ZU5hbWU9cix0aGlzLmF0dHJpYnV0ZU5hbWVzcGFjZT1vLHRoaXMubXVzdFVzZVByb3BlcnR5PW4sdGhpcy5wcm9wZXJ0eU5hbWU9ZSx0aGlzLnR5cGU9dCx0aGlzLnNhbml0aXplVVJMPWEsdGhpcy5yZW1vdmVFbXB0eVN0cmluZz1pfXZhciBpPXt9LFk9KCJjaGlsZHJlbiBkYW5nZXJvdXNseVNldElubmVySFRNTCBkZWZhdWx0VmFsdWUgZGVmYXVsdENoZWNrZWQgaW5uZXJIVE1MIHN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyBzdXBwcmVzc0h5ZHJhdGlvbldhcm5pbmcgc3R5bGUiLnNwbGl0KCIgIikuZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsMCwhMSxlLG51bGwsITEsITEpfSksW1siYWNjZXB0Q2hhcnNldCIsImFjY2VwdC1jaGFyc2V0Il0sWyJjbGFzc05hbWUiLCJjbGFzcyJdLFsiaHRtbEZvciIsImZvciJdLFsiaHR0cEVxdWl2IiwiaHR0cC1lcXVpdiJdXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWVbMF07aVt0XT1uZXcgbih0LDEsITEsZVsxXSxudWxsLCExLCExKX0pLFsiY29udGVudEVkaXRhYmxlIiwiZHJhZ2dhYmxlIiwic3BlbGxDaGVjayIsInZhbHVlIl0uZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsMiwhMSxlLnRvTG93ZXJDYXNlKCksbnVsbCwhMSwhMSl9KSxbImF1dG9SZXZlcnNlIiwiZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZCIsImZvY3VzYWJsZSIsInByZXNlcnZlQWxwaGEiXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSwyLCExLGUsbnVsbCwhMSwhMSl9KSwiYWxsb3dGdWxsU2NyZWVuIGFzeW5jIGF1dG9Gb2N1cyBhdXRvUGxheSBjb250cm9scyBkZWZhdWx0IGRlZmVyIGRpc2FibGVkIGRpc2FibGVQaWN0dXJlSW5QaWN0dXJlIGRpc2FibGVSZW1vdGVQbGF5YmFjayBmb3JtTm9WYWxpZGF0ZSBoaWRkZW4gbG9vcCBub01vZHVsZSBub1ZhbGlkYXRlIG9wZW4gcGxheXNJbmxpbmUgcmVhZE9ubHkgcmVxdWlyZWQgcmV2ZXJzZWQgc2NvcGVkIHNlYW1sZXNzIGl0ZW1TY29wZSIuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSwzLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pLFsiY2hlY2tlZCIsIm11bHRpcGxlIiwibXV0ZWQiLCJzZWxlY3RlZCJdLmZvckVhY2goZnVuY3Rpb24oZSl7aVtlXT1uZXcgbihlLDMsITAsZSxudWxsLCExLCExKX0pLFsiY2FwdHVyZSIsImRvd25sb2FkIl0uZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsNCwhMSxlLG51bGwsITEsITEpfSksWyJjb2xzIiwicm93cyIsInNpemUiLCJzcGFuIl0uZm9yRWFjaChmdW5jdGlvbihlKXtpW2VdPW5ldyBuKGUsNiwhMSxlLG51bGwsITEsITEpfSksWyJyb3dTcGFuIiwic3RhcnQiXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSw1LCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pLC9bXC06XShbYS16XSkvZyk7ZnVuY3Rpb24gUShlKXtyZXR1cm4gZVsxXS50b1VwcGVyQ2FzZSgpfWZ1bmN0aW9uIEsoZSx0LG4scil7dmFyIG8sYT1pLmhhc093blByb3BlcnR5KHQpP2lbdF06bnVsbDsobnVsbCE9PWE/MCE9PWEudHlwZTpyfHwhKDI8dC5sZW5ndGgpfHwibyIhPT10WzBdJiYiTyIhPT10WzBdfHwibiIhPT10WzFdJiYiTiIhPT10WzFdKSYmKFgodCxuLGEscikmJihuPW51bGwpLHJ8fG51bGw9PT1hPyhvPXQsKFcuY2FsbChaLG8pfHwhVy5jYWxsKHEsbykmJihHLnRlc3Qobyk/WltvXT0hMDp2b2lkKHFbb109ITApKSkmJihudWxsPT09bj9lLnJlbW92ZUF0dHJpYnV0ZSh0KTplLnNldEF0dHJpYnV0ZSh0LCIiK24pKSk6YS5tdXN0VXNlUHJvcGVydHk/ZVthLnByb3BlcnR5TmFtZV09bnVsbD09PW4/MyE9PWEudHlwZSYmIiI6bjoodD1hLmF0dHJpYnV0ZU5hbWUscj1hLmF0dHJpYnV0ZU5hbWVzcGFjZSxudWxsPT09bj9lLnJlbW92ZUF0dHJpYnV0ZSh0KToobj0zPT09KGE9YS50eXBlKXx8ND09PWEmJiEwPT09bj8iIjoiIituLHI/ZS5zZXRBdHRyaWJ1dGVOUyhyLHQsbik6ZS5zZXRBdHRyaWJ1dGUodCxuKSkpKX0iYWNjZW50LWhlaWdodCBhbGlnbm1lbnQtYmFzZWxpbmUgYXJhYmljLWZvcm0gYmFzZWxpbmUtc2hpZnQgY2FwLWhlaWdodCBjbGlwLXBhdGggY2xpcC1ydWxlIGNvbG9yLWludGVycG9sYXRpb24gY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzIGNvbG9yLXByb2ZpbGUgY29sb3ItcmVuZGVyaW5nIGRvbWluYW50LWJhc2VsaW5lIGVuYWJsZS1iYWNrZ3JvdW5kIGZpbGwtb3BhY2l0eSBmaWxsLXJ1bGUgZmxvb2QtY29sb3IgZmxvb2Qtb3BhY2l0eSBmb250LWZhbWlseSBmb250LXNpemUgZm9udC1zaXplLWFkanVzdCBmb250LXN0cmV0Y2ggZm9udC1zdHlsZSBmb250LXZhcmlhbnQgZm9udC13ZWlnaHQgZ2x5cGgtbmFtZSBnbHlwaC1vcmllbnRhdGlvbi1ob3Jpem9udGFsIGdseXBoLW9yaWVudGF0aW9uLXZlcnRpY2FsIGhvcml6LWFkdi14IGhvcml6LW9yaWdpbi14IGltYWdlLXJlbmRlcmluZyBsZXR0ZXItc3BhY2luZyBsaWdodGluZy1jb2xvciBtYXJrZXItZW5kIG1hcmtlci1taWQgbWFya2VyLXN0YXJ0IG92ZXJsaW5lLXBvc2l0aW9uIG92ZXJsaW5lLXRoaWNrbmVzcyBwYWludC1vcmRlciBwYW5vc2UtMSBwb2ludGVyLWV2ZW50cyByZW5kZXJpbmctaW50ZW50IHNoYXBlLXJlbmRlcmluZyBzdG9wLWNvbG9yIHN0b3Atb3BhY2l0eSBzdHJpa2V0aHJvdWdoLXBvc2l0aW9uIHN0cmlrZXRocm91Z2gtdGhpY2tuZXNzIHN0cm9rZS1kYXNoYXJyYXkgc3Ryb2tlLWRhc2hvZmZzZXQgc3Ryb2tlLWxpbmVjYXAgc3Ryb2tlLWxpbmVqb2luIHN0cm9rZS1taXRlcmxpbWl0IHN0cm9rZS1vcGFjaXR5IHN0cm9rZS13aWR0aCB0ZXh0LWFuY2hvciB0ZXh0LWRlY29yYXRpb24gdGV4dC1yZW5kZXJpbmcgdW5kZXJsaW5lLXBvc2l0aW9uIHVuZGVybGluZS10aGlja25lc3MgdW5pY29kZS1iaWRpIHVuaWNvZGUtcmFuZ2UgdW5pdHMtcGVyLWVtIHYtYWxwaGFiZXRpYyB2LWhhbmdpbmcgdi1pZGVvZ3JhcGhpYyB2LW1hdGhlbWF0aWNhbCB2ZWN0b3ItZWZmZWN0IHZlcnQtYWR2LXkgdmVydC1vcmlnaW4teCB2ZXJ0LW9yaWdpbi15IHdvcmQtc3BhY2luZyB3cml0aW5nLW1vZGUgeG1sbnM6eGxpbmsgeC1oZWlnaHQiLnNwbGl0KCIgIikuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1lLnJlcGxhY2UoWSxRKTtpW3RdPW5ldyBuKHQsMSwhMSxlLG51bGwsITEsITEpfSksInhsaW5rOmFjdHVhdGUgeGxpbms6YXJjcm9sZSB4bGluazpyb2xlIHhsaW5rOnNob3cgeGxpbms6dGl0bGUgeGxpbms6dHlwZSIuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZShZLFEpO2lbdF09bmV3IG4odCwxLCExLGUsImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCExLCExKX0pLFsieG1sOmJhc2UiLCJ4bWw6bGFuZyIsInhtbDpzcGFjZSJdLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKFksUSk7aVt0XT1uZXcgbih0LDEsITEsZSwiaHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlIiwhMSwhMSl9KSxbInRhYkluZGV4IiwiY3Jvc3NPcmlnaW4iXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2lbZV09bmV3IG4oZSwxLCExLGUudG9Mb3dlckNhc2UoKSxudWxsLCExLCExKX0pLGkueGxpbmtIcmVmPW5ldyBuKCJ4bGlua0hyZWYiLDEsITEsInhsaW5rOmhyZWYiLCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwhMCwhMSksWyJzcmMiLCJocmVmIiwiYWN0aW9uIiwiZm9ybUFjdGlvbiJdLmZvckVhY2goZnVuY3Rpb24oZSl7aVtlXT1uZXcgbihlLDEsITEsZS50b0xvd2VyQ2FzZSgpLG51bGwsITAsITApfSk7dmFyIEo9Ti5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCxlZT1TeW1ib2wuZm9yKCJyZWFjdC5lbGVtZW50IiksdGU9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksbmU9U3ltYm9sLmZvcigicmVhY3QuZnJhZ21lbnQiKSxyZT1TeW1ib2wuZm9yKCJyZWFjdC5zdHJpY3RfbW9kZSIpLG9lPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksYWU9U3ltYm9sLmZvcigicmVhY3QucHJvdmlkZXIiKSxpZT1TeW1ib2wuZm9yKCJyZWFjdC5jb250ZXh0IiksbGU9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSxjZT1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLHVlPVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlX2xpc3QiKSxzZT1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIiksZmU9U3ltYm9sLmZvcigicmVhY3QubGF6eSIpLGRlPShTeW1ib2wuZm9yKCJyZWFjdC5zY29wZSIpLFN5bWJvbC5mb3IoInJlYWN0LmRlYnVnX3RyYWNlX21vZGUiKSxTeW1ib2wuZm9yKCJyZWFjdC5vZmZzY3JlZW4iKSkscGU9KFN5bWJvbC5mb3IoInJlYWN0LmxlZ2FjeV9oaWRkZW4iKSxTeW1ib2wuZm9yKCJyZWFjdC5jYWNoZSIpLFN5bWJvbC5mb3IoInJlYWN0LnRyYWNpbmdfbWFya2VyIiksU3ltYm9sLml0ZXJhdG9yKTtmdW5jdGlvbiBtZShlKXtyZXR1cm4gbnVsbCE9PWUmJiJvYmplY3QiPT10eXBlb2YgZSYmImZ1bmN0aW9uIj09dHlwZW9mKGU9cGUmJmVbcGVdfHxlWyJAQGl0ZXJhdG9yIl0pP2U6bnVsbH12YXIgaGUsZz1PYmplY3QuYXNzaWduO2Z1bmN0aW9uIGdlKGUpe2lmKHZvaWQgMD09PWhlKXRyeXt0aHJvdyBFcnJvcigpfWNhdGNoKGUpe3ZhciB0PWUuc3RhY2sudHJpbSgpLm1hdGNoKC9cbiggKihhdCApPykvKTtoZT10JiZ0WzFdfHwiIn1yZXR1cm4iXG4iK2hlK2V9dmFyIGJlPSExO2Z1bmN0aW9uIHllKHQsZSl7aWYoIXR8fGJlKXJldHVybiIiO2JlPSEwO3ZhciBuPUVycm9yLnByZXBhcmVTdGFja1RyYWNlO0Vycm9yLnByZXBhcmVTdGFja1RyYWNlPXZvaWQgMDt0cnl7aWYoZSlpZihlPWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KGUucHJvdG90eXBlLCJwcm9wcyIse3NldDpmdW5jdGlvbigpe3Rocm93IEVycm9yKCl9fSksIm9iamVjdCI9PXR5cGVvZiBSZWZsZWN0JiZSZWZsZWN0LmNvbnN0cnVjdCl7dHJ5e1JlZmxlY3QuY29uc3RydWN0KGUsW10pfWNhdGNoKGUpe3ZhciByPWV9UmVmbGVjdC5jb25zdHJ1Y3QodCxbXSxlKX1lbHNle3RyeXtlLmNhbGwoKX1jYXRjaChlKXtyPWV9dC5jYWxsKGUucHJvdG90eXBlKX1lbHNle3RyeXt0aHJvdyBFcnJvcigpfWNhdGNoKGUpe3I9ZX10KCl9fWNhdGNoKGUpe2lmKGUmJnImJiJzdHJpbmciPT10eXBlb2YgZS5zdGFjayl7Zm9yKHZhciBvLGE9ZS5zdGFjay5zcGxpdCgiXG4iKSxpPXIuc3RhY2suc3BsaXQoIlxuIiksbD1hLmxlbmd0aC0xLGM9aS5sZW5ndGgtMTsxPD1sJiYwPD1jJiZhW2xdIT09aVtjXTspYy0tO2Zvcig7MTw9bCYmMDw9YztsLS0sYy0tKWlmKGFbbF0hPT1pW2NdKXtpZigxIT09bHx8MSE9PWMpZG97aWYobC0tLC0tYzwwfHxhW2xdIT09aVtjXSlyZXR1cm4gbz0iXG4iK2FbbF0ucmVwbGFjZSgiIGF0IG5ldyAiLCIgYXQgIiksbz10LmRpc3BsYXlOYW1lJiZvLmluY2x1ZGVzKCI8YW5vbnltb3VzPiIpP28ucmVwbGFjZSgiPGFub255bW91cz4iLHQuZGlzcGxheU5hbWUpOm99d2hpbGUoMTw9bCYmMDw9Yyk7YnJlYWt9fX1maW5hbGx5e2JlPSExLEVycm9yLnByZXBhcmVTdGFja1RyYWNlPW59cmV0dXJuKHQ9dD90LmRpc3BsYXlOYW1lfHx0Lm5hbWU6IiIpP2dlKHQpOiIifWZ1bmN0aW9uIHZlKGUpe3ZhciB0PWUudHlwZTtzd2l0Y2goZS50YWcpe2Nhc2UgMjQ6cmV0dXJuIkNhY2hlIjtjYXNlIDk6cmV0dXJuKHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSAxMDpyZXR1cm4odC5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIDE4OnJldHVybiJEZWh5ZHJhdGVkRnJhZ21lbnQiO2Nhc2UgMTE6cmV0dXJuIGU9KGU9dC5yZW5kZXIpLmRpc3BsYXlOYW1lfHxlLm5hbWV8fCIiLHQuZGlzcGxheU5hbWV8fCgiIiE9PWU/IkZvcndhcmRSZWYoIitlKyIpIjoiRm9yd2FyZFJlZiIpO2Nhc2UgNzpyZXR1cm4iRnJhZ21lbnQiO2Nhc2UgNTpyZXR1cm4gdDtjYXNlIDQ6cmV0dXJuIlBvcnRhbCI7Y2FzZSAzOnJldHVybiJSb290IjtjYXNlIDY6cmV0dXJuIlRleHQiO2Nhc2UgMTY6cmV0dXJuIGZ1bmN0aW9uIGUodCl7aWYobnVsbCE9dCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpcmV0dXJuIHQuZGlzcGxheU5hbWV8fHQubmFtZXx8bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIHQpcmV0dXJuIHQ7c3dpdGNoKHQpe2Nhc2UgbmU6cmV0dXJuIkZyYWdtZW50IjtjYXNlIHRlOnJldHVybiJQb3J0YWwiO2Nhc2Ugb2U6cmV0dXJuIlByb2ZpbGVyIjtjYXNlIHJlOnJldHVybiJTdHJpY3RNb2RlIjtjYXNlIGNlOnJldHVybiJTdXNwZW5zZSI7Y2FzZSB1ZTpyZXR1cm4iU3VzcGVuc2VMaXN0In1pZigib2JqZWN0Ij09dHlwZW9mIHQpc3dpdGNoKHQuJCR0eXBlb2Ype2Nhc2UgaWU6cmV0dXJuKHQuZGlzcGxheU5hbWV8fCJDb250ZXh0IikrIi5Db25zdW1lciI7Y2FzZSBhZTpyZXR1cm4odC5fY29udGV4dC5kaXNwbGF5TmFtZXx8IkNvbnRleHQiKSsiLlByb3ZpZGVyIjtjYXNlIGxlOnZhciBuPXQucmVuZGVyO3JldHVybiB0PSh0PXQuZGlzcGxheU5hbWUpfHwoIiIhPT0odD1uLmRpc3BsYXlOYW1lfHxuLm5hbWV8fCIiKT8iRm9yd2FyZFJlZigiK3QrIikiOiJGb3J3YXJkUmVmIik7Y2FzZSBzZTpyZXR1cm4gbnVsbCE9PShuPXQuZGlzcGxheU5hbWV8fG51bGwpP246ZSh0LnR5cGUpfHwiTWVtbyI7Y2FzZSBmZTpuPXQuX3BheWxvYWQsdD10Ll9pbml0O3RyeXtyZXR1cm4gZSh0KG4pKX1jYXRjaChlKXt9fX1yZXR1cm4gbnVsbH0odCk7Y2FzZSA4OnJldHVybiB0PT09cmU/IlN0cmljdE1vZGUiOiJNb2RlIjtjYXNlIDIyOnJldHVybiJPZmZzY3JlZW4iO2Nhc2UgMTI6cmV0dXJuIlByb2ZpbGVyIjtjYXNlIDIxOnJldHVybiJTY29wZSI7Y2FzZSAxMzpyZXR1cm4iU3VzcGVuc2UiO2Nhc2UgMTk6cmV0dXJuIlN1c3BlbnNlTGlzdCI7Y2FzZSAyNTpyZXR1cm4iVHJhY2luZ01hcmtlciI7Y2FzZSAxOmNhc2UgMDpjYXNlIDE3OmNhc2UgMjpjYXNlIDE0OmNhc2UgMTU6aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQpcmV0dXJuIHQuZGlzcGxheU5hbWV8fHQubmFtZXx8bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIHQpcmV0dXJuIHR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gd2UoZSl7c3dpdGNoKHR5cGVvZiBlKXtjYXNlImJvb2xlYW4iOmNhc2UibnVtYmVyIjpjYXNlInN0cmluZyI6Y2FzZSJ1bmRlZmluZWQiOmNhc2Uib2JqZWN0IjpyZXR1cm4gZTtkZWZhdWx0OnJldHVybiIifX1mdW5jdGlvbiB4ZShlKXt2YXIgdD1lLnR5cGU7cmV0dXJuKGU9ZS5ub2RlTmFtZSkmJiJpbnB1dCI9PT1lLnRvTG93ZXJDYXNlKCkmJigiY2hlY2tib3giPT09dHx8InJhZGlvIj09PXQpfWZ1bmN0aW9uIGtlKGUpe2UuX3ZhbHVlVHJhY2tlcnx8KGUuX3ZhbHVlVHJhY2tlcj1mdW5jdGlvbihlKXt2YXIgdCxuLHI9eGUoZSk/ImNoZWNrZWQiOiJ2YWx1ZSIsbz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUuY29uc3RydWN0b3IucHJvdG90eXBlLHIpLGE9IiIrZVtyXTtpZighZS5oYXNPd25Qcm9wZXJ0eShyKSYmdm9pZCAwIT09byYmImZ1bmN0aW9uIj09dHlwZW9mIG8uZ2V0JiYiZnVuY3Rpb24iPT10eXBlb2Ygby5zZXQpcmV0dXJuIHQ9by5nZXQsbj1vLnNldCxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHQuY2FsbCh0aGlzKX0sc2V0OmZ1bmN0aW9uKGUpe2E9IiIrZSxuLmNhbGwodGhpcyxlKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLHtlbnVtZXJhYmxlOm8uZW51bWVyYWJsZX0pLHtnZXRWYWx1ZTpmdW5jdGlvbigpe3JldHVybiBhfSxzZXRWYWx1ZTpmdW5jdGlvbihlKXthPSIiK2V9LHN0b3BUcmFja2luZzpmdW5jdGlvbigpe2UuX3ZhbHVlVHJhY2tlcj1udWxsLGRlbGV0ZSBlW3JdfX19KGUpKX1mdW5jdGlvbiBTZShlKXt2YXIgdCxuLHI7aWYoZSlyZXR1cm4odD1lLl92YWx1ZVRyYWNrZXIpPyhuPXQuZ2V0VmFsdWUoKSxyPSIiLChlPXI9ZT94ZShlKT9lLmNoZWNrZWQ/InRydWUiOiJmYWxzZSI6ZS52YWx1ZTpyKSE9PW4mJih0LnNldFZhbHVlKGUpLDEpKToxfWZ1bmN0aW9uIENlKHQpe2lmKHZvaWQgMD09PSh0PXR8fCgidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50OnZvaWQgMCkpKXJldHVybiBudWxsO3RyeXtyZXR1cm4gdC5hY3RpdmVFbGVtZW50fHx0LmJvZHl9Y2F0Y2goZSl7cmV0dXJuIHQuYm9keX19ZnVuY3Rpb24gRWUoZSx0KXt2YXIgbj10LmNoZWNrZWQ7cmV0dXJuIGcoe30sdCx7ZGVmYXVsdENoZWNrZWQ6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsdmFsdWU6dm9pZCAwLGNoZWNrZWQ6bnVsbCE9bj9uOmUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsQ2hlY2tlZH0pfWZ1bmN0aW9uIE9lKGUsdCl7dmFyIG49bnVsbD09dC5kZWZhdWx0VmFsdWU/IiI6dC5kZWZhdWx0VmFsdWUscj1udWxsIT10LmNoZWNrZWQ/dC5jaGVja2VkOnQuZGVmYXVsdENoZWNrZWQsbj13ZShudWxsIT10LnZhbHVlP3QudmFsdWU6bik7ZS5fd3JhcHBlclN0YXRlPXtpbml0aWFsQ2hlY2tlZDpyLGluaXRpYWxWYWx1ZTpuLGNvbnRyb2xsZWQ6ImNoZWNrYm94Ij09PXQudHlwZXx8InJhZGlvIj09PXQudHlwZT9udWxsIT10LmNoZWNrZWQ6bnVsbCE9dC52YWx1ZX19ZnVuY3Rpb24gamUoZSx0KXtudWxsIT0odD10LmNoZWNrZWQpJiZLKGUsImNoZWNrZWQiLHQsITEpfWZ1bmN0aW9uIEFlKGUsdCl7amUoZSx0KTt2YXIgbj13ZSh0LnZhbHVlKSxyPXQudHlwZTtpZihudWxsIT1uKSJudW1iZXIiPT09cj8oMD09PW4mJiIiPT09ZS52YWx1ZXx8ZS52YWx1ZSE9bikmJihlLnZhbHVlPSIiK24pOmUudmFsdWUhPT0iIituJiYoZS52YWx1ZT0iIituKTtlbHNlIGlmKCJzdWJtaXQiPT09cnx8InJlc2V0Ij09PXIpcmV0dXJuIHZvaWQgZS5yZW1vdmVBdHRyaWJ1dGUoInZhbHVlIik7dC5oYXNPd25Qcm9wZXJ0eSgidmFsdWUiKT9JZShlLHQudHlwZSxuKTp0Lmhhc093blByb3BlcnR5KCJkZWZhdWx0VmFsdWUiKSYmSWUoZSx0LnR5cGUsd2UodC5kZWZhdWx0VmFsdWUpKSxudWxsPT10LmNoZWNrZWQmJm51bGwhPXQuZGVmYXVsdENoZWNrZWQmJihlLmRlZmF1bHRDaGVja2VkPSEhdC5kZWZhdWx0Q2hlY2tlZCl9ZnVuY3Rpb24gUGUoZSx0LG4pe2lmKHQuaGFzT3duUHJvcGVydHkoInZhbHVlIil8fHQuaGFzT3duUHJvcGVydHkoImRlZmF1bHRWYWx1ZSIpKXt2YXIgcj10LnR5cGU7aWYoISgic3VibWl0IiE9PXImJiJyZXNldCIhPT1yfHx2b2lkIDAhPT10LnZhbHVlJiZudWxsIT09dC52YWx1ZSkpcmV0dXJuO3Q9IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZSxufHx0PT09ZS52YWx1ZXx8KGUudmFsdWU9dCksZS5kZWZhdWx0VmFsdWU9dH0iIiE9PShuPWUubmFtZSkmJihlLm5hbWU9IiIpLGUuZGVmYXVsdENoZWNrZWQ9ISFlLl93cmFwcGVyU3RhdGUuaW5pdGlhbENoZWNrZWQsIiIhPT1uJiYoZS5uYW1lPW4pfWZ1bmN0aW9uIEllKGUsdCxuKXsibnVtYmVyIj09PXQmJkNlKGUub3duZXJEb2N1bWVudCk9PT1lfHwobnVsbD09bj9lLmRlZmF1bHRWYWx1ZT0iIitlLl93cmFwcGVyU3RhdGUuaW5pdGlhbFZhbHVlOmUuZGVmYXVsdFZhbHVlIT09IiIrbiYmKGUuZGVmYXVsdFZhbHVlPSIiK24pKX12YXIgX2U9QXJyYXkuaXNBcnJheTtmdW5jdGlvbiB6ZShlLHQsbixyKXtpZihlPWUub3B0aW9ucyx0KXt0PXt9O2Zvcih2YXIgbz0wO288bi5sZW5ndGg7bysrKXRbIiQiK25bb11dPSEwO2ZvcihuPTA7bjxlLmxlbmd0aDtuKyspbz10Lmhhc093blByb3BlcnR5KCIkIitlW25dLnZhbHVlKSxlW25dLnNlbGVjdGVkIT09byYmKGVbbl0uc2VsZWN0ZWQ9byksbyYmciYmKGVbbl0uZGVmYXVsdFNlbGVjdGVkPSEwKX1lbHNle2ZvcihuPSIiK3dlKG4pLHQ9bnVsbCxvPTA7bzxlLmxlbmd0aDtvKyspe2lmKGVbb10udmFsdWU9PT1uKXJldHVybiBlW29dLnNlbGVjdGVkPSEwLHZvaWQociYmKGVbb10uZGVmYXVsdFNlbGVjdGVkPSEwKSk7bnVsbCE9PXR8fGVbb10uZGlzYWJsZWR8fCh0PWVbb10pfW51bGwhPT10JiYodC5zZWxlY3RlZD0hMCl9fWZ1bmN0aW9uIFRlKGUsdCl7aWYobnVsbCE9dC5kYW5nZXJvdXNseVNldElubmVySFRNTCl0aHJvdyBFcnJvcihEKDkxKSk7cmV0dXJuIGcoe30sdCx7dmFsdWU6dm9pZCAwLGRlZmF1bHRWYWx1ZTp2b2lkIDAsY2hpbGRyZW46IiIrZS5fd3JhcHBlclN0YXRlLmluaXRpYWxWYWx1ZX0pfWZ1bmN0aW9uIExlKGUsdCl7dmFyIG49dC52YWx1ZTtpZihudWxsPT1uKXtpZihuPXQuY2hpbGRyZW4sdD10LmRlZmF1bHRWYWx1ZSxudWxsIT1uKXtpZihudWxsIT10KXRocm93IEVycm9yKEQoOTIpKTtpZihfZShuKSl7aWYoMTxuLmxlbmd0aCl0aHJvdyBFcnJvcihEKDkzKSk7bj1uWzBdfXQ9bn1uPXQ9bnVsbD09dD8iIjp0fWUuX3dyYXBwZXJTdGF0ZT17aW5pdGlhbFZhbHVlOndlKG4pfX1mdW5jdGlvbiBNZShlLHQpe3ZhciBuPXdlKHQudmFsdWUpLHI9d2UodC5kZWZhdWx0VmFsdWUpO251bGwhPW4mJigobj0iIituKSE9PWUudmFsdWUmJihlLnZhbHVlPW4pLG51bGw9PXQuZGVmYXVsdFZhbHVlKSYmZS5kZWZhdWx0VmFsdWUhPT1uJiYoZS5kZWZhdWx0VmFsdWU9biksbnVsbCE9ciYmKGUuZGVmYXVsdFZhbHVlPSIiK3IpfWZ1bmN0aW9uIFJlKGUpe3ZhciB0PWUudGV4dENvbnRlbnQ7dD09PWUuX3dyYXBwZXJTdGF0ZS5pbml0aWFsVmFsdWUmJiIiIT09dCYmbnVsbCE9PXQmJihlLnZhbHVlPXQpfWZ1bmN0aW9uIE5lKGUpe3N3aXRjaChlKXtjYXNlInN2ZyI6cmV0dXJuImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIjtjYXNlIm1hdGgiOnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIjtkZWZhdWx0OnJldHVybiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIn19ZnVuY3Rpb24gRGUoZSx0KXtyZXR1cm4gbnVsbD09ZXx8Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPT09ZT9OZSh0KToiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPT09ZSYmImZvcmVpZ25PYmplY3QiPT09dD8iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI6ZX1CZT1mdW5jdGlvbihlLHQpe2lmKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIhPT1lLm5hbWVzcGFjZVVSSXx8ImlubmVySFRNTCJpbiBlKWUuaW5uZXJIVE1MPXQ7ZWxzZXtmb3IoKFVlPVVlfHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuaW5uZXJIVE1MPSI8c3ZnPiIrdC52YWx1ZU9mKCkudG9TdHJpbmcoKSsiPC9zdmc+Iix0PVVlLmZpcnN0Q2hpbGQ7ZS5maXJzdENoaWxkOyllLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCk7Zm9yKDt0LmZpcnN0Q2hpbGQ7KWUuYXBwZW5kQ2hpbGQodC5maXJzdENoaWxkKX19O3ZhciBVZSxCZSxGZT0idW5kZWZpbmVkIiE9dHlwZW9mIE1TQXBwJiZNU0FwcC5leGVjVW5zYWZlTG9jYWxGdW5jdGlvbj9mdW5jdGlvbihlLHQsbixyKXtNU0FwcC5leGVjVW5zYWZlTG9jYWxGdW5jdGlvbihmdW5jdGlvbigpe3JldHVybiBCZShlLHQpfSl9OkJlO2Z1bmN0aW9uIEhlKGUsdCl7aWYodCl7dmFyIG49ZS5maXJzdENoaWxkO2lmKG4mJm49PT1lLmxhc3RDaGlsZCYmMz09PW4ubm9kZVR5cGUpcmV0dXJuIHZvaWQobi5ub2RlVmFsdWU9dCl9ZS50ZXh0Q29udGVudD10fXZhciBWZT17YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsYXNwZWN0UmF0aW86ITAsYm9yZGVySW1hZ2VPdXRzZXQ6ITAsYm9yZGVySW1hZ2VTbGljZTohMCxib3JkZXJJbWFnZVdpZHRoOiEwLGJveEZsZXg6ITAsYm94RmxleEdyb3VwOiEwLGJveE9yZGluYWxHcm91cDohMCxjb2x1bW5Db3VudDohMCxjb2x1bW5zOiEwLGZsZXg6ITAsZmxleEdyb3c6ITAsZmxleFBvc2l0aXZlOiEwLGZsZXhTaHJpbms6ITAsZmxleE5lZ2F0aXZlOiEwLGZsZXhPcmRlcjohMCxncmlkQXJlYTohMCxncmlkUm93OiEwLGdyaWRSb3dFbmQ6ITAsZ3JpZFJvd1NwYW46ITAsZ3JpZFJvd1N0YXJ0OiEwLGdyaWRDb2x1bW46ITAsZ3JpZENvbHVtbkVuZDohMCxncmlkQ29sdW1uU3BhbjohMCxncmlkQ29sdW1uU3RhcnQ6ITAsZm9udFdlaWdodDohMCxsaW5lQ2xhbXA6ITAsbGluZUhlaWdodDohMCxvcGFjaXR5OiEwLG9yZGVyOiEwLG9ycGhhbnM6ITAsdGFiU2l6ZTohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITAsZmlsbE9wYWNpdHk6ITAsZmxvb2RPcGFjaXR5OiEwLHN0b3BPcGFjaXR5OiEwLHN0cm9rZURhc2hhcnJheTohMCxzdHJva2VEYXNob2Zmc2V0OiEwLHN0cm9rZU1pdGVybGltaXQ6ITAsc3Ryb2tlT3BhY2l0eTohMCxzdHJva2VXaWR0aDohMH0sJGU9WyJXZWJraXQiLCJtcyIsIk1veiIsIk8iXTtmdW5jdGlvbiBXZShlLHQsbil7cmV0dXJuIG51bGw9PXR8fCJib29sZWFuIj09dHlwZW9mIHR8fCIiPT09dD8iIjpufHwibnVtYmVyIiE9dHlwZW9mIHR8fDA9PT10fHxWZS5oYXNPd25Qcm9wZXJ0eShlKSYmVmVbZV0/KCIiK3QpLnRyaW0oKTp0KyJweCJ9ZnVuY3Rpb24gR2UoZSx0KXtmb3IodmFyIG4gaW4gZT1lLnN0eWxlLHQpe3ZhciByLG87dC5oYXNPd25Qcm9wZXJ0eShuKSYmKHI9MD09PW4uaW5kZXhPZigiLS0iKSxvPVdlKG4sdFtuXSxyKSwiZmxvYXQiPT09biYmKG49ImNzc0Zsb2F0Iikscj9lLnNldFByb3BlcnR5KG4sbyk6ZVtuXT1vKX19T2JqZWN0LmtleXMoVmUpLmZvckVhY2goZnVuY3Rpb24odCl7JGUuZm9yRWFjaChmdW5jdGlvbihlKXtlPWUrdC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSt0LnN1YnN0cmluZygxKSxWZVtlXT1WZVt0XX0pfSk7dmFyIHFlPWcoe21lbnVpdGVtOiEwfSx7YXJlYTohMCxiYXNlOiEwLGJyOiEwLGNvbDohMCxlbWJlZDohMCxocjohMCxpbWc6ITAsaW5wdXQ6ITAsa2V5Z2VuOiEwLGxpbms6ITAsbWV0YTohMCxwYXJhbTohMCxzb3VyY2U6ITAsdHJhY2s6ITAsd2JyOiEwfSk7ZnVuY3Rpb24gWmUoZSx0KXtpZih0KXtpZihxZVtlXSYmKG51bGwhPXQuY2hpbGRyZW58fG51bGwhPXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwpKXRocm93IEVycm9yKEQoMTM3LGUpKTtpZihudWxsIT10LmRhbmdlcm91c2x5U2V0SW5uZXJIVE1MKXtpZihudWxsIT10LmNoaWxkcmVuKXRocm93IEVycm9yKEQoNjApKTtpZigib2JqZWN0IiE9dHlwZW9mIHQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUx8fCEoIl9faHRtbCJpbiB0LmRhbmdlcm91c2x5U2V0SW5uZXJIVE1MKSl0aHJvdyBFcnJvcihEKDYxKSl9aWYobnVsbCE9dC5zdHlsZSYmIm9iamVjdCIhPXR5cGVvZiB0LnN0eWxlKXRocm93IEVycm9yKEQoNjIpKX19ZnVuY3Rpb24gWGUoZSx0KXtpZigtMT09PWUuaW5kZXhPZigiLSIpKXJldHVybiJzdHJpbmciPT10eXBlb2YgdC5pcztzd2l0Y2goZSl7Y2FzZSJhbm5vdGF0aW9uLXhtbCI6Y2FzZSJjb2xvci1wcm9maWxlIjpjYXNlImZvbnQtZmFjZSI6Y2FzZSJmb250LWZhY2Utc3JjIjpjYXNlImZvbnQtZmFjZS11cmkiOmNhc2UiZm9udC1mYWNlLWZvcm1hdCI6Y2FzZSJmb250LWZhY2UtbmFtZSI6Y2FzZSJtaXNzaW5nLWdseXBoIjpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX12YXIgWWU9bnVsbDtmdW5jdGlvbiBRZShlKXtyZXR1cm4gMz09PShlPShlPWUudGFyZ2V0fHxlLnNyY0VsZW1lbnR8fHdpbmRvdykuY29ycmVzcG9uZGluZ1VzZUVsZW1lbnQ/ZS5jb3JyZXNwb25kaW5nVXNlRWxlbWVudDplKS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZX12YXIgS2U9bnVsbCxKZT1udWxsLGV0PW51bGw7ZnVuY3Rpb24gdHQoZSl7aWYoZT16byhlKSl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIEtlKXRocm93IEVycm9yKEQoMjgwKSk7dmFyIHQ9ZS5zdGF0ZU5vZGU7dCYmKHQ9TG8odCksS2UoZS5zdGF0ZU5vZGUsZS50eXBlLHQpKX19ZnVuY3Rpb24gbnQoZSl7SmU/ZXQ/ZXQucHVzaChlKTpldD1bZV06SmU9ZX1mdW5jdGlvbiBydCgpe2lmKEplKXt2YXIgZT1KZSx0PWV0O2lmKGV0PUplPW51bGwsdHQoZSksdClmb3IoZT0wO2U8dC5sZW5ndGg7ZSsrKXR0KHRbZV0pfX1mdW5jdGlvbiBvdChlLHQpe3JldHVybiBlKHQpfWZ1bmN0aW9uIGF0KCl7fXZhciBpdD0hMTtmdW5jdGlvbiBsdChlLHQsbil7aWYoaXQpcmV0dXJuIGUodCxuKTtpdD0hMDt0cnl7b3QoZSx0LG4pfWZpbmFsbHl7aXQ9ITEsbnVsbD09PUplJiZudWxsPT09ZXR8fChhdCgpLHJ0KCkpfX1mdW5jdGlvbiBjdChlLHQpe3ZhciBuPWUuc3RhdGVOb2RlO2lmKG51bGw9PT1uKXJldHVybiBudWxsO3ZhciByPUxvKG4pO2lmKG51bGw9PT1yKXJldHVybiBudWxsO3N3aXRjaChuPXJbdF0sdCl7Y2FzZSJvbkNsaWNrIjpjYXNlIm9uQ2xpY2tDYXB0dXJlIjpjYXNlIm9uRG91YmxlQ2xpY2siOmNhc2Uib25Eb3VibGVDbGlja0NhcHR1cmUiOmNhc2Uib25Nb3VzZURvd24iOmNhc2Uib25Nb3VzZURvd25DYXB0dXJlIjpjYXNlIm9uTW91c2VNb3ZlIjpjYXNlIm9uTW91c2VNb3ZlQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlVXAiOmNhc2Uib25Nb3VzZVVwQ2FwdHVyZSI6Y2FzZSJvbk1vdXNlRW50ZXIiOmU9IShyPShyPSFyLmRpc2FibGVkKT9yOiEoImJ1dHRvbiI9PT0oZT1lLnR5cGUpfHwiaW5wdXQiPT09ZXx8InNlbGVjdCI9PT1lfHwidGV4dGFyZWEiPT09ZSkpO2JyZWFrO2RlZmF1bHQ6ZT0hMX1pZihlKXJldHVybiBudWxsO2lmKG4mJiJmdW5jdGlvbiIhPXR5cGVvZiBuKXRocm93IEVycm9yKEQoMjMxLHQsdHlwZW9mIG4pKTtyZXR1cm4gbn12YXIgdXQ9ITE7aWYoUil0cnl7dmFyIGU9e307T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXt1dD0hMH19KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidGVzdCIsZSxlKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsZSxlKX1jYXRjaChlKXt1dD0hMX12YXIgc3Q9ITEsZnQ9bnVsbCxkdD0hMSxwdD1udWxsLG10PXtvbkVycm9yOmZ1bmN0aW9uKGUpe3N0PSEwLGZ0PWV9fTtmdW5jdGlvbiBodChlLHQsbixyLG8sYSxpLGwsYyl7c3Q9ITEsZnQ9bnVsbCxmdW5jdGlvbihlLHQsbixyLG8sYSxpLGwsYyl7dmFyIHU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDMpO3RyeXt0LmFwcGx5KG4sdSl9Y2F0Y2goZSl7dGhpcy5vbkVycm9yKGUpfX0uYXBwbHkobXQsYXJndW1lbnRzKX1mdW5jdGlvbiBndChlKXt2YXIgdD1lLG49ZTtpZihlLmFsdGVybmF0ZSlmb3IoO3QucmV0dXJuOyl0PXQucmV0dXJuO2Vsc2UgZm9yKGU9dDswIT0oNDA5OCYodD1lKS5mbGFncykmJihuPXQucmV0dXJuKSxlPXQucmV0dXJuOyk7cmV0dXJuIDM9PT10LnRhZz9uOm51bGx9ZnVuY3Rpb24gYnQoZSl7aWYoMTM9PT1lLnRhZyl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlO2lmKG51bGwhPT0odD1udWxsPT09dCYmbnVsbCE9PShlPWUuYWx0ZXJuYXRlKT9lLm1lbW9pemVkU3RhdGU6dCkpcmV0dXJuIHQuZGVoeWRyYXRlZH1yZXR1cm4gbnVsbH1mdW5jdGlvbiB5dChlKXtpZihndChlKSE9PWUpdGhyb3cgRXJyb3IoRCgxODgpKX1mdW5jdGlvbiB2dChlKXtyZXR1cm4gbnVsbCE9PShlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuYWx0ZXJuYXRlO2lmKCF0KXtpZihudWxsPT09KHQ9Z3QoZSkpKXRocm93IEVycm9yKEQoMTg4KSk7cmV0dXJuIHQhPT1lP251bGw6ZX1mb3IodmFyIG49ZSxyPXQ7Oyl7dmFyIG89bi5yZXR1cm47aWYobnVsbD09PW8pYnJlYWs7dmFyIGE9by5hbHRlcm5hdGU7aWYobnVsbD09PWEpe2lmKG51bGw9PT0ocj1vLnJldHVybikpYnJlYWs7bj1yfWVsc2V7aWYoby5jaGlsZD09PWEuY2hpbGQpe2ZvcihhPW8uY2hpbGQ7YTspe2lmKGE9PT1uKXJldHVybiB5dChvKSxlO2lmKGE9PT1yKXJldHVybiB5dChvKSx0O2E9YS5zaWJsaW5nfXRocm93IEVycm9yKEQoMTg4KSl9aWYobi5yZXR1cm4hPT1yLnJldHVybiluPW8scj1hO2Vsc2V7Zm9yKHZhciBpPSExLGw9by5jaGlsZDtsOyl7aWYobD09PW4pe2k9ITAsbj1vLHI9YTticmVha31pZihsPT09cil7aT0hMCxyPW8sbj1hO2JyZWFrfWw9bC5zaWJsaW5nfWlmKCFpKXtmb3IobD1hLmNoaWxkO2w7KXtpZihsPT09bil7aT0hMCxuPWEscj1vO2JyZWFrfWlmKGw9PT1yKXtpPSEwLHI9YSxuPW87YnJlYWt9bD1sLnNpYmxpbmd9aWYoIWkpdGhyb3cgRXJyb3IoRCgxODkpKX19aWYobi5hbHRlcm5hdGUhPT1yKXRocm93IEVycm9yKEQoMTkwKSl9fWlmKDMhPT1uLnRhZyl0aHJvdyBFcnJvcihEKDE4OCkpO3JldHVybiBuLnN0YXRlTm9kZS5jdXJyZW50PT09bj9lOnR9KGUpKT9mdW5jdGlvbiBlKHQpe2lmKDU9PT10LnRhZ3x8Nj09PXQudGFnKXJldHVybiB0O2Zvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KXt2YXIgbj1lKHQpO2lmKG51bGwhPT1uKXJldHVybiBuO3Q9dC5zaWJsaW5nfXJldHVybiBudWxsfShlKTpudWxsfXZhciB3dD1CLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2sseHQ9Qi51bnN0YWJsZV9jYW5jZWxDYWxsYmFjayxrdD1CLnVuc3RhYmxlX3Nob3VsZFlpZWxkLFN0PUIudW5zdGFibGVfcmVxdWVzdFBhaW50LGg9Qi51bnN0YWJsZV9ub3csQ3Q9Qi51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbCxFdD1CLnVuc3RhYmxlX0ltbWVkaWF0ZVByaW9yaXR5LE90PUIudW5zdGFibGVfVXNlckJsb2NraW5nUHJpb3JpdHksanQ9Qi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eSxBdD1CLnVuc3RhYmxlX0xvd1ByaW9yaXR5LFB0PUIudW5zdGFibGVfSWRsZVByaW9yaXR5LEl0PW51bGwsX3Q9bnVsbDt2YXIgenQ9TWF0aC5jbHozMnx8ZnVuY3Rpb24oZSl7cmV0dXJuIDA9PShlPj4+PTApPzMyOjMxLShUdChlKS9MdHwwKXwwfSxUdD1NYXRoLmxvZyxMdD1NYXRoLkxOMjt2YXIgTXQ9NjQsUnQ9NDE5NDMwNDtmdW5jdGlvbiBOdChlKXtzd2l0Y2goZSYtZSl7Y2FzZSAxOnJldHVybiAxO2Nhc2UgMjpyZXR1cm4gMjtjYXNlIDQ6cmV0dXJuIDQ7Y2FzZSA4OnJldHVybiA4O2Nhc2UgMTY6cmV0dXJuIDE2O2Nhc2UgMzI6cmV0dXJuIDMyO2Nhc2UgNjQ6Y2FzZSAxMjg6Y2FzZSAyNTY6Y2FzZSA1MTI6Y2FzZSAxMDI0OmNhc2UgMjA0ODpjYXNlIDQwOTY6Y2FzZSA4MTkyOmNhc2UgMTYzODQ6Y2FzZSAzMjc2ODpjYXNlIDY1NTM2OmNhc2UgMTMxMDcyOmNhc2UgMjYyMTQ0OmNhc2UgNTI0Mjg4OmNhc2UgMTA0ODU3NjpjYXNlIDIwOTcxNTI6cmV0dXJuIDQxOTQyNDAmZTtjYXNlIDQxOTQzMDQ6Y2FzZSA4Mzg4NjA4OmNhc2UgMTY3NzcyMTY6Y2FzZSAzMzU1NDQzMjpjYXNlIDY3MTA4ODY0OnJldHVybiAxMzAwMjM0MjQmZTtjYXNlIDEzNDIxNzcyODpyZXR1cm4gMTM0MjE3NzI4O2Nhc2UgMjY4NDM1NDU2OnJldHVybiAyNjg0MzU0NTY7Y2FzZSA1MzY4NzA5MTI6cmV0dXJuIDUzNjg3MDkxMjtjYXNlIDEwNzM3NDE4MjQ6cmV0dXJuIDEwNzM3NDE4MjQ7ZGVmYXVsdDpyZXR1cm4gZX19ZnVuY3Rpb24gRHQoZSx0KXt2YXIgbj1lLnBlbmRpbmdMYW5lcztpZigwPT09bilyZXR1cm4gMDt2YXIgcixvPTAsYT1lLnN1c3BlbmRlZExhbmVzLGk9ZS5waW5nZWRMYW5lcyxsPTI2ODQzNTQ1NSZuO2lmKDAhPWw/MCE9KHI9bCZ+YSk/bz1OdChyKTowIT09KGkmPWwpJiYobz1OdChpKSk6MCE9KGw9biZ+YSk/bz1OdChsKTowIT09aSYmKG89TnQoaSkpLDA9PT1vKXJldHVybiAwO2lmKDAhPT10JiZ0IT09byYmMD09KHQmYSkmJigoaT10Ji10KTw9KGE9byYtbyl8fDE2PT09YSYmMCE9KDQxOTQyNDAmaSkpKXJldHVybiB0O2lmKDAhPSg0Jm8pJiYob3w9MTYmbiksMCE9PSh0PWUuZW50YW5nbGVkTGFuZXMpKWZvcihlPWUuZW50YW5nbGVtZW50cyx0Jj1vOzA8dDspb3w9ZVtuPTMxLXp0KHQpXSx0Jj1+KGE9MTw8bik7cmV0dXJuIG99ZnVuY3Rpb24gVXQoZSx0KXtmb3IodmFyIG49ZS5zdXNwZW5kZWRMYW5lcyxyPWUucGluZ2VkTGFuZXMsbz1lLmV4cGlyYXRpb25UaW1lcyxhPWUucGVuZGluZ0xhbmVzOzA8YTspe3ZhciBpPTMxLXp0KGEpLGw9MTw8aSxjPW9baV07LTE9PT1jPzAhPShsJm4pJiYwPT0obCZyKXx8KG9baV09ZnVuY3Rpb24oZSx0KXtzd2l0Y2goZSl7Y2FzZSAxOmNhc2UgMjpjYXNlIDQ6cmV0dXJuIHQrMjUwO2Nhc2UgODpjYXNlIDE2OmNhc2UgMzI6Y2FzZSA2NDpjYXNlIDEyODpjYXNlIDI1NjpjYXNlIDUxMjpjYXNlIDEwMjQ6Y2FzZSAyMDQ4OmNhc2UgNDA5NjpjYXNlIDgxOTI6Y2FzZSAxNjM4NDpjYXNlIDMyNzY4OmNhc2UgNjU1MzY6Y2FzZSAxMzEwNzI6Y2FzZSAyNjIxNDQ6Y2FzZSA1MjQyODg6Y2FzZSAxMDQ4NTc2OmNhc2UgMjA5NzE1MjpyZXR1cm4gdCs1ZTM7Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpyZXR1cm4tMTtkZWZhdWx0OnJldHVybi0xfX0obCx0KSk6Yzw9dCYmKGUuZXhwaXJlZExhbmVzfD1sKSxhJj1+bH19ZnVuY3Rpb24gQnQoZSl7cmV0dXJuIDAhPT0oZT0tMTA3Mzc0MTgyNSZlLnBlbmRpbmdMYW5lcyk/ZToxMDczNzQxODI0JmU/MTA3Mzc0MTgyNDowfWZ1bmN0aW9uIEZ0KCl7dmFyIGU9TXQ7cmV0dXJuIDA9PSg0MTk0MjQwJihNdDw8PTEpKSYmKE10PTY0KSxlfWZ1bmN0aW9uIEh0KGUpe2Zvcih2YXIgdD1bXSxuPTA7bjwzMTtuKyspdC5wdXNoKGUpO3JldHVybiB0fWZ1bmN0aW9uIFZ0KGUsdCxuKXtlLnBlbmRpbmdMYW5lc3w9dCw1MzY4NzA5MTIhPT10JiYoZS5zdXNwZW5kZWRMYW5lcz0wLGUucGluZ2VkTGFuZXM9MCksKGU9ZS5ldmVudFRpbWVzKVt0PTMxLXp0KHQpXT1ufWZ1bmN0aW9uICR0KGUsdCl7dmFyIG49ZS5lbnRhbmdsZWRMYW5lc3w9dDtmb3IoZT1lLmVudGFuZ2xlbWVudHM7bjspe3ZhciByPTMxLXp0KG4pLG89MTw8cjtvJnR8ZVtyXSZ0JiYoZVtyXXw9dCksbiY9fm99fXZhciB4PTA7ZnVuY3Rpb24gV3QoZSl7cmV0dXJuIDE8KGUmPS1lKT80PGU/MCE9KDI2ODQzNTQ1NSZlKT8xNjo1MzY4NzA5MTI6NDoxfXZhciBHdCxxdCxadCxYdCxZdCxRdD0hMSxLdD1bXSxKdD1udWxsLGVuPW51bGwsdG49bnVsbCxubj1uZXcgTWFwLHJuPW5ldyBNYXAsb249W10sYW49Im1vdXNlZG93biBtb3VzZXVwIHRvdWNoY2FuY2VsIHRvdWNoZW5kIHRvdWNoc3RhcnQgYXV4Y2xpY2sgZGJsY2xpY2sgcG9pbnRlcmNhbmNlbCBwb2ludGVyZG93biBwb2ludGVydXAgZHJhZ2VuZCBkcmFnc3RhcnQgZHJvcCBjb21wb3NpdGlvbmVuZCBjb21wb3NpdGlvbnN0YXJ0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgaW5wdXQgdGV4dElucHV0IGNvcHkgY3V0IHBhc3RlIGNsaWNrIGNoYW5nZSBjb250ZXh0bWVudSByZXNldCBzdWJtaXQiLnNwbGl0KCIgIik7ZnVuY3Rpb24gbG4oZSx0KXtzd2l0Y2goZSl7Y2FzZSJmb2N1c2luIjpjYXNlImZvY3Vzb3V0IjpKdD1udWxsO2JyZWFrO2Nhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdsZWF2ZSI6ZW49bnVsbDticmVhaztjYXNlIm1vdXNlb3ZlciI6Y2FzZSJtb3VzZW91dCI6dG49bnVsbDticmVhaztjYXNlInBvaW50ZXJvdmVyIjpjYXNlInBvaW50ZXJvdXQiOm5uLmRlbGV0ZSh0LnBvaW50ZXJJZCk7YnJlYWs7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJsb3N0cG9pbnRlcmNhcHR1cmUiOnJuLmRlbGV0ZSh0LnBvaW50ZXJJZCl9fWZ1bmN0aW9uIGNuKGUsdCxuLHIsbyxhKXtyZXR1cm4gbnVsbD09PWV8fGUubmF0aXZlRXZlbnQhPT1hPyhlPXtibG9ja2VkT246dCxkb21FdmVudE5hbWU6bixldmVudFN5c3RlbUZsYWdzOnIsbmF0aXZlRXZlbnQ6YSx0YXJnZXRDb250YWluZXJzOltvXX0sbnVsbCE9PXQmJm51bGwhPT0odD16byh0KSkmJnF0KHQpKTooZS5ldmVudFN5c3RlbUZsYWdzfD1yLHQ9ZS50YXJnZXRDb250YWluZXJzLG51bGwhPT1vJiYtMT09PXQuaW5kZXhPZihvKSYmdC5wdXNoKG8pKSxlfWZ1bmN0aW9uIHVuKGUpe3ZhciB0PV9vKGUudGFyZ2V0KTtpZihudWxsIT09dCl7dmFyIG49Z3QodCk7aWYobnVsbCE9PW4paWYoMTM9PT0odD1uLnRhZykpe2lmKG51bGwhPT0odD1idChuKSkpcmV0dXJuIGUuYmxvY2tlZE9uPXQsdm9pZCBZdChlLnByaW9yaXR5LGZ1bmN0aW9uKCl7WnQobil9KX1lbHNlIGlmKDM9PT10JiZuLnN0YXRlTm9kZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkKXJldHVybiB2b2lkKGUuYmxvY2tlZE9uPTM9PT1uLnRhZz9uLnN0YXRlTm9kZS5jb250YWluZXJJbmZvOm51bGwpfWUuYmxvY2tlZE9uPW51bGx9ZnVuY3Rpb24gc24oZSl7aWYobnVsbD09PWUuYmxvY2tlZE9uKXtmb3IodmFyIHQ9ZS50YXJnZXRDb250YWluZXJzOzA8dC5sZW5ndGg7KXt2YXIgbj14bihlLmRvbUV2ZW50TmFtZSxlLmV2ZW50U3lzdGVtRmxhZ3MsdFswXSxlLm5hdGl2ZUV2ZW50KTtpZihudWxsIT09bilyZXR1cm4gbnVsbCE9PSh0PXpvKG4pKSYmcXQodCksZS5ibG9ja2VkT249biwwO3ZhciByPW5ldyhuPWUubmF0aXZlRXZlbnQpLmNvbnN0cnVjdG9yKG4udHlwZSxuKTtZZT1yLG4udGFyZ2V0LmRpc3BhdGNoRXZlbnQociksWWU9bnVsbCx0LnNoaWZ0KCl9cmV0dXJuIDF9fWZ1bmN0aW9uIGZuKGUsdCxuKXtzbihlKSYmbi5kZWxldGUodCl9ZnVuY3Rpb24gZG4oKXtRdD0hMSxudWxsIT09SnQmJnNuKEp0KSYmKEp0PW51bGwpLG51bGwhPT1lbiYmc24oZW4pJiYoZW49bnVsbCksbnVsbCE9PXRuJiZzbih0bikmJih0bj1udWxsKSxubi5mb3JFYWNoKGZuKSxybi5mb3JFYWNoKGZuKX1mdW5jdGlvbiBwbihlLHQpe2UuYmxvY2tlZE9uPT09dCYmKGUuYmxvY2tlZE9uPW51bGwsUXR8fChRdD0hMCxCLnVuc3RhYmxlX3NjaGVkdWxlQ2FsbGJhY2soQi51bnN0YWJsZV9Ob3JtYWxQcmlvcml0eSxkbikpKX1mdW5jdGlvbiBtbih0KXtmdW5jdGlvbiBlKGUpe3JldHVybiBwbihlLHQpfWlmKDA8S3QubGVuZ3RoKXtwbihLdFswXSx0KTtmb3IodmFyIG49MTtuPEt0Lmxlbmd0aDtuKyspe3ZhciByPUt0W25dO3IuYmxvY2tlZE9uPT09dCYmKHIuYmxvY2tlZE9uPW51bGwpfX1mb3IobnVsbCE9PUp0JiZwbihKdCx0KSxudWxsIT09ZW4mJnBuKGVuLHQpLG51bGwhPT10biYmcG4odG4sdCksbm4uZm9yRWFjaChlKSxybi5mb3JFYWNoKGUpLG49MDtuPG9uLmxlbmd0aDtuKyspKHI9b25bbl0pLmJsb2NrZWRPbj09PXQmJihyLmJsb2NrZWRPbj1udWxsKTtmb3IoOzA8b24ubGVuZ3RoJiZudWxsPT09KG49b25bMF0pLmJsb2NrZWRPbjspdW4obiksbnVsbD09PW4uYmxvY2tlZE9uJiZvbi5zaGlmdCgpfXZhciBobj1KLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLGduPSEwO2Z1bmN0aW9uIGJuKGUsdCxuLHIpe3ZhciBvPXgsYT1obi50cmFuc2l0aW9uO2huLnRyYW5zaXRpb249bnVsbDt0cnl7eD0xLHZuKGUsdCxuLHIpfWZpbmFsbHl7eD1vLGhuLnRyYW5zaXRpb249YX19ZnVuY3Rpb24geW4oZSx0LG4scil7dmFyIG89eCxhPWhuLnRyYW5zaXRpb247aG4udHJhbnNpdGlvbj1udWxsO3RyeXt4PTQsdm4oZSx0LG4scil9ZmluYWxseXt4PW8saG4udHJhbnNpdGlvbj1hfX1mdW5jdGlvbiB2bihlLHQsbixyKXtpZihnbil7dmFyIG89eG4oZSwwLDAscik7aWYobnVsbD09PW8pcm8oZSx0LHIsd24sbiksbG4oZSxyKTtlbHNlIGlmKGZ1bmN0aW9uKGUsdCxuLHIsbyl7c3dpdGNoKHQpe2Nhc2UiZm9jdXNpbiI6cmV0dXJuIEp0PWNuKEp0LGUsdCxuLHIsbyksMTtjYXNlImRyYWdlbnRlciI6cmV0dXJuIGVuPWNuKGVuLGUsdCxuLHIsbyksMTtjYXNlIm1vdXNlb3ZlciI6cmV0dXJuIHRuPWNuKHRuLGUsdCxuLHIsbyksMTtjYXNlInBvaW50ZXJvdmVyIjp2YXIgYT1vLnBvaW50ZXJJZDtyZXR1cm4gbm4uc2V0KGEsY24obm4uZ2V0KGEpfHxudWxsLGUsdCxuLHIsbykpLDE7Y2FzZSJnb3Rwb2ludGVyY2FwdHVyZSI6cmV0dXJuIGE9by5wb2ludGVySWQscm4uc2V0KGEsY24ocm4uZ2V0KGEpfHxudWxsLGUsdCxuLHIsbykpLDF9fShvLGUsdCxuLHIpKXIuc3RvcFByb3BhZ2F0aW9uKCk7ZWxzZSBpZihsbihlLHIpLDQmdCYmLTE8YW4uaW5kZXhPZihlKSl7Zm9yKDtudWxsIT09bzspe3ZhciBhPXpvKG8pO2lmKG51bGwhPT1hJiZHdChhKSxudWxsPT09KGE9eG4oZSwwLDAscikpJiZybyhlLHQscix3bixuKSxhPT09bylicmVhaztvPWF9bnVsbCE9PW8mJnIuc3RvcFByb3BhZ2F0aW9uKCl9ZWxzZSBybyhlLHQscixudWxsLG4pfX12YXIgd249bnVsbDtmdW5jdGlvbiB4bihlLHQsbixyKXtpZigod249bnVsbCkhPT0oZT1fbyhlPVFlKHIpKSkpaWYobnVsbD09PSh0PWd0KGUpKSllPW51bGw7ZWxzZSBpZigxMz09PShuPXQudGFnKSl7aWYobnVsbCE9PShlPWJ0KHQpKSlyZXR1cm4gZTtlPW51bGx9ZWxzZSBpZigzPT09bil7aWYodC5zdGF0ZU5vZGUuY3VycmVudC5tZW1vaXplZFN0YXRlLmlzRGVoeWRyYXRlZClyZXR1cm4gMz09PXQudGFnP3Quc3RhdGVOb2RlLmNvbnRhaW5lckluZm86bnVsbDtlPW51bGx9ZWxzZSB0IT09ZSYmKGU9bnVsbCk7cmV0dXJuIHduPWUsbnVsbH1mdW5jdGlvbiBrbihlKXtzd2l0Y2goZSl7Y2FzZSJjYW5jZWwiOmNhc2UiY2xpY2siOmNhc2UiY2xvc2UiOmNhc2UiY29udGV4dG1lbnUiOmNhc2UiY29weSI6Y2FzZSJjdXQiOmNhc2UiYXV4Y2xpY2siOmNhc2UiZGJsY2xpY2siOmNhc2UiZHJhZ2VuZCI6Y2FzZSJkcmFnc3RhcnQiOmNhc2UiZHJvcCI6Y2FzZSJmb2N1c2luIjpjYXNlImZvY3Vzb3V0IjpjYXNlImlucHV0IjpjYXNlImludmFsaWQiOmNhc2Uia2V5ZG93biI6Y2FzZSJrZXlwcmVzcyI6Y2FzZSJrZXl1cCI6Y2FzZSJtb3VzZWRvd24iOmNhc2UibW91c2V1cCI6Y2FzZSJwYXN0ZSI6Y2FzZSJwYXVzZSI6Y2FzZSJwbGF5IjpjYXNlInBvaW50ZXJjYW5jZWwiOmNhc2UicG9pbnRlcmRvd24iOmNhc2UicG9pbnRlcnVwIjpjYXNlInJhdGVjaGFuZ2UiOmNhc2UicmVzZXQiOmNhc2UicmVzaXplIjpjYXNlInNlZWtlZCI6Y2FzZSJzdWJtaXQiOmNhc2UidG91Y2hjYW5jZWwiOmNhc2UidG91Y2hlbmQiOmNhc2UidG91Y2hzdGFydCI6Y2FzZSJ2b2x1bWVjaGFuZ2UiOmNhc2UiY2hhbmdlIjpjYXNlInNlbGVjdGlvbmNoYW5nZSI6Y2FzZSJ0ZXh0SW5wdXQiOmNhc2UiY29tcG9zaXRpb25zdGFydCI6Y2FzZSJjb21wb3NpdGlvbmVuZCI6Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6Y2FzZSJiZWZvcmVpbnB1dCI6Y2FzZSJibHVyIjpjYXNlImZ1bGxzY3JlZW5jaGFuZ2UiOmNhc2UiZm9jdXMiOmNhc2UiaGFzaGNoYW5nZSI6Y2FzZSJwb3BzdGF0ZSI6Y2FzZSJzZWxlY3QiOmNhc2Uic2VsZWN0c3RhcnQiOnJldHVybiAxO2Nhc2UiZHJhZyI6Y2FzZSJkcmFnZW50ZXIiOmNhc2UiZHJhZ2V4aXQiOmNhc2UiZHJhZ2xlYXZlIjpjYXNlImRyYWdvdmVyIjpjYXNlIm1vdXNlbW92ZSI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UicG9pbnRlcm1vdmUiOmNhc2UicG9pbnRlcm91dCI6Y2FzZSJwb2ludGVyb3ZlciI6Y2FzZSJzY3JvbGwiOmNhc2UidG9nZ2xlIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ3aGVlbCI6Y2FzZSJtb3VzZWVudGVyIjpjYXNlIm1vdXNlbGVhdmUiOmNhc2UicG9pbnRlcmVudGVyIjpjYXNlInBvaW50ZXJsZWF2ZSI6cmV0dXJuIDQ7Y2FzZSJtZXNzYWdlIjpzd2l0Y2goQ3QoKSl7Y2FzZSBFdDpyZXR1cm4gMTtjYXNlIE90OnJldHVybiA0O2Nhc2UganQ6Y2FzZSBBdDpyZXR1cm4gMTY7Y2FzZSBQdDpyZXR1cm4gNTM2ODcwOTEyO2RlZmF1bHQ6cmV0dXJuIDE2fWRlZmF1bHQ6cmV0dXJuIDE2fX12YXIgU249bnVsbCxDbj1udWxsLEVuPW51bGw7ZnVuY3Rpb24gT24oKXtpZihFbilyZXR1cm4gRW47Zm9yKHZhciBlPUNuLHQ9ZS5sZW5ndGgsbj0oInZhbHVlImluIFNuP1NuLnZhbHVlOlNuLnRleHRDb250ZW50KSxyPW4ubGVuZ3RoLG89MDtvPHQmJmVbb109PT1uW29dO28rKyk7Zm9yKHZhciBhPXQtbyxpPTE7aTw9YSYmZVt0LWldPT09bltyLWldO2krKyk7cmV0dXJuIEVuPW4uc2xpY2UobywxPGk/MS1pOnZvaWQgMCl9ZnVuY3Rpb24gam4oZSl7dmFyIHQ9ZS5rZXlDb2RlO3JldHVybiJjaGFyQ29kZSJpbiBlPzA9PT0oZT1lLmNoYXJDb2RlKSYmMTM9PT10JiYoZT0xMyk6ZT10LDMyPD0oZT0xMD09PWU/MTM6ZSl8fDEzPT09ZT9lOjB9ZnVuY3Rpb24gQW4oKXtyZXR1cm4hMH1mdW5jdGlvbiBQbigpe3JldHVybiExfWZ1bmN0aW9uIEluKGkpe2Z1bmN0aW9uIGUoZSx0LG4scixvKXtmb3IodmFyIGEgaW4gdGhpcy5fcmVhY3ROYW1lPWUsdGhpcy5fdGFyZ2V0SW5zdD1uLHRoaXMudHlwZT10LHRoaXMubmF0aXZlRXZlbnQ9cix0aGlzLnRhcmdldD1vLHRoaXMuY3VycmVudFRhcmdldD1udWxsLGkpaS5oYXNPd25Qcm9wZXJ0eShhKSYmKGU9aVthXSx0aGlzW2FdPWU/ZShyKTpyW2FdKTtyZXR1cm4gdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9KG51bGwhPXIuZGVmYXVsdFByZXZlbnRlZD9yLmRlZmF1bHRQcmV2ZW50ZWQ6ITE9PT1yLnJldHVyblZhbHVlKT9BbjpQbix0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPVBuLHRoaXN9cmV0dXJuIGcoZS5wcm90b3R5cGUse3ByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwO3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOiJ1bmtub3duIiE9dHlwZW9mIGUucmV0dXJuVmFsdWUmJihlLnJldHVyblZhbHVlPSExKSx0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1Bbil9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMubmF0aXZlRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uP2Uuc3RvcFByb3BhZ2F0aW9uKCk6InVua25vd24iIT10eXBlb2YgZS5jYW5jZWxCdWJibGUmJihlLmNhbmNlbEJ1YmJsZT0hMCksdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZD1Bbil9LHBlcnNpc3Q6ZnVuY3Rpb24oKXt9LGlzUGVyc2lzdGVudDpBbn0pLGV9dmFyIF9uLHpuLFRuLGU9e2V2ZW50UGhhc2U6MCxidWJibGVzOjAsY2FuY2VsYWJsZTowLHRpbWVTdGFtcDpmdW5jdGlvbihlKXtyZXR1cm4gZS50aW1lU3RhbXB8fERhdGUubm93KCl9LGRlZmF1bHRQcmV2ZW50ZWQ6MCxpc1RydXN0ZWQ6MH0sTG49SW4oZSksdD1nKHt9LGUse3ZpZXc6MCxkZXRhaWw6MH0pLE1uPUluKHQpLHI9Zyh7fSx0LHtzY3JlZW5YOjAsc2NyZWVuWTowLGNsaWVudFg6MCxjbGllbnRZOjAscGFnZVg6MCxwYWdlWTowLGN0cmxLZXk6MCxzaGlmdEtleTowLGFsdEtleTowLG1ldGFLZXk6MCxnZXRNb2RpZmllclN0YXRlOkduLGJ1dHRvbjowLGJ1dHRvbnM6MCxyZWxhdGVkVGFyZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lLnJlbGF0ZWRUYXJnZXQ/ZS5mcm9tRWxlbWVudD09PWUuc3JjRWxlbWVudD9lLnRvRWxlbWVudDplLmZyb21FbGVtZW50OmUucmVsYXRlZFRhcmdldH0sbW92ZW1lbnRYOmZ1bmN0aW9uKGUpe3JldHVybiJtb3ZlbWVudFgiaW4gZT9lLm1vdmVtZW50WDooZSE9PVRuJiYoem49VG4mJiJtb3VzZW1vdmUiPT09ZS50eXBlPyhfbj1lLnNjcmVlblgtVG4uc2NyZWVuWCxlLnNjcmVlblktVG4uc2NyZWVuWSk6X249MCxUbj1lKSxfbil9LG1vdmVtZW50WTpmdW5jdGlvbihlKXtyZXR1cm4ibW92ZW1lbnRZImluIGU/ZS5tb3ZlbWVudFk6em59fSksUm49SW4ociksTm49SW4oZyh7fSxyLHtkYXRhVHJhbnNmZXI6MH0pKSxEbj1JbihnKHt9LHQse3JlbGF0ZWRUYXJnZXQ6MH0pKSxVbj1JbihnKHt9LGUse2FuaW1hdGlvbk5hbWU6MCxlbGFwc2VkVGltZTowLHBzZXVkb0VsZW1lbnQ6MH0pKSxCbj1JbihnKHt9LGUse2NsaXBib2FyZERhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuKCJjbGlwYm9hcmREYXRhImluIGU/ZTp3aW5kb3cpLmNsaXBib2FyZERhdGF9fSkpLEZuPUluKGcoe30sZSx7ZGF0YTowfSkpLEhuPXtFc2M6IkVzY2FwZSIsU3BhY2ViYXI6IiAiLExlZnQ6IkFycm93TGVmdCIsVXA6IkFycm93VXAiLFJpZ2h0OiJBcnJvd1JpZ2h0IixEb3duOiJBcnJvd0Rvd24iLERlbDoiRGVsZXRlIixXaW46Ik9TIixNZW51OiJDb250ZXh0TWVudSIsQXBwczoiQ29udGV4dE1lbnUiLFNjcm9sbDoiU2Nyb2xsTG9jayIsTW96UHJpbnRhYmxlS2V5OiJVbmlkZW50aWZpZWQifSxWbj17ODoiQmFja3NwYWNlIiw5OiJUYWIiLDEyOiJDbGVhciIsMTM6IkVudGVyIiwxNjoiU2hpZnQiLDE3OiJDb250cm9sIiwxODoiQWx0IiwxOToiUGF1c2UiLDIwOiJDYXBzTG9jayIsMjc6IkVzY2FwZSIsMzI6IiAiLDMzOiJQYWdlVXAiLDM0OiJQYWdlRG93biIsMzU6IkVuZCIsMzY6IkhvbWUiLDM3OiJBcnJvd0xlZnQiLDM4OiJBcnJvd1VwIiwzOToiQXJyb3dSaWdodCIsNDA6IkFycm93RG93biIsNDU6Ikluc2VydCIsNDY6IkRlbGV0ZSIsMTEyOiJGMSIsMTEzOiJGMiIsMTE0OiJGMyIsMTE1OiJGNCIsMTE2OiJGNSIsMTE3OiJGNiIsMTE4OiJGNyIsMTE5OiJGOCIsMTIwOiJGOSIsMTIxOiJGMTAiLDEyMjoiRjExIiwxMjM6IkYxMiIsMTQ0OiJOdW1Mb2NrIiwxNDU6IlNjcm9sbExvY2siLDIyNDoiTWV0YSJ9LCRuPXtBbHQ6ImFsdEtleSIsQ29udHJvbDoiY3RybEtleSIsTWV0YToibWV0YUtleSIsU2hpZnQ6InNoaWZ0S2V5In07ZnVuY3Rpb24gV24oZSl7dmFyIHQ9dGhpcy5uYXRpdmVFdmVudDtyZXR1cm4gdC5nZXRNb2RpZmllclN0YXRlP3QuZ2V0TW9kaWZpZXJTdGF0ZShlKTohIShlPSRuW2VdKSYmISF0W2VdfWZ1bmN0aW9uIEduKCl7cmV0dXJuIFdufXZhciBxbj1JbihnKHt9LHQse2tleTpmdW5jdGlvbihlKXtpZihlLmtleSl7dmFyIHQ9SG5bZS5rZXldfHxlLmtleTtpZigiVW5pZGVudGlmaWVkIiE9PXQpcmV0dXJuIHR9cmV0dXJuImtleXByZXNzIj09PWUudHlwZT8xMz09PShlPWpuKGUpKT8iRW50ZXIiOlN0cmluZy5mcm9tQ2hhckNvZGUoZSk6ImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP1ZuW2Uua2V5Q29kZV18fCJVbmlkZW50aWZpZWQiOiIifSxjb2RlOjAsbG9jYXRpb246MCxjdHJsS2V5OjAsc2hpZnRLZXk6MCxhbHRLZXk6MCxtZXRhS2V5OjAscmVwZWF0OjAsbG9jYWxlOjAsZ2V0TW9kaWZpZXJTdGF0ZTpHbixjaGFyQ29kZTpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP2puKGUpOjB9LGtleUNvZGU6ZnVuY3Rpb24oZSl7cmV0dXJuImtleWRvd24iPT09ZS50eXBlfHwia2V5dXAiPT09ZS50eXBlP2Uua2V5Q29kZTowfSx3aGljaDpmdW5jdGlvbihlKXtyZXR1cm4ia2V5cHJlc3MiPT09ZS50eXBlP2puKGUpOiJrZXlkb3duIj09PWUudHlwZXx8ImtleXVwIj09PWUudHlwZT9lLmtleUNvZGU6MH19KSksWm49SW4oZyh7fSxyLHtwb2ludGVySWQ6MCx3aWR0aDowLGhlaWdodDowLHByZXNzdXJlOjAsdGFuZ2VudGlhbFByZXNzdXJlOjAsdGlsdFg6MCx0aWx0WTowLHR3aXN0OjAscG9pbnRlclR5cGU6MCxpc1ByaW1hcnk6MH0pKSxYbj1JbihnKHt9LHQse3RvdWNoZXM6MCx0YXJnZXRUb3VjaGVzOjAsY2hhbmdlZFRvdWNoZXM6MCxhbHRLZXk6MCxtZXRhS2V5OjAsY3RybEtleTowLHNoaWZ0S2V5OjAsZ2V0TW9kaWZpZXJTdGF0ZTpHbn0pKSxZbj1JbihnKHt9LGUse3Byb3BlcnR5TmFtZTowLGVsYXBzZWRUaW1lOjAscHNldWRvRWxlbWVudDowfSkpLFFuPUluKGcoe30scix7ZGVsdGFYOmZ1bmN0aW9uKGUpe3JldHVybiJkZWx0YVgiaW4gZT9lLmRlbHRhWDoid2hlZWxEZWx0YVgiaW4gZT8tZS53aGVlbERlbHRhWDowfSxkZWx0YVk6ZnVuY3Rpb24oZSl7cmV0dXJuImRlbHRhWSJpbiBlP2UuZGVsdGFZOiJ3aGVlbERlbHRhWSJpbiBlPy1lLndoZWVsRGVsdGFZOiJ3aGVlbERlbHRhImluIGU/LWUud2hlZWxEZWx0YTowfSxkZWx0YVo6MCxkZWx0YU1vZGU6MH0pKSxLbj1bOSwxMywyNywzMl0sSm49UiYmIkNvbXBvc2l0aW9uRXZlbnQiaW4gd2luZG93LHQ9bnVsbCxlcj0oUiYmImRvY3VtZW50TW9kZSJpbiBkb2N1bWVudCYmKHQ9ZG9jdW1lbnQuZG9jdW1lbnRNb2RlKSxSJiYiVGV4dEV2ZW50ImluIHdpbmRvdyYmIXQpLHRyPVImJighSm58fHQmJjg8dCYmdDw9MTEpLG5yPVN0cmluZy5mcm9tQ2hhckNvZGUoMzIpLHJyPSExO2Z1bmN0aW9uIG9yKGUsdCl7c3dpdGNoKGUpe2Nhc2Uia2V5dXAiOnJldHVybi0xIT09S24uaW5kZXhPZih0LmtleUNvZGUpO2Nhc2Uia2V5ZG93biI6cmV0dXJuIDIyOSE9PXQua2V5Q29kZTtjYXNlImtleXByZXNzIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJmb2N1c291dCI6cmV0dXJuIDE7ZGVmYXVsdDpyZXR1cm59fWZ1bmN0aW9uIGFyKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YoZT1lLmRldGFpbCkmJiJkYXRhImluIGU/ZS5kYXRhOm51bGx9dmFyIGlyPSExO3ZhciBscj17Y29sb3I6ITAsZGF0ZTohMCxkYXRldGltZTohMCwiZGF0ZXRpbWUtbG9jYWwiOiEwLGVtYWlsOiEwLG1vbnRoOiEwLG51bWJlcjohMCxwYXNzd29yZDohMCxyYW5nZTohMCxzZWFyY2g6ITAsdGVsOiEwLHRleHQ6ITAsdGltZTohMCx1cmw6ITAsd2VlazohMH07ZnVuY3Rpb24gY3IoZSl7dmFyIHQ9ZSYmZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybiJpbnB1dCI9PT10P2xyW2UudHlwZV06InRleHRhcmVhIj09PXR9ZnVuY3Rpb24gdXIoZSx0LG4scil7bnQociksMDwodD1hbyh0LCJvbkNoYW5nZSIpKS5sZW5ndGgmJihuPW5ldyBMbigib25DaGFuZ2UiLCJjaGFuZ2UiLG51bGwsbixyKSxlLnB1c2goe2V2ZW50Om4sbGlzdGVuZXJzOnR9KSl9dmFyIHNyPW51bGwsZnI9bnVsbDtmdW5jdGlvbiBkcihlKXtLcihlLDApfWZ1bmN0aW9uIHByKGUpe2lmKFNlKFRvKGUpKSlyZXR1cm4gZX1mdW5jdGlvbiBtcihlLHQpe2lmKCJjaGFuZ2UiPT09ZSlyZXR1cm4gdH12YXIgaHI9ITE7ZnVuY3Rpb24gZ3IoKXtzciYmKHNyLmRldGFjaEV2ZW50KCJvbnByb3BlcnR5Y2hhbmdlIixiciksZnI9c3I9bnVsbCl9ZnVuY3Rpb24gYnIoZSl7dmFyIHQ7InZhbHVlIj09PWUucHJvcGVydHlOYW1lJiZwcihmcikmJih1cih0PVtdLGZyLGUsUWUoZSkpLGx0KGRyLHQpKX1mdW5jdGlvbiB5cihlLHQsbil7ImZvY3VzaW4iPT09ZT8oZ3IoKSxmcj1uLChzcj10KS5hdHRhY2hFdmVudCgib25wcm9wZXJ0eWNoYW5nZSIsYnIpKToiZm9jdXNvdXQiPT09ZSYmZ3IoKX1mdW5jdGlvbiB2cihlKXtpZigic2VsZWN0aW9uY2hhbmdlIj09PWV8fCJrZXl1cCI9PT1lfHwia2V5ZG93biI9PT1lKXJldHVybiBwcihmcil9ZnVuY3Rpb24gd3IoZSx0KXtpZigiY2xpY2siPT09ZSlyZXR1cm4gcHIodCl9ZnVuY3Rpb24geHIoZSx0KXtpZigiaW5wdXQiPT09ZXx8ImNoYW5nZSI9PT1lKXJldHVybiBwcih0KX1SJiYodD1SJiYoKGU9Im9uaW5wdXQiaW4gZG9jdW1lbnQpfHwoKHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLnNldEF0dHJpYnV0ZSgib25pbnB1dCIsInJldHVybjsiKSxlPSJmdW5jdGlvbiI9PXR5cGVvZiByLm9uaW5wdXQpLGUpLGhyPXQmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHw5PGRvY3VtZW50LmRvY3VtZW50TW9kZSkpO3ZhciBrcj0iZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmlzP09iamVjdC5pczpmdW5jdGlvbihlLHQpe3JldHVybiBlPT09dCYmKDAhPT1lfHwxL2U9PTEvdCl8fGUhPWUmJnQhPXR9O2Z1bmN0aW9uIFNyKGUsdCl7aWYoIWtyKGUsdCkpe2lmKCJvYmplY3QiIT10eXBlb2YgZXx8bnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgdHx8bnVsbD09PXQpcmV0dXJuITE7dmFyIG49T2JqZWN0LmtleXMoZSkscj1PYmplY3Qua2V5cyh0KTtpZihuLmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiExO2ZvcihyPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBvPW5bcl07aWYoIVcuY2FsbCh0LG8pfHwha3IoZVtvXSx0W29dKSlyZXR1cm4hMX19cmV0dXJuITB9ZnVuY3Rpb24gQ3IoZSl7Zm9yKDtlJiZlLmZpcnN0Q2hpbGQ7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfWZ1bmN0aW9uIEVyKGUsdCl7dmFyIG4scj1DcihlKTtmb3IoZT0wO3I7KXtpZigzPT09ci5ub2RlVHlwZSl7aWYobj1lK3IudGV4dENvbnRlbnQubGVuZ3RoLGU8PXQmJnQ8PW4pcmV0dXJue25vZGU6cixvZmZzZXQ6dC1lfTtlPW59ZTp7Zm9yKDtyOyl7aWYoci5uZXh0U2libGluZyl7cj1yLm5leHRTaWJsaW5nO2JyZWFrIGV9cj1yLnBhcmVudE5vZGV9cj12b2lkIDB9cj1DcihyKX19ZnVuY3Rpb24gT3IoKXtmb3IodmFyIGU9d2luZG93LHQ9Q2UoKTt0IGluc3RhbmNlb2YgZS5IVE1MSUZyYW1lRWxlbWVudDspe3RyeXt2YXIgbj0ic3RyaW5nIj09dHlwZW9mIHQuY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmfWNhdGNoKGUpe249ITF9aWYoIW4pYnJlYWs7dD1DZSgoZT10LmNvbnRlbnRXaW5kb3cpLmRvY3VtZW50KX1yZXR1cm4gdH1mdW5jdGlvbiBqcihlKXt2YXIgdD1lJiZlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIHQmJigiaW5wdXQiPT09dCYmKCJ0ZXh0Ij09PWUudHlwZXx8InNlYXJjaCI9PT1lLnR5cGV8fCJ0ZWwiPT09ZS50eXBlfHwidXJsIj09PWUudHlwZXx8InBhc3N3b3JkIj09PWUudHlwZSl8fCJ0ZXh0YXJlYSI9PT10fHwidHJ1ZSI9PT1lLmNvbnRlbnRFZGl0YWJsZSl9ZnVuY3Rpb24gQXIoZSl7dmFyIHQsbixyLG89T3IoKSxhPWUuZm9jdXNlZEVsZW0saT1lLnNlbGVjdGlvblJhbmdlO2lmKG8hPT1hJiZhJiZhLm93bmVyRG9jdW1lbnQmJmZ1bmN0aW9uIGUodCxuKXtyZXR1cm4hKCF0fHwhbikmJih0PT09bnx8KCF0fHwzIT09dC5ub2RlVHlwZSkmJihuJiYzPT09bi5ub2RlVHlwZT9lKHQsbi5wYXJlbnROb2RlKToiY29udGFpbnMiaW4gdD90LmNvbnRhaW5zKG4pOiEhdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiYmISEoMTYmdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihuKSkpKX0oYS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxhKSl7bnVsbCE9PWkmJmpyKGEpJiYobz1pLnN0YXJ0LHZvaWQgMD09PShlPWkuZW5kKSYmKGU9byksInNlbGVjdGlvblN0YXJ0ImluIGE/KGEuc2VsZWN0aW9uU3RhcnQ9byxhLnNlbGVjdGlvbkVuZD1NYXRoLm1pbihlLGEudmFsdWUubGVuZ3RoKSk6KGU9KG89YS5vd25lckRvY3VtZW50fHxkb2N1bWVudCkmJm8uZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uJiYoZT1lLmdldFNlbGVjdGlvbigpLG49YS50ZXh0Q29udGVudC5sZW5ndGgsdD1NYXRoLm1pbihpLnN0YXJ0LG4pLGk9dm9pZCAwPT09aS5lbmQ/dDpNYXRoLm1pbihpLmVuZCxuKSwhZS5leHRlbmQmJmk8dCYmKG49aSxpPXQsdD1uKSxuPUVyKGEsdCkscj1FcihhLGkpLG4pJiZyJiYoMSE9PWUucmFuZ2VDb3VudHx8ZS5hbmNob3JOb2RlIT09bi5ub2RlfHxlLmFuY2hvck9mZnNldCE9PW4ub2Zmc2V0fHxlLmZvY3VzTm9kZSE9PXIubm9kZXx8ZS5mb2N1c09mZnNldCE9PXIub2Zmc2V0KSYmKChvPW8uY3JlYXRlUmFuZ2UoKSkuc2V0U3RhcnQobi5ub2RlLG4ub2Zmc2V0KSxlLnJlbW92ZUFsbFJhbmdlcygpLGk8dD8oZS5hZGRSYW5nZShvKSxlLmV4dGVuZChyLm5vZGUsci5vZmZzZXQpKTooby5zZXRFbmQoci5ub2RlLHIub2Zmc2V0KSxlLmFkZFJhbmdlKG8pKSkpLG89W107Zm9yKGU9YTtlPWUucGFyZW50Tm9kZTspMT09PWUubm9kZVR5cGUmJm8ucHVzaCh7ZWxlbWVudDplLGxlZnQ6ZS5zY3JvbGxMZWZ0LHRvcDplLnNjcm9sbFRvcH0pO2ZvcigiZnVuY3Rpb24iPT10eXBlb2YgYS5mb2N1cyYmYS5mb2N1cygpLGE9MDthPG8ubGVuZ3RoO2ErKykoZT1vW2FdKS5lbGVtZW50LnNjcm9sbExlZnQ9ZS5sZWZ0LGUuZWxlbWVudC5zY3JvbGxUb3A9ZS50b3B9fXZhciBQcj1SJiYiZG9jdW1lbnRNb2RlImluIGRvY3VtZW50JiZkb2N1bWVudC5kb2N1bWVudE1vZGU8PTExLElyPW51bGwsX3I9bnVsbCx6cj1udWxsLFRyPSExO2Z1bmN0aW9uIExyKGUsdCxuKXt2YXIgcj1uLndpbmRvdz09PW4/bi5kb2N1bWVudDo5PT09bi5ub2RlVHlwZT9uOm4ub3duZXJEb2N1bWVudDtUcnx8bnVsbD09SXJ8fElyIT09Q2Uocil8fChyPSJzZWxlY3Rpb25TdGFydCJpbihyPUlyKSYmanIocik/e3N0YXJ0OnIuc2VsZWN0aW9uU3RhcnQsZW5kOnIuc2VsZWN0aW9uRW5kfTp7YW5jaG9yTm9kZToocj0oci5vd25lckRvY3VtZW50JiZyLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXd8fHdpbmRvdykuZ2V0U2VsZWN0aW9uKCkpLmFuY2hvck5vZGUsYW5jaG9yT2Zmc2V0OnIuYW5jaG9yT2Zmc2V0LGZvY3VzTm9kZTpyLmZvY3VzTm9kZSxmb2N1c09mZnNldDpyLmZvY3VzT2Zmc2V0fSx6ciYmU3IoenIscikpfHwoenI9ciwwPChyPWFvKF9yLCJvblNlbGVjdCIpKS5sZW5ndGgmJih0PW5ldyBMbigib25TZWxlY3QiLCJzZWxlY3QiLG51bGwsdCxuKSxlLnB1c2goe2V2ZW50OnQsbGlzdGVuZXJzOnJ9KSx0LnRhcmdldD1JcikpfWZ1bmN0aW9uIE1yKGUsdCl7dmFyIG49e307cmV0dXJuIG5bZS50b0xvd2VyQ2FzZSgpXT10LnRvTG93ZXJDYXNlKCksblsiV2Via2l0IitlXT0id2Via2l0Iit0LG5bIk1veiIrZV09Im1veiIrdCxufXZhciBScj17YW5pbWF0aW9uZW5kOk1yKCJBbmltYXRpb24iLCJBbmltYXRpb25FbmQiKSxhbmltYXRpb25pdGVyYXRpb246TXIoIkFuaW1hdGlvbiIsIkFuaW1hdGlvbkl0ZXJhdGlvbiIpLGFuaW1hdGlvbnN0YXJ0Ok1yKCJBbmltYXRpb24iLCJBbmltYXRpb25TdGFydCIpLHRyYW5zaXRpb25lbmQ6TXIoIlRyYW5zaXRpb24iLCJUcmFuc2l0aW9uRW5kIil9LE5yPXt9LERyPXt9O2Z1bmN0aW9uIFVyKGUpe2lmKE5yW2VdKXJldHVybiBOcltlXTtpZihScltlXSl7dmFyIHQsbj1ScltlXTtmb3IodCBpbiBuKWlmKG4uaGFzT3duUHJvcGVydHkodCkmJnQgaW4gRHIpcmV0dXJuIE5yW2VdPW5bdF19cmV0dXJuIGV9UiYmKERyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLnN0eWxlLCJBbmltYXRpb25FdmVudCJpbiB3aW5kb3d8fChkZWxldGUgUnIuYW5pbWF0aW9uZW5kLmFuaW1hdGlvbixkZWxldGUgUnIuYW5pbWF0aW9uaXRlcmF0aW9uLmFuaW1hdGlvbixkZWxldGUgUnIuYW5pbWF0aW9uc3RhcnQuYW5pbWF0aW9uKSwiVHJhbnNpdGlvbkV2ZW50ImluIHdpbmRvd3x8ZGVsZXRlIFJyLnRyYW5zaXRpb25lbmQudHJhbnNpdGlvbik7dmFyIEJyPVVyKCJhbmltYXRpb25lbmQiKSxGcj1VcigiYW5pbWF0aW9uaXRlcmF0aW9uIiksSHI9VXIoImFuaW1hdGlvbnN0YXJ0IiksVnI9VXIoInRyYW5zaXRpb25lbmQiKSwkcj1uZXcgTWFwLFdyPSJhYm9ydCBhdXhDbGljayBjYW5jZWwgY2FuUGxheSBjYW5QbGF5VGhyb3VnaCBjbGljayBjbG9zZSBjb250ZXh0TWVudSBjb3B5IGN1dCBkcmFnIGRyYWdFbmQgZHJhZ0VudGVyIGRyYWdFeGl0IGRyYWdMZWF2ZSBkcmFnT3ZlciBkcmFnU3RhcnQgZHJvcCBkdXJhdGlvbkNoYW5nZSBlbXB0aWVkIGVuY3J5cHRlZCBlbmRlZCBlcnJvciBnb3RQb2ludGVyQ2FwdHVyZSBpbnB1dCBpbnZhbGlkIGtleURvd24ga2V5UHJlc3Mga2V5VXAgbG9hZCBsb2FkZWREYXRhIGxvYWRlZE1ldGFkYXRhIGxvYWRTdGFydCBsb3N0UG9pbnRlckNhcHR1cmUgbW91c2VEb3duIG1vdXNlTW92ZSBtb3VzZU91dCBtb3VzZU92ZXIgbW91c2VVcCBwYXN0ZSBwYXVzZSBwbGF5IHBsYXlpbmcgcG9pbnRlckNhbmNlbCBwb2ludGVyRG93biBwb2ludGVyTW92ZSBwb2ludGVyT3V0IHBvaW50ZXJPdmVyIHBvaW50ZXJVcCBwcm9ncmVzcyByYXRlQ2hhbmdlIHJlc2V0IHJlc2l6ZSBzZWVrZWQgc2Vla2luZyBzdGFsbGVkIHN1Ym1pdCBzdXNwZW5kIHRpbWVVcGRhdGUgdG91Y2hDYW5jZWwgdG91Y2hFbmQgdG91Y2hTdGFydCB2b2x1bWVDaGFuZ2Ugc2Nyb2xsIHRvZ2dsZSB0b3VjaE1vdmUgd2FpdGluZyB3aGVlbCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBHcihlLHQpeyRyLnNldChlLHQpLFYodCxbZV0pfWZvcih2YXIgcXI9MDtxcjxXci5sZW5ndGg7cXIrKyl7dmFyIFpyPVdyW3FyXTtHcihaci50b0xvd2VyQ2FzZSgpLCJvbiIrKFpyWzBdLnRvVXBwZXJDYXNlKCkrWnIuc2xpY2UoMSkpKX1HcihCciwib25BbmltYXRpb25FbmQiKSxHcihGciwib25BbmltYXRpb25JdGVyYXRpb24iKSxHcihIciwib25BbmltYXRpb25TdGFydCIpLEdyKCJkYmxjbGljayIsIm9uRG91YmxlQ2xpY2siKSxHcigiZm9jdXNpbiIsIm9uRm9jdXMiKSxHcigiZm9jdXNvdXQiLCJvbkJsdXIiKSxHcihWciwib25UcmFuc2l0aW9uRW5kIiksJCgib25Nb3VzZUVudGVyIixbIm1vdXNlb3V0IiwibW91c2VvdmVyIl0pLCQoIm9uTW91c2VMZWF2ZSIsWyJtb3VzZW91dCIsIm1vdXNlb3ZlciJdKSwkKCJvblBvaW50ZXJFbnRlciIsWyJwb2ludGVyb3V0IiwicG9pbnRlcm92ZXIiXSksJCgib25Qb2ludGVyTGVhdmUiLFsicG9pbnRlcm91dCIsInBvaW50ZXJvdmVyIl0pLFYoIm9uQ2hhbmdlIiwiY2hhbmdlIGNsaWNrIGZvY3VzaW4gZm9jdXNvdXQgaW5wdXQga2V5ZG93biBrZXl1cCBzZWxlY3Rpb25jaGFuZ2UiLnNwbGl0KCIgIikpLFYoIm9uU2VsZWN0IiwiZm9jdXNvdXQgY29udGV4dG1lbnUgZHJhZ2VuZCBmb2N1c2luIGtleWRvd24ga2V5dXAgbW91c2Vkb3duIG1vdXNldXAgc2VsZWN0aW9uY2hhbmdlIi5zcGxpdCgiICIpKSxWKCJvbkJlZm9yZUlucHV0IixbImNvbXBvc2l0aW9uZW5kIiwia2V5cHJlc3MiLCJ0ZXh0SW5wdXQiLCJwYXN0ZSJdKSxWKCJvbkNvbXBvc2l0aW9uRW5kIiwiY29tcG9zaXRpb25lbmQgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpLFYoIm9uQ29tcG9zaXRpb25TdGFydCIsImNvbXBvc2l0aW9uc3RhcnQgZm9jdXNvdXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBtb3VzZWRvd24iLnNwbGl0KCIgIikpLFYoIm9uQ29tcG9zaXRpb25VcGRhdGUiLCJjb21wb3NpdGlvbnVwZGF0ZSBmb2N1c291dCBrZXlkb3duIGtleXByZXNzIGtleXVwIG1vdXNlZG93biIuc3BsaXQoIiAiKSk7dmFyIFhyPSJhYm9ydCBjYW5wbGF5IGNhbnBsYXl0aHJvdWdoIGR1cmF0aW9uY2hhbmdlIGVtcHRpZWQgZW5jcnlwdGVkIGVuZGVkIGVycm9yIGxvYWRlZGRhdGEgbG9hZGVkbWV0YWRhdGEgbG9hZHN0YXJ0IHBhdXNlIHBsYXkgcGxheWluZyBwcm9ncmVzcyByYXRlY2hhbmdlIHJlc2l6ZSBzZWVrZWQgc2Vla2luZyBzdGFsbGVkIHN1c3BlbmQgdGltZXVwZGF0ZSB2b2x1bWVjaGFuZ2Ugd2FpdGluZyIuc3BsaXQoIiAiKSxZcj1uZXcgU2V0KCJjYW5jZWwgY2xvc2UgaW52YWxpZCBsb2FkIHNjcm9sbCB0b2dnbGUiLnNwbGl0KCIgIikuY29uY2F0KFhyKSk7ZnVuY3Rpb24gUXIoZSx0LG4pe3ZhciByPWUudHlwZXx8InVua25vd24tZXZlbnQiO2UuY3VycmVudFRhcmdldD1uLGZ1bmN0aW9uKCl7dmFyIGU7aHQuYXBwbHkodGhpcyxhcmd1bWVudHMpLHN0JiYoZT1mdCxzdD0hMSxmdD1udWxsLGR0fHwoZHQ9ITAscHQ9ZSkpfShyLHQsdm9pZCAwLGUpLGUuY3VycmVudFRhcmdldD1udWxsfWZ1bmN0aW9uIEtyKGUsdCl7dD0wIT0oNCZ0KTtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIHI9KG89ZVtuXSkuZXZlbnQsbz1vLmxpc3RlbmVycztlOnt2YXIgYT12b2lkIDA7aWYodClmb3IodmFyIGk9by5sZW5ndGgtMTswPD1pO2ktLSl7dmFyIGw9KHU9b1tpXSkuaW5zdGFuY2UsYz11LmN1cnJlbnRUYXJnZXQsdT11Lmxpc3RlbmVyO2lmKGwhPT1hJiZyLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYnJlYWsgZTtRcihyLHUsYyksYT1sfWVsc2UgZm9yKGk9MDtpPG8ubGVuZ3RoO2krKyl7aWYobD0odT1vW2ldKS5pbnN0YW5jZSxjPXUuY3VycmVudFRhcmdldCx1PXUubGlzdGVuZXIsbCE9PWEmJnIuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSlicmVhayBlO1FyKHIsdSxjKSxhPWx9fX1pZihkdCl0aHJvdyBlPXB0LGR0PSExLHB0PW51bGwsZX1mdW5jdGlvbiBzKGUsdCl7dmFyIG49dFtBb10scj1lKyJfX2J1YmJsZSI7KG49dm9pZCAwPT09bj90W0FvXT1uZXcgU2V0Om4pLmhhcyhyKXx8KG5vKHQsZSwyLCExKSxuLmFkZChyKSl9ZnVuY3Rpb24gSnIoZSx0LG4pe3ZhciByPTA7dCYmKHJ8PTQpLG5vKG4sZSxyLHQpfXZhciBlbz0iX3JlYWN0TGlzdGVuaW5nIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKTtmdW5jdGlvbiB0byh0KXt2YXIgZTt0W2VvXXx8KHRbZW9dPSEwLEYuZm9yRWFjaChmdW5jdGlvbihlKXsic2VsZWN0aW9uY2hhbmdlIiE9PWUmJihZci5oYXMoZSl8fEpyKGUsITEsdCksSnIoZSwhMCx0KSl9KSxudWxsPT09KGU9OT09PXQubm9kZVR5cGU/dDp0Lm93bmVyRG9jdW1lbnQpKXx8ZVtlb118fEpyKCJzZWxlY3Rpb25jaGFuZ2UiLCEoZVtlb109ITApLGUpfWZ1bmN0aW9uIG5vKGUsdCxuLHIpe3N3aXRjaChrbih0KSl7Y2FzZSAxOnZhciBvPWJuO2JyZWFrO2Nhc2UgNDpvPXluO2JyZWFrO2RlZmF1bHQ6bz12bn1uPW8uYmluZChudWxsLHQsbixlKSxvPSF1dHx8InRvdWNoc3RhcnQiIT09dCYmInRvdWNobW92ZSIhPT10JiYid2hlZWwiIT09dD92b2lkIDA6ITAscj92b2lkIDAhPT1vP2UuYWRkRXZlbnRMaXN0ZW5lcih0LG4se2NhcHR1cmU6ITAscGFzc2l2ZTpvfSk6ZS5hZGRFdmVudExpc3RlbmVyKHQsbiwhMCk6dm9pZCAwIT09bz9lLmFkZEV2ZW50TGlzdGVuZXIodCxuLHtwYXNzaXZlOm99KTplLmFkZEV2ZW50TGlzdGVuZXIodCxuLCExKX1mdW5jdGlvbiBybyhnLGIseSxlLHQpe3ZhciB2PWU7aWYoMD09KDEmYikmJjA9PSgyJmIpJiZudWxsIT09ZSllOmZvcig7Oyl7aWYobnVsbD09PWUpcmV0dXJuO3ZhciBuPWUudGFnO2lmKDM9PT1ufHw0PT09bil7dmFyIHI9ZS5zdGF0ZU5vZGUuY29udGFpbmVySW5mbztpZihyPT09dHx8OD09PXIubm9kZVR5cGUmJnIucGFyZW50Tm9kZT09PXQpYnJlYWs7aWYoND09PW4pZm9yKG49ZS5yZXR1cm47bnVsbCE9PW47KXt2YXIgbz1uLnRhZztpZigoMz09PW98fDQ9PT1vKSYmKChvPW4uc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pPT09dHx8OD09PW8ubm9kZVR5cGUmJm8ucGFyZW50Tm9kZT09PXQpKXJldHVybjtuPW4ucmV0dXJufWZvcig7bnVsbCE9PXI7KXtpZihudWxsPT09KG49X28ocikpKXJldHVybjtpZig1PT09KG89bi50YWcpfHw2PT09byl7ZT12PW47Y29udGludWUgZX1yPXIucGFyZW50Tm9kZX19ZT1lLnJldHVybn1sdChmdW5jdGlvbigpe3ZhciBlLHQsbixyPXYsbz1RZSh5KSxhPVtdO2U6e3ZhciBpPSRyLmdldChnKTtpZih2b2lkIDAhPT1pKXt2YXIgbD1MbixjPWc7c3dpdGNoKGcpe2Nhc2Uia2V5cHJlc3MiOmlmKDA9PT1qbih5KSlicmVhayBlO2Nhc2Uia2V5ZG93biI6Y2FzZSJrZXl1cCI6bD1xbjticmVhaztjYXNlImZvY3VzaW4iOmM9ImZvY3VzIixsPURuO2JyZWFrO2Nhc2UiZm9jdXNvdXQiOmM9ImJsdXIiLGw9RG47YnJlYWs7Y2FzZSJiZWZvcmVibHVyIjpjYXNlImFmdGVyYmx1ciI6bD1EbjticmVhaztjYXNlImNsaWNrIjppZigyPT09eS5idXR0b24pYnJlYWsgZTtjYXNlImF1eGNsaWNrIjpjYXNlImRibGNsaWNrIjpjYXNlIm1vdXNlZG93biI6Y2FzZSJtb3VzZW1vdmUiOmNhc2UibW91c2V1cCI6Y2FzZSJtb3VzZW91dCI6Y2FzZSJtb3VzZW92ZXIiOmNhc2UiY29udGV4dG1lbnUiOmw9Um47YnJlYWs7Y2FzZSJkcmFnIjpjYXNlImRyYWdlbmQiOmNhc2UiZHJhZ2VudGVyIjpjYXNlImRyYWdleGl0IjpjYXNlImRyYWdsZWF2ZSI6Y2FzZSJkcmFnb3ZlciI6Y2FzZSJkcmFnc3RhcnQiOmNhc2UiZHJvcCI6bD1ObjticmVhaztjYXNlInRvdWNoY2FuY2VsIjpjYXNlInRvdWNoZW5kIjpjYXNlInRvdWNobW92ZSI6Y2FzZSJ0b3VjaHN0YXJ0IjpsPVhuO2JyZWFrO2Nhc2UgQnI6Y2FzZSBGcjpjYXNlIEhyOmw9VW47YnJlYWs7Y2FzZSBWcjpsPVluO2JyZWFrO2Nhc2Uic2Nyb2xsIjpsPU1uO2JyZWFrO2Nhc2Uid2hlZWwiOmw9UW47YnJlYWs7Y2FzZSJjb3B5IjpjYXNlImN1dCI6Y2FzZSJwYXN0ZSI6bD1CbjticmVhaztjYXNlImdvdHBvaW50ZXJjYXB0dXJlIjpjYXNlImxvc3Rwb2ludGVyY2FwdHVyZSI6Y2FzZSJwb2ludGVyY2FuY2VsIjpjYXNlInBvaW50ZXJkb3duIjpjYXNlInBvaW50ZXJtb3ZlIjpjYXNlInBvaW50ZXJvdXQiOmNhc2UicG9pbnRlcm92ZXIiOmNhc2UicG9pbnRlcnVwIjpsPVpufWZvcih2YXIgdT0hKGY9MCE9KDQmYikpJiYic2Nyb2xsIj09PWcscz1mP251bGwhPT1pP2krIkNhcHR1cmUiOm51bGw6aSxmPVtdLGQ9cjtudWxsIT09ZDspe3ZhciBwLG09KHA9ZCkuc3RhdGVOb2RlO2lmKDU9PT1wLnRhZyYmbnVsbCE9PW0mJihwPW0sbnVsbCE9PXMpJiZudWxsIT0obT1jdChkLHMpKSYmZi5wdXNoKG9vKGQsbSxwKSksdSlicmVhaztkPWQucmV0dXJufTA8Zi5sZW5ndGgmJihpPW5ldyBsKGksYyxudWxsLHksbyksYS5wdXNoKHtldmVudDppLGxpc3RlbmVyczpmfSkpfX1pZigwPT0oNyZiKSl7aWYobD0ibW91c2VvdXQiPT09Z3x8InBvaW50ZXJvdXQiPT09ZywoIShpPSJtb3VzZW92ZXIiPT09Z3x8InBvaW50ZXJvdmVyIj09PWcpfHx5PT09WWV8fCEoYz15LnJlbGF0ZWRUYXJnZXR8fHkuZnJvbUVsZW1lbnQpfHwhX28oYykmJiFjW2pvXSkmJihsfHxpKSYmKGk9by53aW5kb3c9PT1vP286KGk9by5vd25lckRvY3VtZW50KT9pLmRlZmF1bHRWaWV3fHxpLnBhcmVudFdpbmRvdzp3aW5kb3csbD8obD1yLG51bGwhPT0oYz0oYz15LnJlbGF0ZWRUYXJnZXR8fHkudG9FbGVtZW50KT9fbyhjKTpudWxsKSYmKGMhPT0odT1ndChjKSl8fDUhPT1jLnRhZyYmNiE9PWMudGFnKSYmKGM9bnVsbCkpOihsPW51bGwsYz1yKSxsIT09Yykpe2lmKGY9Um4sbT0ib25Nb3VzZUxlYXZlIixzPSJvbk1vdXNlRW50ZXIiLGQ9Im1vdXNlIiwicG9pbnRlcm91dCIhPT1nJiYicG9pbnRlcm92ZXIiIT09Z3x8KGY9Wm4sbT0ib25Qb2ludGVyTGVhdmUiLHM9Im9uUG9pbnRlckVudGVyIixkPSJwb2ludGVyIiksdT1udWxsPT1sP2k6VG8obCkscD1udWxsPT1jP2k6VG8oYyksKGk9bmV3IGYobSxkKyJsZWF2ZSIsbCx5LG8pKS50YXJnZXQ9dSxpLnJlbGF0ZWRUYXJnZXQ9cCxtPW51bGwsX28obyk9PT1yJiYoKGY9bmV3IGYocyxkKyJlbnRlciIsYyx5LG8pKS50YXJnZXQ9cCxmLnJlbGF0ZWRUYXJnZXQ9dSxtPWYpLHU9bSxsJiZjKWU6e2ZvcihzPWMsZD0wLHA9Zj1sO3A7cD1pbyhwKSlkKys7Zm9yKHA9MCxtPXM7bTttPWlvKG0pKXArKztmb3IoOzA8ZC1wOylmPWlvKGYpLGQtLTtmb3IoOzA8cC1kOylzPWlvKHMpLHAtLTtmb3IoO2QtLTspe2lmKGY9PT1zfHxudWxsIT09cyYmZj09PXMuYWx0ZXJuYXRlKWJyZWFrIGU7Zj1pbyhmKSxzPWlvKHMpfWY9bnVsbH1lbHNlIGY9bnVsbDtudWxsIT09bCYmbG8oYSxpLGwsZiwhMSksbnVsbCE9PWMmJm51bGwhPT11JiZsbyhhLHUsYyxmLCEwKX1zd2l0Y2goInNlbGVjdCI9PT0obD0oaT1yP1RvKHIpOndpbmRvdykubm9kZU5hbWUmJmkubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl8fCJpbnB1dCI9PT1sJiYiZmlsZSI9PT1pLnR5cGU/ZT1tcjpjcihpKT9ocj9lPXhyOihlPXZyLHQ9eXIpOiEobD1pLm5vZGVOYW1lKXx8ImlucHV0IiE9PWwudG9Mb3dlckNhc2UoKXx8ImNoZWNrYm94IiE9PWkudHlwZSYmInJhZGlvIiE9PWkudHlwZXx8KGU9d3IpLChlPWUmJmUoZyxyKSk/dXIoYSxlLHksbyk6KHQmJnQoZyxpLHIpLCJmb2N1c291dCI9PT1nJiYodD1pLl93cmFwcGVyU3RhdGUpJiZ0LmNvbnRyb2xsZWQmJiJudW1iZXIiPT09aS50eXBlJiZJZShpLCJudW1iZXIiLGkudmFsdWUpKSx0PXI/VG8ocik6d2luZG93LGcpe2Nhc2UiZm9jdXNpbiI6IWNyKHQpJiYidHJ1ZSIhPT10LmNvbnRlbnRFZGl0YWJsZXx8KElyPXQsX3I9cix6cj1udWxsKTticmVhaztjYXNlImZvY3Vzb3V0Ijp6cj1fcj1Jcj1udWxsO2JyZWFrO2Nhc2UibW91c2Vkb3duIjpUcj0hMDticmVhaztjYXNlImNvbnRleHRtZW51IjpjYXNlIm1vdXNldXAiOmNhc2UiZHJhZ2VuZCI6VHI9ITEsTHIoYSx5LG8pO2JyZWFrO2Nhc2Uic2VsZWN0aW9uY2hhbmdlIjppZihQcilicmVhaztjYXNlImtleWRvd24iOmNhc2Uia2V5dXAiOkxyKGEseSxvKX1pZihKbillOntzd2l0Y2goZyl7Y2FzZSJjb21wb3NpdGlvbnN0YXJ0Ijp2YXIgaD0ib25Db21wb3NpdGlvblN0YXJ0IjticmVhayBlO2Nhc2UiY29tcG9zaXRpb25lbmQiOmg9Im9uQ29tcG9zaXRpb25FbmQiO2JyZWFrIGU7Y2FzZSJjb21wb3NpdGlvbnVwZGF0ZSI6aD0ib25Db21wb3NpdGlvblVwZGF0ZSI7YnJlYWsgZX1oPXZvaWQgMH1lbHNlIGlyP29yKGcseSkmJihoPSJvbkNvbXBvc2l0aW9uRW5kIik6ImtleWRvd24iPT09ZyYmMjI5PT09eS5rZXlDb2RlJiYoaD0ib25Db21wb3NpdGlvblN0YXJ0Iik7aCYmKHRyJiYia28iIT09eS5sb2NhbGUmJihpcnx8Im9uQ29tcG9zaXRpb25TdGFydCIhPT1oPyJvbkNvbXBvc2l0aW9uRW5kIj09PWgmJmlyJiYobj1PbigpKTooQ249InZhbHVlImluKFNuPW8pP1NuLnZhbHVlOlNuLnRleHRDb250ZW50LGlyPSEwKSksMDwodD1hbyhyLGgpKS5sZW5ndGgpJiYoaD1uZXcgRm4oaCxnLG51bGwseSxvKSxhLnB1c2goe2V2ZW50OmgsbGlzdGVuZXJzOnR9KSxufHxudWxsIT09KG49YXIoeSkpKSYmKGguZGF0YT1uKSwobj0oZXI/ZnVuY3Rpb24oZSx0KXtzd2l0Y2goZSl7Y2FzZSJjb21wb3NpdGlvbmVuZCI6cmV0dXJuIGFyKHQpO2Nhc2Uia2V5cHJlc3MiOnJldHVybiAzMiE9PXQud2hpY2g/bnVsbDoocnI9ITAsbnIpO2Nhc2UidGV4dElucHV0IjpyZXR1cm4oZT10LmRhdGEpPT09bnImJnJyP251bGw6ZTtkZWZhdWx0OnJldHVybiBudWxsfX06ZnVuY3Rpb24oZSx0KXtpZihpcilyZXR1cm4iY29tcG9zaXRpb25lbmQiPT09ZXx8IUpuJiZvcihlLHQpPyhlPU9uKCksRW49Q249U249bnVsbCxpcj0hMSxlKTpudWxsO3N3aXRjaChlKXtjYXNlInBhc3RlIjpyZXR1cm4gbnVsbDtjYXNlImtleXByZXNzIjppZighKHQuY3RybEtleXx8dC5hbHRLZXl8fHQubWV0YUtleSl8fHQuY3RybEtleSYmdC5hbHRLZXkpe2lmKHQuY2hhciYmMTx0LmNoYXIubGVuZ3RoKXJldHVybiB0LmNoYXI7aWYodC53aGljaClyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZSh0LndoaWNoKX1yZXR1cm4gbnVsbDtjYXNlImNvbXBvc2l0aW9uZW5kIjpyZXR1cm4gdHImJiJrbyIhPT10LmxvY2FsZT9udWxsOnQuZGF0YTtkZWZhdWx0OnJldHVybiBudWxsfX0pKGcseSkpJiYwPChyPWFvKHIsIm9uQmVmb3JlSW5wdXQiKSkubGVuZ3RoJiYobz1uZXcgRm4oIm9uQmVmb3JlSW5wdXQiLCJiZWZvcmVpbnB1dCIsbnVsbCx5LG8pLGEucHVzaCh7ZXZlbnQ6byxsaXN0ZW5lcnM6cn0pLG8uZGF0YT1uKX1LcihhLGIpfSl9ZnVuY3Rpb24gb28oZSx0LG4pe3JldHVybntpbnN0YW5jZTplLGxpc3RlbmVyOnQsY3VycmVudFRhcmdldDpufX1mdW5jdGlvbiBhbyhlLHQpe2Zvcih2YXIgbj10KyJDYXB0dXJlIixyPVtdO251bGwhPT1lOyl7dmFyIG89ZSxhPW8uc3RhdGVOb2RlOzU9PT1vLnRhZyYmbnVsbCE9PWEmJihvPWEsbnVsbCE9KGE9Y3QoZSxuKSkmJnIudW5zaGlmdChvbyhlLGEsbykpLG51bGwhPShhPWN0KGUsdCkpKSYmci5wdXNoKG9vKGUsYSxvKSksZT1lLnJldHVybn1yZXR1cm4gcn1mdW5jdGlvbiBpbyhlKXtpZihudWxsPT09ZSlyZXR1cm4gbnVsbDtmb3IoOyhlPWUucmV0dXJuKSYmNSE9PWUudGFnOyk7cmV0dXJuIGV8fG51bGx9ZnVuY3Rpb24gbG8oZSx0LG4scixvKXtmb3IodmFyIGE9dC5fcmVhY3ROYW1lLGk9W107bnVsbCE9PW4mJm4hPT1yOyl7dmFyIGw9bixjPWwuYWx0ZXJuYXRlLHU9bC5zdGF0ZU5vZGU7aWYobnVsbCE9PWMmJmM9PT1yKWJyZWFrOzU9PT1sLnRhZyYmbnVsbCE9PXUmJihsPXUsbz9udWxsIT0oYz1jdChuLGEpKSYmaS51bnNoaWZ0KG9vKG4sYyxsKSk6bnVsbCE9KGM9Y3QobixhKSkmJmkucHVzaChvbyhuLGMsbCkpKSxuPW4ucmV0dXJufTAhPT1pLmxlbmd0aCYmZS5wdXNoKHtldmVudDp0LGxpc3RlbmVyczppfSl9dmFyIGNvPS9cclxuPy9nLHVvPS9cdTAwMDB8XHVGRkZEL2c7ZnVuY3Rpb24gc28oZSl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgZT9lOiIiK2UpLnJlcGxhY2UoY28sIlxuIikucmVwbGFjZSh1bywiIil9ZnVuY3Rpb24gZm8oZSx0LG4pe2lmKHQ9c28odCksc28oZSkhPT10JiZuKXRocm93IEVycm9yKEQoNDI1KSl9ZnVuY3Rpb24gcG8oKXt9dmFyIG1vPW51bGwsaG89bnVsbDtmdW5jdGlvbiBnbyhlLHQpe3JldHVybiJ0ZXh0YXJlYSI9PT1lfHwibm9zY3JpcHQiPT09ZXx8InN0cmluZyI9PXR5cGVvZiB0LmNoaWxkcmVufHwibnVtYmVyIj09dHlwZW9mIHQuY2hpbGRyZW58fCJvYmplY3QiPT10eXBlb2YgdC5kYW5nZXJvdXNseVNldElubmVySFRNTCYmbnVsbCE9PXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwmJm51bGwhPXQuZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwuX19odG1sfXZhciBibz0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OnZvaWQgMCx5bz0iZnVuY3Rpb24iPT10eXBlb2YgY2xlYXJUaW1lb3V0P2NsZWFyVGltZW91dDp2b2lkIDAsdm89ImZ1bmN0aW9uIj09dHlwZW9mIFByb21pc2U/UHJvbWlzZTp2b2lkIDAsd289ImZ1bmN0aW9uIj09dHlwZW9mIHF1ZXVlTWljcm90YXNrP3F1ZXVlTWljcm90YXNrOnZvaWQgMCE9PXZvP2Z1bmN0aW9uKGUpe3JldHVybiB2by5yZXNvbHZlKG51bGwpLnRoZW4oZSkuY2F0Y2goeG8pfTpibztmdW5jdGlvbiB4byhlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfWZ1bmN0aW9uIGtvKGUsdCl7dmFyIG49dCxyPTA7ZG97dmFyIG89bi5uZXh0U2libGluZztpZihlLnJlbW92ZUNoaWxkKG4pLG8mJjg9PT1vLm5vZGVUeXBlKWlmKCIvJCI9PT0obj1vLmRhdGEpKXtpZigwPT09cilyZXR1cm4gZS5yZW1vdmVDaGlsZChvKSx2b2lkIG1uKHQpO3ItLX1lbHNlIiQiIT09biYmIiQ/IiE9PW4mJiIkISIhPT1ufHxyKyt9d2hpbGUobj1vKTttbih0KX1mdW5jdGlvbiBTbyhlKXtmb3IoO251bGwhPWU7ZT1lLm5leHRTaWJsaW5nKXt2YXIgdD1lLm5vZGVUeXBlO2lmKDE9PT10fHwzPT09dClicmVhaztpZig4PT09dCl7aWYoIiQiPT09KHQ9ZS5kYXRhKXx8IiQhIj09PXR8fCIkPyI9PT10KWJyZWFrO2lmKCIvJCI9PT10KXJldHVybiBudWxsfX1yZXR1cm4gZX1mdW5jdGlvbiBDbyhlKXtlPWUucHJldmlvdXNTaWJsaW5nO2Zvcih2YXIgdD0wO2U7KXtpZig4PT09ZS5ub2RlVHlwZSl7dmFyIG49ZS5kYXRhO2lmKCIkIj09PW58fCIkISI9PT1ufHwiJD8iPT09bil7aWYoMD09PXQpcmV0dXJuIGU7dC0tfWVsc2UiLyQiPT09biYmdCsrfWU9ZS5wcmV2aW91c1NpYmxpbmd9cmV0dXJuIG51bGx9dmFyIHI9TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMiksRW89Il9fcmVhY3RGaWJlciQiK3IsT289Il9fcmVhY3RQcm9wcyQiK3Isam89Il9fcmVhY3RDb250YWluZXIkIityLEFvPSJfX3JlYWN0RXZlbnRzJCIrcixQbz0iX19yZWFjdExpc3RlbmVycyQiK3IsSW89Il9fcmVhY3RIYW5kbGVzJCIrcjtmdW5jdGlvbiBfbyhlKXt2YXIgdD1lW0VvXTtpZih0KXJldHVybiB0O2Zvcih2YXIgbj1lLnBhcmVudE5vZGU7bjspe2lmKHQ9bltqb118fG5bRW9dKXtpZihuPXQuYWx0ZXJuYXRlLG51bGwhPT10LmNoaWxkfHxudWxsIT09biYmbnVsbCE9PW4uY2hpbGQpZm9yKGU9Q28oZSk7bnVsbCE9PWU7KXtpZihuPWVbRW9dKXJldHVybiBuO2U9Q28oZSl9cmV0dXJuIHR9bj0oZT1uKS5wYXJlbnROb2RlfXJldHVybiBudWxsfWZ1bmN0aW9uIHpvKGUpe3JldHVybiEoZT1lW0VvXXx8ZVtqb10pfHw1IT09ZS50YWcmJjYhPT1lLnRhZyYmMTMhPT1lLnRhZyYmMyE9PWUudGFnP251bGw6ZX1mdW5jdGlvbiBUbyhlKXtpZig1PT09ZS50YWd8fDY9PT1lLnRhZylyZXR1cm4gZS5zdGF0ZU5vZGU7dGhyb3cgRXJyb3IoRCgzMykpfWZ1bmN0aW9uIExvKGUpe3JldHVybiBlW09vXXx8bnVsbH12YXIgTW89W10sUm89LTE7ZnVuY3Rpb24gTm8oZSl7cmV0dXJue2N1cnJlbnQ6ZX19ZnVuY3Rpb24gdShlKXtSbzwwfHwoZS5jdXJyZW50PU1vW1JvXSxNb1tSb109bnVsbCxSby0tKX1mdW5jdGlvbiBiKGUsdCl7TW9bKytSb109ZS5jdXJyZW50LGUuY3VycmVudD10fXZhciBEbz17fSx5PU5vKERvKSx2PU5vKCExKSxVbz1EbztmdW5jdGlvbiBCbyhlLHQpe3ZhciBuPWUudHlwZS5jb250ZXh0VHlwZXM7aWYoIW4pcmV0dXJuIERvO3ZhciByPWUuc3RhdGVOb2RlO2lmKHImJnIuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD09PXQpcmV0dXJuIHIuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ7dmFyIG8sYT17fTtmb3IobyBpbiBuKWFbb109dFtvXTtyZXR1cm4gciYmKChlPWUuc3RhdGVOb2RlKS5fX3JlYWN0SW50ZXJuYWxNZW1vaXplZFVubWFza2VkQ2hpbGRDb250ZXh0PXQsZS5fX3JlYWN0SW50ZXJuYWxNZW1vaXplZE1hc2tlZENoaWxkQ29udGV4dD1hKSxhfWZ1bmN0aW9uIHcoZSl7cmV0dXJuIG51bGwhPShlPWUuY2hpbGRDb250ZXh0VHlwZXMpfWZ1bmN0aW9uIEZvKCl7dSh2KSx1KHkpfWZ1bmN0aW9uIEhvKGUsdCxuKXtpZih5LmN1cnJlbnQhPT1Ebyl0aHJvdyBFcnJvcihEKDE2OCkpO2IoeSx0KSxiKHYsbil9ZnVuY3Rpb24gVm8oZSx0LG4pe3ZhciByLG89ZS5zdGF0ZU5vZGU7aWYodD10LmNoaWxkQ29udGV4dFR5cGVzLCJmdW5jdGlvbiIhPXR5cGVvZiBvLmdldENoaWxkQ29udGV4dClyZXR1cm4gbjtmb3IociBpbiBvPW8uZ2V0Q2hpbGRDb250ZXh0KCkpaWYoIShyIGluIHQpKXRocm93IEVycm9yKEQoMTA4LHZlKGUpfHwiVW5rbm93biIscikpO3JldHVybiBnKHt9LG4sbyl9ZnVuY3Rpb24gJG8oZSl7ZT0oZT1lLnN0YXRlTm9kZSkmJmUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHR8fERvLFVvPXkuY3VycmVudCxiKHksZSksYih2LHYuY3VycmVudCl9ZnVuY3Rpb24gV28oZSx0LG4pe3ZhciByPWUuc3RhdGVOb2RlO2lmKCFyKXRocm93IEVycm9yKEQoMTY5KSk7bj8oZT1WbyhlLHQsVW8pLHIuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNZXJnZWRDaGlsZENvbnRleHQ9ZSx1KHYpLHUoeSksYih5LGUpKTp1KHYpLGIodixuKX12YXIgR289bnVsbCxxbz0hMSxabz0hMTtmdW5jdGlvbiBYbyhlKXtudWxsPT09R28/R289W2VdOkdvLnB1c2goZSl9ZnVuY3Rpb24gWW8oKXtpZighWm8mJm51bGwhPT1Hbyl7Wm89ITA7dmFyIHQ9MCxlPXg7dHJ5e3ZhciBuPUdvO2Zvcih4PTE7dDxuLmxlbmd0aDt0KyspZm9yKHZhciByPW5bdF07bnVsbCE9PShyPXIoITApKTspO0dvPW51bGwscW89ITF9Y2F0Y2goZSl7dGhyb3cgbnVsbCE9PUdvJiYoR289R28uc2xpY2UodCsxKSksd3QoRXQsWW8pLGV9ZmluYWxseXt4PWUsWm89ITF9fXJldHVybiBudWxsfXZhciBRbz1bXSxLbz0wLEpvPW51bGwsZWE9MCx0YT1bXSxuYT0wLHJhPW51bGwsb2E9MSxhYT0iIjtmdW5jdGlvbiBpYShlLHQpe1FvW0tvKytdPWVhLFFvW0tvKytdPUpvLEpvPWUsZWE9dH1mdW5jdGlvbiBsYShlLHQsbil7dGFbbmErK109b2EsdGFbbmErK109YWEsdGFbbmErK109cmEscmE9ZTt2YXIgcixvPW9hLGE9KGU9YWEsMzItenQobyktMSksaT0obyY9figxPDxhKSxuKz0xLDMyLXp0KHQpK2EpO2FhPTMwPGk/KGk9KG8mKDE8PChyPWEtYSU1KSktMSkudG9TdHJpbmcoMzIpLG8+Pj1yLGEtPXIsb2E9MTw8MzItenQodCkrYXxuPDxhfG8saStlKToob2E9MTw8aXxuPDxhfG8sZSl9ZnVuY3Rpb24gY2EoZSl7bnVsbCE9PWUucmV0dXJuJiYoaWEoZSwxKSxsYShlLDEsMCkpfWZ1bmN0aW9uIHVhKGUpe2Zvcig7ZT09PUpvOylKbz1Rb1stLUtvXSxRb1tLb109bnVsbCxlYT1Rb1stLUtvXSxRb1tLb109bnVsbDtmb3IoO2U9PT1yYTspcmE9dGFbLS1uYV0sdGFbbmFdPW51bGwsYWE9dGFbLS1uYV0sdGFbbmFdPW51bGwsb2E9dGFbLS1uYV0sdGFbbmFdPW51bGx9dmFyIHNhPW51bGwsaz1udWxsLFU9ITEsZmE9bnVsbDtmdW5jdGlvbiBkYShlLHQpe3ZhciBuPW51KDUsbnVsbCxudWxsLDApO24uZWxlbWVudFR5cGU9IkRFTEVURUQiLG4uc3RhdGVOb2RlPXQsbnVsbD09PSh0PShuLnJldHVybj1lKS5kZWxldGlvbnMpPyhlLmRlbGV0aW9ucz1bbl0sZS5mbGFnc3w9MTYpOnQucHVzaChuKX1mdW5jdGlvbiBwYShlLHQpe3N3aXRjaChlLnRhZyl7Y2FzZSA1OnZhciBuPWUudHlwZTtyZXR1cm4gbnVsbCE9PSh0PTEhPT10Lm5vZGVUeXBlfHxuLnRvTG93ZXJDYXNlKCkhPT10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk/bnVsbDp0KSYmKGUuc3RhdGVOb2RlPXQsc2E9ZSxrPVNvKHQuZmlyc3RDaGlsZCksMSk7Y2FzZSA2OnJldHVybiBudWxsIT09KHQ9IiI9PT1lLnBlbmRpbmdQcm9wc3x8MyE9PXQubm9kZVR5cGU/bnVsbDp0KSYmKGUuc3RhdGVOb2RlPXQsc2E9ZSxrPW51bGwsMSk7Y2FzZSAxMzpyZXR1cm4gbnVsbCE9PSh0PTghPT10Lm5vZGVUeXBlP251bGw6dCkmJihuPW51bGwhPT1yYT97aWQ6b2Esb3ZlcmZsb3c6YWF9Om51bGwsZS5tZW1vaXplZFN0YXRlPXtkZWh5ZHJhdGVkOnQsdHJlZUNvbnRleHQ6bixyZXRyeUxhbmU6MTA3Mzc0MTgyNH0sKG49bnUoMTgsbnVsbCxudWxsLDApKS5zdGF0ZU5vZGU9dCwobi5yZXR1cm49ZSkuY2hpbGQ9bixzYT1lLGs9bnVsbCwxKTtkZWZhdWx0OnJldHVybn19ZnVuY3Rpb24gbWEoZSl7cmV0dXJuIDAhPSgxJmUubW9kZSkmJjA9PSgxMjgmZS5mbGFncyl9ZnVuY3Rpb24gaGEoZSl7aWYoVSlpZihrKXt2YXIgdD1rO2lmKCFwYShlLGspKXtpZihtYShlKSl0aHJvdyBFcnJvcihEKDQxOCkpO3ZhciBuPVNvKHQubmV4dFNpYmxpbmcpLHI9c2E7biYmcGEoZSxuKT9kYShyLHQpOihlLmZsYWdzPS00MDk3JmUuZmxhZ3N8MixVPSExLHNhPWUpfX1lbHNle2lmKG1hKGUpKXRocm93IEVycm9yKEQoNDE4KSk7ZS5mbGFncz0tNDA5NyZlLmZsYWdzfDIsVT0hMSxzYT1lfX1mdW5jdGlvbiBnYShlKXtmb3IoZT1lLnJldHVybjtudWxsIT09ZSYmNSE9PWUudGFnJiYzIT09ZS50YWcmJjEzIT09ZS50YWc7KWU9ZS5yZXR1cm47c2E9ZX1mdW5jdGlvbiBiYShlKXtpZihlIT09c2EpcmV0dXJuITE7aWYoIVUpcmV0dXJuIGdhKGUpLCEoVT0hMCk7dmFyIHQ7aWYodD0odD0odD0zIT09ZS50YWcpJiYhKHQ9NSE9PWUudGFnKT8iaGVhZCIhPT0odD1lLnR5cGUpJiYiYm9keSIhPT10JiYhZ28oZS50eXBlLGUubWVtb2l6ZWRQcm9wcyk6dCkmJmspe2lmKG1hKGUpKXRocm93IHlhKCksRXJyb3IoRCg0MTgpKTtmb3IoO3Q7KWRhKGUsdCksdD1Tbyh0Lm5leHRTaWJsaW5nKX1pZihnYShlKSwxMz09PWUudGFnKXtpZighKGU9bnVsbCE9PShlPWUubWVtb2l6ZWRTdGF0ZSk/ZS5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKEQoMzE3KSk7ZTp7Zm9yKGU9ZS5uZXh0U2libGluZyx0PTA7ZTspe2lmKDg9PT1lLm5vZGVUeXBlKXt2YXIgbj1lLmRhdGE7aWYoIi8kIj09PW4pe2lmKDA9PT10KXtrPVNvKGUubmV4dFNpYmxpbmcpO2JyZWFrIGV9dC0tfWVsc2UiJCIhPT1uJiYiJCEiIT09biYmIiQ/IiE9PW58fHQrK31lPWUubmV4dFNpYmxpbmd9az1udWxsfX1lbHNlIGs9c2E/U28oZS5zdGF0ZU5vZGUubmV4dFNpYmxpbmcpOm51bGw7cmV0dXJuITB9ZnVuY3Rpb24geWEoKXtmb3IodmFyIGU9aztlOyllPVNvKGUubmV4dFNpYmxpbmcpfWZ1bmN0aW9uIHZhKCl7az1zYT1udWxsLFU9ITF9ZnVuY3Rpb24gd2EoZSl7bnVsbD09PWZhP2ZhPVtlXTpmYS5wdXNoKGUpfXZhciB4YT1KLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnO2Z1bmN0aW9uIGthKGUsdCl7aWYoZSYmZS5kZWZhdWx0UHJvcHMpZm9yKHZhciBuIGluIHQ9Zyh7fSx0KSxlPWUuZGVmYXVsdFByb3BzKXZvaWQgMD09PXRbbl0mJih0W25dPWVbbl0pO3JldHVybiB0fXZhciBTYT1ObyhudWxsKSxDYT1udWxsLEVhPW51bGwsT2E9bnVsbDtmdW5jdGlvbiBqYSgpe09hPUVhPUNhPW51bGx9ZnVuY3Rpb24gQWEoZSl7dmFyIHQ9U2EuY3VycmVudDt1KFNhKSxlLl9jdXJyZW50VmFsdWU9dH1mdW5jdGlvbiBQYShlLHQsbil7Zm9yKDtudWxsIT09ZTspe3ZhciByPWUuYWx0ZXJuYXRlO2lmKChlLmNoaWxkTGFuZXMmdCkhPT10PyhlLmNoaWxkTGFuZXN8PXQsbnVsbCE9PXImJihyLmNoaWxkTGFuZXN8PXQpKTpudWxsIT09ciYmKHIuY2hpbGRMYW5lcyZ0KSE9PXQmJihyLmNoaWxkTGFuZXN8PXQpLGU9PT1uKWJyZWFrO2U9ZS5yZXR1cm59fWZ1bmN0aW9uIElhKGUsdCl7KE9hPUVhPW51bGwpIT09KGU9KENhPWUpLmRlcGVuZGVuY2llcykmJm51bGwhPT1lLmZpcnN0Q29udGV4dCYmKDAhPShlLmxhbmVzJnQpJiYoaj0hMCksZS5maXJzdENvbnRleHQ9bnVsbCl9ZnVuY3Rpb24gX2EoZSl7dmFyIHQ9ZS5fY3VycmVudFZhbHVlO2lmKE9hIT09ZSlpZihlPXtjb250ZXh0OmUsbWVtb2l6ZWRWYWx1ZTp0LG5leHQ6bnVsbH0sbnVsbD09PUVhKXtpZihudWxsPT09Q2EpdGhyb3cgRXJyb3IoRCgzMDgpKTtFYT1lLENhLmRlcGVuZGVuY2llcz17bGFuZXM6MCxmaXJzdENvbnRleHQ6ZX19ZWxzZSBFYT1FYS5uZXh0PWU7cmV0dXJuIHR9dmFyIHphPW51bGw7ZnVuY3Rpb24gVGEoZSl7bnVsbD09PXphP3phPVtlXTp6YS5wdXNoKGUpfWZ1bmN0aW9uIExhKGUsdCxuLHIpe3ZhciBvPXQuaW50ZXJsZWF2ZWQ7cmV0dXJuIG51bGw9PT1vPyhuLm5leHQ9bixUYSh0KSk6KG4ubmV4dD1vLm5leHQsby5uZXh0PW4pLHQuaW50ZXJsZWF2ZWQ9bixNYShlLHIpfWZ1bmN0aW9uIE1hKGUsdCl7ZS5sYW5lc3w9dDt2YXIgbj1lLmFsdGVybmF0ZTtmb3IobnVsbCE9PW4mJihuLmxhbmVzfD10KSxlPShuPWUpLnJldHVybjtudWxsIT09ZTspZS5jaGlsZExhbmVzfD10LG51bGwhPT0obj1lLmFsdGVybmF0ZSkmJihuLmNoaWxkTGFuZXN8PXQpLGU9KG49ZSkucmV0dXJuO3JldHVybiAzPT09bi50YWc/bi5zdGF0ZU5vZGU6bnVsbH12YXIgUmE9ITE7ZnVuY3Rpb24gTmEoZSl7ZS51cGRhdGVRdWV1ZT17YmFzZVN0YXRlOmUubWVtb2l6ZWRTdGF0ZSxmaXJzdEJhc2VVcGRhdGU6bnVsbCxsYXN0QmFzZVVwZGF0ZTpudWxsLHNoYXJlZDp7cGVuZGluZzpudWxsLGludGVybGVhdmVkOm51bGwsbGFuZXM6MH0sZWZmZWN0czpudWxsfX1mdW5jdGlvbiBEYShlLHQpe2U9ZS51cGRhdGVRdWV1ZSx0LnVwZGF0ZVF1ZXVlPT09ZSYmKHQudXBkYXRlUXVldWU9e2Jhc2VTdGF0ZTplLmJhc2VTdGF0ZSxmaXJzdEJhc2VVcGRhdGU6ZS5maXJzdEJhc2VVcGRhdGUsbGFzdEJhc2VVcGRhdGU6ZS5sYXN0QmFzZVVwZGF0ZSxzaGFyZWQ6ZS5zaGFyZWQsZWZmZWN0czplLmVmZmVjdHN9KX1mdW5jdGlvbiBVYShlLHQpe3JldHVybntldmVudFRpbWU6ZSxsYW5lOnQsdGFnOjAscGF5bG9hZDpudWxsLGNhbGxiYWNrOm51bGwsbmV4dDpudWxsfX1mdW5jdGlvbiBCYShlLHQsbil7dmFyIHIsbz1lLnVwZGF0ZVF1ZXVlO3JldHVybiBudWxsPT09bz9udWxsOihvPW8uc2hhcmVkLDAhPSgyJl8pPyhudWxsPT09KHI9by5wZW5kaW5nKT90Lm5leHQ9dDoodC5uZXh0PXIubmV4dCxyLm5leHQ9dCksby5wZW5kaW5nPXQpOihudWxsPT09KHI9by5pbnRlcmxlYXZlZCk/KHQubmV4dD10LFRhKG8pKToodC5uZXh0PXIubmV4dCxyLm5leHQ9dCksby5pbnRlcmxlYXZlZD10KSxNYShlLG4pKX1mdW5jdGlvbiBGYShlLHQsbil7dmFyIHI7bnVsbCE9PSh0PXQudXBkYXRlUXVldWUpJiYodD10LnNoYXJlZCwwIT0oNDE5NDI0MCZuKSkmJihyPXQubGFuZXMsciY9ZS5wZW5kaW5nTGFuZXMsJHQoZSx0LmxhbmVzPW58PXIpKX1mdW5jdGlvbiBIYShlLHQpe3ZhciBuPWUudXBkYXRlUXVldWUscj1lLmFsdGVybmF0ZTtpZihudWxsIT09ciYmbj09PShyPXIudXBkYXRlUXVldWUpKXt2YXIgbz1udWxsLGE9bnVsbDtpZihudWxsIT09KG49bi5maXJzdEJhc2VVcGRhdGUpKXtkb3t2YXIgaT17ZXZlbnRUaW1lOm4uZXZlbnRUaW1lLGxhbmU6bi5sYW5lLHRhZzpuLnRhZyxwYXlsb2FkOm4ucGF5bG9hZCxjYWxsYmFjazpuLmNhbGxiYWNrLG5leHQ6bnVsbH19d2hpbGUobnVsbD09PWE/bz1hPWk6YT1hLm5leHQ9aSxudWxsIT09KG49bi5uZXh0KSk7bnVsbD09PWE/bz1hPXQ6YT1hLm5leHQ9dH1lbHNlIG89YT10O249e2Jhc2VTdGF0ZTpyLmJhc2VTdGF0ZSxmaXJzdEJhc2VVcGRhdGU6byxsYXN0QmFzZVVwZGF0ZTphLHNoYXJlZDpyLnNoYXJlZCxlZmZlY3RzOnIuZWZmZWN0c30sZS51cGRhdGVRdWV1ZT1ufWVsc2UgbnVsbD09PShlPW4ubGFzdEJhc2VVcGRhdGUpP24uZmlyc3RCYXNlVXBkYXRlPXQ6ZS5uZXh0PXQsbi5sYXN0QmFzZVVwZGF0ZT10fWZ1bmN0aW9uIFZhKGUsdCxuLHIpe3ZhciBvLGEsaT1lLnVwZGF0ZVF1ZXVlLGw9KFJhPSExLGkuZmlyc3RCYXNlVXBkYXRlKSxjPWkubGFzdEJhc2VVcGRhdGU7aWYobnVsbCE9PShmPWkuc2hhcmVkLnBlbmRpbmcpJiYoaS5zaGFyZWQucGVuZGluZz1udWxsLGE9KG89ZikubmV4dCwoby5uZXh0PW51bGwpPT09Yz9sPWE6Yy5uZXh0PWEsYz1vLG51bGwhPT0ocz1lLmFsdGVybmF0ZSkpJiYoZj0ocz1zLnVwZGF0ZVF1ZXVlKS5sYXN0QmFzZVVwZGF0ZSkhPT1jJiYobnVsbD09PWY/cy5maXJzdEJhc2VVcGRhdGU9YTpmLm5leHQ9YSxzLmxhc3RCYXNlVXBkYXRlPW8pLG51bGwhPT1sKXtmb3IodmFyIHU9aS5iYXNlU3RhdGUsYz0wLHM9YT1vPW51bGwsZj1sOzspe3ZhciBkPWYubGFuZSxwPWYuZXZlbnRUaW1lO2lmKChyJmQpPT09ZCl7bnVsbCE9PXMmJihzPXMubmV4dD17ZXZlbnRUaW1lOnAsbGFuZTowLHRhZzpmLnRhZyxwYXlsb2FkOmYucGF5bG9hZCxjYWxsYmFjazpmLmNhbGxiYWNrLG5leHQ6bnVsbH0pO2U6e3ZhciBtPWUsaD1mLGQ9dCxwPW47c3dpdGNoKGgudGFnKXtjYXNlIDE6aWYoImZ1bmN0aW9uIj09dHlwZW9mKG09aC5wYXlsb2FkKSl7dT1tLmNhbGwocCx1LGQpO2JyZWFrIGV9dT1tO2JyZWFrIGU7Y2FzZSAzOm0uZmxhZ3M9LTY1NTM3Jm0uZmxhZ3N8MTI4O2Nhc2UgMDppZihudWxsPT0oZD0iZnVuY3Rpb24iPT10eXBlb2YobT1oLnBheWxvYWQpP20uY2FsbChwLHUsZCk6bSkpYnJlYWsgZTt1PWcoe30sdSxkKTticmVhayBlO2Nhc2UgMjpSYT0hMH19bnVsbCE9PWYuY2FsbGJhY2smJjAhPT1mLmxhbmUmJihlLmZsYWdzfD02NCxudWxsPT09KGQ9aS5lZmZlY3RzKT9pLmVmZmVjdHM9W2ZdOmQucHVzaChmKSl9ZWxzZSBwPXtldmVudFRpbWU6cCxsYW5lOmQsdGFnOmYudGFnLHBheWxvYWQ6Zi5wYXlsb2FkLGNhbGxiYWNrOmYuY2FsbGJhY2ssbmV4dDpudWxsfSxudWxsPT09cz8oYT1zPXAsbz11KTpzPXMubmV4dD1wLGN8PWQ7aWYobnVsbD09PShmPWYubmV4dCkpe2lmKG51bGw9PT0oZj1pLnNoYXJlZC5wZW5kaW5nKSlicmVhaztmPShkPWYpLm5leHQsZC5uZXh0PW51bGwsaS5sYXN0QmFzZVVwZGF0ZT1kLGkuc2hhcmVkLnBlbmRpbmc9bnVsbH19aWYobnVsbD09PXMmJihvPXUpLGkuYmFzZVN0YXRlPW8saS5maXJzdEJhc2VVcGRhdGU9YSxpLmxhc3RCYXNlVXBkYXRlPXMsbnVsbCE9PSh0PWkuc2hhcmVkLmludGVybGVhdmVkKSlmb3IoaT10O2N8PWkubGFuZSwoaT1pLm5leHQpIT09dDspO2Vsc2UgbnVsbD09PWwmJihpLnNoYXJlZC5sYW5lcz0wKTtoY3w9YyxlLmxhbmVzPWMsZS5tZW1vaXplZFN0YXRlPXV9fWZ1bmN0aW9uICRhKGUsdCxuKXtpZihlPXQuZWZmZWN0cywodC5lZmZlY3RzPW51bGwpIT09ZSlmb3IodD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgcj1lW3RdLG89ci5jYWxsYmFjaztpZihudWxsIT09byl7aWYoci5jYWxsYmFjaz1udWxsLHI9biwiZnVuY3Rpb24iIT10eXBlb2Ygbyl0aHJvdyBFcnJvcihEKDE5MSxvKSk7by5jYWxsKHIpfX19dmFyIFdhPShuZXcgTi5Db21wb25lbnQpLnJlZnM7ZnVuY3Rpb24gR2EoZSx0LG4scil7bj1udWxsPT0obj1uKHIsdD1lLm1lbW9pemVkU3RhdGUpKT90Omcoe30sdCxuKSxlLm1lbW9pemVkU3RhdGU9biwwPT09ZS5sYW5lcyYmKGUudXBkYXRlUXVldWUuYmFzZVN0YXRlPW4pfXZhciBxYT17aXNNb3VudGVkOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5fcmVhY3RJbnRlcm5hbHMpJiZndChlKT09PWV9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbihlLHQsbil7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgcj1tKCksbz16YyhlKSxhPVVhKHIsbyk7YS5wYXlsb2FkPXQsbnVsbCE9biYmKGEuY2FsbGJhY2s9biksbnVsbCE9PSh0PUJhKGUsYSxvKSkmJihUYyh0LGUsbyxyKSxGYSh0LGUsbykpfSxlbnF1ZXVlUmVwbGFjZVN0YXRlOmZ1bmN0aW9uKGUsdCxuKXtlPWUuX3JlYWN0SW50ZXJuYWxzO3ZhciByPW0oKSxvPXpjKGUpLGE9VWEocixvKTthLnRhZz0xLGEucGF5bG9hZD10LG51bGwhPW4mJihhLmNhbGxiYWNrPW4pLG51bGwhPT0odD1CYShlLGEsbykpJiYoVGModCxlLG8sciksRmEodCxlLG8pKX0sZW5xdWV1ZUZvcmNlVXBkYXRlOmZ1bmN0aW9uKGUsdCl7ZT1lLl9yZWFjdEludGVybmFsczt2YXIgbj1tKCkscj16YyhlKSxvPVVhKG4scik7by50YWc9MixudWxsIT10JiYoby5jYWxsYmFjaz10KSxudWxsIT09KHQ9QmEoZSxvLHIpKSYmKFRjKHQsZSxyLG4pLEZhKHQsZSxyKSl9fTtmdW5jdGlvbiBaYShlLHQsbixyLG8sYSxpKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YoZT1lLnN0YXRlTm9kZSkuc2hvdWxkQ29tcG9uZW50VXBkYXRlP2Uuc2hvdWxkQ29tcG9uZW50VXBkYXRlKHIsYSxpKTohKHQucHJvdG90eXBlJiZ0LnByb3RvdHlwZS5pc1B1cmVSZWFjdENvbXBvbmVudCYmU3IobixyKSYmU3IobyxhKSl9ZnVuY3Rpb24gWGEoZSx0LG4pe3ZhciByPSExLG89RG8sYT10LmNvbnRleHRUeXBlO3Q9bmV3IHQobixhPSJvYmplY3QiPT10eXBlb2YgYSYmbnVsbCE9PWE/X2EoYSk6KG89dyh0KT9Vbzp5LmN1cnJlbnQsKHI9bnVsbCE9KHI9dC5jb250ZXh0VHlwZXMpKT9CbyhlLG8pOkRvKSksZS5tZW1vaXplZFN0YXRlPW51bGwhPT10LnN0YXRlJiZ2b2lkIDAhPT10LnN0YXRlP3Quc3RhdGU6bnVsbCx0LnVwZGF0ZXI9cWEsKGUuc3RhdGVOb2RlPXQpLl9yZWFjdEludGVybmFscz1lLHImJigoZT1lLnN0YXRlTm9kZSkuX19yZWFjdEludGVybmFsTWVtb2l6ZWRVbm1hc2tlZENoaWxkQ29udGV4dD1vLGUuX19yZWFjdEludGVybmFsTWVtb2l6ZWRNYXNrZWRDaGlsZENvbnRleHQ9YSl9ZnVuY3Rpb24gWWEoZSx0LG4scil7ZT10LnN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZiB0LmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJnQuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyhuLHIpLCJmdW5jdGlvbiI9PXR5cGVvZiB0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzJiZ0LlVOU0FGRV9jb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzKG4sciksdC5zdGF0ZSE9PWUmJnFhLmVucXVldWVSZXBsYWNlU3RhdGUodCx0LnN0YXRlLG51bGwpfWZ1bmN0aW9uIFFhKGUsdCxuLHIpe3ZhciBvPWUuc3RhdGVOb2RlLGE9KG8ucHJvcHM9bixvLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxvLnJlZnM9V2EsTmEoZSksdC5jb250ZXh0VHlwZSk7Im9iamVjdCI9PXR5cGVvZiBhJiZudWxsIT09YT9vLmNvbnRleHQ9X2EoYSk6KGE9dyh0KT9Vbzp5LmN1cnJlbnQsby5jb250ZXh0PUJvKGUsYSkpLG8uc3RhdGU9ZS5tZW1vaXplZFN0YXRlLCJmdW5jdGlvbiI9PXR5cGVvZihhPXQuZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKSYmKEdhKGUsMCxhLG4pLG8uc3RhdGU9ZS5tZW1vaXplZFN0YXRlKSwiZnVuY3Rpb24iPT10eXBlb2YgdC5nZXREZXJpdmVkU3RhdGVGcm9tUHJvcHN8fCJmdW5jdGlvbiI9PXR5cGVvZiBvLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHwiZnVuY3Rpb24iIT10eXBlb2Ygby5VTlNBRkVfY29tcG9uZW50V2lsbE1vdW50JiYiZnVuY3Rpb24iIT10eXBlb2Ygby5jb21wb25lbnRXaWxsTW91bnR8fCh0PW8uc3RhdGUsImZ1bmN0aW9uIj09dHlwZW9mIG8uY29tcG9uZW50V2lsbE1vdW50JiZvLmNvbXBvbmVudFdpbGxNb3VudCgpLCJmdW5jdGlvbiI9PXR5cGVvZiBvLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJm8uVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCgpLHQhPT1vLnN0YXRlJiZxYS5lbnF1ZXVlUmVwbGFjZVN0YXRlKG8sby5zdGF0ZSxudWxsKSxWYShlLG4sbyxyKSxvLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSksImZ1bmN0aW9uIj09dHlwZW9mIG8uY29tcG9uZW50RGlkTW91bnQmJihlLmZsYWdzfD00MTk0MzA4KX1mdW5jdGlvbiBLYShlLHQsbil7aWYobnVsbCE9PShlPW4ucmVmKSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUmJiJvYmplY3QiIT10eXBlb2YgZSl7aWYobi5fb3duZXIpe2lmKG49bi5fb3duZXIpe2lmKDEhPT1uLnRhZyl0aHJvdyBFcnJvcihEKDMwOSkpO3ZhciByPW4uc3RhdGVOb2RlfXZhciBvLGE7aWYocilyZXR1cm4gbz1yLGE9IiIrZSxudWxsIT09dCYmbnVsbCE9PXQucmVmJiYiZnVuY3Rpb24iPT10eXBlb2YgdC5yZWYmJnQucmVmLl9zdHJpbmdSZWY9PT1hP3QucmVmOigodD1mdW5jdGlvbihlKXt2YXIgdD1vLnJlZnM7dD09PVdhJiYodD1vLnJlZnM9e30pLG51bGw9PT1lP2RlbGV0ZSB0W2FdOnRbYV09ZX0pLl9zdHJpbmdSZWY9YSx0KTt0aHJvdyBFcnJvcihEKDE0NyxlKSl9aWYoInN0cmluZyIhPXR5cGVvZiBlKXRocm93IEVycm9yKEQoMjg0KSk7aWYoIW4uX293bmVyKXRocm93IEVycm9yKEQoMjkwLGUpKX1yZXR1cm4gZX1mdW5jdGlvbiBKYShlLHQpe3Rocm93IGU9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpLEVycm9yKEQoMzEsIltvYmplY3QgT2JqZWN0XSI9PT1lPyJvYmplY3Qgd2l0aCBrZXlzIHsiK09iamVjdC5rZXlzKHQpLmpvaW4oIiwgIikrIn0iOmUpKX1mdW5jdGlvbiBlaShlKXtyZXR1cm4oMCxlLl9pbml0KShlLl9wYXlsb2FkKX1mdW5jdGlvbiB0aShBKXtmdW5jdGlvbiBQKGUsdCl7dmFyIG47QSYmKG51bGw9PT0obj1lLmRlbGV0aW9ucyk/KGUuZGVsZXRpb25zPVt0XSxlLmZsYWdzfD0xNik6bi5wdXNoKHQpKX1mdW5jdGlvbiBJKGUsdCl7aWYoQSlmb3IoO251bGwhPT10OylQKGUsdCksdD10LnNpYmxpbmc7cmV0dXJuIG51bGx9ZnVuY3Rpb24gXyhlLHQpe2ZvcihlPW5ldyBNYXA7bnVsbCE9PXQ7KW51bGwhPT10LmtleT9lLnNldCh0LmtleSx0KTplLnNldCh0LmluZGV4LHQpLHQ9dC5zaWJsaW5nO3JldHVybiBlfWZ1bmN0aW9uIHooZSx0KXtyZXR1cm4oZT1vdShlLHQpKS5pbmRleD0wLGUuc2libGluZz1udWxsLGV9ZnVuY3Rpb24gVChlLHQsbil7aWYoZS5pbmRleD1uLEEpe2lmKG51bGwhPT0obj1lLmFsdGVybmF0ZSkpcmV0dXJuKG49bi5pbmRleCk8dD8oZS5mbGFnc3w9Mix0KTpuO2UuZmxhZ3N8PTJ9ZWxzZSBlLmZsYWdzfD0xMDQ4NTc2O3JldHVybiB0fWZ1bmN0aW9uIEwoZSl7cmV0dXJuIEEmJm51bGw9PT1lLmFsdGVybmF0ZSYmKGUuZmxhZ3N8PTIpLGV9ZnVuY3Rpb24gYShlLHQsbixyKXtyZXR1cm4gbnVsbD09PXR8fDYhPT10LnRhZz8odD1jdShuLGUubW9kZSxyKSkucmV0dXJuPWU6KHQ9eih0LG4pKS5yZXR1cm49ZSx0fWZ1bmN0aW9uIGkoZSx0LG4scil7dmFyIG89bi50eXBlO3JldHVybiBvPT09bmU/YyhlLHQsbi5wcm9wcy5jaGlsZHJlbixyLG4ua2V5KToobnVsbCE9PXQmJih0LmVsZW1lbnRUeXBlPT09b3x8Im9iamVjdCI9PXR5cGVvZiBvJiZudWxsIT09byYmby4kJHR5cGVvZj09PWZlJiZlaShvKT09PXQudHlwZSk/KHI9eih0LG4ucHJvcHMpKS5yZWY9S2EoMCx0LG4pOihyPWF1KG4udHlwZSxuLmtleSxuLnByb3BzLG51bGwsZS5tb2RlLHIpKS5yZWY9S2EoMCx0LG4pLHIucmV0dXJuPWUscil9ZnVuY3Rpb24gbChlLHQsbixyKXtyZXR1cm4gbnVsbD09PXR8fDQhPT10LnRhZ3x8dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyE9PW4uY29udGFpbmVySW5mb3x8dC5zdGF0ZU5vZGUuaW1wbGVtZW50YXRpb24hPT1uLmltcGxlbWVudGF0aW9uPyh0PXV1KG4sZS5tb2RlLHIpKS5yZXR1cm49ZToodD16KHQsbi5jaGlsZHJlbnx8W10pKS5yZXR1cm49ZSx0fWZ1bmN0aW9uIGMoZSx0LG4scixvKXtyZXR1cm4gbnVsbD09PXR8fDchPT10LnRhZz8odD1pdShuLGUubW9kZSxyLG8pKS5yZXR1cm49ZToodD16KHQsbikpLnJldHVybj1lLHR9ZnVuY3Rpb24gTShlLHQsbil7aWYoInN0cmluZyI9PXR5cGVvZiB0JiYiIiE9PXR8fCJudW1iZXIiPT10eXBlb2YgdClyZXR1cm4odD1jdSgiIit0LGUubW9kZSxuKSkucmV0dXJuPWUsdDtpZigib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10KXtzd2l0Y2godC4kJHR5cGVvZil7Y2FzZSBlZTpyZXR1cm4obj1hdSh0LnR5cGUsdC5rZXksdC5wcm9wcyxudWxsLGUubW9kZSxuKSkucmVmPUthKDAsbnVsbCx0KSxuLnJldHVybj1lLG47Y2FzZSB0ZTpyZXR1cm4odD11dSh0LGUubW9kZSxuKSkucmV0dXJuPWUsdDtjYXNlIGZlOnJldHVybiBNKGUsKDAsdC5faW5pdCkodC5fcGF5bG9hZCksbil9aWYoX2UodCl8fG1lKHQpKXJldHVybih0PWl1KHQsZS5tb2RlLG4sbnVsbCkpLnJldHVybj1lLHQ7SmEoMCx0KX1yZXR1cm4gbnVsbH1mdW5jdGlvbiBSKGUsdCxuLHIpe3ZhciBvPW51bGwhPT10P3Qua2V5Om51bGw7aWYoInN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW58fCJudW1iZXIiPT10eXBlb2YgbilyZXR1cm4gbnVsbCE9PW8/bnVsbDphKGUsdCwiIituLHIpO2lmKCJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4pe3N3aXRjaChuLiQkdHlwZW9mKXtjYXNlIGVlOnJldHVybiBuLmtleT09PW8/aShlLHQsbixyKTpudWxsO2Nhc2UgdGU6cmV0dXJuIG4ua2V5PT09bz9sKGUsdCxuLHIpOm51bGw7Y2FzZSBmZTpyZXR1cm4gUihlLHQsKG89bi5faW5pdCkobi5fcGF5bG9hZCkscil9aWYoX2Uobil8fG1lKG4pKXJldHVybiBudWxsIT09bz9udWxsOmMoZSx0LG4scixudWxsKTtKYSgwLG4pfXJldHVybiBudWxsfWZ1bmN0aW9uIE4oZSx0LG4scixvKXtpZigic3RyaW5nIj09dHlwZW9mIHImJiIiIT09cnx8Im51bWJlciI9PXR5cGVvZiByKXJldHVybiBhKHQsZT1lLmdldChuKXx8bnVsbCwiIityLG8pO2lmKCJvYmplY3QiPT10eXBlb2YgciYmbnVsbCE9PXIpe3N3aXRjaChyLiQkdHlwZW9mKXtjYXNlIGVlOnJldHVybiBpKHQsZT1lLmdldChudWxsPT09ci5rZXk/bjpyLmtleSl8fG51bGwscixvKTtjYXNlIHRlOnJldHVybiBsKHQsZT1lLmdldChudWxsPT09ci5rZXk/bjpyLmtleSl8fG51bGwscixvKTtjYXNlIGZlOnJldHVybiBOKGUsdCxuLCgwLHIuX2luaXQpKHIuX3BheWxvYWQpLG8pfWlmKF9lKHIpfHxtZShyKSlyZXR1cm4gYyh0LGU9ZS5nZXQobil8fG51bGwscixvLG51bGwpO0phKDAscil9cmV0dXJuIG51bGx9cmV0dXJuIGZ1bmN0aW9uIGUodCxuLHIsbyl7aWYoIm9iamVjdCI9PXR5cGVvZihyPSJvYmplY3QiPT10eXBlb2YgciYmbnVsbCE9PXImJnIudHlwZT09PW5lJiZudWxsPT09ci5rZXk/ci5wcm9wcy5jaGlsZHJlbjpyKSYmbnVsbCE9PXIpe3N3aXRjaChyLiQkdHlwZW9mKXtjYXNlIGVlOmU6e2Zvcih2YXIgYT1yLmtleSxpPW47bnVsbCE9PWk7KXtpZihpLmtleT09PWEpe2lmKChhPXIudHlwZSk9PT1uZSl7aWYoNz09PWkudGFnKXtJKHQsaS5zaWJsaW5nKSwobj16KGksci5wcm9wcy5jaGlsZHJlbikpLnJldHVybj10LHQ9bjticmVhayBlfX1lbHNlIGlmKGkuZWxlbWVudFR5cGU9PT1hfHwib2JqZWN0Ij09dHlwZW9mIGEmJm51bGwhPT1hJiZhLiQkdHlwZW9mPT09ZmUmJmVpKGEpPT09aS50eXBlKXtJKHQsaS5zaWJsaW5nKSwobj16KGksci5wcm9wcykpLnJlZj1LYSgwLGksciksbi5yZXR1cm49dCx0PW47YnJlYWsgZX1JKHQsaSk7YnJlYWt9UCh0LGkpLGk9aS5zaWJsaW5nfXQ9ci50eXBlPT09bmU/KChuPWl1KHIucHJvcHMuY2hpbGRyZW4sdC5tb2RlLG8sci5rZXkpKS5yZXR1cm49dCxuKTooKG89YXUoci50eXBlLHIua2V5LHIucHJvcHMsbnVsbCx0Lm1vZGUsbykpLnJlZj1LYSgwLG4sciksby5yZXR1cm49dCxvKX1yZXR1cm4gTCh0KTtjYXNlIHRlOmU6e2ZvcihpPXIua2V5O251bGwhPT1uOyl7aWYobi5rZXk9PT1pKXtpZig0PT09bi50YWcmJm4uc3RhdGVOb2RlLmNvbnRhaW5lckluZm89PT1yLmNvbnRhaW5lckluZm8mJm4uc3RhdGVOb2RlLmltcGxlbWVudGF0aW9uPT09ci5pbXBsZW1lbnRhdGlvbil7SSh0LG4uc2libGluZyksKG49eihuLHIuY2hpbGRyZW58fFtdKSkucmV0dXJuPXQsdD1uO2JyZWFrIGV9SSh0LG4pO2JyZWFrfVAodCxuKSxuPW4uc2libGluZ30obj11dShyLHQubW9kZSxvKSkucmV0dXJuPXQsdD1ufXJldHVybiBMKHQpO2Nhc2UgZmU6cmV0dXJuIGUodCxuLChpPXIuX2luaXQpKHIuX3BheWxvYWQpLG8pfWlmKF9lKHIpKXtmb3IodmFyIGw9dCxjPW4sdT1yLHM9byxmPW51bGwsZD1udWxsLHA9YyxtPWM9MCxoPW51bGw7bnVsbCE9PXAmJm08dS5sZW5ndGg7bSsrKXtwLmluZGV4Pm0/KGg9cCxwPW51bGwpOmg9cC5zaWJsaW5nO3ZhciBnPVIobCxwLHVbbV0scyk7aWYobnVsbD09PWcpe251bGw9PT1wJiYocD1oKTticmVha31BJiZwJiZudWxsPT09Zy5hbHRlcm5hdGUmJlAobCxwKSxjPVQoZyxjLG0pLG51bGw9PT1kP2Y9ZzpkLnNpYmxpbmc9ZyxkPWcscD1ofWlmKG09PT11Lmxlbmd0aClJKGwscCk7ZWxzZSBpZihudWxsPT09cClmb3IoO208dS5sZW5ndGg7bSsrKW51bGwhPT0ocD1NKGwsdVttXSxzKSkmJihjPVQocCxjLG0pLG51bGw9PT1kP2Y9cDpkLnNpYmxpbmc9cCxkPXApO2Vsc2V7Zm9yKHA9XyhsLHApO208dS5sZW5ndGg7bSsrKW51bGwhPT0oaD1OKHAsbCxtLHVbbV0scykpJiYoQSYmbnVsbCE9PWguYWx0ZXJuYXRlJiZwLmRlbGV0ZShudWxsPT09aC5rZXk/bTpoLmtleSksYz1UKGgsYyxtKSxudWxsPT09ZD9mPWg6ZC5zaWJsaW5nPWgsZD1oKTtBJiZwLmZvckVhY2goZnVuY3Rpb24oZSl7cmV0dXJuIFAobCxlKX0pfXJldHVybiBVJiZpYShsLG0pLGZ9aWYobWUocikpe3ZhciBiPXQseT1uLHY9cix3PW8seD1tZSh2KTtpZigiZnVuY3Rpb24iIT10eXBlb2YgeCl0aHJvdyBFcnJvcihEKDE1MCkpO2lmKG51bGw9PSh2PXguY2FsbCh2KSkpdGhyb3cgRXJyb3IoRCgxNTEpKTtmb3IodmFyIGs9eD1udWxsLFM9eSxDPXk9MCxFPW51bGwsTz12Lm5leHQoKTtudWxsIT09UyYmIU8uZG9uZTtDKyssTz12Lm5leHQoKSl7Uy5pbmRleD5DPyhFPVMsUz1udWxsKTpFPVMuc2libGluZzt2YXIgaj1SKGIsUyxPLnZhbHVlLHcpO2lmKG51bGw9PT1qKXtudWxsPT09UyYmKFM9RSk7YnJlYWt9QSYmUyYmbnVsbD09PWouYWx0ZXJuYXRlJiZQKGIsUykseT1UKGoseSxDKSxudWxsPT09az94PWo6ay5zaWJsaW5nPWosaz1qLFM9RX1pZihPLmRvbmUpSShiLFMpO2Vsc2UgaWYobnVsbD09PVMpZm9yKDshTy5kb25lO0MrKyxPPXYubmV4dCgpKW51bGwhPT0oTz1NKGIsTy52YWx1ZSx3KSkmJih5PVQoTyx5LEMpLG51bGw9PT1rP3g9TzprLnNpYmxpbmc9TyxrPU8pO2Vsc2V7Zm9yKFM9XyhiLFMpOyFPLmRvbmU7QysrLE89di5uZXh0KCkpbnVsbCE9PShPPU4oUyxiLEMsTy52YWx1ZSx3KSkmJihBJiZudWxsIT09Ty5hbHRlcm5hdGUmJlMuZGVsZXRlKG51bGw9PT1PLmtleT9DOk8ua2V5KSx5PVQoTyx5LEMpLG51bGw9PT1rP3g9TzprLnNpYmxpbmc9TyxrPU8pO0EmJlMuZm9yRWFjaChmdW5jdGlvbihlKXtyZXR1cm4gUChiLGUpfSl9cmV0dXJuIFUmJmlhKGIsQykseH1KYSgwLHIpfXJldHVybiJzdHJpbmciPT10eXBlb2YgciYmIiIhPT1yfHwibnVtYmVyIj09dHlwZW9mIHI/KHI9IiIrciwobj1udWxsIT09biYmNj09PW4udGFnPyhJKHQsbi5zaWJsaW5nKSx6KG4scikpOihJKHQsbiksY3Uocix0Lm1vZGUsbykpKS5yZXR1cm49dCxMKHQ9bikpOkkodCxuKX19dmFyIG5pPXRpKCEwKSxyaT10aSghMSksb2k9e30sYWk9Tm8ob2kpLGlpPU5vKG9pKSxsaT1ObyhvaSk7ZnVuY3Rpb24gY2koZSl7aWYoZT09PW9pKXRocm93IEVycm9yKEQoMTc0KSk7cmV0dXJuIGV9ZnVuY3Rpb24gdWkoZSx0KXtzd2l0Y2goYihsaSx0KSxiKGlpLGUpLGIoYWksb2kpLGU9dC5ub2RlVHlwZSl7Y2FzZSA5OmNhc2UgMTE6dD0odD10LmRvY3VtZW50RWxlbWVudCk/dC5uYW1lc3BhY2VVUkk6RGUobnVsbCwiIik7YnJlYWs7ZGVmYXVsdDp0PURlKHQ9KGU9OD09PWU/dC5wYXJlbnROb2RlOnQpLm5hbWVzcGFjZVVSSXx8bnVsbCxlPWUudGFnTmFtZSl9dShhaSksYihhaSx0KX1mdW5jdGlvbiBzaSgpe3UoYWkpLHUoaWkpLHUobGkpfWZ1bmN0aW9uIGZpKGUpe2NpKGxpLmN1cnJlbnQpO3ZhciB0PWNpKGFpLmN1cnJlbnQpLG49RGUodCxlLnR5cGUpO3QhPT1uJiYoYihpaSxlKSxiKGFpLG4pKX1mdW5jdGlvbiBkaShlKXtpaS5jdXJyZW50PT09ZSYmKHUoYWkpLHUoaWkpKX12YXIgUz1ObygwKTtmdW5jdGlvbiBwaShlKXtmb3IodmFyIHQ9ZTtudWxsIT09dDspe2lmKDEzPT09dC50YWcpe3ZhciBuPXQubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09biYmKG51bGw9PT0obj1uLmRlaHlkcmF0ZWQpfHwiJD8iPT09bi5kYXRhfHwiJCEiPT09bi5kYXRhKSlyZXR1cm4gdH1lbHNlIGlmKDE5PT09dC50YWcmJnZvaWQgMCE9PXQubWVtb2l6ZWRQcm9wcy5yZXZlYWxPcmRlcil7aWYoMCE9KDEyOCZ0LmZsYWdzKSlyZXR1cm4gdH1lbHNlIGlmKG51bGwhPT10LmNoaWxkKXt0PSh0LmNoaWxkLnJldHVybj10KS5jaGlsZDtjb250aW51ZX1pZih0PT09ZSlicmVhaztmb3IoO251bGw9PT10LnNpYmxpbmc7KXtpZihudWxsPT09dC5yZXR1cm58fHQucmV0dXJuPT09ZSlyZXR1cm4gbnVsbDt0PXQucmV0dXJufXQuc2libGluZy5yZXR1cm49dC5yZXR1cm4sdD10LnNpYmxpbmd9cmV0dXJuIG51bGx9dmFyIG1pPVtdO2Z1bmN0aW9uIGhpKCl7Zm9yKHZhciBlPTA7ZTxtaS5sZW5ndGg7ZSsrKW1pW2VdLl93b3JrSW5Qcm9ncmVzc1ZlcnNpb25QcmltYXJ5PW51bGw7bWkubGVuZ3RoPTB9dmFyIGdpPUouUmVhY3RDdXJyZW50RGlzcGF0Y2hlcixiaT1KLlJlYWN0Q3VycmVudEJhdGNoQ29uZmlnLHlpPTAsQz1udWxsLEU9bnVsbCxPPW51bGwsdmk9ITEsd2k9ITEseGk9MCxraT0wO2Z1bmN0aW9uIG8oKXt0aHJvdyBFcnJvcihEKDMyMSkpfWZ1bmN0aW9uIFNpKGUsdCl7aWYobnVsbCE9PXQpe2Zvcih2YXIgbj0wO248dC5sZW5ndGgmJm48ZS5sZW5ndGg7bisrKWlmKCFrcihlW25dLHRbbl0pKXJldHVybjtyZXR1cm4gMX19ZnVuY3Rpb24gQ2koZSx0LG4scixvLGEpe2lmKHlpPWEsKEM9dCkubWVtb2l6ZWRTdGF0ZT1udWxsLHQudXBkYXRlUXVldWU9bnVsbCx0LmxhbmVzPTAsZ2kuY3VycmVudD1udWxsPT09ZXx8bnVsbD09PWUubWVtb2l6ZWRTdGF0ZT9vbDphbCxlPW4ocixvKSx3aSl7YT0wO2Rve2lmKHdpPSExLHhpPTAsMjU8PWEpdGhyb3cgRXJyb3IoRCgzMDEpKX13aGlsZShhKz0xLE89RT1udWxsLHQudXBkYXRlUXVldWU9bnVsbCxnaS5jdXJyZW50PWlsLGU9bihyLG8pLHdpKX1pZihnaS5jdXJyZW50PXJsLHQ9bnVsbCE9PUUmJm51bGwhPT1FLm5leHQseWk9MCxPPUU9Qz1udWxsLHZpPSExLHQpdGhyb3cgRXJyb3IoRCgzMDApKTtyZXR1cm4gZX1mdW5jdGlvbiBFaSgpe3ZhciBlPTAhPT14aTtyZXR1cm4geGk9MCxlfWZ1bmN0aW9uIE9pKCl7dmFyIGU9e21lbW9pemVkU3RhdGU6bnVsbCxiYXNlU3RhdGU6bnVsbCxiYXNlUXVldWU6bnVsbCxxdWV1ZTpudWxsLG5leHQ6bnVsbH07cmV0dXJuIG51bGw9PT1PP0MubWVtb2l6ZWRTdGF0ZT1PPWU6Tz1PLm5leHQ9ZSxPfWZ1bmN0aW9uIGppKCl7ZT1udWxsPT09RT9udWxsIT09KGU9Qy5hbHRlcm5hdGUpP2UubWVtb2l6ZWRTdGF0ZTpudWxsOkUubmV4dDt2YXIgZSx0PW51bGw9PT1PP0MubWVtb2l6ZWRTdGF0ZTpPLm5leHQ7aWYobnVsbCE9PXQpTz10LEU9ZTtlbHNle2lmKG51bGw9PT1lKXRocm93IEVycm9yKEQoMzEwKSk7ZT17bWVtb2l6ZWRTdGF0ZTooRT1lKS5tZW1vaXplZFN0YXRlLGJhc2VTdGF0ZTpFLmJhc2VTdGF0ZSxiYXNlUXVldWU6RS5iYXNlUXVldWUscXVldWU6RS5xdWV1ZSxuZXh0Om51bGx9LG51bGw9PT1PP0MubWVtb2l6ZWRTdGF0ZT1PPWU6Tz1PLm5leHQ9ZX1yZXR1cm4gT31mdW5jdGlvbiBBaShlLHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0P3QoZSk6dH1mdW5jdGlvbiBQaShlKXt2YXIgdD1qaSgpLG49dC5xdWV1ZTtpZihudWxsPT09bil0aHJvdyBFcnJvcihEKDMxMSkpO24ubGFzdFJlbmRlcmVkUmVkdWNlcj1lO3ZhciByLG89KGk9RSkuYmFzZVF1ZXVlO2lmKG51bGwhPT0oYT1uLnBlbmRpbmcpJiYobnVsbCE9PW8mJihyPW8ubmV4dCxvLm5leHQ9YS5uZXh0LGEubmV4dD1yKSxpLmJhc2VRdWV1ZT1vPWEsbi5wZW5kaW5nPW51bGwpLG51bGwhPT1vKXt2YXIgYT1vLm5leHQsaT1pLmJhc2VTdGF0ZSxsPXI9bnVsbCxjPW51bGwsdT1hO2Rve3ZhciBzLGY9dS5sYW5lfXdoaWxlKCh5aSZmKT09PWY/KG51bGwhPT1jJiYoYz1jLm5leHQ9e2xhbmU6MCxhY3Rpb246dS5hY3Rpb24saGFzRWFnZXJTdGF0ZTp1Lmhhc0VhZ2VyU3RhdGUsZWFnZXJTdGF0ZTp1LmVhZ2VyU3RhdGUsbmV4dDpudWxsfSksaT11Lmhhc0VhZ2VyU3RhdGU/dS5lYWdlclN0YXRlOmUoaSx1LmFjdGlvbikpOihzPXtsYW5lOmYsYWN0aW9uOnUuYWN0aW9uLGhhc0VhZ2VyU3RhdGU6dS5oYXNFYWdlclN0YXRlLGVhZ2VyU3RhdGU6dS5lYWdlclN0YXRlLG5leHQ6bnVsbH0sbnVsbD09PWM/KGw9Yz1zLHI9aSk6Yz1jLm5leHQ9cyxDLmxhbmVzfD1mLGhjfD1mKSxudWxsIT09KHU9dS5uZXh0KSYmdSE9PWEpO251bGw9PT1jP3I9aTpjLm5leHQ9bCxrcihpLHQubWVtb2l6ZWRTdGF0ZSl8fChqPSEwKSx0Lm1lbW9pemVkU3RhdGU9aSx0LmJhc2VTdGF0ZT1yLHQuYmFzZVF1ZXVlPWMsbi5sYXN0UmVuZGVyZWRTdGF0ZT1pfWlmKG51bGwhPT0oZT1uLmludGVybGVhdmVkKSlmb3Iobz1lO2E9by5sYW5lLEMubGFuZXN8PWEsaGN8PWEsKG89by5uZXh0KSE9PWU7KTtlbHNlIG51bGw9PT1vJiYobi5sYW5lcz0wKTtyZXR1cm5bdC5tZW1vaXplZFN0YXRlLG4uZGlzcGF0Y2hdfWZ1bmN0aW9uIElpKGUpe3ZhciB0PWppKCksbj10LnF1ZXVlO2lmKG51bGw9PT1uKXRocm93IEVycm9yKEQoMzExKSk7bi5sYXN0UmVuZGVyZWRSZWR1Y2VyPWU7dmFyIHI9bi5kaXNwYXRjaCxvPW4ucGVuZGluZyxhPXQubWVtb2l6ZWRTdGF0ZTtpZihudWxsIT09byl7bi5wZW5kaW5nPW51bGw7Zm9yKHZhciBpPW89by5uZXh0O2E9ZShhLGkuYWN0aW9uKSwoaT1pLm5leHQpIT09bzspO2tyKGEsdC5tZW1vaXplZFN0YXRlKXx8KGo9ITApLHQubWVtb2l6ZWRTdGF0ZT1hLG51bGw9PT10LmJhc2VRdWV1ZSYmKHQuYmFzZVN0YXRlPWEpLG4ubGFzdFJlbmRlcmVkU3RhdGU9YX1yZXR1cm5bYSxyXX1mdW5jdGlvbiBfaSgpe31mdW5jdGlvbiB6aShlLHQpe3ZhciBuPUMscj1qaSgpLG89dCgpLGE9IWtyKHIubWVtb2l6ZWRTdGF0ZSxvKTtpZihhJiYoci5tZW1vaXplZFN0YXRlPW8saj0hMCkscj1yLnF1ZXVlLCRpKE1pLmJpbmQobnVsbCxuLHIsZSksW2VdKSxyLmdldFNuYXBzaG90IT09dHx8YXx8bnVsbCE9PU8mJjEmTy5tZW1vaXplZFN0YXRlLnRhZyl7aWYobi5mbGFnc3w9MjA0OCxVaSg5LExpLmJpbmQobnVsbCxuLHIsbyx0KSx2b2lkIDAsbnVsbCksbnVsbD09PXApdGhyb3cgRXJyb3IoRCgzNDkpKTswPT0oMzAmeWkpJiZUaShuLHQsbyl9cmV0dXJuIG99ZnVuY3Rpb24gVGkoZSx0LG4pe2UuZmxhZ3N8PTE2Mzg0LGU9e2dldFNuYXBzaG90OnQsdmFsdWU6bn0sbnVsbD09PSh0PUMudXBkYXRlUXVldWUpPyhDLnVwZGF0ZVF1ZXVlPXQ9e2xhc3RFZmZlY3Q6bnVsbCxzdG9yZXM6bnVsbH0pLnN0b3Jlcz1bZV06bnVsbD09PShuPXQuc3RvcmVzKT90LnN0b3Jlcz1bZV06bi5wdXNoKGUpfWZ1bmN0aW9uIExpKGUsdCxuLHIpe3QudmFsdWU9bix0LmdldFNuYXBzaG90PXIsUmkodCkmJk5pKGUpfWZ1bmN0aW9uIE1pKGUsdCxuKXtyZXR1cm4gbihmdW5jdGlvbigpe1JpKHQpJiZOaShlKX0pfWZ1bmN0aW9uIFJpKGUpe3ZhciB0PWUuZ2V0U25hcHNob3Q7ZT1lLnZhbHVlO3RyeXt2YXIgbj10KCk7cmV0dXJuIWtyKGUsbil9Y2F0Y2goZSl7cmV0dXJuIDF9fWZ1bmN0aW9uIE5pKGUpe3ZhciB0PU1hKGUsMSk7bnVsbCE9PXQmJlRjKHQsZSwxLC0xKX1mdW5jdGlvbiBEaShlKXt2YXIgdD1PaSgpO3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlJiYoZT1lKCkpLHQubWVtb2l6ZWRTdGF0ZT10LmJhc2VTdGF0ZT1lLGU9KHQucXVldWU9ZT17cGVuZGluZzpudWxsLGludGVybGVhdmVkOm51bGwsbGFuZXM6MCxkaXNwYXRjaDpudWxsLGxhc3RSZW5kZXJlZFJlZHVjZXI6QWksbGFzdFJlbmRlcmVkU3RhdGU6ZX0pLmRpc3BhdGNoPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj16YyhlKSxvPXtsYW5lOnIsYWN0aW9uOm4saGFzRWFnZXJTdGF0ZTohMSxlYWdlclN0YXRlOm51bGwsbmV4dDpudWxsfTtpZihlbChlKSl0bCh0LG8pO2Vsc2V7dmFyIGE9ZS5hbHRlcm5hdGU7aWYoMD09PWUubGFuZXMmJihudWxsPT09YXx8MD09PWEubGFuZXMpJiZudWxsIT09KGE9dC5sYXN0UmVuZGVyZWRSZWR1Y2VyKSl0cnl7dmFyIGksbD10Lmxhc3RSZW5kZXJlZFN0YXRlLGM9YShsLG4pO2lmKG8uaGFzRWFnZXJTdGF0ZT0hMCxvLmVhZ2VyU3RhdGU9YyxrcihjLGwpKXJldHVybiBudWxsPT09KGk9dC5pbnRlcmxlYXZlZCk/KG8ubmV4dD1vLFRhKHQpKTooby5uZXh0PWkubmV4dCxpLm5leHQ9byksdm9pZCh0LmludGVybGVhdmVkPW8pfWNhdGNoKGUpe31udWxsIT09KG49TGEoZSx0LG8scikpJiYobz1tKCksVGMobixlLHIsbyksbmwobix0LHIpKX19LmJpbmQobnVsbCxDLGUpLFt0Lm1lbW9pemVkU3RhdGUsZV19ZnVuY3Rpb24gVWkoZSx0LG4scil7cmV0dXJuIGU9e3RhZzplLGNyZWF0ZTp0LGRlc3Ryb3k6bixkZXBzOnIsbmV4dDpudWxsfSxudWxsPT09KHQ9Qy51cGRhdGVRdWV1ZSk/KEMudXBkYXRlUXVldWU9dD17bGFzdEVmZmVjdDpudWxsLHN0b3JlczpudWxsfSkubGFzdEVmZmVjdD1lLm5leHQ9ZTpudWxsPT09KG49dC5sYXN0RWZmZWN0KT90Lmxhc3RFZmZlY3Q9ZS5uZXh0PWU6KHI9bi5uZXh0LChuLm5leHQ9ZSkubmV4dD1yLHQubGFzdEVmZmVjdD1lKSxlfWZ1bmN0aW9uIEJpKCl7cmV0dXJuIGppKCkubWVtb2l6ZWRTdGF0ZX1mdW5jdGlvbiBGaShlLHQsbixyKXt2YXIgbz1PaSgpO0MuZmxhZ3N8PWUsby5tZW1vaXplZFN0YXRlPVVpKDF8dCxuLHZvaWQgMCx2b2lkIDA9PT1yP251bGw6cil9ZnVuY3Rpb24gSGkoZSx0LG4scil7dmFyIG89amkoKSxhPShyPXZvaWQgMD09PXI/bnVsbDpyLHZvaWQgMCk7aWYobnVsbCE9PUUpe3ZhciBpPUUubWVtb2l6ZWRTdGF0ZSxhPWkuZGVzdHJveTtpZihudWxsIT09ciYmU2kocixpLmRlcHMpKXJldHVybiB2b2lkKG8ubWVtb2l6ZWRTdGF0ZT1VaSh0LG4sYSxyKSl9Qy5mbGFnc3w9ZSxvLm1lbW9pemVkU3RhdGU9VWkoMXx0LG4sYSxyKX1mdW5jdGlvbiBWaShlLHQpe3JldHVybiBGaSg4MzkwNjU2LDgsZSx0KX1mdW5jdGlvbiAkaShlLHQpe3JldHVybiBIaSgyMDQ4LDgsZSx0KX1mdW5jdGlvbiBXaShlLHQpe3JldHVybiBIaSg0LDIsZSx0KX1mdW5jdGlvbiBHaShlLHQpe3JldHVybiBIaSg0LDQsZSx0KX1mdW5jdGlvbiBxaShlLHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0PyhlPWUoKSx0KGUpLGZ1bmN0aW9uKCl7dChudWxsKX0pOm51bGwhPXQ/KGU9ZSgpLHQuY3VycmVudD1lLGZ1bmN0aW9uKCl7dC5jdXJyZW50PW51bGx9KTp2b2lkIDB9ZnVuY3Rpb24gWmkoZSx0LG4pe3JldHVybiBuPW51bGwhPW4/bi5jb25jYXQoW2VdKTpudWxsLEhpKDQsNCxxaS5iaW5kKG51bGwsdCxlKSxuKX1mdW5jdGlvbiBYaSgpe31mdW5jdGlvbiBZaShlLHQpe3ZhciBuPWppKCkscj0odD12b2lkIDA9PT10P251bGw6dCxuLm1lbW9pemVkU3RhdGUpO3JldHVybiBudWxsIT09ciYmbnVsbCE9PXQmJlNpKHQsclsxXSk/clswXToobi5tZW1vaXplZFN0YXRlPVtlLHRdLGUpfWZ1bmN0aW9uIFFpKGUsdCl7dmFyIG49amkoKSxyPSh0PXZvaWQgMD09PXQ/bnVsbDp0LG4ubWVtb2l6ZWRTdGF0ZSk7cmV0dXJuIG51bGwhPT1yJiZudWxsIT09dCYmU2kodCxyWzFdKT9yWzBdOihlPWUoKSxuLm1lbW9pemVkU3RhdGU9W2UsdF0sZSl9ZnVuY3Rpb24gS2koZSx0LG4pe3JldHVybiAwPT0oMjEmeWkpPyhlLmJhc2VTdGF0ZSYmKGUuYmFzZVN0YXRlPSExLGo9ITApLGUubWVtb2l6ZWRTdGF0ZT1uKTooa3Iobix0KXx8KG49RnQoKSxDLmxhbmVzfD1uLGhjfD1uLGUuYmFzZVN0YXRlPSEwKSx0KX1mdW5jdGlvbiBKaSgpe3JldHVybiBqaSgpLm1lbW9pemVkU3RhdGV9ZnVuY3Rpb24gZWwoZSl7dmFyIHQ9ZS5hbHRlcm5hdGU7cmV0dXJuIGU9PT1DfHxudWxsIT09dCYmdD09PUN9ZnVuY3Rpb24gdGwoZSx0KXt3aT12aT0hMDt2YXIgbj1lLnBlbmRpbmc7bnVsbD09PW4/dC5uZXh0PXQ6KHQubmV4dD1uLm5leHQsbi5uZXh0PXQpLGUucGVuZGluZz10fWZ1bmN0aW9uIG5sKGUsdCxuKXt2YXIgcjswIT0oNDE5NDI0MCZuKSYmKHI9dC5sYW5lcyxyJj1lLnBlbmRpbmdMYW5lcywkdChlLHQubGFuZXM9bnw9cikpfXZhciBybD17cmVhZENvbnRleHQ6X2EsdXNlQ2FsbGJhY2s6byx1c2VDb250ZXh0Om8sdXNlRWZmZWN0Om8sdXNlSW1wZXJhdGl2ZUhhbmRsZTpvLHVzZUluc2VydGlvbkVmZmVjdDpvLHVzZUxheW91dEVmZmVjdDpvLHVzZU1lbW86byx1c2VSZWR1Y2VyOm8sdXNlUmVmOm8sdXNlU3RhdGU6byx1c2VEZWJ1Z1ZhbHVlOm8sdXNlRGVmZXJyZWRWYWx1ZTpvLHVzZVRyYW5zaXRpb246byx1c2VNdXRhYmxlU291cmNlOm8sdXNlU3luY0V4dGVybmFsU3RvcmU6byx1c2VJZDpvLHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX0sb2w9e3JlYWRDb250ZXh0Ol9hLHVzZUNhbGxiYWNrOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9pKCkubWVtb2l6ZWRTdGF0ZT1bZSx2b2lkIDA9PT10P251bGw6dF0sZX0sdXNlQ29udGV4dDpfYSx1c2VFZmZlY3Q6VmksdXNlSW1wZXJhdGl2ZUhhbmRsZTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG49bnVsbCE9bj9uLmNvbmNhdChbZV0pOm51bGwsRmkoNDE5NDMwOCw0LHFpLmJpbmQobnVsbCx0LGUpLG4pfSx1c2VMYXlvdXRFZmZlY3Q6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gRmkoNDE5NDMwOCw0LGUsdCl9LHVzZUluc2VydGlvbkVmZmVjdDpmdW5jdGlvbihlLHQpe3JldHVybiBGaSg0LDIsZSx0KX0sdXNlTWVtbzpmdW5jdGlvbihlLHQpe3ZhciBuPU9pKCk7cmV0dXJuIHQ9dm9pZCAwPT09dD9udWxsOnQsZT1lKCksbi5tZW1vaXplZFN0YXRlPVtlLHRdLGV9LHVzZVJlZHVjZXI6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPU9pKCk7cmV0dXJuIHQ9dm9pZCAwIT09bj9uKHQpOnQsci5tZW1vaXplZFN0YXRlPXIuYmFzZVN0YXRlPXQsZT0oci5xdWV1ZT1lPXtwZW5kaW5nOm51bGwsaW50ZXJsZWF2ZWQ6bnVsbCxsYW5lczowLGRpc3BhdGNoOm51bGwsbGFzdFJlbmRlcmVkUmVkdWNlcjplLGxhc3RSZW5kZXJlZFN0YXRlOnR9KS5kaXNwYXRjaD1mdW5jdGlvbihlLHQsbil7dmFyIHI9emMoZSk7bj17bGFuZTpyLGFjdGlvbjpuLGhhc0VhZ2VyU3RhdGU6ITEsZWFnZXJTdGF0ZTpudWxsLG5leHQ6bnVsbH0sZWwoZSk/dGwodCxuKTpudWxsIT09KG49TGEoZSx0LG4scikpJiYoVGMobixlLHIsbSgpKSxubChuLHQscikpfS5iaW5kKG51bGwsQyxlKSxbci5tZW1vaXplZFN0YXRlLGVdfSx1c2VSZWY6ZnVuY3Rpb24oZSl7cmV0dXJuIE9pKCkubWVtb2l6ZWRTdGF0ZT1lPXtjdXJyZW50OmV9fSx1c2VTdGF0ZTpEaSx1c2VEZWJ1Z1ZhbHVlOlhpLHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIE9pKCkubWVtb2l6ZWRTdGF0ZT1lfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7dmFyIGU9KHQ9RGkoITEpKVswXSx0PWZ1bmN0aW9uKGUsdCl7dmFyIG49eCxyPSh4PTAhPT1uJiZuPDQ/bjo0LGUoITApLGJpLnRyYW5zaXRpb24pO2JpLnRyYW5zaXRpb249e307dHJ5e2UoITEpLHQoKX1maW5hbGx5e3g9bixiaS50cmFuc2l0aW9uPXJ9fS5iaW5kKG51bGwsdFsxXSk7cmV0dXJuW2UsT2koKS5tZW1vaXplZFN0YXRlPXRdfSx1c2VNdXRhYmxlU291cmNlOmZ1bmN0aW9uKCl7fSx1c2VTeW5jRXh0ZXJuYWxTdG9yZTpmdW5jdGlvbihlLHQsbil7dmFyIHI9QyxvPU9pKCk7aWYoVSl7aWYodm9pZCAwPT09bil0aHJvdyBFcnJvcihEKDQwNykpO249bigpfWVsc2V7aWYobj10KCksbnVsbD09PXApdGhyb3cgRXJyb3IoRCgzNDkpKTswPT0oMzAmeWkpJiZUaShyLHQsbil9dmFyIGE9e3ZhbHVlOm8ubWVtb2l6ZWRTdGF0ZT1uLGdldFNuYXBzaG90OnR9O3JldHVybiBvLnF1ZXVlPWEsVmkoTWkuYmluZChudWxsLHIsYSxlKSxbZV0pLHIuZmxhZ3N8PTIwNDgsVWkoOSxMaS5iaW5kKG51bGwscixhLG4sdCksdm9pZCAwLG51bGwpLG59LHVzZUlkOmZ1bmN0aW9uKCl7dmFyIGUsdD1PaSgpLG49cC5pZGVudGlmaWVyUHJlZml4O3JldHVybiBVPyhlPWFhLG49IjoiK24rIlIiKyhlPShvYSZ+KDE8PDMyLXp0KG9hKS0xKSkudG9TdHJpbmcoMzIpK2UpLDA8KGU9eGkrKykmJihuKz0iSCIrZS50b1N0cmluZygzMikpLG4rPSI6Iik6bj0iOiIrbisiciIrKGU9a2krKykudG9TdHJpbmcoMzIpKyI6Iix0Lm1lbW9pemVkU3RhdGU9bn0sdW5zdGFibGVfaXNOZXdSZWNvbmNpbGVyOiExfSxhbD17cmVhZENvbnRleHQ6X2EsdXNlQ2FsbGJhY2s6WWksdXNlQ29udGV4dDpfYSx1c2VFZmZlY3Q6JGksdXNlSW1wZXJhdGl2ZUhhbmRsZTpaaSx1c2VJbnNlcnRpb25FZmZlY3Q6V2ksdXNlTGF5b3V0RWZmZWN0OkdpLHVzZU1lbW86UWksdXNlUmVkdWNlcjpQaSx1c2VSZWY6QmksdXNlU3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gUGkoQWkpfSx1c2VEZWJ1Z1ZhbHVlOlhpLHVzZURlZmVycmVkVmFsdWU6ZnVuY3Rpb24oZSl7cmV0dXJuIEtpKGppKCksRS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW1BpKEFpKVswXSxqaSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOl9pLHVzZVN5bmNFeHRlcm5hbFN0b3JlOnppLHVzZUlkOkppLHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX0saWw9e3JlYWRDb250ZXh0Ol9hLHVzZUNhbGxiYWNrOllpLHVzZUNvbnRleHQ6X2EsdXNlRWZmZWN0OiRpLHVzZUltcGVyYXRpdmVIYW5kbGU6WmksdXNlSW5zZXJ0aW9uRWZmZWN0OldpLHVzZUxheW91dEVmZmVjdDpHaSx1c2VNZW1vOlFpLHVzZVJlZHVjZXI6SWksdXNlUmVmOkJpLHVzZVN0YXRlOmZ1bmN0aW9uKCl7cmV0dXJuIElpKEFpKX0sdXNlRGVidWdWYWx1ZTpYaSx1c2VEZWZlcnJlZFZhbHVlOmZ1bmN0aW9uKGUpe3ZhciB0PWppKCk7cmV0dXJuIG51bGw9PT1FP3QubWVtb2l6ZWRTdGF0ZT1lOktpKHQsRS5tZW1vaXplZFN0YXRlLGUpfSx1c2VUcmFuc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuW0lpKEFpKVswXSxqaSgpLm1lbW9pemVkU3RhdGVdfSx1c2VNdXRhYmxlU291cmNlOl9pLHVzZVN5bmNFeHRlcm5hbFN0b3JlOnppLHVzZUlkOkppLHVuc3RhYmxlX2lzTmV3UmVjb25jaWxlcjohMX07ZnVuY3Rpb24gbGwoZSx0KXt0cnl7Zm9yKHZhciBuPSIiLHI9dDtuKz1mdW5jdGlvbihlKXtzd2l0Y2goZS50YWcpe2Nhc2UgNTpyZXR1cm4gZ2UoZS50eXBlKTtjYXNlIDE2OnJldHVybiBnZSgiTGF6eSIpO2Nhc2UgMTM6cmV0dXJuIGdlKCJTdXNwZW5zZSIpO2Nhc2UgMTk6cmV0dXJuIGdlKCJTdXNwZW5zZUxpc3QiKTtjYXNlIDA6Y2FzZSAyOmNhc2UgMTU6cmV0dXJuIGU9eWUoZS50eXBlLCExKTtjYXNlIDExOnJldHVybiBlPXllKGUudHlwZS5yZW5kZXIsITEpO2Nhc2UgMTpyZXR1cm4gZT15ZShlLnR5cGUsITApO2RlZmF1bHQ6cmV0dXJuIiJ9fShyKSxyPXIucmV0dXJuOyk7dmFyIG89bn1jYXRjaChlKXtvPSJcbkVycm9yIGdlbmVyYXRpbmcgc3RhY2s6ICIrZS5tZXNzYWdlKyJcbiIrZS5zdGFja31yZXR1cm57dmFsdWU6ZSxzb3VyY2U6dCxzdGFjazpvLGRpZ2VzdDpudWxsfX1mdW5jdGlvbiBjbChlLHQsbil7cmV0dXJue3ZhbHVlOmUsc291cmNlOm51bGwsc3RhY2s6bnVsbCE9bj9uOm51bGwsZGlnZXN0Om51bGwhPXQ/dDpudWxsfX1mdW5jdGlvbiB1bChlLHQpe3RyeXtjb25zb2xlLmVycm9yKHQudmFsdWUpfWNhdGNoKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlfSl9fXZhciBzbD0iZnVuY3Rpb24iPT10eXBlb2YgV2Vha01hcD9XZWFrTWFwOk1hcDtmdW5jdGlvbiBmbChlLHQsbil7KG49VWEoLTEsbikpLnRhZz0zLG4ucGF5bG9hZD17ZWxlbWVudDpudWxsfTt2YXIgcj10LnZhbHVlO3JldHVybiBuLmNhbGxiYWNrPWZ1bmN0aW9uKCl7a2N8fChrYz0hMCxTYz1yKSx1bCgwLHQpfSxufWZ1bmN0aW9uIGRsKGUsdCxuKXsobj1VYSgtMSxuKSkudGFnPTM7dmFyIHIsbz1lLnR5cGUuZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yLGU9KCJmdW5jdGlvbiI9PXR5cGVvZiBvJiYocj10LnZhbHVlLG4ucGF5bG9hZD1mdW5jdGlvbigpe3JldHVybiBvKHIpfSxuLmNhbGxiYWNrPWZ1bmN0aW9uKCl7dWwoMCx0KX0pLGUuc3RhdGVOb2RlKTtyZXR1cm4gbnVsbCE9PWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlLmNvbXBvbmVudERpZENhdGNoJiYobi5jYWxsYmFjaz1mdW5jdGlvbigpe3VsKDAsdCksImZ1bmN0aW9uIiE9dHlwZW9mIG8mJihudWxsPT09Q2M/Q2M9bmV3IFNldChbdGhpc10pOkNjLmFkZCh0aGlzKSk7dmFyIGU9dC5zdGFjazt0aGlzLmNvbXBvbmVudERpZENhdGNoKHQudmFsdWUse2NvbXBvbmVudFN0YWNrOm51bGwhPT1lP2U6IiJ9KX0pLG59ZnVuY3Rpb24gcGwoZSx0LG4pe3ZhciByLG89ZS5waW5nQ2FjaGU7bnVsbD09PW8/KG89ZS5waW5nQ2FjaGU9bmV3IHNsLHI9bmV3IFNldCxvLnNldCh0LHIpKTp2b2lkIDA9PT0ocj1vLmdldCh0KSkmJihyPW5ldyBTZXQsby5zZXQodCxyKSksci5oYXMobil8fChyLmFkZChuKSxlPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1lLnBpbmdDYWNoZTtudWxsIT09ciYmci5kZWxldGUodCksdD1tKCksZS5waW5nZWRMYW5lc3w9ZS5zdXNwZW5kZWRMYW5lcyZuLHA9PT1lJiYoVCZuKT09PW4mJig0PT09THx8Mz09PUwmJigxMzAwMjM0MjQmVCk9PT1UJiZoKCktdmM8NTAwP1ZjKGUsMCk6YmN8PW4pLExjKGUsdCl9LmJpbmQobnVsbCxlLHQsbiksdC50aGVuKGUsZSkpfWZ1bmN0aW9uIG1sKGUpe2Rve3ZhciB0O2lmKHQ9KHQ9MTM9PT1lLnRhZyk/bnVsbD09PSh0PWUubWVtb2l6ZWRTdGF0ZSl8fG51bGwhPT10LmRlaHlkcmF0ZWQ6dClyZXR1cm4gZX13aGlsZShudWxsIT09KGU9ZS5yZXR1cm4pKTtyZXR1cm4gbnVsbH1mdW5jdGlvbiBobChlLHQsbixyLG8pe2lmKDA9PSgxJmUubW9kZSkpcmV0dXJuIGU9PT10P2UuZmxhZ3N8PTY1NTM2OihlLmZsYWdzfD0xMjgsbi5mbGFnc3w9MTMxMDcyLG4uZmxhZ3MmPS01MjgwNSwxPT09bi50YWcmJihudWxsPT09bi5hbHRlcm5hdGU/bi50YWc9MTc6KCh0PVVhKC0xLDEpKS50YWc9MixCYShuLHQsMSkpKSxuLmxhbmVzfD0xKTtlLmZsYWdzfD02NTUzNixlLmxhbmVzPW99dmFyIGdsPUouUmVhY3RDdXJyZW50T3duZXIsaj0hMTtmdW5jdGlvbiBBKGUsdCxuLHIpe3QuY2hpbGQ9bnVsbD09PWU/cmkodCxudWxsLG4scik6bmkodCxlLmNoaWxkLG4scil9ZnVuY3Rpb24gYmwoZSx0LG4scixvKXtuPW4ucmVuZGVyO3ZhciBhPXQucmVmO3JldHVybiBJYSh0LG8pLHI9Q2koZSx0LG4scixhLG8pLG49RWkoKSxudWxsPT09ZXx8aj8oVSYmbiYmY2EodCksdC5mbGFnc3w9MSxBKGUsdCxyLG8pLHQuY2hpbGQpOih0LnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsdC5mbGFncyY9LTIwNTMsZS5sYW5lcyY9fm8sUmwoZSx0LG8pKX1mdW5jdGlvbiB5bChlLHQsbixyLG8pe3ZhciBhO2lmKG51bGw9PT1lKXJldHVybiJmdW5jdGlvbiIhPXR5cGVvZihhPW4udHlwZSl8fHJ1KGEpfHx2b2lkIDAhPT1hLmRlZmF1bHRQcm9wc3x8bnVsbCE9PW4uY29tcGFyZXx8dm9pZCAwIT09bi5kZWZhdWx0UHJvcHM/KChlPWF1KG4udHlwZSxudWxsLHIsdCx0Lm1vZGUsbykpLnJlZj10LnJlZiwoZS5yZXR1cm49dCkuY2hpbGQ9ZSk6KHQudGFnPTE1LHQudHlwZT1hLHZsKGUsdCxhLHIsbykpO2lmKGE9ZS5jaGlsZCwwPT0oZS5sYW5lcyZvKSl7dmFyIGk9YS5tZW1vaXplZFByb3BzO2lmKChuPW51bGwhPT0obj1uLmNvbXBhcmUpP246U3IpKGkscikmJmUucmVmPT09dC5yZWYpcmV0dXJuIFJsKGUsdCxvKX1yZXR1cm4gdC5mbGFnc3w9MSwoZT1vdShhLHIpKS5yZWY9dC5yZWYsKGUucmV0dXJuPXQpLmNoaWxkPWV9ZnVuY3Rpb24gdmwoZSx0LG4scixvKXtpZihudWxsIT09ZSl7dmFyIGE9ZS5tZW1vaXplZFByb3BzO2lmKFNyKGEscikmJmUucmVmPT09dC5yZWYpe2lmKGo9ITEsdC5wZW5kaW5nUHJvcHM9cj1hLDA9PShlLmxhbmVzJm8pKXJldHVybiB0LmxhbmVzPWUubGFuZXMsUmwoZSx0LG8pOzAhPSgxMzEwNzImZS5mbGFncykmJihqPSEwKX19cmV0dXJuIGtsKGUsdCxuLHIsbyl9ZnVuY3Rpb24gd2woZSx0LG4pe3ZhciByPXQucGVuZGluZ1Byb3BzLG89ci5jaGlsZHJlbixhPW51bGwhPT1lP2UubWVtb2l6ZWRTdGF0ZTpudWxsO2lmKCJoaWRkZW4iPT09ci5tb2RlKWlmKDA9PSgxJnQubW9kZSkpdC5tZW1vaXplZFN0YXRlPXtiYXNlTGFuZXM6MCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczpudWxsfSxiKHBjLGRjKSxkY3w9bjtlbHNle2lmKDA9PSgxMDczNzQxODI0Jm4pKXJldHVybiBlPW51bGwhPT1hP2EuYmFzZUxhbmVzfG46bix0LmxhbmVzPXQuY2hpbGRMYW5lcz0xMDczNzQxODI0LHQubWVtb2l6ZWRTdGF0ZT17YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH0sdC51cGRhdGVRdWV1ZT1udWxsLGIocGMsZGMpLGRjfD1lLG51bGw7dC5tZW1vaXplZFN0YXRlPXtiYXNlTGFuZXM6MCxjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczpudWxsfSxyPW51bGwhPT1hP2EuYmFzZUxhbmVzOm4sYihwYyxkYyksZGN8PXJ9ZWxzZSBudWxsIT09YT8ocj1hLmJhc2VMYW5lc3xuLHQubWVtb2l6ZWRTdGF0ZT1udWxsKTpyPW4sYihwYyxkYyksZGN8PXI7cmV0dXJuIEEoZSx0LG8sbiksdC5jaGlsZH1mdW5jdGlvbiB4bChlLHQpe3ZhciBuPXQucmVmOyhudWxsPT09ZSYmbnVsbCE9PW58fG51bGwhPT1lJiZlLnJlZiE9PW4pJiYodC5mbGFnc3w9NTEyLHQuZmxhZ3N8PTIwOTcxNTIpfWZ1bmN0aW9uIGtsKGUsdCxuLHIsbyl7dmFyIGE9Qm8odCx3KG4pP1VvOnkuY3VycmVudCk7cmV0dXJuIElhKHQsbyksbj1DaShlLHQsbixyLGEsbykscj1FaSgpLG51bGw9PT1lfHxqPyhVJiZyJiZjYSh0KSx0LmZsYWdzfD0xLEEoZSx0LG4sbyksdC5jaGlsZCk6KHQudXBkYXRlUXVldWU9ZS51cGRhdGVRdWV1ZSx0LmZsYWdzJj0tMjA1MyxlLmxhbmVzJj1+byxSbChlLHQsbykpfWZ1bmN0aW9uIFNsKGUsdCxuLHIsbyl7dmFyIGEsaSxsLGMsdSxzLGYsZCxwLG07cmV0dXJuIHcobik/KGE9ITAsJG8odCkpOmE9ITEsSWEodCxvKSxyPW51bGw9PT10LnN0YXRlTm9kZT8oTWwoZSx0KSxYYSh0LG4sciksUWEodCxuLHIsbyksITApOm51bGw9PT1lPyhpPXQuc3RhdGVOb2RlLGw9dC5tZW1vaXplZFByb3BzLGkucHJvcHM9bCxkPWkuY29udGV4dCxjPSJvYmplY3QiPT10eXBlb2YoYz1uLmNvbnRleHRUeXBlKSYmbnVsbCE9PWM/X2EoYyk6Qm8odCxjPXcobik/VW86eS5jdXJyZW50KSwocz0iZnVuY3Rpb24iPT10eXBlb2YodT1uLmdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyl8fCJmdW5jdGlvbiI9PXR5cGVvZiBpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlKXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGkuVU5TQUZFX2NvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHMmJiJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudFdpbGxSZWNlaXZlUHJvcHN8fGw9PT1yJiZkPT09Y3x8WWEoMCxpLHIsYyksUmE9ITEsZj10Lm1lbW9pemVkU3RhdGUsaS5zdGF0ZT1mLFZhKHQscixpLG8pLGQ9dC5tZW1vaXplZFN0YXRlLGwhPT1yfHxmIT09ZHx8di5jdXJyZW50fHxSYT8oImZ1bmN0aW9uIj09dHlwZW9mIHUmJihHYSh0LDAsdSxyKSxkPXQubWVtb2l6ZWRTdGF0ZSksKGw9UmF8fFphKHQsbixsLHIsZixkLGMpKT8oc3x8ImZ1bmN0aW9uIiE9dHlwZW9mIGkuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCYmImZ1bmN0aW9uIiE9dHlwZW9mIGkuY29tcG9uZW50V2lsbE1vdW50fHwoImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50V2lsbE1vdW50JiZpLmNvbXBvbmVudFdpbGxNb3VudCgpLCJmdW5jdGlvbiI9PXR5cGVvZiBpLlVOU0FGRV9jb21wb25lbnRXaWxsTW91bnQmJmkuVU5TQUZFX2NvbXBvbmVudFdpbGxNb3VudCgpKSwiZnVuY3Rpb24iPT10eXBlb2YgaS5jb21wb25lbnREaWRNb3VudCYmKHQuZmxhZ3N8PTQxOTQzMDgpKTooImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSx0Lm1lbW9pemVkUHJvcHM9cix0Lm1lbW9pemVkU3RhdGU9ZCksaS5wcm9wcz1yLGkuc3RhdGU9ZCxpLmNvbnRleHQ9YyxsKTooImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50RGlkTW91bnQmJih0LmZsYWdzfD00MTk0MzA4KSwhMSkpOihpPXQuc3RhdGVOb2RlLERhKGUsdCksbD10Lm1lbW9pemVkUHJvcHMsYz10LnR5cGU9PT10LmVsZW1lbnRUeXBlP2w6a2EodC50eXBlLGwpLGkucHJvcHM9YyxzPXQucGVuZGluZ1Byb3BzLGY9aS5jb250ZXh0LGQ9Im9iamVjdCI9PXR5cGVvZihkPW4uY29udGV4dFR5cGUpJiZudWxsIT09ZD9fYShkKTpCbyh0LGQ9dyhuKT9Vbzp5LmN1cnJlbnQpLCh1PSJmdW5jdGlvbiI9PXR5cGVvZihwPW4uZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKXx8ImZ1bmN0aW9uIj09dHlwZW9mIGkuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUpfHwiZnVuY3Rpb24iIT10eXBlb2YgaS5VTlNBRkVfY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyYmImZ1bmN0aW9uIiE9dHlwZW9mIGkuY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wc3x8bD09PXMmJmY9PT1kfHxZYSgwLGkscixkKSxSYT0hMSxmPXQubWVtb2l6ZWRTdGF0ZSxpLnN0YXRlPWYsVmEodCxyLGksbyksbT10Lm1lbW9pemVkU3RhdGUsbCE9PXN8fGYhPT1tfHx2LmN1cnJlbnR8fFJhPygiZnVuY3Rpb24iPT10eXBlb2YgcCYmKEdhKHQsMCxwLHIpLG09dC5tZW1vaXplZFN0YXRlKSwoYz1SYXx8WmEodCxuLGMscixmLG0sZCl8fCExKT8odXx8ImZ1bmN0aW9uIiE9dHlwZW9mIGkuVU5TQUZFX2NvbXBvbmVudFdpbGxVcGRhdGUmJiJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudFdpbGxVcGRhdGV8fCgiZnVuY3Rpb24iPT10eXBlb2YgaS5jb21wb25lbnRXaWxsVXBkYXRlJiZpLmNvbXBvbmVudFdpbGxVcGRhdGUocixtLGQpLCJmdW5jdGlvbiI9PXR5cGVvZiBpLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlJiZpLlVOU0FGRV9jb21wb25lbnRXaWxsVXBkYXRlKHIsbSxkKSksImZ1bmN0aW9uIj09dHlwZW9mIGkuY29tcG9uZW50RGlkVXBkYXRlJiYodC5mbGFnc3w9NCksImZ1bmN0aW9uIj09dHlwZW9mIGkuZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUmJih0LmZsYWdzfD0xMDI0KSk6KCJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudERpZFVwZGF0ZXx8bD09PWUubWVtb2l6ZWRQcm9wcyYmZj09PWUubWVtb2l6ZWRTdGF0ZXx8KHQuZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiBpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxsPT09ZS5tZW1vaXplZFByb3BzJiZmPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9MTAyNCksdC5tZW1vaXplZFByb3BzPXIsdC5tZW1vaXplZFN0YXRlPW0pLGkucHJvcHM9cixpLnN0YXRlPW0saS5jb250ZXh0PWQsYyk6KCJmdW5jdGlvbiIhPXR5cGVvZiBpLmNvbXBvbmVudERpZFVwZGF0ZXx8bD09PWUubWVtb2l6ZWRQcm9wcyYmZj09PWUubWVtb2l6ZWRTdGF0ZXx8KHQuZmxhZ3N8PTQpLCJmdW5jdGlvbiIhPXR5cGVvZiBpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlfHxsPT09ZS5tZW1vaXplZFByb3BzJiZmPT09ZS5tZW1vaXplZFN0YXRlfHwodC5mbGFnc3w9MTAyNCksITEpKSxDbChlLHQsbixyLGEsbyl9ZnVuY3Rpb24gQ2woZSx0LG4scixvLGEpe3hsKGUsdCk7dmFyIGk9MCE9KDEyOCZ0LmZsYWdzKTtpZighciYmIWkpcmV0dXJuIG8mJldvKHQsbiwhMSksUmwoZSx0LGEpO3I9dC5zdGF0ZU5vZGUsZ2wuY3VycmVudD10O3ZhciBsPWkmJiJmdW5jdGlvbiIhPXR5cGVvZiBuLmdldERlcml2ZWRTdGF0ZUZyb21FcnJvcj9udWxsOnIucmVuZGVyKCk7cmV0dXJuIHQuZmxhZ3N8PTEsbnVsbCE9PWUmJmk/KHQuY2hpbGQ9bmkodCxlLmNoaWxkLG51bGwsYSksdC5jaGlsZD1uaSh0LG51bGwsbCxhKSk6QShlLHQsbCxhKSx0Lm1lbW9pemVkU3RhdGU9ci5zdGF0ZSxvJiZXbyh0LG4sITApLHQuY2hpbGR9ZnVuY3Rpb24gRWwoZSl7dmFyIHQ9ZS5zdGF0ZU5vZGU7dC5wZW5kaW5nQ29udGV4dD9IbygwLHQucGVuZGluZ0NvbnRleHQsdC5wZW5kaW5nQ29udGV4dCE9PXQuY29udGV4dCk6dC5jb250ZXh0JiZIbygwLHQuY29udGV4dCwhMSksdWkoZSx0LmNvbnRhaW5lckluZm8pfWZ1bmN0aW9uIE9sKGUsdCxuLHIsbyl7cmV0dXJuIHZhKCksd2EobyksdC5mbGFnc3w9MjU2LEEoZSx0LG4sciksdC5jaGlsZH12YXIgamw9e2RlaHlkcmF0ZWQ6bnVsbCx0cmVlQ29udGV4dDpudWxsLHJldHJ5TGFuZTowfTtmdW5jdGlvbiBBbChlKXtyZXR1cm57YmFzZUxhbmVzOmUsY2FjaGVQb29sOm51bGwsdHJhbnNpdGlvbnM6bnVsbH19ZnVuY3Rpb24gUGwoZSx0LG4pe3ZhciByLG8sYT10LnBlbmRpbmdQcm9wcyxpPVMuY3VycmVudCxsPSExLGM9MCE9KDEyOCZ0LmZsYWdzKTtpZigobz0obz1jKXx8KG51bGw9PT1lfHxudWxsIT09ZS5tZW1vaXplZFN0YXRlKSYmMCE9KDImaSkpPyhsPSEwLHQuZmxhZ3MmPS0xMjkpOm51bGwhPT1lJiZudWxsPT09ZS5tZW1vaXplZFN0YXRlfHwoaXw9MSksYihTLDEmaSksbnVsbD09PWUpcmV0dXJuIGhhKHQpLG51bGwhPT0oZT10Lm1lbW9pemVkU3RhdGUpJiZudWxsIT09KGU9ZS5kZWh5ZHJhdGVkKT8oMD09KDEmdC5tb2RlKT90LmxhbmVzPTE6IiQhIj09PWUuZGF0YT90LmxhbmVzPTg6dC5sYW5lcz0xMDczNzQxODI0LG51bGwpOihjPWEuY2hpbGRyZW4sZT1hLmZhbGxiYWNrLGw/KGE9dC5tb2RlLGw9dC5jaGlsZCxjPXttb2RlOiJoaWRkZW4iLGNoaWxkcmVuOmN9LDA9PSgxJmEpJiZudWxsIT09bD8obC5jaGlsZExhbmVzPTAsbC5wZW5kaW5nUHJvcHM9Yyk6bD1sdShjLGEsMCxudWxsKSxlPWl1KGUsYSxuLG51bGwpLGwucmV0dXJuPXQsZS5yZXR1cm49dCxsLnNpYmxpbmc9ZSx0LmNoaWxkPWwsdC5jaGlsZC5tZW1vaXplZFN0YXRlPUFsKG4pLHQubWVtb2l6ZWRTdGF0ZT1qbCxlKTpJbCh0LGMpKTtpZihudWxsPT09KGk9ZS5tZW1vaXplZFN0YXRlKXx8bnVsbD09PShvPWkuZGVoeWRyYXRlZCkpcmV0dXJuIGw/KGw9YS5mYWxsYmFjayxjPXQubW9kZSxvPShpPWUuY2hpbGQpLnNpYmxpbmcsdT17bW9kZToiaGlkZGVuIixjaGlsZHJlbjphLmNoaWxkcmVufSwwPT0oMSZjKSYmdC5jaGlsZCE9PWk/KChhPXQuY2hpbGQpLmNoaWxkTGFuZXM9MCxhLnBlbmRpbmdQcm9wcz11LHQuZGVsZXRpb25zPW51bGwpOihhPW91KGksdSkpLnN1YnRyZWVGbGFncz0xNDY4MDA2NCZpLnN1YnRyZWVGbGFncyxudWxsIT09bz9sPW91KG8sbCk6KGw9aXUobCxjLG4sbnVsbCkpLmZsYWdzfD0yLGwucmV0dXJuPXQsYS5yZXR1cm49dCxhLnNpYmxpbmc9bCx0LmNoaWxkPWEsYT1sLGw9dC5jaGlsZCxjPW51bGw9PT0oYz1lLmNoaWxkLm1lbW9pemVkU3RhdGUpP0FsKG4pOntiYXNlTGFuZXM6Yy5iYXNlTGFuZXN8bixjYWNoZVBvb2w6bnVsbCx0cmFuc2l0aW9uczpjLnRyYW5zaXRpb25zfSxsLm1lbW9pemVkU3RhdGU9YyxsLmNoaWxkTGFuZXM9ZS5jaGlsZExhbmVzJn5uLHQubWVtb2l6ZWRTdGF0ZT1qbCk6KGU9KGw9ZS5jaGlsZCkuc2libGluZyxhPW91KGwse21vZGU6InZpc2libGUiLGNoaWxkcmVuOmEuY2hpbGRyZW59KSwwPT0oMSZ0Lm1vZGUpJiYoYS5sYW5lcz1uKSxhLnJldHVybj10LChhLnNpYmxpbmc9bnVsbCkhPT1lJiYobnVsbD09PShuPXQuZGVsZXRpb25zKT8odC5kZWxldGlvbnM9W2VdLHQuZmxhZ3N8PTE2KTpuLnB1c2goZSkpLHQuY2hpbGQ9YSx0Lm1lbW9pemVkU3RhdGU9bnVsbCksYTt2YXIgdT1lLGw9dCxlPWEscz1vLHQ9aSxhPW47aWYoYylyZXR1cm4gMjU2JmwuZmxhZ3M/KGwuZmxhZ3MmPS0yNTcsZT1jbChFcnJvcihEKDQyMikpKSxfbCh1LGwsYSxlKSk6bnVsbCE9PWwubWVtb2l6ZWRTdGF0ZT8obC5jaGlsZD11LmNoaWxkLGwuZmxhZ3N8PTEyOCxudWxsKToodD1lLmZhbGxiYWNrLHM9bC5tb2RlLGU9bHUoe21vZGU6InZpc2libGUiLGNoaWxkcmVuOmUuY2hpbGRyZW59LHMsMCxudWxsKSwodD1pdSh0LHMsYSxudWxsKSkuZmxhZ3N8PTIsZS5yZXR1cm49bCx0LnJldHVybj1sLGUuc2libGluZz10LGwuY2hpbGQ9ZSwwIT0oMSZsLm1vZGUpJiZuaShsLHUuY2hpbGQsbnVsbCxhKSxsLmNoaWxkLm1lbW9pemVkU3RhdGU9QWwoYSksbC5tZW1vaXplZFN0YXRlPWpsLHQpO2lmKDA9PSgxJmwubW9kZSkpcmV0dXJuIF9sKHUsbCxhLG51bGwpO2lmKCIkISI9PT1zLmRhdGEpcmV0dXJuIGU9cj0oZT1zLm5leHRTaWJsaW5nJiZzLm5leHRTaWJsaW5nLmRhdGFzZXQpP2UuZGdzdDpyLHQ9RXJyb3IoRCg0MTkpKSxlPWNsKHQsZSx2b2lkIDApLF9sKHUsbCxhLGUpO2lmKHI9MCE9KGEmdS5jaGlsZExhbmVzKSxqfHxyKXtpZihudWxsIT09KGU9cCkpe3N3aXRjaChhJi1hKXtjYXNlIDQ6cz0yO2JyZWFrO2Nhc2UgMTY6cz04O2JyZWFrO2Nhc2UgNjQ6Y2FzZSAxMjg6Y2FzZSAyNTY6Y2FzZSA1MTI6Y2FzZSAxMDI0OmNhc2UgMjA0ODpjYXNlIDQwOTY6Y2FzZSA4MTkyOmNhc2UgMTYzODQ6Y2FzZSAzMjc2ODpjYXNlIDY1NTM2OmNhc2UgMTMxMDcyOmNhc2UgMjYyMTQ0OmNhc2UgNTI0Mjg4OmNhc2UgMTA0ODU3NjpjYXNlIDIwOTcxNTI6Y2FzZSA0MTk0MzA0OmNhc2UgODM4ODYwODpjYXNlIDE2Nzc3MjE2OmNhc2UgMzM1NTQ0MzI6Y2FzZSA2NzEwODg2NDpzPTMyO2JyZWFrO2Nhc2UgNTM2ODcwOTEyOnM9MjY4NDM1NDU2O2JyZWFrO2RlZmF1bHQ6cz0wfTAhPT0ocz0wIT0ocyYoZS5zdXNwZW5kZWRMYW5lc3xhKSk/MDpzKSYmcyE9PXQucmV0cnlMYW5lJiYodC5yZXRyeUxhbmU9cyxNYSh1LHMpLFRjKGUsdSxzLC0xKSl9cmV0dXJuIEdjKCksZT1jbChFcnJvcihEKDQyMSkpKSxfbCh1LGwsYSxlKX1yZXR1cm4iJD8iPT09cy5kYXRhPyhsLmZsYWdzfD0xMjgsbC5jaGlsZD11LmNoaWxkLGw9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5tZW1vaXplZFN0YXRlLG49MDtudWxsIT09dCYmKG49dC5yZXRyeUxhbmUpLEpjKGUsbil9LmJpbmQobnVsbCx1KSxzLl9yZWFjdFJldHJ5PWwsbnVsbCk6KHU9dC50cmVlQ29udGV4dCxrPVNvKHMubmV4dFNpYmxpbmcpLHNhPWwsVT0hMCwoZmE9bnVsbCkhPT11JiYodGFbbmErK109b2EsdGFbbmErK109YWEsdGFbbmErK109cmEsb2E9dS5pZCxhYT11Lm92ZXJmbG93LHJhPWwpLChsPUlsKGwsZS5jaGlsZHJlbikpLmZsYWdzfD00MDk2LGwpfWZ1bmN0aW9uIElsKGUsdCl7cmV0dXJuKCh0PWx1KHttb2RlOiJ2aXNpYmxlIixjaGlsZHJlbjp0fSxlLm1vZGUsMCxudWxsKSkucmV0dXJuPWUpLmNoaWxkPXR9ZnVuY3Rpb24gX2woZSx0LG4scil7cmV0dXJuIG51bGwhPT1yJiZ3YShyKSxuaSh0LGUuY2hpbGQsbnVsbCxuKSwoZT1JbCh0LHQucGVuZGluZ1Byb3BzLmNoaWxkcmVuKSkuZmxhZ3N8PTIsdC5tZW1vaXplZFN0YXRlPW51bGwsZX1mdW5jdGlvbiB6bChlLHQsbil7ZS5sYW5lc3w9dDt2YXIgcj1lLmFsdGVybmF0ZTtudWxsIT09ciYmKHIubGFuZXN8PXQpLFBhKGUucmV0dXJuLHQsbil9ZnVuY3Rpb24gVGwoZSx0LG4scixvKXt2YXIgYT1lLm1lbW9pemVkU3RhdGU7bnVsbD09PWE/ZS5tZW1vaXplZFN0YXRlPXtpc0JhY2t3YXJkczp0LHJlbmRlcmluZzpudWxsLHJlbmRlcmluZ1N0YXJ0VGltZTowLGxhc3Q6cix0YWlsOm4sdGFpbE1vZGU6b306KGEuaXNCYWNrd2FyZHM9dCxhLnJlbmRlcmluZz1udWxsLGEucmVuZGVyaW5nU3RhcnRUaW1lPTAsYS5sYXN0PXIsYS50YWlsPW4sYS50YWlsTW9kZT1vKX1mdW5jdGlvbiBMbChlLHQsbil7dmFyIHI9dC5wZW5kaW5nUHJvcHMsbz1yLnJldmVhbE9yZGVyLGE9ci50YWlsO2lmKEEoZSx0LHIuY2hpbGRyZW4sbiksMCE9KDImKHI9Uy5jdXJyZW50KSkpcj0xJnJ8Mix0LmZsYWdzfD0xMjg7ZWxzZXtpZihudWxsIT09ZSYmMCE9KDEyOCZlLmZsYWdzKSllOmZvcihlPXQuY2hpbGQ7bnVsbCE9PWU7KXtpZigxMz09PWUudGFnKW51bGwhPT1lLm1lbW9pemVkU3RhdGUmJnpsKGUsbix0KTtlbHNlIGlmKDE5PT09ZS50YWcpemwoZSxuLHQpO2Vsc2UgaWYobnVsbCE9PWUuY2hpbGQpe2U9KGUuY2hpbGQucmV0dXJuPWUpLmNoaWxkO2NvbnRpbnVlfWlmKGU9PT10KWJyZWFrO2Zvcig7bnVsbD09PWUuc2libGluZzspe2lmKG51bGw9PT1lLnJldHVybnx8ZS5yZXR1cm49PT10KWJyZWFrIGU7ZT1lLnJldHVybn1lLnNpYmxpbmcucmV0dXJuPWUucmV0dXJuLGU9ZS5zaWJsaW5nfXImPTF9aWYoYihTLHIpLDA9PSgxJnQubW9kZSkpdC5tZW1vaXplZFN0YXRlPW51bGw7ZWxzZSBzd2l0Y2gobyl7Y2FzZSJmb3J3YXJkcyI6Zm9yKG49dC5jaGlsZCxvPW51bGw7bnVsbCE9PW47KW51bGwhPT0oZT1uLmFsdGVybmF0ZSkmJm51bGw9PT1waShlKSYmKG89biksbj1uLnNpYmxpbmc7bnVsbD09PShuPW8pPyhvPXQuY2hpbGQsdC5jaGlsZD1udWxsKToobz1uLnNpYmxpbmcsbi5zaWJsaW5nPW51bGwpLFRsKHQsITEsbyxuLGEpO2JyZWFrO2Nhc2UiYmFja3dhcmRzIjpmb3Iobz10LmNoaWxkLHQuY2hpbGQ9bj1udWxsO251bGwhPT1vOyl7aWYobnVsbCE9PShlPW8uYWx0ZXJuYXRlKSYmbnVsbD09PXBpKGUpKXt0LmNoaWxkPW87YnJlYWt9ZT1vLnNpYmxpbmcsby5zaWJsaW5nPW4sbj1vLG89ZX1UbCh0LCEwLG4sbnVsbCxhKTticmVhaztjYXNlInRvZ2V0aGVyIjpUbCh0LCExLG51bGwsbnVsbCx2b2lkIDApO2JyZWFrO2RlZmF1bHQ6dC5tZW1vaXplZFN0YXRlPW51bGx9cmV0dXJuIHQuY2hpbGR9ZnVuY3Rpb24gTWwoZSx0KXswPT0oMSZ0Lm1vZGUpJiZudWxsIT09ZSYmKGUuYWx0ZXJuYXRlPW51bGwsdC5hbHRlcm5hdGU9bnVsbCx0LmZsYWdzfD0yKX1mdW5jdGlvbiBSbChlLHQsbil7aWYobnVsbCE9PWUmJih0LmRlcGVuZGVuY2llcz1lLmRlcGVuZGVuY2llcyksaGN8PXQubGFuZXMsMD09KG4mdC5jaGlsZExhbmVzKSlyZXR1cm4gbnVsbDtpZihudWxsIT09ZSYmdC5jaGlsZCE9PWUuY2hpbGQpdGhyb3cgRXJyb3IoRCgxNTMpKTtpZihudWxsIT09dC5jaGlsZCl7Zm9yKG49b3UoZT10LmNoaWxkLGUucGVuZGluZ1Byb3BzKSwodC5jaGlsZD1uKS5yZXR1cm49dDtudWxsIT09ZS5zaWJsaW5nOyllPWUuc2libGluZywobj1uLnNpYmxpbmc9b3UoZSxlLnBlbmRpbmdQcm9wcykpLnJldHVybj10O24uc2libGluZz1udWxsfXJldHVybiB0LmNoaWxkfWZ1bmN0aW9uIE5sKGUsdCl7aWYoIVUpc3dpdGNoKGUudGFpbE1vZGUpe2Nhc2UiaGlkZGVuIjp0PWUudGFpbDtmb3IodmFyIG49bnVsbDtudWxsIT09dDspbnVsbCE9PXQuYWx0ZXJuYXRlJiYobj10KSx0PXQuc2libGluZztudWxsPT09bj9lLnRhaWw9bnVsbDpuLnNpYmxpbmc9bnVsbDticmVhaztjYXNlImNvbGxhcHNlZCI6Zm9yKHZhciBuPWUudGFpbCxyPW51bGw7bnVsbCE9PW47KW51bGwhPT1uLmFsdGVybmF0ZSYmKHI9biksbj1uLnNpYmxpbmc7bnVsbD09PXI/dHx8bnVsbD09PWUudGFpbD9lLnRhaWw9bnVsbDplLnRhaWwuc2libGluZz1udWxsOnIuc2libGluZz1udWxsfX1mdW5jdGlvbiBmKGUpe3ZhciB0PW51bGwhPT1lLmFsdGVybmF0ZSYmZS5hbHRlcm5hdGUuY2hpbGQ9PT1lLmNoaWxkLG49MCxyPTA7aWYodClmb3IodmFyIG89ZS5jaGlsZDtudWxsIT09bzspbnw9by5sYW5lc3xvLmNoaWxkTGFuZXMscj0ocnw9MTQ2ODAwNjQmby5zdWJ0cmVlRmxhZ3MpfDE0NjgwMDY0Jm8uZmxhZ3Msby5yZXR1cm49ZSxvPW8uc2libGluZztlbHNlIGZvcihvPWUuY2hpbGQ7bnVsbCE9PW87KW58PW8ubGFuZXN8by5jaGlsZExhbmVzLHI9KHJ8PW8uc3VidHJlZUZsYWdzKXxvLmZsYWdzLG8ucmV0dXJuPWUsbz1vLnNpYmxpbmc7ZS5zdWJ0cmVlRmxhZ3N8PXIsZS5jaGlsZExhbmVzPW59dmFyIERsPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPXQuY2hpbGQ7bnVsbCE9PW47KXtpZig1PT09bi50YWd8fDY9PT1uLnRhZyllLmFwcGVuZENoaWxkKG4uc3RhdGVOb2RlKTtlbHNlIGlmKDQhPT1uLnRhZyYmbnVsbCE9PW4uY2hpbGQpe249KG4uY2hpbGQucmV0dXJuPW4pLmNoaWxkO2NvbnRpbnVlfWlmKG49PT10KWJyZWFrO2Zvcig7bnVsbD09PW4uc2libGluZzspe2lmKG51bGw9PT1uLnJldHVybnx8bi5yZXR1cm49PT10KXJldHVybjtuPW4ucmV0dXJufW4uc2libGluZy5yZXR1cm49bi5yZXR1cm4sbj1uLnNpYmxpbmd9fSxVbD1mdW5jdGlvbihlLHQsbixyKXt2YXIgbz1lLm1lbW9pemVkUHJvcHM7aWYobyE9PXIpe2U9dC5zdGF0ZU5vZGUsY2koYWkuY3VycmVudCk7dmFyIGEsaT1udWxsO3N3aXRjaChuKXtjYXNlImlucHV0IjpvPUVlKGUsbykscj1FZShlLHIpLGk9W107YnJlYWs7Y2FzZSJzZWxlY3QiOm89Zyh7fSxvLHt2YWx1ZTp2b2lkIDB9KSxyPWcoe30scix7dmFsdWU6dm9pZCAwfSksaT1bXTticmVhaztjYXNlInRleHRhcmVhIjpvPVRlKGUsbykscj1UZShlLHIpLGk9W107YnJlYWs7ZGVmYXVsdDoiZnVuY3Rpb24iIT10eXBlb2Ygby5vbkNsaWNrJiYiZnVuY3Rpb24iPT10eXBlb2Ygci5vbkNsaWNrJiYoZS5vbmNsaWNrPXBvKX1mb3IodSBpbiBaZShuLHIpLG49bnVsbCxvKWlmKCFyLmhhc093blByb3BlcnR5KHUpJiZvLmhhc093blByb3BlcnR5KHUpJiZudWxsIT1vW3VdKWlmKCJzdHlsZSI9PT11KXt2YXIgbD1vW3VdO2ZvcihhIGluIGwpbC5oYXNPd25Qcm9wZXJ0eShhKSYmKG49bnx8e30sblthXT0iIil9ZWxzZSJkYW5nZXJvdXNseVNldElubmVySFRNTCIhPT11JiYiY2hpbGRyZW4iIT09dSYmInN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT11JiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PXUmJiJhdXRvRm9jdXMiIT09dSYmKEguaGFzT3duUHJvcGVydHkodSk/aT1pfHxbXTooaT1pfHxbXSkucHVzaCh1LG51bGwpKTtmb3IodSBpbiByKXt2YXIgYz1yW3VdLGw9bnVsbCE9bz9vW3VdOnZvaWQgMDtpZihyLmhhc093blByb3BlcnR5KHUpJiZjIT09bCYmKG51bGwhPWN8fG51bGwhPWwpKWlmKCJzdHlsZSI9PT11KWlmKGwpe2ZvcihhIGluIGwpIWwuaGFzT3duUHJvcGVydHkoYSl8fGMmJmMuaGFzT3duUHJvcGVydHkoYSl8fChuPW58fHt9LG5bYV09IiIpO2ZvcihhIGluIGMpYy5oYXNPd25Qcm9wZXJ0eShhKSYmbFthXSE9PWNbYV0mJihuPW58fHt9LG5bYV09Y1thXSl9ZWxzZSBufHwoaT1pfHxbXSkucHVzaCh1LG4pLG49YztlbHNlImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIj09PXU/KGM9Yz9jLl9faHRtbDp2b2lkIDAsbD1sP2wuX19odG1sOnZvaWQgMCxudWxsIT1jJiZsIT09YyYmKGk9aXx8W10pLnB1c2godSxjKSk6ImNoaWxkcmVuIj09PXU/InN0cmluZyIhPXR5cGVvZiBjJiYibnVtYmVyIiE9dHlwZW9mIGN8fChpPWl8fFtdKS5wdXNoKHUsIiIrYyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT11JiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PXUmJihILmhhc093blByb3BlcnR5KHUpPyhudWxsIT1jJiYib25TY3JvbGwiPT09dSYmcygic2Nyb2xsIixlKSxpfHxsPT09Y3x8KGk9W10pKTooaT1pfHxbXSkucHVzaCh1LGMpKX1uJiYoaT1pfHxbXSkucHVzaCgic3R5bGUiLG4pO3ZhciB1PWk7KHQudXBkYXRlUXVldWU9dSkmJih0LmZsYWdzfD00KX19LEJsPWZ1bmN0aW9uKGUsdCxuLHIpe24hPT1yJiYodC5mbGFnc3w9NCl9LEZsPSExLFA9ITEsSGw9ImZ1bmN0aW9uIj09dHlwZW9mIFdlYWtTZXQ/V2Vha1NldDpTZXQsST1udWxsO2Z1bmN0aW9uIFZsKHQsbil7dmFyIGU9dC5yZWY7aWYobnVsbCE9PWUpaWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpdHJ5e2UobnVsbCl9Y2F0Y2goZSl7TSh0LG4sZSl9ZWxzZSBlLmN1cnJlbnQ9bnVsbH1mdW5jdGlvbiAkbCh0LG4sZSl7dHJ5e2UoKX1jYXRjaChlKXtNKHQsbixlKX19dmFyIFdsPSExO2Z1bmN0aW9uIEdsKGUsdCxuKXt2YXIgcj10LnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT0ocj1udWxsIT09cj9yLmxhc3RFZmZlY3Q6bnVsbCkpe3ZhciBvLGE9cj1yLm5leHQ7ZG97fXdoaWxlKChhLnRhZyZlKT09PWUmJihvPWEuZGVzdHJveSwoYS5kZXN0cm95PXZvaWQgMCkhPT1vKSYmJGwodCxuLG8pLChhPWEubmV4dCkhPT1yKX19ZnVuY3Rpb24gcWwoZSx0KXtpZihudWxsIT09KHQ9bnVsbCE9PSh0PXQudXBkYXRlUXVldWUpP3QubGFzdEVmZmVjdDpudWxsKSl7dmFyIG4scj10PXQubmV4dDtkb3t9d2hpbGUoKHIudGFnJmUpPT09ZSYmKG49ci5jcmVhdGUsci5kZXN0cm95PW4oKSksKHI9ci5uZXh0KSE9PXQpfX1mdW5jdGlvbiBabChlKXt2YXIgdCxuPWUucmVmO251bGwhPT1uJiYodD1lLnN0YXRlTm9kZSxlLnRhZyxlPXQsImZ1bmN0aW9uIj09dHlwZW9mIG4/bihlKTpuLmN1cnJlbnQ9ZSl9ZnVuY3Rpb24gWGwoZSl7cmV0dXJuIDU9PT1lLnRhZ3x8Mz09PWUudGFnfHw0PT09ZS50YWd9ZnVuY3Rpb24gWWwoZSl7ZTpmb3IoOzspe2Zvcig7bnVsbD09PWUuc2libGluZzspe2lmKG51bGw9PT1lLnJldHVybnx8WGwoZS5yZXR1cm4pKXJldHVybiBudWxsO2U9ZS5yZXR1cm59Zm9yKGUuc2libGluZy5yZXR1cm49ZS5yZXR1cm4sZT1lLnNpYmxpbmc7NSE9PWUudGFnJiY2IT09ZS50YWcmJjE4IT09ZS50YWc7KXtpZigyJmUuZmxhZ3MpY29udGludWUgZTtpZihudWxsPT09ZS5jaGlsZHx8ND09PWUudGFnKWNvbnRpbnVlIGU7ZT0oZS5jaGlsZC5yZXR1cm49ZSkuY2hpbGR9aWYoISgyJmUuZmxhZ3MpKXJldHVybiBlLnN0YXRlTm9kZX19dmFyIGQ9bnVsbCxRbD0hMTtmdW5jdGlvbiBLbChlLHQsbil7Zm9yKG49bi5jaGlsZDtudWxsIT09bjspSmwoZSx0LG4pLG49bi5zaWJsaW5nfWZ1bmN0aW9uIEpsKGUsdCxuKXtpZihfdCYmImZ1bmN0aW9uIj09dHlwZW9mIF90Lm9uQ29tbWl0RmliZXJVbm1vdW50KXRyeXtfdC5vbkNvbW1pdEZpYmVyVW5tb3VudChJdCxuKX1jYXRjaChlKXt9c3dpdGNoKG4udGFnKXtjYXNlIDU6UHx8Vmwobix0KTtjYXNlIDY6dmFyIHI9ZCxvPVFsO2Q9bnVsbCxLbChlLHQsbiksUWw9byxudWxsIT09KGQ9cikmJihRbD8oZT1kLG49bi5zdGF0ZU5vZGUsKDg9PT1lLm5vZGVUeXBlP2UucGFyZW50Tm9kZTplKS5yZW1vdmVDaGlsZChuKSk6ZC5yZW1vdmVDaGlsZChuLnN0YXRlTm9kZSkpO2JyZWFrO2Nhc2UgMTg6bnVsbCE9PWQmJihRbD8oZT1kLG49bi5zdGF0ZU5vZGUsOD09PWUubm9kZVR5cGU/a28oZS5wYXJlbnROb2RlLG4pOjE9PT1lLm5vZGVUeXBlJiZrbyhlLG4pLG1uKGUpKTprbyhkLG4uc3RhdGVOb2RlKSk7YnJlYWs7Y2FzZSA0OnI9ZCxvPVFsLGQ9bi5zdGF0ZU5vZGUuY29udGFpbmVySW5mbyxRbD0hMCxLbChlLHQsbiksZD1yLFFsPW87YnJlYWs7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNDpjYXNlIDE1OmlmKCFQJiZudWxsIT09KHI9bi51cGRhdGVRdWV1ZSkmJm51bGwhPT0ocj1yLmxhc3RFZmZlY3QpKXtvPXI9ci5uZXh0O2Rve3ZhciBhPW8uZGVzdHJveSxpPW8udGFnfXdoaWxlKHZvaWQgMD09PWF8fDA9PSgyJmkpJiYwPT0oNCZpKXx8JGwobix0LGEpLChvPW8ubmV4dCkhPT1yKX1LbChlLHQsbik7YnJlYWs7Y2FzZSAxOmlmKCFQJiYoVmwobix0KSwiZnVuY3Rpb24iPT10eXBlb2Yocj1uLnN0YXRlTm9kZSkuY29tcG9uZW50V2lsbFVubW91bnQpKXRyeXtyLnByb3BzPW4ubWVtb2l6ZWRQcm9wcyxyLnN0YXRlPW4ubWVtb2l6ZWRTdGF0ZSxyLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7TShuLHQsZSl9S2woZSx0LG4pO2JyZWFrO2Nhc2UgMjE6S2woZSx0LG4pO2JyZWFrO2Nhc2UgMjI6MSZuLm1vZGU/KFA9KHI9UCl8fG51bGwhPT1uLm1lbW9pemVkU3RhdGUsS2woZSx0LG4pLFA9cik6S2woZSx0LG4pO2JyZWFrO2RlZmF1bHQ6S2woZSx0LG4pfX1mdW5jdGlvbiBlYyhuKXt2YXIgcixlPW4udXBkYXRlUXVldWU7bnVsbCE9PWUmJigobi51cGRhdGVRdWV1ZT1udWxsKT09PShyPW4uc3RhdGVOb2RlKSYmKHI9bi5zdGF0ZU5vZGU9bmV3IEhsKSxlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj0wO3N3aXRjaChlLnRhZyl7Y2FzZSAxMzp2YXIgcj1lLnN0YXRlTm9kZSxvPWUubWVtb2l6ZWRTdGF0ZTtudWxsIT09byYmKG49by5yZXRyeUxhbmUpO2JyZWFrO2Nhc2UgMTk6cj1lLnN0YXRlTm9kZTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKEQoMzE0KSl9bnVsbCE9PXImJnIuZGVsZXRlKHQpLEpjKGUsbil9LmJpbmQobnVsbCxuLGUpO3IuaGFzKGUpfHwoci5hZGQoZSksZS50aGVuKHQsdCkpfSkpfWZ1bmN0aW9uIHRjKGUsdCl7dmFyIG49dC5kZWxldGlvbnM7aWYobnVsbCE9PW4pZm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBvPW5bcl07dHJ5e3ZhciBhPWUsaT10LGw9aTtlOmZvcig7bnVsbCE9PWw7KXtzd2l0Y2gobC50YWcpe2Nhc2UgNTpkPWwuc3RhdGVOb2RlLFFsPSExO2JyZWFrIGU7Y2FzZSAzOmNhc2UgNDpkPWwuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8sUWw9ITA7YnJlYWsgZX1sPWwucmV0dXJufWlmKG51bGw9PT1kKXRocm93IEVycm9yKEQoMTYwKSk7SmwoYSxpLG8pLGQ9bnVsbCxRbD0hMTt2YXIgYz1vLmFsdGVybmF0ZTtudWxsIT09YyYmKGMucmV0dXJuPW51bGwpLG8ucmV0dXJuPW51bGx9Y2F0Y2goZSl7TShvLHQsZSl9fWlmKDEyODU0JnQuc3VidHJlZUZsYWdzKWZvcih0PXQuY2hpbGQ7bnVsbCE9PXQ7KW5jKHQsZSksdD10LnNpYmxpbmd9ZnVuY3Rpb24gbmModCxlKXt2YXIgbj10LmFsdGVybmF0ZSxyPXQuZmxhZ3M7c3dpdGNoKHQudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE0OmNhc2UgMTU6aWYodGMoZSx0KSxyYyh0KSw0JnIpe3RyeXtHbCgzLHQsdC5yZXR1cm4pLHFsKDMsdCl9Y2F0Y2goZSl7TSh0LHQucmV0dXJuLGUpfXRyeXtHbCg1LHQsdC5yZXR1cm4pfWNhdGNoKGUpe00odCx0LnJldHVybixlKX19YnJlYWs7Y2FzZSAxOnRjKGUsdCkscmModCksNTEyJnImJm51bGwhPT1uJiZWbChuLG4ucmV0dXJuKTticmVhaztjYXNlIDU6aWYodGMoZSx0KSxyYyh0KSw1MTImciYmbnVsbCE9PW4mJlZsKG4sbi5yZXR1cm4pLDMyJnQuZmxhZ3Mpe3ZhciBvPXQuc3RhdGVOb2RlO3RyeXtIZShvLCIiKX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWlmKDQmciYmbnVsbCE9KG89dC5zdGF0ZU5vZGUpKXt2YXIgYT10Lm1lbW9pemVkUHJvcHMsaT1udWxsIT09bj9uLm1lbW9pemVkUHJvcHM6YSxsPXQudHlwZSxjPXQudXBkYXRlUXVldWU7aWYoKHQudXBkYXRlUXVldWU9bnVsbCkhPT1jKXRyeXsiaW5wdXQiPT09bCYmInJhZGlvIj09PWEudHlwZSYmbnVsbCE9YS5uYW1lJiZqZShvLGEpLFhlKGwsaSk7Zm9yKHZhciB1PVhlKGwsYSksaT0wO2k8Yy5sZW5ndGg7aSs9Mil7dmFyIHM9Y1tpXSxmPWNbaSsxXTsic3R5bGUiPT09cz9HZShvLGYpOiJkYW5nZXJvdXNseVNldElubmVySFRNTCI9PT1zP0ZlKG8sZik6ImNoaWxkcmVuIj09PXM/SGUobyxmKTpLKG8scyxmLHUpfXN3aXRjaChsKXtjYXNlImlucHV0IjpBZShvLGEpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOk1lKG8sYSk7YnJlYWs7Y2FzZSJzZWxlY3QiOnZhciBkPW8uX3dyYXBwZXJTdGF0ZS53YXNNdWx0aXBsZSxwPShvLl93cmFwcGVyU3RhdGUud2FzTXVsdGlwbGU9ISFhLm11bHRpcGxlLGEudmFsdWUpO251bGwhPXA/emUobywhIWEubXVsdGlwbGUscCwhMSk6ZCE9PSEhYS5tdWx0aXBsZSYmKG51bGwhPWEuZGVmYXVsdFZhbHVlP3plKG8sISFhLm11bHRpcGxlLGEuZGVmYXVsdFZhbHVlLCEwKTp6ZShvLCEhYS5tdWx0aXBsZSxhLm11bHRpcGxlP1tdOiIiLCExKSl9b1tPb109YX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWJyZWFrO2Nhc2UgNjppZih0YyhlLHQpLHJjKHQpLDQmcil7aWYobnVsbD09PXQuc3RhdGVOb2RlKXRocm93IEVycm9yKEQoMTYyKSk7bz10LnN0YXRlTm9kZSxhPXQubWVtb2l6ZWRQcm9wczt0cnl7by5ub2RlVmFsdWU9YX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWJyZWFrO2Nhc2UgMzppZih0YyhlLHQpLHJjKHQpLDQmciYmbnVsbCE9PW4mJm4ubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQpdHJ5e21uKGUuY29udGFpbmVySW5mbyl9Y2F0Y2goZSl7TSh0LHQucmV0dXJuLGUpfWJyZWFrO2Nhc2UgNDp0YyhlLHQpLHJjKHQpO2JyZWFrO2Nhc2UgMTM6dGMoZSx0KSxyYyh0KSw4MTkyJihvPXQuY2hpbGQpLmZsYWdzJiYoYT1udWxsIT09by5tZW1vaXplZFN0YXRlLCEoby5zdGF0ZU5vZGUuaXNIaWRkZW49YSl8fG51bGwhPT1vLmFsdGVybmF0ZSYmbnVsbCE9PW8uYWx0ZXJuYXRlLm1lbW9pemVkU3RhdGV8fCh2Yz1oKCkpKSw0JnImJmVjKHQpO2JyZWFrO2Nhc2UgMjI6aWYocz1udWxsIT09biYmbnVsbCE9PW4ubWVtb2l6ZWRTdGF0ZSwxJnQubW9kZT8oUD0odT1QKXx8cyx0YyhlLHQpLFA9dSk6dGMoZSx0KSxyYyh0KSw4MTkyJnIpe2lmKHU9bnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSwodC5zdGF0ZU5vZGUuaXNIaWRkZW49dSkmJiFzJiYwIT0oMSZ0Lm1vZGUpKWZvcihzPShJPXQpLmNoaWxkO251bGwhPT1zOyl7Zm9yKGY9ST1zO251bGwhPT1JOyl7c3dpdGNoKHA9KGQ9SSkuY2hpbGQsZC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTQ6Y2FzZSAxNTpHbCg0LGQsZC5yZXR1cm4pO2JyZWFrO2Nhc2UgMTpWbChkLGQucmV0dXJuKTt2YXIgbT1kLnN0YXRlTm9kZTtpZigiZnVuY3Rpb24iPT10eXBlb2YgbS5jb21wb25lbnRXaWxsVW5tb3VudCl7bj0ocj1kKS5yZXR1cm47dHJ5e2U9cixtLnByb3BzPWUubWVtb2l6ZWRQcm9wcyxtLnN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxtLmNvbXBvbmVudFdpbGxVbm1vdW50KCl9Y2F0Y2goZSl7TShyLG4sZSl9fWJyZWFrO2Nhc2UgNTpWbChkLGQucmV0dXJuKTticmVhaztjYXNlIDIyOmlmKG51bGwhPT1kLm1lbW9pemVkU3RhdGUpe2ljKGYpO2NvbnRpbnVlfX1udWxsIT09cD8ocC5yZXR1cm49ZCxJPXApOmljKGYpfXM9cy5zaWJsaW5nfWU6Zm9yKHM9bnVsbCxmPXQ7Oyl7aWYoNT09PWYudGFnKXtpZihudWxsPT09cyl7cz1mO3RyeXtvPWYuc3RhdGVOb2RlLHU/ImZ1bmN0aW9uIj09dHlwZW9mKGE9by5zdHlsZSkuc2V0UHJvcGVydHk/YS5zZXRQcm9wZXJ0eSgiZGlzcGxheSIsIm5vbmUiLCJpbXBvcnRhbnQiKTphLmRpc3BsYXk9Im5vbmUiOihsPWYuc3RhdGVOb2RlLGk9bnVsbCE9KGM9Zi5tZW1vaXplZFByb3BzLnN0eWxlKSYmYy5oYXNPd25Qcm9wZXJ0eSgiZGlzcGxheSIpP2MuZGlzcGxheTpudWxsLGwuc3R5bGUuZGlzcGxheT1XZSgiZGlzcGxheSIsaSkpfWNhdGNoKGUpe00odCx0LnJldHVybixlKX19fWVsc2UgaWYoNj09PWYudGFnKXtpZihudWxsPT09cyl0cnl7Zi5zdGF0ZU5vZGUubm9kZVZhbHVlPXU/IiI6Zi5tZW1vaXplZFByb3BzfWNhdGNoKGUpe00odCx0LnJldHVybixlKX19ZWxzZSBpZigoMjIhPT1mLnRhZyYmMjMhPT1mLnRhZ3x8bnVsbD09PWYubWVtb2l6ZWRTdGF0ZXx8Zj09PXQpJiZudWxsIT09Zi5jaGlsZCl7Zj0oZi5jaGlsZC5yZXR1cm49ZikuY2hpbGQ7Y29udGludWV9aWYoZj09PXQpYnJlYWs7Zm9yKDtudWxsPT09Zi5zaWJsaW5nOyl7aWYobnVsbD09PWYucmV0dXJufHxmLnJldHVybj09PXQpYnJlYWsgZTtzPT09ZiYmKHM9bnVsbCksZj1mLnJldHVybn1zPT09ZiYmKHM9bnVsbCksZi5zaWJsaW5nLnJldHVybj1mLnJldHVybixmPWYuc2libGluZ319YnJlYWs7Y2FzZSAxOTp0YyhlLHQpLHJjKHQpLDQmciYmZWModCk7YnJlYWs7Y2FzZSAyMTpicmVhaztkZWZhdWx0OnRjKGUsdCkscmModCl9fWZ1bmN0aW9uIHJjKHQpe3ZhciBlPXQuZmxhZ3M7aWYoMiZlKXt0cnl7ZTp7Zm9yKHZhciBuPXQucmV0dXJuO251bGwhPT1uOyl7aWYoWGwobikpe3ZhciByPW47YnJlYWsgZX1uPW4ucmV0dXJufXRocm93IEVycm9yKEQoMTYwKSl9c3dpdGNoKHIudGFnKXtjYXNlIDU6dmFyIG89ci5zdGF0ZU5vZGU7MzImci5mbGFncyYmKEhlKG8sIiIpLHIuZmxhZ3MmPS0zMyksIWZ1bmN0aW9uIGUodCxuLHIpe3ZhciBvPXQudGFnO2lmKDU9PT1vfHw2PT09byl0PXQuc3RhdGVOb2RlLG4/ci5pbnNlcnRCZWZvcmUodCxuKTpyLmFwcGVuZENoaWxkKHQpO2Vsc2UgaWYoNCE9PW8mJm51bGwhPT0odD10LmNoaWxkKSlmb3IoZSh0LG4sciksdD10LnNpYmxpbmc7bnVsbCE9PXQ7KWUodCxuLHIpLHQ9dC5zaWJsaW5nfSh0LFlsKHQpLG8pO2JyZWFrO2Nhc2UgMzpjYXNlIDQ6dmFyIGE9ci5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzshZnVuY3Rpb24gZSh0LG4scil7dmFyIG89dC50YWc7aWYoNT09PW98fDY9PT1vKXQ9dC5zdGF0ZU5vZGUsbj8oOD09PXIubm9kZVR5cGU/ci5wYXJlbnROb2RlOnIpLmluc2VydEJlZm9yZSh0LG4pOig4PT09ci5ub2RlVHlwZT8obj1yLnBhcmVudE5vZGUpLmluc2VydEJlZm9yZSh0LHIpOihuPXIpLmFwcGVuZENoaWxkKHQpLG51bGw9PShyPXIuX3JlYWN0Um9vdENvbnRhaW5lcikmJm51bGw9PT1uLm9uY2xpY2smJihuLm9uY2xpY2s9cG8pKTtlbHNlIGlmKDQhPT1vJiZudWxsIT09KHQ9dC5jaGlsZCkpZm9yKGUodCxuLHIpLHQ9dC5zaWJsaW5nO251bGwhPT10OyllKHQsbixyKSx0PXQuc2libGluZ30odCxZbCh0KSxhKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKEQoMTYxKSl9fWNhdGNoKGUpe00odCx0LnJldHVybixlKX10LmZsYWdzJj0tM300MDk2JmUmJih0LmZsYWdzJj0tNDA5Nyl9ZnVuY3Rpb24gb2MoZSx0LG4peyFmdW5jdGlvbiBlKHQsbixyKXtmb3IodmFyIG89MCE9KDEmdC5tb2RlKTtudWxsIT09STspe3ZhciBhPUksaT1hLmNoaWxkO2lmKDIyPT09YS50YWcmJm8pe3ZhciBsPW51bGwhPT1hLm1lbW9pemVkU3RhdGV8fEZsO2lmKCFsKXt2YXIgYz1hLmFsdGVybmF0ZSx1PW51bGwhPT1jJiZudWxsIT09Yy5tZW1vaXplZFN0YXRlfHxQLHM9KGM9RmwsUCk7aWYoRmw9bCwoUD11KSYmIXMpZm9yKEk9YTtudWxsIT09STspdT0obD1JKS5jaGlsZCwoMjIhPT1sLnRhZ3x8bnVsbD09PWwubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT11Pyh1LnJldHVybj1sLEk9dSk6bGMoYSk7Zm9yKDtudWxsIT09aTspZShJPWksbixyKSxpPWkuc2libGluZztJPWEsRmw9YyxQPXN9YWModCl9ZWxzZSAwIT0oODc3MiZhLnN1YnRyZWVGbGFncykmJm51bGwhPT1pPyhpLnJldHVybj1hLEk9aSk6YWModCl9fShJPWUsdCxuKX1mdW5jdGlvbiBhYyhlKXtmb3IoO251bGwhPT1JOyl7dmFyIHQ9STtpZigwIT0oODc3MiZ0LmZsYWdzKSl7dmFyIG4scixvLGE9dC5hbHRlcm5hdGU7dHJ5e2lmKDAhPSg4NzcyJnQuZmxhZ3MpKXN3aXRjaCh0LnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpQfHxxbCg1LHQpO2JyZWFrO2Nhc2UgMTp2YXIgaSxsPXQuc3RhdGVOb2RlLGM9KDQmdC5mbGFncyYmIVAmJihudWxsPT09YT9sLmNvbXBvbmVudERpZE1vdW50KCk6KGk9dC5lbGVtZW50VHlwZT09PXQudHlwZT9hLm1lbW9pemVkUHJvcHM6a2EodC50eXBlLGEubWVtb2l6ZWRQcm9wcyksbC5jb21wb25lbnREaWRVcGRhdGUoaSxhLm1lbW9pemVkU3RhdGUsbC5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZSkpKSx0LnVwZGF0ZVF1ZXVlKTtudWxsIT09YyYmJGEoMCxjLGwpO2JyZWFrO2Nhc2UgMzp2YXIgdT10LnVwZGF0ZVF1ZXVlO2lmKG51bGwhPT11KXtpZigoYT1udWxsKSE9PXQuY2hpbGQpc3dpdGNoKHQuY2hpbGQudGFnKXtjYXNlIDU6Y2FzZSAxOmE9dC5jaGlsZC5zdGF0ZU5vZGV9JGEoMCx1LGEpfWJyZWFrO2Nhc2UgNTp2YXIgcz10LnN0YXRlTm9kZTtpZihudWxsPT09YSYmNCZ0LmZsYWdzKXt2YXIgYT1zLGY9dC5tZW1vaXplZFByb3BzO3N3aXRjaCh0LnR5cGUpe2Nhc2UiYnV0dG9uIjpjYXNlImlucHV0IjpjYXNlInNlbGVjdCI6Y2FzZSJ0ZXh0YXJlYSI6Zi5hdXRvRm9jdXMmJmEuZm9jdXMoKTticmVhaztjYXNlImltZyI6Zi5zcmMmJihhLnNyYz1mLnNyYyl9fWJyZWFrO2Nhc2UgNjpjYXNlIDQ6Y2FzZSAxMjpicmVhaztjYXNlIDEzOm51bGw9PT10Lm1lbW9pemVkU3RhdGUmJm51bGwhPT0obj10LmFsdGVybmF0ZSkmJm51bGwhPT0ocj1uLm1lbW9pemVkU3RhdGUpJiZudWxsIT09KG89ci5kZWh5ZHJhdGVkKSYmbW4obyk7YnJlYWs7Y2FzZSAxOTpjYXNlIDE3OmNhc2UgMjE6Y2FzZSAyMjpjYXNlIDIzOmNhc2UgMjU6YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihEKDE2MykpfVB8fDUxMiZ0LmZsYWdzJiZabCh0KX1jYXRjaChlKXtNKHQsdC5yZXR1cm4sZSl9fWlmKHQ9PT1lKXtJPW51bGw7YnJlYWt9aWYobnVsbCE9PShhPXQuc2libGluZykpe2EucmV0dXJuPXQucmV0dXJuLEk9YTticmVha31JPXQucmV0dXJufX1mdW5jdGlvbiBpYyhlKXtmb3IoO251bGwhPT1JOyl7dmFyIHQ9STtpZih0PT09ZSl7ST1udWxsO2JyZWFrfXZhciBuPXQuc2libGluZztpZihudWxsIT09bil7bi5yZXR1cm49dC5yZXR1cm4sST1uO2JyZWFrfUk9dC5yZXR1cm59fWZ1bmN0aW9uIGxjKGUpe2Zvcig7bnVsbCE9PUk7KXt2YXIgdD1JO3RyeXtzd2l0Y2godC50YWcpe2Nhc2UgMDpjYXNlIDExOmNhc2UgMTU6dmFyIG49dC5yZXR1cm47dHJ5e3FsKDQsdCl9Y2F0Y2goZSl7TSh0LG4sZSl9YnJlYWs7Y2FzZSAxOnZhciByPXQuc3RhdGVOb2RlO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiByLmNvbXBvbmVudERpZE1vdW50KXt2YXIgbz10LnJldHVybjt0cnl7ci5jb21wb25lbnREaWRNb3VudCgpfWNhdGNoKGUpe00odCxvLGUpfX12YXIgYT10LnJldHVybjt0cnl7WmwodCl9Y2F0Y2goZSl7TSh0LGEsZSl9YnJlYWs7Y2FzZSA1OnZhciBpPXQucmV0dXJuO3RyeXtabCh0KX1jYXRjaChlKXtNKHQsaSxlKX19fWNhdGNoKGUpe00odCx0LnJldHVybixlKX1pZih0PT09ZSl7ST1udWxsO2JyZWFrfXZhciBsPXQuc2libGluZztpZihudWxsIT09bCl7bC5yZXR1cm49dC5yZXR1cm4sST1sO2JyZWFrfUk9dC5yZXR1cm59fXZhciBjYz1NYXRoLmNlaWwsdWM9Si5SZWFjdEN1cnJlbnREaXNwYXRjaGVyLHNjPUouUmVhY3RDdXJyZW50T3duZXIsZmM9Si5SZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxfPTAscD1udWxsLHo9bnVsbCxUPTAsZGM9MCxwYz1ObygwKSxMPTAsbWM9bnVsbCxoYz0wLGdjPTAsYmM9MCx5Yz1udWxsLGw9bnVsbCx2Yz0wLHdjPTEvMCx4Yz1udWxsLGtjPSExLFNjPW51bGwsQ2M9bnVsbCxFYz0hMSxPYz1udWxsLGpjPTAsQWM9MCxQYz1udWxsLEljPS0xLF9jPTA7ZnVuY3Rpb24gbSgpe3JldHVybiAwIT0oNiZfKT9oKCk6LTEhPT1JYz9JYzpJYz1oKCl9ZnVuY3Rpb24gemMoZSl7cmV0dXJuIDA9PSgxJmUubW9kZSk/MTowIT0oMiZfKSYmMCE9PVQ/VCYtVDpudWxsIT09eGEudHJhbnNpdGlvbj9fYz0wPT09X2M/RnQoKTpfYzowPT09KGU9eCk/dm9pZCAwPT09KGU9d2luZG93LmV2ZW50KT8xNjprbihlLnR5cGUpOmV9ZnVuY3Rpb24gVGMoZSx0LG4scil7aWYoNTA8QWMpdGhyb3cgQWM9MCxQYz1udWxsLEVycm9yKEQoMTg1KSk7VnQoZSxuLHIpLDAhPSgyJl8pJiZlPT09cHx8KGU9PT1wJiYoMD09KDImXykmJihnY3w9biksND09PUwpJiZEYyhlLFQpLExjKGUsciksMT09PW4mJjA9PT1fJiYwPT0oMSZ0Lm1vZGUpJiYod2M9aCgpKzUwMCxxbykmJllvKCkpfWZ1bmN0aW9uIExjKGUsdCl7dmFyIG4scj1lLmNhbGxiYWNrTm9kZSxvPShVdChlLHQpLER0KGUsZT09PXA/VDowKSk7aWYoMD09PW8pbnVsbCE9PXImJnh0KHIpLGUuY2FsbGJhY2tOb2RlPW51bGwsZS5jYWxsYmFja1ByaW9yaXR5PTA7ZWxzZSBpZihlLmNhbGxiYWNrUHJpb3JpdHkhPT0odD1vJi1vKSl7aWYobnVsbCE9ciYmeHQociksMT09PXQpMD09PWUudGFnPyhuPVVjLmJpbmQobnVsbCxlKSxxbz0hMCxYbyhuKSk6WG8oVWMuYmluZChudWxsLGUpKSx3byhmdW5jdGlvbigpezA9PSg2Jl8pJiZZbygpfSkscj1udWxsO2Vsc2V7c3dpdGNoKFd0KG8pKXtjYXNlIDE6cj1FdDticmVhaztjYXNlIDQ6cj1PdDticmVhaztjYXNlIDE2OnI9anQ7YnJlYWs7Y2FzZSA1MzY4NzA5MTI6cj1QdDticmVhaztkZWZhdWx0OnI9anR9cj1ldShyLE1jLmJpbmQobnVsbCxlKSl9ZS5jYWxsYmFja1ByaW9yaXR5PXQsZS5jYWxsYmFja05vZGU9cn19ZnVuY3Rpb24gTWModCxlKXtpZihJYz0tMSwoX2M9MCkhPSg2Jl8pKXRocm93IEVycm9yKEQoMzI3KSk7dmFyIG49dC5jYWxsYmFja05vZGU7aWYoUWMoKSYmdC5jYWxsYmFja05vZGUhPT1uKXJldHVybiBudWxsO3ZhciByPUR0KHQsdD09PXA/VDowKTtpZigwPT09cilyZXR1cm4gbnVsbDtpZigwIT0oMzAmcil8fDAhPShyJnQuZXhwaXJlZExhbmVzKXx8ZSllPXFjKHQscik7ZWxzZXtlPXI7dmFyIG89XyxhPShffD0yLFdjKCkpO2ZvcihwPT09dCYmVD09PWV8fCh4Yz1udWxsLHdjPWgoKSs1MDAsVmModCxlKSk7Oyl0cnl7Zm9yKDtudWxsIT09eiYmIWt0KCk7KVpjKHopO2JyZWFrfWNhdGNoKGUpeyRjKHQsZSl9amEoKSx1Yy5jdXJyZW50PWEsXz1vLGU9bnVsbCE9PXo/MDoocD1udWxsLFQ9MCxMKX1pZigwIT09ZSl7aWYoMT09PShlPTI9PT1lJiYwIT09KG89QnQodCkpP1JjKHQscj1vKTplKSl0aHJvdyBuPW1jLFZjKHQsMCksRGModCxyKSxMYyh0LGgoKSksbjtpZig2PT09ZSlEYyh0LHIpO2Vsc2V7aWYobz10LmN1cnJlbnQuYWx0ZXJuYXRlLDA9PSgzMCZyKSYmIWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1lOzspe2lmKDE2Mzg0JnQuZmxhZ3Mpe3ZhciBuPXQudXBkYXRlUXVldWU7aWYobnVsbCE9PW4mJm51bGwhPT0obj1uLnN0b3JlcykpZm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspe3ZhciBvPW5bcl0sYT1vLmdldFNuYXBzaG90O289by52YWx1ZTt0cnl7aWYoIWtyKGEoKSxvKSlyZXR1cm59Y2F0Y2goZSl7cmV0dXJufX19aWYobj10LmNoaWxkLDE2Mzg0JnQuc3VidHJlZUZsYWdzJiZudWxsIT09biluLnJldHVybj10LHQ9bjtlbHNle2lmKHQ9PT1lKWJyZWFrO2Zvcig7bnVsbD09PXQuc2libGluZzspe2lmKG51bGw9PT10LnJldHVybnx8dC5yZXR1cm49PT1lKXJldHVybiAxO3Q9dC5yZXR1cm59dC5zaWJsaW5nLnJldHVybj10LnJldHVybix0PXQuc2libGluZ319cmV0dXJuIDF9KG8pJiYxPT09KGU9Mj09PShlPXFjKHQscikpJiYwIT09KGE9QnQodCkpP1JjKHQscj1hKTplKSl0aHJvdyBuPW1jLFZjKHQsMCksRGModCxyKSxMYyh0LGgoKSksbjtzd2l0Y2godC5maW5pc2hlZFdvcms9byx0LmZpbmlzaGVkTGFuZXM9cixlKXtjYXNlIDA6Y2FzZSAxOnRocm93IEVycm9yKEQoMzQ1KSk7Y2FzZSAyOlljKHQsbCx4Yyk7YnJlYWs7Y2FzZSAzOmlmKERjKHQsciksKDEzMDAyMzQyNCZyKT09PXImJjEwPChlPXZjKzUwMC1oKCkpKXtpZigwIT09RHQodCwwKSlicmVhaztpZigoKG89dC5zdXNwZW5kZWRMYW5lcykmcikhPT1yKXttKCksdC5waW5nZWRMYW5lc3w9dC5zdXNwZW5kZWRMYW5lcyZvO2JyZWFrfXQudGltZW91dEhhbmRsZT1ibyhZYy5iaW5kKG51bGwsdCxsLHhjKSxlKX1lbHNlIFljKHQsbCx4Yyk7YnJlYWs7Y2FzZSA0OmlmKERjKHQsciksKDQxOTQyNDAmcikhPT1yKXtmb3IoZT10LmV2ZW50VGltZXMsbz0tMTswPHI7KXt2YXIgaT0zMS16dChyKSxhPTE8PGk7bzwoaT1lW2ldKSYmKG89aSksciY9fmF9cj1vLDEwPChyPSgocj1oKCktcik8MTIwPzEyMDpyPDQ4MD80ODA6cjwxMDgwPzEwODA6cjwxOTIwPzE5MjA6cjwzZTM/M2UzOnI8NDMyMD80MzIwOjE5NjAqY2Moci8xOTYwKSktcik/dC50aW1lb3V0SGFuZGxlPWJvKFljLmJpbmQobnVsbCx0LGwseGMpLHIpOlljKHQsbCx4Yyl9YnJlYWs7Y2FzZSA1OlljKHQsbCx4Yyk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihEKDMyOSkpfX19cmV0dXJuIExjKHQsaCgpKSx0LmNhbGxiYWNrTm9kZT09PW4/TWMuYmluZChudWxsLHQpOm51bGx9ZnVuY3Rpb24gUmMoZSx0KXt2YXIgbj15YztyZXR1cm4gZS5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYoVmMoZSx0KS5mbGFnc3w9MjU2KSwyIT09KGU9cWMoZSx0KSkmJih0PWwsbD1uLG51bGwhPT10KSYmTmModCksZX1mdW5jdGlvbiBOYyhlKXtudWxsPT09bD9sPWU6bC5wdXNoLmFwcGx5KGwsZSl9ZnVuY3Rpb24gRGMoZSx0KXtmb3IodD10Jn5iYyZ+Z2MsZS5zdXNwZW5kZWRMYW5lc3w9dCxlLnBpbmdlZExhbmVzJj1+dCxlPWUuZXhwaXJhdGlvblRpbWVzOzA8dDspe3ZhciBuPTMxLXp0KHQpLHI9MTw8bjtlW25dPS0xLHQmPX5yfX1mdW5jdGlvbiBVYyhlKXtpZigwIT0oNiZfKSl0aHJvdyBFcnJvcihEKDMyNykpO1FjKCk7dmFyIHQ9RHQoZSwwKTtpZigwIT0oMSZ0KSl7dmFyIG4scj1xYyhlLHQpO2lmKDE9PT0ocj0wIT09ZS50YWcmJjI9PT1yJiYwIT09KG49QnQoZSkpP1JjKGUsdD1uKTpyKSl0aHJvdyByPW1jLFZjKGUsMCksRGMoZSx0KSxMYyhlLGgoKSkscjtpZig2PT09cil0aHJvdyBFcnJvcihEKDM0NSkpO2UuZmluaXNoZWRXb3JrPWUuY3VycmVudC5hbHRlcm5hdGUsZS5maW5pc2hlZExhbmVzPXQsWWMoZSxsLHhjKX1yZXR1cm4gTGMoZSxoKCkpLG51bGx9ZnVuY3Rpb24gQmMoZSx0KXt2YXIgbj1fO198PTE7dHJ5e3JldHVybiBlKHQpfWZpbmFsbHl7MD09PShfPW4pJiYod2M9aCgpKzUwMCxxbykmJllvKCl9fWZ1bmN0aW9uIEZjKGUpe251bGwhPT1PYyYmMD09PU9jLnRhZyYmMD09KDYmXykmJlFjKCk7dmFyIHQ9XyxuPShffD0xLGZjLnRyYW5zaXRpb24pLHI9eDt0cnl7aWYoZmMudHJhbnNpdGlvbj1udWxsLHg9MSxlKXJldHVybiBlKCl9ZmluYWxseXt4PXIsZmMudHJhbnNpdGlvbj1uLDA9PSg2JihfPXQpKSYmWW8oKX19ZnVuY3Rpb24gSGMoKXtkYz1wYy5jdXJyZW50LHUocGMpfWZ1bmN0aW9uIFZjKGUsdCl7ZS5maW5pc2hlZFdvcms9bnVsbCxlLmZpbmlzaGVkTGFuZXM9MDt2YXIgbixyLG8sYT1lLnRpbWVvdXRIYW5kbGU7aWYoLTEhPT1hJiYoZS50aW1lb3V0SGFuZGxlPS0xLHlvKGEpKSxudWxsIT09eilmb3IoYT16LnJldHVybjtudWxsIT09YTspe3ZhciBpPWE7c3dpdGNoKHVhKGkpLGkudGFnKXtjYXNlIDE6bnVsbCE9KGk9aS50eXBlLmNoaWxkQ29udGV4dFR5cGVzKSYmRm8oKTticmVhaztjYXNlIDM6c2koKSx1KHYpLHUoeSksaGkoKTticmVhaztjYXNlIDU6ZGkoaSk7YnJlYWs7Y2FzZSA0OnNpKCk7YnJlYWs7Y2FzZSAxMzpjYXNlIDE5OnUoUyk7YnJlYWs7Y2FzZSAxMDpBYShpLnR5cGUuX2NvbnRleHQpO2JyZWFrO2Nhc2UgMjI6Y2FzZSAyMzpIYygpfWE9YS5yZXR1cm59aWYoej1lPW91KChwPWUpLmN1cnJlbnQsbnVsbCksVD1kYz10LGJjPWdjPWhjPUw9MCwobD15Yz1tYz1udWxsKSE9PXphKXtmb3IodD0wO3Q8emEubGVuZ3RoO3QrKyludWxsIT09KGk9KGE9emFbdF0pLmludGVybGVhdmVkKSYmKGEuaW50ZXJsZWF2ZWQ9bnVsbCxuPWkubmV4dCxudWxsIT09KHI9YS5wZW5kaW5nKSYmKG89ci5uZXh0LHIubmV4dD1uLGkubmV4dD1vKSxhLnBlbmRpbmc9aSk7emE9bnVsbH1yZXR1cm4gZX1mdW5jdGlvbiAkYyhlLHQpe2Rve3ZhciBuPXo7dHJ5e2lmKGphKCksZ2kuY3VycmVudD1ybCx2aSl7Zm9yKHZhciByPUMubWVtb2l6ZWRTdGF0ZTtudWxsIT09cjspe3ZhciBvPXIucXVldWU7bnVsbCE9PW8mJihvLnBlbmRpbmc9bnVsbCkscj1yLm5leHR9dmk9ITF9aWYoTz1FPUM9bnVsbCx3aT0hMSx4aT15aT0wLChzYy5jdXJyZW50PW51bGwpPT09bnx8bnVsbD09PW4ucmV0dXJuKXtMPTEsbWM9dCx6PW51bGw7YnJlYWt9ZTp7dmFyIGE9ZSxpPW4ucmV0dXJuLGw9dDtpZih0PVQsKGc9bikuZmxhZ3N8PTMyNzY4LG51bGwhPT1sJiYib2JqZWN0Ij09dHlwZW9mIGwmJiJmdW5jdGlvbiI9PXR5cGVvZiBsLnRoZW4pe3ZhciBjLHU9bCxzPWcsZj1zLnRhZyxkPSgwIT0oMSZzLm1vZGUpfHwwIT09ZiYmMTEhPT1mJiYxNSE9PWZ8fCgoYz1zLmFsdGVybmF0ZSk/KHMudXBkYXRlUXVldWU9Yy51cGRhdGVRdWV1ZSxzLm1lbW9pemVkU3RhdGU9Yy5tZW1vaXplZFN0YXRlLHMubGFuZXM9Yy5sYW5lcyk6KHMudXBkYXRlUXVldWU9bnVsbCxzLm1lbW9pemVkU3RhdGU9bnVsbCkpLG1sKGkpKTtpZihudWxsIT09ZCl7ZC5mbGFncyY9LTI1NyxobChkLGksZywwLHQpLDEmZC5tb2RlJiZwbChhLHUsdCk7dmFyIHAsbD11LG09KHQ9ZCkudXBkYXRlUXVldWU7bnVsbD09PW0/KChwPW5ldyBTZXQpLmFkZChsKSx0LnVwZGF0ZVF1ZXVlPXApOm0uYWRkKGwpO2JyZWFrIGV9aWYoMD09KDEmdCkpe3BsKGEsdSx0KSxHYygpO2JyZWFrIGV9bD1FcnJvcihEKDQyNikpfWVsc2UgaWYoVSYmMSZnLm1vZGUpe3ZhciBoPW1sKGkpO2lmKG51bGwhPT1oKXswPT0oNjU1MzYmaC5mbGFncykmJihoLmZsYWdzfD0yNTYpLGhsKGgsaSxnLDAsdCksd2EobGwobCxnKSk7YnJlYWsgZX19YT1sPWxsKGwsZyksNCE9PUwmJihMPTIpLG51bGw9PT15Yz95Yz1bYV06eWMucHVzaChhKSxhPWk7ZG97c3dpdGNoKGEudGFnKXtjYXNlIDM6YS5mbGFnc3w9NjU1MzYsdCY9LXQsYS5sYW5lc3w9dCxIYShhLGZsKDAsbCx0KSk7YnJlYWsgZTtjYXNlIDE6dmFyIGc9bCxiPWEudHlwZSx5PWEuc3RhdGVOb2RlO2lmKDA9PSgxMjgmYS5mbGFncykmJigiZnVuY3Rpb24iPT10eXBlb2YgYi5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3J8fG51bGwhPT15JiYiZnVuY3Rpb24iPT10eXBlb2YgeS5jb21wb25lbnREaWRDYXRjaCYmKG51bGw9PT1DY3x8IUNjLmhhcyh5KSkpKXthLmZsYWdzfD02NTUzNix0Jj0tdCxhLmxhbmVzfD10LEhhKGEsZGwoYSxnLHQpKTticmVhayBlfX19d2hpbGUobnVsbCE9PShhPWEucmV0dXJuKSl9WGMobil9Y2F0Y2goZSl7dD1lLHo9PT1uJiZudWxsIT09biYmKHo9bi5yZXR1cm4pO2NvbnRpbnVlfWJyZWFrfXdoaWxlKDEpfWZ1bmN0aW9uIFdjKCl7dmFyIGU9dWMuY3VycmVudDtyZXR1cm4gdWMuY3VycmVudD1ybCxudWxsPT09ZT9ybDplfWZ1bmN0aW9uIEdjKCl7MCE9PUwmJjMhPT1MJiYyIT09THx8KEw9NCksbnVsbD09PXB8fDA9PSgyNjg0MzU0NTUmaGMpJiYwPT0oMjY4NDM1NDU1JmdjKXx8RGMocCxUKX1mdW5jdGlvbiBxYyh0LGUpe3ZhciBuPV8scj0oX3w9MixXYygpKTtmb3IocD09PXQmJlQ9PT1lfHwoeGM9bnVsbCxWYyh0LGUpKTs7KXRyeXtmb3IoO251bGwhPT16OylaYyh6KTticmVha31jYXRjaChlKXskYyh0LGUpfWlmKGphKCksXz1uLHVjLmN1cnJlbnQ9cixudWxsIT09eil0aHJvdyBFcnJvcihEKDI2MSkpO3JldHVybiBwPW51bGwsVD0wLEx9ZnVuY3Rpb24gWmMoZSl7dmFyIHQ9eXUoZS5hbHRlcm5hdGUsZSxkYyk7ZS5tZW1vaXplZFByb3BzPWUucGVuZGluZ1Byb3BzLG51bGw9PT10P1hjKGUpOno9dCxzYy5jdXJyZW50PW51bGx9ZnVuY3Rpb24gWGMoZSl7dmFyIHQ9ZTtkb3t2YXIgbj10LmFsdGVybmF0ZTtpZihlPXQucmV0dXJuLDA9PSgzMjc2OCZ0LmZsYWdzKSl7aWYobnVsbCE9PShuPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10LnBlbmRpbmdQcm9wcztzd2l0Y2godWEodCksdC50YWcpe2Nhc2UgMjpjYXNlIDE2OmNhc2UgMTU6Y2FzZSAwOmNhc2UgMTE6Y2FzZSA3OmNhc2UgODpjYXNlIDEyOmNhc2UgOTpjYXNlIDE0OnJldHVybiBmKHQpLG51bGw7Y2FzZSAxOnJldHVybiB3KHQudHlwZSkmJkZvKCksZih0KSxudWxsO2Nhc2UgMzpyZXR1cm4gcj10LnN0YXRlTm9kZSxzaSgpLHUodiksdSh5KSxoaSgpLHIucGVuZGluZ0NvbnRleHQmJihyLmNvbnRleHQ9ci5wZW5kaW5nQ29udGV4dCxyLnBlbmRpbmdDb250ZXh0PW51bGwpLG51bGwhPT1lJiZudWxsIT09ZS5jaGlsZHx8KGJhKHQpP3QuZmxhZ3N8PTQ6bnVsbD09PWV8fGUubWVtb2l6ZWRTdGF0ZS5pc0RlaHlkcmF0ZWQmJjA9PSgyNTYmdC5mbGFncyl8fCh0LmZsYWdzfD0xMDI0LG51bGwhPT1mYSYmKE5jKGZhKSxmYT1udWxsKSkpLGYodCksbnVsbDtjYXNlIDU6ZGkodCk7dmFyIG8sYT1jaShsaS5jdXJyZW50KTtpZihuPXQudHlwZSxudWxsIT09ZSYmbnVsbCE9dC5zdGF0ZU5vZGUpVWwoZSx0LG4sciksZS5yZWYhPT10LnJlZiYmKHQuZmxhZ3N8PTUxMix0LmZsYWdzfD0yMDk3MTUyKTtlbHNle2lmKCFyKXtpZihudWxsPT09dC5zdGF0ZU5vZGUpdGhyb3cgRXJyb3IoRCgxNjYpKTtyZXR1cm4gZih0KSxudWxsfWlmKGU9Y2koYWkuY3VycmVudCksYmEodCkpe3I9dC5zdGF0ZU5vZGUsbj10LnR5cGU7dmFyIGksbCxjPXQubWVtb2l6ZWRQcm9wcztzd2l0Y2gocltFb109dCxyW09vXT1jLGU9MCE9KDEmdC5tb2RlKSxuKXtjYXNlImRpYWxvZyI6cygiY2FuY2VsIixyKSxzKCJjbG9zZSIscik7YnJlYWs7Y2FzZSJpZnJhbWUiOmNhc2Uib2JqZWN0IjpjYXNlImVtYmVkIjpzKCJsb2FkIixyKTticmVhaztjYXNlInZpZGVvIjpjYXNlImF1ZGlvIjpmb3IoYT0wO2E8WHIubGVuZ3RoO2ErKylzKFhyW2FdLHIpO2JyZWFrO2Nhc2Uic291cmNlIjpzKCJlcnJvciIscik7YnJlYWs7Y2FzZSJpbWciOmNhc2UiaW1hZ2UiOmNhc2UibGluayI6cygiZXJyb3IiLHIpLHMoImxvYWQiLHIpO2JyZWFrO2Nhc2UiZGV0YWlscyI6cygidG9nZ2xlIixyKTticmVhaztjYXNlImlucHV0IjpPZShyLGMpLHMoImludmFsaWQiLHIpO2JyZWFrO2Nhc2Uic2VsZWN0IjpyLl93cmFwcGVyU3RhdGU9e3dhc011bHRpcGxlOiEhYy5tdWx0aXBsZX0scygiaW52YWxpZCIscik7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6TGUocixjKSxzKCJpbnZhbGlkIixyKX1mb3IoaSBpbiBaZShuLGMpLGE9bnVsbCxjKWMuaGFzT3duUHJvcGVydHkoaSkmJihsPWNbaV0sImNoaWxkcmVuIj09PWk/InN0cmluZyI9PXR5cGVvZiBsP3IudGV4dENvbnRlbnQhPT1sJiYoITAhPT1jLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmZm8oci50ZXh0Q29udGVudCxsLGUpLGE9WyJjaGlsZHJlbiIsbF0pOiJudW1iZXIiPT10eXBlb2YgbCYmci50ZXh0Q29udGVudCE9PSIiK2wmJighMCE9PWMuc3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nJiZmbyhyLnRleHRDb250ZW50LGwsZSksYT1bImNoaWxkcmVuIiwiIitsXSk6SC5oYXNPd25Qcm9wZXJ0eShpKSYmbnVsbCE9bCYmIm9uU2Nyb2xsIj09PWkmJnMoInNjcm9sbCIscikpO3N3aXRjaChuKXtjYXNlImlucHV0IjprZShyKSxQZShyLGMsITApO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmtlKHIpLFJlKHIpO2JyZWFrO2Nhc2Uic2VsZWN0IjpjYXNlIm9wdGlvbiI6YnJlYWs7ZGVmYXVsdDoiZnVuY3Rpb24iPT10eXBlb2YgYy5vbkNsaWNrJiYoci5vbmNsaWNrPXBvKX1yPWEsbnVsbCE9PSh0LnVwZGF0ZVF1ZXVlPXIpJiYodC5mbGFnc3w9NCl9ZWxzZXtpPTk9PT1hLm5vZGVUeXBlP2E6YS5vd25lckRvY3VtZW50LCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PShlPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj09PWU/TmUobik6ZSk/InNjcmlwdCI9PT1uPygoZT1pLmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5pbm5lckhUTUw9IjxzY3JpcHQ+PFwvc2NyaXB0PiIsZT1lLnJlbW92ZUNoaWxkKGUuZmlyc3RDaGlsZCkpOiJzdHJpbmciPT10eXBlb2Ygci5pcz9lPWkuY3JlYXRlRWxlbWVudChuLHtpczpyLmlzfSk6KGU9aS5jcmVhdGVFbGVtZW50KG4pLCJzZWxlY3QiPT09biYmKGk9ZSxyLm11bHRpcGxlP2kubXVsdGlwbGU9ITA6ci5zaXplJiYoaS5zaXplPXIuc2l6ZSkpKTplPWkuY3JlYXRlRWxlbWVudE5TKGUsbiksZVtFb109dCxlW09vXT1yLERsKGUsdCksdC5zdGF0ZU5vZGU9ZTtlOntzd2l0Y2goaT1YZShuLHIpLG4pe2Nhc2UiZGlhbG9nIjpzKCJjYW5jZWwiLGUpLHMoImNsb3NlIixlKSxhPXI7YnJlYWs7Y2FzZSJpZnJhbWUiOmNhc2Uib2JqZWN0IjpjYXNlImVtYmVkIjpzKCJsb2FkIixlKSxhPXI7YnJlYWs7Y2FzZSJ2aWRlbyI6Y2FzZSJhdWRpbyI6Zm9yKGE9MDthPFhyLmxlbmd0aDthKyspcyhYclthXSxlKTthPXI7YnJlYWs7Y2FzZSJzb3VyY2UiOnMoImVycm9yIixlKSxhPXI7YnJlYWs7Y2FzZSJpbWciOmNhc2UiaW1hZ2UiOmNhc2UibGluayI6cygiZXJyb3IiLGUpLHMoImxvYWQiLGUpLGE9cjticmVhaztjYXNlImRldGFpbHMiOnMoInRvZ2dsZSIsZSksYT1yO2JyZWFrO2Nhc2UiaW5wdXQiOk9lKGUsciksYT1FZShlLHIpLHMoImludmFsaWQiLGUpO2JyZWFrO2Nhc2Uib3B0aW9uIjphPXI7YnJlYWs7Y2FzZSJzZWxlY3QiOmUuX3dyYXBwZXJTdGF0ZT17d2FzTXVsdGlwbGU6ISFyLm11bHRpcGxlfSxhPWcoe30scix7dmFsdWU6dm9pZCAwfSkscygiaW52YWxpZCIsZSk7YnJlYWs7Y2FzZSJ0ZXh0YXJlYSI6TGUoZSxyKSxhPVRlKGUscikscygiaW52YWxpZCIsZSk7YnJlYWs7ZGVmYXVsdDphPXJ9Zm9yKGMgaW4gWmUobixhKSxsPWEpbC5oYXNPd25Qcm9wZXJ0eShjKSYmKG89bFtjXSwic3R5bGUiPT09Yz9HZShlLG8pOiJkYW5nZXJvdXNseVNldElubmVySFRNTCI9PT1jP251bGwhPShvPW8/by5fX2h0bWw6dm9pZCAwKSYmRmUoZSxvKToiY2hpbGRyZW4iPT09Yz8ic3RyaW5nIj09dHlwZW9mIG8/InRleHRhcmVhIj09PW4mJiIiPT09b3x8SGUoZSxvKToibnVtYmVyIj09dHlwZW9mIG8mJkhlKGUsIiIrbyk6InN1cHByZXNzQ29udGVudEVkaXRhYmxlV2FybmluZyIhPT1jJiYic3VwcHJlc3NIeWRyYXRpb25XYXJuaW5nIiE9PWMmJiJhdXRvRm9jdXMiIT09YyYmKEguaGFzT3duUHJvcGVydHkoYyk/bnVsbCE9byYmIm9uU2Nyb2xsIj09PWMmJnMoInNjcm9sbCIsZSk6bnVsbCE9byYmSyhlLGMsbyxpKSkpO3N3aXRjaChuKXtjYXNlImlucHV0IjprZShlKSxQZShlLHIsITEpO2JyZWFrO2Nhc2UidGV4dGFyZWEiOmtlKGUpLFJlKGUpO2JyZWFrO2Nhc2Uib3B0aW9uIjpudWxsIT1yLnZhbHVlJiZlLnNldEF0dHJpYnV0ZSgidmFsdWUiLCIiK3dlKHIudmFsdWUpKTticmVhaztjYXNlInNlbGVjdCI6ZS5tdWx0aXBsZT0hIXIubXVsdGlwbGUsbnVsbCE9KGM9ci52YWx1ZSk/emUoZSwhIXIubXVsdGlwbGUsYywhMSk6bnVsbCE9ci5kZWZhdWx0VmFsdWUmJnplKGUsISFyLm11bHRpcGxlLHIuZGVmYXVsdFZhbHVlLCEwKTticmVhaztkZWZhdWx0OiJmdW5jdGlvbiI9PXR5cGVvZiBhLm9uQ2xpY2smJihlLm9uY2xpY2s9cG8pfXN3aXRjaChuKXtjYXNlImJ1dHRvbiI6Y2FzZSJpbnB1dCI6Y2FzZSJzZWxlY3QiOmNhc2UidGV4dGFyZWEiOnI9ISFyLmF1dG9Gb2N1czticmVhayBlO2Nhc2UiaW1nIjpyPSEwO2JyZWFrIGU7ZGVmYXVsdDpyPSExfX1yJiYodC5mbGFnc3w9NCl9bnVsbCE9PXQucmVmJiYodC5mbGFnc3w9NTEyLHQuZmxhZ3N8PTIwOTcxNTIpfXJldHVybiBmKHQpLG51bGw7Y2FzZSA2OmlmKGUmJm51bGwhPXQuc3RhdGVOb2RlKUJsKDAsdCxlLm1lbW9pemVkUHJvcHMscik7ZWxzZXtpZigic3RyaW5nIiE9dHlwZW9mIHImJm51bGw9PT10LnN0YXRlTm9kZSl0aHJvdyBFcnJvcihEKDE2NikpO2lmKG49Y2kobGkuY3VycmVudCksY2koYWkuY3VycmVudCksYmEodCkpe2lmKHI9dC5zdGF0ZU5vZGUsbj10Lm1lbW9pemVkUHJvcHMscltFb109dCwoYz1yLm5vZGVWYWx1ZSE9PW4pJiZudWxsIT09KGU9c2EpKXN3aXRjaChlLnRhZyl7Y2FzZSAzOmZvKHIubm9kZVZhbHVlLG4sMCE9KDEmZS5tb2RlKSk7YnJlYWs7Y2FzZSA1OiEwIT09ZS5tZW1vaXplZFByb3BzLnN1cHByZXNzSHlkcmF0aW9uV2FybmluZyYmZm8oci5ub2RlVmFsdWUsbiwwIT0oMSZlLm1vZGUpKX1jJiYodC5mbGFnc3w9NCl9ZWxzZSgocj0oOT09PW4ubm9kZVR5cGU/bjpuLm93bmVyRG9jdW1lbnQpLmNyZWF0ZVRleHROb2RlKHIpKVtFb109dCkuc3RhdGVOb2RlPXJ9cmV0dXJuIGYodCksbnVsbDtjYXNlIDEzOmlmKHUoUykscj10Lm1lbW9pemVkU3RhdGUsbnVsbD09PWV8fG51bGwhPT1lLm1lbW9pemVkU3RhdGUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUuZGVoeWRyYXRlZCl7aWYoVSYmbnVsbCE9PWsmJjAhPSgxJnQubW9kZSkmJjA9PSgxMjgmdC5mbGFncykpeWEoKSx2YSgpLHQuZmxhZ3N8PTk4NTYwLGM9ITE7ZWxzZSBpZihjPWJhKHQpLG51bGwhPT1yJiZudWxsIT09ci5kZWh5ZHJhdGVkKXtpZihudWxsPT09ZSl7aWYoIWMpdGhyb3cgRXJyb3IoRCgzMTgpKTtpZighKGM9bnVsbCE9PShjPXQubWVtb2l6ZWRTdGF0ZSk/Yy5kZWh5ZHJhdGVkOm51bGwpKXRocm93IEVycm9yKEQoMzE3KSk7Y1tFb109dH1lbHNlIHZhKCksMD09KDEyOCZ0LmZsYWdzKSYmKHQubWVtb2l6ZWRTdGF0ZT1udWxsKSx0LmZsYWdzfD00O2YodCksYz0hMX1lbHNlIG51bGwhPT1mYSYmKE5jKGZhKSxmYT1udWxsKSxjPSEwO2lmKCFjKXJldHVybiA2NTUzNiZ0LmZsYWdzP3Q6bnVsbH1yZXR1cm4gMCE9KDEyOCZ0LmZsYWdzKT8odC5sYW5lcz1uLHQpOigocj1udWxsIT09cikhPT0obnVsbCE9PWUmJm51bGwhPT1lLm1lbW9pemVkU3RhdGUpJiZyJiYodC5jaGlsZC5mbGFnc3w9ODE5MiwwIT0oMSZ0Lm1vZGUpKSYmKG51bGw9PT1lfHwwIT0oMSZTLmN1cnJlbnQpPzA9PT1MJiYoTD0zKTpHYygpKSxudWxsIT09dC51cGRhdGVRdWV1ZSYmKHQuZmxhZ3N8PTQpLGYodCksbnVsbCk7Y2FzZSA0OnJldHVybiBzaSgpLG51bGw9PT1lJiZ0byh0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvKSxmKHQpLG51bGw7Y2FzZSAxMDpyZXR1cm4gQWEodC50eXBlLl9jb250ZXh0KSxmKHQpLG51bGw7Y2FzZSAxNzpyZXR1cm4gdyh0LnR5cGUpJiZGbygpLGYodCksbnVsbDtjYXNlIDE5OmlmKHUoUyksbnVsbD09PShjPXQubWVtb2l6ZWRTdGF0ZSkpO2Vsc2V7aWYocj0wIT0oMTI4JnQuZmxhZ3MpLG51bGw9PT0oaT1jLnJlbmRlcmluZykpaWYocilObChjLCExKTtlbHNle2lmKDAhPT1MfHxudWxsIT09ZSYmMCE9KDEyOCZlLmZsYWdzKSlmb3IoZT10LmNoaWxkO251bGwhPT1lOyl7aWYobnVsbCE9PShpPXBpKGUpKSl7Zm9yKHQuZmxhZ3N8PTEyOCxObChjLCExKSxudWxsIT09KHI9aS51cGRhdGVRdWV1ZSkmJih0LnVwZGF0ZVF1ZXVlPXIsdC5mbGFnc3w9NCksdC5zdWJ0cmVlRmxhZ3M9MCxyPW4sbj10LmNoaWxkO251bGwhPT1uOyllPXIsKGM9bikuZmxhZ3MmPTE0NjgwMDY2LG51bGw9PT0oaT1jLmFsdGVybmF0ZSk/KGMuY2hpbGRMYW5lcz0wLGMubGFuZXM9ZSxjLmNoaWxkPW51bGwsYy5zdWJ0cmVlRmxhZ3M9MCxjLm1lbW9pemVkUHJvcHM9bnVsbCxjLm1lbW9pemVkU3RhdGU9bnVsbCxjLnVwZGF0ZVF1ZXVlPW51bGwsYy5kZXBlbmRlbmNpZXM9bnVsbCxjLnN0YXRlTm9kZT1udWxsKTooYy5jaGlsZExhbmVzPWkuY2hpbGRMYW5lcyxjLmxhbmVzPWkubGFuZXMsYy5jaGlsZD1pLmNoaWxkLGMuc3VidHJlZUZsYWdzPTAsYy5kZWxldGlvbnM9bnVsbCxjLm1lbW9pemVkUHJvcHM9aS5tZW1vaXplZFByb3BzLGMubWVtb2l6ZWRTdGF0ZT1pLm1lbW9pemVkU3RhdGUsYy51cGRhdGVRdWV1ZT1pLnVwZGF0ZVF1ZXVlLGMudHlwZT1pLnR5cGUsZT1pLmRlcGVuZGVuY2llcyxjLmRlcGVuZGVuY2llcz1udWxsPT09ZT9udWxsOntsYW5lczplLmxhbmVzLGZpcnN0Q29udGV4dDplLmZpcnN0Q29udGV4dH0pLG49bi5zaWJsaW5nO3JldHVybiBiKFMsMSZTLmN1cnJlbnR8MiksdC5jaGlsZH1lPWUuc2libGluZ31udWxsIT09Yy50YWlsJiZoKCk+d2MmJih0LmZsYWdzfD0xMjgsTmwoYywhKHI9ITApKSx0LmxhbmVzPTQxOTQzMDQpfWVsc2V7aWYoIXIpaWYobnVsbCE9PShlPXBpKGkpKSl7aWYodC5mbGFnc3w9MTI4LHI9ITAsbnVsbCE9PShuPWUudXBkYXRlUXVldWUpJiYodC51cGRhdGVRdWV1ZT1uLHQuZmxhZ3N8PTQpLE5sKGMsITApLG51bGw9PT1jLnRhaWwmJiJoaWRkZW4iPT09Yy50YWlsTW9kZSYmIWkuYWx0ZXJuYXRlJiYhVSlyZXR1cm4gZih0KSxudWxsfWVsc2UgMipoKCktYy5yZW5kZXJpbmdTdGFydFRpbWU+d2MmJjEwNzM3NDE4MjQhPT1uJiYodC5mbGFnc3w9MTI4LE5sKGMsIShyPSEwKSksdC5sYW5lcz00MTk0MzA0KTtjLmlzQmFja3dhcmRzPyhpLnNpYmxpbmc9dC5jaGlsZCx0LmNoaWxkPWkpOihudWxsIT09KG49Yy5sYXN0KT9uLnNpYmxpbmc9aTp0LmNoaWxkPWksYy5sYXN0PWkpfWlmKG51bGwhPT1jLnRhaWwpcmV0dXJuIHQ9Yy50YWlsLGMucmVuZGVyaW5nPXQsYy50YWlsPXQuc2libGluZyxjLnJlbmRlcmluZ1N0YXJ0VGltZT1oKCksdC5zaWJsaW5nPW51bGwsbj1TLmN1cnJlbnQsYihTLHI/MSZufDI6MSZuKSx0fXJldHVybiBmKHQpLG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBIYygpLHI9bnVsbCE9PXQubWVtb2l6ZWRTdGF0ZSxudWxsIT09ZSYmbnVsbCE9PWUubWVtb2l6ZWRTdGF0ZSE9PXImJih0LmZsYWdzfD04MTkyKSxyJiYwIT0oMSZ0Lm1vZGUpPzAhPSgxMDczNzQxODI0JmRjKSYmKGYodCksNiZ0LnN1YnRyZWVGbGFncykmJih0LmZsYWdzfD04MTkyKTpmKHQpLG51bGw7Y2FzZSAyNDpjYXNlIDI1OnJldHVybiBudWxsfXRocm93IEVycm9yKEQoMTU2LHQudGFnKSl9KG4sdCxkYykpKXJldHVybiB2b2lkKHo9bil9ZWxzZXtpZihudWxsIT09KG49ZnVuY3Rpb24oZSx0KXtzd2l0Y2godWEodCksdC50YWcpe2Nhc2UgMTpyZXR1cm4gdyh0LnR5cGUpJiZGbygpLDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMzpyZXR1cm4gc2koKSx1KHYpLHUoeSksaGkoKSwwIT0oNjU1MzYmKGU9dC5mbGFncykpJiYwPT0oMTI4JmUpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgNTpyZXR1cm4gZGkodCksbnVsbDtjYXNlIDEzOmlmKHUoUyksbnVsbCE9PShlPXQubWVtb2l6ZWRTdGF0ZSkmJm51bGwhPT1lLmRlaHlkcmF0ZWQpe2lmKG51bGw9PT10LmFsdGVybmF0ZSl0aHJvdyBFcnJvcihEKDM0MCkpO3ZhKCl9cmV0dXJuIDY1NTM2JihlPXQuZmxhZ3MpPyh0LmZsYWdzPS02NTUzNyZlfDEyOCx0KTpudWxsO2Nhc2UgMTk6cmV0dXJuIHUoUyksbnVsbDtjYXNlIDQ6cmV0dXJuIHNpKCksbnVsbDtjYXNlIDEwOnJldHVybiBBYSh0LnR5cGUuX2NvbnRleHQpLG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBIYygpLG51bGw7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KG4sdCkpKXJldHVybiBuLmZsYWdzJj0zMjc2Nyx2b2lkKHo9bik7aWYobnVsbD09PWUpcmV0dXJuIEw9Nix2b2lkKHo9bnVsbCk7ZS5mbGFnc3w9MzI3NjgsZS5zdWJ0cmVlRmxhZ3M9MCxlLmRlbGV0aW9ucz1udWxsfWlmKG51bGwhPT0odD10LnNpYmxpbmcpKXJldHVybiB2b2lkKHo9dCl9d2hpbGUoej10PWUsbnVsbCE9PXQpOzA9PT1MJiYoTD01KX1mdW5jdGlvbiBZYyhlLHQsbil7dmFyIHI9eCxvPWZjLnRyYW5zaXRpb247dHJ5e2ZjLnRyYW5zaXRpb249bnVsbCx4PTE7Zm9yKHZhciBhPWUsaT10LGw9bixjPXI7UWMoKSxudWxsIT09T2M7KTtpZigwIT0oNiZfKSl0aHJvdyBFcnJvcihEKDMyNykpO2w9YS5maW5pc2hlZFdvcms7dmFyIHU9YS5maW5pc2hlZExhbmVzO2lmKG51bGwhPT1sKXtpZihhLmZpbmlzaGVkV29yaz1udWxsLGEuZmluaXNoZWRMYW5lcz0wLGw9PT1hLmN1cnJlbnQpdGhyb3cgRXJyb3IoRCgxNzcpKTthLmNhbGxiYWNrTm9kZT1udWxsLGEuY2FsbGJhY2tQcmlvcml0eT0wO3ZhciBzLGYsZD1sLmxhbmVzfGwuY2hpbGRMYW5lcztpZighZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnBlbmRpbmdMYW5lcyZ+dCxyPShlLnBlbmRpbmdMYW5lcz10LGUuc3VzcGVuZGVkTGFuZXM9MCxlLnBpbmdlZExhbmVzPTAsZS5leHBpcmVkTGFuZXMmPXQsZS5tdXRhYmxlUmVhZExhbmVzJj10LGUuZW50YW5nbGVkTGFuZXMmPXQsdD1lLmVudGFuZ2xlbWVudHMsZS5ldmVudFRpbWVzKTtmb3IoZT1lLmV4cGlyYXRpb25UaW1lczswPG47KXt2YXIgbz0zMS16dChuKSxhPTE8PG87dFtvXT0wLHJbb109LTEsZVtvXT0tMSxuJj1+YX19KGEsZCksYT09PXAmJih6PXA9bnVsbCxUPTApLDA9PSgyMDY0Jmwuc3VidHJlZUZsYWdzKSYmMD09KDIwNjQmbC5mbGFncyl8fEVjfHwoRWM9ITAsZXUoanQsZnVuY3Rpb24oKXtyZXR1cm4gUWMoKSxudWxsfSkpLGQ9MCE9KDE1OTkwJmwuZmxhZ3MpLDAhPSgxNTk5MCZsLnN1YnRyZWVGbGFncyl8fGQ/KGQ9ZmMudHJhbnNpdGlvbixmYy50cmFuc2l0aW9uPW51bGwscz14LHg9MSxmPV8sX3w9NCxzYy5jdXJyZW50PW51bGwsZnVuY3Rpb24oZSx0KXtpZihtbz1nbixqcihlPU9yKCkpKXtpZigic2VsZWN0aW9uU3RhcnQiaW4gZSl2YXIgbj17c3RhcnQ6ZS5zZWxlY3Rpb25TdGFydCxlbmQ6ZS5zZWxlY3Rpb25FbmR9O2Vsc2UgZTppZigoYT0obj0obj1lLm93bmVyRG9jdW1lbnQpJiZuLmRlZmF1bHRWaWV3fHx3aW5kb3cpLmdldFNlbGVjdGlvbiYmbi5nZXRTZWxlY3Rpb24oKSkmJjAhPT1hLnJhbmdlQ291bnQpe3ZhciBuPWEuYW5jaG9yTm9kZSxyPWEuYW5jaG9yT2Zmc2V0LG89YS5mb2N1c05vZGUsYT1hLmZvY3VzT2Zmc2V0O3RyeXtuLm5vZGVUeXBlLG8ubm9kZVR5cGV9Y2F0Y2goZSl7bj1udWxsO2JyZWFrIGV9dmFyIGksbD0wLGM9LTEsdT0tMSxzPTAsZj0wLGQ9ZSxwPW51bGw7dDpmb3IoOzspe2Zvcig7ZCE9PW58fDAhPT1yJiYzIT09ZC5ub2RlVHlwZXx8KGM9bCtyKSxkIT09b3x8MCE9PWEmJjMhPT1kLm5vZGVUeXBlfHwodT1sK2EpLDM9PT1kLm5vZGVUeXBlJiYobCs9ZC5ub2RlVmFsdWUubGVuZ3RoKSxudWxsIT09KGk9ZC5maXJzdENoaWxkKTspcD1kLGQ9aTtmb3IoOzspe2lmKGQ9PT1lKWJyZWFrIHQ7aWYocD09PW4mJisrcz09PXImJihjPWwpLHA9PT1vJiYrK2Y9PT1hJiYodT1sKSxudWxsIT09KGk9ZC5uZXh0U2libGluZykpYnJlYWs7cD0oZD1wKS5wYXJlbnROb2RlfWQ9aX1uPS0xPT09Y3x8LTE9PT11P251bGw6e3N0YXJ0OmMsZW5kOnV9fWVsc2Ugbj1udWxsO249bnx8e3N0YXJ0OjAsZW5kOjB9fWVsc2Ugbj1udWxsO2Zvcihnbj0hKGhvPXtmb2N1c2VkRWxlbTplLHNlbGVjdGlvblJhbmdlOm59KSxJPXQ7bnVsbCE9PUk7KWlmKGU9KHQ9SSkuY2hpbGQsMCE9KDEwMjgmdC5zdWJ0cmVlRmxhZ3MpJiZudWxsIT09ZSllLnJldHVybj10LEk9ZTtlbHNlIGZvcig7bnVsbCE9PUk7KXt0PUk7dHJ5e3ZhciBtLGgsZyxiLHk9dC5hbHRlcm5hdGU7aWYoMCE9KDEwMjQmdC5mbGFncykpc3dpdGNoKHQudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OmJyZWFrO2Nhc2UgMTpudWxsIT09eSYmKG09eS5tZW1vaXplZFByb3BzLGg9eS5tZW1vaXplZFN0YXRlLGI9KGc9dC5zdGF0ZU5vZGUpLmdldFNuYXBzaG90QmVmb3JlVXBkYXRlKHQuZWxlbWVudFR5cGU9PT10LnR5cGU/bTprYSh0LnR5cGUsbSksaCksZy5fX3JlYWN0SW50ZXJuYWxTbmFwc2hvdEJlZm9yZVVwZGF0ZT1iKTticmVhaztjYXNlIDM6dmFyIHY9dC5zdGF0ZU5vZGUuY29udGFpbmVySW5mbzsxPT09di5ub2RlVHlwZT92LnRleHRDb250ZW50PSIiOjk9PT12Lm5vZGVUeXBlJiZ2LmRvY3VtZW50RWxlbWVudCYmdi5yZW1vdmVDaGlsZCh2LmRvY3VtZW50RWxlbWVudCk7YnJlYWs7Y2FzZSA1OmNhc2UgNjpjYXNlIDQ6Y2FzZSAxNzpicmVhaztkZWZhdWx0OnRocm93IEVycm9yKEQoMTYzKSl9fWNhdGNoKGUpe00odCx0LnJldHVybixlKX1pZihudWxsIT09KGU9dC5zaWJsaW5nKSl7ZS5yZXR1cm49dC5yZXR1cm4sST1lO2JyZWFrfUk9dC5yZXR1cm59eT1XbCxXbD0hMX0oYSxsKSxuYyhsLGEpLEFyKGhvKSxnbj0hIW1vLGhvPW1vPW51bGwsb2MoYS5jdXJyZW50PWwsYSx1KSxTdCgpLF89Zix4PXMsZmMudHJhbnNpdGlvbj1kKTphLmN1cnJlbnQ9bCxFYyYmKEVjPSExLE9jPWEsamM9dSksMD09PShkPWEucGVuZGluZ0xhbmVzKSYmKENjPW51bGwpLCFmdW5jdGlvbihlKXtpZihfdCYmImZ1bmN0aW9uIj09dHlwZW9mIF90Lm9uQ29tbWl0RmliZXJSb290KXRyeXtfdC5vbkNvbW1pdEZpYmVyUm9vdChJdCxlLHZvaWQgMCwxMjg9PSgxMjgmZS5jdXJyZW50LmZsYWdzKSl9Y2F0Y2goZSl7fX0obC5zdGF0ZU5vZGUpLExjKGEsaCgpKSxudWxsIT09aSlmb3IoYz1hLm9uUmVjb3ZlcmFibGVFcnJvcixsPTA7bDxpLmxlbmd0aDtsKyspdT1pW2xdLGModS52YWx1ZSx7Y29tcG9uZW50U3RhY2s6dS5zdGFjayxkaWdlc3Q6dS5kaWdlc3R9KTtpZihrYyl0aHJvdyBrYz0hMSxhPVNjLFNjPW51bGwsYTswIT0oMSZqYykmJjAhPT1hLnRhZyYmUWMoKSwwIT0oMSYoZD1hLnBlbmRpbmdMYW5lcykpP2E9PT1QYz9BYysrOihBYz0wLFBjPWEpOkFjPTAsWW8oKX19ZmluYWxseXtmYy50cmFuc2l0aW9uPW8seD1yfXJldHVybiBudWxsfWZ1bmN0aW9uIFFjKCl7aWYobnVsbCE9PU9jKXt2YXIgZT1XdChqYyksdD1mYy50cmFuc2l0aW9uLG49eDt0cnl7aWYoZmMudHJhbnNpdGlvbj1udWxsLHg9ZTwxNj8xNjplLG51bGw9PT1PYyl2YXIgcj0hMTtlbHNle2lmKGU9T2MsT2M9bnVsbCwoamM9MCkhPSg2Jl8pKXRocm93IEVycm9yKEQoMzMxKSk7dmFyIG89Xztmb3IoX3w9NCxJPWUuY3VycmVudDtudWxsIT09STspe3ZhciBhPUksaT1hLmNoaWxkO2lmKDAhPSgxNiZJLmZsYWdzKSl7dmFyIGw9YS5kZWxldGlvbnM7aWYobnVsbCE9PWwpe2Zvcih2YXIgYz0wO2M8bC5sZW5ndGg7YysrKXt2YXIgdT1sW2NdO2ZvcihJPXU7bnVsbCE9PUk7KXtzd2l0Y2goKGY9SSkudGFnKXtjYXNlIDA6Y2FzZSAxMTpjYXNlIDE1OkdsKDgsZixhKX12YXIgcz1mLmNoaWxkO2lmKG51bGwhPT1zKXMucmV0dXJuPWYsST1zO2Vsc2UgZm9yKDtudWxsIT09STspe3ZhciBmLGQ9KGY9SSkuc2libGluZyxwPWYucmV0dXJuO2lmKCFmdW5jdGlvbiBlKHQpe3ZhciBuPXQuYWx0ZXJuYXRlO251bGwhPT1uJiYodC5hbHRlcm5hdGU9bnVsbCxlKG4pKSx0LmNoaWxkPW51bGwsdC5kZWxldGlvbnM9bnVsbCx0LnNpYmxpbmc9bnVsbCw1PT09dC50YWcmJm51bGwhPT0obj10LnN0YXRlTm9kZSkmJihkZWxldGUgbltFb10sZGVsZXRlIG5bT29dLGRlbGV0ZSBuW0FvXSxkZWxldGUgbltQb10sZGVsZXRlIG5bSW9dKSx0LnN0YXRlTm9kZT1udWxsLHQucmV0dXJuPW51bGwsdC5kZXBlbmRlbmNpZXM9bnVsbCx0Lm1lbW9pemVkUHJvcHM9bnVsbCx0Lm1lbW9pemVkU3RhdGU9bnVsbCx0LnBlbmRpbmdQcm9wcz1udWxsLHQuc3RhdGVOb2RlPW51bGwsdC51cGRhdGVRdWV1ZT1udWxsfShmKSxmPT09dSl7ST1udWxsO2JyZWFrfWlmKG51bGwhPT1kKXtkLnJldHVybj1wLEk9ZDticmVha31JPXB9fX12YXIgbT1hLmFsdGVybmF0ZTtpZihudWxsIT09bSl7dmFyIGg9bS5jaGlsZDtpZihudWxsIT09aCl7bS5jaGlsZD1udWxsO2Rve3ZhciBnPWguc2libGluZ313aGlsZSgoaC5zaWJsaW5nPW51bGwpIT09KGg9ZykpfX1JPWF9fWlmKDAhPSgyMDY0JmEuc3VidHJlZUZsYWdzKSYmbnVsbCE9PWkpaS5yZXR1cm49YSxJPWk7ZWxzZSBmb3IoO251bGwhPT1JOyl7aWYoMCE9KDIwNDgmKGE9SSkuZmxhZ3MpKXN3aXRjaChhLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpHbCg5LGEsYS5yZXR1cm4pfXZhciBiPWEuc2libGluZztpZihudWxsIT09Yil7Yi5yZXR1cm49YS5yZXR1cm4sST1iO2JyZWFrfUk9YS5yZXR1cm59fXZhciB5PWUuY3VycmVudDtmb3IoST15O251bGwhPT1JOyl7dmFyIHY9KGk9SSkuY2hpbGQ7aWYoMCE9KDIwNjQmaS5zdWJ0cmVlRmxhZ3MpJiZudWxsIT09dil2LnJldHVybj1pLEk9djtlbHNlIGZvcihpPXk7bnVsbCE9PUk7KXtpZigwIT0oMjA0OCYobD1JKS5mbGFncykpdHJ5e3N3aXRjaChsLnRhZyl7Y2FzZSAwOmNhc2UgMTE6Y2FzZSAxNTpxbCg5LGwpfX1jYXRjaChlKXtNKGwsbC5yZXR1cm4sZSl9aWYobD09PWkpe0k9bnVsbDticmVha312YXIgdz1sLnNpYmxpbmc7aWYobnVsbCE9PXcpe3cucmV0dXJuPWwucmV0dXJuLEk9dzticmVha31JPWwucmV0dXJufX1pZihfPW8sWW8oKSxfdCYmImZ1bmN0aW9uIj09dHlwZW9mIF90Lm9uUG9zdENvbW1pdEZpYmVyUm9vdCl0cnl7X3Qub25Qb3N0Q29tbWl0RmliZXJSb290KEl0LGUpfWNhdGNoKGUpe31yPSEwfXJldHVybiByfWZpbmFsbHl7eD1uLGZjLnRyYW5zaXRpb249dH19fWZ1bmN0aW9uIEtjKGUsdCxuKXtlPUJhKGUsdD1mbCgwLHQ9bGwobix0KSwxKSwxKSx0PW0oKSxudWxsIT09ZSYmKFZ0KGUsMSx0KSxMYyhlLHQpKX1mdW5jdGlvbiBNKGUsdCxuKXtpZigzPT09ZS50YWcpS2MoZSxlLG4pO2Vsc2UgZm9yKDtudWxsIT09dDspe2lmKDM9PT10LnRhZyl7S2ModCxlLG4pO2JyZWFrfWlmKDE9PT10LnRhZyl7dmFyIHI9dC5zdGF0ZU5vZGU7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQudHlwZS5nZXREZXJpdmVkU3RhdGVGcm9tRXJyb3J8fCJmdW5jdGlvbiI9PXR5cGVvZiByLmNvbXBvbmVudERpZENhdGNoJiYobnVsbD09PUNjfHwhQ2MuaGFzKHIpKSl7dD1CYSh0LGU9ZGwodCxlPWxsKG4sZSksMSksMSksZT1tKCksbnVsbCE9PXQmJihWdCh0LDEsZSksTGModCxlKSk7YnJlYWt9fXQ9dC5yZXR1cm59fWZ1bmN0aW9uIEpjKGUsdCl7MD09PXQmJigwPT0oMSZlLm1vZGUpP3Q9MToodD1SdCwwPT0oMTMwMDIzNDI0JihSdDw8PTEpKSYmKFJ0PTQxOTQzMDQpKSk7dmFyIG49bSgpO251bGwhPT0oZT1NYShlLHQpKSYmKFZ0KGUsdCxuKSxMYyhlLG4pKX1mdW5jdGlvbiBldShlLHQpe3JldHVybiB3dChlLHQpfWZ1bmN0aW9uIHR1KGUsdCxuLHIpe3RoaXMudGFnPWUsdGhpcy5rZXk9bix0aGlzLnNpYmxpbmc9dGhpcy5jaGlsZD10aGlzLnJldHVybj10aGlzLnN0YXRlTm9kZT10aGlzLnR5cGU9dGhpcy5lbGVtZW50VHlwZT1udWxsLHRoaXMuaW5kZXg9MCx0aGlzLnJlZj1udWxsLHRoaXMucGVuZGluZ1Byb3BzPXQsdGhpcy5kZXBlbmRlbmNpZXM9dGhpcy5tZW1vaXplZFN0YXRlPXRoaXMudXBkYXRlUXVldWU9dGhpcy5tZW1vaXplZFByb3BzPW51bGwsdGhpcy5tb2RlPXIsdGhpcy5zdWJ0cmVlRmxhZ3M9dGhpcy5mbGFncz0wLHRoaXMuZGVsZXRpb25zPW51bGwsdGhpcy5jaGlsZExhbmVzPXRoaXMubGFuZXM9MCx0aGlzLmFsdGVybmF0ZT1udWxsfWZ1bmN0aW9uIG51KGUsdCxuLHIpe3JldHVybiBuZXcgdHUoZSx0LG4scil9ZnVuY3Rpb24gcnUoZSl7cmV0dXJuKGU9ZS5wcm90b3R5cGUpJiZlLmlzUmVhY3RDb21wb25lbnR9ZnVuY3Rpb24gb3UoZSx0KXt2YXIgbj1lLmFsdGVybmF0ZTtyZXR1cm4gbnVsbD09PW4/KChuPW51KGUudGFnLHQsZS5rZXksZS5tb2RlKSkuZWxlbWVudFR5cGU9ZS5lbGVtZW50VHlwZSxuLnR5cGU9ZS50eXBlLG4uc3RhdGVOb2RlPWUuc3RhdGVOb2RlLChuLmFsdGVybmF0ZT1lKS5hbHRlcm5hdGU9bik6KG4ucGVuZGluZ1Byb3BzPXQsbi50eXBlPWUudHlwZSxuLmZsYWdzPTAsbi5zdWJ0cmVlRmxhZ3M9MCxuLmRlbGV0aW9ucz1udWxsKSxuLmZsYWdzPTE0NjgwMDY0JmUuZmxhZ3Msbi5jaGlsZExhbmVzPWUuY2hpbGRMYW5lcyxuLmxhbmVzPWUubGFuZXMsbi5jaGlsZD1lLmNoaWxkLG4ubWVtb2l6ZWRQcm9wcz1lLm1lbW9pemVkUHJvcHMsbi5tZW1vaXplZFN0YXRlPWUubWVtb2l6ZWRTdGF0ZSxuLnVwZGF0ZVF1ZXVlPWUudXBkYXRlUXVldWUsdD1lLmRlcGVuZGVuY2llcyxuLmRlcGVuZGVuY2llcz1udWxsPT09dD9udWxsOntsYW5lczp0LmxhbmVzLGZpcnN0Q29udGV4dDp0LmZpcnN0Q29udGV4dH0sbi5zaWJsaW5nPWUuc2libGluZyxuLmluZGV4PWUuaW5kZXgsbi5yZWY9ZS5yZWYsbn1mdW5jdGlvbiBhdShlLHQsbixyLG8sYSl7dmFyIGk9MjtpZigiZnVuY3Rpb24iPT10eXBlb2Yocj1lKSlydShlKSYmKGk9MSk7ZWxzZSBpZigic3RyaW5nIj09dHlwZW9mIGUpaT01O2Vsc2UgZTpzd2l0Y2goZSl7Y2FzZSBuZTpyZXR1cm4gaXUobi5jaGlsZHJlbixvLGEsdCk7Y2FzZSByZTpvfD1pPTg7YnJlYWs7Y2FzZSBvZTpyZXR1cm4oZT1udSgxMixuLHQsMnxvKSkuZWxlbWVudFR5cGU9b2UsZS5sYW5lcz1hLGU7Y2FzZSBjZTpyZXR1cm4oZT1udSgxMyxuLHQsbykpLmVsZW1lbnRUeXBlPWNlLGUubGFuZXM9YSxlO2Nhc2UgdWU6cmV0dXJuKGU9bnUoMTksbix0LG8pKS5lbGVtZW50VHlwZT11ZSxlLmxhbmVzPWEsZTtjYXNlIGRlOnJldHVybiBsdShuLG8sYSx0KTtkZWZhdWx0OmlmKCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUpc3dpdGNoKGUuJCR0eXBlb2Ype2Nhc2UgYWU6aT0xMDticmVhayBlO2Nhc2UgaWU6aT05O2JyZWFrIGU7Y2FzZSBsZTppPTExO2JyZWFrIGU7Y2FzZSBzZTppPTE0O2JyZWFrIGU7Y2FzZSBmZTppPTE2LHI9bnVsbDticmVhayBlfXRocm93IEVycm9yKEQoMTMwLG51bGw9PWU/ZTp0eXBlb2YgZSwiIikpfXJldHVybih0PW51KGksbix0LG8pKS5lbGVtZW50VHlwZT1lLHQudHlwZT1yLHQubGFuZXM9YSx0fWZ1bmN0aW9uIGl1KGUsdCxuLHIpe3JldHVybihlPW51KDcsZSxyLHQpKS5sYW5lcz1uLGV9ZnVuY3Rpb24gbHUoZSx0LG4scil7cmV0dXJuKGU9bnUoMjIsZSxyLHQpKS5lbGVtZW50VHlwZT1kZSxlLmxhbmVzPW4sZS5zdGF0ZU5vZGU9e2lzSGlkZGVuOiExfSxlfWZ1bmN0aW9uIGN1KGUsdCxuKXtyZXR1cm4oZT1udSg2LGUsbnVsbCx0KSkubGFuZXM9bixlfWZ1bmN0aW9uIHV1KGUsdCxuKXtyZXR1cm4odD1udSg0LG51bGwhPT1lLmNoaWxkcmVuP2UuY2hpbGRyZW46W10sZS5rZXksdCkpLmxhbmVzPW4sdC5zdGF0ZU5vZGU9e2NvbnRhaW5lckluZm86ZS5jb250YWluZXJJbmZvLHBlbmRpbmdDaGlsZHJlbjpudWxsLGltcGxlbWVudGF0aW9uOmUuaW1wbGVtZW50YXRpb259LHR9ZnVuY3Rpb24gc3UoZSx0LG4scixvKXt0aGlzLnRhZz10LHRoaXMuY29udGFpbmVySW5mbz1lLHRoaXMuZmluaXNoZWRXb3JrPXRoaXMucGluZ0NhY2hlPXRoaXMuY3VycmVudD10aGlzLnBlbmRpbmdDaGlsZHJlbj1udWxsLHRoaXMudGltZW91dEhhbmRsZT0tMSx0aGlzLmNhbGxiYWNrTm9kZT10aGlzLnBlbmRpbmdDb250ZXh0PXRoaXMuY29udGV4dD1udWxsLHRoaXMuY2FsbGJhY2tQcmlvcml0eT0wLHRoaXMuZXZlbnRUaW1lcz1IdCgwKSx0aGlzLmV4cGlyYXRpb25UaW1lcz1IdCgtMSksdGhpcy5lbnRhbmdsZWRMYW5lcz10aGlzLmZpbmlzaGVkTGFuZXM9dGhpcy5tdXRhYmxlUmVhZExhbmVzPXRoaXMuZXhwaXJlZExhbmVzPXRoaXMucGluZ2VkTGFuZXM9dGhpcy5zdXNwZW5kZWRMYW5lcz10aGlzLnBlbmRpbmdMYW5lcz0wLHRoaXMuZW50YW5nbGVtZW50cz1IdCgwKSx0aGlzLmlkZW50aWZpZXJQcmVmaXg9cix0aGlzLm9uUmVjb3ZlcmFibGVFcnJvcj1vLHRoaXMubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1udWxsfWZ1bmN0aW9uIGZ1KGUsdCxuLHIsbyxhLGksbCxjKXtyZXR1cm4gZT1uZXcgc3UoZSx0LDAsbCxjKSwxPT09dD8odD0xLCEwPT09YSYmKHR8PTgpKTp0PTAsYT1udSgzLG51bGwsbnVsbCx0KSwoZS5jdXJyZW50PWEpLnN0YXRlTm9kZT1lLGEubWVtb2l6ZWRTdGF0ZT17ZWxlbWVudDpyLGlzRGVoeWRyYXRlZDpuLGNhY2hlOm51bGwsdHJhbnNpdGlvbnM6bnVsbCxwZW5kaW5nU3VzcGVuc2VCb3VuZGFyaWVzOm51bGx9LE5hKGEpLGV9ZnVuY3Rpb24gZHUoZSl7aWYoIWUpcmV0dXJuIERvO2U6e2lmKGd0KGU9ZS5fcmVhY3RJbnRlcm5hbHMpIT09ZXx8MSE9PWUudGFnKXRocm93IEVycm9yKEQoMTcwKSk7dmFyIHQ9ZTtkb3tzd2l0Y2godC50YWcpe2Nhc2UgMzp0PXQuc3RhdGVOb2RlLmNvbnRleHQ7YnJlYWsgZTtjYXNlIDE6aWYodyh0LnR5cGUpKXt0PXQuc3RhdGVOb2RlLl9fcmVhY3RJbnRlcm5hbE1lbW9pemVkTWVyZ2VkQ2hpbGRDb250ZXh0O2JyZWFrIGV9fX13aGlsZShudWxsIT09KHQ9dC5yZXR1cm4pKTt0aHJvdyBFcnJvcihEKDE3MSkpfWlmKDE9PT1lLnRhZyl7dmFyIG49ZS50eXBlO2lmKHcobikpcmV0dXJuIFZvKGUsbix0KX1yZXR1cm4gdH1mdW5jdGlvbiBwdShlLHQsbixyLG8sYSxpLGwsYyl7cmV0dXJuKGU9ZnUobixyLCEwLGUsMCxhLDAsbCxjKSkuY29udGV4dD1kdShudWxsKSxuPWUuY3VycmVudCwoYT1VYShyPW0oKSxvPXpjKG4pKSkuY2FsbGJhY2s9bnVsbCE9dD90Om51bGwsQmEobixhLG8pLGUuY3VycmVudC5sYW5lcz1vLFZ0KGUsbyxyKSxMYyhlLHIpLGV9ZnVuY3Rpb24gbXUoZSx0LG4scil7dmFyIG89dC5jdXJyZW50LGE9bSgpLGk9emMobyk7bj1kdShuKSxudWxsPT09dC5jb250ZXh0P3QuY29udGV4dD1uOnQucGVuZGluZ0NvbnRleHQ9biwodD1VYShhLGkpKS5wYXlsb2FkPXtlbGVtZW50OmV9LG51bGwhPT0ocj12b2lkIDA9PT1yP251bGw6cikmJih0LmNhbGxiYWNrPXIpLG51bGwhPT0oZT1CYShvLHQsaSkpJiYoVGMoZSxvLGksYSksRmEoZSxvLGkpKX1mdW5jdGlvbiBodShlKXtyZXR1cm4oZT1lLmN1cnJlbnQpLmNoaWxkPyhlLmNoaWxkLnRhZyxlLmNoaWxkLnN0YXRlTm9kZSk6bnVsbH1mdW5jdGlvbiBndShlLHQpe3ZhciBuO251bGwhPT0oZT1lLm1lbW9pemVkU3RhdGUpJiZudWxsIT09ZS5kZWh5ZHJhdGVkJiYobj1lLnJldHJ5TGFuZSxlLnJldHJ5TGFuZT0wIT09biYmbjx0P246dCl9ZnVuY3Rpb24gYnUoZSx0KXtndShlLHQpLChlPWUuYWx0ZXJuYXRlKSYmZ3UoZSx0KX12YXIgeXU9ZnVuY3Rpb24oZSx0LG4pe2lmKG51bGwhPT1lKWlmKGUubWVtb2l6ZWRQcm9wcyE9PXQucGVuZGluZ1Byb3BzfHx2LmN1cnJlbnQpaj0hMDtlbHNle2lmKDA9PShlLmxhbmVzJm4pJiYwPT0oMTI4JnQuZmxhZ3MpKXtqPSExO3t2YXIgcj1lO3ZhciBvPXQ7dmFyIGE9bjtzd2l0Y2goby50YWcpe2Nhc2UgMzpFbChvKSx2YSgpO2JyZWFrO2Nhc2UgNTpmaShvKTticmVhaztjYXNlIDE6dyhvLnR5cGUpJiYkbyhvKTticmVhaztjYXNlIDQ6dWkobyxvLnN0YXRlTm9kZS5jb250YWluZXJJbmZvKTticmVhaztjYXNlIDEwOnZhciBpPW8udHlwZS5fY29udGV4dCxsPW8ubWVtb2l6ZWRQcm9wcy52YWx1ZTtiKFNhLGkuX2N1cnJlbnRWYWx1ZSksaS5fY3VycmVudFZhbHVlPWw7YnJlYWs7Y2FzZSAxMzppZihudWxsIT09KGk9by5tZW1vaXplZFN0YXRlKSlyZXR1cm4gbnVsbCE9PWkuZGVoeWRyYXRlZD8oYihTLDEmUy5jdXJyZW50KSxvLmZsYWdzfD0xMjgsbnVsbCk6MCE9KGEmby5jaGlsZC5jaGlsZExhbmVzKT9QbChyLG8sYSk6KGIoUywxJlMuY3VycmVudCksbnVsbCE9PShyPVJsKHIsbyxhKSk/ci5zaWJsaW5nOm51bGwpO2IoUywxJlMuY3VycmVudCk7YnJlYWs7Y2FzZSAxOTppZihpPTAhPShhJm8uY2hpbGRMYW5lcyksMCE9KDEyOCZyLmZsYWdzKSl7aWYoaSlyZXR1cm4gTGwocixvLGEpO28uZmxhZ3N8PTEyOH1pZihudWxsIT09KGw9by5tZW1vaXplZFN0YXRlKSYmKGwucmVuZGVyaW5nPW51bGwsbC50YWlsPW51bGwsbC5sYXN0RWZmZWN0PW51bGwpLGIoUyxTLmN1cnJlbnQpLGkpYnJlYWs7cmV0dXJuIG51bGw7Y2FzZSAyMjpjYXNlIDIzOnJldHVybiBvLmxhbmVzPTAsd2wocixvLGEpfXJldHVybiBSbChyLG8sYSk7cmV0dXJufX1qPTAhPSgxMzEwNzImZS5mbGFncyl9ZWxzZSBqPSExLFUmJjAhPSgxMDQ4NTc2JnQuZmxhZ3MpJiZsYSh0LGVhLHQuaW5kZXgpO3N3aXRjaCh0LmxhbmVzPTAsdC50YWcpe2Nhc2UgMjp2YXIgYz10LnR5cGUsdT0oTWwoZSx0KSxlPXQucGVuZGluZ1Byb3BzLEJvKHQseS5jdXJyZW50KSkscz0oSWEodCxuKSx1PUNpKG51bGwsdCxjLGUsdSxuKSxFaSgpKTtyZXR1cm4gdC5mbGFnc3w9MSx0PSJvYmplY3QiPT10eXBlb2YgdSYmbnVsbCE9PXUmJiJmdW5jdGlvbiI9PXR5cGVvZiB1LnJlbmRlciYmdm9pZCAwPT09dS4kJHR5cGVvZj8odC50YWc9MSx0Lm1lbW9pemVkU3RhdGU9bnVsbCx0LnVwZGF0ZVF1ZXVlPW51bGwsdyhjKT8ocz0hMCwkbyh0KSk6cz0hMSx0Lm1lbW9pemVkU3RhdGU9bnVsbCE9PXUuc3RhdGUmJnZvaWQgMCE9PXUuc3RhdGU/dS5zdGF0ZTpudWxsLE5hKHQpLHUudXBkYXRlcj1xYSxRYSgodC5zdGF0ZU5vZGU9dSkuX3JlYWN0SW50ZXJuYWxzPXQsYyxlLG4pLENsKG51bGwsdCxjLCEwLHMsbikpOih0LnRhZz0wLFUmJnMmJmNhKHQpLEEobnVsbCx0LHUsbiksdC5jaGlsZCk7Y2FzZSAxNjpjPXQuZWxlbWVudFR5cGU7ZTp7c3dpdGNoKE1sKGUsdCksZT10LnBlbmRpbmdQcm9wcyxjPSh1PWMuX2luaXQpKGMuX3BheWxvYWQpLHQudHlwZT1jLHU9dC50YWc9ZnVuY3Rpb24oZSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpcmV0dXJuIHJ1KGUpPzE6MDtpZihudWxsIT1lKXtpZigoZT1lLiQkdHlwZW9mKT09PWxlKXJldHVybiAxMTtpZihlPT09c2UpcmV0dXJuIDE0fXJldHVybiAyfShjKSxlPWthKGMsZSksdSl7Y2FzZSAwOnQ9a2wobnVsbCx0LGMsZSxuKTticmVhayBlO2Nhc2UgMTp0PVNsKG51bGwsdCxjLGUsbik7YnJlYWsgZTtjYXNlIDExOnQ9YmwobnVsbCx0LGMsZSxuKTticmVhayBlO2Nhc2UgMTQ6dD15bChudWxsLHQsYyxrYShjLnR5cGUsZSksbik7YnJlYWsgZX10aHJvdyBFcnJvcihEKDMwNixjLCIiKSl9cmV0dXJuIHQ7Y2FzZSAwOnJldHVybiBjPXQudHlwZSx1PXQucGVuZGluZ1Byb3BzLGtsKGUsdCxjLHU9dC5lbGVtZW50VHlwZT09PWM/dTprYShjLHUpLG4pO2Nhc2UgMTpyZXR1cm4gYz10LnR5cGUsdT10LnBlbmRpbmdQcm9wcyxTbChlLHQsYyx1PXQuZWxlbWVudFR5cGU9PT1jP3U6a2EoYyx1KSxuKTtjYXNlIDM6ZTp7aWYoRWwodCksbnVsbD09PWUpdGhyb3cgRXJyb3IoRCgzODcpKTtjPXQucGVuZGluZ1Byb3BzLHU9KHM9dC5tZW1vaXplZFN0YXRlKS5lbGVtZW50LERhKGUsdCksVmEodCxjLG51bGwsbik7dmFyIGY9dC5tZW1vaXplZFN0YXRlLGM9Zi5lbGVtZW50O2lmKHMuaXNEZWh5ZHJhdGVkKXtpZihzPXtlbGVtZW50OmMsaXNEZWh5ZHJhdGVkOiExLGNhY2hlOmYuY2FjaGUscGVuZGluZ1N1c3BlbnNlQm91bmRhcmllczpmLnBlbmRpbmdTdXNwZW5zZUJvdW5kYXJpZXMsdHJhbnNpdGlvbnM6Zi50cmFuc2l0aW9uc30sdC51cGRhdGVRdWV1ZS5iYXNlU3RhdGU9cyx0Lm1lbW9pemVkU3RhdGU9cywyNTYmdC5mbGFncyl7dD1PbChlLHQsYyxuLHU9bGwoRXJyb3IoRCg0MjMpKSx0KSk7YnJlYWsgZX1pZihjIT09dSl7dD1PbChlLHQsYyxuLHU9bGwoRXJyb3IoRCg0MjQpKSx0KSk7YnJlYWsgZX1mb3Ioaz1Tbyh0LnN0YXRlTm9kZS5jb250YWluZXJJbmZvLmZpcnN0Q2hpbGQpLFU9ITAsbj1yaShzYT10LGZhPW51bGwsYyxuKSx0LmNoaWxkPW47bjspbi5mbGFncz0tMyZuLmZsYWdzfDQwOTYsbj1uLnNpYmxpbmd9ZWxzZXtpZih2YSgpLGM9PT11KXt0PVJsKGUsdCxuKTticmVhayBlfUEoZSx0LGMsbil9dD10LmNoaWxkfXJldHVybiB0O2Nhc2UgNTpyZXR1cm4gZmkodCksbnVsbD09PWUmJmhhKHQpLGM9dC50eXBlLHU9dC5wZW5kaW5nUHJvcHMscz1udWxsIT09ZT9lLm1lbW9pemVkUHJvcHM6bnVsbCxmPXUuY2hpbGRyZW4sZ28oYyx1KT9mPW51bGw6bnVsbCE9PXMmJmdvKGMscykmJih0LmZsYWdzfD0zMikseGwoZSx0KSxBKGUsdCxmLG4pLHQuY2hpbGQ7Y2FzZSA2OnJldHVybiBudWxsPT09ZSYmaGEodCksbnVsbDtjYXNlIDEzOnJldHVybiBQbChlLHQsbik7Y2FzZSA0OnJldHVybiB1aSh0LHQuc3RhdGVOb2RlLmNvbnRhaW5lckluZm8pLGM9dC5wZW5kaW5nUHJvcHMsbnVsbD09PWU/dC5jaGlsZD1uaSh0LG51bGwsYyxuKTpBKGUsdCxjLG4pLHQuY2hpbGQ7Y2FzZSAxMTpyZXR1cm4gYz10LnR5cGUsdT10LnBlbmRpbmdQcm9wcyxibChlLHQsYyx1PXQuZWxlbWVudFR5cGU9PT1jP3U6a2EoYyx1KSxuKTtjYXNlIDc6cmV0dXJuIEEoZSx0LHQucGVuZGluZ1Byb3BzLG4pLHQuY2hpbGQ7Y2FzZSA4OmNhc2UgMTI6cmV0dXJuIEEoZSx0LHQucGVuZGluZ1Byb3BzLmNoaWxkcmVuLG4pLHQuY2hpbGQ7Y2FzZSAxMDplOntpZihjPXQudHlwZS5fY29udGV4dCx1PXQucGVuZGluZ1Byb3BzLHM9dC5tZW1vaXplZFByb3BzLGY9dS52YWx1ZSxiKFNhLGMuX2N1cnJlbnRWYWx1ZSksYy5fY3VycmVudFZhbHVlPWYsbnVsbCE9PXMpaWYoa3Iocy52YWx1ZSxmKSl7aWYocy5jaGlsZHJlbj09PXUuY2hpbGRyZW4mJiF2LmN1cnJlbnQpe3Q9UmwoZSx0LG4pO2JyZWFrIGV9fWVsc2UgZm9yKG51bGwhPT0ocz10LmNoaWxkKSYmKHMucmV0dXJuPXQpO251bGwhPT1zOyl7dmFyIGQ9cy5kZXBlbmRlbmNpZXM7aWYobnVsbCE9PWQpZm9yKHZhciBwLG0sZj1zLmNoaWxkLGg9ZC5maXJzdENvbnRleHQ7bnVsbCE9PWg7KXtpZihoLmNvbnRleHQ9PT1jKXsxPT09cy50YWcmJigoaD1VYSgtMSxuJi1uKSkudGFnPTIsbnVsbCE9PShwPXMudXBkYXRlUXVldWUpKSYmKG51bGw9PT0obT0ocD1wLnNoYXJlZCkucGVuZGluZyk/aC5uZXh0PWg6KGgubmV4dD1tLm5leHQsbS5uZXh0PWgpLHAucGVuZGluZz1oKSxzLmxhbmVzfD1uLG51bGwhPT0oaD1zLmFsdGVybmF0ZSkmJihoLmxhbmVzfD1uKSxQYShzLnJldHVybixuLHQpLGQubGFuZXN8PW47YnJlYWt9aD1oLm5leHR9ZWxzZSBpZigxMD09PXMudGFnKWY9cy50eXBlPT09dC50eXBlP251bGw6cy5jaGlsZDtlbHNlIGlmKDE4PT09cy50YWcpe2lmKG51bGw9PT0oZj1zLnJldHVybikpdGhyb3cgRXJyb3IoRCgzNDEpKTtmLmxhbmVzfD1uLG51bGwhPT0oZD1mLmFsdGVybmF0ZSkmJihkLmxhbmVzfD1uKSxQYShmLG4sdCksZj1zLnNpYmxpbmd9ZWxzZSBmPXMuY2hpbGQ7aWYobnVsbCE9PWYpZi5yZXR1cm49cztlbHNlIGZvcihmPXM7bnVsbCE9PWY7KXtpZihmPT09dCl7Zj1udWxsO2JyZWFrfWlmKG51bGwhPT0ocz1mLnNpYmxpbmcpKXtzLnJldHVybj1mLnJldHVybixmPXM7YnJlYWt9Zj1mLnJldHVybn1zPWZ9QShlLHQsdS5jaGlsZHJlbixuKSx0PXQuY2hpbGR9cmV0dXJuIHQ7Y2FzZSA5OnJldHVybiB1PXQudHlwZSxjPXQucGVuZGluZ1Byb3BzLmNoaWxkcmVuLElhKHQsbiksYz1jKHU9X2EodSkpLHQuZmxhZ3N8PTEsQShlLHQsYyxuKSx0LmNoaWxkO2Nhc2UgMTQ6cmV0dXJuIHU9a2EoYz10LnR5cGUsdC5wZW5kaW5nUHJvcHMpLHlsKGUsdCxjLHU9a2EoYy50eXBlLHUpLG4pO2Nhc2UgMTU6cmV0dXJuIHZsKGUsdCx0LnR5cGUsdC5wZW5kaW5nUHJvcHMsbik7Y2FzZSAxNzpyZXR1cm4gYz10LnR5cGUsdT10LnBlbmRpbmdQcm9wcyx1PXQuZWxlbWVudFR5cGU9PT1jP3U6a2EoYyx1KSxNbChlLHQpLHQudGFnPTEsdyhjKT8oZT0hMCwkbyh0KSk6ZT0hMSxJYSh0LG4pLFhhKHQsYyx1KSxRYSh0LGMsdSxuKSxDbChudWxsLHQsYywhMCxlLG4pO2Nhc2UgMTk6cmV0dXJuIExsKGUsdCxuKTtjYXNlIDIyOnJldHVybiB3bChlLHQsbil9dGhyb3cgRXJyb3IoRCgxNTYsdC50YWcpKX0sdnU9ImZ1bmN0aW9uIj09dHlwZW9mIHJlcG9ydEVycm9yP3JlcG9ydEVycm9yOmZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoZSl9O2Z1bmN0aW9uIHd1KGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIHh1KGUpe3RoaXMuX2ludGVybmFsUm9vdD1lfWZ1bmN0aW9uIGt1KGUpe3JldHVybiBlJiYoMT09PWUubm9kZVR5cGV8fDk9PT1lLm5vZGVUeXBlfHwxMT09PWUubm9kZVR5cGUpfWZ1bmN0aW9uIFN1KGUpe3JldHVybiBlJiYoMT09PWUubm9kZVR5cGV8fDk9PT1lLm5vZGVUeXBlfHwxMT09PWUubm9kZVR5cGV8fDg9PT1lLm5vZGVUeXBlJiYiIHJlYWN0LW1vdW50LXBvaW50LXVuc3RhYmxlICI9PT1lLm5vZGVWYWx1ZSl9ZnVuY3Rpb24gQ3UoKXt9ZnVuY3Rpb24gRXUoZSx0LG4scixvKXt2YXIgYSxpLGw9bi5fcmVhY3RSb290Q29udGFpbmVyO3JldHVybiBsPygiZnVuY3Rpb24iPT10eXBlb2YgbyYmKGk9byxvPWZ1bmN0aW9uKCl7dmFyIGU9aHUoYSk7aS5jYWxsKGUpfSksbXUodCxhPWwsZSxvKSk6YT1mdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLGksbDtpZihvKXJldHVybiJmdW5jdGlvbiI9PXR5cGVvZiByJiYoYT1yLHI9ZnVuY3Rpb24oKXt2YXIgZT1odShpKTthLmNhbGwoZSl9KSxpPXB1KHQscixlLDAsbnVsbCwhMSwwLCIiLEN1KSxlLl9yZWFjdFJvb3RDb250YWluZXI9aSxlW2pvXT1pLmN1cnJlbnQsdG8oOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLEZjKCksaTtmb3IoO289ZS5sYXN0Q2hpbGQ7KWUucmVtb3ZlQ2hpbGQobyk7ImZ1bmN0aW9uIj09dHlwZW9mIHImJihsPXIscj1mdW5jdGlvbigpe3ZhciBlPWh1KGMpO2wuY2FsbChlKX0pO3ZhciBjPWZ1KGUsMCwhMSxudWxsLDAsITEsMCwiIixDdSk7cmV0dXJuIGUuX3JlYWN0Um9vdENvbnRhaW5lcj1jLGVbam9dPWMuY3VycmVudCx0byg4PT09ZS5ub2RlVHlwZT9lLnBhcmVudE5vZGU6ZSksRmMoZnVuY3Rpb24oKXttdSh0LGMsbixyKX0pLGN9KG4sdCxlLG8sciksaHUoYSl9eHUucHJvdG90eXBlLnJlbmRlcj13dS5wcm90b3R5cGUucmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2ludGVybmFsUm9vdDtpZihudWxsPT09dCl0aHJvdyBFcnJvcihEKDQwOSkpO211KGUsdCxudWxsLG51bGwpfSx4dS5wcm90b3R5cGUudW5tb3VudD13dS5wcm90b3R5cGUudW5tb3VudD1mdW5jdGlvbigpe3ZhciBlLHQ9dGhpcy5faW50ZXJuYWxSb290O251bGwhPT10JiYodGhpcy5faW50ZXJuYWxSb290PW51bGwsZT10LmNvbnRhaW5lckluZm8sRmMoZnVuY3Rpb24oKXttdShudWxsLHQsbnVsbCxudWxsKX0pLGVbam9dPW51bGwpfSx4dS5wcm90b3R5cGUudW5zdGFibGVfc2NoZWR1bGVIeWRyYXRpb249ZnVuY3Rpb24oZSl7aWYoZSl7dmFyIHQ9WHQoKTtlPXtibG9ja2VkT246bnVsbCx0YXJnZXQ6ZSxwcmlvcml0eTp0fTtmb3IodmFyIG49MDtuPG9uLmxlbmd0aCYmMCE9PXQmJnQ8b25bbl0ucHJpb3JpdHk7bisrKTtvbi5zcGxpY2UobiwwLGUpLDA9PT1uJiZ1bihlKX19LEd0PWZ1bmN0aW9uKG4pe3N3aXRjaChuLnRhZyl7Y2FzZSAzOnZhciBlLHQ9bi5zdGF0ZU5vZGU7dC5jdXJyZW50Lm1lbW9pemVkU3RhdGUuaXNEZWh5ZHJhdGVkJiYwIT09KGU9TnQodC5wZW5kaW5nTGFuZXMpKSYmKCR0KHQsMXxlKSxMYyh0LGgoKSksMD09KDYmXykpJiYod2M9aCgpKzUwMCxZbygpKTticmVhaztjYXNlIDEzOkZjKGZ1bmN0aW9uKCl7dmFyIGUsdD1NYShuLDEpO251bGwhPT10JiYoZT1tKCksVGModCxuLDEsZSkpfSksYnUobiwxKX19LHF0PWZ1bmN0aW9uKGUpe3ZhciB0OzEzPT09ZS50YWcmJihudWxsIT09KHQ9TWEoZSwxMzQyMTc3MjgpKSYmVGModCxlLDEzNDIxNzcyOCxtKCkpLGJ1KGUsMTM0MjE3NzI4KSl9LFp0PWZ1bmN0aW9uKGUpe3ZhciB0LG47MTM9PT1lLnRhZyYmKG51bGwhPT0obj1NYShlLHQ9emMoZSkpKSYmVGMobixlLHQsbSgpKSxidShlLHQpKX0sWHQ9ZnVuY3Rpb24oKXtyZXR1cm4geH0sWXQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj14O3RyeXtyZXR1cm4geD1lLHQoKX1maW5hbGx5e3g9bn19LGF0PUZjO2U9e3VzaW5nQ2xpZW50RW50cnlQb2ludDohKEtlPWZ1bmN0aW9uKGUsdCxuKXtzd2l0Y2godCl7Y2FzZSJpbnB1dCI6aWYoQWUoZSxuKSx0PW4ubmFtZSwicmFkaW8iPT09bi50eXBlJiZudWxsIT10KXtmb3Iobj1lO24ucGFyZW50Tm9kZTspbj1uLnBhcmVudE5vZGU7Zm9yKG49bi5xdWVyeVNlbGVjdG9yQWxsKCJpbnB1dFtuYW1lPSIrSlNPTi5zdHJpbmdpZnkoIiIrdCkrJ11bdHlwZT0icmFkaW8iXScpLHQ9MDt0PG4ubGVuZ3RoO3QrKyl7dmFyIHI9blt0XTtpZihyIT09ZSYmci5mb3JtPT09ZS5mb3JtKXt2YXIgbz1MbyhyKTtpZighbyl0aHJvdyBFcnJvcihEKDkwKSk7U2UociksQWUocixvKX19fWJyZWFrO2Nhc2UidGV4dGFyZWEiOk1lKGUsbik7YnJlYWs7Y2FzZSJzZWxlY3QiOm51bGwhPSh0PW4udmFsdWUpJiZ6ZShlLCEhbi5tdWx0aXBsZSx0LCExKX19KSxFdmVudHM6W3pvLFRvLExvLG50LHJ0LG90PUJjXX0sdD17ZmluZEZpYmVyQnlIb3N0SW5zdGFuY2U6X28sYnVuZGxlVHlwZTowLHZlcnNpb246IjE4LjIuMCIscmVuZGVyZXJQYWNrYWdlTmFtZToicmVhY3QtZG9tIn0sUj17YnVuZGxlVHlwZTp0LmJ1bmRsZVR5cGUsdmVyc2lvbjp0LnZlcnNpb24scmVuZGVyZXJQYWNrYWdlTmFtZTp0LnJlbmRlcmVyUGFja2FnZU5hbWUscmVuZGVyZXJDb25maWc6dC5yZW5kZXJlckNvbmZpZyxvdmVycmlkZUhvb2tTdGF0ZTpudWxsLG92ZXJyaWRlSG9va1N0YXRlRGVsZXRlUGF0aDpudWxsLG92ZXJyaWRlSG9va1N0YXRlUmVuYW1lUGF0aDpudWxsLG92ZXJyaWRlUHJvcHM6bnVsbCxvdmVycmlkZVByb3BzRGVsZXRlUGF0aDpudWxsLG92ZXJyaWRlUHJvcHNSZW5hbWVQYXRoOm51bGwsc2V0RXJyb3JIYW5kbGVyOm51bGwsc2V0U3VzcGVuc2VIYW5kbGVyOm51bGwsc2NoZWR1bGVVcGRhdGU6bnVsbCxjdXJyZW50RGlzcGF0Y2hlclJlZjpKLlJlYWN0Q3VycmVudERpc3BhdGNoZXIsZmluZEhvc3RJbnN0YW5jZUJ5RmliZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PT0oZT12dChlKSk/bnVsbDplLnN0YXRlTm9kZX0sZmluZEZpYmVyQnlIb3N0SW5zdGFuY2U6dC5maW5kRmliZXJCeUhvc3RJbnN0YW5jZXx8ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0sZmluZEhvc3RJbnN0YW5jZXNGb3JSZWZyZXNoOm51bGwsc2NoZWR1bGVSZWZyZXNoOm51bGwsc2NoZWR1bGVSb290Om51bGwsc2V0UmVmcmVzaEhhbmRsZXI6bnVsbCxnZXRDdXJyZW50RmliZXI6bnVsbCxyZWNvbmNpbGVyVmVyc2lvbjoiMTguMi4wLW5leHQtOWUzYjc3MmI4LTIwMjIwNjA4In07aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18pe3I9X19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fO2lmKCFyLmlzRGlzYWJsZWQmJnIuc3VwcG9ydHNGaWJlcil0cnl7SXQ9ci5pbmplY3QoUiksX3Q9cn1jYXRjaChlKXt9fWMuX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRUQ9ZSxjLmNyZWF0ZVBvcnRhbD1mdW5jdGlvbihlLHQpe2lmKGt1KHQpKXJldHVybiBmdW5jdGlvbihlLHQsbixyKXtyZXR1cm57JCR0eXBlb2Y6dGUsa2V5Om51bGw9PShyPTM8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09cj9yOm51bGwpP251bGw6IiIrcixjaGlsZHJlbjplLGNvbnRhaW5lckluZm86dCxpbXBsZW1lbnRhdGlvbjpufX0oZSx0LG51bGwsMjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGwpO3Rocm93IEVycm9yKEQoMjAwKSl9LGMuY3JlYXRlUm9vdD1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbztpZihrdShlKSlyZXR1cm4gbj0hMSxyPSIiLG89dnUsbnVsbCE9dCYmKCEwPT09dC51bnN0YWJsZV9zdHJpY3RNb2RlJiYobj0hMCksdm9pZCAwIT09dC5pZGVudGlmaWVyUHJlZml4JiYocj10LmlkZW50aWZpZXJQcmVmaXgpLHZvaWQgMCE9PXQub25SZWNvdmVyYWJsZUVycm9yKSYmKG89dC5vblJlY292ZXJhYmxlRXJyb3IpLHQ9ZnUoZSwxLCExLG51bGwsMCxuLDAscixvKSxlW2pvXT10LmN1cnJlbnQsdG8oOD09PWUubm9kZVR5cGU/ZS5wYXJlbnROb2RlOmUpLG5ldyB3dSh0KTt0aHJvdyBFcnJvcihEKDI5OSkpfSxjLmZpbmRET01Ob2RlPWZ1bmN0aW9uKGUpe2lmKG51bGw9PWUpcmV0dXJuIG51bGw7aWYoMSE9PWUubm9kZVR5cGUpe3ZhciB0PWUuX3JlYWN0SW50ZXJuYWxzO2lmKHZvaWQgMD09PXQpe2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBlLnJlbmRlcil0aHJvdyBFcnJvcihEKDE4OCkpO3Rocm93IGU9T2JqZWN0LmtleXMoZSkuam9pbigiLCIpLEVycm9yKEQoMjY4LGUpKX1lPW51bGw9PT0oZT12dCh0KSk/bnVsbDplLnN0YXRlTm9kZX1yZXR1cm4gZX0sYy5mbHVzaFN5bmM9RmMsYy5oeWRyYXRlPWZ1bmN0aW9uKGUsdCxuKXtpZihTdSh0KSlyZXR1cm4gRXUobnVsbCxlLHQsITAsbik7dGhyb3cgRXJyb3IoRCgyMDApKX0sYy5oeWRyYXRlUm9vdD1mdW5jdGlvbihlLHQsbil7aWYoIWt1KGUpKXRocm93IEVycm9yKEQoNDA1KSk7dmFyIHI9bnVsbCE9biYmbi5oeWRyYXRlZFNvdXJjZXN8fG51bGwsbz0hMSxhPSIiLGk9dnU7aWYobnVsbCE9biYmKCEwPT09bi51bnN0YWJsZV9zdHJpY3RNb2RlJiYobz0hMCksdm9pZCAwIT09bi5pZGVudGlmaWVyUHJlZml4JiYoYT1uLmlkZW50aWZpZXJQcmVmaXgpLHZvaWQgMCE9PW4ub25SZWNvdmVyYWJsZUVycm9yKSYmKGk9bi5vblJlY292ZXJhYmxlRXJyb3IpLHQ9cHUodCxudWxsLGUsMSxudWxsIT1uP246bnVsbCxvLDAsYSxpKSxlW2pvXT10LmN1cnJlbnQsdG8oZSkscilmb3IoZT0wO2U8ci5sZW5ndGg7ZSsrKW89KG89KG49cltlXSkuX2dldFZlcnNpb24pKG4uX3NvdXJjZSksbnVsbD09dC5tdXRhYmxlU291cmNlRWFnZXJIeWRyYXRpb25EYXRhP3QubXV0YWJsZVNvdXJjZUVhZ2VySHlkcmF0aW9uRGF0YT1bbixvXTp0Lm11dGFibGVTb3VyY2VFYWdlckh5ZHJhdGlvbkRhdGEucHVzaChuLG8pO3JldHVybiBuZXcgeHUodCl9LGMucmVuZGVyPWZ1bmN0aW9uKGUsdCxuKXtpZihTdSh0KSlyZXR1cm4gRXUobnVsbCxlLHQsITEsbik7dGhyb3cgRXJyb3IoRCgyMDApKX0sYy51bm1vdW50Q29tcG9uZW50QXROb2RlPWZ1bmN0aW9uKGUpe2lmKFN1KGUpKXJldHVybiEhZS5fcmVhY3RSb290Q29udGFpbmVyJiYoRmMoZnVuY3Rpb24oKXtFdShudWxsLG51bGwsZSwhMSxmdW5jdGlvbigpe2UuX3JlYWN0Um9vdENvbnRhaW5lcj1udWxsLGVbam9dPW51bGx9KX0pLCEwKTt0aHJvdyBFcnJvcihEKDQwKSl9LGMudW5zdGFibGVfYmF0Y2hlZFVwZGF0ZXM9QmMsYy51bnN0YWJsZV9yZW5kZXJTdWJ0cmVlSW50b0NvbnRhaW5lcj1mdW5jdGlvbihlLHQsbixyKXtpZighU3UobikpdGhyb3cgRXJyb3IoRCgyMDApKTtpZihudWxsPT1lfHx2b2lkIDA9PT1lLl9yZWFjdEludGVybmFscyl0aHJvdyBFcnJvcihEKDM4KSk7cmV0dXJuIEV1KGUsdCxuLCExLHIpfSxjLnZlcnNpb249IjE4LjIuMC1uZXh0LTllM2I3NzJiOC0yMDIyMDYwOCJ9LGZ1bmN0aW9uKGUsdCxuKXtlLmV4cG9ydHM9bigxNzIpfSxmdW5jdGlvbihlLFQsdCl7IWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIGEoZSx0KXt2YXIgbj1lLmxlbmd0aDtmb3IoZS5wdXNoKHQpOzA8bjspe3ZhciByPW4tMT4+PjEsbz1lW3JdO2lmKCEoMDxzKG8sdCkpKWJyZWFrO2Vbcl09dCxlW25dPW8sbj1yfX1mdW5jdGlvbiBsKGUpe3JldHVybiAwPT09ZS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIGMoZSl7aWYoMCE9PWUubGVuZ3RoKXt2YXIgdD1lWzBdLG49ZS5wb3AoKTtpZihuIT09dCl7ZVswXT1uO2Zvcih2YXIgcj0wLG89ZS5sZW5ndGgsYT1vPj4+MTtyPGE7KXt2YXIgaT0yKihyKzEpLTEsbD1lW2ldLGM9MStpLHU9ZVtjXTtpZihzKGwsbik8MClyPWM8byYmcyh1LGwpPDA/KGVbcl09dSxlW2NdPW4sYyk6KGVbcl09bCxlW2ldPW4saSk7ZWxzZXtpZighKGM8byYmcyh1LG4pPDApKWJyZWFrO2Vbcl09dSxlW2NdPW4scj1jfX19fX1mdW5jdGlvbiBzKGUsdCl7dmFyIG49ZS5zb3J0SW5kZXgtdC5zb3J0SW5kZXg7cmV0dXJuIDAhPW4/bjplLmlkLXQuaWR9Im9iamVjdCI9PXR5cGVvZiBwZXJmb3JtYW5jZSYmImZ1bmN0aW9uIj09dHlwZW9mIHBlcmZvcm1hbmNlLm5vdz8odD1wZXJmb3JtYW5jZSxULnVuc3RhYmxlX25vdz1mdW5jdGlvbigpe3JldHVybiB0Lm5vdygpfSk6KG49RGF0ZSxyPW4ubm93KCksVC51bnN0YWJsZV9ub3c9ZnVuY3Rpb24oKXtyZXR1cm4gbi5ub3coKS1yfSk7dmFyIHQsbixyLHU9W10sZj1bXSxpPTEsZD1udWxsLHA9MyxtPSExLGg9ITEsZz0hMSxvPSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRUaW1lb3V0P3NldFRpbWVvdXQ6bnVsbCxiPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0Om51bGwseT12b2lkIDAhPT1lP2U6bnVsbDtmdW5jdGlvbiB2KGUpe2Zvcih2YXIgdD1sKGYpO251bGwhPT10Oyl7aWYobnVsbD09PXQuY2FsbGJhY2spYyhmKTtlbHNle2lmKCEodC5zdGFydFRpbWU8PWUpKWJyZWFrO2MoZiksdC5zb3J0SW5kZXg9dC5leHBpcmF0aW9uVGltZSxhKHUsdCl9dD1sKGYpfX1mdW5jdGlvbiB3KGUpe3ZhciB0O2c9ITEsdihlKSxofHwobnVsbCE9PWwodSk/KGg9ITAsXyh4KSk6bnVsbCE9PSh0PWwoZikpJiZ6KHcsdC5zdGFydFRpbWUtZSkpfWZ1bmN0aW9uIHgoZSx0KXtoPSExLGcmJihnPSExLGIoTyksTz0tMSksbT0hMDt2YXIgbj1wO3RyeXtmb3Iodih0KSxkPWwodSk7bnVsbCE9PWQmJighKGQuZXhwaXJhdGlvblRpbWU+dCl8fGUmJiFQKCkpOyl7dmFyIHIsbz1kLmNhbGxiYWNrOyJmdW5jdGlvbiI9PXR5cGVvZiBvPyhkLmNhbGxiYWNrPW51bGwscD1kLnByaW9yaXR5TGV2ZWwscj1vKGQuZXhwaXJhdGlvblRpbWU8PXQpLHQ9VC51bnN0YWJsZV9ub3coKSwiZnVuY3Rpb24iPT10eXBlb2Ygcj9kLmNhbGxiYWNrPXI6ZD09PWwodSkmJmModSksdih0KSk6Yyh1KSxkPWwodSl9dmFyIGEsaT1udWxsIT09ZHx8KG51bGwhPT0oYT1sKGYpKSYmeih3LGEuc3RhcnRUaW1lLXQpLCExKTtyZXR1cm4gaX1maW5hbGx5e2Q9bnVsbCxwPW4sbT0hMX19InVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3ImJnZvaWQgMCE9PW5hdmlnYXRvci5zY2hlZHVsaW5nJiZ2b2lkIDAhPT1uYXZpZ2F0b3Iuc2NoZWR1bGluZy5pc0lucHV0UGVuZGluZyYmbmF2aWdhdG9yLnNjaGVkdWxpbmcuaXNJbnB1dFBlbmRpbmcuYmluZChuYXZpZ2F0b3Iuc2NoZWR1bGluZyk7dmFyIGssUyxDPSExLEU9bnVsbCxPPS0xLGo9NSxBPS0xO2Z1bmN0aW9uIFAoKXtyZXR1cm4hKFQudW5zdGFibGVfbm93KCktQTxqKX1mdW5jdGlvbiBJKCl7aWYobnVsbCE9PUUpe3ZhciBlPVQudW5zdGFibGVfbm93KCksdD0oQT1lLCEwKTt0cnl7dD1FKCEwLGUpfWZpbmFsbHl7dD9rKCk6KEM9ITEsRT1udWxsKX19ZWxzZSBDPSExfWZ1bmN0aW9uIF8oZSl7RT1lLEN8fChDPSEwLGsoKSl9ZnVuY3Rpb24geihlLHQpe089byhmdW5jdGlvbigpe2UoVC51bnN0YWJsZV9ub3coKSl9LHQpfWs9ImZ1bmN0aW9uIj09dHlwZW9mIHk/ZnVuY3Rpb24oKXt5KEkpfToidW5kZWZpbmVkIiE9dHlwZW9mIE1lc3NhZ2VDaGFubmVsPyhlPW5ldyBNZXNzYWdlQ2hhbm5lbCxTPWUucG9ydDIsZS5wb3J0MS5vbm1lc3NhZ2U9SSxmdW5jdGlvbigpe1MucG9zdE1lc3NhZ2UobnVsbCl9KTpmdW5jdGlvbigpe28oSSwwKX0sVC51bnN0YWJsZV9JZGxlUHJpb3JpdHk9NSxULnVuc3RhYmxlX0ltbWVkaWF0ZVByaW9yaXR5PTEsVC51bnN0YWJsZV9Mb3dQcmlvcml0eT00LFQudW5zdGFibGVfTm9ybWFsUHJpb3JpdHk9MyxULnVuc3RhYmxlX1Byb2ZpbGluZz1udWxsLFQudW5zdGFibGVfVXNlckJsb2NraW5nUHJpb3JpdHk9MixULnVuc3RhYmxlX2NhbmNlbENhbGxiYWNrPWZ1bmN0aW9uKGUpe2UuY2FsbGJhY2s9bnVsbH0sVC51bnN0YWJsZV9jb250aW51ZUV4ZWN1dGlvbj1mdW5jdGlvbigpe2h8fG18fChoPSEwLF8oeCkpfSxULnVuc3RhYmxlX2ZvcmNlRnJhbWVSYXRlPWZ1bmN0aW9uKGUpe2U8MHx8MTI1PGU/Y29uc29sZS5lcnJvcigiZm9yY2VGcmFtZVJhdGUgdGFrZXMgYSBwb3NpdGl2ZSBpbnQgYmV0d2VlbiAwIGFuZCAxMjUsIGZvcmNpbmcgZnJhbWUgcmF0ZXMgaGlnaGVyIHRoYW4gMTI1IGZwcyBpcyBub3Qgc3VwcG9ydGVkIik6aj0wPGU/TWF0aC5mbG9vcigxZTMvZSk6NX0sVC51bnN0YWJsZV9nZXRDdXJyZW50UHJpb3JpdHlMZXZlbD1mdW5jdGlvbigpe3JldHVybiBwfSxULnVuc3RhYmxlX2dldEZpcnN0Q2FsbGJhY2tOb2RlPWZ1bmN0aW9uKCl7cmV0dXJuIGwodSl9LFQudW5zdGFibGVfbmV4dD1mdW5jdGlvbihlKXtzd2l0Y2gocCl7Y2FzZSAxOmNhc2UgMjpjYXNlIDM6dmFyIHQ9MzticmVhaztkZWZhdWx0OnQ9cH12YXIgbj1wO3A9dDt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e3A9bn19LFQudW5zdGFibGVfcGF1c2VFeGVjdXRpb249ZnVuY3Rpb24oKXt9LFQudW5zdGFibGVfcmVxdWVzdFBhaW50PWZ1bmN0aW9uKCl7fSxULnVuc3RhYmxlX3J1bldpdGhQcmlvcml0eT1mdW5jdGlvbihlLHQpe3N3aXRjaChlKXtjYXNlIDE6Y2FzZSAyOmNhc2UgMzpjYXNlIDQ6Y2FzZSA1OmJyZWFrO2RlZmF1bHQ6ZT0zfXZhciBuPXA7cD1lO3RyeXtyZXR1cm4gdCgpfWZpbmFsbHl7cD1ufX0sVC51bnN0YWJsZV9zY2hlZHVsZUNhbGxiYWNrPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj1ULnVuc3RhYmxlX25vdygpO3N3aXRjaChuPSJvYmplY3QiPT10eXBlb2YgbiYmbnVsbCE9PW4mJiJudW1iZXIiPT10eXBlb2Yobj1uLmRlbGF5KSYmMDxuP3IrbjpyLGUpe2Nhc2UgMTp2YXIgbz0tMTticmVhaztjYXNlIDI6bz0yNTA7YnJlYWs7Y2FzZSA1Om89MTA3Mzc0MTgyMzticmVhaztjYXNlIDQ6bz0xZTQ7YnJlYWs7ZGVmYXVsdDpvPTVlM31yZXR1cm4gZT17aWQ6aSsrLGNhbGxiYWNrOnQscHJpb3JpdHlMZXZlbDplLHN0YXJ0VGltZTpuLGV4cGlyYXRpb25UaW1lOm89bitvLHNvcnRJbmRleDotMX0scjxuPyhlLnNvcnRJbmRleD1uLGEoZixlKSxudWxsPT09bCh1KSYmZT09PWwoZikmJihnPyhiKE8pLE89LTEpOmc9ITAseih3LG4tcikpKTooZS5zb3J0SW5kZXg9byxhKHUsZSksaHx8bXx8KGg9ITAsXyh4KSkpLGV9LFQudW5zdGFibGVfc2hvdWxkWWllbGQ9UCxULnVuc3RhYmxlX3dyYXBDYWxsYmFjaz1mdW5jdGlvbih0KXt2YXIgbj1wO3JldHVybiBmdW5jdGlvbigpe3ZhciBlPXA7cD1uO3RyeXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZmluYWxseXtwPWV9fX19LmNhbGwodGhpcyx0KDE3Mykuc2V0SW1tZWRpYXRlKX0sZnVuY3Rpb24oZSxvLGEpeyFmdW5jdGlvbihlKXt2YXIgdD12b2lkIDAhPT1lJiZlfHwidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGYmJnNlbGZ8fHdpbmRvdyxuPUZ1bmN0aW9uLnByb3RvdHlwZS5hcHBseTtmdW5jdGlvbiByKGUsdCl7dGhpcy5faWQ9ZSx0aGlzLl9jbGVhckZuPXR9by5zZXRUaW1lb3V0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyByKG4uY2FsbChzZXRUaW1lb3V0LHQsYXJndW1lbnRzKSxjbGVhclRpbWVvdXQpfSxvLnNldEludGVydmFsPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyByKG4uY2FsbChzZXRJbnRlcnZhbCx0LGFyZ3VtZW50cyksY2xlYXJJbnRlcnZhbCl9LG8uY2xlYXJUaW1lb3V0PW8uY2xlYXJJbnRlcnZhbD1mdW5jdGlvbihlKXtlJiZlLmNsb3NlKCl9LHIucHJvdG90eXBlLnVucmVmPXIucHJvdG90eXBlLnJlZj1mdW5jdGlvbigpe30sci5wcm90b3R5cGUuY2xvc2U9ZnVuY3Rpb24oKXt0aGlzLl9jbGVhckZuLmNhbGwodCx0aGlzLl9pZCl9LG8uZW5yb2xsPWZ1bmN0aW9uKGUsdCl7Y2xlYXJUaW1lb3V0KGUuX2lkbGVUaW1lb3V0SWQpLGUuX2lkbGVUaW1lb3V0PXR9LG8udW5lbnJvbGw9ZnVuY3Rpb24oZSl7Y2xlYXJUaW1lb3V0KGUuX2lkbGVUaW1lb3V0SWQpLGUuX2lkbGVUaW1lb3V0PS0xfSxvLl91bnJlZkFjdGl2ZT1vLmFjdGl2ZT1mdW5jdGlvbihlKXtjbGVhclRpbWVvdXQoZS5faWRsZVRpbWVvdXRJZCk7dmFyIHQ9ZS5faWRsZVRpbWVvdXQ7MDw9dCYmKGUuX2lkbGVUaW1lb3V0SWQ9c2V0VGltZW91dChmdW5jdGlvbigpe2UuX29uVGltZW91dCYmZS5fb25UaW1lb3V0KCl9LHQpKX0sYSgxNzQpLG8uc2V0SW1tZWRpYXRlPSJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5zZXRJbW1lZGlhdGV8fHZvaWQgMCE9PWUmJmUuc2V0SW1tZWRpYXRlfHx0aGlzJiZ0aGlzLnNldEltbWVkaWF0ZSxvLmNsZWFySW1tZWRpYXRlPSJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZi5jbGVhckltbWVkaWF0ZXx8dm9pZCAwIT09ZSYmZS5jbGVhckltbWVkaWF0ZXx8dGhpcyYmdGhpcy5jbGVhckltbWVkaWF0ZX0uY2FsbCh0aGlzLGEoMjIpKX0sZnVuY3Rpb24oZSx0LG4peyFmdW5jdGlvbihlLHQpe2Z1bmN0aW9uIGEoZSl7ZGVsZXRlIGNbZV19ZnVuY3Rpb24gaShlKXtpZih1KXNldFRpbWVvdXQoaSwwLGUpO2Vsc2V7dmFyIHQ9Y1tlXTtpZih0KXt1PSEwO3RyeXt2YXIgbj10LHI9bi5jYWxsYmFjayxvPW4uYXJncztzd2l0Y2goby5sZW5ndGgpe2Nhc2UgMDpyKCk7YnJlYWs7Y2FzZSAxOnIob1swXSk7YnJlYWs7Y2FzZSAyOnIob1swXSxvWzFdKTticmVhaztjYXNlIDM6cihvWzBdLG9bMV0sb1syXSk7YnJlYWs7ZGVmYXVsdDpyLmFwcGx5KGwsbyl9fWZpbmFsbHl7YShlKSx1PSExfX19fWZ1bmN0aW9uIG4oKXtmdW5jdGlvbiBlKGUpe2Uuc291cmNlPT09ciYmInN0cmluZyI9PXR5cGVvZiBlLmRhdGEmJjA9PT1lLmRhdGEuaW5kZXhPZih0KSYmaSgrZS5kYXRhLnNsaWNlKHQubGVuZ3RoKSl9dmFyIHQ9InNldEltbWVkaWF0ZSQiK01hdGgucmFuZG9tKCkrIiQiO3IuYWRkRXZlbnRMaXN0ZW5lcj9yLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGUsITEpOnIuYXR0YWNoRXZlbnQoIm9ubWVzc2FnZSIsZSksZj1mdW5jdGlvbihlKXtyLnBvc3RNZXNzYWdlKHQrZSwiKiIpfX12YXIgcixsLG8sYyx1LHMsZixkLHA7KHI9InVuZGVmaW5lZCI9PXR5cGVvZiBzZWxmP3ZvaWQgMD09PWU/dGhpczplOnNlbGYpLnNldEltbWVkaWF0ZXx8KG89MSx1PSEoYz17fSkscz1yLmRvY3VtZW50LGU9KGU9T2JqZWN0LmdldFByb3RvdHlwZU9mJiZPYmplY3QuZ2V0UHJvdG90eXBlT2YocikpJiZlLnNldFRpbWVvdXQ/ZTpyLCJbb2JqZWN0IHByb2Nlc3NdIj09PXt9LnRvU3RyaW5nLmNhbGwoci5wcm9jZXNzKT9mPWZ1bmN0aW9uKGUpe3QubmV4dFRpY2soZnVuY3Rpb24oKXtpKGUpfSl9OiFmdW5jdGlvbigpe3ZhciBlLHQ7aWYoci5wb3N0TWVzc2FnZSYmIXIuaW1wb3J0U2NyaXB0cylyZXR1cm4gZT0hMCx0PXIub25tZXNzYWdlLHIub25tZXNzYWdlPWZ1bmN0aW9uKCl7ZT0hMX0sci5wb3N0TWVzc2FnZSgiIiwiKiIpLHIub25tZXNzYWdlPXQsZX0oKT9mPXIuTWVzc2FnZUNoYW5uZWw/KChwPW5ldyBNZXNzYWdlQ2hhbm5lbCkucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKGUpe2koZS5kYXRhKX0sZnVuY3Rpb24oZSl7cC5wb3J0Mi5wb3N0TWVzc2FnZShlKX0pOnMmJiJvbnJlYWR5c3RhdGVjaGFuZ2UiaW4gcy5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKT8oZD1zLmRvY3VtZW50RWxlbWVudCxmdW5jdGlvbihlKXt2YXIgdD1zLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO3Qub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aShlKSx0Lm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLGQucmVtb3ZlQ2hpbGQodCksdD1udWxsfSxkLmFwcGVuZENoaWxkKHQpfSk6ZnVuY3Rpb24oZSl7c2V0VGltZW91dChpLDAsZSl9Om4oKSxlLnNldEltbWVkaWF0ZT1mdW5jdGlvbihlKXsiZnVuY3Rpb24iIT10eXBlb2YgZSYmKGU9bmV3IEZ1bmN0aW9uKCIiK2UpKTtmb3IodmFyIHQ9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSksbj0wO248dC5sZW5ndGg7bisrKXRbbl09YXJndW1lbnRzW24rMV07cmV0dXJuIGNbb109e2NhbGxiYWNrOmUsYXJnczp0fSxmKG8pLG8rK30sZS5jbGVhckltbWVkaWF0ZT1hKX0uY2FsbCh0aGlzLG4oMjIpLG4oOTIpKX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByLG89U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLGE9U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksaT1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLGw9U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxjPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksdT1TeW1ib2wuZm9yKCJyZWFjdC5wcm92aWRlciIpLHM9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGY9U3ltYm9sLmZvcigicmVhY3Quc2VydmVyX2NvbnRleHQiKSxkPVN5bWJvbC5mb3IoInJlYWN0LmZvcndhcmRfcmVmIikscD1TeW1ib2wuZm9yKCJyZWFjdC5zdXNwZW5zZSIpLG09U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpLGg9U3ltYm9sLmZvcigicmVhY3QubWVtbyIpLGc9U3ltYm9sLmZvcigicmVhY3QubGF6eSIpLGI9U3ltYm9sLmZvcigicmVhY3Qub2Zmc2NyZWVuIik7ZnVuY3Rpb24geShlKXtpZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXt2YXIgdD1lLiQkdHlwZW9mO3N3aXRjaCh0KXtjYXNlIG86c3dpdGNoKGU9ZS50eXBlKXtjYXNlIGk6Y2FzZSBjOmNhc2UgbDpjYXNlIHA6Y2FzZSBtOnJldHVybiBlO2RlZmF1bHQ6c3dpdGNoKGU9ZSYmZS4kJHR5cGVvZil7Y2FzZSBmOmNhc2UgczpjYXNlIGQ6Y2FzZSBnOmNhc2UgaDpjYXNlIHU6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4gdH19Y2FzZSBhOnJldHVybiB0fX19cj1TeW1ib2wuZm9yKCJyZWFjdC5tb2R1bGUucmVmZXJlbmNlIiksdC5Db250ZXh0Q29uc3VtZXI9cyx0LkNvbnRleHRQcm92aWRlcj11LHQuRWxlbWVudD1vLHQuRm9yd2FyZFJlZj1kLHQuRnJhZ21lbnQ9aSx0Lkxhenk9Zyx0Lk1lbW89aCx0LlBvcnRhbD1hLHQuUHJvZmlsZXI9Yyx0LlN0cmljdE1vZGU9bCx0LlN1c3BlbnNlPXAsdC5TdXNwZW5zZUxpc3Q9bSx0LmlzQXN5bmNNb2RlPWZ1bmN0aW9uKCl7cmV0dXJuITF9LHQuaXNDb25jdXJyZW50TW9kZT1mdW5jdGlvbigpe3JldHVybiExfSx0LmlzQ29udGV4dENvbnN1bWVyPWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09c30sdC5pc0NvbnRleHRQcm92aWRlcj1mdW5jdGlvbihlKXtyZXR1cm4geShlKT09PXV9LHQuaXNFbGVtZW50PWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJmUuJCR0eXBlb2Y9PT1vfSx0LmlzRm9yd2FyZFJlZj1mdW5jdGlvbihlKXtyZXR1cm4geShlKT09PWR9LHQuaXNGcmFnbWVudD1mdW5jdGlvbihlKXtyZXR1cm4geShlKT09PWl9LHQuaXNMYXp5PWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09Z30sdC5pc01lbW89ZnVuY3Rpb24oZSl7cmV0dXJuIHkoZSk9PT1ofSx0LmlzUG9ydGFsPWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09YX0sdC5pc1Byb2ZpbGVyPWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09Y30sdC5pc1N0cmljdE1vZGU9ZnVuY3Rpb24oZSl7cmV0dXJuIHkoZSk9PT1sfSx0LmlzU3VzcGVuc2U9ZnVuY3Rpb24oZSl7cmV0dXJuIHkoZSk9PT1wfSx0LmlzU3VzcGVuc2VMaXN0PWZ1bmN0aW9uKGUpe3JldHVybiB5KGUpPT09bX0sdC5pc1ZhbGlkRWxlbWVudFR5cGU9ZnVuY3Rpb24oZSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZXx8ZT09PWl8fGU9PT1jfHxlPT09bHx8ZT09PXB8fGU9PT1tfHxlPT09Ynx8Im9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmKGUuJCR0eXBlb2Y9PT1nfHxlLiQkdHlwZW9mPT09aHx8ZS4kJHR5cGVvZj09PXV8fGUuJCR0eXBlb2Y9PT1zfHxlLiQkdHlwZW9mPT09ZHx8ZS4kJHR5cGVvZj09PXJ8fHZvaWQgMCE9PWUuZ2V0TW9kdWxlSWQpfSx0LnR5cGVPZj15fSxmdW5jdGlvbihlLHQsbil7ZS5leHBvcnRzPW4oMTc3KX0sZnVuY3Rpb24oZSx0LG4pe3ZhciByPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJlN5bWJvbC5mb3Isbz1yP1N5bWJvbC5mb3IoInJlYWN0LmVsZW1lbnQiKTo2MDEwMyxhPXI/U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIik6NjAxMDYsaT1yP1N5bWJvbC5mb3IoInJlYWN0LmZyYWdtZW50Iik6NjAxMDcsbD1yP1N5bWJvbC5mb3IoInJlYWN0LnN0cmljdF9tb2RlIik6NjAxMDgsYz1yP1N5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIik6NjAxMTQsdT1yP1N5bWJvbC5mb3IoInJlYWN0LnByb3ZpZGVyIik6NjAxMDkscz1yP1N5bWJvbC5mb3IoInJlYWN0LmNvbnRleHQiKTo2MDExMCxmPXI/U3ltYm9sLmZvcigicmVhY3QuYXN5bmNfbW9kZSIpOjYwMTExLGQ9cj9TeW1ib2wuZm9yKCJyZWFjdC5jb25jdXJyZW50X21vZGUiKTo2MDExMSxwPXI/U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKTo2MDExMixtPXI/U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2UiKTo2MDExMyxoPXI/U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2VfbGlzdCIpOjYwMTIwLGc9cj9TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIik6NjAxMTUsYj1yP1N5bWJvbC5mb3IoInJlYWN0LmxhenkiKTo2MDExNix5PXI/U3ltYm9sLmZvcigicmVhY3QuYmxvY2siKTo2MDEyMSx2PXI/U3ltYm9sLmZvcigicmVhY3QuZnVuZGFtZW50YWwiKTo2MDExNyx3PXI/U3ltYm9sLmZvcigicmVhY3QucmVzcG9uZGVyIik6NjAxMTgseD1yP1N5bWJvbC5mb3IoInJlYWN0LnNjb3BlIik6NjAxMTk7ZnVuY3Rpb24gayhlKXtpZigib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lKXt2YXIgdD1lLiQkdHlwZW9mO3N3aXRjaCh0KXtjYXNlIG86c3dpdGNoKGU9ZS50eXBlKXtjYXNlIGY6Y2FzZSBkOmNhc2UgaTpjYXNlIGM6Y2FzZSBsOmNhc2UgbTpyZXR1cm4gZTtkZWZhdWx0OnN3aXRjaChlPWUmJmUuJCR0eXBlb2Ype2Nhc2UgczpjYXNlIHA6Y2FzZSBiOmNhc2UgZzpjYXNlIHU6cmV0dXJuIGU7ZGVmYXVsdDpyZXR1cm4gdH19Y2FzZSBhOnJldHVybiB0fX19ZnVuY3Rpb24gUyhlKXtyZXR1cm4gayhlKT09PWR9dC5Bc3luY01vZGU9Zix0LkNvbmN1cnJlbnRNb2RlPWQsdC5Db250ZXh0Q29uc3VtZXI9cyx0LkNvbnRleHRQcm92aWRlcj11LHQuRWxlbWVudD1vLHQuRm9yd2FyZFJlZj1wLHQuRnJhZ21lbnQ9aSx0Lkxhenk9Yix0Lk1lbW89Zyx0LlBvcnRhbD1hLHQuUHJvZmlsZXI9Yyx0LlN0cmljdE1vZGU9bCx0LlN1c3BlbnNlPW0sdC5pc0FzeW5jTW9kZT1mdW5jdGlvbihlKXtyZXR1cm4gUyhlKXx8ayhlKT09PWZ9LHQuaXNDb25jdXJyZW50TW9kZT1TLHQuaXNDb250ZXh0Q29uc3VtZXI9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1zfSx0LmlzQ29udGV4dFByb3ZpZGVyPWZ1bmN0aW9uKGUpe3JldHVybiBrKGUpPT09dX0sdC5pc0VsZW1lbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmZS4kJHR5cGVvZj09PW99LHQuaXNGb3J3YXJkUmVmPWZ1bmN0aW9uKGUpe3JldHVybiBrKGUpPT09cH0sdC5pc0ZyYWdtZW50PWZ1bmN0aW9uKGUpe3JldHVybiBrKGUpPT09aX0sdC5pc0xhenk9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1ifSx0LmlzTWVtbz1mdW5jdGlvbihlKXtyZXR1cm4gayhlKT09PWd9LHQuaXNQb3J0YWw9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1hfSx0LmlzUHJvZmlsZXI9ZnVuY3Rpb24oZSl7cmV0dXJuIGsoZSk9PT1jfSx0LmlzU3RyaWN0TW9kZT1mdW5jdGlvbihlKXtyZXR1cm4gayhlKT09PWx9LHQuaXNTdXNwZW5zZT1mdW5jdGlvbihlKXtyZXR1cm4gayhlKT09PW19LHQuaXNWYWxpZEVsZW1lbnRUeXBlPWZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGV8fGU9PT1pfHxlPT09ZHx8ZT09PWN8fGU9PT1sfHxlPT09bXx8ZT09PWh8fCJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJihlLiQkdHlwZW9mPT09Ynx8ZS4kJHR5cGVvZj09PWd8fGUuJCR0eXBlb2Y9PT11fHxlLiQkdHlwZW9mPT09c3x8ZS4kJHR5cGVvZj09PXB8fGUuJCR0eXBlb2Y9PT12fHxlLiQkdHlwZW9mPT09d3x8ZS4kJHR5cGVvZj09PXh8fGUuJCR0eXBlb2Y9PT15KX0sdC50eXBlT2Y9a30sZnVuY3Rpb24oYixlLHQpe3QucihlKSx0LmQoZSwic2NyaXB0SWQiLGZ1bmN0aW9uKCl7cmV0dXJuIGd9KTt0KDk4KSx0KDE2Nyk7dmFyIG4sRj10KDApLEg9dC5uKEYpLGU9dCg5MykseT10Lm4oZSk7ZnVuY3Rpb24gbygpe3JldHVybiBuYXZpZ2F0b3IudXNlckFnZW50fHxuYXZpZ2F0b3IudmVuZG9yfWZ1bmN0aW9uIHYoKXtyZXR1cm4gMDw9bmF2aWdhdG9yLnBsYXRmb3JtLnRvVXBwZXJDYXNlKCkuaW5kZXhPZigiTUFDIil9ZnVuY3Rpb24gYSgpe3JldHVybiEhL2lQYWR8aVBob25lfGlQb2QvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKXx8ISEvaXAoaG9uZXxvZHxhZCkvaS50ZXN0KG8oKSl8fG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyYmMjxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMmJi9NYWNJbnRlbC8udGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pfWZ1bmN0aW9uIHcoKXtyZXR1cm4tMSE9PW8oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImFuZHJvaWQiKX1mdW5jdGlvbiBEKCl7dmFyIGU7cmV0dXJuIHZvaWQgMD09PW4mJiExPT09KG49YSgpfHx3KCkpJiYoZT1vKCksbj0vKGFuZHJvaWR8YmJcZCt8bWVlZ28pLittb2JpbGV8YXZhbnRnb3xiYWRhXC98YmxhY2tiZXJyeXxibGF6ZXJ8Y29tcGFsfGVsYWluZXxmZW5uZWN8aGlwdG9wfGllbW9iaWxlfGlwKGhvbmV8b2QpfGlyaXN8a2luZGxlfGxnZSB8bWFlbW98bWlkcHxtbXB8bW9iaWxlLitmaXJlZm94fG5ldGZyb250fG9wZXJhIG0ob2J8aW4paXxwYWxtKCBvcyk/fHBob25lfHAoaXhpfHJlKVwvfHBsdWNrZXJ8cG9ja2V0fHBzcHxzZXJpZXMoNHw2KTB8c3ltYmlhbnx0cmVvfHVwXC4oYnJvd3NlcnxsaW5rKXx2b2RhZm9uZXx3YXB8d2luZG93cyBjZXx4ZGF8eGlpbm8vaS50ZXN0KGUpfHwvMTIwN3w2MzEwfDY1OTB8M2dzb3w0dGhwfDUwWzEtNl1pfDc3MHN8ODAyc3xhIHdhfGFiYWN8YWMoZXJ8b298c1wtKXxhaShrb3xybil8YWwoYXZ8Y2F8Y28pfGFtb2l8YW4oZXh8bnl8eXcpfGFwdHV8YXIoY2h8Z28pfGFzKHRlfHVzKXxhdHR3fGF1KGRpfFwtbXxyIHxzICl8YXZhbnxiZShja3xsbHxucSl8YmkobGJ8cmQpfGJsKGFjfGF6KXxicihlfHYpd3xidW1ifGJ3XC0obnx1KXxjNTVcL3xjYXBpfGNjd2F8Y2RtXC18Y2VsbHxjaHRtfGNsZGN8Y21kXC18Y28obXB8bmQpfGNyYXd8ZGEoaXR8bGx8bmcpfGRidGV8ZGNcLXN8ZGV2aXxkaWNhfGRtb2J8ZG8oY3xwKW98ZHMoMTJ8XC1kKXxlbCg0OXxhaSl8ZW0obDJ8dWwpfGVyKGljfGswKXxlc2w4fGV6KFs0LTddMHxvc3x3YXx6ZSl8ZmV0Y3xmbHkoXC18Xyl8ZzEgdXxnNTYwfGdlbmV8Z2ZcLTV8Z1wtbW98Z28oXC53fG9kKXxncihhZHx1bil8aGFpZXxoY2l0fGhkXC0obXxwfHQpfGhlaVwtfGhpKHB0fHRhKXxocCggaXxpcCl8aHNcLWN8aHQoYyhcLXwgfF98YXxnfHB8c3x0KXx0cCl8aHUoYXd8dGMpfGlcLSgyMHxnb3xtYSl8aTIzMHxpYWMoIHxcLXxcLyl8aWJyb3xpZGVhfGlnMDF8aWtvbXxpbTFrfGlubm98aXBhcXxpcmlzfGphKHR8dilhfGpicm98amVtdXxqaWdzfGtkZGl8a2VqaXxrZ3QoIHxcLyl8a2xvbnxrcHQgfGt3Y1wtfGt5byhjfGspfGxlKG5vfHhpKXxsZyggZ3xcLyhrfGx8dSl8NTB8NTR8XC1bYS13XSl8bGlid3xseW54fG0xXC13fG0zZ2F8bTUwXC98bWEodGV8dWl8eG8pfG1jKDAxfDIxfGNhKXxtXC1jcnxtZShyY3xyaSl8bWkobzh8b2F8dHMpfG1tZWZ8bW8oMDF8MDJ8Yml8ZGV8ZG98dChcLXwgfG98dil8enopfG10KDUwfHAxfHYgKXxtd2JwfG15d2F8bjEwWzAtMl18bjIwWzItM118bjMwKDB8Mil8bjUwKDB8Mnw1KXxuNygwKDB8MSl8MTApfG5lKChjfG0pXC18b258dGZ8d2Z8d2d8d3QpfG5vayg2fGkpfG56cGh8bzJpbXxvcCh0aXx3dil8b3Jhbnxvd2cxfHA4MDB8cGFuKGF8ZHx0KXxwZHhnfHBnKDEzfFwtKFsxLThdfGMpKXxwaGlsfHBpcmV8cGwoYXl8dWMpfHBuXC0yfHBvKGNrfHJ0fHNlKXxwcm94fHBzaW98cHRcLWd8cWFcLWF8cWMoMDd8MTJ8MjF8MzJ8NjB8XC1bMi03XXxpXC0pfHF0ZWt8cjM4MHxyNjAwfHJha3N8cmltOXxybyh2ZXx6byl8czU1XC98c2EoZ2V8bWF8bW18bXN8bnl8dmEpfHNjKDAxfGhcLXxvb3xwXC0pfHNka1wvfHNlKGMoXC18MHwxKXw0N3xtY3xuZHxyaSl8c2doXC18c2hhcnxzaWUoXC18bSl8c2tcLTB8c2woNDV8aWQpfHNtKGFsfGFyfGIzfGl0fHQ1KXxzbyhmdHxueSl8c3AoMDF8aFwtfHZcLXx2ICl8c3koMDF8bWIpfHQyKDE4fDUwKXx0NigwMHwxMHwxOCl8dGEoZ3R8bGspfHRjbFwtfHRkZ1wtfHRlbChpfG0pfHRpbVwtfHRcLW1vfHRvKHBsfHNoKXx0cyg3MHxtXC18bTN8bTUpfHR4XC05fHVwKFwuYnxnMXxzaSl8dXRzdHx2NDAwfHY3NTB8dmVyaXx2aShyZ3x0ZSl8dmsoNDB8NVswLTNdfFwtdil8dm00MHx2b2RhfHZ1bGN8dngoNTJ8NTN8NjB8NjF8NzB8ODB8ODF8ODN8ODV8OTgpfHczYyhcLXwgKXx3ZWJjfHdoaXR8d2koZyB8bmN8bncpfHdtbGJ8d29udXx4NzAwfHlhc1wtfHlvdXJ8emV0b3x6dGVcLS9pLnRlc3QoZS5zdWJzdHIoMCw0KSkpLG59ZnVuY3Rpb24gVSgpe3JldHVybiFEKCl9dmFyIGU9dCg5NCkseD10Lm4oZSk7ZnVuY3Rpb24gaShlKXtyZXR1cm4oaT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIF8odCxlKXt2YXIgbixyPU9iamVjdC5rZXlzKHQpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYobj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpLGUmJihuPW4uZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSxyLnB1c2guYXBwbHkocixuKSkscn12YXIgbD17Y2FsbFRvQWN0aW9uOiJNZXNzYWdlIHVzIPCfkYsiLGJ1dHRvblRleHQ6IkNvbnRhY3QgdXMiLGJ1dHRvblRleHRDbG9zZToiQ2xvc2UiLGdyZWV0aW5nTWVzc2FnZToiSGVsbG8g8J+RiyBIb3cgbWF5IHdlIGhlbHAgeW91PyBKdXN0IHNlbmQgdXMgYSBtZXNzYWdlIG5vdyB0byBnZXQgYXNzaXN0YW5jZS4iLGdyZWV0aW5nTWVzc2FnZURlbGF5OjUsY2FsbFRvQWN0aW9uRGVsYXk6M2UzLGNvbXBhbnlMb2dvVXJsOiExLGJ1dHRvbkltYWdlVXJsOiExLHBvc2l0aW9uOiJyaWdodCIsZ3JlZXRpbmc6ITEsYW5pbWF0aW9uOiExLGdyZWV0aW5nU3R5bGU6ImNsYXNzaWMiLGdyZWV0aW5nQWdlbnROYW1lOiJCb2IiLGdyZWV0aW5nRGlyZWN0aW9uOiJjb2x1bW4iLGdyZWV0aW5nQWdlbnRQb3NpdGlvbjoiTWFuYWdlciIsZ3JlZXRpbmdTdGFydENoYXRXaXRoOiJTdGFydCBDaGF0IHdpdGg6IixncmVldGluZ01lc3NlbmdlcnM6ITAsZ3JlZXRpbmdDb29raWU6ODY0MDAsYnJhbmRpbmc6ITEsZGlyZWN0aW9uOiJjb2x1bW4iLGJvcmRlcjohMSxub3RpZmljYXRpb25JbmRpY2F0b3I6ITEsYnV0dG9uQm9yZGVyUmFkaXVzOjUwLGFjdGl2YXRvclNpemU6NTAsYnV0dG9uU2hhZG93OjQwLGJ1dHRvbk9wYWNpdHk6MTAwLGJnU3R5bGU6ImNvbG9yIixidXR0b25BbmltYXRpb246InB1bHNlIixhY3RpdmF0b3JJY29uOiJjbGFzc2ljIixidXR0b25TdHlsZToiY2xhc3NpYyIsc2hpZnRIb3Jpem9udGFsOjAsc2hpZnRWZXJ0aWNhbDowLGdhOiExLG1pcnJvcjohMSxtb2JpbGU6ITAsZGVza3RvcDohMCxkb21haW46ITEsa2V5OiExLG9yZGVyOltdLGlzU2luZ2xlOiExLHNob3dXaWRnZXQ6ITAsY29uZmlnTG9hZGVkOiExLGRpc3BsYXlPbkFsbFBhZ2VzOiEwLHBhZ2VMaXN0VG9TaG93OltdLHBhZ2VMaXN0VG9IaWRlOltdLHN1YnNjcmlwdGlvbkNyZWF0ZWREYXRlOm51bGwsYnV0dG9uQ29sb3I6IiNGRjY1NTAiLGFwcGxlOiExLGFwcGxlTGFiZWw6IkFwcGxlIE1lc3NhZ2VzIixhcHBsZUNvbG9yOiIjMzNkOTRmIixhcHBsZUljb246ITEseW91dHViZTohMSx5b3V0dWJlTGFiZWw6IllvdXR1YmUiLHlvdXR1YmVDb2xvcjoiI2ZmMDAwMCIseW91dHViZUljb246ITEseW91dHViZVNob3dQb3B1cFBsYXRmb3JtOiJldmVyeXdoZXJlIixjYWxsOiExLGNhbGxMYWJlbDoiUGhvbmUiLGNhbGxDb2xvcjoiI2VjNTkyMyIsY2FsbEljb246ITEsY2FsbFFyQ29kZTohMSxjYWxsU2hvd1BvcHVwUGxhdGZvcm06ImRlc2t0b3AiLGNvbnRhY3Rmb3JtSG9zdDpudWxsLGNvbnRhY3Rmb3JtOiExLGNvbnRhY3Rmb3JtTGFiZWw6IkNvbnRhY3QgRm9ybSIsY29udGFjdGZvcm1Db2xvcjoiIzAwNjNmZiIsY29udGFjdGZvcm1JY29uOiExLGNvbnRhY3Rmb3JtUG9wdXBUaXRsZToiQ29udGFjdCBVcyIsY29udGFjdGZvcm1Qb3B1cExhbmc6ImVuIixkaXNjb3JkOiExLGRpc2NvcmRMYWJlbDoiRGlzY29yZCIsZGlzY29yZENvbG9yOiIjNTg2NUYyIixkaXNjb3JkSWNvbjohMSx0ZWFtczohMSx0ZWFtc0xhYmVsOiJUZWFtcyIsdGVhbXNDb2xvcjoiI2ZmZmZmZiIsdGVhbXNJY29uOiExLGVtYWlsOiExLGVtYWlsTGFiZWw6IkVtYWlsIixlbWFpbENvbG9yOiIjNjA2MDYwIixlbWFpbEljb246ITEsZmFjZWJvb2s6ITEsZmFjZWJvb2tMYWJlbDoiTWVzc2VuZ2VyIixmYWNlYm9va0NvbG9yOiIjMDA4NGZmIixmYWNlYm9va0ljb246ITEsZmFjZWJvb2tGcmFtZTpudWxsLGNhbGVuZGFySG9zdDpudWxsLGNhbGVuZGFyOiExLGNhbGVuZGFyTGFiZWw6IkFwcG9pbnRtZW50IixjYWxlbmRhckNvbG9yOiIjMDA2M2ZmIixjYWxlbmRhckljb246ITEsY2FsZW5kYXJDdXN0b21NZXNzYWdlOiJNYWtlIGFuIGFwcG9pbnRtZW50ISIsY2FsZW5kYXJOYW1lUGxhY2Vob2xkZXI6Ik5hbWUiLGNhbGVuZGFyUGhvbmVQbGFjZWhvbGRlcjoiUGhvbmUiLGNhbGVuZGFyRW1haWxQbGFjZWhvbGRlcjoiRW1haWwiLGNhbGVuZGFyTWVzc2FnZVBsYWNlaG9sZGVyOiJNZXNzYWdlIixjYWxlbmRhclNlbmRCdXR0b25UZXh0OiJTRU5EIixnb29nbGVtYXA6ITEsZ29vZ2xlbWFwTGFiZWw6Ikdvb2dsZSBNYXBzIixnb29nbGVtYXBDdXN0b21NZXNzYWdlOiExLGdvb2dsZW1hcENvbG9yOiIjZjNmM2YzIixnb29nbGVtYXBJY29uOiExLGdvb2dsZW1hcFNob3dQb3B1cFBsYXRmb3JtOiJub3doZXJlIixpbnN0YWdyYW06ITEsaW5zdGFncmFtTGFiZWw6Ikluc3RhZ3JhbSIsaW5zdGFncmFtQ29sb3I6IiNGNzc3MzciLGluc3RhZ3JhbUljb246ITEsbGluZTohMSxsaW5lTGFiZWw6IkxpbmUiLGxpbmVDb2xvcjoiIzAwYzMwMCIsbGluZUljb246ITEsbGluZVNob3dQb3B1cFBsYXRmb3JtOiJkZXNrdG9wIixsaW5rOiExLGxpbmtMYWJlbDoiTGluayIsbGlua0NvbG9yOiIjMWY4OGU1IixsaW5rSWNvbjohMSxsaW5rZWRpbjohMSxsaW5rZWRpbkxhYmVsOiJMaW5rZWRJbiIsbGlua2VkaW5Db2xvcjoiIzAwN2ViYiIsbGlua2VkaW5JY29uOiExLHNreXBlOiExLHNreXBlTGFiZWw6IlNreXBlIixza3lwZUNvbG9yOiIjMDBhZmYwIixza3lwZUljb246ITEsc2xhY2s6ITEsc2xhY2tMYWJlbDoiU2xhY2siLHNsYWNrQ29sb3I6IiNmZmZmZmYiLHNsYWNrSWNvbjohMSxzbXM6ITEsc21zTGFiZWw6IlNNUyIsc21zQ29sb3I6IiMxZWNlYTgiLHNtc0ljb246ITEsc21zU2hvd1BvcHVwUGxhdGZvcm06ImRlc2t0b3AiLHNuYXBjaGF0OiExLHNuYXBjaGF0TGFiZWw6IlNuYXBjaGF0IixzbmFwY2hhdENvbG9yOiIjRkZFQTAwIixzbmFwY2hhdEljb246ITEsc25hcGNoYXRTaG93UG9wdXBQbGF0Zm9ybToiZGVza3RvcCIsdGVsZWdyYW06ITEsdGVsZWdyYW1MYWJlbDoiVGVsZWdyYW0iLHRlbGVncmFtQ29sb3I6IiMwMDg3Y2IiLHRlbGVncmFtSWNvbjohMSx0aWt0b2s6ITEsdGlrdG9rTGFiZWw6IlRpa1RvayIsdGlrdG9rQ29sb3I6IiMwMDAwMDAiLHRpa3Rva0ljb246ITEsdHdpdHRlcjohMSx0d2l0dGVyTGFiZWw6IlguY29tIix0d2l0dGVyQ29sb3I6IiMwMDAwMDAiLHR3aXR0ZXJJY29uOiExLHZpYmVyOiExLHZpYmVyTGFiZWw6IlZpYmVyIix2aWJlckNvbG9yOiIjN2I1MTlkIix2aWJlckljb246ITEsdmliZXJTaG93UG9wdXBQbGF0Zm9ybToiZGVza3RvcCIsdmtvbnRha3RlOiExLHZrb250YWt0ZUxhYmVsOiJWa29udGFrdGUiLHZrb250YWt0ZUNvbG9yOiIjNjM4M2E4Iix2a29udGFrdGVJY29uOiExLGNhbGxiYWNrSG9zdDpudWxsLGNhbGxiYWNrOiExLGNhbGxiYWNrTGFiZWw6IkNhbGxiYWNrIixjYWxsYmFja0NvbG9yOiIjMDA2M2ZmIixjYWxsYmFja0ljb246ITEsY2FsbGJhY2tDdXN0b21NZXNzYWdlOiJXZSB3aWxsIGNhbGwgeW91IGJhY2sgaW4gNSBtaW5zISIsY2FsbGJhY2tOYW1lUGxhY2Vob2xkZXI6Ik5hbWUiLGNhbGxiYWNrUGhvbmVQbGFjZWhvbGRlcjoiUGhvbmUiLGNhbGxiYWNrU2VuZEJ1dHRvblRleHQ6IkNhbGwgbWUiLHdhemU6ITEsd2F6ZUxhYmVsOiJXYXplIix3YXplQ29sb3I6IiMzMmNjZmYiLHdhemVJY29uOiExLHdlY2hhdDohMSx3ZWNoYXRMYWJlbDoiV2VDaGF0Iix3ZWNoYXRDb2xvcjoiIzJkYzEwMCIsd2VjaGF0SWNvbjohMSx3ZWNoYXRTaG93UG9wdXBQbGF0Zm9ybToiZGVza3RvcCIsd2hhdHNhcHBMYWJlbDoiV2hhdHNBcHAiLHdoYXRzYXBwQ29sb3I6IiM0ZGMyNDciLHdoYXRzYXBwSWNvbjohMSx3aGF0c2FwcFNob3dQb3B1cDohMSx3aGF0c2FwcFBvcHVwVGl0bGU6ITEsd2hhdHNhcHBQb3B1cFN1YnRpdGxlOiExLHdoYXRzYXBwOiExLHdoYXRzYXBwQWdlbnROdW1iZXIyOiExLHdoYXRzYXBwQWdlbnROdW1iZXIzOiExLHdoYXRzYXBwQWdlbnROdW1iZXI0OiExLHdoYXRzYXBwQWdlbnROdW1iZXI1OiExLHdoYXRzYXBwQWdlbnROYW1lMToiQWdlbnQgbmFtZSIsd2hhdHNhcHBBZ2VudE5hbWUyOiJBZ2VudCBuYW1lIix3aGF0c2FwcEFnZW50TmFtZTM6IkFnZW50IG5hbWUiLHdoYXRzYXBwQWdlbnROYW1lNDoiQWdlbnQgbmFtZSIsd2hhdHNhcHBBZ2VudE5hbWU1OiJBZ2VudCBuYW1lIix3aGF0c2FwcEFnZW50UG9zaXRpb24xOiJBZ2VudCBwb3NpdGlvbiIsd2hhdHNhcHBBZ2VudFBvc2l0aW9uMjoiQWdlbnQgcG9zaXRpb24iLHdoYXRzYXBwQWdlbnRQb3NpdGlvbjM6IkFnZW50IHBvc2l0aW9uIix3aGF0c2FwcEFnZW50UG9zaXRpb240OiJBZ2VudCBwb3NpdGlvbiIsd2hhdHNhcHBBZ2VudFBvc2l0aW9uNToiQWdlbnQgcG9zaXRpb24iLHByZUZpbGxlZE1lc3NhZ2U6ITEsd2hhdHNhcHBQcmVGaWxsZWRNZXNzYWdlMjohMSx3aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2UzOiExLHdoYXRzYXBwUHJlRmlsbGVkTWVzc2FnZTQ6ITEsd2hhdHNhcHBQcmVGaWxsZWRNZXNzYWdlNTohMSx3aGF0c2FwcEFnZW50SW1hZ2UxOiExLHdoYXRzYXBwQWdlbnRJbWFnZTI6ITEsd2hhdHNhcHBBZ2VudEltYWdlMzohMSx3aGF0c2FwcEFnZW50SW1hZ2U0OiExLHdoYXRzYXBwQWdlbnRJbWFnZTU6ITEsd29uZGVyY2hhdDohMSx3b25kZXJjaGF0TGFiZWw6IkFJIGFzc2lzdGFudCIsd29uZGVyY2hhdENvbG9yOiIjNjIzMmViIix3b25kZXJjaGF0SWNvbjohMSxhaTohMSxhaUxhYmVsOiJBSSBjaGF0Ym90IixhaUNvbG9yOiIjMTI5YmYzIixhaUljb246ITEsYWlBdXRvb3BlbjpudWxsLGtha2FvdGFsazohMSxrYWthb3RhbGtMYWJlbDoiS2FrYW9UYWxrIixrYWthb3RhbGtDb2xvcjoiI2YyZGMwMCIsa2FrYW90YWxrSWNvbjohMX0sYz1mdW5jdGlvbihyKXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbz1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9fKE9iamVjdChvKSwhMCkuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdCxuO3Q9cixuPW9bZT1lXSwoZT1mdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT1pKGUpfHxudWxsPT09ZSlyZXR1cm4gZTt2YXIgbj1lW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwPT09bilyZXR1cm4oInN0cmluZyI9PT10P1N0cmluZzpOdW1iZXIpKGUpO249bi5jYWxsKGUsdHx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9PWkobikpcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX0oZSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PT1pKGUpP2U6U3RyaW5nKGUpfShlKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPW59KTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhyLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKG8pKTpfKE9iamVjdChvKSkuZm9yRWFjaChmdW5jdGlvbihlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkocixlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobyxlKSl9KX1yZXR1cm4gcn0oe30sbCk7ZnVuY3Rpb24gdShlKXtyZXR1cm4odT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIHoodCxlKXt2YXIgbixyPU9iamVjdC5rZXlzKHQpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYobj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpLGUmJihuPW4uZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSxyLnB1c2guYXBwbHkocixuKSkscn1mdW5jdGlvbiByKHIpe2Zvcih2YXIgZT0xO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspe3ZhciBvPW51bGwhPWFyZ3VtZW50c1tlXT9hcmd1bWVudHNbZV06e307ZSUyP3ooT2JqZWN0KG8pLCEwKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0LG47dD1yLG49b1tlPWVdLChlPWZ1bmN0aW9uKGUpe2U9ZnVuY3Rpb24oZSx0KXtpZigib2JqZWN0IiE9PXUoZSl8fG51bGw9PT1lKXJldHVybiBlO3ZhciBuPWVbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDA9PT1uKXJldHVybigic3RyaW5nIj09PXQ/U3RyaW5nOk51bWJlcikoZSk7bj1uLmNhbGwoZSx0fHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT09dShuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfShlLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09PXUoZSk/ZTpTdHJpbmcoZSl9KGUpKWluIHQ/T2JqZWN0LmRlZmluZVByb3BlcnR5KHQsZSx7dmFsdWU6bixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOnRbZV09bn0pOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHIsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobykpOnooT2JqZWN0KG8pKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvLGUpKX0pfXJldHVybiByfXZhciBUPXtidXR0b25zOiExLGdyZWV0aW5nTWVzc2FnZTohMCxjYWxsVG9BY3Rpb246ITEsYnV0dG9uUG9wdXA6ITF9LEw9ImFjdGl2YXRvcl9jbGlja2VkIixNPSJhY3RpdmF0b3Jfb3ZlciIsUj0iZ3JlZXRpbmdfbWVzc2FnZV9jbG9zZWQiLHE9ImdyZWV0aW5nX21lc3NhZ2Vfb3BlbmVkIixaPSJidXR0b25fY2xpY2tlZCIsWD0ic2hvd19idXR0b25fcG9wdXAiLHM9e0FDVElWQVRPUl9DTElDS0VEOkwsQUNUSVZBVE9SX09WRVI6TSxHUkVFVElOR19NRVNTQUdFX0NMT1NFRDpSLEdSRUVUSU5HX01FU1NBR0VfT1BFTkVEOnEsQlVUVE9OX0NMSUNLRUQ6Wn07ZnVuY3Rpb24gWShlLHQpe3N3aXRjaCh0LnR5cGUpe2Nhc2UgTDpyZXR1cm4gcihyKHIoe30sZSksdC5wYXlsb2FkKSx7fSx7YnV0dG9uczohZS5idXR0b25zLGNhbGxUb0FjdGlvbjplLmJ1dHRvbnN9KTtjYXNlIE06Y2FzZSBaOmNhc2UgWDpjYXNlIFI6Y2FzZSBxOnJldHVybiByKHIoe30sZSksdC5wYXlsb2FkKTtkZWZhdWx0OnJldHVybiBlfX1mdW5jdGlvbiBRKCl7Qi53aGF0c2FwcC5zaG93UG9wdXA9Yy53aGF0c2FwcFNob3dQb3B1cCxCLnlvdXR1YmUuc2hvd1BvcHVwPWYoYy55b3V0dWJlU2hvd1BvcHVwUGxhdGZvcm0pLEIuY2FsbC5zaG93UG9wdXA9ZihjLmNhbGxTaG93UG9wdXBQbGF0Zm9ybSksQi5zbXMuc2hvd1BvcHVwPWYoYy5zbXNTaG93UG9wdXBQbGF0Zm9ybSksQi5saW5lLnNob3dQb3B1cD1mKGMubGluZVNob3dQb3B1cFBsYXRmb3JtKSxCLnNuYXBjaGF0LnNob3dQb3B1cD1mKGMuc25hcGNoYXRTaG93UG9wdXBQbGF0Zm9ybSksQi52aWJlci5zaG93UG9wdXA9ZihjLnZpYmVyU2hvd1BvcHVwUGxhdGZvcm0pLEIud2VjaGF0LnNob3dQb3B1cD1mKGMud2VjaGF0U2hvd1BvcHVwUGxhdGZvcm0pLEIuZ29vZ2xlbWFwLnNob3dQb3B1cD1mKGMuZ29vZ2xlbWFwU2hvd1BvcHVwUGxhdGZvcm0pO3ZhciB0PVtdO3JldHVybiBKLm1hcChmdW5jdGlvbihlKXtCW2VdLnNob3dQb3B1cCYmdC5wdXNoKGUpfSksdH12YXIgSz1VKCkmJi0xPT09WyJmaXJlZm94IiwiZWRnIiwic2FmYXJpIl0uaW5kZXhPZihmdW5jdGlvbigpe2Zvcih2YXIgZT1vKCkudG9Mb3dlckNhc2UoKSx0PTAsbj1bImZpcmVmb3giLCJ0cmlkZW50IiwiZWRnZSIsImVkZyIsIm9wZXJhIiwiY2hyb21lIiwic2FmYXJpIl07dDxuLmxlbmd0aDt0Kyspe3ZhciByPW5bdF07aWYoLTE8ZS5pbmRleE9mKHIpKXJldHVybiByfX0oKSksZj1mdW5jdGlvbihlKXtzd2l0Y2goZSl7Y2FzZSJldmVyeXdoZXJlIjpyZXR1cm4hMDtjYXNlImRlc2t0b3AiOnJldHVybiBVKCk7Y2FzZSJtb2JpbGUiOnJldHVybiFVKCk7ZGVmYXVsdDpyZXR1cm4hMX19LEI9e2FjdGl2YXRvcjp7Y29sb3I6Yy5idXR0b25Db2xvcixzaG93UG9wdXA6ITEsdGl0bGU6bnVsbCxvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGFwcGxlOntjb2xvcjpjLmFwcGxlQ29sb3Isc2hvd1BvcHVwOiFhKCkmJiF2KCksdGl0bGU6Yy5hcHBsZUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tYXBwbGUiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0seW91dHViZTp7Y29sb3I6Yy55b3V0dWJlQ29sb3Isc2hvd1BvcHVwOiEwLHRpdGxlOmMueW91dHViZUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24teW91dHViZSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxjYWxsOntjb2xvcjpjLmNhbGxDb2xvcixzaG93UG9wdXA6VSgpLGNhbGxRckNvZGU6ITAsdGl0bGU6Yy5jYWxsTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1jYWxsIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGNvbnRhY3Rmb3JtOntob3N0OmMuY29udGFjdGZvcm1Ib3N0LGNvbG9yOmMuY29udGFjdGZvcm1Db2xvcixzaG93UG9wdXA6ITAsdGl0bGU6Yy5jb250YWN0Zm9ybUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tY29udGFjdGZvcm0iLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sY2FsZW5kYXI6e2hvc3Q6Yy5jYWxlbmRhckhvc3QsY29sb3I6Yy5jYWxlbmRhckNvbG9yLHNob3dQb3B1cDohMCx0aXRsZTpjLmNhbGVuZGFyTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1jYWxlbmRhciIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxkaXNjb3JkOntjb2xvcjpjLmRpc2NvcmRDb2xvcixzaG93UG9wdXA6ITEsdGl0bGU6Yy5kaXNjb3JkTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1kaXNjb3JkIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHRlYW1zOntjb2xvcjpjLnRlYW1zQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMudGVhbXNMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXRlYW1zIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGVtYWlsOntjb2xvcjpjLmVtYWlsQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMuZW1haWxMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLWVtYWlsIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGZhY2Vib29rOntjb2xvcjpjLmZhY2Vib29rQ29sb3Isc2hvd1BvcHVwOkssdGl0bGU6Yy5mYWNlYm9va0xhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tZmFjZWJvb2siLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sZ29vZ2xlbWFwOntjb2xvcjpjLmdvb2dsZW1hcENvbG9yLHRpdGxlOmMuZ29vZ2xlbWFwTGFiZWwsc2hvd1BvcHVwOiExLGJ1dHRvbklkOiJnZXRidXR0b24tZ29vZ2xlbWFwIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGluc3RhZ3JhbTp7Y29sb3I6Yy5pbnN0YWdyYW1Db2xvcixzaG93UG9wdXA6ITEsdGl0bGU6Yy5pbnN0YWdyYW1MYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLWluc3RhZ3JhbSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxsaW5lOntjb2xvcjpjLmxpbmVDb2xvcixzaG93UG9wdXA6VSgpLHRpdGxlOmMubGluZUxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tbGluZSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxsaW5rOntjb2xvcjpjLmxpbmtDb2xvcixzaG93UG9wdXA6ITEsdGl0bGU6Yy5saW5rTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1saW5rIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGxpbmtlZGluOntjb2xvcjpjLmxpbmtlZGluQ29sb3IsdGl0bGU6Yy5saW5rZWRpbkxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tbGlua2VkaW4iLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sc2t5cGU6e2NvbG9yOmMuc2t5cGVDb2xvcix0aXRsZTpjLnNreXBlTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1za3lwZSIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSxzbGFjazp7Y29sb3I6Yy5zbGFja0NvbG9yLHRpdGxlOmMuc2xhY2tMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXNsYWNrIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHNtczp7Y29sb3I6Yy5zbXNDb2xvcixzaG93UG9wdXA6VSgpLHRpdGxlOmMuc21zTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1zbXMiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMX0sc25hcGNoYXQ6e2NvbG9yOmMuc25hcGNoYXRDb2xvcixzaG93UG9wdXA6VSgpLHRpdGxlOmMuc25hcGNoYXRMYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXNuYXBjaGF0IixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHRlbGVncmFtOntjb2xvcjpjLnRlbGVncmFtQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMudGVsZWdyYW1MYWJlbCxidXR0b25JZDoiZ2V0YnV0dG9uLXRlbGVncmFtIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHRpa3Rvazp7Y29sb3I6Yy50aWt0b2tDb2xvcix0aXRsZTpjLnRpa3Rva0xhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tdGlrdG9rIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHR3aXR0ZXI6e2NvbG9yOmMudHdpdHRlckNvbG9yLHRpdGxlOmMudHdpdHRlckxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tdHdpdHRlciIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSx2aWJlcjp7Y29sb3I6Yy52aWJlckNvbG9yLHNob3dQb3B1cDpVKCksdGl0bGU6Yy52aWJlckxhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24tdmliZXIiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sY2FsbGJhY2s6e2hvc3Q6Yy5jYWxsYmFja0hvc3QsY29sb3I6Yy5jYWxsYmFja0NvbG9yLHNob3dQb3B1cDohMCx0aXRsZTpjLmNhbGxiYWNrTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi1jYWxsYmFjayIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSx2a29udGFrdGU6e2NvbG9yOmMudmtvbnRha3RlQ29sb3Isc2hvd1BvcHVwOiExLHRpdGxlOmMudmtvbnRha3RlTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi12a29udGFrdGUiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sd2F6ZTp7Y29sb3I6Yy53YXplQ29sb3IsdGl0bGU6Yy53YXplTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi13YXplIixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LHdlY2hhdDp7Y29sb3I6Yy53ZWNoYXRDb2xvcix0aXRsZTpjLndlY2hhdExhYmVsLHNob3dQb3B1cDpVKCksYnV0dG9uSWQ6ImdldGJ1dHRvbi13ZWNoYXQiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sd2hhdHNhcHA6e2NvbG9yOmMud2hhdHNhcHBDb2xvcixzaG93UG9wdXA6Yy53aGF0c2FwcFNob3dQb3B1cCx0aXRsZTpjLndoYXRzYXBwTGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi13aGF0c2FwcCIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfSx3b25kZXJjaGF0Ontjb2xvcjpjLndvbmRlcmNoYXRDb2xvcixzaG93UG9wdXA6ITAsdGl0bGU6Yy53b25kZXJjaGF0TGFiZWwsYnV0dG9uSWQ6ImdldGJ1dHRvbi13b25kZXJjaGF0IixvbkRlc2t0b3A6ITAsb25Nb2JpbGU6ITAsb25UYWJsZXQ6ITB9LGFpOntjb2xvcjpjLmFpQ29sb3Isc2hvd1BvcHVwOiEwLHRpdGxlOmMuYWlMYWJlbCxidXR0b25JZDoiYWkiLG9uRGVza3RvcDohMCxvbk1vYmlsZTohMCxvblRhYmxldDohMH0sa2FrYW90YWxrOntjb2xvcjpjLmtha2FvdGFsa0NvbG9yLHNob3dQb3B1cDohMSx0aXRsZTpjLmtha2FvdGFsa0xhYmVsLGJ1dHRvbklkOiJnZXRidXR0b24ta2FrYW90YWxrdCIsb25EZXNrdG9wOiEwLG9uTW9iaWxlOiEwLG9uVGFibGV0OiEwfX0sSj1PYmplY3Qua2V5cyhCKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIEJbZV0ub25EZXNrdG9wJiZVKCl8fEJbZV0ub25Nb2JpbGUmJiFVKCl9KTtmdW5jdGlvbiBkKGUpe3JldHVybihkPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSkoZSl9ZnVuY3Rpb24gZWUodCxlKXt2YXIgbixyPU9iamVjdC5rZXlzKHQpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYobj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpLGUmJihuPW4uZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSkuZW51bWVyYWJsZX0pKSxyLnB1c2guYXBwbHkocixuKSkscn1mdW5jdGlvbiB0ZSh0KXtmb3IodmFyIGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbZV0/YXJndW1lbnRzW2VdOnt9O2UlMj9lZShPYmplY3QobiksITApLmZvckVhY2goZnVuY3Rpb24oZSl7bmUodCxlLG5bZV0pfSk6T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM/T2JqZWN0LmRlZmluZVByb3BlcnRpZXModCxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhuKSk6ZWUoT2JqZWN0KG4pKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLGUpKX0pfXJldHVybiB0fWZ1bmN0aW9uIG5lKGUsdCxuKXtyZXR1cm4odD1mdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT1kKGUpfHxudWxsPT09ZSlyZXR1cm4gZTt2YXIgbj1lW1N5bWJvbC50b1ByaW1pdGl2ZV07aWYodm9pZCAwPT09bilyZXR1cm4oInN0cmluZyI9PT10P1N0cmluZzpOdW1iZXIpKGUpO249bi5jYWxsKGUsdHx8ImRlZmF1bHQiKTtpZigib2JqZWN0IiE9PWQobikpcmV0dXJuIG47dGhyb3cgbmV3IFR5cGVFcnJvcigiQEB0b1ByaW1pdGl2ZSBtdXN0IHJldHVybiBhIHByaW1pdGl2ZSB2YWx1ZS4iKX0oZSwic3RyaW5nIik7cmV0dXJuInN5bWJvbCI9PT1kKGUpP2U6U3RyaW5nKGUpfSh0KSlpbiBlP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTplW3RdPW4sZX1mdW5jdGlvbiByZShlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP29lKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP29lKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gb2UoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgYWU9ZnVuY3Rpb24oKXt2YXIgZT1yZShPYmplY3QoRi51c2VTdGF0ZSkoYyksMiksdD1lWzBdLHI9ZVsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSl7dmFyIHQ9KGU9ZS5kZXRhaWwpLmtleSxuPWUudmFsdWU7cihmdW5jdGlvbihlKXtyZXR1cm4gdGUodGUoe30sZSkse30sbmUoe30sZmUodCksbikpfSl9cmV0dXJuImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIuaW5jbHVkZXMobG9jYXRpb24uaG9zdG5hbWUpJiZkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzZXR0aW5nVXBkYXRlZCIsZSksZnVuY3Rpb24oKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzZXR0aW5nVXBkYXRlZCIsZSl9fSxbY10pLHR9O2Z1bmN0aW9uIGllKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/bGUoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/bGUoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBsZShlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfXZhciBjZT1ILmEuY3JlYXRlQ29udGV4dChudWxsKTtmdW5jdGlvbiB1ZShlKXt2YXIgZT1lLmNoaWxkcmVuLHQ9aWUoT2JqZWN0KEYudXNlUmVkdWNlcikoWSxUKSwyKSxuPXRbMF0scj10WzFdLHQ9e3RvZ2dsZUJ1dHRvbnM6ZnVuY3Rpb24oKXtyKHt0eXBlOnMuQUNUSVZBVE9SX0NMSUNLRUQscGF5bG9hZDp7YnV0dG9uUG9wdXA6ITEsZ3JlZXRpbmdNZXNzYWdlOiExfX0pfSxzaG93QnV0dG9uczpmdW5jdGlvbigpe3Ioe3R5cGU6cy5BQ1RJVkFUT1JfT1ZFUixwYXlsb2FkOntidXR0b25zOiEwLGJ1dHRvblBvcHVwOiExLGdyZWV0aW5nTWVzc2FnZTohMSxjYWxsVG9BY3Rpb246ITF9fSl9LGNsb3NlR3JlZXRpbmdNZXNzYWdlOmZ1bmN0aW9uKCl7cih7dHlwZTpzLkdSRUVUSU5HX01FU1NBR0VfQ0xPU0VELHBheWxvYWQ6e2dyZWV0aW5nTWVzc2FnZTohMSxidXR0b25Qb3B1cDohMSxjYWxsVG9BY3Rpb246ITB9fSl9LG9wZW5HcmVldGluZ01lc3NhZ2U6ZnVuY3Rpb24oKXtyKHt0eXBlOnMuR1JFRVRJTkdfTUVTU0FHRV9PUEVORUQscGF5bG9hZDp7Z3JlZXRpbmdNZXNzYWdlOiEwLGNhbGxUb0FjdGlvbjohMX19KX0sYnV0dG9uQ2xpY2tlZDpmdW5jdGlvbigpe3Ioe3R5cGU6cy5CVVRUT05fQ0xJQ0tFRCxwYXlsb2FkOntidXR0b25zOiExLGdyZWV0aW5nTWVzc2FnZTohMSxjYWxsVG9BY3Rpb246ITAsYnV0dG9uUG9wdXA6ITB9fSl9LHNob3dCdXR0b25Qb3B1cDpmdW5jdGlvbigpe3IoZnVuY3Rpb24oZSl7cmV0dXJuIGU9MDxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1lP2U6IiIsZT0tMSE9PVEoKS5pbmRleE9mKGUpJiZlLHt0eXBlOnMuQlVUVE9OX0NMSUNLRUQscGF5bG9hZDp7YnV0dG9uczohMSxidXR0b25Qb3B1cDplLGdyZWV0aW5nTWVzc2FnZTohMSxjYWxsVG9BY3Rpb246ITE9PT1lfX19KDA8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXToiIikpfSxjbG9zZUJ1dHRvblBvcHVwOmZ1bmN0aW9uKCl7cih7dHlwZTpzLkJVVFRPTl9DTElDS0VELHBheWxvYWQ6e2J1dHRvbnM6ITEsYnV0dG9uUG9wdXA6ITEsZ3JlZXRpbmdNZXNzYWdlOiExLGNhbGxUb0FjdGlvbjohMCxjYWxsVG9BY3Rpb25UaW1lcjohMH19KX19LG89YWUoKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoY2UuUHJvdmlkZXIse3ZhbHVlOntzdGF0ZTpuLGFjdGlvbnM6dCxzZXR0aW5nczpvfX0sZSl9Y2UuQ29uc3VtZXI7ZnVuY3Rpb24gc2UoZSl7dmFyIHQ9ZS5jaGlsZHJlbixlPWUudGhlbWU7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KEMuYSx7dGhlbWU6ZGVbZV19LHQpfWZ1bmN0aW9uIGZlKGUpe3JldHVybiBlLnJlcGxhY2UoLyhbLV9dW2EtejAtOV0pL2csZnVuY3Rpb24oZSl7cmV0dXJuIGUudG9VcHBlckNhc2UoKS5yZXBsYWNlKCItIiwiIikucmVwbGFjZSgiXyIsIiIpfSl9dmFyIFY9Y2UsQz10KDEpLGRlPXtsZWZ0Ontwb3NpdGlvbjoibGVmdCIsYnV0dG9uc09yZGVyOjEscG9wdXBzT3JkZXI6Mixjb250YWluZXJEaXJlY3Rpb246ImZsZXgtc3RhcnQiLGNhbGxUb0FjdGlvbk1hcmdpbjoiYXV0byBhdXRvIGF1dG8gMzFweCIsZ3JlZXRpbmdNYXJnaW46IjIxcHggMjBweCAwIDAifSxyaWdodDp7cG9zaXRpb246InJpZ2h0IixidXR0b25zT3JkZXI6Mixwb3B1cHNPcmRlcjoxLGNvbnRhaW5lckRpcmVjdGlvbjoiZmxleC1lbmQiLGNhbGxUb0FjdGlvbk1hcmdpbjoiYXV0byAzMXB4IGF1dG8gYXV0byIsZ3JlZXRpbmdNYXJnaW46IjIxcHggMCAwIDIwcHgifX0sJD1mdW5jdGlvbihlKXtyZXR1cm4gSC5hLnVzZUNhbGxiYWNrKGZ1bmN0aW9uKGUpe3JldHVybiA0MDxlPzI6MzA8ZT8wOjIwPGU/LTE6MTA8ZT8tMjotNH0sW10pKGUpfSxwZT1mdW5jdGlvbihlLHQpe3JldHVybiBILmEudXNlQ2FsbGJhY2soZnVuY3Rpb24oZSx0KXt2YXIgbj0oZT1lKT97cjpwYXJzZUludChlLnN1YnN0cmluZygxLDMpLDE2KSxnOnBhcnNlSW50KGUuc3Vic3RyaW5nKDMsNSksMTYpLGI6cGFyc2VJbnQoZS5zdWJzdHJpbmcoNSw3KSwxNil9Om51bGw7aWYoIW4pcmV0dXJuIG51bGw7Zm9yKHZhciByPSgyNTUtbi5yKS8odC0yKSxvPSgyNTUtbi5nKS8odCsxKSxhPSgyNTUtbi5iKS8odCs1KSxpPVtdLGw9MDtsPD10O2wrKyl7dmFyIGM9TWF0aC5yb3VuZChuLnIrcipsKSx1PU1hdGgucm91bmQobi5nK28qbCkscz1NYXRoLnJvdW5kKG4uYithKmwpLGM9KHU9dSxzPXMsIm51bWJlciIhPXR5cGVvZihjPWMpfHwibnVtYmVyIiE9dHlwZW9mIHV8fCJudW1iZXIiIT10eXBlb2Ygcz9udWxsOiIjIitjLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCIwIikrdS50b1N0cmluZygxNikucGFkU3RhcnQoMiwiMCIpK3MudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsIjAiKSk7YyYmaS5wdXNoKGMpfXJldHVybiBpLnNwbGljZSgtMyksaX0sW10pKGUsdCl9O2Z1bmN0aW9uIG1lKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aGUoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aGUoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBoZShlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGdlKG8pe3ZhciBlPW1lKEguYS51c2VTdGF0ZSghMSksMiksdD1lWzBdLGE9ZVsxXTtyZXR1cm4gSC5hLnVzZUVmZmVjdChmdW5jdGlvbigpe2Z1bmN0aW9uIHQobil7dmFyIHI9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/YXJndW1lbnRzWzFdOm51bGw7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQpe3ImJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0KCl9LHIpO3ZhciBlPW5ldyBJbWFnZTtlLnNyYz1uLGUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oZSl7dCgpfSl9KX12YXIgbj1vJiY1MDA8PW8/by01MDA6bnVsbCxlPVtjLmJ1dHRvbkltYWdlVXJsLGMuY29tcGFueUxvZ29VcmxdLHI9W2MuY2FsbEljb24sYy5lbWFpbEljb24sYy5mYWNlYm9va0ljb24sYy5pbnN0YWdyYW1JY29uLGMubGlua0ljb24sYy5saW5lSWNvbixjLnNtc0ljb24sYy5zbmFwY2hhdEljb24sYy50ZWxlZ3JhbUljb24sYy52aWJlckljb24sYy52a29udGFrdGVJY29uLGMud2hhdHNhcHBJY29uLGMuYWlJY29uXSxlPWUuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlfSkubWFwKGZ1bmN0aW9uKGUpe3JldHVybiB0KGUsNTAwKX0pO1Byb21pc2UuYWxsKGUpLnRoZW4oZnVuY3Rpb24oKXt2YXIgZT1yLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gZX0pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gdChlLG4pfSk7UHJvbWlzZS5hbGwoZSkudGhlbihmdW5jdGlvbigpe2EoITApfSl9KX0sW10pLHR9dmFyIFc9ZnVuY3Rpb24oZSl7aWYoImFkbWluLmdldGJ1dHRvbi5pbywgbmV4dC5nZXRidXR0b24uaW8sIDEyNy4wLjAuMSwgbG9jYWxob3N0LCB0ZXN0LmdldGJ1dHRvbi5pbywgZGV2LmdldGJ1dHRvbi5pbywgZ2V0YnV0dG9uLmlvLCBhZG1pbi5zaG9waWZ5LmNvbSIuaW5jbHVkZXMobG9jYXRpb24uaG9zdG5hbWUpKXJldHVybiBkb2N1bWVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiZWxlbWVudEFwcGVhcmVkIix7ZGV0YWlsOnt3aWRnZXRXaWR0aDplfX0pKX07ZnVuY3Rpb24gYmUoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT95ZShlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT95ZShlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIHllKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gdmUoKXt2YXIgZT1iZShPYmplY3QoRi51c2VTdGF0ZSkoe3dpZHRoOnZvaWQgMCxoZWlnaHQ6dm9pZCAwfSksMiksdD1lWzBdLG49ZVsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXtuKHt3aWR0aDp3aW5kb3cuaW5uZXJXaWR0aCxoZWlnaHQ6d2luZG93LmlubmVySGVpZ2h0fSl9cmV0dXJuIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGUpLGUoKSxmdW5jdGlvbigpe3JldHVybiB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixlKX19LFtdKSx0fWZ1bmN0aW9uIHdlKGUpe3JldHVybih3ZT0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIHhlKGUsdCl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07ci5lbnVtZXJhYmxlPXIuZW51bWVyYWJsZXx8ITEsci5jb25maWd1cmFibGU9ITAsInZhbHVlImluIHImJihyLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxmdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT13ZShlKXx8bnVsbD09PWUpcmV0dXJuIGU7dmFyIG49ZVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMD09PW4pcmV0dXJuKCJzdHJpbmciPT09dD9TdHJpbmc6TnVtYmVyKShlKTtuPW4uY2FsbChlLHR8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPT13ZShuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfShlLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09PXdlKGUpP2U6U3RyaW5nKGUpfShyLmtleSkscil9fXZhciBrZT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXtpZighKHRoaXMgaW5zdGFuY2VvZiBlKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKX12YXIgdCxuLHI7cmV0dXJuIHQ9ZSxyPVt7a2V5OiJzZXQiLHZhbHVlOmZ1bmN0aW9uKGUsdCl7dmFyIG49Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/YXJndW1lbnRzWzJdOm51bGwscj0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbCxvPTQ8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzRdP2FyZ3VtZW50c1s0XTpudWxsLGE9NTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbNV0mJmFyZ3VtZW50c1s1XSxlPShlPWUrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnRvU3RyaW5nKCkpKyI7ICIpKygicGF0aD0iKyhyfHwiLyIpKyI7ICIpKyJzYW1lc2l0ZT1sYXg7ICI7biYmKCJzdHJpbmciPT10eXBlb2Ygbnx8biBpbnN0YW5jZW9mIFN0cmluZz9lKz0iZXhwaXJlcz0iK24rIjsgIjooKHQ9bmV3IERhdGUpLnNldFRpbWUodC5nZXRUaW1lKCkrMWUzKm4pLGUrPSJleHBpcmVzPSIrdC50b1VUQ1N0cmluZygpKyI7ICIpKSxvJiYoZSs9ImRvbWFpbj0iK28rIjsgIiksYSYmKGUrPSJzZWN1cmU7ICIpLGRvY3VtZW50LmNvb2tpZT1lfX0se2tleToiZ2V0Iix2YWx1ZTpmdW5jdGlvbihlKXtmb3IodmFyIHQ9ZSsiPSIsbj1kb2N1bWVudC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxuLmxlbmd0aDtyKyspe2Zvcih2YXIgbz1uW3JdOyIgIj09PW8uY2hhckF0KDApOylvPW8uc3Vic3RyaW5nKDEpO2lmKDA9PT1vLmluZGV4T2YodCkpcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChvLnN1YnN0cmluZyh0Lmxlbmd0aCxvLmxlbmd0aCkpfXJldHVybiBudWxsfX1dLChuPW51bGwpJiZ4ZSh0LnByb3RvdHlwZSxuKSxyJiZ4ZSh0LHIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJwcm90b3R5cGUiLHt3cml0YWJsZTohMX0pLGV9KCksU2U9MTYsQ2U9MTQsRWU9ImdiLXdpZGdldC1jb29raWUiLE9lPSExO2Z1bmN0aW9uIGplKCl7Y29uc29sZS5sb2coInZhbGlkYXRpb24uLi4iLGcpO2Z1bmN0aW9uIG8oZSl7ZS5zdGFydHNXaXRoKCJ3d3cuIikmJihlPWUuc2xpY2UoNCkpO3ZhciB0PWxvY2F0aW9uLmhvc3RuYW1lLGU9ZS50b0xvd2VyQ2FzZSgpLG49dC5zbGljZSgwLC1lLmxlbmd0aCkscj10LmVuZHNXaXRoKGUpJiZbIiIsIi4iXS5pbmNsdWRlcyhuLmNoYXJBdChuLmxlbmd0aC0xKSk7cmV0dXJuIHJ8fGNvbnNvbGUud2FybigicmVhc29uOiBkb21haW4iLHQsbixlKSxyfXJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihuKXt2YXIgZSx0OyFnJiYiYWRtaW4uZ2V0YnV0dG9uLmlvLCBuZXh0LmdldGJ1dHRvbi5pbywgMTI3LjAuMC4xLCBsb2NhbGhvc3QsIHRlc3QuZ2V0YnV0dG9uLmlvLCBkZXYuZ2V0YnV0dG9uLmlvLCBnZXRidXR0b24uaW8sIGFkbWluLnNob3BpZnkuY29tIi5pbmNsdWRlcyhsb2NhdGlvbi5ob3N0bmFtZSk/KGMuaXNQcm89ITAsbigpKTpjLmtleXx8Z3x8Yy5oYXNoSWQ/KGU9KHQ9Imh0dHBzOi8vd2lkZ2V0LmdldGJ1dHRvbi5pby9hcGkvdmFsaWRhdGUiKSsiP2tleT0iK2Mua2V5LHQ9Zz90KyI/aGFzaF9pZD0iK2c6Yy5oYXNoSWQ/dCsiP2hhc2hfaWQ9IitjLmhhc2hJZDplLGZldGNoKHQpLnRoZW4oZnVuY3Rpb24oZSl7ZS5vaz9lLmpzb24oKS50aGVuKGZ1bmN0aW9uKGUpe3ZhciB0PW51bGwhPWUmJmUuY3JlYXRlZF9hdD9lLmNyZWF0ZWRfYXQ6bnVsbDtjLmlzUHJvPSEwPT09ZS52YWxpZCYmZnVuY3Rpb24oKXt2YXIgZT0wPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06bnVsbCx0PTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpudWxsLG49KGNvbnNvbGUubG9nKCJ2YWxpZGF0ZURvbWFpbiIsZSx0KSxuZXcgRGF0ZSgiMjAyMi0wNS0xMyIpKSxyPXQ/bmV3IERhdGUodCk6bnVsbDtyZXR1cm4gbnVsbD09PXQ/byhlKTohKG48PXIpfHwoZT9vKGUpOihjb25zb2xlLndhcm4oInJlYXNvbjogaW52YWxpZCBkb21haW4iLGUpLCExKSl9KGUuZG9tYWlucyx0KSxjLnN1YnNjcmlwdGlvbkNyZWF0ZWREYXRlPXQsZS5vcHRpb25zJiYoT2U9ZS5vcHRpb25zKSxjLmlzUHJvfHxjb25zb2xlLndhcm4oIkdldEJ1dHRvbiB3b3JrcyBpbiBERU1PIG1vZGUsIHBsZWFzZSByZW5ldyBzdWJzY3JpcHRpb24gb3IgY29udGFjdCB3aXRoIHVzOiBodHRwczovL2dldGJ1dHRvbi5pbyIpLG4oKX0pOihjLmlzUHJvPSEwLG4oKSl9KSk6KGMuaXNQcm89ITEsbigpKX0pfWZ1bmN0aW9uIEFlKGUpe3ZhciB0PVtdO3JldHVybih0PSJzdHJpbmciPT10eXBlb2YgZXx8ZSBpbnN0YW5jZW9mIFN0cmluZz8oZT1lLnRyaW0oKSkuc3BsaXQoL1ssXG5dKy8pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS50cmltKCl9KTp0KS5maWx0ZXIoZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmIiIhPT1lLnRyaW0oKSYmbi5pbmRleE9mKGUpPT09dH0pfWZ1bmN0aW9uIFBlKGUpe3JldHVybiBlLnJlcGxhY2UoL1wvJC8sIiIpfWZ1bmN0aW9uIEllKGUsdCxuKXtmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyl7dmFyIG8sYSxpPWVbcl0udHJpbSgpOyIiIT09aSYmKGkuZW5kc1dpdGgoIioiKT8obz1QZShpLnJlcGxhY2UoIioiLCIiKSksKGE9UGUod2luZG93LmxvY2F0aW9uLmhyZWYudG9Mb3dlckNhc2UoKSkpLnN0YXJ0c1dpdGgobykmJmEubGVuZ3RoPm8ubGVuZ3RoP2Muc2hvd1dpZGdldD10OmMuc2hvd1dpZGdldD0hdCk6bmV3IFJlZ0V4cCgiXiIuY29uY2F0KFBlKGkucmVwbGFjZSgvXCovZywiLioiKSksIiQiKSwiaSIpLnRlc3QoUGUod2luZG93LmxvY2F0aW9uLmhyZWYpKSYmKGMuc2hvd1dpZGdldD10KSl9biYmIWMuc2hvd1dpZGdldCYmKGMuc2hvd1dpZGdldD0hMSl9ZnVuY3Rpb24gX2UoZSl7Zm9yKHZhciB0PTAsbj1PYmplY3Qua2V5cyhlKTt0PG4ubGVuZ3RoO3QrKyl7dmFyIHI9blt0XTtjW2ZlKHIpXT1lW3JdfX1mdW5jdGlvbiB6ZShlLHQpe2Zvcih2YXIgbj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06bnVsbCxyPTAsbz1PYmplY3Qua2V5cyhsKTtyPG8ubGVuZ3RoO3IrKyl7dmFyIGE9b1tyXTtjW2FdPWxbYV19biYmX2UobiksamUoIiIuY29uY2F0KHQsIi8vIikuY29uY2F0KGUsIi8iKSkudGhlbihmdW5jdGlvbigpe3ZhciBlLHQsbjtpZihPZSYmX2UoT2UpLGMuaXNQcm8/Yy5hY3RpdmF0b3JTaXplPWMuYWN0aXZhdG9yU2l6ZXx8NTA6Yy5hY3RpdmF0b3JTaXplPTUwLGMuaGFzT3duUHJvcGVydHkoInNoaWZ0SG9yaXpvbnRhbCIpJiYhKGMuc2hpZnRIb3Jpem9udGFsPFNlKSYmYy5pc1Byb3x8KGMuc2hpZnRIb3Jpem9udGFsPVNlKSxjLmhhc093blByb3BlcnR5KCJzaGlmdFZlcnRpY2FsIikmJiEoYy5zaGlmdFZlcnRpY2FsPENlKSYmYy5pc1Byb3x8KGMuc2hpZnRWZXJ0aWNhbD1DZSksInN0cmluZyI9PXR5cGVvZiBjLm9yZGVyfHxjLm9yZGVyIGluc3RhbmNlb2YgU3RyaW5nP2Mub3JkZXI9Yy5vcmRlci5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS50cmltKCl9KTpBcnJheS5pc0FycmF5KGMub3JkZXIpJiYoYy5vcmRlcj1bXSksYy5vcmRlcj1jLm9yZGVyLmNvbmNhdChPYmplY3Qua2V5cyh4KCkoYyxKKSkpLDA9PT1jLm9yZGVyLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkJ1dHRvbiBpcyBlbXB0eSIpO2Mub3JkZXI9Yy5vcmRlci5maWx0ZXIoZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmbi5pbmRleE9mKGUpPT09dH0pLGMub3JkZXI9Yy5vcmRlci5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuISFlJiZjLmhhc093blByb3BlcnR5KGUpJiYhIWNbZV19KSxjLmlzUHJvfHwoYy5vcmRlcj1jLm9yZGVyLnNsaWNlKDAsMikpLGMuYnV0dG9uQ29sb3I9bnVsbCE9KGU9Yy5idXR0b25Db2xvcik/ZToiI2ZmNjU1MCIsYy5pc1NpbmdsZT0xPT09Yy5vcmRlci5sZW5ndGgsYy5pc1Byb3x8KGMuYnV0dG9uSW1hZ2VVcmw9bnVsbCxjLmFwcGxlSWNvbj1udWxsLGMuY2FsbEljb249bnVsbCxjLmNvbnRhY3Rmb3JtSWNvbj1udWxsLGMuZGlzY29yZEljb249bnVsbCxjLmVtYWlsSWNvbj1udWxsLGMuZmFjZWJvb2tJY29uPW51bGwsYy5nb29nbGVtYXBJY29uPW51bGwsYy5pbnN0YWdyYW1JY29uPW51bGwsYy5saW5lSWNvbj1udWxsLGMubGlua0ljb249bnVsbCxjLmxpbmtlZGluSWNvbj1udWxsLGMuc2t5cGVJY29uPW51bGwsYy5zbGFja0ljb249bnVsbCxjLnNtc0ljb249bnVsbCxjLnNuYXBjaGF0SWNvbj1udWxsLGMudGVsZWdyYW1JY29uPW51bGwsYy50d2l0dGVySWNvbj1udWxsLGMudGlrdG9rSWNvbj1udWxsLGMudmliZXJJY29uPW51bGwsYy52a29udGFrdGVJY29uPW51bGwsYy53YXplSWNvbj1udWxsLGMud2VjaGF0SWNvbj1udWxsLGMud2hhdHNhcHBJY29uPW51bGwpLGMuaXNQcm98fChjLmFwcGxlTGFiZWw9Qi5hcHBsZS50aXRsZSxjLmNhbGxMYWJlbD1CLmNhbGwudGl0bGUsYy5jb250YWN0Zm9ybUxhYmVsPUIuY29udGFjdGZvcm0udGl0bGUsYy5kaXNjb3JkTGFiZWw9Qi5kaXNjb3JkLnRpdGxlLGMuZW1haWxMYWJlbD1CLmVtYWlsLnRpdGxlLGMuZmFjZWJvb2tMYWJlbD1CLmZhY2Vib29rLnRpdGxlLGMuZ29vZ2xlbWFwTGFiZWw9Qi5nb29nbGVtYXAudGl0bGUsYy5pbnN0YWdyYW1MYWJlbD1CLmluc3RhZ3JhbS50aXRsZSxjLmxpbmVMYWJlbD1CLmxpbmUudGl0bGUsYy5saW5rTGFiZWw9Qi5saW5rLnRpdGxlLGMubGlua2VkaW5MYWJlbD1CLmxpbmtlZGluLnRpdGxlLGMuc2t5cGVMYWJlbD1CLnNreXBlLnRpdGxlLGMuc2xhY2tMYWJlbD1CLnNsYWNrLnRpdGxlLGMuc21zTGFiZWw9Qi5zbXMudGl0bGUsYy5zbmFwY2hhdExhYmVsPUIuc25hcGNoYXQudGl0bGUsYy50ZWxlZ3JhbUxhYmVsPUIudGVsZWdyYW0udGl0bGUsYy50aWt0b2tMYWJlbD1CLnRpa3Rvay50aXRsZSxjLnR3aXR0ZXJMYWJlbD1CLnR3aXR0ZXIudGl0bGUsYy52aWJlckxhYmVsPUIudmliZXIudGl0bGUsYy52a29udGFrdGVMYWJlbD1CLnZrb250YWt0ZS50aXRsZSxjLndhemVMYWJlbD1CLndhemUudGl0bGUsYy53ZWNoYXRMYWJlbD1CLndlY2hhdC50aXRsZSxjLndoYXRzYXBwTGFiZWw9Qi53aGF0c2FwcC50aXRsZSksYy5ncmVldGluZz1jLmdyZWV0aW5nJiZjLmlzUHJvLGMuZ3JlZXRpbmcmJjAhPT1jLmdyZWV0aW5nQ29va2llJiYoZT1EYXRlLm5vdygpLG49RWUrKGd8fCIiKSwhKHQ9a2UuZ2V0KG4pKXx8KGUtKHQ9cGFyc2VJbnQodCwxMCkpKS8xZTM+PWMuZ3JlZXRpbmdDb29raWU/a2Uuc2V0KG4sZSxudWxsKTpjLmdyZWV0aW5nPSExKSxjLnBvc2l0aW9uPSJsZWZ0Ij09PWMucG9zaXRpb24/ImxlZnQiOiJyaWdodCIsIWMuaXNQcm8mJihjLmJyYW5kaW5nPSEwLGMuYW5pbWF0aW9uPSExLGMuZGlyZWN0aW9uPSJjb2x1bW4iLGMuYm9yZGVyPSExLGMubm90aWZpY2F0aW9uSW5kaWNhdG9yPSExLGMuYnV0dG9uQm9yZGVyUmFkaXVzPTUwLGMuYnV0dG9uU2hhZG93PTQwLGMuYnV0dG9uT3BhY2l0eT1sLmJ1dHRvbk9wYWNpdHksYy5iZ1N0eWxlPSJjb2xvciIsYy5hY3RpdmF0b3JJY29uPSJjbGFzc2ljIixjLmJ1dHRvblN0eWxlPSJjbGFzc2ljIixnfHxjLmhhc2hJZCkmJihjLmNhbGxUb0FjdGlvbj0hMSxjLmFjdGl2YXRvclNpemU9bC5hY3RpdmF0b3JTaXplLGMuYnV0dG9uQ29sb3I9bC5idXR0b25Db2xvcixjLmJ1dHRvblNoYWRvdz0wLGMuZ3JlZXRpbmc9ITEsYy5wb3NpdGlvbj1sLnBvc2l0aW9uLGMuc2hpZnRIb3Jpem9udGFsPTE2LGMuc2hpZnRWZXJ0aWNhbD0xNCksYy5nYT1jLmlzUHJvJiZjLmdhLHQ9QWUoYy5wYWdlTGlzdFRvU2hvdyksbj1BZShjLnBhZ2VMaXN0VG9IaWRlKSxjLmRpc3BsYXlPbkFsbFBhZ2VzP2Muc2hvd1dpZGdldD0hMDp0Lmxlbmd0aHx8bi5sZW5ndGg/dC5sZW5ndGg/bi5sZW5ndGg/KEllKHQsIShjLnNob3dXaWRnZXQ9ITEpLCExKSxJZShuLCExLCEwKSk6SWUodCwhKGMuc2hvd1dpZGdldD0hMSksITEpOkllKG4sIShjLnNob3dXaWRnZXQ9ITApLCEwKTpjLnNob3dXaWRnZXQ9ITEsYy5zaG93V2lkZ2V0JiYoYy5zaG93V2lkZ2V0PUQoKT9jLm1vYmlsZTpjLmRlc2t0b3ApLGMuY29uZmlnTG9hZGVkPSEwfSksc2V0VGltZW91dChmdW5jdGlvbigpe1coImNsYXNzaWMiPT09Yy5idXR0b25TdHlsZT9jLmFjdGl2YXRvclNpemU6MypjLmFjdGl2YXRvclNpemUpfSw1MDApfWZ1bmN0aW9uIFRlKCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsdCl7Yy5jb25maWdMb2FkZWQ/ZSghMCk6dCghMSl9KX1mdW5jdGlvbiBMZShyLGUsdCl7dmFyIG89MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1lP2U6MTAsYT0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PXQ/dDo1MDA7cmV0dXJuIGNvbnNvbGUubG9nKCJjb25maWcgbG9hZGluZy4uIixvKSxuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4pe3IoKS50aGVuKHQpLmNhdGNoKGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXsxPT09bz8obihlKSxjb25zb2xlLmVycm9yKCJzdG9wIGNvbmZpZyBsb2FkcyIpKTpMZShyLGEsby0xKS50aGVuKHQsbil9LGEpfSl9KX1mdW5jdGlvbiBNZShlKXt3aW5kb3cuaGFzT3duUHJvcGVydHkoImRhdGFMYXllciIpJiYodD1lLHdpbmRvdy5kYXRhTGF5ZXIucHVzaCh7ZXZlbnQ6ImdldGJ1dHRvbl9jbGljayIsZXZlbnRfY2F0ZWdvcnk6IkdldEJ1dHRvbiBXaWRnZXQiLGV2ZW50X2xhYmVsOiJjbGlja18iLmNvbmNhdCh0KSxldmVudENhdGVnb3J5OiJHZXRCdXR0b24gV2lkZ2V0IixldmVudEFjdGlvbjoiY2xpY2tfIi5jb25jYXQodCl9KSksd2luZG93Lmhhc093blByb3BlcnR5KCJndGFnIikmJih0PXtldmVudF9jYXRlZ29yeToiR2V0QnV0dG9uIFdpZGdldCIsZXZlbnRfbGFiZWw6ImNsaWNrXyIuY29uY2F0KHQ9ZSl9LHdpbmRvdy5ndGFnKCJldmVudCIsImNsaWNrIix0KSksd2luZG93Lmhhc093blByb3BlcnR5KCJnYSIpJiYobj17ZXZlbnRDYXRlZ29yeToiR2V0QnV0dG9uIFdpZGdldCIsZXZlbnRBY3Rpb246ImNsaWNrXyIuY29uY2F0KG49ZSl9LHI9d2luZG93LmdhLmdldEFsbD93aW5kb3cuZ2EuZ2V0QWxsKClbMF06dm9pZCAwKSYmci5zZW5kKCJldmVudCIsImNsaWNrIixuKTt2YXIgdCxuLHI9ZTtyPXtjb250ZW50X2NhdGVnb3J5OiJHZXRCdXR0b24gV2lkZ2V0Iixjb250ZW50X25hbWU6ImNsaWNrXyIuY29uY2F0KHIpfSwiZnVuY3Rpb24iPT10eXBlb2YgZmJxJiZmYnEoInRyYWNrIiwiY2xpY2siLHIpfXZhciBSZT1PYmplY3QoQy5lKShbIjAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg0NXB4KTt9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO30iXSksTmU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDQ1cHgpO30iXSksRGU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNDVweCk7fXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTt9Il0pLFVlPU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC00NXB4KTt9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApO30iXSksQmU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7fXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCg0NXB4KTt9Il0pLEZlPU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApO310b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTQ1cHgpO30iXSksSGU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnJvdGF0ZSgtNjBkZWcpO310b3tvcGFjaXR5OjE7fSJdKSxWZT1PYmplY3QoQy5lKShbIjAle29wYWNpdHk6MTt9dG97b3BhY2l0eTowO3RyYW5zZm9ybTpyb3RhdGUoLTYwZGVnKTt9Il0pLGU9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMXMxOHEzZC0wIn0pKFsiYW5pbWF0aW9uLWR1cmF0aW9uOi4yczthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2U7YW5pbWF0aW9uLWRlbGF5Oi4wNXM7IiwiICIsIiAiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4icm93Ij09PWUuZGlyZWN0aW9uJiZPYmplY3QoQy5jKShbInRyYW5zZm9ybTp0cmFuc2xhdGVYKDApOyIsIjsiLCI7Il0sZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpiYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6IiwiOyJdLCJyaWdodCI9PT1lLnRoZW1lLnBvc2l0aW9uP0RlOlVlKSwhZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkczthbmltYXRpb24tbmFtZToiLCI7Il0sInJpZ2h0Ij09PWUudGhlbWUucG9zaXRpb24/QmU6RmUpKX0sZnVuY3Rpb24oZSl7cmV0dXJuImNvbHVtbiI9PT1lLmRpcmVjdGlvbiYmT2JqZWN0KEMuYykoWyJ0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTsiLCI7IiwiOyJdLGUuaXNTaG93JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1maWxsLW1vZGU6YmFja3dhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSxSZSksIWUuaXNTaG93JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHM7YW5pbWF0aW9uLW5hbWU6IiwiOyJdLE5lKSl9LGZ1bmN0aW9uKGUpe3JldHVybiJhcm91bmQiPT09ZS5kaXJlY3Rpb24mJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWR1cmF0aW9uOi40czthbmltYXRpb24tZmlsbC1tb2RlOmJvdGg7IiwiOyIsIjsiXSxlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tbmFtZToiLCI7Il0sSGUpLCFlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tbmFtZToiLCI7Il0sVmUpKX0pLHQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMXMxOHEzZC0xIn0pKFsiYW5pbWF0aW9uLWR1cmF0aW9uOi4yczthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2U7YW5pbWF0aW9uLWRlbGF5Oi4wNXM7IiwiICIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiJyb3ciPT09ZS5kaXJlY3Rpb24mJk9iamVjdChDLmMpKFsidHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7IiwiOyIsIjsiXSxlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZmlsbC1tb2RlOmJhY2t3YXJkczthbmltYXRpb24tbmFtZToiLCI7Il0sInJpZ2h0Ij09PWUudGhlbWUucG9zaXRpb24/RGU6VWUpLCFlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSwicmlnaHQiPT09ZS50aGVtZS5wb3NpdGlvbj9CZTpGZSkpfSxmdW5jdGlvbihlKXtyZXR1cm4icm93IiE9PWUuZGlyZWN0aW9uJiZPYmplY3QoQy5jKShbInRyYW5zZm9ybTp0cmFuc2xhdGVZKDApOyIsIjsiLCI7Il0sZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpiYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6IiwiOyJdLFJlKSwhZS5pc1Nob3cmJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkczthbmltYXRpb24tbmFtZToiLCI7Il0sTmUpKX0pLCRlPU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eTowO2xlZnQ6LTIwcHg7fXRve29wYWNpdHk6MTtsZWZ0OjA7fSJdKSxXZT1PYmplY3QoQy5lKShbIjAle29wYWNpdHk6MTsiLCI6MDt9dG97b3BhY2l0eTowOyIsIjotMjBweDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUudGhlbWUucG9zaXRpb259LGZ1bmN0aW9uKGUpe3JldHVybiBlLnRoZW1lLnBvc2l0aW9ufSksR2U9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjA7cmlnaHQ6LTIwcHg7fXRve29wYWNpdHk6MTtyaWdodDowO30iXSkscWU9T2JqZWN0KEMuZSkoWyIwJXtvcGFjaXR5OjE7IiwiOjA7fXRve29wYWNpdHk6MDsiLCI6LTIwcHg7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLnRoZW1lLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS50aGVtZS5wb3NpdGlvbn0pLFplPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTFzMThxM2QtMiJ9KShbInRyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3Bvc2l0aW9uOnJlbGF0aXZlO2FuaW1hdGlvbi1kdXJhdGlvbjowLjY0czthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMjMsMSwuMzIsMSk7YW5pbWF0aW9uLWRlbGF5OjAuMTZzOyIsIjsiLCI7Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuaXNTaG93JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1maWxsLW1vZGU6YmFja3dhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSxmdW5jdGlvbihlKXtyZXR1cm4ibGVmdCI9PT1lLnRoZW1lLnBvc2l0aW9uPyRlOkdlfSl9LGZ1bmN0aW9uKGUpe3JldHVybiFlLmlzU2hvdyYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO2FuaW1hdGlvbi1uYW1lOiIsIjsiXSxmdW5jdGlvbihlKXtyZXR1cm4ibGVmdCI9PT1lLnRoZW1lLnBvc2l0aW9uP1dlOnFlfSl9KSxYZT1PYmplY3QoQy5lKShbImZyb217b3BhY2l0eTowO21hcmdpbi1sZWZ0Oi0yMHB4O310b3tvcGFjaXR5OjE7fSJdKSxZZT1PYmplY3QoQy5lKShbImZyb217b3BhY2l0eTowO21hcmdpbi1yaWdodDotMjBweDt9dG97b3BhY2l0eToxO30iXSksUWU9T2JqZWN0KEMuZSkoWyIwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7fTE0JXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjMpO3RyYW5zZm9ybTpzY2FsZSgxLjMpO30yOCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpO300MiV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4zKTt0cmFuc2Zvcm06c2NhbGUoMS4zKTt9NzAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKTt9Il0pLEtlPU9iamVjdChDLmUpKFsiZnJvbXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTt9MTUley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNSUsMCwwKSByb3RhdGUzZCgwLDAsMSwtNWRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNSUsMCwwKSByb3RhdGUzZCgwLDAsMSwtNWRlZyk7fTMwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMCUsMCwwKSByb3RhdGUzZCgwLDAsMSwzZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAlLDAsMCkgcm90YXRlM2QoMCwwLDEsM2RlZyk7fTQ1JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTUlLDAsMCkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTUlLDAsMCkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO302MCV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAlLDAsMCkgcm90YXRlM2QoMCwwLDEsMmRlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwJSwwLDApIHJvdGF0ZTNkKDAsMCwxLDJkZWcpO303NSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTUlLDAsMCkgcm90YXRlM2QoMCwwLDEsLTFkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNSUsMCwwKSByb3RhdGUzZCgwLDAsMSwtMWRlZyk7fXRvey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO30iXSksSmU9T2JqZWN0KEMuZSkoWyJmcm9tey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMSwxLDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt9MzAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4yNSwwLjc1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMjUsMC43NSwxKTt9NDAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMC43NSwxLjI1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDAuNzUsMS4yNSwxKTt9NTAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xNSwwLjg1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMTUsMC44NSwxKTt9NjUley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMC45NSwxLjA1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDAuOTUsMS4wNSwxKTt9NzUley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4wNSwwLjk1LDEpO3RyYW5zZm9ybTpzY2FsZTNkKDEuMDUsMC45NSwxKTt9dG97LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7dHJhbnNmb3JtOnNjYWxlM2QoMSwxLDEpO30iXSksZXQ9T2JqZWN0KEMuZSkoWyJmcm9tLDIwJSw1MyUsdG97LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjIxNSwwLjYxLDAuMzU1LDEpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMjE1LDAuNjEsMC4zNTUsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7fTQwJSw0MyV7LXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjc1NSwwLjA1LDAuODU1LDAuMDYpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuNzU1LDAuMDUsMC44NTUsMC4wNik7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMzBweCwwKSBzY2FsZVkoMS4xKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMzBweCwwKSBzY2FsZVkoMS4xKTt9NzAley13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC43NTUsMC4wNSwwLjg1NSwwLjA2KTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjc1NSwwLjA1LDAuODU1LDAuMDYpOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTE1cHgsMCkgc2NhbGVZKDEuMDUpO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xNXB4LDApIHNjYWxlWSgxLjA1KTt9ODAley13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMjE1LDAuNjEsMC4zNTUsMSk7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMjE1LDAuNjEsMC4zNTUsMSk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApIHNjYWxlWSgwLjk1KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApIHNjYWxlWSgwLjk1KTt9OTAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKSBzY2FsZVkoMS4wMik7fSJdKSx0dD1PYmplY3QoQy5lKShbImZyb217LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7dHJhbnNmb3JtOnNjYWxlM2QoMSwxLDEpO301MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSk7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpO310b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7fSJdKSxudD1PYmplY3QoQy5lKShbIjAley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7fTYuNSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTt9MTguNSV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO30zMS41JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO300My41JXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7fTUwJXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApO30iXSkscnQ9T2JqZWN0KEMuZSkoWyIyMCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlM2QoMCwwLDEsMTVkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwxNWRlZyk7fTQwJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwtMTBkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwtMTBkZWcpO302MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlM2QoMCwwLDEsNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZTNkKDAsMCwxLDVkZWcpO304MCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlM2QoMCwwLDEsLTVkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwtNWRlZyk7fXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZTNkKDAsMCwxLDBkZWcpO3RyYW5zZm9ybTpyb3RhdGUzZCgwLDAsMSwwZGVnKTt9Il0pLG90PU9iamVjdChDLmUpKFsiZnJvbXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7fTEwJSwyMCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUzZCgwLjksMC45LDAuOSkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO3RyYW5zZm9ybTpzY2FsZTNkKDAuOSwwLjksMC45KSByb3RhdGUzZCgwLDAsMSwtM2RlZyk7fTMwJSw1MCUsNzAlLDkwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEuMSwxLjEsMS4xKSByb3RhdGUzZCgwLDAsMSwzZGVnKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSkgcm90YXRlM2QoMCwwLDEsM2RlZyk7fTQwJSw2MCUsODAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZTNkKDAsMCwxLC0zZGVnKTt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSkgcm90YXRlM2QoMCwwLDEsLTNkZWcpO310b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZTNkKDEsMSwxKTt0cmFuc2Zvcm06c2NhbGUzZCgxLDEsMSk7fSJdKSxhdD1PYmplY3QoQy5lKShbImZyb20sMTEuMSUsdG97LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7fTIyLjIley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7dHJhbnNmb3JtOnNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7fTMzLjMley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO3RyYW5zZm9ybTpza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTt9NDQuNCV7LXdlYmtpdC10cmFuc2Zvcm06c2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO3RyYW5zZm9ybTpza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7fTU1LjUley13ZWJraXQtdHJhbnNmb3JtOnNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTt0cmFuc2Zvcm06c2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpO302Ni42JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO3RyYW5zZm9ybTpza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO303Ny43JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO3RyYW5zZm9ybTpza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO304OC44JXstd2Via2l0LXRyYW5zZm9ybTpza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTt0cmFuc2Zvcm06c2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7fSJdKSxpdD1PYmplY3QoQy5lKShbIjAle3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7b3BhY2l0eToxO30xMDAle3dpZHRoOiIsInB4O2hlaWdodDoiLCJweDtvcGFjaXR5OjA7fSJdLDMqYy5hY3RpdmF0b3JTaXplKzIwLGMuYWN0aXZhdG9yU2l6ZSs1MCksbHQ9T2JqZWN0KEMuZSkoWyIwJXt3aWR0aDozMHB4O2hlaWdodDozMHB4O29wYWNpdHk6MTt9MTAwJXt3aWR0aDoiLCJweDtoZWlnaHQ6IiwicHg7b3BhY2l0eTowO30iXSwzKmMuYWN0aXZhdG9yU2l6ZSsyMCxjLmFjdGl2YXRvclNpemUrNTApLGN0PU9iamVjdChDLmUpKFsiMCV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZVgoMSkgc2NhbGVZKDEpO301MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZVgoMS40KSBzY2FsZVkoMS40KTt9MTAwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlWCgxKSBzY2FsZVkoMSk7fSJdKTtmdW5jdGlvbiB1dChlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP3N0KGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP3N0KGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gc3QoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgZnQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtOGVxYzN5LTAifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLm1pcnJvcixlPWUuYWN0aXZhdG9yU2l6ZTtyZXR1cm4gT2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjdweCAxMHB4O2xpbmUtaGVpZ2h0OjE2cHg7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhIE5ldWUsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOiIsInB4O21hcmdpbjphdXRvOyIsIiJdLE1hdGgubWluKC4yOCplLDE3LjUpLHQmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDt1bmljb2RlLWJpZGk6cGxhaW50ZXh0OyJdKSl9KSxkdD1PYmplY3QoQy5kKShaZSkud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLThlcWMzeS0xIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5idXR0b25TaGFkb3csZT1lLnRoZW1lO3JldHVybiBPYmplY3QoQy5jKShbImJveC1zaGFkb3c6MHB4IDFweCA3cHggcmdiYSgxMzYsMTM2LDEzNiwiLCIlKTtmbGV4LXNocmluazowO2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItcmFkaXVzOjVweDtiYWNrZ3JvdW5kOndoaXRlO3RleHQtZGVjb3JhdGlvbjpub25lICFpbXBvcnRhbnQ7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O2N1cnNvcjpwb2ludGVyO21hcmdpbjoiLCI7bWF4LXdpZHRoOjE3MnB4O21heC1oZWlnaHQ6NjVweDtkaXNwbGF5OmZsZXg7b3JkZXI6IiwiOyY6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6d2hpdGU7Ym9yZGVyLSIsIjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItIiwiOjFweCBzb2xpZCAjZTJlMmUyOyIsIjotNXB4O3RvcDo1MCU7bWFyZ2luLXRvcDotNHB4O3dpZHRoOjhweDtoZWlnaHQ6OHB4O3otaW5kZXg6MTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7fSY6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDp3aGl0ZTtib3JkZXItIiwiOjFweCBzb2xpZCAjZTJlMmUyO2JvcmRlci0iLCI6MXB4IHNvbGlkICNlMmUyZTI7IiwiOi01cHg7dG9wOjUwJTttYXJnaW4tdG9wOi00cHg7d2lkdGg6OHB4O2hlaWdodDo4cHg7ei1pbmRleDoxO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt9Il0sMjA8dD90OjIwLGUuY2FsbFRvQWN0aW9uTWFyZ2luLGUucG9wdXBzT3JkZXIsImxlZnQiPT09ZS5wb3NpdGlvbj8idG9wIjoiYm90dG9tIixlLnBvc2l0aW9uLGUucG9zaXRpb24sImxlZnQiPT09ZS5wb3NpdGlvbj8idG9wIjoiYm90dG9tIixlLnBvc2l0aW9uLGUucG9zaXRpb24pfSkscHQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ocmVmLHQ9dm9pZCAwPT09dD9udWxsOnQsZT1lLnRhcmdldCxlPXZvaWQgMD09PWU/bnVsbDplLG49T2JqZWN0KEYudXNlQ29udGV4dCkoVikscj1uLnN0YXRlLG89bi5hY3Rpb25zLnNob3dCdXR0b25zLG49bi5zZXR0aW5ncyxhPW4uY2FsbFRvQWN0aW9uLGk9bi5jYWxsVG9BY3Rpb25EZWxheSxsPW4uZGlyZWN0aW9uLGM9bi5idXR0b25TdHlsZSx1PW4uYWN0aXZhdG9yU2l6ZSxzPW4ubWlycm9yLG49bi5idXR0b25TaGFkb3csZj11dChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGQ9ZlswXSxwPWZbMV0sZj11dChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLG09ZlswXSxoPWZbMV0sZz1PYmplY3QoRi51c2VSZWYpKDApO3JldHVybiBPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7IXIuYnV0dG9ucyYmITAhPT1yLmNhbGxUb0FjdGlvblRpbWVyfHwoY2xlYXJUaW1lb3V0KGcuY3VycmVudCksZy5jdXJyZW50PTApLHIuY2FsbFRvQWN0aW9uJiYwPGEubGVuZ3RoPzA9PT1nLmN1cnJlbnQmJihnLmN1cnJlbnQ9c2V0VGltZW91dChmdW5jdGlvbigpe3Aoci5jYWxsVG9BY3Rpb24pLGgoci5jYWxsVG9BY3Rpb24pLFcoImFyb3VuZCIhPT1sPyJjbGFzc2ljIj09PWM/MjgwOjMqdSsyMDA6OTk5OTk5OTk5KX0saSkpOnAoITEpfSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3IuY2FsbFRvQWN0aW9uJiYwPGEubGVuZ3RoJiZXKCJhcm91bmQiIT09bD8iY2xhc3NpYyI9PT1jPzI4MDozKnUrMjAwOjk5OTk5OTk5OSl9LFtyLmNhbGxUb0FjdGlvbixhLGMsbCx1XSksbSYmSC5hLmNyZWF0ZUVsZW1lbnQoZHQse2FzOm51bGw9PT10PyJkaXYiOiJhIixocmVmOnQsdGFyZ2V0OmUsb25Nb3VzZVVwOmZ1bmN0aW9uKCl7bygpfSxpc1Nob3c6ZCxvbkFuaW1hdGlvbkVuZDpmdW5jdGlvbigpe2goZCl9LGJ1dHRvblNoYWRvdzpufSxILmEuY3JlYXRlRWxlbWVudChmdCx7bWlycm9yOnMsYWN0aXZhdG9yU2l6ZTp1fSxhKSl9O2Z1bmN0aW9uIG10KGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aHQoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aHQoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBodChlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGd0KGUpe3N3aXRjaCghMCl7Y2FzZSJudW1iZXIiPT10eXBlb2YgZTpyZXR1cm4gZSsicHgiO2Nhc2Uic21hbGwiPT09ZTpyZXR1cm4iMzRweCI7Y2FzZSJtZWRpdW0iPT09ZTpyZXR1cm4iNDVweCI7ZGVmYXVsdDpyZXR1cm4iNTBweCJ9fWZ1bmN0aW9uIEUoZSl7c3dpdGNoKGUpe2Nhc2UiaGVhcnRCZWF0IjpyZXR1cm4gUWU7Y2FzZSJ3b2JibGUiOnJldHVybiBLZTtjYXNlInJ1YmJlckJhbmQiOnJldHVybiBKZTtjYXNlImJvdW5jZSI6cmV0dXJuIGV0O2Nhc2UicHVsc2UiOnJldHVybiB0dDtjYXNlImhlYWRTaGFrZSI6cmV0dXJuIG50O2Nhc2Uic3dpbmciOnJldHVybiBydDtjYXNlInRhZGEiOnJldHVybiBvdDtjYXNlImplbGxvIjpyZXR1cm4gYXQ7Y2FzZSJyaW5nIjpyZXR1cm4gaXQ7Y2FzZSJkb3VibGVSaW5nIjpyZXR1cm4gbHQ7Y2FzZSJtb3ZlSW4iOnJldHVybiBjdDtkZWZhdWx0OnJldHVybiJzdGFuZGFyZCJ9fWZ1bmN0aW9uIE8oZSl7c3dpdGNoKGUubGVuZ3RoKXtjYXNlIDI6cmV0dXJuIDUuMTtjYXNlIDM6cmV0dXJuIDg7ZGVmYXVsdDpyZXR1cm4gMTJ9fWZ1bmN0aW9uIHAoZSl7ZnVuY3Rpb24gdCgpe058fChkP2goKTooUyYmTWUoYSkscCgpLG0oYSksITE9PT1CW2FdLnNob3dQb3B1cCYmZygpKSl9ZnVuY3Rpb24gbigpe0QoKXx8InNtYWxsIj09PXJ8fCJtZWRpdW0iPT09cnx8ImZhY2Vib29rIj09PWF8fGR8fChNKCEwKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7TSghMSl9LDFlMyksdCgpKX12YXIgcj1lLnNpemUsbz1lLmxpbmssYT1lLm5hbWUsaT1lLmljb24sbD1lLnRhcmdldCxjPWUuY29sb3IsdT1lLmN1c3RvbUljb24sZT1lLmxhYmVsLHM9KGI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikpLnN0YXRlLGY9cy5idXR0b25zLGQ9cy5idXR0b25Qb3B1cDtzLmdyZWV0aW5nTWVzc2FnZTt2YXIgcD0ocz1iLmFjdGlvbnMpLmJ1dHRvbkNsaWNrZWQsbT1zLnNob3dCdXR0b25Qb3B1cCxoPXMuY2xvc2VCdXR0b25Qb3B1cCxnPXMub3BlbkdyZWV0aW5nTWVzc2FnZSxiPShzPWIuc2V0dGluZ3MpLmJ1dHRvbkJvcmRlclJhZGl1cyx5PXMuYWN0aXZhdG9yU2l6ZSx2PXMuaXNQcm8sdz1zLmlzU2luZ2xlLHg9cy5kaXJlY3Rpb24saz1zLmJ1dHRvblN0eWxlLFM9cy5nYSxDPXMuYnV0dG9uQW5pbWF0aW9uLEU9cy5ib3JkZXIsTz1zLmJ1dHRvblNoYWRvdyxqPXMuYnV0dG9uT3BhY2l0eSxBPXMuYmdTdHlsZSxQPXMubm90aWZpY2F0aW9uSW5kaWNhdG9yLEk9cy5taXJyb3IsXz1zLm9yZGVyLHo9cy5wb3NpdGlvbixUPXMuYW5pbWF0aW9uLFI9JChiKSxMPSIiLHI9InNtYWxsIj09PXJ8fCJtZWRpdW0iPT09cj9yOnkseT0odj8oYz1jfHxCW2FdLmNvbG9yLEw9QlthXS5idXR0b25JZCk6Yz1idChjKT9jOkJbYV0uY29sb3IsdyYmKHMuYnV0dG9uQ29sb3I9YykscGUoYyw1KSksTj0odj1tdChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpKVswXSxNPXZbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXt2YXIgZTtpZigiY29sdW1uIj09PXgpcmV0dXJuIGU9c2V0VGltZW91dChmdW5jdGlvbigpe1coImNsYXNzaWMiPT09az9yOjMqcil9LDM1MCksZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQoZSl9O1coZj85OTk5OTk5OToiY2xhc3NpYyI9PT1rP3I6MypyKX0sW2sseCxyXSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3ZhciBlPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtXKCJjbGFzc2ljIj09PWs/cjozKnIpfSw1MDApO3JldHVybiBmdW5jdGlvbigpe2NsZWFyVGltZW91dChlKX19LFtrLHJdKSwhMD09PXc/SC5hLmNyZWF0ZUVsZW1lbnQoU3Qse29uTW91c2VVcDp0fSxVKCkmJkguYS5jcmVhdGVFbGVtZW50KHB0LHtocmVmOm8sdGFyZ2V0Omwsc2l6ZTpyfSksSC5hLmNyZWF0ZUVsZW1lbnQoeHQse2J1dHRvbkFuaW1hdGlvbjpDLGNvbG9yOmMsYnV0dG9uQm9yZGVyUmFkaXVzOmIsc2l6ZTpyLGFuaW1hdGlvbjpULGJ1dHRvblN0eWxlOmsscG9wdXBPcGVuZWQ6ZH0sSC5hLmNyZWF0ZUVsZW1lbnQod3Qse29uTW91c2VFbnRlcjpuLHNpemU6cixocmVmOm8sdGFyZ2V0OmwsImFyaWEtbGFiZWwiOiJHbyB0byAiLmNvbmNhdChhKSxjb2xvcjpjLGlkOkwsY3VzdG9tSWNvbjp1LGdyYWRpZW50OnksaW5kaWNhdG9yUG9zaXRpb246Uixib3JkZXI6RSxidXR0b25Cb3JkZXJSYWRpdXM6YixidXR0b25TaGFkb3c6TyxidXR0b25PcGFjaXR5OmosYmdTdHlsZTpBLGJ1dHRvblN0eWxlOmssYnV0dG9uQW5pbWF0aW9uOkMsbm90aWZpY2F0aW9uSW5kaWNhdG9yOlAsbWlycm9yOkksaXNTaW5nbGU6dyxkaXJlY3Rpb246eCxwb3NpdGlvbjp6LG9yZGVyOl8sYW5pbWF0aW9uOlQscG9wdXBPcGVuZWQ6ZH0saSwibWVkaXVtIj09PXImJkguYS5jcmVhdGVFbGVtZW50KEcse2NvbG9yOmMsbWlycm9yOkksc2l6ZTpyfSxlKSwibWVkaXVtIiE9PXImJiJjbGFzc2ljIiE9PWsmJkguYS5jcmVhdGVFbGVtZW50KEcse2NvbG9yOmMsbWlycm9yOkksc2l6ZTpyfSxlKSkpKTpILmEuY3JlYXRlRWxlbWVudChTdCx7b25Nb3VzZVVwOnQsZGF0YUluZGV4Onl0KF8sYSksb3BlbmVkOmYsc2l6ZTpyLGRpcmVjdGlvbjp4LG9yZGVyOl99LEguYS5jcmVhdGVFbGVtZW50KGt0LHtzaXplOnIsbWlycm9yOkksYnV0dG9uU3R5bGU6ayxkaXJlY3Rpb246eCxvcmRlcjpfLGRhdGFJbmRleDp5dChfLGEpLGJ1dHRvblNoYWRvdzpPfSxlKSxILmEuY3JlYXRlRWxlbWVudCh4dCx7c2l6ZTpyfSxILmEuY3JlYXRlRWxlbWVudCh3dCx7c2l6ZTpyLGhyZWY6byx0YXJnZXQ6bCwiYXJpYS1sYWJlbCI6IkdvIHRvICIuY29uY2F0KGEpLGNvbG9yOmMsaWQ6TCxjdXN0b21JY29uOnUsZ3JhZGllbnQ6eSwiZGF0YS1jb21wb25lbnQtbmFtZSI6IkJhc2VCdXR0b24iLGJvcmRlcjpFLGRhdGFJbmRleDp5dChfLGEpLGJ1dHRvbkJvcmRlclJhZGl1czpiLGJ1dHRvblNoYWRvdzpPLGJ1dHRvbk9wYWNpdHk6aixiZ1N0eWxlOkEsYnV0dG9uU3R5bGU6ayxtaXJyb3I6SSxpc1NpbmdsZTp3LGRpcmVjdGlvbjp4LHBvc2l0aW9uOnosb3JkZXI6X30saSwibWVkaXVtIiE9PXImJiJzbWFsbCIhPT1yJiYiY2xhc3NpYyIhPT1rJiZILmEuY3JlYXRlRWxlbWVudChHLHtjb2xvcjpjLG1pcnJvcjpJLHNpemU6cn0sZSkpKSl9dmFyIGJ0PWZ1bmN0aW9uKGUpe3JldHVybiEhWyIjNjY2NjY2IiwiIzY2NiIsIiNFNzQzMzkiLCIjRkY2NTUwIiwiI0E4Q0U1MCIsIiMxMjlCRjQiLCIjOTMyQzhCIiwiI0ZGMzE4RSIsIiMwMDAwMDAiLCIjMDAwIl0uaW5jbHVkZXMoZS50b1VwcGVyQ2FzZSgpKX0seXQ9ZnVuY3Rpb24oZSx0KXtlPWUuaW5kZXhPZih0KTtpZigtMSE9PWUpcmV0dXJuIGUrMX0sdnQ9MTQsd3Q9Qy5kLmEud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXE4YzZ0dC0wIn0pKFsiIiwiICJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uT3BhY2l0eSxuPWUuc2l6ZSxyPWUuYnV0dG9uU3R5bGUsbz1lLmlzU2luZ2xlLGE9ZS5iZ1N0eWxlLGk9ZS5jb2xvcixsPWUuZ3JhZGllbnQsYz1lLmJ1dHRvbkJvcmRlclJhZGl1cyx1PWUuYnV0dG9uSW1hZ2Uscz1lLnRoZW1lLGY9ZS5jdXN0b21JY29uLGQ9ZS5ub3RpZmljYXRpb25JbmRpY2F0b3IscD1lLmJ1dHRvblNoYWRvdyxtPWUuYm9yZGVyLGg9ZS5hbmltYXRpb24sZz1lLmJ1dHRvbkFuaW1hdGlvbixiPWUub3BlbmVkLHk9ZS5pbmRpY2F0b3JQb3NpdGlvbix2PWUubWlycm9yLHc9ZS5kYXRhSW5kZXgseD1lLmRpcmVjdGlvbixrPWUucG9zaXRpb24sUz1lLm9yZGVyLGU9ZS5wb3B1cE9wZW5lZDtyZXR1cm4gT2JqZWN0KEMuYykoWyJkaXNwbGF5OiIsIjtmbGV4LXNocmluazowO29wYWNpdHk6IiwiJTt0ZXh0LWRlY29yYXRpb246bm9uZSAhaW1wb3J0YW50O3dpZHRoOiIsIjtoZWlnaHQ6IiwiO2JvcmRlci1yYWRpdXM6IiwiOyIsIjsiLCIgIiwiIG9yZGVyOiIsIjtwYWRkaW5nOiIsIjtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7b3ZlcmZsb3c6IiwiOyIsIjt0cmFuc2l0aW9uOmFsbCAwLjVzO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjAwO2JvcmRlcjoiLCI7IiwiICIsIiAiLCI7Jjpob3ZlcntjdXJzb3I6cG9pbnRlcjtjb2xvcjojZmZmZmZmICFpbXBvcnRhbnQ7fSIsIjsiLCIgIiwiICIsIiAiLCIgIiwiICIsIiAiLCIgIiwiICIsIiJdLDA9PT1uPyJub25lIjoiYmxvY2siLHQsZ3QoIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmImNsYXNzaWMiIT09cj8zKm46biksZ3QobiksIiIuY29uY2F0KGMsIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmImNsYXNzaWMiIT09cj8icHgiOiIlIiksbyYmIm1lZGl1bSI9PT1uJiZPYmplY3QoQy5jKShbIndpZHRoOjI5MHB4O2JvcmRlci1yYWRpdXM6MTBweDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6MTBweDtjb2xvcjojZmZmZmZmO2ZvbnQtd2VpZ2h0OmJvbGQ7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo1MnB4OyJdKSwiY29sb3IiPT09YT9PYmplY3QoQy5jKShbImJhY2tncm91bmQtY29sb3I6IiwiICFpbXBvcnRhbnQ7Il0saXx8IiM4NDg0ODQiKTpPYmplY3QoQy5jKShbImJhY2tncm91bmQ6IiwiOyJdLCJsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAiLmNvbmNhdChsLCIpIikpLHUmJiJjbGFzc2ljIj09PXImJk9iamVjdChDLmMpKFsiYmFja2dyb3VuZC1pbWFnZTp1cmwoICIsIiApO2JhY2tncm91bmQtc2l6ZTpjb3ZlciAhaW1wb3J0YW50O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjsiXSx1KSxzLmJ1dHRvbnNPcmRlcixmPyIwIjoiNXB4IiwhZCYmImhpZGRlbiIsIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmT2JqZWN0KEMuYykoWyJib3gtc2hhZG93OjBweCAxcHggN3B4IHJnYmEoMTM2LDEzNiwxMzYsIiwiJSk7Il0scCksbSYmIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmIiIuY29uY2F0KC4wNDUqbiwicHggc29saWQgI2ZmZmZmZiIpLCJzbWFsbCI9PT1uJiYiI2ZmZmZmZiI9PT1pJiZPYmplY3QoQy5jKShbImJvcmRlcjoxcHggc29saWQgbGlnaHRncmF5O2NvbG9yOmJsYWNrICFpbXBvcnRhbnQ7Jjpob3Zlcntjb2xvcjpibGFjayAhaW1wb3J0YW50O30iXSksIm1lZGl1bSI9PT1uJiYiI2ZmZmZmZiI9PT1pJiZPYmplY3QoQy5jKShbImJvcmRlcjoxcHggc29saWQgbGlnaHRncmF5O2NvbG9yOmJsYWNrICFpbXBvcnRhbnQ7Jjpob3Zlcntjb2xvcjpibGFjayAhaW1wb3J0YW50O30iXSksaCYmT2JqZWN0KEMuYykoWyIiLCIiXSwic3RhbmRhcmQiIT09ZyYmInJpbmciIT09ZyYmImRvdWJsZVJpbmciIT09ZyYmIm1vdmVJbiIhPT1nJiYibWVkaXVtIiE9PW4mJk9iamVjdChDLmMpKFsiYW5pbWF0aW9uOiIsIiAycyBpbmZpbml0ZTthbmltYXRpb24tZGVsYXk6MXM7Jjpob3ZlcnthbmltYXRpb246bm9uZTt9Il0sRShnKSkpLGQmJiJtZWRpdW0iIT09biYmIWImJk9iamVjdChDLmMpKFsiJjpiZWZvcmV7Y29udGVudDonMSc7d2lkdGg6IiwicHg7aGVpZ2h0OiIsInB4O2Rpc3BsYXk6Z3JpZDtwbGFjZS1jb250ZW50OmNlbnRlcjtjb2xvcjojZmZmZmZmO2ZvbnQtc2l6ZToxM3B4O2JhY2tncm91bmQtY29sb3I6cmVkO2JvcmRlci1yYWRpdXM6NTAlO2ZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7cG9zaXRpb246YWJzb2x1dGU7dG9wOiIsInB4OyIsIiBib3gtc2hhZG93OjBweCAxcHggMnB4IHJnYmEoMCwwLDAsNTAlKTt9OyJdLE1hdGgubWluKC4zKm4sMjApLE1hdGgubWluKC4zKm4sMjApLHktNCx2P09iamVjdChDLmMpKFsibGVmdDoiLCJweDsiXSx5LTQpOk9iamVjdChDLmMpKFsicmlnaHQ6IiwicHg7Il0seS00KSksYiYmT2JqZWN0KEMuYykoWyJhbmltYXRpb246bm9uZTsiXSksZSYmT2JqZWN0KEMuYykoWyJhbmltYXRpb246bm9uZTsiXSksIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmImNsYXNzaWMiIT09ciYmT2JqZWN0KEMuYykoWyJhbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpOyIsIiJdLHY/T2JqZWN0KEMuYykoWyJwYWRkaW5nOjAgMTVweCAwIDIwcHg7Il0pOk9iamVjdChDLmMpKFsicGFkZGluZzowIDIwcHggMCAxNXB4OyJdKSksImNsYXNzaWMiIT09ciYmIm1lZGl1bSI9PT1ufHwic21hbGwiPT09biYmT2JqZWN0KEMuYykoWyJkaXNwbGF5OmdyaWQ7cGxhY2UtY29udGVudDpjZW50ZXI7Il0pLHYmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDsiXSksInNtYWxsIj09PW4mJk9iamVjdChDLmMpKFsiZGlzcGxheTpibG9jazsiXSksdyYmImFyb3VuZCI9PT14JiYibWVkaXVtIiE9PW4mJiJzbWFsbCIhPT1uJiZPYmplY3QoQy5jKShbInRyYW5zZm9ybTpyb3RhdGUoIiwiZGVnKTsiXSwicmlnaHQiPT09az93KigzNjAvLU8oUykpLTE1KlMuc2xpY2UoMCw0KS5sZW5ndGg6dyooMzYwLy1PKFMpKS0xNSpTLnNsaWNlKDAsNCkubGVuZ3RoLTkwKSxwPDI1JiYiI2ZmZmZmZiI9PT1pJiZPYmplY3QoQy5jKShbIm91dGxpbmU6MXB4IHNvbGlkIGxpZ2h0Z3JheTsmOmhvdmVye291dGxpbmU6MXB4IHNvbGlkIGxpZ2h0Z3JheSAhaW1wb3J0YW50O30iXSkscDwyNSYmbSYmT2JqZWN0KEMuYykoWyJvdXRsaW5lOjFweCBzb2xpZCBsaWdodGdyYXk7Jjpob3ZlcntvdXRsaW5lOjFweCBzb2xpZCBsaWdodGdyYXkgIWltcG9ydGFudDt9Il0pKX0pLHh0PUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXE4YzZ0dC0xIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS50aGVtZSxuPWUuYW5pbWF0aW9uLHI9ZS5idXR0b25BbmltYXRpb24sbz1lLnNpemUsYT1lLmJ1dHRvblN0eWxlLGk9ZS5idXR0b25Cb3JkZXJSYWRpdXMsbD1lLmNvbG9yLGM9ZS5vcGVuZWQsZT1lLnBvcHVwT3BlbmVkO3JldHVybiBPYmplY3QoQy5jKShbIm9yZGVyOiIsIjtwb3NpdGlvbjpyZWxhdGl2ZTsiLCIgIiwiICIsIiAiLCIiXSx0LmJ1dHRvbnNPcmRlcixuJiZPYmplY3QoQy5jKShbIiIsIiAiLCIgIiwiIl0sInJpbmciPT09ciYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tZGVsYXk6MXM7Jjo6YWZ0ZXJ7Y29udGVudDonJztib3JkZXItcmFkaXVzOiIsIjtib3JkZXI6NnB4IHNvbGlkICIsIjtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Oi0xO3RvcDo1MCU7bGVmdDo1MCU7aGVpZ2h0OiIsIjt3aWR0aDoiLCI7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2FuaW1hdGlvbjoiLCIgMS41cyBpbmZpbml0ZTtvcGFjaXR5OjA7fSY6aG92ZXJ7YW5pbWF0aW9uOm5vbmU7fSJdLCIiLmNvbmNhdChpLCJtZWRpdW0iIT09byYmInNtYWxsIiE9PW8mJiJjbGFzc2ljIiE9PWE/InB4IjoiJSIpLGwsImNsYXNzaWMiIT09YT8iMTMwJSI6IjE1MCUiLCJjbGFzc2ljIiE9PWE/IjEzMCUiOiIxNTAlIixFKHIpKSwiZG91YmxlUmluZyI9PT1yJiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1kZWxheToxczsmOmhvdmVye2FuaW1hdGlvbjpub25lO30mOjphZnRlcntjb250ZW50OicnO29wYWNpdHk6MDtib3JkZXItcmFkaXVzOiIsIjtib3JkZXI6NnB4IHNvbGlkICIsIjtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Oi0xO3RvcDo1MCU7bGVmdDo1MCU7aGVpZ2h0OiIsIjt3aWR0aDoiLCI7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2FuaW1hdGlvbjoiLCIgMS41cyBpbmZpbml0ZTt9Jjo6YmVmb3Jle2NvbnRlbnQ6Jyc7Ym9yZGVyLXJhZGl1czoiLCI7Ym9yZGVyOjZweCBzb2xpZCAiLCI7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDotMTt0b3A6NTAlO2xlZnQ6NTAlO2hlaWdodDoiLCI7d2lkdGg6IiwiO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTthbmltYXRpb246IiwiIDNzIGluZmluaXRlO29wYWNpdHk6MDt9Il0sIiIuY29uY2F0KGksIm1lZGl1bSIhPT1vJiYic21hbGwiIT09byYmImNsYXNzaWMiIT09YT8icHgiOiIlIiksbCwiY2xhc3NpYyIhPT1hPyIxMzAlIjoiMTUwJSIsImNsYXNzaWMiIT09YT8iMTMwJSI6IjE1MCUiLEUociksIiIuY29uY2F0KGksIm1lZGl1bSIhPT1vJiYic21hbGwiIT09byYmImNsYXNzaWMiIT09YT8icHgiOiIlIiksbCwiY2xhc3NpYyIhPT1hPyIxMzAlIjoiMTUwJSIsImNsYXNzaWMiIT09YT8iMTMwJSI6IjE1MCUiLEUocikpLCJtb3ZlSW4iPT09ciYmT2JqZWN0KEMuYykoWydhbmltYXRpb24tZGVsYXk6MXM7b3ZlcmZsb3c6dW5zZXQ7Jjpob3ZlcnthbmltYXRpb246bm9uZTt9JjphZnRlcntjb250ZW50OiIiO2FuaW1hdGlvbjonLCIgM3MgaW5maW5pdGU7b3BhY2l0eTowO2JhY2tncm91bmQtY29sb3I6IiwiNjk7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOiIsIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7ei1pbmRleDotMTtib3gtc2hhZG93OjAgMCA1MHB4IHJnYmEoMCwwLDAsMC4xKTt9Il0sRShyKSxsLCIiLmNvbmNhdChpLCJtZWRpdW0iIT09byYmInNtYWxsIiE9PW8mJiJjbGFzc2ljIiE9PWE/InB4IjoiJSIpKSksYyYmT2JqZWN0KEMuYykoWyImOmFmdGVyLCY6YmVmb3Jle2FuaW1hdGlvbjpub25lO30iXSksZSYmT2JqZWN0KEMuYykoWyImOmFmdGVyLCY6YmVmb3Jle2FuaW1hdGlvbjpub25lO30iXSksIm1lZGl1bSI9PT1vJiZPYmplY3QoQy5jKShbIiY6YWZ0ZXIsJjpiZWZvcmV7YW5pbWF0aW9uOm5vbmU7fSJdKSl9KSxrdD1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1xOGM2dHQtMiJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uU3R5bGUsbj1lLnNpemUscj1lLnRoZW1lLG89ZS5idXR0b25TaGFkb3csYT1lLmRpcmVjdGlvbixpPWUubWlycm9yLGw9ZS5vcmRlcixlPWUuZGF0YUluZGV4O3JldHVybiBPYmplY3QoQy5jKShbInBvc2l0aW9uOmFic29sdXRlOyIsIiAiLCIgei1pbmRleDoxMDAwO3BhZGRpbmc6N3B4IDEwcHg7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhIE5ldWUsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Zm9udC1zaXplOiIsInB4O2xpbmUtaGVpZ2h0OjEuMSAhaW1wb3J0YW50O2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6NHB4O2NvbG9yOiMzMzM7YmFja2dyb3VuZDp3aGl0ZTtib3gtc2hhZG93OjBweCAxcHggN3B4IHJnYmEoMTM2LDEzNiwxMzYsIiwiJSk7d2hpdGUtc3BhY2U6bm93cmFwO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjoiLCI7IiwiICIsIiAiLCIgIiwiIl0sImNsYXNzaWMiIT09dCYmIm1lZGl1bSIhPT1uJiYic21hbGwiIT09bj9PYmplY3QoQy5jKShbImRpc3BsYXk6bm9uZSAhaW1wb3J0YW50OyJdKTpPYmplY3QoQy5jKShbImRpc3BsYXk6bm9uZTsiXSksInNtYWxsIiE9PW4mJiJtZWRpdW0iIT09bj9PYmplY3QoQy5jKShbIiIsIjoiLCJweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOyJdLHIucG9zaXRpb24sbisxNyk6T2JqZWN0KEMuYykoWyJsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKTtib3R0b206IiwicHg7Il0sInNtYWxsIj09PW4/LTMzOiJtZWRpdW0iPT09bj8tMzg6biksTWF0aC5taW4oInNtYWxsIj09PW4/MzQqLjI4OiJtZWRpdW0iPT09bj80NSouMjg6LjI4Km4sMTcuNSksMjA8bz9vOjIwLHIucG9zaXRpb24sInNtYWxsIiE9PW4mJiJtZWRpdW0iIT09biYmInJvdyI9PT1hJiZPYmplY3QoQy5jKShbInRvcDotNDVweDsiLCI6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKCIsIik7Il0sci5wb3NpdGlvbiwibGVmdCI9PT1yLnBvc2l0aW9uPyItNTAlIjoiNTAlIiksInNtYWxsIiE9PW4mJiJtZWRpdW0iIT09biYmT2JqZWN0KEMuYykoWyImOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDo1cHggc29saWQgcmdiYSgwLDAsMCwuMDkpO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKCIsIik7IiwifSY6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkICNmZmY7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoIiwiKTsiLCJ9Il0sInJpZ2h0Ij09PXIucG9zaXRpb24/IjE4MGRlZyI6IjBkZWciLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6LTExcHg7IiwiIl0sInJvdyI9PT1hJiZPYmplY3QoQy5jKShbInRvcDp1bnNldDtyaWdodDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoNTAlKSByb3RhdGUoMjcwZGVnKTtib3R0b206LTExcHg7Il0pKTpPYmplY3QoQy5jKShbImxlZnQ6LTExcHg7IiwiIl0sInJvdyI9PT1hJiZPYmplY3QoQy5jKShbInRvcDp1bnNldDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoMjcwZGVnKTtib3R0b206LTExcHg7Il0pKSwicmlnaHQiPT09ci5wb3NpdGlvbj8iMTgwZGVnIjoiMGRlZyIsInJpZ2h0Ij09PXIucG9zaXRpb24mJiJyb3ciIT09YT9PYmplY3QoQy5jKShbInJpZ2h0Oi0xMHB4OyIsIiJdLCJyb3ciPT09YSYmT2JqZWN0KEMuYykoWyJ0b3A6dW5zZXQ7cmlnaHQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDUwJSkgcm90YXRlKDI3MGRlZyk7Ym90dG9tOi0xMHB4OyJdKSk6T2JqZWN0KEMuYykoWyJsZWZ0Oi0xMHB4OyIsIiJdLCJyb3ciPT09YSYmT2JqZWN0KEMuYykoWyJ0b3A6dW5zZXQ7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKDI3MGRlZyk7Ym90dG9tOi0xMHB4OyJdKSkpLGkmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDt1bmljb2RlLWJpZGk6cGxhaW50ZXh0OyJdKSxlJiYiYXJvdW5kIj09PWEmJiJtZWRpdW0iIT09biYmInNtYWxsIiE9PW4mJk9iamVjdChDLmMpKFsidG9wOnVuc2V0O2xlZnQ6dW5zZXQ7cmlnaHQ6dW5zZXQ7Ym90dG9tOnVuc2V0OyIsIiAiLCIgIiwiICIsIiAiLCIgIiwiICIsIiAiLCIgdHJhbnNmb3JtOnJvdGF0ZSgiLCJkZWcpOyJdLDE9PT1lJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6NTAlO2JvdHRvbTotNTAlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0OjUwJTtib3R0b206MjUlOyJdKSksMj09PWUmJjQ9PT1sLnNsaWNlKDAsNCkubGVuZ3RoJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6MTAlO2JvdHRvbTotNDAlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0OjEyJTtib3R0b206LTE1JTsiXSkpLDM9PT1lJiY0PT09bC5zbGljZSgwLDQpLmxlbmd0aCYmT2JqZWN0KEMuYykoWyIiLCIiXSwicmlnaHQiPT09ci5wb3NpdGlvbj9PYmplY3QoQy5jKShbInJpZ2h0Oi0yMCU7Ym90dG9tOi01JTsiXSk6T2JqZWN0KEMuYykoWyJyaWdodDotNDElO2JvdHRvbTotNTMlOyJdKSksND09PWUmJjQ9PT1sLnNsaWNlKDAsNCkubGVuZ3RoJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6LTMwJTtib3R0b206MzAlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0Oi04OCU7Ym90dG9tOi02MSU7Il0pKSwyPT09ZSYmMz09PWwuc2xpY2UoMCw0KS5sZW5ndGgmJk9iamVjdChDLmMpKFsiIiwiIl0sInJpZ2h0Ij09PXIucG9zaXRpb24/T2JqZWN0KEMuYykoWyJyaWdodDotNSU7Ym90dG9tOi0yNSU7Il0pOk9iamVjdChDLmMpKFsicmlnaHQ6NSU7Ym90dG9tOi0zOCU7Il0pKSwzPT09ZSYmMz09PWwuc2xpY2UoMCw0KS5sZW5ndGgmJk9iamVjdChDLmMpKFsiIiwiIl0sInJpZ2h0Ij09PXIucG9zaXRpb24/T2JqZWN0KEMuYykoWyJyaWdodDotMjUlO2JvdHRvbToyNSU7Il0pOk9iamVjdChDLmMpKFsicmlnaHQ6LTkwJTtib3R0b206LTYwJTsiXSkpLDE9PT1lJiYyPT09bC5zbGljZSgwLDQpLmxlbmd0aCYmT2JqZWN0KEMuYykoWyIiLCIiXSwicmlnaHQiPT09ci5wb3NpdGlvbj9PYmplY3QoQy5jKShbInJpZ2h0OjM1JTtib3R0b206LTUwJTsiXSk6T2JqZWN0KEMuYykoWyJyaWdodDo0NiU7Ym90dG9tOjglOyJdKSksMj09PWUmJjI9PT1sLnNsaWNlKDAsNCkubGVuZ3RoJiZPYmplY3QoQy5jKShbIiIsIiJdLCJyaWdodCI9PT1yLnBvc2l0aW9uP09iamVjdChDLmMpKFsicmlnaHQ6LTI1JTtib3R0b206MTUlOyJdKTpPYmplY3QoQy5jKShbInJpZ2h0Oi03NCU7Ym90dG9tOi02MCU7Il0pKSwicmlnaHQiPT09ci5wb3NpdGlvbj9lKigzNjAvLU8obCkpLTE1Kmwuc2xpY2UoMCw0KS5sZW5ndGg6ZSooMzYwLy1PKGwpKS0xNSpsLnNsaWNlKDAsNCkubGVuZ3RoLTkwKSl9KSxTdD1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1xOGM2dHQtMyJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUudGhlbWUsbj1lLnNpemUscj1lLmRhdGFJbmRleCxvPWUuZGlyZWN0aW9uLGU9ZS5vcmRlcjtyZXR1cm4gT2JqZWN0KEMuYykoWyJkaXNwbGF5OmZsZXg7bWFyZ2luOiIsInB4O3Bvc2l0aW9uOnJlbGF0aXZlO2p1c3RpZnktY29udGVudDoiLCI7bWF4LWhlaWdodDoiLCJweDsiLCIgIiwiIl0sdnQvMix0LmNvbnRhaW5lckRpcmVjdGlvbixuLHImJiJhcm91bmQiPT09byYmIm1lZGl1bSIhPT1uJiYic21hbGwiIT09biYmT2JqZWN0KEMuYykoWyJwb3NpdGlvbjpmaXhlZDt0cmFuc2Zvcm06cm90YXRlKCIsImRlZykgdHJhbnNsYXRlWSgiLCJweCk7Il0sciooMzYwL08oZSkpLDIqbitmdW5jdGlvbihlKXtzd2l0Y2goZS5sZW5ndGgpe2Nhc2UgMjpyZXR1cm4tMjA7Y2FzZSAzOnJldHVybiAwO2RlZmF1bHQ6cmV0dXJuIDUwfX0oZSkpLFUoKSYmT2JqZWN0KEMuYykoWyImOmhvdmVyICIsIntkaXNwbGF5OmZsZXg7YW5pbWF0aW9uOiIsIiAwLjFzIGxpbmVhcjt9Il0sa3QsImxlZnQiPT09dC5wb3NpdGlvbj9YZTpZZSkpfSksRz1DLmQucC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcThjNnR0LTQifSkoWyIiLCIgICJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuY29sb3Isbj1lLnNpemUsZT1lLm1pcnJvcjtyZXR1cm4gT2JqZWN0KEMuYykoWyJtYXJnaW46MCAhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOjAuNXB4O2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSBOZXVlLEhlbHZldGljYSxzYW5zLXNlcmlmOyIsIiBncmlkLWFyZWE6MSAvIDIgLyAyIC8gNTsiLCIiXSwiI2ZmZmZmZiI9PT10fHwiI2YzZjNmMyI9PT10P09iamVjdChDLmMpKFsiY29sb3I6IzAwMDAwMCAhaW1wb3J0YW50OyY6aG92ZXJ7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50O30iXSk6T2JqZWN0KEMuYykoWyJjb2xvcjojZmZmZmZmOyJdKSwibWVkaXVtIiE9PW4/T2JqZWN0KEMuYykoWyIiLCIgbGluZS1oZWlnaHQ6MS4yNSAhaW1wb3J0YW50O2ZvbnQtc2l6ZToiLCJweDsiXSxlP09iamVjdChDLmMpKFsibWFyZ2luLXJpZ2h0OjEwcHg7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luLWxlZnQ6MTBweDsiXSksTWF0aC5taW4oLjI5Km4sMjIpKTpPYmplY3QoQy5jKShbImxpbmUtaGVpZ2h0OjEgIWltcG9ydGFudDtmb250LXNpemU6MjBweDsiXSkpfSk7ZnVuY3Rpb24gQ3QoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9FdChlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9FdChlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIEV0KGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gT3QoKXt2YXIgZT0uMDEqd2luZG93LmlubmVySGVpZ2h0O2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS12aCIsIiIuY29uY2F0KGUsInB4IikpfU90KCksd2luZG93Lm9ucmVzaXplPWZ1bmN0aW9uKCl7T3QoKX07ZnVuY3Rpb24ganQoZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmFwcGxlSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMTM4IDEyNSIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNjguODIsMTMuNzJjLTI5LjU1LDAtNTMuNSwyMC01My41LDQ0LjU2LDAsMTUuNjQsOS44OSwzMC4xMiwyNiwzOC4xNkE0Mi40Miw0Mi40MiwwLDAsMSwzMiwxMDkuNTMsNTcuMyw1Ny4zLDAsMCwwLDUzLjY4LDEwMWE2NCw2NCwwLDAsMCwxNS4xNCwxLjg0YzI5LjU1LDAsNTMuNS0yMCw1My41LTQ0LjU2Uzk4LjM3LDEzLjcyLDY4LjgyLDEzLjcyWiJ9KSl9dmFyIGs9T2JqZWN0KEMuZCkodCkud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC0wIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5taXJyb3Isbj1lLnRoZW1lLHI9ZS5zaXplLG89ZS5idXR0b25TaGFkb3csZT1lLmN1c3RvbVNldHRpbmdzO3JldHVybiBPYmplY3QoQy5jKShbImJveC1zaGFkb3c6MHB4IDFweCA3cHggcmdiYSgxMzYsMTM2LDEzNiwiLCIlKTttaW4taGVpZ2h0OjE0OXB4O2JvcmRlci1yYWRpdXM6MTBweDsiLCI6MDtib3R0b206IiwncHg7YmFja2dyb3VuZC1jb2xvcjojZmZmZmZmO3dpZHRoOjMwMnB4O3Bvc2l0aW9uOmFic29sdXRlO2xpbmUtaGVpZ2h0OjIzcHg7Zm9udC1zaXplOjE0cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1mYW1pbHk6Um9ib3RvLCJIZWx2ZXRpY2EgTmV1ZSIsc2Fucy1zZXJpZjsnLCIgIiwiIl0sMjA8bz9vOjIwLG4ucG9zaXRpb24sciszMCwid2hhdHNhcHAiIT09ZSYmRCgpJiZPYmplY3QoQy5jKShbInBvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3JpZ2h0OjA7ei1pbmRleDo5OTk5O2JvcmRlci1yYWRpdXM6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2hlaWdodDpjYWxjKHZhcigtLXZoKSAqIDEwMCk7Il0pLHQmJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDsiXSkpfSksUz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtMSJ9KShbImN1cnNvcjpwb2ludGVyO3dpZHRoOjI0cHg7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsibWFyZ2luOjZweCBhdXRvIDAgMTJweDsiXSk6T2JqZWN0KEMuYykoWyJtYXJnaW46NnB4IDEycHggMCBhdXRvOyJdKX0pLGo9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTIifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmdyYWRpZW50LG49ZS5iZ1N0eWxlLGU9ZS5jb2xvcjtyZXR1cm4gT2JqZWN0KEMuYykoWyIiLCIgZGlzcGxheTpmbGV4O2hlaWdodDo1MHB4O2JvcmRlci1yYWRpdXM6OXB4IDlweCAwIDA7YWxpZ24taXRlbXM6Y2VudGVyO3RleHQtYWxpZ246bGVmdDsiLCIiXSwiY29sb3IiPT09bj9PYmplY3QoQy5jKShbImJhY2tncm91bmQtY29sb3I6IiwiOyJdLGUpOk9iamVjdChDLmMpKFsiYmFja2dyb3VuZDoiLCI7Il0sImxpbmVhci1ncmFkaWVudCgxMzVkZWcsICIuY29uY2F0KHQsIikiKSksRCgpJiZPYmplY3QoQy5jKShbImJvcmRlci1yYWRpdXM6MDsiXSkpfSksQXQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTMifSkoWyJ0ZXh0LWFsaWduOmxlZnQ7Y29sb3I6I0ZGRkZGRjsiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3ImJk9iamVjdChDLmMpKFsidW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSl9KSxBPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC00In0pKFsid2lkdGg6MjhweDtoZWlnaHQ6MjhweDsiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJtYXJnaW46MCAxMnB4IDAgM3B4OyJdKTpPYmplY3QoQy5jKShbIm1hcmdpbjowIDNweCAwIDEycHg7Il0pfSksUHQ9T2JqZWN0KEMuZCkoaykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC01In0pKFsiYm9yZGVyLXJhZGl1czoxNnB4O3dpZHRoOjMyMHB4OyJdKSxJdD1PYmplY3QoQy5kKShqKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTYifSkoWyJqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtib3JkZXItcmFkaXVzOjE2cHggMTZweCAwIDA7cGFkZGluZzowIDE1cHg7aGVpZ2h0OjgwcHg7Il0pLF90PUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC03In0pKFsiZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDsiXSksenQ9Qy5kLmg0LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtOCJ9KShbImNvbG9yOiNGRkZGRkY7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MTtmb250LXNpemU6MTVweDtmb250LXdlaWdodDpib2xkOyIsIiBsZXR0ZXItc3BhY2luZzowLjNweDsiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOnJpZ2h0O3VuaWNvZGUtYmlkaTpwbGFpbnRleHQ7Il0pOk9iamVjdChDLmMpKFsidGV4dC1hbGlnbjpsZWZ0OyJdKX0pLFR0PUMuZC5wLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtOSJ9KShbIiIsIiBjb2xvcjojZmZmZmZmY2M7bWFyZ2luOjVweCAwIDAgMDtsaW5lLWhlaWdodDoxO3dpZHRoOjE4MHB4O2xldHRlci1zcGFjaW5nOjAuM3B4OyJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksTHQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTEwIn0pKFsid2lkdGg6NDVweDtoZWlnaHQ6NDVweDsiXSksTXQ9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTExIn0pKFsiY3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpncmlkOyJdKSxSdD1PYmplY3QoQy5kKShrKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTEyIn0pKFsid2lkdGg6NTA1cHg7IiwiIl0sRCgpJiZPYmplY3QoQy5jKShbIndpZHRoOjEwMCU7Il0pKSxOdD1PYmplY3QoQy5kKShrKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTEzIn0pKFsid2lkdGg6NDgwcHg7bGluZS1oZWlnaHQ6MHB4OyIsIiJdLEQoKT9PYmplY3QoQy5jKShbIndpZHRoOjEwMCU7Il0pOk9iamVjdChDLmMpKFsiQG1lZGlhIChtYXgtd2lkdGg6NTIwcHgpe3dpZHRoOjM4MHB4O31AbWVkaWEgKG1heC13aWR0aDo0MDBweCl7d2lkdGg6MjgwcHg7fUBtZWRpYSAobWF4LWhlaWdodDo2MDBweCl7Ym90dG9tOjdweCAhaW1wb3J0YW50OyIsIjoiLCJweCAhaW1wb3J0YW50O30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS50aGVtZS5wb3NpdGlvbn0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc2l6ZSszMH0pKSxEdD1PYmplY3QoQy5kKShrKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtcjhyZnp4LTE0In0pKFsiaGVpZ2h0OjY4MHB4O21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDE3MHB4KTtib3JkZXItcmFkaXVzOjIzcHg7d2lkdGg6MzMwcHg7IiwiIl0sRCgpP09iamVjdChDLmMpKFsid2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtoZWlnaHQ6Y2FsYyh2YXIoLS12aCkgKiAxMDApO21heC1oZWlnaHQ6dW5zZXQ7Ym9yZGVyLXJhZGl1czowOyJdKTpPYmplY3QoQy5jKShbIkBtZWRpYSAobWF4LWhlaWdodDo1MDBweCl7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gNDBweCk7Ym90dG9tOjdweCAhaW1wb3J0YW50OyIsIjoiLCJweCAhaW1wb3J0YW50O31AbWVkaWEgKG1heC13aWR0aDozNzBweCl7d2lkdGg6MjgwcHg7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLnRoZW1lLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zaXplKzMwfSkpLFV0PU9iamVjdChDLmQpKGspLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yOHJmengtMTUifSkoWyJ3aWR0aDo0ODBweDtsaW5lLWhlaWdodDowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzpub25lOyIsIiJdLEQoKT9PYmplY3QoQy5jKShbIndpZHRoOjEwMCU7YmFja2dyb3VuZDojZmZmZmZmOyJdKTpPYmplY3QoQy5jKShbIkBtZWRpYSAobWF4LXdpZHRoOjUyMHB4KXt3aWR0aDozODBweDt9QG1lZGlhIChtYXgtd2lkdGg6NDAwcHgpe3dpZHRoOjI4MHB4O31AbWVkaWEgKG1heC1oZWlnaHQ6NTAwcHgpe2JvdHRvbTo3cHggIWltcG9ydGFudDsiLCI6IiwicHggIWltcG9ydGFudDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUudGhlbWUucG9zaXRpb259LGZ1bmN0aW9uKGUpe3JldHVybiBlLnNpemUrMzB9KSksQnQ9T2JqZWN0KEMuZCkoUykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXI4cmZ6eC0xNiJ9KShbImJhY2tncm91bmQ6I2ZmZmZmZjtib3JkZXItcmFkaXVzOjMwcHg7cGFkZGluZzo2cHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDsiLCIgIiwiIl0sIUQoKSYmT2JqZWN0KEMuYykoWyJib3gtc2hhZG93OjBweCAxcHggN3B4IHJnYmEoMTM2LDEzNiwxMzYsIiwiJSk7Il0sZnVuY3Rpb24oZSl7cmV0dXJuIDIwPGUuYnV0dG9uU2hhZG93P2UuYnV0dG9uU2hhZG93OjIwfSksZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsibWFyZ2luOjAgYXV0byAwIDA7Il0pOk9iamVjdChDLmMpKFsibWFyZ2luOjAgMCAwIGF1dG87Il0pfSksUD1mdW5jdGlvbihlKXtlPWUuY3VzdG9tU2V0dGluZ3M7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToid2hhdHNhcHAiPT09ZT97d2lkdGg6IjI1cHgiLGhlaWdodDoiMjVweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06InlvdXR1YmUiPT09ZT97d2lkdGg6IjEwMCUiLGZpbGw6IiMwMDAwMDAiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIyNHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0wIDBoMjR2MjRIMHoiLGZpbGw6Im5vbmUifSkpfSxOPWZ1bmN0aW9uKGUpe2Z1bmN0aW9uIHQoKXt4KHkpfWZ1bmN0aW9uIG4oKXtmKCl9dmFyIHI9ZS5pY29uLG89ZS5tZXNzZW5nZXJUaXRsZSxhPWUuY29sb3IsaT1lLmNoaWxkcmVuLGw9ZS5lbmFibGVQb3B1cCxjPWUuY3VzdG9tU2V0dGluZ3MsYz12b2lkIDAhPT1jJiZjLHU9ZS5iZ1N0eWxlLHU9dm9pZCAwPT09dT8iY29sb3IiOnUsZT1lLnNpemUscz1PYmplY3QoRi51c2VDb250ZXh0KShWKSxmPXMuYWN0aW9ucy5jbG9zZUJ1dHRvblBvcHVwLHM9cy5zZXR0aW5ncyxkPXMubWlycm9yLHA9cy53aGF0c2FwcFBvcHVwVGl0bGUsbT1zLndoYXRzYXBwUG9wdXBTdWJ0aXRsZSxoPXMuYnV0dG9uU2hhZG93LHM9cy5kaXJlY3Rpb24sZz1wZShhLDUpLGI9Q3QoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSx5PWJbMF0sdj1iWzFdLGI9Q3QoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSx3PWJbMF0seD1iWzFdO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtsPyh2KCEwKSx4KCEwKSk6dighMSl9KTtyZXR1cm4ieW91dHViZSI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KFV0LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxILmEuY3JlYXRlRWxlbWVudChqLG51bGwsRCgpJiZILmEuY3JlYXRlRWxlbWVudChBLHttaXJyb3I6ZH0sciksSC5hLmNyZWF0ZUVsZW1lbnQoQnQse29uTW91c2VVcDpuLG1pcnJvcjpkLGJ1dHRvblNoYWRvdzpofSxILmEuY3JlYXRlRWxlbWVudChQLHtjdXN0b21TZXR0aW5nczpjfSkpKSxpKToid29uZGVyY2hhdCI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KER0LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxEKCkmJkguYS5jcmVhdGVFbGVtZW50KGose2NvbG9yOmEsYmdTdHlsZTp1LGdyYWRpZW50Omd9LEguYS5jcmVhdGVFbGVtZW50KEEse21pcnJvcjpkfSxyKSxILmEuY3JlYXRlRWxlbWVudChBdCx7bWlycm9yOmR9LG8pLEguYS5jcmVhdGVFbGVtZW50KFMse29uTW91c2VVcDpuLG1pcnJvcjpkfSxILmEuY3JlYXRlRWxlbWVudChQLG51bGwpKSksaSk6Imdvb2dsZW1hcCI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KE50LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxILmEuY3JlYXRlRWxlbWVudChqLHtjb2xvcjphLGJnU3R5bGU6dSxncmFkaWVudDpnfSxILmEuY3JlYXRlRWxlbWVudChBLHttaXJyb3I6ZH0sciksSC5hLmNyZWF0ZUVsZW1lbnQoQXQse21pcnJvcjpkfSxvKSxILmEuY3JlYXRlRWxlbWVudChTLHtvbk1vdXNlVXA6bixtaXJyb3I6ZH0sSC5hLmNyZWF0ZUVsZW1lbnQoUCxudWxsKSkpLGkpOiJ3aGF0c2FwcCI9PT1jP3cmJkguYS5jcmVhdGVFbGVtZW50KFB0LHtpc1Nob3c6eSxvbkFuaW1hdGlvbkVuZDp0LHNpemU6ZSxtaXJyb3I6ZCxidXR0b25TaGFkb3c6aCxkaXJlY3Rpb246cyxjdXN0b21TZXR0aW5nczpjfSxILmEuY3JlYXRlRWxlbWVudChJdCx7Y29sb3I6YSxiZ1N0eWxlOnUsZ3JhZGllbnQ6Z30sSC5hLmNyZWF0ZUVsZW1lbnQoX3QsbnVsbCxILmEuY3JlYXRlRWxlbWVudChMdCxudWxsLHIpLEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwscCYmSC5hLmNyZWF0ZUVsZW1lbnQoenQse21pcnJvcjpkfSxwKSxtJiZILmEuY3JlYXRlRWxlbWVudChUdCx7bWlycm9yOmR9LG0pKSksSC5hLmNyZWF0ZUVsZW1lbnQoTXQse29uTW91c2VVcDpufSxILmEuY3JlYXRlRWxlbWVudChQLHtjdXN0b21TZXR0aW5nczpjfSkpKSxpKToiY2FsZW5kYXIiPT09Yz93JiZILmEuY3JlYXRlRWxlbWVudChSdCx7aXNTaG93Onksb25BbmltYXRpb25FbmQ6dCxzaXplOmUsbWlycm9yOmQsYnV0dG9uU2hhZG93OmgsZGlyZWN0aW9uOnN9LEguYS5jcmVhdGVFbGVtZW50KGose2NvbG9yOmEsYmdTdHlsZTp1LGdyYWRpZW50Omd9LEguYS5jcmVhdGVFbGVtZW50KEEse21pcnJvcjpkfSxyKSxILmEuY3JlYXRlRWxlbWVudChBdCx7bWlycm9yOmR9LG8pLEguYS5jcmVhdGVFbGVtZW50KFMse29uTW91c2VVcDpuLG1pcnJvcjpkfSxILmEuY3JlYXRlRWxlbWVudChQLG51bGwpKSksaSk6dyYmSC5hLmNyZWF0ZUVsZW1lbnQoayx7aXNTaG93Onksb25BbmltYXRpb25FbmQ6dCxzaXplOmUsbWlycm9yOmQsYnV0dG9uU2hhZG93OmgsZGlyZWN0aW9uOnMsY3VzdG9tU2V0dGluZ3M6Y30sSC5hLmNyZWF0ZUVsZW1lbnQoaix7Y29sb3I6YSxiZ1N0eWxlOnUsZ3JhZGllbnQ6Z30sSC5hLmNyZWF0ZUVsZW1lbnQoQSx7bWlycm9yOmR9LHIpLEguYS5jcmVhdGVFbGVtZW50KEF0LHttaXJyb3I6ZH0sbyksSC5hLmNyZWF0ZUVsZW1lbnQoUyx7b25Nb3VzZVVwOm4sbWlycm9yOmR9LEguYS5jcmVhdGVFbGVtZW50KFAsbnVsbCkpKSxpKX0sRnQ9Qy5kLnNwYW4ud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTE2Z2R4MGktMCJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYmdVcmwsbj1lLnNpemUscj1lLmlzU2luZ2xlLG89ZS5idXR0b25TdHlsZSxlPWUuYnV0dG9uQm9yZGVyUmFkaXVzO3JldHVybiBPYmplY3QoQy5jKShbJ2Rpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtiYWNrZ3JvdW5kOnVybCgiJywnIikgbm8tcmVwZWF0IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7d2lkdGg6JywiO2hlaWdodDoiLCI7IiwiIHBvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czoiLCI7Il0sdCwibWVkaXVtIj09PW4mJnI/IjMwcHgiOiIxMDAlIiwibWVkaXVtIj09PW4mJnI/IjMwcHgiOiIxMDAlIiwiY2xhc3NpYyIhPT1vJiYibWVkaXVtIiE9PW4mJiJzbWFsbCIhPT1uJiZPYmplY3QoQy5jKShbIndpZHRoOiIsInB4O2hlaWdodDoiLCJweDsiXSxNYXRoLm1pbiguNTUqbiw0MCksTWF0aC5taW4oLjU1Km4sNDApKSwibWVkaXVtIiE9PW4mJiJzbWFsbCIhPT1uJiYiY2xhc3NpYyI9PT1vPyIiLmNvbmNhdChlLCIlIik6IiIuY29uY2F0KC4zNSplLCJweCIpKX0pLG09ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5pY29uVXJsLGU9ZS5zaXplLG49T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Mscj1uLmlzU2luZ2xlLG89bi5idXR0b25TdHlsZSxuPW4uYnV0dG9uQm9yZGVyUmFkaXVzO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChGdCx7YmdVcmw6dCxzaXplOmUsaXNTaW5nbGU6cixidXR0b25TdHlsZTpvLGJ1dHRvbkJvcmRlclJhZGl1czpufSl9O2Z1bmN0aW9uIEh0KGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/VnQoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/VnQoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBWdChlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uICR0KGUpe3ZhciB0PWUuc2l6ZSxlPXZvaWQgMD09PShlPWUuY3VzdG9tU2V0dGluZ3MpP251bGw6ZSxuPShvPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS55b3V0dWJlSWNvbixyPW8uaXNQcm8sbz1vLmlzU2luZ2xlO3JldHVybiByJiZuP0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6bixzaXplOnR9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT10JiZvP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiItMyAtMyAzOCAzOCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTIuOTMyIDIwLjQ1OXYtOC45MTdsNy44MzkgNC40NTl6TTMwLjM2OCA4LjczNWMtMC4zNTQtMS4zMDEtMS4zNTQtMi4zMDctMi42MjUtMi42NjNsLTAuMDI3LTAuMDA2Yy0zLjE5My0wLjQwNi02Ljg4Ni0wLjYzOC0xMC42MzQtMC42MzgtMC4zODEgMC0wLjc2MSAwLjAwMi0xLjE0IDAuMDA3bDAuMDU4LTAuMDAxYy0wLjMyMi0wLjAwNC0wLjcwMS0wLjAwNy0xLjA4Mi0wLjAwNy0zLjc0OCAwLTcuNDQzIDAuMjMyLTExLjA3MCAwLjY4MWwwLjQzNC0wLjA0NGMtMS4yOTcgMC4zNjMtMi4yOTcgMS4zNjgtMi42NDQgMi42NDNsLTAuMDA2IDAuMDI2Yy0wLjQgMi4xMDktMC42MjggNC41MzYtMC42MjggNy4wMTYgMCAwLjA4OCAwIDAuMTc2IDAuMDAxIDAuMjYzbC0wLTAuMDE0Yy0wIDAuMDc0LTAuMDAxIDAuMTYyLTAuMDAxIDAuMjUgMCAyLjQ4IDAuMjI5IDQuOTA2IDAuNjY2IDcuMjU5bC0wLjAzOC0wLjI0NGMwLjM1NCAxLjMwMSAxLjM1NCAyLjMwNyAyLjYyNSAyLjY2M2wwLjAyNyAwLjAwNmMzLjE5MyAwLjQwNiA2Ljg4NiAwLjYzOCAxMC42MzQgMC42MzggMC4zOCAwIDAuNzYtMC4wMDIgMS4xNC0wLjAwN2wtMC4wNTggMC4wMDFjMC4zMjIgMC4wMDQgMC43MDIgMC4wMDcgMS4wODIgMC4wMDcgMy43NDkgMCA3LjQ0My0wLjIzMiAxMS4wNzAtMC42ODFsLTAuNDM0IDAuMDQ0YzEuMjk4LTAuMzYyIDIuMjk4LTEuMzY4IDIuNjQ2LTIuNjQzbDAuMDA2LTAuMDI2YzAuMzk5LTIuMTA5IDAuNjI3LTQuNTM2IDAuNjI3LTcuMDE1IDAtMC4wODgtMC0wLjE3Ni0wLjAwMS0wLjI2M2wwIDAuMDEzYzAtMC4wNzQgMC4wMDEtMC4xNjIgMC4wMDEtMC4yNSAwLTIuNDgtMC4yMjktNC45MDYtMC42NjYtNy4yNTlsMC4wMzggMC4yNDR6IixmaWxsOiJ5b3V0dWJlIj09PWUmJiIjZmYwMDAwIn0pKX12YXIgV3Q9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWVhNDV4aS0wIn0pKFsibWFyZ2luOjYwcHggMCA2MHB4IDA7bGluZS1oZWlnaHQ6MjNweDsmIGF7Y29sb3I6IzExMTtmb250LXNpemU6MjZweDt0ZXh0LWRlY29yYXRpb246bm9uZTt1bmljb2RlLWJpZGk6cGxhaW50ZXh0O30iXSksR3Q9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MteTVqbTd5LTAifSkoWyJwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cG9pbnRlci1ldmVudHM6bm9uZTsiXSksWmU9T2JqZWN0KEMuZSkoWyIwJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpO30xMDAle3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTt9Il0pLHF0PUMuZC5zcGFuLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy15NWptN3ktMSJ9KShbImRpc3BsYXk6YmxvY2s7d2lkdGg6NTBweDtoZWlnaHQ6NTBweDtib3JkZXI6MTBweCBzb2xpZCAjZjNmM2YzO2JvcmRlci10b3A6MTBweCBzb2xpZCAjMzgzNjM2O2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjoiLCIgMS41cyBsaW5lYXIgaW5maW5pdGU7Il0sWmUpO2Z1bmN0aW9uIEkoZSl7ZS5jaGlsZHJlbjtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoR3Qse2NsYXNzTmFtZToic3Bpbm5lci1jb250YWluZXIifSxILmEuY3JlYXRlRWxlbWVudChxdCx7Y2xhc3NOYW1lOiJsb2FkaW5nLXNwaW5uZXIifSkpfWZ1bmN0aW9uIFp0KGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/WHQoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/WHQoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBYdChlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIFl0KGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5jYWxsSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiLTcyIC03MiA3MDQgNzA0Iix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6IiBNMTY2LjE1Niw1MTJoLTQxLjUzMWMtNy4zNzUtMC4wMzEtMjAuNTYzLTguNTYzLTIwLjkzOC04LjkwNkMzNy40MzgsNDM3Ljk2OSwwLDM0OC45MDYsMCwyNTUuOTM4IEMwLDE2Mi43MTksMzcuNjU2LDczLjM3NSwxMDQuMjgxLDguMjE5QzEwNC4zMTMsOC4xODgsMTE3LjI1LDAsMTI0LjYyNSwwaDQxLjUzMWMxNS4yMTksMCwzMy4yNSwxMS4xMjUsNDAuMDYzLDI0Ljc4MWwyLjkwNiw1Ljg0NCBjNi43ODEsMTMuNTk0LDYuMTg4LDM1LjU2My0xLjM0NCw0OC43NWwtMjcuOTA2LDQ4LjgxM2MtNy41NjMsMTMuMjE5LTI2LjE4OCwyNC4yNS00MS40MDYsMjQuMjVIMTEwLjc1IGMtMzYuODEzLDY0LTM2LjgxMywxNDMuMDk0LTAuMDMxLDIwNy4xMjVoMjcuNzVjMTUuMjE5LDAsMzMuODQ0LDExLjAzMSw0MS40MDYsMjQuMjVsMjcuODc1LDQ4LjgxMyBjNy41MzEsMTMuMTg4LDguMTU2LDM1LjA5NCwxLjM3NSw0OC43ODFsLTIuOTA2LDUuODQ0QzE5OS4zNzUsNTAwLjg0NCwxODEuMzc1LDUxMiwxNjYuMTU2LDUxMnogTTUxMiwxMjh2MjU2IGMwLDM1LjM0NC0yOC42NTYsNjQtNjQsNjRIMjQ0LjY4OGMtMS4yNS0xMS4yMTktMy45NjktMjIuMTU2LTkuMTU2LTMxLjI1bC0yNy44NzUtNDguODEzIGMtMTMuNDA2LTIzLjQwNi00Mi40NjktNDAuMzc1LTY5LjE4OC00MC4zNzVoLTguMTU2Yy0yMC4xODgtNDUuNDM4LTIwLjE4OC05Ny43MTksMC0xNDMuMTI1aDguMTU2IGMyNi43MTksMCw1NS43ODEtMTYuOTY5LDY5LjE4OC00MC4zNzVsMjcuOTA2LTQ4LjgxM2M1LjE4OC05LjA5NCw3LjkwNi0yMC4wNjMsOS4xNTYtMzEuMjVINDQ4QzQ4My4zNDQsNjQsNTEyLDkyLjY1Niw1MTIsMTI4eiBNMzI4LDM2OGMwLTEzLjI1LTEwLjc1LTI0LTI0LTI0cy0yNCwxMC43NS0yNCwyNHMxMC43NSwyNCwyNCwyNFMzMjgsMzgxLjI1LDMyOCwzNjh6IE0zMjgsMzA0YzAtMTMuMjUtMTAuNzUtMjQtMjQtMjQgcy0yNCwxMC43NS0yNCwyNHMxMC43NSwyNCwyNCwyNFMzMjgsMzE3LjI1LDMyOCwzMDR6IE0zMjgsMjQwYzAtMTMuMjUtMTAuNzUtMjQtMjQtMjRzLTI0LDEwLjc1LTI0LDI0czEwLjc1LDI0LDI0LDI0IFMzMjgsMjUzLjI1LDMyOCwyNDB6IE0zOTIsMzY4YzAtMTMuMjUtMTAuNzUtMjQtMjQtMjRzLTI0LDEwLjc1LTI0LDI0czEwLjc1LDI0LDI0LDI0UzM5MiwzODEuMjUsMzkyLDM2OHogTTM5MiwzMDQgYzAtMTMuMjUtMTAuNzUtMjQtMjQtMjRzLTI0LDEwLjc1LTI0LDI0czEwLjc1LDI0LDI0LDI0UzM5MiwzMTcuMjUsMzkyLDMwNHogTTM5MiwyNDBjMC0xMy4yNS0xMC43NS0yNC0yNC0yNHMtMjQsMTAuNzUtMjQsMjQgczEwLjc1LDI0LDI0LDI0UzM5MiwyNTMuMjUsMzkyLDI0MHogTTQ1NiwzNjhjMC0xMy4yNS0xMC43NS0yNC0yNC0yNHMtMjQsMTAuNzUtMjQsMjRzMTAuNzUsMjQsMjQsMjRTNDU2LDM4MS4yNSw0NTYsMzY4eiBNNDU2LDMwNCBjMC0xMy4yNS0xMC43NS0yNC0yNC0yNHMtMjQsMTAuNzUtMjQsMjRzMTAuNzUsMjQsMjQsMjRTNDU2LDMxNy4yNSw0NTYsMzA0eiBNNDU2LDI0MGMwLTEzLjI1LTEwLjc1LTI0LTI0LTI0cy0yNCwxMC43NS0yNCwyNCBzMTAuNzUsMjQsMjQsMjRTNDU2LDI1My4yNSw0NTYsMjQweiBNNDU2LDE0NGMwLTguODQ0LTcuMTU2LTE2LTE2LTE2SDI5NmMtOC44NDQsMC0xNiw3LjE1Ni0xNiwxNnYzMmMwLDguODQ0LDcuMTU2LDE2LDE2LDE2aDE0NCBjOC44NDQsMCwxNi03LjE1NiwxNi0xNlYxNDR6In0pKX12YXIgUXQ9Qy5kLmlmcmFtZS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWVoNGUzMy0wIn0pKFsiaGVpZ2h0OjI3MHB4O2JvcmRlci1yYWRpdXM6OXB4O21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDEwMHB4KTtib3JkZXI6bm9uZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpvcGFjaXR5IC41czt3aWR0aDoxMDAlO2JveC1zaGFkb3c6MHB4IDFweCA3cHggcmdiYSgxMzYsMTM2LDEzNiwiLCIlKTsiLCI7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIDIwPGUuYnV0dG9uU2hhZG93P2UuYnV0dG9uU2hhZG93OjIwfSxmdW5jdGlvbihlKXtyZXR1cm4gZS5pc0xvYWRpbmcmJk9iamVjdChDLmMpKFsib3BhY2l0eTowOyJdKX0sRCgpJiZPYmplY3QoQy5jKShbImhlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1MHB4KTtib3JkZXItcmFkaXVzOjA7Il0pKSxLdD1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xZWg0ZTMzLTEifSkoWyIgIGJvcmRlci1yYWRpdXM6OXB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246YmFja2dyb3VuZCAuNXM7IiwiICIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJiYWNrZ3JvdW5kOiMwMDAwMDA7Il0pfSxEKCkmJk9iamVjdChDLmMpKFsiYm9yZGVyLXJhZGl1czowOyJdKSk7ZnVuY3Rpb24gSnQoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9lbihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9lbihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIGVuKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gdG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmNvbnRhY3Rmb3JtSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6IiBNMjcgMjIuNzU3YzAgMS4yNC0uOTg4IDIuMjQzLTIuMTkgMi4yNDNINy4xOUM1Ljk4IDI1IDUgMjMuOTk0IDUgMjIuNzU3VjEzLjY3YzAtLjU1Ni4zOS0uNzczLjg1NS0uNDk2bDguNzggNS4yMzhjLjc4Mi40NjcgMS45NS40NjcgMi43MyAwbDguNzgtNS4yMzhjLjQ3Mi0uMjguODU1LS4wNjMuODU1LjQ5NXY5LjA4N3oifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiIgTTI3IDkuMjQzQzI3IDguMDA2IDI2LjAyIDcgMjQuODEgN0g3LjE5QzUuOTg4IDcgNSA4LjAwNCA1IDkuMjQzdi40NjVjMCAuNTU0LjM4NSAxLjIzMi44NTcgMS41MTRsOS42MSA1LjczM2MuMjY3LjE2LjguMTYgMS4wNjcgMGw5LjYxLTUuNzMzYy40NzMtLjI4My44NTYtLjk2Ljg1Ni0xLjUxNHYtLjQ2NXoifSkpfXZhciBubj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xNXZnYmh0LTAifSkoWyJtYXJnaW46NjBweCAwIDYwcHggMDtsaW5lLWhlaWdodDoyM3B4OyYgYXtjb2xvcjojMTExO2ZvbnQtc2l6ZToyNnB4O3RleHQtZGVjb3JhdGlvbjpub25lO3VuaWNvZGUtYmlkaTpwbGFpbnRleHQ7fSJdKSxybj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xNXZnYmh0LTEifSkoWyJtYXJnaW46MzBweCAyNXB4IDIwcHggMjVweDt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzOyIsIjsmIGltZ3t3aWR0aDoxNTBweDttYXJnaW46MCBhdXRvO30mIGF7Y29sb3I6IzExMTtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MTBweDtmb250LXNpemU6MjZweDt0ZXh0LWRlY29yYXRpb246bm9uZTt1bmljb2RlLWJpZGk6cGxhaW50ZXh0O30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5pc0xvYWRpbmcmJk9iamVjdChDLmMpKFsib3BhY2l0eTouMTU7Il0pfSk7ZnVuY3Rpb24gb24oZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9hbihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9hbihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIGFuKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gbG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmRpc2NvcmRJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiItMTcuNiAwIDE2MC4xNCA5Ni4zNiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTA3LjcsOC4wN0ExMDUuMTUsMTA1LjE1LDAsMCwwLDgxLjQ3LDBhNzIuMDYsNzIuMDYsMCwwLDAtMy4zNiw2LjgzQTk3LjY4LDk3LjY4LDAsMCwwLDQ5LDYuODMsNzIuMzcsNzIuMzcsMCwwLDAsNDUuNjQsMCwxMDUuODksMTA1Ljg5LDAsMCwwLDE5LjM5LDguMDlDMi43OSwzMi42NS0xLjcxLDU2LjYuNTQsODAuMjFoMEExMDUuNzMsMTA1LjczLDAsMCwwLDMyLjcxLDk2LjM2LDc3LjcsNzcuNywwLDAsMCwzOS42LDg1LjI1YTY4LjQyLDY4LjQyLDAsMCwxLTEwLjg1LTUuMThjLjkxLS42NiwxLjgtMS4zNCwyLjY2LTJhNzUuNTcsNzUuNTcsMCwwLDAsNjQuMzIsMGMuODcuNzEsMS43NiwxLjM5LDIuNjYsMmE2OC42OCw2OC42OCwwLDAsMS0xMC44Nyw1LjE5LDc3LDc3LDAsMCwwLDYuODksMTEuMUExMDUuMjUsMTA1LjI1LDAsMCwwLDEyNi42LDgwLjIyaDBDMTI5LjI0LDUyLjg0LDEyMi4wOSwyOS4xMSwxMDcuNyw4LjA3Wk00Mi40NSw2NS42OUMzNi4xOCw2NS42OSwzMSw2MCwzMSw1M3M1LTEyLjc0LDExLjQzLTEyLjc0UzU0LDQ2LDUzLjg5LDUzLDQ4Ljg0LDY1LjY5LDQyLjQ1LDY1LjY5Wm00Mi4yNCwwQzc4LjQxLDY1LjY5LDczLjI1LDYwLDczLjI1LDUzczUtMTIuNzQsMTEuNDQtMTIuNzRTOTYuMjMsNDYsOTYuMTIsNTMsOTEuMDgsNjUuNjksODQuNjksNjUuNjlaIn0pKX1mdW5jdGlvbiBjbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykudGVhbXNJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiItMjAzLjMyNDk1IC01MTguMzMzNSAyODk3LjQ4MjkgMzExMC4wMDEiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTE1NTQuNjM3IDc3Ny41aDU3NS43MTNjNTQuMzkxIDAgOTguNDgzIDQ0LjA5MiA5OC40ODMgOTguNDgzdjUyNC4zOThjMCAxOTkuOTAxLTE2Mi4wNTEgMzYxLjk1Mi0zNjEuOTUyIDM2MS45NTJoLTEuNzExYy0xOTkuOTAxLjAyOC0zNjEuOTc1LTE2Mi0zNjIuMDA0LTM2MS45MDFWODI4Ljk3MWMuMDAxLTI4LjQyNyAyMy4wNDUtNTEuNDcxIDUxLjQ3MS01MS40NzF6IixmaWxsOiIjNTA1OUM5In0pLEguYS5jcmVhdGVFbGVtZW50KCJjaXJjbGUiLHtyOiIyMzMuMjUiLGN5OiI0NDAuNTgzIixjeDoiMTk0My43NSIsZmlsbDoiIzUwNTlDOSJ9KSxILmEuY3JlYXRlRWxlbWVudCgiY2lyY2xlIix7cjoiMzM2LjkxNyIsY3k6IjMzNi45MTciLGN4OiIxMjE4LjA4MyIsZmlsbDoiIzdCODNFQiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xNjY3LjMyMyA3NzcuNUg3MTcuMDFjLTUzLjc0MyAxLjMzLTk2LjI1NyA0NS45MzEtOTUuMDEgOTkuNjc2djU5OC4xMDVjLTcuNTA1IDMyMi41MTkgMjQ3LjY1NyA1OTAuMTYgNTcwLjE2NyA1OTguMDUzIDMyMi41MS03Ljg5MyA1NzcuNjcxLTI3NS41MzQgNTcwLjE2Ny01OTguMDUzVjg3Ny4xNzZjMS4yNDUtNTMuNzQ1LTQxLjI2OC05OC4zNDYtOTUuMDExLTk5LjY3NnoiLGZpbGw6IiM3QjgzRUIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTI0NCA3NzcuNXY4MzguMTQ1Yy0uMjU4IDM4LjQzNS0yMy41NDkgNzIuOTY0LTU5LjA5IDg3LjU5OGE5MS44NTYgOTEuODU2IDAgMDEtMzUuNzY1IDcuMjU3SDY2Ny42MTNjLTYuNzM4LTE3LjEwNS0xMi45NTgtMzQuMjEtMTguMTQyLTUxLjgzM2E2MzEuMjg3IDYzMS4yODcgMCAwMS0yNy40NzItMTgzLjQ5Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMSJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMTkyLjE2NyA3NzcuNXY4ODkuOTc4YTkxLjgwMiA5MS44MDIgMCAwMS03LjI1NyAzNS43NjVjLTE0LjYzNCAzNS41NDEtNDkuMTYzIDU4LjgzMy04Ny41OTggNTkuMDlINjkxLjk3NWMtOC44MTItMTcuMTA1LTE3LjEwNS0zNC4yMS0yNC4zNjItNTEuODMzLTcuMjU3LTE3LjYyMy0xMi45NTgtMzQuMjEtMTguMTQyLTUxLjgzM2E2MzEuMjgyIDYzMS4yODIgMCAwMS0yNy40NzItMTgzLjQ5Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMTkyLjE2NyA3NzcuNXY3ODYuMzEyYy0uMzk1IDUyLjIyMy00Mi42MzIgOTQuNDYtOTQuODU1IDk0Ljg1NWgtNDQ3Ljg0QTYzMS4yODIgNjMxLjI4MiAwIDAxNjIyIDE0NzUuMTc3Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMTQwLjMzMyA3NzcuNXY3ODYuMzEyYy0uMzk1IDUyLjIyMy00Mi42MzIgOTQuNDYtOTQuODU1IDk0Ljg1NUg2NDkuNDcyQTYzMS4yODIgNjMxLjI4MiAwIDAxNjIyIDE0NzUuMTc3Vjg3Ny4wMmMtMS4yNDYtNTMuNjU5IDQxLjE5OC05OC4xOSA5NC44NTUtOTkuNTJ6IixvcGFjaXR5OiIuMiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMjQ0IDUwOS41MjJ2MTYzLjI3NWMtOC44MTIuNTE4LTE3LjEwNSAxLjAzNy0yNS45MTcgMS4wMzctOC44MTIgMC0xNy4xMDUtLjUxOC0yNS45MTctMS4wMzdhMjg0LjQ3MiAyODQuNDcyIDAgMDEtNTEuODMzLTguMjkzYy0xMDQuOTYzLTI0Ljg1Ny0xOTEuNjc5LTk4LjQ2OS0yMzMuMjUtMTk4LjAwM2EyODguMDIgMjg4LjAyIDAgMDEtMTYuNTg3LTUxLjgzM2gyNTguNjQ4YzUyLjMwNS4xOTggOTQuNjU3IDQyLjU0OSA5NC44NTYgOTQuODU0eiIsb3BhY2l0eToiLjEifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE5Mi4xNjcgNTYxLjM1NXYxMTEuNDQyYTI4NC40NzIgMjg0LjQ3MiAwIDAxLTUxLjgzMy04LjI5M2MtMTA0Ljk2My0yNC44NTctMTkxLjY3OS05OC40NjktMjMzLjI1LTE5OC4wMDNoMTkwLjIyOGM1Mi4zMDQuMTk4IDk0LjY1NiA0Mi41NSA5NC44NTUgOTQuODU0eiIsb3BhY2l0eToiLjIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE5Mi4xNjcgNTYxLjM1NXYxMTEuNDQyYTI4NC40NzIgMjg0LjQ3MiAwIDAxLTUxLjgzMy04LjI5M2MtMTA0Ljk2My0yNC44NTctMTkxLjY3OS05OC40NjktMjMzLjI1LTE5OC4wMDNoMTkwLjIyOGM1Mi4zMDQuMTk4IDk0LjY1NiA0Mi41NSA5NC44NTUgOTQuODU0eiIsb3BhY2l0eToiLjIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE0MC4zMzMgNTYxLjM1NXYxMDMuMTQ4Yy0xMDQuOTYzLTI0Ljg1Ny0xOTEuNjc5LTk4LjQ2OS0yMzMuMjUtMTk4LjAwM2gxMzguMzk1YzUyLjMwNS4xOTkgOTQuNjU2IDQyLjU1MSA5NC44NTUgOTQuODU1eiIsb3BhY2l0eToiLjIifSksSC5hLmNyZWF0ZUVsZW1lbnQoImxpbmVhckdyYWRpZW50Iix7Z3JhZGllbnRUcmFuc2Zvcm06Im1hdHJpeCgxIDAgMCAtMSAwIDIwNzUuMzMzKSIseTI6IjM5NC4yNjEiLHgyOiI5NDIuMjM0Iix5MToiMTY4My4wNzMiLHgxOiIxOTguMDk5IixncmFkaWVudFVuaXRzOiJ1c2VyU3BhY2VPblVzZSIsaWQ6ImEifSxILmEuY3JlYXRlRWxlbWVudCgic3RvcCIse29mZnNldDoiMCIsc3RvcENvbG9yOiIjNWE2MmMzIn0pLEguYS5jcmVhdGVFbGVtZW50KCJzdG9wIix7b2Zmc2V0OiIuNSIsc3RvcENvbG9yOiIjNGQ1NWJkIn0pLEguYS5jcmVhdGVFbGVtZW50KCJzdG9wIix7b2Zmc2V0OiIxIixzdG9wQ29sb3I6IiMzOTQwYWIifSkpLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTk1LjAxIDQ2Ni41aDk1MC4zMTJjNTIuNDczIDAgOTUuMDEgNDIuNTM4IDk1LjAxIDk1LjAxdjk1MC4zMTJjMCA1Mi40NzMtNDIuNTM4IDk1LjAxLTk1LjAxIDk1LjAxSDk1LjAxYy01Mi40NzMgMC05NS4wMS00Mi41MzgtOTUuMDEtOTUuMDFWNTYxLjUxYzAtNTIuNDcyIDQyLjUzOC05NS4wMSA5NS4wMS05NS4wMXoiLGZpbGw6InVybCgjYSkifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNODIwLjIxMSA4MjguMTkzaC0xODkuOTd2NTE3LjI5N2gtMTIxLjAzVjgyOC4xOTNIMzIwLjEyM1Y3MjcuODQ0aDUwMC4wODh6IixmaWxsOiIjRkZGIn0pKX1mdW5jdGlvbiB1bihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuZW1haWxJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMzIgMzIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTE5LjYsMTkuNDdBNSw1LDAsMSwxLDIxLDE2djEuNWExLjUsMS41LDAsMCwwLDMsMFYxNmE4LDgsMCwxLDAtNC45NCw3LjRBMSwxLDAsMCwxLDIwLDI1LjE4bC0uMTQuMDZBMTAsMTAsMCwxLDEsMjYsMTZ2MS41YTMuNSwzLjUsMCwwLDEtNi40LDJaTTE2LDE5YTMsMywwLDEsMC0zLTNBMywzLDAsMCwwLDE2LDE5WiJ9KSl9ZnVuY3Rpb24gc24oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmNhbGVuZGFySWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIix0cmFuc2Zvcm06InNjYWxlKDAuODUpIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMjQuNSAyNCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNy43NSAyLjVDNy43NSAyLjA4NTc5IDcuNDE0MjEgMS43NSA3IDEuNzVDNi41ODU3OSAxLjc1IDYuMjUgMi4wODU3OSA2LjI1IDIuNVY0LjA3OTI2QzQuODEwNjcgNC4xOTQ1MSAzLjg2NTc3IDQuNDc3MzcgMy4xNzE1NyA1LjE3MTU3QzIuNDc3MzcgNS44NjU3NyAyLjE5NDUxIDYuODEwNjcgMi4wNzkyNiA4LjI1SDIxLjkyMDdDMjEuODA1NSA2LjgxMDY3IDIxLjUyMjYgNS44NjU3NyAyMC44Mjg0IDUuMTcxNTdDMjAuMTM0MiA0LjQ3NzM3IDE5LjE4OTMgNC4xOTQ1MSAxNy43NSA0LjA3OTI2VjIuNUMxNy43NSAyLjA4NTc5IDE3LjQxNDIgMS43NSAxNyAxLjc1QzE2LjU4NTggMS43NSAxNi4yNSAyLjA4NTc5IDE2LjI1IDIuNVY0LjAxMjlDMTUuNTg0NyA0IDE0LjgzOSA0IDE0IDRIMTBDOS4xNjA5NyA0IDguNDE1MjcgNCA3Ljc1IDQuMDEyOVYyLjVaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbFJ1bGU6ImV2ZW5vZGQiLGQ6Ik0yIDEyQzIgMTEuMTYxIDIgMTAuNDE1MyAyLjAxMjkgOS43NUgyMS45ODcxQzIyIDEwLjQxNTMgMjIgMTEuMTYxIDIyIDEyVjE0QzIyIDE3Ljc3MTIgMjIgMTkuNjU2OSAyMC44Mjg0IDIwLjgyODRDMTkuNjU2OSAyMiAxNy43NzEyIDIyIDE0IDIySDEwQzYuMjI4NzYgMjIgNC4zNDMxNSAyMiAzLjE3MTU3IDIwLjgyODRDMiAxOS42NTY5IDIgMTcuNzcxMiAyIDE0VjEyWk0xNyAxNEMxNy41NTIzIDE0IDE4IDEzLjU1MjMgMTggMTNDMTggMTIuNDQ3NyAxNy41NTIzIDEyIDE3IDEyQzE2LjQ0NzcgMTIgMTYgMTIuNDQ3NyAxNiAxM0MxNiAxMy41NTIzIDE2LjQ0NzcgMTQgMTcgMTRaTTE3IDE4QzE3LjU1MjMgMTggMTggMTcuNTUyMyAxOCAxN0MxOCAxNi40NDc3IDE3LjU1MjMgMTYgMTcgMTZDMTYuNDQ3NyAxNiAxNiAxNi40NDc3IDE2IDE3QzE2IDE3LjU1MjMgMTYuNDQ3NyAxOCAxNyAxOFpNMTMgMTNDMTMgMTMuNTUyMyAxMi41NTIzIDE0IDEyIDE0QzExLjQ0NzcgMTQgMTEgMTMuNTUyMyAxMSAxM0MxMSAxMi40NDc3IDExLjQ0NzcgMTIgMTIgMTJDMTIuNTUyMyAxMiAxMyAxMi40NDc3IDEzIDEzWk0xMyAxN0MxMyAxNy41NTIzIDEyLjU1MjMgMTggMTIgMThDMTEuNDQ3NyAxOCAxMSAxNy41NTIzIDExIDE3QzExIDE2LjQ0NzcgMTEuNDQ3NyAxNiAxMiAxNkMxMi41NTIzIDE2IDEzIDE2LjQ0NzcgMTMgMTdaTTcgMTRDNy41NTIyOCAxNCA4IDEzLjU1MjMgOCAxM0M4IDEyLjQ0NzcgNy41NTIyOCAxMiA3IDEyQzYuNDQ3NzIgMTIgNiAxMi40NDc3IDYgMTNDNiAxMy41NTIzIDYuNDQ3NzIgMTQgNyAxNFpNNyAxOEM3LjU1MjI4IDE4IDggMTcuNTUyMyA4IDE3QzggMTYuNDQ3NyA3LjU1MjI4IDE2IDcgMTZDNi40NDc3MiAxNiA2IDE2LjQ0NzcgNiAxN0M2IDE3LjU1MjMgNi40NDc3MiAxOCA3IDE4WiJ9KSl9dmFyIGZuPUMuZC5pZnJhbWUud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTE5bnpuamMtMCJ9KShbImhlaWdodDozNTZweDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAxNTBweCk7Ym9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5Oi4xNTsiXSl9LEQoKSYmT2JqZWN0KEMuYykoWyJ3aWR0aDoxMDAlO2hlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1N3B4KTsiXSkpO2Z1bmN0aW9uIGRuKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/cG4oZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/cG4oZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBwbihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfXZhciBtbj1DLmQuaWZyYW1lLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xdXcwamMxLTAifSkoWyJoZWlnaHQ6NDA0cHg7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMTkwcHgpO2JvcmRlcjpub25lO292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjVzO3dpZHRoOjEwMCU7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5OjA7Il0pfSxEKCkmJk9iamVjdChDLmMpKFsiaGVpZ2h0OjEwMHZoO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDUwcHgpOyJdKSksaG49ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmZhY2Vib29rSWNvbixyPXQuaXNQcm8sdD10LmlzU2luZ2xlO3JldHVybiByJiZuP0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6bixzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZ0P3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xNiA2QzkuOTI1IDYgNSAxMC41NiA1IDE2LjE4NWMwIDMuMjA1IDEuNiA2LjA2NSA0LjEgNy45MzJWMjhsMy43NDUtMi4wNTZjMSAuMjc3IDIuMDU4LjQyNiAzLjE1NS40MjYgNi4wNzUgMCAxMS00LjU2IDExLTEwLjE4NUMyNyAxMC41NiAyMi4wNzUgNiAxNiA2em0xLjA5MyAxMy43MTZsLTIuOC0yLjk4OC01LjQ2NyAyLjk4OCA2LjAxMy02LjM4MyAyLjg2OCAyLjk4OCA1LjM5OC0yLjk4Ny02LjAxMyA2LjM4M3oifSkpfTtmdW5jdGlvbiBnbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2JuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP2JuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gYm4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiB5bigpe3ZhciBlPShhPU9iamVjdChGLnVzZUNvbnRleHQpKFYpKS5zdGF0ZSx0PShhPWEuc2V0dGluZ3MpLmZhY2Vib29rLG49YS5mYWNlYm9va0xhYmVsLHI9YS5mYWNlYm9va0NvbG9yLG89YS5iZ1N0eWxlLGE9YS5hY3RpdmF0b3JTaXplLGk9KHM9Z24oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSlbMF0sbD1zWzFdO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtsKCJmYWNlYm9vayI9PT1lLmJ1dHRvblBvcHVwKX0pO3ZhciBjPShzPWduKE9iamVjdChGLnVzZVN0YXRlKSghMCksMikpWzBdLHU9c1sxXSxzPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7ImZhY2Vib29rIj09PWUuYnV0dG9uUG9wdXAmJnUoITApfSxbZS5idXR0b25Qb3B1cF0pLCJodHRwczovL3d3dy5mYWNlYm9vay5jb20vcGx1Z2lucy9wYWdlLnBocD9ocmVmPWh0dHBzJTNBJTJGJTJGd3d3LmZhY2Vib29rLmNvbSUyRiIuY29uY2F0KHQsIiZ0YWJzPW1lc3NhZ2VzJndpZHRoPTMwMiZoZWlnaHQ9MzAwJnNtYWxsX2hlYWRlcj10cnVlJmFkYXB0X2NvbnRhaW5lcl93aWR0aD10cnVlJmhpZGVfY292ZXI9dHJ1ZSZzaG93X2ZhY2VwaWxlPWZhbHNlJmFwcElkIikpO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjpyLG1lc3NlbmdlclRpdGxlOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudChobixudWxsKSxlbmFibGVQb3B1cDppLGJnU3R5bGU6byxzaXplOmF9LGMmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQod24se29uTG9hZDpmdW5jdGlvbihlKXt1KCExKX0sc2Nyb2xsaW5nOiJubyIsZnJhbWVCb3JkZXI6IjAiLGFsbG93dHJhbnNwYXJlbmN5OiJ0cnVlIixzcmM6c30pKX1mdW5jdGlvbiB2bihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuZ29vZ2xlbWFwSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiJyZ2IoMjM0LCA2NywgNTMpIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoicmdiKDIzNCwgNjcsIDUzKSIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMTIwIDEyMCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNjAsNy41QTM0LjU3LDM0LjU3LDAsMCwwLDI1LjQzLDQyLjA3QzI1LjQzLDYzLjIzLDQwLDcyLjgsNTAuMjgsODguOWM3LDExLDUuNTcsMTcuNiw5LjcyLDE3LjZzMi42OS02LjU4LDkuNzItMTcuNkM4MCw3Mi44LDk0LjU3LDYzLjIzLDk0LjU3LDQyLjA3QTM0LjU3LDM0LjU3LDAsMCwwLDYwLDcuNVptMCw0Ny44MUExMy4yNCwxMy4yNCwwLDEsMSw3My4yNCw0Mi4wNywxMy4yNCwxMy4yNCwwLDAsMSw2MCw1NS4zMVoifSkpfXZhciB3bj1DLmQuaWZyYW1lLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xOTQyYTQ2LTAifSkoWyJib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjAgMCAxNnB4IDE2cHg7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjMwMnB4O2hlaWdodDozMDBweDsiXSkseG49ZnVuY3Rpb24oZSx0KXtyZXR1cm4hIWUmJm51bGw9PT10JiZuZXcgRGF0ZShlKTxuZXcgRGF0ZSgiMjAyMi0wNS0yMCIpfTtmdW5jdGlvbiBrbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1NuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1NuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gU24oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBDbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuaW5zdGFncmFtSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Im0yMC45NzM1NSw1bC05Ljg4NTM3LDBjLTMuMzU3MDIsMCAtNi4wODgxOCwyLjczMTI5IC02LjA4ODE4LDYuMDg4MzFsMCw5Ljg4NTM3YzAsMy4zNTcxNSAyLjczMTE2LDYuMDg4MzEgNi4wODgxOCw2LjA4ODMxbDkuODg1MzcsMGMzLjM1NzI4LDAgNi4wODg0NCwtMi43MzEyOSA2LjA4ODQ0LC02LjA4ODMxbDAsLTkuODg1MzdjMC4wMDAxMywtMy4zNTcwMiAtMi43MzExNiwtNi4wODgzMSAtNi4wODg0NCwtNi4wODgzMXptNC4xMzExMywxNS45NzM2OGMwLDIuMjc3ODIgLTEuODUzMTgsNC4xMzA4NyAtNC4xMzEsNC4xMzA4N2wtOS44ODU1LDBjLTIuMjc3NjksMC4wMDAxMyAtNC4xMzA3NCwtMS44NTMwNSAtNC4xMzA3NCwtNC4xMzA4N2wwLC05Ljg4NTM3YzAsLTIuMjc3NjkgMS44NTMwNSwtNC4xMzA4NyA0LjEzMDc0LC00LjEzMDg3bDkuODg1MzcsMGMyLjI3NzgyLDAgNC4xMzEsMS44NTMxOCA0LjEzMSw0LjEzMDg3bDAsOS44ODUzN2wwLjAwMDEzLDB6In0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoibTE2LjAzMSwxMC4zNDY0NGMtMy4xMzQ2NiwwIC01LjY4NDgyLDIuNTUwMTYgLTUuNjg0ODIsNS42ODQ4MmMwLDMuMTM0NTMgMi41NTAxNiw1LjY4NDU2IDUuNjg0ODIsNS42ODQ1NmMzLjEzNDY2LDAgNS42ODQ4MiwtMi41NTAwMyA1LjY4NDgyLC01LjY4NDU2YzAsLTMuMTM0NjYgLTIuNTUwMTYsLTUuNjg0ODIgLTUuNjg0ODIsLTUuNjg0ODJ6bTAsOS40MTE4Yy0yLjA1NTE5LDAgLTMuNzI3MzcsLTEuNjcxOTIgLTMuNzI3MzcsLTMuNzI3MTFjMCwtMi4wNTUzMiAxLjY3MjA1LC0zLjcyNzM3IDMuNzI3MzcsLTMuNzI3MzdjMi4wNTUzMiwwIDMuNzI3MzcsMS42NzIwNSAzLjcyNzM3LDMuNzI3MzdjMCwyLjA1NTE5IC0xLjY3MjE4LDMuNzI3MTEgLTMuNzI3MzcsMy43MjcxMXoifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJtMjEuOTU0MjMsOC42ODY2NmMtMC4zNzcxMywwIC0wLjc0NzYxLDAuMTUyNjggLTEuMDEzOTYsMC40MjAyYy0wLjI2NzY1LDAuMjY2MjEgLTAuNDIxNSwwLjYzNjgyIC0wLjQyMTUsMS4wMTUyNmMwLDAuMzc3MjcgMC4xNTM5OSwwLjc0Nzc0IDAuNDIxNSwxLjAxNTI2YzAuMjY2MjEsMC4yNjYyMSAwLjYzNjgyLDAuNDIwMiAxLjAxMzk2LDAuNDIwMmMwLjM3ODQ0LDAgMC43NDc3NCwtMC4xNTM5OSAxLjAxNTI2LC0wLjQyMDJjMC4yNjc1MiwtMC4yNjc1MiAwLjQyMDIsLTAuNjM4MTMgMC40MjAyLC0xLjAxNTI2YzAsLTAuMzc4NDQgLTAuMTUyNjgsLTAuNzQ5MDUgLTAuNDIwMiwtMS4wMTUyNmMtMC4yNjYyMSwtMC4yNjc1MiAtMC42MzY4MiwtMC40MjAyIC0xLjAxNTI2LC0wLjQyMDJ6In0pKX1mdW5jdGlvbiBFbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykubGluZUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZpZXdCb3g6IjAgMCAzMiAzMiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMjcgMTQuOTI2QzI3IDEwLjAwNiAyMi4wNjUgNiAxNiA2UzUgMTAuMDA1IDUgMTQuOTI2YzAgNC40MTMgMy45MTMgOC4xMSA5LjIgOC44MDguMzU4LjA3Ny44NDUuMjM2Ljk2OC41NDIuMTEyLjI3OC4wNzMuNzEzLjAzNi45OTVsLS4xNTcuOTQyYy0uMDQ4LjI4LS4yMiAxLjA4OC45NTMuNTkzIDEuMTc0LS40OTQgNi4zMzQtMy43MyA4LjY0Mi02LjM4NkMyNi4yMzYgMTguNjcgMjcgMTYuODk2IDI3IDE0LjkyNXptLTQuMjQ3LS40MWEuNTc3LjU3NyAwIDAgMSAwIDEuMTUzaC0xLjYxdjEuMDNoMS42MWEuNTc4LjU3OCAwIDAgMSAwIDEuMTU1aC0yLjE4NmEuNTc4LjU3OCAwIDAgMS0uNTc3LS41Nzd2LTQuMzdjMC0uMzIuMjYtLjU3OC41NzctLjU3OGgyLjE4NmEuNTc4LjU3OCAwIDAgMSAwIDEuMTUzaC0xLjYxdjEuMDMzaDEuNjF6bS0zLjUzNyAyLjc2MmEuNTc1LjU3NSAwIDAgMS0uNTc4LjU3Ny41OC41OCAwIDAgMS0uNDYtLjIzbC0yLjI0LTMuMDV2Mi43MDNhLjU3Ny41NzcgMCAwIDEtMS4xNTQgMHYtNC4zN2EuNTc3LjU3NyAwIDAgMSAxLjAzOC0uMzQ3bDIuMjQgMy4wNXYtMi43MDNhLjU3OC41NzggMCAwIDEgMS4xNTQgMHY0LjM3em0tNS4yNiAwYS41NzcuNTc3IDAgMCAxLTEuMTU0IDB2LTQuMzdhLjU3Ny41NzcgMCAwIDEgMS4xNTMgMHY0LjM3em0tMi4yNjIuNTc3SDkuNTA4YS41NzcuNTc3IDAgMCAxLS41NzYtLjU3N3YtNC4zN2EuNTc3LjU3NyAwIDAgMSAxLjE1MyAwVjE2LjdoMS42MWEuNTc3LjU3NyAwIDAgMSAwIDEuMTU1eiJ9KSl9dmFyIE9uPUMuZC5pZnJhbWUud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTE3dGI2d3YtMCJ9KShbImhlaWdodDo0MDBweDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAxMDBweCk7Ym9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7d2lkdGg6MTAwJTsiLCI7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuaXNMb2FkaW5nJiZPYmplY3QoQy5jKShbIm9wYWNpdHk6MDsiXSl9LEQoKT9PYmplY3QoQy5jKShbImhlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1MHB4KTtib3JkZXItcmFkaXVzOjA7Il0pOk9iamVjdChDLmMpKFsiIiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ29vZ2xlbWFwQ3VzdG9tTWVzc2FnZT9PYmplY3QoQy5jKShbImJvcmRlci1yYWRpdXM6MDsiXSk6T2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjAgMCA5cHggOXB4OyJdKX0pKTtmdW5jdGlvbiBqbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP0FuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP0FuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gQW4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBQbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykubGlua0ljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZpZXdCb3g6Ii00IC00IDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLHg6IjBweCIseToiMHB4In0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNywyNWEyLjM4LDIuMzgsMCwwLDEtMS42OC0uN0wuNywxOS43M2EyLjM4LDIuMzgsMCwwLDEsMC0zLjM3bDUuMjItNS4yMmEyLjM3LDIuMzcsMCwwLDEsMS42OS0uN2gwYTIuMzUsMi4zNSwwLDAsMSwxLjY4LjcxbC45Mi45Mkw4LjgsMTMuNDhsLS45My0uOTNjLS4xLS4xLS4yMS0uMTQtLjI3LS4xMmEuMzkuMzksMCwwLDAtLjI3LjEyTDIuMTEsMTcuNzhhLjM5LjM5LDAsMCwwLDAsLjU0bDQuNTcsNC41N2EuMzkuMzksMCwwLDAsLjU0LDBsNS4yMi01LjIyYS4zOS4zOSwwLDAsMCwuMTItLjI4LjM2LjM2LDAsMCwwLS4xMS0uMjZsLS45NC0uOTQsMS40MS0xLjQyLjkzLjkzYTIuMzQsMi4zNCwwLDAsMSwuNywxLjY3LDIuMzcsMi4zNywwLDAsMS0uNywxLjdMOC42NCwyNC4zQTIuMzgsMi4zOCwwLDAsMSw3LDI1Wm0xLjM2LTYuOUw2LjksMTYuNjksMTYuNjksNi45LDE4LjEsOC4zMVptOS4wOC0zLjU0aDBhMi4zNSwyLjM1LDAsMCwxLTEuNjgtLjcxbC0uOTItLjkyLDEuNDItMS40MS45My45M2EuMzcuMzcsMCwwLDAsLjI3LjEyLjM5LjM5LDAsMCwwLC4yNy0uMTJsNS4yMi01LjIyYS4zOS4zOSwwLDAsMCwwLS41NEwxOC4zMiwyLjExYS4zOS4zOSwwLDAsMC0uNTQsMEwxMi41Niw3LjMzYS4zOS4zOSwwLDAsMC0uMTIuMjguMzYuMzYsMCwwLDAsLjExLjI2bC45NC45NC0xLjQxLDEuNDItLjkzLS45M2EyLjM0LDIuMzQsMCwwLDEtLjctMS42NywyLjM3LDIuMzcsMCwwLDEsLjctMS43TDE2LjM2LjdhMi4zOSwyLjM5LDAsMCwxLDMuMzcsMEwyNC4zLDUuMjdhMi4zOCwyLjM4LDAsMCwxLDAsMy4zN2wtNS4yMiw1LjIyQTIuMzcsMi4zNywwLDAsMSwxNy4zOSwxNC41NloifSkpfWZ1bmN0aW9uIEluKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5saW5rZWRpbkljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIixmaWxsUnVsZToiZXZlbm9kZCJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUiLGZpbGxSdWxlOiJldmVub2RkIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgNzIgNzIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTU3LDU1SDQ4Ljc4VjQxYzAtMy44NC0xLjQ2LTYtNC40OS02LTMuMzEsMC01LDIuMjMtNSw2VjU1SDMxLjMzVjI4LjMzaDcuOTJ2My42YTkuMzIsOS4zMiwwLDAsMSw4LTQuNDFDNTMsMjcuNTIsNTcsMzEsNTcsMzguMTJaTTIxLjg4LDI0Ljg0YTQuOTIsNC45MiwwLDEsMSw0Ljg5LTQuOTJBNC45LDQuOSwwLDAsMSwyMS44OCwyNC44NFpNMTcuNzksNTVoOC4yNlYyOC4zM0gxNy43OVoifSkpfWZ1bmN0aW9uIF9uKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5za3lwZUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDUxMiA1MTIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTQzNi45LDI5Ni44YzIuOC0xMi41LDQuMi0yNS40LDQuMi0zOC43YzAtOTkuNy04Mi0xODAuNi0xODMuMi0xODAuNmMtMTAuNywwLTIxLjEsMC45LTMxLjMsMi42ICBDMjEwLjMsNjkuOSwxOTEsNjQsMTcwLjIsNjRDMTExLjYsNjQsNjQsMTEwLjksNjQsMTY4LjdjMCwxOS40LDUuMywzNy41LDE0LjYsNTNjLTIuNCwxMS43LTMuNywyMy45LTMuNywzNi4zICBjMCw5OS44LDgyLDE4MC42LDE4My4xLDE4MC42YzExLjUsMCwyMi43LTEsMzMuNS0zYzE1LDcuOSwzMi4xLDEyLjQsNTAuMiwxMi40YzU4LjcsMCwxMDYuMi00Ni45LDEwNi4yLTEwNC43ICBDNDQ4LDMyNi42LDQ0NCwzMTAuOCw0MzYuOSwyOTYuOHogTTM1MS45LDM0NC4zYy04LjUsMTEuOC0yMSwyMS4yLTM3LjIsMjcuOGMtMTYuMSw2LjYtMzUuMyw5LjktNTcuMyw5LjkgIGMtMjYuMywwLTQ4LjMtNC42LTY1LjYtMTMuNmMtMTIuMy02LjYtMjIuNC0xNS40LTMwLjItMjYuNGMtNy44LTExLTExLjctMjItMTEuNy0zMi42YzAtNi42LDIuNi0xMi4zLDcuNi0xNy4xYzUtNC42LDExLjUtNywxOS4xLTcgIGM2LjMsMCwxMS43LDEuOCwxNi4xLDUuNWM0LjIsMy41LDcuOCw4LjcsMTAuNywxNS41YzMuMyw3LjMsNi44LDEzLjUsMTAuNiwxOC40YzMuNiw0LjcsOC43LDguNiwxNS4zLDExLjcgIGM2LjcsMy4xLDE1LjYsNC43LDI2LjYsNC43YzE1LjEsMCwyNy41LTMuMiwzNi44LTkuNWM5LjItNi4xLDEzLjYtMTMuNSwxMy42LTIyLjVjMC03LjEtMi4zLTEyLjctNy4xLTE3LjEgIGMtNS00LjYtMTEuNS04LjItMTkuNi0xMC42Yy04LjMtMi42LTE5LjYtNS4zLTMzLjYtOC4yYy0xOS00LTM1LjEtOC44LTQ4LTE0LjJjLTEzLjEtNS41LTIzLjctMTMuMi0zMS41LTIyLjcgIGMtNy45LTkuNy0xMS44LTIxLjktMTEuOC0zNi4yYzAtMTMuNyw0LjItMjUuOSwxMi40LTM2LjVjOC4yLTEwLjUsMjAuMS0xOC43LDM1LjYtMjQuM2MxNS4yLTUuNiwzMy4zLTguNCw1My43LTguNCAgYzE2LjQsMCwzMC43LDEuOSw0Mi43LDUuNWMxMi4xLDMuNywyMi4yLDguNywzMC4zLDE0LjljOCw2LjIsMTQsMTIuOCwxNy44LDE5LjdjMy44LDcsNS43LDEzLjksNS43LDIwLjZjMCw2LjQtMi41LDEyLjMtNy41LDE3LjQgIGMtNSw1LjEtMTEuMyw3LjgtMTguOCw3LjhjLTYuOCwwLTEyLjEtMS42LTE1LjgtNC44Yy0zLjQtMy03LTcuNi0xMC45LTE0LjNjLTQuNi04LjUtMTAuMS0xNS4zLTE2LjQtMjAuMWMtNi4yLTQuNi0xNi40LTctMzAuNi03ICBjLTEzLjEsMC0yMy44LDIuNi0zMS43LDcuN2MtNy42LDQuOS0xMS4zLDEwLjYtMTEuMywxNy4zYzAsNC4xLDEuMiw3LjUsMy43LDEwLjVjMi42LDMuMSw2LjIsNS45LDEwLjksOC4yICBjNC44LDIuNCw5LjgsNC4zLDE0LjcsNS42YzUuMSwxLjQsMTMuNiwzLjUsMjUuMyw2LjFjMTQuOSwzLjEsMjguNSw2LjcsNDAuNSwxMC40YzEyLjIsMy45LDIyLjcsOC42LDMxLjMsMTQuMSAgYzguOCw1LjYsMTUuNywxMi45LDIwLjcsMjEuNWM0LjksOC42LDcuNCwxOS40LDcuNCwzMS44QzM2NC44LDMxOC45LDM2MC41LDMzMi41LDM1MS45LDM0NC4zeiJ9KSl9ZnVuY3Rpb24gem4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnNsYWNrSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmVyc2lvbjoiMS4xIix2aWV3Qm94OiIwIDAgMTY4IDE2OCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNDcuMiwxMDBBMTMuMiwxMy4yLDAsMSwxLDM0LDg2LjhINDcuMlptNi42LDBhMTMuMiwxMy4yLDAsMCwxLDI2LjQsMHYzM2ExMy4yLDEzLjIsMCwwLDEtMjYuNCwwWiIsZmlsbDoiI2UwMWU1YSJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik02Nyw0N0ExMy4yLDEzLjIsMCwxLDEsODAuMiwzMy44VjQ3Wm0wLDYuN2ExMy4yLDEzLjIsMCwxLDEsMCwyNi40SDMzLjlhMTMuMiwxMy4yLDAsMCwxLDAtMjYuNFoiLGZpbGw6IiMzNmM1ZjAifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTE5LjksNjYuOWExMy4yLDEzLjIsMCwxLDEsMTMuMiwxMy4ySDExOS45Wm0tNi42LDBhMTMuMiwxMy4yLDAsMCwxLTI2LjQsMFYzMy44YTEzLjIsMTMuMiwwLDAsMSwyNi40LDBaIixmaWxsOiIjMmViNjdkIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTEwMC4xLDExOS44QTEzLjIsMTMuMiwwLDEsMSw4Ni45LDEzM1YxMTkuOFptMC02LjZhMTMuMiwxMy4yLDAsMSwxLDAtMjYuNGgzMy4xYTEzLjIsMTMuMiwwLDEsMSwwLDI2LjRaIixmaWxsOiIjZWNiMjJlIn0pKX1mdW5jdGlvbiBUbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykuc21zSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7dmlld0JveDoiMCAwIDMyIDMyIixzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yMSAyM2g0LjAxYzEuMSAwIDEuOTktLjg5MyAxLjk5LTEuOTk0VjguOTk0QzI3IDcuODk0IDI2LjExIDcgMjUuMDEgN0g2Ljk5QzUuODkgNyA1IDcuODkzIDUgOC45OTR2MTIuMDEyQzUgMjIuMTA2IDUuODkgMjMgNi45OSAyM2g5LjU2NmwzLjExNCAzLjUwNGMuNzMuODIgMS4zMy42MDIgMS4zMy0uNVYyM3pNMTAuNTE1IDEyLjE2NWMuMzYuMTEuNjgyLjI2Ljk2Mi40NDZsLS40MTMuODhhMy44ODIgMy44ODIgMCAwIDAtLjkxNS0uNDE2IDIuOSAyLjkgMCAwIDAtLjgyLS4xMzZjLS4zIDAtLjUzNi4wNTQtLjcwNy4xNmEuNTEyLjUxMiAwIDAgMC0uMjU2LjQ2YzAgLjE3My4wNTUuMzIuMTY3LjQzNy4xMS4xMi4yNTIuMjE0LjQyLjI4NS4xNy4wNzIuNDA4LjE1Mi43MTQuMjQuNC4xMi43MjUuMjM2Ljk3Ny4zNS4yNTIuMTE3LjQ2Ny4yOS42NDQuNTE4LjE3Ny4yMjguMjY2LjUyNi4yNjYuODkyIDAgLjM0NC0uMDk1LjY0Ny0uMjg1LjkwNy0uMTkuMjYtLjQ1My40Ni0uNzkuNi0uMzM4LjE0LS43MjQuMjEyLTEuMTYuMjEyLS40NSAwLS44ODgtLjA4Ni0xLjMxLS4yNTVhMy42NzMgMy42NzMgMCAwIDEtMS4xMS0uNjg0bC40MzQtLjg2M2MuMy4yNzYuNjI4LjQ5Ljk4NS42NC4zNTYuMTUuNjk1LjIyNCAxLjAxNy4yMjQuMzUgMCAuNjIyLS4wNjMuODE2LS4xOWEuNTk4LjU5OCAwIDAgMCAuMjkyLS41MjguNjE4LjYxOCAwIDAgMC0uMTc0LS40NSAxLjIxMiAxLjIxMiAwIDAgMC0uNDMtLjI4IDkuNjUgOS42NSAwIDAgMC0uNzEzLS4yMzcgNy40MTQgNy40MTQgMCAwIDEtLjk3Ny0uMzQ3IDEuNzUgMS43NSAwIDAgMS0uNjM3LS40OThjLS4xNzctLjIyLS4yNjYtLjUxLS4yNjYtLjg3NyAwLS4zMzQuMDktLjYyNS4yNy0uODc0LjE4LS4yNS40MzQtLjQ0My43Ni0uNTc4LjMyNC0uMTM1LjctLjIwMiAxLjEyNy0uMjAyLjM4IDAgLjc1LjA1NSAxLjExLjE2NXptNy43MzIgNS44bC0uMDEtNC40MjQtMS44NyAzLjgwNmgtLjY1M2wtMS44NjctMy44MDV2NC40MjZoLS45NDJWMTIuMDRoMS4xODZsMS45NTUgMy45MzggMS45NDUtMy45MzdoMS4xNzh2NS45MjZoLS45MnptNS43MjgtNS44Yy4zNi4xMS42OC4yNi45NjIuNDQ2bC0uNDEzLjg4YTMuODgyIDMuODgyIDAgMCAwLS45MTUtLjQxNiAyLjkgMi45IDAgMCAwLS44Mi0uMTM2Yy0uMyAwLS41MzcuMDU0LS43MDcuMTZhLjUxMi41MTIgMCAwIDAtLjI1Ny40NmMwIC4xNzMuMDU2LjMyLjE2OC40MzcuMTEuMTIuMjUyLjIxNC40Mi4yODUuMTcuMDcyLjQwOC4xNTIuNzE0LjI0LjQuMTIuNzI1LjIzNi45NzcuMzUuMjUyLjExNy40NjcuMjkuNjQ0LjUxOC4xNzcuMjI4LjI2Ni41MjYuMjY2Ljg5MiAwIC4zNDQtLjA5NS42NDctLjI4NS45MDctLjE5LjI2LS40NTMuNDYtLjc5LjYtLjMzOC4xNC0uNzI0LjIxMi0xLjE2LjIxMi0uNDUgMC0uODg4LS4wODYtMS4zMS0uMjU1YTMuNjczIDMuNjczIDAgMCAxLTEuMTEtLjY4NGwuNDM0LS44NjNjLjMuMjc2LjYyOC40OS45ODUuNjQuMzU2LjE1LjY5NS4yMjQgMS4wMTcuMjI0LjM1IDAgLjYyMi0uMDYzLjgxNi0uMTlhLjU5OC41OTggMCAwIDAgLjI5LS41MjguNjE4LjYxOCAwIDAgMC0uMTcyLS40NSAxLjIxMiAxLjIxMiAwIDAgMC0uNDMtLjI4IDkuNjUgOS42NSAwIDAgMC0uNzEzLS4yMzcgNy40MTQgNy40MTQgMCAwIDEtLjk3Ny0uMzQ3IDEuNzUgMS43NSAwIDAgMS0uNjM3LS40OThjLS4xNzctLjIyLS4yNjYtLjUxLS4yNjYtLjg3NyAwLS4zMzQuMDktLjYyNS4yNy0uODc0LjE4LS4yNS40MzQtLjQ0My43Ni0uNTc4LjMyNC0uMTM1LjctLjIwMiAxLjEyNi0uMjAyLjM4IDAgLjc1LjA1NSAxLjExMi4xNjV6In0pKX12YXIgTG49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWNnd21tYy0wIn0pKFsibWFyZ2luOjI1cHggMjBweDsiXSk7ZnVuY3Rpb24gTW4oZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9SbihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9SbihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIFJuKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gTm4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnNuYXBjaGF0SWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDUxMiA1MTIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoibSAyNTQuMjMxOTIsNjcuNzQ1NjU2IGMgLTI0LjE1NTMsMC4xNjUzNiAtNDkuMTMzMyw2LjU3NjE2IC02OC43MTg4LDIyLjA2MjUgLTE0LjY2NywxMS41Nzc2NTQgLTI2LjE5OTE2LDI2LjkyMTE2NCAtMzMuNDY4NzEsNDQuMDYyNTA0IC0wLjAxMDksMC4wNDE1IC0wLjAyMTMsMC4wODMyIC0wLjAzMTIsMC4xMjUgLTYuOTIzNTgsMTcuNjYyMDYgLTYuMjgyNDEsMzYuNDU5MDggLTUuMzQzNzUsNTMuODc1IDQuOWUtNCwwLjAxMDYgLTQuOWUtNCwwLjAyMDcgMCwwLjAzMTIgMC41NzA0NiwxMi4yNDExMSAxLjkxOTIsMjQuMDkxODIgMC43ODEyNSwzNS4zNDM3NSAtMC4wOTE5LDAuNDM4MDIgLTAuMDk2LDAuNTQ3NzYgLTAuMTU2MjUsMC44MTI1IC01LjQ0NTE2LDAuOTg3MDEgLTExLjM3MiwwLjYyOTAyIC0xNy4yNSwtMC41IC0wLjAzMTIsLTIuOWUtNCAtMC4wNjI1LC0yLjllLTQgLTAuMDkzNywwIC00LjAyNjM5LC0wLjY5MzA2IC04LjMyNzk3LC0yLjM1MjI5IC0xMy4xODc1LC0zLjcxODc1IC0wLjA4MjgsLTAuMDIzIC0wLjE2NjE1LC0wLjA0MzggLTAuMjUsLTAuMDYyNSAtNC43MTYzMywtMS4wNzgyNCAtOS4zNTI0MiwwLjI5NTAxIC0xMi45MDYyNSwyLjkzNzUgLTAuMDQ1NywwLjAyOTYgLTAuMTA5ODUsMC4wNjM1IC0wLjE1NjI1LDAuMDkzNyAtMC4wNzEsMC4wNTQgLTAuMTQ4NjUsMC4xMDEyNCAtMC4yMTg3NSwwLjE1NjI1IC0yLjg5MjY1LDEuOTE1NiAtNi44NTQ5NzgsNS4xMzE5NyAtNy4wNjI0OTgsMTAuNzE4NzUgLTAuMDA5LDAuMzY2NTUgMC4wMjI1LDAuNzM0MDcgMC4wOTM3LDEuMDkzNzUgMC42MjQ2NCwzLjI4Mjk5IDIuNjQ0MDcsNS42ODM0MyA0LjQzNzQ5OCw3LjI1IDEuNzkzNDIsMS41NjY1NyAzLjQ4Nzc4LDIuNjAxMTkgNC41MzEyNSwzLjQwNjI1IDAuMDgxNCwwLjA2NTEgMC4xNjQ3NCwwLjEyNzYyIDAuMjUsMC4xODc1IDguNzk2OTUsNS45MzUxNCAxOC41MzI4MSw4LjU0Mjk5IDI3LDExLjg0Mzc1IDAuMDA5LDAuMDAzIDAuMDIyNSwtMC4wMDMgMC4wMzEyLDAgNS44NjIwNSwyLjU5NzMxIDEwLjk1NTkyLDYuNjM2MDkgMTIuMTI1LDExLjcxODc1IDEuNDU5NzcsNi40MjcxMyAtMS4yNDY4LDEzLjgwNTU4IC00Ljc4MTI1LDIwLjk2ODc1IC0wLjAwNCwwLjAwOSAwLjAwNCwwLjAyMjYgMCwwLjAzMTIgLTkuNTMzMzQsMTguOTg1NjUgLTIzLjY5MDg5LDM1LjQ5NjA5IC00MS4wOTM3NDgsNDcuNTkzNzUgLTkuMTIzNzQsNi4yOTUxMSAtMTkuNDE2NTI1LDEwLjk5NDUgLTMwLjE1NjMwNSwxMy45MDY0IC0wLjE0ODE0OSwwLjA0NTMgLTAuMjk0MTkyLDAuMDk3NCAtMC40Mzc1LDAuMTU2MjUgLTIuMjAzNzQsMC44Mjk4NiAtNy40MjkyNCwxLjM3MjQ3IC0xMC43MTg3NSw2LjM3NSAtMC4yMzM3OTMsMC4zNDkzNyAtMC40MjMyODIsMC43MjgzNSAtMC41NjI1LDEuMTI1IC0xLjEwOTIzLDMuMjE2OCAwLjE1NjIsNi42NzA1OCAxLjcxODc1LDguNTYyNSAxLjQ5MjEsMS44MDY2MiAzLjE1NjY3LDIuODU3ODYgNC41OTM3NSwzLjYyNSAwLjA3MzUsMC4wNDMgMC4xNDUxLDAuMDgyNCAwLjIxODc1LDAuMTI1IDkuMDQyNzYsNS4yMjYwOCAxOC45MTg1OTUsNy40OTE1NyAyNy45Mzc1MDUsOS44MTI1IDAuMDQxNSwwLjAxMDkgMC4wODMyLDAuMDIxMyAwLjEyNSwwLjAzMTIgNi40OTgxLDEuNDc5NzcgMTIuNDg4NzM4LDIuMjcwMjkgMTcuMzc0OTk4LDQuMzc1IDAuMjM5MjMsMC40MDIzNCAwLjcyODUyLDIuMDU4MzIgMS44NzUsNC44MTI1IDEuNjAxNTEsNC45OTk2OCAyLjMyOTUyLDEwLjkwMzcgNC4xODc1LDE3LjA5Mzc1IDAuNTA4MDQsMS43MTM0MiAyLjAwMjI1LDMuMDk1NTYgMy43NSwzLjQ2ODc1IDQuMTA0LDAuODcxOTMgNi4zNjExOSwtMC41MzYxNyA2LjcxODc1LC0wLjU2MjUgMC4xNjc1OCwtMC4wMTI0IDAuMzM0NTIsLTAuMDMzMyAwLjUsLTAuMDYyNSAxNS4xMDAxOSwtMi42NDY4IDMwLjE2ODM1LC00Ljk5MzgzIDQzLjk5OTk2LC0xLjUgMC4wMSwwLjAwMyAwLjAyMSwtMC4wMDMgMC4wMzEsMCAxNC41MTYsMy44MjM2MyAyNy4xMzA5LDEzLjkxNDQ2IDQxLjM0MzgsMjIuNTkzNzUgMC4wMjUsMC4wMTU0IDAuMDM3LDAuMDQ3MSAwLjA2MiwwLjA2MjUgbCAwLC0wLjAzMTIgYyA5LjQzNDIsNS45ODY0NiAyMC4zMzkzLDExLjg0ODUgMzIuOTM3NSwxMi4yODEyNSBsIDAsMC4wMzEyIGMgMC4wNDIsMTBlLTQgMC4wODMsLTEwZS00IDAuMTI1LDAgOS41MTU1LDAuNTM4OTYgMTguODU1LC0wLjA2NTcgMjcuOTY4NywtMC42ODc1IDAuMDUyMSw4LjFlLTQgMC4xMDQyLDguMWUtNCAwLjE1NjMsMCA3LjgwMzgsLTAuNzczMDIgMTUuMzgwNywtMy4zNzAwMiAyMiwtNy42MjUgMC4wOTQsLTAuMDUzNSAwLjE4NzYsLTAuMTAyNTggMC4yODEyLC0wLjE1NjI1IDE0Ljk0NTIsLTguNTYzNDQgMjguMjI1OCwtMTguODgyMzQgNDIuNzgxMywtMjUuMzQzNzUgMC4wMjEsLTAuMDA4IDAuMDQyLC0wLjAyMzcgMC4wNjIsLTAuMDMxMiA0LjcyMDgsLTEuNzExNTcgMTAuNjE4OSwtMS42MTUwNiAxNy4xODc1LC0yLjA2MjUgMC4wNjIsLTAuMDAyIDAuMTI1LDAuMDAyIDAuMTg3NSwwIDEyLjA1MjcsLTAuMzcyMSAyNC4xMjgzLDAuMjc0MTQgMzYuMDkzNywxLjg3NSAwLjQxNDQ4LDAuMDUyMiAwLjgzNTUyLDAuMDUyMiAxLjI1LDAgMS41NzE0LC0wLjE4NjQgMy4yODg5LC0xLjI0MTU1IDQuMTI1LC0yLjMxMjUgMC44MzYxLC0xLjA3MDk1IDEuMDc3LC0xLjk0MzE4IDEuMjUsLTIuNTYyNSAwLjM0NjIsLTEuMjM4NjQgMC42NjcsLTEuODMxMDIgMC4wOTQsLTAuODEyNSAwLjE4MTcsLTAuMzE2MDYgMC4zMjg3LC0wLjY1MjA1IDAuNDM3NSwtMSAyLjE5NzEsLTcuMjgwMDIgMy4zOTI1LC0xMy44Njc5NyA2LjkzNzUsLTE3Ljk2ODc1IDEuNTkyOSwtMS41NTcxNiA0LjMzNCwtMi4zMzg4NiA3LjQzNzUsLTIuMjgxMjUgMC4yMjk1MiwwLjAwNSAwLjQ1OTQxLC0wLjAwNSAwLjY4NzUsLTAuMDMxMiAxMC40MDI0LC0xLjIzMTMzIDE5LjgwNTIsLTQuOTg2OTYgMjguNzE4OCwtOC4xODc1IDAuMTA1NTYsLTAuMDM4MiAwLjIwOTg0LC0wLjA3OTkgMC4zMTI2LC0wLjEyNTA1IDMuMzExMywtMS40NDM0MSA4LjI0NTMsLTMuMDk5NjMgMTEuNjI1LC03Ljg0Mzc1IDAuMDE4LC0wLjAyNTQgMC4wNDQsLTAuMDM2OSAwLjA2MiwtMC4wNjI1IGwgLTAuMDMxLC0wLjAzMTIgYyAyLjg0MjgsLTMuOTcyNSAxLjUyMywtOS40MjQ2OSAtMi41LC0xMS45MDYyNSBsIDAuMDYyLC0wLjA2MjUgYyAtMC4xMjc1LC0wLjA4NjcgLTAuMjQ3NCwtMC4xMzU5NSAtMC4zNzUsLTAuMjE4NzUgLTAuMDM0LC0wLjAxODYgLTAuMDU5LC0wLjA0NDQgLTAuMDk0LC0wLjA2MjUgbCAwLDAuMDMxMiBjIC00LjgyNTksLTMuMTAwMDYgLTkuNjYxMiwtMy41MzA5MiAtMTIuNzE4NywtNC42NTYyNSAtMC4wNjIxLC0wLjAyMjEgLTAuMTI0NiwtMC4wNDI5IC0wLjE4NzUsLTAuMDYyNSAtMjAuNjg3MiwtNi42MzU2OCAtMzguNTc3OCwtMjAuOTIxMTEgLTUxLjkzNzUsLTM4LjMxMjUgLTcuNDE3MiwtOS42OTEyOSAtMTMuNjg5OSwtMjAuMjIyMDIgLTE3Ljg0MzgsLTMxLjQ2ODc1IC0wLjAxNCwtMC4wNDEgLTAuMDE4LC0wLjA4NCAtMC4wMzEsLTAuMTI1IC0xLjYyNjIsLTQuODgzNTMgLTEuNzA3NywtMTAuMjA5MDIgMC42ODc1LC0xMy40Mzc1IDAuMDMxNywtMC4wMzA4IDAuMDYzMSwtMC4wNjIgMC4wOTQsLTAuMDkzNyAzLjczNjYsLTUuMzY4MzkgMTAuNTkzNSwtOC44MTg3OCAxNy45MDYzLC0xMS41MzEyNSAwLjAzLC0wLjAxMDQgMC4wNjQsLTAuMDIwOCAwLjA5NCwtMC4wMzEyIDguMDgxOSwtMi44MTE1NyAxNi45MjYzLC02LjA4Njg2IDI0LjIxODcsLTEyLjU2MjUgMC4wMzE4LC0wLjAzMDggMC4wNjMxLC0wLjA2MiAwLjA5NCwtMC4wOTM3IDEuMTI4MywtMS4wNjY5NSAyLjQ4NTIsLTIuNDU2MDIgMy41LC00LjUzMTI1IDEuMDE0OSwtMi4wNzUyMyAxLjQ5NjEsLTUuMzEwMzIgMC4xNTYzLC04LjEyNSAzZS01LC0wLjAxMDQgM2UtNSwtMC4wMjA4IDAsLTAuMDMxMiAtMi4xMDQ0LC00LjMzNTQ5IC01Ljc3NCwtNi41NjYyIC04LjUsLTguMTg3NSAtMC4wMTAzLC0zZS01IC0wLjAyMDcsLTNlLTUgLTAuMDMxLDAgLTQuNTY3MywtMi42NjU5MiAtOS44ODE2LC0yLjgzODg3IC0xNC41LC0xLjM0Mzc1IC0wLjAxLDAuMDAzIC0wLjAyMSwtMC4wMDMgLTAuMDMxLDAgLTAuMDMxLDAuMDEwMSAtMC4wNjMsMC4wMjEgLTAuMDk0LDAuMDMxMiAtNC45ODkyLDEuNTE4MzUgLTkuMDYyNCwzLjMzMzkxIC0xMi44NDM4LDMuODEyNSAtMC4wODM5LDAuMDE4NyAtMC4xNjcyMiwwLjAzOTUgLTAuMjUsMC4wNjI1IC01LjM3MzcsMC45NTc3NyAtMTAuNTc3MywxLjE4Nzc5IC0xNC42MjUsLTAuMzEyNSAtMC4wMzgsLTAuNjA2NDkgLTAuMDU3LC0xLjc5MDEzIC0wLjIxODcsLTMuMjUgbCAwLjAzMSwwIGMgLTAuMjk4OCwtOC45MTUzIDAuNDU2NSwtMTguMTA2MDQgMC41OTM3LC0yNy42MjUgM2UtNCwtMC4wMjEyIC0zZS00LC0wLjA0MTMgMCwtMC4wNjI1IDAuNDExMiwtMTQuNDYzMTggMC45OTQ4LC0yOS4zNTI5NSAtMS4xMjUsLTQ0LjM0Mzc1IC0wLjAwOSwtMC4wNzMxIC0wLjAxOTEsLTAuMTQ2MDcgLTAuMDMxLC0wLjIxODc1IC00LjYxNTQsLTI1LjI4NzUzIC0yMC42ODcsLTQ3LjA2NzM2IC00MS4wNjI1LC02MS41NjI1MDQgLTE0LjgxMjEsLTEwLjUwOTg3IC0zMi4zOTcyLC0xNi4zNzU4MSAtNTAuMjUsLTE4LjAzMTI1IC0wLjAxLC0wLjAwMSAtMC4wMjEsMC4wMDEgLTAuMDMxLDAgLTUuOTkxMiwtMC42MDQ4NyAtMTEuOTc0MSwtMC44MTk0NSAtMTcuOTM3NSwtMC43NSB6In0pKX12YXIgRG49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtdzB5OWo1LTAifSkoWyJtYXJnaW46NjBweCAwIDYwcHggMDtsaW5lLWhlaWdodDoyM3B4OyYgYXtjb2xvcjojMTExO2ZvbnQtc2l6ZToyNnB4O3RleHQtZGVjb3JhdGlvbjpub25lO3VuaWNvZGUtYmlkaTpwbGFpbnRleHQ7fSJdKTtmdW5jdGlvbiBVbihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP0JuKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP0JuKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gQm4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBGbihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykudGVsZWdyYW1JY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiItOCAtMTcgMTMwIDEzMCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNODguNzIzLDEyLjE0MkM3Ni40MTksMTcuMjM4LDIzLjY2MSwzOS4wOTEsOS4wODQsNDUuMDQ3Yy05Ljc3NiwzLjgxNS00LjA1Myw3LjM5Mi00LjA1Myw3LjM5MiAgICBzOC4zNDUsMi44NjEsMTUuNDk5LDUuMDA3YzcuMTUzLDIuMTQ2LDEwLjk2OC0wLjIzOCwxMC45NjgtMC4yMzhsMzMuNjItMjIuNjUyYzExLjkyMi04LjEwNyw5LjA2MS0xLjQzMSw2LjE5OSwxLjQzMSAgICBjLTYuMTk5LDYuMi0xNi40NTIsMTUuOTc1LTI1LjAzNiwyMy44NDRjLTMuODE1LDMuMzM4LTEuOTA4LDYuMTk5LTAuMjM4LDcuNjNjNi4xOTksNS4yNDYsMjMuMTI5LDE1Ljk3NiwyNC4wODIsMTYuNjkxICAgIGM1LjAzNywzLjU2NiwxNC45NDUsOC42OTksMTYuNDUyLTIuMTQ2YzAsMCw1Ljk2MS0zNy40MzUsNS45NjEtMzcuNDM1YzEuOTA4LTEyLjYzNywzLjgxNS0yNC4zMjEsNC4wNTMtMjcuNjU5ICAgIEM5Ny4zMDcsOC44MDQsODguNzIzLDEyLjE0Miw4OC43MjMsMTIuMTQyeiJ9KSl9ZnVuY3Rpb24gSG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnRpa3Rva0ljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiIzAwMCIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiMwMDAiLHN0cm9rZToibm9uZSJ9LHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDEyMCAxMjAiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTQ5LjY3LDQ5Ljk0YTI2LjM3LDI2LjM3LDAsMCwxLDQuNjEuMjhWNjYuMzNDNDMsNjIuNTYsMzEuNjgsNzUuNjcsMzkuNDQsODcuMTQsMTUuNDIsNzUuNDIsNDkuNjcsNDkuOTQsNDkuNjcsNDkuOTRabTI1LjU1LTM0aDQuNHMtLjg3LDcuNDUsNS41MiwxNC43NmwuMDkuMDlDODEsMjkuNjksNzQuNjIsMjEuNTYsNzUuMjIsMTUuOTFabTI2LjUsMjIuMjJWNTMuOTFDODQuNDQsNTIuMDYsNzkuODMsNDcsNzkuNjQsNDYuODV2MzIuNkM3OS4zLDEwNCw0OS40MywxMTksMjkuNDEsOTkuNjRsMCwwYTI5LjksMjkuOSwwLDAsMCwxNi4zMiw0Ljg4QzYyLjA4LDEwNC45MSw3NS4yLDkwLDc1LDc1LjU3VjQzYy4yMS4xMiwyMi4wOC01LjMsMjIuMDgtNS4zQTE0LjkzLDE0LjkzLDAsMCwwLDEwMS43MiwzOC4xM1oiLGZpbGw6IiNlZTFkNTIifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNOTcuMDksMzcuNjdWNTBhNTQuOTQsNTQuOTQsMCwwLDEtOS43Ny0xLjMzQzc4LjI1LDQ2LjUsNzUuMiw0My4wOSw3NSw0M3YzMi42YTMyLjg3LDMyLjg3LDAsMCwxLTEuOTMsMTAuMTJDNzAuMzgsOTIuNSw2Mi4yNSwxMDUsNDUuNzcsMTA0LjU2YTMwLjEsMzAuMSwwLDAsMS0xNi4zMi00Ljg4bDAsMGMtNy4xNi01LjM5LTEwLTEzLjE0LTEwLTI0LjQ1LjMxLTcuNTQsOS43NS0yNS4yNywzMC4yMy0yNS4yN1Y2Mi40M3MtNi4zNS0yLjEtMTEuNDQsMS42MmMtMy41NSwyLjc2LTUuNDQsNS40NC02LDEwLjI1LDAsMy41My44NSw4LjUyLDUuNTksMTEuODYuNTYuMzYsMS4xLjY5LDEuNjQsMSwyLjc5LDMsMTIuNTcsMy42NSwxNy4yOSwxLjExLDYuOTItMy43Miw2Ljg4LTcyLjM0LDYuODgtNzIuMzRINzUuMmEyMiwyMiwwLDAsMCw1LjMxLDEwLjg4LDI1LjgyLDI1LjgyLDAsMCwwLDQuNyw0LDI0LjQ1LDI0LjQ1LDAsMCwwLDYuNDYsNC45NCwyNC45NCwyNC45NCwwLDAsMCw1LjQyLDJaIixmaWxsOiIjZmZmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTM5LjU2LDUyLjA2QzI4Ljk0LDU1Ljc1LDIxLjUsNjYuODgsMjEsNzguNjJjLS40MiwxMC44Nyw1LDE3LjQ0LDguMzcsMjEuMDYtNC4wOS0yLjIxLTEzLjY2LTkuMy0xMy0yNC45NC44OC0yMCwxNy4zMi0zMC4yMSwzMy4yNi0yOC4zOXYzLjU5QTM1Ljc0LDM1Ljc0LDAsMCwwLDM5LjU2LDUyLjA2WiIsZmlsbDoiIzY5YzlkMCJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik03NS4yMiwxNS45MUg2My42NVY3Ny4zNmExOS4wNiwxOS4wNiwwLDAsMS0uNzEsNi4zMywxMi44NywxMi44NywwLDAsMS03LDcuNjZjLTUsMi04Ljg3LDEuNzctMTMuNS0xLjNhMTIuNDQsMTIuNDQsMCwwLDEtMy0yLjg5YzQsMi4xLDcuNDksMi4wNiwxMS44Ni4zMWExMi43MiwxMi43MiwwLDAsMCw3LTcuNjZBMTguNSwxOC41LDAsMCwwLDU5LDczLjQ5VjEySDc1QTEzLjcsMTMuNywwLDAsMCw3NS4yMiwxNS45MVpNOTcuMDksMzQuMjV2My40MmEyNC45NCwyNC45NCwwLDAsMS01LjQyLTIsMjQuNzUsMjQuNzUsMCwwLDEtNi40Ni00Ljk0LDE4LjY2LDE4LjY2LDAsMCwwLDEuODQsMS4wNkM5MS4xMywzMy44NSw5NS4xMywzNC40Nyw5Ny4wOSwzNC4yNVoiLGZpbGw6IiM2OWM5ZDAifSkpfWZ1bmN0aW9uIFZuKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS50d2l0dGVySWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiLTM1MCAtMzUwIDE5MDAgMTkyNyIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNNzE0LjE2MyA1MTkuMjg0TDExNjAuODkgMEgxMDU1LjAzTDY2Ny4xMzcgNDUwLjg4N0wzNTcuMzI4IDBIMEw0NjguNDkyIDY4MS44MjFMMCAxMjI2LjM3SDEwNS44NjZMNTE1LjQ5MSA3NTAuMjE4TDg0Mi42NzIgMTIyNi4zN0gxMjAwTDcxNC4xMzcgNTE5LjI4NEg3MTQuMTYzWk01NjkuMTY1IDY4Ny44MjhMNTIxLjY5NyA2MTkuOTM0TDE0NC4wMTEgNzkuNjk0NEgzMDYuNjE1TDYxMS40MTIgNTE1LjY4NUw2NTguODggNTgzLjU3OUwxMDU1LjA4IDExNTAuM0g4OTIuNDc2TDU2OS4xNjUgNjg3Ljg1NFY2ODcuODI4WiJ9KSl9ZnVuY3Rpb24gJG4oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLnZpYmVySWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yMS4xNzYgMjdjLS4yMDgtLjA2Mi0uNjE4LS4xMy0uOTg3LS4zMDMtNi40NzYtMy4wMi0xMS4xOC03Ljk3Mi0xMy44NTMtMTUuMDgyLS44OTctMi4zODMuMDQtNC4zOTYgMi4yOTgtNS4yMi40MDUtLjE0Ny44MDItLjE1NyAxLjIuMDAyLjk2NC4zODMgMy40MDQgNC4wMjIgMy40NTggNS4xMS4wNDIuODM1LS40OCAxLjI4Ny0xIDEuNjctLjk4My43MjItLjk4OCAxLjYzOC0uNTY4IDIuNjYuOTQ4IDIuMzA4IDIuNTY3IDMuODk1IDQuNjYzIDQuOTI1Ljc2LjM3NCAxLjQ4OC4zMzcgMi4wMDctLjUxNS45MjUtMS41MTggMi4wNi0xLjQ0NSAzLjMtLjUwMi42Mi40NzMgMS4yNTMuOTM2IDEuODQ0IDEuNDUuOC43MDIgMS44MTYgMS4yODUgMS4zMzYgMi43NTQtLjUgMS41MjctMi4yMjYgMy4wNjYtMy43IDMuMDV6bS00Ljc2LTIwLjk4NmM0LjU0Ni4xNjYgOC40NiA0LjY3NyA4LjQwNiA5LjU0My0uMDA1LjQ3OC4xNTMgMS4xODUtLjUwNCAxLjE3Mi0uNjI4LS4wMTUtLjQ2NC0uNzMzLS41Mi0xLjIxLS42MDMtNS4xNjctMi43ODYtNy42MDYtNy41Mi04LjM5NC0uMzkyLS4wNjYtLjk5LjAyNi0uOTYtLjUzNS4wNDQtLjgzMy43NTQtLjUyMyAxLjA5Ny0uNTc2em02LjA3MiA4LjY3MmMtLjA0NS4zNTYuMTQ3Ljk2OC0uMzg1IDEuMDU2LS43Mi4xMTgtLjU4LS41OTUtLjY1LTEuMDUzLS40OC0zLjE0NC0xLjUtNC4yOTctNC40MjMtNS4wMDUtLjQzLS4xMDUtMS4xLS4wMzItLjk5LS43NS4xMDgtLjY4NS43MS0uNDUyIDEuMTY0LS4zOTMgMi45Mi4zOCA1LjMwNyAzLjEyNiA1LjI4NCA2LjE0NHptLTIuMjIyLS41NzNjLjAxMy4zOTgtLjAyNi44MTgtLjQ2Ljg3NC0uMzE0LjA0LS41Mi0uMjQ1LS41NTMtLjU5Ny0uMTItMS4yOTYtLjc1LTIuMDYyLTEuOTUtMi4yNy0uMzYtLjA2My0uNzEyLS4xOS0uNTQ0LS43MTUuMTEtLjM1Mi40MDgtLjM4Ny43MTItLjM5NiAxLjI5Ny0uMDM2IDIuODE1IDEuNjQ3IDIuNzk0IDMuMTAzeiJ9KSl9dmFyIFduPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXZ1NmF3eC0wIn0pKFsiZm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NjAwO21hcmdpbjo1cHggMCAxNXB4IDA7Il0pLEduPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXZ1NmF3eC0xIn0pKFsibWFyZ2luOjIxcHggMjBweCAwIDIwcHg7Il0pLHFuPUMuZC5pbWcud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXZ1NmF3eC0yIn0pKFsid2lkdGg6MjAwcHggIWltcG9ydGFudDtkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7bWFyZ2luOjAgYXV0byAhaW1wb3J0YW50OyJdKTtmdW5jdGlvbiBabihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1huKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1huKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gWG4oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgWW49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWJreGUxbi0wIn0pKFsibWFyZ2luOi01cHggMCAxNXB4IDA7Zm9udC1zaXplOjE2cHg7JiBpbWd7aGVpZ2h0OjIwMHB4O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOmF1dG87fSYgYXtjb2xvcjojMTExO3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtd2VpZ2h0OmJvbGQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsmIHNwYW57Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc2l6ZToxMnB4O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fX0iXSksUW49Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWJreGUxbi0xIn0pKFsibWFyZ2luOjE1cHggMjBweCAwIDIwcHg7bGluZS1oZWlnaHQ6MjNweDsiXSk7ZnVuY3Rpb24gS24oZSl7dmFyIGU9ZS5zaXplLHQ9KHI9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmNhbGxiYWNrSWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiLTQgLTQgNTYgNTYiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTI2LjQsMzMuOWMwLDAsNC0yLjYsNC44LTNjMC44LTAuNCwxLjctMC42LDIuMi0wLjJjMC44LDAuNSw3LjUsNC45LDguMSw1LjNjMC42LDAuNCwwLjgsMS41LDAuMSwyLjYgYy0wLjgsMS4xLTQuMyw1LjUtNS44LDUuNGMtMS41LDAtOC40LDAuNC0yMC4zLTExLjRDMy42LDIwLjcsNCwxMy44LDQsMTIuM2MwLTEuNSw0LjMtNS4xLDUuNC01LjhjMS4xLTAuOCwyLjItMC41LDIuNiwwLjEgYzAuNCwwLjYsNC44LDcuMyw1LjMsOC4xYzAuMywwLjUsMC4yLDEuNC0wLjIsMi4yYy0wLjQsMC44LTMsNC44LTMsNC44czAuNywyLjgsNSw3LjJDMjMuNSwzMy4yLDI2LjQsMzMuOSwyNi40LDMzLjl6In0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTM1LDlIMjV2NGgxMGMxLjEsMCwyLDAuOSwyLDJ2MTBoNFYxNUM0MSwxMS43LDM4LjMsOSwzNSw5eiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yOCwxNkwyMS4zLDExTDI4LDYifSkpfWZ1bmN0aW9uIEpuKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/ZXIoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/ZXIoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBlcihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIHRyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS52a29udGFrdGVJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMzIgMzIiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTI2LjcxMiAxMC45NnMtLjE2Ny0uNDgtMS4yMS0uMzQ4bC0zLjQ0Ny4wMjRhLjc4NS43ODUgMCAwIDAtLjQ1NS4wNzJzLS4yMDQuMTA4LS4zLjM3YTIyLjEgMjIuMSAwIDAgMS0xLjI4IDIuNjk1Yy0xLjUzMyAyLjYxLTIuMTU2IDIuNzU0LTIuNDA3IDIuNTg3LS41ODctLjM3Mi0uNDMtMS41MS0uNDMtMi4zMjMgMC0yLjU0LjM4Mi0zLjU5Mi0uNzU2LTMuODY4LS4zNy0uMDg0LS42NDYtLjE0NC0xLjYxNi0uMTU2LTEuMjMyLS4wMTItMi4yNzQgMC0yLjg2LjI4Ny0uMzk2LjE5My0uNjk1LjYyNC0uNTE1LjY0OC4yMjcuMDM2Ljc0Mi4xNDMgMS4wMTcuNTE1IDAgMCAuMy40OS4zNDcgMS41NjguMTMgMi45ODItLjQ4IDMuMzUzLS40OCAzLjM1My0uNDY2LjI1Mi0xLjI4LS4xNjctMi40NzgtMi42MzQgMCAwLS42OTQtMS4yMjItMS4yMzMtMi41NjMtLjA5Ny0uMjUtLjI4OC0uMzgzLS4yODgtLjM4M3MtLjIxNi0uMTY4LS41MjctLjIxNmwtMy4yOC4wMjRjLS41MDQgMC0uNjgzLjIyOC0uNjgzLjIyOHMtLjE4LjE5LS4wMTIuNTg3YzIuNTYyIDYuMDIyIDUuNDgzIDkuMDQgNS40ODMgOS4wNHMyLjY3IDIuNzkgNS43IDIuNTk3aDEuMzc2Yy40MTgtLjAzNS42MzQtLjI2My42MzQtLjI2M3MuMTkyLS4yMTQuMTgtLjYxYy0uMDI0LTEuODQzLjgzOC0yLjEyLjgzOC0yLjEyLjgzOC0uMjYyIDEuOTE1IDEuNzg1IDMuMDY1IDIuNTc1IDAgMCAuODc0LjYgMS41MzIuNDY3bDMuMDY0LS4wNDhjMS42MTctLjAxLjg1LTEuMzUyLjg1LTEuMzUyLS4wNi0uMTA4LS40NDItLjkzNC0yLjI4Ni0yLjY0Ny0xLjkxNi0xLjc4NC0xLjY2NS0xLjQ5Ni42NTgtNC41ODUgMS40MTMtMS44OCAxLjk3Ni0zLjAzIDEuNzk2LTMuNTJ6In0pKX1mdW5jdGlvbiBucihlKXt2YXIgZT1lLnNpemUsdD0ocj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncykud2F6ZUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJtZWRpdW0iPT09ZSYmcj97aGVpZ2h0OiIzMHB4IixtaW5XaWR0aDoiMzBweCIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9LHZlcnNpb246IjEuMSIsdmlld0JveDoiMCAwIDMzMCAzMzAiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTI5OSwxNDkuNTlhMTIxLDEyMSwwLDAsMC0zNS42Mi04Ni4xNCwxMjIuOTMsMTIyLjkzLDAsMCwwLTg2LjE0LTM1LjYyYy0zNy4zLDAtNzIuMTMsMTYuODctOTYsNDYuODZhMTIxLjM1LDEyMS4zNSwwLDAsMC0yNi4xNSw3NS43OFYxNzBjMCwxMC4xNi03LDE5LjY0LTIxLDIwLjUyLTMuMzYuMy02LjIyLDIuNTctNi4yMiw1LjkyLS41OSw5LjI4LDkuMjgsMjYuMTUsMjIuNywzOS41N2ExMTUuOSwxMTUuOSwwLDAsMCwzMiwyMywzMy45MywzMy45MywwLDAsMCw2Ni42LDEyLjkzaDI4LjMyYzMuNjUsMTkuMTQsMjMuNTgsMzIuMjYsNDQuODksMjUsMTguNTUtNi4yMSwyNi42NC0yNy4yMywxOS45My00NC40QTEzNywxMzcsMCwwLDAsMjYzLDIzNS45MmExMjAuMzksMTIwLjM5LDAsMCwwLDM2LTg2LjMzWk0xNzcuMTQsMjU4LjEySDE0OS40MWEzNCwzNCwwLDAsMC02MS43Ni0xMS44NHYuM2ExMDAuOSwxMDAuOSwwLDAsMS0yNy4yNC0yMC4yM2MtOS41Ny05LjU3LTE0LjktMTguMjUtMTcuMDctMjMuODhhMzEuNzIsMzEuNzIsMCwwLDAsMTYuMjgtOS41NywzMy4zOCwzMy4zOCwwLDAsMCw5LTIzVjE0OS42OEExMDguNTYsMTA4LjU2LDAsMCwxLDI1My44MSw3M2ExMDguNDQsMTA4LjQ0LDAsMCwxLTc2LjY3LDE4NS4xWm02Ny42OS0xMzUuNDdhMTMuNDcsMTMuNDcsMCwxLDEtMTMuNDItMTMuNTIsMTMuNDMsMTMuNDMsMCwwLDEsMTMuNDIsMTMuNTJabS04MS40LDBBMTMuNDcsMTMuNDcsMCwxLDEsMTUwLDEwOS4xM2ExMy40MywxMy40MywwLDAsMSwxMy40MiwxMy41MlpNMTU0LjE1LDE2N2E3LjE2LDcuMTYsMCwwLDAtNi4yMi0zLjk0LDYuOCw2LjgsMCwwLDAtNi4yMSw5LjU3LDU0LjMsNTQuMywwLDAsMCw5OC4yNywwLDYuNzUsNi43NSwwLDAsMC02LjIxLTkuNTdoLS4zYTYuMzcsNi4zNywwLDAsMC01LjkyLDMuOTQsNDAuNTcsNDAuNTcsMCwwLDEtNzMuNDEsMFoifSkpfWZ1bmN0aW9uIHJyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS53ZWNoYXRJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2ZXJzaW9uOiIxLjEiLHZpZXdCb3g6IjAgMCAxMDAgMTAwIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik02NS42OCwzNy43NWMtNy40Ny4zOS0xNCwyLjY1LTE5LjI1LDcuNzdhMjIuODcsMjIuODcsMCwwLDAtNy4xLDE5LjM2Yy0yLjkyLS4zNi01LjU4LS43NS04LjI1LTFhNS4xMyw1LjEzLDAsMCwwLTIuODEuNDdjLTIuNTksMS40Ny01LjA5LDMuMTMtOCw1LC41NC0yLjQ1Ljg5LTQuNiwxLjUyLTYuNjZhMi41NCwyLjU0LDAsMCwwLTEuMTYtMy4zNWMtOS02LjMzLTEyLjc1LTE1LjgxLTkuOTItMjUuNTcsMi42Mi05LDktMTQuNSwxNy43OC0xNy4zNUM0MC4zOCwxMi41MSw1My43OCwxNi40OCw2MSwyNmEyMi4zNiwyMi4zNiwwLDAsMSw0LjY1LDExLjhabS0zNC40LTNBMy40MywzLjQzLDAsMCwwLDI4LDMxLjI2YTMuMzQsMy4zNCwwLDEsMC0uMjEsNi42NywzLjQsMy40LDAsMCwwLDMuNTItMy4yMlptMTcuOTUtMy40NWEzLjQ0LDMuNDQsMCwwLDAtMy4zNywzLjQsMy4zNSwzLjM1LDAsMCwwLDMuNDYsMy4yOCwzLjM0LDMuMzQsMCwxLDAtLjA5LTYuNjhaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTgyLjQ3LDg0LjM0Yy0yLjM3LTEuMDYtNC41NC0yLjY0LTYuODUtMi44OHMtNC43MiwxLjA5LTcuMTMsMS4zNGEyMy44NCwyMy44NCwwLDAsMS0xOS4zMy02LjMxYy0xMC4zMS05LjU0LTguODMtMjQuMTUsMy4wOS0zMiwxMC42LTYuOTQsMjYuMTQtNC42MywzMy42MSw1LDYuNTMsOC40MSw1Ljc2LDE5LjU3LTIuMiwyNi42My0yLjMxLDItMy4xNCwzLjcyLTEuNjYsNi40MmE3LjQyLDcuNDIsMCwwLDEsLjQ3LDEuNzZaTTU1LjUzLDU4LjI2YTIuNzksMi43OSwwLDEsMC0yLjc5LTIuNjksMi44LDIuOCwwLDAsMCwyLjc5LDIuNjlaTTcyLjg5LDUyLjdhMi43NywyLjc3LDAsMCwwLTIuNzYsMi42NiwyLjc1LDIuNzUsMCwxLDAsMi43Ni0yLjY2WiJ9KSl9dmFyIG9yPUMuZC5pZnJhbWUud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLTFqbnU2bjItMCJ9KShbImhlaWdodDoyMjBweDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAxOTBweCk7Ym9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5Oi4xNTsiXSl9LEQoKSYmT2JqZWN0KEMuYykoWyJ3aWR0aDoxMDAlO2hlaWdodDoxMDB2aDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA1N3B4KTsiXSkpO2Z1bmN0aW9uIGFyKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aXIoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aXIoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBpcihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGxyKGUpe3ZhciB0PWUuc2l6ZSxuPXZvaWQgMCE9PShuPWUuaXNJdGVtSWNvbikmJm4sZT12b2lkIDA9PT0oZT1lLmNvbG9yKT8iI2ZmZiI6ZSxyPShhPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS53aGF0c2FwcEljb24sbz1hLmlzUHJvLGE9YS5pc1NpbmdsZTtyZXR1cm4gbyYmciYmITE9PT1uP0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6cixzaXplOnR9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7dmlld0JveDoiMCAwIDMyIDMyIixzdHlsZToid2FfaGVhZGVyX2ljb24iPT09bj97d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06bj97d2lkdGg6IjMwcHgiLGhlaWdodDoiMzBweCIsZmlsbDoiIi5jb25jYXQoZSksc3Ryb2tlOiJub25lIn06Im1lZGl1bSI9PT10JiZhP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn0seG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTkuMTEgMTcuMjA1Yy0uMzcyIDAtMS4wODggMS4zOS0xLjUxOCAxLjM5YS42My42MyAwIDAgMS0uMzE1LS4xYy0uODAyLS40MDItMS41MDQtLjgxNy0yLjE2My0xLjQ0Ny0uNTQ1LS41MTYtMS4xNDYtMS4yOS0xLjQ2LTEuOTYzYS40MjYuNDI2IDAgMCAxLS4wNzMtLjIxNWMwLS4zMy45OS0uOTQ1Ljk5LTEuNDkgMC0uMTQzLS43My0yLjA5LS44MzItMi4zMzUtLjE0My0uMzcyLS4yMTQtLjQ4Ny0uNi0uNDg3LS4xODcgMC0uMzYtLjA0My0uNTMtLjA0My0uMzAyIDAtLjUzLjExNS0uNzQ2LjMxNS0uNjg4LjY0NS0xLjAzMiAxLjMxOC0xLjA2IDIuMjY0di4xMTRjLS4wMTUuOTkuNDcyIDEuOTc3IDEuMDE3IDIuNzggMS4yMyAxLjgyIDIuNTA2IDMuNDEgNC41NTQgNC4zNC42MTYuMjg3IDIuMDM1Ljg4OCAyLjcyMi44ODguODE3IDAgMi4xNS0uNTE1IDIuNDc4LTEuMzE4LjEzLS4zMy4yNDQtLjczLjI0NC0xLjA4OCAwLS4wNTggMC0uMTQ0LS4wMy0uMjE1LS4xLS4xNzItMi40MzQtMS4zOS0yLjY3OC0xLjM5em0tMi45MDggNy41OTNjLTEuNzQ3IDAtMy40OC0uNTMtNC45NDItMS40OUw3Ljc5MyAyNC40MWwxLjEzMi0zLjMzN2E4Ljk1NSA4Ljk1NSAwIDAgMS0xLjcyLTUuMjcyYzAtNC45NTUgNC4wNC04Ljk5NSA4Ljk5Ny04Ljk5NVMyNS4yIDEwLjg0NSAyNS4yIDE1LjhjMCA0Ljk1OC00LjA0IDguOTk4LTguOTk4IDguOTk4em0wLTE5Ljc5OGMtNS45NiAwLTEwLjggNC44NDItMTAuOCAxMC44IDAgMS45NjQuNTMgMy44OTggMS41NDYgNS41NzRMNSAyNy4xNzZsNS45NzQtMS45MmExMC44MDcgMTAuODA3IDAgMCAwIDE2LjAzLTkuNDU1YzAtNS45NTgtNC44NDItMTAuOC0xMC44MDItMTAuOHoifSkpfXZhciBjcj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0yaWs1bGMtMCJ9KShbIm1hcmdpbjoyNXB4IDIwcHg7Il0pO2Z1bmN0aW9uIHVyKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/c3IoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/c3IoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiBzcihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIGZyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS53b25kZXJjaGF0SWNvbixuPXIuaXNQcm8scj1yLmlzU2luZ2xlO3JldHVybiBuJiZ0P0guYS5jcmVhdGVFbGVtZW50KG0se2ljb25Vcmw6dCxzaXplOmV9KTpILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix4bWxuc1hsaW5rOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIixzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmZmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIDAgMTAwIDEwMCJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTg1LDQ1Ljk0YzAtMTQuMTctMTEuNTgtMjUuNjctMjUuODctMjUuNjdoLTIwLjI1Yy0xNC4yOSwwLTI1Ljg3LDExLjQ5LTI1Ljg3LDI1LjY3djIuMjNjMCwxNC4xOCwxMS41OCwyNS42NywyNS44NywyNS42N2gyMC4yNWMxLjQyLDAsMi44MS0uMTIsNC4xNy0uMzRsNS42MSw5LjQ2YzIuOTEsNC45LDEwLjQ3LDIuODYsMTAuNDctMi44M3YtMTUuOTljMy41Mi00LjM4LDUuNjItOS45Myw1LjYyLTE1Ljk3di0yLjIzWk0zMi4xMiw1MS44N2MtMi40OSwwLTQuNS0yLjAyLTQuNS00LjUxaDBjMC0yLjQ5LDIuMDEtNC41MSw0LjUtNC41MmgwYzIuNDksMCw0LjUsMi4wMyw0LjUsNC41MiwwLDIuNDktMi4wMSw0LjUxLTQuNSw0LjUxWk00NS42Miw1MS44N2MtMi40OSwwLTQuNS0yLjAyLTQuNS00LjUxaDBjMC0yLjQ5LDIuMDEtNC41MSw0LjUtNC41MmgwYzIuNDksMCw0LjUsMi4wMyw0LjUsNC41MiwwLDIuNDktMi4wMSw0LjUxLTQuNSw0LjUxWk01NC43Miw0Ny44MWMtLjI1LS41NywwLTEuMjMuNTctMS40OGwzLjg5LTEuNzNjLjI2LS4xMS40Ni0uMzIuNTctLjU3bDEuNzItMy45Yy4xMS0uMjYuMzItLjQ2LjU3LS41Ny41Ny0uMjUsMS4yMywwLDEuNDcuNTdsMS43MiwzLjljLjExLjI1LjMyLjQ2LjU3LjU3bDMuODksMS43M2MuMjYuMTEuNDYuMzIuNTcuNTcuMjUuNTcsMCwxLjIzLS41NywxLjQ4bC0zLjg5LDEuNzNjLS4yNS4xMS0uNDYuMzItLjU3LjU3bC0xLjcyLDMuOWMtLjExLjI2LS4zMi40Ni0uNTcuNTctLjU3LjI1LTEuMjIsMC0xLjQ3LS41N2wtMS43Mi0zLjljLS4xMS0uMjYtLjMyLS40Ni0uNTctLjU3bC0zLjg5LTEuNzNjLS4yNi0uMTEtLjQ2LS4zMi0uNTctLjU3WiJ9KSl9dmFyIGRyPUMuZC51bC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTAifSkoWyJkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4O3BhZGRpbmc6MTVweDttYXJnaW46MDtsaXN0LXN0eWxlLXR5cGU6bm9uZTttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAyMjRweCk7b3ZlcmZsb3c6YXV0bzsmOjotd2Via2l0LXNjcm9sbGJhcntoZWlnaHQ6NXB4O3dpZHRoOjVweDttYXJnaW4tYm90dG9tOjVweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjAyKTt9Jjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7bWFyZ2luLWJvdHRvbToxMHB4O30mOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOnJnYmEoNTcsNTYsMTgsLjA3KTstd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4O30iLCIiXSxEKCkmJk9iamVjdChDLmMpKFsibWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMTEwcHgpOyJdKSkscHI9Qy5kLmEud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLWwwMzBhZC0xIn0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7ZT1lLmNvbG9yO3JldHVybiBPYmplY3QoQy5jKShbImhlaWdodDo2NXB4O2JhY2tncm91bmQtY29sb3I6IiwiMTA7Ym9yZGVyLXJhZGl1czoxMnB4O2JvcmRlcjoxcHggc29saWQgIiwiMzA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjVweCAxMHB4O3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246MC4xcyBhbGw7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1kZWNvcmF0aW9uOm5vbmUgIWltcG9ydGFudDsmOmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt3aWR0aDoycHg7aGVpZ2h0OjMyLjVweDtiYWNrZ3JvdW5kLWNvbG9yOiIsIjt9Jjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYgIWltcG9ydGFudDtib3gtc2hhZG93OnJnYigwIDAgMCAvIDglKSAycHggMnB4IDZweDt9Il0sZSxlLGUpfSksbXI9Qy5kLmltZy53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTIifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmJ1dHRvbkJvcmRlclJhZGl1cyxlPWUuYm9yZGVyO3JldHVybiBPYmplY3QoQy5jKShbIndpZHRoOjQ1cHg7aGVpZ2h0OjQ1cHg7bWluLXdpZHRoOjQ1cHg7Ym9yZGVyLXJhZGl1czoiLCIlO29iamVjdC1maXQ6Y292ZXI7Ym9yZGVyOiIsIjsiXSx0LGUmJiIycHggc29saWQgI2ZmZmZmZiIpfSksaHI9Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTMifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmluZGljYXRvclBvc2l0aW9uLGU9ZS5taXJyb3I7cmV0dXJuIE9iamVjdChDLmMpKFsicG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDVweDtoZWlnaHQ6NDVweDttaW4td2lkdGg6NDVweDsmOmFmdGVye2NvbnRlbnQ6Jyc7d2lkdGg6MTBweDtoZWlnaHQ6MTBweDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZGMyNDc7Ym9yZGVyLXJhZGl1czo1MCU7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOiIsInB4OyIsIiBib3gtc2hhZG93OjJweCAycHggNnB4IHJnYmEoMCwwLDAsMTAlKTt9Il0sdCxlP09iamVjdChDLmMpKFsibGVmdDoiLCJweDsiXSx0KTpPYmplY3QoQy5jKShbInJpZ2h0OiIsInB4OyJdLHQpKX0pLGdyPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLWwwMzBhZC00In0pKFsiZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDsiXSksYnI9Qy5kLmg0LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1sMDMwYWQtNSJ9KShbImNvbG9yOiM0ZDUxNTc7Zm9udC1zaXplOjE0cHg7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MTZweDtmb250LXdlaWdodDo2MDA7IiwiIHRleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxNzBweDsiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOnJpZ2h0OyJdKTpPYmplY3QoQy5jKShbInRleHQtYWxpZ246bGVmdDsiXSl9KSx5cj1DLmQucC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtbDAzMGFkLTYifSkoWyJjb2xvcjojOTg5YjlmO2ZvbnQtc2l6ZToxMnB4O21hcmdpbjo1cHggMCAwIDA7bGluZS1oZWlnaHQ6MTRweDsiLCIgdGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjE3MHB4OyJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7Il0pOk9iamVjdChDLmMpKFsidGV4dC1hbGlnbjpsZWZ0OyJdKX0pO2Z1bmN0aW9uIHZyKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/d3IoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/d3IoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiB3cihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIHhyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5haUljb24sbj1yLmlzUHJvLHI9ci5pc1NpbmdsZTtyZXR1cm4gbiYmdD9ILmEuY3JlYXRlRWxlbWVudChtLHtpY29uVXJsOnQsc2l6ZTplfSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIseG1sbnNYbGluazoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsc3R5bGU6Im1lZGl1bSI9PT1lJiZyP3toZWlnaHQ6IjMwcHgiLG1pbldpZHRoOiIzMHB4IixmaWxsOiIjZmZmZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZmZmZiIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDQ4IDQ4In0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtmaWxsOiIjZmZmIixkOiJNMzguOTUsMTkuNTNjLS4yMy0uMDgtLjQyLS4yNi0uNDktLjUtMS4zMy00LjQ1LTQuNzMtNi4yMS0xMC4wOS02LjczLS4xOS0uMDItLjM3LS4xLS41MS0uMjMtLjU5LS41NC0xLjQ4LS44Ni0yLjgtLjk3LS4xNC0uMDEtLjI1LS4xMi0uMjctLjI2bC0uMjMtMS43MWMtLjAyLS4xMy4wNi0uMjYuMTgtLjMyLjc4LS4zMiwxLjMtMS4xMywxLjE4LTIuMDUtLjExLS44OC0uODMtMS41Ny0xLjctMS42Ny0xLjE3LS4xMy0yLjE2Ljc4LTIuMTYsMS45MywwLC44MS40OSwxLjUsMS4xOSwxLjc5LjEzLjA1LjIuMTguMTguMzJsLS4yMywxLjcxYy0uMDIuMTQtLjEzLjI1LS4yNy4yNi0xLjMyLjEtMi4yMS40My0yLjguOTctLjE0LjEzLS4zMi4yMS0uNTEuMjMtNS4zNi41Mi04Ljc1LDIuMjgtMTAuMDksNi43My0uMDcuMjQtLjI1LjQyLS40OS41LTEuNTYuNTMtMi4yNywxLjc2LTIuMjcsNC42N3MuNzIsNC4xNSwyLjI3LDQuNjdjLjIzLjA4LjQyLjI2LjQ5LjUsMS4zNiw0LjU1LDQuODgsNi4yOCwxMC40NCw2Ljc2aC0uMDZjLjI4LjAyLjUxLjI1LjUxLjUydjIuNjNjMCwuMzIuMzEuNTQuNjEuNDMsMS44OS0uNjksNy43OS0yLjg1LDEyLjMtNC43aDBjMi41NS0xLjAyLDQuMjctMi43Nyw1LjEzLTUuNjQuMDctLjI0LjI1LS40Mi40OS0uNSwxLjU2LS41MywyLjI3LTEuNzYsMi4yNy00LjY4cy0uNzItNC4xNS0yLjI3LTQuNjdaTTM0Ljc4LDI4Ljk1Yy0uMzYuOTEtLjg2LDEuNTYtMS41OCwyLjA2LTEuNjEsMS4xMy00LjUzLDEuNjUtOS4yMSwxLjY1cy03LjYtLjUzLTkuMjEtMS42NWMtLjcxLS41LTEuMjEtMS4xNi0xLjU4LTIuMDYtLjQ3LTEuMTctLjctMi43Ni0uNy00Ljc0cy4yNC0zLjU4LjctNC43NGMuMzYtLjkxLjg2LTEuNTYsMS41OC0yLjA2LDEuNjEtMS4xMyw0LjUzLTEuNjUsOS4yMS0xLjY1czcuNi41Miw5LjIxLDEuNjVjLjcxLjUsMS4yMSwxLjE2LDEuNTgsMi4wNi40NywxLjE3LjcsMi43Ni43LDQuNzRzLS4yNCwzLjU4LS43LDQuNzRaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbDoiI2ZmZiIsZDoiTTE4Ljk1LDIxLjk3Yy0xLjIxLDAtMS40NywxLjExLTEuNDcsMi4yNHMuMjYsMi4yNCwxLjQ3LDIuMjQsMS40Ny0xLjExLDEuNDctMi4yNC0uMjYtMi4yNC0xLjQ3LTIuMjRaIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbDoiI2ZmZiIsZDoiTTI5LjA1LDIxLjk3Yy0xLjIxLDAtMS40NywxLjExLTEuNDcsMi4yNHMuMjYsMi4yNCwxLjQ3LDIuMjQsMS40Ny0xLjExLDEuNDctMi4yNC0uMjYtMi4yNC0xLjQ3LTIuMjRaIn0pKX12YXIga3I9Qy5kLmlmcmFtZS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWdlamdrbS0wIn0pKFsiYm9yZGVyOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuNXM7d2lkdGg6MTA4JTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTJweCk7IiwiOyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzTG9hZGluZyYmT2JqZWN0KEMuYykoWyJvcGFjaXR5Oi4wOyJdKX0sRCgpJiZPYmplY3QoQy5jKShbImhlaWdodDoxMDB2aDtoZWlnaHQ6Y2FsYygodmFyKC0tdmgpICogMTAwKSAtIDUwcHgpO21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gNTBweCk7d2lkdGg6Y2FsYygxMDAlICsgMTlweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTExcHgpOyJdKSk7ZnVuY3Rpb24gU3IoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9DcihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9DcihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIENyKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9dmFyIEVyPSJmcm9tLWdiLXdpZGdldCIsT3I9ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9zdGF0aWMuZ2V0YnV0dG9uLmlvL3dpZGdldC9idW5kbGUtYWkuanMifSxqcj1mdW5jdGlvbiBlKHQpe3ZhciBuPTE8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTowO3dpbmRvdy5HQkFJPyh0LmlkPUVyLGNvbnNvbGUubG9nKCdHQiBzZW5kIGV2ZW50OiAiaW5pdCBhcHAiJyx0KSx3aW5kb3cuR0JBSS5pbml0KHtzZXR0aW5nczp0fSkpOihjb25zb2xlLmVycm9yKCJ3aW5kb3cuR0JBSSBub3QgZm91bmQuLi4iLHdpbmRvdy5HQkFJKSxuPDE1P3NldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zb2xlLmxvZygid2luZG93LkdCQUkgbG9hZGlnIGF0dGVtcHQgIi5jb25jYXQobisxLCI6IHJldHJ5aW5nIGluaXRQb3B1cC4uLiIpKSxlKHQsbisxKX0sMWUzKTpjb25zb2xlLmVycm9yKCJ3aW5kb3cuR0JBSSBhdHRlbXB0cyBmaW5pc2hlZC4iKSl9LEFyPWZ1bmN0aW9uKCl7SXIoe2lzX3Nob3dfcG9wdXA6ITB9KX0sUHI9ZnVuY3Rpb24oKXtJcih7aXNfc2hvd19wb3B1cDohMX0pfSxJcj1mdW5jdGlvbihlKXtlLmlkPUVyLGNvbnNvbGUubG9nKCdHQiBzZW5kIGV2ZW50OiAidXBkYXRlIHNldHRpbmdzIicsZSksd2luZG93LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJHZXRidXR0b25BaVVwZGF0ZVN0YXRlIix7ZGV0YWlsOmV9KSl9O2Z1bmN0aW9uIF9yKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKEFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIGV9KGUpfHxmdW5jdGlvbihlLHQpe3ZhciBuPW51bGw9PWU/bnVsbDoidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYobnVsbCE9bil7dmFyIHIsbyxhLGksbD1bXSxjPSEwLHU9ITE7dHJ5e2lmKGE9KG49bi5jYWxsKGUpKS5uZXh0LDA9PT10KXtpZihPYmplY3QobikhPT1uKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KHI9YS5jYWxsKG4pKS5kb25lKSYmKGwucHVzaChyLnZhbHVlKSxsLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChlKXt1PSEwLG89ZX1maW5hbGx5e3RyeXtpZighYyYmbnVsbCE9bi5yZXR1cm4mJihpPW4ucmV0dXJuKCksT2JqZWN0KGkpIT09aSkpcmV0dXJufWZpbmFsbHl7aWYodSl0aHJvdyBvfX1yZXR1cm4gbH19KGUsdCl8fGZ1bmN0aW9uKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/enIoZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/enIoZSx0KTp2b2lkIDB9KGUsdCl8fGZ1bmN0aW9uKCl7dGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX0oKX1mdW5jdGlvbiB6cihlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfWZ1bmN0aW9uIFRyKGUpe3ZhciBlPWUuc2l6ZSx0PShyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5rYWthb3RhbGtJY29uLG49ci5pc1BybyxyPXIuaXNTaW5nbGU7cmV0dXJuIG4mJnQ/SC5hLmNyZWF0ZUVsZW1lbnQobSx7aWNvblVybDp0LHNpemU6ZX0pOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToibWVkaXVtIj09PWUmJnI/e2hlaWdodDoiMzBweCIsbWluV2lkdGg6IjMwcHgiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2ZXJzaW9uOiIxLjEiLHZpZXdCb3g6Ii0yNCAtMjQgMjUyIDIzNiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtmaWxsUnVsZToiZXZlbm9kZCIsY2xpcFJ1bGU6ImV2ZW5vZGQiLGQ6Ik0wLjQzNzUgODAuMjM0NEMwLjQzNzUgMzYuMDA4OCA0NS45MDgyIDAuMTU2MjUgMTAyIDAuMTU2MjVDMTU4LjA5MiAwLjE1NjI1IDIwMy41NjIgMzYuMDA4OCAyMDMuNTYyIDgwLjIzNDRDMjAzLjU2MiAxMjQuNDYxIDE1OC4wOTIgMTYwLjMxMiAxMDIgMTYwLjMxMkM5NS44NDM4IDE2MC4zMTIgODkuODE1NCAxNTkuODgyIDgzLjk2MDkgMTU5LjA1M0M3OC4xMDA2IDE2My4xODMgNDQuMjQyMiAxODYuOTY2IDQxLjA0NjkgMTg3LjQxMkM0MS4wNDY5IDE4Ny40MTIgMzkuNzM2MyAxODcuOTIyIDM4LjYyMjEgMTg3LjI2NkMzNy41MDc4IDE4Ni42MDkgMzcuNzEgMTg0Ljg4OSAzNy43MSAxODQuODg5QzM4LjA0NTkgMTgyLjU5OSA0Ni40ODczIDE1My40NDggNDguMDQzIDE0OC4wODNDMTkuNDQ3MyAxMzMuOTE2IDAuNDM3NSAxMDguODI3IDAuNDM3NSA4MC4yMzQ0Wk0zOS45ODgzIDEwMi41OTNDMzkuOTg4MyAxMDUuNjc5IDQyLjYxNjIgMTA4LjE4OCA0NS44NDc3IDEwOC4xODhDNDkuMDc5MSAxMDguMTg4IDUxLjcwNyAxMDUuNjc5IDUxLjcwNyAxMDIuNTkzVjY3Ljc4MzJINjAuODQ5NkM2NC4wMTk1IDY3Ljc4MzIgNjYuNTk5NiA2NS4yMDkgNjYuNTk5NiA2Mi4wNDU5QzY2LjU5OTYgNTguODgyOCA2NC4wMjA1IDU2LjMwODYgNjAuODQ5NiA1Ni4zMDg2SDMwLjg0NTdDMjcuNjc1OCA1Ni4zMDg2IDI1LjA5NTcgNTguODgyOCAyNS4wOTU3IDYyLjA0NTlDMjUuMDk1NyA2NS4yMDkgMjcuNjc0OCA2Ny43ODMyIDMwLjg0NTcgNjcuNzgzMkgzOS45ODgzVjEwMi41OTNaTTkyLjM1MDYgMTA1LjUyNEM5Mi45MTQxIDEwNy4xMiA5NC43ODMyIDEwOC4xMTIgOTcuMjI2NiAxMDguMTEyQzk4LjUxMTYgMTA4LjExMyA5OS43ODE5IDEwNy44MzggMTAwLjk1MSAxMDcuMzA1QzEwMi41NjYgMTA2LjU2MiAxMDQuMTE5IDEwNC41MTIgMTAyLjMzNiA5OC45NzI3TDg4LjMyNjIgNjIuMDk4NkM4Ny4zMzY5IDU5LjI4NzEgODQuMzM3OSA1Ni4zOTU1IDgwLjUxMDcgNTYuMzA5NkM3Ni42OTQzIDU2LjM5NjUgNzMuNjk1MyA1OS4yODcxIDcyLjcwOCA2Mi4wOTI4TDU4LjY5MjQgOTguOTgzNEM1Ni45MTMxIDEwNC41MSA1OC40NjU4IDEwNi41NTkgNjAuMDgxMSAxMDcuMzA0QzYxLjI1IDEwNy44MzggNjIuNTIwNCAxMDguMTE0IDYzLjgwNTcgMTA4LjExMkM2Ni4yNDkgMTA4LjExMiA2OC4xMTcyIDEwNy4xMjEgNjguNjc4NyAxMDUuNTI4TDcxLjU4MiA5Ny45Mjc3TDg5LjQ0OTIgOTcuOTI4N0w5Mi4zNTA2IDEwNS41MjRaTTgwLjUxNTYgNzAuOTIzOEw4Ni4zNjgyIDg3LjU0OThINzQuNjYzMUw4MC41MTU2IDcwLjkyMzhaTTEwNi4xNSAxMDEuOTYzQzEwNi4xNSAxMDQuOTI0IDEwOC42NjkgMTA3LjMzNCAxMTEuNzY2IDEwNy4zMzRIMTMwLjU2NEMxMzMuNjYxIDEwNy4zMzQgMTM2LjE4IDEwNC45MjQgMTM2LjE4IDEwMS45NjNDMTM2LjE4IDk5LjAwMiAxMzMuNjYxIDk2LjU5MTggMTMwLjU2NCA5Ni41OTE4SDExOC4xMTNWNjIuMTY4QzExOC4xMTMgNTguOTM2NSAxMTUuNDMgNTYuMzA4NiAxMTIuMTMyIDU2LjMwODZDMTA4LjgzNCA1Ni4zMDg2IDEwNi4xNSA1OC45MzY1IDEwNi4xNSA2Mi4xNjhWMTAxLjk2M1pNMTM4LjQ1OSAxMDIuMjUzQzEzOC40NTkgMTA1LjQ4NCAxNDEuMDg3IDEwOC4xMTIgMTQ0LjMxOCAxMDguMTEyQzE0NS44NzIgMTA4LjExIDE0Ny4zNjIgMTA3LjQ5MiAxNDguNDYxIDEwNi4zOTNDMTQ5LjU2IDEwNS4yOTQgMTUwLjE3OCAxMDMuODA0IDE1MC4xOCAxMDIuMjVWODkuNDY1OEwxNTIuMjEzIDg3LjQzMjZMMTY1Ljk1NCAxMDUuNjRDMTY2LjQ5OCAxMDYuMzY2IDE2Ny4yMDUgMTA2Ljk1NiAxNjguMDE4IDEwNy4zNkMxNjguODMxIDEwNy43NjUgMTY5LjcyNyAxMDcuOTczIDE3MC42MzUgMTA3Ljk2OUMxNzEuOTA3IDEwNy45NzIgMTczLjE0NiAxMDcuNTU2IDE3NC4xNTkgMTA2Ljc4NkMxNzQuNzc1IDEwNi4zMjQgMTc1LjI5MyAxMDUuNzQ1IDE3NS42ODMgMTA1LjA4MkMxNzYuMDczIDEwNC40MTkgMTc2LjMyOCAxMDMuNjg0IDE3Ni40MzMgMTAyLjkyMkMxNzYuNTQyIDEwMi4xNiAxNzYuNDk5IDEwMS4zODQgMTc2LjMwNiAxMDAuNjM5QzE3Ni4xMTMgOTkuODkzNCAxNzUuNzczIDk5LjE5NCAxNzUuMzA4IDk4LjU4MTFMMTYwLjg4NSA3OS40NzM2TDE3NC4yMzcgNjYuMTIzQzE3NS4xNTUgNjUuMjA0MSAxNzUuNjE1IDYzLjkzNzUgMTc1LjUzIDYyLjU1NTdDMTc1LjQ0NiA2MS4xODU2IDE3NC44MzQgNTkuODY2MiAxNzMuODA4IDU4Ljg0MDhDMTcyLjcwNyA1Ny43NDEyIDE3MS4yMzggNTcuMTEwNCAxNjkuNzc1IDU3LjExMDRDMTY4LjUyMSA1Ny4xMTA0IDE2Ny4zNjYgNTcuNTczMiAxNjYuNTI1IDU4LjQxNDFMMTUwLjE3OCA3NC43NjE3VjYyLjE2OEMxNTAuMTc4IDU4LjkzNjUgMTQ3LjU1IDU2LjMwODYgMTQ0LjMxOCA1Ni4zMDg2QzE0MS4wODcgNTYuMzA4NiAxMzguNDU5IDU4LjkzNjUgMTM4LjQ1OSA2Mi4xNjhWMTAyLjI1M1oifSkpfWZ1bmN0aW9uIExyKGUpe3ZhciB0PXZvaWQgMD09PSh0PWUuYWN0aXZhdG9ySWNvbik/bnVsbDp0LGU9ZS5idXR0b25JbWFnZSxuPShvPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5hY3RpdmF0b3JTaXplLHI9by5idXR0b25Cb3JkZXJSYWRpdXMsbz1vLmJ1dHRvblN0eWxlO3JldHVybiBlP0guYS5jcmVhdGVFbGVtZW50KCJpbWciLHtzcmM6IiIuY29uY2F0KGUpLHN0eWxlOnt3aWR0aDoiIi5jb25jYXQoTWF0aC5taW4oLjU1Km4sNDApLCJweCIpLGhlaWdodDoiIi5jb25jYXQoTWF0aC5taW4oLjU1Km4sNDApLCJweCIpLG9iamVjdEZpdDoiY292ZXIiLGJvcmRlclJhZGl1czoiIi5jb25jYXQoLjM1KnIsInB4Iil9fSk6InNtaWxlIj09PXQ/SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJjbGFzc2ljIiE9PW8/e3dpZHRoOiI4NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiI2NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIixkaXNwbGF5OiJibG9jayIsbWFyZ2luOiJhdXRvIixtYXJnaW5MZWZ0OiIyMCUifSx2aWV3Qm94OiIwIDAgMzAgMzAiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZmlsbFJ1bGU6ImV2ZW5vZGQiLGNsaXBSdWxlOiJldmVub2RkIixkOiJNNy40NjIwNCAyLjAyNzQ2QzkuNzUwMjcgMC42OTgzMjcgMTIuMzQ5NSAtMC4wMDExODM3NyAxNC45OTU1IDIuNjAzNzNlLTA2QzE3LjMwMzEgLTAuMDAxMzU3MzQgMTkuNTc5OSAwLjUzMDAyOCAyMS42NDg3IDEuNTUyNzlDMjMuNzE3NCAyLjU3NTU2IDI1LjUyMjMgNC4wNjIxIDI2LjkyMjcgNS44OTY3MUMyOC4zMjMyIDcuNzMxMzEgMjkuMjgxNSA5Ljg2NDQ3IDI5LjcyMyAxMi4xMzAxQzMwLjE2NDUgMTQuMzk1OCAzMC4wNzczIDE2LjczMjggMjkuNDY4MiAxOC45NTkyQzI4Ljg1OTEgMjEuMTg1NiAyNy43NDQ2IDIzLjI0MTQgMjYuMjExMyAyNC45NjY1QzI0LjY3OCAyNi42OTE2IDIyLjc2NzUgMjguMDM5NSAyMC42MjgzIDI4LjkwNTJDMTguNDg5MSAyOS43NzA4IDE2LjE3OSAzMC4xMzEgMTMuODc3OSAyOS45NTc2QzExLjU3NjggMjkuNzg0MiA5LjM0Njc5IDI5LjA4MTkgNy4zNjEzOSAyNy45MDU1TDEuODI5MzcgMjkuOTE4MkMxLjY3OTc5IDI5Ljk3MTkgMS41MjIwOSAyOS45OTk2IDEuMzYzMTQgMzBDMS4xNDQwNyAyOS45OTk4IDAuOTI4MjY0IDI5Ljk0NjkgMC43MzM5OTcgMjkuODQ1NkMwLjUzOTczIDI5Ljc0NDMgMC4zNzI3MjggMjkuNTk3NyAwLjI0NzEzNCAyOS40MTgxQzAuMTIxNTQgMjkuMjM4NiAwLjA0MTA1NDYgMjkuMDMxNCAwLjAxMjQ5NDQgMjguODE0MUMtMC4wMTYwNjU3IDI4LjU5NjkgMC4wMDgxNDA4MyAyOC4zNzU5IDAuMDgzMDYzNiAyOC4xN0wyLjA5Mzg0IDIyLjYzNjRDMC43NDQ5NDQgMjAuMzU5MyAwLjAyMjcwOSAxNy43NjU2IDAuMDAwNTI2ODMyIDE1LjExODlDLTAuMDIxNjU1MyAxMi40NzIxIDAuNjU3MDA3IDkuODY2NzEgMS45Njc1NSA3LjU2NzMzQzMuMjc4MDkgNS4yNjc5NSA1LjE3MzggMy4zNTY1OCA3LjQ2MjA0IDIuMDI3NDZaTTEwLjkwNiA4LjAzNjQ0QzkuODc0NSA4LjAzNjQ0IDkuMDM3ODcgOC44NzMzNyA5LjAzNzg3IDkuOTA0NjFDOS4wMzc4NyAxMC45MzY4IDkuODc0NSAxMS43NzMxIDEwLjkwNiAxMS43NzM0QzExLjkzNzMgMTEuNzczNCAxMi43NzM5IDEwLjkzNjggMTIuNzczOSA5LjkwNDYxQzEyLjc3MzkgOC44NzMwNiAxMS45MzczIDguMDM2NDQgMTAuOTA2IDguMDM2NDRaTTE5LjM3NzQgOC4wMzY0NEMxOC4zNDYyIDguMDM2NDQgMTcuNTA4NyA4Ljg3MzM3IDE3LjUwODcgOS45MDQ2MUMxNy41MDg3IDEwLjkzNjggMTguMzQ2NSAxMS43NzMxIDE5LjM3NzQgMTEuNzczNEMyMC40MDkgMTEuNzczNCAyMS4yNDU2IDEwLjkzNjggMjEuMjQ1NiA5LjkwNDYxQzIxLjI0NTYgOC44NzMwNiAyMC40MDg3IDguMDM2NDQgMTkuMzc3NCA4LjAzNjQ0Wk0xNS4wMTc4IDIxLjk2MzVDMTguMDU2NCAyMS45NjM1IDIwLjc2NzggMjAuMjMzNiAyMS45MjU2IDE3LjU1NjNDMjIuMTIzOCAxNy4wOTggMjEuOTEyOSAxNi41NjYgMjEuNDU0MSAxNi4zNjhDMjAuOTk2NSAxNi4xNjkyIDIwLjQ2NDQgMTYuMzgwNCAyMC4yNjYyIDE2LjgzODZDMTkuMzk0NiAxOC44NTQxIDE3LjMzNDUgMjAuMTU2MiAxNS4wMTc4IDIwLjE1NjJDMTIuNjQ3NCAyMC4xNTYyIDEwLjU3NTIgMTguODU1IDkuNzM4NjIgMTYuODQxQzkuNTk0MzEgMTYuNDkzMSA5LjI1ODEgMTYuMjgzNCA4LjkwMzggMTYuMjgzNEM4Ljc4ODEyIDE2LjI4MzQgOC42NzA2MiAxNi4zMDU3IDguNTU3MzQgMTYuMzUyNEM4LjA5NjEgMTYuNTQ0IDcuODc3NjggMTcuMDczIDguMDY5MjkgMTcuNTM0QzkuMTg3IDIwLjIyNDkgMTEuOTE0NCAyMS45NjM1IDE1LjAxNzggMjEuOTYzNVoiLGZpbGw6IndoaXRlIn0pKToic3F1YXJlX21lc3NhZ2UiPT09dD9ILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6ImNsYXNzaWMiIT09bz97d2lkdGg6Ijg1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjY1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUiLGRpc3BsYXk6ImJsb2NrIixtYXJnaW46ImF1dG8iLG1hcmdpbkxlZnQ6IjIwJSJ9LHZpZXdCb3g6IjAgMCAzMiAzMiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMjMuOTU0NSAySDcuMDQ1NDVDNS4xNzc1NyAyLjAwMjE3IDMuMzg2ODMgMi43MjEyIDIuMDY2MDQgMy45OTkzOEMwLjc0NTI0MyA1LjI3NzU2IDAuMDAyMjM3NDQgNy4wMTA1MiAwIDguODE4MTRWMTkuNzI3MkMwLjAwMjA0OTU2IDIxLjI5ODMgMC41NjM3NjMgMjIuODIwOCAxLjU5MDQ3IDI0LjAzNzlDMi42MTcxNyAyNS4yNTUxIDQuMDQ2MDggMjYuMDkyNCA1LjYzNjM2IDI2LjQwODlWMzAuNjM2MkM1LjYzNjMzIDMwLjg4MyA1LjcwNTU0IDMxLjEyNTMgNS44MzY2MyAzMS4zMzcxQzUuOTY3NzIgMzEuNTQ4OSA2LjE1NTc2IDMxLjcyMjIgNi4zODA2OSAzMS44Mzg3QzYuNjA1NjMgMzEuOTU1MiA2Ljg1OTAxIDMyLjAxMDQgNy4xMTM4MiAzMS45OTg0QzcuMzY4NjIgMzEuOTg2NCA3LjYxNTI5IDMxLjkwNzcgNy44Mjc1IDMxLjc3MDdMMTUuOTIyNyAyNi41NDUzSDIzLjk1NDVDMjUuODIyNCAyNi41NDMxIDI3LjYxMzIgMjUuODI0MSAyOC45MzQgMjQuNTQ1OUMzMC4yNTQ4IDIzLjI2NzcgMzAuOTk3OCAyMS41MzQ4IDMxIDE5LjcyNzJWOC44MTgxNEMzMC45OTc4IDcuMDEwNTIgMzAuMjU0OCA1LjI3NzU2IDI4LjkzNCAzLjk5OTM4QzI3LjYxMzIgMi43MjEyIDI1LjgyMjQgMi4wMDIxNyAyMy45NTQ1IDJaTTIxLjEzNjQgMTguMzYzNUg5Ljg2MzY0QzkuNDg5OTIgMTguMzYzNSA5LjEzMTUxIDE4LjIxOTkgOC44NjcyNiAxNy45NjQxQzguNjAzIDE3LjcwODQgOC40NTQ1NSAxNy4zNjE2IDguNDU0NTUgMTYuOTk5OUM4LjQ1NDU1IDE2LjYzODIgOC42MDMgMTYuMjkxNCA4Ljg2NzI2IDE2LjAzNTdDOS4xMzE1MSAxNS43Nzk5IDkuNDg5OTIgMTUuNjM2MyA5Ljg2MzY0IDE1LjYzNjNIMjEuMTM2NEMyMS41MTAxIDE1LjYzNjMgMjEuODY4NSAxNS43Nzk5IDIyLjEzMjcgMTYuMDM1N0MyMi4zOTcgMTYuMjkxNCAyMi41NDU1IDE2LjYzODIgMjIuNTQ1NSAxNi45OTk5QzIyLjU0NTUgMTcuMzYxNiAyMi4zOTcgMTcuNzA4NCAyMi4xMzI3IDE3Ljk2NDFDMjEuODY4NSAxOC4yMTk5IDIxLjUxMDEgMTguMzYzNSAyMS4xMzY0IDE4LjM2MzVaTTIzLjk1NDUgMTIuOTA5SDcuMDQ1NDVDNi42NzE3NCAxMi45MDkgNi4zMTMzMyAxMi43NjUzIDYuMDQ5MDggMTIuNTA5NkM1Ljc4NDgyIDEyLjI1MzkgNS42MzYzNiAxMS45MDcgNS42MzYzNiAxMS41NDU0QzUuNjM2MzYgMTEuMTgzNyA1Ljc4NDgyIDEwLjgzNjkgNi4wNDkwOCAxMC41ODEyQzYuMzEzMzMgMTAuMzI1NCA2LjY3MTc0IDEwLjE4MTggNy4wNDU0NSAxMC4xODE4SDIzLjk1NDVDMjQuMzI4MyAxMC4xODE4IDI0LjY4NjcgMTAuMzI1NCAyNC45NTA5IDEwLjU4MTJDMjUuMjE1MiAxMC44MzY5IDI1LjM2MzYgMTEuMTgzNyAyNS4zNjM2IDExLjU0NTRDMjUuMzYzNiAxMS45MDcgMjUuMjE1MiAxMi4yNTM5IDI0Ljk1MDkgMTIuNTA5NkMyNC42ODY3IDEyLjc2NTMgMjQuMzI4MyAxMi45MDkgMjMuOTU0NSAxMi45MDlaIixmaWxsOiJ3aGl0ZSJ9KSk6InJvdW5kX21lc3NhZ2UiPT09dD9ILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6ImNsYXNzaWMiIT09bz97d2lkdGg6Ijg1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifTp7d2lkdGg6IjY1JSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUiLGRpc3BsYXk6ImJsb2NrIixtYXJnaW46ImF1dG8iLG1hcmdpbkxlZnQ6IjIwJSJ9LHZpZXdCb3g6IjAgMCAzMiAzMiIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTYgMUM3LjcyOTM4IDEgMSA3LjcyOTM4IDEgMTZWMzAuMDYyNUMxIDMwLjU4IDEuNDIgMzEgMS45Mzc1IDMxSDE2QzI0LjI3MDYgMzEgMzEgMjQuMjcwNiAzMSAxNkMzMSA3LjcyOTM4IDI0LjI3MDYgMSAxNiAxWk0xNi45Mzc1IDE5Ljc1SDkuNDM3NUM4LjkyIDE5Ljc1IDguNSAxOS4zMyA4LjUgMTguODEyNUM4LjUgMTguMjk1IDguOTIgMTcuODc1IDkuNDM3NSAxNy44NzVIMTYuOTM3NUMxNy40NTUgMTcuODc1IDE3Ljg3NSAxOC4yOTUgMTcuODc1IDE4LjgxMjVDMTcuODc1IDE5LjMzIDE3LjQ1NSAxOS43NSAxNi45Mzc1IDE5Ljc1Wk0yMi41NjI1IDE0LjEyNUg5LjQzNzVDOC45MiAxNC4xMjUgOC41IDEzLjcwNSA4LjUgMTMuMTg3NUM4LjUgMTIuNjcgOC45MiAxMi4yNSA5LjQzNzUgMTIuMjVIMjIuNTYyNUMyMy4wOCAxMi4yNSAyMy41IDEyLjY3IDIzLjUgMTMuMTg3NUMyMy41IDEzLjcwNSAyMy4wOCAxNC4xMjUgMjIuNTYyNSAxNC4xMjVaIixmaWxsOiJ3aGl0ZSJ9KSk6ImRpYWxvZyI9PT10P0guYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZToiY2xhc3NpYyIhPT1vP3t3aWR0aDoiODUlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSJ9Ont3aWR0aDoiNjUlIixoZWlnaHQ6IjEwMCUiLGZpbGw6IiNmZmYiLHN0cm9rZToibm9uZSIsZGlzcGxheToiYmxvY2siLG1hcmdpbjoiYXV0byIsbWFyZ2luTGVmdDoiMjAlIn0sdmlld0JveDoiMCAwIDMyIDMyIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yNC45ODU3IDMwLjM2MTZDMjUuMjUxNSAzMC4zNjE2IDI1LjUxMzggMzAuNDYyNyAyNS43MTMzIDMwLjY1NTRDMjYuOTg4NyAzMS44ODcgMjguODQ5IDMyLjI5NyAzMC41MDI5IDMxLjc4MzhDMjkuNDM4NSAyOS41NjY0IDI5LjI5MSAyNy4wMjYxIDMwLjExNTggMjQuNjc0QzMxLjEzOTQgMjEuNzQ3NiAzMS4zOTYgMTguODE0NCAzMC4yMzEgMTUuODcyN0MyOS4yMDc1IDEzLjI4ODQgMjcuMjMyNSAxMS4xNDEzIDI0LjczMyA5LjkxNjk5QzI0Ljg4NjcgMTAuNzM2OCAyNC45NjQyIDExLjU3MjEgMjQuOTY0MiAxMi40MTYyQzI0Ljk2NDMgMTUuOTk5MyAyMy41ODY1IDE5LjM2OTIgMjEuMDg0OSAyMS45MDU0QzE4LjU4MjkgMjQuNDQxOSAxNS4yMjkxIDI1Ljg2ODEgMTEuNjQxMyAyNS45MjE0QzEwLjk3NDcgMjUuOTMxOCAxMC4zMTExIDI1Ljg5MjYgOS42NTUwNyAyNS44MDYyQzExLjYyNjkgMjkuMjYyNCAxNS4zNDU2IDMxLjUxMzQgMTkuNDMyMSAzMS41NzQxQzIxLjIxOTggMzEuNjAxNyAyMi45MzYyIDMxLjIyNzIgMjQuNTM0NyAzMC40NjM4QzI0LjY3ODYgMzAuMzk1IDI0LjgzMjggMzAuMzYxNiAyNC45ODU3IDMwLjM2MTZaIixmaWxsOiJ3aGl0ZSJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xMS42NzA4IDEuMDAyMjhDNS4zMDYxNyAwLjg3NTg5OSAwLjAxNTM4MSA2LjAyNDgxIDMuNDUxMTVlLTA1IDEyLjM4ODFDLTAuMDAzNzI1MzkgMTMuOTQyOCAwLjI5OTc1MiAxNS40NTAxIDAuOTAyMTA0IDE2Ljg2ODRDMC45MTA4NTEgMTYuODg5MSAwLjkxODk4NSAxNi45MDk5IDAuOTI2MzUxIDE2LjkzMTFDMS43NTExNSAxOS4yODMyIDEuNjAzNzUgMjEuODIzNCAwLjUzOTMxMiAyNC4wNDA4QzIuMTkzMjggMjQuNTUzOSA0LjA1MzQ0IDI0LjE0NCA1LjMyODg5IDIyLjkxMjRDNS42NDMxMSAyMi42MDg5IDYuMTEzMjUgMjIuNTMyNCA2LjUwNzUgMjIuNzIwOUM4LjEwNTc3IDIzLjQ4NDIgOS44MjI0MyAyMy44NTk5IDExLjYxIDIzLjgzMTJDMTcuOTI0OSAyMy43Mzc0IDIyLjg3MTQgMTguNzIzNCAyMi44NzE0IDEyLjQxNjJDMjIuODcxNCA2LjI0NjY0IDE3Ljg0NjggMS4xMjY0MyAxMS42NzA4IDEuMDAyMjhaTTUuMzM1NzkgMTQuMTIxMkM0LjQyMTM3IDE0LjEyMTIgMy42ODAwNiAxMy4zODExIDMuNjgwMDYgMTIuNDY4MkMzLjY4MDA2IDExLjU1NTMgNC40MjEzNyAxMC44MTUyIDUuMzM1NzkgMTAuODE1MkM2LjI1MDIyIDEwLjgxNTIgNi45OTE1MyAxMS41NTUzIDYuOTkxNTMgMTIuNDY4MkM2Ljk5MTQ1IDEzLjM4MTEgNi4yNTAyMiAxNC4xMjEyIDUuMzM1NzkgMTQuMTIxMlpNMTEuNDM1NyAxNC4xMjEyQzEwLjUyMTMgMTQuMTIxMiA5Ljc3OTk5IDEzLjM4MTEgOS43Nzk5OSAxMi40NjgyQzkuNzc5OTkgMTEuNTU1MyAxMC41MjEzIDEwLjgxNTIgMTEuNDM1NyAxMC44MTUyQzEyLjM1MDIgMTAuODE1MiAxMy4wOTE1IDExLjU1NTMgMTMuMDkxNSAxMi40NjgyQzEzLjA5MTUgMTMuMzgxMSAxMi4zNTAyIDE0LjEyMTIgMTEuNDM1NyAxNC4xMjEyWk0xNy41MzU3IDE0LjEyMTJDMTYuNjIxMyAxNC4xMjEyIDE1Ljg4IDEzLjM4MTEgMTUuODggMTIuNDY4MkMxNS44OCAxMS41NTUzIDE2LjYyMTMgMTAuODE1MiAxNy41MzU3IDEwLjgxNTJDMTguNDUwMiAxMC44MTUyIDE5LjE5MTUgMTEuNTU1MyAxOS4xOTE1IDEyLjQ2ODJDMTkuMTkxNSAxMy4zODExIDE4LjQ1MDIgMTQuMTIxMiAxNy41MzU3IDE0LjEyMTJaIixmaWxsOiJ3aGl0ZSJ9KSk6InBsYW5lIj09PXQ/SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOiJjbGFzc2ljIiE9PW8/e3dpZHRoOiI4NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIn06e3dpZHRoOiI2NSUiLGhlaWdodDoiMTAwJSIsZmlsbDoiI2ZmZiIsc3Ryb2tlOiJub25lIixkaXNwbGF5OiJibG9jayIsbWFyZ2luOiJhdXRvIixtYXJnaW5SaWdodDoiMjElIn0sdmlld0JveDoiMCAwIDMwIDMwIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgiZyIsbnVsbCxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yOS45NDc4IDIuMTI5NTJMMjQuNjYxMyAyNi41MTA0QzI0LjU0ODggMjcuMDQwNyAyNC4xOTczIDI3LjQ4NzMgMjMuNzA1MiAyNy43MjQ1QzIzLjIxMzEgMjcuOTYxOCAyMi42NTA3IDI3Ljk2MTggMjIuMTQ0NiAyNy43MjQ1TDE4LjIwNzggMjUuODI2NUMxOC4yMDc4IDI1LjgyNjUgMTMuMTc0NCAyOS40NDExIDEyLjE0ODEgMjkuOTE1NkMxMS45NTEyIDMwLjAxMzMgMTEuODY2OSAyOS45OTkzIDExLjcyNjMgMjkuOTk5M0MxMS41Mjk0IDI5Ljk5OTMgMTEuMzE4NSAyOS45NDM1IDExLjE0OTggMjkuODMxOEMxMC44NTQ2IDI5LjYzNjUgMTAuNjcxOCAyOS4zMTU1IDEwLjY3MTggMjguOTY2NlYyMS41NTZDMTAuNjU3NyAyMS40MDI1IDEwLjY3MTggMjEuMjQ5IDEwLjc1NjIgMjEuMDk1NUMxMC43NTYyIDIxLjA5NTUgMTAuNzcwMiAyMS4wNjc2IDEwLjc4NDMgMjEuMDUzNkMxMC44MjY1IDIwLjk4MzggMTAuODY4NiAyMC45MTQxIDEwLjkyNDkgMjAuODQ0M0wyMy44NzQgNi43NzY4MUw3Ljc3NTQ4IDE5LjkyMzJDNy42NDg5NCAyMC4wNDg4IDcuNDgwMjIgMjAuMTYwNCA3LjI5NzQ0IDIwLjIwMjNDNy4wMDIxOSAyMC4yODYxIDYuNjc4ODEgMjAuMjMwMiA2LjQyNTc0IDIwLjA2MjhMMS4wMTI3MSAxNy42MzQ0QzAuNDA4MTQxIDE3LjM0MTQgMC4wMjg1MjYxIDE2Ljc1NTIgMC4wMDA0MDY0NzYgMTYuMDg1M0MtMC4wMTM2NTMzIDE1LjQyOTQgMC4zMzc4NDIgMTQuODE1NCAwLjkyODM1MyAxNC40OTQ0TDI3LjM2MDggMC4yMTc1NjhDMjcuOTc5NCAtMC4xMTczNzIgMjguNzEwNSAtMC4wNjE1NDg5IDI5LjI4NyAwLjM1NzEyNkMyOS44NDk0IDAuNzc1ODAxIDMwLjEwMjQgMS40NTk2NCAyOS45NjE4IDIuMTI5NTJIMjkuOTQ3OFoiLGZpbGw6IndoaXRlIn0pKSk6SC5hLmNyZWF0ZUVsZW1lbnQoInN2ZyIse3N0eWxlOnt3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIixmaWxsOiIjZmZmIixzdHJva2U6Im5vbmUifSx2aWV3Qm94OiIwIC0yNTYgMTg1MCAxODUwIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHhtbG5zWGxpbms6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse3RyYW5zZm9ybToibWF0cml4KDAuNzExODY0NDEsMCwwLC0wLjcxMTg2NDQxLDI4OC41NDIzNywxMDkzLjk0ODIpIixkOiJNIDcwNCwxMTUyIFEgNTUxLDExNTIgNDE4LDExMDAgMjg1LDEwNDggMjA2LjUsOTU5IDEyOCw4NzAgMTI4LDc2OCBxIDAsLTgyIDUzLC0xNTggNTMsLTc2IDE0OSwtMTMyIGwgOTcsLTU2IC0zNSwtODQgcSAzNCwyMCA2MiwzOSBsIDQ0LDMxIDUzLC0xMCBxIDc4LC0xNCAxNTMsLTE0IDE1MywwIDI4Niw1MiAxMzMsNTIgMjExLjUsMTQxIDc4LjUsODkgNzguNSwxOTEgMCwxMDIgLTc4LjUsMTkxIC03OC41LDg5IC0yMTEuNSwxNDEgLTEzMyw1MiAtMjg2LDUyIHogbSAwLDEyOCBxIDE5MSwwIDM1My41LC02OC41IFEgMTIyMCwxMTQzIDEzMTQsMTAyNSAxNDA4LDkwNyAxNDA4LDc2OCAxNDA4LDYyOSAxMzE0LDUxMSAxMjIwLDM5MyAxMDU3LjUsMzI0LjUgODk1LDI1NiA3MDQsMjU2IDYxOCwyNTYgNTI4LDI3MiA0MDQsMTg0IDI1MCwxNDQgMjE0LDEzNSAxNjQsMTI4IGggLTMgcSAtMTEsMCAtMjAuNSw4IC05LjUsOCAtMTEuNSwyMSAtMSwzIC0xLDYuNSAwLDMuNSAwLjUsNi41IDAuNSwzIDIsNiBsIDIuNSw1IHEgMCwwIDMuNSw1LjUgMy41LDUuNSA0LDUgMC41LC0wLjUgNC41LDUgNCw1LjUgNCw0LjUgNSw2IDIzLDI1IDE4LDE5IDI2LDI5LjUgOCwxMC41IDIyLjUsMjkgUSAyMzUsMzAzIDI0NS41LDMyMyAyNTYsMzQzIDI2NiwzNjcgMTQyLDQzOSA3MSw1NDQgMCw2NDkgMCw3NjggMCw5MDcgOTQsMTAyNSAxODgsMTE0MyAzNTAuNSwxMjExLjUgNTEzLDEyODAgNzA0LDEyODAgWiBNIDE1MjYsMTExIHEgMTAsLTI0IDIwLjUsLTQ0IDEwLjUsLTIwIDI1LC0zOC41IDE0LjUsLTE4LjUgMjIuNSwtMjkgOCwtMTAuNSAyNiwtMjkuNSAxOCwtMTkgMjMsLTI1IDEsLTEgNCwtNC41IDMsLTMuNSA0LjUsLTUgMS41LC0xLjUgNCwtNSAyLjUsLTMuNSAzLjUsLTUuNSBsIDIuNSwtNSBxIDAsMCAyLC02IDIsLTYgMC41LC02LjUgLTEuNSwtMC41IC0xLC02LjUgLTMsLTE0IC0xMywtMjIgLTEwLC04IC0yMiwtNyAtNTAsNyAtODYsMTYgUSAxMzg4LC03MiAxMjY0LDE2IDExNzQsMCAxMDg4LDAgODE3LDAgNjE2LDEzMiBxIDU4LC00IDg4LC00IDE2MSwwIDMwOSw0NSAxNDgsNDUgMjY0LDEyOSAxMjUsOTIgMTkyLDIxMiA2NywxMjAgNjcsMjU0IDAsNzcgLTIzLDE1MiAxMjksLTcxIDIwNCwtMTc4IDc1LC0xMDcgNzUsLTIzMCAwLC0xMjAgLTcxLC0yMjQuNSBRIDE2NTAsMTgzIDE1MjYsMTExIFoifSkpfWZ1bmN0aW9uIE1yKCl7dmFyIGU9KHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MpLmFjdGl2YXRvclNpemUsdD10LmJ1dHRvblN0eWxlO3JldHVybiBILmEuY3JlYXRlRWxlbWVudCgic3BhbiIse3N0eWxlOiJjbGFzc2ljIj09PXQ/e2Rpc3BsYXk6ImdyaWQiLHBsYWNlQ29udGVudDoiY2VudGVyIixmb250U2l6ZToiIi5jb25jYXQoZS0xMCwicHgiKSxmb250V2VpZ2h0OiI2MDAiLGNvbG9yOiIjZmZmZmZmIixtYXJnaW5Ub3A6IjFweCIsd2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsZm9udEZhbWlseToiVGltZXMgTmV3IFJvbWFuLCBzYW5zLXNlcmlmIixsaW5lSGVpZ2h0OiIxIn06e2ZvbnRTaXplOiIiLmNvbmNhdCguNSplKzE1LCJweCIpLGZvbnRXZWlnaHQ6IjYwMCIsY29sb3I6IiNmZmZmZmYiLGZvbnRGYW1pbHk6IlRpbWVzIE5ldyBSb21hbiwgc2Fucy1zZXJpZiIsbGluZUhlaWdodDoiMSJ9fSwiw5ciKX12YXIgaD17YXBwbGU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmFwcGxlLHI9dC5hcHBsZUNvbG9yLG89dC5hcHBsZUljb24sdD10LmFwcGxlTGFiZWwsbj1hKCl8fHYoKT8iaW1lc3NhZ2U6Ly8iLmNvbmNhdChuKTpudWxsO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiYXBwbGUiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KGp0LHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LHlvdXR1YmU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnlvdXR1YmUscj10LnlvdXR1YmVDb2xvcixvPXQueW91dHViZUljb24sYT10LnlvdXR1YmVMYWJlbCxuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQpe2Nhc2UiZXZlcnl3aGVyZSI6cmV0dXJuIG51bGw7Y2FzZSJkZXNrdG9wIjppZihVKCkpcmV0dXJuIG51bGw7Y2FzZSJtb2JpbGUiOmlmKCFVKCkpcmV0dXJuIG51bGw7Y2FzZSJub3doZXJlIjpyZXR1cm4gZTtkZWZhdWx0OnJldHVybiBudWxsfX0obix0LnlvdXR1YmVTaG93UG9wdXBQbGF0Zm9ybSk7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ5b3V0dWJlIixsaW5rOm4sdGFyZ2V0OiJfYmxhbmsiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoJHQse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sY2FsbDpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuY2FsbCxyPXQuY2FsbENvbG9yLG89dC5jYWxsSWNvbixhPXQuY2FsbExhYmVsLG49ZnVuY3Rpb24oZSx0KXtzd2l0Y2godCl7Y2FzZSJldmVyeXdoZXJlIjpyZXR1cm4gbnVsbDtjYXNlImRlc2t0b3AiOnJldHVybiBVKCk/bnVsbDoidGVsOiIuY29uY2F0KGUpO2Nhc2UibW9iaWxlIjpyZXR1cm4gVSgpPyJ0ZWw6Ii5jb25jYXQoZSk6bnVsbDtjYXNlIm5vd2hlcmUiOnJldHVybiJ0ZWw6Ii5jb25jYXQoZSk7ZGVmYXVsdDpyZXR1cm4gbnVsbH19KG4sdC5jYWxsU2hvd1BvcHVwUGxhdGZvcm0pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiY2FsbCIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoWXQse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sY29udGFjdGZvcm06ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmNvbnRhY3Rmb3JtQ29sb3Iscj10LmNvbnRhY3Rmb3JtSWNvbix0PXQuY29udGFjdGZvcm1MYWJlbDtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImNvbnRhY3Rmb3JtIixpY29uOkguYS5jcmVhdGVFbGVtZW50KHRuLHtzaXplOmV9KSxjb2xvcjpufHwhMSxjdXN0b21JY29uOiEhcixsYWJlbDp0fSl9LGRpc2NvcmQ6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmRpc2NvcmQscj10LmRpc2NvcmRDb2xvcixvPXQuZGlzY29yZEljb24sdD10LmRpc2NvcmRMYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImRpc2NvcmQiLGxpbms6bix0YXJnZXQ6Il9ibGFuayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChsbix7c2l6ZTplfSksY29sb3I6cnx8ITEsY3VzdG9tSWNvbjohIW8sbGFiZWw6dH0pfSx0ZWFtczpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQudGVhbXMscj10LnRlYW1zQ29sb3Isbz10LnRlYW1zSWNvbix0PXQudGVhbXNMYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InRlYW1zIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoY24se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sY2FsZW5kYXI6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LmNhbGVuZGFyQ29sb3Iscj10LmNhbGVuZGFySWNvbix0PXQuY2FsZW5kYXJMYWJlbDtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImNhbGVuZGFyIixpY29uOkguYS5jcmVhdGVFbGVtZW50KHNuLHtzaXplOmV9KSxjb2xvcjpufHwhMSxjdXN0b21JY29uOiEhcixsYWJlbDp0fSl9LGVtYWlsOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5lbWFpbCxyPXQuZW1haWxDb2xvcixvPXQuZW1haWxJY29uLHQ9dC5lbWFpbExhYmVsLG49Im1haWx0bzoiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImVtYWlsIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQodW4se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sZmFjZWJvb2s6ZnVuY3Rpb24oZSl7dmFyIHQsbixlPWUuc2l6ZSxyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLG89ci5zdGF0ZSxhPXIuYWN0aW9ucy5jbG9zZUJ1dHRvblBvcHVwLHI9ci5zZXR0aW5ncyxpPXIuZmFjZWJvb2ssbD1yLmZhY2Vib29rQ29sb3IsYz1yLmZhY2Vib29rSWNvbix1PXIuZmFjZWJvb2tMYWJlbCxzPXIuZmFjZWJvb2tGcmFtZSxmPXIuc3Vic2NyaXB0aW9uQ3JlYXRlZERhdGUscj1sfHwhMSxsPSEhYztyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJmYWNlYm9vayI9PT1vLmJ1dHRvblBvcHVwJiZVKCkmJnMmJiF4bihmLHMpJiYob3BlbigiaHR0cHM6Ly9tLm1lLyIuY29uY2F0KGkpLCJnZXRidXR0b24tcG9wdXAtIitvLmJ1dHRvblBvcHVwLCJwb3B1cCxsZWZ0PTAsdG9wPTAsd2lkdGg9NjAwLGhlaWdodD01MDAiKSxhKG8uYnV0dG9uUG9wdXApKX0sW28uYnV0dG9uUG9wdXBdKSxILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiZmFjZWJvb2siLGxpbms6KGM9Zix0PXMsbj1pLEsmJih4bihjLHQpfHx0KT92b2lkIDA6Imh0dHBzOi8vbS5tZS8iLmNvbmNhdChuKSksdGFyZ2V0OiJfYmxhbmsiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoaG4se3NpemU6ZX0pLGNvbG9yOnIsY3VzdG9tSWNvbjpsLGxhYmVsOnV9KX0sZ29vZ2xlbWFwOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5nb29nbGVtYXAscj10Lmdvb2dsZW1hcENvbG9yLG89dC5nb29nbGVtYXBJY29uLGE9dC5nb29nbGVtYXBMYWJlbCxuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQpe2Nhc2UiZXZlcnl3aGVyZSI6cmV0dXJuIG51bGw7Y2FzZSJkZXNrdG9wIjppZihVKCkpcmV0dXJuIG51bGw7Y2FzZSJtb2JpbGUiOmlmKCFVKCkpcmV0dXJuIG51bGw7Y2FzZSJub3doZXJlIjpyZXR1cm4gZTtkZWZhdWx0OnJldHVybiBudWxsfX0obix0Lmdvb2dsZW1hcFNob3dQb3B1cFBsYXRmb3JtKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6Imdvb2dsZW1hcCIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KHZuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDphfSl9LGluc3RhZ3JhbTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuaW5zdGFncmFtLHI9dC5pbnN0YWdyYW1Db2xvcixvPXQuaW5zdGFncmFtSWNvbix0PXQuaW5zdGFncmFtTGFiZWwsbj1mdW5jdGlvbihlKXtlPWUmJmUuc3RhcnRzV2l0aCgiaHR0cHM6Ly9pZy5tZS9tLyIpP2U6Imh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vIi5jb25jYXQoZSk7cmV0dXJuIGV9KG4pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiaW5zdGFncmFtIixsaW5rOm4sdGFyZ2V0OiJfYmxhbmsiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoQ24se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sbGluZTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQubGluZSxyPXQubGluZUNvbG9yLG89dC5saW5lSWNvbix0PXQubGluZUxhYmVsLG49VSgpP251bGw6Ii8vIj09PShuPW4pLnN1YnN0cigwLDIpPyJodHRwczoiK246Imh0dHAiIT09bi5zdWJzdHIoMCw0KT8iaHR0cHM6Ly8iK246bjtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImxpbmUiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoRW4se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGxpbms6bixjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LGxpbms6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10Lmxpbmsscj10LmxpbmtJY29uLG89dC5saW5rQ29sb3IsdD10LmxpbmtMYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImxpbmsiLHRhcmdldDoiX2JsYW5rIixsaW5rOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudChQbix7c2l6ZTplfSksY29sb3I6b3x8ITEsY3VzdG9tSWNvbjohIXIsbGFiZWw6dH0pfSxsaW5rZWRpbjpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQubGlua2VkaW4scj10LmxpbmtlZGluSWNvbixvPXQubGlua2VkaW5Db2xvcix0PXQubGlua2VkaW5MYWJlbCxuPSIiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6ImxpbmtlZGluIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoSW4se3NpemU6ZX0pLGNvbG9yOm98fCExLGN1c3RvbUljb246ISFyLGxhYmVsOnR9KX0sc2t5cGU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnNreXBlLHI9dC5za3lwZUljb24sbz10LnNreXBlQ29sb3IsdD10LnNreXBlTGFiZWwsbj0ic2t5cGU6Ii5jb25jYXQobiwiP2NoYXQiKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InNreXBlIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoX24se3NpemU6ZX0pLGNvbG9yOm98fCExLGN1c3RvbUljb246ISFyLGxhYmVsOnR9KX0sc2xhY2s6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnNsYWNrLHI9dC5zbGFja0ljb24sbz10LnNsYWNrQ29sb3IsdD10LnNsYWNrTGFiZWwsbj0iIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJzbGFjayIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KHpuLHtzaXplOmV9KSxjb2xvcjpvfHwhMSxjdXN0b21JY29uOiEhcixsYWJlbDp0fSl9LHNtczpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuc21zLHI9dC5zbXNDb2xvcixvPXQuc21zSWNvbixhPXQuc21zTGFiZWwsbj1mdW5jdGlvbihlLHQpe3N3aXRjaCh0KXtjYXNlImV2ZXJ5d2hlcmUiOnJldHVybiBudWxsO2Nhc2UiZGVza3RvcCI6cmV0dXJuIFUoKT9udWxsOiJzbXM6Ii5jb25jYXQoZSk7Y2FzZSJtb2JpbGUiOnJldHVybiBVKCk/InNtczoiLmNvbmNhdChlKTpudWxsO2Nhc2Uibm93aGVyZSI6cmV0dXJuInNtczoiLmNvbmNhdChlKTtkZWZhdWx0OnJldHVybiBudWxsfX0obix0LnNtc1Nob3dQb3B1cFBsYXRmb3JtKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InNtcyIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoVG4se3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sc25hcGNoYXQ6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnNuYXBjaGF0LHI9dC5zbmFwY2hhdENvbG9yLG89dC5zbmFwY2hhdEljb24sdD10LnNuYXBjaGF0TGFiZWwscj1yfHwhMSxvPSEhbztyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7bGluazpmdW5jdGlvbihlKXtpZihEKCkpcmV0dXJuImh0dHBzOi8vd3d3LnNuYXBjaGF0LmNvbS9hZGQvIi5jb25jYXQoZSl9KG4pLHNpemU6ZSxuYW1lOiJzbmFwY2hhdCIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChObix7c2l6ZTplfSksY29sb3I6cixjdXN0b21JY29uOm8sbGFiZWw6dH0pfSx0ZWxlZ3JhbTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQudGVsZWdyYW0scj10LnRlbGVncmFtQ29sb3Isbz10LnRlbGVncmFtSWNvbix0PXQudGVsZWdyYW1MYWJlbCxuPShVKCk/Imh0dHBzOi8vdGVsZWdyYW0ubWUvIjoidGc6Ly9yZXNvbHZlP2RvbWFpbj0iKS5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ0ZWxlZ3JhbSIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KEZuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LHRpa3RvazpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQudGlrdG9rLHI9dC50aWt0b2tDb2xvcixvPXQudGlrdG9rSWNvbix0PXQudGlrdG9rTGFiZWwsbj0iaHR0cHM6Ly90aWt0b2suY29tL0AiLmNvbmNhdChuKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6InRpa3RvayIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KEhuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LGNhbGxiYWNrOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5jYWxsYmFja0NvbG9yLHI9dC5jYWxsYmFja0ljb24sdD10LmNhbGxiYWNrTGFiZWw7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJjYWxsYmFjayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChLbix7c2l6ZTplfSksY29sb3I6bnx8ITEsY3VzdG9tSWNvbjohIXIsbGFiZWw6dH0pfSx0d2l0dGVyOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC50d2l0dGVyLHI9dC50d2l0dGVyQ29sb3Isbz10LnR3aXR0ZXJJY29uLHQ9dC50d2l0dGVyTGFiZWwsbj0iaHR0cDovL3R3aXR0ZXIuY29tLyIuY29uY2F0KG4pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToidHdpdHRlciIsdGFyZ2V0OiJfYmxhbmsiLGxpbms6bixpY29uOkguYS5jcmVhdGVFbGVtZW50KFZuLHtzaXplOmV9KSxjb2xvcjpyfHwhMSxjdXN0b21JY29uOiEhbyxsYWJlbDp0fSl9LHZpYmVyOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC52aWJlcixyPXQudmliZXJDb2xvcixvPXQudmliZXJJY29uLHQ9dC52aWJlckxhYmVsLHI9cnx8ITEsbz0hIW87cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse2xpbms6ZnVuY3Rpb24oZSl7aWYoRCgpJiYvXlswLTkgKCkrLV0rJC8udGVzdChlKSlyZXR1cm4gZT1lLnJlcGxhY2UoL1xEKy9nLCIiKS5yZXBsYWNlKC9eWzBdKy9nLCIiKSwodygpPyJ2aWJlcjovL2NoYXQ/bnVtYmVyPSUyQiI6YSgpPyJ2aWJlcjovL2NoYXQ/bnVtYmVyPSsiOiJ2aWJlcjovL2NoYXQ/bnVtYmVyPSIpLmNvbmNhdChlKX0obiksdGFyZ2V0OiJfYmxhbmsiLHNpemU6ZSxuYW1lOiJ2aWJlciIsaWNvbjpILmEuY3JlYXRlRWxlbWVudCgkbix7c2l6ZTplfSksY29sb3I6cixjdXN0b21JY29uOm8sbGFiZWw6dH0pfSx2a29udGFrdGU6ZnVuY3Rpb24oZSl7dmFyIGU9ZS5zaXplLHQ9T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3Msbj10LnZrb250YWt0ZSxyPXQudmtvbnRha3RlQ29sb3Isbz10LnZrb250YWt0ZUljb24sdD10LnZrb250YWt0ZUxhYmVsLG49Imh0dHBzOi8vdmsubWUvIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ2a29udGFrdGUiLHRhcmdldDoiX2JsYW5rIixsaW5rOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudCh0cix7c2l6ZTplfSksY29sb3I6cnx8ITEsY3VzdG9tSWNvbjohIW8sbGFiZWw6dH0pfSx3YXplOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC53YXplLHI9dC53YXplQ29sb3Isbz10LndhemVJY29uLHQ9dC53YXplTGFiZWwsbj0iIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ3YXplIix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQobnIse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOnR9KX0sd2VjaGF0OmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC53ZWNoYXQscj10LndlY2hhdENvbG9yLG89dC53ZWNoYXRJY29uLGE9dC53ZWNoYXRMYWJlbCxuPWZ1bmN0aW9uKGUsdCl7c3dpdGNoKHQpe2Nhc2UiZXZlcnl3aGVyZSI6cmV0dXJuIG51bGw7Y2FzZSJkZXNrdG9wIjpyZXR1cm4gVSgpP251bGw6Imh0dHA6Ly93ZWl4aW4ucXEuY29tL3IvIi5jb25jYXQoZSk7Y2FzZSJtb2JpbGUiOnJldHVybiBVKCk/Imh0dHA6Ly93ZWl4aW4ucXEuY29tL3IvIi5jb25jYXQoZSk6bnVsbDtjYXNlIm5vd2hlcmUiOnJldHVybiJodHRwOi8vd2VpeGluLnFxLmNvbS9yLyIuY29uY2F0KGUpO2RlZmF1bHQ6cmV0dXJuIG51bGx9fShuLHQud2VjaGF0U2hvd1BvcHVwUGxhdGZvcm0pO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToid2VjaGF0Iix0YXJnZXQ6Il9ibGFuayIsbGluazpuLGljb246SC5hLmNyZWF0ZUVsZW1lbnQocnIse3NpemU6ZX0pLGNvbG9yOnJ8fCExLGN1c3RvbUljb246ISFvLGxhYmVsOmF9KX0sd2hhdHNhcHA6ZnVuY3Rpb24oZSl7dmFyIHQsZT1lLnNpemUsbj1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxyPW4ud2hhdHNhcHAsbz1uLndoYXRzYXBwQ29sb3IsYT1uLndoYXRzYXBwSWNvbixpPW4ud2hhdHNhcHBMYWJlbCxsPW4ucHJlRmlsbGVkTWVzc2FnZSxuPW4ud2hhdHNhcHBTaG93UG9wdXAscj0obD1sLChyPXIpJiZyLnN0YXJ0c1dpdGgoImh0dHBzOi8vY2hhdC53aGF0c2FwcC5jb20vIik/dD1yOihyPXI/ci5tYXRjaCgvXGQrL2cpLmpvaW4oIiIpOm51bGwsdD0iaHR0cHM6Ly93YS5tZS8iLmNvbmNhdChyKSxsJiYodD0iIi5jb25jYXQodCwiP3RleHQ9IikuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChsKSkpKSx0KTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQocCx7c2l6ZTplLG5hbWU6IndoYXRzYXBwIixsaW5rOm4/bnVsbDpyLHRhcmdldDpuP251bGw6Il9ibGFuayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChscix7c2l6ZTplfSksY29sb3I6b3x8ITEsY3VzdG9tSWNvbjohIWEsbGFiZWw6aX0pfSx3b25kZXJjaGF0OmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC53b25kZXJjaGF0Q29sb3Iscj10LndvbmRlcmNoYXRJY29uLHQ9dC53b25kZXJjaGF0TGFiZWw7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJ3b25kZXJjaGF0IixsaW5rOm51bGwsaWNvbjpILmEuY3JlYXRlRWxlbWVudChmcix7c2l6ZTplfSksY29sb3I6bnx8ITEsY3VzdG9tSWNvbjohIXIsbGFiZWw6dH0pfSxhaTpmdW5jdGlvbihlKXt2YXIgZT1lLnNpemUsdD1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyxuPXQuYWlDb2xvcixyPXQuYWlJY29uLHQ9dC5haUxhYmVsO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChwLHtzaXplOmUsbmFtZToiYWkiLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoeHIse3NpemU6ZX0pLGNvbG9yOm58fCExLGN1c3RvbUljb246ISFyLGxhYmVsOnR9KX0sa2FrYW90YWxrOmZ1bmN0aW9uKGUpe3ZhciBlPWUuc2l6ZSx0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLG49dC5rYWthb3RhbGsscj10Lmtha2FvdGFsa0NvbG9yLG89dC5rYWthb3RhbGtJY29uLHQ9dC5rYWthb3RhbGtMYWJlbCxuPSJodHRwczovL29wZW4ua2FrYW8uY29tL28vIi5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KHAse3NpemU6ZSxuYW1lOiJrYWthb3RhbGsiLGxpbms6bix0YXJnZXQ6Il9ibGFuayIsaWNvbjpILmEuY3JlYXRlRWxlbWVudChUcix7c2l6ZTplfSksY29sb3I6cnx8ITEsY3VzdG9tSWNvbjohIW8sbGFiZWw6dH0pfX0sUnI9e2FwcGxlOmZ1bmN0aW9uKCl7dmFyIGU9T2JqZWN0KEYudXNlQ29udGV4dCkoViksdD1lLnN0YXRlLGU9ZS5zZXR0aW5ncyxuPWUuYXBwbGVDb2xvcixyPWUuYXBwbGVMYWJlbCxvPWUuYXBwbGUsYT1lLmJnU3R5bGUsZT1lLmFjdGl2YXRvclNpemUsaT1IdChPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtjKCJhcHBsZSI9PT10LmJ1dHRvblBvcHVwKX0pLEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOm4sbWVzc2VuZ2VyVGl0bGU6cixpY29uOkguYS5jcmVhdGVFbGVtZW50KGp0LG51bGwpLGVuYWJsZVBvcHVwOmwsYmdTdHlsZTphLHNpemU6ZX0sSC5hLmNyZWF0ZUVsZW1lbnQoV3QsbnVsbCxILmEuY3JlYXRlRWxlbWVudCgiYSIse2hyZWY6ImltZXNzYWdlOi8vIi5jb25jYXQobyl9LG8pKSl9LHlvdXR1YmU6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS55b3V0dWJlQ29sb3Iscj1lLnlvdXR1YmVMYWJlbCxvPWUueW91dHViZSxhPWUuYmdTdHlsZSxpPWUuYWN0aXZhdG9yU2l6ZSxlPWUuYnV0dG9uU2hhZG93LG89KG89KG89bykucmVwbGFjZSgvd2F0Y2hcP3Y9LywiZW1iZWQvIikuc3BsaXQoIiYiKVswXSwobD1uZXcgVVJMU2VhcmNoUGFyYW1zKS5hcHBlbmQoImNvbnRyb2xzIiwiMCIpLGwuYXBwZW5kKCJhdXRvcGxheSIsIjEiKSxsLmFwcGVuZCgibG9vcCIsIjEiKSwiIi5jb25jYXQobywiPyIpLmNvbmNhdChsLnRvU3RyaW5nKCkpKSxsPVp0KE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksYz1sWzBdLHU9bFsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dSgieW91dHViZSI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBsPVp0KE9iamVjdChGLnVzZVN0YXRlKSghMCksMikscz1sWzBdLGY9bFsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJ5b3V0dWJlIj09PXQuYnV0dG9uUG9wdXAmJmYoITApfSxbdC5idXR0b25Qb3B1cF0pLEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOm4sbWVzc2VuZ2VyVGl0bGU6cixjdXN0b21TZXR0aW5nczoieW91dHViZSIsaWNvbjpILmEuY3JlYXRlRWxlbWVudCgkdCx7Y3VzdG9tU2V0dGluZ3M6InlvdXR1YmUifSksZW5hYmxlUG9wdXA6YyxiZ1N0eWxlOmEsc2l6ZTppfSxILmEuY3JlYXRlRWxlbWVudChLdCx7aXNMb2FkaW5nOnN9LHMmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoUXQse29uTG9hZDpmdW5jdGlvbihlKXtmKCExKX0sc3JjOm8saXNMb2FkaW5nOnMsYnV0dG9uU2hhZG93OmUsYWxsb3dGdWxsU2NyZWVuOiEwLGFsbG93OiJhY2NlbGVyb21ldGVyOyBhdXRvcGxheTsgY2xpcGJvYXJkLXdyaXRlOyBlbmNyeXB0ZWQtbWVkaWE7In0pKSl9LGNhbGw6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS5jYWxsQ29sb3Iscj1lLmNhbGxMYWJlbCxvPWUuY2FsbCxhPWUuY2FsbFFyQ29kZSxpPWUuYmdTdHlsZSxlPWUuYWN0aXZhdG9yU2l6ZSxsPUp0KE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksYz1sWzBdLHU9bFsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dSgiY2FsbCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBsPUp0KE9iamVjdChGLnVzZVN0YXRlKSghMCksMikscz1sWzBdLGY9bFsxXSxsPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7ImxpbmUiPT09dC5idXR0b25Qb3B1cCYmZighMCl9LFt0LmJ1dHRvblBvcHVwXSksInRlbDoiLmNvbmNhdChvKSksZD0iaHR0cHM6Ly9hcGkucXJzZXJ2ZXIuY29tL3YxL2NyZWF0ZS1xci1jb2RlLz9zaXplPTE1MHgxNTAmbWFyZ2luPTEwJmRhdGE9Ii5jb25jYXQobCk7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOm4sbWVzc2VuZ2VyVGl0bGU6cixpY29uOkguYS5jcmVhdGVFbGVtZW50KFl0LG51bGwpLGVuYWJsZVBvcHVwOmMsYmdTdHlsZTppLHNpemU6ZX0sYT9ILmEuY3JlYXRlRWxlbWVudChybix7aXNMb2FkaW5nOnN9LHMmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoImEiLHtocmVmOmx9LG8pLEguYS5jcmVhdGVFbGVtZW50KCJpbWciLHtvbkxvYWQ6ZnVuY3Rpb24oZSl7ZighMSl9LGFsdDoiY2FsbCIsc3JjOmQsaGVpZ2h0OiIxNTBweCIsd2lkdGg6IjE1MHB4In0pKTpILmEuY3JlYXRlRWxlbWVudChubixudWxsLEguYS5jcmVhdGVFbGVtZW50KCJhIix7aHJlZjpsfSxvKSkpfSxjb250YWN0Zm9ybTpmdW5jdGlvbigpe3ZhciBlLHQsbj1PYmplY3QoRi51c2VDb250ZXh0KShWKSxyPW4uc3RhdGUsbj1uLnNldHRpbmdzLG89bi5jb250YWN0Zm9ybSxhPW4uY29udGFjdGZvcm1Db2xvcixpPW4uY29udGFjdGZvcm1Qb3B1cFRpdGxlLGw9KG4uY29udGFjdGZvcm1Ib3N0LG4uY29udGFjdGZvcm1Qb3B1cExhbmcpLGM9bi5rZXksYz12b2lkIDA9PT1jP251bGw6Yyx1PW4ubWlycm9yLHM9bi5iZ1N0eWxlLGY9bi5hY3RpdmF0b3JTaXplLGQ9bi5oYXNoSWQsZD12b2lkIDA9PT1kP251bGw6ZCxuPW4uc2NyaXB0SWQsbj12b2lkIDA9PT1uP251bGw6bixwPW9uKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksbT1wWzBdLGg9cFsxXSxnPShwPW8sbz1sLGw9YyxjPXUsdT1kLGQ9bixuPWxvY2F0aW9uLmhvc3RuYW1lLGc9ImdldGJ1dHRvbi5pbyIsdD0iaHR0cHM6Ly9nZXRidXR0b24uaW8iLGI9bi5zbGljZSgwLC1nLmxlbmd0aCksbi5lbmRzV2l0aChnKSYmWyIiLCIuIl0uaW5jbHVkZXMoYi5jaGFyQXQoYi5sZW5ndGgtMSkpJiYoZT0vXi4rQC4rXC4uKyQvaS50ZXN0KHApP3A6bnVsbCksbj1uZXcgVVJMU2VhcmNoUGFyYW1zLGwmJm4uYXBwZW5kKCJ3aWRnZXRfa2V5IixsKSxlJiZuLmFwcGVuZCgidG8iLGUpLGMmJm4uYXBwZW5kKCJtaXJyb3IiLGMpLG8mJiJlbiIhPT1vJiZuLmFwcGVuZCgibGFuZyIsbyksKHV8fGQpJiZuLmFwcGVuZCgiaGFzaF9pZCIsdXx8ZCksdCsiL2NvbnRhY3QtYnV0dG9uPyIrbi50b1N0cmluZygpKTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7aCgiY29udGFjdGZvcm0iPT09ci5idXR0b25Qb3B1cCl9KTt2YXIgYj1vbihPYmplY3QoRi51c2VTdGF0ZSkoITApLDIpLHA9YlswXSx5PWJbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXsibGluZSI9PT1yLmJ1dHRvblBvcHVwJiZ5KCEwKX0sW3IuYnV0dG9uUG9wdXBdKSxILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjphLG1lc3NlbmdlclRpdGxlOmksaWNvbjpILmEuY3JlYXRlRWxlbWVudCh0bixudWxsKSxlbmFibGVQb3B1cDptLGJnU3R5bGU6cyxzaXplOmZ9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwscCYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChmbix7b25Mb2FkOmZ1bmN0aW9uKGUpe3koITEpfSxzcmM6Zyxpc0xvYWRpbmc6cH0pKSl9LHNtczpmdW5jdGlvbigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHQ9ZS5zdGF0ZSxlPWUuc2V0dGluZ3Msbj1lLnNtcyxyPWUuc21zQ29sb3Isbz1lLnNtc0xhYmVsLGE9ZS5iZ1N0eWxlLGU9ZS5hY3RpdmF0b3JTaXplLGk9TW4oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxsPWlbMF0sYz1pWzFdO3JldHVybiBPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7Yygic21zIj09PXQuYnV0dG9uUG9wdXApfSksSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6cixtZXNzZW5nZXJUaXRsZTpvLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoVG4sbnVsbCksZW5hYmxlUG9wdXA6bCxiZ1N0eWxlOmEsc2l6ZTplfSxILmEuY3JlYXRlRWxlbWVudChEbixudWxsLEguYS5jcmVhdGVFbGVtZW50KCJhIix7aHJlZjoic21zOiIuY29uY2F0KG4pfSxuKSkpfSxnb29nbGVtYXA6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49KGUuZ29vZ2xlbWFwQ29sb3IsZS5nb29nbGVtYXBMYWJlbCkscj1lLmdvb2dsZW1hcCxvPWUuYmdTdHlsZSxhPWUuYWN0aXZhdG9yU2l6ZSxlPWUuZ29vZ2xlbWFwQ3VzdG9tTWVzc2FnZSxyPSJodHRwczovL2dldGJ1dHRvbi5pby8/Y29udHJvbGxlcj1NYXBCdXR0b24mYWN0aW9uPWluZGV4Jmxpbms9Ii5jb25jYXQociksaT1rbihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2MoImdvb2dsZW1hcCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPWtuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJnb29nbGVtYXAiPT09dC5idXR0b25Qb3B1cCYmcyghMCl9LFt0LmJ1dHRvblBvcHVwXSksSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6IiM5MzkzOTMiLG1lc3NlbmdlclRpdGxlOm4saWNvbjpILmEuY3JlYXRlRWxlbWVudCh2bixudWxsKSxjdXN0b21TZXR0aW5nczoiZ29vZ2xlbWFwIixlbmFibGVQb3B1cDpsLGJnU3R5bGU6byxzaXplOmF9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwsdSYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChPbix7b25Mb2FkOmZ1bmN0aW9uKGUpe3MoITEpfSxzcmM6cixpc0xvYWRpbmc6dSxsb2FkaW5nOiJsYXp5Iixnb29nbGVtYXBDdXN0b21NZXNzYWdlOmV9KSxlJiZILmEuY3JlYXRlRWxlbWVudCgicCIse3N0eWxlOnttYXJnaW46IjdweCAwcHgiLGxpbmVIZWlnaHQ6IjIzcHgifX0sZSkpKX0sY2FsbGJhY2s6ZnVuY3Rpb24oKXt2YXIgZSx0LG4scj1PYmplY3QoRi51c2VDb250ZXh0KShWKSxvPXIuc3RhdGUscj1yLnNldHRpbmdzLGE9ci5jYWxsYmFjayxpPXIuY2FsbGJhY2tDb2xvcixsPXIuY2FsbGJhY2tMYWJlbCxjPShyLmNhbGxiYWNrSG9zdCxyLmNhbGxiYWNrQ3VzdG9tTWVzc2FnZSksdT1yLmNhbGxiYWNrTmFtZVBsYWNlaG9sZGVyLHM9ci5jYWxsYmFja1Bob25lUGxhY2Vob2xkZXIsZj1yLmNhbGxiYWNrU2VuZEJ1dHRvblRleHQsZD1yLmtleSxkPXZvaWQgMD09PWQ/bnVsbDpkLHA9ci5taXJyb3IsbT1yLmJnU3R5bGUsaD1yLmFjdGl2YXRvclNpemUsZz1yLmhhc2hJZCxnPXZvaWQgMD09PWc/bnVsbDpnLHI9ci5zY3JpcHRJZCxyPXZvaWQgMD09PXI/bnVsbDpyLGI9Sm4oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSx5PWJbMF0sdj1iWzFdLHc9KGI9YSxhPWksYz1jLHU9dSxzPXMsZj1mLGQ9ZCxwPXAsZz1nLHI9cix0PWxvY2F0aW9uLmhvc3RuYW1lLHc9ImdldGJ1dHRvbi5pbyIsbj0iaHR0cHM6Ly9nZXRidXR0b24uaW8iLGR8fCh4PXQuc2xpY2UoMCwtdy5sZW5ndGgpLHQuZW5kc1dpdGgodykmJlsiIiwiLiJdLmluY2x1ZGVzKHguY2hhckF0KHgubGVuZ3RoLTEpKSYmKGU9L14uK0AuK1wuLiskL2kudGVzdChiKT9iOm51bGwpKSx0PW5ldyBVUkxTZWFyY2hQYXJhbXMsZCYmdC5hcHBlbmQoIndpZGdldF9rZXkiLGQpLGUmJnQuYXBwZW5kKCJ0byIsZSkscCYmdC5hcHBlbmQoIm1pcnJvciIscCksYSYmdC5hcHBlbmQoImNvbG9yIixhLnNsaWNlKDEpKSxjJiZ0LmFwcGVuZCgiY3VzdG9tX21lc3NhZ2UiLGMpLHUmJnQuYXBwZW5kKCJuYW1lX3BsYWNlaG9sZGVyIix1KSxzJiZ0LmFwcGVuZCgicGhvbmVfcGxhY2Vob2xkZXIiLHMpLGYmJnQuYXBwZW5kKCJzZW5kX3RleHQiLGYpLChnfHxyKSYmdC5hcHBlbmQoImhhc2hfaWQiLGd8fHIpLG4rIi9jYWxsYmFjay1idXR0b24/Iit0LnRvU3RyaW5nKCkpO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXt2KCJjYWxsYmFjayI9PT1vLmJ1dHRvblBvcHVwKX0pO3ZhciB4PUpuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksYj14WzBdLGs9eFsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJjYWxsYmFjayI9PT1vLmJ1dHRvblBvcHVwJiZrKCEwKX0sW28uYnV0dG9uUG9wdXBdKSxILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjppLG1lc3NlbmdlclRpdGxlOmwsaWNvbjpILmEuY3JlYXRlRWxlbWVudChLbixudWxsKSxlbmFibGVQb3B1cDp5LGJnU3R5bGU6bSxzaXplOmh9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwsYiYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChvcix7b25Mb2FkOmZ1bmN0aW9uKGUpe2soITEpfSxzcmM6dyxpc0xvYWRpbmc6Yn0pKSl9LGZhY2Vib29rOmZ1bmN0aW9uKCl7cmV0dXJuIHhuKCk/SC5hLmNyZWF0ZUVsZW1lbnQoeW4sbnVsbCk6SC5hLmNyZWF0ZUVsZW1lbnQoSC5hLkZyYWdtZW50LG51bGwpfSxjYWxlbmRhcjpmdW5jdGlvbigpe3ZhciBlLHQsbixyPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLG89ci5zdGF0ZSxyPXIuc2V0dGluZ3MsYT1yLmNhbGVuZGFyLGk9ci5jYWxlbmRhckNvbG9yLGw9ci5jYWxlbmRhckxhYmVsLGM9KHIuY2FsZW5kYXJIb3N0LHIuY2FsZW5kYXJDdXN0b21NZXNzYWdlKSx1PXIuY2FsZW5kYXJOYW1lUGxhY2Vob2xkZXIscz1yLmNhbGVuZGFyUGhvbmVQbGFjZWhvbGRlcixmPXIuY2FsZW5kYXJFbWFpbFBsYWNlaG9sZGVyLGQ9ci5jYWxlbmRhck1lc3NhZ2VQbGFjZWhvbGRlcixwPXIuY2FsZW5kYXJTZW5kQnV0dG9uVGV4dCxtPXIua2V5LG09dm9pZCAwPT09bT9udWxsOm0saD1yLm1pcnJvcixnPXIuYmdTdHlsZSxiPXIuYWN0aXZhdG9yU2l6ZSx5PXIuaGFzaElkLHk9dm9pZCAwPT09eT9udWxsOnkscj1yLnNjcmlwdElkLHI9dm9pZCAwPT09cj9udWxsOnIsdj1kbihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLHc9dlswXSx4PXZbMV0saz0odj1hLGE9aSxjPWMsdT11LHM9cyxmPWYsZD1kLHA9cCxtPW0saD1oLHk9eSxyPXIsdD1sb2NhdGlvbi5ob3N0bmFtZSxrPSJnZXRidXR0b24uaW8iLG49Imh0dHBzOi8vZ2V0YnV0dG9uLmlvIixtfHwoUz10LnNsaWNlKDAsLWsubGVuZ3RoKSx0LmVuZHNXaXRoKGspJiZbIiIsIi4iXS5pbmNsdWRlcyhTLmNoYXJBdChTLmxlbmd0aC0xKSkmJihlPS9eLitALitcLi4rJC9pLnRlc3Qodik/djpudWxsKSksdD1uZXcgVVJMU2VhcmNoUGFyYW1zLG0mJnQuYXBwZW5kKCJ3aWRnZXRfa2V5IixtKSxlJiZ0LmFwcGVuZCgidG8iLGUpLGgmJnQuYXBwZW5kKCJtaXJyb3IiLGgpLGEmJnQuYXBwZW5kKCJjb2xvciIsYS5zbGljZSgxKSksYyYmdC5hcHBlbmQoImN1c3RvbV9tZXNzYWdlIixjKSx1JiZ0LmFwcGVuZCgibmFtZV9wbGFjZWhvbGRlciIsdSkscyYmdC5hcHBlbmQoInBob25lX3BsYWNlaG9sZGVyIixzKSxmJiZ0LmFwcGVuZCgiZW1haWxfcGxhY2Vob2xkZXIiLGYpLGQmJnQuYXBwZW5kKCJtZXNzYWdlX3BsYWNlaG9sZGVyIixkKSxwJiZ0LmFwcGVuZCgic2VuZF90ZXh0IixwKSwoeXx8cikmJnQuYXBwZW5kKCJoYXNoX2lkIix5fHxyKSxuKyIvY2FsZW5kYXItYnV0dG9uPyIrdC50b1N0cmluZygpKTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7eCgiY2FsZW5kYXIiPT09by5idXR0b25Qb3B1cCl9KTt2YXIgUz1kbihPYmplY3QoRi51c2VTdGF0ZSkoITApLDIpLHY9U1swXSxDPVNbMV07cmV0dXJuIE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXsiY2FsZW5kYXIiPT09by5idXR0b25Qb3B1cCYmQyghMCl9LFtvLmJ1dHRvblBvcHVwXSksSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6aSxtZXNzZW5nZXJUaXRsZTpsLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoc24sbnVsbCksY3VzdG9tU2V0dGluZ3M6ImNhbGVuZGFyIixlbmFibGVQb3B1cDp3LGJnU3R5bGU6ZyxzaXplOmJ9LEguYS5jcmVhdGVFbGVtZW50KCJkaXYiLG51bGwsdiYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChtbix7b25Mb2FkOmZ1bmN0aW9uKGUpe0MoITEpfSxzcmM6ayxpc0xvYWRpbmc6dn0pKSl9LGxpbmU6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS5saW5lLHI9ZS5saW5lQ29sb3Isbz1lLmxpbmVMYWJlbCxhPWUuYmdTdHlsZSxlPWUuYWN0aXZhdG9yU2l6ZSxpPWpuKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksbD1pWzBdLGM9aVsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7YygibGluZSI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPWpuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXSxuPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7ImxpbmUiPT09dC5idXR0b25Qb3B1cCYmcyghMCl9LFt0LmJ1dHRvblBvcHVwXSksLTEhPT0obj0oaT1uKS5pbmRleE9mKCJAIikpPyhuPWkuc2xpY2UobiksImh0dHBzOi8vbGluZS5tZS90aS9wL34iLmNvbmNhdChuKSk6aSksaT0iaHR0cHM6Ly9hcGkucXJzZXJ2ZXIuY29tL3YxL2NyZWF0ZS1xci1jb2RlLz9zaXplPTI1MHgyNTAmbWFyZ2luPTEwJmRhdGE9Ii5jb25jYXQobik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOnIsbWVzc2VuZ2VyVGl0bGU6byxpY29uOkguYS5jcmVhdGVFbGVtZW50KEVuLG51bGwpLGVuYWJsZVBvcHVwOmwsYmdTdHlsZTphLHNpemU6ZX0sSC5hLmNyZWF0ZUVsZW1lbnQoTG4sbnVsbCx1JiZILmEuY3JlYXRlRWxlbWVudChJLG51bGwpLEguYS5jcmVhdGVFbGVtZW50KCJpbWciLHtvbkxvYWQ6ZnVuY3Rpb24oZSl7cyghMSl9LGFsdDoiV2VjaGF0IixzcmM6aSxoZWlnaHQ6IjI1MHB4Iix3aWR0aDoiMjUwcHgifSksSC5hLmNyZWF0ZUVsZW1lbnQoImEiLHtocmVmOiIiLmNvbmNhdChuKSx0YXJnZXQ6Il9ibGFuayJ9LG4pKSl9LHNuYXBjaGF0OmZ1bmN0aW9uKCl7dmFyIGU9T2JqZWN0KEYudXNlQ29udGV4dCkoViksdD1lLnN0YXRlLGU9ZS5zZXR0aW5ncyxuPWUuc25hcGNoYXQscj1lLnNuYXBjaGF0Q29sb3Isbz1lLnNuYXBjaGF0TGFiZWwsYT1lLmJnU3R5bGUsZT1lLmFjdGl2YXRvclNpemUsaT1VbihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2MoInNuYXBjaGF0Ij09PXQuYnV0dG9uUG9wdXApfSk7dmFyIGk9VW4oT2JqZWN0KEYudXNlU3RhdGUpKCEwKSwyKSx1PWlbMF0scz1pWzFdLGk9KE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXsic25hcGNoYXQiPT09dC5idXR0b25Qb3B1cCYmcyghMCl9LFt0LmJ1dHRvblBvcHVwXSksImh0dHBzOi8vZmVlbGluc29uaWNlLWhyZC5hcHBzcG90LmNvbS93ZWIvZGVlcGxpbmsvc25hcGNvZGU/dXNlcm5hbWU9Ii5jb25jYXQobiwiJnR5cGU9UE5HIikpO3JldHVybiBILmEuY3JlYXRlRWxlbWVudChOLHtjb2xvcjpyLG1lc3NlbmdlclRpdGxlOm8saWNvbjpILmEuY3JlYXRlRWxlbWVudChObixudWxsKSxlbmFibGVQb3B1cDpsLGJnU3R5bGU6YSxzaXplOmV9LEguYS5jcmVhdGVFbGVtZW50KEduLG51bGwsdSYmSC5hLmNyZWF0ZUVsZW1lbnQoSSxudWxsKSxILmEuY3JlYXRlRWxlbWVudChxbix7b25Mb2FkOmZ1bmN0aW9uKGUpe3MoITEpfSxhbHQ6IlNuYXBjaGF0IixzcmM6aSxoZWlnaHQ6IjIwMHB4Iix3aWR0aDoiMjAwcHgifSksSC5hLmNyZWF0ZUVsZW1lbnQoV24sbnVsbCxuKSkpfSx2aWJlcjpmdW5jdGlvbigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHQ9ZS5zdGF0ZSxlPWUuc2V0dGluZ3Msbj1lLnZpYmVyLHI9ZS52aWJlckNvbG9yLG89ZS52aWJlckxhYmVsLGE9ZS5iZ1N0eWxlLGU9ZS5hY3RpdmF0b3JTaXplLGk9Wm4oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxsPWlbMF0sYz1pWzFdO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtjKCJ2aWJlciI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPVpuKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXSxmPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7InZpYmVyIj09PXQuYnV0dG9uUG9wdXAmJnMoITApfSxbdC5idXR0b25Qb3B1cF0pLC9eWzAtOSAoKSstXSskLy50ZXN0KGk9bik/KGY9aS5yZXBsYWNlKC9cRCsvZywiIikucmVwbGFjZSgvXlswXSsvZywiIikse3FyOiJ2aWJlcjovL2FkZD9udW1iZXI9Ii5jb25jYXQoZiksbGluazoidmliZXI6Ly9jaGF0P251bWJlcj0iLmNvbmNhdChmKX0pOntxcjoidmliZXI6Ly9hZGQ/bnVtYmVyPSIuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChpKSksbGluazoidmliZXI6Ly9wYT9jaGF0VVJJPSIuY29uY2F0KGVuY29kZVVSSUNvbXBvbmVudChpKSl9KSxpPWYubGluayxkPSJodHRwczovL2FwaS5xcnNlcnZlci5jb20vdjEvY3JlYXRlLXFyLWNvZGUvP3NpemU9MjUweDI1MCZtYXJnaW49MTAmZGF0YT0iLmNvbmNhdChmLnFyKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6cixtZXNzZW5nZXJUaXRsZTpvLGljb246SC5hLmNyZWF0ZUVsZW1lbnQoJG4sbnVsbCksZW5hYmxlUG9wdXA6bCxiZ1N0eWxlOmEsc2l6ZTplfSxILmEuY3JlYXRlRWxlbWVudChRbixudWxsLHUmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoImltZyIse29uTG9hZDpmdW5jdGlvbihlKXtzKCExKX0sYWx0OiJWaWJlciIsc3JjOmQsaGVpZ2h0OiIyNTBweCIsd2lkdGg6IjI1MHB4In0pLEguYS5jcmVhdGVFbGVtZW50KFluLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoImEiLHtocmVmOmksdGFyZ2V0OiJfYmxhbmsifSxuLEguYS5jcmVhdGVFbGVtZW50KCJiciIsbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoInNwYW4iLG51bGwsIihPcGVuIGluIFZpYmVyIGZvciBEZXNrdG9wKSIpKSkpKX0sd2hhdHNhcHA6ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG49ZS53aGF0c2FwcEFnZW50SW1hZ2UxLHI9ZS53aGF0c2FwcEFnZW50SW1hZ2UyLG89ZS53aGF0c2FwcEFnZW50SW1hZ2UzLGE9ZS53aGF0c2FwcEFnZW50SW1hZ2U0LGk9ZS53aGF0c2FwcEFnZW50SW1hZ2U1LGw9ZS53aGF0c2FwcEFnZW50TmFtZTEsYz1lLndoYXRzYXBwQWdlbnROYW1lMix1PWUud2hhdHNhcHBBZ2VudE5hbWUzLHM9ZS53aGF0c2FwcEFnZW50TmFtZTQsZj1lLndoYXRzYXBwQWdlbnROYW1lNSxkPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uMSxwPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uMixtPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uMyxoPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uNCxnPWUud2hhdHNhcHBBZ2VudFBvc2l0aW9uNSxiPWUud2hhdHNhcHAseT1lLndoYXRzYXBwQWdlbnROdW1iZXIyLHY9ZS53aGF0c2FwcEFnZW50TnVtYmVyMyx3PWUud2hhdHNhcHBBZ2VudE51bWJlcjQseD1lLndoYXRzYXBwQWdlbnROdW1iZXI1LGs9ZS5wcmVGaWxsZWRNZXNzYWdlLFM9ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2UyLEM9ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2UzLEU9ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2U0LE89ZS53aGF0c2FwcFByZUZpbGxlZE1lc3NhZ2U1LGo9ZS5idXR0b25Cb3JkZXJSYWRpdXMsQT1lLndoYXRzYXBwQ29sb3IsUD1lLmJnU3R5bGUsST1lLmFjdGl2YXRvclNpemUsXz1lLm1pcnJvcix6PWUuYm9yZGVyLGU9ZS53aGF0c2FwcExhYmVsLFQ9dXIoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxMPVRbMF0sTT1UWzFdLFI9KE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtNKCJ3aGF0c2FwcCI9PT10LmJ1dHRvblBvcHVwKX0pLCQoaikpLFQ9T2JqZWN0KEYudXNlTWVtbykoZnVuY3Rpb24oKXtyZXR1cm5be3Bob3RvOm4sbmFtZTpsLHBvc2l0aW9uOmQsbnVtYmVyOmIsbWVzc2FnZTprfSx7cGhvdG86cixuYW1lOmMscG9zaXRpb246cCxudW1iZXI6eSxtZXNzYWdlOlN9LHtwaG90bzpvLG5hbWU6dSxwb3NpdGlvbjptLG51bWJlcjp2LG1lc3NhZ2U6Q30se3Bob3RvOmEsbmFtZTpzLHBvc2l0aW9uOmgsbnVtYmVyOncsbWVzc2FnZTpFfSx7cGhvdG86aSxuYW1lOmYscG9zaXRpb246ZyxudW1iZXI6eCxtZXNzYWdlOk99XX0sW24scixvLGEsaSxsLGMsdSxzLGYsZCxwLG0saCxnLGIseSx2LHcseCxrLFMsQyxFLE9dKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6QSxtZXNzZW5nZXJUaXRsZTplLGljb246SC5hLmNyZWF0ZUVsZW1lbnQobHIse2lzSXRlbUljb246IndhX2hlYWRlcl9pY29uIn0pLGVuYWJsZVBvcHVwOkwsY3VzdG9tU2V0dGluZ3M6IndoYXRzYXBwIixiZ1N0eWxlOlAsc2l6ZTpJfSxILmEuY3JlYXRlRWxlbWVudChkcixudWxsLFQubWFwKGZ1bmN0aW9uKGUsdCl7dmFyIG4scixvPWUucGhvdG8sYT1lLm5hbWUsaT1lLnBvc2l0aW9uLGw9ZS5udW1iZXIsZT1lLm1lc3NhZ2UsYz0oZT1lLChuPWwpJiZuLnN0YXJ0c1dpdGgoImh0dHBzOi8vY2hhdC53aGF0c2FwcC5jb20vIik/cj1uOihjPW4/bi5tYXRjaCgvXGQrL2cpLmpvaW4oIiIpOm51bGwscj0iaHR0cHM6Ly93YS5tZS8iLmNvbmNhdChjKSxudWxsIT09biYmZSYmKHI9IiIuY29uY2F0KHIsIj90ZXh0PSIpLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQoZSkpKSkscik7cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KCJsaSIse2tleTp0LHN0eWxlOntkaXNwbGF5OiFsJiYibm9uZSJ9fSxILmEuY3JlYXRlRWxlbWVudChwcix7aHJlZjpjLHRhcmdldDoiX2JsYW5rIixyZWw6Im5vcmVmZXJyZXIiLGNvbG9yOkF9LEguYS5jcmVhdGVFbGVtZW50KGdyLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoaHIse2luZGljYXRvclBvc2l0aW9uOlIsbWlycm9yOl99LEguYS5jcmVhdGVFbGVtZW50KG1yLHtzcmM6b3x8bnVsbCxidXR0b25Cb3JkZXJSYWRpdXM6aixib3JkZXI6en0pKSxILmEuY3JlYXRlRWxlbWVudCgiZGl2IixudWxsLEguYS5jcmVhdGVFbGVtZW50KGJyLHttaXJyb3I6X30sYSksSC5hLmNyZWF0ZUVsZW1lbnQoeXIse21pcnJvcjpffSxpKSkpLEguYS5jcmVhdGVFbGVtZW50KGxyLHtpc0l0ZW1JY29uOiEwLGNvbG9yOkF9KSkpfSkpKX0sd2VjaGF0OmZ1bmN0aW9uKCl7dmFyIGU9T2JqZWN0KEYudXNlQ29udGV4dCkoViksdD1lLnN0YXRlLGU9ZS5zZXR0aW5ncyxuPWUud2VjaGF0LHI9ZS53ZWNoYXRDb2xvcixvPWUud2VjaGF0TGFiZWwsYT1lLmJnU3R5bGUsZT1lLmFjdGl2YXRvclNpemUsaT1hcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGw9aVswXSxjPWlbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe2MoIndlY2hhdCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBpPWFyKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksdT1pWzBdLHM9aVsxXSxpPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7IndlY2hhdCI9PT10LmJ1dHRvblBvcHVwJiZzKCEwKX0sW3QuYnV0dG9uUG9wdXBdKSwiaHR0cDovL3dlaXhpbi5xcS5jb20vci8iLmNvbmNhdChlbmNvZGVVUklDb21wb25lbnQobikpKSxpPSJodHRwczovL2FwaS5xcnNlcnZlci5jb20vdjEvY3JlYXRlLXFyLWNvZGUvP3NpemU9MjUweDI1MCZtYXJnaW49MTAmZGF0YT0iLmNvbmNhdChpKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoTix7Y29sb3I6cixtZXNzZW5nZXJUaXRsZTpvLGljb246SC5hLmNyZWF0ZUVsZW1lbnQocnIsbnVsbCksZW5hYmxlUG9wdXA6bCxiZ1N0eWxlOmEsc2l6ZTplfSxILmEuY3JlYXRlRWxlbWVudChjcixudWxsLHUmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoImltZyIse29uTG9hZDpmdW5jdGlvbihlKXtzKCExKX0sYWx0OiJXZWNoYXQiLHNyYzppLGhlaWdodDoiMjUwcHgiLHdpZHRoOiIyNTBweCJ9KSxILmEuY3JlYXRlRWxlbWVudCgiYSIse2hyZWY6Imh0dHA6Ly93ZWl4aW4ucXEuY29tL3IvIi5jb25jYXQobiksdGFyZ2V0OiJfYmxhbmsifSwiaHR0cDovL3dlaXhpbi5xcS5jb20vci8iLmNvbmNhdChuKSkpKX0sd29uZGVyY2hhdDpmdW5jdGlvbigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHQ9ZS5zdGF0ZSxlPWUuc2V0dGluZ3Msbj1lLndvbmRlcmNoYXQscj1lLndvbmRlcmNoYXRDb2xvcixvPWUud29uZGVyY2hhdExhYmVsLGE9ZS5iZ1N0eWxlLGk9ZS5hY3RpdmF0b3JTaXplLGU9ZS5rZXksbD12cihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGM9bFswXSx1PWxbMV0sbj0obD1uLG49ZSxlPW5ldyBVUkxTZWFyY2hQYXJhbXMsbiYmZS5hcHBlbmQoImdldGJ1dHRvbl9mYWxsYmFjayIsbiksRCgpJiZlLmFwcGVuZCgiaGVhZGVySGlkZGVuIiwhMCksImh0dHBzOi8vYXBwLndvbmRlcmNoYXQuaW8vY2hhdGJvdCIrIi8iLmNvbmNhdChsLCI/IikrZS50b1N0cmluZygpKTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dSgid29uZGVyY2hhdCI9PT10LmJ1dHRvblBvcHVwKX0pO3ZhciBsPXZyKE9iamVjdChGLnVzZVN0YXRlKSghMCksMiksZT1sWzBdLHM9bFsxXTtyZXR1cm4gT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpeyJ3b25kZXJjaGF0Ij09PXQuYnV0dG9uUG9wdXAmJnMoITApfSxbdC5idXR0b25Qb3B1cF0pLEguYS5jcmVhdGVFbGVtZW50KE4se2NvbG9yOnIsbWVzc2VuZ2VyVGl0bGU6byxpY29uOkguYS5jcmVhdGVFbGVtZW50KGZyLG51bGwpLGVuYWJsZVBvcHVwOmMsYmdTdHlsZTphLHNpemU6aSxjdXN0b21TZXR0aW5nczoid29uZGVyY2hhdCJ9LEguYS5jcmVhdGVFbGVtZW50KEguYS5GcmFnbWVudCxudWxsLGUmJkguYS5jcmVhdGVFbGVtZW50KEksbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoa3Ise29uTG9hZDpmdW5jdGlvbihlKXtzKCExKX0sc3JjOm4saXNMb2FkaW5nOmV9KSkpfSxhaTpmdW5jdGlvbigpe3ZhciB0LHIsZSxuPV9yKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksbz1uWzBdLGE9blsxXSxuPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLGk9bi5zdGF0ZSxsPW4uYWN0aW9ucyxuPW4uc2V0dGluZ3MsYz1uLmFpLHU9bi5haUNvbG9yLHM9bi5haUljb24sZj0obi5haVBvcHVwVGl0bGUsbi5iZ1N0eWxlLG4uYWlQb3B1cExhbmcsbi5rZXksbi5taXJyb3IpLGQ9bi5haUF1dG9vcGVuLHA9bi5wb3NpdGlvbixtPW4uYWN0aXZhdG9yU2l6ZSxoPW4uc2hpZnRWZXJ0aWNhbCxnPW4uc2hpZnRIb3Jpem9udGFsLG49KE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXthKCJhaSI9PT1pLmJ1dHRvblBvcHVwKX0pLE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtzJiYoKG5ldyBJbWFnZSkuc3JjPXMpfSxbXSksbj17Y2xvc2VQb3B1cDpsLmNsb3NlQnV0dG9uUG9wdXB9LHQ9bi5jbG9zZVBvcHVwLG49U3IoT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSxsPW5bMF0scj1uWzFdLE9iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXt2YXIgZSx0PSJnYi1haS1zY3JpcHQiLG49ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigic2NyaXB0W2RhdGEtaWQ9Ii5jb25jYXQodCwiXSIpKTtuPyJsb2FkZWQiPT09bi5nZXRBdHRyaWJ1dGUoImRhdGEtc3RhdHVzIik/cighMCk6KG4ub25sb2FkPWZ1bmN0aW9uKCl7cighMCksbi5zZXRBdHRyaWJ1dGUoImRhdGEtc3RhdHVzIiwibG9hZGVkIil9LG4ub25lcnJvcj1mdW5jdGlvbihlKXtjb25zb2xlLmVycm9yKCJFcnJvciBsb2FkaW5nIEFJIHNjcmlwdCIsZSl9KToobj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSwwPD0oZT1PcigpKS5pbmRleE9mKCJsb2NhbGhvc3QiKSYmKG4udHlwZT0ibW9kdWxlIiksbi5zcmM9ZSxuLmRlZmVyPSEwLG4uc2V0QXR0cmlidXRlKCJkYXRhLWlkIix0KSxuLnNldEF0dHJpYnV0ZSgiZGF0YS1zdGF0dXMiLCJsb2FkaW5nIiksbi5vbmxvYWQ9ZnVuY3Rpb24oKXtyKCEwKSxuLnNldEF0dHJpYnV0ZSgiZGF0YS1zdGF0dXMiLCJsb2FkZWQiKX0sbi5vbmVycm9yPWZ1bmN0aW9uKGUpe2NvbnNvbGUuZXJyb3IoIkVycm9yIGxvYWRpbmcgQUkgc2NyaXB0IixlKX0sZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChuKSl9LFtyXSksZT1PYmplY3QoRi51c2VDYWxsYmFjaykoZnVuY3Rpb24oZSl7ZT1lLmRldGFpbDtjb25zb2xlLmxvZygiR0IgcmVjZWl2ZWQgZXZlbnQ6IixlKSxlP2UuaWQhPT1Fcj9jb25zb2xlLmxvZygiR0Igc2tpcCBldmVudCwgaWQ6IixlLmlkKTp2b2lkIDAhPT1lLmlzX3Nob3dfcG9wdXAmJnQoZS5pc19zaG93X3BvcHVwKTpjb25zb2xlLmVycm9yKCJldmVudE1hbmFnZXI6IGV2ZW50LmRldGFpbCBub3QgZm91bmQhIil9LFt0XSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiR2V0YnV0dG9uVXBkYXRlU3RhdGUiLGUpLGZ1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJHZXRidXR0b25VcGRhdGVTdGF0ZSIsZSl9fSxbZSx0XSkse2lzU2NyaXB0TG9hZGVkOmwsaW5pdFBvcHVwOmpyLGFwcGx5U2V0dGluZ3NQb3B1cDpJcixvcGVuUG9wdXA6QXIsY2xvc2VQb3B1cDpmdW5jdGlvbigpe3QoKSxQcigpfX0pLGI9bi5pc1NjcmlwdExvYWRlZCx5PW4ub3BlblBvcHVwLHY9bi5jbG9zZVBvcHVwLHc9bi5hcHBseVNldHRpbmdzUG9wdXAseD1uLmluaXRQb3B1cDtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7YiYmdyh7Y29sb3JfaGVhZGVyOnV9KX0sW3VdKTt2YXIgbD1fcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGs9bFswXSxTPWxbMV07T2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3ZhciBlO28/az95KCk6a3x8KGI/KGU9e2JvdF9pZDpjLGJvdF9sb2dvOnN8fG51bGwsY29sb3JfaGVhZGVyOnUsaXNfc2hvd19wb3B1cDpkfHxvLGlzX3Nob3dfYWN0aXZhdG9yOiExLGFjdGl2YXRvcl9zaXplOm0sYWN0aXZhdG9yX29mZnNldF94OmcsYWN0aXZhdG9yX29mZnNldF95OmgsYWN0aXZhdG9yX3Bvc2l0aW9uOnAsaXNfbWlycm9yOmZ9LGNvbnNvbGUubG9nKCJhaSBzY3JpcHQgbG9hZGluZy4uLiIsd2luZG93LkdCQUksZSkseChlKSxTKCEwKSk6Y29uc29sZS5lcnJvcigiUG9wdXAgQUkgbm90IGluaXRpYWxpemVkIikpOihifHxkKSYmdigpfSxbb10pfX0sTnI9ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncy5vcmRlcjtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8oZT1lWzBdLEguYS5jcmVhdGVFbGVtZW50KEguYS5GcmFnbWVudCxudWxsLGhbZV0/SC5hLmNyZWF0ZUVsZW1lbnQoaFtlXSx7a2V5OjF9KTpudWxsKSk6bnVsbH07ZnVuY3Rpb24gRHIoZSx0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gZX0oZSl8fGZ1bmN0aW9uKGUsdCl7dmFyIG49bnVsbD09ZT9udWxsOiJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihudWxsIT1uKXt2YXIgcixvLGEsaSxsPVtdLGM9ITAsdT0hMTt0cnl7aWYoYT0obj1uLmNhbGwoZSkpLm5leHQsMD09PXQpe2lmKE9iamVjdChuKSE9PW4pcmV0dXJuO2M9ITF9ZWxzZSBmb3IoOyEoYz0ocj1hLmNhbGwobikpLmRvbmUpJiYobC5wdXNoKHIudmFsdWUpLGwubGVuZ3RoIT09dCk7Yz0hMCk7fWNhdGNoKGUpe3U9ITAsbz1lfWZpbmFsbHl7dHJ5e2lmKCFjJiZudWxsIT1uLnJldHVybiYmKGk9bi5yZXR1cm4oKSxPYmplY3QoaSkhPT1pKSlyZXR1cm59ZmluYWxseXtpZih1KXRocm93IG99fXJldHVybiBsfX0oZSx0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9VcihlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9VcihlLHQpOnZvaWQgMH0oZSx0KXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIFVyKGUsdCl7KG51bGw9PXR8fHQ+ZS5sZW5ndGgpJiYodD1lLmxlbmd0aCk7Zm9yKHZhciBuPTAscj1uZXcgQXJyYXkodCk7bjx0O24rKylyW25dPWVbbl07cmV0dXJuIHJ9ZnVuY3Rpb24gQnIoKXtmdW5jdGlvbiBlKCl7SSghMCksc2V0VGltZW91dChmdW5jdGlvbigpe0koITEpfSw1MDApfXZhciB0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLG49KGo9dC5zdGF0ZSkuYnV0dG9ucyxyPWouYnV0dG9uUG9wdXAsbz0oaj10LmFjdGlvbnMpLnRvZ2dsZUJ1dHRvbnMsYT1qLnNob3dCdXR0b25zLGk9ai5jbG9zZUJ1dHRvblBvcHVwLGw9KGo9dC5zZXR0aW5ncykuZGlyZWN0aW9uLGM9ai5hY3RpdmF0b3JTaXplLHQ9ai5hY3RpdmF0b3JJY29uLHU9ai5idXR0b25TdHlsZSxzPWouYnV0dG9uQW5pbWF0aW9uLGY9ai5idXR0b25Db2xvcixkPWouYnV0dG9uQm9yZGVyUmFkaXVzLHA9ai5idXR0b25JbWFnZVVybCxtPWouYm9yZGVyLGg9ai5idXR0b25TaGFkb3csZz1qLmJ1dHRvbk9wYWNpdHksYj1qLmJnU3R5bGUseT1qLm5vdGlmaWNhdGlvbkluZGljYXRvcix2PWoubWlycm9yLHc9ai5idXR0b25UZXh0LHg9ai5idXR0b25UZXh0Q2xvc2Usaz1qLmFuaW1hdGlvbixTPWouaXNTaW5nbGUsQz1qLm9yZGVyLEU9ai5wb3NpdGlvbixPPSQoai5idXR0b25Cb3JkZXJSYWRpdXMpLGo9cGUoai5idXR0b25Db2xvciw1KSxBPURyKE9iamVjdChGLnVzZVN0YXRlKSghMSksMiksUD1BWzBdLEk9QVsxXTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoU3QsbnVsbCxVKCkmJiJyb3ciIT09bCYmSC5hLmNyZWF0ZUVsZW1lbnQocHQsbnVsbCksSC5hLmNyZWF0ZUVsZW1lbnQoeHQse29wZW5lZDpuLHBvcHVwT3BlbmVkOnIsYnV0dG9uQW5pbWF0aW9uOnMsY29sb3I6ZixidXR0b25Cb3JkZXJSYWRpdXM6ZCxzaXplOmMsYW5pbWF0aW9uOmssYnV0dG9uU3R5bGU6dX0sSC5hLmNyZWF0ZUVsZW1lbnQod3Qse29uTW91c2VVcDpmdW5jdGlvbigpe1B8fCgocj9pOm8pKCksZSgpLFcoImFyb3VuZCI9PT1sP24/Yzo5OTk5OTk5OTk6ImNsYXNzaWMiPT09dT9jOjMqYykpfSxvbk1vdXNlRW50ZXI6ZnVuY3Rpb24oKXtQfHwhVSgpfHwhMSE9PW58fHJ8fChhKCksZSgpLCJhcm91bmQiPT09bCYmVyg5OTk5OTk5OTkpKX0sZ3JhZGllbnQ6aixpbmRpY2F0b3JQb3NpdGlvbjpPLG9wZW5lZDpuLHBvcHVwT3BlbmVkOnIsImRhdGEtY29tcG9uZW50LW5hbWUiOiJCYXNlQnV0dG9uQWN0aXZhdG9yIiwiYXJpYS1sYWJlbCI6Ik9wZW4gbWVzc2VuZ2VycyBsaXN0Iixjb2xvcjpmLHNpemU6YyxidXR0b25JbWFnZTpwLGJvcmRlcjptLGJ1dHRvbkJvcmRlclJhZGl1czpkLGJ1dHRvblNoYWRvdzpoLGJ1dHRvbk9wYWNpdHk6ZyxiZ1N0eWxlOmIsYnV0dG9uQW5pbWF0aW9uOnMsbm90aWZpY2F0aW9uSW5kaWNhdG9yOnksYnV0dG9uU3R5bGU6dSxtaXJyb3I6dixhbmltYXRpb246ayxpc1NpbmdsZTpTLGRpcmVjdGlvbjpsLHBvc2l0aW9uOkUsb3JkZXI6Q30sSC5hLmNyZWF0ZUVsZW1lbnQoVnIse29wZW5lZDpuLGJ1dHRvblN0eWxlOnUsYnV0dG9uSW1hZ2VVcmw6cH0sIW4mJkguYS5jcmVhdGVFbGVtZW50KExyLHtidXR0b25JbWFnZToiY2xhc3NpYyIhPT11JiZwLGFjdGl2YXRvckljb246IXAmJnR9KSxuJiZILmEuY3JlYXRlRWxlbWVudChNcix7c3R5bGU6IndpZHRoOiA0MXB4In0pKSwiY2xhc3NpYyIhPT11JiYhbiYmSC5hLmNyZWF0ZUVsZW1lbnQoRyx7Y29sb3I6ZixtaXJyb3I6dixzaXplOmN9LHcpLCJjbGFzc2ljIiE9PXUmJm4mJkguYS5jcmVhdGVFbGVtZW50KEcse2NvbG9yOmYsbWlycm9yOnYsc2l6ZTpjfSx4KSkpKX12YXIgRnI9T2JqZWN0KEMuZSkoWyIwJXt0cmFuc2Zvcm06cm90YXRlKC0yNzBkZWcpO310b3t0cmFuc2Zvcm06cm90YXRlKDApO30iXSksSHI9T2JqZWN0KEMuZSkoWyIwJXt0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyk7fXRve3RyYW5zZm9ybTpyb3RhdGUoMCk7fSJdKSxWcj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy12MnAzaDItMCJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUub3BlbmVkLG49ZS5idXR0b25TdHlsZSxlPWUuYnV0dG9uSW1hZ2VVcmw7cmV0dXJuIE9iamVjdChDLmMpKFsiYW5pbWF0aW9uLWR1cmF0aW9uOjAuNHM7YW5pbWF0aW9uLWRlbGF5Oi4wNXM7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTttYXJnaW4tdG9wOi0xcHg7IiwiOyIsIjsiLCIgIiwiIl0sdCYmT2JqZWN0KEMuYykoWyJhbmltYXRpb24tbmFtZToiLCI7Il0sRnIpLCF0JiZPYmplY3QoQy5jKShbImFuaW1hdGlvbi1uYW1lOiIsIjsiXSxIciksImNsYXNzaWMiIT09biYmT2JqZWN0KEMuYykoWyJkaXNwbGF5OmdyaWQ7cGxhY2UtY29udGVudDpjZW50ZXI7Il0pLGUmJiJjbGFzc2ljIj09PW4mJk9iamVjdChDLmMpKFsiZGlzcGxheTpub25lOyJdKSl9KTtmdW5jdGlvbiAkcihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1dyKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1dyKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gV3IoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBHcigpe3JldHVybiBPYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncy5pc1NpbmdsZT9ILmEuY3JlYXRlRWxlbWVudChOcixudWxsKTpILmEuY3JlYXRlRWxlbWVudChacixudWxsKX1mdW5jdGlvbiBxcigpe3ZhciBlPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzLm9yZGVyO3JldHVybiBBcnJheS5pc0FycmF5KGUpP0guYS5jcmVhdGVFbGVtZW50KEguYS5GcmFnbWVudCxudWxsLGUubWFwKGZ1bmN0aW9uKGUsdCl7aWYoUnIuaGFzT3duUHJvcGVydHkoZSkpcmV0dXJuIFJyW2VdP0guYS5jcmVhdGVFbGVtZW50KFJyW2VdLHtrZXk6dH0pOm51bGx9KSk6bnVsbH12YXIgWnI9ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKSx0PWUuc3RhdGUsZT1lLnNldHRpbmdzLG89ZS5vcmRlcixhPWUuYWN0aXZhdG9yU2l6ZSxpPWUuc2hpZnRWZXJ0aWNhbCxuPWUuc2hpZnRIb3Jpem9udGFsLGU9ZS5kaXJlY3Rpb247aWYoIUFycmF5LmlzQXJyYXkobykpcmV0dXJuIG51bGw7dmFyIGw9dmUoKS5oZWlnaHQscj0kcihPYmplY3QoRi51c2VTdGF0ZSkoMCksMiksYz1yWzBdLHU9clsxXTtPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dmFyIGU9YSt2dCx0PW8ubGVuZ3RoLG49TWF0aC5mbG9vcigobC1pKS9lKS0xLG49TWF0aC5jZWlsKG4qZSkscj1NYXRoLmNlaWwoZSp0L24pO3UodC1uL2UqKHItMSk8MiYmMjxuL2U/bi0rZTpuKX0sW2xdKTt2YXIgcj0kcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLHM9clswXSxmPXJbMV0scj0kcihPYmplY3QoRi51c2VTdGF0ZSkoITEpLDIpLGQ9clswXSxwPXJbMV0scj0oT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3QuYnV0dG9ucz8oZighMCkscCghMCkpOmYoITEpfSxbdC5idXR0b25zXSksImFyb3VuZCI9PT1lP28uc2xpY2UoMCw0KTpvKTtyZXR1cm4gSC5hLmNyZWF0ZUVsZW1lbnQoSC5hLkZyYWdtZW50LG51bGwsZCYmSC5hLmNyZWF0ZUVsZW1lbnQoWHIse2lzU2hvdzpzLG9uQW5pbWF0aW9uRW5kOmZ1bmN0aW9uKCl7cChzKX0saGVpZ2h0OmMsZGlyZWN0aW9uOmUsb3JkZXI6byxzaGlmdFZlcnRpY2FsOmksc2hpZnRIb3Jpem9udGFsOm4sYWN0aXZhdG9yU2l6ZTphfSxyLm1hcChmdW5jdGlvbihlLHQpe3JldHVybiBoW2VdP0guYS5jcmVhdGVFbGVtZW50KGhbZV0se2tleTp0fSk6bnVsbH0pKSxILmEuY3JlYXRlRWxlbWVudChCcixudWxsKSl9LFhyPU9iamVjdChDLmQpKGUpLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xd3hkZDJzLTAifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmRpcmVjdGlvbixuPWUudGhlbWUscj1lLm9yZGVyLG89ZS5zaGlmdFZlcnRpY2FsLGE9ZS5zaGlmdEhvcml6b250YWwsaT1lLmFjdGl2YXRvclNpemUsZT1lLmhlaWdodDtyZXR1cm4gT2JqZWN0KEMuYykoWyIiLCIgIiwiICIsIiJdLCJhcm91bmQiPT09dD9PYmplY3QoQy5jKShbImRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2Zvcm06cm90YXRlKCIsImRlZyk7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOiIsInB4OyIsIjoiLCJweDsiXSwicmlnaHQiPT09bi5wb3NpdGlvbj8xNSpyLnNsaWNlKDAsNCkubGVuZ3RoOjE1KnIuc2xpY2UoMCw0KS5sZW5ndGgrOTAsbyooNzA8PWk/My4yOjIuNSksbi5wb3NpdGlvbiwyLjUqYSk6T2JqZWN0KEMuYykoWyJkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXgtd3JhcDoiLCI7bWFyZ2luLSIsIjphdXRvO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0OyJdLCJsZWZ0Ij09PW4ucG9zaXRpb24/IndyYXAiOiJ3cmFwLXJldmVyc2UiLCJsZWZ0Ij09PW4ucG9zaXRpb24/InJpZ2h0IjoibGVmdCIpLCJyb3ciPT09dCYmT2JqZWN0KEMuYykoWyJmbGV4LWRpcmVjdGlvbjoiLCI7ZmxleC13cmFwOiIsIjsiXSwicmlnaHQiPT09bi5wb3NpdGlvbiYmInJvdy1yZXZlcnNlIiwibGVmdCI9PT1uLnBvc2l0aW9uJiYid3JhcC1yZXZlcnNlIiksImNvbHVtbiI9PT10JiZPYmplY3QoQy5jKShbImZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlO2hlaWdodDoiLCI7Il0sZSsicHgiKSl9KTtmdW5jdGlvbiBZcihlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP1FyKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP1FyKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gUXIoZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiBLcigpe3ZhciBlPSh0PU9iamVjdChGLnVzZUNvbnRleHQpKFYpLnNldHRpbmdzKS5icmFuZGluZyx0PXQuYWN0aXZhdG9yU2l6ZTtyZXR1cm4gZSYmSC5hLmNyZWF0ZUVsZW1lbnQobm8se3NpemU6dCx0eXBlOiJsaW5rIixocmVmOnJvLHRhcmdldDoiX2JsYW5rIiwiYXJpYS1sYWJlbCI6IkdvIHRvIEdldEJ1dHRvbi5pbyB3ZWJzaXRlIn0sSC5hLmNyZWF0ZUVsZW1lbnQodG8sbnVsbCkpfXZhciBKcj1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy0xYXU4cnlsLTAifSkoWyJwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo2NHB4O21hcmdpbjphdXRvOyJdKSxlbz1DLmQuc3Bhbi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtMWF1OHJ5bC0xIn0pKFsicG9zaXRpb246YWJzb2x1dGU7bGVmdDoycHg7cmlnaHQ6MDtib3R0b206LTFweDtoZWlnaHQ6MXB4O2JhY2tncm91bmQ6I2JlYmViZTsiXSksdG89ZnVuY3Rpb24oKXt2YXIgZT1ZcihILmEudXNlU3RhdGUoITEpLDIpLHQ9ZVswXSxuPWVbMV07cmV0dXJuIEguYS5jcmVhdGVFbGVtZW50KEpyLHtvbk1vdXNlRW50ZXI6ZnVuY3Rpb24oKXtyZXR1cm4gbighMCl9LG9uTW91c2VMZWF2ZTpmdW5jdGlvbigpe3JldHVybiBuKCExKX19LEguYS5jcmVhdGVFbGVtZW50KCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHZpZXdCb3g6IjAgMCA1OC4xNiAxMC4xNSJ9LEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTIuNDksNi40MiwxLjY1LDkuNzVjLS4wOS4yNy4xOC41NC40LjIxTDMuNjgsNy44OUE1LjQ5LDUuNDksMCwwLDAsNC43Niw4QzcuNCw4LDkuNTMsNi4yMSw5LjUzLDRTNy40LDAsNC43NiwwLDAsMS43OSwwLDRBMy40NywzLjQ3LDAsMCwwLC4yNCw1LjI1YS40NS40NSwwLDAsMCwuNDkuMTgsNy4wNyw3LjA3LDAsMCwwLC43LS4yNnMuMjQtLjEuMTktLjQ4aDBBMiwyLDAsMCwxLDEuNDksNEMxLjQ5LDIuNjIsMywxLjUsNC43NiwxLjVTOCwyLjYyLDgsNCw2LjU3LDYuNSw0Ljc2LDYuNWE0LjA2LDQuMDYsMCwwLDEtMS42OC0uMzZBLjQ5LjQ5LDAsMCwwLDIuNDksNi40MloiLGZpbGw6IiNhZmFmYWYifSksSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTEuMTIsMTAuMTVIMTFsLTEuNDktLjlhNS40NSw1LjQ1LDAsMCwxLTIuNC42LDQuMTYsNC4xNiwwLDAsMS0yLjI3LS42Mkw1LDkuMTdjMi4yMiwwLDUuNDMtMS42Niw1LjYxLTQuMzdoMGEzLDMsMCwwLDEsLjU3LDEuODYsMi4zMywyLjMzLDAsMCwxLS42NSwxLjY0bC41MiwxLjI5cy4yMi40NC4xNi41MS0uMDYuMDUtLjExLjA1WiIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik00OS44NCwzLjIxaDBhMi4zMywyLjMzLDAsMCwxLDIuMzIsMi4zNHYxLjNhMi4zMywyLjMzLDAsMCwxLTIuMzIsMi4zM2gwYTIuMzQsMi4zNCwwLDAsMS0yLjMzLTIuMzNWNS41NUEyLjM0LDIuMzQsMCwwLDEsNDkuODQsMy4yMVptMCwxLjE2aDBhMSwxLDAsMCwxLDEsMVY3YTEsMSwwLDAsMS0xLDFoMGExLDEsMCwwLDEtMS0xVjUuMzlBMSwxLDAsMCwxLDQ5Ljg0LDQuMzdaIixmaWxsOiIjYWZhZmFmIixmaWxsUnVsZToiZXZlbm9kZCJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik01NS44MywzLjIxaDBhMi4zNCwyLjM0LDAsMCwxLDIuMzMsMi4zNFY5LjA2SDU2Ljg0VjUuMzlhMSwxLDAsMCwwLTEtMWgwYTEsMSwwLDAsMC0xLDFWOS4wNkg1My41VjUuNTVBMi4zNCwyLjM0LDAsMCwxLDU1LjgzLDMuMjFaIixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTM2LjkzLDkuMDZoMGEyLjMzLDIuMzMsMCwwLDAsMi4zMy0yLjMyVjMuMjFIMzcuOTRWNi45YTEsMSwwLDAsMS0xLDFoMGExLDEsMCwwLDEtMS0xVjMuMjFIMzQuNlY2Ljc0QTIuMzMsMi4zMywwLDAsMCwzNi45Myw5LjA2WiIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicG9seWdvbiIse3BvaW50czoiNDMuMiAzLjM3IDQyLjEyIDMuMzcgNDIuMTIgMS43OSA0MC45NyAxLjc5IDQwLjk3IDMuMzcgMzkuOTEgMy4zNyA0MC4yNiA0LjM5IDQwLjk3IDQuMzkgNDAuOTcgOS4wMyA0Mi4xMiA5LjAzIDQyLjEyIDQuMzkgNDMuMiA0LjM5IDQzLjIgMy4zNyIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicG9seWdvbiIse3BvaW50czoiNDYuNzYgMy4zNyA0NS42NyAzLjM3IDQ1LjY3IDEuNzkgNDQuNTIgMS43OSA0NC41MiAzLjM3IDQzLjQ3IDMuMzcgNDMuODEgNC4zOSA0NC41MiA0LjM5IDQ0LjUyIDkuMDMgNDUuNjcgOS4wMyA0NS42NyA0LjM5IDQ2Ljc2IDQuMzkgNDYuNzYgMy4zNyIsZmlsbDoiI2FmYWZhZiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0yOC41NiwxLjczSDMwLjlhMy40OCwzLjQ4LDAsMCwxLDEuMzQuMTgsMS41MywxLjUzLDAsMCwxLC42Ni42MywyLjExLDIuMTEsMCwwLDEsLjI3LDEsMiwyLDAsMCwxLS4yMy45NSwxLjYsMS42LDAsMCwxLS41OS42NCwxLjQ5LDEuNDksMCwwLDEsLjguNjQsMi4wOSwyLjA5LDAsMCwxLC4zLDEuMTEsMi4zMSwyLjMxLDAsMCwxLS4zOCwxLjM1LDEuNTQsMS41NCwwLDAsMS0uODguNjhBOSw5LDAsMCwxLDMwLjU0LDloLTJaTTI5LjczLDNWNC42NGguNzhhNy4wNiw3LjA2LDAsMCwwLC44NywwLC43MS43MSwwLDAsMCwuNDctLjI2QS44Ni44NiwwLDAsMCwzMiwzLjc3YS45MS45MSwwLDAsMC0uMTQtLjUyQS42NC42NCwwLDAsMCwzMS41NSwzYTguMTYsOC4xNiwwLDAsMC0xLjE0LDBabTAsMi45VjcuNzloMS4xYTMuNDksMy40OSwwLDAsMCwuOTItLjA3LjcxLjcxLDAsMCwwLC4zNS0uMywxLjEzLDEuMTMsMCwwLDAsLjEzLS41OCwxLjIsMS4yLDAsMCwwLS4xNC0uNTkuODguODgsMCwwLDAtLjQtLjMyLDQuMSw0LjEsMCwwLDAtMS0uMDhaIixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwb2x5Z29uIix7cG9pbnRzOiIyNy41NiAzLjM3IDI2LjQ3IDMuMzcgMjYuNDcgMS43OSAyNS4zMiAxLjc5IDI1LjMyIDMuMzcgMjQuMjcgMy4zNyAyNC42MiA0LjM5IDI1LjMyIDQuMzkgMjUuMzIgOS4wMyAyNi40NyA5LjAzIDI2LjQ3IDQuMzkgMjcuNTYgNC4zOSAyNy41NiAzLjM3IixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTIxLjQ5LDMuMjFoMGEyLjM0LDIuMzQsMCwwLDEsMi4zMywyLjM0djFIMjAuNDhWN2MwLDEuMjUsMS45NCwxLjE5LDIuMy43MmwxLC43MmMtMS4xMywxLjM2LTQuNTkuODctNC41OS0xLjYxVjUuNTVBMi4zNCwyLjM0LDAsMCwxLDIxLjQ5LDMuMjFabS0xLDIuMzhoMnYtLjJhMSwxLDAsMCwwLTEtMWgwYTEsMSwwLDAsMC0xLDFaIixmaWxsOiIjYWZhZmFmIn0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTE3LjI3LDMuMDVhMy44MiwzLjgyLDAsMCwwLTIuNjgsMCwxLjE0LDEuMTQsMCwwLDAtLjUuNzloMFY2Ljg2YTEuMTcsMS4xNywwLDAsMCwxLjA2LDEsMy45LDMuOSwwLDAsMCwxLjU0LS4wOVY2LjEySDE1LjlWNC43N0gxOHYzLjRhLjY0LjY0LDAsMCwxLS4zMS42NCw0LjU1LDQuNTUsMCwwLDEtMi43My40QTIuNTIsMi41MiwwLDAsMSwxMi43NSw3VjMuNzloMGEyLjY3LDIuNjcsMCwwLDEsMS4xNC0xLjkybDAsMGMxLjU2LS45MSwzLjgyLDAsMy44MywwWiIsZmlsbDoiI2FmYWZhZiJ9KSksdCYmSC5hLmNyZWF0ZUVsZW1lbnQoZW8sbnVsbCkpfSxubz1DLmQuYS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtc2JzaTdsLTAifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLnRoZW1lLGU9ZS5zaXplO3JldHVybiBPYmplY3QoQy5jKShbIm9wYWNpdHk6MTtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6N3B4O3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tIiwiOmF1dG87dGV4dC1kZWNvcmF0aW9uOm5vbmU7d2lkdGg6IiwncHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJIZWx2ZXRpY2EgTmV1ZSIsc2Fucy1zZXJpZjtmb250LXNpemU6MTFweDtsaW5lLWhlaWdodDoxMXB4O2NvbG9yOiNhZmFmYWYgIWltcG9ydGFudDtib3JkZXI6MDttYXgtd2lkdGg6aW5oZXJpdDsnLCIiXSwibGVmdCI9PT10LnBvc2l0aW9uPyJyaWdodCI6ImxlZnQiLChlfHw1MCkrMTQsVSgpJiZPYmplY3QoQy5jKShbIiY6aG92ZXJ7Y3Vyc29yOnBvaW50ZXI7fSJdKSl9KSxybz0iaHR0cHM6Ly9nZXRidXR0b24uaW8vP3V0bV9jYW1wYWlnbj1tdWx0eV93aWRnZXQmdXRtX21lZGl1bT13aWRnZXQmdXRtX3NvdXJjZT0iLmNvbmNhdCh3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpO2Z1bmN0aW9uIG9vKGUpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBpbyhlKX0oZSl8fGZ1bmN0aW9uKGUpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZudWxsIT1lW1N5bWJvbC5pdGVyYXRvcl18fG51bGwhPWVbIkBAaXRlcmF0b3IiXSlyZXR1cm4gQXJyYXkuZnJvbShlKX0oZSl8fGFvKGUpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBzcHJlYWQgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWZ1bmN0aW9uIGFvKGUsdCl7dmFyIG47aWYoZSlyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGU/aW8oZSx0KToiTWFwIj09PShuPSJPYmplY3QiPT09KG49T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpKSYmZS5jb25zdHJ1Y3Rvcj9lLmNvbnN0cnVjdG9yLm5hbWU6bil8fCJTZXQiPT09bj9BcnJheS5mcm9tKGUpOiJBcmd1bWVudHMiPT09bnx8L14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3Qobik/aW8oZSx0KTp2b2lkIDB9ZnVuY3Rpb24gaW8oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn12YXIgbG89Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTAifSkoWyJtYXJnaW4tYm90dG9tOjA7cGFkZGluZy1ib3R0b206MjZweDsiXSksY289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTEifSkoWyJkaXNwbGF5OmZsZXg7cGFkZGluZzowOyIsIiBAbWVkaWEgKG1heC13aWR0aDozNzBweCl7bWFyZ2luLWxlZnQ6MThweDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsibWFyZ2luOjAgODVweCAwIDA7Il0pOk9iamVjdChDLmMpKFsibWFyZ2luOjAgMCAwIDg1cHg7Il0pfSksdW89Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTIifSkoWyJtYXJnaW4tYm90dG9tOjA7QG1lZGlhIChtYXgtd2lkdGg6MzcwcHgpe3RyYW5zZm9ybTpzY2FsZSgwLjkpO30iXSksc289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2MtZjMwZzVsLTMifSkoWyJkaXNwbGF5OmZsZXg7cGFkZGluZzowO2p1c3RpZnktY29udGVudDpjZW50ZXI7IiwiIEBtZWRpYShtYXggLSB3aWR0aDozNzBweCl7dHJhbnNmb3JtOnNjYWxlKDAuOSk7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiJtaW5pIj09PWUuZ3JlZXRpbmdTdHlsZSYmZS5idXR0b25zTnVtYmVyPDUmJjE8ZS5idXR0b25zTnVtYmVyJiZPYmplY3QoQy5jKShbImp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O21hcmdpbi1sZWZ0OjM4cHg7Il0pfSksZm89ZnVuY3Rpb24oKXt2YXIgZT1PYmplY3QoRi51c2VDb250ZXh0KShWKS5zZXR0aW5ncyx0PWUub3JkZXIsbj1lLmdyZWV0aW5nU3R5bGUsZT1lLm1pcnJvcjtpZighQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gbnVsbDt2YXIgcixvPVtdLGE9ZnVuY3Rpb24oZSx0KXt2YXIgbixyLG8sYSxpPSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZlW1N5bWJvbC5pdGVyYXRvcl18fGVbIkBAaXRlcmF0b3IiXTtpZihpKXJldHVybiByPSEobj0hMCkse3M6ZnVuY3Rpb24oKXtpPWkuY2FsbChlKX0sbjpmdW5jdGlvbigpe3ZhciBlPWkubmV4dCgpO3JldHVybiBuPWUuZG9uZSxlfSxlOmZ1bmN0aW9uKGUpe3I9ITAsbz1lfSxmOmZ1bmN0aW9uKCl7dHJ5e258fG51bGw9PWkucmV0dXJufHxpLnJldHVybigpfWZpbmFsbHl7aWYocil0aHJvdyBvfX19O2lmKEFycmF5LmlzQXJyYXkoZSl8fChpPWFvKGUpKXx8dCYmZSYmIm51bWJlciI9PXR5cGVvZiBlLmxlbmd0aClyZXR1cm4gaSYmKGU9aSksYT0wLHtzOnQ9ZnVuY3Rpb24oKXt9LG46ZnVuY3Rpb24oKXtyZXR1cm4gYT49ZS5sZW5ndGg/e2RvbmU6ITB9Ontkb25lOiExLHZhbHVlOmVbYSsrXX19LGU6ZnVuY3Rpb24oZSl7dGhyb3cgZX0sZjp0fTt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gaXRlcmF0ZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KG9vKHQpLnJldmVyc2UoKSk7dHJ5e2ZvcihhLnMoKTshKHI9YS5uKCkpLmRvbmU7KXt2YXIgaT1yLnZhbHVlLGw9QltpXTtpZigobCYmKCEwPT09VSgpJiZsLm9uRGVza3RvcHx8ITA9PT0vVGFibGV0fGlQYWR8aVBvZC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkmJmwub25UYWJsZXQpfHwhMD09PUQoKSYmbC5vbk1vYmlsZSkmJihvLnB1c2goaSksNDxvLmxlbmd0aCkpYnJlYWt9fWNhdGNoKGUpe2EuZShlKX1maW5hbGx5e2EuZigpfXJldHVybiJhbHRlcm5hdGl2ZSI9PT1ufHwibWluaSI9PT1uP0guYS5jcmVhdGVFbGVtZW50KHVvLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoc28se2J1dHRvbnNOdW1iZXI6by5sZW5ndGgsZ3JlZXRpbmdTdHlsZTpufSxvLm1hcChmdW5jdGlvbihlLHQpe3JldHVybiBoW2VdP0guYS5jcmVhdGVFbGVtZW50KGhbZV0se2tleTp0LHNpemU6Im1lZGl1bSJ9KTpudWxsfSkpKTpILmEuY3JlYXRlRWxlbWVudChsbyxudWxsLEguYS5jcmVhdGVFbGVtZW50KGNvLHttaXJyb3I6ZX0sby5tYXAoZnVuY3Rpb24oZSx0KXtyZXR1cm4gaFtlXT9ILmEuY3JlYXRlRWxlbWVudChoW2VdLHtrZXk6dCxzaXplOiJzbWFsbCJ9KTpudWxsfSkucmV2ZXJzZSgpKSl9LHBvPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY29sb3IsdD12b2lkIDA9PT10PyIjZmZmZmZmIjp0LGU9ZS5zaXplLGU9dm9pZCAwPT09ZT8iMjVweCI6ZTtyZXR1cm4iYWx0ZXJuYXRpdmUiPT09T2JqZWN0KEYudXNlQ29udGV4dCkoVikuc2V0dGluZ3MuZ3JlZXRpbmdTdHlsZT9ILmEuY3JlYXRlRWxlbWVudCgic3ZnIix7c3R5bGU6e3dpZHRoOmUsaGVpZ2h0OmUsZmlsbDp0LHN0cm9rZToibm9uZSJ9LHZpZXdCb3g6IjAgMCAyNCAyNCIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIn0sSC5hLmNyZWF0ZUVsZW1lbnQoInBhdGgiLHtkOiJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiJ9KSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0wIDBoMjR2MjRIMHoiLGZpbGw6Im5vbmUifSkpOkguYS5jcmVhdGVFbGVtZW50KCJzdmciLHtzdHlsZTp7d2lkdGg6IjE1cHgiLGhlaWdodDoiMTVweCIsZmlsbDoiI2EzYTNhMyIsc3Ryb2tlOiJub25lIn0sdmlld0JveDoiMCAwIDI0IDI0Iix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcifSxILmEuY3JlYXRlRWxlbWVudCgicGF0aCIse2Q6Ik0xOSA2LjQxTDE3LjU5IDUgMTIgMTAuNTkgNi40MSA1IDUgNi40MSAxMC41OSAxMiA1IDE3LjU5IDYuNDEgMTkgMTIgMTMuNDEgMTcuNTkgMTkgMTkgMTcuNTkgMTMuNDEgMTJ6In0pLEguYS5jcmVhdGVFbGVtZW50KCJwYXRoIix7ZDoiTTAgMGgyNHYyNEgweiIsZmlsbDoibm9uZSJ9KSl9O2Z1bmN0aW9uIG1vKGUpe3JldHVybihtbz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbihlKXtyZXR1cm4gdHlwZW9mIGV9OmZ1bmN0aW9uKGUpe3JldHVybiBlJiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZlLmNvbnN0cnVjdG9yPT09U3ltYm9sJiZlIT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgZX0pKGUpfWZ1bmN0aW9uIGhvKGUsdCxuKXtyZXR1cm4odD1mdW5jdGlvbihlKXtlPWZ1bmN0aW9uKGUsdCl7aWYoIm9iamVjdCIhPT1tbyhlKXx8bnVsbD09PWUpcmV0dXJuIGU7dmFyIG49ZVtTeW1ib2wudG9QcmltaXRpdmVdO2lmKHZvaWQgMD09PW4pcmV0dXJuKCJzdHJpbmciPT09dD9TdHJpbmc6TnVtYmVyKShlKTtuPW4uY2FsbChlLHR8fCJkZWZhdWx0Iik7aWYoIm9iamVjdCIhPT1tbyhuKSlyZXR1cm4gbjt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfShlLCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09PW1vKGUpP2U6U3RyaW5nKGUpfSh0KSlpbiBlP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTplW3RdPW4sZX1mdW5jdGlvbiBnbyhlLHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfShlKXx8ZnVuY3Rpb24oZSx0KXt2YXIgbj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPW4pe3ZhciByLG8sYSxpLGw9W10sYz0hMCx1PSExO3RyeXtpZihhPShuPW4uY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KG4pIT09bilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShyPWEuY2FsbChuKSkuZG9uZSkmJihsLnB1c2goci52YWx1ZSksbC5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7dT0hMCxvPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPW4ucmV0dXJuJiYoaT1uLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKHUpdGhyb3cgb319cmV0dXJuIGx9fShlLHQpfHxmdW5jdGlvbihlLHQpe3ZhciBuO2lmKGUpcmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2JvKGUsdCk6Ik1hcCI9PT0obj0iT2JqZWN0Ij09PShuPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKS5zbGljZSg4LC0xKSkmJmUuY29uc3RydWN0b3I/ZS5jb25zdHJ1Y3Rvci5uYW1lOm4pfHwiU2V0Ij09PW4/QXJyYXkuZnJvbShlKToiQXJndW1lbnRzIj09PW58fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pP2JvKGUsdCk6dm9pZCAwfShlLHQpfHxmdW5jdGlvbigpe3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIil9KCl9ZnVuY3Rpb24gYm8oZSx0KXsobnVsbD09dHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIG49MCxyPW5ldyBBcnJheSh0KTtuPHQ7bisrKXJbbl09ZVtuXTtyZXR1cm4gcn1mdW5jdGlvbiB5byhlKXtmdW5jdGlvbiB0KCl7bygpfWZ1bmN0aW9uIG4oKXtPKFMpfXZhciBlPWUuY29sb3Iscj0oaz1PYmplY3QoRi51c2VDb250ZXh0KShWKSkuc3RhdGUsbz1rLmFjdGlvbnMuY2xvc2VHcmVldGluZ01lc3NhZ2UsYT0oaz1rLnNldHRpbmdzKS5idXR0b25Cb3JkZXJSYWRpdXMsaT1rLmdyZWV0aW5nTWVzc2FnZURlbGF5LGw9ay5ncmVldGluZyxjPWsuZ3JlZXRpbmdEaXJlY3Rpb24sdT1rLmJ1dHRvblN0eWxlLHM9ay5hY3RpdmF0b3JTaXplLGY9ay5zaGlmdFZlcnRpY2FsLGQ9ay5wb3NpdGlvbixwPWsuc2hpZnRIb3Jpem9udGFsLG09ay5ncmVldGluZ1N0eWxlLGg9ay5taXJyb3IsZz1rLmJnU3R5bGUsYj1rLmNvbXBhbnlMb2dvVXJsLHk9ay5ncmVldGluZ01lc3NhZ2Usdj1rLmdyZWV0aW5nQWdlbnROYW1lLFI9ay5ncmVldGluZ0FnZW50UG9zaXRpb24sdz1rLmdyZWV0aW5nTWVzc2VuZ2VycyxOPWsuZ3JlZXRpbmdTdGFydENoYXRXaXRoLHg9ay5pc1NpbmdsZSxrPWsuYnV0dG9uU2hhZG93LFM9KGo9Z28oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSlbMF0sQz1qWzFdLEU9KGo9Z28oT2JqZWN0KEYudXNlU3RhdGUpKCExKSwyKSlbMF0sTz1qWzFdLGo9JChhKSxEPXBlKGUsNSksQT0iIi5jb25jYXQoaSwiMDAwIiksUD0oQS5pbmNsdWRlcygiLiIpJiYoQT0iIi5jb25jYXQoQS5yZXBsYWNlKC9cLi9nLCIiKS8xMCkpLE9iamVjdChGLnVzZVJlZikoMCkpO09iamVjdChGLnVzZUVmZmVjdCkoZnVuY3Rpb24oKXtyLmdyZWV0aW5nTWVzc2FnZSYmIWw/dCgpOihyLmdyZWV0aW5nTWVzc2FnZT8wPT09UC5jdXJyZW50JiYoUC5jdXJyZW50PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtDKHIuZ3JlZXRpbmdNZXNzYWdlKSxPKHIuZ3JlZXRpbmdNZXNzYWdlKX0sK0EpKTooQyghMSksTyghMSkpLHIuYnV0dG9ucyYmY2xlYXJUaW1lb3V0KFAuY3VycmVudCkpfSksT2JqZWN0KEYudXNlRWZmZWN0KShmdW5jdGlvbigpe3IuZ3JlZXRpbmdNZXNzYWdlPyJyb3ciPT09YyYmVyg5OTk5OTk5OTkpOiJyb3ciPT09YyYmVygiY2xhc3NpYyI9PT11P3M6MypzKX0sW2MsdSxyLmdyZWV0aW5nTWVzc2FnZSxzXSk7dmFyIEk9KGk9dmUoKSkuaGVpZ2h0LGk9aS53aWR0aCxfPShNPWdvKE9iamVjdChGLnVzZVN0YXRlKSgiYXV0byIpLDIpKVswXSxVPU1bMV0sej0oTT1nbyhPYmplY3QoRi51c2VTdGF0ZSkoe3dpZHRoOiJhdXRvIixoZWlnaHQ6ImF1dG8ifSksMikpWzBdLEI9TVsxXSxUPU9iamVjdChGLnVzZVJlZikoKSxMPU9iamVjdChGLnVzZVJlZikoKSxNPShPYmplY3QoRi51c2VFZmZlY3QpKGZ1bmN0aW9uKCl7dmFyIGUsdDtULmN1cnJlbnQmJih0PUktZi1zLXZ0LGU9VC5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCsxNzgsVSh0PGU/dC0xNDg6ImF1dG8iKSksTC5jdXJyZW50JiYoZT1MLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0LHQ9TC5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLEIoe3dpZHRoOnQsaGVpZ2h0OmV9KSl9LFtJLEUsaSxMXSksImNlbnRlciIhPT1jPyJjb2x1bW4iPT09Yz97Ym90dG9tOnMrMzB9OiJyaWdodCI9PT1kP3tyaWdodDoiY2xhc3NpYyI9PT11P3MrMzA6MypzKzMwLGJvdHRvbTo3fTp7bGVmdDoiY2xhc3NpYyI9PT11P3MrMzA6MypzKzMwLGJvdHRvbTo3fTpobyh7Ym90dG9tOiJjYWxjKDUwdmggLSAiLmNvbmNhdCh6LmhlaWdodC8yKzEwLCJweCAtICIpLmNvbmNhdChmLzItMiwicHgpIil9LCJyaWdodCI9PT1kPyJyaWdodCI6ImxlZnQiLCJjYWxjKDUwdncgLSAiLmNvbmNhdCh6LndpZHRoLzIrMjAsInB4IC0gIikuY29uY2F0KHAvMi0yLCJweCkiKSkpLGk9KG5ldyBEYXRlKS5nZXRIb3VycygpKyI6IisobmV3IERhdGUpLmdldE1pbnV0ZXMoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKTtyZXR1cm4iYWx0ZXJuYXRpdmUiPT09bT9FJiZILmEuY3JlYXRlRWxlbWVudChPbyx7aXNTaG93OlMsb25BbmltYXRpb25FbmQ6bixzaGlmdEhvcml6b250YWw6cCxtaXJyb3I6aCxyZWY6TCxzdHlsZTpNLGdyZWV0aW5nRGlyZWN0aW9uOmMsYWN0aXZhdG9yU2l6ZTpzfSxILmEuY3JlYXRlRWxlbWVudChqbyx7YnV0dG9uU2hhZG93OmssZ3JlZXRpbmdNZXNzZW5nZXJzOnd9LEguYS5jcmVhdGVFbGVtZW50KEFvLHtjb2xvcjplLGJnU3R5bGU6ZyxncmFkaWVudDpEfSxILmEuY3JlYXRlRWxlbWVudChQbyx7aXNTaW5nbGU6eH0sSC5hLmNyZWF0ZUVsZW1lbnQoSW8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChMbyx7aW5kaWNhdG9yUG9zaXRpb246aixtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoVG8se2NvbXBhbnlMb2dvVXJsOmIsYnV0dG9uQm9yZGVyUmFkaXVzOmF9KSksSC5hLmNyZWF0ZUVsZW1lbnQoImRpdiIsbnVsbCxILmEuY3JlYXRlRWxlbWVudChfbyx7bWlycm9yOmh9LHYpLEguYS5jcmVhdGVFbGVtZW50KHpvLHttaXJyb3I6aH0sUikpKSxILmEuY3JlYXRlRWxlbWVudChNbyx7b25Nb3VzZVVwOnR9LEguYS5jcmVhdGVFbGVtZW50KHBvLG51bGwpKSkpLEguYS5jcmVhdGVFbGVtZW50KFJvLHtncmVldGluZ01lc3NlbmdlcnM6d30sSC5hLmNyZWF0ZUVsZW1lbnQoR28se29uTW91c2VVcDp0fSxILmEuY3JlYXRlRWxlbWVudChwbyx7Y29sb3I6IiNlMGRmZGYiLHNpemU6IjIwcHgifSkpLEguYS5jcmVhdGVFbGVtZW50KCRvLG51bGwsaSksSC5hLmNyZWF0ZUVsZW1lbnQoRG8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChCbyx7Y29tcGFueUxvZ29Vcmw6YixzaGlmdEhvcml6b250YWw6cCxidXR0b25Cb3JkZXJSYWRpdXM6YX0pLEguYS5jcmVhdGVFbGVtZW50KEZvLHtoZWlnaHQ6XyxtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoVm8se21pcnJvcjpofSxILmEuY3JlYXRlRWxlbWVudCgic3BhbiIse3JlZjpUfSx5KSkpKSx3JiZILmEuY3JlYXRlRWxlbWVudChILmEuRnJhZ21lbnQsbnVsbCxILmEuY3JlYXRlRWxlbWVudChXbyx7bWlycm9yOmh9LE4pLEguYS5jcmVhdGVFbGVtZW50KGZvLG51bGwpKSkpKToibWluaSI9PT1tP0UmJkguYS5jcmVhdGVFbGVtZW50KE9vLHtpc1Nob3c6UyxvbkFuaW1hdGlvbkVuZDpuLHNoaWZ0SG9yaXpvbnRhbDpwLHJlZjpMLHN0eWxlOk0sbWlycm9yOmgsZ3JlZXRpbmdEaXJlY3Rpb246YyxhY3RpdmF0b3JTaXplOnN9LEguYS5jcmVhdGVFbGVtZW50KGpvLHtidXR0b25TaGFkb3c6ayxncmVldGluZ01lc3NlbmdlcnM6d30sSC5hLmNyZWF0ZUVsZW1lbnQoTm8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChxbyx7b25Nb3VzZVVwOnR9LEguYS5jcmVhdGVFbGVtZW50KHBvLHtjb2xvcjoiI2UwZGZkZiIsc2l6ZToiMjBweCJ9KSksSC5hLmNyZWF0ZUVsZW1lbnQoVW8sbnVsbCxILmEuY3JlYXRlRWxlbWVudChCbyx7Y29tcGFueUxvZ29Vcmw6YixzaGlmdEhvcml6b250YWw6cCxidXR0b25Cb3JkZXJSYWRpdXM6YX0pLEguYS5jcmVhdGVFbGVtZW50KEhvLHtoZWlnaHQ6XyxtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoVm8se21pcnJvcjpofSxILmEuY3JlYXRlRWxlbWVudCgic3BhbiIse3JlZjpUfSx5KSkpKSx3JiZILmEuY3JlYXRlRWxlbWVudChmbyxudWxsKSkpKTpFJiZILmEuY3JlYXRlRWxlbWVudCh2byx7aXNTaG93OlMsb25BbmltYXRpb25FbmQ6bixyZWY6TCxzdHlsZTpNLHNoaWZ0SG9yaXpvbnRhbDpwLG1pcnJvcjpoLGdyZWV0aW5nRGlyZWN0aW9uOmMsYWN0aXZhdG9yU2l6ZTpzfSxILmEuY3JlYXRlRWxlbWVudCh3byx7YnV0dG9uU2hhZG93OmssZ3JlZXRpbmdNZXNzZW5nZXJzOnd9LEguYS5jcmVhdGVFbGVtZW50KEVvLHtvbk1vdXNlVXA6dCxtaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQocG8sbnVsbCkpLEguYS5jcmVhdGVFbGVtZW50KFNvLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoQ28se2NvbXBhbnlMb2dvVXJsOmIsc2hpZnRIb3Jpem9udGFsOnB9KSxILmEuY3JlYXRlRWxlbWVudChrbyx7aGVpZ2h0Ol8sbWlycm9yOmh9LEguYS5jcmVhdGVFbGVtZW50KHhvLHttaXJyb3I6aH0sSC5hLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtyZWY6VH0seSkpKSksIXgmJncmJkguYS5jcmVhdGVFbGVtZW50KGZvLG51bGwpKSl9dmFyIHZvPU9iamVjdChDLmQpKHQpLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMCJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUudGhlbWUsbj1lLm1pcnJvcixyPWUuZ3JlZXRpbmdEaXJlY3Rpb24sZT1lLmFjdGl2YXRvclNpemU7cmV0dXJuIE9iamVjdChDLmMpKFsnb3BhY2l0eToxO3BhZGRpbmc6MDtib3JkZXI6MDt3aWR0aDozNDNweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkhlbHZldGljYSBOZXVlIixzYW5zLXNlcmlmO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo3M3B4O2xpbmUtaGVpZ2h0OjIzcHg7Zm9udC1zaXplOjE0cHg7JywiOjA7QG1lZGlhIChtYXgtd2lkdGg6MzcwcHgpe3dpZHRoOjI4MHB4O30iLCIgQG1lZGlhIChtYXgtd2lkdGg6NDcwcHgpeyIsIn0iXSx0LnBvc2l0aW9uLG4mJk9iamVjdChDLmMpKFsiZGlyZWN0aW9uOnJ0bDsiXSksInJvdyI9PT1yJiZPYmplY3QoQy5jKShbImJvdHRvbToiLCJweCAhaW1wb3J0YW50OyIsIjowICFpbXBvcnRhbnQ7Il0sZSszMCx0LnBvc2l0aW9uKSl9KSx3bz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMSJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uU2hhZG93LGU9ZS5ncmVldGluZ01lc3NlbmdlcnM7cmV0dXJuIE9iamVjdChDLmMpKFsiYm94LXNoYWRvdzowcHggMXB4IDdweCByZ2JhKDEzNiwxMzYsMTM2LCIsIiUpO2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtwb3NpdGlvbjpyZWxhdGl2ZTttaW4taGVpZ2h0OiIsIjtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtkaXNwbGF5OmJsb2NrOyJdLDIwPHQ/dDoyMCxlPyIxNDlweCI6InVuc2V0Iil9KSx4bz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMiJ9KShbInBhZGRpbmc6MTBweCAxNnB4O2xpbmUtaGVpZ2h0OjIwcHg7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3cteTphdXRvO2hlaWdodDoxMDAlO2JveC1zaXppbmc6Ym9yZGVyLWJveDsiLCIgJjo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjVweDt3aWR0aDo1cHg7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4wMik7fSY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6cmdiYSg1Nyw1NiwxOCwuMDcpOy13ZWJraXQtYm9yZGVyLXJhZGl1czozcHg7fSJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksa289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTMifSkoWyIiLCIiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmhlaWdodCxlPWUubWlycm9yO3JldHVybiBPYmplY3QoQy5jKShbIm1pbi1oZWlnaHQ6NTZweDtoZWlnaHQ6IiwiO3dpZHRoOjIzNHB4O2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItcmFkaXVzOjhweDtwb3NpdGlvbjpyZWxhdGl2ZTsiLCIgJjo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIwcHg7Ym9yZGVyOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkICNlMmUyZTI7IiwifSY6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjIwcHg7Ym9yZGVyOjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkICNmZmY7IiwifSJdLHQrInB4IixlP09iamVjdChDLmMpKFsibWFyZ2luOjAgYXV0byAwIDVweDsiXSk6T2JqZWN0KEMuYykoWyJtYXJnaW46MCA1cHggMCBhdXRvOyJdKSxlP09iamVjdChDLmMpKFsicmlnaHQ6LTEwcHg7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpOyJdKTpPYmplY3QoQy5jKShbImxlZnQ6LTEwcHg7Il0pLGU/T2JqZWN0KEMuYykoWyJyaWdodDotOXB4O3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTsiXSk6T2JqZWN0KEMuYykoWyJsZWZ0Oi05cHg7Il0pKX0pLFNvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC00In0pKFsibWluLWhlaWdodDo1OHB4O2JvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Y29sb3I6YmxhY2s7cGFkZGluZzoyN3B4IDE4cHggMjBweCAxOHB4O2Rpc3BsYXk6ZmxleDsiXSksQ289Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTUifSkoWydkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtoZWlnaHQ6NTBweDt3aWR0aDo1MHB4O21pbi13aWR0aDo1MHB4O2JvcmRlcjoxcHggc29saWQgI2UyZTJlMjtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOnVybCgiJywnIikgbm8tcmVwZWF0IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7QG1lZGlhIChtYXgtd2lkdGg6MzcwcHgpe2Rpc3BsYXk6bm9uZTt9J10sZnVuY3Rpb24oZSl7cmV0dXJuIGUuY29tcGFueUxvZ29Vcmx9KSxFbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtNiJ9KShbIndpZHRoOjE1cHg7aGVpZ2h0OjE1cHg7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjdweDsiLCIiXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJsZWZ0OjlweDsiXSk6T2JqZWN0KEMuYykoWyJyaWdodDo5cHg7Il0pfSksT289T2JqZWN0KEMuZCkodm8pLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtNyJ9KShbIndpZHRoOjMyMHB4OyJdKSxqbz1PYmplY3QoQy5kKSh3bykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC04In0pKFsiYm9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czoxNnB4OyJdKSxBbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtOSJ9KShbIiIsIiAiXSxmdW5jdGlvbihlKXt2YXIgdD1lLmJnU3R5bGUsbj1lLmNvbG9yLGU9ZS5ncmFkaWVudDtyZXR1cm4gT2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjE2cHggMTZweCAwIDA7IiwiIEBtZWRpYShtYXgtaGVpZ2h0OjQ3MHB4KXtkaXNwbGF5Om5vbmU7fSJdLCJjb2xvciI9PT10P09iamVjdChDLmMpKFsiYmFja2dyb3VuZC1jb2xvcjoiLCI7Il0sbik6T2JqZWN0KEMuYykoWyJiYWNrZ3JvdW5kOiIsIjsiXSwibGluZWFyLWdyYWRpZW50KDEzNWRlZywgIi5jb25jYXQoZSwiKSIpKSl9KSxQbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTAifSkoWyJib3JkZXItcmFkaXVzOjE2cHggMTZweCAwIDA7cGFkZGluZzowIDE1cHg7aGVpZ2h0OjgwcHg7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZHJvcC1maWx0ZXI6IiwiOyJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLmlzU2luZ2xlJiYiYnJpZ2h0bmVzcygwLjUpIn0pLElvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0xMSJ9KShbImRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE1cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7Il0pLF9vPUMuZC5oNC53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTEyIn0pKFsibWFyZ2luOjA7dGV4dC1hbGlnbjpsZWZ0O2NvbG9yOndoaXRlICFpbXBvcnRhbnQ7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxOHB4OyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksem89Qy5kLnAud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0xMyJ9KShbIm1hcmdpbjowO2xpbmUtaGVpZ2h0OjEuMyAhaW1wb3J0YW50O2NvbG9yOndoaXRlO2ZvbnQtc2l6ZToxNHB4OyIsIiJdLGZ1bmN0aW9uKGUpe3JldHVybiBlLm1pcnJvcj9PYmplY3QoQy5jKShbInRleHQtYWxpZ246cmlnaHQ7dW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSk6T2JqZWN0KEMuYykoWyJ0ZXh0LWFsaWduOmxlZnQ7Il0pfSksVG89Qy5kLmltZy53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTE0In0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5idXR0b25Cb3JkZXJSYWRpdXMsZT1lLmNvbXBhbnlMb2dvVXJsO3JldHVybiBPYmplY3QoQy5jKShbImRpc3BsYXk6YmxvY2shaW1wb3J0YW50O2hlaWdodDo1MHB4ICFpbXBvcnRhbnQ7d2lkdGg6NTBweDttaW4td2lkdGg6NTBweDtib3JkZXI6MnB4IHNvbGlkICNmZmZmZmY7Ym9yZGVyLXJhZGl1czoiLCclO2JhY2tncm91bmQ6dXJsKCInLCciKSBuby1yZXBlYXQgY2VudGVyO2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtAbWVkaWEgKG1heC13aWR0aDozNzBweCl7ZGlzcGxheTpub25lO30nXSx0LGUpfSksTG89Qy5kLmRpdi53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTE1In0pKFsiIiwiIl0sZnVuY3Rpb24oZSl7dmFyIHQ9ZS5pbmRpY2F0b3JQb3NpdGlvbixlPWUubWlycm9yO3JldHVybiBPYmplY3QoQy5jKShbInBvc2l0aW9uOnJlbGF0aXZlOyY6YWZ0ZXJ7Y29udGVudDonJzt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O2JhY2tncm91bmQtY29sb3I6IzRkYzI0Nztib3JkZXItcmFkaXVzOjUwJTtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206IiwicHg7Ym94LXNoYWRvdzoycHggMnB4IDZweCByZ2JhKDAsMCwwLDEwJSk7IiwifSJdLHQsZT9PYmplY3QoQy5jKShbImxlZnQ6IiwicHg7Il0sdCk6T2JqZWN0KEMuYykoWyJyaWdodDoiLCJweDsiXSx0KSl9KSxNbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTYifSkoWyJ3aWR0aDoyNXB4O2hlaWdodDoyNXB4O2N1cnNvcjpwb2ludGVyOyJdKSxSbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTcifSkoWyJwYWRkaW5nOiIsIjtAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7cGFkZGluZzo1cHggMTVweDt9Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ3JlZXRpbmdNZXNzZW5nZXJzPyIxNXB4IjoiMTVweCAxNXB4IDI1cHggMTVweCJ9KSxObz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMTgifSkoWyJwYWRkaW5nOjE1cHg7Il0pLERvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0xOSJ9KShbImRpc3BsYXk6ZmxleDtnYXA6MTBweDtjb2xvcjojMDAwMDAwO0BtZWRpYShtYXgtaGVpZ2h0OjQ3MHB4KXttYXJnaW46N3B4IDA7fSJdKSxVbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjAifSkoWyJkaXNwbGF5OmZsZXg7Z2FwOjEwcHg7Y29sb3I6IzAwMDAwMDttYXJnaW46N3B4IDA7Il0pLEJvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yMSJ9KShbIiIsIiJdLGZ1bmN0aW9uKGUpe3ZhciB0PWUuYnV0dG9uQm9yZGVyUmFkaXVzLGU9ZS5jb21wYW55TG9nb1VybDtyZXR1cm4gT2JqZWN0KEMuYykoWyJkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtoZWlnaHQ6MzVweDt3aWR0aDozNXB4O21pbi13aWR0aDozNXB4O2JvcmRlci1yYWRpdXM6IiwnJTtiYWNrZ3JvdW5kOnVybCgiJywnIikgbm8tcmVwZWF0IGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7J10sdCxlKX0pLEZvPUMuZC5kaXYud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yMiJ9KShbImJhY2tncm91bmQ6cmdiYSg0NCwxMjAsMjU1LDAuMik7bWF4LWhlaWdodDoyMHZoO3BhZGRpbmc6MTRweCAwOyIsIiBAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7d2lkdGg6ODAlO30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3I/T2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjIwcHggMnB4IDIwcHggMjBweDsiXSk6T2JqZWN0KEMuYykoWyJib3JkZXItcmFkaXVzOjJweCAyMHB4IDIwcHggMjBweDsiXSl9KSxIbz1DLmQuZGl2LndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjMifSkoWyJiYWNrZ3JvdW5kOnJnYmEoNDQsMTIwLDI1NSwwLjIpO21heC1oZWlnaHQ6MjB2aDtwYWRkaW5nOjE0cHggMDt3aWR0aDo4MCU7IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUubWlycm9yP09iamVjdChDLmMpKFsiYm9yZGVyLXJhZGl1czoyMHB4IDJweCAyMHB4IDIwcHg7Il0pOk9iamVjdChDLmMpKFsiYm9yZGVyLXJhZGl1czoycHggMjBweCAyMHB4IDIwcHg7Il0pfSksVm89T2JqZWN0KEMuZCkoeG8pLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjQifSkoWyJwYWRkaW5nOjAgMTZweDsiXSksJG89Qy5kLnAud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yNSJ9KShbIm1hcmdpbjowIDAgMTVweCAwO2NvbG9yOiM5NTlEQTk7QG1lZGlhKG1heC1oZWlnaHQ6NDcwcHgpe2Rpc3BsYXk6bm9uZTt9Il0pLFdvPUMuZC5wLndpdGhDb25maWcoe2NvbXBvbmVudElkOiJzYy1yazcyYmgtMjYifSkoWyJmb250LXdlaWdodDpib2xkO21hcmdpbjoyNXB4IDAgNXB4IDA7Y29sb3I6IzAwMDAwMCAhaW1wb3J0YW50OyIsIiBAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7ZGlzcGxheTpub25lO30iXSxmdW5jdGlvbihlKXtyZXR1cm4gZS5taXJyb3ImJk9iamVjdChDLmMpKFsidW5pY29kZS1iaWRpOnBsYWludGV4dDsiXSl9KSxHbz1PYmplY3QoQy5kKShNbykud2l0aENvbmZpZyh7Y29tcG9uZW50SWQ6InNjLXJrNzJiaC0yNyJ9KShbImRpc3BsYXk6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NXB4O3JpZ2h0OjNweDtAbWVkaWEobWF4LWhlaWdodDo0NzBweCl7ZGlzcGxheTpibG9jazt9Il0pLHFvPU9iamVjdChDLmQpKE1vKS53aXRoQ29uZmlnKHtjb21wb25lbnRJZDoic2Mtcms3MmJoLTI4In0pKFsicG9zaXRpb246YWJzb2x1dGU7dG9wOjVweDtyaWdodDozcHg7Il0pLFpvPU9iamVjdChDLmIpKFsiIyIsIiA+ICp7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCkgIWltcG9ydGFudDtib3gtc2l6aW5nOmJvcmRlci1ib3ggIWltcG9ydGFudDt9IyIsIiBwe3BhZGRpbmctYm90dG9tOjAgIWltcG9ydGFudDt9IiwiIl0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuY29udGFpbmVySWR9LGZ1bmN0aW9uKGUpe3JldHVybiBlLmNvbnRhaW5lcklkfSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zZXR0aW5ncy5mYWNlYm9vayYmWG99KSxYbz1PYmplY3QoQy5jKShbIiNmYi1yb290IC5mYi1jdXN0b21lcmNoYXQgPip7b3BhY2l0eTowO30uZmItY3VzdG9tZXJjaGF0IGlmcmFtZXtib3R0b206IiwicHggIWltcG9ydGFudDsiLCI6IiwicHggIWltcG9ydGFudDt9LmZiLWN1c3RvbWVyY2hhdCBpZnJhbWUuZmJfY3VzdG9tZXJfY2hhdF9ib3VuY2VfaW5fdjJ7bWF4LWhlaWdodDpjYWxjKDgwJSAtIDMwcHgpICFpbXBvcnRhbnQ7fS5mYl9kaWFsb2d7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fS5mYl9jdXN0b21lcl9jaGF0X2JvdW5jZV9vdXRfdjJ7YW5pbWF0aW9uLW5hbWU6ZmJfYm91bmNlX291dF9jcyFpbXBvcnRhbnQ7fS5mYl9jdXN0b21lcl9jaGF0X2JvdW5jZV9pbl92MnthbmltYXRpb24tbmFtZTpmYl9ib3VuY2VfaW5fY3MhaW1wb3J0YW50O31Aa2V5ZnJhbWVzIGZiX2JvdW5jZV9pbl9jc3swJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDAsMCk7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gIiwiO301MCV7dHJhbnNmb3JtOnNjYWxlKDEuMDMsMS4wMyk7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gIiwiO30xMDAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSwxKTt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSAiLCI7fX1Aa2V5ZnJhbWVzIGZiX2JvdW5jZV9vdXRfY3N7MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxLDEpO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tICIsIjt9MTAwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDAsMCk7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gIiwiO319Il0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnNoaWZ0VmVydGljYWwrNTB9LGZ1bmN0aW9uKGUpe3JldHVybiBlLnN0eWxlcy5wb3NpdGlvbn0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnNoaWZ0SG9yaXpvbnRhbC0yMH0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zdHlsZXMucG9zaXRpb259LGZ1bmN0aW9uKGUpe3JldHVybiBlLnN0eWxlcy5wb3NpdGlvbn0sZnVuY3Rpb24oZSl7cmV0dXJuIGUuc3R5bGVzLnBvc2l0aW9ufSxmdW5jdGlvbihlKXtyZXR1cm4gZS5zdHlsZXMucG9zaXRpb259KTtmdW5jdGlvbiBZbyhlLHQpe3ZhciBuLHIsbyxhLGk9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKGkpcmV0dXJuIHI9IShuPSEwKSx7czpmdW5jdGlvbigpe2k9aS5jYWxsKGUpfSxuOmZ1bmN0aW9uKCl7dmFyIGU9aS5uZXh0KCk7cmV0dXJuIG49ZS5kb25lLGV9LGU6ZnVuY3Rpb24oZSl7cj0hMCxvPWV9LGY6ZnVuY3Rpb24oKXt0cnl7bnx8bnVsbD09aS5yZXR1cm58fGkucmV0dXJuKCl9ZmluYWxseXtpZihyKXRocm93IG99fX07aWYoQXJyYXkuaXNBcnJheShlKXx8KGk9ZnVuY3Rpb24oZSx0KXt2YXIgbjtpZihlKXJldHVybiJzdHJpbmciPT10eXBlb2YgZT9RbyhlLHQpOiJNYXAiPT09KG49Ik9iamVjdCI9PT0obj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkuc2xpY2UoOCwtMSkpJiZlLmNvbnN0cnVjdG9yP2UuY29uc3RydWN0b3IubmFtZTpuKXx8IlNldCI9PT1uP0FycmF5LmZyb20oZSk6IkFyZ3VtZW50cyI9PT1ufHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKT9RbyhlLHQpOnZvaWQgMH0oZSkpfHx0JiZlJiYibnVtYmVyIj09dHlwZW9mIGUubGVuZ3RoKXJldHVybiBpJiYoZT1pKSxhPTAse3M6dD1mdW5jdGlvbigpe30sbjpmdW5jdGlvbigpe3JldHVybiBhPj1lLmxlbmd0aD97ZG9uZTohMH06e2RvbmU6ITEsdmFsdWU6ZVthKytdfX0sZTpmdW5jdGlvbihlKXt0aHJvdyBlfSxmOnR9O3Rocm93IG5ldyBUeXBlRXJyb3IoIkludmFsaWQgYXR0ZW1wdCB0byBpdGVyYXRlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iKX1mdW5jdGlvbiBRbyhlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgbj0wLHI9bmV3IEFycmF5KHQpO248dDtuKyspcltuXT1lW25dO3JldHVybiByfXdpbmRvdy5HQkJUTj13aW5kb3cuR0JCVE58fHtsb2FkZWRfYnV0dG9uc19oYXNoX2lkczpbXX07dmFyIEtvLEpvLGVhLHRhLG5hLGc9ITEscmE9WW8oZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpKTt0cnl7Zm9yKHJhLnMoKTshKGVhPXJhLm4oKSkuZG9uZTspe3ZhciBvYSxhYSxpYT1lYS52YWx1ZTtpZihudWxsIT0ob2E9aWEuc3JjKSYmb2EuaW5jbHVkZXMoIi5nZXRidXR0b24uaW8vd2lkZ2V0L2J1bmRsZS5qcz9pZCIpfHxudWxsIT0oYWE9aWEuc3JjKSYmYWEuaW5jbHVkZXMoIjo5MDAwL2J1bmRsZS5qcz9pZD0iKSl7aWYoZz1pYS5zcmMubWF0Y2goL2lkPShbXiZdKikvKVsxXSxjb25zb2xlLmxvZygiZm91bmQgaGFzaElkOiIsZyksIXdpbmRvdy5HQkJUTi5sb2FkZWRfYnV0dG9uc19oYXNoX2lkcy5pbmNsdWRlcyhnKSl7d2luZG93LkdCQlROLmxvYWRlZF9idXR0b25zX2hhc2hfaWRzLnB1c2goZyksdGE9ImdldGJ1dHRvbi5pbyIsbmE9Imh0dHBzOiIsY29uc29sZS5sb2coIj4gc2hvcnRDb2RlSW5pdCIpLHplKHRhLG5hKSxMZShUZSkudGhlbihmdW5jdGlvbigpe3JldHVybiBsYSgpfSkuY2F0Y2goZnVuY3Rpb24oZSl7cmV0dXJuIGNvbnNvbGUuZXJyb3J9KSxjLnNjcmlwdElkPWc7YnJlYWt9Y29uc29sZS5sb2coInNraXAgbG9hZGluZyBoYXNoSWQ6ICIuY29uY2F0KGcsIiAoYWxyZWFkeSBsb2FkZWQpIikpfX19Y2F0Y2goZSl7cmEuZShlKX1maW5hbGx5e3JhLmYoKX1jb25zb2xlLmxvZygiPiBsb25nQ29kZUluaXQiKSx3aW5kb3cuV2hXaWRnZXRTZW5kQnV0dG9uPXtpbml0OnplLHJlSW5pdDpmdW5jdGlvbihlLHQsbil7emUoZSx0LG4pLExlKFRlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGxhKCl9KS5jYXRjaChmdW5jdGlvbihlKXtyZXR1cm4gY29uc29sZS5lcnJvcn0pfX07dHJ5e2NvbnNvbGUubG9nKCI+IHRyeSIpLExlKFRlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGxhKCl9KS5jYXRjaChmdW5jdGlvbihlKXtyZXR1cm4gY29uc29sZS5lcnJvcn0pfWNhdGNoKGUpe2NvbnNvbGUuZXJyb3IoIj4gdHJ5IGVycm9yIixlKX12YXIgbGE9ZnVuY3Rpb24oKXt2YXIgZSx0O0pvJiYoSm8udW5tb3VudCgpLEpvPW51bGwsdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChLbykpJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCksYy5zaG93V2lkZ2V0PzAhPT1jLm9yZGVyLmxlbmd0aHx8Zz8oS289ImdiLXdpZGdldC0iLmNvbmNhdChNYXRoLmZsb29yKDk5OTkqTWF0aC5yYW5kb20oKSkpLChlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpKS5zZXRBdHRyaWJ1dGUoImlkIixLbyksZS5zZXRBdHRyaWJ1dGUoInNjcmlwdC1pZCIsZyksZG9jdW1lbnQuYm9keS5pbnNlcnRCZWZvcmUoZSxkb2N1bWVudC5ib2R5Lmxhc3RDaGlsZC5uZXh0U2libGluZyksdD1mdW5jdGlvbigpe3JldHVybiBnZSgxZTMpP0guYS5jcmVhdGVFbGVtZW50KHVlLG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoY2Ese3Jvb3RDb250YWluZXI6ZSxjb250YWluZXJJZDpLb30pKToiIn0sKEpvPXkuYS5jcmVhdGVSb290KGUpKS5yZW5kZXIoSC5hLmNyZWF0ZUVsZW1lbnQodCxudWxsKSkpOmNvbnNvbGUud2FybigiR2V0QnV0dG9uIGlzIGVtcHR5Iik6Y29uc29sZS53YXJuKCJXaWRnZXQgaXMgaGlkZGVuIixnKX0sY2E9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yb290Q29udGFpbmVyLGU9ZS5jb250YWluZXJJZCxuPU9iamVjdChGLnVzZUNvbnRleHQpKFYpLHI9bi5hY3Rpb25zLG49bi5zZXR0aW5ncyxvPShILmEudXNlRWZmZWN0KGZ1bmN0aW9uKCl7d2luZG93LldoV2lkZ2V0U2VuZEJ1dHRvbj13aW5kb3cuV2hXaWRnZXRTZW5kQnV0dG9ufHx7fSx3aW5kb3cuV2hXaWRnZXRTZW5kQnV0dG9uLnNob3dQb3B1cD1mdW5jdGlvbihlKXtyLnNob3dCdXR0b25Qb3B1cChlKX19LFtdKSxuLnNoaWZ0VmVydGljYWwpLGE9bi5zaGlmdEhvcml6b250YWwsaT1uLnBvc2l0aW9uLGw9bi5kaXJlY3Rpb24sYz1uLmFjdGl2YXRvclNpemUsdT1uLmJ1dHRvbkNvbG9yLGw9IlxuICAgIGJvdHRvbTogIi5jb25jYXQobywicHggIWltcG9ydGFudDtcbiAgICAiKS5jb25jYXQoaSwiOiAiKS5jb25jYXQoYSwicHggIWltcG9ydGFudDtcbiAgICAvLyBvcGFjaXR5OiAwO1xuICAgIC8vIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDE2MDAwMTYwICFpbXBvcnRhbnQ7XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgdGV4dC1hbGlnbjogIikuY29uY2F0KCJyaWdodCI9PT1pPyJyaWdodCI6ImxlZnQiLCI7XG4gICAgZGlzcGxheTogIikuY29uY2F0KCJyb3ciPT09bCYmImZsZXgiLCI7XG4gICAgYWxpZ24taXRlbXM6ICIpLmNvbmNhdCgicm93Ij09PWwmJiJmbGV4LWVuZCIsIjtcbiAgICBmbGV4LWRpcmVjdGlvbjogIikuY29uY2F0KCJsZWZ0Ij09PWkmJiJyb3ctcmV2ZXJzZSIsIjtcbiAgIiksbz0odC5zZXRBdHRyaWJ1dGUoInN0eWxlIixsKSx7c2hpZnRWZXJ0aWNhbDpvLHNoaWZ0SG9yaXpvbnRhbDphLGFjdGl2YXRvclNpemU6Yyxwb3NpdGlvbjppfSk7cmV0dXJuIHQuc2V0QXR0cmlidXRlKCJzdHlsZSIsbCksSC5hLmNyZWF0ZUVsZW1lbnQoSC5hLkZyYWdtZW50LG51bGwsSC5hLmNyZWF0ZUVsZW1lbnQoWm8se2NvbnRhaW5lcklkOmUsc3R5bGVzOm8sc2V0dGluZ3M6bn0pLEguYS5jcmVhdGVFbGVtZW50KHNlLHt0aGVtZTppfSxILmEuY3JlYXRlRWxlbWVudChHcixudWxsKSxILmEuY3JlYXRlRWxlbWVudChLcixudWxsKSxILmEuY3JlYXRlRWxlbWVudChxcixudWxsKSxILmEuY3JlYXRlRWxlbWVudCh5byx7Y29sb3I6dX0pKSl9fV0scj17fSxvLm09bixvLmM9cixvLmQ9ZnVuY3Rpb24oZSx0LG4pe28ubyhlLHQpfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtlbnVtZXJhYmxlOiEwLGdldDpufSl9LG8ucj1mdW5jdGlvbihlKXsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxvLnQ9ZnVuY3Rpb24odCxlKXtpZigxJmUmJih0PW8odCkpLDgmZSlyZXR1cm4gdDtpZig0JmUmJiJvYmplY3QiPT10eXBlb2YgdCYmdCYmdC5fX2VzTW9kdWxlKXJldHVybiB0O3ZhciBuPU9iamVjdC5jcmVhdGUobnVsbCk7aWYoby5yKG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJkZWZhdWx0Iix7ZW51bWVyYWJsZTohMCx2YWx1ZTp0fSksMiZlJiYic3RyaW5nIiE9dHlwZW9mIHQpZm9yKHZhciByIGluIHQpby5kKG4scixmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0uYmluZChudWxsLHIpKTtyZXR1cm4gbn0sby5uPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuX19lc01vZHVsZT9mdW5jdGlvbigpe3JldHVybiBlLmRlZmF1bHR9OmZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBvLmQodCwiYSIsdCksdH0sby5vPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfSxvLnA9Ii8iLG8oby5zPTE3OCl9KCk7"}},"time_used":6,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":6,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/img-bg3.jpg","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.439Z","timestamp":1785159268439,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/img-bg3.jpg HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"18bda-66136805-9322d7a0928eb5be;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 101338\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":101338,"size_decoded":101668,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 1349x1174, components 3","md5":"82912ba86caf4759197105fa2a9d9e57","sha1":"5f10ae8008e00853f8493ba0dafc47acd55e464d","sha256":"2ef0b7e1570c62b8b10ce773b7974f0aaa750f66a47e69153cf46352fe7c23cb","sha512":"936a923e155ca844c0a400b17a01452d1156a338720c7b822ca24cb8ce6b2ded868a2cba458f36ba2845d8daec138d9da0b0721ede205c6f67f0d8b8aa1b501e","ssdeep":"1536:jurN52sUMAd2azrjqcvJ0BmQdcjDHga88kvFkMLeA4cCj12ZXmbpXLy2iQ:4NoTcwrpvJ0BJ0Hp88kvLe5DyXmbliQ","tlshash":"32a3010c931427dec0fd53788bba141a0b0f9ae9df09684b976bbaa47934357ed484d3","first_seen":"2026-07-27T07:08:39.38502Z","last_seen":"2026-07-27T13:35:41.641143Z","times_seen":3,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjkyNzdBM0Y0MUI4RTExRUM5QjhDQkM0ODY0RTI1MEMwIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjkyNzdBM0Y1MUI4RTExRUM5QjhDQkM0ODY0RTI1MEMwIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTI3N0EzRjIxQjhFMTFFQzlCOENCQzQ4NjRFMjUwQzAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6OTI3N0EzRjMxQjhFMTFFQzlCOENCQzQ4NjRFMjUwQzAiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAGBAQEBQQGBQUGCQYFBgkLCAYG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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB//2Q=="}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/16067.9d24889b2af3eb305dcf.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.295Z","timestamp":1785159269295,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/16067.9d24889b2af3eb305dcf.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a9-33d7\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:32:31\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: d0db3fbc1a778d17c5151a5c91946b54\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"]}],"data":{"size":13271,"size_decoded":6441,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3064)","md5":"1d9a347c6cdf907920b1993e9feddfba","sha1":"bcc6d02f92bd3eac53876be063d13f785ca1179e","sha256":"5190f0eab3ed44eb52290be2d754d52b090408e7d499dc46833fb4d0017b18f9","sha512":"cfbdb76074a6eb51120e6910bde5aaa8bfe2549f80c281d492e99346ec89e6c8532136fe25e9b6c6aecdbdd0ea78235327149fd53b5d063f7256027cb7b6ea4a","ssdeep":"384:gtprvDyVG3ll4CRbiobm+FXM3Op0dv5JbOrDkSN48WNknWPx:gLrveVKllPllxlM3mU0rDkSN48W+nWPx","tlshash":"4f52b669f0c267dc3ab196e0f8b710c1f16bac55f5016860eff04de229a5d4a3166fac","first_seen":"2026-07-23T13:38:20.449846Z","last_seen":"2026-07-28T04:59:54.460146Z","times_seen":306,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNjA2N10sezkxNDQ4NyhlLHQpe3ZhciBuOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgbz17fS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBhKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07aWYobil7dmFyIHI9dHlwZW9mIG47aWYoInN0cmluZyI9PT1yfHwibnVtYmVyIj09PXIpZS5wdXNoKG4pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShuKSYmbi5sZW5ndGgpe3ZhciBsPWEuYXBwbHkobnVsbCxuKTtsJiZlLnB1c2gobCl9ZWxzZSBpZigib2JqZWN0Ij09PXIpZm9yKHZhciBpIGluIG4pby5jYWxsKG4saSkmJm5baV0mJmUucHVzaChpKX19cmV0dXJuIGUuam9pbigiICIpfWUuZXhwb3J0cz8oYS5kZWZhdWx0PWEsZS5leHBvcnRzPWEpOnZvaWQgMD09PShuPWZ1bmN0aW9uKCl7cmV0dXJuIGF9LmFwcGx5KHQsW10pKXx8KGUuZXhwb3J0cz1uKX0oKX0sOTc1Mjg1KGUpe2UuZXhwb3J0cz17d3JhcHBlcjoid3JhcHBlci1oY3QyeUp2SyIsYW5pbWF0ZWQ6ImFuaW1hdGVkLWhjdDJ5SnZLIixwdWxzYXRpb246InB1bHNhdGlvbi1oY3QyeUp2SyJ9fSwzOTkwOTIoZSl7ZS5leHBvcnRzPXsiY3NzLXZhbHVlLWNvcHlyaWdodC10cmFuc2l0aW9uLXBhcmFtcyI6Ii42cyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsImNzcy12YWx1ZS1jb3B5cmlnaHQtdHJhbnNpdGlvbi1wYXJhbXMtaGFsZi10aW1lIjoiLjNzIDBzIGN1YmljLWJlemllciguNCwgLjAxLCAuMjIsIDEpIixsYWJlbDoibGFiZWwtZHpiZDdseVYiLGxvZ29XcmFwOiJsb2dvV3JhcC1kemJkN2x5ViIsZXhwYW5kZWRXaXRoVHJhbnNpdGlvbjoiZXhwYW5kZWRXaXRoVHJhbnNpdGlvbi1kemJkN2x5ViIsZXhwYW5kZWRCeUNsaWNrOiJleHBhbmRlZEJ5Q2xpY2stZHpiZDdseVYiLHN0YXJ0OiJzdGFydC1kemJkN2x5ViIsZW5kOiJlbmQtZHpiZDdseVYiLHNuYXA6InNuYXAtZHpiZDdseVYiLHRvcDoidG9wLWR6YmQ3bHlWIixib3R0b206ImJvdHRvbS1kemJkN2x5ViIsbGFyZ2U6ImxhcmdlLWR6YmQ3bHlWIixleHBhbmRlZDoiZXhwYW5kZWQtZHpiZDdseVYiLGxhYmVsX19saW5rOiJsYWJlbF9fbGluay1kemJkN2x5ViJ9fSw3OTQxODcoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0U3R5bGVDbGFzc2VzOigpPT5jLGlzQ2lyY2xlTG9nb1dpdGhVcmxQcm9wczooKT0+c30pO3ZhciBvPW4oOTE0NDg3KSxhPW4ubihvKSxyPW4oMTM2NCksbD1uKDE0MDAxNyksaT1uLm4obCk7ZnVuY3Rpb24gYyhlLHQ9MixuKXtyZXR1cm4gYSgpKGkoKS5sb2dvLGkoKVtlXSxuLDA9PT10fHwxPT09dD9hKCkoci5za2VsZXRvblRoZW1lLndyYXBwZXIsaSgpLnNrZWxldG9uKTppKCkubGV0dGVyLDE9PT10JiZyLnNrZWxldG9uVGhlbWUuYW5pbWF0ZWQpfWZ1bmN0aW9uIHMoZSl7cmV0dXJuImxvZ29VcmwiaW4gZSYmbnVsbCE9PWUubG9nb1VybCYmdm9pZCAwIT09ZS5sb2dvVXJsJiYwIT09ZS5sb2dvVXJsLmxlbmd0aH19LDEzNjQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7c2tlbGV0b25UaGVtZTooKT0+YX0pO3ZhciBvPW4oOTc1Mjg1KTtjb25zdCBhPW4ubihvKSgpfSw4MjkxODAoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgbz1uKDYwMTg0MSk7Y29uc3QgYT0veyhcdyspfS9nLHI9L3soXGQrKX0vZztTdHJpbmcucHJvdG90eXBlLmZvcm1hdD1mdW5jdGlvbiguLi5lKXtjb25zdCB0PSgwLG8uaXNPYmplY3QpKGVbMF0pLG49dD9hOnIsbD10Pyh0LG4pPT57Y29uc3Qgbz1lWzBdO3JldHVybiB2b2lkIDAhPT1vW25dP29bbl06dH06KHQsbik9Pntjb25zdCBvPXBhcnNlSW50KG4sMTApLGE9ZVtvXTtyZXR1cm4gdm9pZCAwIT09YT9hOnR9O3JldHVybiB0aGlzLnJlcGxhY2UobixsKX19LDQ1NzA3OShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRDdXJyZW5jeUZsYWc6KCk9PmwsZ2V0Q3VycmVuY3lOYW1lOigpPT5pfSk7dmFyIG89bigxODUyNzEpLGE9big4NjIyMTMpO2NvbnN0IHI9KDAsYS5nZXRMb2dvVXJsUmVzb2x2ZXIpKCk7ZnVuY3Rpb24gbChlKXtjb25zdCB0PWNbZV07aWYodClyZXR1cm4gci5nZXRDb3VudHJ5RmxhZ1VybCh0LmNvdW50eUNvZGUsYS5Mb2dvU2l6ZS5NZWRpdW0pfWZ1bmN0aW9uIGkoZSl7cmV0dXJuIGNbZV0/LmdldE5hbWUoKXx8IiJ9Y29uc3QgYz17QUVEOntjb3VudHlDb2RlOiJBRSIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oOTgzMTA3KSl9LEFSUzp7Y291bnR5Q29kZToiQVIiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDg1NzU4NykpfSxBVUQ6e2NvdW50eUNvZGU6IkFVIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig3MjMzNDIpKX0sQlJMOntjb3VudHlDb2RlOiJCUiIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oNTIwMDAyKSl9LENBRDp7Y291bnR5Q29kZToiQ0EiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDEwODAwMSkpfSxDSEY6e2NvdW50eUNvZGU6IkNIIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig2MDg2MzEpKX0sQ0xQOntjb3VudHlDb2RlOiJDTCIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oOTA0MzM4KSl9LENOWTp7Y291bnR5Q29kZToiQ04iLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDIzNDc4MikpfSxDT1A6e2NvdW50eUNvZGU6IkNPIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbigxMzU4NjcpKX0sREtLOntjb3VudHlDb2RlOiJESyIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oMjQxNTg1KSl9LEVVUjp7Y291bnR5Q29kZToiRVUiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDU2MTY1KSl9LEdCUDp7Y291bnR5Q29kZToiR0IiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDcxNzAzMykpfSxIS0Q6e2NvdW50eUNvZGU6IkhLIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig3MDI5MjQpKX0sSURSOntjb3VudHlDb2RlOiJJRCIsCmdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDM5MDM2MCkpfSxJTFM6e2NvdW50eUNvZGU6IklMIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig4NTQ4NzApKX0sSU5SOntjb3VudHlDb2RlOiJJTiIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oMTU5ODMwKSl9LElTSzp7Y291bnR5Q29kZToiSVMiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDc0NzI4KSl9LEpQWTp7Y291bnR5Q29kZToiSlAiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDMwNzMzNikpfSxJU0w6e2NvdW50eUNvZGU6IklMIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig4MTY4MzYpKX0sS1JXOntjb3VudHlDb2RlOiJLUiIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oNTg5MDcxKSl9LEtXRDp7Y291bnR5Q29kZToiS1ciLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDkyMjI0NCkpfSxNWE46e2NvdW50eUNvZGU6Ik1YIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbigyMjA3NDApKX0sTVlSOntjb3VudHlDb2RlOiJNWSIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oNjg5MTE3KSl9LE5PSzp7Y291bnR5Q29kZToiTk8iLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDk5Mzk5OSkpfSxOWkQ6e2NvdW50eUNvZGU6Ik5aIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig5MDQ0MDApKX0sUEVOOntjb3VudHlDb2RlOiJQRSIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oODUxMTExKSl9LFBIUDp7Y291bnR5Q29kZToiUEgiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDQyNTI3NikpfSxQTE46e2NvdW50eUNvZGU6IlBMIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig0Nzc2NTApKX0sUlVCOntjb3VudHlDb2RlOiJSVSIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oMzMzMjgpKX0sU0FSOntjb3VudHlDb2RlOiJTQSIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oOTk1OTY2KSl9LFNFSzp7Y291bnR5Q29kZToiU0UiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDc3NzEyMCkpfSxTR0Q6e2NvdW50eUNvZGU6IlNHIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbigyNTE3MCkpfSxUSEI6e2NvdW50eUNvZGU6IlRIIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbigxMDQ4MzEpKX0sVFJZOntjb3VudHlDb2RlOiJUUiIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oMjg2OTIxKSl9LFRXRDp7Y291bnR5Q29kZToiVFciLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDU4MDgwMikpfSxWTkQ6e2NvdW50eUNvZGU6IlZOIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbig1ODk0MDgpKX0sVVNEOntjb3VudHlDb2RlOiJVUyIsZ2V0TmFtZTooKT0+by50KG51bGwsdm9pZCAwLG4oMjI5MTEwKSl9LFVZVTp7Y291bnR5Q29kZToiVVkiLGdldE5hbWU6KCk9Pm8udChudWxsLHZvaWQgMCxuKDkyODU1MykpfSxaQVI6e2NvdW50eUNvZGU6IlpBIixnZXROYW1lOigpPT5vLnQobnVsbCx2b2lkIDAsbigxODA5MzEpKX19fSwxNTAxNTAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z3VpZDooKT0+YSxyYW5kb21IYXNoOigpPT5yfSk7Y29uc3Qgbz0iMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiO2Z1bmN0aW9uIGEoKXtyZXR1cm4ieHh4eHh4eHgteHh4eC00eHh4LXl4eHgteHh4eHh4eHh4eHh4Ii5yZXBsYWNlKC9beHldL2csKGU9Pntjb25zdCB0PTE2Kk1hdGgucmFuZG9tKCl8MDtyZXR1cm4oIngiPT09ZT90OjMmdHw4KS50b1N0cmluZygxNil9KSl9ZnVuY3Rpb24gcigpe3JldHVybiBmdW5jdGlvbihlKXtsZXQgdD0iIjtmb3IobGV0IG49MDtuPGU7KytuKXtjb25zdCBlPU1hdGguZmxvb3IoNjIqTWF0aC5yYW5kb20oKSk7dCs9b1tlXX1yZXR1cm4gdH0oMTIpfX0sMTE1MjkzKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2ZvcmNlTFRSU3RyOigpPT5kLGlzUnRsOigpPT5yLHNldERvY3VtZW50RGlyR2V0dGVyOigpPT5hLHN0cmlwTFRSTWFya3M6KCk9PnN9KTtuKDMyMDQwMyk7bGV0IG89KCk9Pm51bGw7ZnVuY3Rpb24gYShlKXtvPWV9Y29uc3Qgcj0oKT0+InJ0bCI9PT1mdW5jdGlvbigpe2NvbnN0IGU9bygpO2lmKG51bGw9PT1lKXRocm93IG5ldyBFcnJvcigiRG9jdW1lbnQgZGlyZWN0aW9uIGdldHRlciBpcyBub3Qgc2V0LCBjYWxsIHNldERvY3VtZW50RGlyR2V0dGVyIHRvIHNldCBpdCIpO3JldHVybiBlfSgpLGw9IuKAqiIsaT0i4oCsIixjPW5ldyBSZWdFeHAoIuKAjnzigI984oCqfOKAq3zigKwiLCJnIik7ZnVuY3Rpb24gcyhlKXtyZXR1cm4iIiE9PWUmJnIoKSYmbnVsbCE9ZT9lLnJlcGxhY2UoYywiIik6ZX1mdW5jdGlvbiBkKGUpe3JldHVybiIiIT09ZSYmcigpJiZudWxsIT1lP2wrZStpOmV9dmFyIHU7IWZ1bmN0aW9uKGUpe2UuTFRSPSJsdHIiLGUuUlRMPSJydGwiLGUuVU5LTk9XTj0iIn0odXx8KHU9e30pKX0sMTM2OTkxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2NvcHlyaWdodExhYmVsOigpPT5kfSk7dmFyIG8sYT1uKDE4NTI3MSkscj1uKDkxNDQ4NyksbD1uLm4ociksaT1uKDYwMTg0MSksYz1uKDM4NzIzMSkscz1uKDM5OTA5Mik7ZnVuY3Rpb24gZCh7c3ZnVGV4dDplLGljb246dCx0aGVtZTpyLHVybDpkLG1vZGU6dSx2ZXJ0aWNhbFBvc2l0aW9uOm09by5WZXJ0aWNhbC5Cb3R0b20saG9yaXpvbnRhbFBvc2l0aW9uOnA9by5Ib3Jpem9udGFsLkVuZCxzbmFwVG9FZGdlOmc9ITAsaXNFeHBhbmRlZDp5PSExLGNsYXNzTmFtZTp2fSl7bGV0IGY7c3dpdGNoKHUpe2Nhc2UibmV3IjpjYXNlIndpdGhfYm9yZGVyIjpjYXNlImxhcmdlX3RyYWRlIjpmPSgwLGkuY2xvbmUpKHIpO2JyZWFrO2RlZmF1bHQ6Zj0oMCxjLm1lcmdlVGhlbWVzKSgoMCxpLmNsb25lKShzKSxyKX1jb25zdCBoPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtsZXQgYjtkJiYoYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIiksYi5jbGFzc0xpc3QuYWRkKC4uLmYubGFiZWxfX2xpbmsuc3BsaXQoL1xzLykpLApiLmhyZWY9ZCxiLnRhcmdldD0iX2JsYW5rIixiLnJlbD0ibm9vcGVuZXIgbm9yZWZlcnJlciIsYi5zZXRBdHRyaWJ1dGUoImRhdGEtdGFyZ2V0LXR5cGUiLCJjb3B5cmlnaHQiKSxiLmFyaWFMYWJlbD1hLnQobnVsbCx2b2lkIDAsbig1MTc4NTkpKSxoLmFwcGVuZChiKSksaC5jbGFzc05hbWU9bCgpKGYubGFiZWwscD09PW8uSG9yaXpvbnRhbC5TdGFydCYmZi5zdGFydCxwPT09by5Ib3Jpem9udGFsLkVuZCYmZi5lbmQsbT09PW8uVmVydGljYWwuVG9wJiZmLnRvcCxtPT09by5WZXJ0aWNhbC5Cb3R0b20mJmYuYm90dG9tLGcmJiJsYXJnZV90cmFkZSIhPT11JiZmLnNuYXAsImxhcmdlX29sZCI9PT11JiZmLmxhcmdlLCh5fHwibGFyZ2VfdHJhZGUiPT09dSkmJmYuZXhwYW5kZWQsdiwianMtY29weXJpZ2h0LWxhYmVsIiksaC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCgpPT57ZnVuY3Rpb24gZSgpe2guY2xhc3NMaXN0LnJlbW92ZShmLmV4cGFuZGVkQnlDbGljayksaC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixlKX1oLmNsYXNzTGlzdC5jb250YWlucyhmLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24pfHxoLmNsYXNzTGlzdC5jb250YWlucyhmLmV4cGFuZGVkKXx8KGguY2xhc3NMaXN0LmNvbnRhaW5zKGYuZXhwYW5kZWRCeUNsaWNrKT9kfHxlKCk6KGguY2xhc3NMaXN0LmFkZChmLmV4cGFuZGVkQnlDbGljayksaC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixlKSkpfSkpO2NvbnN0IE49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO04uY2xhc3NOYW1lPWYubG9nb1dyYXAsTi5pbm5lckhUTUw9dDtjb25zdCB4PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtyZXR1cm4geC5jbGFzc05hbWU9Zi5zdmdUZXh0V3JhcCx4LmlubmVySFRNTD1lLGguYXBwZW5kKE4seCksW2gsZl19IWZ1bmN0aW9uKGUpe2xldCB0LG47IWZ1bmN0aW9uKGUpe2VbZS5Cb3R0b209MF09IkJvdHRvbSIsZVtlLlRvcD0xXT0iVG9wIn0odD1lLlZlcnRpY2FsfHwoZS5WZXJ0aWNhbD17fSkpLGZ1bmN0aW9uKGUpe2VbZS5TdGFydD0wXT0iU3RhcnQiLGVbZS5FbmQ9MV09IkVuZCJ9KG49ZS5Ib3Jpem9udGFsfHwoZS5Ib3Jpem9udGFsPXt9KSl9KG98fChvPXt9KSl9LDY1MzgxNyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtjcmVhdGVDb3B5cmlnaHRMYWJlbDooKT0+aX0pO3ZhciBvPW4oOTE0NDg3KSxhPW4ubihvKSxyPW4oMTM2OTkxKSxsPW4oNTI4ODY0KTtmdW5jdGlvbiBpKHtzaGVyaWZmT3B0aW9uczplLC4uLnR9KXtjb25zdFtuLG9dPSgwLHIuY29weXJpZ2h0TGFiZWwpKHQpLGk9ZSYmZS5pbmNsdWRlcyhsLktub3duQWN0aW9uLkV4cGFuZCksYz1lJiZlLmluY2x1ZGVzKGwuS25vd25BY3Rpb24uTGFyZ2VUcmFkZUxvZ28pO3JldHVybiBuLmNsYXNzTmFtZT1hKCkobi5jbGFzc05hbWUsKGl8fGMpJiZvLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24pLG59fSw1Mjg4NjQoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgbztuLmQodCx7S25vd25BY3Rpb246KCk9Pm8sd2lkZ2V0U2hlcmlmZkFjdGlvbnM6KCk9PmF9KSxmdW5jdGlvbihlKXtlLkV4cGFuZD0iZXhwYW5kLWxvZ28iLGUuTGFyZ2VUcmFkZUxvZ289ImxhcmdlLXRyYWRlLWxvZ28ifShvfHwobz17fSkpO2NvbnN0IGE9bmV3IFNldChbby5FeHBhbmQsby5MYXJnZVRyYWRlTG9nb10pfSwyMzQzMShlLHQsbil7InVzZSBzdHJpY3QiO3ZhciBvLGE7bi5kKHQse0lGcmFtZUV2ZW50czooKT0+YX0pLGZ1bmN0aW9uKGUpe2xldCB0OyFmdW5jdGlvbihlKXtlLlNldFN5bWJvbD0ic2V0LXN5bWJvbCIsZS5TZXRJbnRlcnZhbD0ic2V0LWludGVydmFsIn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShvfHwobz17fSkpLGZ1bmN0aW9uKGUpe2xldCB0OyFmdW5jdGlvbihlKXtlLlN5bWJvbENsaWNrPSJ0di13aWRnZXQtc3ltYm9sLWNsaWNrIixlLldpZGdldExvYWQ9InR2LXdpZGdldC1sb2FkIixlLldpZGdldFJlYWR5PSJ0di13aWRnZXQtcmVhZHkiLGUuUmVzaXplSWZyYW1lPSJ0di13aWRnZXQtcmVzaXplLWlmcmFtZSIsZS5Ob0RhdGE9InR2LXdpZGdldC1uby1kYXRhIn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShhfHwoYT17fSkpfSw3MzIxMTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKGUsdCxuKXtjb25zdCBvPXtuYW1lOmUsZnJhbWVFbGVtZW50SWQ6dCxkYXRhOm59O3dpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UobywiKiIpfW4uZCh0LHtkaXNwYXRjaEV2ZW50VG9QYXJlbnQ6KCk9Pm99KX0sMTg1MjcxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3Q6KCk9Pm8udH0pO24oODI5MTgwKTt2YXIgbz1uKDc4MzI1NCl9LDg1MTQ1OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc1NwcmVhZDooKT0+ZCx0b2tlbml6ZTooKT0+Y30pO3ZhciBvLGE9big5MDEwMjIpLHI9big1NjkzOTgpOyFmdW5jdGlvbihlKXtlLlN5bWJvbD0ic3ltYm9sIixlLkluY29tcGxldGVTeW1ib2w9ImluY29tcGxldGVTeW1ib2wiLGUuTnVtYmVyPSJudW1iZXIiLGUuSW5jb21wbGV0ZU51bWJlcj0iaW5jb21wbGV0ZU51bWJlciIsZS5TZXBhcmF0b3JQcmVmaXg9InNlcGFyYXRvclByZWZpeCIsZS5PcGVuQnJhY2U9Im9wZW5CcmFjZSIsZS5DbG9zZUJyYWNlPSJjbG9zZUJyYWNlIixlLlBsdXM9InBsdXMiLGUuTWludXM9Im1pbnVzIixlLk11bHRpcGx5PSJtdWx0aXBseSIsZS5EaXZpZGU9ImRpdmlkZSIsZS5Qb3dlcj0icG93ZXIiLGUuV2hpdGVzcGFjZT0id2hpdGVzcGFjZSIsZS5VbnBhcnNlZD0idW5wYXJzZWQifShvfHwobz17fSkpO2NvbnN0IGw9Lyg/OlteLStcLypeXHNdJ3xbYS16QS1aMC05X1x1MDM3MC1cdTFGRkZfXHUyRTgwLVx1RkZGRl0pKD86W14tK1wvKl5cc10nfFthLXpBLVowLTlfXHUwMDIwXHUwMzcwLVx1MUZGRl9cdTJFODAtXHVGRkZGXyF8Oi4mXSkqfCcuKz8nLyxpPShlPSgwLHIuaXNGZWF0dXJlRW5hYmxlZCkoImFsbG93X3RyYWlsaW5nX3doaXRlc3BhY2VfaW5fbnVtYmVyX3Rva2VuIikpPT4oewpudW1iZXI6ZT8vXGQrKD86XC5cZCp8KD8hW2EtekEtWjAtOV8hOi4mXSkpKD86XHMqKD89XHMqJCkpP3xcLlxkKyg/OlxzKig/PVxzKiQpKT8vOi9cZCsoPzpcLlxkKnwoPyFbYS16QS1aMC05XyE6LiZdKSl8XC5cZCsvLGluY29tcGxldGVOdW1iZXI6L1wuLyxzeW1ib2w6bCxpbmNvbXBsZXRlU3ltYm9sOi8nW14nXSovLHNlcGFyYXRvclByZWZpeDphLlNFUEFSQVRPUl9QUkVGSVgsb3BlbkJyYWNlOiIoIixjbG9zZUJyYWNlOiIpIixwbHVzOiIrIixtaW51czoiLSIsbXVsdGlwbHk6IioiLGRpdmlkZToiLyIscG93ZXI6Il4iLHdoaXRlc3BhY2U6L1tcMC1ceDIwXHNdKy8sdW5wYXJzZWQ6bnVsbH0pO2Z1bmN0aW9uIGMoZSx0PWkoKSl7aWYoIWUpcmV0dXJuW107Y29uc3Qgbj1bXSxvPU9iamVjdC5rZXlzKHQpO2xldCBhO2NvbnN0IHI9KChlPWkoKSk9Pm5ldyBSZWdFeHAoT2JqZWN0LnZhbHVlcyhlKS5tYXAoKGU9PntyZXR1cm4gbnVsbD09PWU/IiI6YCgkeyJzdHJpbmciPT10eXBlb2YgZT8odD1lLHQucmVwbGFjZSgvW1xeJCgpW1xde30qKz98XFxdL2csIlxcJCYiKSk6ZS5zb3VyY2V9KWA7dmFyIHR9KSkuZmlsdGVyKChlPT4iIiE9PWUpKS5jb25jYXQoIi4iKS5qb2luKCJ8IiksImciKSkodCk7Zm9yKDthPXIuZXhlYyhlKTspe2xldCBlPSExO2ZvcihsZXQgdD1vLmxlbmd0aDt0LS07KWlmKGFbdCsxXSl7b1t0XSYmbi5wdXNoKHt2YWx1ZTphW3QrMV0sdHlwZTpvW3RdLHByZWNlZGVuY2U6MCxvZmZzZXQ6YS5pbmRleH0pLGU9ITA7YnJlYWt9ZXx8bi5wdXNoKHt2YWx1ZTphWzBdLHR5cGU6InVucGFyc2VkIixwcmVjZWRlbmNlOjAsb2Zmc2V0OmEuaW5kZXh9KX1yZXR1cm4gbn1mdW5jdGlvbiBzKGUpe3JldHVybiJwbHVzIj09PWV8fCJtaW51cyI9PT1lfHwibXVsdGlwbHkiPT09ZXx8ImRpdmlkZSI9PT1lfHwicG93ZXIiPT09ZX1mdW5jdGlvbiBkKGUpe3JldHVybiBlLmxlbmd0aD4xJiZlLnNvbWUoKGU9PnMoZS50eXBlKSkpfX0sODExNDk5KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZS5yZXBsYWNlKCJ7e3Nob3J0TmFtZX19Iiwie3R2c3ltYm9sfSIpLnJlcGxhY2UoInt7cHJvTmFtZX19Iiwie3R2cHJvc3ltYm9sfSIpLnJlcGxhY2UoInt7c3ltYm9sfX0iLCJ7dHZzeW1ib2x9IikucmVwbGFjZSgie3tleGNoYW5nZX19Iiwie3R2ZXhjaGFuZ2V9Iil9bi5kKHQse3JlcGxhY2VPbGRQbGFjZWhvbGRlcnM6KCk9Pm99KX0sOTMxMTk4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2hhbmRsZVRWTGlua3NDbGljazooKT0+bCxzZW5kV2lkZ2V0VHJhY2tEYXRhOigpPT5pfSk7dmFyIG89big0MDAxODEpLGE9big2MDE1ODcpLHI9big3MzA2NDUpO2Z1bmN0aW9uIGwoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKGU9Pntjb25zdCB0PWUudGFyZ2V0LmNsb3Nlc3QoIjpsaW5rIik7dD8uaG9zdG5hbWUmJigwLHIuaXNJbnRlcm5hbEhvc3QpKHQuaG9zdG5hbWUsInRyYWRpbmd2aWV3LmNvbSIpJiZpKHQuaHJlZix0LmRhdGFzZXQudGFyZ2V0VHlwZXx8bnVsbCl9KSl9YXN5bmMgZnVuY3Rpb24gaShlLHQpe2NvbnN0IG49ZnVuY3Rpb24oKXtjb25zdCBlPXdpbmRvdy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoT2JqZWN0LmtleXMoZSkubGVuZ3RoPjApcmV0dXJuKDAsYS5maWx0ZXJVdG1JbmZvKShlKTtjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uaHJlZik7cmV0dXJue3V0bV9jYW1wYWlnbjp0LmdldCgidXRtX2NhbXBhaWduIil8fHZvaWQgMCx1dG1fc291cmNlOnQuZ2V0KCJ1dG1fc291cmNlIil8fHZvaWQgMH19KCk7KGF3YWl0KDAsby5nZXRUcmFja2VyKSgpKT8udHJhY2tTZWxmRGVzYygiaWdsdTpjb20udHJhZGluZ3ZpZXcvd2lkZ2V0X3R2X2xpbmtfY2xpY2svanNvbnNjaGVtYS8xLTAtMCIse3dpZGdldF90eXBlOnMobiksZG9tYWluOmMobiksbGluazplLHRhcmdldF90eXBlOnR9KX1mdW5jdGlvbiBjKGUpe2NvbnN0IHQ9bG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zPy5bMF18fGRvY3VtZW50LnJlZmVycmVyO3JldHVybiBlLnV0bV9zb3VyY2V8fGZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gbmV3IFVSTChlKS5ob3N0fWNhdGNoKGUpe3JldHVybiIifX0odCl9ZnVuY3Rpb24gcyhlKXtpZihlLnV0bV9jYW1wYWlnbilyZXR1cm4gZS51dG1fY2FtcGFpZ247Y29uc3QgdD1sb2NhdGlvbi5wYXRobmFtZTtyZXR1cm4gdC5pbmNsdWRlcygiZW1iZWQtd2lkZ2V0Iik/dC5zcGxpdCgiLyIpWzJdOnR9fSw5MDIxMDAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZXh0cmFjdFdpZGdldFNldHRpbmdzOigpPT5hfSk7Y29uc3Qgbz17d2hpdGVsYWJlbDohMCxwZXJtaXNzaW9uT3ZlcnJpZGVzOiEwLGxpbmtDYXB0dXJpbmdBbGxvd2VkOiEwLHN5bWJvbF9zZWFyY2hfZGVmYXVsdF9leGNoYW5nZTohMCxzeW1ib2xfc2VhcmNoX2FsbG93ZWRfZXhjaGFuZ2VzOiEwfTtmdW5jdGlvbiBhKGUsdD1bXSxuKXtyZXR1cm4gZnVuY3Rpb24oZSx0LG4sYT1bXSxyKXtjb25zdCBsPW4uc2xpY2UoMSksaT1kZWNvZGVVUklDb21wb25lbnQobCk7bGV0IGM9e307dHJ5eyIiIT09aSYmKGM9SlNPTi5wYXJzZShpKSx2b2lkIDAhPT1yJiZyKGUsYyksT2JqZWN0LmtleXMoYykuZm9yRWFjaCgoZT0+eyhvW2VdfHxhLmluY2x1ZGVzKGUpKSYmZGVsZXRlIGNbZV19KSkpfWNhdGNoKGUpe2M9e30sY29uc29sZS53YXJuKCJIYXNoIHBhcmFtcyBwYXJzaW5nIGVycm9yISBIYXNoIHBhcmFtcyBpZ25vcmVkLiIpfWNvbnN0IHM9dC5zbGljZSgxKSxkPXQuaW5jbHVkZXMoIiUiKT9kZWNvZGVVUklDb21wb25lbnQocyk6dCx1PW5ldyBVUkxTZWFyY2hQYXJhbXMoZCk7bGV0IG09e307dHJ5e3UuZm9yRWFjaCgoKGUsdCk9PnthLmluY2x1ZGVzKHQpfHwobVt0XT1lKX0pKSx2b2lkIDAhPT1yJiZyKGUsbSl9Y2F0Y2goZSl7bT17fSxjb25zb2xlLndhcm4oIlNlYXJjaCBxdWVyeSBwYXJhbXMgcGFyc2luZyBlcnJvciEgU2VhcmNoIHF1ZXJ5IHBhcmFtcyBpZ25vcmVkLiIpfXJldHVybiBPYmplY3QuYXNzaWduKHt9LGUsYyxtKQp9KGUsbG9jYXRpb24uc2VhcmNoLGxvY2F0aW9uLmhhc2gsdCxuKX19LDQwMzM3MChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHttYWtlV2lkZ2V0U3ltYm9sTGluazooKT0+bH0pO3ZhciBvPW4oODExNDk5KSxhPW4oOTExMzI3KSxyPW4oODUxNDU4KTtmdW5jdGlvbiBsKGUpe2NvbnN0e2N1c3RvbVVybDp0LHV0bUluZm86bixwYXRoOmwsdHlwZXNwZWNzOml9PWU7bGV0IGMscyxkPWUuc3ltYm9sO2NvbnN0IHU9KDAsci50b2tlbml6ZSkoZCk7cmV0dXJuKDAsci5pc1NwcmVhZCkodSkmJihkPXUuZmluZCgoZT0+InN5bWJvbCI9PT1lLnR5cGUpKT8udmFsdWV8fGQpLGQuaW5jbHVkZXMoIjoiKT9bcyxjXT1kLnNwbGl0KCI6Iik6Yz1kLHQ/KDAsYS5tYWtlVGVtcGxhdGVTeW1ib2xVcmwpKCgwLG8ucmVwbGFjZU9sZFBsYWNlaG9sZGVycykodCkse3Byb05hbWU6ZH0pOigwLGEubWFrZVN5bWJvbFBhZ2VVcmwpKHtzaG9ydE5hbWU6YyxleGNoYW5nZTpzLHR5cGVzcGVjczppfSxuLHZvaWQgMCxsKX19LDgxNzM1MChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtkZWZhdWx0OigpPT5yfSk7dmFyIG89bigxNzg0OTcpLGE9bigzNjA2MjApO2NvbnN0IHI9ZnVuY3Rpb24oZSl7cmV0dXJuITA9PT1lfHwhMT09PWV8fCgwLGEuZGVmYXVsdCkoZSkmJiJbb2JqZWN0IEJvb2xlYW5dIj09KDAsby5kZWZhdWx0KShlKX19LDIwNjY3MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtkZWZhdWx0OigpPT5yfSk7dmFyIG89bigxNzg0OTcpLGE9bigzNjA2MjApO2NvbnN0IHI9ZnVuY3Rpb24oZSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlfHwoMCxhLmRlZmF1bHQpKGUpJiYiW29iamVjdCBOdW1iZXJdIj09KDAsby5kZWZhdWx0KShlKX19LDMwNDIyMShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtkZWZhdWx0OigpPT5sfSk7dmFyIG89bigxNzg0OTcpLGE9bigyOTU2MzUpLHI9bigzNjA2MjApO2NvbnN0IGw9ZnVuY3Rpb24oZSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlfHwhKDAsYS5kZWZhdWx0KShlKSYmKDAsci5kZWZhdWx0KShlKSYmIltvYmplY3QgU3RyaW5nXSI9PSgwLG8uZGVmYXVsdCkoZSl9fX1dKTs="}},"time_used":4,"timings":{"blocked":2,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/pay-ico3.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.982Z","timestamp":1785159267982,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/pay-ico3.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"bec-66136805-75c581014308e867;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3052\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3052,"size_decoded":3377,"mime_type":"image/png","magic":"PNG image data, 162 x 41, 8-bit/color RGBA, non-interlaced","md5":"a927db7a4a435ec73f8013c66a799944","sha1":"6affee94793b7c486fdfd2c034c7a97047d3dba6","sha256":"1bd6add548b21a7dc2ceb11081a7af0b949fe6992376c0d17da53eea91b65ce3","sha512":"fcb834230e187d109e0cad0b31bed78d524169df67c036b47ff5c433d3f68d4c3eaaf1b60f15e60cbec6fbc6557c96a41449c8685dfa97ccaa7318812ffeace4","ssdeep":"","tlshash":"e3515c12fa20c4d2c5e2c2e08af124254a1fed87c5689b76a68ce014fcf82b74c601ef","first_seen":"2026-03-30T05:38:35.910345Z","last_seen":"2026-07-27T13:35:41.715904Z","times_seen":4,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAKIAAAApCAYAAAC2hfIAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QkUyQjcxNEIxQjhGMTFFQ0I0OTRGMjEyMEVFOEFDNEMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QkUyQjcxNEMxQjhGMTFFQ0I0OTRGMjEyMEVFOEFDNEMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCRTJCNzE0OTFCOEYxMUVDQjQ5NEYyMTIwRUU4QUM0QyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCRTJCNzE0QTFCOEYxMUVDQjQ5NEYyMTIwRUU4QUM0QyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PklaX4oAAAhgSURBVHja7F1rbBRV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"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":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.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.341Z","timestamp":1785159268341,"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://walmartfundholdings.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: 242843\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-07-30T06:23:01.39858Z","times_seen":544402,"resource_available":false,"data":"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"}},"time_used":73,"timings":{"blocked":16,"dns":0,"connect":0,"send":0,"wait":31,"receive":26,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/translate_static/img/te_bk.gif","fqdn":"translate.googleapis.com","domain":"translate.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":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.889Z","timestamp":1785159269889,"http_version":"HTTP/3","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 /translate_static/img/te_bk.gif HTTP/1.1\r\nHost: translate.googleapis.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 848\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 10:11:17 GMT\r\nexpires: Fri, 23 Jul 2027 10:11:17 GMT\r\ncache-control: public, max-age=31536000\r\nage: 357792\r\nlast-modified: Sun, 25 Jun 2023 02:58:00 GMT\r\ncontent-type: image/gif\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":848,"size_decoded":1507,"mime_type":"image/gif","magic":"GIF image data, version 89a, 1 x 59","md5":"daf9b48977041ac85a62dc9b7c16b38d","sha1":"049dcb061470572d06fd83b287ebd1d96e6bb870","sha256":"cb1fd0e051209c32622e91cdeda967e50d80a184b185ac6a656a807986e8eb75","sha512":"99f5f27990b6b5559c751a92c04037f5d42e848a966893484af66d3f66828c29a2dddc8788d7dd4cd835e8ab6d834e74fb3eaa4e2cd72d55b2813d7aab990af2","ssdeep":"","tlshash":"1c018c0cc8700a19e3422fb0ca5b6e0429675b465d88b20fb6aa22c27d04ba48049b1c","first_seen":"2023-04-05T23:29:53Z","last_seen":"2026-07-30T06:06:45.042269Z","times_seen":10684,"resource_available":false,"data":"R0lGODlhAQA7APcAANfX19/f3+Hh4eLi4uTk5Obm5ujo6Orq6uvr6+3t7e7u7uTv++bw++fw/Ojx/Ory/O30/O71/fHx8fP4/fT5/fb6/vj7/vr8/vz9//7+/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAQA7AAAINQAzCBxIUCCGCwgtVFhIYcKECA8jQHgw8UEDBg4aLGCwIIOEjyAlKEiA4ICBAgQGCAgQAEBAADs="}},"time_used":16,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/59941.af22f3ab83cdfcc3935a.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.925Z","timestamp":1785159269925,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/59941.af22f3ab83cdfcc3935a.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b70-2da\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:20 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:24\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fb336688d08568b52548ad6ba03c207f\r\ncdn-cache: HIT\r\ncontent-encoding: br\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"]}],"data":{"size":730,"size_decoded":1064,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (730), with no line terminators","md5":"d829b77313e592f8d1913e78559754cd","sha1":"4bb78c4325498d327399604dd0dd90aa01fc6c87","sha256":"fdce8cb0a541548e40c8119d9c9bfcf3a9759dab795202f5302b4806a5938d50","sha512":"b1fa8c3f6815776f559376b98c708080898a95bd9128718fed3bb876db210241ae2be25002f53de0843ab5eb05c194a2f2f7f4a0b1000577797bf91ad7dbce5b","ssdeep":"","tlshash":"eb0128dea3465539e633dd73035783cb3004f6a28d389919fa44e92544cf7f04424d0e","first_seen":"2025-07-09T16:57:52.264591Z","last_seen":"2026-07-30T06:08:06.289054Z","times_seen":10947,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtVDJTTzp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1UMlNPOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtVDJTTzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLV8xLVQyU086dmFyKC0tY29sb3Itd2hpdGUpfS5sYWJlbC1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLV8wLVQyU08pfS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3Zne2hlaWdodDoxMHB4O21hcmdpbjo3cHggMDt3aWR0aDoxN3B4fS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3ZnIHBhdGh7ZmlsbDp2YXIoLS1fMS1UMlNPKX0ubGFiZWwtZTljNmR5Y1YgLnN2Z1RleHRXcmFwLWU5YzZkeWNWIHN2Z3ttYXJnaW46NnB4IDB9LmxhYmVsLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmcgcGF0aHtmaWxsOnZhcigtLV8xLVQyU08pfS5sYWJlbC1lOWM2ZHljVi5sYXJnZS1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSl9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5sb2dvV3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjExcHg7bWFyZ2luOjExcHggMCAxMHB4O3dpZHRoOjIwcHh9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjE0cHg7bWFyZ2luOjEwcHggMDt3aWR0aDo3N3B4fQ=="}},"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":"s2.coinmarketcap.com/static/img/coins/64x64/7278.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.661Z","timestamp":1785159268661,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/7278.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 832\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 09 Jul 2024 07:55:55 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 04:17:16 GMT\r\ncache-control: public, max-age=86400\r\netag: \"ff1cba08edcc514d5676fdfe1fc32ccc\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 37516\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: n5CUKHrA5DZYxcPw30zvhaM8Jm3x6OcgFslt2SUf2lRSVEl6_1QnkQ==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":832,"size_decoded":1403,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"ff1cba08edcc514d5676fdfe1fc32ccc","sha1":"ac95fa2487d2e18d3f2bd895b4a8be23399fd463","sha256":"5e7048442d6bae4b57dafd847ae3e424a8eb7ea4f2c3b0acc325339163f943b0","sha512":"f6ce372da2ac2a1692ec07cbe2f3c25ffd9399d0bf006015526a62d8e13b6d8e954de23201fb80bbfef8a688933c88ac360e108d8b35d66be9c517ee8c31dac6","ssdeep":"","tlshash":"5a01cad40ee95188ae5b4c13350141328b6328f952f7be6decbdf41d28c1f00360c791","first_seen":"2024-11-30T20:42:41.062812Z","last_seen":"2026-07-29T06:14:00.339199Z","times_seen":1162,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADB0lEQVR4Xu2aPXLUQBBGfQSOwFE4go/AjWRLWwVFshC4HMEBIIIIIjuhOABEEFAO1tJisPHYrJh989fSzox+vK/qJd6vZ7rHrrWk0sFBJqpqfVgd1zciq/oJ6yfHomwKY7CeLsp6yfVHC5uPLfcbBepPlo2mtizrp+wjO8vi5hEby+2zon7MvrLARoaW/SWFm49F9hkdbjhW2XcUuElXu/Dt6x+jvqvsfye4uNRYcF2pnKMXXFRiKriPRM7TCS4WMhfcNyTnEsOFXP74fs0ek8MefHIuEVzE5ZCcnqyNflxyPi8sdtkHrqH7atkwLoLruOScVtSlJQttdoG1UrvAWpvF7aU75zVgkU0prOurhE8fr4w6m5x3C3WHxQIqgTUxlMAaq4XnYYsRthiC+ZienoS/I1hjk3O3MEhDMJ/KEMxTzn0HQzQE8ykN/bdg3ibn3+kAmM1hCObp1vDqoSMD0s0uLq6NfC59MGt6edQegPlhzI3S6oNZKjqAd29/cd0WZnVdMKd7fnbF+B3MSfZRMEtFB+CDWUmNgnll6IaKecl+L543Rlb3fvjAI20X6puY2VCNTowaSS2zWxarQ+9v37c4c6E80WvevF7zYyvca6O6DHbBLPUegHo254LZjVJ2raEumKPeA/DBrKRGR6/58N79RavDvST7Mkd7HUDozktCjBpJPXO01wEwR0MwL6nxfen66r98/m1kdZMcgK9W3dExG6pRMEtdhK5UvQcQww3nZ/7fhK2mafzNxzD5AYzd/QHwBw/N20vhlfzlpbm5eT5ofPBAFN0Nztn9Afw/gMsjfjh3F+V62R7A/SGYoTm7Nfz+AP7B0Fzl3C0MzlXO3aIuDBiem2UReMWWBXOT8xoUxc/B3/9NZSF9r5iFc5FzemHx1OV8IrjIVOVcYrjQVOVcneBiU5Pz9IKLTkXOsRNcfOyy/yhwk7HKvqPDDcci+0wKNx9a9pcFdWnJRnIrev83NeoOi40l1/fK65AYjUaW+42W6nj1ks33V3unb6p0etiiXl7KxF+YoCfQVyFWbgAAAABJRU5ErkJggg=="}},"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":"walmartfundholdings.com/images/fav.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.315Z","timestamp":1785159269315,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/fav.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:29 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"61d5-66136805-926433e62463a694;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 25045\r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":25045,"size_decoded":25372,"mime_type":"image/png","magic":"PNG image data, 767 x 474, 8-bit/color RGBA, non-interlaced","md5":"978c7f19b1471b4ab337add6544ab490","sha1":"ec086411b7f3fa77b50bf358490c4a574fa4d27e","sha256":"56392b55e67b4d1d6284b058e8157972f00004f2083950b078302920c77316dc","sha512":"4e6f0fbd307319e3184a47f14436441b702f0cfd3ceef3749d2feb267b8e7976cbb787bae8c99bddda602484fe2684e5e95aa346a4c01c227a8ef24da2eb2f1a","ssdeep":"768:p6r/BVEfFGN6aTN/QAB8PBf+V3eVn4O/rr:p6r56fWTlQ30VAn4O3","tlshash":"beb2e0deb8b2d4132aed8cce2c53117b4f3a930c9f069403b5dc8d648595cf92a88e53","first_seen":"2026-07-27T07:08:39.254457Z","last_seen":"2026-07-27T13:35:41.757122Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAv8AAAHaCAYAAACXciY6AAAACXBIWXMAAHsIAAB7CAF4JB2hAAAF8WlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgNzkuMTY0NDg4LCAyMDIwLzA3LzEwLTIyOjA2OjUzICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjIuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIyLTEwLTA5VDIzOjA4OjI3KzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0xMC0wOVQyMzowODo0MyswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMi0xMC0wOVQyMzowODo0MyswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyOWZlNjk1OC1mMDdlLTQ1NDAtODYyNi1lYjFiMWEzYmNkNzgiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5YjFjOTNiNi0zMGIwLWEyNDktOTk3Ny05ZjJkYjNjNGEyNjgiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo2NDVkZTA5OC1mOTk0LWY1NGQtOWI2Yy02MzVhZmYwZGE2NmEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjY0NWRlMDk4LWY5OTQtZjU0ZC05YjZjLTYzNWFmZjBkYTY2YSIgc3RFdnQ6d2hlbj0iMjAyMi0xMC0wOVQyMzowODoyNyswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIyLjAgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoyOWZlNjk1OC1mMDdlLTQ1NDAtODYyNi1lYjFiMWEzYmNkNzgiIHN0RXZ0OndoZW49IjIwMjItMTAtMDlUMjM6MDg6NDMrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMi4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz518D57AABbiklEQVR4nO3deZhcZZn+8fs9Sy29JSQ0bQsaDVExjpKJjOOGQUdnHHXGMaKO+w/3cUcFQVHM0BAg7Pu+yxobUFFxY2kH9xBZQpAQEhIITdPZequqc877/P6wUYhZujtV5zlvnftzXVyXQrrqq0Dn6afOeY956KGHivvuu+/tAALosON/5Jnq/wcicobneTdovT/R0xYtWuQddNBBXmdnp9fa2uoVCgWvWCwGvu97xhjP8zzPGPPXPwA86z8//d+395+399939ed399dO9A8R8QCY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"}},"time_used":26,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":26,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/CA.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.438Z","timestamp":1785159269438,"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 /country/CA.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"bc781af019f19646a76bdc030890ac78\"\r\nlast-modified: Fri, 22 Dec 2023 12:52:26 GMT\r\ncdn-cachedat: 08/09/2025 14:28:52\r\nx-amz-id-2: yvH26AHRqsmTVq5uSjZEBE+tyOFZQihVKDA47V8uDKz5TybGkJno+AZrMO2li1N/1PRI1rWs/PI=\r\nx-amz-request-id: BMDFJYSH1DTTMY4C\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: bc781af019f19646a76bdc030890ac78\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 60438a465e2867238f328db8bf42576d\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":373,"size_decoded":1157,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (373), with no line terminators","md5":"bc781af019f19646a76bdc030890ac78","sha1":"fbe1a3708c0378b110f31d4aee3f88b60379e265","sha256":"4fb8085bfd098cb58f6c39c7c724b34d4354b8efb5135ecf762a6be5ab6677a2","sha512":"a996f0ee3952c8058f7cd4c666d9cb02bc5380bbbf7173028f7557682a829f05344373bd985f7e9ff255432394eb2da60958c6f4085f2b17c9cea2de1829f45b","ssdeep":"","tlshash":"d9e0f136a138e418de41a31595b4084e701eb8d7f18c138bb10021102a032f72b88a90","first_seen":"2023-12-22T15:34:58Z","last_seen":"2026-07-30T06:08:06.560797Z","times_seen":2638,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Im00IDB2MThoMTBWMHoiIGZpbGw9IiNmOGY5ZmQiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxwYXRoIGQ9Im0wIDB2MThoNFYwem0xNCAwdjE4aDRWMHoiIGZpbGw9IiNlZjUzNTAiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxwYXRoIGQ9Im0xMSAxMGwyLTEtMS0uNXYtMWwtMiAxTDExIDdoLTFMOSA1IDggN0g3bDEgMS41LTItMXYxTDUgOWwyIDEtLjUgMWgydjFoMXYtMWgybC0uNS0xeiIgZmlsbD0iI2VmNTM1MCIvPjwvc3ZnPg=="}},"time_used":71,"timings":{"blocked":38,"dns":1,"connect":1,"send":0,"wait":4,"receive":-1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1975.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.619Z","timestamp":1785159268619,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1975.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 686\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 02 Sep 2025 10:45:46 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 06:00:00 GMT\r\ncache-control: public, max-age=86400\r\netag: \"c0a4d73d0d9cd1d396e0c5e41d1b91b4\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 27269\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: Nb-S3MazwnREljBUGUQGe0xajrLfy1Bk2RtS6QoYr2FTC4Xlhitlzw==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":686,"size_decoded":1257,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"c0a4d73d0d9cd1d396e0c5e41d1b91b4","sha1":"aab369900cddbdb59108c4d1f6d6c1f249d4a2f6","sha256":"8bbcb500ccd5e389ab9d84bf228d0813da46ade54ce6592cd9e8cb86635cfe9d","sha512":"9c4fe111c72a0a7b8ec61c8d4341db40dd9ff8fb32416144c80170316d9a784458447ef3172b0391e326acb4066203c9f3cb85cb436295b2c26c57c6f141a51a","ssdeep":"","tlshash":"9101440748af7bc09f8b0713a31af5a024d333144ea5974a606acd3a3b74a24424eb36","first_seen":"2025-08-31T20:43:13.109147Z","last_seen":"2026-07-29T06:14:00.335391Z","times_seen":1427,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAACdUlEQVR4Xt3bPVIbURBFYTIrZAleCpFR6B3ZO2MpLMEZE2IpkEv+WlTPT0/PSKfqJDC3+74iGEE9np425PA6fJ716w/Pt9ePP5fDX+tzD4mHVp9/GDxopvm7xYNN1Xl3w6n8m4dZ4Lvzd8vzz8/nGwco0V27w8Jr6d7NsWCX9mjn8GP4Zal2Tx3s1UIosrH2Ww0X7037luGivWv/2Rxq3+fdLvv8cGNgncfh5d+e4/A9fL/QqyONwwHVuu+Cz1XrvpsYqtRdX2GuUncFDFTojrE4p0J3BAws8jj8dv5UzjPC3AU6P2Bgrs5divPn6tyAgak6rxr3TdV5AQNjdc7auH+szgkYSL16n3cz5/ODMwIGMs13Y59M8wEDmea7sU+m+YCBTPPd2CfTfMBApvlu7JNpPmAg03w39sk0HzCQab4b+2SaDxjINN+NfTLNBwxkmu/GPpnmAwYyzXdjn0zzAQOZ5ruxT6b5gIFM893YJ9N8wECm+W7sk2k+YCDTfDf2yTQfMJBpvhv7ZJoPGMg03419Ms0HDGSa78Y+meYDBjLNd2OfTPMBA5nmu7FPpvmAgdRt/yT2EvokOiNgYKzOWRv3j9U5AQNTdV417puq8wIG5urcpTh/rs4NGFhkwf2d6ntIzg8YqNAdY3FOhe4IGKjUXV9hrlJ33cRQte678NU1+irdl+KAUv+/IjP5fT7FqyNN5zTg3YF343F48zyzCcN3rv3LcNHetO9quHhr7ddC9f2dWRbcQ1pMKNWkPTbHgmvp3t1h4SrP/47jrt1yqPz8UPk+7yYcZqLOu1s8WKb5h8GDqs8/JB767Pk3QZ97ePbwU/8LaXkIU/qPRM8AAAAASUVORK5CYII="}},"time_used":32,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":32,"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.152.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/6jePbqXJhe8","date":"2026-07-27T13:34:28.829Z","timestamp":1785159268829,"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/6jePbqXJhe8\r\nCookie: __Secure-YNID=20.YT=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; YSC=KVevwPvGbos; __Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; VISITOR_INFO1_LIVE=mydA6aM0K4I; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%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: Wed, 22 Jul 2026 07:32:16 GMT\r\nexpires: Thu, 22 Jul 2027 07:32:16 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: 453732\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":49,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"receive":31,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/manifest.json","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:31.739Z","timestamp":1785159271739,"http_version":"HTTP/2","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":"1857279285.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 14:34:45 GMT","end":"Wed, 02 Sep 2026 14:34:44 GMT"},"fingerprint":{"sha1":"92:5D:A0:17:13:91:72:7B:B6:8C:6A:7D:A9:55:7F:C8:A9:47:11:99","sha256":"0E:FC:E3:4D:AD:32:B2:11:05:DC:E3:CD:CC:9E:10:DC:C5:2D:9E:1C:D7:C1:9C:00:92:15:43:C5:B7:0B:3A:D6"}}},"request":{"raw":"GET /manifest.json HTTP/1.1\r\nHost: widget-v3.smartsuppcdn.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\nContent-Type: text/plain\r\nOrigin: https://walmartfundholdings.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://walmartfundholdings.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: 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 13:34:35 GMT\r\ncontent-type: application/json\r\naccess-control-allow-origin: *\r\ncache-control: max-age=300, public, s-maxage=60\r\netag: W/\"6a670743-891\"\r\nexpires: Mon, 27 Jul 2026 07:32:27 GMT\r\nlast-modified: Mon, 27 Jul 2026 07:22:43 GMT\r\nx-77-nzt: k3NtJ8guK2Y65MKLkhhtRGdk8JXuyNyaU0fFWU+aR6e/+9X/dgNnfq0XK30uWbLv3LCGJyo\r\nx-77-nzt-ray: fdb54123451bfdfe6b5e676a6f15c602\r\nx-77-cache: HIT\r\nx-77-age: 12\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":2193,"size_decoded":1029,"mime_type":"application/json","magic":"JSON text data","md5":"ac973fd16446a8bd414c2cfdbfbdd6ba","sha1":"6d802991373d8180ad7c4197d08c2e8d8e21d581","sha256":"8c973dd5712d4b0125d2be8cc65e3590298e054fb63560738ecf0f64b8e43277","sha512":"9748bc4696f6ec983d5dbd492e36472b1e083d2e61c3a60133b102a8370f7603b54bfe88360c24035fe882d5c30f0a52eb253ae2d0d460d384d72f9f3b188d79","ssdeep":"","tlshash":"c3417893c0f80d531b9c6627b8855a415d50c3c3a8993e0e72ad8a7f2f4ceb910e67bc","first_seen":"2026-07-27T07:28:16.144753Z","last_seen":"2026-07-29T06:17:50.081451Z","times_seen":1033,"resource_available":false,"data":"ewogICJfV2lkZ2V0TWVzc2VuZ2VySW5wdXQtREhyNXVId2QuanMiOiB7CiAgICAiZmlsZSI6ICJhc3NldHMvV2lkZ2V0TWVzc2VuZ2VySW5wdXQtREhyNXVId2QuanMiLAogICAgIm5hbWUiOiAiV2lkZ2V0TWVzc2VuZ2VySW5wdXQiLAogICAgImltcG9ydHMiOiBbCiAgICAgICJfc2hhcmVkLWtiMXlxSGFBLmpzIgogICAgXSwKICAgICJkeW5hbWljSW1wb3J0cyI6IFsKICAgICAgIm5vZGVfbW9kdWxlcy8ucG5wbS9lbW9qaS1tYXJ0QDUuNi4wL25vZGVfbW9kdWxlcy9lbW9qaS1tYXJ0L2Rpc3QvbW9kdWxlLmpzIgogICAgXQogIH0sCiAgIl9zaGFyZWQta2IxeXFIYUEuanMiOiB7CiAgICAiZmlsZSI6ICJhc3NldHMvc2hhcmVkLWtiMXlxSGFBLmpzIiwKICAgICJuYW1lIjogIkljb25CdXR0b24iLAogICAgImR5bmFtaWNJbXBvcnRzIjogWwogICAgICAibm9kZV9tb2R1bGVzLy5wbnBtL0B0aHVtYm1hcmtqcyt0aHVtYm1hcmtqc0AxLjkuMC9ub2RlX21vZHVsZXMvQHRodW1ibWFya2pzL3RodW1ibWFya2pzL2Rpc3QvdGh1bWJtYXJrLmVzbS5qcyIKICAgIF0KICB9LAogICJub2RlX21vZHVsZXMvLnBucG0vQHRodW1ibWFya2pzK3RodW1ibWFya2pzQDEuOS4wL25vZGVfbW9kdWxlcy9AdGh1bWJtYXJranMvdGh1bWJtYXJranMvZGlzdC90aHVtYm1hcmsuZXNtLmpzIjogewogICAgImZpbGUiOiAiYXNzZXRzL3RodW1ibWFyay5lc20tQ1A0Q1UweUwuanMiLAogICAgIm5hbWUiOiAidGh1bWJtYXJrLmVzbSIsCiAgICAic3JjIjogIm5vZGVfbW9kdWxlcy8ucG5wbS9AdGh1bWJtYXJranMrdGh1bWJtYXJranNAMS45LjAvbm9kZV9tb2R1bGVzL0B0aHVtYm1hcmtqcy90aHVtYm1hcmtqcy9kaXN0L3RodW1ibWFyay5lc20uanMiLAogICAgImlzRHluYW1pY0VudHJ5IjogdHJ1ZQogIH0sCiAgIm5vZGVfbW9kdWxlcy8ucG5wbS9lbW9qaS1tYXJ0QDUuNi4wL25vZGVfbW9kdWxlcy9lbW9qaS1tYXJ0L2Rpc3QvbW9kdWxlLmpzIjogewogICAgImZpbGUiOiAiYXNzZXRzL21vZHVsZS1ERDVudlZEMy5qcyIsCiAgICAibmFtZSI6ICJtb2R1bGUiLAogICAgInNyYyI6ICJub2RlX21vZHVsZXMvLnBucG0vZW1vamktbWFydEA1LjYuMC9ub2RlX21vZHVsZXMvZW1vamktbWFydC9kaXN0L21vZHVsZS5qcyIsCiAgICAiaXNEeW5hbWljRW50cnkiOiB0cnVlCiAgfSwKICAic3JjL2ZyYW1lcy9tZXNzZW5nZXIvV2lkZ2V0TWVzc2VuZ2VyLnN2ZWx0ZSI6IHsKICAgICJmaWxlIjogImFzc2V0cy9XaWRnZXRNZXNzZW5nZXItRDFpVlkzTGouanMiLAogICAgIm5hbWUiOiAiV2lkZ2V0TWVzc2VuZ2VyIiwKICAgICJzcmMiOiAic3JjL2ZyYW1lcy9tZXNzZW5nZXIvV2lkZ2V0TWVzc2VuZ2VyLnN2ZWx0ZSIsCiAgICAiaXNEeW5hbWljRW50cnkiOiB0cnVlLAogICAgImltcG9ydHMiOiBbCiAgICAgICJfc2hhcmVkLWtiMXlxSGFBLmpzIiwKICAgICAgIl9XaWRnZXRNZXNzZW5nZXJJbnB1dC1ESHI1dUh3ZC5qcyIsCiAgICAgICJzcmMvbWFpbi50cyIKICAgIF0KICB9LAogICJzcmMvZnJhbWVzL3BvcHVwL1dpZGdldFBvcHVwLnN2ZWx0ZSI6IHsKICAgICJmaWxlIjogImFzc2V0cy9XaWRnZXRQb3B1cC1CQTFqY0hudS5qcyIsCiAgICAibmFtZSI6ICJXaWRnZXRQb3B1cCIsCiAgICAic3JjIjogInNyYy9mcmFtZXMvcG9wdXAvV2lkZ2V0UG9wdXAuc3ZlbHRlIiwKICAgICJpc0R5bmFtaWNFbnRyeSI6IHRydWUsCiAgICAiaW1wb3J0cyI6IFsKICAgICAgIl9zaGFyZWQta2IxeXFIYUEuanMiLAogICAgICAiX1dpZGdldE1lc3NlbmdlcklucHV0LURIcjV1SHdkLmpzIgogICAgXQogIH0sCiAgInNyYy9tYWluLnRzIjogewogICAgImZpbGUiOiAiYXNzZXRzL21haW4tQi1WSGMxSzQuanMiLAogICAgIm5hbWUiOiAibWFpbiIsCiAgICAic3JjIjogInNyYy9tYWluLnRzIiwKICAgICJpc0VudHJ5IjogdHJ1ZSwKICAgICJpbXBvcnRzIjogWwogICAgICAiX3NoYXJlZC1rYjF5cUhhQS5qcyIKICAgIF0sCiAgICAiZHluYW1pY0ltcG9ydHMiOiBbCiAgICAgICJzcmMvZnJhbWVzL21lc3Nlbmdlci9XaWRnZXRNZXNzZW5nZXIuc3ZlbHRlIiwKICAgICAgInNyYy9mcmFtZXMvcG9wdXAvV2lkZ2V0UG9wdXAuc3ZlbHRlIgogICAgXQogIH0sCiAgInN0eWxlLmNzcyI6IHsKICAgICJmaWxlIjogImFzc2V0cy9zdHlsZS1DbGlKd1VUUi5jc3MiLAogICAgInNyYyI6ICJzdHlsZS5jc3MiCiAgfQp9"}},"time_used":3311,"timings":{"blocked":-1,"dns":30,"connect":8,"send":0,"wait":8,"receive":0,"ssl":3265},"alerts":{"ids":null,"analyzer":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.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.444Z","timestamp":1785159268444,"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://walmartfundholdings.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: 383836\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-07-30T06:17:29.002258Z","times_seen":385239,"resource_available":false,"data":"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"}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/2.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.633Z","timestamp":1785159268633,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/2.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2456\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:33:54 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 04:37:49 GMT\r\ncache-control: max-age=86400\r\netag: \"bdaeb947a2eb31bae0a170559df9013c\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 32200\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: p-vMotxwViG38dYhyS7hpITcYS8KfPbobrqoIFwwRJ2PwpBCHh6Few==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":2456,"size_decoded":2982,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"bdaeb947a2eb31bae0a170559df9013c","sha1":"7fc8496c9bf51eea98dc9060262f87a792a24a43","sha256":"3225172adc122cc7f8f09fbcc94757061330651a485f17091f41726767f7ea3f","sha512":"710a1ac11f6fdb3915479bf6b9eccf34f4dedd8f30e6bed5275f52d1ec634a754b252e385eb9cd388a5a69c64aaf5818c13cb783090ae68a8696af067cb67341","ssdeep":"","tlshash":"9e512b90d3f3d98a7d930935f8b27a34cfda87da97098523ea834854e279442cd24943","first_seen":"2023-05-02T21:54:45Z","last_seen":"2026-07-29T06:14:00.441877Z","times_seen":19636,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAMAUExURUxpcQB/fzNcnDNcnAAA/zRcnT8/f1VVqjNdnDRdnAAAADRcnTNdnTNdnDNdm39/fzNdnjRdnTNmmTRdnTVjojNcmzVVlTNbmzVfoTNcnDZgojVgojVfoTRenzNmmThVqjNMkzdjpzVfoDRdnTRdni5cojRbnTNcnDNdnTNioTRdnTNcnThkqTNdnjRcnDNdnTVfoTVcnDNcnDNdnTRfoD1VVTVfoDNcnDRfoTVfoGqa/zVenzNcnDVfoDReoDRfnzNdnjRdnDRenzNdnTNcnDVenzNdnjRcnS5cizVgoTRXlTReoDVdnzJZmjZenTNenDRcnDVeoTRdnjRenjRdnTNcnjReoDNenjNmqjNepTRdnjRdnjFemzVfoDRdnTNbmzNcnTNdmzVcnDNbmzVfoDFYkzRenzNbmTlcojNdnDRdnDNdnTNcnDRdnTRdnDVenzVdnzVdnTRdnf///zdfnjdipfz9/idTl3mUvjVdnf7+/jZfnv39/jVenf7+/zdgnzhkqTJcnDpioDdipvz8/ebr8zdjpzVeniZSljVfoDVfoS5ZmitWmThkqP3+/iVRli1YmjRenjZenjJbnDdjqDZgo/7//yhUlzZhpDZgoilVmDlhnzNcndLb6TdjpjBamzZho9Pc6j1koSlUmGiHtvv8/S9ZmzFbnPn6/ChTlzRdnoCawjVgoe3x93iTvixXmTdfn4aexC1XmfX3+uPo8Vt8sCdSl/b4+/Dz+MDN4WGCs7HB2qq71vP2+StWmIefxeXr8/z9/TdipOfs9Pr7/HqVv8jT5U9yq5eszVd5rq2+2Elup0xwqeTq8oOcw0ZrpZWqzN3k70FnozFamzhgn3OQu6K10rTD28fS5Jywz1V3raO20tTd6ujs89rh7Yqixoykx+Hn8Ovv9URppNvi7sXR42+MuaS3087X56y913CNukFoo7nI3UVqpVZ4rl5/sYSdwyBNk7vJ3nuVv5Gnyo6lyTtjoCRRlWGAssvW5nKOu73K387Y5xtJkUdspk1xqc9xuHgAAABydFJOUwAC+/0B/QQD/P4B+vv7/AJK/gUrDvwXb0tx/vf5/AoJCv7YXGILee5HEL9f/i3+478ww99pA9nX0tsBbqjJpKZySOqLSl9maAvXHcjKHip3pqe84/lFiXcPEr/6Lr3gbdhfW8XTGssZFqmmp+fmieuLi+6BIMEAAAW4SURBVFjDjVd3XBNnGP5IDrIIUxEciAxFBfdGRRFbqXvW0b33uEug4cjA2CSEACFskL1BRQRx1NXWUeuotq4Ou/fee313lwu5y3eB5x9+JHnf+97ne+593wcAT8glEurPkNCNMRGrV0fEbFw1hPpfIpGDwUBORY8P2rRu/YacOjVEXc6G9es2BW2hcgwiBQz3C1+YojYYrYUyXymEb3Ch1WhQpywMktBfe4UPBiJnzCk35YiVUlkw7kSwTKoU55jK58yIApiPt3g/AJbOKi4RS2W4B2RScUlx9FL6RwLAZoKpU0wVQ31xAfgOrTDdeQd1TPTxAUgaoQ4QDKdTSI0jkuifotiLSs7rkOIDQFqYtzAKxaUEhC0wKPm1k2YtDdKNC6VheZhnBglYmVaj4D9Oa7O35FI4lu32qcKUdhs/gw8IizaK+PGkrbu6ur6+vrr+C87nImP0I1wesMDIFTUe8dqihqMEg91XdmrcM5iWjw7EOPc/3+ARj5ONTURzFsTJ9CMWPfcMhjXuepCAYQaFJ+H6gs+IHdTzs4ir7SrudwrD3f00BILQkaMQ2sOLPibyYbyOOPpRrZany1EjV4F5zgQz500zIu7f0XU2q5Q6QDrxSSXJ/zbAOE0uYQuIKfbHURW8z1Swg3iPRwEFpek+hgYMi5w+HKVf0nYaPpzm4K19Dk9VD58+GsPoG7g1bygiXtvyWg8sn4A0vFuEEnVA3i30EbCQ2SWoA6gy9kD66QreLtCjXqy62SGYHOZYrBajHqC3vMBQkEk0eXJIQfxSPAyXgMfHoCjUZFfdhLHUJe5uKNKiEviPWUNpYci4HJQGyMrDdDzxIvE1X0WsFnLGbYYcBAlUUPAmU0E60WnRo3uDWB0PEyxJUOLIS3iH5rCUaDufa0YnECU8BRNMUKO6kMN+ppnRAFFtNwt1J+MESMGTVhnyDrpZGb7St92MFAI+adfkOJCoKAxGcdh4iJGhjvj9t/Z9v6KP0KEIBfHIA2jfeP2gU4aXa89cPN2dsRd5D9YgMLEcKcOyTxkZ6ogLf0Ay9tuQUvKtmwgWITmsKjvCUABvASbpbRVgUT0MjPVMQOod+459QPcSGpmXL6IPABPcjkpgs9jP/Zyvo5+vO3Djl7O4TYsLJkCUsP/S323Oh2cR3/9Q1oWTuHAJfBJVZVeZSIaAtnO1VQ7hUQlJ5F+jvuA6Tb7zAJ/bHV4GpcyaChJFHCFBARzoudF5je0llwr0XhJQQtr8BOcI5pb/Ov+1//OXU4Y6AQG4SZn/Mmlb+2qLXN2w1+x11FMvE3yduQ1Jo7rS/idbwRGLtwqUCUuQDUVveZUdaV+WqbwkEKsXUyuhR0vbSfY6R9rBr1rNGg54LW08NZfm85oqafuOucZ04lCGNpsLLaepPgbD/Txq0BdcYrvh8a6G7RxU5XLa+mJqsmAh93AHi9le7RQi8eGJm8+748KJ442ua/UtoQeLx2gz555vI0oJAVzrF5ZrtGFxd7kP172WTudMhTRmcpCfnnnYNaRcwxXycK/7eCfLfoTDBIlM4uWqbI1rvMewW06gz/39aoSb1W72XeJjh+56hsqlwmlwNUasOKrGpqzmdCSyThI/9alcK04oDEQsWdRQFkTPN7VmxJIF5H7gUXbN07Q2ndrzHBJ7Tn3LDjmRYT5n7cfmRT7ELpqaygxBsENOZFrBXTTh3vrwXHbVJVWCcLhW3TD+yg+X7Vk1CnxQUNSkrUSt6w8uMIhkA4fLRIYFYWjDsGxtXuFgDEdyFNq8waIWDWh5AowjIgQsD6Ac3QCmK6DCNGWqoOlibF/s3OIKYds3N9ab7aPKkIO4pAfU0Hj6Syf1G89JUn9oPNVzZiwbwHgy1jckfO3T0Ovu6nBaX1nhLuiEU5LDQwa2vqz53hL+zNbJ26zllPkut26bvPXZ8MGabzf7n5gaGzF2bERsaqIX+/8/rDeCbjJNPnAAAAAASUVORK5CYII="}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/39070.55cbc7a1da963b3829b3.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.264Z","timestamp":1785159269264,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/39070.55cbc7a1da963b3829b3.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 20\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: \"69f98b72-14\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:22 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c117f680ff28aea1c2e60aa7c3be3b37\r\ncdn-cache: HIT\r\naccept-ranges: bytes\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"]}],"data":{"size":20,"size_decoded":804,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"8c361f5f3e81eca6f243f991934acfb8","sha1":"cca2cc0145571af645e93a0eea492681a68d4db1","sha256":"b7db039e8731af6abd4fe1cad1c082f9a54cac9bfae4de52cac6cbb64431ff06","sha512":"94498523c2221fd084df6e33d95e80c4f0dcc1054ff64a84c7c5309491e66301e34045b6df7d5247854e2893bf8e3fd6ca8b22f2e40daebcad83853dec330ad8","ssdeep":"","tlshash":"757000020028200280800800222000000003023a2a880000a80080200802aa08a0a00a","first_seen":"2026-01-06T10:31:31.715579Z","last_seen":"2026-07-30T06:08:06.399218Z","times_seen":7631,"resource_available":false,"data":"OmZvY3Vze291dGxpbmU6bm9uZX0="}},"time_used":31,"timings":{"blocked":-1,"dns":14,"connect":2,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/youtube/img/icons/mweb/youtube_fill/logo/v2/67px.svg","fqdn":"www.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":"fetch","requested_by":"https://www.youtube.com/embed/6jePbqXJhe8","date":"2026-07-27T13:34:31.605Z","timestamp":1785159271605,"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 /youtube/img/icons/mweb/youtube_fill/logo/v2/67px.svg HTTP/1.1\r\nHost: www.gstatic.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://www.youtube.com/\r\nOrigin: https://www.youtube.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=6\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\naccess-control-allow-origin: https://www.youtube.com\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: 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: 272\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Mon, 27 Jul 2026 10:01:48 GMT\r\nexpires: Tue, 27 Jul 2027 10:01:48 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Wed, 06 Sep 2023 03:18:00 GMT\r\ncontent-type: image/svg+xml\r\nvary: Accept-Encoding, Origin\r\nage: 12763\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":478,"size_decoded":996,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"1e78ea4caa31c35bac97a41e5930ffe8","sha1":"dbf99131b9b5087e664b9fdc7097c97655474517","sha256":"6fa88a20839537ae66da730e5bd183035265176d972bc8df075b89da0c6186ea","sha512":"cf798ef67c90f90f23635beb202095a2c76052d491c224aa14535bb9b16f28fa9a850b8db887f158afd01d634aecb9e2b05a27efdfd225d3583e6297bdd78b43","ssdeep":"","tlshash":"2ef09e6d577829d8930f87c0be5974127d9f23e85194b3b541d4f9326138ee2d141cd9","first_seen":"2025-05-26T15:52:21.952281Z","last_seen":"2026-07-30T06:37:33.044219Z","times_seen":47501,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NyA2MCIgZmlsbD0iIj48cGF0aCBkPSJNNjMgMTQuODdhNy44ODUgNy44ODUgMCAwMC01LjU2LTUuNTZDNTIuNTQgOCAzMi44OCA4IDMyLjg4IDhTMTMuMjMgOCA4LjMyIDkuMzFjLTIuNy43Mi00LjgzIDIuODUtNS41NiA1LjU2QzEuNDUgMTkuNzcgMS40NSAzMCAxLjQ1IDMwczAgMTAuMjMgMS4zMSAxNS4xM2MuNzIgMi43IDIuODUgNC44MyA1LjU2IDUuNTZDMTMuMjMgNTIgMzIuODggNTIgMzIuODggNTJzMTkuNjYgMCAyNC41Ni0xLjMxYzIuNy0uNzIgNC44My0yLjg1IDUuNTYtNS41NkM2NC4zMSA0MC4yMyA2NC4zMSAzMCA2NC4zMSAzMHMwLTEwLjIzLTEuMzEtMTUuMTN6Ij48L3BhdGg+PHBhdGggZmlsbD0iI0ZGRiIgY2xhc3M9ImxvZ28tYXJyb3ciIGQ9Ik0yNi42IDM5LjQzTDQyLjkzIDMwIDI2LjYgMjAuNTd6Ij48L3BhdGg+PC9zdmc+Cg=="}},"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":"fonts.gstatic.com/s/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.338Z","timestamp":1785159268338,"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/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.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://walmartfundholdings.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: 48264\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: Tue, 09 Sep 2025 19:08:31 GMT\r\ncontent-type: font/woff2\r\nage: 433449\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":48264,"size_decoded":49077,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48264, version 1.0","md5":"e401cae7a12911a5c9752dc7a62f9dd7","sha1":"5685dd613a8a8211bf60b4b10753a47587bd0b60","sha256":"b1bef1f03a77a36fc257c5525e32a1dd621bb6f935b743a419da7ed0b18dc8f5","sha512":"dc8b6f28bc048efb508b482199c958ffaeddf15431aad34544f5b9972fd8c19e0315f74499d5549b30e15a03e41bfaf2a30613b6889b9a693a9c87c4e872e1f3","ssdeep":"768:AWHBpvVWVHIgyYwXiDAOa6GWeFGaCfLBc/qiufIdQRuEl4ofxl8VKme:AWbEIgmi8uAFCfS/OfUYuRExl8VFe","tlshash":"1123f2e56c6a826bd88c882945ee21c1f3d7f4927713d149e8fa5df8c432c05ed5066b","first_seen":"2025-05-29T19:02:42.430777Z","last_seen":"2026-07-30T06:06:44.959375Z","times_seen":62401,"resource_available":false,"data":"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"}},"time_used":93,"timings":{"blocked":-1,"dns":2,"connect":31,"send":0,"wait":19,"receive":41,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/exm=el_conf/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main","fqdn":"translate.googleapis.com","domain":"translate.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":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.462Z","timestamp":1785159268462,"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 /_/translate_http/_/js/k=translate_http.tr.no.scrnY6Q2_yw.O/am=BIAABw/d=1/exm=el_conf/ed=1/rs=AN8SPfq1KlUFqeiFvBMudduzGtb39QWXuw/m=el_main HTTP/1.1\r\nHost: translate.googleapis.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://walmartfundholdings.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\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/rosetta\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"rosetta\"\r\nreport-to: {\"group\":\"rosetta\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/rosetta\"}]}\r\ncontent-length: 67956\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 18:00:05 GMT\r\nexpires: Thu, 22 Jul 2027 18:00:05 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Tue, 21 Jul 2026 20:35:41 GMT\r\ncontent-type: text/javascript; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 416064\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":null,"data":{"size":194344,"size_decoded":68816,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (2519)","md5":"cdf9309b56a4ff330627409baead2538","sha1":"e98eac16441e99c9512052eb0087f535b9a609b9","sha256":"310629c4e47d7960e5a89cbd6a9c1d24a4e4d7c5e18346a69a67d92355cf2cd4","sha512":"cafd13a201e26b9f94f9a636ca1f7c191ec3a9fc3f297d35ee51b1304962383e7147509932a759bd903e27e53fb251600ad6942739e472161f5a09367c3776c1","ssdeep":"3072:kjsNxt45eITHt28KRu9gKavNuBDHK0QppB0/I:osb0muBzg","tlshash":"dd14e8d9b26270679263f4a5403f004eb53b68a5f9484dacb28de8e26df4d19017bf7c","first_seen":"2026-07-22T18:30:16.180779Z","last_seen":"2026-07-27T19:37:31.609707Z","times_seen":2601,"resource_available":true,"data":"InVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF90cj10aGlzLmRlZmF1bHRfdHJ8fHt9OyhmdW5jdGlvbihfKXt2YXIgd2luZG93PXRoaXM7CnRyeXsKdmFyIEdnLEhnLElnLFhnLGNoLGloLGpoLGxoLG1oLG9oLHNoLHVoLHRoLEFoLEJoLEZoLERoLEVoLERnO18uRWc9ZnVuY3Rpb24oYSl7aWYoRGcudGVzdChhKSlyZXR1cm4gYX07Xy5GZz1mdW5jdGlvbihhLGIpe2EuX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyfHwoYS5fX2Nsb3N1cmVfX2Vycm9yX19jb250ZXh0X185ODQzODI9e30pO2EuX19jbG9zdXJlX19lcnJvcl9fY29udGV4dF9fOTg0MzgyLnNldmVyaXR5PWJ9O0dnPWZ1bmN0aW9uKGEpe2lmKCFfLlVhfHwhXy5WYSlyZXR1cm4hMTtmb3IodmFyIGI9MDtiPF8uVmEuYnJhbmRzLmxlbmd0aDtiKyspe3ZhciBjPV8uVmEuYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9O0hnPWZ1bmN0aW9uKCl7cmV0dXJuIF8udygiRmlyZWZveCIpfHxfLncoIkZ4aU9TIil9OwpJZz1mdW5jdGlvbigpe3JldHVybiBfLldhKCk/R2coIkNocm9taXVtIik6KF8udygiQ2hyb21lIil8fF8udygiQ3JpT1MiKSkmJiEoXy5XYSgpPzA6Xy53KCJFZGdlIikpfHxfLncoIlNpbGsiKX07Xy5KZz1mdW5jdGlvbigpe3JldHVybiBfLncoIlNhZmFyaSIpJiYhKElnKCl8fChfLldhKCk/MDpfLncoIkNvYXN0IikpfHxfLlhhKCl8fChfLldhKCk/MDpfLncoIkVkZ2UiKSl8fChfLldhKCk/R2coIk1pY3Jvc29mdCBFZGdlIik6Xy53KCJFZGcvIikpfHwoXy5XYSgpP0dnKCJPcGVyYSIpOl8udygiT1BSIikpfHxIZygpfHxfLncoIlNpbGsiKXx8Xy53KCJBbmRyb2lkIikpfTtfLktnPWZ1bmN0aW9uKCl7cmV0dXJuIF8udygiQW5kcm9pZCIpJiYhKElnKCl8fEhnKCl8fF8uWGEoKXx8Xy53KCJTaWxrIikpfTsKXy5NZz1mdW5jdGlvbihhLGIpe2lmKGEhPW51bGwpe3ZhciBjO3ZhciBkPShjPUxnKSE9bnVsbD9jOkxnPXt9O2M9ZFthXXx8MDtjPj1ifHwoZFthXT1jKzEsYT1FcnJvcigpLF8uRmcoYSwiaW5jaWRlbnQiKSxfLnJiKGEpKX19O18uTmc9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB0eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgpPT09InN5bWJvbCI/KGM9PT12b2lkIDA/MDpjKSYmU3ltYm9sLmZvciYmYT9TeW1ib2wuZm9yKGEpOmEhPW51bGw/U3ltYm9sKGEpOlN5bWJvbCgpOmJ9O18uUmc9ZnVuY3Rpb24oYSxiKXtfLk9nfHxfLkggaW4gYXx8UGcoYSxRZyk7YVtfLkhdfD1ifTtfLlNnPWZ1bmN0aW9uKGEsYil7Xy5PZ3x8Xy5IIGluIGF8fFBnKGEsUWcpO2FbXy5IXT1ifTtfLlRnPWZ1bmN0aW9uKGEpe18uUmcoYSwzNCk7cmV0dXJuIGF9O18uVWc9ZnVuY3Rpb24oYSl7Xy5SZyhhLDgxOTIpO3JldHVybiBhfTsKXy5XZz1mdW5jdGlvbihhLGIpe3JldHVybiBiPT09dm9pZCAwP2EuZyE9PV8uVmcmJiEhKDImKGEuSltfLkhdfDApKTohISgyJmIpJiZhLmchPT1fLlZnfTtYZz1mdW5jdGlvbihhKXthLlRsPSEwO3JldHVybiBhfTtfLmJoPWZ1bmN0aW9uKGEpe3ZhciBiPWE7aWYoWWcoYikpe2lmKCEvXlxzKig/Oi0/WzEtOV1cZCp8MCk/XHMqJC8udGVzdChiKSl0aHJvdyBFcnJvcihTdHJpbmcoYikpO31lbHNlIGlmKFpnKGIpJiYhTnVtYmVyLmlzU2FmZUludGVnZXIoYikpdGhyb3cgRXJyb3IoU3RyaW5nKGIpKTtyZXR1cm4gJGc/QmlnSW50KGEpOmE9YWgoYSk/YT8iMSI6IjAiOllnKGEpP2EudHJpbSgpfHwiMCI6U3RyaW5nKGEpfTsKY2g9ZnVuY3Rpb24oYSxiKXtpZihhLmxlbmd0aD5iLmxlbmd0aClyZXR1cm4hMTtpZihhLmxlbmd0aDxiLmxlbmd0aHx8YT09PWIpcmV0dXJuITA7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1iW2NdO2lmKGQ+ZSlyZXR1cm4hMTtpZihkPGUpcmV0dXJuITB9fTtfLmhoPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEhPW51bGwmJmFbZGhdPT09ZWgpcmV0dXJuIGE7aWYoIUFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGM/ZCYyP2JbXy5maF18fChiW18uZmhdPV8uZ2goYikpOm5ldyBiOnZvaWQgMDtjPWFbXy5IXXwwO2Q9Y3xkJjMyfGQmMjtkIT09YyYmXy5TZyhhLGQpO3JldHVybiBuZXcgYihhKX07Xy5naD1mdW5jdGlvbihhKXthPW5ldyBhO18uVGcoYS5KKTtyZXR1cm4gYX07aWg9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O2poPWZ1bmN0aW9uKGEpe3JldHVybiBhfTsKbGg9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2E9Xy5oaChhLGQsYyxmKTtlJiYoYT1fLmtoKGEpKTtyZXR1cm4gYX07bWg9ZnVuY3Rpb24oYSl7cmV0dXJuW2EsdGhpcy5nZXQoYSldfTtvaD1mdW5jdGlvbihhLGIpe2I8MTAwfHxfLk1nKG5oLDEpfTsKc2g9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ZCE9PXZvaWQgMDtkPSEhZDt2YXIgZj1fLnBoKF8ucWgpLGc7IWUmJl8uT2cmJmYmJihnPWFbZl0pJiZnLlRrKG9oKTtmPVtdO3ZhciBoPWEubGVuZ3RoO2c9NDI5NDk2NzI5NTt2YXIgaz0hMSxsPSEhKGImNjQpLG49bD9iJjEyOD8wOi0xOnZvaWQgMDtpZighKGImMSkpe3ZhciBxPWgmJmFbaC0xXTtxIT1udWxsJiZ0eXBlb2YgcT09PSJvYmplY3QiJiZxLmNvbnN0cnVjdG9yPT09T2JqZWN0PyhoLS0sZz1oKTpxPXZvaWQgMDtpZihsJiYhKGImMTI4KSYmIWUpe2s9ITA7dmFyIHA7Zz0oKHA9cmgpIT1udWxsP3A6aWgpKGctbixuLGEscSx2b2lkIDApK259fWI9dm9pZCAwO2ZvcihlPTA7ZTxoO2UrKylpZihwPWFbZV0scCE9bnVsbCYmKHA9YyhwLGQpKSE9bnVsbClpZihsJiZlPj1nKXt2YXIgcj1lLW4sdD12b2lkIDA7KCh0PWIpIT1udWxsP3Q6Yj17fSlbcl09cH1lbHNlIGZbZV09cDtpZihxKWZvcih2YXIgQSBpbiBxKWE9cVtBXSxhIT0KbnVsbCYmKGE9YyhhLGQpKSE9bnVsbCYmKGg9K0EsZT12b2lkIDAsbCYmIU51bWJlci5pc05hTihoKSYmKGU9aCtuKTxnP2ZbZV09YTooaD12b2lkIDAsKChoPWIpIT1udWxsP2g6Yj17fSlbQV09YSkpO2ImJihrP2YucHVzaChiKTpmW2ddPWIpO3JldHVybiBmfTt1aD1mdW5jdGlvbihhKXthWzBdPXRoKGFbMF0pO2FbMV09dGgoYVsxXSk7cmV0dXJuIGF9Owp0aD1mdW5jdGlvbihhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgIm51bWJlciI6cmV0dXJuIE51bWJlci5pc0Zpbml0ZShhKT9hOiIiK2E7Y2FzZSAiYmlnaW50IjpyZXR1cm4oMCxfLnZoKShhKT9OdW1iZXIoYSk6IiIrYTtjYXNlICJib29sZWFuIjpyZXR1cm4gYT8xOjA7Y2FzZSAib2JqZWN0IjppZihBcnJheS5pc0FycmF5KGEpKXt2YXIgYj1hW18uSF18MDtyZXR1cm4gYS5sZW5ndGg9PT0wJiZiJjE/dm9pZCAwOnNoKGEsYix0aCl9aWYoYSE9bnVsbCYmYVtkaF09PT1laClyZXR1cm4gXy53aChhKTtpZigiZnVuY3Rpb24iPT10eXBlb2YgXy54aCYmYSBpbnN0YW5jZW9mIF8ueGgpcmV0dXJuIGEuZygpO2lmKGEgaW5zdGFuY2VvZiBfLnloKXJldHVybiBhPWEuc2l6ZSE9PTA/Xy56aChhLHVoKTp2b2lkIDAsYTtyZXR1cm59cmV0dXJuIGF9O18ud2g9ZnVuY3Rpb24oYSl7YT1hLko7cmV0dXJuIHNoKGEsYVtfLkhdfDAsdGgpfTsKXy5JPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gQWgoYSxiLGMsMjA0OCl9OwpBaD1mdW5jdGlvbihhLGIsYyxkKXtkPWQ9PT12b2lkIDA/MDpkO2lmKGE9PW51bGwpe3ZhciBlPTMyO2M/KGE9W2NdLGV8PTEyOCk6YT1bXTtiJiYoZT1lJi0xNjc2MDgzM3woYiYxMDIzKTw8MTQpfWVsc2V7aWYoIUFycmF5LmlzQXJyYXkoYSkpdGhyb3cgRXJyb3IoImJhIik7ZT1hW18uSF18MDtpZihfLk1jJiYxJmUpdGhyb3cgRXJyb3IoImNhIik7MjA0OCZlJiYhKDImZSkmJkJoKCk7aWYoZSYyNTYpdGhyb3cgRXJyb3IoImRhIik7aWYoZSY2NClyZXR1cm4oZXxkKSE9PWUmJl8uU2coYSxlfGQpLGE7aWYoYyYmKGV8PTEyOCxjIT09YVswXSkpdGhyb3cgRXJyb3IoImVhIik7YTp7Yz1hO2V8PTY0O3ZhciBmPWMubGVuZ3RoO2lmKGYpe3ZhciBnPWYtMSxoPWNbZ107aWYoaCE9bnVsbCYmdHlwZW9mIGg9PT0ib2JqZWN0IiYmaC5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7Yj1lJjEyOD8wOi0xO2ctPWI7aWYoZz49MTAyNCl0aHJvdyBFcnJvcigiZ2EiKTtmb3IodmFyIGsgaW4gaClmPStrLApmPGcmJihjW2YrYl09aFtrXSxkZWxldGUgaFtrXSk7ZT1lJi0xNjc2MDgzM3woZyYxMDIzKTw8MTQ7YnJlYWsgYX19aWYoYil7az1NYXRoLm1heChiLGYtKGUmMTI4PzA6LTEpKTtpZihrPjEwMjQpdGhyb3cgRXJyb3IoImhhIik7ZT1lJi0xNjc2MDgzM3woayYxMDIzKTw8MTR9fX1fLlNnKGEsZXw2NHxkKTtyZXR1cm4gYX07Qmg9ZnVuY3Rpb24oKXtpZihfLk1jKXRocm93IEVycm9yKCJmYSIpO18uTWcoQ2gsNSl9OwpGaD1mdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhIT09Im9iamVjdCIpcmV0dXJuIGE7aWYoQXJyYXkuaXNBcnJheShhKSl7dmFyIGM9YVtfLkhdfDA7cmV0dXJuIGEubGVuZ3RoPT09MCYmYyYxP3ZvaWQgMDpEaChhLGMsYil9aWYoYSE9bnVsbCYmYVtkaF09PT1laClyZXR1cm4gRWgoYSk7aWYoYSBpbnN0YW5jZW9mIF8ueWgpe2I9YS5LYjtpZihiJjIpcmV0dXJuIGE7aWYoIWEuc2l6ZSlyZXR1cm47Yz1fLlRnKF8uemgoYSkpO2lmKGEuR2IpZm9yKGE9MDthPGMubGVuZ3RoO2ErKyl7dmFyIGQ9Y1thXSxlPWRbMV07ZT09bnVsbHx8dHlwZW9mIGUhPT0ib2JqZWN0Ij9lPXZvaWQgMDplIT1udWxsJiZlW2RoXT09PWVoP2U9RWgoZSk6QXJyYXkuaXNBcnJheShlKT9lPURoKGUsZVtfLkhdfDAsISEoYiYzMikpOmU9dm9pZCAwO2RbMV09ZX1yZXR1cm4gY31pZigiZnVuY3Rpb24iPT10eXBlb2YgXy54aCYmYSBpbnN0YW5jZW9mIF8ueGgpcmV0dXJuIGF9OwpEaD1mdW5jdGlvbihhLGIsYyl7aWYoYiYyKXJldHVybiBhOyFjfHw0MDk2JmJ8fDE2JmI/YT1fLkdoKGEsYiwhMSxjJiYhKGImMTYpKTooXy5SZyhhLDM0KSxiJjQmJk9iamVjdC5mcmVlemUoYSkpO3JldHVybiBhfTtfLkhoPWZ1bmN0aW9uKGEsYixjKXthPW5ldyBhLmNvbnN0cnVjdG9yKGIpO2MmJihhLmc9Xy5WZyk7YS5oPV8uVmc7cmV0dXJuIGF9O0VoPWZ1bmN0aW9uKGEpe3ZhciBiPWEuSixjPWJbXy5IXXwwO3JldHVybiBfLldnKGEsYyk/YTpfLkloKGEsYixjKT9fLkhoKGEsYik6Xy5HaChiLGMpfTtfLkdoPWZ1bmN0aW9uKGEsYixjLGQpe2QhPW51bGx8fChkPSEhKDM0JmIpKTthPXNoKGEsYixGaCxkKTtkPTMyO2MmJihkfD0yKTtiPWImMTY3NjkyMTd8ZDtfLlNnKGEsYik7cmV0dXJuIGF9OwpfLmtoPWZ1bmN0aW9uKGEpe3ZhciBiPWEuSixjPWJbXy5IXXwwO3JldHVybiBfLldnKGEsYyk/Xy5JaChhLGIsYyk/Xy5IaChhLGIsITApOm5ldyBhLmNvbnN0cnVjdG9yKF8uR2goYixjLCExKSk6YX07Xy5JaD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGMmMj8hMDpjJjMyJiYhKGMmNDA5Nik/KF8uU2coYixjfDIpLGEuZz1fLlZnLCEwKTohMX07Xy5waD1mdW5jdGlvbihhKXtyZXR1cm4gYX07RGc9L15ccyooPyFqYXZhc2NyaXB0OikoPzpbXHcrLi1dKzp8W146Lz8jXSooPzpbLz8jXXwkKSkvaTtfLkpoPUhnKCk7Xy5LaD1fLlphKCl8fF8udygiaVBvZCIpO18uTGg9Xy53KCJpUGFkIik7Xy5NaD1fLktnKCk7Xy5OaD1JZygpO18uT2g9Xy5KZygpJiYhXy4kYSgpO18uUGg9IV8uU2MmJnR5cGVvZiBidG9hPT09ImZ1bmN0aW9uIjt2YXIgTGc9dm9pZCAwO3ZhciBRaCxuaCxDaCxkaDtfLk9nPXR5cGVvZiBTeW1ib2w9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgU3ltYm9sKCk9PT0ic3ltYm9sIjtRaD1fLk5nKCJqYXMiLHZvaWQgMCwhMCk7Xy5maD1fLk5nKHZvaWQgMCwiMGRpIik7Xy5xaD1fLk5nKHZvaWQgMCxTeW1ib2woKSk7Xy5SaD1fLk5nKHZvaWQgMCwiMHViIik7bmg9Xy5OZyh2b2lkIDAsIjB1YnMiKTtDaD1fLk5nKHZvaWQgMCwiMGFjdGsiKTtkaD1fLk5nKCJtX20iLCJYbCIsITApO18uU2g9Xy5OZygpO3ZhciBRZyxQZyxVaDtRZz17ZWk6e3ZhbHVlOjAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLGVudW1lcmFibGU6ITF9fTtQZz1PYmplY3QuZGVmaW5lUHJvcGVydGllcztfLkg9Xy5PZz9RaDoiZWkiO1VoPVtdO18uU2coVWgsNyk7Xy5UaD1PYmplY3QuZnJlZXplKFVoKTt2YXIgZWgsVmg7ZWg9e307Xy5WZz17fTtWaD1mdW5jdGlvbihhLGIsYyl7dGhpcy5nPWE7dGhpcy5oPWI7dGhpcy5qPWN9O1ZoLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5nLm5leHQoKTthLmRvbmV8fChhLnZhbHVlPXRoaXMuaC5jYWxsKHRoaXMuaixhLnZhbHVlKSk7cmV0dXJuIGF9O1ZoLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O18uV2g9T2JqZWN0LmZyZWV6ZSh7fSk7Xy5YaD1PYmplY3QuZnJlZXplKHt9KTt2YXIgWmc9WGcoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9KSxZZz1YZyhmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIn0pLGFoPVhnKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn0pO3ZhciAkZz10eXBlb2YgXy52LkJpZ0ludD09PSJmdW5jdGlvbiImJnR5cGVvZiBfLnYuQmlnSW50KDApPT09ImJpZ2ludCI7dmFyICRoLFloLGFpLFpoO18udmg9WGcoZnVuY3Rpb24oYSl7cmV0dXJuICRnP2E+PVloJiZhPD1aaDphWzBdPT09Ii0iP2NoKGEsJGgpOmNoKGEsYWkpfSk7JGg9TnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIudG9TdHJpbmcoKTtZaD0kZz9CaWdJbnQoTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIpOnZvaWQgMDthaT1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUi50b1N0cmluZygpO1poPSRnP0JpZ0ludChOdW1iZXIuTUFYX1NBRkVfSU5URUdFUik6dm9pZCAwO18uYmk9dHlwZW9mIEJpZ0ludD09PSJmdW5jdGlvbiI/QmlnSW50LmFzSW50Tjp2b2lkIDA7Xy5jaT1OdW1iZXIuaXNTYWZlSW50ZWdlcjtfLmRpPU51bWJlci5pc0Zpbml0ZTtfLmVpPU1hdGgudHJ1bmM7dmFyIGZpPWZ1bmN0aW9uKCl7dHJ5e3ZhciBhPWZ1bmN0aW9uKCl7cmV0dXJuKDAsXy5UYikoTWFwLFtdLHRoaXMuY29uc3RydWN0b3IpfTtfLkIoYSxNYXApO18uUWMobmV3IGEpO3JldHVybiExfWNhdGNoKGIpe3JldHVybiEwfX0oKSxnaT1mdW5jdGlvbigpe3RoaXMuZz1uZXcgTWFwfSxoaSxpaTtfLm09Z2kucHJvdG90eXBlO18ubS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZy5nZXQoYSl9O18ubS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmcuc2V0KGEsYik7dGhpcy5zaXplPXRoaXMuZy5zaXplO3JldHVybiB0aGlzfTtfLm0uZGVsZXRlPWZ1bmN0aW9uKGEpe2E9dGhpcy5nLmRlbGV0ZShhKTt0aGlzLnNpemU9dGhpcy5nLnNpemU7cmV0dXJuIGF9O18ubS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuZy5jbGVhcigpO3RoaXMuc2l6ZT10aGlzLmcuc2l6ZX07Xy5tLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nLmhhcyhhKX07Xy5tLmVudHJpZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLmVudHJpZXMoKX07Cl8ubS5rZXlzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5rZXlzKCl9O18ubS52YWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLnZhbHVlcygpfTtfLm0uZm9yRWFjaD1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmcuZm9yRWFjaChhLGIpfTtnaS5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVudHJpZXMoKX07aGk9ZnVuY3Rpb24oKXtpZihmaSlyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mKGdpLnByb3RvdHlwZSxNYXAucHJvdG90eXBlKSxPYmplY3QuZGVmaW5lUHJvcGVydGllcyhnaS5wcm90b3R5cGUse3NpemU6e3ZhbHVlOjAsY29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsd3JpdGFibGU6ITB9fSksZ2k7dmFyIGE9ZnVuY3Rpb24oKXtyZXR1cm4oMCxfLlRiKShNYXAsW10sdGhpcy5jb25zdHJ1Y3Rvcil9O18uQihhLE1hcCk7cmV0dXJuIGF9KCk7Cl8ueWg9ZnVuY3Rpb24oYSxiLGMsZCl7Yz1jPT09dm9pZCAwP2poOmM7ZD1kPT09dm9pZCAwP2poOmQ7dmFyIGU9aGkuY2FsbCh0aGlzKXx8dGhpcztlLktiPWFbXy5IXXwwO2UuR2I9YjtlLmFkPWM7ZS5rZz1lLkdiP2xoOmQ7Zm9yKHZhciBmPTA7ZjxhLmxlbmd0aDtmKyspe3ZhciBnPWFbZl0saD1jKGdbMF0sITEsITApLGs9Z1sxXTtiP2s9PT12b2lkIDAmJihrPW51bGwpOms9ZChnWzFdLCExLCEwLHZvaWQgMCx2b2lkIDAsZS5LYik7aGkucHJvdG90eXBlLnNldC5jYWxsKGUsaCxrKX1yZXR1cm4gZX07Xy5CKF8ueWgsaGkpO2lpPWZ1bmN0aW9uKGEpe2lmKGEuS2ImMil0aHJvdyBFcnJvcigiYWEiKTt9O18uemg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5VZyhBcnJheS5mcm9tKGhpLnByb3RvdHlwZS5lbnRyaWVzLmNhbGwoYSksYikpfTtfLm09Xy55aC5wcm90b3R5cGU7Xy5tLmNsZWFyPWZ1bmN0aW9uKCl7aWkodGhpcyk7aGkucHJvdG90eXBlLmNsZWFyLmNhbGwodGhpcyl9OwpfLm0uZGVsZXRlPWZ1bmN0aW9uKGEpe2lpKHRoaXMpO3JldHVybiBoaS5wcm90b3R5cGUuZGVsZXRlLmNhbGwodGhpcyx0aGlzLmFkKGEsITAsITEpKX07Xy5tLmVudHJpZXM9ZnVuY3Rpb24oKXtpZih0aGlzLkdiKXt2YXIgYT1oaS5wcm90b3R5cGUua2V5cy5jYWxsKHRoaXMpO2E9bmV3IFZoKGEsbWgsdGhpcyl9ZWxzZSBhPWhpLnByb3RvdHlwZS5lbnRyaWVzLmNhbGwodGhpcyk7cmV0dXJuIGF9O18ubS52YWx1ZXM9ZnVuY3Rpb24oKXtpZih0aGlzLkdiKXt2YXIgYT1oaS5wcm90b3R5cGUua2V5cy5jYWxsKHRoaXMpO2E9bmV3IFZoKGEsXy55aC5wcm90b3R5cGUuZ2V0LHRoaXMpfWVsc2UgYT1oaS5wcm90b3R5cGUudmFsdWVzLmNhbGwodGhpcyk7cmV0dXJuIGF9OwpfLm0uZm9yRWFjaD1mdW5jdGlvbihhLGIpe3RoaXMuR2I/aGkucHJvdG90eXBlLmZvckVhY2guY2FsbCh0aGlzLGZ1bmN0aW9uKGMsZCxlKXthLmNhbGwoYixlLmdldChkKSxkLGUpfSk6aGkucHJvdG90eXBlLmZvckVhY2guY2FsbCh0aGlzLGEsYil9O18ubS5zZXQ9ZnVuY3Rpb24oYSxiKXtpaSh0aGlzKTthPXRoaXMuYWQoYSwhMCwhMSk7cmV0dXJuIGE9PW51bGw/dGhpczpiPT1udWxsPyhoaS5wcm90b3R5cGUuZGVsZXRlLmNhbGwodGhpcyxhKSx0aGlzKTpoaS5wcm90b3R5cGUuc2V0LmNhbGwodGhpcyxhLHRoaXMua2coYiwhMCwhMCx0aGlzLkdiLCExLHRoaXMuS2IpKX07Xy5tLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gaGkucHJvdG90eXBlLmhhcy5jYWxsKHRoaXMsdGhpcy5hZChhLCExLCExKSl9OwpfLm0uZ2V0PWZ1bmN0aW9uKGEpe2E9dGhpcy5hZChhLCExLCExKTt2YXIgYj1oaS5wcm90b3R5cGUuZ2V0LmNhbGwodGhpcyxhKTtpZihiIT09dm9pZCAwKXt2YXIgYz10aGlzLkdiO3JldHVybiBjPyhjPXRoaXMua2coYiwhMSwhMCxjLHRoaXMuTmssdGhpcy5LYiksYyE9PWImJmhpLnByb3RvdHlwZS5zZXQuY2FsbCh0aGlzLGEsYyksYyk6Yn19O18ueWgucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbnRyaWVzKCl9O18ueWgucHJvdG90eXBlLnRvSlNPTj12b2lkIDA7dmFyIHJoO18uamk9Xy5iaCgwKTtfLko9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuSj1fLkkoYSxiLGMpfTtfLkoucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybiBfLndoKHRoaXMpfTtfLkoucHJvdG90eXBlW2RoXT1laDtfLkoucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSi50b1N0cmluZygpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIExpLE1pLE5pLE9pLFJpLFBpLFFpLFNpLFVpLFdpLFhpO18ua2k9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5lYy5hcHBseSgxLGFyZ3VtZW50cyk7aWYoYi5sZW5ndGg9PT0wKXJldHVybiBfLk1hKGFbMF0pO2Zvcih2YXIgYz1hWzBdLGQ9MDtkPGIubGVuZ3RoO2QrKyljKz1lbmNvZGVVUklDb21wb25lbnQoYltkXSkrYVtkKzFdO3JldHVybiBfLk1hKGMpfTtfLmxpPWZ1bmN0aW9uKGEpe18uUmcoYSwzMik7cmV0dXJuIGF9O18ubWk9ZnVuY3Rpb24oYSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGEpfTtfLm5pPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09ImJvb2xlYW4iKXRocm93IEVycm9yKCIkYCIrXy5vYyhhKSsiYCIrYSk7cmV0dXJuIGF9O18ub2k9ZnVuY3Rpb24oYSl7aWYoYT09bnVsbHx8dHlwZW9mIGE9PT0iYm9vbGVhbiIpcmV0dXJuIGE7aWYodHlwZW9mIGE9PT0ibnVtYmVyIilyZXR1cm4hIWF9OwpfLnBpPWZ1bmN0aW9uKGEpe3JldHVybiBhPT1udWxsfHx0eXBlb2YgYT09PSJzdHJpbmciP2E6dm9pZCAwfTtfLnFpPWZ1bmN0aW9uKGEpe2lmKGEuZyE9PV8uVmcpcmV0dXJuITE7dmFyIGI9YS5KO2I9Xy5HaChiLGJbXy5IXXwwKTtfLlJnKGIsMjA0OCk7YS5KPWI7YS5nPXZvaWQgMDthLmg9dm9pZCAwO3JldHVybiEwfTtfLnJpPWZ1bmN0aW9uKGEpe2lmKCFfLnFpKGEpJiZfLldnKGEsYS5KW18uSF18MCkpdGhyb3cgRXJyb3IoKTt9O18uc2k9ZnVuY3Rpb24oYSxiKXtiPT09dm9pZCAwJiYoYj1hW18uSF18MCk7YiYzMiYmIShiJjQwOTYpJiZfLlNnKGEsYnw0MDk2KX07Cl8udGk9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1jKyhlPzA6LTEpLGc9YS5sZW5ndGgtMTtpZihnPj0xKyhlPzA6LTEpJiZmPj1nKXt2YXIgaD1hW2ddO2lmKGghPW51bGwmJnR5cGVvZiBoPT09Im9iamVjdCImJmguY29uc3RydWN0b3I9PT1PYmplY3QpcmV0dXJuIGhbY109ZCxifWlmKGY8PWcpcmV0dXJuIGFbZl09ZCxiO2lmKGQhPT12b2lkIDApe3ZhciBrO2c9KChrPWIpIT1udWxsP2s6Yj1hW18uSF18MCk+PjE0JjEwMjN8fDUzNjg3MDkxMjtjPj1nP2QhPW51bGwmJihmPXt9LGFbZysoZT8wOi0xKV09KGZbY109ZCxmKSk6YVtmXT1kfXJldHVybiBifTtfLkJpPWZ1bmN0aW9uKGEsYil7YT1fLnVpKGEsYix2b2lkIDApO3JldHVybiBBcnJheS5pc0FycmF5KGEpP2E6Xy5UaH07Xy5DaT1mdW5jdGlvbihhLGIpezImYiYmKGF8PTIpO3JldHVybiBhfDF9O18uRGk9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT0oMiZiP2F8MjphJi0zKSYtMjczfTsKXy5FaT1mdW5jdGlvbihhKXtyZXR1cm4hISgyJmEpJiYhISg0JmEpfHwhISgyNTYmYSl9O18uRmk9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt2YXIgaz1iO2Y9PT0xfHwoZiE9PTQ/MDoyJmJ8fCEoMTYmYikmJjMyJmQpP18uRWkoYil8fChifD0hYS5sZW5ndGh8fGcmJiEoNDA5NiZiKXx8MzImZCYmISg0MDk2JmJ8fDE2JmIpPzI6MjU2LGIhPT1rJiZfLlNnKGEsYiksT2JqZWN0LmZyZWV6ZShhKSk6KGY9PT0yJiZfLkVpKGIpJiYoYT1fLm1pKGEpLGs9MCxiPV8uRGkoYixkKSxkPV8udGkoYyxkLGUsYSkpLF8uRWkoYil8fChofHwoYnw9MTYpLGIhPT1rJiZfLlNnKGEsYikpKTsyJmJ8fCEoNDA5NiZifHwxNiZiKXx8Xy5zaShjLGQpO3JldHVybiBhfTtfLkdpPWZ1bmN0aW9uKGEsYixjLGQpe18ucmkoYSk7dmFyIGU9YS5KO18udGkoZSxlW18uSF18MCxiLChkPT09IjAiP051bWJlcihjKT09PTA6Yz09PWQpP3ZvaWQgMDpjKTtyZXR1cm4gYX07Cl8uSGk9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj0hMTtkPV8udWkoYSxkLGUsZnVuY3Rpb24oZyl7dmFyIGg9Xy5oaChnLGMsITEsYik7Zj1oIT09ZyYmaCE9bnVsbDtyZXR1cm4gaH0pO2lmKGQhPW51bGwpcmV0dXJuIGYmJiFfLldnKGQpJiZfLnNpKGEsYiksZH07Cl8uSWk9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt2YXIgaz1fLldnKGEsYyk7Zj1rPzE6ZjtnPSEhZ3x8Zj09PTM7az1oJiYhazsoZj09PTJ8fGspJiZfLnFpKGEpJiYoYj1hLkosYz1iW18uSF18MCk7YT1fLkJpKGIsZSk7dmFyIGw9YT09PV8uVGg/NzphW18uSF18MCxuPV8uQ2kobCxjKTtpZihoPSEoNCZuKSl7dmFyIHE9YSxwPWMscj0hISgyJm4pO3ImJihwfD0yKTtmb3IodmFyIHQ9IXIsQT0hMCxEPTAsRT0wO0Q8cS5sZW5ndGg7RCsrKXt2YXIgYmE9Xy5oaChxW0RdLGQsITEscCk7aWYoYmEgaW5zdGFuY2VvZiBkKXtpZighcil7dmFyIFo9Xy5XZyhiYSk7dCYmKHQ9IVopO0EmJihBPVopfXFbRSsrXT1iYX19RTxEJiYocS5sZW5ndGg9RSk7bnw9NDtuPUE/biYtNDA5NzpufDQwOTY7bj10P258ODpuJi05fW4hPT1sJiYoXy5TZyhhLG4pLDImbiYmT2JqZWN0LmZyZWV6ZShhKSk7aWYoayYmISg4Jm58fCFhLmxlbmd0aCYmKGY9PT0xfHwoZiE9PTQ/MDoyJm58fCEoMTYmbikmJgozMiZjKSkpKXtfLkVpKG4pJiYoYT1fLm1pKGEpLG49Xy5EaShuLGMpLGM9Xy50aShiLGMsZSxhKSk7ZD1hO2s9bjtmb3IobD0wO2w8ZC5sZW5ndGg7bCsrKXE9ZFtsXSxuPV8ua2gocSkscSE9PW4mJihkW2xdPW4pO2t8PTg7bj1rPWQubGVuZ3RoP2t8NDA5NjprJi00MDk3O18uU2coYSxuKX1yZXR1cm4gYT1fLkZpKGEsbixiLGMsZSxmLGgsZyl9O18uSmk9ZnVuY3Rpb24oYSl7YT09bnVsbCYmKGE9dm9pZCAwKTtyZXR1cm4gYX07Xy5LaT1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7Yj1KU09OLnBhcnNlKGIpO2lmKCFBcnJheS5pc0FycmF5KGIpKXRocm93IEVycm9yKCJpYWAiK18ub2MoYikrImAiK2IpO18uVGcoYik7cmV0dXJuIG5ldyBhKGIpfX07TGk9ZnVuY3Rpb24oYSl7aWYoYS5HKXRocm93IG5ldyBUeXBlRXJyb3IoImYiKTthLkc9ITB9O01pPWZ1bmN0aW9uKGEsYil7YS5sPXtiZjpiLENmOiEwfTthLmc9YS5DfHxhLm99OwpOaT1mdW5jdGlvbihhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9O18uSz1mdW5jdGlvbihhKXtyZXR1cm4gTmkoYSxhKX07T2k9ZnVuY3Rpb24oYSl7dGhpcy5nPW5ldyBfLkY7dGhpcy5oPWF9O1JpPWZ1bmN0aW9uKGEsYil7TGkoYS5nKTt2YXIgYz1hLmcuQTtpZihjKXJldHVybiBQaShhLCJyZXR1cm4iaW4gYz9jWyJyZXR1cm4iXTpmdW5jdGlvbihkKXtyZXR1cm57dmFsdWU6ZCxkb25lOiEwfX0sYixhLmcucmV0dXJuKTthLmcucmV0dXJuKGIpO3JldHVybiBRaShhKX07UGk9ZnVuY3Rpb24oYSxiLGMsZCl7dHJ5e3ZhciBlPWIuY2FsbChhLmcuQSxjKTtfLmNjKGUpO2lmKCFlLmRvbmUpcmV0dXJuIGEuZy5HPSExLGU7dmFyIGY9ZS52YWx1ZX1jYXRjaChnKXtyZXR1cm4gYS5nLkE9bnVsbCxNaShhLmcsZyksUWkoYSl9YS5nLkE9bnVsbDtkLmNhbGwoYS5nLGYpO3JldHVybiBRaShhKX07ClFpPWZ1bmN0aW9uKGEpe2Zvcig7YS5nLmc7KXRyeXt2YXIgYj1hLmgoYS5nKTtpZihiKXJldHVybiBhLmcuRz0hMSx7dmFsdWU6Yi52YWx1ZSxkb25lOiExfX1jYXRjaChjKXthLmcuaj12b2lkIDAsTWkoYS5nLGMpfWEuZy5HPSExO2lmKGEuZy5sKXtiPWEuZy5sO2EuZy5sPW51bGw7aWYoYi5DZil0aHJvdyBiLmJmO3JldHVybnt2YWx1ZTpiLnJldHVybixkb25lOiEwfX1yZXR1cm57dmFsdWU6dm9pZCAwLGRvbmU6ITB9fTsKU2k9ZnVuY3Rpb24oYSl7dGhpcy5uZXh0PWZ1bmN0aW9uKGIpe0xpKGEuZyk7YS5nLkE/Yj1QaShhLGEuZy5BLm5leHQsYixhLmcuSSk6KGEuZy5JKGIpLGI9UWkoYSkpO3JldHVybiBifTt0aGlzLnRocm93PWZ1bmN0aW9uKGIpe0xpKGEuZyk7YS5nLkE/Yj1QaShhLGEuZy5BWyJ0aHJvdyJdLGIsYS5nLkkpOihNaShhLmcsYiksYj1RaShhKSk7cmV0dXJuIGJ9O3RoaXMucmV0dXJuPWZ1bmN0aW9uKGIpe3JldHVybiBSaShhLGIpfTt0aGlzW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319O1VpPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZCl7cmV0dXJuIGEubmV4dChkKX1mdW5jdGlvbiBjKGQpe3JldHVybiBhLnRocm93KGQpfXJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihkLGUpe2Z1bmN0aW9uIGYoZyl7Zy5kb25lP2QoZy52YWx1ZSk6UHJvbWlzZS5yZXNvbHZlKGcudmFsdWUpLnRoZW4oYixjKS50aGVuKGYsZSl9ZihhLm5leHQoKSl9KX07Xy5WaT1mdW5jdGlvbihhKXtyZXR1cm4gVWkobmV3IFNpKG5ldyBPaShhKSkpfTsKV2k9ZnVuY3Rpb24oYSl7cmV0dXJuIFN0cmluZyhhKS5yZXBsYWNlKC9cLShbYS16XSkvZyxmdW5jdGlvbihiLGMpe3JldHVybiBjLnRvVXBwZXJDYXNlKCl9KX07WGk9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZShSZWdFeHAoIihefFtcXHNdKykoW2Etel0pIiwiZyIpLGZ1bmN0aW9uKGIsYyxkKXtyZXR1cm4gYytkLnRvVXBwZXJDYXNlKCl9KX07Xy5ZaT1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5vZSlyZXR1cm4gYTt2YXIgYj1uZXcgXy5vZShfLmxlKTtfLm5lKGIsMixhKTtyZXR1cm4gYn07Cl8udWk9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYj09PS0xKXJldHVybiBudWxsO3ZhciBlPWIrKGM/MDotMSksZj1hLmxlbmd0aC0xO2lmKCEoZjwxKyhjPzA6LTEpKSl7aWYoZT49Zil7dmFyIGc9YVtmXTtpZihnIT1udWxsJiZ0eXBlb2YgZz09PSJvYmplY3QiJiZnLmNvbnN0cnVjdG9yPT09T2JqZWN0KXtjPWdbYl07dmFyIGg9ITB9ZWxzZSBpZihlPT09ZiljPWc7ZWxzZSByZXR1cm59ZWxzZSBjPWFbZV07aWYoZCYmYyE9bnVsbCl7ZD1kKGMpO2lmKGQ9PW51bGwpcmV0dXJuIGQ7aWYoIU9iamVjdC5pcyhkLGMpKXJldHVybiBoP2dbYl09ZDphW2VdPWQsZH1yZXR1cm4gY319O18uWmk9ZnVuY3Rpb24oYSxiLGMsZCxlKXtiPV8udWkoYS5KLGIsYyxlKTtpZihiIT09bnVsbHx8ZCYmYS5oIT09Xy5WZylyZXR1cm4gYn07Xy4kaT1mdW5jdGlvbihhLGIsYyl7Xy5yaShhKTt2YXIgZD1hLko7Xy50aShkLGRbXy5IXXwwLGIsYyk7cmV0dXJuIGF9OwpfLmFqPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09Xy5XaD8yOjR9O18uYmo9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5KLGY9ZVtfLkhdfDA7Yj1fLkhpKGUsZixiLGMsZCk7aWYoYj09bnVsbClyZXR1cm4gYjtmPWVbXy5IXXwwO2lmKCFfLldnKGEsZikpe3ZhciBnPV8ua2goYik7ZyE9PWImJihfLnFpKGEpJiYoZT1hLkosZj1lW18uSF18MCksYj1nLGY9Xy50aShlLGYsYyxiLGQpLF8uc2koZSxmKSl9cmV0dXJuIGJ9O18uY2o9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuSjtyZXR1cm4gXy5JaShhLGQsZFtfLkhdfDAsYixjLF8uYWooKSwhMSwhMCl9O18uTD1mdW5jdGlvbihhLGIsYyl7Yz1fLkppKGMpO18uJGkoYSxiLGMpO2MmJiFfLldnKGMpJiZfLnNpKGEuSik7cmV0dXJuIGF9O18uTT1mdW5jdGlvbihhLGIpe3ZhciBjPWM9PT12b2lkIDA/ITE6YzthPV8ub2koXy5aaShhLGIpKTtyZXR1cm4gYSE9bnVsbD9hOmN9OwpfLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1jPT09dm9pZCAwPyIiOmM7dmFyIGQ7cmV0dXJuKGQ9Xy5waShfLlppKGEsYikpKSE9bnVsbD9kOmN9O18uZGo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1jPT09dm9pZCAwPzA6YzthPV8uWmkoYSxiKTthPWE9PW51bGw/YTooMCxfLmRpKShhKT9hfDA6dm9pZCAwO3JldHVybiBhIT1udWxsP2E6Y307Xy5laj1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uR2koYSxiLGM9PW51bGw/YzpfLm5pKGMpLCExKX07Xy5maj1mdW5jdGlvbihhLGIpe2lmKGI9PW51bGx8fGI9PSIiKXJldHVybiBuZXcgYTtiPUpTT04ucGFyc2UoYik7aWYoIUFycmF5LmlzQXJyYXkoYikpdGhyb3cgRXJyb3IoImphIik7cmV0dXJuIG5ldyBhKF8ubGkoYikpfTt2YXIgaWosZ2osamo7Xy5oaj1mdW5jdGlvbihhLGIsYyl7aWYodHlwZW9mIGI9PT0ic3RyaW5nIilnaihhLGMsYik7ZWxzZSBmb3IodmFyIGQgaW4gYilnaihhLGJbZF0sZCl9O2lqPS9eLS0uKy87Z2o9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWpqW2NdO2lmKCFkKXt2YXIgZT1XaShjKTtkPWU7YS5zdHlsZVtlXT09PXZvaWQgMCYmKGU9KF8uVmM/IldlYmtpdCI6Xy5VYz8iTW96IjpudWxsKStYaShlKSxhLnN0eWxlW2VdIT09dm9pZCAwJiYoZD1lKSk7ampbY109ZH0oYz1kKSYmKGlqLnRlc3QoYyk/YS5zdHlsZS5zZXRQcm9wZXJ0eShjLGIpOmEuc3R5bGVbY109Yil9O2pqPXt9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgbGosb2oscGoscWosdGosdWosdmosd2oseGoseWosQWosQ2osRGosRWosRmosR2osSGosSWosS2osTmosT2osWGosWWosYmssbmosbWosY2ssZWsscmosc2osemosbms7Xy5raj1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5EYylyZXR1cm4gYS5nO3Rocm93IEVycm9yKCJ0Iik7fTtsaj1mdW5jdGlvbihhKXt2YXIgYj1hLkosYz1iW18uSF18MDtyZXR1cm4gXy5JaChhLGIsYyk/Xy5IaChhLGIsITApOm5ldyBhLmNvbnN0cnVjdG9yKF8uR2goYixjLCExKSl9Owpvaj1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPTApO2lmKCFtail7bWo9e307Zm9yKHZhciBjPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLGQ9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl0sZT0wO2U8NTtlKyspe3ZhciBmPWMuY29uY2F0KGRbZV0uc3BsaXQoIiIpKTtualtlXT1mO2Zvcih2YXIgZz0wO2c8Zi5sZW5ndGg7ZysrKXt2YXIgaD1mW2ddO21qW2hdPT09dm9pZCAwJiYobWpbaF09Zyl9fX1iPW5qW2JdO2M9QXJyYXkoTWF0aC5mbG9vcihhLmxlbmd0aC8zKSk7ZD1iWzY0XXx8IiI7Zm9yKGU9Zj0wO2Y8YS5sZW5ndGgtMjtmKz0zKXt2YXIgaz1hW2ZdLGw9YVtmKzFdO2g9YVtmKzJdO2c9YltrPj4yXTtrPWJbKGsmMyk8PDR8bD4+NF07bD1iWyhsJjE1KTw8MnxoPj42XTtoPWJbaCY2M107Y1tlKytdPWcraytsK2h9Zz0wO2g9ZDtzd2l0Y2goYS5sZW5ndGgtZil7Y2FzZSAyOmc9CmFbZisxXSxoPWJbKGcmMTUpPDwyXXx8ZDtjYXNlIDE6YT1hW2ZdLGNbZV09YlthPj4yXStiWyhhJjMpPDw0fGc+PjRdK2grZH1yZXR1cm4gYy5qb2luKCIiKX07cGo9ZnVuY3Rpb24oYSl7YT1FcnJvcihhKTtfLkZnKGEsIndhcm5pbmciKTtyZXR1cm4gYX07cWo9ZnVuY3Rpb24oKXtyZXR1cm4gdHlwZW9mIEJpZ0ludD09PSJmdW5jdGlvbiJ9O3RqPWZ1bmN0aW9uKGEpe3ZhciBiPWE+Pj4wO3JqPWI7c2o9KGEtYikvNDI5NDk2NzI5Nj4+PjB9O3VqPWZ1bmN0aW9uKGEsYil7Yj1+YjthP2E9fmErMTpiKz0xO3JldHVyblthLGJdfTt2aj1mdW5jdGlvbihhKXtpZihhPDApe3RqKC1hKTt2YXIgYj1fLkModWoocmosc2opKTthPWIubmV4dCgpLnZhbHVlO2I9Yi5uZXh0KCkudmFsdWU7cmo9YT4+PjA7c2o9Yj4+PjB9ZWxzZSB0aihhKX07d2o9ZnVuY3Rpb24oYSl7YT1TdHJpbmcoYSk7cmV0dXJuIjAwMDAwMDAiLnNsaWNlKGEubGVuZ3RoKSthfTsKeGo9ZnVuY3Rpb24oYSxiKXtiPj4+PTA7YT4+Pj0wO2lmKGI8PTIwOTcxNTEpdmFyIGM9IiIrKDQyOTQ5NjcyOTYqYithKTtlbHNlIHFqKCk/Yz0iIisoQmlnSW50KGIpPDxCaWdJbnQoMzIpfEJpZ0ludChhKSk6KGM9KGE+Pj4yNHxiPDw4KSYxNjc3NzIxNSxiPWI+PjE2JjY1NTM1LGE9KGEmMTY3NzcyMTUpK2MqNjc3NzIxNitiKjY3MTA2NTYsYys9Yio4MTQ3NDk3LGIqPTIsYT49MUU3JiYoYys9YS8xRTc+Pj4wLGElPTFFNyksYz49MUU3JiYoYis9Yy8xRTc+Pj4wLGMlPTFFNyksYz1iK3dqKGMpK3dqKGEpKTtyZXR1cm4gY307eWo9ZnVuY3Rpb24oKXt2YXIgYT1yaixiPXNqO2ImMjE0NzQ4MzY0OD9xaigpP2E9IiIrKEJpZ0ludChifDApPDxCaWdJbnQoMzIpfEJpZ0ludChhPj4+MCkpOihiPV8uQyh1aihhLGIpKSxhPWIubmV4dCgpLnZhbHVlLGI9Yi5uZXh0KCkudmFsdWUsYT0iLSIreGooYSxiKSk6YT14aihhLGIpO3JldHVybiBhfTsKQWo9ZnVuY3Rpb24oYSl7c3dpdGNoKHR5cGVvZiBhKXtjYXNlICJiaWdpbnQiOnJldHVybiEwO2Nhc2UgIm51bWJlciI6cmV0dXJuKDAsXy5kaSkoYSk7Y2FzZSAic3RyaW5nIjpyZXR1cm4gemoudGVzdChhKTtkZWZhdWx0OnJldHVybiExfX07Xy5Caj1mdW5jdGlvbihhKXtpZih0eXBlb2YgYSE9PSJudW1iZXIiKXRocm93IHBqKCJpbnQzMiIpO2lmKCEoMCxfLmRpKShhKSl0aHJvdyBwaigiaW50MzIiKTtyZXR1cm4gYXwwfTtDaj1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBhO2lmKHR5cGVvZiBhPT09InN0cmluZyImJmEpYT0rYTtlbHNlIGlmKHR5cGVvZiBhIT09Im51bWJlciIpcmV0dXJuO3JldHVybigwLF8uZGkpKGEpP2F8MDp2b2lkIDB9OwpEaj1mdW5jdGlvbihhKXt2YXIgYj1hLmxlbmd0aDtpZihhWzBdPT09Ii0iP2I8MjB8fGI9PT0yMCYmYTw9Ii05MjIzMzcyMDM2ODU0Nzc1ODA4IjpiPDE5fHxiPT09MTkmJmE8PSI5MjIzMzcyMDM2ODU0Nzc1ODA3IilyZXR1cm4gYTtpZihhLmxlbmd0aDwxNil2aihOdW1iZXIoYSkpO2Vsc2UgaWYocWooKSlhPUJpZ0ludChhKSxyaj1OdW1iZXIoYSZCaWdJbnQoNDI5NDk2NzI5NSkpPj4+MCxzaj1OdW1iZXIoYT4+QmlnSW50KDMyKSZCaWdJbnQoNDI5NDk2NzI5NSkpO2Vsc2V7Yj0rKGFbMF09PT0iLSIpO3NqPXJqPTA7Zm9yKHZhciBjPWEubGVuZ3RoLGQ9YixlPShjLWIpJTYrYjtlPD1jO2Q9ZSxlKz02KWQ9TnVtYmVyKGEuc2xpY2UoZCxlKSksc2oqPTFFNixyaj1yaioxRTYrZCxyaj49NDI5NDk2NzI5NiYmKHNqKz1NYXRoLnRydW5jKHJqLzQyOTQ5NjcyOTYpLHNqPj4+PTAscmo+Pj49MCk7YiYmKGI9Xy5DKHVqKHJqLHNqKSksYT1iLm5leHQoKS52YWx1ZSxiPWIubmV4dCgpLnZhbHVlLApyaj1hLHNqPWIpfXJldHVybiB5aigpfTtFaj1mdW5jdGlvbihhKXt2YXIgYj0oMCxfLmVpKShOdW1iZXIoYSkpO2lmKCgwLF8uY2kpKGIpKXJldHVybiBfLmJoKGIpO2I9YS5pbmRleE9mKCIuIik7YiE9PS0xJiYoYT1hLnN1YnN0cmluZygwLGIpKTtyZXR1cm4gcWooKT9fLmJoKCgwLF8uYmkpKDY0LEJpZ0ludChhKSkpOl8uYmgoRGooYSkpfTtGaj1mdW5jdGlvbihhKXt2YXIgYj0oMCxfLmVpKShOdW1iZXIoYSkpO2lmKCgwLF8uY2kpKGIpKXJldHVybiBTdHJpbmcoYik7Yj1hLmluZGV4T2YoIi4iKTtiIT09LTEmJihhPWEuc3Vic3RyaW5nKDAsYikpO3JldHVybiBEaihhKX07CkdqPWZ1bmN0aW9uKGEpe2E9KDAsXy5laSkoYSk7aWYoISgwLF8uY2kpKGEpKXt2aihhKTt2YXIgYj1yaixjPXNqO2lmKGE9YyYyMTQ3NDgzNjQ4KWI9fmIrMT4+PjAsYz1+Yz4+PjAsYj09MCYmKGM9YysxPj4+MCk7dmFyIGQ9Yyo0Mjk0OTY3Mjk2KyhiPj4+MCk7Yj1OdW1iZXIuaXNTYWZlSW50ZWdlcihkKT9kOnhqKGIsYyk7YT10eXBlb2YgYj09PSJudW1iZXIiP2E/LWI6YjphPyItIitiOmJ9cmV0dXJuIGF9O0hqPWZ1bmN0aW9uKGEpe2E9KDAsXy5laSkoYSk7KDAsXy5jaSkoYSk/YT1TdHJpbmcoYSk6KHZqKGEpLGE9eWooKSk7cmV0dXJuIGF9O0lqPWZ1bmN0aW9uKGEpe3JldHVybigwLF8uY2kpKGEpP18uYmgoR2ooYSkpOl8uYmgoSGooYSkpfTsKXy5Kaj1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7YiE9bnVsbHx8KGI9MTAyNCk7aWYoIUFqKGEpKXRocm93IHBqKCJpbnQ2NCIpO3ZhciBjPXR5cGVvZiBhO3N3aXRjaChiKXtjYXNlIDUxMjpzd2l0Y2goYyl7Y2FzZSAic3RyaW5nIjpyZXR1cm4gRmooYSk7Y2FzZSAiYmlnaW50IjpyZXR1cm4gU3RyaW5nKCgwLF8uYmkpKDY0LGEpKTtkZWZhdWx0OnJldHVybiBIaihhKX1jYXNlIDEwMjQ6c3dpdGNoKGMpe2Nhc2UgInN0cmluZyI6cmV0dXJuIEVqKGEpO2Nhc2UgImJpZ2ludCI6cmV0dXJuIF8uYmgoKDAsXy5iaSkoNjQsYSkpO2RlZmF1bHQ6cmV0dXJuIElqKGEpfWNhc2UgMDpzd2l0Y2goYyl7Y2FzZSAic3RyaW5nIjpyZXR1cm4gRmooYSk7Y2FzZSAiYmlnaW50IjpyZXR1cm4gXy5iaCgoMCxfLmJpKSg2NCxhKSk7ZGVmYXVsdDpyZXR1cm4gR2ooYSl9ZGVmYXVsdDp0aHJvdyBFcnJvcigiVW5rbm93biBmb3JtYXQgcmVxdWVzdGVkIHR5cGUgZm9yIGludDY0Iik7fX07CktqPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBhO2lmKGE9PW51bGwpcmV0dXJuIGE7aWYoYj09PSJiaWdpbnQiKXJldHVybiBfLmJoKCgwLF8uYmkpKDY0LGEpKTtpZihBaihhKSlyZXR1cm4gYj09PSJzdHJpbmciP0VqKGEpOklqKGEpfTtfLkxqPWZ1bmN0aW9uKGEpe2lmKGEhPW51bGwmJnR5cGVvZiBhIT09InN0cmluZyIpdGhyb3cgRXJyb3IoKTtyZXR1cm4gYX07Xy5Naj1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYil7cmV0dXJuIF8uZmooYSxiKX19OwpOaj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtlWzBdPTE3MzI1ODQxOTM7ZVsxXT00MDIzMjMzNDE3O2VbMl09MjU2MjM4MzEwMjtlWzNdPTI3MTczMzg3ODtlWzRdPTMyODUzNzc1MjA7bj1sPTB9ZnVuY3Rpb24gYihxKXtmb3IodmFyIHA9ZyxyPTA7cjw2NDtyKz00KXBbci80XT1xW3JdPDwyNHxxW3IrMV08PDE2fHFbcisyXTw8OHxxW3IrM107Zm9yKHI9MTY7cjw4MDtyKyspcT1wW3ItM11ecFtyLThdXnBbci0xNF1ecFtyLTE2XSxwW3JdPShxPDwxfHE+Pj4zMSkmNDI5NDk2NzI5NTtxPWVbMF07dmFyIHQ9ZVsxXSxBPWVbMl0sRD1lWzNdLEU9ZVs0XTtmb3Iocj0wO3I8ODA7cisrKXtpZihyPDQwKWlmKHI8MjApe3ZhciBiYT1EXnQmKEFeRCk7dmFyIFo9MTUxODUwMDI0OX1lbHNlIGJhPXReQV5ELFo9MTg1OTc3NTM5MztlbHNlIHI8NjA/KGJhPXQmQXxEJih0fEEpLFo9MjQwMDk1OTcwOCk6KGJhPXReQV5ELFo9MzM5NTQ2OTc4Mik7YmE9KChxPDw1fHE+Pj4yNykmNDI5NDk2NzI5NSkrCmJhK0UrWitwW3JdJjQyOTQ5NjcyOTU7RT1EO0Q9QTtBPSh0PDwzMHx0Pj4+MikmNDI5NDk2NzI5NTt0PXE7cT1iYX1lWzBdPWVbMF0rcSY0Mjk0OTY3Mjk1O2VbMV09ZVsxXSt0JjQyOTQ5NjcyOTU7ZVsyXT1lWzJdK0EmNDI5NDk2NzI5NTtlWzNdPWVbM10rRCY0Mjk0OTY3Mjk1O2VbNF09ZVs0XStFJjQyOTQ5NjcyOTV9ZnVuY3Rpb24gYyhxLHApe2lmKHR5cGVvZiBxPT09InN0cmluZyIpe3E9dW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KHEpKTtmb3IodmFyIHI9W10sdD0wLEE9cS5sZW5ndGg7dDxBOysrdClyLnB1c2gocS5jaGFyQ29kZUF0KHQpKTtxPXJ9cHx8KHA9cS5sZW5ndGgpO3I9MDtpZihsPT0wKWZvcig7cis2NDxwOyliKHEuc2xpY2UocixyKzY0KSkscis9NjQsbis9NjQ7Zm9yKDtyPHA7KWlmKGZbbCsrXT1xW3IrK10sbisrLGw9PTY0KWZvcihsPTAsYihmKTtyKzY0PHA7KWIocS5zbGljZShyLHIrNjQpKSxyKz02NCxuKz02NH1mdW5jdGlvbiBkKCl7dmFyIHE9W10sCnA9bio4O2w8NTY/YyhoLDU2LWwpOmMoaCw2NC0obC01NikpO2Zvcih2YXIgcj02MztyPj01NjtyLS0pZltyXT1wJjI1NSxwPj4+PTg7YihmKTtmb3Iocj1wPTA7cjw1O3IrKylmb3IodmFyIHQ9MjQ7dD49MDt0LT04KXFbcCsrXT1lW3JdPj50JjI1NTtyZXR1cm4gcX1mb3IodmFyIGU9W10sZj1bXSxnPVtdLGg9WzEyOF0saz0xO2s8NjQ7KytrKWhba109MDt2YXIgbCxuO2EoKTtyZXR1cm57cmVzZXQ6YSx1cGRhdGU6YyxkaWdlc3Q6ZCxmaDpmdW5jdGlvbigpe2Zvcih2YXIgcT1kKCkscD0iIixyPTA7cjxxLmxlbmd0aDtyKyspcCs9IjAxMjM0NTY3ODlBQkNERUYiLmNoYXJBdChNYXRoLmZsb29yKHFbcl0vMTYpKSsiMDEyMzQ1Njc4OUFCQ0RFRiIuY2hhckF0KHFbcl0lMTYpO3JldHVybiBwfX19O09qPWZ1bmN0aW9uKCl7dGhpcy5nPWRvY3VtZW50fHx7Y29va2llOiIifX07ClhqPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP1BqOmI7aWYoIVFqKXt2YXIgYzthPShjPWEubmF2aWdhdG9yKT09bnVsbD92b2lkIDA6Yy51c2VyQWdlbnREYXRhO2lmKCFhfHx0eXBlb2YgYS5nZXRIaWdoRW50cm9weVZhbHVlcyE9PSJmdW5jdGlvbiJ8fGEuYnJhbmRzJiZ0eXBlb2YgYS5icmFuZHMubWFwIT09ImZ1bmN0aW9uIilyZXR1cm4gUHJvbWlzZS5yZWplY3QoRXJyb3IoIm9hIikpO1JqKChhLmJyYW5kc3x8W10pLm1hcChmdW5jdGlvbihlKXt2YXIgZj1uZXcgU2o7Zj1fLlRqKGYsMSxlLmJyYW5kKTtyZXR1cm4gXy5UaihmLDIsZS52ZXJzaW9uKX0pKTt0eXBlb2YgYS5tb2JpbGU9PT0iYm9vbGVhbiImJl8uVWooVmosMixhLm1vYmlsZSk7UWo9YS5nZXRIaWdoRW50cm9weVZhbHVlcyhiKX12YXIgZD1uZXcgU2V0KGIpO3JldHVybiBRai50aGVuKGZ1bmN0aW9uKGUpe3ZhciBmPWxqKFZqKTtkLmhhcygicGxhdGZvcm0iKSYmXy5UaihmLDMsZS5wbGF0Zm9ybSk7ZC5oYXMoInBsYXRmb3JtVmVyc2lvbiIpJiYKXy5UaihmLDQsZS5wbGF0Zm9ybVZlcnNpb24pO2QuaGFzKCJhcmNoaXRlY3R1cmUiKSYmXy5UaihmLDUsZS5hcmNoaXRlY3R1cmUpO2QuaGFzKCJtb2RlbCIpJiZfLlRqKGYsNixlLm1vZGVsKTtkLmhhcygidWFGdWxsVmVyc2lvbiIpJiZfLlRqKGYsNyxlLnVhRnVsbFZlcnNpb24pO3JldHVybiBfLldqKGYpfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gXy5XaihWail9KX07WWo9ZnVuY3Rpb24oYSl7dGhpcy5nPXRoaXMuaD10aGlzLmo9YX07Xy5aaj1mdW5jdGlvbihhLGIpe3ZhciBjPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZD1jLnNsaWNlKCk7ZC5wdXNoLmFwcGx5KGQsYXJndW1lbnRzKTtyZXR1cm4gYS5hcHBseSh0aGlzLGQpfX07Xy5haz1mdW5jdGlvbihhLGIpe2EucWE/YigpOihhLld8fChhLlc9W10pLGEuVy5wdXNoKGIpKX07Yms9e1psOiEwfTtfLldqPWZ1bmN0aW9uKGEpe3JldHVybiBKU09OLnN0cmluZ2lmeShfLndoKGEpKX07Cm5qPXt9O21qPW51bGw7Y2s9e307Xy54aD1mdW5jdGlvbihhLGIpe2lmKGIhPT1jayl0aHJvdyBFcnJvcigiWiIpO3RoaXMubz1hO2lmKGEhPW51bGwmJmEubGVuZ3RoPT09MCl0aHJvdyBFcnJvcigiWSIpO307Xy54aC5wcm90b3R5cGUuZz1mdW5jdGlvbigpe3ZhciBhPXRoaXMubztpZihhPT1udWxsKWE9IiI7ZWxzZSBpZih0eXBlb2YgYSE9PSJzdHJpbmciKXtpZihfLlBoKXtmb3IodmFyIGI9IiIsYz0wLGQ9YS5sZW5ndGgtMTAyNDA7YzxkOyliKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsYS5zdWJhcnJheShjLGMrPTEwMjQwKSk7Yis9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLGM/YS5zdWJhcnJheShjKTphKTthPWJ0b2EoYil9ZWxzZSBhPW9qKGEpO2E9dGhpcy5vPWF9cmV0dXJuIGF9O18uZGs9Xy5OZyh2b2lkIDAsIjFvYSIpO2VrPXt9O3JqPTA7c2o9MDt6aj0vXi0/KFsxLTldWzAtOV0qfDApKFwuWzAtOV0rKT8kLzsKXy5maz1mdW5jdGlvbihhLGIsYyl7Xy5yaShhKTt2YXIgZD1hLkosZT1kW18uSF18MDtpZihjPT1udWxsKXJldHVybiBfLnRpKGQsZSxiKSxhO2Zvcih2YXIgZj1jPT09Xy5UaD83OmNbXy5IXXwwLGc9ZixoPV8uRWkoZiksaz1ofHxPYmplY3QuaXNGcm96ZW4oYyksbD0hMCxuPSEwLHE9MDtxPGMubGVuZ3RoO3ErKyl7dmFyIHA9Y1txXTtofHwocD1fLldnKHApLGwmJihsPSFwKSxuJiYobj1wKSl9aHx8KGY9bD8xMzo1LGY9bj9mJi00MDk3OmZ8NDA5Nik7ayYmZj09PWd8fChjPV8ubWkoYyksZz0wLGY9Xy5EaShmLGUpKTtmIT09ZyYmXy5TZyhjLGYpO2U9Xy50aShkLGUsYixjKTsyJmZ8fCEoNDA5NiZmfHwxNiZmKXx8Xy5zaShkLGUpO3JldHVybiBhfTtfLmdrPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/MDpjO2E9Q2ooXy5aaShhLGIpKTtyZXR1cm4gYSE9bnVsbD9hOmN9OwpfLmhrPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/Xy5qaTpjO2E9Xy5aaShhLGIsdm9pZCAwLHZvaWQgMCxLaik7cmV0dXJuIGEhPW51bGw/YTpjfTtfLlVqPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsYz09bnVsbD9jOl8ubmkoYykpfTtfLmlrPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsYz09bnVsbD9jOl8uQmooYykpfTtfLmprPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsYz09bnVsbD9jOl8uSmooYykpfTtfLlRqPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy4kaShhLGIsXy5MaihjKSl9O18ua2s9ZnVuY3Rpb24oYSxiLGMpe2lmKGMhPW51bGwpe2lmKCEoMCxfLmRpKShjKSl0aHJvdyBwaigiZW51bSIpO2N8PTB9cmV0dXJuIF8uJGkoYSxiLGMpfTsKbms9ZnVuY3Rpb24oKXt2YXIgYT1sayxiPW1rO3RoaXMuZz0xNzUyMzczNzU7dGhpcy5MYj1iO3RoaXMuaD1fLmJqO3RoaXMuZGVmYXVsdFZhbHVlPXZvaWQgMDt0aGlzLmo9YS5XbCE9bnVsbD9lazp2b2lkIDB9O25rLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbigpe18uUWModGhpcyl9O3ZhciBvaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIob2ssXy5KKTt2YXIgcGs9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIiI7aWYoL15hYm91dDooPzpibGFua3xzcmNkb2MpJC8udGVzdChhKSlyZXR1cm4gd2luZG93Lm9yaWdpbnx8IiI7YS5pbmRleE9mKCJibG9iOiIpPT09MCYmKGE9YS5zdWJzdHJpbmcoNSkpO2E9YS5zcGxpdCgiIyIpWzBdLnNwbGl0KCI/IilbMF07YT1hLnRvTG93ZXJDYXNlKCk7YS5pbmRleE9mKCIvLyIpPT0wJiYoYT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wrYSk7L15bXHdcLV0qOlwvXC8vLnRlc3QoYSl8fChhPXdpbmRvdy5sb2NhdGlvbi5ocmVmKTt2YXIgYj1hLnN1YnN0cmluZyhhLmluZGV4T2YoIjovLyIpKzMpLGM9Yi5pbmRleE9mKCIvIik7YyE9LTEmJihiPWIuc3Vic3RyaW5nKDAsYykpO2M9YS5zdWJzdHJpbmcoMCxhLmluZGV4T2YoIjovLyIpKTtpZighYyl0aHJvdyBFcnJvcigia2FgIithKTtpZihjIT09Imh0dHAiJiZjIT09Imh0dHBzIiYmYyE9PSJjaHJvbWUtZXh0ZW5zaW9uIiYmYyE9PSJtb3otZXh0ZW5zaW9uIiYmCmMhPT0iZmlsZSImJmMhPT0iYW5kcm9pZC1hcHAiJiZjIT09ImNocm9tZS1zZWFyY2giJiZjIT09ImNocm9tZS11bnRydXN0ZWQiJiZjIT09ImNocm9tZSImJmMhPT0iYXBwIiYmYyE9PSJkZXZ0b29scyIpdGhyb3cgRXJyb3IoImxhYCIrYyk7YT0iIjt2YXIgZD1iLmluZGV4T2YoIjoiKTtpZihkIT0tMSl7dmFyIGU9Yi5zdWJzdHJpbmcoZCsxKTtiPWIuc3Vic3RyaW5nKDAsZCk7aWYoYz09PSJodHRwIiYmZSE9PSI4MCJ8fGM9PT0iaHR0cHMiJiZlIT09IjQ0MyIpYT0iOiIrZX1yZXR1cm4gYysiOi8vIitiK2F9O3ZhciByaz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9U3RyaW5nKF8udi5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gZCYmYSYmYj9bYixxayhwayhkKSxhLGN8fG51bGwpXS5qb2luKCIgIik6bnVsbH0scWs9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU9W107aWYoKEFycmF5LmlzQXJyYXkoYyk/MjoxKT09MSlyZXR1cm4gZT1bYixhXSxfLnZjKGQsZnVuY3Rpb24oaCl7ZS5wdXNoKGgpfSksc2soZS5qb2luKCIgIikpO3ZhciBmPVtdLGc9W107Xy52YyhjLGZ1bmN0aW9uKGgpe2cucHVzaChoLmtleSk7Zi5wdXNoKGgudmFsdWUpfSk7Yz1NYXRoLmZsb29yKChuZXcgRGF0ZSkuZ2V0VGltZSgpLzFFMyk7ZT1mLmxlbmd0aD09MD9bYyxiLGFdOltmLmpvaW4oIjoiKSxjLGIsYV07Xy52YyhkLGZ1bmN0aW9uKGgpe2UucHVzaChoKX0pO2E9c2soZS5qb2luKCIgIikpO2E9W2MsYV07Zy5sZW5ndGg9PTB8fGEucHVzaChnLmpvaW4oIiIpKTtyZXR1cm4gYS5qb2luKCJfIil9LHNrPWZ1bmN0aW9uKGEpe3ZhciBiPQpOaigpO2IudXBkYXRlKGEpO3JldHVybiBiLmZoKCkudG9Mb3dlckNhc2UoKX07Xy5tPU9qLnByb3RvdHlwZTtfLm0uc2V0PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0hMTtpZih0eXBlb2YgYz09PSJvYmplY3QiKXt2YXIgZT1jLnNhbWVTaXRlO2Q9Yy5zZWN1cmV8fCExO3ZhciBmPWMuZG9tYWlufHx2b2lkIDA7dmFyIGc9Yy5wYXRofHx2b2lkIDA7dmFyIGg9Yy5CaX1pZigvWzs9XHNdLy50ZXN0KGEpKXRocm93IEVycm9yKCJtYWAiK2EpO2lmKC9bO1xyXG5dLy50ZXN0KGIpKXRocm93IEVycm9yKCJuYWAiK2IpO2g9PT12b2lkIDAmJihoPS0xKTt0aGlzLmcuY29va2llPWErIj0iK2IrKGY/Ijtkb21haW49IitmOiIiKSsoZz8iO3BhdGg9IitnOiIiKSsoaDwwPyIiOmg9PTA/IjtleHBpcmVzPSIrKG5ldyBEYXRlKDE5NzAsMSwxKSkudG9VVENTdHJpbmcoKToiO2V4cGlyZXM9IisobmV3IERhdGUoRGF0ZS5ub3coKStoKjFFMykpLnRvVVRDU3RyaW5nKCkpKyhkPyI7c2VjdXJlIjoiIikrKGUhPW51bGw/IjtzYW1lc2l0ZT0iK2U6IiIpfTsKXy5tLmdldD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hKyI9IixkPSh0aGlzLmcuY29va2llfHwiIikuc3BsaXQoIjsiKSxlPTAsZjtlPGQubGVuZ3RoO2UrKyl7Zj1fLkFjKGRbZV0pO2lmKGYubGFzdEluZGV4T2YoYywwKT09MClyZXR1cm4gZi5zbGljZShjLmxlbmd0aCk7aWYoZj09YSlyZXR1cm4iIn1yZXR1cm4gYn07Xy5tLnJlbW92ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5nZXQoYSkhPT12b2lkIDA7dGhpcy5zZXQoYSwiIix7Qmk6MCxwYXRoOmIsZG9tYWluOmN9KTtyZXR1cm4gZH07Xy5tLk9jPWZ1bmN0aW9uKCl7cmV0dXJuIHRrKHRoaXMpLmtleXN9O18ubS5pYj1mdW5jdGlvbigpe3JldHVybiB0ayh0aGlzKS52YWx1ZXN9O18ubS5jbGVhcj1mdW5jdGlvbigpe2Zvcih2YXIgYT10ayh0aGlzKS5rZXlzLGI9YS5sZW5ndGgtMTtiPj0wO2ItLSl0aGlzLnJlbW92ZShhW2JdKX07CnZhciB0az1mdW5jdGlvbihhKXthPShhLmcuY29va2llfHwiIikuc3BsaXQoIjsiKTtmb3IodmFyIGI9W10sYz1bXSxkLGUsZj0wO2Y8YS5sZW5ndGg7ZisrKWU9Xy5BYyhhW2ZdKSxkPWUuaW5kZXhPZigiPSIpLGQ9PS0xPyhiLnB1c2goIiIpLGMucHVzaChlKSk6KGIucHVzaChlLnN1YnN0cmluZygwLGQpKSxjLnB1c2goZS5zdWJzdHJpbmcoZCsxKSkpO3JldHVybntrZXlzOmIsdmFsdWVzOmN9fTt2YXIgdWs9ZnVuY3Rpb24oYSxiLGMsZCl7KGE9Xy52W2FdKXx8dHlwZW9mIGRvY3VtZW50PT09InVuZGVmaW5lZCJ8fChhPShuZXcgT2opLmdldChiKSk7cmV0dXJuIGE/cmsoYSxjLGQpOm51bGx9LHZrPWZ1bmN0aW9uKGEpe3ZhciBiPXBrKF8udj09bnVsbD92b2lkIDA6Xy52LmxvY2F0aW9uLmhyZWYpLGM9W10sZDsoZD1fLnYuX19TQVBJU0lEfHxfLnYuX19BUElTSUR8fF8udi5fXzNQU0FQSVNJRHx8Xy52Ll9fMVBTQVBJU0lEfHxfLnYuX19PVkVSUklERV9TSUQpP2Q9ITA6KHR5cGVvZiBkb2N1bWVudCE9PSJ1bmRlZmluZWQiJiYoZD1uZXcgT2osZD1kLmdldCgiU0FQSVNJRCIpfHxkLmdldCgiQVBJU0lEIil8fGQuZ2V0KCJfX1NlY3VyZS0zUEFQSVNJRCIpfHxkLmdldCgiX19TZWN1cmUtMVBBUElTSUQiKSksZD0hIWQpO2QmJihkPShiPWIuaW5kZXhPZigiaHR0cHM6Iik9PTB8fGIuaW5kZXhPZigiY2hyb21lLWV4dGVuc2lvbjoiKT09MHx8Yi5pbmRleE9mKCJjaHJvbWUtdW50cnVzdGVkOi8vbmV3LXRhYi1wYWdlIik9PQowfHxiLmluZGV4T2YoIm1vei1leHRlbnNpb246Iik9PTApP18udi5fX1NBUElTSUQ6Xy52Ll9fQVBJU0lELGR8fHR5cGVvZiBkb2N1bWVudD09PSJ1bmRlZmluZWQifHwoZD1uZXcgT2osZD1kLmdldChiPyJTQVBJU0lEIjoiQVBJU0lEIil8fGQuZ2V0KCJfX1NlY3VyZS0zUEFQSVNJRCIpKSwoZD1kP3JrKGQsYj8iU0FQSVNJREhBU0giOiJBUElTSURIQVNIIixhKTpudWxsKSYmYy5wdXNoKGQpLGImJigoYj11aygiX18xUFNBUElTSUQiLCJfX1NlY3VyZS0xUEFQSVNJRCIsIlNBUElTSUQxUEhBU0giLGEpKSYmYy5wdXNoKGIpLChhPXVrKCJfXzNQU0FQSVNJRCIsIl9fU2VjdXJlLTNQQVBJU0lEIiwiU0FQSVNJRDNQSEFTSCIsYSkpJiZjLnB1c2goYSkpKTtyZXR1cm4gYy5sZW5ndGg9PTA/bnVsbDpjLmpvaW4oIiAiKX07dmFyIHdrPWZ1bmN0aW9uKCl7fSx4az1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtyZXR1cm4gXy5WaShmdW5jdGlvbihmKXtzd2l0Y2goZi5nKXtjYXNlIDE6cmV0dXJuIGI9bmV3IENvbXByZXNzaW9uU3RyZWFtKCJnemlwIiksYz0obmV3IFJlc3BvbnNlKGIucmVhZGFibGUpKS5hcnJheUJ1ZmZlcigpLGQ9Yi53cml0YWJsZS5nZXRXcml0ZXIoKSxmLmgoZC53cml0ZSgobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoYSkpLDIpO2Nhc2UgMjpyZXR1cm4gZi5oKGQuY2xvc2UoKSwzKTtjYXNlIDM6cmV0dXJuIGU9VWludDhBcnJheSxmLmgoYyw0KTtjYXNlIDQ6cmV0dXJuIGYucmV0dXJuKG5ldyBlKGYuaikpfX0pfTt3ay5wcm90b3R5cGUuVGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGE8MTAyND8hMTp0eXBlb2YgQ29tcHJlc3Npb25TdHJlYW0hPT0idW5kZWZpbmVkIn07dmFyIHlrPWZ1bmN0aW9uKGEsYil7dGhpcy5oPWE7dGhpcy5vPWI7dGhpcy5nPSExO3RoaXMuaj1mdW5jdGlvbigpe3JldHVybiBEYXRlLm5vdygpfTt0aGlzLmw9dGhpcy5qKCl9LHprPWZ1bmN0aW9uKGEsYil7YS5oPWI7YS50aW1lciYmYS5nPyhhLnN0b3AoKSxhLnN0YXJ0KCkpOmEudGltZXImJmEuc3RvcCgpfTt5ay5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuZz0hMDt0aGlzLnRpbWVyfHwodGhpcy50aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS50aWNrKCl9LHRoaXMuaCksdGhpcy5sPXRoaXMuaigpKX07eWsucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmc9ITE7dGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCl9Owp5ay5wcm90b3R5cGUudGljaz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7aWYodGhpcy5nKXt2YXIgYj1NYXRoLm1heCh0aGlzLmooKS10aGlzLmwsMCk7Yjx0aGlzLmgqLjg/dGhpcy50aW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS50aWNrKCl9LHRoaXMuaC1iKToodGhpcy50aW1lciYmKGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXZvaWQgMCksdGhpcy5vKCksdGhpcy5nJiYodGhpcy5zdG9wKCksdGhpcy5zdGFydCgpKSl9ZWxzZSB0aGlzLnRpbWVyPXZvaWQgMH07dmFyIEFrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihBayxfLkopO3ZhciBCaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoQmssXy5KKTt2YXIgQ2s9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKENrLF8uSik7Q2sucHJvdG90eXBlLlBkPWZ1bmN0aW9uKCl7cmV0dXJuIF8uZGoodGhpcywxKX07dmFyIFNqPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihTaixfLkopO3ZhciBEaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoRGssXy5KKTt2YXIgUmo9ZnVuY3Rpb24oYSl7Xy5mayhWaiwxLGEpfSxFaz1fLk1qKERrKTt2YXIgRms9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEZrLF8uSik7dmFyIFBqPVsicGxhdGZvcm0iLCJwbGF0Zm9ybVZlcnNpb24iLCJhcmNoaXRlY3R1cmUiLCJtb2RlbCIsInVhRnVsbFZlcnNpb24iXSxWaj1uZXcgRGssUWo9bnVsbDt2YXIgR2s9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEdrLF8uSik7dmFyIEhrPWZ1bmN0aW9uKGEpe3JldHVybiBfLmtrKGEsMSwxKX07dmFyIElrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihJayxfLkopO0lrLnByb3RvdHlwZS5NYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywyKX07SWsucHJvdG90eXBlLmNiPWZ1bmN0aW9uKGEpe18uVGoodGhpcywyLGEpfTt2YXIgSms9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhLDQpfTtfLkIoSmssXy5KKTtfLktrPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSwzNyl9O18uQihfLktrLF8uSik7Xy5Lay5wcm90b3R5cGUuY2I9ZnVuY3Rpb24oYSl7Xy5yaSh0aGlzKTt2YXIgYj10aGlzLkosYz1fLklpKHRoaXMsYixiW18uSF18MCxJaywzLDIsITApO2lmKHR5cGVvZiBhIT09Im51bWJlciJ8fGE8MHx8YT5jLmxlbmd0aCl0aHJvdyBFcnJvcigpO2EhPXZvaWQgMD9jLnNwbGljZShhLDEsdm9pZCAwKTpjLnB1c2godm9pZCAwKTt2YXIgZD1hPWM9PT1fLlRoPzc6Y1tfLkhdfDAsZT1fLldnKCk7ZT8oYSY9LTksYy5sZW5ndGg9PT0xJiYoYSY9LTQwOTcpKTphfD00MDk2O2EhPT1kJiZfLlNnKGMsYSk7ZXx8Xy5zaShiKX07Xy5Maz1mdW5jdGlvbihhLGIpe3JldHVybiBfLlRqKGEsOCxiKX07dmFyIE1rPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSwxOSl9O18uQihNayxfLkopO01rLnByb3RvdHlwZS52Yz1mdW5jdGlvbihhKXtyZXR1cm4gXy5rayh0aGlzLDIsYSl9O3ZhciBPaz1mdW5jdGlvbihhLGIpe3RoaXMuYWI9Yj1iPT09dm9pZCAwPyExOmI7dGhpcy5qPXRoaXMubG9jYWxlPW51bGw7dGhpcy5oPTA7dGhpcy5sPSExO3RoaXMuZz1uZXcgTWs7TnVtYmVyLmlzSW50ZWdlcihhKSYmdGhpcy5nLnZjKGEpO2J8fCh0aGlzLmxvY2FsZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJsYW5nIikpO05rKHRoaXMsbmV3IEdrKX07T2sucHJvdG90eXBlLnZjPWZ1bmN0aW9uKGEpe3RoaXMuZy52YyhhKTtyZXR1cm4gdGhpc307CnZhciBOaz1mdW5jdGlvbihhLGIpe18uTChhLmcsMSxiKTtfLmRqKGIsMSl8fEhrKGIpO2EuYWJ8fChiPVBrKGEpLF8uTihiLDUpfHxfLlRqKGIsNSxhLmxvY2FsZSkpO2EuaiYmKGI9UGsoYSksXy5iaihiLERrLDkpfHxfLkwoYiw5LGEuaikpfSxRaz1mdW5jdGlvbihhLGIpe2EuaD1ifSxSaz1mdW5jdGlvbihhKXt2YXIgYj1iPT09dm9pZCAwP1BqOmI7dmFyIGM9YS5hYj92b2lkIDA6Xy5tYigpO2M/WGooYyxiKS50aGVuKGZ1bmN0aW9uKGQpe2Euaj1FayhkIT1udWxsP2Q6IltdIik7ZD1QayhhKTtfLkwoZCw5LGEuaik7cmV0dXJuITB9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiExfSk6UHJvbWlzZS5yZXNvbHZlKCExKX0sUGs9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5iaihhLmcsR2ssMSk7Ynx8KGI9bmV3IEdrLE5rKGEsYikpO2E9YjtiPV8uYmooYSxGaywxMSk7Ynx8KGI9bmV3IEZrLF8uTChhLDExLGIpKTtyZXR1cm4gYn0sU2s9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7Yz1jPT09CnZvaWQgMD8wOmM7ZD1kPT09dm9pZCAwPzA6ZDtlPWU9PT12b2lkIDA/bnVsbDplO2Y9Zj09PXZvaWQgMD8wOmY7Zz1nPT09dm9pZCAwPzA6ZztpZighYS5hYil7dmFyIGg9UGsoYSk7dmFyIGs9bmV3IENrO2s9Xy5rayhrLDEsYS5oKTtrPV8uVWooaywyLGEubCk7ZD1fLmlrKGssMyxkPjA/ZDp2b2lkIDApO2Q9Xy5payhkLDQsZj4wP2Y6dm9pZCAwKTtkPV8uaWsoZCw1LGc+MD9nOnZvaWQgMCk7Zj1kLko7Zz1mW18uSF18MDtkPV8uV2coZCxnKT9kOl8uSWgoZCxmLGcpP18uSGgoZCxmKTpuZXcgZC5jb25zdHJ1Y3RvcihfLkdoKGYsZywhMCkpO18uTChoLDEwLGQpfWE9bGooYS5nKTtoPURhdGUubm93KCkudG9TdHJpbmcoKTthPV8uJGkoYSw0LGg9PW51bGw/aDpfLkpqKGgpKTtiPV8uZmsoYSwzLGIuc2xpY2UoKSk7ZSYmKGE9bmV3IEFrLGU9Xy5payhhLDEzLGUpLGE9bmV3IEJrLGU9Xy5MKGEsMixlKSxhPW5ldyBKayxlPV8uTChhLDEsZSksZT1fLmtrKGUsMiw5KSxfLkwoYiwxOCwKZSkpO2MmJl8uamsoYiwxNCxjKTtyZXR1cm4gYn07WWoucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5nPXRoaXMuaD10aGlzLmp9O1lqLnByb3RvdHlwZS5NYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmh9O3ZhciBsaz1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEsOCl9O18uQihsayxfLkopO3ZhciBUaz1fLk1qKGxrKTt2YXIgbWs9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKG1rLF8uSik7dmFyIFVrO1VrPW5ldyBuazt2YXIgWWs9ZnVuY3Rpb24oYSl7Xy51LmNhbGwodGhpcyk7dmFyIGI9dGhpczt0aGlzLmc9W107dGhpcy5sYT0iIjt0aGlzLks9dGhpcy5MPSExO3RoaXMucmE9dGhpcy5JPS0xO3RoaXMuUj0hMTt0aGlzLkQ9dGhpcy5leHBlcmltZW50SWRzPW51bGw7dGhpcy5BPXRoaXMubD0wO3RoaXMuQz1udWxsO3RoaXMuRj10aGlzLkc9MDt0aGlzLndhPTE7dGhpcy53Yz0wO3RoaXMuT2I9YS5PYjt0aGlzLnRiPWEudGJ8fGZ1bmN0aW9uKCl7fTt0aGlzLmo9bmV3IE9rKGEuT2IsYS5hYik7dGhpcy56YT1hLnphfHxudWxsO3RoaXMuQ2I9YS5DYnx8bnVsbDt0aGlzLkI9YS5hanx8bnVsbDt0aGlzLm1iPWEubWJ8fG51bGw7dGhpcy5jYz1hLmNjfHwhMTt0aGlzLndpdGhDcmVkZW50aWFscz0hYS5NYzt0aGlzLmFiPWEuYWJ8fCExO3RoaXMuVD0hdGhpcy5hYiYmISFfLm1iKCkmJiEhXy5tYigpLm5hdmlnYXRvciYmXy5tYigpLm5hdmlnYXRvci5zZW5kQmVhY29uIT09dm9pZCAwO3RoaXMuUD10eXBlb2YgVVJMU2VhcmNoUGFyYW1zIT09CiJ1bmRlZmluZWQiJiYhIShuZXcgVVJMKFZrKCkpKS5zZWFyY2hQYXJhbXMmJiEhKG5ldyBVUkwoVmsoKSkpLnNlYXJjaFBhcmFtcy5zZXQ7dmFyIGM9SGsobmV3IEdrKTtOayh0aGlzLmosYyk7dGhpcy5vPW5ldyBZaigxRTQpO2E9V2sodGhpcyxhLk9lKTt0aGlzLmg9bmV3IHlrKHRoaXMuby5NYSgpLGEpO3RoaXMuTz1uZXcgeWsoNkU1LGEpO3RoaXMuY2N8fHRoaXMuTy5zdGFydCgpO2lmKCF0aGlzLmFiKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2lmKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJoaWRkZW4iKXtYayhiKTt2YXIgZjsoZj1iLkMpPT1udWxsfHxmLmZsdXNoKCl9fSk7dmFyIGQsZTsoZD1fLm1iKCkpPT1udWxsfHwoZT1kLmFkZEV2ZW50TGlzdGVuZXIpPT1udWxsfHxlLmNhbGwoZCwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7WGsoYik7dmFyIGY7KGY9Yi5DKT09bnVsbHx8Zi5mbHVzaCgpfSl9fSxaayxibCwKJGs7Xy5CKFlrLF8udSk7dmFyIFdrPWZ1bmN0aW9uKGEsYil7aWYoIWEuUClyZXR1cm4gZnVuY3Rpb24oKXt9O3ZhciBjPWZ1bmN0aW9uKCl7YS5mbHVzaCgpfTtyZXR1cm4gYj9mdW5jdGlvbigpe2IoKS50aGVuKGMpfTpjfTtZay5wcm90b3R5cGUuTT1mdW5jdGlvbigpe1hrKHRoaXMpO3RoaXMuaC5zdG9wKCk7dGhpcy5PLnN0b3AoKTtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKX07Wms9ZnVuY3Rpb24oYSl7YS5CfHwoYS5CPVZrKCkpO3RyeXtyZXR1cm4obmV3IFVSTChhLkIpKS50b1N0cmluZygpfWNhdGNoKGIpe3JldHVybihuZXcgVVJMKGEuQixfLm1iKCkubG9jYXRpb24ub3JpZ2luKSkudG9TdHJpbmcoKX19O18uYWw9ZnVuY3Rpb24oYSxiKXtpZihiIGluc3RhbmNlb2YgXy5LaylhLmxvZyhiKTtlbHNlIHRyeXt2YXIgYz1fLkxrKG5ldyBfLktrLF8uV2ooYikpO2EubG9nKGMpfWNhdGNoKGQpeyRrKGEsNCwxKX19OwpibD1mdW5jdGlvbihhLGIpe2Eubz1uZXcgWWooYjwxPzE6Yik7emsoYS5oLGEuby5NYSgpKX07JGs9ZnVuY3Rpb24oYSxiLGMpe2EuQyYmYS5DLlNsKGIsYyl9OwpZay5wcm90b3R5cGUubG9nPWZ1bmN0aW9uKGEpeyRrKHRoaXMsMiwxKTtpZih0aGlzLlApe2E9bGooYSk7dmFyIGI9dGhpcy53YSsrO2I9YT1fLmprKGEsMjEsYik7dmFyIGM9Xy5aaShiLDEpO3ZhciBkPWQ9PT12b2lkIDA/ITE6ZDt2YXIgZT10eXBlb2YgYztkPWM9PW51bGw/YzplPT09ImJpZ2ludCI/U3RyaW5nKCgwLF8uYmkpKDY0LGMpKTpBaihjKT9lPT09InN0cmluZyI/RmooYyk6ZD9IaihjKTpHaihjKTp2b2lkIDA7ZD09bnVsbCYmKGQ9RGF0ZS5ub3coKSxkPU51bWJlci5pc0Zpbml0ZShkKT9kLnRvU3RyaW5nKCk6IjAiLF8uJGkoYiwxLGQ9PW51bGw/ZDpfLkpqKGQpKSk7ZD1fLlppKGIsMTUsdm9pZCAwLHZvaWQgMCxLaik7ZCE9bnVsbCYmKHR5cGVvZiBkPT09ImJpZ2ludCI/KDAsXy52aCkoZCk/ZD1OdW1iZXIoZCk6KGQ9KDAsXy5iaSkoNjQsZCksZD0oMCxfLnZoKShkKT9OdW1iZXIoZCk6U3RyaW5nKGQpKTpkPUFqKGQpP3R5cGVvZiBkPT09Im51bWJlciI/R2ooZCk6CkZqKGQpOnZvaWQgMCk7ZCE9bnVsbHx8Xy5qayhiLDE1LChuZXcgRGF0ZSkuZ2V0VGltZXpvbmVPZmZzZXQoKSo2MCk7dGhpcy5leHBlcmltZW50SWRzJiYoZD1saih0aGlzLmV4cGVyaW1lbnRJZHMpLF8uTChiLDE2LGQpKTskayh0aGlzLDEsMSk7Yj10aGlzLmcubGVuZ3RoLTFFMysxO2I+MCYmKHRoaXMuZy5zcGxpY2UoMCxiKSx0aGlzLmwrPWIsJGsodGhpcywzLGIpKTt0aGlzLmcucHVzaChhKTt0aGlzLmNjfHx0aGlzLmguZ3x8dGhpcy5oLnN0YXJ0KCl9fTsKWWsucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcztpZih0aGlzLmcubGVuZ3RoPT09MClhJiZhKCk7ZWxzZXt2YXIgZD1EYXRlLm5vdygpO2lmKHRoaXMucmE+ZCYmdGhpcy5JPGQpYiYmYigidGhyb3R0bGVkIik7ZWxzZXt0aGlzLnphJiYodHlwZW9mIHRoaXMuemEuUGQ9PT0iZnVuY3Rpb24iP1FrKHRoaXMuaix0aGlzLnphLlBkKCkpOnRoaXMuai5oPTApO3ZhciBlPXRoaXMuZy5sZW5ndGgsZj1Tayh0aGlzLmosdGhpcy5nLHRoaXMubCx0aGlzLkEsdGhpcy5DYix0aGlzLkcsdGhpcy5GKSxnPXRoaXMudGIoKTtpZihnJiZ0aGlzLmxhPT09ZyliJiZiKCJzdGFsZS1hdXRoLXRva2VuIik7ZWxzZXt0aGlzLmc9W107dGhpcy5oLmcmJnRoaXMuaC5zdG9wKCk7dGhpcy5sPTA7ZD1fLldqKGYpO3ZhciBoO3RoaXMuRCYmdGhpcy5ELlRhKGQubGVuZ3RoKSYmKGg9eGsoZCkpO3ZhciBrPWNsKHRoaXMsZCxnKSxsPWZ1bmN0aW9uKHApe2Muby5yZXNldCgpO3prKGMuaCwKYy5vLk1hKCkpO2lmKHApe3ZhciByPW51bGw7dHJ5e3ZhciB0PUpTT04uc3RyaW5naWZ5KEpTT04ucGFyc2UocC5yZXBsYWNlKCIpXX0nXG4iLCIiKSkpO3I9VGsodCl9Y2F0Y2goRSl7fWlmKHIpe3A9TnVtYmVyKF8uaGsociwxLF8uYmgoIi0xIikpKTtwPjAmJihjLkk9RGF0ZS5ub3coKSxjLnJhPWMuSStwKTtwPVVrLmc7dD1fLnBoKF8ucWgpO3ZhciBBO18uT2cmJnQmJigoQT1yLkpbdF0pPT1udWxsP3ZvaWQgMDpBW3BdKSE9bnVsbCYmXy5NZyhfLlJoLDMpO2E6e0E9VWsuZzt2YXIgRD1EPT09dm9pZCAwPyExOkQ7aWYoXy5waChfLlNoKSYmXy5waChfLnFoKSYmdm9pZCAwPT09Xy5TaCl7cD1yLko7dD1wW18ucWhdO2lmKCF0KWJyZWFrIGE7aWYodD10LmJtKXRyeXt0KHAsQSxiayk7YnJlYWsgYX1jYXRjaChFKXtfLnJiKEUpfX1EJiYoRD1yLkosKHA9Xy5waChfLnFoKSkmJnAgaW4gRCYmKEQ9RFtwXSkmJmRlbGV0ZSBEW0FdKX1EPVVrLkxiP1VrLmgocixVay5MYixVay5nLFVrLmopOgpVay5oKHIsVWsuZyxudWxsLFVrLmopO2lmKEQ9RD09PW51bGw/dm9pZCAwOkQpRD1fLmdrKEQsMSwtMSksRCE9PS0xJiYoYy5SfHxibChjLEQpKX19YSYmYSgpO2MuQT0wfSxuPWZ1bmN0aW9uKHAscil7dmFyIHQ9Xy5jaihmLF8uS2ssMyk7dmFyIEE9TnVtYmVyKF8uaGsoZiwxNCkpLEQ9Yy5vO0QuZz1NYXRoLm1pbigzRTUsRC5nKjIpO0QuaD1NYXRoLm1pbigzRTUsRC5nK01hdGgucm91bmQoLjEqKE1hdGgucmFuZG9tKCktLjUpKjIqRC5nKSk7emsoYy5oLGMuby5NYSgpKTtwPT09NDAxJiZnJiYoYy5sYT1nKTtBJiYoYy5sKz1BKTtyPT09dm9pZCAwJiYocj01MDA8PXAmJnA8NjAwfHxwPT09NDAxfHxwPT09MCk7ciYmKGMuZz10LmNvbmNhdChjLmcpLGMuY2N8fGMuaC5nfHxjLmguc3RhcnQoKSk7JGsoYyw3LDEpO2ImJmIoIm5ldC1zZW5kLWZhaWxlZCIscCk7KytjLkF9LHE9ZnVuY3Rpb24oKXtjLnphJiZjLnphLnNlbmQoayxsLG4pfTtoP2gudGhlbihmdW5jdGlvbihwKXskayhjLAo1LGUpO2submVbIkNvbnRlbnQtRW5jb2RpbmciXT0iZ3ppcCI7ay5uZVsiQ29udGVudC1UeXBlIl09ImFwcGxpY2F0aW9uL2JpbmFyeSI7ay5ib2R5PXA7ay5aZz0yO3EoKX0sZnVuY3Rpb24oKXskayhjLDYsZSk7cSgpfSk6cSgpfX19fTsKdmFyIGNsPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/bnVsbDpjO3ZhciBkPWQ9PT12b2lkIDA/YS53aXRoQ3JlZGVudGlhbHM6ZDt2YXIgZT17fSxmPW5ldyBVUkwoWmsoYSkpO2MmJihlLkF1dGhvcml6YXRpb249Yyk7YS5tYiYmKGVbIlgtR29vZy1BdXRoVXNlciJdPWEubWIsZi5zZWFyY2hQYXJhbXMuc2V0KCJhdXRodXNlciIsYS5tYikpO3JldHVybnt1cmw6Zi50b1N0cmluZygpLGJvZHk6YixaZzoxLG5lOmUsTGk6IlBPU1QiLHdpdGhDcmVkZW50aWFsczpkLHdjOmEud2N9fSxYaz1mdW5jdGlvbihhKXthLmoubD0hMDthLkwmJihhLmouaD0zLGRsKGEpKTthLksmJihhLmouaD0yLGVsKGEpKTthLmZsdXNoKCk7YS5qLmw9ITF9LGRsPWZ1bmN0aW9uKGEpe2ZsKGEsMzIsMTAsZnVuY3Rpb24oYixjKXtiPW5ldyBVUkwoYik7Yi5zZWFyY2hQYXJhbXMuc2V0KCJmb3JtYXQiLCJqc29uIik7dmFyIGQ9ITE7dHJ5e2Q9Xy5tYigpLm5hdmlnYXRvci5zZW5kQmVhY29uKGIudG9TdHJpbmcoKSwKXy5XaihjKSl9Y2F0Y2goZSl7fWR8fChhLlQ9ITEpO3JldHVybiBkfSl9LGVsPWZ1bmN0aW9uKGEpe2ZsKGEsNiw1LGZ1bmN0aW9uKGIsYyl7Yj1uZXcgVVJMKGIpO2Iuc2VhcmNoUGFyYW1zLnNldCgiZm9ybWF0IiwiYmFzZTY0anNvbiIpO3ZhciBkPWIuc2VhcmNoUGFyYW1zLGU9ZC5zZXQ7Yz1fLldqKGMpO2Zvcih2YXIgZj1bXSxnPTAsaD0wO2g8Yy5sZW5ndGg7aCsrKXt2YXIgaz1jLmNoYXJDb2RlQXQoaCk7az4yNTUmJihmW2crK109ayYyNTUsaz4+PTgpO2ZbZysrXT1rfWM9b2ooZiwzKTtlLmNhbGwoZCwicCIsYyk7Yj1iLnRvU3RyaW5nKCk7aWYoYi5sZW5ndGg+MTUzNjApcmV0dXJuITE7KG5ldyBJbWFnZSkuc3JjPWI7cmV0dXJuITB9KX0sZmw9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYS5nLmxlbmd0aCE9PTApe3ZhciBlPW5ldyBVUkwoWmsoYSkpO2Uuc2VhcmNoUGFyYW1zLmRlbGV0ZSgiZm9ybWF0Iik7dmFyIGY9YS50YigpO2YmJmUuc2VhcmNoUGFyYW1zLnNldCgiYXV0aCIsCmYpO2Uuc2VhcmNoUGFyYW1zLnNldCgiYXV0aHVzZXIiLGEubWJ8fCIwIik7Zm9yKGY9MDtmPGMmJmEuZy5sZW5ndGg7KytmKXt2YXIgZz1hLmcuc2xpY2UoMCxiKSxoPVNrKGEuaixnLGEubCxhLkEsYS5DYixhLkcsYS5GKTtpZighZChlLnRvU3RyaW5nKCksaCkpeysrYS5BO2JyZWFrfWEubD0wO2EuQT0wO2EuRz0wO2EuRj0wO2EuZz1hLmcuc2xpY2UoZy5sZW5ndGgpfWEuaC5nJiZhLmguc3RvcCgpfX0sVms9ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9wbGF5Lmdvb2dsZS5jb20vbG9nP2Zvcm1hdD1qc29uJmhhc2Zhc3Q9dHJ1ZSJ9O3ZhciBnbD1mdW5jdGlvbigpe3RoaXMuVmc9dHlwZW9mIEFib3J0Q29udHJvbGxlciE9PSJ1bmRlZmluZWQifTsKZ2wucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMsZSxmLGcsaCxrLGwsbixxLHAscjtyZXR1cm4gXy5WaShmdW5jdGlvbih0KXtzd2l0Y2godC5nKXtjYXNlIDE6cmV0dXJuIGY9KGU9ZC5WZz9uZXcgQWJvcnRDb250cm9sbGVyOnZvaWQgMCkmJmEud2M+MD9zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5hYm9ydCgpfSxhLndjKTp2b2lkIDAsdC5GKDIsMyksZz1PYmplY3QuYXNzaWduKHt9LHttZXRob2Q6YS5MaSxoZWFkZXJzOk9iamVjdC5hc3NpZ24oe30sYS5uZSl9LGEuYm9keSYme2JvZHk6YS5ib2R5fSxhLndpdGhDcmVkZW50aWFscyYme2NyZWRlbnRpYWxzOiJpbmNsdWRlIn0se3NpZ25hbDphLndjJiZlP2Uuc2lnbmFsOm51bGx9KSx0LmgoZmV0Y2goYS51cmwsZyksNSk7Y2FzZSA1Omg9dC5qO2lmKGguc3RhdHVzIT09MjAwKXsoaz1jKT09bnVsbHx8ayhoLnN0YXR1cyk7dC54YSgzKTticmVha31pZigobD1iKT09bnVsbCl7dC54YSg3KTticmVha31yZXR1cm4gdC5oKGgudGV4dCgpLAo4KTtjYXNlIDg6bCh0LmopO2Nhc2UgNzpjYXNlIDM6dC5MKCk7Y2xlYXJUaW1lb3V0KGYpO3QucWEoMCk7YnJlYWs7Y2FzZSAyOm49dC5EKCk7c3dpdGNoKChxPW4pPT1udWxsP3ZvaWQgMDpxLm5hbWUpe2Nhc2UgIkFib3J0RXJyb3IiOihwPWMpPT1udWxsfHxwKDQwOCk7YnJlYWs7ZGVmYXVsdDoocj1jKT09bnVsbHx8cig0MDApfXQueGEoMyl9fSl9O2dsLnByb3RvdHlwZS5QZD1mdW5jdGlvbigpe3JldHVybiA0fTtfLmhsPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwPyIwIjpiO18udS5jYWxsKHRoaXMpO3RoaXMuT2I9YTt0aGlzLm1iPWI7dGhpcy5BPSJodHRwczovL3BsYXkuZ29vZ2xlLmNvbS9sb2c/Zm9ybWF0PWpzb24maGFzZmFzdD10cnVlIjt0aGlzLmc9dGhpcy5DYj10aGlzLnphPXRoaXMuaD1udWxsO3RoaXMubD10aGlzLm89ITE7dGhpcy5qPW51bGx9O18uQihfLmhsLF8udSk7Xy5pbD1mdW5jdGlvbihhLGIpe2EudGI9YjtyZXR1cm4gYX07Xy5qbD1mdW5jdGlvbihhKXthLm89ITA7cmV0dXJuIGF9O18uaGwucHJvdG90eXBlLk1jPWZ1bmN0aW9uKCl7dGhpcy5CPSEwO3JldHVybiB0aGlzfTsKXy5rbD1mdW5jdGlvbihhKXthLnphfHwoYS56YT1uZXcgZ2wpO3ZhciBiPW5ldyBZayh7T2I6YS5PYix0YjphLnRiP2EudGI6dmssbWI6YS5tYixhajphLkEsYWI6ITEsY2M6ITEsTWM6YS5CLE9lOmEuT2UsemE6YS56YX0pO18uYWsoYSxfLlpqKF8ucGEsYikpO2lmKGEuaCl7dmFyIGM9YS5oLGQ9UGsoYi5qKTtfLlRqKGQsNyxjKX1iLkQ9bmV3IHdrO2EuQ2ImJihiLkNiPWEuQ2IpO2EuZyYmKChkPWEuZyk/KGIuZXhwZXJpbWVudElkc3x8KGIuZXhwZXJpbWVudElkcz1uZXcgb2spLGM9Yi5leHBlcmltZW50SWRzLGQ9Xy5XaihkKSxfLlRqKGMsNCxkKSk6Yi5leHBlcmltZW50SWRzJiZfLiRpKGIuZXhwZXJpbWVudElkcyw0KSk7YS5vJiYoYi5MPWEubyYmYi5UKTthLmwmJihiLks9YS5sKTthLmomJihjPWEuaixiLlI9ITAsYmwoYixjKSk7UmsoYi5qKTthLnphLnZjJiZhLnphLnZjKGEuT2IpO2EuemEuUWkmJmEuemEuUWkoYik7cmV0dXJuIGJ9O18ubGw9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKF8ubGwsXy5KKTtfLm09Xy5sbC5wcm90b3R5cGU7Xy5tLkphPWZ1bmN0aW9uKCl7cmV0dXJuIF8uTih0aGlzLDE2KX07Xy5tLk5hPWZ1bmN0aW9uKGEpe3JldHVybiBfLlRqKHRoaXMsMTYsYSl9O18ubS5vYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywxKX07Xy5tLm5hPWZ1bmN0aW9uKGEpe3JldHVybiBfLlRqKHRoaXMsMSxhKX07Xy5tLk9kPWZ1bmN0aW9uKCl7cmV0dXJuIF8uZGoodGhpcyw1Myl9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLm1sPWZ1bmN0aW9uKGEpe3ZhciBiPV8uS2EoKTthPWI/Yi5jcmVhdGVIVE1MKGEpOmE7cmV0dXJuIG5ldyBfLkRjKGEpfTtfLm5sPWZ1bmN0aW9uKGEsYil7Yj1fLkVnKGIpO2IhPT12b2lkIDAmJihhLmhyZWY9Yil9O18ub2w9e307Xy5wbD1mdW5jdGlvbihhKXt0aGlzLmc9YX07Xy5wbC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTtfLnFsPXt9O18uemY9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiSyIpO307Xy56Zi5wcm90b3R5cGUuSmQ9bnVsbDtfLnpmLnByb3RvdHlwZS5tYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbnRlbnR9O18uemYucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29udGVudH07Xy56Zi5wcm90b3R5cGUuVGI9ZnVuY3Rpb24oKXtpZih0aGlzLlpiIT09Xy5xbCl0aHJvdyBFcnJvcigiTCIpO3JldHVybiBfLm1sKHRoaXMudG9TdHJpbmcoKSl9O3ZhciBybD1mdW5jdGlvbigpe18uemYuY2FsbCh0aGlzKX07Cl8uRyhybCxfLnpmKTtybC5wcm90b3R5cGUuWmI9Xy5xbDt2YXIgc2w9ZnVuY3Rpb24oKXtfLnpmLmNhbGwodGhpcyl9O18uRyhzbCxfLnpmKTtzbC5wcm90b3R5cGUuWmI9Xy5vbDtzbC5wcm90b3R5cGUuSmQ9MTtzbC5wcm90b3R5cGUuaj1mdW5jdGlvbigpe3JldHVybiBuZXcgXy5wbCh0aGlzLnRvU3RyaW5nKCkpfTtfLnRsPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYyl7dGhpcy5jb250ZW50PWN9Yi5wcm90b3R5cGU9YS5wcm90b3R5cGU7cmV0dXJuIGZ1bmN0aW9uKGMsZCl7Yz1uZXcgYihTdHJpbmcoYykpO2QhPT12b2lkIDAmJihjLkpkPWQpO3JldHVybiBjfX0ocmwpO18udWw9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihjKXt0aGlzLmNvbnRlbnQ9Y31iLnByb3RvdHlwZT1hLnByb3RvdHlwZTtyZXR1cm4gZnVuY3Rpb24oYyl7cmV0dXJuIG5ldyBiKFN0cmluZyhjKSl9fShzbCk7Xy52bD1SZWdFeHAucHJvdG90eXBlLmhhc093blByb3BlcnR5KCJzdGlja3kiKTtfLndsPW5ldyBSZWdFeHAoKF8udmw/IiI6Il4iKSsiKD86IXwvPyhbYS16QS1aXVthLXpBLVowLTk6LV0qKSkiLF8udmw/Imd5IjoiZyIpO18ueGw9ZnVuY3Rpb24oKXtfLnpmLmNhbGwodGhpcyl9O18uQihfLnhsLHJsKTsKXy54bC5wcm90b3R5cGUubWE9ZnVuY3Rpb24oKXtpZih0aGlzLmNvbnRlbnQhPT12b2lkIDApcmV0dXJuIHRoaXMuY29udGVudDtmb3IodmFyIGE9IiIsYj1fLkModGhpcy5VKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSlhKz1jLnZhbHVlO3JldHVybiBhfTtfLnhsLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hKCl9O18ueWw9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7dGhpcy5jb250ZW50PSIifWEucHJvdG90eXBlPV8ueGwucHJvdG90eXBlO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgYX19KCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ubGEoImVsX21haW5fY3NzIik7CgpfLm1hKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ubGEoImVsX21haW4iKTsKLyoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgemw9ZnVuY3Rpb24oYSxiKXt0aGlzLng9YSE9PXZvaWQgMD9hOjA7dGhpcy55PWIhPT12b2lkIDA/YjowfSxBbD1mdW5jdGlvbihhLGIpe3ZhciBjPXt9LGQ7Zm9yKGQgaW4gYSljW2RdPWIuY2FsbCh2b2lkIDAsYVtkXSxkLGEpO3JldHVybiBjfSxCbD1mdW5jdGlvbihhLGIpe3ZhciBjPWIuY3JlYXRlUmFuZ2UoKTtjLnNlbGVjdE5vZGUoYi5ib2R5KTthPV8ubWwoYSk7cmV0dXJuIGMuY3JlYXRlQ29udGV4dHVhbEZyYWdtZW50KF8ua2ooYSkpfSxDbD1mdW5jdGlvbihhKXthPWEubm9kZU5hbWU7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YToiRk9STSJ9LERsPWZ1bmN0aW9uKGEpe2E9YS5ub2RlVHlwZTtyZXR1cm4gYT09PTF8fHR5cGVvZiBhIT09Im51bWJlciJ9LEVsPWZ1bmN0aW9uKGEsYixjKXthLnNldEF0dHJpYnV0ZShiLGMpfSxGbD1mdW5jdGlvbihhKXtyZXR1cm4gXy5NYShhKX0sR2w9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5yaShhKTt2YXIgZT1hLkosZj1lW18uSF18CjA7aWYoYz09bnVsbClyZXR1cm4gXy50aShlLGYsYiksYTt2YXIgZz1jPT09Xy5UaD83OmNbXy5IXXwwLGg9ZyxrPV8uRWkoZyksbD1rfHxPYmplY3QuaXNGcm96ZW4oYyk7a3x8KGc9MCk7bHx8KGM9Xy5taShjKSxoPTAsZz1fLkRpKGcsZiksbD0hMSk7Z3w9NTtrPTQmZz81MTImZz81MTI6MTAyNCZnPzEwMjQ6MDp2b2lkIDA7az1rIT1udWxsP2s6MTAyNDtnfD1rO2Zvcih2YXIgbj0wO248Yy5sZW5ndGg7bisrKXt2YXIgcT1jW25dLHA9ZChxLGspO09iamVjdC5pcyhxLHApfHwobCYmKGM9Xy5taShjKSxoPTAsZz1fLkRpKGcsZiksbD0hMSksY1tuXT1wKX1nIT09aCYmKGwmJihjPV8ubWkoYyksZz1fLkRpKGcsZikpLF8uU2coYyxnKSk7Xy50aShlLGYsYixjKTtyZXR1cm4gYX0sSGw9ZnVuY3Rpb24oYSl7aWYoXy5PZyl7dmFyIGI7cmV0dXJuKGI9YVtfLmRrXSkhPW51bGw/YjphW18uZGtdPW5ldyBNYXB9aWYoXy5kayBpbiBhKXJldHVybiBhW18uZGtdO2I9bmV3IE1hcDtPYmplY3QuZGVmaW5lUHJvcGVydHkoYSwKXy5kayx7dmFsdWU6Yn0pO3JldHVybiBifSxJbD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLmdldChkKTtpZihlIT1udWxsKXJldHVybiBlO2Zvcih2YXIgZj1lPTA7ZjxkLmxlbmd0aDtmKyspe3ZhciBnPWRbZl07Xy51aShiLGcpIT1udWxsJiYoZSE9PTAmJihjPV8udGkoYixjLGUpKSxlPWcpfWEuc2V0KGQsZSk7cmV0dXJuIGV9LEpsPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM7Zm9yKGMgaW4gYSliW2NdPWFbY107cmV0dXJuIGJ9LEtsPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE8Yj8tMTphPmI/MTowfSxMbD1mdW5jdGlvbihhLGIpe3ZhciBjPTA7YT0oMCxfLkFjKShTdHJpbmcoYSkpLnNwbGl0KCIuIik7Yj0oMCxfLkFjKShTdHJpbmcoYikpLnNwbGl0KCIuIik7Zm9yKHZhciBkPU1hdGgubWF4KGEubGVuZ3RoLGIubGVuZ3RoKSxlPTA7Yz09MCYmZTxkO2UrKyl7dmFyIGY9YVtlXXx8IiIsZz1iW2VdfHwiIjtkb3tmPS8oXGQqKShcRCopKC4qKS8uZXhlYyhmKXx8WyIiLCIiLCIiLAoiIl07Zz0vKFxkKikoXEQqKSguKikvLmV4ZWMoZyl8fFsiIiwiIiwiIiwiIl07aWYoZlswXS5sZW5ndGg9PTAmJmdbMF0ubGVuZ3RoPT0wKWJyZWFrO2M9S2woZlsxXS5sZW5ndGg9PTA/MDpwYXJzZUludChmWzFdLDEwKSxnWzFdLmxlbmd0aD09MD8wOnBhcnNlSW50KGdbMV0sMTApKXx8S2woZlsyXS5sZW5ndGg9PTAsZ1syXS5sZW5ndGg9PTApfHxLbChmWzJdLGdbMl0pO2Y9ZlszXTtnPWdbM119d2hpbGUoYz09MCl9cmV0dXJuIGN9LE1sPWZ1bmN0aW9uKGEpe2lmKC9eKHNjcmlwdHxzdHlsZSkkL2kudGVzdChhLnRhZ05hbWUpKXRocm93IEVycm9yKCJ0Iik7fSxObD1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgXy5wbClyZXR1cm4gYS5nO3Rocm93IEVycm9yKCJ0Iik7fSxPbD1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC8mL2csIiZhbXA7IikucmVwbGFjZSgvPC9nLCImbHQ7IikucmVwbGFjZSgvPi9nLCImZ3Q7IikucmVwbGFjZSgvIi9nLCImcXVvdDsiKS5yZXBsYWNlKC8nL2csCiImYXBvczsiKX0sUGw9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLkRjP2E6Xy5tbChPbChTdHJpbmcoYSkpKX0sUWw9ZnVuY3Rpb24oYSl7dmFyIGI9e25vbmNlOl8uT2EoInNjcmlwdCIsZG9jdW1lbnQpfTthPV8uUmEoYSkudG9TdHJpbmcoKTt2YXIgYz0iPHNjcmlwdCI7aWYoYj09bnVsbD8wOmIuaWQpYys9JyBpZD0iJytPbChiLmlkKSsnIic7aWYoYj09bnVsbD8wOmIubm9uY2UpYys9JyBub25jZT0iJytPbChiLm5vbmNlKSsnIic7aWYoYj09bnVsbD8wOmIudHlwZSljKz0nIHR5cGU9IicrT2woYi50eXBlKSsnIic7aWYoYj09bnVsbD8wOmIuZGVmZXIpYys9IiBkZWZlciI7cmV0dXJuIF8ubWwoYysoIj4iK2ErIlx4M2Mvc2NyaXB0PiIpKX0sUmw9ZnVuY3Rpb24oYSl7dmFyIGI9UGwoIiIpO3JldHVybiBfLm1sKGEubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBfLmtqKFBsKGMpKX0pLmpvaW4oXy5raihiKS50b1N0cmluZygpKSl9LFNsPWZ1bmN0aW9uKGEpe3JldHVybiBSbChhKX0sClZsPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0iIixjPU9iamVjdC5rZXlzKGEpLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9Y1tkXSxmPWFbZV07aWYoIVRsLnRlc3QoZSkpdGhyb3cgRXJyb3IoInQiKTtpZihmIT09dm9pZCAwJiZmIT09bnVsbCl7aWYoL15vbi4vaS50ZXN0KGUpKXRocm93IEVycm9yKCJ0Iik7VWwuaW5kZXhPZihlLnRvTG93ZXJDYXNlKCkpIT09LTEmJihmPV8uRWcoU3RyaW5nKGYpKXx8ImFib3V0OmludmFsaWQjekNsb3N1cmV6Iik7Zj1lKyc9IicrUGwoU3RyaW5nKGYpKSsnIic7Yis9IiAiK2Z9fXJldHVybiBifSxZbD1mdW5jdGlvbihhKXt2YXIgYj17fTtpZighVGwudGVzdCgiYm9keSIpKXRocm93IEVycm9yKCJ0Iik7aWYoV2wuaW5kZXhPZigiQk9EWSIpIT09LTEpdGhyb3cgRXJyb3IoInQiKTt2YXIgYz0iPGJvZHkiO2ImJihjKz1WbChiKSk7QXJyYXkuaXNBcnJheShhKXx8KGE9YT09PXZvaWQgMD9bXTpbYV0pO1hsLmluZGV4T2YoIkJPRFkiKSE9PS0xPwpjKz0iPiI6KGE9U2woYS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQgaW5zdGFuY2VvZiBfLkRjP2Q6UGwoU3RyaW5nKGQpKX0pKSxjKz0iPiIrYS50b1N0cmluZygpKyI8L2JvZHk+Iik7cmV0dXJuIF8ubWwoYyl9LFpsPWZ1bmN0aW9uKGEpe3RoaXMuaD10aGlzLkI9dGhpcy5sPSIiO3RoaXMuQz1udWxsO3RoaXMuQT10aGlzLmo9IiI7dGhpcy5vPSExO3ZhciBiO2EgaW5zdGFuY2VvZiBabD8odGhpcy5vPWEubywkbCh0aGlzLGEubCksdGhpcy5CPWEuQixhbSh0aGlzLGEuaCksYm0odGhpcyxhLkMpLGNtKHRoaXMsYS5qKSxkbSh0aGlzLGVtKGEuZykpLHRoaXMuQT1hLkEpOmEmJihiPVN0cmluZyhhKS5tYXRjaChfLnJmKSk/KHRoaXMubz0hMSwkbCh0aGlzLGJbMV18fCIiLCEwKSx0aGlzLkI9Zm0oYlsyXXx8IiIpLGFtKHRoaXMsYlszXXx8IiIsITApLGJtKHRoaXMsYls0XSksY20odGhpcyxiWzVdfHwiIiwhMCksZG0odGhpcyxiWzZdfHwiIiwhMCksdGhpcy5BPWZtKGJbN118fCIiKSk6Cih0aGlzLm89ITEsdGhpcy5nPW5ldyBnbShudWxsLHRoaXMubykpfSxobT1mdW5jdGlvbihhKXtyZXR1cm4gXy55YShhKT9hLlRiJiYoYT1hLlRiKCksYSBpbnN0YW5jZW9mIF8uRGMpP2E6UGwoInpTb3l6Iik6UGwoU3RyaW5nKGEpKX0saW09ZnVuY3Rpb24oYSxiKXtiJiZiLmg/Yi5oKGEpOihiPWhtKGIpLGEuaW5uZXJIVE1MPV8ua2ooYikpfSxrbT1mdW5jdGlvbihhLGIpe2E6aWYoYj1hKGJ8fGptLHZvaWQgMCksYT1fLmxiKCksYiYmYi5nP2E9Yi5nKCk6KGE9YS5jcmVhdGVFbGVtZW50KCJESVYiKSxiPWhtKGIpLGEuaW5uZXJIVE1MPV8ua2ooYikpLGEuY2hpbGROb2Rlcy5sZW5ndGg9PTEmJihiPWEuZmlyc3RDaGlsZCxiLm5vZGVUeXBlPT0xKSl7YT1iO2JyZWFrIGF9cmV0dXJuIGF9LG1tPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIik7YT1sbShhLGIpO2I9Yi5ib2R5O2IuYXBwZW5kQ2hpbGQoYSk7Yj0obmV3IFhNTFNlcmlhbGl6ZXIpLnNlcmlhbGl6ZVRvU3RyaW5nKGIpOwpiPWIuc2xpY2UoYi5pbmRleE9mKCI+IikrMSxiLmxhc3RJbmRleE9mKCI8LyIpKTtyZXR1cm4gXy5tbChiKX0sbm09ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigpO3JldHVybiBhfSxvbT1mdW5jdGlvbihhLGIsYyl7aWYoYilyZXR1cm4gbm0oYSk7dmFyIGQ7cmV0dXJuKGQ9Xy5waShhKSkhPW51bGw/ZDpjPyIiOnZvaWQgMH0scm09ZnVuY3Rpb24oKXtyZXR1cm4gcG18fChwbT1uZXcgXy55aChfLlRnKFtdKSx2b2lkIDAsdm9pZCAwLHZvaWQgMCxxbSkpfSxzbT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLkosZj1lW18uSF18MDtjPV8uV2coYSxmKT8xOmM7ZD0hIWR8fGM9PT0zO2M9PT0yJiZfLnFpKGEpJiYoZT1hLkosZj1lW18uSF18MCk7YT1fLkJpKGUsYik7dmFyIGc9YT09PV8uVGg/NzphW18uSF18MCxoPV8uQ2koZyxmKTt2YXIgaz00Jmg/ITE6ITA7aWYoayl7NCZoJiYoYT1fLm1pKGEpLGc9MCxoPV8uRGkoaCxmKSxmPV8udGkoZSwKZixiLGEpKTtmb3IodmFyIGw9MCxuPTA7bDxhLmxlbmd0aDtsKyspe3ZhciBxPV8ucGkoYVtsXSk7cSE9bnVsbCYmKGFbbisrXT1xKX1uPGwmJihhLmxlbmd0aD1uKTtoPShofDQpJi01MTM7aCY9LTEwMjU7aCY9LTQwOTd9aCE9PWcmJihfLlNnKGEsaCksMiZoJiZPYmplY3QuZnJlZXplKGEpKTtyZXR1cm4gYT1fLkZpKGEsaCxlLGYsYixjLGssZCl9LHVtPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXRtOyFkJiZfLnFpKGEpJiYoYj1hLkosYz1iW18uSF18MCk7dmFyIGY9Xy51aShiLDEpO2E9ITE7aWYoZj09bnVsbCl7aWYoZClyZXR1cm4gcm0oKTtmPVtdfWVsc2UgaWYoZi5jb25zdHJ1Y3Rvcj09PV8ueWgpaWYoZi5LYiYyJiYhZClmPV8uemgoZik7ZWxzZSByZXR1cm4gZjtlbHNlIEFycmF5LmlzQXJyYXkoZik/YT0hISgoZltfLkhdfDApJjIpOmY9W107aWYoZCl7aWYoIWYubGVuZ3RoKXJldHVybiBybSgpO2F8fChhPSEwLF8uVGcoZikpfWVsc2UgaWYoYSl7YT0hMTtfLlVnKGYpOwpkPV8ubWkoZik7Zm9yKGY9MDtmPGQubGVuZ3RoO2YrKyl7dmFyIGc9ZFtmXT1fLm1pKGRbZl0pO0FycmF5LmlzQXJyYXkoZ1sxXSkmJihnWzFdPV8uVGcoZ1sxXSkpfWY9Xy5VZyhkKX0hYSYmYyYzMiYmXy5saShmKTtlPW5ldyBfLnloKGYsZSxvbSx2b2lkIDApO2M9Xy50aShiLGMsMSxlKTthfHxfLnNpKGIsYyk7cmV0dXJuIGV9LHZtPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMudG9wPWE7dGhpcy5yaWdodD1iO3RoaXMuYm90dG9tPWM7dGhpcy5sZWZ0PWR9LHdtPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMubGVmdD1hO3RoaXMudG9wPWI7dGhpcy53aWR0aD1jO3RoaXMuaGVpZ2h0PWR9LHhtPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9YS5sZW5ndGgsZT0wLGY9W10sZyxoLGs9MDtrPGQ7KXtzd2l0Y2goZSl7Y2FzZSAwOnZhciBsPWEuaW5kZXhPZigiPCIsayk7aWYobDwwKXtpZihjLmxlbmd0aD09PTApcmV0dXJuIGE7Yy5wdXNoKGEuc3Vic3RyaW5nKGspKTtrPWR9ZWxzZSBjLnB1c2goYS5zdWJzdHJpbmcoaywKbCkpLGg9bCxrPWwrMSxfLnZsPyhfLndsLmxhc3RJbmRleD1rLGw9Xy53bC5leGVjKGEpKTooXy53bC5sYXN0SW5kZXg9MCxsPV8ud2wuZXhlYyhhLnN1YnN0cmluZyhrKSkpLGw/KGY9WyI8IixsWzBdXSxnPWxbMV0sZT0xLGsrPWxbMF0ubGVuZ3RoKTpjLnB1c2goIjwiKTticmVhaztjYXNlIDE6bD1hLmNoYXJBdChrKyspO3N3aXRjaChsKXtjYXNlICInIjpjYXNlICciJzp2YXIgbj1hLmluZGV4T2YobCxrKTtuPDA/az1kOihmLnB1c2gobCxhLnN1YnN0cmluZyhrLG4rMSkpLGs9bisxKTticmVhaztjYXNlICI+IjpmLnB1c2gobCk7Yy5wdXNoKGIoZi5qb2luKCIiKSxnKSk7ZT0wO2Y9W107aD1nPW51bGw7YnJlYWs7ZGVmYXVsdDpmLnB1c2gobCl9YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcigpO31lPT09MSYmaz49ZCYmKGs9aCsxLGMucHVzaCgiPCIpLGU9MCxmPVtdLGg9Zz1udWxsKX1yZXR1cm4gYy5qb2luKCIiKX0sRG09ZnVuY3Rpb24oKXt2YXIgYT15bShfLmpsKF8uaWwoem0oKSwKZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0pLk1jKCkpKSxiPUFtKCkubWFwKGZ1bmN0aW9uKGMpe3ZhciBkO2E6e3ZhciBlPWMubztpZihlPT1udWxsKWM9bnVsbDtlbHNlIGlmKHR5cGVvZiBlPT09Im51bWJlciIpYz1lO2Vsc2V7aWYodHlwZW9mIGU9PT0ic3RyaW5nIil7dmFyIGY9TnVtYmVyKGUpO2lmKCFpc05hTihmKSYmKGYhPT0wfHxlLnRyaW0oKS5sZW5ndGghPT0wKSl7Yz1mO2JyZWFrIGF9fXRocm93IEJtKGMsIm51bWJlciIpO319cmV0dXJuKGQ9YykhPW51bGw/ZDowfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjPjB9KTtiLmxlbmd0aD4wJiYoYj1DbShiKSxhLmc9Yik7cmV0dXJuIF8ua2woYSl9LEVtPWZ1bmN0aW9uKGEpe3JldHVybiJ0cmFuc2xhdGU6IithfSxLbT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgRm07Yj1fLlRqKGIsMSxhLm5hbWUpO3ZhciBjPUdtKGEuc3RhcnRUaW1lKTtiPV8uTChiLDIsYyk7YT1IbShhLmR1cmF0aW9uKTthPV8uTChiLDMsYSk7Yj1uZXcgSW07CnJldHVybiBKbShhLDUsYil9LEdtPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBMbTtiLnNldFNlY29uZHMoTWF0aC5mbG9vcihhLzFFMykpO2E9TWF0aC5yb3VuZChhJTFFMyoxRTYpO18uR2koYiwyLGE9PW51bGw/YTpfLkJqKGEpLDApO3JldHVybiBifSxIbT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgTW07Yi5zZXRTZWNvbmRzKE1hdGguZmxvb3IoYS8xRTMpKTthPU1hdGgucm91bmQoYSUxRTMqMUU2KTtfLkdpKGIsMixhPT1udWxsP2E6Xy5CaihhKSwwKTtyZXR1cm4gYn0sTm09ZnVuY3Rpb24oYSl7cmV0dXJuIHBlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZS5tYXJrJiYoYT1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKGEsIm1hcmsiKSxhLmxlbmd0aD09MSk/YVswXTpudWxsfSxPbT1mdW5jdGlvbihhLGIpe3JldHVybiBwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UubWVhc3VyZT9wZXJmb3JtYW5jZS5tZWFzdXJlKGEsYil8fG51bGw6bnVsbH0sUm09ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPQpBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO2Quc3BsaWNlKDAsMik7ZD0ibCIrYS50b1N0cmluZygxNikrImkiK2IudG9TdHJpbmcoMTYpKyhkLmxlbmd0aD8iLSIrZC5qb2luKCJfIik6IiIpO1BtP1BtLnB1c2goZCk6UW0oZCl9LFZtPWZ1bmN0aW9uKCl7dmFyIGE9U218fChTbT1UbSgnW251bGwsbnVsbCxudWxsLG51bGwsbnVsbCwiKGZ1bmN0aW9uKCl7XCd1c2Ugc3RyaWN0XCc7dmFyIGZcXHUwMDNkdHlwZW9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzXFx1MDAzZFxcdTAwM2RcXCJmdW5jdGlvblxcIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxjLGIpe2lmKGFcXHUwMDNkXFx1MDAzZEFycmF5LnByb3RvdHlwZXx8YVxcdTAwM2RcXHUwMDNkT2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2NdXFx1MDAzZGIudmFsdWU7cmV0dXJuIGF9O2Z1bmN0aW9uIGcoYSl7YVxcdTAwM2RbXFwib2JqZWN0XFwiXFx1MDAzZFxcdTAwM2R0eXBlb2YgZ2xvYmFsVGhpc1xcdTAwMjZcXHUwMDI2Z2xvYmFsVGhpcyxhLFxcIm9iamVjdFxcIlxcdTAwM2RcXHUwMDNkdHlwZW9mIHdpbmRvd1xcdTAwMjZcXHUwMDI2d2luZG93LFxcIm9iamVjdFxcIlxcdTAwM2RcXHUwMDNkdHlwZW9mIHNlbGZcXHUwMDI2XFx1MDAyNnNlbGYsXFwib2JqZWN0XFwiXFx1MDAzZFxcdTAwM2R0eXBlb2YgZ2xvYmFsXFx1MDAyNlxcdTAwMjZnbG9iYWxdO2Zvcih2YXIgY1xcdTAwM2QwO2NcXHUwMDNjYS5sZW5ndGg7KytjKXt2YXIgYlxcdTAwM2RhW2NdO2lmKGJcXHUwMDI2XFx1MDAyNmIuTWF0aFxcdTAwM2RcXHUwMDNkTWF0aClyZXR1cm4gYn10aHJvdyBFcnJvcihcXCJDYW5ub3QgZmluZCBnbG9iYWwgb2JqZWN0XFwiKTt9dmFyIGhcXHUwMDNkZyh0aGlzKTtcXG5mdW5jdGlvbiBrKGEsYyl7aWYoYylhOnt2YXIgYlxcdTAwM2RoO2FcXHUwMDNkYS5zcGxpdChcXCIuXFwiKTtmb3IodmFyIGRcXHUwMDNkMDtkXFx1MDAzY2EubGVuZ3RoLTE7ZCsrKXt2YXIgZVxcdTAwM2RhW2RdO2lmKCEoZSBpbiBiKSlicmVhayBhO2JcXHUwMDNkYltlXX1hXFx1MDAzZGFbYS5sZW5ndGgtMV07ZFxcdTAwM2RiW2FdO2NcXHUwMDNkYyhkKTtjIVxcdTAwM2RkXFx1MDAyNlxcdTAwMjZjIVxcdTAwM2RudWxsXFx1MDAyNlxcdTAwMjZmKGIsYSx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmN9KX19ayhcXCJnbG9iYWxUaGlzXFwiLGZ1bmN0aW9uKGEpe3JldHVybiBhfHxofSk7LypcXG5cXG4gQ29weXJpZ2h0IEdvb2dsZSBMTENcXG4gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcXG4qL1xcbnZhciBsXFx1MDAzZGdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLG07ZnVuY3Rpb24gbigpe3ZhciBhXFx1MDAzZG51bGw7aWYoIWwpcmV0dXJuIGE7dHJ5e3ZhciBjXFx1MDAzZGZ1bmN0aW9uKGIpe3JldHVybiBifTthXFx1MDAzZGwuY3JlYXRlUG9saWN5KFxcImdvb2cjaHRtbFxcIix7Y3JlYXRlSFRNTDpjLGNyZWF0ZVNjcmlwdDpjLGNyZWF0ZVNjcmlwdFVSTDpjfSl9Y2F0Y2goYil7fXJldHVybiBhfTtmdW5jdGlvbiBwKGEpe3RoaXMuZ1xcdTAwM2RhfXAucHJvdG90eXBlLnRvU3RyaW5nXFx1MDAzZGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZytcXCJcXCJ9O2Z1bmN0aW9uIHEoYSl7bVxcdTAwM2RcXHUwMDNkXFx1MDAzZHZvaWQgMFxcdTAwMjZcXHUwMDI2KG1cXHUwMDNkbigpKTthXFx1MDAzZG0/bS5jcmVhdGVTY3JpcHRVUkwoYSk6YTtyZXR1cm4gbmV3IHAoYSl9O2lmKCFmdW5jdGlvbigpe2lmKHNlbGYub3JpZ2luKXJldHVybiBzZWxmLm9yaWdpblxcdTAwM2RcXHUwMDNkXFx1MDAzZFxcIm51bGxcXCI7aWYobG9jYXRpb24uaG9zdCFcXHUwMDNkXFx1MDAzZFxcIlxcIilyZXR1cm4hMTt0cnl7cmV0dXJuIHdpbmRvdy5wYXJlbnQuZXNjYXBlKFxcIlxcIiksITF9Y2F0Y2goYSl7cmV0dXJuITB9fSgpKXRocm93IEVycm9yKFxcInNhbmRib3hpbmcgZXJyb3JcXCIpO1xcbndpbmRvdy5hZGRFdmVudExpc3RlbmVyKFxcIm1lc3NhZ2VcXCIsZnVuY3Rpb24oYSl7dmFyIGNcXHUwMDNkYS5wb3J0c1swXTthXFx1MDAzZGEuZGF0YTt2YXIgYlxcdTAwM2RhLmNhbGxiYWNrTmFtZS5zcGxpdChcXCIuXFwiKSxkXFx1MDAzZHdpbmRvdztiWzBdXFx1MDAzZFxcdTAwM2RcXHUwMDNkXFwid2luZG93XFwiXFx1MDAyNlxcdTAwMjZiLnNoaWZ0KCk7Zm9yKHZhciBlXFx1MDAzZDA7ZVxcdTAwM2NiLmxlbmd0aC0xO2UrKylkW2JbZV1dXFx1MDAzZHt9LGRcXHUwMDNkZFtiW2VdXTtkW2JbYi5sZW5ndGgtMV1dXFx1MDAzZGZ1bmN0aW9uKHIpe2MucG9zdE1lc3NhZ2UoSlNPTi5zdHJpbmdpZnkocikpfTtiXFx1MDAzZGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXFwic2NyaXB0XFwiKTthXFx1MDAzZHEoYS51cmwpO2lmKGEgaW5zdGFuY2VvZiBwKWFcXHUwMDNkYS5nO2Vsc2UgdGhyb3cgRXJyb3IoXFwiXFwiKTtiLnNyY1xcdTAwM2RhO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYil9LCEwKTt9KS5jYWxsKHRoaXMpO1xcbiJdJykpOwppZighYSlyZXR1cm4gbnVsbDthPV8ucGkoXy5aaShhLDYsdm9pZCAwLFVtKSk7dmFyIGI7YT09PW51bGx8fGE9PT12b2lkIDA/Yj1udWxsOmI9Xy5RYShhKTtyZXR1cm4gYn0sV209ZnVuY3Rpb24oYSl7dmFyIGI9e307YT1fLkMoYSk7Zm9yKHZhciBjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSljPWMudmFsdWUsYltjLmxhbmd1YWdlXT1jLm5hbWU7cmV0dXJuIGJ9LFhtPWZ1bmN0aW9uKCl7fSxZbT1mdW5jdGlvbihhLGIpe18uaGIuY2FsbCh0aGlzKTt0aGlzLmw9bmV3IF8uSGIodGhpcyk7dGhpcy5RYihhfHxudWxsKTtiJiYodGhpcy5VYj1iKX0sYm49ZnVuY3Rpb24oYSl7Xy5oYi5jYWxsKHRoaXMpO3RoaXMuZz1hO3RoaXMuaD1fLngodGhpcy5nLCJmb2N1cyIsdGhpcywhMCk7dGhpcy5qPV8ueCh0aGlzLmcsImJsdXIiLHRoaXMsITApfSxjbj1mdW5jdGlvbigpe30sZG49ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZWxlbWVudD1hO3RoaXMuaj1iO3RoaXMubD1jfSxlbj1mdW5jdGlvbihhLApiKXt0aGlzLmc9YSBpbnN0YW5jZW9mIHpsP2E6bmV3IHpsKGEsYil9LGZuPWZ1bmN0aW9uKGEsYil7dGhpcy5vPWJ8fHZvaWQgMDtZbS5jYWxsKHRoaXMsYSl9LE89ZnVuY3Rpb24oYSxiLGMpe3RoaXMuRz1jfHwoYT9fLmxiKGduKGEpKTpfLmxiKCkpO2ZuLmNhbGwodGhpcyx0aGlzLkcuUygiRElWIix7c3R5bGU6InBvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6bm9uZTsifSkpO3RoaXMucmE9bmV3IHpsKDEsMSk7dGhpcy5BPW5ldyBTZXQ7dGhpcy5DPW51bGw7YSYmdGhpcy5hdHRhY2goYSk7YiE9bnVsbCYmdGhpcy5LYShiKX0saG49ZnVuY3Rpb24oYSl7YT1hLmNsYXNzTmFtZTtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaCgvXFMrL2cpfHxbXX0sa249ZnVuY3Rpb24oYSxiKXt2YXIgYz1obihhKSxkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxlPWMubGVuZ3RoK2QubGVuZ3RoO2puKGMsZCk7YS5jbGFzc05hbWU9Yy5qb2luKCIgIik7CnJldHVybiBjLmxlbmd0aD09ZX0sbW49ZnVuY3Rpb24oYSxiKXt2YXIgYz1obihhKSxkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxlPWxuKGMsZCk7YS5jbGFzc05hbWU9ZS5qb2luKCIgIik7cmV0dXJuIGUubGVuZ3RoPT1jLmxlbmd0aC1kLmxlbmd0aH0sam49ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKylfLnRhKGEsYltjXSl8fGEucHVzaChiW2NdKX0sbG49ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIV8udGEoYixjKX0pfSxubj1mdW5jdGlvbihhLGIpe3JldHVybiBfLnRhKGhuKGEpLGIpfSxvbj1mdW5jdGlvbihhLGIsYyl7Yz9rbihhLGIpOm1uKGEsYil9LHRuPWZ1bmN0aW9uKGEpe3JldHVybiBwbihuZXcgcW4sc20oYSwxLF8uYWooKSkubWFwKGZ1bmN0aW9uKGIsYyl7dmFyIGQ9bmV3IHJuO2I9c24oZCwxLGIpO2lmKHNtKGEsMixfLmFqKCkpLmxlbmd0aD5jKXtkPXNtKGEsMiwKMywhMCk7aWYodHlwZW9mIGMhPT0ibnVtYmVyInx8YzwwfHxjPj1kLmxlbmd0aCl0aHJvdyBFcnJvcigpO3NuKGIsMyxkW2NdKX1yZXR1cm4gYn0pKX0sdW49ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IHJuO2I9c24oYiwxLGFbMF0pO2EubGVuZ3RoPT09MyYmc24oYiwzLGFbMl0pO3JldHVybiBifSx2bj1mdW5jdGlvbihhKXtyZXR1cm4gXy5jaihhLHJuLDEpLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gXy5OKGIsMyk/W18uTihiLDEpLDIwMCxfLk4oYiwzKV06W18uTihiLDEpLDIwMF19KX0sd249ZnVuY3Rpb24oKXt9LHhuPWZ1bmN0aW9uKGEpe18uaGIuY2FsbCh0aGlzKTt0aGlzLmg9YXx8Xy5sYigpO3RoaXMubGE9bnVsbDt0aGlzLmpiPSExO3RoaXMuQz1udWxsO3RoaXMuTz12b2lkIDA7dGhpcy5SPXRoaXMuRj10aGlzLks9bnVsbDt0aGlzLndhPSExfSx5bj1mdW5jdGlvbihhKXt2YXIgYj1fLmxiKCksYz1iLmcsZD1iLmNyZWF0ZUVsZW1lbnQoIlNUWUxFIiksZT1fLk9hKCJzdHlsZSIsCmMpO2UmJmQuc2V0QXR0cmlidXRlKCJub25jZSIsZSk7ZC50eXBlPSJ0ZXh0L2NzcyI7Yj1iLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJIRUFEIilbMF07ZC5zdHlsZVNoZWV0P2Quc3R5bGVTaGVldC5jc3NUZXh0PWE6ZC5hcHBlbmRDaGlsZChjLmNyZWF0ZVRleHROb2RlKGEpKTtiLmFwcGVuZENoaWxkKGQpO3JldHVybiBkfSxDbj1mdW5jdGlvbigpe2Zvcih2YXIgYSBpbiBPYmplY3QucHJvdG90eXBlKXtfLnpjPWZ1bmN0aW9uKGQsZSxmKXtmb3IodmFyIGcgaW4gZClkW2ddIT09T2JqZWN0LnByb3RvdHlwZVtnXSYmZS5jYWxsKGYsZFtnXSxnLGQpfTticmVha312YXIgYj1EYXRlLm5vdygpLGM9em4oQW4pO2MmJnR5cGVvZiBjPT0iZnVuY3Rpb24iJiYoQm49PTE/YygpOmZ1bmN0aW9uIGUoKXt2YXIgZj1kb2N1bWVudC5yZWFkeVN0YXRlO18ub2MoZik9PSJ1bmRlZmluZWQifHxmPT0iY29tcGxldGUifHxmPT0iaW50ZXJhY3RpdmUifHxEYXRlLm5vdygpLWI+PTJFND9jKCk6d2luZG93LnNldFRpbWVvdXQoZSwKNTAwKX0oKSl9O18ubT16bC5wcm90b3R5cGU7Xy5tLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIHpsJiYodGhpcz09YT8hMDp0aGlzJiZhP3RoaXMueD09YS54JiZ0aGlzLnk9PWEueTohMSl9O18ubS5jZWlsPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguY2VpbCh0aGlzLngpO3RoaXMueT1NYXRoLmNlaWwodGhpcy55KTtyZXR1cm4gdGhpc307Xy5tLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguZmxvb3IodGhpcy54KTt0aGlzLnk9TWF0aC5mbG9vcih0aGlzLnkpO3JldHVybiB0aGlzfTtfLm0ucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5yb3VuZCh0aGlzLngpO3RoaXMueT1NYXRoLnJvdW5kKHRoaXMueSk7cmV0dXJuIHRoaXN9OwpfLm0udHJhbnNsYXRlPWZ1bmN0aW9uKGEsYil7YSBpbnN0YW5jZW9mIHpsPyh0aGlzLngrPWEueCx0aGlzLnkrPWEueSk6KHRoaXMueCs9TnVtYmVyKGEpLHR5cGVvZiBiPT09Im51bWJlciImJih0aGlzLnkrPWIpKTtyZXR1cm4gdGhpc307CnZhciBEbj1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IHpsKGEueCxhLnkpfSxFbj1bImRhdGE6IiwiaHR0cDoiLCJodHRwczoiLCJtYWlsdG86IiwiZnRwOiJdLEZuPWZ1bmN0aW9uKGEpe3ZhciBiPTE7YT1hLnNwbGl0KCI6Iik7Zm9yKHZhciBjPVtdO2I+MCYmYS5sZW5ndGg7KWMucHVzaChhLnNoaWZ0KCkpLGItLTthLmxlbmd0aCYmYy5wdXNoKGEuam9pbigiOiIpKTtyZXR1cm4gY30sR249ZnVuY3Rpb24oYSxiLGMpe2M9YS5nLmdldChjKTtyZXR1cm4oYz09bnVsbD8wOmMuaGFzKGIpKT9jLmdldChiKTphLmwuaGFzKGIpP3t1YToxfTooYz1hLm8uZ2V0KGIpKT9jOmEuaCYmW10uY29uY2F0KF8uJGIoYS5oKSkuc29tZShmdW5jdGlvbihkKXtyZXR1cm4gYi5pbmRleE9mKGQpPT09MH0pP3t1YToxfTp7dWE6MH19LEhuPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1DbChiKTtjPWMuY3JlYXRlRWxlbWVudChkKTtiPWIuYXR0cmlidXRlcztmb3IodmFyIGU9Xy5DKGIpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPQplLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtmPWcubmFtZTtnPWcudmFsdWU7dmFyIGg9R24oYS5nLGYsZCksazthOntpZihrPWguY29uZGl0aW9ucyl7az1fLkMoayk7Zm9yKHZhciBsPWsubmV4dCgpOyFsLmRvbmU7bD1rLm5leHQoKSl7dmFyIG49Xy5DKGwudmFsdWUpO2w9bi5uZXh0KCkudmFsdWU7bj1uLm5leHQoKS52YWx1ZTt2YXIgcT12b2lkIDA7aWYoKGw9KHE9Yi5nZXROYW1lZEl0ZW0obCkpPT1udWxsP3ZvaWQgMDpxLnZhbHVlKSYmIW4uaGFzKGwpKXtrPSExO2JyZWFrIGF9fX1rPSEwfWlmKGspc3dpdGNoKGgudWEpe2Nhc2UgMTpFbChjLGYsZyk7YnJlYWs7Y2FzZSAyOnRocm93IEVycm9yKCk7Y2FzZSAzOkVsKGMsZixnLnRvTG93ZXJDYXNlKCkpO2JyZWFrO2Nhc2UgNDpFbChjLGYsZyk7YnJlYWs7Y2FzZSA1OkVsKGMsZixnKTticmVhaztjYXNlIDY6RWwoYyxmLGcpO2JyZWFrO2Nhc2UgNzphOmlmKGg9dm9pZCAwLGs9ZyxfLkNjKXt0cnl7aD1uZXcgVVJMKGspfWNhdGNoKHApe2g9CiJodHRwczoiO2JyZWFrIGF9aD1oLnByb3RvY29sfWVsc2UgYjp7aD1rO2s9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO3RyeXtrLmhyZWY9aH1jYXRjaChwKXtoPXZvaWQgMDticmVhayBifWg9ay5wcm90b2NvbDtoPWg9PT0iOiJ8fGg9PT0iIj8iaHR0cHM6IjpofWc9aCE9PXZvaWQgMCYmRW4uaW5kZXhPZihoLnRvTG93ZXJDYXNlKCkpIT09LTE/ZzoiYWJvdXQ6aW52YWxpZCN6Q2xvc3VyZXoiO0VsKGMsZixnKX19cmV0dXJuIGN9LGxtPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5xZDthPUJsKGEsYik7YT1kb2N1bWVudC5jcmVhdGVUcmVlV2Fsa2VyKGEsNSxmdW5jdGlvbihoKXtpZihoLm5vZGVUeXBlPT09MyloPTE7ZWxzZSBpZihEbChoKSlpZihoPUNsKGgpLGg9PT1udWxsKWg9MjtlbHNle3ZhciBrPWMuZztoPWghPT0iRk9STSImJihrLmouaGFzKGgpfHxrLmcuaGFzKGgpKT8xOjJ9ZWxzZSBoPTI7cmV0dXJuIGh9KTtmb3IodmFyIGQ9YS5uZXh0Tm9kZSgpLGU9Yi5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksCmY9ZTtkIT09bnVsbDspe3ZhciBnPXZvaWQgMDtpZihkLm5vZGVUeXBlPT09MylnPWMuY3JlYXRlVGV4dE5vZGUoZC5kYXRhKTtlbHNlIGlmKERsKGQpKWc9SG4oYyxkLGIpO2Vsc2UgdGhyb3cgRXJyb3IoInQiKTtmLmFwcGVuZENoaWxkKGcpO2lmKGQ9YS5maXJzdENoaWxkKCkpZj1nO2Vsc2UgZm9yKDshKGQ9YS5uZXh0U2libGluZygpKSYmKGQ9YS5wYXJlbnROb2RlKCkpOylmPWYucGFyZW50Tm9kZX1yZXR1cm4gZX0sSW49ZnVuY3Rpb24oYSxiKXtyZXR1cm4oYj1iJiZiIT0iKiI/U3RyaW5nKGIpLnRvVXBwZXJDYXNlKCk6IiIpP2EucXVlcnlTZWxlY3RvckFsbChiKTphLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIil9LEpuPWZ1bmN0aW9uKGEpe3JldHVybiBhLnNjcm9sbGluZ0VsZW1lbnQ/YS5zY3JvbGxpbmdFbGVtZW50Ol8uVmN8fGEuY29tcGF0TW9kZSE9IkNTUzFDb21wYXQiP2EuYm9keXx8YS5kb2N1bWVudEVsZW1lbnQ6YS5kb2N1bWVudEVsZW1lbnR9LEtuPWZ1bmN0aW9uKGEpe3ZhciBiPQpKbihhKTthPWEuZGVmYXVsdFZpZXc7cmV0dXJuIG5ldyB6bCgoYT09bnVsbD92b2lkIDA6YS5wYWdlWE9mZnNldCl8fGIuc2Nyb2xsTGVmdCwoYT09bnVsbD92b2lkIDA6YS5wYWdlWU9mZnNldCl8fGIuc2Nyb2xsVG9wKX0sTG49ZnVuY3Rpb24oYSl7dmFyIGI9e307YT0oYS5nJiYoYS5nP2EuZy5yZWFkeVN0YXRlOjApPj0yP2EuZy5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiI6IiIpLnNwbGl0KCJcclxuIik7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoIS9eW1xzXHhhMF0qJC8udGVzdChhW2NdKSl7dmFyIGQ9Rm4oYVtjXSksZT1kWzBdO2Q9ZFsxXTtpZih0eXBlb2YgZD09PSJzdHJpbmciKXtkPWQudHJpbSgpO3ZhciBmPWJbZV18fFtdO2JbZV09ZjtmLnB1c2goZCl9fXJldHVybiBBbChiLGZ1bmN0aW9uKGcpe3JldHVybiBnLmpvaW4oIiwgIil9KX0sTW49WzQsNSw2XSxKbT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9TW47Yz1fLkppKGMpO2E6e3ZhciBlPWM7Xy5yaShhKTsKdmFyIGY9YS5KLGc9ZltfLkhdfDA7aWYoZT09bnVsbCl7dmFyIGg9SGwoZik7aWYoSWwoaCxmLGcsZCk9PT1iKWguc2V0KGQsMCk7ZWxzZSBicmVhayBhfWVsc2V7aD1IbChmKTt2YXIgaz1JbChoLGYsZyxkKTtrIT09YiYmKGsmJihnPV8udGkoZixnLGspKSxoLnNldChkLGIpKX1fLnRpKGYsZyxiLGUpfWMmJiFfLldnKGMpJiZfLnNpKGEuSik7cmV0dXJuIGF9LExtPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihMbSxfLkopO0xtLnByb3RvdHlwZS5nZXRTZWNvbmRzPWZ1bmN0aW9uKCl7cmV0dXJuIF8uaGsodGhpcywxKX07TG0ucHJvdG90eXBlLnNldFNlY29uZHM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uR2kodGhpcywxLGE9PW51bGw/YTpfLkpqKGEpLCIwIil9O3ZhciBNbT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoTW0sXy5KKTtNbS5wcm90b3R5cGUuZ2V0U2Vjb25kcz1mdW5jdGlvbigpe3JldHVybiBfLmhrKHRoaXMsMSl9OwpNbS5wcm90b3R5cGUuc2V0U2Vjb25kcz1mdW5jdGlvbihhKXtyZXR1cm4gXy5HaSh0aGlzLDEsYT09bnVsbD9hOl8uSmooYSksIjAiKX07dmFyIE5uPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLktrO3JldHVybiBfLmlrKGIsMTEsYSl9LHptPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IF8uaGwoMTg3MSwiMCIpO2EuQT0iaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb20vZWxlbWVudC9sb2c/Zm9ybWF0PWpzb24maGFzZmFzdD10cnVlIjtyZXR1cm4gYX0seW09ZnVuY3Rpb24oYSl7YS5oPU9uO3JldHVybiBhfSxJbT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoSW0sXy5KKTt2YXIgUG49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKFBuLF8uSik7dmFyIEZtPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihGbSxfLkopO3ZhciBRbj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoUW4sXy5KKTt2YXIgUm49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Cl8uQihSbixfLkopO3ZhciBTbj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoU24sXy5KKTt2YXIgVG49ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKFRuLF8uSik7CnZhciBVbj1mdW5jdGlvbihhKXtfLnJpKGEpO2E9YS5KO3ZhciBiPWFbXy5IXXwwLGM9Xy51aShhLDExMiksZD12b2lkIDA9PT1fLlhoLGU9Xy5oaChjLFRuLCFkLGIpOyFkfHxlPyhlPV8ua2goZSksYyE9PWUmJihiPV8udGkoYSxiLDExMixlKSxfLnNpKGEsYikpLGE9ZSk6YT12b2lkIDA7cmV0dXJuIGF9LFZuPWZ1bmN0aW9uKGEsYil7YS5VIT09dm9pZCAwP2EuVS5wdXNoKGIpOmEuY29udGVudCs9YjtyZXR1cm4gYX0sV249ZnVuY3Rpb24oYSxiKXthLlUhPT12b2lkIDA/YS5VLnB1c2goYik6YiBpbnN0YW5jZW9mIF8ueGw/Yi5jb250ZW50IT09dm9pZCAwP2EuY29udGVudCs9Yi5tYSgpOihhLlU9W2EuY29udGVudCxiXSxhLmNvbnRlbnQ9dm9pZCAwKTphLmNvbnRlbnQrPWI7cmV0dXJuIGF9LFhuPWZ1bmN0aW9uKGEpe3ZhciBiO2E9Xy5DKChiPWEuVSkhPW51bGw/YjpbXSk7Zm9yKGI9YS5uZXh0KCk7IWIuZG9uZTtiPWEubmV4dCgpKWlmKGI9Yi52YWx1ZSxiIGluc3RhbmNlb2YKXy54bCYmWG4oYikpcmV0dXJuITA7cmV0dXJuITF9LFpuPWZ1bmN0aW9uKGEsYil7Yj1ZbihifHx7fSxhLmg/YS5oLmdldERhdGEoKTp7fSk7YS5nKG51bGwsYi5aYik7cmV0dXJuIGIuaigpfSwkbj17fSxhbz1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgemwoYS54LWIueCxhLnktYi55KX0sYm89LyYvZyxjbz0vPC9nLGVvPS8+L2csZm89LyIvZyxnbz0vJy9nLGhvPS9ceDAwL2csaW89L1tceDAwJjw+IiddLyxqbz1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC9ceGEwfFsgXHRdKy9nLCIgIil9LGtvPWZ1bmN0aW9uKGEpe3JldHVybiBhLnJlcGxhY2UoL1tcc1x4YTBdKyQvLCIiKX0sbG89ZnVuY3Rpb24oYSl7aW8udGVzdChhKSYmKGEuaW5kZXhPZigiJiIpIT0tMSYmKGE9YS5yZXBsYWNlKGJvLCImYW1wOyIpKSxhLmluZGV4T2YoIjwiKSE9LTEmJihhPWEucmVwbGFjZShjbywiJmx0OyIpKSxhLmluZGV4T2YoIj4iKSE9LTEmJihhPWEucmVwbGFjZShlbywiJmd0OyIpKSxhLmluZGV4T2YoJyInKSE9Ci0xJiYoYT1hLnJlcGxhY2UoZm8sIiZxdW90OyIpKSxhLmluZGV4T2YoIiciKSE9LTEmJihhPWEucmVwbGFjZShnbywiJiMzOTsiKSksYS5pbmRleE9mKCJceDAwIikhPS0xJiYoYT1hLnJlcGxhY2UoaG8sIiYjMDsiKSkpO3JldHVybiBhfSxtbz1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC8mKFteO10rKTsvZyxmdW5jdGlvbihiLGMpe3N3aXRjaChjKXtjYXNlICJhbXAiOnJldHVybiImIjtjYXNlICJsdCI6cmV0dXJuIjwiO2Nhc2UgImd0IjpyZXR1cm4iPiI7Y2FzZSAicXVvdCI6cmV0dXJuJyInO2RlZmF1bHQ6cmV0dXJuIGMuY2hhckF0KDApIT0iIyJ8fChjPU51bWJlcigiMCIrYy5zbGljZSgxKSksaXNOYU4oYykpP2I6U3RyaW5nLmZyb21DaGFyQ29kZShjKX19KX0sbm89LyYoW147XHM8Jl0rKTs/L2csb289ZnVuY3Rpb24oYSl7dmFyIGI9eyImYW1wOyI6IiYiLCImbHQ7IjoiPCIsIiZndDsiOiI+IiwiJnF1b3Q7IjonIid9O3ZhciBjPV8udi5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKcmV0dXJuIGEucmVwbGFjZShubyxmdW5jdGlvbihkLGUpe3ZhciBmPWJbZF07aWYoZilyZXR1cm4gZjtlLmNoYXJBdCgwKT09IiMiJiYoZT1OdW1iZXIoIjAiK2Uuc2xpY2UoMSkpLGlzTmFOKGUpfHwoZj1TdHJpbmcuZnJvbUNoYXJDb2RlKGUpKSk7Znx8KGY9Xy5tbChkKyIgIiksYy5ub2RlVHlwZT09PTEmJk1sKGMpLGMuaW5uZXJIVE1MPV8ua2ooZiksZj1jLmZpcnN0Q2hpbGQubm9kZVZhbHVlLnNsaWNlKDAsLTEpKTtyZXR1cm4gYltkXT1mfSl9LHBvPWZ1bmN0aW9uKGEpe3JldHVybiBhLmluZGV4T2YoIiYiKSE9LTE/ImRvY3VtZW50ImluIF8udj9vbyhhKTptbyhhKTphfSxybz1mdW5jdGlvbihhKXt2YXIgYj1xbztyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGIsIjcuMCIpP2JbIjcuMCJdOmJbIjcuMCJdPWEoIjcuMCIpfSxxbz17fSxzbz1mdW5jdGlvbigpe3JldHVybiBybyhmdW5jdGlvbigpe3JldHVybiBMbChfLmpkLCI3LjAiKT49MH0pfSwKVGw9L15bYS16XVthLXpcZC1dKiQvaSxXbD0iQVBQTEVUIEJBU0UgRU1CRUQgSUZSQU1FIExJTksgTUFUSCBNRVRBIE9CSkVDVCBTQ1JJUFQgU1RZTEUgU1ZHIFRFTVBMQVRFIi5zcGxpdCgiICIpLFhsPSJBUkVBIEJSIENPTCBDT01NQU5EIEhSIElNRyBJTlBVVCBLRVlHRU4gUEFSQU0gU09VUkNFIFRSQUNLIFdCUiIuc3BsaXQoIiAiKSxVbD1bImFjdGlvbiIsImZvcm1hY3Rpb24iLCJocmVmIl0sdG89ZnVuY3Rpb24oKXt0aGlzLmc9bmV3IE1hcH07CnRvLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPVBsKCJfc2FmZXZhbHVlc19mb3JtYXRfbWFya2VyXzoiKS50b1N0cmluZygpO2E9UGwoYSkudG9TdHJpbmcoKS5yZXBsYWNlKG5ldyBSZWdFeHAoIlxceyIrYysiW1xcdyYjO10rXFx9IiwiZyIpLGZ1bmN0aW9uKGQpe3ZhciBlO2lmKGU9Yi5nLmdldChkKSl7ZD0iIjtzd2l0Y2goZS50eXBlKXtjYXNlICJodG1sIjpkPWUueGY7YnJlYWs7Y2FzZSAic3RhcnRUYWciOmQ9IjwiK2UudGFnTmFtZStlLmF0dHJpYnV0ZXMrIj4iO2JyZWFrO2Nhc2UgImVuZFRhZyI6ZD0iPC8iK2UudGFnTmFtZSsiPiJ9ZT1kfWVsc2UgZT1kO3JldHVybiBlfSk7cmV0dXJuIF8ubWwoYSl9O3RvLnByb3RvdHlwZS50ZXh0PWZ1bmN0aW9uKGEpe3JldHVybiB1byh0aGlzLHt0eXBlOiJodG1sIix4ZjpQbChhKS50b1N0cmluZygpfSl9Owp2YXIgdW89ZnVuY3Rpb24oYSxiKXt2YXIgYz0ie19zYWZldmFsdWVzX2Zvcm1hdF9tYXJrZXJfOiIrYS5nLnNpemUrIl8iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIpKyJ9IjthLmcuc2V0KFBsKGMpLnRvU3RyaW5nKCksYik7cmV0dXJuIGN9LGduPWZ1bmN0aW9uKGEpe3JldHVybiBfLnRkKGRvY3VtZW50LGEpfSx2bz1mdW5jdGlvbihhKXt2YXIgYj1hfHxkb2N1bWVudDtiLmdldEVsZW1lbnRzQnlDbGFzc05hbWU/YT1iLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoIlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TIilbMF06KGI9ZG9jdW1lbnQsYT0oYXx8YikucXVlcnlTZWxlY3RvcigiLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TIikpO3JldHVybiBhfHxudWxsfSx3bz1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8ueWQoZG9jdW1lbnQsYXJndW1lbnRzKX0seG89ZnVuY3Rpb24oYSxiKXtiLnBhcmVudE5vZGUmJmIucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSwKYi5uZXh0U2libGluZyl9LHlvPWZ1bmN0aW9uKGEpe3JldHVybiBfLnlhKGEpJiZhLm5vZGVUeXBlPT0xfSx6bz1mdW5jdGlvbihhKXtyZXR1cm4gYS5jb250ZW50RG9jdW1lbnR8fGEuY29udGVudFdpbmRvdy5kb2N1bWVudH0sQW89ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBhLmNvbnRlbnRXaW5kb3d8fChhLmNvbnRlbnREb2N1bWVudD9fLm1iKGEuY29udGVudERvY3VtZW50KTpudWxsKX1jYXRjaChiKXt9cmV0dXJuIG51bGx9LEJvPXtTQ1JJUFQ6MSxTVFlMRToxLEhFQUQ6MSxJRlJBTUU6MSxPQkpFQ1Q6MX0sQ289e0lNRzoiICIsQlI6IlxuIn0sRG89ZnVuY3Rpb24oYSxiLGMpe2lmKCEoYS5ub2RlTmFtZSBpbiBCbykpaWYoYS5ub2RlVHlwZT09MyljP2IucHVzaChTdHJpbmcoYS5ub2RlVmFsdWUpLnJlcGxhY2UoLyhcclxufFxyfFxuKS9nLCIiKSk6Yi5wdXNoKGEubm9kZVZhbHVlKTtlbHNlIGlmKGEubm9kZU5hbWUgaW4gQ28pYi5wdXNoKENvW2Eubm9kZU5hbWVdKTtlbHNlIGZvcihhPQphLmZpcnN0Q2hpbGQ7YTspRG8oYSxiLGMpLGE9YS5uZXh0U2libGluZ30sRW89ZnVuY3Rpb24oYSl7dmFyIGI9W107RG8oYSxiLCEwKTthPWIuam9pbigiIik7YT1hLnJlcGxhY2UoLyBceEFEIC9nLCIgIikucmVwbGFjZSgvXHhBRC9nLCIiKTthPWEucmVwbGFjZSgvXHUyMDBCL2csIiIpO2E9YS5yZXBsYWNlKC8gKy9nLCIgIik7YSE9IiAiJiYoYT1hLnJlcGxhY2UoL15ccyovLCIiKSk7cmV0dXJuIGF9LEZvPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnByb21pc2U9YTt0aGlzLnJlc29sdmU9Yjt0aGlzLnJlamVjdD1jfSxHbz1mdW5jdGlvbigpe3ZhciBhLGIsYz1uZXcgXy5vZShmdW5jdGlvbihkLGUpe2E9ZDtiPWV9KTtyZXR1cm4gbmV3IEZvKGMsYSxiKX0sSG89ZnVuY3Rpb24oYSl7aWYoYS5pYiYmdHlwZW9mIGEuaWI9PSJmdW5jdGlvbiIpcmV0dXJuIGEuaWIoKTtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXB8fHR5cGVvZiBTZXQhPT0idW5kZWZpbmVkIiYmCmEgaW5zdGFuY2VvZiBTZXQpcmV0dXJuIEFycmF5LmZyb20oYS52YWx1ZXMoKSk7aWYodHlwZW9mIGE9PT0ic3RyaW5nIilyZXR1cm4gYS5zcGxpdCgiIik7aWYoXy5xYShhKSl7Zm9yKHZhciBiPVtdLGM9YS5sZW5ndGgsZD0wO2Q8YztkKyspYi5wdXNoKGFbZF0pO3JldHVybiBifWI9W107Yz0wO2ZvcihkIGluIGEpYltjKytdPWFbZF07cmV0dXJuIGJ9LElvPWZ1bmN0aW9uKGEpe2lmKGEuT2MmJnR5cGVvZiBhLk9jPT0iZnVuY3Rpb24iKXJldHVybiBhLk9jKCk7aWYoIWEuaWJ8fHR5cGVvZiBhLmliIT0iZnVuY3Rpb24iKXtpZih0eXBlb2YgTWFwIT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBNYXApcmV0dXJuIEFycmF5LmZyb20oYS5rZXlzKCkpO2lmKCEodHlwZW9mIFNldCE9PSJ1bmRlZmluZWQiJiZhIGluc3RhbmNlb2YgU2V0KSl7aWYoXy5xYShhKXx8dHlwZW9mIGE9PT0ic3RyaW5nIil7dmFyIGI9W107YT1hLmxlbmd0aDtmb3IodmFyIGM9MDtjPGE7YysrKWIucHVzaChjKTsKcmV0dXJuIGJ9Yj1bXTtjPTA7Zm9yKHZhciBkIGluIGEpYltjKytdPWQ7cmV0dXJuIGJ9fX0sSm89ZnVuY3Rpb24oYSxiLGMpe2lmKGEuZm9yRWFjaCYmdHlwZW9mIGEuZm9yRWFjaD09ImZ1bmN0aW9uIilhLmZvckVhY2goYixjKTtlbHNlIGlmKF8ucWEoYSl8fHR5cGVvZiBhPT09InN0cmluZyIpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChhLGIsYyk7ZWxzZSBmb3IodmFyIGQ9SW8oYSksZT1IbyhhKSxmPWUubGVuZ3RoLGc9MDtnPGY7ZysrKWIuY2FsbChjLGVbZ10sZCYmZFtnXSxhKX0sZ209ZnVuY3Rpb24oYSxiKXt0aGlzLmg9dGhpcy5nPW51bGw7dGhpcy5qPWF8fG51bGw7dGhpcy5sPSEhYn0sS289ZnVuY3Rpb24oYSl7YS5nfHwoYS5nPW5ldyBNYXAsYS5oPTAsYS5qJiZfLkViKGEuaixmdW5jdGlvbihiLGMpe2EuYWRkKF8uRGIoYiksYyl9KSl9OwpnbS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7S28odGhpcyk7dGhpcy5qPW51bGw7YT1Mbyh0aGlzLGEpO3ZhciBjPXRoaXMuZy5nZXQoYSk7Y3x8dGhpcy5nLnNldChhLGM9W10pO2MucHVzaChiKTt0aGlzLmgrPTE7cmV0dXJuIHRoaXN9O2dtLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oYSl7S28odGhpcyk7YT1Mbyh0aGlzLGEpO3JldHVybiB0aGlzLmcuaGFzKGEpPyh0aGlzLmo9bnVsbCx0aGlzLmgtPXRoaXMuZy5nZXQoYSkubGVuZ3RoLHRoaXMuZy5kZWxldGUoYSkpOiExfTtnbS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmc9dGhpcy5qPW51bGw7dGhpcy5oPTB9O3ZhciBNbz1mdW5jdGlvbihhLGIpe0tvKGEpO2I9TG8oYSxiKTtyZXR1cm4gYS5nLmhhcyhiKX07Xy5tPWdtLnByb3RvdHlwZTsKXy5tLmZvckVhY2g9ZnVuY3Rpb24oYSxiKXtLbyh0aGlzKTt0aGlzLmcuZm9yRWFjaChmdW5jdGlvbihjLGQpe2MuZm9yRWFjaChmdW5jdGlvbihlKXthLmNhbGwoYixlLGQsdGhpcyl9LHRoaXMpfSx0aGlzKX07Xy5tLk9jPWZ1bmN0aW9uKCl7S28odGhpcyk7Zm9yKHZhciBhPUFycmF5LmZyb20odGhpcy5nLnZhbHVlcygpKSxiPUFycmF5LmZyb20odGhpcy5nLmtleXMoKSksYz1bXSxkPTA7ZDxiLmxlbmd0aDtkKyspZm9yKHZhciBlPWFbZF0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWMucHVzaChiW2RdKTtyZXR1cm4gY307Xy5tLmliPWZ1bmN0aW9uKGEpe0tvKHRoaXMpO3ZhciBiPVtdO2lmKHR5cGVvZiBhPT09InN0cmluZyIpTW8odGhpcyxhKSYmKGI9Yi5jb25jYXQodGhpcy5nLmdldChMbyh0aGlzLGEpKSkpO2Vsc2V7YT1BcnJheS5mcm9tKHRoaXMuZy52YWx1ZXMoKSk7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspYj1iLmNvbmNhdChhW2NdKX1yZXR1cm4gYn07Cl8ubS5zZXQ9ZnVuY3Rpb24oYSxiKXtLbyh0aGlzKTt0aGlzLmo9bnVsbDthPUxvKHRoaXMsYSk7TW8odGhpcyxhKSYmKHRoaXMuaC09dGhpcy5nLmdldChhKS5sZW5ndGgpO3RoaXMuZy5zZXQoYSxbYl0pO3RoaXMuaCs9MTtyZXR1cm4gdGhpc307Xy5tLmdldD1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiBiO2E9dGhpcy5pYihhKTtyZXR1cm4gYS5sZW5ndGg+MD9TdHJpbmcoYVswXSk6Yn07dmFyIE5vPWZ1bmN0aW9uKGEsYixjKXthLnJlbW92ZShiKTtjLmxlbmd0aD4wJiYoYS5qPW51bGwsYS5nLnNldChMbyhhLGIpLF8ud2EoYykpLGEuaCs9Yy5sZW5ndGgpfTsKZ20ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYodGhpcy5qKXJldHVybiB0aGlzLmo7aWYoIXRoaXMuZylyZXR1cm4iIjtmb3IodmFyIGE9W10sYj1BcnJheS5mcm9tKHRoaXMuZy5rZXlzKCkpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXSxlPV8uR2IoZCk7ZD10aGlzLmliKGQpO2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgZz1lO2RbZl0hPT0iIiYmKGcrPSI9IitfLkdiKGRbZl0pKTthLnB1c2goZyl9fXJldHVybiB0aGlzLmo9YS5qb2luKCImIil9Owp2YXIgZW09ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IGdtO2Iuaj1hLmo7YS5nJiYoYi5nPW5ldyBNYXAoYS5nKSxiLmg9YS5oKTtyZXR1cm4gYn0sTG89ZnVuY3Rpb24oYSxiKXtiPVN0cmluZyhiKTthLmwmJihiPWIudG9Mb3dlckNhc2UoKSk7cmV0dXJuIGJ9LE9vPWZ1bmN0aW9uKGEsYil7YiYmIWEubCYmKEtvKGEpLGEuaj1udWxsLGEuZy5mb3JFYWNoKGZ1bmN0aW9uKGMsZCl7dmFyIGU9ZC50b0xvd2VyQ2FzZSgpO2QhPWUmJih0aGlzLnJlbW92ZShkKSxObyh0aGlzLGUsYykpfSxhKSk7YS5sPWJ9O2dtLnByb3RvdHlwZS5leHRlbmQ9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKylKbyhhcmd1bWVudHNbYl0sZnVuY3Rpb24oYyxkKXt0aGlzLmFkZChkLGMpfSx0aGlzKX07CnZhciBQbz0vWyNcL1w/QF0vZyxRbz0vWyNcP10vZyxSbz0vWyNcPzpdL2csU289LyMvZyxmbT1mdW5jdGlvbihhLGIpe3JldHVybiBhP2I/ZGVjb2RlVVJJKGEucmVwbGFjZSgvJTI1L2csIiUyNTI1IikpOmRlY29kZVVSSUNvbXBvbmVudChhKToiIn0sVG89L1sjXD9AXS9nLFVvPWZ1bmN0aW9uKGEpe2E9YS5jaGFyQ29kZUF0KDApO3JldHVybiIlIisoYT4+NCYxNSkudG9TdHJpbmcoMTYpKyhhJjE1KS50b1N0cmluZygxNil9LFZvPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIj8oYT1lbmNvZGVVUkkoYSkucmVwbGFjZShiLFVvKSxjJiYoYT1hLnJlcGxhY2UoLyUyNShbMC05YS1mQS1GXXsyfSkvZywiJSQxIikpLGEpOm51bGx9OwpabC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPXRoaXMubDtiJiZhLnB1c2goVm8oYixQbywhMCksIjoiKTt2YXIgYz10aGlzLmg7aWYoY3x8Yj09ImZpbGUiKWEucHVzaCgiLy8iKSwoYj10aGlzLkIpJiZhLnB1c2goVm8oYixQbywhMCksIkAiKSxhLnB1c2goXy5HYihjKS5yZXBsYWNlKC8lMjUoWzAtOWEtZkEtRl17Mn0pL2csIiUkMSIpKSxjPXRoaXMuQyxjIT1udWxsJiZhLnB1c2goIjoiLFN0cmluZyhjKSk7aWYoYz10aGlzLmopdGhpcy5oJiZjLmNoYXJBdCgwKSE9Ii8iJiZhLnB1c2goIi8iKSxhLnB1c2goVm8oYyxjLmNoYXJBdCgwKT09Ii8iP1FvOlJvLCEwKSk7KGM9dGhpcy5nLnRvU3RyaW5nKCkpJiZhLnB1c2goIj8iLGMpOyhjPXRoaXMuQSkmJmEucHVzaCgiIyIsVm8oYyxTbykpO3JldHVybiBhLmpvaW4oIiIpfTsKWmwucHJvdG90eXBlLnJlc29sdmU9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFpsKHRoaXMpLGM9ISFhLmw7Yz8kbChiLGEubCk6Yz0hIWEuQjtjP2IuQj1hLkI6Yz0hIWEuaDtjP2FtKGIsYS5oKTpjPWEuQyE9bnVsbDt2YXIgZD1hLmo7aWYoYylibShiLGEuQyk7ZWxzZSBpZihjPSEhYS5qKXtpZihkLmNoYXJBdCgwKSE9Ii8iKWlmKHRoaXMuaCYmIXRoaXMuailkPSIvIitkO2Vsc2V7dmFyIGU9Yi5qLmxhc3RJbmRleE9mKCIvIik7ZSE9LTEmJihkPWIuai5zbGljZSgwLGUrMSkrZCl9ZT1kO2lmKGU9PSIuLiJ8fGU9PSIuIilkPSIiO2Vsc2UgaWYoZS5pbmRleE9mKCIuLyIpIT0tMXx8ZS5pbmRleE9mKCIvLiIpIT0tMSl7ZD1lLmxhc3RJbmRleE9mKCIvIiwwKT09MDtlPWUuc3BsaXQoIi8iKTtmb3IodmFyIGY9W10sZz0wO2c8ZS5sZW5ndGg7KXt2YXIgaD1lW2crK107aD09Ii4iP2QmJmc9PWUubGVuZ3RoJiZmLnB1c2goIiIpOmg9PSIuLiI/KChmLmxlbmd0aD4xfHxmLmxlbmd0aD09CjEmJmZbMF0hPSIiKSYmZi5wb3AoKSxkJiZnPT1lLmxlbmd0aCYmZi5wdXNoKCIiKSk6KGYucHVzaChoKSxkPSEwKX1kPWYuam9pbigiLyIpfWVsc2UgZD1lfWM/Y20oYixkKTpjPWEuZy50b1N0cmluZygpIT09IiI7Yz9kbShiLGVtKGEuZykpOmM9ISFhLkE7YyYmKGIuQT1hLkEpO3JldHVybiBifTsKdmFyICRsPWZ1bmN0aW9uKGEsYixjKXthLmw9Yz9mbShiLCEwKTpiO2EubCYmKGEubD1hLmwucmVwbGFjZSgvOiQvLCIiKSk7cmV0dXJuIGF9LGFtPWZ1bmN0aW9uKGEsYixjKXthLmg9Yz9mbShiLCEwKTpiO3JldHVybiBhfSxibT1mdW5jdGlvbihhLGIpe2lmKGIpe2I9TnVtYmVyKGIpO2lmKGlzTmFOKGIpfHxiPDApdGhyb3cgRXJyb3IoIkhgIitiKTthLkM9Yn1lbHNlIGEuQz1udWxsfSxjbT1mdW5jdGlvbihhLGIsYyl7YS5qPWM/Zm0oYiwhMCk6YjtyZXR1cm4gYX0sZG09ZnVuY3Rpb24oYSxiLGMpe2IgaW5zdGFuY2VvZiBnbT8oYS5nPWIsT28oYS5nLGEubykpOihjfHwoYj1WbyhiLFRvKSksYS5nPW5ldyBnbShiLGEubykpfSxXbz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFpsP25ldyBabChhKTpuZXcgWmwoYSl9LFhvPWZ1bmN0aW9uKGEpe3ZhciBiPUlvKGEpO2lmKHR5cGVvZiBiPT0idW5kZWZpbmVkIil0aHJvdyBFcnJvcigiSiIpO3ZhciBjPW5ldyBnbShudWxsKTsKYT1IbyhhKTtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXSxmPWFbZF07QXJyYXkuaXNBcnJheShmKT9ObyhjLGUsZik6Yy5hZGQoZSxmKX1yZXR1cm4gY30sWW89e30sWm89e30sJG89e30sYXA9e30sam09e30scW09e30scG0sVW09e30sYnA9ZnVuY3Rpb24oYSxiLGMpe2E9YS5KO3JldHVybiBfLkhpKGEsYVtfLkhdfDAsYixjKXx8YltfLmZoXXx8KGJbXy5maF09Xy5naChiKSl9LHNuPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5HaShhLGIsXy5MaihjKSwiIil9O18ubT12bS5wcm90b3R5cGU7Xy5tLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzJiZhP2EgaW5zdGFuY2VvZiB2bT9hLmxlZnQ+PXRoaXMubGVmdCYmYS5yaWdodDw9dGhpcy5yaWdodCYmYS50b3A+PXRoaXMudG9wJiZhLmJvdHRvbTw9dGhpcy5ib3R0b206YS54Pj10aGlzLmxlZnQmJmEueDw9dGhpcy5yaWdodCYmYS55Pj10aGlzLnRvcCYmYS55PD10aGlzLmJvdHRvbTohMX07Cl8ubS5jZWlsPWZ1bmN0aW9uKCl7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLnJpZ2h0PU1hdGguY2VpbCh0aGlzLnJpZ2h0KTt0aGlzLmJvdHRvbT1NYXRoLmNlaWwodGhpcy5ib3R0b20pO3RoaXMubGVmdD1NYXRoLmNlaWwodGhpcy5sZWZ0KTtyZXR1cm4gdGhpc307Xy5tLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy50b3A9TWF0aC5mbG9vcih0aGlzLnRvcCk7dGhpcy5yaWdodD1NYXRoLmZsb29yKHRoaXMucmlnaHQpO3RoaXMuYm90dG9tPU1hdGguZmxvb3IodGhpcy5ib3R0b20pO3RoaXMubGVmdD1NYXRoLmZsb29yKHRoaXMubGVmdCk7cmV0dXJuIHRoaXN9O18ubS5yb3VuZD1mdW5jdGlvbigpe3RoaXMudG9wPU1hdGgucm91bmQodGhpcy50b3ApO3RoaXMucmlnaHQ9TWF0aC5yb3VuZCh0aGlzLnJpZ2h0KTt0aGlzLmJvdHRvbT1NYXRoLnJvdW5kKHRoaXMuYm90dG9tKTt0aGlzLmxlZnQ9TWF0aC5yb3VuZCh0aGlzLmxlZnQpO3JldHVybiB0aGlzfTsKXy5tLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiB6bD8odGhpcy5sZWZ0Kz1hLngsdGhpcy5yaWdodCs9YS54LHRoaXMudG9wKz1hLnksdGhpcy5ib3R0b20rPWEueSk6KHRoaXMubGVmdCs9YSx0aGlzLnJpZ2h0Kz1hLHR5cGVvZiBiPT09Im51bWJlciImJih0aGlzLnRvcCs9Yix0aGlzLmJvdHRvbSs9YikpO3JldHVybiB0aGlzfTtfLm09d20ucHJvdG90eXBlO18ubS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIHpsP2EueD49dGhpcy5sZWZ0JiZhLng8PXRoaXMubGVmdCt0aGlzLndpZHRoJiZhLnk+PXRoaXMudG9wJiZhLnk8PXRoaXMudG9wK3RoaXMuaGVpZ2h0OnRoaXMubGVmdDw9YS5sZWZ0JiZ0aGlzLmxlZnQrdGhpcy53aWR0aD49YS5sZWZ0K2Eud2lkdGgmJnRoaXMudG9wPD1hLnRvcCYmdGhpcy50b3ArdGhpcy5oZWlnaHQ+PWEudG9wK2EuaGVpZ2h0fTsKXy5tLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5jZWlsKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLm0uZmxvb3I9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5mbG9vcih0aGlzLmxlZnQpO3RoaXMudG9wPU1hdGguZmxvb3IodGhpcy50b3ApO3RoaXMud2lkdGg9TWF0aC5mbG9vcih0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmZsb29yKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5tLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGgucm91bmQodGhpcy5sZWZ0KTt0aGlzLnRvcD1NYXRoLnJvdW5kKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGgucm91bmQodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5yb3VuZCh0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9OwpfLm0udHJhbnNsYXRlPWZ1bmN0aW9uKGEsYil7YSBpbnN0YW5jZW9mIHpsPyh0aGlzLmxlZnQrPWEueCx0aGlzLnRvcCs9YS55KToodGhpcy5sZWZ0Kz1hLHR5cGVvZiBiPT09Im51bWJlciImJih0aGlzLnRvcCs9YikpO3JldHVybiB0aGlzfTsKdmFyIGNwPWZ1bmN0aW9uKGEsYil7YTp7dmFyIGM9Xy5zZChhKTtpZihjLmRlZmF1bHRWaWV3JiZjLmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUmJihjPWMuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpKSl7Yz1jW2JdfHxjLmdldFByb3BlcnR5VmFsdWUoYil8fCIiO2JyZWFrIGF9Yz0iIn1yZXR1cm4gY3x8KGEuY3VycmVudFN0eWxlP2EuY3VycmVudFN0eWxlW2JdOm51bGwpfHxhLnN0eWxlJiZhLnN0eWxlW2JdfSxkcD1mdW5jdGlvbihhKXt0eXBlb2YgYT09Im51bWJlciImJihhKz0icHgiKTtyZXR1cm4gYX0sZXA9ZnVuY3Rpb24oYSxiKXtpZihiIGluc3RhbmNlb2Ygemwpe3ZhciBjPWIueDtiPWIueX1lbHNlIGM9YixiPXZvaWQgMDthLnN0eWxlLmxlZnQ9ZHAoYyk7YS5zdHlsZS50b3A9ZHAoYil9LGZwPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gYS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX1jYXRjaChiKXtyZXR1cm57bGVmdDowLHRvcDowLHJpZ2h0OjAsCmJvdHRvbTowfX19LGdwPWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2QoYSksYz1jcChhLCJwb3NpdGlvbiIpLGQ9Yz09ImZpeGVkInx8Yz09ImFic29sdXRlIjtmb3IoYT1hLnBhcmVudE5vZGU7YSYmYSE9YjthPWEucGFyZW50Tm9kZSlpZihhLm5vZGVUeXBlPT0xMSYmYS5ob3N0JiYoYT1hLmhvc3QpLGM9Y3AoYSwicG9zaXRpb24iKSxkPWQmJmM9PSJzdGF0aWMiJiZhIT1iLmRvY3VtZW50RWxlbWVudCYmYSE9Yi5ib2R5LCFkJiYoYS5zY3JvbGxXaWR0aD5hLmNsaWVudFdpZHRofHxhLnNjcm9sbEhlaWdodD5hLmNsaWVudEhlaWdodHx8Yz09ImZpeGVkInx8Yz09ImFic29sdXRlInx8Yz09InJlbGF0aXZlIikpcmV0dXJuIGE7cmV0dXJuIG51bGx9LGhwPWZ1bmN0aW9uKGEpe3ZhciBiPV8uc2QoYSksYz1uZXcgemwoMCwwKTtpZihhPT0oYj9fLnNkKGIpOmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQpcmV0dXJuIGM7YT1mcChhKTtiPV8ubGIoYik7Yj1LbihiLmcpO2MueD1hLmxlZnQrYi54OwpjLnk9YS50b3ArYi55O3JldHVybiBjfSxpcD1mdW5jdGlvbihhKXtmb3IodmFyIGI9bmV3IHZtKDAsSW5maW5pdHksSW5maW5pdHksMCksYz1fLmxiKGEpLGQ9Yy5nLmJvZHksZT1jLmcuZG9jdW1lbnRFbGVtZW50LGY9Sm4oYy5nKTthPWdwKGEpOylpZigoIV8uVmN8fGEuY2xpZW50SGVpZ2h0IT0wfHxhIT1kKSYmYSE9ZCYmYSE9ZSYmY3AoYSwib3ZlcmZsb3ciKSE9InZpc2libGUiKXt2YXIgZz1ocChhKSxoPW5ldyB6bChhLmNsaWVudExlZnQsYS5jbGllbnRUb3ApO2cueCs9aC54O2cueSs9aC55O2IudG9wPU1hdGgubWF4KGIudG9wLGcueSk7Yi5yaWdodD1NYXRoLm1pbihiLnJpZ2h0LGcueCthLmNsaWVudFdpZHRoKTtiLmJvdHRvbT1NYXRoLm1pbihiLmJvdHRvbSxnLnkrYS5jbGllbnRIZWlnaHQpO2IubGVmdD1NYXRoLm1heChiLmxlZnQsZy54KX1kPWYuc2Nyb2xsTGVmdDtmPWYuc2Nyb2xsVG9wO2IubGVmdD1NYXRoLm1heChiLmxlZnQsZCk7Yi50b3A9TWF0aC5tYXgoYi50b3AsCmYpO2M9Xy5pYihjLmcuZGVmYXVsdFZpZXd8fHdpbmRvdyk7Yi5yaWdodD1NYXRoLm1pbihiLnJpZ2h0LGQrYy53aWR0aCk7Yi5ib3R0b209TWF0aC5taW4oYi5ib3R0b20sZitjLmhlaWdodCk7cmV0dXJuIGIudG9wPj0wJiZiLmxlZnQ+PTAmJmIuYm90dG9tPmIudG9wJiZiLnJpZ2h0PmIubGVmdD9iOm51bGx9LGpwPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IHpsKDAsMCksZD1fLm1iKF8uc2QoYSkpO2E6e3RyeXtfLlFjKGQucGFyZW50KTt2YXIgZT0hMDticmVhayBhfWNhdGNoKGYpe31lPSExfWlmKCFlKXJldHVybiBjO2RvIGQ9PWI/ZT1ocChhKTooZT1mcChhKSxlPW5ldyB6bChlLmxlZnQsZS50b3ApKSxjLngrPWUueCxjLnkrPWUueTt3aGlsZShkJiZkIT1iJiZkIT1kLnBhcmVudCYmKGE9ZC5mcmFtZUVsZW1lbnQpJiYoZD1kLnBhcmVudCkpO3JldHVybiBjfSxscD1mdW5jdGlvbihhKXt2YXIgYj1rcDtpZihjcChhLCJkaXNwbGF5IikhPSJub25lIilyZXR1cm4gYihhKTt2YXIgYz0KYS5zdHlsZSxkPWMuZGlzcGxheSxlPWMudmlzaWJpbGl0eSxmPWMucG9zaXRpb247Yy52aXNpYmlsaXR5PSJoaWRkZW4iO2MucG9zaXRpb249ImFic29sdXRlIjtjLmRpc3BsYXk9ImlubGluZSI7YT1iKGEpO2MuZGlzcGxheT1kO2MucG9zaXRpb249ZjtjLnZpc2liaWxpdHk9ZTtyZXR1cm4gYX0sa3A9ZnVuY3Rpb24oYSl7dmFyIGI9YS5vZmZzZXRXaWR0aCxjPWEub2Zmc2V0SGVpZ2h0LGQ9Xy5WYyYmIWImJiFjO3JldHVybihiPT09dm9pZCAwfHxkKSYmYS5nZXRCb3VuZGluZ0NsaWVudFJlY3Q/KGE9ZnAoYSksbmV3IF8uQ2EoYS5yaWdodC1hLmxlZnQsYS5ib3R0b20tYS50b3ApKTpuZXcgXy5DYShiLGMpfSxtcD1mdW5jdGlvbihhLGIpe2Euc3R5bGUuZGlzcGxheT1iPyIiOiJub25lIn0sbnA9ZnVuY3Rpb24oYSxiKXtiPV8ubGIoYik7dmFyIGM9SW4oYi5nLCJIRUFEIilbMF07aWYoIWMpe3ZhciBkPUluKGIuZywiQk9EWSIpWzBdO2M9Yi5TKCJIRUFEIik7ZC5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLApkKX1kPWIuUygiU1RZTEUiKTt2YXIgZT1fLk9hKCJzdHlsZSIsZG9jdW1lbnQpO2UmJmQuc2V0QXR0cmlidXRlKCJub25jZSIsZSk7YT1ObChhKTtfLnYudHJ1c3RlZFR5cGVzP18uQ2QoZCxhKTpkLmlubmVySFRNTD1hO2IuYXBwZW5kQ2hpbGQoYyxkKX0sb3A9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLkNhKGEub2Zmc2V0V2lkdGgsYS5vZmZzZXRIZWlnaHQpfSxwcD1mdW5jdGlvbihhLGIsYyl7YT1hLnN0eWxlO18uVWM/YS5Nb3pCb3hTaXppbmc9YzpfLlZjP2EuV2Via2l0Qm94U2l6aW5nPWM6YS5ib3hTaXppbmc9YzthLndpZHRoPU1hdGgubWF4KGIud2lkdGgsMCkrInB4IjthLmhlaWdodD1NYXRoLm1heChiLmhlaWdodCwwKSsicHgifSxxcD1mdW5jdGlvbihhLGIpe3BwKGEsYiwiY29udGVudC1ib3giKX0scnA9ZnVuY3Rpb24oYSl7aWYoYSE9bnVsbClzd2l0Y2goYS5KZCl7Y2FzZSAxOnJldHVybiAxO2Nhc2UgLTE6cmV0dXJuLTE7Y2FzZSAwOnJldHVybiAwfXJldHVybiBudWxsfSwKc3A9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLnhsP1huKGEpPyEwOiEhYS5tYSgpOmEgaW5zdGFuY2VvZiBfLnpmPyEhYS5tYSgpOiEhYX0sdHA9LzwvZyx1cD1mdW5jdGlvbihhLGIpe2E9YS5yZXBsYWNlKC88XC8vZywiPFxcLyIpLnJlcGxhY2UoL1xdXF0+L2csIl1dXFw+Iik7cmV0dXJuIGI/YS5yZXBsYWNlKC97L2csIiBcXHsiKS5yZXBsYWNlKC99L2csIiBcXH0iKS5yZXBsYWNlKC9cL1wqL2csIi8gKiIpLnJlcGxhY2UoL1xcJC8sIlxcICIpOmF9LHZwPWZ1bmN0aW9uKGEpe2E9U3RyaW5nKGEpO2Zvcih2YXIgYj1mdW5jdGlvbihkLGUsZil7Zm9yKHZhciBnPU1hdGgubWluKGUubGVuZ3RoLWYsZC5sZW5ndGgpLGg9MDtoPGc7aCsrKXt2YXIgaz1lW2YraF07aWYoZFtoXSE9PSgiQSI8PWsmJms8PSJaIj9rLnRvTG93ZXJDYXNlKCk6aykpcmV0dXJuITF9cmV0dXJuITB9LGM9MDsoYz1hLmluZGV4T2YoIjwiLGMpKSE9LTE7KXtpZihiKCJceDNjL3NjcmlwdCIsCmEsYyl8fGIoIlx4M2MhLS0iLGEsYykpcmV0dXJuInpTb3l6IjtjKz0xfXJldHVybiBhfSx3cD1mdW5jdGlvbihhLGIpe3JldHVybiBhIT1udWxsJiZhLlpiPT09Yn0seHA9ZnVuY3Rpb24oYSl7cmV0dXJuIHdwKGEsJG8pP2EubWEoKTphIGluc3RhbmNlb2YgXy5MYT9fLk5hKGEpLnRvU3RyaW5nKCk6ImFib3V0OmludmFsaWQjelNveXoifSx6cD1mdW5jdGlvbigpe3ZhciBhO3dwKCIiLGFwKT9hPSIiLm1hKCk6YT15cC50ZXN0KCIiKT8iIjoielNveXoiO3dwKGEsYXApJiYoYT1hLm1hKCkpO3JldHVybihhJiYhYS5zdGFydHNXaXRoKCIgIik/IiAiOiIiKSthfSxBcD1mdW5jdGlvbihhKXtyZXR1cm4gd3AoYSxfLm9sKT91cChhLm1hKCksITEpOmE9PW51bGw/IiI6YSBpbnN0YW5jZW9mIF8ucGw/dXAoTmwoYSksITEpOnVwKFN0cmluZyhhKSwhMCl9LEJwPXsiXHgwMCI6IiYjMDsiLCJcdCI6IiYjOTsiLCJcbiI6IiYjMTA7IiwiXHYiOiImIzExOyIsIlxmIjoiJiMxMjsiLCJcciI6IiYjMTM7IiwKIiAiOiImIzMyOyIsJyInOiImcXVvdDsiLCImIjoiJmFtcDsiLCInIjoiJiMzOTsiLCItIjoiJiM0NTsiLCIvIjoiJiM0NzsiLCI8IjoiJmx0OyIsIj0iOiImIzYxOyIsIj4iOiImZ3Q7IiwiYCI6IiYjOTY7IiwiXHUwMDg1IjoiJiMxMzM7IiwiXHUwMGEwIjoiJiMxNjA7IiwiXHUyMDI4IjoiJiM4MjMyOyIsIlx1MjAyOSI6IiYjODIzMzsifSxDcD1mdW5jdGlvbihhKXtyZXR1cm4gQnBbYV19LERwPXsiXHgwMCI6IlxceDAwIiwiXGIiOiJcXHgwOCIsIlx0IjoiXFx0IiwiXG4iOiJcXG4iLCJcdiI6IlxceDBiIiwiXGYiOiJcXGYiLCJcciI6IlxcciIsJyInOiJcXHgyMiIsJDoiXFx4MjQiLCImIjoiXFx4MjYiLCInIjoiXFx4MjciLCIoIjoiXFx4MjgiLCIpIjoiXFx4MjkiLCIqIjoiXFx4MmEiLCIrIjoiXFx4MmIiLCIsIjoiXFx4MmMiLCItIjoiXFx4MmQiLCIuIjoiXFx4MmUiLCIvIjoiXFwvIiwiOiI6IlxceDNhIiwiPCI6IlxceDNjIiwiPSI6IlxceDNkIiwiPiI6IlxceDNlIiwiPyI6IlxceDNmIiwKIlsiOiJcXHg1YiIsIlxcIjoiXFxcXCIsIl0iOiJcXHg1ZCIsIl4iOiJcXHg1ZSIsInsiOiJcXHg3YiIsInwiOiJcXHg3YyIsIn0iOiJcXHg3ZCIsIlx1MDA4NSI6IlxceDg1IiwiXHUyMDI4IjoiXFx1MjAyOCIsIlx1MjAyOSI6IlxcdTIwMjkifSxFcD1mdW5jdGlvbihhKXtyZXR1cm4gRHBbYV19LEZwPXsiXHgwMCI6IlxcMCAiLCJcYiI6IlxcOCAiLCJcdCI6IlxcOSAiLCJcbiI6IlxcYSAiLCJcdiI6IlxcYiAiLCJcZiI6IlxcYyAiLCJcciI6IlxcZCAiLCciJzoiXFwyMiAiLCImIjoiXFwyNiAiLCInIjoiXFwyNyAiLCIoIjoiXFwyOCAiLCIpIjoiXFwyOSAiLCIqIjoiXFwyYSAiLCIvIjoiXFwyZiAiLCI6IjoiXFwzYSAiLCI7IjoiXFwzYiAiLCI8IjoiXFwzYyAiLCI9IjoiXFwzZCAiLCI+IjoiXFwzZSAiLCJAIjoiXFw0MCAiLCJcXCI6IlxcNWMgIiwieyI6IlxcN2IgIiwifSI6IlxcN2QgIiwiXHUwMDg1IjoiXFw4NSAiLCJcdTAwYTAiOiJcXGEwICIsIlx1MjAyOCI6IlxcMjAyOCAiLAoiXHUyMDI5IjoiXFwyMDI5ICJ9LEdwPWZ1bmN0aW9uKGEpe3JldHVybiBGcFthXX0sSHA9eyJceDAwIjoiJTAwIiwiXHUwMDAxIjoiJTAxIiwiXHUwMDAyIjoiJTAyIiwiXHUwMDAzIjoiJTAzIiwiXHUwMDA0IjoiJTA0IiwiXHUwMDA1IjoiJTA1IiwiXHUwMDA2IjoiJTA2IiwiXHUwMDA3IjoiJTA3IiwiXGIiOiIlMDgiLCJcdCI6IiUwOSIsIlxuIjoiJTBBIiwiXHYiOiIlMEIiLCJcZiI6IiUwQyIsIlxyIjoiJTBEIiwiXHUwMDBlIjoiJTBFIiwiXHUwMDBmIjoiJTBGIiwiXHUwMDEwIjoiJTEwIiwiXHUwMDExIjoiJTExIiwiXHUwMDEyIjoiJTEyIiwiXHUwMDEzIjoiJTEzIiwiXHUwMDE0IjoiJTE0IiwiXHUwMDE1IjoiJTE1IiwiXHUwMDE2IjoiJTE2IiwiXHUwMDE3IjoiJTE3IiwiXHUwMDE4IjoiJTE4IiwiXHUwMDE5IjoiJTE5IiwiXHUwMDFhIjoiJTFBIiwiXHUwMDFiIjoiJTFCIiwiXHUwMDFjIjoiJTFDIiwiXHUwMDFkIjoiJTFEIiwiXHUwMDFlIjoiJTFFIiwiXHUwMDFmIjoiJTFGIiwKIiAiOiIlMjAiLCciJzoiJTIyIiwiJyI6IiUyNyIsIigiOiIlMjgiLCIpIjoiJTI5IiwiPCI6IiUzQyIsIj4iOiIlM0UiLCJcXCI6IiU1QyIsInsiOiIlN0IiLCJ9IjoiJTdEIiwiXHUwMDdmIjoiJTdGIiwiXHUwMDg1IjoiJUMyJTg1IiwiXHUwMGEwIjoiJUMyJUEwIiwiXHUyMDI4IjoiJUUyJTgwJUE4IiwiXHUyMDI5IjoiJUUyJTgwJUE5IiwiXHVmZjAxIjoiJUVGJUJDJTgxIiwiXHVmZjAzIjoiJUVGJUJDJTgzIiwiXHVmZjA0IjoiJUVGJUJDJTg0IiwiXHVmZjA2IjoiJUVGJUJDJTg2IiwiXHVmZjA3IjoiJUVGJUJDJTg3IiwiXHVmZjA4IjoiJUVGJUJDJTg4IiwiXHVmZjA5IjoiJUVGJUJDJTg5IiwiXHVmZjBhIjoiJUVGJUJDJThBIiwiXHVmZjBiIjoiJUVGJUJDJThCIiwiXHVmZjBjIjoiJUVGJUJDJThDIiwiXHVmZjBmIjoiJUVGJUJDJThGIiwiXHVmZjFhIjoiJUVGJUJDJTlBIiwiXHVmZjFiIjoiJUVGJUJDJTlCIiwiXHVmZjFkIjoiJUVGJUJDJTlEIiwiXHVmZjFmIjoiJUVGJUJDJTlGIiwKIlx1ZmYyMCI6IiVFRiVCQyVBMCIsIlx1ZmYzYiI6IiVFRiVCQyVCQiIsIlx1ZmYzZCI6IiVFRiVCQyVCRCJ9LElwPWZ1bmN0aW9uKGEpe3JldHVybiBIcFthXX0sSnA9L1tceDAwXHgyMlx4MjZceDI3XHgzY1x4M2VdL2csS3A9ZnVuY3Rpb24oYSl7cmV0dXJuIHdwKGEsXy5xbCk/YTphIGluc3RhbmNlb2YgXy5EYz8oMCxfLnRsKShfLmtqKGEpLnRvU3RyaW5nKCkpOigwLF8udGwpKFN0cmluZyhTdHJpbmcoYSkpLnJlcGxhY2UoSnAsQ3ApLHJwKGEpKX0sTHA9L1tceDAwXHgyMlx4MjdceDNjXHgzZV0vZyxNcD1mdW5jdGlvbihhKXtyZXR1cm4geG0oU3RyaW5nKGEpLGZ1bmN0aW9uKCl7cmV0dXJuIiJ9KS5yZXBsYWNlKHRwLCImbHQ7Iil9LFA9ZnVuY3Rpb24oYSl7d3AoYSxfLnFsKT8oYT1NcChhLm1hKCkpLGE9U3RyaW5nKGEpLnJlcGxhY2UoTHAsQ3ApKTphPVN0cmluZyhhKS5yZXBsYWNlKEpwLENwKTtyZXR1cm4gYX0sTnA9L1tceDAwXHgwOS1ceDBkIFx4MjJceDI2XHgyN1x4MmRcL1x4M2MtXHgzZWBceDg1XHhhMFx1MjAyOFx1MjAyOV0vZywKT3A9L1tceDAwXHgwOS1ceDBkIFx4MjJceDI3XHgyZFwvXHgzYy1ceDNlYFx4ODVceGEwXHUyMDI4XHUyMDI5XS9nLFBwPS9bXHgwMFx4MDgtXHgwZFx4MjJceDI2XHgyN1wvXHgzYy1ceDNlXHg1Yi1ceDVkXHg3Ylx4N2RceDg1XHUyMDI4XHUyMDI5XS9nLFFwPWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIiBudWxsICI7aWYod3AoYSxZbykpcmV0dXJuIGEubWEoKTtpZihhIGluc3RhbmNlb2YgXy5QYSlyZXR1cm4gXy5SYShhKS50b1N0cmluZygpO3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpyZXR1cm4iICIrYSsiICI7ZGVmYXVsdDpyZXR1cm4iJyIrU3RyaW5nKFN0cmluZyhhKSkucmVwbGFjZShQcCxFcCkrIicifX0sUnA9L1tceDAwXHgwOC1ceDBkXHgyMlx4MjYtXHgyYVwvXHgzYS1ceDNlQFxcXHg3Ylx4N2RceDg1XHhhMFx1MjAyOFx1MjAyOV0vZyxTcD0vW1x4MDAtIFx4MjJceDI3LVx4MjlceDNjXHgzZVxcXHg3Ylx4N2RceDdmXHg4NVx4YTBcdTIwMjhcdTIwMjlcdWZmMDFcdWZmMDNcdWZmMDRcdWZmMDYtXHVmZjBjXHVmZjBmXHVmZjFhXHVmZjFiXHVmZjFkXHVmZjFmXHVmZjIwXHVmZjNiXHVmZjNkXS9nLApUcD0vXig/IWphdmFzY3JpcHQ6KSg/OlthLXowLTkrLi1dKzp8W14mOlwvPyNdKig/OltcLz8jXXwkKSkvaSxVcD1mdW5jdGlvbihhKXt3cChhLFpvKXx8d3AoYSwkbyk/YT1TdHJpbmcoYSkucmVwbGFjZShTcCxJcCk6YSBpbnN0YW5jZW9mIF8uTGE/KGE9Xy5OYShhKS50b1N0cmluZygpLGE9U3RyaW5nKGEpLnJlcGxhY2UoU3AsSXApKTooYT1TdHJpbmcoYSksYT1UcC50ZXN0KGEpP2EucmVwbGFjZShTcCxJcCk6ImFib3V0OmludmFsaWQjelNveXoiKTtyZXR1cm4gYX0sVnA9L15bXiY6XC8/I10qKD86W1wvPyNdfCQpfF5odHRwcz86fF5maWxlc3lzdGVtOmh0dHBzPzp8XmZ0cDp8XmRhdGE6aW1hZ2VcL1thLXowLTkrLV0rO2Jhc2U2NCxbYS16MC05K1wvXSs9KiR8XmJsb2I6L2ksV3A9ZnVuY3Rpb24oYSl7d3AoYSxabyl8fHdwKGEsJG8pP2E9U3RyaW5nKGEpLnJlcGxhY2UoU3AsSXApOmEgaW5zdGFuY2VvZiBfLkxhPyhhPV8uTmEoYSkudG9TdHJpbmcoKSxhPVN0cmluZyhhKS5yZXBsYWNlKFNwLApJcCkpOihhPVN0cmluZyhhKSxhPVZwLnRlc3QoYSk/YS5yZXBsYWNlKFNwLElwKToiYWJvdXQ6aW52YWxpZCN6U295eiIpO3JldHVybiBhfSx5cD0vXig/IW9ufHNyY3woPzphY3Rpb258YXJjaGl2ZXxiYWNrZ3JvdW5kfGNpdGV8Y2xhc3NpZHxjb2RlYmFzZXxjb250ZW50fGRhdGF8ZHN5bmN8aHJlZnxodHRwLWVxdWl2fGxvbmdkZXNjfHN0eWxlfHVzZW1hcClccyokKSg/OlthLXowLTlfJDotXSopJC9pLFhwPS9eW2EtekEtWjAtOStcL18tXSs9ezAsMn0kLyxZcD1mdW5jdGlvbihhKXthPVN0cmluZyhhKTtyZXR1cm4gWHAudGVzdChhKT9hOiJ6U295eiJ9LFpwPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihacCxfLkopO3ZhciBDbT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgWnA7cmV0dXJuIEdsKGIsMyxhLF8uQmopfTt2YXIgJHA9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKCRwLF8uSik7JHAucHJvdG90eXBlLkphPWZ1bmN0aW9uKCl7cmV0dXJuIF8uTih0aGlzLDIpfTskcC5wcm90b3R5cGUuTmE9ZnVuY3Rpb24oYSl7cmV0dXJuIHNuKHRoaXMsMixhKX07JHAucHJvdG90eXBlLm9hPWZ1bmN0aW9uKCl7cmV0dXJuIF8uTih0aGlzLDMpfTskcC5wcm90b3R5cGUubmE9ZnVuY3Rpb24oYSl7cmV0dXJuIHNuKHRoaXMsMyxhKX07dmFyIGFxPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihhcSxfLkopO3ZhciBicT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoYnEsXy5KKTt2YXIgY3E9Xy5NaihicSk7dmFyIGRxPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBhfX0sZXE9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGIubGVuZ3RoLTI7Yys9Myl7dmFyIGQ9Yi5jaGFyQXQoYysyKTtkPWQ+PSJhIj9kLmNoYXJDb2RlQXQoMCktODc6TnVtYmVyKGQpO2Q9Yi5jaGFyQXQoYysxKT09IisiP2E+Pj5kOmE8PGQ7YT1iLmNoYXJBdChjKT09IisiP2ErZCY0Mjk0OTY3Mjk1OmFeZH1yZXR1cm4gYX0sZ3E9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPWZxLnNwbGl0KCIuIiksYz1OdW1iZXIoYlswXSl8fDAsZD1bXSxlPTAsZj0wO2Y8YS5sZW5ndGg7ZisrKXt2YXIgZz1hLmNoYXJDb2RlQXQoZik7ZzwxMjg/ZFtlKytdPWc6KGc8MjA0OD9kW2UrK109Zz4+NnwxOTI6KChnJjY0NTEyKT09NTUyOTYmJmYrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChmKzEpJjY0NTEyKT09NTYzMjA/KGc9NjU1MzYrKChnJjEwMjMpPDwxMCkrKGEuY2hhckNvZGVBdCgrK2YpJjEwMjMpLGRbZSsrXT0KZz4+MTh8MjQwLGRbZSsrXT1nPj4xMiY2M3wxMjgpOmRbZSsrXT1nPj4xMnwyMjQsZFtlKytdPWc+PjYmNjN8MTI4KSxkW2UrK109ZyY2M3wxMjgpfWE9Yztmb3IoZT0wO2U8ZC5sZW5ndGg7ZSsrKWErPWRbZV0sYT1lcShhLCIrLWFeKzYiKTthPWVxKGEsIistM14rYistZiIpO2FePU51bWJlcihiWzFdKXx8MDthPDAmJihhPShhJjIxNDc0ODM2NDcpKzIxNDc0ODM2NDgpO2I9YSUxRTY7cmV0dXJuIGIudG9TdHJpbmcoKSsiLiIrKGJeYyl9LGhxPWZ1bmN0aW9uKCl7dmFyIGE9ZHEoU3RyaW5nLmZyb21DaGFyQ29kZSgxMTYpKSxiPWRxKFN0cmluZy5mcm9tQ2hhckNvZGUoMTA3KSk7YT1bYSgpLGEoKV07YVsxXT1iKCk7cmV0dXJuIGEuam9pbigiIil9O3ZhciBpcT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoaXEsXy5KKTt2YXIganE9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKGpxLF8uSik7dmFyIGtxPV8uTWooanEpO3ZhciBscT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIobHEsXy5KKTt2YXIgT249IiIsbXE9InByb2QiLG5xPSIiLG9xPSJlbiIsQW49IiIscHE9bmV3IGpxLHFxPSExLHJxPW5ldyBEYXRlLHNxPXt9LEJuPTAsdHE9InRlIixmcT0iIix1cT0iIix2cT0iaHR0cHM6Ly8iLHdxPSIiLHhxPSIiLHlxPSIiLHpxPSIiLEFxPSIiLEJxPSIiLENxPSJodHRwczovL3d3dy5nb29nbGUuY29tL2ltYWdlcy9jbGVhcmRvdC5naWYiLERxPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvYnJhbmRpbmcvZ29vZ2xlbG9nby8xeC9nb29nbGVsb2dvX2NvbG9yXzY4eDI4ZHAucG5nIixFcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMXgvdHJhbnNsYXRlXzI0ZHAucG5nIixGcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl80MngxNmRwLnBuZyIsR3E9Imh0dHBzOi8vdHJhbnNsYXRlLmdvb2dsZS5jb20iLEhxPSIiLElxPSIiLEpxPSIiLEtxPQpmdW5jdGlvbigpe0hxPSIvLyIrQnErIi90cmFuc2xhdGVfc3VnZ2VzdGlvbj9jbGllbnQ9Iit0cTtJcT0iLy8iK3VxKyIvdHJhbnNsYXRlX3ZvdGluZz9jbGllbnQ9Iit0cTtKcT0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zdXBwb3J0L3RyYW5zbGF0ZSIrKG9xPT0iZW4iPyIiOiIjZ29vZ3RyYW5zL2VuLyIrb3EpfSxMcT1mdW5jdGlvbihhKXtPbj13aW5kb3cuZ29vZ2xlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZSYmd2luZG93Lmdvb2dsZS50cmFuc2xhdGUudnx8IiI7bXE9YS5fY2Vudnx8InByb2QiO25xPWEuVWd8fCIiO29xPWEuX2NsfHwiZW4iO0FuPWEuX2N1YztwcT1hLl9jZWY/a3EoYS5fY2VmKTpuZXcganE7cXE9YS5fY25hZDtycT1hLl9jZXN0fHxuZXcgRGF0ZTtzcT1hLl9jbmFsfHx7fTtCbj1hLl9jYW09PSJsaWIiPzE6MDt0cT0oYS5fY2FjfHwidGUiKSsoQm49PTE/Il9saWIiOiIiKTtmcT1mdW5jdGlvbigpe2Z1bmN0aW9uIGIoZSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGV9fQp2YXIgYz1TdHJpbmcuZnJvbUNoYXJDb2RlKDEwNyksZD1iKFN0cmluZy5mcm9tQ2hhckNvZGUoMTE2KSk7Yz1iKGMpO2Q9W2QoKSxkKCldO2RbMV09YygpO3JldHVybiBhWyJfYyIrZC5qb2luKGMoKSldfHwiIn0oKTt1cT1hLl9wYWh8fCIiO3ZxPWEuX3Bhc3x8Imh0dHBzOi8vIjt3cT1hLl9wYml8fCIiO3hxPWEuX3BjaXx8IiI7eXE9YS5fcGxsYXx8IiI7enE9YS5fcGxpfHwiIjtBcT1hLl9wc3x8IiI7QnE9YS5fcHVofHwiIjtDcT0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvY2xlYXJkb3QuZ2lmIjtEcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl82OHgyOGRwLnBuZyI7RXE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9wcm9kdWN0LzF4L3RyYW5zbGF0ZV8yNGRwLnBuZyI7RnE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9nb29nbGVsb2dvLzF4L2dvb2dsZWxvZ29fY29sb3JfNDJ4MTZkcC5wbmciOwpHcT0iaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlLmNvbSI7S3EoKX07d2luZG93Lmdvb2dsZSYmd2luZG93Lmdvb2dsZS50cmFuc2xhdGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlLl9jb25zdD9McSh3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5fY29uc3QpOkxxKHtfY2FjOiIiLF9jYW06IiIsX2NlZjoiIixfY2VzdDpuZXcgRGF0ZSxfY2VudjoiIixVZzoiIixfY2dhazoiIixfY2psYzoiIixfY2w6IiIsX2NsbDoiIixfY3VjOiIiLF9jbmFkOiExLF9jbmFsOnt9LENrOiIiLF9wYWg6IiIsX3BhczoiIixfcGJpOiIiLF9wY2k6IiIsX3BoZjoiIixfcGxpOiIiLF9wbGxhOiIiLF9wbWk6IiIsX3BzOiIiLF9wdGE6IiIsX3B1aDoiIn0pO3ZhciBNcT1mdW5jdGlvbihhLGIpe3RoaXMuZz1hO3RoaXMubz1ifSxCbT1mdW5jdGlvbihhLGIpe3JldHVybiBuZXcgVHlwZUVycm9yKCJxYWAiK2IrImAiK2EuZysiYCIrYS5vKyJgIit0eXBlb2YgYS5vKX07TXEucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5vO2lmKGE9PW51bGwpYT1udWxsO2Vsc2UgaWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBCbSh0aGlzLCJzdHJpbmciKTtpZihhPT09bnVsbCl0aHJvdyBFcnJvcigicGFgIit0aGlzLmcpO3JldHVybiBhfTsKdmFyIEFtPWZ1bmN0aW9uKCl7dmFyIGE9YT09PXZvaWQgMD93aW5kb3c6YTthPWE9PT12b2lkIDA/d2luZG93OmE7YT1hPT09dm9pZCAwP3dpbmRvdzphO2E9YS5XSVpfZ2xvYmFsX2RhdGE7YT1uZXcgTXEoInhXdXVHYyIsYSYmInhXdXVHYyJpbiBhP2EueFd1dUdjOm51bGwpO3ZhciBiPVtdLGM9TnEoYSk7cmV0dXJuIGM9PT1udWxsP09xKGEsYik6Y30sTnE9ZnVuY3Rpb24oYSl7dmFyIGI9YS5vO2lmKGI9PW51bGwpcmV0dXJuIG51bGw7QXJyYXkuaXNBcnJheShiKXx8KHR5cGVvZiBiIT09InN0cmluZyI/Yj1bYl06KGI9Yi50cmltKCksYj1iPT0iIj9bXTpiLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBjLnRyaW0oKX0pKSk7cmV0dXJuIE9xKGEsYil9LE9xPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5nKyJbIjtyZXR1cm4gQXJyYXkuZnJvbShiLGZ1bmN0aW9uKGQsZSl7cmV0dXJuIG5ldyBNcShjK2UrIl0iLGQpfSl9OwpNcS5wcm90b3R5cGUub2JqZWN0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMubztpZihiPT1udWxsKXtpZihhPT09dm9pZCAwKXRocm93IEVycm9yKCJwYWAiK3RoaXMuZyk7cmV0dXJuIGF9aWYodHlwZW9mIGI9PT0ib2JqZWN0IiYmYi5jb25zdHJ1Y3Rvcj09PU9iamVjdCl7YT17fTt2YXIgYz10aGlzLmcrIi4iLGQ7Zm9yKGQgaW4gYilhW2RdPW5ldyBNcShjK2QsYltkXSk7cmV0dXJuIGF9dGhyb3cgQm0odGhpcywib2JqZWN0Iik7fTt2YXIgUHE9ZnVuY3Rpb24oKXt2YXIgYTt0aGlzLmc9YT1hPT09dm9pZCAwP0RtKCk6YX07UHEucHJvdG90eXBlLmxvZz1mdW5jdGlvbihhKXtfLmFsKHRoaXMuZyxhKX07dmFyIFFxPW5ldyBQcTt2YXIgUnE9RW0oImluaXRpYWxpemVkIiksU3E9RW0oImluaXRpYXRlZCIpLFRxPUVtKCJyZXN0b3JlZCIpLFVxPUVtKCJwYWdlX2xvYWRfdG9faW5pdGlhbGl6ZWQiKSxWcT1FbSgiaW5pdGlhbGl6YXRpb25fdG9fdHJhbnNsYXRpb25fdHJpZ2dlcmVkIik7dmFyIFdxPWZ1bmN0aW9uKGEpe3ZhciBiPSJ4YiI7aWYoYS54YiYmYS5oYXNPd25Qcm9wZXJ0eShiKSlyZXR1cm4gYS54YjtiPW5ldyBhO3JldHVybiBhLnhiPWJ9Oy8qCgpNYXRoLnV1aWQuanMgKHYxLjQpCmh0dHA6Ly93d3cuYnJvb2ZhLmNvbQptYWlsdG86cm9iZXJ0QGJyb29mYS5jb20KQ29weXJpZ2h0IChjKSAyMDEwIFJvYmVydCBLaWVmZmVyCkR1YWwgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBhbmQgR1BMIGxpY2Vuc2VzLgoqLwp2YXIgWHE9IjAxMjM0NTY3ODlBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Ii5zcGxpdCgiIik7Zm9yKHZhciBZcSxacT1BcnJheSgzNiksJHE9MCxhcixicj0wO2JyPDM2O2JyKyspYnI9PTh8fGJyPT0xM3x8YnI9PTE4fHxicj09MjM/WnFbYnJdPSItIjpicj09MTQ/WnFbYnJdPSI0IjooJHE8PTImJigkcT0zMzU1NDQzMitNYXRoLnJhbmRvbSgpKjE2Nzc3MjE2fDApLGFyPSRxJjE1LCRxPj49NCxacVticl09WHFbYnI9PTE5P2FyJjN8ODphcl0pO1lxPVpxLmpvaW4oIiIpOwp2YXIgY3I9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZz1hPWE9PT12b2lkIDA/WXE6YTt0aGlzLkViPWI9PT12b2lkIDA/IiI6Yjt0aGlzLkZiPWM9PT12b2lkIDA/IiI6Y30sZ3I9ZnVuY3Rpb24oYSl7dmFyIGI9ZHIoYSw3KTtlcihhLGIpO2ZyKGIsNyl9LGhyPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5sYj09PXZvaWQgMD8wOmIubGI7dmFyIGQ9Yi5NZj09PXZvaWQgMD8wOmIuTWY7dmFyIGU9Yi5nZz09PXZvaWQgMD8wOmIuZ2c7dmFyIGY9Yi5MZj09PXZvaWQgMD8wOmIuTGY7Yj1kcihhLDgpO2VyKGEsYik7YT1uZXcgUm47Yz1fLmlrKGEsMSxjKTtkPV8uaWsoYywzLGQpO2U9Xy5payhkLDIsZSk7ZT1fLmlrKGUsNCxmKTtmPVVuKGIpO18uTChmLDYsZSk7TWF0aC5yYW5kb20oKT49LjAwNXx8KGI9Xy5MayhObig4KSxfLldqKGIpKSxRcS5sb2coYikpfSxkcj1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyBfLmxsO2M9Xy5UaihjLDUwLG9xKTt2YXIgZD1uZXcgVG47Yj1fLmtrKGQsMSxiKTsKYj1fLlRqKGIsMix0cSk7YT1fLlRqKGIsMyxhLmcpO3JldHVybiBfLkwoYywxMTIsYSl9LGZyPWZ1bmN0aW9uKGEsYil7YT1fLkxrKE5uKGIpLF8uV2ooYSkpO1FxLmxvZyhhKX0sZXI9ZnVuY3Rpb24oYSxiKXtiLk5hKGEuRWIpO2IubmEoYS5GYil9O3ZhciBpcj1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz0wO2M8YS5sZW5ndGg7KytjKWJbYVtjXV09ITA7cmV0dXJuIGJ9LGpyPWZ1bmN0aW9uKGEpe3RoaXMuaD1hP1thXTpbXTt0aGlzLmc9WzBdO3RoaXMuaj0hMX07anIucHJvdG90eXBlLnBhc3NlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmp9O2pyLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbihhKXtpZih0aGlzLmopcmV0dXJuIGF8fGZ1bmN0aW9uKCl7fTt0aGlzLmcucHVzaCgwKTt2YXIgYj10aGlzLmcubGVuZ3RoLTE7cmV0dXJuKDAsXy55KShmdW5jdGlvbigpe3RoaXMuZ1tiXSsrO2EmJmEuYXBwbHkobnVsbCxhcmd1bWVudHMpO2tyKHRoaXMpfSx0aGlzKX07CmpyLnByb3RvdHlwZS5kZWxheT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5qP2E6KDAsXy55KShmdW5jdGlvbigpe2lmKHRoaXMuailhLmFwcGx5KG51bGwsYXJndW1lbnRzKTtlbHNle3ZhciBiPWFyZ3VtZW50czt0aGlzLmgucHVzaChmdW5jdGlvbigpe2EuYXBwbHkobnVsbCxiKX0pfX0sdGhpcyl9O2pyLnByb3RvdHlwZS5maW5pc2g9ZnVuY3Rpb24oKXt0aGlzLmdbMF09MTtrcih0aGlzKX07CnZhciBrcj1mdW5jdGlvbihhKXtmb3IodmFyIGI9MDtiPGEuZy5sZW5ndGg7KytiKWlmKGEuZ1tiXT09MClyZXR1cm47YS5qPSEwO2ZvcihiPTA7YjxhLmgubGVuZ3RoOysrYil7dmFyIGM9YS5oW2JdO2EuaFtiXT1udWxsO2MuY2FsbCgpfWEuaD1bXTthLmc9W119LGxyPWZ1bmN0aW9uKGEpe3RoaXMuaj1hO3RoaXMuaD10aGlzLmc9ITF9LG1yPWZ1bmN0aW9uKGEsYil7cmV0dXJuKDAsXy55KShmdW5jdGlvbigpe2ImJmIuYXBwbHkobnVsbCxhcmd1bWVudHMpO3RoaXMuaD90aGlzLmd8fCh0aGlzLmouY2FsbCgpLHRoaXMuZz0hMCk6dGhpcy5nPSEwfSxhKX07bHIucHJvdG90eXBlLmZpbmlzaD1mdW5jdGlvbigpe3RoaXMuaHx8KHRoaXMuaD0hMCx0aGlzLmcmJnRoaXMuai5jYWxsKCkpfTt2YXIgbnI9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZz1iO3RoaXMuQj1hO3RoaXMuQT1jfHwwO3RoaXMuaj10aGlzLmg9ITF9LG9yPWZ1bmN0aW9uKGEpe2EuaHx8YS5vKCl9Owpuci5wcm90b3R5cGUubz1mdW5jdGlvbigpeyh0aGlzLmg9KHRoaXMuaj0hIXRoaXMuQi5jYWxsKCkpfHwtLXRoaXMuQTw9MCk/KHRoaXMuZy5jYWxsKG51bGwsdGhpcy5qKSx0aGlzLmw9MCk6dGhpcy5sPXdpbmRvdy5zZXRUaW1lb3V0KCgwLF8ueSkodGhpcy5vLHRoaXMpLDMwKX07bnIucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbigpe3RoaXMubCYmd2luZG93LmNsZWFyVGltZW91dCh0aGlzLmwpO3RoaXMuaD0hMDt0aGlzLmcuY2FsbChudWxsLHRoaXMuail9Owp2YXIgcHI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXthLmRpc3BhdGNoRXZlbnQoYil9fSxxcj1mdW5jdGlvbihhKXthPV8uQWMoYSkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKCJfIiwiLSIpO2lmKGE9PSJ6aC1jbiIpcmV0dXJuInpoLUNOIjtpZihhPT0iemgtdHciKXJldHVybiJ6aC1UVyI7dmFyIGI9YS5pbmRleE9mKCItIik7YT1iPj0wP2Euc3Vic3RyaW5nKDAsYik6YTtyZXR1cm4gYT09InpoIj8iemgtQ04iOmF9LHJyPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM7Zm9yKGMgaW4gYSlpZihhW2NdIT09T2JqZWN0LnByb3RvdHlwZVtjXSl7dmFyIGQ9Xy5HYihjKTtpZihfLm9jKGFbY10pPT0iYXJyYXkiKWZvcih2YXIgZT0wO2U8YVtjXS5sZW5ndGg7KytlKWIucHVzaChkKyI9IitfLkdiKGFbY11bZV0pKTtlbHNlIGIucHVzaChkKyI9IitfLkdiKGFbY10pKX1yZXR1cm4gYi5qb2luKCImIil9LFFtPWZ1bmN0aW9uKGEsYil7Yj1ifHx7fTtiLm5jYT1hO2IuY2xpZW50PXRxOwpPbiYmKGIubG9nbGQ9InYiK09uKTt2YXIgYz1uZXcgSW1hZ2U7Yy5zcmM9Ii8vIitCcSsiL2dlbjIwND8iK3JyKGIpO2Mub25sb2FkPWZ1bmN0aW9uKCl7Yy5vbmxvYWQ9bnVsbH19LHRyPWZ1bmN0aW9uKGEsYil7aWYoKF8uU2N8fF8uUmMpJiZ3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUhPWRvY3VtZW50LmRvbWFpbil7c3I9c3I/c3IrMToxO3ZhciBjPSJmIitzcisiXyIrRGF0ZS5ub3coKS50b1N0cmluZygzNik7d2luZG93W2NdPWZ1bmN0aW9uKCl7d2luZG93W2NdPXZvaWQgMDthLnNyYz0iIyI7YiYmd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtiKCl9LDApfTthLnNyYz0iamF2YXNjcmlwdDp2b2lkKGRvY3VtZW50LndyaXRlKFwiPHNjcmlwdD5kb2N1bWVudC5kb21haW49JyIrZG9jdW1lbnQuZG9tYWluKyInO3BhcmVudFsnIitjKyInXSgpO1x4M2Mvc2NyaXB0PlwiKSkifWVsc2UgYiYmYigpfSxzcix1cj1mdW5jdGlvbigpe3ZhciBhPXt9O3RyeXtmb3IodmFyIGIgaW4gT2JqZWN0LnByb3RvdHlwZSl7dmFyIGM9Ck9iamVjdC5wcm90b3R5cGVbYl07ZGVsZXRlIE9iamVjdC5wcm90b3R5cGVbYl07YVtiXT1jfX1jYXRjaChkKXtyZXR1cm57fX1yZXR1cm4gYX0sdnI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiIGluIGEpT2JqZWN0LnByb3RvdHlwZVtiXT1hW2JdfSx3cj1mdW5jdGlvbihhKXtmb3IodmFyIGIgaW4gYSlpZihhW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSlyZXR1cm4hMTtyZXR1cm4hMH0seHI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYSE9ImF1dG8iJiZhIT0iemgtQ04iJiZhPT1ifSx5cj1mdW5jdGlvbigpe3ZhciBhPXdpbmRvdy5sb2NhdGlvbi5oYXNoLm1hdGNoKC9nb29nbGVcLnRyYW5zbGF0ZVwuZWxlbWVudFwuc3A9KFteJl0rKS8pO3JldHVybiBhJiZhWzFdP2FbMV06bnVsbH07dmFyIFBtPW51bGwsenI9bnVsbCxBcj1mdW5jdGlvbigpe307QXIucHJvdG90eXBlLmF0dGFjaD1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkIGluIGMpY1tkXSE9PU9iamVjdC5wcm90b3R5cGVbZF0mJihiW2RdPXR5cGVvZiBjW2RdPT09ImZ1bmN0aW9uIj9jW2RdOl8uWmooUm0sYSxOdW1iZXIoY1tkXSkpKX07dmFyIENyPWZ1bmN0aW9uKCl7UG0mJkJyKCk7UG09W107enI9Xy54KHdpbmRvdywicGFnZWhpZGUiLGZ1bmN0aW9uKCl7QnIoKX0pfSxCcj1mdW5jdGlvbigpe3pyJiYoXy5WZCh6ciksenI9bnVsbCk7UG0mJlBtLmxlbmd0aCYmUW0oUG0uam9pbigiIikpO1BtPW51bGx9LERyPW5ldyBBcjt2YXIgRXI9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKEVyLF8uSik7dmFyIFRtPV8uS2koRXIpO3ZhciBTbTt2YXIgRnI9ZnVuY3Rpb24oYSl7dGhpcy51cmw9YTt0aGlzLnRpbWVvdXQ9LTE7dGhpcy5qPXRoaXMuaD0iY2FsbGJhY2siO3RoaXMuZz10aGlzLndiPW51bGx9LEpyPWZ1bmN0aW9uKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7YS5nPUdvKCk7dmFyIGM9bmV3IFpsKGEudXJsKSxkPW5ldyBNYXA7YS5qJiZkLnNldChhLmosYS5oKTtjLmcuZXh0ZW5kKFhvKGIpLGQpO0dyKGEpLnRoZW4oZnVuY3Rpb24oKXtIcihhLGMudG9TdHJpbmcoKSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGEuZy5wcm9taXNlfSkudGhlbihmdW5jdGlvbigpe0lyKGEpfSxmdW5jdGlvbigpe0lyKGEpfSk7YS50aW1lb3V0PjAmJihhLmw9c2V0VGltZW91dChmdW5jdGlvbigpe2EuZy5yZWplY3QoRXJyb3IoInJhIikpfSxhLnRpbWVvdXQpKTtyZXR1cm4gYS5nLnByb21pc2V9LEhyPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IE1lc3NhZ2VDaGFubmVsO2Eud2IuY29udGVudFdpbmRvdy5wb3N0TWVzc2FnZSh7dXJsOmIsCmNhbGxiYWNrTmFtZTphLmh9LCIqIixbYy5wb3J0Ml0pO2MucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKGQpe3ZhciBlPXt9O2EubCE9PXZvaWQgMCYmKGNsZWFyVGltZW91dChhLmwpLGEubD12b2lkIDApO2QuZGF0YT09PXZvaWQgMCYmYS5nLnJlamVjdChFcnJvcigic2EiKSk7dHlwZW9mIGQuZGF0YSE9PSJzdHJpbmciJiZhLmcucmVqZWN0KEVycm9yKCJ0YSIpKTt0cnl7ZT1KU09OLnBhcnNlKGQuZGF0YSl9Y2F0Y2goZil7YS5nLnJlamVjdChFcnJvcigidWFgIitmLm1lc3NhZ2UpKX1hLmcucmVzb2x2ZShlKX19LEdyPWZ1bmN0aW9uKGEpe3ZhciBiPUdvKCksYz1fLndkKGRvY3VtZW50LCJJRlJBTUUiKTtpZighYy5zYW5kYm94KXRocm93IEVycm9yKCJ2YSIpO2Muc2FuZGJveC52YWx1ZT0iYWxsb3ctc2NyaXB0cyI7Yy5zdHlsZS5kaXNwbGF5PSJub25lIjthLndiPWM7YT1WbSgpO2E9U2woW18ubWwoIjwhRE9DVFlQRSBodG1sPiIpLFlsKFFsKGEpKV0pO2Muc3JjZG9jPV8ua2ooYSk7CmE9RmwoImRhdGE6dGV4dC9odG1sO2NoYXJzZXQ9VVRGLTg7YmFzZTY0LCIrYnRvYShfLmtqKGEpLnRvU3RyaW5nKCkpKTtjLnNyYz1fLk5hKGEpLnRvU3RyaW5nKCk7Yy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe3JldHVybiBiLnJlc29sdmUoYyl9LCExKTtjLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixmdW5jdGlvbihkKXtiLnJlamVjdChkIGluc3RhbmNlb2YgRXJyb3I/ZDpFcnJvcihTdHJpbmcoZCkpKX0sITEpO2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hcHBlbmRDaGlsZChjKTtyZXR1cm4gYi5wcm9taXNlfSxJcj1mdW5jdGlvbihhKXthLndiIT09bnVsbCYmKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZW1vdmVDaGlsZChhLndiKSxhLndiPW51bGwpfTt2YXIgS3I9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLmc9bmV3IFpsKGEpO2lmKGIpZm9yKHZhciBjIGluIGIpYltjXSE9PU9iamVjdC5wcm90b3R5cGVbY10mJnRoaXMuZy5nLnNldChjLGJbY10pfTtfLkIoS3IsXy51KTtLci5wcm90b3R5cGUuVGE9ZnVuY3Rpb24oKXtyZXR1cm4hMH07S3IucHJvdG90eXBlLlNhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVGEoKX07S3IucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oKXtyZXR1cm4gXy5ZaShudWxsKX07S3IucHJvdG90eXBlLmNhbmNlbD1mdW5jdGlvbigpe307dmFyIExyPWZ1bmN0aW9uKGEsYixjKXtLci5jYWxsKHRoaXMsYSxiKTthPXRoaXMuaD1uZXcgRnIodGhpcy5nKTthLmg9ImNhbGxiYWNrIjthLmo9Yz09PXZvaWQgMD8iY2FsbGJhY2siOmN9O18uQihMcixLcik7THIucHJvdG90eXBlLlRhPWZ1bmN0aW9uKCl7cmV0dXJuITB9OwpMci5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihhKXtyZXR1cm4gSnIodGhpcy5oLGEpfTtMci5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe2EuY2FuY2VsKCl9O3ZhciBNcj1mdW5jdGlvbihhLGIpe0tyLmNhbGwodGhpcyxhLGIpO3RoaXMuaD17fTt0aGlzLmo9MH07Xy5CKE1yLEtyKTtNci5wcm90b3R5cGUuVGE9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Ck1yLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz11cigpLGQ9Kyt0aGlzLmosZT17fSxmPXt9OyJxImluIGEmJihmLnE9YS5xLGRlbGV0ZSBhLnEpO2UuaGE9bmV3IF8uV2Y7dGhpcy5nLmguZW5kc1dpdGgoIi5jb3JwLmdvb2dsZS5jb20iKSYmKGUuaGEuQz0hMCk7dmFyIGc9bmV3IF8ub2UoZnVuY3Rpb24oaCxrKXtfLngoZS5oYSwiY29tcGxldGUiLGZ1bmN0aW9uKCl7aWYoIWUuUmUpe2lmKF8uZ2coZS5oYSkpe3ZhciBsPV8uaWcoZS5oYSk7TnIoYixkKTtyZXR1cm4gaChsKX1iLnhpKCk7bD1fLmlnKGUuaGEpO05yKGIsZCk7cmV0dXJuIGsobCl9fSk7Xy54KGUuaGEsInRpbWVvdXQiLGZ1bmN0aW9uKCl7aWYoIWUuUmUpcmV0dXJuIGIuemkoKSxOcihiLGQpLGsoKX0pfSk7ZS5oYS5zZW5kKHRoaXMuZy50b1N0cmluZygpKyImIitycihhKSwiUE9TVCIscnIoZikseyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifSk7CnRoaXMuaFtkXT1lO3ZyKGMpO3JldHVybiBnfTtNci5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuaFthXTtiJiYoYi5SZT0hMCxOcih0aGlzLGEpKX07dmFyIE5yPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5oW2JdO2MmJihjLmhhJiYoYy5oYS5kaXNwb3NlKCksYy5oYT1udWxsKSxkZWxldGUgYS5oW2JdKX07TXIucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtLci5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO2Zvcih2YXIgYSBpbiB0aGlzLmgpdGhpcy5jYW5jZWwoYSl9O0RyLmF0dGFjaCgxNzE3MCxNci5wcm90b3R5cGUse3ppOjEseGk6Mn0pO3ZhciBPcj1mdW5jdGlvbihhLGIsYyl7S3IuY2FsbCh0aGlzLGEsYyk7dGhpcy5oPWIucHJveHlJc1N1cHBvcnRlZDt0aGlzLmo9ZnVuY3Rpb24oZCxlLGYpe3JldHVybiBfLllpKGIucHJveHlTZW5kKGQsZSxmKSl9O3RoaXMubD1iLnByb3h5Q2FuY2VsfTtfLkIoT3IsS3IpO09yLnByb3RvdHlwZS5UYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmgoKX07Ck9yLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaih0aGlzLmcudG9TdHJpbmcoKSxhLGIpfTtPci5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe3RoaXMubChhKX07dmFyIFByPWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7dGhpcy5oPWE7dGhpcy5nPWI/YjpudWxsfTtfLkIoUHIsXy51KTtQci5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18udS5wcm90b3R5cGUuTS5jYWxsKHRoaXMpfTt2YXIgUnI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy51LmNhbGwodGhpcyk7dmFyIGU7Yj9lPXtjbGllbnQ6Yn06ZT17YW5ubzozLGNsaWVudDp0cSxmb3JtYXQ6Imh0bWwiLHY6IjEuMCJ9O2MmJihlLnNwPWMpO2Uua2V5PWE7T24mJihlLmxvZ2xkPSJ2IitPbik7dGhpcy5nPW51bGw7dGhpcy5oPXtIZjozMDB9O2E9dGhpcy5BPW5ldyBQcihlLGQpO2I9dnEreXE7dGhpcy5vPWEuZz9uZXcgT3IoYixhLmcse2NsaWVudDp0cX0pOm5ldyBMcihiLHtjbGllbnQ6dHF9KTthPXRoaXMuQTtpZihhLmcpe2lmKCFhLmcpdGhyb3cgRXJyb3IoIndhIik7YT1be3ZhOm5ldyBPcih2cSt1cSsiL3RyYW5zbGF0ZV9hL3QiLGEuZyxhLmgpLGNlOjE5MDAsSWY6NDI5NDk2NzI5NSxHZjotMSxXZjowLEtkOiExfV19ZWxzZSBhPVt7dmE6bmV3IE1yKHZxK3VxKyIvdHJhbnNsYXRlX2EvdCIsYS5oKSxjZTozMDcyMCxJZjo0Mjk0OTY3Mjk1LEdmOi0xLFdmOjAsS2Q6ITF9XTt0aGlzLkI9bmV3IFFyKGEpO3RoaXMuaj0KITE7Zm9yKGI9MDtiPGEubGVuZ3RoOysrYil0aGlzLmo9dGhpcy5qfHxhW2JdLnZhLlRhKCk7dGhpcy5qfHx0aGlzLm5pKCl9O18uQihScixfLnUpO1JyLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKGEpe3RoaXMuQ3x8KHRoaXMuQz0hMCx0aGlzLkIuc3RhcnQoKDAsXy55KShmdW5jdGlvbihiKXtiJiYodGhpcy5nPWIsdGhpcy5oLnZhPWIudmEpO2EoKX0sdGhpcykpKX07UnIucHJvdG90eXBlLlRhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07UnIucHJvdG90eXBlLlNhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZyE9PW51bGwmJnRoaXMuZy52YSE9PW51bGwmJnRoaXMuZy52YS5TYSgpfTsKdmFyIFNyPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17cTpjLnN1YnN0cmluZygwLGEuaC5IZiksc2w6ImF1dG8iLHRsOiJlbiJ9O3JldHVybiBuZXcgXy5vZShmdW5jdGlvbihlLGYpe2EuaC52YS5zZW5kKGQsYikudGhlbihmdW5jdGlvbihnKXt0cnl7dmFyIGg9SlNPTi5wYXJzZShnKTtlKGgmJmhbMV18fG51bGwpfWNhdGNoKGspe2UobnVsbCl9fSxmdW5jdGlvbihnKXtyZXR1cm4gZihnfHxudWxsKX0pfSl9OwpSci5wcm90b3R5cGUudHJhbnNsYXRlPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGs9dGhpcyxsPXtxOmIsc2w6Yyx0bDpkfTtsLnRjPWU7ZiYmKGwuY3R0PTEpO2cmJihsLmRvbT0xKTtoJiYobC5zcj0xKTtsW2hxKCldPWdxKGIuam9pbigiIikpO3JldHVybiBuZXcgXy5vZShmdW5jdGlvbihuLHEpe2suZy52YS5zZW5kKGwsYSkudGhlbihmdW5jdGlvbihwKXtpZihwKXtpZih0eXBlb2YgcCE9PSJvYmplY3QiKXRyeXtwPUpTT04ucGFyc2UocCl9Y2F0Y2goQSl7ay5taSgpO3EoKTtyZXR1cm59aWYoXy5vYyhwKSE9ImFycmF5Iil2YXIgcj1bW3AsMjAwXV07ZWxzZSBpZihwLmxlbmd0aD09MiYmXy5vYyhwWzBdKSE9ImFycmF5IiYmXy5vYyhwWzFdKSE9ImFycmF5IilyPVtbcFswXSwyMDAscFsxXV0sW3BbMV0sMjAwLHBbMV1dXTtlbHNle3I9W107Zm9yKHZhciB0PTA7dDxwLmxlbmd0aDsrK3Qpclt0XT1fLm9jKHBbdF0pIT0iYXJyYXkiP1twW3RdLDIwMF06W3BbdF1bMF0sCjIwMCxwW3RdWzFdXX1uKHIpfWVsc2UgcSgpfSl9KX07dmFyIFRyPWZ1bmN0aW9uKGEsYil7YiBpbnN0YW5jZW9mIF8ub2U/Yi50aGVuKGZ1bmN0aW9uKGMpe2EuZy52YS5jYW5jZWwoYyl9KTphLmcudmEuY2FuY2VsKGIpfTtSci5wcm90b3R5cGUubD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuS2Q/dGhpcy5nLmNlLShuZXcgWmwodGhpcy5nLnZhLmcpKS50b1N0cmluZygpLmxlbmd0aDp0aGlzLmcuY2V9O1JyLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5nJiYodGhpcy5nLnZhLmRpc3Bvc2UoKSx0aGlzLmcudmE9bnVsbCk7dGhpcy5oLnZhPW51bGw7dGhpcy5vLmRpc3Bvc2UoKTt0aGlzLm89bnVsbH07RHIuYXR0YWNoKDczNjEsUnIucHJvdG90eXBlLHtuaTpmdW5jdGlvbigpe1FtKCJ0ZV9hdSIpfX0pO0RyLmF0dGFjaCg0NzUwNCxSci5wcm90b3R5cGUse21pOmZ1bmN0aW9uKCl7UW0oInRlX2FmYnIiKX19KTsKdmFyIFFyPWZ1bmN0aW9uKGEpe3RoaXMuaD1hfTtRci5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oYSl7dGhpcy5nPWE7dGhpcy5qPTA7VXIodGhpcyl9O3ZhciBVcj1mdW5jdGlvbihhKXtpZihhLmo+PWEuaC5sZW5ndGgpYS5nKG51bGwpO2Vsc2V7dmFyIGI9YS5oW2EuaisrXTtiLklpP29yKG5ldyBucigoMCxfLnkpKGIudmEuU2EsYi52YSksKDAsXy55KShmdW5jdGlvbihjKXtjP3RoaXMuZyhiKTpVcih0aGlzKX0sYSksYi5JaSkpOmIudmEuU2EoKT9hLmcoYik6VXIoYSl9fTt2YXIgVnI9aXIoIkEgQUJCUiBBQ1JPTllNIEIgQkFTRUZPTlQgQkRPIEJJRyBDSVRFIERGTiBFTSBGT05UIEkgSU5QVVQgTk9CUiBMQUJFTCBRIFJUIFMgU01BTEwgU1BBTiBTVFJJS0UgU1RST05HIFNVQiBTVVAgVEVYVEFSRUEgVFQgVSBWQVIiLnNwbGl0KCIgIikpLFdyPWlyKCJBUFBMRVQgQVJFQSBCQVNFIEZSQU1FIEZSQU1FU0VUIEhSIExJTksgTUVUQSBOT0ZSQU1FUyBOT1NDUklQVCBJTlBVVCBURVhUQVJFQSBUSVRMRSIuc3BsaXQoIiAiKSksWHI9aXIoIkJSIENPREUgSU1HIEtCRCBNQVAgT0JKRUNUIFBBUkFNIFJQIFNDUklQVCBTVFlMRSBXQlIgc3ZnIi5zcGxpdCgiICIpKSxZcj1pcihbInN1Ym1pdCIsImJ1dHRvbiJdKTtYbS5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3JldHVybiBacn07dmFyIFpyPXtkb25lOiEwLHZhbHVlOnZvaWQgMH07WG0ucHJvdG90eXBlLm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307dmFyIGFzPWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5oPSEhYjt0aGlzLm5vZGU9bnVsbDt0aGlzLmc9MDt0aGlzLmo9ITE7dGhpcy5sPSFjO2EmJiRyKHRoaXMsYSxkKTt0aGlzLmRlcHRoPWUhPXZvaWQgMD9lOnRoaXMuZ3x8MDt0aGlzLmgmJih0aGlzLmRlcHRoKj0tMSl9O18uRyhhcyxYbSk7dmFyICRyPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEubm9kZT1iKWEuZz10eXBlb2YgYz09PSJudW1iZXIiP2M6YS5ub2RlLm5vZGVUeXBlIT0xPzA6YS5oPy0xOjE7dHlwZW9mIGQ9PT0ibnVtYmVyIiYmKGEuZGVwdGg9ZCl9LGJzPWZ1bmN0aW9uKGEpe3ZhciBiPWEuaD8tMToxO2EuZz09YiYmKGEuZz1iKi0xLGEuZGVwdGgrPWEuZyooYS5oPy0xOjEpKX07CmFzLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7aWYodGhpcy5qKXtpZighdGhpcy5ub2RlfHx0aGlzLmwmJnRoaXMuZGVwdGg9PTApcmV0dXJuIFpyO3ZhciBhPXRoaXMubm9kZTt2YXIgYj10aGlzLmg/LTE6MTtpZih0aGlzLmc9PWIpe3ZhciBjPXRoaXMuaD9hLmxhc3RDaGlsZDphLmZpcnN0Q2hpbGQ7Yz8kcih0aGlzLGMpOiRyKHRoaXMsYSxiKi0xKX1lbHNlKGM9dGhpcy5oP2EucHJldmlvdXNTaWJsaW5nOmEubmV4dFNpYmxpbmcpPyRyKHRoaXMsYyk6JHIodGhpcyxhLnBhcmVudE5vZGUsYiotMSk7dGhpcy5kZXB0aCs9dGhpcy5nKih0aGlzLmg/LTE6MSl9ZWxzZSB0aGlzLmo9ITA7cmV0dXJuKGE9dGhpcy5ub2RlKT97dmFsdWU6YSxkb25lOiExfTpacn07YXMucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlPT10aGlzLm5vZGUmJighdGhpcy5ub2RlfHxhLmc9PXRoaXMuZyl9Owphcy5wcm90b3R5cGUuc3BsaWNlPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMubm9kZSxjPXRoaXMuaD8xOi0xO3RoaXMuZz09YyYmKHRoaXMuZz1jKi0xLHRoaXMuZGVwdGgrPXRoaXMuZyoodGhpcy5oPy0xOjEpKTt0aGlzLmg9IXRoaXMuaDthcy5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMpO3RoaXMuaD0hdGhpcy5oO2M9Xy5xYShhcmd1bWVudHNbMF0pP2FyZ3VtZW50c1swXTphcmd1bWVudHM7Zm9yKHZhciBkPWMubGVuZ3RoLTE7ZD49MDtkLS0peG8oY1tkXSxiKTtfLkFkKGIpfTt2YXIgZHM9ZnVuY3Rpb24oYSxiKXt0aGlzLmw9ITE7dGhpcy5qPV8uU2M/W106bnVsbDt0aGlzLmg9W107dGhpcy5kb25lPSExO2Zvcih0aGlzLmc9bmV3IGFzKGEsITEsYixhLm5vZGVUeXBlPT09Mz8wOjEsMSk7YT1hLnBhcmVudE5vZGU7KWNzKHRoaXMsYSwhMCk7dGhpcy5oLnB1c2goITEpO3RoaXMuaC5yZXZlcnNlKCk7Zm9yKGE9MTthPHRoaXMuaC5sZW5ndGg7KythKXRoaXMuaFthXT09bnVsbCYmKHRoaXMuaFthXT10aGlzLmhbYS0xXSl9LGNzPWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/ITE6Yzt2YXIgZD0oYi5zdHlsZSYmYi5zdHlsZS53aGl0ZVNwYWNlfHwiIikuc3Vic3RyaW5nKDAsMyk7ZD09PSJwcmUifHwhZCYmYi50YWdOYW1lPT09IlBSRSI/YS5oLnB1c2goITApOmQmJmQhPT0icHJlIj9hLmgucHVzaCghMSk6Yz9hLmgucHVzaChudWxsKTphLmgucHVzaChhLmhbYS5oLmxlbmd0aC0xXSl9LGVzPWZ1bmN0aW9uKGEpe3JldHVybiEhYS5oW2EuaC5sZW5ndGgtCjFdfTtkcy5wcm90b3R5cGUubm9kZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcubm9kZX07ZHMucHJvdG90eXBlLmRlcHRoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5kZXB0aH07CmRzLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaiYmdGhpcy5qLmxlbmd0aD4wJiZ0aGlzLmcuZz09PS0xJiZ0aGlzLmoubGVuZ3RoLS07dGhpcy5nLmc9PT0tMSYmdGhpcy5oLmxlbmd0aC0tO2lmKHRoaXMuaiYmdGhpcy5qLmxlbmd0aD4wJiZ0aGlzLmcuZyE9PTEmJiF0aGlzLmcubm9kZS5uZXh0U2libGluZykkcih0aGlzLmcsdGhpcy5qW3RoaXMuai5sZW5ndGgtMV0sLTEsdGhpcy5nLmRlcHRoLTEpO2Vsc2V7dmFyIGE9dGhpcy5nLm5leHQoKTt0aGlzLmw9ITA7aWYoYS5kb25lKXt0aGlzLmRvbmU9ITA7cmV0dXJufXRoaXMuaiYmdGhpcy5nLmc9PT0xJiZ0aGlzLmoucHVzaCh0aGlzLmcubm9kZSl9dGhpcy5nLmc9PT0xJiZ0aGlzLmwmJmNzKHRoaXMsdGhpcy5nLm5vZGUpfWNhdGNoKGIpe3RoaXMud2koYiksdGhpcy5kb25lPSEwfX07RHIuYXR0YWNoKDUyNzU0LGRzLnByb3RvdHlwZSx7d2k6MX0pO3ZhciBRPXt9LGZzPWZ1bmN0aW9uKCl7UVswXT0iT3ZlcnNldHQiO1FbMV09IkF2YnJ5dCI7UVsyXT0iTHVrayI7UVszXT1mdW5jdGlvbihhKXtyZXR1cm4iR29vZ2xlIGhhciBvdmVyc2F0dCBkZW5uZSBzaWRlbiB0aWwgIithKyIgYXV0b21hdGlzayJ9O1FbNF09ZnVuY3Rpb24oYSl7cmV0dXJuIk92ZXJzYXR0IHRpbDogIithfTtRWzVdPSJGZWlsOiBUamVuZXJlbiBrdW5uZSBpa2tlIGZ1bGxmXHUwMGY4cmUgZm9yZXNwXHUwMGY4cnNlbGVuLiBQclx1MDBmOHYgcFx1MDBlNSBueXR0IHNlbmVyZS4iO1FbNl09IkxlcyBtZXIiO1FbN109ZnVuY3Rpb24oYSl7cmV0dXJuIkRyZXZldCBhdiAiK2F9O1FbOF09Ik92ZXJzZXR0ZXIiO1FbOV09Ik92ZXJzZXR0ZWxzZSBwXHUwMGU1Z1x1MDBlNXIiO1FbMTBdPWZ1bmN0aW9uKGEpe3JldHVybiJWaWwgZHUgb3ZlcnNldHRlIGRlbm5lIHNpZGVuIHRpbCAiK2ErIiBtZWQgR29vZ2xlIE92ZXJzZXR0ZXI/In07UVsxMV09ZnVuY3Rpb24oYSl7cmV0dXJuIlZpcyBkZW5uZSBzaWRlbiBwXHUwMGU1OiAiKwphfTtRWzEyXT0iVmlzIG9yaWdpbmFsIjtRWzEzXT0iSW5uaG9sZGV0IHBcdTAwZTUgZGVubmUgbG9rYWxlIGZpbGVuIHNlbmRlcyB0aWwgR29vZ2xlIHZpYSBlbiBzaWtrZXIgdGlsa29ibGluZyBmb3IgXHUwMGU1IGJsaSBvdmVyc2F0dC4iO1FbMTRdPSJJbm5ob2xkZXQgcFx1MDBlNSBkZW5uZSBzaWtyZSBzaWRlbiBzZW5kZXMgdGlsIEdvb2dsZSB2aWEgZW4gc2lra2VyIHRpbGtvYmxpbmcgZm9yIFx1MDBlNSBibGkgb3ZlcnNhdHQuIjtRWzE1XT0iSW5uaG9sZGV0IHBcdTAwZTUgZGVubmUgaW50cmFuZXR0c2lkZW4gc2VuZGVzIHRpbCBHb29nbGUgdmlhIGVuIHNpa2tlciB0aWxrb2JsaW5nIGZvciBcdTAwZTUgYmxpIG92ZXJzYXR0LiI7UVsxNl09IlZlbGcgc3ByXHUwMGU1ayI7UVsxN109ZnVuY3Rpb24oYSl7cmV0dXJuIlNsXHUwMGU1IGF2IG92ZXJzZXR0ZWxzZSB0aWwgIithfTtRWzE4XT1mdW5jdGlvbihhKXtyZXR1cm4iRGVha3RpdmVyIGZvcjogIithfTtRWzE5XT0iU2tqdWwgYWxsdGlkIjsKUVsyMF09Ik9yaWdpbmFsdGVrc3Q6IjtRWzIxXT0iQmlkcmEgbWVkIGVuIGJlZHJlIG92ZXJzZXR0ZWxzZSI7UVsyMl09IkJpZHJhIjtRWzIzXT0iT3ZlcnNldHQgYWx0IjtRWzI0XT0iR2plbm9wcHJldHQgYWx0IjtRWzI1XT0iQXZicnl0IGFsdCI7UVsyNl09Ik92ZXJzZXR0IGRlbGVuZSB0aWwgbWl0dCBzcHJcdTAwZTVrIjtRWzI3XT1mdW5jdGlvbihhKXtyZXR1cm4iT3ZlcnNldHQgYWx0IHRpbCAiK2F9O1FbMjhdPSJWaXMgb3BwcmlubmVsaWdlIHNwclx1MDBlNWsiO1FbMjldPSJBbHRlcm5hdGl2ZXIiO1FbMzBdPSJTbFx1MDBlNSBhdiBvdmVyc2V0dGVsc2UgZm9yIGRldHRlIG5ldHRzdGVkZXQiO1FbMzFdPW51bGw7UVszMl09IlZpcyBhbHRlcm5hdGl2ZSBvdmVyc2V0dGVsc2VyIjtRWzMzXT0iS2xpa2sgcFx1MDBlNSBvcmQgb3ZlbmZvciBmb3IgXHUwMGU1IGZcdTAwZTUgYWx0ZXJuYXRpdmUgb3ZlcnNldHRlbHNlciI7UVszNF09IkJydWsiO1FbMzVdPSJEcmEgbWVkIFNoaWZ0LXRhc3QgZm9yIFx1MDBlNSBlbmRyZSByZWtrZWZcdTAwZjhsZ2UiOwpRWzM2XT0iS2xpa2sgZm9yIFx1MDBlNSBzZSBhbHRlcm5hdGl2ZSBvdmVyc2V0dGVsc2VyIjtRWzM3XT0iSG9sZCBuZWRlIFNoaWZ0LXRhc3Rlbiwga2xpa2ssIG9nIGRyYSBkZXJldHRlciBvcmRlbmUgb3ZlbmZvciBmb3IgXHUwMGU1IGVuZHJlIHBcdTAwZTUgcmVra2VmXHUwMGY4bGdlbi4iO1FbMzhdPSJUYWtrIGZvciBhdCBkdSBiaWRyYXIgbWVkIG92ZXJzZXR0ZWxzZXNmb3JzbGFnZXQgZGl0dCB0aWwgR29vZ2xlIE92ZXJzZXR0ZXIuIjtRWzM5XT0iQWRtaW5pc3RyZXIgb3ZlcnNldHRpbmcgZm9yIGRldHRlIG5ldHRzdGVkZXQiO1FbNDBdPSJLbGlrayBwXHUwMGU1IGV0IG9yZCBmb3IgXHUwMGU1IHNlIGFsdGVybmF0aXZlIG92ZXJzZXR0ZWxzZXIsIGVsbGVyIGRvYmJlbHRrbGlrayBmb3IgXHUwMGU1IHJlZGlnZXJlIGRpcmVrdGUiO1FbNDFdPSJPcHByaW5uZWxpZyB0ZWtzdCI7UVs0Ml09Ik92ZXJzZXR0ZXIiO1FbNDNdPSJPdmVyc2V0dCI7UVs0NF09IlJldHRpbmdlbiBkaW4gZXIgc2VuZHQgaW5uLiI7ClFbNDVdPSJGZWlsOiBTcHJcdTAwZTVrZXQgdGlsIG5ldHRzaWRlbiBzdFx1MDBmOHR0ZXMgaWtrZS4iO1FbNDZdPSJNb2R1bCBmb3Igc3ByXHUwMGU1a292ZXJzZXR0aW5nIjtRWzQ3XT0iR2kgZW4gdnVyZGVyaW5nIGF2IGRlbm5lIG92ZXJzZXR0ZWxzZW4iO1FbNDhdPSJUaWxiYWtlbWVsZGluZ2VuIGRpbiBicnVrZXMgZm9yIFx1MDBlNSBnalx1MDBmOHJlIEdvb2dsZSBPdmVyc2V0dGVyIGJlZHJlIjtRWzQ5XT0iR29kIG92ZXJzZXR0ZWxzZSI7UVs1MF09IkRcdTAwZTVybGlnIG92ZXJzZXR0ZWxzZSI7UVs1MV09Ik92ZXJzZXR0ZWxzZSJ9O3ZhciBncz1mdW5jdGlvbigpe3JldHVybiJbbXNnX3VuZGVmaW5lZF0ifSxSPXt9OwooZnVuY3Rpb24oKXt2YXIgYT1mdW5jdGlvbihiKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYn19O1I9e0llOmEoMCksbWc6YSgxKSxBZTphKDIpLFdqOmEoMyksRGc6YSg0KSxDZTphKDUpLHdnOmEoNDUpLHhnOmEoNiksemc6YSg3KSx3ZDphKDgpLEVnOmEoOSksc2s6YSgxMCksSmc6YSgxMSksQWc6YSgxMiksbGs6YSgxMyksQ2c6YSgxNCksa2s6YSgxNSksQmc6YSgxNiksdms6YSgxNyksRmc6YSgxOCksamo6YSgxOSksVWo6YSgyMCksSWo6YSgyMSksbWs6YSgyMiksZWs6YSgyMyksZGs6YSgyNCksYms6YSgyNSksdGs6YSgyNikscms6YSgyNyksY2s6YSgyOCkseWc6YSgyOSksR2c6YSgzMCksaWo6YSgzMiksZ2o6YSgzMyksd2s6YSgzNCkseGo6YSgzNSkscGo6YSgzNiksd2o6YSgzNyksbms6YSgzOCksUWo6YSgzOSksaGo6YSg0MCksVmo6YSg0MSksRWU6YSg0NiksWGo6YSg0NyksSGo6YSg0OCksR2o6YSg0OSksRmo6YSg1MCksdWs6YSg1MSl9fSkoKTtSLkNsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMF19OwpSLlprPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMV19O1IuYmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVsyXX07Ui5ubD1mdW5jdGlvbigpe3JldHVybiBRWzNdfTtSLkRsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbNF19O1IuZmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVs1XX07Ui5obD1mdW5jdGlvbigpe3JldHVybiBRWzQ1XX07Ui5pbD1mdW5jdGlvbigpe3JldHVybiBRWzZdfTtSLm9sPWZ1bmN0aW9uKCl7cmV0dXJuIFFbN119O1IuR2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVs4XX07Ui5JbD1mdW5jdGlvbigpe3JldHVybiBRWzldfTtSLkZsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTBdfTtSLk9sPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTFdfTtSLnBsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTJdfTtSLnlsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTNdfTtSLnpsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTRdfTtSLnhsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTVdfTtSLnFsPWZ1bmN0aW9uKCl7cmV0dXJuIFFbMTZdfTsKUi5MbD1mdW5jdGlvbigpe3JldHVybiBRWzE3XX07Ui5LbD1mdW5jdGlvbigpe3JldHVybiBRWzE4XX07Ui5Zaz1mdW5jdGlvbigpe3JldHVybiBRWzE5XX07Ui5sbD1mdW5jdGlvbigpe3JldHVybiBRWzIwXX07Ui5zaD1mdW5jdGlvbigpe3JldHVybiBRWzQxXX07Ui5lbD1mdW5jdGlvbigpe3JldHVybiBRWzIxXX07Ui5BbD1mdW5jdGlvbigpe3JldHVybiBRWzIyXX07Ui53bD1mdW5jdGlvbigpe3JldHVybiBRWzIzXX07Ui52bD1mdW5jdGlvbigpe3JldHVybiBRWzI0XX07Ui5ybD1mdW5jdGlvbigpe3JldHVybiBRWzI1XX07Ui5IbD1mdW5jdGlvbigpe3JldHVybiBRWzI2XX07Ui5FbD1mdW5jdGlvbigpe3JldHVybiBRWzI3XX07Ui51bD1mdW5jdGlvbigpe3JldHVybiBRWzI4XX07Ui5rbD1mdW5jdGlvbigpe3JldHVybiBRWzI5XX07Ui5NbD1mdW5jdGlvbigpe3JldHVybiBRWzMwXX07Ui5qbD1mdW5jdGlvbigpe3JldHVybiBRWzM5XX07Ui5Yaz1mdW5jdGlvbigpe3JldHVybiBRWzMyXX07ClIuVms9ZnVuY3Rpb24oKXtyZXR1cm4gUVszM119O1IuV2s9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0MF19O1IuTmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszNF19O1IuZGw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszNV19O1IuYWw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszNl19O1IuY2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVszN119O1IuQmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVszOF19O1IuZ2w9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0Nl19O1IudGg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0N119O1Iucmg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0OF19O1IucWg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs0OV19O1IucGg9ZnVuY3Rpb24oKXtyZXR1cm4gUVs1MF19O1IuSmw9ZnVuY3Rpb24oKXtyZXR1cm4gUVs1MV19O3ZhciBocz1SO3ZhciBpcz1ocy5zaCxqcz1ocy50aCxrcz1ocy5yaCxscz1ocy5xaCxtcz1ocy5waDt2YXIgcHM9ZnVuY3Rpb24oYSl7dmFyIGI9YS5kaXI7YT1hLmNqO3JldHVybiBWbihXbihWbihXbihWbihfLnlsKCksJzxkaXYgaWQ9Imdvb2ctZ3QtdHQiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItTDdsYmtiIikrJyBza2lwdHJhbnNsYXRlIiBzdHlsZT0iZGlzcGxheTogbm9uZTsgYm9yZGVyLXJhZGl1czogMTJweDsgbWFyZ2luOiAwIDAgMCAtMjNweDsgcGFkZGluZzogMDsgZm9udC1mYW1pbHk6IFwnR29vZ2xlIFNhbnNcJywgQXJpYWwsIHNhbnMtc2VyaWY7IiBkYXRhLWlkPSIiPjxkaXYgaWQ9Imdvb2ctZ3QtdnQiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kIikrJyI+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1VZDdmciIpKyciPjxpbWcgc3JjPSJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS9wcm9kdWN0bG9nb3MvdHJhbnNsYXRlL3YxNC8yNHB4LnN2ZyIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBhbHQ9IiIvPjxkaXYgY2xhc3M9IicrCihiPT09InJ0bCI/IiAiK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGQiKSsiICI6IiAiK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1pM2pNOGMiKSsiICIpKyciIGRpcj0iJytQKGIpKyciPicrS3AoaXMoKSkrJzwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtazc3SWlmIikrJyI+PGRpdiBpZD0iZ29vZy1ndC1vcmlnaW5hbC10ZXh0IiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLW5WTWZjZC1mbWNtUyIpKyIgIitQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1heEFWMSIpKyciPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIikrIiAiK1AoYikrJyI+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIikrIiAiK1AoYikrJyIgZGlyPSInK1AoYikrJyI+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2IiKSsKJyI+JytLcChqcygpKSsnPC9kaXY+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2UiKSsnIj4nK0twKGtzKCkpKyc8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLXhnb3Y1IikrIiAiK1AoYikrJyI+JyksYj09PSJydGwiP1duKFduKF8ueWwoKSxucygpKSxvcygpKTpXbihXbihfLnlsKCksb3MoKSksbnMoKSkpLCI8L2Rpdj48L2Rpdj4iKSwoMCxfLnRsKSgnPGRpdiBpZD0iZ29vZy1ndC12b3RpbmdIaWRkZW5QYW5lIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1hWFlUY2UiKSsnIj48Zm9ybSBpZD0iZ29vZy1ndC12b3RpbmdGb3JtIiBhY3Rpb249IicrUChVcChhKSkrJyIgbWV0aG9kPSJwb3N0IiB0YXJnZXQ9InZvdGluZ0ZyYW1lIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1hWFlUY2UiKSsnIj48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ic2wiIGlkPSJnb29nLWd0LXZvdGluZ0lucHV0U3JjTGFuZyIvPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ0bCIgaWQ9Imdvb2ctZ3Qtdm90aW5nSW5wdXRUcmdMYW5nIi8+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InF1ZXJ5IiBpZD0iZ29vZy1ndC12b3RpbmdJbnB1dFNyY1RleHQiLz48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZ3RyYW5zIiBpZD0iZ29vZy1ndC12b3RpbmdJbnB1dFRyZ1RleHQiLz48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idm90ZSIgaWQ9Imdvb2ctZ3Qtdm90aW5nSW5wdXRWb3RlIi8+PC9mb3JtPjxpZnJhbWUgbmFtZT0idm90aW5nRnJhbWUiIGZyYW1lQm9yZGVyPTA+PC9pZnJhbWU+PC9kaXY+JykpLAoiPC9kaXY+PC9kaXY+Iil9LG9zPWZ1bmN0aW9uKCl7dmFyIGE9Xy55bCgpLGI9bHMoKTtiPVZuKGEsJzxidXR0b24gaWQ9Imdvb2ctZ3QtdGh1bWJVcEJ1dHRvbiIgdHlwZT0iYnV0dG9uIiBjbGFzcz0iJytQKCJWSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2YiKSsnIiB0aXRsZT0iJytQKGIpKyciIGFyaWEtbGFiZWw9IicrUChiKSsnIiBhcmlhLXByZXNzZWQ9ImZhbHNlIj48c3BhbiBpZD0iZ29vZy1ndC10aHVtYlVwSWNvbiI+Jyk7dmFyIGM9KDAsXy50bCkoJzxzdmcgd2lkdGg9IicrUCgyNCkrJyIgaGVpZ2h0PSInK1AoMjQpKyciIHZpZXdCb3g9IicrUCgiMCAwIDI0IDI0IikrJyIgZm9jdXNhYmxlPSJmYWxzZSIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtVEhJNlZiIikrIiAiK1AoIk5NbTVNIikrJyInK3pwKCkrJz48cGF0aCBkPSJNMjEgN2gtNi4zMWwuOTUtNC41Ny4wMy0uMzJjMC0uNDEtLjE3LS43OS0uNDQtMS4wNkwxNC4xNyAwUzcuMDggNi44NSA3IDdIMnYxM2gxNmMuODMgMCAxLjU0LS41IDEuODQtMS4yMmwzLjAyLTcuMDVjLjA5LS4yMy4xNC0uNDcuMTQtLjczVjljMC0xLjEtLjktMi0yLTJ6TTcgMThINFY5aDN2OXptMTQtN2wtMyA3SDlWOGw0LjM0LTQuMzRMMTIgOWg5djJ6Ii8+PC9zdmc+Jyk7CmI9Vm4oV24oYixjKSwnPC9zcGFuPjxzcGFuIGlkPSJnb29nLWd0LXRodW1iVXBJY29uRmlsbGVkIj4nKTtjPSgwLF8udGwpKCc8c3ZnIHdpZHRoPSInK1AoMjQpKyciIGhlaWdodD0iJytQKDI0KSsnIiB2aWV3Qm94PSInK1AoIjAgMCAyNCAyNCIpKyciIGZvY3VzYWJsZT0iZmFsc2UiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYiIpKyIgIitQKCJOTW01TSIpKyciJyt6cCgpKyc+PHBhdGggZD0iTTIxIDdoLTYuMzFsLjk1LTQuNTcuMDMtLjMyYzAtLjQxLS4xNy0uNzktLjQ0LTEuMDZMMTQuMTcgMFM3LjA4IDYuODUgNyA3djEzaDExYy44MyAwIDEuNTQtLjUgMS44NC0xLjIybDMuMDItNy4wNWMuMDktLjIzLjE0LS40Ny4xNC0uNzNWOWMwLTEuMS0uOS0yLTItMnpNNSA3SDF2MTNoNFY3eiIvPjwvc3ZnPicpO1ZuKFduKGIsYyksIjwvc3Bhbj48L2J1dHRvbj4iKTtyZXR1cm4gYX0sbnM9ZnVuY3Rpb24oKXt2YXIgYT1fLnlsKCksYj1tcygpO2I9Vm4oYSwnPGJ1dHRvbiBpZD0iZ29vZy1ndC10aHVtYkRvd25CdXR0b24iIHR5cGU9ImJ1dHRvbiIgY2xhc3M9IicrClAoIlZJcGdKZC15QVdORWItaHZoZ05kLWJnbTZzZiIpKyciIHRpdGxlPSInK1AoYikrJyIgYXJpYS1sYWJlbD0iJytQKGIpKyciIGFyaWEtcHJlc3NlZD0iZmFsc2UiPjxzcGFuIGlkPSJnb29nLWd0LXRodW1iRG93bkljb24iPicpO3ZhciBjPSgwLF8udGwpKCc8c3ZnIHdpZHRoPSInK1AoMjQpKyciIGhlaWdodD0iJytQKDI0KSsnIiB2aWV3Qm94PSInK1AoIjAgMCAyNCAyNCIpKyciIGZvY3VzYWJsZT0iZmFsc2UiIGNsYXNzPSInK1AoIlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYiIpKyIgIitQKCJOTW01TSIpKyciJyt6cCgpKyc+PHBhdGggZD0iTTMgMTdoNi4zMWwtLjk1IDQuNTctLjAzLjMyYzAgLjQxLjE3Ljc5LjQ0IDEuMDZMOS44MyAyNHM3LjA5LTYuODUgNy4xNy03aDVWNEg2Yy0uODMgMC0xLjU0LjUtMS44NCAxLjIybC0zLjAyIDcuMDVjLS4wOS4yMy0uMTQuNDctLjE0LjczdjJjMCAxLjEuOSAyIDIgMnpNMTcgNmgzdjloLTNWNnpNMyAxM2wzLTdoOXYxMGwtNC4zNCA0LjM0TDEyIDE1SDN2LTJ6Ii8+PC9zdmc+Jyk7CmI9Vm4oV24oYixjKSwnPC9zcGFuPjxzcGFuIGlkPSJnb29nLWd0LXRodW1iRG93bkljb25GaWxsZWQiPicpO2M9KDAsXy50bCkoJzxzdmcgd2lkdGg9IicrUCgyNCkrJyIgaGVpZ2h0PSInK1AoMjQpKyciIHZpZXdCb3g9IicrUCgiMCAwIDI0IDI0IikrJyIgZm9jdXNhYmxlPSJmYWxzZSIgY2xhc3M9IicrUCgiVklwZ0pkLXlBV05FYi1odmhnTmQtVEhJNlZiIikrIiAiK1AoIk5NbTVNIikrJyInK3pwKCkrJz48cGF0aCBkPSJNMyAxN2g2LjMxbC0uOTUgNC41Ny0uMDMuMzJjMCAuNDEuMTcuNzkuNDQgMS4wNkw5LjgzIDI0czcuMDktNi44NSA3LjE3LTdWNEg2Yy0uODMgMC0xLjU0LjUtMS44NCAxLjIybC0zLjAyIDcuMDVjLS4wOS4yMy0uMTQuNDctLjE0LjczdjJjMCAxLjEuOSAyIDIgMnptMTYgMGg0VjRoLTR2MTN6Ii8+PC9zdmc+Jyk7Vm4oV24oYixjKSwiPC9zcGFuPjwvYnV0dG9uPiIpO3JldHVybiBhfTt2YXIgcXM9ZnVuY3Rpb24oYSxiLGMpe2lmKHR5cGVvZiBhPT09ImZ1bmN0aW9uIiljJiYoYT0oMCxfLnkpKGEsYykpO2Vsc2UgaWYoYSYmdHlwZW9mIGEuaGFuZGxlRXZlbnQ9PSJmdW5jdGlvbiIpYT0oMCxfLnkpKGEuaGFuZGxlRXZlbnQsYSk7ZWxzZSB0aHJvdyBFcnJvcigieGEiKTtyZXR1cm4gTnVtYmVyKGIpPjIxNDc0ODM2NDc/LTE6Xy52LnNldFRpbWVvdXQoYSxifHwwKX07dmFyIHJzPWZ1bmN0aW9uKCl7aWYoXy5aYyl7dmFyIGE9L1dpbmRvd3MgTlQgKFswLTkuXSspLztyZXR1cm4oYT1hLmV4ZWMoXy5UYSgpKSk/YVsxXToiMCJ9cmV0dXJuIF8uWWM/KGE9LzFbMHwxXVtfLl1bMC05Xy5dKy8sKGE9YS5leGVjKF8uVGEoKSkpP2FbMF0ucmVwbGFjZSgvXy9nLCIuIik6IjEwIik6Xy4kYz8oYT0vQW5kcm9pZFxzKyhbXlwpO10rKShcKXw7KS8sKGE9YS5leGVjKF8uVGEoKSkpP2FbMV06IiIpOl8uYWR8fF8uYmR8fF8uY2Q/KGE9Lyg/OmlQaG9uZXxDUFUpXHMrT1NccysoXFMrKS8sKGE9YS5leGVjKF8uVGEoKSkpP2FbMV0ucmVwbGFjZSgvXy9nLCIuIik6IiIpOiIifSgpO3ZhciBzcz1mdW5jdGlvbihhKXtyZXR1cm4oYT1hLmV4ZWMoXy5UYSgpKSk/YVsxXToiIn0sdHM9ZnVuY3Rpb24oKXtpZihfLkpoKXJldHVybiBzcygvRmlyZWZveFwvKFswLTkuXSspLyk7aWYoXy5TY3x8Xy5UY3x8Xy5SYylyZXR1cm4gXy5qZDtpZihfLk5oKXtpZihfLiRhKCl8fF8uYWIoKSl7dmFyIGE9c3MoL0NyaU9TXC8oWzAtOS5dKykvKTtpZihhKXJldHVybiBhfXJldHVybiBzcygvQ2hyb21lXC8oWzAtOS5dKykvKX1pZihfLk9oJiYhXy4kYSgpKXJldHVybiBzcygvVmVyc2lvblwvKFswLTkuXSspLyk7aWYoXy5LaHx8Xy5MaCl7aWYoYT0vVmVyc2lvblwvKFxTKykuKk1vYmlsZVwvKFxTKykvLmV4ZWMoXy5UYSgpKSlyZXR1cm4gYVsxXSsiLiIrYVsyXX1lbHNlIGlmKF8uTWgpcmV0dXJuKGE9c3MoL0FuZHJvaWRccysoWzAtOS5dKykvKSk/YTpzcygvVmVyc2lvblwvKFswLTkuXSspLyk7cmV0dXJuIiJ9KCk7Xy5HKFltLF8uaGIpO18ubT1ZbS5wcm90b3R5cGU7Xy5tLkVhPW51bGw7Xy5tLkRjPSEwO18ubS5OZT1udWxsO18ubS56Yj0hMTtfLm0uWmQ9LTE7Xy5tLlViPSJ0b2dnbGVfZGlzcGxheSI7Xy5tLkg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5FYX07Xy5tLlFiPWZ1bmN0aW9uKGEpe2lmKHRoaXMuemIpdGhyb3cgRXJyb3IoInlhIik7dGhpcy5FYT1hfTtfLm0ucmU9ZnVuY3Rpb24oYSl7aWYodGhpcy56Yil0aHJvdyBFcnJvcigieWEiKTt0aGlzLkRjPWF9O18ubS5pc1Zpc2libGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy56Yn07Cl8ubS5wYT1mdW5jdGlvbihhKXt0aGlzLkwmJnRoaXMuTC5zdG9wKCk7dGhpcy5LJiZ0aGlzLksuc3RvcCgpO2lmKGEpe2lmKCF0aGlzLnpiJiZ0aGlzLnVkKCkpe2lmKCF0aGlzLkVhKXRocm93IEVycm9yKCJ6YSIpO3RoaXMucGIoKTthPV8uc2QodGhpcy5FYSk7dGhpcy5EYyYmKHRoaXMubC5OKGEsIm1vdXNlZG93biIsdGhpcy5OZiwhMCksdGhpcy5sLk4oYSwiYmx1ciIsdGhpcy5FaSkpO3RoaXMuVWI9PSJ0b2dnbGVfZGlzcGxheSI/KHRoaXMuRWEuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSIsbXAodGhpcy5FYSwhMCkpOnRoaXMuVWI9PSJtb3ZlX29mZnNjcmVlbiImJnRoaXMucGIoKTt0aGlzLnpiPSEwO3RoaXMuWmQ9RGF0ZS5ub3coKTt0aGlzLkw/KF8uTmQodGhpcy5MLCJlbmQiLHRoaXMuT2YsITEsdGhpcyksdGhpcy5MLnBsYXkoKSk6dGhpcy5PZigpfX1lbHNlIHVzKHRoaXMpfTtfLm0ucGI9ZnVuY3Rpb24oKXt9Owp2YXIgdXM9ZnVuY3Rpb24oYSxiKXthLnpiJiZhLmRpc3BhdGNoRXZlbnQoe3R5cGU6ImJlZm9yZWhpZGUiLHRhcmdldDpifSkmJihhLmwmJl8uUmYoYS5sKSxhLnpiPSExLGEuSz8oXy5OZChhLkssImVuZCIsXy5aaihhLlNlLGIpLCExLGEpLGEuSy5wbGF5KCkpOmEuU2UoYikpfTtfLm09WW0ucHJvdG90eXBlO18ubS5TZT1mdW5jdGlvbihhKXt0aGlzLlViPT0idG9nZ2xlX2Rpc3BsYXkiP3RoaXMuYWkoKTp0aGlzLlViPT0ibW92ZV9vZmZzY3JlZW4iJiYodGhpcy5FYS5zdHlsZS50b3A9Ii0xMDAwMHB4Iik7dGhpcy5nZShhKX07Xy5tLmFpPWZ1bmN0aW9uKCl7dGhpcy5FYS5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iO21wKHRoaXMuRWEsITEpfTtfLm0udWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kaXNwYXRjaEV2ZW50KCJiZWZvcmVzaG93Iil9O18ubS5PZj1mdW5jdGlvbigpe3RoaXMuZGlzcGF0Y2hFdmVudCgic2hvdyIpfTsKXy5tLmdlPWZ1bmN0aW9uKGEpe3RoaXMuZGlzcGF0Y2hFdmVudCh7dHlwZToiaGlkZSIsdGFyZ2V0OmF9KX07Xy5tLk5mPWZ1bmN0aW9uKGEpe2E9YS50YXJnZXQ7Xy5CZCh0aGlzLkVhLGEpfHx2cyh0aGlzLGEpfHxEYXRlLm5vdygpLXRoaXMuWmQ8MTUwfHx1cyh0aGlzLGEpfTtfLm0uRWk9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5zZCh0aGlzLkVhKTtpZih0eXBlb2YgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9InVuZGVmaW5lZCIpe2lmKGE9Yi5hY3RpdmVFbGVtZW50LCFhfHxfLkJkKHRoaXMuRWEsYSl8fGEudGFnTmFtZT09IkJPRFkifHx2cyh0aGlzLGEpKXJldHVybn1lbHNlIGlmKGEudGFyZ2V0IT1iKXJldHVybjtEYXRlLm5vdygpLXRoaXMuWmQ8MTUwfHx1cyh0aGlzKX07dmFyIHZzPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ueGMoYS5OZXx8W10sZnVuY3Rpb24oYyl7cmV0dXJuIGI9PT1jfHxfLkJkKGMsYil9KX07ClltLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7WW0uZWEuTS5jYWxsKHRoaXMpO3RoaXMubC5kaXNwb3NlKCk7Xy5wYSh0aGlzLkwpO18ucGEodGhpcy5LKTtkZWxldGUgdGhpcy5FYTtkZWxldGUgdGhpcy5sO2RlbGV0ZSB0aGlzLk5lfTtfLkcoYm4sXy5oYik7Ym4ucHJvdG90eXBlLmhhbmRsZUV2ZW50PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLmRiKGEuZyk7Yi50eXBlPWEudHlwZT09ImZvY3VzaW4ifHxhLnR5cGU9PSJmb2N1cyI/ImZvY3VzaW4iOiJmb2N1c291dCI7dGhpcy5kaXNwYXRjaEV2ZW50KGIpfTtibi5wcm90b3R5cGUuTT1mdW5jdGlvbigpe2JuLmVhLk0uY2FsbCh0aGlzKTtfLlZkKHRoaXMuaCk7Xy5WZCh0aGlzLmopO2RlbGV0ZSB0aGlzLmd9O2NuLnByb3RvdHlwZS5oPWZ1bmN0aW9uKCl7fTt2YXIgeXM9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyl7dmFyIGg7aWYoaD1jLm9mZnNldFBhcmVudCl7dmFyIGs9aC50YWdOYW1lPT0iSFRNTCJ8fGgudGFnTmFtZT09IkJPRFkiO2lmKCFrfHxjcChoLCJwb3NpdGlvbiIpIT0ic3RhdGljIil7dmFyIGw9aHAoaCk7aWYoIWspe2s9InJ0bCI9PWNwKGgsImRpcmVjdGlvbiIpO3ZhciBuO2lmKG49ayl7bj1fLk9oJiZMbCh0cywxMCk+PTA7dmFyIHE7aWYocT1fLmRkKXE9TGwocnMsMTApPj0wO3ZhciBwPV8uTmgmJkxsKHRzLDg1KT49MDtuPV8uVWN8fG58fHF8fHB9az1uPy1oLnNjcm9sbExlZnQ6ayYmY3AoaCwib3ZlcmZsb3dYIikhPSJ2aXNpYmxlIj9oLnNjcm9sbFdpZHRoLWguY2xpZW50V2lkdGgtaC5zY3JvbGxMZWZ0Omguc2Nyb2xsTGVmdDtsPWFvKGwsbmV3IHpsKGssaC5zY3JvbGxUb3ApKX19fWg9bHx8bmV3IHpsO2w9aHAoYSk7az1scChhKTtsPW5ldyB3bShsLngsbC55LGsud2lkdGgsay5oZWlnaHQpO2lmKGs9aXAoYSkpcD0KbmV3IHdtKGsubGVmdCxrLnRvcCxrLnJpZ2h0LWsubGVmdCxrLmJvdHRvbS1rLnRvcCksaz1NYXRoLm1heChsLmxlZnQscC5sZWZ0KSxuPU1hdGgubWluKGwubGVmdCtsLndpZHRoLHAubGVmdCtwLndpZHRoKSxrPD1uJiYocT1NYXRoLm1heChsLnRvcCxwLnRvcCkscD1NYXRoLm1pbihsLnRvcCtsLmhlaWdodCxwLnRvcCtwLmhlaWdodCkscTw9cCYmKGwubGVmdD1rLGwudG9wPXEsbC53aWR0aD1uLWssbC5oZWlnaHQ9cC1xKSk7bj1fLmxiKGEpO2s9Xy5sYihjKTtuLmchPWsuZyYmKG49bi5nLmJvZHksaz1qcChuLGsuZy5kZWZhdWx0Vmlldyksaz1hbyhrLGhwKG4pKSxsLmxlZnQrPWsueCxsLnRvcCs9ay55KTthPXdzKGEsYik7Yj1sLmxlZnQ7YSY0P2IrPWwud2lkdGg6YSYyJiYoYis9bC53aWR0aC8yKTtiPW5ldyB6bChiLGwudG9wKyhhJjE/bC5oZWlnaHQ6MCkpO2I9YW8oYixoKTtlJiYoYi54Kz0oYSY0Py0xOjEpKmUueCxiLnkrPShhJjE/LTE6MSkqZS55KTt2YXIgcjtnJiYocj0KaXAoYykpJiYoci50b3AtPWgueSxyLnJpZ2h0LT1oLngsci5ib3R0b20tPWgueSxyLmxlZnQtPWgueCk7cmV0dXJuIHhzKGIsYyxkLGYscixnKX0seHM9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2E9RG4oYSk7dmFyIGc9d3MoYixjKTtjPWxwKGIpO3ZhciBoPW5ldyBfLkNhKGMud2lkdGgsYy5oZWlnaHQpO2E9RG4oYSk7aD1uZXcgXy5DYShoLndpZHRoLGguaGVpZ2h0KTt2YXIgaz0wO2lmKGR8fGchPTApZyY0P2EueC09aC53aWR0aCsoZD9kLnJpZ2h0OjApOmcmMj9hLngtPWgud2lkdGgvMjpkJiYoYS54Kz1kLmxlZnQpLGcmMT9hLnktPWguaGVpZ2h0KyhkP2QuYm90dG9tOjApOmQmJihhLnkrPWQudG9wKTtmJiYoZT8oZD1oLGc9MCwoZiY2NSk9PTY1JiYoYS54PGUubGVmdHx8YS54Pj1lLnJpZ2h0KSYmKGYmPS0yKSwoZiYxMzIpPT0xMzImJihhLnk8ZS50b3B8fGEueT49ZS5ib3R0b20pJiYoZiY9LTUpLGEueDxlLmxlZnQmJmYmMSYmKGEueD1lLmxlZnQsZ3w9MSksZiYxNiYmKGs9CmEueCxhLng8ZS5sZWZ0JiYoYS54PWUubGVmdCxnfD00KSxhLngrZC53aWR0aD5lLnJpZ2h0JiYoZC53aWR0aD1NYXRoLm1pbihlLnJpZ2h0LWEueCxrK2Qud2lkdGgtZS5sZWZ0KSxkLndpZHRoPU1hdGgubWF4KGQud2lkdGgsMCksZ3w9NCkpLGEueCtkLndpZHRoPmUucmlnaHQmJmYmMSYmKGEueD1NYXRoLm1heChlLnJpZ2h0LWQud2lkdGgsZS5sZWZ0KSxnfD0xKSxmJjImJihnfD0oYS54PGUubGVmdD8xNjowKXwoYS54K2Qud2lkdGg+ZS5yaWdodD8zMjowKSksYS55PGUudG9wJiZmJjQmJihhLnk9ZS50b3AsZ3w9MiksZiYzMiYmKGs9YS55LGEueTxlLnRvcCYmKGEueT1lLnRvcCxnfD04KSxhLnkrZC5oZWlnaHQ+ZS5ib3R0b20mJihkLmhlaWdodD1NYXRoLm1pbihlLmJvdHRvbS1hLnksaytkLmhlaWdodC1lLnRvcCksZC5oZWlnaHQ9TWF0aC5tYXgoZC5oZWlnaHQsMCksZ3w9OCkpLGEueStkLmhlaWdodD5lLmJvdHRvbSYmZiY0JiYoYS55PU1hdGgubWF4KGUuYm90dG9tLWQuaGVpZ2h0LAplLnRvcCksZ3w9MiksZiY4JiYoZ3w9KGEueTxlLnRvcD82NDowKXwoYS55K2QuaGVpZ2h0PmUuYm90dG9tPzEyODowKSksZT1nKTplPTI1NixrPWUpO2U9bmV3IHdtKDAsMCwwLDApO2UubGVmdD1hLng7ZS50b3A9YS55O2Uud2lkdGg9aC53aWR0aDtlLmhlaWdodD1oLmhlaWdodDthPWs7aWYoYSY0OTYpcmV0dXJuIGE7ZXAoYixuZXcgemwoZS5sZWZ0LGUudG9wKSk7aD1uZXcgXy5DYShlLndpZHRoLGUuaGVpZ2h0KTtfLnljKGMsaCl8fHBwKGIsaCwiYm9yZGVyLWJveCIpO3JldHVybiBhfSx3cz1mdW5jdGlvbihhLGIpe3JldHVybihiJjgmJiJydGwiPT1jcChhLCJkaXJlY3Rpb24iKT9iXjQ6YikmLTl9O18uRyhkbixjbik7ZG4ucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiLGMpe3lzKHRoaXMuZWxlbWVudCx0aGlzLmosYSxiLHZvaWQgMCxjLHRoaXMubCl9O18uRyhlbixjbik7ZW4ucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiLGMpe3lzKChhP18uc2QoYSk6ZG9jdW1lbnQpLmRvY3VtZW50RWxlbWVudCwwLGEsYix0aGlzLmcsYyxudWxsKX07Xy5HKGZuLFltKTtmbi5wcm90b3R5cGUucGI9ZnVuY3Rpb24oKXtpZih0aGlzLm8pe3ZhciBhPSF0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLlViIT0ibW92ZV9vZmZzY3JlZW4iLGI9dGhpcy5IKCk7YSYmKGIuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIixtcChiLCEwKSk7dGhpcy5vLmgoYiw4LHRoaXMuWGIpO2EmJm1wKGIsITEpfX07Xy5HKE8sZm4pO3ZhciB6cz1bXTtfLm09Ty5wcm90b3R5cGU7Xy5tLnlhPW51bGw7Xy5tLmNsYXNzTmFtZT0iVklwZ0pkLXN1RU9kYyI7Xy5tLlpmPTUwMDtfLm0ud2Y9MDtfLm0uYXR0YWNoPWZ1bmN0aW9uKGEpe2E9Z24oYSk7dGhpcy5BLmFkZChhKTtfLngoYSwibW91c2VvdmVyIix0aGlzLlVkLCExLHRoaXMpO18ueChhLCJtb3VzZW91dCIsdGhpcy5OYiwhMSx0aGlzKTtfLngoYSwibW91c2Vtb3ZlIix0aGlzLmdiLCExLHRoaXMpO18ueChhLCJmb2N1cyIsdGhpcy5mYiwhMSx0aGlzKTtfLngoYSwiYmx1ciIsdGhpcy5OYiwhMSx0aGlzKX07Xy5tLmRldGFjaD1mdW5jdGlvbihhKXt2YXIgYj10aGlzO2E/KGE9Z24oYSksQXModGhpcyxhKSx0aGlzLkEuZGVsZXRlKGEpKToodGhpcy5BLmZvckVhY2goZnVuY3Rpb24oYyl7QXMoYixjKX0pLHRoaXMuQS5jbGVhcigpKX07CnZhciBBcz1mdW5jdGlvbihhLGIpe18uVWQoYiwibW91c2VvdmVyIixhLlVkLCExLGEpO18uVWQoYiwibW91c2VvdXQiLGEuTmIsITEsYSk7Xy5VZChiLCJtb3VzZW1vdmUiLGEuZ2IsITEsYSk7Xy5VZChiLCJmb2N1cyIsYS5mYiwhMSxhKTtfLlVkKGIsImJsdXIiLGEuTmIsITEsYSl9O08ucHJvdG90eXBlLkthPWZ1bmN0aW9uKGEpe18uQ2QodGhpcy5IKCksYSl9OwpPLnByb3RvdHlwZS5RYj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLkgoKTtiJiZfLkFkKGIpO08uZWEuUWIuY2FsbCh0aGlzLGEpO2E/KGI9dGhpcy5HLmcuYm9keSxiLmluc2VydEJlZm9yZShhLGIubGFzdENoaWxkKSxfLnBhKHRoaXMuQyksdGhpcy5DPW5ldyBibih0aGlzLkgoKSksXy5hayh0aGlzLF8uWmooXy5wYSx0aGlzLkMpKSxfLngodGhpcy5DLCJmb2N1c2luIix0aGlzLkQsdm9pZCAwLHRoaXMpLF8ueCh0aGlzLkMsImZvY3Vzb3V0Iix0aGlzLlQsdm9pZCAwLHRoaXMpKTooXy5wYSh0aGlzLkMpLHRoaXMuQz1udWxsKX07Ty5wcm90b3R5cGUudmQ9ZnVuY3Rpb24oKXtyZXR1cm4gRW8odGhpcy5IKCkpfTt2YXIgQnM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuRj9hLmlzVmlzaWJsZSgpPzQ6MTphLkk/MzphLmlzVmlzaWJsZSgpPzI6MH07Ck8ucHJvdG90eXBlLnVkPWZ1bmN0aW9uKCl7aWYoIVltLnByb3RvdHlwZS51ZC5jYWxsKHRoaXMpKXJldHVybiExO2lmKHRoaXMuZylmb3IodmFyIGEsYj0wO2E9enNbYl07YisrKV8uQmQoYS5IKCksdGhpcy5nKXx8YS5wYSghMSk7Xy51YSh6cyx0aGlzKTthPXRoaXMuSCgpO2EuY2xhc3NOYW1lPXRoaXMuY2xhc3NOYW1lO3RoaXMuRCgpO18ueChhLCJtb3VzZW92ZXIiLHRoaXMuVWMsITEsdGhpcyk7Xy54KGEsIm1vdXNlb3V0Iix0aGlzLlRjLCExLHRoaXMpO0NzKHRoaXMpO3JldHVybiEwfTsKTy5wcm90b3R5cGUuZ2U9ZnVuY3Rpb24oKXtfLnZhKHpzLHRoaXMpO2Zvcih2YXIgYT10aGlzLkgoKSxiLGM9MDtiPXpzW2NdO2MrKyliLmcmJl8uQmQoYSxiLmcpJiZiLnBhKCExKTt0aGlzLkhiJiZ0aGlzLkhiLlQoKTtfLlVkKGEsIm1vdXNlb3ZlciIsdGhpcy5VYywhMSx0aGlzKTtfLlVkKGEsIm1vdXNlb3V0Iix0aGlzLlRjLCExLHRoaXMpO3RoaXMuZz12b2lkIDA7QnModGhpcyk9PTAmJih0aGlzLlA9ITEpO1ltLnByb3RvdHlwZS5nZS5jYWxsKHRoaXMpfTtPLnByb3RvdHlwZS5kZT1mdW5jdGlvbihhLGIpe3RoaXMuZz09YSYmdGhpcy5BLmhhcyh0aGlzLmcpJiYodGhpcy5QfHwhdGhpcy5JZD8odGhpcy5wYSghMSksdGhpcy5pc1Zpc2libGUoKXx8KHRoaXMuZz1hLHRoaXMubz1ifHxuZXcgRHMoRG4odGhpcy5yYSkpLHRoaXMuaXNWaXNpYmxlKCkmJnRoaXMucGIoKSx0aGlzLnBhKCEwKSkpOnRoaXMuZz12b2lkIDApO3RoaXMuRj12b2lkIDB9OwpPLnByb3RvdHlwZS5GYz1mdW5jdGlvbihhKXt0aGlzLkk9dm9pZCAwO2lmKGE9PXRoaXMuZyl7YT10aGlzLkc7dmFyIGI9YS5nO3RyeXt2YXIgYz1iJiZiLmFjdGl2ZUVsZW1lbnQ7dmFyIGQ9YyYmYy5ub2RlTmFtZT9jOm51bGx9Y2F0Y2goZSl7ZD1udWxsfWQ9ZCYmdGhpcy5IKCkmJmEuY29udGFpbnModGhpcy5IKCksZCk7dGhpcy55YSE9bnVsbCYmKHRoaXMueWE9PXRoaXMuSCgpfHx0aGlzLkEuaGFzKHRoaXMueWEpKXx8ZHx8dGhpcy5JYSYmdGhpcy5JYS55YXx8dGhpcy5wYSghMSl9fTt2YXIgRXM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1LbihhLkcuZyk7YS5yYS54PWIuY2xpZW50WCtjLng7YS5yYS55PWIuY2xpZW50WStjLnl9O08ucHJvdG90eXBlLlVkPWZ1bmN0aW9uKGEpe3ZhciBiPUZzKHRoaXMsYS50YXJnZXQpO3RoaXMueWE9Yjt0aGlzLkQoKTtiIT10aGlzLmcmJih0aGlzLmc9YixHcyh0aGlzLGIpLEhzKHRoaXMpLEVzKHRoaXMsYSkpfTsKdmFyIEZzPWZ1bmN0aW9uKGEsYil7dHJ5e2Zvcig7YiYmIWEuQS5oYXMoYik7KWI9Yi5wYXJlbnROb2RlO3JldHVybiBifWNhdGNoKGMpe3JldHVybiBudWxsfX07Ty5wcm90b3R5cGUuZ2I9ZnVuY3Rpb24oYSl7RXModGhpcyxhKTt0aGlzLlA9ITB9O08ucHJvdG90eXBlLmZiPWZ1bmN0aW9uKGEpe3RoaXMueWE9YT1Gcyh0aGlzLGEudGFyZ2V0KTt0aGlzLlA9ITA7aWYodGhpcy5nIT1hKXt0aGlzLmc9YTt2YXIgYj1uZXcgSXModGhpcy55YSk7dGhpcy5EKCk7R3ModGhpcyxhLGIpO0hzKHRoaXMpfX07dmFyIEhzPWZ1bmN0aW9uKGEpe2lmKGEuZylmb3IodmFyIGIsYz0wO2I9enNbY107YysrKV8uQmQoYi5IKCksYS5nKSYmKGIuSWE9YSxhLkhiPWIpfTsKTy5wcm90b3R5cGUuTmI9ZnVuY3Rpb24oYSl7dmFyIGI9RnModGhpcyxhLnRhcmdldCksYz1Gcyh0aGlzLGEucmVsYXRlZFRhcmdldCk7YiE9YyYmKGI9PXRoaXMueWEmJih0aGlzLnlhPW51bGwpLENzKHRoaXMpLHRoaXMuUD0hMSwhdGhpcy5pc1Zpc2libGUoKXx8YS5yZWxhdGVkVGFyZ2V0JiZfLkJkKHRoaXMuSCgpLGEucmVsYXRlZFRhcmdldCk/dGhpcy5nPXZvaWQgMDp0aGlzLlQoKSl9O08ucHJvdG90eXBlLlVjPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5IKCk7dGhpcy55YSE9YSYmKHRoaXMuRCgpLHRoaXMueWE9YSl9O08ucHJvdG90eXBlLlRjPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuSCgpO3RoaXMueWEhPWJ8fGEucmVsYXRlZFRhcmdldCYmXy5CZChiLGEucmVsYXRlZFRhcmdldCl8fCh0aGlzLnlhPW51bGwsdGhpcy5UKCkpfTsKdmFyIEdzPWZ1bmN0aW9uKGEsYixjKXthLkZ8fChhLkY9cXMoKDAsXy55KShhLmRlLGEsYixjKSxhLlpmKSl9LENzPWZ1bmN0aW9uKGEpe2EuRiYmKF8udi5jbGVhclRpbWVvdXQoYS5GKSxhLkY9dm9pZCAwKX07Ty5wcm90b3R5cGUuVD1mdW5jdGlvbigpe0JzKHRoaXMpPT0yJiYodGhpcy5JPXFzKCgwLF8ueSkodGhpcy5GYyx0aGlzLHRoaXMuZyksdGhpcy53ZikpfTtPLnByb3RvdHlwZS5EPWZ1bmN0aW9uKCl7dGhpcy5JJiYoXy52LmNsZWFyVGltZW91dCh0aGlzLkkpLHRoaXMuST12b2lkIDApfTtPLnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7dGhpcy5wYSghMSk7Q3ModGhpcyk7dGhpcy5kZXRhY2goKTt0aGlzLkgoKSYmXy5BZCh0aGlzLkgoKSk7dGhpcy55YT1udWxsO2RlbGV0ZSB0aGlzLkc7Ty5lYS5NLmNhbGwodGhpcyl9O3ZhciBEcz1mdW5jdGlvbihhLGIpe2VuLmNhbGwodGhpcyxhLGIpfTtfLkcoRHMsZW4pOwpEcy5wcm90b3R5cGUuaD1mdW5jdGlvbihhLGIsYyl7Yj1pcCgoYT9fLnNkKGEpOmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQpO2M9Yz9uZXcgdm0oYy50b3ArMTAsYy5yaWdodCxjLmJvdHRvbSxjLmxlZnQrMTApOm5ldyB2bSgxMCwwLDAsMTApO3hzKHRoaXMuZyxhLDgsYyxiLDkpJjQ5NiYmeHModGhpcy5nLGEsOCxjLGIsNSl9O3ZhciBJcz1mdW5jdGlvbihhKXtkbi5jYWxsKHRoaXMsYSw1KX07Xy5HKElzLGRuKTtJcy5wcm90b3R5cGUuaD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmV3IHpsKDEwLDApO3lzKHRoaXMuZWxlbWVudCx0aGlzLmosYSxiLGQsYyw5KSY0OTYmJnlzKHRoaXMuZWxlbWVudCw0LGEsMSxkLGMsNSl9O3ZhciBKcz1mdW5jdGlvbigpe08uY2FsbCh0aGlzKTt0aGlzLmxhPW51bGw7dGhpcy5SPW5ldyBfLkhiKHRoaXMpO3RoaXMuQj10aGlzLmo9dGhpcy5oPXRoaXMud2E9bnVsbDt0aGlzLk89ITB9O18uQihKcyxPKTtfLm09SnMucHJvdG90eXBlO18ubS5rYT1mdW5jdGlvbigpe3RoaXMuTz0hMTt2YXIgYT1fLnhmLnRlc3Qob3EpPyJydGwiOiJsdHIiO3RoaXMuUWIoa20ocHMse1VsOkVxLE9rOkNxLFJsOnhxLGRpcjphLGNqOklxfSkpO3RoaXMuY2xhc3NOYW1lKz0iIFZJcGdKZC15QVdORWItTDdsYmtiIHNraXB0cmFuc2xhdGUiOyhhPSEoIXRoaXMuSCgpfHwhdGhpcy5CKSkmJnRoaXMuUi5OKHdpbmRvdywicmVzaXplIiwoMCxfLnkpKHRoaXMucGIsdGhpcykpO3JldHVybiBhfTtfLm0uZGU9ZnVuY3Rpb24oYSxiKXt0aGlzLmxhPWE7Ty5wcm90b3R5cGUuZGUuY2FsbCh0aGlzLGEsYik7dGhpcy5IKCkuc3R5bGUuZGlzcGxheT0iYmxvY2sifTsKXy5tLlVkPWZ1bmN0aW9uKGEpe2lmKCF0aGlzLk8pe3ZhciBiPUZzKHRoaXMsYS50YXJnZXQpO3RoaXMueWE9Yjt0aGlzLkQoKTtiIT10aGlzLmc/KHRoaXMuZz1iLEdzKHRoaXMsYiksSHModGhpcyksRXModGhpcyxhKSk6R3ModGhpcyxiKX19O18ubS5NPWZ1bmN0aW9uKCl7dGhpcy5SJiZ0aGlzLlIuZGlzcG9zZSgpO3RoaXMuQj10aGlzLmxhPXRoaXMuUj1udWxsO08ucHJvdG90eXBlLk0uY2FsbCh0aGlzKX07Xy5tLnJlPWZ1bmN0aW9uKGEpe2lmKHRoaXMuaXNWaXNpYmxlKCkpe2E9KHRoaXMuRGM9YSk/dGhpcy5sLk46dGhpcy5sLnljO3ZhciBiPV8uc2QodGhpcy5IKCkpO2EuY2FsbCh0aGlzLmwsYiwibW91c2Vkb3duIix0aGlzLk5mLCEwKX1lbHNlIE8ucHJvdG90eXBlLnJlLmNhbGwodGhpcyxhKX07Xy5tLlFiPWZ1bmN0aW9uKGEpe08ucHJvdG90eXBlLlFiLmNhbGwodGhpcyxhKTthJiYodGhpcy5CPXZvKGEpKX07Cl8ubS5wYj1mdW5jdGlvbihhLGIpe3ZhciBjPWhwKGRvY3VtZW50LmJvZHkpLnk7aWYodGhpcy5vKXsodGhpcy5vfHxudWxsKS5nLnkrPWM7Ty5wcm90b3R5cGUucGIuY2FsbCh0aGlzKTt2YXIgZD1wYXJzZUludCh0aGlzLkgoKS5zdHlsZS5sZWZ0LDEwKTthPXBhcnNlSW50KHRoaXMuSCgpLnN0eWxlLnRvcCwxMCktKGE/MDpjKTtiJiYoYj10aGlzLlhifHx7fSxhLT1iLnRvcHx8MTAsZC09Yi5sZWZ0fHwxMCk7YS09YzsodGhpcy5vfHxudWxsKS5nLnk9YTsodGhpcy5vfHxudWxsKS5nLng9ZDtjPW5ldyB6bChkLGEpO2VwKHRoaXMuSCgpLGMpfX07Xy5tLnBhPWZ1bmN0aW9uKGEpe08ucHJvdG90eXBlLnBhLmNhbGwodGhpcyxhKX07Xy5tLk5hPWZ1bmN0aW9uKGEpe3RoaXMuaD1hfTtfLm0ubmE9ZnVuY3Rpb24oYSl7dGhpcy5qPWF9O18ubS5LYT1mdW5jdGlvbihhKXthPWE/Xy5BYyhhKToiIjt0aGlzLkI/Xy5DZCh0aGlzLkIsYSk6Ty5wcm90b3R5cGUuS2EuY2FsbCh0aGlzLGEpfTsKXy5tLkphPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaH07Xy5tLm9hPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuan07Xy5tLnZkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQj9Fbyh0aGlzLkIpOk8ucHJvdG90eXBlLnZkLmNhbGwodGhpcyl9O18ubS5OYj1mdW5jdGlvbihhKXt0aGlzLk98fE8ucHJvdG90eXBlLk5iLmNhbGwodGhpcyxhKX07Xy5tLlVjPWZ1bmN0aW9uKGEpe3RoaXMuT3x8Ty5wcm90b3R5cGUuVWMuY2FsbCh0aGlzLGEpfTtfLm0uVGM9ZnVuY3Rpb24oYSl7dGhpcy5PfHxPLnByb3RvdHlwZS5UYy5jYWxsKHRoaXMsYSl9O3ZhciBLcz1mdW5jdGlvbigpe3RoaXMuaD1uZXcgTWFwO3RoaXMuZz1XcShjcil9LE9zPWZ1bmN0aW9uKGEpe3ZhciBiPWduKCJnb29nLWd0LXRodW1iVXBCdXR0b24iKSxjPWEuaCxkPWEuZztiLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2lmKExzKGMpPT09TXMpZ3IoZCk7ZWxzZXt2YXIgZT1kcihkLDUpO2VyKGQsZSk7ZnIoZSw1KX1OcyhjLE1zKX0sITEpfSxRcz1mdW5jdGlvbihhKXt2YXIgYj1nbigiZ29vZy1ndC10aHVtYkRvd25CdXR0b24iKSxjPWEuaCxkPWEuZztiLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2lmKExzKGMpPT09UHMpZ3IoZCk7ZWxzZXt2YXIgZT1kcihkLDYpO2VyKGQsZSk7ZnIoZSw2KX1OcyhjLFBzKX0sITEpfSxUcz1mdW5jdGlvbihhKXt2YXIgYj1nbigiZ29vZy1ndC10dCIpLGM9Yi5kYXRhc2V0LGQ9Z24oImdvb2ctZ3Qtdm90aW5nSW5wdXRTcmNMYW5nIiksZT1nbigiZ29vZy1ndC12b3RpbmdJbnB1dFRyZ0xhbmciKSwKZj1nbigiZ29vZy1ndC12b3RpbmdJbnB1dFNyY1RleHQiKSxnPWduKCJnb29nLWd0LXZvdGluZ0lucHV0VHJnVGV4dCIpLGg9dm8oKSxrPWduKCJnb29nLWd0LXRyYW5zbGF0aW9uIiksbD1hLmgsbj1hLmc7d2luZG93LmRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcigiZ29vZy1ndC1wb3B1cFNob3duIixmdW5jdGlvbihxKXt2YXIgcD1kcihuLDQpO2VyKG4scCk7ZnIocCw0KTtxPXEuZGV0YWlsO3A9U3RyaW5nKHEuR2QpO3E9cS5YaTtjLmlkPXA7cD1sLmdldChwKXx8UnM7U3MocCk7Yi5zdHlsZS53aWR0aD1NYXRoLm1heChNYXRoLm1pbih3aW5kb3cuaW5uZXJXaWR0aC0xNiw1MzYpLDI4OCkrInB4IjtwPXEuSmEoKXx8IiI7dmFyIHI9cS5vYSgpfHwiIjtkLnZhbHVlPXA7ZS52YWx1ZT1yO2YudmFsdWU9cS52ZCgpO2cudmFsdWU9cS53YTtrJiYoay5pbm5lclRleHQ9cS53YSk7Yi5sYW5nPW9xO2gubGFuZz1wO2smJihrLmxhbmc9cik7Xy54Zi50ZXN0KHApJiYoaC5jbGFzc0xpc3QuYWRkKCJydGwiKSwKaC5kaXI9InJ0bCIpO2smJl8ueGYudGVzdChyKSYmKGsuY2xhc3NMaXN0LmFkZCgicnRsIiksay5kaXI9InJ0bCIpfSwhMSl9LFNzPWZ1bmN0aW9uKGEpe3ZhciBiPWduKCJnb29nLWd0LXRodW1iVXBCdXR0b24iKSxjPWduKCJnb29nLWd0LXRodW1iVXBJY29uIiksZD1nbigiZ29vZy1ndC10aHVtYlVwSWNvbkZpbGxlZCIpLGU9Z24oImdvb2ctZ3QtdGh1bWJEb3duQnV0dG9uIiksZj1nbigiZ29vZy1ndC10aHVtYkRvd25JY29uIiksZz1nbigiZ29vZy1ndC10aHVtYkRvd25JY29uRmlsbGVkIik7Yi5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsImZhbHNlIik7Yy5zdHlsZS5kaXNwbGF5PSIiO2Quc3R5bGUuZGlzcGxheT0ibm9uZSI7ZS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsImZhbHNlIik7Zi5zdHlsZS5kaXNwbGF5PSIiO2cuc3R5bGUuZGlzcGxheT0ibm9uZSI7c3dpdGNoKGEpe2Nhc2UgTXM6Yi5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsInRydWUiKTtjLnN0eWxlLmRpc3BsYXk9CiJub25lIjtkLnN0eWxlLmRpc3BsYXk9IiI7YnJlYWs7Y2FzZSBQczplLnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIiwidHJ1ZSIpLGYuc3R5bGUuZGlzcGxheT0ibm9uZSIsZy5zdHlsZS5kaXNwbGF5PSIifWduKCJnb29nLWd0LXZvdGluZ0lucHV0Vm90ZSIpLnZhbHVlPWF9LExzPWZ1bmN0aW9uKGEpe3ZhciBiPWduKCJnb29nLWd0LXR0IikuZGF0YXNldDtyZXR1cm4gYS5nZXQoYi5pZCl9LE5zPWZ1bmN0aW9uKGEsYil7THMoYSk9PT1iJiYoYj1Scyk7U3MoYik7dmFyIGM9Z24oImdvb2ctZ3QtdHQiKS5kYXRhc2V0O2Euc2V0KGMuaWQsYik7Z24oImdvb2ctZ3Qtdm90aW5nRm9ybSIpLnN1Ym1pdCgpfSxScz0oMCkudG9TdHJpbmcoKSxNcz0oMSkudG9TdHJpbmcoKSxQcz0oMikudG9TdHJpbmcoKTt2YXIgVXM9ZnVuY3Rpb24oYSl7dGhpcy5BPWE7dGhpcy5sPXRoaXMuaD10aGlzLm89dGhpcy5qPS0xO3RoaXMuZz0hMTt0aGlzLkM9MDt0aGlzLkQ9IiI7dGhpcy5GPTB9O1VzLnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe2lmKCF0aGlzLmcpe3RoaXMuZz0hMDt2YXIgYT1bXSxiO2ZvcihiPTA7YjwxNTtiKyspYVtiXT1YcVswfE1hdGgucmFuZG9tKCkqNjJdO3RoaXMuRD1hLmpvaW4oIiIpO3RoaXMuQz0wO3RoaXMubD10aGlzLmg9dGhpcy5vPXRoaXMuaj0tMTt0aGlzLkY9RGF0ZS5ub3coKTtxcyh0aGlzLkIsMUU0LHRoaXMpfX07VXMucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLmcmJih0aGlzLmc9ITEsVnModGhpcykpfTtVcy5wcm90b3R5cGUuQj1mdW5jdGlvbigpe3RoaXMuZyYmKFZzKHRoaXMpLHFzKHRoaXMuQiwxRTMsdGhpcykpfTsKdmFyIFZzPWZ1bmN0aW9uKGEpe3ZhciBiPWEuQS5sLGM9YS5BLkEsZD1hLkEuaixlPWEuQS5vO2lmKGEuaiE9Ynx8YS5vIT1jfHxhLmghPWR8fGEubCE9ZSl7dmFyIGY9e307Zi5jdD1iO2YuY3Y9YztmLmN0cz1kO2YuY3ZzPWU7Zi5zaWQ9YS5EO2Yuc2VxPWEuQysrO2YudGF0PURhdGUubm93KCktYS5GO2lmKGEuaj49MHx8YS5vPj0wfHxhLmg+PTB8fGEubD49MClmLnB0PWEuaixmLnB2PWEubyxmLnB0cz1hLmgsZi5wdnM9YS5sO1FtKCJ0ZV92IixmKTthLmo9YjthLm89YzthLmg9ZDthLmw9ZX19O3ZhciBXcz1mdW5jdGlvbigpe3RoaXMubz10aGlzLmo9dGhpcy5BPXRoaXMubD0wO3RoaXMuZz1bXTt0aGlzLmg9Xy52LkludGVyc2VjdGlvbk9ic2VydmVyIT1udWxsP25ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcigoMCxfLnkpKHRoaXMuQix0aGlzKSk6bnVsbH07V3MucHJvdG90eXBlLmF0dGFjaD1mdW5jdGlvbihhLGIpe3RoaXMuais9Yjt2YXIgYz10aGlzLmcubGVuZ3RoO3RoaXMuZy5wdXNoKGIpO2ZvcihiPTA7YjxhLmxlbmd0aDsrK2Ipe3ZhciBkPWFbYl07eW8oZCk/KGRbWHNdPWMsdGhpcy5sKz1FbyhkKS5sZW5ndGgsdGhpcy5oJiZ0aGlzLmgub2JzZXJ2ZShkKSk6dGhpcy5GZihkLm5vZGVUeXBlKX19O1dzLnByb3RvdHlwZS5kZXRhY2g9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2Ipe3ZhciBjPWFbYl07eW8oYyk/KGNbWHNdPXZvaWQgMCx0aGlzLmgmJnRoaXMuaC51bm9ic2VydmUoYykpOnRoaXMuRmYoYy5ub2RlVHlwZSl9fTsKV3MucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5vPXRoaXMuaj10aGlzLkE9dGhpcy5sPTA7dGhpcy5nPVtdfTtXcy5wcm90b3R5cGUuQj1mdW5jdGlvbihhKXtmb3IodmFyIGI9MDtiPGEubGVuZ3RoO2IrKyl7dmFyIGM9YVtiXTtpZihjLmludGVyc2VjdGlvblJhdGlvPjAmJmMudGFyZ2V0W1hzXSE9bnVsbCl7dGhpcy5BKz1FbyhjLnRhcmdldCkubGVuZ3RoO3ZhciBkPWMudGFyZ2V0W1hzXTt0aGlzLm8rPXRoaXMuZ1tkXTt0aGlzLmdbZF09MDtkZWxldGUgYy50YXJnZXRbWHNdfX19O0RyLmF0dGFjaCgzNjU0NixXcy5wcm90b3R5cGUse0ZmOjF9KTt2YXIgWHM9Il9ndF8iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyKTt2YXIgWXM9e307WXMuYWRkPWtuO1lzLkRrPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1obihhKTt0eXBlb2YgYj09PSJzdHJpbmciP18udmEoZCxiKTpBcnJheS5pc0FycmF5KGIpJiYoZD1sbihkLGIpKTt0eXBlb2YgYyE9PSJzdHJpbmcifHxfLnRhKGQsYyk/QXJyYXkuaXNBcnJheShjKSYmam4oZCxjKTpkLnB1c2goYyk7YS5jbGFzc05hbWU9ZC5qb2luKCIgIil9O1lzLmVuYWJsZT1vbjtZcy5nZXQ9aG47WXMuaGFzPW5uO1lzLnJlbW92ZT1tbjtZcy5zZXQ9ZnVuY3Rpb24oYSxiKXthLmNsYXNzTmFtZT1ifTtZcy5obT1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPWhuKGEpLGU9ITEsZj0wO2Y8ZC5sZW5ndGg7ZisrKWRbZl09PWImJihkLnNwbGljZShmLS0sMSksZT0hMCk7ZSYmKGQucHVzaChjKSxhLmNsYXNzTmFtZT1kLmpvaW4oIiAiKSk7cmV0dXJuIGV9O1lzLnRvZ2dsZT1mdW5jdGlvbihhLGIpe3ZhciBjPSFubihhLGIpO29uKGEsYixjKTtyZXR1cm4gY307dmFyIFpzPWZ1bmN0aW9uKGEpe18uaGIuY2FsbCh0aGlzKTthPWF8fHt9O3RoaXMuZz1KbChhKTt0aGlzLmcuaGM9YS5oYyE9PXZvaWQgMD9hLmhjOjE7dGhpcy5nLnZlPSEhYS52ZTt0aGlzLmcuYmg9cGFyc2VJbnQoYS5iaCwxMCl8fDMwMDt0aGlzLmcudHJhY2tWaXNpYmlsaXR5PWEudHJhY2tWaXNpYmlsaXR5fHwhMTt0aGlzLmcuYXBpS2V5PWEuYXBpS2V5fHwiIjt0aGlzLkM9MDt0aGlzLmw9e307dGhpcy5CPW51bGw7dGhpcy5GPXRoaXMuRD0iIjt0aGlzLm89bmV3IF8uSGIodGhpcyk7dGhpcy5BPXRoaXMuaj10aGlzLmg9bnVsbDt0aGlzLmcudHJhY2tWaXNpYmlsaXR5JiZfLnYuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIhPW51bGwmJih0aGlzLmo9bmV3IFdzLHRoaXMuQT1uZXcgVXModGhpcy5qKSk7dGhpcy5oPW5ldyBKcyh7U2k6dGhpcy5nLlNpfSk7dGhpcy5oLndmPTMwMDt0aGlzLmguWmY9MUUzO3RoaXMuaC5yZSghMCk7dGhpcy5vLk4odGhpcy5oLCJzaG93IiwoMCxfLnkpKHRoaXMub2csCnRoaXMpKTt0aGlzLm8uTih0aGlzLmgsImhpZGUiLCgwLF8ueSkodGhpcy5uZyx0aGlzKSk7dGhpcy5oLmthKCk7YT1uZXcgS3M7Z24oImdvb2ctZ3QtdGh1bWJVcEJ1dHRvbiIpJiYoT3MoYSksUXMoYSksVHMoYSkpfTtfLkIoWnMsXy5oYik7dmFyICRzPWZ1bmN0aW9uKGEpe2EuQSYmYS5BLnN0b3AoKTtmb3IodmFyIGIgaW4gYS5sKXt2YXIgYz1hLGQ9Yy5sW2JdO2lmKGQpe2MuaiYmYy5qLmRldGFjaChkLkFhKTtmb3IodmFyIGU9MDtlPGQuQWEubGVuZ3RoOysrZSlkLkFhW2VdJiZjLmRldGFjaChkLkFhW2VdKTtkZWxldGUgYy5sW2JdfX1hLmomJmEuai5yZXNldCgpfTtfLm09WnMucHJvdG90eXBlO18ubS5hdHRhY2g9ZnVuY3Rpb24oYSxiKXtiJiYoYi5HZD1hLHRoaXMuaC5hdHRhY2goYikpfTtfLm0uZGV0YWNoPWZ1bmN0aW9uKGEpe2EmJnRoaXMuaC5kZXRhY2goYSl9OwpfLm0ub2c9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmgubGE7YT1hP2EuR2Q6dm9pZCAwO2lmKGEhPT12b2lkIDApe3ZhciBiPXRoaXMubFthXTthdCh0aGlzLHRoaXMuQiwhMSk7dGhpcy5CPWE7YXQodGhpcyxhKTt0aGlzLmguTmEoYi5UaSk7dGhpcy5oLm5hKGIuVmkpO3ZhciBjPWIuWjt0aGlzLmgud2E9YyYmXy5BYyhjKTt0aGlzLmguS2EoYi50ZXh0KX1hPW5ldyBDdXN0b21FdmVudCgiZ29vZy1ndC1wb3B1cFNob3duIix7ZGV0YWlsOntHZDphLFhpOnRoaXMuaH19KTt3aW5kb3cuZG9jdW1lbnQuYm9keS5kaXNwYXRjaEV2ZW50KGEpfTtfLm0ubmc9ZnVuY3Rpb24oKXthdCh0aGlzLHRoaXMuQiwhMSl9O18ubS5NPWZ1bmN0aW9uKCl7JHModGhpcyk7dGhpcy5oJiYodGhpcy5oLmRpc3Bvc2UoKSx0aGlzLmg9bnVsbCk7dGhpcy5vJiYodGhpcy5vLmRpc3Bvc2UoKSx0aGlzLm89bnVsbCk7Xy5oYi5wcm90b3R5cGUuTS5jYWxsKHRoaXMpfTsKdmFyIGF0PWZ1bmN0aW9uKGEsYixjKXtpZihhPWEubFtiXSlmb3IoYz1jfHx0eXBlb2YgYz09InVuZGVmaW5lZCIsYj0wO2I8YS5BYS5sZW5ndGg7KytiKWlmKGEuQWFbYl0pWXNbYz8iYWRkIjoicmVtb3ZlIl0oYS5BYVtiXSwiVklwZ0pkLXlBV05FYi1WSXBnSmQtZm1jbVMtc241NFEiKX07dmFyIGJ0PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKWlmKGFbYl0mJmFbYl0ubm9kZSlyZXR1cm4gYVtiXS5ub2RlO3JldHVybiBudWxsfSxmdD1mdW5jdGlvbihhKXt2YXIgYj1idChhKTtpZighYilyZXR1cm4gbnVsbDt2YXIgYz1bXSxkPVtdLGU9W107Yj1uZXcgZHMoYiwhMCk7dmFyIGY9YVthLmxlbmd0aC0xXS5ub2RlLGc9MCxoPSExO2Rve2IubmV4dCgpO3ZhciBrPWIubm9kZSgpO2lmKCFrKWJyZWFrO3ZhciBsPWIuZy5nLG49Yi5kZXB0aCgpO2ZvcihsPT0xJiYtLW47ZzxhLmxlbmd0aCYmIWFbZ10ubm9kZTspKytnO2s9PWFbZ10ubm9kZXx8IWgmJmw9PTEmJihrIT1udWxsJiZrLnByZXZpb3VzU2libGluZz09bnVsbD8wOiFjdChkdChrKSkpPyhsPWV0KGspLGQucHVzaCh7bm9kZTpsLEthOmZ1bmN0aW9uKCl7fX0pLGVbZC5sZW5ndGgtMV09bixrLnBhcmVudE5vZGUmJmsucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobCxrKSxrPT1hW2ddLm5vZGUmJgooY1tnKytdPWQubGVuZ3RoLTEsaD0hMCkpOmg9ITF9d2hpbGUoayE9Zik7cmV0dXJue3plOmUsR2k6YyxkaTpkfX0sY3Q9ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPW51bGwmJlhyW2EudGFnTmFtZV19LGR0PWZ1bmN0aW9uKGEpe2lmKGE9PW51bGwpcmV0dXJuIG51bGw7Zm9yKGE9YS5wcmV2aW91c1NpYmxpbmc7YSE9bnVsbCYmYSE9bnVsbCYmYS5ub2RlVHlwZT09MyYmXy5BYyhFbyhhKSk9PSIiOylhPWEucHJldmlvdXNTaWJsaW5nO3JldHVybiBhfSxqdD1mdW5jdGlvbihhLGIsYyxkLGUsZil7Xy5oYi5jYWxsKHRoaXMpO3RoaXMuZz1bXTtmb3IodmFyIGc9MDtnPGEubGVuZ3RoOysrZyl0aGlzLmcucHVzaCgibm9kZVR5cGUiaW4gYVtnXT9ndChhW2ddKTphW2ddKSxodChhW2ddLm5vZGUpO3RoaXMubD1iO3RoaXMuRD1kfHwwO3RoaXMuUj1lfHwwO3RoaXMuQz1jO3RoaXMuQj1mfHxudWxsO3RoaXMuSz10aGlzLkc9dGhpcy5MPSExO3RoaXMubz1bXTt0aGlzLkE9W107dGhpcy5oPVtdOwp0aGlzLk89W107bmV3IF8uSGIodGhpcyk7dGhpcy5qPXRoaXMuST0hMX0sZ3Q7Xy5CKGp0LF8uaGIpOwp2YXIgbXQ9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuITE7aWYoYS5ub2RlVHlwZSE9M3x8IV8uU2MpcmV0dXJuIGt0IGluIGEmJiEhYVtrdF07aWYoIWEucGFyZW50Tm9kZSlyZXR1cm4hMDtpZighKGx0IGluIGEucGFyZW50Tm9kZSkpcmV0dXJuITE7dmFyIGI9YS5wYXJlbnROb2RlW2x0XTtpZighYnx8IWJbYS5ub2RlVmFsdWVdKXJldHVybiExO2I9YlthLm5vZGVWYWx1ZV07Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDsrK2MpaWYoYltjXT09YSlyZXR1cm4hMDtyZXR1cm4hMX0sbnQ9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm4iIjtpZihhLnRhZ05hbWU9PSJUSVRMRSIpcmV0dXJuIFN0cmluZyhkb2N1bWVudC50aXRsZSk7YS5ub2RlVHlwZT09Mz9iPSJub2RlVmFsdWUiOmJ8fChiPSJ2YWx1ZSIpO3JldHVybiBhLmdldEF0dHJpYnV0ZSYmYS5nZXRBdHRyaWJ1dGUoYik/U3RyaW5nKGEuZ2V0QXR0cmlidXRlKGIpKTp0eXBlb2YgYVtiXT09PSJzdHJpbmciP1N0cmluZyhhW2JdKToKIiJ9O2p0LnByb3RvdHlwZS5tYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmx9Owp2YXIgb3Q9ZnVuY3Rpb24oYSxiLGMpe2I9e1BmOmIsaGU6YyxVOltdfTthLmgucHVzaChiKTtyZXR1cm4gYn0scXQ9ZnVuY3Rpb24oYSl7aWYoIWEuaiYmYS5MJiYhYS5HJiYhYS5LKXthLkc9ITA7dmFyIGI7aWYoYj1wdChhLmcpKXtiPWEuZzt2YXIgYz1hLmg7aWYoYi5sZW5ndGg9PTEmJmJbMF0mJmJbMF0ueGUpe2Zvcih2YXIgZD1bXSxlPTA7ZTxjLmxlbmd0aDsrK2UpZm9yKHZhciBmPTA7ZjxjW2VdLlUubGVuZ3RoOysrZilkLnB1c2goY1tlXS5VW2ZdLlopO2JbMF0uS2EoZC5qb2luKCIgIiksYlswXS5ub2RlKTtiPSEwfWVsc2UgYj0hMTtiPSFifWlmKGImJihiPWZ0KGEuZykpKXthLkE9Yi5HaTthLm89Yi5kaTtkPWEuZztlPWEuQTtmPWEubzt2YXIgZz1iLnplO2M9W107Zm9yKHZhciBoPTA7aDxkLmxlbmd0aDsrK2gpaWYoY1toXT1bXSxkW2hdLm5vZGUmJmVbaF0hPT12b2lkIDApZm9yKHZhciBrPTA7azxmLmxlbmd0aDsrK2spaWYoIShnW2tdPmdbZVtoXV0pKXtpZihnW2tdPT0KZ1tlW2hdXSl7aWYoZltrXS5ub2RlLnBhcmVudE5vZGUhPWZbZVtoXV0ubm9kZS5wYXJlbnROb2RlKWNvbnRpbnVlfWVsc2V7Zm9yKHZhciBsPWdbZVtoXV0tZ1trXSxuPWZbZVtoXV0ubm9kZS5wYXJlbnROb2RlO2wtLSYmbiYmbiE9ZltrXS5ub2RlLnBhcmVudE5vZGU7KW49bi5wYXJlbnROb2RlO2lmKG4hPWZba10ubm9kZS5wYXJlbnROb2RlKWNvbnRpbnVlfWNbaF0ucHVzaChrKX1kPWEuZztlPWEuaDtmPS0xO2ZvcihnPWUubGVuZ3RoLTE7Zz49MDstLWcpZm9yKGg9ZVtnXSxrPWguVS5sZW5ndGgtMTtrPj0wOy0taylpZihsPWguVVtrXSwhKGwuWDwwKSYmZFtsLlhdJiZkW2wuWF0ubm9kZSlpZihmPDApbC5YYz1pcihjW2wuWF0pLGY9Y1tsLlhdW2NbbC5YXS5sZW5ndGgtMV07ZWxzZSBmb3Iobj1jW2wuWF0ubGVuZ3RoLTE7bj49MDstLW4paWYoY1tsLlhdW25dPD1mKXtsLlhjPWlyKGNbbC5YXS5zbGljZSgwLG4rMSkpO2Y9Y1tsLlhdW25dO2JyZWFrfWZvcihjPWU9MDtjPGEuaC5sZW5ndGg7KytjKXtkPQphLmhbY107Zj1hLmc7Zz1kO2g9Yi56ZTtrPWEuQTtsPSIiO2ZvcihuPTA7bjxnLlUubGVuZ3RoOysrbil7dmFyIHE9Zy5VW25dO2wrPXEuWjtpZihxLlg8MCl7dmFyIHA9LTEscj0tMSx0PWtbZy5VW24tMV0uWF07dCE9PXZvaWQgMCYmKHA9aFt0XSk7bjxnLlUubGVuZ3RoLTEmJih0PWtbZy5VW24rMV0uWF0sdCE9PXZvaWQgMCYmKHI9aFt0XSkpO2lmKHA+PTB8fHI+PTApYTppZih0PShwPDB8fHI8cCkmJm48Zy5VLmxlbmd0aC0xLHA9ZixyPXEscT1nLlVbdD9uKzE6bi0xXSwhKHEuWD49cC5sZW5ndGh8fHBbcS5YXS5ub2RlPT1udWxsKSl7cD1yLlo7ci5aPSIiO2lmKC9eICskLy50ZXN0KHApJiYocj10P3EuWi5jaGFyQ29kZUF0KDApOnEuWi5jaGFyQ29kZUF0KHEuWi5sZW5ndGgtMSksMzU4NDw9ciYmcjw9MzcxMXx8MTIyODg8PXImJnI8PTEyMzUxfHwxMjM1Mjw9ciYmcjw9MTI1NDN8fDEyNzg0PD1yJiZyPD0xMjc5OXx8MTk5Njg8PXImJnI8PTQwOTU5fHw2NTI4MDw9ciYmcjw9CjY1NTE5KSlicmVhayBhO3EuWj10P3ArcS5aOnEuWitwfX19Zj1sO2c9YS5nO2g9ZDtrPWEubztsPWIuemU7bj1hLkE7cT1bXTtmb3IocD0wO3A8aC5VLmxlbmd0aCYmIShlPj1rLmxlbmd0aCk7KytwKWlmKHI9aC5VW3BdLHIuWGMmJiEoci5YPDApJiZnW3IuWF0ubm9kZSYmci5aKWlmKGU9PW5bci5YXXx8ZSBpbiByLlhjJiYoIShlKzEgaW4gci5YYyl8fGUrMSE9bltyLlhdKSl7aWYoa1tlXSYma1tlXS5ub2RlKXt0PWV0KGtbZV0ubm9kZSk7cS5wdXNoKHQpO2Zvcih2YXIgQT1rW2VdLm5vZGUsRD1sW25bci5YXV0tbFtlXSxFPXQsYmE9Z1tyLlhdLm5vZGUucGFyZW50Tm9kZSxaPUU7YmEmJkQtLTspWj1iYS5jbG9uZU5vZGUoITEpLFouYXBwZW5kQ2hpbGQoRSksYmE9YmEucGFyZW50Tm9kZSxFPVo7QS5hcHBlbmRDaGlsZChaKTtBPWdbci5YXS5ub2RlO2dbci5YXS5yZD9nW3IuWF0uemZ8fHQuYXBwZW5kQ2hpbGQoQSk6KEE9Z1tyLlhdLm5vZGUuY2xvbmVOb2RlKCExKSxBLmlkJiYKKEEuaWQ9IiIpLHQuYXBwZW5kQ2hpbGQoQSkpO2dbci5YXS5LYShyLlosQSl9fWVsc2UrK2UsLS1wO2c9cTtuPWEuZztxPWQ7aD1hLkM7aWYocS5QZiloPXEuUGY7ZWxzZXtsPW4ubGVuZ3RoO2s9LTE7Zm9yKHA9MDtwPHEuVS5sZW5ndGg7KytwKXI9cS5VW3BdLlgscj49MCYmbltyXSYmbltyXS5ub2RlJiYoaz1NYXRoLm1heChrLHIpLGw9TWF0aC5taW4obCxyKSk7Zm9yKG49IiI7bDw9azsrK2wpaFtsXSYmKG4rPWhbbF0pO2g9bn1sPWE7bj1nO3E9aDtpZihsLkIpe2lmKGwuQi5nLmhjIT0zKXtnPWwuTztoPWcucHVzaDtrPWwuQjtkPWQuaGU7ZD1rLmxbKytrLkNdPXtpZDprLkMudG9TdHJpbmcoKSxSazpsLHRleHQ6cSxmbTpkfHxxLFo6ZixUaTprLkQsVmk6ay5GLEFhOm59O2ZvcihmPTA7ZjxuLmxlbmd0aDsrK2YpbltmXSYmay5hdHRhY2goZC5pZCxuW2ZdKTtrLmomJmsuai5hdHRhY2gobixxLmxlbmd0aCk7ay5BJiZrLkEuc3RhcnQoKTtoLmNhbGwoZyxkLmlkKX19ZWxzZSBmb3IoZD0KMDtkPG4ubGVuZ3RoOysrZCluW2RdLnRpdGxlPXF9Yj1hLmc7Zm9yKGM9MDtjPGIubGVuZ3RoOysrYyliW2NdLm5vZGUmJiFiW2NdLnJkJiZfLkFkKGJbY10ubm9kZSk7Yj1hLmc7Yz1hLm87YT1hLkE7Zm9yKGU9ZD0wO2U8Yy5sZW5ndGg7KytlKWlmKGY9Y1tlXS5ub2RlKXtmb3IoO2Q8Yi5sZW5ndGgmJmU+YVtkXTspZCsrOyhkPj1iLmxlbmd0aHx8ZSE9YVtkXSkmJiFmLmZpcnN0Q2hpbGQmJihfLkFkKGYpLGNbZV0ubm9kZT1udWxsKX19fX07Cmp0LnByb3RvdHlwZS5yZXN0b3JlPWZ1bmN0aW9uKCl7aWYodGhpcy5HKWlmKHRoaXMuRz0hMSx0aGlzLkImJiRzKHRoaXMuQiksdGhpcy5PPVtdLHB0KHRoaXMubyksdGhpcy5nLmxlbmd0aD09MSYmdGhpcy5nWzBdLnhlKXRoaXMuZ1swXS5LYSh0aGlzLkNbMF0sdGhpcy5nWzBdLm5vZGUpO2Vsc2V7Zm9yKHZhciBhPTAsYj0wO2I8dGhpcy5vLmxlbmd0aDsrK2Ipe3ZhciBjPXRoaXMub1tiXS5ub2RlO2lmKGMpe2Zvcig7YTx0aGlzLmcubGVuZ3RoJiZiPnRoaXMuQVthXTspe3ZhciBkPWErKzt0aGlzLmdbZF0ubm9kZSYmKHJ0KHRoaXMuZ1tkXS5ub2RlKSx0aGlzLmdbZF0ubm9kZT1udWxsKX1pZihhPHRoaXMuZy5sZW5ndGgmJmI9PXRoaXMuQVthXSYmdGhpcy5nW2FdLm5vZGUpe3RoaXMuZ1thXS56Znx8KF8uemQoYyksYy5hcHBlbmRDaGlsZCh0aGlzLmdbYV0ubm9kZSkpO3RoaXMuZ1thXS5LYSh0aGlzLkNbYV0sdGhpcy5nW2FdLm5vZGUpO2ErKzt2YXIgZT1jLnBhcmVudE5vZGU7CmlmKGUmJmUubm9kZVR5cGUhPTExKWlmKGMucmVtb3ZlTm9kZSljLnJlbW92ZU5vZGUoITEpO2Vsc2V7Zm9yKDtkPWMuZmlyc3RDaGlsZDspZS5pbnNlcnRCZWZvcmUoZCxjKTtfLkFkKGMpfX1lbHNlIF8uQWQoYyl9fXRoaXMubz1bXX19O2p0LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy5oYi5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO3RoaXMucmVzdG9yZSgpO2Zvcih2YXIgYT0wO2E8dGhpcy5nLmxlbmd0aDsrK2EpdGhpcy5nW2FdLm5vZGUmJnJ0KHRoaXMuZ1thXS5ub2RlKTt0aGlzLmc9bnVsbH07CnZhciBodD1mdW5jdGlvbihhKXtpZihhKWlmKGEubm9kZVR5cGU9PTMmJl8uU2Mpe2x0IGluIGEucGFyZW50Tm9kZSYmYS5wYXJlbnROb2RlW2x0XXx8KGEucGFyZW50Tm9kZVtsdF09e30pO3ZhciBiPWEucGFyZW50Tm9kZVtsdF07YlthLm5vZGVWYWx1ZV18fChiW2Eubm9kZVZhbHVlXT1bXSk7Yj1iW2Eubm9kZVZhbHVlXTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYylpZihiW2NdPT1hKXJldHVybjtiLnB1c2goYSl9ZWxzZSBhW2t0XT0xfSxydD1mdW5jdGlvbihhKXtpZighYXx8YS5ub2RlVHlwZT09MyYmXy5TYyl7dmFyIGI9YS5wYXJlbnROb2RlO2lmKGImJmx0IGluIGIpe3ZhciBjPWJbbHRdO2lmKGMmJmEmJmNbYS5ub2RlVmFsdWVdKXt2YXIgZD1jW2Eubm9kZVZhbHVlXTtpZihkKWZvcih2YXIgZT0wO2U8ZC5sZW5ndGg7KytlKWlmKGRbZV09PWEpe2Quc3BsaWNlKGUsMSk7YnJlYWt9ZC5sZW5ndGg9PTAmJmRlbGV0ZSBjW2Eubm9kZVZhbHVlXX1pZihjJiZ3cihjKSl0cnl7ZGVsZXRlIGJbbHRdfWNhdGNoKGYpe2JbbHRdPQoiIn19fWVsc2UgaWYoa3QgaW4gYSl0cnl7ZGVsZXRlIGFba3RdfWNhdGNoKGYpe2Fba3RdPSIifX0scHQ9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpdHJ5e2FbYl0ubm9kZSYmIWFbYl0ubm9kZS5wYXJlbnROb2RlJiYoYVtiXS5ub2RlPW51bGwpfWNhdGNoKGMpe2FbYl0ubm9kZT1udWxsfWZvcihiPWEubGVuZ3RoLTE7Yj49MCYmIWFbYl0ubm9kZTstLWIpO2EubGVuZ3RoPWIrMTtyZXR1cm4gYS5sZW5ndGh9LGV0PWZ1bmN0aW9uKGEpe2E9YS5vd25lckRvY3VtZW50P2Eub3duZXJEb2N1bWVudC5jcmVhdGVFbGVtZW50KCJmb250Iik6Xy53ZChkb2N1bWVudCwiZm9udCIpO2h0KGEpO2Euc3R5bGUudmVydGljYWxBbGlnbj0iaW5oZXJpdCI7Xy5vaShfLlppKHBxLDIpKSYmKGEuZGlyPSJhdXRvIik7cmV0dXJuIGF9LHN0PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1uZXcgU2V0LGM9MDtjPGEuZy5sZW5ndGg7YysrKXt2YXIgZD1hLmdbY10ubm9kZTtkIT1udWxsJiYKYi5hZGQoZCl9cmV0dXJuIGJ9LHR0PWZ1bmN0aW9uKCl7dGhpcy5oPXt9O3RoaXMuZz17fX07dHQucHJvdG90eXBlLmhhcz1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmhbYV0hPW51bGx8fHRoaXMuZ1thXSE9bnVsbHx8YiYmKGEgaW4gdGhpcy5ofHxhIGluIHRoaXMuZyl9O3R0LnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbihhLGIpe3RoaXMuZ1thXT1ifTt0dC5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe2RlbGV0ZSB0aGlzLmdbYV07ZGVsZXRlIHRoaXMuaFthXX07dHQucHJvdG90eXBlLnJlYWQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5nW2FdO2J8fChiPXRoaXMuaFthXSx0aGlzLmdbYV09Yik7cmV0dXJuIGJ9O3ZhciBrdD0iX2d0XyIrTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIpLGx0PSJfZ3RuXyIrTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIpOwooZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGMpe2RvY3VtZW50LnRpdGxlPWN9dmFyIGI9e307Z3Q9ZnVuY3Rpb24oYyxkKXtpZihjLnRhZ05hbWU9PSJUSVRMRSIpcmV0dXJue25vZGU6YyxLYTphLHJkOiEwLHpmOiEwLHhlOiEwfTtpZihjLm5vZGVUeXBlPT0zKXJldHVybntub2RlOmMsS2E6ZnVuY3Rpb24oZSxmKXtfLkNkKGYsZSl9fTtkfHwoZD0idmFsdWUiKTtiW2RdfHwoYltkXT1mdW5jdGlvbihlLGYpe2Yuc2V0QXR0cmlidXRlJiZmLnNldEF0dHJpYnV0ZShkLGUpO3R5cGVvZiBlPT09InN0cmluZyImJihmW2RdPWUpfSk7Yz17bm9kZTpjLEthOmJbZF0scmQ6ITB9O2QhPSJ2YWx1ZSImJihjLnhlPSEwKTtyZXR1cm4gY319KSgpOwp2YXIgdXQ9ZnVuY3Rpb24oYSxiLGMsZCl7ZD1kLmZpcnN0Q2hpbGQmJmQuZmlyc3RDaGlsZC5ub2RlVHlwZT09Mz9kLmZpcnN0Q2hpbGQubm9kZVZhbHVlOkVvKGQpO2Q9e1g6YyxaOnBvKGQpfTthLnB1c2goZCk7YltjXT9iW2NdLmVuZD1kOmJbY109e3N0YXJ0OmQsZW5kOmR9O3JldHVybiBkfSx2dD1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz1hLmZpcnN0Q2hpbGQ7YztjPWIpYj1jLm5leHRTaWJsaW5nLGMubm9kZVR5cGUhPTMmJihjPT1hLmZpcnN0Q2hpbGQ/YS5wYXJlbnROb2RlJiZhLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGMsYSk6eG8oYyxhKSx2dChjKSl9O3ZhciB3dD1mdW5jdGlvbigpe3RoaXMuZz1bXX07d3QucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXt0aGlzLmcucHVzaChhKX07dmFyIHh0PWZ1bmN0aW9uKCl7dGhpcy5nPVtdfTtfLkIoeHQsd3QpO3h0LnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7aWYoYSlmb3IoO2EoKTspO307eHQuZz1mdW5jdGlvbigpe3JldHVybiBXcSh4dCl9O3ZhciB6dD1mdW5jdGlvbihhKXt0aGlzLmc9W107dGhpcy5oPS41O3l0KHRoaXMsYSk7dGhpcy5sPTA7dGhpcy5qPSEwO3RoaXMubz0oMCxfLnkpKHRoaXMuQSx0aGlzKX07Xy5CKHp0LHd0KTt2YXIgeXQ9ZnVuY3Rpb24oYSxiKXtiPjE/YS5oPTE6YjwuMDAxP2EuaD0uMDAxOmImJihhLmg9Yil9O3p0LnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7d3QucHJvdG90eXBlLmFkZC5jYWxsKHRoaXMsYSk7dGhpcy5qJiZBdCh0aGlzKX07dmFyIEF0PWZ1bmN0aW9uKGEpe2Euaj0hMTt3aW5kb3cuc2V0VGltZW91dChhLm8sTWF0aC5taW4oYS5sLDVFMykpfTsKenQucHJvdG90eXBlLkE9ZnVuY3Rpb24oKXt2YXIgYT0obmV3IERhdGUpLmdldFRpbWUoKTtkb3t0aGlzLmcubGVuZ3RoJiYodGhpcy5nWzBdJiZ0aGlzLmdbMF0oKXx8dGhpcy5nLnNoaWZ0KCkpO3ZhciBiPSEhdGhpcy5nLmxlbmd0aDt2YXIgYz05NSp0aGlzLmgrNTt2YXIgZD0obmV3IERhdGUpLmdldFRpbWUoKS1hfXdoaWxlKGImJmQ8Yyk7dGhpcy5sPU1hdGguY2VpbChkKigxL3RoaXMuaC0xKSkrMTtiP0F0KHRoaXMpOnRoaXMuaj0hMH07dmFyIEJ0PWZ1bmN0aW9uKGEsYil7dGhpcy5EPWF8fG51bGw7dGhpcy5JPWJ8fHh0LmcoKTt0aGlzLkI9dGhpcy5BPXRoaXMuRz1udWxsO3RoaXMubD10aGlzLmo9ITE7dGhpcy5vPW51bGw7dGhpcy5nPVtdO3RoaXMuaD0wfSxDdD1mdW5jdGlvbihhLGIpe2Euanx8KGEuRz1iKX0sRHQ9ZnVuY3Rpb24oYSxiLGMpe2EuQT1jPygwLF8ueSkoYixjKTpifSxFdD1mdW5jdGlvbihhLGIsYyl7YS5CPWM/KDAsXy55KShiLGMpOmJ9LEZ0PWZ1bmN0aW9uKGEsYil7YS5qfHwoYS5qPSEwLGEuRj1iLGEuaCsrLGEubz1hLkcsYS5DKCkpfTtCdC5wcm90b3R5cGUuc3RvcD1mdW5jdGlvbigpe3RoaXMuaCsrO3RoaXMuaj0hMTt0aGlzLmc9W119Owp2YXIgR3Q9ZnVuY3Rpb24oYSl7aWYoIWEuailyZXR1cm4gbnVsbDtmb3IodmFyIGI9ITEsYz0wO2M8YS5nLmxlbmd0aDsrK2MpaWYoYS5nW2NdLnRhcmdldD09PWEpe2EuZ1tjXS5yZWFkeT0hMTthLmdbY10uaGc9YS5oKzE7Yj0hMDticmVha31ifHxhLmcucHVzaCh7dGFyZ2V0OmEscmVhZHk6ITEsaGc6YS5oKzF9KTtyZXR1cm4oMCxfLnkpKGEuQyxhLGEsYS5oKzEpfSxIdD1mdW5jdGlvbihhKXtpZighYS5qKXJldHVybiEwO2Zvcih2YXIgYj0wO2I8YS5nLmxlbmd0aDsrK2IpaWYoYS5nW2JdLnRhcmdldD09PWEmJmEuZ1tiXS5oZz09YS5oKXJldHVybiBhLmdbYl0ucmVhZHk7cmV0dXJuITB9OwpCdC5wcm90b3R5cGUuQz1mdW5jdGlvbihhLGIpe2lmKHRoaXMuail7aWYoYSlmb3IodmFyIGM9MDtjPHRoaXMuZy5sZW5ndGg7KytjKWlmKHRoaXMuZ1tjXS50YXJnZXQ9PT1hKXt0aGlzLmdbY10ucmVhZHk9ITA7YnJlYWt9dGhpcy5sfHx0aGlzLkkuYWRkKCgwLF8ueSkodGhpcy5XLHRoaXMsYnx8dGhpcy5oKSl9fTsKQnQucHJvdG90eXBlLlc9ZnVuY3Rpb24oYSl7aWYodGhpcy5oIT1hKXJldHVybiExO2E9dGhpcy5vO2lmKGE9PUl0KXJldHVybiB0aGlzLnN0b3AoKSx0aGlzLkEmJnRoaXMuQS5jYWxsKHRoaXMuRCx0aGlzLHRoaXMuRiksITE7dGhpcy5sPSEwO3RyeXt2YXIgYj1hLmNhbGwodGhpcy5ELHRoaXMsdGhpcy5GKTtpZighYil0aHJvdyBFcnJvcigpO31jYXRjaChjKXt0aGlzLnN0b3AoKTthPWM7aWYodGhpcy5CKXRoaXMuQi5jYWxsKHRoaXMuRCxhLHRoaXMsdGhpcy5GKTtlbHNlIHRocm93IGE7cmV0dXJuITF9ZmluYWxseXt0aGlzLmw9ITF9YiE9SnQmJih0aGlzLm89Yix0aGlzLmgrKyx0aGlzLkMoKSk7cmV0dXJuITF9O3ZhciBKdD1mdW5jdGlvbigpe30sSXQ9ZnVuY3Rpb24oKXt9O3ZhciBLdD1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGEuY2xhc3NOYW1lPT0ic3RyaW5nIj9hLmNsYXNzTmFtZTphLmdldEF0dHJpYnV0ZSYmYS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIifSxMdD1mdW5jdGlvbihhLGIpe3R5cGVvZiBhLmNsYXNzTmFtZT09InN0cmluZyI/YS5jbGFzc05hbWU9YjphLnNldEF0dHJpYnV0ZSYmYS5zZXRBdHRyaWJ1dGUoImNsYXNzIixiKX0sTXQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5jbGFzc0xpc3Q/YS5jbGFzc0xpc3QuY29udGFpbnMoYik6Xy50YShhLmNsYXNzTGlzdD9hLmNsYXNzTGlzdDpLdChhKS5tYXRjaCgvXFMrL2cpfHxbXSxiKX0sTnQ9ZnVuY3Rpb24oYSxiKXtpZihhLmNsYXNzTGlzdClhLmNsYXNzTGlzdC5hZGQoYik7ZWxzZSBpZighTXQoYSxiKSl7dmFyIGM9S3QoYSk7THQoYSxjKyhjLmxlbmd0aD4wPyIgIitiOmIpKX19LE90PWZ1bmN0aW9uKGEsYil7YS5jbGFzc0xpc3Q/YS5jbGFzc0xpc3QucmVtb3ZlKGIpOk10KGEsYikmJgpMdChhLEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChhLmNsYXNzTGlzdD9hLmNsYXNzTGlzdDpLdChhKS5tYXRjaCgvXFMrL2cpfHxbXSxmdW5jdGlvbihjKXtyZXR1cm4gYyE9Yn0pLmpvaW4oIiAiKSl9O3ZhciBRdD1mdW5jdGlvbihhLGIsYyxkLGUpe2I9Ynx8e307dGhpcy5XPWV8fFtdO3RoaXMuQT1bXTt0aGlzLkY9W107UHQodGhpcyxhfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsYi5WZj09PXZvaWQgMHx8ISFiLlZmKTt0aGlzLkM9Y3x8anQ7dGhpcy5EPWIubGk7dGhpcy5qPXRoaXMuZz10aGlzLm89dGhpcy5kYz1udWxsO3RoaXMuQj0hIWIuYmo7dGhpcy5MPSEhYi5aaTt0aGlzLks9dGhpcy5CPzI3OjEzO3RoaXMuST0hMDt0aGlzLkc9W107dGhpcy5sPW5ldyBCdCh0aGlzLGQpfSxSdD1mdW5jdGlvbihhLGIsYyxkKXthLmwuanx8KGI9e2RnOmIsYWc6YyxBYTpbXSxRZjpbXSxyYjpbXSx0ZXh0TGVuZ3RoOjAsc2l6ZTowLGNvbnRpbnVvdXM6ITB9LGEuZGM9bnVsbCxDdChhLmwsYS5oKSxEdChhLmwsZCksRXQoYS5sLCgwLF8ueSkoZnVuY3Rpb24oZSl7dGhpcy51aShlKTtkKCl9LGEpKSxGdChhLmwsYikpfSxTdD1mdW5jdGlvbihhLGIpe3JldHVybiBhLkFhLmxlbmd0aD4wPwpuZXcgYihhLkFhLGEucmIuam9pbigiIiksYS5RZixhLnRleHRMZW5ndGgsYS5zaXplKTpudWxsfSxUdD1mdW5jdGlvbihhLGIpe2lmKCFhLmopcmV0dXJuIGEuZGM9U3QoYixhLkMpLCEwO2lmKCFiLmNvbnRpbnVvdXMmJmIuQWEubGVuZ3RoPjApcmV0dXJuIGEuZGM9U3QoYixhLkMpLCEwO2IuY29udGludW91cz1hLmouS2Y7YTp7dmFyIGM9YS5qO3ZhciBkPWEuSztpZihiLnNpemU+Yi5hZ3x8Yi50ZXh0TGVuZ3RoPmIuZGcpYz0hMTtlbHNle3ZhciBlPWMuc2l6ZSxmPWMudGV4dC5sZW5ndGg7aWYoYi5BYS5sZW5ndGghPTAmJihlKz1iLkFhLmxlbmd0aD09MT9iLnNpemUrZCtkOmIuc2l6ZStkLGYrPWIudGV4dExlbmd0aCxlPmIuYWd8fGY+Yi5kZykpe2M9ITE7YnJlYWsgYX1iLnNpemU9ZTtiLnRleHRMZW5ndGg9ZjtiLkFhLnB1c2goYy5ub2RlKTtiLlFmLnB1c2goYy50ZXh0KTtkPWIuQWEubGVuZ3RoLTE7ZD09MD9iLnJiLnB1c2goYy5MZCk6KGQ9PTEmJihiLnJiWzBdPSI8YSBpPTA+IisKYi5yYlswXSsiPC9hPiIpLGIucmIucHVzaCgiPGEgaT0iK2QrIj4iKSxiLnJiLnB1c2goYy5MZCksYi5yYi5wdXNoKCI8L2E+IikpO2M9ITB9fWlmKGMpcmV0dXJuIGEuaj1udWxsLCExO2EuZGM9U3QoYixhLkMpO3JldHVybiEwfSxVdD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bnQoYixjKTtkJiZfLkFjKGpvKGQpKSYmYS5HLnB1c2goe25vZGU6YixZZzpjLHRleHQ6ZH0pfTsKUXQucHJvdG90eXBlLmg9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzO2lmKHRoaXMuaiYmVHQodGhpcyxiKSlyZXR1cm4gSXQ7aWYoIXRoaXMuZyl7dGhpcy5JPSEhdGhpcy5BLmxlbmd0aDtpZighdGhpcy5BLmxlbmd0aCYmKGE9dGhpcy5HLnNoaWZ0KCkpKXJldHVybiB0aGlzLmo9e0tmOiExLG5vZGU6Z3QoYS5ub2RlLGEuWWcpLHRleHQ6YS50ZXh0LExkOmxvKGEudGV4dCksc2l6ZTp0aGlzLkI/Xy5HYihhLnRleHQpLmxlbmd0aDphLnRleHQubGVuZ3RofSxiLmNvbnRpbnVvdXM9ITEsVHQodGhpcyxiKSxJdDthPXRoaXMuQS5zaGlmdCgpfHx0aGlzLkYuc2hpZnQoKTtpZighYSlyZXR1cm4gdGhpcy5qPW51bGwsVHQodGhpcyxiKSxJdDt0aGlzLm89W2EuWWldO3RoaXMuZz1uZXcgZHMoYS5yb290KX10aGlzLmcubmV4dCgpO2lmKHRoaXMuZy5kb25lKXJldHVybiB0aGlzLmc9bnVsbCxiLmNvbnRpbnVvdXM9ITEsdGhpcy5oO2E9dGhpcy5nLm5vZGUoKTt2YXIgZD10aGlzLmcuZy5nOwppZihkPT0tMSlyZXR1cm4gVnQodGhpcyksV3QoYSl8fChiLmNvbnRpbnVvdXM9ITEpLHRoaXMuaDtYdCh0aGlzLGEpO2Q9ZD09MTt2YXIgZT0hIWEmJihhLm5vZGVUeXBlPT0zJiZ0eXBlb2YgYS5ub2RlVmFsdWU9PT0ic3RyaW5nInx8YS50YWdOYW1lPT0iVElUTEUiJiZ0eXBlb2YgYS52YWx1ZT09PSJzdHJpbmcifHxhLnRhZ05hbWU9PSJURVhUQVJFQSImJk10KGEsInRyYW5zbGF0ZSIpfHxhLnRhZ05hbWU9PSJJTlBVVCImJihZclthLnR5cGVdfHxNdChhLCJ0cmFuc2xhdGUiKSkpO2lmKChlfHxkKSYmdGhpcy5JJiYhWXQoYSkpcmV0dXJuIFB0KHRoaXMsYSxadCh0aGlzKSwhMCksYnModGhpcy5nLmcpLFZ0KHRoaXMpLHRoaXMuaDtpZihkJiZadCh0aGlzKSYmKHRoaXMuTCYmVXQodGhpcyxhLCJ0aXRsZSIpLFV0KHRoaXMsYSwiYWx0IiksVXQodGhpcyxhLCJwbGFjZWhvbGRlciIpLFV0KHRoaXMsYSwiYXJpYS1sYWJlbCIpLFV0KHRoaXMsYSwiYXJpYS1wbGFjZWhvbGRlciIpLFV0KHRoaXMsCmEsImFyaWEtcm9sZWRlc2NyaXB0aW9uIiksVXQodGhpcyxhLCJhcmlhLXZhbHVldGV4dCIpLGVzKHRoaXMuZykpKWZvcih2YXIgZj1hLmZpcnN0Q2hpbGQ7Zjspe2lmKGYubm9kZVR5cGU9PTMpe3ZhciBnPWYubm9kZVZhbHVlLnNwbGl0KCJcbiIpO2lmKGcubGVuZ3RoPjJ8fGcubGVuZ3RoPT0yJiZfLkFjKGdbMF0pIT0iIiYmXy5BYyhnWzFdKSE9IiIpe2Yubm9kZVZhbHVlPWdbMF07Zm9yKHZhciBoPTE7aDxnLmxlbmd0aDsrK2gpe3ZhciBrPV8uc2QoYSkuY3JlYXRlRWxlbWVudCgiZm9udCIpO3RoaXMuVy5wdXNoKGspO3hvKGssZik7Zj1rO3hvKF8uc2QoYSkuY3JlYXRlVGV4dE5vZGUoIlxuIitnW2hdKSxmKTtmPWYubmV4dFNpYmxpbmd9fX1mPWYubmV4dFNpYmxpbmd9YS5zaGFkb3dSb290JiZBcnJheS5mcm9tKGEuc2hhZG93Um9vdC5jaGlsZE5vZGVzKS5mb3JFYWNoKGZ1bmN0aW9uKHIpe1B0KGMscixadChjKSl9KTtpZihlKXticyh0aGlzLmcuZyk7aWYoWnQodGhpcykpe3ZhciBsPQpudChhKTtpZihfLkFjKGpvKGwpKSYmKHRoaXMuaj17S2Y6ITAsbm9kZTpndChhKSx0ZXh0OmwsTGQ6bG8obCksc2l6ZTp0aGlzLkI/Xy5HYihsKS5sZW5ndGg6bC5sZW5ndGh9LFR0KHRoaXMsYikpKXJldHVybiBWdCh0aGlzKSxJdH1WdCh0aGlzKTtyZXR1cm4gdGhpcy5ofWlmKGQpe2lmKCR0KGEpfHwhYS5maXJzdENoaWxkJiZhLnRhZ05hbWUhPSJJRlJBTUUiJiZhLnRhZ05hbWUhPSJSVUJZIilyZXR1cm4gYi5jb250aW51b3VzPWIuY29udGludW91cyYmISFYclthLnRhZ05hbWVdLGJzKHRoaXMuZy5nKSxWdCh0aGlzKSx0aGlzLmg7aWYoYS50YWdOYW1lPT0iUlVCWSIpe3RyeXtsPV8uQyhhLmNoaWxkTm9kZXMpO2Zvcih2YXIgbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBxPW4udmFsdWU7cS5ub2RlVHlwZSE9MyYmUHQodGhpcyxxLFp0KHRoaXMpKX19Y2F0Y2gocil7fWJzKHRoaXMuZy5nKTtWdCh0aGlzKTtyZXR1cm4gdGhpcy5ofWlmKGEudGFnTmFtZT09IklGUkFNRSIpe3RyeXtpZighYS5zcmMubWF0Y2goL2h0dHBzPzpcL1wvLyl8fApfLkNiKGEuc3JjLm1hdGNoKF8ucmYpWzNdfHxudWxsKT09d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKXt2YXIgcD16byhhKS5kb2N1bWVudEVsZW1lbnQ7cCYmUHQodGhpcyxwLFp0KHRoaXMpKX19Y2F0Y2gocil7fWIuY29udGludW91cz0hMTticyh0aGlzLmcuZyk7VnQodGhpcyk7cmV0dXJuIHRoaXMuaH1adCh0aGlzKSYmV3QoYSk/dGhpcy5EJiZhLnRhZ05hbWU9PSJBIiYmYS5ocmVmJiZ0aGlzLkQoYSk6Yi5jb250aW51b3VzPSExO3JldHVybiB0aGlzLmh9YnModGhpcy5nLmcpO1Z0KHRoaXMpO3JldHVybiB0aGlzLmh9Owp2YXIgJHQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG10KGEpfHxhLm5vZGVUeXBlIT0zJiYoIWEudGFnTmFtZXx8V3JbYS50YWdOYW1lXXx8WHJbYS50YWdOYW1lXXx8TXQoYSwic2tpcHRyYW5zbGF0ZSIpKX0sYXU9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5zZChhKTtyZXR1cm4gYi5kZWZhdWx0VmlldyYmYi5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlP2IuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpOmEuY3VycmVudFN0eWxlfSxZdD1mdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlVHlwZT09Mz8hMDphLm5vZGVUeXBlIT0xPyExOmEub2Zmc2V0V2lkdGgmJmEub2Zmc2V0SGVpZ2h0PyEwOihhPWF1KGEpLCEhYSYmYS5kaXNwbGF5IT0ibm9uZSImJmEudmlzaWJpbGl0eSE9ImhpZGRlbiIpfSxXdD1mdW5jdGlvbihhKXtpZihhLm5vZGVUeXBlPT0zKXJldHVybiEwO2lmKGEubm9kZVR5cGUhPTEpcmV0dXJuITE7dmFyIGI9YXUoYSk7cmV0dXJuISFWclthLnRhZ05hbWVdJiYKKCFifHwhYi5kaXNwbGF5fHxiLmRpc3BsYXk9PSJpbmxpbmUiKX0sUHQ9ZnVuY3Rpb24oYSxiLGMsZCl7KGQ/YS5GOmEuQSkucHVzaCh7cm9vdDpiLFlpOmM9PT12b2lkIDB8fGN9KX0sWnQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEub1thLm8ubGVuZ3RoLTFdfSxYdD1mdW5jdGlvbihhLGIpe2I9IW10KGIpJiYoYi5ub2RlVHlwZT09JG4mJlp0KGEpfHwhKE10KGIsIm5vdHJhbnNsYXRlIil8fGIuYXR0cmlidXRlcyYmYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZSYmYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZS52YWx1ZT09Im5vIikmJihNdChiLCJ0cmFuc2xhdGUiKXx8ISFiLmF0dHJpYnV0ZXMmJiEhYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZSYmYi5hdHRyaWJ1dGVzLnRyYW5zbGF0ZS52YWx1ZT09InllcyJ8fFp0KGEpKSk7YS5vLnB1c2goYil9LFZ0PWZ1bmN0aW9uKGEpe2Euby5wb3AoKX0sYnU9e307RHIuYXR0YWNoKDU3NjIsUXQucHJvdG90eXBlLHt1aToxfSk7dmFyIGN1PWZ1bmN0aW9uKCl7Xy51LmNhbGwodGhpcyk7dGhpcy5nPVtdfTtfLkIoY3UsXy51KTtjdS5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe3FzKHRoaXMuaCwwLHRoaXMpfTtjdS5wcm90b3R5cGUuaD1mdW5jdGlvbigpe2Zvcih2YXIgYT0wO2E8dGhpcy5nLmxlbmd0aDsrK2EpXy5BZCh0aGlzLmdbYV0pO3RoaXMuZz1bXX07Y3UucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLnJlc3RvcmUoKX07dmFyIGR1PWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBTZXQ7YS5mb3JFYWNoKGZ1bmN0aW9uKGMpe3lvKGMpP2IuYWRkKGMpOihjPWMucGFyZW50RWxlbWVudHx8bnVsbCxjIT1udWxsJiZiLmFkZChjKSl9KTtyZXR1cm4gYn07dmFyIGV1PWZ1bmN0aW9uKGEpe3RoaXMuaD0hMDt0aGlzLmw9YTt0aGlzLmo9ITE7dGhpcy5nPVtdfTtldS5wcm90b3R5cGUubWE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLmpvaW4oIiIpfTt2YXIgZnU9ZnVuY3Rpb24oYSxiKXt0aGlzLm89YTt0aGlzLmw9ITA7dGhpcy5qPWI7dGhpcy5nPW51bGw7dGhpcy5oPTB9LGd1PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEubD8oYigoMCxfLnkpKGEuQSxhKSxhLm8sYS5qPyJlbiI6IiIpLCEwKTohMX07ZnUucHJvdG90eXBlLkE9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZz1iO3RoaXMuaD1jO2EoKX07dmFyIGh1PWZ1bmN0aW9uKGEsYil7dGhpcy5sPWE7dGhpcy5EPSEhYjt0aGlzLmc9dGhpcy5DPTA7dGhpcy5vPXRoaXMuaj0tMTt0aGlzLkE9dGhpcy5CPXRoaXMuaD0wfSxrdT1mdW5jdGlvbihhLGIsYyl7YS5EJiYoYi09OSk7Zm9yKHZhciBkPSIiLGU9MCxmPWEuQztmPGEubC5sZW5ndGg7KytmKXt2YXIgZz1hLmwuY2hhckF0KGYpLGg9Zy5jaGFyQ29kZUF0KDApO2UrKzthLmgrPWEuRD9oPD0xMjc/aDw9MzJ8fGl1W2hdPzM6MTpoPD0yMDQ3fHxoPj01NTI5NiYmaDw9NTYzMTl8fGg+PTU2MzIwJiZoPD01NzM0Mz82Ojk6MTtoPWEuaD49YjtqdVtnXT8oYS5vPWYsYS5CPWEuaCxoPWh8fGU+Yyk6Zz09IiAiJiYoYS5qPWYsYS5BPWEuaCxoPWh8fGU+Yyk7aWYoaClyZXR1cm4gYS5vPj0wPyhkPWEubC5zdWJzdHJpbmcoYS5nLGEubysxKSxhLmgtPWEuQixhLmc9YS5vKzEsYS5vPj1hLmo/KGEuaj0tMSxhLkE9MCk6YS5BLT1hLkIsYS5vPS0xLGEuQj0wKTphLmo+PTA/KGQ9YS5sLnN1YnN0cmluZyhhLmcsCmEuaisxKSxhLmgtPWEuQSxhLmc9YS5qKzEsYS5qPS0xLGEuQT0wKTooZD1hLmwuc3Vic3RyaW5nKGEuZyxmKzEpLGEuaD0wLGEuZz1mKzEsYS5vPWEuaj0tMSxhLkE9YS5CPTApLGEuQz1mKzEsZH1hLmc8YS5sLmxlbmd0aCYmKGQ9YS5sLnN1YnN0cmluZyhhLmcpLGEuZz1hLmwubGVuZ3RoKTtyZXR1cm4gZH0sanU9aXIoWyIuIiwiLCIsIjoiLCJcXD8iLCIhIl0pLGx1PVsiLiIsIj8iLCIhIl0saXU9aXIoWzM0LDM1LDM2LDM3LDM4LDQzLDQ0LDQ3LDU4LDU5LDYwLDYxLDYyLDYzLDY0LDkxLDkyLDkzLDk0LDk2LDEyMywxMjQsMTI1LDEyN10pO3ZhciB0bT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIodG0sXy5KKTt2YXIgbXU9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKG11LF8uSik7dmFyIG51PWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihudSxfLkopO3ZhciBvdT1bMSwyXTt2YXIgcHU9ZnVuY3Rpb24oYSl7dGhpcy5KPV8uSShhKX07Xy5CKHB1LF8uSik7cHUucHJvdG90eXBlLlJhPWZ1bmN0aW9uKCl7cmV0dXJuIF8uZGoodGhpcywxKX07dmFyIHF1PV8uS2kocHUpO3ZhciBydTt2YXIgc3U9ZnVuY3Rpb24oKXt0aGlzLmhhPW5ldyBfLldmfSx0dT1mdW5jdGlvbihhLGIpe3ZhciBjLGQ7cmV0dXJuIF8uVmkoZnVuY3Rpb24oZSl7Yz1jbShhbSgkbChuZXcgWmwsImh0dHBzIiksYi5ob3N0KSxiLnBhdGgpO2Q9bmV3IFByb21pc2UoZnVuY3Rpb24oZixnKXtfLk5kKGEuaGEsInN1Y2Nlc3MiLGZ1bmN0aW9uKCl7Zih7Y29kZTpfLmhnKGEuaGEpLGhlYWRlcnM6TG4oYS5oYSksYm9keTpfLmlnKGEuaGEpfSl9KTtfLk5kKGEuaGEsImVycm9yIixmdW5jdGlvbigpe2coe2NvZGU6Xy5oZyhhLmhhKSxoZWFkZXJzOkxuKGEuaGEpLGJvZHk6Xy5pZyhhLmhhKX0pfSk7Xy5OZChhLmhhLCJ0aW1lb3V0IixmdW5jdGlvbigpe2coe2NvZGU6Xy5oZyhhLmhhKSxoZWFkZXJzOkxuKGEuaGEpLGJvZHk6Xy5pZyhhLmhhKX0pfSl9KTthLmhhLnNlbmQoYyxiLm1ldGhvZCxiLmJvZHksYi5oZWFkZXJzKTtyZXR1cm4gZS5yZXR1cm4oZCl9KX07dmFyIHJuPWZ1bmN0aW9uKGEpe3RoaXMuSj1fLkkoYSl9O18uQihybixfLkopO3ZhciBxbj1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIocW4sXy5KKTt2YXIgcG49ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5mayhhLDEsYil9O3ZhciB3dT1mdW5jdGlvbihhKXt2YXIgYixjLGQsZSxmO3JldHVybiBfLlZpKGZ1bmN0aW9uKGcpe2lmKGcuZz09MSl7Yj1ydXx8KHJ1PXF1KCdbMixudWxsLFtbW1siYXV0b3B1c2giLFsiYXV0b3B1c2gtdHJhbnNsYXRlLXBhLnNhbmRib3guZ29vZ2xlYXBpcy5jb20iXV0sWyJzdGFnaW5nIixbImRhaWx5MS10cmFuc2xhdGUtcGEuc2FuZGJveC5nb29nbGVhcGlzLmNvbSJdXSxbInByb2QiLFsidHJhbnNsYXRlLXBhLmdvb2dsZWFwaXMuY29tIl1dLFsicHJvZC1ldSIsWyJ0cmFuc2xhdGUtcGEuZXUucmVwLmdvb2dsZWFwaXMuY29tIl1dLFsicHJvZC11cyIsWyJ0cmFuc2xhdGUtcGEudXMucmVwLmdvb2dsZWFwaXMuY29tIl1dXV1dXScpKTtjPW1xO25xJiYoYz1jKyItIitucSk7dmFyIGg9YnAoYixudSwzKTt2YXIgaz1oLko7az1JbChIbChrKSxrLHZvaWQgMCxvdSk7aD1icChoLG11LGs9PT0xPzE6LTEpO2s9aC5KO3ZhciBsPWtbXy5IXXwwO2g9dW0oaCxrLGwsXy5XZyhoLGwpKS5nZXQoYyk7CmQ9Xy5OKGgsMSk7aD1uZXcgJHA7az1zbShhLDEsXy5haigpKTtoPUdsKGgsMSxrLG5tKS5OYShhLkphKCkpLm5hKGEub2EoKSk7az1uZXcgYXE7aD1fLkwoaywxLGgpO2g9c24oaCwyLHRxKTtfLk0ocHEsNykmJl8uZWooaCw0LCEwKTtlPWg7Zy5GKDIpO3JldHVybiBnLmgodnUoZCxlKSw0KX1pZihnLmchPTIpcmV0dXJuIGY9Zy5qLGcucmV0dXJuKHRuKGYpKTtnLkQoKTtyZXR1cm4gZy5yZXR1cm4oUHJvbWlzZS5yZWplY3QoRXJyb3IoIkFhIikpKX0pfSx2dT1mdW5jdGlvbihhLGIpe3ZhciBjPXh1LGQsZSxmLGc7cmV0dXJuIF8uVmkoZnVuY3Rpb24oaCl7aWYoaC5nPT0xKXJldHVybiBkPXtob3N0OmEscGF0aDoiL3YxL3RyYW5zbGF0ZUh0bWwiLG1ldGhvZDoiUE9TVCIsaGVhZGVyczp7IlgtZ29vZy1hcGkta2V5IjoiQUl6YVN5QVRCWGFqdnpRTFRESEVRYmNwcTBJaGUwdldESG1PNTIwIiwiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbitwcm90b2J1ZiJ9LGJvZHk6Xy5XaihiKX0sCmU9Yy5nKCksaC5GKDIpLGguaCh0dShlLGQpLDQpO2lmKGguZyE9MilyZXR1cm4gZj1oLmosaC5yZXR1cm4oY3EoZi5ib2R5KSk7Zz1oLkQoKTtyZXR1cm4gaC5yZXR1cm4oUHJvbWlzZS5yZWplY3QoZykpfSl9O3ZhciB4dT1uZXcgZnVuY3Rpb24oKXt0aGlzLmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHN1fX0seXU9ZnVuY3Rpb24oYSl7dGhpcy5nPWF9LHp1PWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlO3JldHVybiBfLlZpKGZ1bmN0aW9uKGYpe2lmKGYuZz09MSlyZXR1cm4gc20oYiwxLF8uYWooKSkubGVuZ3RoPT09MD9mLnJldHVybihuZXcgcW4pOl8uTShwcSw4KT9mLnJldHVybih3dShiKSk6Zi5oKGEuZy50cmFuc2xhdGUoY3x8ZnVuY3Rpb24oKXt9LHNtKGIsMSxfLmFqKF8uV2gpKSxiLkphKCksYi5vYSgpLDAsITEpLDIpO2Q9Zi5qO2U9ZC5tYXAodW4pO3JldHVybiBmLnJldHVybihwbihuZXcgcW4sZSkpfSl9O3ZhciBBdT1mdW5jdGlvbihhKXt0aGlzLko9Xy5JKGEpfTtfLkIoQXUsXy5KKTt2YXIgQnU9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IEF1O3JldHVybiBHbChiLDEsYSxubSl9O0F1LnByb3RvdHlwZS5KYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywyKX07QXUucHJvdG90eXBlLk5hPWZ1bmN0aW9uKGEpe3JldHVybiBzbih0aGlzLDIsYSl9O0F1LnByb3RvdHlwZS5vYT1mdW5jdGlvbigpe3JldHVybiBfLk4odGhpcywzKX07QXUucHJvdG90eXBlLm5hPWZ1bmN0aW9uKGEpe3JldHVybiBzbih0aGlzLDMsYSl9O3ZhciBDdT1mdW5jdGlvbihhLGIsYyxkLGUsZil7dGhpcy5CPWR8fGZ1bmN0aW9uKCl7fTt0aGlzLlA9Znx8ZnVuY3Rpb24oKXt9O3RoaXMuUj0hIWU7dGhpcy5qPWEuZy5JZjt0aGlzLmw9MDt0aGlzLkk9ZnVuY3Rpb24oKXt9O3RoaXMuRD1jO3RoaXMuRj10aGlzLmg9dGhpcy5vPTA7dGhpcy5nPW51bGw7dGhpcy5XPTA7dGhpcy5sYT0hMTt0aGlzLlQ9YS5nLkdmO3RoaXMuSz1bXTt0aGlzLnFiPTA7dGhpcy5MPWEuZy5LZDt0aGlzLkE9YS5sKCk7dGhpcy53YT10aGlzLlI/MTo2O3RoaXMuSWE9YS5nLldmO3RoaXMucWE9Yjt0aGlzLkM9W107dGhpcy5PPWF9O0N1LnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe2Zvcih2YXIgYT0wO2E8dGhpcy5DLmxlbmd0aDsrK2EpdGhpcy5DW2FdLnN0b3AoKTtmb3IoYT0wO2E8dGhpcy5LLmxlbmd0aDsrK2EpVHIodGhpcy5PLHRoaXMuS1thXSl9Owp2YXIgRHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz0wO2EuST0oMCxfLnkpKGZ1bmN0aW9uKCl7KytjPT10aGlzLkMubGVuZ3RoJiZiKCl9LGEpfSxFdT1mdW5jdGlvbihhLGIsYyl7YS5CPWZ1bmN0aW9uKCl7fTthLnFhPWI7YS5nPW51bGw7YS5xYj0wO2EuQz1bXTthLkk9ZnVuY3Rpb24oKXt9O2EuRD1jfSxGdT1mdW5jdGlvbihhLGIsYyl7aWYoYS5oPT0wJiYoYS5oPWI/M0UzOmEuQSwhY3x8Yzw9YS5BKSl7YS5vPWEuaDtyZXR1cm59ZG8gYj1hLmgsYS5oPGEuQSYmKGEuaCo9YS53YSxhLmg+YS5BJiYoYS5oPWEuQSkpO3doaWxlKGIhPWEuaCYmYyYmYS5oPGMpO2Eubz1hLmh9LEd1PWZ1bmN0aW9uKGEsYil7dmFyIGM9YiE9bnVsbCxkPSFjJiYhYS5sYTsoZHx8YykmJmEuQigxMDAsZCxiKX0sSHU9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuTD9hLmcuUjphLmcubWEoKS5sZW5ndGh9LEl1PWZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIG5ldyBRdChhLnFhLnNoaWZ0KCkse2JqOmEuTCxsaTpiLApWZjohMCxaaTohIWN9LGZ1bmN0aW9uKCl7dmFyIGY9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzKTtyZXR1cm4gbmV3IGp0KGYuc2hpZnQoKSxmLnNoaWZ0KCksZi5zaGlmdCgpLGYuc2hpZnQoKSxmLnNoaWZ0KCksYyxkKX0sYS5ELGUpfSxLdT1mdW5jdGlvbihhLGIsYyl7aWYoYS5UPjAmJmIubGIoKT49YS5UKXJldHVybiEwO2lmKEh1KGEpPmEuaCl7aWYoYi5sYigpPjApcmV0dXJuITA7RnUoYSxjLEh1KGEpKTtmb3IodmFyIGQ9YS5nLm1hKCksZT1uZXcgaHUoZCxhLkwpLGY7Zj1rdShlLGEuaCxhLmopOylpZihsdS5pbmRleE9mKGYuY2hhckF0KGYubGVuZ3RoLTEpKTwwJiZiLksrKyxiLmwucHVzaChuZXcgZnUoW2ZdLCExKSksYS5sKz1mLmxlbmd0aCxhLmotPWYubGVuZ3RoLGEuajw9MCl7Yi5GPWQuc3Vic3RyaW5nKGUuZyk7YnJlYWt9ZWxzZSBGdShhLGMpO0p1KGIsYS5nLCEwKTthLmc9bnVsbDtyZXR1cm4hMH1pZihIdShhKT5hLm8pcmV0dXJuITA7SnUoYiwKYS5nLCEwKTthLm8tPUh1KGEpK2EuSWE7YS5sKz1hLmcuRDthLmotPWEuZy5EO2EuZz1udWxsO3JldHVybiExfSxMdT1mdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz17WmE6MH07Yy5aYTxhLmxlbmd0aDtjPXtaYTpjLlphfSxjLlphKyspYVtjLlphXS5sZW5ndGg+MSYmYVtjLlphXVsxXT09PTIwMD9iLnB1c2guYXBwbHkoYixfLiRiKGFbYy5aYV1bMF0udG9TdHJpbmcoKS5zcGxpdCgiJmx0O2V4dHJhX2lkXzEmZ3Q7IikubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm5bZS50cmltKCksYVtkLlphXVsxXV19fShjKSkpKTpiLnB1c2goYVtjLlphXSk7cmV0dXJuIGJ9LE11PWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGYsZyxoLGssbCxuO3JldHVybiBfLlZpKGZ1bmN0aW9uKHEpe3N3aXRjaChxLmcpe2Nhc2UgMTp2YXIgcD1wcTtpZihfLmJqKHAsaXEsNikpe3ZhciByPV8uYmoocCxpcSw2KSx0PV8uTShyLDEpO3A9Xy5NKHAsMyl8fHQ/KHQ/c20ociw0LF8uYWooKSk6CnNtKHAsNCxfLmFqKCkpKS5pbmNsdWRlcyhkLnRvTG93ZXJDYXNlKCkrIl8iK2UudG9Mb3dlckNhc2UoKSk6ITF9ZWxzZSBwPSExO2Y9cDtpZihmKXt2YXIgQT1BPT09dm9pZCAwPzNFMzpBO2lmKHA9Xy5iaihwcSxpcSw2KSlwPV8uYmoocHEsaXEsNikscD1fLk0ocCwxKTtpZihwKXtwPV8uYmoocHEsaXEsNik7QT1fLmdrKHAsMyk7cD1fLmdrKHAsMik7cj1bXTtmb3IodD0wO3Q8Yy5sZW5ndGg7dCsrKXt2YXIgRD1bY1t0XV0sRT1jW3RdLmxlbmd0aDtpZihjW3RdLnNwbGl0KCIgIikubGVuZ3RoPD1wKWZvcig7dCsxPGMubGVuZ3RoJiZFPEE7KUQucHVzaChjW3QrMV0pLEUrPWNbdCsxXS5sZW5ndGgrMisxOCx0Kys7ci5wdXNoKEQuam9pbigiICZsdDtleHRyYV9pZF8xJmd0OyAiKSl9QT1yfWVsc2V7cD1bXTtmb3Iocj0wO3I8Yy5sZW5ndGg7KXt0PVtdO2ZvcihFPTA7cjxjLmxlbmd0aDspe0Q9Y1tyXTt2YXIgYmE9RC5sZW5ndGg7RT10Lmxlbmd0aD09PTA/YmE6RSsyMCtiYTtpZihFPgpBJiZ0Lmxlbmd0aD4wKWJyZWFrO3QucHVzaChEKTtyKyt9dC5sZW5ndGg+MCYmcC5wdXNoKHQuam9pbigiICZsdDtleHRyYV9pZF8xJmd0OyAiKSl9QT1wfX1lbHNlIEE9YztnPUE7aD16dShuZXcgeXUoYS5PKSxCdShnKS5OYShkKS5uYShlKSxiKTtxLkYoMik7cmV0dXJuIHEuaChoLDQpO2Nhc2UgNDprPXEuajtsPXZuKGspO249Zj9MdShsKTpsO2IobiwyMDApO3EuSygzKTticmVhaztjYXNlIDI6cS5EKCksYihbXSw1MDApO2Nhc2UgMzpyZXR1cm4gYS5LLnB1c2goaCkscS5yZXR1cm4oaCl9fSl9O3ZhciBOdT1mdW5jdGlvbihhLGIpe18udS5jYWxsKHRoaXMpO3RoaXMubD1iO3RoaXMuaj17cm9vdE1hcmdpbjphfTt0aGlzLmc9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKCgwLF8ueSkodGhpcy5oLHRoaXMpLHRoaXMuail9O18uQihOdSxfLnUpO051LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5nPW51bGx9O051LnByb3RvdHlwZS5oPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7YisrKWlmKGFbYl0uaW50ZXJzZWN0aW9uUmF0aW8+MCl7dGhpcy5sKCk7YnJlYWt9fTtOdS5wcm90b3R5cGUudHJhY2s9ZnVuY3Rpb24oYSl7Sm8oYSwoMCxfLnkpKHRoaXMuZy5vYnNlcnZlLHRoaXMuZykpfTt2YXIgT3U9ZnVuY3Rpb24oYSl7dmFyIGI9YSE9bnVsbD9hOnt9LGM9Yi5JayxkPWIuS2ssZT1iLkVrLGY9Yi5MayxnPWIuSGssaD1iLkprLGs9Yi5GayxsPWIuR2s7YT1fLnlsKCk7IWwmJnNwKGMpPyhlPSEhZSxmPSEhZixiPWImJmIuUWssYz0oMCxfLnRsKShzcChjKT8iPHNjcmlwdCIrKGI/JyBub25jZT0iJytQKFlwKGIpKSsnIic6IiIpKyI+d2luZG93WydwcENvbmZpZyddID0ge3Byb2R1Y3ROYW1lOiAiK3ZwKFFwKGQhPW51bGw/ZDoidW5rbm93biIpKSsiLCBkZWxldGVJc0VuZm9yY2VkOiAiK3ZwKFFwKGUpKSsiLCBzZWFsSXNFbmZvcmNlZDogIit2cChRcChmKSkrIiwgaGVhcnRiZWF0UmF0ZTogIit2cChRcChnIT1udWxsP2c6LjUpKSsiLCBwZXJpb2RpY1JlcG9ydGluZ1JhdGVNaWxsaXM6ICIrdnAoUXAoaCE9bnVsbD9oOjZFNCkpKyIsIGRpc2FibGVBbGxSZXBvcnRpbmc6ICIrdnAoUXAoayE9bnVsbD9rOiExKSkrIn07Iit2cChRcChjIT1udWxsP2M6IiIpKSsiXHgzYy9zY3JpcHQ+IjoKIiIpKTpjPSIiO3JldHVybiBXbihhLGMpfTt2YXIgUHU9ZnVuY3Rpb24oYSl7cmV0dXJuKDAsXy50bCkoJzxzcGFuIGlkPSInK1AoYS5pZCkrJyI+PC9zcGFuPicpfSxRdT1mdW5jdGlvbihhKXt2YXIgYj1hLmlkLGM9YS5SZjtyZXR1cm4oMCxfLnRsKShLcChhLlNmKSsnPGRpdiBpZD0iJytQKGIpKyciPjwvZGl2PicrS3AoYykpfSxZbj1mdW5jdGlvbihhKXt2YXIgYj1hLnRvcCxjPWEubGVmdCxkPWEuYm90dG9tLGU9YS5yaWdodCxmPWEuaWQ7cmV0dXJuKDAsXy51bCkoIi4iK0FwKGEuY2xhc3NOYW1lKSsiIHt6LWluZGV4Ojk5OTk5OTk7IG92ZXJmbG93OnZpc2libGU7IHBvc2l0aW9uOmZpeGVkOyBfcG9zaXRpb246YWJzb2x1dGU7IisoYnx8Yj09PTA/InRvcDoiK0FwKGIpKyJweDsgX3RvcDpleHByZXNzaW9uKCgiK0FwKGIpKyIrKGhhY2sxPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B8fGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wKSkrJ3B4Jyk7IjoidG9wOmF1dG87IikrKGN8fGM9PT0wPyJsZWZ0OiIrQXAoYykrCiJweDsgX2xlZnQ6ZXhwcmVzc2lvbigoIitBcChjKSsiKyhoYWNrMj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdHx8ZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0KSkrJ3B4Jyk7IjoibGVmdDphdXRvOyIpKyhkfHxkPT09MD8iYm90dG9tOiIrQXAoZCkrInB4OyBfdG9wOmV4cHJlc3Npb24oKC0iK0FwKGQpKyItZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJyIrU3RyaW5nKGYpLnJlcGxhY2UoUnAsR3ApKyInKS5vZmZzZXRIZWlnaHQrKGhhY2szPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHR8fGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0KSsoaGFjazQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcHx8ZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ApKSsncHgnKTsiOiJib3R0b206YXV0bzsiKSsoZXx8ZT09PTA/InJpZ2h0OiIrQXAoZSkrInB4OyBfbGVmdDpleHByZXNzaW9uKCgtIitBcChlKSsiLWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCciKwpTdHJpbmcoZikucmVwbGFjZShScCxHcCkrIicpLm9mZnNldFdpZHRoKyhoYWNrNT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGh8fGRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGgpKyhoYWNrNj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdHx8ZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0KSkrJ3B4Jyk7IjoicmlnaHQ6YXV0bzsiKSsifSIpfSxSdT1mdW5jdGlvbigpe3JldHVybigwLF8udGwpKCc8ZGl2IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15ZiIpKyciPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtT2lpQ08iKSsnIj48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1hWjJ3RWUiKSsnIiB3aWR0aD0iOTZweCIgaGVpZ2h0PSI5NnB4IiB2aWV3Qm94PSIwIDAgNjYgNjYiPjxjaXJjbGUgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtSnQ1Y0siKSsKJyIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSI2IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGN4PSIzMyIgY3k9IjMzIiByPSIzMCIvPjwvc3ZnPjwvZGl2PjwvZGl2PicpfTt3bi54Yj12b2lkIDA7d24uZz1mdW5jdGlvbigpe3JldHVybiB3bi54Yj93bi54Yjp3bi54Yj1uZXcgd259O3duLnByb3RvdHlwZS5nPTA7Xy5HKHhuLF8uaGIpO18ubT14bi5wcm90b3R5cGU7Xy5tLmNpPXduLmcoKTtfLm0uUmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYXx8KHRoaXMubGE9IjoiKyh0aGlzLmNpLmcrKykudG9TdHJpbmcoMzYpKX07Xy5tLkg9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5DfTtfLm0ubmQ9ZnVuY3Rpb24oYSl7aWYodGhpcy5LJiZ0aGlzLkshPWEpdGhyb3cgRXJyb3IoIkNhIik7eG4uZWEubmQuY2FsbCh0aGlzLGEpfTtfLm0uUz1mdW5jdGlvbigpe3RoaXMuQz10aGlzLmguY3JlYXRlRWxlbWVudCgiRElWIil9O18ubS5rYT1mdW5jdGlvbihhKXtTdSh0aGlzLGEpfTtfLm0ucWM9ZnVuY3Rpb24oYSl7U3UodGhpcyxhLnBhcmVudE5vZGUsYSl9O3ZhciBTdT1mdW5jdGlvbihhLGIsYyl7aWYoYS5qYil0aHJvdyBFcnJvcigiRGEiKTthLkN8fGEuUygpO2I/Yi5pbnNlcnRCZWZvcmUoYS5DLGN8fG51bGwpOmEuaC5nLmJvZHkuYXBwZW5kQ2hpbGQoYS5DKTthLksmJiFhLksuamJ8fGEuTGEoKX07Cl8ubT14bi5wcm90b3R5cGU7Xy5tLmFoPWZ1bmN0aW9uKGEpe2lmKHRoaXMuamIpdGhyb3cgRXJyb3IoIkRhIik7aWYoYSl7dGhpcy53YT0hMDt2YXIgYj1fLnNkKGEpO3RoaXMuaCYmdGhpcy5oLmc9PWJ8fCh0aGlzLmg9Xy5sYihhKSk7dGhpcy5PYShhKTt0aGlzLkxhKCl9ZWxzZSB0aHJvdyBFcnJvcigiRWEiKTt9O18ubS5PYT1mdW5jdGlvbihhKXt0aGlzLkM9YX07Xy5tLkxhPWZ1bmN0aW9uKCl7dGhpcy5qYj0hMDtUdSh0aGlzLGZ1bmN0aW9uKGEpeyFhLmpiJiZhLkgoKSYmYS5MYSgpfSl9O18ubS5zYT1mdW5jdGlvbigpe1R1KHRoaXMsZnVuY3Rpb24oYSl7YS5qYiYmYS5zYSgpfSk7dGhpcy5PJiZfLlJmKHRoaXMuTyk7dGhpcy5qYj0hMX07Cl8ubS5NPWZ1bmN0aW9uKCl7dGhpcy5qYiYmdGhpcy5zYSgpO3RoaXMuTyYmKHRoaXMuTy5kaXNwb3NlKCksZGVsZXRlIHRoaXMuTyk7VHUodGhpcyxmdW5jdGlvbihhKXthLmRpc3Bvc2UoKX0pOyF0aGlzLndhJiZ0aGlzLkMmJl8uQWQodGhpcy5DKTt0aGlzLks9dGhpcy5DPXRoaXMuUj10aGlzLkY9bnVsbDt4bi5lYS5NLmNhbGwodGhpcyl9O3ZhciBTPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuUmEoKSsiLiIrYn0sVHU9ZnVuY3Rpb24oYSxiKXthLkYmJmEuRi5mb3JFYWNoKGIsdm9pZCAwKX07CnhuLnByb3RvdHlwZS5pZT1mdW5jdGlvbihhKXtmb3IodmFyIGI9W107dGhpcy5GJiZ0aGlzLkYubGVuZ3RoIT0wOyl7dmFyIGM9YixkPWMucHVzaCxlPXRoaXMuRj90aGlzLkZbMF18fG51bGw6bnVsbCxmPWE7aWYoZSl7dmFyIGc9dHlwZW9mIGU9PT0ic3RyaW5nIj9lOmUuUmEoKTt0aGlzLlImJmc/KGU9dGhpcy5SLGU9KGUhPT1udWxsJiZnIGluIGU/ZVtnXTp2b2lkIDApfHxudWxsKTplPW51bGw7aWYoZyYmZSl7dmFyIGg9dGhpcy5SO2cgaW4gaCYmZGVsZXRlIGhbZ107Xy52YSh0aGlzLkYsZSk7ZiYmKGUuc2EoKSxlLkMmJl8uQWQoZS5DKSk7Zj1lO2lmKGY9PW51bGwpdGhyb3cgRXJyb3IoIkJhIik7Zi5LPW51bGw7eG4uZWEubmQuY2FsbChmLG51bGwpfX1pZighZSl0aHJvdyBFcnJvcigiRmEiKTtkLmNhbGwoYyxlKX1yZXR1cm4gYn07dmFyIFV1PWZ1bmN0aW9uKCl7eG4uY2FsbCh0aGlzKX07Xy5CKFV1LHhuKTtVdS5wcm90b3R5cGUuUz1mdW5jdGlvbigpe3RoaXMuT2Eoa20oUnUpKX07VXUucHJvdG90eXBlLk9hPWZ1bmN0aW9uKGEpe3RoaXMuQz1hfTtVdS5wcm90b3R5cGUuc2hvdz1mdW5jdGlvbigpe050KHRoaXMuSCgpLCJWSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdjIik7TnQodGhpcy5IKCkuZmlyc3RDaGlsZCwiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtT2lpQ08tdGk2aEdjIil9O3ZhciBWdT1mdW5jdGlvbihhKXtPdChhLkgoKSwiVklwZ0pkLVpWaTlvZC1hWjJ3RWUtd09ITXlmLXRpNmhHYyIpO090KGEuSCgpLmZpcnN0Q2hpbGQsIlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHYyIpfTt2YXIgV3U9ZnVuY3Rpb24oKXt0aGlzLmc9bmV3IFV1O3RoaXMuZy5TKCk7dGhpcy5nLmthKCk7dGhpcy5oPTB9O1d1LnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuaD0wO1Z1KHRoaXMuZyl9O3ZhciBYdT1XcShjciksWXU9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoKXt0aGlzLmw9YTt0aGlzLmc9Yjt0aGlzLkM9W107dGhpcy5GPW51bGw7dGhpcy5vPWM7dGhpcy5oPWQ7dGhpcy5qPWU7dGhpcy5xYT1mO3RoaXMuTz1nO3RoaXMuRD10aGlzLkE9bnVsbDt0aGlzLkI9aHx8bnVsbDt0aGlzLlc9dGhpcy5JPSExO3RoaXMuRz17fTt0aGlzLkw9WHU7dGhpcy5LPTB9LFp1PWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1uZXcgU2V0LGM9MDtjPGEubGVuZ3RoO2MrKylzdChhW2NdKS5mb3JFYWNoKGZ1bmN0aW9uKGQpe3JldHVybiBiLmFkZChkKX0pO3JldHVybiBifTsKWXUucHJvdG90eXBlLnRyYWNrVmlzaWJpbGl0eT1mdW5jdGlvbihhKXt0aGlzLkE9bmV3IE51KCIyMDBweCIsKDAsXy55KSh0aGlzLlIsdGhpcyxhKSk7dGhpcy5BLnRyYWNrKGR1KFp1KFtdLmNvbmNhdCh0aGlzLmcsdGhpcy5DKSkpKTt0aGlzLkQ9bmV3IE51KCIwcHgiLCgwLF8ueSkodGhpcy5QLHRoaXMpKTt0aGlzLkQudHJhY2soZHUoWnUoW10uY29uY2F0KHRoaXMuZyx0aGlzLkMpKSkpfTtZdS5wcm90b3R5cGUuUj1mdW5jdGlvbihhKXt0aGlzLkEmJih0aGlzLkEuZy5kaXNjb25uZWN0KCksdGhpcy5BPW51bGwpO2EoKX07WXUucHJvdG90eXBlLlA9ZnVuY3Rpb24oKXt0aGlzLkk9ITA7JHUodGhpcyk7aWYoIXRoaXMuVyYmdGhpcy5CKXt2YXIgYT10aGlzLkI7YS5oKys9PTAmJmEuZy5zaG93KCl9fTt2YXIgJHU9ZnVuY3Rpb24oYSl7YS5EJiYoYS5ELmcuZGlzY29ubmVjdCgpLGEuRD1udWxsKX07Cll1LnByb3RvdHlwZS5kb25lPWZ1bmN0aW9uKCl7aWYodGhpcy5JJiYhdGhpcy5XJiZ0aGlzLkIpe3ZhciBhPXRoaXMuQjstLWEuaD09MCYmVnUoYS5nKX10aGlzLkEmJih0aGlzLkEuZy5kaXNjb25uZWN0KCksdGhpcy5BPW51bGwpOyR1KHRoaXMpO2F2KHRoaXMpfTt2YXIgSnU9ZnVuY3Rpb24oYSxiLGMpe2M/KGEuZy5wdXNoKGIpLGEuR1tiLm1hKCldPSEwKTphLkMucHVzaChiKX07WXUucHJvdG90eXBlLmxiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy5sZW5ndGgrdGhpcy5DLmxlbmd0aH07dmFyIGJ2PWZ1bmN0aW9uKGEpe2lmKGEubC5sZW5ndGg9PTApe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmcubGVuZ3RoOysrYyliLnB1c2goYS5nW2NdLm1hKCkpO2EubC5wdXNoKG5ldyBmdShiLCExKSl9fTsKWXUucHJvdG90eXBlLnRyYW5zbGF0ZT1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7ZCsrO2Q9PWMmJmUoKX1idih0aGlzKTtmb3IodmFyIGM9MCxkPTAsZT1mdW5jdGlvbigpe30sZj10aGlzLm8sZz10aGlzLmgsaD10aGlzLmosaz0wO2s8dGhpcy5sLmxlbmd0aDsrK2spZ3UodGhpcy5sW2tdLGZ1bmN0aW9uKGwsbixxKXtyZXR1cm4gTXUoZixfLlpqKGwsYiksbixxfHxnLGgpfSkmJmMrKztjIT0wJiYoZT1HdChhKSk7cmV0dXJuIGN9O3ZhciBhdj1mdW5jdGlvbihhKXtpZihhLmcubGVuZ3RoPjApe2lmKGEuZy5sZW5ndGg9PTEmJmEubC5sZW5ndGg+MSl7dmFyIGI9MTt2YXIgYz1hLmwubGVuZ3RofWVsc2UgYj1jPWEuZy5sZW5ndGg7dmFyIGQ9YS5nLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZS5EfSkucmVkdWNlKGZ1bmN0aW9uKGUsZil7cmV0dXJuIGUrZn0pO2hyKGEuTCx7bGI6YixNZjpjLGdnOmQsTGY6YS5LfSl9fTt2YXIgY3Y9e2FtOiJOb3RvIFNhbnMgRXRoaW9waWMiLGJlcjoiTm90byBTYW5zIFRpZmluYWdoIiwiYm0tTmtvbyI6Ik5vdG8gU2FucyBOS28iLGJuOiJMb2hpdCBCZW5nYWxpIixibzoiTm90byBTZXJpZiBUaWJldGFuIixkdjoiTm90byBTYW5zIFRoYWFuYSIsZHo6Ik5vdG8gU2VyaWYgVGliZXRhbiIsaXU6Ik5vdG8gU2FucyBDYW5hZGlhbiBBYm9yaWdpbmFsIixrbToiTm9rb3JhIixsbzoiRGh5YW5hIixtbDoiTm90byBTYW5zIE1hbGF5YWxhbSIsIm1uaS1NdGVpIjoiTm90byBTYW5zIE1lZXRlaSBNYXllayIsbXk6Ik5vdG8gU2FucyBNeWFubWFyIiwicGEtQXJhYiI6Ik5vdG8gTmFzdGFsaXEgVXJkdSIscHM6Ik5vdG8gTmFza2ggQXJhYmljIixzYXQ6Ik5vdG8gU2FucyBPbCBDaGlraSIsc2Q6Ik5vdG8gTmFza2ggQXJhYmljIixzaToiTm90byBTYW5zIFNpbmhhbGEiLHRhOiJMb2hpdCBUYW1pbCIseXVlOiJDaG9jb2xhdGUgQ2xhc3NpY2FsIFNhbnMifSxkdj17fSxldj0oZHZbIkNob2NvbGF0ZSBDbGFzc2ljYWwgU2FucyJdPQoiL2NzczI/ZmFtaWx5PUNob2NvbGF0ZStDbGFzc2ljYWwrU2FucyIsZHYuRGh5YW5hPSIvY3NzP2ZhbWlseT1EaHlhbmEiLGR2WyJMb2hpdCBCZW5nYWxpIl09Ii9jc3M/ZmFtaWx5PUxvaGl0K0JlbmdhbGkiLGR2WyJMb2hpdCBUYW1pbCJdPSIvY3NzP2ZhbWlseT1Mb2hpdCtUYW1pbCIsZHYuTm9rb3JhPSIvY3NzP2ZhbWlseT1Ob2tvcmEiLGR2WyJOb3RvIE5hc2toIEFyYWJpYyJdPSIvZWFybHlhY2Nlc3Mvbm90b25hc2toYXJhYmljLmNzcyIsZHZbIk5vdG8gTmFzdGFsaXEgVXJkdSJdPSIvZWFybHlhY2Nlc3Mvbm90b25hc3RhbGlxdXJkdS5jc3MiLGR2WyJOb3RvIFNhbnMgQ2FuYWRpYW4gQWJvcmlnaW5hbCJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNjYW5hZGlhbmFib3JpZ2luYWwuY3NzIixkdlsiTm90byBTYW5zIEV0aGlvcGljIl09Ii9lYXJseWFjY2Vzcy9ub3Rvc2Fuc2V0aGlvcGljLmNzcyIsZHZbIk5vdG8gU2FucyBNYWxheWFsYW0iXT0iL2Vhcmx5YWNjZXNzL25vdG9zYW5zbWFsYXlhbGFtLmNzcyIsCmR2WyJOb3RvIFNhbnMgTWVldGVpIE1heWVrIl09Ii9jc3M/ZmFtaWx5PU5vdG8rU2FucytNZWV0ZWkrTWF5ZWsiLGR2WyJOb3RvIFNhbnMgTXlhbm1hciJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNteWFubWFyLmNzcyIsZHZbIk5vdG8gU2FucyBOS28iXT0iL2Nzcz9mYW1pbHk9Tm90bytTYW5zK05LbyIsZHZbIk5vdG8gU2FucyBPbCBDaGlraSJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnNvbGNoaWtpLmNzcyIsZHZbIk5vdG8gU2FucyBTaW5oYWxhIl09Ii9lYXJseWFjY2Vzcy9ub3Rvc2Fuc3NpbmhhbGEuY3NzIixkdlsiTm90byBTYW5zIFRoYWFuYSJdPSIvZWFybHlhY2Nlc3Mvbm90b3NhbnN0aGFhbmEuY3NzIixkdlsiTm90byBTYW5zIFRpZmluYWdoIl09Ii9lYXJseWFjY2Vzcy9ub3Rvc2Fuc3RpZmluYWdoLmNzcyIsZHZbIk5vdG8gU2VyaWYgVGliZXRhbiJdPSIvY3NzP2ZhbWlseT1Ob3RvK1NlcmlmK1RpYmV0YW4iLGR2KSxmdj1mdW5jdGlvbigpe3RoaXMuZz1bXX07CmZ2LnByb3RvdHlwZS5yZXN0b3JlPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPV8uQyh0aGlzLmcpLGI9YS5uZXh0KCk7IWIuZG9uZTtiPWEubmV4dCgpKWIudmFsdWUucmVtb3ZlKCk7dGhpcy5nPVtdfTt2YXIgZ3Y9ZnVuY3Rpb24oYSxiKXtfLnUuY2FsbCh0aGlzKTt0aGlzLmc9W107dGhpcy5sPVtdO3RoaXMuaD1hO3RoaXMuaj1ifTtfLkIoZ3YsXy51KTtndi5wcm90b3R5cGUubz1mdW5jdGlvbihhKXt2YXIgYj1fLkFjKGEuaHJlZik7Yi5pbmRleE9mKCJqYXZhc2NyaXB0OiIpPT0wfHxiLmluZGV4T2YoIiMiKT49MHx8KHRoaXMubC5wdXNoKGEuaHJlZiksdGhpcy5nLnB1c2goYSksYS5ocmVmPWIrIiNnb29ndHJhbnMvIit0aGlzLmgrIi8iK3RoaXMuail9O2d2LnByb3RvdHlwZS5NPWZ1bmN0aW9uKCl7Xy51LnByb3RvdHlwZS5NLmNhbGwodGhpcyk7dGhpcy5yZXN0b3JlKCl9O2d2LnByb3RvdHlwZS5yZXN0b3JlPWZ1bmN0aW9uKCl7aWYodGhpcy5nLmxlbmd0aCl7Zm9yKHZhciBhPTA7YTx0aGlzLmcubGVuZ3RoOysrYSl0aGlzLmdbYV0uaHJlZj10aGlzLmxbYV07dGhpcy5nPVtdO3RoaXMubD1bXX19O3ZhciBodj1mdW5jdGlvbihhLGIpe18udS5jYWxsKHRoaXMpO3RoaXMuZz1hO3RoaXMuaD1fLnhmLnRlc3QoYik/InRyYW5zbGF0ZWQtcnRsIjoidHJhbnNsYXRlZC1sdHIiO2E9W10uY29uY2F0KHRoaXMuZyk7Zm9yKGI9MDtiPGEubGVuZ3RoOysrYil5byhhW2JdKSYmTnQoYVtiXSx0aGlzLmgpfTtfLkIoaHYsXy51KTtodi5wcm90b3R5cGUuTT1mdW5jdGlvbigpe18udS5wcm90b3R5cGUuTS5jYWxsKHRoaXMpO3RoaXMucmVzdG9yZSgpfTtodi5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe2Zvcih2YXIgYT1bXS5jb25jYXQodGhpcy5nKSxiPTA7YjxhLmxlbmd0aDsrK2IpeW8oYVtiXSkmJk90KGFbYl0sdGhpcy5oKX07dmFyIGl2PWZ1bmN0aW9uKGEsYixjKXt0aGlzLmc9M0UzO3RoaXMuaD1bXTt0aGlzLmo9bnVsbDt0aGlzLm89YTt0aGlzLkViPWI7dGhpcy5GYj1jO3RoaXMubD1hJiZ0eXBlb2YgYS5sPT09ImZ1bmN0aW9uIj9hLmwoKXx8MThFMzoxOEUzfSxrdj1mdW5jdGlvbihhLGIpe3ZhciBjLGQsZSxmLGcsaCxrLGwsbixxO3JldHVybiBfLlZpKGZ1bmN0aW9uKHApe3N3aXRjaChwLmcpe2Nhc2UgMTpjPWxvKGIpO2Q9W107aWYoYy5sZW5ndGg+YS5nKWZvcihlPW5ldyBodShjLCExKSxmPSIiO2Y9a3UoZSxhLmcpOylkLnB1c2goZiksYS5nPGEubCYmKGEuZyo9NixhLmc+YS5sJiYoYS5nPWEubCkpO2Vsc2UgZC5wdXNoKGMpO2c9W107aD1fLkMoZCk7az1oLm5leHQoKTtjYXNlIDI6aWYoay5kb25lKXtwLnhhKDQpO2JyZWFrfWw9ay52YWx1ZTtuPWc7cT1uLnB1c2g7cmV0dXJuIHAuaChqdihhLGwpLDUpO2Nhc2UgNTpxLmNhbGwobixwLmopO2s9aC5uZXh0KCk7cC54YSgyKTticmVhaztjYXNlIDQ6cmV0dXJuIHAucmV0dXJuKHBvKGcuam9pbigiIikpKX19KX0sCmp2PWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGMsZCl7YS5oLnB1c2goe3RleHQ6YixyZXNvbHZlOmMscmVqZWN0OmR9KTthLmp8fChhLmo9d2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXthLmZsdXNoKCl9LDUwKSl9KX07aXYucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5qPW51bGw7aWYodGhpcy5oLmxlbmd0aCE9PTApe3ZhciBhPXRoaXMuaDt0aGlzLmg9W107dmFyIGI9bmV3IHl1KHRoaXMubyk7YT1fLkMoYSk7Zm9yKHZhciBjPWEubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyYzp2b2lkIDB9LGM9YS5uZXh0KCkpZC5yYz1jLnZhbHVlLGM9QnUoW2QucmMudGV4dF0pLk5hKHRoaXMuRWIpLm5hKHRoaXMuRmIpLHp1KGIsYyxmdW5jdGlvbigpe30pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGYpeyhmPXZuKGYpWzBdKSYmZlsxXT09PTIwMD9lLnJjLnJlc29sdmUoZlswXS50b1N0cmluZygpKTplLnJjLnJlamVjdCgiVHJhbnNsYXRpb24gZmFpbGVkIil9fShkKSkuY2F0Y2goZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGYpe2UucmMucmVqZWN0KGYpfX0oZCkpfX07dmFyIGx2PWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCxrLGwpe18udS5jYWxsKHRoaXMpO3RoaXMuQz1hO3RoaXMuRmM9Yjt0aGlzLmxmPW5ldyBmdjt0aGlzLmZiPWN8fG51bGw7dGhpcy5JYT1sfHxudWxsO3RoaXMuSz1udWxsO3RoaXMuSWQ9ISFkO3RoaXMuamk9ZXx8InRyYW5zcGFyZW50Ijt0aGlzLmlpPSEhZjt0aGlzLkY9W107dGhpcy55Zj10aGlzLkk9dGhpcy5nPSExO3RoaXMubz1ofHxuZXcgdHQ7dGhpcy5EaT0haDt0aGlzLndhPWd8fHh0LmcoKTt0aGlzLlVlPW5ldyBjdTt0aGlzLkhiPXRoaXMuZ2I9dGhpcy5SPSExO3RoaXMuZGY9dGhpcy5BPS41O3RoaXMuamY9LjAxO3RoaXMuRD1uZXcgenQodGhpcy5BKTt0aGlzLmxhPSh0aGlzLkI9dGhpcy5yYT0hIWspP25ldyBNdXRhdGlvbk9ic2VydmVyKCgwLF8ueSkodGhpcy5RaCx0aGlzKSk6bnVsbDt0aGlzLkw9dGhpcy5YZT10aGlzLmo9dGhpcy5oPW51bGw7dGhpcy5QPTA7dGhpcy5PPW5ldyBNYXA7Xy54KHdpbmRvdywiYmx1ciIsCnRoaXMudGYsITAsdGhpcyk7Xy54KHdpbmRvdywiZm9jdXMiLHRoaXMudWYsITAsdGhpcyl9O18uQihsdixfLnUpO18ubT1sdi5wcm90b3R5cGU7Xy5tLkphPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaD90aGlzLmg6IiJ9O18ubS5vYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmo/dGhpcy5qOiIifTtfLm0uZ2g9ZnVuY3Rpb24oYSl7dGhpcy5vaS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dGhpcy5sJiZ0aGlzLmwoMCwhMSwxKX07Xy5tLmFmPWZ1bmN0aW9uKGEpe3RoaXMucGkuYXBwbHkodGhpcyxhcmd1bWVudHMpO3RoaXMubCYmdGhpcy5sKDAsITEsMSl9O18ubS5oaD1mdW5jdGlvbihhKXt0aGlzLnJpLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt0aGlzLmwmJnRoaXMubCgwLCExLDEpfTtfLm0uaWg9ZnVuY3Rpb24oYSl7dGhpcy50aS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dGhpcy5sJiZ0aGlzLmwoMCwhMSwxKX07Cl8ubS50cmFuc2xhdGU9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZihkfHxhIT10aGlzLmh8fGIhPXRoaXMuailtdih0aGlzKSx0aGlzLkRpJiYodGhpcy5vPW5ldyB0dCk7ZWxzZSBpZih0aGlzLmcpcmV0dXJuO3RoaXMubD1jO3RoaXMuQWk9ZTt0aGlzLkI9dGhpcy5yYTt0aGlzLmxhJiZ0aGlzLmxhLm9ic2VydmUoZG9jdW1lbnQuYm9keSx7YXR0cmlidXRlczohMCxjaGlsZExpc3Q6ITAsY2hhcmFjdGVyRGF0YTohMCxzdWJ0cmVlOiEwfSk7dGhpcy5nPSEwO3RoaXMuaD1hO3RoaXMuaj1iO3RoaXMuSWQmJih0aGlzLks9bmV3IGd2KGEsYikpO3RoaXMuSGI9dGhpcy5oPT0iYXV0byI7dGhpcy5mYiYmKGM9dGhpcy5mYixhJiYoYy5EPWEpLGImJihjLkY9YikpO3RoaXMuWGI9bmV3IGh2KHRoaXMuQyx0aGlzLmopO2IgaW4gY3YmJihhPXRoaXMubGYsYiBpbiBjdiYmKGI9Y3ZbYl0sYz0iQGltcG9ydCB1cmwoIitXbygiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbSIpLnJlc29sdmUoV28oZXZbYl0pKS50b1N0cmluZygpKwoiKTsiLGM9eW4oYyksYS5nLnB1c2goYyksYj15bignYm9keSB7Zm9udC1mYW1pbHk6IicrYisnIiwiR29vZ2xlIFNhbnMiLCJOb3RvIFNhbnMiLHNhbnMtc2VyaWYgIWltcG9ydGFudH0nKSxhLmcucHVzaChiKSkpO18ub2koXy5aaShwcSw5KSk/KHRoaXMuWGU9bmV3IGl2KHRoaXMuRmMsdGhpcy5oLHRoaXMuaiksdGhpcy5QPTAsbnYodGhpcyksdGhpcy5QPT09MCYmdGhpcy5sJiZ0aGlzLmwoMTAwLCEwKSk6dGhpcy5HPW92KHRoaXMpOyhiPXRoaXMuQyBpbnN0YW5jZW9mIE5vZGU/dGhpcy5DOm51bGwpJiZwdihiLHRoaXMuail9Owp2YXIgb3Y9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IEJ0KGEsYS53YSk7Q3QoYixhLnNmKTtFdChiLCgwLF8ueSkoYS5naCxhKSk7RnQoYixuZXcgQ3UoYS5GYyxbXS5jb25jYXQoYS5DKSxhLndhLGEubCxhLkIsYS5BaSkpO3JldHVybiBifSxudj1mdW5jdGlvbihhKXthLkw9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGIpe2IuZm9yRWFjaChmdW5jdGlvbihjKXtpZihjLmlzSW50ZXJzZWN0aW5nKXt2YXIgZD1jLmJvdW5kaW5nQ2xpZW50UmVjdDtkJiZkLndpZHRoPT09MCYmZC5oZWlnaHQ9PT0wfHwocXYoYSxjLnRhcmdldCksYS5MLnVub2JzZXJ2ZShjLnRhcmdldCkpfX0pfSk7W10uY29uY2F0KGEuQykuZm9yRWFjaChmdW5jdGlvbihiKXtydihhLGIpfSl9LHJ2PWZ1bmN0aW9uKGEsYixjKXtjPWM9PT12b2lkIDA/ITA6YztpZighUXR8fCEkdChiKSl7YS5FZj09PXZvaWQgMCYmKGEuRWY9ISFkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdtZXRhW25hbWU9Imdvb2dsZSJdW2NvbnRlbnQ9Im5vdHJhbnNsYXRlIl0sIG1ldGFbbmFtZT0icm9ib3RzIl1bY29udGVudD0ibm90cmFuc2xhdGUiXSwgbWV0YVtuYW1lPSJnb29nbGUiXVt2YWx1ZT0ibm90cmFuc2xhdGUiXSwgbWV0YVtuYW1lPSJ0cmFuc2xhdGUiXVtjb250ZW50PSJubyJdJykpOwppZihhLkVmKWM9ITE7ZWxzZSBpZihiLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREUpe3ZhciBkPSJub3RyYW5zbGF0ZSIsZT0idHJhbnNsYXRlIjtRdCYmYnUmJihkPSJub3RyYW5zbGF0ZSIsZT0idHJhbnNsYXRlIik7ZD1iLmNsYXNzTGlzdCYmYi5jbGFzc0xpc3QuY29udGFpbnMoZCl8fGIuZ2V0QXR0cmlidXRlJiZiLmdldEF0dHJpYnV0ZSgidHJhbnNsYXRlIik9PT0ibm8iO2U9Yi5jbGFzc0xpc3QmJmIuY2xhc3NMaXN0LmNvbnRhaW5zKGUpfHxiLmdldEF0dHJpYnV0ZSYmYi5nZXRBdHRyaWJ1dGUoInRyYW5zbGF0ZSIpPT09InllcyI7Yz1kPyExOmU/ITA6Y31pZihiLm5vZGVUeXBlPT09Tm9kZS5URVhUX05PREUpYyYmXy5BYyhiLnRleHRDb250ZW50KSYmYi5wYXJlbnRFbGVtZW50JiZhLkwub2JzZXJ2ZShiLnBhcmVudEVsZW1lbnQpO2Vsc2UgaWYoYi5jaGlsZE5vZGVzKWZvcihlPTA7ZTxiLmNoaWxkTm9kZXMubGVuZ3RoO2UrKylydihhLGIuY2hpbGROb2Rlc1tlXSwKYyl9fSxxdj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz17fSxkPTA7ZDxiLmNoaWxkTm9kZXMubGVuZ3RoO2M9e2tiOnZvaWQgMH0sZCsrKWMua2I9Yi5jaGlsZE5vZGVzW2RdLGMua2Iubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERSYmXy5BYyhjLmtiLnRleHRDb250ZW50KSYmKGEuUCsrLGEuTy5oYXMoYy5rYil8fGEuTy5zZXQoYy5rYixjLmtiLnRleHRDb250ZW50KSxrdihhLlhlLGMua2IudGV4dENvbnRlbnQpLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKGYpe2Uua2IudGV4dENvbnRlbnQ9Zn19KGMpKS5jYXRjaChmdW5jdGlvbigpe30pLmZpbmFsbHkoZnVuY3Rpb24oKXthLlAtLTthLlA9PT0wJiZhLmwmJmEubCgxMDAsITApfSkpfTtsdi5wcm90b3R5cGUucmVzdG9yZT1mdW5jdGlvbigpe212KHRoaXMpO3RoaXMuVWUucmVzdG9yZSgpO3ZhciBhPXRoaXMuQyBpbnN0YW5jZW9mIE5vZGU/dGhpcy5DOm51bGw7YSYmcHYoYSx0aGlzLkphKCkpfTsKbHYucHJvdG90eXBlLk09ZnVuY3Rpb24oKXtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLnJlc3RvcmUoKTtfLlVkKHdpbmRvdywiYmx1ciIsdGhpcy50ZiwhMCx0aGlzKTtfLlVkKHdpbmRvdywiZm9jdXMiLHRoaXMudWYsITAsdGhpcyl9O3ZhciBzdj1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT13cihhLm8uaCksZj1uZXcgQnQoYSxiLkQpO2IuQy5wdXNoKGYpO0R0KGYsYi5JKTtGdShiLGUpO0N0KGYsZHx8YS5wZik7Yj1jfHxuZXcgWXUoW10sW10sYixhLkphKCksYS5vYSgpLGEueWYsYS5JLGEuSWEpO0V0KGYsYS5VaCxhKTthLkImJkR0KGYsYi5kb25lLGIpO0Z0KGYsYil9O18ubT1sdi5wcm90b3R5cGU7Xy5tLlVoPWZ1bmN0aW9uKGEsYixjKXtjLmRvbmUoKTt0aGlzLkk/dGhpcy5paChhKTp0aGlzLmhoKGEpO2Muby5JKCl9O18ubS51Zj1mdW5jdGlvbigpe3RoaXMuUj0hMTt0aGlzLlQ9MDt5dCh0aGlzLkQsdGhpcy5BKX07Cl8ubS50Zj1mdW5jdGlvbihhKXthLnRhcmdldD09d2luZG93JiYodGhpcy5SPSEwLHRoaXMuVD0wLHl0KHRoaXMuRCwuMDEpKX07Xy5tLlFoPWZ1bmN0aW9uKGEpe2lmKHRoaXMuZyYmdGhpcy5CKWlmKF8ub2koXy5aaShwcSw5KSkpZm9yKHZhciBiPTA7YjxhLmxlbmd0aDtiKyspe3ZhciBjPWFbYl0uYWRkZWROb2RlcztpZihjKWZvcih2YXIgZD0wO2Q8Yy5sZW5ndGg7ZCsrKXJ2KHRoaXMsY1tkXSl9ZWxzZXtmb3IoYj0wO2I8YS5sZW5ndGg7YisrKWlmKGFbYl0udGFyZ2V0JiZhW2JdLnRhcmdldC5jbGFzc05hbWUmJnR5cGVvZiBhW2JdLnRhcmdldC5jbGFzc05hbWU9PT0ic3RyaW5nIiYmKGFbYl0udGFyZ2V0LmNsYXNzTmFtZS5pbmRleE9mKCJ0cmFuc2xhdGUiKT49MHx8YVtiXS50YXJnZXQuY2xhc3NOYW1lLmluZGV4T2YoImdvb2ctIik9PTApKXJldHVybjt0aGlzLndhLmFkZCgoMCxfLnkpKHRoaXMuTWksdGhpcykpfX07Cl8ubS5NaT1mdW5jdGlvbigpe3RoaXMuST0hMDt0aGlzLkcmJih0aGlzLkcuc3RvcCgpLHRoaXMuRz1vdih0aGlzKSk7cmV0dXJuITF9O18ubS5zZj1mdW5jdGlvbihhLGIpe0R1KGIsR3QoYSkpO3N2KHRoaXMsYik7cmV0dXJuIHRoaXMuWWh9O18ubS5ZaD1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmcpcmV0dXJuIEl0O2lmKCFIdChhKSlyZXR1cm4gSnQ7aWYoIXRoaXMuQilmb3IoYT0wO2E8dGhpcy5GLmxlbmd0aDsrK2Epe3ZhciBjPWIsZD0oMCxfLnkpKHRoaXMuTWUsdGhpcyxiLHRoaXMuRlthXSk7Yy5ELmFkZChkKX1yZXR1cm4gdGhpcy5YaH07Cl8ubS5uZj1mdW5jdGlvbihhLGIpe2lmKHRoaXMuVCYmIXRoaXMuUil7YT0obmV3IERhdGUpLmdldFRpbWUoKS10aGlzLlQ7dmFyIGM9dGhpcy5BO2E8OTAwJiZjPi4wMT9jPU1hdGgubWF4KGMqLjksLjAxKTphPjExMDAmJmM8LjUmJihjPU1hdGgubWluKGMqMS41LC41KSk7dGhpcy5BPWM7dGhpcy5nYj90aGlzLmpmPS4wMTp0aGlzLmRmPXRoaXMuQX10aGlzLkk9dGhpcy5nPSEwO3RoaXMuVD0obmV3IERhdGUpLmdldFRpbWUoKTt0aGlzLkNpIT0oYT1kb2N1bWVudC5ib2R5LmlubmVyVGV4dHx8ZG9jdW1lbnQuYm9keS50ZXh0Q29udGVudHx8ZG9jdW1lbnQuYm9keS5pbm5lckhUTUwpPyh0aGlzLkNpPWEsYT0hMCk6YT0hMTthPyh0aGlzLmdiPSExLHRoaXMuQT10aGlzLmRmLHRoaXMuUnx8eXQodGhpcy5ELHRoaXMuQSksRXUoYixbXS5jb25jYXQodGhpcy5DKSx0aGlzLkQpLGE9bmV3IEJ0KHRoaXMsdGhpcy5EKSxDdChhLHRoaXMuc2YpLEV0KGEsKDAsXy55KSh0aGlzLmFmLHRoaXMpKSwKRnQoYSxiKSx0aGlzLkc9YSk6KHRoaXMuZ2I9ITAsdGhpcy5BPXRoaXMuamYsdGhpcy5SfHx5dCh0aGlzLkQsdGhpcy5BKSxhPW5ldyBCdCh0aGlzLHRoaXMuRCksQ3QoYSx0aGlzLm5mKSxFdChhLCgwLF8ueSkodGhpcy5hZix0aGlzKSksRnQoYSxiKSx0aGlzLkc9YSk7cmV0dXJuIEl0fTtfLm0uWGg9ZnVuY3Rpb24oYSxiKXtpZighdGhpcy5nKXJldHVybiBJdDt0aGlzLkk9dGhpcy5nPSExO3RoaXMuSGI/R3UoYiwhMCk6KEd1KGIpLGIuUChiLmwpKTtpZih0aGlzLmlpKXJldHVybiB0aGlzLm5mO2IuY2xlYXIoKTtyZXR1cm4gSXR9Owp2YXIgdXY9ZnVuY3Rpb24oYSxiLGMpe2E6e3ZhciBkPXR2KGEpLGU9YS5mYixmPWEuamksZz1hLlVlLmc7Yj1HdChiKTtpZighYy5HKXtpZihjLnFhLmxlbmd0aD09MCl7Yy5sPT0wJiZjLnFiPT0wJiZjLkIoMCwhMCk7Yz0hMTticmVhayBhfWMuRz1JdShjLGQsZSxmLGcpfWMucmE9ITA7UnQoYy5HLGMuaixjLmgsYik7Yz0hMH1yZXR1cm4gYz9hLnBmOmEuU2N9LHR2PWZ1bmN0aW9uKGEpe3JldHVybiBhLklkPygwLF8ueSkoYS5LLm8sYS5LKTpmdW5jdGlvbigpe319O18ubT1sdi5wcm90b3R5cGU7Cl8ubS5wZj1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmcpcmV0dXJuIEl0O3ZhciBjPWIubztpZihjLmc9PW51bGwpe2lmKCFjLnJhKXJldHVybiB1dih0aGlzLGEsYi5vKTtpZighSHQoYSkpcmV0dXJuIEp0O2MucmE9ITE7Yy5nPWMuRy5kY3x8bnVsbDt2YXIgZD1jLmc/Yy5nOmMuRz1udWxsO2lmKCFkKXJldHVybiB1dih0aGlzLGEsYi5vKTt0aGlzLkYucHVzaChkKTt2YXIgZT1kLm1hKCk7aWYodGhpcy5vLmhhcyhlLCF0aGlzLkIpfHxiLkdbZV0hPW51bGwmJmIuR1tlXSlyZXR1cm4gZT1jLmcuRCxjLmwrPWUsYy5qLT1lLGMuZz1udWxsLHRoaXMuQiYmSnUoYixkLCExKSx1dih0aGlzLGEsYi5vKTtlPXRoaXMubztkPWQubWEoKTtlLmdbZF09bnVsbH1iLmxiKCk+MCYmeXQodGhpcy5ELC41KTtyZXR1cm4gS3UoYyxiLHdyKHRoaXMuby5oKSk/dGhpcy5TYzp1dih0aGlzLGEsYi5vKX07Cl8ubS5TYz1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLmd8fGIubGIoKT09MClyZXR1cm4gSXQ7c3YodGhpcyxiLm8pO3JldHVybiB0aGlzLkI/KGIudHJhY2tWaXNpYmlsaXR5KEd0KGEpKSx0aGlzLlpoKTpiLnRyYW5zbGF0ZShhKT09MD9JdDp0aGlzLnJmfTtfLm0uWmg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5nP0h0KGEpP2IudHJhbnNsYXRlKGEpPT0wP0l0OnRoaXMucmY6SnQ6SXR9OwpfLm0uTWU9ZnVuY3Rpb24oYSxiKXtiLmomJnRoaXMuby5yZW1vdmUoYi5sKTtpZighdGhpcy5nKXJldHVybiExO2lmKHRoaXMuby5oYXMoYi5tYSgpLCExKSl7dmFyIGM9dGhpcy5vO2MuaGFzKGIubCwhMSk/KGIuaD1jLnJlYWQoYi5sKSxiLkw9ITApOihjLnJlbW92ZShiLmwpLGIuaj0hMCk7cXQoYil9ZWxzZSBpZihjPXRoaXMubyxiLmopYy5yZW1vdmUoYi5sKTtlbHNlIGlmKGIuRil7dmFyIGQ9Yi5GLnJlcGxhY2UoLzxhIC9nLCI8c3BhbiAiKS5yZXBsYWNlKC9cL2E+L2csIi9zcGFuPiIpO2IuTD0hMDtkZWxldGUgYi5GO2IuRj1udWxsO2IuaD1bXTt2YXIgZT1kb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLGY9ZS5jcmVhdGVFbGVtZW50KCJkaXYiKTttcChmLCExKTtkPWQuaW5kZXhPZigiPGk+Iik+PTA/ZDoiPGI+IitkKyI8L2I+IjtkPV8uS2IoZCk7ZD1fLm1sKGQpO2Yubm9kZVR5cGU9PT0xJiZNbChmKTtmLmlubmVySFRNTD1fLmtqKGQpOwplLmJvZHkuYXBwZW5kQ2hpbGQoZik7ZT1bXTtmb3IoZD1mLmZpcnN0Q2hpbGQ7ZDtkPWQubmV4dFNpYmxpbmcpaWYoZC50YWdOYW1lPT0iSSIpdmFyIGc9b3QoYixFbyhkKSxkLmlubmVySFRNTCk7ZWxzZSBpZihkLnRhZ05hbWU9PSJCIil7Z3x8KGc9b3QoYiwiIiwiIikpO2lmKGIuZy5sZW5ndGg9PTEpdXQoZy5VLGUsMCxkKTtlbHNle3ZhciBoPWU7dmFyIGs9ZDt2YXIgbD1iLmc7Zz1nLlU7Zm9yKHZhciBuPVtdLHE9ay5maXJzdENoaWxkO3E7cT1wKXt2YXIgcD1xLm5leHRTaWJsaW5nO3Z0KHEpfWZvcihwPWsuZmlyc3RDaGlsZDtwO3A9cC5uZXh0U2libGluZylwLmF0dHJpYnV0ZXMmJnAuYXR0cmlidXRlcy5pPyhrPXBhcnNlSW50KHAuYXR0cmlidXRlcy5pLm5vZGVWYWx1ZSwxMCksIWlzTmFOKGspJiZrPj0wJiZrPGwubGVuZ3RoJiYobFtrXS5yZCYmbltrXT9uW2tdLlorPXAuZmlyc3RDaGlsZCYmcC5maXJzdENoaWxkLm5vZGVUeXBlPT0zP3AuZmlyc3RDaGlsZC5ub2RlVmFsdWU6CkVvKHApOm5ba109dXQoZyxoLGsscCkpKTpwLm5vZGVUeXBlPT0zJiZnLnB1c2goe1g6LTEsWjpwbyhwLm5vZGVWYWx1ZSl9KTtnIT1udWxsJiZnLmxlbmd0aD4wJiZnWzBdLlg9PS0xJiYoZy5sZW5ndGg9PTE/Z1swXS5YPTA6KGdbMV0uWj1nWzBdLlorZ1sxXS5aLGcuc2hpZnQoKSkpfWc9dm9pZCAwfWQ9Yi5oO2ZvcihoPTA7aDxkLmxlbmd0aC0xOysraClsPWRbaF0sZz1rbyhsLlVbbC5VLmxlbmd0aC0xXS5aKSxnPWcuY2hhckNvZGVBdChnLmxlbmd0aC0xKSwxMjI4ODw9ZyYmZzw9MTIzNTF8fDY1MjgwPD1nJiZnPD02NTUxOXx8KGwuVVtsLlUubGVuZ3RoLTFdLlorPSIgIik7Xy5BZChmKTtmb3IoZj0wO2Y8Yi5nLmxlbmd0aDsrK2YpZjxlLmxlbmd0aCYmZjxiLkMubGVuZ3RoJiZlW2ZdIT1udWxsJiYoZD1iLkNbZl0saD1lW2ZdLnN0YXJ0LGghPW51bGwmJihsPWQuc3Vic3RyaW5nKDAsZC5sZW5ndGgtZC5yZXBsYWNlKC9eW1xzXHhhMF0rLywiIikubGVuZ3RoKSxsPT0iICImJgoobD0iIiksbCYmKGguWj1sK2guWi5yZXBsYWNlKC9eW1xzXHhhMF0rLywiIikpKSxoPWVbZl0uZW5kLGghPW51bGwmJihkPWQuc3Vic3RyaW5nKGtvKGQpLmxlbmd0aCksZD09IiAiJiYoZD0iIiksZCYmKGguWj1rbyhoLlopK2QpKSk7Yi5oLmxlbmd0aCE9MXx8Yi5oWzBdLmhlfHwoYi5oWzBdLmhlPWIubCk7Yy53cml0ZShiLmwsYi5oKTtxdChiKX1iLkl8fCh0aGlzLkhiPSExKTtjPWIuaj8hMDp2b2lkIDA7YS5XKz1iLkQ7YyE9bnVsbCYmKGEubGE9ITApO2I9TWF0aC5taW4oTWF0aC5mbG9vcihhLlcqMTAwL2EubCksMTAwKTtpZihhLkYhPWJ8fGMpYS5GPWIsYS5SPyhhLkIoYS5GLCEwLGMpLGEuUChhLlcpKTphLkIoYS5GLCExLGMpO3JldHVybiExfTsKXy5tLnJmPWZ1bmN0aW9uKGEsYil7aWYoIXRoaXMuZylyZXR1cm4gSXQ7aWYoIUh0KGEpKXJldHVybiBKdDtpZihiLmxiKCk+MSl7YT1iLmxbMF07dmFyIGM9Yi5nO2lmKGEuanx8Yy5sZW5ndGg9PTB8fGEuZz09bnVsbHx8YS5nLmxlbmd0aD09MClhPW51bGw7ZWxzZXtmb3IodmFyIGQ9W10sZT1bXSxmPTA7ZjxhLmcubGVuZ3RoJiZmPGMubGVuZ3RoOysrZil7dmFyIGc9YS5nW2ZdO2cmJmdbMF0mJmdbMV09PTIwMHx8KGUucHVzaChjW2ZdKSxkLnB1c2goYS5vW2ZdKSl9YT1lLmxlbmd0aD4wP3tOaTpuZXcgZnUoZCwhMCksT2k6ZX06bnVsbH1hPWE/bmV3IFl1KFthLk5pXSxhLk9pLGIubyxiLmgsYi5qLGIucWEsYi5PLGIuQik6bnVsbDthIT1udWxsJiZzdih0aGlzLGIubyxhLHRoaXMuU2MpfWVsc2V7YT0hMTtmb3IoYz0wO2M8Yi5sLmxlbmd0aDsrK2MpZD1iLmxbY10sZC5qfHxkLmg9PTIwMCYmZC5nJiZkLmdbMF0/ZD1kLmw9ITE6KGQuaj0hMCxkPWQubD0hMCksYT1kfHxhO2lmKGEpcmV0dXJuIHRoaXMuU2N9ZD0KdGhpcy5KYSgpO2E9dGhpcy5vYSgpO2lmKGIuZy5sZW5ndGg+MSlpZihjPWIubFswXSxlPWQ9PSJhdXRvIixkPWIuZyxjLmg9PTIwMClmb3IoZj0wO2Y8Yy5nLmxlbmd0aCYmZjxkLmxlbmd0aDsrK2YpaWYoKGc9Yy5nW2ZdKSYmZ1sxXT09MjAwKXt2YXIgaD1nWzJdLGs9ZFtmXSxsPWssbj1oIT1udWxsJiZoPT1hO2wuRj1nWzBdO24hPT12b2lkIDAmJihsLks9bik7ay5JPWUmJmg9PW51bGx9ZWxzZSBkW2ZdLmo9ITA7ZWxzZSBmb3IoYT0wO2E8ZC5sZW5ndGg7KythKWRbYV0uaj0hMDtlbHNle2M9bmV3IGV1KGQ9PSJhdXRvIik7Zm9yKGQ9MDtkPGIubC5sZW5ndGg7KytkKWY9Yi5sW2RdLGU9YSxmLmg9PTIwMCYmZi5nJiZmLmdbMF0/KGY9Zi5nWzBdLGMuZy5wdXNoKGZbMF0pLGY9ZlsyXSxjLmg9Yy5oJiZmIT1udWxsJiZmPT1lLGYhPW51bGwmJihjLmw9ITEpKTpjLmo9ITA7Yi5GIT1udWxsJiYoYy5nLnB1c2goYi5GKSxiLkY9bnVsbCk7aWYoYT1iLmdbMF0pZD1jLm1hKCksZT1jLmgsCmEuRj1kLGUhPT12b2lkIDAmJihhLks9ZSksYS5JPWMubCxhLmo9Yy5qfWlmKHRoaXMuQil7YT0oMCxfLnkpKHRoaXMuTWUsdGhpcyk7Zm9yKGM9MDtjPGIuZy5sZW5ndGg7YysrKWEoYi5vLGIuZ1tjXSk7Zm9yKGM9MDtjPGIuQy5sZW5ndGg7YysrKWEoYi5vLGIuQ1tjXSk7JHUoYik7Yi5XPSEwO2IuSSYmYi5CJiYoYj1iLkIsLS1iLmg9PTAmJlZ1KGIuZykpfXJldHVybiBJdH07CnZhciBtdj1mdW5jdGlvbihhKXthLmxhJiZhLmxhLmRpc2Nvbm5lY3QoKTthLklhJiZhLklhLnJlc2V0KCk7YS5nJiYoYS5HJiZhLkcuc3RvcCgpLGEuZz0hMSxhLkk9ITEpO2lmKGEuRi5sZW5ndGgpe2Zvcih2YXIgYj0wO2I8YS5GLmxlbmd0aDsrK2IpYS5GW2JdLmRpc3Bvc2UoKTthLkY9W119YS5LIT1udWxsJiYoYS5LLnJlc3RvcmUoKSxhLks9bnVsbCk7YS5YYiE9bnVsbCYmKGEuWGIucmVzdG9yZSgpLGEuWGI9bnVsbCk7YS5PJiZhLk8uc2l6ZT4wJiYoYS5PLmZvckVhY2goZnVuY3Rpb24oYyxkKXtkLnRleHRDb250ZW50PWN9KSxhLk8uY2xlYXIoKSk7YS5MJiYoYS5MLmRpc2Nvbm5lY3QoKSxhLkw9bnVsbCk7YS5sZi5yZXN0b3JlKCl9LHB2PWZ1bmN0aW9uKGEsYil7YS5nZXRBdHRyaWJ1dGUoInhtbDpsYW5nIikmJmEuc2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIsYik7YS5nZXRBdHRyaWJ1dGUoImxhbmciKSYmYS5zZXRBdHRyaWJ1dGUoImxhbmciLGIpfTsKRHIuYXR0YWNoKDMwNDYsbHYucHJvdG90eXBlLHtvaToxLHJpOjIscGk6Myx0aTo0fSk7dmFyIHZ2PVdxKGNyKSx3dj1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgsayxsLG4pe18udS5jYWxsKHRoaXMpO3RoaXMuTz1ifHxudWxsO3RoaXMuSz0hIWM7dGhpcy5HPWR8fCJ0cmFuc3BhcmVudCI7dGhpcy5EPWZ8fCIiO2I9Z3x8e2ZldGNoU3RhcnQ6MCxTazowfTthPWIuZmV0Y2hTdGFydHx8MDtiPWIuZmV0Y2hFbmR8fDA7dGhpcy5GPWEmJmI/Yi1hOjA7dGhpcy5SPURhdGUubm93KCktcnE7dGhpcy5BPSExO3RoaXMuZz1uZXcgUnIoZXx8IiIsdm9pZCAwLGYsbik7dGhpcy5JPW5ldyB6dCgxKTt0aGlzLkI9bmV3IHR0O3RoaXMubD1udWxsO3RoaXMuQz0hMDt0aGlzLm89Xy52LkludGVyc2VjdGlvbk9ic2VydmVyIT1udWxsO3RoaXMuTD1ofHxudWxsO2U9bmV3IGpyO2Y9bmV3IGxyKHRoaXMuZy5pbml0aWFsaXplLmJpbmQodGhpcy5nLGUucmVnaXN0ZXIoKSkpO3RoaXMuemM9bXIoZixlLmRlbGF5KCgwLF8ueSkodGhpcy56Yyx0aGlzKSkpO3RoaXMuUGM9bXIoZixlLmRlbGF5KCgwLF8ueSkodGhpcy5QYywKdGhpcykpKTt0aGlzLnFkPW1yKGYsZS5kZWxheSgoMCxfLnkpKHRoaXMucWQsdGhpcykpKTt0aGlzLnJlc3RvcmU9bXIoZixlLmRlbGF5KCgwLF8ueSkodGhpcy5yZXN0b3JlLHRoaXMpKSk7Zi5maW5pc2goKTtlLmZpbmlzaCgpO3BlcmZvcm1hbmNlJiZwZXJmb3JtYW5jZS5tYXJrJiZwZXJmb3JtYW5jZS5tYXJrKFJxLHZvaWQgMCk7ZT1kcih2diwxKTtmPW5ldyBRbjtmPV8uVGooZiwxLHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pO2E6e2lmKHBlcmZvcm1hbmNlJiYoaD1wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIiksaC5sZW5ndGg9PTEpKXtoPWhbMF07YnJlYWsgYX1oPW51bGx9aCYmKG49bmV3IEZtLG49Xy5UaihuLDEsIiIpLGE9R20oaC5zdGFydFRpbWUpLG49Xy5MKG4sMixhKSxhPUhtKGguZHVyYXRpb24pLG49Xy5MKG4sMyxhKSxhPW5ldyBQbixhPV8uVGooYSwxLGguaW5pdGlhdG9yVHlwZSksYT1fLlRqKGEsMixoLm5leHRIb3BQcm90b2NvbCksCmI9R20oaC53b3JrZXJTdGFydHx8MCksYT1fLkwoYSwzLGIpLGI9R20oaC5yZWRpcmVjdFN0YXJ0KSxhPV8uTChhLDQsYiksYj1HbShoLnJlZGlyZWN0U3RhcnQpLGE9Xy5MKGEsNCxiKSxiPUdtKGgucmVkaXJlY3RFbmQpLGE9Xy5MKGEsNSxiKSxiPUdtKGguZmV0Y2hTdGFydCksYT1fLkwoYSw2LGIpLGI9R20oaC5kb21haW5Mb29rdXBTdGFydCksYT1fLkwoYSw3LGIpLGI9R20oaC5kb21haW5Mb29rdXBFbmQpLGE9Xy5MKGEsOCxiKSxiPUdtKGguY29ubmVjdFN0YXJ0KSxhPV8uTChhLDksYiksYj1HbShoLmNvbm5lY3RFbmQpLGE9Xy5MKGEsMTAsYiksYj1HbShoLnNlY3VyZUNvbm5lY3Rpb25TdGFydCksYT1fLkwoYSwxMSxiKSxiPUdtKGgucmVzcG9uc2VTdGFydCksYT1fLkwoYSwxMyxiKSxiPUdtKGgucmVzcG9uc2VFbmQpLGE9Xy5MKGEsMTQsYiksYT1fLmprKGEsMTUsaC50cmFuc2ZlclNpemUpLGE9Xy5qayhhLDE2LGguZW5jb2RlZEJvZHlTaXplKSxhPV8uamsoYSwxNyxoLmRlY29kZWRCb2R5U2l6ZSksCm49Sm0obiw2LGEpLF8uTChmLDMsbiksbj1ObShScSkpJiYoaD1PbShVcSx7c3RhcnQ6aC5yZXNwb25zZUVuZCxlbmQ6bi5zdGFydFRpbWV8fHBlcmZvcm1hbmNlLm5vdygpfSkpJiYocGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLmNsZWFyTWVhc3VyZXMmJnBlcmZvcm1hbmNlLmNsZWFyTWVhc3VyZXMoVXEpLGg9S20oaCksXy5MKGYsNCxoKSxoPVVuKGUpLF8uTChoLDQsZikpO2ZyKGUsMSl9O18uRyh3dixfLnUpO0RyLmF0dGFjaCgxNDA5Nyx3di5wcm90b3R5cGUse2JlOmZ1bmN0aW9uKCl7UW0odGhpcy5nLlRhKCk/InRlX2FmYXMiOiJ0ZV9hZmF1Iil9fSk7Xy5tPXd2LnByb3RvdHlwZTtfLm0uUGk9ZnVuY3Rpb24oYSl7dGhpcy5vPWF9O18ubS5TYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuVGEoKX07Cl8ubS56Yz1mdW5jdGlvbihhLGIpe3RoaXMuZy5TYSgpP3RoaXMuZy5vLnNlbmQoe2Rpc3BsYXlfbGFuZ3VhZ2U6YixrZXk6IkFJemFTeUJXRGowUUp2Vkl4OFhPaFJlZ1hYNV9TclJXeGhUNUhzNCJ9LGEpLnRoZW4oZnVuY3Rpb24oYyl7cmV0dXJuIGEoYyl9KToodGhpcy5iZSgpLGEobnVsbCkpfTsKXy5tLlBjPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5sYW5nO2lmKGIpYShiKTtlbHNlIGlmKHRoaXMuZy5TYSgpKXtiPW5ldyBhcyhkb2N1bWVudC5ib2R5LCExLCExLDEsMSk7Zm9yKHZhciBjPVtdLGQ9MCxlPXRoaXMuZy5oLkhmO2MubGVuZ3RoK2Q8ZTspe3ZhciBmPWIubmV4dCgpO2lmKGYuZG9uZSlicmVhaztmPWYudmFsdWU7Yi5nPT0xJiYkdChmKT9icyhiKTpmLm5vZGVUeXBlPT0zJiYoZj1fLkFjKGpvKGYubm9kZVZhbHVlKSkpJiYoYy5wdXNoKGYpLGQrPWYubGVuZ3RoKX1Tcih0aGlzLmcsYSxjLmpvaW4oIiAiKSkudGhlbihmdW5jdGlvbihnKXthKGcpfSxmdW5jdGlvbihnKXtyZXR1cm4gYShudWxsLGcpfSl9ZWxzZSB0aGlzLmJlKCksYShudWxsLCEwKX07Cl8ubS5xZD1mdW5jdGlvbihhLGIsYyxkLGUpe3Z2LkViPWE7dnYuRmI9Yjt2YXIgZj1kcih2diwyKTtlcih2dixmKTt2YXIgZz1ObShScSk7aWYoZyl7dmFyIGg9Tm0oU3EpO2lmKGgpe3ZhciBrPU9tKFZxLHtzdGFydDpnLnN0YXJ0VGltZSxlbmQ6aC5zdGFydFRpbWV8fHBlcmZvcm1hbmNlLm5vdygpfSk7ayYmKGc9VW4oZiksaD1uZXcgU24saz1LbShrKSxoPV8uTChoLDEsayksXy5MKGcsNSxoKSxwZXJmb3JtYW5jZSYmcGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcyYmcGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcyhWcSkpfX1mcihmLDIpO2Y9e2RldGFpbDp7c291cmNlTGFuZ3VhZ2U6YSx0YXJnZXRMYW5ndWFnZTpifX07cGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLm1hcmsmJnBlcmZvcm1hbmNlLm1hcmsoU3EsZik7Zj1EYXRlLm5vdygpO0NyKCk7aWYoIWF8fHhyKGEsYikpYT0iYXV0byI7aWYoZXx8YSE9dGhpcy5ofHxiIT10aGlzLmopdGhpcy5CPW5ldyB0dDt0aGlzLmg9YTt0aGlzLmo9CmI7dGhpcy5nLlNhKCk/KGQ9ZHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHRoaXMubCYmdGhpcy5sLmRpc3Bvc2UoKSx0aGlzLmw9bmV3IGx2KGQsdGhpcy5nLHRoaXMuTyx0aGlzLkssdGhpcy5HLCEwLHRoaXMuSSx0aGlzLkIsdGhpcy5vLHRoaXMuTCksdGhpcy5sLnlmPXRoaXMuQSx0aGlzLkM9ITAsdGhpcy5sLnRyYW5zbGF0ZShhLGIsYyxlLCgwLF8ueSkodGhpcy55aSx0aGlzLGYsYSxiKSkpOih0aGlzLmJlKCksYygwLCExLCEwKSl9O18ubS5wZz1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5sJiZ0aGlzLmwuZ307Xy5tLllmPWZ1bmN0aW9uKGEpe3RoaXMuQT1hfTtfLm0ucmVzdG9yZT1mdW5jdGlvbigpe3ZhciBhPWRyKHZ2LDMpO2VyKHZ2LGEpO2ZyKGEsMyk7cGVyZm9ybWFuY2UmJnBlcmZvcm1hbmNlLm1hcmsmJnBlcmZvcm1hbmNlLm1hcmsoVHEsdm9pZCAwKTtDcigpO3RoaXMuZy5TYSgpJiZ0aGlzLmwmJnRoaXMubC5yZXN0b3JlKCl9OwpfLm0uTT1mdW5jdGlvbigpe0JyKCk7d3YuZWEuTS5jYWxsKHRoaXMpO3RoaXMuZy5kaXNwb3NlKCk7dGhpcy5sPXRoaXMuZz1udWxsO3RoaXMuQj1uZXcgdHR9OwpfLm0ueWk9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5DJiYodGhpcy5DPSExLGI9e3NsOmIsdGw6Yyx0ZXh0bGVuOmR9LHRoaXMuQSYmKGIuY3R0PSIxIiksdGhpcy5EIT0iIiYmKGIuc3A9dGhpcy5EKSxiLnR0dD1EYXRlLm5vdygpLWEsYi50dGw9dGhpcy5SLHRoaXMuRiYmKGIudHRmPXRoaXMuRiksdGhpcy5vJiYoYi5zcj0xKSxhPXBxLGM9W10sXy5vaShfLlppKGEsMikpJiZjLnB1c2goInNkYSIpLF8ub2koXy5aaShhLDMpKSYmYy5wdXNoKCJlZWlzIiksZD1fLmJqKGEsaXEsNiksXy5vaShfLlppKGQsMSkpJiZjLnB1c2goImVzdHMiKSxfLm9pKF8uWmkoYSw3KSkmJmMucHVzaCgiZWhjbSIpLF8ub2koXy5aaShhLDgpKSYmYy5wdXNoKCJlb3BhIiksXy5vaShfLlppKGEsOSkpJiZjLnB1c2goImVhZHQiKSxiLmVmPWMuam9pbigiLCIpLFFtKCJ0ZV90aW1lIixiKSl9O3ZhciB4dj1mdW5jdGlvbihhKXt4bi5jYWxsKHRoaXMsYSk7dGhpcy5BPW5ldyBfLkhiKHRoaXMpfTtfLkIoeHYseG4pO3h2LnByb3RvdHlwZS5TPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpO2EuY2xhc3NOYW1lPSJnb29nLXRlLWNvbWJvIjthLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsUi5FZSk7dGhpcy5PYShhKX07eHYucHJvdG90eXBlLkxhPWZ1bmN0aW9uKCl7eG4ucHJvdG90eXBlLkxhLmNhbGwodGhpcyk7dGhpcy5aZSgpfTt4di5wcm90b3R5cGUuWmU9ZnVuY3Rpb24oKXtfLngodGhpcy5IKCksImNoYW5nZSIscHIodGhpcywiY2hhbmdlIikpO3RoaXMuZGlzcGF0Y2hFdmVudCgibG9hZCIpfTt4di5wcm90b3R5cGUuc2E9ZnVuY3Rpb24oKXt4bi5wcm90b3R5cGUuc2EuY2FsbCh0aGlzKTt0aGlzLkEuZGlzcG9zZSgpO3RoaXMuQT1udWxsfTsKdmFyIHl2PWZ1bmN0aW9uKGEsYil7YS5IKCkucGFyZW50Tm9kZSE9YiYmKGEuSCgpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYS5IKCkpLGIuYXBwZW5kQ2hpbGQoYS5IKCkpKX07Xy5tPXh2LnByb3RvdHlwZTtfLm0udWM9ZnVuY3Rpb24oYSl7dGhpcy5oLmllKHRoaXMuSCgpKTtmb3IodmFyIGIgaW4gYSlpZihhW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSl7dmFyIGM9dGhpcy5oLlMoIk9QVElPTiIse3ZhbHVlOmJ9KTt0aGlzLmguU2IoYyxhW2JdKTt0aGlzLkgoKS5hcHBlbmRDaGlsZChjKX10aGlzLkgoKS5zZWxlY3RlZEluZGV4PTB9O18ubS5NYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkgoKS52YWx1ZX07Xy5tLmNiPWZ1bmN0aW9uKGEpe2lmKHRoaXMuSCgpLnZhbHVlIT1hKWZvcih2YXIgYj0wLGM7Yz10aGlzLkgoKS5vcHRpb25zLml0ZW0oYik7KytiKWlmKGMudmFsdWU9PWEpe3RoaXMuSCgpLnNlbGVjdGVkSW5kZXg9YjticmVha319OwpfLm0uQWM9ZnVuY3Rpb24oYSl7aWYoXy5vYyhhKT09InVuZGVmaW5lZCIpcmV0dXJuIHRoaXMuSCgpLm9wdGlvbnMuaXRlbSh0aGlzLkgoKS5zZWxlY3RlZEluZGV4KS50ZXh0O2Zvcih2YXIgYj0wLGM7Yz10aGlzLkgoKS5vcHRpb25zLml0ZW0oYik7KytiKWlmKGMudmFsdWU9PWEpcmV0dXJuIGMudGV4dH07Xy5tLlJiPWZ1bmN0aW9uKGEpe3RoaXMuSCgpLmRpc2FibGVkPSFhfTt2YXIgenY9ZnVuY3Rpb24oYSl7eHYuY2FsbCh0aGlzLGEpfTtfLkIoenYseHYpO3p2LnByb3RvdHlwZS5uYj1mdW5jdGlvbihhKXt0aGlzLnVjLmNhbGwodGhpcyxhKX07dmFyIEF2PWZ1bmN0aW9uKGEsYil7eHYuY2FsbCh0aGlzLGIpO3RoaXMuZz1hJiZKbChhKXx8e307dGhpcy5nLm9lPXRoaXMuZy5vZXx8MTE7dGhpcy5nLnBkPXRoaXMuZy5wZCE9MDt0aGlzLmcuZWI9QXF9O18uQihBdix4dik7Xy5tPUF2LnByb3RvdHlwZTtfLm0uS2M9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiR2EiKTt9OwpfLm0uUz1mdW5jdGlvbigpe3RoaXMuS2MoKTt0aGlzLkQ9dGhpcy5IKCk7dGhpcy5sPXdvKCJJRlJBTUUiLHtmcmFtZUJvcmRlcjowLCJjbGFzcyI6IlZJcGdKZC1aVmk5b2QteGwwN09iLU9FVm1jZCBza2lwdHJhbnNsYXRlIix0aXRsZTpSLkVlfSk7dGhpcy5sLnN0eWxlLnZpc2liaWxpdHk9InZpc2libGUiO21wKHRoaXMubCwhMSk7ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLmwpfTsKXy5tLlplPWZ1bmN0aW9uKCl7dmFyIGE9Xy54Zi50ZXN0KG9xKT8icnRsIjoibHRyIixiPV8uTGIodGhpcy5nLmViKSxjPVModGhpcywibWVudUJvZHkiKTt0aGlzLkEuTih0aGlzLmwsImxvYWQiLHRoaXMucWcpO3RyKHRoaXMubCwoMCxfLnkpKGZ1bmN0aW9uKCl7dmFyIGQ9em8odGhpcy5sKSxlPXt9LGY9ZSYmZS5UZTtlPVduKFZuKF8ueWwoKSwiPGhlYWQ+IiksT3UoZSkpO2Y9JzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURjgiPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9IicrUCh4cChiKSkrJyInKyhmPycgbm9uY2U9IicrUChZcChmKSkrJyInOiIiKSsnPjwvaGVhZD48Ym9keSBzY3JvbGw9Im5vIiBzdHlsZT0ibWFyZ2luOjBweDtvdmVyZmxvdzpoaWRkZW4iIGRpcj0iJytQKGEpKyciIG1hcmdpbkhlaWdodD0wIG1hcmdpbldpZHRoPTAgbGVmdE1hcmdpbj0wIHRvcE1hcmdpbj0wIGJvcmRlcj0wPjxkaXYgaWQ9IicrClAoYykrJyIgY2xhc3M9JztpZih3cCgiVklwZ0pkLVpWaTlvZC14bDA3T2IiLF8ucWwpKXt2YXIgZz1NcCgiVklwZ0pkLVpWaTlvZC14bDA3T2IiLm1hKCkpO2c9U3RyaW5nKGcpLnJlcGxhY2UoT3AsQ3ApfWVsc2UgZz0iVklwZ0pkLVpWaTlvZC14bDA3T2IiLnJlcGxhY2UoTnAsQ3ApO2U9Vm4oZSxmK2crIj48L2Rpdj48L2JvZHk+IikuVGIoKTtkLndyaXRlKF8ua2ooZSkpO2QuY2xvc2UoKX0sdGhpcykpfTtfLm0ucWc9ZnVuY3Rpb24oKXt0aGlzLmo9bmV3IF8ucmQoem8odGhpcy5sKSk7dGhpcy5MPXRoaXMuai5IKFModGhpcywibWVudUJvZHkiKSk7dGhpcy5BLk4odGhpcy5ELCJjbGljayIsdGhpcy5UZCk7Xy5TYz90aGlzLkEuTih0aGlzLmwsImJsdXIiLHRoaXMuUmMpOnRoaXMuQS5OKEFvKHRoaXMubCksImJsdXIiLHRoaXMuUmMpO3RoaXMuZGlzcGF0Y2hFdmVudCgibG9hZCIpfTsKXy5tLnNhPWZ1bmN0aW9uKCl7eHYucHJvdG90eXBlLnNhLmNhbGwodGhpcyk7Xy5BZCh0aGlzLmwpO3RoaXMuRD10aGlzLlQ9dGhpcy5CPXRoaXMuTD10aGlzLmo9dGhpcy5sPW51bGx9O18ubS5xZj1mdW5jdGlvbihhKXt0aGlzLm8hPWEuY3VycmVudFRhcmdldC52YWx1ZSYmKHRoaXMuY2IoYS5jdXJyZW50VGFyZ2V0LnZhbHVlKSx0aGlzLmRpc3BhdGNoRXZlbnQoImNoYW5nZSIpKTt0aGlzLlJjKCl9O18ubS5UZD1mdW5jdGlvbigpe0J2KHRoaXMpO0FvKHRoaXMubCkuZm9jdXMoKTt0aGlzLnJhPSEwfTtfLm0uUmM9ZnVuY3Rpb24oKXt0aGlzLnJhJiYodGhpcy5yYT0hMSxCdih0aGlzLCExKSxfLm1iKF8uc2QodGhpcy5EKSkuZm9jdXMoKSl9O18ubS5rZT1mdW5jdGlvbigpe307Xy5tLmxlPWZ1bmN0aW9uKCl7fTsKdmFyIEJ2PWZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGI9PSJ1bmRlZmluZWQifHxiKXthLmxlKCk7Yj1qcChhLkQsd2luZG93KTt2YXIgYz1iLnkrYS5ELm9mZnNldEhlaWdodCxkPWIueS1hLkcuaGVpZ2h0LGU9Yi54LGY9Yi54K2EuRC5vZmZzZXRXaWR0aC1hLkcud2lkdGg7aWYoXy5TYyYmIXNvKCkpe3ZhciBnPWRvY3VtZW50LmJvZHk7Yy09Zy5vZmZzZXRUb3A7ZC09Zy5vZmZzZXRUb3A7ZS09Zy5vZmZzZXRMZWZ0O2YtPWcub2Zmc2V0TGVmdH1lbHNlIGc9S24oZG9jdW1lbnQpLGMtPWcueSxkLT1nLnksZS09Zy54LGYtPWcueDtnPV8uaWIod2luZG93KTtiLnk9Yi55PD1nLmhlaWdodC1hLkcuaGVpZ2h0P2M6ZDtiLnk+Zy5oZWlnaHQtYS5HLmhlaWdodCYmKGIueT1nLmhlaWdodC1hLkcuaGVpZ2h0KTtiLnk8MCYmKGIueT0wKTtfLnhmLnRlc3Qob3EpP2IueD1mPj0wP2Y6ZTpiLng9ZTw9Zy53aWR0aC1hLkcud2lkdGg/ZTpmO2IueD5nLndpZHRoLWEuRy53aWR0aCYmKGIueD1nLndpZHRoLQphLkcud2lkdGgpO2IueDwwJiYoYi54PTApO2VwKGEubCxiKTttcChhLmwsITApO0N2KGEpfWVsc2UgYS5rZSgpLG1wKGEubCwhMSl9O18ubT1Bdi5wcm90b3R5cGU7Xy5tLk1hPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub307Cl8ubS51Yz1mdW5jdGlvbihhKXt0aGlzLmouaWUodGhpcy5MKTttcCh0aGlzLmwsITApO3RoaXMuSWE9YTt0aGlzLkI9W107Zm9yKHZhciBiIGluIGEpaWYoYVtiXSE9PU9iamVjdC5wcm90b3R5cGVbYl0paWYoYVtiXT09Ii0tLSIpe3ZhciBjPXtsaW5rOnRoaXMuai5TKCJESVYiLHtjbGFzc05hbWU6IlZJcGdKZC1aVmk5b2QtdkgxR21mLWhnRFV3ZSIsdmFsdWU6Yn0pLGdpOiEwfTt0aGlzLkIucHVzaChjKX1lbHNle2M9e2xpbms6dGhpcy5qLlMoIkEiLHtjbGFzc05hbWU6IlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQiLGhyZWY6IiMiLHZhbHVlOmJ9KX07dGhpcy5CLnB1c2goYyk7dmFyIGQ9dGhpcy5qLlMoIkRJViIse3N0eWxlOiJ3aGl0ZS1zcGFjZTpub3dyYXAifSk7dGhpcy5qLmFwcGVuZENoaWxkKGMubGluayxkKTt0aGlzLmcucGQmJnRoaXMuai5hcHBlbmRDaGlsZChkLHRoaXMuai5TKCJTUEFOIix7Y2xhc3NOYW1lOiJpbmRpY2F0b3IifSwiXHUyMDNhIikpOwp0aGlzLmouYXBwZW5kQ2hpbGQoZCx0aGlzLmouUygiU1BBTiIse2NsYXNzTmFtZToidGV4dCJ9LHR5cGVvZiBhW2JdPT09ImZ1bmN0aW9uIj9hW2JdKCk6YVtiXSkpO3RoaXMuQS5OKGMubGluaywiY2xpY2siLHRoaXMucWYpfWE9dGhpcy5CLmxlbmd0aC0xO2E9TWF0aC5yb3VuZCgoYS1hJXRoaXMuZy5vZSkvdGhpcy5nLm9lKSsxO3RoaXMuVD10aGlzLmouUygiVEFCTEUiLHtjZWxsc3BhY2luZzowLGNlbGxwYWRkaW5nOjAsYm9yZGVyOjB9KTtjPXRoaXMuai5TKCJUQk9EWSIpO2I9dGhpcy5qLlMoIlRSIix7dmFsaWduOiJ0b3AifSk7dGhpcy5MLmNsYXNzTmFtZT0iVklwZ0pkLVpWaTlvZC12SDFHbWYiO3RoaXMuai5hcHBlbmRDaGlsZCh0aGlzLkwsdGhpcy5UKTt0aGlzLmouYXBwZW5kQ2hpbGQodGhpcy5ULGMpO3RoaXMuai5hcHBlbmRDaGlsZChjLGIpO2ZvcihkPWM9MDtjPGE7KytjKXt2YXIgZT10aGlzLmouUygiVEQiKTt0aGlzLmouYXBwZW5kQ2hpbGQoYixlKTtmb3IodmFyIGY9CjA7ZjwxMSYmZDx0aGlzLkIubGVuZ3RoOysrZiwrK2QpdGhpcy5qLmFwcGVuZENoaWxkKGUsdGhpcy5CW2RdLmxpbmspO2MhPWEtMSYmKGU9dGhpcy5qLlMoIlREIix7ImNsYXNzIjoiVklwZ0pkLVpWaTlvZC12SDFHbWYtS3JoUE5iIn0sIlx1MDBhMCIpLHRoaXMuai5hcHBlbmRDaGlsZChiLGUpKX10aGlzLm89bnVsbDt0aGlzLmNiKHRoaXMuQlswXS5saW5rLnZhbHVlKTtDdih0aGlzKTttcCh0aGlzLmwsITEpfTtfLm0uQWM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuSWFbXy5vYyhhKT09InVuZGVmaW5lZCI/dGhpcy5vOmFdfTtfLm0ubWU9ZnVuY3Rpb24oKXt9OwpfLm0uY2I9ZnVuY3Rpb24oYSl7aWYodGhpcy5vIT1hKXt0aGlzLkFjKGEpJiYodGhpcy5vPWEsdGhpcy5tZSgpKTtmb3IodmFyIGI9MDtiPHRoaXMuQi5sZW5ndGg7KytiKXt2YXIgYz10aGlzLkJbYl07Yy5naXx8KGMubGluay5jbGFzc05hbWU9Yy5saW5rLnZhbHVlPT1hJiZ0aGlzLmcucGQ/IlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQiOiJWSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIiKX19fTt2YXIgQ3Y9ZnVuY3Rpb24oYSl7cXAoYS5MLG9wKGEuVCkpO3FwKGEubCxvcChhLkwpKTthLkc9b3AoYS5sKX0sRHY9ZnVuY3Rpb24oYSxiKXtBdi5jYWxsKHRoaXMsYSxiKX07Xy5CKER2LEF2KTtfLm09RHYucHJvdG90eXBlOwpfLm0uS2M9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmguUygiYSIseyJhcmlhLWhhc3BvcHVwIjoidHJ1ZSJ9KTthLmNsYXNzTmFtZT0iVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVkIjtfLm5sKGEsIiMiKTt0aGlzLkk9dGhpcy5oLlMoIlNQQU4iKTthLmFwcGVuZENoaWxkKHRoaXMuSSk7dGhpcy5QPXRoaXMuaC5TKCJJTUciLHtzcmM6Q3EsYWx0OiIiLHN0eWxlOiJiYWNrZ3JvdW5kLWltYWdlOnVybCgiK3hxKyIpO2JhY2tncm91bmQtcG9zaXRpb246LTE0cHggMHB4O2JvcmRlcjpub25lIix3aWR0aDoxNCxoZWlnaHQ6MTR9KTthLmFwcGVuZENoaWxkKHRoaXMuUCk7dGhpcy5PYShhKX07Xy5tLmtlPWZ1bmN0aW9uKCl7Xy5oaih0aGlzLlAsImJhY2tncm91bmRQb3NpdGlvbiIsIi0xNHB4IDBweCIpfTtfLm0ubGU9ZnVuY3Rpb24oKXtfLmhqKHRoaXMuUCwiYmFja2dyb3VuZFBvc2l0aW9uIiwiMHB4IDBweCIpfTsKXy5tLnNhPWZ1bmN0aW9uKCl7QXYucHJvdG90eXBlLnNhLmNhbGwodGhpcyk7dGhpcy5QPXRoaXMuST1udWxsfTtfLm0ubWU9ZnVuY3Rpb24oKXt0aGlzLmguU2IodGhpcy5JLHRoaXMuQWModGhpcy5vKXx8IiIpfTtfLm0ubmI9ZnVuY3Rpb24oYSl7dGhpcy51Yy5jYWxsKHRoaXMsYSl9O3ZhciBFdj1mdW5jdGlvbihhLGIpe0F2LmNhbGwodGhpcyxhLGIpfTtfLkIoRXYsQXYpO18ubT1Fdi5wcm90b3R5cGU7Cl8ubS5LYz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5TKCJhIix7ImFyaWEtaGFzcG9wdXAiOiJ0cnVlIn0pO2EuY2xhc3NOYW1lPSJWSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQiO18ubmwoYSwiIyIpO3RoaXMuST10aGlzLmguUygiU1BBTiIpO2EuYXBwZW5kQ2hpbGQodGhpcy5JKTthLmFwcGVuZENoaWxkKHRoaXMuaC5TKCJJTUciLHtzcmM6Q3EsYWx0OiIiLHdpZHRoOjEsaGVpZ2h0OjF9KSk7YS5hcHBlbmRDaGlsZCh0aGlzLmguUygiU1BBTiIse3N0eWxlOiJib3JkZXItbGVmdDoxcHggc29saWQgI2JiYiJ9LCJcdTIwMGIiKSk7YS5hcHBlbmRDaGlsZCh0aGlzLmguUygiSU1HIix7c3JjOkNxLGFsdDoiIix3aWR0aDoxLGhlaWdodDoxfSkpO3RoaXMuUD10aGlzLmguUygic3BhbiIse3N0eWxlOiJjb2xvcjojNzY3Njc2IiwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sIlx1MjViYyIpO2EuYXBwZW5kQ2hpbGQodGhpcy5QKTt0aGlzLk9hKGEpfTsKXy5tLmtlPWZ1bmN0aW9uKCl7Xy5oaih0aGlzLlAsImNvbG9yIiwiIzliOWI5YiIpfTtfLm0ubGU9ZnVuY3Rpb24oKXtfLmhqKHRoaXMuUCwiY29sb3IiLCIjZDVkNWQ1Iil9O18ubS5zYT1mdW5jdGlvbigpe0F2LnByb3RvdHlwZS5zYS5jYWxsKHRoaXMpO3RoaXMuUD10aGlzLkk9bnVsbH07Xy5tLm1lPWZ1bmN0aW9uKCl7dGhpcy5oLlNiKHRoaXMuSSx0aGlzLkFjKHRoaXMubyl8fCIiKX07Xy5tLm5iPWZ1bmN0aW9uKGEpe3RoaXMudWMuY2FsbCh0aGlzLGEpfTt2YXIgRnY9ZnVuY3Rpb24oYSxiKXtBdi5jYWxsKHRoaXMsYSxiKTt0aGlzLmcucGQ9ITF9O18uQihGdixBdik7CkZ2LnByb3RvdHlwZS5LYz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5jcmVhdGVFbGVtZW50KCJkaXYiKTthLmNsYXNzTmFtZT0iVklwZ0pkLVpWaTlvZC1MZ2JzU2UiO3ZhciBiPXRoaXMuaC5TKCJESVYiLHtzdHlsZToiYmFja2dyb3VuZDogdXJsKCIrd3ErIikgcmVwZWF0LXggMCAtMzlweCJ9KTthLmFwcGVuZENoaWxkKGIpO3RoaXMuST10aGlzLmguY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7Yi5hcHBlbmRDaGlsZCh0aGlzLkkpO3RoaXMuT2EoYSl9O0Z2LnByb3RvdHlwZS5zYT1mdW5jdGlvbigpe0F2LnByb3RvdHlwZS5zYS5jYWxsKHRoaXMpO3RoaXMuST1udWxsfTtGdi5wcm90b3R5cGUucWY9ZnVuY3Rpb24oYSl7dGhpcy5jYihhLmN1cnJlbnRUYXJnZXQudmFsdWUpO3RoaXMuZGlzcGF0Y2hFdmVudCgiY2hhbmdlIik7dGhpcy5SYygpfTt2YXIgR3Y9ZnVuY3Rpb24oYSxiKXt4bi5jYWxsKHRoaXMsYik7dGhpcy5nPWEmJkpsKGEpfHx7fTt0aGlzLmo9bmV3IF8uSGIodGhpcyl9O18uRyhHdix4bik7dmFyIEh2PXt6azowLEtqOjEsaGs6Mn07Xy5tPUd2LnByb3RvdHlwZTsKXy5tLlM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmguY3JlYXRlRWxlbWVudCgiZGl2Iik7TnQoYSwic2tpcHRyYW5zbGF0ZSIpO050KGEsImdvb2ctdGUtZ2FkZ2V0Iik7YS5kaXI9Xy54Zi50ZXN0KG9xKT8icnRsIjoibHRyIjttcChhLCExKTtpZih0aGlzLmcubGF5b3V0PT0yKWltKGEsUXUoe2lkOlModGhpcywidGFyZ2V0TGFuZ3VhZ2UiKSxTZjoiIixSZjoiIn0pKTtlbHNle3ZhciBiPW5ldyB0bztpZihzcChfLlNjJiYhc28oKSkpdmFyIGM9IjxzcGFuIHN0eWxlPVwiZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2hlaWdodDoxNXB4OyB3aWR0aDo1MXB4O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGFJbWFnZUxvYWRlciggc3JjPSciK1N0cmluZyhGcSkucmVwbGFjZShScCxHcCkrIicsc2l6aW5nTWV0aG9kPSdzY2FsZScpO1wiPjwvc3Bhbj4iO2Vsc2UgYz1ocy53ZCxjPSc8aW1nIHNyYz0iJytQKFdwKEZxKSkrCiciIHdpZHRoPSIzN3B4IiBoZWlnaHQ9IjE0cHgiIHN0eWxlPSJwYWRkaW5nLXJpZ2h0OiAzcHgiIGFsdD0iR29vZ2xlICcrUChjKSsnIj4nO3ZhciBkPWhzLndkO3ZhciBlPSgwLF8udGwpKCc8c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6bm93cmFwIj48YSBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZCIpKyciIGhyZWY9IicrUChVcChHcSkpKyciIHRhcmdldD0iX2JsYW5rIj4nK2MrS3AoZCkrIjwvYT48L3NwYW4+Iik7Yz1iLmZvcm1hdDtkPVI7dmFyIGY9ZC56ZztlPWUuVGIoKTtlPXVvKGIse3R5cGU6Imh0bWwiLHhmOl8ua2ooZSkudG9TdHJpbmcoKX0pO2I9Yy5jYWxsKGIsZi5jYWxsKGQsZSkpO2ltKGEsUXUoe2lkOlModGhpcywidGFyZ2V0TGFuZ3VhZ2UiKSxTZjoiIixSZjp0aGlzLmcubGF5b3V0PT0xP1JsKFsiXHUwMGEwIiwiXHUwMGEwIixiXSk6Yn0pKX10aGlzLk9hKGEpfTsKXy5tLkxhPWZ1bmN0aW9uKCl7R3YuZWEuTGEuY2FsbCh0aGlzKTt0aGlzLmw9dGhpcy5nLmxheW91dD09Mj9uZXcgRXYobnVsbCx0aGlzLmgpOm5ldyB6dih0aGlzLmgpO3RoaXMuai5OKHRoaXMubCwiY2hhbmdlIixwcih0aGlzLCJjaGdfdGd0X2xhbmciKSk7dGhpcy5qLk4odGhpcy5sLCJsb2FkIix0aGlzLnJnKTt2YXIgYT10aGlzLmguSChTKHRoaXMsInRhcmdldExhbmd1YWdlIikpO2lmKHRoaXMuZy5sYXlvdXQ9PTIpe3ZhciBiPXRoaXMuaC5TKCJJTUciLHtzcmM6Q3EsImNsYXNzIjoiZ29vZy10ZS1nYWRnZXQtaWNvbiIsYWx0OiIifSk7Yi5zdHlsZS5iYWNrZ3JvdW5kSW1hZ2U9InVybCgiK3hxKyIpIjtiLnN0eWxlLmJhY2tncm91bmRQb3NpdGlvbj0iLTY1cHggMHB4Ijt2YXIgYz10aGlzLmguUygiU1BBTiIse3N0eWxlOiJ2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlIn0pO2EuYXBwZW5kQ2hpbGQoYik7YS5hcHBlbmRDaGlsZChjKTt0aGlzLmwua2EoYyk7YS5zdHlsZS53aGl0ZVNwYWNlPQoibm93cmFwIjthLmNsYXNzTmFtZT0iZ29vZy10ZS1nYWRnZXQtc2ltcGxlIn1lbHNlIHRoaXMubC5rYShhKSx0aGlzLmcubGF5b3V0PT0xJiYoYS5zdHlsZS5kaXNwbGF5PSJpbmxpbmUiKX07Xy5tLnJnPWZ1bmN0aW9uKCl7aWYodGhpcy5nLmxheW91dD09Mil7dmFyIGE9dGhpcy5sLGI9dGhpcy5oLkgoUyh0aGlzLCJ0YXJnZXRMYW5ndWFnZSIpKTthLkEueWMoYS5ELCJjbGljayIsYS5UZCk7YS5EPWI7YS5BLk4oYS5ELCJjbGljayIsYS5UZCl9dGhpcy5kaXNwYXRjaEV2ZW50KCJsb2FkIil9O18ubS5zYT1mdW5jdGlvbigpe0d2LmVhLnNhLmNhbGwodGhpcyk7dGhpcy5qLmRpc3Bvc2UoKTt0aGlzLmo9bnVsbDt0aGlzLmwuZGlzcG9zZSgpO3RoaXMubD1udWxsfTtfLm0ub2E9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sLk1hKCl9O18ubS5uYT1mdW5jdGlvbihhKXthPT0iIj90aGlzLkwmJnRoaXMubC5uYih0aGlzLkwpOnRoaXMuSSYmdGhpcy5sLm5iKHRoaXMuSSk7dGhpcy5sLmNiKGEpfTsKXy5tLnBhPWZ1bmN0aW9uKGEpe21wKHRoaXMuSCgpLGEpfTtfLm0uUmI9ZnVuY3Rpb24oYSl7dGhpcy5sLlJiKGEpfTtfLm0udWU9ZnVuY3Rpb24oYSxiKXt0aGlzLkw9YTt0aGlzLkk9Yn07dmFyIEl2PWZ1bmN0aW9uKGEsYil7eG4uY2FsbCh0aGlzLGIpO3RoaXMuZz1hJiZKbChhKXx8e307dGhpcy5nLmVifHwodGhpcy5nLmViPUFxKTt0aGlzLmo9bmV3IF8uSGIodGhpcyl9O18uRyhJdix4bik7dmFyIEp2PXtwazoxLHFrOjIsbGo6Myxrajo0fTtfLm09SXYucHJvdG90eXBlO18ubS5TPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5oLmNyZWF0ZUVsZW1lbnQoImRpdiIpO3RoaXMuRz0hMTttcChhLCExKTt2YXIgYj1TKHRoaXMsImNvbnRhaW5lciIpO2I9KDAsXy50bCkoJzxpZnJhbWUgaWQ9IicrUChiKSsnIiBmcmFtZUJvcmRlcj0wIHNyYz0iamF2YXNjcmlwdDpcJ1wnIiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLVNtZlotT0VWbWNkIikrJyBza2lwdHJhbnNsYXRlIiBzdHlsZT0idmlzaWJpbGl0eTp2aXNpYmxlIj48L2lmcmFtZT4nKTtpbShhLGIpO3RoaXMuT2EoYSl9OwpfLm0uTGE9ZnVuY3Rpb24oKXtJdi5lYS5MYS5jYWxsKHRoaXMpO3ZhciBhPV8ueGYudGVzdChvcSk/InJ0bCI6Imx0ciIsYj1fLkxiKHRoaXMuZy5lYiksYz1TKHRoaXMsInRyYW5zbGF0ZSIpLGQ9Q3EsZT14cTt0aGlzLkgoKS5pZD1TKHRoaXMsImZsb2F0Q29udGFpbmVyIik7dmFyIGY9e2lkOnRoaXMuSCgpLmlkLGNsYXNzTmFtZToiZ29vZy10ZS1mdGFiLWZsb2F0In07dGhpcy5IKCkuY2xhc3NOYW1lKz0iIGdvb2ctdGUtZnRhYi1mbG9hdCI7c3dpdGNoKHRoaXMuZy5OYyl7Y2FzZSAyOnZhciBnPSJnb29nLXRlLWZsb2F0LXRvcCI7Zi50b3A9MDtmLnJpZ2h0PTIwO2JyZWFrO2Nhc2UgMzpnPSJnb29nLXRlLWZsb2F0LWJvdHRvbSI7Zi5ib3R0b209MDtmLnJpZ2h0PTIwO2JyZWFrO2Nhc2UgNDpnPSJnb29nLXRlLWZsb2F0LWJvdHRvbSI7Zi5ib3R0b209MDtmLmxlZnQ9MjA7YnJlYWs7ZGVmYXVsdDpnPSJnb29nLXRlLWZsb2F0LXRvcCIsZi50b3A9MCxmLmxlZnQ9MjB9bnAoWm4obmV3IF8ueWYsCmYpLHRoaXMuSCgpKTt0aGlzLkI9dGhpcy5oLkgoUyh0aGlzLCJjb250YWluZXIiKSk7dGhpcy5qLk4odGhpcy5CLCJsb2FkIix0aGlzLnNnKTt0cih0aGlzLkIsKDAsXy55KShmdW5jdGlvbigpe3ZhciBoPXpvKHRoaXMuQiksaz1nLGw9e30sbj1sJiZsLlRlLHE9aHMuSWU7az1WbihXbihWbihfLnlsKCksIjxoZWFkPiIpLE91KGwpKSwnPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGOCI+PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iJytQKHhwKGIpKSsnIicrKG4/JyBub25jZT0iJytQKFlwKG4pKSsnIic6IiIpKyc+PC9oZWFkPjxib2R5IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtU21mWiIpKyIgIitQKGspKyciIHNjcm9sbD0ibm8iIHN0eWxlPSJvdmVyZmxvdzpoaWRkZW4iIGRpcj0iJytQKGEpKyciPjxhIGlkPSInK1AoYykrJyIgaHJlZj0iamF2YXNjcmlwdDp2b2lkKDApIiBjbGFzcz0iJysKUCgiVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCIpKyciPjxpbWcgc3JjPSInK1AoV3AoZCkpKyciIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOnVybCgnK1AoV3AoZSkpKycpO2JhY2tncm91bmQtcG9zaXRpb246LTY1cHggMHB4Ij48c3Bhbj4nK0twKHEpKyI8L3NwYW4+PC9hPjwvYm9keT4iKS5UYigpO2gud3JpdGUoXy5raihrKSk7aC5jbG9zZSgpfSx0aGlzKSl9O18ubS5zZz1mdW5jdGlvbigpe3RoaXMubD0obmV3IF8ucmQoem8odGhpcy5CKSkpLkgoUyh0aGlzLCJ0cmFuc2xhdGUiKSk7dGhpcy5qLk4odGhpcy5sLCJjbGljayIscHIodGhpcywiY2xrX3RyYW5zIikpO21wKHRoaXMuSCgpLCEwKTt2YXIgYT1vcCh0aGlzLmwpO21wKHRoaXMuSCgpLCExKTtxcCh0aGlzLkIsYSk7cXAodGhpcy5IKCksYSk7dGhpcy5kaXNwYXRjaEV2ZW50KCJsb2FkIil9OwpfLm0uc2E9ZnVuY3Rpb24oKXtJdi5lYS5zYS5jYWxsKHRoaXMpO3RoaXMuai5kaXNwb3NlKCk7dGhpcy5qPW51bGw7Xy5BZCh0aGlzLkIpO3RoaXMubD10aGlzLkI9bnVsbH07Xy5tLmlzVmlzaWJsZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkd9O18ubS5wYT1mdW5jdGlvbihhKXt0aGlzLkc9YTttcCh0aGlzLkgoKSxhKX07dmFyIEt2PWZ1bmN0aW9uKGEsYil7eG4uY2FsbCh0aGlzLGIpO3RoaXMuQT1uZXcgXy5IYih0aGlzKTt0aGlzLmc9YSYmSmwoYSl8fHt9O3RoaXMuZy5lYj1BcTt0aGlzLmcud2U9ITE7Xy5oaih0aGlzLmguZy5ib2R5LCJwb3NpdGlvbiIsInJlbGF0aXZlIik7Xy5NaHx8Xy5oaih0aGlzLmguZy5ib2R5LCJtaW5IZWlnaHQiLCIxMDAlIik7Xy5oaih0aGlzLmguZy5kb2N1bWVudEVsZW1lbnQsImhlaWdodCIsIjEwMCUiKTtfLmhqKHRoaXMuaC5nLmJvZHksInRvcCIsIjBweCIpO18uU2MmJih3aW5kb3cuX2Jhbm5lcnF1aXJrZml4bGVmdD0tcGFyc2VJbnQoIjAiK3RoaXMuaC5nLmJvZHkubGVmdE1hcmdpbiwxMCksd2luZG93Ll9iYW5uZXJxdWlya2ZpeHRvcD0tcGFyc2VJbnQoIjAiK3RoaXMuaC5nLmJvZHkudG9wTWFyZ2luLDEwKS00MCl9O18uRyhLdix4bik7Xy5tPUt2LnByb3RvdHlwZTtfLm0ua2E9ZnVuY3Rpb24oKXt0aGlzLnFjKHRoaXMuaC5nLmJvZHkuZmlyc3RDaGlsZCl9OwpfLm0uUz1mdW5jdGlvbigpe3ZhciBhPXRoaXMuaC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0aGlzLkc9ITE7bXAoYSwhMSk7TnQoYSwic2tpcHRyYW5zbGF0ZSIpO3ZhciBiPVModGhpcywiY29udGFpbmVyIik7Yj0oMCxfLnRsKSgnPGlmcmFtZSBpZD0iJytQKGIpKyciIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2QiKSsnIHNraXB0cmFuc2xhdGUiIGZyYW1lQm9yZGVyPTAgc3JjPSIjIiBzdHlsZT0idmlzaWJpbGl0eTp2aXNpYmxlIj48L2lmcmFtZT4nKTtpbShhLGIpO3RoaXMuT2EoYSl9OwpfLm0uTGE9ZnVuY3Rpb24oKXtLdi5lYS5MYS5jYWxsKHRoaXMpO3ZhciBhPV8ueGYudGVzdChvcSk/InJ0bCI6Imx0ciIsYj1fLkxiKHRoaXMuZy5lYiksYz1DcSxkPUdxLGU9RHEsZj14cSxnPVModGhpcywicHJvbXB0U2VjdGlvbiIpLGg9Uyh0aGlzLCJjb25maXJtIiksaz1TKHRoaXMsInByb2dyZXNzU2VjdGlvbiIpLGw9Uyh0aGlzLCJwcm9ncmVzc1ZhbHVlIiksbj16cSxxPVModGhpcywiY2FuY2VsIikscD1TKHRoaXMsImZpbmlzaFNlY3Rpb24iKSxyPVModGhpcywicmVzdG9yZSIpLHQ9Uyh0aGlzLCJlcnJvclNlY3Rpb24iKSxBPVModGhpcywiZXJyb3JDb250ZW50IiksRD1TKHRoaXMsImNsb3NlIiksRT1TKHRoaXMsIm5vQXV0b1BvcHVwIiksYmEsWj1bXTt0aGlzLmcud2UmJloucHVzaChQdSh7aWQ6Uyh0aGlzLCJwcm9tcHRTb3VyY2VMYW5nIil9KSk7Wi5wdXNoKFB1KHtpZDpTKHRoaXMsInByb21wdFRhcmdldExhbmciKX0pKTt2YXIgdmk9bW0oUi5KZy5hcHBseShudWxsLApaKSk7Wj1bXTt0aGlzLmcud2UmJloucHVzaChQdSh7aWQ6Uyh0aGlzLCJmaW5pc2hTb3VyY2VMYW5nIil9KSk7Wi5wdXNoKFB1KHtpZDpTKHRoaXMsImZpbmlzaFRhcmdldExhbmciKX0pKTt2YXIgd2k9bW0oUi5EZy5hcHBseShudWxsLFopKTt0aGlzLmcuY2cmJihiYT10aGlzLmcuY2cpO3RoaXMuQj10aGlzLmguSChTKHRoaXMsImNvbnRhaW5lciIpKTt0aGlzLkEuTih0aGlzLkIsImxvYWQiLHRoaXMudGcpO3RyKHRoaXMuQiwoMCxfLnkpKGZ1bmN0aW9uKCl7dmFyIGFnPXpvKHRoaXMuQiksWGM9YmEsTGQ9e30sRGU9TGQmJkxkLlRlLEVlPWhzLndkLHhpPWhzLkllLGJnPWhzLkVnLHlpPWhzLm1nLHppPWhzLkFnLGNnPWhzLkFlLEFpPWhzLkFlO1hjPVZuKFduKFZuKF8ueWwoKSwiPGhlYWQ+IiksT3UoTGQpKSwnPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGOCI+PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iJysKUCh4cChiKSkrJyInKyhEZT8nIG5vbmNlPSInK1AoWXAoRGUpKSsnIic6IiIpKyc+PC9oZWFkPjxib2R5IGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYiIpKyciIHNjcm9sbD0ibm8iIGJvcmRlcj0wIGRpcj0iJytQKGEpKyciPjx0YWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTAgd2lkdGg9MTAwJSBoZWlnaHQ9MTAwJT48dHIgdmFsaWduPW1pZGRsZT48dGQgd2lkdGg9MSBub3dyYXA+PGEgaHJlZj0iJytQKFVwKGQpKSsnIiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZCIpKyciIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iJytQKFdwKGUpKSsnIiBhbHQ9Ikdvb2dsZSAnK1AoRWUpKyciPjwvYT48L3RkPicrKHNwKFhjKT8nPHRkIHdpZHRoPTE+PGltZyBzcmM9IicrUChXcChjKSkrJyIgd2lkdGg9IjkiIGhlaWdodD0iMTUiIHRpdGxlPSInK1AoWGMpKyciIGFsdD0iJytQKFhjKSsnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJysKUChXcChmKSkrJyk7YmFja2dyb3VuZC1wb3NpdGlvbjotNTZweCAwcHg7bWFyZ2luOjAgNHB4Ij48L3RkPic6IiIpKyc8dGQgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZSIpKyciPjwvdGQ+PHRkPjx0YWJsZSBib3JkZXI9MCBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTAgaGVpZ2h0PTEwMCU+PHRyIGlkPSInK1AoZykrJyIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgdmFsaWduPW1pZGRsZT48dGQgbm93cmFwPjxzcGFuIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMiKSsnIj4nK0twKHZpKSsnPC9zcGFuPjwvdGQ+PHRkIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1LRTZ2cWUiKSsnIj48L3RkPjx0ZCBub3dyYXA+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLUxnYnNTZSIpKyciPjxkaXY+PGJ1dHRvbiBpZD0iJytQKGgpKyciPjxiPicrS3AoeGkpKyc8L2I+PC9idXR0b24+PC9kaXY+PC9kaXY+PC90ZD48dGQgY2xhc3M9IicrClAoIlZJcGdKZC1aVmk5b2QtT1JIYi1LRTZ2cWUiKSsnIj48L3RkPjx0ZCBub3dyYXA+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLUxnYnNTZSIpKyciPjxkaXY+PGJ1dHRvbiBpZD0iJytQKEUpKyciPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjwvdGQ+PC90cj48dHIgaWQ9IicrUChrKSsnIiBzdHlsZT0iZGlzcGxheTpub25lIiB2YWxpZ249bWlkZGxlPjx0ZD48c3BhbiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItYk45N1BjIikrJyI+JytLcChiZykrJyZuYnNwOzxzcGFuIGRpcj0ibHRyIj4oPGIgaWQ9IicrUChsKSsnIj48L2I+JSk8L3NwYW4+Jm5ic3A7PGltZyBzcmM9IicrUChXcChuKSkrJyI+PC9zcGFuPjwvdGQ+PHRkIGNsYXNzPSInK1AoIlZJcGdKZC1aVmk5b2QtT1JIYi1LRTZ2cWUiKSsnIj48L3RkPjx0ZCBub3dyYXA+PGRpdiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLUxnYnNTZSIpKyciPjxkaXY+PGJ1dHRvbiBpZD0iJytQKHEpKyciPicrS3AoeWkpKwonPC9idXR0b24+PC9kaXY+PC9kaXY+PC90ZD48L3RyPjx0ciBpZD0iJytQKHApKyciIHN0eWxlPSJkaXNwbGF5Om5vbmUiPjx0ZD48c3BhbiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItYk45N1BjIikrJyI+JytLcCh3aSkrJzwvc3Bhbj48L3RkPjx0ZCBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItS0U2dnFlIikrJyI+PC90ZD48dGQgbm93cmFwPjxkaXYgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1MZ2JzU2UiKSsnIj48ZGl2PjxidXR0b24gaWQ9IicrUChyKSsnIj4nK0twKHppKSsnPC9idXR0b24+PC9kaXY+PC9kaXY+PC90ZD48L3RyPjx0ciBpZD0iJytQKHQpKyciIHN0eWxlPSJkaXNwbGF5Om5vbmUiIHZhbGlnbj1taWRkbGU+PHRkPjxzcGFuIGlkPSInK1AoQSkrJyIgY2xhc3M9IicrUCgiVklwZ0pkLVpWaTlvZC1PUkhiLWJOOTdQYyIpKyciPjwvc3Bhbj48L3RkPjwvdHI+PC90YWJsZT48L3RkPjx0ZCBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLU9SSGItS0U2dnFlIikrCiciPjwvdGQ+PHRkIHdpZHRoPTEgaWQ9Im9wdGlvbnMiPjwvdGQ+PHRkIHdpZHRoPTE+PGEgaWQ9IicrUChEKSsnIiBjbGFzcz0iJytQKCJWSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGQiKSsnIiBocmVmPSIjIiB0aXRsZT0iJytQKGNnKSsnIj48aW1nIHNyYz0iJytQKFdwKGMpKSsnIiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGFsdD0iJytQKEFpKSsnIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTp1cmwoJytQKFdwKGYpKSsnKTtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yOHB4IDBweCI+PC9hPjwvdGQ+PC90cj48L3RhYmxlPjwvYm9keT4nKS5UYigpO2FnLndyaXRlKF8ua2ooWGMpKTthZy5jbG9zZSgpfSx0aGlzKSl9OwpfLm0udGc9ZnVuY3Rpb24oKXt0aGlzLmo9bmV3IF8ucmQoem8odGhpcy5CKSk7THYodGhpcyxSLkNlKTtpZih0aGlzLmcuZWI9PUFxKXt2YXIgYT0idXJsKCIrd3ErIikiO18uaGoodGhpcy5qLmcuYm9keSwiYmFja2dyb3VuZEltYWdlIixhKTtmb3IodmFyIGI9dGhpcy5qLmcuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJ1dHRvbiIpLGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXS5wYXJlbnROb2RlO18uaGooZCwiYmFja2dyb3VuZEltYWdlIixhKTtfLmhqKGQsImJhY2tncm91bmRSZXBlYXQiLCJyZXBlYXQteCIpO18uaGooZCwiYmFja2dyb3VuZFBvc2l0aW9uIiwiMCAtMzlweCIpfX10aGlzLmcud2UmJih0aGlzLm89bmV3IER2KHRoaXMuZyx0aGlzLmopKTt0aGlzLmw9bmV3IER2KHRoaXMuZyx0aGlzLmopO3RoaXMuRD1uZXcgRnYodGhpcy5nLHRoaXMuaik7dGhpcy5BLk4odGhpcy5qLkgoUyh0aGlzLCJjb25maXJtIikpLCJjbGljayIscHIodGhpcywiY2xrX2NvbmZpcm0iKSk7CnRoaXMuQS5OKHRoaXMuai5IKFModGhpcywiY2FuY2VsIikpLCJjbGljayIscHIodGhpcywiY2xrX2NhbmNlbCIpKTt0aGlzLkEuTih0aGlzLmouSChTKHRoaXMsInJlc3RvcmUiKSksImNsaWNrIixwcih0aGlzLCJjbGtfcmVzdG9yZSIpKTt0aGlzLkEuTih0aGlzLmouSChTKHRoaXMsImNsb3NlIikpLCJjbGljayIscHIodGhpcywiY2xrX2Nsb3NlIikpO3RoaXMuUD10aGlzLmouSChTKHRoaXMsIm5vQXV0b1BvcHVwIikpO3RoaXMuQS5OKHRoaXMuUCwiY2xpY2siLHByKHRoaXMsImNsa19ub19hcCIpKTt0aGlzLm8mJnRoaXMuQS5OKHRoaXMubywiY2hhbmdlIixwcih0aGlzLCJjaGdfc3JjX2xhbmciKSk7dGhpcy5BLk4odGhpcy5sLCJjaGFuZ2UiLHByKHRoaXMsImNoZ190Z3RfbGFuZyIpKTt0aGlzLkEuTih0aGlzLkQsImNoYW5nZSIsdGhpcy5SaCk7YT1uZXcganIoKDAsXy55KSh0aGlzLnVnLHRoaXMpKTt0aGlzLm8mJnRoaXMuQS5OKHRoaXMubywibG9hZCIsYS5yZWdpc3RlcigpKTsKdGhpcy5BLk4odGhpcy5sLCJsb2FkIixhLnJlZ2lzdGVyKCkpO3RoaXMuQS5OKHRoaXMuRCwibG9hZCIsYS5yZWdpc3RlcigpKTthLmZpbmlzaCgpO3RoaXMubyYmdGhpcy5vLmthKHRoaXMuai5IKFModGhpcywicHJvbXB0U291cmNlTGFuZyIpKSk7dGhpcy5sLmthKHRoaXMuai5IKFModGhpcywicHJvbXB0VGFyZ2V0TGFuZyIpKSk7dGhpcy5ELmthKHRoaXMuai5IKCJvcHRpb25zIikpfTtfLm0udWc9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLkQsYj1SLnlnO18uemQoYS5JKTthLkkuYXBwZW5kQ2hpbGQoYS5oLmNyZWF0ZVRleHROb2RlKGIrIlx1MDBhMFx1MjViYyIpKTt0aGlzLkQudWMoe3R1cm5fb2ZmX3NpdGU6Ui5HZyxzMToiLS0tIixsZWFybl9tb3JlOlIueGd9KTt0aGlzLmRpc3BhdGNoRXZlbnQoImxvYWQiKX07Xy5tLlJoPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuRC5NYSgpKXtjYXNlICJsZWFybl9tb3JlIjp3aW5kb3cub3BlbihKcSwiX2JsYW5rIik7YnJlYWs7Y2FzZSAidHVybl9vZmZfc2l0ZSI6dGhpcy5kaXNwYXRjaEV2ZW50KCJjbGtfbm9fYXBfc2l0ZSIpfX07Cl8ubS5zYT1mdW5jdGlvbigpe3RoaXMucGEoITEpO0t2LmVhLnNhLmNhbGwodGhpcyk7dGhpcy5BLmRpc3Bvc2UoKTt0aGlzLkE9bnVsbDt0aGlzLm8mJih0aGlzLm8uZGlzcG9zZSgpLHRoaXMubz1udWxsKTt0aGlzLmwuZGlzcG9zZSgpO3RoaXMubD1udWxsO3RoaXMuRC5kaXNwb3NlKCk7dGhpcy5EPW51bGw7Xy5BZCh0aGlzLkIpO3RoaXMuYWM9dGhpcy5qPW51bGx9O18ubS5KYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm8/dGhpcy5vLk1hKCk6IiJ9O18ubS5vYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmwuTWEoKX07Xy5tLk5hPWZ1bmN0aW9uKGEpe3RoaXMubyYmdGhpcy5vLmNiKGEpO3RoaXMuVCYmdGhpcy5UW2FdJiZ0aGlzLmouU2IodGhpcy5QLFIuRmcodGhpcy5UW2FdKSl9O18ubS5uYT1mdW5jdGlvbihhKXt0aGlzLmwuY2IoYSl9Owp2YXIgTXY9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYS5hYyE9Yil7YS5hYz1iO2lmKGI9PTApe2EubyYmeXYoYS5vLGEuai5IKFMoYSwicHJvbXB0U291cmNlTGFuZyIpKSk7aWYoYS5MKXt2YXIgZT1hLm9hKCk7YS5sLm5iKGEuTCk7YS5uYShlKX15dihhLmwsYS5qLkgoUyhhLCJwcm9tcHRUYXJnZXRMYW5nIikpKX1lbHNlIGI9PTImJihhLm8mJnl2KGEubyxhLmouSChTKGEsImZpbmlzaFNvdXJjZUxhbmciKSkpLGEuSSYmKGU9YS5vYSgpLGEubC5uYihhLkkpLGEubmEoZSkpLHl2KGEubCxhLmouSChTKGEsImZpbmlzaFRhcmdldExhbmciKSkpKTtlPXt9O2VbLTFdPWEuai5IKFMoYSwiZXJyb3JTZWN0aW9uIikpO2VbMF09YS5qLkgoUyhhLCJwcm9tcHRTZWN0aW9uIikpO2VbMV09YS5qLkgoUyhhLCJwcm9ncmVzc1NlY3Rpb24iKSk7ZVsyXT1hLmouSChTKGEsImZpbmlzaFNlY3Rpb24iKSk7Zm9yKHZhciBmIGluIGUpZVtmXSE9PU9iamVjdC5wcm90b3R5cGVbZl0mJm1wKGVbZl0sZj09CmIpfWMmJmEucGEoITApO2EuUC5wYXJlbnROb2RlLnBhcmVudE5vZGUuc3R5bGUuZGlzcGxheT1kPyJibG9jayI6Im5vbmUifTtLdi5wcm90b3R5cGUuaXNWaXNpYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuR307Ckt2LnByb3RvdHlwZS5wYT1mdW5jdGlvbihhKXtpZih0aGlzLkchPWEpe3RoaXMuRz1hO2lmKF8uU2MpdmFyIGI9cGFyc2VJbnQoIjAiK3RoaXMuaC5nLmJvZHkubGVmdE1hcmdpbiwxMCksYz1wYXJzZUludCgiMCIrdGhpcy5oLmcuYm9keS50b3BNYXJnaW4sMTApO3ZhciBkPXRoaXMuaC5nLmNvbXBhdE1vZGU9PSJCYWNrQ29tcGF0IjthPyhfLmhqKHRoaXMuaC5nLmJvZHksInRvcCIsIjQwcHgiKSxtcCh0aGlzLkgoKSwhMCksXy5TYyYmKHNvKCk/KHdpbmRvdy5fYmFubmVycXVpcmtmaXhsZWZ0PXdpbmRvdy5fYmFubmVycXVpcmtmaXh0b3A9MCxkJiYodGhpcy5oLmcuYm9keS50b3BNYXJnaW49Yys0MCkpOmQ/KHRoaXMuaC5nLmJvZHkudG9wTWFyZ2luPWMrNDAsd2luZG93Ll9iYW5uZXJxdWlya2ZpeGxlZnQ9d2luZG93Ll9iYW5uZXJxdWlya2ZpeHRvcD0wKTood2luZG93Ll9iYW5uZXJxdWlya2ZpeGxlZnQ9LWIsd2luZG93Ll9iYW5uZXJxdWlya2ZpeHRvcD0tYy00MCkpKTooXy5oaih0aGlzLmguZy5ib2R5LAoidG9wIiwiMHB4IiksbXAodGhpcy5IKCksITEpLGQmJmM+PTQwJiYodGhpcy5oLmcuYm9keS50b3BNYXJnaW49Yy00MCkpfX07dmFyIE52PWZ1bmN0aW9uKGEsYil7YS5qLlNiKGEuai5IKFMoYSwicHJvZ3Jlc3NWYWx1ZSIpKSxiKX0sTHY9ZnVuY3Rpb24oYSxiKXthLmouU2IoYS5qLkgoUyhhLCJlcnJvckNvbnRlbnQiKSksYil9O0t2LnByb3RvdHlwZS51ZT1mdW5jdGlvbihhLGIpe3RoaXMuTD1hO3RoaXMuST1iO3RoaXMubC5uYihhKX07dmFyIFB2PWZ1bmN0aW9uKGEsYil7Xy51LmNhbGwodGhpcyk7Xy5vYyhhKT09InN0cmluZyImJihiPWEsYT17fSk7Xy5vYyhiKT09InN0cmluZyImJihiPWduKFN0cmluZyhiKSkpO3RoaXMuVD1iO3RoaXMuQT1uZXcgXy5IYih0aGlzKTt0aGlzLmxhPXZvaWQgMDthPU9iamVjdChhKTt0aGlzLm89ImF1dG8iOyEoYj13aW5kb3cucGFyZW50IT13aW5kb3cpJiYoYj0oIXdpbmRvdy5leHRlcm5hbHx8IXdpbmRvdy5leHRlcm5hbC5nb29nbGVUb29sYmFyVmVyc2lvbnx8cGFyc2VGbG9hdCh3aW5kb3cuZXh0ZXJuYWwuZ29vZ2xlVG9vbGJhclZlcnNpb24pPDYuMikmJighd2luZG93Lmd0YkV4dGVybmFsfHwhd2luZG93Lmd0YkV4dGVybmFsLmlzVHJhbnNsYXRlRW5hYmxlZHx8IXdpbmRvdy5ndGJFeHRlcm5hbC5pc1RyYW5zbGF0ZUVuYWJsZWQoKSkpJiYoYj1uYXZpZ2F0b3IuYXBwVmVyc2lvbiYmbmF2aWdhdG9yLmFwcFZlcnNpb24ubWF0Y2goL1xzQ2hyb21lXC8oKFxkKylcLihcZCspXC5bXGRcLl0rKVxzLyksCmI9IShiJiZiWzJdJiZiWzNdJiZOdW1iZXIoYlsyXSkqMUUzK051bWJlcihiWzNdKT49NDAwMSkpO3RoaXMuZz17RWQ6YixoZjohMSxGZDpudWxsLEVjOm51bGwsWGQ6W10sY2Y6W10sZGg6ITEsUGI6ITEsYXBpS2V5OiIiLGxheW91dDowLFZlOiExfTt0aGlzLklhPXtlYjpBcSxjZzp2cT09Imh0dHBzOi8vIj9SLkNnOm51bGx9O3RoaXMuUD17ZWI6QXEsTmM6bnVsbH07YSYmKCJhdXRvRGlzcGxheSJpbiBhJiYodGhpcy5nLkVkPXRoaXMuZy5FZCYmISFhLmF1dG9EaXNwbGF5KSwibXVsdGlsYW5ndWFnZVBhZ2UiaW4gYSYmKHRoaXMuZy5QYj0hIWEubXVsdGlsYW5ndWFnZVBhZ2UpLCJsYXlvdXQiaW4gYSYmKHRoaXMuZy5sYXlvdXQ9YS5sYXlvdXQpLGEucGFnZUxhbmd1YWdlJiYodGhpcy5nLmRkPXFyKGEucGFnZUxhbmd1YWdlKSksYS5pbmNsdWRlZExhbmd1YWdlcyYmKHRoaXMuZy5YZD1hLmluY2x1ZGVkTGFuZ3VhZ2VzLnNwbGl0KCIsIikpLGEuZXhjbHVkZWRMYW5ndWFnZXMmJgoodGhpcy5nLmNmPWEuZXhjbHVkZWRMYW5ndWFnZXMuc3BsaXQoIiwiKSksYS5yZW1vdGVBcGlQcm94eUhhbmRsZXJzJiYodGhpcy5sYT1hLnJlbW90ZUFwaVByb3h5SGFuZGxlcnMpLHRoaXMuZy5kZCYmKHRoaXMubz10aGlzLmcuZGQpLGEua2V5JiYodGhpcy5nLmFwaUtleT1hLmtleSksdGhpcy5QLk5jPU51bWJlcihhLmZsb2F0UG9zaXRpb24pfHx0aGlzLlAuTmMsImRpc2FibGVBdXRvVHJhbnNsYXRpb24iaW4gYSYmKHRoaXMuZy5WZT0hIWEuZGlzYWJsZUF1dG9UcmFuc2xhdGlvbikpOyF0aGlzLmcuVmUmJk92KHRoaXMpJiYodGhpcy5nLmhmPSEwKTt0aGlzLkM9e307aWYoKGE9ZG9jdW1lbnQuY29va2llLm1hdGNoKC8oXnw7IClnb29ndHJhbnNvcHQ9KC4qPykoO3wkKS8pKSYmYVsyXSlmb3IodGhpcy5DPXt9LGE9Xy5EYihhWzJdKS5zcGxpdCgifCIpLGI9MDtiPGEubGVuZ3RoOysrYil7dmFyIGM9YVtiXS5zcGxpdCgiPSIpO2NbMF0mJih0aGlzLkNbY1swXV09Y1sxXSl9dGhpcy53YT0KbmV3IFpzKHthcGlLZXk6dGhpcy5nLmFwaUtleSxoYzoxLHZlOiEwLGdtOkhxfSx7Y2xpZW50OnRxLHU6d2luZG93LmxvY2F0aW9uLmhyZWZ9KTt0aGlzLkY9bmV3IHd2KHZvaWQgMCx0aGlzLndhLHZvaWQgMCx2b2lkIDAsdGhpcy5nLmFwaUtleSx2b2lkIDAsdm9pZCAwLG5ldyBXdSx2b2lkIDAsdm9pZCAwLHRoaXMubGEpO3RoaXMuRz0hMTt0aGlzLkEuTih3aW5kb3csInBhZ2VoaWRlIix0aGlzLmRpc3Bvc2UpO3RoaXMuSz1uZXcganIoKDAsXy55KSh0aGlzLk1oLHRoaXMpKTt0aGlzLkk9bmV3IGpyKCgwLF8ueSkodGhpcy5PaCx0aGlzKSk7dGhpcy5PPW5ldyBscigoMCxfLnkpKHRoaXMua2ksdGhpcykpO3RoaXMuaD1uZXcgS3YodGhpcy5JYSk7dGhpcy5GLnpjKHRoaXMuSy5yZWdpc3RlcigoMCxfLnkpKHRoaXMuSmgsdGhpcykpLG9xKTt0aGlzLlQ/KHRoaXMubD1uZXcgR3YodGhpcy5nKSx0aGlzLkEuTih0aGlzLmwsImxvYWQiLHRoaXMuSy5yZWdpc3RlcigpKSx0aGlzLkEuTih0aGlzLmwsCiJjaGdfdGd0X2xhbmciLG1yKHRoaXMuTyx0aGlzLkkuZGVsYXkoKDAsXy55KSh0aGlzLkloLHRoaXMpKSkpLHRoaXMubC5rYSh0aGlzLlQpKTp0aGlzLlAuTmMmJih0aGlzLkI9bmV3IEl2KHRoaXMuUCksdGhpcy5BLk4odGhpcy5CLCJsb2FkIix0aGlzLksucmVnaXN0ZXIoKSksdGhpcy5BLk4odGhpcy5CLCJjbGtfdHJhbnMiLG1yKHRoaXMuTyx0aGlzLkkuZGVsYXkoKDAsXy55KSh0aGlzLkdoLHRoaXMpKSkpLHRoaXMuQi5rYSgpKTshdGhpcy5nLmRkJiZ0aGlzLmcuZGgmJnRoaXMuRi5QYyh0aGlzLksucmVnaXN0ZXIoKDAsXy55KSh0aGlzLkVoLHRoaXMpKSk7dGhpcy5LLmZpbmlzaCgpfTtfLkIoUHYsXy51KTsKdmFyIE92PWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZixnKXtpZihmPV8uRGIoZikubWF0Y2goIl5cXCgoKFthLXpBLVpcXC1fXSopXFx8KT8oW2EtekEtWlxcLV9dKilcXCl8Xi8oKFthLXpBLVpcXC1fXSopLyk/KFthLXpBLVpcXC1fXSopIikpe2lmKGZbM10pcmV0dXJuIGcuZy5GZD1mWzJdLGcuZy5FYz1mWzNdLCEwO2lmKGZbNl0pcmV0dXJuIGcuZy5GZD1mWzVdLGcuZy5FYz1mWzZdLCEwfXJldHVybiExfXZhciBjPXt1cmw6ZnVuY3Rpb24oKXt2YXIgZj13aW5kb3cubG9jYXRpb24uaHJlZi5tYXRjaCgvIy4qZ29vZ3RyYW5zKC4qKS8pO3JldHVybiBmJiZmWzFdfSxjb29raWU6ZnVuY3Rpb24oKXt2YXIgZj1kb2N1bWVudC5jb29raWUubWF0Y2goLyhefDsgKWdvb2d0cmFucz0oLio/KSg7fCQpLyk7cmV0dXJuIGYmJmZbMl19fSxkO2ZvcihkIGluIGMpaWYoY1tkXSE9PU9iamVjdC5wcm90b3R5cGVbZF0pe3ZhciBlPWNbZF0oKTtpZihlJiZiKGUsYSkpcmV0dXJuIGR9cmV0dXJuIiJ9LApRdj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUuc3BsaXQoIi4iKTtjLmxlbmd0aD4yOyljLnNoaWZ0KCk7Yz0iO2RvbWFpbj0iK2Muam9pbigiLiIpO2IhPW51bGw/YT1hKyI9IitiOihiPW5ldyBEYXRlLGIuc2V0VGltZShiLmdldFRpbWUoKS0xKSxhPWErIj1ub25lO2V4cGlyZXM9IitiLnRvR01UU3RyaW5nKCkpO2ErPSI7cGF0aD0vIjtkb2N1bWVudC5jb29raWU9YTt0cnl7ZG9jdW1lbnQuY29va2llPWErY31jYXRjaChkKXt9fSxSdj1mdW5jdGlvbihhLGIpe3ZhciBjPW51bGw7YiE9PXZvaWQgMCYmKGM9YSE9PXZvaWQgMD8iLyIrYSsiLyIrYjoiLyIrYik7UXYoImdvb2d0cmFucyIsYyl9O18ubT1Qdi5wcm90b3R5cGU7Cl8ubS5KaD1mdW5jdGlvbihhKXt0aGlzLmo9cXIob3EpO2E9YXx8e307dmFyIGI9YS50YXJnZXRMYW5ndWFnZXN8fFtdO3RoaXMuTD17c2w6V20oYS5zb3VyY2VMYW5ndWFnZXN8fFtdKSx0bDpXbShiKX07dGhpcy5EPXt9O3RoaXMuUj17fTthPSF0aGlzLmcuWGQubGVuZ3RoO2I9aXIodGhpcy5nLlhkKTt2YXIgYz1pcih0aGlzLmcuY2YpO3RoaXMuRFtvcV09IiI7dGhpcy5SW29xXT0iIjtmb3IodmFyIGQgaW4gdGhpcy5MLnRsKXRoaXMuTC50bFtkXT09PU9iamVjdC5wcm90b3R5cGVbZF18fCEoYXx8ZCBpbiBiKXx8ZCBpbiBjfHwodGhpcy5SW2RdPXRoaXMuTC50bFtkXSxkPT10aGlzLmcuZGQmJiF0aGlzLmcuUGIpfHwodGhpcy5EW2RdPXRoaXMuTC50bFtkXSk7dGhpcy5EW29xXXx8ZGVsZXRlIHRoaXMuRFtvcV07dGhpcy5SW29xXXx8ZGVsZXRlIHRoaXMuUltvcV07dGhpcy5yYT1KbCh0aGlzLkwuc2wpfTtfLm0uRWg9ZnVuY3Rpb24oYSl7YSYmKHRoaXMubz1xcihhKSl9OwpfLm0uTWg9ZnVuY3Rpb24oKXtkZWxldGUgdGhpcy5LO2lmKHRoaXMuTCl7dGhpcy5vPXRoaXMub3x8dGhpcy5nLkZkO3RoaXMuaj10aGlzLmcuRWN8fHRoaXMuajt2YXIgYT10aGlzLmcuaGZ8fHRoaXMuZy5FZCYmdGhpcy5vIT10aGlzLmomJiEodGhpcy5vIGluIHNxKSYmdGhpcy5DLm9zIT0iMSImJnRoaXMuQ1sibyIrdGhpcy5vXSE9IjEiO3RoaXMubz09InpoLVRXIiYmKHRoaXMubz0iemgtQ04iKTt0aGlzLnJhW3RoaXMub118fChhPSExLHRoaXMubz0iYXV0byIpO2lmKCF0aGlzLkRbdGhpcy5qXSlpZihhPSExLHRoaXMuRC5lbil0aGlzLmo9ImVuIjtlbHNlIGZvcih2YXIgYiBpbiB0aGlzLkQpaWYodGhpcy5EW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSl7dGhpcy5qPWI7YnJlYWt9aWYodGhpcy5sKXtiPXRoaXMuRDt2YXIgYz17IiI6Ui5CZ30sZDtmb3IoZCBpbiBiKWJbZF0hPT1PYmplY3QucHJvdG90eXBlW2RdJiYoY1tkXT1iW2RdKTt0aGlzLmwudWUoYyx0aGlzLlIpO3RoaXMubC5uYSgiIil9IXFxJiYKYT90aGlzLmcuRWM/bXIodGhpcy5PLHRoaXMuSS5kZWxheSgoMCxfLnkpKHRoaXMub2QsdGhpcywhMCwhMCkpKS5jYWxsKCk6KHRoaXMuRz0hMCxtcih0aGlzLk8sdGhpcy5JLmRlbGF5KCgwLF8ueSkodGhpcy5vZCx0aGlzKSkpLmNhbGwoKSxRbSgidGVfYXAiLHtzbDp0aGlzLm99KSk6KHRoaXMuQiYmdGhpcy5CLnBhKCEwKSx0aGlzLmwmJnRoaXMubC5wYSghMCkpO3dpbmRvdy5nb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UmJnRoaXMuUmIoITEpO3RoaXMuTy5maW5pc2goKX19OwpfLm0uT2g9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmgsYj10aGlzLnJhO2EubyYmYS5vLm5iKGIpO2EuVD1iO3RoaXMuaC51ZSh0aGlzLkQsdGhpcy5SKTt0aGlzLmguTmEodGhpcy5vKTt0aGlzLmgubmEodGhpcy5qKTt0aGlzLkEuTih0aGlzLmgsImNsa19jb25maXJtIix0aGlzLnloKTt0aGlzLkEuTih0aGlzLmgsImNsa19jYW5jZWwiLHRoaXMueGgpO3RoaXMuQS5OKHRoaXMuaCwiY2xrX3Jlc3RvcmUiLHRoaXMuUmQpO3RoaXMuQS5OKHRoaXMuaCwiY2xrX2Nsb3NlIix0aGlzLlFjKTt0aGlzLkEuTih0aGlzLmgsImNsa19ub19hcCIsdGhpcy56aCk7dGhpcy5BLk4odGhpcy5oLCJjbGtfbm9fYXBfc2l0ZSIsdGhpcy5BaCk7dGhpcy5BLk4odGhpcy5oLCJjaGdfc3JjX2xhbmciLHRoaXMubWYpO3RoaXMuQS5OKHRoaXMuaCwiY2hnX3RndF9sYW5nIix0aGlzLm1mKTt0aGlzLmwmJnRoaXMubC5wYSghMCl9OwpfLm0ua2k9ZnVuY3Rpb24oKXt0aGlzLkEuTih0aGlzLmgsImxvYWQiLHRoaXMuSS5yZWdpc3RlcigpKTt0aGlzLmgua2EoKTt0aGlzLkkuZmluaXNoKCl9O18ubS5NPWZ1bmN0aW9uKCl7dGhpcy5GLnJlc3RvcmUoKTtfLnUucHJvdG90eXBlLk0uY2FsbCh0aGlzKTt0aGlzLkYuZGlzcG9zZSgpO3RoaXMuQS5kaXNwb3NlKCk7dGhpcy5BPW51bGw7dGhpcy5oJiZ0aGlzLmguZGlzcG9zZSgpO3RoaXMuaD1udWxsO3RoaXMuQiYmdGhpcy5CLmRpc3Bvc2UoKTt0aGlzLkI9bnVsbDt0aGlzLmwmJnRoaXMubC5kaXNwb3NlKCk7dGhpcy5UPXRoaXMubD1udWxsfTtfLm0ueWg9ZnVuY3Rpb24oKXshdGhpcy5oLmlzVmlzaWJsZSgpfHwhdGhpcy5nLlBiJiZ4cih0aGlzLm8sdGhpcy5oLm9hKCkpfHwodGhpcy5HJiZRbSgidGVfYXB0Iix7c2w6dGhpcy5vfSksU3YodGhpcywhMSksdGhpcy5sJiZ0aGlzLmwubmEodGhpcy5oLm9hKCkpKX07Cl8ubS54aD1mdW5jdGlvbigpe3RoaXMuaC5pc1Zpc2libGUoKSYmKFR2KHRoaXMpLE12KHRoaXMuaCwwKSx0aGlzLmwmJnRoaXMubC5uYSgiIikpfTtfLm0uUmQ9ZnVuY3Rpb24oKXt0aGlzLmguaXNWaXNpYmxlKCkmJihUdih0aGlzKSxNdih0aGlzLmgsMCkpO3RoaXMubCYmdGhpcy5sLm5hKCIiKX07Xy5tLlFjPWZ1bmN0aW9uKCl7dGhpcy5oLmlzVmlzaWJsZSgpJiYodGhpcy5HJiYodGhpcy5HPSExLFFtKCJ0ZV9hcGMiLHtzbDp0aGlzLm99KSksVHYodGhpcyksdGhpcy5oLnBhKCExKSx0aGlzLmwmJnRoaXMubC5uYSgiIiksdGhpcy5CJiZ0aGlzLkIucGEoITApKX07Xy5tLnpoPWZ1bmN0aW9uKCl7dGhpcy5oLmlzVmlzaWJsZSgpJiYodGhpcy5DWyJvIit0aGlzLm9dPSIxIixRbSgidGVfYXByIix7c2w6dGhpcy5vfSksdGhpcy5HPSExLHRoaXMuUWMoKSl9OwpfLm0uQWg9ZnVuY3Rpb24oKXtpZih0aGlzLmguaXNWaXNpYmxlKCkpe3RoaXMuRz0hMTt0aGlzLkMub3M9IjEiO3ZhciBhPW51bGw7aWYodGhpcy5DKXthPVtdO2Zvcih2YXIgYiBpbiB0aGlzLkMpdGhpcy5DW2JdIT09T2JqZWN0LnByb3RvdHlwZVtiXSYmYS5wdXNoKGIrIj0iK3RoaXMuQ1tiXSk7YT1hLmpvaW4oInwiKX1RdigiZ29vZ3RyYW5zb3B0IixhKTt0aGlzLlFjKCl9fTtfLm0ubWY9ZnVuY3Rpb24oKXt0aGlzLmguaXNWaXNpYmxlKCkmJighdGhpcy5nLlBiJiZ4cih0aGlzLm8sdGhpcy5oLm9hKCkpP3RoaXMuUmQoKToodGhpcy5vPXRoaXMuaC5KYSgpfHx0aGlzLm8sdGhpcy5qPXRoaXMuaC5vYSgpLHRoaXMuaC5hYz09MiYmKHRoaXMubCYmdGhpcy5sLm5hKHRoaXMuaC5vYSgpKSxTdih0aGlzKSkpKX07Xy5tLm9kPWZ1bmN0aW9uKGEsYil7dGhpcy5oLmlzVmlzaWJsZSgpfHwodGhpcy5CJiZ0aGlzLkIucGEoITEpLGE/U3YodGhpcyxiKTpNdih0aGlzLmgsMCwhMCx0aGlzLkcpKX07Cl8ubS5SaT1mdW5jdGlvbihhLGIpe21yKHRoaXMuTyx0aGlzLkkuZGVsYXkoKDAsXy55KSh0aGlzLm9kLHRoaXMsYSxiKSkpLmNhbGwoKX07Xy5tLkdoPWZ1bmN0aW9uKCl7dGhpcy5vZCh0aGlzLmguYWM9PTIpfTtfLm0uSWg9ZnVuY3Rpb24oKXt0aGlzLmwub2EoKT8hdGhpcy5nLlBiJiZ4cih0aGlzLm8sdGhpcy5oLm9hKCkpP3RoaXMuUmQoKToodGhpcy5qPXRoaXMubC5vYSgpLHRoaXMuaC5uYSh0aGlzLmopLFN2KHRoaXMpKTp0aGlzLmwubmEodGhpcy5qKX07CnZhciBTdj1mdW5jdGlvbihhLGIpe2lmKHdpbmRvdy5nb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UpdHJ5e3dpbmRvdy5nb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UuZ2V0SW5zdGFuY2UoKS5yZXN0b3JlKCl9Y2F0Y2goYyl7fVJ2KGEubyxhLmopO2EuRz0hMTshYiYmYS5vIGluIHNxJiZRbSgidGVfYXBlIix7c2w6YS5vfSk7TnYoYS5oLDApO012KGEuaCwxLCEwKTthLkYuWWYoISFiKTt3aW5kb3cuc2V0VGltZW91dCgoMCxfLnkpKGEuRi5xZCxhLkYsYS5nLlBiPyJhdXRvIjphLm8sYS5qLCgwLF8ueSkoYS5mYixhKSx2b2lkIDAsdm9pZCAwKSwwKX07ClB2LnByb3RvdHlwZS5mYj1mdW5jdGlvbihhLGIsYyl7dHlwZW9mIHRoaXMuZ2I9PSJmdW5jdGlvbiImJnRoaXMuZ2IoKTt0aGlzLmguaXNWaXNpYmxlKCkmJnRoaXMuaC5hYz09MSYmKGM/KFR2KHRoaXMpLE12KHRoaXMuaCwtMSwhMCksYz09Mj9Mdih0aGlzLmgsUi53Zyk6THYodGhpcy5oLFIuQ2UpKTooTnYodGhpcy5oLGEpLGImJih0aGlzLmwmJnRoaXMubC5uYSh0aGlzLmopLHRoaXMuaC5OYSh0aGlzLm8pLE12KHRoaXMuaCwyKSkpKX07dmFyIFR2PWZ1bmN0aW9uKGEpe1J2KCk7d2luZG93LnNldFRpbWVvdXQoKDAsXy55KShhLkYucmVzdG9yZSxhLkYsbnVsbCksMCl9O1B2LnByb3RvdHlwZS5SYj1mdW5jdGlvbihhKXthfHx0aGlzLlFjKCk7dGhpcy5sJiZ0aGlzLmwuUmIoYSk7dGhpcy5CJiZ0aGlzLkIucGEoYSl9O3ZhciB6bj1mdW5jdGlvbihhKXtpZihhJiYoYT1TdHJpbmcoYSksYT1hLnNwbGl0KCIuIiksYS5sZW5ndGgpKXtmb3IodmFyIGI9d2luZG93LGM9MDtjPGEubGVuZ3RoOysrYyl7dmFyIGQ9YVtjXTtpZighKGQmJmQgaW4gYikpcmV0dXJuO2I9YltkXX1yZXR1cm4gYn19O3ZhciBVdj1udWxsLFZ2PWZ1bmN0aW9uKGEpe2lmKCFVdil7dmFyIGIsYyxkLGU7YSYmKCJrZXkiaW4gYSYmKGI9YS5rZXkpLCJzZXJ2ZXJQYXJhbXMiaW4gYSYmKGM9YS5zZXJ2ZXJQYXJhbXMpLCJ0aW1lSW5mbyJpbiBhJiYoZD1hLnRpbWVJbmZvKSwicmVtb3RlQXBpUHJveHlIYW5kbGVycyJpbiBhJiYoZT1hLnJlbW90ZUFwaVByb3h5SGFuZGxlcnMpLChhPXlyKCkpJiYoYz1hKSk7YT0wO2lmKHRxPT0idGVfbGliInx8Xy5XYylhPTM7VXY9bmV3IHd2KHZvaWQgMCxuZXcgWnMoe2FwaUtleTpiLGhjOmEsdmU6ITAsdHJhY2tWaXNpYmlsaXR5OmM9PSJ0dmlzIn0pLHZvaWQgMCx2b2lkIDAsYixjLGQsdm9pZCAwLHZvaWQgMCx2b2lkIDAsZSk7VXYuY29uc3RydWN0b3I9ZnVuY3Rpb24oKXt9O1V2LmlzQXZhaWxhYmxlPVV2LlNhO1V2LmdldFN1cHBvcnRlZExhbmd1YWdlcz1Vdi56YztVdi5nZXRQYWdlTGFuZ3VhZ2U9VXYuUGM7VXYuc2V0Q2xpY2tUaHJvdWdoPVV2LllmO1V2LnRyYW5zbGF0ZVBhZ2U9ClV2LnFkO1V2LnJlc3RvcmU9VXYucmVzdG9yZTtVdi5pc1RyYW5zbGF0aW5nPVV2LnBnO1V2LnNldENoZWNrVmlzaWJpbGl0eT1Vdi5QaX1yZXR1cm4gVXZ9O1Z2LmdldEluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIFV2fTt2YXIgV3Y9bnVsbCxYdj1mdW5jdGlvbihhLGIpe1d2fHwoV3Y9bmV3IFB2KGEsYiksV3YuY29uc3RydWN0b3I9ZnVuY3Rpb24oKXt9KTtyZXR1cm4gV3Z9O1h2LmdldEluc3RhbmNlPWZ1bmN0aW9uKCl7cmV0dXJuIFd2fTsKdmFyIFl2PWZ1bmN0aW9uKCl7dmFyIGE9em4oImdvb2dsZS50cmFuc2xhdGUubSIpO2F8fChmcygpLF8ucmMoImdvb2dsZS50cmFuc2xhdGUubSIsUSksYT1RKTtpZihhKWZvcih2YXIgYiBpbiBSKWlmKFJbYl0hPT1PYmplY3QucHJvdG90eXBlW1JbYl1dJiZSW2JdKXt2YXIgYz1SW2JdKCk7UltiXT1hW2NdP2FbY106Z3N9Xy5vaShfLlppKHBxLDEpKSYmKGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSxiLnRleHRDb250ZW50PSJcbiAgLnRyYW5zbGF0ZWQtbHRye1xuICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC50cmFuc2xhdGVkLXJ0bHtcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgIixhPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0sYXx8KGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaGVhZCIpLGM9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LApjLmluc2VydEJlZm9yZShhLGMuZmlyc3RDaGlsZCkpLGEuYXBwZW5kQ2hpbGQoYikpO0JuPT0xPyhfLnJjKCJnb29nbGUudHJhbnNsYXRlLlRyYW5zbGF0ZVNlcnZpY2UiLFZ2KSxRbSgidGVfbGkiKSk6KF8ucmMoImdvb2dsZS50cmFuc2xhdGUuVHJhbnNsYXRlRWxlbWVudCIsWHYpLFB2LnByb3RvdHlwZS5kaXNwb3NlPVB2LnByb3RvdHlwZS5kaXNwb3NlLFB2LnByb3RvdHlwZS5zaG93QmFubmVyPVB2LnByb3RvdHlwZS5SaSxQdi5wcm90b3R5cGUuc2V0RW5hYmxlZD1Qdi5wcm90b3R5cGUuUmIsXy5yYygiZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50LkZsb2F0UG9zaXRpb24iLEp2KSxKdi5UT1BfTEVGVD0xLEp2LlRPUF9SSUdIVD0yLEp2LkJPVFRPTV9SSUdIVD0zLEp2LkJPVFRPTV9MRUZUPTQsXy5yYygiZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50LklubGluZUxheW91dCIsSHYpLEh2LlZFUlRJQ0FMPTAsSHYuSE9SSVpPTlRBTD0xLEh2LlNJTVBMRT0KMik7Q24oKX07CmlmKHdpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5fY29uc3QpWXYoKTtlbHNlIGlmKHdpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUudHJhbnNsYXRlJiZ3aW5kb3cuZ29vZ2xlLnRyYW5zbGF0ZS5fcHJvdG9Db25maWcpe3JxPW5ldyBEYXRlO3ZhciBadj1uZXcgbHEod2luZG93Lmdvb2dsZS50cmFuc2xhdGUuX3Byb3RvQ29uZmlnKTtPbj1fLk4oWnYsMjIpfHwiIjttcT1fLk4oWnYsNil8fCJwcm9kIjtucT1fLk4oWnYsMTIpfHwiIjtvcT1fLk4oWnYsMSl8fCJlbiI7QW49Xy5OKFp2LDIpfHwiIjt2YXIgJHY7KCR2PV8uYmooWnYsanEsMykpJiYocHE9JHYpO18uTihadiw4KTtxcT1fLk0oWnYsMTcpO3NxPXt9O3ZhciBhdzthdz1zbShadiwxOCxfLmFqKCkpO2Zvcih2YXIgYnc9MDtidzxhdy5sZW5ndGg7YncrKylzcVthd1tid11dPSEwO0JuPV8uTihadiw1KT09ImxpYiI/MTowO3RxPShfLk4oWnYsNCl8fCJ0ZSIpKwooQm49PTE/Il9saWIiOiIiKTtmcT1fLk4oWnYsOSl8fCIiO3ZhciBjdzsoY3c9Xy5OKFp2LDEwKSl8fChjdz1fLk4oWnYsMTEpKTt1cT1jd3x8IiI7dnE9Imh0dHBzOi8vIjt2YXIgZHc7ZHc9Xy5OKFp2LDEzKTt2YXIgZXc9dnErKGR3fHwiIikrIi90cmFuc2xhdGVfc3RhdGljLyI7d3E9ZXcrImltZy90ZV9iay5naWYiO3hxPWV3KyJpbWcvdGVfY3RybDMuZ2lmIjt6cT1ldysiaW1nL2xvYWRpbmcuZ2lmIjtBcT1fLk4oWnYsMTQpfHwiIjt5cT1fLk4oWnYsMTUpfHwiIjtCcT1fLk4oWnYsMTYpfHwiIjtDcT0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvY2xlYXJkb3QuZ2lmIjtEcT0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl82OHgyOGRwLnBuZyI7RXE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9wcm9kdWN0LzF4L3RyYW5zbGF0ZV8yNGRwLnBuZyI7RnE9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9icmFuZGluZy9nb29nbGVsb2dvLzF4L2dvb2dsZWxvZ29fY29sb3JfNDJ4MTZkcC5wbmciOwpHcT0iaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlLmNvbSI7S3EoKTtZdigpfTsKXy5tYSgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF90cik7Ci8vIEdvb2dsZSBJbmMuCg=="}},"time_used":91,"timings":{"blocked":-1,"dns":3,"connect":15,"send":0,"wait":16,"receive":28,"ssl":29},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/19891.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.664Z","timestamp":1785159268664,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/19891.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 958\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Sun, 08 May 2022 19:17:08 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 08:33:23 GMT\r\netag: \"c31a8ad908f213778980e620b7a38a95\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 18066\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: AE2cxIXgMyrj7u68jkmTdNo8YVi06bTWkvriFjCsp7pV6em96Ohz0g==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":958,"size_decoded":1453,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"c31a8ad908f213778980e620b7a38a95","sha1":"69c6acd7300eda51040cf03fc3b726a1bddc0d80","sha256":"4a2125caa6fd094e4bb5998fdef721f48100d8394259d2f79cc42a673aceb8a9","sha512":"b3625f5e067acac0628975306f29997c91db3298a37c2e2ed9d30016eb62080b666d6364c91549c6ed97e64f2cd68ba862c90ef5c5eb59893a802a5cdf2981e9","ssdeep":"","tlshash":"ca11c8bbc09e72b5ad344ef34152ef0413480ad4a2212d6c21a194c1560d2ebc7ec706","first_seen":"2025-11-23T13:22:53.396084Z","last_seen":"2026-07-29T06:14:00.440705Z","times_seen":1341,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADhUlEQVR4Xs2aMW5UQRBEfRVOwAk4ARdwTAwZiIyAhBQSLkAIKQEZGUhEBE5IsGQugIRIQY00qPf9mpmePz1//aQKtqe7elzyWrvrvfhzIHceXoZ0JBcsZMIfbK9Wkh4AL5+tbNIC4EWpUThPZTEdAC9W9OnbFVt3c3VzvfHPCmJ3ALxI60LsiUrBnlZvhF0BcLm6AM9nRXiueiIMB9BbyvNskd55j3AAXMRlPFut3u4ooQBofvfJg+rZ0SrYnWpnLboBtEx5di617tRjKIBaXWkV3KP21eqKZgA1Iy6nVsN9am+tTqoBeIPR5/y7zx+dUz7c51Xg34QaMoCaKeu3VbX7KroBqNqsPKw9fvN6079H9Pc1zyYANUDzWXlYywrAxB2+VjhLAEdJ3Z+cBKAaaTqrCJyZkfL0HBLADPQalfLx/A9ANdBsVJnQe0TKo7AsgBVwR1RqvrAJ4Orm+8njPVoJd0Vl2KdUvOO/ANjI2oiOgDsjUrPG2QPg3NWPa3eq4c6I1KwhA+BwVD1UH2vlhVAP7o6Ic8ZJADPmfr6G6mNtdQB+1rhoNYyqh+pjzb8UrnH56vlmd0QFX7vVAWSLO02HBmCwl4/PGsCsRqjNrgxAKTUA0x5+/v618TlK6QGYMqDnKi0JwJQJvTOV+keQyob+o1I+SwMoyvxXOb1HpDwOCYCahX5RqfnUl8JReezx6G+If1s7ooJ/nPpmKCoPax++fnGndegZEecMGQBr2fKwturNkJozUgN4+f6tFPs8rEXeDBnKt6UCa5uPxMrzkQY99aj1shYNwOAdWjLswxZ6bwLwhzRpqUetl7VoACNviQuqlhaAXagH/VWNj2twf0tqppD6j5EInFGKwJmaVL/n8AAyuPfs0WZ3TQVVM04CMFQjTVs6Au6sSfWT9ADUkky4qyU1QzYBGGqA5j2tgDtaUjOKbgA1s6gyoGdPtTmFDMDwg6NfkqppBM5GVZj6klShZsClo1JehZkPRT21OmkGYNSMuHxEyqewNwBPra4YCoCGPItKeRTuv3i66e/J0zpTdAMwaJr1NyFDBT7n/VmLUAAGzbmAZ6vV2x0lHECht4jn2SK98x7DARhcqhbzfFaE56onwq4ADC5vXYI9USnY0+qNsDuAAi9SVL5slUHrU+BZpgMo8GLUKJynskgLoMCLZiub9AA8vPxerWRpAIQ/WE1H8hfLatbVj65uIAAAAABJRU5ErkJggg=="}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/css/bootstrap.min.css","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.894Z","timestamp":1785159267894,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /css/bootstrap.min.css HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"2f3d1-66136805-b046100900045196;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 24592\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nalt-svc: h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\"\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":193489,"size_decoded":25135,"mime_type":"text/css","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (557)","md5":"508bc4568ef3d5929a309f6fc0d889d2","sha1":"731e96aa0b83826b99f57b2f429bd87b9e55e589","sha256":"27016273b4974926f110c27231c5ef148ab36edc2c8c7df31d56b42f3d3007f5","sha512":"c656355ebdc54d0e4ead08a414b06677821784984fd28f55a26d52dad2eff78dca79c5857cf24547771e8f1003da2274b240f52731f47c4223ed469215fb322d","ssdeep":"3072:t3qowbX5X6klWTgNasGUImTWbBaMW9v/g:m5X6klGgNasGUItBaMW9v/g","tlshash":"8214771af5813c4ed05784a8ad95bff9875d0941df2e5e7ab4333a6883c92c609b3dc8","first_seen":"2026-07-27T07:08:39.201207Z","last_seen":"2026-07-27T13:35:41.648491Z","times_seen":3,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsvKiEKICogQm9vdHN0cmFwIHY1LjEuMCAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLykKICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnMKICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUd2l0dGVyLCBJbmMuCiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKQogKi8KCgogLnNwb3AtY29udGFpbmVyIHsKCXotaW5kZXg6IDEwMDAwMDAwMDAwMDAwMDAwMDsKCXBvc2l0aW9uOiBmaXhlZDsgfQoJLnNwb3AtY29udGFpbmVyLAoJLnNwb3AtY29udGFpbmVyICosCgkuc3BvcC1jb250YWluZXIgKjphZnRlciwKCS5zcG9wLWNvbnRhaW5lciAqOmJlZm9yZSB7CgkgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH0KICAKICAuc3BvcC0tdG9wLWxlZnQgewoJdG9wOiAwOwoJbGVmdDogMDsgfQoJLnNwb3AtLXRvcC1sZWZ0IC5zcG9wIHsKCSAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7CgkJICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAwOwoJCQkgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDsgfQogIAogIC5zcG9wLS10b3AtY2VudGVyIHsKCXRvcDogMDsKCWxlZnQ6IDUwJTsKCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CgkJCXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfQoJLnNwb3AtLXRvcC1jZW50ZXIgLnNwb3AgewoJICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOwoJCSAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOwoJCQkgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwOyB9CiAgCiAgLnNwb3AtLXRvcC1yaWdodCB7Cgl0b3A6IDA7CglyaWdodDogMDsgfQoJLnNwb3AtLXRvcC1yaWdodCAuc3BvcCB7CgkgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwOwoJCSAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDsKCQkJICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7IH0KICAKICAuc3BvcC0tY2VudGVyIHsKCXRvcDogNTAlOwoJbGVmdDogNTAlOwoJLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOwoJCQl0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApOyB9Cgkuc3BvcC0tY2VudGVyIC5zcG9wIHsKCSAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKCQkgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsKCQkJICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDsgfQogIAogIC5zcG9wLS1ib3R0b20tbGVmdCB7Cglib3R0b206IDA7CglsZWZ0OiAwOyB9Cgkuc3BvcC0tYm90dG9tLWxlZnQgLnNwb3AgewoJICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTsKCQkgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7CgkJCSAgdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlOyB9CiAgCiAgLnNwb3AtLWJvdHRvbS1jZW50ZXIgewoJYm90dG9tOiA0MDsKCWxlZnQ6IDUwJTsKCS13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwoJCS1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CgkJCXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfQoJLnNwb3AtLWJvdHRvbS1jZW50ZXIgLnNwb3AgewoJICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwoJICAKCSAgPGxpbmsgaHJlZj0ic3BvcC5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CiAKCQoJICA8IS0tIEV2ZW4gYmV0dGVyLCBTYW1hbGxQb3AgaXMgbWFkZSB3aXRoIHNjc3MsCgkgICBAaW1wb3J0IHRvIHlvdXIgc3R5bGUuc2NzcyAtLT4KCgogIDxzY3JpcHQgc3JjPSJzcG9wLmh0bWwiPjwvc2NyaXB0PgogIGFuZCBjYWxsIGl0OgogIAogIERlZmF1bHQgcG9wU3VjY2VzcyBwb3BXYXJuaW5nIHBvcEVycm9yIHBvcAkKc3BvcCgnRGVmYXVsdCBTbWFsbFBvcCcpOwogIAogIHNwb3AoJzxoNCBjbGFzcz0ic3BvcC10aXRsZSI+U3VjY2VzczwvaDQ+ScuIbSBhIHN1Y2Nlc3MgU21hbGxQb3AnLCAnc3VjY2VzcycpOwogIAogIHNwb3AoJ1dhcm5pbmcgU21hbGxQb3AnLCAnd2FybmluZycpOwogIAoJCSAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwoJCQkgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOyB9CiAgCiAgLnNwb3AtLWJvdHRvbS1yaWdodCB7Cglib3R0b206IDA7CglyaWdodDogMDsgfQoJLnNwb3AtLWJvdHRvbS1yaWdodCAuc3BvcCB7CgkgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlOwoJCSAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTsKCQkJICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7IH0KICAKICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7Cgkuc3BvcC0tdG9wLWxlZnQsCgkuc3BvcC0tdG9wLWNlbnRlciwKCS5zcG9wLS10b3AtcmlnaHQsCgkuc3BvcC0tYm90dG9tLWxlZnQsCgkuc3BvcC0tYm90dG9tLWNlbnRlciwKCS5zcG9wLS1ib3R0b20tcmlnaHQgewoJICB0b3A6IGF1dG87CgkgIGJvdHRvbTogOTAlOwoJICBsZWZ0OiAwOwoJICByaWdodDogMDsKCSAgbWFyZ2luLWxlZnQ6IDA7CgkgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOwoJCSAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKCQkJICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH0KCSAgLnNwb3AtLXRvcC1sZWZ0IC5zcG9wLAoJICAuc3BvcC0tdG9wLWNlbnRlciAuc3BvcCwKCSAgLnNwb3AtLXRvcC1yaWdodCAuc3BvcCwKCSAgLnNwb3AtLWJvdHRvbS1sZWZ0IC5zcG9wLAoJICAuc3BvcC0tYm90dG9tLWNlbnRlciAuc3BvcCwKCSAgLnNwb3AtLWJvdHRvbS1yaWdodCAuc3BvcCB7CgkJLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsKCQkJLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOwoJCQkJdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7IH0KCS5zcG9wIHsKCSAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7IH0gfSAKICAKICAuc3BvcCB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CgltaW4taGVpZ2h0OiA1NnB4OwoJbGluZS1oZWlnaHQ6IDEuMjU7Cglmb250LXNpemU6IDE0cHg7Cgktd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKCQkJdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOyB9CiAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHsKCSAgLnNwb3AgewoJCWJvcmRlci1yYWRpdXM6IDJweDsKCQl3aWR0aDogMzIwcHg7CgkJbWFyZ2luOiAwLjdlbTsgfSB9ICAKICAKICAuc3BvcC0taW5mbywKICAuc3BvcC0tZXJyb3IsCiAgLnNwb3AtLXdhcm5pbmcsCiAgLnNwb3AtLXN1Y2Nlc3MgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNDU0QTU2OyB9CiAgCiAgQC13ZWJraXQta2V5ZnJhbWVzIHNwb3BJbiB7CgkwJSB7CgkgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjIsIDAuMik7CgkJCSAgdHJhbnNmb3JtOiBzY2FsZSgwLjIsIDAuMik7IH0KCTk1JSB7CgkgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7CgkJCSAgdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7IH0KCTEwMCUgewoJICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7CgkJCSAgdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTsgfSB9CiAgCiAgQGtleWZyYW1lcyBzcG9wSW4gewoJMCUgewoJICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4yLCAwLjIpOwoJCQkgIHRyYW5zZm9ybTogc2NhbGUoMC4yLCAwLjIpOyB9Cgk5NSUgewoJICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xLCAxLjEpOwoJCQkgIHRyYW5zZm9ybTogc2NhbGUoMS4xLCAxLjEpOyB9CgkxMDAlIHsKCSAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEsIDEpOwoJCQkgIHRyYW5zZm9ybTogc2NhbGUoMSwgMSk7IH0gfQogIAogIEAtd2Via2l0LWtleWZyYW1lcyBzcG9wT3V0IHsKCTAlIHsKCSAgb3BhY2l0eTogMTsKCSAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEsIDEpOwoJCQkgIHRyYW5zZm9ybTogc2NhbGUoMSwgMSk7IH0KCTIwJSB7CgkgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7CgkJCSAgdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7IH0KCTEwMCUgewoJICBvcGFjaXR5OiAwOwoJICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCwgMCk7CgkJCSAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTsgfSB9CiAgCiAgQGtleWZyYW1lcyBzcG9wT3V0IHsKCTAlIHsKCSAgb3BhY2l0eTogMTsKCSAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEsIDEpOwoJCQkgIHRyYW5zZm9ybTogc2NhbGUoMSwgMSk7IH0KCTIwJSB7CgkgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7CgkJCSAgdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDEuMSk7IH0KCTEwMCUgewoJICBvcGFjaXR5OiAwOwoJICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCwgMCk7CgkJCSAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTsgfSB9CiAgCiAgLnNwb3AtLW91dCB7Cgktd2Via2l0LWFuaW1hdGlvbjogc3BvcE91dCAwLjRzIGVhc2UtaW4tb3V0OwoJCQlhbmltYXRpb246IHNwb3BPdXQgMC40cyBlYXNlLWluLW91dDsgfQogIAogIC5zcG9wLS1pbiB7Cgktd2Via2l0LWFuaW1hdGlvbjogc3BvcEluIDAuNHMgZWFzZS1pbi1vdXQ7CgkJCWFuaW1hdGlvbjogc3BvcEluIDAuNHMgZWFzZS1pbi1vdXQ7IH0KICAKICAuc3BvcC1ib2R5IHsKCXBhZGRpbmc6IDEuNGVtOyB9Cgkuc3BvcC1ib2R5IHAgewoJICBtYXJnaW46IDA7IH0KCS5zcG9wLWJvZHkgYSB7CgkgIGNvbG9yOiAjZmZmOwoJICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfQoJICAuc3BvcC1ib2R5IGE6aG92ZXIgewoJCWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7CgkJdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9CiAgCiAgLnNwb3AtdGl0bGUgewoJbWFyZ2luLXRvcDogMDsKCW1hcmdpbi1ib3R0b206IDAuMjVlbTsKCWNvbG9yOiAjZmZmOyB9CiAgCiAgLnNwb3AtY2xvc2UgewoJcG9zaXRpb246IGFic29sdXRlOwoJcmlnaHQ6IDA7Cgl0b3A6IDA7CgloZWlnaHQ6IDMycHg7Cgl3aWR0aDogMzJweDsKCXBhZGRpbmctdG9wOiA3cHg7CglwYWRkaW5nLXJpZ2h0OiA3cHg7Cglmb250LXNpemU6IDIycHg7Cglmb250LXdlaWdodDogYm9sZDsKCXRleHQtYWxpZ246IHJpZ2h0OwoJbGluZS1oZWlnaHQ6IDAuNjsKCWNvbG9yOiAjZmZmOwoJb3BhY2l0eTogMC41OyB9Cgkuc3BvcC1jbG9zZTpob3ZlciB7CgkgIG9wYWNpdHk6IDAuNzsKCSAgY3Vyc29yOiBwb2ludGVyOyB9CiAgCiAgLnNwb3AtaWNvbiB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDEzcHg7CglsZWZ0OiAxNnB4OwoJd2lkdGg6IDMwcHg7CgloZWlnaHQ6IDMwcHg7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgktd2Via2l0LWFuaW1hdGlvbjogc3BvcEluIDAuNHMgMC40cyBlYXNlLWluLW91dDsKCQkJYW5pbWF0aW9uOiBzcG9wSW4gMC40cyAwLjRzIGVhc2UtaW4tb3V0OyB9Cgkuc3BvcC1pY29uOmFmdGVyLAoJLnNwb3AtaWNvbjpiZWZvcmUgewoJICBjb250ZW50OiAiIjsKCSAgcG9zaXRpb246IGFic29sdXRlOwoJICBkaXNwbGF5OiBibG9jazsgfQoJLnNwb3AtaWNvbiArIC5zcG9wLWJvZHkgewoJICBwYWRkaW5nLWxlZnQ6IDQuMmVtOyB9CiAgCiAgLnNwb3AtaWNvbi0tZXJyb3IsCiAgLnNwb3AtaWNvbi0taW5mbyB7Cglib3JkZXI6IDJweCBzb2xpZCAjM2E5NWVkOyB9Cgkuc3BvcC1pY29uLS1lcnJvcjpiZWZvcmUsCgkuc3BvcC1pY29uLS1pbmZvOmJlZm9yZSB7CgkgIHRvcDogNXB4OwoJICBsZWZ0OiAxMXB4OwoJICB3aWR0aDogNHB4OwoJICBoZWlnaHQ6IDRweDsKCSAgYmFja2dyb3VuZC1jb2xvcjogIzNhOTVlZDsgfQoJLnNwb3AtaWNvbi0tZXJyb3I6YWZ0ZXIsCgkuc3BvcC1pY29uLS1pbmZvOmFmdGVyIHsKCSAgdG9wOiAxMnB4OwoJICBsZWZ0OiAxMXB4OwoJICB3aWR0aDogNHB4OwoJICBoZWlnaHQ6IDlweDsKCSAgYmFja2dyb3VuZC1jb2xvcjogIzNhOTVlZDsgfQogIAogIC5zcG9wLWljb24tLWVycm9yIHsKCWJvcmRlci1jb2xvcjogI2ZmNTY1NjsgfQoJLnNwb3AtaWNvbi0tZXJyb3I6YmVmb3JlIHsKCSAgdG9wOiAxNnB4OwoJICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY1NjU2OyB9Cgkuc3BvcC1pY29uLS1lcnJvcjphZnRlciB7CgkgIHRvcDogNXB4OwoJICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY1NjU2OyB9CiAgCiAgLnNwb3AtaWNvbi0tc3VjY2VzcyB7Cglib3JkZXI6IDJweCBzb2xpZCAjMmVjYzU0OyB9Cgkuc3BvcC1pY29uLS1zdWNjZXNzOmJlZm9yZSB7CgkgIHRvcDogN3B4OwoJICBsZWZ0OiA3cHg7CgkgIHdpZHRoOiAxM3B4OwoJICBoZWlnaHQ6IDhweDsKCSAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMyZWNjNTQ7CgkgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgIzJlY2M1NDsKCSAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOwoJCSAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7CgkJCSAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfQogIAogIC5zcG9wLWljb24tLXdhcm5pbmcgewoJYm9yZGVyOiAycHggc29saWQgI2ZjZDAwMDsgfQoJLnNwb3AtaWNvbi0td2FybmluZzpiZWZvcmUgewoJICB0b3A6IDdweDsKCSAgbGVmdDogN3B4OwoJICB3aWR0aDogMDsKCSAgaGVpZ2h0OiAwOwoJICBib3JkZXItc3R5bGU6IHNvbGlkOwoJICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmY2QwMDAgdHJhbnNwYXJlbnQ7CgkgIGJvcmRlci13aWR0aDogMCA2cHggMTBweCA2cHg7IH0KCgoKCjpyb290IHsKLS1icy1ibHVlOiMwZDZlZmQ7Ci0tYnMtaW5kaWdvOiM2NjEwZjI7Ci0tYnMtcHVycGxlOiM2ZjQyYzE7Ci0tYnMtcGluazojZDYzMzg0OwotLWJzLXJlZDojZGMzNTQ1OwotLWJzLW9yYW5nZTojZmQ3ZTE0OwotLWJzLXllbGxvdzojZmZjMTA3OwotLWJzLWdyZWVuOiMxOTg3NTQ7Ci0tYnMtdGVhbDojMjBjOTk3OwotLWJzLWN5YW46IzBkY2FmMDsKLS1icy13aGl0ZTojZmZmOwotLWJzLWdyYXk6IzZjNzU3ZDsKLS1icy1ncmF5LWRhcms6IzM0M2E0MDsKLS1icy1ncmF5LTEwMDojZjhmOWZhOwotLWJzLWdyYXktMjAwOiNlOWVjZWY7Ci0tYnMtZ3JheS0zMDA6I2RlZTJlNjsKLS1icy1ncmF5LTQwMDojY2VkNGRhOwotLWJzLWdyYXktNTAwOiNhZGI1YmQ7Ci0tYnMtZ3JheS02MDA6IzZjNzU3ZDsKLS1icy1ncmF5LTcwMDojNDk1MDU3OwotLWJzLWdyYXktODAwOiMzNDNhNDA7Ci0tYnMtZ3JheS05MDA6IzIxMjUyOTsKLS1icy1wcmltYXJ5OiM1YTNjYzU7Ci0tYnMtc2Vjb25kYXJ5OiNlYWEwMzQ7Ci0tYnMtc3VjY2VzczojMTk4NzU0OwotLWJzLWluZm86IzBkY2FmMDsKLS1icy13YXJuaW5nOiNmZmMxMDc7Ci0tYnMtZGFuZ2VyOiNkYzM1NDU7Ci0tYnMtbGlnaHQ6I2Y4ZjlmYTsKLS1icy1kYXJrOiMyMTI1Mjk7Ci0tYnMtcHJpbWFyeS1yZ2I6MTMsIDExMCwgMjUzOwotLWJzLXNlY29uZGFyeS1yZ2I6MTA4LCAxMTcsIDEyNTsKLS1icy1zdWNjZXNzLXJnYjoyNSwgMTM1LCA4NDsKLS1icy1pbmZvLXJnYjoxMywgMjAyLCAyNDA7Ci0tYnMtd2FybmluZy1yZ2I6MjU1LCAxOTMsIDc7Ci0tYnMtZGFuZ2VyLXJnYjoyMjAsIDUzLCA2OTsKLS1icy1saWdodC1yZ2I6MjQ4LCAyNDksIDI1MDsKLS1icy1kYXJrLXJnYjozMywgMzcsIDQxOwotLWJzLXdoaXRlLXJnYjoyNTUsIDI1NSwgMjU1OwotLWJzLWJsYWNrLXJnYjoxOCwgMzksIDU4OwotLWJzLWJvZHktcmdiOjMzLCAzNywgNDE7Ci0tYnMtZm9udC1zYW5zLXNlcmlmbToiTW9udHNlcnJhdCIsc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCAiU2Vnb2UgVUkiLCBSb2JvdG8sICJIZWx2ZXRpY2EgTmV1ZSIsIEFyaWFsLCAiTm90byBTYW5zIiwgIkxpYmVyYXRpb24gU2FucyIsIHNhbnMtc2VyaWYsICJBcHBsZSBDb2xvciBFbW9qaSIsICJTZWdvZSBVSSBFbW9qaSIsICJTZWdvZSBVSSBTeW1ib2wiLCAiTm90byBDb2xvciBFbW9qaSI7CgotLWJzLWZvbnQtc2Fucy1zZXJpZjoiVWJ1bnR1IixzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sICJTZWdvZSBVSSIsIFJvYm90bywgIkhlbHZldGljYSBOZXVlIiwgQXJpYWwsICJOb3RvIFNhbnMiLCAiTGliZXJhdGlvbiBTYW5zIiwgc2Fucy1zZXJpZiwgIkFwcGxlIENvbG9yIEVtb2ppIiwgIlNlZ29lIFVJIEVtb2ppIiwgIlNlZ29lIFVJIFN5bWJvbCIsICJOb3RvIENvbG9yIEVtb2ppIjsKLS1icy1mb250LW1vbm9zcGFjZTpTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICJMaWJlcmF0aW9uIE1vbm8iLCAiQ291cmllciBOZXciLCBtb25vc3BhY2U7Ci0tYnMtZ3JhZGllbnQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7Ci0tYnMtYm9keS1mb250LWZhbWlseTp2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpOwotLWJzLWJvZHktZm9udC1mYW1pbHltOnZhcigtLWJzLWZvbnQtc2Fucy1zZXJpZm0pOwotLWJzLWJvZHktZm9udC1zaXplOjFyZW07Ci0tYnMtYm9keS1mb250LXdlaWdodDo0MDA7Ci0tYnMtYm9keS1saW5lLWhlaWdodDoxLjU7Ci0tYnMtYm9keS1jb2xvcjojMjEyNTI5OwotLWJzLWJvZHktYmc6I2ZmZgp9CiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHsKCWJveC1zaXppbmc6IGJvcmRlci1ib3gKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSkgewo6cm9vdCB7CglzY3JvbGwtYmVoYXZpb3I6IHNtb290aAp9Cn0KYm9keSB7CgltYXJnaW46IDA7Cglmb250LWZhbWlseTogdmFyKC0tYnMtYm9keS1mb250LWZhbWlseSk7Cglmb250LXNpemU6IHZhcigtLWJzLWJvZHktZm9udC1zaXplKTsKCWZvbnQtd2VpZ2h0OiB2YXIoLS1icy1ib2R5LWZvbnQtd2VpZ2h0KTsKCWxpbmUtaGVpZ2h0OiB2YXIoLS1icy1ib2R5LWxpbmUtaGVpZ2h0KTsKCWNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTsKCXRleHQtYWxpZ246IHZhcigtLWJzLWJvZHktdGV4dC1hbGlnbik7CgliYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ib2R5LWJnKTsKCS13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsKCS13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7CgkgCiAKCSAKCSAKfQpociB7CgltYXJnaW46IDFyZW0gMDsKCWNvbG9yOiBpbmhlcml0OwoJYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yOwoJYm9yZGVyOiAwOwoJb3BhY2l0eTogLjI1Cn0KaHI6bm90KFtzaXplXSkgewoJaGVpZ2h0OiAxcHgKfQouaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2LCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHsKCW1hcmdpbi10b3A6IDA7CgltYXJnaW4tYm90dG9tOiAuNXJlbTsKCWZvbnQtd2VpZ2h0OiA1MDA7CglsaW5lLWhlaWdodDogMTsKfQouaDEsIGgxIHsKCWZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KQp9CkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCkgewouaDEsIGgxIHsKCWZvbnQtc2l6ZTogNXJlbTsKfQp9Ci5oMiwgaDIgewpmb250LXNpemU6Y2FsYygxLjMyNXJlbSArIC45dncpCn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5oMiwgaDIgewoJZm9udC1zaXplOiAyLjhyZW07Cn0KfQouaDMsIGgzIHsKZm9udC1zaXplOmNhbGMoMS4zcmVtICsgLjZ2dykKfQpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKLmgzLCBoMyB7Cglmb250LXNpemU6IDEuNzVyZW0KfQp9Ci5oNCwgaDQgewpmb250LXNpemU6Y2FsYygxLjI3NXJlbSArIC4zdncpCn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5oNCwgaDQgewoJZm9udC1zaXplOiAxLjVyZW0KfQp9Ci5oNSwgaDUgewoJZm9udC1zaXplOiAxLjA1cmVtOwp9Ci5oNiwgaDYgewoJZm9udC1zaXplOiAxcmVtCn0KcCB7CgltYXJnaW4tdG9wOiAwOwoJbWFyZ2luLWJvdHRvbTogMXJlbQp9CmFiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0sIGFiYnJbdGl0bGVdIHsKCS13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOwoJdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOwoJY3Vyc29yOiBoZWxwOwoJLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7Cgl0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmUKfQphZGRyZXNzIHsKCW1hcmdpbi1ib3R0b206IDFyZW07Cglmb250LXN0eWxlOiBub3JtYWw7CglsaW5lLWhlaWdodDogaW5oZXJpdAp9Cm9sLCB1bCB7CglwYWRkaW5nLWxlZnQ6IDJyZW0KfQpkbCwgb2wsIHVsIHsKCW1hcmdpbi10b3A6IDA7CgltYXJnaW4tYm90dG9tOiAxcmVtCn0Kb2wgb2wsIG9sIHVsLCB1bCBvbCwgdWwgdWwgewoJbWFyZ2luLWJvdHRvbTogMAp9CmR0IHsKCWZvbnQtd2VpZ2h0OiA3MDAKfQpkZCB7Cm1hcmdpbi1ib3R0b206LjVyZW07CgltYXJnaW4tbGVmdDogMAp9CmJsb2NrcXVvdGUgewoJbWFyZ2luOiAwIDAgMXJlbQp9CmIsIHN0cm9uZyB7Cglmb250LXdlaWdodDogYm9sZGVyCn0KLnNtYWxsLCBzbWFsbCB7Cglmb250LXNpemU6IC44NzVlbQp9Ci5tYXJrLCBtYXJrIHsKCXBhZGRpbmc6IC4yZW07CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzCn0Kc3ViLCBzdXAgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJZm9udC1zaXplOiAuNzVlbTsKCWxpbmUtaGVpZ2h0OiAwOwoJdmVydGljYWwtYWxpZ246IGJhc2VsaW5lCn0Kc3ViIHsKCWJvdHRvbTogLS4yNWVtCn0Kc3VwIHsKCXRvcDogLS41ZW0KfQphIHsKCWNvbG9yOiAjMTVlNDk4OwoJdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7Cn0KYTpob3ZlciB7Cgljb2xvcjogI2ZmZmZmZjsKfQphOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSwgYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIgewoJY29sb3I6IGluaGVyaXQ7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmUKfQpjb2RlLCBrYmQsIHByZSwgc2FtcCB7Cglmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpOwoJZm9udC1zaXplOiAxZW07CglkaXJlY3Rpb246IGx0cjsKCXVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZQp9CnByZSB7CglkaXNwbGF5OiBibG9jazsKCW1hcmdpbi10b3A6IDA7CgltYXJnaW4tYm90dG9tOiAxcmVtOwoJb3ZlcmZsb3c6IGF1dG87Cglmb250LXNpemU6IC44NzVlbQp9CnByZSBjb2RlIHsKCWZvbnQtc2l6ZTogaW5oZXJpdDsKCWNvbG9yOiBpbmhlcml0OwoJd29yZC1icmVhazogbm9ybWFsCn0KY29kZSB7Cglmb250LXNpemU6IC44NzVlbTsKCWNvbG9yOiAjZDYzMzg0OwoJd29yZC13cmFwOiBicmVhay13b3JkCn0KYT5jb2RlIHsKCWNvbG9yOiBpbmhlcml0Cn0Ka2JkIHsKcGFkZGluZzouMnJlbSAuNHJlbTsKCWZvbnQtc2l6ZTogLjg3NWVtOwoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5Owpib3JkZXItcmFkaXVzOi4ycmVtCn0Ka2JkIGtiZCB7CglwYWRkaW5nOiAwOwoJZm9udC1zaXplOiAxZW07Cglmb250LXdlaWdodDogNzAwCn0KZmlndXJlIHsKCW1hcmdpbjogMCAwIDFyZW0KfQppbWcsIHN2ZyB7Cgl2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlCn0KdGFibGUgewoJY2FwdGlvbi1zaWRlOiBib3R0b207Cglib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJd2lkdGg6IDEwMCU7CgltYXJnaW4tYm90dG9tOiAxMHB4Owp9CmNhcHRpb24gewpwYWRkaW5nLXRvcDouNXJlbTsKcGFkZGluZy1ib3R0b206LjVyZW07Cgljb2xvcjogIzZjNzU3ZDsKCXRleHQtYWxpZ246IGxlZnQKfQp0aCB7Cgl0ZXh0LWFsaWduOiBpbmhlcml0OwoJdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQKfQp0Ym9keSwgdGQsIHRmb290LCB0aCwgdGhlYWQsIHRyIHsKCWJvcmRlci1jb2xvcjogaW5oZXJpdDsKCWJvcmRlci1zdHlsZTogc29saWQ7Cglib3JkZXItd2lkdGg6IDA7Cgl3aGl0ZS1zcGFjZTogbm93cmFwOwoJdGV4dC1hbGlnbjogY2VudGVyOwoJZm9udC1zaXplOiAxNXB4OwoJZm9udC13ZWlnaHQ6IDYwMDsKCXBhZGRpbmc6IDEzcHggMDsKCWJhY2tncm91bmQ6ICMxOTE2NDY7Cn0KbGFiZWwgewoJZGlzcGxheTogaW5saW5lLWJsb2NrCn0KdGFibGUgdHIgewoJYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjsKCWJvcmRlci1yYWRpdXM6IDEwcHg7Cn0KYnV0dG9uIHsKCWJvcmRlci1yYWRpdXM6IDAKfQpidXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7CglvdXRsaW5lOiAwCn0KYnV0dG9uLCBpbnB1dCwgb3B0Z3JvdXAsIHNlbGVjdCwgdGV4dGFyZWEgewoJbWFyZ2luOiAwOwoJZm9udC1mYW1pbHk6IGluaGVyaXQ7Cglmb250LXNpemU6IGluaGVyaXQ7CglsaW5lLWhlaWdodDogaW5oZXJpdAp9CmJ1dHRvbiwgc2VsZWN0IHsKCXRleHQtdHJhbnNmb3JtOiBub25lCn0KW3JvbGU9YnV0dG9uXSB7CmN1cnNvcjpwb2ludGVyCn0Kc2VsZWN0IHsKCXdvcmQtd3JhcDogbm9ybWFsCn0Kc2VsZWN0OmRpc2FibGVkIHsKCW9wYWNpdHk6IDEKfQpbbGlzdF06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7CmRpc3BsYXk6bm9uZQp9Clt0eXBlPWJ1dHRvbl0sIFt0eXBlPXJlc2V0XSwgW3R5cGU9c3VibWl0XSwgYnV0dG9uIHsKLXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbgp9Clt0eXBlPWJ1dHRvbl06bm90KDpkaXNhYmxlZCksIFt0eXBlPXJlc2V0XTpub3QoOmRpc2FibGVkKSwgW3R5cGU9c3VibWl0XTpub3QoOmRpc2FibGVkKSwgYnV0dG9uOm5vdCg6ZGlzYWJsZWQpIHsKCWN1cnNvcjogcG9pbnRlcgp9Cjo6LW1vei1mb2N1cy1pbm5lciB7CnBhZGRpbmc6MDsKYm9yZGVyLXN0eWxlOm5vbmUKfQp0ZXh0YXJlYSB7CglyZXNpemU6IHZlcnRpY2FsCn0KZmllbGRzZXQgewoJbWluLXdpZHRoOiAwOwoJcGFkZGluZzogMDsKCW1hcmdpbjogMDsKCWJvcmRlcjogMAp9CmxlZ2VuZCB7CglmbG9hdDogbGVmdDsKCXdpZHRoOiAxMDAlOwoJcGFkZGluZzogMDsKbWFyZ2luLWJvdHRvbTouNXJlbTsKZm9udC1zaXplOmNhbGMoMS4yNzVyZW0gKyAuM3Z3KTsKCWxpbmUtaGVpZ2h0OiBpbmhlcml0Cn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7CmxlZ2VuZCB7Cglmb250LXNpemU6IDEuNXJlbQp9Cn0KbGVnZW5kKyogewoJY2xlYXI6IGxlZnQKfQo6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsIDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLCA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLCA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsIDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLCA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LCA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHsKcGFkZGluZzowCn0KOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHsKaGVpZ2h0OmF1dG8KfQpbdHlwZT1zZWFyY2hdIHsKb3V0bGluZS1vZmZzZXQ6LTJweDsKLXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZAp9Cjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7Ci13ZWJraXQtYXBwZWFyYW5jZTpub25lCn0KOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHsKcGFkZGluZzowCn0KOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7CmZvbnQ6aW5oZXJpdAp9Cjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24gewpmb250OmluaGVyaXQ7Ci13ZWJraXQtYXBwZWFyYW5jZTpidXR0b24KfQpvdXRwdXQgewoJZGlzcGxheTogaW5saW5lLWJsb2NrCn0KaWZyYW1lIHsKCWJvcmRlcjogMAp9CnN1bW1hcnkgewoJZGlzcGxheTogbGlzdC1pdGVtOwoJY3Vyc29yOiBwb2ludGVyCn0KcHJvZ3Jlc3MgewoJdmVydGljYWwtYWxpZ246IGJhc2VsaW5lCn0KW2hpZGRlbl0gewpkaXNwbGF5Om5vbmUhaW1wb3J0YW50Cn0KLmxlYWQgewoJZm9udC1zaXplOiAxLjI1cmVtOwoJZm9udC13ZWlnaHQ6IDMwMAp9Ci5kaXNwbGF5LTEgewoJZm9udC1zaXplOiBjYWxjKDEuNjI1cmVtICsgNC41dncpOwoJZm9udC13ZWlnaHQ6IDMwMDsKCWxpbmUtaGVpZ2h0OiAxLjIKfQpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKLmRpc3BsYXktMSB7Cglmb250LXNpemU6IDVyZW0KfQp9Ci5kaXNwbGF5LTIgewoJZm9udC1zaXplOiBjYWxjKDEuNTc1cmVtICsgMy45dncpOwoJZm9udC13ZWlnaHQ6IDMwMDsKCWxpbmUtaGVpZ2h0OiAxLjIKfQpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKLmRpc3BsYXktMiB7Cglmb250LXNpemU6IDNyZW07Cn0KfQouZGlzcGxheS0zIHsKCWZvbnQtc2l6ZTogY2FsYygxLjUyNXJlbSArIDMuM3Z3KTsKCWZvbnQtd2VpZ2h0OiAzMDA7CglsaW5lLWhlaWdodDogMS4yCn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5kaXNwbGF5LTMgewoJZm9udC1zaXplOiA0cmVtCn0KfQouZGlzcGxheS00IHsKCWZvbnQtc2l6ZTogY2FsYygxLjQ3NXJlbSArIDIuN3Z3KTsKCWZvbnQtd2VpZ2h0OiAzMDA7CglsaW5lLWhlaWdodDogMS4yCn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5kaXNwbGF5LTQgewoJZm9udC1zaXplOiAzLjVyZW0KfQp9Ci5kaXNwbGF5LTUgewoJZm9udC1zaXplOiBjYWxjKDEuNDI1cmVtICsgMi4xdncpOwoJZm9udC13ZWlnaHQ6IDMwMDsKCWxpbmUtaGVpZ2h0OiAxLjIKfQpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKLmRpc3BsYXktNSB7Cglmb250LXNpemU6IDNyZW0KfQp9Ci5kaXNwbGF5LTYgewoJZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpOwoJZm9udC13ZWlnaHQ6IDMwMDsKCWxpbmUtaGVpZ2h0OiAxLjIKfQpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKLmRpc3BsYXktNiB7Cglmb250LXNpemU6IDIuNXJlbQp9Cn0KLmxpc3QtdW5zdHlsZWQgewoJcGFkZGluZy1sZWZ0OiAwOwoJbGlzdC1zdHlsZTogbm9uZQp9Ci5saXN0LWlubGluZSB7CglwYWRkaW5nLWxlZnQ6IDA7CglsaXN0LXN0eWxlOiBub25lCn0KLmxpc3QtaW5saW5lLWl0ZW0gewoJZGlzcGxheTogaW5saW5lLWJsb2NrCn0KLmxpc3QtaW5saW5lLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7Cm1hcmdpbi1yaWdodDouNXJlbQp9Ci5pbml0aWFsaXNtIHsKCWZvbnQtc2l6ZTogLjg3NWVtOwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZQp9Ci5ibG9ja3F1b3RlIHsKCW1hcmdpbi1ib3R0b206IDFyZW07Cglmb250LXNpemU6IDEuMjVyZW0KfQouYmxvY2txdW90ZT46bGFzdC1jaGlsZCB7CgltYXJnaW4tYm90dG9tOiAwCn0KLmJsb2NrcXVvdGUtZm9vdGVyIHsKCW1hcmdpbi10b3A6IC0xcmVtOwoJbWFyZ2luLWJvdHRvbTogMXJlbTsKCWZvbnQtc2l6ZTogLjg3NWVtOwoJY29sb3I6ICM2Yzc1N2QKfQouYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7Cgljb250ZW50OiAi4oCUwqAiCn0KLmltZy1mbHVpZCB7CgltYXgtd2lkdGg6IDEwMCU7CgloZWlnaHQ6IGF1dG8KfQouaW1nLXRodW1ibmFpbCB7CnBhZGRpbmc6LjI1cmVtOwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKCWJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7CmJvcmRlci1yYWRpdXM6LjI1cmVtOwoJbWF4LXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiBhdXRvCn0KLmZpZ3VyZSB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2sKfQouZmlndXJlLWltZyB7Cm1hcmdpbi1ib3R0b206LjVyZW07CglsaW5lLWhlaWdodDogMQp9Ci5maWd1cmUtY2FwdGlvbiB7Cglmb250LXNpemU6IC44NzVlbTsKCWNvbG9yOiAjNmM3NTdkCn0KLmNvbnRhaW5lciwgLmNvbnRhaW5lci1mbHVpZCwgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lci14bCwgLmNvbnRhaW5lci14eGwgewoJd2lkdGg6IDEwMCU7CnBhZGRpbmctcmlnaHQ6dmFyKC0tYnMtZ3V0dGVyLXgsIC43NXJlbSk7CnBhZGRpbmctbGVmdDp2YXIoLS1icy1ndXR0ZXIteCwgLjc1cmVtKTsKCW1hcmdpbi1yaWdodDogYXV0bzsKCW1hcmdpbi1sZWZ0OiBhdXRvCn0KQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKLmNvbnRhaW5lciwgLmNvbnRhaW5lci1zbSB7CgltYXgtd2lkdGg6IDU0MHB4Cn0KfQpAbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgewouY29udGFpbmVyLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtIHsKCW1heC13aWR0aDogNzIwcHgKfQp9CkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7Ci5jb250YWluZXIsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20gewoJbWF4LXdpZHRoOiA5NjBweAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5jb250YWluZXIsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIteGwgewoJbWF4LXdpZHRoOiAxMTQwcHgKfQp9CkBtZWRpYSAobWluLXdpZHRoOjE0MDBweCkgewouY29udGFpbmVyLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLXh4bCB7CgltYXgtd2lkdGg6IDEzMjBweAp9Cn0KLnJvdyB7Ci0tYnMtZ3V0dGVyLXg6MS41cmVtOwotLWJzLWd1dHRlci15OjA7CglkaXNwbGF5OiBmbGV4OwoJZmxleC13cmFwOiB3cmFwOwptYXJnaW4tdG9wOmNhbGModmFyKC0tYnMtZ3V0dGVyLXkpICogLTEpOwptYXJnaW4tcmlnaHQ6Y2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAtLjUpOwptYXJnaW4tbGVmdDpjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIC0uNSkKfQoucm93PiogewoJZmxleC1zaHJpbms6IDA7Cgl3aWR0aDogMTAwJTsKCW1heC13aWR0aDogMTAwJTsKcGFkZGluZy1yaWdodDpjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIC41KTsKcGFkZGluZy1sZWZ0OmNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogLjUpOwoJbWFyZ2luLXRvcDogdmFyKC0tYnMtZ3V0dGVyLXkpCn0KLmNvbCB7CglmbGV4OiAxIDAgMCUKfQoucm93LWNvbHMtYXV0bz4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IGF1dG8KfQoucm93LWNvbHMtMT4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDEwMCUKfQoucm93LWNvbHMtMj4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDUwJQp9Ci5yb3ctY29scy0zPiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMzMuMzMzMzMzMzMzMyUKfQoucm93LWNvbHMtND4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDI1JQp9Ci5yb3ctY29scy01PiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMjAlCn0KLnJvdy1jb2xzLTY+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxNi42NjY2NjY2NjY3JQp9Ci5jb2wtYXV0byB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiBhdXRvCn0KLmNvbC0xIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDguMzMzMzMzMzMlCn0KLmNvbC0yIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDE2LjY2NjY2NjY3JQp9Ci5jb2wtMyB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAyNSUKfQouY29sLTQgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMzMuMzMzMzMzMzMlCn0KLmNvbC01IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDQxLjY2NjY2NjY3JQp9Ci5jb2wtNiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA1MCUKfQouY29sLTcgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNTguMzMzMzMzMzMlCn0KLmNvbC04IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDY2LjY2NjY2NjY3JQp9Ci5jb2wtOSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA3NSUKfQouY29sLTEwIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDgzLjMzMzMzMzMzJQp9Ci5jb2wtMTEgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogOTEuNjY2NjY2NjclCn0KLmNvbC0xMiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxMDAlCn0KLm9mZnNldC0xIHsKCW1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJQp9Ci5vZmZzZXQtMiB7CgltYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclCn0KLm9mZnNldC0zIHsKCW1hcmdpbi1sZWZ0OiAyNSUKfQoub2Zmc2V0LTQgewoJbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJQp9Ci5vZmZzZXQtNSB7CgltYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclCn0KLm9mZnNldC02IHsKCW1hcmdpbi1sZWZ0OiA1MCUKfQoub2Zmc2V0LTcgewoJbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJQp9Ci5vZmZzZXQtOCB7CgltYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclCn0KLm9mZnNldC05IHsKCW1hcmdpbi1sZWZ0OiA3NSUKfQoub2Zmc2V0LTEwIHsKCW1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyUKfQoub2Zmc2V0LTExIHsKCW1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyUKfQouZy0wLCAuZ3gtMCB7Ci0tYnMtZ3V0dGVyLXg6MAp9Ci5nLTAsIC5neS0wIHsKLS1icy1ndXR0ZXIteTowCn0KLmctMSwgLmd4LTEgewotLWJzLWd1dHRlci14OjAuMjVyZW0KfQouZy0xLCAuZ3ktMSB7Ci0tYnMtZ3V0dGVyLXk6MC4yNXJlbQp9Ci5nLTIsIC5neC0yIHsKLS1icy1ndXR0ZXIteDowLjVyZW0KfQouZy0yLCAuZ3ktMiB7Ci0tYnMtZ3V0dGVyLXk6MC41cmVtCn0KLmctMywgLmd4LTMgewotLWJzLWd1dHRlci14OjFyZW0KfQouZy0zLCAuZ3ktMyB7Ci0tYnMtZ3V0dGVyLXk6MXJlbQp9Ci5nLTQsIC5neC00IHsKLS1icy1ndXR0ZXIteDoxLjVyZW0KfQouZy00LCAuZ3ktNCB7Ci0tYnMtZ3V0dGVyLXk6MS41cmVtCn0KLmctNSwgLmd4LTUgewotLWJzLWd1dHRlci14OjNyZW0KfQouZy01LCAuZ3ktNSB7Ci0tYnMtZ3V0dGVyLXk6M3JlbQp9CkBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSB7Ci5jb2wtc20gewoJZmxleDogMSAwIDAlCn0KLnJvdy1jb2xzLXNtLWF1dG8+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiBhdXRvCn0KLnJvdy1jb2xzLXNtLTE+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxMDAlCn0KLnJvdy1jb2xzLXNtLTI+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA1MCUKfQoucm93LWNvbHMtc20tMz4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDMzLjMzMzMzMzMzMzMlCn0KLnJvdy1jb2xzLXNtLTQ+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAyNSUKfQoucm93LWNvbHMtc20tNT4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDIwJQp9Ci5yb3ctY29scy1zbS02PiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTYuNjY2NjY2NjY2NyUKfQouY29sLXNtLWF1dG8gewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogYXV0bwp9Ci5jb2wtc20tMSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4LjMzMzMzMzMzJQp9Ci5jb2wtc20tMiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxNi42NjY2NjY2NyUKfQouY29sLXNtLTMgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMjUlCn0KLmNvbC1zbS00IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDMzLjMzMzMzMzMzJQp9Ci5jb2wtc20tNSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA0MS42NjY2NjY2NyUKfQouY29sLXNtLTYgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNTAlCn0KLmNvbC1zbS03IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDU4LjMzMzMzMzMzJQp9Ci5jb2wtc20tOCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA2Ni42NjY2NjY2NyUKfQouY29sLXNtLTkgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNzUlCn0KLmNvbC1zbS0xMCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4My4zMzMzMzMzMyUKfQouY29sLXNtLTExIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDkxLjY2NjY2NjY3JQp9Ci5jb2wtc20tMTIgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTAwJQp9Ci5vZmZzZXQtc20tMCB7CgltYXJnaW4tbGVmdDogMAp9Ci5vZmZzZXQtc20tMSB7CgltYXJnaW4tbGVmdDogOC4zMzMzMzMzMyUKfQoub2Zmc2V0LXNtLTIgewoJbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JQp9Ci5vZmZzZXQtc20tMyB7CgltYXJnaW4tbGVmdDogMjUlCn0KLm9mZnNldC1zbS00IHsKCW1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyUKfQoub2Zmc2V0LXNtLTUgewoJbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JQp9Ci5vZmZzZXQtc20tNiB7CgltYXJnaW4tbGVmdDogNTAlCn0KLm9mZnNldC1zbS03IHsKCW1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyUKfQoub2Zmc2V0LXNtLTggewoJbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JQp9Ci5vZmZzZXQtc20tOSB7CgltYXJnaW4tbGVmdDogNzUlCn0KLm9mZnNldC1zbS0xMCB7CgltYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlCn0KLm9mZnNldC1zbS0xMSB7CgltYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclCn0KLmctc20tMCwgLmd4LXNtLTAgewotLWJzLWd1dHRlci14OjAKfQouZy1zbS0wLCAuZ3ktc20tMCB7Ci0tYnMtZ3V0dGVyLXk6MAp9Ci5nLXNtLTEsIC5neC1zbS0xIHsKLS1icy1ndXR0ZXIteDowLjI1cmVtCn0KLmctc20tMSwgLmd5LXNtLTEgewotLWJzLWd1dHRlci15OjAuMjVyZW0KfQouZy1zbS0yLCAuZ3gtc20tMiB7Ci0tYnMtZ3V0dGVyLXg6MC41cmVtCn0KLmctc20tMiwgLmd5LXNtLTIgewotLWJzLWd1dHRlci15OjAuNXJlbQp9Ci5nLXNtLTMsIC5neC1zbS0zIHsKLS1icy1ndXR0ZXIteDoxcmVtCn0KLmctc20tMywgLmd5LXNtLTMgewotLWJzLWd1dHRlci15OjFyZW0KfQouZy1zbS00LCAuZ3gtc20tNCB7Ci0tYnMtZ3V0dGVyLXg6MS41cmVtCn0KLmctc20tNCwgLmd5LXNtLTQgewotLWJzLWd1dHRlci15OjEuNXJlbQp9Ci5nLXNtLTUsIC5neC1zbS01IHsKLS1icy1ndXR0ZXIteDozcmVtCn0KLmctc20tNSwgLmd5LXNtLTUgewotLWJzLWd1dHRlci15OjNyZW0KfQp9CkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSB7Ci5jb2wtbWQgewoJZmxleDogMSAwIDAlCn0KLnJvdy1jb2xzLW1kLWF1dG8+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiBhdXRvCn0KLnJvdy1jb2xzLW1kLTE+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxMDAlCn0KLnJvdy1jb2xzLW1kLTI+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA1MCUKfQoucm93LWNvbHMtbWQtMz4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDMzLjMzMzMzMzMzMzMlCn0KLnJvdy1jb2xzLW1kLTQ+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAyNSUKfQoucm93LWNvbHMtbWQtNT4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDIwJQp9Ci5yb3ctY29scy1tZC02PiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTYuNjY2NjY2NjY2NyUKfQouY29sLW1kLWF1dG8gewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogYXV0bwp9Ci5jb2wtbWQtMSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4LjMzMzMzMzMzJQp9Ci5jb2wtbWQtMiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxNi42NjY2NjY2NyUKfQouY29sLW1kLTMgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMjUlCn0KLmNvbC1tZC00IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDMzLjMzMzMzMzMzJQp9Ci5jb2wtbWQtNSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA0MS42NjY2NjY2NyUKfQouY29sLW1kLTYgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNTAlCn0KLmNvbC1tZC03IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDU4LjMzMzMzMzMzJQp9Ci5jb2wtbWQtOCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA2Ni42NjY2NjY2NyUKfQouY29sLW1kLTkgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNzUlCn0KLmNvbC1tZC0xMCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4My4zMzMzMzMzMyUKfQouY29sLW1kLTExIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDkxLjY2NjY2NjY3JQp9Ci5jb2wtbWQtMTIgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTAwJQp9Ci5vZmZzZXQtbWQtMCB7CgltYXJnaW4tbGVmdDogMAp9Ci5vZmZzZXQtbWQtMSB7CgltYXJnaW4tbGVmdDogOC4zMzMzMzMzMyUKfQoub2Zmc2V0LW1kLTIgewoJbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JQp9Ci5vZmZzZXQtbWQtMyB7CgltYXJnaW4tbGVmdDogMjUlCn0KLm9mZnNldC1tZC00IHsKCW1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyUKfQoub2Zmc2V0LW1kLTUgewoJbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JQp9Ci5vZmZzZXQtbWQtNiB7CgltYXJnaW4tbGVmdDogNTAlCn0KLm9mZnNldC1tZC03IHsKCW1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyUKfQoub2Zmc2V0LW1kLTggewoJbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JQp9Ci5vZmZzZXQtbWQtOSB7CgltYXJnaW4tbGVmdDogNzUlCn0KLm9mZnNldC1tZC0xMCB7CgltYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlCn0KLm9mZnNldC1tZC0xMSB7CgltYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclCn0KLmctbWQtMCwgLmd4LW1kLTAgewotLWJzLWd1dHRlci14OjAKfQouZy1tZC0wLCAuZ3ktbWQtMCB7Ci0tYnMtZ3V0dGVyLXk6MAp9Ci5nLW1kLTEsIC5neC1tZC0xIHsKLS1icy1ndXR0ZXIteDowLjI1cmVtCn0KLmctbWQtMSwgLmd5LW1kLTEgewotLWJzLWd1dHRlci15OjAuMjVyZW0KfQouZy1tZC0yLCAuZ3gtbWQtMiB7Ci0tYnMtZ3V0dGVyLXg6MC41cmVtCn0KLmctbWQtMiwgLmd5LW1kLTIgewotLWJzLWd1dHRlci15OjAuNXJlbQp9Ci5nLW1kLTMsIC5neC1tZC0zIHsKLS1icy1ndXR0ZXIteDoxcmVtCn0KLmctbWQtMywgLmd5LW1kLTMgewotLWJzLWd1dHRlci15OjFyZW0KfQouZy1tZC00LCAuZ3gtbWQtNCB7Ci0tYnMtZ3V0dGVyLXg6MS41cmVtCn0KLmctbWQtNCwgLmd5LW1kLTQgewotLWJzLWd1dHRlci15OjEuNXJlbQp9Ci5nLW1kLTUsIC5neC1tZC01IHsKLS1icy1ndXR0ZXIteDozcmVtCn0KLmctbWQtNSwgLmd5LW1kLTUgewotLWJzLWd1dHRlci15OjNyZW0KfQp9CkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7Ci5jb2wtbGcgewoJZmxleDogMSAwIDAlCn0KLnJvdy1jb2xzLWxnLWF1dG8+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiBhdXRvCn0KLnJvdy1jb2xzLWxnLTE+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxMDAlCn0KLnJvdy1jb2xzLWxnLTI+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA1MCUKfQoucm93LWNvbHMtbGctMz4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDMzLjMzMzMzMzMzMzMlCn0KLnJvdy1jb2xzLWxnLTQ+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAyNSUKfQoucm93LWNvbHMtbGctNT4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDIwJQp9Ci5yb3ctY29scy1sZy02PiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTYuNjY2NjY2NjY2NyUKfQouY29sLWxnLWF1dG8gewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogYXV0bwp9Ci5jb2wtbGctMSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4LjMzMzMzMzMzJQp9Ci5jb2wtbGctMiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxNi42NjY2NjY2NyUKfQouY29sLWxnLTMgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMjUlCn0KLmNvbC1sZy00IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDMzLjMzMzMzMzMzJQp9Ci5jb2wtbGctNSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA0MS42NjY2NjY2NyUKfQouY29sLWxnLTYgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNTAlCn0KLmNvbC1sZy03IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDU4LjMzMzMzMzMzJQp9Ci5jb2wtbGctOCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA2Ni42NjY2NjY2NyUKfQouY29sLWxnLTkgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNzUlCn0KLmNvbC1sZy0xMCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4My4zMzMzMzMzMyUKfQouY29sLWxnLTExIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDkxLjY2NjY2NjY3JQp9Ci5jb2wtbGctMTIgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTAwJQp9Ci5vZmZzZXQtbGctMCB7CgltYXJnaW4tbGVmdDogMAp9Ci5vZmZzZXQtbGctMSB7CgltYXJnaW4tbGVmdDogOC4zMzMzMzMzMyUKfQoub2Zmc2V0LWxnLTIgewoJbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JQp9Ci5vZmZzZXQtbGctMyB7CgltYXJnaW4tbGVmdDogMjUlCn0KLm9mZnNldC1sZy00IHsKCW1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyUKfQoub2Zmc2V0LWxnLTUgewoJbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JQp9Ci5vZmZzZXQtbGctNiB7CgltYXJnaW4tbGVmdDogNTAlCn0KLm9mZnNldC1sZy03IHsKCW1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyUKfQoub2Zmc2V0LWxnLTggewoJbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JQp9Ci5vZmZzZXQtbGctOSB7CgltYXJnaW4tbGVmdDogNzUlCn0KLm9mZnNldC1sZy0xMCB7CgltYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlCn0KLm9mZnNldC1sZy0xMSB7CgltYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclCn0KLmctbGctMCwgLmd4LWxnLTAgewotLWJzLWd1dHRlci14OjAKfQouZy1sZy0wLCAuZ3ktbGctMCB7Ci0tYnMtZ3V0dGVyLXk6MAp9Ci5nLWxnLTEsIC5neC1sZy0xIHsKLS1icy1ndXR0ZXIteDowLjI1cmVtCn0KLmctbGctMSwgLmd5LWxnLTEgewotLWJzLWd1dHRlci15OjAuMjVyZW0KfQouZy1sZy0yLCAuZ3gtbGctMiB7Ci0tYnMtZ3V0dGVyLXg6MC41cmVtCn0KLmctbGctMiwgLmd5LWxnLTIgewotLWJzLWd1dHRlci15OjAuNXJlbQp9Ci5nLWxnLTMsIC5neC1sZy0zIHsKLS1icy1ndXR0ZXIteDoxcmVtCn0KLmctbGctMywgLmd5LWxnLTMgewotLWJzLWd1dHRlci15OjFyZW0KfQouZy1sZy00LCAuZ3gtbGctNCB7Ci0tYnMtZ3V0dGVyLXg6MS41cmVtCn0KLmctbGctNCwgLmd5LWxnLTQgewotLWJzLWd1dHRlci15OjEuNXJlbQp9Ci5nLWxnLTUsIC5neC1sZy01IHsKLS1icy1ndXR0ZXIteDozcmVtCn0KLmctbGctNSwgLmd5LWxnLTUgewotLWJzLWd1dHRlci15OjNyZW0KfQp9CkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCkgewouY29sLXhsIHsKCWZsZXg6IDEgMCAwJQp9Ci5yb3ctY29scy14bC1hdXRvPiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogYXV0bwp9Ci5yb3ctY29scy14bC0xPiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTAwJQp9Ci5yb3ctY29scy14bC0yPiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNTAlCn0KLnJvdy1jb2xzLXhsLTM+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAzMy4zMzMzMzMzMzMzJQp9Ci5yb3ctY29scy14bC00PiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMjUlCn0KLnJvdy1jb2xzLXhsLTU+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAyMCUKfQoucm93LWNvbHMteGwtNj4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDE2LjY2NjY2NjY2NjclCn0KLmNvbC14bC1hdXRvIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IGF1dG8KfQouY29sLXhsLTEgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogOC4zMzMzMzMzMyUKfQouY29sLXhsLTIgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTYuNjY2NjY2NjclCn0KLmNvbC14bC0zIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDI1JQp9Ci5jb2wteGwtNCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAzMy4zMzMzMzMzMyUKfQouY29sLXhsLTUgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNDEuNjY2NjY2NjclCn0KLmNvbC14bC02IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDUwJQp9Ci5jb2wteGwtNyB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA1OC4zMzMzMzMzMyUKfQouY29sLXhsLTggewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNjYuNjY2NjY2NjclCn0KLmNvbC14bC05IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDc1JQp9Ci5jb2wteGwtMTAgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogODMuMzMzMzMzMzMlCn0KLmNvbC14bC0xMSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA5MS42NjY2NjY2NyUKfQouY29sLXhsLTEyIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDEwMCUKfQoub2Zmc2V0LXhsLTAgewoJbWFyZ2luLWxlZnQ6IDAKfQoub2Zmc2V0LXhsLTEgewoJbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlCn0KLm9mZnNldC14bC0yIHsKCW1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyUKfQoub2Zmc2V0LXhsLTMgewoJbWFyZ2luLWxlZnQ6IDI1JQp9Ci5vZmZzZXQteGwtNCB7CgltYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlCn0KLm9mZnNldC14bC01IHsKCW1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyUKfQoub2Zmc2V0LXhsLTYgewoJbWFyZ2luLWxlZnQ6IDUwJQp9Ci5vZmZzZXQteGwtNyB7CgltYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlCn0KLm9mZnNldC14bC04IHsKCW1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyUKfQoub2Zmc2V0LXhsLTkgewoJbWFyZ2luLWxlZnQ6IDc1JQp9Ci5vZmZzZXQteGwtMTAgewoJbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJQp9Ci5vZmZzZXQteGwtMTEgewoJbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JQp9Ci5nLXhsLTAsIC5neC14bC0wIHsKLS1icy1ndXR0ZXIteDowCn0KLmcteGwtMCwgLmd5LXhsLTAgewotLWJzLWd1dHRlci15OjAKfQouZy14bC0xLCAuZ3gteGwtMSB7Ci0tYnMtZ3V0dGVyLXg6MC4yNXJlbQp9Ci5nLXhsLTEsIC5neS14bC0xIHsKLS1icy1ndXR0ZXIteTowLjI1cmVtCn0KLmcteGwtMiwgLmd4LXhsLTIgewotLWJzLWd1dHRlci14OjAuNXJlbQp9Ci5nLXhsLTIsIC5neS14bC0yIHsKLS1icy1ndXR0ZXIteTowLjVyZW0KfQouZy14bC0zLCAuZ3gteGwtMyB7Ci0tYnMtZ3V0dGVyLXg6MXJlbQp9Ci5nLXhsLTMsIC5neS14bC0zIHsKLS1icy1ndXR0ZXIteToxcmVtCn0KLmcteGwtNCwgLmd4LXhsLTQgewotLWJzLWd1dHRlci14OjEuNXJlbQp9Ci5nLXhsLTQsIC5neS14bC00IHsKLS1icy1ndXR0ZXIteToxLjVyZW0KfQouZy14bC01LCAuZ3gteGwtNSB7Ci0tYnMtZ3V0dGVyLXg6M3JlbQp9Ci5nLXhsLTUsIC5neS14bC01IHsKLS1icy1ndXR0ZXIteTozcmVtCn0KfQpAbWVkaWEgKG1pbi13aWR0aDoxNDAwcHgpIHsKLmNvbC14eGwgewoJZmxleDogMSAwIDAlCn0KLnJvdy1jb2xzLXh4bC1hdXRvPiogewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogYXV0bwp9Ci5yb3ctY29scy14eGwtMT4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDEwMCUKfQoucm93LWNvbHMteHhsLTI+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA1MCUKfQoucm93LWNvbHMteHhsLTM+KiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAzMy4zMzMzMzMzMzMzJQp9Ci5yb3ctY29scy14eGwtND4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDI1JQp9Ci5yb3ctY29scy14eGwtNT4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDIwJQp9Ci5yb3ctY29scy14eGwtNj4qIHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDE2LjY2NjY2NjY2NjclCn0KLmNvbC14eGwtYXV0byB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiBhdXRvCn0KLmNvbC14eGwtMSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4LjMzMzMzMzMzJQp9Ci5jb2wteHhsLTIgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogMTYuNjY2NjY2NjclCn0KLmNvbC14eGwtMyB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAyNSUKfQouY29sLXh4bC00IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDMzLjMzMzMzMzMzJQp9Ci5jb2wteHhsLTUgewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNDEuNjY2NjY2NjclCn0KLmNvbC14eGwtNiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA1MCUKfQouY29sLXh4bC03IHsKCWZsZXg6IDAgMCBhdXRvOwoJd2lkdGg6IDU4LjMzMzMzMzMzJQp9Ci5jb2wteHhsLTggewoJZmxleDogMCAwIGF1dG87Cgl3aWR0aDogNjYuNjY2NjY2NjclCn0KLmNvbC14eGwtOSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA3NSUKfQouY29sLXh4bC0xMCB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA4My4zMzMzMzMzMyUKfQouY29sLXh4bC0xMSB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiA5MS42NjY2NjY2NyUKfQouY29sLXh4bC0xMiB7CglmbGV4OiAwIDAgYXV0bzsKCXdpZHRoOiAxMDAlCn0KLm9mZnNldC14eGwtMCB7CgltYXJnaW4tbGVmdDogMAp9Ci5vZmZzZXQteHhsLTEgewoJbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlCn0KLm9mZnNldC14eGwtMiB7CgltYXJnaW4tbGVmdDogMTYuNjY2NjY2NjclCn0KLm9mZnNldC14eGwtMyB7CgltYXJnaW4tbGVmdDogMjUlCn0KLm9mZnNldC14eGwtNCB7CgltYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlCn0KLm9mZnNldC14eGwtNSB7CgltYXJnaW4tbGVmdDogNDEuNjY2NjY2NjclCn0KLm9mZnNldC14eGwtNiB7CgltYXJnaW4tbGVmdDogNTAlCn0KLm9mZnNldC14eGwtNyB7CgltYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlCn0KLm9mZnNldC14eGwtOCB7CgltYXJnaW4tbGVmdDogNjYuNjY2NjY2NjclCn0KLm9mZnNldC14eGwtOSB7CgltYXJnaW4tbGVmdDogNzUlCn0KLm9mZnNldC14eGwtMTAgewoJbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJQp9Ci5vZmZzZXQteHhsLTExIHsKCW1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NyUKfQouZy14eGwtMCwgLmd4LXh4bC0wIHsKLS1icy1ndXR0ZXIteDowCn0KLmcteHhsLTAsIC5neS14eGwtMCB7Ci0tYnMtZ3V0dGVyLXk6MAp9Ci5nLXh4bC0xLCAuZ3gteHhsLTEgewotLWJzLWd1dHRlci14OjAuMjVyZW0KfQouZy14eGwtMSwgLmd5LXh4bC0xIHsKLS1icy1ndXR0ZXIteTowLjI1cmVtCn0KLmcteHhsLTIsIC5neC14eGwtMiB7Ci0tYnMtZ3V0dGVyLXg6MC41cmVtCn0KLmcteHhsLTIsIC5neS14eGwtMiB7Ci0tYnMtZ3V0dGVyLXk6MC41cmVtCn0KLmcteHhsLTMsIC5neC14eGwtMyB7Ci0tYnMtZ3V0dGVyLXg6MXJlbQp9Ci5nLXh4bC0zLCAuZ3kteHhsLTMgewotLWJzLWd1dHRlci15OjFyZW0KfQouZy14eGwtNCwgLmd4LXh4bC00IHsKLS1icy1ndXR0ZXIteDoxLjVyZW0KfQouZy14eGwtNCwgLmd5LXh4bC00IHsKLS1icy1ndXR0ZXIteToxLjVyZW0KfQouZy14eGwtNSwgLmd4LXh4bC01IHsKLS1icy1ndXR0ZXIteDozcmVtCn0KLmcteHhsLTUsIC5neS14eGwtNSB7Ci0tYnMtZ3V0dGVyLXk6M3JlbQp9Cn0KLnRhYmxlIHsKLS1icy10YWJsZS1iZzp0cmFuc3BhcmVudDsKLS1icy10YWJsZS1hY2NlbnQtYmc6dHJhbnNwYXJlbnQ7Ci0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjojMjEyNTI5OwotLWJzLXRhYmxlLXN0cmlwZWQtYmc6cmdiYSgwLCAwLCAwLCAwLjA1KTsKLS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzIxMjUyOTsKLS1icy10YWJsZS1hY3RpdmUtYmc6cmdiYSgwLCAwLCAwLCAwLjEpOwotLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiMyMTI1Mjk7Ci0tYnMtdGFibGUtaG92ZXItYmc6cmdiYSgwLCAwLCAwLCAwLjA3NSk7Cgl3aWR0aDogMTAwJTsKCW1hcmdpbi1ib3R0b206IDFyZW07Cgljb2xvcjogIzIxMjUyOTsKCXZlcnRpY2FsLWFsaWduOiB0b3A7Cglib3JkZXItY29sb3I6ICNkZWUyZTYKfQoudGFibGU+Om5vdChjYXB0aW9uKT4qPiogewpwYWRkaW5nOiAxcmVtIC41cmVtOwoJYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtdGFibGUtYmcpOwoJYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OwoJYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLWJzLXRhYmxlLWFjY2VudC1iZykKfQoudGFibGU+dGJvZHkgewoJdmVydGljYWwtYWxpZ246IGluaGVyaXQKfQoudGFibGU+dGhlYWQgewoJdmVydGljYWwtYWxpZ246IGJvdHRvbQp9Ci50YWJsZSA+IDpub3QoOmxhc3QtY2hpbGQpID4gOmxhc3QtY2hpbGQgPiAqIHsKCWJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50Owp9Ci5jYXB0aW9uLXRvcCB7CgljYXB0aW9uLXNpZGU6IHRvcAp9Ci50YWJsZS1zbT46bm90KGNhcHRpb24pPio+KiB7CnBhZGRpbmc6LjI1cmVtIC4yNXJlbQp9Ci50YWJsZS1ib3JkZXJlZD46bm90KGNhcHRpb24pPiogewoJYm9yZGVyLXdpZHRoOiAxcHggMAp9Ci50YWJsZS1ib3JkZXJlZD46bm90KGNhcHRpb24pPio+KiB7Cglib3JkZXItd2lkdGg6IDAgMXB4Cn0KLnRhYmxlLWJvcmRlcmxlc3M+Om5vdChjYXB0aW9uKT4qPiogewoJYm9yZGVyLWJvdHRvbS13aWR0aDogMAp9Ci50YWJsZS1zdHJpcGVkPnRib2R5PnRyOm50aC1vZi10eXBlKG9kZCkgewotLWJzLXRhYmxlLWFjY2VudC1iZzp2YXIoLS1icy10YWJsZS1zdHJpcGVkLWJnKTsKCWNvbG9yOiB2YXIoLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yKQp9Ci50YWJsZS1hY3RpdmUgewotLWJzLXRhYmxlLWFjY2VudC1iZzp2YXIoLS1icy10YWJsZS1hY3RpdmUtYmcpOwoJY29sb3I6IHZhcigtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcikKfQoudGFibGUtaG92ZXI+dGJvZHk+dHI6aG92ZXIgewotLWJzLXRhYmxlLWFjY2VudC1iZzp2YXIoLS1icy10YWJsZS1ob3Zlci1iZyk7Cgljb2xvcjogdmFyKC0tYnMtdGFibGUtaG92ZXItY29sb3IpCn0KLnRhYmxlLXByaW1hcnkgewotLWJzLXRhYmxlLWJnOiNjZmUyZmY7Ci0tYnMtdGFibGUtc3RyaXBlZC1iZzojYzVkN2YyOwotLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6IzAwMDsKLS1icy10YWJsZS1hY3RpdmUtYmc6I2JhY2JlNjsKLS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzAwMDsKLS1icy10YWJsZS1ob3Zlci1iZzojYmZkMWVjOwotLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiMwMDA7Cgljb2xvcjogIzAwMDsKCWJvcmRlci1jb2xvcjogI2JhY2JlNgp9Ci50YWJsZS1zZWNvbmRhcnkgewotLWJzLXRhYmxlLWJnOiNlMmUzZTU7Ci0tYnMtdGFibGUtc3RyaXBlZC1iZzojZDdkOGRhOwotLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6IzAwMDsKLS1icy10YWJsZS1hY3RpdmUtYmc6I2NiY2NjZTsKLS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzAwMDsKLS1icy10YWJsZS1ob3Zlci1iZzojZDFkMmQ0OwotLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiMwMDA7Cgljb2xvcjogIzAwMDsKCWJvcmRlci1jb2xvcjogI2NiY2NjZQp9Ci50YWJsZS1zdWNjZXNzIHsKLS1icy10YWJsZS1iZzojZDFlN2RkOwotLWJzLXRhYmxlLXN0cmlwZWQtYmc6I2M3ZGJkMjsKLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiMwMDA7Ci0tYnMtdGFibGUtYWN0aXZlLWJnOiNiY2QwYzc7Ci0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiMwMDA7Ci0tYnMtdGFibGUtaG92ZXItYmc6I2MxZDZjYzsKLS1icy10YWJsZS1ob3Zlci1jb2xvcjojMDAwOwoJY29sb3I6ICMwMDA7Cglib3JkZXItY29sb3I6ICNiY2QwYzcKfQoudGFibGUtaW5mbyB7Ci0tYnMtdGFibGUtYmc6I2NmZjRmYzsKLS1icy10YWJsZS1zdHJpcGVkLWJnOiNjNWU4ZWY7Ci0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjojMDAwOwotLWJzLXRhYmxlLWFjdGl2ZS1iZzojYmFkY2UzOwotLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjojMDAwOwotLWJzLXRhYmxlLWhvdmVyLWJnOiNiZmUyZTk7Ci0tYnMtdGFibGUtaG92ZXItY29sb3I6IzAwMDsKCWNvbG9yOiAjMDAwOwoJYm9yZGVyLWNvbG9yOiAjYmFkY2UzCn0KLnRhYmxlLXdhcm5pbmcgewotLWJzLXRhYmxlLWJnOiNmZmYzY2Q7Ci0tYnMtdGFibGUtc3RyaXBlZC1iZzojZjJlN2MzOwotLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6IzAwMDsKLS1icy10YWJsZS1hY3RpdmUtYmc6I2U2ZGJiOTsKLS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzAwMDsKLS1icy10YWJsZS1ob3Zlci1iZzojZWNlMWJlOwotLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiMwMDA7Cgljb2xvcjogIzAwMDsKCWJvcmRlci1jb2xvcjogI2U2ZGJiOQp9Ci50YWJsZS1kYW5nZXIgewotLWJzLXRhYmxlLWJnOiNmOGQ3ZGE7Ci0tYnMtdGFibGUtc3RyaXBlZC1iZzojZWNjY2NmOwotLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6IzAwMDsKLS1icy10YWJsZS1hY3RpdmUtYmc6I2RmYzJjNDsKLS1icy10YWJsZS1hY3RpdmUtY29sb3I6IzAwMDsKLS1icy10YWJsZS1ob3Zlci1iZzojZTVjN2NhOwotLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiMwMDA7Cgljb2xvcjogIzAwMDsKCWJvcmRlci1jb2xvcjogI2RmYzJjNAp9Ci50YWJsZS1saWdodCB7Ci0tYnMtdGFibGUtYmc6I2Y4ZjlmYTsKLS1icy10YWJsZS1zdHJpcGVkLWJnOiNlY2VkZWU7Ci0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjojMDAwOwotLWJzLXRhYmxlLWFjdGl2ZS1iZzojZGZlMGUxOwotLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjojMDAwOwotLWJzLXRhYmxlLWhvdmVyLWJnOiNlNWU2ZTc7Ci0tYnMtdGFibGUtaG92ZXItY29sb3I6IzAwMDsKCWNvbG9yOiAjMDAwOwoJYm9yZGVyLWNvbG9yOiAjZGZlMGUxCn0KLnRhYmxlLWRhcmsgewotLWJzLXRhYmxlLWJnOiAjMWMzMDQwOwotLWJzLXRhYmxlLXN0cmlwZWQtYmc6IzFjMzA0MDsKLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiNmZmY7Ci0tYnMtdGFibGUtYWN0aXZlLWJnOiMzNzNiM2U7Ci0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiNmZmY7Ci0tYnMtdGFibGUtaG92ZXItYmc6IzMyMzUzOTsKLS1icy10YWJsZS1ob3Zlci1jb2xvcjojZmZmOwoJY29sb3I6ICNmZmY7Cglib3JkZXItY29sb3I6ICMzNzNiM2UKfQoudGFibGUtcmVzcG9uc2l2ZSB7CglvdmVyZmxvdy14OiBhdXRvOwoJLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoCn0KQG1lZGlhIChtYXgtd2lkdGg6NTc1Ljk4cHgpIHsKLnRhYmxlLXJlc3BvbnNpdmUtc20gewoJb3ZlcmZsb3cteDogYXV0bzsKCS13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaAp9Cn0KQG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpIHsKLnRhYmxlLXJlc3BvbnNpdmUtbWQgewoJb3ZlcmZsb3cteDogYXV0bzsKCS13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaAp9Cn0KQG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpIHsKLnRhYmxlLXJlc3BvbnNpdmUtbGcgewoJb3ZlcmZsb3cteDogYXV0bzsKCS13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaAp9Cn0KQG1lZGlhIChtYXgtd2lkdGg6MTE5OS45OHB4KSB7Ci50YWJsZS1yZXNwb25zaXZlLXhsIHsKCW92ZXJmbG93LXg6IGF1dG87Cgktd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2gKfQp9CkBtZWRpYSAobWF4LXdpZHRoOjEzOTkuOThweCkgewoudGFibGUtcmVzcG9uc2l2ZS14eGwgewoJb3ZlcmZsb3cteDogYXV0bzsKCS13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaAp9Cn0KLmZvcm0tbGFiZWwgewptYXJnaW4tYm90dG9tOi41cmVtCn0KLmNvbC1mb3JtLWxhYmVsIHsKcGFkZGluZy10b3A6Y2FsYyguMzc1cmVtICsgMXB4KTsKcGFkZGluZy1ib3R0b206Y2FsYyguMzc1cmVtICsgMXB4KTsKCW1hcmdpbi1ib3R0b206IDA7Cglmb250LXNpemU6IGluaGVyaXQ7CglsaW5lLWhlaWdodDogMS41Cn0KLmNvbC1mb3JtLWxhYmVsLWxnIHsKcGFkZGluZy10b3A6Y2FsYyguNXJlbSArIDFweCk7CnBhZGRpbmctYm90dG9tOmNhbGMoLjVyZW0gKyAxcHgpOwoJZm9udC1zaXplOiAxLjI1cmVtCn0KLmNvbC1mb3JtLWxhYmVsLXNtIHsKcGFkZGluZy10b3A6Y2FsYyguMjVyZW0gKyAxcHgpOwpwYWRkaW5nLWJvdHRvbTpjYWxjKC4yNXJlbSArIDFweCk7CmZvbnQtc2l6ZTouODc1cmVtCn0KLmZvcm0tdGV4dCB7Cm1hcmdpbi10b3A6LjI1cmVtOwoJZm9udC1zaXplOiAuODc1ZW07Cgljb2xvcjogIzZjNzU3ZAp9Ci5mb3JtLWNvbnRyb2wgewoJZGlzcGxheTogYmxvY2s7Cgl3aWR0aDogMTAwJTsKcGFkZGluZzouMzc1cmVtIC43NXJlbTsKCWZvbnQtc2l6ZTogMXJlbTsKCWZvbnQtd2VpZ2h0OiA0MDA7CglsaW5lLWhlaWdodDogMS41OwoJY29sb3I6ICMyMTI1Mjk7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKCWJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7Cgktd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CgktbW96LWFwcGVhcmFuY2U6IG5vbmU7CglhcHBlYXJhbmNlOiBub25lOwpib3JkZXItcmFkaXVzOi4yNXJlbTsKCXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5mb3JtLWNvbnRyb2wgewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLmZvcm0tY29udHJvbFt0eXBlPWZpbGVdIHsKCW92ZXJmbG93OiBoaWRkZW4KfQouZm9ybS1jb250cm9sW3R5cGU9ZmlsZV06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHsKCWN1cnNvcjogcG9pbnRlcgp9Ci5mb3JtLWNvbnRyb2w6Zm9jdXMgewoJY29sb3I6ICMyMTI1Mjk7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYm9yZGVyLWNvbG9yOiAjODZiN2ZlOwoJb3V0bGluZTogMDsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgxMywxMTAsMjUzLC4yNSkKfQouZm9ybS1jb250cm9sOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUgewpoZWlnaHQ6MS41ZW0KfQouZm9ybS1jb250cm9sOjotbW96LXBsYWNlaG9sZGVyIHsKY29sb3I6IzZjNzU3ZDsKb3BhY2l0eToxCn0KLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIgewpjb2xvcjojNmM3NTdkOwpvcGFjaXR5OjEKfQouZm9ybS1jb250cm9sOmRpc2FibGVkLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOwoJb3BhY2l0eTogMQp9Ci5mb3JtLWNvbnRyb2w6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHsKcGFkZGluZzouMzc1cmVtIC43NXJlbTsKbWFyZ2luOi0uMzc1cmVtIC0uNzVyZW07Ci13ZWJraXQtbWFyZ2luLWVuZDouNzVyZW07Cm1hcmdpbi1pbmxpbmUtZW5kOi43NXJlbTsKY29sb3I6IzIxMjUyOTsKYmFja2dyb3VuZC1jb2xvcjojZTllY2VmOwpwb2ludGVyLWV2ZW50czpub25lOwpib3JkZXItY29sb3I6aW5oZXJpdDsKYm9yZGVyLXN0eWxlOnNvbGlkOwpib3JkZXItd2lkdGg6MDsKYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6MXB4Owpib3JkZXItcmFkaXVzOjA7CnRyYW5zaXRpb246Y29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0Cn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewouZm9ybS1jb250cm9sOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7CnRyYW5zaXRpb246bm9uZQp9Cn0KLmZvcm0tY29udHJvbDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHsKYmFja2dyb3VuZC1jb2xvcjojZGRlMGUzCn0KLmZvcm0tY29udHJvbDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24gewpwYWRkaW5nOi4zNzVyZW0gLjc1cmVtOwptYXJnaW46LS4zNzVyZW0gLS43NXJlbTsKLXdlYmtpdC1tYXJnaW4tZW5kOi43NXJlbTsKbWFyZ2luLWlubGluZS1lbmQ6Ljc1cmVtOwpjb2xvcjojMjEyNTI5OwpiYWNrZ3JvdW5kLWNvbG9yOiNlOWVjZWY7CnBvaW50ZXItZXZlbnRzOm5vbmU7CmJvcmRlci1jb2xvcjppbmhlcml0Owpib3JkZXItc3R5bGU6c29saWQ7CmJvcmRlci13aWR0aDowOwpib3JkZXItaW5saW5lLWVuZC13aWR0aDoxcHg7CmJvcmRlci1yYWRpdXM6MDsKLXdlYmtpdC10cmFuc2l0aW9uOmNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsKdHJhbnNpdGlvbjpjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHsKLXdlYmtpdC10cmFuc2l0aW9uOm5vbmU7CnRyYW5zaXRpb246bm9uZQp9Cn0KLmZvcm0tY29udHJvbDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHsKYmFja2dyb3VuZC1jb2xvcjojZGRlMGUzCn0KLmZvcm0tY29udHJvbC1wbGFpbnRleHQgewoJZGlzcGxheTogYmxvY2s7Cgl3aWR0aDogMTAwJTsKcGFkZGluZzouMzc1cmVtIDA7CgltYXJnaW4tYm90dG9tOiAwOwoJbGluZS1oZWlnaHQ6IDEuNTsKCWNvbG9yOiAjMjEyNTI5OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50OwoJYm9yZGVyLXdpZHRoOiAxcHggMAp9Ci5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1sZywgLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtIHsKCXBhZGRpbmctcmlnaHQ6IDA7CglwYWRkaW5nLWxlZnQ6IDAKfQouZm9ybS1jb250cm9sLXNtIHsKbWluLWhlaWdodDpjYWxjKDEuNWVtICsgLjVyZW0gKyAycHgpOwpwYWRkaW5nOi4yNXJlbSAuNXJlbTsKZm9udC1zaXplOi44NzVyZW07CmJvcmRlci1yYWRpdXM6LjJyZW0KfQouZm9ybS1jb250cm9sLXNtOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7CnBhZGRpbmc6LjI1cmVtIC41cmVtOwptYXJnaW46LS4yNXJlbSAtLjVyZW07Ci13ZWJraXQtbWFyZ2luLWVuZDouNXJlbTsKbWFyZ2luLWlubGluZS1lbmQ6LjVyZW0KfQouZm9ybS1jb250cm9sLXNtOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7CnBhZGRpbmc6LjI1cmVtIC41cmVtOwptYXJnaW46LS4yNXJlbSAtLjVyZW07Ci13ZWJraXQtbWFyZ2luLWVuZDouNXJlbTsKbWFyZ2luLWlubGluZS1lbmQ6LjVyZW0KfQouZm9ybS1jb250cm9sLWxnIHsKCW1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTsKcGFkZGluZzouNXJlbSAxcmVtOwoJZm9udC1zaXplOiAxLjI1cmVtOwpib3JkZXItcmFkaXVzOi4zcmVtCn0KLmZvcm0tY29udHJvbC1sZzo6ZmlsZS1zZWxlY3Rvci1idXR0b24gewpwYWRkaW5nOi41cmVtIDFyZW07Cm1hcmdpbjotLjVyZW0gLTFyZW07Ci13ZWJraXQtbWFyZ2luLWVuZDoxcmVtOwptYXJnaW4taW5saW5lLWVuZDoxcmVtCn0KLmZvcm0tY29udHJvbC1sZzo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24gewpwYWRkaW5nOi41cmVtIDFyZW07Cm1hcmdpbjotLjVyZW0gLTFyZW07Ci13ZWJraXQtbWFyZ2luLWVuZDoxcmVtOwptYXJnaW4taW5saW5lLWVuZDoxcmVtCn0KdGV4dGFyZWEuZm9ybS1jb250cm9sIHsKbWluLWhlaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtICsgMnB4KQp9CnRleHRhcmVhLmZvcm0tY29udHJvbC1zbSB7Cm1pbi1oZWlnaHQ6Y2FsYygxLjVlbSArIC41cmVtICsgMnB4KQp9CnRleHRhcmVhLmZvcm0tY29udHJvbC1sZyB7CgltaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMXJlbSArIDJweCkKfQouZm9ybS1jb250cm9sLWNvbG9yIHsKCXdpZHRoOiAzcmVtOwoJaGVpZ2h0OiBhdXRvOwpwYWRkaW5nOi4zNzVyZW0KfQouZm9ybS1jb250cm9sLWNvbG9yOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7CgljdXJzb3I6IHBvaW50ZXIKfQouZm9ybS1jb250cm9sLWNvbG9yOjotbW96LWNvbG9yLXN3YXRjaCB7CmhlaWdodDoxLjVlbTsKYm9yZGVyLXJhZGl1czouMjVyZW0KfQouZm9ybS1jb250cm9sLWNvbG9yOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7CmhlaWdodDoxLjVlbTsKYm9yZGVyLXJhZGl1czouMjVyZW0KfQouZm9ybS1zZWxlY3QgewoJZGlzcGxheTogYmxvY2s7Cgl3aWR0aDogMTAwJTsKcGFkZGluZzouMzc1cmVtIDIuMjVyZW0gLjM3NXJlbSAuNzVyZW07CgktbW96LXBhZGRpbmctc3RhcnQ6IGNhbGMoMC43NXJlbSAtIDNweCk7Cglmb250LXNpemU6IDFyZW07Cglmb250LXdlaWdodDogNDAwOwoJbGluZS1oZWlnaHQ6IDEuNTsKCWNvbG9yOiAjMjEyNTI5OwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlIik7CgliYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwpiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IC43NXJlbSBjZW50ZXI7CgliYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDsKCWJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7CmJvcmRlci1yYWRpdXM6LjI1cmVtOwoJdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsKCS13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKCS1tb3otYXBwZWFyYW5jZTogbm9uZTsKCWFwcGVhcmFuY2U6IG5vbmUKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5mb3JtLXNlbGVjdCB7Cgl0cmFuc2l0aW9uOiBub25lCn0KfQouZm9ybS1zZWxlY3Q6Zm9jdXMgewoJYm9yZGVyLWNvbG9yOiAjODZiN2ZlOwoJb3V0bGluZTogMDsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgxMywxMTAsMjUzLC4yNSkKfQouZm9ybS1zZWxlY3RbbXVsdGlwbGVdLCAuZm9ybS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPSIxIl0pIHsKcGFkZGluZy1yaWdodDouNzVyZW07CgliYWNrZ3JvdW5kLWltYWdlOiBub25lCn0KLmZvcm0tc2VsZWN0OmRpc2FibGVkIHsKCWJhY2tncm91bmQtY29sb3I6ICNlOWVjZWYKfQouZm9ybS1zZWxlY3Q6LW1vei1mb2N1c3Jpbmcgewpjb2xvcjp0cmFuc3BhcmVudDsKdGV4dC1zaGFkb3c6MCAwIDAgIzIxMjUyOQp9Ci5mb3JtLXNlbGVjdC1zbSB7CnBhZGRpbmctdG9wOi4yNXJlbTsKcGFkZGluZy1ib3R0b206LjI1cmVtOwpwYWRkaW5nLWxlZnQ6LjVyZW07CmZvbnQtc2l6ZTouODc1cmVtCn0KLmZvcm0tc2VsZWN0LWxnIHsKcGFkZGluZy10b3A6LjVyZW07CnBhZGRpbmctYm90dG9tOi41cmVtOwoJcGFkZGluZy1sZWZ0OiAxcmVtOwoJZm9udC1zaXplOiAxLjI1cmVtCn0KLmZvcm0tY2hlY2sgewoJZGlzcGxheTogYmxvY2s7CgltaW4taGVpZ2h0OiAxLjVyZW07CglwYWRkaW5nLWxlZnQ6IDEuNWVtOwptYXJnaW4tYm90dG9tOi4xMjVyZW0KfQouZm9ybS1jaGVjayAuZm9ybS1jaGVjay1pbnB1dCB7CglmbG9hdDogbGVmdDsKCW1hcmdpbi1sZWZ0OiAtMS41ZW0KfQouZm9ybS1jaGVjay1pbnB1dCB7Cgl3aWR0aDogMWVtOwoJaGVpZ2h0OiAxZW07CgltYXJnaW4tdG9wOiAuMjVlbTsKCXZlcnRpY2FsLWFsaWduOiB0b3A7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKCWJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsKCWJhY2tncm91bmQtc2l6ZTogY29udGFpbjsKCWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjI1KTsKCS13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKCS1tb3otYXBwZWFyYW5jZTogbm9uZTsKCWFwcGVhcmFuY2U6IG5vbmU7Cgktd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7Cgljb2xvci1hZGp1c3Q6IGV4YWN0Cn0KLmZvcm0tY2hlY2staW5wdXRbdHlwZT1jaGVja2JveF0gewoJYm9yZGVyLXJhZGl1czogLjI1ZW0KfQouZm9ybS1jaGVjay1pbnB1dFt0eXBlPXJhZGlvXSB7Cglib3JkZXItcmFkaXVzOiA1MCUKfQouZm9ybS1jaGVjay1pbnB1dDphY3RpdmUgewoJZmlsdGVyOiBicmlnaHRuZXNzKDkwJSkKfQouZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7Cglib3JkZXItY29sb3I6ICM4NmI3ZmU7CglvdXRsaW5lOiAwOwpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDEzLDExMCwyNTMsLjI1KQp9Ci5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQgewoJYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDsKCWJvcmRlci1jb2xvcjogIzBkNmVmZAp9Ci5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWRbdHlwZT1jaGVja2JveF0gewoJYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNmZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGwzIDNsNi02Jy8lM2UlM2Mvc3ZnJTNlIikKfQouZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9cmFkaW9dIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMicgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlIikKfQouZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIHsKCWJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7Cglib3JkZXItY29sb3I6ICMwZDZlZmQ7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLyUzZSUzYy9zdmclM2UiKQp9Ci5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIHsKCXBvaW50ZXItZXZlbnRzOiBub25lOwoJZmlsdGVyOiBub25lOwoJb3BhY2l0eTogLjUKfQouZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZH4uZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXRbZGlzYWJsZWRdfi5mb3JtLWNoZWNrLWxhYmVsIHsKCW9wYWNpdHk6IC41Cn0KLmZvcm0tc3dpdGNoIHsKCXBhZGRpbmctbGVmdDogMi41ZW0KfQouZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQgewoJd2lkdGg6IDJlbTsKCW1hcmdpbi1sZWZ0OiAtMi41ZW07CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9J3JnYmElMjgwLCAwLCAwLCAwLjI1JTI5Jy8lM2UlM2Mvc3ZnJTNlIik7CgliYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjsKCWJvcmRlci1yYWRpdXM6IDJlbTsKCXRyYW5zaXRpb246IGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dAp9CkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2UpIHsKLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0IHsKCXRyYW5zaXRpb246IG5vbmUKfQp9Ci5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyMzg2YjdmZScvJTNlJTNjL3N2ZyUzZSIpCn0KLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQgewoJYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyOwoJYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSclMjNmZmYnLyUzZSUzYy9zdmclM2UiKQp9Ci5mb3JtLWNoZWNrLWlubGluZSB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CgltYXJnaW4tcmlnaHQ6IDFyZW0KfQouYnRuLWNoZWNrIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWNsaXA6IHJlY3QoMCwwLDAsMCk7Cglwb2ludGVyLWV2ZW50czogbm9uZQp9Ci5idG4tY2hlY2s6ZGlzYWJsZWQrLmJ0biwgLmJ0bi1jaGVja1tkaXNhYmxlZF0rLmJ0biB7Cglwb2ludGVyLWV2ZW50czogbm9uZTsKCWZpbHRlcjogbm9uZTsKCW9wYWNpdHk6IC42NQp9Ci5mb3JtLXJhbmdlIHsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiAxLjVyZW07CglwYWRkaW5nOiAwOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cgktd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CgktbW96LWFwcGVhcmFuY2U6IG5vbmU7CglhcHBlYXJhbmNlOiBub25lCn0KLmZvcm0tcmFuZ2U6Zm9jdXMgewoJb3V0bGluZTogMAp9Ci5mb3JtLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci10aHVtYiB7CmJveC1zaGFkb3c6MCAwIDAgMXB4ICNmZmYsIDAgMCAwIC4yNXJlbSByZ2JhKDEzLDExMCwyNTMsLjI1KQp9Ci5mb3JtLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRodW1iIHsKYm94LXNoYWRvdzowIDAgMCAxcHggI2ZmZiwgMCAwIDAgLjI1cmVtIHJnYmEoMTMsMTEwLDI1MywuMjUpCn0KLmZvcm0tcmFuZ2U6Oi1tb3otZm9jdXMtb3V0ZXIgewpib3JkZXI6MAp9Ci5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7CndpZHRoOjFyZW07CmhlaWdodDoxcmVtOwptYXJnaW4tdG9wOi0uMjVyZW07CmJhY2tncm91bmQtY29sb3I6IzBkNmVmZDsKYm9yZGVyOjA7CmJvcmRlci1yYWRpdXM6MXJlbTsKLXdlYmtpdC10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsKdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7Ci13ZWJraXQtYXBwZWFyYW5jZTpub25lOwphcHBlYXJhbmNlOm5vbmUKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7Ci13ZWJraXQtdHJhbnNpdGlvbjpub25lOwp0cmFuc2l0aW9uOm5vbmUKfQp9Ci5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYjphY3RpdmUgewpiYWNrZ3JvdW5kLWNvbG9yOiNiNmQ0ZmUKfQouZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sgewp3aWR0aDoxMDAlOwpoZWlnaHQ6LjVyZW07CmNvbG9yOnRyYW5zcGFyZW50OwpjdXJzb3I6cG9pbnRlcjsKYmFja2dyb3VuZC1jb2xvcjojZGVlMmU2Owpib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7CmJvcmRlci1yYWRpdXM6MXJlbQp9Ci5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHsKd2lkdGg6MXJlbTsKaGVpZ2h0OjFyZW07CmJhY2tncm91bmQtY29sb3I6IzBkNmVmZDsKYm9yZGVyOjA7CmJvcmRlci1yYWRpdXM6MXJlbTsKLW1vei10cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDsKdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQ7Ci1tb3otYXBwZWFyYW5jZTpub25lOwphcHBlYXJhbmNlOm5vbmUKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHsKLW1vei10cmFuc2l0aW9uOm5vbmU7CnRyYW5zaXRpb246bm9uZQp9Cn0KLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWI6YWN0aXZlIHsKYmFja2dyb3VuZC1jb2xvcjojYjZkNGZlCn0KLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sgewp3aWR0aDoxMDAlOwpoZWlnaHQ6LjVyZW07CmNvbG9yOnRyYW5zcGFyZW50OwpjdXJzb3I6cG9pbnRlcjsKYmFja2dyb3VuZC1jb2xvcjojZGVlMmU2Owpib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7CmJvcmRlci1yYWRpdXM6MXJlbQp9Ci5mb3JtLXJhbmdlOmRpc2FibGVkIHsKCXBvaW50ZXItZXZlbnRzOiBub25lCn0KLmZvcm0tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsKYmFja2dyb3VuZC1jb2xvcjojYWRiNWJkCn0KLmZvcm0tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWIgewpiYWNrZ3JvdW5kLWNvbG9yOiNhZGI1YmQKfQouZm9ybS1mbG9hdGluZyB7Cglwb3NpdGlvbjogcmVsYXRpdmUKfQouZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sLCAuZm9ybS1mbG9hdGluZz4uZm9ybS1zZWxlY3QgewoJaGVpZ2h0OiBjYWxjKDMuNXJlbSArIDJweCk7CglsaW5lLWhlaWdodDogMS4yNQp9Ci5mb3JtLWZsb2F0aW5nPmxhYmVsIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogMDsKCWxlZnQ6IDA7CgloZWlnaHQ6IDEwMCU7CnBhZGRpbmc6MXJlbSAuNzVyZW07Cglwb2ludGVyLWV2ZW50czogbm9uZTsKCWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwoJdHJhbnNmb3JtLW9yaWdpbjogMCAwOwoJdHJhbnNpdGlvbjogb3BhY2l0eSAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMXMgZWFzZS1pbi1vdXQKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5mb3JtLWZsb2F0aW5nPmxhYmVsIHsKCXRyYW5zaXRpb246IG5vbmUKfQp9Ci5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2wgewpwYWRkaW5nOjFyZW0gLjc1cmVtCn0KLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlciB7CmNvbG9yOnRyYW5zcGFyZW50Cn0KLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIgewpjb2xvcjp0cmFuc3BhcmVudAp9Ci5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6bm90KDotbW96LXBsYWNlaG9sZGVyLXNob3duKSB7CglwYWRkaW5nLXRvcDogMS42MjVyZW07CnBhZGRpbmctYm90dG9tOi42MjVyZW0KfQouZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsIC5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7CglwYWRkaW5nLXRvcDogMS42MjVyZW07CglwYWRkaW5nLWJvdHRvbTogLjYyNXJlbTsKCWNvbG9yOiAjZmZmZmZmOwp9Ci5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7CnBhZGRpbmctdG9wOjEuNjI1cmVtOwpwYWRkaW5nLWJvdHRvbTouNjI1cmVtCn0KLmZvcm0tZmxvYXRpbmc+LmZvcm0tc2VsZWN0IHsKCXBhZGRpbmctdG9wOiAxLjYyNXJlbTsKcGFkZGluZy1ib3R0b206LjYyNXJlbQp9Ci5mb3JtLWZsb2F0aW5nPi5mb3JtLWNvbnRyb2w6bm90KDotbW96LXBsYWNlaG9sZGVyLXNob3duKX5sYWJlbCB7CglvcGFjaXR5OiAuNjU7CnRyYW5zZm9ybTpzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkKfQouZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sOmZvY3VzfmxhYmVsLCAuZm9ybS1mbG9hdGluZz4uZm9ybS1jb250cm9sOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pfmxhYmVsLCAuZm9ybS1mbG9hdGluZz4uZm9ybS1zZWxlY3R+bGFiZWwgewoJb3BhY2l0eTogLjY1Owp0cmFuc2Zvcm06c2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pCn0KLmZvcm0tZmxvYXRpbmc+LmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsfmxhYmVsIHsKb3BhY2l0eTouNjU7CnRyYW5zZm9ybTpzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkKfQouaW5wdXQtZ3JvdXAgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJZGlzcGxheTogZmxleDsKCWZsZXgtd3JhcDogd3JhcDsKCWFsaWduLWl0ZW1zOiBzdHJldGNoOwoJd2lkdGg6IDEwMCUKfQouaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCwgLmlucHV0LWdyb3VwPi5mb3JtLXNlbGVjdCB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglmbGV4OiAxIDEgYXV0bzsKCXdpZHRoOiAxJTsKCW1pbi13aWR0aDogMAp9Ci5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sOmZvY3VzLCAuaW5wdXQtZ3JvdXA+LmZvcm0tc2VsZWN0OmZvY3VzIHsKCXotaW5kZXg6IDMKfQouaW5wdXQtZ3JvdXAgLmJ0biB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl6LWluZGV4OiAyCn0KLmlucHV0LWdyb3VwIC5idG46Zm9jdXMgewoJei1pbmRleDogMwp9Ci5pbnB1dC1ncm91cC10ZXh0IHsKCWRpc3BsYXk6IGZsZXg7CglhbGlnbi1pdGVtczogY2VudGVyOwpwYWRkaW5nOi4zNzVyZW0gLjc1cmVtOwoJZm9udC1zaXplOiAxcmVtOwoJZm9udC13ZWlnaHQ6IDQwMDsKCWxpbmUtaGVpZ2h0OiAxLjU7Cgljb2xvcjogIzIxMjUyOTsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXdoaXRlLXNwYWNlOiBub3dyYXA7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmOwoJYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTsKYm9yZGVyLXJhZGl1czouMjVyZW0KfQouaW5wdXQtZ3JvdXAtbGc+LmJ0biwgLmlucHV0LWdyb3VwLWxnPi5mb3JtLWNvbnRyb2wsIC5pbnB1dC1ncm91cC1sZz4uZm9ybS1zZWxlY3QsIC5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtdGV4dCB7CnBhZGRpbmc6LjVyZW0gMXJlbTsKCWZvbnQtc2l6ZTogMS4yNXJlbTsKYm9yZGVyLXJhZGl1czouM3JlbQp9Ci5pbnB1dC1ncm91cC1zbT4uYnRuLCAuaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbCwgLmlucHV0LWdyb3VwLXNtPi5mb3JtLXNlbGVjdCwgLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC10ZXh0IHsKcGFkZGluZzouMjVyZW0gLjVyZW07CmZvbnQtc2l6ZTouODc1cmVtOwpib3JkZXItcmFkaXVzOi4ycmVtCn0KLmlucHV0LWdyb3VwLWxnPi5mb3JtLXNlbGVjdCwgLmlucHV0LWdyb3VwLXNtPi5mb3JtLXNlbGVjdCB7CglwYWRkaW5nLXJpZ2h0OiAzcmVtCn0KLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pPi5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiszKSwgLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pPjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpIHsKCWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOwoJYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAKfQouaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+LmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuKzQpLCAuaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24+Om50aC1sYXN0LWNoaWxkKG4rMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSkgewoJYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7Cglib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMAp9Ci5pbnB1dC1ncm91cD46bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KTpub3QoLnZhbGlkLXRvb2x0aXApOm5vdCgudmFsaWQtZmVlZGJhY2spOm5vdCguaW52YWxpZC10b29sdGlwKTpub3QoLmludmFsaWQtZmVlZGJhY2spIHsKCW1hcmdpbi1sZWZ0OiAtMXB4OwoJYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKCWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAKfQoudmFsaWQtZmVlZGJhY2sgewoJZGlzcGxheTogbm9uZTsKCXdpZHRoOiAxMDAlOwptYXJnaW4tdG9wOi4yNXJlbTsKCWZvbnQtc2l6ZTogLjg3NWVtOwoJY29sb3I6ICMxOTg3NTQKfQoudmFsaWQtdG9vbHRpcCB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDEwMCU7Cgl6LWluZGV4OiA1OwoJZGlzcGxheTogbm9uZTsKCW1heC13aWR0aDogMTAwJTsKcGFkZGluZzouMjVyZW0gLjVyZW07Cm1hcmdpbi10b3A6LjFyZW07CmZvbnQtc2l6ZTouODc1cmVtOwoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1LDEzNSw4NCwuOSk7CmJvcmRlci1yYWRpdXM6LjI1cmVtCn0KLmlzLXZhbGlkfi52YWxpZC1mZWVkYmFjaywgLmlzLXZhbGlkfi52YWxpZC10b29sdGlwLCAud2FzLXZhbGlkYXRlZCA6dmFsaWR+LnZhbGlkLWZlZWRiYWNrLCAud2FzLXZhbGlkYXRlZCA6dmFsaWR+LnZhbGlkLXRvb2x0aXAgewpkaXNwbGF5OmJsb2NrCn0KLmZvcm0tY29udHJvbC5pcy12YWxpZCwgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCB7CmJvcmRlci1jb2xvcjojMTk4NzU0OwpwYWRkaW5nLXJpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0pOwpiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2UiKTsKYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0OwpiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pIGNlbnRlcjsKYmFja2dyb3VuZC1zaXplOmNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSkKfQouZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3VzIHsKYm9yZGVyLWNvbG9yOiMxOTg3NTQ7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjUsMTM1LDg0LC4yNSkKfQoud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy12YWxpZCB7CnBhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7CmJhY2tncm91bmQtcG9zaXRpb246dG9wIGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pIHJpZ2h0IGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pCn0KLmZvcm0tc2VsZWN0LmlzLXZhbGlkLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQgewpib3JkZXItY29sb3I6IzE5ODc1NAp9Ci5mb3JtLXNlbGVjdC5pcy12YWxpZDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksIC5mb3JtLXNlbGVjdC5pcy12YWxpZDpub3QoW211bHRpcGxlXSlbc2l6ZT0iMSJdLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZV0pOm5vdChbc2l6ZV0pLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQ6bm90KFttdWx0aXBsZV0pW3NpemU9IjEiXSB7CnBhZGRpbmctcmlnaHQ6NC4xMjVyZW07CmJhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2UiKSwgdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzE5ODc1NCcgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZSIpOwpiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IC43NXJlbSBjZW50ZXIsIGNlbnRlciByaWdodCAyLjI1cmVtOwpiYWNrZ3JvdW5kLXNpemU6MTZweCAxMnB4LCBjYWxjKC43NWVtICsgLjM3NXJlbSkgY2FsYyguNzVlbSArIC4zNzVyZW0pCn0KLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQ6Zm9jdXMgewpib3JkZXItY29sb3I6IzE5ODc1NDsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgyNSwxMzUsODQsLjI1KQp9Ci5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB7CmJvcmRlci1jb2xvcjojMTk4NzU0Cn0KLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQ6Y2hlY2tlZCwgLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQ6Y2hlY2tlZCB7CmJhY2tncm91bmQtY29sb3I6IzE5ODc1NAp9Ci5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZDpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjUsMTM1LDg0LC4yNSkKfQouZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZH4uZm9ybS1jaGVjay1sYWJlbCwgLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWR+LmZvcm0tY2hlY2stbGFiZWwgewpjb2xvcjojMTk4NzU0Cn0KLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0fi52YWxpZC1mZWVkYmFjayB7CgltYXJnaW4tbGVmdDogLjVlbQp9Ci5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLmlzLXZhbGlkLCAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0LmlzLXZhbGlkLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDp2YWxpZCwgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5mb3JtLXNlbGVjdDp2YWxpZCB7CnotaW5kZXg6MQp9Ci5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLmlzLXZhbGlkOmZvY3VzLCAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDp2YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5mb3JtLXNlbGVjdDp2YWxpZDpmb2N1cyB7CnotaW5kZXg6Mwp9Ci5pbnZhbGlkLWZlZWRiYWNrIHsKCWRpc3BsYXk6IG5vbmU7Cgl3aWR0aDogMTAwJTsKbWFyZ2luLXRvcDouMjVyZW07Cglmb250LXNpemU6IC44NzVlbTsKCWNvbG9yOiAjZGMzNTQ1Cn0KLmludmFsaWQtdG9vbHRpcCB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDEwMCU7Cgl6LWluZGV4OiA1OwoJZGlzcGxheTogbm9uZTsKCW1heC13aWR0aDogMTAwJTsKcGFkZGluZzouMjVyZW0gLjVyZW07Cm1hcmdpbi10b3A6LjFyZW07CmZvbnQtc2l6ZTouODc1cmVtOwoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMCw1Myw2OSwuOSk7CmJvcmRlci1yYWRpdXM6LjI1cmVtCn0KLmlzLWludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssIC5pcy1pbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsIC53YXMtdmFsaWRhdGVkIDppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLCAud2FzLXZhbGlkYXRlZCA6aW52YWxpZH4uaW52YWxpZC10b29sdGlwIHsKZGlzcGxheTpibG9jawp9Ci5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCwgLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkIHsKYm9yZGVyLWNvbG9yOiNkYzM1NDU7CnBhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7CmJhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZGMzNTQ1JyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2RjMzU0NScgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlIik7CmJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsKYmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCBjYWxjKC4zNzVlbSArIC4xODc1cmVtKSBjZW50ZXI7CmJhY2tncm91bmQtc2l6ZTpjYWxjKC43NWVtICsgLjM3NXJlbSkgY2FsYyguNzVlbSArIC4zNzVyZW0pCn0KLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXMgewpib3JkZXItY29sb3I6I2RjMzU0NTsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgyMjAsNTMsNjksLjI1KQp9Ci53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7CnBhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7CmJhY2tncm91bmQtcG9zaXRpb246dG9wIGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pIHJpZ2h0IGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pCn0KLmZvcm0tc2VsZWN0LmlzLWludmFsaWQsIC53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkIHsKYm9yZGVyLWNvbG9yOiNkYzM1NDUKfQouZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOm5vdChbbXVsdGlwbGVdKVtzaXplPSIxIl0sIC53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSwgLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6bm90KFttdWx0aXBsZV0pW3NpemU9IjEiXSB7CnBhZGRpbmctcmlnaHQ6NC4xMjVyZW07CmJhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMzNDNhNDAnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2UiKSwgdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZGMzNTQ1JyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvJTNlJTNjcGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLyUzZSUzY2NpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyUyM2RjMzU0NScgc3Ryb2tlPSdub25lJy8lM2UlM2Mvc3ZnJTNlIik7CmJhY2tncm91bmQtcG9zaXRpb246cmlnaHQgLjc1cmVtIGNlbnRlciwgY2VudGVyIHJpZ2h0IDIuMjVyZW07CmJhY2tncm91bmQtc2l6ZToxNnB4IDEycHgsIGNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSkKfQouZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6Zm9jdXMgewpib3JkZXItY29sb3I6I2RjMzU0NTsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgyMjAsNTMsNjksLjI1KQp9Ci5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQsIC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgewpib3JkZXItY29sb3I6I2RjMzU0NQp9Ci5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQ6Y2hlY2tlZCwgLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZDpjaGVja2VkIHsKYmFja2dyb3VuZC1jb2xvcjojZGMzNTQ1Cn0KLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZDpmb2N1cywgLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZDpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjIwLDUzLDY5LC4yNSkKfQouZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLCAud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsIHsKY29sb3I6I2RjMzU0NQp9Ci5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dH4uaW52YWxpZC1mZWVkYmFjayB7CgltYXJnaW4tbGVmdDogLjVlbQp9Ci5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQsIC5pbnB1dC1ncm91cCAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCwgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6aW52YWxpZCwgLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5mb3JtLXNlbGVjdDppbnZhbGlkIHsKei1pbmRleDoyCn0KLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cywgLmlucHV0LWdyb3VwIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmZvcm0tc2VsZWN0OmludmFsaWQ6Zm9jdXMgewp6LWluZGV4OjMKfQouYnRuLCAuc2JtdCB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cglmb250LXdlaWdodDogNTAwOwoJbGluZS1oZWlnaHQ6IDEuNTsKCWNvbG9yOiAjMjEyNTI5OwoJdGV4dC1hbGlnbjogY2VudGVyOwoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwoJdmVydGljYWwtYWxpZ246IG1pZGRsZTsKCWN1cnNvcjogcG9pbnRlcjsKCS13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CgktbW96LXVzZXItc2VsZWN0OiBub25lOwoJdXNlci1zZWxlY3Q6IG5vbmU7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwpwYWRkaW5nOiAuNTByZW0gMS41ZW07Cglmb250LXNpemU6IDFyZW07CmJvcmRlci1yYWRpdXM6IC43cmVtOwpmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1zYW5zLXNlcmlmcCk7Cgl0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5idG4gewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLmJ0bjpob3ZlciB7Cgljb2xvcjogIzIxMjUyOQp9Ci5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLCAuYnRuOmZvY3VzIHsKCW91dGxpbmU6IDA7Cglib3gtc2hhZG93OiBub25lOwp9Ci5idG4uZGlzYWJsZWQsIC5idG46ZGlzYWJsZWQsIGZpZWxkc2V0OmRpc2FibGVkIC5idG4gewoJcG9pbnRlci1ldmVudHM6IG5vbmU7CglvcGFjaXR5OiAuNjUKfQouYnRuLXByaW1hcnksIC5zYm10IHsKCWNvbG9yOiAjZmZmOwoJLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHBzOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMzYjYzM2IrMCwxMzNhMzMrMTAwICovCmJhY2tncm91bmQ6ICMzYjYzM2I7IC8qIE9sZCBicm93c2VycyAqLwpiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICAjM2I2MzNiIDAlLCAjMTMzYTMzIDEwMCUpOyAvKiBGRjMuNi0xNSAqLwpiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICAjM2I2MzNiIDAlLCMxMzNhMzMgMTAwJSk7IC8qIENocm9tZTEwLTI1LFNhZmFyaTUuMS02ICovCmJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICAjM2I2MzNiIDAlLCMxMzNhMzMgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqLwpmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzNiNjMzYicsIGVuZENvbG9yc3RyPScjMTMzYTMzJyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqLwoKCWJvcmRlci1jb2xvcjogIzNiNjMzYgp9Ci5idG4tcHJpbWFyeTpob3ZlciwgLnNibXQ6aG92ZXIgewoJY29sb3I6ICNmZmY7Ci8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMTMzYTMzKzAsM2I2MzNiKzEwMCAqLwpiYWNrZ3JvdW5kOiAjMTMzYTMzOyAvKiBPbGQgYnJvd3NlcnMgKi8KYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgIzEzM2EzMyAwJSwgIzNiNjMzYiAxMDAlKTsgLyogRkYzLjYtMTUgKi8KYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgIzEzM2EzMyAwJSwjM2I2MzNiIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqLwpiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgIzEzM2EzMyAwJSwjM2I2MzNiIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi8KZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMxMzNhMzMnLCBlbmRDb2xvcnN0cj0nIzNiNjMzYicsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi8KCgoJYm9yZGVyLWNvbG9yOiAjM2I2MzNiCn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLXByaW1hcnksIC5idG4tcHJpbWFyeTpmb2N1cyB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICMwYjVlZDc7Cglib3JkZXItY29sb3I6ICMwYTU4Y2E7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoNDksMTMyLDI1MywuNSkKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLXByaW1hcnksIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLXByaW1hcnksIC5idG4tcHJpbWFyeS5hY3RpdmUsIC5idG4tcHJpbWFyeTphY3RpdmUsIC5zaG93Pi5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUgewoJY29sb3I6ICNmZmY7Ci8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwczovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jMTMzYTMzKzAsM2I2MzNiKzEwMCAqLwpiYWNrZ3JvdW5kOiAjMTMzYTMzOyAvKiBPbGQgYnJvd3NlcnMgKi8KYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgIzEzM2EzMyAwJSwgIzNiNjMzYiAxMDAlKTsgLyogRkYzLjYtMTUgKi8KYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgIzEzM2EzMyAwJSwjM2I2MzNiIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqLwpiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAgIzEzM2EzMyAwJSwjM2I2MzNiIDEwMCUpOyAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi8KZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMxMzNhMzMnLCBlbmRDb2xvcnN0cj0nIzNiNjMzYicsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi8KCgoJYm9yZGVyLWNvbG9yOiAjM2I2MzNiCn0KLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXByaW1hcnk6Zm9jdXMsIC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1wcmltYXJ5LmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5OmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKCWJveC1zaGFkb3c6IG5vbmU7Cn0KLmJ0bi1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLXByaW1hcnk6ZGlzYWJsZWQgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkOwoJYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkCn0KLmJ0bi1zZWNvbmRhcnkgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkOwoJYm9yZGVyLWNvbG9yOiAjNmM3NTdkCn0KLmJ0bi1zZWNvbmRhcnk6aG92ZXIgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNWM2MzZhOwoJYm9yZGVyLWNvbG9yOiAjNTY1ZTY0Cn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLXNlY29uZGFyeSwgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNWM2MzZhOwoJYm9yZGVyLWNvbG9yOiAjNTY1ZTY0Owpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDEzMCwxMzgsMTQ1LC41KQp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tc2Vjb25kYXJ5LCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1zZWNvbmRhcnksIC5idG4tc2Vjb25kYXJ5LmFjdGl2ZSwgLmJ0bi1zZWNvbmRhcnk6YWN0aXZlLCAuc2hvdz4uYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNTY1ZTY0OwoJYm9yZGVyLWNvbG9yOiAjNTE1ODVlCn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuYWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeTphY3RpdmU6Zm9jdXMsIC5zaG93Pi5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMTMwLDEzOCwxNDUsLjUpCn0KLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tc2Vjb25kYXJ5OmRpc2FibGVkIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDsKCWJvcmRlci1jb2xvcjogIzZjNzU3ZAp9Ci5idG4tc3VjY2VzcyB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQ7Cglib3JkZXItY29sb3I6ICMxOTg3NTQKfQouYnRuLXN1Y2Nlc3M6aG92ZXIgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMTU3MzQ3OwoJYm9yZGVyLWNvbG9yOiAjMTQ2YzQzCn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLXN1Y2Nlc3MsIC5idG4tc3VjY2Vzczpmb2N1cyB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICMxNTczNDc7Cglib3JkZXItY29sb3I6ICMxNDZjNDM7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoNjAsMTUzLDExMCwuNSkKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLXN1Y2Nlc3MsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLXN1Y2Nlc3MsIC5idG4tc3VjY2Vzcy5hY3RpdmUsIC5idG4tc3VjY2VzczphY3RpdmUsIC5zaG93Pi5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMTQ2YzQzOwoJYm9yZGVyLWNvbG9yOiAjMTM2NTNmCn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1zdWNjZXNzOmZvY3VzLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1zdWNjZXNzOmZvY3VzLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAuc2hvdz4uYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSg2MCwxNTMsMTEwLC41KQp9Ci5idG4tc3VjY2Vzcy5kaXNhYmxlZCwgLmJ0bi1zdWNjZXNzOmRpc2FibGVkIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDsKCWJvcmRlci1jb2xvcjogIzE5ODc1NAp9Ci5idG4taW5mbyB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7Cglib3JkZXItY29sb3I6ICMwZGNhZjAKfQouYnRuLWluZm86aG92ZXIgewoJY29sb3I6ICMwMDA7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMzFkMmYyOwoJYm9yZGVyLWNvbG9yOiAjMjVjZmYyCn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLWluZm8sIC5idG4taW5mbzpmb2N1cyB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICMzMWQyZjI7Cglib3JkZXItY29sb3I6ICMyNWNmZjI7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMTEsMTcyLDIwNCwuNSkKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLWluZm8sIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLWluZm8sIC5idG4taW5mby5hY3RpdmUsIC5idG4taW5mbzphY3RpdmUsIC5zaG93Pi5idG4taW5mby5kcm9wZG93bi10b2dnbGUgewoJY29sb3I6ICMwMDA7CgliYWNrZ3JvdW5kLWNvbG9yOiAjM2RkNWYzOwoJYm9yZGVyLWNvbG9yOiAjMjVjZmYyCn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1pbmZvOmZvY3VzLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1pbmZvOmZvY3VzLCAuYnRuLWluZm8uYWN0aXZlOmZvY3VzLCAuYnRuLWluZm86YWN0aXZlOmZvY3VzLCAuc2hvdz4uYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgxMSwxNzIsMjA0LC41KQp9Ci5idG4taW5mby5kaXNhYmxlZCwgLmJ0bi1pbmZvOmRpc2FibGVkIHsKCWNvbG9yOiAjMDAwOwoJYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDsKCWJvcmRlci1jb2xvcjogIzBkY2FmMAp9Ci5idG4td2FybmluZyB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7Cglib3JkZXItY29sb3I6ICNmZmMxMDcKfQouYnRuLXdhcm5pbmc6aG92ZXIgewoJY29sb3I6ICMwMDA7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZjYTJjOwoJYm9yZGVyLWNvbG9yOiAjZmZjNzIwCn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLXdhcm5pbmcsIC5idG4td2FybmluZzpmb2N1cyB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmNhMmM7Cglib3JkZXItY29sb3I6ICNmZmM3MjA7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjE3LDE2NCw2LC41KQp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4td2FybmluZywgLmJ0bi1jaGVjazpjaGVja2VkKy5idG4td2FybmluZywgLmJ0bi13YXJuaW5nLmFjdGl2ZSwgLmJ0bi13YXJuaW5nOmFjdGl2ZSwgLnNob3c+LmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmNkMzk7Cglib3JkZXItY29sb3I6ICNmZmM3MjAKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLXdhcm5pbmc6Zm9jdXMsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLXdhcm5pbmc6Zm9jdXMsIC5idG4td2FybmluZy5hY3RpdmU6Zm9jdXMsIC5idG4td2FybmluZzphY3RpdmU6Zm9jdXMsIC5zaG93Pi5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDIxNywxNjQsNiwuNSkKfQouYnRuLXdhcm5pbmcuZGlzYWJsZWQsIC5idG4td2FybmluZzpkaXNhYmxlZCB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7Cglib3JkZXItY29sb3I6ICNmZmMxMDcKfQouYnRuLWRhbmdlciB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7Cglib3JkZXItY29sb3I6ICNkYzM1NDUKfQouYnRuLWRhbmdlcjpob3ZlciB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICNiYjJkM2I7Cglib3JkZXItY29sb3I6ICNiMDJhMzcKfQouYnRuLWNoZWNrOmZvY3VzKy5idG4tZGFuZ2VyLCAuYnRuLWRhbmdlcjpmb2N1cyB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICNiYjJkM2I7Cglib3JkZXItY29sb3I6ICNiMDJhMzc7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjI1LDgzLDk3LC41KQp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tZGFuZ2VyLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1kYW5nZXIsIC5idG4tZGFuZ2VyLmFjdGl2ZSwgLmJ0bi1kYW5nZXI6YWN0aXZlLCAuc2hvdz4uYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjYjAyYTM3OwoJYm9yZGVyLWNvbG9yOiAjYTUyODM0Cn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1kYW5nZXI6Zm9jdXMsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlcjphY3RpdmU6Zm9jdXMsIC5zaG93Pi5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjI1LDgzLDk3LC41KQp9Ci5idG4tZGFuZ2VyLmRpc2FibGVkLCAuYnRuLWRhbmdlcjpkaXNhYmxlZCB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7Cglib3JkZXItY29sb3I6ICNkYzM1NDUKfQouYnRuLWxpZ2h0IHsKCWNvbG9yOiAjMDAwOwoJYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTsKCWJvcmRlci1jb2xvcjogI2Y4ZjlmYQp9Ci5idG4tbGlnaHQ6aG92ZXIgewoJY29sb3I6ICMwMDA7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiOwoJYm9yZGVyLWNvbG9yOiAjZjlmYWZiCn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLWxpZ2h0LCAuYnRuLWxpZ2h0OmZvY3VzIHsKCWNvbG9yOiAjMDAwOwoJYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjsKCWJvcmRlci1jb2xvcjogI2Y5ZmFmYjsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgyMTEsMjEyLDIxMywuNSkKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLWxpZ2h0LCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1saWdodCwgLmJ0bi1saWdodC5hY3RpdmUsIC5idG4tbGlnaHQ6YWN0aXZlLCAuc2hvdz4uYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZSB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7Cglib3JkZXItY29sb3I6ICNmOWZhZmIKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLWxpZ2h0OmZvY3VzLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1saWdodC5hY3RpdmU6Zm9jdXMsIC5idG4tbGlnaHQ6YWN0aXZlOmZvY3VzLCAuc2hvdz4uYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjExLDIxMiwyMTMsLjUpCn0KLmJ0bi1saWdodC5kaXNhYmxlZCwgLmJ0bi1saWdodDpkaXNhYmxlZCB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7Cglib3JkZXItY29sb3I6ICNmOGY5ZmEKfQouYnRuLWRhcmsgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5OwoJYm9yZGVyLWNvbG9yOiAjMjEyNTI5Cn0KLmJ0bi1kYXJrOmhvdmVyIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMzsKCWJvcmRlci1jb2xvcjogIzFhMWUyMQp9Ci5idG4tY2hlY2s6Zm9jdXMrLmJ0bi1kYXJrLCAuYnRuLWRhcms6Zm9jdXMgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIzOwoJYm9yZGVyLWNvbG9yOiAjMWExZTIxOwpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDY2LDcwLDczLC41KQp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tZGFyaywgLmJ0bi1jaGVjazpjaGVja2VkKy5idG4tZGFyaywgLmJ0bi1kYXJrLmFjdGl2ZSwgLmJ0bi1kYXJrOmFjdGl2ZSwgLnNob3c+LmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICMxYTFlMjE7Cglib3JkZXItY29sb3I6ICMxOTFjMWYKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLWRhcms6Zm9jdXMsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLWRhcms6Zm9jdXMsIC5idG4tZGFyay5hY3RpdmU6Zm9jdXMsIC5idG4tZGFyazphY3RpdmU6Zm9jdXMsIC5zaG93Pi5idG4tZGFyay5kcm9wZG93bi10b2dnbGU6Zm9jdXMgewpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDY2LDcwLDczLC41KQp9Ci5idG4tZGFyay5kaXNhYmxlZCwgLmJ0bi1kYXJrOmRpc2FibGVkIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTsKCWJvcmRlci1jb2xvcjogIzIxMjUyOQp9Ci5idG4tb3V0bGluZS1wcmltYXJ5IHsKCWNvbG9yOiAjMGQ2ZWZkOwoJYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkCn0KLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkOwoJYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkCn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLW91dGxpbmUtcHJpbWFyeSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMgewpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDEzLDExMCwyNTMsLjUpCn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1vdXRsaW5lLXByaW1hcnksIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLW91dGxpbmUtcHJpbWFyeSwgLmJ0bi1vdXRsaW5lLXByaW1hcnkuYWN0aXZlLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGUuc2hvdywgLmJ0bi1vdXRsaW5lLXByaW1hcnk6YWN0aXZlIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDsKCWJvcmRlci1jb2xvcjogIzBkNmVmZAp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5LmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5OmFjdGl2ZTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMTMsMTEwLDI1MywuNSkKfQouYnRuLW91dGxpbmUtcHJpbWFyeS5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6ZGlzYWJsZWQgewoJY29sb3I6ICMwZDZlZmQ7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9Ci5idG4tb3V0bGluZS1zZWNvbmRhcnkgewoJY29sb3I6ICM2Yzc1N2Q7Cglib3JkZXItY29sb3I6ICM2Yzc1N2QKfQouYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDsKCWJvcmRlci1jb2xvcjogIzZjNzU3ZAp9Ci5idG4tY2hlY2s6Zm9jdXMrLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMTA4LDExNywxMjUsLjUpCn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSwgLmJ0bi1jaGVjazpjaGVja2VkKy5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYWN0aXZlLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93LCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmFjdGl2ZSB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7Cglib3JkZXItY29sb3I6ICM2Yzc1N2QKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6YWN0aXZlOmZvY3VzIHsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgxMDgsMTE3LDEyNSwuNSkKfQouYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmRpc2FibGVkIHsKCWNvbG9yOiAjNmM3NTdkOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQKfQouYnRuLW91dGxpbmUtc3VjY2VzcyB7Cgljb2xvcjogIzE5ODc1NDsKCWJvcmRlci1jb2xvcjogIzE5ODc1NAp9Ci5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVyIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDsKCWJvcmRlci1jb2xvcjogIzE5ODc1NAp9Ci5idG4tY2hlY2s6Zm9jdXMrLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzIHsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgyNSwxMzUsODQsLjUpCn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLW91dGxpbmUtc3VjY2VzcywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuYWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUuc2hvdywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6YWN0aXZlIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDsKCWJvcmRlci1jb2xvcjogIzE5ODc1NAp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzOmFjdGl2ZTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjUsMTM1LDg0LC41KQp9Ci5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc3VjY2VzczpkaXNhYmxlZCB7Cgljb2xvcjogIzE5ODc1NDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Cn0KLmJ0bi1vdXRsaW5lLWluZm8gewoJY29sb3I6ICMwZGNhZjA7Cglib3JkZXItY29sb3I6ICMwZGNhZjAKfQouYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7Cglib3JkZXItY29sb3I6ICMwZGNhZjAKfQouYnRuLWNoZWNrOmZvY3VzKy5idG4tb3V0bGluZS1pbmZvLCAuYnRuLW91dGxpbmUtaW5mbzpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMTMsMjAyLDI0MCwuNSkKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLW91dGxpbmUtaW5mbywgLmJ0bi1jaGVjazpjaGVja2VkKy5idG4tb3V0bGluZS1pbmZvLCAuYnRuLW91dGxpbmUtaW5mby5hY3RpdmUsIC5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZS5zaG93LCAuYnRuLW91dGxpbmUtaW5mbzphY3RpdmUgewoJY29sb3I6ICMwMDA7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwOwoJYm9yZGVyLWNvbG9yOiAjMGRjYWYwCn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLW91dGxpbmUtaW5mbzpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm8uYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm86YWN0aXZlOmZvY3VzIHsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgxMywyMDIsMjQwLC41KQp9Ci5idG4tb3V0bGluZS1pbmZvLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZCB7Cgljb2xvcjogIzBkY2FmMDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Cn0KLmJ0bi1vdXRsaW5lLXdhcm5pbmcgewoJY29sb3I6ICNmZmMxMDc7Cglib3JkZXItY29sb3I6ICNmZmMxMDcKfQouYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7Cglib3JkZXItY29sb3I6ICNmZmMxMDcKfQouYnRuLWNoZWNrOmZvY3VzKy5idG4tb3V0bGluZS13YXJuaW5nLCAuYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjU1LDE5Myw3LC41KQp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tb3V0bGluZS13YXJuaW5nLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1vdXRsaW5lLXdhcm5pbmcsIC5idG4tb3V0bGluZS13YXJuaW5nLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlLnNob3csIC5idG4tb3V0bGluZS13YXJuaW5nOmFjdGl2ZSB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7Cglib3JkZXItY29sb3I6ICNmZmMxMDcKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cywgLmJ0bi1jaGVjazpjaGVja2VkKy5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZy5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZzphY3RpdmU6Zm9jdXMgewpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDI1NSwxOTMsNywuNSkKfQouYnRuLW91dGxpbmUtd2FybmluZy5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWQgewoJY29sb3I6ICNmZmMxMDc7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9Ci5idG4tb3V0bGluZS1kYW5nZXIgewoJY29sb3I6ICNkYzM1NDU7Cglib3JkZXItY29sb3I6ICNkYzM1NDUKfQouYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTsKCWJvcmRlci1jb2xvcjogI2RjMzU0NQp9Ci5idG4tY2hlY2s6Zm9jdXMrLmJ0bi1vdXRsaW5lLWRhbmdlciwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjIwLDUzLDY5LC41KQp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tb3V0bGluZS1kYW5nZXIsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLW91dGxpbmUtZGFuZ2VyLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGUuc2hvdywgLmJ0bi1vdXRsaW5lLWRhbmdlcjphY3RpdmUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1OwoJYm9yZGVyLWNvbG9yOiAjZGMzNTQ1Cn0KLmJ0bi1jaGVjazphY3RpdmUrLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1jaGVjazpjaGVja2VkKy5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMsIC5idG4tb3V0bGluZS1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyOmFjdGl2ZTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjIwLDUzLDY5LC41KQp9Ci5idG4tb3V0bGluZS1kYW5nZXIuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYW5nZXI6ZGlzYWJsZWQgewoJY29sb3I6ICNkYzM1NDU7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9Ci5idG4tb3V0bGluZS1saWdodCB7Cgljb2xvcjogI2Y4ZjlmYTsKCWJvcmRlci1jb2xvcjogI2Y4ZjlmYQp9Ci5idG4tb3V0bGluZS1saWdodDpob3ZlciB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7Cglib3JkZXItY29sb3I6ICNmOGY5ZmEKfQouYnRuLWNoZWNrOmZvY3VzKy5idG4tb3V0bGluZS1saWdodCwgLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3VzIHsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgyNDgsMjQ5LDI1MCwuNSkKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLW91dGxpbmUtbGlnaHQsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLW91dGxpbmUtbGlnaHQsIC5idG4tb3V0bGluZS1saWdodC5hY3RpdmUsIC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUuc2hvdywgLmJ0bi1vdXRsaW5lLWxpZ2h0OmFjdGl2ZSB7Cgljb2xvcjogIzAwMDsKCWJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7Cglib3JkZXItY29sb3I6ICNmOGY5ZmEKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0OmFjdGl2ZTpmb2N1cyB7CmJveC1zaGFkb3c6MCAwIDAgLjI1cmVtIHJnYmEoMjQ4LDI0OSwyNTAsLjUpCn0KLmJ0bi1vdXRsaW5lLWxpZ2h0LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtbGlnaHQ6ZGlzYWJsZWQgewoJY29sb3I6ICNmOGY5ZmE7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9Ci5idG4tb3V0bGluZS1kYXJrIHsKCWNvbG9yOiAjMjEyNTI5OwoJYm9yZGVyLWNvbG9yOiAjMjEyNTI5Cn0KLmJ0bi1vdXRsaW5lLWRhcms6aG92ZXIgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5OwoJYm9yZGVyLWNvbG9yOiAjMjEyNTI5Cn0KLmJ0bi1jaGVjazpmb2N1cysuYnRuLW91dGxpbmUtZGFyaywgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMgewpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDMzLDM3LDQxLC41KQp9Ci5idG4tY2hlY2s6YWN0aXZlKy5idG4tb3V0bGluZS1kYXJrLCAuYnRuLWNoZWNrOmNoZWNrZWQrLmJ0bi1vdXRsaW5lLWRhcmssIC5idG4tb3V0bGluZS1kYXJrLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlLnNob3csIC5idG4tb3V0bGluZS1kYXJrOmFjdGl2ZSB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7Cglib3JkZXItY29sb3I6ICMyMTI1MjkKfQouYnRuLWNoZWNrOmFjdGl2ZSsuYnRuLW91dGxpbmUtZGFyazpmb2N1cywgLmJ0bi1jaGVjazpjaGVja2VkKy5idG4tb3V0bGluZS1kYXJrOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyay5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyazphY3RpdmU6Zm9jdXMgewpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDMzLDM3LDQxLC41KQp9Ci5idG4tb3V0bGluZS1kYXJrLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtZGFyazpkaXNhYmxlZCB7Cgljb2xvcjogIzIxMjUyOTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Cn0KLmJ0bi1saW5rIHsKCWZvbnQtd2VpZ2h0OiA0MDA7Cgljb2xvcjogIzE2M2QzNDsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKfQouYnRuLWxpbms6aG92ZXIgewoJY29sb3I6ICMxNjNkMzQ7Cn0KLmJ0bi1saW5rLmRpc2FibGVkLCAuYnRuLWxpbms6ZGlzYWJsZWQgewoJY29sb3I6ICM2Yzc1N2QKfQouYnRuLWdyb3VwLWxnPi5idG4sIC5idG4tbGcgewpwYWRkaW5nOi41cmVtIDFyZW07Cglmb250LXNpemU6IDEuMjVyZW07CmJvcmRlci1yYWRpdXM6LjNyZW0KfQouYnRuLWdyb3VwLXNtPi5idG4sIC5idG4tc20gewpwYWRkaW5nOi4yNXJlbSAuNXJlbTsKZm9udC1zaXplOi44NzVyZW07CmJvcmRlci1yYWRpdXM6LjJyZW0KfQouZmFkZSB7Cgl0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyCn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewouZmFkZSB7Cgl0cmFuc2l0aW9uOiBub25lCn0KfQouZmFkZTpub3QoLnNob3cpIHsKCW9wYWNpdHk6IDAKfQouY29sbGFwc2U6bm90KC5zaG93KSB7CglkaXNwbGF5OiBub25lCn0KLmNvbGxhcHNpbmcgewoJaGVpZ2h0OiAwOwoJb3ZlcmZsb3c6IGhpZGRlbjsKCXRyYW5zaXRpb246IGhlaWdodCAuMzVzIGVhc2UKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5jb2xsYXBzaW5nIHsKCXRyYW5zaXRpb246IG5vbmUKfQp9Ci5jb2xsYXBzaW5nLmNvbGxhcHNlLWhvcml6b250YWwgewoJd2lkdGg6IDA7CgloZWlnaHQ6IGF1dG87Cgl0cmFuc2l0aW9uOiB3aWR0aCAuMzVzIGVhc2UKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5jb2xsYXBzaW5nLmNvbGxhcHNlLWhvcml6b250YWwgewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLmRyb3Bkb3duLCAuZHJvcGVuZCwgLmRyb3BzdGFydCwgLmRyb3B1cCB7Cglwb3NpdGlvbjogcmVsYXRpdmUKfQouZHJvcGRvd24tdG9nZ2xlIHsKCXdoaXRlLXNwYWNlOiBub3dyYXAKfQouZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CgltYXJnaW4tbGVmdDogLjI1NWVtOwoJdmVydGljYWwtYWxpZ246IC4yNTVlbTsKCWNvbnRlbnQ6ICIiOwoJYm9yZGVyLXRvcDogLjNlbSBzb2xpZDsKCWJvcmRlci1yaWdodDogLjNlbSBzb2xpZCB0cmFuc3BhcmVudDsKCWJvcmRlci1ib3R0b206IDA7Cglib3JkZXItbGVmdDogLjNlbSBzb2xpZCB0cmFuc3BhcmVudAp9Ci5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHsKCW1hcmdpbi1sZWZ0OiAwCn0KLmRyb3Bkb3duLW1lbnUgewoJcG9zaXRpb246IGFic29sdXRlOwoJei1pbmRleDogMTAwMDsKCWRpc3BsYXk6IG5vbmU7CgltaW4td2lkdGg6IDEwcmVtOwpwYWRkaW5nOi41cmVtIDA7CgltYXJnaW46IDA7Cglmb250LXNpemU6IDFyZW07Cgljb2xvcjogIzIxMjUyOTsKCXRleHQtYWxpZ246IGxlZnQ7CglsaXN0LXN0eWxlOiBub25lOwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7Cglib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4xNSk7CmJvcmRlci1yYWRpdXM6LjI1cmVtCn0KLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHsKCXRvcDogMTAwJTsKCWxlZnQ6IDA7Cm1hcmdpbi10b3A6LjEyNXJlbQp9Ci5kcm9wZG93bi1tZW51LXN0YXJ0IHsKLS1icy1wb3NpdGlvbjpzdGFydAp9Ci5kcm9wZG93bi1tZW51LXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7CglyaWdodDogYXV0bzsKCWxlZnQ6IDAKfQouZHJvcGRvd24tbWVudS1lbmQgewotLWJzLXBvc2l0aW9uOmVuZAp9Ci5kcm9wZG93bi1tZW51LWVuZFtkYXRhLWJzLXBvcHBlcl0gewoJcmlnaHQ6IDA7CglsZWZ0OiBhdXRvCn0KQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKLmRyb3Bkb3duLW1lbnUtc20tc3RhcnQgewotLWJzLXBvc2l0aW9uOnN0YXJ0Cn0KLmRyb3Bkb3duLW1lbnUtc20tc3RhcnRbZGF0YS1icy1wb3BwZXJdIHsKCXJpZ2h0OiBhdXRvOwoJbGVmdDogMAp9Ci5kcm9wZG93bi1tZW51LXNtLWVuZCB7Ci0tYnMtcG9zaXRpb246ZW5kCn0KLmRyb3Bkb3duLW1lbnUtc20tZW5kW2RhdGEtYnMtcG9wcGVyXSB7CglyaWdodDogMDsKCWxlZnQ6IGF1dG8KfQp9CkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSB7Ci5kcm9wZG93bi1tZW51LW1kLXN0YXJ0IHsKLS1icy1wb3NpdGlvbjpzdGFydAp9Ci5kcm9wZG93bi1tZW51LW1kLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7CglyaWdodDogYXV0bzsKCWxlZnQ6IDAKfQouZHJvcGRvd24tbWVudS1tZC1lbmQgewotLWJzLXBvc2l0aW9uOmVuZAp9Ci5kcm9wZG93bi1tZW51LW1kLWVuZFtkYXRhLWJzLXBvcHBlcl0gewoJcmlnaHQ6IDA7CglsZWZ0OiBhdXRvCn0KfQpAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkgewouZHJvcGRvd24tbWVudS1sZy1zdGFydCB7Ci0tYnMtcG9zaXRpb246c3RhcnQKfQouZHJvcGRvd24tbWVudS1sZy1zdGFydFtkYXRhLWJzLXBvcHBlcl0gewoJcmlnaHQ6IGF1dG87CglsZWZ0OiAwCn0KLmRyb3Bkb3duLW1lbnUtbGctZW5kIHsKLS1icy1wb3NpdGlvbjplbmQKfQouZHJvcGRvd24tbWVudS1sZy1lbmRbZGF0YS1icy1wb3BwZXJdIHsKCXJpZ2h0OiAwOwoJbGVmdDogYXV0bwp9Cn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5kcm9wZG93bi1tZW51LXhsLXN0YXJ0IHsKLS1icy1wb3NpdGlvbjpzdGFydAp9Ci5kcm9wZG93bi1tZW51LXhsLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7CglyaWdodDogYXV0bzsKCWxlZnQ6IDAKfQouZHJvcGRvd24tbWVudS14bC1lbmQgewotLWJzLXBvc2l0aW9uOmVuZAp9Ci5kcm9wZG93bi1tZW51LXhsLWVuZFtkYXRhLWJzLXBvcHBlcl0gewoJcmlnaHQ6IDA7CglsZWZ0OiBhdXRvCn0KfQpAbWVkaWEgKG1pbi13aWR0aDoxNDAwcHgpIHsKLmRyb3Bkb3duLW1lbnUteHhsLXN0YXJ0IHsKLS1icy1wb3NpdGlvbjpzdGFydAp9Ci5kcm9wZG93bi1tZW51LXh4bC1zdGFydFtkYXRhLWJzLXBvcHBlcl0gewoJcmlnaHQ6IGF1dG87CglsZWZ0OiAwCn0KLmRyb3Bkb3duLW1lbnUteHhsLWVuZCB7Ci0tYnMtcG9zaXRpb246ZW5kCn0KLmRyb3Bkb3duLW1lbnUteHhsLWVuZFtkYXRhLWJzLXBvcHBlcl0gewoJcmlnaHQ6IDA7CglsZWZ0OiBhdXRvCn0KfQouZHJvcHVwIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7Cgl0b3A6IGF1dG87Cglib3R0b206IDEwMCU7CgltYXJnaW4tdG9wOiAwOwptYXJnaW4tYm90dG9tOi4xMjVyZW0KfQouZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCW1hcmdpbi1sZWZ0OiAuMjU1ZW07Cgl2ZXJ0aWNhbC1hbGlnbjogLjI1NWVtOwoJY29udGVudDogIiI7Cglib3JkZXItdG9wOiAwOwoJYm9yZGVyLXJpZ2h0OiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50OwoJYm9yZGVyLWJvdHRvbTogLjNlbSBzb2xpZDsKCWJvcmRlci1sZWZ0OiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50Cn0KLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7CgltYXJnaW4tbGVmdDogMAp9Ci5kcm9wZW5kIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7Cgl0b3A6IDA7CglyaWdodDogYXV0bzsKCWxlZnQ6IDEwMCU7CgltYXJnaW4tdG9wOiAwOwptYXJnaW4tbGVmdDouMTI1cmVtCn0KLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIgewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJbWFyZ2luLWxlZnQ6IC4yNTVlbTsKCXZlcnRpY2FsLWFsaWduOiAuMjU1ZW07Cgljb250ZW50OiAiIjsKCWJvcmRlci10b3A6IC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7Cglib3JkZXItcmlnaHQ6IDA7Cglib3JkZXItYm90dG9tOiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50OwoJYm9yZGVyLWxlZnQ6IC4zZW0gc29saWQKfQouZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7CgltYXJnaW4tbGVmdDogMAp9Ci5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHsKCXZlcnRpY2FsLWFsaWduOiAwCn0KLmRyb3BzdGFydCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0gewoJdG9wOiAwOwoJcmlnaHQ6IDEwMCU7CglsZWZ0OiBhdXRvOwoJbWFyZ2luLXRvcDogMDsKbWFyZ2luLXJpZ2h0Oi4xMjVyZW0KfQouZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCW1hcmdpbi1sZWZ0OiAuMjU1ZW07Cgl2ZXJ0aWNhbC1hbGlnbjogLjI1NWVtOwoJY29udGVudDogIiIKfQouZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHsKCWRpc3BsYXk6IG5vbmUKfQouZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CgltYXJnaW4tcmlnaHQ6IC4yNTVlbTsKCXZlcnRpY2FsLWFsaWduOiAuMjU1ZW07Cgljb250ZW50OiAiIjsKCWJvcmRlci10b3A6IC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7Cglib3JkZXItcmlnaHQ6IC4zZW0gc29saWQ7Cglib3JkZXItYm90dG9tOiAuM2VtIHNvbGlkIHRyYW5zcGFyZW50Cn0KLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7CgltYXJnaW4tbGVmdDogMAp9Ci5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHsKCXZlcnRpY2FsLWFsaWduOiAwCn0KLmRyb3Bkb3duLWRpdmlkZXIgewoJaGVpZ2h0OiAwOwptYXJnaW46LjVyZW0gMDsKCW92ZXJmbG93OiBoaWRkZW47Cglib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMTUpCn0KLmRyb3Bkb3duLWl0ZW0gewoJZGlzcGxheTogYmxvY2s7Cgl3aWR0aDogMTAwJTsKcGFkZGluZzouMjVyZW0gMXJlbTsKCWNsZWFyOiBib3RoOwoJZm9udC13ZWlnaHQ6IDQwMDsKCWNvbG9yOiAjMjEyNTI5OwoJdGV4dC1hbGlnbjogaW5oZXJpdDsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKCXdoaXRlLXNwYWNlOiBub3dyYXA7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlcjogMAp9Ci5kcm9wZG93bi1pdGVtOmZvY3VzLCAuZHJvcGRvd24taXRlbTpob3ZlciB7Cgljb2xvcjogIzFlMjEyNTsKCWJhY2tncm91bmQtY29sb3I6ICNlOWVjZWYKfQouZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7Cgljb2xvcjogI2ZmZiAhaW1wb3J0YW50OwoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwoJYmFja2dyb3VuZC1jb2xvcjogIzA4NWUzZTsKCWNvbG9yOiBidXJseXdvb2Q7Cn0KLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHsKCWNvbG9yOiAjYWRiNWJkOwoJcG9pbnRlci1ldmVudHM6IG5vbmU7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudAp9Ci5kcm9wZG93bi1tZW51LnNob3cgewoJZGlzcGxheTogYmxvY2sKfQouZHJvcGRvd24taGVhZGVyIHsKCWRpc3BsYXk6IGJsb2NrOwpwYWRkaW5nOi41cmVtIDFyZW07CgltYXJnaW4tYm90dG9tOiAwOwpmb250LXNpemU6Ljg3NXJlbTsKCWNvbG9yOiAjNmM3NTdkOwoJd2hpdGUtc3BhY2U6IG5vd3JhcAp9Ci5kcm9wZG93bi1pdGVtLXRleHQgewoJZGlzcGxheTogYmxvY2s7CnBhZGRpbmc6LjI1cmVtIDFyZW07Cgljb2xvcjogIzIxMjUyOQp9Ci5kcm9wZG93bi1tZW51LWRhcmsgewoJY29sb3I6ICNkZWUyZTY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwOwoJYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xNSkKfQouZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtIHsKCWNvbG9yOiAjZGVlMmU2Cn0KLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTpmb2N1cywgLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTpob3ZlciB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KQp9Ci5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQKfQouZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHsKCWNvbG9yOiAjYWRiNWJkCn0KLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24tZGl2aWRlciB7Cglib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjE1KQp9Ci5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0tdGV4dCB7Cgljb2xvcjogI2RlZTJlNgp9Ci5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWhlYWRlciB7Cgljb2xvcjogI2FkYjViZAp9Ci5idG4tZ3JvdXAsIC5idG4tZ3JvdXAtdmVydGljYWwgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJZGlzcGxheTogaW5saW5lLWZsZXg7Cgl2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlCn0KLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLCAuYnRuLWdyb3VwPi5idG4gewoJcG9zaXRpb246IHJlbGF0aXZlOwoJZmxleDogMSAxIGF1dG8KfQouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tY2hlY2s6Y2hlY2tlZCsuYnRuLCAuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tY2hlY2s6Zm9jdXMrLmJ0biwgLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLmFjdGl2ZSwgLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmFjdGl2ZSwgLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmZvY3VzLCAuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46aG92ZXIsIC5idG4tZ3JvdXA+LmJ0bi1jaGVjazpjaGVja2VkKy5idG4sIC5idG4tZ3JvdXA+LmJ0bi1jaGVjazpmb2N1cysuYnRuLCAuYnRuLWdyb3VwPi5idG4uYWN0aXZlLCAuYnRuLWdyb3VwPi5idG46YWN0aXZlLCAuYnRuLWdyb3VwPi5idG46Zm9jdXMsIC5idG4tZ3JvdXA+LmJ0bjpob3ZlciB7Cgl6LWluZGV4OiAxCn0KLmJ0bi10b29sYmFyIHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LXdyYXA6IHdyYXA7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQKfQouYnRuLXRvb2xiYXIgLmlucHV0LWdyb3VwIHsKCXdpZHRoOiBhdXRvCn0KLmJ0bi1ncm91cD4uYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpLCAuYnRuLWdyb3VwPi5idG46bm90KDpmaXJzdC1jaGlsZCkgewoJbWFyZ2luLWxlZnQ6IC0xcHgKfQouYnRuLWdyb3VwPi5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKT4uYnRuLCAuYnRuLWdyb3VwPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSkgewoJYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7Cglib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMAp9Ci5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLCAuYnRuLWdyb3VwPi5idG46bnRoLWNoaWxkKG4rMyksIC5idG4tZ3JvdXA+Om5vdCguYnRuLWNoZWNrKSsuYnRuIHsKCWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwCn0KLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7CnBhZGRpbmctcmlnaHQ6LjU2MjVyZW07CnBhZGRpbmctbGVmdDouNTYyNXJlbQp9Ci5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7CgltYXJnaW4tbGVmdDogMAp9Ci5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YmVmb3JlIHsKCW1hcmdpbi1yaWdodDogMAp9Ci5idG4tZ3JvdXAtc20+LmJ0bisuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLXNtKy5kcm9wZG93bi10b2dnbGUtc3BsaXQgewpwYWRkaW5nLXJpZ2h0Oi4zNzVyZW07CnBhZGRpbmctbGVmdDouMzc1cmVtCn0KLmJ0bi1ncm91cC1sZz4uYnRuKy5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tbGcrLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7CnBhZGRpbmctcmlnaHQ6Ljc1cmVtOwpwYWRkaW5nLWxlZnQ6Ljc1cmVtCn0KLmJ0bi1ncm91cC12ZXJ0aWNhbCB7CglmbGV4LWRpcmVjdGlvbjogY29sdW1uOwoJYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcgp9Ci5idG4tZ3JvdXAtdmVydGljYWw+LmJ0biwgLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwIHsKCXdpZHRoOiAxMDAlCn0KLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpLCAuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46bm90KDpmaXJzdC1jaGlsZCkgewoJbWFyZ2luLXRvcDogLTFweAp9Ci5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPi5idG4sIC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7Cglib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsKCWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAKfQouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk+LmJ0biwgLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRufi5idG4gewoJYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKCWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwCn0KLm5hdiB7CglkaXNwbGF5OiBmbGV4OwoJZmxleC13cmFwOiB3cmFwOwoJcGFkZGluZy1sZWZ0OiAwOwoJbWFyZ2luLWJvdHRvbTogMDsKCWxpc3Qtc3R5bGU6IG5vbmUKfQoubmF2LWxpbmsgewoJZGlzcGxheTogYmxvY2s7CglwYWRkaW5nOiAuN3JlbSAxcmVtOwoJY29sb3I6ICNmZmZmZmY7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmU7Cgl0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0OwoJZm9udC13ZWlnaHQ6IDYwMDsKCWJvcmRlci1yaWdodDogMXB4IHNvbGlkICM4MWNhN2E7Cn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewoubmF2LWxpbmsgewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLm5hdi1saW5rOmZvY3VzLCAubmF2LWxpbms6aG92ZXIgewoJY29sb3I6ICNlYWEwMzQ7Cn0KLm5hdi1saW5rLmRpc2FibGVkIHsKCWNvbG9yOiAjNmM3NTdkOwoJcG9pbnRlci1ldmVudHM6IG5vbmU7CgljdXJzb3I6IGRlZmF1bHQKfQpsaTpsYXN0LWNoaWxkIC5uYXYtbGluayB7Cglib3JkZXI6IG5vbmU7Cn0KbGk6Zmlyc3QtY2hpbGQgLm5hdi1saW5rOmhvdmVyLCAgbGk6Zmlyc3QtY2hpbGQgLm5hdi1saW5rOmZvY3VzIHsKCWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4Owp9CmxpOmxhc3QtY2hpbGQgLm5hdi1saW5rOmhvdmVyLCBsaTpsYXN0LWNoaWxkIC5uYXYtbGluazpmb2N1cyB7Cglib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTBweDsKCWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMHB4Owp9CgogCgoKLm5hdi10YWJzIHsKCWJvcmRlci1ib3R0b206IG5vbmU7Cn0KLm5hdi10YWJzIC5uYXYtbGluayB7CgltYXJnaW4tYm90dG9tOiAtMXB4OwoJYmFja2dyb3VuZDogMCAwOwoJYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CmJvcmRlci10b3AtbGVmdC1yYWRpdXM6LjI1cmVtOwpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW0KfQoubmF2LXRhYnMgLm5hdi1saW5rOmZvY3VzLCAubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyIHsKCWJvcmRlci1jb2xvcjogI2U5ZWNlZiAjZTllY2VmICNkZWUyZTY7Cglpc29sYXRpb246IGlzb2xhdGUKfQoubmF2LXRhYnMgLm5hdi1saW5rLmRpc2FibGVkIHsKCWNvbG9yOiAjNmM3NTdkOwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItY29sb3I6IHRyYW5zcGFyZW50Cn0KLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluaywgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUgewoJY29sb3I6ICM0OTUwNTc7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYm9yZGVyLWNvbG9yOiAjZGVlMmU2ICNkZWUyZTYgI2ZmZgp9Ci5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7CgltYXJnaW4tdG9wOiAtMXB4OwoJYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKCWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwCn0KLm5hdi1waWxscyAubmF2LWxpbmsgewoJYmFja2dyb3VuZDogMCAwOwoJYm9yZGVyOiAwOwpib3JkZXItcmFkaXVzOi4yNXJlbQp9Ci5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSwgLm5hdi1waWxscyAuc2hvdz4ubmF2LWxpbmsgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkCn0KLm5hdi1maWxsIC5uYXYtaXRlbSwgLm5hdi1maWxsPi5uYXYtbGluayB7CglmbGV4OiAxIDEgYXV0bzsKCXRleHQtYWxpZ246IGNlbnRlcgp9Ci5uYXYtanVzdGlmaWVkIC5uYXYtaXRlbSwgLm5hdi1qdXN0aWZpZWQ+Lm5hdi1saW5rIHsKCWZsZXgtYmFzaXM6IDA7CglmbGV4LWdyb3c6IDE7Cgl0ZXh0LWFsaWduOiBjZW50ZXIKfQoubmF2LWZpbGwgLm5hdi1pdGVtIC5uYXYtbGluaywgLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIC5uYXYtbGluayB7Cgl3aWR0aDogMTAwJQp9Ci50YWItY29udGVudD4udGFiLXBhbmUgewoJZGlzcGxheTogbm9uZQp9Ci50YWItY29udGVudD4uYWN0aXZlIHsKCWRpc3BsYXk6IGJsb2NrCn0KLm5hdmJhciB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglkaXNwbGF5OiBmbGV4OwoJZmxleC13cmFwOiB3cmFwOwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKcGFkZGluZy10b3A6LjVyZW07CnBhZGRpbmctYm90dG9tOi41cmVtCn0KLm5hdmJhcj4uY29udGFpbmVyLCAubmF2YmFyPi5jb250YWluZXItZmx1aWQsIC5uYXZiYXI+LmNvbnRhaW5lci1sZywgLm5hdmJhcj4uY29udGFpbmVyLW1kLCAubmF2YmFyPi5jb250YWluZXItc20sIC5uYXZiYXI+LmNvbnRhaW5lci14bCwgLm5hdmJhcj4uY29udGFpbmVyLXh4bCB7CglkaXNwbGF5OiBmbGV4OwoJZmxleC13cmFwOiBpbmhlcml0OwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbgp9Ci5uYXZiYXItYnJhbmQgewpwYWRkaW5nLXRvcDouMzEyNXJlbTsKcGFkZGluZy1ib3R0b206LjMxMjVyZW07CgltYXJnaW4tcmlnaHQ6IDFyZW07Cglmb250LXNpemU6IDEuMjVyZW07Cgl0ZXh0LWRlY29yYXRpb246IG5vbmU7Cgl3aGl0ZS1zcGFjZTogbm93cmFwCn0KLm5hdmJhci1uYXYgewoJZGlzcGxheTogZmxleDsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CglwYWRkaW5nLWxlZnQ6IDA7CgltYXJnaW4tYm90dG9tOiAwOwoJbGlzdC1zdHlsZTogbm9uZTsKCWJhY2tncm91bmQtY29sb3I6ICM1ZWEwNTg7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJLXdlYmtpdC1ib3gtc2hhZG93OiAxcHggNnB4IDVweCAwcHggcmdiYSg1MCwgNTAsIDUwLCAwLjIpOwotbW96LWJveC1zaGFkb3c6ICAgIDFweCA2cHggNXB4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDAuMik7CmJveC1zaGFkb3c6ICAgICAgICAgMXB4IDZweCA1cHggMHB4IHJnYmEoNTAsIDUwLCA1MCwgMC4yKTsKfQoubmF2YmFyLW5hdiAubmF2LWxpbmsgewoJcGFkZGluZy1yaWdodDogMDsKCXBhZGRpbmctbGVmdDogMAp9Ci5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHsKCXBvc2l0aW9uOiBzdGF0aWMKfQoubmF2YmFyLXRleHQgewpwYWRkaW5nLXRvcDouNXJlbTsKcGFkZGluZy1ib3R0b206LjVyZW0KfQoubmF2YmFyLWNvbGxhcHNlIHsKCWZsZXgtYmFzaXM6IDEwMCU7CglmbGV4LWdyb3c6IDE7CglhbGlnbi1pdGVtczogY2VudGVyCn0KLm5hdmJhci10b2dnbGVyIHsKcGFkZGluZzouMjVyZW0gLjc1cmVtOwoJZm9udC1zaXplOiAxLjI1cmVtOwoJbGluZS1oZWlnaHQ6IDE7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Owpib3JkZXItcmFkaXVzOi4yNXJlbTsKCXRyYW5zaXRpb246IGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dAp9CkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2UpIHsKLm5hdmJhci10b2dnbGVyIHsKCXRyYW5zaXRpb246IG5vbmUKfQp9Ci5uYXZiYXItdG9nZ2xlcjpob3ZlciB7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmUKfQoubmF2YmFyLXRvZ2dsZXI6Zm9jdXMgewoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwoJb3V0bGluZTogMDsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0KfQoubmF2YmFyLXRvZ2dsZXItaWNvbiB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cgl3aWR0aDogMS41ZW07CgloZWlnaHQ6IDEuNWVtOwoJdmVydGljYWwtYWxpZ246IG1pZGRsZTsKCWJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CgliYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7CgliYWNrZ3JvdW5kLXNpemU6IDEwMCUKfQoubmF2YmFyLW5hdi1zY3JvbGwgewoJbWF4LWhlaWdodDogdmFyKC0tYnMtc2Nyb2xsLWhlaWdodCwgNzV2aCk7CglvdmVyZmxvdy15OiBhdXRvCn0KQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKLm5hdmJhci1leHBhbmQtc20gewoJZmxleC13cmFwOiBub3dyYXA7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQKfQoubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiB7CglmbGV4LWRpcmVjdGlvbjogcm93Cn0KLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUgewoJcG9zaXRpb246IGFic29sdXRlCn0KLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKcGFkZGluZy1yaWdodDouNXJlbTsKcGFkZGluZy1sZWZ0Oi41cmVtCn0KLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYtc2Nyb2xsIHsKCW92ZXJmbG93OiB2aXNpYmxlCn0KLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1jb2xsYXBzZSB7CglkaXNwbGF5OiBmbGV4IWltcG9ydGFudDsKCWZsZXgtYmFzaXM6IGF1dG8KfQoubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLXRvZ2dsZXIgewoJZGlzcGxheTogbm9uZQp9Ci5uYXZiYXItZXhwYW5kLXNtIC5vZmZjYW52YXMtaGVhZGVyIHsKCWRpc3BsYXk6IG5vbmUKfQoubmF2YmFyLWV4cGFuZC1zbSAub2ZmY2FudmFzIHsKCXBvc2l0aW9uOiBpbmhlcml0OwoJYm90dG9tOiAwOwoJei1pbmRleDogMTAwMDsKCWZsZXgtZ3JvdzogMTsKCXZpc2liaWxpdHk6IHZpc2libGUhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmlnaHQ6IDA7Cglib3JkZXItbGVmdDogMDsKCXRyYW5zaXRpb246IG5vbmU7Cgl0cmFuc2Zvcm06IG5vbmUKfQoubmF2YmFyLWV4cGFuZC1zbSAub2ZmY2FudmFzLWJvdHRvbSwgLm5hdmJhci1leHBhbmQtc20gLm9mZmNhbnZhcy10b3AgewoJaGVpZ2h0OiBhdXRvOwoJYm9yZGVyLXRvcDogMDsKCWJvcmRlci1ib3R0b206IDAKfQoubmF2YmFyLWV4cGFuZC1zbSAub2ZmY2FudmFzLWJvZHkgewoJZGlzcGxheTogZmxleDsKCWZsZXgtZ3JvdzogMDsKCXBhZGRpbmc6IDA7CglvdmVyZmxvdy15OiB2aXNpYmxlCn0KfQpAbWVkaWEgKG1pbi13aWR0aDo3NjhweCkgewoubmF2YmFyLWV4cGFuZC1tZCB7CglmbGV4LXdyYXA6IG5vd3JhcDsKCWp1c3RpZnktY29udGVudDogZmxleC1zdGFydAp9Ci5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IHsKCWZsZXgtZGlyZWN0aW9uOiByb3cKfQoubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7Cglwb3NpdGlvbjogYWJzb2x1dGUKfQoubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsgewpwYWRkaW5nLXJpZ2h0Oi41cmVtOwpwYWRkaW5nLWxlZnQ6LjVyZW0KfQoubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdi1zY3JvbGwgewoJb3ZlcmZsb3c6IHZpc2libGUKfQoubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHsKCWRpc3BsYXk6IGZsZXghaW1wb3J0YW50OwoJZmxleC1iYXNpczogYXV0bwp9Ci5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItdG9nZ2xlciB7CglkaXNwbGF5OiBub25lCn0KLm5hdmJhci1leHBhbmQtbWQgLm9mZmNhbnZhcy1oZWFkZXIgewoJZGlzcGxheTogbm9uZQp9Ci5uYXZiYXItZXhwYW5kLW1kIC5vZmZjYW52YXMgewoJcG9zaXRpb246IGluaGVyaXQ7Cglib3R0b206IDA7Cgl6LWluZGV4OiAxMDAwOwoJZmxleC1ncm93OiAxOwoJdmlzaWJpbGl0eTogdmlzaWJsZSFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlci1yaWdodDogMDsKCWJvcmRlci1sZWZ0OiAwOwoJdHJhbnNpdGlvbjogbm9uZTsKCXRyYW5zZm9ybTogbm9uZQp9Ci5uYXZiYXItZXhwYW5kLW1kIC5vZmZjYW52YXMtYm90dG9tLCAubmF2YmFyLWV4cGFuZC1tZCAub2ZmY2FudmFzLXRvcCB7CgloZWlnaHQ6IGF1dG87Cglib3JkZXItdG9wOiAwOwoJYm9yZGVyLWJvdHRvbTogMAp9Ci5uYXZiYXItZXhwYW5kLW1kIC5vZmZjYW52YXMtYm9keSB7CglkaXNwbGF5OiBmbGV4OwoJZmxleC1ncm93OiAwOwoJcGFkZGluZzogMDsKCW92ZXJmbG93LXk6IHZpc2libGUKfQp9CkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7Ci5uYXZiYXItZXhwYW5kLWxnIHsKCWZsZXgtd3JhcDogbm93cmFwOwoJanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0Cn0KLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgewoJZmxleC1kaXJlY3Rpb246IHJvdwp9Ci5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZQp9Ci5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5uYXYtbGluayB7CnBhZGRpbmctcmlnaHQ6LjVyZW07CnBhZGRpbmctbGVmdDouNXJlbQp9Ci5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2LXNjcm9sbCB7CglvdmVyZmxvdzogdmlzaWJsZQp9Ci5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItY29sbGFwc2UgewoJZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7CglmbGV4LWJhc2lzOiBhdXRvCn0KLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHsKCWRpc3BsYXk6IG5vbmUKfQoubmF2YmFyLWV4cGFuZC1sZyAub2ZmY2FudmFzLWhlYWRlciB7CglkaXNwbGF5OiBub25lCn0KLm5hdmJhci1leHBhbmQtbGcgLm9mZmNhbnZhcyB7Cglwb3NpdGlvbjogaW5oZXJpdDsKCWJvdHRvbTogMDsKCXotaW5kZXg6IDEwMDA7CglmbGV4LWdyb3c6IDE7Cgl2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLXJpZ2h0OiAwOwoJYm9yZGVyLWxlZnQ6IDA7Cgl0cmFuc2l0aW9uOiBub25lOwoJdHJhbnNmb3JtOiBub25lCn0KLm5hdmJhci1leHBhbmQtbGcgLm9mZmNhbnZhcy1ib3R0b20sIC5uYXZiYXItZXhwYW5kLWxnIC5vZmZjYW52YXMtdG9wIHsKCWhlaWdodDogYXV0bzsKCWJvcmRlci10b3A6IDA7Cglib3JkZXItYm90dG9tOiAwCn0KLm5hdmJhci1leHBhbmQtbGcgLm9mZmNhbnZhcy1ib2R5IHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LWdyb3c6IDA7CglwYWRkaW5nOiAwOwoJb3ZlcmZsb3cteTogdmlzaWJsZQp9Cn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5uYXZiYXItZXhwYW5kLXhsIHsKCWZsZXgtd3JhcDogbm93cmFwOwoJanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0Cn0KLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgewoJZmxleC1kaXJlY3Rpb246IHJvdwp9Ci5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZQp9Ci5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5uYXYtbGluayB7CnBhZGRpbmctcmlnaHQ6LjVyZW07CnBhZGRpbmctbGVmdDouNXJlbQp9Ci5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2LXNjcm9sbCB7CglvdmVyZmxvdzogdmlzaWJsZQp9Ci5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItY29sbGFwc2UgewoJZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7CglmbGV4LWJhc2lzOiBhdXRvCn0KLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHsKCWRpc3BsYXk6IG5vbmUKfQoubmF2YmFyLWV4cGFuZC14bCAub2ZmY2FudmFzLWhlYWRlciB7CglkaXNwbGF5OiBub25lCn0KLm5hdmJhci1leHBhbmQteGwgLm9mZmNhbnZhcyB7Cglwb3NpdGlvbjogaW5oZXJpdDsKCWJvdHRvbTogMDsKCXotaW5kZXg6IDEwMDA7CglmbGV4LWdyb3c6IDE7Cgl2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLXJpZ2h0OiAwOwoJYm9yZGVyLWxlZnQ6IDA7Cgl0cmFuc2l0aW9uOiBub25lOwoJdHJhbnNmb3JtOiBub25lCn0KLm5hdmJhci1leHBhbmQteGwgLm9mZmNhbnZhcy1ib3R0b20sIC5uYXZiYXItZXhwYW5kLXhsIC5vZmZjYW52YXMtdG9wIHsKCWhlaWdodDogYXV0bzsKCWJvcmRlci10b3A6IDA7Cglib3JkZXItYm90dG9tOiAwCn0KLm5hdmJhci1leHBhbmQteGwgLm9mZmNhbnZhcy1ib2R5IHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LWdyb3c6IDA7CglwYWRkaW5nOiAwOwoJb3ZlcmZsb3cteTogdmlzaWJsZQp9Cn0KQG1lZGlhIChtaW4td2lkdGg6MTQwMHB4KSB7Ci5uYXZiYXItZXhwYW5kLXh4bCB7CglmbGV4LXdyYXA6IG5vd3JhcDsKCWp1c3RpZnktY29udGVudDogZmxleC1zdGFydAp9Ci5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiB7CglmbGV4LWRpcmVjdGlvbjogcm93Cn0KLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZQp9Ci5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAubmF2LWxpbmsgewpwYWRkaW5nLXJpZ2h0Oi41cmVtOwpwYWRkaW5nLWxlZnQ6LjVyZW0KfQoubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYtc2Nyb2xsIHsKCW92ZXJmbG93OiB2aXNpYmxlCn0KLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItY29sbGFwc2UgewoJZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7CglmbGV4LWJhc2lzOiBhdXRvCn0KLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItdG9nZ2xlciB7CglkaXNwbGF5OiBub25lCn0KLm5hdmJhci1leHBhbmQteHhsIC5vZmZjYW52YXMtaGVhZGVyIHsKCWRpc3BsYXk6IG5vbmUKfQoubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcyB7Cglwb3NpdGlvbjogaW5oZXJpdDsKCWJvdHRvbTogMDsKCXotaW5kZXg6IDEwMDA7CglmbGV4LWdyb3c6IDE7Cgl2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLXJpZ2h0OiAwOwoJYm9yZGVyLWxlZnQ6IDA7Cgl0cmFuc2l0aW9uOiBub25lOwoJdHJhbnNmb3JtOiBub25lCn0KLm5hdmJhci1leHBhbmQteHhsIC5vZmZjYW52YXMtYm90dG9tLCAubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcy10b3AgewoJaGVpZ2h0OiBhdXRvOwoJYm9yZGVyLXRvcDogMDsKCWJvcmRlci1ib3R0b206IDAKfQoubmF2YmFyLWV4cGFuZC14eGwgLm9mZmNhbnZhcy1ib2R5IHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LWdyb3c6IDA7CglwYWRkaW5nOiAwOwoJb3ZlcmZsb3cteTogdmlzaWJsZQp9Cn0KLm5hdmJhci1leHBhbmQgewoJZmxleC13cmFwOiBub3dyYXA7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQKfQoubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiB7CglmbGV4LWRpcmVjdGlvbjogcm93Cn0KLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUgewoJcG9zaXRpb246IGFic29sdXRlCn0KLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKcGFkZGluZy1yaWdodDouNXJlbTsKcGFkZGluZy1sZWZ0Oi41cmVtCn0KLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYtc2Nyb2xsIHsKCW92ZXJmbG93OiB2aXNpYmxlCn0KLm5hdmJhci1leHBhbmQgLm5hdmJhci1jb2xsYXBzZSB7CglkaXNwbGF5OiBmbGV4IWltcG9ydGFudDsKCWZsZXgtYmFzaXM6IGF1dG8KfQoubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIgewoJZGlzcGxheTogbm9uZQp9Ci5uYXZiYXItZXhwYW5kIC5vZmZjYW52YXMtaGVhZGVyIHsKCWRpc3BsYXk6IG5vbmUKfQoubmF2YmFyLWV4cGFuZCAub2ZmY2FudmFzIHsKCXBvc2l0aW9uOiBpbmhlcml0OwoJYm90dG9tOiAwOwoJei1pbmRleDogMTAwMDsKCWZsZXgtZ3JvdzogMTsKCXZpc2liaWxpdHk6IHZpc2libGUhaW1wb3J0YW50OwoJYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItcmlnaHQ6IDA7Cglib3JkZXItbGVmdDogMDsKCXRyYW5zaXRpb246IG5vbmU7Cgl0cmFuc2Zvcm06IG5vbmUKfQoubmF2YmFyLWV4cGFuZCAub2ZmY2FudmFzLWJvdHRvbSwgLm5hdmJhci1leHBhbmQgLm9mZmNhbnZhcy10b3AgewoJaGVpZ2h0OiBhdXRvOwoJYm9yZGVyLXRvcDogMDsKCWJvcmRlci1ib3R0b206IDAKfQoubmF2YmFyLWV4cGFuZCAub2ZmY2FudmFzLWJvZHkgewoJZGlzcGxheTogZmxleDsKCWZsZXgtZ3JvdzogMDsKCXBhZGRpbmc6IDA7CglvdmVyZmxvdy15OiB2aXNpYmxlCn0KLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kIHsKCWNvbG9yOiByZ2JhKDAsMCwwLC45KQp9Ci5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpmb2N1cywgLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmhvdmVyIHsKCWNvbG9yOiByZ2JhKDAsMCwwLC45KQp9Ci5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHsKCWNvbG9yOiByZ2JhKDAsMCwwLC41NSkKfQoubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cywgLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIgewoJY29sb3I6IHJnYmEoMCwwLDAsLjcpCn0KLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQgewoJY29sb3I6IHJnYmEoMCwwLDAsLjMpCn0KLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5zaG93Pi5uYXYtbGluayB7Cgljb2xvcjogcmdiYSgwLDAsMCwuOSkKfQoubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlciB7Cgljb2xvcjogcmdiYSgwLDAsMCwuNTUpOwoJYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4xKQp9Ci5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24gewoJYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2UiKQp9Ci5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IHsKCWNvbG9yOiByZ2JhKDAsMCwwLC41NSkKfQoubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmZvY3VzLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmhvdmVyIHsKCWNvbG9yOiByZ2JhKDAsMCwwLC45KQp9Ci5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHsKCWNvbG9yOiAjZmZmCn0KLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMsIC5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVyIHsKCWNvbG9yOiAjZmZmCn0KLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluayB7Cgljb2xvcjogcmdiYSgyNTUsMjU1LDI1NSkKfQoubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzLCAubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyIHsKCWNvbG9yOiByZ2JhKDIzMywyNDIsMjI5KTsKCWJhY2tncm91bmQtY29sb3I6ICMxMzgzNWM7Cn0KCi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQgewoJY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjI1KQp9Ci5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlLCAubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmsgewoJY29sb3I6ICNmZmZmZmY7Cn0KLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7Cgljb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNTUpOwoJYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xKTsKCW1hcmdpbjogMTBweCAwOwp9Ci5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXItaWNvbiB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgyNTUsIDI1NSwgMjU1LCAwLjU1JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZSIpCn0KLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCB7Cgljb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNTUpCn0KLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhLCAubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6Zm9jdXMsIC5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpob3ZlciB7Cgljb2xvcjogI2ZmZgp9Ci5jYXJkIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LWRpcmVjdGlvbjogY29sdW1uOwoJbWluLXdpZHRoOiAwOwoJd29yZC13cmFwOiBicmVhay13b3JkOwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDsKCWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSk7CmJvcmRlci1yYWRpdXM6LjI1cmVtCn0KLmNhcmQ+aHIgewoJbWFyZ2luLXJpZ2h0OiAwOwoJbWFyZ2luLWxlZnQ6IDAKfQouY2FyZD4ubGlzdC1ncm91cCB7Cglib3JkZXItdG9wOiBpbmhlcml0OwoJYm9yZGVyLWJvdHRvbTogaW5oZXJpdAp9Ci5jYXJkPi5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHsKCWJvcmRlci10b3Atd2lkdGg6IDA7CmJvcmRlci10b3AtbGVmdC1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpOwpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCkKfQouY2FyZD4ubGlzdC1ncm91cDpsYXN0LWNoaWxkIHsKCWJvcmRlci1ib3R0b20td2lkdGg6IDA7CmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KTsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCkKfQouY2FyZD4uY2FyZC1oZWFkZXIrLmxpc3QtZ3JvdXAsIC5jYXJkPi5saXN0LWdyb3VwKy5jYXJkLWZvb3RlciB7Cglib3JkZXItdG9wOiAwCn0KLmNhcmQtYm9keSB7CglmbGV4OiAxIDEgYXV0bzsKCXBhZGRpbmc6IDFyZW0gMXJlbQp9Ci5jYXJkLXRpdGxlIHsKbWFyZ2luLWJvdHRvbTouNXJlbQp9Ci5jYXJkLXN1YnRpdGxlIHsKbWFyZ2luLXRvcDotLjI1cmVtOwoJbWFyZ2luLWJvdHRvbTogMAp9Ci5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7CgltYXJnaW4tYm90dG9tOiAwCn0KLmNhcmQtbGluaysuY2FyZC1saW5rIHsKCW1hcmdpbi1sZWZ0OiAxcmVtCn0KLmNhcmQtaGVhZGVyIHsKcGFkZGluZzouNXJlbSAxcmVtOwoJbWFyZ2luLWJvdHRvbTogMDsKCWJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjAzKTsKCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMjUpCn0KLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHsKYm9yZGVyLXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCkgY2FsYyguMjVyZW0gLSAxcHgpIDAgMAp9Ci5jYXJkLWZvb3RlciB7CnBhZGRpbmc6LjVyZW0gMXJlbTsKCWJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjAzKTsKCWJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMjUpCn0KLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQgewpib3JkZXItcmFkaXVzOjAgMCBjYWxjKC4yNXJlbSAtIDFweCkgY2FsYyguMjVyZW0gLSAxcHgpCn0KLmNhcmQtaGVhZGVyLXRhYnMgewptYXJnaW4tcmlnaHQ6LS41cmVtOwptYXJnaW4tYm90dG9tOi0uNXJlbTsKbWFyZ2luLWxlZnQ6LS41cmVtOwoJYm9yZGVyLWJvdHRvbTogMAp9Ci5jYXJkLWhlYWRlci1waWxscyB7Cm1hcmdpbi1yaWdodDotLjVyZW07Cm1hcmdpbi1sZWZ0Oi0uNXJlbQp9Ci5jYXJkLWltZy1vdmVybGF5IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogMDsKCXJpZ2h0OiAwOwoJYm90dG9tOiAwOwoJbGVmdDogMDsKCXBhZGRpbmc6IDFyZW07CmJvcmRlci1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpCn0KLmNhcmQtaW1nLCAuY2FyZC1pbWctYm90dG9tLCAuY2FyZC1pbWctdG9wIHsKCXdpZHRoOiAxMDAlCn0KLmNhcmQtaW1nLCAuY2FyZC1pbWctdG9wIHsKYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCk7CmJvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KQp9Ci5jYXJkLWltZywgLmNhcmQtaW1nLWJvdHRvbSB7CmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KTsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCkKfQouY2FyZC1ncm91cD4uY2FyZCB7Cm1hcmdpbi1ib3R0b206Ljc1cmVtCn0KQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKLmNhcmQtZ3JvdXAgewoJZGlzcGxheTogZmxleDsKCWZsZXgtZmxvdzogcm93IHdyYXAKfQouY2FyZC1ncm91cD4uY2FyZCB7CglmbGV4OiAxIDAgMCU7CgltYXJnaW4tYm90dG9tOiAwCn0KLmNhcmQtZ3JvdXA+LmNhcmQrLmNhcmQgewoJbWFyZ2luLWxlZnQ6IDA7Cglib3JkZXItbGVmdDogMAp9Ci5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgewoJYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7Cglib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMAp9Ci5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaGVhZGVyLCAuY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AgewoJYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAKfQouY2FyZC1ncm91cD4uY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWZvb3RlciwgLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tIHsKCWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwCn0KLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgewoJYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDsKCWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAKfQouY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1oZWFkZXIsIC5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy10b3AgewoJYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMAp9Ci5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWZvb3RlciwgLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSB7Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwCn0KfQouYWNjb3JkaW9uLWJ1dHRvbiB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglkaXNwbGF5OiBmbGV4OwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKCXdpZHRoOiAxMDAlOwoJcGFkZGluZzogMXJlbSAxLjI1cmVtOwoJZm9udC1zaXplOiAxcmVtOwoJY29sb3I6ICMyMTI1Mjk7Cgl0ZXh0LWFsaWduOiBsZWZ0OwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKCWJvcmRlcjogMDsKCWJvcmRlci1yYWRpdXM6IDA7CglvdmVyZmxvdy1hbmNob3I6IG5vbmU7Cgl0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlCn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewouYWNjb3JkaW9uLWJ1dHRvbiB7Cgl0cmFuc2l0aW9uOiBub25lCn0KfQouYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCkgewoJY29sb3I6ICMwYzYzZTQ7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZTdmMWZmOwoJYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwuMTI1KQp9Ci5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKTo6YWZ0ZXIgewoJYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMwYzYzZTQnJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2UiKTsKCXRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpCn0KLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHsKCWZsZXgtc2hyaW5rOiAwOwoJd2lkdGg6IDEuMjVyZW07CgloZWlnaHQ6IDEuMjVyZW07CgltYXJnaW4tbGVmdDogYXV0bzsKCWNvbnRlbnQ6ICIiOwoJYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMyMTI1MjknJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2UiKTsKCWJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CgliYWNrZ3JvdW5kLXNpemU6IDEuMjVyZW07Cgl0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0Cn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewouYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIgewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLmFjY29yZGlvbi1idXR0b246aG92ZXIgewoJei1pbmRleDogMgp9Ci5hY2NvcmRpb24tYnV0dG9uOmZvY3VzIHsKCXotaW5kZXg6IDM7Cglib3JkZXItY29sb3I6ICM4NmI3ZmU7CglvdXRsaW5lOiAwOwpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDEzLDExMCwyNTMsLjI1KQp9Ci5hY2NvcmRpb24taGVhZGVyIHsKCW1hcmdpbi1ib3R0b206IDAKfQouYWNjb3JkaW9uLWl0ZW0gewoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKCWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSkKfQouYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZSB7CmJvcmRlci10b3AtbGVmdC1yYWRpdXM6LjI1cmVtOwpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW0KfQouYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbiB7CmJvcmRlci10b3AtbGVmdC1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpOwpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCkKfQouYWNjb3JkaW9uLWl0ZW06bm90KDpmaXJzdC1vZi10eXBlKSB7Cglib3JkZXItdG9wOiAwCn0KLmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSB7CmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi4yNXJlbTsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW0KfQouYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7CmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KTsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCkKfQouYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tY29sbGFwc2Ugewpib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouMjVyZW07CmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtCn0KLmFjY29yZGlvbi1ib2R5IHsKCXBhZGRpbmc6IDFyZW0gMS4yNXJlbQp9Ci5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1jb2xsYXBzZSB7Cglib3JkZXItd2lkdGg6IDAKfQouYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbSB7Cglib3JkZXItcmlnaHQ6IDA7Cglib3JkZXItbGVmdDogMDsKCWJvcmRlci1yYWRpdXM6IDAKfQouYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCB7Cglib3JkZXItdG9wOiAwCn0KLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCB7Cglib3JkZXItYm90dG9tOiAwCn0KLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1idXR0b24gewoJYm9yZGVyLXJhZGl1czogMAp9Ci5icmVhZGNydW1iIHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LXdyYXA6IHdyYXA7CglwYWRkaW5nOiAwIDA7CgltYXJnaW4tYm90dG9tOiAxcmVtOwoJbGlzdC1zdHlsZTogbm9uZQp9Ci5icmVhZGNydW1iLWl0ZW0rLmJyZWFkY3J1bWItaXRlbSB7CnBhZGRpbmctbGVmdDouNXJlbQp9Ci5icmVhZGNydW1iLWl0ZW0rLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHsKCWZsb2F0OiBsZWZ0OwpwYWRkaW5nLXJpZ2h0Oi41cmVtOwoJY29sb3I6ICM2Yzc1N2Q7Cgljb250ZW50OiB2YXIoLS1icy1icmVhZGNydW1iLWRpdmlkZXIsICIuLi9pbmRleC5odG1sIikKfQouYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZSB7Cgljb2xvcjogIzZjNzU3ZAp9Ci5wYWdpbmF0aW9uIHsKCWRpc3BsYXk6IGZsZXg7CglwYWRkaW5nLWxlZnQ6IDA7CglsaXN0LXN0eWxlOiBub25lOwoJanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CgltYXJnaW4tdG9wOiAxMHB4Owp9Ci5wYWdlLWxpbmsgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJZGlzcGxheTogYmxvY2s7Cgljb2xvcjogI2ZmZmZmZjsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKYm9yZGVyOiBub25lOwoJdHJhbnNpdGlvbjogY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0OwoJYmFja2dyb3VuZDogIzE1ZWY5ZjsKCWJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1ZWY5ZiAwJSwgIzEyNjQ0OCAxMDAlKTsKCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1ZWY5ZiAwJSwgIzEyNjQ0OCAxMDAlKTsKCWJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMxNWVmOWYgMCUsICMxMjY0NDggMTAwJSk7CglmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzE1ZWY5ZicsIGVuZENvbG9yc3RyPScjMTI2NDQ4JywgR3JhZGllbnRUeXBlPTAgKTsKCWRpc3BsYXk6IGlubGluZS1ibG9jazttYXJnaW46IDAgNXB4O2N1cnNvcjogcG9pbnRlcjsKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5wYWdlLWxpbmsgewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLnBhZ2UtbGluazpob3ZlciB7Cgl6LWluZGV4OiAyOwoJY29sb3I6ICNmZmZmZmY7CgliYWNrZ3JvdW5kOiAjMDg1ZTNlOwpiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwODVlM2UgMCUsICMwZDM1MzIgMTAwJSk7CmJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWUzZSAwJSwgIzBkMzUzMiAxMDAlKTsKYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4NWUzZSAwJSwgIzBkMzUzMiAxMDAlKTsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7CmZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDg1ZTNlJywgZW5kQ29sb3JzdHI9JyMwZDM1MzInLCBHcmFkaWVudFR5cGU9MCApOwoJYm9yZGVyLWNvbG9yOiBub25lOwp9Ci5wYWdlLWxpbms6Zm9jdXMgewoJei1pbmRleDogMzsKCWNvbG9yOiAjZmZmZmZmOwpiYWNrZ3JvdW5kOiAjMDg1ZTNlOwpiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwODVlM2UgMCUsICMwZDM1MzIgMTAwJSk7CmJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWUzZSAwJSwgIzBkMzUzMiAxMDAlKTsKYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4NWUzZSAwJSwgIzBkMzUzMiAxMDAlKTsKICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7CmZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDg1ZTNlJywgZW5kQ29sb3JzdHI9JyMwZDM1MzInLCBHcmFkaWVudFR5cGU9MCApOwoJb3V0bGluZTogMDsKYm94LXNoYWRvdzowIDAgMCAuMjVyZW0gcmdiYSgxMywxMTAsMjUzLC4yNSkKfQoucGFnZS1pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsgewoJbWFyZ2luLWxlZnQ6IC0xcHgKfQoucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHsKCXotaW5kZXg6IDM7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKfQoucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbmsgewoJY29sb3I6ICM2Yzc1N2Q7Cglwb2ludGVyLWV2ZW50czogbm9uZTsKCWJhY2tncm91bmQtY29sb3I6ICNmZmY7Cglib3JkZXItY29sb3I6ICNkZWUyZTYKfQoucGFnZS1saW5rIHsKCXBhZGRpbmc6IC41cmVtIC43NXJlbTsKCWJvcmRlci1yYWRpdXM6IDUwJTsKfS5hY3RpdmUgLnBhZ2UtbGluayB7CgliYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKCWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7Cn0KLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHsKYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czo1MCU7CmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NTAlCn0KLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsgewpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo1MCU7CmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjUwJTsKfQoucGFnaW5hdGlvbi1sZyAucGFnZS1saW5rIHsKcGFkZGluZzouNzVyZW0gMS41cmVtOwoJZm9udC1zaXplOiAxLjI1cmVtCn0KLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHsKYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czouM3JlbTsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouM3JlbQp9Ci5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHsKYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjNyZW07CmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi4zcmVtCn0KLnBhZ2luYXRpb24tc20gLnBhZ2UtbGluayB7CnBhZGRpbmc6LjI1cmVtIC41cmVtOwpmb250LXNpemU6Ljg3NXJlbQp9Ci5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7CmJvcmRlci10b3AtbGVmdC1yYWRpdXM6LjJyZW07CmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjJyZW0KfQoucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7CmJvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4ycmVtOwpib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouMnJlbQp9Ci5iYWRnZSB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CglwYWRkaW5nOiAuMzVlbSAuNjVlbTsKCWZvbnQtc2l6ZTogLjc1ZW07Cglmb250LXdlaWdodDogNzAwOwoJbGluZS1oZWlnaHQ6IDE7Cgljb2xvcjogI2ZmZjsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXdoaXRlLXNwYWNlOiBub3dyYXA7Cgl2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7CmJvcmRlci1yYWRpdXM6LjI1cmVtCn0KLmJhZGdlOmVtcHR5IHsKCWRpc3BsYXk6IG5vbmUKfQouYnRuIC5iYWRnZSB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl0b3A6IC0xcHgKfQouYWxlcnQgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJcGFkZGluZzogMXJlbSAxcmVtOwoJbWFyZ2luLWJvdHRvbTogMXJlbTsKCWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Owpib3JkZXItcmFkaXVzOi4yNXJlbQp9Ci5hbGVydC1oZWFkaW5nIHsKCWNvbG9yOiBpbmhlcml0Cn0KLmFsZXJ0LWxpbmsgewoJZm9udC13ZWlnaHQ6IDcwMAp9Ci5hbGVydC1kaXNtaXNzaWJsZSB7CglwYWRkaW5nLXJpZ2h0OiAzcmVtCn0KLmFsZXJ0LWRpc21pc3NpYmxlIC5idG4tY2xvc2UgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAwOwoJcmlnaHQ6IDA7Cgl6LWluZGV4OiAyOwoJcGFkZGluZzogMS4yNXJlbSAxcmVtCn0KLmFsZXJ0LXByaW1hcnkgewoJY29sb3I6ICMwODQyOTg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjY2ZlMmZmOwoJYm9yZGVyLWNvbG9yOiAjYjZkNGZlCn0KLmFsZXJ0LXByaW1hcnkgLmFsZXJ0LWxpbmsgewoJY29sb3I6ICMwNjM1N2EKfQouYWxlcnQtc2Vjb25kYXJ5IHsKCWNvbG9yOiAjNDE0NjRiOwoJYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTsKCWJvcmRlci1jb2xvcjogI2QzZDZkOAp9Ci5hbGVydC1zZWNvbmRhcnkgLmFsZXJ0LWxpbmsgewoJY29sb3I6ICMzNDM4M2MKfQouYWxlcnQtc3VjY2VzcyB7Cgljb2xvcjogIzBmNTEzMjsKCWJhY2tncm91bmQtY29sb3I6ICNkMWU3ZGQ7Cglib3JkZXItY29sb3I6ICNiYWRiY2MKfQouYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluayB7Cgljb2xvcjogIzBjNDEyOAp9Ci5hbGVydC1pbmZvIHsKCWNvbG9yOiAjMDU1MTYwOwoJYmFja2dyb3VuZC1jb2xvcjogI2NmZjRmYzsKCWJvcmRlci1jb2xvcjogI2I2ZWZmYgp9Ci5hbGVydC1pbmZvIC5hbGVydC1saW5rIHsKCWNvbG9yOiAjMDQ0MTRkCn0KLmFsZXJ0LXdhcm5pbmcgewoJY29sb3I6ICM2NjRkMDM7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkOwoJYm9yZGVyLWNvbG9yOiAjZmZlY2I1Cn0KLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWxpbmsgewoJY29sb3I6ICM1MjNlMDIKfQouYWxlcnQtZGFuZ2VyIHsKCWNvbG9yOiAjODQyMDI5OwoJYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTsKCWJvcmRlci1jb2xvcjogI2Y1YzJjNwp9Ci5hbGVydC1kYW5nZXIgLmFsZXJ0LWxpbmsgewoJY29sb3I6ICM2YTFhMjEKfQouYWxlcnQtbGlnaHQgewoJY29sb3I6ICM2MzY0NjQ7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOwoJYm9yZGVyLWNvbG9yOiAjZmRmZGZlCn0KLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHsKCWNvbG9yOiAjNGY1MDUwCn0KLmFsZXJ0LWRhcmsgewoJY29sb3I6ICMxNDE2MTk7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZDNkM2Q0OwoJYm9yZGVyLWNvbG9yOiAjYmNiZWJmCn0KLmFsZXJ0LWRhcmsgLmFsZXJ0LWxpbmsgewoJY29sb3I6ICMxMDEyMTQKfQpALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMgewowJSB7CmJhY2tncm91bmQtcG9zaXRpb24teDoxcmVtCn0KfQpAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHsKMCUgewpiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6MXJlbQp9Cn0KLnByb2dyZXNzIHsKCWRpc3BsYXk6IGZsZXg7CgloZWlnaHQ6IDFyZW07CglvdmVyZmxvdzogaGlkZGVuOwpmb250LXNpemU6Ljc1cmVtOwoJYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjsKYm9yZGVyLXJhZGl1czouMjVyZW0KfQoucHJvZ3Jlc3MtYmFyIHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LWRpcmVjdGlvbjogY29sdW1uOwoJanVzdGlmeS1jb250ZW50OiBjZW50ZXI7CglvdmVyZmxvdzogaGlkZGVuOwoJY29sb3I6ICNmZmY7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cgl3aGl0ZS1zcGFjZTogbm93cmFwOwoJYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDsKCXRyYW5zaXRpb246IHdpZHRoIC42cyBlYXNlCn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewoucHJvZ3Jlc3MtYmFyIHsKCXRyYW5zaXRpb246IG5vbmUKfQp9Ci5wcm9ncmVzcy1iYXItc3RyaXBlZCB7CgliYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTsKCWJhY2tncm91bmQtc2l6ZTogMXJlbSAxcmVtCn0KLnByb2dyZXNzLWJhci1hbmltYXRlZCB7Cgktd2Via2l0LWFuaW1hdGlvbjogMXMgbGluZWFyIGluZmluaXRlIHByb2dyZXNzLWJhci1zdHJpcGVzOwoJYW5pbWF0aW9uOiAxcyBsaW5lYXIgaW5maW5pdGUgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5wcm9ncmVzcy1iYXItYW5pbWF0ZWQgewoJLXdlYmtpdC1hbmltYXRpb246IG5vbmU7CglhbmltYXRpb246IG5vbmUKfQp9Ci5saXN0LWdyb3VwIHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LWRpcmVjdGlvbjogY29sdW1uOwoJcGFkZGluZy1sZWZ0OiAwOwoJbWFyZ2luLWJvdHRvbTogMDsKYm9yZGVyLXJhZGl1czouMjVyZW0KfQoubGlzdC1ncm91cC1udW1iZXJlZCB7CglsaXN0LXN0eWxlLXR5cGU6IG5vbmU7Cgljb3VudGVyLXJlc2V0OiBzZWN0aW9uCn0KLmxpc3QtZ3JvdXAtbnVtYmVyZWQ+bGk6OmJlZm9yZSB7Cgljb250ZW50OiBjb3VudGVycyhzZWN0aW9uLCAiLiIpICIuICI7Cgljb3VudGVyLWluY3JlbWVudDogc2VjdGlvbgp9Ci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHsKCXdpZHRoOiAxMDAlOwoJY29sb3I6ICM0OTUwNTc7Cgl0ZXh0LWFsaWduOiBpbmhlcml0Cn0KLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKCXotaW5kZXg6IDE7Cgljb2xvcjogIzQ5NTA1NzsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKCWJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmEKfQoubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUgewoJY29sb3I6ICMyMTI1Mjk7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmCn0KLmxpc3QtZ3JvdXAtaXRlbSB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglkaXNwbGF5OiBibG9jazsKcGFkZGluZzouNXJlbSAxcmVtOwoJY29sb3I6ICMyMTI1Mjk7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmU7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMTI1KQp9Ci5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQgewoJYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDsKCWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0Cn0KLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHsKCWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0OwoJYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdAp9Ci5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsIC5saXN0LWdyb3VwLWl0ZW06ZGlzYWJsZWQgewoJY29sb3I6ICM2Yzc1N2Q7Cglwb2ludGVyLWV2ZW50czogbm9uZTsKCWJhY2tncm91bmQtY29sb3I6ICNmZmYKfQoubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7Cgl6LWluZGV4OiAyOwoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkOwoJYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkCn0KLmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtIHsKCWJvcmRlci10b3Atd2lkdGg6IDAKfQoubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHsKCW1hcmdpbi10b3A6IC0xcHg7Cglib3JkZXItdG9wLXdpZHRoOiAxcHgKfQoubGlzdC1ncm91cC1ob3Jpem9udGFsIHsKCWZsZXgtZGlyZWN0aW9uOiByb3cKfQoubGlzdC1ncm91cC1ob3Jpem9udGFsPi5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQgewpib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbTsKCWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwCn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbD4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQgewpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW07Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwCn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbD4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7CgltYXJnaW4tdG9wOiAwCn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0gewoJYm9yZGVyLXRvcC13aWR0aDogMXB4OwoJYm9yZGVyLWxlZnQtd2lkdGg6IDAKfQoubGlzdC1ncm91cC1ob3Jpem9udGFsPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewoJbWFyZ2luLWxlZnQ6IC0xcHg7Cglib3JkZXItbGVmdC13aWR0aDogMXB4Cn0KQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHsKLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSB7CglmbGV4LWRpcmVjdGlvbjogcm93Cn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Cglib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtc20+Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHsKYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtOwoJYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtc20+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewoJbWFyZ2luLXRvcDogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtc20+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtIHsKCWJvcmRlci10b3Atd2lkdGg6IDFweDsKCWJvcmRlci1sZWZ0LXdpZHRoOiAwCn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbT4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHsKCW1hcmdpbi1sZWZ0OiAtMXB4OwoJYm9yZGVyLWxlZnQtd2lkdGg6IDFweAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCB7CglmbGV4LWRpcmVjdGlvbjogcm93Cn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZD4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Cglib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtbWQ+Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHsKYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtOwoJYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtbWQ+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewoJbWFyZ2luLXRvcDogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtbWQ+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtIHsKCWJvcmRlci10b3Atd2lkdGg6IDFweDsKCWJvcmRlci1sZWZ0LXdpZHRoOiAwCn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZD4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHsKCW1hcmdpbi1sZWZ0OiAtMXB4OwoJYm9yZGVyLWxlZnQtd2lkdGg6IDFweAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHsKLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyB7CglmbGV4LWRpcmVjdGlvbjogcm93Cn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Cglib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtbGc+Lmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHsKYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtOwoJYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtbGc+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewoJbWFyZ2luLXRvcDogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwtbGc+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtIHsKCWJvcmRlci10b3Atd2lkdGg6IDFweDsKCWJvcmRlci1sZWZ0LXdpZHRoOiAwCn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZz4ubGlzdC1ncm91cC1pdGVtKy5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHsKCW1hcmdpbi1sZWZ0OiAtMXB4OwoJYm9yZGVyLWxlZnQtd2lkdGg6IDFweAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5saXN0LWdyb3VwLWhvcml6b250YWwteGwgewoJZmxleC1kaXJlY3Rpb246IHJvdwp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7CmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtOwoJYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAKfQoubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsPi5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7CmJvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4yNXJlbTsKCWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAKfQoubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsPi5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHsKCW1hcmdpbi10b3A6IDAKfQoubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbSB7Cglib3JkZXItdG9wLXdpZHRoOiAxcHg7Cglib3JkZXItbGVmdC13aWR0aDogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwteGw+Lmxpc3QtZ3JvdXAtaXRlbSsubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7CgltYXJnaW4tbGVmdDogLTFweDsKCWJvcmRlci1sZWZ0LXdpZHRoOiAxcHgKfQp9CkBtZWRpYSAobWluLXdpZHRoOjE0MDBweCkgewoubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCB7CglmbGV4LWRpcmVjdGlvbjogcm93Cn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGw+Lmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7CmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtOwoJYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAKfQoubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bD4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQgewpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW07Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwCn0KLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGw+Lmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewoJbWFyZ2luLXRvcDogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwteHhsPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbSB7Cglib3JkZXItdG9wLXdpZHRoOiAxcHg7Cglib3JkZXItbGVmdC13aWR0aDogMAp9Ci5saXN0LWdyb3VwLWhvcml6b250YWwteHhsPi5saXN0LWdyb3VwLWl0ZW0rLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUgewoJbWFyZ2luLWxlZnQ6IC0xcHg7Cglib3JkZXItbGVmdC13aWR0aDogMXB4Cn0KfQoubGlzdC1ncm91cC1mbHVzaCB7Cglib3JkZXItcmFkaXVzOiAwCn0KLmxpc3QtZ3JvdXAtZmx1c2g+Lmxpc3QtZ3JvdXAtaXRlbSB7Cglib3JkZXItd2lkdGg6IDAgMCAxcHgKfQoubGlzdC1ncm91cC1mbHVzaD4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQgewoJYm9yZGVyLWJvdHRvbS13aWR0aDogMAp9Ci5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeSB7Cgljb2xvcjogIzA4NDI5ODsKCWJhY2tncm91bmQtY29sb3I6ICNjZmUyZmYKfQoubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywgLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIgewoJY29sb3I6ICMwODQyOTg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjYmFjYmU2Cn0KLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHsKCWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jb2xvcjogIzA4NDI5ODsKCWJvcmRlci1jb2xvcjogIzA4NDI5OAp9Ci5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5IHsKCWNvbG9yOiAjNDE0NjRiOwoJYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNQp9Ci5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsIC5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIgewoJY29sb3I6ICM0MTQ2NGI7CgliYWNrZ3JvdW5kLWNvbG9yOiAjY2JjY2NlCn0KLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNDE0NjRiOwoJYm9yZGVyLWNvbG9yOiAjNDE0NjRiCn0KLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHsKCWNvbG9yOiAjMGY1MTMyOwoJYmFja2dyb3VuZC1jb2xvcjogI2QxZTdkZAp9Ci5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLCAubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciB7Cgljb2xvcjogIzBmNTEzMjsKCWJhY2tncm91bmQtY29sb3I6ICNiY2QwYzcKfQoubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMGY1MTMyOwoJYm9yZGVyLWNvbG9yOiAjMGY1MTMyCn0KLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHsKCWNvbG9yOiAjMDU1MTYwOwoJYmFja2dyb3VuZC1jb2xvcjogI2NmZjRmYwp9Ci5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLCAubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciB7Cgljb2xvcjogIzA1NTE2MDsKCWJhY2tncm91bmQtY29sb3I6ICNiYWRjZTMKfQoubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMDU1MTYwOwoJYm9yZGVyLWNvbG9yOiAjMDU1MTYwCn0KLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIHsKCWNvbG9yOiAjNjY0ZDAzOwoJYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNjZAp9Ci5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLCAubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciB7Cgljb2xvcjogIzY2NGQwMzsKCWJhY2tncm91bmQtY29sb3I6ICNlNmRiYjkKfQoubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNjY0ZDAzOwoJYm9yZGVyLWNvbG9yOiAjNjY0ZDAzCn0KLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIgewoJY29sb3I6ICM4NDIwMjk7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhCn0KLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywgLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciB7Cgljb2xvcjogIzg0MjAyOTsKCWJhY2tncm91bmQtY29sb3I6ICNkZmMyYzQKfQoubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7Cgljb2xvcjogI2ZmZjsKCWJhY2tncm91bmQtY29sb3I6ICM4NDIwMjk7Cglib3JkZXItY29sb3I6ICM4NDIwMjkKfQoubGlzdC1ncm91cC1pdGVtLWxpZ2h0IHsKCWNvbG9yOiAjNjM2NDY0OwoJYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZQp9Ci5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywgLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyIHsKCWNvbG9yOiAjNjM2NDY0OwoJYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNQp9Ci5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNjM2NDY0OwoJYm9yZGVyLWNvbG9yOiAjNjM2NDY0Cn0KLmxpc3QtZ3JvdXAtaXRlbS1kYXJrIHsKCWNvbG9yOiAjMTQxNjE5OwoJYmFja2dyb3VuZC1jb2xvcjogI2QzZDNkNAp9Ci5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLCAubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciB7Cgljb2xvcjogIzE0MTYxOTsKCWJhY2tncm91bmQtY29sb3I6ICNiZWJlYmYKfQoubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUgewoJY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMTQxNjE5OwoJYm9yZGVyLWNvbG9yOiAjMTQxNjE5Cn0KLmJ0bi1jbG9zZSB7Cglib3gtc2l6aW5nOiBjb250ZW50LWJveDsKCXdpZHRoOiAxZW07CgloZWlnaHQ6IDFlbTsKCXBhZGRpbmc6IC4yNWVtIC4yNWVtOwoJY29sb3I6ICMwMDA7CgliYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzAwMCclM2UlM2NwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwMTEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDExMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMDEwLTEuNDE0eicvJTNlJTNjL3N2ZyUzZSIpIGNlbnRlci8xZW0gYXV0byBuby1yZXBlYXQ7Cglib3JkZXI6IDA7CmJvcmRlci1yYWRpdXM6LjI1cmVtOwoJb3BhY2l0eTogLjUKfQouYnRuLWNsb3NlOmhvdmVyIHsKCWNvbG9yOiAjMDAwOwoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwoJb3BhY2l0eTogLjc1Cn0KLmJ0bi1jbG9zZTpmb2N1cyB7CglvdXRsaW5lOiAwOwpib3gtc2hhZG93OjAgMCAwIC4yNXJlbSByZ2JhKDEzLDExMCwyNTMsLjI1KTsKCW9wYWNpdHk6IDEKfQouYnRuLWNsb3NlLmRpc2FibGVkLCAuYnRuLWNsb3NlOmRpc2FibGVkIHsKCXBvaW50ZXItZXZlbnRzOiBub25lOwoJLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKCS1tb3otdXNlci1zZWxlY3Q6IG5vbmU7Cgl1c2VyLXNlbGVjdDogbm9uZTsKCW9wYWNpdHk6IC4yNQp9Ci5idG4tY2xvc2Utd2hpdGUgewoJZmlsdGVyOiBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkKfQoudG9hc3QgewoJd2lkdGg6IDM1MHB4OwoJbWF4LXdpZHRoOiAxMDAlOwpmb250LXNpemU6Ljg3NXJlbTsKCXBvaW50ZXItZXZlbnRzOiBhdXRvOwoJYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuODUpOwoJYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKCWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEpOwpib3gtc2hhZG93OjAgLjVyZW0gMXJlbSByZ2JhKDAsMCwwLC4xNSk7CmJvcmRlci1yYWRpdXM6LjI1cmVtCn0KLnRvYXN0LnNob3dpbmcgewoJb3BhY2l0eTogMAp9Ci50b2FzdDpub3QoLnNob3cpIHsKCWRpc3BsYXk6IG5vbmUKfQoudG9hc3QtY29udGFpbmVyIHsKCXdpZHRoOiAtd2Via2l0LW1heC1jb250ZW50OwoJd2lkdGg6IC1tb3otbWF4LWNvbnRlbnQ7Cgl3aWR0aDogbWF4LWNvbnRlbnQ7CgltYXgtd2lkdGg6IDEwMCU7Cglwb2ludGVyLWV2ZW50czogbm9uZQp9Ci50b2FzdC1jb250YWluZXI+Om5vdCg6bGFzdC1jaGlsZCkgewptYXJnaW4tYm90dG9tOi43NXJlbQp9Ci50b2FzdC1oZWFkZXIgewoJZGlzcGxheTogZmxleDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7CnBhZGRpbmc6LjVyZW0gLjc1cmVtOwoJY29sb3I6ICM2Yzc1N2Q7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44NSk7CgliYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OwoJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjA1KTsKYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCk7CmJvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KQp9Ci50b2FzdC1oZWFkZXIgLmJ0bi1jbG9zZSB7Cm1hcmdpbi1yaWdodDotLjM3NXJlbTsKbWFyZ2luLWxlZnQ6Ljc1cmVtCn0KLnRvYXN0LWJvZHkgewpwYWRkaW5nOi43NXJlbTsKCXdvcmQtd3JhcDogYnJlYWstd29yZAp9Ci5tb2RhbCB7Cglwb3NpdGlvbjogZml4ZWQ7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJei1pbmRleDogMTA1NTsKCWRpc3BsYXk6IG5vbmU7Cgl3aWR0aDogMTAwJTsKCWhlaWdodDogMTAwJTsKCW92ZXJmbG93LXg6IGhpZGRlbjsKCW92ZXJmbG93LXk6IGF1dG87CglvdXRsaW5lOiAwCn0KLm1vZGFsLWRpYWxvZyB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl3aWR0aDogYXV0bzsKbWFyZ2luOi41cmVtOwoJcG9pbnRlci1ldmVudHM6IG5vbmUKfQoubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHsKCXRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7Cgl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTBweCkKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cgewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLm1vZGFsLnNob3cgLm1vZGFsLWRpYWxvZyB7Cgl0cmFuc2Zvcm06IG5vbmUKfQoubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2cgewoJdHJhbnNmb3JtOiBzY2FsZSgxLjAyKQp9Ci5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7CgloZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pCn0KLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHsKCW1heC1oZWlnaHQ6IDEwMCU7CglvdmVyZmxvdzogaGlkZGVuCn0KLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1ib2R5IHsKCW92ZXJmbG93LXk6IGF1dG8KfQoubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHsKCWRpc3BsYXk6IGZsZXg7CglhbGlnbi1pdGVtczogY2VudGVyOwoJbWluLWhlaWdodDogY2FsYygxMDAlIC0gMXJlbSkKfQoubW9kYWwtY29udGVudCB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglkaXNwbGF5OiBmbGV4OwoJZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKCXdpZHRoOiAxMDAlOwoJcG9pbnRlci1ldmVudHM6IGF1dG87CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKCWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpOwpib3JkZXItcmFkaXVzOi4zcmVtOwoJb3V0bGluZTogMAp9Ci5tb2RhbC1iYWNrZHJvcCB7Cglwb3NpdGlvbjogZml4ZWQ7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJei1pbmRleDogMTA1MDsKCXdpZHRoOiAxMDB2dzsKCWhlaWdodDogMTAwdmg7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMDAwCn0KLm1vZGFsLWJhY2tkcm9wLmZhZGUgewoJb3BhY2l0eTogMAp9Ci5tb2RhbC1iYWNrZHJvcC5zaG93IHsKCW9wYWNpdHk6IC41Cn0KLm1vZGFsLWhlYWRlciB7CglkaXNwbGF5OiBmbGV4OwoJZmxleC1zaHJpbms6IDA7CglhbGlnbi1pdGVtczogY2VudGVyOwoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwoJcGFkZGluZzogMXJlbSAxcmVtOwoJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7CmJvcmRlci10b3AtbGVmdC1yYWRpdXM6Y2FsYyguM3JlbSAtIDFweCk7CmJvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpCn0KLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHsKcGFkZGluZzouNXJlbSAuNXJlbTsKbWFyZ2luOi0uNXJlbSAtLjVyZW0gLS41cmVtIGF1dG8KfQoubW9kYWwtdGl0bGUgewoJbWFyZ2luLWJvdHRvbTogMDsKCWxpbmUtaGVpZ2h0OiAxLjUKfQoubW9kYWwtYm9keSB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglmbGV4OiAxIDEgYXV0bzsKCXBhZGRpbmc6IDFyZW0KfQoubW9kYWwtZm9vdGVyIHsKCWRpc3BsYXk6IGZsZXg7CglmbGV4LXdyYXA6IHdyYXA7CglmbGV4LXNocmluazogMDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOwpwYWRkaW5nOi43NXJlbTsKCWJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2Owpib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czpjYWxjKC4zcmVtIC0gMXB4KTsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKC4zcmVtIC0gMXB4KQp9Ci5tb2RhbC1mb290ZXI+KiB7Cm1hcmdpbjouMjVyZW0KfQpAbWVkaWEgKG1pbi13aWR0aDo1NzZweCkgewoubW9kYWwtZGlhbG9nIHsKCW1heC13aWR0aDogNTAwcHg7CgltYXJnaW46IDEuNzVyZW0gYXV0bwp9Ci5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7CgloZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNXJlbSkKfQoubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHsKCW1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNXJlbSkKfQoubW9kYWwtc20gewoJbWF4LXdpZHRoOiAzMDBweAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHsKLm1vZGFsLWxnLCAubW9kYWwteGwgewoJbWF4LXdpZHRoOiA4MDBweAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7Ci5tb2RhbC14bCB7CgltYXgtd2lkdGg6IDExNDBweAp9Cn0KLm1vZGFsLWZ1bGxzY3JlZW4gewoJd2lkdGg6IDEwMHZ3OwoJbWF4LXdpZHRoOiBub25lOwoJaGVpZ2h0OiAxMDAlOwoJbWFyZ2luOiAwCn0KLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWNvbnRlbnQgewoJaGVpZ2h0OiAxMDAlOwoJYm9yZGVyOiAwOwoJYm9yZGVyLXJhZGl1czogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1oZWFkZXIgewoJYm9yZGVyLXJhZGl1czogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1ib2R5IHsKCW92ZXJmbG93LXk6IGF1dG8KfQoubW9kYWwtZnVsbHNjcmVlbiAubW9kYWwtZm9vdGVyIHsKCWJvcmRlci1yYWRpdXM6IDAKfQpAbWVkaWEgKG1heC13aWR0aDo1NzUuOThweCkgewoubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIHsKCXdpZHRoOiAxMDB2dzsKCW1heC13aWR0aDogbm9uZTsKCWhlaWdodDogMTAwJTsKCW1hcmdpbjogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWNvbnRlbnQgewoJaGVpZ2h0OiAxMDAlOwoJYm9yZGVyOiAwOwoJYm9yZGVyLXJhZGl1czogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWhlYWRlciB7Cglib3JkZXItcmFkaXVzOiAwCn0KLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtYm9keSB7CglvdmVyZmxvdy15OiBhdXRvCn0KLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtZm9vdGVyIHsKCWJvcmRlci1yYWRpdXM6IDAKfQp9CkBtZWRpYSAobWF4LXdpZHRoOjc2Ny45OHB4KSB7Ci5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24gewoJd2lkdGg6IDEwMHZ3OwoJbWF4LXdpZHRoOiBub25lOwoJaGVpZ2h0OiAxMDAlOwoJbWFyZ2luOiAwCn0KLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtY29udGVudCB7CgloZWlnaHQ6IDEwMCU7Cglib3JkZXI6IDA7Cglib3JkZXItcmFkaXVzOiAwCn0KLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtaGVhZGVyIHsKCWJvcmRlci1yYWRpdXM6IDAKfQoubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1ib2R5IHsKCW92ZXJmbG93LXk6IGF1dG8KfQoubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1mb290ZXIgewoJYm9yZGVyLXJhZGl1czogMAp9Cn0KQG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpIHsKLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biB7Cgl3aWR0aDogMTAwdnc7CgltYXgtd2lkdGg6IG5vbmU7CgloZWlnaHQ6IDEwMCU7CgltYXJnaW46IDAKfQoubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1jb250ZW50IHsKCWhlaWdodDogMTAwJTsKCWJvcmRlcjogMDsKCWJvcmRlci1yYWRpdXM6IDAKfQoubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1oZWFkZXIgewoJYm9yZGVyLXJhZGl1czogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24gLm1vZGFsLWJvZHkgewoJb3ZlcmZsb3cteTogYXV0bwp9Ci5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24gLm1vZGFsLWZvb3RlciB7Cglib3JkZXItcmFkaXVzOiAwCn0KfQpAbWVkaWEgKG1heC13aWR0aDoxMTk5Ljk4cHgpIHsKLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biB7Cgl3aWR0aDogMTAwdnc7CgltYXgtd2lkdGg6IG5vbmU7CgloZWlnaHQ6IDEwMCU7CgltYXJnaW46IDAKfQoubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1jb250ZW50IHsKCWhlaWdodDogMTAwJTsKCWJvcmRlcjogMDsKCWJvcmRlci1yYWRpdXM6IDAKfQoubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1oZWFkZXIgewoJYm9yZGVyLXJhZGl1czogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWJvZHkgewoJb3ZlcmZsb3cteTogYXV0bwp9Ci5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWZvb3RlciB7Cglib3JkZXItcmFkaXVzOiAwCn0KfQpAbWVkaWEgKG1heC13aWR0aDoxMzk5Ljk4cHgpIHsKLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gewoJd2lkdGg6IDEwMHZ3OwoJbWF4LXdpZHRoOiBub25lOwoJaGVpZ2h0OiAxMDAlOwoJbWFyZ2luOiAwCn0KLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWNvbnRlbnQgewoJaGVpZ2h0OiAxMDAlOwoJYm9yZGVyOiAwOwoJYm9yZGVyLXJhZGl1czogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIC5tb2RhbC1oZWFkZXIgewoJYm9yZGVyLXJhZGl1czogMAp9Ci5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIC5tb2RhbC1ib2R5IHsKCW92ZXJmbG93LXk6IGF1dG8KfQoubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtZm9vdGVyIHsKCWJvcmRlci1yYWRpdXM6IDAKfQp9Ci50b29sdGlwIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXotaW5kZXg6IDEwODA7CglkaXNwbGF5OiBibG9jazsKCW1hcmdpbjogMDsKCWZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpOwoJZm9udC1zdHlsZTogbm9ybWFsOwoJZm9udC13ZWlnaHQ6IDQwMDsKCWxpbmUtaGVpZ2h0OiAxLjU7Cgl0ZXh0LWFsaWduOiBsZWZ0OwoJdGV4dC1hbGlnbjogc3RhcnQ7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmU7Cgl0ZXh0LXNoYWRvdzogbm9uZTsKCXRleHQtdHJhbnNmb3JtOiBub25lOwoJbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsKCXdvcmQtYnJlYWs6IG5vcm1hbDsKCXdvcmQtc3BhY2luZzogbm9ybWFsOwoJd2hpdGUtc3BhY2U6IG5vcm1hbDsKCWxpbmUtYnJlYWs6IGF1dG87CmZvbnQtc2l6ZTouODc1cmVtOwoJd29yZC13cmFwOiBicmVhay13b3JkOwoJb3BhY2l0eTogMAp9Ci50b29sdGlwLnNob3cgewoJb3BhY2l0eTogLjkKfQoudG9vbHRpcCAudG9vbHRpcC1hcnJvdyB7Cglwb3NpdGlvbjogYWJzb2x1dGU7CglkaXNwbGF5OiBibG9jazsKd2lkdGg6LjhyZW07CmhlaWdodDouNHJlbQp9Ci50b29sdGlwIC50b29sdGlwLWFycm93OjpiZWZvcmUgewoJcG9zaXRpb246IGFic29sdXRlOwoJY29udGVudDogIiI7Cglib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyLXN0eWxlOiBzb2xpZAp9Ci5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdLCAuYnMtdG9vbHRpcC10b3AgewpwYWRkaW5nOi40cmVtIDAKfQouYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93IHsKCWJvdHRvbTogMAp9Ci5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdIC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHsKCXRvcDogLTFweDsKYm9yZGVyLXdpZHRoOi40cmVtIC40cmVtIDA7Cglib3JkZXItdG9wLWNvbG9yOiAjMDAwCn0KLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSwgLmJzLXRvb2x0aXAtZW5kIHsKcGFkZGluZzowIC40cmVtCn0KLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93IHsKCWxlZnQ6IDA7CndpZHRoOi40cmVtOwpoZWlnaHQ6LjhyZW0KfQouYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHsKCXJpZ2h0OiAtMXB4Owpib3JkZXItd2lkdGg6LjRyZW0gLjRyZW0gLjRyZW0gMDsKCWJvcmRlci1yaWdodC1jb2xvcjogIzAwMAp9Ci5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dLCAuYnMtdG9vbHRpcC1ib3R0b20gewpwYWRkaW5nOi40cmVtIDAKfQouYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93IHsKCXRvcDogMAp9Ci5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHsKCWJvdHRvbTogLTFweDsKYm9yZGVyLXdpZHRoOjAgLjRyZW0gLjRyZW07Cglib3JkZXItYm90dG9tLWNvbG9yOiAjMDAwCn0KLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdLCAuYnMtdG9vbHRpcC1zdGFydCB7CnBhZGRpbmc6MCAuNHJlbQp9Ci5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3cgewoJcmlnaHQ6IDA7CndpZHRoOi40cmVtOwpoZWlnaHQ6LjhyZW0KfQouYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7CglsZWZ0OiAtMXB4Owpib3JkZXItd2lkdGg6LjRyZW0gMCAuNHJlbSAuNHJlbTsKCWJvcmRlci1sZWZ0LWNvbG9yOiAjMDAwCn0KLnRvb2x0aXAtaW5uZXIgewoJbWF4LXdpZHRoOiAyMDBweDsKcGFkZGluZzouMjVyZW0gLjVyZW07Cgljb2xvcjogI2ZmZjsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWJhY2tncm91bmQtY29sb3I6ICMwMDA7CmJvcmRlci1yYWRpdXM6LjI1cmVtCn0KLnBvcG92ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAwOwoJbGVmdDogMDsKCXotaW5kZXg6IDEwNzA7CglkaXNwbGF5OiBibG9jazsKCW1heC13aWR0aDogMjc2cHg7Cglmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1zYW5zLXNlcmlmKTsKCWZvbnQtc3R5bGU6IG5vcm1hbDsKCWZvbnQtd2VpZ2h0OiA0MDA7CglsaW5lLWhlaWdodDogMS41OwoJdGV4dC1hbGlnbjogbGVmdDsKCXRleHQtYWxpZ246IHN0YXJ0OwoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwoJdGV4dC1zaGFkb3c6IG5vbmU7Cgl0ZXh0LXRyYW5zZm9ybTogbm9uZTsKCWxldHRlci1zcGFjaW5nOiBub3JtYWw7Cgl3b3JkLWJyZWFrOiBub3JtYWw7Cgl3b3JkLXNwYWNpbmc6IG5vcm1hbDsKCXdoaXRlLXNwYWNlOiBub3JtYWw7CglsaW5lLWJyZWFrOiBhdXRvOwpmb250LXNpemU6Ljg3NXJlbTsKCXdvcmQtd3JhcDogYnJlYWstd29yZDsKCWJhY2tncm91bmQtY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OwoJYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMik7CmJvcmRlci1yYWRpdXM6LjNyZW0KfQoucG9wb3ZlciAucG9wb3Zlci1hcnJvdyB7Cglwb3NpdGlvbjogYWJzb2x1dGU7CglkaXNwbGF5OiBibG9jazsKCXdpZHRoOiAxcmVtOwpoZWlnaHQ6LjVyZW0KfQoucG9wb3ZlciAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsIC5wb3BvdmVyIC5wb3BvdmVyLWFycm93OjpiZWZvcmUgewoJcG9zaXRpb246IGFic29sdXRlOwoJZGlzcGxheTogYmxvY2s7Cgljb250ZW50OiAiIjsKCWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7Cglib3JkZXItc3R5bGU6IHNvbGlkCn0KLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0+LnBvcG92ZXItYXJyb3csIC5icy1wb3BvdmVyLXRvcD4ucG9wb3Zlci1hcnJvdyB7CmJvdHRvbTpjYWxjKC0uNXJlbSAtIDFweCkKfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXT4ucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci10b3A+LnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7Cglib3R0b206IDA7CmJvcmRlci13aWR0aDouNXJlbSAuNXJlbSAwOwoJYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgwLDAsMCwuMjUpCn0KLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0+LnBvcG92ZXItYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci10b3A+LnBvcG92ZXItYXJyb3c6OmFmdGVyIHsKCWJvdHRvbTogMXB4Owpib3JkZXItd2lkdGg6LjVyZW0gLjVyZW0gMDsKCWJvcmRlci10b3AtY29sb3I6ICNmZmYKfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdPi5wb3BvdmVyLWFycm93LCAuYnMtcG9wb3Zlci1lbmQ+LnBvcG92ZXItYXJyb3cgewpsZWZ0OmNhbGMoLS41cmVtIC0gMXB4KTsKd2lkdGg6LjVyZW07CgloZWlnaHQ6IDFyZW0KfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdPi5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWVuZD4ucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHsKCWxlZnQ6IDA7CmJvcmRlci13aWR0aDouNXJlbSAuNXJlbSAuNXJlbSAwOwoJYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLC4yNSkKfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdPi5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItZW5kPi5wb3BvdmVyLWFycm93OjphZnRlciB7CglsZWZ0OiAxcHg7CmJvcmRlci13aWR0aDouNXJlbSAuNXJlbSAuNXJlbSAwOwoJYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmCn0KLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0+LnBvcG92ZXItYXJyb3csIC5icy1wb3BvdmVyLWJvdHRvbT4ucG9wb3Zlci1hcnJvdyB7CnRvcDpjYWxjKC0uNXJlbSAtIDFweCkKfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXT4ucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1ib3R0b20+LnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7Cgl0b3A6IDA7CmJvcmRlci13aWR0aDowIC41cmVtIC41cmVtIC41cmVtOwoJYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLDAsMCwuMjUpCn0KLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0+LnBvcG92ZXItYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1ib3R0b20+LnBvcG92ZXItYXJyb3c6OmFmdGVyIHsKCXRvcDogMXB4Owpib3JkZXItd2lkdGg6MCAuNXJlbSAuNXJlbSAuNXJlbTsKCWJvcmRlci1ib3R0b20tY29sb3I6ICNmZmYKfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSwgLmJzLXBvcG92ZXItYm90dG9tIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogMDsKCWxlZnQ6IDUwJTsKCWRpc3BsYXk6IGJsb2NrOwoJd2lkdGg6IDFyZW07Cm1hcmdpbi1sZWZ0Oi0uNXJlbTsKCWNvbnRlbnQ6ICIiOwoJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjAKfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0+LnBvcG92ZXItYXJyb3csIC5icy1wb3BvdmVyLXN0YXJ0Pi5wb3BvdmVyLWFycm93IHsKcmlnaHQ6Y2FsYygtLjVyZW0gLSAxcHgpOwp3aWR0aDouNXJlbTsKCWhlaWdodDogMXJlbQp9Ci5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XT4ucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1zdGFydD4ucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHsKCXJpZ2h0OiAwOwpib3JkZXItd2lkdGg6LjVyZW0gMCAuNXJlbSAuNXJlbTsKCWJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsMCwwLC4yNSkKfQouYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0+LnBvcG92ZXItYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1zdGFydD4ucG9wb3Zlci1hcnJvdzo6YWZ0ZXIgewoJcmlnaHQ6IDFweDsKYm9yZGVyLXdpZHRoOi41cmVtIDAgLjVyZW0gLjVyZW07Cglib3JkZXItbGVmdC1jb2xvcjogI2ZmZgp9Ci5wb3BvdmVyLWhlYWRlciB7CnBhZGRpbmc6LjVyZW0gMXJlbTsKCW1hcmdpbi1ib3R0b206IDA7Cglmb250LXNpemU6IDFyZW07CgliYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOwoJYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpOwpib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpOwpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czpjYWxjKC4zcmVtIC0gMXB4KQp9Ci5wb3BvdmVyLWhlYWRlcjplbXB0eSB7CglkaXNwbGF5OiBub25lCn0KLnBvcG92ZXItYm9keSB7CglwYWRkaW5nOiAxcmVtIDFyZW07Cgljb2xvcjogIzIxMjUyOQp9Ci5jYXJvdXNlbCB7Cglwb3NpdGlvbjogcmVsYXRpdmUKfQouY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7Cgl0b3VjaC1hY3Rpb246IHBhbi15Cn0KLmNhcm91c2VsLWlubmVyIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXdpZHRoOiAxMDAlOwoJb3ZlcmZsb3c6IGhpZGRlbgp9Ci5jYXJvdXNlbC1pbm5lcjo6YWZ0ZXIgewoJZGlzcGxheTogYmxvY2s7CgljbGVhcjogYm90aDsKCWNvbnRlbnQ6ICIiCn0KLmNhcm91c2VsLWl0ZW0gewoJcG9zaXRpb246IHJlbGF0aXZlOwoJZGlzcGxheTogbm9uZTsKCWZsb2F0OiBsZWZ0OwoJd2lkdGg6IDEwMCU7CgltYXJnaW4tcmlnaHQ6IC0xMDAlOwoJLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47CgliYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47Cgl0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjZzIGVhc2UtaW4tb3V0Cn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewouY2Fyb3VzZWwtaXRlbSB7Cgl0cmFuc2l0aW9uOiBub25lCn0KfQouY2Fyb3VzZWwtaXRlbS1uZXh0LCAuY2Fyb3VzZWwtaXRlbS1wcmV2LCAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUgewoJZGlzcGxheTogYmxvY2sKfQouYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kLCAuY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCkgewoJdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpCn0KLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LCAuY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpIHsKCXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkKfQouY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbSB7CglvcGFjaXR5OiAwOwoJdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsKCXRyYW5zZm9ybTogbm9uZQp9Ci5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCwgLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZCwgLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlIHsKCXotaW5kZXg6IDE7CglvcGFjaXR5OiAxCn0KLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCwgLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHsKCXotaW5kZXg6IDA7CglvcGFjaXR5OiAwOwoJdHJhbnNpdGlvbjogb3BhY2l0eSAwcyAuNnMKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQsIC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCB7Cgl0cmFuc2l0aW9uOiBub25lCn0KfQouY2Fyb3VzZWwtY29udHJvbC1uZXh0LCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogMDsKCWJvdHRvbTogMDsKCXotaW5kZXg6IDE7CglkaXNwbGF5OiBmbGV4OwoJYWxpZ24taXRlbXM6IGNlbnRlcjsKCWp1c3RpZnktY29udGVudDogY2VudGVyOwoJd2lkdGg6IDE1JTsKCXBhZGRpbmc6IDA7Cgljb2xvcjogI2ZmZjsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWJhY2tncm91bmQ6IDAgMDsKCWJvcmRlcjogMDsKCW9wYWNpdHk6IC41OwoJdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2UKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5jYXJvdXNlbC1jb250cm9sLW5leHQsIC5jYXJvdXNlbC1jb250cm9sLXByZXYgewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cywgLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpob3ZlciwgLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cywgLmNhcm91c2VsLWNvbnRyb2wtcHJldjpob3ZlciB7Cgljb2xvcjogI2ZmZjsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKCW91dGxpbmU6IDA7CglvcGFjaXR5OiAuOQp9Ci5jYXJvdXNlbC1jb250cm9sLXByZXYgewoJbGVmdDogMAp9Ci5jYXJvdXNlbC1jb250cm9sLW5leHQgewoJcmlnaHQ6IDAKfQouY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24sIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cgl3aWR0aDogMnJlbTsKCWhlaWdodDogMnJlbTsKCWJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7CgliYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7CgliYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJQp9Ci5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyM2ZmZiclM2UlM2NwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvJTNlJTNjL3N2ZyUzZSIpCn0KLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzZmZmJyUzZSUzY3BhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZSIpCn0KLmNhcm91c2VsLWluZGljYXRvcnMgewoJcG9zaXRpb246IGFic29sdXRlOwoJcmlnaHQ6IDA7Cglib3R0b206IDA7CglsZWZ0OiAwOwoJei1pbmRleDogMjsKCWRpc3BsYXk6IGZsZXg7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKCXBhZGRpbmc6IDA7CgltYXJnaW4tcmlnaHQ6IDE1JTsKCW1hcmdpbi1ib3R0b206IDFyZW07CgltYXJnaW4tbGVmdDogMTUlOwoJbGlzdC1zdHlsZTogbm9uZQp9Ci5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0gewoJYm94LXNpemluZzogY29udGVudC1ib3g7CglmbGV4OiAwIDEgYXV0bzsKCXdpZHRoOiAzMHB4OwoJaGVpZ2h0OiAzcHg7CglwYWRkaW5nOiAwOwoJbWFyZ2luLXJpZ2h0OiAzcHg7CgltYXJnaW4tbGVmdDogM3B4OwoJdGV4dC1pbmRlbnQ6IC05OTlweDsKCWN1cnNvcjogcG9pbnRlcjsKCWJhY2tncm91bmQtY29sb3I6ICNmZmY7CgliYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OwoJYm9yZGVyOiAwOwoJYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDsKCWJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7CglvcGFjaXR5OiAuNTsKCXRyYW5zaXRpb246IG9wYWNpdHkgLjZzIGVhc2UKfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0gewoJdHJhbnNpdGlvbjogbm9uZQp9Cn0KLmNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7CglvcGFjaXR5OiAxCn0KLmNhcm91c2VsLWNhcHRpb24gewoJcG9zaXRpb246IGFic29sdXRlOwoJcmlnaHQ6IDE1JTsKCWJvdHRvbTogMS4yNXJlbTsKCWxlZnQ6IDE1JTsKCXBhZGRpbmctdG9wOiAxLjI1cmVtOwoJcGFkZGluZy1ib3R0b206IDEuMjVyZW07Cgljb2xvcjogI2ZmZjsKCXRleHQtYWxpZ246IGNlbnRlcgp9Ci5jYXJvdXNlbC1kYXJrIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiwgLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHsKCWZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApCn0KLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMDAwCn0KLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNhcHRpb24gewoJY29sb3I6ICMwMDAKfQpALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIgewp0byB7CnRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKQp9Cn0KQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7CnRvIHsKdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpCn0KfQouc3Bpbm5lci1ib3JkZXIgewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJd2lkdGg6IDJyZW07CgloZWlnaHQ6IDJyZW07Cgl2ZXJ0aWNhbC1hbGlnbjogLS4xMjVlbTsKCWJvcmRlcjogLjI1ZW0gc29saWQgY3VycmVudENvbG9yOwoJYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsKCWJvcmRlci1yYWRpdXM6IDUwJTsKCS13ZWJraXQtYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjsKCWFuaW1hdGlvbjogLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXIKfQouc3Bpbm5lci1ib3JkZXItc20gewoJd2lkdGg6IDFyZW07CgloZWlnaHQ6IDFyZW07Cglib3JkZXItd2lkdGg6IC4yZW0KfQpALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbm5lci1ncm93IHsKMCUgewp0cmFuc2Zvcm06c2NhbGUoMCkKfQo1MCUgewpvcGFjaXR5OjE7CnRyYW5zZm9ybTpub25lCn0KfQpAa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7CjAlIHsKdHJhbnNmb3JtOnNjYWxlKDApCn0KNTAlIHsKb3BhY2l0eToxOwp0cmFuc2Zvcm06bm9uZQp9Cn0KLnNwaW5uZXItZ3JvdyB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cgl3aWR0aDogMnJlbTsKCWhlaWdodDogMnJlbTsKCXZlcnRpY2FsLWFsaWduOiAtLjEyNWVtOwoJYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJb3BhY2l0eTogMDsKCS13ZWJraXQtYW5pbWF0aW9uOiAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7CglhbmltYXRpb246IC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3Jvdwp9Ci5zcGlubmVyLWdyb3ctc20gewoJd2lkdGg6IDFyZW07CgloZWlnaHQ6IDFyZW0KfQpAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKSB7Ci5zcGlubmVyLWJvcmRlciwgLnNwaW5uZXItZ3JvdyB7Cgktd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMS41czsKCWFuaW1hdGlvbi1kdXJhdGlvbjogMS41cwp9Cn0KLm9mZmNhbnZhcyB7Cglwb3NpdGlvbjogZml4ZWQ7Cglib3R0b206IDA7Cgl6LWluZGV4OiAxMDQ1OwoJZGlzcGxheTogZmxleDsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CgltYXgtd2lkdGg6IDEwMCU7Cgl2aXNpYmlsaXR5OiBoaWRkZW47CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKCW91dGxpbmU6IDA7Cgl0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2UtaW4tb3V0Cn0KQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSkgewoub2ZmY2FudmFzIHsKCXRyYW5zaXRpb246IG5vbmUKfQp9Ci5vZmZjYW52YXMtYmFja2Ryb3AgewoJcG9zaXRpb246IGZpeGVkOwoJdG9wOiAwOwoJbGVmdDogMDsKCXotaW5kZXg6IDEwNDA7Cgl3aWR0aDogMTAwdnc7CgloZWlnaHQ6IDEwMHZoOwoJYmFja2dyb3VuZC1jb2xvcjogIzAwMAp9Ci5vZmZjYW52YXMtYmFja2Ryb3AuZmFkZSB7CglvcGFjaXR5OiAwCn0KLm9mZmNhbnZhcy1iYWNrZHJvcC5zaG93IHsKCW9wYWNpdHk6IC41Cn0KLm9mZmNhbnZhcy1oZWFkZXIgewoJZGlzcGxheTogZmxleDsKCWFsaWduLWl0ZW1zOiBjZW50ZXI7CglqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CglwYWRkaW5nOiAxcmVtIDFyZW0KfQoub2ZmY2FudmFzLWhlYWRlciAuYnRuLWNsb3NlIHsKcGFkZGluZzouNXJlbSAuNXJlbTsKbWFyZ2luLXRvcDotLjVyZW07Cm1hcmdpbi1yaWdodDotLjVyZW07Cm1hcmdpbi1ib3R0b206LS41cmVtCn0KLm9mZmNhbnZhcy10aXRsZSB7CgltYXJnaW4tYm90dG9tOiAwOwoJbGluZS1oZWlnaHQ6IDEuNQp9Ci5vZmZjYW52YXMtYm9keSB7CglmbGV4LWdyb3c6IDE7CglwYWRkaW5nOiAxcmVtIDFyZW07CglvdmVyZmxvdy15OiBhdXRvCn0KLm9mZmNhbnZhcy1zdGFydCB7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDQwMHB4OwoJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLDAsMCwuMik7Cgl0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpCn0KLm9mZmNhbnZhcy1lbmQgewoJdG9wOiAwOwoJcmlnaHQ6IDA7Cgl3aWR0aDogNDAwcHg7Cglib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpCn0KLm9mZmNhbnZhcy10b3AgewoJdG9wOiAwOwoJcmlnaHQ6IDA7CglsZWZ0OiAwOwoJaGVpZ2h0OiAzMHZoOwoJbWF4LWhlaWdodDogMTAwJTsKCWJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4yKTsKCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSkKfQoub2ZmY2FudmFzLWJvdHRvbSB7CglyaWdodDogMDsKCWxlZnQ6IDA7CgloZWlnaHQ6IDMwdmg7CgltYXgtaGVpZ2h0OiAxMDAlOwoJYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpOwoJdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpCn0KLm9mZmNhbnZhcy5zaG93IHsKCXRyYW5zZm9ybTogbm9uZQp9Ci5wbGFjZWhvbGRlciB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CgltaW4taGVpZ2h0OiAxZW07Cgl2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwoJY3Vyc29yOiB3YWl0OwoJYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yOwoJb3BhY2l0eTogLjUKfQoucGxhY2Vob2xkZXIuYnRuOjpiZWZvcmUgewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJY29udGVudDogIiIKfQoucGxhY2Vob2xkZXIteHMgewoJbWluLWhlaWdodDogLjZlbQp9Ci5wbGFjZWhvbGRlci1zbSB7CgltaW4taGVpZ2h0OiAuOGVtCn0KLnBsYWNlaG9sZGVyLWxnIHsKCW1pbi1oZWlnaHQ6IDEuMmVtCn0KLnBsYWNlaG9sZGVyLWdsb3cgLnBsYWNlaG9sZGVyIHsKCS13ZWJraXQtYW5pbWF0aW9uOiBwbGFjZWhvbGRlci1nbG93IDJzIGVhc2UtaW4tb3V0IGluZmluaXRlOwoJYW5pbWF0aW9uOiBwbGFjZWhvbGRlci1nbG93IDJzIGVhc2UtaW4tb3V0IGluZmluaXRlCn0KQC13ZWJraXQta2V5ZnJhbWVzIHBsYWNlaG9sZGVyLWdsb3cgewo1MCUgewpvcGFjaXR5Oi4yCn0KfQpAa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLWdsb3cgewo1MCUgewpvcGFjaXR5Oi4yCn0KfQoucGxhY2Vob2xkZXItd2F2ZSB7Cgktd2Via2l0LW1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICMwMDAgNTUlLCByZ2JhKDAsMCwwLDAuOCkgNzUlLCAjMDAwIDk1JSk7CgltYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTMwZGVnLCAjMDAwIDU1JSwgcmdiYSgwLDAsMCwwLjgpIDc1JSwgIzAwMCA5NSUpOwoJLXdlYmtpdC1tYXNrLXNpemU6IDIwMCUgMTAwJTsKCW1hc2stc2l6ZTogMjAwJSAxMDAlOwoJLXdlYmtpdC1hbmltYXRpb246IHBsYWNlaG9sZGVyLXdhdmUgMnMgbGluZWFyIGluZmluaXRlOwoJYW5pbWF0aW9uOiBwbGFjZWhvbGRlci13YXZlIDJzIGxpbmVhciBpbmZpbml0ZQp9CkAtd2Via2l0LWtleWZyYW1lcyBwbGFjZWhvbGRlci13YXZlIHsKMTAwJSB7Ci13ZWJraXQtbWFzay1wb3NpdGlvbjotMjAwJSAwJTsKbWFzay1wb3NpdGlvbjotMjAwJSAwJQp9Cn0KQGtleWZyYW1lcyBwbGFjZWhvbGRlci13YXZlIHsKMTAwJSB7Ci13ZWJraXQtbWFzay1wb3NpdGlvbjotMjAwJSAwJTsKbWFzay1wb3NpdGlvbjotMjAwJSAwJQp9Cn0KLmNsZWFyZml4OjphZnRlciB7CglkaXNwbGF5OiBibG9jazsKCWNsZWFyOiBib3RoOwoJY29udGVudDogIiIKfQoubGluay1wcmltYXJ5IHsKCWNvbG9yOiAjMGQ2ZWZkCn0KLmxpbmstcHJpbWFyeTpmb2N1cywgLmxpbmstcHJpbWFyeTpob3ZlciB7Cgljb2xvcjogIzBhNThjYQp9Ci5saW5rLXNlY29uZGFyeSB7Cgljb2xvcjogIzZjNzU3ZAp9Ci5saW5rLXNlY29uZGFyeTpmb2N1cywgLmxpbmstc2Vjb25kYXJ5OmhvdmVyIHsKCWNvbG9yOiAjNTY1ZTY0Cn0KLmxpbmstc3VjY2VzcyB7Cgljb2xvcjogIzE5ODc1NAp9Ci5saW5rLXN1Y2Nlc3M6Zm9jdXMsIC5saW5rLXN1Y2Nlc3M6aG92ZXIgewoJY29sb3I6ICMxNDZjNDMKfQoubGluay1pbmZvIHsKCWNvbG9yOiAjMGRjYWYwCn0KLmxpbmstaW5mbzpmb2N1cywgLmxpbmstaW5mbzpob3ZlciB7Cgljb2xvcjogIzNkZDVmMwp9Ci5saW5rLXdhcm5pbmcgewoJY29sb3I6ICNmZmMxMDcKfQoubGluay13YXJuaW5nOmZvY3VzLCAubGluay13YXJuaW5nOmhvdmVyIHsKCWNvbG9yOiAjZmZjZDM5Cn0KLmxpbmstZGFuZ2VyIHsKCWNvbG9yOiAjZGMzNTQ1Cn0KLmxpbmstZGFuZ2VyOmZvY3VzLCAubGluay1kYW5nZXI6aG92ZXIgewoJY29sb3I6ICNiMDJhMzcKfQoubGluay1saWdodCB7Cgljb2xvcjogI2Y4ZjlmYQp9Ci5saW5rLWxpZ2h0OmZvY3VzLCAubGluay1saWdodDpob3ZlciB7Cgljb2xvcjogI2Y5ZmFmYgp9Ci5saW5rLWRhcmsgewoJY29sb3I6ICMyMTI1MjkKfQoubGluay1kYXJrOmZvY3VzLCAubGluay1kYXJrOmhvdmVyIHsKCWNvbG9yOiAjMWExZTIxCn0KLnJhdGlvIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXdpZHRoOiAxMDAlCn0KLnJhdGlvOjpiZWZvcmUgewoJZGlzcGxheTogYmxvY2s7CglwYWRkaW5nLXRvcDogdmFyKC0tYnMtYXNwZWN0LXJhdGlvKTsKCWNvbnRlbnQ6ICIiCn0KLnJhdGlvPiogewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAwOwoJbGVmdDogMDsKCXdpZHRoOiAxMDAlOwoJaGVpZ2h0OiAxMDAlCn0KLnJhdGlvLTF4MSB7Ci0tYnMtYXNwZWN0LXJhdGlvOjEwMCUKfQoucmF0aW8tNHgzIHsKLS1icy1hc3BlY3QtcmF0aW86Y2FsYygzIC8gNCAqIDEwMCUpCn0KLnJhdGlvLTE2eDkgewotLWJzLWFzcGVjdC1yYXRpbzpjYWxjKDkgLyAxNiAqIDEwMCUpCn0KLnJhdGlvLTIxeDkgewotLWJzLWFzcGVjdC1yYXRpbzpjYWxjKDkgLyAyMSAqIDEwMCUpCn0KLmZpeGVkLXRvcCB7Cglwb3NpdGlvbjogZml4ZWQ7Cgl0b3A6IDA7CglyaWdodDogMDsKCWxlZnQ6IDA7Cgl6LWluZGV4OiAxMDMwOwoJYmFja2dyb3VuZC1jb2xvcjogIzVlYTA1ODsKCXBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsKfQoKLmZpeGVkLXRvcCAgbGk6Zmlyc3QtY2hpbGQgLm5hdi1saW5rOmhvdmVyLCAuZml4ZWQtdG9wICBsaTpmaXJzdC1jaGlsZCAubmF2LWxpbms6Zm9jdXMgewoJYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4OwoJYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4Owp9CgouZml4ZWQtdG9wICBsaTpsYXN0LWNoaWxkIC5uYXYtbGluazpob3ZlciwgLmZpeGVkLXRvcCAgbGk6bGFzdC1jaGlsZCAubmF2LWxpbms6Zm9jdXMgewoJYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDsKCWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7Cn0KLmZpeGVkLXRvcCAubmF2YmFyLW5hdnsgYm94LXNoYWRvdzpub25lO30KLmZpeGVkLWJvdHRvbSB7Cglwb3NpdGlvbjogZml4ZWQ7CglyaWdodDogMDsKCWJvdHRvbTogMDsKCWxlZnQ6IDA7Cgl6LWluZGV4OiAxMDMwCn0KLnN0aWNreS10b3AgewoJcG9zaXRpb246IC13ZWJraXQtc3RpY2t5OwoJcG9zaXRpb246IHN0aWNreTsKCXRvcDogMDsKCXotaW5kZXg6IDEwMjAKfQpAbWVkaWEgKG1pbi13aWR0aDo1NzZweCkgewouc3RpY2t5LXNtLXRvcCB7Cglwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7Cglwb3NpdGlvbjogc3RpY2t5OwoJdG9wOiAwOwoJei1pbmRleDogMTAyMAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKLnN0aWNreS1tZC10b3AgewoJcG9zaXRpb246IC13ZWJraXQtc3RpY2t5OwoJcG9zaXRpb246IHN0aWNreTsKCXRvcDogMDsKCXotaW5kZXg6IDEwMjAKfQp9CkBtZWRpYSAobWluLXdpZHRoOjk5MnB4KSB7Ci5zdGlja3ktbGctdG9wIHsKCXBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTsKCXBvc2l0aW9uOiBzdGlja3k7Cgl0b3A6IDA7Cgl6LWluZGV4OiAxMDIwCn0KfQpAbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpIHsKLnN0aWNreS14bC10b3AgewoJcG9zaXRpb246IC13ZWJraXQtc3RpY2t5OwoJcG9zaXRpb246IHN0aWNreTsKCXRvcDogMDsKCXotaW5kZXg6IDEwMjAKfQp9CkBtZWRpYSAobWluLXdpZHRoOjE0MDBweCkgewouc3RpY2t5LXh4bC10b3AgewoJcG9zaXRpb246IC13ZWJraXQtc3RpY2t5OwoJcG9zaXRpb246IHN0aWNreTsKCXRvcDogMDsKCXotaW5kZXg6IDEwMjAKfQp9Ci5oc3RhY2sgewoJZGlzcGxheTogZmxleDsKCWZsZXgtZGlyZWN0aW9uOiByb3c7CglhbGlnbi1pdGVtczogY2VudGVyOwoJYWxpZ24tc2VsZjogc3RyZXRjaAp9Ci52c3RhY2sgewoJZGlzcGxheTogZmxleDsKCWZsZXg6IDEgMSBhdXRvOwoJZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKCWFsaWduLXNlbGY6IHN0cmV0Y2gKfQoudmlzdWFsbHktaGlkZGVuLCAudmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikgewoJcG9zaXRpb246IGFic29sdXRlIWltcG9ydGFudDsKCXdpZHRoOiAxcHghaW1wb3J0YW50OwoJaGVpZ2h0OiAxcHghaW1wb3J0YW50OwoJcGFkZGluZzogMCFpbXBvcnRhbnQ7CgltYXJnaW46IC0xcHghaW1wb3J0YW50OwoJb3ZlcmZsb3c6IGhpZGRlbiFpbXBvcnRhbnQ7CgljbGlwOiByZWN0KDAsMCwwLDApIWltcG9ydGFudDsKCXdoaXRlLXNwYWNlOiBub3dyYXAhaW1wb3J0YW50OwoJYm9yZGVyOiAwIWltcG9ydGFudAp9Ci5zdHJldGNoZWQtbGluazo6YWZ0ZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAwOwoJcmlnaHQ6IDA7Cglib3R0b206IDA7CglsZWZ0OiAwOwoJei1pbmRleDogMTsKCWNvbnRlbnQ6ICIiCn0KLnRleHQtdHJ1bmNhdGUgewoJb3ZlcmZsb3c6IGhpZGRlbjsKCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJd2hpdGUtc3BhY2U6IG5vd3JhcAp9Ci52ciB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CglhbGlnbi1zZWxmOiBzdHJldGNoOwoJd2lkdGg6IDFweDsKCW1pbi1oZWlnaHQ6IDFlbTsKCWJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjsKCW9wYWNpdHk6IC4yNQp9Ci5hbGlnbi1iYXNlbGluZSB7Cgl2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUhaW1wb3J0YW50Cn0KLmFsaWduLXRvcCB7Cgl2ZXJ0aWNhbC1hbGlnbjogdG9wIWltcG9ydGFudAp9Ci5hbGlnbi1taWRkbGUgewoJdmVydGljYWwtYWxpZ246IG1pZGRsZSFpbXBvcnRhbnQKfQouYWxpZ24tYm90dG9tIHsKCXZlcnRpY2FsLWFsaWduOiBib3R0b20haW1wb3J0YW50Cn0KLmFsaWduLXRleHQtYm90dG9tIHsKCXZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSFpbXBvcnRhbnQKfQouYWxpZ24tdGV4dC10b3AgewoJdmVydGljYWwtYWxpZ246IHRleHQtdG9wIWltcG9ydGFudAp9Ci5mbG9hdC1zdGFydCB7CglmbG9hdDogbGVmdCFpbXBvcnRhbnQKfQouZmxvYXQtZW5kIHsKCWZsb2F0OiByaWdodCFpbXBvcnRhbnQKfQouZmxvYXQtbm9uZSB7CglmbG9hdDogbm9uZSFpbXBvcnRhbnQKfQoub3BhY2l0eS0wIHsKCW9wYWNpdHk6IDAhaW1wb3J0YW50Cn0KLm9wYWNpdHktMjUgewoJb3BhY2l0eTogLjI1IWltcG9ydGFudAp9Ci5vcGFjaXR5LTUwIHsKCW9wYWNpdHk6IC41IWltcG9ydGFudAp9Ci5vcGFjaXR5LTc1IHsKCW9wYWNpdHk6IC43NSFpbXBvcnRhbnQKfQoub3BhY2l0eS0xMDAgewoJb3BhY2l0eTogMSFpbXBvcnRhbnQKfQoub3ZlcmZsb3ctYXV0byB7CglvdmVyZmxvdzogYXV0byFpbXBvcnRhbnQKfQoub3ZlcmZsb3ctaGlkZGVuIHsKCW92ZXJmbG93OiBoaWRkZW4haW1wb3J0YW50Cn0KLm92ZXJmbG93LXZpc2libGUgewoJb3ZlcmZsb3c6IHZpc2libGUhaW1wb3J0YW50Cn0KLm92ZXJmbG93LXNjcm9sbCB7CglvdmVyZmxvdzogc2Nyb2xsIWltcG9ydGFudAp9Ci5kLWlubGluZSB7CglkaXNwbGF5OiBpbmxpbmUhaW1wb3J0YW50Cn0KLmQtaW5saW5lLWJsb2NrIHsKCWRpc3BsYXk6IGlubGluZS1ibG9jayFpbXBvcnRhbnQKfQouZC1ibG9jayB7CglkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQKfQouZC1ncmlkIHsKCWRpc3BsYXk6IGdyaWQhaW1wb3J0YW50Cn0KLmQtdGFibGUgewoJZGlzcGxheTogdGFibGUhaW1wb3J0YW50Cn0KLmQtdGFibGUtcm93IHsKCWRpc3BsYXk6IHRhYmxlLXJvdyFpbXBvcnRhbnQKfQouZC10YWJsZS1jZWxsIHsKCWRpc3BsYXk6IHRhYmxlLWNlbGwhaW1wb3J0YW50Cn0KLmQtZmxleCB7CglkaXNwbGF5OiBmbGV4IWltcG9ydGFudAp9Ci5kLWlubGluZS1mbGV4IHsKCWRpc3BsYXk6IGlubGluZS1mbGV4IWltcG9ydGFudAp9Ci5kLW5vbmUgewoJZGlzcGxheTogbm9uZSFpbXBvcnRhbnQKfQouc2hhZG93IHsKYm94LXNoYWRvdzowIC41cmVtIDFyZW0gcmdiYSgwLDAsMCwuMTUpIWltcG9ydGFudAp9Ci5zaGFkb3ctc20gewpib3gtc2hhZG93OjAgLjEyNXJlbSAuMjVyZW0gcmdiYSgwLDAsMCwuMDc1KSFpbXBvcnRhbnQKfQouc2hhZG93LWxnIHsKCWJveC1zaGFkb3c6IDAgMXJlbSAzcmVtIHJnYmEoMCwwLDAsLjE3NSkhaW1wb3J0YW50Cn0KLnNoYWRvdy1ub25lIHsKCWJveC1zaGFkb3c6IG5vbmUhaW1wb3J0YW50Cn0KLnBvc2l0aW9uLXN0YXRpYyB7Cglwb3NpdGlvbjogc3RhdGljIWltcG9ydGFudAp9Ci5wb3NpdGlvbi1yZWxhdGl2ZSB7Cglwb3NpdGlvbjogcmVsYXRpdmUhaW1wb3J0YW50Cn0KLnBvc2l0aW9uLWFic29sdXRlIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZSFpbXBvcnRhbnQKfQoucG9zaXRpb24tZml4ZWQgewoJcG9zaXRpb246IGZpeGVkIWltcG9ydGFudAp9Ci5wb3NpdGlvbi1zdGlja3kgewoJcG9zaXRpb246IC13ZWJraXQtc3RpY2t5IWltcG9ydGFudDsKCXBvc2l0aW9uOiBzdGlja3khaW1wb3J0YW50Cn0KLnRvcC0wIHsKCXRvcDogMCFpbXBvcnRhbnQKfQoudG9wLTUwIHsKCXRvcDogNTAlIWltcG9ydGFudAp9Ci50b3AtMTAwIHsKCXRvcDogMTAwJSFpbXBvcnRhbnQKfQouYm90dG9tLTAgewoJYm90dG9tOiAwIWltcG9ydGFudAp9Ci5ib3R0b20tNTAgewoJYm90dG9tOiA1MCUhaW1wb3J0YW50Cn0KLmJvdHRvbS0xMDAgewoJYm90dG9tOiAxMDAlIWltcG9ydGFudAp9Ci5zdGFydC0wIHsKCWxlZnQ6IDAhaW1wb3J0YW50Cn0KLnN0YXJ0LTUwIHsKCWxlZnQ6IDUwJSFpbXBvcnRhbnQKfQouc3RhcnQtMTAwIHsKCWxlZnQ6IDEwMCUhaW1wb3J0YW50Cn0KLmVuZC0wIHsKCXJpZ2h0OiAwIWltcG9ydGFudAp9Ci5lbmQtNTAgewoJcmlnaHQ6IDUwJSFpbXBvcnRhbnQKfQouZW5kLTEwMCB7CglyaWdodDogMTAwJSFpbXBvcnRhbnQKfQoudHJhbnNsYXRlLW1pZGRsZSB7Cgl0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSFpbXBvcnRhbnQKfQoudHJhbnNsYXRlLW1pZGRsZS14IHsKCXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSFpbXBvcnRhbnQKfQoudHJhbnNsYXRlLW1pZGRsZS15IHsKCXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSFpbXBvcnRhbnQKfQouYm9yZGVyIHsKCWJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTYhaW1wb3J0YW50Cn0KLmJvcmRlci0wIHsKCWJvcmRlcjogMCFpbXBvcnRhbnQKfQouYm9yZGVyLXRvcCB7Cglib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNiFpbXBvcnRhbnQKfQouYm9yZGVyLXRvcC0wIHsKCWJvcmRlci10b3A6IDAhaW1wb3J0YW50Cn0KLmJvcmRlci1lbmQgewoJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RlZTJlNiFpbXBvcnRhbnQKfQouYm9yZGVyLWVuZC0wIHsKCWJvcmRlci1yaWdodDogMCFpbXBvcnRhbnQKfQouYm9yZGVyLWJvdHRvbSB7Cglib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNiFpbXBvcnRhbnQKfQouYm9yZGVyLWJvdHRvbS0wIHsKCWJvcmRlci1ib3R0b206IDAhaW1wb3J0YW50Cn0KLmJvcmRlci1zdGFydCB7Cglib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZWUyZTYhaW1wb3J0YW50Cn0KLmJvcmRlci1zdGFydC0wIHsKCWJvcmRlci1sZWZ0OiAwIWltcG9ydGFudAp9Ci5ib3JkZXItcHJpbWFyeSB7Cglib3JkZXItY29sb3I6ICMwZDZlZmQhaW1wb3J0YW50Cn0KLmJvcmRlci1zZWNvbmRhcnkgewoJYm9yZGVyLWNvbG9yOiAjNmM3NTdkIWltcG9ydGFudAp9Ci5ib3JkZXItc3VjY2VzcyB7Cglib3JkZXItY29sb3I6ICMxOTg3NTQhaW1wb3J0YW50Cn0KLmJvcmRlci1pbmZvIHsKCWJvcmRlci1jb2xvcjogIzBkY2FmMCFpbXBvcnRhbnQKfQouYm9yZGVyLXdhcm5pbmcgewoJYm9yZGVyLWNvbG9yOiAjZmZjMTA3IWltcG9ydGFudAp9Ci5ib3JkZXItZGFuZ2VyIHsKCWJvcmRlci1jb2xvcjogI2RjMzU0NSFpbXBvcnRhbnQKfQouYm9yZGVyLWxpZ2h0IHsKCWJvcmRlci1jb2xvcjogI2Y4ZjlmYSFpbXBvcnRhbnQKfQouYm9yZGVyLWRhcmsgewoJYm9yZGVyLWNvbG9yOiAjMjEyNTI5IWltcG9ydGFudAp9Ci5ib3JkZXItd2hpdGUgewoJYm9yZGVyLWNvbG9yOiAjZmZmIWltcG9ydGFudAp9Ci5ib3JkZXItMSB7Cglib3JkZXItd2lkdGg6IDFweCFpbXBvcnRhbnQKfQouYm9yZGVyLTIgewoJYm9yZGVyLXdpZHRoOiAycHghaW1wb3J0YW50Cn0KLmJvcmRlci0zIHsKCWJvcmRlci13aWR0aDogM3B4IWltcG9ydGFudAp9Ci5ib3JkZXItNCB7Cglib3JkZXItd2lkdGg6IDRweCFpbXBvcnRhbnQKfQouYm9yZGVyLTUgewoJYm9yZGVyLXdpZHRoOiA1cHghaW1wb3J0YW50Cn0KLnctMjUgewoJd2lkdGg6IDI1JSFpbXBvcnRhbnQKfQoudy01MCB7Cgl3aWR0aDogNTAlIWltcG9ydGFudAp9Ci53LTc1IHsKCXdpZHRoOiA3NSUhaW1wb3J0YW50Cn0KLnctMTAwIHsKCXdpZHRoOiAxMDAlIWltcG9ydGFudAp9Ci53LWF1dG8gewoJd2lkdGg6IGF1dG8haW1wb3J0YW50Cn0KLm13LTEwMCB7CgltYXgtd2lkdGg6IDEwMCUhaW1wb3J0YW50Cn0KLnZ3LTEwMCB7Cgl3aWR0aDogMTAwdnchaW1wb3J0YW50Cn0KLm1pbi12dy0xMDAgewoJbWluLXdpZHRoOiAxMDB2dyFpbXBvcnRhbnQKfQouaC0yNSB7CgloZWlnaHQ6IDI1JSFpbXBvcnRhbnQKfQouaC01MCB7CgloZWlnaHQ6IDUwJSFpbXBvcnRhbnQKfQouaC03NSB7CgloZWlnaHQ6IDc1JSFpbXBvcnRhbnQKfQouaC0xMDAgewoJaGVpZ2h0OiAxMDAlIWltcG9ydGFudAp9Ci5oLWF1dG8gewoJaGVpZ2h0OiBhdXRvIWltcG9ydGFudAp9Ci5taC0xMDAgewoJbWF4LWhlaWdodDogMTAwJSFpbXBvcnRhbnQKfQoudmgtMTAwIHsKCWhlaWdodDogMTAwdmghaW1wb3J0YW50Cn0KLm1pbi12aC0xMDAgewoJbWluLWhlaWdodDogMTAwdmghaW1wb3J0YW50Cn0KLmZsZXgtZmlsbCB7CglmbGV4OiAxIDEgYXV0byFpbXBvcnRhbnQKfQouZmxleC1yb3cgewoJZmxleC1kaXJlY3Rpb246IHJvdyFpbXBvcnRhbnQKfQouZmxleC1jb2x1bW4gewoJZmxleC1kaXJlY3Rpb246IGNvbHVtbiFpbXBvcnRhbnQKfQouZmxleC1yb3ctcmV2ZXJzZSB7CglmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UhaW1wb3J0YW50Cn0KLmZsZXgtY29sdW1uLXJldmVyc2UgewoJZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlIWltcG9ydGFudAp9Ci5mbGV4LWdyb3ctMCB7CglmbGV4LWdyb3c6IDAhaW1wb3J0YW50Cn0KLmZsZXgtZ3Jvdy0xIHsKCWZsZXgtZ3JvdzogMSFpbXBvcnRhbnQKfQouZmxleC1zaHJpbmstMCB7CglmbGV4LXNocmluazogMCFpbXBvcnRhbnQKfQouZmxleC1zaHJpbmstMSB7CglmbGV4LXNocmluazogMSFpbXBvcnRhbnQKfQouZmxleC13cmFwIHsKCWZsZXgtd3JhcDogd3JhcCFpbXBvcnRhbnQKfQouZmxleC1ub3dyYXAgewoJZmxleC13cmFwOiBub3dyYXAhaW1wb3J0YW50Cn0KLmZsZXgtd3JhcC1yZXZlcnNlIHsKCWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlIWltcG9ydGFudAp9Ci5nYXAtMCB7CglnYXA6IDAhaW1wb3J0YW50Cn0KLmdhcC0xIHsKZ2FwOi4yNXJlbSFpbXBvcnRhbnQKfQouZ2FwLTIgewpnYXA6LjVyZW0haW1wb3J0YW50Cn0KLmdhcC0zIHsKCWdhcDogMXJlbSFpbXBvcnRhbnQKfQouZ2FwLTQgewoJZ2FwOiAxLjVyZW0haW1wb3J0YW50Cn0KLmdhcC01IHsKCWdhcDogM3JlbSFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LXN0YXJ0IHsKCWp1c3RpZnktY29udGVudDogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LWVuZCB7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHsKCWp1c3RpZnktY29udGVudDogY2VudGVyIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7CglqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4haW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1hcm91bmQgewoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQhaW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1ldmVubHkgewoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkhaW1wb3J0YW50Cn0KLmFsaWduLWl0ZW1zLXN0YXJ0IHsKCWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1lbmQgewoJYWxpZ24taXRlbXM6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1jZW50ZXIgewoJYWxpZ24taXRlbXM6IGNlbnRlciFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMtYmFzZWxpbmUgewoJYWxpZ24taXRlbXM6IGJhc2VsaW5lIWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1zdHJldGNoIHsKCWFsaWduLWl0ZW1zOiBzdHJldGNoIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXN0YXJ0IHsKCWFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtZW5kIHsKCWFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LWNlbnRlciB7CglhbGlnbi1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtYmV0d2VlbiB7CglhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LWFyb3VuZCB7CglhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtc3RyZXRjaCB7CglhbGlnbi1jb250ZW50OiBzdHJldGNoIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLWF1dG8gewoJYWxpZ24tc2VsZjogYXV0byFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1zdGFydCB7CglhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLWVuZCB7CglhbGlnbi1zZWxmOiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1jZW50ZXIgewoJYWxpZ24tc2VsZjogY2VudGVyIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLWJhc2VsaW5lIHsKCWFsaWduLXNlbGY6IGJhc2VsaW5lIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXN0cmV0Y2ggewoJYWxpZ24tc2VsZjogc3RyZXRjaCFpbXBvcnRhbnQKfQoub3JkZXItZmlyc3QgewoJb3JkZXI6IC0xIWltcG9ydGFudAp9Ci5vcmRlci0wIHsKCW9yZGVyOiAwIWltcG9ydGFudAp9Ci5vcmRlci0xIHsKCW9yZGVyOiAxIWltcG9ydGFudAp9Ci5vcmRlci0yIHsKCW9yZGVyOiAyIWltcG9ydGFudAp9Ci5vcmRlci0zIHsKCW9yZGVyOiAzIWltcG9ydGFudAp9Ci5vcmRlci00IHsKCW9yZGVyOiA0IWltcG9ydGFudAp9Ci5vcmRlci01IHsKCW9yZGVyOiA1IWltcG9ydGFudAp9Ci5vcmRlci1sYXN0IHsKCW9yZGVyOiA2IWltcG9ydGFudAp9Ci5tLTAgewoJbWFyZ2luOiAwIWltcG9ydGFudAp9Ci5tLTEgewptYXJnaW46LjI1cmVtIWltcG9ydGFudAp9Ci5tLTIgewptYXJnaW46LjVyZW0haW1wb3J0YW50Cn0KLm0tMyB7CgltYXJnaW46IDFyZW0haW1wb3J0YW50Cn0KLm0tNCB7CgltYXJnaW46IDEuNXJlbSFpbXBvcnRhbnQKfQoubS01IHsKCW1hcmdpbjogM3JlbSFpbXBvcnRhbnQKfQoubS1hdXRvIHsKCW1hcmdpbjogYXV0byFpbXBvcnRhbnQKfQoubXgtMCB7CgltYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50Cn0KLm14LTEgewptYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudDsKbWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5teC0yIHsKbWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudDsKbWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLm14LTMgewoJbWFyZ2luLXJpZ2h0OiAxcmVtIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5teC00IHsKCW1hcmdpbi1yaWdodDogMS41cmVtIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLm14LTUgewoJbWFyZ2luLXJpZ2h0OiAzcmVtIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAzcmVtIWltcG9ydGFudAp9Ci5teC1hdXRvIHsKCW1hcmdpbi1yaWdodDogYXV0byFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogYXV0byFpbXBvcnRhbnQKfQoubXktMCB7CgltYXJnaW4tdG9wOiAwIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50Cn0KLm15LTEgewptYXJnaW4tdG9wOi4yNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudAp9Ci5teS0yIHsKbWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLm15LTMgewoJbWFyZ2luLXRvcDogMXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5teS00IHsKCW1hcmdpbi10b3A6IDEuNXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAxLjVyZW0haW1wb3J0YW50Cn0KLm15LTUgewoJbWFyZ2luLXRvcDogM3JlbSFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5teS1hdXRvIHsKCW1hcmdpbi10b3A6IGF1dG8haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogYXV0byFpbXBvcnRhbnQKfQoubXQtMCB7CgltYXJnaW4tdG9wOiAwIWltcG9ydGFudAp9Ci5tdC0xIHsKbWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50Cn0KLm10LTIgewptYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudAp9Ci5tdC0zIHsKCW1hcmdpbi10b3A6IDFyZW0haW1wb3J0YW50Cn0KLm10LTQgewoJbWFyZ2luLXRvcDogMS41cmVtIWltcG9ydGFudAp9Ci5tdC01IHsKCW1hcmdpbi10b3A6IDNyZW0haW1wb3J0YW50Cn0KLm10LWF1dG8gewoJbWFyZ2luLXRvcDogYXV0byFpbXBvcnRhbnQKfQoubWUtMCB7CgltYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50Cn0KLm1lLTEgewptYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudAp9Ci5tZS0yIHsKbWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudAp9Ci5tZS0zIHsKCW1hcmdpbi1yaWdodDogMXJlbSFpbXBvcnRhbnQKfQoubWUtNCB7CgltYXJnaW4tcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoubWUtNSB7CgltYXJnaW4tcmlnaHQ6IDNyZW0haW1wb3J0YW50Cn0KLm1lLWF1dG8gewoJbWFyZ2luLXJpZ2h0OiBhdXRvIWltcG9ydGFudAp9Ci5tYi0wIHsKCW1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50Cn0KLm1iLTEgewptYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoubWItMiB7Cm1hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLm1iLTMgewoJbWFyZ2luLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoubWItNCB7CgltYXJnaW4tYm90dG9tOiAxLjVyZW0haW1wb3J0YW50Cn0KLm1iLTUgewoJbWFyZ2luLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoubWItYXV0byB7CgltYXJnaW4tYm90dG9tOiBhdXRvIWltcG9ydGFudAp9Ci5tcy0wIHsKCW1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudAp9Ci5tcy0xIHsKbWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5tcy0yIHsKbWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLm1zLTMgewoJbWFyZ2luLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLm1zLTQgewoJbWFyZ2luLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoubXMtNSB7CgltYXJnaW4tbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoubXMtYXV0byB7CgltYXJnaW4tbGVmdDogYXV0byFpbXBvcnRhbnQKfQoucC0wIHsKCXBhZGRpbmc6IDAhaW1wb3J0YW50Cn0KLnAtMSB7CnBhZGRpbmc6LjI1cmVtIWltcG9ydGFudAp9Ci5wLTIgewpwYWRkaW5nOi41cmVtIWltcG9ydGFudAp9Ci5wLTMgewoJcGFkZGluZzogMXJlbSFpbXBvcnRhbnQKfQoucC00IHsKCXBhZGRpbmc6IDEuNXJlbSFpbXBvcnRhbnQKfQoucC01IHsKCXBhZGRpbmc6IDNyZW0haW1wb3J0YW50Cn0KLnB4LTAgewoJcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50Cn0KLnB4LTEgewpwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLnB4LTIgewpwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudDsKcGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5weC0zIHsKCXBhZGRpbmctcmlnaHQ6IDFyZW0haW1wb3J0YW50OwoJcGFkZGluZy1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5weC00IHsKCXBhZGRpbmctcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHgtNSB7CglwYWRkaW5nLXJpZ2h0OiAzcmVtIWltcG9ydGFudDsKCXBhZGRpbmctbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoucHktMCB7CglwYWRkaW5nLXRvcDogMCFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogMCFpbXBvcnRhbnQKfQoucHktMSB7CnBhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoucHktMiB7CnBhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudDsKcGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLnB5LTMgewoJcGFkZGluZy10b3A6IDFyZW0haW1wb3J0YW50OwoJcGFkZGluZy1ib3R0b206IDFyZW0haW1wb3J0YW50Cn0KLnB5LTQgewoJcGFkZGluZy10b3A6IDEuNXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5weS01IHsKCXBhZGRpbmctdG9wOiAzcmVtIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5wdC0wIHsKCXBhZGRpbmctdG9wOiAwIWltcG9ydGFudAp9Ci5wdC0xIHsKcGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudAp9Ci5wdC0yIHsKcGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50Cn0KLnB0LTMgewoJcGFkZGluZy10b3A6IDFyZW0haW1wb3J0YW50Cn0KLnB0LTQgewoJcGFkZGluZy10b3A6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHQtNSB7CglwYWRkaW5nLXRvcDogM3JlbSFpbXBvcnRhbnQKfQoucGUtMCB7CglwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudAp9Ci5wZS0xIHsKcGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50Cn0KLnBlLTIgewpwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudAp9Ci5wZS0zIHsKCXBhZGRpbmctcmlnaHQ6IDFyZW0haW1wb3J0YW50Cn0KLnBlLTQgewoJcGFkZGluZy1yaWdodDogMS41cmVtIWltcG9ydGFudAp9Ci5wZS01IHsKCXBhZGRpbmctcmlnaHQ6IDNyZW0haW1wb3J0YW50Cn0KLnBiLTAgewoJcGFkZGluZy1ib3R0b206IDAhaW1wb3J0YW50Cn0KLnBiLTEgewpwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLnBiLTIgewpwYWRkaW5nLWJvdHRvbTouNXJlbSFpbXBvcnRhbnQKfQoucGItMyB7CglwYWRkaW5nLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoucGItNCB7CglwYWRkaW5nLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5wYi01IHsKCXBhZGRpbmctYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5wcy0wIHsKCXBhZGRpbmctbGVmdDogMCFpbXBvcnRhbnQKfQoucHMtMSB7CnBhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLnBzLTIgewpwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLnBzLTMgewoJcGFkZGluZy1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5wcy00IHsKCXBhZGRpbmctbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5wcy01IHsKCXBhZGRpbmctbGVmdDogM3JlbSFpbXBvcnRhbnQKfQouZm9udC1tb25vc3BhY2UgewoJZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtbW9ub3NwYWNlKSFpbXBvcnRhbnQKfQouZnMtMSB7Cglmb250LXNpemU6IGNhbGMoMS4zNzVyZW0gKyAxLjV2dykhaW1wb3J0YW50Cn0KLmZzLTIgewpmb250LXNpemU6Y2FsYygxLjMyNXJlbSArIC45dncpIWltcG9ydGFudAp9Ci5mcy0zIHsKZm9udC1zaXplOmNhbGMoMS4zcmVtICsgLjZ2dykhaW1wb3J0YW50Cn0KLmZzLTQgewpmb250LXNpemU6Y2FsYygxLjI3NXJlbSArIC4zdncpIWltcG9ydGFudAp9Ci5mcy01IHsKCWZvbnQtc2l6ZTogMS4xMXJlbSAhaW1wb3J0YW50Owp9Ci5mcy02IHsKCWZvbnQtc2l6ZTogMC45cmVtICFpbXBvcnRhbnQ7Cn0KLmZzdC1pdGFsaWMgewoJZm9udC1zdHlsZTogaXRhbGljIWltcG9ydGFudAp9Ci5mc3Qtbm9ybWFsIHsKCWZvbnQtc3R5bGU6IG5vcm1hbCFpbXBvcnRhbnQKfQouZnctbGlnaHQgewoJZm9udC13ZWlnaHQ6IDMwMCFpbXBvcnRhbnQKfQouZnctbGlnaHRlciB7Cglmb250LXdlaWdodDogbGlnaHRlciFpbXBvcnRhbnQKfQouZnctbm9ybWFsIHsKCWZvbnQtd2VpZ2h0OiA0MDAhaW1wb3J0YW50Cn0KLmZ3LWJvbGQgewoJZm9udC13ZWlnaHQ6IDYwMCFpbXBvcnRhbnQKfQouZnctbWVkaXVtIHsKICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDsKfQouZnctYm9sZGVyIHsKCWZvbnQtd2VpZ2h0OiBib2xkZXIhaW1wb3J0YW50Cn0KLmxoLTEgewoJbGluZS1oZWlnaHQ6IDEhaW1wb3J0YW50Cn0KLmxoLXNtIHsKCWxpbmUtaGVpZ2h0OiAxLjI1IWltcG9ydGFudAp9Ci5saC1iYXNlIHsKCWxpbmUtaGVpZ2h0OiAxLjUhaW1wb3J0YW50Cn0KLmxoLWxnIHsKCWxpbmUtaGVpZ2h0OiAyIWltcG9ydGFudAp9Ci50ZXh0LXN0YXJ0IHsKCXRleHQtYWxpZ246IGxlZnQhaW1wb3J0YW50Cn0KLnRleHQtZW5kIHsKCXRleHQtYWxpZ246IHJpZ2h0IWltcG9ydGFudAp9Ci50ZXh0LWNlbnRlciB7Cgl0ZXh0LWFsaWduOiBjZW50ZXIhaW1wb3J0YW50Cn0KLnRleHQtZGVjb3JhdGlvbi1ub25lIHsKCXRleHQtZGVjb3JhdGlvbjogbm9uZSFpbXBvcnRhbnQKfQoudGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZSB7Cgl0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSFpbXBvcnRhbnQKfQoudGV4dC1kZWNvcmF0aW9uLWxpbmUtdGhyb3VnaCB7Cgl0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaCFpbXBvcnRhbnQKfQoudGV4dC1sb3dlcmNhc2UgewoJdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSFpbXBvcnRhbnQKfQoudGV4dC11cHBlcmNhc2UgewoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSFpbXBvcnRhbnQKfQoudGV4dC1jYXBpdGFsaXplIHsKCXRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplIWltcG9ydGFudAp9Ci50ZXh0LXdyYXAgewoJd2hpdGUtc3BhY2U6IG5vcm1hbCFpbXBvcnRhbnQKfQoudGV4dC1ub3dyYXAgewoJd2hpdGUtc3BhY2U6IG5vd3JhcCFpbXBvcnRhbnQKfQoudGV4dC1icmVhayB7Cgl3b3JkLXdyYXA6IGJyZWFrLXdvcmQhaW1wb3J0YW50OwoJd29yZC1icmVhazogYnJlYWstd29yZCFpbXBvcnRhbnQKfQoudGV4dC1ibHVlIHsKLS1icy10ZXh0LW9wYWNpdHk6MTsKCWNvbG9yOiByZ2JhKHZhcigtLWJzLWJsdWUpLCB2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnQKfQoudGV4dC15ZWxsb3d7CgkKCSAKCWNvbG9yOiB2YXIoLS1icy15ZWxsb3cpOwoJfQoJCgkudGV4dC1ncmVlbnsKCQoJIAoJY29sb3I6IHZhcigtLWJzLWdyZWVuKTsKCX0KLnRleHQtcHJpbWFyeSB7Ci0tYnMtdGV4dC1vcGFjaXR5OjE7Cgljb2xvcjogcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIHZhcigtLWJzLXRleHQtb3BhY2l0eSkpIWltcG9ydGFudAp9Ci50ZXh0LXNlY29uZGFyeSB7Ci0tYnMtdGV4dC1vcGFjaXR5OjE7Cgljb2xvcjogcmdiYSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50Cn0KLnRleHQtc3VjY2VzcyB7Ci0tYnMtdGV4dC1vcGFjaXR5OjE7Cgljb2xvcjogcmdiYSh2YXIoLS1icy1zdWNjZXNzLXJnYiksIHZhcigtLWJzLXRleHQtb3BhY2l0eSkpIWltcG9ydGFudAp9Ci50ZXh0LWluZm8gewotLWJzLXRleHQtb3BhY2l0eToxOwoJY29sb3I6IHJnYmEodmFyKC0tYnMtaW5mby1yZ2IpLCB2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnQKfQoudGV4dC13YXJuaW5nIHsKLS1icy10ZXh0LW9wYWNpdHk6MTsKCWNvbG9yOiByZ2JhKHZhcigtLWJzLXdhcm5pbmctcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50Cn0KLnRleHQtZGFuZ2VyIHsKLS1icy10ZXh0LW9wYWNpdHk6MTsKCWNvbG9yOiByZ2JhKHZhcigtLWJzLWRhbmdlci1yZ2IpLCB2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnQKfQoudGV4dC1saWdodCB7Ci0tYnMtdGV4dC1vcGFjaXR5OjE7Cgljb2xvcjogcmdiYSh2YXIoLS1icy1saWdodC1yZ2IpLCB2YXIoLS1icy10ZXh0LW9wYWNpdHkpKSFpbXBvcnRhbnQKfQoudGV4dC1kYXJrIHsKLS1icy10ZXh0LW9wYWNpdHk6MTsKCWNvbG9yOiByZ2JhKHZhcigtLWJzLWRhcmstcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50Cn0KLnRleHQtYmxhY2sgewotLWJzLXRleHQtb3BhY2l0eToxOwoJY29sb3I6IHJnYmEodmFyKC0tYnMtYmxhY2stcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50Cn0KLnRleHQtd2hpdGUgewotLWJzLXRleHQtb3BhY2l0eToxOwoJY29sb3I6IHJnYmEodmFyKC0tYnMtd2hpdGUtcmdiKSwgdmFyKC0tYnMtdGV4dC1vcGFjaXR5KSkhaW1wb3J0YW50Cn0KLnRleHQtYm9keSB7Ci0tYnMtdGV4dC1vcGFjaXR5OjE7Cgljb2xvcjogcmdiYSh2YXIoLS1icy1ib2R5LXJnYiksIHZhcigtLWJzLXRleHQtb3BhY2l0eSkpIWltcG9ydGFudAp9Ci50ZXh0LW11dGVkIHsKLS1icy10ZXh0LW9wYWNpdHk6MTsKCWNvbG9yOiAjNmM3NTdkIWltcG9ydGFudAp9Ci50ZXh0LWJsYWNrLTUwIHsKLS1icy10ZXh0LW9wYWNpdHk6MTsKCWNvbG9yOiByZ2JhKDAsMCwwLC41KSFpbXBvcnRhbnQKfQoudGV4dC13aGl0ZS01MCB7Ci0tYnMtdGV4dC1vcGFjaXR5OjE7Cgljb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNSkhaW1wb3J0YW50Cn0KLnRleHQtcmVzZXQgewotLWJzLXRleHQtb3BhY2l0eToxOwoJY29sb3I6IGluaGVyaXQhaW1wb3J0YW50Cn0KLnRleHQtb3BhY2l0eS0yNSB7Ci0tYnMtdGV4dC1vcGFjaXR5OjAuMjUKfQoudGV4dC1vcGFjaXR5LTUwIHsKLS1icy10ZXh0LW9wYWNpdHk6MC41Cn0KLnRleHQtb3BhY2l0eS03NSB7Ci0tYnMtdGV4dC1vcGFjaXR5OjAuNzUKfQoudGV4dC1vcGFjaXR5LTEwMCB7Ci0tYnMtdGV4dC1vcGFjaXR5OjEKfQouYmctcHJpbWFyeSB7Ci0tYnMtYmctb3BhY2l0eToxOwoJYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1wcmltYXJ5LXJnYiksIHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnQKfQouYmcteWVsbG93IHsKLS1icy1iZy1vcGFjaXR5OjE7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXdhcm5pbmctcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudAp9Ci5iZy1ibHVlIHsKLS1icy1iZy1vcGFjaXR5OjE7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXNlY29uZGFyeS1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkhaW1wb3J0YW50Cn0KLmJnLXNlY29uZGFyeSB7Ci0tYnMtYmctb3BhY2l0eToxOwoJYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1zZWNvbmRhcnktcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudAp9Ci5iZy1zdWNjZXNzIHsKLS1icy1iZy1vcGFjaXR5OjE7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXN1Y2Nlc3MtcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudAp9Ci5iZy1pbmZvIHsKLS1icy1iZy1vcGFjaXR5OjE7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLWluZm8tcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudAp9Ci5iZy13YXJuaW5nIHsKLS1icy1iZy1vcGFjaXR5OjE7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXdhcm5pbmctcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudAp9Ci5iZy1kYW5nZXIgewotLWJzLWJnLW9wYWNpdHk6MTsKCWJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtZGFuZ2VyLXJnYiksIHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnQKfQouYmctbGlnaHQgewotLWJzLWJnLW9wYWNpdHk6MTsKCWJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnMtbGlnaHQtcmdiKSwgdmFyKC0tYnMtYmctb3BhY2l0eSkpIWltcG9ydGFudAp9Ci5iZy1kYXJrIHsKIAp9Ci5iZy1ibGFjayB7Ci0tYnMtYmctb3BhY2l0eToxOwoJYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1ibGFjay1yZ2IpLCB2YXIoLS1icy1iZy1vcGFjaXR5KSkhaW1wb3J0YW50Cn0KLmJnLXdoaXRlIHsKLS1icy1iZy1vcGFjaXR5OjE7CgliYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWJzLXdoaXRlLXJnYiksIHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnQKfQouYmctYm9keSB7Ci0tYnMtYmctb3BhY2l0eToxOwoJYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icy1ib2R5LXJnYiksIHZhcigtLWJzLWJnLW9wYWNpdHkpKSFpbXBvcnRhbnQKfQouYmctdHJhbnNwYXJlbnQgewotLWJzLWJnLW9wYWNpdHk6MTsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50IWltcG9ydGFudAp9Ci5iZy1vcGFjaXR5LTEwIHsKLS1icy1iZy1vcGFjaXR5OjAuMQp9Ci5iZy1vcGFjaXR5LTI1IHsKLS1icy1iZy1vcGFjaXR5OjAuMjUKfQouYmctb3BhY2l0eS01MCB7Ci0tYnMtYmctb3BhY2l0eTowLjUKfQouYmctb3BhY2l0eS03NSB7Ci0tYnMtYmctb3BhY2l0eTowLjc1Cn0KLmJnLW9wYWNpdHktMTAwIHsKLS1icy1iZy1vcGFjaXR5OjEKfQouYmctZ3JhZGllbnQgewoJYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tYnMtZ3JhZGllbnQpIWltcG9ydGFudAp9Ci51c2VyLXNlbGVjdC1hbGwgewoJLXdlYmtpdC11c2VyLXNlbGVjdDogYWxsIWltcG9ydGFudDsKCS1tb3otdXNlci1zZWxlY3Q6IGFsbCFpbXBvcnRhbnQ7Cgl1c2VyLXNlbGVjdDogYWxsIWltcG9ydGFudAp9Ci51c2VyLXNlbGVjdC1hdXRvIHsKCS13ZWJraXQtdXNlci1zZWxlY3Q6IGF1dG8haW1wb3J0YW50OwoJLW1vei11c2VyLXNlbGVjdDogYXV0byFpbXBvcnRhbnQ7Cgl1c2VyLXNlbGVjdDogYXV0byFpbXBvcnRhbnQKfQoudXNlci1zZWxlY3Qtbm9uZSB7Cgktd2Via2l0LXVzZXItc2VsZWN0OiBub25lIWltcG9ydGFudDsKCS1tb3otdXNlci1zZWxlY3Q6IG5vbmUhaW1wb3J0YW50OwoJdXNlci1zZWxlY3Q6IG5vbmUhaW1wb3J0YW50Cn0KLnBlLW5vbmUgewoJcG9pbnRlci1ldmVudHM6IG5vbmUhaW1wb3J0YW50Cn0KLnBlLWF1dG8gewoJcG9pbnRlci1ldmVudHM6IGF1dG8haW1wb3J0YW50Cn0KLnJvdW5kZWQgewpib3JkZXItcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnQKfQoucm91bmRlZC0wIHsKCWJvcmRlci1yYWRpdXM6IDAhaW1wb3J0YW50Cn0KLnJvdW5kZWQtMSB7CmJvcmRlci1yYWRpdXM6LjJyZW0haW1wb3J0YW50Cn0KLnJvdW5kZWQtMiB7CmJvcmRlci1yYWRpdXM6LjI1cmVtIWltcG9ydGFudAp9Ci5yb3VuZGVkLTMgewpib3JkZXItcmFkaXVzOi4zcmVtIWltcG9ydGFudAp9Cgoucm91bmRlZC00IHsKYm9yZGVyLXJhZGl1czouNHJlbSFpbXBvcnRhbnQKfQoucm91bmRlZC01IHsKYm9yZGVyLXJhZGl1czouNXJlbSFpbXBvcnRhbnQKfQoucm91bmRlZC0xMCB7CmJvcmRlci1yYWRpdXM6MXJlbSFpbXBvcnRhbnQKfQoucm91bmRlZC1jaXJjbGUgewoJYm9yZGVyLXJhZGl1czogNTAlIWltcG9ydGFudAp9Ci5yb3VuZGVkLXBpbGwgewoJYm9yZGVyLXJhZGl1czogNTByZW0haW1wb3J0YW50Cn0KLnJvdW5kZWQtdG9wIHsKYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMjVyZW0haW1wb3J0YW50Owpib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW0haW1wb3J0YW50Cn0KLnJvdW5kZWQtZW5kIHsKYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudDsKYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudAp9Ci5yb3VuZGVkLWJvdHRvbSB7CmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnQ7CmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudAp9Ci5yb3VuZGVkLXN0YXJ0IHsKYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW0haW1wb3J0YW50Owpib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnQKfQoudmlzaWJsZSB7Cgl2aXNpYmlsaXR5OiB2aXNpYmxlIWltcG9ydGFudAp9Ci5pbnZpc2libGUgewoJdmlzaWJpbGl0eTogaGlkZGVuIWltcG9ydGFudAp9CkBtZWRpYSAobWluLXdpZHRoOjU3NnB4KSB7Ci5mbG9hdC1zbS1zdGFydCB7CglmbG9hdDogbGVmdCFpbXBvcnRhbnQKfQouZmxvYXQtc20tZW5kIHsKCWZsb2F0OiByaWdodCFpbXBvcnRhbnQKfQouZmxvYXQtc20tbm9uZSB7CglmbG9hdDogbm9uZSFpbXBvcnRhbnQKfQouZC1zbS1pbmxpbmUgewoJZGlzcGxheTogaW5saW5lIWltcG9ydGFudAp9Ci5kLXNtLWlubGluZS1ibG9jayB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2shaW1wb3J0YW50Cn0KLmQtc20tYmxvY2sgewoJZGlzcGxheTogYmxvY2shaW1wb3J0YW50Cn0KLmQtc20tZ3JpZCB7CglkaXNwbGF5OiBncmlkIWltcG9ydGFudAp9Ci5kLXNtLXRhYmxlIHsKCWRpc3BsYXk6IHRhYmxlIWltcG9ydGFudAp9Ci5kLXNtLXRhYmxlLXJvdyB7CglkaXNwbGF5OiB0YWJsZS1yb3chaW1wb3J0YW50Cn0KLmQtc20tdGFibGUtY2VsbCB7CglkaXNwbGF5OiB0YWJsZS1jZWxsIWltcG9ydGFudAp9Ci5kLXNtLWZsZXggewoJZGlzcGxheTogZmxleCFpbXBvcnRhbnQKfQouZC1zbS1pbmxpbmUtZmxleCB7CglkaXNwbGF5OiBpbmxpbmUtZmxleCFpbXBvcnRhbnQKfQouZC1zbS1ub25lIHsKCWRpc3BsYXk6IG5vbmUhaW1wb3J0YW50Cn0KLmZsZXgtc20tZmlsbCB7CglmbGV4OiAxIDEgYXV0byFpbXBvcnRhbnQKfQouZmxleC1zbS1yb3cgewoJZmxleC1kaXJlY3Rpb246IHJvdyFpbXBvcnRhbnQKfQouZmxleC1zbS1jb2x1bW4gewoJZmxleC1kaXJlY3Rpb246IGNvbHVtbiFpbXBvcnRhbnQKfQouZmxleC1zbS1yb3ctcmV2ZXJzZSB7CglmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UhaW1wb3J0YW50Cn0KLmZsZXgtc20tY29sdW1uLXJldmVyc2UgewoJZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlIWltcG9ydGFudAp9Ci5mbGV4LXNtLWdyb3ctMCB7CglmbGV4LWdyb3c6IDAhaW1wb3J0YW50Cn0KLmZsZXgtc20tZ3Jvdy0xIHsKCWZsZXgtZ3JvdzogMSFpbXBvcnRhbnQKfQouZmxleC1zbS1zaHJpbmstMCB7CglmbGV4LXNocmluazogMCFpbXBvcnRhbnQKfQouZmxleC1zbS1zaHJpbmstMSB7CglmbGV4LXNocmluazogMSFpbXBvcnRhbnQKfQouZmxleC1zbS13cmFwIHsKCWZsZXgtd3JhcDogd3JhcCFpbXBvcnRhbnQKfQouZmxleC1zbS1ub3dyYXAgewoJZmxleC13cmFwOiBub3dyYXAhaW1wb3J0YW50Cn0KLmZsZXgtc20td3JhcC1yZXZlcnNlIHsKCWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlIWltcG9ydGFudAp9Ci5nYXAtc20tMCB7CglnYXA6IDAhaW1wb3J0YW50Cn0KLmdhcC1zbS0xIHsKZ2FwOi4yNXJlbSFpbXBvcnRhbnQKfQouZ2FwLXNtLTIgewpnYXA6LjVyZW0haW1wb3J0YW50Cn0KLmdhcC1zbS0zIHsKCWdhcDogMXJlbSFpbXBvcnRhbnQKfQouZ2FwLXNtLTQgewoJZ2FwOiAxLjVyZW0haW1wb3J0YW50Cn0KLmdhcC1zbS01IHsKCWdhcDogM3JlbSFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHsKCWp1c3RpZnktY29udGVudDogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LXNtLWVuZCB7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVyIHsKCWp1c3RpZnktY29udGVudDogY2VudGVyIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtc20tYmV0d2VlbiB7CglqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4haW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQgewoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQhaW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1zbS1ldmVubHkgewoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkhaW1wb3J0YW50Cn0KLmFsaWduLWl0ZW1zLXNtLXN0YXJ0IHsKCWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1zbS1lbmQgewoJYWxpZ24taXRlbXM6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1zbS1jZW50ZXIgewoJYWxpZ24taXRlbXM6IGNlbnRlciFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMtc20tYmFzZWxpbmUgewoJYWxpZ24taXRlbXM6IGJhc2VsaW5lIWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHsKCWFsaWduLWl0ZW1zOiBzdHJldGNoIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXNtLXN0YXJ0IHsKCWFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtc20tZW5kIHsKCWFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXNtLWNlbnRlciB7CglhbGlnbi1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtc20tYmV0d2VlbiB7CglhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXNtLWFyb3VuZCB7CglhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaCB7CglhbGlnbi1jb250ZW50OiBzdHJldGNoIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXNtLWF1dG8gewoJYWxpZ24tc2VsZjogYXV0byFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1zbS1zdGFydCB7CglhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXNtLWVuZCB7CglhbGlnbi1zZWxmOiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1zbS1jZW50ZXIgewoJYWxpZ24tc2VsZjogY2VudGVyIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXNtLWJhc2VsaW5lIHsKCWFsaWduLXNlbGY6IGJhc2VsaW5lIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXNtLXN0cmV0Y2ggewoJYWxpZ24tc2VsZjogc3RyZXRjaCFpbXBvcnRhbnQKfQoub3JkZXItc20tZmlyc3QgewoJb3JkZXI6IC0xIWltcG9ydGFudAp9Ci5vcmRlci1zbS0wIHsKCW9yZGVyOiAwIWltcG9ydGFudAp9Ci5vcmRlci1zbS0xIHsKCW9yZGVyOiAxIWltcG9ydGFudAp9Ci5vcmRlci1zbS0yIHsKCW9yZGVyOiAyIWltcG9ydGFudAp9Ci5vcmRlci1zbS0zIHsKCW9yZGVyOiAzIWltcG9ydGFudAp9Ci5vcmRlci1zbS00IHsKCW9yZGVyOiA0IWltcG9ydGFudAp9Ci5vcmRlci1zbS01IHsKCW9yZGVyOiA1IWltcG9ydGFudAp9Ci5vcmRlci1zbS1sYXN0IHsKCW9yZGVyOiA2IWltcG9ydGFudAp9Ci5tLXNtLTAgewoJbWFyZ2luOiAwIWltcG9ydGFudAp9Ci5tLXNtLTEgewptYXJnaW46LjI1cmVtIWltcG9ydGFudAp9Ci5tLXNtLTIgewptYXJnaW46LjVyZW0haW1wb3J0YW50Cn0KLm0tc20tMyB7CgltYXJnaW46IDFyZW0haW1wb3J0YW50Cn0KLm0tc20tNCB7CgltYXJnaW46IDEuNXJlbSFpbXBvcnRhbnQKfQoubS1zbS01IHsKCW1hcmdpbjogM3JlbSFpbXBvcnRhbnQKfQoubS1zbS1hdXRvIHsKCW1hcmdpbjogYXV0byFpbXBvcnRhbnQKfQoubXgtc20tMCB7CgltYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50Cn0KLm14LXNtLTEgewptYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudDsKbWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5teC1zbS0yIHsKbWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudDsKbWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLm14LXNtLTMgewoJbWFyZ2luLXJpZ2h0OiAxcmVtIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5teC1zbS00IHsKCW1hcmdpbi1yaWdodDogMS41cmVtIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLm14LXNtLTUgewoJbWFyZ2luLXJpZ2h0OiAzcmVtIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAzcmVtIWltcG9ydGFudAp9Ci5teC1zbS1hdXRvIHsKCW1hcmdpbi1yaWdodDogYXV0byFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogYXV0byFpbXBvcnRhbnQKfQoubXktc20tMCB7CgltYXJnaW4tdG9wOiAwIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50Cn0KLm15LXNtLTEgewptYXJnaW4tdG9wOi4yNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudAp9Ci5teS1zbS0yIHsKbWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLm15LXNtLTMgewoJbWFyZ2luLXRvcDogMXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5teS1zbS00IHsKCW1hcmdpbi10b3A6IDEuNXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAxLjVyZW0haW1wb3J0YW50Cn0KLm15LXNtLTUgewoJbWFyZ2luLXRvcDogM3JlbSFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5teS1zbS1hdXRvIHsKCW1hcmdpbi10b3A6IGF1dG8haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogYXV0byFpbXBvcnRhbnQKfQoubXQtc20tMCB7CgltYXJnaW4tdG9wOiAwIWltcG9ydGFudAp9Ci5tdC1zbS0xIHsKbWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50Cn0KLm10LXNtLTIgewptYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudAp9Ci5tdC1zbS0zIHsKCW1hcmdpbi10b3A6IDFyZW0haW1wb3J0YW50Cn0KLm10LXNtLTQgewoJbWFyZ2luLXRvcDogMS41cmVtIWltcG9ydGFudAp9Ci5tdC1zbS01IHsKCW1hcmdpbi10b3A6IDNyZW0haW1wb3J0YW50Cn0KLm10LXNtLWF1dG8gewoJbWFyZ2luLXRvcDogYXV0byFpbXBvcnRhbnQKfQoubWUtc20tMCB7CgltYXJnaW4tcmlnaHQ6IDAhaW1wb3J0YW50Cn0KLm1lLXNtLTEgewptYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudAp9Ci5tZS1zbS0yIHsKbWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudAp9Ci5tZS1zbS0zIHsKCW1hcmdpbi1yaWdodDogMXJlbSFpbXBvcnRhbnQKfQoubWUtc20tNCB7CgltYXJnaW4tcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoubWUtc20tNSB7CgltYXJnaW4tcmlnaHQ6IDNyZW0haW1wb3J0YW50Cn0KLm1lLXNtLWF1dG8gewoJbWFyZ2luLXJpZ2h0OiBhdXRvIWltcG9ydGFudAp9Ci5tYi1zbS0wIHsKCW1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50Cn0KLm1iLXNtLTEgewptYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoubWItc20tMiB7Cm1hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLm1iLXNtLTMgewoJbWFyZ2luLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoubWItc20tNCB7CgltYXJnaW4tYm90dG9tOiAxLjVyZW0haW1wb3J0YW50Cn0KLm1iLXNtLTUgewoJbWFyZ2luLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoubWItc20tYXV0byB7CgltYXJnaW4tYm90dG9tOiBhdXRvIWltcG9ydGFudAp9Ci5tcy1zbS0wIHsKCW1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudAp9Ci5tcy1zbS0xIHsKbWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5tcy1zbS0yIHsKbWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLm1zLXNtLTMgewoJbWFyZ2luLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLm1zLXNtLTQgewoJbWFyZ2luLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoubXMtc20tNSB7CgltYXJnaW4tbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoubXMtc20tYXV0byB7CgltYXJnaW4tbGVmdDogYXV0byFpbXBvcnRhbnQKfQoucC1zbS0wIHsKCXBhZGRpbmc6IDAhaW1wb3J0YW50Cn0KLnAtc20tMSB7CnBhZGRpbmc6LjI1cmVtIWltcG9ydGFudAp9Ci5wLXNtLTIgewpwYWRkaW5nOi41cmVtIWltcG9ydGFudAp9Ci5wLXNtLTMgewoJcGFkZGluZzogMXJlbSFpbXBvcnRhbnQKfQoucC1zbS00IHsKCXBhZGRpbmc6IDEuNXJlbSFpbXBvcnRhbnQKfQoucC1zbS01IHsKCXBhZGRpbmc6IDNyZW0haW1wb3J0YW50Cn0KLnB4LXNtLTAgewoJcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50Cn0KLnB4LXNtLTEgewpwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLnB4LXNtLTIgewpwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudDsKcGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5weC1zbS0zIHsKCXBhZGRpbmctcmlnaHQ6IDFyZW0haW1wb3J0YW50OwoJcGFkZGluZy1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5weC1zbS00IHsKCXBhZGRpbmctcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHgtc20tNSB7CglwYWRkaW5nLXJpZ2h0OiAzcmVtIWltcG9ydGFudDsKCXBhZGRpbmctbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoucHktc20tMCB7CglwYWRkaW5nLXRvcDogMCFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogMCFpbXBvcnRhbnQKfQoucHktc20tMSB7CnBhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoucHktc20tMiB7CnBhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudDsKcGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLnB5LXNtLTMgewoJcGFkZGluZy10b3A6IDFyZW0haW1wb3J0YW50OwoJcGFkZGluZy1ib3R0b206IDFyZW0haW1wb3J0YW50Cn0KLnB5LXNtLTQgewoJcGFkZGluZy10b3A6IDEuNXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5weS1zbS01IHsKCXBhZGRpbmctdG9wOiAzcmVtIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5wdC1zbS0wIHsKCXBhZGRpbmctdG9wOiAwIWltcG9ydGFudAp9Ci5wdC1zbS0xIHsKcGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudAp9Ci5wdC1zbS0yIHsKcGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50Cn0KLnB0LXNtLTMgewoJcGFkZGluZy10b3A6IDFyZW0haW1wb3J0YW50Cn0KLnB0LXNtLTQgewoJcGFkZGluZy10b3A6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHQtc20tNSB7CglwYWRkaW5nLXRvcDogM3JlbSFpbXBvcnRhbnQKfQoucGUtc20tMCB7CglwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudAp9Ci5wZS1zbS0xIHsKcGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50Cn0KLnBlLXNtLTIgewpwYWRkaW5nLXJpZ2h0Oi41cmVtIWltcG9ydGFudAp9Ci5wZS1zbS0zIHsKCXBhZGRpbmctcmlnaHQ6IDFyZW0haW1wb3J0YW50Cn0KLnBlLXNtLTQgewoJcGFkZGluZy1yaWdodDogMS41cmVtIWltcG9ydGFudAp9Ci5wZS1zbS01IHsKCXBhZGRpbmctcmlnaHQ6IDNyZW0haW1wb3J0YW50Cn0KLnBiLXNtLTAgewoJcGFkZGluZy1ib3R0b206IDAhaW1wb3J0YW50Cn0KLnBiLXNtLTEgewpwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLnBiLXNtLTIgewpwYWRkaW5nLWJvdHRvbTouNXJlbSFpbXBvcnRhbnQKfQoucGItc20tMyB7CglwYWRkaW5nLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoucGItc20tNCB7CglwYWRkaW5nLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5wYi1zbS01IHsKCXBhZGRpbmctYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5wcy1zbS0wIHsKCXBhZGRpbmctbGVmdDogMCFpbXBvcnRhbnQKfQoucHMtc20tMSB7CnBhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLnBzLXNtLTIgewpwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLnBzLXNtLTMgewoJcGFkZGluZy1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5wcy1zbS00IHsKCXBhZGRpbmctbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5wcy1zbS01IHsKCXBhZGRpbmctbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoudGV4dC1zbS1zdGFydCB7Cgl0ZXh0LWFsaWduOiBsZWZ0IWltcG9ydGFudAp9Ci50ZXh0LXNtLWVuZCB7Cgl0ZXh0LWFsaWduOiByaWdodCFpbXBvcnRhbnQKfQoudGV4dC1zbS1jZW50ZXIgewoJdGV4dC1hbGlnbjogY2VudGVyIWltcG9ydGFudAp9Cn0KQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHsKLmZsb2F0LW1kLXN0YXJ0IHsKCWZsb2F0OiBsZWZ0IWltcG9ydGFudAp9Ci5mbG9hdC1tZC1lbmQgewoJZmxvYXQ6IHJpZ2h0IWltcG9ydGFudAp9Ci5mbG9hdC1tZC1ub25lIHsKCWZsb2F0OiBub25lIWltcG9ydGFudAp9Ci5kLW1kLWlubGluZSB7CglkaXNwbGF5OiBpbmxpbmUhaW1wb3J0YW50Cn0KLmQtbWQtaW5saW5lLWJsb2NrIHsKCWRpc3BsYXk6IGlubGluZS1ibG9jayFpbXBvcnRhbnQKfQouZC1tZC1ibG9jayB7CglkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQKfQouZC1tZC1ncmlkIHsKCWRpc3BsYXk6IGdyaWQhaW1wb3J0YW50Cn0KLmQtbWQtdGFibGUgewoJZGlzcGxheTogdGFibGUhaW1wb3J0YW50Cn0KLmQtbWQtdGFibGUtcm93IHsKCWRpc3BsYXk6IHRhYmxlLXJvdyFpbXBvcnRhbnQKfQouZC1tZC10YWJsZS1jZWxsIHsKCWRpc3BsYXk6IHRhYmxlLWNlbGwhaW1wb3J0YW50Cn0KLmQtbWQtZmxleCB7CglkaXNwbGF5OiBmbGV4IWltcG9ydGFudAp9Ci5kLW1kLWlubGluZS1mbGV4IHsKCWRpc3BsYXk6IGlubGluZS1mbGV4IWltcG9ydGFudAp9Ci5kLW1kLW5vbmUgewoJZGlzcGxheTogbm9uZSFpbXBvcnRhbnQKfQouZmxleC1tZC1maWxsIHsKCWZsZXg6IDEgMSBhdXRvIWltcG9ydGFudAp9Ci5mbGV4LW1kLXJvdyB7CglmbGV4LWRpcmVjdGlvbjogcm93IWltcG9ydGFudAp9Ci5mbGV4LW1kLWNvbHVtbiB7CglmbGV4LWRpcmVjdGlvbjogY29sdW1uIWltcG9ydGFudAp9Ci5mbGV4LW1kLXJvdy1yZXZlcnNlIHsKCWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSFpbXBvcnRhbnQKfQouZmxleC1tZC1jb2x1bW4tcmV2ZXJzZSB7CglmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UhaW1wb3J0YW50Cn0KLmZsZXgtbWQtZ3Jvdy0wIHsKCWZsZXgtZ3JvdzogMCFpbXBvcnRhbnQKfQouZmxleC1tZC1ncm93LTEgewoJZmxleC1ncm93OiAxIWltcG9ydGFudAp9Ci5mbGV4LW1kLXNocmluay0wIHsKCWZsZXgtc2hyaW5rOiAwIWltcG9ydGFudAp9Ci5mbGV4LW1kLXNocmluay0xIHsKCWZsZXgtc2hyaW5rOiAxIWltcG9ydGFudAp9Ci5mbGV4LW1kLXdyYXAgewoJZmxleC13cmFwOiB3cmFwIWltcG9ydGFudAp9Ci5mbGV4LW1kLW5vd3JhcCB7CglmbGV4LXdyYXA6IG5vd3JhcCFpbXBvcnRhbnQKfQouZmxleC1tZC13cmFwLXJldmVyc2UgewoJZmxleC13cmFwOiB3cmFwLXJldmVyc2UhaW1wb3J0YW50Cn0KLmdhcC1tZC0wIHsKCWdhcDogMCFpbXBvcnRhbnQKfQouZ2FwLW1kLTEgewpnYXA6LjI1cmVtIWltcG9ydGFudAp9Ci5nYXAtbWQtMiB7CmdhcDouNXJlbSFpbXBvcnRhbnQKfQouZ2FwLW1kLTMgewoJZ2FwOiAxcmVtIWltcG9ydGFudAp9Ci5nYXAtbWQtNCB7CglnYXA6IDEuNXJlbSFpbXBvcnRhbnQKfQouZ2FwLW1kLTUgewoJZ2FwOiAzcmVtIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtbWQtc3RhcnQgewoJanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHsKCWp1c3RpZnktY29udGVudDogZmxleC1lbmQhaW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1tZC1jZW50ZXIgewoJanVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1tZC1iZXR3ZWVuIHsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LW1kLWFyb3VuZCB7CglqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LW1kLWV2ZW5seSB7CglqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMtbWQtc3RhcnQgewoJYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQhaW1wb3J0YW50Cn0KLmFsaWduLWl0ZW1zLW1kLWVuZCB7CglhbGlnbi1pdGVtczogZmxleC1lbmQhaW1wb3J0YW50Cn0KLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7CglhbGlnbi1pdGVtczogY2VudGVyIWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1tZC1iYXNlbGluZSB7CglhbGlnbi1pdGVtczogYmFzZWxpbmUhaW1wb3J0YW50Cn0KLmFsaWduLWl0ZW1zLW1kLXN0cmV0Y2ggewoJYWxpZ24taXRlbXM6IHN0cmV0Y2ghaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQgewoJYWxpZ24tY29udGVudDogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC1tZC1lbmQgewoJYWxpZ24tY29udGVudDogZmxleC1lbmQhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtbWQtY2VudGVyIHsKCWFsaWduLWNvbnRlbnQ6IGNlbnRlciFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC1tZC1iZXR3ZWVuIHsKCWFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4haW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHsKCWFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC1tZC1zdHJldGNoIHsKCWFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ghaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYtbWQtYXV0byB7CglhbGlnbi1zZWxmOiBhdXRvIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLW1kLXN0YXJ0IHsKCWFsaWduLXNlbGY6IGZsZXgtc3RhcnQhaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYtbWQtZW5kIHsKCWFsaWduLXNlbGY6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLW1kLWNlbnRlciB7CglhbGlnbi1zZWxmOiBjZW50ZXIhaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYtbWQtYmFzZWxpbmUgewoJYWxpZ24tc2VsZjogYmFzZWxpbmUhaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYtbWQtc3RyZXRjaCB7CglhbGlnbi1zZWxmOiBzdHJldGNoIWltcG9ydGFudAp9Ci5vcmRlci1tZC1maXJzdCB7CglvcmRlcjogLTEhaW1wb3J0YW50Cn0KLm9yZGVyLW1kLTAgewoJb3JkZXI6IDAhaW1wb3J0YW50Cn0KLm9yZGVyLW1kLTEgewoJb3JkZXI6IDEhaW1wb3J0YW50Cn0KLm9yZGVyLW1kLTIgewoJb3JkZXI6IDIhaW1wb3J0YW50Cn0KLm9yZGVyLW1kLTMgewoJb3JkZXI6IDMhaW1wb3J0YW50Cn0KLm9yZGVyLW1kLTQgewoJb3JkZXI6IDQhaW1wb3J0YW50Cn0KLm9yZGVyLW1kLTUgewoJb3JkZXI6IDUhaW1wb3J0YW50Cn0KLm9yZGVyLW1kLWxhc3QgewoJb3JkZXI6IDYhaW1wb3J0YW50Cn0KLm0tbWQtMCB7CgltYXJnaW46IDAhaW1wb3J0YW50Cn0KLm0tbWQtMSB7Cm1hcmdpbjouMjVyZW0haW1wb3J0YW50Cn0KLm0tbWQtMiB7Cm1hcmdpbjouNXJlbSFpbXBvcnRhbnQKfQoubS1tZC0zIHsKCW1hcmdpbjogMXJlbSFpbXBvcnRhbnQKfQoubS1tZC00IHsKCW1hcmdpbjogMS41cmVtIWltcG9ydGFudAp9Ci5tLW1kLTUgewoJbWFyZ2luOiAzcmVtIWltcG9ydGFudAp9Ci5tLW1kLWF1dG8gewoJbWFyZ2luOiBhdXRvIWltcG9ydGFudAp9Ci5teC1tZC0wIHsKCW1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQKfQoubXgtbWQtMSB7Cm1hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50OwptYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLm14LW1kLTIgewptYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50OwptYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnQKfQoubXgtbWQtMyB7CgltYXJnaW4tcmlnaHQ6IDFyZW0haW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLm14LW1kLTQgewoJbWFyZ2luLXJpZ2h0OiAxLjVyZW0haW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoubXgtbWQtNSB7CgltYXJnaW4tcmlnaHQ6IDNyZW0haW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLm14LW1kLWF1dG8gewoJbWFyZ2luLXJpZ2h0OiBhdXRvIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiBhdXRvIWltcG9ydGFudAp9Ci5teS1tZC0wIHsKCW1hcmdpbi10b3A6IDAhaW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQKfQoubXktbWQtMSB7Cm1hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudDsKbWFyZ2luLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLm15LW1kLTIgewptYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudDsKbWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnQKfQoubXktbWQtMyB7CgltYXJnaW4tdG9wOiAxcmVtIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IDFyZW0haW1wb3J0YW50Cn0KLm15LW1kLTQgewoJbWFyZ2luLXRvcDogMS41cmVtIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IDEuNXJlbSFpbXBvcnRhbnQKfQoubXktbWQtNSB7CgltYXJnaW4tdG9wOiAzcmVtIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IDNyZW0haW1wb3J0YW50Cn0KLm15LW1kLWF1dG8gewoJbWFyZ2luLXRvcDogYXV0byFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiBhdXRvIWltcG9ydGFudAp9Ci5tdC1tZC0wIHsKCW1hcmdpbi10b3A6IDAhaW1wb3J0YW50Cn0KLm10LW1kLTEgewptYXJnaW4tdG9wOi4yNXJlbSFpbXBvcnRhbnQKfQoubXQtbWQtMiB7Cm1hcmdpbi10b3A6LjVyZW0haW1wb3J0YW50Cn0KLm10LW1kLTMgewoJbWFyZ2luLXRvcDogMXJlbSFpbXBvcnRhbnQKfQoubXQtbWQtNCB7CgltYXJnaW4tdG9wOiAxLjVyZW0haW1wb3J0YW50Cn0KLm10LW1kLTUgewoJbWFyZ2luLXRvcDogM3JlbSFpbXBvcnRhbnQKfQoubXQtbWQtYXV0byB7CgltYXJnaW4tdG9wOiBhdXRvIWltcG9ydGFudAp9Ci5tZS1tZC0wIHsKCW1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQKfQoubWUtbWQtMSB7Cm1hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50Cn0KLm1lLW1kLTIgewptYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50Cn0KLm1lLW1kLTMgewoJbWFyZ2luLXJpZ2h0OiAxcmVtIWltcG9ydGFudAp9Ci5tZS1tZC00IHsKCW1hcmdpbi1yaWdodDogMS41cmVtIWltcG9ydGFudAp9Ci5tZS1tZC01IHsKCW1hcmdpbi1yaWdodDogM3JlbSFpbXBvcnRhbnQKfQoubWUtbWQtYXV0byB7CgltYXJnaW4tcmlnaHQ6IGF1dG8haW1wb3J0YW50Cn0KLm1iLW1kLTAgewoJbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQKfQoubWItbWQtMSB7Cm1hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudAp9Ci5tYi1tZC0yIHsKbWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnQKfQoubWItbWQtMyB7CgltYXJnaW4tYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5tYi1tZC00IHsKCW1hcmdpbi1ib3R0b206IDEuNXJlbSFpbXBvcnRhbnQKfQoubWItbWQtNSB7CgltYXJnaW4tYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5tYi1tZC1hdXRvIHsKCW1hcmdpbi1ib3R0b206IGF1dG8haW1wb3J0YW50Cn0KLm1zLW1kLTAgewoJbWFyZ2luLWxlZnQ6IDAhaW1wb3J0YW50Cn0KLm1zLW1kLTEgewptYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLm1zLW1kLTIgewptYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnQKfQoubXMtbWQtMyB7CgltYXJnaW4tbGVmdDogMXJlbSFpbXBvcnRhbnQKfQoubXMtbWQtNCB7CgltYXJnaW4tbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5tcy1tZC01IHsKCW1hcmdpbi1sZWZ0OiAzcmVtIWltcG9ydGFudAp9Ci5tcy1tZC1hdXRvIHsKCW1hcmdpbi1sZWZ0OiBhdXRvIWltcG9ydGFudAp9Ci5wLW1kLTAgewoJcGFkZGluZzogMCFpbXBvcnRhbnQKfQoucC1tZC0xIHsKcGFkZGluZzouMjVyZW0haW1wb3J0YW50Cn0KLnAtbWQtMiB7CnBhZGRpbmc6LjVyZW0haW1wb3J0YW50Cn0KLnAtbWQtMyB7CglwYWRkaW5nOiAxcmVtIWltcG9ydGFudAp9Ci5wLW1kLTQgewoJcGFkZGluZzogMS41cmVtIWltcG9ydGFudAp9Ci5wLW1kLTUgewoJcGFkZGluZzogM3JlbSFpbXBvcnRhbnQKfQoucHgtbWQtMCB7CglwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudDsKCXBhZGRpbmctbGVmdDogMCFpbXBvcnRhbnQKfQoucHgtbWQtMSB7CnBhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudDsKcGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnQKfQoucHgtbWQtMiB7CnBhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50OwpwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLnB4LW1kLTMgewoJcGFkZGluZy1yaWdodDogMXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLnB4LW1kLTQgewoJcGFkZGluZy1yaWdodDogMS41cmVtIWltcG9ydGFudDsKCXBhZGRpbmctbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5weC1tZC01IHsKCXBhZGRpbmctcmlnaHQ6IDNyZW0haW1wb3J0YW50OwoJcGFkZGluZy1sZWZ0OiAzcmVtIWltcG9ydGFudAp9Ci5weS1tZC0wIHsKCXBhZGRpbmctdG9wOiAwIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAwIWltcG9ydGFudAp9Ci5weS1tZC0xIHsKcGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudDsKcGFkZGluZy1ib3R0b206LjI1cmVtIWltcG9ydGFudAp9Ci5weS1tZC0yIHsKcGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50OwpwYWRkaW5nLWJvdHRvbTouNXJlbSFpbXBvcnRhbnQKfQoucHktbWQtMyB7CglwYWRkaW5nLXRvcDogMXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoucHktbWQtNCB7CglwYWRkaW5nLXRvcDogMS41cmVtIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAxLjVyZW0haW1wb3J0YW50Cn0KLnB5LW1kLTUgewoJcGFkZGluZy10b3A6IDNyZW0haW1wb3J0YW50OwoJcGFkZGluZy1ib3R0b206IDNyZW0haW1wb3J0YW50Cn0KLnB0LW1kLTAgewoJcGFkZGluZy10b3A6IDAhaW1wb3J0YW50Cn0KLnB0LW1kLTEgewpwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50Cn0KLnB0LW1kLTIgewpwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnQKfQoucHQtbWQtMyB7CglwYWRkaW5nLXRvcDogMXJlbSFpbXBvcnRhbnQKfQoucHQtbWQtNCB7CglwYWRkaW5nLXRvcDogMS41cmVtIWltcG9ydGFudAp9Ci5wdC1tZC01IHsKCXBhZGRpbmctdG9wOiAzcmVtIWltcG9ydGFudAp9Ci5wZS1tZC0wIHsKCXBhZGRpbmctcmlnaHQ6IDAhaW1wb3J0YW50Cn0KLnBlLW1kLTEgewpwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQKfQoucGUtbWQtMiB7CnBhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50Cn0KLnBlLW1kLTMgewoJcGFkZGluZy1yaWdodDogMXJlbSFpbXBvcnRhbnQKfQoucGUtbWQtNCB7CglwYWRkaW5nLXJpZ2h0OiAxLjVyZW0haW1wb3J0YW50Cn0KLnBlLW1kLTUgewoJcGFkZGluZy1yaWdodDogM3JlbSFpbXBvcnRhbnQKfQoucGItbWQtMCB7CglwYWRkaW5nLWJvdHRvbTogMCFpbXBvcnRhbnQKfQoucGItbWQtMSB7CnBhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoucGItbWQtMiB7CnBhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5wYi1tZC0zIHsKCXBhZGRpbmctYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5wYi1tZC00IHsKCXBhZGRpbmctYm90dG9tOiAxLjVyZW0haW1wb3J0YW50Cn0KLnBiLW1kLTUgewoJcGFkZGluZy1ib3R0b206IDNyZW0haW1wb3J0YW50Cn0KLnBzLW1kLTAgewoJcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudAp9Ci5wcy1tZC0xIHsKcGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnQKfQoucHMtbWQtMiB7CnBhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnQKfQoucHMtbWQtMyB7CglwYWRkaW5nLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLnBzLW1kLTQgewoJcGFkZGluZy1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLnBzLW1kLTUgewoJcGFkZGluZy1sZWZ0OiAzcmVtIWltcG9ydGFudAp9Ci50ZXh0LW1kLXN0YXJ0IHsKCXRleHQtYWxpZ246IGxlZnQhaW1wb3J0YW50Cn0KLnRleHQtbWQtZW5kIHsKCXRleHQtYWxpZ246IHJpZ2h0IWltcG9ydGFudAp9Ci50ZXh0LW1kLWNlbnRlciB7Cgl0ZXh0LWFsaWduOiBjZW50ZXIhaW1wb3J0YW50Cn0KfQpAbWVkaWEgKG1pbi13aWR0aDo5OTJweCkgewouZmxvYXQtbGctc3RhcnQgewoJZmxvYXQ6IGxlZnQhaW1wb3J0YW50Cn0KLmZsb2F0LWxnLWVuZCB7CglmbG9hdDogcmlnaHQhaW1wb3J0YW50Cn0KLmZsb2F0LWxnLW5vbmUgewoJZmxvYXQ6IG5vbmUhaW1wb3J0YW50Cn0KLmQtbGctaW5saW5lIHsKCWRpc3BsYXk6IGlubGluZSFpbXBvcnRhbnQKfQouZC1sZy1pbmxpbmUtYmxvY2sgewoJZGlzcGxheTogaW5saW5lLWJsb2NrIWltcG9ydGFudAp9Ci5kLWxnLWJsb2NrIHsKCWRpc3BsYXk6IGJsb2NrIWltcG9ydGFudAp9Ci5kLWxnLWdyaWQgewoJZGlzcGxheTogZ3JpZCFpbXBvcnRhbnQKfQouZC1sZy10YWJsZSB7CglkaXNwbGF5OiB0YWJsZSFpbXBvcnRhbnQKfQouZC1sZy10YWJsZS1yb3cgewoJZGlzcGxheTogdGFibGUtcm93IWltcG9ydGFudAp9Ci5kLWxnLXRhYmxlLWNlbGwgewoJZGlzcGxheTogdGFibGUtY2VsbCFpbXBvcnRhbnQKfQouZC1sZy1mbGV4IHsKCWRpc3BsYXk6IGZsZXghaW1wb3J0YW50Cn0KLmQtbGctaW5saW5lLWZsZXggewoJZGlzcGxheTogaW5saW5lLWZsZXghaW1wb3J0YW50Cn0KLmQtbGctbm9uZSB7CglkaXNwbGF5OiBub25lIWltcG9ydGFudAp9Ci5mbGV4LWxnLWZpbGwgewoJZmxleDogMSAxIGF1dG8haW1wb3J0YW50Cn0KLmZsZXgtbGctcm93IHsKCWZsZXgtZGlyZWN0aW9uOiByb3chaW1wb3J0YW50Cn0KLmZsZXgtbGctY29sdW1uIHsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4haW1wb3J0YW50Cn0KLmZsZXgtbGctcm93LXJldmVyc2UgewoJZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlIWltcG9ydGFudAp9Ci5mbGV4LWxnLWNvbHVtbi1yZXZlcnNlIHsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnQKfQouZmxleC1sZy1ncm93LTAgewoJZmxleC1ncm93OiAwIWltcG9ydGFudAp9Ci5mbGV4LWxnLWdyb3ctMSB7CglmbGV4LWdyb3c6IDEhaW1wb3J0YW50Cn0KLmZsZXgtbGctc2hyaW5rLTAgewoJZmxleC1zaHJpbms6IDAhaW1wb3J0YW50Cn0KLmZsZXgtbGctc2hyaW5rLTEgewoJZmxleC1zaHJpbms6IDEhaW1wb3J0YW50Cn0KLmZsZXgtbGctd3JhcCB7CglmbGV4LXdyYXA6IHdyYXAhaW1wb3J0YW50Cn0KLmZsZXgtbGctbm93cmFwIHsKCWZsZXgtd3JhcDogbm93cmFwIWltcG9ydGFudAp9Ci5mbGV4LWxnLXdyYXAtcmV2ZXJzZSB7CglmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSFpbXBvcnRhbnQKfQouZ2FwLWxnLTAgewoJZ2FwOiAwIWltcG9ydGFudAp9Ci5nYXAtbGctMSB7CmdhcDouMjVyZW0haW1wb3J0YW50Cn0KLmdhcC1sZy0yIHsKZ2FwOi41cmVtIWltcG9ydGFudAp9Ci5nYXAtbGctMyB7CglnYXA6IDFyZW0haW1wb3J0YW50Cn0KLmdhcC1sZy00IHsKCWdhcDogMS41cmVtIWltcG9ydGFudAp9Ci5nYXAtbGctNSB7CglnYXA6IDNyZW0haW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1sZy1zdGFydCB7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQhaW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC1sZy1lbmQgewoJanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LWxnLWJldHdlZW4gewoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtbGctYXJvdW5kIHsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQtbGctZXZlbmx5IHsKCWp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5IWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy1sZy1zdGFydCB7CglhbGlnbi1pdGVtczogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMtbGctZW5kIHsKCWFsaWduLWl0ZW1zOiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMtbGctY2VudGVyIHsKCWFsaWduLWl0ZW1zOiBjZW50ZXIhaW1wb3J0YW50Cn0KLmFsaWduLWl0ZW1zLWxnLWJhc2VsaW5lIHsKCWFsaWduLWl0ZW1zOiBiYXNlbGluZSFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMtbGctc3RyZXRjaCB7CglhbGlnbi1pdGVtczogc3RyZXRjaCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC1sZy1zdGFydCB7CglhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LWxnLWVuZCB7CglhbGlnbi1jb250ZW50OiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC1sZy1jZW50ZXIgewoJYWxpZ24tY29udGVudDogY2VudGVyIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LWxnLWJldHdlZW4gewoJYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC1sZy1hcm91bmQgewoJYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2ggewoJYWxpZ24tY29udGVudDogc3RyZXRjaCFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1sZy1hdXRvIHsKCWFsaWduLXNlbGY6IGF1dG8haW1wb3J0YW50Cn0KLmFsaWduLXNlbGYtbGctc3RhcnQgewoJYWxpZ24tc2VsZjogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1sZy1lbmQgewoJYWxpZ24tc2VsZjogZmxleC1lbmQhaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYtbGctY2VudGVyIHsKCWFsaWduLXNlbGY6IGNlbnRlciFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1sZy1iYXNlbGluZSB7CglhbGlnbi1zZWxmOiBiYXNlbGluZSFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi1sZy1zdHJldGNoIHsKCWFsaWduLXNlbGY6IHN0cmV0Y2ghaW1wb3J0YW50Cn0KLm9yZGVyLWxnLWZpcnN0IHsKCW9yZGVyOiAtMSFpbXBvcnRhbnQKfQoub3JkZXItbGctMCB7CglvcmRlcjogMCFpbXBvcnRhbnQKfQoub3JkZXItbGctMSB7CglvcmRlcjogMSFpbXBvcnRhbnQKfQoub3JkZXItbGctMiB7CglvcmRlcjogMiFpbXBvcnRhbnQKfQoub3JkZXItbGctMyB7CglvcmRlcjogMyFpbXBvcnRhbnQKfQoub3JkZXItbGctNCB7CglvcmRlcjogNCFpbXBvcnRhbnQKfQoub3JkZXItbGctNSB7CglvcmRlcjogNSFpbXBvcnRhbnQKfQoub3JkZXItbGctbGFzdCB7CglvcmRlcjogNiFpbXBvcnRhbnQKfQoubS1sZy0wIHsKCW1hcmdpbjogMCFpbXBvcnRhbnQKfQoubS1sZy0xIHsKbWFyZ2luOi4yNXJlbSFpbXBvcnRhbnQKfQoubS1sZy0yIHsKbWFyZ2luOi41cmVtIWltcG9ydGFudAp9Ci5tLWxnLTMgewoJbWFyZ2luOiAxcmVtIWltcG9ydGFudAp9Ci5tLWxnLTQgewoJbWFyZ2luOiAxLjVyZW0haW1wb3J0YW50Cn0KLm0tbGctNSB7CgltYXJnaW46IDNyZW0haW1wb3J0YW50Cn0KLm0tbGctYXV0byB7CgltYXJnaW46IGF1dG8haW1wb3J0YW50Cn0KLm14LWxnLTAgewoJbWFyZ2luLXJpZ2h0OiAwIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudAp9Ci5teC1sZy0xIHsKbWFyZ2luLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnQKfQoubXgtbGctMiB7Cm1hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5teC1sZy0zIHsKCW1hcmdpbi1yaWdodDogMXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogMXJlbSFpbXBvcnRhbnQKfQoubXgtbGctNCB7CgltYXJnaW4tcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5teC1sZy01IHsKCW1hcmdpbi1yaWdodDogM3JlbSFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoubXgtbGctYXV0byB7CgltYXJnaW4tcmlnaHQ6IGF1dG8haW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IGF1dG8haW1wb3J0YW50Cn0KLm15LWxnLTAgewoJbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAwIWltcG9ydGFudAp9Ci5teS1sZy0xIHsKbWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50OwptYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoubXktbGctMiB7Cm1hcmdpbi10b3A6LjVyZW0haW1wb3J0YW50OwptYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5teS1sZy0zIHsKCW1hcmdpbi10b3A6IDFyZW0haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoubXktbGctNCB7CgltYXJnaW4tdG9wOiAxLjVyZW0haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5teS1sZy01IHsKCW1hcmdpbi10b3A6IDNyZW0haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoubXktbGctYXV0byB7CgltYXJnaW4tdG9wOiBhdXRvIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IGF1dG8haW1wb3J0YW50Cn0KLm10LWxnLTAgewoJbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQKfQoubXQtbGctMSB7Cm1hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudAp9Ci5tdC1sZy0yIHsKbWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQKfQoubXQtbGctMyB7CgltYXJnaW4tdG9wOiAxcmVtIWltcG9ydGFudAp9Ci5tdC1sZy00IHsKCW1hcmdpbi10b3A6IDEuNXJlbSFpbXBvcnRhbnQKfQoubXQtbGctNSB7CgltYXJnaW4tdG9wOiAzcmVtIWltcG9ydGFudAp9Ci5tdC1sZy1hdXRvIHsKCW1hcmdpbi10b3A6IGF1dG8haW1wb3J0YW50Cn0KLm1lLWxnLTAgewoJbWFyZ2luLXJpZ2h0OiAwIWltcG9ydGFudAp9Ci5tZS1sZy0xIHsKbWFyZ2luLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQKfQoubWUtbGctMiB7Cm1hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQKfQoubWUtbGctMyB7CgltYXJnaW4tcmlnaHQ6IDFyZW0haW1wb3J0YW50Cn0KLm1lLWxnLTQgewoJbWFyZ2luLXJpZ2h0OiAxLjVyZW0haW1wb3J0YW50Cn0KLm1lLWxnLTUgewoJbWFyZ2luLXJpZ2h0OiAzcmVtIWltcG9ydGFudAp9Ci5tZS1sZy1hdXRvIHsKCW1hcmdpbi1yaWdodDogYXV0byFpbXBvcnRhbnQKfQoubWItbGctMCB7CgltYXJnaW4tYm90dG9tOiAwIWltcG9ydGFudAp9Ci5tYi1sZy0xIHsKbWFyZ2luLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLm1iLWxnLTIgewptYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5tYi1sZy0zIHsKCW1hcmdpbi1ib3R0b206IDFyZW0haW1wb3J0YW50Cn0KLm1iLWxnLTQgewoJbWFyZ2luLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5tYi1sZy01IHsKCW1hcmdpbi1ib3R0b206IDNyZW0haW1wb3J0YW50Cn0KLm1iLWxnLWF1dG8gewoJbWFyZ2luLWJvdHRvbTogYXV0byFpbXBvcnRhbnQKfQoubXMtbGctMCB7CgltYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQKfQoubXMtbGctMSB7Cm1hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnQKfQoubXMtbGctMiB7Cm1hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5tcy1sZy0zIHsKCW1hcmdpbi1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5tcy1sZy00IHsKCW1hcmdpbi1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLm1zLWxnLTUgewoJbWFyZ2luLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLm1zLWxnLWF1dG8gewoJbWFyZ2luLWxlZnQ6IGF1dG8haW1wb3J0YW50Cn0KLnAtbGctMCB7CglwYWRkaW5nOiAwIWltcG9ydGFudAp9Ci5wLWxnLTEgewpwYWRkaW5nOi4yNXJlbSFpbXBvcnRhbnQKfQoucC1sZy0yIHsKcGFkZGluZzouNXJlbSFpbXBvcnRhbnQKfQoucC1sZy0zIHsKCXBhZGRpbmc6IDFyZW0haW1wb3J0YW50Cn0KLnAtbGctNCB7CglwYWRkaW5nOiAxLjVyZW0haW1wb3J0YW50Cn0KLnAtbGctNSB7CglwYWRkaW5nOiAzcmVtIWltcG9ydGFudAp9Ci5weC1sZy0wIHsKCXBhZGRpbmctcmlnaHQ6IDAhaW1wb3J0YW50OwoJcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudAp9Ci5weC1sZy0xIHsKcGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50OwpwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5weC1sZy0yIHsKcGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnQKfQoucHgtbGctMyB7CglwYWRkaW5nLXJpZ2h0OiAxcmVtIWltcG9ydGFudDsKCXBhZGRpbmctbGVmdDogMXJlbSFpbXBvcnRhbnQKfQoucHgtbGctNCB7CglwYWRkaW5nLXJpZ2h0OiAxLjVyZW0haW1wb3J0YW50OwoJcGFkZGluZy1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLnB4LWxnLTUgewoJcGFkZGluZy1yaWdodDogM3JlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLnB5LWxnLTAgewoJcGFkZGluZy10b3A6IDAhaW1wb3J0YW50OwoJcGFkZGluZy1ib3R0b206IDAhaW1wb3J0YW50Cn0KLnB5LWxnLTEgewpwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50OwpwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLnB5LWxnLTIgewpwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5weS1sZy0zIHsKCXBhZGRpbmctdG9wOiAxcmVtIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5weS1sZy00IHsKCXBhZGRpbmctdG9wOiAxLjVyZW0haW1wb3J0YW50OwoJcGFkZGluZy1ib3R0b206IDEuNXJlbSFpbXBvcnRhbnQKfQoucHktbGctNSB7CglwYWRkaW5nLXRvcDogM3JlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoucHQtbGctMCB7CglwYWRkaW5nLXRvcDogMCFpbXBvcnRhbnQKfQoucHQtbGctMSB7CnBhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnQKfQoucHQtbGctMiB7CnBhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudAp9Ci5wdC1sZy0zIHsKCXBhZGRpbmctdG9wOiAxcmVtIWltcG9ydGFudAp9Ci5wdC1sZy00IHsKCXBhZGRpbmctdG9wOiAxLjVyZW0haW1wb3J0YW50Cn0KLnB0LWxnLTUgewoJcGFkZGluZy10b3A6IDNyZW0haW1wb3J0YW50Cn0KLnBlLWxnLTAgewoJcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQKfQoucGUtbGctMSB7CnBhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudAp9Ci5wZS1sZy0yIHsKcGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQKfQoucGUtbGctMyB7CglwYWRkaW5nLXJpZ2h0OiAxcmVtIWltcG9ydGFudAp9Ci5wZS1sZy00IHsKCXBhZGRpbmctcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoucGUtbGctNSB7CglwYWRkaW5nLXJpZ2h0OiAzcmVtIWltcG9ydGFudAp9Ci5wYi1sZy0wIHsKCXBhZGRpbmctYm90dG9tOiAwIWltcG9ydGFudAp9Ci5wYi1sZy0xIHsKcGFkZGluZy1ib3R0b206LjI1cmVtIWltcG9ydGFudAp9Ci5wYi1sZy0yIHsKcGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLnBiLWxnLTMgewoJcGFkZGluZy1ib3R0b206IDFyZW0haW1wb3J0YW50Cn0KLnBiLWxnLTQgewoJcGFkZGluZy1ib3R0b206IDEuNXJlbSFpbXBvcnRhbnQKfQoucGItbGctNSB7CglwYWRkaW5nLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoucHMtbGctMCB7CglwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50Cn0KLnBzLWxnLTEgewpwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5wcy1sZy0yIHsKcGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5wcy1sZy0zIHsKCXBhZGRpbmctbGVmdDogMXJlbSFpbXBvcnRhbnQKfQoucHMtbGctNCB7CglwYWRkaW5nLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHMtbGctNSB7CglwYWRkaW5nLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLnRleHQtbGctc3RhcnQgewoJdGV4dC1hbGlnbjogbGVmdCFpbXBvcnRhbnQKfQoudGV4dC1sZy1lbmQgewoJdGV4dC1hbGlnbjogcmlnaHQhaW1wb3J0YW50Cn0KLnRleHQtbGctY2VudGVyIHsKCXRleHQtYWxpZ246IGNlbnRlciFpbXBvcnRhbnQKfQp9CkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCkgewouZmxvYXQteGwtc3RhcnQgewoJZmxvYXQ6IGxlZnQhaW1wb3J0YW50Cn0KLmZsb2F0LXhsLWVuZCB7CglmbG9hdDogcmlnaHQhaW1wb3J0YW50Cn0KLmZsb2F0LXhsLW5vbmUgewoJZmxvYXQ6IG5vbmUhaW1wb3J0YW50Cn0KLmQteGwtaW5saW5lIHsKCWRpc3BsYXk6IGlubGluZSFpbXBvcnRhbnQKfQouZC14bC1pbmxpbmUtYmxvY2sgewoJZGlzcGxheTogaW5saW5lLWJsb2NrIWltcG9ydGFudAp9Ci5kLXhsLWJsb2NrIHsKCWRpc3BsYXk6IGJsb2NrIWltcG9ydGFudAp9Ci5kLXhsLWdyaWQgewoJZGlzcGxheTogZ3JpZCFpbXBvcnRhbnQKfQouZC14bC10YWJsZSB7CglkaXNwbGF5OiB0YWJsZSFpbXBvcnRhbnQKfQouZC14bC10YWJsZS1yb3cgewoJZGlzcGxheTogdGFibGUtcm93IWltcG9ydGFudAp9Ci5kLXhsLXRhYmxlLWNlbGwgewoJZGlzcGxheTogdGFibGUtY2VsbCFpbXBvcnRhbnQKfQouZC14bC1mbGV4IHsKCWRpc3BsYXk6IGZsZXghaW1wb3J0YW50Cn0KLmQteGwtaW5saW5lLWZsZXggewoJZGlzcGxheTogaW5saW5lLWZsZXghaW1wb3J0YW50Cn0KLmQteGwtbm9uZSB7CglkaXNwbGF5OiBub25lIWltcG9ydGFudAp9Ci5mbGV4LXhsLWZpbGwgewoJZmxleDogMSAxIGF1dG8haW1wb3J0YW50Cn0KLmZsZXgteGwtcm93IHsKCWZsZXgtZGlyZWN0aW9uOiByb3chaW1wb3J0YW50Cn0KLmZsZXgteGwtY29sdW1uIHsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4haW1wb3J0YW50Cn0KLmZsZXgteGwtcm93LXJldmVyc2UgewoJZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlIWltcG9ydGFudAp9Ci5mbGV4LXhsLWNvbHVtbi1yZXZlcnNlIHsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnQKfQouZmxleC14bC1ncm93LTAgewoJZmxleC1ncm93OiAwIWltcG9ydGFudAp9Ci5mbGV4LXhsLWdyb3ctMSB7CglmbGV4LWdyb3c6IDEhaW1wb3J0YW50Cn0KLmZsZXgteGwtc2hyaW5rLTAgewoJZmxleC1zaHJpbms6IDAhaW1wb3J0YW50Cn0KLmZsZXgteGwtc2hyaW5rLTEgewoJZmxleC1zaHJpbms6IDEhaW1wb3J0YW50Cn0KLmZsZXgteGwtd3JhcCB7CglmbGV4LXdyYXA6IHdyYXAhaW1wb3J0YW50Cn0KLmZsZXgteGwtbm93cmFwIHsKCWZsZXgtd3JhcDogbm93cmFwIWltcG9ydGFudAp9Ci5mbGV4LXhsLXdyYXAtcmV2ZXJzZSB7CglmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSFpbXBvcnRhbnQKfQouZ2FwLXhsLTAgewoJZ2FwOiAwIWltcG9ydGFudAp9Ci5nYXAteGwtMSB7CmdhcDouMjVyZW0haW1wb3J0YW50Cn0KLmdhcC14bC0yIHsKZ2FwOi41cmVtIWltcG9ydGFudAp9Ci5nYXAteGwtMyB7CglnYXA6IDFyZW0haW1wb3J0YW50Cn0KLmdhcC14bC00IHsKCWdhcDogMS41cmVtIWltcG9ydGFudAp9Ci5nYXAteGwtNSB7CglnYXA6IDNyZW0haW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7CglqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQhaW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC14bC1lbmQgewoJanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LXhsLWNlbnRlciB7CglqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LXhsLWJldHdlZW4gewoJanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQteGwtZXZlbmx5IHsKCWp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5IWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy14bC1zdGFydCB7CglhbGlnbi1pdGVtczogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMteGwtZW5kIHsKCWFsaWduLWl0ZW1zOiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMteGwtY2VudGVyIHsKCWFsaWduLWl0ZW1zOiBjZW50ZXIhaW1wb3J0YW50Cn0KLmFsaWduLWl0ZW1zLXhsLWJhc2VsaW5lIHsKCWFsaWduLWl0ZW1zOiBiYXNlbGluZSFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7CglhbGlnbi1pdGVtczogc3RyZXRjaCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC14bC1zdGFydCB7CglhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXhsLWVuZCB7CglhbGlnbi1jb250ZW50OiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC14bC1jZW50ZXIgewoJYWxpZ24tY29udGVudDogY2VudGVyIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXhsLWJldHdlZW4gewoJYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC14bC1hcm91bmQgewoJYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2ggewoJYWxpZ24tY29udGVudDogc3RyZXRjaCFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi14bC1hdXRvIHsKCWFsaWduLXNlbGY6IGF1dG8haW1wb3J0YW50Cn0KLmFsaWduLXNlbGYteGwtc3RhcnQgewoJYWxpZ24tc2VsZjogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi14bC1lbmQgewoJYWxpZ24tc2VsZjogZmxleC1lbmQhaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYteGwtY2VudGVyIHsKCWFsaWduLXNlbGY6IGNlbnRlciFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi14bC1iYXNlbGluZSB7CglhbGlnbi1zZWxmOiBiYXNlbGluZSFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi14bC1zdHJldGNoIHsKCWFsaWduLXNlbGY6IHN0cmV0Y2ghaW1wb3J0YW50Cn0KLm9yZGVyLXhsLWZpcnN0IHsKCW9yZGVyOiAtMSFpbXBvcnRhbnQKfQoub3JkZXIteGwtMCB7CglvcmRlcjogMCFpbXBvcnRhbnQKfQoub3JkZXIteGwtMSB7CglvcmRlcjogMSFpbXBvcnRhbnQKfQoub3JkZXIteGwtMiB7CglvcmRlcjogMiFpbXBvcnRhbnQKfQoub3JkZXIteGwtMyB7CglvcmRlcjogMyFpbXBvcnRhbnQKfQoub3JkZXIteGwtNCB7CglvcmRlcjogNCFpbXBvcnRhbnQKfQoub3JkZXIteGwtNSB7CglvcmRlcjogNSFpbXBvcnRhbnQKfQoub3JkZXIteGwtbGFzdCB7CglvcmRlcjogNiFpbXBvcnRhbnQKfQoubS14bC0wIHsKCW1hcmdpbjogMCFpbXBvcnRhbnQKfQoubS14bC0xIHsKbWFyZ2luOi4yNXJlbSFpbXBvcnRhbnQKfQoubS14bC0yIHsKbWFyZ2luOi41cmVtIWltcG9ydGFudAp9Ci5tLXhsLTMgewoJbWFyZ2luOiAxcmVtIWltcG9ydGFudAp9Ci5tLXhsLTQgewoJbWFyZ2luOiAxLjVyZW0haW1wb3J0YW50Cn0KLm0teGwtNSB7CgltYXJnaW46IDNyZW0haW1wb3J0YW50Cn0KLm0teGwtYXV0byB7CgltYXJnaW46IGF1dG8haW1wb3J0YW50Cn0KLm14LXhsLTAgewoJbWFyZ2luLXJpZ2h0OiAwIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAwIWltcG9ydGFudAp9Ci5teC14bC0xIHsKbWFyZ2luLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnQKfQoubXgteGwtMiB7Cm1hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5teC14bC0zIHsKCW1hcmdpbi1yaWdodDogMXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogMXJlbSFpbXBvcnRhbnQKfQoubXgteGwtNCB7CgltYXJnaW4tcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5teC14bC01IHsKCW1hcmdpbi1yaWdodDogM3JlbSFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoubXgteGwtYXV0byB7CgltYXJnaW4tcmlnaHQ6IGF1dG8haW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IGF1dG8haW1wb3J0YW50Cn0KLm15LXhsLTAgewoJbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAwIWltcG9ydGFudAp9Ci5teS14bC0xIHsKbWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50OwptYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoubXkteGwtMiB7Cm1hcmdpbi10b3A6LjVyZW0haW1wb3J0YW50OwptYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5teS14bC0zIHsKCW1hcmdpbi10b3A6IDFyZW0haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoubXkteGwtNCB7CgltYXJnaW4tdG9wOiAxLjVyZW0haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5teS14bC01IHsKCW1hcmdpbi10b3A6IDNyZW0haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoubXkteGwtYXV0byB7CgltYXJnaW4tdG9wOiBhdXRvIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IGF1dG8haW1wb3J0YW50Cn0KLm10LXhsLTAgewoJbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQKfQoubXQteGwtMSB7Cm1hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudAp9Ci5tdC14bC0yIHsKbWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnQKfQoubXQteGwtMyB7CgltYXJnaW4tdG9wOiAxcmVtIWltcG9ydGFudAp9Ci5tdC14bC00IHsKCW1hcmdpbi10b3A6IDEuNXJlbSFpbXBvcnRhbnQKfQoubXQteGwtNSB7CgltYXJnaW4tdG9wOiAzcmVtIWltcG9ydGFudAp9Ci5tdC14bC1hdXRvIHsKCW1hcmdpbi10b3A6IGF1dG8haW1wb3J0YW50Cn0KLm1lLXhsLTAgewoJbWFyZ2luLXJpZ2h0OiAwIWltcG9ydGFudAp9Ci5tZS14bC0xIHsKbWFyZ2luLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQKfQoubWUteGwtMiB7Cm1hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQKfQoubWUteGwtMyB7CgltYXJnaW4tcmlnaHQ6IDFyZW0haW1wb3J0YW50Cn0KLm1lLXhsLTQgewoJbWFyZ2luLXJpZ2h0OiAxLjVyZW0haW1wb3J0YW50Cn0KLm1lLXhsLTUgewoJbWFyZ2luLXJpZ2h0OiAzcmVtIWltcG9ydGFudAp9Ci5tZS14bC1hdXRvIHsKCW1hcmdpbi1yaWdodDogYXV0byFpbXBvcnRhbnQKfQoubWIteGwtMCB7CgltYXJnaW4tYm90dG9tOiAwIWltcG9ydGFudAp9Ci5tYi14bC0xIHsKbWFyZ2luLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLm1iLXhsLTIgewptYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5tYi14bC0zIHsKCW1hcmdpbi1ib3R0b206IDFyZW0haW1wb3J0YW50Cn0KLm1iLXhsLTQgewoJbWFyZ2luLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5tYi14bC01IHsKCW1hcmdpbi1ib3R0b206IDNyZW0haW1wb3J0YW50Cn0KLm1iLXhsLWF1dG8gewoJbWFyZ2luLWJvdHRvbTogYXV0byFpbXBvcnRhbnQKfQoubXMteGwtMCB7CgltYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQKfQoubXMteGwtMSB7Cm1hcmdpbi1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnQKfQoubXMteGwtMiB7Cm1hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5tcy14bC0zIHsKCW1hcmdpbi1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5tcy14bC00IHsKCW1hcmdpbi1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLm1zLXhsLTUgewoJbWFyZ2luLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLm1zLXhsLWF1dG8gewoJbWFyZ2luLWxlZnQ6IGF1dG8haW1wb3J0YW50Cn0KLnAteGwtMCB7CglwYWRkaW5nOiAwIWltcG9ydGFudAp9Ci5wLXhsLTEgewpwYWRkaW5nOi4yNXJlbSFpbXBvcnRhbnQKfQoucC14bC0yIHsKcGFkZGluZzouNXJlbSFpbXBvcnRhbnQKfQoucC14bC0zIHsKCXBhZGRpbmc6IDFyZW0haW1wb3J0YW50Cn0KLnAteGwtNCB7CglwYWRkaW5nOiAxLjVyZW0haW1wb3J0YW50Cn0KLnAteGwtNSB7CglwYWRkaW5nOiAzcmVtIWltcG9ydGFudAp9Ci5weC14bC0wIHsKCXBhZGRpbmctcmlnaHQ6IDAhaW1wb3J0YW50OwoJcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudAp9Ci5weC14bC0xIHsKcGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50OwpwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5weC14bC0yIHsKcGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnQKfQoucHgteGwtMyB7CglwYWRkaW5nLXJpZ2h0OiAxcmVtIWltcG9ydGFudDsKCXBhZGRpbmctbGVmdDogMXJlbSFpbXBvcnRhbnQKfQoucHgteGwtNCB7CglwYWRkaW5nLXJpZ2h0OiAxLjVyZW0haW1wb3J0YW50OwoJcGFkZGluZy1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLnB4LXhsLTUgewoJcGFkZGluZy1yaWdodDogM3JlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLnB5LXhsLTAgewoJcGFkZGluZy10b3A6IDAhaW1wb3J0YW50OwoJcGFkZGluZy1ib3R0b206IDAhaW1wb3J0YW50Cn0KLnB5LXhsLTEgewpwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50OwpwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLnB5LXhsLTIgewpwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5weS14bC0zIHsKCXBhZGRpbmctdG9wOiAxcmVtIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5weS14bC00IHsKCXBhZGRpbmctdG9wOiAxLjVyZW0haW1wb3J0YW50OwoJcGFkZGluZy1ib3R0b206IDEuNXJlbSFpbXBvcnRhbnQKfQoucHkteGwtNSB7CglwYWRkaW5nLXRvcDogM3JlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoucHQteGwtMCB7CglwYWRkaW5nLXRvcDogMCFpbXBvcnRhbnQKfQoucHQteGwtMSB7CnBhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnQKfQoucHQteGwtMiB7CnBhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudAp9Ci5wdC14bC0zIHsKCXBhZGRpbmctdG9wOiAxcmVtIWltcG9ydGFudAp9Ci5wdC14bC00IHsKCXBhZGRpbmctdG9wOiAxLjVyZW0haW1wb3J0YW50Cn0KLnB0LXhsLTUgewoJcGFkZGluZy10b3A6IDNyZW0haW1wb3J0YW50Cn0KLnBlLXhsLTAgewoJcGFkZGluZy1yaWdodDogMCFpbXBvcnRhbnQKfQoucGUteGwtMSB7CnBhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudAp9Ci5wZS14bC0yIHsKcGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQKfQoucGUteGwtMyB7CglwYWRkaW5nLXJpZ2h0OiAxcmVtIWltcG9ydGFudAp9Ci5wZS14bC00IHsKCXBhZGRpbmctcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoucGUteGwtNSB7CglwYWRkaW5nLXJpZ2h0OiAzcmVtIWltcG9ydGFudAp9Ci5wYi14bC0wIHsKCXBhZGRpbmctYm90dG9tOiAwIWltcG9ydGFudAp9Ci5wYi14bC0xIHsKcGFkZGluZy1ib3R0b206LjI1cmVtIWltcG9ydGFudAp9Ci5wYi14bC0yIHsKcGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLnBiLXhsLTMgewoJcGFkZGluZy1ib3R0b206IDFyZW0haW1wb3J0YW50Cn0KLnBiLXhsLTQgewoJcGFkZGluZy1ib3R0b206IDEuNXJlbSFpbXBvcnRhbnQKfQoucGIteGwtNSB7CglwYWRkaW5nLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoucHMteGwtMCB7CglwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50Cn0KLnBzLXhsLTEgewpwYWRkaW5nLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5wcy14bC0yIHsKcGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5wcy14bC0zIHsKCXBhZGRpbmctbGVmdDogMXJlbSFpbXBvcnRhbnQKfQoucHMteGwtNCB7CglwYWRkaW5nLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHMteGwtNSB7CglwYWRkaW5nLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLnRleHQteGwtc3RhcnQgewoJdGV4dC1hbGlnbjogbGVmdCFpbXBvcnRhbnQKfQoudGV4dC14bC1lbmQgewoJdGV4dC1hbGlnbjogcmlnaHQhaW1wb3J0YW50Cn0KLnRleHQteGwtY2VudGVyIHsKCXRleHQtYWxpZ246IGNlbnRlciFpbXBvcnRhbnQKfQp9CkBtZWRpYSAobWluLXdpZHRoOjE0MDBweCkgewouZmxvYXQteHhsLXN0YXJ0IHsKCWZsb2F0OiBsZWZ0IWltcG9ydGFudAp9Ci5mbG9hdC14eGwtZW5kIHsKCWZsb2F0OiByaWdodCFpbXBvcnRhbnQKfQouZmxvYXQteHhsLW5vbmUgewoJZmxvYXQ6IG5vbmUhaW1wb3J0YW50Cn0KLmQteHhsLWlubGluZSB7CglkaXNwbGF5OiBpbmxpbmUhaW1wb3J0YW50Cn0KLmQteHhsLWlubGluZS1ibG9jayB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2shaW1wb3J0YW50Cn0KLmQteHhsLWJsb2NrIHsKCWRpc3BsYXk6IGJsb2NrIWltcG9ydGFudAp9Ci5kLXh4bC1ncmlkIHsKCWRpc3BsYXk6IGdyaWQhaW1wb3J0YW50Cn0KLmQteHhsLXRhYmxlIHsKCWRpc3BsYXk6IHRhYmxlIWltcG9ydGFudAp9Ci5kLXh4bC10YWJsZS1yb3cgewoJZGlzcGxheTogdGFibGUtcm93IWltcG9ydGFudAp9Ci5kLXh4bC10YWJsZS1jZWxsIHsKCWRpc3BsYXk6IHRhYmxlLWNlbGwhaW1wb3J0YW50Cn0KLmQteHhsLWZsZXggewoJZGlzcGxheTogZmxleCFpbXBvcnRhbnQKfQouZC14eGwtaW5saW5lLWZsZXggewoJZGlzcGxheTogaW5saW5lLWZsZXghaW1wb3J0YW50Cn0KLmQteHhsLW5vbmUgewoJZGlzcGxheTogbm9uZSFpbXBvcnRhbnQKfQouZmxleC14eGwtZmlsbCB7CglmbGV4OiAxIDEgYXV0byFpbXBvcnRhbnQKfQouZmxleC14eGwtcm93IHsKCWZsZXgtZGlyZWN0aW9uOiByb3chaW1wb3J0YW50Cn0KLmZsZXgteHhsLWNvbHVtbiB7CglmbGV4LWRpcmVjdGlvbjogY29sdW1uIWltcG9ydGFudAp9Ci5mbGV4LXh4bC1yb3ctcmV2ZXJzZSB7CglmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UhaW1wb3J0YW50Cn0KLmZsZXgteHhsLWNvbHVtbi1yZXZlcnNlIHsKCWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnQKfQouZmxleC14eGwtZ3Jvdy0wIHsKCWZsZXgtZ3JvdzogMCFpbXBvcnRhbnQKfQouZmxleC14eGwtZ3Jvdy0xIHsKCWZsZXgtZ3JvdzogMSFpbXBvcnRhbnQKfQouZmxleC14eGwtc2hyaW5rLTAgewoJZmxleC1zaHJpbms6IDAhaW1wb3J0YW50Cn0KLmZsZXgteHhsLXNocmluay0xIHsKCWZsZXgtc2hyaW5rOiAxIWltcG9ydGFudAp9Ci5mbGV4LXh4bC13cmFwIHsKCWZsZXgtd3JhcDogd3JhcCFpbXBvcnRhbnQKfQouZmxleC14eGwtbm93cmFwIHsKCWZsZXgtd3JhcDogbm93cmFwIWltcG9ydGFudAp9Ci5mbGV4LXh4bC13cmFwLXJldmVyc2UgewoJZmxleC13cmFwOiB3cmFwLXJldmVyc2UhaW1wb3J0YW50Cn0KLmdhcC14eGwtMCB7CglnYXA6IDAhaW1wb3J0YW50Cn0KLmdhcC14eGwtMSB7CmdhcDouMjVyZW0haW1wb3J0YW50Cn0KLmdhcC14eGwtMiB7CmdhcDouNXJlbSFpbXBvcnRhbnQKfQouZ2FwLXh4bC0zIHsKCWdhcDogMXJlbSFpbXBvcnRhbnQKfQouZ2FwLXh4bC00IHsKCWdhcDogMS41cmVtIWltcG9ydGFudAp9Ci5nYXAteHhsLTUgewoJZ2FwOiAzcmVtIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQteHhsLXN0YXJ0IHsKCWp1c3RpZnktY29udGVudDogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LXh4bC1lbmQgewoJanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouanVzdGlmeS1jb250ZW50LXh4bC1jZW50ZXIgewoJanVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC14eGwtYmV0d2VlbiB7CglqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4haW1wb3J0YW50Cn0KLmp1c3RpZnktY29udGVudC14eGwtYXJvdW5kIHsKCWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kIWltcG9ydGFudAp9Ci5qdXN0aWZ5LWNvbnRlbnQteHhsLWV2ZW5seSB7CglqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMteHhsLXN0YXJ0IHsKCWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy14eGwtZW5kIHsKCWFsaWduLWl0ZW1zOiBmbGV4LWVuZCFpbXBvcnRhbnQKfQouYWxpZ24taXRlbXMteHhsLWNlbnRlciB7CglhbGlnbi1pdGVtczogY2VudGVyIWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy14eGwtYmFzZWxpbmUgewoJYWxpZ24taXRlbXM6IGJhc2VsaW5lIWltcG9ydGFudAp9Ci5hbGlnbi1pdGVtcy14eGwtc3RyZXRjaCB7CglhbGlnbi1pdGVtczogc3RyZXRjaCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC14eGwtc3RhcnQgewoJYWxpZ24tY29udGVudDogZmxleC1zdGFydCFpbXBvcnRhbnQKfQouYWxpZ24tY29udGVudC14eGwtZW5kIHsKCWFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXh4bC1jZW50ZXIgewoJYWxpZ24tY29udGVudDogY2VudGVyIWltcG9ydGFudAp9Ci5hbGlnbi1jb250ZW50LXh4bC1iZXR3ZWVuIHsKCWFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4haW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQteHhsLWFyb3VuZCB7CglhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQhaW1wb3J0YW50Cn0KLmFsaWduLWNvbnRlbnQteHhsLXN0cmV0Y2ggewoJYWxpZ24tY29udGVudDogc3RyZXRjaCFpbXBvcnRhbnQKfQouYWxpZ24tc2VsZi14eGwtYXV0byB7CglhbGlnbi1zZWxmOiBhdXRvIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXh4bC1zdGFydCB7CglhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0IWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXh4bC1lbmQgewoJYWxpZ24tc2VsZjogZmxleC1lbmQhaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYteHhsLWNlbnRlciB7CglhbGlnbi1zZWxmOiBjZW50ZXIhaW1wb3J0YW50Cn0KLmFsaWduLXNlbGYteHhsLWJhc2VsaW5lIHsKCWFsaWduLXNlbGY6IGJhc2VsaW5lIWltcG9ydGFudAp9Ci5hbGlnbi1zZWxmLXh4bC1zdHJldGNoIHsKCWFsaWduLXNlbGY6IHN0cmV0Y2ghaW1wb3J0YW50Cn0KLm9yZGVyLXh4bC1maXJzdCB7CglvcmRlcjogLTEhaW1wb3J0YW50Cn0KLm9yZGVyLXh4bC0wIHsKCW9yZGVyOiAwIWltcG9ydGFudAp9Ci5vcmRlci14eGwtMSB7CglvcmRlcjogMSFpbXBvcnRhbnQKfQoub3JkZXIteHhsLTIgewoJb3JkZXI6IDIhaW1wb3J0YW50Cn0KLm9yZGVyLXh4bC0zIHsKCW9yZGVyOiAzIWltcG9ydGFudAp9Ci5vcmRlci14eGwtNCB7CglvcmRlcjogNCFpbXBvcnRhbnQKfQoub3JkZXIteHhsLTUgewoJb3JkZXI6IDUhaW1wb3J0YW50Cn0KLm9yZGVyLXh4bC1sYXN0IHsKCW9yZGVyOiA2IWltcG9ydGFudAp9Ci5tLXh4bC0wIHsKCW1hcmdpbjogMCFpbXBvcnRhbnQKfQoubS14eGwtMSB7Cm1hcmdpbjouMjVyZW0haW1wb3J0YW50Cn0KLm0teHhsLTIgewptYXJnaW46LjVyZW0haW1wb3J0YW50Cn0KLm0teHhsLTMgewoJbWFyZ2luOiAxcmVtIWltcG9ydGFudAp9Ci5tLXh4bC00IHsKCW1hcmdpbjogMS41cmVtIWltcG9ydGFudAp9Ci5tLXh4bC01IHsKCW1hcmdpbjogM3JlbSFpbXBvcnRhbnQKfQoubS14eGwtYXV0byB7CgltYXJnaW46IGF1dG8haW1wb3J0YW50Cn0KLm14LXh4bC0wIHsKCW1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQKfQoubXgteHhsLTEgewptYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudDsKbWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudAp9Ci5teC14eGwtMiB7Cm1hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQ7Cm1hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5teC14eGwtMyB7CgltYXJnaW4tcmlnaHQ6IDFyZW0haW1wb3J0YW50OwoJbWFyZ2luLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLm14LXh4bC00IHsKCW1hcmdpbi1yaWdodDogMS41cmVtIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiAxLjVyZW0haW1wb3J0YW50Cn0KLm14LXh4bC01IHsKCW1hcmdpbi1yaWdodDogM3JlbSFpbXBvcnRhbnQ7CgltYXJnaW4tbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoubXgteHhsLWF1dG8gewoJbWFyZ2luLXJpZ2h0OiBhdXRvIWltcG9ydGFudDsKCW1hcmdpbi1sZWZ0OiBhdXRvIWltcG9ydGFudAp9Ci5teS14eGwtMCB7CgltYXJnaW4tdG9wOiAwIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50Cn0KLm15LXh4bC0xIHsKbWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50OwptYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoubXkteHhsLTIgewptYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudDsKbWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnQKfQoubXkteHhsLTMgewoJbWFyZ2luLXRvcDogMXJlbSFpbXBvcnRhbnQ7CgltYXJnaW4tYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5teS14eGwtNCB7CgltYXJnaW4tdG9wOiAxLjVyZW0haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5teS14eGwtNSB7CgltYXJnaW4tdG9wOiAzcmVtIWltcG9ydGFudDsKCW1hcmdpbi1ib3R0b206IDNyZW0haW1wb3J0YW50Cn0KLm15LXh4bC1hdXRvIHsKCW1hcmdpbi10b3A6IGF1dG8haW1wb3J0YW50OwoJbWFyZ2luLWJvdHRvbTogYXV0byFpbXBvcnRhbnQKfQoubXQteHhsLTAgewoJbWFyZ2luLXRvcDogMCFpbXBvcnRhbnQKfQoubXQteHhsLTEgewptYXJnaW4tdG9wOi4yNXJlbSFpbXBvcnRhbnQKfQoubXQteHhsLTIgewptYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudAp9Ci5tdC14eGwtMyB7CgltYXJnaW4tdG9wOiAxcmVtIWltcG9ydGFudAp9Ci5tdC14eGwtNCB7CgltYXJnaW4tdG9wOiAxLjVyZW0haW1wb3J0YW50Cn0KLm10LXh4bC01IHsKCW1hcmdpbi10b3A6IDNyZW0haW1wb3J0YW50Cn0KLm10LXh4bC1hdXRvIHsKCW1hcmdpbi10b3A6IGF1dG8haW1wb3J0YW50Cn0KLm1lLXh4bC0wIHsKCW1hcmdpbi1yaWdodDogMCFpbXBvcnRhbnQKfQoubWUteHhsLTEgewptYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudAp9Ci5tZS14eGwtMiB7Cm1hcmdpbi1yaWdodDouNXJlbSFpbXBvcnRhbnQKfQoubWUteHhsLTMgewoJbWFyZ2luLXJpZ2h0OiAxcmVtIWltcG9ydGFudAp9Ci5tZS14eGwtNCB7CgltYXJnaW4tcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoubWUteHhsLTUgewoJbWFyZ2luLXJpZ2h0OiAzcmVtIWltcG9ydGFudAp9Ci5tZS14eGwtYXV0byB7CgltYXJnaW4tcmlnaHQ6IGF1dG8haW1wb3J0YW50Cn0KLm1iLXh4bC0wIHsKCW1hcmdpbi1ib3R0b206IDAhaW1wb3J0YW50Cn0KLm1iLXh4bC0xIHsKbWFyZ2luLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLm1iLXh4bC0yIHsKbWFyZ2luLWJvdHRvbTouNXJlbSFpbXBvcnRhbnQKfQoubWIteHhsLTMgewoJbWFyZ2luLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoubWIteHhsLTQgewoJbWFyZ2luLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5tYi14eGwtNSB7CgltYXJnaW4tYm90dG9tOiAzcmVtIWltcG9ydGFudAp9Ci5tYi14eGwtYXV0byB7CgltYXJnaW4tYm90dG9tOiBhdXRvIWltcG9ydGFudAp9Ci5tcy14eGwtMCB7CgltYXJnaW4tbGVmdDogMCFpbXBvcnRhbnQKfQoubXMteHhsLTEgewptYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLm1zLXh4bC0yIHsKbWFyZ2luLWxlZnQ6LjVyZW0haW1wb3J0YW50Cn0KLm1zLXh4bC0zIHsKCW1hcmdpbi1sZWZ0OiAxcmVtIWltcG9ydGFudAp9Ci5tcy14eGwtNCB7CgltYXJnaW4tbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5tcy14eGwtNSB7CgltYXJnaW4tbGVmdDogM3JlbSFpbXBvcnRhbnQKfQoubXMteHhsLWF1dG8gewoJbWFyZ2luLWxlZnQ6IGF1dG8haW1wb3J0YW50Cn0KLnAteHhsLTAgewoJcGFkZGluZzogMCFpbXBvcnRhbnQKfQoucC14eGwtMSB7CnBhZGRpbmc6LjI1cmVtIWltcG9ydGFudAp9Ci5wLXh4bC0yIHsKcGFkZGluZzouNXJlbSFpbXBvcnRhbnQKfQoucC14eGwtMyB7CglwYWRkaW5nOiAxcmVtIWltcG9ydGFudAp9Ci5wLXh4bC00IHsKCXBhZGRpbmc6IDEuNXJlbSFpbXBvcnRhbnQKfQoucC14eGwtNSB7CglwYWRkaW5nOiAzcmVtIWltcG9ydGFudAp9Ci5weC14eGwtMCB7CglwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudDsKCXBhZGRpbmctbGVmdDogMCFpbXBvcnRhbnQKfQoucHgteHhsLTEgewpwYWRkaW5nLXJpZ2h0Oi4yNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLnB4LXh4bC0yIHsKcGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnQKfQoucHgteHhsLTMgewoJcGFkZGluZy1yaWdodDogMXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLnB4LXh4bC00IHsKCXBhZGRpbmctcmlnaHQ6IDEuNXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHgteHhsLTUgewoJcGFkZGluZy1yaWdodDogM3JlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLnB5LXh4bC0wIHsKCXBhZGRpbmctdG9wOiAwIWltcG9ydGFudDsKCXBhZGRpbmctYm90dG9tOiAwIWltcG9ydGFudAp9Ci5weS14eGwtMSB7CnBhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnQKfQoucHkteHhsLTIgewpwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnQ7CnBhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudAp9Ci5weS14eGwtMyB7CglwYWRkaW5nLXRvcDogMXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogMXJlbSFpbXBvcnRhbnQKfQoucHkteHhsLTQgewoJcGFkZGluZy10b3A6IDEuNXJlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5weS14eGwtNSB7CglwYWRkaW5nLXRvcDogM3JlbSFpbXBvcnRhbnQ7CglwYWRkaW5nLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoucHQteHhsLTAgewoJcGFkZGluZy10b3A6IDAhaW1wb3J0YW50Cn0KLnB0LXh4bC0xIHsKcGFkZGluZy10b3A6LjI1cmVtIWltcG9ydGFudAp9Ci5wdC14eGwtMiB7CnBhZGRpbmctdG9wOi41cmVtIWltcG9ydGFudAp9Ci5wdC14eGwtMyB7CglwYWRkaW5nLXRvcDogMXJlbSFpbXBvcnRhbnQKfQoucHQteHhsLTQgewoJcGFkZGluZy10b3A6IDEuNXJlbSFpbXBvcnRhbnQKfQoucHQteHhsLTUgewoJcGFkZGluZy10b3A6IDNyZW0haW1wb3J0YW50Cn0KLnBlLXh4bC0wIHsKCXBhZGRpbmctcmlnaHQ6IDAhaW1wb3J0YW50Cn0KLnBlLXh4bC0xIHsKcGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50Cn0KLnBlLXh4bC0yIHsKcGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnQKfQoucGUteHhsLTMgewoJcGFkZGluZy1yaWdodDogMXJlbSFpbXBvcnRhbnQKfQoucGUteHhsLTQgewoJcGFkZGluZy1yaWdodDogMS41cmVtIWltcG9ydGFudAp9Ci5wZS14eGwtNSB7CglwYWRkaW5nLXJpZ2h0OiAzcmVtIWltcG9ydGFudAp9Ci5wYi14eGwtMCB7CglwYWRkaW5nLWJvdHRvbTogMCFpbXBvcnRhbnQKfQoucGIteHhsLTEgewpwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50Cn0KLnBiLXh4bC0yIHsKcGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50Cn0KLnBiLXh4bC0zIHsKCXBhZGRpbmctYm90dG9tOiAxcmVtIWltcG9ydGFudAp9Ci5wYi14eGwtNCB7CglwYWRkaW5nLWJvdHRvbTogMS41cmVtIWltcG9ydGFudAp9Ci5wYi14eGwtNSB7CglwYWRkaW5nLWJvdHRvbTogM3JlbSFpbXBvcnRhbnQKfQoucHMteHhsLTAgewoJcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudAp9Ci5wcy14eGwtMSB7CnBhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50Cn0KLnBzLXh4bC0yIHsKcGFkZGluZy1sZWZ0Oi41cmVtIWltcG9ydGFudAp9Ci5wcy14eGwtMyB7CglwYWRkaW5nLWxlZnQ6IDFyZW0haW1wb3J0YW50Cn0KLnBzLXh4bC00IHsKCXBhZGRpbmctbGVmdDogMS41cmVtIWltcG9ydGFudAp9Ci5wcy14eGwtNSB7CglwYWRkaW5nLWxlZnQ6IDNyZW0haW1wb3J0YW50Cn0KLnRleHQteHhsLXN0YXJ0IHsKCXRleHQtYWxpZ246IGxlZnQhaW1wb3J0YW50Cn0KLnRleHQteHhsLWVuZCB7Cgl0ZXh0LWFsaWduOiByaWdodCFpbXBvcnRhbnQKfQoudGV4dC14eGwtY2VudGVyIHsKCXRleHQtYWxpZ246IGNlbnRlciFpbXBvcnRhbnQKfQp9CkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCkgewouZnMtMSB7Cglmb250LXNpemU6IDIuNXJlbSFpbXBvcnRhbnQKfQouZnMtMiB7Cglmb250LXNpemU6IDJyZW0haW1wb3J0YW50Cn0KLmZzLTMgewoJZm9udC1zaXplOiAxLjc1cmVtIWltcG9ydGFudAp9Ci5mcy00IHsKCWZvbnQtc2l6ZTogMS41cmVtIWltcG9ydGFudAp9Cn0KQG1lZGlhIHByaW50IHsKLmQtcHJpbnQtaW5saW5lIHsKCWRpc3BsYXk6IGlubGluZSFpbXBvcnRhbnQKfQouZC1wcmludC1pbmxpbmUtYmxvY2sgewoJZGlzcGxheTogaW5saW5lLWJsb2NrIWltcG9ydGFudAp9Ci5kLXByaW50LWJsb2NrIHsKCWRpc3BsYXk6IGJsb2NrIWltcG9ydGFudAp9Ci5kLXByaW50LWdyaWQgewoJZGlzcGxheTogZ3JpZCFpbXBvcnRhbnQKfQouZC1wcmludC10YWJsZSB7CglkaXNwbGF5OiB0YWJsZSFpbXBvcnRhbnQKfQouZC1wcmludC10YWJsZS1yb3cgewoJZGlzcGxheTogdGFibGUtcm93IWltcG9ydGFudAp9Ci5kLXByaW50LXRhYmxlLWNlbGwgewoJZGlzcGxheTogdGFibGUtY2VsbCFpbXBvcnRhbnQKfQouZC1wcmludC1mbGV4IHsKCWRpc3BsYXk6IGZsZXghaW1wb3J0YW50Cn0KLmQtcHJpbnQtaW5saW5lLWZsZXggewoJZGlzcGxheTogaW5saW5lLWZsZXghaW1wb3J0YW50Cn0KLmQtcHJpbnQtbm9uZSB7CglkaXNwbGF5OiBub25lIWltcG9ydGFudAp9Cn0KLyojIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLm1pbi5jc3MubWFwICovCg=="}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":25,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/6jePbqXJhe8","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.380Z","timestamp":1785159268380,"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/6jePbqXJhe8 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://walmartfundholdings.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, require-trusted-types-for 'script', base-uri 'self';object-src 'none';script-src 'nonce-Ur6hegYHuLDQLAzA6vqQSg' 'unsafe-inline' 'strict-dynamic' https: http: 'unsafe-eval';report-uri https://csp.withgoogle.com/csp/youtube_main/strict\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 13:34:28 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\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"youtube_main\"\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\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=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; expires=Sat, 23-Jan-2027 13:34:28 GMT; path=/; domain=.youtube.com; Secure; HttpOnly; SameSite=none\nYSC=KVevwPvGbos; Domain=.youtube.com; Path=/; Secure; HttpOnly; SameSite=none\n__Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; Domain=youtube.com; Expires=Sat, 23-Jan-2027 13:34:28 GMT; Path=/; Secure; HttpOnly; SameSite=none; Partitioned\n__Secure-YEC=; Domain=.youtube.com; Expires=Tue, 31-Oct-2023 13:34:28 GMT; Path=/; Secure; HttpOnly; SameSite=lax\nVISITOR_INFO1_LIVE=mydA6aM0K4I; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 13:34:28 GMT; Path=/; Secure; HttpOnly; SameSite=none\nVISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%3D%3D; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 13:34:28 GMT; Path=/; Secure; HttpOnly; SameSite=none\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":142468,"size_decoded":60427,"mime_type":"text/html; charset=utf-8","magic":"HTML document, ASCII text, with very long lines (52128)","md5":"07e761414444cb8eba3cfde8ac428f20","sha1":"d19e59fde61ae7a9baaa7bf960abf012c83e252c","sha256":"6f5f555554cce59c2976f63a63d44403eefa0fb8d43f8f375ca25c8925b835f0","sha512":"aad7531d985a1a848ce644d949d49b489ee9daec090b8df1bf25f680426d9c7f9ae999f96b9a289951ff7a3d43b2bde33490556c0674a9b477ee61ba5ace0e3c","ssdeep":"1536:A+QKPjMFzYVM6bBTzhJccJZo43UEwgSzFtxjsdCljjlLXlYkejxLspQJJ6M4I9tq:Wqj2YJ6cJZ0EwgSzFfjsdOFCRhLEMJtq","tlshash":"83d30b250868a876c9939447eebaff3e5cb8023907c9956ebcbbd35c05dc6510eaf413","first_seen":"2026-07-27T13:35:15.228997Z","last_seen":"2026-07-27T13:35:15.228997Z","times_seen":1,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIiBkYXRhLWNhc3QtYXBpLWVuYWJsZWQ9InRydWUiPjxoZWFkPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+PHNjcmlwdCBub25jZT0iVXI2aGVnWUh1TERRTEF6QTZ2cVFTZyI+aWYgKCd1bmRlZmluZWQnID09IHR5cGVvZiBTeW1ib2wgfHwgJ3VuZGVmaW5lZCcgPT0gdHlwZW9mIFN5bWJvbC5pdGVyYXRvcikge2RlbGV0ZSBBcnJheS5wcm90b3R5cGUuZW50cmllczt9PC9zY3JpcHQ+PHN0eWxlIG5hbWU9Ind3dy1yb2JvdG8iIG5vbmNlPSJfYnhFOE03T1VpUGJYR3ROc2t1NlNRIj5AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNHVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswNDYwLTA1MkYsVSsxQzgwLTFDOEEsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNpVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAxLFUrMDQwMC0wNDVGLFUrMDQ5MC0wNDkxLFUrMDRCMC0wNEIxLFUrMjExNjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzQ1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMUYwMC0xRkZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTMtVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzcwLTAzNzcsVSswMzdBLTAzN0YsVSswMzg0LTAzOEEsVSswMzhDLFUrMDM4RS0wM0ExLFUrMDNBMy0wM0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXdDVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAyLTAzMDMsVSswMzA1LFUrMDMwNy0wMzA4LFUrMDMxMCxVKzAzMTIsVSswMzE1LFUrMDMxQSxVKzAzMjYtMDMyNyxVKzAzMkMsVSswMzJGLTAzMzAsVSswMzMyLTAzMzMsVSswMzM4LFUrMDMzQSxVKzAzNDYsVSswMzRELFUrMDM5MS0wM0ExLFUrMDNBMy0wM0E5LFUrMDNCMS0wM0M5LFUrMDNEMSxVKzAzRDUtMDNENixVKzAzRjAtMDNGMSxVKzAzRjQtMDNGNSxVKzIwMTYtMjAxNyxVKzIwMzQtMjAzOCxVKzIwM0MsVSsyMDQwLFUrMjA0MyxVKzIwNDcsVSsyMDUwLFUrMjA1NyxVKzIwNUYsVSsyMDcwLTIwNzEsVSsyMDc0LTIwOEUsVSsyMDkwLTIwOUMsVSsyMEQwLTIwREMsVSsyMEUxLFUrMjBFNS0yMEVGLFUrMjEwMC0yMTEyLFUrMjExNC0yMTE1LFUrMjExNy0yMTIxLFUrMjEyMy0yMTRGLFUrMjE5MCxVKzIxOTIsVSsyMTk0LTIxQUUsVSsyMUIwLTIxRTUsVSsyMUYxLTIxRjIsVSsyMUY0LTIyMTEsVSsyMjEzLTIyMTQsVSsyMjE2LTIyRkYsVSsyMzA4LTIzMEIsVSsyMzEwLFUrMjMxOSxVKzIzMUMtMjMyMSxVKzIzMzYtMjM3QSxVKzIzN0MsVSsyMzk1LFUrMjM5Qi0yM0I3LFUrMjNEMCxVKzIzREMtMjNFMSxVKzI0NzQtMjQ3NSxVKzI1QUYsVSsyNUIzLFUrMjVCNyxVKzI1QkQsVSsyNUMxLFUrMjVDQSxVKzI1Q0MsVSsyNUZCLFUrMjY2RC0yNjZGLFUrMjdDMC0yN0ZGLFUrMjkwMC0yQUZGLFUrMkIwRS0yQjExLFUrMkIzMC0yQjRDLFUrMkJGRSxVKzMwMzAsVStGRjVCLFUrRkY1RCxVKzFENDAwLTFEN0ZGLFUrMUVFMDAtMUVFRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1heEtVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDEtMDAwQyxVKzAwMEUtMDAxRixVKzAwN0YtMDA5RixVKzIwREQtMjBFMCxVKzIwRTItMjBFNCxVKzIxNTAtMjE4RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMTk5LFUrMjFBRixVKzIxRTYtMjFGMCxVKzIxRjMsVSsyMjE4LTIyMTksVSsyMjk5LFUrMjJDNC0yMkM2LFUrMjMwMC0yNDNGLFUrMjQ0MC0yNDRBLFUrMjQ2MC0yNEZGLFUrMjVBMC0yN0JGLFUrMjgwMC0yOEZGLFUrMjkyMS0yOTIyLFUrMjk4MSxVKzI5QkYsVSsyOUVCLFUrMkIwMC0yQkZGLFUrNERDMC00REZGLFUrRkZGOS1GRkZCLFUrMTAxNDAtMTAxOEUsVSsxMDE5MC0xMDE5QyxVKzEwMUEwLFUrMTAxRDAtMTAxRkQsVSsxMDJFMC0xMDJGQixVKzEwRTYwLTEwRTdFLFUrMUQyQzAtMUQyRDMsVSsxRDJFMC0xRDM3RixVKzFGMDAwLTFGMEZGLFUrMUYxMDAtMUYxQUQsVSsxRjFFNi0xRjFGRixVKzFGMzBELTFGMzBGLFUrMUYzMTUsVSsxRjMxQyxVKzFGMzFFLFUrMUYzMjAtMUYzMkMsVSsxRjMzNixVKzFGMzc4LFUrMUYzN0QsVSsxRjM4MixVKzFGMzkzLTFGMzlGLFUrMUYzQTctMUYzQTgsVSsxRjNBQy0xRjNBRixVKzFGM0MyLFUrMUYzQzQtMUYzQzYsVSsxRjNDQS0xRjNDRSxVKzFGM0Q0LTFGM0UwLFUrMUYzRUQsVSsxRjNGMS0xRjNGMyxVKzFGM0Y1LTFGM0Y3LFUrMUY0MDgsVSsxRjQxNSxVKzFGNDFGLFUrMUY0MjYsVSsxRjQzRixVKzFGNDQxLTFGNDQyLFUrMUY0NDQsVSsxRjQ0Ni0xRjQ0OSxVKzFGNDRDLTFGNDRFLFUrMUY0NTMsVSsxRjQ2QSxVKzFGNDdELFUrMUY0QTMsVSsxRjRCMCxVKzFGNEIzLFUrMUY0QjksVSsxRjRCQixVKzFGNEJGLFUrMUY0QzgtMUY0Q0IsVSsxRjRENixVKzFGNERBLFUrMUY0REYsVSsxRjRFMy0xRjRFNixVKzFGNEVBLTFGNEVELFUrMUY0RjcsVSsxRjRGOS0xRjRGQixVKzFGNEZELTFGNEZFLFUrMUY1MDMsVSsxRjUwNy0xRjUwQixVKzFGNTBELFUrMUY1MTItMUY1MTMsVSsxRjUzRS0xRjU0QSxVKzFGNTRGLTFGNUZBLFUrMUY2MTAsVSsxRjY1MC0xRjY3RixVKzFGNjg3LFUrMUY2OEQsVSsxRjY5MSxVKzFGNjk0LFUrMUY2OTgsVSsxRjZBRCxVKzFGNkIyLFUrMUY2QjktMUY2QkEsVSsxRjZCQyxVKzFGNkM2LTFGNkNGLFUrMUY2RDMtMUY2RDcsVSsxRjZFMC0xRjZFQSxVKzFGNkYwLTFGNkYzLFUrMUY2RjctMUY2RkMsVSsxRjcwMC0xRjdGRixVKzFGODAwLTFGODBCLFUrMUY4MTAtMUY4NDcsVSsxRjg1MC0xRjg1OSxVKzFGODYwLTFGODg3LFUrMUY4OTAtMUY4QUQsVSsxRjhCMC0xRjhCQixVKzFGOEMwLTFGOEMxLFUrMUY5MDAtMUY5MEIsVSsxRjkzQixVKzFGOTQ2LFUrMUY5ODQsVSsxRjk5NixVKzFGOUU5LFUrMUZBMDAtMUZBNkYsVSsxRkE3MC0xRkE3QyxVKzFGQTgwLTFGQTg5LFUrMUZBOEYtMUZBQzYsVSsxRkFDRS0xRkFEQyxVKzFGQURGLTFGQUU5LFUrMUZBRjAtMUZBRjgsVSsxRkIwMC0xRkJGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzT1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMi0wMTAzLFUrMDExMC0wMTExLFUrMDEyOC0wMTI5LFUrMDE2OC0wMTY5LFUrMDFBMC0wMUExLFUrMDFBRi0wMUIwLFUrMDMwMC0wMzAxLFUrMDMwMy0wMzA0LFUrMDMwOC0wMzA5LFUrMDMyMyxVKzAzMjksVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAwLTAyQkEsVSswMkJELTAyQzUsVSswMkM3LTAyQ0MsVSswMkNFLTAyRDcsVSswMkRELTAyRkYsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsxRDAwLTFEQkYsVSsxRTAwLTFFOUYsVSsxRUYyLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMEMwLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzeVVCQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDAtMDBGRixVKzAxMzEsVSswMTUyLTAxNTMsVSswMkJCLTAyQkMsVSswMkM2LFUrMDJEQSxVKzAyREMsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsyMDAwLTIwNkYsVSsyMEFDLFUrMjEyMixVKzIxOTEsVSsyMTkzLFUrMjIxMixVKzIyMTUsVStGRUZGLFUrRkZGRDt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzR1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQ2MC0wNTJGLFUrMUM4MC0xQzhBLFUrMjBCNCxVKzJERTAtMkRGRixVK0E2NDAtQTY5RixVK0ZFMkUtRkUyRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzaVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMSxVKzA0MDAtMDQ1RixVKzA0OTAtMDQ5MSxVKzA0QjAtMDRCMSxVKzIxMTY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM0NVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzFGMDAtMUZGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzLVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDM3MC0wMzc3LFUrMDM3QS0wMzdGLFUrMDM4NC0wMzhBLFUrMDM4QyxVKzAzOEUtMDNBMSxVKzAzQTMtMDNGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWF3Q1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMi0wMzAzLFUrMDMwNSxVKzAzMDctMDMwOCxVKzAzMTAsVSswMzEyLFUrMDMxNSxVKzAzMUEsVSswMzI2LTAzMjcsVSswMzJDLFUrMDMyRi0wMzMwLFUrMDMzMi0wMzMzLFUrMDMzOCxVKzAzM0EsVSswMzQ2LFUrMDM0RCxVKzAzOTEtMDNBMSxVKzAzQTMtMDNBOSxVKzAzQjEtMDNDOSxVKzAzRDEsVSswM0Q1LTAzRDYsVSswM0YwLTAzRjEsVSswM0Y0LTAzRjUsVSsyMDE2LTIwMTcsVSsyMDM0LTIwMzgsVSsyMDNDLFUrMjA0MCxVKzIwNDMsVSsyMDQ3LFUrMjA1MCxVKzIwNTcsVSsyMDVGLFUrMjA3MC0yMDcxLFUrMjA3NC0yMDhFLFUrMjA5MC0yMDlDLFUrMjBEMC0yMERDLFUrMjBFMSxVKzIwRTUtMjBFRixVKzIxMDAtMjExMixVKzIxMTQtMjExNSxVKzIxMTctMjEyMSxVKzIxMjMtMjE0RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMUFFLFUrMjFCMC0yMUU1LFUrMjFGMS0yMUYyLFUrMjFGNC0yMjExLFUrMjIxMy0yMjE0LFUrMjIxNi0yMkZGLFUrMjMwOC0yMzBCLFUrMjMxMCxVKzIzMTksVSsyMzFDLTIzMjEsVSsyMzM2LTIzN0EsVSsyMzdDLFUrMjM5NSxVKzIzOUItMjNCNyxVKzIzRDAsVSsyM0RDLTIzRTEsVSsyNDc0LTI0NzUsVSsyNUFGLFUrMjVCMyxVKzI1QjcsVSsyNUJELFUrMjVDMSxVKzI1Q0EsVSsyNUNDLFUrMjVGQixVKzI2NkQtMjY2RixVKzI3QzAtMjdGRixVKzI5MDAtMkFGRixVKzJCMEUtMkIxMSxVKzJCMzAtMkI0QyxVKzJCRkUsVSszMDMwLFUrRkY1QixVK0ZGNUQsVSsxRDQwMC0xRDdGRixVKzFFRTAwLTFFRUZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXhLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAxLTAwMEMsVSswMDBFLTAwMUYsVSswMDdGLTAwOUYsVSsyMERELTIwRTAsVSsyMEUyLTIwRTQsVSsyMTUwLTIxOEYsVSsyMTkwLFUrMjE5MixVKzIxOTQtMjE5OSxVKzIxQUYsVSsyMUU2LTIxRjAsVSsyMUYzLFUrMjIxOC0yMjE5LFUrMjI5OSxVKzIyQzQtMjJDNixVKzIzMDAtMjQzRixVKzI0NDAtMjQ0QSxVKzI0NjAtMjRGRixVKzI1QTAtMjdCRixVKzI4MDAtMjhGRixVKzI5MjEtMjkyMixVKzI5ODEsVSsyOUJGLFUrMjlFQixVKzJCMDAtMkJGRixVKzREQzAtNERGRixVK0ZGRjktRkZGQixVKzEwMTQwLTEwMThFLFUrMTAxOTAtMTAxOUMsVSsxMDFBMCxVKzEwMUQwLTEwMUZELFUrMTAyRTAtMTAyRkIsVSsxMEU2MC0xMEU3RSxVKzFEMkMwLTFEMkQzLFUrMUQyRTAtMUQzN0YsVSsxRjAwMC0xRjBGRixVKzFGMTAwLTFGMUFELFUrMUYxRTYtMUYxRkYsVSsxRjMwRC0xRjMwRixVKzFGMzE1LFUrMUYzMUMsVSsxRjMxRSxVKzFGMzIwLTFGMzJDLFUrMUYzMzYsVSsxRjM3OCxVKzFGMzdELFUrMUYzODIsVSsxRjM5My0xRjM5RixVKzFGM0E3LTFGM0E4LFUrMUYzQUMtMUYzQUYsVSsxRjNDMixVKzFGM0M0LTFGM0M2LFUrMUYzQ0EtMUYzQ0UsVSsxRjNENC0xRjNFMCxVKzFGM0VELFUrMUYzRjEtMUYzRjMsVSsxRjNGNS0xRjNGNyxVKzFGNDA4LFUrMUY0MTUsVSsxRjQxRixVKzFGNDI2LFUrMUY0M0YsVSsxRjQ0MS0xRjQ0MixVKzFGNDQ0LFUrMUY0NDYtMUY0NDksVSsxRjQ0Qy0xRjQ0RSxVKzFGNDUzLFUrMUY0NkEsVSsxRjQ3RCxVKzFGNEEzLFUrMUY0QjAsVSsxRjRCMyxVKzFGNEI5LFUrMUY0QkIsVSsxRjRCRixVKzFGNEM4LTFGNENCLFUrMUY0RDYsVSsxRjREQSxVKzFGNERGLFUrMUY0RTMtMUY0RTYsVSsxRjRFQS0xRjRFRCxVKzFGNEY3LFUrMUY0RjktMUY0RkIsVSsxRjRGRC0xRjRGRSxVKzFGNTAzLFUrMUY1MDctMUY1MEIsVSsxRjUwRCxVKzFGNTEyLTFGNTEzLFUrMUY1M0UtMUY1NEEsVSsxRjU0Ri0xRjVGQSxVKzFGNjEwLFUrMUY2NTAtMUY2N0YsVSsxRjY4NyxVKzFGNjhELFUrMUY2OTEsVSsxRjY5NCxVKzFGNjk4LFUrMUY2QUQsVSsxRjZCMixVKzFGNkI5LTFGNkJBLFUrMUY2QkMsVSsxRjZDNi0xRjZDRixVKzFGNkQzLTFGNkQ3LFUrMUY2RTAtMUY2RUEsVSsxRjZGMC0xRjZGMyxVKzFGNkY3LTFGNkZDLFUrMUY3MDAtMUY3RkYsVSsxRjgwMC0xRjgwQixVKzFGODEwLTFGODQ3LFUrMUY4NTAtMUY4NTksVSsxRjg2MC0xRjg4NyxVKzFGODkwLTFGOEFELFUrMUY4QjAtMUY4QkIsVSsxRjhDMC0xRjhDMSxVKzFGOTAwLTFGOTBCLFUrMUY5M0IsVSsxRjk0NixVKzFGOTg0LFUrMUY5OTYsVSsxRjlFOSxVKzFGQTAwLTFGQTZGLFUrMUZBNzAtMUZBN0MsVSsxRkE4MC0xRkE4OSxVKzFGQThGLTFGQUM2LFUrMUZBQ0UtMUZBREMsVSsxRkFERi0xRkFFOSxVKzFGQUYwLTFGQUY4LFUrMUZCMDAtMUZCRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM09VQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDItMDEwMyxVKzAxMTAtMDExMSxVKzAxMjgtMDEyOSxVKzAxNjgtMDE2OSxVKzAxQTAtMDFBMSxVKzAxQUYtMDFCMCxVKzAzMDAtMDMwMSxVKzAzMDMtMDMwNCxVKzAzMDgtMDMwOSxVKzAzMjMsVSswMzI5LFUrMUVBMC0xRUY5LFUrMjBBQjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzS1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMC0wMkJBLFUrMDJCRC0wMkM1LFUrMDJDNy0wMkNDLFUrMDJDRS0wMkQ3LFUrMDJERC0wMkZGLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMUQwMC0xREJGLFUrMUUwMC0xRTlGLFUrMUVGMi0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDMCxVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM3lVQkEud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAwLTAwRkYsVSswMTMxLFUrMDE1Mi0wMTUzLFUrMDJCQi0wMkJDLFUrMDJDNixVKzAyREEsVSswMkRDLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMjAwMC0yMDZGLFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkQ7fTwvc3R5bGU+PHNjcmlwdCBuYW1lPSJ3d3ctcm9ib3RvIiBub25jZT0iVXI2aGVnWUh1TERRTEF6QTZ2cVFTZyI+aWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLmxvYWQpIHtkb2N1bWVudC5mb250cy5sb2FkKCI0MDAgMTBwdCBSb2JvdG8iLCAiRSIpOyBkb2N1bWVudC5mb250cy5sb2FkKCI1MDAgMTBwdCBSb2JvdG8iLCAiRSIpO308L3NjcmlwdD48bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9zL3BsYXllci83YTc5NjljMi93d3ctcGxheWVyLmNzcyIgbmFtZT0id3d3LXBsYXllciIgbm9uY2U9Il9ieEU4TTdPVWlQYlhHdE5za3U2U1EiPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL3MvXy95dGVtYmVkcy9fL3NzL2s9eXRlbWJlZHMuYmFzZS5OeG5pdXVaRVRady5MLkY0Lk8vYW09QUFBQWdBL2Q9MS9icj0xL3JzPUFHS015d0d4NHR4aEZKaGNydXRLWXNmUG1TNG1GYzZvSlEvbT1yb290LGJhc2UiIG5hbWU9ImVtYmVkLXVpIiBub25jZT0iX2J4RThNN09VaVBiWEd0TnNrdTZTUSI+PHN0eWxlIG5vbmNlPSJfYnhFOE03T1VpUGJYR3ROc2t1NlNRIj5odG1sIHtvdmVyZmxvdzogaGlkZGVuO31ib2R5IHtmb250OiAxMnB4IFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGNvbG9yOiAjZmZmOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogYWJzb2x1dGU7IG1hcmdpbjogMDsgcGFkZGluZzogMDt9I3BsYXllciB7d2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTt9aDEge3RleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICNmZmY7fWgzIHttYXJnaW4tdG9wOiA2cHg7IG1hcmdpbi1ib3R0b206IDNweDt9LnBsYXllci11bmF2YWlsYWJsZSB7cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IHBhZGRpbmc6IDI1cHg7IGZvbnQtc2l6ZTogMTNweDsgYmFja2dyb3VuZDogdXJsKC9pbWcvbWVoNy5wbmcpIDUwJSA2NSUgbm8tcmVwZWF0O30ucGxheWVyLXVuYXZhaWxhYmxlIC5tZXNzYWdlIHt0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW46IDAgLTVweCAxNXB4OyBwYWRkaW5nOiAwIDVweCAxNHB4OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODsgZm9udC1zaXplOiAxOXB4OyBmb250LXdlaWdodDogbm9ybWFsO30ucGxheWVyLXVuYXZhaWxhYmxlIGEge2NvbG9yOiAjMTY3YWM2OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7fTwvc3R5bGU+PHNjcmlwdCBub25jZT0iVXI2aGVnWUh1TERRTEF6QTZ2cVFTZyI+dmFyIHl0Y3NpPXtndDpmdW5jdGlvbihuKXtuPShufHwiIikrImRhdGFfIjtyZXR1cm4geXRjc2lbbl18fCh5dGNzaVtuXT17dGljazp7fSxpbmZvOnt9LGdlbDp7cHJlTG9nZ2VkR2VsSW5mb3M6W119fSl9LG5vdzp3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcmJndpbmRvdy5wZXJmb3JtYW5jZS5ub3cmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0P2Z1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0K3dpbmRvdy5wZXJmb3JtYW5jZS5ub3coKX06ZnVuY3Rpb24oKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX0sdGljazpmdW5jdGlvbihsLHQsbil7dmFyIHRpY2tzPXl0Y3NpLmd0KG4pLnRpY2s7dmFyIHY9dHx8eXRjc2kubm93KCk7aWYodGlja3NbbF0pe3RpY2tzWyJfIitsXT10aWNrc1siXyIrbF18fFt0aWNrc1tsXV07dGlja3NbIl8iK2xdLnB1c2godil9dGlja3NbbF09CnZ9LGluZm86ZnVuY3Rpb24oayx2LG4pe3l0Y3NpLmd0KG4pLmluZm9ba109dn0saW5mb0dlbDpmdW5jdGlvbihwLG4pe3l0Y3NpLmd0KG4pLmdlbC5wcmVMb2dnZWRHZWxJbmZvcy5wdXNoKHApfSxzZXRTdGFydDpmdW5jdGlvbih0LG4pe3l0Y3NpLnRpY2soIl9zdGFydCIsdCxuKX19OwooZnVuY3Rpb24odyxkKXtmdW5jdGlvbiBpc0dlY2tvKCl7aWYoIXcubmF2aWdhdG9yKXJldHVybiBmYWxzZTt0cnl7aWYody5uYXZpZ2F0b3IudXNlckFnZW50RGF0YSYmdy5uYXZpZ2F0b3IudXNlckFnZW50RGF0YS5icmFuZHMmJncubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuYnJhbmRzLmxlbmd0aCl7dmFyIGJyYW5kcz13Lm5hdmlnYXRvci51c2VyQWdlbnREYXRhLmJyYW5kczt2YXIgaT0wO2Zvcig7aTxicmFuZHMubGVuZ3RoO2krKylpZihicmFuZHNbaV0mJmJyYW5kc1tpXS5icmFuZD09PSJGaXJlZm94IilyZXR1cm4gdHJ1ZTtyZXR1cm4gZmFsc2V9fWNhdGNoKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlO30pfWlmKCF3Lm5hdmlnYXRvci51c2VyQWdlbnQpcmV0dXJuIGZhbHNlO3ZhciB1YT13Lm5hdmlnYXRvci51c2VyQWdlbnQ7cmV0dXJuIHVhLmluZGV4T2YoIkdlY2tvIik+MCYmdWEudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKTwwJiZ1YS5pbmRleE9mKCJFZGdlIik8CjAmJnVhLmluZGV4T2YoIlRyaWRlbnQiKTwwJiZ1YS5pbmRleE9mKCJNU0lFIik8MH15dGNzaS5zZXRTdGFydCh3LnBlcmZvcm1hbmNlP3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3RhcnQ6bnVsbCk7dmFyIGlzUHJlcmVuZGVyPShkLnZpc2liaWxpdHlTdGF0ZXx8ZC53ZWJraXRWaXNpYmlsaXR5U3RhdGUpPT0icHJlcmVuZGVyIjt2YXIgdk5hbWU9IWQudmlzaWJpbGl0eVN0YXRlJiZkLndlYmtpdFZpc2liaWxpdHlTdGF0ZT8id2Via2l0dmlzaWJpbGl0eWNoYW5nZSI6InZpc2liaWxpdHljaGFuZ2UiO2lmKGlzUHJlcmVuZGVyKXt2YXIgc3RhcnRUaWNrPWZ1bmN0aW9uKCl7eXRjc2kuc2V0U3RhcnQoKTtkLnJlbW92ZUV2ZW50TGlzdGVuZXIodk5hbWUsc3RhcnRUaWNrKX07ZC5hZGRFdmVudExpc3RlbmVyKHZOYW1lLHN0YXJ0VGljayxmYWxzZSl9aWYoZC5hZGRFdmVudExpc3RlbmVyKWQuYWRkRXZlbnRMaXN0ZW5lcih2TmFtZSxmdW5jdGlvbigpe3l0Y3NpLnRpY2soInZjIil9LApmYWxzZSk7aWYoaXNHZWNrbygpKXt2YXIgaXNIaWRkZW49KGQudmlzaWJpbGl0eVN0YXRlfHxkLndlYmtpdFZpc2liaWxpdHlTdGF0ZSk9PSJoaWRkZW4iO2lmKGlzSGlkZGVuKXl0Y3NpLnRpY2soInZjIil9dmFyIHNsdD1mdW5jdGlvbihlbCx0KXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG49eXRjc2kubm93KCk7ZWwubG9hZFRpbWU9bjtpZihlbC5zbHQpZWwuc2x0KCl9LHQpfTt3Ll9feXRSSUw9ZnVuY3Rpb24oZWwpe2lmKCFlbC5nZXRBdHRyaWJ1dGUoImRhdGEtdGh1bWIiKSlpZih3LnJlcXVlc3RBbmltYXRpb25GcmFtZSl3LnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3NsdChlbCwwKX0pO2Vsc2Ugc2x0KGVsLDE2KX19KSh3aW5kb3csZG9jdW1lbnQpOwo8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJVcjZoZWdZSHVMRFFMQXpBNnZxUVNnIj52YXIgeXRjZmc9e2Q6ZnVuY3Rpb24oKXtyZXR1cm4gd2luZG93Lnl0JiZ5dC5jb25maWdffHx5dGNmZy5kYXRhX3x8KHl0Y2ZnLmRhdGFfPXt9KX0sZ2V0OmZ1bmN0aW9uKGssbyl7cmV0dXJuIGsgaW4geXRjZmcuZCgpP3l0Y2ZnLmQoKVtrXTpvfSxzZXQ6ZnVuY3Rpb24oKXt2YXIgYT1hcmd1bWVudHM7aWYoYS5sZW5ndGg+MSl5dGNmZy5kKClbYVswXV09YVsxXTtlbHNle3ZhciBrO2ZvcihrIGluIGFbMF0peXRjZmcuZCgpW2tdPWFbMF1ba119fX07Cnl0Y2ZnLnNldCh7IkNMSUVOVF9DQU5BUllfU1RBVEUiOiJub25lIiwiREVWSUNFIjoiY2JyXHUwMDNkRmlyZWZveFx1MDAyNmNicnZlclx1MDAzZDEzNC4wXHUwMDI2Y2VuZ1x1MDAzZEdlY2tvXHUwMDI2Y2VuZ3Zlclx1MDAzZDEzNC4wXHUwMDI2Y29zXHUwMDNkV2luZG93c1x1MDAyNmNvc3Zlclx1MDAzZDEwLjBcdTAwMjZjcGxhdGZvcm1cdTAwM2RERVNLVE9QIiwiRVZFTlRfSUQiOiJaRjVuYW91UkdzV09qTmdQdlBEQXlBVSIsIkVYUEVSSU1FTlRfRkxBR1MiOnsiYWJfZGV0X2FwbSI6dHJ1ZSwiYWJfZGV0X2VsX2giOnRydWUsImFjdGlvbl9jb21wYW5pb25fY2VudGVyX2FsaWduX2Rlc2NyaXB0aW9uIjp0cnVlLCJhbGxvd19za2lwX25ldHdvcmtsZXNzIjp0cnVlLCJhbHdheXNfc2VuZF9hbmRfd3JpdGUiOnRydWUsImF0dF93ZWJfcmVjb3JkX21ldHJpY3MiOnRydWUsImF0dG11c2kiOnRydWUsImMzX2VuYWJsZV9idXR0b25faW1wcmVzc2lvbl9sb2dnaW5nIjp0cnVlLCJjM193YXRjaF9wYWdlX2NvbXBvbmVudCI6dHJ1ZSwiY2FuY2VsX3BlbmRpbmdfbmF2cyI6dHJ1ZSwiY2xpZW50X3VpX2VuYWJsZV9tdWx0aV90cmFja19hdWRpb19vbl93ZWJfZW1iZWRkZWRfcGxheWVyIjp0cnVlLCJjb25maWdfYWdlX3JlcG9ydF9raWxsc3dpdGNoIjp0cnVlLCJjb3dfb3B0aW1pemVfaWRvbV9jb21wYXQiOnRydWUsImNzaV9vbl9nZWwiOnRydWUsImRlZHVwcGluZ19zZXJ2ZXJfdmUiOnRydWUsImRlbGhpX213ZWJfY29sb3JmdWxfc2QiOnRydWUsImRlbGhpX213ZWJfY29sb3JmdWxfc2RfdjIiOnRydWUsImRlcHJlY2F0ZV9wYWlyX3NlcnZsZXRfZW5hYmxlZCI6dHJ1ZSwiZGVza3RvcF9zcGFya2xlc19saWdodF9jdGFfYnV0dG9uIjp0cnVlLCJkaXNhYmxlX2NoaWxkX25vZGVfYXV0b19mb3JtYXR0ZWRfc3RyaW5ncyI6dHJ1ZSwiZGlzYWJsZV9sb2dfdG9fdmlzaXRvcl9sYXllciI6dHJ1ZSwiZGlzYWJsZV9taW5pX2FwcF9jb250YWluZXJfd2ViX3ZpZXdfaW5zZXRzIjp0cnVlLCJkaXNhYmxlX3BhY2ZfbG9nZ2luZ19mb3JfbWVtb3J5X2xpbWl0ZWRfdHYiOnRydWUsImVtYmVkc19kZXNrdG9mZl9ub25tb2JpbGVfZWxpZ2libGUiOnRydWUsImVtYmVkc19kZXNrdG9mZl9ub25tb2JpbGVfZW5hYmxlZCI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b2ZmX3NhdmVfdXNlcl92b2x1bWUiOnRydWUsImVtYmVkc19kZXNrdG9wX2VuYWJsZV92b2x1bWVfc2xpZGVyIjp0cnVlLCJlbWJlZHNfZW5hYmxlX2NoYW5uZWxfc3Vic2NyaWJlX2RlcHJlY2F0aW9uIjp0cnVlLCJlbWJlZHNfZW5hYmxlX2RlbGF5X2NvbnRyb2xzX2hpZGUiOnRydWUsImVtYmVkc19lbmFibGVfZWlkX2VuZm9yY2VtZW50X2Zvcl95b3V0dWJlIjp0cnVlLCJlbWJlZHNfZW5hYmxlX2VtYzNkc19wZnAiOnRydWUsImVtYmVkc19tdXRlZF9hdXRvcGxheV9zb3VuZF9maXgiOnRydWUsImVtYmVkc19zZXJ2ZV9lczZfY2xpZW50Ijp0cnVlLCJlbWJlZHNfd2ViX3VwZGF0ZWRfc2hvcnRzX2RlZmluaXRpb25fZml4Ijp0cnVlLCJlbmFibGVfYTExeV9mb2N1c19maXhfZm9yX21hY19wYW5lbF9vbl9kZXNrdG9wIjp0cnVlLCJlbmFibGVfYWNjZXNzX2NvZGVfc2VydmljZV9ycGMiOnRydWUsImVuYWJsZV9hY3RpdmVfdmlld19kaXNwbGF5X2FkX3JlbmRlcmVyX3dlYl9ob21lIjp0cnVlLCJlbmFibGVfYWlfc2VhcmNoX2lubmVydHViZV9tMF9maXhlcyI6dHJ1ZSwiZW5hYmxlX2FuZHJvaWRfd2ViX3ZpZXdfdG9wX2luc2V0c19idWdmaXgiOnRydWUsImVuYWJsZV9hdHRlbnRpb25fbG9nZ2luZ19tZWFzdXJlX29uX3Nob3duIjp0cnVlLCJlbmFibGVfYXVfdTE2X3ZlcmlmeV9hZ2VfcGFnZSI6dHJ1ZSwiZW5hYmxlX2F1dG9tb3RpdmVfZm9ybV9mYWN0b3JfY2hlY2siOnRydWUsImVuYWJsZV9jbGllbnRfc2xpX2xvZ2dpbmciOnRydWUsImVuYWJsZV9jbGllbnRfc3RyZWFtel93ZWIiOnRydWUsImVuYWJsZV9jbGllbnRfdmVfc3BlYyI6dHJ1ZSwiZW5hYmxlX2Nsb3VkX3NhdmVfZXJyb3JfcG9wdXBfYWZ0ZXJfcmV0cnkiOnRydWUsImVuYWJsZV9jdXN0b21fc2NydWJiZXJfdjIiOnRydWUsImVuYWJsZV9kYWlfc2RmX2g1X3ByZXJvbGwiOnRydWUsImVuYWJsZV9kYXRhc3luY19pZF9oZWFkZXJfaW5fd2ViX3Zzc19waW5ncyI6dHJ1ZSwiZW5hYmxlX2RlZmF1bHRfbW9ub19jdGFfbWlncmF0aW9uX3dlYl9jbGllbnQiOnRydWUsImVuYWJsZV9kb2NrZWRfY2hhdF9tZXNzYWdlcyI6dHJ1ZSwiZW5hYmxlX2Ryb3Bfc2hhZG93X2V4cGVyaW1lbnQiOnRydWUsImVuYWJsZV9lbWJlZHNfbmV3X2NhcHRpb25fbGFuZ3VhZ2VfcGlja2VyIjp0cnVlLCJlbmFibGVfZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19oNSI6dHJ1ZSwiZW5hYmxlX2VudGl0eV9zdG9yZV9mcm9tX2RlcGVuZGVuY3lfaW5qZWN0aW9uIjp0cnVlLCJlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2giOnRydWUsImVuYWJsZV9pbmxpbmVfbXV0ZWRfcGxheWJhY2tfb25fd2ViX3NlYXJjaF9mb3JfdmRjIjp0cnVlLCJlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hfZm9yX3ZkY2IiOnRydWUsImVuYWJsZV9sb2dnaW5nX2ZpcnN0X3VzZXJfYWN0aW9uX2FmdGVyX2dhbWVfcmVhZHkiOnRydWUsImVuYWJsZV9sdGNfcGFyYW1fZmV0Y2hfZnJvbV9pbm5lcnR1YmUiOnRydWUsImVuYWJsZV9tMF9sb2dnaW5nX2ZpeGVzIjp0cnVlLCJlbmFibGVfbWVudV9yZW5kZXJlcl9idXR0b25faW5fbXdlYl9oY2xyIjp0cnVlLCJlbmFibGVfbWluaV9hcHBfY29tbWFuZF9oYW5kbGVyX213ZWJfZml4Ijp0cnVlLCJlbmFibGVfbWluaV9ndWlkZV9kb3dubG9hZHNfaXRlbSI6dHJ1ZSwiZW5hYmxlX21peGVkX2RpcmVjdGlvbl9mb3JtYXR0ZWRfc3RyaW5ncyI6dHJ1ZSwiZW5hYmxlX213ZWJfYXVkaW9fdHJhY2tfcGlja2VyIjp0cnVlLCJlbmFibGVfbXdlYl9rZXlib2FyZF9zaG9ydGN1dHMiOnRydWUsImVuYWJsZV9uYW1lc19oYW5kbGVzX2FjY291bnRfc3dpdGNoZXIiOnRydWUsImVuYWJsZV9uYXRpdmVfYnJpZGdlX3ZpZXdfc2F2ZWRfcGxheWFibGVzIjp0cnVlLCJlbmFibGVfbmV0d29ya19yZXF1ZXN0X2xvZ2dpbmdfb25fZ2FtZV9ldmVudHMiOnRydWUsImVuYWJsZV9uZXdfcGFpZF9wcm9kdWN0X3BsYWNlbWVudCI6dHJ1ZSwiZW5hYmxlX29wZW5faW5fbmV3X3RhYl9pY29uX2Zvcl9zaG9ydF9kcl9mb3JfZGVza3RvcF9zZWFyY2giOnRydWUsImVuYWJsZV9vcGVuX3l0X2NvbnRlbnQiOnRydWUsImVuYWJsZV9vcmlnaW5fcXVlcnlfcGFyYW1ldGVyX2J1Z2ZpeCI6dHJ1ZSwiZW5hYmxlX3BhdXNlX2Fkc19vbl95dHZfaHRtbDUiOnRydWUsImVuYWJsZV9wYXltZW50c19wdXJjaGFzZV9tYW5hZ2VyIjp0cnVlLCJlbmFibGVfcGRwX2ljb25fcHJlZmV0Y2giOnRydWUsImVuYWJsZV9wbGFjZV9waXZvdF91cmwiOnRydWUsImVuYWJsZV9wbGF5YWJsZV9jb250YWluZXJfc2F2ZV9idXR0b24iOnRydWUsImVuYWJsZV9wbGF5YWJsZV9lbnRpdHlfc2F2ZV9tZW51X2l0ZW0iOnRydWUsImVuYWJsZV9wdGNfaG9tZV9sb2NhdGlvbl9vbl93ZWIiOnRydWUsImVuYWJsZV9wdl9zY3JlZW5fbW9kZXJuX3RleHQiOnRydWUsImVuYWJsZV9ydGFfbWFuYWdlciI6dHJ1ZSwiZW5hYmxlX3NjcmVlbl9tYW5hZ2VyX2xheWVyX3NlcGFyYXRpb24iOnRydWUsImVuYWJsZV9zZGZfY29tcGFuaW9uX2g1Ijp0cnVlLCJlbmFibGVfc2RmX2RhaV9oNV9taWRyb2xsIjp0cnVlLCJlbmFibGVfc2RmX2g1X2VuZGVtaWNfbWlkX3Bvc3Rfcm9sbCI6dHJ1ZSwiZW5hYmxlX3NkZl9vbl9oNV91bnBsdWdnZWRfdm9kX21pZHJvbGwiOnRydWUsImVuYWJsZV9zZGZfc2hvcnRzX3BsYXllcl9ieXRlc19oNSI6dHJ1ZSwiZW5hYmxlX3NlbmRpbmdfdW53cmFwcGVkX2dhbWVfYXVkaW9fYXNfc2VyaWFsaXplZF9tZXRhZGF0YSI6dHJ1ZSwiZW5hYmxlX3NldF92aWRlb19pZF9pbl9zaG9ydHNfbG9ja3VwX3ZpZXdfbW9kZWwiOnRydWUsImVuYWJsZV9zZnZfZWZmZWN0X3Bpdm90X3VybCI6dHJ1ZSwiZW5hYmxlX3Nob3J0c19uZXdfY2Fyb3VzZWwiOnRydWUsImVuYWJsZV9za2lwX2FkX2d1aWRhbmNlX3Byb21wdCI6dHJ1ZSwiZW5hYmxlX3NraXBwYWJsZV9hZHNfZm9yX3VucGx1Z2dlZF9hZF9wb2QiOnRydWUsImVuYWJsZV9zbWVhcmluZ19leHBhbnNpb25fZGFpIjp0cnVlLCJlbmFibGVfc3VwZXhfbXdlYl9kZW1vX3dlYmZlIjp0cnVlLCJlbmFibGVfdGltZV9vdXRfbWVzc2FnZXMiOnRydWUsImVuYWJsZV90aW1lbGluZV92aWV3X21vZGVybl90cmFuc2NyaXB0X2ZlIjp0cnVlLCJlbmFibGVfdmlkZW9fZGlzcGxheV9jb21wYWN0X2J1dHRvbl9ncm91cF9mb3JfZGVza3RvcF9zZWFyY2giOnRydWUsImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiOnRydWUsImVuYWJsZV93ZWJfaG9tZV90b3BfbGFuZHNjYXBlX2ltYWdlX2xheW91dF9sZXZlbF9jbGljayI6dHJ1ZSwiZW5hYmxlX3dlYl9zaG9ydHNfYXVkaW9fdHJhY2siOnRydWUsImVuYWJsZV93ZWJfdGllcmVkX2dlbCI6dHJ1ZSwiZW5hYmxlX3dpbmRvd19jb25zdHJhaW5lZF9idXlfZmxvd19kaWFsb2ciOnRydWUsImVuYWJsZV93aXpfcXVldWVfZWZmZWN0X2FuZF9vbl9pbml0X2luaXRpYWxfcnVucyI6dHJ1ZSwiZW5hYmxlX3lwY19zcGlubmVycyI6dHJ1ZSwiZW5hYmxlX3l0X2F0YV9pZnJhbWVfYXV0aHVzZXIiOnRydWUsImV4cG9ydF9uZXR3b3JrbGVzc19vcHRpb25zIjp0cnVlLCJleHBvcnRfcGxheWVyX3ZlcnNpb25fdG9feXRjb25maWciOnRydWUsImZpbGxfc2luZ2xlX3ZpZGVvX3dpdGhfbm90aWZ5X3RvX2xhc3IiOnRydWUsImZpeF9hZHNfdHJhY2tpbmdfZm9yX3N3Zl9jb25maWdfZGVwcmVjYXRpb25fbXdlYiI6dHJ1ZSwiaDVfY29tcGFuaW9uX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzIjp0cnVlLCJoNV9pbnBsYXllcl9lbmFibGVfYWRjcG5fbWFjcm9fc3Vic3RpdHV0aW9uX2Zvcl9jbGlja19waW5ncyI6dHJ1ZSwiaDVfcmVzZXRfY2FjaGVfYW5kX2ZpbHRlcl9iZWZvcmVfdXBkYXRlX21hc3RoZWFkIjp0cnVlLCJoaWRlX2NoYW5uZWxfY3JlYXRpb25fdGl0bGVfZm9yX213ZWIiOnRydWUsImhpZ2hfY2N2X2NsaWVudF9zaWRlX2NhY2hpbmdfaDUiOnRydWUsImh0bWw1X2xvZ190cmlnZ2VyX2V2ZW50c193aXRoX2RlYnVnX2RhdGEiOnRydWUsImh0bWw1X3NzZGFpX2VuYWJsZV9tZWRpYV9lbmRfY3VlX3JhbmdlIjp0cnVlLCJpZGJfaW1tZWRpYXRlX2NvbW1pdCI6dHJ1ZSwiaWxfYXR0YWNoX2NhY2hlX2xpbWl0Ijp0cnVlLCJpbF91c2Vfdmlld19tb2RlbF9sb2dnaW5nX2NvbnRleHQiOnRydWUsImlzX2Jyb3dzZXJfc3VwcG9ydF9mb3Jfd2ViY2FtX3N0cmVhbWluZyI6dHJ1ZSwianNvbl9jb25kZW5zZWRfcmVzcG9uc2UiOnRydWUsImtldmxhcl9maWx0ZXJfdW5rbm93bl9zb3VyY2UiOnRydWUsImtldmxhcl9nZWxfZXJyb3Jfcm91dGluZyI6dHJ1ZSwia2V2bGFyX3RyaW1fcGxheWVyX2JlaGF2aW9yIjp0cnVlLCJrZXZsYXJfd2F0Y2hfY2luZW1hdGljcyI6dHJ1ZSwibGltaXRfeXRjc2lfZGVidWdfYXJyYXlfc2l6ZSI6dHJ1ZSwibGl2ZV9jaGF0X2VuYWJsZV9ydGFfbWFuYWdlciI6dHJ1ZSwibG9nX2NsaWNrX3dpdGhfbGF5ZXJfZnJvbV9lbGVtZW50X2luX2NvbW1hbmRfaGFuZGxlciI6dHJ1ZSwibWF3X2VuYWJsZV9uZXR3b3JrX21hY2hpbmUiOnRydWUsIm1keF9lbmFibGVfcHJpdmFjeV9kaXNjbG9zdXJlX3VpIjp0cnVlLCJtZHhfbG9hZF9jYXN0X2FwaV9ib290c3RyYXBfc2NyaXB0Ijp0cnVlLCJtZWRpdW1fcHJvZ3Jlc3NfYmFyX21vZGlmaWNhdGlvbiI6dHJ1ZSwibW9iaWxlX2FjY291bnRfbWVudV9yZWZyZXNoIjp0cnVlLCJtd2ViX2FjY291bnRfbGlua2luZ19ub2FwcCI6dHJ1ZSwibXdlYl9hbGxvd19tb2Rlcm5fc2VhcmNoX3N1Z2dlc3RfYmVoYXZpb3IiOnRydWUsIm13ZWJfYW5pbWF0ZWRfYWN0aW9ucyI6dHJ1ZSwibXdlYl9hcHBfdXBzZWxsX2J1dHRvbl9kaXJlY3RfdG9fYXBwIjp0cnVlLCJtd2ViX2JhZGdlX3NoYXBlX2RlZnJhZyI6dHJ1ZSwibXdlYl9jM19hcHBfcHJvbW9fZW5hYmxlX3JlZmVycmluZ19hcHAiOnRydWUsIm13ZWJfYzNfZW5hYmxlX2FkYXB0aXZlX3NpZ25hbHMiOnRydWUsIm13ZWJfYzNfbGlicmFyeV9wYWdlX2VuYWJsZV9yZWNlbnRfc2hlbGYiOnRydWUsIm13ZWJfYzNfbWVudV9zaWduYWxzX3JlbmRlciI6dHJ1ZSwibXdlYl9jM19yZW1vdmVfd2ViX25hdmlnYXRpb25fZW5kcG9pbnRfZGF0YSI6dHJ1ZSwibXdlYl9jM190b2FzdF91c2Vfd2l6X3JlYWN0aXZlX3JlbmRlciI6dHJ1ZSwibXdlYl9jM191c2VfY2Fub25pY2FsX2Zyb21fcGxheWVyX3Jlc3BvbnNlIjp0cnVlLCJtd2ViX2NhcnZlX291dF9pb3NfYXBwX3N0b3JlX3JlZGlyZWN0Ijp0cnVlLCJtd2ViX2NhcnZlX291dF90ZXJtc19wYWdlcyI6dHJ1ZSwibXdlYl9jaW5lbWF0aWNfd2F0Y2giOnRydWUsIm13ZWJfY29tbWFuZF9oYW5kbGVyIjp0cnVlLCJtd2ViX2RlYnVnX3N0aWNreV9zZXR0aW5ncyI6dHJ1ZSwibXdlYl9kZWxheV93YXRjaF9pbml0aWFsX2RhdGEiOnRydWUsIm13ZWJfZGlzYWJsZV9zZWFyY2hiYXJfc2Nyb2xsIjp0cnVlLCJtd2ViX2VuYWJsZV9jbGlja190b19wbGF5X3BhdXNlIjp0cnVlLCJtd2ViX2VuYWJsZV9jb2xvcmZ1bF9haV9zdW1tYXJ5Ijp0cnVlLCJtd2ViX2VuYWJsZV9keW5hbWljX2RvdWJsZV90YXBfdG9fbGlrZSI6dHJ1ZSwibXdlYl9lbmFibGVfZmluZV9zY3J1YmJpbmdfZm9yX3JlY3MiOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fYmF0Y2hfcGxheWVyX2Z1bGxzY3JlZW4iOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fYmF0Y2hfcGxheWVyX3Byb2dyZXNzX2JhciI6dHJ1ZSwibXdlYl9lbmFibGVfa2V0b19iYXRjaF9wbGF5ZXJfdG9vbHRpcHMiOnRydWUsIm13ZWJfZW5hYmxlX2tldG9fY29udGVudCI6dHJ1ZSwibXdlYl9lbmFibGVfbG9ja3VwX3ZpZXdfbW9kZWxfZm9yX3VjcCI6dHJ1ZSwibXdlYl9lbmFibGVfbWl4X3BhbmVsX3RpdGxlX21ldGFkYXRhIjp0cnVlLCJtd2ViX2VuYWJsZV9tb3JlX2NodW5rcyI6dHJ1ZSwibXdlYl9lbmFibGVfbW9yZV9kcmF3ZXIiOnRydWUsIm13ZWJfZW5hYmxlX29wdGlvbmFsX2Z1bGxzY3JlZW5fbGFuZHNjYXBlX2xvY2tpbmciOnRydWUsIm13ZWJfZW5hYmxlX292ZXJsYXlfdG91Y2hfbWFuYWdlciI6dHJ1ZSwibXdlYl9lbmFibGVfcG9ydHJhaXRfZnVsbHNjcmVlbl9hY3Rpb25zIjp0cnVlLCJtd2ViX2VuYWJsZV9wcmVtaXVtX2NhcnZlX291dF9maXgiOnRydWUsIm13ZWJfZW5hYmxlX3JlZnJlc2hfZGV0ZWN0aW9uIjp0cnVlLCJtd2ViX2VuYWJsZV9zZWFyY2hfaW1wIjp0cnVlLCJtd2ViX2VuYWJsZV9zaG9ydHNfdmlkZW9fcHJlbG9hZCI6dHJ1ZSwibXdlYl9lbmFibGVfdHdvX2xpbmVfdGl0bGVfb25fc2hvcnRzIjp0cnVlLCJtd2ViX2VuYWJsZV92YXJpc3BlZWRfY29udHJvbGxlciI6dHJ1ZSwibXdlYl9lbmFibGVfdmlkZW9fbG9vcF90b2dnbGUiOnRydWUsIm13ZWJfZW5hYmxlX3dhdGNoX2ZlZWRfaW5maW5pdGVfc2Nyb2xsIjp0cnVlLCJtd2ViX2ZpeF9jb2xkX2xvYWRfcmVzcG9uc2VfYWN0aW9ucyI6dHJ1ZSwibXdlYl9maXhfbW9uaXRvcl92aXNpYmlsaXR5X2FmdGVyX3JlbmRlciI6dHJ1ZSwibXdlYl9mb3JjZV9pb3NfZmFsbGJhY2tfdG9fbmF0aXZlX2NvbnRyb2wiOnRydWUsIm13ZWJfZnBfYXV0b19mdWxsc2NyZWVuIjp0cnVlLCJtd2ViX2ZwX2VuYWJsZV9zaG9ydHNfc3dpcGVfbG9nZ2luZyI6dHJ1ZSwibXdlYl9mdWxsc2NyZWVuX2NvbnRyb2xzIjp0cnVlLCJtd2ViX2Z1bGxzY3JlZW5fY29udHJvbHNfYWN0aW9uX2J1dHRvbnMiOnRydWUsIm13ZWJfZnVsbHNjcmVlbl93YXRjaF9zeXN0ZW0iOnRydWUsIm13ZWJfZnVsbHlfcmVhY3RpdmVfY2IiOnRydWUsIm13ZWJfaG9tZV9yZWFjdGl2ZV9zaG9ydHMiOnRydWUsIm13ZWJfaW5uZXJ0dWJlX3NlYXJjaF9jb21tYW5kIjp0cnVlLCJtd2ViX2thaW9zX2VuYWJsZV9hdXRvcGxheV9zd2l0Y2hfdmlld19tb2RlbCI6dHJ1ZSwibXdlYl9sYW5nX2luX2h0bWwiOnRydWUsIm13ZWJfbGlrZV9idXR0b25fc3luY2VkX3dpdGhfZW50aXRpZXMiOnRydWUsIm13ZWJfbG9nb191c2VfaG9tZV9wYWdlX3ZlIjp0cnVlLCJtd2ViX2xvbmdfcHJlc3Nfc3BlZWR1cF92aWJyYXRpb24iOnRydWUsIm13ZWJfbmF0aXZlX2NvbnRyb2xfaW5fZmF1eF9mdWxsc2NyZWVuX3NoYXJlZCI6dHJ1ZSwibXdlYl9wbGF5ZXJfY29udHJvbF9vbl9ob3ZlciI6dHJ1ZSwibXdlYl9wbGF5ZXJfZGVsaGlfZHR0cyI6dHJ1ZSwibXdlYl9wbGF5ZXJfc2hvd19wcmV2aW91c19uZXh0X2J1dHRvbnNfaW5fcGxheWxpc3QiOnRydWUsIm13ZWJfcGxheWVyX3NraXBfbm9fb3Bfc3RhdGVfY2hhbmdlcyI6dHJ1ZSwibXdlYl9wbGF5ZXJfdXNlcl9zZWxlY3Rfbm9uZSI6dHJ1ZSwibXdlYl9wbGF5bGlzdF9lbmdhZ2VtZW50X3BhbmVsIjp0cnVlLCJtd2ViX3Byb2dyZXNzX2Jhcl9zZWVrX29uX21vdXNlX2NsaWNrIjp0cnVlLCJtd2ViX3Byb3BhZ2F0ZV9wbGF5ZXJfbGlua19jbGlja3MiOnRydWUsIm13ZWJfcHVsbF8yX2Z1bGwiOnRydWUsIm13ZWJfcHVsbF8yX2Z1bGxfZW5hYmxlX3RvdWNoX2hhbmRsZXJzIjp0cnVlLCJtd2ViX3NjaGVkdWxlX3dhcm1fd2F0Y2hfcmVzcG9uc2UiOnRydWUsIm13ZWJfc2VhcmNoX21heF93aWR0aF9saW1pdCI6dHJ1ZSwibXdlYl9zZWFyY2hib3hfbGVnYWN5X25hdmlnYXRpb24iOnRydWUsIm13ZWJfc2VlX2Zld2VyX3Nob3J0cyI6dHJ1ZSwibXdlYl9zaG9ydHNfY29tbWVudHNfcGFuZWxfaWRfY2hhbmdlIjp0cnVlLCJtd2ViX3Nob3J0c19lYXJseV9jb250aW51YXRpb24iOnRydWUsIm13ZWJfc2hvcnRzX2VuYWJsZV9sb25nX3ByZXNzX3NwZWVkdXAiOnRydWUsIm13ZWJfc2hvcnRzX292ZXJsYXlfZGVwcmVjYXRlX2thaW9zX2xheW91dCI6dHJ1ZSwibXdlYl9zaG93X3NpZ25faW5fYnV0dG9uX2Zyb21faGVhZGVyIjp0cnVlLCJtd2ViX3VzZV9taWNyb2Zvcm1hdF90aXRsZV9mb3JfcG9zdHMiOnRydWUsIm13ZWJfdXNlX3NlcnZlcl91cmxfb25fc3RhcnR1cCI6dHJ1ZSwibXdlYl93YXRjaF9jYXB0aW9uc19lbmFibGVfYXV0b190cmFuc2xhdGUiOnRydWUsIm13ZWJfd2F0Y2hfY2FwdGlvbnNfc2V0X2RlZmF1bHRfc2l6ZSI6dHJ1ZSwibXdlYl93YXRjaF9kZWxoaV9wbGF5ZXIiOnRydWUsIm13ZWJfd2F0Y2hfc3RvcF9zY2hlZHVsZXJfb25fcGxheWVyX3Jlc3BvbnNlIjp0cnVlLCJtd2ViX3dhdGNoZmVlZF9iaWdfdGh1bWJuYWlscyI6dHJ1ZSwibXdlYl95dF9zZWFyY2hib3giOnRydWUsIm5ldHdvcmtsZXNzX2xvZ2dpbmciOnRydWUsIm5vX2NsaWVudF92ZV9hdHRhY2hfdW5sZXNzX3Nob3duIjp0cnVlLCJwYWdlaWRfYXNfaGVhZGVyX3dlYiI6dHJ1ZSwicGxheWVyX2NvbnRyb2xzX2F1dG9uYXZfZml4Ijp0cnVlLCJwbGF5ZXJfY29udHJvbHNfc2tpcF9kb3VibGVfc2lnbmFsX3VwZGF0ZSI6dHJ1ZSwicGxheWVyX2NvbnRyb2xzX3VzZV9wbGF5ZXJfYXBpX2NvbnRleHQiOnRydWUsInBsYXllcl9jb250cm9sc192b2x1bWVfY29udHJvbHNfdXNlX3BsYXllcl9wcm9wcyI6dHJ1ZSwicG9seW1lcl9iYWRfYnVpbGRfbGFiZWxzIjp0cnVlLCJwb2x5bWVyX3ZlcmlmaXlfYXBwX3N0YXRlIjp0cnVlLCJxb2Vfc2VuZF9hbmRfd3JpdGUiOnRydWUsInJlbW92ZV9jaGV2cm9uX2Zyb21fYWRfZGlzY2xvc3VyZV9iYW5uZXJfaDUiOnRydWUsInJlbW92ZV9tYXN0aGVhZF9jaGFubmVsX2Jhbm5lcl9vbl9yZWZyZXNoIjp0cnVlLCJyZW1vdmVfc2xvdF9pZF9leGl0ZWRfdHJpZ2dlcl9mb3JfZGFpX2luX3BsYXllcl9zbG90X2V4cGlyZSI6dHJ1ZSwicm9zY2FzIjp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9lbmFibGVkIjp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX2VuYWJsZWQiOnRydWUsInNlcnZpY2Vfd29ya2VyX3B1c2hfaG9tZV9wYWdlX3Byb21wdCI6dHJ1ZSwic2VydmljZV93b3JrZXJfcHVzaF93YXRjaF9wYWdlX3Byb21wdCI6dHJ1ZSwic2hlbGxfbG9hZF9nY2YiOnRydWUsInNob3J0ZW5faW5pdGlhbF9nZWxfYmF0Y2hfdGltZW91dCI6dHJ1ZSwic2hvcnRzX2VuYWJsZV9yZWVsX2Nhcm91c2VsIjp0cnVlLCJzaG91bGRfdXNlX3l0X3ZvaWNlX2VuZHBvaW50X2luX2thaW9zIjp0cnVlLCJzbWFydGVyX3ZlX2RlZHVwcGluZyI6dHJ1ZSwic3RvcF9oYW5kbGluZ19jbGlja19mb3Jfbm9uX3JlbmRlcmluZ19vdmVybGF5X2xheW91dCI6dHJ1ZSwic3VwcHJlc3NfZXJyb3JfMjA0X2xvZ2dpbmciOnRydWUsInN5bmNlZF9wYW5lbF9zY3JvbGxpbmdfY29udHJvbGxlciI6dHJ1ZSwidG9vbHRpcF9yZWZhY3Rvcl9mb3JfaG90a2V5Ijp0cnVlLCJ1c2VfZXZlbnRfdGltZV9tc19oZWFkZXIiOnRydWUsInVzZV9maWZvX2Zvcl9uZXR3b3JrbGVzcyI6dHJ1ZSwidXNlX3JlcXVlc3RfdGltZV9tc19oZWFkZXIiOnRydWUsInVzZV9zZXNzaW9uX2Jhc2VkX3NhbXBsaW5nIjp0cnVlLCJ1c2VfdGh1bWJuYWlsX292ZXJsYXlfdGltZV9zdGF0dXNfcmVuZGVyZXJfZm9yX2xpdmVfYmFkZ2UiOnRydWUsInZzc19maW5hbF9waW5nX3NlbmRfYW5kX3dyaXRlIjp0cnVlLCJ2c3NfcGxheWJhY2tfdXNlX3NlbmRfYW5kX3dyaXRlIjp0cnVlLCJ3YXRjaF9wdWJzdWJfcmVmYWN0b3IiOnRydWUsIndlYl9hZGFwdGl2ZV9yZXBlYXRfYXNlIjp0cnVlLCJ3ZWJfYWx3YXlzX2xvYWRfY2hhdF9zdXBwb3J0Ijp0cnVlLCJ3ZWJfYXBpX3VybCI6dHJ1ZSwid2ViX2F0dGVudGlvbl9sb2dnaW5nX2VuYWJsZWQiOnRydWUsIndlYl9hdHRlbnRpb25fbG9nZ2luZ19leHBvcnRfdG9fZ2VsIjp0cnVlLCJ3ZWJfYXR0cmlidXRlZF9zdHJpbmdfZGVlcF9lcXVhbF9idWdmaXgiOnRydWUsIndlYl9hdXRvbmF2X2FsbG93X29mZl9ieV9kZWZhdWx0Ijp0cnVlLCJ3ZWJfYnV0dG9uX29yX2FuY2hvcl9saXN0X2l0ZW0iOnRydWUsIndlYl9idXR0b25fdmlld19tb2RlbF9ub25fbnVsbGlzaF9kYXRhIjp0cnVlLCJ3ZWJfYnV0dG9uX3ZtX3JlZmFjdG9yX2Rpc2FibGVkIjp0cnVlLCJ3ZWJfYzNfbG9nX2FwcF9pbml0X2ZpbmlzaCI6dHJ1ZSwid2ViX2NvbW1lbnRfcGFuZWxfZWFzeV9leHBhbmQiOnRydWUsIndlYl9jc2lfYWN0aW9uX3NhbXBsaW5nX2VuYWJsZWQiOnRydWUsIndlYl9kZWR1cGVfdmVfZ3JhZnRpbmciOnRydWUsIndlYl9kaXNhYmxlX2JhY2tkcm9wX2ZpbHRlciI6dHJ1ZSwid2ViX2Rpc2FibGVfY2hpcF92aWV3X21vZGVsX211dGF0aW9uIjp0cnVlLCJ3ZWJfZW5hYmxlX2FiX3JzcF9jbCI6dHJ1ZSwid2ViX2VuYWJsZV9hZF9idXR0b25fc3R5bGVfb3ZlcnJpZGUiOnRydWUsIndlYl9lbmFibGVfYXNrX2Rpc2NsYWltZXJfdXBkYXRlIjp0cnVlLCJ3ZWJfZW5hYmxlX2Nhbm9uaWNhbF91cmxfbWFuYWdlciI6dHJ1ZSwid2ViX2VuYWJsZV9jb3Vyc2VfaWNvbl91cGRhdGUiOnRydWUsIndlYl9lbmFibGVfZW50aXR5X3Vwc2VydF9vbl91cGRhdGUiOnRydWUsIndlYl9lbmFibGVfZXJyb3JfMjA0Ijp0cnVlLCJ3ZWJfZW5hYmxlX2xhenlfY3NzIjp0cnVlLCJ3ZWJfZW5hYmxlX3RodW1ibmFpbF9vdmVybGF5X2FsaWdubWVudCI6dHJ1ZSwid2ViX2djZl9oYXNoZXNfaW5uZXJ0dWJlIjp0cnVlLCJ3ZWJfZ2VsX3RpbWVvdXRfY2FwIjp0cnVlLCJ3ZWJfaGlkZV95b3VyX2RhdGFfb25fYXV0b21vdGl2ZSI6dHJ1ZSwid2ViX2ltcF9lbmFibGVfY3NpX3N0YXJ0X3RpY2siOnRydWUsIndlYl9tb25vbWVyX3dlYl9jb21wb25lbnRfd3JhcHBlcl9oYW5kbGVfZXJyb3JzIjp0cnVlLCJ3ZWJfbm9uX25hdmlnYXRpbmdfYXRhZyI6dHJ1ZSwid2ViX3BhcmVudF90YXJnZXRfZm9yX3NoZWV0cyI6dHJ1ZSwid2ViX3BlcnNpc3Rfc2VydmVyX2F1dG9uYXZfc3RhdGVfb25fY2xpZW50Ijp0cnVlLCJ3ZWJfcGxheWJhY2tfYXNzb2NpYXRlZF92ZSI6dHJ1ZSwid2ViX3BsYXllcl91cGRhdGVkX2VudHJ5cG9pbnQiOnRydWUsIndlYl9wcmVmZXRjaF9wcmVsb2FkX3ZpZGVvIjp0cnVlLCJ3ZWJfcHJvZ3Jlc3NfYmFyX2RyYWdnYWJsZSI6dHJ1ZSwid2ViX3Byb3BhZ2F0ZV92aXNpYmlsaXR5X3RvX2FwcGxpY2F0aW9uX3N0YXRlIjp0cnVlLCJ3ZWJfcmVtb3ZlX3NuYWNrYmFyX2FjdGlvbnMiOnRydWUsIndlYl9zZWN0aW9uX2xpc3RfcmVuZGVyZXJfd3JhcHBlZF9jb250ZW50cyI6dHJ1ZSwid2ViX3Nob3J0c19hdWRpb190cmFja19waWNrZXIiOnRydWUsIndlYl9zaG9ydHNfZW5hYmxlX3JlbW92ZV9zZWFyY2hfcGl2b3RfYmFja19idXR0b24iOnRydWUsIndlYl9zaG9ydHNfaW5saW5lX211dGVkX3BsYXliYWNrIjp0cnVlLCJ3ZWJfc2hvcnRzX3duX3NoZWxmX2hlYWRlcl90dW5pbmciOnRydWUsIndlYl91bmlmaWVkX2ZldGNoIjp0cnVlLCJ3ZWJfdXBkYXRlX3BhbmVsX3Zpc2liaWxpdHlfbG9nZ2luZ19maXgiOnRydWUsIndlYl93YXRjaF9jb250cm9sc19zdGF0ZV9zaWduYWxzIjp0cnVlLCJ3ZWJmZV9td2ViX3dhdGNoX21pY3JvZGF0YSI6dHJ1ZSwid2ViZmVfd2F0Y2hfc2hvcnRzX2Nhbm9uaWNhbF91cmxfZml4Ijp0cnVlLCJ3ZWJwb19leGl0X29uX25ldF9lcnIiOnRydWUsIndpel9kaWZmX292ZXJ3cml0YWJsZSI6dHJ1ZSwid2l6X3dyYXBwZXJfY2FsbGJhY2tfcHJvcHNfZml4Ijp0cnVlLCJ3dWdfbmV0d29ya2luZ19nemlwX3JlcXVlc3QiOnRydWUsIkg1X2FzeW5jX2xvZ2dpbmdfZGVsYXlfbXMiOjMwMDAwLjAsImF1dG9wbGF5X3BhdXNlX2J5X2xhY3Rfc2FtcGxpbmdfZnJhY3Rpb24iOjAuMCwiY2luZW1hdGljX3dhdGNoX2VmZmVjdF9vcGFjaXR5IjowLjQsImxvZ193aW5kb3dfb25lcnJvcl9mcmFjdGlvbiI6MC4xLCJzcGVlZG1hc3Rlcl9wbGF5YmFja19yYXRlIjoyLjAsIndlYl9hdHRlbnRpb25fbG9nZ2luZ19zY3JvbGxfdGhyb3R0bGUiOjUwMC4wLCJ3ZWJfZGVhZF9jb2RlX2RldGVjdG9yX3NhbXBsaW5nX3JhdGUiOjAuMCwid2ViX2xvYWRfcHJlZGljdGlvbl90aHJlc2hvbGQiOjAuMywid2ViX25hdmlnYXRpb25fcHJlZGljdGlvbl90aHJlc2hvbGQiOjAuMSwid2ViX3Bial9sb2dfd2FybmluZ19yYXRlIjowLjAsIndlYl9zeXN0ZW1faGVhbHRoX2ZyYWN0aW9uIjowLjAxLCJ5dGlkYl90cmFuc2FjdGlvbl9lbmRlZF9ldmVudF9yYXRlX2xpbWl0IjowLjAyLCJhdHRfaW5pdF9kZWxheSI6NTAwLCJhdXRvcGxheV9wYXVzZV9ieV9sYWN0X3NlYyI6MCwiYm90Z3VhcmRfYXN5bmNfc25hcHNob3RfdGltZW91dF9tcyI6MzAwMCwiY2hlY2tfbmF2aWdhdG9yX2FjY3VyYWN5X3RpbWVvdXRfbXMiOjAsImNpbmVtYXRpY193YXRjaF9jc3NfZmlsdGVyX2JsdXJfc3RyZW5ndGgiOjQwLCJjaW5lbWF0aWNfd2F0Y2hfZmFkZV9vdXRfZHVyYXRpb24iOjUwMCwiY2xvc2Vfd2Vidmlld19kZWxheV9tcyI6MTAwLCJjbG91ZF9zYXZlX2dhbWVfZGF0YV9yYXRlX2xpbWl0X21zIjozMDAwLCJjb21wcmVzc2lvbl9kaXNhYmxlX3BvaW50IjoxMCwiY3VzdG9tX2FjdGl2ZV92aWV3X3Rvc190aW1lb3V0X21zIjozNjAwMDAwLCJlbWJlZHNfd2lkZ2V0X3BvbGxfaW50ZXJ2YWxfbXMiOjAsImVuZGVtaWNfaGlnaF9jY3Zfc21lYXJpbmdfbWF4X3dpbmRvd19zZWNvbmRzIjo2MCwiZ2VsX21pbl9iYXRjaF9zaXplIjozLCJnZWxfcXVldWVfdGltZW91dF9tYXhfbXMiOjYwMDAwLCJnZXRfYXN5bmNfdGltZW91dF9tcyI6NjAwMDAsImh0bWw1X2J5dGVyYXRlX3NvZnRfY2FwIjowLCJpbml0aWFsX2dlbF9iYXRjaF90aW1lb3V0IjoyMDAwLCJtYXhfYm9keV9zaXplX3RvX2NvbXByZXNzIjo1MDAwMDAsIm1heF9wcmVmZXRjaF93aW5kb3dfc2VjX2Zvcl9saXZlc3RyZWFtX29wdGltaXphdGlvbiI6MTAsIm1pbl9wcmVmZXRjaF9vZmZzZXRfc2VjX2Zvcl9saXZlc3RyZWFtX29wdGltaXphdGlvbiI6MjAsIm1pbmlfYXBwX2NvbnRhaW5lcl9pZnJhbWVfc3JjX3VwZGF0ZV9kZWxheV9tcyI6MCwibXVsdGlwbGVfcHJldmlld19uZXdzX2R1cmF0aW9uX3RpbWUiOjExMDAwLCJtd2ViX2MzX3RvYXN0X2R1cmF0aW9uX21zIjo1MDAwLCJtd2ViX2RlZXBfbGlua19mYWxsYmFja190aW1lb3V0X21zIjoxMDAwMCwibXdlYl9kZWxheV9yZXNwb25zZV9yZWNlaXZlZF9hY3Rpb25zIjoxMDAsIm13ZWJfZHdlbGxfZGVsYXlfbXMiOjUwMCwibXdlYl9mcF9kcGFkX3JhdGVfbGltaXRfbXMiOjAsIm13ZWJfZnBfZHBhZF93YXRjaF90aXRsZV9jbGFtcF9saW5lcyI6MCwibXdlYl9oaXN0b3J5X21hbmFnZXJfY2FjaGVfc2l6ZSI6MTAwLCJtd2ViX2lvc19mdWxsc2NyZWVuX3BsYXliYWNrX3RyYW5zaXRpb25fZGVsYXlfbXMiOjUwMCwibXdlYl9pb3NfZnVsbHNjcmVlbl9zeXN0ZW1fcGF1c2VfZXBpbHNvbl9tcyI6MCwibXdlYl9vdmVycmlkZV9yZXNwb25zZV9zdG9yZV9leHBpcmF0aW9uX21zIjowLCJtd2ViX3Nob3J0c19lYXJseV9jb250aW51YXRpb25fdHJpZ2dlcl90aHJlc2hvbGQiOjQsIm13ZWJfc2hvcnRzX251bWJlcl9vZl90aHVtYm5haWxzX3Nob3duIjoyLCJtd2ViX3cyd19tYXhfYWdlX3NlY29uZHMiOjAsIm13ZWJfd2F0Y2hfY2FwdGlvbnNfZGVmYXVsdF9zaXplIjoyLCJuZW9uX2RhcmtfbGF1bmNoX2dyYWRpZW50X2NvdW50IjowLCJuZXR3b3JrX3BvbGxpbmdfaW50ZXJ2YWwiOjMwMDAwLCJwbGF5X3BpbmdfaW50ZXJ2YWxfbXMiOjEwMDAwLCJzZW5kX2NvbmZpZ19oYXNoX3RpbWVyIjowLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX2xvZ2dlZF9vdXRfcHJvbXB0X3dhdGNoZXMiOi0xLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX3Byb21wdF9jYXAiOi0xLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX3Byb21wdF9kZWxheV9taWNyb3NlY29uZHMiOjM4ODgwMDAwMDAwMDAsInNob3dfbWluaV9hcHBfYWRfd2ViX3JlZ3VsYXJfZnJlcXVlbmN5X2NhcF9tcyI6MjQwMDAwLCJzaG93X21pbmlfYXBwX2FkX3dlYl9yZXdhcmRlZF9mcmVxdWVuY3lfY2FwX21zIjowLCJzbG93X2NvbXByZXNzaW9uc19iZWZvcmVfYWJhbmRvbl9jb3VudCI6NCwic3BlZWRtYXN0ZXJfY2FuY2VsbGF0aW9uX21vdmVtZW50X2RwIjoxMCwic3BlZWRtYXN0ZXJfdG91Y2hfYWN0aXZhdGlvbl9tcyI6NTAwLCJ3ZWJfYWlfc2VhcmNoX3JvbGxvdXRfdmVyc2lvbiI6MSwid2ViX2ZvcmVncm91bmRfaGVhcnRiZWF0X2ludGVydmFsX21zIjoyODAwMCwid2ViX2dlbF9kZWJvdW5jZV9tcyI6MTAwMDAsIndlYl9sb2dnaW5nX21heF9iYXRjaCI6MTAwLCJ3ZWJfbWF4X3RyYWNpbmdfZXZlbnRzIjo1MCwid2ViX3Nlc3Npb25fcmVwbGF5X21vdXNlbW92ZV9pbnRlcnZhbCI6MCwid2ViX3Nlc3Npb25fcmVwbGF5X3Njcm9sbF9pbnRlcnZhbCI6MCwid2ViX3Nlc3Npb25fcmVwbGF5X3NlbmRfYWZ0ZXJfdGltZW91dCI6MCwid2ViX3RyYWNpbmdfc2Vzc2lvbl9yZXBsYXkiOjAsIndpbF9pY29uX21heF9jb25jdXJyZW50X2ZldGNoZXMiOjk5OTksInl0Y3NpX2RlYnVnX21heF9zaXplIjoxMDAsInl0aWRiX3JlbWFrZV9kYl9yZXRyaWVzIjoxLCJ5dGlkYl9yZW9wZW5fZGJfcmV0cmllcyI6MCwiV2ViQ2xpZW50UmVsZWFzZVByb2Nlc3NDcml0aWNhbF9feW91dHViZV9lbWJlZHNfY2xpZW50X3ZlcnNpb25fb3ZlcnJpZGUiOiIiLCJXZWJDbGllbnRSZWxlYXNlUHJvY2Vzc0NyaXRpY2FsX195b3V0dWJlX2VtYmVkc193ZWJfY2xpZW50X3ZlcnNpb25fb3ZlcnJpZGUiOiIiLCJkZWJ1Z19mb3JjZWRfaW50ZXJuYWxjb3VudHJ5Y29kZSI6IiIsImVuYWJsZV93ZWJfbWVkaWFfc2VydmljZSI6IkRJU0FCTEVEIiwiaWxfcGF5bG9hZF9zY3JhcGluZyI6IiIsImxpdmVfY2hhdF91bmljb2RlX2Vtb2ppX2pzb25fdXJsIjoiaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20veW91dHViZS9pbWcvZW1vamlzL2Vtb2ppcy1zdmctOS5qc29uIiwibXdlYl9kZWVwX2xpbmtfZmVhdHVyZV90YWdfc3VmZml4IjoiNTE4MzE2MTUiLCJtd2ViX2VuYWJsZV9zaG9ydHNfaW5uZXJ0dWJlX3BsYXllcl9wcmVmZXRjaF90cmlnZ2VyIjoiTk9ORSIsIm13ZWJfZnBfZHBhZCI6ImhvbWUsc2VhcmNoLGJyb3dzZSxjaGFubmVsLGNyZWF0ZV9jaGFubmVsLGV4cGVyaW1lbnRzLHNldHRpbmdzLHRyZW5kaW5nLG9vcHMsNDA0LHBhaWRfbWVtYmVyc2hpcHMsc3BvbnNvcnNoaXAscHJlbWl1bSxzaG9ydHMiLCJtd2ViX2ZwX2RwYWRfbGluZWFyX25hdmlnYXRpb24iOiIiLCJtd2ViX2ZwX2RwYWRfbGluZWFyX25hdmlnYXRpb25fdmlzaXRvciI6IiIsIm13ZWJfZnBfZHBhZF92aXNpdG9yIjoiIiwibXdlYl9wcmVsb2FkX3ZpZGVvX2J5X3BsYXllcl92YXJzIjoiIiwicGxhY2VfcGl2b3RfdHJpZ2dlcmluZ19jb250YWluZXJfYWx0ZXJuYXRlIjoiIiwicGxhY2VfcGl2b3RfdHJpZ2dlcmluZ19jb3VudGVyZmFjdHVhbF9jb250YWluZXJfYWx0ZXJuYXRlIjoiIiwic2VydmljZV93b3JrZXJfcHVzaF9mb3JjZV9ub3RpZmljYXRpb25fcHJvbXB0X3RhZyI6IjEiLCJzZXJ2aWNlX3dvcmtlcl9zY29wZSI6Ii8iLCJzdWdnZXN0X2V4cF9zdHIiOiIiLCJ3ZWJfY2xpZW50X3ZlcnNpb25fb3ZlcnJpZGUiOiIiLCJlbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX2FsbG93ZWRfdmlkZW9faWRzIjpbIk9KbHdJZG9GejlBIiwiQXJLYkF4MUstMlUiLCJtX2RoTVN2VUNJYyIsIkMxRGhwSjA3WnVFIiwiTnEyd1lsV0Z1Y2ciLCJKQzdmM0VVRGFxdyIsInZyM1h5VkNSNFQwIiwiZ0NOZURXQ0kwdm8iLCJrQlR1ZG00Z2VNcyIsIkZ4c2ZWWDZCMU1rIiwieWxZSlNCVWdhTUEiLCJWV2hRNnhzcG5TYyIsIlJIVWF1TWNZbFgwIiwiY2IxMkttTU1ESkEiLCJXSnhFal9ocnBTZyIsImV1aFktdG1nOXg4IiwiVGxJVkkyRVc3UjAiLCJNSU5mdk9YNEJ6SSIsInlIbVBXemtoY1o4IiwicDN3MXZPOVh2MjQiLCJWbGFDbnAxZnhJOCIsIi1PZkEwNEJENEdBIiwiMW9kWTNJWXNObm8iLCJ3aVRUclZxUlZEdyIsIkRmbTJyQi1uUTlZIiwiUW0xRnR6OGxWbkkiLCI5aXRBeHFfU0dETSIsInlGSTN3cFh5NHpBIiwiUHk1SllaWEp2em8iLCJiNHRFNWFLaHRsZyIsIjVKRHhqc0FWYUdrIiwiZVVtZkdQYXp1RU0iLCJXOG5UaHE2MlZiNCIsIlZManZTM3VmbFhjIiwiQmZkTEt2SkJNX2MiLCJ3ZUxYZHdWalN4cyIsIjJKYS11UE9rejdJIiwiQTlRQlZGRVl4T1EiLCJrLVpGUWtrSFVmYyIsInd1dTBEMjBBWnFJIiwiX0h2aVN5Qzd6U1UiLCJfX3hPel9RM3FSNCIsIncyc0I4N2pMRTFJIiwiOHJUVEVNZE1oOFEiLCItazZtcGdteGVyVSIsIjk3Y2tuckp5TFdnIiwiMkZJdFZ5eExOTmMiLCJvdG54ZmNzR0UtWSIsInM5eEwxRHBCc2ZRIiwid2ZBR0JWZ1Vycm8iLCJuWEg2VHhRLXNpOCIsIldpSTFYZ19uRXU4IiwiM2ZsYXNHVlVyQ0EiLCJlRFlfSGU5MmxjVSIsImE0N2NrWEtaanhJIiwiSTZXUlhlS1pLNjQiLCJUOUo1RHFQMkRLdyIsIkt0a19JMHBVcEc4IiwiZVEyY3pHcU9DUGciLCJoTG1VNDlobVo0YyIsIjdmN01nYU1FN1NjIiwiUUI1Qk5kQkZ1akUiLCJBR2h0TVVfZmk3MCIsInAyUmFRVVJSQXdBIiwibXpfX0VNWXBXUHciLCI2amhMdVNRVkl4VSIsInJDODN2X3V1SXFvIiwiNkRhR2RKUl9lTGciLCJjbTQzdVhqZnZaWSIsIlkxSnNQcG0yYm1RIiwiejA5N2pQeUtlZW8iLCJUWVZaV1VUamt4MCIsIlZIYUF2ZW5mVERrIiwidHY5T1VfNVEwcFEiLCI2b0tDdnptNkhtZyIsIkJFRlVFUmhUMG4wIiwidVROLWV1MC1PWEUiLCJoYmFwcmhSN3pUbyIsIjJDVjBWLW9NTkZNIiwidThkU09Lb05KcDAiLCJIOE1xcXdtRnN4WSIsIklza2ttTlBKZFVrIiwiWDlIX0V6cERHWFEiXSwia2V2bGFyX2NvbW1hbmRfaGFuZGxlcl9jb21tYW5kX2Jhbmxpc3QiOltdLCJtaW5pX2FwcF9pZHNfd2l0aG91dF9nYW1lX3JlYWR5IjpbIlVna3hISHRzYWsxU0M4bVJHSE1aZXdjNEh6ZUFZM3loUFBtSiIsIlVna3g3T2d6RnFFNnpfNU10ZjRZc290R2ZRTklJMURGX1JCbSJdLCJ3ZWJfb3Bfc2lnbmFsX3R5cGVfYmFubGlzdCI6W10sIndlYl90cmFjaW5nX2VuYWJsZWRfc3BhbnMiOlsiZXZlbnQiLCJjb21tYW5kIl19LCJHQVBJX0hJTlRfUEFSQU1TIjoibTsvXy9zY3MvYWJjLXN0YXRpYy9fL2pzL2tcdTAwM2RnYXBpLmdhcGkuZW4uNTRfSER2ZU90a1EuTy9kXHUwMDNkMS9yc1x1MDAzZEFIcE9vbzlRdWZPZFBZVFJrYlRKYWRUVzZzbXN4bFdMTXcvbVx1MDAzZF9fZmVhdHVyZXNfXyIsIkdBUElfSE9TVCI6Imh0dHBzOi8vYXBpcy5nb29nbGUuY29tIiwiR0FQSV9MT0NBTEUiOiJlbl9VUyIsIkdMIjoiTk8iLCJITCI6ImVuIiwiSFRNTF9ESVIiOiJsdHIiLCJIVE1MX0xBTkciOiJlbiIsIklOTkVSVFVCRV9BUElfS0VZIjoiQUl6YVN5QU9fRkoyU2xxVThRNFNURUhMR0NpbHdfWTlfMTFxY1c4IiwiSU5ORVJUVUJFX0FQSV9WRVJTSU9OIjoidjEiLCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiOiJXRUJfRU1CRURERURfUExBWUVSIiwiSU5ORVJUVUJFX0NMSUVOVF9WRVJTSU9OIjoiMi4yMDI2MDcyNC4wMS4wMCIsIklOTkVSVFVCRV9DT05URVhUIjp7ImNsaWVudCI6eyJobCI6ImVuIiwiZ2wiOiJOTyIsInJlbW90ZUhvc3QiOiIxOTUuNjQuMTE4LjE1MiIsImRldmljZU1ha2UiOiIiLCJkZXZpY2VNb2RlbCI6IiIsInZpc2l0b3JEYXRhIjoiQ2d0dGVXUkJObUZOTUVzMFNTamt2SjNUQmpJb0NnSk9UeElpRWg0U0hBc01EZzhRRVJJVEZCVVdGeGdaR2hzY0hSNGZJQ0VpSXlRbEppY2dYbUxmQWdyY0FqSXdMbGxVUFdOSlgyWk1NVTlqWVY4MlJsZExTREZFYUZJM1psQjRlSEUwVkhWc2NHRkpaR2RVWjJjeVJIWkViemxzUzNoUGNXVXhUMGhVWkUxSWVFTXhSVlV6WkVscE1uWkxjR3BwZFRkRVdGWjNZeko1ZURoMVJta3RjazUzTlZreVNGSkNVVnBCU0VSeFdrNXVTWFJTUjBocVpscE5RbFZFUVdab09VTlJUbGRSVlRSNFJHTm5aVVpsVTNsblpUTkRURGhPTURFM1dFOUlSV1ZPUlVKMFVWOXpRMWRxVkVKV1RuZ3hPVVZuZFcxRlpEaHZOSE5EU1ZOaGNsUktSemxHY0Zka1lqZHRRbE5vWW01aFVEaGlhbVZSUjJ0TVFrdDZTR1V6WlRKelFYVkVRbXRaZDBaSmRHeGxTVmhZY2pNdFdrVlFPVUZoY1RoV2JVeDNSelJqUVdKMmFXZEJNMWt6VW1Gek1rSlFXbVkzYUc5Sk5WQTRTVXRtZERneWVHeDNUSGs0V2tsblJWazJlWGx1TTJKcU1YbDZXbVJYVUhSaFYxVjJaMVo2UkU5cWVsUTRkMmxDY0RNMldXWnROelpuVEdoSFRFeFlja3hIWnclM0QlM0QiLCJ1c2VyQWdlbnQiOiJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0OyBydjoxMzQuMCkgR2Vja28vMjAxMDAxMDEgRmlyZWZveC8xMzQuMCxnemlwKGdmZSkiLCJjbGllbnROYW1lIjoiV0VCX0VNQkVEREVEX1BMQVlFUiIsImNsaWVudFZlcnNpb24iOiIyLjIwMjYwNzI0LjAxLjAwIiwib3NOYW1lIjoiV2luZG93cyIsIm9zVmVyc2lvbiI6IjEwLjAiLCJvcmlnaW5hbFVybCI6Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLzZqZVBicVhKaGU4IiwicGxhdGZvcm0iOiJERVNLVE9QIiwiY2xpZW50Rm9ybUZhY3RvciI6IlVOS05PV05fRk9STV9GQUNUT1IiLCJjb25maWdJbmZvIjp7ImFwcEluc3RhbGxEYXRhIjoiQ09TOG5kTUdFSU9IdUNJUXZvVFJIQkQyOTlFY0VKYnYwUndRZ2MzT0hCQ1M4dEVjRUluazBSd1FodUdBRXhDZno0QVRFTjY4emh3UXZZcXdCUkRnNnRFY0VMMlpzQVVRdmJhdUJSREstNEFURUxqa3pod1F0dmlBRXhER19JQVRFT240MFJ3UXZLVFFIQkFBRUozUXNBVVFuWWE0SWhEeHROQWNFTUdQMEJ3US1mTFJIQkQycTdBRkVKbU5zUVVRaV9mUEhCRGd0OUVjRVB5eXpod1F0cVRSSEJEYTk4NGNFTXpmcmdVUXlmYUFFeENKc000Y0VJaVEwUndRaDZ6T0hCQzU4TkVjRUxDR3p4d1EtTVNBRXhDT2tORWNFSXVIdUNJUXBLblJIQkR2M3RFY0VLN1d6eHdRMWZhQUV4REVqTkFjRVBUcDBSd1E3TTNRSENwc1EwRk5VMVJTVms4dFduRXRSRXhwVlVWd1VVTnVRVGMxUmxoTFRVWkxhbFpFT0dkRVJFNU5UakpCWW10Q2NXZEhiMHh5Y0VONlMyZHlRVkZFYTBzMFJDMTVZVEkxUVdKcmFGSm1VWHBCWWtWcloxaE1VR05WYmpKa1ZVWXpVM3B0VW5SWGRUZDROMkpDYURCSU1BQSUzRCJ9LCJicm93c2VyTmFtZSI6IkZpcmVmb3giLCJicm93c2VyVmVyc2lvbiI6IjEzNC4wIiwiYWNjZXB0SGVhZGVyIjoidGV4dC9odG1sLGFwcGxpY2F0aW9uL3hodG1sK3htbCxhcHBsaWNhdGlvbi94bWw7cVx1MDAzZDAuOSwqLyo7cVx1MDAzZDAuOCIsImRldmljZUV4cGVyaW1lbnRJZCI6IkNoeE9lbGt5VG5wSmQwMUVXVE5PVkVrMVRVUm5NVTVFUlROTlVUMDlFT1M4bmRNR0dPUzhuZE1HIiwicm9sbG91dFRva2VuIjoiQ1BTcDE2bW4wTW42TUJETzQ3X0FfUEtWQXhqTzQ3X0FfUEtWQXclM0QlM0QifSwidXNlciI6eyJsb2NrZWRTYWZldHlNb2RlIjpmYWxzZX0sInJlcXVlc3QiOnsidXNlU3NsIjp0cnVlfSwiY2xpY2tUcmFja2luZyI6eyJjbGlja1RyYWNraW5nUGFyYW1zIjoiSWhNSWk5Ty93UHp5bFFNVlJRY0RCUjA4T0JCWiJ9LCJ0aGlyZFBhcnR5Ijp7ImVtYmVkZGVkUGxheWVyQ29udGV4dCI6eyJlbWJlZGRlZFBsYXllckVuY3J5cHRlZENvbnRleHQiOiJBQ21ibEJYeUZjcnltTWpZQXhreUpDaGk3YUppR1k1dkp6SnUxYUVZM3ZoOXRWQkxwWGs5X2tGTGl3TGtxWFJCZDFtWnk4VXVrMmliRUlTajZ2Zy1ISTV5VzJucG5YN0dsN0ZDQkZ2eFU4b3ZzVWhjcmRGRkVZamJUNlE1enN4MHRkdzI0SWE1SXluMTdnIiwiYW5jZXN0b3JPcmlnaW5zU3VwcG9ydGVkIjpmYWxzZX19fSwiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiOjU2LCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJJTk5FUlRVQkVfQ09OVEVYVF9HTCI6Ik5PIiwiSU5ORVJUVUJFX0NPTlRFWFRfSEwiOiJlbiIsIkxBVEVTVF9FQ0FUQ0hFUl9TRVJWSUNFX1RSQUNLSU5HX1BBUkFNUyI6eyJjbGllbnQubmFtZSI6IldFQl9FTUJFRERFRF9QTEFZRVIiLCJjbGllbnQuanNmZWF0IjoiMjAyMSJ9LCJMT0dHRURfSU4iOmZhbHNlLCJQQUdFX0JVSUxEX0xBQkVMIjoieW91dHViZS5lbWJlZHMud2ViXzIwMjYwNzI0XzAxX1JDMDAiLCJQQUdFX0NMIjo5NTMyMDYwMTAsIlNFUlZFUl9OQU1FIjoiV2ViRkUiLCJWSVNJVE9SX0RBVEEiOiJDZ3R0ZVdSQk5tRk5NRXMwU1Nqa3ZKM1RCaklvQ2dKT1R4SWlFaDRTSEFzTURnOFFFUklURkJVV0Z4Z1pHaHNjSFI0ZklDRWlJeVFsSmljZ1htTGZBZ3JjQWpJd0xsbFVQV05KWDJaTU1VOWpZVjgyUmxkTFNERkVhRkkzWmxCNGVIRTBWSFZzY0dGSlpHZFVaMmN5UkhaRWJ6bHNTM2hQY1dVeFQwaFVaRTFJZUVNeFJWVXpaRWxwTW5aTGNHcHBkVGRFV0ZaM1l6SjVlRGgxUm1rdGNrNTNOVmt5U0ZKQ1VWcEJTRVJ4V2s1dVNYUlNSMGhxWmxwTlFsVkVRV1pvT1VOUlRsZFJWVFI0UkdOblpVWmxVM2xuWlRORFREaE9NREUzV0U5SVJXVk9SVUowVVY5elExZHFWRUpXVG5neE9VVm5kVzFGWkRodk5ITkRTVk5oY2xSS1J6bEdjRmRrWWpkdFFsTm9ZbTVoVURoaWFtVlJSMnRNUWt0NlNHVXpaVEp6UVhWRVFtdFpkMFpKZEd4bFNWaFljak10V2tWUU9VRmhjVGhXYlV4M1J6UmpRV0oyYVdkQk0xa3pVbUZ6TWtKUVdtWTNhRzlKTlZBNFNVdG1kRGd5ZUd4M1RIazRXa2xuUlZrMmVYbHVNMkpxTVhsNldtUlhVSFJoVjFWMloxWjZSRTlxZWxRNGQybENjRE0yV1dadE56Wm5UR2hIVEV4WWNreEhadyUzRCUzRCIsIldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdTIjp7IldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdfSURfRU1CRURERURfUExBWUVSIjp7InJvb3RFbGVtZW50SWQiOiJtb3ZpZV9wbGF5ZXIiLCJqc1VybCI6Ii9zL3BsYXllci83YTc5NjljMi9wbGF5ZXJfZW1iZWRfZXM2LnZmbHNldC9lbl9VUy9iYXNlLmpzIiwiY3NzVXJsIjoiL3MvcGxheWVyLzdhNzk2OWMyL3d3dy1wbGF5ZXIuY3NzIiwiY29udGV4dElkIjoiV0VCX1BMQVlFUl9DT05URVhUX0NPTkZJR19JRF9FTUJFRERFRF9QTEFZRVIiLCJldmVudExhYmVsIjoiZW1iZWRkZWQiLCJjb250ZW50UmVnaW9uIjoiTk8iLCJobCI6ImVuX1VTIiwiaG9zdExhbmd1YWdlIjoiZW4iLCJpbm5lcnR1YmVBcGlLZXkiOiJBSXphU3lBT19GSjJTbHFVOFE0U1RFSExHQ2lsd19ZOV8xMXFjVzgiLCJpbm5lcnR1YmVBcGlWZXJzaW9uIjoidjEiLCJpbm5lcnR1YmVDb250ZXh0Q2xpZW50VmVyc2lvbiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJkZXZpY2UiOnsiYnJhbmQiOiIiLCJtb2RlbCI6IiIsImJyb3dzZXIiOiJGaXJlZm94IiwiYnJvd3NlclZlcnNpb24iOiIxMzQuMCIsIm9zIjoiV2luZG93cyIsIm9zVmVyc2lvbiI6IjEwLjAiLCJwbGF0Zm9ybSI6IkRFU0tUT1AiLCJpbnRlcmZhY2VOYW1lIjoiV0VCX0VNQkVEREVEX1BMQVlFUiIsImludGVyZmFjZVZlcnNpb24iOiIyLjIwMjYwNzI0LjAxLjAwIn0sInNlcmlhbGl6ZWRFeHBlcmltZW50SWRzIjoiMjQwMDQ2NDQsNTEwNjM2NDMsNTEwOTgyOTksNTEyMjI5NzMsNTEzNDA2NjIsNTEzNDk5MTQsNTEzNTMzOTMsNTEzNjY0MjMsNTEzODk2MjksNTE0NTk0MjUsNTE0OTAzMzEsNTE0OTMyMDksNTE1MDU0MzYsNTE1MzA0OTUsNTE1MzQ2NjksNTE1NjUxMTUsNTE1ODM4MjEsNTE2MDUyNTgsNTE2MDk4MjksNTE2MzQyNjcsNTE2Mzg5MzIsNTE2NDgzMzYsNTE2NzIxNjIsNTE2ODE2NjIsNTE2ODM1MDIsNTE3MjkyMTcsNTE3MzcxMzQsNTE3NDAxNDgsNTE3NDIzNzcsNTE3NDI4MjgsNTE3NzgzNDAsNTE3OTg5MjgsNTE4MDMxMjgsNTE4MDM1ODUsNTE4Mjg5NzAsNTE4MzMyNDEsNTE4NDI0MjIsNTE4NTc4MzgsNTE4NTc5MjAsNTE4ODc4ODAsNTE4OTExMDcsNTE4OTU0MDQsNTE4OTU3NzEsNTE5MDE0MzcsNTE5MDI2MDUsNTE5MDI5NzcsNTE5MTA3MzUsNTE5MjcxODgsNTE5MjczNjAsNTE5MzYyMjgsNTE5Mzk3MDMsNTE5NDQ0NjcsNTE5NDUwNTYsNTE5NTQ5MjMsNTE5NTY1MTgsNTE5NTc0NDYsNTE5NTk2OTQsNTE5NTk4MDksNTE5NTk4ODAsNTE5NTk5NjcsNTE5NjgwODQsNTE5NzE3NzYsNTE5ODMzNjcsNTE5ODQ4MjcsNTE5ODU1ODAsNTIwMDI4MDUsNTIwMTI1MjIsNTIwMTM5MjcsNTIwMTM5MzgsNTIwMTYxMzYsNTIwMTYzMjQsNTIwMjAwMzEsNTIwMjI0ODgsNTIwMjMzMzIsNTIwMjQyMTcsNTIwMjYxOTQsNTIwMjY4MTQsNTIwMjcwOTgsNTIwMjc3NTEsNTIwMjc3NTMsNTIwMzU2NDQsNTIwMzY5MzksNTIwNDMyMjcsNTIwNDY1MTksNTIwNDcxNDcsNTIwNDc2ODUsNTIwNDc2ODcsNTIwNDc2OTAsNTIwNDg0MzMsNTIwNTY1MDIsNTIwNTk3NDEsNTIwNjQxMzUsNTIwNjU1OTAsNTIwNjk5MDMsNTIwNzM5NjMsNTIwNzU0OTUsNTIwNzU5MjIsNTIwNzY3MDUsNTIwOTU1NzYsNTIwOTY1MDciLCJzZXJpYWxpemVkRXhwZXJpbWVudEZsYWdzIjoiSDVfYXN5bmNfbG9nZ2luZ19kZWxheV9tc1x1MDAzZDMwMDAwLjBcdTAwMjZhMTF5X2g1X2Fzc29jaWF0ZV9zdXJ2ZXlfcXVlc3Rpb25cdTAwM2R0cnVlXHUwMDI2YWJfZGV0X2FwbVx1MDAzZHRydWVcdTAwMjZhYl9kZXRfZWxfaFx1MDAzZHRydWVcdTAwMjZhY3Rpb25fY29tcGFuaW9uX2NlbnRlcl9hbGlnbl9kZXNjcmlwdGlvblx1MDAzZHRydWVcdTAwMjZhZF9wb2RfZGlzYWJsZV9jb21wYW5pb25fcGVyc2lzdF9hZHNfcXVhbGl0eVx1MDAzZHRydWVcdTAwMjZhbGxvd19hdXRvaGlkZV9vbl9wYXVzZWRfdmlkZW9zXHUwMDNkdHJ1ZVx1MDAyNmFsbG93X2RybV9vdmVycmlkZVx1MDAzZHRydWVcdTAwMjZhbGxvd19saXZlX2F1dG9wbGF5XHUwMDNkdHJ1ZVx1MDAyNmFsbG93X3BvbHRlcmd1c3RfYXV0b3BsYXlcdTAwM2R0cnVlXHUwMDI2YWxsb3dfc2tpcF9uZXR3b3JrbGVzc1x1MDAzZHRydWVcdTAwMjZhbGxvd192cDlfMTA4MHBfbXFfZW5jXHUwMDNkdHJ1ZVx1MDAyNmFsd2F5c19jYWNoZV9yZWRpcmVjdF9lbmRwb2ludFx1MDAzZHRydWVcdTAwMjZhbHdheXNfc2VuZF9hbmRfd3JpdGVcdTAwM2R0cnVlXHUwMDI2YW5ub3RhdGlvbl9tb2R1bGVfdmFzdF9jYXJkc19sb2FkX2xvZ2dpbmdfZnJhY3Rpb25cdTAwM2QwLjBcdTAwMjZhc3NpZ25fZHJtX2ZhbWlseV9ieV9mb3JtYXRcdTAwM2R0cnVlXHUwMDI2YXR0X3dlYl9yZWNvcmRfbWV0cmljc1x1MDAzZHRydWVcdTAwMjZhdHRhY2hfZXhwZXJpbWVudF9wcm9wYWdhdGlvbl9jb250ZXh0X3RvX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZhdHRtdXNpXHUwMDNkdHJ1ZVx1MDAyNmF1dG9wbGF5X3RpbWVcdTAwM2QxMDAwMFx1MDAyNmF1dG9wbGF5X3RpbWVfZm9yX2Z1bGxzY3JlZW5cdTAwM2QtMVx1MDAyNmF1dG9wbGF5X3RpbWVfZm9yX211c2ljX2NvbnRlbnRcdTAwM2QtMVx1MDAyNmJnX3ZtX3JlaW5pdF90aHJlc2hvbGRcdTAwM2Q3MjAwMDAwXHUwMDI2YmxvY2tfdHZodG1sNV9zaW1wbHlfZW1iZWRkZWRcdTAwM2R0cnVlXHUwMDI2YmxvY2tlZF9wYWNrYWdlc19mb3Jfc3BzXHUwMDNkW11cdTAwMjZib3RndWFyZF9hc3luY19zbmFwc2hvdF90aW1lb3V0X21zXHUwMDNkMzAwMFx1MDAyNmJ5cGFzc19saWNlbnNlX2NoZWNrX2Zvcl9pbmxpbmVfbXV0ZWRcdTAwM2R0cnVlXHUwMDI2Y2FwdGlvbnNfdXJsX2FkZF9laVx1MDAzZHRydWVcdTAwMjZjaGVja19uYXZpZ2F0b3JfYWNjdXJhY3lfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZjaGVja19wbGF5YWJpbGl0eV9zdGF0dXNfaW5fZmlsbGVyc1x1MDAzZHRydWVcdTAwMjZjbGllbnRfdWlfZW5hYmxlX211bHRpX3RyYWNrX2F1ZGlvX29uX3dlYl9lbWJlZGRlZF9wbGF5ZXJcdTAwM2R0cnVlXHUwMDI2Y29tcHJlc3Npb25fZGlzYWJsZV9wb2ludFx1MDAzZDEwXHUwMDI2Y293X29wdGltaXplX2lkb21fY29tcGF0XHUwMDNkdHJ1ZVx1MDAyNmNzaV9vbl9nZWxcdTAwM2R0cnVlXHUwMDI2Y3VzdG9tX2FjdGl2ZV92aWV3X3Rvc190aW1lb3V0X21zXHUwMDNkMzYwMDAwMFx1MDAyNmRhc2hfbWFuaWZlc3RfdmVyc2lvblx1MDAzZDVcdTAwMjZkZWJ1Z19iYW5kYWlkX2hvc3RuYW1lXHUwMDNkXHUwMDI2ZGVidWdfYmFuZGFpZF9wb3J0XHUwMDNkMFx1MDAyNmRlYnVnX3NoZXJsb2dfdXNlcm5hbWVcdTAwM2RcdTAwMjZkZWR1cHBpbmdfc2VydmVyX3ZlXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX2Zhc3RfZm9sbG93X2F1dG9uYXZfdG9nZ2xlXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX21vZGVybl9wbGF5ZXJfZGVmYXVsdF90aHVtYm5haWxfcGVyY2VudGFnZVx1MDAzZDAuMFx1MDAyNmRlbGhpX21vZGVybl9wbGF5ZXJfZmFzdGVyX2F1dG9oaWRlX2RlbGF5X21zXHUwMDNkMjAwMFx1MDAyNmRlbGhpX21vZGVybl9wbGF5ZXJfcGF1c2VfdGh1bWJuYWlsX3BlcmNlbnRhZ2VcdTAwM2QwLjZcdTAwMjZkZWxoaV9tb2Rlcm5fd2ViX3BsYXllcl9ibGVuZGluZ19tb2RlXHUwMDNkXHUwMDI2ZGVsaGlfbW9kZXJuX3dlYl9wbGF5ZXJfZGlzYWJsZV9mcm9zdGVkX2dsYXNzXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX21vZGVybl93ZWJfcGxheWVyX2hvcml6b250YWxfdm9sdW1lX2NvbnRyb2xzXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX21vZGVybl93ZWJfcGxheWVyX2xoc192b2x1bWVfY29udHJvbHNcdTAwM2R0cnVlXHUwMDI2ZGVsaGlfbW9kZXJuX3dlYl9wbGF5ZXJfcmVzcG9uc2l2ZV9jb21wYWN0X2NvbnRyb2xzX3RocmVzaG9sZFx1MDAzZDBcdTAwMjZkZXByZWNhdGVfY2FwdGlvbnNfdHJhY2tfY291bnRfZGlzcGxheVx1MDAzZHRydWVcdTAwMjZkZXByZWNhdGVfZGVsYXlfcGluZ1x1MDAzZHRydWVcdTAwMjZkZXByZWNhdGVfcGFpcl9zZXJ2bGV0X2VuYWJsZWRcdTAwM2R0cnVlXHUwMDI2ZGVza3RvcF9zcGFya2xlc19saWdodF9jdGFfYnV0dG9uXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfYXYxX3NldHRpbmdcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9jaGlsZF9ub2RlX2F1dG9fZm9ybWF0dGVkX3N0cmluZ3NcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9saWZhX2luXzJrXzRrXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfbG9nX3RvX3Zpc2l0b3JfbGF5ZXJcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV9wYWNmX2xvZ2dpbmdfZm9yX21lbW9yeV9saW1pdGVkX3R2XHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfcmVkdWNlZF9mdWxsc2NyZWVuX2F1dG9wbGF5X2NvdW50ZG93bl9mb3JfbWlub3JzXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfcmVlbF9pdGVtX3dhdGNoX2Zvcm1hdF9maWx0ZXJpbmdcdTAwM2R0cnVlXHUwMDI2ZGlzYWJsZV90b3VjaF9ldmVudHNfb25fc2tpcF9idXR0b25cdTAwM2R0cnVlXHUwMDI2ZHVyYXRpb25fYmVmb3JlX3BhdXNlX2FkX2JyZWFrX21zX2Zvcl9zeXN0ZW1fcGF1c2VcdTAwM2Q1MDAwXHUwMDI2ZWRnZV9lbmNyeXB0aW9uX2ZpbGxfcHJpbWFyeV9rZXlfdmVyc2lvblx1MDAzZHRydWVcdTAwMjZlbWJlZHNfZGVza3RvZmZfZW5hYmxlX2Fkc190b3BfYmFyXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19kZXNrdG9wX2VuYWJsZV92b2x1bWVfc2xpZGVyXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfY2hhbm5lbF9zdWJzY3JpYmVfZGVwcmVjYXRpb25cdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2VuYWJsZV9lbWJlZF9jb25maWdfZm9yX211dGVkX2F1dG9wbGF5XHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfaW5uZXJ0dWJlX3N0b3JlXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfbW92ZV9zZXRfY2VudGVyX2Nyb3BfdG9fcHVibGljXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfcGVyX3ZpZGVvX2VtYmVkX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZlbWJlZHNfd2ViX2xpdGVfbW9kZVx1MDAzZDFcdTAwMjZlbmFibGVfYTExeV9mb2N1c19maXhfZm9yX21hY19wYW5lbF9vbl9kZXNrdG9wXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hYmFuZG9uX3BpbmdfZm9yX3NzZGFpXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY2Nlc3NfY29kZV9zZXJ2aWNlX3JwY1x1MDAzZHRydWVcdTAwMjZlbmFibGVfYWNpX29uX2xyX2ZlZWRzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY3RpdmVfdmlld19kaXNwbGF5X2FkX3JlbmRlcmVyX3dlYl9ob21lXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY3RpdmVfdmlld19scl9zaG9ydHNfdmlkZW9cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FjdGl2ZV92aWV3X3dlYl9zaG9ydHNfdmlkZW9cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FkX2Nwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hZF9kaXNjbG9zdXJlX2Jhbm5lcl9hMTF5X2ZpeFx1MDAzZHRydWVcdTAwMjZlbmFibGVfYW50aXNjcmFwaW5nX3dlYl9wbGF5ZXJfZXhwaXJlZFx1MDAzZHRydWVcdTAwMjZlbmFibGVfYXBwX3Byb21vX2VuZGNhcF9lbWxfb25fdGFibGV0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hdHRlbnRpb25fbG9nZ2luZ19tZWFzdXJlX29uX3Nob3duXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hdV91MTZfdmVyaWZ5X2FnZV9wYWdlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hdXRvbW90aXZlX2Zvcm1fZmFjdG9yX2NoZWNrXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9iYXRjaGVkX2Nyb3NzX2RldmljZV9waW5nc19pbl9nZWxfZmFub3V0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jYXBhYmlsaXR5X2Zvcm1hdF9maWx0ZXJfaW5fd2F0Y2hfc2VydmVyXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jYXN0X2Zvcl93ZWJfdW5wbHVnZ2VkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jZW50ZXJlZF9jYXB0aW9uX2Zvcl90dmZpbG1fdmlkZW9cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NpcGhlcl9mb3JfbWFuaWZlc3RfdXJsc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY2xlYW51cF9tYXN0aGVhZF9hdXRvcGxheV9oYWNrX2ZpeFx1MDAzZHRydWVcdTAwMjZlbmFibGVfY2xpZW50X3BhZ2VfaWRfaGVhZGVyX2Zvcl9maXJzdF9wYXJ0eV9waW5nc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY2xpZW50X3NsaV9sb2dnaW5nXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGllbnRfdmVfc3BlY1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY3RhX2Jhbm5lcl9vbl91bnBsdWdnZWRfbHJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2N1c3RvbV9wbGF5aGVhZF9wYXJzaW5nXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jdXN0b21fc2NydWJiZXJfdjJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RhaV9zZGZfaDVfcHJlcm9sbFx1MDAzZHRydWVcdTAwMjZlbmFibGVfZGF0YXN5bmNfaWRfaGVhZGVyX2luX3dlYl92c3NfcGluZ3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RlZmF1bHRfbW9ub19jdGFfbWlncmF0aW9uX3dlYl9jbGllbnRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RzYV9hZF9iYWRnZV9mb3JfYWN0aW9uX2VuZGNhcF9vbl9hbmRyb2lkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9kc2FfYWRfYmFkZ2VfZm9yX2FjdGlvbl9lbmRjYXBfb25faW9zXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX2g1XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lbnRpdHlfc3RvcmVfZnJvbV9kZXBlbmRlbmN5X2luamVjdGlvblx1MDAzZHRydWVcdTAwMjZlbmFibGVfZXJyb3JfY29ycmVjdGlvbnNfaW5mb2NhcmRfd2ViX2NsaWVudFx1MDAzZHRydWVcdTAwMjZlbmFibGVfZXJyb3JfY29ycmVjdGlvbnNfaW5mb2NhcmRzX2ljb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9nZXRfcmVtaW5kZXJfYnV0dG9uX29uX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2lubGluZV9tdXRlZF9wbGF5YmFja19vbl93ZWJfc2VhcmNoX2Zvcl92ZGNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2lubGluZV9tdXRlZF9wbGF5YmFja19vbl93ZWJfc2VhcmNoX2Zvcl92ZGNiXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9sdGNfcGFyYW1fZmV0Y2hfZnJvbV9pbm5lcnR1YmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX21peGVkX2RpcmVjdGlvbl9mb3JtYXR0ZWRfc3RyaW5nc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfbW9kZXJuX3NraXBfYnV0dG9uX29uX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfbXdlYl9hdWRpb190cmFja19waWNrZXJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX213ZWJfa2V5Ym9hcmRfc2hvcnRjdXRzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9uZXdfcGFpZF9wcm9kdWN0X3BsYWNlbWVudFx1MDAzZHRydWVcdTAwMjZlbmFibGVfb3Blbl9pbl9uZXdfdGFiX2ljb25fZm9yX3Nob3J0X2RyX2Zvcl9kZXNrdG9wX3NlYXJjaFx1MDAzZHRydWVcdTAwMjZlbmFibGVfb3V0X29mX3N0b2NrX3RleHRfYWxsX3N1cmZhY2VzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wYWlkX2NvbnRlbnRfb3ZlcmxheV9idWdmaXhcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BhdXNlX2Fkc19vbl95dHZfaHRtbDVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BsYXllcl9jYXB0aW9uc19wZXJzaXN0ZW5jZV9zdGF0ZV9tYWNoaW5lXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wb19kZWNvcmF0aW9uX29mX2ZvcmNlZF90cmFja3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BvbGljeV9iYXNlZF9ocWFfZmlsdGVyX2luX3dhdGNoX3NlcnZlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfcHJvZ3Jlc19jb21tYW5kc19scl9mZWVkc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcHJvZ3Jlc3NfY29tbWFuZHNfZWxfZGFpXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wcm9ncmVzc19jb21tYW5kc19scl9zaG9ydHNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3B1Ymxpc2hpbmdfcmVnaW9uX3BhcmFtX2luX3N1c1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcHZfc2NyZWVuX21vZGVybl90ZXh0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9ycHJfdG9rZW5fb25fbHRsX2xvb2t1cFx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2NyZWVuX21hbmFnZXJfbGF5ZXJfc2VwYXJhdGlvblx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2RmX2NvbXBhbmlvbl9oNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2RmX2RhaV9oNV9taWRyb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfaDVfZW5kZW1pY19taWRfcG9zdF9yb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfb25faDVfdW5wbHVnZ2VkX3ZvZF9taWRyb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfc2hvcnRzX3BsYXllcl9ieXRlc19oNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9hYnJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NlcnZlcl9kcml2ZW5fYWJyX2Zvcl9iYWNrZ3JvdW5kYWJsZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9hYnJfdXJsX2dlbmVyYXRpb25cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NlcnZlcl9kcml2ZW5fcmVhZGFoZWFkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9za2lwX2FkX2d1aWRhbmNlX3Byb21wdFx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2tpcF90b19uZXh0X21lc3NhZ2luZ1x1MDAzZHRydWVcdTAwMjZlbmFibGVfc2tpcHBhYmxlX2Fkc19mb3JfdW5wbHVnZ2VkX2FkX3BvZFx1MDAzZHRydWVcdTAwMjZlbmFibGVfc21hcnRfc2tpcF9wbGF5ZXJfY29udHJvbHNfc2hvd25fb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zbWFydF9za2lwX3BsYXllcl9jb250cm9sc19zaG93bl9vbl93ZWJfaW5jcmVhc2VkX3RyaWdnZXJpbmdfc2Vuc2l0aXZpdHlcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NtYXJ0X3NraXBfc3BlZWRtYXN0ZXJfb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zbWVhcmluZ19leHBhbnNpb25fZGFpXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zcGxpdF9zY3JlZW5fYWRfYmFzZWxpbmVfZXhwZXJpZW5jZV9lbmRlbWljX2xpdmVfaDVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3N1YmZyYWdtZW50ZWRfY2FwdGlvbl9maWx0ZXJpbmdcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3N1cGV4X213ZWJfZGVtb193ZWJmZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfdG9fY2FsbF9wbGF5cmVhZHlfYmFja2VuZF9kaXJlY3RseVx1MDAzZHRydWVcdTAwMjZlbmFibGVfdW5pZmllZF9hY3Rpb25fZW5kY2FwX29uX3dlYlx1MDAzZHRydWVcdTAwMjZlbmFibGVfdmVub21fbm90aWZpY2F0aW9uX2NhY2hlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uX2dyb3VwX2Zvcl9kZXNrdG9wX3NlYXJjaFx1MDAzZHRydWVcdTAwMjZlbmFibGVfdm9pY2VfYm9vc3RfZmVhdHVyZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfdnA5X2FwcGxldHY1X29uX3NlcnZlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfd2ViX2RlbGhpX2ljb25zXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfaG9tZV90b3BfbGFuZHNjYXBlX2ltYWdlX2xheW91dF9sZXZlbF9jbGlja1x1MDAzZHRydWVcdTAwMjZlbmFibGVfd2ViX21lZGlhX3Nlc3Npb25fbWV0YWRhdGFfZml4XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfcHJlbWl1bV92YXJpc3BlZWRfdXBzZWxsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfc2hvcnRzX2F1ZGlvX3RyYWNrXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfdGllcmVkX2dlbFx1MDAzZHRydWVcdTAwMjZlbmFibGVfd2l6X3F1ZXVlX2VmZmVjdF9hbmRfb25faW5pdF9pbml0aWFsX3J1bnNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3l0X2F0YV9pZnJhbWVfYXV0aHVzZXJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3l0dl9jc2RhaV92cDlcdTAwM2R0cnVlXHUwMDI2ZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19hbGxvd2VkX3ZpZGVvX2lkc1x1MDAzZFtPSmx3SWRvRno5QSwgQXJLYkF4MUstMlUsIG1fZGhNU3ZVQ0ljLCBDMURocEowN1p1RSwgTnEyd1lsV0Z1Y2csIEpDN2YzRVVEYXF3LCB2cjNYeVZDUjRUMCwgZ0NOZURXQ0kwdm8sIGtCVHVkbTRnZU1zLCBGeHNmVlg2QjFNaywgeWxZSlNCVWdhTUEsIFZXaFE2eHNwblNjLCBSSFVhdU1jWWxYMCwgY2IxMkttTU1ESkEsIFdKeEVqX2hycFNnLCBldWhZLXRtZzl4OCwgVGxJVkkyRVc3UjAsIE1JTmZ2T1g0QnpJLCB5SG1QV3praGNaOCwgcDN3MXZPOVh2MjQsIFZsYUNucDFmeEk4LCAtT2ZBMDRCRDRHQSwgMW9kWTNJWXNObm8sIHdpVFRyVnFSVkR3LCBEZm0yckItblE5WSwgUW0xRnR6OGxWbkksIDlpdEF4cV9TR0RNLCB5Rkkzd3BYeTR6QSwgUHk1SllaWEp2em8sIGI0dEU1YUtodGxnLCA1SkR4anNBVmFHaywgZVVtZkdQYXp1RU0sIFc4blRocTYyVmI0LCBWTGp2UzN1ZmxYYywgQmZkTEt2SkJNX2MsIHdlTFhkd1ZqU3hzLCAySmEtdVBPa3o3SSwgQTlRQlZGRVl4T1EsIGstWkZRa2tIVWZjLCB3dXUwRDIwQVpxSSwgX0h2aVN5Qzd6U1UsIF9feE96X1EzcVI0LCB3MnNCODdqTEUxSSwgOHJUVEVNZE1oOFEsIC1rNm1wZ214ZXJVLCA5N2NrbnJKeUxXZywgMkZJdFZ5eExOTmMsIG90bnhmY3NHRS1ZLCBzOXhMMURwQnNmUSwgd2ZBR0JWZ1Vycm8sIG5YSDZUeFEtc2k4LCBXaUkxWGdfbkV1OCwgM2ZsYXNHVlVyQ0EsIGVEWV9IZTkybGNVLCBhNDdja1hLWmp4SSwgSTZXUlhlS1pLNjQsIFQ5SjVEcVAyREt3LCBLdGtfSTBwVXBHOCwgZVEyY3pHcU9DUGcsIGhMbVU0OWhtWjRjLCA3ZjdNZ2FNRTdTYywgUUI1Qk5kQkZ1akUsIEFHaHRNVV9maTcwLCBwMlJhUVVSUkF3QSwgbXpfX0VNWXBXUHcsIDZqaEx1U1FWSXhVLCByQzgzdl91dUlxbywgNkRhR2RKUl9lTGcsIGNtNDN1WGpmdlpZLCBZMUpzUHBtMmJtUSwgejA5N2pQeUtlZW8sIFRZVlpXVVRqa3gwLCBWSGFBdmVuZlREaywgdHY5T1VfNVEwcFEsIDZvS0N2em02SG1nLCBCRUZVRVJoVDBuMCwgdVROLWV1MC1PWEUsIGhiYXByaFI3elRvLCAyQ1YwVi1vTU5GTSwgdThkU09Lb05KcDAsIEg4TXFxd21Gc3hZLCBJc2trbU5QSmRVaywgWDlIX0V6cERHWFFdXHUwMDI2ZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19tYXhfd2luZG93X3NlY29uZHNcdTAwM2Q2MFx1MDAyNmV4cGFuZF9tZWRpYXRla19kZW55bGlzdF90b19hbGxfbGl2ZV92cDlfaW5fYmFja2VuZF9leHBlcmltZW50XHUwMDNkW11cdTAwMjZleHBvcnRfbmV0d29ya2xlc3Nfb3B0aW9uc1x1MDAzZHRydWVcdTAwMjZleHBvcnRfcGxheWVyX3ZlcnNpb25fdG9feXRjb25maWdcdTAwM2R0cnVlXHUwMDI2ZmlsbF9hZHNfdXN0cmVhbWVyX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZmaWxsX2xpdmVfcmVxdWVzdF9jb25maWdfaW5fdXN0cmVhbWVyX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZmaWxsX3NpbmdsZV92aWRlb193aXRoX25vdGlmeV90b19sYXNyXHUwMDNkdHJ1ZVx1MDAyNmZpbHRlcl92Yl93aXRob3V0X25vbl92Yl9lcXVpdmFsZW50c1x1MDAzZHRydWVcdTAwMjZmaWx0ZXJfdnA5X2Zvcl9saXZlX2RhaVx1MDAzZHRydWVcdTAwMjZmaXhfYWRfbWluaXBsYXllcl9jb250cm9sc19yZW5kZXJpbmdcdTAwM2R0cnVlXHUwMDI2Zml4X2Fkc190cmFja2luZ19mb3Jfc3dmX2NvbmZpZ19kZXByZWNhdGlvbl9td2ViXHUwMDNkdHJ1ZVx1MDAyNmZpeF9oNV90b2dnbGVfYnV0dG9uX2ExMXlcdTAwM2R0cnVlXHUwMDI2Zml4X3N1cnZleV9jb2xvcl9jb250cmFzdF9vbl9kZXN0b3BcdTAwM2R0cnVlXHUwMDI2ZnJlc2NhX3BvbGxpbmdfZGVsYXlfb3ZlcnJpZGVcdTAwM2QwXHUwMDI2Z2FiX3JldHVybl9zYWJyX3NzZGFpX2NvbmZpZ1x1MDAzZHRydWVcdTAwMjZnZWxfbWluX2JhdGNoX3NpemVcdTAwM2QzXHUwMDI2Z2VsX3F1ZXVlX3RpbWVvdXRfbWF4X21zXHUwMDNkNjAwMDBcdTAwMjZndmlfY2hhbm5lbF9jbGllbnRfc2NyZWVuXHUwMDNkdHJ1ZVx1MDAyNmg1X2NvbXBhbmlvbl9lbmFibGVfYWRjcG5fbWFjcm9fc3Vic3RpdHV0aW9uX2Zvcl9jbGlja19waW5nc1x1MDAzZHRydWVcdTAwMjZoNV9lbmFibGVfYWRfbWJzXHUwMDNkdHJ1ZVx1MDAyNmg1X2lucGxheWVyX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmg1X3Jlc2V0X2NhY2hlX2FuZF9maWx0ZXJfYmVmb3JlX3VwZGF0ZV9tYXN0aGVhZFx1MDAzZHRydWVcdTAwMjZoNV96ZXJvX2R1cmF0aW9uX2N1ZV9yYW5nZV9mb3JfZGlic1x1MDAzZHRydWVcdTAwMjZoZnJfZHJvcHBlZF9mcmFtZXJhdGVfZmFsbGJhY2tfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmhpZ2hfY2N2X2NsaWVudF9zaWRlX2NhY2hpbmdfaDVcdTAwM2R0cnVlXHUwMDI2aGxzX3VzZV9uZXdfY29kZWNzX3N0cmluZ19hcGlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfYWRfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV9hZGFwdGF0aW9uX3N0ZXBfY291bnRcdTAwM2QwXHUwMDI2aHRtbDVfYWRzX3ByZXJvbGxfbG9ja190aW1lb3V0X2RlbGF5X21zXHUwMDNkMTUwMDBcdTAwMjZodG1sNV9hbGxvd19tdWx0aXZpZXdfdGlsZV9wcmVsb2FkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FsbG93X3ByZWxvYWRpbmdfd2l0aF9pZGxlX29ubHlfbmV0d29ya19mb3Jfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9hbGxvd192aWRlb19rZXlmcmFtZV93aXRob3V0X2F1ZGlvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FwcGx5X2NvbnN0cmFpbnRzX2luX2NsaWVudF9mb3Jfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9hcHBseV9taW5fZmFpbHVyZXNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfYXBwbHlfc3RhcnRfdGltZV93aXRoaW5fYWRzX2Zvcl9zc2RhaV90cmFuc2l0aW9uc1x1MDAzZHRydWVcdTAwMjZodG1sNV9hdHJfZGlzYWJsZV9mb3JjZV9mYWxsYmFja1x1MDAzZHRydWVcdTAwMjZodG1sNV9hdHRfcGxheWJhY2tfdGltZW91dF9tc1x1MDAzZDMwMDAwXHUwMDI2aHRtbDVfYXR0YWNoX251bV9yYW5kb21fYnl0ZXNfdG9fYmFuZGFpZFx1MDAzZDBcdTAwMjZodG1sNV9hdHRhY2hfcG9fdG9rZW5fdG9fYmFuZGFpZFx1MDAzZHRydWVcdTAwMjZodG1sNV9hdXRvbmF2X2NhcF9pZGxlX3NlY3NcdTAwM2QwXHUwMDI2aHRtbDVfYXV0b25hdl9xdWFsaXR5X2NhcFx1MDAzZDcyMFx1MDAyNmh0bWw1X2F1dG9wbGF5X2RlZmF1bHRfcXVhbGl0eV9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfYXV4aWxpYXJ5X2VzdGltYXRlX3dlaWdodFx1MDAzZDAuMFx1MDAyNmh0bWw1X2F2MV9vcmRpbmFsX2NhcFx1MDAzZDBcdTAwMjZodG1sNV9iYW5kYWlkX2F0dGFjaF9jb250ZW50X3BvX3Rva2VuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Jsb2NrX3BpcF9zYWZhcmlfZGVsYXlcdTAwM2QwXHUwMDI2aHRtbDVfYnlwYXNzX2NvbnRlbnRpb25fc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X2J5dGVyYXRlX3NvZnRfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X2NoZWNrX2Zvcl9pZGxlX25ldHdvcmtfaW50ZXJ2YWxfbXNcdTAwM2QxMDAwXHUwMDI2aHRtbDVfY2hpcHNldF9zb2Z0X2NhcFx1MDAzZDgxOTJcdTAwMjZodG1sNV9jbGFtcF9pbnZhbGlkX3NlZWtfdG9fbWluX3NlZWthYmxlX3RpbWVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfY29uc3VtZV9hbGxfYnVmZmVyZWRfYnl0ZXNfb25lX3BvbGxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfY29udGludW91c19nb29kcHV0X3Byb2JlX2ludGVydmFsX21zXHUwMDNkMFx1MDAyNmh0bWw1X2Q2ZGU0X2Nsb3VkX3Byb2plY3RfbnVtYmVyXHUwMDNkODY4NjE4Njc2OTUyXHUwMDI2aHRtbDVfZGVidWdfZGF0YV9sb2dfcHJvYmFiaWxpdHlcdTAwM2QwLjBcdTAwMjZodG1sNV9kZWNvZGVfdG9fdGV4dHVyZV9jYXBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGVmYXVsdF9hZF9nYWluXHUwMDNkMC41XHUwMDI2aHRtbDVfZGVmYXVsdF9hdjFfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmh0bWw1X2RlZmF1bHRfcXVhbGl0eV9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZGVmZXJfZmV0Y2hfYXR0X21zXHUwMDNkMFx1MDAyNmh0bWw1X2RlbGF5ZWRfcmV0cnlfY291bnRcdTAwM2QxXHUwMDI2aHRtbDVfZGVsYXllZF9yZXRyeV9kZWxheV9tc1x1MDAzZDUwMDBcdTAwMjZodG1sNV9kZXByZWNhdGVfYWRzZXJ2aWNlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RlcHJlY2F0ZV9tYW5pZmVzdGZ1bF9mYWxsYmFja1x1MDAzZHRydWVcdTAwMjZodG1sNV9kZXByZWNhdGVfdmlkZW9fdGFnX3Bvb2xcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGVza3RvcF92cjE4MF9hbGxvd19wYW5uaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RmX2Rvd25ncmFkZV90aHJlc2hcdTAwM2QwLjZcdTAwMjZodG1sNV9kaXNhYmxlX2JhbmR3aWR0aF9jb2ZhY3RvcnNfZm9yX3NhYnJfbGl2ZVx1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNhYmxlX2NsaWVudF9hdXRvbmF2X2NhcF9mb3Jfb25lc2llXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfbG9vcF9yYW5nZV9mb3Jfc2hvcnRzX2Fkc1x1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNhYmxlX25vbl9jb250aWd1b3VzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfcGVha19zaGF2ZV9mb3Jfb25lc2llXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfdXN0cmVhbWVyX2NvbnN0cmFpbnRfZm9yX3NhYnJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGlzYWJsZV93ZWJfc2FmYXJpX2RhaVx1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNwbGF5ZWRfZnJhbWVfcmF0ZV9kb3duZ3JhZGVfdGhyZXNob2xkXHUwMDNkNDVcdTAwMjZodG1sNV9kcm1fYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZHJtX2NoZWNrX2FsbF9rZXlfZXJyb3Jfc3RhdGVzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RybV9jcGlfbGljZW5zZV9rZXlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZHJtX2xpdmVfYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfZWFybHlfbWVkaWFfZm9yX3NoYXJwZXJfc2hvcnRzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9hYzNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2F1ZGlvX3RyYWNrX3N0aWNraW5lc3NcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2F1ZGlvX3RyYWNrX3N0aWNraW5lc3NfcGhhc2VfdHdvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9jYXB0aW9uX2NoYW5nZXNfZm9yX21vc2FpY1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfY29tcG9zaXRlX2VtYmFyZ29cdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2Q2ZGU0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9kNmRlNF9jb2xkX3N0YXJ0X2FuZF9lcnJvclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZDZkZTRfaWRsZV9wcmlvcml0eV9qb2JcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2RyY1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZHJjX3RvZ2dsZV9hcGlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2VhYzNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2VtYmVkZGVkX3BsYXllcl92aXNpYmlsaXR5X3NpZ25hbHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX29kdWNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3NhYnJfZm9ybWF0X3NlbGVjdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl9mcm9tX3dhdGNoX3NlcnZlclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl9ob3N0X2ZhbGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zYWJyX29uX3l0X2VtYmVkc1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl92b2Rfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2VydmVyX2RyaXZlbl9yZXF1ZXN0X2NhbmNlbGxhdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc3BzX3JldHJ5X2JhY2tvZmZfbWV0YWRhdGFfcmVxdWVzdHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3NzZGFpX3RyYW5zaXRpb25fd2l0aF9vbmx5X2VudGVyX2N1ZXJhbmdlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV90cmlnZ2VyaW5nX2N1ZXBvaW50X2Zvcl9zbG90XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV90dm9zX2Rhc2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3R2b3NfZW5jcnlwdGVkX3ZwOVx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmNvdXJhZ2VfYXJyYXlfY29hbGVzY2luZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9maWxsX2RlZmF1bHRfbW9zYWljX2F1ZGlvX3RyYWNrX2lkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZpeGVkX21lZGlhX2R1cmF0aW9uX2Zvcl9yZXF1ZXN0XHUwMDNkMFx1MDAyNmh0bWw1X2ZsdXNoX2luZGV4X29uX3VwZGF0ZWRfdGltZXN0YW1wX29mZnNldFx1MDAzZHRydWVcdTAwMjZodG1sNV9mb3JjZV9zYWJyX2Zyb21fd2F0Y2hfc2VydmVyX2Zvcl9kZnNzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZvcndhcmRfY2xpY2tfdHJhY2tpbmdfcGFyYW1zX29uX3JlbG9hZFx1MDAzZHRydWVcdTAwMjZodG1sNV9nYXBsZXNzX2FkX2F1dG9wbGF5X29uX3ZpZGVvX3RvX2FkX29ubHlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19lbmRlZF90cmFuc2l0aW9uX2J1ZmZlcl9tc1x1MDAzZDIwMFx1MDAyNmh0bWw1X2dhcGxlc3NfaGFuZG9mZl9jbG9zZV9lbmRfbG9uZ19yZWJ1ZmZlcl9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19oYW5kb2ZmX2Nsb3NlX2VuZF9sb25nX3JlYnVmZmVyX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2dhcGxlc3NfbG9vcF9zZWVrX29mZnNldF9pbl9taWxsaVx1MDAzZDBcdTAwMjZodG1sNV9nYXBsZXNzX3Nsb3dfc2Vla19jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2FwbGVzc19zbG93X3NlZWtfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZ2FwbGVzc19zbG93X3N0YXJ0X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2dlbmVyYXRlX2NvbnRlbnRfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfZ2VuZXJhdGVfc2Vzc2lvbl9wb190b2tlblx1MDAzZHRydWVcdTAwMjZodG1sNV9nbF9mcHNfdGhyZXNob2xkXHUwMDNkMFx1MDAyNmh0bWw1X2hhcmRfY2FwX21heF92ZXJ0aWNhbF9yZXNvbHV0aW9uX2Zvcl9zaG9ydHNcdTAwM2QwXHUwMDI2aHRtbDVfaGRjcF9wcm9iaW5nX3N0cmVhbV91cmxcdTAwM2RcdTAwMjZodG1sNV9oZWFkX21pc3Nfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X2hmcl9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9oaWdoX3Jlc19sb2dnaW5nX3BlcmNlbnRcdTAwM2QwLjAxXHUwMDI2aHRtbDVfaGlnaF9yZXNfc2Vla19sb2dnaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2hvcGVsZXNzX3NlY3NcdTAwM2QwXHUwMDI2aHRtbDVfaHVsaV9zc2RhaV91c2VfcGxheWJhY2tfc3RhdGVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfaWRsZV9yYXRlX2xpbWl0X21zXHUwMDNkMFx1MDAyNmh0bWw1X2lnbm9yZV9wYXJ0aWFsX3NlZ21lbnRfZnJvbV9saXZlX3JlYWRhaGVhZFx1MDAzZHRydWVcdTAwMjZodG1sNV9pZ25vcmVfc2FicnNlZWtfZHVyaW5nX2Fkc2tpcFx1MDAzZHRydWVcdTAwMjZodG1sNV9pbm5lcnR1YmVfaGVhcnRiZWF0c19mb3JfZmFpcnBsYXlcdTAwM2R0cnVlXHUwMDI2aHRtbDVfaW5uZXJ0dWJlX2hlYXJ0YmVhdHNfZm9yX3dpZGV2aW5lXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2p1bWJvX21vYmlsZV9zdWJzZWdtZW50X3JlYWRhaGVhZF90YXJnZXRcdTAwM2QzLjBcdTAwMjZodG1sNV9qdW1ib191bGxfbm9uc3RyZWFtaW5nX21mZmFfbXNcdTAwM2Q0MDAwXHUwMDI2aHRtbDVfanVtYm9fdWxsX3N1YnNlZ21lbnRfcmVhZGFoZWFkX3RhcmdldFx1MDAzZDEuM1x1MDAyNmh0bWw1X2thYnVraV9kcm1fbGl2ZV81MV9kZWZhdWx0X29mZlx1MDAzZHRydWVcdTAwMjZodG1sNV9saWNlbnNlX2NvbnN0cmFpbnRfZGVsYXlcdTAwM2Q1MDAwXHUwMDI2aHRtbDVfbGl2ZV9hYnJfaGVhZF9taXNzX2ZyYWN0aW9uXHUwMDNkMC4wXHUwMDI2aHRtbDVfbGl2ZV9hYnJfcmVwcmVkaWN0X2ZyYWN0aW9uXHUwMDNkMC4wXHUwMDI2aHRtbDVfbGl2ZV9jaHVua19yZWFkYWhlYWRfcHJveGltYV9vdmVycmlkZVx1MDAzZDBcdTAwMjZodG1sNV9saXZlX2xvd19sYXRlbmN5X2JhbmR3aWR0aF93aW5kb3dcdTAwM2QwLjBcdTAwMjZodG1sNV9saXZlX25vcm1hbF9sYXRlbmN5X2JhbmR3aWR0aF93aW5kb3dcdTAwM2QwLjBcdTAwMjZodG1sNV9saXZlX3F1YWxpdHlfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X2xpdmVfdWx0cmFfbG93X2xhdGVuY3lfYmFuZHdpZHRoX3dpbmRvd1x1MDAzZDAuMFx1MDAyNmh0bWw1X2xpdmVuZXNzX2RyaWZ0X2NodW5rX292ZXJyaWRlXHUwMDNkMFx1MDAyNmh0bWw1X2xpdmVuZXNzX2RyaWZ0X3Byb3hpbWFfb3ZlcnJpZGVcdTAwM2QwXHUwMDI2aHRtbDVfbG9nX2F1ZGlvX2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9sb2dfZXhwZXJpbWVudF9pZF9mcm9tX3BsYXllcl9yZXNwb25zZV90b19jdG1wXHUwMDNkXHUwMDI2aHRtbDVfbG9nX2ZpcnN0X3NzZGFpX3JlcXVlc3RzX2tpbGxzd2l0Y2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbG9nX3JlYnVmZmVyX2V2ZW50c1x1MDAzZDVcdTAwMjZodG1sNV9sb2dfc2Ficl9tYWxmb3JtZWRfY29uZmlnX3Byb3RvX3NoYXJlZFx1MDAzZHRydWVcdTAwMjZodG1sNV9sb2dfdHJpZ2dlcl9ldmVudHNfd2l0aF9kZWJ1Z19kYXRhXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2xvZ192c3NfZXh0cmFfbHJfY3BhcmFtc19mcmVxXHUwMDNkXHUwMDI2aHRtbDVfbG9uZ19yZWJ1ZmZlcl9qaWdnbGVfY210X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X2xvbmdfcmVidWZmZXJfdGhyZXNob2xkX21zXHUwMDNkMzAwMDBcdTAwMjZodG1sNV9tYW5pZmVzdGxlc3NfdnA5X290Zlx1MDAzZHRydWVcdTAwMjZodG1sNV9tYXhfYnVmZmVyX2hlYWx0aF9mb3JfZG93bmdyYWRlX3Byb3BcdTAwM2QwLjBcdTAwMjZodG1sNV9tYXhfYnVmZmVyX2hlYWx0aF9mb3JfZG93bmdyYWRlX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9tYXhfYnl0ZXJhdGVcdTAwM2QwXHUwMDI2aHRtbDVfbWF4X2Rpc2NvbnRpbnVpdHlfcmV3cml0ZV9jb3VudFx1MDAzZDBcdTAwMjZodG1sNV9tYXhfZHJpZnRfcGVyX3RyYWNrX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9tYXhfaGVhZG1fZm9yX3N0cmVhbWluZ194aHJcdTAwM2QwXHUwMDI2aHRtbDVfbWF4X2xpdmVfZHZyX3dpbmRvd19wbHVzX21hcmdpbl9zZWNzXHUwMDNkNDY4MDAuMFx1MDAyNmh0bWw1X21heF9xdWFsaXR5X3NlbF91cGdyYWRlXHUwMDNkMFx1MDAyNmh0bWw1X21heF9yZWRpcmVjdF9yZXNwb25zZV9sZW5ndGhcdTAwM2Q4MTkyXHUwMDI2aHRtbDVfbWF4X3NlbGVjdGFibGVfcXVhbGl0eV9vcmRpbmFsXHUwMDNkMFx1MDAyNmh0bWw1X21heF92ZXJ0aWNhbF9yZXNvbHV0aW9uXHUwMDNkMFx1MDAyNmh0bWw1X21heGltdW1fcmVhZGFoZWFkX3NlY29uZHNcdTAwM2QwLjBcdTAwMjZodG1sNV9tZWRpYV9mdWxsc2NyZWVuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X21lZGlhX3RpbWVfd2VpZ2h0X3Byb3BcdTAwM2QwLjBcdTAwMjZodG1sNV9tZmNfbWF4X3F1ZXVlX2xlbmd0aFx1MDAzZDFcdTAwMjZodG1sNV9tZmNfbWluX2J1ZmZlcl9oZWFsdGhcdTAwM2QwXHUwMDI2aHRtbDVfbWZjX3NlY3NfbGVmdF90b19zdGFydF9wcmVsb2FkXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9mYWlsdXJlc190b19kZWxheV9yZXRyeVx1MDAzZDNcdTAwMjZodG1sNV9taW5fbWVkaWFfZHVyYXRpb25fZm9yX2FwcGVuZF9wcm9wXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWluX21lZGlhX2R1cmF0aW9uX2Zvcl9jYWJyX3NsaWNlXHUwMDNkMC4wMVx1MDAyNmh0bWw1X21pbl9wbGF5YmFja19hZHZhbmNlX2Zvcl9zdGVhZHlfc3RhdGVfc2Vjc1x1MDAzZDBcdTAwMjZodG1sNV9taW5fcXVhbGl0eV9vcmRpbmFsXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9yZWFkYmVoaW5kX2NhcF9zZWNzXHUwMDNkNjBcdTAwMjZodG1sNV9taW5fcmVhZGJlaGluZF9zZWNzXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9zZWNvbmRzX2JldHdlZW5fZm9ybWF0X3NlbGVjdGlvbnNcdTAwM2QwLjBcdTAwMjZodG1sNV9taW5fc2VsZWN0YWJsZV9xdWFsaXR5X29yZGluYWxcdTAwM2QwXHUwMDI2aHRtbDVfbWluX3N0YXJ0dXBfYnVmZmVyZWRfbWVkaWFfZHVyYXRpb25fZm9yX2xpdmVfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21pbl9zdGFydHVwX2J1ZmZlcmVkX21lZGlhX2R1cmF0aW9uX3NlY3NcdTAwM2QxLjJcdTAwMjZodG1sNV9taW5fc3RhcnR1cF9kdXJhdGlvbl9saXZlX3NlY3NcdTAwM2QwLjI1XHUwMDI2aHRtbDVfbWluX3VuZGVycnVuX2J1ZmZlcmVkX3ByZV9zdGVhZHlfc3RhdGVfbXNcdTAwM2QwXHUwMDI2aHRtbDVfbWluX3VwZ3JhZGVfaGVhbHRoX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9taW5pbXVtX3JlYWRhaGVhZF9zZWNvbmRzXHUwMDNkMC4wXHUwMDI2aHRtbDVfbW9ja19jb250ZW50X2JpbmRpbmdfZm9yX3Nlc3Npb25fdG9rZW5cdTAwM2RcdTAwMjZodG1sNV9tb3ZlX2Rpc2FibGVfYWlycGxheVx1MDAzZHRydWVcdTAwMjZodG1sNV9ub19wbGFjZWhvbGRlcl9yb2xsYmFja3NcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbm9uX29uZXNpZV9hdHRhY2hfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfb2ZmbGluZV9kb3dubG9hZF90aW1lb3V0X3JldHJ5X2xpbWl0XHUwMDNkNFx1MDAyNmh0bWw1X29mZmxpbmVfZmFpbHVyZV9yZXRyeV9saW1pdFx1MDAzZDJcdTAwMjZodG1sNV9vZmZsaW5lX3BsYXliYWNrX3Bvc2l0aW9uX3N5bmNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfb2ZmbGluZV9wcmV2ZW50X3JlZG93bmxvYWRfZG93bmxvYWRlZF92aWRlb1x1MDAzZHRydWVcdTAwMjZodG1sNV9vbmVzaWVfYXVkaW9fb25seV9wbGF5YmFja1x1MDAzZHRydWVcdTAwMjZodG1sNV9vbmVzaWVfY2hlY2tfdGltZW91dFx1MDAzZHRydWVcdTAwMjZodG1sNV9vbmVzaWVfZGVmZXJfY29udGVudF9sb2FkZXJfbXNcdTAwM2QwXHUwMDI2aHRtbDVfb25lc2llX2xpdmVfdHRsX3NlY3NcdTAwM2Q4XHUwMDI2aHRtbDVfb25lc2llX3ByZXdhcm1faW50ZXJ2YWxfbXNcdTAwM2QwXHUwMDI2aHRtbDVfb25lc2llX3ByZXdhcm1fbWF4X2xhY3RfbXNcdTAwM2QwXHUwMDI2aHRtbDVfb25lc2llX3JlZGlyZWN0b3JfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV9vbmVzaWVfc2VuZF9zdHJlYW1lcl9jb250ZXh0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X292ZXJyaWRlX21pY3JvX2Rpc2NvbnRpbnVpdGllc190aHJlc2hvbGRfbXNcdTAwM2QtMVx1MDAyNmh0bWw1X3BhY2VkX3BvbGxfbWluX2hlYWx0aF9tc1x1MDAzZDBcdTAwMjZodG1sNV9wYWNlZF9wb2xsX21zXHUwMDNkMFx1MDAyNmh0bWw1X3BhdXNlX29uX25vbmZvcmVncm91bmRfcGxhdGZvcm1fZXJyb3JzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BlYWtfc2hhdmVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGVyZl9jYXBfb3ZlcnJpZGVfc3RpY2t5XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BlcmZvcm1hbmNlX2NhcF9mbG9vclx1MDAzZDM2MFx1MDAyNmh0bWw1X3BlcnNlcnZlX2F2MV9wZXJmX2NhcFx1MDAzZHRydWVcdTAwMjZodG1sNV9waWN0dXJlX2luX3BpY3R1cmVfbG9nZ2luZ19vbnJlc2l6ZV9yYXRpb1x1MDAzZDAuMFx1MDAyNmh0bWw1X3BsYXRmb3JtX21heF9idWZmZXJfaGVhbHRoX292ZXJzZW5kX2R1cmF0aW9uX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9wbGF0Zm9ybV9taW5pbXVtX3JlYWRhaGVhZF9zZWNvbmRzXHUwMDNkMC4wXHUwMDI2aHRtbDVfcGxhdGZvcm1fd2hpdGVsaXN0ZWRfZm9yX2ZyYW1lX2FjY3VyYXRlX3NlZWtzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BsYXllcl9hdHRfaW5pdGlhbF9kZWxheV9tc1x1MDAzZDMwMDBcdTAwMjZodG1sNV9wbGF5ZXJfYXR0X3JldHJ5X2RlbGF5X21zXHUwMDNkMTUwMFx1MDAyNmh0bWw1X3BsYXllcl9hdXRvbmF2X2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGxheWVyX2VzNlx1MDAzZHRydWVcdTAwMjZodG1sNV9wbGF5ZXJfbWluX2J1aWxkX2NsXHUwMDNkLTFcdTAwMjZodG1sNV9wbGF5ZXJfcHJlbG9hZF9hZF9maXhcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcG9zdF9pbnRlcnJ1cHRfcmVhZGFoZWFkXHUwMDNkMjBcdTAwMjZodG1sNV9wcmVmZXJfbGFuZ3VhZ2Vfb3Zlcl9jb2RlY1x1MDAzZHRydWVcdTAwMjZodG1sNV9wcmVmZXJfc2VydmVyX2J3ZTNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcHJlbG9hZF9iZWZvcmVfaW5pdGlhbF9zZWVrX3dpdGhfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9wcmVsb2FkX3dhaXRfdGltZV9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfcHJldmVudF9tb2JpbGVfYmFja2dyb3VuZF9wbGF5X29uX2V2ZW50X3NoYXJlZFx1MDAzZHRydWVcdTAwMjZodG1sNV9wcm9iZV9wcmltYXJ5X2RlbGF5X2Jhc2VfbXNcdTAwM2QwXHUwMDI2aHRtbDVfcHJvY2Vzc19hbGxfZW5jcnlwdGVkX2V2ZW50c1x1MDAzZHRydWVcdTAwMjZodG1sNV9xb2VfcHJvdG9fbW9ja19sZW5ndGhcdTAwM2QwXHUwMDI2aHRtbDVfcXVlcnlfc3dfc2VjdXJlX2NyeXB0b19mb3JfYW5kcm9pZFx1MDAzZHRydWVcdTAwMjZodG1sNV9yYW5kb21fcGxheWJhY2tfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X3JlY29yZF9pc19vZmZsaW5lX29uX3BsYXliYWNrX2F0dGVtcHRfc3RhcnRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVjb3JkX3VtcF90aW1pbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVsb2FkX2J5X2thYnVraV9hcHBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVtb3ZlX2NvbW1hbmRfdHJpZ2dlcmVkX2NvbXBhbmlvbnNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVtb3ZlX25vdF9zZXJ2YWJsZV9jaGVja19raWxsc3dpdGNoXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlcG9ydF9mYXRhbF9kcm1fcmVzdHJpY3RlZF9lcnJvcl9raWxsc3dpdGNoXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlcG9ydF9zbG93X2Fkc19hc19lcnJvclx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXByZWRpY3RfaW50ZXJ2YWxfbXNcdTAwM2QwXHUwMDI2aHRtbDVfcmVxdWVzdF9vbmx5X2hkcl9vcl9zZHJfa2V5c1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZXF1ZXN0X3NpemVfbWF4X2tiXHUwMDNkMFx1MDAyNmh0bWw1X3JlcXVlc3Rfc2l6ZV9taW5fa2JcdTAwM2QwXHUwMDI2aHRtbDVfcmVzZWVrX2FmdGVyX3RpbWVfanVtcF9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVzZWVrX2FmdGVyX3RpbWVfanVtcF9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9yZXNldF9iYWNrb2ZmX29uX3VzZXJfc2Vla1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZXNvdXJjZV9iYWRfc3RhdHVzX2RlbGF5X3NjYWxpbmdcdTAwM2QxLjVcdTAwMjZodG1sNV9yZXN0cmljdF9zdHJlYW1pbmdfeGhyX29uX3NxbGVzc19yZXF1ZXN0c1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZXRyeV9kb3dubG9hZHNfZm9yX2V4cGlyYXRpb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0cnlfb25fZHJtX2tleV9lcnJvclx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXRyeV9vbl9kcm1fdW5hdmFpbGFibGVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0cnlfcXVvdGFfZXhjZWVkZWRfdmlhX3NlZWtcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmV0dXJuX3BsYXliYWNrX2lmX2FscmVhZHlfcHJlbG9hZGVkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfZW5hYmxlX3NlcnZlcl94dGFnX3NlbGVjdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2ZldGNoX29uX2lkbGVfbmV0d29ya19wcmVsb2FkZWRfcGxheWVyc1x1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2ZvcmNlX21heF9uZXR3b3JrX2ludGVycnVwdGlvbl9kdXJhdGlvbl9tc1x1MDAzZDBcdTAwMjZodG1sNV9zYWJyX2xpdmVfbG93X2xhdGVuY3lfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2xpdmVfbm9ybWFsX2xhdGVuY3lfc3RyZWFtaW5nX3hoclx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX2xpdmVfdGltaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfbGl2ZV91bHRyYV9sb3dfbGF0ZW5jeV9zdHJlYW1pbmdfeGhyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfbG9nX3NlcnZlcl94dGFnX3NlbGVjdGlvbl9vbmVzaWVfbWlzbWF0Y2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9taW5fbWVkaWFfYnl0ZXNfZmFjdG9yX3RvX2FwcGVuZF9mb3Jfc3RyZWFtXHUwMDNkMC4wXHUwMDI2aHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl9yZXF1ZXN0X2NhbmNlbGxhdGlvbl90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmh0bWw1X3NhYnJfbm9uX3N0cmVhbWluZ194aHJfdGltZW91dF9yZXRyeV9saW1pdFx1MDAzZDBcdTAwMjZodG1sNV9zYWJyX3JlcG9ydF9wYXJ0aWFsX3NlZ21lbnRfZXN0aW1hdGVkX2R1cmF0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfcmVwb3J0X3JlcXVlc3RfY2FuY2VsbGF0aW9uX2luZm9cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9yZXF1ZXN0X2xpbWl0X3Blcl9wZXJpb2RcdTAwM2QyMFx1MDAyNmh0bWw1X3NhYnJfcmVxdWVzdF9vbl9jb25zdHJhaW50XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfc2Vla19ub19zaGlmdF90b2xlcmFuY2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9za2lwX2NsaWVudF9hdWRpb19pbml0X3NlbGVjdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX3N1Y2Nlc3NmdWxfcHJvYmVfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV9zYWJyX3VnY192b2Rfd2ViX2VtYmVkZGVkX2NsaWVudF9kZWZhdWx0X2JhbmR3aWR0aF9vbl9pcGhvbmVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl91bnVzZWRfYmxvYXRfc2l6ZV9ieXRlc1x1MDAzZDBcdTAwMjZodG1sNV9zYW1zdW5nX2thbnRfbGltaXRfbWF4X2JpdHJhdGVcdTAwM2QwXHUwMDI2aHRtbDVfc2Vla19qaWdnbGVfY210X2RlbGF5X21zXHUwMDNkODAwMFx1MDAyNmh0bWw1X3NlZWtfbmV3X2VsZW1fZGVsYXlfbXNcdTAwM2QxMjAwMFx1MDAyNmh0bWw1X3NlZWtfbmV3X2VsZW1fc2hvcnRzX2RlbGF5X21zXHUwMDNkMjAwMFx1MDAyNmh0bWw1X3NlZWtfbmV3X21lZGlhX2VsZW1lbnRfc2hvcnRzX3JldXNlX2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9zZWVrX25ld19tZWRpYV9lbGVtZW50X3Nob3J0c19yZXVzZV9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9zZWVrX25ld19tZWRpYV9zb3VyY2Vfc2hvcnRzX3JldXNlX2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9zZWVrX25ld19tZWRpYV9zb3VyY2Vfc2hvcnRzX3JldXNlX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3NlZWtfc2V0X2NtdF9kZWxheV9tc1x1MDAzZDIwMDBcdTAwMjZodG1sNV9zZWVrX3RpbWVvdXRfZGVsYXlfbXNcdTAwM2QyMDAwMFx1MDAyNmh0bWw1X3NlbmRfY3VlcG9pbnRfaWRfaW5fYWRfYnJlYWtfcmVxdWVzdFx1MDAzZHRydWVcdTAwMjZodG1sNV9zZW5kX3NlcmlhbGl6ZWRfb25lX3RpbWVfcW9lX2NvbnRleHRfZGF0YVx1MDAzZHRydWVcdTAwMjZodG1sNV9zZXJ2ZV9zdGFydF9zZWNvbmRzX3NlZWtfZm9yX3Bvc3RfbGl2ZV9zYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NlcnZlcl9zdGl0Y2hlZF9kYWlfZGVjb3JhdGVkX3VybF9yZXRyeV9saW1pdFx1MDAzZDVcdTAwMjZodG1sNV9zZXNzaW9uX3BvX3Rva2VuX2ludGVydmFsX3RpbWVfbXNcdTAwM2Q5MDAwMDBcdTAwMjZodG1sNV9zZXRfdmlkZW9faWRfYXNfZXhwZWN0ZWRfY29udGVudF9iaW5kaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Nob3J0c19nYXBsZXNzX2FkX3Nsb3dfc3RhcnRfY2ZsXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Nob3J0c19nYXBsZXNzX2FkX3Nsb3dfc3RhcnRfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2hvcnRzX2dhcGxlc3NfbmV4dF9idWZmZXJfaW5fc2Vjb25kc1x1MDAzZDBcdTAwMjZodG1sNV9zaG9ydHNfZ2FwbGVzc19ub19nbGxhdFx1MDAzZHRydWVcdTAwMjZodG1sNV9zaG9ydHNfZ2FwbGVzc19zbG93X3N0YXJ0X2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3Nob3dfZHJjX3RvZ2dsZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zaW1wbGlmaWVkX2JhY2t1cF90aW1lb3V0X3NhYnJfbGl2ZVx1MDAzZHRydWVcdTAwMjZodG1sNV9za2lwX2VtcHR5X3BvX3Rva2VuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NraXBfc2xvd19hZF9kZWxheV9tc1x1MDAzZDE1MDAwXHUwMDI2aHRtbDVfc2xvd19zdGFydF9ub19tZWRpYV9zb3VyY2VfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2xvd19zdGFydF90aW1lb3V0X2RlbGF5X21zXHUwMDNkMjAwMDBcdTAwMjZodG1sNV9zc2RhaV9lbmFibGVfbWVkaWFfZW5kX2N1ZV9yYW5nZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zc2RhaV9mYWlsdXJlX3JldHJ5X2xpbWl0XHUwMDNkMFx1MDAyNmh0bWw1X3NzZGFpX2xvZ19taXNzaW5nX2FkX2NvbmZpZ19yZWFzb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc3RhbGxfZmFjdG9yXHUwMDNkMC4wXHUwMDI2aHRtbDVfc3RhdGVmdWxfYXVkaW9fbm9ybWFsaXphdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zdGlja3lfZHVyYXRpb25fbW9zXHUwMDNkMFx1MDAyNmh0bWw1X3N0b3JlX3hocl9oZWFkZXJzX3JlYWRhYmxlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3N0cmVhbWluZ19yZXNpbGllbmNlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3N0cmVhbWluZ194aHJfdGltZV9iYXNlZF9jb25zb2xpZGF0aW9uX21zXHUwMDNkLTFcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9sb2FkX3NwZWVkX2NoZWNrX2ludGVydmFsXHUwMDNkMC41XHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfbWluX2J1ZmZlcl9oZWFsdGhfc2Vjc1x1MDAzZDAuMjVcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9taW5fYnVmZmVyX2hlYWx0aF9zZWNzX29uX3RpbWVvdXRcdTAwM2QwLjFcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9taW5fbG9hZF9zcGVlZFx1MDAzZDEuNVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX3NlZWtfbGF0ZW5jeV9mdWRnZVx1MDAzZDAuNVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX3RhcmdldF9idWZmZXJfaGVhbHRoX3NlY3NcdTAwM2QwLjVcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF90aW1lb3V0X3NlY3NcdTAwM2QyLjBcdTAwMjZodG1sNV90cmFja19vdmVyc2hvb3RcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdHJhbnNmZXJfcHJvY2Vzc2luZ19sb2dzX2ludGVydmFsXHUwMDNkMTAwMFx1MDAyNmh0bWw1X3RyaWdnZXJfbG9hZGVyX3doZW5faWRsZV9uZXR3b3JrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VnY19saXZlX2F1ZGlvXzUxXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VnY192b2RfYXVkaW9fNTFcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdW5yZXBvcnRlZF9zZWVrX3Jlc2Vla19kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV91cGRhdGVfdGltZV9vbl9zZWVrZWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX2RhdGVfbm93X2Zvcl9sb2NhbF9zdG9yYWdlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9pbml0X3NlbGVjdGVkX2F1ZGlvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9ub25fYWN0aXZlX2Jyb2FkY2FzdF9mb3JfcG9zdF9saXZlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9wb3N0X2Zvcl9tZWRpYVx1MDAzZHRydWVcdTAwMjZodG1sNV91c2Vfc2hhcmVkX293bF9pbnN0YW5jZVx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfdW1wXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV91bXBfcmVxdWVzdF9zbGljZXJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3VtcF90aW1pbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3ZpZGVvX3F1YWxpdHlfY2FwX2Zvcl91c3RyZWFtZXJfY29uc3RyYWludFx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfdmlkZW9fdHJhbnNpdGlvbl9lbmRwb2ludF9oZWFydGJlYXRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdmlkZW9fdGJkX21pbl9rYlx1MDAzZDBcdTAwMjZodG1sNV92aWV3cG9ydF91bmRlcnNlbmRfbWF4aW11bVx1MDAzZDAuMFx1MDAyNmh0bWw1X3ZvbHVtZV9zbGlkZXJfdG9vbHRpcFx1MDAzZHRydWVcdTAwMjZodG1sNV93ZWJfcG9fZXhwZXJpbWVudF9pZHNcdTAwM2RbXVx1MDAyNmh0bWw1X3dlYl9wb19yZXF1ZXN0X2tleVx1MDAzZFx1MDAyNmh0bWw1X3dlYl9wb190b2tlbl9kaXNhYmxlX2NhY2hpbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfd2VicG9faWRsZV9wcmlvcml0eV9qb2JcdTAwM2R0cnVlXHUwMDI2aHRtbDVfd2VicG9fa2Fpb3NfZGVmZXJfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZodG1sNV93b2ZmbGVfcmVzdW1lXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3dvcmthcm91bmRfZGVsYXlfdHJpZ2dlclx1MDAzZHRydWVcdTAwMjZpZGJfaW1tZWRpYXRlX2NvbW1pdFx1MDAzZHRydWVcdTAwMjZpZ25vcmVfb3ZlcmxhcHBpbmdfY3VlX3BvaW50c19vbl9lbmRlbWljX2xpdmVfaHRtbDVcdTAwM2R0cnVlXHUwMDI2aWxfYXR0YWNoX2NhY2hlX2xpbWl0XHUwMDNkdHJ1ZVx1MDAyNmlsX3BheWxvYWRfc2NyYXBpbmdcdTAwM2RcdTAwMjZpbF91c2Vfdmlld19tb2RlbF9sb2dnaW5nX2NvbnRleHRcdTAwM2R0cnVlXHUwMDI2aW5pdGlhbF9nZWxfYmF0Y2hfdGltZW91dFx1MDAzZDIwMDBcdTAwMjZpbmplY3RlZF9saWNlbnNlX2hhbmRsZXJfZXJyb3JfY29kZVx1MDAzZDBcdTAwMjZpbmplY3RlZF9saWNlbnNlX2hhbmRsZXJfbGljZW5zZV9zdGF0dXNcdTAwM2QwXHUwMDI2aW9zX2FuZF9hbmRyb2lkX2ZyZXNjYV9wb2xsaW5nX2RlbGF5X292ZXJyaWRlXHUwMDNkMFx1MDAyNml0ZHJtX2Fsd2F5c191c2Vfd2lkZXZpbmVfc2RrXHUwMDNkdHJ1ZVx1MDAyNml0ZHJtX2Rpc2FibGVfZXh0ZXJuYWxfa2V5X3JvdGF0aW9uX3N5c3RlbV9pZHNcdTAwM2RbXVx1MDAyNml0ZHJtX2VuYWJsZV9yZXZvY2F0aW9uX3JlcG9ydGluZ1x1MDAzZHRydWVcdTAwMjZpdGRybV9pbmplY3RlZF9saWNlbnNlX3NlcnZpY2VfZXJyb3JfY29kZVx1MDAzZDBcdTAwMjZpdGRybV9zZXRfc2Ficl9saWNlbnNlX2NvbnN0cmFpbnRcdTAwM2R0cnVlXHUwMDI2aXRkcm1fdXNlX2ZhaXJwbGF5X3Nka1x1MDAzZHRydWVcdTAwMjZpdGRybV91c2Vfd2lkZXZpbmVfc2RrX2Zvcl9wcmVtaXVtX2NvbnRlbnRcdTAwM2R0cnVlXHUwMDI2aXRkcm1fd2lkZXZpbmVfaGFyZGVuZWRfdm1wX21vZGVcdTAwM2Rsb2dcdTAwMjZqc29uX2NvbmRlbnNlZF9yZXNwb25zZVx1MDAzZHRydWVcdTAwMjZrZXZsYXJfY29tbWFuZF9oYW5kbGVyX2NvbW1hbmRfYmFubGlzdFx1MDAzZFtdXHUwMDI2a2V2bGFyX2RlbGhpX21vZGVybl93ZWJfZW5kc2NyZWVuX2lkZWFsX3RpbGVfd2lkdGhfcGVyY2VudGFnZVx1MDAzZDAuMjdcdTAwMjZrZXZsYXJfZGVsaGlfbW9kZXJuX3dlYl9lbmRzY3JlZW5fbWF4X3Jvd3NcdTAwM2QyXHUwMDI2a2V2bGFyX2RlbGhpX21vZGVybl93ZWJfZW5kc2NyZWVuX21heF93aWR0aFx1MDAzZDUwMFx1MDAyNmtldmxhcl9kZWxoaV9tb2Rlcm5fd2ViX2VuZHNjcmVlbl9taW5fd2lkdGhcdTAwM2QyMDBcdTAwMjZrZXZsYXJfZ2VsX2Vycm9yX3JvdXRpbmdcdTAwM2R0cnVlXHUwMDI2a2V2bGFyX21pbmlwbGF5ZXJfZXhwYW5kX3RvcFx1MDAzZHRydWVcdTAwMjZrZXZsYXJfbWluaXBsYXllcl9wbGF5X3BhdXNlX29uX3NjcmltXHUwMDNkdHJ1ZVx1MDAyNmtldmxhcl9wbGF5YmFja19hc3NvY2lhdGVkX3F1ZXVlXHUwMDNkdHJ1ZVx1MDAyNmxhdW5jaF9saWNlbnNlX3NlcnZpY2VfYWxsX290dF92aWRlb3NfYXV0b21hdGljX2ZhaWxfb3Blblx1MDAzZHRydWVcdTAwMjZsaW1pdF95dGNzaV9kZWJ1Z19hcnJheV9zaXplXHUwMDNkdHJ1ZVx1MDAyNmxpdmVfY2hhdF9lbmFibGVfcnRhX21hbmFnZXJcdTAwM2R0cnVlXHUwMDI2bGl2ZV9jaHVua19yZWFkYWhlYWRcdTAwM2QzXHUwMDI2bG9nX2NsaWNrX3dpdGhfbGF5ZXJfZnJvbV9lbGVtZW50X2luX2NvbW1hbmRfaGFuZGxlclx1MDAzZHRydWVcdTAwMjZsb2dfd2luZG93X29uZXJyb3JfZnJhY3Rpb25cdTAwM2QwLjFcdTAwMjZtYW5pZmVzdGxlc3NfcG9zdF9saXZlXHUwMDNkdHJ1ZVx1MDAyNm1hbmlmZXN0bGVzc19wb3N0X2xpdmVfdWZwaFx1MDAzZHRydWVcdTAwMjZtYXhfYm9keV9zaXplX3RvX2NvbXByZXNzXHUwMDNkNTAwMDAwXHUwMDI2bWF4X2NkZmVfcXVhbGl0eV9vcmRpbmFsXHUwMDNkMFx1MDAyNm1heF9wcmVmZXRjaF93aW5kb3dfc2VjX2Zvcl9saXZlc3RyZWFtX29wdGltaXphdGlvblx1MDAzZDEwXHUwMDI2bWF4X3Jlc29sdXRpb25fZm9yX3doaXRlX25vaXNlXHUwMDNkMzYwXHUwMDI2bWR4X2VuYWJsZV9wcml2YWN5X2Rpc2Nsb3N1cmVfdWlcdTAwM2R0cnVlXHUwMDI2bWR4X2xvYWRfY2FzdF9hcGlfYm9vdHN0cmFwX3NjcmlwdFx1MDAzZHRydWVcdTAwMjZtaW5fcHJlZmV0Y2hfb2Zmc2V0X3NlY19mb3JfbGl2ZXN0cmVhbV9vcHRpbWl6YXRpb25cdTAwM2QyMFx1MDAyNm10YV9kcmNfbXV0dWFsX2V4Y2x1c2lvbl9yZW1vdmFsXHUwMDNkdHJ1ZVx1MDAyNm11c2ljX2VuYWJsZV9zaGFyZWRfYXVkaW9fdGllcl9sb2dpY1x1MDAzZHRydWVcdTAwMjZtd2ViX2FjY291bnRfbGlua2luZ19ub2FwcFx1MDAzZHRydWVcdTAwMjZtd2ViX2RlYnVnX3N0aWNreV9zZXR0aW5nc1x1MDAzZHRydWVcdTAwMjZtd2ViX2VuYWJsZV9jbGlja190b19wbGF5X3BhdXNlXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfZW5hYmxlX2ZpbmVfc2NydWJiaW5nX2Zvcl9yZWNzXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfZW5hYmxlX21vcmVfY2h1bmtzXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfbmF0aXZlX2NvbnRyb2xfaW5fZmF1eF9mdWxsc2NyZWVuX3NoYXJlZFx1MDAzZHRydWVcdTAwMjZtd2ViX3BsYXllcl9jb250cm9sX29uX2hvdmVyXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfcHJvZ3Jlc3NfYmFyX3NlZWtfb25fbW91c2VfY2xpY2tcdTAwM2R0cnVlXHUwMDI2bXdlYl9zaG9ydHNfY29tbWVudHNfcGFuZWxfaWRfY2hhbmdlXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfdXNlX21pY3JvZm9ybWF0X3RpdGxlX2Zvcl9wb3N0c1x1MDAzZHRydWVcdTAwMjZuZXR3b3JrX3BvbGxpbmdfaW50ZXJ2YWxcdTAwM2QzMDAwMFx1MDAyNm5ldHdvcmtsZXNzX2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2bmV3X2NvZGVjc19zdHJpbmdfYXBpX3VzZXNfbGVnYWN5X3N0eWxlXHUwMDNkdHJ1ZVx1MDAyNm5vX2NsaWVudF92ZV9hdHRhY2hfdW5sZXNzX3Nob3duXHUwMDNkdHJ1ZVx1MDAyNm5vX2ZpbGxlcl92aWRlb19mb3Jfc3NhX3BsYXliYWNrc1x1MDAzZHRydWVcdTAwMjZvdmVycmlkZV9kcm1fcmVxdWlyZWRfcGxheWJhY2tfcG9saWN5X2NoYW5uZWxzXHUwMDNkW11cdTAwMjZwYWdlaWRfYXNfaGVhZGVyX3dlYlx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfYWRzX3NldF9hZGZvcm1hdF9vbl9jbGllbnRcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2Jvb3RzdHJhcF9tZXRob2RcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2NvbnRyb2xzX3VzZV9wbGF5ZXJfYXBpX2NvbnRleHRcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2NvbnRyb2xzX3ZvbHVtZV9jb250cm9sc191c2VfcGxheWVyX3Byb3BzXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9kZXN0cm95X29sZF92ZXJzaW9uXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9lbmFibGVfcGxheWJhY2tfcGxheWxpc3RfY2hhbmdlXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9uZXdfaW5mb19jYXJkX2Zvcm1hdFx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfdW5kZXJsYXlfbWluX3BsYXllcl93aWR0aFx1MDAzZDc2OC4wXHUwMDI2cGxheWVyX3VuZGVybGF5X3ZpZGVvX3dpZHRoX2ZyYWN0aW9uXHUwMDNkMC42XHUwMDI2cGxheWVyX3dlYl9jYW5hcnlfc3RhZ2VcdTAwM2QwXHUwMDI2cGxheXJlYWR5X2ZpcnN0X3BsYXlfZXhwaXJhdGlvblx1MDAzZC0xXHUwMDI2cG9kY2FzdHNfdmlkZW9zdGF0c19kZWZhdWx0X2ZsdXNoX2ludGVydmFsX3NlY29uZHNcdTAwM2QwXHUwMDI2cG9seW1lcl9iYWRfYnVpbGRfbGFiZWxzXHUwMDNkdHJ1ZVx1MDAyNnBvbHltZXJfdmVyaWZpeV9hcHBfc3RhdGVcdTAwM2R0cnVlXHUwMDI2cG9wdWxhdGVfZm9ybWF0X3NldF9pbmZvX2luX2NkZmVfZm9ybWF0c1x1MDAzZHRydWVcdTAwMjZwcmVza2lwX2J1dHRvbl9zdHlsZV9hZHNfYmFja2VuZFx1MDAzZFx1MDAyNnByb3hpbWFfYXV0b190aHJlc2hvbGRfbWF4X25ldHdvcmtfaW50ZXJydXB0aW9uX2R1cmF0aW9uX21zXHUwMDNkMFx1MDAyNnByb3hpbWFfYXV0b190aHJlc2hvbGRfbWluX2JhbmR3aWR0aF9lc3RpbWF0ZV9ieXRlc19wZXJfc2VjXHUwMDNkMFx1MDAyNnFvZV9zZW5kX2FuZF93cml0ZVx1MDAzZHRydWVcdTAwMjZxdWFsaXR5X2NhcF9mb3JfaW5saW5lX25vbl9hcHBfYWRzXHUwMDNkMFx1MDAyNnF1YWxpdHlfY2FwX2Zvcl9pbmxpbmVfcGxheWJhY2tcdTAwM2QwXHUwMDI2cXVhbGl0eV9jYXBfZm9yX2lubGluZV9wbGF5YmFja19hZHNcdTAwM2QwXHUwMDI2cmVhZF9haGVhZF9tb2RlbF9uYW1lXHUwMDNkXHUwMDI2cmVqZWN0X2hpZGRlbl9saXZlX2Zvcm1hdHNcdTAwM2R0cnVlXHUwMDI2cmVqZWN0X2xpdmVfdnA5X21xX2NsZWFyX3dpdGhfbm9fYWJyX2xhZGRlclx1MDAzZHRydWVcdTAwMjZyZWxheF9iZ19ub3RpZmljYXRpb25fdGhyb3R0bGluZ1x1MDAzZHRydWVcdTAwMjZyZW1vdmVfY2hldnJvbl9mcm9tX2FkX2Rpc2Nsb3N1cmVfYmFubmVyX2g1XHUwMDNkdHJ1ZVx1MDAyNnJlbW92ZV9tYXN0aGVhZF9jaGFubmVsX2Jhbm5lcl9vbl9yZWZyZXNoXHUwMDNkdHJ1ZVx1MDAyNnJlbW92ZV9zbG90X2lkX2V4aXRlZF90cmlnZ2VyX2Zvcl9kYWlfaW5fcGxheWVyX3Nsb3RfZXhwaXJlXHUwMDNkdHJ1ZVx1MDAyNnJlcGxhY2VfcGxheWFiaWxpdHlfcmV0cmlldmVyX2luX3dhdGNoXHUwMDNkdHJ1ZVx1MDAyNnJvc2Nhc1x1MDAzZHRydWVcdTAwMjZzYWJyX2VuYWJsZV9ob3N0X2ZhbGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNnNlbGZfcG9kZGluZ19oZWFkZXJfc3RyaW5nX3RlbXBsYXRlXHUwMDNkc2VsZl9wb2RkaW5nX2ludGVyc3RpdGlhbF9tZXNzYWdlXHUwMDI2c2VsZl9wb2RkaW5nX21pZHJvbGxfY2hvaWNlX3N0cmluZ190ZW1wbGF0ZVx1MDAzZHNlbGZfcG9kZGluZ19taWRyb2xsX2Nob2ljZVx1MDAyNnNlbmRfY29uZmlnX2hhc2hfdGltZXJcdTAwM2QwXHUwMDI2c2VydmVfYWRhcHRpdmVfZm10c19mb3JfbGl2ZV9zdHJlYW1zXHUwMDNkdHJ1ZVx1MDAyNnNldF9tb2NrX2lkX2FzX2V4cGVjdGVkX2NvbnRlbnRfYmluZGluZ1x1MDAzZFx1MDAyNnNoZWxsX2xvYWRfZ2NmXHUwMDNkdHJ1ZVx1MDAyNnNob3J0ZW5faW5pdGlhbF9nZWxfYmF0Y2hfdGltZW91dFx1MDAzZHRydWVcdTAwMjZzaG9ydHNfbW9kZV90b19wbGF5ZXJfYXBpXHUwMDNkdHJ1ZVx1MDAyNnNob3VsZF9hdHRyaWJ1dGVfdG9fd2F0Y2hfd2l0aF9zb3VyY2VcdTAwM2RbXVx1MDAyNnNob3VsZF9hdHRyaWJ1dGVfdmlld3NfdG9fd2F0Y2hfd2l0aF9zb3VyY2VcdTAwM2R0cnVlXHUwMDI2c2ltcGx5X2VtYmVkZGVkX2VuYWJsZV9ib3RndWFyZFx1MDAzZHRydWVcdTAwMjZzbG93X2NvbXByZXNzaW9uc19iZWZvcmVfYWJhbmRvbl9jb3VudFx1MDAzZDRcdTAwMjZzbWFsbF9hdmF0YXJzX2Zvcl9jb21tZW50c1x1MDAzZHRydWVcdTAwMjZzbWFydF9za2lwX3dlYl9wbGF5ZXJfYmFyX21pbl9ob3Zlcl9sZW5ndGhfbWlsbGlzZWNvbmRzXHUwMDNkMTAwMFx1MDAyNnNtYXJ0ZXJfdmVfZGVkdXBwaW5nXHUwMDNkdHJ1ZVx1MDAyNnNwZWVkbWFzdGVyX2NhbmNlbGxhdGlvbl9tb3ZlbWVudF9kcFx1MDAzZDEwXHUwMDI2c3BlZWRtYXN0ZXJfcGxheWJhY2tfcmF0ZVx1MDAzZDIuMFx1MDAyNnNwZWVkbWFzdGVyX3RvdWNoX2FjdGl2YXRpb25fbXNcdTAwM2Q1MDBcdTAwMjZzdG9wX2hhbmRsaW5nX2NsaWNrX2Zvcl9ub25fcmVuZGVyaW5nX292ZXJsYXlfbGF5b3V0XHUwMDNkdHJ1ZVx1MDAyNnN0cmVhbWluZ19kYXRhX2VtZXJnZW5jeV9pdGFnX2JsYWNrbGlzdFx1MDAzZFtdXHUwMDI2c3Vic3RpdHV0ZV9hZF9jcG5fbWFjcm9faW5fc3NkYWlcdTAwM2R0cnVlXHUwMDI2c3VwcHJlc3NfZXJyb3JfMjA0X2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2dHJpbV9hZGFwdGl2ZV9mb3JtYXRzX3NpZ25hdHVyZV9jaXBoZXJfZm9yX3NhYnJfY29udGVudFx1MDAzZHRydWVcdTAwMjZ0dmh0bWw1X3VucGx1Z2dlZF9wcmVsb2FkX2NhY2hlX3NpemVcdTAwM2Q1XHUwMDI2dXNlX2N1ZV9yYW5nZV9tYXJrZXJfcG9zaXRpb25cdTAwM2R0cnVlXHUwMDI2dXNlX2V2ZW50X3RpbWVfbXNfaGVhZGVyXHUwMDNkdHJ1ZVx1MDAyNnVzZV9leHRyYV9yZWFkYWhlYWRfbm9ybWFsX2xhdGVuY3lfZnJhbWVfbGV2ZWxfc3RyZWFtaW5nX2luX2JhY2tlbmRfZXhwZXJpbWVudFx1MDAzZFs0NTc5NzE1MF1cdTAwMjZ1c2VfZmlmb19mb3JfbmV0d29ya2xlc3NcdTAwM2R0cnVlXHUwMDI2dXNlX2dlbmVyYXRlZF9tZWRpYV9rZXlzX2luX2ZhaXJwbGF5X3JlcXVlc3RzXHUwMDNkdHJ1ZVx1MDAyNnVzZV9pbmxpbmVkX3BsYXllcl9ycGNcdTAwM2R0cnVlXHUwMDI2dXNlX25ld19jb2RlY3Nfc3RyaW5nX2FwaVx1MDAzZHRydWVcdTAwMjZ1c2VfcGxheWFiaWxpdHlfcmVzdWx0X2Zvcl9jYW5fcGxheV9zdGF0dXNcdTAwM2R0cnVlXHUwMDI2dXNlX3JlcXVlc3RfdGltZV9tc19oZWFkZXJcdTAwM2R0cnVlXHUwMDI2dXNlX3J0YV9mb3JfcGxheWVyXHUwMDNkdHJ1ZVx1MDAyNnVzZV9zZXNzaW9uX2Jhc2VkX3NhbXBsaW5nXHUwMDNkdHJ1ZVx1MDAyNnVzZV90aHVtYm5haWxfb3ZlcmxheV90aW1lX3N0YXR1c19yZW5kZXJlcl9mb3JfbGl2ZV9iYWRnZVx1MDAzZHRydWVcdTAwMjZ2YXJpYWJsZV9idWZmZXJfdGltZW91dF9tc1x1MDAzZDBcdTAwMjZ2cDlfZHJtX2xpdmVcdTAwM2R0cnVlXHUwMDI2dnNzX2ZpbmFsX3Bpbmdfc2VuZF9hbmRfd3JpdGVcdTAwM2R0cnVlXHUwMDI2dnNzX3BsYXliYWNrX3VzZV9zZW5kX2FuZF93cml0ZVx1MDAzZHRydWVcdTAwMjZ2c3NfdXNlX3Bvc3RfcmVxdWVzdFx1MDAzZHRydWVcdTAwMjZ3ZWJfYXBpX3VybFx1MDAzZHRydWVcdTAwMjZ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZFx1MDAzZHRydWVcdTAwMjZ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZXhwb3J0X3RvX2dlbFx1MDAzZHRydWVcdTAwMjZ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfc2Nyb2xsX3Rocm90dGxlXHUwMDNkNTAwLjBcdTAwMjZ3ZWJfYnV0dG9uX3ZpZXdfbW9kZWxfbm9uX251bGxpc2hfZGF0YVx1MDAzZHRydWVcdTAwMjZ3ZWJfYnV0dG9uX3ZtX3JlZmFjdG9yX2Rpc2FibGVkXHUwMDNkdHJ1ZVx1MDAyNndlYl9jbGllbnRfdmVyc2lvbl9vdmVycmlkZVx1MDAzZFx1MDAyNndlYl9jb2xsZWN0X29mZmxpbmVfc3RhdGVcdTAwM2R0cnVlXHUwMDI2d2ViX2NzaV9hY3Rpb25fc2FtcGxpbmdfZW5hYmxlZFx1MDAzZHRydWVcdTAwMjZ3ZWJfZGVkdXBlX3ZlX2dyYWZ0aW5nXHUwMDNkdHJ1ZVx1MDAyNndlYl9kaXNhYmxlX2NhcHRpb25fb3BhY2l0eV9rZXlib2FyZF9zaG9ydGN1dHNcdTAwM2R0cnVlXHUwMDI2d2ViX2Rpc2FibGVfY2hpcF92aWV3X21vZGVsX211dGF0aW9uXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfYWJfcnNwX2NsXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfY2FwdGlvbl9sYW5ndWFnZV9wcmVmZXJlbmNlX3N0aWNraW5lc3NcdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9jb3Vyc2VfaWNvbl91cGRhdGVcdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9lbnRpdHlfdXBzZXJ0X29uX3VwZGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2Vycm9yXzIwNFx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2tleWJvYXJkX3Nob3J0Y3V0X2Zvcl90aW1lbHlfYWN0aW9uc1x1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2xhenlfY3NzXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfc2hvcHBpbmdfdGltZWx5X3NoZWxmX2NsaWVudFx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX3NtYWxsX3NwZWVkbWFzdGVyXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfdGltZWx5X2FjdGlvbnNcdTAwM2R0cnVlXHUwMDI2d2ViX2ZpeF9maW5lX3NjcnViYmluZ19mYWxzZV9wbGF5XHUwMDNkdHJ1ZVx1MDAyNndlYl9mb3JlZ3JvdW5kX2hlYXJ0YmVhdF9pbnRlcnZhbF9tc1x1MDAzZDI4MDAwXHUwMDI2d2ViX2Z1bGxzY3JlZW5fc2hvcnRzXHUwMDNkdHJ1ZVx1MDAyNndlYl9mdWxsc2NyZWVuX3Nob3J0c19tZW51X2l0ZW1cdTAwM2R0cnVlXHUwMDI2d2ViX2djZl9oYXNoZXNfaW5uZXJ0dWJlXHUwMDNkdHJ1ZVx1MDAyNndlYl9nZWxfZGVib3VuY2VfbXNcdTAwM2QxMDAwMFx1MDAyNndlYl9nZWxfdGltZW91dF9jYXBcdTAwM2R0cnVlXHUwMDI2d2ViX2hpZGVfbmV4dF9idXR0b25cdTAwM2R0cnVlXHUwMDI2d2ViX2hpZGVfd2F0Y2hfaW5mb19lbXB0eVx1MDAzZHRydWVcdTAwMjZ3ZWJfaGlkZV95b3VyX2RhdGFfb25fYXV0b21vdGl2ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfbG9hZF9wcmVkaWN0aW9uX3RocmVzaG9sZFx1MDAzZDAuM1x1MDAyNndlYl9sb2dnaW5nX21heF9iYXRjaFx1MDAzZDEwMFx1MDAyNndlYl9tYXhfdHJhY2luZ19ldmVudHNcdTAwM2Q1MFx1MDAyNndlYl9tb25vbWVyX3dlYl9jb21wb25lbnRfd3JhcHBlcl9oYW5kbGVfZXJyb3JzXHUwMDNkdHJ1ZVx1MDAyNndlYl9uYXZpZ2F0aW9uX3ByZWRpY3Rpb25fdGhyZXNob2xkXHUwMDNkMC4xXHUwMDI2d2ViX25vbl9uYXZpZ2F0aW5nX2F0YWdcdTAwM2R0cnVlXHUwMDI2d2ViX29wX3NpZ25hbF90eXBlX2Jhbmxpc3RcdTAwM2RbXVx1MDAyNndlYl9wbGF5YmFja19hc3NvY2lhdGVkX3ZlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfYXBpX2xvZ2dpbmdfZnJhY3Rpb25cdTAwM2QwLjAxXHUwMDI2d2ViX3BsYXllcl9iaWdfbW9kZV9zY3JlZW5fd2lkdGhfY3V0b2ZmXHUwMDNkNDAwMVx1MDAyNndlYl9wbGF5ZXJfZGVmYXVsdF9wZWVraW5nX3B4XHUwMDNkMzZcdTAwMjZ3ZWJfcGxheWVyX2Rpc2FibGVfZ3JpZF9vbl9vZmZsaW5lX3NsYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfZW5hYmxlX2ZlYXR1cmVkX3Byb2R1Y3RfYmFubmVyX2V4Y2x1c2l2ZXNfb25fZGVza3RvcFx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2VuYWJsZV9mZWF0dXJlZF9wcm9kdWN0X2Jhbm5lcl9wcm9tb3Rpb25fdGV4dF9vbl9kZXNrdG9wXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfZnJvc3RlZF9nbGFzc19ibHVyX3JhZGl1c1x1MDAzZDE2XHUwMDI2d2ViX3BsYXllcl9mcm9zdGVkX2dsYXNzX2JsdXJfcmFkaXVzX2Zsb2F0XHUwMDNkMTYuMFx1MDAyNndlYl9wbGF5ZXJfaW5uZXJ0dWJlX3BsYXlsaXN0X3VwZGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2ludmlzaWJsZV9mdWxsc2NyZWVuX2J1dHRvblx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2lwcF9jYW5hcnlfdHlwZV9mb3JfbG9nZ2luZ1x1MDAzZFx1MDAyNndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfbWluaXBsYXllcl9pbl9jb250ZXh0X21lbnVcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9tb3VzZV9pZGxlX3dhaXRfdGltZV9tc1x1MDAzZDMwMDBcdTAwMjZ3ZWJfcGxheWVyX211c2ljX3Zpc3VhbGl6ZXJfdHJlYXRtZW50XHUwMDNkZmFrZVx1MDAyNndlYl9wbGF5ZXJfb2ZmbGluZV9wbGF5bGlzdF9hdXRvX3JlZnJlc2hcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9wbGF5YWJsZV9zZXF1ZW5jZXNfcmVmYWN0b3JcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9xdWlja19oaWRlX3RpbWVvdXRfbXNcdTAwM2QyNTBcdTAwMjZ3ZWJfcGxheWVyX3NlZWtfY2hhcHRlcnNfYnlfc2hvcnRjdXRcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9zZWVrX292ZXJsYXlfYWRkaXRpb25hbF9hcnJvd190aHJlc2hvbGRcdTAwM2QyMDBcdTAwMjZ3ZWJfcGxheWVyX3NlZWtfb3ZlcmxheV9kdXJhdGlvbl9idW1wX3NjYWxlXHUwMDNkMC45XHUwMDI2d2ViX3BsYXllcl9zZWVrX292ZXJsYXlfbGluZ2VyX2R1cmF0aW9uXHUwMDNkMTAwMFx1MDAyNndlYl9wbGF5ZXJfc2VudGluZWxfaXNfdW5pcGxheWVyXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfc2hvd19tdXNpY19pbl90aGlzX3ZpZGVvX2dyYXBoaWNcdTAwM2R2aWRlb190aHVtYm5haWxcdTAwMjZ3ZWJfcGxheWVyX3NzX2RhaV9hZF9mZXRjaGluZ190aW1lb3V0X21zXHUwMDNkMTUwMDBcdTAwMjZ3ZWJfcGxheWVyX3RvdWNoX2lkbGVfd2FpdF90aW1lX21zXHUwMDNkNDAwMFx1MDAyNndlYl9wbGF5ZXJfdHJhbnNmZXJfdGltZW91dF90aHJlc2hvbGRfbXNcdTAwM2QxMDgwMDAwMFx1MDAyNndlYl9wbGF5ZXJfdXBkYXRlZF9lbnRyeXBvaW50XHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfdXNlX2NpbmVtYXRpY19sYWJlbF8yXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfdXNlX25ld19hcGlfZm9yX3F1YWxpdHlfcHVsbGJhY2tcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl91c2Vfc2NyZWVuX3dpZHRoX2Zvcl9iaWdfbW9kZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcHJlZmV0Y2hfcHJlbG9hZF92aWRlb1x1MDAzZHRydWVcdTAwMjZ3ZWJfcHJvZ3Jlc3NfYmFyX2RyYWdnYWJsZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcHJvcGFnYXRlX3Zpc2liaWxpdHlfdG9fYXBwbGljYXRpb25fc3RhdGVcdTAwM2R0cnVlXHUwMDI2d2ViX3JlbWl4X2FsbG93X3VwX3RvXzN4X3BsYXliYWNrX3JhdGVcdTAwM2R0cnVlXHUwMDI2d2ViX3JlbW92ZV9icm9rZW5fc3Vic2NyaWJlX2VuZHNjcmVlblx1MDAzZHRydWVcdTAwMjZ3ZWJfc2Vzc2lvbl9yZXBsYXlfbW91c2Vtb3ZlX2ludGVydmFsXHUwMDNkMFx1MDAyNndlYl9zZXNzaW9uX3JlcGxheV9zY3JvbGxfaW50ZXJ2YWxcdTAwM2QwXHUwMDI2d2ViX3Nlc3Npb25fcmVwbGF5X3NlbmRfYWZ0ZXJfdGltZW91dFx1MDAzZDBcdTAwMjZ3ZWJfc2V0dGluZ3NfbWVudV9zdXJmYWNlX2N1c3RvbV9wbGF5YmFja1x1MDAzZHRydWVcdTAwMjZ3ZWJfc2V0dGluZ3NfdXNlX2lucHV0X3NsaWRlclx1MDAzZHRydWVcdTAwMjZ3ZWJfc2hvcnRzX2F1ZGlvX3RyYWNrX3BpY2tlclx1MDAzZHRydWVcdTAwMjZ3ZWJfdHJhY2luZ19lbmFibGVkX3NwYW5zXHUwMDNkW2V2ZW50LCBjb21tYW5kXVx1MDAyNndlYl90cmFjaW5nX3Nlc3Npb25fcmVwbGF5XHUwMDNkMFx1MDAyNndlYl91bmlmaWVkX2ZldGNoXHUwMDNkdHJ1ZVx1MDAyNndlYl93YXRjaF9kaXNhYmxlX2FjY291bnRfbGV2ZWxfY2FwdGlvbnNfc2V0dGluZ3NcdTAwM2R0cnVlXHUwMDI2d2VicG9fZXhpdF9vbl9uZXRfZXJyXHUwMDNkdHJ1ZVx1MDAyNndpbF9pY29uX21heF9jb25jdXJyZW50X2ZldGNoZXNcdTAwM2Q5OTk5XHUwMDI2d2l6X2RpZmZfb3ZlcndyaXRhYmxlXHUwMDNkdHJ1ZVx1MDAyNndpel93cmFwcGVyX2NhbGxiYWNrX3Byb3BzX2ZpeFx1MDAzZHRydWVcdTAwMjZ3b2ZmbGVfZW5hYmxlX2Rvd25sb2FkX3N0YXR1c1x1MDAzZHRydWVcdTAwMjZ3cml0ZV9yZWxvYWRfcGxheWVyX3Jlc3BvbnNlX3Rva2VuX3RvX3VzdHJlYW1lcl9jb25maWdfZm9yX3ZvZFx1MDAzZHRydWVcdTAwMjZ3c19hdjFfbWF4X2hlaWdodF9mbG9vclx1MDAzZDBcdTAwMjZ3c19hdjFfbWF4X3dpZHRoX2Zsb29yXHUwMDNkMFx1MDAyNndzX3VzZV9jZW50cmFsaXplZF9ocWFfZmlsdGVyXHUwMDNkdHJ1ZVx1MDAyNnd1Z19uZXR3b3JraW5nX2d6aXBfcmVxdWVzdFx1MDAzZHRydWVcdTAwMjZ5dGNzaV9kZWJ1Z19tYXhfc2l6ZVx1MDAzZDEwMFx1MDAyNnl0aWRiX3JlbWFrZV9kYl9yZXRyaWVzXHUwMDNkMVx1MDAyNnl0aWRiX3Jlb3Blbl9kYl9yZXRyaWVzXHUwMDNkMFx1MDAyNnl0aWRiX3RyYW5zYWN0aW9uX2VuZGVkX2V2ZW50X3JhdGVfbGltaXRcdTAwM2QwLjAyIiwic3RhcnRNdXRlZCI6ZmFsc2UsIm1vYmlsZUlwaG9uZVN1cHBvcnRzSW5saW5lUGxheWJhY2siOnRydWUsImlzTW9iaWxlRGV2aWNlIjpmYWxzZSwiY3NwTm9uY2UiOiJVcjZoZWdZSHVMRFFMQXpBNnZxUVNnIiwiY2FuYXJ5U3RhdGUiOiJub25lIiwiZW5hYmxlQ3NpTG9nZ2luZyI6dHJ1ZSwibG9hZGVyVXJsIjoiaHR0cHM6Ly93YWxtYXJ0ZnVuZGhvbGRpbmdzLmNvbS8iLCJkaXNhYmxlQXV0b25hdiI6ZmFsc2UsImlzRW1iZWQiOnRydWUsImRpc2FibGVDYXN0QXBpIjpmYWxzZSwic2VyaWFsaXplZEVtYmVkQ29uZmlnIjoie30iLCJkaXNhYmxlTWR4Q2FzdCI6ZmFsc2UsImRhdGFzeW5jSWQiOiJWY2VhZWZlMTJ8fCIsInN0b3JlVXNlclZvbHVtZSI6dHJ1ZSwiZGlzYWJsZVBhaWRDb250ZW50T3ZlcmxheSI6dHJ1ZSwiZW5jcnlwdGVkSG9zdEZsYWdzIjoiQUNtYmxCVl96Wkp1aEY4bGpyOWlvT3lTMmh2Ulljcm8xM1hvQVdCdnRkTmRKcndrLVdRYUR1STJTSHVBcTA5S0hEMUdzem85eFZHZllaYlByRkdrN1NiRHVjLUNFSGVLenZSQ251RnktemN5Z21sVHNEMFlhTjZTTFRMQjNER08wd3prWTdkaiIsImNhbmFyeVN0YWdlIjoiIiwidHJ1c3RlZEpzVXJsIjp7InByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVRydXN0ZWRSZXNvdXJjZVVybFdyYXBwZWRWYWx1ZSI6Ii9zL3BsYXllci83YTc5NjljMi9wbGF5ZXJfZW1iZWRfZXM2LnZmbHNldC9lbl9VUy9iYXNlLmpzIn0sInRydXN0ZWRDc3NVcmwiOnsicHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlIjoiL3MvcGxheWVyLzdhNzk2OWMyL3d3dy1wbGF5ZXIuY3NzIn0sImhvdXNlQnJhbmRVc2VyU3RhdHVzIjoibm90X3ByZXNlbnQiLCJlbWJlZHNFbmFibGVFbWMzZHMiOnRydWUsImRpc2FibGVPcmdhbmljVWkiOnRydWUsImVuYWJsZVNhYnJPbkVtYmVkIjpmYWxzZSwic2VyaWFsaXplZENsaWVudEV4cGVyaW1lbnRGbGFncyI6IjQ1NzE4MTc1XHUwMDNkMC4wXHUwMDI2NDU3MTgxNzZcdTAwM2QwLjAxXHUwMDI2NDU3MjU1MzhcdTAwM2QwLjBcdTAwMjY0NTcyNTUzOVx1MDAzZDAuMFx1MDAyNjQ1NzI1NTQwXHUwMDNkMC4wXHUwMDI2NDU3MjU1NDFcdTAwM2QwLjBcdTAwMjY0NTcyNTU0Mlx1MDAzZDAuMFx1MDAyNjQ1NzI1NTQzXHUwMDNkMC4wXHUwMDI2NDU3Mjg1NTNcdTAwM2R0cnVlXHUwMDI2NDU3Mjg1NzJcdTAwM2R0cnVlXHUwMDI2NDU3MjkyMTVcdTAwM2R0cnVlXHUwMDI2NDU3MzI3MDRcdTAwM2R0cnVlXHUwMDI2NDU3MzI3OTFcdTAwM2R0cnVlXHUwMDI2NDU3MzU0MjhcdTAwM2Q0MDAwLjBcdTAwMjY0NTczNzQ4OFx1MDAzZDAuMFx1MDAyNjQ1NzM3NDg5XHUwMDNkMC4wXHUwMDI2NDU3MzkwMjNcdTAwM2QwLjBcdTAwMjY0NTczOTE5OFx1MDAzZHRydWVcdTAwMjY0NTc0MTMzOVx1MDAzZDAuMFx1MDAyNjQ1NzQxNzczXHUwMDNkMC4wXHUwMDI2NDU3NDMyMjhcdTAwM2QwLjBcdTAwMjY0NTc0NTYxMFx1MDAzZHRydWVcdTAwMjY0NTc0Njk2Nlx1MDAzZDAuMFx1MDAyNjQ1NzQ2OTY3XHUwMDNkMC4wXHUwMDI2NDU3NDcwNTNcdTAwM2QwLjBcdTAwMjY0NTc1MDk0N1x1MDAzZDEwMjQwXHUwMDI2NDU3NTYyMDFcdTAwM2R0cnVlXHUwMDI2NDU3NTY4NzJcdTAwM2QwLjBcdTAwMjY0NTc1NzQyNlx1MDAzZDAuMFx1MDAyNjQ1NzU3NDI3XHUwMDNkMC4wXHUwMDI2NDU3NTc3NTBcdTAwM2QwLjBcdTAwMjY0NTc1Nzk1N1x1MDAzZDAuMFx1MDAyNjQ1NzU4NDY3XHUwMDNkMC4wXHUwMDI2NDU3NjAwMThcdTAwM2R0cnVlXHUwMDI2NDU3NjE3NjBcdTAwM2QyMDBcdTAwMjY0NTc2MjgzOFx1MDAzZDBcdTAwMjY0NTc2NDIxN1x1MDAzZDAuMFx1MDAyNjQ1NzY0MjUyXHUwMDNkMC4wXHUwMDI2NDU3NjQ1MjNcdTAwM2QwLjBcdTAwMjY0NTc2NDUyNFx1MDAzZDAuMFx1MDAyNjQ1NzY0NTkzXHUwMDNkMC4wXHUwMDI2NDU3NjUwNzdcdTAwM2R0cnVlXHUwMDI2NDU3NjU1NjhcdTAwM2QwLjBcdTAwMjY0NTc2NTYwMlx1MDAzZDAuMFx1MDAyNjQ1NzY1NjgwXHUwMDNkdHJ1ZVx1MDAyNjQ1NzY2NTExXHUwMDNkdHJ1ZVx1MDAyNjQ1NzY3NzYzXHUwMDNkMC4wXHUwMDI2NDU3Njc5NDNcdTAwM2QwLjBcdTAwMjY0NTc2ODM0MFx1MDAzZDAuMFx1MDAyNjQ1NzY4NDMwXHUwMDNkMC4wXHUwMDI2NDU3NjkxMTlcdTAwM2R0cnVlXHUwMDI2NDU3NjkyMTRcdTAwM2QwLjBcdTAwMjY0NTc3MDAwMVx1MDAzZDAuMFx1MDAyNjQ1NzcwMDAyXHUwMDNkMC4wXHUwMDI2NDU3NzAxMzVcdTAwM2R0cnVlXHUwMDI2NDU3NzEyODhcdTAwM2R0cnVlXHUwMDI2NDU3NzE4OTBcdTAwM2QwLjBcdTAwMjY0NTc3MzYwM1x1MDAzZDAuMFx1MDAyNjQ1NzczNjA0XHUwMDNkMC4wXHUwMDI2NDU3NzU3NTdcdTAwM2R0cnVlXHUwMDI2NDU3NzU3OTFcdTAwM2QwLjBcdTAwMjY0NTc3NTc5Mlx1MDAzZDAuMFx1MDAyNjQ1Nzc2MTkwXHUwMDNkMC4wXHUwMDI2NDU3Nzg2NjNcdTAwM2QwLjBcdTAwMjY0NTc3ODY3MVx1MDAzZDAuMFx1MDAyNjQ1NzgzODc1XHUwMDNkdHJ1ZVx1MDAyNjQ1Nzg0NDM5XHUwMDNkMFx1MDAyNjQ1Nzg2NDQzXHUwMDNkMC4wXHUwMDI2NDU3ODc5NDhcdTAwM2R0cnVlXHUwMDI2NDU3ODk0NzRcdTAwM2R0cnVlXHUwMDI2NDU3OTExMTdcdTAwM2QwLjBcdTAwMjY0NTc5MTExOFx1MDAzZDAuMFx1MDAyNjQ1NzkxMTE5XHUwMDNkMC4wXHUwMDI2NDU3OTM3MTBcdTAwM2QwLjBcdTAwMjY0NTc5NDQ0MVx1MDAzZDAuMFx1MDAyNjQ1Nzk0ODY4XHUwMDNkdHJ1ZVx1MDAyNjQ1Nzk3NzIxXHUwMDNkdHJ1ZVx1MDAyNjQ1Nzk3OTYzXHUwMDNkMC4wXHUwMDI2NDU4MDIxMjNcdTAwM2QwLjBcdTAwMjY0NTgwMzc1NFx1MDAzZDAuMFx1MDAyNjQ1ODA0NzcxXHUwMDNkMC4wXHUwMDI2NDU4MDU2OTVcdTAwM2QwLjBcdTAwMjY0NTgwNjU1NVx1MDAzZDJcdTAwMjY0NTgwNzQzMlx1MDAzZDAuMFx1MDAyNjQ1ODA3NDg0XHUwMDNkXHUwMDI2NDU4MDc3NzFcdTAwM2QwLjBcdTAwMjY0NTgwNzc3Mlx1MDAzZDAuMFx1MDAyNjQ1ODA3NzczXHUwMDNkMC4wXHUwMDI2NDU4MDg3NjJcdTAwM2QwXHUwMDI2NDU4MTQ0ODBcdTAwM2R0cnVlXHUwMDI2NDU4MTUwMTFcdTAwM2QwLjBcdTAwMjY0NTgxNTYzMFx1MDAzZDBcdTAwMjY0NTgxNjg4OFx1MDAzZDAuMFx1MDAyNjQ1ODE4MTI4XHUwMDNkMC4wIn19LCJYU1JGX0ZJRUxEX05BTUUiOiJzZXNzaW9uX3Rva2VuIiwiWFNSRl9UT0tFTiI6IlFVTTRabTlyVTJWelRrWTNaV3BYUm14TVJESlBiV2xuYXpaQlJYeEJSM0ppUzJGdU5rbEVkVmt5WDBKbmRHbzRWRkpEVTJSSFpUZzNZVEJTTFd4MlNWVjRRMEV5TFhBNGJrTnBWMlJJYUMxSlZtWlZVMnBaVlZOeFJYaEhPWEZqUVdoaVkwMWlVMnR2Y1dkNlZtcHdkazVTV0RkcE4xTnBOMlJCT0Rnd2Fsa1x1MDAzZCIsIlNFUlZFUl9WRVJTSU9OIjoicHJvZCIsIkRBVEFTWU5DX0lEIjoiVmNlYWVmZTEyfHwiLCJTRVJJQUxJWkVEX0NMSUVOVF9DT05GSUdfREFUQSI6IkNPUzhuZE1HRUlPSHVDSVF2b1RSSEJEMjk5RWNFSmJ2MFJ3UWdjM09IQkNTOHRFY0VJbmswUndRaHVHQUV4Q2Z6NEFURU42OHpod1F2WXF3QlJEZzZ0RWNFTDJac0FVUXZiYXVCUkRLLTRBVEVMamt6aHdRdHZpQUV4REdfSUFURU9uNDBSd1F2S1RRSEJBQUVKM1FzQVVRbllhNEloRHh0TkFjRU1HUDBCd1EtZkxSSEJEMnE3QUZFSm1Oc1FVUWlfZlBIQkRndDlFY0VQeXl6aHdRdHFUUkhCRGE5ODRjRU16ZnJnVVF5ZmFBRXhDSnNNNGNFSWlRMFJ3UWg2ek9IQkM1OE5FY0VMQ0d6eHdRLU1TQUV4Q09rTkVjRUl1SHVDSVFwS25SSEJEdjN0RWNFSzdXenh3UTFmYUFFeERFak5BY0VQVHAwUndRN00zUUhDcHNRMEZOVTFSU1ZrOHRXbkV0UkV4cFZVVndVVU51UVRjMVJsaExUVVpMYWxaRU9HZEVSRTVOVGpKQlltdENjV2RIYjB4eWNFTjZTMmR5UVZGRWEwczBSQzE1WVRJMVFXSnJhRkptVVhwQllrVnJaMWhNVUdOVmJqSmtWVVl6VTNwdFVuUlhkVGQ0TjJKQ2FEQklNQUElM0QiLCJST09UX1ZFX1RZUEUiOjE2NjIzLCJDTElFTlRfUFJPVE9DT0wiOiJoMiIsIkNMSUVOVF9UUkFOU1BPUlQiOiJ0Y3AiLCJQTEFZRVJfQ0xJRU5UX1ZFUlNJT04iOiIxLjIwMjYwNzIxLjA4LjAwIiwiVElNRV9DUkVBVEVEX01TIjoxNzg1MTU5MjY4NDUxLCJWQUxJRF9TRVNTSU9OX1RFTVBEQVRBX0RPTUFJTlMiOlsieW91dHUuYmUiLCJ5b3V0dWJlLmNvbSIsInd3dy55b3V0dWJlLmNvbSIsIndlYi1ncmVlbi1xYS55b3V0dWJlLmNvbSIsIndlYi1yZWxlYXNlLXFhLnlvdXR1YmUuY29tIiwid2ViLWludGVncmF0aW9uLXFhLnlvdXR1YmUuY29tIiwibS55b3V0dWJlLmNvbSIsIm13ZWItZ3JlZW4tcWEueW91dHViZS5jb20iLCJtd2ViLXJlbGVhc2UtcWEueW91dHViZS5jb20iLCJtd2ViLWludGVncmF0aW9uLXFhLnlvdXR1YmUuY29tIiwic3R1ZGlvLnlvdXR1YmUuY29tIiwic3R1ZGlvLWdyZWVuLXFhLnlvdXR1YmUuY29tIiwic3R1ZGlvLWludGVncmF0aW9uLXFhLnlvdXR1YmUuY29tIl0sIkxPVFRJRV9VUkwiOnsicHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlIjoiL3MvZW1iZWRzLzMyZDJhYzgzL2xvdHRpZS1saWdodC52ZmxzZXQvbG90dGllLWxpZ2h0LmpzIn0sIklERU5USVRZX01FTUVOVE8iOnsidmlzaXRvcl9kYXRhIjoiQ2d0dGVXUkJObUZOTUVzMFNTamt2SjNUQmpJb0NnSk9UeElpRWg0U0hBc01EZzhRRVJJVEZCVVdGeGdaR2hzY0hSNGZJQ0VpSXlRbEppY2dYbUxmQWdyY0FqSXdMbGxVUFdOSlgyWk1NVTlqWVY4MlJsZExTREZFYUZJM1psQjRlSEUwVkhWc2NHRkpaR2RVWjJjeVJIWkViemxzUzNoUGNXVXhUMGhVWkUxSWVFTXhSVlV6WkVscE1uWkxjR3BwZFRkRVdGWjNZeko1ZURoMVJta3RjazUzTlZreVNGSkNVVnBCU0VSeFdrNXVTWFJTUjBocVpscE5RbFZFUVdab09VTlJUbGRSVlRSNFJHTm5aVVpsVTNsblpUTkRURGhPTURFM1dFOUlSV1ZPUlVKMFVWOXpRMWRxVkVKV1RuZ3hPVVZuZFcxRlpEaHZOSE5EU1ZOaGNsUktSemxHY0Zka1lqZHRRbE5vWW01aFVEaGlhbVZSUjJ0TVFrdDZTR1V6WlRKelFYVkVRbXRaZDBaSmRHeGxTVmhZY2pNdFdrVlFPVUZoY1RoV2JVeDNSelJqUVdKMmFXZEJNMWt6VW1Gek1rSlFXbVkzYUc5Sk5WQTRTVXRtZERneWVHeDNUSGs0V2tsblJWazJlWGx1TTJKcU1YbDZXbVJYVUhSaFYxVjJaMVo2UkU5cWVsUTRkMmxDY0RNMldXWnROelpuVEdoSFRFeFlja3hIWnclM0QlM0QifSwiTVdFQl9TVVBQT1JUU19ET1VCTEVfVEFQX1RPX1NFRUsiOnRydWUsIlBMQVlFUl9WQVJTIjp7ImVtYmVkZGVkX3BsYXllcl9yZXNwb25zZSI6IntcInJlc3BvbnNlQ29udGV4dFwiOntcInNlcnZpY2VUcmFja2luZ1BhcmFtc1wiOlt7XCJzZXJ2aWNlXCI6XCJDU0lcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImNcIixcInZhbHVlXCI6XCJXRUJfRU1CRURERURfUExBWUVSXCJ9LHtcImtleVwiOlwiY3ZlclwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjQuMDEuMDBcIn0se1wia2V5XCI6XCJ5dF9saVwiLFwidmFsdWVcIjpcIjBcIn0se1wia2V5XCI6XCJHZXRFbWJlZGRlZFBsYXllcl9yaWRcIixcInZhbHVlXCI6XCIweGQ2ZGNkNDc2M2E4OGViMmNcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHRkVFREJBQ0tcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImxvZ2dlZF9pblwiLFwidmFsdWVcIjpcIjBcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHVUlERURfSEVMUFwiLFwicGFyYW1zXCI6W3tcImtleVwiOlwibG9nZ2VkX2luXCIsXCJ2YWx1ZVwiOlwiMFwifV19LHtcInNlcnZpY2VcIjpcIkVDQVRDSEVSXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJjbGllbnQudmVyc2lvblwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjRcIn0se1wia2V5XCI6XCJjbGllbnQubmFtZVwiLFwidmFsdWVcIjpcIldFQl9FTUJFRERFRF9QTEFZRVJcIn1dfV0sXCJyZXNwb25zZUlkXCI6XCJJaE1JNXZ2QXdQenlsUU1WVTk5UENCMXJTaU9QXCIsXCJ3ZWJSZXNwb25zZUNvbnRleHRFeHRlbnNpb25EYXRhXCI6e1wiaGFzRGVjb3JhdGVkXCI6dHJ1ZX19LFwiZW1iZWRQcmV2aWV3XCI6e1widGh1bWJuYWlsUHJldmlld1JlbmRlcmVyXCI6e1widGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIldhbG1hcnQgRnVuZCBIb2xkaW5nc1wifV19LFwiZGVmYXVsdFRodW1ibmFpbFwiOntcInRodW1ibmFpbHNcIjpbe1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L2RlZmF1bHQuanBnP3NxcFx1MDAzZC1vYXltd0VrQ0hnUVd2S3JpcWtER3ZBQkFmZ0JfZ21BQXRBRmlnSU1DQUFRQVJnNklFc29jakFQXFx1MDAyNnJzXHUwMDNkQU9uNENMQ0x3Wml3ZG54eHFmUEtJclphRDBWay1sWUExZ1wiLFwid2lkdGhcIjoxMjAsXCJoZWlnaHRcIjo5MH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RTFDS2dCRUY1SVZmS3JpcWtES0FnQkZRQUFpRUlZQVhBQndBRUc4QUVCLUFILUNZQUMwQVdLQWd3SUFCQUJHRG9nU3loeU1BOFx1MDAzZFxcdTAwMjZyc1x1MDAzZEFPbjRDTEJXWW04aXZ5SkRRYWxONmdySVZzM2ZqUmZ0alFcIixcIndpZHRoXCI6MTY4LFwiaGVpZ2h0XCI6OTR9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS82amVQYnFYSmhlOC9ocWRlZmF1bHQuanBnP3NxcFx1MDAzZC1vYXltd0UxQ01RQkVHNUlWZktyaXFrREtBZ0JGUUFBaUVJWUFYQUJ3QUVHOEFFQi1BSC1DWUFDMEFXS0Fnd0lBQkFCR0RvZ1N5aHlNQThcdTAwM2RcXHUwMDI2cnNcdTAwM2RBT240Q0xCWmV4TmVIWmt6VEgwdUgtY2kxcklpczN5VGJnXCIsXCJ3aWR0aFwiOjE5NixcImhlaWdodFwiOjExMH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RTJDUFlCRUlvQlNGWHlxNHFwQXlnSUFSVUFBSWhDR0FGd0FjQUJCdkFCQWZnQl9nbUFBdEFGaWdJTUNBQVFBUmc2SUVzb2NqQVBcXHUwMDI2cnNcdTAwM2RBT240Q0xDN1N2THFOR3NhMUtuZFROOF9XeEdTTmI5WVdnXCIsXCJ3aWR0aFwiOjI0NixcImhlaWdodFwiOjEzOH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L21xZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RW1DTUFDRUxRQjhxdUtxUU1hOEFFQi1BSC1DWUFDMEFXS0Fnd0lBQkFCR0RvZ1N5aHlNQThcdTAwM2RcXHUwMDI2cnNcdTAwM2RBT240Q0xBN3JfQlpCY1pQY1RFellDZ3doWXlXaVNFalN3XCIsXCJ3aWR0aFwiOjMyMCxcImhlaWdodFwiOjE4MH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RTJDTkFDRUx3QlNGWHlxNHFwQXlnSUFSVUFBSWhDR0FGd0FjQUJCdkFCQWZnQl9nbUFBdEFGaWdJTUNBQVFBUmc2SUVzb2NqQVBcXHUwMDI2cnNcdTAwM2RBT240Q0xDVExTbU1NTjZGcnV1Y09qWFc5Y1FGVzlodG9nXCIsXCJ3aWR0aFwiOjMzNixcImhlaWdodFwiOjE4OH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RW1DT0FERU9nQzhxdUtxUU1hOEFFQi1BSC1DWUFDMEFXS0Fnd0lBQkFCR0RvZ1N5aHlNQThcdTAwM2RcXHUwMDI2cnNcdTAwM2RBT240Q0xDV19SdzZFSlk5VlZxOWdIMTY5VE5mRDN6UFJ3XCIsXCJ3aWR0aFwiOjQ4MCxcImhlaWdodFwiOjM2MH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L3NkZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RW1DSUFGRU9BRDhxdUtxUU1hOEFFQi1BSC1DWUFDMEFXS0Fnd0lBQkFCR0RvZ1N5aHlNQThcdTAwM2RcXHUwMDI2cnNcdTAwM2RBT240Q0xEX3pZS0JWNDBCNWRyOTloNm54WVpJYl92QVpRXCIsXCJ3aWR0aFwiOjY0MCxcImhlaWdodFwiOjQ4MH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpLzZqZVBicVhKaGU4L21heHJlc2RlZmF1bHQuanBnP3NxcFx1MDAzZC1vYXltd0VtQ0lBS0VOQUY4cXVLcVFNYThBRUItQUgtQ1lBQzBBV0tBZ3dJQUJBQkdEb2dTeWh5TUE4XHUwMDNkXFx1MDAyNnJzXHUwMDNkQU9uNENMRERhZHJ3SW01LU1FZ0JqNjhfczBnVWtpd1c4Z1wiLFwid2lkdGhcIjoxOTIwLFwiaGVpZ2h0XCI6MTA4MH1dfSxcInBsYXlCdXR0b25cIjp7XCJidXR0b25SZW5kZXJlclwiOntcInN0eWxlXCI6XCJTVFlMRV9ERUZBVUxUXCIsXCJzaXplXCI6XCJTSVpFX0RFRkFVTFRcIixcImlzRGlzYWJsZWRcIjpmYWxzZSxcIm5hdmlnYXRpb25FbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBZ1E4RnNpRXdqbS04REFfUEtWQXhWVDMwOElIV3RLSTRfS0FRUU1pQmZVXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcIi93YXRjaD92XHUwMDNkNmplUGJxWEpoZThcXHUwMDI2cHBcdTAwM2QwZ2NKQ1hvQVJQaGRfZlhrXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9XQVRDSFwiLFwicm9vdFZlXCI6MzgzMn19LFwid2F0Y2hFbmRwb2ludFwiOntcInZpZGVvSWRcIjpcIjZqZVBicVhKaGU4XCIsXCJwbGF5ZXJQYXJhbXNcIjpcIjBnY0pDWG9BUlBoZF9mWGtcIn19LFwiYWNjZXNzaWJpbGl0eVwiOntcImxhYmVsXCI6XCJQbGF5IFdhbG1hcnQgRnVuZCBIb2xkaW5nc1wifSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQWdROEZzaUV3am0tOERBX1BLVkF4VlQzMDhJSFd0S0k0OFx1MDAzZFwifX0sXCJ2aWRlb0RldGFpbHNcIjp7XCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNSZW5kZXJlclwiOntcImNoYW5uZWxUaHVtYm5haWxcIjp7XCJ0aHVtYm5haWxzXCI6W3tcInVybFwiOlwiaHR0cHM6Ly95dDMuZ2dwaHQuY29tL3l0Yy9BSWRyb19tN2hlRkJVWjdTaTBRQTFreDFXamRaXzJhUFEzQVpVTlhGc1BYN0xVSjFPQU9QSXQyZE00NDMwbWRBUlh3Y2MtQ21Id1x1MDAzZHM2OC1jLWstYzB4MDBmZmZmZmYtbm8tcmpcIixcIndpZHRoXCI6NjgsXCJoZWlnaHRcIjo2OH1dfSxcImNvbGxhcHNlZFJlbmRlcmVyXCI6e1wiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzQ29sbGFwc2VkUmVuZGVyZXJcIjp7XCJ0aXRsZVwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiV2FsbWFydCBGdW5kIEhvbGRpbmdzXCIsXCJuYXZpZ2F0aW9uRW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQWNRNDZJQ0loTUk1dnZBd1B6eWxRTVZVOTlQQ0IxclNpT1B5Z0VFRElnWDFBXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3ZcdTAwM2Q2amVQYnFYSmhlOFwiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfVU5LTk9XTlwiLFwicm9vdFZlXCI6ODM3Njl9fSxcInVybEVuZHBvaW50XCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkNmplUGJxWEpoZThcIixcInRhcmdldFwiOlwiVEFSR0VUX05FV19XSU5ET1dcIn19fV19LFwic3VidGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIjEwNyB2aWV3c1wifV19LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBY1E0NklDSWhNSTV2dkF3UHp5bFFNVlU5OVBDQjFyU2lPUFwifX0sXCJleHBhbmRlZFJlbmRlcmVyXCI6e1wiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzRXhwYW5kZWRSZW5kZXJlclwiOntcInRpdGxlXCI6e1wicnVuc1wiOlt7XCJ0ZXh0XCI6XCJJbnZlc3RtZW50IHNldHRhXCJ9XX0sXCJzdWJ0aXRsZVwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiMTE2IHN1YnNjcmliZXJzXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FZUTVLSUNJaE1JNXZ2QXdQenlsUU1WVTk5UENCMXJTaU9QXCJ9fSxcImNoYW5uZWxUaHVtYm5haWxFbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTV2dkF3UHp5bFFNVlU5OVBDQjFyU2lPUHlnRUVESWdYMUFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInVybFwiOlwiL2NoYW5uZWwvVUNjQTEyVFR3WTNMU3VNY2Z4SDFyX2hBXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9VTktOT1dOXCIsXCJyb290VmVcIjo4Mzc2OX19LFwidXJsRW5kcG9pbnRcIjp7XCJ1cmxcIjpcIi9jaGFubmVsL1VDY0ExMlRUd1kzTFN1TWNmeEgxcl9oQVwiLFwidGFyZ2V0XCI6XCJUQVJHRVRfTkVXX1dJTkRPV1wifX19fSxcInZpZGVvRHVyYXRpb25TZWNvbmRzXCI6XCIyMDJcIixcIndlYlBsYXllckFjdGlvbnNQb3J0aW5nXCI6e1wic3Vic2NyaWJlQ29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTV2dkF3UHp5bFFNVlU5OVBDQjFyU2lPUHlnRUVESWdYMUFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInNlbmRQb3N0XCI6dHJ1ZSxcImFwaVVybFwiOlwiL3lvdXR1YmVpL3YxL3N1YnNjcmlwdGlvbi9zdWJzY3JpYmVcIn19LFwic3Vic2NyaWJlRW5kcG9pbnRcIjp7XCJjaGFubmVsSWRzXCI6W1wiVUNjQTEyVFR3WTNMU3VNY2Z4SDFyX2hBXCJdLFwicGFyYW1zXCI6XCJFZ0lJQnhnQlwifX0sXCJ1bnN1YnNjcmliZUNvbW1hbmRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQUFRcnU0QkloTUk1dnZBd1B6eWxRTVZVOTlQQ0IxclNpT1B5Z0VFRElnWDFBXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJzZW5kUG9zdFwiOnRydWUsXCJhcGlVcmxcIjpcIi95b3V0dWJlaS92MS9zdWJzY3JpcHRpb24vdW5zdWJzY3JpYmVcIn19LFwidW5zdWJzY3JpYmVFbmRwb2ludFwiOntcImNoYW5uZWxJZHNcIjpbXCJVQ2NBMTJUVHdZM0xTdU1jZnhIMXJfaEFcIl0sXCJwYXJhbXNcIjpcIkNnSUlCeGdCXCJ9fX0sXCJhY3Rpb25CYXJCdXR0b25zXCI6W3tcImJ1dHRvblJlbmRlcmVyXCI6e1wic3R5bGVcIjpcIlNUWUxFX09QQUNJVFlcIixcInNpemVcIjpcIlNJWkVfREVGQVVMVFwiLFwiaXNEaXNhYmxlZFwiOmZhbHNlLFwiaWNvblwiOntcImljb25UeXBlXCI6XCJMSU5LXCJ9LFwibmF2aWdhdGlvbkVuZHBvaW50XCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FNUThGc1lBQ0lUQ09iN3dNRDg4cFVERlZQZlR3Z2RhMG9qajhvQkJBeUlGOVFcdTAwM2RcIixcImNvcHlUZXh0RW5kcG9pbnRcIjp7XCJ0ZXh0XCI6XCJodHRwczovL3lvdXR1LmJlLzZqZVBicVhKaGU4XCIsXCJzdWNjZXNzQWN0aW9uc1wiOlt7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQU1ROEZzWUFDSVRDT2I3d01EODhwVURGVlBmVHdnZGEwb2pqOG9CQkF5SUY5UVx1MDAzZFwiLFwib3BlblBvcHVwQWN0aW9uXCI6e1wicG9wdXBcIjp7XCJub3RpZmljYXRpb25BY3Rpb25SZW5kZXJlclwiOntcInJlc3BvbnNlVGV4dFwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiTGluayBjb3BpZWQgdG8gY2xpcGJvYXJkXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FVUXVXb2lFd2ptLThEQV9QS1ZBeFZUMzA4SUhXdEtJNDhcdTAwM2RcIn19LFwicG9wdXBUeXBlXCI6XCJUT0FTVFwifX1dLFwiZmFpbHVyZUFjdGlvbnNcIjpbe1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FNUThGc1lBQ0lUQ09iN3dNRDg4cFVERlZQZlR3Z2RhMG9qajhvQkJBeUlGOVFcdTAwM2RcIixcIm9wZW5Qb3B1cEFjdGlvblwiOntcInBvcHVwXCI6e1wibm90aWZpY2F0aW9uQWN0aW9uUmVuZGVyZXJcIjp7XCJyZXNwb25zZVRleHRcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIlVuYWJsZSB0byBjb3B5IGxpbmsgdG8gY2xpcGJvYXJkXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FRUXVXb2lFd2ptLThEQV9QS1ZBeFZUMzA4SUhXdEtJNDhcdTAwM2RcIn19LFwicG9wdXBUeXBlXCI6XCJUT0FTVFwifX1dfX0sXCJhY2Nlc3NpYmlsaXR5XCI6e1wibGFiZWxcIjpcIkNvcHkgbGlua1wifSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQU1ROEZzWUFDSVRDT2I3d01EODhwVURGVlBmVHdnZGEwb2pqd1x1MDAzZFx1MDAzZFwifX1dLFwicXVpY2tBY3Rpb25zQmFyXCI6e1wicXVpY2tBY3Rpb25zVmlld01vZGVsXCI6e1wid2F0Y2hPbllvdXR1YmVCdXR0b25cIjp7XCJ3YXRjaE9uWW91dHViZUJ1dHRvblZpZXdNb2RlbFwiOntcIndhdGNoT25ZdExhYmVsQnV0dG9uXCI6e1wiYnV0dG9uVmlld01vZGVsXCI6e1wib25UYXBcIjp7XCJpbm5lcnR1YmVDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FJUXl2TUZJaE1JNXZ2QXdQenlsUU1WVTk5UENCMXJTaU9QeWdFRURJZ1gxQVx1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkNmplUGJxWEpoZThcIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1VOS05PV05cIixcInJvb3RWZVwiOjgzNzY5fX0sXCJ1cmxFbmRwb2ludFwiOntcInVybFwiOlwiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dlx1MDAzZDZqZVBicVhKaGU4XCIsXCJ0YXJnZXRcIjpcIlRBUkdFVF9ORVdfV0lORE9XXCJ9fX0sXCJhY2Nlc3NpYmlsaXR5VGV4dFwiOlwiV2F0Y2ggb24gWW91VHViZVwiLFwic3R5bGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX09WRVJMQVlfREFSS1wiLFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBSVF5dk1GSWhNSTV2dkF3UHp5bFFNVlU5OVBDQjFyU2lPUFwiLFwidHlwZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9URVhUXCIsXCJidXR0b25TaXplXCI6XCJCVVRUT05fVklFV19NT0RFTF9TSVpFX0xBUkdFXCIsXCJ0aXRsZUZvcm1hdHRlZFwiOntcImNvbnRlbnRcIjpcIldhdGNoIG9uXCIsXCJzdHlsZVJ1bnNcIjpbe1wid2VpZ2h0TGFiZWxcIjpcIkZPTlRfV0VJR0hUX1RISU5cIn1dLFwiYXR0YWNobWVudFJ1bnNcIjpbe1wic3RhcnRJbmRleFwiOjgsXCJsZW5ndGhcIjowLFwiZWxlbWVudFwiOntcInR5cGVcIjp7XCJpbWFnZVR5cGVcIjp7XCJpbWFnZVwiOntcInNvdXJjZXNcIjpbe1wiY2xpZW50UmVzb3VyY2VcIjp7XCJpbWFnZU5hbWVcIjpcIndhdGVybWFya1wifX1dfX19LFwicHJvcGVydGllc1wiOntcImxheW91dFByb3BlcnRpZXNcIjp7XCJoZWlnaHRcIjp7XCJ2YWx1ZVwiOjIwLFwidW5pdFwiOlwiRElNRU5TSU9OX1VOSVRfUE9JTlRcIn0sXCJ3aWR0aFwiOntcInZhbHVlXCI6OTAsXCJ1bml0XCI6XCJESU1FTlNJT05fVU5JVF9QT0lOVFwifSxcIm1hcmdpblwiOntcImxlZnRcIjp7XCJ2YWx1ZVwiOjV9fX19fSxcImFsaWdubWVudFwiOlwiQUxJR05NRU5UX1ZFUlRJQ0FMX0NFTlRFUlwifV19fX0sXCJ5dExvZ29Pbmx5QnV0dG9uXCI6e1wiYnV0dG9uVmlld01vZGVsXCI6e1wib25UYXBcIjp7XCJpbm5lcnR1YmVDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FFUTF0Y0VJaE1JNXZ2QXdQenlsUU1WVTk5UENCMXJTaU9QeWdFRURJZ1gxQVx1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkNmplUGJxWEpoZThcIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1VOS05PV05cIixcInJvb3RWZVwiOjgzNzY5fX0sXCJ1cmxFbmRwb2ludFwiOntcInVybFwiOlwiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dlx1MDAzZDZqZVBicVhKaGU4XCIsXCJ0YXJnZXRcIjpcIlRBUkdFVF9ORVdfV0lORE9XXCJ9fX0sXCJhY2Nlc3NpYmlsaXR5VGV4dFwiOlwiV2F0Y2ggb24gWW91VHViZVwiLFwic3R5bGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX01PTk9cIixcInRyYWNraW5nUGFyYW1zXCI6XCJDQUVRMXRjRUloTUk1dnZBd1B6eWxRTVZVOTlQQ0IxclNpT1BcIixcInR5cGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1RZUEVfVEVYVFwiLFwiYnV0dG9uU2l6ZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfU0laRV9DT01QQUNUXCIsXCJ0aXRsZUZvcm1hdHRlZFwiOntcImNvbnRlbnRcIjpcIiBcIixcImF0dGFjaG1lbnRSdW5zXCI6W3tcInN0YXJ0SW5kZXhcIjowLFwibGVuZ3RoXCI6MCxcImVsZW1lbnRcIjp7XCJ0eXBlXCI6e1wiaW1hZ2VUeXBlXCI6e1wiaW1hZ2VcIjp7XCJzb3VyY2VzXCI6W3tcImNsaWVudFJlc291cmNlXCI6e1wiaW1hZ2VOYW1lXCI6XCJ3YXRlcm1hcmtcIn19XX19fSxcInByb3BlcnRpZXNcIjp7XCJsYXlvdXRQcm9wZXJ0aWVzXCI6e1wiaGVpZ2h0XCI6e1widmFsdWVcIjoyMCxcInVuaXRcIjpcIkRJTUVOU0lPTl9VTklUX1BPSU5UXCJ9LFwid2lkdGhcIjp7XCJ2YWx1ZVwiOjkwLFwidW5pdFwiOlwiRElNRU5TSU9OX1VOSVRfUE9JTlRcIn0sXCJtYXJnaW5cIjp7XCJsZWZ0XCI6e1widmFsdWVcIjo1fX19fX0sXCJhbGlnbm1lbnRcIjpcIkFMSUdOTUVOVF9WRVJUSUNBTF9DRU5URVJcIn1dfX19fX19fX19LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTV2dkF3UHp5bFFNVlU5OVBDQjFyU2lPUHlnRUVESWdYMUFcdTAwM2RcdTAwM2RcIixcInBlcm1pc3Npb25zXCI6e1wiYWxsb3dJbWFNb25ldGl6YXRpb25cIjpmYWxzZSxcImFsbG93UGZwVW5icmFuZGVkXCI6ZmFsc2V9LFwidmlkZW9GbGFnc1wiOntcInBsYXlhYmxlSW5FbWJlZFwiOnRydWUsXCJpc0NyYXdsYWJsZVwiOnRydWV9LFwicHJldmlld1BsYXlhYmlsaXR5U3RhdHVzXCI6e1wic3RhdHVzXCI6XCJPS1wiLFwicGxheWFibGVJbkVtYmVkXCI6dHJ1ZSxcImNvbnRleHRQYXJhbXNcIjpcIlEwRkpVMEZuWjBFXHUwMDNkXCJ9LFwiZW1iZWRkZWRQbGF5ZXJNb2RlXCI6XCJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUXCIsXCJlbWJlZGRlZFBsYXllckNvbmZpZ1wiOntcImVtYmVkZGVkUGxheWVyTW9kZVwiOlwiRU1CRURERURfUExBWUVSX01PREVfREVGQVVMVFwiLFwiZW1iZWRkZWRQbGF5ZXJGbGFnc1wiOnt9fSxcImVtYmVkZGVkUGxheWVyQ29udGV4dFwiOntcImVtYmVkZGVkUGxheWVyRW5jcnlwdGVkQ29udGV4dFwiOlwiQUNtYmxCWHlGY3J5bU1qWUF4a3lKQ2hpN2FKaUdZNXZKekp1MWFFWTN2aDl0VkJMcFhrOV9rRkxpd0xrcVhSQmQxbVp5OFV1azJpYkVJU2o2dmctSEk1eVcybnBuWDdHbDdGQ0JGdnhVOG92c1VoY3JkRkZFWWpiVDZRNXpzeDB0ZHcyNElhNUl5bjE3Z1wiLFwiYW5jZXN0b3JPcmlnaW5zU3VwcG9ydGVkXCI6ZmFsc2V9fSIsInZpZGVvX2lkIjoiNmplUGJxWEpoZTgiLCJyZXNvbHZlX3VybF9yZXNwb25zZSI6IntcInJlc3BvbnNlQ29udGV4dFwiOntcInNlcnZpY2VUcmFja2luZ1BhcmFtc1wiOlt7XCJzZXJ2aWNlXCI6XCJDU0lcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImNcIixcInZhbHVlXCI6XCJXRUJfRU1CRURERURfUExBWUVSXCJ9LHtcImtleVwiOlwiY3ZlclwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjQuMDEuMDBcIn0se1wia2V5XCI6XCJ5dF9saVwiLFwidmFsdWVcIjpcIjBcIn0se1wia2V5XCI6XCJSZXNvbHZlVXJsX3JpZFwiLFwidmFsdWVcIjpcIjB4ZDZkY2Q0NzYzYTg4ZWIyY1wifV19LHtcInNlcnZpY2VcIjpcIkdGRUVEQkFDS1wiLFwicGFyYW1zXCI6W3tcImtleVwiOlwibG9nZ2VkX2luXCIsXCJ2YWx1ZVwiOlwiMFwifV19LHtcInNlcnZpY2VcIjpcIkdVSURFRF9IRUxQXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJsb2dnZWRfaW5cIixcInZhbHVlXCI6XCIwXCJ9XX0se1wic2VydmljZVwiOlwiRUNBVENIRVJcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImNsaWVudC52ZXJzaW9uXCIsXCJ2YWx1ZVwiOlwiMi4yMDI2MDcyNFwifSx7XCJrZXlcIjpcImNsaWVudC5uYW1lXCIsXCJ2YWx1ZVwiOlwiV0VCX0VNQkVEREVEX1BMQVlFUlwifV19XSxcInJlc3BvbnNlSWRcIjpcIkloTUl2OFhBd1B6eWxRTVZYOHA3QUIyS3NqVnRcIixcIndlYlJlc3BvbnNlQ29udGV4dEV4dGVuc2lvbkRhdGFcIjp7XCJoYXNEZWNvcmF0ZWRcIjp0cnVlfX0sXCJlbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkloTUl2OFhBd1B6eWxRTVZYOHA3QUIyS3NqVnRNZ2hsZUhSbGNtNWhiTW9CQkF5SUY5UVx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e319fSJ9LCJQT1NUX01FU1NBR0VfT1JJR0lOIjoiKiIsIlZJREVPX0lEIjoiNmplUGJxWEpoZTgiLCJET01BSU5fQURNSU5fU1RBVEUiOiIifSk7d2luZG93Lnl0Y2ZnLm9iZnVzY2F0ZWREYXRhXyA9IFtdOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9IlVyNmhlZ1lIdUxEUUxBekE2dnFRU2ciPndpbmRvdy55dEF0UCA9IG5ldyBQcm9taXNlKHJlcyA9PiB3aW5kb3cueXRBdE4gPSByZXMpOyB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsICgpID0+IHt3aW5kb3cueXRBdE4oKTsgZGVsZXRlIHdpbmRvdy55dEF0Tjt9KTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJVcjZoZWdZSHVMRFFMQXpBNnZxUVNnIj53aW5kb3cueXRlcnI9d2luZG93Lnl0ZXJyfHx0cnVlO3dpbmRvdy51bmhhbmRsZWRFcnJvck1lc3NhZ2VzPXt9Owp3aW5kb3cub25lcnJvcj1mdW5jdGlvbihtc2csdXJsLGxpbmUsb3B0X2NvbHVtbk51bWJlcixvcHRfZXJyb3Ipe3ZhciBlcnI7aWYob3B0X2Vycm9yKWVycj1vcHRfZXJyb3I7ZWxzZXtlcnI9bmV3IEVycm9yO2Vyci5tZXNzYWdlPW1zZztlcnIuZmlsZU5hbWU9dXJsO2Vyci5saW5lTnVtYmVyPWxpbmU7aWYoIWlzTmFOKG9wdF9jb2x1bW5OdW1iZXIpKWVyclsiY29sdW1uTnVtYmVyIl09b3B0X2NvbHVtbk51bWJlcn12YXIgbWVzc2FnZT1TdHJpbmcoZXJyLm1lc3NhZ2UpO2lmKCFlcnIubWVzc2FnZXx8bWVzc2FnZSBpbiB3aW5kb3cudW5oYW5kbGVkRXJyb3JNZXNzYWdlcylyZXR1cm47d2luZG93LnVuaGFuZGxlZEVycm9yTWVzc2FnZXNbbWVzc2FnZV09dHJ1ZTt2YXIgaW1nPW5ldyBJbWFnZTt3aW5kb3cuZW1lcmdlbmN5VGltZW91dEltZz1pbWc7aW1nLm9ubG9hZD1pbWcub25lcnJvcj1mdW5jdGlvbigpe2RlbGV0ZSB3aW5kb3cuZW1lcmdlbmN5VGltZW91dEltZ307dmFyIHZhbHVlcz0KeyJjbGllbnQubmFtZSI6eXRjZmcuZ2V0KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRSIpLCJjbGllbnQudmVyc2lvbiI6eXRjZmcuZ2V0KCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiIpLCJtc2ciOm1lc3NhZ2UsInR5cGUiOiJVbmhhbmRsZWRXaW5kb3ciK2Vyci5uYW1lLCJmaWxlIjplcnIuZmlsZU5hbWUsImxpbmUiOmVyci5saW5lTnVtYmVyLCJzdGFjayI6KGVyci5zdGFja3x8IiIpLnN1YnN0cigwLDUwMCl9O3ZhciBwYXJ0cz1beXRjZmcuZ2V0KCJFTUVSR0VOQ1lfQkFTRV9VUkwiLCIvZXJyb3JfMjA0P3Q9anNlcnJvciZsZXZlbD1FUlJPUiIpXTt2YXIga2V5O2ZvcihrZXkgaW4gdmFsdWVzKXt2YXIgdmFsdWU9dmFsdWVzW2tleV07aWYodmFsdWUpcGFydHMucHVzaChrZXkrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSkpfWltZy5zcmM9cGFydHMuam9pbigiJiIpfTsKPC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iVXI2aGVnWUh1TERRTEF6QTZ2cVFTZyI+dmFyIHl0ZXJyID0geXRlcnIgfHwgdHJ1ZTs8L3NjcmlwdD48c2NyaXB0IGRhdGEtaWQ9Il9nZCIgbm9uY2U9IlVyNmhlZ1lIdUxEUUxBekE2dnFRU2ciPndpbmRvdy5XSVpfZ2xvYmFsX2RhdGEgPSB7IkFmWThIZiI6ZmFsc2UsIkZMMWFuIjpmYWxzZSwiSGlQc2JiIjowLCJNVUU2TmUiOiJ5b3V0dWJlX3dlYiIsIk11SldqZCI6ZmFsc2UsIlVVRmFXYyI6IiUuQC5udWxsLDEwMDAsMl0iLCJjZmIyaCI6InlvdXR1YmUud2ViLWZyb250LWVuZC1jcml0aWNhbF8yMDI2MDcyMi4wMV9wMCIsImZQRHh3ZCI6W10sImhzRkxUIjoiJS5ALm51bGwsMTAsM10iLCJpQ3poRmMiOmZhbHNlLCJuUXlBRSI6e30sIm94TjNuYiI6eyIxIjpmYWxzZSwiMCI6ZmFsc2UsIjYxMDQwMTMwMSI6ZmFsc2UsIjg5OTU4ODQzNyI6ZmFsc2UsIjc3MjY1Nzc2OCI6dHJ1ZSwiNTEzNjU5NTIzIjpmYWxzZSwiNTY4MzMzOTQ1Ijp0cnVlLCIxMzMxNzYxNDAzIjp0cnVlLCI2NTExNzU4MjgiOmZhbHNlLCI3MjI3NjQ1NDIiOmZhbHNlLCI3NDg0MDIxNDUiOmZhbHNlLCI3NDg0MDIxNDYiOmZhbHNlLCI3NDg0MDIxNDciOnRydWUsIjE2MDI2MTMxODUiOmZhbHNlLCI4NjEzNzc3MjMiOmZhbHNlLCI4NjEzNzc3MjQiOmZhbHNlLCI4NjkzMzY5MDMiOmZhbHNlLCI4ODI2NzQ1MDciOmZhbHNlLCI4NjkzMzY5MDQiOmZhbHNlLCI4NjkzMzY5MDUiOmZhbHNlLCIyODM5NTMxNTUiOmZhbHNlLCI5MTk0NDQ4MjQiOmZhbHNlLCI5MzE0NjgwNDciOmZhbHNlLCI5Mjg4NzUzOTgiOmZhbHNlLCI2ODM3NDkyMDEiOmZhbHNlfSwidTRnN3IiOiIlLkAubnVsbCwxLDNdIiwieG5JOVAiOmZhbHNlLCJ4d0FmRSI6dHJ1ZSwieUZueHJmIjoyNDg2fTs8L3NjcmlwdD48dGl0bGU+WW91VHViZTwvdGl0bGU+PGxpbmsgcmVsPSJjYW5vbmljYWwiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3Y9NmplUGJxWEpoZTgiPjwvaGVhZD48Ym9keSBjbGFzcz0iZGF0ZS0yMDI2MDcyNyBlbl9VUyBsdHIgIHNpdGUtY2VudGVyLWFsaWduZWQgc2l0ZS1hcy1naWFudC1jYXJkIGdlY2tvIGdlY2tvLTEzNCIgZGlyPSJsdHIiPjxkaXYgaWQ9InBsYXllciI+PC9kaXY+PHNjcmlwdCBub25jZT0iVXI2aGVnWUh1TERRTEF6QTZ2cVFTZyI+dmFyIHNldE1lc3NhZ2U9ZnVuY3Rpb24obXNnKXtpZih3aW5kb3cueXQmJnl0LnNldE1zZyl5dC5zZXRNc2cobXNnKTtlbHNle3dpbmRvdy55dGNmZz13aW5kb3cueXRjZmd8fHt9O3l0Y2ZnLm1zZ3M9bXNnfX07CnNldE1lc3NhZ2UoeyJBQ0NPVU5UX0xBQkVMIjoiQWNjb3VudCIsIkFDVF9PTl9USElTX0NPTU1FTlQiOiJBY3Qgb24gdGhpcyBjb21tZW50IiwiQUREX1RPX0RST1BET1dOX0xBQkVMIjoiQWRkIHRvIHBsYXlsaXN0IiwiQURfQkFER0VfSElOVCI6IkFkdmVydGlzZW1lbnQiLCJBRF9CQURHRV9URVhUIjoiQUQiLCJBTExfQ0hBTk5FTFNfTEFCRUwiOiJBbGwgY2hhbm5lbHMiLCJBTUJJRU5UX01PREUiOiJBbWJpZW50IG1vZGUiLCJBTUJJRU5UX01PREVfT0ZGIjoiQW1iaWVudCBtb2RlIG9mZiIsIkFNQklFTlRfTU9ERV9PTiI6IkFtYmllbnQgbW9kZSBvbiIsIkFORFJPSURfREVQUkVDQVRJT05fTUVTU0FHRV9CT0RZIjoiUGxlYXNlIHVwZGF0ZSB5b3VyIGRldmljZSB0byBBbmRyb2lkIDQuMCBiZWZvcmUgT2N0IDIyLCAyMDIwIHRvIGtlZXAgdXNpbmcgWW91VHViZSB3aXRob3V0IGludGVycnVwdGlvbnMuIiwiQU5EUk9JRF9ERVBSRUNBVElPTl9NRVNTQUdFX0hFQURFUiI6IllvdVR1YmUgd2lsbCBubyBsb25nZXIgYmUgc3VwcG9ydGVkIG9uIHlvdXIgZGV2aWNlIGFmdGVyIDIwMjAtMTAtMjIiLCJBUFBfVVBTRUxMX1NVQlRJVExFIjoiVXBsb2FkLCBzYXZlLCBhbmQgY29tbWVudCBvbiB2aWRlb3Mgd2l0aCB0aGUgWW91VHViZSBhcHAiLCJBUFBfVVBTRUxMX1RJVExFIjoiU3dpdGNoIHRvIHRoZSBhcHAgZm9yIGEgYmV0dGVyIHZpZXdpbmcgZXhwZXJpZW5jZSIsIkFVRElPX1RSQUNLIjoiQXVkaW8gVHJhY2siLCJBVVRPTkFWX1RPR0dMRSI6IkF1dG9wbGF5IiwiQVVUT1BMQVlfSU5fVEVOX1NFQ09ORFMiOiJOZXh0IHZpZGVvIHdpbGwgYmUgcGxheWVkIGluIHRlbiBzZWNvbmRzIiwiQVVUT1BMQVlfUEFVU0VEIjoiQXV0b3BsYXkgaXMgcGF1c2VkIiwiQVVUT1BMQVlfUExBWV9OT1ciOiJQbGF5IG5vdyIsIkFVVE9QTEFZX1VQX05FWFRfSU4iOiJVcCBuZXh0IGluIHNlY29uZHNfcGxhY2Vob2xkZXIiLCJBVVRPX1RSQU5TTEFURSI6IkF1dG8tdHJhbnNsYXRlIiwiQVVUT19aT09NIjoiQXV0byB6b29tIiwiQkFDSyI6IkJhY2siLCJCUkFOREVEX1NJR05fSU5fRElBTE9HX0RFU0NSSVBUSU9OIjoiQWNjZXNzIGFsbCBmZWF0dXJlcyBhbmQgZ2V0IGEgc2VhbWxlc3MgZXhwZXJpZW5jZSIsIkNBTkNFTCI6IkNhbmNlbCIsIkNIQU5ORUxfU1dJVENIRVJfTEFCRUwiOiJTd2l0Y2ggYWNjb3VudCIsIkNIQVJBQ1RFUl9MSU1JVCI6IlVzZSBmZXdlciB0aGFuICRudW1iZXIgY2hhcmFjdGVycyIsIkNMT1NFIjoiQ2xvc2UiLCJDTE9TRURfQ0FQVElPTlNfRElTQUJMRUQiOiJObyBjYXB0aW9ucyBhcmUgYXZhaWxhYmxlIGZvciB0aGlzIHZpZGVvIiwiQ0xPU0VEX0NBUFRJT05TX09GRiI6IlN1YnRpdGxlcy9DQyB0dXJuZWQgb2ZmIiwiQ0xPU0VEX0NBUFRJT05TX09OIjoiU3VidGl0bGVzL0NDIHR1cm5lZCBvbiIsIkNMT1NFRF9DQVBUSU9OU19PTl9MQU5HVUFHRSI6IlN1YnRpdGxlcy9DQyB0dXJuZWQgb24gKGxhbmd1YWdlX3BsYWNlaG9sZGVyKSIsIkNMT1NFX1NFQVJDSF9MQUJFTCI6IkNsb3NlIHNlYXJjaCIsIkNMT1NFX1NFVFRJTkdTX0xBQkVMIjoiQ2xvc2UgU2V0dGluZ3MiLCJDT01NRU5UQk9YX1BPU1QiOiJQb3N0IiwiQ09NTUVOVF9NT0RBTF9DT05URU5UIjoiUGxlYXNlIHNpZ24gaW4gdG8gYWN0IG9uIHRoaXMgY29tbWVudC4iLCJDT05GSVJNX09LIjoiT0siLCJDT05ORUNUX1RPX1RIRV9JTlRFUk5FVCI6IkNvbm5lY3QgdG8gdGhlIGludGVybmV0IiwiQ09QSUVEX1RPX0NMSVBCT0FSRCI6IkNvcGllZCB0byBjbGlwYm9hcmQiLCJDT1BZIjoiQ29weSIsIkNPUFlfREVCVUdfSU5GTyI6IkNvcHkgRGVidWcgSW5mbyIsIkNPUFlfRU1CRURfQ09ERSI6IkNvcHkgZW1iZWQgY29kZSIsIkNPUFlfTElOS19MQUJFTCI6IkNvcHkgbGluayIsIkNPUFlfVklERU9fVVJMIjoiQ29weSB2aWRlbyBVUkwiLCJDT1BZX1ZJREVPX1VSTF9BVF9DVVJSRU5UX1RJTUUiOiJDb3B5IHZpZGVvIFVSTCBhdCBjdXJyZW50IHRpbWUiLCJDUkVBVEVfQ0hBTk5FTF9USVRMRSI6IkNyZWF0ZSBjaGFubmVsIiwiREVMRVRFX0ZST01fRE9XTkxPQURTIjoiRGVsZXRlIGZyb20gZG93bmxvYWRzIiwiRElBTE9HIjoiRGlhbG9nIiwiRE1BX0NPTlNFTlRfQ09ORklSTUFUSU9OIjoiWW91ciBjaG9pY2Ugd2lsbCB0YWtlIGVmZmVjdCBvbiBNYXJjaCA2LCAyMDI0LiBZb3UgY2FuIGNoYW5nZSB5b3VyIGNob2ljZXMgYW55dGltZSBpbiB5b3VyIEdvb2dsZSBBY2NvdW50LiIsIkRNQV9DT05TRU5UX0NPTkZJUk1BVElPTjIiOiJZb3VyIGNob2ljZXMgaGF2ZSBiZWVuIHNhdmVkLiBZb3UgY2FuIGNoYW5nZSB5b3VyIGNob2ljZXMgYW55dGltZSBpbiB5b3VyIEdvb2dsZSBBY2NvdW50LiIsIkRNQV9DT05TRU5UX0dFTkVSQUxfRVJST1IiOiJTb21ldGhpbmcgd2VudCB3cm9uZyB3aGlsZSBsb2FkaW5nIiwiRE1BX0NPTlNFTlRfUkVDT1JEX0VSUk9SIjoiU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHlvdXIgY2hvaWNlcyB3ZXJlIG5vdCBzYXZlZCIsIkRPTkUiOiJEb25lIiwiRE9XTkxPQUQiOiJEb3dubG9hZCIsIkZBSUxFRF9DT1BZX0VSUk9SX01FU1NBR0UiOiJDb3B5IGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhlIGRldmljZSwgZmFpbGVkIHRvIGNvcHkuIiwiRkxBR19DT05GSVJNIjoiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGZsYWcgdGhpcyB2aWRlbz8iLCJGTEFHX0NPTlRFTlQiOiJTaWduIGluIHRvIGZsYWcgaXQuIiwiRkxBR19MQUJFTCI6IkZsYWcgYXMgaW5hcHByb3ByaWF0ZSIsIkZMQUdfVElUTEUiOiJJbmFwcHJvcHJpYXRlIHZpZGVvPyIsIkZVTExTQ1JFRU5fR0VORVJJQ19FUlJPUiI6IkZ1bGwgc2NyZWVuIGlzIHVuYXZhaWxhYmxlLiIsIkdPT0dMRV9DT01QQU5ZIjoiWW91VHViZSwgYSBHb29nbGUgY29tcGFueSIsIkhJREVfQUxFUlQiOiJIaWRlIHRoaXMgYWxlcnQiLCJISURFX1BMQVlFUl9DT05UUk9MUyI6IkhpZGUgcGxheWVyIGNvbnRyb2xzIiwiSElERV9QTEFZTElTVF9WSURFT1MiOiJIaWRlIHBsYXlsaXN0IHZpZGVvcyIsIkhJREVfU0VBUkNIX0ZJTFRFUlNfTEFCRUwiOiJIaWRlIHNlYXJjaCBmaWx0ZXJzIiwiSE9NRSI6IkhvbWUiLCJJTlZBTElEX1JFU1BPTlNFX1JFQ0VJVkVEIjoiSW52YWxpZCByZXNwb25zZSByZWNlaXZlZC4iLCJMRUFWRV9BX0NPTU1FTlRfVElUTEUiOiJMZWF2ZSBhIGNvbW1lbnQ/IiwiTElCUkFSWSI6IkxpYnJhcnkiLCJMSUtFX0NPVU5UX1RFWFQiOnsiY2FzZTAiOiJObyBsaWtlcyIsImNhc2UxIjoiMSBsaWtlIiwib3RoZXIiOiIjIGxpa2VzIn0sIkxJS0VfQ09VTlRfVEVYVF9MQUJFTCI6IntcImNhc2UwXCI6IFwiTm8gcGVvcGxlIGhhdmUgbGlrZWQgdGhpcyB2aWRlby5cIiwgXCJjYXNlMVwiOiBcIjEgcGVyc29uIGhhcyBsaWtlZCB0aGlzIHZpZGVvLlwiLCBcIm90aGVyXCI6IFwiIyBwZW9wbGUgaGF2ZSBsaWtlZCB0aGlzIHZpZGVvLlwifSIsIkxJU1RFTklORyI6Ikxpc3RlbmluZy4uLiIsIkxPQURJTkciOiJMb2FkaW5nLi4uIiwiTE9OR19QUkVTU19NSUNfVE9fU1BFQUsiOiJMb25nIHByZXNzIG1pY19pY29uX3BsYWNlaG9sZGVyIHRvIHNwZWFrIiwiTE9PUCI6Ikxvb3AiLCJNRU5VX0RFU0tUT1AiOiJEZXNrdG9wIiwiTUVOVV9FWElUIjoiRXhpdCIsIk1FTlVfRkVFREJBQ0siOiJGZWVkYmFjayIsIk1FTlVfSEVMUCI6IkhlbHAiLCJNRU5VX0lNUFJFU1NVTSI6IkltcHJpbnQiLCJNRU5VX1BMQVlFUl9TRVRUSU5HUyI6IlBsYXliYWNrIFNldHRpbmdzIiwiTUVOVV9SRVBPUlRfQV9QUk9CTEVNIjoiUmVwb3J0IGEgcHJvYmxlbSB3aXRoIFlvdVR1YmUiLCJNRU5VX1NFTkRfRkVFREJBQ0siOiJTZW5kIGZlZWRiYWNrIiwiTUVOVV9TRVRUSU5HUyI6IlNldHRpbmdzIiwiTUVOVV9TSUdOX0lOIjoiU2lnbiBJbiIsIk1FTlVfVEVSTVMiOiJQcml2YWN5IFx1MDAyNiBUZXJtcyIsIk1FTlVfVElUTEUiOiJNZW51IiwiTUVOVV9ZT1VSX0RBVEEiOiJZb3VyIGRhdGEgaW4gWW91VHViZSIsIk1FVEFEQVRBX1NVQlRJVExFX0NIQU5ORUxfTkFNRV9MQUJFTCI6IlVwbG9hZGVkIGJ5ICR7Y2hhbm5lbF9uYW1lX3BsYWNlaG9sZGVyfS4iLCJNTUdfQ09ORklSTUFUSU9OIjoiWW91ciBjaG9pY2UgaGFzIGJlZW4gc2F2ZWQuIFlvdSBjYW4gY2hhbmdlIHRoaXMgc2V0dGluZyBhbnl0aW1lIGluIE15IEFkIENlbnRlci4iLCJNTUdfQ09OU0VOVF9SRUNPUkRfRVJST1IiOiJTb21ldGhpbmcgd2VudCB3cm9uZyBhbmQgeW91ciBjaG9pY2Ugd2FzIG5vdCBzYXZlZCIsIk1PUkUiOiJNb3JlIiwiTU9SRV9JTkZPIjoiTW9yZSBpbmZvIiwiTU9SRV9MT1dFUkNBU0UiOiJtb3JlIiwiTU9SRV9PUFRJT05TIjoiTW9yZSBvcHRpb25zIiwiTU9SRV9WSURFT1MiOiJNb3JlIHZpZGVvcyIsIk1PUkVfVklERU9TX0NMT1NFX0JVVFRPTl9BUklBX0xBQkVMIjoiSGlkZSBtb3JlIHZpZGVvcyIsIk1PUkVfVklERU9TX0ZST01fQ0hBTk5FTCI6Ik1vcmUgdmlkZW9zIGZyb20gJGNoYW5uZWxfbmFtZV9wbGFjZWhvbGRlciIsIk1PUkVfVklERU9TX05FWFRfQlVUVE9OX0FSSUFfTEFCRUwiOiJOZXh0IHZpZGVvcyIsIk1PUkVfVklERU9TX1BSRVZJT1VTX0JVVFRPTl9BUklBX0xBQkVMIjoiUHJldmlvdXMgdmlkZW9zIiwiTVVURV9WT0xVTUUiOiJNdXRlIiwiTkVXX1BMQVlMSVNUIjoiTmV3IHBsYXlsaXN0IiwiTkVYVF9WSURFTyI6Ik5leHQgdmlkZW8iLCJOT1RJRklDQVRJT05fRVJST1JfTUVTU0FHRSI6IlNvbWV0aGluZyB3ZW50IHdyb25nLCBwbGVhc2UgdHJ5IGFnYWluLiIsIk5PVF9GT1VORF9DVEEiOiJCcm93c2UgVmlkZW9zIiwiTk9UX0ZPVU5EX01FU1NBR0UiOiJQbGVhc2Ugc2VhcmNoIGZvciBzb21ldGhpbmcgZWxzZSwgb3IgYnJvd3NlIHlvdXIgSG9tZSBmZWVkLiIsIk5PVF9GT1VORF9USVRMRSI6IlRoaXMgcGFnZSBpc25cdTAwMjd0IGF2YWlsYWJsZSIsIk5PX0RPV05MT0FEUyI6Ik5vIGRvd25sb2FkcyIsIk5PX01JQ19JTlBVVCI6IkRpZG5cdTAwMjd0IGhlYXIgdGhhdC4gVHJ5IHNwZWFraW5nIGFnYWluLiIsIk9GRkxJTkVfQ0hFQ0tfQ09OTkVDVElPTiI6IllvdVx1MDAyN3JlIG9mZmxpbmUuIENoZWNrIHlvdXIgY29ubmVjdGlvbi4iLCJPT1BTX01FU1NBR0UiOiJPb3BzISBTb21ldGhpbmcgd2VudCB3cm9uZy4iLCJPUEVOX0FQUCI6Ik9wZW4gQXBwIiwiT1BFTl9ZT1VUVUJFIjoiT3BlbiB0aGUgYXBwIiwiT1BFTl9ZT1VUVUJFX0FQUCI6Ik9wZW4gWW91VHViZSBhcHAiLCJQQVVTRSI6IlBhdXNlIiwiUExBWSI6IlBsYXkiLCJQTEFZQkFDS19TUEVFRF9YIjoiJHtzcGVlZF9yYXRlX3BsYWNlaG9sZGVyfXgiLCJQTEFZRVJfQ0FQVElPTiI6IkNhcHRpb25zIiwiUExBWUVSX0NBUFRJT05fT0ZGIjoiT2ZmIiwiUExBWUVSX0NBUFRJT05fT04iOiJPbiIsIlBMQVlFUl9ET1VCTEVfU1BFRURfVVNFUl9FRFUiOiIyeCIsIlBMQVlFUl9ET1VCTEVfVEFQX1RPX1NFRUsiOiJEb3VibGUgdGFwIGxlZnQgb3IgcmlnaHQgdG8gc2tpcCAxMCBzZWNvbmRzIiwiUExBWUVSX0RPVUJMRV9UQVBfVE9fU0hPV19PUl9ISURFX1BMQVlFUl9DT05UUk9MUyI6IkRvdWJsZSB0YXAgdG8gc2hvdyBvciBoaWRlIHBsYXllciBjb250cm9scyIsIlBMQVlFUl9FWElUX0ZVTExTQ1JFRU4iOiJFeGl0IGZ1bGwgc2NyZWVuIiwiUExBWUVSX0ZBU1RGT1JXQVJEX1NFQ09ORFMiOiJGYXN0IGZvcndhcmQgJHNlY29uZHNfcGxhY2Vob2xkZXIgc2Vjb25kcyIsIlBMQVlFUl9GVUxMU0NSRUVOIjoiRW50ZXIgZnVsbCBzY3JlZW4iLCJQTEFZRVJfTElWRV9MQUJFTCI6IkxpdmUiLCJQTEFZRVJfTElWRV9OT1ciOiJMaXZlIG5vdyIsIlBMQVlFUl9NSU5JTUlaRSI6Ik1pbmltaXplIiwiUExBWUVSX05FWFQiOiJOZXh0IHZpZGVvIiwiUExBWUVSX1BBVVNFIjoiUGF1c2UgdmlkZW8iLCJQTEFZRVJfUExBWSI6IlBsYXkgdmlkZW8iLCJQTEFZRVJfUFJFTUlFUkVfTEFCRUwiOiJQcmVtaWVyZSIsIlBMQVlFUl9QUkVWSU9VUyI6IlByZXZpb3VzIHZpZGVvIiwiUExBWUVSX1BST0dSRVNTX0JBUiI6IlNlZWsgc2xpZGVyIiwiUExBWUVSX1FVQUxJVFkiOiJRdWFsaXR5IiwiUExBWUVSX1FVQUxJVFlfQVVUTyI6IkF1dG8iLCJQTEFZRVJfUkVQTEFZIjoiUmVwbGF5IFZpZGVvIiwiUExBWUVSX1JFV0lORF9TRUNPTkRTIjoiUmV3aW5kICRzZWNvbmRzX3BsYWNlaG9sZGVyIHNlY29uZHMiLCJQTEFZRVJfU0VDT05EUyI6IiRzZWNvbmRzX3BsYWNlaG9sZGVyIHNlY29uZHMiLCJQTEFZRVJfU1BFRUQiOiJTcGVlZCIsIlBMQVlFUl9TUEVFRFVQX1VTRVJfRURVIjoiUGxheWluZyBhdCBzcGVlZF9yYXRlX3BsYWNlaG9sZGVyeCBzcGVlZCIsIlBMQVlFUl9TUEVFRF9ERUNSRUFTRSI6IkRlY3JlYXNlIHBsYXliYWNrIHNwZWVkIiwiUExBWUVSX1NQRUVEX0lOQ1JFQVNFIjoiSW5jcmVhc2UgcGxheWJhY2sgc3BlZWQiLCJQTEFZRVJfU1BFRURfTk9STUFMIjoiTm9ybWFsIiwiUExBWUVSX1NQRUVEX1JFQ0VOVCI6IlJlY2VudCIsIlBMQVlFUl9USU1FX0RVUkFUSU9OIjoiVGltZSBkdXJhdGlvbiIsIlBMQVlFUl9USU1FX0VMQVBTRUQiOiJUaW1lIGVsYXBzZWQiLCJQTEFZRVJfVElNRV9GT1JNQVRURUQiOnsiY2FzZTAiOiIke21pbnV0ZXN9IG1pbnV0ZXMgYW5kICR7c2Vjb25kc30gc2Vjb25kcyIsImNhc2UxIjoiMSBob3VyLCAke21pbnV0ZXN9IG1pbnV0ZXMgYW5kICR7c2Vjb25kc30gc2Vjb25kcyIsIm90aGVyIjoiIyBob3VycywgJHttaW51dGVzfSBtaW51dGVzIGFuZCAke3NlY29uZHN9IHNlY29uZHMifSwiUExBWUxJU1RfQ1VSUkVOVF9WSURFT19JTkRFWCI6IiR7Y3VycmVudF92aWRlb19pbmRleH0gb2YgJHtsYXN0X2luZGV4fS4iLCJQTEFZTElTVF9ERVNDUklQVElPTl9JTlZBTElEX0NIQVJBQ1RFUlMiOiJQbGF5bGlzdCBkZXNjcmlwdGlvbiBjYW5cdTAwMjd0IHVzZSBcdTAwM2Mgb3IgXHUwMDNlIiwiUExBWUxJU1RfTUlYX0RFVEFJTEVEX0xPTkdfQllMSU5FIjoiTWl4ZXMgYXJlIHBsYXlsaXN0cyBZb3VUdWJlIG1ha2VzIGZvciB5b3UiLCJQTEFZTElTVF9OQU1FX0lOVkFMSURfQ0hBUkFDVEVSUyI6IlBsYXlsaXN0IHRpdGxlIGNhblx1MDAyN3QgdXNlIFx1MDAzYyBvciBcdTAwM2UiLCJQTEFZTElTVF9OQU1FX01JU1NJTkciOiJQbGF5bGlzdCB0aXRsZSByZXF1aXJlZC4iLCJQTEFZTElTVF9OQU1FX1RPT19MT05HIjoiUGxheWxpc3QgdGl0bGUgaXMgdG9vIGxvbmcuIiwiUExBWUxJU1RfUEFORUxfRU5EX09GX1BMQVlMSVNUIjoiRW5kIG9mIFBsYXlsaXN0IiwiUExBWUxJU1RfUEFORUxfTkVYVCI6Ik5leHQ6IiwiUExBWUxJU1RfUEFORUxfVU5MSVNURURfUExBWUxJU1QiOiJVbmxpc3RlZCBQbGF5bGlzdCIsIlBMQVlMSVNUX1RFWFRfSU5QVVRfQ0hBUl9DT1VOVCI6ImN1cnJlbnRfY291bnRfcGxhY2Vob2xkZXIgb2YgbWF4X2NvdW50X3BsYWNlaG9sZGVyIGNoYXJhY3RlcnMgdXNlZCIsIlBMQVlfQUxMIjoiUGxheSBhbGwiLCJQTEVBU0VfRklYX0VSUk9SUyI6IlBsZWFzZSBmaXggZXJyb3JzIGFuZCB0cnkgYWdhaW4uIiwiUFJFTUlVTV9CQURHRV9MQUJFTCI6IlByZW1pdW0iLCJQUkVWSU9VU19WSURFTyI6IlByZXZpb3VzIHZpZGVvIiwiUFJJVkFDWV9QT0xJQ1kiOiJQcml2YWN5IFBvbGljeSIsIlJFTE9BRCI6IlJlbG9hZCIsIlJFUExJRVNfU0hPV19NT1JFIjoiU2hvdyBtb3JlIHJlcGxpZXMiLCJSRVFVSVJFRF9MQUJFTCI6IlJlcXVpcmVkIiwiU0FWRV9QTEFZTElTVCI6IlNhdmUiLCJTQ1JVQl9TTElERV9VU0VSX0VEVSI6IlNsaWRlIGxlZnQgb3IgcmlnaHQgdG8gc2VlayIsIlNFQVJDSCI6IlNlYXJjaCIsIlNFQVJDSF9BUFBFTkRfTEFCRUwiOiJBcHBlbmQgc3VnZ2VzdGlvbiB0byBzZWFyY2ggZmllbGQiLCJTRUFSQ0hfQ0hBTk5FTCI6IlNlYXJjaCBjaGFubmVsIiwiU0VBUkNIX0NMRUFSX0xBQkVMIjoiQ2xlYXIgY3VycmVudCBzZWFyY2ggdGV4dCIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9BTEJVTSI6IkFsYnVtIGJ5ICR7YXJ0aXN0fSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9BTEJVTV9OT19BUlRJU1QiOiJBbGJ1bSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9NT1ZJRSI6Ik1vdmllIiwiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX1NPTkciOiJTb25nIGJ5ICR7YXJ0aXN0fSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9TT05HX05PX0FSVElTVCI6IlNvbmciLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fVFZfU0hPVyI6IlRWIHNob3ciLCJTRUFSQ0hfRklMVEVSU19MQUJFTCI6IlNlYXJjaCBmaWx0ZXJzIiwiU0VBUkNIX0xBQkVMIjoiU2VhcmNoIFlvdVR1YmUiLCJTRUFSQ0hfUFBQX1BMQUNFSE9MREVSX1RFWFQiOiJTZWFyY2ggcGFpZCBwcm9kdWN0IHBsYWNlbWVudCB2aWRlb3MiLCJTRUVLX1NMSURFUiI6IlNlZWsgc2xpZGVyIiwiU0VUVElOR1NfTEFCRUwiOiJTZXR0aW5ncyIsIlNFVFRJTkdTX01JQ19QRVJNSVNTSU9OIjoiUGxlYXNlIGFsbG93IG1pY3JvcGhvbmUgcGVybWlzc2lvbiBpbiBkZXZpY2Ugc2V0dGluZ3MuIiwiU0VUX1BMQVlCQUNLX1NQRUVEX1giOiIke3NwZWVkX3JhdGVfcGxhY2Vob2xkZXJ9eCBzcGVlZCIsIlNIT1JUU19UQUJfTEFCRUwiOiJTaG9ydHMiLCJTSE9XX0xFU1MiOiJTaG93IGxlc3MiLCJTSE9XX01PUkUiOiJTaG93IG1vcmUiLCJTSE9XX1BMQVlFUl9DT05UUk9MUyI6IlNob3cgcGxheWVyIGNvbnRyb2xzIiwiU0hPV19QTEFZTElTVF9WSURFT1MiOiJTaG93IHBsYXlsaXN0IHZpZGVvcyIsIlNIT1dfU0VBUkNIX0ZJTFRFUlNfTEFCRUwiOiJTaG93IHNlYXJjaCBmaWx0ZXJzIiwiU0lHTl9JTl9MQUJFTCI6IlNpZ24gaW4iLCJTSUdOX0lOX09OX1dFQiI6IlNpZ24gaW4gb24gd2ViIiwiU1RBQkxFX1ZPTFVNRSI6IlN0YWJsZSB2b2x1bWUiLCJTVEFCTEVfVk9MVU1FX09GRiI6IlN0YWJsZSB2b2x1bWUgb2ZmIiwiU1RBQkxFX1ZPTFVNRV9PTiI6IlN0YWJsZSB2b2x1bWUgb24iLCJTVEFUU19GT1JfTkVSRFMiOiJTdGF0cyBGb3IgTmVyZHMiLCJTVUdHRVNUSU9OX0RJU01JU1NFRF9MQUJFTCI6IlN1Z2dlc3Rpb24gUmVtb3ZlZCIsIlNVR0dFU1RJT05fRElTTUlTU19JTl9TRVRUSU5HU19MQUJFTCI6IlJlbW92ZSBpbiBzZXR0aW5ncyIsIlNVR0dFU1RJT05fRElTTUlTU19MQUJFTCI6IlJlbW92ZSIsIlNVR0dFU1RJT05fTkVXX1ZJREVPU19URVhUIjoiTmV3IHZpZGVvcyIsIlNVR0dFU1RJT05fVEhVTUJOQUlMX0FUVFJJQlVUSU9OX0RJQUxPR19CVVRUT05fTEFCRUwiOiJWaXNpdCBzb3VyY2UiLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9ESUFMT0dfREVTQ1JJUFRJT04iOiJWaXNpdCBpbWFnZSBzb3VyY2Ugd2Vic2l0ZT8iLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9ESUFMT0dfVElUTEUiOiJJbWFnZSBzb3VyY2UiLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9MQUJFTCI6IlZpZXcgaW1hZ2Ugc291cmNlIiwiU1VHR0VTVElPTl9USFVNQk5BSUxfTEFCRUwiOiJJbWFnZSBmb3Igc3VnZ2VzdGlvbiIsIlRFUk1TX09GX1NFUlZJQ0UiOiJUZXJtcyBvZiBTZXJ2aWNlIiwiVElNRVNUQU1QX01JTlVURVMiOiJ0aW1lc3RhbXAgbWludXRlcyByZXF1aXJlZCIsIlRJTUVTVEFNUF9TRUNPTkRTIjoidGltZXN0YW1wIHNlY29uZHMgcmVxdWlyZWQiLCJUT0dHTEVfT0ZGIjoiT2ZmIiwiVE9HR0xFX09OIjoiT24iLCJUUkVORElORyI6IlRyZW5kaW5nIiwiVFJPVUJMRVNIT09UX1BMQVlCQUNLX0lTU1VFIjoiVHJvdWJsZXNob290IHBsYXliYWNrIGlzc3VlIiwiVFJZX0FHQUlOX0xBVEVSIjoiU29tZXRoaW5nIHdlbnQgd3JvbmcuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXIuIiwiVFJZX0FHQUlOX01JQ19QRVJNSVNTSU9OIjoiUGxlYXNlIHRyeSBhZ2FpbiBhbmQgYWxsb3cgbWljcm9waG9uZSBwZXJtaXNzaW9uLiIsIlRVUk5fT0ZGX0FVVE9QTEFZX0NPTkZJUk1fQlVUVE9OX1RJVExFIjoiVHVybiBvZmYiLCJUVVJOX09GRl9BVVRPUExBWV9ESUFMT0dfREVTQ1JJUFRJT04iOiJXaGVuIGF1dG9wbGF5IGlzIG9mZiwgYSBzdWdnZXN0ZWQgdmlkZW8gd2lsbCBub3QgYXV0b21hdGljYWxseSBwbGF5IG5leHQiLCJUVVJOX09GRl9BVVRPUExBWV9ESUFMT0dfVElUTEUiOiJUdXJuIG9mZiBhdXRvcGxheT8iLCJVTk1VVEVfVk9MVU1FIjoiVW5tdXRlIiwiVklERU9TIjoie3ZpZGVvcyxwbHVyYWwsIFx1MDAzZDB7MCB2aWRlb3N9XHUwMDNkMXsxIHZpZGVvfW90aGVyeyMgdmlkZW9zfX0iLCJWSURFT19MSU5LX0xBQkVMIjoiVmlkZW8gbGluayIsIldBVENIRUQiOiJXYXRjaGVkIiwiX19sYW5nX18iOiJlbiJ9KTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJVcjZoZWdZSHVMRFFMQXpBNnZxUVNnIj52YXIgX0ZfY3NzUm93S2V5ID0gJ3l0ZW1iZWRzLmJhc2UuTnhuaXV1WkVUWncuTC5GNC5PJzsgdmFyIF9GX2NvbWJpbmVkU2lnbmF0dXJlID0gJ0FHS015d0hVNnFITml0bnM1WHFZRUstMnl5VUVhR09Wa1EnOzwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvcy9fL3l0ZW1iZWRzL18vanMvaz15dGVtYmVkcy5iYXNlLmVuX1VTLl84OFR3eXlIS0hzLjIwMjEuTy9hbT1BQUFBZ0EvZD0xL2V4Y209YmFzZSxyb290L2JyPTEvcnM9QUdLTXl3RXUyVFFVemRTRjBBY3NGQk1VckZxeXVyS2x1dy9tPXJvb3QsYmFzZSIgbmFtZT0iZW1iZWRfY2xpZW50IiBpZD0iYmFzZS1qcyIgbm9uY2U9IlVyNmhlZ1lIdUxEUUxBekE2dnFRU2ciPjwvc2NyaXB0PjxzY3JpcHQgc3JjPSIvcy9wbGF5ZXIvN2E3OTY5YzIvcGxheWVyX2VtYmVkX2VzNi52ZmxzZXQvZW5fVVMvYmFzZS5qcyIgbmFtZT0icGxheWVyL2Jhc2UiIG5vbmNlPSJVcjZoZWdZSHVMRFFMQXpBNnZxUVNnIj48L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJVcjZoZWdZSHVMRFFMQXpBNnZxUVNnIj53cml0ZUVtYmVkKCk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iVXI2aGVnWUh1TERRTEF6QTZ2cVFTZyI+KGZ1bmN0aW9uKCkge2lmICh3aW5kb3cueXRBdE4pIHt3aW5kb3cueXRBdE4oeydSJzogJ1x4N2JceDIycmVzcG9uc2VDb250ZXh0XHgyMjpceDdiXHgyMnNlcnZpY2VUcmFja2luZ1BhcmFtc1x4MjI6XHg1Ylx4N2JceDIyc2VydmljZVx4MjI6XHgyMkNTSVx4MjIsXHgyMnBhcmFtc1x4MjI6XHg1Ylx4N2JceDIya2V5XHgyMjpceDIyY1x4MjIsXHgyMnZhbHVlXHgyMjpceDIyV0VCX0VNQkVEREVEX1BMQVlFUlx4MjJceDdkLFx4N2JceDIya2V5XHgyMjpceDIyY3Zlclx4MjIsXHgyMnZhbHVlXHgyMjpceDIyMi4yMDI2MDcyNC4wMS4wMFx4MjJceDdkLFx4N2JceDIya2V5XHgyMjpceDIyeXRfbGlceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjBceDIyXHg3ZCxceDdiXHgyMmtleVx4MjI6XHgyMkdldEF0dGVzdGF0aW9uQ2hhbGxlbmdlX3JpZFx4MjIsXHgyMnZhbHVlXHgyMjpceDIyMHhkNmRjZDQ3NjNhODhlYjJjXHgyMlx4N2RceDVkXHg3ZCxceDdiXHgyMnNlcnZpY2VceDIyOlx4MjJHRkVFREJBQ0tceDIyLFx4MjJwYXJhbXNceDIyOlx4NWJceDdiXHgyMmtleVx4MjI6XHgyMmxvZ2dlZF9pblx4MjIsXHgyMnZhbHVlXHgyMjpceDIyMFx4MjJceDdkXHg1ZFx4N2QsXHg3Ylx4MjJzZXJ2aWNlXHgyMjpceDIyR1VJREVEX0hFTFBceDIyLFx4MjJwYXJhbXNceDIyOlx4NWJceDdiXHgyMmtleVx4MjI6XHgyMmxvZ2dlZF9pblx4MjIsXHgyMnZhbHVlXHgyMjpceDIyMFx4MjJceDdkXHg1ZFx4N2QsXHg3Ylx4MjJzZXJ2aWNlXHgyMjpceDIyRUNBVENIRVJceDIyLFx4MjJwYXJhbXNceDIyOlx4NWJceDdiXHgyMmtleVx4MjI6XHgyMmNsaWVudC52ZXJzaW9uXHgyMixceDIydmFsdWVceDIyOlx4MjIyLjIwMjYwNzI0XHgyMlx4N2QsXHg3Ylx4MjJrZXlceDIyOlx4MjJjbGllbnQubmFtZVx4MjIsXHgyMnZhbHVlXHgyMjpceDIyV0VCX0VNQkVEREVEX1BMQVlFUlx4MjJceDdkXHg1ZFx4N2RceDVkLFx4MjJyZXNwb25zZUlkXHgyMjpceDIySWhNSTB0VEJ3UHp5bFFNVlBNdFBDQjNGWkFSMVx4MjIsXHgyMndlYlJlc3BvbnNlQ29udGV4dEV4dGVuc2lvbkRhdGFceDIyOlx4N2JceDIyaGFzRGVjb3JhdGVkXHgyMjp0cnVlXHg3ZFx4N2QsXHgyMmNoYWxsZW5nZVx4MjI6XHgyMmFceDNkNlxcdTAwMjZhMlx4M2QxMFxcdTAwMjZjXHgzZDE3ODUxNTkyNjhcXHUwMDI2ZFx4M2Q1NlxcdTAwMjZ0XHgzZDIxNjAwXFx1MDAyNmMxYVx4M2QxXFx1MDAyNmM2YVx4M2QxXFx1MDAyNmM2Ylx4M2QxXFx1MDAyNmhoXHgzZGxUYnZ4ZElCQ1BUNjVZLUx3NTB2bklFOW5QNVIyWENQcGZIcnp1YkZ5VWNceDIyLFx4MjJiZ0NoYWxsZW5nZVx4MjI6XHg3Ylx4MjJpbnRlcnByZXRlclVybFx4MjI6XHg3Ylx4MjJwcml2YXRlRG9Ob3RBY2Nlc3NPckVsc2VUcnVzdGVkUmVzb3VyY2VVcmxXcmFwcGVkVmFsdWVceDIyOlx4MjJcL1wvd3d3Lmdvb2dsZS5jb21cL2pzXC90aFwvLWtLWllYYllMMXpLZGRWV2lScEtRQXMtRkZybVhpXzZVa2NtaEZsWUxvcy5qc1x4MjJceDdkLFx4MjJpbnRlcnByZXRlckhhc2hceDIyOlx4MjIta0taWVhiWUwxektkZFZXaVJwS1FBcy1GRnJtWGlfNlVrY21oRmxZTG9zXHgyMixceDIycHJvZ3JhbVx4MjI6XHgyMmxydkVLNUhiZHJGS1FBXC9tMmtrSFRlczJ6TXNVOWM4VzBjYmRVbGtibjB0VTN6UEtscm9jeDcxcDNkOEljbXRFYWN6anl1OHc0U2F3Vk1BUGlnQnJPZVZVUmlTQWluVDR6UGlvTCtkUklBWW5mVXg0dlVFbFIzV3FFa3JkaTJwVHcxSkFHZnFtSWxzUlNcL0FxbTlyS0tWZjJEaG9uWkp0TmFFK1A2Ym9jeDBjVm5IZXZjSlwvb1c4OFFKWW9SYW5mRlBYU0d6VUUrRm0yZllsTHJ5Ym1PS21EZDZrWVhBYmloc2l6dWRya2JPMmNzV0trd0dHczd4WlZPN2IyaWh6YkpWK1RyOW1QTEZPMjUzcmh6eGxmS1NJcklGVTNwdVhRcHh1XC9cLytSckV2ZjZyejd5TUMxY2tENWZsTVZVU1NKK0xBR3BQQWxRYmVxRVhDdm1QWEVhYm5XRUFXS3BjYzQ1K240Sk9EdDJlS0RmWEZ0MGZqK2o3VjcrWitKXC9zZ1M4N0lScWxmOUJxMEFDWVo5aFkrRTdVekdoR2R3R3NzVlwvNjBWM1FZVmhBKzlQeWtqQ3YzNVE2clV0N3ZtWkYrSFdnS3NaYjZHM3FjanB6b3diYjRwNXBDVTA2S25lXC9hQ1Z3alwvZDN2cG5ndlBBTlFKWXFLMWVkMlZ5VEVDeXhQN21wemdqbHVnVWo0VHp3RXdKMVwvNWpFSEcwVHVcL0M2RmwzcmdMS2FBVkwzaDZ2dDQ4VFdqYlNvc0NscjFqU1EyRmRZczZQUzdyMlhBTTdPR1JUWGNybFY2ODVaU2JGM0diK0c5WGEzTGhtRW11amZUUUNRT3pRa0hmSGk0eVlmMDdaNXlXNytlYXUyTjJvWWZGWSt2YXc1ankydHpKXC8yWWZ1TCtxZkJKbVBTdDlhN05lRzdqVXMrbVpJMnV4KzRJd0V0Y3JqM2l1a2dsb216VFpVaXRtdDhORzNhdCt0VnNkbWl5WGszY3dQQmZVZkhSeTAyYkxQNldhQlg1a0M0c1llSUFtcHJ0RHhIZjlvMnpDeElWOGZ5SUVLeUhFZ1hZbXpOblBIU0tYXC9DdjBOa3hoZ0NqK05FWTV1YUFKK1V4TDdqblBqbjRna3lTSFFvdmM5S2N1WmVKNEFsKzQ5bkFGMnFtczN0bENZVCtMVUlKdE1Id280ODk1Sk9Bd1RuaVwvNEQ2djVpckxlcm04dXZZNmtCVTZuTU1XYm1VZ1JKenZtVDFcL0VGekd5TUQ5ME5TdDV2QnFhVG1HNTQwV3BkOURJbjJERDBWbDBkREdpSGUzOW9oRTJBOEpEMTM3NCtnMTNNRTNWaHFhZHFBdzVkWW1rWUtsWlhLNDVma1g3QXhwYVErTW9Xa1F3ZkM2clZPdVp4bEdLWHBpeUwrRXZIWjhxYlwvZzIxeE01MDZkWUFpSWJQV3FWMDBMaDdtOG1BcGp4TFFGZ29VM1VxSDBEdzZUQVA2OTYzTkszdjM2Z3BsZmx2UmdYQXJKQzF1VFdwSTdDZ0dCN2hLdDNHTTNkWnZhQ3BsM3pKS3VNUW9mbnU4dklmeWl4YUtNbXV0cXNcL0l0Sko1OW1EeElTUG1hUjFtbGN4V2NSbkpzTFRDYU5MSzh1U1V2bWtmU0FKQmFLSXNoS2IxNkxxaDF4VW1lRmZ2bk1CSWZab0dzS0JRcFdUZTZLTEh1M0FPOU9TVUk2U1o2Qnp6a01JSk44OUhDcHE1Q0ZIYlJNOTg3NFpVMHROdVpCck81NUVhWHVyRDRaM0F3XC9kNXJPQ3FhcW5zN0JQbm1SenNhNkxVMFBTcnJ0K3Jja281YWhLODQ5c3c3M3EzVjROUWNnZEZkVGtyS2kwUWlwWHBoXC9WSWhcL2VjRmdkQ3YyOFMrNHJSSytRWm9qZSs3OU1wbnZBSHhcL2xGM2JrNzFQc1dzSDdUdkdoaVdpeXB0S1hMeU0xQm53VGxUV2JLTVV0UmpneEtMNnhWelhEQlhPSERrVnlVSDRGUUpXM1ZtSjVHeThqRG93QnBBamxHeURyWUJJZjZXRmpBd1k4QXYrMzQ2K2lMd2ZNcHpMK2Y1UVdpbEI1VE54RnI2eFpKS21rUkJjXC9EZlR1SzVqUDVcL2I1MG02NFdcL1YzWW1ZdUVYc3c0UWgyZFNrNHpmUlZHMllsdlwva3RkdkVaN1JOaVFDVUVGTzJRS1ZxNVM2a1I2K0dZRXVPUjR1d1wvOG9UMHU5dE9hSmtEaHViK05HQzJyXC9FWVhHMXNxazBiTEZBMXQ1aFcxeG5wQnBXWk4rZFpFc1BnXC9UczlhQ1N4c1UwZVo3U1l0RVwvTEtiQ29hZit0SVVuRW56M250eEZBSFFlR1Y4UTZXR2dLUUp1MjRVRGFjaFFYOWhVbkVCK2NsVFwvV1hUSnJlTSsrTVBKaXZZVmRuUlpJM0hmMk9BWHRueXhlXC8rWnlHUFlFZDc5ZDdqQWJjXC9RXC9hZnFWbmo0TlZDalpUangyeDY1NXZzYm84QzNRdXFCQmwyMFJDY2FFSStEcnd6eElxZHBEWjJOYVRDQnF2TWVBc0IzK3hYK25SaDFUXC9MZDNMb2RlKytDXC84RzNxdVZ5T25kQjFnSG5iSFY0VjBvMGpoSkhsd2FPNlZLMFdVWTRlT056cEk3aVRkNGpVYVc5UjRJem1TUjhjaXJSekhLeHJQWFppcldCZUw4MVNDZ1RDUlRnRytxY2VmZEV3aW9BY3RNQlE3SXJhcDJVWDA5TEdQOWwwaGFqZW5MVDRZM21EcVUrbDg0THJiWG0wMEhsdXBZNGs4bTZYWmtOenJSRExBZCt5NDBFazI3cnh1QnVOeStGekUrRXZtdmRZRE1EdW1iVzhrbHl2YnVpMlRlUnZKMGNLR3huT2dPMDUxb0ZMNXllVmVXd1FSQmNcL1p1SENHNEJnWEswUFpETmJHYzJtRnlPUVB1YW11NVREVTVGS3RMRk5UZGp2Uys1R1NTYzljYVdsWGhtSk1oZTU4NVZOZ1BkOFQxbFNMWFl4NytRdXFGZndmNWl5SzhWNXk1Y2s0WHdYd3c4SFE0MmZJQzVHTWlxMHRUUlAzWkJ5V0FFbHNnYWZtWkdmdVBDSW8yY0ZaSnFMK0VObkRBcFVDOUg2UVZhSDFoZVlQNkhLbWttdWZIaG40UW02NUh0ZmNJQmorNCsyOWpycmI1WjVjZU5HOTVaaHl1c0lwZVY2NzE5VVUyRmJHZFk5Q3NMNUN1UGg2c2I5Y3ZvOUtCblY2d004VVY5ZlhQa0J3Tkg0NFVcL1kyc3RVQURaOXduXC8xYjUrOWJTWWhNTU9rNlwvSGNhUWZvU0NEcG9kaWc5OVwvamNER1wvNkxvQkdYZ1pPZzVPaFV3Unc5cWd6dUZWc2RuS2d2NUkwZFJzbXh4RWVibXlCazdnZHBKOU52OEdtclhReW1WclFwY3p5UUVpM0VHSTFVNXgxY1FvZXFqUWpacUN6Y3lEMndsRW51NWZOZVdBSStuRzM3YUYyQlRvbTlDVXZ4ekNjb3pidkpHcHJHcW5ubWNudU9yUVZcL0lcLzdGMVlyS1BXWW0xaTBxTXRCalRNYnVTcCtja0R1WjJKOTVXbFdZK256R3BNTkluRkpkRU5XMEY0U3VwOGk5RWxHOVFyZitYYkJqd2N2SVJLSXZWd0tyT0QwNGM1T1BiaFlIVElkRWV5R01VOHN4Z1poRlBmcEF0TGFjejMwUURFenpXelwvRkhnUEJab2d6SWRKVEdJOUFOZ29xbUhNZGZhNnZVNjJYN21la0tReEV0YUs3TDF1bFJMTk9BWXB2YVdlR0hNam9wVDhBcENValRwSWs4ZEtLWnM3RklLc25GUkZITkQ3RllCUEpOWE03WFRaN3J0UklxRnpQTmx5VlBHaHZPazBmcGt3R0txXC9FTGNEcUhvTEVrcGRvalJvUkxMaHRCU2RCU2tNMVpjdERhTUMySFRsMkNPUllPeTFRVE5zSnZ1SnlabzRMQnVyV0lWSFhUalhyMWpuUU5qdjYrZlZmVnNLWmFMRk5QbHF0VHp0XC9kT2lPZXBuckl2Mk1obURIU3JnK2UxVGFTQWJwZHZsQmhwSWJtbzh0SzJzTkZFR3QyZmg2QU1WRjNLcmpMb0t2aEhDd2dCMTFRemhOaEVXUjNzWk9jenRmQmhnaFwvRGdzdFNQcE10RnhLcUtkZ212N1M4N1J4OWttS29YMHRcLzJBZWgyVzVcL2t5NHdiY1E1R3BhTU9XdG1WcnJrUDRFelwvd3dxcmVQUDE3Z2NVdVVZaXVmYjIxelBHRmdMM3haK2t0eUg5cEZZTUp5K3JBaklJWWhKWmZmbG5cLzVYMU1LeFJwTWJoSEF0RFNIdFhRT2NDd25ZeWRmOExRR1wvVGF5azl1SXdrU1loTTVBdjNLUFRzMlM5blF0b01GOVhSc0hpNVwvVUdyWmdGREtxc0Vzd2l5YWQ5V2lcL2RuMnlEUElTXC9OU3JkMHNhd0NQXC8xT05oUDNlMCs5R0RSQ21FckNETjEweTNVb3VEekRDcjNSbWhhTEppTDVrZFhMRkRzNit3dHNlSEIxVnJ1S2xVNCtXbHBtZEVONGtwcDBqcURuS2R2MThPR2NGRkxRZVhxME11Z25pNDNRZGRtQjh5Y0FkUVVGT0tFV0RraDJyR0dYTFlzdkYyZDVcL2pzdVN0S3d4bmhmbU9OR0c1RXVIZlJkeklrd2Vja2taT0xMMFFreWxHTUhodlNQQkZwalM0R0psOWE5RVRHUk1GakIyNGlSQkduMkU5ajUwdURvSmJnNHBCcG9xc3ZBRVwva0k3QUJLcktFWk10b1RlWVc0YVAyXC9EMExMS1FTd0tVeXBBVjVhN25xREdIdU9HR0NZVHVzODVBUlwvWWd1M0w1djlNUE8rcGl2TzZqQXpMekhNb05XK0p1REpyRW9mcWRNZ0VOZDJyamM1UzM2Nk5uaTBqTlN4OGZJWWJLQTl0akRablBhaGFnaXR4NlJlQmlLRm1vVVIyVmdMb1wvVU9vWHExSVp6d1B3MDBZd3ZuTXlobm5pd2h5XC9RVWJqdXNERjV0d3ZTeGswNmN2N2V0aHEyaGJWaFwvcXhiOWtSSkdvUElDRTc3XC9JXC91OU5ON1Zzdklwd1J1WDE3S0JcLzZDckV5SHBSUGdTK21UeVJJZnZjUFc0Nzg0cTBndmNaRk92YjVJUmppbGU2ZHhiVnNYWVBjR1l5UGxUUmNubVM0QytJVGZ6b1RRVWNnVVMzbzErSWRwbWQ2UE9DREhzYWlZU0VmdkR5dmozNlkxY3Q4UVIrNFJCdUhhOHh2R0U4TElSTFNhWXNUa1VxcTVabktCMWVuc1F0MDQ3dmJvMmNCMDNxYjBydm9id0R1ZjlQTW1qSlBIMUhTbURIQ1E0TUI3aGM5Y2xwNGh5ckZYK1hNSXJ1VUlmZHZXdWJrQ3l1QXlHa2VMQ1phMHEzKzJ6Q21adVpaOWJadDJTdkxpZkZmZUlxc2VmMDRNaFM0a2dITHRPeWlHejVZVXJFYVVHSkZmeDVFdEdtY1FOUDdPdDZMbDQwYlNPOVF1UWRyTEhBeHUzc212XC82U1JzVkoyN2ZHNjVnRzliQjM3cUZMZmljWVN1ZTJ2cXlSMUlDV2hEbXJyNmlPY1kyKzM2NjB6UTlmeWIwY05YdFM1SXNpWXRKUE0wbCtzK1VYVWNCNDg5ZldXdXUrQ2diNG1adzVRT2lFanIxKzJBQ2NaR0xsTVYySnV4TTVNWE9ieWIrS1MrV2gxc21PanpPVHdxcjFWT2tQYUorK2Jsbys2WkdBSmk1aTdab2s4Z0NZZnFuTW9NTzA0bEFxdTJURk9JcG5SMzBlYWRteFVFNmQ2eTJUZEpxamJcL3ZYZ0hCR2ZsNFlVcjdxUFdxQUJod1NxTnR6ZEpkQUN0UGxLejdhTmM4a2VRZFFMRDNKYnhVdTl5TjEyY0Y3aUtTcTdzY09nQ0xqVXdPdnBubHBaOXQyb1NUNWFGK0V5WXkzUWtyZDRiOTFMUm8wRlJhdnFkcmdYbEJcLzA3XC8zSHliemZYMW5ldU9Qd2JhODZmR1RCdkxpYmhqb0hGRmVSXC9ZRHdoTzJQVUZFTGVoMzJlUWl4Q1Q1ZUc3bjJYUGFQMGRqUDJQb3dKUFB6dGpFSnlPbjNjeUZ2TjFWRmdsK080S1NoOVhod2M4b2FZT3h3Q05aQVRtaVpoYXBueWxcL0J1ZGRBUkl5NjZJd3VVRWpSODlxN1ZqbUxZNXo4MkVHQVZoODZ3czNGdWNVWVZjTU4xNm5seE9BNlJpeUgzemt3UjJkOE0ySHJXOHpjb1wvM0FHNUowajdmcWR4NWxJWmE3QlVRK09KSTYzSk1rZlpjQ0IrNUp4K24yTUhvQVwvNWxiTU5qUEE3VDNcLzhDTDRFaTZQRmxQd3Z0NUJSS1NHZVloemdxc3RyZWlIZ1lzS1VsQldQTDhHUENwYTNCZUZcL0U2MHR6Rm1COHo4d3JwdmFqbnlSZm5TV21UMGpVVkhqQ1JWMUdRWUttckJUNnQzZ3lwNUhkQnpFNUE2ako5TVUwSDY4MEI3VjliUExvUkUrM1prdkpUakZzc0ZQdzJpK1wvMmlqaG51eldOR1wvREVGNXhRNnNEdUN3djZ0UEJpS2hTZksxbW5QMCtzS0tielFHRWwwV0JLcUV2aVJqVnRMSFVLNEhUdTg0OVUxaDNyMk5oZFlGT2R3bGRCZlludUtINE94WTVaSHV0aXRieHhxcWFZQW9NNVVMSVZ4NFlwTmt4QmNNYW1lM1RoU3lWSER0cURkWGVjZ25rWlIxU3dpdnFrWHdONmx1UkRjZzA5OTNkVkZTblk4TW1kVzNmXC9kZjlhQXF1bWpvTUdyTE9FM084b2xFK3BiTkRXTW5nNmNrekh0eGp1SzM3S0pRNlhPdGNqaTNVOEpYTE41alJ4OTEzN3dRbXRRUHYxVlIyOFJZNHhaRmxsMXJoVGZvY3JtNmJ2V0lOaU8zSUl5TmV6SU1MY2ltZW9ybnRUYlJXQWZsc3BnTVpPSEpsSDlxaFVkMWs5VTduS0s4blhRenozT0NSWExORmNKRHVLV0ZIOGk5dmwwRldyZUlVTmtZSHE1RjNNY1hkUG5WQkg1d3RhRW43ZmJOY0o2ZmUybTdxV3pER0J1bDRpY3NHbFU4cGJNQWk2bWdwMmdFMDhJa3NVM2V4Sm55SEFJQVE5NzlyMXY2UnhoRnJ5ZnFRUWNGUXVPYTlDeDNmQzVCZWRkbVRvYmxuNXQrQXpGZzZSVnhUK1NkRzh1clVpMEZRK1NZSzBsblNhNGhuRWYxdzhhYittNnhVejNXa0pvbm44ejhcLzVjOVlmV2NCcEpadm9nUTVlV0JJN1FIazBoZVkzbzNBUjErVmlcL0Vqdm1xRzZ6OENWeFpHWTZBb1wvcjBKaDlHOEdmdjZ3NnFmdGJiRytCQ01pa09IdE03R0Y2czZXdWlIRVR0RE9mdjBcL3RvOUZDVUZIbzhaRlF2Q1ZiM0gwWG1qbGNuNUhNMWEzOW1wdzN1WEJyeTloYkFhMFdVa01McGY2elJUOXdpNFMxUktzZUh2MzlwVk5LRkhLaXhcL29QVVlUT3d2OFBEalZ3NEx4RVNoZVZCemc3cnpnenVUVkQyN0lKWlNNOUpjQW0wbXl3Uk5aanFmYnV2cldwYUM3bVwvck9KVWxtRDl3V0ZPWXhUSmR0VDJoeDR1WVYwQjdDalYrWnBYeGVMbStzOFB0TTFUcGFxQ3dndXNMaEY5eVkzaE50Q2ZjQlwvRWJ1TXBCeVQzS3R3NXZWa3VlM0FHSGlwWWJ0NHkxRkxtZk1LNHFPbXRYeXZSamhTUG52eE0zRGlCUVBDNzMrMFFVMmNPbEJETGVZaTVBUFFJUHpFM01nUjJnWlo1Q1l4YVN5OXVMbFVTRVc0WFp4ZVlnbitpNlwvRlp3c2ZKODlURHJ3TnRRVUo3Z3NJNitoOHc2YnMyU3BEd1ZXalorTVI5YjVmWG1rXC9yWnFUOTM0SDlwNjdBS2JSSGNmUTY5cUtIZDBxMnAyMkRQY3R4RktreFJZOWlrWk50TUVYVk5vcjR1WDA1ZDh5cUx1dVkwMkxqSWc2b1Z6amhZVjZ4N0VpZndHNm5YaE1mT2dcL3oySWNtY21cL050elwvcWNsOVd2V3Z0SDBlQjNxYmExcnQxYllIbnpJcDhTaytSNFwvaXByVFZxMGxDZFU4Qlh2WlJBbUZOYVZ4a3RTVWFHQ0ljSGNaMjIxMklVOExGQlFyclJWZ3c4RXYzQXY2YU52ekNza3RnRURRcUxXbEJNYzU2XC82NHlnQkNwQ2RHMTUzU2hVVlluSnFTdlRSY1R4OTZNMFNuMUJKTDUzazh6WE5zVmNsNWpjU3c5ZFhLY3lxcElvSndxbXZpenlVYVZ2K3M0QkoxY0Zwc0tFTHBFTHo3MW8wZ2dSNXkwUEVnblIzcE5HY3FBU2k2c2U5RlhOM3FHMXV6d0V5cEFPVTVqWmd0SFwvdkFzZkxrTXdseThvN3o3VjROa09jVzJoYmVhaFFcL0JIRlZXY2ZiMDNwdENHMEx5YVVNczl0eExRaEJ4WWFhTCtNaExSdnkxQmNyWmlVODFSN2pqVDYweG5lU2taR21MUUhrNWozdkhMa0FFbEQ2cXZaaVhlc3MxQ0sxaDdOYXV5OGt6KzdcL2NwZmFKa01ZZytqSzVVV0tIQkU5SjcyQ0VHTzBUREcxUUVmMk1pV0Jia1YwWU1XMEliNXhoa29kb21yTFZ1bm10ams1emFlSVwvYnp6emdqRU5ZOXZQa0lXV2llaTBrUnZoY3BMM21wc0dscU5oRDVIR3oxcWx3QlRPT3M1YXgwNGYrOUIrREZUcUhjQ3dMY3hnVTYzSm5rMjFcL09KR2hKWnYzZldsa1k0WUVNeStrVEdcL2k3MjNiU3Y1QTZ1YjErRWFuUCt6a2tRWFphVWgrajFRaFdvSGlzVjJxaVwvT2tuQ0hibHlOT1RvR1VzNCtxOUF3eXBiOWNnaW5GYnRlc21ndlpMM1lFNlpEY3RBbXRXZ0pRN1J2K2lHVlZzYlUreU4xdXZvSEk5Y01zdjZncFd3bEtrR00yZW1UNUtFRzcyVGdaRWVOUUUyeHU2dWNMZkZCMnNNK21YSlZVcGdUakZLQnR1YUY5bUVNQTFpMU5idjFIQkRzdnZIOXpxSUZ5UVRITVV1WjJ0ekg1c29YRnZCMTd5YWExenVQVVU2a1hwQ1RrZzA4cXpPVEo1M29ZZU1oMlF4eExTWkJSZFlkTkMrdDNocEhYdis4UTEza05CanpyT1N2RHl5OHNVZGpJTUtcL1pjdWNLenJ5UTFjVFJ1cWhuTFRiUVwvcWw4XC9YZlpWRUMzbk83dkY5NXQ5T1FFQnd0c2VhTmZjTFk1WW51NlJHU01OR0xcL2JFR09zRE1hVk1CcVwvVU9GSSs3SVE4cmFNaStSUmMydHhqTW1YTCt0QzgxanFpOGFiVUF6TW5NSFFCSWFcLzNhYjk5OVJIS2U5WURqOHFrS2xoa1I0Yk5cL3dKejhzTmVwXC9qWEh4UFZrMWY3TkRBZVwvU1Z6TW1QWmE3NlVtNjgyZVVHa3MxZllXcUpzM1lncDlNbnBUWTFGN1RRc3lhak5hQ1pRNHpqM3V3a1daR2Nrd1lKMUI4TWpLcDR4QmxCMklpcTM3UjdzNmtPNEZ6STl3VG5ickZwQ1BFTHNvNWlvU1R4WlNsbDN0blZRcDNcL0hVb09ZdkxcLzV4eEFYcFlwbzNOZk9oSVlVTGpkWmwzTDhBK2k5TXFHVnFXRjl3NzZGZUdrNUpKUUlXUjduZ0JXSFBwa3I0SlAyQWhpMWJyXC9MQTJUZjhNNU0rcEF3MzRWU2xSbnZcL2k5VGlcL0huOFZYMjBteFwvWUNmanRrYWVoa21OYkZGWmNhZUJpTDdzNlR6NEVlXC9kRUdWOEUyb3dwbzBxOFJ0b2ZxMTQ2NjNIWTJpRndlSXFDTE1jREtUUHpDQStWOTJJczVaN1o5YTVcL2pmK3owcnNHM1QrZFBxZ2FtbUl4OEh4bG9oeHV4WlJHd0ZLbGh1OUU1aXBTdVpHRWRhUU1iSDkyV29TcWpBcE45ZGNmMktIZmlBOWJFa3ZHWjI3dnRYOUtQWGVXd0ZqS1wvajdwVTVHYlY2TmNhTUdqWkdLdXJNb0dTeTM4SThoaE5aRmxhOEwxSlNacEt6MGNadlg2ZDNpXC90T3RcL3k5OWNzS0NIVlRJblAyTWhUblViZ3RjUThTUVB0NVVQZ3JiUzNMeFZFVitBbERFNXB3dlB6TWx4MXE1dHlvTlVhMkpnNzFrQ3JlZ0xCcHdFNTBUNks0UkdiZjFSRVhTbXM3cHpMTmVcL09xZ3dmV0p4eXJ0dGpNTTNrNkdGbTVZVUtVUThvK2M2a2VcL1Q0SlQ3MURLa3d4UFJYZ2Vzc0diVGhQd25sTjl4NHBURzlQSERjbktIdm9UMnFWbVwvNTluMm5OT1BKQjRUcFR6ckxnSVYwTjNGcFVhQm1nb3ZkT2w0NUgza3YySmhKWXk5SkFiaTkzczF5cDg0UmhkY1dJNkxRM0tERFpGMEpiQUR1Z0swOWdyVzRsUHhKbU5pTWxNYlNlaHdDamdhRnkwRzFyWWlOVm1HaENySUNtcW44STJDTmtWVkhManBsRnNSd1BoNlVrVWM0cnpaVU53Rk0wUnJZZENobUhoYVZlV1R6cCtlU0M5amdCWjRXelU4OGlcL1kwWmVPOU9vWlJHU3hHckRBRzdYYVwvV2VLNm5xOWZZUFwvYnZNcDdVK2MwaGhwUGZMWTlGXC9nSEdwTW5weGF0U0ZNXC9lWVhQaldMWUdJakV1Y1BHWER0cVgrM1JSM2dZKzQzTFpKVU4ya3NaQStWTXpXbHZZWVROYkNkZjVaUHpHMzdEOWhKNmJEM0xGMml2NGlRR3FncERwdWJ1ak9wVjhRcElrMXVDQzZHdzFhekJIUUJWRkh0UTlVTFpJbVdkVUtmQmd6aVI1Y1NaTlE5cFhqazBxcmFhcmNsVmFhREV1OHNRMWRlaUJzREhJRGlWdThTZE9sV3Y0bUZHbE9KRmliRDVJVTJOOWp6NGY0MGV2T1Z2eXJibVJrWDlRZFdwUlZmRnV2NXMzbW92a0w0d3Y3cWQycWt2ZXZsWnVXam1JYTZweFwvZWh0MWxGSXprR3JYcHozbnJ0ZG9pNVJcL2ZPNWhFZDFVeFZMdmY0NGJPTXlTK2VSRXJcL1NHelBzQUtBWStoVUs0TVhQbUxuNEJQRmZZaEVwWE80RGg3SWJIVVY2MnlFaGFJRzA5U2RoNXpJWjIxdWZaWXFOK1wva2NkamJiVHpLSWM0N1ZXTCt3c2ZSVGxSNFwvayszdGxDUGJ6NU9iRk9GMlRvVHlDcm90bm03S0dwUWc5eHlUdTdBeTNOSmRZTUF5ODRpS1N0RExjVkhmSkhiY1R5V3YxVndIVU4zQ2VwRk1LZmhJVklpVTVsdjhMMHZCdHdJNXlxdWhXWlFlNnJEaHpXaEcrRSt0VmVvc0p4bmY2WG0xclZMSXVUUEsxSm9pTHllVEx4U05QVFNrd1dBUFpobUdxaWRVbWJXYXdmNHBGdHoydER2NFBqSnhFNUFwWStyczZTbGJtUFArVGV0aW5FaHNlVXpkUFZrSThNUHBna3ZjTzNvblNhczlleWFNak5STExcL1p4bUhpZzJLTjFLdUhjVTZzQzJwQXM5cGo3UnJUcW0ydGVxbWQrVFRHQVk1bFpCcnpjRG5Oemdvend4a2JWYmlYcDZaaTJINHVBcmhkR0hveUxvTkhKQ0VHNHpQUFVzQ25KRVZya1VHaEJpUUZOcUZ5a1RUaW5ZWllUdWFJXC8rWkY1R1FnQkdVSk05VUtaUHU1VjZzUVQyZEtxdjhKc0tCRngyYXgzV2Q1b3JEckpQNlZEVThGY0F6dnY3dEFLXC83bHhPZFlwV2NIZ0pxM3ZmSEJ4eEtQZmVRMTlJQkVLXC9aRzJHbFpoS0VrblZzSnRuY3NtNEgwR21aVEZKSnlnU0ppQ3ZVQ1dBOTF4NDk1ZW0yWm04YVBSYlkzM1g1U0pOUUJrdkcxTkZYQVllSkdYTFVnbTZPS3dBYWp1ZmZkT041ampHYk5sUm1TRmVtZ3ZIcGhiYVpyTnUzWmpQbzN0eUNMTER6dGg5ZDNoQUpKaXRBTXkreTVEZHpJbjNqR2J6QldRXC9FK3NGcThhUktxdDB5S3FYQk82K1RNWTVcL0QxVUdNczNDTTVOUHpFSkE5eER3d3ZNSmM3elhCS05XWmZSWkY0em1PUUVkWWIrdHg1dkhHRm5ENVRubVlpVUdoeVwvSndvTHY3OXFrNjZLdUwzYnRrUE5jQWwzKzFtcHBobFhRMWloSnpGYnc4Y21zMkxhejQ1czN0Q2lMSDBMamFjaklka3lnVTgxRUlCNWZFM29zbjZuMlBwRldDTXg2UTlvY0Ztd1crR0VrRlwvblpoSFlkZWd5aUNiM0ZmSVRyNnJYMzZlZW9BZVJaN1RXQmx6ck9sNmFocVp4R0Rhd3lWeEdyRU9WaExqbFJteFV1YnF6SlR4R21oZHpTbjFqQzl2clg0R3k1M1NCQmJUQnhUdnErNnNTUCs3RWRIYTRqVWRQNUFcL0JnaTYwWlVDUGs5STZlUVdWcmhOS0Z4SW16eXU1YkluVXY0WEx1bkNhamlUWm1DTGhPWmNGdU1GVEFPOElnT1JjTnJpbERwaG5jKzFDa2xjVmJPTXEwR0lZRXFDaTBjM1FcL3U1SkZZYUNZYW1QUjN4V3BCTXl1TVwvM2NjNVN4YWV0K1ZnOWVXMzR2YlB6Q0NjV2pXYkU4VWFSMEdYcURSWmtNcFJLb29YOENpcTh2T3lJZ1Y1azVsSTFVMndMZHdKKytmN0pZbUE4NlwvTXc3bzFRNmw4K1hXalFkcndnZ1dla3lmZklTQlVWUmhtdHlzTjB3Vm5XdnhVNmw1bUp2akdDaHhwb3R2M0RST1R0K2hYNHFXQ01hNmJxQ1dtUjJUcXJGVCs2WFZHV2twNlZ3ek85dHJ3MnVLcll2VitBQWhEbUNRd1dyT20xN3VCY2t3ZnRmdWZhZHVtME1NNTVHZ1J3VjRLa2NtVEtkZkJZWUdQNkQ3WUFxVHhBUlhUVU51RFEwYmdldjk4ZWxJZUFcL20rTUp0UCt1YVdJeGZWR21lSlJWTEgzTzRrU2dtWjN2TFpnSXBEdGk2UUY4bnplUG9SdnBrazlKVWgzQ3VWTHdmQ2krRlJPR2w1SE5EYWFIYkNDdTZJS0FMSGpIbzRDdGRpejlRMkQ4YUQ2RVNuZnBIWGpleUdLNllNTzlZZjkzMGJFckQ4U1YyeCtBRk4yRU1RQ3JabUJScFFNSXhCcGNUbnV3VVV2MEJWY3M2a1ZsNTRoY1NxcGZkajNsNnpBTUQ0TkFHZVpmSmRpVWZQNmFSeGRNOUZrbzVcL1hJM2RuZnlxTFBidVRvTk9NdnBkMERIMWdoTW9Xd2JHSlQ3bnpyd1JCdElkZGFVK2pIN0NCSFMzTVQ2Z3pcL1FlRGYzUjhuc1Z0bGx3VHBJVEFGRTUrbXBwZHp2WG5FZDhyR2JIYW16ekFMT2xhU0lEenViMmVWaGJIZ3JXV01NbWVieFRnOGR1Zm1JVDVRSUtUV1BsM2Y2aW83MCtUTjFvUDAwZnpxa0gwSWZXMEI4VTlLVFwvSTV0XC9xUXgwQzVMcjk3WDlTOE9YZHpYOWlrMnFFOU1qdEJaZEFpVUFpTzRwQ1JJcTE4citKbWxka3RFKzFqbUxnZFZcLzdzU2pqXC8xT0V4SitRU1RqSjVaWlVaQ1Q3ZGlBMDRERGpJT1Z5dkVwc1wvaGpGRXYyUVRGczBIYnRKWXJEZDl3dkRJRnJyc1oxMjJxSUlUY2N0QTUzQ3RaTGk1S2N1RlE4VzlEb1lWaldYTEJ1dElGYTZIU3hUek9vTVp5cFozaldaNmJuK3o5XC9vSUUxdStoemlOeWdEc0NmdW9mODZST0pyMDdraUFzR2ZVTWQyXC9zdEFNVUNsTmZYTG9WWGhHNVdsVDA4SWNJbHd2YzJHM2FkS2hMWUxoQXNTeGRaNEJEUWZDcHhScFB4dU5QRjBLMmRBUGRFRXhhanJvMkYxOGN1WDZ6SUp1eHlLSkZWZkdTODNJRUQwQmJ5bVJQTXNoZHI4dlVYTk5LK1dQU0t0ZnF1YzFrM1NPeWY3STFlcE1CR2JxOFwvbjJMbm03XC9HZ3JjYjVPajdpMkpqZDA2RzdtaVhnc0Q2ZVFZWmtyMG1pcTM3VnBXbWoxbmhPNEd4blV1eHplRktUXC92NFVkMEhZSjRvUnB0SVlQVHphSzY3Y25adkVEVVN4SjZUaXYySzdpMnArdmtPRGRRMU5pWTYyQTBIbDkzREdMT0R2eGowdUNoNEVldzhmOGZiQzRwSENnMFhhK2ppOXJCcnk1NEtEcWlUQ1hhY3RUYXJUTDVMNU5paEZIOFwvUHF2TU81Tms2TWx0UTZxTFppcFJJWCtkTmttK2xnUklNT2xsbElEclkyaHNXZndKMGRxanhMOWVRbWFWZFwvbnhuaE9wVTJoVzlrZGNzQlVOMWdyMWxiZ3FNNVhcL25hVTMrNHlcL2xJSGpPVXQ2XC9uKzg5M1BQNlNERm16Yks2UWZKK2JuSWlYZ1l3SjBkV0VxdE4xbThzWGxsYU5xRERMeGxcL2llZUhVTXVIUzFVczJKU2dHZjB4V29HNE1qYTJMNXhLVlRmTzI0T2tsZmZMcG00b1VmRlZoRFFUTHFSSGFIY2Q0Rkg4ZVZPXC91dHo4d2JkaEtiMGdTRlNYaFM2MnV5MUpYUTZEVmg4TWk2VmFBNU5lb3N0NnVERHZYOVZRR3RZdFZTQ0c1XC9QeUM2MHlpbWxnUk9vNEtxUFB1UlBrdWNYNTBjNFNORVJGNU9TNTQ1cFM3ZVJtZEQ2XC84VVBkM2FiYUVNRzQ4WFp6cXlVYTVxSWZ4UWoxSG12SUtuNG1IZzN5WXhydXN0M2sxbWs4a3FQTlliS3FJTHplaHVVOWJQOVQxQWtVZVlCMTdoNGoxdGFYYXpIbDJvYVB4a200cllsQ0JQblpcL3hsNzBMSEFMZ05pQ2VkVCtvdXFVaE5OeFVLOE55empRNm5qcWNVMmUzRUhMcklMZXo4dW5TSUZKdk1PWit6WGlRZXBHRjArVWJuVkZsbDdUY0c1VmlNSkxWbkhXdk1IZ05oSlYrV1pZXC9EUjFNSW9VdjFFY1Rab0hZbnZrTGl2dmNZM2trNUh5RTlZdld0OWFpWXptQUNNb0lGcE9KbjVvb2duNkpjeUVrN3VEQzFVak5cL0hsWE1QRXVXdkZTdU94ZVwvcGV2V0h5YUNGbjE3MUJxY0JyT2dla2RFcFVXbnROT1dHVFI2eEtoMjlNZFV3VTRDTWVUa1dsZFJpVlRoajJBdUJHOHlQVVNzWXlTUURCS2t1Tjc5cVlUT2UxSXpicExwVW4wU2ZpR1plckkrRklLUCtGUTQwN3M1T1RlZjNnZ2tMQWpKN1wvQ0lLYXZsbis2U3lKOU5cL1J6SWJVK2lIUytLemxSdWdndWNJU0xrNmhGalZhNk53ekxcL0hyRSthMXlubUt6VXJUK2kxR3N2aDBDbExXWVdqKzNWalhxRmhhNVgxYlNRRFwvbkx0SlwvWmNHd05FZVZJUzNndDZDcVhENStYMlJ6NmRWUzArRXcrT3pVYnpRRVlka2hzWGdIdVo2dlpZNmo5NjU2QXZlcU1lT0pJZHZodU9oMHJIUUZnd3RzMUhpMlgzS2hIbXN4citDQWxmRkNFcGVPVFh1bzBmWVN4MVlzc0RCK3ArWXdmdzdFMW5OeWpJamREWUZhUWNVYWI4UldvR3M2XC8zV001cWE0YjAzVUdaTllQa2Z0TmZjbUxaaVwvYTU5cCtreUZpWDU3ZHhIRGozNzNkbWhoNGRFK0t3Qm16ZUNwOTJqeGFmZ2hadWxWRXhOUDgrNzVCMElWNDRmZmpNbWlja1VpcXlYT1ZWR01KeFExN0pvMFFpVHlSUzhMYzRNRThJcU9nUlcyMVFNQWwwZlAxUTRQN1VLT284QzJTWE5qVUI2UWNhb1dUSkNhZ0JSWHordHJSRksrUFU4UVBHVkd5R25pUDl3ZnpJSEREamZ0aWszQjJZUDV6cFREWEJVam1obENKcmxoMDE3Z3l1azN5NFoxeGlmbEpxbjZCM3JwSll6NmorM1NUbkQ1R29DS1NZMzdLUWNsaEVSVkFKMjY1ZWFsckU4d0RZc293WDRRRU16OWtOVVd4Qk1OY0ZzTURaaDFuNTlTYUYrNlR2N1hWOG9PaUZaQW9aaDFGQkZucDBCK2JDRFJxOWpZdHMxaWNHMzNIQ3FYa1NWeXo4QVZZUGFocGh5WUdXT3dYXC9hcDV1TlBrallrdVlkVUw1ck1cL2NvbWtJaHZCcDJ1VVRrcnlCdzBwOUJEeFNHSU5DM29qS3VJV3FsY1JkUGVSYWxYQXF2VndPSkNFQytQdFBPZHdEWEhDR2J2cTR5dTNCR1ArZUt5RTJKSGFkNmhuUlBpc2FCY25LVkI0RHJ6cCt2cmR6R0VXRWp1dHhGS3FIMzZ3NnNyY3p1bXFPckNZODFqdTl1VmtvZlQxN3Z0MTNcL1NpTVd4T3ZWQXN2aVpwOEVUNGQzYmk1aTdOS3RoSHVmNlB0VzhET0xNMDc0WjhBVndUNHk0MU1OVVNobnlXYzRiUlVmcXdFUW5yOWFDT3JUeXlkNStZWjdcL2I0Unp6andmaXR5eDZDc0NQOVhLdThPVHBlWEN1UlpMdmM3cUhweHE4aGtTT05SbjE1MEpwdFdVVkl1bFNuUzh6UEhyZ3FCQzNjaWpkTUg3UUxcL2kwVDdvVXdsTGI2SGVUOTJndHliSWo3enhDZlk0SGhLeThcL1dDemw0V1VObUNzTFlHTVwvZmlkNXFcL3h4YWZjZ0NNXC9OWTY5UytUTEUyK1R5K0JsK2RFY0licmhxXC9XYUhBOVZOTXhGelh3Z2JIc2RESzVzNWFCU2QzRGhsRWdaakJ2OGJJeFFsVllZdDcxa3pweTBhUElwYUFLYUlFaXdUWVZwbXZsV3kzWm9zcUR4QUJvR1BwNTZrZlVUamp5WGtPbm0ya1wvM2ZPUGNoNDhSV3JPVGdDZERKb1RUcWtPR00zdU5BcFVHbEs2TEpORklVKzh1ZzdrZWRTZXdNMm1CcGZQR3JZY2pXYUlKYTUyS2d6WnpPdG1CalBIaTVza0p4cHl2aEZqXC9cL3djQzBcL0F6WmpcL09pTFJmeDYwUmlXcDgrMWw0K0F0MzdEbEt4WmlmamEyVnhHYXlLd00wZ0JcLyticWhFZlwvMVwvY2tTeW9LYlZqdUNPUm5wSlF5K2RiaDVlUTBHOWlIVTU0dUJcL3JKWTNMaU9VeHd4WjBURUVqRFE5QlcwY0dJV0pwTTBsUlBcL2F4d1FmMDE2bVpTcU1nalhxQ1wvbDNSSFJrXC93ZEJrc2VEcG9pcmpcL0JlUWxaWTJyd3pBeTBzQWllR1Y5a2d0TjZVbVwvRzBPdkxWVFZ3OE1JaTdyXC92dFwvV0xVNllkVEt2SU1KOVwvM2xiV1BOcitpZHN2OWpcL0FVeFQ0UzdZamYxUGs2T3pVamF2V0djVjM1NlFoM0FxNHA3eXA0UUozeHhBeU9CY1ZRejk4Z3lYb1E0RGhtdnhqdldPSkFkdEpYaGZ1NWNpQkNXVnZPUmtcL2x5M3c1TTZnNlc5RnF6UjdCOHFhXC9XaVNpclUzdm5xNkJOckFuUHJMQUlkU21NdDZQbGpcL1VtQU1FMDlPTXRxWUFJcVJ0aEdrMEVSb3ZPRU85OG1HV2FwREFFXC9cL1dIZHpQc1dJaEJ4R3hUcm11aFFPN1VUc0k2cUlIaGRpNG9sQ3BLb3VcL3prdmNLU3owM1dESU44ZXFFMXFROCtoUWJRdVBhWmxPa1BVWUZYd3lzVGVEUGZFZHhFSmpcL3NUTWd5clwvTFwvc3NQS0VlVVNvRUZNdGRseHkwVXBLemFMMzJSYThTNFEyU1VIRlZ5Q0dGeTlXcGtxWURyN3dIa0JJRGJsVlduRUxXck9VRWVaU0JmSklMK2RCV0s5T0RjakF1ZDZTNzNXemNvQ04xSzRReFlCOFptYzVsWDUzVjRSaVcwUW1Nb3I2Q0EzNHpobWR2WjVYME1aaGo0ZVRKczZ5S01Hd2FNSjg4RkI0Q1kwMWZCc01sZ2Q2cGkwRVZiQVNhZGZaR2pnTGV1M2JWTlM0bm5vZGo2OEw5MkVnaWxXcngrazVGMGthZWJ2aFRRbHJTVnVWUW1zUys3QkFCUk8zOWllekpqY3EraWZibzhxb1RKK0FZVWl0RkFWcGtYcDFwT2tEODlUMjlRQmtlRTB1U28rYnpWNldDQ1RqRWN1STRES3JEWmpqTHZ2bTVQTFY1b0N0UE5OS0cxQlh0aDc1NjFzZGNTUE1MXC8zYjA1TkpxeVVUN0xGRTZFZVplTkNlYlg2T2ExOTJsUUkxU0NHWjgrREhydGY5Vm4xSUtmMnpTOVVBRlVGMDZJMUZPdjVobmxGYTFYYXBHd3JqY0JaWlBtTWdtd3ExaXJpdjlDeWtvMGdLQVQ4bUdGc212ek92TkxqRk13d1E3WVBVeTFCUXNzT2tHbGc5RUQxTzA2R1RsQzVFM3VkbDJGeGtqczBuK2p5VUViSUR4bzJKMGNLMjdUVEZtSWJTUFNiZzFiTm04RDJsdmpMMmYydWp1MU5rUXNUdFpNODZsZVEzdzNXQ3hYdjRsOEc5TlJHblwvckkwYjhSM3BWOHp5YkJmMHZTeDZacXJia3ZGc05wNzdBb3Y2a1VpbHg3cnRVMXJGa1R1SUc2amtaZXdYRzJcLzdzR0hHOUNscStOb3I0VzhkUmdaWmlrejA4UWNtZlwvQ3FyYUpWNnh2SG1UcHl0MitxSHlma0dqM1E5XC9lc0RoTEVHZ1ZcL2ZZSVhOXC9vUW9LaUd4dmRJZ0VVSnBqSStaVWdaUmpCUzFmVW4xa2pWeGpuSHRabjlvS1lodG5cL0x5R044SlFEbFpsZGZ6R3ZGUmYyS1wvc0hEUHlOWkFyd2tPKzZQbWh1M1oyQnJtS0F5ZlJBNGd6QkUyOFV4NWQ0ZjE0RW9xXC9UTTNqdWh4NXA0MnpkM0lvellUdGZtbHRpMTQ2MXlRTFNtUnlNeDBhVGtPTUE1a3pJY1RUbG95cldiT1lYNTFFYzJBeWZuSllIMUs3alFvdFgrcTdUaERrZ2daZzUrakkzQ3ljb0MwT2gxODFuXC94VUdSREpKZmJ5Y0NwcDhiUUNhc3FpNXlvSStxNldxXC9vQ0dpaGtDNU1cL05GclFlUzZqUWdYK1hlcVRKWEh3djA3YXRabUUyajhpc3h6SFd5SGVCZlJieXY0SDdYZmNwd2h4ZzlMNVMxZER2enVJQSt0UkYrK0tGQjh5K3paZGtFVTZMNXlvQ0RRSlR5VVpObGxJWTJQbFgyT05LRUtYWTZPZmZ4Z3JmU3ppY1VoaytKUlBpcVJVRFpkWHdadmFld1JJSkQ3eHhibVwvSVNnUXhtSG8zYkt4Z055U0pNc3hjRWZ3VHVRRUludDNvaEd0U3FKOEdGKzNWa0Uwa21XVmNGdENMUFp4WUpHZ3dsNEh0YjQ1R0NORlwva2VhQkJyM0l2eU5hcnlzZUVMM1ZZcVRIdVlqMmtsWFk0SjkwOHNNTEdGNWQ4emhna3Q1YVJFbjkycGZ5eEczMWZpaUJkeFljR1kzWDhLRDFUendWMTJRRDM3dEFkUTVNTDhtdnFPSkJ4NkFZbEtYc0hsWmc2RExWSkFsTE9NaWNqMlR4K2dYSFA4K2dVSnQza2FtOU1CTGEyZTc1bEVmbncraXhHMDg2SlwvWjdcL2hCVVI1TTZMU2FhTDFPUXRDTExJaG5mQVdZSjJKN3pZMVJBR2t6M29HQUlnemNwenE2dzFjVVRlNTh2QUNKNGJYRnhGMnNQdFZUd2hrOEVOeWZhWmhPY3RQZWVlam5naFQ4dEhRRndjem5ubkJ0UGUwMm00MG93RzBNZURJQldpNmoxY3R1UGFnZ2NiNWtKZ29kSWtyd2NCc2tLYlo5WGp2cWhvUm5TQmdLWEVPTkVjazFOYU9PMDNPbklwclN3UzlHZmxmZERLZFRNaDgrYzN3UlpwTkZickZUXC83TlNQTXdxMU1WT0puNDVGWmJnZUVpeUU4cE13N1wva0hMMFFrbFRmV1pHeXVuQnR5NmM2Ujh4VEh4eTNPdkdpeGhYcFlxcFZyWkhSbkhPU2pQT3Z6OElDY1pUcnlVRW1jcEQ0ckdqbEtnQTF2VElpODBJWDNLYkFQXC81WFU3endoQUw4cktcL053RmtcL2tQb21QbWNWT3NnRUlpbnEwdkRnXC9cL2lvWDBKYVwvS2NNNXdBdE55TlZjbklKaVRrNFpyWW9MV2pcL2tKXC8xRWFQcEZvMFFhSWZyanp4eUtmQlRVcG91QU5GUXVsQ1J6MXIzalg0TXNYdVZnbnFTR01xTkRTZFE4ZzlsXC9MM3RyVUQ0d3RoMzhtelRjQjZtOStaaVplSGVCbUdUakY2T05iOUtiTzlNMWRReGlaTU10bkdBR3BJNjRVdW1WNnMxeG94anVEZXQ2UGFcL25CWlRSSk5JVkVcL0dCMUhxOVUyaEJxVnEzeVg4cFBhSVIxVndzWHpwZ1o5NmZCRWw5NWNKQnZqbm5oQmM0OElrTHM4cGVNK21MZk9PMkxnY1RLcGpvSDFZRFc5U0FGZEVDOTdKQ1pTM1V1T2hMOENMcnVQS2UxZ0hrV0FqNE5cL3BZaEZhYXMzSGZ0Y2tQTmd6dWJ6U3c2cUdvRUFQS1wvZlJUank4YVE5OXN4em5jaWRZZHhURlpkcjBZY2ZiM253Q0tlQ3RienFqQWV5MGI4dzVEeVBvUENmXC9FSlRwamhDWHBCUjBGd09zQ3o1YzVQWVFMaXFLdjl5MkVBSEdjSVNIRUZYTTFmUVFkbzc0UDdnYjZMdDVcL1pwVndyTGg4MlNVTU9oc2FNb0xLVUF2NUk3QlBhOTNZWjl5eWNXVVpKamlHZmoyRWlFN2NnSVpCN2VxaGl3OE5KXC9TNXNWaHM2VFBLeHdPTEhtelF3RDl4UFwvTUpjeEV0NXlxSEJ4ZDUzMFBzbTlOYWZcL3JwXC9IdWxOXC9vYWUxT0lvR0x2cnhleHhKZXFxNUdsMHR1bmQ2MWdDSXB3VXhnT1N2MmhFdlo0Rk1Bbm5VN1M4YXVsT3IrQmp3N3RRMjBHekI3a2hTWXhZbFYxcUZnUWV3SnV4R2xTZW1wY1J0ZzFGWXVwSkNzYWQrNW9ER0NcLzhQanBLM1d1Y0ZrbWJMY2FOTjdOd2tqMkkzMGRzbzZvNlwvc09SeGFaOWVXcTQ3QW53amgxVGprNGdkSDEydTNPa29RN3VHMlVXamp1SnhGRTZsV0x6VVBka0s1dDFyUXkxeFwveitZVHVnK0JLWmlNc2lXWEk4ZTFBVW1ycjQ1XC9tQm5KYTh5MUdrUWF5a2k3elVKaE5ueW51bStMZWlCaDBsTVByS3B0Q21ycSttZTdVdHZnWFwvR1ZvUWxHUmVaM3EwNjFkRU55OVJ5TVdHXC8xWXRQN2o5ZlA0SlEyTDRUZ2NUWlVYMEJnYjFoTjYxOXJaSSt2V29tdnVcL2JPMk9uMkRxSGM2ejM0dVZCaXhySm1QQTdHbUhWb1d5VTNqam9vdEVvVmpTeU81aitlSWlxeUF6aDhcL0w1M2ZSbWFqUnhNdzZCU1RRS3g3Z0FlXC9yOFBDc1J5dlQ1K1pXQ09aN0c3SUd0ZzdGb3lVN1ZQK3hIOHl0QURoZTRUR0FMYkVsdm5rc2pSVkZJRTRTcWxGNnlPK08wdmFpUnRUYWtjdHZzNVhuT0NoUCtoN0s3UURMRkdPMGRVNTNzZ0ZjQmhkcGU3ZkdNK0ttS2FuS3dFOFBveTZEdnlOTEltaXloaW1BQVYzNFpEMU1ablhPT1JEc3RPQWsxSGVUZThCNENBYjNJdEF2aTBKYWlcLytIcThtR1NtZ2ZCV0p0aXBLSGdZTldxbTNlYlc0dFBWUjZFSHdGUldqSWJaT1wvRCtxTWp2cHNnaGpIUmNwdDhXTTF1MTVSQmhDaVBnbWVEbUFjd1NcL3lIdEw3a0pRRWtUMjBZNFVzSXpqSm5ZWkdhdFRpME1iVnBSSmY5Ynp3TXNhdFoxQlwvcTAwOWdXMU9Sa0lGeVBVUWkwR2srU0lOUzNHd2ZwSTVRY0FzWTZ1eHlsUHVxYTZ5UG9vSXJpTElpeU9GS0t4NDRDNzZOZ2dSSHdUNVYxb014NlJzaUFTMSttK25LMUhLaWsyekVDVStRejd5SnZjdnQ2QXdFeDVYcVdCQ0lLcEtKcXB6SUcyNWllSVN4RkhBSTRcL2tJa3pJMlZPRFVGTTk2K3REdVhhT1NhRmZVOHN0M1pmanIwRzZJZWpCMVpnYWZoUEo5WmlET29JMFwvZnloZkZTVEorc0R2VnpEMUZjZ3R6eXZ6bFg3dFFaYWlFdHV1TDFjeFE3UlVrdXJjeEdSQ240c3IwdDFpUlFVaVdPOVwvV3M2UGI2YXk3QmdUbHFtUUFmdXdcL2YrZGVIckQ3TGMzWVI5aDR3XC9yWkxjREJJamdLZWdEcFFFNXBjRmI5QXkxMTJtMEJUXC8yRlwvVCtITlFobFwvXC9FdVFMc1liUjFibFZFSXptdUV1anp1K1VuOVlGaE5ZS0lUN0VBa0VyMnd6bVRkRWJnZnpUWnBmQTFJTVwvdUF5OUtHb3YzWTV5ZThGMVhoR25TaXNWVWozU0Rpa2dsNm1YMlBSREZLeSs0M2hSd0pHZDc5WVNRQmpXS0xodGRPcFE3cGV3ODFHTTN3ZzloRDhzNnBLTFpIYWlEQ2RzNVl5b1V1RnVoVjNrZ25aQzcxVmJRWVJJbElnb0JaQ3hFQ01zNk1xS1BnekJTa1wvTk9CcGV5Umc4VWZWYXpcLzNVcGZ0MWZleml2TlAxdmxPMzdOcmU1MTUwcXdLTFwvSmtJSFdxSnh4V055ZVhIWDQxUTBCVFBYTFU0eUR0eHE5YkRFTDRNUzQrMThhd1JTc01Za2NwZm1DVE41MVwvQ1Q4SlJLVTgyU0dsdUlFcWs5SzNzNm9qb0szZ2NjQjZUMVdUbmlGRHQ4NXJ0ZFFBakNCM3JNeXdxamx2UGgxNWJ1TnhnTTFhQ3hsTlpLaEtRZnhrU0ZFVGxPSTV5XC94QytYcktweStvR2loVkVLTkdCT1N5b3laZUpySlJqTnV0VlwvUVdOa1V0YVF0ZU9FM0JkRDZEUnh4SFJmT2hZZ3Jrb0lJakhKNGh4T0didWc0amkwb3ZUR2luUEEzbG1TSm9RcEZnaWhGamdPc2g0M0NSWWYrRDJwSXpnUHBxakpGbnlZSjlrOEN2QVJkR1VqRUVjekRZMVZEM21cL2Q3TXpYMWJcL05TWUxkcTUxMDFXWjNrZ0FHc1ZoNDEySVpHY3JZVFNMaThONTdBSVV0azdXaFpGamhmUjJFbjkwYmJ4R0pTbGtSVUE1MEtzQlNWZmhWWkFsSmh2VnY2N2xReTFGdHgxdFwvUzhveHdZR0JJQ2xYd0tZdXVFcjFuaDA4RU9nb1k0c2d5Z2V1b3JSNjNEOVlPV1hQVWR0OGp6NGphMlBFZ0hQUGxMaEwrTjg0aHErdHA2eDJVR05DVlJ0eVVLZjc1STFjVzQrZkNjbHZzYmZoQXM5VzFYanBUVWFRQTdDV2ZSQUNZZE0rSFFaeTlDSzFqU1JwdGtPMzl2KzJoV1Q3NFhvNldhaWtYdUlXR2RZOVdrSVNUSU4wam51d1hJOHY1eStObHpjK3JlcW5FODhOa1AxZ3ZZbWRFM2xFdGdPVUlOZUhFRFdLWDFIV2JJWnI0bCszZ2lvZUUyMEJOSkJDZnF6YXMyYXZNUE1xMGc2YVY3MElleGQ2MjR3eUF6NFBxd2JPMmVtaGh0MWw2WDZoOVFEeTV4aExOekRvdVlqakprNmJUcVNLNGx1Q3d6UWFGUk1CZXJPV0poTk5HNzZtcXZ1XC9nTmRkNHliVXc3Qkl0cnVTQzJ2ZWEzcktFc0NpVm9cL2FWdVIzdUxPNVB1SVk5MkcwOVpiQmVPbm1QN2RIbHlLN0RZczV5djF2Z2ZjdiszOEpQbG9rZGdsZTVcL0FKSEwwU0srdCtKVHZaZHd6d1pFUWNVcGgzRm5Cd1M4ZU1qXC9zaUhSOGo0SStYTzFBMmh2dGpsRk9OMmkwV256VlF6MDBicW5hVXRNWnpTT0t6KzFZMUdaQjk5eEtvaTJFQ0dyTEVRbXhuNFN5NDRtcE1RQ2hERWx3aVdDd2Jzd01SdXVqMUM3Vyt5V2toZHEyalhyTEtoR0pKU2xiSWRhSFpPU3VId25OdVBjUGJLdXRDWGZxbXRxbHhXcFlGdWUrN1dEdjJXRG9aZGd2QlhQcmpHUmg4UEZCakJNN0laQkV3RWVtbDBINU04enNQNUpwaE85UTMxMmNnb2JqV2h5S1lENHd0NnlCcTFlSHdxaVJUOGNqNTFhYVFhQ3VvU0d5bXlheDFrYVVzcm1xaHhSQzE5cTBveFwvV3A4Z21RS1U4dW03Ym9ick1IRDBKQzNndzhOTFFxQnJQUzNpZW5xS3VEQzd1ZEF4UzQrcTdWNDZkT2dYQmY3cjFrd0dSMlo0aGFDTFJmYU1YWVZuaE83alJ4elJQOFVmd3BvOGxJS01aa0lpcnFWMWpnZHZJdnJ1VkVzMEVBa1BHSWlwNGVqbEdyYjllaDBGYmhhNWhiZXJIYkNLRFlaZEhHKzN1ZlwvRFljbmcyMVAzRWhNdUpLcnNlQmNZalFyMExNY3VVVnV6Q3REMXF4YUgyclQ0THNNWngxMzdjdjltT2RMNWgydmhDaUpndTZ5WG1zbnN5VWt0N1JYaGREVGZJUEVYZGFcL1J0R3ZHU1FVNjVRXC8yd2ZhU0ZuUGtpV0VxRnVrVkI5eDU4TDZaSE5sdkhLNDJIclwvZlNydUNlV25WYlwvNk1pMWJVVkxcL2FQNDRcL3p5dnhJd05cL2hzQjF4KzRvSE5VYjgrN2x6bWlMZEhqRXhCOW9aa1M0TDJoYjN4cjZaSkpJXC9Pd3JBYkVVTkRTdTY2U1JTdDRIWWttZkhzNGhHVFBZemRWc1luYlVFUUQ0MGdGaXU5TGE2RXhKUlN4NEhRc0RXbVRUMVFubDlpc29EVjRVMWZFYVwvcFB0TEl1N2JvNDNwRVpqOGR1Yk41QkpVQnFhbHV6c01DRVRkNm0rMXQwazNWcHRHTGRaTlBoNDk5RVhTT3FOWDVXSEl6VFVhV3VsYndcL3V4R0VBNkFcL2hBNUlOUW93djVESEhiVWUwbHZHOVNEQXI1clU4SGh4alN2OFY1aTlKNCs3VVVIYVk2RkZYSzBiRXJWSGtnYnI3d0hHZHMwZUwrXC9BazZVNWlVTzJzS09SZE5zYkY0cXJDNGVGMlNUS1ZGQXhlMFdNZXVWdWVQOUxya0VBblFwTjcrcVNmOEZadDJTWCtLbUY2b1dmbE1KUXZZbFRkSHlNaXVtUGhocUFcL1ZZZWlCY0F5ZUd3K1ZQMVNjSjVxNFlWdFRuMzF4blwvc2h1aE5NRDFzN0dBSHhLTUVLQkNKZ1BzbDFLeXBvSCtsT1hXdXhTbHJNcmJFVjRiM3JCUDlUUmJXaFVuK1JaVzhadGRiNEd6OTU0YTNWTnZHeHhoeXlWMGdESzkxOVwvWExPXC9LVjN4QVNzUUtNVzVoN3pIOWtYY2JlYWM5Z05tZ21kV0hlR3RRTEx5WHYyUVRrcnpnZFNyMExVV1hReDlWZk5xdkJkUDdQK3BJaFJDMmQ2Zk9pRk40REtWeTNhNDlOSm5wR2dBQ29zTTlsQWhkbkt5ZUNJXC84Rk9mRzYybkJwcU9DXC9nQnpFOGNiMTJncU9LbVoyMHR0TmR6TnhwZ01sck12U3V5Z1I4RWV4cnQxemVxa3NBYk5VSDVkUzNxQTVcL1BLTmdETmtQV29cLzUxK29rRE1cL1pyQjd3MGRlQ2R5aGorQmZCTCtRbXpNdSt2UkdlZG00WWx1Y3dwWnliZUZCeFNSNTRjWkVzaFhVbng1dFR6NnZsQ1p5VHNcL2VFRUJXMnhQOUwrcmN0NForRGVDdWVcL2pwcHNJQ1RuallcL1B0MEJydnl0WitSdTAyQ0FYdkpPQ2Z6VXVDU095XC9WcFZXbHUyVXpCWUIwWFM0M1F5SnBGQXBNN2JtQk5tTU1tRjlJclAyejRiVFFBM2pUdTgxeWZWZ05OTjlhNTZieEtGSEFDSE5lYmJnYkJpV1ppczFOajJTMG00RzhkaTR2RDh6eUpJNVAxTHAwanNNZW9yM3oxeDNMR1kwMUlZNGt1VjZnUW5TYzBhWFhBdlo5bEsrRndidkpTNmhmV0M1R2tmNHVwZzQzUU9lMzRqUlR0RVBGamVMOE9iM2pYYmR0Y1hSeldGMFpvQlJXRFpybFRocGRSWUs0M2srYThuUzFyWUhiT1dmeUpIRnBpZW1vb05HMU1vTzZHQlZhTzJLXC9uWndKOEVKcFpmckRGcjBtT3oxMStFR1pUXC9NcHM1OUNZUFFMeWljbWp3U0Z6cEpqNGJ5eHRUVDNSU1BoMFJ3SjVGakR0QW1HOW53VG4yNzE5azJMc3pKcDdEekU5aWxuNG4yS2RQZ2hzSU9oZHkydjNScElsaExYK2wxdlwvZDY1cE9KREJsRGo0N2JlaGJsUGFTVTV3cU1KZUNIN3BEeXU3NFg5aUV2c3JBMWFOKytPeE1VRjgzbEhhY2FXMjBHR2hxVDNiNUN5VVBXekNqd1VkNHZaY1U0T0VwTVBqUVdcL2Q5WUdDMG9sdzZKdkpUeVhjOXdQam9UVG1Ja284a3Uxa2hONVZTYzBkODFqOHZ6MVpDNFdiMnVaUTA4UXI5K01zbHYyZ0lneklubmw0czhnK0lNc1wvR3NqdFk1VE56YUFzbnZFbTR2bzhcL3lrUithZUtNOENRZ3l6Z082VmRBKzBDSmxRNzBpbGZ0NEpDNVp4VU1QU0Y3T2E1TGxLSXZJOWhkWkV5TlwvSnJ6VnNOMjhuaXNiVVh4Z2I5NlFIcXVweGJ5MmVPbDRkbm1QZW9nc3hVQU52cTk0aXhkcTNXTlVyNVZuQXpqTUI1bjdFbDhuQUFrWnFEUVY1UHYwUFwvNHlnTWt2dE5IUWNLelFKSlNpXC9EbkM0bmFQamxIUGJXMnZ2SFJ0TmVoeGZaWit4elF3a3BhUFE5TGU0SEtsem14WGFFbWR0ZVk4VFhweFQ0RlBhSVwvaWowMEhKUTdCNk9cL0RlTngxK0U5S3RPTUlLYkN5cGNWWU1tSFwvcWNYV0haXC9iRmVHTG5OQVRwQ2txM1dadTdEYXFnRlJwN0JHc3Jya0NpM2N5dHdKRTl2NGlNMmx4MXpEY0xDTGxhb2FLbElOVjFlanJMSTArZndadExkeHBXU3VGUTZSZDM1NmdwUk1TQ3UwalwvaWlqOUlYbjZMbGJyVk9RUUFtQ0lmazVmd3FpYzhCY0tSZ2dNaWdLaFBqbFBya0VxcDlpcmZIS0Z6VmxUc241NVlxdEd6bzU3U2t6V1pScnNEeWV1aTg2ditUK0JcL1FVMjMwbWZJeFNqWG5SNnZKYnN1MjZNV1pybVh2RjlJamlnQzFCMUlubklvSDV5TXBQek0ra1BZVHNnMXh6Z1pqME1DTWthaHIybDZDdEFjT0E1UWtRMVJCa1VNOEpuZGhNcmFKSEt1SVg4SllEbk5WOTFDbEY0RktQNFM1RDNkcXRaQWxjOHFzd3JpS1NTTWgrSEFIR29ucnNcL0p2MFF5ME9oVERFV2lHK29wZHhrUzRtQjlLK2VrXC9ybUt6Ykc4Uk5hXC9QZ2xCbmd1QUNxN0FORTdFaHhiRmdYME50Mms5ZlNMMTZxZnA1dlJkRVBsM1pVWk5ITGp2S1BZcENZbnV0d3UwejVEN3lGT3VVUzY1bG9iYUFob1wvTnhQSkpHb0RBcEg0blFhaTJ3K0tTZFRsc2NtR093TkRLQ0g4UDhcL05vaEZIUWc0RCtuUGtuSkExVFdOZk9tSXFnQUgwOGdsSEVDeUJIMUlmVmx6UlljZDI1XC9FaE10NGd5ZmhpU0N2bnUyMktsM3Fhams5RlhmN0dnRDA5ZjZhTkFkY0crZlM0TXBHZGh1Y2Z0M3Y2U2lnK0FvRkpuZDdzclU2TDZkVlVZV0VaUkFmb0hDTlpwUXdjV21cL0FSdmVtaEJQZ1NBVFhBanBablJEaTV2NGNOMjNVNVlcLzZadTAxZUZvMUp1OTFpYmh0YnVOOVpubTJqcFA1WDIrQU5RUUh4WEhcLzJQSWJIYXNhU05LRllDcGpSQlVJa2dYMzdicEVOYkwybjdyN2QrUEdZSnlyXC9wcUs5MmloTHBJQmE3cVNvYXFRZndTb2RJU1BvTUZ2d3JySGFuVWhLeFJnOEhBcmo4ckxXSUg5Y3lqbDhkZ0trZVAzODY2RE5RVitSOWJidVRUclFJQWEwYURBN0h5dis3c1JrWHlCVGlBOWhtUXZuM3lXOFlhcHBGWFhIRzdUWm5PRERycTFcL1wvVzdrWWtUQWRreG9HTkN5SlFHc1czMUlLTXZMUDhlaEpqTDQxUkJHYXRCaEpSZlwveVAzTU9rUG5DaDZYWm94NDVYb0g2K29vdEpnN0hwZ1wvZHY0cVhCMWhjYXN6Y2o3VENTVnYralZRZUFvWEtKN3F0RlwvZDYwbW15bmwzRjBNSWNMSmt3Z1ZnbjBHWGRiOHVlXC9XMGIySktKZHdZekZRRXRjOXVUY0pkTkRvdk1VMTQ0UXlVNklCZkFsUFpWeDFCRmltXC9ibm9ZczM1VG9zT1JDZXlWTXpwZ3ZzdTdPcE51RGlqcUo5VGhnTVJra1BzQmRJcHM1cUxNUkIzdkI1QTQ2OFNcL1A0WXM0WjNvc2hyOTNWMEVTNlR0NUttRjZOV1Y2MklHXC9IemFuNFVRamdzakdPbENjcTlXeWpYaVlRN2laRXpiRjRvMjJ5TEw0MCtlT2VxXC80anpHYjBZZG5Pc29mbWNMT0pRRCtEVjJ5cGpZVGpWSnZPUU5YbmxFQmxjSVNhY0hoSUJ2Ym81TXVXRkNhVk5FVnBnZGN5SmgxXC9uRlJrS2ViR092eXpXaHpRc0k1Ukh5NEdONitNWGNycHg0cGpndkVpYTl6cG5UdWR6V1E4dGZGdVBqaUkxM1wvZEM4aEd1R245S1hJV3lRaUtiSW9jS21QKzRURndVbWVTODZrZG1cLzkzUHlsVmkzRzRCNDBsYk9QbUxjXC9rT3ZvNzZKME1ONEhCNWJ0dlVDT2xEd2dLejNyN2pUTDNwU29BV3kzVENBUUl2ajVnT3RqQWN4cFVoY09IT3A3ZHpGOGhxbXFtamhiMGJieHhpdTUzSjVoNURhZzZic3AwbzFDOTN1cEZQVHB0Zk1ya2JJblNHWjVHMlR1b2FhdndiWERTK2phTmZsV2hVV0h6SFMyT250SlJsNGJoYmdaYkxjZFZtbys4ZXpZTVUyY1kwWVpnNzNvMFV5ZnFPSUd4VTNRQWxzMFBTMkJJS1hmMkFYZW5xZXltWFVUbUpnODJnd3ZYZWhzRDZLU2c1Z3dFZzJ4MjJqeFZlOWE0S1A5Y0RkMGZyNHJMeEg1WEJ1akFuRlljQVU2bjdiTGRzbmUyNDc5NDJyRzJXRGtOWkcrVlhqUnhVQlo5aUtzdURIbTFiN3l1NlNQRXl0SUpPU3YyYUp6bXFcL3B4dmh5WTc1TTdcL3pJZ1VcL1crSzlLSnlBWVNTQmpFaDA0V0UxeFJxUjdwTlFBWlVteklzbGVIM3o5enZSREdSUitmNUxoQThNWnpmRWNPU0hYelc3aU1TT0FPMWZybEtDeDYxSGpKWDVPM1pnc1lLeThqUmdIb0FiQzVpWUl6MGVqRWNDTjJMU2FtSjRqU3VnT0gwdTB2UUJxQ3NyVWZlSzM4VDRqdE8wRlY3c3o1WlpRckJEaG5nVVwvRW9vUlhpclpvbnk5XC9vVFgxUzIzN2oxK0ZUeDdzU1hcL1FBWTM3OWNaOWxId2Q4bFVSZlVaQ3A1aXcrUFhjdHlabmRnMUw1Ull1UExhUURSakwxSFRNdTE4SWZrOFgwcXVJTGhoNzZKZEZtREhKZDJJNkNsdGkwUWFHRndweFBnOUxJQUNrallQQjh6eVErNHlDb2JtRUNyWVVlVjB1N2FyOExGVHltU1Z5Y3d3U1lyZE5Va2U0cFd4S1ErTDF3dzZ2aVVRXC9IYUZ0S3I3U1ZpUDNQYXRucFZMSzEyUHpVREFRTWxHcHhZUWEyWDdsS2tXaENcL1pDTDIza1FZVXZGVVJSUkl5N0ozNFN0R2V1NEtkeXp1WFcwTzlXTnlDZnZybG92Y0RDRmF6a1M5RnZOdUF2NmVYYXFTbHFEOXMxNE9VZDBSOVkremladHZVZFhYUXEzSTRpMlN5NEZrVEx5bHl3bThybnhEUk5CTjZDOEp1SEJOZWsrUVwvcFdOdndIaE1HNWhYQXp0MWQ2WkxQbUoxMkVhRHpnTGtqNXZFVGx0SDNrQU9NOUtCWnNNQlBmZWFhejFBZDRcL0QrN0xBV2R3bFhmZURlM3A5aVwvQWdSYnFTeE5LOG9vTGR2TTJDT1c2TG1yaGViWURBeXl6aEJiS0JvOE92XC9ocTl1V2VxbjVmVEZjK1VLM1VNUGxjdzRHUjBVN25rbmVwY0o0RDBPbFwvOEhoRndvc3d5ZHVOdHBjZlFkb1wvdmVZWk5JSnppV1JkUTFoU1BqRlBGa1Y1Y1BSWEpFZ0FYVEk5YjV4WDFJS0pYMm5EV2hGUkpUWU9pa3habENqZGxEQjQ0V0pjbjhcL1ZlUHhCZHRMelUzbVlzT0lmQXlsUzVEeVgyUnI3YzkwTm9LY1lyUWZOQUd0ZzNkbmorTVliTW9GSndzVzVyTWNPdE1LTzFoSlZjVWpFMDM1OWJyVVY0Mmd1b3djZUhGRlFwSENDTndJMXYwV0QreHVvRTQzdmJkRkJBVDR3anNVa3NoRWFuNldLVTJYdXZPSUw3d1Z5OTY3MmdTdnR3cm5XWWliVk5lZk5TZDdaVEhlXC8wYUpxUkFLXC9zRE8zazhjdVRzQkladWR4dTkxT29tbmhaUXBHQXYwZ0doaHZtdVdEZXRrb1JkRU9pUUNDamdPZnRiZVYrZWhCdkpzazhUTDJJS2tVVlN6YUF6RGp0Qzk2cmhpN1VmK1d3bmdTUnhTalRySU9rY2ZsdmFaXC8ycnpUNWoxMlwvWnBUSGdEQU81RCtwMklESGdIZmRhTkxqYlwvYzJ0UDVIS0MwV2ErWnptWEF1dGRMK0xjeGRWVFNxUEVocUZhejF4MkhcL21mQ21uSGR2VXhMMGs4eCtNVlRWNTVBZm9zV2tHdWJTU21tbndJZHFjZTl6TFZHbXpDTmJoR1pGRFY5UjROcDcwb2RWdFdKdytuZFQ5RE9oRzF6Kzh2dlh3eUtrU3dKZUhpYUFnd0tzc1RRazVcL1BsSUJBNzVzN2tkMzBSNk5hUU1zYlpmOG1pSEljOEI4dG5qY2NHcEZScWxpVjNGTUM5MHVQNFlzeUU1a2Y0R2lrVkU4eUtvcURqeEM2VndHV3BYZEVxM09SS0g1TytNKzNFMU1zSzR3ZzBDYWl4RXA3REZncDlwOWo0QW5QUWhXc3JiZlNZZ1wva0lMN05iZ1VhWjRtNkF2WXl1R1o1bkwrTEkrd2RZazlidWtSQ29iRWgrdVpzUzl4NUUyc2lST3BiWkM0UEtCait3MmhwZ2lcL1orSVI5ZFcySEw0MjR2SjJSckdZQzNDa1JXbUszU3VaZXE2ODdoZElDUEc4akRoN3Zlc3F2RTFoTHFTMmpDWXZvXC91UzJpWXoxOUpYeWdnUFhaU3ZzU3VtTVoxUE1CSU8wMnR4bW8wUTk4eGNaSVVuR2orSlwvXC9vdVIreVNyNk1mendheFNpKzJwN2tGU3N6K25sTDlwMnFlVVBHMERLdUR0QWNLSlNZeno4b0srRkxlV1RMeWxwb01OOG9UZ1M0ZTg0aWR0ZkVySXJyVDJCcElUU1pEemFNNWdPT0ZGV3N1dzVseGI3djdRRlpONE0yOUdFQmpURlphV2FHR3dnbjJMd2plQ3hpb09acGw3Y2pmbmdXanYzYlpyck9rSnRWdVwvMHdvamFvaHdmeFNGUmVXMWFFWmFBQWFheEQzS1BUNHpETVBic1d3R05UZUV1YVYwc3NBSkU3Nm9wSVwvN0VYY1gzSFwvVmQxQXp3am5BbFBJWWFsVmxiaWFtRHE2a0EzTHVTSktBYkRoUVlcLzQ5VE1mZERiUnpWbjRTYkdSK2c3Qk5GTm1wcWJkTDRxOEhVNmRnUncyWDA1Y2pnVjV1TW9XT1wvXC8zdFZVTEVjeVdMd05JMGpMeHNZR3ZzZXZUalZCaUpPbFZXMnNjeURtMVBHSUowNFRsSWp4NVMzem43WmViUlRwam1cL0R1dXRhNklvSjJxdURaMWpmcTZnMStBV3lPVW9kd2tBaGU4ZDJseUZXUHpidG1jS3dqRzBDbHJPS1RwWkc4cloxaDBBZUxPcXpUODdIRG4yZkJGNWRFcW50UmZqZE5wd0xaNnQ3b1lkMTRpemtudjRUN1JaSGJ1eGtJWXVUZzJ3ZkE4S0kzYmxVMEZJSTJlTk9xR1VqdHppaVpVMUxWenRYc3F1cE1RTzIyb3puelp2ZXNMS08reEhmdTMybUNWOVwvaFwvU3FzWGFyRGpxTlBUTHFcL2RwK1JUZlBmOE9MN2tvbG9YNGVIZ0J3REpGWDhoRk96UFpNWDZwVXh6WjZITHF0NHpwdCtQZmQ3MFU0OXhmMU9cL0FCUVFMdlBNWFdKTFVvMGRzaVd0UkJYWTBhRWJpZkdwREVSWndEanB1N3JmWHdvTDFMQnhjOG5FTEdlYW9LMWpFUFVnMFhzcFBQQ1dXdzh2cDJBVUdvMFFINFZKOGViVUt0ZVFPYW5JekFkQnZ1bStTR09ZODNxeTFrVkhSWk1Odkt1eW1CYU9zVzhlS0NBVjBzcTluZmtDWHAxUWZ4T21OWHpLQ1lXWDZSaXVveDl4QWR1NDRIU0VuSmltSFVjeVVKYlZJV1NwWG11aGV3cjl2YnV3VENxZmRjSGQxZHkwNE82VDZqT2h6eEJWY3dDT09sb1JGcWF6UDRFNmZkd25KODlvWUVia09nOHZOUVNIQzJoYzNUbWJJYXlRbGpkZU45ZlwvbTdWYXpYWkFOODBWVGxpRkxiZStkRlEzNHVDMkdXOUNJWDBFVWI1Mm5PRnN2eFQ5aGpibWwyeU5Mc0w0aThWNFh0MDA2MEoyaExVR2trWjhhdjF3amhpNTFDa3BPQUQwM0lhb1k1SEVoUHJZTlVyWVFYZzhZS1NiaW1sTEQ0TFpJelpJblBnWld4eUdhV2kxTWIwS2tEQUpMODJpU09ud2ZMb0t2bEtYWUpFd2hPRUI3QmZNNVhVV3NDRm90Q0M4K1JRaG42MXduVUUwb29aaXNad2o4VjBKdUFRSE5SeEYzWm5lR0M0bys2VzM1eTFmMmtxZUwzVUtEY2pzcnNKUURVXC9VV2ZiY3UrazFQMVwvM01NQ2JpMmhHQzZhcVByb2hqTDlWUWIrZkZuUDVackpwOFZxRTZtd3NhUEhMeUlmK0p2YmkrNHRhNkh3cUdNRlRSaFM5bWF1XC9cL2hEM29lRDNrN05xN0JkdnJ2T1ZrTDNRZktDU1FiU2wyU25oUVFHUk1WOWo5Rk42eVZLNjVZWTNoXC82cHFMYVhvbUl1b1JkcUpjZlI1MmlvYzRWT0JFMFp0MVB1SXJ0akRmeEJ5ajgraG5id1pcL3gzR0twdHdCRm8rODBzNkVqbDJzOXF6Y3ZqRCtrSjBFYW55TG9vYlVzaFFNUk5ZTlc3YmZ6djJleUtaNjQ1eUs0UkR0UFdsdDVGWjRxaHkzSDZHXC84ajVGQU9aVXY4RGdkWENpd2pqV0wwamppS1BhbVByWVwvMXBKU3dcL2QwM0FpUjdwbmtPdHFlb1k3ZkEyZUJRVUJFN1lPVllMRjUrNXgyWFBFYnU1SGQ5QXNLeWxYekViVWd5eDkyS05VWlwvSWpRQVZCTXRaMFwveEdZSk82T2JpTitGY3h6T0JyenR4NEVEZ3RzcHh5SUZpbktVZFZKWXJtQ1NOSlwvWTJwVkMzdDFOanNaWFNLOWM4Slh2UEJyZmN2TWFIMUNPclhiN05EVlJHR0k4STl5VndcL2V2bUVLQlloSUMzanl3d3ZweDlIcmdCbnBXanVWeCt6SmlYTlk0b0w4WEFBUkhTMFF1Y1NLc29tUzdVY0tmempMNDhwdE4xR1ZnODdicjZXaDRHWk9QME5YMXNjMlVFbUZKUDNkdXBVbytxNnRYRDhwWXZHQTgwSGlENUJiaWhNcjBnQ1wvcnA3d3VVdnJDM21vUHhzZmRtclp2UDVlMHN6dXkyK3h5UTNCXC9VNmkrOExoUU9xdTRQa2IzWkRXd2R3WUlHcVFDR1RrTXZiR1gzTHU4b3dVazdYQm1CaUg2SlVpXC9xeHVKS0l6OEpxNVc2clwvQmN5eDBDSUlZSzdVRWlhOFF2STBMZHkrdWRyeWl5ZVVSVEcrOUF0NXdDeXdKTUJ6ZkszNDdCYXJcL3lZRHVcL1BtTlpKOE5WTnBYYmNUMW5nZENDN2VVR0FkaStpcWdwSnEyMmVmbEt5SkVxbWJVdHBnTVFWa0JTeU1WK2ZZT05wQ1NkM2k3bTEzTU00YlVZVTJcL0hDZWZQOGE1U2g4bnc4WERYeE5WT3IrcFRhTFNkMFdCZ0RteE1ubnVucG93eGtKZTBncnZZcFN2Q01mbXoxN3d5dDVVY3BMVW1GbThiWVwva3VmblF5M0djZ210YU93dlFMNWo0NHdsa1FpU0UzbTFpTEtXaXBZQ05rNDJObU1qbk15QzNsZmpyalllK052UjBqcW5tNVBwRStVcThTRlBVYUhjSHQ4aFhhaEZCemwwQmt4QUIxWDJnSVJzUWR5V0pkT1poQVVoVHd4c3BVNksrdk92QXN4Rm5UMFZLUnlsb3VYT1pCMUJmem04MmxuVGRkcHpiKzFKd1JpSU1HXC9uNVA5RWw5ZlVzR29od2pUSHRYMHdXQ2VuakNTZTBvSHppTEtRRVdKaEpCam9pdUZuYm1PSWZkRzl3NDluOHVoMWZvXC9BUGR0Zjd0QnpUVUQ2bnJaSkxTdVFiQXBqdFNQZE92ZDZBSEhcL0swN1wvbjZpSnFRcHFnclwvVldxT3lLdmh4QUJHN1YwSVorS21FSGUzeVJyelg4QkhZanB5bTN3dlhyZzErT1VLS3o5QVRacnVncWxYY1JzR2hSRUN0cHBqd2xUMFZrUkdjZzRSYjlLc0VYRThEWXd3VVluaDFlcjFOcVBJYTNsQUFPeWZyVmRMN2JmdGlWa0VGRGVNdmsxYkhpbjFZTWdjT2pTK3ZmMnBhNHQxaDAzcU5ROXY2dVNQbFREQ0lBVGRXRVMraSswMndcLzVcL3lqanlcLzVPdkxETjR5TWFFdnh4UU95VmErSTBuQWV3cU51NzNWc3E1eTVMaGFSYWxmNXRoMWJYTmtuUW9YbmdkRlhMS3RzVTVrQTgzOFwvOXBGRVRNRFV3ZnU4T1dhT1dPakF6RnZONHArWGhcL1dYTHhoTlR6eWtFVnZZbVFRYVBTUEVaMFwvVk5xSmEwVndhUzJCYVJzbjJKK3V6cHZ0SXBta1JXbzkzY0xPZHdXbEl2MXNUYUxoM1BXSVVIR3MzY3lEenJEbWdMeW9rOTV0YVpHWjhWSEhRdUtPQkttaENyR0FoeEVFVThkNTk5VHFTU0xnTEg5Y3VncnRKbEVVbjhTRkpLM0NBTlhsMDBValNHVlExOTF4eGFibDA1QUc4K1lGQXBTd3NlV2ZuV1BTSlwvcGlnVE1tZnBWajI0VjgwOFZPak9WVllOZ3RaQTVSVDJHWlwvd29ZVmhGYjRVbmpkM0Y3Qk56Q1pFc2xcL1Bqb1doOXdrSTdSVlJRbmRxNURaQitUQWlLU0JMcW1IVmVzOHlYbHg2UVNrckZ1SVd5amptWkcreVROR3VWZG1LV3ViVXljV1duTHhCRUVyVXJrUXNZXC9vTHpibVB4cVVSVGRac2dKcG05VzF3UEduSjJOV0Y0ZDRsNDFtTVdXRVlZRmVsR0tvVnhWZ0EydFlwM1p4dDRTbUhRQkxuVVI4d2twaUtxaUFXQXFPXC9zQURhMlZ5WWtXZjhKYlwvK0Y3ZjlDQ0k3aVlvOWY3V0h1NGhFY2FxN3dWTFNSTWIxUDdBMzZzV3NTd0lhcDI5VTNVdDM1d21icnpEd1VEY3ZPYXBmNVwvTlwvRHJJS1lSelFOdUVVSjU1ZEpDTzNQRWJZOHhcL0V4TlFpZ0ZwazUrejVLV2RHTUdDR0VYemdyWU8wdzJST3BsZzZtUlpENG9CQzZtbzg3RjJPeDZQK3hEeW1FTjRTQ1JWa2pNa1k5Z3JEOVwvMjZnVlR4WGpLSzdKNDBmOVdKUnJrd04yaUNWbFRJTm90bFVJWTdkaXJUempDWERjK1dKSGlJVnB0OHhDS2ZTb3lkam5ubnRNSUY2K29zeXdDZkdENGdhSlZ3RjR4V0FEYVdBM1NielpCXC82dHZDNFlncVlPUnJlTGNhTXJGK2JubE1LU3djN1NZV1NYRXJBMDh2V251VTZnaGgrMlM2d2YyRlwvMTJ4TVlPNU96cWg0TXdrZ1ZqYkJobWIyOERiV05ORFBiTkpFM3NKTDhHZmZETE1scXRCYWlxTlA3blFXZVwvbEMyVzBpWTluRFhCWEIzYUo3bWc5UVwvbnlDeDZuSkhRK0ZoWWZndDdrSkh3M1wvNllvYlJtblpVMnRoZHFXT3dTdWRoRDlEcm9mMW53K0dtV1ZOM2VMMnppblo4TFo1aGtoRkYySzZtbm5zVHU2UmtwenprQlE2TnBcL1pLVkx3ajJOTDk5a2lrTkpETXBnOGdXTnhlcU5TeVBrYW1BZVNTeVpod29PWVJMaHJlV3BFY2xqYkpRMEFhaFFyZWFwS0t1S1poZUk5VVVBbnZTMTU0N2Q0Y2VRMkxXNXh4UTJRdHV4cWswZFdQU2dDZitYRUtUYnJXZXJDRTU5bFwvZENRY0pvUjhWSElkTVBBWmFDYkpHS3VCa1gyZVE2Z2dLNEFlbXd6cEt0ajdQQ2hmS0hsOUhvazQ0cGplV0tzemw5UjY5RXowZnpsRmFDV2RxaVNkN1NVYXlyVytFSjVpbmRJc1VTcU9oTmI5WVVJYVorZHdrcUJxUXg1NXJvTDlvdzhMallSVndPckpcL0Z6aUR4MjZzTHpkSnlTU2NPTjVhRWJZTU9UTk5oY3QwMG0rdVBMMEs3ZTRQN2NCeE9aVmFBSUI4bm1CR0w3YStWWTV0YXl5dGhJZVwva0lXVnl1ZlhYOUNrd1I4UGVoN1NFbUZ1K1VUVDJsMzhSdm9ZSDJEU0RGTVZ6dDljOHRBNUhmUUJVZ2pQVHoxb2h5dHIzZFpEY2hOaElUYmZqb25jZlYyak16SGNcL25FTEx6VGE4TGZ1YzkwRnVLSVl6ZVl4RDlyXC91anFiVElLbE1OSGtcL3BxcmdkNEpKcTBmZGM5WmxQRDRVZmZpMlh3MGtDcW5BSG13Y1B2WjkyVHBzR3FKV1ZMZWg2V1hGZ1E5ZDdkMVZ5SDNTYVNETDhoYWVqXC9hMG5EQUJsQTZRVjhNMnROWHVZd1RpYzVPRXBHS2VmdkR0T1c2d1JOYjBRT1wvQXdZaFpSSUlCTm9Cak1hd1I2OW5QXC9zTTQ5dzdiOTNtY1lBWWlabDAwSGI5czAzbDFXaVE5YnAwSkxKOU94cWxSWEhBS0k5blVoUVlPZktRdTFPbnBaWnNhQkcxUFhUXC9SWDJwQ2ZLOVdhT2M3bThweU9PZGV3b1lUU01cLzlaKzJCZU9EU25mcVBtaW9BWEpXK29sYTN5bUNJWk1ISkwxOWFOR21hRXJyNDJVdUJoYjdmVHhiSkFRK3BkVHpwV1R4WEFvXC9XMlhwRzZHQ01TQ0pMMzkyUE8wM2wzQUtlblpOcUVzMWFFVmMyM0tZRXVmSHVxc0RZMDBSUWRnbFpvTXphbUppK3Z6azJxTkVKS1wvWlFGNmx6YzRSMDBySXAwblZ4VGxZRStIY2hLWWNubzBPNXhtNVFvdkdWb2tFQzNzVFUzZG5PTm5kZFwvc3VDSUlGNjluazFuM2pvMzhsbFlmXC9maFdScjZKREhOeVVSdnplb0JSQlErSEJBd3RXM1hHUWlmTjM5R3Rab3RaNkExek00S0xZSTZhXC9sNEVyUTgyOEhmOWlPM1VJVUNiRGVCS2N5UGZ3ZkswWENRM2p0Wm93V25zM2R3QllZNkpaS0hQaWhxOElLYUp0dU9KeEZLZDRIYlI5Q0ZqdDhtXC90Yk5xalAyeXJwYVZKRjRrdzd3VnJ3czVyTkdUUUhES2N0bFBTTDlCZlVObGkyaGtabytITU50VWlzQlRkeWl6d3BoVFB4VGVGS2hTUTJDTVFuOUJDVUh0TnZuZ3VqZlpTTytXN2hRbXBmVytpUnMwQ1NRQW1VSFNlMk9lTGRFUE9vR3hnS0taeEVqbmxGZ1F1SzZJcUF5alZIeTc3RFRBdVhIbDE3WTkrRzViTUtMQ0lDeExpR0JScjdiOXQ3dkt3SldPU0ZtT2lxRXNFaWFEQzliTFFKTXAwdmc3Wm9nTXBRRkdNWXNrZld2VEVhV1FYcjNuSlp1dUtnMWVidlJFbjk2cTV3cDE1bGVYdXFVOWtqdGMxTjBNWElJdlwvaFpXRmlDYUhCUVNYSlJzalNXWWVCNCtkVVNJZkp5ckM2SnJ0YzhnaDdiRHZyVXNMelY4Mm8zaHBRS3gxUU02Z0JlRnI4dThaanJ5VDVPcXpTNTlTa1ZuMjU1XC9DVVM0dUZcL3RQcks3SjJDOHdUNm8xOVp1OG1FTTJqWHlGVk5oamw2T2hpc2c3WElMR05VWTgrVXg2NVZiWEp2bWVuanNsY3E5SVdQYjEwaXIwYWZITFE1bFZOK0pKRVJwVitsaE8rVU04ZmFwNXR5U1lwNEd5N0pSeHlOdUJORWZtWUU0Y05zdlFrVUJyc2RZVVZoNjV4UnVqTmZwZFcwcDVpeHdPXC9WQXhXT1lDcGJSRjZBaDFvT1JHczMwTHNINnhxVkgxUnRYN1wvQ3ZKenUxT1BUS2xwU2VoSWtkS1wvSzJ2TXB0N3Y1bWNSaVc1Qk1ob1VjU2lmWGxjM3M0eHR4V1JTN3hKalhycFNYVERaYUFaVnNHUk5udG9sb0lxR3U1Rnk4RTMyaElvYnpLdXJMeTRNOWdPd29IRXBWUnVxTStvTjJEbVpmSlphXC80RXVRMDkyYUVUYnJRZ3ZWOFozSkJsR2Nob3ZwQ3RZNEJJZjRWbWtCczJrOUNUaHAxbktwYXFVdW9VaVBrb01sRG03YWVORUg0VzM4QXkxZGlPT3MwUitQWmVzdWI2TlNjdCs3UzI1ZmVJQmUyNm9tUDBTNXB4dktCazF5TU8xM0RYbE56WlwvaStoZDc5ZGFSNmV2K0ZHZjVEQWdFWVR5K3NaRDBsZ1wvYmtkV0hXNHFxQnRhcnV1b1RxY1I4dHhyWTVneWprYmNVMEEyZmpxRm5ldGpGWVZ3SFhJa2U5SkZJcUh4Z3pUcEpKRVR5NTdQaGxTYjR2XC8zSUxvZHZLTjBlVHVYM3BGdEx1SmUyWEtnVkorQUhQbTNBd2VMZXdlRWdHS1RiWWF0bDZza1VURVZnK2cxN0JTeUk2b1Jxbm5MQWVxQjA2QzB4M3NkZFVCdjBpbGV5c0NIRWIrSGRwVHRUYVhUNE5teDFSbzJDekpjODJPUkk0SWNtaUdwVkgwV1JnWEN6UThzNEhCR1dRQWRUR0ZyelRpZEJZXC9vRHlSOE4wUEtPWmpvODB5NmJcLzlDOENnSEJXQW02Umh1UGJWTWNLcVRzWU55ODJhckNUT2Y1Q3VnXC85ejgySFZsVXprSWtSakRIdUw0YXB3XC9cL2o3YkNrOWR3Nkp2YXF1UVJDdEZFVXNzUStubU5GK1pDTXVxeHI0WHhpTmE0Z2dWNkU4YTlHZlZHQlVhZ0dPSWtraEk0K3RZaVVTYVgrT01VQ2FpNmhWOVlsOW5WeFhDQlNtQWE1VXg0bHVCN0VOWnMxdTZGNkJvd092MzlGZ1kzK3FtXC9JMHMzb2VTT1B6ZFZ6TTQwaUxXRHJSYk81VTIzcDVpRVAzeG9qQWNEcUJEcHdTbjVXOGp3QkVXd0UwNFRlQjVGYmJGMVNYUGdqTmhjMG4rcEdId3JOMVVBOTE0N1wvcVZcL2tiT0dCVFhGNnBXRjBXVVVKWkVQdGs4Y2NOWXh0QURqSDFub0w1alhYT0RJcVpoV3BJZE9xRDhBdFwvY3llNXFEaG83TnloUTRTMHdRbXdKbDc0clR5WEZ0RkVcL0tjWnNHRHhuQkY4WEM3VHc1SlVPaTBTMDYrd25zSlBrSUlLczhOMFE5UE1VUnIxTVJ5bjEzM21rcW1rUlkxV2d1RzhDK3NzY0RvNkgwOHBPMTNOYXN4VnROaFV3YzFVTU5YVHMrVVVtMjVIYkJmU0ZLZ0YzYlMzTDREWUNmZFcycXJZdytrVyt5V0E1SURYVHIrWXUxSnd5dmhiaVpDWUFjT094U1RnVWJCdjVyN1d3WkllRHdUcmloUjBRZ3pvTVRlZTVBeVwvN2pnOXVReDBiWXJwUmNIYlRqRCs2K2lSTkpmOERRNUc4NU0xXC9tTzZZRUFHVlJSVnRuUmRkWXFHSjZlU3hyb3ZoKzlUVUdKZmxjdzBZcTNrNTlvcDE0NGdxekZTVVZ6SHZKRmVKS0ZmRmhGVW1IZENpYjUrQ1U5QVBVaWVrakZHd0pcL3YyZ0VrSnluVUtSeW5VTHc4OFgwd3FGT2dKenR6V25mZ1ZcL01FVlQ0a0srb3d6dDJaekkrNWxyNVlscDRUNWxPY3BOTjBCQ3NtakJqU0tld3VaSjE2WWFuUWZTbWpWOFBOOXpMemFTS0toUGdmQmgzTWFwK3JnR3hUWWEySThrbzdhMVVSQ0tBczlON3JJUXJWNVwvZVBtejlCMkQ2SjFLcWJ2YUxGVnBEQ2hsWHJGU3BLMk15NmRpSWU2QlVQbEMzVFlXbXk4RUJ4Z3d3Z2RIeEx1YjY0ZjhyZWswK0F3TEFJaGFNeExDNkF6MHNFaFJrZTRpSUFiUk93VGgrMzFJc04zTkxFWG1VdFVVNkF6NDRIalJTaCt0eU1tZEg4T2x0NWQzbUdzQ0dpRmd5ZzNLTnJjbmNVRWdHXC8xUFFKSSt5d0tTZGFycjdUaUkyQmNiY0l1dk02ejNNTzZBUWp0azdUWUtMNytkMmplWGh3QzZRTmo2Y2Ewekprb1pBMVdTRDdhMWg3VUw1ZVJhN3o1WE53amZFc255QkpaSURvcHd6SEJUZjFmampMYlF0YU1WRFhFOGRTQW1DQXNvK1NsQlg0RGNnbHFcL2lMMzRkZW5tdUV1dk5sc2FJRFNqQmhRMDlCNTZ6aElqZnFCcllmUnlcL2paZjNGZXFEQjFwVnZCcVNLZW9VUHR2KzhhR08ybnY2TmtmZlRrTG9SSFwvbGxxTkNRMnlJOXlqVmdWUHR0TDV4TlNKb0JVZEkyRHhrczloT0JtUEtrTGNyNXQ1NVBJcVE3SFZOZUQ3VUd0bk5KVGR5cFBVakpmeThqc0FINmtKMlhxZGR4cmk1YTFNOUdyTTM0aDFEUWg2RnV4cFcxa3I1WStHbW9oOGdQaENLQkt3RjFLajZjTFZQYUhqdmlsaksxU2dNckE2MWtOeUU3b2tSbG9rZVpDdFl5SUFicnFNMHI0a1FjemFZNkhaamVhVDdOeFd6bGVuU3FtOFpHWUdsaDc2ZmNMcVwvcjMrdHZQSWdlcG02c2c4UExIUXZFaTJqQUEzcXltMFlYdHE0ZEMxWkxHMkU5MFhjRURWSFpRV0ZDbEE1eDY4MUJvMGN6aFdYWEM2QTlUUWJPRGM1aStEZ1wveGFJOFwveE9FZ2hScDJXYTQ3SmpaXC9rRWhLNm1WdHo3Y3FhaERSSzhvT1h6VW90eG95VFpUMHJTSDlyb2hNRmk1cUQ0UytrdFRGSmRjRnBGcU1rVW9NOHRKRDFMM0JoOXhXRWxiQ29uUHRNN1d4VVpiaFZZQldBTDh0clF2WXhMM0w1enZrNDRKNUhnZmp4U1hFVWxFWGI4dmlTM3l6czBEZ1VrMXlSRklqSW43OGpqZHpad0VoSENTUm1rdTM1bWFpM2U2bHl3S2FCZE9MdW84Yk9kMzRSTHdESFQrWE5wa0wzNDk0YitYRkxuZlBucjlIUEVzQzN4VGRhaXJyR1BFMHYrMDBJczJuMWRXSVIxNllNODFnU3JwWkhKK0VlWDBudHUrR1pxQUJFQVYzbWpiOWxkWmdvZjFLcGJ4RHNxVWgxcnpoVmlHMEluZGUrcDZ2azdRbTZBeFFBSUU4aGdsUmdhakV5WEJVdzZPM0FcL3lVek9VTmJyTldxVXBcL09sckpZZ0NRbnFnbWdYSkNLMUVWTEoweXRzTHYrYlAzQm9zWGRYc3RqU0xxZHJWaUxcL2hiSXBaZVFuVDYxTUdWK3g4NzZUYjJNS2pCRG9GTThEbHVCMFhucXh6aHk0TFM3SFlFMW1JNDViWjFKMWIxSXFzZ09ESVwvYWxXRFwvUWxycTA0bkNzZ0JSUnlzdFpyV2NoQklTRk45ZW5zRFpCUTluTFwvUW96MU1aWG5ubG9mUDZZbjNpUjRGanBDckhQVFBReTJ3NGJnaXpldWU3Z0d3MzJtellvdzNFbGE3R2R0MzhKNUpQSXVWdlM0dVRFWllyeGdSckhtYlZRc1Vmb2F0Y1BcL0hrd2hJM2pYSTZmYmtVRVE2UDVhbnhLRE1hWWZxcVk3dGxRanRDZVB5dEl0T3pqWnBXbWpQa3NYRmxzSEhwZldnTVlTRHVYU0VHUFNDNFQ0b1dMcG94aUVpYktjOTVZMnRKZ1VJSmJteERrUlwvZDJ1UlpPbVlFckp6MHQ3QUtrWW1VUnVVUGxZY0hlNVVyTVlKSDNOcmJZdDR2ZUZvN0dEekc4eWg1V3hSTGNQc0VRT0VmM0ZCMllNYWhwQ2JCNE9YbnpZd0Q1TUlnSjJTc01jNzdTenFpXC8zZU1HYTMrRVU0dndjb1B3QUJjOFpZejJQXC9FWFRvNWJRTDhON1dzaG9IT1FydE4zVWdCWHNMSlVuOEZMUjJCSTRYTDNYR3V4TnFiTm9EbjNqdnp5cFZkSDNkWEV5eEo5dWJhSmVsaWhyaEVlcVFOTnFjbHNscG5iNkpWZE9YWno3VCs2REdueG9BcHJcL1wvb2tRXC9KWVBRbFJPanF4aER1YmFjeDEwdGYxSlVpanU1TGljaXJFQmo5WG9JaUFVRTJtZGVLSEY0OUxzWWNXTW51blNaMTN2Um5pSGhaZzh1T0VBcEpjckc4UW5OR3VxVHJlRTVTa0IzM1VTaHErU3BzSGVHYnMxUFQ5ak56aXpMMFV0SitzUG40XC9hblR2elJsSEF1VTlCQUxLSzBPYkM4TEgxVkFzRnZyRXRIVjg1UnNxVXdoT1BmMFJ2aWV6WXJIU3R2YVpDYVl2RElEdlZHMXg3K3lBWlRDcnVBTGJhSFwvVnZcL3FMWGpaR2dmcmp4MzNOM1FCVUJtdFNMMHpYckZiZXlcL3RMUm5tcG9RaVhcL25PYjV5ZHFzdXZpcXJVa3RCWUtHWVVZbXBGeGxDb0hhUEhUSHd2K3REVDZFcWFpOUtRcDFPbTJlamdCRVpudGhPUG1wUWtZdjNqdWxMMlljeGlNWWFuZXdoaGt1UFY1dHlLZDlXQjZIczBjNU5mS1R5WkYrdUtwWDJpVmQ5MlBrR2xqamx4RlZaSVU2cHRCdk85amlpdFpnZjNtVndINjZsREJkSldvcEdnY0hwamRmT2t6ZVBwZ2RteGw2djJpYk9KTkZFYVVkTkV3dHJ6aVhkN0VGZ1c4Tk1KOTBYMnFqUWx3dHYzWGNFelRDYlFHOEVLVWhTekNpd2ozeTlFRjF6NjczTzNMT081bk1QaGpwUE5IaFVmTzU1enJxNDQyMGRxcTFHcmFwcno5OFdSV1lreHM2XC9UU3lxeFZwYTZnWG9ZUitSWjU1Umg0MHJHeTlYTU5CS3pCVnE2MXdURG1iTitVZGpOc3Y1Y3pBM215dVFCdmhJR3pncVR6QmhJZVwvUngyOVd0RVh4SE8ydnlic0J1UkhtdTNQNGpleDFNMmpNakJObkl1WkxRQXBHcWRuZ25QNnpmQzhJOUROUHF6UkVQOXp3dlJKMkR2NzZ0ZHZQaTcwZVZDajVYaUc2VGdFeTZqMnQyOGJxYU5mdlJTaUt2YXM2QnlFR3F5UjdueDhYWGtlOEJ1SDQrc2RMRGV2cUNqRlBlMFpFb0lZQURpY1F1UWxiSFE3d2NzWURLMDZmMnVqXC9Ba05lVXdKdHNOUjRYVVwvZmE5Z1lcL29IQjFuWWZjdlNMcjl3NVpYWUR0cmxWZEtrMTg2VHgySjRVTERZRUJxUkFuUjhTNWRJWjdjamZkUjNMZGhuK2ZkUTljcWNRUndUTzRSZGFsV1VUbkdNYndnbWtLU3dIY281YmZOUkpRT3U5UGhaNnRRdEluaTA4RnVZbGVyR25cL3NnVTRFWWV1NkpTZWg0MjJpWG9weHA0cURXMkNFcGw4ditGTGlkK3hJY0p1anlqeWROTExVYXoycFQ5Z1lqN2hBT0tBVWgwU1JraXBZMVpYSDJmXC9CdzhRNlh4U05rZ0tBOGxsT214T0F6c0NPaWZ2VjdnRFpRZnoyZmZMbzhjZGZHdm5VekYzTzVFYTlUSzBkVU1EV3V0OEE4OFZYWXlKa2hqQVhCZXBHaG8yV0diTFwvWGt1cnR6eWxheDc4T2lkWlZWejN5Y1RvYSt6VVpVZlwvQXNOUGxLNkdlXC9KVE5FcHdGbVhoV24yR3E1RWlZcEIyaHU0UWpvQ1FjMFg2RUhuRmxOZjBONTRjbjJpN3QyN0g1R01OVUxpSUFTQ2dIdWw3Y0lhM3pDU1Q1b0ZpeE5kVStSYzVQQWdSQlJNNWd4MnM1Y2p3emJRWkttTjI0cm05a2hoem9pdjdXWkdZSG01YUFobjFCcE9TSlp0b0lCSHpJQWpaZytcL05GMFphZUVBcjJtT2oxU3VwaUthc2g0cndVOG1ZODVwRmZcLzcxNXRVdE1mbWJ5Wmp3b2piN1ZwdTVIQVFDU3dhUmFwRnRhNWRiR1VqT0ErME9hNmpxWkNsWUdqbVRXcmlKaVlrY3pCakMzSFFBWnZIbVRLclllYVZocmxOdEI1ZWlBenBkMnZXQzNYT2RTVjdrRzRiTnVDOFgwOWhLd2srenA4UzZ4Wlk0V2NtNnFWSTlXZ1E5U2JReGQ2XC92MFwvMnpVdlk1VnNYSWVpSzV0VEZcL3NTVExuSTlSaDhCOHh1c0ZkSk9yMGx3TzZYZXNSMWUxaCtoUUN2SVwvNEV1UG5BaEFsRTFSMlo0XC9jTFF4UTVZWEZ1U0wzekVMY0pOZ0FUbk16T0RtaWZzNDNxdVFWOEU4M0V3WmJXY0Q5eEJvSlREUUo3XC92eHVYRkhuNUVGNmgyU1hBd2FDXC9cL2c1TDRWdEpFZ0RyZ2pRSTRoallxZGxhY0N2MzFvTkt3alVTVkwzTEVnWERKK0gwMWdJOHV2WVhHV04zdXRGbEdobnVPS3J4Y3p1NEtzSEM1WW9YXC9DUWE0SUhqR3krUWxISlFhbTBSZGlPV1JFYTZpZHp3VTRWbUp2RGZwOU5OZWZNYVhTTWQ2RnJDa2lsWGNnMnJiQm41RkpUT3BFQ1FRSjA2Tk54ckR4aUJVSnBuMEZUQ1BwMFdYZHdRaHljWWtpYnNSeUlvSDNwaUFBaUVcL0R2T21nTUFvTWkyNURLVG8ySFFIdExTNkhyWmQxazI2OWFcL0FOUzdiNzJNcFF3cWdib2VodkZYSFVjekpMZXp3Q2RORWM5RFhaUzFOUkhkK24xN293T3RBZFVodkpMSVFmRDlPcmxUOWV3SDAyWE9NVG1zOFJ4YzFLTitCUEo2U29VR2x2WGgzbGR5SXgrZEJjSU5kN1RvWDJSNGhOaU1IWUFPVFwvS2RmUkVVcklpY1RVaElVbzZXdDRLRUhtNU5oa01OdGtGVVFpRFYwVENSUXFRY3VvYis3ditpcUdDNGYxWW40UzZjMDFtQ1hDakE0OHgxNHJnMlkrcnFwd0VwSzlReVpcLzR2RFhoaXlLTG4zSnVHNlVJMFltUzV4UE1cL21mOTR3a2V3MmlOK2xSSTVVSlozMWJkRjgzaHlTdXVrSTNCMm5TeVwvQzBTVHpBSmt4V0grcTFpUjlENW80RkR1UzNhQ1JLOUVNZmRKTE1lWWNhMkl6eGhSaXNFWFwvdjRKemlCQmZGdVwvazl1R3pna1B3aFwvNkd6RE9aZlRYY0RISGZPMENDeVwvQys1dDM3aERkMFNTbUdWaDM3MU9XUEtMaWdSeVl0dlwvUXp1WHFRYUZRR2hzZk02alpiSk43bkg1Ym9NckRha1l4eE11QTdZTWV2MlpBMDExakZzQWNXXC9aUWdxTktGc1ZYSGVjU1FZZzd5U2RtTFM5emJPZ3VYalhsMWJpRmZ5bnAwUFwvZUE1ZWVxYWNHcEZoSVdLcmtzRjd6TDd3MHJxV1ZQSkN6dndtanpKRDFIWnBjbWNVQjgwRVdZczZJRTJ5Z1FXcWVxYU5pdTJVazNUTVwvdmVHalJwYXhwTzQzalkxNXNTcmxKd01mY1Fxb2NXaTBiYTZscEwrb3pnU0lJd1o2b3llRlM2c3hzNXRGUFlUZ1x4M2RceDIyLFx4MjJnbG9iYWxOYW1lXHgyMjpceDIydHJheXJpZGVceDIyLFx4MjJjbGllbnRFeHBlcmltZW50c1N0YXRlQmxvYlx4MjI6XHgyMlx4NWJudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLFx4NWJceDVkLFx4NWJceDVkXHg1ZFx4MjJceDdkXHg3ZCcsJ1QnOiAnQVNBRkFVTEE1UE5kTTEzeFNud0VGVjBzVUdkSnZIZ2U4Q202cENwTDlUWkc0YnhXWUdURkpHMVdGRER6OW12VXRtNmtvS0wxeHdhaTRVZUlycmtJN0lxUTFCMFx4M2QnLH0pO319KSgpOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9IlVyNmhlZ1lIdUxEUUxBekE2dnFRU2ciPmlmICh3aW5kb3cueXRjc2kpIHt5dGNzaS5pbmZvR2VsKHtzZXJ2ZXJUaW1lTXM6ICA3Mi4wIH0sICcnKTt9PC9zY3JpcHQ+PG5vc2NyaXB0PjxkaXYgY2xhc3M9InBsYXllci11bmF2YWlsYWJsZSI+PGgxIGNsYXNzPSJtZXNzYWdlIj5BbiBlcnJvciBvY2N1cnJlZC48L2gxPjxkaXYgY2xhc3M9InN1Ym1lc3NhZ2UiPjxhIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3Y9NmplUGJxWEpoZTgiIHRhcmdldD0iX2JsYW5rIj5Ucnkgd2F0Y2hpbmcgdGhpcyB2aWRlbyBvbiB3d3cueW91dHViZS5jb208L2E+LCBvciBlbmFibGUgSmF2YVNjcmlwdCBpZiBpdCBpcyBkaXNhYmxlZCBpbiB5b3VyIGJyb3dzZXIuPC9kaXY+PC9kaXY+PC9ub3NjcmlwdD48L2JvZHk+PC9odG1sPg=="}},"time_used":129,"timings":{"blocked":0,"dns":4,"connect":9,"send":0,"wait":92,"receive":0,"ssl":23},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/plan-per.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.432Z","timestamp":1785159268432,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/plan-per.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"5839-66136805-c5510877c871e28b;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 22585\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":22585,"size_decoded":22912,"mime_type":"image/png","magic":"PNG image data, 325 x 172, 8-bit/color RGBA, non-interlaced","md5":"be1cfc42a01f9b12fdbace9a767ebe36","sha1":"2fbdee6ccb456632e3d0cf21e9790aeeba30d768","sha256":"eb1fc55f19fa53439a2af745e98f7b0244534fb61e0cd1379d7dd32689831e25","sha512":"1e4155c969bb0f4926945cc61e104e0d95a6555ca05042cddc117b75391253fe5f1624d91754b7023b6633d1150b3b18cd5bc03333fe34d1b998e58e93190c9c","ssdeep":"384:YSDkil3Cz9SUKtfw9gea/AOGzrPrxmiFDD7w9M91okLEb0+r/zyCNcUN:Yg3u5yY9a/Ald5rw9IBLI74UN","tlshash":"f3a2d157ed02220844a94ba2a4d1d1bd74afd8423f09d5f523f1bf6ea79da86830374e","first_seen":"2026-07-27T07:08:39.426799Z","last_seen":"2026-07-27T13:35:41.605566Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAUUAAACsCAYAAADsSL6jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Njk4NzUwOEUxQkFEMTFFQzlDNUNGNUNCNjk1RUY1RkMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Njk4NzUwOEYxQkFEMTFFQzlDNUNGNUNCNjk1RUY1RkMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2OTg3NTA4QzFCQUQxMUVDOUM1Q0Y1Q0I2OTVFRjVGQyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo2OTg3NTA4RDFCQUQxMUVDOUM1Q0Y1Q0I2OTVFRjVGQyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkplKMsAAFStSURBVHja7H0JmBTV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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/79207.6a62fc803d3d07898936.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.292Z","timestamp":1785159269292,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/79207.6a62fc803d3d07898936.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-1271\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:48\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 25a354fd6fbcbb8a441da3eeb3472ef5\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"]}],"data":{"size":4721,"size_decoded":3183,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3065)","md5":"9f9984517a8cd65036faf42932513a8f","sha1":"05cac6f7fbc24daccaaefb92b34f6eecdc91d8d1","sha256":"597ae9e64dd837a96e9166ffeb016e0757a49f06719163620ea9c616bae3ea2a","sha512":"f122449c6f6d72c179c4a59ec669368d3caaf2e5fc59ab4dbe5a3b10c172380e9033fe19842cb0c81ba7ef956058ff787693678223786ed92f6f5188ca177f44","ssdeep":"96:S0yn+dFlV8m0eKoPnRuKfeYX1X45tTZkcdrEAUbNfBn3Codbrbth1o3I9dxKsbRN:S0yn+dFlV81YRuKWYXWhdrIBn3Pjh1Ag","tlshash":"faa1b6c630f770d673aa19e5813b0447f2be09d13a0b96e5b4989cc938750167a63fac","first_seen":"2026-07-23T13:38:20.419582Z","last_seen":"2026-07-28T07:05:00.696213Z","times_seen":1428,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNzkyMDddLHs2NDA3NDQoZSx0LG4pe2Z1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChlLHQpLG4pfWZ1bmN0aW9uIHIoZSl7cmV0dXJuIGU+MD9NYXRoLmZsb29yKGUpOk1hdGguY2VpbChlKX1mdW5jdGlvbiBpKGUpe3JldHVybiBlJTI9PTB9bi5kKHQse2NsYW1wOigpPT5vLGlzRXZlbjooKT0+aSx0b0ludDooKT0+cn0pfSw0NzkzNChlLHQsbil7bi5kKHQse2VuYWJsZWQ6KCk9PnMsZ2V0Q29uZmlnOigpPT5jfSk7dmFyIG89big1MDI1ODcpLHI9bigxMjc3MTEpLGk9bigzMTg5NzQpLGw9bigyMTIyMjkpO2Z1bmN0aW9uIHMoZSx0LG4pe2xldCBvPXdpbmRvdy51c2VyO24mJihvPW4pO2NvbnN0IHI9YyhlLHQsbyk7aWYoIXIpcmV0dXJuITE7aWYoci5kaXNhYmxlX29uX3RyaWFsJiYoIW98fG8uaXNfdHJpYWwpKXJldHVybiExO2NvbnN0IGw9ci5kaXNhYmxlX29uX2xpdGVfcGxhbjtpZihsJiZvLmlzX2xpdGVfcGxhbil7aWYoImFsbCI9PT1sKXJldHVybiExO2lmKCJleGNsdWRlX21vYmlsZSI9PT1sJiYhaS5DaGVja01vYmlsZS5hbnkoKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiB1KGUpe2NvbnN0IHQ9b1tlXTtyZXR1cm4gdD90LmV4dGVuZHM/T2JqZWN0LmFzc2lnbih7fSx1KHQuZXh0ZW5kcyksdCk6dDpudWxsfWZ1bmN0aW9uIGMoZSx0LG4pe2xldCBvPXUodHx8KGZ1bmN0aW9uKGUpe2xldCB0PXdpbmRvdy51c2VyOyJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cudXNlciYmKHQ9d2luZG93LnVzZXIpLGUmJih0PWUpO2xldCBuPXQ/LnByb19wbGFufHwiZnJlZSI7cmV0dXJuImZyZWUiIT09biYmISgwLGwuaXNUcmlhbFByb2R1Y3QpKG4pfHwobj0oMCxsLmdldFByb2R1Y3RGb3JUcmlhbCkobikpLG59KG4pPz8iIikpO2lmKCFvKXJldHVybiBudWxsO2NvbnN0IGk9d2luZG93LlRyYWRpbmdWaWV3Py53aWRnZXRDdXN0b21lcjtyZXR1cm4gaSYmcltpXSYmKG89T2JqZWN0LmFzc2lnbih7fSxvLHJbaV0pKSxvJiZvW2VdfHxudWxsfX0sODYyMjEzKGUsdCxuKXtuLmQodCx7TG9nb1NpemU6KCk9Pm8uTG9nb1NpemUsZ2V0TG9nb1VybFJlc29sdmVyOigpPT5hfSk7dmFyIG89big2MjAzNTQpLHI9bigxMzg2MzgpLGk9big2MzE2MzQpLGw9big4MTA0MSk7Y29uc3Qgcz0oMCxuKDIyMTA2MSkuZ2V0TG9nZ2VyKSgiTG9nb1VybFJlc29sdmVyIik7Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXsoMCxyLmFzc2VydCkoIiIhPT1lLCJTMyBiYXNlIHVybCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZyIpLHRoaXMuX2Jhc2VVcmw9ZX1nZXRTeW1ib2xMb2dvVXJsKGUsdCl7aWYoIiI9PT1lKXJldHVybiBzLmxvZ1dhcm4oImxvZ28gaWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKSwiIjtzd2l0Y2godCl7Y2FzZSBvLkxvZ29TaXplLk1lZGl1bTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS5zdmdgO2Nhc2Ugby5Mb2dvU2l6ZS5MYXJnZTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS0tYmlnLnN2Z2B9fWdldENvdW50cnlGbGFnVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiY291bnRyeS8iK2UsdCl9Z2V0UHJvdmlkZXJMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgicHJvdmlkZXIvIitlLHQpfWdldFNvdXJjZUxvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJzb3VyY2UvIitlLHQpfWdldEJsb2NrY2hhaW5Db250cmFjdExvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJibG9ja2NoYWluLyIrZSx0KX1nZXRDYW5kbGVzdGlja1BhdHRlcm5Mb2dvVXJsKGUsdD1sLlN0ZFRoZW1lLkxpZ2h0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKGBjYW5kbGVwYXR0ZXJuLyR7ZX0tJHt0fWAsby5Mb2dvU2l6ZS5NZWRpdW0pfX1sZXQgYztmdW5jdGlvbiBhKCl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoIWMpe2NvbnN0IGU9KDAsaS5nZXRJbml0RGF0YSkoKSx0PWUuc2V0dGluZ3M/ZS5zZXR0aW5ncy5TM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkw6IiI7Yz1uZXcgdSh0KX1yZXR1cm4gY30oKX19LDIzNDk2NChlLHQsbil7YXN5bmMgZnVuY3Rpb24gbyhlLHQpe2NvbnN0IG89YXdhaXQgUHJvbWlzZS5hbGwoW24uZSgyODgzMSksbi5lKDg0MzA2KSxuLmUoMjkyOTYpLG4uZSg1MjM5Niksbi5lKDYwMDYyKSxuLmUoMjAzNTQpLG4uZSgxMzQ5Miksbi5lKDM3NzQ2KSxuLmUoMTIzODUpLG4uZSg4MTA3Miksbi5lKDk0MjMyKSxuLmUoMTk1OTUpLG4uZSgxOTc4Nyksbi5lKDg1NzkpLG4uZSgxNzA4Nyksbi5lKDU3MzAwKSxuLmUoMTIwNTEpLG4uZSg4OTU1OCksbi5lKDEwMzY2KSxuLmUoNDA5MTQpLG4uZSg5MDk2MCksbi5lKDg3NzQwKSxuLmUoNzg4OTkpLG4uZSg2NzIxMiksbi5lKDgwOTE1KSxuLmUoMTUzNCksbi5lKDI4MTc2KSxuLmUoMzk2MDkpLG4uZSg1NTIyOSksbi5lKDY1MTAwKSxuLmUoNDI3MDYpXSkudGhlbihuLmJpbmQobiw1MDYyNzUpKTtyZXR1cm4gby5zaG93U2ltcGxlRGlhbG9nKGUsby53YXJuaW5nTW9kdWxlLHQpfW4uZCh0LHtzaG93V2FybmluZzooKT0+b30pfSw2MTk5OTIoZSx0LG4pe24uZCh0LHtpc1RpY2tzRW5hYmxlZDooKT0+cn0pO3ZhciBvPW4oMzE4OTc0KTtuKDkzMDIzMSk7ZnVuY3Rpb24gcigpe3JldHVybiEoMCxvLm9uV2lkZ2V0KSgpfX0sMjEyMjI5KGUsdCxuKXtuLmQodCx7Z2V0UHJvZHVjdEZvclRyaWFsOigpPT5pLGlzVHJpYWxQcm9kdWN0OigpPT5yfSk7big4MjkxODApLG4oMTg1MjcxKTtjb25zdCBvPSJfdHJpYWwiO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIG5ldyBSZWdFeHAobysiJCIpLnRlc3QoZSl9ZnVuY3Rpb24gaShlKXtyZXR1cm4gZS5zcGxpdChvKVswXX19LDIyMTA2MShlLHQsbil7dmFyIG87bi5kKHQse2dldExvZ0hpc3Rvcnk6KCk9PmIsZ2V0TG9nZ2VyOigpPT5SLGdldFJhd0xvZ0hpc3Rvcnk6KCk9PmYsaXNIaWdoUmF0ZUVuYWJsZWQ6KCk9PmR9KSwKZnVuY3Rpb24oZSl7ZVtlLkVSUk9SPTFdPSJFUlJPUiIsZVtlLldBUk5JTkc9Ml09IldBUk5JTkciLGVbZS5JTkZPPTNdPSJJTkZPIixlW2UuTk9STUFMPTRdPSJOT1JNQUwiLGVbZS5ERUJVRz01XT0iREVCVUcifShvfHwobz17fSkpO2xldCByPTA7Y29uc3QgaT1bXTtsZXQgbD1udWxsLHM9bnVsbCx1PW51bGwsYz1udWxsLGE9by5XQVJOSU5HLGc9ITE7ZnVuY3Rpb24gZCgpe3JldHVybiBnfWZ1bmN0aW9uIGYoZSx0KXtsZXQgbj1pLnJlZHVjZSgoKGUsdCk9PmUuY29uY2F0KHQpKSxbXSk7cmV0dXJuIG4uc29ydCgoKGUsdCk9PmUuaWQtdC5pZCkpLHZvaWQgMCE9PXQmJihuPW4uZmlsdGVyKChlPT5lLnN1YlN5c3RlbUlkPT09dCkpKSwibnVtYmVyIj09dHlwZW9mIGUmJihuPW4uc2xpY2UoLWUpKSxufWZ1bmN0aW9uIG0oZSl7cmV0dXJuIG5ldyBEYXRlKGUudGltZXN0YW1wKS50b0lTT1N0cmluZygpKyI6IitlLnN1YlN5c3RlbUlkKyI6IitlLm1lc3NhZ2UucmVwbGFjZSgvIi9nLCInIil9Y29uc3QgYj0oZSx0KT0+ZnVuY3Rpb24oZSx0KXtsZXQgbixvPTAscj0wO2ZvcihuPWUubGVuZ3RoLTE7bj49MSYmKG8rPTgqKDErZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pLmxlbmd0aCksIShuLTE+MCYmKHI9OCooMStlbmNvZGVVUklDb21wb25lbnQoZVtuLTFdKS5sZW5ndGgpLG8rcj50KSkpO24tLSk7cmV0dXJuIGUuc2xpY2Uobil9KGYoZSx0KS5tYXAobSksNzU0OTc0NzIpO2Z1bmN0aW9uIGgoZSx0LG4saSxnKXtpZih0PT09cyYmaS5pZD09PXUpcmV0dXJuO2NvbnN0IGY9bmV3IERhdGU7aWYoZTw9by5OT1JNQUwmJmZ1bmN0aW9uKGUsdCxuLG8saSxsKXsiZnVuY3Rpb24iPT10eXBlb2Ygc3RydWN0dXJlZENsb25lJiYodD1zdHJ1Y3R1cmVkQ2xvbmUodCkpLHQ9dC5zbGljZSgwLGw/PzFlMyk7Y29uc3Qgcz17aWQ6cixtZXNzYWdlOnQsc3ViU3lzdGVtSWQ6byx0aW1lc3RhbXA6TnVtYmVyKGUpfTtyKz0xLG4ucHVzaChzKSx2b2lkIDAhPT1pJiZuLmxlbmd0aD5pJiZuLnNwbGljZSgwLDEpfShmLHQsbixpLmlkLGkubWF4Q291bnQsZyksZTw9YSYmKCFpLmhpZ2hSYXRlfHxkKCkpJiYoIWx8fGkuaWQubWF0Y2gobCkpKXtjb25zdCBuPWYudG9JU09TdHJpbmcoKSsiOiIraS5pZCsiOiIrdDtzd2l0Y2goZSl7Y2FzZSBvLkRFQlVHOmNvbnNvbGUuZGVidWcobik7YnJlYWs7Y2FzZSBvLklORk86Y2FzZSBvLk5PUk1BTDppLmNvbG9yP2NvbnNvbGUubG9nKCIlYyIrbiwiY29sb3I6ICIraS5jb2xvcik6Y29uc29sZS5sb2cobik7YnJlYWs7Y2FzZSBvLldBUk5JTkc6Y29uc29sZS53YXJuKG4pO2JyZWFrO2Nhc2Ugby5FUlJPUjpjb25zb2xlLmVycm9yKG4pfXM9dCx1PWkuaWQsbnVsbCE9PWMmJmNsZWFyVGltZW91dChjKSxjPXNldFRpbWVvdXQoKCgpPT57cz1udWxsLHU9bnVsbCxjPW51bGx9KSwxZTMpfX1mdW5jdGlvbiBSKGUsdD17fSl7Y29uc3Qgbj1bXTtpLnB1c2gobik7Y29uc3Qgcj1PYmplY3QuYXNzaWduKHQse2lkOmV9KTtmdW5jdGlvbiBsKGUpe3JldHVybih0LG8pPT5oKGUsU3RyaW5nKHQpLG4scixvKX1yZXR1cm57bG9nRGVidWc6bChvLkRFQlVHKSxsb2dFcnJvcjpsKG8uRVJST1IpLGxvZ0luZm86bChvLklORk8pLGxvZ05vcm1hbDpsKG8uTk9STUFMKSxsb2dXYXJuOmwoby5XQVJOSU5HKX19fX1dKTs="}},"time_used":4,"timings":{"blocked":2,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/css/style.css","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.908Z","timestamp":1785159267908,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /css/style.css HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"4630-66136805-8fe841e63a32084e;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 3648\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":17968,"size_decoded":4011,"mime_type":"text/css","magic":"ASCII text","md5":"5b11457d58a153b6cea463f9202e9c98","sha1":"0d5c837de1da5f59975c8f7607577bcd54d6c0cf","sha256":"6d6f4ca45406c6732801198e689ee9bfb1fc3ec125634f531d27285151baa36a","sha512":"117f140978add67c7e587b742b812c669237009f941bd42d2b667546f98d061688fb92ce570ba82c96265feab6fd37fc4cb0a91726bab1f74367acdae0b4f269","ssdeep":"192:8pXpj+5WcmWcJXsUe9zos/JHoXHVo2lYXFTgwop3fkuHrSJuE08fqhOxVwkaxMa1:mxOOJX3ssYX0PlhOxVGB61B63","tlshash":"84826417a4853c8ab20bd0e6ed529f65870d884aee0e5f6df05779fce2c91c841b6bc4","first_seen":"2026-07-27T07:08:39.237267Z","last_seen":"2026-07-27T13:35:41.675645Z","times_seen":3,"resource_available":false,"data":"LypIZWFkZXIgc3RhcnQqLwo6cm9vdCB7CiAtLWJzLWJsdWU6ICMxZTFhNjg7CiAtLWJzLWluZGlnbzogIzY2MTBmMjsKIC0tYnMtcHVycGxlOiAjNmY0MmMxOwogLS1icy1waW5rOiAjZDYzMzg0OwogLS1icy1yZWQ6ICNkYzM1NDU7CiAtLWJzLW9yYW5nZTogI2ZkN2UxNDsKLS1icy15ZWxsb3c6ICNmZmM0NTE7CiAtLWJzLWdyZWVuOiAjMDBmY2EwOwotLWJzLXRlYWw6ICMwZjZjMDU7CiAtLWJzLWN5YW46ICMwZGNhZjA7CiAtLWJzLXdoaXRlOiAjZmZmOwogLS1icy1ncmF5OiAjNmM3NTdkOwogLS1icy1ncmF5LWRhcms6ICMzNDNhNDA7CiAtLWJzLWdyYXktMTAwOiAjZjhmOWZhOwogLS1icy1ncmF5LTIwMDogI2U5ZWNlZjsKIC0tYnMtZ3JheS0zMDA6ICNkZWUyZTY7CiAtLWJzLWdyYXktNDAwOiAjY2VkNGRhOwogLS1icy1ncmF5LTUwMDogI2FkYjViZDsKIC0tYnMtZ3JheS02MDA6ICM2Yzc1N2Q7CiAtLWJzLWdyYXktNzAwOiAjNDk1MDU3OwogLS1icy1ncmF5LTgwMDogIzFjMzA0MDsKIC0tYnMtZ3JheS05MDA6ICMxMTFjMjU7CiAtLWJzLXByaW1hcnk6ICNmZmI3MDA7CiAtLWJzLXNlY29uZGFyeTogI2VhYTAzNDsKIC0tYnMtc3VjY2VzczogIzAwZmY1YTsKIC0tYnMtaW5mbzogIzBkY2FmMDsKIC0tYnMtd2FybmluZzogI2ZmYzEwNzsKIC0tYnMtZGFuZ2VyOiAjZmYxNzRlOwogLS1icy1saWdodDogI2Y4ZjlmYTsKIC0tYnMtZGFyazogIzIxMjUyOTsKIC0tYnMtcHJpbWFyeS1yZ2I6IDgsIDk0LCA2MjsKLS1icy1zZWNvbmRhcnktcmdiOiAyMywgMjUsIDE1MTsKIC0tYnMtc3VjY2Vzcy1yZ2I6IDI1LCAxMzUsIDg0OwogLS1icy1pbmZvLXJnYjogMTMsIDIwMiwgMjQwOwogLS1icy13YXJuaW5nLXJnYjogMjU1LCAxOTMsIDc7CiAtLWJzLWRhbmdlci1yZ2I6IDIyMCwgNTMsIDY5OwogLS1icy1saWdodC1yZ2I6IDI0OCwgMjQ5LCAyNTA7CiAtLWJzLWRhcmstcmdiOiAzMywgMzcsIDQxOwogLS1icy13aGl0ZS1yZ2I6IDI1NSwgMjU1LCAyNTU7CiAtLWJzLWJsYWNrLXJnYjogMTMsIDUyLCA1MDsKIC0tYnMtYm9keS1yZ2I6IDMzLCAzNywgNDE7CiAtLWJzLWZvbnQtc2Fucy1zZXJpZjogIlJhbGV3YXkiLCBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sICJTZWdvZSBVSSIsIFJvYm90bywgIkhlbHZldGljYSBOZXVlIiwgQXJpYWwsICJOb3RvIFNhbnMiLCAiTGliZXJhdGlvbiBTYW5zIiwgc2Fucy1zZXJpZiwgIkFwcGxlIENvbG9yIEVtb2ppIiwgIlNlZ29lIFVJIEVtb2ppIiwgIlNlZ29lIFVJIFN5bWJvbCIsICJOb3RvIENvbG9yIEVtb2ppIjsKIC0tYnMtZm9udC1zYW5zLXNlcmlmcDogIlBvcHBpbnMiLCBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sICJTZWdvZSBVSSIsIFJvYm90bywgIkhlbHZldGljYSBOZXVlIiwgQXJpYWwsICJOb3RvIFNhbnMiLCAiTGliZXJhdGlvbiBTYW5zIiwgc2Fucy1zZXJpZiwgIkFwcGxlIENvbG9yIEVtb2ppIiwgIlNlZ29lIFVJIEVtb2ppIiwgIlNlZ29lIFVJIFN5bWJvbCIsICJOb3RvIENvbG9yIEVtb2ppIjsKIC0tYnMtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpOwogLS1icy1ib2R5LWZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpOwogLS1icy1ib2R5LWZvbnQtc2l6ZTogMXJlbTsKIC0tYnMtYm9keS1mb250LXdlaWdodDogNDAwOwogLS1icy1ib2R5LWZvbnQtd2VpZ2h0YjogNjAwOwogLS1icy1ib2R5LWxpbmUtaGVpZ2h0OiAxLjI7CiAtLWJzLWJvZHktY29sb3I6ICMyMTI1Mjk7CiAtLWJzLWJvZHktYmc6ICNmZmY7Cn0KYSB7Cgl0ZXh0LWRlY29yYXRpb246IG5vbmU7Cn0KcCB7CgltYXJnaW4tdG9wOiAwOwoJbWFyZ2luLWJvdHRvbTogMC4ycmVtOwoJZm9udC1zaXplOiAxcmVtOwoJZm9udC13ZWlnaHQ6IG5vcm1hbDsKCWNvbG9yOiAjMWY0MzQxOwoJbGluZS1oZWlnaHQ6IDEuMzsKfQoucG9wIHsKCWZvbnQtZmFtaWx5OiB2YXIoIC0tYnMtZm9udC1zYW5zLXNlcmlmcCkKfQogQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjExOTlweCkgewouaGVhZGVyLWxvZ28gewoJbWFyZ2luLXJpZ2h0OiAwOwoJcG9zaXRpb246IHJlbGF0aXZlOwoJei1pbmRleDogMTsKCWxlZnQ6IDA7Cgl3aWR0aDogMzglOwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Cgp9Ci5iYW5uZXItY29udGVudCB7Ci8qIG1hcmdpbi10b3A6IDczcHg7ICovCn0KIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMzAwcHgpIHsKCi5iYW5uZXItY29udGVudCBoMSB7Cglmb250LXNpemU6IDYxcHg7Cn19CgogQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjExOTlweCkgewouYmFubmVyLWNvbnRlbnQgaDEgewogCgl0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KLmJhbm5lci1jb250ZW50IGgxIGJyIHsKCWRpc3BsYXk6IG5vbmU7Cn0KLmJhbm5lci1jb250ZW50IGgxIHsKCWZvbnQtc2l6ZTogNDJweDsKfQouYmFubmVyLWNvbnRlbnQgcCB7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KLmJhbm5lci1jb250ZW50IHsKCS8qIG1hcmdpbi10b3A6IDczcHg7ICovCgl0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KLmhlYWRlci1sb2dvIHN2ZyB0ZXh0LCAuaGVhZGVyLWxvZ28gc3ZnIHBhdGgsIC5oZWFkZXItbG9nbyBzdmcgY2lyY2xlLCAuZm9ybS1sb2dvIHN2ZyB0ZXh0LCAuZm9ybS1sb2dvIHN2ZyBwYXRoLCAuZm9ybS1sb2dvIHN2ZyBjaXJjbGUgewoJZmlsbDogIzAwMDAwMDsKfQogfQouYmFubmVyLXN2ZyB7CglyaWdodDogMTM1cHg7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl0b3A6IDMycHg7Cn0KLm5hdmJhciB7Cgl0cmFuc2l0aW9uOiAwLjVzOwp9Ci5uYXZiYXItZGFyay5maXhlZC10b3AgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSwgLm5hdmJhci1kYXJrLmZpeGVkLXRvcCAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayB7Cgljb2xvcjogIzE1ZTQ5ODsKfQouaWNvbi1zcXVhcmUgewoJYm9yZGVyLXJhZGl1czogMTBweDsKfQouaWNvbi1jaXJjbGUgewoJYm9yZGVyLXJhZGl1czogNTAlOwp9CiNtYWlubmF2aWdhdGlvbiB7Cgl6LWluZGV4OiAxOwp9CmxpOmZpcnN0LWNoaWxkIC5uYXYtbGluay5hY3RpdmUgewoJYmFja2dyb3VuZC1jb2xvcjogIzEzODM1YzsKCWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4Owp9CgpsaTpsYXN0LWNoaWxkIC5uYXYtbGluay5hY3RpdmUgewoJYmFja2dyb3VuZC1jb2xvcjogIzEzODM1YzsKCWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxMHB4Owp9CiBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTkxcHgpIHsKLm5hdmJhci10b2dnbGVyIHsKCWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwoJZmxvYXQ6IHJpZ2h0OwoJYmFja2dyb3VuZDogIzNhNzkzNDsKfQouaGVhZGVyLWxvZ28gewoJd2lkdGg6IDEwMCU7Cn0KfQouaGVhZC1iZyB7CgliYWNrZ3JvdW5kOiAjZTlmMmU1OwoJcGFkZGluZy1ib3R0b206IDE3MHB4OwoJcG9zaXRpb246IHJlbGF0aXZlOwp9CkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMTk5cHgpIHsKLmhlYWQtYmc6OmFmdGVyIHsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmFubmVyLmdpZikgbm8tcmVwZWF0IHNjcm9sbCBsZWZ0IHRvcDsKCXdpZHRoOiA1NzRweDsKCWhlaWdodDogNzgwcHg7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgljb250ZW50OiAiIjsKCXRvcDogMDsKCWxlZnQ6IDU5cHg7CgkvKiByaWdodDogMDsgKi8KCS8qIG1hcmdpbjogYXV0bzsgKi8KfQp9CkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMTk5cHgpIHsKLmZvcm0tYmcgewogICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9mb3JtLWJnLmpwZykgbm8tcmVwZWF0IHNjcm9sbCAwIDAgLyBjb3ZlcjsKICAgIHBhZGRpbmc6IDIwcHggMCAwIDA7Cn0KCi5mb3JtLWJnLmhlYWQtYmcgewoJYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKCWJhY2tncm91bmQtY29sb3I6ICNlYWYyZTU7Cn0KIAouaGVhZC1iZyB7CgliYWNrZ3JvdW5kLWltYWdlOiBub25lOwoJLyogaGVpZ2h0OiA3NzFweDsgKi8KCXBhZGRpbmctYm90dG9tOiA0MHB4OwoJYmFja2dyb3VuZC1jb2xvcjogI2U5ZjJlNTsKfQogCn0KIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo5OTFweCkgewouYmFubmVyLWNvbnRlbnQgcCBiciB7CglkaXNwbGF5OiBub25lOwp9Ci5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlLCAubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmsgewoJY29sb3I6ICNmZmZmZmY7Cn0KIC5uYXYtbGluayB7CiAKCWJvcmRlci1yaWdodDogbm9uZTsKfQoudG9wLWJ0bnMgewoJd2lkdGg6IDEwMCU7Cgl0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsKfQojbmF2YmFyX3RvcCB7CgltYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kLWNvbG9yOiAjNWVhMDU4Owp9Ci5iYW5uZXItY29udGVudCB7CgltYXJnaW4tdG9wOiAzMHB4OwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5iYW5uZXItY29udGVudCBoMSBiciB7CglkaXNwbGF5OiBub25lOwp9Ci5iYW5uZXItY29udGVudCBoMSwgLmJhbm5lci1jb250ZW50IHAgewoJdGV4dC1hbGlnbjogY2VudGVyOwoJbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50Owp9Cn0KLmZpeGVkLXRvcCAubG9nby1zbWFsbC1jdWJlLCAuZml4ZWQtdG9wIC5sb2dvLWJpZy1jdWJlLCAuZml4ZWQtdG9wIC5sb2dvLXRleHQgewoJZmlsbDogI2ZmZjsKfQouc2VydmljZXM6aG92ZXIgewoJY3Vyc29yOiBwb2ludGVyOwoJLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHBzOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMwODVlM2UrMCwwZDM1MzIrMTAwICovCgliYWNrZ3JvdW5kOiAjMDg1ZTNlOyAvKiBPbGQgYnJvd3NlcnMgKi8KCWJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWUzZSAwJSwgIzBkMzUzMiAxMDAlKTsgLyogRkYzLjYtMTUgKi8KCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWUzZSAwJSwgIzBkMzUzMiAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi8KCWJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwODVlM2UgMCUsICMwZDM1MzIgMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqLwpmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzA4NWUzZScsIGVuZENvbG9yc3RyPScjMGQzNTMyJywgR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi8KfQouc2VydmljZXM6aG92ZXIgcCB7CglvcGFjaXR5OiAxICFpbXBvcnRhbnQ7Cn0KLmltZy1iZzEgewoJYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pbWctYmcxLmpwZykgbm8tcmVwZWF0IHNjcm9sbCAwIDAgL2NvdmVyOwp9Ci5pbWctYmcyIHsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaW1nLWJnMi5qcGcpIG5vLXJlcGVhdCBzY3JvbGwgMCAwIC9jb3ZlcjsKfQouaW1nLWJnMyB7CgliYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ltZy1iZzMuanBnKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCAvY292ZXI7Cn0KLmltZy1iZzQgewoJYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pbWctYmc0LmpwZykgbm8tcmVwZWF0IHNjcm9sbCAwIDAgL2NvdmVyOwp9Ci5pbWctYmc1IHsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaW1nLWJnNS5qcGcpIG5vLXJlcGVhdCBzY3JvbGwgMCAwIC9jb3ZlcjsKfQoucGF5bWVudC1pbmZvIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCW1hcmdpbi1ib3R0b206IDUwcHg7Cn0KLmdyYWQtYm9yIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWJvcmRlcjogOHB4IHNvbGlkICMwM2VjOTY7CgltYXJnaW46IDAgMTBweDsKfQouY29uLXJpZ2h0IHsKfQouZ2V0LXN0YXJ0IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXJpZ2h0OiAwOwp9CgogCi5jb24tdGhyZWUgewoJbWFyZ2luOiAyMHB4IDA7CglwYWRkaW5nOiAyMHB4OwoJLyogdGV4dC1hbGlnbjogbGVmdDsgKi8KCWJvcmRlci13aWR0aDogM3B4Owp9Ci5jb24tY29uIHsKCXRleHQtYWxpZ246IGxlZnQ7Cn0KLnN0YXRpc3RpY3MgewoJLyogUGVybWFsaW5rIC0gdXNlIHRvIGVkaXQgYW5kIHNoYXJlIHRoaXMgZ3JhZGllbnQ6IGh0dHBzOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyMxNWVmOWYrMCwxMjY0NDgrMTAwICovCgliYWNrZ3JvdW5kOiAjMTVlZjlmOyAvKiBPbGQgYnJvd3NlcnMgKi8KCWJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1ZWY5ZiAwJSwgIzEyNjQ0OCAxMDAlKTsgLyogRkYzLjYtMTUgKi8KCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1ZWY5ZiAwJSwgIzEyNjQ0OCAxMDAlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi8KCWJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMxNWVmOWYgMCUsICMxMjY0NDggMTAwJSk7IC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqLwpmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzE1ZWY5ZicsIGVuZENvbG9yc3RyPScjMTI2NDQ4JywgR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi8KfQouYmctZ3JhZCB7CgkvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cHM6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzA4NWUzZSswLDBkMzYzMysxMDAgKi8KCWJhY2tncm91bmQ6ICMwODVlM2U7IC8qIE9sZCBicm93c2VycyAqLwoJYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMDg1ZTNlIDAlLCAjMGQzNjMzIDEwMCUpOyAvKiBGRjMuNi0xNSAqLwoJYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMDg1ZTNlIDAlLCAjMGQzNjMzIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqLwoJYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4NWUzZSAwJSwgIzBkMzYzMyAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovCmZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDg1ZTNlJywgZW5kQ29sb3JzdHI9JyMwZDM2MzMnLCBHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqLwp9Ci5zZXJ2aWNlczpob3ZlciBzcGFuLCAuc2VydmljZXM6aG92ZXIgaDUgewoJY29sb3I6ICNmZmYgIWltcG9ydGFudDsKfQouZm9vdGVyLWJnIHsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZm9vdGVyLWJnLmpwZykgbm8tcmVwZWF0IHNjcm9sbCAwIDAgL2NvdmVyOwp9Ci5pbm5lci1iZ3sJYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pbm5lci1iZy5qcGcpIG5vLXJlcGVhdCBzY3JvbGwgMCAwIC9jb3Zlcjt9Ci5mb290ZXItbGlua3MgbGkgewoJbGlzdC1zdHlsZS10eXBlOiBub25lOwoJbWFyZ2luLWJvdHRvbTogMTBweDsKfQouZm9vdGVyLWxpbmtzIHVsIHsKCXBhZGRpbmctbGVmdDogMDsKfQouZm9vdGVyLWxpbmtzIGxpIGEgewoJY29sb3I6ICNmZmZmZmY7Cn0KLmFkZHJlc3MgdWwgewoJcGFkZGluZy1sZWZ0OiAwOwoJY29sb3I6ICNmZmY7Cn0KLmFkZHJlc3MgdWwgbGkgewoJbWFyZ2luLWJvdHRvbTogMTJweDsKCWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKfQouZm9vdGVyLXNvY2lhbCB7CglwYWRkaW5nLWxlZnQ6IDA7Cn0KLmZvb3Rlci1saW5rcyBsaSBhOmhvdmVyIHsKCWNvbG9yOiAjMDBmY2EwOwp9Ci5mb290ZXItc29jaWFsIGxpIHsKCWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKfQouZm9vdGVyLXNvY2lhbCBsaSBhIHsKCWJhY2tncm91bmQ6ICMxNWYyYTE7CgliYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMxNWYyYTEgMCUsICMxMzdkNTggMTAwJSk7CgliYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMxNWYyYTEgMCUsICMxMzdkNTggMTAwJSk7CgliYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMTVmMmExIDAlLCAjMTM3ZDU4IDEwMCUpOwogZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMxNWYyYTEnLCBlbmRDb2xvcnN0cj0nIzEzN2Q1OCcsIEdyYWRpZW50VHlwZT0wICk7CglwYWRkaW5nOiAxM3B4IDE2cHg7Cglib3JkZXItcmFkaXVzOiA1MCU7Cgljb2xvcjogI2ZmZmZmZjsKfQouZm9vdGVyLXNvY2lhbCBsaSBhOmhvdmVyIHsvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cHM6Ly9jb2xvcnppbGxhLmNvbS9ncmFkaWVudC1lZGl0b3IvIzEzN2Q1OCswLDE1ZjJhMSsxMDAgKi8KCWJhY2tncm91bmQ6ICMxMzdkNTg7IC8qIE9sZCBicm93c2VycyAqLwoJYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMTM3ZDU4IDAlLCAjMTVmMmExIDEwMCUpOyAvKiBGRjMuNi0xNSAqLwoJYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMTM3ZDU4IDAlLCAjMTVmMmExIDEwMCUpOyAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqLwoJYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzEzN2Q1OCAwJSwgIzE1ZjJhMSAxMDAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovCmZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMTM3ZDU4JywgZW5kQ29sb3JzdHI9JyMxNWYyYTEnLCBHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOSAqLwp9Ci5wbGFuLWxpc3QgewoJYmFja2dyb3VuZC1jb2xvcjogI2UyZTZlNjsKCWJvcmRlcjogN3B4IHNvbGlkICNmZmY7Cglib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzMHB4OwoJYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDMwcHg7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cgl3aWR0aDogMjYycHg7CgltYXJnaW46IDAgYXV0bzsKfQoucGxhbi1saXN0IGxpIHsKCWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKCWZvbnQtc2l6ZTogMThweDsKCXBhZGRpbmc6IDEwcHggMDsKfQoucGxhbi1saXN0IHVsIHsKCXBhZGRpbmctbGVmdDogMDsKfQoucGxhbi1saXN0IGxpOm50aC1jaGlsZCgybisxKSB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMDg1ZTNlOwoJY29sb3I6ICNmZmZmZmY7Cn0KLnBsYW4tbGlzdCBsaTpudGgtY2hpbGQoMm4rMSkgewoJYmFja2dyb3VuZC1jb2xvcjogIzA4NWUzZTsKCWNvbG9yOiAjZmZmZmZmOwp9Ci5wbGFuIHsKCXdpZHRoOiAyOTlweDsKCW1hcmdpbjogMCBhdXRvOwoJdGV4dC1hbGlnbjogY2VudGVyOwp9Ci5wbGFuLWhlYWQgewoJYmFja2dyb3VuZDogIzA4NWMzZTsKCWJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWMzZSAwJSwgIzBjMzgzMyAxMDAlKTsKCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWMzZSAwJSwgIzBjMzgzMyAxMDAlKTsKCWJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwODVjM2UgMCUsICMwYzM4MzMgMTAwJSk7CiBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzA4NWMzZScsIGVuZENvbG9yc3RyPScjMGMzODMzJywgR3JhZGllbnRUeXBlPTAgKTsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKCi5wbGFuLXBlciB7CgliYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BsYW4tcGVyLnBuZykgbm8tcmVwZWF0IHNjcm9sbCAwIDA7Cgl3aWR0aDogMzI1cHg7CgloZWlnaHQ6IDE3MnB4OwoJcGFkZGluZzogODVweCAwOwoJbWFyZ2luOiAwIGF1dG87Cn0KLnBsYW4tcGVyIGxpIHsKCWxpc3Qtc3R5bGUtdHlwZTogbm9uZTsKfQpAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTE5OXB4KSB7Ci5wbGFuLWhlYWQ6OmJlZm9yZSB7CgliYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BsYW4taGVhZC1yaWdodC5wbmcpIG5vLXJlcGVhdCBzY3JvbGwgMCAwOwoJY29udGVudDogIiI7Cglwb3NpdGlvbjogYWJzb2x1dGU7CglyaWdodDogLThweDsKCXdpZHRoOiAyM3B4OwoJaGVpZ2h0OiA2NHB4OwoJdG9wOiAwOwoJYm90dG9tOiAwOy8qIG1hcmdpbjogYXV0bzsgKi8KfQoucGxhbi1oZWFkOjphZnRlciB7CgliYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BsYW4taGVhZC1sZWZ0LnBuZykgbm8tcmVwZWF0IHNjcm9sbCAwIDA7Cgljb250ZW50OiAiIjsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWxlZnQ6IC04cHg7Cgl3aWR0aDogMjNweDsKCWhlaWdodDogNjRweDsKCXRvcDogMDsKCWJvdHRvbTogMDsvKiBtYXJnaW46IGF1dG87ICovCn0KfQogQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjExOTlweCkgewoucGxhbi1wZXIgewogCglwYWRkaW5nOiA4NnB4IDA7Cn0KIH0KLnBsYW4tYm90dG9tIHsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvcGxhbi1idG4ucG5nKSBuby1yZXBlYXQgc2Nyb2xsIDAgMDsKCXdpZHRoOiAyOTNweDsKCWhlaWdodDogMTU3cHg7CglwYWRkaW5nOiA2NXB4IDA7CgltYXJnaW46IDAgYXV0bzsKfQoucGxhbi1idG4gewoJLyotd2Via2l0LWJveC1zaGFkb3c6IDQ3cHggNDdweCAxOXB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjQpOwoJLW1vei1ib3gtc2hhZG93OiA0N3B4IDQ3cHggMTlweCAwcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY0KTsKCWJveC1zaGFkb3c6IDQ3cHggNDdweCAxOXB4IDBweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjQpOyovCn0KCiBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NzY3cHgpIHsKLnBsYW4gewoJd2lkdGg6IDEwMCU7CgkgCn0KLnBsYW4tbGlzdCB7CiAKCXdpZHRoOiAxMDAlOwogCn19CgoKCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqZm9ybS1wYWdlcyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgouZm9ybS1iZyB7CgliYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2Zvcm0tYmcuanBnKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCAvIGNvdmVyOwoJcGFkZGluZzogMjBweCAwIDAgMDsKfQouZm9ybS1sb2dvIHsKCW1hcmdpbi1yaWdodDogMDsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCXotaW5kZXg6IDE7CglsZWZ0OiAwOwoJd2lkdGg6IDM5JTsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXRvcDogMDsKfQoKLmZvcm0tYnRuIHsKCWZsb2F0OiByaWdodDsKCW1hcmdpbi10b3A6IC01MHB4Owp9Ci5mb3JtLWxpbmsgewoJY29sb3I6ICMwMDAgIWltcG9ydGFudDsKCWZvbnQtc2l6ZTogMTRweDsKfQouZm9ybS1saW5rOmhvdmVyIHsKCWNvbG9yOiAjMTVmN2E0ICFpbXBvcnRhbnQ7Cn0KLmZvcm0taGVhZCB7CgltYXJnaW46IDQwcHggMCA0MHB4IDA7Cn0KLmZvcm0tY29udHJvbCB7CglwYWRkaW5nOiAyMHB4OwoJZm9udC1zaXplOiAxcmVtOwoJY29sb3I6ICNmZmZmZmY7Cglib3JkZXI6IDA7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJYmFja2dyb3VuZDogIzA4NWUzZTsKCWJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWUzZSAwJSwgIzBkMzQzMiAxMDAlKTsKCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWUzZSAwJSwgIzBkMzQzMiAxMDAlKTsKCWJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwODVlM2UgMCUsICMwZDM0MzIgMTAwJSk7CiBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzA4NWUzZScsIGVuZENvbG9yc3RyPScjMGQzNDMyJywgR3JhZGllbnRUeXBlPTAgKTsKfQouZm9ybS1zZWxlY3QgewoJcGFkZGluZzogMjBweDsKCWZvbnQtc2l6ZTogMXJlbTsKCWNvbG9yOiAjZDNkZGQ5OwoJYm9yZGVyOiAwOwoJYm9yZGVyLXJhZGl1czogMTBweDsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvc2VsZWN0LWFycm93LnBuZykgbm8tcmVwZWF0IGNlbnRlciByaWdodCAxMHB4LCAjMDg1ZTNlOwoJYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9zZWxlY3QtYXJyb3cucG5nKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDEwcHgsIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzA4NWUzZSAwJSwgIzBkMzQzMiAxMDAlKTsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvc2VsZWN0LWFycm93LnBuZykgbm8tcmVwZWF0IGNlbnRlciByaWdodCAxMHB4LCAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwODVlM2UgMCUsICMwZDM0MzIgMTAwJSk7CgliYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3NlbGVjdC1hcnJvdy5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMTBweCwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzA4NWUzZSAwJSwgIzBkMzQzMiAxMDAlKTsKIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDg1ZTNlJywgZW5kQ29sb3JzdHI9JyMwZDM0MzInLCBHcmFkaWVudFR5cGU9MCApOwp9Ci5jb2xvci0xIHsKCWNvbG9yOiAjMGQzNDMyOwp9Ci5jaGVja2JveCB7Cglmb250LXNpemU6IDE0cHg7Cgljb2xvcjogIzBkMzQzMjsKfQouZm9ybS1mbG9hdGluZyA+IGxhYmVsIHsKCWNvbG9yOiAjZDNkZGQ5Owp9Ci5mb3JtLWNweSB7CgliYWNrZ3JvdW5kOiAjZjZmNWVlOwoJcGFkZGluZzogMjBweCAwIDEwcHggMDsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWZvbnQtc2l6ZTogMTRweDsKfQouZm9ybS1jcHkgYSB7Cgljb2xvcjogIzA4NWUzZTsKfQouZm9ybS1jcHkgYTpob3ZlciB7Cgljb2xvcjogIzE1ZjNhMjsKfQouZm9ybS1zZWxlY3Qgb3B0aW9uIHsKCWJhY2tncm91bmQtY29sb3I6ICMzYTc5MzQ7Cgljb2xvcjogI2ZmZmZmZjsKfQoKIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjdweCkgewouZm9ybS1sb2dvIHsKIAoJd2lkdGg6IDEwMCU7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7CgkgCn0KLmZvcm0tYnRuIHsKCWZsb2F0OiBub25lOwoJbWFyZ2luLXRvcDogMDsKCXRleHQtYWxpZ246IGNlbnRlcjsKfQogfQogQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjU3NXB4KSB7CiAKIC5jb24tY29uIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKfX0KCgoKLypGYXEqLwoKLmZhcS1oZWFkIGgyIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCWNvbG9yOiAjMGYxMjY5OwoJZm9udC13ZWlnaHQ6IGJvbGQ7Cn0KLmZhcS1oZWFkIHsKCW1hcmdpbjogNzBweCAwIDMwcHggMDsKfQouZmFxX2FjY29yZGlhbiAuYWNjb3JkaW9uLXRvZ2dsZSB7CgltYXJnaW4tYm90dG9tOiA1cHg7CgljdXJzb3I6IHBvaW50ZXI7Cglmb250LXNpemU6IDE1cHg7Cgljb2xvcjogI2ZmZmZmZjsKCW92ZXJmbG93OiBoaWRkZW47Cgl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCXdpZHRoOiAxMDAlOwoJZm9udC13ZWlnaHQ6IDYwMDsKCXBhZGRpbmc6IDIwcHggNDZweCAyMHB4IDE3cHg7Cglib3JkZXItcmFkaXVzOiAxMHB4OwoJYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9hY2NvcmRpYW5fYXJyb3dfZG93bi5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMjBweCwgIzE1ZWY5ZjsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYWNjb3JkaWFuX2Fycm93X2Rvd24ucG5nKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDIwcHgsIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1ZWY5ZiAwJSwgIzEyNjQ0OCAxMDAlKTsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYWNjb3JkaWFuX2Fycm93X2Rvd24ucG5nKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDIwcHgsIC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1ZWY5ZiAwJSwgIzEyNjQ0OCAxMDAlKTsKCWJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYWNjb3JkaWFuX2Fycm93X2Rvd24ucG5nKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDIwcHgsIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMxNWVmOWYgMCUsICMxMjY0NDggMTAwJSk7CglmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzE1ZWY5ZicsIGVuZENvbG9yc3RyPScjMTI2NDQ4JywgR3JhZGllbnRUeXBlPTAgKTsKfQouZmFxX2FjY29yZGlhbiAuYWNjb3JkaW9uLXRvZ2dsZS5hY3RpdmUgewoJYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9hY2NvcmRpYW5fYXJyb3dfdXAucG5nKSBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDIwcHgsICMxMzgzNWM7Cgljb2xvcjogI2ZmZmZmZjsKfQouZmFxX2FjY29yZGlhbiB7Cgl3aWR0aDogMTAwJTsKfQouZmFxX2FjY29yZGlhbiAuYWNjb3JkaW9uLWNvbnRlbnQgcCB7Cgl3aWR0aDogMTAwJTsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCWZvbnQtc2l6ZTogMTVweDsKCWNvbG9yOiA7CglsaW5lLWhlaWdodDogMjRweDsKCWJhY2tncm91bmQ6ICNmZmZmZmY7CglwYWRkaW5nOiAyMHB4OwoJYm9yZGVyLXJhZGl1czogMTBweDsKfQouZmFxX2FjY29yZGlhbiAuYWNjb3JkaW9uLWNvbnRlbnQgewoJZGlzcGxheTogbm9uZTsKfQouZmFxX2FjY29yZGlhbiAuYWNjb3JkaW9uIC5vcGVuIHsKCWRpc3BsYXk6IGJsb2NrOwp9Ci5mYXEtYnRuIHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCW1hcmdpbjogMjBweCAwOwp9CgoucnVsZXMgcCB7CgltYXJnaW4tYm90dG9tOiAxNnB4OwoJY29sb3I6ICMwMDAwMDA7Cn0KCi5zdWNjZXNzIHsKCWJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxZGVnLCAjMTcxODU4LCAjMmI3OTJiKTsKCWJhY2tncm91bmQtc2l6ZTogNDAwJSA0MDAlOwoJLXdlYmtpdC1hbmltYXRpb246IEFuaW1hdGlvbk5hbWUgNXMgZWFzZSBpbmZpbml0ZTsKCS1tb3otYW5pbWF0aW9uOiBBbmltYXRpb25OYW1lIDVzIGVhc2UgaW5maW5pdGU7CglhbmltYXRpb246IEFuaW1hdGlvbk5hbWUgNXMgZWFzZSBpbmZpbml0ZTsKCWJvcmRlci1yYWRpdXM6IDA7Cglib3gtc2hhZG93OiAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpIGluc2V0OwoJY29sb3I6ICNmZmY7Cglmb250LXNpemU6IDEzcHg7CglwYWRkaW5nOiAxcHggMTBweDsKCW9wYWNpdHk6IDAuNzsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKfQoubXNnIHsKCWNvbG9yOiAjMDAwOwoJZm9udC1zaXplOiAxM3B4OwoJbWFyZ2luOiAxMHB4IDA7Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cgl3aWR0aDogMTAwJTsKfQoubXNnLmJsYWNrIHsKCWNvbG9yOiAjZmZmOwp9Ci5lcnJvciB7CgliYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMWRlZywgIzE3MTg1OCwgI2I5M2IzNyk7CgliYWNrZ3JvdW5kLXNpemU6IDQwMCUgNDAwJTsKCS13ZWJraXQtYW5pbWF0aW9uOiBBbmltYXRpb25OYW1lIDVzIGVhc2UgaW5maW5pdGU7CgktbW96LWFuaW1hdGlvbjogQW5pbWF0aW9uTmFtZSA1cyBlYXNlIGluZmluaXRlOwoJYW5pbWF0aW9uOiBBbmltYXRpb25OYW1lIDVzIGVhc2UgaW5maW5pdGU7Cglib3JkZXItcmFkaXVzOiAwOwoJYm94LXNoYWRvdzogMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KSBpbnNldDsKCWNvbG9yOiAjZmZmOwoJZm9udC1zaXplOiAxM3B4OwoJcGFkZGluZzogMXB4IDEwcHg7CglvcGFjaXR5OiAwLjc7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cn0KLm1zZyBsaSB7CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CglsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CgltYXJnaW46IDVweCAwOwp9Ci5tc2cgLmVycm9yIGkgewoJYmFja2dyb3VuZC1jb2xvcjogI2I5M2IzNzsKCWNvbG9yOiAjZmZmOwp9Ci5tc2cgLnN1Y2Nlc3MgaSB7CgliYWNrZ3JvdW5kLWNvbG9yOiAjMmI3OTJiOwoJY29sb3I6ICNmZmY7Cn0KLm1zZyBpIHsKCW1hcmdpbi1yaWdodDogNXB4OwoJcGFkZGluZzogMTBweDsKfQoKLmNsb3NlIHsKCWZsb2F0OiByaWdodDsKCWZvbnQtc2l6ZTogMS41cmVtOwoJZm9udC13ZWlnaHQ6IDcwMDsKCWxpbmUtaGVpZ2h0OiAxOwoJY29sb3I6ICMwMDA7Cgl0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmOwoJb3BhY2l0eTogLjU7Cn1idXR0b24uY2xvc2UgewoJcGFkZGluZzogMDsKCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OwoJYm9yZGVyOiAwOwoJLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwoJLW1vei1hcHBlYXJhbmNlOiBub25lOwoJYXBwZWFyYW5jZTogbm9uZTsKfSNsb2dpbmYgewoJcGFkZGluZy1ib3R0b206IDE0NnB4Owp9I3N1cHBme3BhZGRpbmctYm90dG9tOiAzOXB4O30KCgoKLnRhYmxlLWJnIHsKCWJhY2tncm91bmQ6ICMwODVlM2U7CgliYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwODVlM2UgMCUsICMwZDM1MzIgMTAwJSk7CgliYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwODVlM2UgMCUsICMwZDM1MzIgMTAwJSk7CgliYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDg1ZTNlIDAlLCAjMGQzNTMyIDEwMCUpOwoJYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTsKCWJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7CglmaWx0ZXI6IHByb2dpZDogRFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwODVlM2UnLCBlbmRDb2xvcnN0cj0nIzBkMzUzMicsIEdyYWRpZW50VHlwZT0wICk7CglwYWRkaW5nOiAxMnB4IDEycHggMHB4IDEycHg7Cglib3JkZXItcmFkaXVzOiAxMHB4Owp9CnRhYmxlIHRyIHRoIHsKCWJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDsKCWNvbG9yOiAjMGQzNDMyOwoJdGV4dC1hbGlnbjogbGVmdDsKCXBhZGRpbmc6IDFyZW0gLjVyZW07Cn0KdGFibGUgdHIgdGQgewoJYmFja2dyb3VuZDogIzE1ZTU5OSAhaW1wb3J0YW50OwoJZm9udC1zaXplOiAxNHB4OwoJdGV4dC1hbGlnbjogbGVmdDsKCWZvbnQtZmFtaWx5OiAncG9wcGlucycsc2Fucy1zZXJpZjsKCWZvbnQtd2VpZ2h0OiA0MDA7Cgljb2xvcjogIzAwMDsKCXBhZGRpbmc6IDFyZW0gLjVyZW07Cn0KdGFibGUgdHIgdGQgaSB7Cgljb2xvcjogI2ZmZjsKfQp0YWJsZSB0cjpudGgtY2hpbGQoMm4pIHRkIHsKCWJhY2tncm91bmQ6ICMxMzcyNTEgIWltcG9ydGFudDsKCWNvbG9yOiNmZmZmZmY7Cn0KLnBhZ2Utc2VsZWN0IHsKCXRleHQtYWxpZ246IGNlbnRlcjsKCW1hcmdpbi10b3A6IDIwcHg7Cglmb250LXNpemU6IDE0cHg7Cglmb250LWZhbWlseTogJ3BvcHBpbnMnLHNhbnMtc2VyaWY7Cn0KLnBhZ2Utc2VsZWN0IGE6bGFzdC1jaGlsZCBpbWcgewoJdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsKfQp0YWJsZSB0ciB0ZCBpIHsKCW1hcmdpbi1yaWdodDogNnB4Owp9LnRhYmxlX3BhZ2UgewoJdGV4dC1hbGlnbjogY2VudGVyOwp9LnBsYW4taGVhZCBoNCB7Cglmb250LXNpemU6IDIycHg7Cn10YWJsZSBpbnB1dFt0eXBlPSJ0ZXh0Il0gewoJd2lkdGg6IDEwMCU7Cglib3JkZXI6IG5vbmU7CglwYWRkaW5nOiAxMHB4IDEwcHg7Cn0KLnN1cHN1YyB7CglwYWRkaW5nLWJvdHRvbTogMzkzcHg7Cn0KCkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMTk5cHgpIHsKIAojbG9naW5mIHsKCXBhZGRpbmctYm90dG9tOiAwOwp9fQ=="}},"time_used":39,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":17,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/825.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.597Z","timestamp":1785159268597,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/825.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 674\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Fri, 28 Jul 2023 07:44:51 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:40:30 GMT\r\netag: \"25a8a1e3479b793e8bcddc8b2ba726a9\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 21239\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: N2KQCCoTmjUX-iJY_YOAXdaGKYuPYWH7W9hQZhJ4A7pQv7lSY55Tyg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":674,"size_decoded":1207,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"25a8a1e3479b793e8bcddc8b2ba726a9","sha1":"248492192bb393c84661daab721fcc5d0b82d165","sha256":"2d5a29e2c8a731b9c0891dfa54c3bf753ad5bba2911e71ebca654c273cf08748","sha512":"758bae768d116e95d923a254204ae52624a0bf3a4578fe62bc9039659c45655240b77e9bb92433669cc90f6de32c4df4e5bd83fc632f7c71a85a285446272159","ssdeep":"","tlshash":"dd014e4a0e257a702f230e7325bf2d4f102964e012b55986604eb1338e1eaed142062a","first_seen":"2023-08-15T00:41:50Z","last_seen":"2026-07-30T06:07:43.496422Z","times_seen":1850,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAACaUlEQVR4Xu2aPW7CMBiGOQJH6BE4AkfoEThCj8ANIiWwsCAmNnoBJCQ2JtiYUBc2Bla2Vl9Vq+R1En/+xQY/0rMQ298PdpSU9nqZTCaTyfCpqu+onU4HmLI7iqIvBYxRb2CgeL1i6vZU1aYhULw6BwOkoDNw4XQcYin6TCZfDQunozW4YIoagwt1GBqM32lRvGFpaqpqLC3UYWgwvlJtcAGFocH4SsuywBLbwckMQ4PxWbKg84ITGYYG4zNlPCHKk1gOVyuW+8sFa6mB49vE+Gw70bzxmbg5n7HmGjjei63gQA/G2wAc5MkoGkDWMLzxdUnnVFUsB1rD6sy3WZaj/wbgRQP7sxnm7o23xUKKb+Rf8RvpgoaUzKOw3hn0oid9qGkTtG0Hy6U0llQdCxxPUpM/Tycc+ov1bpA+0FQwWq+la02aNAClb15gvQtc3QO4umjAvVYNqIEXmRJ0A8TPVbp4siNM59aLF+AghvfQYy5edy0+Shs1oBMcrFAFbfmP7VZ7l9A9RXVcCJynVAk9IOAkhZRsaMa7nZQHw3cstxmDJgiLwwFzdcb8eJTisdX+yYwm4CIW0lmlb+16u2FdNWiM0bnuUrt4geMmkKpzjeOtNS7+HlzUwqANcAoubmiwBngBgxgYpAFewWCaem+Adyz/ScJrA4KCwZl6a8BDwCQYemnAQ8FkFNIfSvBN0OqtMAowqVBGBSbnV8ZPXI9ATtSHkRYvkBN2axJg0q5MCkze1iTBIkxNGixG16egqvZSYSonkzkukzZUEBbZ5tMVL+A04WmLF2DB6EuARb9U8YKXLj6TyWQycfADMiVWaB1DBnAAAAAASUVORK5CYII="}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/15932.2a70d397c34f2e9de94f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.270Z","timestamp":1785159269270,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/15932.2a70d397c34f2e9de94f.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"69f98b73-37f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17:23 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.51\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/05/2026 10:16:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: d7bbe7a57786165b94d5aba00d93cfd4\r\ncdn-cache: HIT\r\ncontent-encoding: br\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"]}],"data":{"size":895,"size_decoded":1167,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (895), with no line terminators","md5":"61ab7674e7397acc0fbdbd8b60e6843d","sha1":"fcd3f559f2622c63283e4bc9c57d10811df0e449","sha256":"6612bc0b7ab79c16fbd208e005ce64f38027f232bd2fc73621c14c2401cc1abb","sha512":"25a6b08a102f5c8bd5cd31c69e9e714962ab697d5d0b27c3d6ee50b77232d869dc271761eda4f53d91748de07f2e4798911326e27fef8995b5be37d735ab9188","ssdeep":"","tlshash":"3811293871a06d2c7312ee3c17686c8c795da26ca6835eceead07128479f2cc26720a0","first_seen":"2026-03-24T10:46:27.428699Z","last_seen":"2026-07-30T06:08:06.437048Z","times_seen":5254,"resource_available":false,"data":"LnR2LWVtYmVkLXdpZGdldC13cmFwcGVye2JhY2tncm91bmQ6IzAwMDA7aGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjEwMCU7d2lkdGg6MH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlcntmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDozNHB4O3RleHQtYWxpZ246Y2VudGVyfS50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIHN2Z3toZWlnaHQ6MTVweDttYXJnaW4taW5saW5lLWVuZDo1cHg7dmVydGljYWwtYWxpZ246dGV4dC10b3A7d2lkdGg6MjZweH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluaywudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluazp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDp2YXIoLS10di13aWRnZXQtYmFja2dyb3VuZC1jb2xvcix2YXIoLS1jb2xvci1iZy1wcmltYXJ5KSk7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1vdmVyZmxvd19hdXRve292ZXJmbG93OmF1dG99aHRtbC5pcy10cmFuc3BhcmVudCAudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDojMDAwMH1odG1sLmlzLXRyYW5zcGFyZW50IC50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keTpub3QoLnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1ib3JkZXItb24tdHJhbnNwYXJlbnQpe2JvcmRlci13aWR0aDowfQ=="}},"time_used":28,"timings":{"blocked":-1,"dns":8,"connect":1,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/shared-kb1yqHaA.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:35.077Z","timestamp":1785159275077,"http_version":"HTTP/2","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":"1857279285.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 14:34:45 GMT","end":"Wed, 02 Sep 2026 14:34:44 GMT"},"fingerprint":{"sha1":"92:5D:A0:17:13:91:72:7B:B6:8C:6A:7D:A9:55:7F:C8:A9:47:11:99","sha256":"0E:FC:E3:4D:AD:32:B2:11:05:DC:E3:CD:CC:9E:10:DC:C5:2D:9E:1C:D7:C1:9C:00:92:15:43:C5:B7:0B:3A:D6"}}},"request":{"raw":"GET /assets/shared-kb1yqHaA.js HTTP/1.1\r\nHost: widget-v3.smartsuppcdn.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\nOrigin: https://walmartfundholdings.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=1\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 13:34:35 GMT\r\ncontent-type: application/javascript\r\naccess-control-allow-origin: *\r\ncache-control: max-age=31536000, public, immutable\r\netag: W/\"6a670743-42705\"\r\nexpires: Tue, 27 Jul 2027 07:27:08 GMT\r\nlast-modified: Mon, 27 Jul 2026 07:22:43 GMT\r\nx-77-nzt: kx0QNIULp/naC9J8AWRSzCAGk/F1KrZykYZPzmWMgMxEtpxUKdNGk/uv+WJ56NXx+3zNNcQ\r\nx-77-nzt-ray: fdb54123451bfdfe6b5e676a7a49d904\r\nage: 19\r\nx-77-cache: HIT\r\nx-77-age: 22015\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":272133,"size_decoded":92601,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (44710)","md5":"4a99d6fd0e84ed566d578d0ed5dea128","sha1":"c729468068793db7ca783d243b2ec065b6e2f202","sha256":"99501ff83cea2d37fb29f4ff7e0bfc1a93655e56db91bce74171fe29f0821884","sha512":"fcab2b13f37fe49c7a500be1285445ec1dfb120ed4f6d909925ea5616ee9f62d999fe83c1f8210dcc1742528ee3469e5671b34191317836ab4ed3b020ade8608","ssdeep":"6144:mLjnOEIL18ad2jJKaQF+tRkYcuBa+y+mFJW:iOEIZRd29Uqj4r+mF4","tlshash":"b3443ad53294b03543db51e6906f1106b33e5c58580d812cf269ede638baec8a2f7fb8","first_seen":"2026-07-27T07:28:16.16312Z","last_seen":"2026-07-29T06:17:50.104199Z","times_seen":1066,"resource_available":true,"data":"dmFyIGU9T2JqZWN0LmNyZWF0ZSx0PU9iamVjdC5kZWZpbmVQcm9wZXJ0eSxuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iscj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyxpPU9iamVjdC5nZXRQcm90b3R5cGVPZixhPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksbz0oZSx0KT0+KCk9PihlJiYodD1lKGU9MCkpLHQpLHM9KGUsdCk9PigpPT4odHx8KGUoKHQ9e2V4cG9ydHM6e319KS5leHBvcnRzLHQpLGU9bnVsbCksdC5leHBvcnRzKSxjPShlLG4pPT57bGV0IHI9e307Zm9yKHZhciBpIGluIGUpdChyLGkse2dldDplW2ldLGVudW1lcmFibGU6ITB9KTtyZXR1cm4gbnx8dChyLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6YE1vZHVsZWB9KSxyfSxsPShlLGksbyxzKT0+e2lmKGkmJnR5cGVvZiBpPT1gb2JqZWN0YHx8dHlwZW9mIGk9PWBmdW5jdGlvbmApZm9yKHZhciBjPXIoaSksbD0wLHU9Yy5sZW5ndGgsZDtsPHU7bCsrKWQ9Y1tsXSwhYS5jYWxsKGUsZCkmJmQhPT1vJiZ0KGUsZCx7Z2V0OihlPT5pW2VdKS5iaW5kKG51bGwsZCksZW51bWVyYWJsZTohKHM9bihpLGQpKXx8cy5lbnVtZXJhYmxlfSk7cmV0dXJuIGV9LHU9KG4scixhKT0+KGE9bj09bnVsbD97fTplKGkobikpLGwocnx8IW58fCFuLl9fZXNNb2R1bGU/dChhLGBkZWZhdWx0YCx7dmFsdWU6bixlbnVtZXJhYmxlOiEwfSk6YSxuKSksZD1lPT5hLmNhbGwoZSxgbW9kdWxlLmV4cG9ydHNgKT9lW2Btb2R1bGUuZXhwb3J0c2BdOmwodCh7fSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZSksZj1BcnJheS5pc0FycmF5LHA9QXJyYXkucHJvdG90eXBlLmluZGV4T2YsbT1BcnJheS5wcm90b3R5cGUuaW5jbHVkZXMsaD1BcnJheS5mcm9tLGc9T2JqZWN0LmRlZmluZVByb3BlcnR5LF89T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcix2PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzLHk9T2JqZWN0LnByb3RvdHlwZSxlZT1BcnJheS5wcm90b3R5cGUsYj1PYmplY3QuZ2V0UHJvdG90eXBlT2YsdGU9T2JqZWN0LmlzRXh0ZW5zaWJsZTtmdW5jdGlvbiBuZShlKXtyZXR1cm4gdHlwZW9mIGU9PWBmdW5jdGlvbmB9dmFyIHg9KCk9Pnt9O2Z1bmN0aW9uIHJlKGUpe3JldHVybiBlKCl9ZnVuY3Rpb24gaWUoZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspZVt0XSgpfWZ1bmN0aW9uIGFlKCl7dmFyIGUsdDtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZSgobixyKT0+e2U9bix0PXJ9KSxyZXNvbHZlOmUscmVqZWN0OnR9fXZhciBvZT0xPDwyNCxzZT0xMDI0LGNlPTIwNDgsbGU9NDA5Nix1ZT04MTkyLGRlPTE2Mzg0LGZlPTMyNzY4LHBlPTE8PDI1LG1lPTY1NTM2LGhlPTE8PDE5LGdlPTE8PDIwLF9lPTE8PDI1LHZlPTY1NTM2LHllPTE8PDIxLGJlPTE8PDIyLHhlPTE8PDIzLFNlPVN5bWJvbChgJHN0YXRlYCksQ2U9U3ltYm9sKGBsZWdhY3kgcHJvcHNgKSx3ZT1TeW1ib2woYGApLFRlPW5ldyBjbGFzcyBleHRlbmRzIEVycm9ye25hbWU9YFN0YWxlUmVhY3Rpb25FcnJvcmA7bWVzc2FnZT0iVGhlIHJlYWN0aW9uIHRoYXQgY2FsbGVkIGBnZXRBYm9ydFNpZ25hbCgpYCB3YXMgcmUtcnVuIG9yIGRlc3Ryb3llZCJ9LEVlPSEhZ2xvYmFsVGhpcy5kb2N1bWVudD8uY29udGVudFR5cGUmJmdsb2JhbFRoaXMuZG9jdW1lbnQuY29udGVudFR5cGUuaW5jbHVkZXMoYHhtbGApO2Z1bmN0aW9uIERlKGUpe3Rocm93IEVycm9yKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9saWZlY3ljbGVfb3V0c2lkZV9jb21wb25lbnRgKX1mdW5jdGlvbiBPZSgpe3Rocm93IEVycm9yKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9hc3luY19kZXJpdmVkX29ycGhhbmApfWZ1bmN0aW9uIGtlKGUsdCxuKXt0aHJvdyBFcnJvcihgaHR0cHM6Ly9zdmVsdGUuZGV2L2UvZWFjaF9rZXlfZHVwbGljYXRlYCl9ZnVuY3Rpb24gQWUoZSl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL2VmZmVjdF9pbl90ZWFyZG93bmApfWZ1bmN0aW9uIGplKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL2VmZmVjdF9pbl91bm93bmVkX2Rlcml2ZWRgKX1mdW5jdGlvbiBNZShlKXt0aHJvdyBFcnJvcihgaHR0cHM6Ly9zdmVsdGUuZGV2L2UvZWZmZWN0X29ycGhhbmApfWZ1bmN0aW9uIE5lKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL2VmZmVjdF91cGRhdGVfZGVwdGhfZXhjZWVkZWRgKX1mdW5jdGlvbiBQZShlKXt0aHJvdyBFcnJvcihgaHR0cHM6Ly9zdmVsdGUuZGV2L2UvcHJvcHNfaW52YWxpZF92YWx1ZWApfWZ1bmN0aW9uIEZlKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3NldF9jb250ZXh0X2FmdGVyX2luaXRgKX1mdW5jdGlvbiBJZSgpe3Rocm93IEVycm9yKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9zdGF0ZV9kZXNjcmlwdG9yc19maXhlZGApfWZ1bmN0aW9uIExlKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3N0YXRlX3Byb3RvdHlwZV9maXhlZGApfWZ1bmN0aW9uIFJlKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3N0YXRlX3Vuc2FmZV9tdXRhdGlvbmApfWZ1bmN0aW9uIHplKCl7dGhyb3cgRXJyb3IoYGh0dHBzOi8vc3ZlbHRlLmRldi9lL3N2ZWx0ZV9ib3VuZGFyeV9yZXNldF9vbmVycm9yYCl9dmFyIEJlPXt9LFM9U3ltYm9sKCksVmU9YGh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWxgLEhlPWBodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z2AsVWU9YGh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUxgO2Z1bmN0aW9uIFdlKCl7Y29uc29sZS53YXJuKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9kZXJpdmVkX2luZXJ0YCl9ZnVuY3Rpb24gR2UoZSl7Y29uc29sZS53YXJuKGBodHRwczovL3N2ZWx0ZS5kZXYvZS9oeWRyYXRpb25fbWlzbWF0Y2hgKX1mdW5jdGlvbiBLZSgpe2NvbnNvbGUud2FybihgaHR0cHM6Ly9zdmVsdGUuZGV2L2Uvc2VsZWN0X211bHRpcGxlX2ludmFsaWRfdmFsdWVgKX1mdW5jdGlvbiBxZSgpe2NvbnNvbGUud2FybihgaHR0cHM6Ly9zdmVsdGUuZGV2L2Uvc3ZlbHRlX2JvdW5kYXJ5X3Jlc2V0X25vb3BgKX12YXIgQz0hMTtmdW5jdGlvbiBKZShlKXtDPWV9dmFyIHc7ZnVuY3Rpb24gVChlKXtpZihlPT09bnVsbCl0aHJvdyBHZSgpLEJlO3JldHVybiB3PWV9ZnVuY3Rpb24gWWUoKXtyZXR1cm4gVChCbih3KSl9ZnVuY3Rpb24gWGUoZSl7aWYoQyl7aWYoQm4odykhPT1udWxsKXRocm93IEdlKCksQmU7dz1lfX1mdW5jdGlvbiBaZShlPTEpe2lmKEMpe2Zvcih2YXIgdD1lLG49dzt0LS07KW49Qm4obik7dz1ufX1mdW5jdGlvbiBRZShlPSEwKXtmb3IodmFyIHQ9MCxuPXc7Oyl7aWYobi5ub2RlVHlwZT09PTgpe3ZhciByPW4uZGF0YTtpZihyPT09YF1gKXtpZih0PT09MClyZXR1cm4gbjstLXR9ZWxzZSAocj09PWBbYHx8cj09PWBbIWB8fHJbMF09PT1gW2AmJiFpc05hTihOdW1iZXIoci5zbGljZSgxKSkpKSYmKHQrPTEpfXZhciBpPUJuKG4pO2UmJm4ucmVtb3ZlKCksbj1pfX1mdW5jdGlvbiAkZShlKXtpZighZXx8ZS5ub2RlVHlwZSE9PTgpdGhyb3cgR2UoKSxCZTtyZXR1cm4gZS5kYXRhfWZ1bmN0aW9uIGV0KGUpe3JldHVybiBlPT09dGhpcy52fWZ1bmN0aW9uIHR0KGUsdCl7cmV0dXJuIGU9PWU/ZSE9PXR8fHR5cGVvZiBlPT1gb2JqZWN0YCYmISFlfHx0eXBlb2YgZT09YGZ1bmN0aW9uYDp0PT10fWZ1bmN0aW9uIG50KGUpe3JldHVybiF0dChlLHRoaXMudil9dmFyIHJ0PSExLGl0PSExO2Z1bmN0aW9uIGF0KCl7aXQ9ITB9dmFyIEU9bnVsbDtmdW5jdGlvbiBvdChlKXtFPWV9ZnVuY3Rpb24gc3QoZSl7cmV0dXJuIGZ0KGBnZXRDb250ZXh0YCkuZ2V0KGUpfWZ1bmN0aW9uIGN0KGUsdCl7bGV0IG49ZnQoYHNldENvbnRleHRgKTtpZihydCl7dmFyIHI9SS5mOyFGJiZyJjMyJiYhRS5pfHxGZSgpfXJldHVybiBuLnNldChlLHQpLHR9ZnVuY3Rpb24gbHQoZSx0PSExLG4pe0U9e3A6RSxpOiExLGM6bnVsbCxlOm51bGwsczplLHg6bnVsbCxyOkksbDppdCYmIXQ/e3M6bnVsbCx1Om51bGwsJDpbXX06bnVsbH19ZnVuY3Rpb24gdXQoZSl7dmFyIHQ9RSxuPXQuZTtpZihuIT09bnVsbCl7dC5lPW51bGw7Zm9yKHZhciByIG9mIG4pc3Iocil9cmV0dXJuIGUhPT12b2lkIDAmJih0Lng9ZSksdC5pPSEwLEU9dC5wLGU/P3t9fWZ1bmN0aW9uIGR0KCl7cmV0dXJuIWl0fHxFIT09bnVsbCYmRS5sPT09bnVsbH1mdW5jdGlvbiBmdChlKXtyZXR1cm4gRT09PW51bGwmJkRlKGUpLEUuYz8/PW5ldyBNYXAocHQoRSl8fHZvaWQgMCl9ZnVuY3Rpb24gcHQoZSl7bGV0IHQ9ZS5wO2Zvcig7dCE9PW51bGw7KXtsZXQgZT10LmM7aWYoZSE9PW51bGwpcmV0dXJuIGU7dD10LnB9cmV0dXJuIG51bGx9dmFyIG10PVtdO2Z1bmN0aW9uIGh0KCl7dmFyIGU9bXQ7bXQ9W10saWUoZSl9ZnVuY3Rpb24gZ3QoZSl7aWYobXQubGVuZ3RoPT09MCYmIXp0KXt2YXIgdD1tdDtxdWV1ZU1pY3JvdGFzaygoKT0+e3Q9PT1tdCYmaHQoKX0pfW10LnB1c2goZSl9ZnVuY3Rpb24gX3QoKXtmb3IoO210Lmxlbmd0aD4wOylodCgpfWZ1bmN0aW9uIHZ0KGUpe3ZhciB0PUk7aWYodD09PW51bGwpcmV0dXJuIEYuZnw9eGUsZTtpZighKHQuZiYzMjc2OCkmJiEodC5mJjQpKXRocm93IGU7eXQoZSx0KX1mdW5jdGlvbiB5dChlLHQpe2Zvcig7dCE9PW51bGw7KXtpZih0LmYmMTI4KXtpZighKHQuZiYzMjc2OCkpdGhyb3cgZTt0cnl7dC5iLmVycm9yKGUpO3JldHVybn1jYXRjaCh0KXtlPXR9fXQ9dC5wYXJlbnR9dGhyb3cgZX12YXIgYnQ9fihjZXxsZXxzZSk7ZnVuY3Rpb24gRChlLHQpe2UuZj1lLmYmYnR8dH1mdW5jdGlvbiB4dChlKXtlLmYmNTEyfHxlLmRlcHM9PT1udWxsP0QoZSxzZSk6RChlLGxlKX1mdW5jdGlvbiBTdChlKXtpZihlIT09bnVsbClmb3IobGV0IHQgb2YgZSkhKHQuZiYyKXx8ISh0LmYmNjU1MzYpfHwodC5mXj12ZSxTdCh0LmRlcHMpKX1mdW5jdGlvbiBDdChlLHQsbil7ZS5mJjIwNDg/dC5hZGQoZSk6ZS5mJjQwOTYmJm4uYWRkKGUpLFN0KGUuZGVwcyksRChlLHNlKX1mdW5jdGlvbiB3dChlLHQsbil7aWYoZT09bnVsbClyZXR1cm4gdCh2b2lkIDApLG4mJm4odm9pZCAwKSx4O2xldCByPSRyKCgpPT5lLnN1YnNjcmliZSh0LG4pKTtyZXR1cm4gci51bnN1YnNjcmliZT8oKT0+ci51bnN1YnNjcmliZSgpOnJ9dmFyIFR0PVtdO2Z1bmN0aW9uIEV0KGUsdCl7cmV0dXJue3N1YnNjcmliZTpPKGUsdCkuc3Vic2NyaWJlfX1mdW5jdGlvbiBPKGUsdD14KXtsZXQgbj1udWxsLHI9bmV3IFNldDtmdW5jdGlvbiBpKHQpe2lmKHR0KGUsdCkmJihlPXQsbikpe2xldCB0PSFUdC5sZW5ndGg7Zm9yKGxldCB0IG9mIHIpdFsxXSgpLFR0LnB1c2godCxlKTtpZih0KXtmb3IobGV0IGU9MDtlPFR0Lmxlbmd0aDtlKz0yKVR0W2VdWzBdKFR0W2UrMV0pO1R0Lmxlbmd0aD0wfX19ZnVuY3Rpb24gYSh0KXtpKHQoZSkpfWZ1bmN0aW9uIG8obyxzPXgpe2xldCBjPVtvLHNdO3JldHVybiByLmFkZChjKSxyLnNpemU9PT0xJiYobj10KGksYSl8fHgpLG8oZSksKCk9PntyLmRlbGV0ZShjKSxyLnNpemU9PT0wJiZuJiYobigpLG49bnVsbCl9fXJldHVybntzZXQ6aSx1cGRhdGU6YSxzdWJzY3JpYmU6b319ZnVuY3Rpb24gayhlLHQsbil7bGV0IHI9IUFycmF5LmlzQXJyYXkoZSksaT1yP1tlXTplO2lmKCFpLmV2ZXJ5KEJvb2xlYW4pKXRocm93IEVycm9yKGBkZXJpdmVkKCkgZXhwZWN0cyBzdG9yZXMgYXMgaW5wdXQsIGdvdCBhIGZhbHN5IHZhbHVlYCk7bGV0IGE9dC5sZW5ndGg8MjtyZXR1cm4gRXQobiwoZSxuKT0+e2xldCBvPSExLHM9W10sYz0wLGw9eCx1PSgpPT57aWYoYylyZXR1cm47bCgpO2xldCBpPXQocj9zWzBdOnMsZSxuKTthP2UoaSk6bD10eXBlb2YgaT09YGZ1bmN0aW9uYD9pOnh9LGQ9aS5tYXAoKGUsdCk9Pnd0KGUsZT0+e3NbdF09ZSxjJj1+KDE8PHQpLG8mJnUoKX0sKCk9PntjfD0xPDx0fSkpO3JldHVybiBvPSEwLHUoKSxmdW5jdGlvbigpe2llKGQpLGwoKSxvPSExfX0pfWZ1bmN0aW9uIEEoZSl7bGV0IHQ7cmV0dXJuIHd0KGUsZT0+dD1lKSgpLHR9dmFyIER0PSExLE90PSExLGt0PVN5bWJvbCgpO2Z1bmN0aW9uIEF0KGUsdCxuKXtsZXQgcj1uW3RdPz89e3N0b3JlOm51bGwsc291cmNlOnduKHZvaWQgMCksdW5zdWJzY3JpYmU6eH07aWYoci5zdG9yZSE9PWUmJiEoa3QgaW4gbikpaWYoci51bnN1YnNjcmliZSgpLHIuc3RvcmU9ZT8/bnVsbCxlPT1udWxsKXIuc291cmNlLnY9dm9pZCAwLHIudW5zdWJzY3JpYmU9eDtlbHNle3ZhciBpPSEwO3IudW5zdWJzY3JpYmU9d3QoZSxlPT57aT9yLnNvdXJjZS52PWU6VG4oci5zb3VyY2UsZSl9KSxpPSExfXJldHVybiBlJiZrdCBpbiBuP0EoZSk6UihyLnNvdXJjZSl9ZnVuY3Rpb24ganQoZSx0KXtyZXR1cm4gTnQoZSx0KSx0fWZ1bmN0aW9uIE10KCl7bGV0IGU9e307ZnVuY3Rpb24gdCgpe2FyKCgpPT57Zm9yKHZhciB0IGluIGUpZVt0XS51bnN1YnNjcmliZSgpO2coZSxrdCx7ZW51bWVyYWJsZTohMSx2YWx1ZTohMH0pfSl9cmV0dXJuW2UsdF19ZnVuY3Rpb24gTnQoZSx0KXtEdD0hMDt0cnl7ZS5zZXQodCl9ZmluYWxseXtEdD0hMX19ZnVuY3Rpb24gUHQoZSx0LG4pe3JldHVybiBOdChlLG4pLHR9ZnVuY3Rpb24gRnQoZSl7dmFyIHQ9T3Q7dHJ5e3JldHVybiBPdD0hMSxbZSgpLE90XX1maW5hbGx5e090PXR9fXZhciBJdD1uZXcgU2V0LGo9bnVsbCxMdD1udWxsLE09bnVsbCxSdD1udWxsLHp0PSExLEJ0PSExLFZ0PW51bGwsSHQ9bnVsbCxVdD0wLFd0PTEsR3Q9Y2xhc3MgZXtpZD1XdCsrO2N1cnJlbnQ9bmV3IE1hcDtwcmV2aW91cz1uZXcgTWFwOyNlPW5ldyBTZXQ7I3Q9bmV3IFNldDsjbj1uZXcgU2V0OyNyPW5ldyBNYXA7I2k9bmV3IE1hcDsjYT1udWxsOyNvPVtdOyNzPVtdOyNjPW5ldyBTZXQ7I2w9bmV3IFNldDsjdT1uZXcgTWFwOyNkPW5ldyBTZXQ7aXNfZm9yaz0hMTsjZj0hMTsjcD1uZXcgU2V0OyNtKCl7cmV0dXJuIHRoaXMuaXNfZm9ya3x8dGhpcy4jaS5zaXplPjB9I2goKXtmb3IobGV0IG4gb2YgdGhpcy4jcClmb3IobGV0IHIgb2Ygbi4jaS5rZXlzKCkpe2Zvcih2YXIgZT0hMSx0PXI7dC5wYXJlbnQhPT1udWxsOyl7aWYodGhpcy4jdS5oYXModCkpe2U9ITA7YnJlYWt9dD10LnBhcmVudH1pZighZSlyZXR1cm4hMH1yZXR1cm4hMX1za2lwX2VmZmVjdChlKXt0aGlzLiN1LmhhcyhlKXx8dGhpcy4jdS5zZXQoZSx7ZDpbXSxtOltdfSksdGhpcy4jZC5kZWxldGUoZSl9dW5za2lwX2VmZmVjdChlLHQ9ZT0+dGhpcy5zY2hlZHVsZShlKSl7dmFyIG49dGhpcy4jdS5nZXQoZSk7aWYobil7dGhpcy4jdS5kZWxldGUoZSk7Zm9yKHZhciByIG9mIG4uZClEKHIsY2UpLHQocik7Zm9yKHIgb2Ygbi5tKUQocixsZSksdChyKX10aGlzLiNkLmFkZChlKX0jZygpe2lmKFV0Kys+MWUzJiYoSXQuZGVsZXRlKHRoaXMpLHF0KCkpLCF0aGlzLiNtKCkpe2ZvcihsZXQgZSBvZiB0aGlzLiNjKXRoaXMuI2wuZGVsZXRlKGUpLEQoZSxjZSksdGhpcy5zY2hlZHVsZShlKTtmb3IobGV0IGUgb2YgdGhpcy4jbClEKGUsbGUpLHRoaXMuc2NoZWR1bGUoZSl9bGV0IHQ9dGhpcy4jbzt0aGlzLiNvPVtdLHRoaXMuYXBwbHkoKTt2YXIgbj1WdD1bXSxyPVtdLGk9SHQ9W107Zm9yKGxldCBlIG9mIHQpdHJ5e3RoaXMuI18oZSxuLHIpfWNhdGNoKHQpe3Rocm93IGVuKGUpLHR9aWYoaj1udWxsLGkubGVuZ3RoPjApe3ZhciBhPWUuZW5zdXJlKCk7Zm9yKGxldCBlIG9mIGkpYS5zY2hlZHVsZShlKX1pZihWdD1udWxsLEh0PW51bGwsdGhpcy4jbSgpfHx0aGlzLiNoKCkpe3RoaXMuI3YociksdGhpcy4jdihuKTtmb3IobGV0W2UsdF1vZiB0aGlzLiN1KSR0KGUsdCl9ZWxzZXt0aGlzLiNyLnNpemU9PT0wJiZJdC5kZWxldGUodGhpcyksdGhpcy4jYy5jbGVhcigpLHRoaXMuI2wuY2xlYXIoKTtmb3IobGV0IGUgb2YgdGhpcy4jZSllKHRoaXMpO3RoaXMuI2UuY2xlYXIoKSxMdD10aGlzLFl0KHIpLFl0KG4pLEx0PW51bGwsdGhpcy4jYT8ucmVzb2x2ZSgpfXZhciBvPWo7aWYodGhpcy4jby5sZW5ndGg+MCl7bGV0IGU9bz8/PXRoaXM7ZS4jby5wdXNoKC4uLnRoaXMuI28uZmlsdGVyKHQ9PiFlLiNvLmluY2x1ZGVzKHQpKSl9byE9PW51bGwmJihJdC5hZGQobyksby4jZygpKSxydCYmIUl0Lmhhcyh0aGlzKSYmdGhpcy4jeSgpfSNfKGUsdCxuKXtlLmZePXNlO2Zvcih2YXIgcj1lLmZpcnN0O3IhPT1udWxsOyl7dmFyIGk9ci5mLGE9KGkmOTYpIT0wO2lmKCEoYSYmaSYxMDI0fHxpJjgxOTJ8fHRoaXMuI3UuaGFzKHIpKSYmci5mbiE9PW51bGwpe2E/ci5mXj1zZTppJjQ/dC5wdXNoKHIpOnJ0JiZpJjE2Nzc3MjI0P24ucHVzaChyKTpXcihyKSYmKGkmMTYmJnRoaXMuI2wuYWRkKHIpLFlyKHIpKTt2YXIgbz1yLmZpcnN0O2lmKG8hPT1udWxsKXtyPW87Y29udGludWV9fWZvcig7ciE9PW51bGw7KXt2YXIgcz1yLm5leHQ7aWYocyE9PW51bGwpe3I9czticmVha31yPXIucGFyZW50fX19I3YoZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0Kz0xKUN0KGVbdF0sdGhpcy4jYyx0aGlzLiNsKX1jYXB0dXJlKGUsdCxuPSExKXtlLnYhPT1TJiYhdGhpcy5wcmV2aW91cy5oYXMoZSkmJnRoaXMucHJldmlvdXMuc2V0KGUsZS52KSxlLmYmODM4ODYwOHx8KHRoaXMuY3VycmVudC5zZXQoZSxbdCxuXSksTT8uc2V0KGUsdCkpLHRoaXMuaXNfZm9ya3x8KGUudj10KX1hY3RpdmF0ZSgpe2o9dGhpc31kZWFjdGl2YXRlKCl7aj1udWxsLE09bnVsbH1mbHVzaCgpe3RyeXtCdD0hMCxqPXRoaXMsdGhpcy4jZygpfWZpbmFsbHl7VXQ9MCxSdD1udWxsLFZ0PW51bGwsSHQ9bnVsbCxCdD0hMSxqPW51bGwsTT1udWxsLGJuLmNsZWFyKCl9fWRpc2NhcmQoKXtmb3IobGV0IGUgb2YgdGhpcy4jdCllKHRoaXMpO3RoaXMuI3QuY2xlYXIoKSx0aGlzLiNuLmNsZWFyKCksSXQuZGVsZXRlKHRoaXMpfXJlZ2lzdGVyX2NyZWF0ZWRfZWZmZWN0KGUpe3RoaXMuI3MucHVzaChlKX0jeSgpe2ZvcihsZXQgbCBvZiBJdCl7dmFyIGU9bC5pZDx0aGlzLmlkLHQ9W107Zm9yKGxldFtyLFtpLGFdXW9mIHRoaXMuY3VycmVudCl7aWYobC5jdXJyZW50LmhhcyhyKSl7dmFyIG49bC5jdXJyZW50LmdldChyKVswXTtpZihlJiZpIT09bilsLmN1cnJlbnQuc2V0KHIsW2ksYV0pO2Vsc2UgY29udGludWV9dC5wdXNoKHIpfXZhciByPVsuLi5sLmN1cnJlbnQua2V5cygpXS5maWx0ZXIoZT0+IXRoaXMuY3VycmVudC5oYXMoZSkpO2lmKHIubGVuZ3RoPT09MCllJiZsLmRpc2NhcmQoKTtlbHNlIGlmKHQubGVuZ3RoPjApe2lmKGUpZm9yKGxldCBlIG9mIHRoaXMuI2QpbC51bnNraXBfZWZmZWN0KGUsZT0+e2UuZiY0MTk0MzIwP2wuc2NoZWR1bGUoZSk6bC4jdihbZV0pfSk7bC5hY3RpdmF0ZSgpO3ZhciBpPW5ldyBTZXQsYT1uZXcgTWFwO2Zvcih2YXIgbyBvZiB0KVh0KG8scixpLGEpO2E9bmV3IE1hcDt2YXIgcz1bLi4ubC5jdXJyZW50LmtleXMoKV0uZmlsdGVyKGU9PnRoaXMuY3VycmVudC5oYXMoZSk/dGhpcy5jdXJyZW50LmdldChlKVswXSE9PWU6ITApO2ZvcihsZXQgZSBvZiB0aGlzLiNzKSEoZS5mJjE1NTY0OCkmJlp0KGUscyxhKSYmKGUuZiY0MTk0MzIwPyhEKGUsY2UpLGwuc2NoZWR1bGUoZSkpOmwuI2MuYWRkKGUpKTtpZihsLiNvLmxlbmd0aD4wKXtsLmFwcGx5KCk7Zm9yKHZhciBjIG9mIGwuI28pbC4jXyhjLFtdLFtdKTtsLiNvPVtdfWwuZGVhY3RpdmF0ZSgpfX1mb3IobGV0IGUgb2YgSXQpZS4jcC5oYXModGhpcykmJihlLiNwLmRlbGV0ZSh0aGlzKSxlLiNwLnNpemU9PT0wJiYhZS4jbSgpJiYoZS5hY3RpdmF0ZSgpLGUuI2coKSkpfWluY3JlbWVudChlLHQpe2xldCBuPXRoaXMuI3IuZ2V0KHQpPz8wO2lmKHRoaXMuI3Iuc2V0KHQsbisxKSxlKXtsZXQgZT10aGlzLiNpLmdldCh0KT8/MDt0aGlzLiNpLnNldCh0LGUrMSl9fWRlY3JlbWVudChlLHQsbil7bGV0IHI9dGhpcy4jci5nZXQodCk/PzA7aWYocj09PTE/dGhpcy4jci5kZWxldGUodCk6dGhpcy4jci5zZXQodCxyLTEpLGUpe2xldCBlPXRoaXMuI2kuZ2V0KHQpPz8wO2U9PT0xP3RoaXMuI2kuZGVsZXRlKHQpOnRoaXMuI2kuc2V0KHQsZS0xKX10aGlzLiNmfHxufHwodGhpcy4jZj0hMCxndCgoKT0+e3RoaXMuI2Y9ITEsdGhpcy5mbHVzaCgpfSkpfXRyYW5zZmVyX2VmZmVjdHMoZSx0KXtmb3IobGV0IHQgb2YgZSl0aGlzLiNjLmFkZCh0KTtmb3IobGV0IGUgb2YgdCl0aGlzLiNsLmFkZChlKTtlLmNsZWFyKCksdC5jbGVhcigpfW9uY29tbWl0KGUpe3RoaXMuI2UuYWRkKGUpfW9uZGlzY2FyZChlKXt0aGlzLiN0LmFkZChlKX1vbl9mb3JrX2NvbW1pdChlKXt0aGlzLiNuLmFkZChlKX1ydW5fZm9ya19jb21taXRfY2FsbGJhY2tzKCl7Zm9yKGxldCBlIG9mIHRoaXMuI24pZSh0aGlzKTt0aGlzLiNuLmNsZWFyKCl9c2V0dGxlZCgpe3JldHVybih0aGlzLiNhPz89YWUoKSkucHJvbWlzZX1zdGF0aWMgZW5zdXJlKCl7aWYoaj09PW51bGwpe2xldCB0PWo9bmV3IGU7QnR8fChJdC5hZGQoaiksenR8fGd0KCgpPT57aj09PXQmJnQuZmx1c2goKX0pKX1yZXR1cm4gan1hcHBseSgpe2lmKCFydHx8IXRoaXMuaXNfZm9yayYmSXQuc2l6ZT09PTEpe009bnVsbDtyZXR1cm59TT1uZXcgTWFwO2ZvcihsZXRbZSxbdF1db2YgdGhpcy5jdXJyZW50KU0uc2V0KGUsdCk7Zm9yKGxldCBuIG9mIEl0KWlmKCEobj09PXRoaXN8fG4uaXNfZm9yaykpe3ZhciBlPSExLHQ9ITE7aWYobi5pZDx0aGlzLmlkKWZvcihsZXRbcixbLGldXW9mIG4uY3VycmVudClpfHwoZXx8PXRoaXMuY3VycmVudC5oYXMociksdHx8PSF0aGlzLmN1cnJlbnQuaGFzKHIpKTtpZihlJiZ0KXRoaXMuI3AuYWRkKG4pO2Vsc2UgZm9yKGxldFtlLHRdb2Ygbi5wcmV2aW91cylNLmhhcyhlKXx8TS5zZXQoZSx0KX19c2NoZWR1bGUoZSl7aWYoUnQ9ZSxlLmI/LmlzX3BlbmRpbmcmJmUuZiYxNjc3NzIyOCYmIShlLmYmMzI3NjgpKXtlLmIuZGVmZXJfZWZmZWN0KGUpO3JldHVybn1mb3IodmFyIHQ9ZTt0LnBhcmVudCE9PW51bGw7KXt0PXQucGFyZW50O3ZhciBuPXQuZjtpZihWdCE9PW51bGwmJnQ9PT1JJiYocnR8fChGPT09bnVsbHx8IShGLmYmMikpJiYhRHQpKXJldHVybjtpZihuJjk2KXtpZighKG4mMTAyNCkpcmV0dXJuO3QuZl49c2V9fXRoaXMuI28ucHVzaCh0KX19O2Z1bmN0aW9uIEt0KGUpe3ZhciB0PXp0O3p0PSEwO3RyeXt2YXIgbjtmb3IoZSYmKGohPT1udWxsJiYhai5pc19mb3JrJiZqLmZsdXNoKCksbj1lKCkpOzspe2lmKF90KCksaj09PW51bGwpcmV0dXJuIG47ai5mbHVzaCgpfX1maW5hbGx5e3p0PXR9fWZ1bmN0aW9uIHF0KCl7dHJ5e05lKCl9Y2F0Y2goZSl7eXQoZSxSdCl9fXZhciBKdD1udWxsO2Z1bmN0aW9uIFl0KGUpe3ZhciB0PWUubGVuZ3RoO2lmKHQhPT0wKXtmb3IodmFyIG49MDtuPHQ7KXt2YXIgcj1lW24rK107aWYoIShyLmYmMjQ1NzYpJiZXcihyKSYmKEp0PW5ldyBTZXQsWXIociksci5kZXBzPT09bnVsbCYmci5maXJzdD09PW51bGwmJnIubm9kZXM9PT1udWxsJiZyLnRlYXJkb3duPT09bnVsbCYmci5hYz09PW51bGwmJnhyKHIpLEp0Py5zaXplPjApKXtibi5jbGVhcigpO2ZvcihsZXQgZSBvZiBKdCl7aWYoZS5mJjI0NTc2KWNvbnRpbnVlO2xldCB0PVtlXSxuPWUucGFyZW50O2Zvcig7biE9PW51bGw7KUp0LmhhcyhuKSYmKEp0LmRlbGV0ZShuKSx0LnB1c2gobikpLG49bi5wYXJlbnQ7Zm9yKGxldCBlPXQubGVuZ3RoLTE7ZT49MDtlLS0pe2xldCBuPXRbZV07bi5mJjI0NTc2fHxZcihuKX19SnQuY2xlYXIoKX19SnQ9bnVsbH19ZnVuY3Rpb24gWHQoZSx0LG4scil7aWYoIW4uaGFzKGUpJiYobi5hZGQoZSksZS5yZWFjdGlvbnMhPT1udWxsKSlmb3IobGV0IGkgb2YgZS5yZWFjdGlvbnMpe2xldCBlPWkuZjtlJjI/WHQoaSx0LG4scik6ZSY0MTk0MzIwJiYhKGUmMjA0OCkmJlp0KGksdCxyKSYmKEQoaSxjZSksUXQoaSkpfX1mdW5jdGlvbiBadChlLHQsbil7bGV0IHI9bi5nZXQoZSk7aWYociE9PXZvaWQgMClyZXR1cm4gcjtpZihlLmRlcHMhPT1udWxsKWZvcihsZXQgciBvZiBlLmRlcHMpe2lmKG0uY2FsbCh0LHIpKXJldHVybiEwO2lmKHIuZiYyJiZadChyLHQsbikpcmV0dXJuIG4uc2V0KHIsITApLCEwfXJldHVybiBuLnNldChlLCExKSwhMX1mdW5jdGlvbiBRdChlKXtqLnNjaGVkdWxlKGUpfWZ1bmN0aW9uICR0KGUsdCl7aWYoIShlLmYmMzImJmUuZiYxMDI0KSl7ZS5mJjIwNDg/dC5kLnB1c2goZSk6ZS5mJjQwOTYmJnQubS5wdXNoKGUpLEQoZSxzZSk7Zm9yKHZhciBuPWUuZmlyc3Q7biE9PW51bGw7KSR0KG4sdCksbj1uLm5leHR9fWZ1bmN0aW9uIGVuKGUpe0QoZSxzZSk7Zm9yKHZhciB0PWUuZmlyc3Q7dCE9PW51bGw7KWVuKHQpLHQ9dC5uZXh0fWZ1bmN0aW9uIHRuKGUpe2xldCB0PTAsbj1TbigwKSxyO3JldHVybigpPT57aXIoKSYmKFIobiksZnIoKCk9Pih0PT09MCYmKHI9JHIoKCk9PmUoKCk9PmtuKG4pKSkpLHQrPTEsKCk9PntndCgoKT0+ey0tdCx0PT09MCYmKHI/LigpLHI9dm9pZCAwLGtuKG4pKX0pfSkpKX19dmFyIG5uPW1lfGhlO2Z1bmN0aW9uIHJuKGUsdCxuLHIpe25ldyBhbihlLHQsbixyKX12YXIgYW49Y2xhc3N7cGFyZW50O2lzX3BlbmRpbmc9ITE7dHJhbnNmb3JtX2Vycm9yOyNlOyN0PUM/dzpudWxsOyNuOyNyOyNpOyNhPW51bGw7I289bnVsbDsjcz1udWxsOyNjPW51bGw7I2w9MDsjdT0wOyNkPSExOyNmPW5ldyBTZXQ7I3A9bmV3IFNldDsjbT1udWxsOyNoPXRuKCgpPT4odGhpcy4jbT1Tbih0aGlzLiNsKSwoKT0+e3RoaXMuI209bnVsbH0pKTtjb25zdHJ1Y3RvcihlLHQsbixyKXt0aGlzLiNlPWUsdGhpcy4jbj10LHRoaXMuI3I9ZT0+e3ZhciB0PUk7dC5iPXRoaXMsdC5mfD0xMjgsbihlKX0sdGhpcy5wYXJlbnQ9SS5iLHRoaXMudHJhbnNmb3JtX2Vycm9yPXI/P3RoaXMucGFyZW50Py50cmFuc2Zvcm1fZXJyb3I/PyhlPT5lKSx0aGlzLiNpPW1yKCgpPT57aWYoQyl7bGV0IGU9dGhpcy4jdDtZZSgpO2xldCB0PWUuZGF0YT09PWBbIWA7aWYoZS5kYXRhLnN0YXJ0c1dpdGgoYFs/YCkpe2xldCB0PUpTT04ucGFyc2UoZS5kYXRhLnNsaWNlKDIpKTt0aGlzLiNfKHQpfWVsc2UgdD90aGlzLiN2KCk6dGhpcy4jZygpfWVsc2UgdGhpcy4jeSgpfSxubiksQyYmKHRoaXMuI2U9dyl9I2coKXt0cnl7dGhpcy4jYT1ncigoKT0+dGhpcy4jcih0aGlzLiNlKSl9Y2F0Y2goZSl7dGhpcy5lcnJvcihlKX19I18oZSl7bGV0IHQ9dGhpcy4jbi5mYWlsZWQ7dCYmKHRoaXMuI3M9Z3IoKCk9Pnt0KHRoaXMuI2UsKCk9PmUsKCk9PigpPT57fSl9KSl9I3YoKXtsZXQgZT10aGlzLiNuLnBlbmRpbmc7ZSYmKHRoaXMuaXNfcGVuZGluZz0hMCx0aGlzLiNvPWdyKCgpPT5lKHRoaXMuI2UpKSxndCgoKT0+e3ZhciBlPXRoaXMuI2M9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHQ9em4oKTtlLmFwcGVuZCh0KSx0aGlzLiNhPXRoaXMuI3goKCk9PmdyKCgpPT50aGlzLiNyKHQpKSksdGhpcy4jdT09PTAmJih0aGlzLiNlLmJlZm9yZShlKSx0aGlzLiNjPW51bGwsU3IodGhpcy4jbywoKT0+e3RoaXMuI289bnVsbH0pLHRoaXMuI2IoaikpfSkpfSN5KCl7dHJ5e2lmKHRoaXMuaXNfcGVuZGluZz10aGlzLmhhc19wZW5kaW5nX3NuaXBwZXQoKSx0aGlzLiN1PTAsdGhpcy4jbD0wLHRoaXMuI2E9Z3IoKCk9Pnt0aGlzLiNyKHRoaXMuI2UpfSksdGhpcy4jdT4wKXt2YXIgZT10aGlzLiNjPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtFcih0aGlzLiNhLGUpO2xldCB0PXRoaXMuI24ucGVuZGluZzt0aGlzLiNvPWdyKCgpPT50KHRoaXMuI2UpKX1lbHNlIHRoaXMuI2Ioail9Y2F0Y2goZSl7dGhpcy5lcnJvcihlKX19I2IoZSl7dGhpcy5pc19wZW5kaW5nPSExLGUudHJhbnNmZXJfZWZmZWN0cyh0aGlzLiNmLHRoaXMuI3ApfWRlZmVyX2VmZmVjdChlKXtDdChlLHRoaXMuI2YsdGhpcy4jcCl9aXNfcmVuZGVyZWQoKXtyZXR1cm4hdGhpcy5pc19wZW5kaW5nJiYoIXRoaXMucGFyZW50fHx0aGlzLnBhcmVudC5pc19yZW5kZXJlZCgpKX1oYXNfcGVuZGluZ19zbmlwcGV0KCl7cmV0dXJuISF0aGlzLiNuLnBlbmRpbmd9I3goZSl7dmFyIHQ9SSxuPUYscj1FO05yKHRoaXMuI2kpLE1yKHRoaXMuI2kpLG90KHRoaXMuI2kuY3R4KTt0cnl7cmV0dXJuIEd0LmVuc3VyZSgpLGUoKX1jYXRjaChlKXtyZXR1cm4gdnQoZSksbnVsbH1maW5hbGx5e05yKHQpLE1yKG4pLG90KHIpfX0jUyhlLHQpe2lmKCF0aGlzLmhhc19wZW5kaW5nX3NuaXBwZXQoKSl7dGhpcy5wYXJlbnQmJnRoaXMucGFyZW50LiNTKGUsdCk7cmV0dXJufXRoaXMuI3UrPWUsdGhpcy4jdT09PTAmJih0aGlzLiNiKHQpLHRoaXMuI28mJlNyKHRoaXMuI28sKCk9Pnt0aGlzLiNvPW51bGx9KSx0aGlzLiNjJiY9KHRoaXMuI2UuYmVmb3JlKHRoaXMuI2MpLG51bGwpKX11cGRhdGVfcGVuZGluZ19jb3VudChlLHQpe3RoaXMuI1MoZSx0KSx0aGlzLiNsKz1lLCEoIXRoaXMuI218fHRoaXMuI2QpJiYodGhpcy4jZD0hMCxndCgoKT0+e3RoaXMuI2Q9ITEsdGhpcy4jbSYmRW4odGhpcy4jbSx0aGlzLiNsKX0pKX1nZXRfZWZmZWN0X3BlbmRpbmcoKXtyZXR1cm4gdGhpcy4jaCgpLFIodGhpcy4jbSl9ZXJyb3IoZSl7aWYoIXRoaXMuI24ub25lcnJvciYmIXRoaXMuI24uZmFpbGVkKXRocm93IGU7aj8uaXNfZm9yaz8odGhpcy4jYSYmai5za2lwX2VmZmVjdCh0aGlzLiNhKSx0aGlzLiNvJiZqLnNraXBfZWZmZWN0KHRoaXMuI28pLHRoaXMuI3MmJmouc2tpcF9lZmZlY3QodGhpcy4jcyksai5vbl9mb3JrX2NvbW1pdCgoKT0+e3RoaXMuI0MoZSl9KSk6dGhpcy4jQyhlKX0jQyhlKXt0aGlzLiNhJiY9KFAodGhpcy4jYSksbnVsbCksdGhpcy4jbyYmPShQKHRoaXMuI28pLG51bGwpLHRoaXMuI3MmJj0oUCh0aGlzLiNzKSxudWxsKSxDJiYoVCh0aGlzLiN0KSxaZSgpLFQoUWUoKSkpO3ZhciB0PXRoaXMuI24ub25lcnJvcjtsZXQgbj10aGlzLiNuLmZhaWxlZDt2YXIgcj0hMSxpPSExO2xldCBhPSgpPT57aWYocil7cWUoKTtyZXR1cm59cj0hMCxpJiZ6ZSgpLHRoaXMuI3MhPT1udWxsJiZTcih0aGlzLiNzLCgpPT57dGhpcy4jcz1udWxsfSksdGhpcy4jeCgoKT0+e3RoaXMuI3koKX0pfSxvPWU9Pnt0cnl7aT0hMCx0Py4oZSxhKSxpPSExfWNhdGNoKGUpe3l0KGUsdGhpcy4jaSYmdGhpcy4jaS5wYXJlbnQpfW4mJih0aGlzLiNzPXRoaXMuI3goKCk9Pnt0cnl7cmV0dXJuIGdyKCgpPT57dmFyIHQ9STt0LmI9dGhpcyx0LmZ8PTEyOCxuKHRoaXMuI2UsKCk9PmUsKCk9PmEpfSl9Y2F0Y2goZSl7cmV0dXJuIHl0KGUsdGhpcy4jaS5wYXJlbnQpLG51bGx9fSkpfTtndCgoKT0+e3ZhciB0O3RyeXt0PXRoaXMudHJhbnNmb3JtX2Vycm9yKGUpfWNhdGNoKGUpe3l0KGUsdGhpcy4jaSYmdGhpcy4jaS5wYXJlbnQpO3JldHVybn10eXBlb2YgdD09YG9iamVjdGAmJnQmJnR5cGVvZiB0LnRoZW49PWBmdW5jdGlvbmA/dC50aGVuKG8sZT0+eXQoZSx0aGlzLiNpJiZ0aGlzLiNpLnBhcmVudCkpOm8odCl9KX19O2Z1bmN0aW9uIG9uKGUsdCxuLHIpe2xldCBpPWR0KCk/dW46cG47dmFyIGE9ZS5maWx0ZXIoZT0+IWUuc2V0dGxlZCk7aWYobi5sZW5ndGg9PT0wJiZhLmxlbmd0aD09PTApe3IodC5tYXAoaSkpO3JldHVybn12YXIgbz1JLHM9c24oKSxjPWEubGVuZ3RoPT09MT9hWzBdLnByb21pc2U6YS5sZW5ndGg+MT9Qcm9taXNlLmFsbChhLm1hcChlPT5lLnByb21pc2UpKTpudWxsO2Z1bmN0aW9uIGwoZSl7cygpO3RyeXtyKGUpfWNhdGNoKGUpe28uZiYxNjM4NHx8eXQoZSxvKX1jbigpfWlmKG4ubGVuZ3RoPT09MCl7Yy50aGVuKCgpPT5sKHQubWFwKGkpKSk7cmV0dXJufXZhciB1PWxuKCk7ZnVuY3Rpb24gZCgpe1Byb21pc2UuYWxsKG4ubWFwKGU9PmRuKGUpKSkudGhlbihlPT5sKFsuLi50Lm1hcChpKSwuLi5lXSkpLmNhdGNoKGU9Pnl0KGUsbykpLmZpbmFsbHkoKCk9PnUoKSl9Yz9jLnRoZW4oKCk9PntzKCksZCgpLGNuKCl9KTpkKCl9ZnVuY3Rpb24gc24oKXt2YXIgZT1JLHQ9RixuPUUscj1qO3JldHVybiBmdW5jdGlvbihpPSEwKXtOcihlKSxNcih0KSxvdChuKSxpJiYhKGUuZiYxNjM4NCkmJihyPy5hY3RpdmF0ZSgpLHI/LmFwcGx5KCkpfX1mdW5jdGlvbiBjbihlPSEwKXtOcihudWxsKSxNcihudWxsKSxvdChudWxsKSxlJiZqPy5kZWFjdGl2YXRlKCl9ZnVuY3Rpb24gbG4oKXt2YXIgZT1JLHQ9ZS5iLG49aixyPXQuaXNfcmVuZGVyZWQoKTtyZXR1cm4gdC51cGRhdGVfcGVuZGluZ19jb3VudCgxLG4pLG4uaW5jcmVtZW50KHIsZSksKGk9ITEpPT57dC51cGRhdGVfcGVuZGluZ19jb3VudCgtMSxuKSxuLmRlY3JlbWVudChyLGUsaSl9fWZ1bmN0aW9uIHVuKGUpe3ZhciB0PTJ8Y2U7cmV0dXJuIEkhPT1udWxsJiYoSS5mfD1oZSkse2N0eDpFLGRlcHM6bnVsbCxlZmZlY3RzOm51bGwsZXF1YWxzOmV0LGY6dCxmbjplLHJlYWN0aW9uczpudWxsLHJ2OjAsdjpTLHd2OjAscGFyZW50OkksYWM6bnVsbH19ZnVuY3Rpb24gZG4oZSx0LG4pe2xldCByPUk7cj09PW51bGwmJk9lKCk7dmFyIGk9dm9pZCAwLGE9U24oUyksbz0hRixzPW5ldyBNYXA7cmV0dXJuIGRyKCgpPT57dmFyIHQ9SSxuPWFlKCk7aT1uLnByb21pc2U7dHJ5e1Byb21pc2UucmVzb2x2ZShlKCkpLnRoZW4obi5yZXNvbHZlLG4ucmVqZWN0KS5maW5hbGx5KGNuKX1jYXRjaChlKXtuLnJlamVjdChlKSxjbigpfXZhciBjPWo7aWYobyl7aWYodC5mJjMyNzY4KXZhciBsPWxuKCk7aWYoci5iLmlzX3JlbmRlcmVkKCkpcy5nZXQoYyk/LnJlamVjdChUZSkscy5kZWxldGUoYyk7ZWxzZXtmb3IobGV0IGUgb2Ygcy52YWx1ZXMoKSllLnJlamVjdChUZSk7cy5jbGVhcigpfXMuc2V0KGMsbil9bGV0IHU9KGUsbj12b2lkIDApPT57aWYobCYmbChuPT09VGUpLCEobj09PVRlfHx0LmYmMTYzODQpKXtpZihjLmFjdGl2YXRlKCksbilhLmZ8PXhlLEVuKGEsbik7ZWxzZXthLmYmODM4ODYwOCYmKGEuZl49eGUpLEVuKGEsZSk7Zm9yKGxldFtlLHRdb2Ygcyl7aWYocy5kZWxldGUoZSksZT09PWMpYnJlYWs7dC5yZWplY3QoVGUpfX1jLmRlYWN0aXZhdGUoKX19O24ucHJvbWlzZS50aGVuKHUsZT0+dShudWxsLGV8fGB1bmtub3duYCkpfSksYXIoKCk9Pntmb3IobGV0IGUgb2Ygcy52YWx1ZXMoKSllLnJlamVjdChUZSl9KSxuZXcgUHJvbWlzZShlPT57ZnVuY3Rpb24gdChuKXtmdW5jdGlvbiByKCl7bj09PWk/ZShhKTp0KGkpfW4udGhlbihyLHIpfXQoaSl9KX1mdW5jdGlvbiBmbihlKXtsZXQgdD11bihlKTtyZXR1cm4gcnR8fEZyKHQpLHR9ZnVuY3Rpb24gcG4oZSl7bGV0IHQ9dW4oZSk7cmV0dXJuIHQuZXF1YWxzPW50LHR9ZnVuY3Rpb24gbW4oZSl7dmFyIHQ9ZS5lZmZlY3RzO2lmKHQhPT1udWxsKXtlLmVmZmVjdHM9bnVsbDtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rPTEpUCh0W25dKX19ZnVuY3Rpb24gaG4oZSl7dmFyIHQsbj1JLHI9ZS5wYXJlbnQ7aWYoIWtyJiZyIT09bnVsbCYmci5mJjI0NTc2KXJldHVybiBXZSgpLGUudjtOcihyKTt0cnl7ZS5mJj1+dmUsbW4oZSksdD1LcihlKX1maW5hbGx5e05yKG4pfXJldHVybiB0fWZ1bmN0aW9uIGduKGUpe3ZhciB0PWhuKGUpO2lmKCFlLmVxdWFscyh0KSYmKGUud3Y9VXIoKSwoIWo/LmlzX2Zvcmt8fGUuZGVwcz09PW51bGwpJiYoaj09PW51bGw/ZS52PXQ6ai5jYXB0dXJlKGUsdCwhMCksZS5kZXBzPT09bnVsbCkpKXtEKGUsc2UpO3JldHVybn1rcnx8KE09PT1udWxsP3h0KGUpOihpcigpfHxqPy5pc19mb3JrKSYmTS5zZXQoZSx0KSl9ZnVuY3Rpb24gX24oZSl7aWYoZS5lZmZlY3RzIT09bnVsbClmb3IobGV0IHQgb2YgZS5lZmZlY3RzKSh0LnRlYXJkb3dufHx0LmFjKSYmKHQudGVhcmRvd24/LigpLHQuYWM/LmFib3J0KFRlKSx0LnRlYXJkb3duPXgsdC5hYz1udWxsLEpyKHQsMCksdnIodCkpfWZ1bmN0aW9uIHZuKGUpe2lmKGUuZWZmZWN0cyE9PW51bGwpZm9yKGxldCB0IG9mIGUuZWZmZWN0cyl0LnRlYXJkb3duJiZZcih0KX12YXIgeW49bmV3IFNldCxibj1uZXcgTWFwLHhuPSExO2Z1bmN0aW9uIFNuKGUsdCl7cmV0dXJue2Y6MCx2OmUscmVhY3Rpb25zOm51bGwsZXF1YWxzOmV0LHJ2OjAsd3Y6MH19ZnVuY3Rpb24gQ24oZSx0KXtsZXQgbj1TbihlLHQpO3JldHVybiBGcihuKSxufWZ1bmN0aW9uIHduKGUsdD0hMSxuPSEwKXtsZXQgcj1TbihlKTtyZXR1cm4gdHx8KHIuZXF1YWxzPW50KSxpdCYmbiYmRSE9PW51bGwmJkUubCE9PW51bGwmJihFLmwucz8/PVtdKS5wdXNoKHIpLHJ9ZnVuY3Rpb24gVG4oZSx0LG49ITEpe3JldHVybiBGIT09bnVsbCYmKCFqcnx8Ri5mJjEzMTA3MikmJmR0KCkmJkYuZiY0MzI1Mzk0JiYoUHI9PT1udWxsfHwhbS5jYWxsKFByLGUpKSYmUmUoKSxFbihlLG4/am4odCk6dCxIdCl9ZnVuY3Rpb24gRW4oZSx0LG49bnVsbCl7aWYoIWUuZXF1YWxzKHQpKXtibi5zZXQoZSxrcj90OmUudik7dmFyIHI9R3QuZW5zdXJlKCk7aWYoci5jYXB0dXJlKGUsdCksZS5mJjIpe2xldCB0PWU7ZS5mJjIwNDgmJmhuKHQpLE09PT1udWxsJiZ4dCh0KX1lLnd2PVVyKCksQW4oZSxjZSxuKSxkdCgpJiZJIT09bnVsbCYmSS5mJjEwMjQmJiEoSS5mJjk2KSYmKExyPT09bnVsbD9ScihbZV0pOkxyLnB1c2goZSkpLCFyLmlzX2ZvcmsmJnluLnNpemU+MCYmIXhuJiZEbigpfXJldHVybiB0fWZ1bmN0aW9uIERuKCl7eG49ITE7Zm9yKGxldCBlIG9mIHluKWUuZiYxMDI0JiZEKGUsbGUpLFdyKGUpJiZZcihlKTt5bi5jbGVhcigpfWZ1bmN0aW9uIE9uKGUsdD0xKXt2YXIgbj1SKGUpLHI9dD09PTE/bisrOm4tLTtyZXR1cm4gVG4oZSxuKSxyfWZ1bmN0aW9uIGtuKGUpe1RuKGUsZS52KzEpfWZ1bmN0aW9uIEFuKGUsdCxuKXt2YXIgcj1lLnJlYWN0aW9ucztpZihyIT09bnVsbClmb3IodmFyIGk9ZHQoKSxhPXIubGVuZ3RoLG89MDtvPGE7bysrKXt2YXIgcz1yW29dLGM9cy5mO2lmKCEoIWkmJnM9PT1JKSl7dmFyIGw9KGMmY2UpPT09MDtpZihsJiZEKHMsdCksYyYyKXt2YXIgdT1zO00/LmRlbGV0ZSh1KSxjJjY1NTM2fHwoYyY1MTImJihJPT09bnVsbHx8IShJLmYmMjA5NzE1MikpJiYocy5mfD12ZSksQW4odSxsZSxuKSl9ZWxzZSBpZihsKXt2YXIgZD1zO2MmMTYmJkp0IT09bnVsbCYmSnQuYWRkKGQpLG49PT1udWxsP1F0KGQpOm4ucHVzaChkKX19fX1mdW5jdGlvbiBqbihlKXtpZih0eXBlb2YgZSE9YG9iamVjdGB8fCFlfHxTZSBpbiBlKXJldHVybiBlO2xldCB0PWIoZSk7aWYodCE9PXkmJnQhPT1lZSlyZXR1cm4gZTt2YXIgbj1uZXcgTWFwLHI9ZihlKSxpPUNuKDApLGE9bnVsbCxvPVZyLHM9ZT0+e2lmKFZyPT09bylyZXR1cm4gZSgpO3ZhciB0PUYsbj1WcjtNcihudWxsKSxIcihvKTt2YXIgcj1lKCk7cmV0dXJuIE1yKHQpLEhyKG4pLHJ9O3JldHVybiByJiZuLnNldChgbGVuZ3RoYCxDbihlLmxlbmd0aCxhKSksbmV3IFByb3h5KGUse2RlZmluZVByb3BlcnR5KGUsdCxyKXsoIShgdmFsdWVgaW4gcil8fHIuY29uZmlndXJhYmxlPT09ITF8fHIuZW51bWVyYWJsZT09PSExfHxyLndyaXRhYmxlPT09ITEpJiZJZSgpO3ZhciBpPW4uZ2V0KHQpO3JldHVybiBpPT09dm9pZCAwP3MoKCk9Pnt2YXIgZT1DbihyLnZhbHVlLGEpO3JldHVybiBuLnNldCh0LGUpLGV9KTpUbihpLHIudmFsdWUsITApLCEwfSxkZWxldGVQcm9wZXJ0eShlLHQpe3ZhciByPW4uZ2V0KHQpO2lmKHI9PT12b2lkIDApe2lmKHQgaW4gZSl7bGV0IGU9cygoKT0+Q24oUyxhKSk7bi5zZXQodCxlKSxrbihpKX19ZWxzZSBUbihyLFMpLGtuKGkpO3JldHVybiEwfSxnZXQodCxyLGkpe2lmKHI9PT1TZSlyZXR1cm4gZTt2YXIgbz1uLmdldChyKSxjPXIgaW4gdDtpZihvPT09dm9pZCAwJiYoIWN8fF8odCxyKT8ud3JpdGFibGUpJiYobz1zKCgpPT5DbihqbihjP3Rbcl06UyksYSkpLG4uc2V0KHIsbykpLG8hPT12b2lkIDApe3ZhciBsPVIobyk7cmV0dXJuIGw9PT1TP3ZvaWQgMDpsfXJldHVybiBSZWZsZWN0LmdldCh0LHIsaSl9LGdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpe3ZhciByPVJlZmxlY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCk7aWYociYmYHZhbHVlYGluIHIpe3ZhciBpPW4uZ2V0KHQpO2kmJihyLnZhbHVlPVIoaSkpfWVsc2UgaWYocj09PXZvaWQgMCl7dmFyIGE9bi5nZXQodCksbz1hPy52O2lmKGEhPT12b2lkIDAmJm8hPT1TKXJldHVybntlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx2YWx1ZTpvLHdyaXRhYmxlOiEwfX1yZXR1cm4gcn0saGFzKGUsdCl7aWYodD09PVNlKXJldHVybiEwO3ZhciByPW4uZ2V0KHQpLGk9ciE9PXZvaWQgMCYmci52IT09U3x8UmVmbGVjdC5oYXMoZSx0KTtyZXR1cm4ociE9PXZvaWQgMHx8SSE9PW51bGwmJighaXx8XyhlLHQpPy53cml0YWJsZSkpJiYocj09PXZvaWQgMCYmKHI9cygoKT0+Q24oaT9qbihlW3RdKTpTLGEpKSxuLnNldCh0LHIpKSxSKHIpPT09Uyk/ITE6aX0sc2V0KGUsdCxvLGMpe3ZhciBsPW4uZ2V0KHQpLHU9dCBpbiBlO2lmKHImJnQ9PT1gbGVuZ3RoYClmb3IodmFyIGQ9bztkPGwudjtkKz0xKXt2YXIgZj1uLmdldChkK2BgKTtmPT09dm9pZCAwP2QgaW4gZSYmKGY9cygoKT0+Q24oUyxhKSksbi5zZXQoZCtgYCxmKSk6VG4oZixTKX1pZihsPT09dm9pZCAwKSghdXx8XyhlLHQpPy53cml0YWJsZSkmJihsPXMoKCk9PkNuKHZvaWQgMCxhKSksVG4obCxqbihvKSksbi5zZXQodCxsKSk7ZWxzZXt1PWwudiE9PVM7dmFyIHA9cygoKT0+am4obykpO1RuKGwscCl9dmFyIG09UmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KTtpZihtPy5zZXQmJm0uc2V0LmNhbGwoYyxvKSwhdSl7aWYociYmdHlwZW9mIHQ9PWBzdHJpbmdgKXt2YXIgaD1uLmdldChgbGVuZ3RoYCksZz1OdW1iZXIodCk7TnVtYmVyLmlzSW50ZWdlcihnKSYmZz49aC52JiZUbihoLGcrMSl9a24oaSl9cmV0dXJuITB9LG93bktleXMoZSl7UihpKTt2YXIgdD1SZWZsZWN0Lm93bktleXMoZSkuZmlsdGVyKGU9Pnt2YXIgdD1uLmdldChlKTtyZXR1cm4gdD09PXZvaWQgMHx8dC52IT09U30pO2Zvcih2YXJbcixhXW9mIG4pYS52IT09UyYmIShyIGluIGUpJiZ0LnB1c2gocik7cmV0dXJuIHR9LHNldFByb3RvdHlwZU9mKCl7TGUoKX19KX1mdW5jdGlvbiBNbihlKXt0cnl7aWYodHlwZW9mIGU9PWBvYmplY3RgJiZlJiZTZSBpbiBlKXJldHVybiBlW1NlXX1jYXRjaHt9cmV0dXJuIGV9ZnVuY3Rpb24gTm4oZSx0KXtyZXR1cm4gT2JqZWN0LmlzKE1uKGUpLE1uKHQpKX12YXIgUG4sRm4sSW4sTG47ZnVuY3Rpb24gUm4oKXtpZihQbj09PXZvaWQgMCl7UG49d2luZG93LEZuPS9GaXJlZm94Ly50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO3ZhciBlPUVsZW1lbnQucHJvdG90eXBlLHQ9Tm9kZS5wcm90b3R5cGUsbj1UZXh0LnByb3RvdHlwZTtJbj1fKHQsYGZpcnN0Q2hpbGRgKS5nZXQsTG49Xyh0LGBuZXh0U2libGluZ2ApLmdldCx0ZShlKSYmKGUuX19jbGljaz12b2lkIDAsZS5fX2NsYXNzTmFtZT12b2lkIDAsZS5fX2F0dHJpYnV0ZXM9bnVsbCxlLl9fc3R5bGU9dm9pZCAwLGUuX19lPXZvaWQgMCksdGUobikmJihuLl9fdD12b2lkIDApfX1mdW5jdGlvbiB6bihlPWBgKXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoZSl9ZnVuY3Rpb24gTihlKXtyZXR1cm4gSW4uY2FsbChlKX1mdW5jdGlvbiBCbihlKXtyZXR1cm4gTG4uY2FsbChlKX1mdW5jdGlvbiBWbihlLHQpe2lmKCFDKXJldHVybiBOKGUpO3ZhciBuPU4odyk7aWYobj09PW51bGwpbj13LmFwcGVuZENoaWxkKHpuKCkpO2Vsc2UgaWYodCYmbi5ub2RlVHlwZSE9PTMpe3ZhciByPXpuKCk7cmV0dXJuIG4/LmJlZm9yZShyKSxUKHIpLHJ9cmV0dXJuIHQmJkpuKG4pLFQobiksbn1mdW5jdGlvbiBIbihlLHQ9ITEpe2lmKCFDKXt2YXIgbj1OKGUpO3JldHVybiBuIGluc3RhbmNlb2YgQ29tbWVudCYmbi5kYXRhPT09YGA/Qm4obik6bn1pZih0KXtpZih3Py5ub2RlVHlwZSE9PTMpe3ZhciByPXpuKCk7cmV0dXJuIHc/LmJlZm9yZShyKSxUKHIpLHJ9Sm4odyl9cmV0dXJuIHd9ZnVuY3Rpb24gVW4oZSx0PTEsbj0hMSl7bGV0IHI9Qz93OmU7Zm9yKHZhciBpO3QtLTspaT1yLHI9Qm4ocik7aWYoIUMpcmV0dXJuIHI7aWYobil7aWYocj8ubm9kZVR5cGUhPT0zKXt2YXIgYT16bigpO3JldHVybiByPT09bnVsbD9pPy5hZnRlcihhKTpyLmJlZm9yZShhKSxUKGEpLGF9Sm4ocil9cmV0dXJuIFQocikscn1mdW5jdGlvbiBXbihlKXtlLnRleHRDb250ZW50PWBgfWZ1bmN0aW9uIEduKCl7cmV0dXJuIXJ0fHxKdCE9PW51bGw/ITE6KEkuZiZmZSkhPT0wfWZ1bmN0aW9uIEtuKGUsdCxuKXtsZXQgcj1uP3tpczpufTp2b2lkIDA7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyh0Pz9gaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbGAsZSxyKX1mdW5jdGlvbiBxbihlPWBgKXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlQ29tbWVudChlKX1mdW5jdGlvbiBKbihlKXtpZihlLm5vZGVWYWx1ZS5sZW5ndGg8NjU1MzYpcmV0dXJuO2xldCB0PWUubmV4dFNpYmxpbmc7Zm9yKDt0IT09bnVsbCYmdC5ub2RlVHlwZT09PTM7KXQucmVtb3ZlKCksZS5ub2RlVmFsdWUrPXQubm9kZVZhbHVlLHQ9ZS5uZXh0U2libGluZ31mdW5jdGlvbiBZbihlLHQpe2lmKHQpe2xldCB0PWRvY3VtZW50LmJvZHk7ZS5hdXRvZm9jdXM9ITAsZ3QoKCk9Pntkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09dCYmZS5mb2N1cygpfSl9fWZ1bmN0aW9uIFhuKGUpe0MmJk4oZSkhPT1udWxsJiZXbihlKX12YXIgWm49ITE7ZnVuY3Rpb24gUW4oKXtabnx8KFpuPSEwLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoYHJlc2V0YCxlPT57UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e2lmKCFlLmRlZmF1bHRQcmV2ZW50ZWQpZm9yKGxldCB0IG9mIGUudGFyZ2V0LmVsZW1lbnRzKXQuX19vbl9yPy4oKX0pfSx7Y2FwdHVyZTohMH0pKX1mdW5jdGlvbiAkbihlKXt2YXIgdD1GLG49STtNcihudWxsKSxOcihudWxsKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e01yKHQpLE5yKG4pfX1mdW5jdGlvbiBlcihlLHQsbixyPW4pe2UuYWRkRXZlbnRMaXN0ZW5lcih0LCgpPT4kbihuKSk7bGV0IGk9ZS5fX29uX3I7aT9lLl9fb25fcj0oKT0+e2koKSxyKCEwKX06ZS5fX29uX3I9KCk9PnIoITApLFFuKCl9ZnVuY3Rpb24gdHIoZSl7ST09PW51bGwmJihGPT09bnVsbCYmTWUoZSksamUoKSksa3ImJkFlKGUpfWZ1bmN0aW9uIG5yKGUsdCl7dmFyIG49dC5sYXN0O249PT1udWxsP3QubGFzdD10LmZpcnN0PWU6KG4ubmV4dD1lLGUucHJldj1uLHQubGFzdD1lKX1mdW5jdGlvbiBycihlLHQpe3ZhciBuPUk7biE9PW51bGwmJm4uZiY4MTkyJiYoZXw9dWUpO3ZhciByPXtjdHg6RSxkZXBzOm51bGwsbm9kZXM6bnVsbCxmOmV8Y2V8NTEyLGZpcnN0Om51bGwsZm46dCxsYXN0Om51bGwsbmV4dDpudWxsLHBhcmVudDpuLGI6biYmbi5iLHByZXY6bnVsbCx0ZWFyZG93bjpudWxsLHd2OjAsYWM6bnVsbH07aj8ucmVnaXN0ZXJfY3JlYXRlZF9lZmZlY3Qocik7dmFyIGk9cjtpZihlJjQpVnQ9PT1udWxsP0d0LmVuc3VyZSgpLnNjaGVkdWxlKHIpOlZ0LnB1c2gocik7ZWxzZSBpZih0IT09bnVsbCl7dHJ5e1lyKHIpfWNhdGNoKGUpe3Rocm93IFAociksZX1pLmRlcHM9PT1udWxsJiZpLnRlYXJkb3duPT09bnVsbCYmaS5ub2Rlcz09PW51bGwmJmkuZmlyc3Q9PT1pLmxhc3QmJiEoaS5mJjUyNDI4OCkmJihpPWkuZmlyc3QsZSYxNiYmZSY2NTUzNiYmaSE9PW51bGwmJihpLmZ8PW1lKSl9aWYoaSE9PW51bGwmJihpLnBhcmVudD1uLG4hPT1udWxsJiZucihpLG4pLEYhPT1udWxsJiZGLmYmMiYmIShlJjY0KSkpe3ZhciBhPUY7KGEuZWZmZWN0cz8/PVtdKS5wdXNoKGkpfXJldHVybiByfWZ1bmN0aW9uIGlyKCl7cmV0dXJuIEYhPT1udWxsJiYhanJ9ZnVuY3Rpb24gYXIoZSl7bGV0IHQ9cnIoOCxudWxsKTtyZXR1cm4gRCh0LHNlKSx0LnRlYXJkb3duPWUsdH1mdW5jdGlvbiBvcihlKXt0cihgJGVmZmVjdGApO3ZhciB0PUkuZjtpZighRiYmdCYzMiYmISh0JjMyNzY4KSl7dmFyIG49RTsobi5lPz89W10pLnB1c2goZSl9ZWxzZSByZXR1cm4gc3IoZSl9ZnVuY3Rpb24gc3IoZSl7cmV0dXJuIHJyKDR8Z2UsZSl9ZnVuY3Rpb24gY3IoZSl7cmV0dXJuIHRyKGAkZWZmZWN0LnByZWApLHJyKDh8Z2UsZSl9ZnVuY3Rpb24gbHIoZSl7R3QuZW5zdXJlKCk7bGV0IHQ9cnIoNjR8aGUsZSk7cmV0dXJuKGU9e30pPT5uZXcgUHJvbWlzZShuPT57ZS5vdXRybz9Tcih0LCgpPT57UCh0KSxuKHZvaWQgMCl9KTooUCh0KSxuKHZvaWQgMCkpfSl9ZnVuY3Rpb24gdXIoZSl7cmV0dXJuIHJyKDQsZSl9ZnVuY3Rpb24gZHIoZSl7cmV0dXJuIHJyKGJlfGhlLGUpfWZ1bmN0aW9uIGZyKGUsdD0wKXtyZXR1cm4gcnIoOHx0LGUpfWZ1bmN0aW9uIHByKGUsdD1bXSxuPVtdLHI9W10pe29uKHIsdCxuLHQ9Pntycig4LCgpPT5lKC4uLnQubWFwKFIpKSl9KX1mdW5jdGlvbiBtcihlLHQ9MCl7cmV0dXJuIHJyKDE2fHQsZSl9ZnVuY3Rpb24gaHIoZSx0PTApe3JldHVybiBycihvZXx0LGUpfWZ1bmN0aW9uIGdyKGUpe3JldHVybiBycigzMnxoZSxlKX1mdW5jdGlvbiBfcihlKXt2YXIgdD1lLnRlYXJkb3duO2lmKHQhPT1udWxsKXtsZXQgZT1rcixuPUY7QXIoITApLE1yKG51bGwpO3RyeXt0LmNhbGwobnVsbCl9ZmluYWxseXtBcihlKSxNcihuKX19fWZ1bmN0aW9uIHZyKGUsdD0hMSl7dmFyIG49ZS5maXJzdDtmb3IoZS5maXJzdD1lLmxhc3Q9bnVsbDtuIT09bnVsbDspe2xldCBlPW4uYWM7ZSE9PW51bGwmJiRuKCgpPT57ZS5hYm9ydChUZSl9KTt2YXIgcj1uLm5leHQ7bi5mJjY0P24ucGFyZW50PW51bGw6UChuLHQpLG49cn19ZnVuY3Rpb24geXIoZSl7Zm9yKHZhciB0PWUuZmlyc3Q7dCE9PW51bGw7KXt2YXIgbj10Lm5leHQ7dC5mJjMyfHxQKHQpLHQ9bn19ZnVuY3Rpb24gUChlLHQ9ITApe3ZhciBuPSExOyh0fHxlLmYmMjYyMTQ0KSYmZS5ub2RlcyE9PW51bGwmJmUubm9kZXMuZW5kIT09bnVsbCYmKGJyKGUubm9kZXMuc3RhcnQsZS5ub2Rlcy5lbmQpLG49ITApLEQoZSxwZSksdnIoZSx0JiYhbiksSnIoZSwwKTt2YXIgcj1lLm5vZGVzJiZlLm5vZGVzLnQ7aWYociE9PW51bGwpZm9yKGxldCBlIG9mIHIpZS5zdG9wKCk7X3IoZSksZS5mXj1wZSxlLmZ8PWRlO3ZhciBpPWUucGFyZW50O2khPT1udWxsJiZpLmZpcnN0IT09bnVsbCYmeHIoZSksZS5uZXh0PWUucHJldj1lLnRlYXJkb3duPWUuY3R4PWUuZGVwcz1lLmZuPWUubm9kZXM9ZS5hYz1lLmI9bnVsbH1mdW5jdGlvbiBicihlLHQpe2Zvcig7ZSE9PW51bGw7KXt2YXIgbj1lPT09dD9udWxsOkJuKGUpO2UucmVtb3ZlKCksZT1ufX1mdW5jdGlvbiB4cihlKXt2YXIgdD1lLnBhcmVudCxuPWUucHJldixyPWUubmV4dDtuIT09bnVsbCYmKG4ubmV4dD1yKSxyIT09bnVsbCYmKHIucHJldj1uKSx0IT09bnVsbCYmKHQuZmlyc3Q9PT1lJiYodC5maXJzdD1yKSx0Lmxhc3Q9PT1lJiYodC5sYXN0PW4pKX1mdW5jdGlvbiBTcihlLHQsbj0hMCl7dmFyIHI9W107Q3IoZSxyLCEwKTt2YXIgaT0oKT0+e24mJlAoZSksdCYmdCgpfSxhPXIubGVuZ3RoO2lmKGE+MCl7dmFyIG89KCk9Pi0tYXx8aSgpO2Zvcih2YXIgcyBvZiByKXMub3V0KG8pfWVsc2UgaSgpfWZ1bmN0aW9uIENyKGUsdCxuKXtpZighKGUuZiY4MTkyKSl7ZS5mXj11ZTt2YXIgcj1lLm5vZGVzJiZlLm5vZGVzLnQ7aWYociE9PW51bGwpZm9yKGxldCBlIG9mIHIpKGUuaXNfZ2xvYmFsfHxuKSYmdC5wdXNoKGUpO2Zvcih2YXIgaT1lLmZpcnN0O2khPT1udWxsOyl7dmFyIGE9aS5uZXh0O2lmKCEoaS5mJjY0KSl7dmFyIG89KGkuZiY2NTUzNikhPTB8fChpLmYmMzIpIT0wJiYoZS5mJjE2KSE9MDtDcihpLHQsbz9uOiExKX1pPWF9fX1mdW5jdGlvbiB3cihlKXtUcihlLCEwKX1mdW5jdGlvbiBUcihlLHQpe2lmKGUuZiY4MTkyKXtlLmZePXVlLGUuZiYxMDI0fHwoRChlLGNlKSxHdC5lbnN1cmUoKS5zY2hlZHVsZShlKSk7Zm9yKHZhciBuPWUuZmlyc3Q7biE9PW51bGw7KXt2YXIgcj1uLm5leHQsaT0obi5mJjY1NTM2KSE9MHx8KG4uZiYzMikhPTA7VHIobixpP3Q6ITEpLG49cn12YXIgYT1lLm5vZGVzJiZlLm5vZGVzLnQ7aWYoYSE9PW51bGwpZm9yKGxldCBlIG9mIGEpKGUuaXNfZ2xvYmFsfHx0KSYmZS5pbigpfX1mdW5jdGlvbiBFcihlLHQpe2lmKGUubm9kZXMpZm9yKHZhciBuPWUubm9kZXMuc3RhcnQscj1lLm5vZGVzLmVuZDtuIT09bnVsbDspe3ZhciBpPW49PT1yP251bGw6Qm4obik7dC5hcHBlbmQobiksbj1pfX12YXIgRHI9bnVsbCxPcj0hMSxrcj0hMTtmdW5jdGlvbiBBcihlKXtrcj1lfXZhciBGPW51bGwsanI9ITE7ZnVuY3Rpb24gTXIoZSl7Rj1lfXZhciBJPW51bGw7ZnVuY3Rpb24gTnIoZSl7ST1lfXZhciBQcj1udWxsO2Z1bmN0aW9uIEZyKGUpe0YhPT1udWxsJiYoIXJ0fHxGLmYmMikmJihQcj09PW51bGw/UHI9W2VdOlByLnB1c2goZSkpfXZhciBMPW51bGwsSXI9MCxMcj1udWxsO2Z1bmN0aW9uIFJyKGUpe0xyPWV9dmFyIHpyPTEsQnI9MCxWcj1CcjtmdW5jdGlvbiBIcihlKXtWcj1lfWZ1bmN0aW9uIFVyKCl7cmV0dXJuKyt6cn1mdW5jdGlvbiBXcihlKXt2YXIgdD1lLmY7aWYodCYyMDQ4KXJldHVybiEwO2lmKHQmMiYmKGUuZiY9fnZlKSx0JjQwOTYpe2Zvcih2YXIgbj1lLmRlcHMscj1uLmxlbmd0aCxpPTA7aTxyO2krKyl7dmFyIGE9bltpXTtpZihXcihhKSYmZ24oYSksYS53dj5lLnd2KXJldHVybiEwfXQmNTEyJiZNPT09bnVsbCYmRChlLHNlKX1yZXR1cm4hMX1mdW5jdGlvbiBHcihlLHQsbj0hMCl7dmFyIHI9ZS5yZWFjdGlvbnM7aWYociE9PW51bGwmJiEoIXJ0JiZQciE9PW51bGwmJm0uY2FsbChQcixlKSkpZm9yKHZhciBpPTA7aTxyLmxlbmd0aDtpKyspe3ZhciBhPXJbaV07YS5mJjI/R3IoYSx0LCExKTp0PT09YSYmKG4/RChhLGNlKTphLmYmMTAyNCYmRChhLGxlKSxRdChhKSl9fWZ1bmN0aW9uIEtyKGUpe3ZhciB0PUwsbj1JcixyPUxyLGk9RixhPVByLG89RSxzPWpyLGM9VnIsbD1lLmY7TD1udWxsLElyPTAsTHI9bnVsbCxGPWwmOTY/bnVsbDplLFByPW51bGwsb3QoZS5jdHgpLGpyPSExLFZyPSsrQnIsZS5hYyE9PW51bGwmJigkbigoKT0+e2UuYWMuYWJvcnQoVGUpfSksZS5hYz1udWxsKTt0cnl7ZS5mfD15ZTt2YXIgdT1lLmZuLGQ9dSgpO2UuZnw9ZmU7dmFyIGY9ZS5kZXBzLHA9aj8uaXNfZm9yaztpZihMIT09bnVsbCl7dmFyIG07aWYocHx8SnIoZSxJciksZiE9PW51bGwmJklyPjApZm9yKGYubGVuZ3RoPUlyK0wubGVuZ3RoLG09MDttPEwubGVuZ3RoO20rKylmW0lyK21dPUxbbV07ZWxzZSBlLmRlcHM9Zj1MO2lmKGlyKCkmJmUuZiY1MTIpZm9yKG09SXI7bTxmLmxlbmd0aDttKyspKGZbbV0ucmVhY3Rpb25zPz89W10pLnB1c2goZSl9ZWxzZSAhcCYmZiE9PW51bGwmJklyPGYubGVuZ3RoJiYoSnIoZSxJciksZi5sZW5ndGg9SXIpO2lmKGR0KCkmJkxyIT09bnVsbCYmIWpyJiZmIT09bnVsbCYmIShlLmYmNjE0NikpZm9yKG09MDttPExyLmxlbmd0aDttKyspR3IoTHJbbV0sZSk7aWYoaSE9PW51bGwmJmkhPT1lKXtpZihCcisrLGkuZGVwcyE9PW51bGwpZm9yKGxldCBlPTA7ZTxuO2UrPTEpaS5kZXBzW2VdLnJ2PUJyO2lmKHQhPT1udWxsKWZvcihsZXQgZSBvZiB0KWUucnY9QnI7THIhPT1udWxsJiYocj09PW51bGw/cj1McjpyLnB1c2goLi4uTHIpKX1yZXR1cm4gZS5mJjgzODg2MDgmJihlLmZePXhlKSxkfWNhdGNoKGUpe3JldHVybiB2dChlKX1maW5hbGx5e2UuZl49eWUsTD10LElyPW4sTHI9cixGPWksUHI9YSxvdChvKSxqcj1zLFZyPWN9fWZ1bmN0aW9uIHFyKGUsdCl7bGV0IG49dC5yZWFjdGlvbnM7aWYobiE9PW51bGwpe3ZhciByPXAuY2FsbChuLGUpO2lmKHIhPT0tMSl7dmFyIGk9bi5sZW5ndGgtMTtpPT09MD9uPXQucmVhY3Rpb25zPW51bGw6KG5bcl09bltpXSxuLnBvcCgpKX19aWYobj09PW51bGwmJnQuZiYyJiYoTD09PW51bGx8fCFtLmNhbGwoTCx0KSkpe3ZhciBhPXQ7YS5mJjUxMiYmKGEuZl49NTEyLGEuZiY9fnZlKSxhLnYhPT1TJiZ4dChhKSxfbihhKSxKcihhLDApfX1mdW5jdGlvbiBKcihlLHQpe3ZhciBuPWUuZGVwcztpZihuIT09bnVsbClmb3IodmFyIHI9dDtyPG4ubGVuZ3RoO3IrKylxcihlLG5bcl0pfWZ1bmN0aW9uIFlyKGUpe3ZhciB0PWUuZjtpZighKHQmMTYzODQpKXtEKGUsc2UpO3ZhciBuPUkscj1PcjtJPWUsT3I9ITA7dHJ5e3QmMTY3NzcyMzI/eXIoZSk6dnIoZSksX3IoZSk7dmFyIGk9S3IoZSk7ZS50ZWFyZG93bj10eXBlb2YgaT09YGZ1bmN0aW9uYD9pOm51bGwsZS53dj16cn1maW5hbGx5e09yPXIsST1ufX19YXN5bmMgZnVuY3Rpb24gWHIoKXtpZihydClyZXR1cm4gbmV3IFByb21pc2UoZT0+e3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+ZSgpKSxzZXRUaW1lb3V0KCgpPT5lKCkpfSk7YXdhaXQgUHJvbWlzZS5yZXNvbHZlKCksS3QoKX1mdW5jdGlvbiBSKGUpe3ZhciB0PShlLmYmMikhPTA7aWYoRHI/LmFkZChlKSxGIT09bnVsbCYmIWpyJiYhKEkhPT1udWxsJiZJLmYmMTYzODQpJiYoUHI9PT1udWxsfHwhbS5jYWxsKFByLGUpKSl7dmFyIG49Ri5kZXBzO2lmKEYuZiYyMDk3MTUyKWUucnY8QnImJihlLnJ2PUJyLEw9PT1udWxsJiZuIT09bnVsbCYmbltJcl09PT1lP0lyKys6TD09PW51bGw/TD1bZV06TC5wdXNoKGUpKTtlbHNleyhGLmRlcHM/Pz1bXSkucHVzaChlKTt2YXIgcj1lLnJlYWN0aW9ucztyPT09bnVsbD9lLnJlYWN0aW9ucz1bRl06bS5jYWxsKHIsRil8fHIucHVzaChGKX19aWYoa3ImJmJuLmhhcyhlKSlyZXR1cm4gYm4uZ2V0KGUpO2lmKHQpe3ZhciBpPWU7aWYoa3Ipe3ZhciBhPWkudjtyZXR1cm4oIShpLmYmMTAyNCkmJmkucmVhY3Rpb25zIT09bnVsbHx8UXIoaSkpJiYoYT1obihpKSksYm4uc2V0KGksYSksYX12YXIgbz0oaS5mJjUxMik9PTAmJiFqciYmRiE9PW51bGwmJihPcnx8KEYuZiY1MTIpIT0wKSxzPShpLmYmZmUpPT09MDtXcihpKSYmKG8mJihpLmZ8PTUxMiksZ24oaSkpLG8mJiFzJiYodm4oaSksWnIoaSkpfWlmKE0/LmhhcyhlKSlyZXR1cm4gTS5nZXQoZSk7aWYoZS5mJjgzODg2MDgpdGhyb3cgZS52O3JldHVybiBlLnZ9ZnVuY3Rpb24gWnIoZSl7aWYoZS5mfD01MTIsZS5kZXBzIT09bnVsbClmb3IobGV0IHQgb2YgZS5kZXBzKSh0LnJlYWN0aW9ucz8/PVtdKS5wdXNoKGUpLHQuZiYyJiYhKHQuZiY1MTIpJiYodm4odCksWnIodCkpfWZ1bmN0aW9uIFFyKGUpe2lmKGUudj09PVMpcmV0dXJuITA7aWYoZS5kZXBzPT09bnVsbClyZXR1cm4hMTtmb3IobGV0IHQgb2YgZS5kZXBzKWlmKGJuLmhhcyh0KXx8dC5mJjImJlFyKHQpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uICRyKGUpe3ZhciB0PWpyO3RyeXtyZXR1cm4ganI9ITAsZSgpfWZpbmFsbHl7anI9dH19ZnVuY3Rpb24gZWkoZSl7aWYoISh0eXBlb2YgZSE9YG9iamVjdGB8fCFlfHxlIGluc3RhbmNlb2YgRXZlbnRUYXJnZXQpKXtpZihTZSBpbiBlKXRpKGUpO2Vsc2UgaWYoIUFycmF5LmlzQXJyYXkoZSkpZm9yKGxldCB0IGluIGUpe2xldCBuPWVbdF07dHlwZW9mIG49PWBvYmplY3RgJiZuJiZTZSBpbiBuJiZ0aShuKX19fWZ1bmN0aW9uIHRpKGUsdD1uZXcgU2V0KXtpZih0eXBlb2YgZT09YG9iamVjdGAmJmUmJiEoZSBpbnN0YW5jZW9mIEV2ZW50VGFyZ2V0KSYmIXQuaGFzKGUpKXt0LmFkZChlKSxlIGluc3RhbmNlb2YgRGF0ZSYmZS5nZXRUaW1lKCk7Zm9yKGxldCBuIGluIGUpdHJ5e3RpKGVbbl0sdCl9Y2F0Y2h7fWxldCBuPWIoZSk7aWYobiE9PU9iamVjdC5wcm90b3R5cGUmJm4hPT1BcnJheS5wcm90b3R5cGUmJm4hPT1NYXAucHJvdG90eXBlJiZuIT09U2V0LnByb3RvdHlwZSYmbiE9PURhdGUucHJvdG90eXBlKXtsZXQgdD12KG4pO2ZvcihsZXQgbiBpbiB0KXtsZXQgcj10W25dLmdldDtpZihyKXRyeXtyLmNhbGwoZSl9Y2F0Y2h7fX19fX1mdW5jdGlvbiBuaShlKXtyZXR1cm4gZS5lbmRzV2l0aChgY2FwdHVyZWApJiZlIT09YGdvdHBvaW50ZXJjYXB0dXJlYCYmZSE9PWBsb3N0cG9pbnRlcmNhcHR1cmVgfXZhciByaT1bYGJlZm9yZWlucHV0YCxgY2xpY2tgLGBjaGFuZ2VgLGBkYmxjbGlja2AsYGNvbnRleHRtZW51YCxgZm9jdXNpbmAsYGZvY3Vzb3V0YCxgaW5wdXRgLGBrZXlkb3duYCxga2V5dXBgLGBtb3VzZWRvd25gLGBtb3VzZW1vdmVgLGBtb3VzZW91dGAsYG1vdXNlb3ZlcmAsYG1vdXNldXBgLGBwb2ludGVyZG93bmAsYHBvaW50ZXJtb3ZlYCxgcG9pbnRlcm91dGAsYHBvaW50ZXJvdmVyYCxgcG9pbnRlcnVwYCxgdG91Y2hlbmRgLGB0b3VjaG1vdmVgLGB0b3VjaHN0YXJ0YF07ZnVuY3Rpb24gaWkoZSl7cmV0dXJuIHJpLmluY2x1ZGVzKGUpfXZhciBhaT1gYWxsb3dmdWxsc2NyZWVuLmFzeW5jLmF1dG9mb2N1cy5hdXRvcGxheS5jaGVja2VkLmNvbnRyb2xzLmRlZmF1bHQuZGlzYWJsZWQuZm9ybW5vdmFsaWRhdGUuaW5kZXRlcm1pbmF0ZS5pbmVydC5pc21hcC5sb29wLm11bHRpcGxlLm11dGVkLm5vbW9kdWxlLm5vdmFsaWRhdGUub3Blbi5wbGF5c2lubGluZS5yZWFkb25seS5yZXF1aXJlZC5yZXZlcnNlZC5zZWFtbGVzcy5zZWxlY3RlZC53ZWJraXRkaXJlY3RvcnkuZGVmZXIuZGlzYWJsZXBpY3R1cmVpbnBpY3R1cmUuZGlzYWJsZXJlbW90ZXBsYXliYWNrYC5zcGxpdChgLmApLG9pPXtmb3Jtbm92YWxpZGF0ZTpgZm9ybU5vVmFsaWRhdGVgLGlzbWFwOmBpc01hcGAsbm9tb2R1bGU6YG5vTW9kdWxlYCxwbGF5c2lubGluZTpgcGxheXNJbmxpbmVgLHJlYWRvbmx5OmByZWFkT25seWAsZGVmYXVsdHZhbHVlOmBkZWZhdWx0VmFsdWVgLGRlZmF1bHRjaGVja2VkOmBkZWZhdWx0Q2hlY2tlZGAsc3Jjb2JqZWN0OmBzcmNPYmplY3RgLG5vdmFsaWRhdGU6YG5vVmFsaWRhdGVgLGFsbG93ZnVsbHNjcmVlbjpgYWxsb3dGdWxsc2NyZWVuYCxkaXNhYmxlcGljdHVyZWlucGljdHVyZTpgZGlzYWJsZVBpY3R1cmVJblBpY3R1cmVgLGRpc2FibGVyZW1vdGVwbGF5YmFjazpgZGlzYWJsZVJlbW90ZVBsYXliYWNrYH07ZnVuY3Rpb24gc2koZSl7cmV0dXJuIGU9ZS50b0xvd2VyQ2FzZSgpLG9pW2VdPz9lfVsuLi5haV07dmFyIGNpPVtgdG91Y2hzdGFydGAsYHRvdWNobW92ZWBdO2Z1bmN0aW9uIGxpKGUpe3JldHVybiBjaS5pbmNsdWRlcyhlKX12YXIgdWk9U3ltYm9sKGBldmVudHNgKSxkaT1uZXcgU2V0LGZpPW5ldyBTZXQ7ZnVuY3Rpb24gcGkoZSl7aWYoIUMpcmV0dXJuO2UucmVtb3ZlQXR0cmlidXRlKGBvbmxvYWRgKSxlLnJlbW92ZUF0dHJpYnV0ZShgb25lcnJvcmApO2xldCB0PWUuX19lO3QhPT12b2lkIDAmJihlLl9fZT12b2lkIDAscXVldWVNaWNyb3Rhc2soKCk9PntlLmlzQ29ubmVjdGVkJiZlLmRpc3BhdGNoRXZlbnQodCl9KSl9ZnVuY3Rpb24gbWkoZSx0LG4scj17fSl7ZnVuY3Rpb24gaShlKXtpZihyLmNhcHR1cmV8fHlpLmNhbGwodCxlKSwhZS5jYW5jZWxCdWJibGUpcmV0dXJuICRuKCgpPT5uPy5jYWxsKHRoaXMsZSkpfXJldHVybiBlLnN0YXJ0c1dpdGgoYHBvaW50ZXJgKXx8ZS5zdGFydHNXaXRoKGB0b3VjaGApfHxlPT09YHdoZWVsYD9ndCgoKT0+e3QuYWRkRXZlbnRMaXN0ZW5lcihlLGkscil9KTp0LmFkZEV2ZW50TGlzdGVuZXIoZSxpLHIpLGl9ZnVuY3Rpb24gaGkoZSx0LG4scixpKXt2YXIgYT17Y2FwdHVyZTpyLHBhc3NpdmU6aX0sbz1taShlLHQsbixhKTsodD09PWRvY3VtZW50LmJvZHl8fHQ9PT13aW5kb3d8fHQ9PT1kb2N1bWVudHx8dCBpbnN0YW5jZW9mIEhUTUxNZWRpYUVsZW1lbnQpJiZhcigoKT0+e3QucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLG8sYSl9KX1mdW5jdGlvbiBnaShlLHQsbil7KHRbdWldPz89e30pW2VdPW59ZnVuY3Rpb24gX2koZSl7Zm9yKHZhciB0PTA7dDxlLmxlbmd0aDt0KyspZGkuYWRkKGVbdF0pO2Zvcih2YXIgbiBvZiBmaSluKGUpfXZhciB2aT1udWxsO2Z1bmN0aW9uIHlpKGUpe3ZhciB0PXRoaXMsbj10Lm93bmVyRG9jdW1lbnQscj1lLnR5cGUsaT1lLmNvbXBvc2VkUGF0aD8uKCl8fFtdLGE9aVswXXx8ZS50YXJnZXQ7dmk9ZTt2YXIgbz0wLHM9dmk9PT1lJiZlW3VpXTtpZihzKXt2YXIgYz1pLmluZGV4T2Yocyk7aWYoYyE9PS0xJiYodD09PWRvY3VtZW50fHx0PT09d2luZG93KSl7ZVt1aV09dDtyZXR1cm59dmFyIGw9aS5pbmRleE9mKHQpO2lmKGw9PT0tMSlyZXR1cm47Yzw9bCYmKG89Yyl9aWYoYT1pW29dfHxlLnRhcmdldCxhIT09dCl7ZyhlLGBjdXJyZW50VGFyZ2V0YCx7Y29uZmlndXJhYmxlOiEwLGdldCgpe3JldHVybiBhfHxufX0pO3ZhciB1PUYsZD1JO01yKG51bGwpLE5yKG51bGwpO3RyeXtmb3IodmFyIGYscD1bXTthIT09bnVsbDspe3ZhciBtPWEuYXNzaWduZWRTbG90fHxhLnBhcmVudE5vZGV8fGEuaG9zdHx8bnVsbDt0cnl7dmFyIGg9YVt1aV0/LltyXTtoIT1udWxsJiYoIWEuZGlzYWJsZWR8fGUudGFyZ2V0PT09YSkmJmguY2FsbChhLGUpfWNhdGNoKGUpe2Y/cC5wdXNoKGUpOmY9ZX1pZihlLmNhbmNlbEJ1YmJsZXx8bT09PXR8fG09PT1udWxsKWJyZWFrO2E9bX1pZihmKXtmb3IobGV0IGUgb2YgcClxdWV1ZU1pY3JvdGFzaygoKT0+e3Rocm93IGV9KTt0aHJvdyBmfX1maW5hbGx5e2VbdWldPXQsZGVsZXRlIGUuY3VycmVudFRhcmdldCxNcih1KSxOcihkKX19fXZhciBiaT1nbG9iYWxUaGlzPy53aW5kb3c/LnRydXN0ZWRUeXBlcyYmZ2xvYmFsVGhpcy53aW5kb3cudHJ1c3RlZFR5cGVzLmNyZWF0ZVBvbGljeShgc3ZlbHRlLXRydXN0ZWQtaHRtbGAse2NyZWF0ZUhUTUw6ZT0+ZX0pO2Z1bmN0aW9uIHhpKGUpe3JldHVybiBiaT8uY3JlYXRlSFRNTChlKT8/ZX1mdW5jdGlvbiBTaShlKXt2YXIgdD1LbihgdGVtcGxhdGVgKTtyZXR1cm4gdC5pbm5lckhUTUw9eGkoZS5yZXBsYWNlQWxsKGA8IT5gLGA8IS0tLS0+YCkpLHQuY29udGVudH1mdW5jdGlvbiBDaShlLHQpe3ZhciBuPUk7bi5ub2Rlcz09PW51bGwmJihuLm5vZGVzPXtzdGFydDplLGVuZDp0LGE6bnVsbCx0Om51bGx9KX1mdW5jdGlvbiB3aShlLHQpe3ZhciBuPSh0JjEpIT0wLHI9KHQmMikhPTAsaSxhPSFlLnN0YXJ0c1dpdGgoYDwhPmApO3JldHVybigpPT57aWYoQylyZXR1cm4gQ2kodyxudWxsKSx3O2k9PT12b2lkIDAmJihpPVNpKGE/ZTpgPCE+YCtlKSxufHwoaT1OKGkpKSk7dmFyIHQ9cnx8Rm4/ZG9jdW1lbnQuaW1wb3J0Tm9kZShpLCEwKTppLmNsb25lTm9kZSghMCk7aWYobil7dmFyIG89Tih0KSxzPXQubGFzdENoaWxkO0NpKG8scyl9ZWxzZSBDaSh0LHQpO3JldHVybiB0fX1mdW5jdGlvbiBUaShlLHQsbj1gc3ZnYCl7dmFyIHI9IWUuc3RhcnRzV2l0aChgPCE+YCksaT0odCYxKSE9MCxhPWA8JHtufT4ke3I/ZTpgPCE+YCtlfTwvJHtufT5gLG87cmV0dXJuKCk9PntpZihDKXJldHVybiBDaSh3LG51bGwpLHc7aWYoIW8pe3ZhciBlPU4oU2koYSkpO2lmKGkpZm9yKG89ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO04oZSk7KW8uYXBwZW5kQ2hpbGQoTihlKSk7ZWxzZSBvPU4oZSl9dmFyIHQ9by5jbG9uZU5vZGUoITApO2lmKGkpe3ZhciBuPU4odCkscj10Lmxhc3RDaGlsZDtDaShuLHIpfWVsc2UgQ2kodCx0KTtyZXR1cm4gdH19ZnVuY3Rpb24gRWkoZSx0KXtyZXR1cm4gVGkoZSx0LGBzdmdgKX1mdW5jdGlvbiBEaShlPWBgKXtpZighQyl7dmFyIHQ9em4oZStgYCk7cmV0dXJuIENpKHQsdCksdH12YXIgbj13O3JldHVybiBuLm5vZGVUeXBlPT09Mz9KbihuKToobi5iZWZvcmUobj16bigpKSxUKG4pKSxDaShuLG4pLG59ZnVuY3Rpb24gT2koKXtpZihDKXJldHVybiBDaSh3LG51bGwpLHc7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHQ9ZG9jdW1lbnQuY3JlYXRlQ29tbWVudChgYCksbj16bigpO3JldHVybiBlLmFwcGVuZCh0LG4pLENpKHQsbiksZX1mdW5jdGlvbiBraShlLHQpe2lmKEMpe3ZhciBuPUk7KCEobi5mJjMyNzY4KXx8bi5ub2Rlcy5lbmQ9PT1udWxsKSYmKG4ubm9kZXMuZW5kPXcpLFllKCk7cmV0dXJufWUhPT1udWxsJiZlLmJlZm9yZSh0KX12YXIgQWk9ITA7ZnVuY3Rpb24gamkoZSx0KXt2YXIgbj10PT1udWxsP2BgOnR5cGVvZiB0PT1gb2JqZWN0YD9gJHt0fWA6dDtuIT09KGUuX190Pz89ZS5ub2RlVmFsdWUpJiYoZS5fX3Q9bixlLm5vZGVWYWx1ZT1gJHtufWApfWZ1bmN0aW9uIE1pKGUsdCl7cmV0dXJuIFBpKGUsdCl9dmFyIE5pPW5ldyBNYXA7ZnVuY3Rpb24gUGkoZSx7dGFyZ2V0OnQsYW5jaG9yOm4scHJvcHM6cj17fSxldmVudHM6aSxjb250ZXh0OmEsaW50cm86bz0hMCx0cmFuc2Zvcm1FcnJvcjpzfSl7Um4oKTt2YXIgYz12b2lkIDAsbD1scigoKT0+e3ZhciBsPW4/P3QuYXBwZW5kQ2hpbGQoem4oKSk7cm4obCx7cGVuZGluZzooKT0+e319LHQ9PntsdCh7fSk7dmFyIG49RTtpZihhJiYobi5jPWEpLGkmJihyLiQkZXZlbnRzPWkpLEMmJkNpKHQsbnVsbCksQWk9byxjPWUodCxyKXx8e30sQWk9ITAsQyYmKEkubm9kZXMuZW5kPXcsdz09PW51bGx8fHcubm9kZVR5cGUhPT04fHx3LmRhdGEhPT1gXWApKXRocm93IEdlKCksQmU7dXQoKX0scyk7dmFyIHU9bmV3IFNldCxkPWU9Pntmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIHI9ZVtuXTtpZighdS5oYXMocikpe3UuYWRkKHIpO3ZhciBpPWxpKHIpO2ZvcihsZXQgZSBvZlt0LGRvY3VtZW50XSl7dmFyIGE9TmkuZ2V0KGUpO2E9PT12b2lkIDAmJihhPW5ldyBNYXAsTmkuc2V0KGUsYSkpO3ZhciBvPWEuZ2V0KHIpO289PT12b2lkIDA/KGUuYWRkRXZlbnRMaXN0ZW5lcihyLHlpLHtwYXNzaXZlOml9KSxhLnNldChyLDEpKTphLnNldChyLG8rMSl9fX19O3JldHVybiBkKGgoZGkpKSxmaS5hZGQoZCksKCk9Pntmb3IodmFyIGUgb2YgdSlmb3IobGV0IG4gb2ZbdCxkb2N1bWVudF0pe3ZhciByPU5pLmdldChuKSxpPXIuZ2V0KGUpOy0taT09MD8obi5yZW1vdmVFdmVudExpc3RlbmVyKGUseWkpLHIuZGVsZXRlKGUpLHIuc2l6ZT09PTAmJk5pLmRlbGV0ZShuKSk6ci5zZXQoZSxpKX1maS5kZWxldGUoZCksbCE9PW4mJmwucGFyZW50Tm9kZT8ucmVtb3ZlQ2hpbGQobCl9fSk7cmV0dXJuIEZpLnNldChjLGwpLGN9dmFyIEZpPW5ldyBXZWFrTWFwO2Z1bmN0aW9uIElpKGUsdCl7bGV0IG49RmkuZ2V0KGUpO3JldHVybiBuPyhGaS5kZWxldGUoZSksbih0KSk6UHJvbWlzZS5yZXNvbHZlKCl9dmFyIExpPWNsYXNze2FuY2hvcjsjZT1uZXcgTWFwOyN0PW5ldyBNYXA7I249bmV3IE1hcDsjcj1uZXcgU2V0OyNpPSEwO2NvbnN0cnVjdG9yKGUsdD0hMCl7dGhpcy5hbmNob3I9ZSx0aGlzLiNpPXR9I2E9ZT0+e2lmKHRoaXMuI2UuaGFzKGUpKXt2YXIgdD10aGlzLiNlLmdldChlKSxuPXRoaXMuI3QuZ2V0KHQpO2lmKG4pd3IobiksdGhpcy4jci5kZWxldGUodCk7ZWxzZXt2YXIgcj10aGlzLiNuLmdldCh0KTtyJiYodGhpcy4jdC5zZXQodCxyLmVmZmVjdCksdGhpcy4jbi5kZWxldGUodCksci5mcmFnbWVudC5sYXN0Q2hpbGQucmVtb3ZlKCksdGhpcy5hbmNob3IuYmVmb3JlKHIuZnJhZ21lbnQpLG49ci5lZmZlY3QpfWZvcihsZXRbdCxuXW9mIHRoaXMuI2Upe2lmKHRoaXMuI2UuZGVsZXRlKHQpLHQ9PT1lKWJyZWFrO2xldCByPXRoaXMuI24uZ2V0KG4pO3ImJihQKHIuZWZmZWN0KSx0aGlzLiNuLmRlbGV0ZShuKSl9Zm9yKGxldFtlLHJdb2YgdGhpcy4jdCl7aWYoZT09PXR8fHRoaXMuI3IuaGFzKGUpKWNvbnRpbnVlO2xldCBpPSgpPT57aWYoQXJyYXkuZnJvbSh0aGlzLiNlLnZhbHVlcygpKS5pbmNsdWRlcyhlKSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO0VyKHIsdCksdC5hcHBlbmQoem4oKSksdGhpcy4jbi5zZXQoZSx7ZWZmZWN0OnIsZnJhZ21lbnQ6dH0pfWVsc2UgUChyKTt0aGlzLiNyLmRlbGV0ZShlKSx0aGlzLiN0LmRlbGV0ZShlKX07dGhpcy4jaXx8IW4/KHRoaXMuI3IuYWRkKGUpLFNyKHIsaSwhMSkpOmkoKX19fTsjbz1lPT57dGhpcy4jZS5kZWxldGUoZSk7bGV0IHQ9QXJyYXkuZnJvbSh0aGlzLiNlLnZhbHVlcygpKTtmb3IobGV0W2Usbl1vZiB0aGlzLiNuKXQuaW5jbHVkZXMoZSl8fChQKG4uZWZmZWN0KSx0aGlzLiNuLmRlbGV0ZShlKSl9O2Vuc3VyZShlLHQpe3ZhciBuPWoscj1HbigpO2lmKHQmJiF0aGlzLiN0LmhhcyhlKSYmIXRoaXMuI24uaGFzKGUpKWlmKHIpe3ZhciBpPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxhPXpuKCk7aS5hcHBlbmQoYSksdGhpcy4jbi5zZXQoZSx7ZWZmZWN0OmdyKCgpPT50KGEpKSxmcmFnbWVudDppfSl9ZWxzZSB0aGlzLiN0LnNldChlLGdyKCgpPT50KHRoaXMuYW5jaG9yKSkpO2lmKHRoaXMuI2Uuc2V0KG4sZSkscil7Zm9yKGxldFt0LHJdb2YgdGhpcy4jdCl0PT09ZT9uLnVuc2tpcF9lZmZlY3Qocik6bi5za2lwX2VmZmVjdChyKTtmb3IobGV0W3Qscl1vZiB0aGlzLiNuKXQ9PT1lP24udW5za2lwX2VmZmVjdChyLmVmZmVjdCk6bi5za2lwX2VmZmVjdChyLmVmZmVjdCk7bi5vbmNvbW1pdCh0aGlzLiNhKSxuLm9uZGlzY2FyZCh0aGlzLiNvKX1lbHNlIEMmJih0aGlzLmFuY2hvcj13KSx0aGlzLiNhKG4pfX07ZnVuY3Rpb24gUmkoZSx0LG49ITEpe3ZhciByO0MmJihyPXcsWWUoKSk7dmFyIGk9bmV3IExpKGUpLGE9bj9tZTowO2Z1bmN0aW9uIG8oZSx0KXtpZihDKXt2YXIgbj0kZShyKTtpZihlIT09cGFyc2VJbnQobi5zdWJzdHJpbmcoMSkpKXt2YXIgYT1RZSgpO1QoYSksaS5hbmNob3I9YSxKZSghMSksaS5lbnN1cmUoZSx0KSxKZSghMCk7cmV0dXJufX1pLmVuc3VyZShlLHQpfW1yKCgpPT57dmFyIGU9ITE7dCgodCxuPTApPT57ZT0hMCxvKG4sdCl9KSxlfHxvKC0xLG51bGwpfSxhKX12YXIgemk9U3ltYm9sKGBOYU5gKTtmdW5jdGlvbiBCaShlLHQsbil7QyYmWWUoKTt2YXIgcj1uZXcgTGkoZSksaT0hZHQoKTttcigoKT0+e3ZhciBlPXQoKTtlIT09ZSYmKGU9emkpLGkmJnR5cGVvZiBlPT1gb2JqZWN0YCYmZSYmKGU9e30pLHIuZW5zdXJlKGUsbil9KX1mdW5jdGlvbiBWaShlLHQpe3JldHVybiB0fWZ1bmN0aW9uIEhpKGUsdCxuKXtmb3IodmFyIHI9W10saT10Lmxlbmd0aCxhLG89dC5sZW5ndGgscz0wO3M8aTtzKyspe2xldCBuPXRbc107U3IobiwoKT0+e2lmKGEpe2lmKGEucGVuZGluZy5kZWxldGUobiksYS5kb25lLmFkZChuKSxhLnBlbmRpbmcuc2l6ZT09PTApe3ZhciB0PWUub3V0cm9ncm91cHM7VWkoZSxoKGEuZG9uZSkpLHQuZGVsZXRlKGEpLHQuc2l6ZT09PTAmJihlLm91dHJvZ3JvdXBzPW51bGwpfX1lbHNlIC0tb30sITEpfWlmKG89PT0wKXt2YXIgYz1yLmxlbmd0aD09PTAmJm4hPT1udWxsO2lmKGMpe3ZhciBsPW4sdT1sLnBhcmVudE5vZGU7V24odSksdS5hcHBlbmQobCksZS5pdGVtcy5jbGVhcigpfVVpKGUsdCwhYyl9ZWxzZSBhPXtwZW5kaW5nOm5ldyBTZXQodCksZG9uZTpuZXcgU2V0fSwoZS5vdXRyb2dyb3Vwcz8/PW5ldyBTZXQpLmFkZChhKX1mdW5jdGlvbiBVaShlLHQsbj0hMCl7dmFyIHI7aWYoZS5wZW5kaW5nLnNpemU+MCl7cj1uZXcgU2V0O2ZvcihsZXQgdCBvZiBlLnBlbmRpbmcudmFsdWVzKCkpZm9yKGxldCBuIG9mIHQpci5hZGQoZS5pdGVtcy5nZXQobikuZSl9Zm9yKHZhciBpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciBhPXRbaV07cj8uaGFzKGEpPyhhLmZ8PV9lLEVyKGEsZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpKSk6UCh0W2ldLG4pfX12YXIgV2k7ZnVuY3Rpb24gR2koZSx0LG4scixpLGE9bnVsbCl7dmFyIG89ZSxzPW5ldyBNYXA7aWYodCY0KXt2YXIgYz1lO289Qz9UKE4oYykpOmMuYXBwZW5kQ2hpbGQoem4oKSl9QyYmWWUoKTt2YXIgbD1udWxsLHU9cG4oKCk9Pnt2YXIgZT1uKCk7cmV0dXJuIGYoZSk/ZTplPT1udWxsP1tdOmgoZSl9KSxkLHA9bmV3IE1hcCxtPSEwO2Z1bmN0aW9uIGcoZSl7di5lZmZlY3QuZiYxNjM4NHx8KHYucGVuZGluZy5kZWxldGUoZSksdi5mYWxsYmFjaz1sLHFpKHYsZCxvLHQsciksbCE9PW51bGwmJihkLmxlbmd0aD09PTA/bC5mJjMzNTU0NDMyPyhsLmZePV9lLFlpKGwsbnVsbCxvKSk6d3IobCk6U3IobCwoKT0+e2w9bnVsbH0pKSl9ZnVuY3Rpb24gXyhlKXt2LnBlbmRpbmcuZGVsZXRlKGUpfXZhciB2PXtlZmZlY3Q6bXIoKCk9PntkPVIodSk7dmFyIGU9ZC5sZW5ndGg7bGV0IGM9ITE7QyYmJGUobyk9PT1gWyFgIT0oZT09PTApJiYobz1RZSgpLFQobyksSmUoITEpLGM9ITApO2Zvcih2YXIgZj1uZXcgU2V0LGg9aix2PUduKCkseT0wO3k8ZTt5Kz0xKXtDJiZ3Lm5vZGVUeXBlPT09OCYmdy5kYXRhPT09YF1gJiYobz13LGM9ITAsSmUoITEpKTt2YXIgZWU9ZFt5XSxiPXIoZWUseSksdGU9bT9udWxsOnMuZ2V0KGIpO3RlPyh0ZS52JiZFbih0ZS52LGVlKSx0ZS5pJiZFbih0ZS5pLHkpLHYmJmgudW5za2lwX2VmZmVjdCh0ZS5lKSk6KHRlPUppKHMsbT9vOldpPz89em4oKSxlZSxiLHksaSx0LG4pLG18fCh0ZS5lLmZ8PV9lKSxzLnNldChiLHRlKSksZi5hZGQoYil9aWYoZT09PTAmJmEmJiFsJiYobT9sPWdyKCgpPT5hKG8pKToobD1ncigoKT0+YShXaT8/PXpuKCkpKSxsLmZ8PV9lKSksZT5mLnNpemUmJmtlKGBgLGBgLGBgKSxDJiZlPjAmJlQoUWUoKSksIW0paWYocC5zZXQoaCxmKSx2KXtmb3IobGV0W2UsdF1vZiBzKWYuaGFzKGUpfHxoLnNraXBfZWZmZWN0KHQuZSk7aC5vbmNvbW1pdChnKSxoLm9uZGlzY2FyZChfKX1lbHNlIGcoaCk7YyYmSmUoITApLFIodSl9KSxmbGFnczp0LGl0ZW1zOnMscGVuZGluZzpwLG91dHJvZ3JvdXBzOm51bGwsZmFsbGJhY2s6bH07bT0hMSxDJiYobz13KX1mdW5jdGlvbiBLaShlKXtmb3IoO2UhPT1udWxsJiYhKGUuZiYzMik7KWU9ZS5uZXh0O3JldHVybiBlfWZ1bmN0aW9uIHFpKGUsdCxuLHIsaSl7dmFyIGE9KHImOCkhPTAsbz10Lmxlbmd0aCxzPWUuaXRlbXMsYz1LaShlLmVmZmVjdC5maXJzdCksbCx1PW51bGwsZCxmPVtdLHA9W10sbSxnLF8sdjtpZihhKWZvcih2PTA7djxvO3YrPTEpbT10W3ZdLGc9aShtLHYpLF89cy5nZXQoZykuZSxfLmYmMzM1NTQ0MzJ8fChfLm5vZGVzPy5hPy5tZWFzdXJlKCksKGQ/Pz1uZXcgU2V0KS5hZGQoXykpO2Zvcih2PTA7djxvO3YrPTEpe2lmKG09dFt2XSxnPWkobSx2KSxfPXMuZ2V0KGcpLmUsZS5vdXRyb2dyb3VwcyE9PW51bGwpZm9yKGxldCB0IG9mIGUub3V0cm9ncm91cHMpdC5wZW5kaW5nLmRlbGV0ZShfKSx0LmRvbmUuZGVsZXRlKF8pO2lmKF8uZiY4MTkyJiYod3IoXyksYSYmKF8ubm9kZXM/LmE/LnVuZml4KCksKGQ/Pz1uZXcgU2V0KS5kZWxldGUoXykpKSxfLmYmMzM1NTQ0MzIpaWYoXy5mXj1fZSxfPT09YylZaShfLG51bGwsbik7ZWxzZXt2YXIgeT11P3UubmV4dDpjO189PT1lLmVmZmVjdC5sYXN0JiYoZS5lZmZlY3QubGFzdD1fLnByZXYpLF8ucHJldiYmKF8ucHJldi5uZXh0PV8ubmV4dCksXy5uZXh0JiYoXy5uZXh0LnByZXY9Xy5wcmV2KSxYaShlLHUsXyksWGkoZSxfLHkpLFlpKF8seSxuKSx1PV8sZj1bXSxwPVtdLGM9S2kodS5uZXh0KTtjb250aW51ZX1pZihfIT09Yyl7aWYobCE9PXZvaWQgMCYmbC5oYXMoXykpe2lmKGYubGVuZ3RoPHAubGVuZ3RoKXt2YXIgZWU9cFswXSxiO3U9ZWUucHJldjt2YXIgdGU9ZlswXSxuZT1mW2YubGVuZ3RoLTFdO2ZvcihiPTA7YjxmLmxlbmd0aDtiKz0xKVlpKGZbYl0sZWUsbik7Zm9yKGI9MDtiPHAubGVuZ3RoO2IrPTEpbC5kZWxldGUocFtiXSk7WGkoZSx0ZS5wcmV2LG5lLm5leHQpLFhpKGUsdSx0ZSksWGkoZSxuZSxlZSksYz1lZSx1PW5lLC0tdixmPVtdLHA9W119ZWxzZSBsLmRlbGV0ZShfKSxZaShfLGMsbiksWGkoZSxfLnByZXYsXy5uZXh0KSxYaShlLF8sdT09PW51bGw/ZS5lZmZlY3QuZmlyc3Q6dS5uZXh0KSxYaShlLHUsXyksdT1fO2NvbnRpbnVlfWZvcihmPVtdLHA9W107YyE9PW51bGwmJmMhPT1fOykobD8/PW5ldyBTZXQpLmFkZChjKSxwLnB1c2goYyksYz1LaShjLm5leHQpO2lmKGM9PT1udWxsKWNvbnRpbnVlfV8uZiYzMzU1NDQzMnx8Zi5wdXNoKF8pLHU9XyxjPUtpKF8ubmV4dCl9aWYoZS5vdXRyb2dyb3VwcyE9PW51bGwpe2ZvcihsZXQgdCBvZiBlLm91dHJvZ3JvdXBzKXQucGVuZGluZy5zaXplPT09MCYmKFVpKGUsaCh0LmRvbmUpKSxlLm91dHJvZ3JvdXBzPy5kZWxldGUodCkpO2Uub3V0cm9ncm91cHMuc2l6ZT09PTAmJihlLm91dHJvZ3JvdXBzPW51bGwpfWlmKGMhPT1udWxsfHxsIT09dm9pZCAwKXt2YXIgeD1bXTtpZihsIT09dm9pZCAwKWZvcihfIG9mIGwpXy5mJjgxOTJ8fHgucHVzaChfKTtmb3IoO2MhPT1udWxsOykhKGMuZiY4MTkyKSYmYyE9PWUuZmFsbGJhY2smJngucHVzaChjKSxjPUtpKGMubmV4dCk7dmFyIHJlPXgubGVuZ3RoO2lmKHJlPjApe3ZhciBpZT1yJjQmJm89PT0wP246bnVsbDtpZihhKXtmb3Iodj0wO3Y8cmU7dis9MSl4W3ZdLm5vZGVzPy5hPy5tZWFzdXJlKCk7Zm9yKHY9MDt2PHJlO3YrPTEpeFt2XS5ub2Rlcz8uYT8uZml4KCl9SGkoZSx4LGllKX19YSYmZ3QoKCk9PntpZihkIT09dm9pZCAwKWZvcihfIG9mIGQpXy5ub2Rlcz8uYT8uYXBwbHkoKX0pfWZ1bmN0aW9uIEppKGUsdCxuLHIsaSxhLG8scyl7dmFyIGM9byYxP28mMTY/U24obik6d24obiwhMSwhMSk6bnVsbCxsPW8mMj9TbihpKTpudWxsO3JldHVybnt2OmMsaTpsLGU6Z3IoKCk9PihhKHQsYz8/bixsPz9pLHMpLCgpPT57ZS5kZWxldGUocil9KSl9fWZ1bmN0aW9uIFlpKGUsdCxuKXtpZihlLm5vZGVzKWZvcih2YXIgcj1lLm5vZGVzLnN0YXJ0LGk9ZS5ub2Rlcy5lbmQsYT10JiYhKHQuZiYzMzU1NDQzMik/dC5ub2Rlcy5zdGFydDpuO3IhPT1udWxsOyl7dmFyIG89Qm4ocik7aWYoYS5iZWZvcmUocikscj09PWkpcmV0dXJuO3I9b319ZnVuY3Rpb24gWGkoZSx0LG4pe3Q9PT1udWxsP2UuZWZmZWN0LmZpcnN0PW46dC5uZXh0PW4sbj09PW51bGw/ZS5lZmZlY3QubGFzdD10Om4ucHJldj10fWZ1bmN0aW9uIFppKGUsdCxuPSExLHI9ITEsaT0hMSxhPSExKXt2YXIgbz1lLHM9YGA7aWYobil7dmFyIGM9ZTtDJiYobz1UKE4oYykpKX1wcigoKT0+e3ZhciBlPUk7aWYocz09PShzPXQoKT8/YGApKXtDJiZZZSgpO3JldHVybn1pZihuJiYhQyl7ZS5ub2Rlcz1udWxsLGMuaW5uZXJIVE1MPXMscyE9PWBgJiZDaShOKGMpLGMubGFzdENoaWxkKTtyZXR1cm59aWYoZS5ub2RlcyE9PW51bGwmJihicihlLm5vZGVzLnN0YXJ0LGUubm9kZXMuZW5kKSxlLm5vZGVzPW51bGwpLHMhPT1gYCl7aWYoQyl7Zm9yKHZhciBhPXcuZGF0YSxsPVllKCksdT1sO2whPT1udWxsJiYobC5ub2RlVHlwZSE9PTh8fGwuZGF0YSE9PWBgKTspdT1sLGw9Qm4obCk7aWYobD09PW51bGwpdGhyb3cgR2UoKSxCZTtDaSh3LHUpLG89VChsKTtyZXR1cm59dmFyIGQ9S24ocj9gc3ZnYDppP2BtYXRoYDpgdGVtcGxhdGVgLHI/SGU6aT9VZTp2b2lkIDApO2QuaW5uZXJIVE1MPXM7dmFyIGY9cnx8aT9kOmQuY29udGVudDtpZihDaShOKGYpLGYubGFzdENoaWxkKSxyfHxpKWZvcig7TihmKTspby5iZWZvcmUoTihmKSk7ZWxzZSBvLmJlZm9yZShmKX19KX1mdW5jdGlvbiBRaShlLHQsLi4ubil7dmFyIHI9bmV3IExpKGUpO21yKCgpPT57bGV0IGU9dCgpPz9udWxsO3IuZW5zdXJlKGUsZSYmKHQ9PmUodCwuLi5uKSkpfSxtZSl9ZnVuY3Rpb24gJGkoZSx0LG4pe3ZhciByO0MmJihyPXcsWWUoKSk7dmFyIGk9bmV3IExpKGUpO21yKCgpPT57dmFyIGU9dCgpPz9udWxsO2lmKEMmJiRlKHIpPT09YFtgIT0oZSE9PW51bGwpKXt2YXIgYT1RZSgpO1QoYSksaS5hbmNob3I9YSxKZSghMSksaS5lbnN1cmUoZSxlJiYodD0+bih0LGUpKSksSmUoITApO3JldHVybn1pLmVuc3VyZShlLGUmJih0PT5uKHQsZSkpKX0sbWUpfXZhciBlYT0oKT0+cGVyZm9ybWFuY2Uubm93KCksdGE9e3RpY2s6ZT0+cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGUpLG5vdzooKT0+ZWEoKSx0YXNrczpuZXcgU2V0fTtmdW5jdGlvbiBuYSgpe2xldCBlPXRhLm5vdygpO3RhLnRhc2tzLmZvckVhY2godD0+e3QuYyhlKXx8KHRhLnRhc2tzLmRlbGV0ZSh0KSx0LmYoKSl9KSx0YS50YXNrcy5zaXplIT09MCYmdGEudGljayhuYSl9ZnVuY3Rpb24gcmEoZSl7bGV0IHQ7cmV0dXJuIHRhLnRhc2tzLnNpemU9PT0wJiZ0YS50aWNrKG5hKSx7cHJvbWlzZTpuZXcgUHJvbWlzZShuPT57dGEudGFza3MuYWRkKHQ9e2M6ZSxmOm59KX0pLGFib3J0KCl7dGEudGFza3MuZGVsZXRlKHQpfX19ZnVuY3Rpb24gaWEoZSx0KXskbigoKT0+e2UuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQodCkpfSl9ZnVuY3Rpb24gYWEoZSl7aWYoZT09PWBmbG9hdGApcmV0dXJuYGNzc0Zsb2F0YDtpZihlPT09YG9mZnNldGApcmV0dXJuYGNzc09mZnNldGA7aWYoZS5zdGFydHNXaXRoKGAtLWApKXJldHVybiBlO2xldCB0PWUuc3BsaXQoYC1gKTtyZXR1cm4gdC5sZW5ndGg9PT0xP3RbMF06dFswXSt0LnNsaWNlKDEpLm1hcChlPT5lWzBdLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSkuam9pbihgYCl9ZnVuY3Rpb24gb2EoZSl7bGV0IHQ9e30sbj1lLnNwbGl0KGA7YCk7Zm9yKGxldCBlIG9mIG4pe2xldFtuLHJdPWUuc3BsaXQoYDpgKTtpZighbnx8cj09PXZvaWQgMClicmVhaztsZXQgaT1hYShuLnRyaW0oKSk7dFtpXT1yLnRyaW0oKX1yZXR1cm4gdH12YXIgc2E9ZT0+ZTtmdW5jdGlvbiBjYShlLHQsbixyKXt2YXIgaT0oZSYxKSE9MCxhPShlJjIpIT0wLG89aSYmYSxzPShlJjQpIT0wLGM9bz9gYm90aGA6aT9gaW5gOmBvdXRgLGwsdT10LmluZXJ0LGQ9dC5zdHlsZS5vdmVyZmxvdyxmLHA7ZnVuY3Rpb24gbSgpe3JldHVybiAkbigoKT0+bD8/PW4oKSh0LHI/LigpPz97fSx7ZGlyZWN0aW9uOmN9KSl9dmFyIGg9e2lzX2dsb2JhbDpzLGluKCl7aWYodC5pbmVydD11LCFpKXtwPy5hYm9ydCgpLHA/LnJlc2V0Py4oKTtyZXR1cm59YXx8Zj8uYWJvcnQoKSxmPWxhKHQsbSgpLHAsMSwoKT0+e2lhKHQsYGludHJvc3RhcnRgKX0sKCk9PntpYSh0LGBpbnRyb2VuZGApLGY/LmFib3J0KCksZj1sPXZvaWQgMCx0LnN0eWxlLm92ZXJmbG93PWR9KX0sb3V0KGUpe2lmKCFhKXtlPy4oKSxsPXZvaWQgMDtyZXR1cm59dC5pbmVydD0hMCxwPWxhKHQsbSgpLGYsMCwoKT0+e2lhKHQsYG91dHJvc3RhcnRgKX0sKCk9PntpYSh0LGBvdXRyb2VuZGApLGU/LigpfSl9LHN0b3A6KCk9PntmPy5hYm9ydCgpLHA/LmFib3J0KCl9fSxnPUk7aWYoKGcubm9kZXMudD8/PVtdKS5wdXNoKGgpLGkmJkFpKXt2YXIgXz1zO2lmKCFfKXtmb3IodmFyIHY9Zy5wYXJlbnQ7diYmdi5mJjY1NTM2Oylmb3IoOyh2PXYucGFyZW50KSYmISh2LmYmMTYpOyk7Xz0hdnx8KHYuZiYzMjc2OCkhPTB9XyYmdXIoKCk9PnskcigoKT0+aC5pbigpKX0pfX1mdW5jdGlvbiBsYShlLHQsbixyLGksYSl7dmFyIG89cj09PTE7aWYobmUodCkpe3ZhciBzLGM9ITE7cmV0dXJuIGd0KCgpPT57Y3x8KHM9bGEoZSx0KHtkaXJlY3Rpb246bz9gaW5gOmBvdXRgfSksbixyLGksYSkpfSkse2Fib3J0OigpPT57Yz0hMCxzPy5hYm9ydCgpfSxkZWFjdGl2YXRlOigpPT5zLmRlYWN0aXZhdGUoKSxyZXNldDooKT0+cy5yZXNldCgpLHQ6KCk9PnMudCgpfX1pZihuPy5kZWFjdGl2YXRlKCksIXQ/LmR1cmF0aW9uJiYhdD8uZGVsYXkpcmV0dXJuIGkoKSxhKCkse2Fib3J0OngsZGVhY3RpdmF0ZTp4LHJlc2V0OngsdDooKT0+cn07bGV0e2RlbGF5Omw9MCxjc3M6dSx0aWNrOmQsZWFzaW5nOmY9c2F9PXQ7dmFyIHA9W107aWYobyYmbj09PXZvaWQgMCYmKGQmJmQoMCwxKSx1KSl7dmFyIG09b2EodSgwLDEpKTtwLnB1c2gobSxtKX12YXIgaD0oKT0+MS1yLGc9ZS5hbmltYXRlKHAse2R1cmF0aW9uOmwsZmlsbDpgZm9yd2FyZHNgfSk7cmV0dXJuIGcub25maW5pc2g9KCk9PntnLmNhbmNlbCgpLGkoKTt2YXIgbz1uPy50KCk/PzEtcjtuPy5hYm9ydCgpO3ZhciBzPXItbyxjPXQuZHVyYXRpb24qTWF0aC5hYnMocyksbD1bXTtpZihjPjApe3ZhciBwPSExO2lmKHUpZm9yKHZhciBtPU1hdGguY2VpbChjLygxZTMvNjApKSxfPTA7Xzw9bTtfKz0xKXt2YXIgdj1vK3MqZihfL20pLHk9b2EodSh2LDEtdikpO2wucHVzaCh5KSxwfHw9eS5vdmVyZmxvdz09PWBoaWRkZW5gfXAmJihlLnN0eWxlLm92ZXJmbG93PWBoaWRkZW5gKSxoPSgpPT57dmFyIGU9Zy5jdXJyZW50VGltZTtyZXR1cm4gbytzKmYoZS9jKX0sZCYmcmEoKCk9PntpZihnLnBsYXlTdGF0ZSE9PWBydW5uaW5nYClyZXR1cm4hMTt2YXIgZT1oKCk7cmV0dXJuIGQoZSwxLWUpLCEwfSl9Zz1lLmFuaW1hdGUobCx7ZHVyYXRpb246YyxmaWxsOmBmb3J3YXJkc2B9KSxnLm9uZmluaXNoPSgpPT57aD0oKT0+cixkPy4ociwxLXIpLGEoKX19LHthYm9ydDooKT0+e2cmJihnLmNhbmNlbCgpLGcuZWZmZWN0PW51bGwsZy5vbmZpbmlzaD14KX0sZGVhY3RpdmF0ZTooKT0+e2E9eH0scmVzZXQ6KCk9PntyPT09MCYmZD8uKDEsMCl9LHQ6KCk9PmgoKX19ZnVuY3Rpb24gdWEoZSx0LG4pe3VyKCgpPT57dmFyIHI9JHIoKCk9PnQoZSxuPy4oKSl8fHt9KTtpZihuJiZyPy51cGRhdGUpe3ZhciBpPSExLGE9e307ZnIoKCk9Pnt2YXIgZT1uKCk7ZWkoZSksaSYmdHQoYSxlKSYmKGE9ZSxyLnVwZGF0ZShlKSl9KSxpPSEwfWlmKHI/LmRlc3Ryb3kpcmV0dXJuKCk9PnIuZGVzdHJveSgpfSl9ZnVuY3Rpb24gZGEoZSx0KXt2YXIgbj12b2lkIDAscjtocigoKT0+e24hPT0obj10KCkpJiYociYmPShQKHIpLG51bGwpLG4mJihyPWdyKCgpPT57dXIoKCk9Pm4oZSkpfSkpKX0pfWZ1bmN0aW9uIGZhKGUpe3ZhciB0LG4scj1gYDtpZih0eXBlb2YgZT09YHN0cmluZ2B8fHR5cGVvZiBlPT1gbnVtYmVyYClyKz1lO2Vsc2UgaWYodHlwZW9mIGU9PWBvYmplY3RgKWlmKEFycmF5LmlzQXJyYXkoZSkpe3ZhciBpPWUubGVuZ3RoO2Zvcih0PTA7dDxpO3QrKyllW3RdJiYobj1mYShlW3RdKSkmJihyJiYocis9YCBgKSxyKz1uKX1lbHNlIGZvcihuIGluIGUpZVtuXSYmKHImJihyKz1gIGApLHIrPW4pO3JldHVybiByfWZ1bmN0aW9uIHBhKCl7Zm9yKHZhciBlLHQsbj0wLHI9YGAsaT1hcmd1bWVudHMubGVuZ3RoO248aTtuKyspKGU9YXJndW1lbnRzW25dKSYmKHQ9ZmEoZSkpJiYociYmKHIrPWAgYCkscis9dCk7cmV0dXJuIHJ9ZnVuY3Rpb24gbWEoZSl7cmV0dXJuIHR5cGVvZiBlPT1gb2JqZWN0YD9wYShlKTplPz9gYH12YXIgaGE9Wy4uLmAgCQpcclxmXHhBMFx277u/YF07ZnVuY3Rpb24gZ2EoZSx0LG4pe3ZhciByPWU9PW51bGw/YGA6YGArZTtpZih0JiYocj1yP3IrYCBgK3Q6dCksbil7Zm9yKHZhciBpIG9mIE9iamVjdC5rZXlzKG4pKWlmKG5baV0pcj1yP3IrYCBgK2k6aTtlbHNlIGlmKHIubGVuZ3RoKWZvcih2YXIgYT1pLmxlbmd0aCxvPTA7KG89ci5pbmRleE9mKGksbykpPj0wOyl7dmFyIHM9bythOyhvPT09MHx8aGEuaW5jbHVkZXMocltvLTFdKSkmJihzPT09ci5sZW5ndGh8fGhhLmluY2x1ZGVzKHJbc10pKT9yPShvPT09MD9gYDpyLnN1YnN0cmluZygwLG8pKStyLnN1YnN0cmluZyhzKzEpOm89c319cmV0dXJuIHI9PT1gYD9udWxsOnJ9ZnVuY3Rpb24gX2EoZSx0PSExKXt2YXIgbj10P2AgIWltcG9ydGFudDtgOmA7YCxyPWBgO2Zvcih2YXIgaSBvZiBPYmplY3Qua2V5cyhlKSl7dmFyIGE9ZVtpXTthIT1udWxsJiZhIT09YGAmJihyKz1gIGAraStgOiBgK2Erbil9cmV0dXJuIHJ9ZnVuY3Rpb24gdmEoZSl7cmV0dXJuIGVbMF0hPT1gLWB8fGVbMV0hPT1gLWA/ZS50b0xvd2VyQ2FzZSgpOmV9ZnVuY3Rpb24geWEoZSx0KXtpZih0KXt2YXIgbj1gYCxyLGk7aWYoQXJyYXkuaXNBcnJheSh0KT8ocj10WzBdLGk9dFsxXSk6cj10LGUpe2U9U3RyaW5nKGUpLnJlcGxhY2VBbGwoL1xzKlwvXCouKj9cKlwvXHMqL2csYGApLnRyaW0oKTt2YXIgYT0hMSxvPTAscz0hMSxjPVtdO3ImJmMucHVzaCguLi5PYmplY3Qua2V5cyhyKS5tYXAodmEpKSxpJiZjLnB1c2goLi4uT2JqZWN0LmtleXMoaSkubWFwKHZhKSk7dmFyIGw9MCx1PS0xO2xldCB0PWUubGVuZ3RoO2Zvcih2YXIgZD0wO2Q8dDtkKyspe3ZhciBmPWVbZF07aWYocz9mPT09YC9gJiZlW2QtMV09PT1gKmAmJihzPSExKTphP2E9PT1mJiYoYT0hMSk6Zj09PWAvYCYmZVtkKzFdPT09YCpgP3M9ITA6Zj09PWAiYHx8Zj09PWAnYD9hPWY6Zj09PWAoYD9vKys6Zj09PWApYCYmby0tLCFzJiZhPT09ITEmJm89PT0wKXtpZihmPT09YDpgJiZ1PT09LTEpdT1kO2Vsc2UgaWYoZj09PWA7YHx8ZD09PXQtMSl7aWYodSE9PS0xKXt2YXIgcD12YShlLnN1YnN0cmluZyhsLHUpLnRyaW0oKSk7aWYoIWMuaW5jbHVkZXMocCkpe2YhPT1gO2AmJmQrKzt2YXIgbT1lLnN1YnN0cmluZyhsLGQpLnRyaW0oKTtuKz1gIGArbStgO2B9fWw9ZCsxLHU9LTF9fX19cmV0dXJuIHImJihuKz1fYShyKSksaSYmKG4rPV9hKGksITApKSxuPW4udHJpbSgpLG49PT1gYD9udWxsOm59cmV0dXJuIGU9PW51bGw/bnVsbDpTdHJpbmcoZSl9ZnVuY3Rpb24gYmEoZSx0LG4scixpLGEpe3ZhciBvPWUuX19jbGFzc05hbWU7aWYoQ3x8byE9PW58fG89PT12b2lkIDApe3ZhciBzPWdhKG4scixhKTsoIUN8fHMhPT1lLmdldEF0dHJpYnV0ZShgY2xhc3NgKSkmJihzPT1udWxsP2UucmVtb3ZlQXR0cmlidXRlKGBjbGFzc2ApOnQ/ZS5jbGFzc05hbWU9czplLnNldEF0dHJpYnV0ZShgY2xhc3NgLHMpKSxlLl9fY2xhc3NOYW1lPW59ZWxzZSBpZihhJiZpIT09YSlmb3IodmFyIGMgaW4gYSl7dmFyIGw9ISFhW2NdOyhpPT1udWxsfHxsIT09ISFpW2NdKSYmZS5jbGFzc0xpc3QudG9nZ2xlKGMsbCl9cmV0dXJuIGF9ZnVuY3Rpb24geGEoZSx0PXt9LG4scil7Zm9yKHZhciBpIGluIG4pe3ZhciBhPW5baV07dFtpXSE9PWEmJihuW2ldPT1udWxsP2Uuc3R5bGUucmVtb3ZlUHJvcGVydHkoaSk6ZS5zdHlsZS5zZXRQcm9wZXJ0eShpLGEscikpfX1mdW5jdGlvbiBTYShlLHQsbixyKXt2YXIgaT1lLl9fc3R5bGU7aWYoQ3x8aSE9PXQpe3ZhciBhPXlhKHQscik7KCFDfHxhIT09ZS5nZXRBdHRyaWJ1dGUoYHN0eWxlYCkpJiYoYT09bnVsbD9lLnJlbW92ZUF0dHJpYnV0ZShgc3R5bGVgKTplLnN0eWxlLmNzc1RleHQ9YSksZS5fX3N0eWxlPXR9ZWxzZSByJiYoQXJyYXkuaXNBcnJheShyKT8oeGEoZSxuPy5bMF0sclswXSkseGEoZSxuPy5bMV0sclsxXSxgaW1wb3J0YW50YCkpOnhhKGUsbixyKSk7cmV0dXJuIHJ9ZnVuY3Rpb24gQ2EoZSx0LG49ITEpe2lmKGUubXVsdGlwbGUpe2lmKHQ9PW51bGwpcmV0dXJuO2lmKCFmKHQpKXJldHVybiBLZSgpO2Zvcih2YXIgciBvZiBlLm9wdGlvbnMpci5zZWxlY3RlZD10LmluY2x1ZGVzKEVhKHIpKTtyZXR1cm59Zm9yKHIgb2YgZS5vcHRpb25zKWlmKE5uKEVhKHIpLHQpKXtyLnNlbGVjdGVkPSEwO3JldHVybn0oIW58fHQhPT12b2lkIDApJiYoZS5zZWxlY3RlZEluZGV4PS0xKX1mdW5jdGlvbiB3YShlKXt2YXIgdD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKT0+e0NhKGUsZS5fX3ZhbHVlKX0pO3Qub2JzZXJ2ZShlLHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMCxhdHRyaWJ1dGVzOiEwLGF0dHJpYnV0ZUZpbHRlcjpbYHZhbHVlYF19KSxhcigoKT0+e3QuZGlzY29ubmVjdCgpfSl9ZnVuY3Rpb24gVGEoZSx0LG49dCl7dmFyIHI9bmV3IFdlYWtTZXQsaT0hMDtlcihlLGBjaGFuZ2VgLHQ9Pnt2YXIgaT10P2Bbc2VsZWN0ZWRdYDpgOmNoZWNrZWRgLGE7aWYoZS5tdWx0aXBsZSlhPVtdLm1hcC5jYWxsKGUucXVlcnlTZWxlY3RvckFsbChpKSxFYSk7ZWxzZXt2YXIgbz1lLnF1ZXJ5U2VsZWN0b3IoaSk/P2UucXVlcnlTZWxlY3Rvcihgb3B0aW9uOm5vdChbZGlzYWJsZWRdKWApO2E9byYmRWEobyl9bihhKSxlLl9fdmFsdWU9YSxqIT09bnVsbCYmci5hZGQoail9KSx1cigoKT0+e3ZhciBhPXQoKTtpZihlPT09ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCl7dmFyIG89cnQ/THQ6ajtpZihyLmhhcyhvKSlyZXR1cm59aWYoQ2EoZSxhLGkpLGkmJmE9PT12b2lkIDApe3ZhciBzPWUucXVlcnlTZWxlY3RvcihgOmNoZWNrZWRgKTtzIT09bnVsbCYmKGE9RWEocyksbihhKSl9ZS5fX3ZhbHVlPWEsaT0hMX0pLHdhKGUpfWZ1bmN0aW9uIEVhKGUpe3JldHVybmBfX3ZhbHVlYGluIGU/ZS5fX3ZhbHVlOmUudmFsdWV9dmFyIERhPVN5bWJvbChgY2xhc3NgKSxPYT1TeW1ib2woYHN0eWxlYCksa2E9U3ltYm9sKGBpcyBjdXN0b20gZWxlbWVudGApLEFhPVN5bWJvbChgaXMgaHRtbGApLGphPUVlP2BsaW5rYDpgTElOS2AsTWE9RWU/YGlucHV0YDpgSU5QVVRgLE5hPUVlP2BvcHRpb25gOmBPUFRJT05gLFBhPUVlP2BzZWxlY3RgOmBTRUxFQ1RgLEZhPUVlP2Bwcm9ncmVzc2A6YFBST0dSRVNTYDtmdW5jdGlvbiBJYShlKXtpZihDKXt2YXIgdD0hMSxuPSgpPT57aWYoIXQpe2lmKHQ9ITAsZS5oYXNBdHRyaWJ1dGUoYHZhbHVlYCkpe3ZhciBuPWUudmFsdWU7emEoZSxgdmFsdWVgLG51bGwpLGUudmFsdWU9bn1pZihlLmhhc0F0dHJpYnV0ZShgY2hlY2tlZGApKXt2YXIgcj1lLmNoZWNrZWQ7emEoZSxgY2hlY2tlZGAsbnVsbCksZS5jaGVja2VkPXJ9fX07ZS5fX29uX3I9bixndChuKSxRbigpfX1mdW5jdGlvbiBMYShlLHQpe3ZhciBuPUhhKGUpO24udmFsdWU9PT0obi52YWx1ZT10Pz92b2lkIDApfHxlLnZhbHVlPT09dCYmKHQhPT0wfHxlLm5vZGVOYW1lIT09RmEpfHwoZS52YWx1ZT10Pz9gYCl9ZnVuY3Rpb24gUmEoZSx0KXt0P2UuaGFzQXR0cmlidXRlKGBzZWxlY3RlZGApfHxlLnNldEF0dHJpYnV0ZShgc2VsZWN0ZWRgLGBgKTplLnJlbW92ZUF0dHJpYnV0ZShgc2VsZWN0ZWRgKX1mdW5jdGlvbiB6YShlLHQsbixyKXt2YXIgaT1IYShlKTtDJiYoaVt0XT1lLmdldEF0dHJpYnV0ZSh0KSx0PT09YHNyY2B8fHQ9PT1gc3Jjc2V0YHx8dD09PWBocmVmYCYmZS5ub2RlTmFtZT09PWphKXx8aVt0XSE9PShpW3RdPW4pJiYodD09PWBsb2FkaW5nYCYmKGVbd2VdPW4pLG49PW51bGw/ZS5yZW1vdmVBdHRyaWJ1dGUodCk6dHlwZW9mIG4hPWBzdHJpbmdgJiZXYShlKS5pbmNsdWRlcyh0KT9lW3RdPW46ZS5zZXRBdHRyaWJ1dGUodCxuKSl9ZnVuY3Rpb24gQmEoZSx0LG4scixpPSExLGE9ITEpe2lmKEMmJmkmJmUubm9kZU5hbWU9PT1NYSl7dmFyIG89ZTsoby50eXBlPT09YGNoZWNrYm94YD9gZGVmYXVsdENoZWNrZWRgOmBkZWZhdWx0VmFsdWVgKWluIG58fElhKG8pfXZhciBzPUhhKGUpLGM9c1trYV0sbD0hc1tBYV07bGV0IHU9QyYmYzt1JiZKZSghMSk7dmFyIGQ9dHx8e30sZj1lLm5vZGVOYW1lPT09TmE7Zm9yKHZhciBwIGluIHQpcCBpbiBufHwobltwXT1udWxsKTtuLmNsYXNzP24uY2xhc3M9bWEobi5jbGFzcyk6KHJ8fG5bRGFdKSYmKG4uY2xhc3M9bnVsbCksbltPYV0mJihuLnN0eWxlPz89bnVsbCk7dmFyIG09V2EoZSk7Zm9yKGxldCBpIGluIG4pe2xldCBvPW5baV07aWYoZiYmaT09PWB2YWx1ZWAmJm89PW51bGwpe2UudmFsdWU9ZS5fX3ZhbHVlPWBgLGRbaV09bztjb250aW51ZX1pZihpPT09YGNsYXNzYCl7YmEoZSxlLm5hbWVzcGFjZVVSST09PWBodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sYCxvLHIsdD8uW0RhXSxuW0RhXSksZFtpXT1vLGRbRGFdPW5bRGFdO2NvbnRpbnVlfWlmKGk9PT1gc3R5bGVgKXtTYShlLG8sdD8uW09hXSxuW09hXSksZFtpXT1vLGRbT2FdPW5bT2FdO2NvbnRpbnVlfXZhciBoPWRbaV07aWYoIShvPT09aCYmIShvPT09dm9pZCAwJiZlLmhhc0F0dHJpYnV0ZShpKSkpKXtkW2ldPW87dmFyIGc9aVswXStpWzFdO2lmKGchPT1gJCRgKWlmKGc9PT1gb25gKXtsZXQgdD17fSxuPWAkJGAraSxyPWkuc2xpY2UoMik7dmFyIF89aWkocik7aWYobmkocikmJihyPXIuc2xpY2UoMCwtNyksdC5jYXB0dXJlPSEwKSwhXyYmaCl7aWYobyE9bnVsbCljb250aW51ZTtlLnJlbW92ZUV2ZW50TGlzdGVuZXIocixkW25dLHQpLGRbbl09bnVsbH1pZihfKWdpKHIsZSxvKSxfaShbcl0pO2Vsc2UgaWYobyE9bnVsbCl7ZnVuY3Rpb24gYShlKXtkW2ldLmNhbGwodGhpcyxlKX1kW25dPW1pKHIsZSxhLHQpfX1lbHNlIGlmKGk9PT1gc3R5bGVgKXphKGUsaSxvKTtlbHNlIGlmKGk9PT1gYXV0b2ZvY3VzYClZbihlLCEhbyk7ZWxzZSBpZighYyYmKGk9PT1gX192YWx1ZWB8fGk9PT1gdmFsdWVgJiZvIT1udWxsKSllLnZhbHVlPWUuX192YWx1ZT1vO2Vsc2UgaWYoaT09PWBzZWxlY3RlZGAmJmYpUmEoZSxvKTtlbHNle3ZhciB2PWk7bHx8KHY9c2kodikpO3ZhciB5PXY9PT1gZGVmYXVsdFZhbHVlYHx8dj09PWBkZWZhdWx0Q2hlY2tlZGA7aWYobz09bnVsbCYmIWMmJiF5KWlmKHNbaV09bnVsbCx2PT09YHZhbHVlYHx8dj09PWBjaGVja2VkYCl7bGV0IG49ZSxyPXQ9PT12b2lkIDA7aWYodj09PWB2YWx1ZWApe2xldCBlPW4uZGVmYXVsdFZhbHVlO24ucmVtb3ZlQXR0cmlidXRlKHYpLG4uZGVmYXVsdFZhbHVlPWUsbi52YWx1ZT1uLl9fdmFsdWU9cj9lOm51bGx9ZWxzZXtsZXQgZT1uLmRlZmF1bHRDaGVja2VkO24ucmVtb3ZlQXR0cmlidXRlKHYpLG4uZGVmYXVsdENoZWNrZWQ9ZSxuLmNoZWNrZWQ9cj9lOiExfX1lbHNlIGUucmVtb3ZlQXR0cmlidXRlKGkpO2Vsc2UgeXx8bS5pbmNsdWRlcyh2KSYmKGN8fHR5cGVvZiBvIT1gc3RyaW5nYCk/KGVbdl09byx2IGluIHMmJihzW3ZdPVMpKTp0eXBlb2YgbyE9YGZ1bmN0aW9uYCYmemEoZSx2LG8sYSl9fX1yZXR1cm4gdSYmSmUoITApLGR9ZnVuY3Rpb24gVmEoZSx0LG49W10scj1bXSxpPVtdLGEsbz0hMSxzPSExKXtvbihpLG4scixuPT57dmFyIHI9dm9pZCAwLGk9e30sYz1lLm5vZGVOYW1lPT09UGEsbD0hMTtpZihocigoKT0+e3ZhciB1PXQoLi4ubi5tYXAoUikpLGQ9QmEoZSxyLHUsYSxvLHMpO2wmJmMmJmB2YWx1ZWBpbiB1JiZDYShlLHUudmFsdWUpO2ZvcihsZXQgZSBvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGkpKXVbZV18fFAoaVtlXSk7Zm9yKGxldCB0IG9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModSkpe3ZhciBmPXVbdF07dC5kZXNjcmlwdGlvbj09PWBAYXR0YWNoYCYmKCFyfHxmIT09clt0XSkmJihpW3RdJiZQKGlbdF0pLGlbdF09Z3IoKCk9PmRhKGUsKCk9PmYpKSksZFt0XT1mfXI9ZH0pLGMpe3ZhciB1PWU7dXIoKCk9PntDYSh1LHIudmFsdWUsITApLHdhKHUpfSl9bD0hMH0pfWZ1bmN0aW9uIEhhKGUpe3JldHVybiBlLl9fYXR0cmlidXRlcz8/PXtba2FdOmUubm9kZU5hbWUuaW5jbHVkZXMoYC1gKSxbQWFdOmUubmFtZXNwYWNlVVJJPT09VmV9fXZhciBVYT1uZXcgTWFwO2Z1bmN0aW9uIFdhKGUpe3ZhciB0PWUuZ2V0QXR0cmlidXRlKGBpc2ApfHxlLm5vZGVOYW1lLG49VWEuZ2V0KHQpO2lmKG4pcmV0dXJuIG47VWEuc2V0KHQsbj1bXSk7Zm9yKHZhciByLGk9ZSxhPUVsZW1lbnQucHJvdG90eXBlO2EhPT1pOyl7Zm9yKHZhciBvIGluIHI9dihpKSxyKXJbb10uc2V0JiZuLnB1c2gobyk7aT1iKGkpfXJldHVybiBufXZhciBHYT1udWxsO2Z1bmN0aW9uIEthKCl7aWYoR2E9PT1udWxsKXt2YXIgZT1Lbihgc2VsZWN0YCk7ZS5pbm5lckhUTUw9eGkoYDxvcHRpb24+PHNwYW4+dDwvc3Bhbj48L29wdGlvbj5gKSxHYT1lLmZpcnN0Q2hpbGQ/LmZpcnN0Q2hpbGQ/Lm5vZGVUeXBlPT09MX1yZXR1cm4gR2F9ZnVuY3Rpb24gcWEoZSx0KXt2YXIgbj1DO0thKCl8fChKZSghMSksZS50ZXh0Q29udGVudD1gYCxlLmFwcGVuZChxbihgYCkpKTt0cnl7dCgpfWZpbmFsbHl7biYmKEM/WGUoZSk6KEplKCEwKSxUKGUpKSl9fWZ1bmN0aW9uIEphKGUsdCxuPXQpe3ZhciByPW5ldyBXZWFrU2V0O2VyKGUsYGlucHV0YCxhc3luYyBpPT57dmFyIGE9aT9lLmRlZmF1bHRWYWx1ZTplLnZhbHVlO2lmKGE9WGEoZSk/WmEoYSk6YSxuKGEpLGohPT1udWxsJiZyLmFkZChqKSxhd2FpdCBYcigpLGEhPT0oYT10KCkpKXt2YXIgbz1lLnNlbGVjdGlvblN0YXJ0LHM9ZS5zZWxlY3Rpb25FbmQsYz1lLnZhbHVlLmxlbmd0aDtpZihlLnZhbHVlPWE/P2BgLHMhPT1udWxsKXt2YXIgbD1lLnZhbHVlLmxlbmd0aDtvPT09cyYmcz09PWMmJmw+Yz8oZS5zZWxlY3Rpb25TdGFydD1sLGUuc2VsZWN0aW9uRW5kPWwpOihlLnNlbGVjdGlvblN0YXJ0PW8sZS5zZWxlY3Rpb25FbmQ9TWF0aC5taW4ocyxsKSl9fX0pLChDJiZlLmRlZmF1bHRWYWx1ZSE9PWUudmFsdWV8fCRyKHQpPT1udWxsJiZlLnZhbHVlKSYmKG4oWGEoZSk/WmEoZS52YWx1ZSk6ZS52YWx1ZSksaiE9PW51bGwmJnIuYWRkKGopKSxmcigoKT0+e3ZhciBuPXQoKTtpZihlPT09ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCl7dmFyIGk9cnQ/THQ6ajtpZihyLmhhcyhpKSlyZXR1cm59WGEoZSkmJm49PT1aYShlLnZhbHVlKXx8ZS50eXBlPT09YGRhdGVgJiYhbiYmIWUudmFsdWV8fG4hPT1lLnZhbHVlJiYoZS52YWx1ZT1uPz9gYCl9KX1mdW5jdGlvbiBZYShlLHQsbj10KXtlcihlLGBjaGFuZ2VgLHQ9PntuKHQ/ZS5kZWZhdWx0Q2hlY2tlZDplLmNoZWNrZWQpfSksKEMmJmUuZGVmYXVsdENoZWNrZWQhPT1lLmNoZWNrZWR8fCRyKHQpPT1udWxsKSYmbihlLmNoZWNrZWQpLGZyKCgpPT57ZS5jaGVja2VkPSEhdCgpfSl9ZnVuY3Rpb24gWGEoZSl7dmFyIHQ9ZS50eXBlO3JldHVybiB0PT09YG51bWJlcmB8fHQ9PT1gcmFuZ2VgfWZ1bmN0aW9uIFphKGUpe3JldHVybiBlPT09YGA/bnVsbDorZX1mdW5jdGlvbiBRYShlLHQpe3JldHVybiBlPT09dHx8ZT8uW1NlXT09PXR9ZnVuY3Rpb24gJGEoZT17fSx0LG4scil7dmFyIGk9RS5yLGE9STtyZXR1cm4gdXIoKCk9Pnt2YXIgbyxzO3JldHVybiBmcigoKT0+e289cyxzPXI/LigpfHxbXSwkcigoKT0+e2UhPT1uKC4uLnMpJiYodChlLC4uLnMpLG8mJlFhKG4oLi4ubyksZSkmJnQobnVsbCwuLi5vKSl9KX0pLCgpPT57bGV0IHI9YTtmb3IoO3IhPT1pJiZyLnBhcmVudCE9PW51bGwmJnIucGFyZW50LmYmMzM1NTQ0MzI7KXI9ci5wYXJlbnQ7bGV0IG89KCk9PntzJiZRYShuKC4uLnMpLGUpJiZ0KG51bGwsLi4ucyl9LGM9ci50ZWFyZG93bjtyLnRlYXJkb3duPSgpPT57bygpLGM/LigpfX19KSxlfWZ1bmN0aW9uIGVvKGU9ITEpe2xldCB0PUUsbj10LmwudTtpZighbilyZXR1cm47bGV0IHI9KCk9PmVpKHQucyk7aWYoZSl7bGV0IGU9MCxuPXt9LGk9dW4oKCk9PntsZXQgcj0hMSxpPXQucztmb3IobGV0IGUgaW4gaSlpW2VdIT09bltlXSYmKG5bZV09aVtlXSxyPSEwKTtyZXR1cm4gciYmZSsrLGV9KTtyPSgpPT5SKGkpfW4uYi5sZW5ndGgmJmNyKCgpPT57dG8odCxyKSxpZShuLmIpfSksb3IoKCk9PntsZXQgZT0kcigoKT0+bi5tLm1hcChyZSkpO3JldHVybigpPT57Zm9yKGxldCB0IG9mIGUpdHlwZW9mIHQ9PWBmdW5jdGlvbmAmJnQoKX19KSxuLmEubGVuZ3RoJiZvcigoKT0+e3RvKHQsciksaWUobi5hKX0pfWZ1bmN0aW9uIHRvKGUsdCl7aWYoZS5sLnMpZm9yKGxldCB0IG9mIGUubC5zKVIodCk7dCgpfXZhciBubz17Z2V0KGUsdCl7aWYoIWUuZXhjbHVkZS5pbmNsdWRlcyh0KSlyZXR1cm4gZS5wcm9wc1t0XX0sc2V0KGUsdCl7cmV0dXJuITF9LGdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLHQpe2lmKCFlLmV4Y2x1ZGUuaW5jbHVkZXModCkmJnQgaW4gZS5wcm9wcylyZXR1cm57ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsdmFsdWU6ZS5wcm9wc1t0XX19LGhhcyhlLHQpe3JldHVybiBlLmV4Y2x1ZGUuaW5jbHVkZXModCk/ITE6dCBpbiBlLnByb3BzfSxvd25LZXlzKGUpe3JldHVybiBSZWZsZWN0Lm93bktleXMoZS5wcm9wcykuZmlsdGVyKHQ9PiFlLmV4Y2x1ZGUuaW5jbHVkZXModCkpfX07ZnVuY3Rpb24gcm8oZSx0LG4pe3JldHVybiBuZXcgUHJveHkoe3Byb3BzOmUsZXhjbHVkZTp0fSxubyl9dmFyIGlvPXtnZXQoZSx0KXtsZXQgbj1lLnByb3BzLmxlbmd0aDtmb3IoO24tLTspe2xldCByPWUucHJvcHNbbl07aWYobmUocikmJihyPXIoKSksdHlwZW9mIHI9PWBvYmplY3RgJiZyJiZ0IGluIHIpcmV0dXJuIHJbdF19fSxzZXQoZSx0LG4pe2xldCByPWUucHJvcHMubGVuZ3RoO2Zvcig7ci0tOyl7bGV0IGk9ZS5wcm9wc1tyXTtuZShpKSYmKGk9aSgpKTtsZXQgYT1fKGksdCk7aWYoYSYmYS5zZXQpcmV0dXJuIGEuc2V0KG4pLCEwfXJldHVybiExfSxnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSx0KXtsZXQgbj1lLnByb3BzLmxlbmd0aDtmb3IoO24tLTspe2xldCByPWUucHJvcHNbbl07aWYobmUocikmJihyPXIoKSksdHlwZW9mIHI9PWBvYmplY3RgJiZyJiZ0IGluIHIpe2xldCBlPV8ocix0KTtyZXR1cm4gZSYmIWUuY29uZmlndXJhYmxlJiYoZS5jb25maWd1cmFibGU9ITApLGV9fX0saGFzKGUsdCl7aWYodD09PVNlfHx0PT09Q2UpcmV0dXJuITE7Zm9yKGxldCBuIG9mIGUucHJvcHMpaWYobmUobikmJihuPW4oKSksbiE9bnVsbCYmdCBpbiBuKXJldHVybiEwO3JldHVybiExfSxvd25LZXlzKGUpe2xldCB0PVtdO2ZvcihsZXQgbiBvZiBlLnByb3BzKWlmKG5lKG4pJiYobj1uKCkpLG4pe2ZvcihsZXQgZSBpbiBuKXQuaW5jbHVkZXMoZSl8fHQucHVzaChlKTtmb3IobGV0IGUgb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhuKSl0LmluY2x1ZGVzKGUpfHx0LnB1c2goZSl9cmV0dXJuIHR9fTtmdW5jdGlvbiBhbyguLi5lKXtyZXR1cm4gbmV3IFByb3h5KHtwcm9wczplfSxpbyl9ZnVuY3Rpb24gb28oZSx0LG4scil7dmFyIGk9IWl0fHwobiYyKSE9MCxhPShuJjgpIT0wLG89KG4mMTYpIT0wLHM9cixjPSEwLGw9KCk9PihjJiYoYz0hMSxzPW8/JHIocik6cikscyk7bGV0IHU7aWYoYSl7dmFyIGQ9U2UgaW4gZXx8Q2UgaW4gZTt1PV8oZSx0KT8uc2V0Pz8oZCYmdCBpbiBlP249PmVbdF09bjp2b2lkIDApfXZhciBmLHA9ITE7YT9bZixwXT1GdCgoKT0+ZVt0XSk6Zj1lW3RdLGY9PT12b2lkIDAmJnIhPT12b2lkIDAmJihmPWwoKSx1JiYoaSYmUGUodCksdShmKSkpO3ZhciBtPWk/KCk9Pnt2YXIgbj1lW3RdO3JldHVybiBuPT09dm9pZCAwP2woKTooYz0hMCxuKX06KCk9Pnt2YXIgbj1lW3RdO3JldHVybiBuIT09dm9pZCAwJiYocz12b2lkIDApLG49PT12b2lkIDA/czpufTtpZihpJiYhKG4mNCkpcmV0dXJuIG07aWYodSl7dmFyIGg9ZS4kJGxlZ2FjeTtyZXR1cm4oZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD4wPygoIWl8fCF0fHxofHxwKSYmdSh0P20oKTplKSxlKTptKCl9KX12YXIgZz0hMSx2PShuJjE/dW46cG4pKCgpPT4oZz0hMSxtKCkpKTthJiZSKHYpO3ZhciB5PUk7cmV0dXJuKGZ1bmN0aW9uKGUsdCl7aWYoYXJndW1lbnRzLmxlbmd0aD4wKXtsZXQgbj10P1Iodik6aSYmYT9qbihlKTplO3JldHVybiBUbih2LG4pLGc9ITAscyE9PXZvaWQgMCYmKHM9biksZX1yZXR1cm4ga3ImJmd8fHkuZiYxNjM4ND92LnY6Uih2KX0pfWZ1bmN0aW9uIHNvKGUpe0U9PT1udWxsJiZEZShgb25Nb3VudGApLGl0JiZFLmwhPT1udWxsP2xvKEUpLm0ucHVzaChlKTpvcigoKT0+e2xldCB0PSRyKGUpO2lmKHR5cGVvZiB0PT1gZnVuY3Rpb25gKXJldHVybiB0fSl9ZnVuY3Rpb24gY28oZSl7RT09PW51bGwmJkRlKGBvbkRlc3Ryb3lgKSxzbygoKT0+KCk9PiRyKGUpKX1mdW5jdGlvbiBsbyhlKXt2YXIgdD1lLmw7cmV0dXJuIHQudT8/PXthOltdLGI6W10sbTpbXX19dmFyIHo9KCgpPT57bGV0IGU9bmV3IE1hcDtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7b246KHQsbik9PntsZXQgcj1lLmdldCh0KTtyP3IucHVzaChuKTplLnNldCh0LFtuXSl9LG9mZjoodCxuKT0+e2xldCByPWUuZ2V0KHQpO3ImJmUuc2V0KHQsci5maWx0ZXIoZT0+ZSE9PW4pKX0sZW1pdDoodCxuKT0+e2xldCByPWUuZ2V0KHQpO3ImJnIuZm9yRWFjaChlPT5lKG4pKX19KX0pKCksdW89YGRhdGEtc21hcnRzdXBwLWlkYCxmbz0oKT0+d2luZG93LnRvcD8/d2luZG93LnBhcmVudCxCPSgpPT53aW5kb3cucGFyZW50LHBvPSgpPT5CKCkuZG9jdW1lbnQsbW89ZT0+ZSYmZS5vd25lckRvY3VtZW50fHxkb2N1bWVudCxobz0oe3ZpZDplfSk9PntsZXQgdD1CKCkuc21hcnRzdXBwfHx7fTt0LnZpZD1lLEIoKS5zbWFydHN1cHA9dH0sZ289YGRlYnVnYCxfbz1lPT57dHJ5e2xldCB0PUIoKS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShnbyk7aWYoIXQpcmV0dXJuITE7aWYodD09PWV8fHQ9PT1gKmApcmV0dXJuITA7bGV0IG49ZS5tYXRjaCgvXlx3KzovZyk7cmV0dXJuIG4/dD09PWAke25bMF19KmA6ITF9Y2F0Y2h7cmV0dXJuITF9fSx2bz0oKGUsdCk9PihuLC4uLnIpPT57X28oZSkmJmNvbnNvbGUuZGVidWcoYCVjJHtlfWAsYGNvbG9yOiAke3R9O2AsbiwuLi5yKX0pKGBzbWFydHN1cHA6d2lkZ2V0YCxgIzEyMzNkZmApLFY9KCgpPT57bGV0IGU9bnVsbCx0PVtdO3JldHVybiBPYmplY3QuZnJlZXplKHtpbml0Om49PntlPW4sdm8oYHdpZGdldCBvcHRpb25zYCxuKSx0LmZvckVhY2goZT0+ZShuKSl9LGdldE9wdGlvbnM6KCk9PntpZighZSl0aHJvdyBFcnJvcihgV2lkZ2V0IG9wdGlvbnMgbm90IGluaXRpYWxpemVkYCk7cmV0dXJuIGV9LGF3YWl0T3B0aW9uczphc3luYygpPT5lfHxuZXcgUHJvbWlzZShlPT57dC5wdXNoKGUpfSksdXBkYXRlT3B0aW9uczp0PT57ZT17Li4uZSwuLi50fX19KX0pKCkseW89ZT0+e2xldCB0PWUuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoYGJvZHlgKVswXS5nZXRBdHRyaWJ1dGUodW8pO2lmKCF0KXRocm93IEVycm9yKGBNaXNzaW5nIGNoYXQgSUQgYXR0cmlidXRlIG9uIGJvZHkgZWxlbWVudC5gKTtpZighZS5wYXJlbnQuJHNtYXJ0c3VwcCl0aHJvdyBFcnJvcihgU29tZXRoaW5nIHdlbnQgd3JvbmcuIFNlZW1zIGxpa2UgbG9hZGVyLmpzIGRpZCBub3QgaW5pdGlhbGl6ZSB3aWRnZXQuYCk7aWYoIWUucGFyZW50LiRzbWFydHN1cHAuZ2V0V2lkZ2V0KXRocm93IEVycm9yKGBHZXQgd2lkZ2V0IGZ1bmN0aW9uIHdhcyBub3Qgc3VwcGxpZWQgYnkgbG9hZGVyLmpzLmApO3JldHVybiBlLnBhcmVudC4kc21hcnRzdXBwLmdldFdpZGdldCh0KX07ZnVuY3Rpb24gYm8oZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIG49YXJndW1lbnRzW3RdO2Zvcih2YXIgciBpbiBuKWVbcl09bltyXX1yZXR1cm4gZX12YXIgeG89e3JlYWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMF09PT1gImAmJihlPWUuc2xpY2UoMSwtMSkpLGUucmVwbGFjZSgvKCVbXGRBLUZdezJ9KSsvZ2ksZGVjb2RlVVJJQ29tcG9uZW50KX0sd3JpdGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChlKS5yZXBsYWNlKC8lKDJbMzQ2QkZdfDNbQUMtRl18NDB8NVtCREVdfDYwfDdbQkNEXSkvZyxkZWNvZGVVUklDb21wb25lbnQpfX07ZnVuY3Rpb24gU28oZSx0KXtmdW5jdGlvbiBuKG4scixpKXtpZighKHR5cGVvZiBkb2N1bWVudD5gdWApKXtpPWJvKHt9LHQsaSksdHlwZW9mIGkuZXhwaXJlcz09YG51bWJlcmAmJihpLmV4cGlyZXM9bmV3IERhdGUoRGF0ZS5ub3coKStpLmV4cGlyZXMqODY0ZTUpKSxpLmV4cGlyZXMmJj1pLmV4cGlyZXMudG9VVENTdHJpbmcoKSxuPWVuY29kZVVSSUNvbXBvbmVudChuKS5yZXBsYWNlKC8lKDJbMzQ2Ql18NUV8NjB8N0MpL2csZGVjb2RlVVJJQ29tcG9uZW50KS5yZXBsYWNlKC9bKCldL2csZXNjYXBlKTt2YXIgYT1gYDtmb3IodmFyIG8gaW4gaSlpW29dJiYoYSs9YDsgYCtvLGlbb10hPT0hMCYmKGErPWA9YCtpW29dLnNwbGl0KGA7YClbMF0pKTtyZXR1cm4gZG9jdW1lbnQuY29va2llPW4rYD1gK2Uud3JpdGUocixuKSthfX1mdW5jdGlvbiByKHQpe2lmKCEodHlwZW9mIGRvY3VtZW50PmB1YHx8YXJndW1lbnRzLmxlbmd0aCYmIXQpKXtmb3IodmFyIG49ZG9jdW1lbnQuY29va2llP2RvY3VtZW50LmNvb2tpZS5zcGxpdChgOyBgKTpbXSxyPXt9LGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIGE9bltpXS5zcGxpdChgPWApLG89YS5zbGljZSgxKS5qb2luKGA9YCk7dHJ5e3ZhciBzPWRlY29kZVVSSUNvbXBvbmVudChhWzBdKTtpZihyW3NdPWUucmVhZChvLHMpLHQ9PT1zKWJyZWFrfWNhdGNoe319cmV0dXJuIHQ/clt0XTpyfX1yZXR1cm4gT2JqZWN0LmNyZWF0ZSh7c2V0Om4sZ2V0OnIscmVtb3ZlOmZ1bmN0aW9uKGUsdCl7bihlLGBgLGJvKHt9LHQse2V4cGlyZXM6LTF9KSl9LHdpdGhBdHRyaWJ1dGVzOmZ1bmN0aW9uKGUpe3JldHVybiBTbyh0aGlzLmNvbnZlcnRlcixibyh7fSx0aGlzLmF0dHJpYnV0ZXMsZSkpfSx3aXRoQ29udmVydGVyOmZ1bmN0aW9uKGUpe3JldHVybiBTbyhibyh7fSx0aGlzLmNvbnZlcnRlcixlKSx0aGlzLmF0dHJpYnV0ZXMpfX0se2F0dHJpYnV0ZXM6e3ZhbHVlOk9iamVjdC5mcmVlemUodCl9LGNvbnZlcnRlcjp7dmFsdWU6T2JqZWN0LmZyZWV6ZShlKX19KX12YXIgQ289U28oeG8se3BhdGg6YC9gfSksd289YHNzdXBwYCxUbz0oZT0xODIpPT4oe2V4cGlyZXM6ZSxkb21haW46Vi5nZXRPcHRpb25zKCkuY29va2llRG9tYWluLHBhdGg6Vi5nZXRPcHRpb25zKCkuY29va2llUGF0aHx8YC9gLHNhbWVTaXRlOmBzdHJpY3RgLHNlY3VyZTpCKCkubG9jYXRpb24ucHJvdG9jb2w9PT1gaHR0cHM6YH0pLEVvPWU9PmAke1YuZ2V0T3B0aW9ucygpLmNvb2tpZVByZWZpeHx8YGB9JHt3b30uJHtlfWAsRG89KHtuYW1lOmUsdmFsdWU6dCxleHBpcmF0aW9uSW5EYXlzOm49MTgyLG9wdGlvbnM6cn0pPT57Q28uc2V0KEVvKGUpLHQsey4uLlRvKG4pLC4uLnJ9KX0sT289ZT0+Q28uZ2V0KEVvKGUpKSxrbz1lPT57bGV0IHQ9RW8oZSk7aWYoQ28uZ2V0KHQpKXtsZXR7cGF0aDplLGRvbWFpbjpufT1UbygpO0NvLnJlbW92ZSh0LHtwYXRoOmUsZG9tYWluOm59KX19LEFvPWU9Pih0LC4uLm4pPT57ZShgW1NtYXJ0c3VwcF0gJHt0fWAsLi4ubil9LEg9QW8oY29uc29sZS53YXJuKSxqbz1Bbyhjb25zb2xlLmVycm9yKSxNbz0oKT0+e2xldHtrZXk6ZX09Vi5nZXRPcHRpb25zKCk7cmV0dXJuYCR7QigpLlNNQVJUU1VQUF9BVVRPQ1JFQVRFPT09ITE/YCR7eW8od2luZG93KS5pZH1fJHt3b31gOndvfV8ke2V9YH0sTm89ZT0+YCR7TW8oKX0ke2U/YF8ke2V9YDpgYH1gLFBvPWU9Pnt0cnl7bGV0IHQ9d2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKE5vKGUpKT8/YHt9YDtyZXR1cm4gSlNPTi5wYXJzZSh0KX1jYXRjaHtyZXR1cm57fX19LEZvPShlLHQpPT57dHJ5e3dpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShObyh0KSxKU09OLnN0cmluZ2lmeShlKSl9Y2F0Y2goZSl7SChgU2V0IHRvIGxvY2FsIHN0b3JhZ2UgZmFpbGVkYCxlKX19LElvPShlLHQpPT57Rm8oey4uLlBvKCksW2VdOlN0cmluZyh0KX0pfSxMbz1lPT57bGV0IHQ9UG8oKTt0W2VdJiYoZGVsZXRlIHRbZV0sRm8odCkpfSxSbz0oKT0+e3dpbmRvdy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShObygpKSx3aW5kb3cubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oTm8oYGNhcmRzYCkpfSxVPWZ1bmN0aW9uKGUpe3JldHVybiBlLkFuYWx5dGljc0NvbnNlbnQ9YGFuYWx5dGljc0NvbnNlbnRgLGUuQXV0aEZvcm09YGF1dGhGb3JtYCxlLklzTWVzc2VuZ2VyRnJhbWVFeHBhbmRlZD1gaXNNZXNzZW5nZXJGcmFtZUV4cGFuZGVkYCxlLklzTWVzc2VuZ2VyRnJhbWVPcGVuZWQ9YG9wZW5lZGAsZS5NYXJrZXRpbmdDb25zZW50PWBtYXJrZXRpbmdDb25zZW50YCxlLk1lc3NhZ2U9YG1lc3NhZ2VgLGUuUG9wdXBDbG9zZWRBdD1gcG9wdXBDbG9zZWRBdGAsZS5SYXRpbmdUZXh0PWByYXRpbmdUZXh0YCxlLlNvdW5kc0VuYWJsZWQ9YGVuYWJsZVNvdW5kc2AsZS5WaXNpdG9ySWQ9YHZpZGAsZS5WaXNpdHM9YHZpc2l0c2AsZS5UaWNrZXRGb3JtPWB0aWNrZXRGb3JtYCxlLlNlc3Npb25JZD1gc2Vzc2lvbklkYCxlfSh7fSksem89ZT0+e2xldCB0PWBgO3JldHVybiBlPT09VS5WaXNpdG9ySWQmJlYuZ2V0T3B0aW9ucygpLmNvb2tpZURvbWFpbiYmKHQ9T28oZSkpLHR8fFBvKClbZV19LEJvPSh7bmFtZTplLHZhbHVlOnR9KT0+e2U9PT1VLlZpc2l0b3JJZCYmVi5nZXRPcHRpb25zKCkuY29va2llRG9tYWluJiZEbyh7bmFtZTplLHZhbHVlOnR9KSxJbyhlLHQpfSxWbz1lPT57TG8oZSl9O3oub24oYGFuYWx5dGljc0NvbnNlbnRDaGFuZ2VkYCxlPT57Qm8oe25hbWU6VS5BbmFseXRpY3NDb25zZW50LHZhbHVlOlN0cmluZyhlKX0pfSksei5vbihgbWFya2V0aW5nQ29uc2VudENoYW5nZWRgLGU9PntCbyh7bmFtZTpVLk1hcmtldGluZ0NvbnNlbnQsdmFsdWU6U3RyaW5nKGUpfSl9KTt2YXIgSG89KCk9PiEhVi5nZXRPcHRpb25zKCkuY29uc2VudE1vZGVFbmFibGVkLFVvPSgpPT57bGV0IGU9em8oVS5BbmFseXRpY3NDb25zZW50KT09PWB0cnVlYDtyZXR1cm4hKEhvKCkmJiFlKX0sV289KCk9PntsZXQgZT16byhVLk1hcmtldGluZ0NvbnNlbnQpPT09YHRydWVgO3JldHVybiEoSG8oKSYmIWUpfSxHbz1gbW9kdWxlcHJlbG9hZGAsS289ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbmV3IFVSTChlLHQpLmhyZWZ9LHFvPXt9LEpvPWZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1Qcm9taXNlLnJlc29sdmUoKTtpZih0JiZ0Lmxlbmd0aD4wKXtsZXQgZT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShgbGlua2ApLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgbWV0YVtwcm9wZXJ0eT1jc3Atbm9uY2VdYCksYT1pPy5ub25jZXx8aT8uZ2V0QXR0cmlidXRlKGBub25jZWApO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIFByb21pc2UuYWxsKGUubWFwKGU9PlByb21pc2UucmVzb2x2ZShlKS50aGVuKGU9Pih7c3RhdHVzOmBmdWxmaWxsZWRgLHZhbHVlOmV9KSxlPT4oe3N0YXR1czpgcmVqZWN0ZWRgLHJlYXNvbjplfSkpKSl9cj1vKHQubWFwKHQ9PntpZih0PUtvKHQsbiksdCBpbiBxbylyZXR1cm47cW9bdF09ITA7bGV0IHI9dC5lbmRzV2l0aChgLmNzc2ApLGk9cj9gW3JlbD0ic3R5bGVzaGVldCJdYDpgYDtpZihuKWZvcihsZXQgbj1lLmxlbmd0aC0xO24+PTA7bi0tKXtsZXQgaT1lW25dO2lmKGkuaHJlZj09PXQmJighcnx8aS5yZWw9PT1gc3R5bGVzaGVldGApKXJldHVybn1lbHNlIGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYGxpbmtbaHJlZj0iJHt0fSJdJHtpfWApKXJldHVybjtsZXQgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGBsaW5rYCk7aWYoby5yZWw9cj9gc3R5bGVzaGVldGA6R28scnx8KG8uYXM9YHNjcmlwdGApLG8uY3Jvc3NPcmlnaW49YGAsby5ocmVmPXQsYSYmby5zZXRBdHRyaWJ1dGUoYG5vbmNlYCxhKSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG8pLHIpcmV0dXJuIG5ldyBQcm9taXNlKChlLG4pPT57by5hZGRFdmVudExpc3RlbmVyKGBsb2FkYCxlKSxvLmFkZEV2ZW50TGlzdGVuZXIoYGVycm9yYCwoKT0+bihFcnJvcihgVW5hYmxlIHRvIHByZWxvYWQgQ1NTIGZvciAke3R9YCkpKX0pfSkpfWZ1bmN0aW9uIGkoZSl7bGV0IHQ9bmV3IEV2ZW50KGB2aXRlOnByZWxvYWRFcnJvcmAse2NhbmNlbGFibGU6ITB9KTtpZih0LnBheWxvYWQ9ZSx3aW5kb3cuZGlzcGF0Y2hFdmVudCh0KSwhdC5kZWZhdWx0UHJldmVudGVkKXRocm93IGV9cmV0dXJuIHIudGhlbih0PT57Zm9yKGxldCBlIG9mIHR8fFtdKWUuc3RhdHVzPT09YHJlamVjdGVkYCYmaShlLnJlYXNvbik7cmV0dXJuIGUoKS5jYXRjaChpKX0pfSxZbz0oKT0+ISFWLmdldE9wdGlvbnMoKS5jcm9zc0RvbWFpbkVuYWJsZWQsWG89KCk9PlYuZ2V0T3B0aW9ucygpLmFsbG93ZWREb21haW5zLmxlbmd0aD4wLFpvPWFzeW5jKCk9Pnt0cnl7bGV0IGU9YXdhaXQgbmV3KGF3YWl0KEpvKCgpPT5pbXBvcnQoYC4vdGh1bWJtYXJrLmVzbS1DUDRDVTB5TC5qc2ApLFtdLGltcG9ydC5tZXRhLnVybCkpKS5UaHVtYm1hcmsoKS5nZXQoKTtyZXR1cm4gdm8oYFZpc2l0b3IgZmluZ2VycHJpbnQgY3JlYXRlZGAsZS50aHVtYm1hcmspLGUudGh1bWJtYXJrfWNhdGNoKGUpe0goYEZhaWxlZCB0byBnZW5lcmF0ZSBmaW5nZXJwcmludDpgLGUpfX0sUW89YXN5bmMoKT0+e2lmKCEoIVlvKCl8fCFYbygpKSlyZXR1cm4gWm8oKX0sJG89KCk9PnpvKFUuVmlzaXRvcklkKXx8bnVsbCxlcz1lPT5Cbyh7bmFtZTpVLlZpc2l0b3JJZCx2YWx1ZTpTdHJpbmcoZSl9KSx0cz0oKT0+e2lmKFdvKCkpcmV0dXJuIHpvKFUuVmlzaXRzKT9OdW1iZXIoem8oVS5WaXNpdHMpKTowfSxucz1lPT57V28oKSYmQm8oe25hbWU6VS5WaXNpdHMsdmFsdWU6U3RyaW5nKGUpfSl9O3oub24oYG1hcmtldGluZ0NvbnNlbnRDaGFuZ2VkYCxlPT57ZXx8Vm8oVS5WaXNpdHMpfSk7dmFyIHJzPShlLHQsbik9PntsZXR7c2V0OnIsc3Vic2NyaWJlOml9PU8odCx0PT57bGV0IHI9em8oZSk7ciYmdChuP24ocik6cil9KSxhPXQ9PntCbyh7bmFtZTplLHZhbHVlOlN0cmluZyh0KX0pfTtyZXR1cm57c2V0OmU9PnthKGUpLHIoZSl9LHN1YnNjcmliZTppfX0saXM9KCk9PmBvbnRvdWNoc3RhcnRgaW4gd2luZG93fHxuYXZpZ2F0b3IubXNNYXhUb3VjaFBvaW50cz4wLGFzPSgpPT5bYGlQYWQgU2ltdWxhdG9yYCxgaVBob25lIFNpbXVsYXRvcmAsYGlQb2QgU2ltdWxhdG9yYCxgaVBhZGAsYGlQaG9uZWAsYGlQb2RgXS5pbmNsdWRlcyhuYXZpZ2F0b3IucGxhdGZvcm0pfHxuYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKGBNYWNgKSYmYG9udG91Y2hlbmRgaW4gZG9jdW1lbnQsb3M9TyhudWxsKSxzcz1rKFtvcyxPKHt3aWR0aDpCKCkuaW5uZXJXaWR0aCxoZWlnaHQ6QigpLmlubmVySGVpZ2h0fSldLChbZSx0XSk9PntsZXR7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOm59PVYuZ2V0T3B0aW9ucygpO2lmKG4/LmVuZm9yY2VEZXNrdG9wTW9kZSlyZXR1cm4hMTtpZihlKXtsZXR7aXNNb2JpbGU6dCxpc1RhYmxldDpufT1lO2lmKG4pcmV0dXJuITE7aWYodClyZXR1cm4hMH1yZXR1cm4gdC53aWR0aDw0NTB8fHQuaGVpZ2h0PDUwMH0pLGNzPWsoW3NzXSwoW2VdKT0+e2xldHtmdWxsU2NyZWVuRW5hYmxlZDp0fT1WLmdldE9wdGlvbnMoKTtyZXR1cm4hIShlfHx0KX0pLGxzPWsoW29zXSwoW2VdKT0+ZT8hIWU/LmlzRGVza3RvcCYmIWFzKCk6IWlzKCkpLHVzPWsoW2xzLGNzXSwoW2UsdF0pPT5lJiYhdCk7ayhbb3NdLChbZV0pPT4hIWU/LmlzVGFibGV0KTt2YXIgZHM9KCgpPT57bGV0IGU9Tyh7fSkse3N1YnNjcmliZTp0LHVwZGF0ZTpufT1lO3JldHVybntzdWJzY3JpYmU6dCxhZGQ6ZT0+e24odD0+KHsuLi50LFtlLmlkXTplfSkpfSxyZW1vdmU6ZT0+e24odD0+e2xldHtbZV06biwuLi5yfT10O3JldHVybiByfSl9LGZpbmQ6dD0+QShlKVt0XXx8bnVsbH19KSgpLGZzPWsoW2RzXSwoW2VdKT0+T2JqZWN0LnZhbHVlcyhlKSkscHM9ZT0+KHQsbj0zZTMpPT57bGV0IHI9YGZtLSR7ZX0tJHt0fWAsaT1kcy5maW5kKHIpLGE9MTtpJiYoY2xlYXJUaW1lb3V0KGkudGltZW91dCksYT1pLnJlY3VycmVuY2UrMSk7bGV0IG87cmV0dXJuIG4+MCYmKG89d2luZG93LnNldFRpbWVvdXQoKCk9PnttcyhyKX0sbikpLGRzLmFkZCh7aWQ6cix0eXBlOmUsdGV4dDp0LHRpbWVvdXQ6byxyZWN1cnJlbmNlOmF9KSwoKT0+bXMocil9LG1zPWU9Pntkcy5yZW1vdmUoZSl9LGhzPXBzKGBzdWNjZXNzYCksZ3M9cHMoYGVycm9yYCksX3M9cHMoYHdhcm5pbmdgKSx2cz1mdW5jdGlvbihlKXtyZXR1cm4gZVtlLkdvb2Q9NV09YEdvb2RgLGVbZS5Ob3JtYWw9M109YE5vcm1hbGAsZVtlLkJhZD0xXT1gQmFkYCxlfSh7fSkseXM9e1t2cy5Hb29kXTp7dmFsdWU6dnMuR29vZCx0ZXh0OmBhZ2VudFJhdGluZy5nb29kLmZvcm1UZXh0YCxuYW1lOmBnb29kYH0sW3ZzLk5vcm1hbF06e3ZhbHVlOnZzLk5vcm1hbCx0ZXh0OmBhZ2VudFJhdGluZy5ub3JtYWwuZm9ybVRleHRgLG5hbWU6YG5ldXRyYWxgfSxbdnMuQmFkXTp7dmFsdWU6dnMuQmFkLHRleHQ6YGFnZW50UmF0aW5nLmJhZC5mb3JtVGV4dGAsbmFtZTpgYmFkYH19LGJzPU9iamVjdC52YWx1ZXMoeXMpLnNvcnQoKGUsdCk9PnQudmFsdWUtZS52YWx1ZSkseHM9YHJhdGVfZm9ybV9pZGAsU3M9e2lkOnhzLHR5cGU6YG1lc3NhZ2VgLHN1YlR5cGU6YHN5c3RlbWAsY2hhbm5lbDp7dHlwZTpgZGVmYXVsdGAsaWQ6bnVsbH0sY2hhdElkOmBgLHZpc2l0b3JJZDpgYCxncm91cElkOm51bGwsYWdlbnRJZDpudWxsLHRyaWdnZXI6bnVsbCxjcmVhdGVkQXQ6YGAsY29udGVudDp7dHlwZTpgcmF0ZV9mb3JtYCxkYXRhOnt9fSxhdHRhY2htZW50czpbXSxzdWJqZWN0Om51bGwsZm9yd2FyZGVkTWVzc2FnZUlkOm51bGwscGFydGljaXBhbnRzOltdLHJlcGx5VG9NZXNzYWdlSWQ6bnVsbCxkZWxldGVkQXQ6bnVsbCx3aWRnZXRPcHRpb25zOntkaXNhYmxlSW5wdXQ6ITEsZGlzYWJsZUF1dGhlbnRpY2F0aW9uOiExLGRpc2FibGVBdHRhY2htZW50czohMX19LENzPU8obnVsbCksd3M9cygoKGUsdCk9Pnt2YXIgbj0xZTMscj1uKjYwLGk9cio2MCxhPWkqMjQsbz1hKjcscz1hKjM2NS4yNTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0fHw9e307dmFyIG49dHlwZW9mIGU7aWYobj09PWBzdHJpbmdgJiZlLmxlbmd0aD4wKXJldHVybiBjKGUpO2lmKG49PT1gbnVtYmVyYCYmaXNGaW5pdGUoZSkpcmV0dXJuIHQubG9uZz91KGUpOmwoZSk7dGhyb3cgRXJyb3IoYHZhbCBpcyBub3QgYSBub24tZW1wdHkgc3RyaW5nIG9yIGEgdmFsaWQgbnVtYmVyLiB2YWw9YCtKU09OLnN0cmluZ2lmeShlKSl9O2Z1bmN0aW9uIGMoZSl7aWYoZT1TdHJpbmcoZSksIShlLmxlbmd0aD4xMDApKXt2YXIgdD0vXigtPyg/OlxkKyk/XC4/XGQrKSAqKG1pbGxpc2Vjb25kcz98bXNlY3M/fG1zfHNlY29uZHM/fHNlY3M/fHN8bWludXRlcz98bWlucz98bXxob3Vycz98aHJzP3xofGRheXM/fGR8d2Vla3M/fHd8eWVhcnM/fHlycz98eSk/JC9pLmV4ZWMoZSk7aWYodCl7dmFyIGM9cGFyc2VGbG9hdCh0WzFdKTtzd2l0Y2goKHRbMl18fGBtc2ApLnRvTG93ZXJDYXNlKCkpe2Nhc2VgeWVhcnNgOmNhc2VgeWVhcmA6Y2FzZWB5cnNgOmNhc2VgeXJgOmNhc2VgeWA6cmV0dXJuIGMqcztjYXNlYHdlZWtzYDpjYXNlYHdlZWtgOmNhc2Vgd2A6cmV0dXJuIGMqbztjYXNlYGRheXNgOmNhc2VgZGF5YDpjYXNlYGRgOnJldHVybiBjKmE7Y2FzZWBob3Vyc2A6Y2FzZWBob3VyYDpjYXNlYGhyc2A6Y2FzZWBocmA6Y2FzZWBoYDpyZXR1cm4gYyppO2Nhc2VgbWludXRlc2A6Y2FzZWBtaW51dGVgOmNhc2VgbWluc2A6Y2FzZWBtaW5gOmNhc2VgbWA6cmV0dXJuIGMqcjtjYXNlYHNlY29uZHNgOmNhc2Vgc2Vjb25kYDpjYXNlYHNlY3NgOmNhc2Vgc2VjYDpjYXNlYHNgOnJldHVybiBjKm47Y2FzZWBtaWxsaXNlY29uZHNgOmNhc2VgbWlsbGlzZWNvbmRgOmNhc2VgbXNlY3NgOmNhc2VgbXNlY2A6Y2FzZWBtc2A6cmV0dXJuIGM7ZGVmYXVsdDpyZXR1cm59fX19ZnVuY3Rpb24gbChlKXt2YXIgdD1NYXRoLmFicyhlKTtyZXR1cm4gdD49YT9NYXRoLnJvdW5kKGUvYSkrYGRgOnQ+PWk/TWF0aC5yb3VuZChlL2kpK2BoYDp0Pj1yP01hdGgucm91bmQoZS9yKStgbWA6dD49bj9NYXRoLnJvdW5kKGUvbikrYHNgOmUrYG1zYH1mdW5jdGlvbiB1KGUpe3ZhciB0PU1hdGguYWJzKGUpO3JldHVybiB0Pj1hP2QoZSx0LGEsYGRheWApOnQ+PWk/ZChlLHQsaSxgaG91cmApOnQ+PXI/ZChlLHQscixgbWludXRlYCk6dD49bj9kKGUsdCxuLGBzZWNvbmRgKTplK2AgbXNgfWZ1bmN0aW9uIGQoZSx0LG4scil7dmFyIGk9dD49bioxLjU7cmV0dXJuIE1hdGgucm91bmQoZS9uKStgIGArcisoaT9gc2A6YGApfX0pKSxUcz1zKCgoZSx0KT0+e2Z1bmN0aW9uIG4oZSl7bi5kZWJ1Zz1uLG4uZGVmYXVsdD1uLG4uY29lcmNlPWMsbi5kaXNhYmxlPW8sbi5lbmFibGU9aSxuLmVuYWJsZWQ9cyxuLmh1bWFuaXplPXdzKCksbi5kZXN0cm95PWwsT2JqZWN0LmtleXMoZSkuZm9yRWFjaCh0PT57blt0XT1lW3RdfSksbi5uYW1lcz1bXSxuLnNraXBzPVtdLG4uZm9ybWF0dGVycz17fTtmdW5jdGlvbiB0KGUpe2xldCB0PTA7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspdD0odDw8NSktdCtlLmNoYXJDb2RlQXQobiksdHw9MDtyZXR1cm4gbi5jb2xvcnNbTWF0aC5hYnModCklbi5jb2xvcnMubGVuZ3RoXX1uLnNlbGVjdENvbG9yPXQ7ZnVuY3Rpb24gbihlKXtsZXQgdCxpPW51bGwsYSxvO2Z1bmN0aW9uIHMoLi4uZSl7aWYoIXMuZW5hYmxlZClyZXR1cm47bGV0IHI9cyxpPU51bWJlcihuZXcgRGF0ZSk7ci5kaWZmPWktKHR8fGkpLHIucHJldj10LHIuY3Vycj1pLHQ9aSxlWzBdPW4uY29lcmNlKGVbMF0pLHR5cGVvZiBlWzBdIT1gc3RyaW5nYCYmZS51bnNoaWZ0KGAlT2ApO2xldCBhPTA7ZVswXT1lWzBdLnJlcGxhY2UoLyUoW2EtekEtWiVdKS9nLCh0LGkpPT57aWYodD09PWAlJWApcmV0dXJuYCVgO2ErKztsZXQgbz1uLmZvcm1hdHRlcnNbaV07aWYodHlwZW9mIG89PWBmdW5jdGlvbmApe2xldCBuPWVbYV07dD1vLmNhbGwocixuKSxlLnNwbGljZShhLDEpLGEtLX1yZXR1cm4gdH0pLG4uZm9ybWF0QXJncy5jYWxsKHIsZSksKHIubG9nfHxuLmxvZykuYXBwbHkocixlKX1yZXR1cm4gcy5uYW1lc3BhY2U9ZSxzLnVzZUNvbG9ycz1uLnVzZUNvbG9ycygpLHMuY29sb3I9bi5zZWxlY3RDb2xvcihlKSxzLmV4dGVuZD1yLHMuZGVzdHJveT1uLmRlc3Ryb3ksT2JqZWN0LmRlZmluZVByb3BlcnR5KHMsYGVuYWJsZWRgLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMSxnZXQ6KCk9Pmk9PT1udWxsPyhhIT09bi5uYW1lc3BhY2VzJiYoYT1uLm5hbWVzcGFjZXMsbz1uLmVuYWJsZWQoZSkpLG8pOmksc2V0OmU9PntpPWV9fSksdHlwZW9mIG4uaW5pdD09YGZ1bmN0aW9uYCYmbi5pbml0KHMpLHN9ZnVuY3Rpb24gcihlLHQpe2xldCByPW4odGhpcy5uYW1lc3BhY2UrKHQ9PT12b2lkIDA/YDpgOnQpK2UpO3JldHVybiByLmxvZz10aGlzLmxvZyxyfWZ1bmN0aW9uIGkoZSl7bi5zYXZlKGUpLG4ubmFtZXNwYWNlcz1lLG4ubmFtZXM9W10sbi5za2lwcz1bXTtsZXQgdD0odHlwZW9mIGU9PWBzdHJpbmdgP2U6YGApLnRyaW0oKS5yZXBsYWNlKC9ccysvZyxgLGApLnNwbGl0KGAsYCkuZmlsdGVyKEJvb2xlYW4pO2ZvcihsZXQgZSBvZiB0KWVbMF09PT1gLWA/bi5za2lwcy5wdXNoKGUuc2xpY2UoMSkpOm4ubmFtZXMucHVzaChlKX1mdW5jdGlvbiBhKGUsdCl7bGV0IG49MCxyPTAsaT0tMSxhPTA7Zm9yKDtuPGUubGVuZ3RoOylpZihyPHQubGVuZ3RoJiYodFtyXT09PWVbbl18fHRbcl09PT1gKmApKXRbcl09PT1gKmA/KGk9cixhPW4scisrKToobisrLHIrKyk7ZWxzZSBpZihpIT09LTEpcj1pKzEsYSsrLG49YTtlbHNlIHJldHVybiExO2Zvcig7cjx0Lmxlbmd0aCYmdFtyXT09PWAqYDspcisrO3JldHVybiByPT09dC5sZW5ndGh9ZnVuY3Rpb24gbygpe2xldCBlPVsuLi5uLm5hbWVzLC4uLm4uc2tpcHMubWFwKGU9PmAtYCtlKV0uam9pbihgLGApO3JldHVybiBuLmVuYWJsZShgYCksZX1mdW5jdGlvbiBzKGUpe2ZvcihsZXQgdCBvZiBuLnNraXBzKWlmKGEoZSx0KSlyZXR1cm4hMTtmb3IobGV0IHQgb2Ygbi5uYW1lcylpZihhKGUsdCkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIEVycm9yP2Uuc3RhY2t8fGUubWVzc2FnZTplfWZ1bmN0aW9uIGwoKXtjb25zb2xlLndhcm4oIkluc3RhbmNlIG1ldGhvZCBgZGVidWcuZGVzdHJveSgpYCBpcyBkZXByZWNhdGVkIGFuZCBubyBsb25nZXIgZG9lcyBhbnl0aGluZy4gSXQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gb2YgYGRlYnVnYC4iKX1yZXR1cm4gbi5lbmFibGUobi5sb2FkKCkpLG59dC5leHBvcnRzPW59KSksRXM9cygoKGUsdCk9PntlLmZvcm1hdEFyZ3M9cixlLnNhdmU9aSxlLmxvYWQ9YSxlLnVzZUNvbG9ycz1uLGUuc3RvcmFnZT1vKCksZS5kZXN0cm95PSgoKT0+e2xldCBlPSExO3JldHVybigpPT57ZXx8KGU9ITAsY29uc29sZS53YXJuKCJJbnN0YW5jZSBtZXRob2QgYGRlYnVnLmRlc3Ryb3koKWAgaXMgZGVwcmVjYXRlZCBhbmQgbm8gbG9uZ2VyIGRvZXMgYW55dGhpbmcuIEl0IHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIG9mIGBkZWJ1Z2AuIikpfX0pKCksZS5jb2xvcnM9YCMwMDAwQ0MuIzAwMDBGRi4jMDAzM0NDLiMwMDMzRkYuIzAwNjZDQy4jMDA2NkZGLiMwMDk5Q0MuIzAwOTlGRi4jMDBDQzAwLiMwMENDMzMuIzAwQ0M2Ni4jMDBDQzk5LiMwMENDQ0MuIzAwQ0NGRi4jMzMwMENDLiMzMzAwRkYuIzMzMzNDQy4jMzMzM0ZGLiMzMzY2Q0MuIzMzNjZGRi4jMzM5OUNDLiMzMzk5RkYuIzMzQ0MwMC4jMzNDQzMzLiMzM0NDNjYuIzMzQ0M5OS4jMzNDQ0NDLiMzM0NDRkYuIzY2MDBDQy4jNjYwMEZGLiM2NjMzQ0MuIzY2MzNGRi4jNjZDQzAwLiM2NkNDMzMuIzk5MDBDQy4jOTkwMEZGLiM5OTMzQ0MuIzk5MzNGRi4jOTlDQzAwLiM5OUNDMzMuI0NDMDAwMC4jQ0MwMDMzLiNDQzAwNjYuI0NDMDA5OS4jQ0MwMENDLiNDQzAwRkYuI0NDMzMwMC4jQ0MzMzMzLiNDQzMzNjYuI0NDMzM5OS4jQ0MzM0NDLiNDQzMzRkYuI0NDNjYwMC4jQ0M2NjMzLiNDQzk5MDAuI0NDOTkzMy4jQ0NDQzAwLiNDQ0NDMzMuI0ZGMDAwMC4jRkYwMDMzLiNGRjAwNjYuI0ZGMDA5OS4jRkYwMENDLiNGRjAwRkYuI0ZGMzMwMC4jRkYzMzMzLiNGRjMzNjYuI0ZGMzM5OS4jRkYzM0NDLiNGRjMzRkYuI0ZGNjYwMC4jRkY2NjMzLiNGRjk5MDAuI0ZGOTkzMy4jRkZDQzAwLiNGRkNDMzNgLnNwbGl0KGAuYCk7ZnVuY3Rpb24gbigpe2lmKHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cucHJvY2VzcyYmKHdpbmRvdy5wcm9jZXNzLnR5cGU9PT1gcmVuZGVyZXJgfHx3aW5kb3cucHJvY2Vzcy5fX253anMpKXJldHVybiEwO2lmKHR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhlZGdlfHRyaWRlbnQpXC8oXGQrKS8pKXJldHVybiExO2xldCBlO3JldHVybiB0eXBlb2YgZG9jdW1lbnQ8YHVgJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZSYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLldlYmtpdEFwcGVhcmFuY2V8fHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cuY29uc29sZSYmKHdpbmRvdy5jb25zb2xlLmZpcmVidWd8fHdpbmRvdy5jb25zb2xlLmV4Y2VwdGlvbiYmd2luZG93LmNvbnNvbGUudGFibGUpfHx0eXBlb2YgbmF2aWdhdG9yPGB1YCYmbmF2aWdhdG9yLnVzZXJBZ2VudCYmKGU9bmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLm1hdGNoKC9maXJlZm94XC8oXGQrKS8pKSYmcGFyc2VJbnQoZVsxXSwxMCk+PTMxfHx0eXBlb2YgbmF2aWdhdG9yPGB1YCYmbmF2aWdhdG9yLnVzZXJBZ2VudCYmbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLm1hdGNoKC9hcHBsZXdlYmtpdFwvKFxkKykvKX1mdW5jdGlvbiByKGUpe2lmKGVbMF09KHRoaXMudXNlQ29sb3JzP2AlY2A6YGApK3RoaXMubmFtZXNwYWNlKyh0aGlzLnVzZUNvbG9ycz9gICVjYDpgIGApK2VbMF0rKHRoaXMudXNlQ29sb3JzP2AlYyBgOmAgYCkrYCtgK3QuZXhwb3J0cy5odW1hbml6ZSh0aGlzLmRpZmYpLCF0aGlzLnVzZUNvbG9ycylyZXR1cm47bGV0IG49YGNvbG9yOiBgK3RoaXMuY29sb3I7ZS5zcGxpY2UoMSwwLG4sYGNvbG9yOiBpbmhlcml0YCk7bGV0IHI9MCxpPTA7ZVswXS5yZXBsYWNlKC8lW2EtekEtWiVdL2csZT0+e2UhPT1gJSVgJiYocisrLGU9PT1gJWNgJiYoaT1yKSl9KSxlLnNwbGljZShpLDAsbil9ZS5sb2c9Y29uc29sZS5kZWJ1Z3x8Y29uc29sZS5sb2d8fCgoKT0+e30pO2Z1bmN0aW9uIGkodCl7dHJ5e3Q/ZS5zdG9yYWdlLnNldEl0ZW0oYGRlYnVnYCx0KTplLnN0b3JhZ2UucmVtb3ZlSXRlbShgZGVidWdgKX1jYXRjaHt9fWZ1bmN0aW9uIGEoKXtsZXQgdDt0cnl7dD1lLnN0b3JhZ2UuZ2V0SXRlbShgZGVidWdgKXx8ZS5zdG9yYWdlLmdldEl0ZW0oYERFQlVHYCl9Y2F0Y2h7fXJldHVybiF0JiZ0eXBlb2YgcHJvY2VzczxgdWAmJmBlbnZgaW4gcHJvY2VzcyYmKHQ9e30uREVCVUcpLHR9ZnVuY3Rpb24gbygpe3RyeXtyZXR1cm4gbG9jYWxTdG9yYWdlfWNhdGNoe319dC5leHBvcnRzPVRzKCkoZSk7dmFye2Zvcm1hdHRlcnM6c309dC5leHBvcnRzO3Muaj1mdW5jdGlvbihlKXt0cnl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfWNhdGNoKGUpe3JldHVybmBbVW5leHBlY3RlZEpTT05QYXJzZUVycm9yXTogYCtlLm1lc3NhZ2V9fX0pKSxEcz1zKChlPT57dmFyIHQ9ZSYmZS5fX2V4dGVuZHN8fChmdW5jdGlvbigpe3ZhciBlPWZ1bmN0aW9uKHQsbil7cmV0dXJuIGU9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKGUsdCl7ZS5fX3Byb3RvX189dH18fGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuIGluIHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsbikmJihlW25dPXRbbl0pfSxlKHQsbil9O3JldHVybiBmdW5jdGlvbih0LG4pe2lmKHR5cGVvZiBuIT1gZnVuY3Rpb25gJiZuIT09bnVsbCl0aHJvdyBUeXBlRXJyb3IoYENsYXNzIGV4dGVuZHMgdmFsdWUgYCtTdHJpbmcobikrYCBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsYCk7ZSh0LG4pO2Z1bmN0aW9uIHIoKXt0aGlzLmNvbnN0cnVjdG9yPXR9dC5wcm90b3R5cGU9bj09PW51bGw/T2JqZWN0LmNyZWF0ZShuKTooci5wcm90b3R5cGU9bi5wcm90b3R5cGUsbmV3IHIpfX0pKCk7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLGUuY3JlYXRlRW1pdHRlcj1lLmNyZWF0ZUNhbGxiYWNrPWUuYm91bmQ9ZS5jcmVhdGVTb2NrZXRFcnJvcj1lLlNvY2tldEVycm9yPWUuZGVidWc9dm9pZCAwLGUuZGVidWc9bigpO2Z1bmN0aW9uIG4oKXt0cnl7cmV0dXJuIEVzKCkoYHNtYXJ0c3VwcDpjbGllbnRgKX1jYXRjaHtyZXR1cm4gZnVuY3Rpb24oKXt9fX12YXIgcj1mdW5jdGlvbihlKXt0KG4sZSk7ZnVuY3Rpb24gbih0LHIpe3ZhciBpPWUuY2FsbCh0aGlzLHQpfHx0aGlzO3JldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2YoaSxuLnByb3RvdHlwZSksaS5uYW1lPWkuY29uc3RydWN0b3IubmFtZSxpLmNvZGU9ci5jb2RlLGkudHlwZT1yLnR5cGUsaS5ldmVudD1yLmV2ZW50LHImJnIuc3RhY2smJihpLnN0YWNrPWAke2kuc3RhY2t9CkNhdXNlZCBCeTogJHtyLnN0YWNrfWApLGl9cmV0dXJuIG59KEVycm9yKTtlLlNvY2tldEVycm9yPXI7ZnVuY3Rpb24gaShlKXtyZXR1cm4gbmV3IHIoZS5tZXNzYWdlLGUpfWUuY3JlYXRlU29ja2V0RXJyb3I9aTtmdW5jdGlvbiBhKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49Wy4uLmFyZ3VtZW50c107ZVt0XS5hcHBseShlLG4pfX1lLmJvdW5kPWE7ZnVuY3Rpb24gbyhlLHQpe3JldHVybiBmdW5jdGlvbihuLHIpe24/dChpKG4pKTplKHIpfX1lLmNyZWF0ZUNhbGxiYWNrPW87ZnVuY3Rpb24gcyhlLHQpe3JldHVybiBmdW5jdGlvbihuKXtlLmVtaXQodCxuKX19ZS5jcmVhdGVFbWl0dGVyPXN9KSksT3M9cygoKGUsdCk9Pnt2YXIgbj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LHI9YH5gO2Z1bmN0aW9uIGkoKXt9T2JqZWN0LmNyZWF0ZSYmKGkucHJvdG90eXBlPU9iamVjdC5jcmVhdGUobnVsbCksbmV3IGkoKS5fX3Byb3RvX198fChyPSExKSk7ZnVuY3Rpb24gYShlLHQsbil7dGhpcy5mbj1lLHRoaXMuY29udGV4dD10LHRoaXMub25jZT1ufHwhMX1mdW5jdGlvbiBvKGUsdCxuLGksbyl7aWYodHlwZW9mIG4hPWBmdW5jdGlvbmApdGhyb3cgVHlwZUVycm9yKGBUaGUgbGlzdGVuZXIgbXVzdCBiZSBhIGZ1bmN0aW9uYCk7dmFyIHM9bmV3IGEobixpfHxlLG8pLGM9cj9yK3Q6dDtyZXR1cm4gZS5fZXZlbnRzW2NdP2UuX2V2ZW50c1tjXS5mbj9lLl9ldmVudHNbY109W2UuX2V2ZW50c1tjXSxzXTplLl9ldmVudHNbY10ucHVzaChzKTooZS5fZXZlbnRzW2NdPXMsZS5fZXZlbnRzQ291bnQrKyksZX1mdW5jdGlvbiBzKGUsdCl7LS1lLl9ldmVudHNDb3VudD09PTA/ZS5fZXZlbnRzPW5ldyBpOmRlbGV0ZSBlLl9ldmVudHNbdF19ZnVuY3Rpb24gYygpe3RoaXMuX2V2ZW50cz1uZXcgaSx0aGlzLl9ldmVudHNDb3VudD0wfWMucHJvdG90eXBlLmV2ZW50TmFtZXM9ZnVuY3Rpb24oKXt2YXIgZT1bXSx0LGk7aWYodGhpcy5fZXZlbnRzQ291bnQ9PT0wKXJldHVybiBlO2ZvcihpIGluIHQ9dGhpcy5fZXZlbnRzKW4uY2FsbCh0LGkpJiZlLnB1c2gocj9pLnNsaWNlKDEpOmkpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzP2UuY29uY2F0KE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpOmV9LGMucHJvdG90eXBlLmxpc3RlbmVycz1mdW5jdGlvbihlKXt2YXIgdD1yP3IrZTplLG49dGhpcy5fZXZlbnRzW3RdO2lmKCFuKXJldHVybltdO2lmKG4uZm4pcmV0dXJuW24uZm5dO2Zvcih2YXIgaT0wLGE9bi5sZW5ndGgsbz1BcnJheShhKTtpPGE7aSsrKW9baV09bltpXS5mbjtyZXR1cm4gb30sYy5wcm90b3R5cGUubGlzdGVuZXJDb3VudD1mdW5jdGlvbihlKXt2YXIgdD1yP3IrZTplLG49dGhpcy5fZXZlbnRzW3RdO3JldHVybiBuP24uZm4/MTpuLmxlbmd0aDowfSxjLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKGUsdCxuLGksYSxvKXt2YXIgcz1yP3IrZTplO2lmKCF0aGlzLl9ldmVudHNbc10pcmV0dXJuITE7dmFyIGM9dGhpcy5fZXZlbnRzW3NdLGw9YXJndW1lbnRzLmxlbmd0aCx1LGQ7aWYoYy5mbil7c3dpdGNoKGMub25jZSYmdGhpcy5yZW1vdmVMaXN0ZW5lcihlLGMuZm4sdm9pZCAwLCEwKSxsKXtjYXNlIDE6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQpLCEwO2Nhc2UgMjpyZXR1cm4gYy5mbi5jYWxsKGMuY29udGV4dCx0KSwhMDtjYXNlIDM6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQsdCxuKSwhMDtjYXNlIDQ6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQsdCxuLGkpLCEwO2Nhc2UgNTpyZXR1cm4gYy5mbi5jYWxsKGMuY29udGV4dCx0LG4saSxhKSwhMDtjYXNlIDY6cmV0dXJuIGMuZm4uY2FsbChjLmNvbnRleHQsdCxuLGksYSxvKSwhMH1mb3IoZD0xLHU9QXJyYXkobC0xKTtkPGw7ZCsrKXVbZC0xXT1hcmd1bWVudHNbZF07Yy5mbi5hcHBseShjLmNvbnRleHQsdSl9ZWxzZXt2YXIgZj1jLmxlbmd0aCxwO2ZvcihkPTA7ZDxmO2QrKylzd2l0Y2goY1tkXS5vbmNlJiZ0aGlzLnJlbW92ZUxpc3RlbmVyKGUsY1tkXS5mbix2b2lkIDAsITApLGwpe2Nhc2UgMTpjW2RdLmZuLmNhbGwoY1tkXS5jb250ZXh0KTticmVhaztjYXNlIDI6Y1tkXS5mbi5jYWxsKGNbZF0uY29udGV4dCx0KTticmVhaztjYXNlIDM6Y1tkXS5mbi5jYWxsKGNbZF0uY29udGV4dCx0LG4pO2JyZWFrO2Nhc2UgNDpjW2RdLmZuLmNhbGwoY1tkXS5jb250ZXh0LHQsbixpKTticmVhaztkZWZhdWx0OmlmKCF1KWZvcihwPTEsdT1BcnJheShsLTEpO3A8bDtwKyspdVtwLTFdPWFyZ3VtZW50c1twXTtjW2RdLmZuLmFwcGx5KGNbZF0uY29udGV4dCx1KX19cmV0dXJuITB9LGMucHJvdG90eXBlLm9uPWZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbyh0aGlzLGUsdCxuLCExKX0sYy5wcm90b3R5cGUub25jZT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIG8odGhpcyxlLHQsbiwhMCl9LGMucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGUsdCxuLGkpe3ZhciBhPXI/citlOmU7aWYoIXRoaXMuX2V2ZW50c1thXSlyZXR1cm4gdGhpcztpZighdClyZXR1cm4gcyh0aGlzLGEpLHRoaXM7dmFyIG89dGhpcy5fZXZlbnRzW2FdO2lmKG8uZm4pby5mbj09PXQmJighaXx8by5vbmNlKSYmKCFufHxvLmNvbnRleHQ9PT1uKSYmcyh0aGlzLGEpO2Vsc2V7Zm9yKHZhciBjPTAsbD1bXSx1PW8ubGVuZ3RoO2M8dTtjKyspKG9bY10uZm4hPT10fHxpJiYhb1tjXS5vbmNlfHxuJiZvW2NdLmNvbnRleHQhPT1uKSYmbC5wdXNoKG9bY10pO2wubGVuZ3RoP3RoaXMuX2V2ZW50c1thXT1sLmxlbmd0aD09PTE/bFswXTpsOnModGhpcyxhKX1yZXR1cm4gdGhpc30sYy5wcm90b3R5cGUucmVtb3ZlQWxsTGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3ZhciB0O3JldHVybiBlPyh0PXI/citlOmUsdGhpcy5fZXZlbnRzW3RdJiZzKHRoaXMsdCkpOih0aGlzLl9ldmVudHM9bmV3IGksdGhpcy5fZXZlbnRzQ291bnQ9MCksdGhpc30sYy5wcm90b3R5cGUub2ZmPWMucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyLGMucHJvdG90eXBlLmFkZExpc3RlbmVyPWMucHJvdG90eXBlLm9uLGMucHJlZml4ZWQ9cixjLkV2ZW50RW1pdHRlcj1jLHQhPT12b2lkIDAmJih0LmV4cG9ydHM9Yyl9KSksa3M9cygoKGUsdCk9Pnt2YXIgbj0vXig/Oig/IVteOkBdKzpbXjpAXC9dKkApKGh0dHB8aHR0cHN8d3N8d3NzKTpcL1wvKT8oKD86KChbXjpAXSopKD86OihbXjpAXSopKT8pP0ApPygoPzpbYS1mMC05XXswLDR9Oil7Miw3fVthLWYwLTldezAsNH18W146XC8/I10qKSg/OjooXGQqKSk/KSgoKFwvKD86W14/I10oPyFbXj8jXC9dKlwuW14/I1wvLl0rKD86Wz8jXXwkKSkpKlwvPyk/KFtePyNcL10qKSkoPzpcPyhbXiNdKikpPyg/OiMoLiopKT8pLyxyPVtgc291cmNlYCxgcHJvdG9jb2xgLGBhdXRob3JpdHlgLGB1c2VySW5mb2AsYHVzZXJgLGBwYXNzd29yZGAsYGhvc3RgLGBwb3J0YCxgcmVsYXRpdmVgLGBwYXRoYCxgZGlyZWN0b3J5YCxgZmlsZWAsYHF1ZXJ5YCxgYW5jaG9yYF07dC5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PWUsaT1lLmluZGV4T2YoYFtgKSxhPWUuaW5kZXhPZihgXWApO2khPS0xJiZhIT0tMSYmKGU9ZS5zdWJzdHJpbmcoMCxpKStlLnN1YnN0cmluZyhpLGEpLnJlcGxhY2UoLzovZyxgO2ApK2Uuc3Vic3RyaW5nKGEsZS5sZW5ndGgpKTtmb3IodmFyIG89bi5leGVjKGV8fGBgKSxzPXt9LGM9MTQ7Yy0tOylzW3JbY11dPW9bY118fGBgO3JldHVybiBpIT0tMSYmYSE9LTEmJihzLnNvdXJjZT10LHMuaG9zdD1zLmhvc3Quc3Vic3RyaW5nKDEscy5ob3N0Lmxlbmd0aC0xKS5yZXBsYWNlKC87L2csYDpgKSxzLmF1dGhvcml0eT1zLmF1dGhvcml0eS5yZXBsYWNlKGBbYCxgYCkucmVwbGFjZShgXWAsYGApLnJlcGxhY2UoLzsvZyxgOmApLHMuaXB2NnVyaT0hMCksc319KSksQXM9cygoKGUsdCk9PntmdW5jdGlvbiBuKGUpe24uZGVidWc9bixuLmRlZmF1bHQ9bixuLmNvZXJjZT1sLG4uZGlzYWJsZT1vLG4uZW5hYmxlPWEsbi5lbmFibGVkPXMsbi5odW1hbml6ZT13cygpLE9iamVjdC5rZXlzKGUpLmZvckVhY2godD0+e25bdF09ZVt0XX0pLG4uaW5zdGFuY2VzPVtdLG4ubmFtZXM9W10sbi5za2lwcz1bXSxuLmZvcm1hdHRlcnM9e307ZnVuY3Rpb24gdChlKXtsZXQgdD0wO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKXQ9KHQ8PDUpLXQrZS5jaGFyQ29kZUF0KG4pLHR8PTA7cmV0dXJuIG4uY29sb3JzW01hdGguYWJzKHQpJW4uY29sb3JzLmxlbmd0aF19bi5zZWxlY3RDb2xvcj10O2Z1bmN0aW9uIG4oZSl7bGV0IGE7ZnVuY3Rpb24gbyguLi5lKXtpZighby5lbmFibGVkKXJldHVybjtsZXQgdD1vLHI9TnVtYmVyKG5ldyBEYXRlKTt0LmRpZmY9ci0oYXx8ciksdC5wcmV2PWEsdC5jdXJyPXIsYT1yLGVbMF09bi5jb2VyY2UoZVswXSksdHlwZW9mIGVbMF0hPWBzdHJpbmdgJiZlLnVuc2hpZnQoYCVPYCk7bGV0IGk9MDtlWzBdPWVbMF0ucmVwbGFjZSgvJShbYS16QS1aJV0pL2csKHIsYSk9PntpZihyPT09YCUlYClyZXR1cm4gcjtpKys7bGV0IG89bi5mb3JtYXR0ZXJzW2FdO2lmKHR5cGVvZiBvPT1gZnVuY3Rpb25gKXtsZXQgbj1lW2ldO3I9by5jYWxsKHQsbiksZS5zcGxpY2UoaSwxKSxpLS19cmV0dXJuIHJ9KSxuLmZvcm1hdEFyZ3MuY2FsbCh0LGUpLCh0LmxvZ3x8bi5sb2cpLmFwcGx5KHQsZSl9cmV0dXJuIG8ubmFtZXNwYWNlPWUsby5lbmFibGVkPW4uZW5hYmxlZChlKSxvLnVzZUNvbG9ycz1uLnVzZUNvbG9ycygpLG8uY29sb3I9dChlKSxvLmRlc3Ryb3k9cixvLmV4dGVuZD1pLHR5cGVvZiBuLmluaXQ9PWBmdW5jdGlvbmAmJm4uaW5pdChvKSxuLmluc3RhbmNlcy5wdXNoKG8pLG99ZnVuY3Rpb24gcigpe2xldCBlPW4uaW5zdGFuY2VzLmluZGV4T2YodGhpcyk7cmV0dXJuIGU9PT0tMT8hMToobi5pbnN0YW5jZXMuc3BsaWNlKGUsMSksITApfWZ1bmN0aW9uIGkoZSx0KXtsZXQgcj1uKHRoaXMubmFtZXNwYWNlKyh0PT09dm9pZCAwP2A6YDp0KStlKTtyZXR1cm4gci5sb2c9dGhpcy5sb2cscn1mdW5jdGlvbiBhKGUpe24uc2F2ZShlKSxuLm5hbWVzPVtdLG4uc2tpcHM9W107bGV0IHQscj0odHlwZW9mIGU9PWBzdHJpbmdgP2U6YGApLnNwbGl0KC9bXHMsXSsvKSxpPXIubGVuZ3RoO2Zvcih0PTA7dDxpO3QrKylyW3RdJiYoZT1yW3RdLnJlcGxhY2UoL1wqL2csYC4qP2ApLGVbMF09PT1gLWA/bi5za2lwcy5wdXNoKFJlZ0V4cChgXmArZS5zdWJzdHIoMSkrYCRgKSk6bi5uYW1lcy5wdXNoKFJlZ0V4cChgXmArZStgJGApKSk7Zm9yKHQ9MDt0PG4uaW5zdGFuY2VzLmxlbmd0aDt0Kyspe2xldCBlPW4uaW5zdGFuY2VzW3RdO2UuZW5hYmxlZD1uLmVuYWJsZWQoZS5uYW1lc3BhY2UpfX1mdW5jdGlvbiBvKCl7bGV0IGU9Wy4uLm4ubmFtZXMubWFwKGMpLC4uLm4uc2tpcHMubWFwKGMpLm1hcChlPT5gLWArZSldLmpvaW4oYCxgKTtyZXR1cm4gbi5lbmFibGUoYGApLGV9ZnVuY3Rpb24gcyhlKXtpZihlW2UubGVuZ3RoLTFdPT09YCpgKXJldHVybiEwO2xldCB0LHI7Zm9yKHQ9MCxyPW4uc2tpcHMubGVuZ3RoO3Q8cjt0KyspaWYobi5za2lwc1t0XS50ZXN0KGUpKXJldHVybiExO2Zvcih0PTAscj1uLm5hbWVzLmxlbmd0aDt0PHI7dCsrKWlmKG4ubmFtZXNbdF0udGVzdChlKSlyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBjKGUpe3JldHVybiBlLnRvU3RyaW5nKCkuc3Vic3RyaW5nKDIsZS50b1N0cmluZygpLmxlbmd0aC0yKS5yZXBsYWNlKC9cLlwqXD8kLyxgKmApfWZ1bmN0aW9uIGwoZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBFcnJvcj9lLnN0YWNrfHxlLm1lc3NhZ2U6ZX1yZXR1cm4gbi5lbmFibGUobi5sb2FkKCkpLG59dC5leHBvcnRzPW59KSksanM9cygoKGUsdCk9PntlLmxvZz1pLGUuZm9ybWF0QXJncz1yLGUuc2F2ZT1hLGUubG9hZD1vLGUudXNlQ29sb3JzPW4sZS5zdG9yYWdlPXMoKSxlLmNvbG9ycz1gIzAwMDBDQy4jMDAwMEZGLiMwMDMzQ0MuIzAwMzNGRi4jMDA2NkNDLiMwMDY2RkYuIzAwOTlDQy4jMDA5OUZGLiMwMENDMDAuIzAwQ0MzMy4jMDBDQzY2LiMwMENDOTkuIzAwQ0NDQy4jMDBDQ0ZGLiMzMzAwQ0MuIzMzMDBGRi4jMzMzM0NDLiMzMzMzRkYuIzMzNjZDQy4jMzM2NkZGLiMzMzk5Q0MuIzMzOTlGRi4jMzNDQzAwLiMzM0NDMzMuIzMzQ0M2Ni4jMzNDQzk5LiMzM0NDQ0MuIzMzQ0NGRi4jNjYwMENDLiM2NjAwRkYuIzY2MzNDQy4jNjYzM0ZGLiM2NkNDMDAuIzY2Q0MzMy4jOTkwMENDLiM5OTAwRkYuIzk5MzNDQy4jOTkzM0ZGLiM5OUNDMDAuIzk5Q0MzMy4jQ0MwMDAwLiNDQzAwMzMuI0NDMDA2Ni4jQ0MwMDk5LiNDQzAwQ0MuI0NDMDBGRi4jQ0MzMzAwLiNDQzMzMzMuI0NDMzM2Ni4jQ0MzMzk5LiNDQzMzQ0MuI0NDMzNGRi4jQ0M2NjAwLiNDQzY2MzMuI0NDOTkwMC4jQ0M5OTMzLiNDQ0NDMDAuI0NDQ0MzMy4jRkYwMDAwLiNGRjAwMzMuI0ZGMDA2Ni4jRkYwMDk5LiNGRjAwQ0MuI0ZGMDBGRi4jRkYzMzAwLiNGRjMzMzMuI0ZGMzM2Ni4jRkYzMzk5LiNGRjMzQ0MuI0ZGMzNGRi4jRkY2NjAwLiNGRjY2MzMuI0ZGOTkwMC4jRkY5OTMzLiNGRkNDMDAuI0ZGQ0MzM2Auc3BsaXQoYC5gKTtmdW5jdGlvbiBuKCl7cmV0dXJuIHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cucHJvY2VzcyYmKHdpbmRvdy5wcm9jZXNzLnR5cGU9PT1gcmVuZGVyZXJgfHx3aW5kb3cucHJvY2Vzcy5fX253anMpPyEwOnR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhlZGdlfHRyaWRlbnQpXC8oXGQrKS8pPyExOnR5cGVvZiBkb2N1bWVudDxgdWAmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuV2Via2l0QXBwZWFyYW5jZXx8dHlwZW9mIHdpbmRvdzxgdWAmJndpbmRvdy5jb25zb2xlJiYod2luZG93LmNvbnNvbGUuZmlyZWJ1Z3x8d2luZG93LmNvbnNvbGUuZXhjZXB0aW9uJiZ3aW5kb3cuY29uc29sZS50YWJsZSl8fHR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goL2ZpcmVmb3hcLyhcZCspLykmJnBhcnNlSW50KFJlZ0V4cC4kMSwxMCk+PTMxfHx0eXBlb2YgbmF2aWdhdG9yPGB1YCYmbmF2aWdhdG9yLnVzZXJBZ2VudCYmbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLm1hdGNoKC9hcHBsZXdlYmtpdFwvKFxkKykvKX1mdW5jdGlvbiByKGUpe2lmKGVbMF09KHRoaXMudXNlQ29sb3JzP2AlY2A6YGApK3RoaXMubmFtZXNwYWNlKyh0aGlzLnVzZUNvbG9ycz9gICVjYDpgIGApK2VbMF0rKHRoaXMudXNlQ29sb3JzP2AlYyBgOmAgYCkrYCtgK3QuZXhwb3J0cy5odW1hbml6ZSh0aGlzLmRpZmYpLCF0aGlzLnVzZUNvbG9ycylyZXR1cm47bGV0IG49YGNvbG9yOiBgK3RoaXMuY29sb3I7ZS5zcGxpY2UoMSwwLG4sYGNvbG9yOiBpbmhlcml0YCk7bGV0IHI9MCxpPTA7ZVswXS5yZXBsYWNlKC8lW2EtekEtWiVdL2csZT0+e2UhPT1gJSVgJiYocisrLGU9PT1gJWNgJiYoaT1yKSl9KSxlLnNwbGljZShpLDAsbil9ZnVuY3Rpb24gaSguLi5lKXtyZXR1cm4gdHlwZW9mIGNvbnNvbGU9PWBvYmplY3RgJiZjb25zb2xlLmxvZyYmY29uc29sZS5sb2coLi4uZSl9ZnVuY3Rpb24gYSh0KXt0cnl7dD9lLnN0b3JhZ2Uuc2V0SXRlbShgZGVidWdgLHQpOmUuc3RvcmFnZS5yZW1vdmVJdGVtKGBkZWJ1Z2ApfWNhdGNoe319ZnVuY3Rpb24gbygpe2xldCB0O3RyeXt0PWUuc3RvcmFnZS5nZXRJdGVtKGBkZWJ1Z2ApfWNhdGNoe31yZXR1cm4hdCYmdHlwZW9mIHByb2Nlc3M8YHVgJiZgZW52YGluIHByb2Nlc3MmJih0PXt9LkRFQlVHKSx0fWZ1bmN0aW9uIHMoKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZX1jYXRjaHt9fXQuZXhwb3J0cz1BcygpKGUpO3Zhcntmb3JtYXR0ZXJzOmN9PXQuZXhwb3J0cztjLmo9ZnVuY3Rpb24oZSl7dHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeShlKX1jYXRjaChlKXtyZXR1cm5gW1VuZXhwZWN0ZWRKU09OUGFyc2VFcnJvcl06IGArZS5tZXNzYWdlfX19KSksTXM9cygoKGUsdCk9Pnt2YXIgbj1rcygpLHI9anMoKShgc29ja2V0LmlvLWNsaWVudDp1cmxgKTt0LmV4cG9ydHM9aTtmdW5jdGlvbiBpKGUsdCl7dmFyIGk9ZTt0fHw9dHlwZW9mIGxvY2F0aW9uPGB1YCYmbG9jYXRpb24sZT8/PXQucHJvdG9jb2wrYC8vYCt0Lmhvc3QsdHlwZW9mIGU9PWBzdHJpbmdgJiYoZS5jaGFyQXQoMCk9PT1gL2AmJihlPWUuY2hhckF0KDEpPT09YC9gP3QucHJvdG9jb2wrZTp0Lmhvc3QrZSksL14oaHR0cHM/fHdzcz8pOlwvXC8vLnRlc3QoZSl8fChyKGBwcm90b2NvbC1sZXNzIHVybCAlc2AsZSksZT10PT09dm9pZCAwP2BodHRwczovL2ArZTp0LnByb3RvY29sK2AvL2ArZSkscihgcGFyc2UgJXNgLGUpLGk9bihlKSksaS5wb3J0fHwoL14oaHR0cHx3cykkLy50ZXN0KGkucHJvdG9jb2wpP2kucG9ydD1gODBgOi9eKGh0dHB8d3MpcyQvLnRlc3QoaS5wcm90b2NvbCkmJihpLnBvcnQ9YDQ0M2ApKSxpLnBhdGg9aS5wYXRofHxgL2A7dmFyIGE9aS5ob3N0LmluZGV4T2YoYDpgKT09PS0xP2kuaG9zdDpgW2AraS5ob3N0K2BdYDtyZXR1cm4gaS5pZD1pLnByb3RvY29sK2A6Ly9gK2ErYDpgK2kucG9ydCxpLmhyZWY9aS5wcm90b2NvbCtgOi8vYCthKyh0JiZ0LnBvcnQ9PT1pLnBvcnQ/YGA6YDpgK2kucG9ydCksaX19KSksTnM9cygoKGUsdCk9Pnt2YXIgbj0xZTMscj1uKjYwLGk9cio2MCxhPWkqMjQsbz1hKjM2NS4yNTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0fHw9e307dmFyIG49dHlwZW9mIGU7aWYobj09PWBzdHJpbmdgJiZlLmxlbmd0aD4wKXJldHVybiBzKGUpO2lmKG49PT1gbnVtYmVyYCYmaXNOYU4oZSk9PT0hMSlyZXR1cm4gdC5sb25nP2woZSk6YyhlKTt0aHJvdyBFcnJvcihgdmFsIGlzIG5vdCBhIG5vbi1lbXB0eSBzdHJpbmcgb3IgYSB2YWxpZCBudW1iZXIuIHZhbD1gK0pTT04uc3RyaW5naWZ5KGUpKX07ZnVuY3Rpb24gcyhlKXtpZihlPVN0cmluZyhlKSwhKGUubGVuZ3RoPjEwMCkpe3ZhciB0PS9eKCg/OlxkKyk/XC4/XGQrKSAqKG1pbGxpc2Vjb25kcz98bXNlY3M/fG1zfHNlY29uZHM/fHNlY3M/fHN8bWludXRlcz98bWlucz98bXxob3Vycz98aHJzP3xofGRheXM/fGR8eWVhcnM/fHlycz98eSk/JC9pLmV4ZWMoZSk7aWYodCl7dmFyIHM9cGFyc2VGbG9hdCh0WzFdKTtzd2l0Y2goKHRbMl18fGBtc2ApLnRvTG93ZXJDYXNlKCkpe2Nhc2VgeWVhcnNgOmNhc2VgeWVhcmA6Y2FzZWB5cnNgOmNhc2VgeXJgOmNhc2VgeWA6cmV0dXJuIHMqbztjYXNlYGRheXNgOmNhc2VgZGF5YDpjYXNlYGRgOnJldHVybiBzKmE7Y2FzZWBob3Vyc2A6Y2FzZWBob3VyYDpjYXNlYGhyc2A6Y2FzZWBocmA6Y2FzZWBoYDpyZXR1cm4gcyppO2Nhc2VgbWludXRlc2A6Y2FzZWBtaW51dGVgOmNhc2VgbWluc2A6Y2FzZWBtaW5gOmNhc2VgbWA6cmV0dXJuIHMqcjtjYXNlYHNlY29uZHNgOmNhc2Vgc2Vjb25kYDpjYXNlYHNlY3NgOmNhc2Vgc2VjYDpjYXNlYHNgOnJldHVybiBzKm47Y2FzZWBtaWxsaXNlY29uZHNgOmNhc2VgbWlsbGlzZWNvbmRgOmNhc2VgbXNlY3NgOmNhc2VgbXNlY2A6Y2FzZWBtc2A6cmV0dXJuIHM7ZGVmYXVsdDpyZXR1cm59fX19ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZT49YT9NYXRoLnJvdW5kKGUvYSkrYGRgOmU+PWk/TWF0aC5yb3VuZChlL2kpK2BoYDplPj1yP01hdGgucm91bmQoZS9yKStgbWA6ZT49bj9NYXRoLnJvdW5kKGUvbikrYHNgOmUrYG1zYH1mdW5jdGlvbiBsKGUpe3JldHVybiB1KGUsYSxgZGF5YCl8fHUoZSxpLGBob3VyYCl8fHUoZSxyLGBtaW51dGVgKXx8dShlLG4sYHNlY29uZGApfHxlK2AgbXNgfWZ1bmN0aW9uIHUoZSx0LG4pe2lmKCEoZTx0KSlyZXR1cm4gZTx0KjEuNT9NYXRoLmZsb29yKGUvdCkrYCBgK246TWF0aC5jZWlsKGUvdCkrYCBgK24rYHNgfX0pKSxQcz1zKCgoZSx0KT0+e2U9dC5leHBvcnRzPXIuZGVidWc9ci5kZWZhdWx0PXIsZS5jb2VyY2U9YyxlLmRpc2FibGU9byxlLmVuYWJsZT1hLGUuZW5hYmxlZD1zLGUuaHVtYW5pemU9TnMoKSxlLmluc3RhbmNlcz1bXSxlLm5hbWVzPVtdLGUuc2tpcHM9W10sZS5mb3JtYXR0ZXJzPXt9O2Z1bmN0aW9uIG4odCl7dmFyIG49MCxyO2ZvcihyIGluIHQpbj0objw8NSktbit0LmNoYXJDb2RlQXQociksbnw9MDtyZXR1cm4gZS5jb2xvcnNbTWF0aC5hYnMobiklZS5jb2xvcnMubGVuZ3RoXX1mdW5jdGlvbiByKHQpe3ZhciByO2Z1bmN0aW9uIGEoKXtpZihhLmVuYWJsZWQpe3ZhciB0PWEsbj0rbmV3IERhdGU7dC5kaWZmPW4tKHJ8fG4pLHQucHJldj1yLHQuY3Vycj1uLHI9bjtmb3IodmFyIGk9QXJyYXkoYXJndW1lbnRzLmxlbmd0aCksbz0wO288aS5sZW5ndGg7bysrKWlbb109YXJndW1lbnRzW29dO2lbMF09ZS5jb2VyY2UoaVswXSksdHlwZW9mIGlbMF0hPWBzdHJpbmdgJiZpLnVuc2hpZnQoYCVPYCk7dmFyIHM9MDtpWzBdPWlbMF0ucmVwbGFjZSgvJShbYS16QS1aJV0pL2csZnVuY3Rpb24obixyKXtpZihuPT09YCUlYClyZXR1cm4gbjtzKys7dmFyIGE9ZS5mb3JtYXR0ZXJzW3JdO2lmKHR5cGVvZiBhPT1gZnVuY3Rpb25gKXt2YXIgbz1pW3NdO249YS5jYWxsKHQsbyksaS5zcGxpY2UocywxKSxzLS19cmV0dXJuIG59KSxlLmZvcm1hdEFyZ3MuY2FsbCh0LGkpLChhLmxvZ3x8ZS5sb2d8fGNvbnNvbGUubG9nLmJpbmQoY29uc29sZSkpLmFwcGx5KHQsaSl9fXJldHVybiBhLm5hbWVzcGFjZT10LGEuZW5hYmxlZD1lLmVuYWJsZWQodCksYS51c2VDb2xvcnM9ZS51c2VDb2xvcnMoKSxhLmNvbG9yPW4odCksYS5kZXN0cm95PWksdHlwZW9mIGUuaW5pdD09YGZ1bmN0aW9uYCYmZS5pbml0KGEpLGUuaW5zdGFuY2VzLnB1c2goYSksYX1mdW5jdGlvbiBpKCl7dmFyIHQ9ZS5pbnN0YW5jZXMuaW5kZXhPZih0aGlzKTtyZXR1cm4gdD09PS0xPyExOihlLmluc3RhbmNlcy5zcGxpY2UodCwxKSwhMCl9ZnVuY3Rpb24gYSh0KXtlLnNhdmUodCksZS5uYW1lcz1bXSxlLnNraXBzPVtdO3ZhciBuLHI9KHR5cGVvZiB0PT1gc3RyaW5nYD90OmBgKS5zcGxpdCgvW1xzLF0rLyksaT1yLmxlbmd0aDtmb3Iobj0wO248aTtuKyspcltuXSYmKHQ9cltuXS5yZXBsYWNlKC9cKi9nLGAuKj9gKSx0WzBdPT09YC1gP2Uuc2tpcHMucHVzaChSZWdFeHAoYF5gK3Quc3Vic3RyKDEpK2AkYCkpOmUubmFtZXMucHVzaChSZWdFeHAoYF5gK3QrYCRgKSkpO2ZvcihuPTA7bjxlLmluc3RhbmNlcy5sZW5ndGg7bisrKXt2YXIgYT1lLmluc3RhbmNlc1tuXTthLmVuYWJsZWQ9ZS5lbmFibGVkKGEubmFtZXNwYWNlKX19ZnVuY3Rpb24gbygpe2UuZW5hYmxlKGBgKX1mdW5jdGlvbiBzKHQpe2lmKHRbdC5sZW5ndGgtMV09PT1gKmApcmV0dXJuITA7dmFyIG4scjtmb3Iobj0wLHI9ZS5za2lwcy5sZW5ndGg7bjxyO24rKylpZihlLnNraXBzW25dLnRlc3QodCkpcmV0dXJuITE7Zm9yKG49MCxyPWUubmFtZXMubGVuZ3RoO248cjtuKyspaWYoZS5uYW1lc1tuXS50ZXN0KHQpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBFcnJvcj9lLnN0YWNrfHxlLm1lc3NhZ2U6ZX19KSksRnM9cygoKGUsdCk9PntlPXQuZXhwb3J0cz1QcygpLGUubG9nPWksZS5mb3JtYXRBcmdzPXIsZS5zYXZlPWEsZS5sb2FkPW8sZS51c2VDb2xvcnM9bixlLnN0b3JhZ2U9dHlwZW9mIGNocm9tZTxgdWAmJmNocm9tZS5zdG9yYWdlIT09dm9pZCAwP2Nocm9tZS5zdG9yYWdlLmxvY2FsOnMoKSxlLmNvbG9ycz1gIzAwMDBDQy4jMDAwMEZGLiMwMDMzQ0MuIzAwMzNGRi4jMDA2NkNDLiMwMDY2RkYuIzAwOTlDQy4jMDA5OUZGLiMwMENDMDAuIzAwQ0MzMy4jMDBDQzY2LiMwMENDOTkuIzAwQ0NDQy4jMDBDQ0ZGLiMzMzAwQ0MuIzMzMDBGRi4jMzMzM0NDLiMzMzMzRkYuIzMzNjZDQy4jMzM2NkZGLiMzMzk5Q0MuIzMzOTlGRi4jMzNDQzAwLiMzM0NDMzMuIzMzQ0M2Ni4jMzNDQzk5LiMzM0NDQ0MuIzMzQ0NGRi4jNjYwMENDLiM2NjAwRkYuIzY2MzNDQy4jNjYzM0ZGLiM2NkNDMDAuIzY2Q0MzMy4jOTkwMENDLiM5OTAwRkYuIzk5MzNDQy4jOTkzM0ZGLiM5OUNDMDAuIzk5Q0MzMy4jQ0MwMDAwLiNDQzAwMzMuI0NDMDA2Ni4jQ0MwMDk5LiNDQzAwQ0MuI0NDMDBGRi4jQ0MzMzAwLiNDQzMzMzMuI0NDMzM2Ni4jQ0MzMzk5LiNDQzMzQ0MuI0NDMzNGRi4jQ0M2NjAwLiNDQzY2MzMuI0NDOTkwMC4jQ0M5OTMzLiNDQ0NDMDAuI0NDQ0MzMy4jRkYwMDAwLiNGRjAwMzMuI0ZGMDA2Ni4jRkYwMDk5LiNGRjAwQ0MuI0ZGMDBGRi4jRkYzMzAwLiNGRjMzMzMuI0ZGMzM2Ni4jRkYzMzk5LiNGRjMzQ0MuI0ZGMzNGRi4jRkY2NjAwLiNGRjY2MzMuI0ZGOTkwMC4jRkY5OTMzLiNGRkNDMDAuI0ZGQ0MzM2Auc3BsaXQoYC5gKTtmdW5jdGlvbiBuKCl7cmV0dXJuIHR5cGVvZiB3aW5kb3c8YHVgJiZ3aW5kb3cucHJvY2VzcyYmd2luZG93LnByb2Nlc3MudHlwZT09PWByZW5kZXJlcmA/ITA6dHlwZW9mIG5hdmlnYXRvcjxgdWAmJm5hdmlnYXRvci51c2VyQWdlbnQmJm5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5tYXRjaCgvKGVkZ2V8dHJpZGVudClcLyhcZCspLyk/ITE6dHlwZW9mIGRvY3VtZW50PGB1YCYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5XZWJraXRBcHBlYXJhbmNlfHx0eXBlb2Ygd2luZG93PGB1YCYmd2luZG93LmNvbnNvbGUmJih3aW5kb3cuY29uc29sZS5maXJlYnVnfHx3aW5kb3cuY29uc29sZS5leGNlcHRpb24mJndpbmRvdy5jb25zb2xlLnRhYmxlKXx8dHlwZW9mIG5hdmlnYXRvcjxgdWAmJm5hdmlnYXRvci51c2VyQWdlbnQmJm5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5tYXRjaCgvZmlyZWZveFwvKFxkKykvKSYmcGFyc2VJbnQoUmVnRXhwLiQxLDEwKT49MzF8fHR5cGVvZiBuYXZpZ2F0b3I8YHVgJiZuYXZpZ2F0b3IudXNlckFnZW50JiZuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkubWF0Y2goL2FwcGxld2Via2l0XC8oXGQrKS8pfWUuZm9ybWF0dGVycy5qPWZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2goZSl7cmV0dXJuYFtVbmV4cGVjdGVkSlNPTlBhcnNlRXJyb3JdOiBgK2UubWVzc2FnZX19O2Z1bmN0aW9uIHIodCl7dmFyIG49dGhpcy51c2VDb2xvcnM7aWYodFswXT0obj9gJWNgOmBgKSt0aGlzLm5hbWVzcGFjZSsobj9gICVjYDpgIGApK3RbMF0rKG4/YCVjIGA6YCBgKStgK2ArZS5odW1hbml6ZSh0aGlzLmRpZmYpLG4pe3ZhciByPWBjb2xvcjogYCt0aGlzLmNvbG9yO3Quc3BsaWNlKDEsMCxyLGBjb2xvcjogaW5oZXJpdGApO3ZhciBpPTAsYT0wO3RbMF0ucmVwbGFjZSgvJVthLXpBLVolXS9nLGZ1bmN0aW9uKGUpe2UhPT1gJSVgJiYoaSsrLGU9PT1gJWNgJiYoYT1pKSl9KSx0LnNwbGljZShhLDAscil9fWZ1bmN0aW9uIGkoKXtyZXR1cm4gdHlwZW9mIGNvbnNvbGU9PWBvYmplY3RgJiZjb25zb2xlLmxvZyYmRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5LmNhbGwoY29uc29sZS5sb2csY29uc29sZSxhcmd1bWVudHMpfWZ1bmN0aW9uIGEodCl7dHJ5e3Q9PW51bGw/ZS5zdG9yYWdlLnJlbW92ZUl0ZW0oYGRlYnVnYCk6ZS5zdG9yYWdlLmRlYnVnPXR9Y2F0Y2h7fX1mdW5jdGlvbiBvKCl7dmFyIHQ7dHJ5e3Q9ZS5zdG9yYWdlLmRlYnVnfWNhdGNoe31yZXR1cm4hdCYmdHlwZW9mIHByb2Nlc3M8YHVgJiZgZW52YGluIHByb2Nlc3MmJih0PXt9LkRFQlVHKSx0fWUuZW5hYmxlKG8oKSk7ZnVuY3Rpb24gcygpe3RyeXtyZXR1cm4gd2luZG93LmxvY2FsU3RvcmFnZX1jYXRjaHt9fX0pKSxJcz1zKCgoZSx0KT0+e3QhPT12b2lkIDAmJih0LmV4cG9ydHM9bik7ZnVuY3Rpb24gbihlKXtpZihlKXJldHVybiByKGUpfWZ1bmN0aW9uIHIoZSl7Zm9yKHZhciB0IGluIG4ucHJvdG90eXBlKWVbdF09bi5wcm90b3R5cGVbdF07cmV0dXJuIGV9bi5wcm90b3R5cGUub249bi5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9jYWxsYmFja3M9dGhpcy5fY2FsbGJhY2tzfHx7fSwodGhpcy5fY2FsbGJhY2tzW2AkYCtlXT10aGlzLl9jYWxsYmFja3NbYCRgK2VdfHxbXSkucHVzaCh0KSx0aGlzfSxuLnByb3RvdHlwZS5vbmNlPWZ1bmN0aW9uKGUsdCl7ZnVuY3Rpb24gbigpe3RoaXMub2ZmKGUsbiksdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIG4uZm49dCx0aGlzLm9uKGUsbiksdGhpc30sbi5wcm90b3R5cGUub2ZmPW4ucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPW4ucHJvdG90eXBlLnJlbW92ZUFsbExpc3RlbmVycz1uLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7aWYodGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sYXJndW1lbnRzLmxlbmd0aD09MClyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXt9LHRoaXM7dmFyIG49dGhpcy5fY2FsbGJhY2tzW2AkYCtlXTtpZighbilyZXR1cm4gdGhpcztpZihhcmd1bWVudHMubGVuZ3RoPT0xKXJldHVybiBkZWxldGUgdGhpcy5fY2FsbGJhY2tzW2AkYCtlXSx0aGlzO2Zvcih2YXIgcixpPTA7aTxuLmxlbmd0aDtpKyspaWYocj1uW2ldLHI9PT10fHxyLmZuPT09dCl7bi5zcGxpY2UoaSwxKTticmVha31yZXR1cm4gbi5sZW5ndGg9PT0wJiZkZWxldGUgdGhpcy5fY2FsbGJhY2tzW2AkYCtlXSx0aGlzfSxuLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKGUpe3RoaXMuX2NhbGxiYWNrcz10aGlzLl9jYWxsYmFja3N8fHt9O2Zvcih2YXIgdD1BcnJheShhcmd1bWVudHMubGVuZ3RoLTEpLG49dGhpcy5fY2FsbGJhY2tzW2AkYCtlXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2lmKG4pe249bi5zbGljZSgwKTtmb3IodmFyIHI9MCxpPW4ubGVuZ3RoO3I8aTsrK3IpbltyXS5hcHBseSh0aGlzLHQpfXJldHVybiB0aGlzfSxuLnByb3RvdHlwZS5saXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuX2NhbGxiYWNrcz10aGlzLl9jYWxsYmFja3N8fHt9LHRoaXMuX2NhbGxiYWNrc1tgJGArZV18fFtdfSxuLnByb3RvdHlwZS5oYXNMaXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuISF0aGlzLmxpc3RlbmVycyhlKS5sZW5ndGh9fSkpLExzPXMoKChlLHQpPT57dmFyIG49e30udG9TdHJpbmc7dC5leHBvcnRzPUFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKGUpe3JldHVybiBuLmNhbGwoZSk9PWBbb2JqZWN0IEFycmF5XWB9fSkpLFJzPXMoKChlLHQpPT57dC5leHBvcnRzPWE7dmFyIG49dHlwZW9mIEJ1ZmZlcj09YGZ1bmN0aW9uYCYmdHlwZW9mIEJ1ZmZlci5pc0J1ZmZlcj09YGZ1bmN0aW9uYCxyPXR5cGVvZiBBcnJheUJ1ZmZlcj09YGZ1bmN0aW9uYCxpPWZ1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgQXJyYXlCdWZmZXIuaXNWaWV3PT1gZnVuY3Rpb25gP0FycmF5QnVmZmVyLmlzVmlldyhlKTplLmJ1ZmZlciBpbnN0YW5jZW9mIEFycmF5QnVmZmVyfTtmdW5jdGlvbiBhKGUpe3JldHVybiBuJiZCdWZmZXIuaXNCdWZmZXIoZSl8fHImJihlIGluc3RhbmNlb2YgQXJyYXlCdWZmZXJ8fGkoZSkpfX0pKSx6cz1zKChlPT57dmFyIHQ9THMoKSxuPVJzKCkscj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGk9dHlwZW9mIEJsb2I9PWBmdW5jdGlvbmB8fHR5cGVvZiBCbG9iPGB1YCYmci5jYWxsKEJsb2IpPT09YFtvYmplY3QgQmxvYkNvbnN0cnVjdG9yXWAsYT10eXBlb2YgRmlsZT09YGZ1bmN0aW9uYHx8dHlwZW9mIEZpbGU8YHVgJiZyLmNhbGwoRmlsZSk9PT1gW29iamVjdCBGaWxlQ29uc3RydWN0b3JdYDtlLmRlY29uc3RydWN0UGFja2V0PWZ1bmN0aW9uKGUpe3ZhciB0PVtdLG49ZS5kYXRhLHI9ZTtyZXR1cm4gci5kYXRhPW8obix0KSxyLmF0dGFjaG1lbnRzPXQubGVuZ3RoLHtwYWNrZXQ6cixidWZmZXJzOnR9fTtmdW5jdGlvbiBvKGUscil7aWYoIWUpcmV0dXJuIGU7aWYobihlKSl7dmFyIGk9e19wbGFjZWhvbGRlcjohMCxudW06ci5sZW5ndGh9O3JldHVybiByLnB1c2goZSksaX1lbHNlIGlmKHQoZSkpe2Zvcih2YXIgYT1BcnJheShlLmxlbmd0aCkscz0wO3M8ZS5sZW5ndGg7cysrKWFbc109byhlW3NdLHIpO3JldHVybiBhfWVsc2UgaWYodHlwZW9mIGU9PWBvYmplY3RgJiYhKGUgaW5zdGFuY2VvZiBEYXRlKSl7dmFyIGE9e307Zm9yKHZhciBjIGluIGUpYVtjXT1vKGVbY10scik7cmV0dXJuIGF9cmV0dXJuIGV9ZS5yZWNvbnN0cnVjdFBhY2tldD1mdW5jdGlvbihlLHQpe3JldHVybiBlLmRhdGE9cyhlLmRhdGEsdCksZS5hdHRhY2htZW50cz12b2lkIDAsZX07ZnVuY3Rpb24gcyhlLG4pe2lmKCFlKXJldHVybiBlO2lmKGUmJmUuX3BsYWNlaG9sZGVyPT09ITApe2lmKHR5cGVvZiBlLm51bT09YG51bWJlcmAmJmUubnVtPj0wJiZlLm51bTxuLmxlbmd0aClyZXR1cm4gbltlLm51bV07dGhyb3cgRXJyb3IoYGlsbGVnYWwgYXR0YWNobWVudHNgKX1lbHNlIGlmKHQoZSkpZm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspZVtyXT1zKGVbcl0sbik7ZWxzZSBpZih0eXBlb2YgZT09YG9iamVjdGApZm9yKHZhciBpIGluIGUpZVtpXT1zKGVbaV0sbik7cmV0dXJuIGV9ZS5yZW1vdmVCbG9icz1mdW5jdGlvbihlLHIpe2Z1bmN0aW9uIG8oZSxsLHUpe2lmKCFlKXJldHVybiBlO2lmKGkmJmUgaW5zdGFuY2VvZiBCbG9ifHxhJiZlIGluc3RhbmNlb2YgRmlsZSl7cysrO3ZhciBkPW5ldyBGaWxlUmVhZGVyO2Qub25sb2FkPWZ1bmN0aW9uKCl7dT91W2xdPXRoaXMucmVzdWx0OmM9dGhpcy5yZXN1bHQsLS1zfHxyKGMpfSxkLnJlYWRBc0FycmF5QnVmZmVyKGUpfWVsc2UgaWYodChlKSlmb3IodmFyIGY9MDtmPGUubGVuZ3RoO2YrKylvKGVbZl0sZixlKTtlbHNlIGlmKHR5cGVvZiBlPT1gb2JqZWN0YCYmIW4oZSkpZm9yKHZhciBwIGluIGUpbyhlW3BdLHAsZSl9dmFyIHM9MCxjPWU7byhjKSxzfHxyKGMpfX0pKSxCcz1zKChlPT57dmFyIHQ9RnMoKShgc29ja2V0LmlvLXBhcnNlcmApLG49SXMoKSxyPXpzKCksaT1McygpLGE9UnMoKTtlLnByb3RvY29sPTQsZS50eXBlcz1bYENPTk5FQ1RgLGBESVNDT05ORUNUYCxgRVZFTlRgLGBBQ0tgLGBFUlJPUmAsYEJJTkFSWV9FVkVOVGAsYEJJTkFSWV9BQ0tgXSxlLkNPTk5FQ1Q9MCxlLkRJU0NPTk5FQ1Q9MSxlLkVWRU5UPTIsZS5BQ0s9MyxlLkVSUk9SPTQsZS5CSU5BUllfRVZFTlQ9NSxlLkJJTkFSWV9BQ0s9NixlLkVuY29kZXI9byxlLkRlY29kZXI9ZDtmdW5jdGlvbiBvKCl7fXZhciBzPWUuRVJST1IrYCJlbmNvZGUgZXJyb3IiYDtvLnByb3RvdHlwZS5lbmNvZGU9ZnVuY3Rpb24obixyKXt0KGBlbmNvZGluZyBwYWNrZXQgJWpgLG4pLGUuQklOQVJZX0VWRU5UPT09bi50eXBlfHxlLkJJTkFSWV9BQ0s9PT1uLnR5cGU/dShuLHIpOnIoW2MobildKX07ZnVuY3Rpb24gYyhuKXt2YXIgcj1gYCtuLnR5cGU7aWYoKGUuQklOQVJZX0VWRU5UPT09bi50eXBlfHxlLkJJTkFSWV9BQ0s9PT1uLnR5cGUpJiYocis9bi5hdHRhY2htZW50cytgLWApLG4ubnNwJiZuLm5zcCE9PWAvYCYmKHIrPW4ubnNwK2AsYCksbi5pZCE9bnVsbCYmKHIrPW4uaWQpLG4uZGF0YSE9bnVsbCl7dmFyIGk9bChuLmRhdGEpO2lmKGkhPT0hMSlyKz1pO2Vsc2UgcmV0dXJuIHN9cmV0dXJuIHQoYGVuY29kZWQgJWogYXMgJXNgLG4scikscn1mdW5jdGlvbiBsKGUpe3RyeXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIHUoZSx0KXtmdW5jdGlvbiBuKGUpe3ZhciBuPXIuZGVjb25zdHJ1Y3RQYWNrZXQoZSksaT1jKG4ucGFja2V0KSxhPW4uYnVmZmVyczthLnVuc2hpZnQoaSksdChhKX1yLnJlbW92ZUJsb2JzKGUsbil9ZnVuY3Rpb24gZCgpe3RoaXMucmVjb25zdHJ1Y3Rvcj1udWxsfW4oZC5wcm90b3R5cGUpLGQucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0KXt2YXIgbjtpZih0eXBlb2YgdD09YHN0cmluZ2Ape2lmKHRoaXMucmVjb25zdHJ1Y3Rvcil0aHJvdyBFcnJvcihgZ290IHBsYWludGV4dCBkYXRhIHdoZW4gcmVjb25zdHJ1Y3RpbmcgYSBwYWNrZXRgKTtuPWYodCksZS5CSU5BUllfRVZFTlQ9PT1uLnR5cGV8fGUuQklOQVJZX0FDSz09PW4udHlwZT8odGhpcy5yZWNvbnN0cnVjdG9yPW5ldyBtKG4pLHRoaXMucmVjb25zdHJ1Y3Rvci5yZWNvblBhY2suYXR0YWNobWVudHM9PT0wJiZ0aGlzLmVtaXQoYGRlY29kZWRgLG4pKTp0aGlzLmVtaXQoYGRlY29kZWRgLG4pfWVsc2UgaWYoYSh0KXx8dC5iYXNlNjQpaWYodGhpcy5yZWNvbnN0cnVjdG9yKW49dGhpcy5yZWNvbnN0cnVjdG9yLnRha2VCaW5hcnlEYXRhKHQpLG4mJih0aGlzLnJlY29uc3RydWN0b3I9bnVsbCx0aGlzLmVtaXQoYGRlY29kZWRgLG4pKTtlbHNlIHRocm93IEVycm9yKGBnb3QgYmluYXJ5IGRhdGEgd2hlbiBub3QgcmVjb25zdHJ1Y3RpbmcgYSBwYWNrZXRgKTtlbHNlIHRocm93IEVycm9yKGBVbmtub3duIHR5cGU6IGArdCl9O2Z1bmN0aW9uIGYobil7dmFyIHI9MCxhPXt0eXBlOk51bWJlcihuLmNoYXJBdCgwKSl9O2lmKGUudHlwZXNbYS50eXBlXT09bnVsbClyZXR1cm4gaChgdW5rbm93biBwYWNrZXQgdHlwZSBgK2EudHlwZSk7aWYoZS5CSU5BUllfRVZFTlQ9PT1hLnR5cGV8fGUuQklOQVJZX0FDSz09PWEudHlwZSl7Zm9yKHZhciBvPXIrMTtuLmNoYXJBdCgrK3IpIT09YC1gJiZyIT1uLmxlbmd0aDspO3ZhciBzPW4uc3Vic3RyaW5nKG8scik7aWYocyE9TnVtYmVyKHMpfHxuLmNoYXJBdChyKSE9PWAtYCl0aHJvdyBFcnJvcihgSWxsZWdhbCBhdHRhY2htZW50c2ApO2EuYXR0YWNobWVudHM9TnVtYmVyKHMpfWlmKG4uY2hhckF0KHIrMSk9PT1gL2Ape2Zvcih2YXIgbz1yKzE7KytyOyl7dmFyIGM9bi5jaGFyQXQocik7aWYoYz09PWAsYHx8cj09PW4ubGVuZ3RoKWJyZWFrfWEubnNwPW4uc3Vic3RyaW5nKG8scil9ZWxzZSBhLm5zcD1gL2A7dmFyIGw9bi5jaGFyQXQocisxKTtpZihsIT09YGAmJk51bWJlcihsKT09bCl7Zm9yKHZhciBvPXIrMTsrK3I7KXt2YXIgYz1uLmNoYXJBdChyKTtpZihjPT1udWxsfHxOdW1iZXIoYykhPWMpey0tcjticmVha31pZihyPT09bi5sZW5ndGgpYnJlYWt9YS5pZD1OdW1iZXIobi5zdWJzdHJpbmcobyxyKzEpKX1pZihuLmNoYXJBdCgrK3IpKXt2YXIgdT1wKG4uc3Vic3RyKHIpKTtpZih1IT09ITEmJihhLnR5cGU9PT1lLkVSUk9SfHxpKHUpKSlhLmRhdGE9dTtlbHNlIHJldHVybiBoKGBpbnZhbGlkIHBheWxvYWRgKX1yZXR1cm4gdChgZGVjb2RlZCAlcyBhcyAlamAsbixhKSxhfWZ1bmN0aW9uIHAoZSl7dHJ5e3JldHVybiBKU09OLnBhcnNlKGUpfWNhdGNoe3JldHVybiExfX1kLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy5yZWNvbnN0cnVjdG9yJiZ0aGlzLnJlY29uc3RydWN0b3IuZmluaXNoZWRSZWNvbnN0cnVjdGlvbigpfTtmdW5jdGlvbiBtKGUpe3RoaXMucmVjb25QYWNrPWUsdGhpcy5idWZmZXJzPVtdfW0ucHJvdG90eXBlLnRha2VCaW5hcnlEYXRhPWZ1bmN0aW9uKGUpe2lmKHRoaXMuYnVmZmVycy5wdXNoKGUpLHRoaXMuYnVmZmVycy5sZW5ndGg9PT10aGlzLnJlY29uUGFjay5hdHRhY2htZW50cyl7dmFyIHQ9ci5yZWNvbnN0cnVjdFBhY2tldCh0aGlzLnJlY29uUGFjayx0aGlzLmJ1ZmZlcnMpO3JldHVybiB0aGlzLmZpbmlzaGVkUmVjb25zdHJ1Y3Rpb24oKSx0fXJldHVybiBudWxsfSxtLnByb3RvdHlwZS5maW5pc2hlZFJlY29uc3RydWN0aW9uPWZ1bmN0aW9uKCl7dGhpcy5yZWNvblBhY2s9bnVsbCx0aGlzLmJ1ZmZlcnM9W119O2Z1bmN0aW9uIGgodCl7cmV0dXJue3R5cGU6ZS5FUlJPUixkYXRhOmBwYXJzZXIgZXJyb3I6IGArdH19fSkpLFZzPXMoKChlLHQpPT57dHJ5e3QuZXhwb3J0cz10eXBlb2YgWE1MSHR0cFJlcXVlc3Q8YHVgJiZgd2l0aENyZWRlbnRpYWxzYGluIG5ldyBYTUxIdHRwUmVxdWVzdH1jYXRjaHt0LmV4cG9ydHM9ITF9fSkpLEhzPXMoKChlLHQpPT57dC5leHBvcnRzPShmdW5jdGlvbigpe3JldHVybiB0eXBlb2Ygc2VsZjxgdWA/c2VsZjp0eXBlb2Ygd2luZG93PGB1YD93aW5kb3c6RnVuY3Rpb24oYHJldHVybiB0aGlzYCkoKX0pKCl9KSksVXM9cygoKGUsdCk9Pnt2YXIgbj1WcygpLHI9SHMoKTt0LmV4cG9ydHM9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS54ZG9tYWluLGk9ZS54c2NoZW1lLGE9ZS5lbmFibGVzWERSO3RyeXtpZih0eXBlb2YgWE1MSHR0cFJlcXVlc3Q8YHVgJiYoIXR8fG4pKXJldHVybiBuZXcgWE1MSHR0cFJlcXVlc3R9Y2F0Y2h7fXRyeXtpZih0eXBlb2YgWERvbWFpblJlcXVlc3Q8YHVgJiYhaSYmYSlyZXR1cm4gbmV3IFhEb21haW5SZXF1ZXN0fWNhdGNoe31pZighdCl0cnl7cmV0dXJuIG5ldyByW1tgQWN0aXZlYCxgT2JqZWN0YF0uam9pbihgWGApXShgTWljcm9zb2Z0LlhNTEhUVFBgKX1jYXRjaHt9fX0pKSxXcz1zKCgoZSx0KT0+e3QuZXhwb3J0cz1PYmplY3Qua2V5c3x8ZnVuY3Rpb24oZSl7dmFyIHQ9W10sbj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Zvcih2YXIgciBpbiBlKW4uY2FsbChlLHIpJiZ0LnB1c2gocik7cmV0dXJuIHR9fSkpLEdzPXMoKChlLHQpPT57dmFyIG49THMoKSxyPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcsaT10eXBlb2YgQmxvYj09YGZ1bmN0aW9uYHx8dHlwZW9mIEJsb2I8YHVgJiZyLmNhbGwoQmxvYik9PT1gW29iamVjdCBCbG9iQ29uc3RydWN0b3JdYCxhPXR5cGVvZiBGaWxlPT1gZnVuY3Rpb25gfHx0eXBlb2YgRmlsZTxgdWAmJnIuY2FsbChGaWxlKT09PWBbb2JqZWN0IEZpbGVDb25zdHJ1Y3Rvcl1gO3QuZXhwb3J0cz1vO2Z1bmN0aW9uIG8oZSl7aWYoIWV8fHR5cGVvZiBlIT1gb2JqZWN0YClyZXR1cm4hMTtpZihuKGUpKXtmb3IodmFyIHQ9MCxyPWUubGVuZ3RoO3Q8cjt0KyspaWYobyhlW3RdKSlyZXR1cm4hMDtyZXR1cm4hMX1pZih0eXBlb2YgQnVmZmVyPT1gZnVuY3Rpb25gJiZCdWZmZXIuaXNCdWZmZXImJkJ1ZmZlci5pc0J1ZmZlcihlKXx8dHlwZW9mIEFycmF5QnVmZmVyPT1gZnVuY3Rpb25gJiZlIGluc3RhbmNlb2YgQXJyYXlCdWZmZXJ8fGkmJmUgaW5zdGFuY2VvZiBCbG9ifHxhJiZlIGluc3RhbmNlb2YgRmlsZSlyZXR1cm4hMDtpZihlLnRvSlNPTiYmdHlwZW9mIGUudG9KU09OPT1gZnVuY3Rpb25gJiZhcmd1bWVudHMubGVuZ3RoPT09MSlyZXR1cm4gbyhlLnRvSlNPTigpLCEwKTtmb3IodmFyIHMgaW4gZSlpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmbyhlW3NdKSlyZXR1cm4hMDtyZXR1cm4hMX19KSksS3M9cygoKGUsdCk9Pnt0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUuYnl0ZUxlbmd0aDtpZih0fHw9MCxufHw9cixlLnNsaWNlKXJldHVybiBlLnNsaWNlKHQsbik7aWYodDwwJiYodCs9ciksbjwwJiYobis9ciksbj5yJiYobj1yKSx0Pj1yfHx0Pj1ufHxyPT09MClyZXR1cm4gbmV3IEFycmF5QnVmZmVyKDApO2Zvcih2YXIgaT1uZXcgVWludDhBcnJheShlKSxhPW5ldyBVaW50OEFycmF5KG4tdCksbz10LHM9MDtvPG47bysrLHMrKylhW3NdPWlbb107cmV0dXJuIGEuYnVmZmVyfX0pKSxxcz1zKCgoZSx0KT0+e3QuZXhwb3J0cz1uO2Z1bmN0aW9uIG4oZSx0LG4pe3ZhciBpPSExO3JldHVybiBufHw9cixhLmNvdW50PWUsZT09PTA/dCgpOmE7ZnVuY3Rpb24gYShlLHIpe2lmKGEuY291bnQ8PTApdGhyb3cgRXJyb3IoYGFmdGVyIGNhbGxlZCB0b28gbWFueSB0aW1lc2ApOy0tYS5jb3VudCxlPyhpPSEwLHQoZSksdD1uKTphLmNvdW50PT09MCYmIWkmJnQobnVsbCxyKX19ZnVuY3Rpb24gcigpe319KSksSnM9cygoKGUsdCk9Pnt2YXIgbj1TdHJpbmcuZnJvbUNoYXJDb2RlO2Z1bmN0aW9uIHIoZSl7Zm9yKHZhciB0PVtdLG49MCxyPWUubGVuZ3RoLGksYTtuPHI7KWk9ZS5jaGFyQ29kZUF0KG4rKyksaT49NTUyOTYmJmk8PTU2MzE5JiZuPHI/KGE9ZS5jaGFyQ29kZUF0KG4rKyksKGEmNjQ1MTIpPT01NjMyMD90LnB1c2goKChpJjEwMjMpPDwxMCkrKGEmMTAyMykrNjU1MzYpOih0LnB1c2goaSksbi0tKSk6dC5wdXNoKGkpO3JldHVybiB0fWZ1bmN0aW9uIGkoZSl7Zm9yKHZhciB0PWUubGVuZ3RoLHI9LTEsaSxhPWBgOysrcjx0OylpPWVbcl0saT42NTUzNSYmKGktPTY1NTM2LGErPW4oaT4+PjEwJjEwMjN8NTUyOTYpLGk9NTYzMjB8aSYxMDIzKSxhKz1uKGkpO3JldHVybiBhfWZ1bmN0aW9uIGEoZSx0KXtpZihlPj01NTI5NiYmZTw9NTczNDMpe2lmKHQpdGhyb3cgRXJyb3IoYExvbmUgc3Vycm9nYXRlIFUrYCtlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpK2AgaXMgbm90IGEgc2NhbGFyIHZhbHVlYCk7cmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gbyhlLHQpe3JldHVybiBuKGU+PnQmNjN8MTI4KX1mdW5jdGlvbiBzKGUsdCl7aWYoIShlJjQyOTQ5NjcxNjgpKXJldHVybiBuKGUpO3ZhciByPWBgO3JldHVybiBlJjQyOTQ5NjUyNDg/ZSY0Mjk0OTAxNzYwP2UmNDI5Mjg3MDE0NHx8KHI9bihlPj4xOCY3fDI0MCkscis9byhlLDEyKSxyKz1vKGUsNikpOihhKGUsdCl8fChlPTY1NTMzKSxyPW4oZT4+MTImMTV8MjI0KSxyKz1vKGUsNikpOnI9bihlPj42JjMxfDE5Mikscis9bihlJjYzfDEyOCkscn1mdW5jdGlvbiBjKGUsdCl7dHx8PXt9O2Zvcih2YXIgbj0hMSE9PXQuc3RyaWN0LGk9cihlKSxhPWkubGVuZ3RoLG89LTEsYyxsPWBgOysrbzxhOyljPWlbb10sbCs9cyhjLG4pO3JldHVybiBsfWZ1bmN0aW9uIGwoKXtpZihwPj1mKXRocm93IEVycm9yKGBJbnZhbGlkIGJ5dGUgaW5kZXhgKTt2YXIgZT1kW3BdJjI1NTtpZihwKyssKGUmMTkyKT09MTI4KXJldHVybiBlJjYzO3Rocm93IEVycm9yKGBJbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlYCl9ZnVuY3Rpb24gdShlKXt2YXIgdCxuLHIsaSxvO2lmKHA+Zil0aHJvdyBFcnJvcihgSW52YWxpZCBieXRlIGluZGV4YCk7aWYocD09ZilyZXR1cm4hMTtpZih0PWRbcF0mMjU1LHArKywhKHQmMTI4KSlyZXR1cm4gdDtpZigodCYyMjQpPT0xOTIpe2lmKG49bCgpLG89KHQmMzEpPDw2fG4sbz49MTI4KXJldHVybiBvO3Rocm93IEVycm9yKGBJbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlYCl9aWYoKHQmMjQwKT09MjI0KXtpZihuPWwoKSxyPWwoKSxvPSh0JjE1KTw8MTJ8bjw8NnxyLG8+PTIwNDgpcmV0dXJuIGEobyxlKT9vOjY1NTMzO3Rocm93IEVycm9yKGBJbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlYCl9aWYoKHQmMjQ4KT09MjQwJiYobj1sKCkscj1sKCksaT1sKCksbz0odCY3KTw8MTh8bjw8MTJ8cjw8NnxpLG8+PTY1NTM2JiZvPD0xMTE0MTExKSlyZXR1cm4gbzt0aHJvdyBFcnJvcihgSW52YWxpZCBVVEYtOCBkZXRlY3RlZGApfXZhciBkLGYscDtmdW5jdGlvbiBtKGUsdCl7dHx8PXt9O3ZhciBuPSExIT09dC5zdHJpY3Q7ZD1yKGUpLGY9ZC5sZW5ndGgscD0wO2Zvcih2YXIgYT1bXSxvOyhvPXUobikpIT09ITE7KWEucHVzaChvKTtyZXR1cm4gaShhKX10LmV4cG9ydHM9e3ZlcnNpb246YDIuMS4yYCxlbmNvZGU6YyxkZWNvZGU6bX19KSksWXM9cygoZT0+eyhmdW5jdGlvbih0KXtlLmVuY29kZT1mdW5jdGlvbihlKXt2YXIgbj1uZXcgVWludDhBcnJheShlKSxyLGk9bi5sZW5ndGgsYT1gYDtmb3Iocj0wO3I8aTtyKz0zKWErPXRbbltyXT4+Ml0sYSs9dFsobltyXSYzKTw8NHxuW3IrMV0+PjRdLGErPXRbKG5bcisxXSYxNSk8PDJ8bltyKzJdPj42XSxhKz10W25bcisyXSY2M107cmV0dXJuIGklMz09Mj9hPWEuc3Vic3RyaW5nKDAsYS5sZW5ndGgtMSkrYD1gOmklMz09MSYmKGE9YS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0yKStgPT1gKSxhfSxlLmRlY29kZT1mdW5jdGlvbihlKXt2YXIgbj1lLmxlbmd0aCouNzUscj1lLmxlbmd0aCxpLGE9MCxvLHMsYyxsO2VbZS5sZW5ndGgtMV09PT1gPWAmJihuLS0sZVtlLmxlbmd0aC0yXT09PWA9YCYmbi0tKTt2YXIgdT1uZXcgQXJyYXlCdWZmZXIobiksZD1uZXcgVWludDhBcnJheSh1KTtmb3IoaT0wO2k8cjtpKz00KW89dC5pbmRleE9mKGVbaV0pLHM9dC5pbmRleE9mKGVbaSsxXSksYz10LmluZGV4T2YoZVtpKzJdKSxsPXQuaW5kZXhPZihlW2krM10pLGRbYSsrXT1vPDwyfHM+PjQsZFthKytdPShzJjE1KTw8NHxjPj4yLGRbYSsrXT0oYyYzKTw8NnxsJjYzO3JldHVybiB1fX0pKGBBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvYCl9KSksWHM9cygoKGUsdCk9Pnt2YXIgbj1uPT09dm9pZCAwP3R5cGVvZiBXZWJLaXRCbG9iQnVpbGRlcjxgdWA/V2ViS2l0QmxvYkJ1aWxkZXI6dHlwZW9mIE1TQmxvYkJ1aWxkZXI8YHVgP01TQmxvYkJ1aWxkZXI6dHlwZW9mIE1vekJsb2JCdWlsZGVyPGB1YD9Nb3pCbG9iQnVpbGRlcjohMTpuLHI9KGZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgQmxvYihbYGhpYF0pLnNpemU9PT0yfWNhdGNoe3JldHVybiExfX0pKCksaT1yJiYoZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBCbG9iKFtuZXcgVWludDhBcnJheShbMSwyXSldKS5zaXplPT09Mn1jYXRjaHtyZXR1cm4hMX19KSgpLGE9biYmbi5wcm90b3R5cGUuYXBwZW5kJiZuLnByb3RvdHlwZS5nZXRCbG9iO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIGUubWFwKGZ1bmN0aW9uKGUpe2lmKGUuYnVmZmVyIGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpe3ZhciB0PWUuYnVmZmVyO2lmKGUuYnl0ZUxlbmd0aCE9PXQuYnl0ZUxlbmd0aCl7dmFyIG49bmV3IFVpbnQ4QXJyYXkoZS5ieXRlTGVuZ3RoKTtuLnNldChuZXcgVWludDhBcnJheSh0LGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpKSx0PW4uYnVmZmVyfXJldHVybiB0fXJldHVybiBlfSl9ZnVuY3Rpb24gcyhlLHQpe3R8fD17fTt2YXIgcj1uZXcgbjtyZXR1cm4gbyhlKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3IuYXBwZW5kKGUpfSksdC50eXBlP3IuZ2V0QmxvYih0LnR5cGUpOnIuZ2V0QmxvYigpfWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gbmV3IEJsb2IobyhlKSx0fHx7fSl9dHlwZW9mIEJsb2I8YHVgJiYocy5wcm90b3R5cGU9QmxvYi5wcm90b3R5cGUsYy5wcm90b3R5cGU9QmxvYi5wcm90b3R5cGUpLHQuZXhwb3J0cz0oZnVuY3Rpb24oKXtpZihyKXJldHVybiBpP0Jsb2I6YztpZihhKXJldHVybiBzfSkoKX0pKSxacz1zKChlPT57dmFyIHQ9V3MoKSxuPUdzKCkscj1LcygpLGk9cXMoKSxhPUpzKCksbzt0eXBlb2YgQXJyYXlCdWZmZXI8YHVgJiYobz1ZcygpKTt2YXIgcz10eXBlb2YgbmF2aWdhdG9yPGB1YCYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGM9dHlwZW9mIG5hdmlnYXRvcjxgdWAmJi9QaGFudG9tSlMvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGw9c3x8YztlLnByb3RvY29sPTM7dmFyIHU9ZS5wYWNrZXRzPXtvcGVuOjAsY2xvc2U6MSxwaW5nOjIscG9uZzozLG1lc3NhZ2U6NCx1cGdyYWRlOjUsbm9vcDo2fSxkPXQodSksZj17dHlwZTpgZXJyb3JgLGRhdGE6YHBhcnNlciBlcnJvcmB9LHA9WHMoKTtlLmVuY29kZVBhY2tldD1mdW5jdGlvbihlLHQsbixyKXt0eXBlb2YgdD09YGZ1bmN0aW9uYCYmKHI9dCx0PSExKSx0eXBlb2Ygbj09YGZ1bmN0aW9uYCYmKHI9bixuPW51bGwpO3ZhciBpPWUuZGF0YT09PXZvaWQgMD92b2lkIDA6ZS5kYXRhLmJ1ZmZlcnx8ZS5kYXRhO2lmKHR5cGVvZiBBcnJheUJ1ZmZlcjxgdWAmJmkgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcilyZXR1cm4gaChlLHQscik7aWYocCE9PXZvaWQgMCYmaSBpbnN0YW5jZW9mIHApcmV0dXJuIF8oZSx0LHIpO2lmKGkmJmkuYmFzZTY0KXJldHVybiBtKGUscik7dmFyIG89dVtlLnR5cGVdO3JldHVybiBlLmRhdGEhPT12b2lkIDAmJihvKz1uP2EuZW5jb2RlKFN0cmluZyhlLmRhdGEpLHtzdHJpY3Q6ITF9KTpTdHJpbmcoZS5kYXRhKSkscihgYCtvKX07ZnVuY3Rpb24gbSh0LG4pe3JldHVybiBuKGBiYCtlLnBhY2tldHNbdC50eXBlXSt0LmRhdGEuZGF0YSl9ZnVuY3Rpb24gaCh0LG4scil7aWYoIW4pcmV0dXJuIGUuZW5jb2RlQmFzZTY0UGFja2V0KHQscik7dmFyIGk9dC5kYXRhLGE9bmV3IFVpbnQ4QXJyYXkoaSksbz1uZXcgVWludDhBcnJheSgxK2kuYnl0ZUxlbmd0aCk7b1swXT11W3QudHlwZV07Zm9yKHZhciBzPTA7czxhLmxlbmd0aDtzKyspb1tzKzFdPWFbc107cmV0dXJuIHIoby5idWZmZXIpfWZ1bmN0aW9uIGcodCxuLHIpe2lmKCFuKXJldHVybiBlLmVuY29kZUJhc2U2NFBhY2tldCh0LHIpO3ZhciBpPW5ldyBGaWxlUmVhZGVyO3JldHVybiBpLm9ubG9hZD1mdW5jdGlvbigpe2UuZW5jb2RlUGFja2V0KHt0eXBlOnQudHlwZSxkYXRhOmkucmVzdWx0fSxuLCEwLHIpfSxpLnJlYWRBc0FycmF5QnVmZmVyKHQuZGF0YSl9ZnVuY3Rpb24gXyh0LG4scil7aWYoIW4pcmV0dXJuIGUuZW5jb2RlQmFzZTY0UGFja2V0KHQscik7aWYobClyZXR1cm4gZyh0LG4scik7dmFyIGk9bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIGlbMF09dVt0LnR5cGVdLHIobmV3IHAoW2kuYnVmZmVyLHQuZGF0YV0pKX1lLmVuY29kZUJhc2U2NFBhY2tldD1mdW5jdGlvbih0LG4pe3ZhciByPWBiYCtlLnBhY2tldHNbdC50eXBlXTtpZihwIT09dm9pZCAwJiZ0LmRhdGEgaW5zdGFuY2VvZiBwKXt2YXIgaT1uZXcgRmlsZVJlYWRlcjtyZXR1cm4gaS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgZT1pLnJlc3VsdC5zcGxpdChgLGApWzFdO24ocitlKX0saS5yZWFkQXNEYXRhVVJMKHQuZGF0YSl9dmFyIGE7dHJ5e2E9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShudWxsLG5ldyBVaW50OEFycmF5KHQuZGF0YSkpfWNhdGNoe2Zvcih2YXIgbz1uZXcgVWludDhBcnJheSh0LmRhdGEpLHM9QXJyYXkoby5sZW5ndGgpLGM9MDtjPG8ubGVuZ3RoO2MrKylzW2NdPW9bY107YT1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwscyl9cmV0dXJuIHIrPWJ0b2EoYSksbihyKX0sZS5kZWNvZGVQYWNrZXQ9ZnVuY3Rpb24odCxuLGkpe2lmKHQ9PT12b2lkIDApcmV0dXJuIGY7aWYodHlwZW9mIHQ9PWBzdHJpbmdgKXtpZih0LmNoYXJBdCgwKT09PWBiYClyZXR1cm4gZS5kZWNvZGVCYXNlNjRQYWNrZXQodC5zdWJzdHIoMSksbik7aWYoaSYmKHQ9dih0KSx0PT09ITEpKXJldHVybiBmO3ZhciBhPXQuY2hhckF0KDApO3JldHVybiBOdW1iZXIoYSkhPWF8fCFkW2FdP2Y6dC5sZW5ndGg+MT97dHlwZTpkW2FdLGRhdGE6dC5zdWJzdHJpbmcoMSl9Ont0eXBlOmRbYV19fXZhciBhPW5ldyBVaW50OEFycmF5KHQpWzBdLG89cih0LDEpO3JldHVybiBwJiZuPT09YGJsb2JgJiYobz1uZXcgcChbb10pKSx7dHlwZTpkW2FdLGRhdGE6b319O2Z1bmN0aW9uIHYoZSl7dHJ5e2U9YS5kZWNvZGUoZSx7c3RyaWN0OiExfSl9Y2F0Y2h7cmV0dXJuITF9cmV0dXJuIGV9ZS5kZWNvZGVCYXNlNjRQYWNrZXQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj1kW2UuY2hhckF0KDApXTtpZighbylyZXR1cm57dHlwZTpuLGRhdGE6e2Jhc2U2NDohMCxkYXRhOmUuc3Vic3RyKDEpfX07dmFyIHI9by5kZWNvZGUoZS5zdWJzdHIoMSkpO3JldHVybiB0PT09YGJsb2JgJiZwJiYocj1uZXcgcChbcl0pKSx7dHlwZTpuLGRhdGE6cn19LGUuZW5jb2RlUGF5bG9hZD1mdW5jdGlvbih0LHIsaSl7dHlwZW9mIHI9PWBmdW5jdGlvbmAmJihpPXIscj1udWxsKTt2YXIgYT1uKHQpO2lmKHImJmEpcmV0dXJuIHAmJiFsP2UuZW5jb2RlUGF5bG9hZEFzQmxvYih0LGkpOmUuZW5jb2RlUGF5bG9hZEFzQXJyYXlCdWZmZXIodCxpKTtpZighdC5sZW5ndGgpcmV0dXJuIGkoYDA6YCk7ZnVuY3Rpb24gbyhlKXtyZXR1cm4gZS5sZW5ndGgrYDpgK2V9ZnVuY3Rpb24gcyh0LG4pe2UuZW5jb2RlUGFja2V0KHQsYT9yOiExLCExLGZ1bmN0aW9uKGUpe24obnVsbCxvKGUpKX0pfXkodCxzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkodC5qb2luKGBgKSl9KX07ZnVuY3Rpb24geShlLHQsbil7Zm9yKHZhciByPUFycmF5KGUubGVuZ3RoKSxhPWkoZS5sZW5ndGgsbiksbz1mdW5jdGlvbihlLG4saSl7dChuLGZ1bmN0aW9uKHQsbil7cltlXT1uLGkodCxyKX0pfSxzPTA7czxlLmxlbmd0aDtzKyspbyhzLGVbc10sYSl9ZS5kZWNvZGVQYXlsb2FkPWZ1bmN0aW9uKHQsbixyKXtpZih0eXBlb2YgdCE9YHN0cmluZ2ApcmV0dXJuIGUuZGVjb2RlUGF5bG9hZEFzQmluYXJ5KHQsbixyKTt0eXBlb2Ygbj09YGZ1bmN0aW9uYCYmKHI9bixuPW51bGwpO3ZhciBpO2lmKHQ9PT1gYClyZXR1cm4gcihmLDAsMSk7Zm9yKHZhciBhPWBgLG8scyxjPTAsbD10Lmxlbmd0aDtjPGw7YysrKXt2YXIgdT10LmNoYXJBdChjKTtpZih1IT09YDpgKXthKz11O2NvbnRpbnVlfWlmKGE9PT1gYHx8YSE9KG89TnVtYmVyKGEpKXx8KHM9dC5zdWJzdHIoYysxLG8pLGEhPXMubGVuZ3RoKSlyZXR1cm4gcihmLDAsMSk7aWYocy5sZW5ndGgpe2lmKGk9ZS5kZWNvZGVQYWNrZXQocyxuLCExKSxmLnR5cGU9PT1pLnR5cGUmJmYuZGF0YT09PWkuZGF0YSlyZXR1cm4gcihmLDAsMSk7aWYoITE9PT1yKGksYytvLGwpKXJldHVybn1jKz1vLGE9YGB9aWYoYSE9PWBgKXJldHVybiByKGYsMCwxKX0sZS5lbmNvZGVQYXlsb2FkQXNBcnJheUJ1ZmZlcj1mdW5jdGlvbih0LG4pe2lmKCF0Lmxlbmd0aClyZXR1cm4gbihuZXcgQXJyYXlCdWZmZXIoMCkpO2Z1bmN0aW9uIHIodCxuKXtlLmVuY29kZVBhY2tldCh0LCEwLCEwLGZ1bmN0aW9uKGUpe3JldHVybiBuKG51bGwsZSl9KX15KHQscixmdW5jdGlvbihlLHQpe3ZhciByPXQucmVkdWNlKGZ1bmN0aW9uKGUsdCl7dmFyIG49dHlwZW9mIHQ9PWBzdHJpbmdgP3QubGVuZ3RoOnQuYnl0ZUxlbmd0aDtyZXR1cm4gZStuLnRvU3RyaW5nKCkubGVuZ3RoK24rMn0sMCksaT1uZXcgVWludDhBcnJheShyKSxhPTA7cmV0dXJuIHQuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD10eXBlb2YgZT09YHN0cmluZ2Asbj1lO2lmKHQpe2Zvcih2YXIgcj1uZXcgVWludDhBcnJheShlLmxlbmd0aCksbz0wO288ZS5sZW5ndGg7bysrKXJbb109ZS5jaGFyQ29kZUF0KG8pO249ci5idWZmZXJ9dD9pW2ErK109MDppW2ErK109MTtmb3IodmFyIHM9bi5ieXRlTGVuZ3RoLnRvU3RyaW5nKCksbz0wO288cy5sZW5ndGg7bysrKWlbYSsrXT1wYXJzZUludChzW29dKTtpW2ErK109MjU1O2Zvcih2YXIgcj1uZXcgVWludDhBcnJheShuKSxvPTA7bzxyLmxlbmd0aDtvKyspaVthKytdPXJbb119KSxuKGkuYnVmZmVyKX0pfSxlLmVuY29kZVBheWxvYWRBc0Jsb2I9ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiByKHQsbil7ZS5lbmNvZGVQYWNrZXQodCwhMCwhMCxmdW5jdGlvbihlKXt2YXIgdD1uZXcgVWludDhBcnJheSgxKTtpZih0WzBdPTEsdHlwZW9mIGU9PWBzdHJpbmdgKXtmb3IodmFyIHI9bmV3IFVpbnQ4QXJyYXkoZS5sZW5ndGgpLGk9MDtpPGUubGVuZ3RoO2krKylyW2ldPWUuY2hhckNvZGVBdChpKTtlPXIuYnVmZmVyLHRbMF09MH1mb3IodmFyIGE9KGUgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcj9lLmJ5dGVMZW5ndGg6ZS5zaXplKS50b1N0cmluZygpLG89bmV3IFVpbnQ4QXJyYXkoYS5sZW5ndGgrMSksaT0wO2k8YS5sZW5ndGg7aSsrKW9baV09cGFyc2VJbnQoYVtpXSk7b1thLmxlbmd0aF09MjU1LHAmJm4obnVsbCxuZXcgcChbdC5idWZmZXIsby5idWZmZXIsZV0pKX0pfXkodCxyLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIG4obmV3IHAodCkpfSl9LGUuZGVjb2RlUGF5bG9hZEFzQmluYXJ5PWZ1bmN0aW9uKHQsbixpKXt0eXBlb2Ygbj09YGZ1bmN0aW9uYCYmKGk9bixuPW51bGwpO2Zvcih2YXIgYT10LG89W107YS5ieXRlTGVuZ3RoPjA7KXtmb3IodmFyIHM9bmV3IFVpbnQ4QXJyYXkoYSksYz1zWzBdPT09MCxsPWBgLHU9MTtzW3VdIT09MjU1O3UrKyl7aWYobC5sZW5ndGg+MzEwKXJldHVybiBpKGYsMCwxKTtsKz1zW3VdfWE9cihhLDIrbC5sZW5ndGgpLGw9cGFyc2VJbnQobCk7dmFyIGQ9cihhLDAsbCk7aWYoYyl0cnl7ZD1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsbmV3IFVpbnQ4QXJyYXkoZCkpfWNhdGNoe3ZhciBwPW5ldyBVaW50OEFycmF5KGQpO2Q9YGA7Zm9yKHZhciB1PTA7dTxwLmxlbmd0aDt1KyspZCs9U3RyaW5nLmZyb21DaGFyQ29kZShwW3VdKX1vLnB1c2goZCksYT1yKGEsbCl9dmFyIG09by5sZW5ndGg7by5mb3JFYWNoKGZ1bmN0aW9uKHQscil7aShlLmRlY29kZVBhY2tldCh0LG4sITApLHIsbSl9KX19KSksUXM9cygoKGUsdCk9Pnt2YXIgbj1acygpLHI9SXMoKTt0LmV4cG9ydHM9aTtmdW5jdGlvbiBpKGUpe3RoaXMucGF0aD1lLnBhdGgsdGhpcy5ob3N0bmFtZT1lLmhvc3RuYW1lLHRoaXMucG9ydD1lLnBvcnQsdGhpcy5zZWN1cmU9ZS5zZWN1cmUsdGhpcy5xdWVyeT1lLnF1ZXJ5LHRoaXMudGltZXN0YW1wUGFyYW09ZS50aW1lc3RhbXBQYXJhbSx0aGlzLnRpbWVzdGFtcFJlcXVlc3RzPWUudGltZXN0YW1wUmVxdWVzdHMsdGhpcy5yZWFkeVN0YXRlPWBgLHRoaXMuYWdlbnQ9ZS5hZ2VudHx8ITEsdGhpcy5zb2NrZXQ9ZS5zb2NrZXQsdGhpcy5lbmFibGVzWERSPWUuZW5hYmxlc1hEUix0aGlzLndpdGhDcmVkZW50aWFscz1lLndpdGhDcmVkZW50aWFscyx0aGlzLnBmeD1lLnBmeCx0aGlzLmtleT1lLmtleSx0aGlzLnBhc3NwaHJhc2U9ZS5wYXNzcGhyYXNlLHRoaXMuY2VydD1lLmNlcnQsdGhpcy5jYT1lLmNhLHRoaXMuY2lwaGVycz1lLmNpcGhlcnMsdGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ9ZS5yZWplY3RVbmF1dGhvcml6ZWQsdGhpcy5mb3JjZU5vZGU9ZS5mb3JjZU5vZGUsdGhpcy5pc1JlYWN0TmF0aXZlPWUuaXNSZWFjdE5hdGl2ZSx0aGlzLmV4dHJhSGVhZGVycz1lLmV4dHJhSGVhZGVycyx0aGlzLmxvY2FsQWRkcmVzcz1lLmxvY2FsQWRkcmVzc31yKGkucHJvdG90eXBlKSxpLnByb3RvdHlwZS5vbkVycm9yPWZ1bmN0aW9uKGUsdCl7dmFyIG49RXJyb3IoZSk7cmV0dXJuIG4udHlwZT1gVHJhbnNwb3J0RXJyb3JgLG4uZGVzY3JpcHRpb249dCx0aGlzLmVtaXQoYGVycm9yYCxuKSx0aGlzfSxpLnByb3RvdHlwZS5vcGVuPWZ1bmN0aW9uKCl7cmV0dXJuKHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zZWRgfHx0aGlzLnJlYWR5U3RhdGU9PT1gYCkmJih0aGlzLnJlYWR5U3RhdGU9YG9wZW5pbmdgLHRoaXMuZG9PcGVuKCkpLHRoaXN9LGkucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKCl7cmV0dXJuKHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuaW5nYHx8dGhpcy5yZWFkeVN0YXRlPT09YG9wZW5gKSYmKHRoaXMuZG9DbG9zZSgpLHRoaXMub25DbG9zZSgpKSx0aGlzfSxpLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGUpe2lmKHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuYCl0aGlzLndyaXRlKGUpO2Vsc2UgdGhyb3cgRXJyb3IoYFRyYW5zcG9ydCBub3Qgb3BlbmApfSxpLnByb3RvdHlwZS5vbk9wZW49ZnVuY3Rpb24oKXt0aGlzLnJlYWR5U3RhdGU9YG9wZW5gLHRoaXMud3JpdGFibGU9ITAsdGhpcy5lbWl0KGBvcGVuYCl9LGkucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihlKXt2YXIgdD1uLmRlY29kZVBhY2tldChlLHRoaXMuc29ja2V0LmJpbmFyeVR5cGUpO3RoaXMub25QYWNrZXQodCl9LGkucHJvdG90eXBlLm9uUGFja2V0PWZ1bmN0aW9uKGUpe3RoaXMuZW1pdChgcGFja2V0YCxlKX0saS5wcm90b3R5cGUub25DbG9zZT1mdW5jdGlvbigpe3RoaXMucmVhZHlTdGF0ZT1gY2xvc2VkYCx0aGlzLmVtaXQoYGNsb3NlYCl9fSkpLCRzPXMoKGU9PntlLmVuY29kZT1mdW5jdGlvbihlKXt2YXIgdD1gYDtmb3IodmFyIG4gaW4gZSllLmhhc093blByb3BlcnR5KG4pJiYodC5sZW5ndGgmJih0Kz1gJmApLHQrPWVuY29kZVVSSUNvbXBvbmVudChuKStgPWArZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pKTtyZXR1cm4gdH0sZS5kZWNvZGU9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PXt9LG49ZS5zcGxpdChgJmApLHI9MCxpPW4ubGVuZ3RoO3I8aTtyKyspe3ZhciBhPW5bcl0uc3BsaXQoYD1gKTt0W2RlY29kZVVSSUNvbXBvbmVudChhWzBdKV09ZGVjb2RlVVJJQ29tcG9uZW50KGFbMV0pfXJldHVybiB0fX0pKSxlYz1zKCgoZSx0KT0+e3QuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciBuPWZ1bmN0aW9uKCl7fTtuLnByb3RvdHlwZT10LnByb3RvdHlwZSxlLnByb3RvdHlwZT1uZXcgbixlLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1lfX0pKSx0Yz1zKCgoZSx0KT0+e3ZhciBuPWAwMTIzNDU2Nzg5QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ei1fYC5zcGxpdChgYCkscj02NCxpPXt9LGE9MCxvPTAscztmdW5jdGlvbiBjKGUpe3ZhciB0PWBgO2RvIHQ9bltlJXJdK3QsZT1NYXRoLmZsb29yKGUvcik7d2hpbGUoZT4wKTtyZXR1cm4gdH1mdW5jdGlvbiBsKGUpe3ZhciB0PTA7Zm9yKG89MDtvPGUubGVuZ3RoO28rKyl0PXQqcitpW2UuY2hhckF0KG8pXTtyZXR1cm4gdH1mdW5jdGlvbiB1KCl7dmFyIGU9YygrbmV3IERhdGUpO3JldHVybiBlPT09cz9lK2AuYCtjKGErKyk6KGE9MCxzPWUpfWZvcig7bzxyO28rKylpW25bb11dPW87dS5lbmNvZGU9Yyx1LmRlY29kZT1sLHQuZXhwb3J0cz11fSkpLG5jPXMoKChlLHQpPT57dmFyIG49UXMoKSxyPSRzKCksaT1acygpLGE9ZWMoKSxvPXRjKCkscz1GcygpKGBlbmdpbmUuaW8tY2xpZW50OnBvbGxpbmdgKTt0LmV4cG9ydHM9bDt2YXIgYz0oZnVuY3Rpb24oKXtyZXR1cm4gbmV3KFVzKCkpKHt4ZG9tYWluOiExfSkucmVzcG9uc2VUeXBlIT1udWxsfSkoKTtmdW5jdGlvbiBsKGUpe3ZhciB0PWUmJmUuZm9yY2VCYXNlNjQ7KCFjfHx0KSYmKHRoaXMuc3VwcG9ydHNCaW5hcnk9ITEpLG4uY2FsbCh0aGlzLGUpfWEobCxuKSxsLnByb3RvdHlwZS5uYW1lPWBwb2xsaW5nYCxsLnByb3RvdHlwZS5kb09wZW49ZnVuY3Rpb24oKXt0aGlzLnBvbGwoKX0sbC5wcm90b3R5cGUucGF1c2U9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0aGlzLnJlYWR5U3RhdGU9YHBhdXNpbmdgO2Z1bmN0aW9uIG4oKXtzKGBwYXVzZWRgKSx0LnJlYWR5U3RhdGU9YHBhdXNlZGAsZSgpfWlmKHRoaXMucG9sbGluZ3x8IXRoaXMud3JpdGFibGUpe3ZhciByPTA7dGhpcy5wb2xsaW5nJiYocyhgd2UgYXJlIGN1cnJlbnRseSBwb2xsaW5nIC0gd2FpdGluZyB0byBwYXVzZWApLHIrKyx0aGlzLm9uY2UoYHBvbGxDb21wbGV0ZWAsZnVuY3Rpb24oKXtzKGBwcmUtcGF1c2UgcG9sbGluZyBjb21wbGV0ZWApLC0tcnx8bigpfSkpLHRoaXMud3JpdGFibGV8fChzKGB3ZSBhcmUgY3VycmVudGx5IHdyaXRpbmcgLSB3YWl0aW5nIHRvIHBhdXNlYCkscisrLHRoaXMub25jZShgZHJhaW5gLGZ1bmN0aW9uKCl7cyhgcHJlLXBhdXNlIHdyaXRpbmcgY29tcGxldGVgKSwtLXJ8fG4oKX0pKX1lbHNlIG4oKX0sbC5wcm90b3R5cGUucG9sbD1mdW5jdGlvbigpe3MoYHBvbGxpbmdgKSx0aGlzLnBvbGxpbmc9ITAsdGhpcy5kb1BvbGwoKSx0aGlzLmVtaXQoYHBvbGxgKX0sbC5wcm90b3R5cGUub25EYXRhPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cyhgcG9sbGluZyBnb3QgZGF0YSAlc2AsZSksaS5kZWNvZGVQYXlsb2FkKGUsdGhpcy5zb2NrZXQuYmluYXJ5VHlwZSxmdW5jdGlvbihlLG4scil7aWYodC5yZWFkeVN0YXRlPT09YG9wZW5pbmdgJiZ0Lm9uT3BlbigpLGUudHlwZT09PWBjbG9zZWApcmV0dXJuIHQub25DbG9zZSgpLCExO3Qub25QYWNrZXQoZSl9KSx0aGlzLnJlYWR5U3RhdGUhPT1gY2xvc2VkYCYmKHRoaXMucG9sbGluZz0hMSx0aGlzLmVtaXQoYHBvbGxDb21wbGV0ZWApLHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuYD90aGlzLnBvbGwoKTpzKGBpZ25vcmluZyBwb2xsIC0gdHJhbnNwb3J0IHN0YXRlICIlcyJgLHRoaXMucmVhZHlTdGF0ZSkpfSxsLnByb3RvdHlwZS5kb0Nsb3NlPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztmdW5jdGlvbiB0KCl7cyhgd3JpdGluZyBjbG9zZSBwYWNrZXRgKSxlLndyaXRlKFt7dHlwZTpgY2xvc2VgfV0pfXRoaXMucmVhZHlTdGF0ZT09PWBvcGVuYD8ocyhgdHJhbnNwb3J0IG9wZW4gLSBjbG9zaW5nYCksdCgpKToocyhgdHJhbnNwb3J0IG5vdCBvcGVuIC0gZGVmZXJyaW5nIGNsb3NlYCksdGhpcy5vbmNlKGBvcGVuYCx0KSl9LGwucHJvdG90eXBlLndyaXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7dGhpcy53cml0YWJsZT0hMTt2YXIgbj1mdW5jdGlvbigpe3Qud3JpdGFibGU9ITAsdC5lbWl0KGBkcmFpbmApfTtpLmVuY29kZVBheWxvYWQoZSx0aGlzLnN1cHBvcnRzQmluYXJ5LGZ1bmN0aW9uKGUpe3QuZG9Xcml0ZShlLG4pfSl9LGwucHJvdG90eXBlLnVyaT1mdW5jdGlvbigpe3ZhciBlPXRoaXMucXVlcnl8fHt9LHQ9dGhpcy5zZWN1cmU/YGh0dHBzYDpgaHR0cGAsbj1gYDshMSE9PXRoaXMudGltZXN0YW1wUmVxdWVzdHMmJihlW3RoaXMudGltZXN0YW1wUGFyYW1dPW8oKSksIXRoaXMuc3VwcG9ydHNCaW5hcnkmJiFlLnNpZCYmKGUuYjY0PTEpLGU9ci5lbmNvZGUoZSksdGhpcy5wb3J0JiYodD09PWBodHRwc2AmJk51bWJlcih0aGlzLnBvcnQpIT09NDQzfHx0PT09YGh0dHBgJiZOdW1iZXIodGhpcy5wb3J0KSE9PTgwKSYmKG49YDpgK3RoaXMucG9ydCksZS5sZW5ndGgmJihlPWA/YCtlKTt2YXIgaT10aGlzLmhvc3RuYW1lLmluZGV4T2YoYDpgKSE9PS0xO3JldHVybiB0K2A6Ly9gKyhpP2BbYCt0aGlzLmhvc3RuYW1lK2BdYDp0aGlzLmhvc3RuYW1lKStuK3RoaXMucGF0aCtlfX0pKSxyYz1zKCgoZSx0KT0+e3ZhciBuPVVzKCkscj1uYygpLGk9SXMoKSxhPWVjKCksbz1GcygpKGBlbmdpbmUuaW8tY2xpZW50OnBvbGxpbmcteGhyYCkscz1IcygpO3QuZXhwb3J0cz1sLHQuZXhwb3J0cy5SZXF1ZXN0PXU7ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBsKGUpe2lmKHIuY2FsbCh0aGlzLGUpLHRoaXMucmVxdWVzdFRpbWVvdXQ9ZS5yZXF1ZXN0VGltZW91dCx0aGlzLmV4dHJhSGVhZGVycz1lLmV4dHJhSGVhZGVycyx0eXBlb2YgbG9jYXRpb248YHVgKXt2YXIgdD1sb2NhdGlvbi5wcm90b2NvbD09PWBodHRwczpgLG49bG9jYXRpb24ucG9ydDtufHw9dD80NDM6ODAsdGhpcy54ZD10eXBlb2YgbG9jYXRpb248YHVgJiZlLmhvc3RuYW1lIT09bG9jYXRpb24uaG9zdG5hbWV8fG4hPT1lLnBvcnQsdGhpcy54cz1lLnNlY3VyZSE9PXR9fWEobCxyKSxsLnByb3RvdHlwZS5zdXBwb3J0c0JpbmFyeT0hMCxsLnByb3RvdHlwZS5yZXF1ZXN0PWZ1bmN0aW9uKGUpe3JldHVybiBlfHw9e30sZS51cmk9dGhpcy51cmkoKSxlLnhkPXRoaXMueGQsZS54cz10aGlzLnhzLGUuYWdlbnQ9dGhpcy5hZ2VudHx8ITEsZS5zdXBwb3J0c0JpbmFyeT10aGlzLnN1cHBvcnRzQmluYXJ5LGUuZW5hYmxlc1hEUj10aGlzLmVuYWJsZXNYRFIsZS53aXRoQ3JlZGVudGlhbHM9dGhpcy53aXRoQ3JlZGVudGlhbHMsZS5wZng9dGhpcy5wZngsZS5rZXk9dGhpcy5rZXksZS5wYXNzcGhyYXNlPXRoaXMucGFzc3BocmFzZSxlLmNlcnQ9dGhpcy5jZXJ0LGUuY2E9dGhpcy5jYSxlLmNpcGhlcnM9dGhpcy5jaXBoZXJzLGUucmVqZWN0VW5hdXRob3JpemVkPXRoaXMucmVqZWN0VW5hdXRob3JpemVkLGUucmVxdWVzdFRpbWVvdXQ9dGhpcy5yZXF1ZXN0VGltZW91dCxlLmV4dHJhSGVhZGVycz10aGlzLmV4dHJhSGVhZGVycyxuZXcgdShlKX0sbC5wcm90b3R5cGUuZG9Xcml0ZT1mdW5jdGlvbihlLHQpe3ZhciBuPXR5cGVvZiBlIT1gc3RyaW5nYCYmZSE9PXZvaWQgMCxyPXRoaXMucmVxdWVzdCh7bWV0aG9kOmBQT1NUYCxkYXRhOmUsaXNCaW5hcnk6bn0pLGk9dGhpcztyLm9uKGBzdWNjZXNzYCx0KSxyLm9uKGBlcnJvcmAsZnVuY3Rpb24oZSl7aS5vbkVycm9yKGB4aHIgcG9zdCBlcnJvcmAsZSl9KSx0aGlzLnNlbmRYaHI9cn0sbC5wcm90b3R5cGUuZG9Qb2xsPWZ1bmN0aW9uKCl7byhgeGhyIHBvbGxgKTt2YXIgZT10aGlzLnJlcXVlc3QoKSx0PXRoaXM7ZS5vbihgZGF0YWAsZnVuY3Rpb24oZSl7dC5vbkRhdGEoZSl9KSxlLm9uKGBlcnJvcmAsZnVuY3Rpb24oZSl7dC5vbkVycm9yKGB4aHIgcG9sbCBlcnJvcmAsZSl9KSx0aGlzLnBvbGxYaHI9ZX07ZnVuY3Rpb24gdShlKXt0aGlzLm1ldGhvZD1lLm1ldGhvZHx8YEdFVGAsdGhpcy51cmk9ZS51cmksdGhpcy54ZD0hIWUueGQsdGhpcy54cz0hIWUueHMsdGhpcy5hc3luYz0hMSE9PWUuYXN5bmMsdGhpcy5kYXRhPWUuZGF0YT09PXZvaWQgMD9udWxsOmUuZGF0YSx0aGlzLmFnZW50PWUuYWdlbnQsdGhpcy5pc0JpbmFyeT1lLmlzQmluYXJ5LHRoaXMuc3VwcG9ydHNCaW5hcnk9ZS5zdXBwb3J0c0JpbmFyeSx0aGlzLmVuYWJsZXNYRFI9ZS5lbmFibGVzWERSLHRoaXMud2l0aENyZWRlbnRpYWxzPWUud2l0aENyZWRlbnRpYWxzLHRoaXMucmVxdWVzdFRpbWVvdXQ9ZS5yZXF1ZXN0VGltZW91dCx0aGlzLnBmeD1lLnBmeCx0aGlzLmtleT1lLmtleSx0aGlzLnBhc3NwaHJhc2U9ZS5wYXNzcGhyYXNlLHRoaXMuY2VydD1lLmNlcnQsdGhpcy5jYT1lLmNhLHRoaXMuY2lwaGVycz1lLmNpcGhlcnMsdGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ9ZS5yZWplY3RVbmF1dGhvcml6ZWQsdGhpcy5leHRyYUhlYWRlcnM9ZS5leHRyYUhlYWRlcnMsdGhpcy5jcmVhdGUoKX1pZihpKHUucHJvdG90eXBlKSx1LnByb3RvdHlwZS5jcmVhdGU9ZnVuY3Rpb24oKXt2YXIgZT17YWdlbnQ6dGhpcy5hZ2VudCx4ZG9tYWluOnRoaXMueGQseHNjaGVtZTp0aGlzLnhzLGVuYWJsZXNYRFI6dGhpcy5lbmFibGVzWERSfTtlLnBmeD10aGlzLnBmeCxlLmtleT10aGlzLmtleSxlLnBhc3NwaHJhc2U9dGhpcy5wYXNzcGhyYXNlLGUuY2VydD10aGlzLmNlcnQsZS5jYT10aGlzLmNhLGUuY2lwaGVycz10aGlzLmNpcGhlcnMsZS5yZWplY3RVbmF1dGhvcml6ZWQ9dGhpcy5yZWplY3RVbmF1dGhvcml6ZWQ7dmFyIHQ9dGhpcy54aHI9bmV3IG4oZSkscj10aGlzO3RyeXtvKGB4aHIgb3BlbiAlczogJXNgLHRoaXMubWV0aG9kLHRoaXMudXJpKSx0Lm9wZW4odGhpcy5tZXRob2QsdGhpcy51cmksdGhpcy5hc3luYyk7dHJ5e2lmKHRoaXMuZXh0cmFIZWFkZXJzKWZvcih2YXIgaSBpbiB0LnNldERpc2FibGVIZWFkZXJDaGVjayYmdC5zZXREaXNhYmxlSGVhZGVyQ2hlY2soITApLHRoaXMuZXh0cmFIZWFkZXJzKXRoaXMuZXh0cmFIZWFkZXJzLmhhc093blByb3BlcnR5KGkpJiZ0LnNldFJlcXVlc3RIZWFkZXIoaSx0aGlzLmV4dHJhSGVhZGVyc1tpXSl9Y2F0Y2h7fWlmKHRoaXMubWV0aG9kPT09YFBPU1RgKXRyeXt0aGlzLmlzQmluYXJ5P3Quc2V0UmVxdWVzdEhlYWRlcihgQ29udGVudC10eXBlYCxgYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtYCk6dC5zZXRSZXF1ZXN0SGVhZGVyKGBDb250ZW50LXR5cGVgLGB0ZXh0L3BsYWluO2NoYXJzZXQ9VVRGLThgKX1jYXRjaHt9dHJ5e3Quc2V0UmVxdWVzdEhlYWRlcihgQWNjZXB0YCxgKi8qYCl9Y2F0Y2h7fWB3aXRoQ3JlZGVudGlhbHNgaW4gdCYmKHQud2l0aENyZWRlbnRpYWxzPXRoaXMud2l0aENyZWRlbnRpYWxzKSx0aGlzLnJlcXVlc3RUaW1lb3V0JiYodC50aW1lb3V0PXRoaXMucmVxdWVzdFRpbWVvdXQpLHRoaXMuaGFzWERSKCk/KHQub25sb2FkPWZ1bmN0aW9uKCl7ci5vbkxvYWQoKX0sdC5vbmVycm9yPWZ1bmN0aW9uKCl7ci5vbkVycm9yKHQucmVzcG9uc2VUZXh0KX0pOnQub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYodC5yZWFkeVN0YXRlPT09Mil0cnl7dmFyIGU9dC5nZXRSZXNwb25zZUhlYWRlcihgQ29udGVudC1UeXBlYCk7KHIuc3VwcG9ydHNCaW5hcnkmJmU9PT1gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtYHx8ZT09PWBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07IGNoYXJzZXQ9VVRGLThgKSYmKHQucmVzcG9uc2VUeXBlPWBhcnJheWJ1ZmZlcmApfWNhdGNoe310LnJlYWR5U3RhdGU9PT00JiYodC5zdGF0dXM9PT0yMDB8fHQuc3RhdHVzPT09MTIyMz9yLm9uTG9hZCgpOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyLm9uRXJyb3IodHlwZW9mIHQuc3RhdHVzPT1gbnVtYmVyYD90LnN0YXR1czowKX0sMCkpfSxvKGB4aHIgZGF0YSAlc2AsdGhpcy5kYXRhKSx0LnNlbmQodGhpcy5kYXRhKX1jYXRjaChlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5vbkVycm9yKGUpfSwwKTtyZXR1cm59dHlwZW9mIGRvY3VtZW50PGB1YCYmKHRoaXMuaW5kZXg9dS5yZXF1ZXN0c0NvdW50KyssdS5yZXF1ZXN0c1t0aGlzLmluZGV4XT10aGlzKX0sdS5wcm90b3R5cGUub25TdWNjZXNzPWZ1bmN0aW9uKCl7dGhpcy5lbWl0KGBzdWNjZXNzYCksdGhpcy5jbGVhbnVwKCl9LHUucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihlKXt0aGlzLmVtaXQoYGRhdGFgLGUpLHRoaXMub25TdWNjZXNzKCl9LHUucHJvdG90eXBlLm9uRXJyb3I9ZnVuY3Rpb24oZSl7dGhpcy5lbWl0KGBlcnJvcmAsZSksdGhpcy5jbGVhbnVwKCEwKX0sdS5wcm90b3R5cGUuY2xlYW51cD1mdW5jdGlvbihlKXtpZighKHRoaXMueGhyPT09dm9pZCAwfHx0aGlzLnhocj09PW51bGwpKXtpZih0aGlzLmhhc1hEUigpP3RoaXMueGhyLm9ubG9hZD10aGlzLnhoci5vbmVycm9yPWM6dGhpcy54aHIub25yZWFkeXN0YXRlY2hhbmdlPWMsZSl0cnl7dGhpcy54aHIuYWJvcnQoKX1jYXRjaHt9dHlwZW9mIGRvY3VtZW50PGB1YCYmZGVsZXRlIHUucmVxdWVzdHNbdGhpcy5pbmRleF0sdGhpcy54aHI9bnVsbH19LHUucHJvdG90eXBlLm9uTG9hZD1mdW5jdGlvbigpe3ZhciBlO3RyeXt2YXIgdDt0cnl7dD10aGlzLnhoci5nZXRSZXNwb25zZUhlYWRlcihgQ29udGVudC1UeXBlYCl9Y2F0Y2h7fWU9KHQ9PT1gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtYHx8dD09PWBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07IGNoYXJzZXQ9VVRGLThgKSYmdGhpcy54aHIucmVzcG9uc2V8fHRoaXMueGhyLnJlc3BvbnNlVGV4dH1jYXRjaChlKXt0aGlzLm9uRXJyb3IoZSl9ZSE9bnVsbCYmdGhpcy5vbkRhdGEoZSl9LHUucHJvdG90eXBlLmhhc1hEUj1mdW5jdGlvbigpe3JldHVybiB0eXBlb2YgWERvbWFpblJlcXVlc3Q8YHVgJiYhdGhpcy54cyYmdGhpcy5lbmFibGVzWERSfSx1LnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpe3RoaXMuY2xlYW51cCgpfSx1LnJlcXVlc3RzQ291bnQ9MCx1LnJlcXVlc3RzPXt9LHR5cGVvZiBkb2N1bWVudDxgdWApe2lmKHR5cGVvZiBhdHRhY2hFdmVudD09YGZ1bmN0aW9uYClhdHRhY2hFdmVudChgb251bmxvYWRgLGYpO2Vsc2UgaWYodHlwZW9mIGFkZEV2ZW50TGlzdGVuZXI9PWBmdW5jdGlvbmApe3ZhciBkPWBvbnBhZ2VoaWRlYGluIHM/YHBhZ2VoaWRlYDpgdW5sb2FkYDthZGRFdmVudExpc3RlbmVyKGQsZiwhMSl9fWZ1bmN0aW9uIGYoKXtmb3IodmFyIGUgaW4gdS5yZXF1ZXN0cyl1LnJlcXVlc3RzLmhhc093blByb3BlcnR5KGUpJiZ1LnJlcXVlc3RzW2VdLmFib3J0KCl9fSkpLGljPXMoKChlLHQpPT57dmFyIG49bmMoKSxyPWVjKCksaT1IcygpO3QuZXhwb3J0cz1sO3ZhciBhPS9cbi9nLG89L1xcbi9nLHM7ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBsKGUpe24uY2FsbCh0aGlzLGUpLHRoaXMucXVlcnk9dGhpcy5xdWVyeXx8e30sc3x8PWkuX19fZWlvPWkuX19fZWlvfHxbXSx0aGlzLmluZGV4PXMubGVuZ3RoO3ZhciB0PXRoaXM7cy5wdXNoKGZ1bmN0aW9uKGUpe3Qub25EYXRhKGUpfSksdGhpcy5xdWVyeS5qPXRoaXMuaW5kZXgsdHlwZW9mIGFkZEV2ZW50TGlzdGVuZXI9PWBmdW5jdGlvbmAmJmFkZEV2ZW50TGlzdGVuZXIoYGJlZm9yZXVubG9hZGAsZnVuY3Rpb24oKXt0LnNjcmlwdCYmKHQuc2NyaXB0Lm9uZXJyb3I9Yyl9LCExKX1yKGwsbiksbC5wcm90b3R5cGUuc3VwcG9ydHNCaW5hcnk9ITEsbC5wcm90b3R5cGUuZG9DbG9zZT1mdW5jdGlvbigpe3RoaXMuc2NyaXB0JiY9KHRoaXMuc2NyaXB0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5zY3JpcHQpLG51bGwpLHRoaXMuZm9ybSYmKHRoaXMuZm9ybS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMuZm9ybSksdGhpcy5mb3JtPW51bGwsdGhpcy5pZnJhbWU9bnVsbCksbi5wcm90b3R5cGUuZG9DbG9zZS5jYWxsKHRoaXMpfSxsLnByb3RvdHlwZS5kb1BvbGw9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgc2NyaXB0YCk7dGhpcy5zY3JpcHQmJj0odGhpcy5zY3JpcHQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLnNjcmlwdCksbnVsbCksdC5hc3luYz0hMCx0LnNyYz10aGlzLnVyaSgpLHQub25lcnJvcj1mdW5jdGlvbih0KXtlLm9uRXJyb3IoYGpzb25wIHBvbGwgZXJyb3JgLHQpfTt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShgc2NyaXB0YClbMF07bj9uLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHQsbik6KGRvY3VtZW50LmhlYWR8fGRvY3VtZW50LmJvZHkpLmFwcGVuZENoaWxkKHQpLHRoaXMuc2NyaXB0PXQsdHlwZW9mIG5hdmlnYXRvcjxgdWAmJi9nZWNrby9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGBpZnJhbWVgKTtkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZSl9LDEwMCl9LGwucHJvdG90eXBlLmRvV3JpdGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzO2lmKCF0aGlzLmZvcm0pe3ZhciByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYGZvcm1gKSxpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYHRleHRhcmVhYCkscz10aGlzLmlmcmFtZUlkPWBlaW9faWZyYW1lX2ArdGhpcy5pbmRleCxjO3IuY2xhc3NOYW1lPWBzb2NrZXRpb2Asci5zdHlsZS5wb3NpdGlvbj1gYWJzb2x1dGVgLHIuc3R5bGUudG9wPWAtMTAwMHB4YCxyLnN0eWxlLmxlZnQ9YC0xMDAwcHhgLHIudGFyZ2V0PXMsci5tZXRob2Q9YFBPU1RgLHIuc2V0QXR0cmlidXRlKGBhY2NlcHQtY2hhcnNldGAsYHV0Zi04YCksaS5uYW1lPWBkYCxyLmFwcGVuZENoaWxkKGkpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQociksdGhpcy5mb3JtPXIsdGhpcy5hcmVhPWl9dGhpcy5mb3JtLmFjdGlvbj10aGlzLnVyaSgpO2Z1bmN0aW9uIGwoKXt1KCksdCgpfWZ1bmN0aW9uIHUoKXtpZihuLmlmcmFtZSl0cnl7bi5mb3JtLnJlbW92ZUNoaWxkKG4uaWZyYW1lKX1jYXRjaChlKXtuLm9uRXJyb3IoYGpzb25wIHBvbGxpbmcgaWZyYW1lIHJlbW92YWwgZXJyb3JgLGUpfXRyeXt2YXIgZT1gPGlmcmFtZSBzcmM9ImphdmFzY3JpcHQ6MCIgbmFtZT0iYCtuLmlmcmFtZUlkK2AiPmA7Yz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGUpfWNhdGNoe2M9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgaWZyYW1lYCksYy5uYW1lPW4uaWZyYW1lSWQsYy5zcmM9YGphdmFzY3JpcHQ6MGB9Yy5pZD1uLmlmcmFtZUlkLG4uZm9ybS5hcHBlbmRDaGlsZChjKSxuLmlmcmFtZT1jfXUoKSxlPWUucmVwbGFjZShvLGBcXApgKSx0aGlzLmFyZWEudmFsdWU9ZS5yZXBsYWNlKGEsYFxcbmApO3RyeXt0aGlzLmZvcm0uc3VibWl0KCl9Y2F0Y2h7fXRoaXMuaWZyYW1lLmF0dGFjaEV2ZW50P3RoaXMuaWZyYW1lLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe24uaWZyYW1lLnJlYWR5U3RhdGU9PT1gY29tcGxldGVgJiZsKCl9OnRoaXMuaWZyYW1lLm9ubG9hZD1sfX0pKSxhYz1zKCgoZSx0KT0+e3QuZXhwb3J0cz17fX0pKSxvYz1zKCgoZSx0KT0+e3ZhciBuPVFzKCkscj1acygpLGk9JHMoKSxhPWVjKCksbz10YygpLHM9RnMoKShgZW5naW5lLmlvLWNsaWVudDp3ZWJzb2NrZXRgKSxjLGw7aWYodHlwZW9mIFdlYlNvY2tldDxgdWA/Yz1XZWJTb2NrZXQ6dHlwZW9mIHNlbGY8YHVgJiYoYz1zZWxmLldlYlNvY2tldHx8c2VsZi5Nb3pXZWJTb2NrZXQpLHR5cGVvZiB3aW5kb3c+YHVgKXRyeXtsPWFjKCl9Y2F0Y2h7fXZhciB1PWN8fGw7dC5leHBvcnRzPWQ7ZnVuY3Rpb24gZChlKXtlJiZlLmZvcmNlQmFzZTY0JiYodGhpcy5zdXBwb3J0c0JpbmFyeT0hMSksdGhpcy5wZXJNZXNzYWdlRGVmbGF0ZT1lLnBlck1lc3NhZ2VEZWZsYXRlLHRoaXMudXNpbmdCcm93c2VyV2ViU29ja2V0PWMmJiFlLmZvcmNlTm9kZSx0aGlzLnByb3RvY29scz1lLnByb3RvY29scyx0aGlzLnVzaW5nQnJvd3NlcldlYlNvY2tldHx8KHU9bCksbi5jYWxsKHRoaXMsZSl9YShkLG4pLGQucHJvdG90eXBlLm5hbWU9YHdlYnNvY2tldGAsZC5wcm90b3R5cGUuc3VwcG9ydHNCaW5hcnk9ITAsZC5wcm90b3R5cGUuZG9PcGVuPWZ1bmN0aW9uKCl7aWYodGhpcy5jaGVjaygpKXt2YXIgZT10aGlzLnVyaSgpLHQ9dGhpcy5wcm90b2NvbHMsbj17fTt0aGlzLmlzUmVhY3ROYXRpdmV8fChuLmFnZW50PXRoaXMuYWdlbnQsbi5wZXJNZXNzYWdlRGVmbGF0ZT10aGlzLnBlck1lc3NhZ2VEZWZsYXRlLG4ucGZ4PXRoaXMucGZ4LG4ua2V5PXRoaXMua2V5LG4ucGFzc3BocmFzZT10aGlzLnBhc3NwaHJhc2Usbi5jZXJ0PXRoaXMuY2VydCxuLmNhPXRoaXMuY2Esbi5jaXBoZXJzPXRoaXMuY2lwaGVycyxuLnJlamVjdFVuYXV0aG9yaXplZD10aGlzLnJlamVjdFVuYXV0aG9yaXplZCksdGhpcy5leHRyYUhlYWRlcnMmJihuLmhlYWRlcnM9dGhpcy5leHRyYUhlYWRlcnMpLHRoaXMubG9jYWxBZGRyZXNzJiYobi5sb2NhbEFkZHJlc3M9dGhpcy5sb2NhbEFkZHJlc3MpO3RyeXt0aGlzLndzPXRoaXMudXNpbmdCcm93c2VyV2ViU29ja2V0JiYhdGhpcy5pc1JlYWN0TmF0aXZlP3Q/bmV3IHUoZSx0KTpuZXcgdShlKTpuZXcgdShlLHQsbil9Y2F0Y2goZSl7cmV0dXJuIHRoaXMuZW1pdChgZXJyb3JgLGUpfXRoaXMud3MuYmluYXJ5VHlwZT09PXZvaWQgMCYmKHRoaXMuc3VwcG9ydHNCaW5hcnk9ITEpLHRoaXMud3Muc3VwcG9ydHMmJnRoaXMud3Muc3VwcG9ydHMuYmluYXJ5Pyh0aGlzLnN1cHBvcnRzQmluYXJ5PSEwLHRoaXMud3MuYmluYXJ5VHlwZT1gbm9kZWJ1ZmZlcmApOnRoaXMud3MuYmluYXJ5VHlwZT1gYXJyYXlidWZmZXJgLHRoaXMuYWRkRXZlbnRMaXN0ZW5lcnMoKX19LGQucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXJzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLndzLm9ub3Blbj1mdW5jdGlvbigpe2Uub25PcGVuKCl9LHRoaXMud3Mub25jbG9zZT1mdW5jdGlvbigpe2Uub25DbG9zZSgpfSx0aGlzLndzLm9ubWVzc2FnZT1mdW5jdGlvbih0KXtlLm9uRGF0YSh0LmRhdGEpfSx0aGlzLndzLm9uZXJyb3I9ZnVuY3Rpb24odCl7ZS5vbkVycm9yKGB3ZWJzb2NrZXQgZXJyb3JgLHQpfX0sZC5wcm90b3R5cGUud3JpdGU9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpczt0aGlzLndyaXRhYmxlPSExO2Zvcih2YXIgbj1lLmxlbmd0aCxpPTAsYT1uO2k8YTtpKyspKGZ1bmN0aW9uKGUpe3IuZW5jb2RlUGFja2V0KGUsdC5zdXBwb3J0c0JpbmFyeSxmdW5jdGlvbihyKXtpZighdC51c2luZ0Jyb3dzZXJXZWJTb2NrZXQpe3ZhciBpPXt9O2Uub3B0aW9ucyYmKGkuY29tcHJlc3M9ZS5vcHRpb25zLmNvbXByZXNzKSx0LnBlck1lc3NhZ2VEZWZsYXRlJiYodHlwZW9mIHI9PWBzdHJpbmdgP0J1ZmZlci5ieXRlTGVuZ3RoKHIpOnIubGVuZ3RoKTx0LnBlck1lc3NhZ2VEZWZsYXRlLnRocmVzaG9sZCYmKGkuY29tcHJlc3M9ITEpfXRyeXt0LnVzaW5nQnJvd3NlcldlYlNvY2tldD90LndzLnNlbmQocik6dC53cy5zZW5kKHIsaSl9Y2F0Y2h7cyhgd2Vic29ja2V0IGNsb3NlZCBiZWZvcmUgb25jbG9zZSBldmVudGApfS0tbnx8bygpfSl9KShlW2ldKTtmdW5jdGlvbiBvKCl7dC5lbWl0KGBmbHVzaGApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LndyaXRhYmxlPSEwLHQuZW1pdChgZHJhaW5gKX0sMCl9fSxkLnByb3RvdHlwZS5vbkNsb3NlPWZ1bmN0aW9uKCl7bi5wcm90b3R5cGUub25DbG9zZS5jYWxsKHRoaXMpfSxkLnByb3RvdHlwZS5kb0Nsb3NlPWZ1bmN0aW9uKCl7dGhpcy53cyE9PXZvaWQgMCYmdGhpcy53cy5jbG9zZSgpfSxkLnByb3RvdHlwZS51cmk9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLnF1ZXJ5fHx7fSx0PXRoaXMuc2VjdXJlP2B3c3NgOmB3c2Asbj1gYDt0aGlzLnBvcnQmJih0PT09YHdzc2AmJk51bWJlcih0aGlzLnBvcnQpIT09NDQzfHx0PT09YHdzYCYmTnVtYmVyKHRoaXMucG9ydCkhPT04MCkmJihuPWA6YCt0aGlzLnBvcnQpLHRoaXMudGltZXN0YW1wUmVxdWVzdHMmJihlW3RoaXMudGltZXN0YW1wUGFyYW1dPW8oKSksdGhpcy5zdXBwb3J0c0JpbmFyeXx8KGUuYjY0PTEpLGU9aS5lbmNvZGUoZSksZS5sZW5ndGgmJihlPWA/YCtlKTt2YXIgcj10aGlzLmhvc3RuYW1lLmluZGV4T2YoYDpgKSE9PS0xO3JldHVybiB0K2A6Ly9gKyhyP2BbYCt0aGlzLmhvc3RuYW1lK2BdYDp0aGlzLmhvc3RuYW1lKStuK3RoaXMucGF0aCtlfSxkLnByb3RvdHlwZS5jaGVjaz1mdW5jdGlvbigpe3JldHVybiEhdSYmIShgX19pbml0aWFsaXplYGluIHUmJnRoaXMubmFtZT09PWQucHJvdG90eXBlLm5hbWUpfX0pKSxzYz1zKChlPT57dmFyIHQ9VXMoKSxuPXJjKCkscj1pYygpLGk9b2MoKTtlLnBvbGxpbmc9YSxlLndlYnNvY2tldD1pO2Z1bmN0aW9uIGEoZSl7dmFyIGksYT0hMSxvPSExLHM9ITEhPT1lLmpzb25wO2lmKHR5cGVvZiBsb2NhdGlvbjxgdWApe3ZhciBjPWxvY2F0aW9uLnByb3RvY29sPT09YGh0dHBzOmAsbD1sb2NhdGlvbi5wb3J0O2x8fD1jPzQ0Mzo4MCxhPWUuaG9zdG5hbWUhPT1sb2NhdGlvbi5ob3N0bmFtZXx8bCE9PWUucG9ydCxvPWUuc2VjdXJlIT09Y31pZihlLnhkb21haW49YSxlLnhzY2hlbWU9byxpPW5ldyB0KGUpLGBvcGVuYGluIGkmJiFlLmZvcmNlSlNPTlApcmV0dXJuIG5ldyBuKGUpO2lmKCFzKXRocm93IEVycm9yKGBKU09OUCBkaXNhYmxlZGApO3JldHVybiBuZXcgcihlKX19KSksY2M9cygoKGUsdCk9Pnt2YXIgbj1bXS5pbmRleE9mO3QuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKG4pcmV0dXJuIGUuaW5kZXhPZih0KTtmb3IodmFyIHI9MDtyPGUubGVuZ3RoOysrcilpZihlW3JdPT09dClyZXR1cm4gcjtyZXR1cm4tMX19KSksbGM9cygoKGUsdCk9Pnt2YXIgbj0vXig/Oig/IVteOkBdKzpbXjpAXC9dKkApKGh0dHB8aHR0cHN8d3N8d3NzKTpcL1wvKT8oKD86KChbXjpAXSopKD86OihbXjpAXSopKT8pP0ApPygoPzpbYS1mMC05XXswLDR9Oil7Miw3fVthLWYwLTldezAsNH18W146XC8/I10qKSg/OjooXGQqKSk/KSgoKFwvKD86W14/I10oPyFbXj8jXC9dKlwuW14/I1wvLl0rKD86Wz8jXXwkKSkpKlwvPyk/KFtePyNcL10qKSkoPzpcPyhbXiNdKikpPyg/OiMoLiopKT8pLyxyPVtgc291cmNlYCxgcHJvdG9jb2xgLGBhdXRob3JpdHlgLGB1c2VySW5mb2AsYHVzZXJgLGBwYXNzd29yZGAsYGhvc3RgLGBwb3J0YCxgcmVsYXRpdmVgLGBwYXRoYCxgZGlyZWN0b3J5YCxgZmlsZWAsYHF1ZXJ5YCxgYW5jaG9yYF07dC5leHBvcnRzPWZ1bmN0aW9uKGUpe3ZhciB0PWUsbz1lLmluZGV4T2YoYFtgKSxzPWUuaW5kZXhPZihgXWApO28hPS0xJiZzIT0tMSYmKGU9ZS5zdWJzdHJpbmcoMCxvKStlLnN1YnN0cmluZyhvLHMpLnJlcGxhY2UoLzovZyxgO2ApK2Uuc3Vic3RyaW5nKHMsZS5sZW5ndGgpKTtmb3IodmFyIGM9bi5leGVjKGV8fGBgKSxsPXt9LHU9MTQ7dS0tOylsW3JbdV1dPWNbdV18fGBgO3JldHVybiBvIT0tMSYmcyE9LTEmJihsLnNvdXJjZT10LGwuaG9zdD1sLmhvc3Quc3Vic3RyaW5nKDEsbC5ob3N0Lmxlbmd0aC0xKS5yZXBsYWNlKC87L2csYDpgKSxsLmF1dGhvcml0eT1sLmF1dGhvcml0eS5yZXBsYWNlKGBbYCxgYCkucmVwbGFjZShgXWAsYGApLnJlcGxhY2UoLzsvZyxgOmApLGwuaXB2NnVyaT0hMCksbC5wYXRoTmFtZXM9aShsLGwucGF0aCksbC5xdWVyeUtleT1hKGwsbC5xdWVyeSksbH07ZnVuY3Rpb24gaShlLHQpe3ZhciBuPXQucmVwbGFjZSgvXC97Miw5fS9nLGAvYCkuc3BsaXQoYC9gKTtyZXR1cm4odC5zdWJzdHIoMCwxKT09YC9gfHx0Lmxlbmd0aD09PTApJiZuLnNwbGljZSgwLDEpLHQuc3Vic3RyKHQubGVuZ3RoLTEsMSk9PWAvYCYmbi5zcGxpY2Uobi5sZW5ndGgtMSwxKSxufWZ1bmN0aW9uIGEoZSx0KXt2YXIgbj17fTtyZXR1cm4gdC5yZXBsYWNlKC8oPzpefCYpKFteJj1dKik9PyhbXiZdKikvZyxmdW5jdGlvbihlLHQscil7dCYmKG5bdF09cil9KSxufX0pKSx1Yz1zKCgoZSx0KT0+e3ZhciBuPXNjKCkscj1JcygpLGk9RnMoKShgZW5naW5lLmlvLWNsaWVudDpzb2NrZXRgKSxhPWNjKCksbz1acygpLHM9bGMoKSxjPSRzKCk7dC5leHBvcnRzPWw7ZnVuY3Rpb24gbChlLHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGwpKXJldHVybiBuZXcgbChlLHQpO3R8fD17fSxlJiZ0eXBlb2YgZT09YG9iamVjdGAmJih0PWUsZT1udWxsKSxlPyhlPXMoZSksdC5ob3N0bmFtZT1lLmhvc3QsdC5zZWN1cmU9ZS5wcm90b2NvbD09PWBodHRwc2B8fGUucHJvdG9jb2w9PT1gd3NzYCx0LnBvcnQ9ZS5wb3J0LGUucXVlcnkmJih0LnF1ZXJ5PWUucXVlcnkpKTp0Lmhvc3QmJih0Lmhvc3RuYW1lPXModC5ob3N0KS5ob3N0KSx0aGlzLnNlY3VyZT10LnNlY3VyZT09bnVsbD90eXBlb2YgbG9jYXRpb248YHVgJiZsb2NhdGlvbi5wcm90b2NvbD09PWBodHRwczpgOnQuc2VjdXJlLHQuaG9zdG5hbWUmJiF0LnBvcnQmJih0LnBvcnQ9dGhpcy5zZWN1cmU/YDQ0M2A6YDgwYCksdGhpcy5hZ2VudD10LmFnZW50fHwhMSx0aGlzLmhvc3RuYW1lPXQuaG9zdG5hbWV8fCh0eXBlb2YgbG9jYXRpb248YHVgP2xvY2F0aW9uLmhvc3RuYW1lOmBsb2NhbGhvc3RgKSx0aGlzLnBvcnQ9dC5wb3J0fHwodHlwZW9mIGxvY2F0aW9uPGB1YCYmbG9jYXRpb24ucG9ydD9sb2NhdGlvbi5wb3J0OnRoaXMuc2VjdXJlPzQ0Mzo4MCksdGhpcy5xdWVyeT10LnF1ZXJ5fHx7fSx0eXBlb2YgdGhpcy5xdWVyeT09YHN0cmluZ2AmJih0aGlzLnF1ZXJ5PWMuZGVjb2RlKHRoaXMucXVlcnkpKSx0aGlzLnVwZ3JhZGU9ITEhPT10LnVwZ3JhZGUsdGhpcy5wYXRoPSh0LnBhdGh8fGAvZW5naW5lLmlvYCkucmVwbGFjZSgvXC8kLyxgYCkrYC9gLHRoaXMuZm9yY2VKU09OUD0hIXQuZm9yY2VKU09OUCx0aGlzLmpzb25wPSExIT09dC5qc29ucCx0aGlzLmZvcmNlQmFzZTY0PSEhdC5mb3JjZUJhc2U2NCx0aGlzLmVuYWJsZXNYRFI9ISF0LmVuYWJsZXNYRFIsdGhpcy53aXRoQ3JlZGVudGlhbHM9ITEhPT10LndpdGhDcmVkZW50aWFscyx0aGlzLnRpbWVzdGFtcFBhcmFtPXQudGltZXN0YW1wUGFyYW18fGB0YCx0aGlzLnRpbWVzdGFtcFJlcXVlc3RzPXQudGltZXN0YW1wUmVxdWVzdHMsdGhpcy50cmFuc3BvcnRzPXQudHJhbnNwb3J0c3x8W2Bwb2xsaW5nYCxgd2Vic29ja2V0YF0sdGhpcy50cmFuc3BvcnRPcHRpb25zPXQudHJhbnNwb3J0T3B0aW9uc3x8e30sdGhpcy5yZWFkeVN0YXRlPWBgLHRoaXMud3JpdGVCdWZmZXI9W10sdGhpcy5wcmV2QnVmZmVyTGVuPTAsdGhpcy5wb2xpY3lQb3J0PXQucG9saWN5UG9ydHx8ODQzLHRoaXMucmVtZW1iZXJVcGdyYWRlPXQucmVtZW1iZXJVcGdyYWRlfHwhMSx0aGlzLmJpbmFyeVR5cGU9bnVsbCx0aGlzLm9ubHlCaW5hcnlVcGdyYWRlcz10Lm9ubHlCaW5hcnlVcGdyYWRlcyx0aGlzLnBlck1lc3NhZ2VEZWZsYXRlPSExPT09dC5wZXJNZXNzYWdlRGVmbGF0ZT8hMTp0LnBlck1lc3NhZ2VEZWZsYXRlfHx7fSwhMD09PXRoaXMucGVyTWVzc2FnZURlZmxhdGUmJih0aGlzLnBlck1lc3NhZ2VEZWZsYXRlPXt9KSx0aGlzLnBlck1lc3NhZ2VEZWZsYXRlJiZ0aGlzLnBlck1lc3NhZ2VEZWZsYXRlLnRocmVzaG9sZD09bnVsbCYmKHRoaXMucGVyTWVzc2FnZURlZmxhdGUudGhyZXNob2xkPTEwMjQpLHRoaXMucGZ4PXQucGZ4fHxudWxsLHRoaXMua2V5PXQua2V5fHxudWxsLHRoaXMucGFzc3BocmFzZT10LnBhc3NwaHJhc2V8fG51bGwsdGhpcy5jZXJ0PXQuY2VydHx8bnVsbCx0aGlzLmNhPXQuY2F8fG51bGwsdGhpcy5jaXBoZXJzPXQuY2lwaGVyc3x8bnVsbCx0aGlzLnJlamVjdFVuYXV0aG9yaXplZD10LnJlamVjdFVuYXV0aG9yaXplZD09PXZvaWQgMD8hMDp0LnJlamVjdFVuYXV0aG9yaXplZCx0aGlzLmZvcmNlTm9kZT0hIXQuZm9yY2VOb2RlLHRoaXMuaXNSZWFjdE5hdGl2ZT10eXBlb2YgbmF2aWdhdG9yPGB1YCYmdHlwZW9mIG5hdmlnYXRvci5wcm9kdWN0PT1gc3RyaW5nYCYmbmF2aWdhdG9yLnByb2R1Y3QudG9Mb3dlckNhc2UoKT09PWByZWFjdG5hdGl2ZWAsKHR5cGVvZiBzZWxmPmB1YHx8dGhpcy5pc1JlYWN0TmF0aXZlKSYmKHQuZXh0cmFIZWFkZXJzJiZPYmplY3Qua2V5cyh0LmV4dHJhSGVhZGVycykubGVuZ3RoPjAmJih0aGlzLmV4dHJhSGVhZGVycz10LmV4dHJhSGVhZGVycyksdC5sb2NhbEFkZHJlc3MmJih0aGlzLmxvY2FsQWRkcmVzcz10LmxvY2FsQWRkcmVzcykpLHRoaXMuaWQ9bnVsbCx0aGlzLnVwZ3JhZGVzPW51bGwsdGhpcy5waW5nSW50ZXJ2YWw9bnVsbCx0aGlzLnBpbmdUaW1lb3V0PW51bGwsdGhpcy5waW5nSW50ZXJ2YWxUaW1lcj1udWxsLHRoaXMucGluZ1RpbWVvdXRUaW1lcj1udWxsLHRoaXMub3BlbigpfWwucHJpb3JXZWJzb2NrZXRTdWNjZXNzPSExLHIobC5wcm90b3R5cGUpLGwucHJvdG9jb2w9by5wcm90b2NvbCxsLlNvY2tldD1sLGwuVHJhbnNwb3J0PVFzKCksbC50cmFuc3BvcnRzPXNjKCksbC5wYXJzZXI9WnMoKSxsLnByb3RvdHlwZS5jcmVhdGVUcmFuc3BvcnQ9ZnVuY3Rpb24oZSl7aShgY3JlYXRpbmcgdHJhbnNwb3J0ICIlcyJgLGUpO3ZhciB0PXUodGhpcy5xdWVyeSk7dC5FSU89by5wcm90b2NvbCx0LnRyYW5zcG9ydD1lO3ZhciByPXRoaXMudHJhbnNwb3J0T3B0aW9uc1tlXXx8e307cmV0dXJuIHRoaXMuaWQmJih0LnNpZD10aGlzLmlkKSxuZXcgbltlXSh7cXVlcnk6dCxzb2NrZXQ6dGhpcyxhZ2VudDpyLmFnZW50fHx0aGlzLmFnZW50LGhvc3RuYW1lOnIuaG9zdG5hbWV8fHRoaXMuaG9zdG5hbWUscG9ydDpyLnBvcnR8fHRoaXMucG9ydCxzZWN1cmU6ci5zZWN1cmV8fHRoaXMuc2VjdXJlLHBhdGg6ci5wYXRofHx0aGlzLnBhdGgsZm9yY2VKU09OUDpyLmZvcmNlSlNPTlB8fHRoaXMuZm9yY2VKU09OUCxqc29ucDpyLmpzb25wfHx0aGlzLmpzb25wLGZvcmNlQmFzZTY0OnIuZm9yY2VCYXNlNjR8fHRoaXMuZm9yY2VCYXNlNjQsZW5hYmxlc1hEUjpyLmVuYWJsZXNYRFJ8fHRoaXMuZW5hYmxlc1hEUix3aXRoQ3JlZGVudGlhbHM6ci53aXRoQ3JlZGVudGlhbHN8fHRoaXMud2l0aENyZWRlbnRpYWxzLHRpbWVzdGFtcFJlcXVlc3RzOnIudGltZXN0YW1wUmVxdWVzdHN8fHRoaXMudGltZXN0YW1wUmVxdWVzdHMsdGltZXN0YW1wUGFyYW06ci50aW1lc3RhbXBQYXJhbXx8dGhpcy50aW1lc3RhbXBQYXJhbSxwb2xpY3lQb3J0OnIucG9saWN5UG9ydHx8dGhpcy5wb2xpY3lQb3J0LHBmeDpyLnBmeHx8dGhpcy5wZngsa2V5OnIua2V5fHx0aGlzLmtleSxwYXNzcGhyYXNlOnIucGFzc3BocmFzZXx8dGhpcy5wYXNzcGhyYXNlLGNlcnQ6ci5jZXJ0fHx0aGlzLmNlcnQsY2E6ci5jYXx8dGhpcy5jYSxjaXBoZXJzOnIuY2lwaGVyc3x8dGhpcy5jaXBoZXJzLHJlamVjdFVuYXV0aG9yaXplZDpyLnJlamVjdFVuYXV0aG9yaXplZHx8dGhpcy5yZWplY3RVbmF1dGhvcml6ZWQscGVyTWVzc2FnZURlZmxhdGU6ci5wZXJNZXNzYWdlRGVmbGF0ZXx8dGhpcy5wZXJNZXNzYWdlRGVmbGF0ZSxleHRyYUhlYWRlcnM6ci5leHRyYUhlYWRlcnN8fHRoaXMuZXh0cmFIZWFkZXJzLGZvcmNlTm9kZTpyLmZvcmNlTm9kZXx8dGhpcy5mb3JjZU5vZGUsbG9jYWxBZGRyZXNzOnIubG9jYWxBZGRyZXNzfHx0aGlzLmxvY2FsQWRkcmVzcyxyZXF1ZXN0VGltZW91dDpyLnJlcXVlc3RUaW1lb3V0fHx0aGlzLnJlcXVlc3RUaW1lb3V0LHByb3RvY29sczpyLnByb3RvY29sc3x8dm9pZCAwLGlzUmVhY3ROYXRpdmU6dGhpcy5pc1JlYWN0TmF0aXZlfSl9O2Z1bmN0aW9uIHUoZSl7dmFyIHQ9e307Zm9yKHZhciBuIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShuKSYmKHRbbl09ZVtuXSk7cmV0dXJuIHR9bC5wcm90b3R5cGUub3Blbj1mdW5jdGlvbigpe3ZhciBlO2lmKHRoaXMucmVtZW1iZXJVcGdyYWRlJiZsLnByaW9yV2Vic29ja2V0U3VjY2VzcyYmdGhpcy50cmFuc3BvcnRzLmluZGV4T2YoYHdlYnNvY2tldGApIT09LTEpZT1gd2Vic29ja2V0YDtlbHNlIGlmKHRoaXMudHJhbnNwb3J0cy5sZW5ndGg9PT0wKXt2YXIgdD10aGlzO3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmVtaXQoYGVycm9yYCxgTm8gdHJhbnNwb3J0cyBhdmFpbGFibGVgKX0sMCk7cmV0dXJufWVsc2UgZT10aGlzLnRyYW5zcG9ydHNbMF07dGhpcy5yZWFkeVN0YXRlPWBvcGVuaW5nYDt0cnl7ZT10aGlzLmNyZWF0ZVRyYW5zcG9ydChlKX1jYXRjaHt0aGlzLnRyYW5zcG9ydHMuc2hpZnQoKSx0aGlzLm9wZW4oKTtyZXR1cm59ZS5vcGVuKCksdGhpcy5zZXRUcmFuc3BvcnQoZSl9LGwucHJvdG90eXBlLnNldFRyYW5zcG9ydD1mdW5jdGlvbihlKXtpKGBzZXR0aW5nIHRyYW5zcG9ydCAlc2AsZS5uYW1lKTt2YXIgdD10aGlzO3RoaXMudHJhbnNwb3J0JiYoaShgY2xlYXJpbmcgZXhpc3RpbmcgdHJhbnNwb3J0ICVzYCx0aGlzLnRyYW5zcG9ydC5uYW1lKSx0aGlzLnRyYW5zcG9ydC5yZW1vdmVBbGxMaXN0ZW5lcnMoKSksdGhpcy50cmFuc3BvcnQ9ZSxlLm9uKGBkcmFpbmAsZnVuY3Rpb24oKXt0Lm9uRHJhaW4oKX0pLm9uKGBwYWNrZXRgLGZ1bmN0aW9uKGUpe3Qub25QYWNrZXQoZSl9KS5vbihgZXJyb3JgLGZ1bmN0aW9uKGUpe3Qub25FcnJvcihlKX0pLm9uKGBjbG9zZWAsZnVuY3Rpb24oKXt0Lm9uQ2xvc2UoYHRyYW5zcG9ydCBjbG9zZWApfSl9LGwucHJvdG90eXBlLnByb2JlPWZ1bmN0aW9uKGUpe2koYHByb2JpbmcgdHJhbnNwb3J0ICIlcyJgLGUpO3ZhciB0PXRoaXMuY3JlYXRlVHJhbnNwb3J0KGUse3Byb2JlOjF9KSxuPSExLHI9dGhpcztsLnByaW9yV2Vic29ja2V0U3VjY2Vzcz0hMTtmdW5jdGlvbiBhKCl7aWYoci5vbmx5QmluYXJ5VXBncmFkZXMpe3ZhciBhPSF0aGlzLnN1cHBvcnRzQmluYXJ5JiZyLnRyYW5zcG9ydC5zdXBwb3J0c0JpbmFyeTtufHw9YX1ufHwoaShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgb3BlbmVkYCxlKSx0LnNlbmQoW3t0eXBlOmBwaW5nYCxkYXRhOmBwcm9iZWB9XSksdC5vbmNlKGBwYWNrZXRgLGZ1bmN0aW9uKGEpe2lmKCFuKWlmKGEudHlwZT09PWBwb25nYCYmYS5kYXRhPT09YHByb2JlYCl7aWYoaShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgcG9uZ2AsZSksci51cGdyYWRpbmc9ITAsci5lbWl0KGB1cGdyYWRpbmdgLHQpLCF0KXJldHVybjtsLnByaW9yV2Vic29ja2V0U3VjY2Vzcz10Lm5hbWU9PT1gd2Vic29ja2V0YCxpKGBwYXVzaW5nIGN1cnJlbnQgdHJhbnNwb3J0ICIlcyJgLHIudHJhbnNwb3J0Lm5hbWUpLHIudHJhbnNwb3J0LnBhdXNlKGZ1bmN0aW9uKCl7bnx8ci5yZWFkeVN0YXRlIT09YGNsb3NlZGAmJihpKGBjaGFuZ2luZyB0cmFuc3BvcnQgYW5kIHNlbmRpbmcgdXBncmFkZSBwYWNrZXRgKSxmKCksci5zZXRUcmFuc3BvcnQodCksdC5zZW5kKFt7dHlwZTpgdXBncmFkZWB9XSksci5lbWl0KGB1cGdyYWRlYCx0KSx0PW51bGwsci51cGdyYWRpbmc9ITEsci5mbHVzaCgpKX0pfWVsc2V7aShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgZmFpbGVkYCxlKTt2YXIgbz1FcnJvcihgcHJvYmUgZXJyb3JgKTtvLnRyYW5zcG9ydD10Lm5hbWUsci5lbWl0KGB1cGdyYWRlRXJyb3JgLG8pfX0pKX1mdW5jdGlvbiBvKCl7bnx8KG49ITAsZigpLHQuY2xvc2UoKSx0PW51bGwpfWZ1bmN0aW9uIHMobil7dmFyIGE9RXJyb3IoYHByb2JlIGVycm9yOiBgK24pO2EudHJhbnNwb3J0PXQubmFtZSxvKCksaShgcHJvYmUgdHJhbnNwb3J0ICIlcyIgZmFpbGVkIGJlY2F1c2Ugb2YgZXJyb3I6ICVzYCxlLG4pLHIuZW1pdChgdXBncmFkZUVycm9yYCxhKX1mdW5jdGlvbiBjKCl7cyhgdHJhbnNwb3J0IGNsb3NlZGApfWZ1bmN0aW9uIHUoKXtzKGBzb2NrZXQgY2xvc2VkYCl9ZnVuY3Rpb24gZChlKXt0JiZlLm5hbWUhPT10Lm5hbWUmJihpKGAiJXMiIHdvcmtzIC0gYWJvcnRpbmcgIiVzImAsZS5uYW1lLHQubmFtZSksbygpKX1mdW5jdGlvbiBmKCl7dC5yZW1vdmVMaXN0ZW5lcihgb3BlbmAsYSksdC5yZW1vdmVMaXN0ZW5lcihgZXJyb3JgLHMpLHQucmVtb3ZlTGlzdGVuZXIoYGNsb3NlYCxjKSxyLnJlbW92ZUxpc3RlbmVyKGBjbG9zZWAsdSksci5yZW1vdmVMaXN0ZW5lcihgdXBncmFkaW5nYCxkKX10Lm9uY2UoYG9wZW5gLGEpLHQub25jZShgZXJyb3JgLHMpLHQub25jZShgY2xvc2VgLGMpLHRoaXMub25jZShgY2xvc2VgLHUpLHRoaXMub25jZShgdXBncmFkaW5nYCxkKSx0Lm9wZW4oKX0sbC5wcm90b3R5cGUub25PcGVuPWZ1bmN0aW9uKCl7aWYoaShgc29ja2V0IG9wZW5gKSx0aGlzLnJlYWR5U3RhdGU9YG9wZW5gLGwucHJpb3JXZWJzb2NrZXRTdWNjZXNzPXRoaXMudHJhbnNwb3J0Lm5hbWU9PT1gd2Vic29ja2V0YCx0aGlzLmVtaXQoYG9wZW5gKSx0aGlzLmZsdXNoKCksdGhpcy5yZWFkeVN0YXRlPT09YG9wZW5gJiZ0aGlzLnVwZ3JhZGUmJnRoaXMudHJhbnNwb3J0LnBhdXNlKXtpKGBzdGFydGluZyB1cGdyYWRlIHByb2Jlc2ApO2Zvcih2YXIgZT0wLHQ9dGhpcy51cGdyYWRlcy5sZW5ndGg7ZTx0O2UrKyl0aGlzLnByb2JlKHRoaXMudXBncmFkZXNbZV0pfX0sbC5wcm90b3R5cGUub25QYWNrZXQ9ZnVuY3Rpb24oZSl7aWYodGhpcy5yZWFkeVN0YXRlPT09YG9wZW5pbmdgfHx0aGlzLnJlYWR5U3RhdGU9PT1gb3BlbmB8fHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zaW5nYClzd2l0Y2goaShgc29ja2V0IHJlY2VpdmU6IHR5cGUgIiVzIiwgZGF0YSAiJXMiYCxlLnR5cGUsZS5kYXRhKSx0aGlzLmVtaXQoYHBhY2tldGAsZSksdGhpcy5lbWl0KGBoZWFydGJlYXRgKSxlLnR5cGUpe2Nhc2Vgb3BlbmA6dGhpcy5vbkhhbmRzaGFrZShKU09OLnBhcnNlKGUuZGF0YSkpO2JyZWFrO2Nhc2VgcG9uZ2A6dGhpcy5zZXRQaW5nKCksdGhpcy5lbWl0KGBwb25nYCk7YnJlYWs7Y2FzZWBlcnJvcmA6dmFyIHQ9RXJyb3IoYHNlcnZlciBlcnJvcmApO3QuY29kZT1lLmRhdGEsdGhpcy5vbkVycm9yKHQpO2JyZWFrO2Nhc2VgbWVzc2FnZWA6dGhpcy5lbWl0KGBkYXRhYCxlLmRhdGEpLHRoaXMuZW1pdChgbWVzc2FnZWAsZS5kYXRhKTticmVha31lbHNlIGkoYHBhY2tldCByZWNlaXZlZCB3aXRoIHNvY2tldCByZWFkeVN0YXRlICIlcyJgLHRoaXMucmVhZHlTdGF0ZSl9LGwucHJvdG90eXBlLm9uSGFuZHNoYWtlPWZ1bmN0aW9uKGUpe3RoaXMuZW1pdChgaGFuZHNoYWtlYCxlKSx0aGlzLmlkPWUuc2lkLHRoaXMudHJhbnNwb3J0LnF1ZXJ5LnNpZD1lLnNpZCx0aGlzLnVwZ3JhZGVzPXRoaXMuZmlsdGVyVXBncmFkZXMoZS51cGdyYWRlcyksdGhpcy5waW5nSW50ZXJ2YWw9ZS5waW5nSW50ZXJ2YWwsdGhpcy5waW5nVGltZW91dD1lLnBpbmdUaW1lb3V0LHRoaXMub25PcGVuKCksdGhpcy5yZWFkeVN0YXRlIT09YGNsb3NlZGAmJih0aGlzLnNldFBpbmcoKSx0aGlzLnJlbW92ZUxpc3RlbmVyKGBoZWFydGJlYXRgLHRoaXMub25IZWFydGJlYXQpLHRoaXMub24oYGhlYXJ0YmVhdGAsdGhpcy5vbkhlYXJ0YmVhdCkpfSxsLnByb3RvdHlwZS5vbkhlYXJ0YmVhdD1mdW5jdGlvbihlKXtjbGVhclRpbWVvdXQodGhpcy5waW5nVGltZW91dFRpbWVyKTt2YXIgdD10aGlzO3QucGluZ1RpbWVvdXRUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5yZWFkeVN0YXRlIT09YGNsb3NlZGAmJnQub25DbG9zZShgcGluZyB0aW1lb3V0YCl9LGV8fHQucGluZ0ludGVydmFsK3QucGluZ1RpbWVvdXQpfSxsLnByb3RvdHlwZS5zZXRQaW5nPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztjbGVhclRpbWVvdXQoZS5waW5nSW50ZXJ2YWxUaW1lciksZS5waW5nSW50ZXJ2YWxUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aShgd3JpdGluZyBwaW5nIHBhY2tldCAtIGV4cGVjdGluZyBwb25nIHdpdGhpbiAlc21zYCxlLnBpbmdUaW1lb3V0KSxlLnBpbmcoKSxlLm9uSGVhcnRiZWF0KGUucGluZ1RpbWVvdXQpfSxlLnBpbmdJbnRlcnZhbCl9LGwucHJvdG90eXBlLnBpbmc9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3RoaXMuc2VuZFBhY2tldChgcGluZ2AsZnVuY3Rpb24oKXtlLmVtaXQoYHBpbmdgKX0pfSxsLnByb3RvdHlwZS5vbkRyYWluPWZ1bmN0aW9uKCl7dGhpcy53cml0ZUJ1ZmZlci5zcGxpY2UoMCx0aGlzLnByZXZCdWZmZXJMZW4pLHRoaXMucHJldkJ1ZmZlckxlbj0wLHRoaXMud3JpdGVCdWZmZXIubGVuZ3RoPT09MD90aGlzLmVtaXQoYGRyYWluYCk6dGhpcy5mbHVzaCgpfSxsLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe3RoaXMucmVhZHlTdGF0ZSE9PWBjbG9zZWRgJiZ0aGlzLnRyYW5zcG9ydC53cml0YWJsZSYmIXRoaXMudXBncmFkaW5nJiZ0aGlzLndyaXRlQnVmZmVyLmxlbmd0aCYmKGkoYGZsdXNoaW5nICVkIHBhY2tldHMgaW4gc29ja2V0YCx0aGlzLndyaXRlQnVmZmVyLmxlbmd0aCksdGhpcy50cmFuc3BvcnQuc2VuZCh0aGlzLndyaXRlQnVmZmVyKSx0aGlzLnByZXZCdWZmZXJMZW49dGhpcy53cml0ZUJ1ZmZlci5sZW5ndGgsdGhpcy5lbWl0KGBmbHVzaGApKX0sbC5wcm90b3R5cGUud3JpdGU9bC5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuc2VuZFBhY2tldChgbWVzc2FnZWAsZSx0LG4pLHRoaXN9LGwucHJvdG90eXBlLnNlbmRQYWNrZXQ9ZnVuY3Rpb24oZSx0LG4scil7aWYodHlwZW9mIHQ9PWBmdW5jdGlvbmAmJihyPXQsdD12b2lkIDApLHR5cGVvZiBuPT1gZnVuY3Rpb25gJiYocj1uLG49bnVsbCksISh0aGlzLnJlYWR5U3RhdGU9PT1gY2xvc2luZ2B8fHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zZWRgKSl7bnx8PXt9LG4uY29tcHJlc3M9ITEhPT1uLmNvbXByZXNzO3ZhciBpPXt0eXBlOmUsZGF0YTp0LG9wdGlvbnM6bn07dGhpcy5lbWl0KGBwYWNrZXRDcmVhdGVgLGkpLHRoaXMud3JpdGVCdWZmZXIucHVzaChpKSxyJiZ0aGlzLm9uY2UoYGZsdXNoYCxyKSx0aGlzLmZsdXNoKCl9fSxsLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe2lmKHRoaXMucmVhZHlTdGF0ZT09PWBvcGVuaW5nYHx8dGhpcy5yZWFkeVN0YXRlPT09YG9wZW5gKXt0aGlzLnJlYWR5U3RhdGU9YGNsb3NpbmdgO3ZhciBlPXRoaXM7dGhpcy53cml0ZUJ1ZmZlci5sZW5ndGg/dGhpcy5vbmNlKGBkcmFpbmAsZnVuY3Rpb24oKXt0aGlzLnVwZ3JhZGluZz9yKCk6dCgpfSk6dGhpcy51cGdyYWRpbmc/cigpOnQoKX1mdW5jdGlvbiB0KCl7ZS5vbkNsb3NlKGBmb3JjZWQgY2xvc2VgKSxpKGBzb2NrZXQgY2xvc2luZyAtIHRlbGxpbmcgdHJhbnNwb3J0IHRvIGNsb3NlYCksZS50cmFuc3BvcnQuY2xvc2UoKX1mdW5jdGlvbiBuKCl7ZS5yZW1vdmVMaXN0ZW5lcihgdXBncmFkZWAsbiksZS5yZW1vdmVMaXN0ZW5lcihgdXBncmFkZUVycm9yYCxuKSx0KCl9ZnVuY3Rpb24gcigpe2Uub25jZShgdXBncmFkZWAsbiksZS5vbmNlKGB1cGdyYWRlRXJyb3JgLG4pfXJldHVybiB0aGlzfSxsLnByb3RvdHlwZS5vbkVycm9yPWZ1bmN0aW9uKGUpe2koYHNvY2tldCBlcnJvciAlamAsZSksbC5wcmlvcldlYnNvY2tldFN1Y2Nlc3M9ITEsdGhpcy5lbWl0KGBlcnJvcmAsZSksdGhpcy5vbkNsb3NlKGB0cmFuc3BvcnQgZXJyb3JgLGUpfSxsLnByb3RvdHlwZS5vbkNsb3NlPWZ1bmN0aW9uKGUsdCl7aWYodGhpcy5yZWFkeVN0YXRlPT09YG9wZW5pbmdgfHx0aGlzLnJlYWR5U3RhdGU9PT1gb3BlbmB8fHRoaXMucmVhZHlTdGF0ZT09PWBjbG9zaW5nYCl7aShgc29ja2V0IGNsb3NlIHdpdGggcmVhc29uOiAiJXMiYCxlKTt2YXIgbj10aGlzO2NsZWFyVGltZW91dCh0aGlzLnBpbmdJbnRlcnZhbFRpbWVyKSxjbGVhclRpbWVvdXQodGhpcy5waW5nVGltZW91dFRpbWVyKSx0aGlzLnRyYW5zcG9ydC5yZW1vdmVBbGxMaXN0ZW5lcnMoYGNsb3NlYCksdGhpcy50cmFuc3BvcnQuY2xvc2UoKSx0aGlzLnRyYW5zcG9ydC5yZW1vdmVBbGxMaXN0ZW5lcnMoKSx0aGlzLnJlYWR5U3RhdGU9YGNsb3NlZGAsdGhpcy5pZD1udWxsLHRoaXMuZW1pdChgY2xvc2VgLGUsdCksbi53cml0ZUJ1ZmZlcj1bXSxuLnByZXZCdWZmZXJMZW49MH19LGwucHJvdG90eXBlLmZpbHRlclVwZ3JhZGVzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPTAscj1lLmxlbmd0aDtuPHI7bisrKX5hKHRoaXMudHJhbnNwb3J0cyxlW25dKSYmdC5wdXNoKGVbbl0pO3JldHVybiB0fX0pKSxkYz1zKCgoZSx0KT0+e3QuZXhwb3J0cz11YygpLHQuZXhwb3J0cy5wYXJzZXI9WnMoKX0pKSxmYz1zKCgoZSx0KT0+e3QhPT12b2lkIDAmJih0LmV4cG9ydHM9bik7ZnVuY3Rpb24gbihlKXtpZihlKXJldHVybiByKGUpfWZ1bmN0aW9uIHIoZSl7Zm9yKHZhciB0IGluIG4ucHJvdG90eXBlKWVbdF09bi5wcm90b3R5cGVbdF07cmV0dXJuIGV9bi5wcm90b3R5cGUub249bi5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9jYWxsYmFja3M9dGhpcy5fY2FsbGJhY2tzfHx7fSwodGhpcy5fY2FsbGJhY2tzW2AkYCtlXT10aGlzLl9jYWxsYmFja3NbYCRgK2VdfHxbXSkucHVzaCh0KSx0aGlzfSxuLnByb3RvdHlwZS5vbmNlPWZ1bmN0aW9uKGUsdCl7ZnVuY3Rpb24gbigpe3RoaXMub2ZmKGUsbiksdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9cmV0dXJuIG4uZm49dCx0aGlzLm9uKGUsbiksdGhpc30sbi5wcm90b3R5cGUub2ZmPW4ucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPW4ucHJvdG90eXBlLnJlbW92ZUFsbExpc3RlbmVycz1uLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7aWYodGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sYXJndW1lbnRzLmxlbmd0aD09MClyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXt9LHRoaXM7dmFyIG49dGhpcy5fY2FsbGJhY2tzW2AkYCtlXTtpZighbilyZXR1cm4gdGhpcztpZihhcmd1bWVudHMubGVuZ3RoPT0xKXJldHVybiBkZWxldGUgdGhpcy5fY2FsbGJhY2tzW2AkYCtlXSx0aGlzO2Zvcih2YXIgcixpPTA7aTxuLmxlbmd0aDtpKyspaWYocj1uW2ldLHI9PT10fHxyLmZuPT09dCl7bi5zcGxpY2UoaSwxKTticmVha31yZXR1cm4gdGhpc30sbi5wcm90b3R5cGUuZW1pdD1mdW5jdGlvbihlKXt0aGlzLl9jYWxsYmFja3M9dGhpcy5fY2FsbGJhY2tzfHx7fTt2YXIgdD1bXS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSxuPXRoaXMuX2NhbGxiYWNrc1tgJGArZV07aWYobil7bj1uLnNsaWNlKDApO2Zvcih2YXIgcj0wLGk9bi5sZW5ndGg7cjxpOysrciluW3JdLmFwcGx5KHRoaXMsdCl9cmV0dXJuIHRoaXN9LG4ucHJvdG90eXBlLmxpc3RlbmVycz1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5fY2FsbGJhY2tzPXRoaXMuX2NhbGxiYWNrc3x8e30sdGhpcy5fY2FsbGJhY2tzW2AkYCtlXXx8W119LG4ucHJvdG90eXBlLmhhc0xpc3RlbmVycz1mdW5jdGlvbihlKXtyZXR1cm4hIXRoaXMubGlzdGVuZXJzKGUpLmxlbmd0aH19KSkscGM9cygoKGUsdCk9Pnt0LmV4cG9ydHM9bjtmdW5jdGlvbiBuKGUsdCl7dmFyIG49W107dHx8PTA7Zm9yKHZhciByPXR8fDA7cjxlLmxlbmd0aDtyKyspbltyLXRdPWVbcl07cmV0dXJuIG59fSkpLG1jPXMoKChlLHQpPT57dC5leHBvcnRzPW47ZnVuY3Rpb24gbihlLHQsbil7cmV0dXJuIGUub24odCxuKSx7ZGVzdHJveTpmdW5jdGlvbigpe2UucmVtb3ZlTGlzdGVuZXIodCxuKX19fX0pKSxoYz1zKCgoZSx0KT0+e3ZhciBuPVtdLnNsaWNlO3QuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKHR5cGVvZiB0PT1gc3RyaW5nYCYmKHQ9ZVt0XSksdHlwZW9mIHQhPWBmdW5jdGlvbmApdGhyb3cgRXJyb3IoYGJpbmQoKSByZXF1aXJlcyBhIGZ1bmN0aW9uYCk7dmFyIHI9bi5jYWxsKGFyZ3VtZW50cywyKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdC5hcHBseShlLHIuY29uY2F0KG4uY2FsbChhcmd1bWVudHMpKSl9fX0pKSxnYz1zKChlPT57ZS5lbmNvZGU9ZnVuY3Rpb24oZSl7dmFyIHQ9YGA7Zm9yKHZhciBuIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShuKSYmKHQubGVuZ3RoJiYodCs9YCZgKSx0Kz1lbmNvZGVVUklDb21wb25lbnQobikrYD1gK2VuY29kZVVSSUNvbXBvbmVudChlW25dKSk7cmV0dXJuIHR9LGUuZGVjb2RlPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD17fSxuPWUuc3BsaXQoYCZgKSxyPTAsaT1uLmxlbmd0aDtyPGk7cisrKXt2YXIgYT1uW3JdLnNwbGl0KGA9YCk7dFtkZWNvZGVVUklDb21wb25lbnQoYVswXSldPWRlY29kZVVSSUNvbXBvbmVudChhWzFdKX1yZXR1cm4gdH19KSksX2M9cygoKGUsdCk9Pnt2YXIgbj1CcygpLHI9ZmMoKSxpPXBjKCksYT1tYygpLG89aGMoKSxzPWpzKCkoYHNvY2tldC5pby1jbGllbnQ6c29ja2V0YCksYz1nYygpLGw9R3MoKTt0LmV4cG9ydHM9ZT1mO3ZhciB1PXtjb25uZWN0OjEsY29ubmVjdF9lcnJvcjoxLGNvbm5lY3RfdGltZW91dDoxLGNvbm5lY3Rpbmc6MSxkaXNjb25uZWN0OjEsZXJyb3I6MSxyZWNvbm5lY3Q6MSxyZWNvbm5lY3RfYXR0ZW1wdDoxLHJlY29ubmVjdF9mYWlsZWQ6MSxyZWNvbm5lY3RfZXJyb3I6MSxyZWNvbm5lY3Rpbmc6MSxwaW5nOjEscG9uZzoxfSxkPXIucHJvdG90eXBlLmVtaXQ7ZnVuY3Rpb24gZihlLHQsbil7dGhpcy5pbz1lLHRoaXMubnNwPXQsdGhpcy5qc29uPXRoaXMsdGhpcy5pZHM9MCx0aGlzLmFja3M9e30sdGhpcy5yZWNlaXZlQnVmZmVyPVtdLHRoaXMuc2VuZEJ1ZmZlcj1bXSx0aGlzLmNvbm5lY3RlZD0hMSx0aGlzLmRpc2Nvbm5lY3RlZD0hMCx0aGlzLmZsYWdzPXt9LG4mJm4ucXVlcnkmJih0aGlzLnF1ZXJ5PW4ucXVlcnkpLHRoaXMuaW8uYXV0b0Nvbm5lY3QmJnRoaXMub3BlbigpfXIoZi5wcm90b3R5cGUpLGYucHJvdG90eXBlLnN1YkV2ZW50cz1mdW5jdGlvbigpe2lmKCF0aGlzLnN1YnMpe3ZhciBlPXRoaXMuaW87dGhpcy5zdWJzPVthKGUsYG9wZW5gLG8odGhpcyxgb25vcGVuYCkpLGEoZSxgcGFja2V0YCxvKHRoaXMsYG9ucGFja2V0YCkpLGEoZSxgY2xvc2VgLG8odGhpcyxgb25jbG9zZWApKV19fSxmLnByb3RvdHlwZS5vcGVuPWYucHJvdG90eXBlLmNvbm5lY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb25uZWN0ZWQ/dGhpczoodGhpcy5zdWJFdmVudHMoKSx0aGlzLmlvLm9wZW4oKSx0aGlzLmlvLnJlYWR5U3RhdGU9PT1gb3BlbmAmJnRoaXMub25vcGVuKCksdGhpcy5lbWl0KGBjb25uZWN0aW5nYCksdGhpcyl9LGYucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oKXt2YXIgZT1pKGFyZ3VtZW50cyk7cmV0dXJuIGUudW5zaGlmdChgbWVzc2FnZWApLHRoaXMuZW1pdC5hcHBseSh0aGlzLGUpLHRoaXN9LGYucHJvdG90eXBlLmVtaXQ9ZnVuY3Rpb24oZSl7aWYodS5oYXNPd25Qcm9wZXJ0eShlKSlyZXR1cm4gZC5hcHBseSh0aGlzLGFyZ3VtZW50cyksdGhpczt2YXIgdD1pKGFyZ3VtZW50cykscj17dHlwZToodGhpcy5mbGFncy5iaW5hcnk9PT12b2lkIDA/bCh0KTp0aGlzLmZsYWdzLmJpbmFyeSk/bi5CSU5BUllfRVZFTlQ6bi5FVkVOVCxkYXRhOnR9O3JldHVybiByLm9wdGlvbnM9e30sci5vcHRpb25zLmNvbXByZXNzPSF0aGlzLmZsYWdzfHwhMSE9PXRoaXMuZmxhZ3MuY29tcHJlc3MsdHlwZW9mIHRbdC5sZW5ndGgtMV09PWBmdW5jdGlvbmAmJihzKGBlbWl0dGluZyBwYWNrZXQgd2l0aCBhY2sgaWQgJWRgLHRoaXMuaWRzKSx0aGlzLmFja3NbdGhpcy5pZHNdPXQucG9wKCksci5pZD10aGlzLmlkcysrKSx0aGlzLmNvbm5lY3RlZD90aGlzLnBhY2tldChyKTp0aGlzLnNlbmRCdWZmZXIucHVzaChyKSx0aGlzLmZsYWdzPXt9LHRoaXN9LGYucHJvdG90eXBlLnBhY2tldD1mdW5jdGlvbihlKXtlLm5zcD10aGlzLm5zcCx0aGlzLmlvLnBhY2tldChlKX0sZi5wcm90b3R5cGUub25vcGVuPWZ1bmN0aW9uKCl7aWYocyhgdHJhbnNwb3J0IGlzIG9wZW4gLSBjb25uZWN0aW5nYCksdGhpcy5uc3AhPT1gL2ApaWYodGhpcy5xdWVyeSl7dmFyIGU9dHlwZW9mIHRoaXMucXVlcnk9PWBvYmplY3RgP2MuZW5jb2RlKHRoaXMucXVlcnkpOnRoaXMucXVlcnk7cyhgc2VuZGluZyBjb25uZWN0IHBhY2tldCB3aXRoIHF1ZXJ5ICVzYCxlKSx0aGlzLnBhY2tldCh7dHlwZTpuLkNPTk5FQ1QscXVlcnk6ZX0pfWVsc2UgdGhpcy5wYWNrZXQoe3R5cGU6bi5DT05ORUNUfSl9LGYucHJvdG90eXBlLm9uY2xvc2U9ZnVuY3Rpb24oZSl7cyhgY2xvc2UgKCVzKWAsZSksdGhpcy5jb25uZWN0ZWQ9ITEsdGhpcy5kaXNjb25uZWN0ZWQ9ITAsZGVsZXRlIHRoaXMuaWQsdGhpcy5lbWl0KGBkaXNjb25uZWN0YCxlKX0sZi5wcm90b3R5cGUub25wYWNrZXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5uc3A9PT10aGlzLm5zcCxyPWUudHlwZT09PW4uRVJST1ImJmUubnNwPT09YC9gO2lmKCEoIXQmJiFyKSlzd2l0Y2goZS50eXBlKXtjYXNlIG4uQ09OTkVDVDp0aGlzLm9uY29ubmVjdCgpO2JyZWFrO2Nhc2Ugbi5FVkVOVDp0aGlzLm9uZXZlbnQoZSk7YnJlYWs7Y2FzZSBuLkJJTkFSWV9FVkVOVDp0aGlzLm9uZXZlbnQoZSk7YnJlYWs7Y2FzZSBuLkFDSzp0aGlzLm9uYWNrKGUpO2JyZWFrO2Nhc2Ugbi5CSU5BUllfQUNLOnRoaXMub25hY2soZSk7YnJlYWs7Y2FzZSBuLkRJU0NPTk5FQ1Q6dGhpcy5vbmRpc2Nvbm5lY3QoKTticmVhaztjYXNlIG4uRVJST1I6dGhpcy5lbWl0KGBlcnJvcmAsZS5kYXRhKTticmVha319LGYucHJvdG90eXBlLm9uZXZlbnQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5kYXRhfHxbXTtzKGBlbWl0dGluZyBldmVudCAlamAsdCksZS5pZCE9bnVsbCYmKHMoYGF0dGFjaGluZyBhY2sgY2FsbGJhY2sgdG8gZXZlbnRgKSx0LnB1c2godGhpcy5hY2soZS5pZCkpKSx0aGlzLmNvbm5lY3RlZD9kLmFwcGx5KHRoaXMsdCk6dGhpcy5yZWNlaXZlQnVmZmVyLnB1c2godCl9LGYucHJvdG90eXBlLmFjaz1mdW5jdGlvbihlKXt2YXIgdD10aGlzLHI9ITE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoIXIpe3I9ITA7dmFyIGE9aShhcmd1bWVudHMpO3MoYHNlbmRpbmcgYWNrICVqYCxhKSx0LnBhY2tldCh7dHlwZTpsKGEpP24uQklOQVJZX0FDSzpuLkFDSyxpZDplLGRhdGE6YX0pfX19LGYucHJvdG90eXBlLm9uYWNrPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuYWNrc1tlLmlkXTt0eXBlb2YgdD09YGZ1bmN0aW9uYD8ocyhgY2FsbGluZyBhY2sgJXMgd2l0aCAlamAsZS5pZCxlLmRhdGEpLHQuYXBwbHkodGhpcyxlLmRhdGEpLGRlbGV0ZSB0aGlzLmFja3NbZS5pZF0pOnMoYGJhZCBhY2sgJXNgLGUuaWQpfSxmLnByb3RvdHlwZS5vbmNvbm5lY3Q9ZnVuY3Rpb24oKXt0aGlzLmNvbm5lY3RlZD0hMCx0aGlzLmRpc2Nvbm5lY3RlZD0hMSx0aGlzLmVtaXQoYGNvbm5lY3RgKSx0aGlzLmVtaXRCdWZmZXJlZCgpfSxmLnByb3RvdHlwZS5lbWl0QnVmZmVyZWQ9ZnVuY3Rpb24oKXt2YXIgZTtmb3IoZT0wO2U8dGhpcy5yZWNlaXZlQnVmZmVyLmxlbmd0aDtlKyspZC5hcHBseSh0aGlzLHRoaXMucmVjZWl2ZUJ1ZmZlcltlXSk7Zm9yKHRoaXMucmVjZWl2ZUJ1ZmZlcj1bXSxlPTA7ZTx0aGlzLnNlbmRCdWZmZXIubGVuZ3RoO2UrKyl0aGlzLnBhY2tldCh0aGlzLnNlbmRCdWZmZXJbZV0pO3RoaXMuc2VuZEJ1ZmZlcj1bXX0sZi5wcm90b3R5cGUub25kaXNjb25uZWN0PWZ1bmN0aW9uKCl7cyhgc2VydmVyIGRpc2Nvbm5lY3QgKCVzKWAsdGhpcy5uc3ApLHRoaXMuZGVzdHJveSgpLHRoaXMub25jbG9zZShgaW8gc2VydmVyIGRpc2Nvbm5lY3RgKX0sZi5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe2lmKHRoaXMuc3Vicyl7Zm9yKHZhciBlPTA7ZTx0aGlzLnN1YnMubGVuZ3RoO2UrKyl0aGlzLnN1YnNbZV0uZGVzdHJveSgpO3RoaXMuc3Vicz1udWxsfXRoaXMuaW8uZGVzdHJveSh0aGlzKX0sZi5wcm90b3R5cGUuY2xvc2U9Zi5wcm90b3R5cGUuZGlzY29ubmVjdD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbm5lY3RlZCYmKHMoYHBlcmZvcm1pbmcgZGlzY29ubmVjdCAoJXMpYCx0aGlzLm5zcCksdGhpcy5wYWNrZXQoe3R5cGU6bi5ESVNDT05ORUNUfSkpLHRoaXMuZGVzdHJveSgpLHRoaXMuY29ubmVjdGVkJiZ0aGlzLm9uY2xvc2UoYGlvIGNsaWVudCBkaXNjb25uZWN0YCksdGhpc30sZi5wcm90b3R5cGUuY29tcHJlc3M9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZmxhZ3MuY29tcHJlc3M9ZSx0aGlzfSxmLnByb3RvdHlwZS5iaW5hcnk9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZmxhZ3MuYmluYXJ5PWUsdGhpc319KSksdmM9cygoKGUsdCk9Pnt0LmV4cG9ydHM9bjtmdW5jdGlvbiBuKGUpe2V8fD17fSx0aGlzLm1zPWUubWlufHwxMDAsdGhpcy5tYXg9ZS5tYXh8fDFlNCx0aGlzLmZhY3Rvcj1lLmZhY3Rvcnx8Mix0aGlzLmppdHRlcj1lLmppdHRlcj4wJiZlLmppdHRlcjw9MT9lLmppdHRlcjowLHRoaXMuYXR0ZW1wdHM9MH1uLnByb3RvdHlwZS5kdXJhdGlvbj1mdW5jdGlvbigpe3ZhciBlPXRoaXMubXMqdGhpcy5mYWN0b3IqKisgdGhpcy5hdHRlbXB0cysrO2lmKHRoaXMuaml0dGVyKXt2YXIgdD1NYXRoLnJhbmRvbSgpLG49TWF0aC5mbG9vcih0KnRoaXMuaml0dGVyKmUpO2U9TWF0aC5mbG9vcih0KjEwKSYxP2UrbjplLW59cmV0dXJuIE1hdGgubWluKGUsdGhpcy5tYXgpfDB9LG4ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5hdHRlbXB0cz0wfSxuLnByb3RvdHlwZS5zZXRNaW49ZnVuY3Rpb24oZSl7dGhpcy5tcz1lfSxuLnByb3RvdHlwZS5zZXRNYXg9ZnVuY3Rpb24oZSl7dGhpcy5tYXg9ZX0sbi5wcm90b3R5cGUuc2V0Sml0dGVyPWZ1bmN0aW9uKGUpe3RoaXMuaml0dGVyPWV9fSkpLHljPXMoKChlLHQpPT57dmFyIG49ZGMoKSxyPV9jKCksaT1mYygpLGE9QnMoKSxvPW1jKCkscz1oYygpLGM9anMoKShgc29ja2V0LmlvLWNsaWVudDptYW5hZ2VyYCksbD1jYygpLHU9dmMoKSxkPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7dC5leHBvcnRzPWY7ZnVuY3Rpb24gZihlLHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGYpKXJldHVybiBuZXcgZihlLHQpO2UmJnR5cGVvZiBlPT1gb2JqZWN0YCYmKHQ9ZSxlPXZvaWQgMCksdHx8PXt9LHQucGF0aD10LnBhdGh8fGAvc29ja2V0LmlvYCx0aGlzLm5zcHM9e30sdGhpcy5zdWJzPVtdLHRoaXMub3B0cz10LHRoaXMucmVjb25uZWN0aW9uKHQucmVjb25uZWN0aW9uIT09ITEpLHRoaXMucmVjb25uZWN0aW9uQXR0ZW1wdHModC5yZWNvbm5lY3Rpb25BdHRlbXB0c3x8MS8wKSx0aGlzLnJlY29ubmVjdGlvbkRlbGF5KHQucmVjb25uZWN0aW9uRGVsYXl8fDFlMyksdGhpcy5yZWNvbm5lY3Rpb25EZWxheU1heCh0LnJlY29ubmVjdGlvbkRlbGF5TWF4fHw1ZTMpLHRoaXMucmFuZG9taXphdGlvbkZhY3Rvcih0LnJhbmRvbWl6YXRpb25GYWN0b3J8fC41KSx0aGlzLmJhY2tvZmY9bmV3IHUoe21pbjp0aGlzLnJlY29ubmVjdGlvbkRlbGF5KCksbWF4OnRoaXMucmVjb25uZWN0aW9uRGVsYXlNYXgoKSxqaXR0ZXI6dGhpcy5yYW5kb21pemF0aW9uRmFjdG9yKCl9KSx0aGlzLnRpbWVvdXQodC50aW1lb3V0PT1udWxsPzJlNDp0LnRpbWVvdXQpLHRoaXMucmVhZHlTdGF0ZT1gY2xvc2VkYCx0aGlzLnVyaT1lLHRoaXMuY29ubmVjdGluZz1bXSx0aGlzLmxhc3RQaW5nPW51bGwsdGhpcy5lbmNvZGluZz0hMSx0aGlzLnBhY2tldEJ1ZmZlcj1bXTt2YXIgbj10LnBhcnNlcnx8YTt0aGlzLmVuY29kZXI9bmV3IG4uRW5jb2Rlcix0aGlzLmRlY29kZXI9bmV3IG4uRGVjb2Rlcix0aGlzLmF1dG9Db25uZWN0PXQuYXV0b0Nvbm5lY3QhPT0hMSx0aGlzLmF1dG9Db25uZWN0JiZ0aGlzLm9wZW4oKX1mLnByb3RvdHlwZS5lbWl0QWxsPWZ1bmN0aW9uKCl7Zm9yKHZhciBlIGluIHRoaXMuZW1pdC5hcHBseSh0aGlzLGFyZ3VtZW50cyksdGhpcy5uc3BzKWQuY2FsbCh0aGlzLm5zcHMsZSkmJnRoaXMubnNwc1tlXS5lbWl0LmFwcGx5KHRoaXMubnNwc1tlXSxhcmd1bWVudHMpfSxmLnByb3RvdHlwZS51cGRhdGVTb2NrZXRJZHM9ZnVuY3Rpb24oKXtmb3IodmFyIGUgaW4gdGhpcy5uc3BzKWQuY2FsbCh0aGlzLm5zcHMsZSkmJih0aGlzLm5zcHNbZV0uaWQ9dGhpcy5nZW5lcmF0ZUlkKGUpKX0sZi5wcm90b3R5cGUuZ2VuZXJhdGVJZD1mdW5jdGlvbihlKXtyZXR1cm4oZT09PWAvYD9gYDplK2AjYCkrdGhpcy5lbmdpbmUuaWR9LGkoZi5wcm90b3R5cGUpLGYucHJvdG90eXBlLnJlY29ubmVjdGlvbj1mdW5jdGlvbihlKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8odGhpcy5fcmVjb25uZWN0aW9uPSEhZSx0aGlzKTp0aGlzLl9yZWNvbm5lY3Rpb259LGYucHJvdG90eXBlLnJlY29ubmVjdGlvbkF0dGVtcHRzPWZ1bmN0aW9uKGUpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLl9yZWNvbm5lY3Rpb25BdHRlbXB0cz1lLHRoaXMpOnRoaXMuX3JlY29ubmVjdGlvbkF0dGVtcHRzfSxmLnByb3RvdHlwZS5yZWNvbm5lY3Rpb25EZWxheT1mdW5jdGlvbihlKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8odGhpcy5fcmVjb25uZWN0aW9uRGVsYXk9ZSx0aGlzLmJhY2tvZmYmJnRoaXMuYmFja29mZi5zZXRNaW4oZSksdGhpcyk6dGhpcy5fcmVjb25uZWN0aW9uRGVsYXl9LGYucHJvdG90eXBlLnJhbmRvbWl6YXRpb25GYWN0b3I9ZnVuY3Rpb24oZSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KHRoaXMuX3JhbmRvbWl6YXRpb25GYWN0b3I9ZSx0aGlzLmJhY2tvZmYmJnRoaXMuYmFja29mZi5zZXRKaXR0ZXIoZSksdGhpcyk6dGhpcy5fcmFuZG9taXphdGlvbkZhY3Rvcn0sZi5wcm90b3R5cGUucmVjb25uZWN0aW9uRGVsYXlNYXg9ZnVuY3Rpb24oZSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KHRoaXMuX3JlY29ubmVjdGlvbkRlbGF5TWF4PWUsdGhpcy5iYWNrb2ZmJiZ0aGlzLmJhY2tvZmYuc2V0TWF4KGUpLHRoaXMpOnRoaXMuX3JlY29ubmVjdGlvbkRlbGF5TWF4fSxmLnByb3RvdHlwZS50aW1lb3V0PWZ1bmN0aW9uKGUpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLl90aW1lb3V0PWUsdGhpcyk6dGhpcy5fdGltZW91dH0sZi5wcm90b3R5cGUubWF5YmVSZWNvbm5lY3RPbk9wZW49ZnVuY3Rpb24oKXshdGhpcy5yZWNvbm5lY3RpbmcmJnRoaXMuX3JlY29ubmVjdGlvbiYmdGhpcy5iYWNrb2ZmLmF0dGVtcHRzPT09MCYmdGhpcy5yZWNvbm5lY3QoKX0sZi5wcm90b3R5cGUub3Blbj1mLnByb3RvdHlwZS5jb25uZWN0PWZ1bmN0aW9uKGUsdCl7aWYoYyhgcmVhZHlTdGF0ZSAlc2AsdGhpcy5yZWFkeVN0YXRlKSx+dGhpcy5yZWFkeVN0YXRlLmluZGV4T2YoYG9wZW5gKSlyZXR1cm4gdGhpcztjKGBvcGVuaW5nICVzYCx0aGlzLnVyaSksdGhpcy5lbmdpbmU9bih0aGlzLnVyaSx0aGlzLm9wdHMpO3ZhciByPXRoaXMuZW5naW5lLGk9dGhpczt0aGlzLnJlYWR5U3RhdGU9YG9wZW5pbmdgLHRoaXMuc2tpcFJlY29ubmVjdD0hMTt2YXIgYT1vKHIsYG9wZW5gLGZ1bmN0aW9uKCl7aS5vbm9wZW4oKSxlJiZlKCl9KSxzPW8ocixgZXJyb3JgLGZ1bmN0aW9uKHQpe2lmKGMoYGNvbm5lY3RfZXJyb3JgKSxpLmNsZWFudXAoKSxpLnJlYWR5U3RhdGU9YGNsb3NlZGAsaS5lbWl0QWxsKGBjb25uZWN0X2Vycm9yYCx0KSxlKXt2YXIgbj1FcnJvcihgQ29ubmVjdGlvbiBlcnJvcmApO24uZGF0YT10LGUobil9ZWxzZSBpLm1heWJlUmVjb25uZWN0T25PcGVuKCl9KTtpZighMSE9PXRoaXMuX3RpbWVvdXQpe3ZhciBsPXRoaXMuX3RpbWVvdXQ7YyhgY29ubmVjdCBhdHRlbXB0IHdpbGwgdGltZW91dCBhZnRlciAlZGAsbCk7dmFyIHU9c2V0VGltZW91dChmdW5jdGlvbigpe2MoYGNvbm5lY3QgYXR0ZW1wdCB0aW1lZCBvdXQgYWZ0ZXIgJWRgLGwpLGEuZGVzdHJveSgpLHIuY2xvc2UoKSxyLmVtaXQoYGVycm9yYCxgdGltZW91dGApLGkuZW1pdEFsbChgY29ubmVjdF90aW1lb3V0YCxsKX0sbCk7dGhpcy5zdWJzLnB1c2goe2Rlc3Ryb3k6ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQodSl9fSl9cmV0dXJuIHRoaXMuc3Vicy5wdXNoKGEpLHRoaXMuc3Vicy5wdXNoKHMpLHRoaXN9LGYucHJvdG90eXBlLm9ub3Blbj1mdW5jdGlvbigpe2MoYG9wZW5gKSx0aGlzLmNsZWFudXAoKSx0aGlzLnJlYWR5U3RhdGU9YG9wZW5gLHRoaXMuZW1pdChgb3BlbmApO3ZhciBlPXRoaXMuZW5naW5lO3RoaXMuc3Vicy5wdXNoKG8oZSxgZGF0YWAscyh0aGlzLGBvbmRhdGFgKSkpLHRoaXMuc3Vicy5wdXNoKG8oZSxgcGluZ2Ascyh0aGlzLGBvbnBpbmdgKSkpLHRoaXMuc3Vicy5wdXNoKG8oZSxgcG9uZ2Ascyh0aGlzLGBvbnBvbmdgKSkpLHRoaXMuc3Vicy5wdXNoKG8oZSxgZXJyb3JgLHModGhpcyxgb25lcnJvcmApKSksdGhpcy5zdWJzLnB1c2gobyhlLGBjbG9zZWAscyh0aGlzLGBvbmNsb3NlYCkpKSx0aGlzLnN1YnMucHVzaChvKHRoaXMuZGVjb2RlcixgZGVjb2RlZGAscyh0aGlzLGBvbmRlY29kZWRgKSkpfSxmLnByb3RvdHlwZS5vbnBpbmc9ZnVuY3Rpb24oKXt0aGlzLmxhc3RQaW5nPW5ldyBEYXRlLHRoaXMuZW1pdEFsbChgcGluZ2ApfSxmLnByb3RvdHlwZS5vbnBvbmc9ZnVuY3Rpb24oKXt0aGlzLmVtaXRBbGwoYHBvbmdgLG5ldyBEYXRlLXRoaXMubGFzdFBpbmcpfSxmLnByb3RvdHlwZS5vbmRhdGE9ZnVuY3Rpb24oZSl7dGhpcy5kZWNvZGVyLmFkZChlKX0sZi5wcm90b3R5cGUub25kZWNvZGVkPWZ1bmN0aW9uKGUpe3RoaXMuZW1pdChgcGFja2V0YCxlKX0sZi5wcm90b3R5cGUub25lcnJvcj1mdW5jdGlvbihlKXtjKGBlcnJvcmAsZSksdGhpcy5lbWl0QWxsKGBlcnJvcmAsZSl9LGYucHJvdG90eXBlLnNvY2tldD1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXMubnNwc1tlXTtpZighbil7bj1uZXcgcih0aGlzLGUsdCksdGhpcy5uc3BzW2VdPW47dmFyIGk9dGhpcztuLm9uKGBjb25uZWN0aW5nYCxhKSxuLm9uKGBjb25uZWN0YCxmdW5jdGlvbigpe24uaWQ9aS5nZW5lcmF0ZUlkKGUpfSksdGhpcy5hdXRvQ29ubmVjdCYmYSgpfWZ1bmN0aW9uIGEoKXt+bChpLmNvbm5lY3Rpbmcsbil8fGkuY29ubmVjdGluZy5wdXNoKG4pfXJldHVybiBufSxmLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKGUpe3ZhciB0PWwodGhpcy5jb25uZWN0aW5nLGUpO350JiZ0aGlzLmNvbm5lY3Rpbmcuc3BsaWNlKHQsMSksIXRoaXMuY29ubmVjdGluZy5sZW5ndGgmJnRoaXMuY2xvc2UoKX0sZi5wcm90b3R5cGUucGFja2V0PWZ1bmN0aW9uKGUpe2MoYHdyaXRpbmcgcGFja2V0ICVqYCxlKTt2YXIgdD10aGlzO2UucXVlcnkmJmUudHlwZT09PTAmJihlLm5zcCs9YD9gK2UucXVlcnkpLHQuZW5jb2Rpbmc/dC5wYWNrZXRCdWZmZXIucHVzaChlKToodC5lbmNvZGluZz0hMCx0aGlzLmVuY29kZXIuZW5jb2RlKGUsZnVuY3Rpb24obil7Zm9yKHZhciByPTA7cjxuLmxlbmd0aDtyKyspdC5lbmdpbmUud3JpdGUobltyXSxlLm9wdGlvbnMpO3QuZW5jb2Rpbmc9ITEsdC5wcm9jZXNzUGFja2V0UXVldWUoKX0pKX0sZi5wcm90b3R5cGUucHJvY2Vzc1BhY2tldFF1ZXVlPWZ1bmN0aW9uKCl7aWYodGhpcy5wYWNrZXRCdWZmZXIubGVuZ3RoPjAmJiF0aGlzLmVuY29kaW5nKXt2YXIgZT10aGlzLnBhY2tldEJ1ZmZlci5zaGlmdCgpO3RoaXMucGFja2V0KGUpfX0sZi5wcm90b3R5cGUuY2xlYW51cD1mdW5jdGlvbigpe2MoYGNsZWFudXBgKTtmb3IodmFyIGU9dGhpcy5zdWJzLmxlbmd0aCx0PTA7dDxlO3QrKyl0aGlzLnN1YnMuc2hpZnQoKS5kZXN0cm95KCk7dGhpcy5wYWNrZXRCdWZmZXI9W10sdGhpcy5lbmNvZGluZz0hMSx0aGlzLmxhc3RQaW5nPW51bGwsdGhpcy5kZWNvZGVyLmRlc3Ryb3koKX0sZi5wcm90b3R5cGUuY2xvc2U9Zi5wcm90b3R5cGUuZGlzY29ubmVjdD1mdW5jdGlvbigpe2MoYGRpc2Nvbm5lY3RgKSx0aGlzLnNraXBSZWNvbm5lY3Q9ITAsdGhpcy5yZWNvbm5lY3Rpbmc9ITEsdGhpcy5yZWFkeVN0YXRlPT09YG9wZW5pbmdgJiZ0aGlzLmNsZWFudXAoKSx0aGlzLmJhY2tvZmYucmVzZXQoKSx0aGlzLnJlYWR5U3RhdGU9YGNsb3NlZGAsdGhpcy5lbmdpbmUmJnRoaXMuZW5naW5lLmNsb3NlKCl9LGYucHJvdG90eXBlLm9uY2xvc2U9ZnVuY3Rpb24oZSl7Yyhgb25jbG9zZWApLHRoaXMuY2xlYW51cCgpLHRoaXMuYmFja29mZi5yZXNldCgpLHRoaXMucmVhZHlTdGF0ZT1gY2xvc2VkYCx0aGlzLmVtaXQoYGNsb3NlYCxlKSx0aGlzLl9yZWNvbm5lY3Rpb24mJiF0aGlzLnNraXBSZWNvbm5lY3QmJnRoaXMucmVjb25uZWN0KCl9LGYucHJvdG90eXBlLnJlY29ubmVjdD1mdW5jdGlvbigpe2lmKHRoaXMucmVjb25uZWN0aW5nfHx0aGlzLnNraXBSZWNvbm5lY3QpcmV0dXJuIHRoaXM7dmFyIGU9dGhpcztpZih0aGlzLmJhY2tvZmYuYXR0ZW1wdHM+PXRoaXMuX3JlY29ubmVjdGlvbkF0dGVtcHRzKWMoYHJlY29ubmVjdCBmYWlsZWRgKSx0aGlzLmJhY2tvZmYucmVzZXQoKSx0aGlzLmVtaXRBbGwoYHJlY29ubmVjdF9mYWlsZWRgKSx0aGlzLnJlY29ubmVjdGluZz0hMTtlbHNle3ZhciB0PXRoaXMuYmFja29mZi5kdXJhdGlvbigpO2MoYHdpbGwgd2FpdCAlZG1zIGJlZm9yZSByZWNvbm5lY3QgYXR0ZW1wdGAsdCksdGhpcy5yZWNvbm5lY3Rpbmc9ITA7dmFyIG49c2V0VGltZW91dChmdW5jdGlvbigpe2Uuc2tpcFJlY29ubmVjdHx8KGMoYGF0dGVtcHRpbmcgcmVjb25uZWN0YCksZS5lbWl0QWxsKGByZWNvbm5lY3RfYXR0ZW1wdGAsZS5iYWNrb2ZmLmF0dGVtcHRzKSxlLmVtaXRBbGwoYHJlY29ubmVjdGluZ2AsZS5iYWNrb2ZmLmF0dGVtcHRzKSwhZS5za2lwUmVjb25uZWN0JiZlLm9wZW4oZnVuY3Rpb24odCl7dD8oYyhgcmVjb25uZWN0IGF0dGVtcHQgZXJyb3JgKSxlLnJlY29ubmVjdGluZz0hMSxlLnJlY29ubmVjdCgpLGUuZW1pdEFsbChgcmVjb25uZWN0X2Vycm9yYCx0LmRhdGEpKTooYyhgcmVjb25uZWN0IHN1Y2Nlc3NgKSxlLm9ucmVjb25uZWN0KCkpfSkpfSx0KTt0aGlzLnN1YnMucHVzaCh7ZGVzdHJveTpmdW5jdGlvbigpe2NsZWFyVGltZW91dChuKX19KX19LGYucHJvdG90eXBlLm9ucmVjb25uZWN0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5iYWNrb2ZmLmF0dGVtcHRzO3RoaXMucmVjb25uZWN0aW5nPSExLHRoaXMuYmFja29mZi5yZXNldCgpLHRoaXMudXBkYXRlU29ja2V0SWRzKCksdGhpcy5lbWl0QWxsKGByZWNvbm5lY3RgLGUpfX0pKSxiYz1zKCgoZSx0KT0+e3ZhciBuPU1zKCkscj1CcygpLGk9eWMoKSxhPWpzKCkoYHNvY2tldC5pby1jbGllbnRgKTt0LmV4cG9ydHM9ZT1zO3ZhciBvPWUubWFuYWdlcnM9e307ZnVuY3Rpb24gcyhlLHQpe3R5cGVvZiBlPT1gb2JqZWN0YCYmKHQ9ZSxlPXZvaWQgMCksdHx8PXt9O3ZhciByPW4oZSkscz1yLnNvdXJjZSxjPXIuaWQsbD1yLnBhdGgsdT1vW2NdJiZsIGluIG9bY10ubnNwcyxkPXQuZm9yY2VOZXd8fHRbYGZvcmNlIG5ldyBjb25uZWN0aW9uYF18fCExPT09dC5tdWx0aXBsZXh8fHUsZjtyZXR1cm4gZD8oYShgaWdub3Jpbmcgc29ja2V0IGNhY2hlIGZvciAlc2AscyksZj1pKHMsdCkpOihvW2NdfHwoYShgbmV3IGlvIGluc3RhbmNlIGZvciAlc2Ascyksb1tjXT1pKHMsdCkpLGY9b1tjXSksci5xdWVyeSYmIXQucXVlcnkmJih0LnF1ZXJ5PXIucXVlcnkpLGYuc29ja2V0KHIucGF0aCx0KX1lLnByb3RvY29sPXIucHJvdG9jb2wsZS5jb25uZWN0PXMsZS5NYW5hZ2VyPXljKCksZS5Tb2NrZXQ9X2MoKX0pKSx4Yz1jKHtkZWZhdWx0OigpPT5TY30pO2Z1bmN0aW9uIFNjKGUsdCl7cmV0dXJuIHR8fD17fSxuZXcgUHJvbWlzZShmdW5jdGlvbihuLHIpe3ZhciBpPW5ldyBYTUxIdHRwUmVxdWVzdCxhPVtdLG89W10scz17fSxjPWZ1bmN0aW9uKCl7cmV0dXJue29rOihpLnN0YXR1cy8xMDB8MCk9PTIsc3RhdHVzVGV4dDppLnN0YXR1c1RleHQsc3RhdHVzOmkuc3RhdHVzLHVybDppLnJlc3BvbnNlVVJMLHRleHQ6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGkucmVzcG9uc2VUZXh0KX0sanNvbjpmdW5jdGlvbigpe3JldHVybiBQcm9taXNlLnJlc29sdmUoaS5yZXNwb25zZVRleHQpLnRoZW4oSlNPTi5wYXJzZSl9LGJsb2I6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5ldyBCbG9iKFtpLnJlc3BvbnNlXSkpfSxjbG9uZTpjLGhlYWRlcnM6e2tleXM6ZnVuY3Rpb24oKXtyZXR1cm4gYX0sZW50cmllczpmdW5jdGlvbigpe3JldHVybiBvfSxnZXQ6ZnVuY3Rpb24oZSl7cmV0dXJuIHNbZS50b0xvd2VyQ2FzZSgpXX0saGFzOmZ1bmN0aW9uKGUpe3JldHVybiBlLnRvTG93ZXJDYXNlKClpbiBzfX19fTtmb3IodmFyIGwgaW4gaS5vcGVuKHQubWV0aG9kfHxgZ2V0YCxlLCEwKSxpLm9ubG9hZD1mdW5jdGlvbigpe2kuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkucmVwbGFjZSgvXiguKj8pOlteXFNcbl0qKFtcc1xTXSo/KSQvZ20sZnVuY3Rpb24oZSx0LG4pe2EucHVzaCh0PXQudG9Mb3dlckNhc2UoKSksby5wdXNoKFt0LG5dKSxzW3RdPXNbdF0/c1t0XStgLGArbjpufSksbihjKCkpfSxpLm9uZXJyb3I9cixpLndpdGhDcmVkZW50aWFscz10LmNyZWRlbnRpYWxzPT1gaW5jbHVkZWAsdC5oZWFkZXJzKWkuc2V0UmVxdWVzdEhlYWRlcihsLHQuaGVhZGVyc1tsXSk7aS5zZW5kKHQuYm9keXx8bnVsbCl9KX12YXIgQ2M9bygoKCk9Pnt9KSksd2M9cygoKGUsdCk9Pnt0LmV4cG9ydHM9c2VsZi5mZXRjaHx8KHNlbGYuZmV0Y2g9KENjKCksZCh4YykpLmRlZmF1bHR8fChDYygpLGQoeGMpKSl9KSksVGM9cygoZT0+e3ZhciB0PWUmJmUuX19pbXBvcnREZWZhdWx0fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLmZldGNoQmFsYW5jZXJDb25maWc9dm9pZCAwO3ZhciBuPURzKCkscj10KHdjKCkpO2UuZmV0Y2hCYWxhbmNlckNvbmZpZz1mdW5jdGlvbihlKXtyZXR1cm4oMCxuLmRlYnVnKShgdXNpbmcgYmFsYW5jZXIgJHtlfSB0byBnZXQgd2Vic29ja2V0IHVybGApLCgwLHIuZGVmYXVsdCkoYCR7ZX1gKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGU/LnVybCYmZT8udG9rZW4/KCgwLG4uZGVidWcpKGBiYWxhbmNlciByZXR1cm5zIHVybCAke2U/LnVybH0gYW5kIHRva2VuICR7ZT8udG9rZW59YCksZSk6KCgwLG4uZGVidWcpKGBiYWxhbmNlciByZXR1cm5zIGludmFsaWQgcmVzcG9uc2VgKSxudWxsKX0pLmNhdGNoKGZ1bmN0aW9uKGUpe3JldHVybigwLG4uZGVidWcpKGBmYWlsZWQgdG8gcmVzb2x2ZSB1cmw6ICR7ZS5tZXNzYWdlfWApLG51bGx9KX19KSksRWM9cygoZT0+e3ZhciB0PWUmJmUuX19leHRlbmRzfHwoZnVuY3Rpb24oKXt2YXIgZT1mdW5jdGlvbih0LG4pe3JldHVybiBlPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8e19fcHJvdG9fXzpbXX1pbnN0YW5jZW9mIEFycmF5JiZmdW5jdGlvbihlLHQpe2UuX19wcm90b19fPXR9fHxmdW5jdGlvbihlLHQpe2Zvcih2YXIgbiBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LG4pJiYoZVtuXT10W25dKX0sZSh0LG4pfTtyZXR1cm4gZnVuY3Rpb24odCxuKXtpZih0eXBlb2YgbiE9YGZ1bmN0aW9uYCYmbiE9PW51bGwpdGhyb3cgVHlwZUVycm9yKGBDbGFzcyBleHRlbmRzIHZhbHVlIGArU3RyaW5nKG4pK2AgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbGApO2UodCxuKTtmdW5jdGlvbiByKCl7dGhpcy5jb25zdHJ1Y3Rvcj10fXQucHJvdG90eXBlPW49PT1udWxsP09iamVjdC5jcmVhdGUobik6KHIucHJvdG90eXBlPW4ucHJvdG90eXBlLG5ldyByKX19KSgpLG49ZSYmZS5fX3NwcmVhZEFycmF5fHxmdW5jdGlvbihlLHQsbil7aWYobnx8YXJndW1lbnRzLmxlbmd0aD09PTIpZm9yKHZhciByPTAsaT10Lmxlbmd0aCxhO3I8aTtyKyspKGF8fCEociBpbiB0KSkmJihhfHw9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodCwwLHIpLGFbcl09dFtyXSk7cmV0dXJuIGUuY29uY2F0KGF8fEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHQpKX0scj1lJiZlLl9faW1wb3J0RGVmYXVsdHx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Tb2NrZXRNb2NrPXZvaWQgMDt2YXIgaT1EcygpO2UuU29ja2V0TW9jaz1mdW5jdGlvbihlKXt0KHIsZSk7ZnVuY3Rpb24gcih0KXt2YXIgbj1lLmNhbGwodGhpcyl8fHRoaXM7cmV0dXJuIG4ub3B0aW9ucz10LG4uaWQ9YG1vY2tgLG4uY29ubmVjdGVkPSExLG4uZGlzY29ubmVjdGVkPSEwLG4uYmluYXJ5VHlwZT1gYmxvYmAsbn1yZXR1cm4gci5wcm90b3R5cGUub3Blbj1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuKDAsaS5kZWJ1ZykoYFNvY2tldElPTW9jazogY29ubmVjdGApLHRoaXMub25jZShgdmlzaXRvci5jb25uZWN0YCxmdW5jdGlvbih0LG4pe24obnVsbCxlLm9wdGlvbnMuY29ubmVjdERhdGEpfSksdGhpcy5jb25uZWN0ZWQ9ITAsdGhpcy5kaXNjb25uZWN0ZWQ9ITEsdGhpcy5lbWl0KGBjb25uZWN0YCksdGhpc30sci5wcm90b3R5cGUuY2xvc2U9ZnVuY3Rpb24oKXtyZXR1cm4oMCxpLmRlYnVnKShgU29ja2V0SU9Nb2NrOiBkaXNjb25uZWN0YCksdGhpcy5jb25uZWN0ZWQ9ITEsdGhpcy5kaXNjb25uZWN0ZWQ9ITEsdGhpcy5lbWl0KGBkaXNjb25uZWN0YCxgaW8gY2xpZW50IGRpc2Nvbm5lY3RgKSx0aGlzfSxyLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKHQpe3ZhciByPVsuLi5hcmd1bWVudHNdLnNsaWNlKDEpO3JldHVybiBpLmRlYnVnLmFwcGx5KHZvaWQgMCxuKFtgU29ja2V0SU9Nb2NrOiBlbWl0YF0sciwhMSkpLCh0PT09YGNvbm5lY3RgfHx0PT09YGRpc2Nvbm5lY3RgfHx0PT09YHZpc2l0b3IuY29ubmVjdGApJiZlLnByb3RvdHlwZS5lbWl0LmFwcGx5KHRoaXMsbihbdF0sciwhMSkpLHRoaXN9LHIucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oKXt2YXIgZT1bLi4uYXJndW1lbnRzXTtyZXR1cm4gdGhpcy5lbWl0LmFwcGx5KHRoaXMsbihbZVswXV0sZS5zbGljZSgxKSwhMSkpfSxyLnByb3RvdHlwZS5jb21wcmVzcz1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxyLnByb3RvdHlwZS5jb25uZWN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3BlbigpfSxyLnByb3RvdHlwZS5kaXNjb25uZWN0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY2xvc2UoKX0sci5wcm90b3R5cGUuaGFzTGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmxpc3RlbmVyQ291bnQoZSk9PT0wfSxyLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuYWRkTGlzdGVuZXIoZSx0KSx0aGlzfSxyLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMucmVtb3ZlTGlzdGVuZXIoZSx0KSx0aGlzfSxyfShyKE9zKCkpLmRlZmF1bHQpfSkpLERjPXMoKGU9Pnt2YXIgdD1lJiZlLl9fYXNzaWdufHxmdW5jdGlvbigpe3JldHVybiB0PU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuPTEscj1hcmd1bWVudHMubGVuZ3RoO248cjtuKyspZm9yKHZhciBpIGluIHQ9YXJndW1lbnRzW25dLHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihlW2ldPXRbaV0pO3JldHVybiBlfSx0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sbj1lJiZlLl9fY3JlYXRlQmluZGluZ3x8KE9iamVjdC5jcmVhdGU/KGZ1bmN0aW9uKGUsdCxuLHIpe3I9PT12b2lkIDAmJihyPW4pO3ZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxuKTsoIWl8fChgZ2V0YGluIGk/IXQuX19lc01vZHVsZTppLndyaXRhYmxlfHxpLmNvbmZpZ3VyYWJsZSkpJiYoaT17ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdFtuXX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxyLGkpfSk6KGZ1bmN0aW9uKGUsdCxuLHIpe3I9PT12b2lkIDAmJihyPW4pLGVbcl09dFtuXX0pKSxyPWUmJmUuX19leHBvcnRTdGFyfHxmdW5jdGlvbihlLHQpe2Zvcih2YXIgciBpbiBlKXIhPT1gZGVmYXVsdGAmJiFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxyKSYmbih0LGUscil9LGk9ZSYmZS5fX2F3YWl0ZXJ8fGZ1bmN0aW9uKGUsdCxuLHIpe2Z1bmN0aW9uIGkoZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBuP2U6bmV3IG4oZnVuY3Rpb24odCl7dChlKX0pfXJldHVybiBuZXcobnx8PVByb21pc2UpKGZ1bmN0aW9uKG4sYSl7ZnVuY3Rpb24gbyhlKXt0cnl7YyhyLm5leHQoZSkpfWNhdGNoKGUpe2EoZSl9fWZ1bmN0aW9uIHMoZSl7dHJ5e2Moci50aHJvdyhlKSl9Y2F0Y2goZSl7YShlKX19ZnVuY3Rpb24gYyhlKXtlLmRvbmU/bihlLnZhbHVlKTppKGUudmFsdWUpLnRoZW4obyxzKX1jKChyPXIuYXBwbHkoZSx0fHxbXSkpLm5leHQoKSl9KX0sYT1lJiZlLl9fZ2VuZXJhdG9yfHxmdW5jdGlvbihlLHQpe3ZhciBuPXtsYWJlbDowLHNlbnQ6ZnVuY3Rpb24oKXtpZihhWzBdJjEpdGhyb3cgYVsxXTtyZXR1cm4gYVsxXX0sdHJ5czpbXSxvcHM6W119LHIsaSxhLG89T2JqZWN0LmNyZWF0ZSgodHlwZW9mIEl0ZXJhdG9yPT1gZnVuY3Rpb25gP0l0ZXJhdG9yOk9iamVjdCkucHJvdG90eXBlKTtyZXR1cm4gby5uZXh0PXMoMCksby50aHJvdz1zKDEpLG8ucmV0dXJuPXMoMiksdHlwZW9mIFN5bWJvbD09YGZ1bmN0aW9uYCYmKG9bU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSksbztmdW5jdGlvbiBzKGUpe3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gYyhbZSx0XSl9fWZ1bmN0aW9uIGMocyl7aWYocil0aHJvdyBUeXBlRXJyb3IoYEdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy5gKTtmb3IoO28mJihvPTAsc1swXSYmKG49MCkpLG47KXRyeXtpZihyPTEsaSYmKGE9c1swXSYyP2kucmV0dXJuOnNbMF0/aS50aHJvd3x8KChhPWkucmV0dXJuKSYmYS5jYWxsKGkpLDApOmkubmV4dCkmJiEoYT1hLmNhbGwoaSxzWzFdKSkuZG9uZSlyZXR1cm4gYTtzd2l0Y2goaT0wLGEmJihzPVtzWzBdJjIsYS52YWx1ZV0pLHNbMF0pe2Nhc2UgMDpjYXNlIDE6YT1zO2JyZWFrO2Nhc2UgNDpyZXR1cm4gbi5sYWJlbCsrLHt2YWx1ZTpzWzFdLGRvbmU6ITF9O2Nhc2UgNTpuLmxhYmVsKyssaT1zWzFdLHM9WzBdO2NvbnRpbnVlO2Nhc2UgNzpzPW4ub3BzLnBvcCgpLG4udHJ5cy5wb3AoKTtjb250aW51ZTtkZWZhdWx0OmlmKChhPW4udHJ5cywhKGE9YS5sZW5ndGg+MCYmYVthLmxlbmd0aC0xXSkpJiYoc1swXT09PTZ8fHNbMF09PT0yKSl7bj0wO2NvbnRpbnVlfWlmKHNbMF09PT0zJiYoIWF8fHNbMV0+YVswXSYmc1sxXTxhWzNdKSl7bi5sYWJlbD1zWzFdO2JyZWFrfWlmKHNbMF09PT02JiZuLmxhYmVsPGFbMV0pe24ubGFiZWw9YVsxXSxhPXM7YnJlYWt9aWYoYSYmbi5sYWJlbDxhWzJdKXtuLmxhYmVsPWFbMl0sbi5vcHMucHVzaChzKTticmVha31hWzJdJiZuLm9wcy5wb3AoKSxuLnRyeXMucG9wKCk7Y29udGludWV9cz10LmNhbGwoZSxuKX1jYXRjaChlKXtzPVs2LGVdLGk9MH1maW5hbGx5e3I9YT0wfWlmKHNbMF0mNSl0aHJvdyBzWzFdO3JldHVybnt2YWx1ZTpzWzBdP3NbMV06dm9pZCAwLGRvbmU6ITB9fX0sbz1lJiZlLl9faW1wb3J0RGVmYXVsdHx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Tb2NrZXRFcnJvcj12b2lkIDA7dmFyIHM9RHMoKSxjPW8oT3MoKSksbD1vKGJjKCkpLHU9VGMoKSxkPXt0cmFuc3BvcnRzOltgd2Vic29ja2V0YF0scGF0aDpgL3NvY2tldGAscmVjb25uZWN0aW9uOiEwLHJlY29ubmVjdGlvbkRlbGF5OjFlMyxyZWNvbm5lY3Rpb25EZWxheU1heDo1ZTMscmVjb25uZWN0aW9uQXR0ZW1wdHM6MS8wfTtlLmRlZmF1bHQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUpe3RoaXMub3B0aW9ucz1lLHRoaXMuaW5pdGlhbGl6ZWQ9ITEsdGhpcy5mb3JjZVJlY29ubmVjdD0hMSx0aGlzLmlkZW50aXR5PW51bGwsdGhpcy5jb25uZWN0aW9uPW51bGwsdGhpcy5jb25uZWN0Q2FsbGJhY2s9bnVsbCx0aGlzLmRpc2Nvbm5lY3RDYWxsYmFjaz1udWxsLHRoaXMuaW5pdERhdGE9bnVsbCx0aGlzLmludGVybmFsUmVjb25uZWN0aW9uPSExLHRoaXMuaW50ZXJuYWxSZWNvbm5lY3Rpbmc9ITEsdGhpcy5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQ9MCx0aGlzLmVtaXR0ZXI9bmV3IGMuZGVmYXVsdCx0aGlzLnNlbmRCdWZmZXI9W10sdGhpcy5vcHRpb25zLm9wdGlvbnM9dCh0KHQoe30sZCksdGhpcy5vcHRpb25zLm9wdGlvbnMpLHthdXRvQ29ubmVjdDohMX0pfXJldHVybiBlLnByb3RvdHlwZS5pbml0Q29ubmVjdGlvbj1mdW5jdGlvbigpe3JldHVybiBpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlO3JldHVybiBhKHRoaXMsZnVuY3Rpb24obil7c3dpdGNoKG4ubGFiZWwpe2Nhc2UgMDppZih0aGlzLmNvbm5lY3Rpb24pdGhyb3cgRXJyb3IoYENvbm5lY3Rpb24gYWxyZWFkeSBleGlzdHNgKTtyZXR1cm4gdGhpcy5vcHRpb25zLnNvY2tldD8oKDAscy5kZWJ1ZykoYHVzaW5nIHNvY2tldCAke3RoaXMub3B0aW9ucy5zb2NrZXQuaWR9YCksdGhpcy5pbnRlcm5hbFJlY29ubmVjdGlvbj0hMSx0aGlzLnNldENvbm5lY3Rpb24odGhpcy5vcHRpb25zLnNvY2tldCksWzMsNF0pOlszLDFdO2Nhc2UgMTpyZXR1cm4gdGhpcy5vcHRpb25zLmJhbGFuY2VyVXJsP1s0LCgwLHUuZmV0Y2hCYWxhbmNlckNvbmZpZykodGhpcy5vcHRpb25zLmJhbGFuY2VyVXJsKV06WzMsM107Y2FzZSAyOnJldHVybiBlPW4uc2VudCgpLCgwLHMuZGVidWcpKGBjcmVhdGluZyBzb2NrZXQgdG8gJHtlLnVybH0gd2l0aCB0b2tlbiAke2UudG9rZW59YCksdGhpcy5pbnRlcm5hbFJlY29ubmVjdGlvbj0hMCx0aGlzLnNldENvbm5lY3Rpb24oKDAsbC5kZWZhdWx0KShlLnVybCx0KHQoe30sdGhpcy5vcHRpb25zLm9wdGlvbnMpLHthdXRvQ29ubmVjdDohMSxyZWNvbm5lY3Rpb246ITEscXVlcnk6e3Rva2VuOmUudG9rZW59fSkpLCEwKSxbMyw0XTtjYXNlIDM6aWYodGhpcy5vcHRpb25zLnVybCkoMCxzLmRlYnVnKShgY3JlYXRpbmcgc29ja2V0IHRvICR7dGhpcy5vcHRpb25zLnVybH1gKSx0aGlzLmludGVybmFsUmVjb25uZWN0aW9uPSExLHRoaXMuc2V0Q29ubmVjdGlvbigoMCxsLmRlZmF1bHQpKHRoaXMub3B0aW9ucy51cmwsdCh0KHt9LHRoaXMub3B0aW9ucy5vcHRpb25zKSx7YXV0b0Nvbm5lY3Q6ITF9KSkpO2Vsc2UgdGhyb3cgRXJyb3IoYE1pc3NpbmcgcmVxdWlyZWQgcGFyYW1ldGVyIHVybGApO24ubGFiZWw9NDtjYXNlIDQ6cmV0dXJuWzJdfX0pfSl9LGUucHJvdG90eXBlLnNldENvbm5lY3Rpb249ZnVuY3Rpb24oZSxuKXt2YXIgcj10aGlzO249PT12b2lkIDAmJihuPSExKSx0aGlzLmNvbm5lY3Rpb249ZSx0aGlzLmZvcmNlUmVjb25uZWN0PSExLHRoaXMuaW50ZXJuYWxSZWNvbm5lY3Rpb249bixlLm9uKGBjb25uZWN0X2Vycm9yYCxmdW5jdGlvbihlKXtyLmludGVybmFsUmVjb25uZWN0aW9uJiYoci5jb25uZWN0Q2FsbGJhY2s9bnVsbCwoMCxzLmRlYnVnKShgY29ubmVjdGlvbiB3YXMgbm90IHJlY29ubmVjdGVkYCksci5lbWl0dGVyLmVtaXQoYHJlY29ubmVjdF9lcnJvcmAsZSksci5vcHRpb25zLm9wdGlvbnMucmVjb25uZWN0aW9uQXR0ZW1wdHM+ci5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQrMT9yLnJlY29ubmVjdChyLmludGVybmFsUmVjb25uZWN0aW5nQXR0ZW1wdCsxKTpyLmVtaXR0ZXIuZW1pdChgcmVjb25uZWN0X2ZhaWxlZGAsci5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQpKX0pLGUub24oYGNvbm5lY3RgLGZ1bmN0aW9uKCl7KDAscy5kZWJ1ZykoYHNvY2tldCB3YXMgY29ubmVjdGVkYCksci5pbml0aWFsaXplZD0hMSxyLmludGVybmFsUmVjb25uZWN0aW5nPygoMCxzLmRlYnVnKShgY29ubmVjdGlvbiBpcyByZWNvbm5lY3RlZGApLHIuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RgKSxyLmludGVybmFsUmVjb25uZWN0aW5nPSExLHIuaW50ZXJuYWxSZWNvbm5lY3RpbmdBdHRlbXB0PTApOnIuZW1pdHRlci5lbWl0KGBjb25uZWN0YCksci5pbml0aWFsaXplKCkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4oMCxzLmRlYnVnKShgc29ja2V0IHdhcyBpbml0aWFsaXplZGApLHIub25Jbml0aWFsaXplZChlKSxyLmNvbm5lY3RDYWxsYmFjayYmPShyLmNvbm5lY3RDYWxsYmFjayhudWxsLGUpLG51bGwpLGV9KS5jYXRjaChmdW5jdGlvbihlKXsoMCxzLmRlYnVnKShgc29ja2V0IHdhcyBub3QgaW5pdGlhbGl6ZWQgYCx0KHt9LGUpKSxyLm9uSW5pdGlhbGl6ZUVycm9yKGUpLHIuY29ubmVjdENhbGxiYWNrJiY9KHIuY29ubmVjdENhbGxiYWNrKGUpLG51bGwpfSl9KSxlLm9uKGBkaXNjb25uZWN0YCxmdW5jdGlvbihlKXsoMCxzLmRlYnVnKShgc29ja2V0IHdhcyBkaXNjb25uZWN0ZWQgcmVhc29uPScke2V9J2ApLHIuaW5pdGlhbGl6ZWQ9ITEsKCFyLmludGVybmFsUmVjb25uZWN0aW5nfHxyLmludGVybmFsUmVjb25uZWN0aW5nQXR0ZW1wdD09PTEpJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5lbWl0dGVyLmVtaXQoYGRpc2Nvbm5lY3RgLGUpLHIuZGlzY29ubmVjdENhbGxiYWNrJiY9KHIuZGlzY29ubmVjdENhbGxiYWNrKCksbnVsbCl9LDEwMCksci5vcHRpb25zLm9wdGlvbnMucmVjb25uZWN0aW9uJiZyLmludGVybmFsUmVjb25uZWN0aW9uJiYhci5pbnRlcm5hbFJlY29ubmVjdGluZyYmKHIuZm9yY2VSZWNvbm5lY3R8fGUhPT1gaW8gc2VydmVyIGRpc2Nvbm5lY3RgKSYmci5yZWNvbm5lY3QoKX0pLGUub24oYHJlY29ubmVjdGluZ2AsZnVuY3Rpb24oZSl7ci5lbWl0dGVyLmVtaXQoYHJlY29ubmVjdGluZ2AsZSl9KSxlLm9uKGByZWNvbm5lY3RgLGZ1bmN0aW9uKCl7ci5lbWl0dGVyLmVtaXQoYHJlY29ubmVjdGApfSksZS5vbihgcmVjb25uZWN0X2F0dGVtcHRgLGZ1bmN0aW9uKGUpe3IuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RfYXR0ZW1wdGAsZSl9KSxlLm9uKGByZWNvbm5lY3RfZXJyb3JgLGZ1bmN0aW9uKGUpe3IuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RfZXJyb3JgLGUpfSksZS5vbihgcmVjb25uZWN0X2ZhaWxlZGAsZnVuY3Rpb24oKXtyLmVtaXR0ZXIuZW1pdChgcmVjb25uZWN0X2ZhaWxlZGApfSksZS5vbihgZm9yY2VfcmVjb25uZWN0YCxmdW5jdGlvbigpeygwLHMuZGVidWcpKGByZWNlaXZlZCBldmVudCBmb3JjZV9yZWNvbm5lY3QsIHNldHRpbmcgZmxhZyBmb3JjZVJlY29ubmVjdCA9IHRydWVgKSxyLmZvcmNlUmVjb25uZWN0PSEwfSl9LGUucHJvdG90eXBlLmdldENvbm5lY3Rpb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb25uZWN0aW9ufSxlLnByb3RvdHlwZS5pc0Nvbm5lY3RlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbm5lY3Rpb24/LmNvbm5lY3RlZHx8ITF9LGUucHJvdG90eXBlLmlzSW5pdGlhbGl6ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pbml0aWFsaXplZH0sZS5wcm90b3R5cGUuZ2V0SW5pdERhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pbml0RGF0YX0sZS5wcm90b3R5cGUuY29ubmVjdD1mdW5jdGlvbigpe3JldHVybiBpKHRoaXMsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIGEodGhpcyxmdW5jdGlvbih0KXtzd2l0Y2godC5sYWJlbCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbm5lY3Rpb24/WzMsMl06WzQsdGhpcy5pbml0Q29ubmVjdGlvbigpXTtjYXNlIDE6dC5zZW50KCksdC5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bMixuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4pe2UuaW5pdGlhbGl6ZWQ/dChlLmluaXREYXRhKTooKDAscy5kZWJ1ZykoYHN0YXJ0aW5nIGNvbm5lY3RpbmdgKSxlLmNvbm5lY3RDYWxsYmFjaz0oMCxzLmNyZWF0ZUNhbGxiYWNrKSh0LG4pLGUuY29ubmVjdGlvbi5vcGVuKCkpfSldfX0pfSl9LGUucHJvdG90eXBlLmRpc2Nvbm5lY3Q9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4peyFlLmNvbm5lY3Rpb258fGUuY29ubmVjdGlvbi5kaXNjb25uZWN0ZWQ/KGUuY29ubmVjdGlvbj1udWxsLHQoKSk6KCgwLHMuZGVidWcpKGBzdGFydGluZyBkaXNjb25uZWN0aW5nYCksZS5kaXNjb25uZWN0Q2FsbGJhY2s9KDAscy5jcmVhdGVDYWxsYmFjaykodCxuKSxlLmNvbm5lY3Rpb24uY2xvc2UoKSxlLmNvbm5lY3Rpb249bnVsbCl9KX0sZS5wcm90b3R5cGUucmVjb25uZWN0PWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIGU9PT12b2lkIDAmJihlPTEpLHRoaXMuaW50ZXJuYWxSZWNvbm5lY3Rpbmc9ITAsdGhpcy5pbnRlcm5hbFJlY29ubmVjdGluZ0F0dGVtcHQ9ZSx0aGlzLmRpc2Nvbm5lY3QoKS50aGVuKGZ1bmN0aW9uKCl7dmFyIG49TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKih0Lm9wdGlvbnMub3B0aW9ucy5yZWNvbm5lY3Rpb25EZWxheU1heC10Lm9wdGlvbnMub3B0aW9ucy5yZWNvbm5lY3Rpb25EZWxheSkrdC5vcHRpb25zLm9wdGlvbnMucmVjb25uZWN0aW9uRGVsYXkpO3JldHVybigwLHMuZGVidWcpKGBjb25uZWN0aW9uIHdpbGwgcmVjb25uZWN0IGluICR7bn1tc2ApLHQuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RpbmdgLGUpLG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe3NldFRpbWVvdXQoZSxuKX0pfSkudGhlbihmdW5jdGlvbigpe3JldHVybigwLHMuZGVidWcpKGBjb25uZWN0aW9uIGlzIHN0YXJ0aW5nIHJlY29ubmVjdGApLHQuZW1pdHRlci5lbWl0KGByZWNvbm5lY3RfYXR0ZW1wdGAsZSksdC5jb25uZWN0KCl9KX0sZS5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihlKXtlKHt9KX0pfSxlLnByb3RvdHlwZS5vbkluaXRpYWxpemVkPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7dGhpcy5pbml0aWFsaXplZHx8KHRoaXMuaW5pdGlhbGl6ZWQ9ITAsdGhpcy5pbml0RGF0YT1lLCgwLHMuZGVidWcpKGBlbWl0IGluaXRpYWxpemVkYCksdGhpcy5lbWl0dGVyLmVtaXQoYGluaXRpYWxpemVkYCxlKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWYodC5zZW5kQnVmZmVyLmxlbmd0aD4wKXsoMCxzLmRlYnVnKShgc2VuZGluZyBidWZmZXJlZCAke3Quc2VuZEJ1ZmZlci5sZW5ndGh9IGV2ZW50c2ApO2Zvcih2YXIgZT0wO2U8dC5zZW5kQnVmZmVyLmxlbmd0aDtlKyspe3ZhciBuPXQuc2VuZEJ1ZmZlcltlXTt0LmNvbm5lY3Rpb24uZW1pdChuLm5hbWUsbi5kYXRhLG4uY2FsbGJhY2spfXQuc2VuZEJ1ZmZlcj1bXX19LDEpKX0sZS5wcm90b3R5cGUub25Jbml0aWFsaXplRXJyb3I9ZnVuY3Rpb24oZSl7dGhpcy5kaXNjb25uZWN0KCksKDAscy5kZWJ1ZykoYGVtaXQgaW5pdGlhbGl6ZV9lcnJvcmAsdCh7fSxlKSksdGhpcy5lbWl0dGVyLmVtaXQoYGluaXRpYWxpemVfZXJyb3JgLGUpfSxlLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGUsdCxuKXt0aGlzLmluaXRpYWxpemVkP3RoaXMuY29ubmVjdGlvbi5lbWl0KGUsdCxuKTp0aGlzLnNlbmRCdWZmZXIucHVzaCh7bmFtZTplLGRhdGE6dCxjYWxsYmFjazpufSl9LGUucHJvdG90eXBlLm9uPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZW1pdHRlci5vbihlLHQpLHRoaXN9LGUucHJvdG90eXBlLm9uY2U9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5lbWl0dGVyLm9uY2UoZSx0KSx0aGlzfSxlLnByb3RvdHlwZS5yZW1vdmVBbGxMaXN0ZW5lcnM9ZnVuY3Rpb24oKXtmb3IodmFyIGUsdD1bXSxuPTA7bjxhcmd1bWVudHMubGVuZ3RoO24rKyl0W25dPWFyZ3VtZW50c1tuXTtyZXR1cm4oZT10aGlzLmVtaXR0ZXIpLnJlbW92ZUFsbExpc3RlbmVycy5hcHBseShlLHQpLHRoaXN9LGV9KCk7dmFyIGY9RHMoKTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgU29ja2V0RXJyb3JgLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBmLlNvY2tldEVycm9yfX0pLHIoRWMoKSxlKX0pKSxPYz1zKChlPT57dmFyIHQ9ZSYmZS5fX2V4dGVuZHN8fChmdW5jdGlvbigpe3ZhciBlPWZ1bmN0aW9uKHQsbil7cmV0dXJuIGU9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKGUsdCl7ZS5fX3Byb3RvX189dH18fGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuIGluIHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsbikmJihlW25dPXRbbl0pfSxlKHQsbil9O3JldHVybiBmdW5jdGlvbih0LG4pe2lmKHR5cGVvZiBuIT1gZnVuY3Rpb25gJiZuIT09bnVsbCl0aHJvdyBUeXBlRXJyb3IoYENsYXNzIGV4dGVuZHMgdmFsdWUgYCtTdHJpbmcobikrYCBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsYCk7ZSh0LG4pO2Z1bmN0aW9uIHIoKXt0aGlzLmNvbnN0cnVjdG9yPXR9dC5wcm90b3R5cGU9bj09PW51bGw/T2JqZWN0LmNyZWF0ZShuKTooci5wcm90b3R5cGU9bi5wcm90b3R5cGUsbmV3IHIpfX0pKCksbj1lJiZlLl9fYXNzaWdufHxmdW5jdGlvbigpe3JldHVybiBuPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxuPTEscj1hcmd1bWVudHMubGVuZ3RoO248cjtuKyspZm9yKHZhciBpIGluIHQ9YXJndW1lbnRzW25dLHQpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihlW2ldPXRbaV0pO3JldHVybiBlfSxuLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0scj1lJiZlLl9fYXdhaXRlcnx8ZnVuY3Rpb24oZSx0LG4scil7ZnVuY3Rpb24gaShlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIG4/ZTpuZXcgbihmdW5jdGlvbih0KXt0KGUpfSl9cmV0dXJuIG5ldyhufHw9UHJvbWlzZSkoZnVuY3Rpb24obixhKXtmdW5jdGlvbiBvKGUpe3RyeXtjKHIubmV4dChlKSl9Y2F0Y2goZSl7YShlKX19ZnVuY3Rpb24gcyhlKXt0cnl7YyhyLnRocm93KGUpKX1jYXRjaChlKXthKGUpfX1mdW5jdGlvbiBjKGUpe2UuZG9uZT9uKGUudmFsdWUpOmkoZS52YWx1ZSkudGhlbihvLHMpfWMoKHI9ci5hcHBseShlLHR8fFtdKSkubmV4dCgpKX0pfSxpPWUmJmUuX19nZW5lcmF0b3J8fGZ1bmN0aW9uKGUsdCl7dmFyIG49e2xhYmVsOjAsc2VudDpmdW5jdGlvbigpe2lmKGFbMF0mMSl0aHJvdyBhWzFdO3JldHVybiBhWzFdfSx0cnlzOltdLG9wczpbXX0scixpLGEsbz1PYmplY3QuY3JlYXRlKCh0eXBlb2YgSXRlcmF0b3I9PWBmdW5jdGlvbmA/SXRlcmF0b3I6T2JqZWN0KS5wcm90b3R5cGUpO3JldHVybiBvLm5leHQ9cygwKSxvLnRocm93PXMoMSksby5yZXR1cm49cygyKSx0eXBlb2YgU3ltYm9sPT1gZnVuY3Rpb25gJiYob1tTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KSxvO2Z1bmN0aW9uIHMoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3JldHVybiBjKFtlLHRdKX19ZnVuY3Rpb24gYyhzKXtpZihyKXRocm93IFR5cGVFcnJvcihgR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLmApO2Zvcig7byYmKG89MCxzWzBdJiYobj0wKSksbjspdHJ5e2lmKHI9MSxpJiYoYT1zWzBdJjI/aS5yZXR1cm46c1swXT9pLnRocm93fHwoKGE9aS5yZXR1cm4pJiZhLmNhbGwoaSksMCk6aS5uZXh0KSYmIShhPWEuY2FsbChpLHNbMV0pKS5kb25lKXJldHVybiBhO3N3aXRjaChpPTAsYSYmKHM9W3NbMF0mMixhLnZhbHVlXSksc1swXSl7Y2FzZSAwOmNhc2UgMTphPXM7YnJlYWs7Y2FzZSA0OnJldHVybiBuLmxhYmVsKysse3ZhbHVlOnNbMV0sZG9uZTohMX07Y2FzZSA1Om4ubGFiZWwrKyxpPXNbMV0scz1bMF07Y29udGludWU7Y2FzZSA3OnM9bi5vcHMucG9wKCksbi50cnlzLnBvcCgpO2NvbnRpbnVlO2RlZmF1bHQ6aWYoKGE9bi50cnlzLCEoYT1hLmxlbmd0aD4wJiZhW2EubGVuZ3RoLTFdKSkmJihzWzBdPT09Nnx8c1swXT09PTIpKXtuPTA7Y29udGludWV9aWYoc1swXT09PTMmJighYXx8c1sxXT5hWzBdJiZzWzFdPGFbM10pKXtuLmxhYmVsPXNbMV07YnJlYWt9aWYoc1swXT09PTYmJm4ubGFiZWw8YVsxXSl7bi5sYWJlbD1hWzFdLGE9czticmVha31pZihhJiZuLmxhYmVsPGFbMl0pe24ubGFiZWw9YVsyXSxuLm9wcy5wdXNoKHMpO2JyZWFrfWFbMl0mJm4ub3BzLnBvcCgpLG4udHJ5cy5wb3AoKTtjb250aW51ZX1zPXQuY2FsbChlLG4pfWNhdGNoKGUpe3M9WzYsZV0saT0wfWZpbmFsbHl7cj1hPTB9aWYoc1swXSY1KXRocm93IHNbMV07cmV0dXJue3ZhbHVlOnNbMF0/c1sxXTp2b2lkIDAsZG9uZTohMH19fSxhPWUmJmUuX19pbXBvcnREZWZhdWx0fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLldlYnNvY2tldFZpc2l0b3JDbGllbnQ9dm9pZCAwO3ZhciBvPWEoRGMoKSkscz1EcygpLGM9ZnVuY3Rpb24oZSl7dChhLGUpO2Z1bmN0aW9uIGEodCl7dmFyIG49ZS5jYWxsKHRoaXMsdC5jb25uZWN0aW9uKXx8dGhpcztyZXR1cm4gbi5zZXJ2ZXJWZXJzaW9uPW51bGwsbi51cGRhdGVkVmFsdWVzPXt9LG4uY29ubmVjdERhdGE9dC5kYXRhLG4uaWRlbnRpdHk9bnVsbCxufXJldHVybiBhLnByb3RvdHlwZS5zZXRDb25uZWN0aW9uPWZ1bmN0aW9uKHQpe2UucHJvdG90eXBlLnNldENvbm5lY3Rpb24uY2FsbCh0aGlzLHQpLHQub24oYHNlcnZlci5lcnJvcmAsKDAscy5ib3VuZCkodGhpcyxgb25TZXJ2ZXJFcnJvcmApKSx0Lm9uKGBhY2NvdW50LnVwZGF0ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBhY2NvdW50LnVwZGF0ZWRgKSksdC5vbihgYWdlbnQudXBkYXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGFnZW50LnVwZGF0ZWRgKSksdC5vbihgYWdlbnQuc3RhdHVzX3VwZGF0ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBhZ2VudC5zdGF0dXNfdXBkYXRlZGApKSx0Lm9uKGBhZ2VudC5yZW1vdmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgYWdlbnQucmVtb3ZlZGApKSx0Lm9uKGB2aXNpdG9yLnVwZGF0ZWRgLCgwLHMuYm91bmQpKHRoaXMsYG9uVmlzaXRvclVwZGF0ZWRgKSksdC5vbihgY2hhdC51cGRhdGVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC51cGRhdGVkYCkpLHQub24oYGNoYXQuYWdlbnRfam9pbmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5hZ2VudF9qb2luZWRgKSksdC5vbihgY2hhdC5hZ2VudF9hc3NpZ25lZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuYWdlbnRfYXNzaWduZWRgKSksdC5vbihgY2hhdC5hZ2VudF91bmFzc2lnbmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5hZ2VudF91bmFzc2lnbmVkYCkpLHQub24oYGNoYXQuYWdlbnRfbGVmdGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuYWdlbnRfbGVmdGApKSx0Lm9uKGBjaGF0Lm9wZW5lZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQub3BlbmVkYCkpLHQub24oYGNoYXQuc2VydmVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5zZXJ2ZWRgKSksdC5vbihgY2hhdC5jbG9zZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0LmNsb3NlZGApKSx0Lm9uKGBjaGF0LnZpc2l0b3JfY2xvc2VkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC52aXNpdG9yX2Nsb3NlZGApKSx0Lm9uKGBjaGF0Lm1lc3NhZ2VfcmVjZWl2ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0Lm1lc3NhZ2VfcmVjZWl2ZWRgKSksdC5vbihgY2hhdC5tZXNzYWdlX3VwZGF0ZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0Lm1lc3NhZ2VfdXBkYXRlZGApKSx0Lm9uKGBjaGF0Lm1lc3NhZ2VfZGVsZXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQubWVzc2FnZV9kZWxldGVkYCkpLHQub24oYGNoYXQuYWdlbnRfdHlwaW5nYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5hZ2VudF90eXBpbmdgKSksdC5vbihgY2hhdC5yYXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQucmF0ZWRgKSksdC5vbihgY2hhdC5yYXRpbmdfY2FuY2VsbGVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgY2hhdC5yYXRpbmdfY2FuY2VsbGVkYCkpLHQub24oYGNoYXQucmF0aW5nX3N1Z2dlc3RlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQucmF0aW5nX3N1Z2dlc3RlZGApKSx0Lm9uKGBjaGF0LmNvbnRhY3RfcmVhZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuY29udGFjdF9yZWFkYCkpLHQub24oYGNoYXQuZGVsZXRlZGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQuZGVsZXRlZGApKSx0Lm9uKGBjaGF0LnRpY2tldF9mb3JtX2ZpbmlzaGAsKDAscy5jcmVhdGVFbWl0dGVyKSh0aGlzLmVtaXR0ZXIsYGNoYXQudGlja2V0X2Zvcm1fZmluaXNoYCkpLHQub24oYGNoYXQudHJhbnNjcmlwdF9wZGZgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjaGF0LnRyYW5zY3JpcHRfcGRmYCkpLHQub24oYGNvbnRhY3QuYWNxdWlyZWRgLCgwLHMuY3JlYXRlRW1pdHRlcikodGhpcy5lbWl0dGVyLGBjb250YWN0LmFjcXVpcmVkYCkpLHQub24oYGlkZW50aXR5LnN0YXR1c191cGRhdGVkYCwoMCxzLmNyZWF0ZUVtaXR0ZXIpKHRoaXMuZW1pdHRlcixgaWRlbnRpdHkuc3RhdHVzX3VwZGF0ZWRgKSl9LGEucHJvdG90eXBlLm9uPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuZW1pdHRlci5vbihlLHQpLHRoaXN9LGEucHJvdG90eXBlLm9uY2U9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5lbWl0dGVyLm9uY2UoZSx0KSx0aGlzfSxhLnByb3RvdHlwZS5nZXRJZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlkZW50aXR5P3RoaXMuaWRlbnRpdHkuaWQ6bnVsbH0sYS5wcm90b3R5cGUuZ2V0SWRlbnRpdHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZGVudGl0eX0sYS5wcm90b3R5cGUuY29ubmVjdD1mdW5jdGlvbigpe3JldHVybiBlLnByb3RvdHlwZS5jb25uZWN0LmNhbGwodGhpcyl9LGEucHJvdG90eXBlLmRpc2Nvbm5lY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gcih0aGlzLGFyZ3VtZW50cyx2b2lkIDAsZnVuY3Rpb24odCl7dmFyIG49dGhpcztyZXR1cm4gdD09PXZvaWQgMCYmKHQ9ITEpLGkodGhpcyxmdW5jdGlvbihyKXtzd2l0Y2goci5sYWJlbCl7Y2FzZSAwOnJldHVybiB0P1s0LG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsdCl7bi5zZW5kKGB2aXNpdG9yLmxvZ291dGAse30sKDAscy5jcmVhdGVDYWxsYmFjaykoZSx0KSl9KV06WzMsMl07Y2FzZSAxOnIuc2VudCgpLHIubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzIsZS5wcm90b3R5cGUuZGlzY29ubmVjdC5jYWxsKHRoaXMpXX19KX0pfSxhLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0IGluIGU9PT12b2lkIDAmJihlPXt9KSx0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLGUpdGhpcy5pZGVudGl0eVt0XT1lW3RdLHRoaXMudXBkYXRlZFZhbHVlc1t0XT1lW3RdO3RoaXMuc2F2ZVZpc2l0b3JWYWx1ZXMoKX0sYS5wcm90b3R5cGUuYXV0aGVudGljYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYHZpc2l0b3IuYXV0aGVudGljYXRlYCx7dmFsdWVzOmV9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLm5vdGlmeT1mdW5jdGlvbihlLHQpe3ZhciBuPXRoaXM7cmV0dXJuIHQ9PT12b2lkIDAmJih0PW51bGwpLHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24ocixpKXtuLnNlbmQoYHZpc2l0b3Iubm90aWZ5YCx7bmFtZTplLHZhbHVlOnR9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKHIsaSkpfSl9LGEucHJvdG90eXBlLmNoYXRSZWFkPWZ1bmN0aW9uKCl7dGhpcy5jaGVja1NlcnZlclZlcnNpb24oKSx0aGlzLnNlbmQoYGNoYXQucmVhZGAsbnVsbCl9LGEucHJvdG90eXBlLmNoYXRUeXBpbmc9ZnVuY3Rpb24oZSx0KXt0PT09dm9pZCAwJiYodD1udWxsKSx0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLHRoaXMuc2VuZChgY2hhdC50eXBpbmdgLHt0eXBpbmc6e2lzOmUsdGV4dDp0fX0pfSxhLnByb3RvdHlwZS5jaGF0TWVzc2FnZT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLG5ldyBQcm9taXNlKGZ1bmN0aW9uKG4scil7dC5zZW5kKGBjaGF0Lm1lc3NhZ2VgLGUsKDAscy5jcmVhdGVDYWxsYmFjaykobixyKSl9KX0sYS5wcm90b3R5cGUuY2hhdENsb3NlPWZ1bmN0aW9uKGUpe2U9PT12b2lkIDAmJihlPW51bGwpLHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksdGhpcy5zZW5kKGBjaGF0LmNsb3NlYCx7dHlwZTplfSl9LGEucHJvdG90eXBlLmNoYXRVcGxvYWRJbml0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gdGhpcy5jaGVja1NlcnZlclZlcnNpb24oKSxuZXcgUHJvbWlzZShmdW5jdGlvbih0LG4pe2Uuc2VuZChgY2hhdC51cGxvYWRfaW5pdGAsbnVsbCwoMCxzLmNyZWF0ZUNhbGxiYWNrKSh0LG4pKX0pfSxhLnByb3RvdHlwZS5jaGF0VXBsb2FkRmluaXNoPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYGNoYXQudXBsb2FkX2ZpbmlzaGAse3VwbG9hZFRva2VuOmV9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLmNoYXRUcmFuc2NyaXB0PWZ1bmN0aW9uKGUsdCl7dmFyIG49dGhpcztyZXR1cm4gdGhpcy5jaGVja1NlcnZlclZlcnNpb24oKSxuZXcgUHJvbWlzZShmdW5jdGlvbihyLGkpe24uc2VuZChgY2hhdC50cmFuc2NyaXB0YCx7ZW1haWw6ZSxsYW5nOnR9LCgwLHMuY3JlYXRlQ2FsbGJhY2spKHIsaSkpfSl9LGEucHJvdG90eXBlLmNoYXRUaWNrZXRGb3JtRmluaXNoPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYGNoYXQudGlja2V0X2Zvcm1fZmluaXNoYCxlLCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLmNoYXRSYXRlSW5pdD1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24odCxuKXtlLnNlbmQoYGNoYXQucmF0ZV9pbml0YCxudWxsLCgwLHMuY3JlYXRlQ2FsbGJhY2spKHQsbikpfSl9LGEucHJvdG90eXBlLmNoYXRSYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXt0LnNlbmQoYGNoYXQucmF0ZWAsZSwoMCxzLmNyZWF0ZUNhbGxiYWNrKShuLHIpKX0pfSxhLnByb3RvdHlwZS5jaGF0VHJhbnNjcmlwdFBkZj1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMuY2hlY2tTZXJ2ZXJWZXJzaW9uKCksbmV3IFByb21pc2UoZnVuY3Rpb24odCxuKXtlLnNlbmQoYGNoYXQudHJhbnNjcmlwdF9wZGZgLG51bGwsKDAscy5jcmVhdGVDYWxsYmFjaykodCxuKSl9KX0sYS5wcm90b3R5cGUubGlua09wZW5lZD1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLmNoZWNrU2VydmVyVmVyc2lvbigpLG5ldyBQcm9taXNlKGZ1bmN0aW9uKG4scil7dC5zZW5kKGBjaGF0Lmxpbmtfb3BlbmVkYCxlLCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLnZpc2l0b3JDb25uZWN0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PW4oe3ZlcnNpb246YS5DTElFTlRfVkVSU0lPTn0sdGhpcy5jb25uZWN0RGF0YSk7Zm9yKHZhciByIGluIHRoaXMudXBkYXRlZFZhbHVlcyl0W3JdPXRoaXMudXBkYXRlZFZhbHVlc1tyXTtpZih0aGlzLnVwZGF0ZWRWYWx1ZXM9e30sdGhpcy5pZGVudGl0eSlmb3IodmFyIHIgaW4gdGhpcy5pZGVudGl0eSlbYGJhbm5lZEF0YCxgY2hhdElkYCxgc3RhdHVzYF0uaW5jbHVkZXMocil8fCh0W3JdPXRoaXMuaWRlbnRpdHlbcl0pO3JldHVybiB0aGlzLmVtaXR0ZXIuZW1pdChgaW5pdGlhbGl6ZWAsdCksbmV3IFByb21pc2UoZnVuY3Rpb24obixyKXtlLmNvbm5lY3Rpb24uZW1pdChgdmlzaXRvci5jb25uZWN0YCx0LCgwLHMuY3JlYXRlQ2FsbGJhY2spKG4scikpfSl9LGEucHJvdG90eXBlLnZpc2l0b3JEaXNjb25uZWN0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odCxuKXtlLmNvbm5lY3Rpb24uZW1pdChgdmlzaXRvci5kaXNjb25uZWN0YCx7fSwoMCxzLmNyZWF0ZUNhbGxiYWNrKSh0LG4pKX0pfSxhLnByb3RvdHlwZS5vblZpc2l0b3JVcGRhdGVkPWZ1bmN0aW9uKGUpe3ZhciB0PXt9O2Zvcih2YXIgbiBpbiBlLmNoYW5nZXMpYS5pZGVudGl0eVByb3BlcnRpZXMuaW5jbHVkZXMobikmJih0aGlzLmlkZW50aXR5JiYodGhpcy5pZGVudGl0eVtuXT1lLmNoYW5nZXNbbl0pLHRbbl09ZS5jaGFuZ2VzW25dKTtPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KS5sZW5ndGg+MCYmdGhpcy5lbWl0dGVyLmVtaXQoYHZpc2l0b3IudXBkYXRlZGAsdCl9LGEucHJvdG90eXBlLm9uU2VydmVyRXJyb3I9ZnVuY3Rpb24oZSl7dmFyIHQ9KDAscy5jcmVhdGVTb2NrZXRFcnJvcikoZSk7dGhpcy5lbWl0dGVyLmVtaXQoYGVycm9yYCx0KX0sYS5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJuIHRoaXMudmlzaXRvckNvbm5lY3QoKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBlLnNlcnZlclZlcnNpb249dC5zZXJ2ZXJWZXJzaW9uLGUuaWRlbnRpdHk9bihuKHt9LHQudmlzaXRvcikse3ZhcmlhYmxlczpuKHt9LHQudmlzaXRvci52YXJpYWJsZXMpfSksdH0pfSxhLnByb3RvdHlwZS5zYXZlVmlzaXRvclZhbHVlcz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5pbml0aWFsaXplZCYmc2V0VGltZW91dChmdW5jdGlvbigpe2lmKCEoIWUuaW5pdGlhbGl6ZWR8fE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGUudXBkYXRlZFZhbHVlcykubGVuZ3RoPT09MCkpe3ZhciB0PXt9O2Zvcih2YXIgbiBpbiBlLnVwZGF0ZWRWYWx1ZXMpdFtuXT1lLnVwZGF0ZWRWYWx1ZXNbbl07ZS5zZW5kKGB2aXNpdG9yLnVwZGF0ZWAse3ZhbHVlczp0fSksZS51cGRhdGVkVmFsdWVzPXt9fX0sMSl9LGEucHJvdG90eXBlLmNoZWNrU2VydmVyVmVyc2lvbj1mdW5jdGlvbigpe2lmKHRoaXMuc2VydmVyVmVyc2lvbj09PW51bGwpdGhyb3cgRXJyb3IoYENsaWVudCBub3QgeWV0IGNvbm5lY3RlZCB0byBzZXJ2ZXJgKX0sYS5DTElFTlRfVkVSU0lPTj02LGEuaWRlbnRpdHlQcm9wZXJ0aWVzPVtgaWRgLGBuYW1lYCxgZW1haWxgLGBwaG9uZWAsYGNoYXRJZGAsYHZhcmlhYmxlc2AsYGxhbmdgLGBncm91cGAsYGJhbm5lZEF0YCxgdHJpZ2dlcmFibGVgLGB2aXNpdHNgLGBnZHByQXBwcm92ZWRgXSxhfShvLmRlZmF1bHQpO2UuV2Vic29ja2V0VmlzaXRvckNsaWVudD1jLChmdW5jdGlvbihlKXsoZnVuY3Rpb24oZSl7ZS5XaWRnZXRPcGVuPWB3aWRnZXRfb3BlbmAsZS5XaWRnZXRTaG93PWB3aWRnZXRfc2hvd2AsZS5WaXNpdG9yQWN0aXZlPWB2aXNpdG9yX2FjdGl2ZWAsZS5WaXNpdG9ySW5hY3RpdmU9YHZpc2l0b3JfaW5hY3RpdmVgfSkoZS5FdmVudE5hbWV8fD17fSl9KShjfHwoZS5XZWJzb2NrZXRWaXNpdG9yQ2xpZW50PWM9e30pKX0pKSxrYz1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pfSkpLEFjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5SYXRpbmdUYXJnZXQ9dm9pZCAwO3ZhciB0OyhmdW5jdGlvbihlKXtlLkFnZW50PWBhZ2VudGAsZS5BaT1gYWlgfSkodHx8KGUuUmF0aW5nVGFyZ2V0PXQ9e30pKX0pKSxqYz1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLGUuTWVzc2FnZURlbGl2ZXJ5RmFpbFJlYXNvbj1lLk1lc3NhZ2VEZWxpdmVyeVN0YXR1cz1lLkFnZW50RGV2aWNlUGxhdGZvcm09ZS5BZ2VudERldmljZVR5cGU9ZS5WaXNpdG9yU3RhdHVzPWUuQ2hhdFJlYWRJbmZvVHlwZT1lLkNoYXRTdGF0dXM9ZS5BZ2VudFN0YXR1cz1lLkFjY291bnRTdGF0dXM9dm9pZCAwLGUuQWNjb3VudFN0YXR1cz17T25saW5lOmBvbmxpbmVgLE9mZmxpbmU6YG9mZmxpbmVgLE9mZmxpbmVXaXRoQUk6YG9mZmxpbmVXaXRoQWlgfSxlLkFnZW50U3RhdHVzPXtPbmxpbmU6YG9ubGluZWAsT2ZmbGluZTpgb2ZmbGluZWB9LGUuQ2hhdFN0YXR1cz17UGVuZGluZzpgcGVuZGluZ2AsT3Blbjpgb3BlbmAsQ2xvc2VkOmBjbG9zZWRgLFNlcnZlZDpgc2VydmVkYH0sZS5DaGF0UmVhZEluZm9UeXBlPXtBZ2VudDpgYWdlbnRgLENvbnRhY3Q6YGNvbnRhY3RgfSxlLlZpc2l0b3JTdGF0dXM9e0FjdGl2ZTpgYWN0aXZlYCxDbGlja2VkOmBjbGlja2VkYCxJZGxlOmBpZGxlYCxTZXJ2ZWQ6YHNlcnZlZGAsVW5zZXJ2ZWQ6YHVuc2VydmVkYCxUcmlnZ2VyZWQ6YHRyaWdnZXJlZGB9LGUuQWdlbnREZXZpY2VUeXBlPXtCcm93c2VyOmBicm93c2VyYCxNb2JpbGU6YG1vYmlsZWAsWG1wcDpgeG1wcGAsT3RoZXI6YG90aGVyYH0sZS5BZ2VudERldmljZVBsYXRmb3JtPXtJT1M6YGlvc2AsQU5EUk9JRDpgYW5kcm9pZGB9LGUuTWVzc2FnZURlbGl2ZXJ5U3RhdHVzPXtPazpgb2tgLFBlcm1hbmVudEZhaWw6YHBlcm1hbmVudF9mYWlsYCxUZW1wb3JhcnlGYWlsOmB0ZW1wb3JhcnlfZmFpbGAsQ29tcGxhaW5lZDpgY29tcGxhaW5lZGAsU2Vlbjpgc2VlbmB9LGUuTWVzc2FnZURlbGl2ZXJ5RmFpbFJlYXNvbj17RmFjZWJvb2syNGhXaW5kb3c6YGZhY2Vib29rLm91dHNpZGVfYWxsb3dlZF93aW5kb3dgLEluc3RhZ3JhbUV4Y2VlZGVkRmlsZVNpemU6YGluc3RhZ3JhbS5leGNlZWRlZF9maWxlX3NpemVgLEluc3RhZ3JhbVVua25vd246YGluc3RhZ3JhbS51bmtub3duYCxJbnN0YWdyYW1VbnN1cHBvcnRlZEZpbGVUeXBlOmBpbnN0YWdyYW0udW5zdXBwb3J0ZWRfZmlsZV90eXBlYCxXaGF0c2FwcFVuc3VwcG9ydGVkRmlsZTpgd2hhdHNhcHAudW5zdXBwb3J0ZWRfZmlsZV90eXBlYCxXaGF0c2FwcFVua25vd246YHdoYXRzYXBwLnVua25vd25gfX0pKSxNYz1zKChlPT57dmFyIHQ9ZSYmZS5fX2NyZWF0ZUJpbmRpbmd8fChPYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsbik7KCFpfHwoYGdldGBpbiBpPyF0Ll9fZXNNb2R1bGU6aS53cml0YWJsZXx8aS5jb25maWd1cmFibGUpKSYmKGk9e2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbbl19fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUscixpKX0pOihmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKSxlW3JdPXRbbl19KSksbj1lJiZlLl9fZXhwb3J0U3Rhcnx8ZnVuY3Rpb24oZSxuKXtmb3IodmFyIHIgaW4gZSlyIT09YGRlZmF1bHRgJiYhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJnQobixlLHIpfTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Tb2NrZXRFcnJvcj1lLmRlZmF1bHQ9dm9pZCAwO3ZhciByPU9jKCk7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYGRlZmF1bHRgLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiByLldlYnNvY2tldFZpc2l0b3JDbGllbnR9fSksbihPYygpLGUpLG4oa2MoKSxlKSxuKEFjKCksZSk7dmFyIGk9RHMoKTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgU29ja2V0RXJyb3JgLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBpLlNvY2tldEVycm9yfX0pLG4oamMoKSxlKX0pKSxOYz1PKG51bGwpLFBjPU8oITEpLEZjPU8oW10pLEljPWU9PntGYy51cGRhdGUodD0+Wy4uLnQsZV0pfSxMYz0oKT0+e2xldCBlO3JldHVybiBGYy51cGRhdGUodD0+KGU9dC5wb3AoKSx0KSksZT8/bnVsbH0sUmM9KCk9PkEoRmMpLmxlbmd0aD09PTAsemM9ayhOYyxlPT5lIT09bnVsbCksQmM9KGUse3VzZVN0YWNrOnQ9ITF9PXt9KT0+e05jLnVwZGF0ZShuPT4odCYmbiYmSWMobiksUGMuc2V0KG4hPT1udWxsKSxlKSl9LFZjPSgpPT57bGV0IGU9bnVsbDtSYygpfHwoZT1MYygpKSxOYy5zZXQoZSl9LEhjPWZ1bmN0aW9uKGUpe3JldHVybiBlW2UuT3B0aW9ucz0wXT1gT3B0aW9uc2AsZVtlLkdkcHJBbmRQcml2YWN5PTFdPWBHZHByQW5kUHJpdmFjeWAsZVtlLkF1dGhGb3JtPTJdPWBBdXRoRm9ybWAsZVtlLkNsb3NlQ2hhdD0zXT1gQ2xvc2VDaGF0YCxlW2UuQ2hhdFJhdGluZz00XT1gQ2hhdFJhdGluZ2AsZVtlLlRpY2tldEZvcm09NV09YFRpY2tldEZvcm1gLGV9KHt9KSxVYz0xZTMsV2M9U3ltYm9sKGBjb250ZW50TGlzdEl0ZW1gKSxHYz1TeW1ib2woYGNvbnRlbnRNZXNzYWdlQXR0YWNobWVudGApLEtjPWAtcmVwbGllc2AscWM9LjM1LEpjPTVlMyxZYz1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pfSkpLFhjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5DYXJkQWN0aW9uVHlwZT1lLkNhcmRzTGF5b3V0PXZvaWQgMCxlLkNhcmRzTGF5b3V0PXtDYXJvdXNlbDpgY2Fyb3VzZWxgfSxlLkNhcmRBY3Rpb25UeXBlPXtPcGVuVXJsOmBvcGVuX3VybGB9fSkpLFpjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSl9KSksUWM9cygoZT0+e09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLlJhdGluZ1RhcmdldD1lLkdyb3VwVHlwZT1lLkNoYW5uZWxUeXBlPWUuTWVzc2FnZVN1YlR5cGU9ZS5NZXNzYWdlVHlwZT1lLkF0dGFjaG1lbnRJbnZhbGlkUmVhc29uPWUuQXR0YWNobWVudFR5cGU9ZS5NZXNzYWdlQWN0aW9uVHlwZT12b2lkIDAsZS5NZXNzYWdlQWN0aW9uVHlwZT17VGV4dDpgdGV4dGAsT3BlblVybDpgb3Blbl91cmxgfSxlLkF0dGFjaG1lbnRUeXBlPXtDYXJkczpgY2FyZHNgLEZpbGU6YGZpbGVgLEltYWdlOmBpbWFnZWAsTWVkaWE6YG1lZGlhYCxJbnZhbGlkOmBpbnZhbGlkYH0sZS5BdHRhY2htZW50SW52YWxpZFJlYXNvbj17SW52YWxpZFNpemU6YGludmFsaWRfc2l6ZWAsSW52YWxpZFR5cGU6YGludmFsaWRfdHlwZWB9LGUuTWVzc2FnZVR5cGU9e01lc3NhZ2U6YG1lc3NhZ2VgLE5vdGU6YG5vdGVgLEV2ZW50OmBldmVudGAsSGVscDpgaGVscGB9LGUuTWVzc2FnZVN1YlR5cGU9e0FnZW50OmBhZ2VudGAsQ29udGFjdDpgY29udGFjdGAsVHJpZ2dlcjpgdHJpZ2dlcmAsQm90OmBib3RgLFN5c3RlbTpgc3lzdGVtYCxBZ2VudEV4dGVybmFsOmBhZ2VudF9leHRlcm5hbGAsRm91bmRFbWFpbDpgZm91bmRfZW1haWxgLENoYXRSZXNvbHZlOmBjaGF0X3Jlc29sdmVgLEVtYWlsOmBlbWFpbGB9LGUuQ2hhbm5lbFR5cGU9e0RlZmF1bHQ6YGRlZmF1bHRgLEVtYWlsOmBlbWFpbGAsRW1haWxJbnRlZ3JhdGlvbjpgZW1haWxfaW50ZWdyYXRpb25gLEZhY2Vib29rTWVzc2VuZ2VyOmBmYWNlYm9va19tZXNzZW5nZXJgLEdtYWlsOmBnbWFpbGAsU21hcnRzdXBwOmBzbWFydHN1cHBgLEluc3RhZ3JhbTpgaW5zdGFncmFtYCxXaGF0c2FwcDpgd2hhdHNhcHBgfTt2YXIgdDsoZnVuY3Rpb24oZSl7ZS5haT1gYWlgLGUuY2hhdGJvdD1gY2hhdGJvdGAsZS5tZXNzYWdlPWBtZXNzYWdlYH0pKHR8fChlLkdyb3VwVHlwZT10PXt9KSk7dmFyIG47KGZ1bmN0aW9uKGUpe2UuQWdlbnQ9YGFnZW50YCxlLkFpPWBhaWB9KShufHwoZS5SYXRpbmdUYXJnZXQ9bj17fSkpfSkpLCRjPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5QYXJ0aWNpcGFudFR5cGU9dm9pZCAwO3ZhciB0OyhmdW5jdGlvbihlKXtlLmZyb209YGZyb21gLGUudG89YHRvYCxlLmNjPWBjY2AsZS5iY2M9YGJjY2B9KSh0fHwoZS5QYXJ0aWNpcGFudFR5cGU9dD17fSkpfSkpLGVsPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5NZXNzYWdlQ29udGVudFR5cGU9ZS5NZXNzYWdlQ29udGVudD12b2lkIDA7dmFyIHQ7KGZ1bmN0aW9uKGUpeyhmdW5jdGlvbihlKXtlLlR5cGU9e1RleHQ6YHRleHRgLFVwbG9hZDpgdXBsb2FkYCxSYXRlRm9ybTpgcmF0ZV9mb3JtYCxUaWNrZXRGb3JtOmB0aWNrZXRfZm9ybWAsRW1haWw6YGVtYWlsYH19KShlLk1lc3NhZ2V8fD17fSksKGZ1bmN0aW9uKGUpe2UuVHlwZT17QWdlbnRKb2luOmBhZ2VudF9qb2luYCxBZ2VudEFzc2lnbjpgYWdlbnRfYXNzaWduYCxBZ2VudFVuYXNzaWduOmBhZ2VudF91bmFzc2lnbmAsQWdlbnRMZWF2ZTpgYWdlbnRfbGVhdmVgLENoYXRDbG9zZTpgY2hhdF9jbG9zZWAsQ2hhdFZpc2l0b3JDbG9zZTpgY2hhdF92aXNpdG9yX2Nsb3NlYH19KShlLkV2ZW50fHw9e30pLChmdW5jdGlvbihlKXtlLlR5cGU9e1RleHQ6YHRleHRgLEZvdW5kRW1haWw6YGZvdW5kX2VtYWlsYH19KShlLkhlbHB8fD17fSl9KSh0fHwoZS5NZXNzYWdlQ29udGVudD10PXt9KSksZS5NZXNzYWdlQ29udGVudFR5cGU9ey4uLnQuTWVzc2FnZS5UeXBlLC4uLnQuRXZlbnQuVHlwZSwuLi50LkhlbHAuVHlwZX19KSksdGw9cygoZT0+e09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KX0pKSxubD1zKChlPT57dmFyIHQ9ZSYmZS5fX2NyZWF0ZUJpbmRpbmd8fChPYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsbik7KCFpfHwoYGdldGBpbiBpPyF0Ll9fZXNNb2R1bGU6aS53cml0YWJsZXx8aS5jb25maWd1cmFibGUpKSYmKGk9e2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbbl19fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUscixpKX0pOihmdW5jdGlvbihlLHQsbixyKXtyPT09dm9pZCAwJiYocj1uKSxlW3JdPXRbbl19KSksbj1lJiZlLl9fZXhwb3J0U3Rhcnx8ZnVuY3Rpb24oZSxuKXtmb3IodmFyIHIgaW4gZSlyIT09YGRlZmF1bHRgJiYhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4scikmJnQobixlLHIpfTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksbihZYygpLGUpLG4oWGMoKSxlKSxuKFpjKCksZSksbihRYygpLGUpLG4oJGMoKSxlKSxuKGVsKCksZSksbih0bCgpLGUpfSkpLHJsPShlLHQpPT57bGV0IG49e307Zm9yKGxldCByIG9mIHQpe2xldCB0PVN0cmluZyhyW2VdKTtuW3RdPXJ9cmV0dXJuIG59LGlsPSgoKT0+e2xldHtzdWJzY3JpYmU6ZSxzZXQ6dH09Tyh7fSk7cmV0dXJue3N1YnNjcmliZTplLHNldEdyb3VwczplPT57dChybChga2V5YCxlKSl9fX0pKCksYWw9ayhbaWxdLChbZV0pPT5PYmplY3QudmFsdWVzKGUpKSxvbD17YXV0aEZvcm1EcmF3ZXI6YGF1dGhGb3JtRHJhd2VyYCxhdXRoRm9ybVByaXZhY3lOb3RpY2U6YGF1dGhGb3JtUHJpdmFjeU5vdGljZWAsYXV0aEZvcm1Qcml2YWN5Tm90aWNlU3dpdGNoOmBhdXRoRm9ybVByaXZhY3lOb3RpY2VTd2l0Y2hgLGF1dGhGb3JtU3VibWl0QnV0dG9uOmBhdXRoRm9ybVN1Ym1pdEJ1dHRvbmAsYXZhdGFyQWdlbnQ6YGF2YXRhckFnZW50YCxhdmF0YXJCb3Q6YGF2YXRhckJvdGAsYXZhdGFyR3JvdXA6YGF2YXRhckdyb3VwYCxhdmF0YXJJbmZvOmBhdmF0YXJJbmZvYCxidXR0b25BdHRhY2htZW50OmBidXR0b25BdHRhY2htZW50YCxidXR0b25DbG9zZUNoYXQ6YGJ1dHRvbkNsb3NlQ2hhdGAsYnV0dG9uQ2xvc2VEcmF3ZXI6YGJ1dHRvbkNsb3NlRHJhd2VyYCxidXR0b25Db2xsYXBzZUNoYXQ6YGJ1dHRvbkNvbGxhcHNlQ2hhdGAsYnV0dG9uRW1vamk6YGJ1dHRvbkVtb2ppYCxidXR0b25FeHBhbmRDaGF0OmBidXR0b25FeHBhbmRDaGF0YCxidXR0b25NaW5pbWl6ZUNoYXQ6YGJ1dHRvbk1pbmltaXplQ2hhdGAsYnV0dG9uT3B0aW9uczpgYnV0dG9uT3B0aW9uc2AsYnV0dG9uU2VuZDpgYnV0dG9uU2VuZGAsY2hhdFJhdGluZ0RyYXdlcjpgY2hhdFJhdGluZ0RyYXdlcmAsY2hhdFJhdGluZ0Vtb2ppQnV0dG9uOmBjaGF0UmF0aW5nRW1vamlgLGNoYXRSYXRpbmdTZW5kQnV0dG9uOmBjaGF0UmF0aW5nU2VuZEJ1dHRvbmAsY2hhdFJhdGluZ1RleHRhcmVhOmBjaGF0UmF0aW5nVGV4dGFyZWFgLGNoYXRSYXRpbmdGZWVkYmFja0J1dHRvbjpgY2hhdFJhdGluZ0ZlZWRiYWNrQnV0dG9uYCxjaGF0UmF0aW5nQnV0dG9uQWk6YGNoYXRSYXRpbmdCdXR0b25BaWAsY2hhdFJhdGluZ0J1dHRvbkFnZW50OmBjaGF0UmF0aW5nQnV0dG9uQWdlbnRgLGNsb3NlQ2hhdENvbmZpcm1CdXR0b246YGNsb3NlQ2hhdENvbmZpcm1CdXR0b25gLGNsb3NlQ2hhdERlY2xpbmVCdXR0b246YGNsb3NlQ2hhdERlY2xpbmVCdXR0b25gLGNsb3NlQ2hhdERyYXdlcjpgY2xvc2VDaGF0RHJhd2VyYCxmbGFzaE1lc3NhZ2U6YGZsYXNoTWVzc2FnZWAsZ2RwckRyYXdlcjpgZ2RwckRyYXdlcmAsaGVhZGVyVGl0bGU6YGhlYWRlclRpdGxlYCxoZWFkZXJTdGF0dXM6YGhlYWRlclN0YXR1c2AsaGVhZGVyQmFkZ2U6YGhlYWRlckJhZGdlYCxpbmxpbmVFbW9qaVBpY2tlcjpgaW5saW5lRW1vamlQaWNrZXJgLG1lc3NhZ2VBdHRhY2htZW50OmBtZXNzYWdlQXR0YWNobWVudGAsbWVzc2FnZUFnZW50OmBtZXNzYWdlQWdlbnRgLG1lc3NhZ2VCb3Q6YG1lc3NhZ2VCb3RgLG1lc3NhZ2VCb3RSZXBseTpgbWVzc2FnZUJvdFJlcGx5YCxtZXNzYWdlQm90QmFjazpgbWVzc2FnZUJvdEJhY2tgLG1lc3NhZ2VDb250YWN0OmBtZXNzYWdlQ29udGFjdGAsbWVzc2FnZUZpbGU6YG1lc3NhZ2VGaWxlYCxtZXNzYWdlR3JvdXA6YG1lc3NhZ2VHcm91cGAsbWVzc2FnZUltYWdlOmBtZXNzYWdlSW1hZ2VgLG9wdGlvbnNBY2Nlc3NpYmlsaXR5OmBvcHRpb25zQWNjZXNzaWJpbGl0eWAsb3B0aW9uc0RyYXdlcjpgb3B0aW9uc0RyYXdlcmAsb3B0aW9uc0V4cGFuZENoYXQ6YG9wdGlvbnNFeHBhbmRDaGF0YCxvcHRpb25zUHJpdmFjeU5vdGljZTpgb3B0aW9uc1ByaXZhY3lOb3RpY2VgLG9wdGlvbnNTb3VuZHM6YG9wdGlvbnNTb3VuZHNgLG9wdGlvbnNUcmFuc2NyaXB0OmBvcHRpb25zVHJhbnNjcmlwdGAscG9wdXA6YHBvcHVwYCxwb3B1cE1lc3NhZ2U6YHBvcHVwTWVzc2FnZWAscG9wdXBCdXR0b246YHBvcHVwQnV0dG9uYCxwb3B1cEJ1dHRvbkNsb3NlOmBwb3B1cEJ1dHRvbkNsb3NlYCxwcm9kdWN0Q2FyZDpgcHJvZHVjdENhcmRgLHByb2R1Y3RDYXJkQXJyb3dMZWZ0OmBwcm9kdWN0Q2FyZEFycm93TGVmdGAscHJvZHVjdENhcmRBcnJvd1JpZ2h0OmBwcm9kdWN0Q2FyZEFycm93UmlnaHRgLHByb2R1Y3RDYXJkQnV0dG9uOmBwcm9kdWN0Q2FyZEJ1dHRvbmAscHJvZHVjdENhcmRDYXJvdXNlbDpgcHJvZHVjdENhcmRDYXJvdXNlbGAscHJvZHVjdENhcmREZXNjcmlwdGlvbjpgcHJvZHVjdENhcmREZXNjcmlwdGlvbmAscHJvZHVjdENhcmRJbWFnZTpgcHJvZHVjdENhcmRJbWFnZWAscHJvZHVjdENhcmRJbmZvOmBwcm9kdWN0Q2FyZEluZm9gLHByb2R1Y3RDYXJkVGl0bGU6YHByb2R1Y3RDYXJkVGl0bGVgLHN5c3RlbU1lc3NhZ2U6YHN5c3RlbU1lc3NhZ2VgLHRleHRhcmVhOmB0ZXh0YXJlYWAsdGV4dGFyZWFQcmV2aWV3RmlsZTpgdGV4dGFyZWFQcmV2aWV3RmlsZWAsdGV4dGFyZWFQcmV2aWV3SW1hZ2U6YHRleHRhcmVhUHJldmlld0ltYWdlYCx0cmFuc2NyaXB0SW5wdXQ6YHRyYW5zY3JpcHRJbnB1dGAsdHJhbnNjcmlwdFNlbmRCdXR0b246YHRyYW5zY3JpcHRTZW5kYCx0aWNrZXRGb3JtRHJhd2VyOmB0aWNrZXRGb3JtRHJhd2VyYCx0aWNrZXRGb3JtU3VibWl0QnV0dG9uOmB0aWNrZXRGb3JtU3VibWl0QnV0dG9uYCx3aWRnZXRCdXR0b246YHdpZGdldEJ1dHRvbmAsd2lkZ2V0QnV0dG9uRnJhbWU6YHdpZGdldEJ1dHRvbkZyYW1lYCx3aWRnZXRCdXR0b25UZXh0OmB3aWRnZXRCdXR0b250ZXh0YCx3aWRnZXRJbWFnZVByZXZpZXc6YHdpZGdldEltYWdlUHJldmlld2Asd2lkZ2V0TWVzc2VuZ2VyOmB3aWRnZXRNZXNzZW5nZXJgLHdpZGdldE1lc3NlbmdlckZyYW1lOmB3aWRnZXRNZXNzZW5nZXJGcmFtZWAsd2lkZ2V0T25saW5lQmFkZ2U6YHdpZGdldE9ubGluZUJhZGdlYCx3aWRnZXRQb3B1cEZyYW1lOmB3aWRnZXRQb3B1cEZyYW1lYCx3aWRnZXRUeXBpbmdGcmFtZTpgd2lkZ2V0VHlwaW5nRnJhbWVgLHdpZGdldFVucmVhZE1lc3NhZ2VzQmFkZ2U6YHdpZGdldFVucmVhZE1lc3NhZ2VzQmFkZ2VgLHdpZGdldEhlYWRlcjpgd2lkZ2V0SGVhZGVyYH0sc2w9YGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb21gLGNsPWAvcG93ZXJlZC1ieS1zbWFydHN1cHBgLGxsPVtgY3NgLGBlc2AsYGZyYCxgaHVgLGBpdGAsYGRlYCxgbmxgLGBwbGBdLHVsPWBodHRwczovL3d3dy5zbWFydHN1cHAuY29tL215LWRhdGEtYW5kLWdkcHJgLGRsPU8oITEpLGZsPXJzKFUuU2Vzc2lvbklkLGBgKSxwbD0oKT0+e2xldHtwcm90b2NvbDplLGhvc3Q6dH09Vi5nZXRPcHRpb25zKCk7cmV0dXJuYCR7ZT09PWBodHRwYD9gaHR0cGA6YGh0dHBzYH06Ly8ke3R9YH0sbWw9KCk9PntsZXR7bW9iaWxlU2RrOmUsdmlzaXRvcklkOnR9PVYuZ2V0T3B0aW9ucygpO2lmKGUmJnQpcmV0dXJuIHQ7dHJ5e3JldHVybiAkbygpfWNhdGNoKGUpe3JldHVybiBIKFN0cmluZyhlKSksbnVsbH19LGhsPShlLHQpPT57bGV0IG49Zm8oKS5sb2NhdGlvbi5ocmVmO3JldHVybiBlJiZ0JiYobj1gJHtufSR7bi5pbmNsdWRlcyhgP2ApP2AmYDpgP2B9c3MtYm90LXJ1bj0ke3R9YCksbn0sZ2w9KCk9PntKLmNsZWFyTWVzc2FnZXMoKSxtZCgpLEd1LmNsZWFyQXNzaWduZWRBZ2VudElkcygpLFJvKCksa28oVS5WaXNpdG9ySWQpfSxfbD1lPT57dHJ5e2VzKGUpfWNhdGNoKGUpe0goU3RyaW5nKGUpKX19LHZsPWFzeW5jKGU9ITEpPT57bGV0e2tleTp0LGxhbmc6bixpc1ByZXZpZXdNb2RlOnIscHJldmlld1dpdGhvdXRSZXNldDppLHNpdGVQbGF0Zm9ybTphLHRyaWdnZXJhYmxlOm8sX2NoYXRNYXhSZW9wZW5UaW1lOnMsYm90SWQ6Y309Vi5nZXRPcHRpb25zKCk7KHImJiFpfHxlKSYmZ2woKTtsZXQgbD1tbCgpLHU9QShsYik7cmV0dXJue2tleTp0LGlkOmwsY2xpZW50RmluZ2VycHJpbnQ6YXdhaXQgUW8oKSxpc1ByZXZpZXdNb2RlOnIsc2l0ZVBsYXRmb3JtOmEsdHJpZ2dlcmFibGU6byxfY2hhdE1heFJlb3BlblRpbWU6cyxuYW1lOnUubmFtZSxlbWFpbDp1LmVtYWlsLHBob25lOnUucGhvbmUsZ3JvdXA6dS5ncm91cCxsYW5nOnUubGFuZz8/bix2YXJpYWJsZXM6dS52YXJpYWJsZXMsd2lkZ2V0VmVyc2lvbjpgMy4wYCx2aXNpdHM6dHMoKSxpc1dpZGdldFZpc2libGU6QShSXyksaXNXaWRnZXRPcGVuOkEoWCkscGFnZVVybDpobChyLGMpLHBhZ2VUaXRsZTpmbygpLmRvY3VtZW50LnRpdGxlLGRvbWFpbjpmbygpLmxvY2F0aW9uLmhvc3RuYW1lfHxgdW5rbm93bmAscmVmZXJlcjpmbygpLmRvY3VtZW50LnJlZmVycmVyLGJ1bmRsZVZlcnNpb246YGUwN2MyMDhhMzhlNmY1MDg0YzhlYjQ2MGI5NThhNDJmNzc4YTU5NjVgfX0seWw9KGUsdCk9PntsZXR7aXNQcmV2aWV3TW9kZTpufT1WLmdldE9wdGlvbnMoKTshZSYmdCE9PUEoZmwpJiYhbiYmKGdsKCksQShYKSYmWC5zZXQoITEpKSxmbC5zZXQodCl9LGJsPSgoKT0+e2xldHtzdWJzY3JpYmU6ZSxzZXQ6dH09TygpO3JldHVybntzdWJzY3JpYmU6ZSxpbml0aWFsaXplOmU9PnQoZSl9fSkoKSx4bD1gRklMRWAsU2w9MmUzLENsPWU9PmUuc3BsaXQoYC9gKVswXT09PWBpbWFnZWAsd2w9ZT0+ISFlLm1hdGNoKC9edmlkZW9cLyg/Om1wNHx3ZWJtfG9nZyl7MX0kLyk7YXN5bmMgZnVuY3Rpb24gVGwoZSl7aWYoIUZpbGVSZWFkZXIpcmV0dXJuIGpvKGBGaWxlUmVhZGVyIG5vdCBzdXBwb3J0ZWRgKSxudWxsO2xldCB0PW5ldyBGaWxlUmVhZGVyO3JldHVybiBuZXcgUHJvbWlzZShuPT57dC5vbmxvYWQ9KCk9PntpZighdC5yZXN1bHQpe24obnVsbCk7cmV0dXJufW4odHlwZW9mIHQucmVzdWx0PT1gc3RyaW5nYCYmdC5yZXN1bHQuc3RhcnRzV2l0aChgZGF0YTppbWFnZWApP3QucmVzdWx0Om51bGwpfSx0Lm9uZXJyb3I9KCk9PntqbyhgRmFpbGVkIHRvIGxvYWQgaW1hZ2UgZGF0YWApLG4obnVsbCl9LHQucmVhZEFzRGF0YVVSTChlKX0pfWFzeW5jIGZ1bmN0aW9uIEVsKGUpe3JldHVybiBuZXcgUHJvbWlzZSh0PT57bGV0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChgaW1nYCk7bi5vbmxvYWQ9KCk9Pnt0KHt3aWR0aDpuLndpZHRoLGhlaWdodDpuLmhlaWdodH0pfSxuLm9uZXJyb3I9KCk9PntqbyhgRmFpbGVkIHRvIG9idGFpbiBpbWFnZSBkaW1lbnNpb25zYCksdChudWxsKX0sbi5zcmM9ZX0pfWZ1bmN0aW9uIERsKGUpe3JldHVybntob3Jpem9udGFsOmUud2lkdGg+ZS5oZWlnaHQsdmVydGljYWw6ZS5oZWlnaHQ+ZS53aWR0aH19dmFyIE9sPWBhci5hei5iZy5ici5icy5jYS5jbi5jcy5kYS5kZS5lbC5lbi5lcy5ldC5mYS5maS5maWwuZnIuaGUuaGkuaHIuaHUuaXMuaXQuamEua2EubHQubHYubWsubmwubm8ucGwucHQucm8ucnUuc2suc2wuc3Iuc3YudGgudHIudHcudWtgLnNwbGl0KGAuYCksa2w9cygoZT0+e3ZhciB0PWUmJmUuX19pbXBvcnREZWZhdWx0fHxmdW5jdGlvbihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGBfX2VzTW9kdWxlYCx7dmFsdWU6ITB9KSxlLkZldGNoQWRhcHRlcj12b2lkIDA7dmFyIG49dChhYygpKTtlLkZldGNoQWRhcHRlcj1jbGFzcyBle2NvbnN0cnVjdG9yKGUpe3RoaXMub3B0aW9ucz17fSx0aGlzLm9wdGlvbnM9ZX1hc3luYyByZXF1ZXN0KGUsdCxyLGksYSl7bGV0IG89ey4uLnRoaXMub3B0aW9ucywuLi5hfSxzPWk/YD9gK24uZGVmYXVsdC5zdHJpbmdpZnkoaSk6YGA7dHJ5e2xldCBuPWF3YWl0IGZldGNoKGAke28uYmFzZVVSTHx8YGB9JHt0fSR7c31gLHttZXRob2Q6ZSxib2R5OnI/SlNPTi5zdHJpbmdpZnkocik6bnVsbCwuLi5vfSk7cmV0dXJue3N0YXR1czpuLnN0YXR1cyxzdGF0dXNUZXh0Om4uc3RhdHVzVGV4dCxkYXRhOmF3YWl0IG4uanNvbigpLGhlYWRlcnM6Wy4uLm4uaGVhZGVycy5lbnRyaWVzKCldLnJlZHVjZSgoZSxbdCxuXSk9PihlW3RdPW4sZSkse30pfX1jYXRjaChlKXt0aHJvdyBlLmlzT3BlbkFwaUVycm9yPSEwLGV9fXdpdGhPcHRpb25zKHQpe3JldHVybiBuZXcgZSh0KX19fSkpLEFsPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5Qcm9qZWN0TmFtZT1lLkVycm9yQ29kZT12b2lkIDAsZS5FcnJvckNvZGU9e0JhZFJlcXVlc3Q6YGJhZF9yZXF1ZXN0YCxOb3RBbGxvd2VkOmBub3RfYWxsb3dlZGAsTm90Rm91bmQ6YG5vdF9mb3VuZGAsRm9yYmlkZGVuOmBmb3JiaWRkZW5gLFRvb01hbnlSZXF1ZXN0czpgdG9vX21hbnlfcmVxdWVzdHNgLFVuYXV0aG9yaXplZDpgdW5hdXRob3JpemVkYCxVbnByb2Nlc3NhYmxlOmB1bnByb2Nlc3NhYmxlYH0sZS5Qcm9qZWN0TmFtZT17V2lkZ2V0OmB3aWRnZXRgLENoYXRib3Q6YGNoYXRib3RgfX0pKSxqbD1zKChlPT57T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLGUuVHJhbnNsYXRpb25zQ2xpZW50UmF3PWUuVHJhbnNsYXRpb25zQ2xpZW50PXZvaWQgMCxlLlRyYW5zbGF0aW9uc0NsaWVudD1jbGFzc3tjb25zdHJ1Y3RvcihlKXt0aGlzLmFkYXB0ZXI9ZSx0aGlzLnJhdz1uZXcgdCh0aGlzLmFkYXB0ZXIpfWdldERlZmF1bHRzKGUsdCxyKXtyZXR1cm4gdGhpcy5hZGFwdGVyLnJlcXVlc3QoYGdldGAsYC8ke2V9L3RyYW5zbGF0aW9ucy9sYW5nLyR7dH0vZGVmYXVsdHNgLG51bGwsbnVsbCxyKS50aGVuKG4pfX07dmFyIHQ9Y2xhc3N7Y29uc3RydWN0b3IoZSl7dGhpcy5hZGFwdGVyPWV9Z2V0RGVmYXVsdHMoZSx0LG4pe3JldHVybiB0aGlzLmFkYXB0ZXIucmVxdWVzdChgZ2V0YCxgLyR7ZX0vdHJhbnNsYXRpb25zL2xhbmcvJHt0fS9kZWZhdWx0c2AsbnVsbCxudWxsLG4pfX07ZS5UcmFuc2xhdGlvbnNDbGllbnRSYXc9dDtmdW5jdGlvbiBuKGUpe3JldHVybiBlLmRhdGF9fSkpLE1sPXMoKGU9PntPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxgX19lc01vZHVsZWAse3ZhbHVlOiEwfSksZS5TbWFydHN1cHBUcmFuc2xhdGlvbnNDbGllbnRBcGk9dm9pZCAwO3ZhciB0PWpsKCksbj1jbGFzcyBle2NvbnN0cnVjdG9yKGUpe3RoaXMuYWRhcHRlcj1lLHRoaXMudHJhbnNsYXRpb25zPW5ldyB0LlRyYW5zbGF0aW9uc0NsaWVudChlKX13aXRoT3B0aW9ucyh0KXtyZXR1cm4gbmV3IGUodGhpcy5hZGFwdGVyLndpdGhPcHRpb25zKHQpKX19O2UuU21hcnRzdXBwVHJhbnNsYXRpb25zQ2xpZW50QXBpPW4sZS5kZWZhdWx0PW59KSksTmw9cygoZT0+e3ZhciB0PWUmJmUuX19jcmVhdGVCaW5kaW5nfHwoT2JqZWN0LmNyZWF0ZT8oZnVuY3Rpb24oZSx0LG4scil7cj09PXZvaWQgMCYmKHI9bik7dmFyIGk9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LG4pOyghaXx8KGBnZXRgaW4gaT8hdC5fX2VzTW9kdWxlOmkud3JpdGFibGV8fGkuY29uZmlndXJhYmxlKSkmJihpPXtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0W25dfX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHIsaSl9KTooZnVuY3Rpb24oZSx0LG4scil7cj09PXZvaWQgMCYmKHI9biksZVtyXT10W25dfSkpLG49ZSYmZS5fX2V4cG9ydFN0YXJ8fGZ1bmN0aW9uKGUsbil7Zm9yKHZhciByIGluIGUpciE9PWBkZWZhdWx0YCYmIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLHIpJiZ0KG4sZSxyKX07T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYF9fZXNNb2R1bGVgLHt2YWx1ZTohMH0pLG4oQWwoKSxlKSxuKE1sKCksZSksbihqbCgpLGUpLGUuZGVmYXVsdD1NbCgpLlNtYXJ0c3VwcFRyYW5zbGF0aW9uc0NsaWVudEFwaX0pKSxQbD1rbCgpLEZsPU5sKCksSWw9ZT0+T2wuaW5jbHVkZXMoZSksTGw9ZT0+SWwoZSk/ZTpgZW5gLFJsPSgpPT57bGV0e2xhbmc6ZX09Vi5nZXRPcHRpb25zKCkse2xhbmc6dH09QShsYik7cmV0dXJuIExsKHQ/P2UpfTtmdW5jdGlvbiB6bCgpe3JldHVybiBuZXcgRmwuVHJhbnNsYXRpb25zQ2xpZW50KG5ldyBQbC5GZXRjaEFkYXB0ZXIoe2Jhc2VVUkw6YCR7Vi5nZXRPcHRpb25zKCkudHJhbnNsYXRpb25zQmFzZVVybH0vYXBpL3YxYH0pKX12YXIgQmw9YXN5bmMgZT0+emwoKS5nZXREZWZhdWx0cyhGbC5Qcm9qZWN0TmFtZS5XaWRnZXQsZSksVmw9KGUsdCk9PntsZXR7dHJhbnNsYXRlczpufT1WLmdldE9wdGlvbnMoKTtyZXR1cm57Li4uZSwuLi5uW3RdJiZuW3RdfX0sSGw9TyhgZW5gKSxVbD1PKHt9KSxXbD1hc3luYyBlPT57dHJ5e2xldCB0PVZsKGF3YWl0IEJsKGUpLGUpO1VsLnVwZGF0ZShuPT4oey4uLm4sW2VdOnR9KSl9Y2F0Y2h7am8oYEZldGNoIHRyYW5zbGF0aW9ucyBvZiAnJHtlfScgbGFuZ3VhZ2UgZmFpbGVkLmApfX0sR2w9YXN5bmMgZT0+e0EoVWwpW2VdfHxhd2FpdCBXbChlKSxIbC5zZXQoZSl9LEtsPWFzeW5jKCk9PntsZXQgZT1SbCgpO0hsLnNldChlKSxhd2FpdCBXbChlKX0scWw9ZT0+e2xldCB0PUEoSGwpLG49ey4uLkEoVWwpW3RdLC4uLmV9O1VsLnVwZGF0ZShlPT4oey4uLmUsW3RdOm59KSl9LEpsPShlLHQsbik9PntsZXQgcj1BKFVsKSxpPWB8JHt0fXxgO2lmKE9iamVjdC5rZXlzKHIpLmxlbmd0aD09PTApcmV0dXJuIGk7bGV0IGE9cltlXT8uW3RdfHxpO3JldHVybiBPYmplY3Qua2V5cyhuKS5tYXAoZT0+e2xldCB0PVJlZ0V4cChgeyR7ZX19YCxgZ2ApO2E9YS5yZXBsYWNlKHQsbltlXSl9KSxhfSxXPWsoW0hsLFVsXSwoW2VdKT0+KHQsbj17fSk9PkpsKGUsdCxuKSksWWw9KCgpPT57bGV0IGU9TyhbXSkse3N1YnNjcmliZTp0LHVwZGF0ZTpufT1lLHI9KCk9PkEoZSkubWFwKGU9PmUuZmlsZSksaT0odCxuKT0+KG58fEEoZSkpLmZpbmQoZT0+ZS5maWxlLm5hbWU9PT10KXx8bnVsbCxhPWU9Pih7ZmlsZTplLHByZXZpZXc6e30scHJldmlld1N0YXRlOmBub25lYCx1cGxvYWRTdGF0dXM6YG5vbmVgfSksbz1lPT57bGV0IHQ9QXJyYXkuaXNBcnJheShlKT9lOltlXTtuKGU9PmUubGVuZ3RoK3QubGVuZ3RoPjU/KGdzKGAke0EoVykoYGZpbGVVcGxvYWQudG9vTWFueUZpbGVzYCl9IDVgKSxlKTpbLi4uZSwuLi50Lm1hcChhKV0pLG0odCl9LHM9ZT0+e24odD0+dC5maWx0ZXIodD0+dC5maWxlIT09ZSkpfSxjPSgpPT5BKGUpLmxlbmd0aCxsPSgpPT5jKCk+PTUsdT0oKT0+ZS5zZXQoW10pLGQ9KCk9PntlLnVwZGF0ZShlPT4oZS5mb3JFYWNoKGU9PmUudXBsb2FkU3RhdHVzPWBpbi1wcm9ncmVzc2ApLGUpKX0sZj10PT57ZS51cGRhdGUoZT0+e2xldCBuPWkodCxlKTtyZXR1cm4gbiYmKG4udXBsb2FkU3RhdHVzPWBkb25lYCksZX0pfSxwPWU9PmkoZS5uYW1lKT8ucHJldmlld1N0YXRlIT09YG5vbmVgLG09ZT0+e2UuZm9yRWFjaChlPT52b2lkIGgoZSkpfSxoPWFzeW5jIHQ9PntpZihwKHQpKXJldHVybjtsZXQgbj1hd2FpdCBUbCh0KSxyPW4/YXdhaXQgRWwobik6bnVsbCxhPXI/RGwocik6bnVsbDtlLnVwZGF0ZShlPT57bGV0IG89aSh0Lm5hbWUsZSk7cmV0dXJuIG8/KG8ucHJldmlld1N0YXRlPWByZWFkeWAsby5wcmV2aWV3PXtkYXRhOm4sZGltZW5zaW9uczpyLG9yaWVudGF0aW9uOmF9LFsuLi5lXSk6ZX0pfTtyZXR1cm57c3Vic2NyaWJlOnQsZ2V0RmlsZXM6cixmaW5kOmksYWRkOm8scmVtb3ZlOnMsY291bnQ6Yyxpc0xpbWl0UmVhY2hlZDpsLGNsZWFyOnUsc2V0VXBsb2FkaW5nU3RhdHVzOmQsc2V0RmlsZVVwbG9hZGVkOmZ9fSkoKSxYbD0oKCk9PntsZXQgZT1bXTtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7cHVzaDp0PT57ZS5wdXNoKHQpfSxleGVjdXRlQWxsOigpPT57Zm9yKDtlLmxlbmd0aD4wOyl7bGV0IHQ9ZS5zaGlmdCgpO3QmJnQoKX19fSl9KSgpLFpsPSgpPT57bGV0e3dpZGdldFYzVXJsOmV9PVYuZ2V0T3B0aW9ucygpO3JldHVybmAke2V9L2Fzc2V0cy9pbWFnZXMvZGVmYXVsdC1haS1pZGVudGl0eS5wbmdgfSxRbD1lPT4oey4uLmUsYXZhdGFyVXJsOmUuYXZhdGFyVXJsfHxabCgpfSksJGw9KCgpPT57bGV0e3VwZGF0ZTplLHN1YnNjcmliZTp0LHNldDpufT1PKHt9KTtyZXR1cm57c3Vic2NyaWJlOnQsc2V0SWRlbnRpdGllczplPT57bihybChgaWRgLGUubWFwKFFsKSkpfSxhZGRJZGVudGl0eTp0PT57ZShlPT4oey4uLmUsW3QuaWRdOnR9KSl9LHVwZGF0ZUlkZW50aXR5Oih0LG4pPT57ZShlPT5lW3RdP3suLi5lLFt0XTp7Li4uZVt0XSwuLi5ufX06ZSl9fX0pKCksRz1ubCgpLEs9dShNYygpLDEpLGV1PWU9Pnt2byhgaW5pdCBkYXRhYCxlKSxkbC5zZXQoITApLHlsKGUuY2hhdCxlLnNlc3Npb25JZCk7bGV0IHQ9ZS52aXNpdG9yLmlkO19sKHQpLG5zKGUudmlzaXRvci52aXNpdHMpLE11LnNldFZpc2l0b3JEYXRhKGUudmlzaXRvciksaG8oe3ZpZDp0fSksYmwuaW5pdGlhbGl6ZShlLmZpbGVVcGxvYWQpLG9zLnNldChlLmJyb3dzZXIpLEJ1LnNldEFnZW50cyhlLmFjY291bnQuYWdlbnRzKSwkbC5zZXRJZGVudGl0aWVzKGUuYWNjb3VudC5ib3RJZGVudGl0aWVzKSxlLmNoYXQ/LnZpcnR1YWxBZ2VudCE9PXZvaWQgMCYmQnUuc2V0VmlydHVhbEFnZW50KGUuY2hhdD8udmlydHVhbEFnZW50KSxpbC5zZXRHcm91cHMoZS5hY2NvdW50Lmdyb3VwcyksaGQoZS5hY2NvdW50LnN0YXR1cyksZS5jaGF0JiYocXAoKSYmaWQuc2V0KGUuY2hhdC5yYXRpbmdTdWdnZXN0ZWRUYXJnZXR8fG51bGwpLGVkLnNldChlLmNoYXQuc3RhdHVzKSxkZChlLmNoYXQuaXNDbG9zZWQpLHJkLnNldChlLmNoYXQudW5yZWFkSW5mby5sYXN0UmVhZEF0KSxKLnNldE1lc3NhZ2VzKGUuY2hhdC5tZXNzYWdlcy5maWx0ZXIoZT0+IVpmKGUpKSksR3Uuc2V0QXNzaWduZWRBZ2VudElkcyhlLmNoYXQuYXNzaWduZWRJZHM/P1tdKSxlLmNoYXQud2lkZ2V0T3B0aW9ucyYmWHUudXBkYXRlR2VuZXJhbE9wdGlvbnMoZS5jaGF0LndpZGdldE9wdGlvbnMpKSxDXy5zZXQoITApLHouZW1pdChgd2lkZ2V0SW5pdGAsITApLFhsLmV4ZWN1dGVBbGwoKX0sdHU9ZT0+e2NvbnNvbGUuZXJyb3IoZSl9LG51PSgpPT57ZGwuc2V0KCExKX0scnU9KHtjaGF0SWQ6ZX0pPT57TXAuc2V0KCExKSxhZC5zZXQoZSksZWQuc2V0KEsuQ2hhdFN0YXR1cy5PcGVuKSxYdS5zZXRNZXNzYWdlT3B0aW9ucyh7ZGlzYWJsZUF0dGFjaG1lbnRzOiExfSl9LGl1PSgpPT57ZWQuc2V0KEsuQ2hhdFN0YXR1cy5TZXJ2ZWQpLGRkKCExKX0sYXU9KHttZXNzYWdlOmV9KT0+e2xldHtjbG9zZVR5cGU6dCxhZ2VudElkOm59PWUuY29udGVudC5kYXRhOyh0PT09YGFnZW50X2Nsb3NlYHx8dD09PWBib3RfY2xvc2VgKSYmKEd1LnNldEFzc2lnbmVkQWdlbnRJZHMoW10pLGVkLnNldChLLkNoYXRTdGF0dXMuQ2xvc2VkKSxKLmFkZE1lc3NhZ2UoZSksei5lbWl0KGBjaGF0Q2xvc2VkYCxlKSx0PT09YGFnZW50X2Nsb3NlYCYmUW0obj9BKFZ1KG4pKT8uZnVsbG5hbWU6dm9pZCAwKSl9LG91PSh7bWVzc2FnZTplfSk9PntxcCgpJiZZcCh4cyksZGQoITAse2J5VmlzaXRvcjohMH0pLEouYWRkTWVzc2FnZShlKSx6LmVtaXQoYGNoYXRWaXNpdG9yQ2xvc2VkYCxlKSxabSgpfSxzdT0oe2NoYW5nZXM6ZX0pPT57ZS53aWRnZXRPcHRpb25zJiZYdS51cGRhdGVHZW5lcmFsT3B0aW9ucyhlLndpZGdldE9wdGlvbnMpLGUuaXNDbG9zZWQhPT12b2lkIDAmJmRkKGUuaXNDbG9zZWQpLGUudmlydHVhbEFnZW50IT09dm9pZCAwJiZCdS5zZXRWaXJ0dWFsQWdlbnQoZS52aXJ0dWFsQWdlbnQpfSxjdT1hc3luYyh7bWVzc2FnZTplfSk9PntpZihaZihlKSlyZXR1cm47bGV0IHQ9QSh6XykmJllmKGUpOyFBKFgpJiZRZihlKSYmIXQ/QXAoZSk6YXdhaXQgSi5hZGRNZXNzYWdlKGUpLF9kKCksZS53aWRnZXRPcHRpb25zJiZYdS5zZXRNZXNzYWdlT3B0aW9ucyhlLndpZGdldE9wdGlvbnMpLHQmJlVfKCksei5lbWl0KGBtZXNzYWdlUmVjZWl2ZWRgLGUpfSxsdT1lPT57Y3UoZSl9LHV1PSh7bWVzc2FnZUlkOmUsZGVsZXRlZEF0OnR9KT0+e0EoSilbZV0/LnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkNoYXRSZXNvbHZlP0ouZGVsZXRlTWVzc2FnZShlKTpKLm1hcmtNZXNzYWdlQXNEZWxldGVkKGUsdCl9LGR1PSh7bWVzc2FnZTplfSk9PntKLnJlcGxhY2VNZXNzYWdlKGUpLGUud2lkZ2V0T3B0aW9ucyYmZS5pZD09PUEoQnApJiZYdS5zZXRNZXNzYWdlT3B0aW9ucyhlLndpZGdldE9wdGlvbnMpfSxmdT0oe21lc3NhZ2U6ZSxhZ2VudDp0fSk9PntHdS5hZGRBc3NpZ25lZEFnZW50SWQoZS5jb250ZW50LmRhdGEuYWdlbnRJZCksSi5hZGRNZXNzYWdlKGUpLHouZW1pdChgYWdlbnRKb2luZWRgLHQpfSxwdT0oe21lc3NhZ2U6ZX0pPT57R3UucmVtb3ZlQXNzaWduZWRBZ2VudElkKGUuY29udGVudC5kYXRhLmFnZW50SWQpLEouYWRkTWVzc2FnZShlKX0sbXU9KHttZXNzYWdlOmV9KT0+e0d1LmFkZEFzc2lnbmVkQWdlbnRJZChlLmNvbnRlbnQuZGF0YS5hc3NpZ25lZCksSi5hZGRNZXNzYWdlKGUpfSxodT0oe21lc3NhZ2U6ZX0pPT57R3UucmVtb3ZlQXNzaWduZWRBZ2VudElkKGUuY29udGVudC5kYXRhLnVuYXNzaWduZWQpLEouYWRkTWVzc2FnZShlKX0sZ3U9ZT0+eyFlLnR5cGluZy5pcyYmQShNcCl8fG5kLnNldChlLnR5cGluZy5pcyl9LF91PWU9PntyZC5zZXQoZS5sYXN0UmVhZEF0KX0sdnU9KHttZXNzYWdlOmUscmF0aW5nOnR9KT0+e0oudXBkYXRlTWVzc2FnZVJhdGluZyhlKSx6LmVtaXQoYGNoYXRSYXRlZGAsdCl9LHl1PWU9Pnt6LmVtaXQoYHRyYW5zY3JpcHRQZGZgLGUpfSxidT0oe2lkOmUsY2hhbmdlczp0fSk9PntCdS51cGRhdGVBZ2VudChlLHQpfSx4dT0oe2lkOmUsc3RhdHVzOnR9KT0+e0J1LnVwZGF0ZUFnZW50KGUse3N0YXR1czp0fSl9LFN1PSh7c3RhdHVzOmV9KT0+e2hkKGUpfSxDdT1lPT57TXUudXBkYXRlVmlzaXRvckRhdGEoZSl9LHd1PWU9Pnt6LmVtaXQoYGNvbnRhY3RBY3F1aXJlZGAsZSl9LFR1PWU9PnsocXAoKXx8SnAoKSkmJmlkLnNldChlLnJhdGluZ1N1Z2dlc3RlZFRhcmdldCl9LEV1PSgpPT57QShpZCkmJmlkLnNldChudWxsKX0sRHU9KHtpZDplLGlzQWN0aXZlOnR9KT0+eyRsLnVwZGF0ZUlkZW50aXR5KGUse2lzQWN0aXZlOnR9KX0sT3U9RGMoKSxrdT1hc3luYyBlPT57bGV0IHQ9YXdhaXQgVi5hd2FpdE9wdGlvbnMoKTtyZXR1cm4gbmV3IEsuV2Vic29ja2V0VmlzaXRvckNsaWVudCh7ZGF0YTplLGNvbm5lY3Rpb246e3VybDpwbCgpLHNvY2tldDp0Lm1vY2s/bmV3IE91LlNvY2tldE1vY2sodC5tb2NrKTp2b2lkIDAsYmFsYW5jZXJVcmw6dC5iYWxhbmNlclVybCxvcHRpb25zOntwYXRoOmAvc29ja2V0YCxhdXRvQ29ubmVjdDohMSxyZWNvbm5lY3Rpb246ITB9fX0pfSxBdT0oKT0+e2xldCBlPW51bGwsdD0oKT0+ISFlLG49KCk9PntpZighZSl0aHJvdyBFcnJvcihgVmlzaXRvciBjbGllbnQgaXMgbm90IGluaXRpYWxpemVkYCk7cmV0dXJuIGV9LHI9YXN5bmMgdD0+e2U9YXdhaXQga3UoYXdhaXQgdmwodCkpLGUmJihqdShlKSxhd2FpdCBlLmNvbm5lY3QoKS5jYXRjaChlPT57am8oYEZhaWxlZCBjb25uZWN0IHRvIHNlcnZlci5gLGUpfSkpfTtyZXR1cm4gT2JqZWN0LmZyZWV6ZSh7Z2V0Q2xpZW50Om4saW5pdENsaWVudDpyLHJlbG9hZENsaWVudDphc3luYyh0LG4pPT57YXdhaXQgZT8uZGlzY29ubmVjdCgpLHQmJlYudXBkYXRlT3B0aW9ucyh7bW9jazp0fSksYXdhaXQgcihuKX0saXNJbml0aWFsaXplZDp0fSl9LGp1PWU9PntlLm9uKGBpbml0aWFsaXplZGAsZXUpLGUub24oYGVycm9yYCx0dSksZS5vbihgZGlzY29ubmVjdGAsbnUpLGUub24oYGNoYXQub3BlbmVkYCxydSksZS5vbihgY2hhdC5zZXJ2ZWRgLGl1KSxlLm9uKGBjaGF0LmNsb3NlZGAsYXUpLGUub24oYGNoYXQudmlzaXRvcl9jbG9zZWRgLG91KSxlLm9uKGBjaGF0LnVwZGF0ZWRgLHN1KSxlLm9uKGBjaGF0Lm1lc3NhZ2VfcmVjZWl2ZWRgLGx1KSxlLm9uKGBjaGF0Lm1lc3NhZ2VfdXBkYXRlZGAsZHUpLGUub24oYGNoYXQubWVzc2FnZV9kZWxldGVkYCx1dSksZS5vbihgY2hhdC5hZ2VudF9qb2luZWRgLGZ1KSxlLm9uKGBjaGF0LmFnZW50X2xlZnRgLHB1KSxlLm9uKGBjaGF0LmFnZW50X2Fzc2lnbmVkYCxtdSksZS5vbihgY2hhdC5hZ2VudF91bmFzc2lnbmVkYCxodSksZS5vbihgY2hhdC5hZ2VudF90eXBpbmdgLGd1KSxlLm9uKGBjaGF0LmNvbnRhY3RfcmVhZGAsX3UpLGUub24oYGNoYXQucmF0ZWRgLHZ1KSxlLm9uKGBjaGF0LnJhdGluZ19zdWdnZXN0ZWRgLFR1KSxlLm9uKGBjaGF0LnJhdGluZ19jYW5jZWxsZWRgLEV1KSxlLm9uKGBjaGF0LnRyYW5zY3JpcHRfcGRmYCx5dSksZS5vbihgYWdlbnQudXBkYXRlZGAsYnUpLGUub24oYGFnZW50LnN0YXR1c191cGRhdGVkYCx4dSksZS5vbihgYWNjb3VudC51cGRhdGVkYCxTdSksZS5vbihgdmlzaXRvci51cGRhdGVkYCxDdSksZS5vbihgY29udGFjdC5hY3F1aXJlZGAsd3UpLGUub24oYGlkZW50aXR5LnN0YXR1c191cGRhdGVkYCxEdSl9LHE9QXUoKSxNdT0oKCk9PntsZXQgZT1PKG51bGwpLHtzdWJzY3JpYmU6dCxzZXQ6bix1cGRhdGU6cn09ZSxpPWU9PntuKGUpfSxhPWU9PntyKHQ9PnQ/ey4uLnQsLi4uZX06bnVsbCl9LG89KGUsdCk9Pnt0cnl7cS5nZXRDbGllbnQoKS51cGRhdGUoe1tlXTp0fSl9Y2F0Y2godCl7am8oYFVwZGF0ZSBvZiB2aXNpdG9yIHByb3BlcnR5ICcke2V9JyBmYWlsZWQuYCxTdHJpbmcodCkpfX07cmV0dXJue3N1YnNjcmliZTp0LHNldFZpc2l0b3JEYXRhOmksdXBkYXRlVmlzaXRvckRhdGE6YSx1cGRhdGVWaXNpdG9yUHJvcGVydHk6KGUsdCk9PntpZighQShDXykpe3ViKGUsdCk7cmV0dXJufWEoe1tlXTp0fSksbyhlLHQpfSx1cGRhdGVWaXNpdG9yVmFyaWFibGVzOnQ9PntpZighQShDXykpe3ViKGB2YXJpYWJsZXNgLHQpO3JldHVybn1sZXQgbj1BKGUpO2lmKCFuKXJldHVybjtsZXQgcj1uLnZhcmlhYmxlczthKHt2YXJpYWJsZXM6ey4uLnIsLi4udH19KTtsZXQgaT17fTtPYmplY3Qua2V5cyh0KS5mb3JFYWNoKGU9Pnt0W2VdIT09cltlXSYmKGk9ey4uLmksW2VdOnRbZV19KX0pLE9iamVjdC5rZXlzKGkpLmxlbmd0aCE9PTAmJm8oYHZhcmlhYmxlc2AsaSl9LHVwZGF0ZVZpc2l0b3JDb250YWN0RGF0YTp0PT57aWYoIUEoQ18pKXt1YihgY29udGFjdERhdGFgLHtwcm9wZXJ0aWVzOnR9KTtyZXR1cm59bGV0IG49QShlKTtpZighbilyZXR1cm47bGV0IHI9bj8uY29udGFjdERhdGE/LnByb3BlcnRpZXM7YSh7dmFyaWFibGVzOnsuLi5yLC4uLnR9fSk7bGV0IGk9e307T2JqZWN0LmtleXModCkuZm9yRWFjaChlPT57KCFyfHx0W2VdIT09cltlXSkmJihpPXsuLi5pLFtlXTp0W2VdfSl9KSxPYmplY3Qua2V5cyhpKS5sZW5ndGghPT0wJiZvKGBjb250YWN0RGF0YWAse3Byb3BlcnRpZXM6dH0pfX19KSgpLE51PShlLHQpPT5lLmhhc093blByb3BlcnR5KHQpLFB1PWU9PnR5cGVvZiBlPT1gYm9vbGVhbmAsRnU9ZT0+dHlwZW9mIGU9PWBudW1iZXJgLEl1PWU9PnR5cGVvZiBlPT1gb2JqZWN0YCYmISFlJiYhQXJyYXkuaXNBcnJheShlKSxMdT1lPT50eXBlb2YgZT09YHN0cmluZ2B8fGUgaW5zdGFuY2VvZiBTdHJpbmcsUnU9ZT0+THUoZSl8fEZ1KGUpfHxQdShlKSx6dT1lPT57bGV0IHQ9e307cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2gobj0+e2xldCByPWVbbl07UnUocik/dFtuXT1yOkl1KHIpJiZOdShyLGB2YWx1ZWApJiZSdShyLnZhbHVlKSYmKHRbbl09ci52YWx1ZSl9KSx0fSxCdT0oKCk9PntsZXR7dXBkYXRlOmUsc3Vic2NyaWJlOnQsc2V0Om59PU8oe30pO3JldHVybntzdWJzY3JpYmU6dCxzZXRBZ2VudHM6ZT0+e24ocmwoYGlkYCxlKSl9LGFkZEFnZW50OnQ9PntlKGU9Pih7Li4uZSxbdC5pZF06dH0pKX0sdXBkYXRlQWdlbnQ6KHQsbik9PntlKGU9PmVbdF0/ey4uLmUsW3RdOnsuLi5lW3RdLC4uLm59fTplKX0sc2V0VmlydHVhbEFnZW50OnQ9PntsZXR7ZGVzY3JpcHRpb246bixhdmF0YXI6cixuYW1lOml9PXQsYT17fTtuJiYoYS5kZXNjcmlwdGlvbj1uKSxyJiYoYS5hdmF0YXI9ciksaSYmKGEuZnVsbG5hbWU9aSksZShlPT4oT2JqZWN0LmtleXMoZSkuZm9yRWFjaCh0PT57ZVt0XT17Li4uZVt0XSwuLi5hfX0pLGUpKX19fSkoKSxWdT1lPT5rKFtCdV0sKFt0XSk9PnRbZV0/P251bGwpLEh1PWsoW2soW0J1XSwoW2VdKT0+T2JqZWN0LnZhbHVlcyhlKS5maWx0ZXIoZT0+IWUuZGlzYWJsZWQpKSxNdV0sKFtlLHRdKT0+e2xldCBuPXQ/Lmdyb3VwO3JldHVybiFufHxuPT09YGRlZmF1bHRgP2U6ZS5maWx0ZXIoZT0+ZS5ncm91cHMubGVuZ3RoPT09MHx8ZS5ncm91cHMuaW5jbHVkZXMobikpfSksVXU9ayhbSHVdLChbZV0pPT5lLmZpbHRlcihlPT5lLnN0YXR1cz09PUsuQWdlbnRTdGF0dXMuT25saW5lKSksV3U9ZT0+e2lmKGUpcmV0dXJuYCR7ZX0/c2l6ZT04MGA7bGV0e3dpZGdldFYzVXJsOnR9PVYuZ2V0T3B0aW9ucygpO3JldHVybmAke3R9L2Fzc2V0cy9pbWFnZXMvZGVmYXVsdC1hdmF0YXIucG5nYH0sR3U9KCgpPT57bGV0e3N1YnNjcmliZTplLHNldDp0LHVwZGF0ZTpufT1PKFtdKTtyZXR1cm57c3Vic2NyaWJlOmUsc2V0QXNzaWduZWRBZ2VudElkczplPT57dChlKX0sYWRkQXNzaWduZWRBZ2VudElkOmU9PntuKHQ9PlsuLi5uZXcgU2V0KFsuLi50LGVdKV0pfSxyZW1vdmVBc3NpZ25lZEFnZW50SWQ6ZT0+e24odD0+dC5maWx0ZXIodD0+dCE9PWUpKX0sY2xlYXJBc3NpZ25lZEFnZW50SWRzOigpPT57dChbXSl9fX0pKCksS3U9ayhbR3UsQnVdLChbZSx0XSk9PmUubWFwKGU9PnRbZV0pLmZpbHRlcihCb29sZWFuKSkscXU9ayhbS3VdLChbZV0pPT5lLmxlbmd0aD4wKSxKdT1rKFtLdV0sKFtlXSk9PmUuZmlsdGVyKGU9PiFlLmRpc2FibGVkKSksWXU9ayhbS3VdLChbZV0pPT5lLnNvbWUoZT0+ZS5zdGF0dXM9PT1LLkFnZW50U3RhdHVzLk9ubGluZSkpLFh1PSgoKT0+e2xldCBlPU8oe2Rpc2FibGVBdHRhY2htZW50czohMSxkaXNhYmxlQXV0aGVudGljYXRpb246ITEsZGlzYWJsZUlucHV0OiExfSksdD1PKHt9KTtyZXR1cm57c3Vic2NyaWJlOmsoW2UsdF0sKFtlLHRdKT0+KHsuLi5lLC4uLnR9KSkuc3Vic2NyaWJlLHVwZGF0ZUdlbmVyYWxPcHRpb25zOnQ9PntlLnVwZGF0ZShlPT4oey4uLmUsLi4udH0pKX0sc2V0TWVzc2FnZU9wdGlvbnM6ZT0+e3Quc2V0KGUpfX19KSgpLFp1PWsoW1h1XSwoW2VdKT0+ZS5kaXNhYmxlQXR0YWNobWVudHMpLFF1PWZ1bmN0aW9uKGUpe3JldHVybiBlW2UuT3Blbj0wXT1gT3BlbmAsZVtlLkNsb3NlZD0xXT1gQ2xvc2VkYCxlW2UuQ2xvc2VkQnlWaXNpdG9yPTJdPWBDbG9zZWRCeVZpc2l0b3JgLGV9KHt9KSwkdT1PKEsuQWNjb3VudFN0YXR1cy5PZmZsaW5lKSxlZD1PKG51bGwpLHRkPU8oUXUuT3BlbiksbmQ9TyghMSkscmQ9TyhudWxsKSxpZD1PKG51bGwpLGFkPU8oYGApLG9kPWsoW2VkXSwoW2VdKT0+ZT09PUsuQ2hhdFN0YXR1cy5QZW5kaW5nKTtrKFtlZF0sKFtlXSk9PmUhPT1udWxsKTt2YXIgc2Q9ayhbZWRdLChbZV0pPT5lPT09Sy5DaGF0U3RhdHVzLlNlcnZlZCksY2Q9ayhbZWRdLChbZV0pPT5lPT09Sy5DaGF0U3RhdHVzLk9wZW4pLGxkPWsoW2VkXSwoW2VdKT0+ZT09PUsuQ2hhdFN0YXR1cy5DbG9zZWQpLHVkPWsoW3NkLHRkXSwoW2UsdF0pPT5lJiZ0PT09UXUuT3BlbiksZGQ9KGUse2J5VmlzaXRvcjp0PSExfT17fSk9PntlP3RkLnNldCh0P1F1LkNsb3NlZEJ5VmlzaXRvcjpRdS5DbG9zZWQpOnRkLnNldChRdS5PcGVuKX0sZmQ9ayhbJHUsSnVdLChbZSx0XSk9PnQubGVuZ3RoPT09MD9lPT09Sy5BY2NvdW50U3RhdHVzLk9ubGluZTp0LnNvbWUoZT0+ZS5zdGF0dXM9PT1LLkFnZW50U3RhdHVzLk9ubGluZSkpLHBkPWsoW1h1XSwoW2VdKT0+ZS5kaXNhYmxlQXV0aGVudGljYXRpb24pLG1kPSgpPT57bmQuc2V0KCExKSxlZC5zZXQobnVsbCksZGQoITEpLHJkLnNldChudWxsKX0saGQ9ZT0+e2U9PT1LLkFjY291bnRTdGF0dXMuT2ZmbGluZVdpdGhBST8kdS5zZXQoSy5BY2NvdW50U3RhdHVzLk9ubGluZSk6JHUuc2V0KGUpfSxnZD0oKT0+e3JkLnNldChuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkpLHEuZ2V0Q2xpZW50KCkuY2hhdFJlYWQoKX0sX2Q9KCk9PntsZXQgZT1wbygpLnZpc2liaWxpdHlTdGF0ZT09PWB2aXNpYmxlYDshQShMcCl8fCFBKFgpfHwhZXx8IUEoTl8pfHxnZCgpfSx2ZD1lPT4oey4uLlNzLGNoYXRJZDpBKGFkKSxjcmVhdGVkQXQ6bmV3IERhdGUoKS50b0lTT1N0cmluZygpLGNvbnRlbnQ6ey4uLlNzLmNvbnRlbnQsZGF0YTp7dGFyZ2V0OmV9fX0pLHlkPSgpPT57ZGQoITAse2J5VmlzaXRvcjohMH0pLHEuZ2V0Q2xpZW50KCkuY2hhdENsb3NlKCksVmMoKSxxcCgpfHxXXygpfSxiZD1hc3luYyBlPT57YXdhaXQgSi5hZGRNZXNzYWdlKHZkKGUpKX0seGQ9KCk9PntKLmRlbGV0ZU1lc3NhZ2UoeHMpfTtmdW5jdGlvbiBTZChlKXtyZXR1cm4gZS5sZW5ndGg9PT0wP251bGw6ZVtlLmxlbmd0aC0xXX12YXIgQ2Q9ZT0+ZS5zbGljZSgoZS5sYXN0SW5kZXhPZihgLmApLTE+Pj4wKSsyKS50b0xvd2VyQ2FzZSgpLHdkPWU9PntsZXQgdD1lLG49MCxyPVtgQmAsYEtCYCxgTUJgLGBHQmBdO2Zvcig7dD49MTAyNCYmbjxyLmxlbmd0aC0xOyl0Lz0xMDI0LG4rKztyZXR1cm57c2l6ZTpNYXRoLmZsb29yKHQpLHVuaXQ6cltuXX19LFRkPWU9PntsZXQgdD1TZChlLnNwbGl0KGAuYCkpO3JldHVybiB0P3QudG9VcHBlckNhc2UoKTp4bH0sRWQ9KGUsdCk9PmAke2V9P25hbWU9JHt0fWAsRGQ9YXN5bmMoZSx0KT0+e2xldCBuPXEuZ2V0Q2xpZW50KCkscj1bXTtmb3IobGV0e2ZpbGU6aX1vZiBlKXtsZXQgZT1hd2FpdCBuLmNoYXRVcGxvYWRJbml0KCksYT1uZXcgRm9ybURhdGE7YS5hcHBlbmQoYGZpbGVgLGksaS5uYW1lKTt0cnl7aWYoIShhd2FpdCBmZXRjaChlLnVybCx7bWV0aG9kOmBwb3N0YCxib2R5OmF9KSkub2spdGhyb3cgRXJyb3IoYFVwbG9hZCBmYWlsZWRgKTtyLnB1c2goZS50b2tlbil9Y2F0Y2h7am8oYEZpbGUgWyR7aS5uYW1lfV0gdXBsb2FkIGZhaWxlZGApLGdzKEEoVykoYGZpbGVVcGxvYWQuZmlsZXNXZXJlbnRQcm9jZXNzZWRgKSl9ZmluYWxseXt0KGkpfX1yZXR1cm4gcn0sT2Q9YXN5bmMgZT0+e2xldCB0PXEuZ2V0Q2xpZW50KCk7dHJ5e2F3YWl0IHQuY2hhdFVwbG9hZEZpbmlzaChlKX1jYXRjaHtqbyhgRmFpbGVkIHRvIGZpbmlzaCBmaWxlIHVwbG9hZCBmb3IgJHtlfWApfX0sa2Q9MWUzLEFkPTZlNCxqZD0zNmU1LE1kPTg2NGU1LE5kPTI2MjhlNixQZD0zMTUzNmU2LEZkPWU9Pk1hdGguZmxvb3IoZS9BZCkqQWQsSWQ9KGUsdCk9PkZkKG5ldyBEYXRlKGUpLmdldFRpbWUoKSk9PT1GZChuZXcgRGF0ZSh0KS5nZXRUaW1lKCkpLExkPShlLHQpPT57bGV0IG49bmV3IERhdGUoZSkscj1uZXcgRGF0ZSh0KTtyZXR1cm4gbi5nZXREYXRlKCk9PT1yLmdldERhdGUoKSYmbi5nZXRNb250aCgpPT09ci5nZXRNb250aCgpJiZuLmdldEZ1bGxZZWFyKCk9PT1yLmdldEZ1bGxZZWFyKCl9LFJkPShlLHQpPT5lLmdldFRpbWUoKS10LmdldFRpbWUoKSx6ZD1uZXcgSW50bC5EYXRlVGltZUZvcm1hdCh2b2lkIDAse2hvdXI6YG51bWVyaWNgLG1pbnV0ZTpgbnVtZXJpY2B9KSxCZD1uZXcgSW50bC5EYXRlVGltZUZvcm1hdCh2b2lkIDAse3llYXI6YG51bWVyaWNgLG1vbnRoOmBudW1lcmljYCxkYXk6YG51bWVyaWNgLGhvdXI6YG51bWVyaWNgLG1pbnV0ZTpgbnVtZXJpY2B9KSxWZD1lPT5MZChuZXcgRGF0ZSxlKT96ZDpCZCxIZD0oKT0+dHlwZW9mIEludGw8YHVgJiZgUmVsYXRpdmVUaW1lRm9ybWF0YGluIEludGwsVWQ9ZT0+SGQoKT9uZXcgSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQoZSx7bnVtZXJpYzpgYXV0b2B9KTpudWxsLFdkPVt7dW5pdDpgeWVhcmAsYW1vdW50OlBkfSx7dW5pdDpgbW9udGhgLGFtb3VudDpOZH0se3VuaXQ6YGRheWAsYW1vdW50Ok1kfSx7dW5pdDpgaG91cmAsYW1vdW50OmpkfSx7dW5pdDpgbWludXRlYCxhbW91bnQ6QWR9LHt1bml0OmBzZWNvbmRgLGFtb3VudDprZH1dLEdkPShlLHQpPT57bGV0IG49VWQodCk7aWYoIW4pcmV0dXJuIEgoYFJlbGF0aXZlIHRpbWUgZm9ybWF0IG5vdCBzdXBwb3J0ZWRgKSxgYDtmb3IobGV0e3VuaXQ6dCxhbW91bnQ6cn1vZiBXZCl7aWYodD09PWBzZWNvbmRgKXJldHVybiBuLmZvcm1hdCgwLGBzZWNvbmRgKTtpZihNYXRoLmFicyhlKT5yKXJldHVybiBuLmZvcm1hdChNYXRoLnJvdW5kKGUvciksdCl9cmV0dXJuYGB9LEtkPShlLHQ9MzAwKT0+e2xldCBuO3JldHVybiguLi5yKT0+e258fD0oZSguLi5yKSxzZXRUaW1lb3V0KCgpPT5uPW51bGwsdCkpfX0scWQ9L1tcMC1cdUQ3RkZcdUUwMDAtXHVGRkZGXXxbXHVEODAwLVx1REJGRl1bXHVEQzAwLVx1REZGRl18W1x1RDgwMC1cdURCRkZdKD8hW1x1REMwMC1cdURGRkZdKXwoPzpbXlx1RDgwMC1cdURCRkZdfF4pW1x1REMwMC1cdURGRkZdLyxKZD0vW1wwLVx4MUZceDdGLVx4OUZdLyxZZD0vWyEtIyUtXCosLVwvOjtcP0BcWy1cXV9ce1x9XHhBMVx4QTdceEFCXHhCNlx4QjdceEJCXHhCRlx1MDM3RVx1MDM4N1x1MDU1QS1cdTA1NUZcdTA1ODlcdTA1OEFcdTA1QkVcdTA1QzBcdTA1QzNcdTA1QzZcdTA1RjNcdTA1RjRcdTA2MDlcdTA2MEFcdTA2MENcdTA2MERcdTA2MUJcdTA2MUQtXHUwNjFGXHUwNjZBLVx1MDY2RFx1MDZENFx1MDcwMC1cdTA3MERcdTA3RjctXHUwN0Y5XHUwODMwLVx1MDgzRVx1MDg1RVx1MDk2NFx1MDk2NVx1MDk3MFx1MDlGRFx1MEE3Nlx1MEFGMFx1MEM3N1x1MEM4NFx1MERGNFx1MEU0Rlx1MEU1QVx1MEU1Qlx1MEYwNC1cdTBGMTJcdTBGMTRcdTBGM0EtXHUwRjNEXHUwRjg1XHUwRkQwLVx1MEZENFx1MEZEOVx1MEZEQVx1MTA0QS1cdTEwNEZcdTEwRkJcdTEzNjAtXHUxMzY4XHUxNDAwXHUxNjZFXHUxNjlCXHUxNjlDXHUxNkVCLVx1MTZFRFx1MTczNVx1MTczNlx1MTdENC1cdTE3RDZcdTE3RDgtXHUxN0RBXHUxODAwLVx1MTgwQVx1MTk0NFx1MTk0NVx1MUExRVx1MUExRlx1MUFBMC1cdTFBQTZcdTFBQTgtXHUxQUFEXHUxQjVBLVx1MUI2MFx1MUI3RFx1MUI3RVx1MUJGQy1cdTFCRkZcdTFDM0ItXHUxQzNGXHUxQzdFXHUxQzdGXHUxQ0MwLVx1MUNDN1x1MUNEM1x1MjAxMC1cdTIwMjdcdTIwMzAtXHUyMDQzXHUyMDQ1LVx1MjA1MVx1MjA1My1cdTIwNUVcdTIwN0RcdTIwN0VcdTIwOERcdTIwOEVcdTIzMDgtXHUyMzBCXHUyMzI5XHUyMzJBXHUyNzY4LVx1Mjc3NVx1MjdDNVx1MjdDNlx1MjdFNi1cdTI3RUZcdTI5ODMtXHUyOTk4XHUyOUQ4LVx1MjlEQlx1MjlGQ1x1MjlGRFx1MkNGOS1cdTJDRkNcdTJDRkVcdTJDRkZcdTJENzBcdTJFMDAtXHUyRTJFXHUyRTMwLVx1MkU0Rlx1MkU1Mi1cdTJFNURcdTMwMDEtXHUzMDAzXHUzMDA4LVx1MzAxMVx1MzAxNC1cdTMwMUZcdTMwMzBcdTMwM0RcdTMwQTBcdTMwRkJcdUE0RkVcdUE0RkZcdUE2MEQtXHVBNjBGXHVBNjczXHVBNjdFXHVBNkYyLVx1QTZGN1x1QTg3NC1cdUE4NzdcdUE4Q0VcdUE4Q0ZcdUE4RjgtXHVBOEZBXHVBOEZDXHVBOTJFXHVBOTJGXHVBOTVGXHVBOUMxLVx1QTlDRFx1QTlERVx1QTlERlx1QUE1Qy1cdUFBNUZcdUFBREVcdUFBREZcdUFBRjBcdUFBRjFcdUFCRUJcdUZEM0VcdUZEM0ZcdUZFMTAtXHVGRTE5XHVGRTMwLVx1RkU1Mlx1RkU1NC1cdUZFNjFcdUZFNjNcdUZFNjhcdUZFNkFcdUZFNkJcdUZGMDEtXHVGRjAzXHVGRjA1LVx1RkYwQVx1RkYwQy1cdUZGMEZcdUZGMUFcdUZGMUJcdUZGMUZcdUZGMjBcdUZGM0ItXHVGRjNEXHVGRjNGXHVGRjVCXHVGRjVEXHVGRjVGLVx1RkY2NV18XHVEODAwW1x1REQwMC1cdUREMDJcdURGOUZcdURGRDBdfFx1RDgwMVx1REQ2RnxcdUQ4MDJbXHVEQzU3XHVERDFGXHVERDNGXHVERTUwLVx1REU1OFx1REU3Rlx1REVGMC1cdURFRjZcdURGMzktXHVERjNGXHVERjk5LVx1REY5Q118XHVEODAzW1x1REVBRFx1REY1NS1cdURGNTlcdURGODYtXHVERjg5XXxcdUQ4MDRbXHVEQzQ3LVx1REM0RFx1RENCQlx1RENCQ1x1RENCRS1cdURDQzFcdURENDAtXHVERDQzXHVERDc0XHVERDc1XHVEREM1LVx1RERDOFx1RERDRFx1REREQlx1RERERC1cdUREREZcdURFMzgtXHVERTNEXHVERUE5XXxcdUQ4MDVbXHVEQzRCLVx1REM0Rlx1REM1QVx1REM1Qlx1REM1RFx1RENDNlx1RERDMS1cdURERDdcdURFNDEtXHVERTQzXHVERTYwLVx1REU2Q1x1REVCOVx1REYzQy1cdURGM0VdfFx1RDgwNltcdURDM0JcdURENDQtXHVERDQ2XHVEREUyXHVERTNGLVx1REU0Nlx1REU5QS1cdURFOUNcdURFOUUtXHVERUEyXHVERjAwLVx1REYwOV18XHVEODA3W1x1REM0MS1cdURDNDVcdURDNzBcdURDNzFcdURFRjdcdURFRjhcdURGNDMtXHVERjRGXHVERkZGXXxcdUQ4MDlbXHVEQzcwLVx1REM3NF18XHVEODBCW1x1REZGMVx1REZGMl18XHVEODFBW1x1REU2RVx1REU2Rlx1REVGNVx1REYzNy1cdURGM0JcdURGNDRdfFx1RDgxQltcdURFOTctXHVERTlBXHVERkUyXXxcdUQ4MkZcdURDOUZ8XHVEODM2W1x1REU4Ny1cdURFOEJdfFx1RDgzQVtcdURENUVcdURENUZdLyxYZD0vWyBceEEwXHUxNjgwXHUyMDAwLVx1MjAwQVx1MjAyOFx1MjAyOVx1MjAyRlx1MjA1Rlx1MzAwMF0vO2Z1bmN0aW9uIFpkKGUpe2xldCB0PXt9O2V8fD17fSx0LnNyY19Bbnk9cWQuc291cmNlLHQuc3JjX0NjPUpkLnNvdXJjZSx0LnNyY19aPVhkLnNvdXJjZSx0LnNyY19QPVlkLnNvdXJjZSx0LnNyY19aUENjPVt0LnNyY19aLHQuc3JjX1AsdC5zcmNfQ2NdLmpvaW4oYHxgKSx0LnNyY19aQ2M9W3Quc3JjX1osdC5zcmNfQ2NdLmpvaW4oYHxgKTtsZXQgbj1gWz48772cXWA7cmV0dXJuIHQuc3JjX3BzZXVkb19sZXR0ZXI9YCg/Oig/IWArbitgfGArdC5zcmNfWlBDYytgKWArdC5zcmNfQW55K2ApYCx0LnNyY19pcDQ9YCg/OigyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pXFwuKXszfSgyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV1bMC05XT8pYCx0LnNyY19hdXRoPWAoPzooPzooPyFgK3Quc3JjX1pDYytgfFtAL1xcW1xcXSgpXSkuKStAKT9gLHQuc3JjX3BvcnQ9YCg/OjooPzo2KD86WzAtNF1cXGR7M318NSg/OlswLTRdXFxkezJ9fDUoPzpbMC0yXVxcZHwzWzAtNV0pKSl8WzEtNV0/XFxkezEsNH0pKT9gLHQuc3JjX2hvc3RfdGVybWluYXRvcj1gKD89JHxgK24rYHxgK3Quc3JjX1pQQ2MrYCkoPyFgKyhlW2AtLS1gXT9gLSg/IS0tKXxgOmAtfGApK2BffDpcXGR8XFwuLXxcXC4oPyEkfGArdC5zcmNfWlBDYytgKSlgLHQuc3JjX3BhdGg9YCg/OlsvPyNdKD86KD8hYCt0LnNyY19aQ2MrYHxbPjzvvZxdfFsoKVtcXF17fS4sIic/IVxcLTtdKS58XFxbKD86KD8hYCt0LnNyY19aQ2MrYHxcXF0pLikqXFxdfFxcKCg/Oig/IWArdC5zcmNfWkNjK2B8WyldKS4pKlxcKXxcXHsoPzooPyFgK3Quc3JjX1pDYytgfFt9XSkuKSpcXH18XFwiKD86KD8hYCt0LnNyY19aQ2MrYHxbIl0pLikrXFwifFxcJyg/Oig/IWArdC5zcmNfWkNjK2B8WyddKS4pK1xcJ3xcXCcoPz1gK3Quc3JjX3BzZXVkb19sZXR0ZXIrYHxbLV0pfFxcLnsyLH1bYS16QS1aMC05JS8mXXxcXC4oPyFgK3Quc3JjX1pDYytgfFsuXXwkKXxgKyhlW2AtLS1gXT9gXFwtKD8hLS0oPzpbXi1dfCQpKSg/Oi0qKXxgOmBcXC0rfGApK2AsKD8hYCt0LnNyY19aQ2MrYHwkKXw7KD8hYCt0LnNyY19aQ2MrYHwkKXxcXCErKD8hYCt0LnNyY19aQ2MrYHxbIV18JCl8XFw/KD8hYCt0LnNyY19aQ2MrYHxbP118JCkpK3xcXC8pP2AsdC5zcmNfZW1haWxfbmFtZT1gW1xcLTs6Jj1cXCtcXCQsXFwuYS16QS1aMC05X11bXFwtOzomPVxcK1xcJCxcXCJcXC5hLXpBLVowLTlfXSpgLHQuc3JjX3huPWB4bi0tW2EtejAtOVxcLV17MSw1OX1gLHQuc3JjX2RvbWFpbl9yb290PWAoPzpgK3Quc3JjX3huK2B8YCt0LnNyY19wc2V1ZG9fbGV0dGVyK2B7MSw2M30pYCx0LnNyY19kb21haW49YCg/OmArdC5zcmNfeG4rYHwoPzpgK3Quc3JjX3BzZXVkb19sZXR0ZXIrYCl8KD86YCt0LnNyY19wc2V1ZG9fbGV0dGVyK2AoPzotfGArdC5zcmNfcHNldWRvX2xldHRlcitgKXswLDYxfWArdC5zcmNfcHNldWRvX2xldHRlcitgKSlgLHQuc3JjX2hvc3Q9YCg/Oig/Oig/Oig/OmArdC5zcmNfZG9tYWluK2ApXFwuKSpgK3Quc3JjX2RvbWFpbitgKSlgLHQudHBsX2hvc3RfZnV6enk9YCg/OmArdC5zcmNfaXA0K2B8KD86KD86KD86YCt0LnNyY19kb21haW4rYClcXC4pKyg/OiVUTERTJSkpKWAsdC50cGxfaG9zdF9ub19pcF9mdXp6eT1gKD86KD86KD86YCt0LnNyY19kb21haW4rYClcXC4pKyg/OiVUTERTJSkpYCx0LnNyY19ob3N0X3N0cmljdD10LnNyY19ob3N0K3Quc3JjX2hvc3RfdGVybWluYXRvcix0LnRwbF9ob3N0X2Z1enp5X3N0cmljdD10LnRwbF9ob3N0X2Z1enp5K3Quc3JjX2hvc3RfdGVybWluYXRvcix0LnNyY19ob3N0X3BvcnRfc3RyaWN0PXQuc3JjX2hvc3QrdC5zcmNfcG9ydCt0LnNyY19ob3N0X3Rlcm1pbmF0b3IsdC50cGxfaG9zdF9wb3J0X2Z1enp5X3N0cmljdD10LnRwbF9ob3N0X2Z1enp5K3Quc3JjX3BvcnQrdC5zcmNfaG9zdF90ZXJtaW5hdG9yLHQudHBsX2hvc3RfcG9ydF9ub19pcF9mdXp6eV9zdHJpY3Q9dC50cGxfaG9zdF9ub19pcF9mdXp6eSt0LnNyY19wb3J0K3Quc3JjX2hvc3RfdGVybWluYXRvcix0LnRwbF9ob3N0X2Z1enp5X3Rlc3Q9YGxvY2FsaG9zdHx3d3dcXC58XFwuXFxkezEsM31cXC58KD86XFwuKD86JVRMRFMlKSg/OmArdC5zcmNfWlBDYytgfD58JCkpYCx0LnRwbF9lbWFpbF9mdXp6eT1gKF58YCtuK2B8InxcXCh8YCt0LnNyY19aQ2MrYCkoYCt0LnNyY19lbWFpbF9uYW1lK2BAYCt0LnRwbF9ob3N0X2Z1enp5X3N0cmljdCtgKWAsdC50cGxfbGlua19mdXp6eT0iKF58KD8hWy46L1xcLV9AXSkoPzpbJCs8PT5eYHzvvZxdfCIrdC5zcmNfWlBDYysiKSkoKD8hWyQrPD0+XmB8772cXSkiK3QudHBsX2hvc3RfcG9ydF9mdXp6eV9zdHJpY3QrdC5zcmNfcGF0aCtgKWAsdC50cGxfbGlua19ub19pcF9mdXp6eT0iKF58KD8hWy46L1xcLV9AXSkoPzpbJCs8PT5eYHzvvZxdfCIrdC5zcmNfWlBDYysiKSkoKD8hWyQrPD0+XmB8772cXSkiK3QudHBsX2hvc3RfcG9ydF9ub19pcF9mdXp6eV9zdHJpY3QrdC5zcmNfcGF0aCtgKWAsdH1mdW5jdGlvbiBRZChlKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpLmZvckVhY2goZnVuY3Rpb24odCl7dCYmT2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihuKXtlW25dPXRbbl19KX0pLGV9ZnVuY3Rpb24gJGQoZSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKX1mdW5jdGlvbiBlZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBTdHJpbmddYH1mdW5jdGlvbiB0ZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBPYmplY3RdYH1mdW5jdGlvbiBuZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBSZWdFeHBdYH1mdW5jdGlvbiByZihlKXtyZXR1cm4gJGQoZSk9PT1gW29iamVjdCBGdW5jdGlvbl1gfWZ1bmN0aW9uIGFmKGUpe3JldHVybiBlLnJlcGxhY2UoL1suPyorXiRbXF1cXCgpe318LV0vZyxgXFwkJmApfXZhciBvZj17ZnV6enlMaW5rOiEwLGZ1enp5RW1haWw6ITAsZnV6enlJUDohMX07ZnVuY3Rpb24gc2YoZSl7cmV0dXJuIE9iamVjdC5rZXlzKGV8fHt9KS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4gZXx8b2YuaGFzT3duUHJvcGVydHkodCl9LCExKX12YXIgY2Y9eyJodHRwOiI6e3ZhbGlkYXRlOmZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1lLnNsaWNlKHQpO3JldHVybiBuLnJlLmh0dHB8fChuLnJlLmh0dHA9UmVnRXhwKGBeXFwvXFwvYCtuLnJlLnNyY19hdXRoK24ucmUuc3JjX2hvc3RfcG9ydF9zdHJpY3Qrbi5yZS5zcmNfcGF0aCxgaWApKSxuLnJlLmh0dHAudGVzdChyKT9yLm1hdGNoKG4ucmUuaHR0cClbMF0ubGVuZ3RoOjB9fSwiaHR0cHM6IjpgaHR0cDpgLCJmdHA6IjpgaHR0cDpgLCIvLyI6e3ZhbGlkYXRlOmZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1lLnNsaWNlKHQpO3JldHVybiBuLnJlLm5vX2h0dHB8fChuLnJlLm5vX2h0dHA9UmVnRXhwKGBeYCtuLnJlLnNyY19hdXRoK2AoPzpsb2NhbGhvc3R8KD86KD86YCtuLnJlLnNyY19kb21haW4rYClcXC4pK2Arbi5yZS5zcmNfZG9tYWluX3Jvb3QrYClgK24ucmUuc3JjX3BvcnQrbi5yZS5zcmNfaG9zdF90ZXJtaW5hdG9yK24ucmUuc3JjX3BhdGgsYGlgKSksbi5yZS5ub19odHRwLnRlc3Qocik/dD49MyYmZVt0LTNdPT09YDpgfHx0Pj0zJiZlW3QtM109PT1gL2A/MDpyLm1hdGNoKG4ucmUubm9faHR0cClbMF0ubGVuZ3RoOjB9fSwibWFpbHRvOiI6e3ZhbGlkYXRlOmZ1bmN0aW9uKGUsdCxuKXtsZXQgcj1lLnNsaWNlKHQpO3JldHVybiBuLnJlLm1haWx0b3x8KG4ucmUubWFpbHRvPVJlZ0V4cChgXmArbi5yZS5zcmNfZW1haWxfbmFtZStgQGArbi5yZS5zcmNfaG9zdF9zdHJpY3QsYGlgKSksbi5yZS5tYWlsdG8udGVzdChyKT9yLm1hdGNoKG4ucmUubWFpbHRvKVswXS5sZW5ndGg6MH19fSxsZj1gYVtjZGVmZ2lsbW5vcXJzdHV3eHpdfGJbYWJkZWZnaGlqbW5vcnN0dnd5el18Y1thY2RmZ2hpa2xtbm9ydXZ3eHl6XXxkW2Vqa21vel18ZVtjZWdyc3R1XXxmW2lqa21vcl18Z1thYmRlZmdoaWxtbnBxcnN0dXd5XXxoW2ttbnJ0dV18aVtkZWxtbm9xcnN0XXxqW2Vtb3BdfGtbZWdoaW1ucHJ3eXpdfGxbYWJjaWtyc3R1dnldfG1bYWNkZWdoa2xtbm9wcXJzdHV2d3h5el18blthY2VmZ2lsb3BydXpdfG9tfHBbYWVmZ2hrbG1ucnN0d3ldfHFhfHJbZW9zdXddfHNbYWJjZGVnaGlqa2xtbm9ydHV2eHl6XXx0W2NkZmdoamtsbW5vcnR2d3pdfHVbYWdrc3l6XXx2W2FjZWdpbnVdfHdbZnNdfHlbZXRdfHpbYW13XWAsdWY9YGJpenxjb218ZWR1fGdvdnxuZXR8b3JnfHByb3x3ZWJ8eHh4fGFlcm98YXNpYXxjb29wfGluZm98bXVzZXVtfG5hbWV8c2hvcHzRgNGEYC5zcGxpdChgfGApO2Z1bmN0aW9uIGRmKGUpe2UuX19pbmRleF9fPS0xLGUuX190ZXh0X2NhY2hlX189YGB9ZnVuY3Rpb24gZmYoZSl7cmV0dXJuIGZ1bmN0aW9uKHQsbil7bGV0IHI9dC5zbGljZShuKTtyZXR1cm4gZS50ZXN0KHIpP3IubWF0Y2goZSlbMF0ubGVuZ3RoOjB9fWZ1bmN0aW9uIHBmKCl7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7dC5ub3JtYWxpemUoZSl9fWZ1bmN0aW9uIG1mKGUpe2xldCB0PWUucmU9WmQoZS5fX29wdHNfXyksbj1lLl9fdGxkc19fLnNsaWNlKCk7ZS5vbkNvbXBpbGUoKSxlLl9fdGxkc19yZXBsYWNlZF9ffHxuLnB1c2gobGYpLG4ucHVzaCh0LnNyY194biksdC5zcmNfdGxkcz1uLmpvaW4oYHxgKTtmdW5jdGlvbiByKGUpe3JldHVybiBlLnJlcGxhY2UoYCVUTERTJWAsdC5zcmNfdGxkcyl9dC5lbWFpbF9mdXp6eT1SZWdFeHAocih0LnRwbF9lbWFpbF9mdXp6eSksYGlgKSx0LmxpbmtfZnV6enk9UmVnRXhwKHIodC50cGxfbGlua19mdXp6eSksYGlgKSx0Lmxpbmtfbm9faXBfZnV6enk9UmVnRXhwKHIodC50cGxfbGlua19ub19pcF9mdXp6eSksYGlgKSx0Lmhvc3RfZnV6enlfdGVzdD1SZWdFeHAocih0LnRwbF9ob3N0X2Z1enp5X3Rlc3QpLGBpYCk7bGV0IGk9W107ZS5fX2NvbXBpbGVkX189e307ZnVuY3Rpb24gYShlLHQpe3Rocm93IEVycm9yKGAoTGlua2lmeUl0KSBJbnZhbGlkIHNjaGVtYSAiYCtlK2AiOiBgK3QpfU9iamVjdC5rZXlzKGUuX19zY2hlbWFzX18pLmZvckVhY2goZnVuY3Rpb24odCl7bGV0IG49ZS5fX3NjaGVtYXNfX1t0XTtpZihuPT09bnVsbClyZXR1cm47bGV0IHI9e3ZhbGlkYXRlOm51bGwsbGluazpudWxsfTtpZihlLl9fY29tcGlsZWRfX1t0XT1yLHRmKG4pKXtuZihuLnZhbGlkYXRlKT9yLnZhbGlkYXRlPWZmKG4udmFsaWRhdGUpOnJmKG4udmFsaWRhdGUpP3IudmFsaWRhdGU9bi52YWxpZGF0ZTphKHQsbikscmYobi5ub3JtYWxpemUpP3Iubm9ybWFsaXplPW4ubm9ybWFsaXplOm4ubm9ybWFsaXplP2EodCxuKTpyLm5vcm1hbGl6ZT1wZigpO3JldHVybn1pZihlZihuKSl7aS5wdXNoKHQpO3JldHVybn1hKHQsbil9KSxpLmZvckVhY2goZnVuY3Rpb24odCl7ZS5fX2NvbXBpbGVkX19bZS5fX3NjaGVtYXNfX1t0XV0mJihlLl9fY29tcGlsZWRfX1t0XS52YWxpZGF0ZT1lLl9fY29tcGlsZWRfX1tlLl9fc2NoZW1hc19fW3RdXS52YWxpZGF0ZSxlLl9fY29tcGlsZWRfX1t0XS5ub3JtYWxpemU9ZS5fX2NvbXBpbGVkX19bZS5fX3NjaGVtYXNfX1t0XV0ubm9ybWFsaXplKX0pLGUuX19jb21waWxlZF9fW2BgXT17dmFsaWRhdGU6bnVsbCxub3JtYWxpemU6cGYoKX07bGV0IG89T2JqZWN0LmtleXMoZS5fX2NvbXBpbGVkX18pLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gdC5sZW5ndGg+MCYmZS5fX2NvbXBpbGVkX19bdF19KS5tYXAoYWYpLmpvaW4oYHxgKTtlLnJlLnNjaGVtYV90ZXN0PVJlZ0V4cChgKF58KD8hXykoPzpbPjzvvZxdfGArdC5zcmNfWlBDYytgKSkoYCtvK2ApYCxgaWApLGUucmUuc2NoZW1hX3NlYXJjaD1SZWdFeHAoYChefCg/IV8pKD86Wz48772cXXxgK3Quc3JjX1pQQ2MrYCkpKGArbytgKWAsYGlnYCksZS5yZS5zY2hlbWFfYXRfc3RhcnQ9UmVnRXhwKGBeYCtlLnJlLnNjaGVtYV9zZWFyY2guc291cmNlLGBpYCksZS5yZS5wcmV0ZXN0PVJlZ0V4cChgKGArZS5yZS5zY2hlbWFfdGVzdC5zb3VyY2UrYCl8KGArZS5yZS5ob3N0X2Z1enp5X3Rlc3Quc291cmNlK2ApfEBgLGBpYCksZGYoZSl9ZnVuY3Rpb24gaGYoZSx0KXtsZXQgbj1lLl9faW5kZXhfXyxyPWUuX19sYXN0X2luZGV4X18saT1lLl9fdGV4dF9jYWNoZV9fLnNsaWNlKG4scik7dGhpcy5zY2hlbWE9ZS5fX3NjaGVtYV9fLnRvTG93ZXJDYXNlKCksdGhpcy5pbmRleD1uK3QsdGhpcy5sYXN0SW5kZXg9cit0LHRoaXMucmF3PWksdGhpcy50ZXh0PWksdGhpcy51cmw9aX1mdW5jdGlvbiBnZihlLHQpe2xldCBuPW5ldyBoZihlLHQpO3JldHVybiBlLl9fY29tcGlsZWRfX1tuLnNjaGVtYV0ubm9ybWFsaXplKG4sZSksbn1mdW5jdGlvbiBfZihlLHQpe2lmKCEodGhpcyBpbnN0YW5jZW9mIF9mKSlyZXR1cm4gbmV3IF9mKGUsdCk7dHx8c2YoZSkmJih0PWUsZT17fSksdGhpcy5fX29wdHNfXz1RZCh7fSxvZix0KSx0aGlzLl9faW5kZXhfXz0tMSx0aGlzLl9fbGFzdF9pbmRleF9fPS0xLHRoaXMuX19zY2hlbWFfXz1gYCx0aGlzLl9fdGV4dF9jYWNoZV9fPWBgLHRoaXMuX19zY2hlbWFzX189UWQoe30sY2YsZSksdGhpcy5fX2NvbXBpbGVkX189e30sdGhpcy5fX3RsZHNfXz11Zix0aGlzLl9fdGxkc19yZXBsYWNlZF9fPSExLHRoaXMucmU9e30sbWYodGhpcyl9X2YucHJvdG90eXBlLmFkZD1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9fc2NoZW1hc19fW2VdPXQsbWYodGhpcyksdGhpc30sX2YucHJvdG90eXBlLnNldD1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5fX29wdHNfXz1RZCh0aGlzLl9fb3B0c19fLGUpLHRoaXN9LF9mLnByb3RvdHlwZS50ZXN0PWZ1bmN0aW9uKGUpe2lmKHRoaXMuX190ZXh0X2NhY2hlX189ZSx0aGlzLl9faW5kZXhfXz0tMSwhZS5sZW5ndGgpcmV0dXJuITE7bGV0IHQsbixyLGksYSxvLHMsYyxsO2lmKHRoaXMucmUuc2NoZW1hX3Rlc3QudGVzdChlKSl7Zm9yKHM9dGhpcy5yZS5zY2hlbWFfc2VhcmNoLHMubGFzdEluZGV4PTA7KHQ9cy5leGVjKGUpKSE9PW51bGw7KWlmKGk9dGhpcy50ZXN0U2NoZW1hQXQoZSx0WzJdLHMubGFzdEluZGV4KSxpKXt0aGlzLl9fc2NoZW1hX189dFsyXSx0aGlzLl9faW5kZXhfXz10LmluZGV4K3RbMV0ubGVuZ3RoLHRoaXMuX19sYXN0X2luZGV4X189dC5pbmRleCt0WzBdLmxlbmd0aCtpO2JyZWFrfX1yZXR1cm4gdGhpcy5fX29wdHNfXy5mdXp6eUxpbmsmJnRoaXMuX19jb21waWxlZF9fW2BodHRwOmBdJiYoYz1lLnNlYXJjaCh0aGlzLnJlLmhvc3RfZnV6enlfdGVzdCksYz49MCYmKHRoaXMuX19pbmRleF9fPDB8fGM8dGhpcy5fX2luZGV4X18pJiYobj1lLm1hdGNoKHRoaXMuX19vcHRzX18uZnV6enlJUD90aGlzLnJlLmxpbmtfZnV6enk6dGhpcy5yZS5saW5rX25vX2lwX2Z1enp5KSkhPT1udWxsJiYoYT1uLmluZGV4K25bMV0ubGVuZ3RoLCh0aGlzLl9faW5kZXhfXzwwfHxhPHRoaXMuX19pbmRleF9fKSYmKHRoaXMuX19zY2hlbWFfXz1gYCx0aGlzLl9faW5kZXhfXz1hLHRoaXMuX19sYXN0X2luZGV4X189bi5pbmRleCtuWzBdLmxlbmd0aCkpKSx0aGlzLl9fb3B0c19fLmZ1enp5RW1haWwmJnRoaXMuX19jb21waWxlZF9fW2BtYWlsdG86YF0mJihsPWUuaW5kZXhPZihgQGApLGw+PTAmJihyPWUubWF0Y2godGhpcy5yZS5lbWFpbF9mdXp6eSkpIT09bnVsbCYmKGE9ci5pbmRleCtyWzFdLmxlbmd0aCxvPXIuaW5kZXgrclswXS5sZW5ndGgsKHRoaXMuX19pbmRleF9fPDB8fGE8dGhpcy5fX2luZGV4X198fGE9PT10aGlzLl9faW5kZXhfXyYmbz50aGlzLl9fbGFzdF9pbmRleF9fKSYmKHRoaXMuX19zY2hlbWFfXz1gbWFpbHRvOmAsdGhpcy5fX2luZGV4X189YSx0aGlzLl9fbGFzdF9pbmRleF9fPW8pKSksdGhpcy5fX2luZGV4X18+PTB9LF9mLnByb3RvdHlwZS5wcmV0ZXN0PWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnJlLnByZXRlc3QudGVzdChlKX0sX2YucHJvdG90eXBlLnRlc3RTY2hlbWFBdD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuX19jb21waWxlZF9fW3QudG9Mb3dlckNhc2UoKV0/dGhpcy5fX2NvbXBpbGVkX19bdC50b0xvd2VyQ2FzZSgpXS52YWxpZGF0ZShlLG4sdGhpcyk6MH0sX2YucHJvdG90eXBlLm1hdGNoPWZ1bmN0aW9uKGUpe2xldCB0PVtdLG49MDt0aGlzLl9faW5kZXhfXz49MCYmdGhpcy5fX3RleHRfY2FjaGVfXz09PWUmJih0LnB1c2goZ2YodGhpcyxuKSksbj10aGlzLl9fbGFzdF9pbmRleF9fKTtsZXQgcj1uP2Uuc2xpY2Uobik6ZTtmb3IoO3RoaXMudGVzdChyKTspdC5wdXNoKGdmKHRoaXMsbikpLHI9ci5zbGljZSh0aGlzLl9fbGFzdF9pbmRleF9fKSxuKz10aGlzLl9fbGFzdF9pbmRleF9fO3JldHVybiB0Lmxlbmd0aD90Om51bGx9LF9mLnByb3RvdHlwZS5tYXRjaEF0U3RhcnQ9ZnVuY3Rpb24oZSl7aWYodGhpcy5fX3RleHRfY2FjaGVfXz1lLHRoaXMuX19pbmRleF9fPS0xLCFlLmxlbmd0aClyZXR1cm4gbnVsbDtsZXQgdD10aGlzLnJlLnNjaGVtYV9hdF9zdGFydC5leGVjKGUpO2lmKCF0KXJldHVybiBudWxsO2xldCBuPXRoaXMudGVzdFNjaGVtYUF0KGUsdFsyXSx0WzBdLmxlbmd0aCk7cmV0dXJuIG4/KHRoaXMuX19zY2hlbWFfXz10WzJdLHRoaXMuX19pbmRleF9fPXQuaW5kZXgrdFsxXS5sZW5ndGgsdGhpcy5fX2xhc3RfaW5kZXhfXz10LmluZGV4K3RbMF0ubGVuZ3RoK24sZ2YodGhpcywwKSk6bnVsbH0sX2YucHJvdG90eXBlLnRsZHM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZT1BcnJheS5pc0FycmF5KGUpP2U6W2VdLHQ/KHRoaXMuX190bGRzX189dGhpcy5fX3RsZHNfXy5jb25jYXQoZSkuc29ydCgpLmZpbHRlcihmdW5jdGlvbihlLHQsbil7cmV0dXJuIGUhPT1uW3QtMV19KS5yZXZlcnNlKCksbWYodGhpcyksdGhpcyk6KHRoaXMuX190bGRzX189ZS5zbGljZSgpLHRoaXMuX190bGRzX3JlcGxhY2VkX189ITAsbWYodGhpcyksdGhpcyl9LF9mLnByb3RvdHlwZS5ub3JtYWxpemU9ZnVuY3Rpb24oZSl7ZS5zY2hlbWF8fChlLnVybD1gaHR0cDovL2ArZS51cmwpLGUuc2NoZW1hPT09YG1haWx0bzpgJiYhL15tYWlsdG86L2kudGVzdChlLnVybCkmJihlLnVybD1gbWFpbHRvOmArZS51cmwpfSxfZi5wcm90b3R5cGUub25Db21waWxlPWZ1bmN0aW9uKCl7fTt2YXIgdmY9SlNPTi5wYXJzZShgWyJhYWEiLCJhYXJwIiwiYWJiIiwiYWJib3R0IiwiYWJidmllIiwiYWJjIiwiYWJsZSIsImFib2dhZG8iLCJhYnVkaGFiaSIsImFjIiwiYWNhZGVteSIsImFjY2VudHVyZSIsImFjY291bnRhbnQiLCJhY2NvdW50YW50cyIsImFjbyIsImFjdG9yIiwiYWQiLCJhZHMiLCJhZHVsdCIsImFlIiwiYWVnIiwiYWVybyIsImFldG5hIiwiYWYiLCJhZmwiLCJhZnJpY2EiLCJhZyIsImFnYWtoYW4iLCJhZ2VuY3kiLCJhaSIsImFpZyIsImFpcmJ1cyIsImFpcmZvcmNlIiwiYWlydGVsIiwiYWtkbiIsImFsIiwiYWxpYmFiYSIsImFsaXBheSIsImFsbGZpbmFueiIsImFsbHN0YXRlIiwiYWxseSIsImFsc2FjZSIsImFsc3RvbSIsImFtIiwiYW1hem9uIiwiYW1lcmljYW5leHByZXNzIiwiYW1lcmljYW5mYW1pbHkiLCJhbWV4IiwiYW1mYW0iLCJhbWljYSIsImFtc3RlcmRhbSIsImFuYWx5dGljcyIsImFuZHJvaWQiLCJhbnF1YW4iLCJhbnoiLCJhbyIsImFvbCIsImFwYXJ0bWVudHMiLCJhcHAiLCJhcHBsZSIsImFxIiwiYXF1YXJlbGxlIiwiYXIiLCJhcmFiIiwiYXJhbWNvIiwiYXJjaGkiLCJhcm15IiwiYXJwYSIsImFydCIsImFydGUiLCJhcyIsImFzZGEiLCJhc2lhIiwiYXNzb2NpYXRlcyIsImF0IiwiYXRobGV0YSIsImF0dG9ybmV5IiwiYXUiLCJhdWN0aW9uIiwiYXVkaSIsImF1ZGlibGUiLCJhdWRpbyIsImF1c3Bvc3QiLCJhdXRob3IiLCJhdXRvIiwiYXV0b3MiLCJhdyIsImF3cyIsImF4IiwiYXhhIiwiYXoiLCJhenVyZSIsImJhIiwiYmFieSIsImJhaWR1IiwiYmFuYW1leCIsImJhbmQiLCJiYW5rIiwiYmFyIiwiYmFyY2Vsb25hIiwiYmFyY2xheWNhcmQiLCJiYXJjbGF5cyIsImJhcmVmb290IiwiYmFyZ2FpbnMiLCJiYXNlYmFsbCIsImJhc2tldGJhbGwiLCJiYXVoYXVzIiwiYmF5ZXJuIiwiYmIiLCJiYmMiLCJiYnQiLCJiYnZhIiwiYmNnIiwiYmNuIiwiYmQiLCJiZSIsImJlYXRzIiwiYmVhdXR5IiwiYmVlciIsImJlcmxpbiIsImJlc3QiLCJiZXN0YnV5IiwiYmV0IiwiYmYiLCJiZyIsImJoIiwiYmhhcnRpIiwiYmkiLCJiaWJsZSIsImJpZCIsImJpa2UiLCJiaW5nIiwiYmluZ28iLCJiaW8iLCJiaXoiLCJiaiIsImJsYWNrIiwiYmxhY2tmcmlkYXkiLCJibG9ja2J1c3RlciIsImJsb2ciLCJibG9vbWJlcmciLCJibHVlIiwiYm0iLCJibXMiLCJibXciLCJibiIsImJucHBhcmliYXMiLCJibyIsImJvYXRzIiwiYm9laHJpbmdlciIsImJvZmEiLCJib20iLCJib25kIiwiYm9vIiwiYm9vayIsImJvb2tpbmciLCJib3NjaCIsImJvc3RpayIsImJvc3RvbiIsImJvdCIsImJvdXRpcXVlIiwiYm94IiwiYnIiLCJicmFkZXNjbyIsImJyaWRnZXN0b25lIiwiYnJvYWR3YXkiLCJicm9rZXIiLCJicm90aGVyIiwiYnJ1c3NlbHMiLCJicyIsImJ0IiwiYnVpbGQiLCJidWlsZGVycyIsImJ1c2luZXNzIiwiYnV5IiwiYnV6eiIsImJ2IiwiYnciLCJieSIsImJ6IiwiYnpoIiwiY2EiLCJjYWIiLCJjYWZlIiwiY2FsIiwiY2FsbCIsImNhbHZpbmtsZWluIiwiY2FtIiwiY2FtZXJhIiwiY2FtcCIsImNhbm9uIiwiY2FwZXRvd24iLCJjYXBpdGFsIiwiY2FwaXRhbG9uZSIsImNhciIsImNhcmF2YW4iLCJjYXJkcyIsImNhcmUiLCJjYXJlZXIiLCJjYXJlZXJzIiwiY2FycyIsImNhc2EiLCJjYXNlIiwiY2FzaCIsImNhc2lubyIsImNhdCIsImNhdGVyaW5nIiwiY2F0aG9saWMiLCJjYmEiLCJjYm4iLCJjYnJlIiwiY2MiLCJjZCIsImNlbnRlciIsImNlbyIsImNlcm4iLCJjZiIsImNmYSIsImNmZCIsImNnIiwiY2giLCJjaGFuZWwiLCJjaGFubmVsIiwiY2hhcml0eSIsImNoYXNlIiwiY2hhdCIsImNoZWFwIiwiY2hpbnRhaSIsImNocmlzdG1hcyIsImNocm9tZSIsImNodXJjaCIsImNpIiwiY2lwcmlhbmkiLCJjaXJjbGUiLCJjaXNjbyIsImNpdGFkZWwiLCJjaXRpIiwiY2l0aWMiLCJjaXR5IiwiY2siLCJjbCIsImNsYWltcyIsImNsZWFuaW5nIiwiY2xpY2siLCJjbGluaWMiLCJjbGluaXF1ZSIsImNsb3RoaW5nIiwiY2xvdWQiLCJjbHViIiwiY2x1Ym1lZCIsImNtIiwiY24iLCJjbyIsImNvYWNoIiwiY29kZXMiLCJjb2ZmZWUiLCJjb2xsZWdlIiwiY29sb2duZSIsImNvbSIsImNvbW1iYW5rIiwiY29tbXVuaXR5IiwiY29tcGFueSIsImNvbXBhcmUiLCJjb21wdXRlciIsImNvbXNlYyIsImNvbmRvcyIsImNvbnN0cnVjdGlvbiIsImNvbnN1bHRpbmciLCJjb250YWN0IiwiY29udHJhY3RvcnMiLCJjb29raW5nIiwiY29vbCIsImNvb3AiLCJjb3JzaWNhIiwiY291bnRyeSIsImNvdXBvbiIsImNvdXBvbnMiLCJjb3Vyc2VzIiwiY3BhIiwiY3IiLCJjcmVkaXQiLCJjcmVkaXRjYXJkIiwiY3JlZGl0dW5pb24iLCJjcmlja2V0IiwiY3Jvd24iLCJjcnMiLCJjcnVpc2UiLCJjcnVpc2VzIiwiY3UiLCJjdWlzaW5lbGxhIiwiY3YiLCJjdyIsImN4IiwiY3kiLCJjeW1ydSIsImN5b3UiLCJjeiIsImRhZCIsImRhbmNlIiwiZGF0YSIsImRhdGUiLCJkYXRpbmciLCJkYXRzdW4iLCJkYXkiLCJkY2xrIiwiZGRzIiwiZGUiLCJkZWFsIiwiZGVhbGVyIiwiZGVhbHMiLCJkZWdyZWUiLCJkZWxpdmVyeSIsImRlbGwiLCJkZWxvaXR0ZSIsImRlbHRhIiwiZGVtb2NyYXQiLCJkZW50YWwiLCJkZW50aXN0IiwiZGVzaSIsImRlc2lnbiIsImRldiIsImRobCIsImRpYW1vbmRzIiwiZGlldCIsImRpZ2l0YWwiLCJkaXJlY3QiLCJkaXJlY3RvcnkiLCJkaXNjb3VudCIsImRpc2NvdmVyIiwiZGlzaCIsImRpeSIsImRqIiwiZGsiLCJkbSIsImRucCIsImRvIiwiZG9jcyIsImRvY3RvciIsImRvZyIsImRvbWFpbnMiLCJkb3QiLCJkb3dubG9hZCIsImRyaXZlIiwiZHR2IiwiZHViYWkiLCJkdXBvbnQiLCJkdXJiYW4iLCJkdmFnIiwiZHZyIiwiZHoiLCJlYXJ0aCIsImVhdCIsImVjIiwiZWNvIiwiZWRla2EiLCJlZHUiLCJlZHVjYXRpb24iLCJlZSIsImVnIiwiZW1haWwiLCJlbWVyY2siLCJlbmVyZ3kiLCJlbmdpbmVlciIsImVuZ2luZWVyaW5nIiwiZW50ZXJwcmlzZXMiLCJlcHNvbiIsImVxdWlwbWVudCIsImVyIiwiZXJpY3Nzb24iLCJlcm5pIiwiZXMiLCJlc3EiLCJlc3RhdGUiLCJldCIsImV1IiwiZXVyb3Zpc2lvbiIsImV1cyIsImV2ZW50cyIsImV4Y2hhbmdlIiwiZXhwZXJ0IiwiZXhwb3NlZCIsImV4cHJlc3MiLCJleHRyYXNwYWNlIiwiZmFnZSIsImZhaWwiLCJmYWlyd2luZHMiLCJmYWl0aCIsImZhbWlseSIsImZhbiIsImZhbnMiLCJmYXJtIiwiZmFybWVycyIsImZhc2hpb24iLCJmYXN0IiwiZmVkZXgiLCJmZWVkYmFjayIsImZlcnJhcmkiLCJmZXJyZXJvIiwiZmkiLCJmaWRlbGl0eSIsImZpZG8iLCJmaWxtIiwiZmluYWwiLCJmaW5hbmNlIiwiZmluYW5jaWFsIiwiZmlyZSIsImZpcmVzdG9uZSIsImZpcm1kYWxlIiwiZmlzaCIsImZpc2hpbmciLCJmaXQiLCJmaXRuZXNzIiwiZmoiLCJmayIsImZsaWNrciIsImZsaWdodHMiLCJmbGlyIiwiZmxvcmlzdCIsImZsb3dlcnMiLCJmbHkiLCJmbSIsImZvIiwiZm9vIiwiZm9vZCIsImZvb3RiYWxsIiwiZm9yZCIsImZvcmV4IiwiZm9yc2FsZSIsImZvcnVtIiwiZm91bmRhdGlvbiIsImZveCIsImZyIiwiZnJlZSIsImZyZXNlbml1cyIsImZybCIsImZyb2dhbnMiLCJmcm9udGllciIsImZ0ciIsImZ1aml0c3UiLCJmdW4iLCJmdW5kIiwiZnVybml0dXJlIiwiZnV0Ym9sIiwiZnlpIiwiZ2EiLCJnYWwiLCJnYWxsZXJ5IiwiZ2FsbG8iLCJnYWxsdXAiLCJnYW1lIiwiZ2FtZXMiLCJnYXAiLCJnYXJkZW4iLCJnYXkiLCJnYiIsImdiaXoiLCJnZCIsImdkbiIsImdlIiwiZ2VhIiwiZ2VudCIsImdlbnRpbmciLCJnZW9yZ2UiLCJnZiIsImdnIiwiZ2dlZSIsImdoIiwiZ2kiLCJnaWZ0IiwiZ2lmdHMiLCJnaXZlcyIsImdpdmluZyIsImdsIiwiZ2xhc3MiLCJnbGUiLCJnbG9iYWwiLCJnbG9ibyIsImdtIiwiZ21haWwiLCJnbWJoIiwiZ21vIiwiZ214IiwiZ24iLCJnb2RhZGR5IiwiZ29sZCIsImdvbGRwb2ludCIsImdvbGYiLCJnb28iLCJnb29keWVhciIsImdvb2ciLCJnb29nbGUiLCJnb3AiLCJnb3QiLCJnb3YiLCJncCIsImdxIiwiZ3IiLCJncmFpbmdlciIsImdyYXBoaWNzIiwiZ3JhdGlzIiwiZ3JlZW4iLCJncmlwZSIsImdyb2NlcnkiLCJncm91cCIsImdzIiwiZ3QiLCJndSIsImd1Y2NpIiwiZ3VnZSIsImd1aWRlIiwiZ3VpdGFycyIsImd1cnUiLCJndyIsImd5IiwiaGFpciIsImhhbWJ1cmciLCJoYW5nb3V0IiwiaGF1cyIsImhibyIsImhkZmMiLCJoZGZjYmFuayIsImhlYWx0aCIsImhlYWx0aGNhcmUiLCJoZWxwIiwiaGVsc2lua2kiLCJoZXJlIiwiaGVybWVzIiwiaGlwaG9wIiwiaGlzYW1pdHN1IiwiaGl0YWNoaSIsImhpdiIsImhrIiwiaGt0IiwiaG0iLCJobiIsImhvY2tleSIsImhvbGRpbmdzIiwiaG9saWRheSIsImhvbWVkZXBvdCIsImhvbWVnb29kcyIsImhvbWVzIiwiaG9tZXNlbnNlIiwiaG9uZGEiLCJob3JzZSIsImhvc3BpdGFsIiwiaG9zdCIsImhvc3RpbmciLCJob3QiLCJob3RlbHMiLCJob3RtYWlsIiwiaG91c2UiLCJob3ciLCJociIsImhzYmMiLCJodCIsImh1IiwiaHVnaGVzIiwiaHlhdHQiLCJoeXVuZGFpIiwiaWJtIiwiaWNiYyIsImljZSIsImljdSIsImlkIiwiaWUiLCJpZWVlIiwiaWZtIiwiaWthbm8iLCJpbCIsImltIiwiaW1hbWF0IiwiaW1kYiIsImltbW8iLCJpbW1vYmlsaWVuIiwiaW4iLCJpbmMiLCJpbmR1c3RyaWVzIiwiaW5maW5pdGkiLCJpbmZvIiwiaW5nIiwiaW5rIiwiaW5zdGl0dXRlIiwiaW5zdXJhbmNlIiwiaW5zdXJlIiwiaW50IiwiaW50ZXJuYXRpb25hbCIsImludHVpdCIsImludmVzdG1lbnRzIiwiaW8iLCJpcGlyYW5nYSIsImlxIiwiaXIiLCJpcmlzaCIsImlzIiwiaXNtYWlsaSIsImlzdCIsImlzdGFuYnVsIiwiaXQiLCJpdGF1IiwiaXR2IiwiamFndWFyIiwiamF2YSIsImpjYiIsImplIiwiamVlcCIsImpldHp0IiwiamV3ZWxyeSIsImppbyIsImpsbCIsImptIiwiam1wIiwiam5qIiwiam8iLCJqb2JzIiwiam9idXJnIiwiam90Iiwiam95IiwianAiLCJqcG1vcmdhbiIsImpwcnMiLCJqdWVnb3MiLCJqdW5pcGVyIiwia2F1ZmVuIiwia2RkaSIsImtlIiwia2Vycnlob3RlbHMiLCJrZXJyeXByb3BlcnRpZXMiLCJrZmgiLCJrZyIsImtoIiwia2kiLCJraWEiLCJraWRzIiwia2ltIiwia2luZGxlIiwia2l0Y2hlbiIsImtpd2kiLCJrbSIsImtuIiwia29lbG4iLCJrb21hdHN1Iiwia29zaGVyIiwia3AiLCJrcG1nIiwia3BuIiwia3IiLCJrcmQiLCJrcmVkIiwia3Vva2dyb3VwIiwia3ciLCJreSIsImt5b3RvIiwia3oiLCJsYSIsImxhY2FpeGEiLCJsYW1ib3JnaGluaSIsImxhbWVyIiwibGFuZCIsImxhbmRyb3ZlciIsImxhbnhlc3MiLCJsYXNhbGxlIiwibGF0IiwibGF0aW5vIiwibGF0cm9iZSIsImxhdyIsImxhd3llciIsImxiIiwibGMiLCJsZHMiLCJsZWFzZSIsImxlY2xlcmMiLCJsZWZyYWsiLCJsZWdhbCIsImxlZ28iLCJsZXh1cyIsImxnYnQiLCJsaSIsImxpZGwiLCJsaWZlIiwibGlmZWluc3VyYW5jZSIsImxpZmVzdHlsZSIsImxpZ2h0aW5nIiwibGlrZSIsImxpbGx5IiwibGltaXRlZCIsImxpbW8iLCJsaW5jb2xuIiwibGluayIsImxpdmUiLCJsaXZpbmciLCJsayIsImxsYyIsImxscCIsImxvYW4iLCJsb2FucyIsImxvY2tlciIsImxvY3VzIiwibG9sIiwibG9uZG9uIiwibG90dGUiLCJsb3R0byIsImxvdmUiLCJscGwiLCJscGxmaW5hbmNpYWwiLCJsciIsImxzIiwibHQiLCJsdGQiLCJsdGRhIiwibHUiLCJsdW5kYmVjayIsImx1eGUiLCJsdXh1cnkiLCJsdiIsImx5IiwibWEiLCJtYWRyaWQiLCJtYWlmIiwibWFpc29uIiwibWFrZXVwIiwibWFuIiwibWFuYWdlbWVudCIsIm1hbmdvIiwibWFwIiwibWFya2V0IiwibWFya2V0aW5nIiwibWFya2V0cyIsIm1hcnJpb3R0IiwibWFyc2hhbGxzIiwibWF0dGVsIiwibWJhIiwibWMiLCJtY2tpbnNleSIsIm1kIiwibWUiLCJtZWQiLCJtZWRpYSIsIm1lZXQiLCJtZWxib3VybmUiLCJtZW1lIiwibWVtb3JpYWwiLCJtZW4iLCJtZW51IiwibWVyY2ttc2QiLCJtZyIsIm1oIiwibWlhbWkiLCJtaWNyb3NvZnQiLCJtaWwiLCJtaW5pIiwibWludCIsIm1pdCIsIm1pdHN1YmlzaGkiLCJtayIsIm1sIiwibWxiIiwibWxzIiwibW0iLCJtbWEiLCJtbiIsIm1vIiwibW9iaSIsIm1vYmlsZSIsIm1vZGEiLCJtb2UiLCJtb2kiLCJtb20iLCJtb25hc2giLCJtb25leSIsIm1vbnN0ZXIiLCJtb3Jtb24iLCJtb3J0Z2FnZSIsIm1vc2NvdyIsIm1vdG8iLCJtb3RvcmN5Y2xlcyIsIm1vdiIsIm1vdmllIiwibXAiLCJtcSIsIm1yIiwibXMiLCJtc2QiLCJtdCIsIm10biIsIm10ciIsIm11IiwibXVzZXVtIiwibXVzaWMiLCJtdiIsIm13IiwibXgiLCJteSIsIm16IiwibmEiLCJuYWIiLCJuYWdveWEiLCJuYW1lIiwibmF2eSIsIm5iYSIsIm5jIiwibmUiLCJuZWMiLCJuZXQiLCJuZXRiYW5rIiwibmV0ZmxpeCIsIm5ldHdvcmsiLCJuZXVzdGFyIiwibmV3IiwibmV3cyIsIm5leHQiLCJuZXh0ZGlyZWN0IiwibmV4dXMiLCJuZiIsIm5mbCIsIm5nIiwibmdvIiwibmhrIiwibmkiLCJuaWNvIiwibmlrZSIsIm5pa29uIiwibmluamEiLCJuaXNzYW4iLCJuaXNzYXkiLCJubCIsIm5vIiwibm9raWEiLCJub3J0b24iLCJub3ciLCJub3dydXoiLCJub3d0diIsIm5wIiwibnIiLCJucmEiLCJucnciLCJudHQiLCJudSIsIm55YyIsIm56Iiwib2JpIiwib2JzZXJ2ZXIiLCJvZmZpY2UiLCJva2luYXdhIiwib2xheWFuIiwib2xheWFuZ3JvdXAiLCJvbGxvIiwib20iLCJvbWVnYSIsIm9uZSIsIm9uZyIsIm9ubCIsIm9ubGluZSIsIm9vbyIsIm9wZW4iLCJvcmFjbGUiLCJvcmFuZ2UiLCJvcmciLCJvcmdhbmljIiwib3JpZ2lucyIsIm9zYWthIiwib3RzdWthIiwib3R0Iiwib3ZoIiwicGEiLCJwYWdlIiwicGFuYXNvbmljIiwicGFyaXMiLCJwYXJzIiwicGFydG5lcnMiLCJwYXJ0cyIsInBhcnR5IiwicGF5IiwicGNjdyIsInBlIiwicGV0IiwicGYiLCJwZml6ZXIiLCJwZyIsInBoIiwicGhhcm1hY3kiLCJwaGQiLCJwaGlsaXBzIiwicGhvbmUiLCJwaG90byIsInBob3RvZ3JhcGh5IiwicGhvdG9zIiwicGh5c2lvIiwicGljcyIsInBpY3RldCIsInBpY3R1cmVzIiwicGlkIiwicGluIiwicGluZyIsInBpbmsiLCJwaW9uZWVyIiwicGl6emEiLCJwayIsInBsIiwicGxhY2UiLCJwbGF5IiwicGxheXN0YXRpb24iLCJwbHVtYmluZyIsInBsdXMiLCJwbSIsInBuIiwicG5jIiwicG9obCIsInBva2VyIiwicG9saXRpZSIsInBvcm4iLCJwb3N0IiwicHIiLCJwcmF4aSIsInByZXNzIiwicHJpbWUiLCJwcm8iLCJwcm9kIiwicHJvZHVjdGlvbnMiLCJwcm9mIiwicHJvZ3Jlc3NpdmUiLCJwcm9tbyIsInByb3BlcnRpZXMiLCJwcm9wZXJ0eSIsInByb3RlY3Rpb24iLCJwcnUiLCJwcnVkZW50aWFsIiwicHMiLCJwdCIsInB1YiIsInB3IiwicHdjIiwicHkiLCJxYSIsInFwb24iLCJxdWViZWMiLCJxdWVzdCIsInJhY2luZyIsInJhZGlvIiwicmUiLCJyZWFkIiwicmVhbGVzdGF0ZSIsInJlYWx0b3IiLCJyZWFsdHkiLCJyZWNpcGVzIiwicmVkIiwicmVkdW1icmVsbGEiLCJyZWhhYiIsInJlaXNlIiwicmVpc2VuIiwicmVpdCIsInJlbGlhbmNlIiwicmVuIiwicmVudCIsInJlbnRhbHMiLCJyZXBhaXIiLCJyZXBvcnQiLCJyZXB1YmxpY2FuIiwicmVzdCIsInJlc3RhdXJhbnQiLCJyZXZpZXciLCJyZXZpZXdzIiwicmV4cm90aCIsInJpY2giLCJyaWNoYXJkbGkiLCJyaWNvaCIsInJpbCIsInJpbyIsInJpcCIsInJvIiwicm9ja3MiLCJyb2RlbyIsInJvZ2VycyIsInJvb20iLCJycyIsInJzdnAiLCJydSIsInJ1Z2J5IiwicnVociIsInJ1biIsInJ3IiwicndlIiwicnl1a3l1Iiwic2EiLCJzYWFybGFuZCIsInNhZmUiLCJzYWZldHkiLCJzYWt1cmEiLCJzYWxlIiwic2Fsb24iLCJzYW1zY2x1YiIsInNhbXN1bmciLCJzYW5kdmlrIiwic2FuZHZpa2Nvcm9tYW50Iiwic2Fub2ZpIiwic2FwIiwic2FybCIsInNhcyIsInNhdmUiLCJzYXhvIiwic2IiLCJzYmkiLCJzYnMiLCJzYyIsInNjYiIsInNjaGFlZmZsZXIiLCJzY2htaWR0Iiwic2Nob2xhcnNoaXBzIiwic2Nob29sIiwic2NodWxlIiwic2Nod2FyeiIsInNjaWVuY2UiLCJzY290Iiwic2QiLCJzZSIsInNlYXJjaCIsInNlYXQiLCJzZWN1cmUiLCJzZWN1cml0eSIsInNlZWsiLCJzZWxlY3QiLCJzZW5lciIsInNlcnZpY2VzIiwic2V2ZW4iLCJzZXciLCJzZXgiLCJzZXh5Iiwic2ZyIiwic2ciLCJzaCIsInNoYW5ncmlsYSIsInNoYXJwIiwic2hlbGwiLCJzaGlhIiwic2hpa3NoYSIsInNob2VzIiwic2hvcCIsInNob3BwaW5nIiwic2hvdWppIiwic2hvdyIsInNpIiwic2lsayIsInNpbmEiLCJzaW5nbGVzIiwic2l0ZSIsInNqIiwic2siLCJza2kiLCJza2luIiwic2t5Iiwic2t5cGUiLCJzbCIsInNsaW5nIiwic20iLCJzbWFydCIsInNtaWxlIiwic24iLCJzbmNmIiwic28iLCJzb2NjZXIiLCJzb2NpYWwiLCJzb2Z0YmFuayIsInNvZnR3YXJlIiwic29odSIsInNvbGFyIiwic29sdXRpb25zIiwic29uZyIsInNvbnkiLCJzb3kiLCJzcGEiLCJzcGFjZSIsInNwb3J0Iiwic3BvdCIsInNyIiwic3JsIiwic3MiLCJzdCIsInN0YWRhIiwic3RhcGxlcyIsInN0YXIiLCJzdGF0ZWJhbmsiLCJzdGF0ZWZhcm0iLCJzdGMiLCJzdGNncm91cCIsInN0b2NraG9sbSIsInN0b3JhZ2UiLCJzdG9yZSIsInN0cmVhbSIsInN0dWRpbyIsInN0dWR5Iiwic3R5bGUiLCJzdSIsInN1Y2tzIiwic3VwcGxpZXMiLCJzdXBwbHkiLCJzdXBwb3J0Iiwic3VyZiIsInN1cmdlcnkiLCJzdXp1a2kiLCJzdiIsInN3YXRjaCIsInN3aXNzIiwic3giLCJzeSIsInN5ZG5leSIsInN5c3RlbXMiLCJzeiIsInRhYiIsInRhaXBlaSIsInRhbGsiLCJ0YW9iYW8iLCJ0YXJnZXQiLCJ0YXRhbW90b3JzIiwidGF0YXIiLCJ0YXR0b28iLCJ0YXgiLCJ0YXhpIiwidGMiLCJ0Y2kiLCJ0ZCIsInRkayIsInRlYW0iLCJ0ZWNoIiwidGVjaG5vbG9neSIsInRlbCIsInRlbWFzZWsiLCJ0ZW5uaXMiLCJ0ZXZhIiwidGYiLCJ0ZyIsInRoIiwidGhkIiwidGhlYXRlciIsInRoZWF0cmUiLCJ0aWFhIiwidGlja2V0cyIsInRpZW5kYSIsInRpcHMiLCJ0aXJlcyIsInRpcm9sIiwidGoiLCJ0am1heHgiLCJ0angiLCJ0ayIsInRrbWF4eCIsInRsIiwidG0iLCJ0bWFsbCIsInRuIiwidG8iLCJ0b2RheSIsInRva3lvIiwidG9vbHMiLCJ0b3AiLCJ0b3JheSIsInRvc2hpYmEiLCJ0b3RhbCIsInRvdXJzIiwidG93biIsInRveW90YSIsInRveXMiLCJ0ciIsInRyYWRlIiwidHJhZGluZyIsInRyYWluaW5nIiwidHJhdmVsIiwidHJhdmVsZXJzIiwidHJhdmVsZXJzaW5zdXJhbmNlIiwidHJ1c3QiLCJ0cnYiLCJ0dCIsInR1YmUiLCJ0dWkiLCJ0dW5lcyIsInR1c2h1IiwidHYiLCJ0dnMiLCJ0dyIsInR6IiwidWEiLCJ1YmFuayIsInVicyIsInVnIiwidWsiLCJ1bmljb20iLCJ1bml2ZXJzaXR5IiwidW5vIiwidW9sIiwidXBzIiwidXMiLCJ1eSIsInV6IiwidmEiLCJ2YWNhdGlvbnMiLCJ2YW5hIiwidmFuZ3VhcmQiLCJ2YyIsInZlIiwidmVnYXMiLCJ2ZW50dXJlcyIsInZlcmlzaWduIiwidmVybcO2Z2Vuc2JlcmF0ZXIiLCJ2ZXJtw7ZnZW5zYmVyYXR1bmciLCJ2ZXJzaWNoZXJ1bmciLCJ2ZXQiLCJ2ZyIsInZpIiwidmlhamVzIiwidmlkZW8iLCJ2aWciLCJ2aWtpbmciLCJ2aWxsYXMiLCJ2aW4iLCJ2aXAiLCJ2aXJnaW4iLCJ2aXNhIiwidmlzaW9uIiwidml2YSIsInZpdm8iLCJ2bGFhbmRlcmVuIiwidm4iLCJ2b2RrYSIsInZvbHZvIiwidm90ZSIsInZvdGluZyIsInZvdG8iLCJ2b3lhZ2UiLCJ2dSIsIndhbGVzIiwid2FsbWFydCIsIndhbHRlciIsIndhbmciLCJ3YW5nZ291Iiwid2F0Y2giLCJ3YXRjaGVzIiwid2VhdGhlciIsIndlYXRoZXJjaGFubmVsIiwid2ViY2FtIiwid2ViZXIiLCJ3ZWJzaXRlIiwid2VkIiwid2VkZGluZyIsIndlaWJvIiwid2VpciIsIndmIiwid2hvc3dobyIsIndpZW4iLCJ3aWtpIiwid2lsbGlhbWhpbGwiLCJ3aW4iLCJ3aW5kb3dzIiwid2luZSIsIndpbm5lcnMiLCJ3bWUiLCJ3b2x0ZXJza2x1d2VyIiwid29vZHNpZGUiLCJ3b3JrIiwid29ya3MiLCJ3b3JsZCIsIndvdyIsIndzIiwid3RjIiwid3RmIiwieGJveCIsInhlcm94IiwieGlodWFuIiwieGluIiwieHh4IiwieHl6IiwieWFjaHRzIiwieWFob28iLCJ5YW1heHVuIiwieWFuZGV4IiwieWUiLCJ5b2RvYmFzaGkiLCJ5b2dhIiwieW9rb2hhbWEiLCJ5b3UiLCJ5b3V0dWJlIiwieXQiLCJ5dW4iLCJ6YSIsInphcHBvcyIsInphcmEiLCJ6ZXJvIiwiemlwIiwiem0iLCJ6b25lIiwienVlcmljaCIsInp3IiwizrXOuyIsIs61z4UiLCLQsdCzIiwi0LHQtdC7Iiwi0LTQtdGC0LgiLCLQtdGOIiwi0LrQsNGC0L7Qu9C40LoiLCLQutC+0LwiLCLQvNC60LQiLCLQvNC+0L0iLCLQvNC+0YHQutCy0LAiLCLQvtC90LvQsNC50L0iLCLQvtGA0LMiLCLRgNGD0YEiLCLRgNGEIiwi0YHQsNC50YIiLCLRgdGA0LEiLCLRg9C60YAiLCLSm9Cw0LciLCLVsNWh1bUiLCLXmdep16jXkNecIiwi16fXldedIiwi2KfYqNmI2LjYqNmKIiwi2KfYsdin2YXZg9mIIiwi2KfZhNin2LHYr9mGIiwi2KfZhNio2K3YsdmK2YYiLCLYp9mE2KzYstin2KbYsSIsItin2YTYs9i52YjYr9mK2KkiLCLYp9mE2LnZhNmK2KfZhiIsItin2YTZhdi62LHYqCIsItin2YXYp9ix2KfYqiIsItin24zYsdin2YYiLCLYqNin2LHYqiIsItio2KfYstin2LEiLCLYqNmK2KrZgyIsItio2r7Yp9ix2KoiLCLYqtmI2YbYsyIsItiz2YjYr9in2YYiLCLYs9mI2LHZitipIiwi2LTYqNmD2KkiLCLYudix2KfZgiIsIti52LHYqCIsIti52YXYp9mGIiwi2YHZhNiz2LfZitmGIiwi2YLYt9ixIiwi2YPYp9ir2YjZhNmK2YMiLCLZg9mI2YUiLCLZhdi12LEiLCLZhdmE2YrYs9mK2KciLCLZhdmI2LHZitiq2KfZhtmK2KciLCLZhdmI2YLYuSIsItmH2YXYsdin2YciLCLZvtin2qnYs9iq2KfZhiIsItqA2KfYsdiqIiwi4KSV4KWJ4KSuIiwi4KSo4KWH4KSfIiwi4KSt4KS+4KSw4KSkIiwi4KSt4KS+4KSw4KSk4KSu4KWNIiwi4KSt4KS+4KSw4KWL4KSkIiwi4KS44KSC4KSX4KSg4KSoIiwi4Kas4Ka+4KaC4Kay4Ka+Iiwi4Kat4Ka+4Kaw4KakIiwi4Kat4Ka+4Kew4KakIiwi4Kit4Ki+4Kiw4KikIiwi4Kqt4Kq+4Kqw4KqkIiwi4Kyt4Ky+4Kyw4KykIiwi4K6H4K6o4K+N4K6k4K6/4K6v4K6+Iiwi4K6H4K6y4K6Z4K+N4K6V4K+IIiwi4K6a4K6/4K6Z4K+N4K6V4K6q4K+N4K6q4K+C4K6w4K+NIiwi4LCt4LC+4LCw4LCk4LGNIiwi4LKt4LK+4LKw4LKkIiwi4LSt4LS+4LSw4LSk4LSCIiwi4La94LaC4Laa4LePIiwi4LiE4Lit4LihIiwi4LmE4LiX4LiiIiwi4Lql4Lqy4LqnIiwi4YOS4YOUIiwi44G/44KT44GqIiwi44Ki44Oe44K+44OzIiwi44Kv44Op44Km44OJIiwi44Kw44O844Kw44OrIiwi44Kz44OgIiwi44K544OI44KiIiwi44K744O844OrIiwi44OV44Kh44OD44K344On44OzIiwi44Od44Kk44Oz44OIIiwi5LiW55WMIiwi5Lit5L+hIiwi5Lit5Zu9Iiwi5Lit5ZyLIiwi5Lit5paH572RIiwi5Lqa6ams6YCKIiwi5LyB5LiaIiwi5L2b5bGxIiwi5L+h5oGvIiwi5YGl5bq3Iiwi5YWr5Y2mIiwi5YWs5Y+4Iiwi5YWs55uKIiwi5Y+w5rm+Iiwi5Y+w54GjIiwi5ZWG5Z+OIiwi5ZWG5bqXIiwi5ZWG5qCHIiwi5ZiJ6YeMIiwi5ZiJ6YeM5aSn6YWS5bqXIiwi5Zyo57q/Iiwi5aSn5ou/Iiwi5aSp5Li75pWZIiwi5aix5LmQIiwi5a626Zu7Iiwi5bm/5LicIiwi5b6u5Y2aIiwi5oWI5ZaEIiwi5oiR54ix5L2gIiwi5omL5py6Iiwi5oub6IGYIiwi5pS/5YqhIiwi5pS/5bqcIiwi5paw5Yqg5Z2hIiwi5paw6Ze7Iiwi5pe25bCaIiwi5pu457GNIiwi5py65p6EIiwi5reh6ams6ZShIiwi5ri45oiPIiwi5r6z6ZaAIiwi54K555yLIiwi56e75YqoIiwi57uE57uH5py65p6EIiwi572R5Z2AIiwi572R5bqXIiwi572R56uZIiwi572R57ucIiwi6IGU6YCaIiwi6LC35q2MIiwi6LSt54mpIiwi6YCa6LKpIiwi6ZuG5ZuiIiwi6Zu76KiK55uI56eRIiwi6aOe5Yip5rWmIiwi6aOf5ZOBIiwi6aSQ5Y6FIiwi6aaZ5qC86YeM5ouJIiwi6aaZ5rivIiwi64u364S3Iiwi64u37Lu0Iiwi7IK87ISxIiwi7ZWc6rWtIl1gKSx5Zj0vXlstISMkJSYnKisvMC05PT9BLVpeX2EtemB7fH1+XShcLj9bLSEjJCUmJyorLzAtOT0/QS1aXl9hLXpge3x9fl0pKkBbYS16QS1aMC05XSgtKlwuP1thLXpBLVowLTldKSpcLlthLXpBLVpdKC0/W2EtekEtWjAtOV0pKyQvLGJmPS8oKD86d3d3Lik/W15ccy5dK1wuW15ccy9dK1wvW15ccy5dKykvLHhmPS9bJjw+IiddL2csU2Y9ZT0+e2xldCB0PXsiJiI6YCZhbXA7YCwiPCI6YCZsdDtgLCI+IjpgJmd0O2AsJyInOmAmcXVvdDtgLCInIjpgJiMzOTtgfSxuPVJlZ0V4cCh4Zi5zb3VyY2UpO3JldHVybiBlJiZuLnRlc3QoZSk/ZS5yZXBsYWNlKHhmLGU9PnRbZV0pOmV8fGBgfSxDZj1gb3ZlcmZsb3c6IGhpZGRlbjsgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94OyAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyAtd2Via2l0LWxpbmUtY2xhbXA6IDE7IGxpbmUtY2xhbXA6IDE7IHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtgLHdmPW5ldyBfZigpLnRsZHModmYpLnNldCh7ZnV6enlJUDohMH0pLFRmPW5ldyBfZigpLnRsZHModmYpLEVmPShlLHQsbik9PntsZXQgcj1CKCkubG9jYXRpb24uaG9zdG5hbWU7cmV0dXJuYDxhIGhyZWY9IiR7ZX0iIHRhcmdldD0iJHtyLmxlbmd0aD4wJiZlLmluY2x1ZGVzKHIpP2BfcGFyZW50YDpgX2JsYW5rYH0iIHJlbD0ibm9yZWZlcnJlciBub29wZW5lciIgdGl0bGU9IiR7ZX0iIHN0eWxlPSIke24/LmNsYW1wJiYhbj8ucmVwbGFjZVRleHQ/Q2Y6YGB9Ij4ke3R9PC9hPmB9LERmPShlLHQpPT57aWYoZT09PWBgKXJldHVybiBlO2xldCBuPXdmLm1hdGNoKGUpO2lmKCFuKXJldHVybiBTZihlKTtsZXQgcj1gYCxpPTA7cmV0dXJuIG4uZm9yRWFjaChuPT57bGV0IGE9YGAsbz1gYCxzPU9mKGUsbiksYz10Py5jbGFtcCYmbi50ZXh0Lmxlbmd0aD4zMCYmIXM7bi5pbmRleD5pJiYoYT1lLnN1YnN0cmluZyhpLG4uaW5kZXgpKSxvPUVmKG4udXJsLG4udGV4dCx7Li4udCxjbGFtcDpjfSksaT1uLmxhc3RJbmRleCxzJiYoYT1hLnN1YnN0cmluZygwLGEubGVuZ3RoLTEpLGkrPTEpLGMmJiFrZihlLG4pJiYobz1gXG4ke299XG5gLGE9YS50cmltRW5kKCksZVtpXT8ubWF0Y2goL1xzLykmJihpKz0xKSkscis9U2YoYSkrb30pLGUubGVuZ3RoPmkmJihyKz1TZihlLnN1YnN0cmluZyhpKSkpLHJ9LE9mPShlLHQpPT5lW3QuaW5kZXgtMV09PT1gImAmJmVbdC5sYXN0SW5kZXhdPT09YCJgLGtmPShlLHQpPT4hISh0LmluZGV4PD0xJiZlLnN1YnN0cmluZyh0Lmxhc3RJbmRleCx0Lmxhc3RJbmRleCszKS5tYXRjaCgvW1xuXHJdKy8pfHxlLnN1YnN0cmluZyh0LmluZGV4LTMsdC5pbmRleCkubWF0Y2goL1tcblxyXSsvKSYmZS5zdWJzdHJpbmcodC5sYXN0SW5kZXgsdC5sYXN0SW5kZXgrMykubWF0Y2goL1tcblxyXSsvKXx8ZS5zdWJzdHJpbmcodC5pbmRleC0zLHQuaW5kZXgpLm1hdGNoKC9bXG5ccl0rLykmJnQubGFzdEluZGV4PmUubGVuZ3RoLTN8fHQuaW5kZXg8PTEmJnQubGFzdEluZGV4Pj1lLmxlbmd0aC0yKSxBZj1lPT5lLnJlcGxhY2UoL15odHRwcz86XC9cLy8sYGApLnJlcGxhY2UoL153d3dcLi8sYGApLnJlcGxhY2UoL1wvKyQvLGBgKS50b0xvd2VyQ2FzZSgpLGpmPWU9PntsZXQgdD1bYG1haWx0bzpgLGBmdHA6YCxgLy9gXSxuPVRmLm1hdGNoKGUpO2lmKCFuKXJldHVybiBudWxsO2xldCByPW5ldyBTZXQ7cmV0dXJuIG4uZmlsdGVyKGU9PntpZih0LmluY2x1ZGVzKGUuc2NoZW1hKSlyZXR1cm4hMTtsZXQgbj1BZihlLnVybCk7cmV0dXJuIHIuaGFzKG4pPyExOihyLmFkZChuKSwhMCl9KX0sTWY9KCk9PlBvKGBjYXJkc2ApLE5mPWU9PntGbyh7Li4uZX0sYGNhcmRzYCl9LFBmPWFzeW5jIGU9PntsZXQgdD1uZXcgSGVhZGVycyx7d2lkZ2V0QXBpVXJsOm59PVYuZ2V0T3B0aW9ucygpO3QuYXBwZW5kKGBDb250ZW50LVR5cGVgLGBhcHBsaWNhdGlvbi9qc29uYCk7bGV0IHI9SlNPTi5zdHJpbmdpZnkoe2xpbmtzOmV9KTt0cnl7bGV0IGU9YXdhaXQgZmV0Y2goYCR7bn0vbGlua3MvcHJldmlld2Ase21ldGhvZDpgUE9TVGAsaGVhZGVyczp0LGJvZHk6cn0pO3JldHVybiBlLm9rJiZlLmpzb24/YXdhaXQgZS5qc29uKCk6bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19LEZmPWU9PmUuZmluZChlPT5lLnR5cGU9PT1gb3Blbl91cmxgKT8udmFsdWV8fGBgLElmPWU9PntsZXQgdD1lLmZpbHRlcihlPT5lLnRpdGxlJiZlLmltYWdlJiYhUmYoRmYoZS5hY3Rpb25zKSkpO3JldHVybiB0Lmxlbmd0aCYmZS5sZW5ndGg+MT9lOnQubGVuZ3RoPT09MT90OltdfSxMZj1lPT57bGV0IHQ9bmV3IERhdGUoKS5nZXRUaW1lKCk7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2gobj0+eyghZVtuXS5leHBpcmF0aW9ufHxlW25dLmV4cGlyYXRpb24mJmVbbl0uZXhwaXJhdGlvbjx0KSYmZGVsZXRlIGVbbl19KSxlfSxSZj1lPT57bGV0e2FjY2VwdGVkRmlsZUV4dGVuc2lvbnM6dH09QShibCksbj1lLm1hdGNoKC8oXC4pKFteLl17Myw0fSkkL20pO3JldHVybiBuJiZuWzJdJiZ0LmluY2x1ZGVzKG5bMl0pfSx6Zj1hc3luYyBlPT57dHJ5e2F3YWl0IHEuZ2V0Q2xpZW50KCkubGlua09wZW5lZCh7dXJsOmV9KX1jYXRjaChlKXtqbyhgU2VuZGluZyBsaW5rIG9wZW5lZCBhbmFseXRpY3MgZXZlbnQgZmFpbGVkYCxTdHJpbmcoZSkpfX0sQmY9KGUsdCk9PntpZighdClyZXR1cm47bGV0IG49YXN5bmMgbj0+e2xldCByPW4udGFyZ2V0LmNsb3Nlc3QoYGFgKTtyJiZlLmNvbnRhaW5zKHIpJiZ0JiZhd2FpdCB6ZihyLmhyZWYpfSxyPWU9PnZvaWQgbihlKSxpPWU9PntlLmJ1dHRvbiE9PTImJm4oZSl9LGE9ZT0+dm9pZCBuKGUpO3JldHVybiBlLmFkZEV2ZW50TGlzdGVuZXIoYGNsaWNrYCxyKSxlLmFkZEV2ZW50TGlzdGVuZXIoYGF1eGNsaWNrYCxpKSxlLmFkZEV2ZW50TGlzdGVuZXIoYGNvbnRleHRtZW51YCxhKSx7ZGVzdHJveSgpe2UucmVtb3ZlRXZlbnRMaXN0ZW5lcihgY2xpY2tgLHIpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihgYXV4Y2xpY2tgLGkpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihgY29udGV4dG1lbnVgLGEpfX19LFZmPSExLEhmPU8oKSxVZj1PKCExKSxXZj1PKCExKSxHZj0oZSx0LG4pPT57bGV0IHI9e30saT1uZXcgRGF0ZSgpLmdldFRpbWUoKStNZDtlLmZvckVhY2goKGUsbik9PnJbZV09e2V4cGlyYXRpb246aSxjYXJkOnRbbl19KTtsZXQgYT17Li4ubiwuLi5yfTtIZi5zZXQoYSksTmYoYSl9LEtmPWFzeW5jKGUsdCxuPSExKT0+e2xldCByPVtdLGk9e3R5cGU6YGNhcmRzYCxsYXlvdXQ6YGNhcm91c2VsYCxpdGVtczpbXX07VmZ8fD0oSGYuc2V0KE1mKCkpLCEwKTtsZXQgYT1qZihlKTtpZighYSlyZXR1cm4gbnVsbDtsZXQgbz1MZihBKEhmKSkscz1bXTtpZihhLmZvckVhY2godD0+e09mKGUsdCl8fChvW3QudXJsXT9yLnB1c2gob1t0LnVybF0uY2FyZCk6cy5wdXNoKHQudXJsKSl9KSxzLmxlbmd0aD4wKXt0JiZVZi5zZXQoITApLG4mJldmLnNldCghMCk7bGV0IGU9YXdhaXQgUGYocyk7ZSYmKEdmKHMsZSxvKSxyPVsuLi5yLC4uLmVdKX1yZXR1cm4gaS5pdGVtcz1JZihyKSxVZi5zZXQoITEpLFdmLnNldCghMSksaS5pdGVtcy5sZW5ndGg+MD9pOm51bGx9LHFmPWZ1bmN0aW9uKGUpe3JldHVybiBlLkNvbnRhY3RNZXNzYWdlPWBjb250YWN0LW1lc3NhZ2VgLGUuQWdlbnRNZXNzYWdlPWBhZ2VudC1tZXNzYWdlYCxlLkJvdE1lc3NhZ2U9YGJvdC1tZXNzYWdlYCxlLkJvdFJlcGxpZXM9YGJvdC1yZXBsaWVzYCxlfSh7fSksSmY9YXN5bmMoe3RleHQ6ZSxxdWlja1JlcGx5OnR9KT0+e3RyeXtsZXQgbj1CKCkubG9jYXRpb24uaHJlZjtyZXR1cm4gYXdhaXQgcS5nZXRDbGllbnQoKS5jaGF0TWVzc2FnZSh7Y29udGVudDp7dHlwZTpHLk1lc3NhZ2VDb250ZW50VHlwZS5UZXh0LHRleHQ6ZX0scXVpY2tSZXBseTp0LHBhZ2VVcmw6bn0pPz9udWxsfWNhdGNoe3JldHVybiBudWxsfX0sWWY9ZT0+ZS5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Cb3R8fGUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuVHJpZ2dlcixYZj1lPT5lLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlN5c3RlbSxaZj1lPT5lLnR5cGU9PT1HLk1lc3NhZ2VUeXBlLk5vdGUsUWY9ZT0+IWUuZGVsZXRlZEF0JiYhWmYoZSkmJihlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkFnZW50fHxZZihlKSksJGY9ZT0+YGh0bWxgaW4gZSYmISFlLmh0bWwsZXA9ZT0+YHRleHRgaW4gZSYmISFlLnRleHQsdHA9KGUsdCk9Pm5ldyBEYXRlKGUuY3JlYXRlZEF0KS5nZXRUaW1lKCktbmV3IERhdGUodC5jcmVhdGVkQXQpLmdldFRpbWUoKSxucD0oZSx0KT0+dD09PXFmLkJvdFJlcGxpZXM/YCR7ZS5pZH0tcmVwbGllc2A6ZS5pZCxycD1lPT57bGV0IHQ9e2lzUmlnaHQ6ITEsaXNMZWZ0OiExfSxuPXtpc1ByaW1hcnk6ITEsaXNTZWNvbmRhcnk6ITF9O3N3aXRjaChlKXtjYXNlIHFmLkNvbnRhY3RNZXNzYWdlOnQuaXNSaWdodD0hMCxuLmlzUHJpbWFyeT0hMDticmVhaztkZWZhdWx0OnQuaXNMZWZ0PSEwLG4uaXNTZWNvbmRhcnk9ITB9cmV0dXJue2FsaWduOnQsdmFyaWFudDpufX0saXA9ZT0+ISFlLmFnZW50SWR8fGUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90JiZlLmNvbnRlbnQudHlwZSE9PUcuTWVzc2FnZUNvbnRlbnRUeXBlLlRpY2tldEZvcm0sYXA9KGUsdCk9PmUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuU3lzdGVtfHx0PT09cWYuQm90UmVwbGllc3x8ZS5jb250ZW50LnR5cGU9PT1HLk1lc3NhZ2VDb250ZW50VHlwZS5UaWNrZXRGb3JtLG9wPWU9PntsZXQgdD1bXSxuPW51bGwscj1udWxsO2ZvcihsZXQgaSBvZiBlKXtpZihpLmNvbnRlbnQudHlwZT09PUcuTWVzc2FnZUNvbnRlbnRUeXBlLlJhdGVGb3JtJiYoaS5jb250ZW50LmRhdGEudGFyZ2V0PT09Ry5SYXRpbmdUYXJnZXQuQWkmJiFKcCgpfHxpLmNvbnRlbnQuZGF0YS50YXJnZXQ9PT1HLlJhdGluZ1RhcmdldC5BZ2VudCYmIXFwKCkpKWNvbnRpbnVlO24mJiFocChpLG4pJiYodC5wdXNoKG4pLG49bnVsbCxyPW51bGwpLG58fD1zcChpKTtsZXQgZT1scChpLG4pO2lmKHIpe2xldCB0PV9wKHIpLG49ZHAocik7ZS5uZWlnaGJvcnMuaGFzVG9wPXQsbi5hbnkubmVpZ2hib3JzLmhhc0JvdHRvbT10LG4uYXR0YWNobWVudENvbnRleHQmJihuLmF0dGFjaG1lbnRDb250ZXh0LmV4dHJhU3BhY2VzLmhhc0JvdHRvbT15cChuLmF0dGFjaG1lbnRDb250ZXh0LmF0dGFjaG1lbnQpKX1sZXQgYT1mcChpKTtpZihhJiZ1cChhLGUsciksbi5tZXNzYWdlc0NvbnRleHQucHVzaChlKSxyPWUsKFlmKGkpfHxYZihpKSkmJlRwKGkpKXt0LnB1c2gobik7bGV0IGU9Y3AoaSk7ZS5tZXNzYWdlc0NvbnRleHQucHVzaChscChpLGUpKSx0LnB1c2goZSksbj1udWxsfX1yZXR1cm4gbiYmdC5wdXNoKG4pLHR9LHNwPWU9PntsZXQgdD1ncChlKSxuPWUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90fHxlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlRyaWdnZXIse2FsaWduOnIsdmFyaWFudDppfT1ycCh0KTtyZXR1cm57dHlwZTp0LGlzQm90Om4saWQ6bnAoZSx0KSxkYXRlOmUuY3JlYXRlZEF0LGFnZW50SWQ6ZS5hZ2VudElkLGFsaWduOnIsdmFyaWFudDppLG1lc3NhZ2VzQ29udGV4dDpbXSxzaG93QXZhdGFyOmlwKGUpLHVzZUZ1bGxXaWR0aDphcChlLHQpfX0sY3A9ZT0+e2xldCB0PXFmLkJvdFJlcGxpZXMse2FsaWduOm4sdmFyaWFudDpyfT1ycCh0KTtyZXR1cm57dHlwZTpxZi5Cb3RSZXBsaWVzLGlzQm90OiEwLGlkOm5wKGUsdCksZGF0ZTplLmNyZWF0ZWRBdCxhZ2VudElkOmUuYWdlbnRJZCxhbGlnbjpuLHZhcmlhbnQ6cixtZXNzYWdlc0NvbnRleHQ6W10sc2hvd0F2YXRhcjohMSx1c2VGdWxsV2lkdGg6YXAoZSx0KX19LGxwPShlLHQpPT4oe2dyb3VwOnQsbWVzc2FnZTplLG5laWdoYm9yczp7aGFzVG9wOiExLGhhc0JvdHRvbTohMX0sYXR0YWNobWVudHNDb250ZXh0OltdfSksdXA9KGUsdCxuKT0+e2xldCByPW51bGw7Zm9yKGxldCBpIG9mIGUpe2xldCBlPXZwKGkpLGE9e2hhc1RvcDohMSxoYXNCb3R0b206ITF9LG89eXAoaSkscz17aGFzVG9wOm8saGFzQm90dG9tOiExfTtpZihyKXtsZXQgdD12cChyLmF0dGFjaG1lbnQpLG49eXAoci5hdHRhY2htZW50KTtyLm5laWdoYm9ycy5oYXNCb3R0b209dCYmZSxhLmhhc1RvcD10JiZlLHIuZXh0cmFTcGFjZXMuaGFzQm90dG9tPSFvJiZufWVsc2UgaWYodC5uZWlnaGJvcnMuaGFzQm90dG9tPWUsYS5oYXNUb3A9ZSxwcCh0Lm1lc3NhZ2UpKWlmKGEuaGFzVG9wPSExLHQubmVpZ2hib3JzLmhhc1RvcD0hMSx0Lm5laWdoYm9ycy5oYXNCb3R0b209ITEsbil7bGV0IHQ9X3Aobikscj1kcChuKTthLmhhc1RvcD10JiZlLHIuYW55Lm5laWdoYm9ycy5oYXNCb3R0b209dCYmZTtsZXQgaT1yLmF0dGFjaG1lbnRDb250ZXh0O2kmJihpLmV4dHJhU3BhY2VzLmhhc0JvdHRvbT0hbyYmeXAoaS5hdHRhY2htZW50KSl9ZWxzZSBzLmhhc1RvcD0hMTtsZXQgYz17YXR0YWNobWVudDppLG5laWdoYm9yczphLGV4dHJhU3BhY2VzOnMsbWVzc2FnZUNvbnRleHQ6dH07dC5hdHRhY2htZW50c0NvbnRleHQucHVzaChjKSxyPXsuLi5jfX19LGRwPWU9PntsZXQgdD1TZChlLmF0dGFjaG1lbnRzQ29udGV4dCl8fHZvaWQgMDtyZXR1cm57YXR0YWNobWVudENvbnRleHQ6dCxhbnk6dHx8ZX19LGZwPWU9PmU/ZS5jb250ZW50Py50eXBlPT09Ry5NZXNzYWdlQ29udGVudFR5cGUuVXBsb2FkP1tlLmNvbnRlbnQuZGF0YV06ZS5hdHRhY2htZW50czpbXSxwcD1lPT4hZS5jb250ZW50LnRleHQsbXA9ZT0+e3RyeXtsZXQgdD1CKCkubG9jYXRpb24uaG9zdG5hbWUsbj1uZXcgRE9NUGFyc2VyKCkucGFyc2VGcm9tU3RyaW5nKGUsYHRleHQvaHRtbGApO3JldHVybiBuLnF1ZXJ5U2VsZWN0b3JBbGwoYGFbaHJlZl1gKS5mb3JFYWNoKGU9PntsZXQgbj1lLmdldEF0dHJpYnV0ZShgaHJlZmApfHxgYDtuPW4ucmVwbGFjZSgvXmh0dHBzPzpcL1wvIj9odHRwcz86XC9cLy8sYGh0dHBzOi8vYCksbj1uLnJlcGxhY2UoL14iK3wiKyQvZyxgYCksZS5zZXRBdHRyaWJ1dGUoYGhyZWZgLG4pO2xldCByPXQubGVuZ3RoPjAmJm4uaW5jbHVkZXModCk7ZS5oYXNBdHRyaWJ1dGUoYHRhcmdldGApfHxlLnNldEF0dHJpYnV0ZShgdGFyZ2V0YCxyP2BfcGFyZW50YDpgX2JsYW5rYCksZS5oYXNBdHRyaWJ1dGUoYHJlbGApfHxlLnNldEF0dHJpYnV0ZShgcmVsYCxgbm9vcGVuZXIgbm9yZWZlcnJlcmApfSksbi5ib2R5LmlubmVySFRNTH1jYXRjaHtyZXR1cm4gZX19LGhwPShlLHQpPT57bGV0IG49Z3AoZSkscj1uPT09cWYuQWdlbnRNZXNzYWdlJiZlLmFnZW50SWQ9PT10LmFnZW50SWQsaT1uPT09cWYuQ29udGFjdE1lc3NhZ2UsYT1lLnN1YlR5cGUhPT1HLk1lc3NhZ2VTdWJUeXBlLkJvdHx8KGUuY29udGVudC5xdWlja1JlcGxpZXN8fFtdKS5sZW5ndGg9PT0wO3JldHVybiB0LnR5cGU9PT1uJiYocnx8aSkmJmEmJklkKHQuZGF0ZSxlLmNyZWF0ZWRBdCl9LGdwPWU9Pntzd2l0Y2goZS5zdWJUeXBlKXtjYXNlIEcuTWVzc2FnZVN1YlR5cGUuQWdlbnQ6cmV0dXJuIHFmLkFnZW50TWVzc2FnZTtjYXNlIEcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdDpyZXR1cm4gcWYuQ29udGFjdE1lc3NhZ2U7Y2FzZSBHLk1lc3NhZ2VTdWJUeXBlLkJvdDpyZXR1cm4gcWYuQm90TWVzc2FnZX1yZXR1cm4gbnVsbH0sX3A9ZT0+e2xldCB0PWUuYXR0YWNobWVudHNDb250ZXh0Lmxlbmd0aDtyZXR1cm4hKHQ+MCYmZS5hdHRhY2htZW50c0NvbnRleHRbdC0xXS5hdHRhY2htZW50LnR5cGU9PT1HLkF0dGFjaG1lbnRUeXBlLkZpbGUpfSx2cD1lPT5lLnR5cGUhPT1HLkF0dGFjaG1lbnRUeXBlLkZpbGUmJmUudHlwZSE9PUcuQXR0YWNobWVudFR5cGUuQ2FyZHMseXA9ZT0+ISFlJiYoZS50eXBlPT09Ry5BdHRhY2htZW50VHlwZS5GaWxlfHxlLnR5cGU9PT1HLkF0dGFjaG1lbnRUeXBlLkNhcmRzKSxicD0oKT0+e2xldCBlPWdfKCk7ZS52b2x1bWU9cWMsZS5hZGRFdmVudExpc3RlbmVyKGBjYW5wbGF5dGhyb3VnaGAsKCk9PntlLnBsYXkoKS5jYXRjaChlPT5IKGBDb3VsZCBub3QgcGxheSBtZXNzYWdlIHNvdW5kLmAsZSkpfSl9LHhwPUtkKGJwLEpjKSxTcD1lPT5lLmZpbHRlcihlPT5lLnR5cGU9PT1HLk1lc3NhZ2VUeXBlLk1lc3NhZ2UmJihlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkFnZW50fHxlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkNvbnRhY3QpKSxDcD0oZSx0PSEwKT0+e2xldCBuPWUucmVkdWNlKChlLHQpPT4oZS5wdXNoKHQpLHQuY29udGVudC50eXBlPT09Ry5NZXNzYWdlQ29udGVudFR5cGUuQ2hhdENsb3NlfHx0LmNvbnRlbnQudHlwZT09PUcuTWVzc2FnZUNvbnRlbnRUeXBlLkNoYXRWaXNpdG9yQ2xvc2U/W106ZSksW10pO3JldHVybiB0P24uZmlsdGVyKGU9PmUudHlwZT09PUcuTWVzc2FnZVR5cGUuTWVzc2FnZSYmZS5zdWJUeXBlIT09Ry5NZXNzYWdlU3ViVHlwZS5TeXN0ZW0pOm59LHdwPWU9PntsZXQgdD17fTtyZXR1cm4gZS5mb3JFYWNoKGU9PntlLnRyaWdnZXImJih0W2UudHJpZ2dlci5pZF09e3NlbnQ6ITB9KX0pLHR9LFRwPWU9PiEhKGUuY29udGVudC5xdWlja1JlcGxpZXMmJmUuY29udGVudC5xdWlja1JlcGxpZXMubGVuZ3RoPjApLEVwPWFzeW5jKGUsdD0hMSk9PntsZXQgbj1RZihlKSxyPSF0JiZuO2lmKGBodG1sYGluIGUuY29udGVudCYmZS5jb250ZW50Lmh0bWwmJihlLmNvbnRlbnQuaHRtbD1tcChlLmNvbnRlbnQuaHRtbCkpLGUuY29udGVudD8udGV4dCYmVi5nZXRPcHRpb25zKCkudXJsQ2FyZHNFbmFibGVkJiZlLmF0dGFjaG1lbnRzLmxlbmd0aD09PTApe2xldCB0PWF3YWl0IEtmKGUuY29udGVudC50ZXh0LGUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdCxyKTt0JiZ0Lml0ZW1zLmxlbmd0aD4wJiZlLmF0dGFjaG1lbnRzLnB1c2godCl9cmV0dXJuIG5kLnNldCghMSksZX0sRHA9YXN5bmMgZT0+KFYuZ2V0T3B0aW9ucygpLnVybENhcmRzRW5hYmxlZCYmYXdhaXQgUHJvbWlzZS5hbGwoZS5tYXAoYXN5bmMgZT0+YXdhaXQgRXAoZSkpKSxlKSxPcD1lPT5lLmZpbmRJbmRleChlPT5lLm1lc3NhZ2UuY2hhbm5lbC50eXBlPT09YGVtYWlsYCk+LTEsa3A9ZT0+ZS5maW5kKGU9PmUubWVzc2FnZT8udHJpZ2dlcj8uaWRlbnRpdHlJZCk/Lm1lc3NhZ2U/LnRyaWdnZXI/LmlkZW50aXR5SWQsSj0oKCk9PntsZXQgZT1PKHt9KSx7c3Vic2NyaWJlOnQsdXBkYXRlOm4sc2V0OnJ9PWUsaT1hc3luYyBlPT57cihybChgaWRgLGF3YWl0IERwKGUpKSl9LGE9YXN5bmMgZT0+e2xldCB0PWF3YWl0IEVwKGUpO1lmKGUpJiZNcC5zZXQoITEpLG4obj0+KHsuLi5uLFtlLmlkXTp0fSkpLGpwKHQpfSxvPWFzeW5jIGU9PntpZighQShScCkuc29tZSh0PT50LmlkPT09ZS5pZCkpcmV0dXJuO2xldCB0PUEoQnApPT09ZS5pZD9hd2FpdCBFcChlLCEwKTplO24obj0+KHsuLi5uLFtlLmlkXTp0fSkpfTtyZXR1cm57c3Vic2NyaWJlOnQsc2V0TWVzc2FnZXM6aSxhZGRNZXNzYWdlOmEsZGVsZXRlTWVzc2FnZTplPT57bih0PT57bGV0e1tlXTpuLC4uLnJ9PXQ7cmV0dXJuIHJ9KX0sbWFya01lc3NhZ2VBc0RlbGV0ZWQ6KHQscik9PntsZXQgaT1BKGUpW3RdO2kmJm4oZT0+KHsuLi5lLFtpLmlkXTp7Li4uaSxkZWxldGVkQXQ6cj8/bmV3IERhdGUoKS50b0lTT1N0cmluZygpfX0pKX0scmVwbGFjZU1lc3NhZ2U6byx1cGRhdGVNZXNzYWdlUmF0aW5nOmU9PntBKGlkKT09PWUuY29udGVudC5kYXRhPy50YXJnZXQmJnhkKCksbih0PT4hZXx8ZS5jb250ZW50LnR5cGUhPT1HLk1lc3NhZ2VDb250ZW50VHlwZS5SYXRlRm9ybT97Li4udH06KHRbZS5pZF18fFlwKGUuaWQpLHsuLi50LFtlLmlkXTplfSkpfSxzZW5kTWVzc2FnZTphc3luYyhlLHQpPT57S3Auc2V0KGUpO2xldCBuPWF3YWl0IEpmKHt0ZXh0OmV9KTtuJiYoS3Auc2V0KG51bGwpLGF3YWl0IGEobiksei5lbWl0KGBtZXNzYWdlU2VudGAsbiksd2goQSgkdSkpKSxhd2FpdCBQcm9taXNlLmFsbCh0Lm1hcChlPT5PZChlKSkpfSxzZW5kQm90UmVwbHk6YXN5bmMoZSx0LG4pPT57bGV0IHI9YXdhaXQgSmYoe3RleHQ6dCxxdWlja1JlcGx5OntyZXBseVRvOmUscGF5bG9hZDpufX0pO24uaXNHb0JhY2tCdXR0b258fEptKHQpLHImJmF3YWl0IG8ocil9LGNsZWFyTWVzc2FnZXM6KCk9PntyKHt9KX19fSkoKSxBcD1lPT57QShSXyl8fElfKCksUV8oKSxzZXRUaW1lb3V0KCgpPT57Si5hZGRNZXNzYWdlKGUpLCRfKCl9LDE2MDApfSxqcD1lPT57ZSYmQShEXykmJkEoUl8pJiYhKEEoa18pJiZBKFgpKSYmX18oZSkmJnhwKCl9LE1wPU8oITEpLE5wPWsoW0pdLChbZV0pPT57bGV0IHQ9T2JqZWN0LnZhbHVlcyhlKS5maWx0ZXIoUWYpO3JldHVybiB0P1NkKHQuc29ydCgoZSx0KT0+bmV3IERhdGUoZS5jcmVhdGVkQXQpLmdldFRpbWUoKS1uZXcgRGF0ZSh0LmNyZWF0ZWRBdCkuZ2V0VGltZSgpKSk6bnVsbH0pLFBwPWsoW0oscmRdLChbZSx0XSk9PntsZXQgbj1PYmplY3QudmFsdWVzKGUpLmZpbHRlcihRZik7cmV0dXJuIHQ/bi5maWx0ZXIoZT0+bmV3IERhdGUoZS5jcmVhdGVkQXQpPm5ldyBEYXRlKHQpKTpufSksRnA9ayhbUHBdLChbZV0pPT5TZChlKSksSXA9ayhbUHBdLChbZV0pPT5lLmxlbmd0aCksTHA9ayhbSXBdLChbZV0pPT5lPjApLFJwPWsoW0pdLChbZV0pPT5PYmplY3QudmFsdWVzKGUpLnNvcnQodHApKSx6cD1rKFtScF0sKFtlXSk9Pm9wKGUpKSxCcD1rKFtScF0sKFtlXSk9PlNkKGUpPy5pZD8/bnVsbCksVnA9ayhbSl0sKFtlXSk9PlNkKE9iamVjdC52YWx1ZXMoZSkuZmlsdGVyKGU9PnR5cGVvZiBlLndpZGdldE9wdGlvbnM/LmRpc2FibGVJbnB1dD09YGJvb2xlYW5gKSk/LndpZGdldE9wdGlvbnM/LmRpc2FibGVJbnB1dD8/ITEpLEhwPWsoW0pdLChbZV0pPT5PYmplY3QudmFsdWVzKGUpLmZpbHRlcihlPT5lLnN1YlR5cGU9PT1gY29udGFjdGB8fGUuc3ViVHlwZT09PWBhZ2VudGApLmxlbmd0aD4wKSxVcD1rKFtKXSwoW2VdKT0+T2JqZWN0LnZhbHVlcyhlKS5maWx0ZXIoZT0+ZS5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0KS5sZW5ndGg+MCksV3A9ayhbSixDc10sKFtlLHRdLG4pPT57aWYodCl7bGV0IHI9ZVt0XTtyJiZyLmNvbnRlbnQudHlwZT09PUcuTWVzc2FnZUNvbnRlbnRUeXBlLlJhdGVGb3JtJiZuKHttZXNzYWdlSWQ6ci5pZCx2YWx1ZTpyLmNvbnRlbnQuZGF0YT8udmFsdWUsdGV4dDpyLmNvbnRlbnQuZGF0YT8udGV4dCx0YXJnZXQ6ci5jb250ZW50LmRhdGE/LnRhcmdldH0pfWVsc2UgbihudWxsKX0pLEdwPWsoW1JwXSwoW2VdKT0+ZS5zbGljZSgpLnJldmVyc2UoKS5maW5kKGU9PmUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdCl8fG51bGwpLEtwPU8obnVsbCkscXA9KCk9PiEhVi5nZXRPcHRpb25zKCkucmF0aW5nRW5hYmxlZCxKcD0oKT0+ISFWLmdldE9wdGlvbnMoKS5haVJhdGluZ0VuYWJsZWQsWXA9ZT0+e0NzLnNldChlKSxCYyhIYy5DaGF0UmF0aW5nKX0sWHA9YXN5bmMoe21lc3NhZ2VJZDplLHJhdGluZzp7dGV4dDp0LHZhbHVlOm59LG9uU3VjY2VzczpyfSk9PntsZXQgaT1BKEopW2VdLGE9ZT09PWByYXRlX2Zvcm1faWRgP3ZvaWQgMDplO3RyeXthd2FpdCBxLmdldENsaWVudCgpLmNoYXRSYXRlKHttZXNzYWdlSWQ6YSx2YWx1ZTpuLHRleHQ6dD8/dm9pZCAwfSksciYmcigpfWNhdGNoKGUpe2kmJmF3YWl0IEoucmVwbGFjZU1lc3NhZ2UoaSksam8oYENoYXQgcmF0aW5nIGZhaWxlZC5gLFN0cmluZyhlKSksZ3MoQShXKShgZm9ybS5zdWJtaXQuZXJyb3JgKSl9fSxacD1lPT57bGV0e3dpZGdldFYzVXJsOnR9PVYuZ2V0T3B0aW9ucygpO3JldHVybmAke3R9L2Fzc2V0cy9pbWFnZXMvcmF0aW5nLyR7ZX0uc3ZnYH0sUXA9LyhHLShbQS1aLDAtOV0qKSkvZywkcD1bXSxlbT0hMSx0bSxubT0hMSxybSxpbT1lPT5lLm1hdGNoKFFwKSxhbT0oKT0+e2xldHtnb29nbGVBbmFseXRpY3NFbmFibGVkOmV9PVYuZ2V0T3B0aW9ucygpO3RtPXdpbmRvdy50b3B8fHdpbmRvdyxlJiYodG0uZ3RhZyYmKHJtPXRtLmd0YWcsbm09ITApLHoub24oYGFuYWx5dGljc0NvbnNlbnRDaGFuZ2VkYCxvbSksIWVtJiZVbygpJiZzbSgpKX0sb209ZT0+eyFlbSYmZSYmc20oKX0sc209KCk9PntsZXR7Z2FLZXk6ZSxnYU9wdGlvbnM6dCxnb29nbGVBbmFseXRpY3NNYW51YWw6bixnb29nbGVBbmFseXRpY3NNZWFzdXJlbWVudElkczpyfT1WLmdldE9wdGlvbnMoKSxpPXR8fHtjb29raWVEb21haW46YGF1dG9gfTtpZihlKWltKGUpJiYkcC5wdXNoKHtrZXk6ZSxvcHRpb25zOml9KTtlbHNlIGlmKG4mJnIpci5mb3JFYWNoKGU9PntpbShlKSYmJHAucHVzaCh7a2V5OmUsb3B0aW9uczppfSl9KTtlbHNlIHRyeXskcC5wdXNoKC4uLmNtKCkpfWNhdGNoKGUpe3ZvKGBFcnJvciBkdXJpbmcgZ2V0dGluZyBHQSB0b3AgdHJhY2tlcnNgLGUgaW5zdGFuY2VvZiBFcnJvcj9lLm1lc3NhZ2U6ZSl9JHAubGVuZ3RoPjAmJiFubSYmbG0oKSwkcC5sZW5ndGg9PT0wP3ZvKGBObyBHQSB0byBzZXR1cGApOihkbSgpLGVtPSEwLHZvKGBHQSBpbml0aWFsaXplZGApKX0sY209KCk9PntsZXQgZT1bXTtyZXR1cm4gdG0uZ29vZ2xlX3RhZ19tYW5hZ2VyJiZPYmplY3Qua2V5cyh0bS5nb29nbGVfdGFnX21hbmFnZXIpLmZvckVhY2godD0+e2ltKHQpJiZlLnB1c2goe2tleTp0LG9wdGlvbnM6e2Nvb2tpZURvbWFpbjpgYXV0b2B9fSl9KSxlfSxsbT0oKT0+e2xldCBlPXRtLmRvY3VtZW50LHtoZWFkOnR9PWUsbj1lLmNyZWF0ZUVsZW1lbnQoYHNjcmlwdGApO24uaWQ9YGd0YWdgLG4udHlwZT1gdGV4dC9qYXZhc2NyaXB0YCxuLmFzeW5jPSEwLG4uc3JjPWBodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndGFnL2pzYCx0Lmluc2VydEJlZm9yZShuLHQuZmlyc3RDaGlsZCksdG0uZGF0YUxheWVyPXRtLmRhdGFMYXllcnx8W10sdG0uZ3RhZz1mdW5jdGlvbigpe3RtLmRhdGFMYXllci5wdXNoKGFyZ3VtZW50cyl9LHJtPXRtLmd0YWcscm0oYGpzYCxuZXcgRGF0ZSl9LHVtPSgpPT57bGV0IGU9W107aWYobm0pe2xldCB0PWNtKCk7JHAuZm9yRWFjaChuPT57dC5maW5kKCh7a2V5OmV9KT0+ZT09PW4ua2V5KXx8ZS5wdXNoKG4pfSl9ZWxzZSBlPVsuLi4kcF07cmV0dXJuIGV9LGRtPSgpPT57dW0oKS5mb3JFYWNoKGU9PntsZXR7a2V5OnQsb3B0aW9uczpufT1lLHI9e307bj8ocj17Y29va2llX2RvbWFpbjpuLmNvb2tpZURvbWFpbn0sbi5uYW1lJiYoci5uYW1lPW4ubmFtZSkpOnI9e2Nvb2tpZV9kb21haW46dG0/LmxvY2F0aW9uLmhvc3RuYW1lfHxgYH0sci5zZW5kX3BhZ2Vfdmlldz0hMSxybShgY29uZmlnYCx0LHIpfSl9LGZtPShlLHQpPT57bGV0e2dvb2dsZUFuYWx5dGljc0VuYWJsZWQ6bn09Vi5nZXRPcHRpb25zKCk7aWYoISghbnx8IXRtLmd0YWd8fCFVbygpfHx0bS5kb2N1bWVudC5oaWRkZW4pKXRyeXskcC5mb3JFYWNoKG49Pnt0LnNlbmRfdG89bi5rZXkscm0oYGV2ZW50YCxlLHQpLHZvKGBTbWFydHN1cHA6IEdBIGV2ZW50ICR7ZX0gLSAke0pTT04uc3RyaW5naWZ5KHQpfWApfSl9Y2F0Y2goZSl7dm8oYFNtYXJ0c3VwcDogR0EgZXJyb3I6YCxlIGluc3RhbmNlb2YgRXJyb3I/ZS5tZXNzYWdlOmUpfX0scG09YFZpc2l0b3Jfc3RhcnRlZF9jb252ZXJzYXRpb25gLG1tPWBWaXNpdG9yX2Nsb3NlZF9jb252ZXJzYXRpb25gLGhtPWBUcmlnZ2VyX21lc3NhZ2Vfc2VudGAsZ209YFRyaWdnZXJfbWVzc2FnZV92aWV3ZWRgLF9tPWBUcmlnZ2VyX3Zpc2l0b3JfcmVhY3Rpb25gLHZtPWBBdXRvX21lc3NhZ2Vfc2VudGAseW09YEF1dG9fbWVzc2FnZV92aWV3ZWRgLGJtPWBBdXRvX21lc3NhZ2VfdmlzaXRvcl9yZWFjdGlvbmAseG09YENoYXRib3Rfc2VudGAsU209YENoYXRib3Rfdmlld2VkYCxDbT1gQ2hhdGJvdF9pbnRlcmFjdGlvbmAsd209YENoYXRib3RfYnV0dG9uX2ludGVyYWN0aW9uYCxUbT1gQ2hhdGJvdF92aXNpdG9yX3JlYWN0aW9uYCxFbT1gQWlfY2hhdGJvdF9zZW50YCxEbT1gQWlfY2hhdGJvdF9pbnRlcmFjdGlvbmAsT209YEFpX2NoYXRib3RfdmlzaXRvcl9yZWFjdGlvbmAsa209YEFnZW50X3NlcnZlZF9jb252ZXJzYXRpb25gLEFtPWBBZ2VudF9jbG9zZWRfY29udmVyc2F0aW9uYCxqbT1gQ29udGFjdF9hY3F1aXJlZGAsTW09YEF1dGhfZm9ybV9maWxsZWRgLE5tPWBPZmZsaW5lX21lc3NhZ2Vfc2VudGAsUG09YEZlZWRiYWNrX3NlbnRgLEZtPWBGZWVkYmFja190ZXh0X3NlbnRgLEltPWBVcmxfY2FyZF9vcGVuZWRgLExtPWBDaGF0Ym94X29wZW5lZGAsUm09e2V2ZW50X2NhdGVnb3J5OmBTbWFydHN1cHBfdjNgLG5vbl9pbnRlcmFjdGlvbjohMH0sWT0oZSx0KT0+e2ZtKGUsey4uLlJtLC4uLnR9KX0sem09KGU9YGApPT5ZKGhtLHtldmVudF9sYWJlbDplfSksQm09ZT0+WShnbSx7ZXZlbnRfbGFiZWw6ZX0pLFZtPShlPWBgKT0+WShfbSx7ZXZlbnRfbGFiZWw6ZX0pLEhtPShlPWBgKT0+WSh2bSx7ZXZlbnRfbGFiZWw6ZX0pLFVtPWU9PlkoeW0se2V2ZW50X2xhYmVsOmV9KSxXbT0oZT1gYCk9PlkoYm0se2V2ZW50X2xhYmVsOmV9KSxHbT0oZT1gYCk9PlkoeG0se2V2ZW50X2xhYmVsOmV9KSxLbT1lPT5ZKFNtLHtldmVudF9sYWJlbDplfSkscW09KGU9YGApPT5ZKENtLHtldmVudF9sYWJlbDplfSksSm09KGU9YGApPT5ZKHdtLHtldmVudF9sYWJlbDplfSksWW09KGU9YGApPT5ZKFRtLHtldmVudF9sYWJlbDplfSksWG09KCk9PlkocG0pLFptPSgpPT5ZKG1tKSxRbT1lPT5ZKEFtLHtldmVudF9sYWJlbDplfSksJG09ZT0+WShrbSx7ZXZlbnRfbGFiZWw6ZX0pLGVoPSgpPT5ZKE1tKSx0aD0oKT0+WShObSksbmg9KGUsdCk9PntsZXQgbj17ZXZlbnRfbGFiZWw6dHx8dnNbZV18fGBgLHZhbHVlOmV9O1kodD9GbTpQbSxuKX0scmg9ZT0+WShqbSx7ZXZlbnRfbGFiZWw6ZX0pLGloPWU9PlkoSW0se2V2ZW50X2xhYmVsOmV9KSxhaD0oZT1gYCk9PlkoRW0se2V2ZW50X2xhYmVsOmV9KSxvaD0oZT1gYCk9PlkoRG0se2V2ZW50X2xhYmVsOmV9KSxzaD0oZT1gYCk9PlkoT20se2V2ZW50X2xhYmVsOmV9KSxjaD0oKT0+WShMbSksbGg9ITEsdWg9e30sZGg9KCk9PntsaD0hMX0sZmg9KCk9Pnt1aD13cChBKFJwKSl9LHBoPShlLHQpPT5saD8hMTpDcChlKS5sZW5ndGg9PT0xJiZ0PT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0PyhsaD0hMCwhMCk6ITEsbWg9KGUsdCk9PntsZXQgbj1lLnRyaWdnZXI/LmlkfHxgYDtyZXR1cm4gdC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0JiZlLnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlRyaWdnZXImJiF1aFtuXT8udmlzaXRvclJlc3BvbmRlZD8odWhbbl0udmlzaXRvclJlc3BvbmRlZD0hMCwhMCk6ITF9LGhoPShlLHQpPT57bGV0IG49ZS50cmlnZ2VyPy5pZHx8YGA7cmV0dXJuIHQuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQ29udGFjdCYmISh0LmNvbnRlbnQucXVpY2tSZXBsaWVzfHx0LmNvbnRlbnQucXVpY2tSZXBseSkmJmUuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90JiYhdWhbbl0/LnZpc2l0b3JSZXNwb25kZWQmJm4/KHVoW25dLnZpc2l0b3JSZXNwb25kZWQ9ITAsITApOiExfSxnaD0oZSx0KT0+e2xldCBuPWUudHJpZ2dlcj8uaWR8fGBgO3JldHVybiB0LnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLkNvbnRhY3QmJmUudHJpZ2dlcj8uZ3JvdXBUeXBlPT09Ry5Hcm91cFR5cGUuY2hhdGJvdCYmIXVoW25dPy5yZWFjdGVkPyh1aFtuXS5yZWFjdGVkPSEwLCEwKTohMX0sX2g9ZT0+e2xldCB0PWUudHJpZ2dlcj8uaWR8fGBgO3JldHVybiBlLnRyaWdnZXI/Lmdyb3VwVHlwZT09PUcuR3JvdXBUeXBlLmFpJiYhdWhbdF0/LnJlYWN0ZWQ/KHVoW3RdLnJlYWN0ZWQ9ITAsITApOiExfSx2aD0oZSx0LG49ITEpPT57aWYoZS5sZW5ndGg+MCYmIW4pe2xldCB0PWUuc2xpY2UoLTIpLmZpbHRlcihlPT5lLnRyaWdnZXIpO3JldHVybiB0P3RbdC5sZW5ndGgtMV0udHJpZ2dlcj8ubmFtZTpgYH1lbHNlIHJldHVybiB0LnRyaWdnZXI/dC50cmlnZ2VyLm5hbWU6YGB9LHloPWU9PntsZXQgdD1BKFJwKTt4aCh0LGUpLFNoKHQsZSkscGgodCxlLnN1YlR5cGUpJiZYbSgpfSxiaD1lPT57bGV0IHQ9ZSxuPUEoUnApLmZpbHRlcihlPT5lLnRyaWdnZXIpO24mJm4ubGVuZ3RoPjAmJih0PW5bbi5sZW5ndGgtMV0udHJpZ2dlcj8ubmFtZT8/ZSkscmgodCl9LHhoPShlLHQpPT57bGV0IG49dC50cmlnZ2VyPy5pZHx8YGA7dC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Cb3QmJiF1aFtuXT8uc2VudCYmKHQudHJpZ2dlcj8uZ3JvdXBUeXBlPT09Ry5Hcm91cFR5cGUuY2hhdGJvdCYmKEdtKHZoKGUsdCwhMCkpLHVoW25dPXtzZW50OiEwfSksdC50cmlnZ2VyPy5ncm91cFR5cGU9PT1HLkdyb3VwVHlwZS5tZXNzYWdlJiYoSG0odmgoZSx0LCEwKSksdWhbbl09e3NlbnQ6ITB9KSx0LnRyaWdnZXI/Lmdyb3VwVHlwZT09PUcuR3JvdXBUeXBlLmFpJiYoYWgodmgoZSx0LCEwKSksdWhbbl09e3NlbnQ6ITB9KSk7bGV0IHI9ZS5sZW5ndGg+MT9lW2UubGVuZ3RoLTJdOnZvaWQgMDtyJiYoaGgocix0KT8oci50cmlnZ2VyPy5ncm91cFR5cGU9PT1HLkdyb3VwVHlwZS5jaGF0Ym90JiZZbSh2aChlLHQpKSxyLnRyaWdnZXI/Lmdyb3VwVHlwZT09PUcuR3JvdXBUeXBlLm1lc3NhZ2UmJldtKHZoKGUsdCkpLHIudHJpZ2dlcj8uZ3JvdXBUeXBlPT09Ry5Hcm91cFR5cGUuYWkmJnNoKHZoKGUsdCkpKTpnaChyLHQpP3FtKHZoKGUsdCkpOl9oKHQpJiZvaCh2aChlLHQpKSl9LFNoPShlLHQpPT57dC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5UcmlnZ2VyJiYoem0odD8udHJpZ2dlcj8ubmFtZSksdWhbdC50cmlnZ2VyPy5pZHx8YGBdPXtzZW50OiEwfSk7bGV0IG49ZS5sZW5ndGg+MT9lW2UubGVuZ3RoLTJdOnZvaWQgMDtuJiZtaChuLHQpJiZWbSh2aChlLHQpKX0sQ2g9KCk9PntsZXQgZT1BKFBwKS5maWx0ZXIoZT0+ZS50cmlnZ2VyKSx0PWVbZS5sZW5ndGgtMV07dCYmdC50cmlnZ2VyJiYodC5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Cb3QmJnQuY29udGVudC5xdWlja1JlcGxpZXM/S20odC50cmlnZ2VyLm5hbWUpOnQuc3ViVHlwZT09PUcuTWVzc2FnZVN1YlR5cGUuQm90P1VtKHQudHJpZ2dlci5uYW1lKTp0LnN1YlR5cGU9PT1HLk1lc3NhZ2VTdWJUeXBlLlRyaWdnZXImJkJtKHQudHJpZ2dlci5uYW1lKSl9LHdoPWU9PntlPT09Sy5BY2NvdW50U3RhdHVzLk9mZmxpbmUmJnRoKCl9O3oub24oYG1lc3NhZ2VSZWNlaXZlZGAseWgpLHoub24oYGFnZW50Sm9pbmVkYCxlPT57JG0oZS5mdWxsbmFtZSl9KSx6Lm9uKGBjaGF0UmF0ZWRgLGU9PntuaChlLnZhbHVlLGUudGV4dCl9KSx6Lm9uKGBjaGF0Q2xvc2VkYCwoKT0+e2RoKCl9KSx6Lm9uKGBjaGF0VmlzaXRvckNsb3NlZGAsKCk9PntkaCgpfSksei5vbihgY29udGFjdEFjcXVpcmVkYCwoe2FjcXVpcmVkQnk6ZX0pPT57YmgoZSl9KSxYbC5wdXNoKGZoKTt2YXIgVGg9e0Fycm93RG93bjpgQXJyb3dEb3duYCxBcnJvd1VwOmBBcnJvd1VwYCxFbnRlcjpgRW50ZXJgLEVzY2FwZTpgRXNjYXBlYCxUYWI6YFRhYmB9LEVoPTJlMyxEaD0yZTMsT2g9ZT0+ZS5maWx0ZXIoZT0+IWUuaXNIaWRkZW4pLnJlZHVjZSgoZSx0KT0+KGVbdC5uYW1lXT10LnZhbHVlLGUpLHt9KSxraD1lPT5lLnJlZHVjZSgoZSx0KT0+KGVbdC5uYW1lXT10LnZhbGlkYXRvcnMsZSkse30pLEFoPShlLHQsbik9PntlLnVwZGF0ZShlPT4oey4uLmUsW3RdOm59KSl9LGpoPShlLHQpPT57bGV0IG49e307Zm9yKGxldCByIGluIGUpbltyXT10O3JldHVybiBufSxNaD0oKT0+TWF0aC5yYW5kb20oKS50b1N0cmluZygzNiksTmg9ZT0+e2lmKCFlKXJldHVybiExO2xldCB0PWUuc3BsaXQoYEBgKTtpZih0Lmxlbmd0aCE9PTIpcmV0dXJuITE7bGV0IG49dFswXSxyPXRbMV07cmV0dXJuIG4ubGVuZ3RoPjY0fHxyLmxlbmd0aD4yNTV8fHIuc3BsaXQoYC5gKS5zb21lKGU9PmUubGVuZ3RoPjYzKT8hMTp5Zi50ZXN0KGUpfSxQaD1udWxsLEZoPWU9PntsZXQgdD1lLmluaXRpYWxWYWx1ZXN8fHt9LHt2YWxpZGF0b3JzOm4sb25DaGFuZ2U6cixvblN1Ym1pdDppfT1lLGE9KCk9Pih7Li4udH0pLG89amgodCxQaCkscz1PKGEoKSksYz1PKG8pLGw9TyhqaCh0LCExKSksdT1PKCExKSxkPWsoYyxlPT5PYmplY3QudmFsdWVzKGUpLmV2ZXJ5KGU9PmU9PT1QaCkpLGY9KCk9PntPYmplY3QuZW50cmllcyhBKHMpKS5mb3JFYWNoKChbZSx0XSk9PntlZShlLHQpfSl9LHA9ZT0+e2xldCB0PWUudGFyZ2V0O3QmJl8odC5uYW1lfHx0LmlkLHQudmFsdWUpfSxtPWFzeW5jIGU9PntpZihlJiZlLnByZXZlbnREZWZhdWx0JiZlLnByZXZlbnREZWZhdWx0KCksdS5zZXQoITApLGYoKSwhQShkKSl7dS5zZXQoITEpO3JldHVybn1jLnNldChvKSxhd2FpdCBpKEEocykpLHUuc2V0KCExKX0saD0oZSx7c2hvdWxkVmFsaWRhdGU6dD0hMX09e30pPT57cy51cGRhdGUodD0+KHsuLi50LC4uLmV9KSksdCYmZigpfSxnPShlLHQpPT57XyhlLHQpfSxfPShlLHQpPT57dihlLHQpLGVlKGUsdCksciYmcihlLHQpfSx2PShlLHQpPT57QWgocyxlLHQpfSx5PShlLHQpPT57QWgobCxlLHQpfSxlZT0oZSx0KT0+e3koZSx0KTtsZXQgcj1uW2VdO2lmKHIpZm9yKGxldCBuIG9mIHIpe2xldHt0eXBlOnIsaXNWYWxpZDppfT1uKHQpO2lmKEFoKGMsZSxpP1BoOnIpLCFpKXJldHVybn19O3JldHVybntmb3JtOnMsZXJyb3JzOmMsaXNWYWxpZDpkLGlzU3VibWl0dGluZzp1LGhhbmRsZUNoYW5nZTpwLGhhbmRsZVN1Ym1pdDptLHNldEZpZWxkVmFsdWU6ZyxzZXRWYWx1ZXM6aH19LEloPWZ1bmN0aW9uKGUpe3JldHVybiBlLlRleHQ9YHRleHRgLGUuQ2hlY2tib3g9YGNoZWNrYm94YCxlLlNlbGVjdD1gc2VsZWN0YCxlfSh7fSksTGg9KCk9PmU9PntsZXQgdD0hMDtyZXR1cm4gZT8/KHQ9ITEpLEx1KGUpJiYodD1lLnRyaW0oKS5sZW5ndGg+MCkse3R5cGU6YHJlcXVpcmVkYCxpc1ZhbGlkOnR9fSxSaD0oKT0+ZT0+KHt0eXBlOmBjaGVja2VkYCxpc1ZhbGlkOkx1KGUpP2U9PT1gdHJ1ZWA6ZT09PSEwfSksemg9KCk9PmU9Pih7dHlwZTpgZW1haWxgLGlzVmFsaWQ6TmgoU3RyaW5nKGUpKX0pLEJoPSgpPT5lPT4oe3R5cGU6YHBob25lYCxpc1ZhbGlkOi9eWytdKlsoXXswLDF9WzAtOV17MSw0fVspXXswLDF9Wy1zLi8wLTldKiQvLnRlc3QoU3RyaW5nKGUpKX0pLFZoPU8odm9pZCAwKSxIaD1lPT57bGV0e2VtYWlsQ29udHJvbDp0fT1WLmdldE9wdGlvbnMoKSxuPSEhZT8uZW1haWw7cmV0dXJuIHQmJiFufSxVaD1lPT57bGV0e25hbWVDb250cm9sOnR9PVYuZ2V0T3B0aW9ucygpLG49ISFlPy5uYW1lO3JldHVybiB0JiYhbn0sV2g9ZT0+e2xldHtudW1iZXJDb250cm9sOnR9PVYuZ2V0T3B0aW9ucygpLG49ISFlPy5waG9uZTtyZXR1cm4hIXQmJiFufSxHaD0oKT0+e2xldHtncm91cFNlbGVjdEVuYWJsZWQ6ZX09Vi5nZXRPcHRpb25zKCksdD1BKGFsKTtyZXR1cm4hIWUmJnQubGVuZ3RoPjB9LEtoPSgpPT57bGV0e3ByaXZhY3lOb3RpY2VFbmFibGVkOmUscHJpdmFjeU5vdGljZUNoZWNrUmVxdWlyZWQ6dH09Vi5nZXRPcHRpb25zKCksbj1jZygpO3JldHVybiEhZSYmdCYmIW59LHFoPWU9PntsZXR7cHJpdmFjeU5vdGljZUVuYWJsZWQ6dH09Vi5nZXRPcHRpb25zKCksbj0hIWU/LnZhcmlhYmxlcz8ucGVyc29uYWxEYXRhUHJvY2Vzc2luZ0NvbnNlbnQ7cmV0dXJuISF0JiYhbn0sSmg9KCk9Pih7dHlwZTpJaC5UZXh0LHN1YlR5cGU6YGVtYWlsYCxuYW1lOmBlbWFpbGAsbGFiZWw6YGF1dGhGb3JtLmxhYmVsLmVtYWlsYCxwbGFjZWhvbGRlcjpgYXV0aEZvcm0ueW91ckVtYWlsYCx2YWx1ZTpgYCx2YWxpZGF0b3JzOltMaCgpLHpoKCldLG1heExlbmd0aDoyNTV9KSxZaD0oKT0+KHt0eXBlOkloLlRleHQsc3ViVHlwZTpgdGV4dGAsbmFtZTpgbmFtZWAsbGFiZWw6YGF1dGhGb3JtLmxhYmVsLm5hbWVgLHBsYWNlaG9sZGVyOmBhdXRoRm9ybS55b3VyTmFtZWAsdmFsdWU6YGAsdmFsaWRhdG9yczpbTGgoKV0sbWF4TGVuZ3RoOjI1NX0pLFhoPSgpPT4oe3R5cGU6SWguVGV4dCxzdWJUeXBlOmB0ZWxgLG5hbWU6YHBob25lYCxsYWJlbDpgYXV0aEZvcm0ubGFiZWwucGhvbmVgLHBsYWNlaG9sZGVyOmBhdXRoRm9ybS55b3VyUGhvbmVgLHZhbHVlOmBgLHZhbGlkYXRvcnM6W0xoKCksQmgoKV0sbWF4TGVuZ3RoOjMyfSksWmg9ZT0+e2xldCB0PUEoYWwpO3JldHVybnt0eXBlOkloLlNlbGVjdCxuYW1lOmBncm91cGAsbGFiZWw6YGF1dGhGb3JtLmxhYmVsLmdyb3VwYCxwbGFjZWhvbGRlcjpgYXV0aEZvcm0uZ3JvdXBgLHZhbHVlOmU/Lmdyb3VwPz9gYCx2YWxpZGF0b3JzOltMaCgpXSxvcHRpb25zOnQubWFwKGU9Pih7dGV4dDplLm5hbWUsdmFsdWU6ZS5rZXl9KSl9fSxRaD0oKT0+KHt0eXBlOkloLkNoZWNrYm94LG5hbWU6YHBlcnNvbmFsRGF0YVByb2Nlc3NpbmdDb25zZW50YCxsYWJlbDpgYXV0aEZvcm0uYWNjZXB0VGVybXNgLHZhbHVlOiExLHZhbGlkYXRvcnM6W1JoKCldfSksJGg9KCk9Pih7dHlwZTpJaC5DaGVja2JveCxuYW1lOmBwZXJzb25hbERhdGFQcm9jZXNzaW5nQ29uc2VudGAsbGFiZWw6YHRvcEJhci5nZHByVGl0bGVgLHZhbHVlOiExLHZhbGlkYXRvcnM6W10saXNIaWRkZW46ITB9KSxlZz1lPT4oe3Nob3dFbWFpbDpIaChlKSxzaG93TmFtZTpVaChlKSxzaG93UGhvbmU6V2goZSksc2hvd0dyb3VwczpHaCgpLHNob3dDb25zZW50OktoKCl9KSx0Zz1lPT4oe3Nob3dFbWFpbDohIWUuZW1haWxDb250cm9sLHNob3dOYW1lOiEhZS5uYW1lQ29udHJvbCxzaG93UGhvbmU6ISFlLm51bWJlckNvbnRyb2wsc2hvd0dyb3VwczohIWUuZ3JvdXBTZWxlY3RFbmFibGVkLHNob3dDb25zZW50OiEhZS5wcml2YWN5Tm90aWNlRW5hYmxlZCYmZS5wcml2YWN5Tm90aWNlQ2hlY2tSZXF1aXJlZH0pLG5nPWU9Pk9iamVjdC52YWx1ZXMoZWcoZSkpLnNvbWUoZT0+ZSkscmc9KGUsdCk9PntsZXQgbj1bXSx7c2hvd0VtYWlsOnIsc2hvd05hbWU6aSxzaG93UGhvbmU6YSxzaG93R3JvdXBzOm8sc2hvd0NvbnNlbnQ6c309dD90Zyh0KTplZyhlKTtyZXR1cm4gaSYmbi5wdXNoKFloKCkpLHImJm4ucHVzaChKaCgpKSxhJiZuLnB1c2goWGgoKSksbyYmbi5wdXNoKFpoKGUpKSxzP24ucHVzaChRaCgpKTpuLmxlbmd0aD4wJiYodD90Py5wcml2YWN5Tm90aWNlRW5hYmxlZDpxaChlKSkmJm4ucHVzaCgkaCgpKSxufSxpZz0oKT0+e2xldCBlPXpvKFUuQXV0aEZvcm0pO2lmKCFlKXJldHVybiBudWxsO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaHtyZXR1cm4gbnVsbH19LGFnPShlLHQpPT57bGV0IG49aWcoKSxyPXtbZV06dH0saT1uP3suLi5uLC4uLnJ9OnI7Qm8oe25hbWU6VS5BdXRoRm9ybSx2YWx1ZTpKU09OLnN0cmluZ2lmeShpKX0pfSxvZz0oKT0+e0xvKFUuQXV0aEZvcm0pfSxzZz0oKT0+ISFBKE11KT8udmFyaWFibGVzPy5hdXRoZW50aWNhdGVkLGNnPSgpPT5BKE11KT8uZ2RwckFwcHJvdmVkfHwhMSxsZz0oKT0+e2xldHtpc1ByZXZpZXdNb2RlOmV9PVYuZ2V0T3B0aW9ucygpO2lmKGV8fEEocGQpfHxzZygpfHwhbmcoQShNdSkpKXJldHVybiExO2xldHtyZXF1aXJlTG9naW46dH09Vi5nZXRPcHRpb25zKCksbj1BKCR1KT09PUsuQWNjb3VudFN0YXR1cy5PZmZsaW5lLHI9QShVdSkubGVuZ3RoPjA7cmV0dXJuISF0fHxufHwhbiYmIXJ9LHVnPWFzeW5jIGU9PntsZXR7cHJpdmFjeU5vdGljZUNoZWNrUmVxdWlyZWQ6dH09Vi5nZXRPcHRpb25zKCksbj1BKE11KSxyPW4/Lm5hbWU/P2UubmFtZSxpPW4/LmVtYWlsPz9lLmVtYWlsLGE9bj8ucGhvbmU/P2UucGhvbmUsbz1lLmdyb3VwPz9uPy5ncm91cCxzPWUucGVyc29uYWxEYXRhUHJvY2Vzc2luZ0NvbnNlbnQsYz17Li4uciYme25hbWU6cn0sLi4uaSYme2VtYWlsOml9LC4uLmEmJntwaG9uZTphfSwuLi5vJiZ7Z3JvdXA6b30sLi4ucyYmdCYme3BlcnNvbmFsRGF0YVByb2Nlc3NpbmdDb25zZW50OnN9fTthd2FpdCBxLmdldENsaWVudCgpLmF1dGhlbnRpY2F0ZShjKSxlaCgpLGF3YWl0IHVfKCksVmMoKX0sZGc9YGh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vQGVtb2ppLW1hcnQvZGF0YWAsZmc9UmVnRXhwKGA6KFthLXpBLVowLTlfLV0rKTpgLGBnYCkscGc9bnVsbCxtZz1udWxsLGhnPW51bGwsZ2c9TyhbXSksX2c9YXN5bmMoKT0+cGd8fGhnfHwoaGc9ZmV0Y2goZGcpLnRoZW4oZT0+ZS5qc29uKCkpLnRoZW4oZT0+KHBnPWUsZSkpLmNhdGNoKGU9Pnt0aHJvdyB2byhgRmFpbGVkIHRvIGxvYWQgZW1vamkgZGF0YWAsZSksaGc9bnVsbCxlfSksaGcpLHZnPWU9Pk9iamVjdC52YWx1ZXMoZS5lbW9qaXMpLm1hcChlPT4oe2lkOmUuaWQsbmFtZTplLm5hbWUsbmF0aXZlOmUuc2tpbnNbMF0/Lm5hdGl2ZT8/YGAsa2V5d29yZHM6ZS5rZXl3b3Jkcz8/W119KSkseWc9e3N1YnNjcmliZTpnZy5zdWJzY3JpYmUsYXN5bmMgbG9hZFJhd0RhdGEoKXtyZXR1cm4gX2coKX0sYXN5bmMgbG9hZERhdGEoKXtyZXR1cm4gbWd8fChtZz12Zyhhd2FpdCBfZygpKSxnZy5zZXQobWcpLG1nKX0sZ2V0QnlJZChlKXtsZXQgdD1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIG1nPy5maW5kKGU9PmUuaWQudG9Mb3dlckNhc2UoKT09PXQpfSxpc0xvYWRlZCgpe3JldHVybiBtZyE9PW51bGx9fSxiZz1lPT55Zy5pc0xvYWRlZCgpP2UucmVwbGFjZShmZywoZSx0KT0+e2xldCBuPXlnLmdldEJ5SWQodCk7cmV0dXJuIG4/bi5uYXRpdmU6ZX0pOmUseGc9MjAsU2c9eyI6KSI6YPCfmYJgLCI6LSkiOmDwn5mCYCwiOkQiOmDwn5iAYCwiOi1EIjpg8J+YgGAsIjspIjpg8J+YiWAsIjstKSI6YPCfmIlgLCI8MyI6YOKdpO+4j2AsIjooIjpg8J+YnmAsIjotKCI6YPCfmJ5gLCI6UCI6YPCfmJtgLCI6LVAiOmDwn5ibYCwiOi1vIjpg8J+YrmAsIjpPIjpg8J+YrmAsIjovIjpg8J+YlWAsIjotLyI6YPCfmJVgfSxDZz1lPT57bGV0IHQ9YCgke2U/YCR8YDpgYH0gKWA7cmV0dXJuIG5ldyBSZWdFeHAoT2JqZWN0LmtleXMoU2cpLm1hcChlPT5gJHtlLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXVxcXS9nLGBcXCQmYCl9JHt0fWApLmpvaW4oYHxgKSxgZ2lgKX0sd2c9KGUsdD0hMSk9PntsZXQgbj1DZyh0KTtyZXR1cm4gZS5yZXBsYWNlKG4sZT0+e2xldCB0PU9iamVjdC5rZXlzKFNnKS5maW5kKHQ9PmUudG9VcHBlckNhc2UoKS5pbmNsdWRlcyh0KSk7aWYoIXQpcmV0dXJuIGU7bGV0IG49ZS5lbmRzV2l0aChgIGApP2AgYDpgYDtyZXR1cm5gJHtTZ1t0XX0ke259YH0pfSxUZz0oZSx0LG49eGcpPT57aWYoIWV8fGUubGVuZ3RoPDIpcmV0dXJuW107bGV0IHI9ZS50b0xvd2VyQ2FzZSgpLGk9W10sYT1bXSxvPVtdLHM9W107Zm9yKGxldCBlIG9mIHQpe2xldCB0PWUuaWQudG9Mb3dlckNhc2UoKSxuPWUubmFtZS50b0xvd2VyQ2FzZSgpO2lmKHQuc3RhcnRzV2l0aChyKSl7aS5wdXNoKGUpO2NvbnRpbnVlfWlmKHQuaW5jbHVkZXMocikpe2EucHVzaChlKTtjb250aW51ZX1pZihuLmluY2x1ZGVzKHIpKXtvLnB1c2goZSk7Y29udGludWV9ZS5rZXl3b3Jkcy5zb21lKGU9PmUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhyKSkmJnMucHVzaChlKX1yZXR1cm5bLi4uaSwuLi5hLC4uLm8sLi4uc10uc2xpY2UoMCxuKX0sRWc9KGUsdCk9PntsZXQgbj1lLnNsaWNlKDAsdCkscj1uLmxhc3RJbmRleE9mKGA6YCk7aWYocj09PS0xKXJldHVybiBudWxsO2xldCBpPW4uc2xpY2UocisxKTtyZXR1cm4gUmVnRXhwKGBeW2EtekEtWjAtOV8tXSokYCkudGVzdChpKSYmaS5sZW5ndGg+PTI/aTpudWxsfSxEZz0oZSx0LG4pPT57bGV0IHI9ZS5zbGljZSgwLHQpLGk9ZS5zbGljZSh0KSxhPXIubGFzdEluZGV4T2YoYDpgKTtpZihhPT09LTEpcmV0dXJue25ld1RleHQ6ZSxuZXdDdXJzb3JQb3NpdGlvbjp0fTtsZXQgbz1lLnNsaWNlKDAsYSkscz1pLmxlbmd0aD09PTA/bitgIGA6bjtyZXR1cm57bmV3VGV4dDpvK3MraSxuZXdDdXJzb3JQb3NpdGlvbjphK3MubGVuZ3RofX0sT2c9KGUsdD0zMDApPT57bGV0IG47cmV0dXJuKC4uLnIpPT57Y2xlYXJUaW1lb3V0KG4pLG49c2V0VGltZW91dCgoKT0+ZSguLi5yKSx0KX19LGtnPTNlMyxBZz1bYHNtYXJ0c3VwcC5kZXZgLGBzbWFydHN1cHBjaGF0LmxvY2BdLGpnPWZ1bmN0aW9uKGUpe3JldHVybiBlLkRlZmF1bHQ9YGJsYWNrYmVycnkyLm1wM2AsZX0oe30pLE1nPWZ1bmN0aW9uKGUpe3JldHVybiBlLkNvbm5lY3Rpbmc9YGNvbm5lY3RpbmdgLGUuQ29ubmVjdGVkPWBjb25uZWN0ZWRgLGUuRGlzY29ubmVjdGVkPWBkaXNjb25uZWN0ZWRgLGV9KHt9KSxOZz1mdW5jdGlvbihlKXtyZXR1cm4gZS5JbWFnZT1gaW1hZ2VgLGUuVmlkZW89YHZpZGVvYCxlfSh7fSksUGc9TyghMSksRmc9TyghMSksSWc9TyghMSk7QigpLmFkZEV2ZW50TGlzdGVuZXIoYG9mZmxpbmVgLCgpPT5QZy5zZXQoITApKSxCKCkuYWRkRXZlbnRMaXN0ZW5lcihgb25saW5lYCwoKT0+UGcuc2V0KCExKSk7dmFyIExnPWsoW2RsLFBnLElnXSwoW2UsdCxuXSk9Pm4/TWcuQ29ubmVjdGVkOiFlfHx0P01nLkRpc2Nvbm5lY3RlZDpNZy5Db25uZWN0ZWQsTWcuQ29ubmVjdGluZyksUmcsemc9T2coZT0+e2UmJiFSZyYmKFJnPV9zKEEoVykoYGVycm9yLm5vSW50ZXJuZXRgKSwwKSksIWUmJlJnJiYoUmcoKSxSZz12b2lkIDApfSxrZyk7TGcuc3Vic2NyaWJlKGU9PntlPT09TWcuRGlzY29ubmVjdGVkJiYoRmcuc2V0KCEwKSx6ZyghMCkpLGU9PT1NZy5Db25uZWN0ZWQmJihGZy5zZXQoITEpLHpnKCExKSl9KTt2YXIgQmc9KGUsdCxuKT0+ZT09PU1nLkRpc2Nvbm5lY3RlZHx8IXR8fG4sVmc9KCk9PkJnKEEoTGcpLEEoSHApLEEoWHUpLmRpc2FibGVBdHRhY2htZW50cyksSGc9TyghMSksVWc9ZT0+e2lmKEEoSGcpKXtIKGBUaGVyZSBpcyBhbHJlYWR5IGZpbGUgdXBsb2FkIGluIHByb2dyZXNzYCk7cmV0dXJufWlmKGUubGVuZ3RoPT09MClyZXR1cm47bGV0IHQ9V2coZSk7dC5sZW5ndGg+MCYmWWwuYWRkKHQpfSxXZz1lPT5lLmxlbmd0aD41PyhncyhgJHtBKFcpKGBmaWxlVXBsb2FkLnRvb01hbnlGaWxlc2ApfSA1YCksW10pOmUuZmlsdGVyKGU9PkdnKGUpKSxHZz1lPT57bGV0e2FjY2VwdGVkRmlsZUV4dGVuc2lvbnM6dCxhY2NlcHRlZEZpbGVUeXBlczpuLG1heEZpbGVTaXplOnJ9PUEoYmwpO2lmKCFlKXJldHVybiExO2xldCBpPXQuaW5jbHVkZXMoQ2QoZS5uYW1lKSksYT1uLnNvbWUodD0+dD09PWUudHlwZSk7aWYoVmcoKSlyZXR1cm4gSChgRmlsZSB1cGxvYWQgaXMgZGlzYWJsZWRgKSwhMTtpZighQShIcCkpcmV0dXJuIGdzKEEoVykoYHdhcm5pbmdCYXIudXBsb2FkRmlsZU5vdEZpcnN0YCkpLCExO2lmKGUuc2l6ZT5yKXtsZXQgZT13ZChyKTtyZXR1cm4gZ3MoYCR7QShXKShgZmlsZVVwbG9hZC5maWxlVG9vQmlnYCl9ICR7ZS5zaXplfSAke2UudW5pdH1gKSwhMX1yZXR1cm4gaXx8YT8hMDooZ3MoQShXKShgZmlsZVVwbG9hZC5iYWRGaWxlVHlwZWApKSwhMSl9LEtnPSgpPT5ZbC5jb3VudCgpPT09MD9bXTooWWwuc2V0VXBsb2FkaW5nU3RhdHVzKCksRGQoQShZbCksZT0+WWwuc2V0RmlsZVVwbG9hZGVkKGUubmFtZSkpKSxxZz0xMCxKZz0xZTQsWWc9M2U0LFhnPTIwLFpnPWU9PntpZihlLmxlbmd0aD4wJiZlLmxlbmd0aCVxZz09PTApe2xldCB0PWUuc2xpY2UoLXFnKSxuPW5ldyBEYXRlKGVbZS5sZW5ndGgtMV0uY3JlYXRlZEF0KS5nZXRUaW1lKCk7aWYobmV3IERhdGUoKS5nZXRUaW1lKCktbj5ZZ3x8IXQuZXZlcnkoZT0+ZS5zdWJUeXBlPT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0KSlyZXR1cm4hMTtpZihuLW5ldyBEYXRlKHRbMF0uY3JlYXRlZEF0KS5nZXRUaW1lKCk8SmcpcmV0dXJuITB9cmV0dXJuITF9LFFnPWU9PntsZXQgdD1qZihlKTtyZXR1cm4gdD90Lmxlbmd0aD5YZzohMX0sJGc9TygpLGVfPU8oITEpLHRfPU8oKSxuXz0yMDAscl89TyghMSksaV89ayhbJGddLChbZV0pPT5lPT09dm9pZCAwP3pvKFUuTWVzc2FnZSk/P2BgOmUpLGFfPWsoW2lfXSwoW2VdKT0+ZS50cmltKCkubGVuZ3RoPT09MCksb189ZT0+eyRnLnNldChiZyh3ZyhlKSkpfSxzXz0oZSx0KT0+e2xldCBuPUEoaV8pPz9gYCxyPWAke24uc2xpY2UoMCx0KX0ke2V9JHtuLnNsaWNlKHQpfWA7JGcuc2V0KHIpfSxjXz0oKT0+e0EoZV8pfHwocS5nZXRDbGllbnQoKS5jaGF0VHlwaW5nKCEwKSxlXy5zZXQoITApKX0sbF89KCk9PntBKGVfKSYmKHEuZ2V0Q2xpZW50KCkuY2hhdFR5cGluZyghMSksZV8uc2V0KCExKSl9LHVfPWFzeW5jKGU9W10pPT57aWYoQShhXykmJmUubGVuZ3RoPT09MClyZXR1cm47bGV0IHQ9Ymcod2coQShpXyksITApKS50cmltKCk7YXdhaXQgSi5zZW5kTWVzc2FnZSh0LGUpLG9fKGBgKSxsXygpLHJfLnNldCghMCksZ2QoKX0sZF89T2coYXN5bmMoKT0+e2xldCBlPVlsLmNvdW50KCk+MDtpZihBKGFfKSYmIWUpcmV0dXJuO2lmKCFBKFgpJiZsZygpJiZVXygpLGZfKCkmJiFlKXtfcyhBKFcpKGB3YXJuaW5nQmFyLnNhbWVNZXNzYWdlVHdpY2VgKSk7cmV0dXJufWlmKFpnKEEoUnApKSl7X3MoQShXKShgd2FybmluZ0Jhci5zcGFtUHJvdGVjdGlvbmApKTtyZXR1cm59aWYoQShIZykpe2pvKEEoVykoYGNoYXQuZmlsZVVwbG9hZC5lcnJvci5zdGlsbFVwbG9hZGluZ2ApKTtyZXR1cm59aWYoQShVZikpe19zKEEoVykoYGNhcmQuc2VuZGluZ0luUHJvZ3Jlc3NgKSk7cmV0dXJufWlmKFFnKEEoaV8pKSl7X3MoQShXKShgY2FyZC5saW5rc0xpbWl0UmVhY2hlZGApKTtyZXR1cm59aWYobGcoKSl7QmMoSGMuQXV0aEZvcm0pO3JldHVybn1sZXQgdD1bXTtlJiYoSGcuc2V0KCEwKSx0PWF3YWl0IEtnKCksWWwuY2xlYXIoKSxIZy5zZXQoITEpKSxhd2FpdCB1Xyh0KX0sbl8pLGZfPSgpPT57bGV0IGU9QShHcCksdD1BKEtwKSxuPUEoaV8pLnRyaW0oKTtyZXR1cm4gZSYmbj09PWUuY29udGVudC50ZXh0fHx0JiZuPT09dH0scF89ZT0+e2xldCB0PSgpPT57X2QoKX07c28oKCk9PihlLmFkZEV2ZW50TGlzdGVuZXIoYHZpc2liaWxpdHljaGFuZ2VgLHQpLCgpPT5lLnJlbW92ZUV2ZW50TGlzdGVuZXIoYHZpc2liaWxpdHljaGFuZ2VgLHQpKSl9LG1fPWU9PntsZXQgdD0oKT0+e0EoWCkmJldfKCEwKX07c28oKCk9PihlLmFkZEV2ZW50TGlzdGVuZXIoYHBvcHN0YXRlYCx0KSwoKT0+ZS5yZW1vdmVFdmVudExpc3RlbmVyKGBwb3BzdGF0ZWAsdCkpKX0saF89KCk9PntsZXQgZT1CKCkuX3NtYXJ0c3VwcHx8e307ZS5hcHBWZXJzaW9uPWAwLjAuMWAsZS5jb21taXRIYXNoPWBlMDdjMjA4YTM4ZTZmNTA4NGM4ZWI0NjBiOTU4YTQyZjc3OGE1OTY1YCxlLmNvbW1pdEluZm89YGUwN2MyMDhhMzhlNmY1MDg0YzhlYjQ2MGI5NThhNDJmNzc4YTU5NjUgLSBNZXJnZSBwdWxsIHJlcXVlc3QgIzQ1NyBmcm9tIHNtYXJ0c3VwcC9kZXZlbG9wIC0gMjAyNi0wNy0yNyAwOToxOTozMiArMDIwMGAsQigpLl9zbWFydHN1cHA9ZX0sZ189KGU9amcuRGVmYXVsdCk9PntsZXR7d2lkZ2V0VjNVcmw6dH09Vi5nZXRPcHRpb25zKCksbj1uZXcgQXVkaW8oYCR7dH0vYXNzZXRzL3NvdW5kcy8ke2V9YCk7cmV0dXJuIG4uY3Jvc3NPcmlnaW49YGFub255bW91c2Asbi5sb2FkKCksbn0sX189ZT0+ZS5zdWJUeXBlIT09Ry5NZXNzYWdlU3ViVHlwZS5Db250YWN0JiYhW0cuTWVzc2FnZUNvbnRlbnRUeXBlLlJhdGVGb3JtLEcuTWVzc2FnZUNvbnRlbnRUeXBlLkFnZW50Sm9pbixHLk1lc3NhZ2VDb250ZW50VHlwZS5BZ2VudExlYXZlLEcuTWVzc2FnZUNvbnRlbnRUeXBlLkFnZW50QXNzaWduLEcuTWVzc2FnZUNvbnRlbnRUeXBlLkFnZW50VW5hc3NpZ25dLmluY2x1ZGVzKGUuY29udGVudC50eXBlKSx2Xz1lPT57cS5pc0luaXRpYWxpemVkKCkmJnEuZ2V0Q2xpZW50KCkubm90aWZ5KGUpfSx5Xz0oKT0+e1YuZ2V0T3B0aW9ucygpLmlzUHJldmlld01vZGV8fHZfKEsuV2Vic29ja2V0VmlzaXRvckNsaWVudC5FdmVudE5hbWUuV2lkZ2V0T3Blbil9LGJfPSgpPT52XyhLLldlYnNvY2tldFZpc2l0b3JDbGllbnQuRXZlbnROYW1lLldpZGdldFNob3cpLHhfPSgpPT5kb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT1gdmlzaWJsZWAsU189KCk9PntpZihBKHNzKSl7VF8uc2V0KCEwKTtsZXQgZT1CKCk7ZS5oaXN0b3J5LnB1c2hTdGF0ZShudWxsLGBgLGUubG9jYXRpb24uaHJlZil9fSxDXz1PKCExKSx3Xz1PKCExKSxUXz1PKCExKSxFXz1lPT4hIUFnLmZpbmQodD0+ZS5pbmNsdWRlcyh0KSksRF89TyghMCk7Vi5hd2FpdE9wdGlvbnMoKS50aGVuKGU9PntsZXQgdD16byhVLlNvdW5kc0VuYWJsZWQpO3Q/RF8uc2V0KHQ9PT1gdHJ1ZWApOnR5cGVvZiBlLmVuYWJsZVNvdW5kcz09YGJvb2xlYW5gJiZEXy5zZXQoZS5lbmFibGVTb3VuZHMpLHdfLnNldChFXyhlLmJvb3RzdHJhcFVybCkpfSk7dmFyIE9fPWU9PntEXy5zZXQoZSksQm8oe25hbWU6VS5Tb3VuZHNFbmFibGVkLHZhbHVlOmUudG9TdHJpbmcoKX0pLGUmJmJwKCl9LGtfPU8oeF8oKSksQV89T2coKCk9PmtfLnNldCh4XygpKSw1MDApO0IoKS5hZGRFdmVudExpc3RlbmVyKGB2aXNpYmlsaXR5Y2hhbmdlYCwoKT0+e0FfKCl9KTt2YXIgal89TygwKSxNXz0oKT0+al8udXBkYXRlKGU9PmUrMSksTl89TyghMCksUF89KGUsdCk9Pih2byhgd2lkZ2V0IHZpc2libGU6ICR7U3RyaW5nKHQpfSA9PiByZWFzb246ICR7ZX1gKSx0JiZ0IT09QShSXykmJmJfKCksdCksRl89TygpLElfPSgpPT5GXy5zZXQoITApLExfPSgpPT5GXy5zZXQoITEpLFJfPWsoW011LHNzLEZfLGVkLG9kLGsoWyR1LFJwLGFfLG9kXSwoW2UsdCxuLHJdKT0+e2xldHtoaWRlT2ZmbGluZUNoYXQ6aSxpc1ByZXZpZXdNb2RlOmF9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBlPT09Sy5BY2NvdW50U3RhdHVzLk9mZmxpbmUmJiEhaSYmU3AodCkubGVuZ3RoPT09MCYmbiYmIXImJiFhfSldLChbZSx0LG4scixpLGFdKT0+e2xldHtoaWRlTW9iaWxlV2lkZ2V0Om8saGlkZVdpZGdldDpzfT1WLmdldE9wdGlvbnMoKTtyZXR1cm4gZT8uYmFubmVkQXQ/UF8oYHZpc2l0b3IgaXMgYmFubmVkYCwhMSk6dCYmbz9QXyhgb3B0aW9uICdoaWRlTW9iaWxlV2lkZ2V0JyBpcyB0cnVlYCwhMSk6dHlwZW9mIG49PWBib29sZWFuYD9QXyhgc2V0IGJ5IEFQSSBjb21tYW5kYCxuKTpyJiYhaT9QXyhgY2hhdCBzdGF0dXMgaXMgbm90IHBlbmRpbmdgLCEwKTphP1BfKGBvcHRpb24gJ2hpZGVPZmZsaW5lQ2hhdCcgaXMgdHJ1ZWAsITEpOlBfKGBvcHRpb24gJ2hpZGVXaWRnZXQnIGlzICR7U3RyaW5nKHMpfWAsIXMpfSksel89ayhbc3NdLChbZV0pPT57bGV0e29wZW5PblRyaWdnZXI6dH09Vi5nZXRPcHRpb25zKCk7cmV0dXJuIHQmJiFlfSksQl89W10sVl89ZT0+KEJfLnB1c2goZSksKCk9PntsZXQgdD1CXy5pbmRleE9mKGUpO3QhPT0tMSYmQl8uc3BsaWNlKHQsMSl9KSxIXz0oKT0+Ql8ubGVuZ3RoPT09MD8hMTooQl8ucG9wKCkoKSwhMCksWD1ycyhVLklzTWVzc2VuZ2VyRnJhbWVPcGVuZWQsITEsZT0+IUEoc3MpJiZlPT09YHRydWVgKSxVXz0oZT0hMSk9PntsZXR7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOnR9PVYuZ2V0T3B0aW9ucygpO3Q/LmRpc2FibGVPcGVuTWVzc2VuZ2VyJiYhZXx8KGNoKCksU18oKSxYLnNldCghMCksZXYoKSxDaCgpLHlfKCkpfSxXXz1lPT57aWYoQShzcykmJkEoVF8pJiYhZSlyZXR1cm4gVF8uc2V0KCExKSxCKCkuaGlzdG9yeS5iYWNrKCk7ei5lbWl0KGBtZXNzZW5nZXJDbG9zZWAsITApLFguc2V0KCExKX0sR189ZT0+e2lmKCFlKXJldHVybjtsZXR7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOnR9PVYuZ2V0T3B0aW9ucygpLG49ZT0+e2lmKGUua2V5PT09VGguRXNjYXBlKXtpZihIXygpfHx0Py5kaXNhYmxlQ2xvc2VCdXR0b24pcmV0dXJuO1dfKCl9fSxyPWUub3duZXJEb2N1bWVudDtyZXR1cm4gci5hZGRFdmVudExpc3RlbmVyKGBrZXlkb3duYCxuLCEwKSx7ZGVzdHJveSgpe3IucmVtb3ZlRXZlbnRMaXN0ZW5lcihga2V5ZG93bmAsbiwhMCl9fX0sS189ayhbQ18sUl8sWF0sKFtlLHQsbl0pPT5lJiZ0JiZuKTtmdW5jdGlvbiBxXygpe2xldCBlPU8oITEpLHtzdWJzY3JpYmU6dH09ZSxuPW51bGw7cmV0dXJue3N1YnNjcmliZTp0LGhhbmRsZURyYWdPdmVyOih0LHI9ITApPT57ciYmdC5wcmV2ZW50RGVmYXVsdCgpLEEoZSl8fGUuc2V0KCEwKSxuJiZjbGVhclRpbWVvdXQobiksbj13aW5kb3cuc2V0VGltZW91dCgoKT0+e2Uuc2V0KCExKX0sMjAwKX0saGFuZGxlRHJvcDp0PT57dC5wcmV2ZW50RGVmYXVsdCgpLG4mJmNsZWFyVGltZW91dChuKSxlLnNldCghMSk7bGV0IHI9dC5kYXRhVHJhbnNmZXI/LmZpbGVzP1suLi50LmRhdGFUcmFuc2Zlci5maWxlc106W107cmV0dXJuIHIubGVuZ3RoPT09MCYmX3MoYERyb3BwZWQgaXRlbShzKSBhcmUgbm90IHByb2Nlc3NhYmxlIGZpbGVzYCkse2Ryb3BwZWRGaWxlczpyfX19fXZhciBKXz1xXygpLFlfPWsoW0NfLFJfLFhdLChbZSx0LG5dKT0+ZSYmdCYmIW4pLFhfPU8oITEpLFpfPU8oITEpLFFfPSgpPT57WF8uc2V0KCEwKSxaXy5zZXQoITEpfSwkXz0oKT0+e1pfLnNldCghMCksWF8uc2V0KCExKX0sZXY9KGU9ITEpPT57Wl8uc2V0KCExKSxlJiZCbyh7bmFtZTpVLlBvcHVwQ2xvc2VkQXQsdmFsdWU6bmV3IERhdGUoKS50b0lTT1N0cmluZygpfSl9LHR2PWsoW3NzXSwoW2VdKT0+e2xldHttb2JpbGVQb3B1cHNFbmFibGVkOnR9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBlPyEhdDohMH0pLG52PWsoW05wXSwoW2VdKT0+e2xldCB0PXpvKFUuUG9wdXBDbG9zZWRBdCk/P251bGw7cmV0dXJuIXR8fCFlPyEwOm5ldyBEYXRlKGUuY3JlYXRlZEF0KS5nZXRUaW1lKCk+bmV3IERhdGUodCkuZ2V0VGltZSgpfSkscnY9ayhbQ18sUl8sWF8sWCx0dl0sKFtlLHQsbixyLGldKT0+ZSYmdCYmbiYmIXImJmkpLGl2PWsoW0NfLFJfLFpfLFgsTnAsbnYsdHYsV2ZdLChbZSx0LG4scixpLGEsbyxzXSk9PmUmJnQmJm4mJmkmJmEmJiFyJiZvJiYhcyksYXY9e3doaXRlOmAjZmZmZmZmYCxzbGF0ZTEwMDpgI2YxZjVmOWAsc2xhdGUyMDA6YCNlMmU4ZjBgLHNsYXRlMzAwOmAjY2JkNWUxYCxzbGF0ZTkwMDpgIzBmMTcyYWAsYmx1ZTcwMDpgIzFkNGVkOGAsc21hcnRzdXBwQmx1ZTpgIzEyMzNkZmB9O2Z1bmN0aW9uIFooZSx0KXtzdihlKSYmKGU9YDEwMCVgKTtsZXQgbj1jdihlKTtyZXR1cm4gZT10PT09MzYwP2U6TWF0aC5taW4odCxNYXRoLm1heCgwLHBhcnNlRmxvYXQoZSkpKSxuJiYoZT1wYXJzZUludChTdHJpbmcoZSp0KSwxMCkvMTAwKSxNYXRoLmFicyhlLXQpPDFlLTY/MTooZT10PT09MzYwPyhlPDA/ZSV0K3Q6ZSV0KS9wYXJzZUZsb2F0KFN0cmluZyh0KSk6ZSV0L3BhcnNlRmxvYXQoU3RyaW5nKHQpKSxlKX1mdW5jdGlvbiBvdihlKXtyZXR1cm4gTWF0aC5taW4oMSxNYXRoLm1heCgwLGUpKX1mdW5jdGlvbiBzdihlKXtyZXR1cm4gdHlwZW9mIGU9PWBzdHJpbmdgJiZlLmluZGV4T2YoYC5gKSE9PS0xJiZwYXJzZUZsb2F0KGUpPT09MX1mdW5jdGlvbiBjdihlKXtyZXR1cm4gdHlwZW9mIGU9PWBzdHJpbmdgJiZlLmluZGV4T2YoYCVgKSE9PS0xfWZ1bmN0aW9uIGx2KGUpe3JldHVybiBlPXBhcnNlRmxvYXQoZSksKGlzTmFOKGUpfHxlPDB8fGU+MSkmJihlPTEpLGV9ZnVuY3Rpb24gdXYoZSl7cmV0dXJuIE51bWJlcihlKTw9MT9gJHtOdW1iZXIoZSkqMTAwfSVgOmV9ZnVuY3Rpb24gZHYoZSl7cmV0dXJuIGUubGVuZ3RoPT09MT9gMGArZTpTdHJpbmcoZSl9ZnVuY3Rpb24gZnYoZSx0LG4pe3JldHVybntyOlooZSwyNTUpKjI1NSxnOloodCwyNTUpKjI1NSxiOloobiwyNTUpKjI1NX19ZnVuY3Rpb24gcHYoZSx0LG4pe2U9WihlLDI1NSksdD1aKHQsMjU1KSxuPVoobiwyNTUpO2xldCByPU1hdGgubWF4KGUsdCxuKSxpPU1hdGgubWluKGUsdCxuKSxhPTAsbz0wLHM9KHIraSkvMjtpZihyPT09aSlvPTAsYT0wO2Vsc2V7bGV0IGM9ci1pO3N3aXRjaChvPXM+LjU/Yy8oMi1yLWkpOmMvKHIraSkscil7Y2FzZSBlOmE9KHQtbikvYysodDxuPzY6MCk7YnJlYWs7Y2FzZSB0OmE9KG4tZSkvYysyO2JyZWFrO2Nhc2UgbjphPShlLXQpL2MrNDticmVhaztkZWZhdWx0OmJyZWFrfWEvPTZ9cmV0dXJue2g6YSxzOm8sbDpzfX1mdW5jdGlvbiBtdihlLHQsbil7cmV0dXJuIG48MCYmKG4rPTEpLG4+MSYmLS1uLG48MS82P2UrKHQtZSkqKDYqbik6bjwxLzI/dDpuPDIvMz9lKyh0LWUpKigyLzMtbikqNjplfWZ1bmN0aW9uIGh2KGUsdCxuKXtsZXQgcixpLGE7aWYoZT1aKGUsMzYwKSx0PVoodCwxMDApLG49WihuLDEwMCksdD09PTApaT1uLGE9bixyPW47ZWxzZXtsZXQgbz1uPC41P24qKDErdCk6bit0LW4qdCxzPTIqbi1vO3I9bXYocyxvLGUrMS8zKSxpPW12KHMsbyxlKSxhPW12KHMsbyxlLTEvMyl9cmV0dXJue3I6cioyNTUsZzppKjI1NSxiOmEqMjU1fX1mdW5jdGlvbiBndihlLHQsbil7ZT1aKGUsMjU1KSx0PVoodCwyNTUpLG49WihuLDI1NSk7bGV0IHI9TWF0aC5tYXgoZSx0LG4pLGk9TWF0aC5taW4oZSx0LG4pLGE9MCxvPXIscz1yLWksYz1yPT09MD8wOnMvcjtpZihyPT09aSlhPTA7ZWxzZXtzd2l0Y2gocil7Y2FzZSBlOmE9KHQtbikvcysodDxuPzY6MCk7YnJlYWs7Y2FzZSB0OmE9KG4tZSkvcysyO2JyZWFrO2Nhc2UgbjphPShlLXQpL3MrNDticmVhaztkZWZhdWx0OmJyZWFrfWEvPTZ9cmV0dXJue2g6YSxzOmMsdjpvfX1mdW5jdGlvbiBfdihlLHQsbil7ZT1aKGUsMzYwKSo2LHQ9Wih0LDEwMCksbj1aKG4sMTAwKTtsZXQgcj1NYXRoLmZsb29yKGUpLGk9ZS1yLGE9biooMS10KSxvPW4qKDEtaSp0KSxzPW4qKDEtKDEtaSkqdCksYz1yJTYsbD1bbixvLGEsYSxzLG5dW2NdLHU9W3MsbixuLG8sYSxhXVtjXSxkPVthLGEscyxuLG4sb11bY107cmV0dXJue3I6bCoyNTUsZzp1KjI1NSxiOmQqMjU1fX1mdW5jdGlvbiB2dihlLHQsbixyKXtsZXQgaT1bZHYoTWF0aC5yb3VuZChlKS50b1N0cmluZygxNikpLGR2KE1hdGgucm91bmQodCkudG9TdHJpbmcoMTYpKSxkdihNYXRoLnJvdW5kKG4pLnRvU3RyaW5nKDE2KSldO3JldHVybiByJiZpWzBdLnN0YXJ0c1dpdGgoaVswXS5jaGFyQXQoMSkpJiZpWzFdLnN0YXJ0c1dpdGgoaVsxXS5jaGFyQXQoMSkpJiZpWzJdLnN0YXJ0c1dpdGgoaVsyXS5jaGFyQXQoMSkpP2lbMF0uY2hhckF0KDApK2lbMV0uY2hhckF0KDApK2lbMl0uY2hhckF0KDApOmkuam9pbihgYCl9ZnVuY3Rpb24geXYoZSx0LG4scixpKXtsZXQgYT1bZHYoTWF0aC5yb3VuZChlKS50b1N0cmluZygxNikpLGR2KE1hdGgucm91bmQodCkudG9TdHJpbmcoMTYpKSxkdihNYXRoLnJvdW5kKG4pLnRvU3RyaW5nKDE2KSksZHYoU3YocikpXTtyZXR1cm4gaSYmYVswXS5zdGFydHNXaXRoKGFbMF0uY2hhckF0KDEpKSYmYVsxXS5zdGFydHNXaXRoKGFbMV0uY2hhckF0KDEpKSYmYVsyXS5zdGFydHNXaXRoKGFbMl0uY2hhckF0KDEpKSYmYVszXS5zdGFydHNXaXRoKGFbM10uY2hhckF0KDEpKT9hWzBdLmNoYXJBdCgwKSthWzFdLmNoYXJBdCgwKSthWzJdLmNoYXJBdCgwKSthWzNdLmNoYXJBdCgwKTphLmpvaW4oYGApfWZ1bmN0aW9uIGJ2KGUsdCxuLHIpe2xldCBpPWUvMTAwLGE9dC8xMDAsbz1uLzEwMCxzPXIvMTAwO3JldHVybntyOjI1NSooMS1pKSooMS1zKSxnOjI1NSooMS1hKSooMS1zKSxiOjI1NSooMS1vKSooMS1zKX19ZnVuY3Rpb24geHYoZSx0LG4pe2xldCByPTEtZS8yNTUsaT0xLXQvMjU1LGE9MS1uLzI1NSxvPU1hdGgubWluKHIsaSxhKTtyZXR1cm4gbz09PTE/KHI9MCxpPTAsYT0wKToocj0oci1vKS8oMS1vKSoxMDAsaT0oaS1vKS8oMS1vKSoxMDAsYT0oYS1vKS8oMS1vKSoxMDApLG8qPTEwMCx7YzpNYXRoLnJvdW5kKHIpLG06TWF0aC5yb3VuZChpKSx5Ok1hdGgucm91bmQoYSksazpNYXRoLnJvdW5kKG8pfX1mdW5jdGlvbiBTdihlKXtyZXR1cm4gTWF0aC5yb3VuZChwYXJzZUZsb2F0KGUpKjI1NSkudG9TdHJpbmcoMTYpfWZ1bmN0aW9uIEN2KGUpe3JldHVybiB3dihlKS8yNTV9ZnVuY3Rpb24gd3YoZSl7cmV0dXJuIHBhcnNlSW50KGUsMTYpfWZ1bmN0aW9uIFR2KGUpe3JldHVybntyOmU+PjE2LGc6KGUmNjUyODApPj44LGI6ZSYyNTV9fXZhciBFdj17YWxpY2VibHVlOmAjZjBmOGZmYCxhbnRpcXVld2hpdGU6YCNmYWViZDdgLGFxdWE6YCMwMGZmZmZgLGFxdWFtYXJpbmU6YCM3ZmZmZDRgLGF6dXJlOmAjZjBmZmZmYCxiZWlnZTpgI2Y1ZjVkY2AsYmlzcXVlOmAjZmZlNGM0YCxibGFjazpgIzAwMDAwMGAsYmxhbmNoZWRhbG1vbmQ6YCNmZmViY2RgLGJsdWU6YCMwMDAwZmZgLGJsdWV2aW9sZXQ6YCM4YTJiZTJgLGJyb3duOmAjYTUyYTJhYCxidXJseXdvb2Q6YCNkZWI4ODdgLGNhZGV0Ymx1ZTpgIzVmOWVhMGAsY2hhcnRyZXVzZTpgIzdmZmYwMGAsY2hvY29sYXRlOmAjZDI2OTFlYCxjb3JhbDpgI2ZmN2Y1MGAsY29ybmZsb3dlcmJsdWU6YCM2NDk1ZWRgLGNvcm5zaWxrOmAjZmZmOGRjYCxjcmltc29uOmAjZGMxNDNjYCxjeWFuOmAjMDBmZmZmYCxkYXJrYmx1ZTpgIzAwMDA4YmAsZGFya2N5YW46YCMwMDhiOGJgLGRhcmtnb2xkZW5yb2Q6YCNiODg2MGJgLGRhcmtncmF5OmAjYTlhOWE5YCxkYXJrZ3JlZW46YCMwMDY0MDBgLGRhcmtncmV5OmAjYTlhOWE5YCxkYXJra2hha2k6YCNiZGI3NmJgLGRhcmttYWdlbnRhOmAjOGIwMDhiYCxkYXJrb2xpdmVncmVlbjpgIzU1NmIyZmAsZGFya29yYW5nZTpgI2ZmOGMwMGAsZGFya29yY2hpZDpgIzk5MzJjY2AsZGFya3JlZDpgIzhiMDAwMGAsZGFya3NhbG1vbjpgI2U5OTY3YWAsZGFya3NlYWdyZWVuOmAjOGZiYzhmYCxkYXJrc2xhdGVibHVlOmAjNDgzZDhiYCxkYXJrc2xhdGVncmF5OmAjMmY0ZjRmYCxkYXJrc2xhdGVncmV5OmAjMmY0ZjRmYCxkYXJrdHVycXVvaXNlOmAjMDBjZWQxYCxkYXJrdmlvbGV0OmAjOTQwMGQzYCxkZWVwcGluazpgI2ZmMTQ5M2AsZGVlcHNreWJsdWU6YCMwMGJmZmZgLGRpbWdyYXk6YCM2OTY5NjlgLGRpbWdyZXk6YCM2OTY5NjlgLGRvZGdlcmJsdWU6YCMxZTkwZmZgLGZpcmVicmljazpgI2IyMjIyMmAsZmxvcmFsd2hpdGU6YCNmZmZhZjBgLGZvcmVzdGdyZWVuOmAjMjI4YjIyYCxmdWNoc2lhOmAjZmYwMGZmYCxnYWluc2Jvcm86YCNkY2RjZGNgLGdob3N0d2hpdGU6YCNmOGY4ZmZgLGdvbGRlbnJvZDpgI2RhYTUyMGAsZ29sZDpgI2ZmZDcwMGAsZ3JheTpgIzgwODA4MGAsZ3JlZW46YCMwMDgwMDBgLGdyZWVueWVsbG93OmAjYWRmZjJmYCxncmV5OmAjODA4MDgwYCxob25leWRldzpgI2YwZmZmMGAsaG90cGluazpgI2ZmNjliNGAsaW5kaWFucmVkOmAjY2Q1YzVjYCxpbmRpZ286YCM0YjAwODJgLGl2b3J5OmAjZmZmZmYwYCxraGFraTpgI2YwZTY4Y2AsbGF2ZW5kZXJibHVzaDpgI2ZmZjBmNWAsbGF2ZW5kZXI6YCNlNmU2ZmFgLGxhd25ncmVlbjpgIzdjZmMwMGAsbGVtb25jaGlmZm9uOmAjZmZmYWNkYCxsaWdodGJsdWU6YCNhZGQ4ZTZgLGxpZ2h0Y29yYWw6YCNmMDgwODBgLGxpZ2h0Y3lhbjpgI2UwZmZmZmAsbGlnaHRnb2xkZW5yb2R5ZWxsb3c6YCNmYWZhZDJgLGxpZ2h0Z3JheTpgI2QzZDNkM2AsbGlnaHRncmVlbjpgIzkwZWU5MGAsbGlnaHRncmV5OmAjZDNkM2QzYCxsaWdodHBpbms6YCNmZmI2YzFgLGxpZ2h0c2FsbW9uOmAjZmZhMDdhYCxsaWdodHNlYWdyZWVuOmAjMjBiMmFhYCxsaWdodHNreWJsdWU6YCM4N2NlZmFgLGxpZ2h0c2xhdGVncmF5OmAjNzc4ODk5YCxsaWdodHNsYXRlZ3JleTpgIzc3ODg5OWAsbGlnaHRzdGVlbGJsdWU6YCNiMGM0ZGVgLGxpZ2h0eWVsbG93OmAjZmZmZmUwYCxsaW1lOmAjMDBmZjAwYCxsaW1lZ3JlZW46YCMzMmNkMzJgLGxpbmVuOmAjZmFmMGU2YCxtYWdlbnRhOmAjZmYwMGZmYCxtYXJvb246YCM4MDAwMDBgLG1lZGl1bWFxdWFtYXJpbmU6YCM2NmNkYWFgLG1lZGl1bWJsdWU6YCMwMDAwY2RgLG1lZGl1bW9yY2hpZDpgI2JhNTVkM2AsbWVkaXVtcHVycGxlOmAjOTM3MGRiYCxtZWRpdW1zZWFncmVlbjpgIzNjYjM3MWAsbWVkaXVtc2xhdGVibHVlOmAjN2I2OGVlYCxtZWRpdW1zcHJpbmdncmVlbjpgIzAwZmE5YWAsbWVkaXVtdHVycXVvaXNlOmAjNDhkMWNjYCxtZWRpdW12aW9sZXRyZWQ6YCNjNzE1ODVgLG1pZG5pZ2h0Ymx1ZTpgIzE5MTk3MGAsbWludGNyZWFtOmAjZjVmZmZhYCxtaXN0eXJvc2U6YCNmZmU0ZTFgLG1vY2Nhc2luOmAjZmZlNGI1YCxuYXZham93aGl0ZTpgI2ZmZGVhZGAsbmF2eTpgIzAwMDA4MGAsb2xkbGFjZTpgI2ZkZjVlNmAsb2xpdmU6YCM4MDgwMDBgLG9saXZlZHJhYjpgIzZiOGUyM2Asb3JhbmdlOmAjZmZhNTAwYCxvcmFuZ2VyZWQ6YCNmZjQ1MDBgLG9yY2hpZDpgI2RhNzBkNmAscGFsZWdvbGRlbnJvZDpgI2VlZThhYWAscGFsZWdyZWVuOmAjOThmYjk4YCxwYWxldHVycXVvaXNlOmAjYWZlZWVlYCxwYWxldmlvbGV0cmVkOmAjZGI3MDkzYCxwYXBheWF3aGlwOmAjZmZlZmQ1YCxwZWFjaHB1ZmY6YCNmZmRhYjlgLHBlcnU6YCNjZDg1M2ZgLHBpbms6YCNmZmMwY2JgLHBsdW06YCNkZGEwZGRgLHBvd2RlcmJsdWU6YCNiMGUwZTZgLHB1cnBsZTpgIzgwMDA4MGAscmViZWNjYXB1cnBsZTpgIzY2MzM5OWAscmVkOmAjZmYwMDAwYCxyb3N5YnJvd246YCNiYzhmOGZgLHJveWFsYmx1ZTpgIzQxNjllMWAsc2FkZGxlYnJvd246YCM4YjQ1MTNgLHNhbG1vbjpgI2ZhODA3MmAsc2FuZHlicm93bjpgI2Y0YTQ2MGAsc2VhZ3JlZW46YCMyZThiNTdgLHNlYXNoZWxsOmAjZmZmNWVlYCxzaWVubmE6YCNhMDUyMmRgLHNpbHZlcjpgI2MwYzBjMGAsc2t5Ymx1ZTpgIzg3Y2VlYmAsc2xhdGVibHVlOmAjNmE1YWNkYCxzbGF0ZWdyYXk6YCM3MDgwOTBgLHNsYXRlZ3JleTpgIzcwODA5MGAsc25vdzpgI2ZmZmFmYWAsc3ByaW5nZ3JlZW46YCMwMGZmN2ZgLHN0ZWVsYmx1ZTpgIzQ2ODJiNGAsdGFuOmAjZDJiNDhjYCx0ZWFsOmAjMDA4MDgwYCx0aGlzdGxlOmAjZDhiZmQ4YCx0b21hdG86YCNmZjYzNDdgLHR1cnF1b2lzZTpgIzQwZTBkMGAsdmlvbGV0OmAjZWU4MmVlYCx3aGVhdDpgI2Y1ZGViM2Asd2hpdGU6YCNmZmZmZmZgLHdoaXRlc21va2U6YCNmNWY1ZjVgLHllbGxvdzpgI2ZmZmYwMGAseWVsbG93Z3JlZW46YCM5YWNkMzJgfTtmdW5jdGlvbiBEdihlKXtsZXQgdD17cjowLGc6MCxiOjB9LG49MSxyPW51bGwsaT1udWxsLGE9bnVsbCxvPSExLHM9ITE7cmV0dXJuIHR5cGVvZiBlPT1gc3RyaW5nYCYmKGU9TXYoZSkpLHR5cGVvZiBlPT1gb2JqZWN0YCYmKE52KGUucikmJk52KGUuZykmJk52KGUuYik/KHQ9ZnYoZS5yLGUuZyxlLmIpLG89ITAscz1TdHJpbmcoZS5yKS5zdWJzdHIoLTEpPT09YCVgP2BwcmdiYDpgcmdiYCk6TnYoZS5oKSYmTnYoZS5zKSYmTnYoZS52KT8ocj11dihlLnMpLGk9dXYoZS52KSx0PV92KGUuaCxyLGkpLG89ITAscz1gaHN2YCk6TnYoZS5oKSYmTnYoZS5zKSYmTnYoZS5sKT8ocj11dihlLnMpLGE9dXYoZS5sKSx0PWh2KGUuaCxyLGEpLG89ITAscz1gaHNsYCk6TnYoZS5jKSYmTnYoZS5tKSYmTnYoZS55KSYmTnYoZS5rKSYmKHQ9YnYoZS5jLGUubSxlLnksZS5rKSxvPSEwLHM9YGNteWtgKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxgYWApJiYobj1lLmEpKSxuPWx2KG4pLHtvazpvLGZvcm1hdDplLmZvcm1hdHx8cyxyOk1hdGgubWluKDI1NSxNYXRoLm1heCh0LnIsMCkpLGc6TWF0aC5taW4oMjU1LE1hdGgubWF4KHQuZywwKSksYjpNYXRoLm1pbigyNTUsTWF0aC5tYXgodC5iLDApKSxhOm59fXZhciBPdj1gKD86Wy1cXCtdP1xcZCpcXC5cXGQrJT8pfCg/OlstXFwrXT9cXGQrJT8pYCxrdj1gW1xcc3xcXChdKyhgK092K2ApWyx8XFxzXSsoKD86Wy1cXCtdP1xcZCpcXC5cXGQrJT8pfCg/OlstXFwrXT9cXGQrJT8pKVssfFxcc10rKCg/OlstXFwrXT9cXGQqXFwuXFxkKyU/KXwoPzpbLVxcK10/XFxkKyU/KSlcXHMqXFwpP2AsQXY9YFtcXHN8XFwoXSsoYCtPditgKVssfFxcc10rKCg/OlstXFwrXT9cXGQqXFwuXFxkKyU/KXwoPzpbLVxcK10/XFxkKyU/KSlbLHxcXHNdKygoPzpbLVxcK10/XFxkKlxcLlxcZCslPyl8KD86Wy1cXCtdP1xcZCslPykpWyx8XFxzXSsoKD86Wy1cXCtdP1xcZCpcXC5cXGQrJT8pfCg/OlstXFwrXT9cXGQrJT8pKVxccypcXCk/YCxqdj17Q1NTX1VOSVQ6bmV3IFJlZ0V4cChPdikscmdiOlJlZ0V4cChgcmdiYCtrdikscmdiYTpSZWdFeHAoYHJnYmFgK0F2KSxoc2w6UmVnRXhwKGBoc2xgK2t2KSxoc2xhOlJlZ0V4cChgaHNsYWArQXYpLGhzdjpSZWdFeHAoYGhzdmAra3YpLGhzdmE6UmVnRXhwKGBoc3ZhYCtBdiksY215azpSZWdFeHAoYGNteWtgK0F2KSxoZXgzOi9eIz8oWzAtOWEtZkEtRl17MX0pKFswLTlhLWZBLUZdezF9KShbMC05YS1mQS1GXXsxfSkkLyxoZXg2Oi9eIz8oWzAtOWEtZkEtRl17Mn0pKFswLTlhLWZBLUZdezJ9KShbMC05YS1mQS1GXXsyfSkkLyxoZXg0Oi9eIz8oWzAtOWEtZkEtRl17MX0pKFswLTlhLWZBLUZdezF9KShbMC05YS1mQS1GXXsxfSkoWzAtOWEtZkEtRl17MX0pJC8saGV4ODovXiM/KFswLTlhLWZBLUZdezJ9KShbMC05YS1mQS1GXXsyfSkoWzAtOWEtZkEtRl17Mn0pKFswLTlhLWZBLUZdezJ9KSQvfTtmdW5jdGlvbiBNdihlKXtpZihlPWUudHJpbSgpLnRvTG93ZXJDYXNlKCksZS5sZW5ndGg9PT0wKXJldHVybiExO2xldCB0PSExO2lmKEV2W2VdKWU9RXZbZV0sdD0hMDtlbHNlIGlmKGU9PT1gdHJhbnNwYXJlbnRgKXJldHVybntyOjAsZzowLGI6MCxhOjAsZm9ybWF0OmBuYW1lYH07bGV0IG49anYucmdiLmV4ZWMoZSk7cmV0dXJuIG4/e3I6blsxXSxnOm5bMl0sYjpuWzNdfToobj1qdi5yZ2JhLmV4ZWMoZSksbj97cjpuWzFdLGc6blsyXSxiOm5bM10sYTpuWzRdfToobj1qdi5oc2wuZXhlYyhlKSxuP3toOm5bMV0sczpuWzJdLGw6blszXX06KG49anYuaHNsYS5leGVjKGUpLG4/e2g6blsxXSxzOm5bMl0sbDpuWzNdLGE6bls0XX06KG49anYuaHN2LmV4ZWMoZSksbj97aDpuWzFdLHM6blsyXSx2Om5bM119OihuPWp2LmhzdmEuZXhlYyhlKSxuP3toOm5bMV0sczpuWzJdLHY6blszXSxhOm5bNF19OihuPWp2LmNteWsuZXhlYyhlKSxuP3tjOm5bMV0sbTpuWzJdLHk6blszXSxrOm5bNF19OihuPWp2LmhleDguZXhlYyhlKSxuP3tyOnd2KG5bMV0pLGc6d3YoblsyXSksYjp3dihuWzNdKSxhOkN2KG5bNF0pLGZvcm1hdDp0P2BuYW1lYDpgaGV4OGB9OihuPWp2LmhleDYuZXhlYyhlKSxuP3tyOnd2KG5bMV0pLGc6d3YoblsyXSksYjp3dihuWzNdKSxmb3JtYXQ6dD9gbmFtZWA6YGhleGB9OihuPWp2LmhleDQuZXhlYyhlKSxuP3tyOnd2KG5bMV0rblsxXSksZzp3dihuWzJdK25bMl0pLGI6d3YoblszXStuWzNdKSxhOkN2KG5bNF0rbls0XSksZm9ybWF0OnQ/YG5hbWVgOmBoZXg4YH06KG49anYuaGV4My5leGVjKGUpLG4/e3I6d3YoblsxXStuWzFdKSxnOnd2KG5bMl0rblsyXSksYjp3dihuWzNdK25bM10pLGZvcm1hdDp0P2BuYW1lYDpgaGV4YH06ITEpKSkpKSkpKSkpfWZ1bmN0aW9uIE52KGUpe3JldHVybiB0eXBlb2YgZT09YG51bWJlcmA/IU51bWJlci5pc05hTihlKTpqdi5DU1NfVU5JVC50ZXN0KGUpfXZhciBQdj1jbGFzcyBle2NvbnN0cnVjdG9yKHQ9YGAsbj17fSl7aWYodCBpbnN0YW5jZW9mIGUpcmV0dXJuIHQ7dHlwZW9mIHQ9PWBudW1iZXJgJiYodD1Udih0KSksdGhpcy5vcmlnaW5hbElucHV0PXQ7bGV0IHI9RHYodCk7dGhpcy5vcmlnaW5hbElucHV0PXQsdGhpcy5yPXIucix0aGlzLmc9ci5nLHRoaXMuYj1yLmIsdGhpcy5hPXIuYSx0aGlzLnJvdW5kQT1NYXRoLnJvdW5kKDEwMCp0aGlzLmEpLzEwMCx0aGlzLmZvcm1hdD1uLmZvcm1hdD8/ci5mb3JtYXQsdGhpcy5ncmFkaWVudFR5cGU9bi5ncmFkaWVudFR5cGUsdGhpcy5yPDEmJih0aGlzLnI9TWF0aC5yb3VuZCh0aGlzLnIpKSx0aGlzLmc8MSYmKHRoaXMuZz1NYXRoLnJvdW5kKHRoaXMuZykpLHRoaXMuYjwxJiYodGhpcy5iPU1hdGgucm91bmQodGhpcy5iKSksdGhpcy5pc1ZhbGlkPXIub2t9aXNEYXJrKCl7cmV0dXJuIHRoaXMuZ2V0QnJpZ2h0bmVzcygpPDEyOH1pc0xpZ2h0KCl7cmV0dXJuIXRoaXMuaXNEYXJrKCl9Z2V0QnJpZ2h0bmVzcygpe2xldCBlPXRoaXMudG9SZ2IoKTtyZXR1cm4oZS5yKjI5OStlLmcqNTg3K2UuYioxMTQpLzFlM31nZXRMdW1pbmFuY2UoKXtsZXQgZT10aGlzLnRvUmdiKCksdCxuLHIsaT1lLnIvMjU1LGE9ZS5nLzI1NSxvPWUuYi8yNTU7cmV0dXJuIHQ9aTw9LjAzOTI4P2kvMTIuOTI6KChpKy4wNTUpLzEuMDU1KSoqMi40LG49YTw9LjAzOTI4P2EvMTIuOTI6KChhKy4wNTUpLzEuMDU1KSoqMi40LHI9bzw9LjAzOTI4P28vMTIuOTI6KChvKy4wNTUpLzEuMDU1KSoqMi40LC4yMTI2KnQrLjcxNTIqbisuMDcyMipyfWdldEFscGhhKCl7cmV0dXJuIHRoaXMuYX1zZXRBbHBoYShlKXtyZXR1cm4gdGhpcy5hPWx2KGUpLHRoaXMucm91bmRBPU1hdGgucm91bmQoMTAwKnRoaXMuYSkvMTAwLHRoaXN9aXNNb25vY2hyb21lKCl7bGV0e3M6ZX09dGhpcy50b0hzbCgpO3JldHVybiBlPT09MH10b0hzdigpe2xldCBlPWd2KHRoaXMucix0aGlzLmcsdGhpcy5iKTtyZXR1cm57aDplLmgqMzYwLHM6ZS5zLHY6ZS52LGE6dGhpcy5hfX10b0hzdlN0cmluZygpe2xldCBlPWd2KHRoaXMucix0aGlzLmcsdGhpcy5iKSx0PU1hdGgucm91bmQoZS5oKjM2MCksbj1NYXRoLnJvdW5kKGUucyoxMDApLHI9TWF0aC5yb3VuZChlLnYqMTAwKTtyZXR1cm4gdGhpcy5hPT09MT9gaHN2KCR7dH0sICR7bn0lLCAke3J9JSlgOmBoc3ZhKCR7dH0sICR7bn0lLCAke3J9JSwgJHt0aGlzLnJvdW5kQX0pYH10b0hzbCgpe2xldCBlPXB2KHRoaXMucix0aGlzLmcsdGhpcy5iKTtyZXR1cm57aDplLmgqMzYwLHM6ZS5zLGw6ZS5sLGE6dGhpcy5hfX10b0hzbFN0cmluZygpe2xldCBlPXB2KHRoaXMucix0aGlzLmcsdGhpcy5iKSx0PU1hdGgucm91bmQoZS5oKjM2MCksbj1NYXRoLnJvdW5kKGUucyoxMDApLHI9TWF0aC5yb3VuZChlLmwqMTAwKTtyZXR1cm4gdGhpcy5hPT09MT9gaHNsKCR7dH0sICR7bn0lLCAke3J9JSlgOmBoc2xhKCR7dH0sICR7bn0lLCAke3J9JSwgJHt0aGlzLnJvdW5kQX0pYH10b0hleChlPSExKXtyZXR1cm4gdnYodGhpcy5yLHRoaXMuZyx0aGlzLmIsZSl9dG9IZXhTdHJpbmcoZT0hMSl7cmV0dXJuYCNgK3RoaXMudG9IZXgoZSl9dG9IZXg4KGU9ITEpe3JldHVybiB5dih0aGlzLnIsdGhpcy5nLHRoaXMuYix0aGlzLmEsZSl9dG9IZXg4U3RyaW5nKGU9ITEpe3JldHVybmAjYCt0aGlzLnRvSGV4OChlKX10b0hleFNob3J0U3RyaW5nKGU9ITEpe3JldHVybiB0aGlzLmE9PT0xP3RoaXMudG9IZXhTdHJpbmcoZSk6dGhpcy50b0hleDhTdHJpbmcoZSl9dG9SZ2IoKXtyZXR1cm57cjpNYXRoLnJvdW5kKHRoaXMuciksZzpNYXRoLnJvdW5kKHRoaXMuZyksYjpNYXRoLnJvdW5kKHRoaXMuYiksYTp0aGlzLmF9fXRvUmdiU3RyaW5nKCl7bGV0IGU9TWF0aC5yb3VuZCh0aGlzLnIpLHQ9TWF0aC5yb3VuZCh0aGlzLmcpLG49TWF0aC5yb3VuZCh0aGlzLmIpO3JldHVybiB0aGlzLmE9PT0xP2ByZ2IoJHtlfSwgJHt0fSwgJHtufSlgOmByZ2JhKCR7ZX0sICR7dH0sICR7bn0sICR7dGhpcy5yb3VuZEF9KWB9dG9QZXJjZW50YWdlUmdiKCl7bGV0IGU9ZT0+YCR7TWF0aC5yb3VuZChaKGUsMjU1KSoxMDApfSVgO3JldHVybntyOmUodGhpcy5yKSxnOmUodGhpcy5nKSxiOmUodGhpcy5iKSxhOnRoaXMuYX19dG9QZXJjZW50YWdlUmdiU3RyaW5nKCl7bGV0IGU9ZT0+TWF0aC5yb3VuZChaKGUsMjU1KSoxMDApO3JldHVybiB0aGlzLmE9PT0xP2ByZ2IoJHtlKHRoaXMucil9JSwgJHtlKHRoaXMuZyl9JSwgJHtlKHRoaXMuYil9JSlgOmByZ2JhKCR7ZSh0aGlzLnIpfSUsICR7ZSh0aGlzLmcpfSUsICR7ZSh0aGlzLmIpfSUsICR7dGhpcy5yb3VuZEF9KWB9dG9DbXlrKCl7cmV0dXJuey4uLnh2KHRoaXMucix0aGlzLmcsdGhpcy5iKX19dG9DbXlrU3RyaW5nKCl7bGV0e2M6ZSxtOnQseTpuLGs6cn09eHYodGhpcy5yLHRoaXMuZyx0aGlzLmIpO3JldHVybmBjbXlrKCR7ZX0sICR7dH0sICR7bn0sICR7cn0pYH10b05hbWUoKXtpZih0aGlzLmE9PT0wKXJldHVybmB0cmFuc3BhcmVudGA7aWYodGhpcy5hPDEpcmV0dXJuITE7bGV0IGU9YCNgK3Z2KHRoaXMucix0aGlzLmcsdGhpcy5iLCExKTtmb3IobGV0W3Qsbl1vZiBPYmplY3QuZW50cmllcyhFdikpaWYoZT09PW4pcmV0dXJuIHQ7cmV0dXJuITF9dG9TdHJpbmcoZSl7bGV0IHQ9ISFlO2U/Pz10aGlzLmZvcm1hdDtsZXQgbj0hMSxyPXRoaXMuYTwxJiZ0aGlzLmE+PTA7cmV0dXJuIXQmJnImJihlLnN0YXJ0c1dpdGgoYGhleGApfHxlPT09YG5hbWVgKT9lPT09YG5hbWVgJiZ0aGlzLmE9PT0wP3RoaXMudG9OYW1lKCk6dGhpcy50b1JnYlN0cmluZygpOihlPT09YHJnYmAmJihuPXRoaXMudG9SZ2JTdHJpbmcoKSksZT09PWBwcmdiYCYmKG49dGhpcy50b1BlcmNlbnRhZ2VSZ2JTdHJpbmcoKSksKGU9PT1gaGV4YHx8ZT09PWBoZXg2YCkmJihuPXRoaXMudG9IZXhTdHJpbmcoKSksZT09PWBoZXgzYCYmKG49dGhpcy50b0hleFN0cmluZyghMCkpLGU9PT1gaGV4NGAmJihuPXRoaXMudG9IZXg4U3RyaW5nKCEwKSksZT09PWBoZXg4YCYmKG49dGhpcy50b0hleDhTdHJpbmcoKSksZT09PWBuYW1lYCYmKG49dGhpcy50b05hbWUoKSksZT09PWBoc2xgJiYobj10aGlzLnRvSHNsU3RyaW5nKCkpLGU9PT1gaHN2YCYmKG49dGhpcy50b0hzdlN0cmluZygpKSxlPT09YGNteWtgJiYobj10aGlzLnRvQ215a1N0cmluZygpKSxufHx0aGlzLnRvSGV4U3RyaW5nKCkpfXRvTnVtYmVyKCl7cmV0dXJuKE1hdGgucm91bmQodGhpcy5yKTw8MTYpKyhNYXRoLnJvdW5kKHRoaXMuZyk8PDgpK01hdGgucm91bmQodGhpcy5iKX1jbG9uZSgpe3JldHVybiBuZXcgZSh0aGlzLnRvU3RyaW5nKCkpfWxpZ2h0ZW4odD0xMCl7bGV0IG49dGhpcy50b0hzbCgpO3JldHVybiBuLmwrPXQvMTAwLG4ubD1vdihuLmwpLG5ldyBlKG4pfWJyaWdodGVuKHQ9MTApe2xldCBuPXRoaXMudG9SZ2IoKTtyZXR1cm4gbi5yPU1hdGgubWF4KDAsTWF0aC5taW4oMjU1LG4uci1NYXRoLnJvdW5kKDI1NSotKHQvMTAwKSkpKSxuLmc9TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsbi5nLU1hdGgucm91bmQoMjU1Ki0odC8xMDApKSkpLG4uYj1NYXRoLm1heCgwLE1hdGgubWluKDI1NSxuLmItTWF0aC5yb3VuZCgyNTUqLSh0LzEwMCkpKSksbmV3IGUobil9ZGFya2VuKHQ9MTApe2xldCBuPXRoaXMudG9Ic2woKTtyZXR1cm4gbi5sLT10LzEwMCxuLmw9b3Yobi5sKSxuZXcgZShuKX10aW50KGU9MTApe3JldHVybiB0aGlzLm1peChgd2hpdGVgLGUpfXNoYWRlKGU9MTApe3JldHVybiB0aGlzLm1peChgYmxhY2tgLGUpfWRlc2F0dXJhdGUodD0xMCl7bGV0IG49dGhpcy50b0hzbCgpO3JldHVybiBuLnMtPXQvMTAwLG4ucz1vdihuLnMpLG5ldyBlKG4pfXNhdHVyYXRlKHQ9MTApe2xldCBuPXRoaXMudG9Ic2woKTtyZXR1cm4gbi5zKz10LzEwMCxuLnM9b3Yobi5zKSxuZXcgZShuKX1ncmV5c2NhbGUoKXtyZXR1cm4gdGhpcy5kZXNhdHVyYXRlKDEwMCl9c3Bpbih0KXtsZXQgbj10aGlzLnRvSHNsKCkscj0obi5oK3QpJTM2MDtyZXR1cm4gbi5oPXI8MD8zNjArcjpyLG5ldyBlKG4pfW1peCh0LG49NTApe2xldCByPXRoaXMudG9SZ2IoKSxpPW5ldyBlKHQpLnRvUmdiKCksYT1uLzEwMDtyZXR1cm4gbmV3IGUoe3I6KGkuci1yLnIpKmErci5yLGc6KGkuZy1yLmcpKmErci5nLGI6KGkuYi1yLmIpKmErci5iLGE6KGkuYS1yLmEpKmErci5hfSl9YW5hbG9nb3VzKHQ9NixuPTMwKXtsZXQgcj10aGlzLnRvSHNsKCksaT0zNjAvbixhPVt0aGlzXTtmb3Ioci5oPShyLmgtKGkqdD4+MSkrNzIwKSUzNjA7LS10OylyLmg9KHIuaCtpKSUzNjAsYS5wdXNoKG5ldyBlKHIpKTtyZXR1cm4gYX1jb21wbGVtZW50KCl7bGV0IHQ9dGhpcy50b0hzbCgpO3JldHVybiB0Lmg9KHQuaCsxODApJTM2MCxuZXcgZSh0KX1tb25vY2hyb21hdGljKHQ9Nil7bGV0IG49dGhpcy50b0hzdigpLHtoOnJ9PW4se3M6aX09bix7djphfT1uLG89W10scz0xL3Q7Zm9yKDt0LS07KW8ucHVzaChuZXcgZSh7aDpyLHM6aSx2OmF9KSksYT0oYStzKSUxO3JldHVybiBvfXNwbGl0Y29tcGxlbWVudCgpe2xldCB0PXRoaXMudG9Ic2woKSx7aDpufT10O3JldHVyblt0aGlzLG5ldyBlKHtoOihuKzcyKSUzNjAsczp0LnMsbDp0Lmx9KSxuZXcgZSh7aDoobisyMTYpJTM2MCxzOnQucyxsOnQubH0pXX1vbkJhY2tncm91bmQodCl7bGV0IG49dGhpcy50b1JnYigpLHI9bmV3IGUodCkudG9SZ2IoKSxpPW4uYStyLmEqKDEtbi5hKTtyZXR1cm4gbmV3IGUoe3I6KG4ucipuLmErci5yKnIuYSooMS1uLmEpKS9pLGc6KG4uZypuLmErci5nKnIuYSooMS1uLmEpKS9pLGI6KG4uYipuLmErci5iKnIuYSooMS1uLmEpKS9pLGE6aX0pfXRyaWFkKCl7cmV0dXJuIHRoaXMucG9seWFkKDMpfXRldHJhZCgpe3JldHVybiB0aGlzLnBvbHlhZCg0KX1wb2x5YWQodCl7bGV0IG49dGhpcy50b0hzbCgpLHtoOnJ9PW4saT1bdGhpc10sYT0zNjAvdDtmb3IobGV0IG89MTtvPHQ7bysrKWkucHVzaChuZXcgZSh7aDoocitvKmEpJTM2MCxzOm4ucyxsOm4ubH0pKTtyZXR1cm4gaX1lcXVhbHModCl7bGV0IG49bmV3IGUodCk7cmV0dXJuIHRoaXMuZm9ybWF0PT09YGNteWtgfHxuLmZvcm1hdD09PWBjbXlrYD90aGlzLnRvQ215a1N0cmluZygpPT09bi50b0NteWtTdHJpbmcoKTp0aGlzLnRvUmdiU3RyaW5nKCk9PT1uLnRvUmdiU3RyaW5nKCl9fTtmdW5jdGlvbiBGdihlLHQpe2xldCBuPW5ldyBQdihlKSxyPW5ldyBQdih0KTtyZXR1cm4oTWF0aC5tYXgobi5nZXRMdW1pbmFuY2UoKSxyLmdldEx1bWluYW5jZSgpKSsuMDUpLyhNYXRoLm1pbihuLmdldEx1bWluYW5jZSgpLHIuZ2V0THVtaW5hbmNlKCkpKy4wNSl9dmFyIEl2PS4yOTksTHY9LjU4NyxSdj0uMTE0LHp2PTE4MCxCdj0tMjAsVnY9LS4yNSxIdj0uMixVdj0tNSxXdj0uMDMsR3Y9LjUsS3Y9NSxxdj0oZSx0KT0+bmV3IFB2KGUpLmRhcmtlbih0KS50b0hleFN0cmluZygpLEp2PWU9PntsZXQgdD1uZXcgUHYoZSkudG9SZ2IoKTtyZXR1cm5gJHt0LnJ9LCAke3QuZ30sICR7dC5ifWB9LFl2PWU9Pi9eI1swLTlBLUZdezZ9JC9pLnRlc3QoZSksWHY9ZT0+e2xldHtyOnQsZzpuLGI6cn09bmV3IFB2KGUpLnRvUmdiKCk7cmV0dXJuIE1hdGguc3FydCh0KnQqSXYrbipuKkx2K3IqcipSdik+enZ9LFp2PWU9PntsZXQgdD1uZXcgUHYoZSkse3M6bixsOnJ9PXQudG9Ic2woKTtyZXR1cm4gdC5zcGluKEJ2KS5kZXNhdHVyYXRlKG4qVnYpLmxpZ2h0ZW4ocipIdikudG9IZXhTdHJpbmcoKX0sUXY9KGUsdD1Hdik9PntsZXQgbj1uZXcgUHYoZSkse3M6cixsOml9PW4udG9Ic2woKTtyZXR1cm4gbi5zcGluKFV2KS5zYXR1cmF0ZShyKld2KS5kYXJrZW4oaSp0KS50b0hleFN0cmluZygpfSwkdj1lPT57bGV0e2NvbG9yOnQsY29sb3IyOm4sY29sb3JHcmFkaWVudDpyfT1lO3JldHVybiByP24/e2Zyb206dCx0bzpufTpYdih0KT97ZnJvbTp0LHRvOlF2KHQpfTp7ZnJvbTpadih0KSx0bzp0fTp7ZnJvbTp0LHRvOnR9fSxleT1lPT5YdihlKT9hdi5zbGF0ZTkwMDphdi53aGl0ZSx0eT1lPT5YdihlKT8uMTouMixueT1lPT57aWYoWHYoZSkpe2xldCB0PW5ldyBQdihlKS5nZXRMdW1pbmFuY2UoKTtyZXR1cm4gdD4uOD9xdihlLCgxMCp0KSoqdCk6ZX1yZXR1cm4gZX0scnk9KGUsdCk9PntsZXQgbj10Py5iYWNrZ3JvdW5kQ29sb3I/P2Uscj0wLGk9bmV3IFB2KGUpLGE9RnYobixpKSxvPXQ/LmZvcmNlTGlnaHRCZz8/bmV3IFB2KG4pLmlzTGlnaHQoKTtmb3IoO2E8My43NSYmcjwyMDspaT1vP2kuZGFya2VuKDUpOmkubGlnaHRlbig1KSxhPUZ2KG4saSkscisrO3JldHVybiBpLnRvSGV4U3RyaW5nKCl9LGl5PShlLHQpPT57bGV0IG49cnkoZSx7YmFja2dyb3VuZENvbG9yOmF2LndoaXRlfSkscj1yeShlKSxpPW5ldyBQdihlKS5pc0xpZ2h0KCksYT1uZXcgUHYodCkuaXNMaWdodCgpO3JldHVybiBpJiZhP3I9cnkodCk6IWkmJiFhP3I9cnkoZSk6aSYmIWE/cj1yeSh0LHtmb3JjZUxpZ2h0Qmc6ITB9KTohaSYmYSYmKHI9cnkoZSx7Zm9yY2VMaWdodEJnOiExfSkpLHtwcmltYXJ5Om4sc2Vjb25kYXJ5OnJ9fSxRPShlLHQsbik9PntlLmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSh0LG4pfSxheT0oZSx0KT0+e2xldHtjb2xvcjpufT10LHI9JHYodCksaT1yLmZyb209PT1gI2ZmZmZmZmAmJnIuZnJvbT09PXIudG8/e2Zyb206YXYuc2xhdGUzMDAsdG86YXYuc2xhdGUzMDB9OnIsYT1leShuKTtRKGUsYC0tY29sb3ItcHJpbWFyeWAsbiksUShlLGAtLWNvbG9yLXByaW1hcnktY29udGVudGAsYSksUShlLGAtLWNvbG9yLXByaW1hcnktY29udGVudC1yZ2JgLEp2KGEpKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1ncmFkaWVudC1mcm9tYCxyLmZyb20pLFEoZSxgLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LXRvYCxyLnRvKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1ncmFkaWVudC1idXR0b24tZnJvbWAsaS5mcm9tKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1ncmFkaWVudC1idXR0b24tdG9gLGkudG8pLFEoZSxgLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWhvdmVyLWZyb21gLHF2KHIuZnJvbSxLdikpLFEoZSxgLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWhvdmVyLXRvYCxxdihyLnRvLEt2KSk7bGV0IG89bnkobik7UShlLGAtLWNvbG9yLXByaW1hcnktYnV0dG9uYCxvKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1idXR0b24taG92ZXJgLHF2KG8sMTApKSxRKGUsYC0tY29sb3ItcHJpbWFyeS1idXR0b24tY29udGVudGAsYSksUShlLGAtLW9wYWNpdHktcHJpbWFyeS1jb250ZW50YCxTdHJpbmcodHkobikpKTtsZXQgcz1peShyLmZyb20sci50byk7UShlLGAtLWNvbG9yLXByaW1hcnktZm9jdXNgLHMucHJpbWFyeSksUShlLGAtLWNvbG9yLXNlY29uZGFyeS1mb2N1c2Ascy5zZWNvbmRhcnkpfSxveT0oKCk9PntsZXR7c3Vic2NyaWJlOmUsc2V0OnR9PU8oe2NvbG9yOmF2LnNtYXJ0c3VwcEJsdWUsY29sb3IyOm51bGwsY29sb3JHcmFkaWVudDohMH0pO3JldHVybntzdWJzY3JpYmU6ZSxzZXRUaGVtZUNvbG9yOmU9PntsZXR7Y29sb3I6bixjb2xvcjI6cixjb2xvckdyYWRpZW50Oml9PWU7aWYoIVl2KG4pKXtIKGBQcm92aWRlZCBjb2xvciAnJHtufScgaXMgbm90IHZhbGlkLiBEZWZhdWx0IGNvbG9yIHdpbGwgYmUgdXNlZCBpbnN0ZWFkLmApO3JldHVybn1lbHNlIGlmKGkmJnImJiFZdihyKSl7SChgUHJvdmlkZWQgY29sb3IgJyR7cn0nIGlzIG5vdCB2YWxpZC4gRGVmYXVsdCBjb2xvciB3aWxsIGJlIHVzZWQgaW5zdGVhZC5gKTtyZXR1cm59dCh7Y29sb3I6bixjb2xvcjI6cixjb2xvckdyYWRpZW50Oml9KX19fSkoKSxzeT0yNCxjeT0xMixseT03Mix1eT0zODAsZHk9NjcyLGZ5PTU2MCxweT04NDAsbXk9ZT0+YCR7ZX1weGAsaHk9ZT0+e2lmKGUpcmV0dXJuIEx1KGUpP3BhcnNlSW50KGUsMTApOmV9LGd5PShlLHQpPT57bGV0e3dpZGdldEJsb2NraW5nT3B0aW9uczpufT1WLmdldE9wdGlvbnMoKTtyZXR1cm4gZXx8bj8uaGVhZGxlc3NNb2RlP3t3aWR0aDpgMTAwJWAsaGVpZ2h0OmAxMDAlYH06dD97d2lkdGg6ZnksaGVpZ2h0OnB5fTp7d2lkdGg6dXksaGVpZ2h0OmR5fX0sX3k9ZT0+e2xldHt3aWRnZXRCbG9ja2luZ09wdGlvbnM6dH09Vi5nZXRPcHRpb25zKCk7ZS5zdHlsZS5ib3JkZXJSYWRpdXM9bXkoMjApLHQ/LmhlYWRsZXNzTW9kZT9lLnN0eWxlLmJveFNoYWRvdz1gbm9uZWA6dD8ubGltaXRTaGFkb3c/ZS5zdHlsZS5ib3hTaGFkb3c9YHJnYmEoMCwgMCwgMCwgMC4yNSkgMHB4IDVweCAxMnB4YDplLnN0eWxlLmJveFNoYWRvdz1gcmdiYSgwLCAwLCAwLCAwLjE2KSAwcHggNXB4IDQwcHhgfSx2eT0oKT0+e2xldHtvZmZzZXRZOmV9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBoeShlKT8/c3l9LHl5PSgpPT57bGV0e29mZnNldFg6ZX09Vi5nZXRPcHRpb25zKCk7cmV0dXJuIGh5KGUpPz9jeX0sYnk9ZT0+e2xldHt3aWRnZXRCbG9ja2luZ09wdGlvbnM6dH09Vi5nZXRPcHRpb25zKCk7cmV0dXJuIGV8fHQ/LmhlYWRsZXNzTW9kZT8wOnN5fSx4eT1lPT57bGV0e3dpZGdldEJsb2NraW5nT3B0aW9uczp0fT1WLmdldE9wdGlvbnMoKTtyZXR1cm4gZXx8dD8uaGVhZGxlc3NNb2RlPzA6Y3l9LFN5PSgpPT57bGV0e3Bvc2l0aW9uOmV9PVYuZ2V0T3B0aW9ucygpO3JldHVybiBlPT09YGZpeGVkYH0sQ3k9ZT0+e1N5KCkmJihlLnN0eWxlLnBvc2l0aW9uPWBmaXhlZGApfSx3eT0oZSx0KT0+e1N5KCkmJihlLnN0eWxlLmJvdHRvbT1teSh0KSl9LFR5PShlLHQpPT57aWYoU3koKSl7bGV0e29yaWVudGF0aW9uOm59PVYuZ2V0T3B0aW9ucygpO249PT1gcmlnaHRgPyhlLnN0eWxlLmxlZnQ9YGluaXRpYWxgLGUuc3R5bGUucmlnaHQ9bXkodCkpOihlLnN0eWxlLmxlZnQ9bXkodCksZS5zdHlsZS5yaWdodD1gaW5pdGlhbGApfX0sRXk9ZT0+e2xldHt6SW5kZXg6dH09Vi5nZXRPcHRpb25zKCk7ZS5zdHlsZS56SW5kZXg9U3RyaW5nKHQ/P2BhdXRvYCl9LER5PWU9PntsZXQgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGBpZnJhbWVgKTtyZXR1cm4gdC5zdHlsZS5wb3NpdGlvbj1gYWJzb2x1dGVgLHQuc3R5bGUud2lkdGg9YDEwMCVgLHQuc3R5bGUuaGVpZ2h0PWAxMDAlYCx0LnN0eWxlLmJvcmRlcj1gbm9uZWAsdC5zdHlsZS5kaXNwbGF5PWBibG9ja2AsdC5zdHlsZS50ZXh0QWxpZ249YGxlZnRgLHQuc3R5bGUubWFyZ2luPWAwYCx0LnN0eWxlLnBhZGRpbmc9YDBgLHQuc3R5bGUudG9wPWAwYCx0LnN0eWxlLmxlZnQ9YDBgLHQuc3R5bGUub3BhY2l0eT1gMWAsZSYmZSh0KSx0LmdldEF0dHJpYnV0ZShgc3R5bGVgKT8/YGB9LE95PWU9PntDeShlKSx3eShlLHZ5KCkpLFR5KGUseXkoKSksRXkoZSl9LGt5PShlLHQpPT57Q3koZSksd3koZSxieSh0KSksVHkoZSx4eSh0KSksRXkoZSksdHx8X3koZSl9LEF5PWU9PntDeShlKSx3eShlLHZ5KCkrbHkpLFR5KGUseXkoKSksRXkoZSl9LGp5PWU9PntlLnN0eWxlLnBvc2l0aW9uPWBmaXhlZGAsZS5zdHlsZS53aWR0aD1gMTAwJWAsZS5zdHlsZS5oZWlnaHQ9YDEwMCVgLHd5KGUsMCksVHkoZSwwKSxFeShlKX0sTXk9ZT0+e095KGUpfSxOeT0oZSx0KT0+e2t5KGUsdCl9LFB5PWU9PntBeShlKX0sRnk9ZT0+e0F5KGUpfSxJeT1lPT57ankoZSl9LEx5PU8oMzAwKSxSeT1PKDE2Niksenk9TyghMSksQnk9Tyh2b2lkIDApLFZ5PWsoW3NzLEJ5XSwoW2UsdF0pPT57bGV0e2J1dHRvblN0eWxlOm59PVYuZ2V0T3B0aW9ucygpO3JldHVybiB0P3Q9PT1gYnViYmxlYDplfHxuPT09YGJ1YmJsZWB9KSxIeT1rKFtWeSxMeV0sKFtlLHRdKT0+ZT81Njp0KSxVeT1PKHZvaWQgMCksV3k9ayhbY3MsVXldLChbZSx0XSk9PmU/ITA6KHQ/P1YuZ2V0T3B0aW9ucygpLmhlYWRlclN0eWxlKT09PWBjb21wYWN0YCksR3k9ayhbV3ldLChbZV0pPT5lPzc2OjExNCksS3k9TygpLHF5PWsoW0t5XSwoW2VdKT0+ZT09PXZvaWQgMD96byhVLklzTWVzc2VuZ2VyRnJhbWVFeHBhbmRlZCk9PT1gdHJ1ZWA6ZSksSnk9ZT0+e0JvKHtuYW1lOlUuSXNNZXNzZW5nZXJGcmFtZUV4cGFuZGVkLHZhbHVlOmUudG9TdHJpbmcoKX0pLEt5LnNldChlKX0sJD1mdW5jdGlvbihlKXtyZXR1cm4gZS5OYW1lPWBuYW1lYCxlLkdyb3VwPWBncm91cGAsZS5FbWFpbD1gZW1haWxgLGUuUGhvbmU9YHBob25lYCxlLlZhcmlhYmxlcz1gdmFyaWFibGVzYCxlLkNvbnRhY3REYXRhPWBjb250YWN0RGF0YWAsZS5MYW5ndWFnZT1gbGFuZ3VhZ2VgLGUuQ2hhdENsb3NlPWBjaGF0OmNsb3NlYCxlLkNoYXRPcGVuPWBjaGF0Om9wZW5gLGUuQ2hhdFNob3c9YGNoYXQ6c2hvd2AsZS5DaGF0SGlkZT1gY2hhdDpoaWRlYCxlLlRoZW1lQ29sb3I9YHRoZW1lOmNvbG9yYCxlLkNoYXRNZXNzYWdlPWBjaGF0Om1lc3NhZ2VgLGUuQ2hhdFNlbmQ9YGNoYXQ6c2VuZGAsZS5IdG1sQXBwbHk9YGh0bWw6YXBwbHlgLGUuT249YG9uYCxlLkFuYWx5dGljc0NvbnNlbnQ9YGFuYWx5dGljc0NvbnNlbnRgLGUuTWFya2V0aW5nQ29uc2VudD1gbWFya2V0aW5nQ29uc2VudGAsZS5PcGVuUmF0ZUZvcm09YG9wZW5SYXRlRm9ybWAsZS5PcGVuQXV0aEZvcm09YG9wZW5BdXRoRm9ybWAsZS5XaWRnZXRTdGF0dXM9YHdpZGdldFN0YXR1c2AsZS5UcmFuc2xhdGlvbnM9YHRyYW5zbGF0aW9uc2AsZS5BdXRoRm9ybUZpZWxkcz1gYXV0aEZvcm1GaWVsZHNgLGUuQnV0dG9uU3R5bGU9YGJ1dHRvblN0eWxlYCxlLkhlYWRlclN0eWxlPWBoZWFkZXJTdHlsZWAsZS5QcmV2aWV3VHJhbnNsYXRlPWBwcmV2aWV3VHJhbnNsYXRlYCxlLkRpc2FibGVDb25uZWN0aW9uU3RhdHVzPWBkaXNhYmxlQ29ubmVjdGlvblN0YXR1c2AsZS5SZWxvYWRXaXRoTW9ja0RhdGE9YHJlbG9hZFdpdGhNb2NrRGF0YWAsZS5SZWxvYWQ9YHJlbG9hZGAsZS5Cb3RJZGVudGl0eVVwZGF0ZT1gYm90SWRlbnRpdHk6dXBkYXRlYCxlfSh7fSksWXk9ZnVuY3Rpb24oZSl7cmV0dXJuIGUuTWVzc2FnZVNlbnQ9YG1lc3NhZ2Vfc2VudGAsZS5NZXNzYWdlUmVjZWl2ZWQ9YG1lc3NhZ2VfcmVjZWl2ZWRgLGUuTWVzc2VuZ2VyQ2xvc2U9YG1lc3Nlbmdlcl9jbG9zZWAsZS5XaWRnZXRJbml0PWB3aWRnZXRfaW5pdGAsZX0oe30pLFh5PWU9Pnt6Lm9uKGBtZXNzYWdlU2VudGAsZSl9LFp5PWU9Pnt6Lm9uKGBtZXNzYWdlUmVjZWl2ZWRgLGUpfSxReT1lPT57ei5vbihgbWVzc2VuZ2VyQ2xvc2VgLGUpfSwkeT1lPT57ei5vbihgd2lkZ2V0SW5pdGAsZSl9LGViPXtbWXkuTWVzc2FnZVNlbnRdOlh5LFtZeS5NZXNzYWdlUmVjZWl2ZWRdOlp5LFtZeS5NZXNzZW5nZXJDbG9zZV06UXksW1l5LldpZGdldEluaXRdOiR5fSx0Yj0oZSx0KT0+e2xldCBuPWViW2VdO24mJm4odCl9LG5iPWBodHRwczovL2RvY3Muc21hcnRzdXBwLmNvbS9jaGF0LWJveC9gLHJiPWAke25ifWxvY2FsaXphdGlvbi8jc3VwcG9ydGVkLWxhbmd1YWdlc2AsaWI9YCR7bmJ9dmlzaXRvci1pZGVudGlmaWNhdGlvbi8jY3VzdG9tLXZpc2l0b3ItZGF0YWAsYWI9YCR7bmJ9dmlzaXRvci1pZGVudGlmaWNhdGlvbi8jY3VzdG9tLWNvbnRhY3QtZGF0YWAsb2I9YCR7bmJ9amF2YXNjcmlwdC1hcGkvZXZlbnRzL2Asc2I9YGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb20vaGVscC9jb29raWUtY29uc2VudC8jd2hlcmUtdG8tZW5hYmxlLWNvb2tpZS1jb25zZW50LWluLXNtYXJ0c3VwcGAsY2I9YGh0dHBzOi8vd3d3LnNtYXJ0c3VwcC5jb20vcHJpY2luZ2AsbGI9Tyh7fSksdWI9KGUsdCk9PntsYi51cGRhdGUobj0+KHsuLi5uLFtlXTp0fSkpfSxkYj1lPT5PYmplY3QudmFsdWVzKCQpLnNvbWUodD0+dD09PWUpLGZiPShlLHQpPT5MdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgc3RyaW5nLiBTZWUgJHtuYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLHBiPShlLHQpPT5QdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgYm9vbGVhbi4gU2VlICR7bmJ9IGZvciBtb3JlIGluZm9ybWF0aW9uLmApLCExKSxtYj0oZSx0KT0+dHlwZW9mIHQ9PWBmdW5jdGlvbmA/ITA6KEgoYFBhcmFtZXRlciBvZiAnJHtlfScgQVBJIGNvbW1hbmQgbXVzdCBiZSB0eXBlIGZ1bmN0aW9uLiBTZWUgJHtuYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLGhiPShlLHQpPT5JdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgb2JqZWN0LiBTZWUgJHtpYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLGdiPShlLHQpPT5JdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgb2JqZWN0LiBTZWUgJHthYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCksITEpLF9iPShlLHQpPT5JdSh0KT8hMDooSChgUGFyYW1ldGVyIG9mICcke2V9JyBBUEkgY29tbWFuZCBtdXN0IGJlIHR5cGUgb2JqZWN0LmApLCExKSx2Yj0oZSx0KT0+IUl1KHQpfHwhKGBpZGBpbiB0KXx8IUx1KHQuaWQpPyhIKGBQYXJhbWV0ZXIgb2YgJyR7ZX0nIEFQSSBjb21tYW5kIG11c3QgYmUgdHlwZSBvYmplY3QgYW5kIGhhcyBhIHZhbGlkICdpZCcgcHJvcGVydHkuYCksITEpOmBuYW1lYGluIHQmJiFMdSh0Lm5hbWUpPyhIKGBQYXJhbWV0ZXIgb2YgJyR7ZX0nIEFQSSBjb21tYW5kIG11c3QgaGF2ZSBhIHZhbGlkICduYW1lJyBwcm9wZXJ0eS5gKSwhMSk6YGF2YXRhclVybGBpbiB0JiYhTHUodC5hdmF0YXJVcmwpPyhIKGBQYXJhbWV0ZXIgb2YgJyR7ZX0nIEFQSSBjb21tYW5kIG11c3QgaGF2ZSBhIHZhbGlkICdhdmF0YXJVcmwnIHByb3BlcnR5LmApLCExKTohMCx5Yj0oZSx0KT0+e2xldCBuPU9iamVjdC52YWx1ZXMoWXkpO3JldHVybiBuLmluY2x1ZGVzKHQpPyEwOihIKGBVbmtub3duIGV2ZW50OiAnJHt0fScuIEF2YWlsYWJsZSBldmVudCBuYW1lcyBhcmU6ICR7bi5qb2luKGAsIGApfS4gU2VlICR7b2J9IGZvciBtb3JlIGluZm9ybWF0aW9uLmApLCExKX0sYmI9ZT0+e0goYFVua25vd24gQVBJIGNvbW1hbmQ6ICcke2V9Jy4gU2VlICR7bmJ9IHRvIGNoZWNrIGF2YWlsYWJsZSBBUEkgY29tbWFuZHMuYCl9LHhiPSgpPT4hIVYuZ2V0T3B0aW9ucygpLmZlYXR1cmVzPy5hcGksU2I9KCk9PiEhVi5nZXRPcHRpb25zKCkuZmVhdHVyZXM/Lmdyb3VwcyxDYj0oKT0+Vi5nZXRPcHRpb25zKCkuaXNQcmV2aWV3TW9kZSx3Yj0oKT0+IXhiKCkmJiFDYigpPyhIKGBDaGF0IGJveCBBUEkgZmVhdHVyZSBpcyBub3QgZW5hYmxlZC4gU2VlICR7Y2J9IHRvIHVwZ3JhZGUgeW91ciBwYWNrYWdlLmApLCExKTohMCxUYj0oKT0+IXhiKCl8fCFTYigpPyhIKGBDaGF0IGJveCBHcm91cHMgZmVhdHVyZSBpcyBub3QgZW5hYmxlZC4gU2VlICR7Y2J9IHRvIHVwZ3JhZGUgeW91ciBwYWNrYWdlLmApLCExKTohMCxFYj0oKT0+e0hvKCl8fEgoYEVuYWJsZSBtYW5hZ2luZyBjb29raWUgY29uc2VudCBpbiB3aWRnZXQgc2V0dGluZ3MgdG8gYWxsb3cgdGhpcyBjb21tYW5kLiBTZWUgJHtzYn0gZm9yIG1vcmUgaW5mb3JtYXRpb24uYCl9LERiPSgpPT57bGV0IGU9KCk9PntVXyghMCksSV8oKX07aWYoIUEoQ18pKXtYbC5wdXNoKGUpO3JldHVybn1lKCl9LE9iPSgpPT57aWYod2IoKSl7aWYoIUEoQ18pKXtYbC5wdXNoKFdfKTtyZXR1cm59V18oKX19LGtiPSgpPT57d2IoKSYmSV8oKX0sQWI9KCk9Pnt3YigpJiZMXygpfSxqYj0oZSx0KT0+e2lmKHdiKCkmJmU9PT0kLkxhbmd1YWdlJiZmYihlLHQpKXtpZighSWwodCkpe0goYFByb3ZpZGVkIGxhbmd1YWdlICcke3R9JyBpcyBub3Qgc3VwcG9ydGVkLiBTZWUgJHtyYn0gdG8gY2hlY2sgc3VwcG9ydGVkIGxhbmd1YWdlcy5gKTtyZXR1cm59aWYoIUEoQ18pKXt1YihgbGFuZ2AsdCk7cmV0dXJufUdsKHQpfX0sTWI9KGUsdCk9PntsZXQgbixyPW51bGwsaT0hMDtpZih3YigpKXtpZih0eXBlb2YgdD09YHN0cmluZ2AmJmZiKGUsdCkpbj10O2Vsc2UgaWYoaGIoZSx0KSl7aWYobj10LmNvbG9yLHI9dC5jb2xvcjIsaT10LmNvbG9yR3JhZGllbnQsIXBiKGUsaSkpcmV0dXJufWVsc2UgcmV0dXJuO2lmKCFZdihuKSl7SChgUHJvdmlkZWQgY29sb3IgJyR7bn0nIGlzIG5vdCB2YWxpZC4gUGxlYXNlIHVzZSBoZXggY29sb3IgY29kZS5gKTtyZXR1cm59ZWxzZSBpZihpJiZyJiYhWXYocikpe0goYFByb3ZpZGVkIGNvbG9yICcke3J9JyBpcyBub3QgdmFsaWQuIERlZmF1bHQgY29sb3Igd2lsbCBiZSB1c2VkIGluc3RlYWQuYCk7cmV0dXJufW95LnNldFRoZW1lQ29sb3Ioe2NvbG9yOm4sY29sb3IyOnIsY29sb3JHcmFkaWVudDppfSl9fSxOYj0oZSx0KT0+e3diKCkmJmZiKGUsdCkmJm9fKHQpfSxQYj0oZSx0KT0+e3diKCkmJmZiKGUsdCkmJihvXyh0KSxkXygpKX0sRmI9KGUsdCxuKT0+e2ZiKGUsdCkmJnliKGUsdCkmJm1iKGUsbikmJnRiKHQsbil9LEliPShlLHQpPT57aGIoZSx0KSYmTXUudXBkYXRlVmlzaXRvclZhcmlhYmxlcyh6dSh0KSl9LExiPShlLHQpPT57ZSE9PSQuTmFtZSYmZSE9PSQuRW1haWwmJmUhPT0kLlBob25lJiZlIT09JC5Hcm91cHx8ZmIoZSx0KSYmTXUudXBkYXRlVmlzaXRvclByb3BlcnR5KGUsdCl9LFJiPShlLHQpPT57aWYoIVRiKCl8fCFmYihlLHQpKXJldHVybjtsZXQgbj1BKGlsKVt0XTtpZihBKENfKSYmIW4pe0goYEdyb3VwIHdpdGgga2V5ICcke3R9JyBkb2VzIG5vdCBleGlzdC4gUGxlYXNlIHByb3ZpZGUgY29ycmVjdCBncm91cCBrZXkgZnJvbSB5b3VyIGdyb3VwIHNldHRpbmdzLmApO3JldHVybn1MYihlLHQpfSx6Yj0oZSx0KT0+e2diKGUsdCkmJk11LnVwZGF0ZVZpc2l0b3JDb250YWN0RGF0YSh0KX0sQmI9KGUsdCk9PntwYihlLHQpJiYoRWIoKSx6LmVtaXQoYGFuYWx5dGljc0NvbnNlbnRDaGFuZ2VkYCwhIXQpKX0sVmI9KGUsdCk9PntwYihlLHQpJiYoRWIoKSx6LmVtaXQoYG1hcmtldGluZ0NvbnNlbnRDaGFuZ2VkYCwhIXQpKX0sSGI9KCk9PntZcChBKEJwKXx8YGApfSxVYj0oKT0+e0JjKEhjLkF1dGhGb3JtKX0sV2I9KGUsdCk9PntmYihlLHQpJiYodCE9PUsuQWNjb3VudFN0YXR1cy5PbmxpbmUmJnQhPT1LLkFjY291bnRTdGF0dXMuT2ZmbGluZXx8JHUuc2V0KHQpKX0sR2I9KGUsdCk9PntoYihlLHQpJiZxbCh0KX0sS2I9KGUsdCk9PntoYihlLHQpJiYoQShWaCl8fFZoLnNldChWLmdldE9wdGlvbnMoKSksVmgudXBkYXRlKGU9Pih7Li4uZSwuLi50fSkpKX0scWI9KGUsdCk9PntmYihlLHQpJiZCeS5zZXQodCl9LEpiPShlLHQpPT57aWYoZT09PSQuSGVhZGVyU3R5bGUmJmZiKGUsdCkpe2lmKHQhPT1gY29tcGFjdGAmJnQhPT1gc3RhbmRhcmRgKXtIKGBQcm92aWRlZCBoZWFkZXIgc3R5bGUgJyR7dH0nIGlzIG5vdCB2YWxpZC4gVXNlICdjb21wYWN0JyBvciAnc3RhbmRhcmQnLmApO3JldHVybn1VeS5zZXQodCl9fSxZYj0oKT0+e2xldCBlPSgpPT57fTtlPUhsLnN1YnNjcmliZSgoKT0+e0EoUnApLmZvckVhY2goZT0+e2xldCB0PWUuY29udGVudD8uZGF0YXx8YGA7dHlwZW9mIHQ9PWBzdHJpbmdgJiZ0Lm1hdGNoKC93aWRnZXRQcmV2aWV3XC4uKi8pJiYoZS5jb250ZW50LnRleHQ9QShXKSh0KSxKLnJlcGxhY2VNZXNzYWdlKGUpKX0pLGUoKX0pfSxYYj0oZSx0KT0+e3BiKGUsdCkmJklnLnNldCh0KX0sWmI9KGUsdCk9PntfYihlLHQpJiZxLnJlbG9hZENsaWVudCh0KX0sUWI9KGUsdCk9PntwYihlLHQpJiZxLnJlbG9hZENsaWVudCh2b2lkIDAsdCl9LCRiPShlLHQpPT57aWYoIXZiKGUsdCkpcmV0dXJuO2xldHtpZDpuLC4uLnJ9PXQ7JGwudXBkYXRlSWRlbnRpdHkobixyKX0sZXg9e3ZlcnNpb246YGUwN2MyMDhhMzhlNmY1MDg0YzhlYjQ2MGI5NThhNDJmNzc4YTU5NjVgLGV4ZWN1dGU6ZT0+e2xldCB0PWVbMF07aWYodHlwZW9mIHQ9PWBmdW5jdGlvbmApe3J4KHQpO3JldHVybn1pZighZGIodCkpe2JiKFN0cmluZyh0KSk7cmV0dXJufW54KHQsZVsxXSwuLi5lLnNsaWNlKDIpKX0sZXhlYzpmdW5jdGlvbiguLi5lKXt0aGlzLmV4ZWN1dGUoZSl9fSx0eD17WyQuQ2hhdE9wZW5dOkRiLFskLkNoYXRDbG9zZV06T2IsWyQuQ2hhdFNob3ddOmtiLFskLkNoYXRIaWRlXTpBYixbJC5DaGF0TWVzc2FnZV06TmIsWyQuQ2hhdFNlbmRdOlBiLFskLkxhbmd1YWdlXTpqYixbJC5UaGVtZUNvbG9yXTpNYixbJC5IZWFkZXJTdHlsZV06SmIsWyQuT25dOkZiLFskLlZhcmlhYmxlc106SWIsWyQuQ29udGFjdERhdGFdOnpiLFskLk5hbWVdOkxiLFskLkdyb3VwXTpSYixbJC5FbWFpbF06TGIsWyQuUGhvbmVdOkxiLFskLkFuYWx5dGljc0NvbnNlbnRdOkJiLFskLk1hcmtldGluZ0NvbnNlbnRdOlZiLFskLkh0bWxBcHBseV06bnVsbCxbJC5PcGVuUmF0ZUZvcm1dOkhiLFskLk9wZW5BdXRoRm9ybV06VWIsWyQuV2lkZ2V0U3RhdHVzXTpXYixbJC5UcmFuc2xhdGlvbnNdOkdiLFskLkF1dGhGb3JtRmllbGRzXTpLYixbJC5CdXR0b25TdHlsZV06cWIsWyQuUHJldmlld1RyYW5zbGF0ZV06WWIsWyQuRGlzYWJsZUNvbm5lY3Rpb25TdGF0dXNdOlhiLFskLlJlbG9hZFdpdGhNb2NrRGF0YV06WmIsWyQuUmVsb2FkXTpRYixbJC5Cb3RJZGVudGl0eVVwZGF0ZV06JGJ9LG54PShlLHQsLi4ubik9PntsZXQgcj10eFtlXTtpZihyPT09dm9pZCAwKXtiYihlKTtyZXR1cm59ciE9PW51bGwmJihyKGUsdCwuLi5uKSx2byhg8J+nmeKAjeKZgu+4j1tBUEldICR7ZX0ke3Q/YDpgOmBgfWAsdD8/YGApKX0scng9ZT0+e0EoQ18pP2UoKTpYbC5wdXNoKGUpfTt0eXBlb2Ygd2luZG93PGB1YCYmKCh3aW5kb3cuX19zdmVsdGU/Pz17fSkudj8/PW5ldyBTZXQpLmFkZChgNWApO3ZhciBpeD1lPT5lO2Z1bmN0aW9uIGF4KGUpe2xldCB0PWUtMTtyZXR1cm4gdCp0KnQrMX1mdW5jdGlvbiBveChlKXtsZXQgdD10eXBlb2YgZT09YHN0cmluZ2AmJmUubWF0Y2goL15ccyooLT9bXGQuXSspKFteXHNdKilccyokLyk7cmV0dXJuIHQ/W3BhcnNlRmxvYXQodFsxXSksdFsyXXx8YHB4YF06W2UsYHB4YF19ZnVuY3Rpb24gc3goZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWl4fT17fSl7bGV0IGk9K2dldENvbXB1dGVkU3R5bGUoZSkub3BhY2l0eTtyZXR1cm57ZGVsYXk6dCxkdXJhdGlvbjpuLGVhc2luZzpyLGNzczplPT5gb3BhY2l0eTogJHtlKml9YH19ZnVuY3Rpb24gY3goZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWF4LHg6aT0wLHk6YT0wLG9wYWNpdHk6bz0wfT17fSl7bGV0IHM9Z2V0Q29tcHV0ZWRTdHlsZShlKSxjPStzLm9wYWNpdHksbD1zLnRyYW5zZm9ybT09PWBub25lYD9gYDpzLnRyYW5zZm9ybSx1PWMqKDEtbyksW2QsZl09b3goaSksW3AsbV09b3goYSk7cmV0dXJue2RlbGF5OnQsZHVyYXRpb246bixlYXNpbmc6cixjc3M6KGUsdCk9PmAKCQkJdHJhbnNmb3JtOiAke2x9IHRyYW5zbGF0ZSgkeygxLWUpKmR9JHtmfSwgJHsoMS1lKSpwfSR7bX0pOwoJCQlvcGFjaXR5OiAke2MtdSp0fWB9fWZ1bmN0aW9uIGx4KGUse2RlbGF5OnQ9MCxkdXJhdGlvbjpuPTQwMCxlYXNpbmc6cj1heCxheGlzOmk9YHlgfT17fSl7bGV0IGE9Z2V0Q29tcHV0ZWRTdHlsZShlKSxvPSthLm9wYWNpdHkscz1pPT09YHlgP2BoZWlnaHRgOmB3aWR0aGAsYz1wYXJzZUZsb2F0KGFbc10pLGw9aT09PWB5YD9bYHRvcGAsYGJvdHRvbWBdOltgbGVmdGAsYHJpZ2h0YF0sdT1sLm1hcChlPT5gJHtlWzBdLnRvVXBwZXJDYXNlKCl9JHtlLnNsaWNlKDEpfWApLGQ9cGFyc2VGbG9hdChhW2BwYWRkaW5nJHt1WzBdfWBdKSxmPXBhcnNlRmxvYXQoYVtgcGFkZGluZyR7dVsxXX1gXSkscD1wYXJzZUZsb2F0KGFbYG1hcmdpbiR7dVswXX1gXSksbT1wYXJzZUZsb2F0KGFbYG1hcmdpbiR7dVsxXX1gXSksaD1wYXJzZUZsb2F0KGFbYGJvcmRlciR7dVswXX1XaWR0aGBdKSxnPXBhcnNlRmxvYXQoYVtgYm9yZGVyJHt1WzFdfVdpZHRoYF0pO3JldHVybntkZWxheTp0LGR1cmF0aW9uOm4sZWFzaW5nOnIsY3NzOmU9PmBvdmVyZmxvdzogaGlkZGVuO29wYWNpdHk6ICR7TWF0aC5taW4oZSoyMCwxKSpvfTske3N9OiAke2UqY31weDtwYWRkaW5nLSR7bFswXX06ICR7ZSpkfXB4O3BhZGRpbmctJHtsWzFdfTogJHtlKmZ9cHg7bWFyZ2luLSR7bFswXX06ICR7ZSpwfXB4O21hcmdpbi0ke2xbMV19OiAke2UqbX1weDtib3JkZXItJHtsWzBdfS13aWR0aDogJHtlKmh9cHg7Ym9yZGVyLSR7bFsxXX0td2lkdGg6ICR7ZSpnfXB4O21pbi0ke3N9OiAwYH19ZnVuY3Rpb24gdXgoZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWF4LHN0YXJ0Omk9MCxvcGFjaXR5OmE9MH09e30pe2xldCBvPWdldENvbXB1dGVkU3R5bGUoZSkscz0rby5vcGFjaXR5LGM9by50cmFuc2Zvcm09PT1gbm9uZWA/YGA6by50cmFuc2Zvcm0sbD0xLWksdT1zKigxLWEpO3JldHVybntkZWxheTp0LGR1cmF0aW9uOm4sZWFzaW5nOnIsY3NzOihlLHQpPT5gCgkJCXRyYW5zZm9ybTogJHtjfSBzY2FsZSgkezEtbCp0fSk7CgkJCW9wYWNpdHk6ICR7cy11KnR9CgkJYH19YXQoKTt2YXIgZHg9d2koYDxkaXY+PC9kaXY+YCk7ZnVuY3Rpb24gZngoZSx0KXtsdCh0LCEwKTtsZXQgbj1vbyh0LGBoZWlnaHRgLDMsMjApLHI9b28odCxgd2lkdGhgLDMsYDEwMCVgKSxpPW9vKHQsYGNvbG9yU2NoZW1lYCwzLGBncmF5YCksYT1vbyh0LGByb3VuZGVkU3R5bGVgLDMsYHJvdW5kZWQtZnVsbGApLG89Zm4oKCk9PmAke2EoKX0gYW5pbWF0ZS1wdWxzZWApO3ZhciBzPWR4KCk7bGV0IGM7cHIoZT0+e2JhKHMsMSxtYShbUihvKSxpKCk9PT1gZ3JheWAmJmBiZy1ncmF5LTIwMGAsaSgpPT09YGRhcmtHcmF5YCYmYGJnLWdyYXktMzAwYF0pKSxjPVNhKHMsYGAsYyxlKX0sWygpPT4oe2hlaWdodDpteShuKCkpLHdpZHRoOkZ1KHIoKSk/bXkocigpKTpyKCl9KV0pLGtpKGUscyksdXQoKX1mdW5jdGlvbiBweChlLHQpe2xldCBuPW9vKHQsYHNpemVgLDMsMjApO2Z4KGUse2NvbG9yU2NoZW1lOmBkYXJrR3JheWAsZ2V0IHdpZHRoKCl7cmV0dXJuIG4oKX0sZ2V0IGhlaWdodCgpe3JldHVybiBuKCl9fSl9dmFyIG14PUVpKGA8c3ZnPjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE4IDZMNiAxOE02IDZsMTIgMTIiPjwvcGF0aD48L3N2Zz5gKTtmdW5jdGlvbiBoeChlLHQpe2xldCBuPXJvKHQsW2AkJHNsb3RzYCxgJCRldmVudHNgLGAkJGxlZ2FjeWBdKTt2YXIgcj1teCgpO1ZhKHIsKCk9Pih7dmlld0JveDpgMCAwIDI0IDI0YCx3aWR0aDpgMS4yZW1gLGhlaWdodDpgMS4yZW1gLC4uLm59KSksa2koZSxyKX12YXIgZ3g9d2koYDxidXR0b24gdHlwZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdj48IT48L2Rpdj48L2J1dHRvbj5gKTtmdW5jdGlvbiBfeChlLHQpe2x0KHQsITApO2xldCBuPW9vKHQsYGljb25PcmllbnRhdGlvbmAsMyxgcmlnaHRgKSxyPW9vKHQsYGljb25BbmltYXRpb25gLDMsYG5vbmVgKSxpPW9vKHQsYGljb25TY2FsZWAsMywhMSksYT1vbyh0LGBzaXplYCwzLGBtZGApLG89b28odCxgdmFyaWFudGAsMyxgZ2hvc3RgKSxzPW9vKHQsYGZvY3VzYCwzLGBwcmltYXJ5YCksYz1mbigoKT0+bigpPT09YHJpZ2h0YD8xOi0xKSxsPWZuKCgpPT5pKCk/MS40OjEuMiksdT1mbigoKT0+dC5pY29uKSxkPWU9PntlLnN0b3BQcm9wYWdhdGlvbigpLHQub25DbGljayYmdC5vbkNsaWNrKGUpfTt2YXIgZj1neCgpLHA9Vm4oZik7JGkoVm4ocCksKCk9PlIodSksKGUsdCk9Pnt0KGUse3dpZHRoOmAxZW1gLGhlaWdodDpgMWVtYH0pfSksWGUocCksWGUoZikscHIoZT0+e2JhKGYsMSxlLGBzdmVsdGUteXdvZm1sYCksZi5kaXNhYmxlZD10LmRpc2FibGVkLHphKGYsYGRhdGEtdGVzdGlkYCx0LnRlc3RJZCksemEoZixgYXJpYS1sYWJlbGAsdC5pY29uRGVzY3JpcHRpb24pLHphKGYsYGFyaWEtZGlzYWJsZWRgLHQuZGlzYWJsZWQpLGJhKHAsMSxtYShbYHctZnVsbCBoLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJgLHIoKT09PWBzcGluYCYmYGFuaW1hdGUtc3BpbmBdKSksU2EocCxgdHJhbnNmb3JtOiBzY2FsZSgke1IobCl9KSBzY2FsZVgoJHtSKGMpfSk7YCl9LFsoKT0+bWEoW2BidG4gYnRuLSR7bygpfSBidG4tJHthKCl9YCwhIXQuZGlzYWJsZWQmJmBidG4tZGlzYWJsZWRgLGlzKCk/YGN1cnNvci1hdXRvYDpgY3Vyc29yLXBvaW50ZXJgLHMoKT09PWBwcmltYXJ5YCYmYGJ1dHRvbi1mb2N1c2AscygpPT09YHNlY29uZGFyeWAmJmBidXR0b24tZm9jdXMtc2Vjb25kYXJ5YF0pXSksZ2koYGNsaWNrYCxmLGQpLGtpKGUsZiksdXQoKX1faShbYGNsaWNrYF0pO2V4cG9ydHtkXyBhcyAkLGp0IGFzICRpLFNsIGFzICRuLGFvIGFzICRyLCRmIGFzICR0LCRfIGFzIEEsZ2kgYXMgQWksc2QgYXMgQW4sc3MgYXMgQXIsVGggYXMgQXQsS18gYXMgQixWbiBhcyBCaSxVdSBhcyBCbixqbyBhcyBCcixIcCBhcyBCdCxGeSBhcyBDLElpIGFzIENpLF9kIGFzIENuLGJzIGFzIENyLHpoIGFzIEN0LG95IGFzIEQsRWkgYXMgRGksbmQgYXMgRG4sX3MgYXMgRHIsTWggYXMgRHQsbXkgYXMgRSx3aSBhcyBFaSxlZCBhcyBFbixocyBhcyBFcixGaCBhcyBFdCxKXyBhcyBGLCRyIGFzIEZpLEt1IGFzIEZuLHpvIGFzIEZyLFpwIGFzIEZ0LE9fIGFzIEcsVG4gYXMgR2ksJGwgYXMgR24scG8gYXMgR3IsenAgYXMgR3QsTl8gYXMgSCxVbiBhcyBIaSxMdSBhcyBIbix5byBhcyBIcixNcCBhcyBIdCxYIGFzIEkscHIgYXMgSWksWXUgYXMgSW4sVm8gYXMgSXIsWXAgYXMgSXQsbV8gYXMgSixwbiBhcyBKaSxIbCBhcyBKbix6IGFzIEpyLFJwIGFzIEp0LGdfIGFzIEssQ24gYXMgS2ksWWwgYXMgS24sQiBhcyBLcixKIGFzIEt0LEdfIGFzIEwsb3IgYXMgTGkscXUgYXMgTG4sQm8gYXMgTHIsWHAgYXMgTHQscnYgYXMgTSxwaSBhcyBNaSxpZCBhcyBNbixhcyBhcyBNcixFaCBhcyBNdCxZXyBhcyBOLFIgYXMgTmksWnUgYXMgTm4saXMgYXMgTnIsaWggYXMgTnQsYXkgYXMgTyxEaSBhcyBPaSxsZCBhcyBPbixscyBhcyBPcixraCBhcyBPdCxXXyBhcyBQLFhyIGFzIFBpLEd1IGFzIFBuLEpvIGFzIFByLGFtIGFzIFB0LGlfIGFzIFEsUHQgYXMgUWksd2wgYXMgUW4scm8gYXMgUXIsT3AgYXMgUXQsVV8gYXMgUixjciBhcyBSaSxXdSBhcyBSbixVIGFzIFJyLFdwIGFzIFJ0LFB5IGFzIFMsamkgYXMgU2ksZ2QgYXMgU24seXMgYXMgU3IsYWcgYXMgU3QsZ3kgYXMgVCxPaSBhcyBUaSx1ZCBhcyBUbixmcyBhcyBUcixJaCBhcyBUdCxqXyBhcyBVLGpuIGFzIFVpLE11IGFzIFVuLFYgYXMgVXIsQnAgYXMgVXQsTV8gYXMgVixIbiBhcyBWaSxWdSBhcyBWbixIIGFzIFZyLFZwIGFzIFZ0LERfIGFzIFcsd24gYXMgV2kscSBhcyBXbix2byBhcyBXcixGcCBhcyBXdCxzXyBhcyBYLE10IGFzIFhpLFJsIGFzIFhuLHNvIGFzIFhyLElwIGFzIFh0LHBfIGFzIFksZm4gYXMgWWksVyBhcyBZbixjbyBhcyBZcixQcCBhcyBZdCxhXyBhcyBaLEF0IGFzIFppLENsIGFzIFpuLG9vIGFzIFpyLGtwIGFzIFp0LFJ5IGFzIF8sR2kgYXMgX2ksVGQgYXMgX24sTmMgYXMgX3IsdWcgYXMgX3Qsc3ggYXMgYSxsdCBhcyBhYSxWYSBhcyBhaSxCZiBhcyBhbixsbCBhcyBhcixVZyBhcyBhdCxOeSBhcyBiLFJpIGFzIGJpLHlkIGFzIGJuLENzIGFzIGJyLGlnIGFzIGJ0LGx4IGFzIGMsWGUgYXMgY2EsVGEgYXMgY2ksU2YgYXMgY24sUWMgYXMgY3IsVmcgYXMgY3QsSHkgYXMgZCxtYSBhcyBkaSxHZCBhcyBkbixXYyBhcyBkcixOZyBhcyBkdCxrIGFzIGVhLGVvIGFzIGVpLGVwIGFzIGVuLGJsIGFzIGVyLG9fIGFzIGV0LHp5IGFzIGYsdWEgYXMgZmksVmQgYXMgZm4sR2MgYXMgZnIsT2cgYXMgZnQsR3kgYXMgZyxaaSBhcyBnaSx3ZCBhcyBnbixCYyBhcyBncix5ZyBhcyBndCxWeSBhcyBoLFFpIGFzIGhpLEVkIGFzIGhuLHpjIGFzIGhyLFRnIGFzIGh0LGZ4IGFzIGksdXQgYXMgaWEscWEgYXMgaWksRmYgYXMgaW4sc2wgYXMgaXIsdF8gYXMgaXQsaXYgYXMgaixoaSBhcyBqaSxmZCBhcyBqbix1cyBhcyBqcixEaCBhcyBqdCxldiBhcyBrLF9pIGFzIGtpLGNkIGFzIGtuLGNzIGFzIGtyLE9oIGFzIGt0LGV4IGFzIGwseCBhcyBsYSxTYSBhcyBsaSxiZiBhcyBsbixVYyBhcyBscixMZyBhcyBsdCxxeSBhcyBtLCRpIGFzIG1pLHpkIGFzIG1uLFZjIGFzIG1yLERnIGFzIG10LGh4IGFzIG4sTyBhcyBuYSxZYSBhcyBuaSxxZiBhcyBubix1bCBhcyBucixjXyBhcyBudCxjeCBhcyBvLGN0IGFzIG9hLHphIGFzIG9pLHpmIGFzIG9uLG9sIGFzIG9yLEhnIGFzIG90LFd5IGFzIHAsY2EgYXMgcGksSGQgYXMgcG4sSGMgYXMgcHIsRWcgYXMgcHQsaF8gYXMgcSxPbiBhcyBxaSxLbCBhcyBxbixtbyBhcyBxcixOcCBhcyBxdCxweCBhcyByLHN0IGFzIHJhLEphIGFzIHJpLFVmIGFzIHJuLGNsIGFzIHJyLGxfIGFzIHJ0LHV4IGFzIHMsWmUgYXMgc2EsTGEgYXMgc2ksRGYgYXMgc24sbmwgYXMgc3IsQmcgYXMgc3QsX3ggYXMgdCxBIGFzIHRhLCRhIGFzIHRpLFRwIGFzIHRuLGRsIGFzIHRyLHJfIGFzIHR0LEx5IGFzIHUsdSBhcyB1YSxiYSBhcyB1aSxSZCBhcyB1bixLYyBhcyB1cixGZyBhcyB1dCxKeSBhcyB2LFZpIGFzIHZpLFNkIGFzIHZuLFBjIGFzIHZyLHJnIGFzIHZ0LER5IGFzIHcsa2kgYXMgd2ksJHUgYXMgd24sZ3MgYXMgd3IsTGggYXMgd3QsSXkgYXMgeCxNaSBhcyB4aSx4ZCBhcyB4bix4cyBhcyB4cixvZyBhcyB4dCxNeSBhcyB5LEJpIGFzIHlpLGJkIGFzIHluLE1jIGFzIHlyLFZoIGFzIHl0LFZfIGFzIHosWG4gYXMgemksSHUgYXMgem4sTG8gYXMgenIsVXAgYXMgenR9OwovLyMgc291cmNlTWFwcGluZ1VSTD1zaGFyZWQta2IxeXFIYUEuanMubWFw"}},"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":"fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.449Z","timestamp":1785159268449,"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://walmartfundholdings.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: 433452\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-07-30T06:17:29.119548Z","times_seen":284906,"resource_available":false,"data":"d09GMgABAAAAAB9AAAwAAAAAP0AAAB7sAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAIFUCuZ00SoLgzYAATYCJAOGaAQgBYNUB4QLG+oxRQdy2DgAyLbcS0TV5rjs/yqBGzLAPkyREBGREI4TMAKGY6ho/8mlE3lfKXPE5MdOFY4ooV9DLC/sdo35vTdCktmWiFqD7Jm9Z1RAARIOmHUqilx0FDkC4RCMexAmzDs8uK1/ag4y10gtEQQEQRlTBJnLAboBRZYKKYqJZo5ZOHZ1d17ZXl+tbnveWo3pjVXdaN3ql0tjbau3ioq2kxzJqu1FnBOk4f+/zuy9/w0n90qZLfotm4EPsrUehT0LGCKptepFwMqKwgMJL1IAOFCmFeKkoaI+P99dqZrtUqDmQWc6xFB0hhxquKhz7epwRxAg7yFmPwhRCVSiIshPoPTjAehEwolyDJ2/k7+yMz5nSk4hVq5clCEXnfv6K4fOqqYWysrqWIJCoHaG4eryvWM56yZpVy1bEyyBwiAR5O6lj1EAayVJ4nPRJYoCEGQNwJw4cRAWll9+/EPVbiKIdjCSkzZCt2VUtog/0Ke4N+DKgtyDGAVstYqT5TPE5TeJ1OBN4MCONQn/zwHT4qxrHwDPAfS0Xgbs6+SAAkbfdn586vAaloQzTj2T6wAbtFsNIfm91KXe7O190dAE6EYoDIqEZkEF0GMpMFgkLEZZTOiH2j0p76AoaDw0icv4TTXz2Twz355js/5/yEsvvnvxcOXCytmVMysnV46t7FoZW8HcO3936e67wMeL74RY3gb8xG54i9125ChjO5Bf61fQ3p+TH3++fLBiAoK7iu97ux/fOYkbQTaOj7VWfK9Org/4Wj8rfEgvGiMFVyXUAF+iOCwXrA0+5V/Dr9p3vhCGUlDq5C0MP9JrN1gbGCKCil9TGjMsSgKyEROyjJcZBCbYOEdzoD95SK1ZeLvLjs6pvpjQjUlfkgXsgH8NX2+GMEuxHeKK7snmKGXfUQlXuLvMED28A9pK8rg3DFxroW7ocGTCuoP3tedzu4sl+/jEc0TM9xMOgRdfh5MmLdqc2PAoDzfco6s23lWR6iY8fjipzoHqj5I5CqGEr5PTdVYIDnxoCyNtXLFkDy8hney5+Qxzfwr4nxCtz2LYat0guCLD8NR3WJWpDkIZYPsdQmo92x0FpBG2Vm5NF5Xk4HD8+WvNJe/IVclGu5gtVk4ppVm1467QAH/ABs5fntdXAnDsDaxCC7J8jWoDpWYTizcu4doVKal+x4qd2xtu9wganwnrhGPsuTOOjx/PdOH+EJsE1ulz3d8+0xjpnsH6tYUwldKQ1IdrjmP1p/5M0+tQ/giB1/YWVr9S2dyA8ptf6513wSO6EEP0gW47BAqlUhgz5I0Z5D2zTWL1zNXaEq60tPFVqr8cFsoOurFtHVYxNtFdaAmn0jyVRNnwXJuTL78wB03ywaoAK8ugWsqlaR6VNkQd01AkmTHPuDuRp9kIOXtvsc5FJ4VY2qbfX1s0f/64iBJe1wSmqomERbuXcG2i6Yl68GHU0pfE8dNWG6REHhsTbVsrf0JokKGph63idEI4t80h0vndsl6vt6kLeof4vcysA74h3MfEQ87RSbM2/i21Vup45j6gXNH0lczuAOXjnwKaivKklFYKLGDyZ0iHCscrCNLmxKHgCGGY/S4sk3RTLXuPAusytjEcW6DWITxxDZ/Gl/jiS03N0hTK9+pk0eWptnthWIhFhqeSdFO5VpKN2Qy625+jnklBU5niSfjndndgk5CBJrVFh4lrjRMBIdoXRpsOj5hybtkaKck3tP/nRIYDvaNiBtu+u7ZarvIT1aKtUSwdh39XNWmgrz79CqtL1K4Pr6hhpdK4/01OK2UqHdKQY4nBtnCEWrhxbuLeqtkyodzBkA4gxt5Xmr4AZTC73yiygN2CDrrQwnhNi6UJK7PdfRUWOSr2L9owc7fCvOQ0OORD+shssDsTqGqDPPaTtRwnmsp+QY+CdRv3ce9GKPtGo23pMLAyEtR54fFeR9Vr8IC0WQKhYrlPxCfExE6rx8tPaCMGl+gBQe4n13b9Hp88eL7NxPHwEElx1xgGFsraCCGfXQLh99KiJA7jOkM4i5RODXfshRkD28OwF/TL846WBw4U2wrMdw7KlweSPJrIRBJ9xlgiDZeLzYu9rvJ/PnZxWOHQtF/a9x1dehNyIlKVJ9A9XYM+hbiI14MtdXwKSXvE59g7i+BH2tBn4EEKn9Z19+amfCS6FNopu0p2W+o8yzDUNuf0P3IFiA3yjx30PcgXZx76chTkr3+GlWyXiNahFFMaRvdEpoNS103hSmhG1TUrKi149Hnh4wieiehrlZxm1g71s69QY4TsFVKIq1acF+TassOPnveEv9V/2nwjjx1ANtCEZUvSiVVncRzgzGedTLD2xBq0wZe+UZLw/jWsGqDECmJQMV62U3Ar9Ma1C2tzs/NvDPKK77/wnE81uf/c28H1cmL23clCiEJkEVEaU5wTSjTUQ1AOzcVwPw1GsDwTv+RGIZx5sycRxNpyIDbrr+a4uVh6NaUExv/o8hUo4VAtr1eV38cvzdH0yjpSWTY7FO7wxAkkaW8z6+HlNkds+9BAn8gwlzed0ZiWKD/ncLtAE+2m/JhHF7SH+jzChWOpdMf6wml3vlYSjf/WVBkfS9A0snCIS76uxqdPpoInNmnDwy4eiEIZOaPuC/TJo0EReHwlYUKfwkI8u6twGoN4vxGD/owz6KIDGyOnpI2vwX347jsuhQGoxcKin13ReB4iM938GSDs37yEa0eOHh4pDI4F9obHs0tSD+cbxdLvJy06cTo9aUE10qek7pYtzgdTSTDR9igcrmV2i83OpOab5FLrS5LSBaTyoH3J+Ntoozi5yXBzyPnQ2OX87ndNNLgxi/iemKnXF/gLd/zdbccZ3pZvR3t8jyfUpDDGirmEZOp7jKw9cQhK73G2BkHw09DgiMVX/0WS5YVhMg7EjpZyK5OTLQ3cbS18KO9HE6dpur+WZwrRkJKaw9/Bvsr6/AyvQONTbN46HMWd5FtXqKYL6eSuXhI9tpna/qyQQZmN+JykBTk8i4tv1dkzGe5NpC4gMTRocFRq3G7nqmlBBI1t687plzyl8v9UO2rng4TruG4muy54MKW9LA/BDDZ65IjSh+KSPg/p2G3/l3YKTdwNBK3Ldlmv++WK5FC1oHNhwCvFb9LNu4FmHu2nMaziZarNsEhqNtmQQUbK7syZdlLiHgnlXUOodRGtQ4rHoikK7oCyWfZ/0VCRuhrkuNEgOASBmT6OJVEn6qWnb+PewYLDL99PN4TYyIuZbl8uGfz7Xth37vDv0j4OhcNDkYiXPu+XCAD5amPwV/p1X8HWfbqBo29Cd27dsgt+uHeCC9Cjzmw5szVMbzkN298DuAC9bR1boBeu784LgDpJLjFnCdfkcvKqglrMPoXT/mJ+6BviiEJ4jlpY2FZXGZjLydUHNlQFFM5gMcuXZZE6WI5K6IzcXHac/Ari7PaTsJSZ2pMgtb5IKxIVaRXKpjZl59TA4kD/4phYpaYlXk1TMeJHigpEIl2BUqlrsuLCqEl5/AFi0NUqOqiQyww6r7KRnGPgCJV18pTdbXA8QVGWzs4pzkxXQwdA5IYkTsL6z6NOHo+I8qFXjAs91MpDB4Ytvx49bMCocfxsuglqA9+Y7fCDR51Yu34opM7agHh1R22CyRI6BKDvhhLl6I5X96gWDRlqoXb06MGY2VAOho8Tijsz3u6kspqi2EFrzKC9hKov16sDSyx1FMZus8VtA2rk5bd73r7s+fwq4M54Y3wJJx6UBTghP/Gds+E/WAft8IAMa3tnbKz9+Im29+jy3okxaaRphE4fSceTKSLMs3T67N8yBYAXdj66MVoEDK/p1fV2uYtO+pdIpPAgA37Nfa3WhpbNVar8oRqrTopq/N0KmG1dtTVSC5Gso+VwdJ+uGeOUSrKp5XayvH6o3s8xEH6fRrLisuUkzQbXhmF9eiY+E0YdBBlDDtFXe5eLPEXD3uGgox8TPgEb9YKjUiUUq6kW4mrZrq7tLQ399UGlA/1/EJhMKYudzWFiWs70HXsX7FNAMoQcB2hrLsVSuVU0ml0upjvqWAqruzRjX8vFLQsDNld9UEHXrvNiFpPJ47OobC49K5vPBGscEMdwcIVu83dAdr6OSi1ykDUaQfKhpNIoeUsWVmmOQGBqpsjlborAJMhhlZlXg/tJxP1E3Ht4/FXcgQ9EDCpRwGYy+TkEijCLAe7uHsazaWaPMw+O55jJTKvc2d3VMNx4/mIXdn+ttkJmoVPLaF2vnX2DymRzqFQ2j0bJ5rFAWveNe7fwqdsTgI54T4oH+ocOivint38kp2/eA84v2jdVVW4xW/0UrWsO4wrLcSwsHJuRgu1ZR9FbKWLzdRd/qD4ZOawtecWcRx+rKZaR/+tfKsWSFNoStZzVWacS6p53N2WEwMLjafGpeH58NalloqffNe+wXmlqG+/tN0phUaUVqMZNBwtKX7FMDPzxeHBGlTEPE6ZhvkIj2jaK09Bb08CfPbG4non/FvZ+eibzn5rguqUGwSVyPZtOLbBkinELULEZR84lszi5mtXZkliGwZQTO964OoLFnSFtuzQEYO+Wze0uMTWdbIbZ9tTrCAxWBZ1sEQnJ1go6i6Ej1u+B2U+43abdJWV7LODA/AFtyazNVvLqAa3j6cJTK6+5ua6u2eOo+qQKfC45+cD5YB7SMLU41QCezNfDz95z3kN5FwDm59Z8HJ2tp1EsAhHVYqRxNdUFYfI/azyeEElp66ispHpOtGopm+OSTO7jDVAL6J9f8KLT0d4hl5yeDD5fjWMB3Jq/b27aVGXyuKzedZ0o5FbMffDZCyrthyUwXtAPJxej9OBzx0/OhnsbIH23kIxLC+/ZF99baqmv3wl4m8Aub/bde95Fcb234gXIgL2l+jmLeUAcXlk1V1oxZ7ZUrJbIbtPTKTaRiGLV03JyDDQI+Mm2Geg5gHuYbNzE1DWt8y745NbT6Eb2+6ZGvLnB+ZETKDy29oWMSnEjy1U7+JmvnxVP0Dvn8P2nAo7vDOOFexcCcuvpdEO2UO1QRR9I2LK5ieEm4BsZTeBhQCOBXx42jTHiCe3I5MK+DfyoAmS2isdmlTrxkto+a0D5rqjhTDQkLUlg3siP0qJYai6doXfSlSB5vn5B6pUu1INP50+JpTK+QCoTnxo6WazwdLDUqnaW1FN8ElycX50/sjo//QbmCgaw5xbent/f9efAn3vB4sK0Z8PQhld7E1oTwM/T9wfuz97S3y3eM/1r/6+zNyvulgDn/IOlJ94nD5dmp9iTbPBVU5b7di3tGt3HAeLhrzY0tzY3PjeCD85FfG0diPjBCqzvPm88MDc8BycPjPwR3fd4cUf3OMB5VK+8F/xxzvSjtQFA7bzOBqGYXUY4rx7CDOUeqCCyRQ1iXpf2LB4l4SNRKC4iTUIkpsl4qEKYzRISeAAqCCzxiSJeh1bL62oQnzTjL6i9P3iDU0diUR5iauch06RxWUoEdAbJM0cCULuwo1WksfSZY8tmzg5gsoU6jVqoy9aul8/EFvfbzJpWkbBDpwq4XKnGjKXA4R+G83aUE7pT4Pp0iH1pU3Ipn6qC8mbi1P3mKk27SNSp1Qk7twjz1G18QVvuKMpfzqGRRexmwLtgvDh8MceVk2R26Rt93VBXZpwRlBLL8QfUQxlK1uZWUZF7ug5SsX2/BEtmySUy3YEKEksCWoDUNbpwX44JLhKMVKpdLvQSeVwRI4sn4hG9P3hX9xan0YC5ZqpKIBCf9yjgYrwYUF0zfq2NYKmsRKNlN6dBdyT1ecHQ4oOH59z2z9+/8CTmWRT4/Ptig34AlDPEtrZNQi+RyxUwGDwBl3jFZK0NxsufK0CRuNXUMyfNjGxwk9Dyo0USfHKNhGd1aWRwP2irSNKp1co6O0UajYVkeQ0VnV2iXEQLLxUlpajzCrKzNQVqtYqzgweri0Rrf9tYZYT3Cr1EryZ19EftVkFHk1jMLMGekQwRhwrOlmcyRY0Sfmf+WQJaykMgEcmAlpBIaJmgQlAh/mI/WA0E+gSCx2Mpo70Yrw58HVSDZ+fDhnJs6LTP1ifa37irSqZz6RlkeWU6v6qp0j+/DxqARm5fn9R24ory2M8LwD+DGB74+cK6pENQrrvo9LFgnos3ODTY5gJqNGZItFeXRuJWUel2mdBLwAS4W0ACSO/YfmjqY/SRj9DTgJyH2YOeMXWZunbMoYeN+237Jy37jPtAc/1R09HpczEXomY3Hak+Mn0+6mIM0KFjXPip5qg7ia8Nd412gXcb/nZN1z8SPnKN14O6PU+CEZggFaQ8XVWmUwrdGDYzKTAfEliWSiEJpb4ykoAKCywLDsxPTL4FxTQLlWU6FRZSHqRCI4KfgJXNQ3uGQDk+GIFmZ7CGZgz0VnJiD8FuMCpJIPOVkoSU1A4gfUlMNsYNdekezFrVATyntFS40fd0XUhkQmaONdxQVu7+3VtDv02FV5nBVbrnUaQX1sL61R323QxwOHrGugLkjVWFgVqO1gFpGaqtNUShQDtUQVVzV6yomC1WCoX20WIDZu2mH2PEH6FLBIHJTkN+FJ8myKq0kYTORo+vvjPsL1KmJSthbu6SYW9yUDq0IALcYYU0D/72DY1+/s7Ogfss1v937lydZDAmVwc3B+fMVfjgMh7B4Y8yMlbg4MaOBuM+HxgPsmxcHvQO+lpDYPx9wNgwDZ2dFE4IZ0HARJp3xLs9Qn+kYBU2hycrTTiBsanCR+P1V0qQo8mxuznQX0rgRToOmaaeVlOOnzbGgpifrZ7wj+scgbAPhaqMILNGm5Skm8B8w+qk11Zm8Ps7syVFc1arIVaZLZXZUkzslYm3lZfJ7r2KkmIEtqzcvUdWkqOqotHNAgHdwjdHjtJZEC5sPToEyyDzOBwyNwP6yfbWcLEjTwUSRdhcOTYjrzujVl+Li/0QnanEYfMoDhwfgSDhcCQEgo8DPc2FJ9479Jae2EFedCLc87imwH3+ibf/7VrAftdAoRjYLIreQGWxzEDVs9hUwz6fJW7SFUmkeGkk2iKpVFsoKT+jRpFyVRhZgJx/1QafTnZFQgNngsIioKD/lqndBBIMtfpCXY0hN6/WSDdjXlxmdCo8moD3G9zheDBZ23bJ89Jzue2yqAO9A/k/BZg8d0ybrKlX/PBLbCQlPFlQC1fnCLGrbU/9qwPEDWpYkpw8Jm5j7FW/f6QbsVoaX6ZhIWq1qKjGyMjJWDgjORMZkReF0JjBH/M/Wk0/ukEJGjOkfaUoMwv7XfR24nYClydkMHhCLgGom1Vc1ebYSLfbXZpFrLDRNTzwBUZGo1AVDPpwXnP8UGSkN57dXkQEUXV5+ww1oSBRSMwtwjIYxVhCLpVCzC3GMRhFOEIuJREHR6T6ZeJ8U1OJOOBFlpzoMSpgxIckSGWf2CNF+0Lf1oUHLRhuLfdK1uSPUyuYsfGisWJQXsc4+cA+LG1Z7Nu8qLKgcGpl9myrHFzs+3y/K550bg33Stbwj7tW0sdmimdKwGZK8hh96HqxDEX8UGzKhIBVce6X2l+uBDgnup8Juna6Fh47xsvNi9Xgkjv3vM8b9dON1WvRNOwe2KYiiLdCvVNvyV5HgZPZ6pPyLFnkEaU8s4ibWx2OZk9d1bGDnoPHq8A9z9jY6GhJyeiY1+us1+spnXVsHEypZnEt4oJwOdkO+JtbjFV1r2d4RGb9zgLrYJ/XGIUnZJkKkSyTU4/kSoqkWVrg9QIugqzPFQu2eRe3D7ivP1161rK1n0DoZzi/dAKSiWly07WyOjxdk0l4o4qHDI6w7ZMn8FUs5aZyg77RCCnqRywg4fKkJF54fpKElZkCD/t4f1zqAIHtzYrzIgA3d53yaHsen4z/6tOZWPUWcwnLRFjO68j7RU9gFgbPgJbX0SSUNvJ0qnZVdjmaJWsQcNrUo9AgNT+bpuHtfP55geBMKhy+GdDnWC+fidZsqi6AoEz/QLj4ELOMvlmpK5+WAxL5nCNlVtl4pzRf0xHHa5Z0tAoVytvubhecI4pt+anvQ7MTxuFFt0K5qSgZlWqIbQjkU+Q8tkajZYLUPwJo7OdKz0vPLfvOtCD266cwIyM7KDZIiMVaRf6zlA0pHOZZJSHZtRfEsZ99J8PnCyMS8bGffhefgSwhxgcerg4J2eImMb8jP5/f1SQWZxdTPq32PvSGp257JFORaZ+SygEhF6TJSOAqOjNal4fTD2oeXIY4p8rVleM++tnSsrlfWBAXXiF2ETqKpxwQBpFiyfIPsQiFFAvKCwA5uQG0KbaITysHYWAhXCsZz9lE5mo6Sh7oGsapI+kza0i88hBal7xhrUxAp4j5pc8/5yFQMgrFZA5V5I/IuQa1WscEs/sm882TmgmNGTzawWMTCXw2mSwqgcgTsyB2ITp6IS7m0rABl2JA+G4Ohxjzf+aX0YgSeRB3rbZ3YhA1slkaOF5xQ92Akt2P+rid+WSy5rmR4YOJq24geu5e3FP99PP98T7/zBA/t0YOmpa/eKo+glI/NQMnVY1CqlMFKiJYR69lAcJHA4uD/YvgyRM3E0Z2Gz9hLrFp87kOWI02Xxi3LjTu4nxd/hSd29rcdKIZZts9osUzWBW08Tfzb8SFros7nv/WuJ7BAvGfQ/KuC7UJuf6/3PuMPrfvuC0u+eHHCsP2gm9LvwW/v+I+5AagrgMOiACsEgHkZSgR1mcXX2F7gQo/LFjoeYhJHeL73tgG181fssxfdoRvd3mn991n0vh8A1w3f0ntTnaVDJbPF8R185fmbzvZ579CUIo5xxBvyE8AcN38Jff5yz7ZyW6FofP5bnDd/CVXFHvHSjYRs+gRzDzwfQlUXDd/yQX+sp18u2PK+25lJEN8Z/gC181fMr2Tndfz9lDxN4KrE7l5ln7Zyv6lkqsM87qS12Hr2wJrrpu/5AB/2eBOdq8qRVjAsgRcN3/JsZ3s5pgyvtsxv12fvz7uPyjCrcaXi1By5Yns8uRK8FIYnHNz7r1++4QEAHoeEAeTP7Ibdv7repnQ0+Of0g59VyRP3csOCUDfGpeb+p31rvquc/cFIZAT43L9TtqlUuhPEavY/BvyvpZvPvScBkKXPj9c4PPf/t6Vqrw7JfB34UNzKfDuFHBAMNBH5ixl/t3KgQVv0Lb9TnkEDOemJCMDvGsX0SfiAf8PbMPOF0fIkRG0+rjpnD7SIXdzvwOL3lTZIFXesG37a/ofHLkpzcCCN6ioj/j//3cLawSEdWFarnjaBde9SzriNYgpz6Vxlg9gScDRtzuZ+rDs34L8/H4BOPbm4fcA4ORO6icvvn1xEvLpwges4gsgwO9zRtdcarD/0vGO/WXvE3lq8ve3a5EHlKYWYjRL6DDKYOW5rQVw70DkRzX4K4psABB0Tp6XwiomzhqAzU8Q7UOJXWrZsC2E65TM9lC3g7Cp4O2W1QbcBAJsBNCVUPc7htIUNwFsSSTuxxLaTTgAONhPCBtN2MhNX2JzWVI7I/BRaMRivccDIsBr8ERB50taI1K5oJ3H7/tCFwB29gRk2wSXg5hH+vvU8fzJ0UNSRqyahIG1PSDFNGFLQADYsikWs6JTXctU6ZjfV6KGvsQTHsq2HYwFDsQyyfwUqPRYXx8fp4XWDoXAJglqOf98D5n/c4SiAIO51YDiPs/OoHUYqgTZak4oFWwVSU2etSMCJp9KKgTgehgaoOuLy7i1uSSx++THamOqRfhPj/WRdxdoQgEpKGv9IDpvs86d2JsQfQYx0qGFpmN+Qe/ZcRikgmgb7J1Ykb759+DDXhXogpLQ3lmVpPFusFYYsLv0XkPG7AJrdqGQ2sEGewcm3jdfDD5uuxQXlIbCAdJ6xNQ2wIDdhZtxBEa+4MGXJCmJkhaWtf4VlC3Iv0I9XqeuhZMP53kuNHcy3FlqloRlhakXYZMNZ8smlg86ksUNhfWlEg+L14AP4IRR6zQK4MPXRgGAhwCDL2A1Mz8+CwQAr/u4OsQH1LFDfIWaPcQPm6F8zelD/K2lOyQAFDUUessBp1ob34ff5MrKFJirarDtQo3Zn+EK1UrO2WBpFatFCo1zPGCTzfFThcuvrrPxnLUmcgYeT5YWiNRMKEODUPxoZcpV0vPSg2dpqjU2sFL+A21RnVq06oMS8e9paMHOuVoB/BBqkJC9TquI09wmUqu2+JRzGj5NFttjuqnylqty1lXwVdrshNFhamhBqW6y7Yrm6+V05zuIzn8CSH38gN9fAf1vIAjEWsHWCREqTLgIkaJEixErTrz1EiRKssFGyaBSwMClQkBCSYOGkQ4LJ0MmPAIiEjIKKho6hixM2VjYcnBw8fAJCImISUjJyCkoqahp5MqTr4CWTqEixUqUKlOugp6BMWvAXj16XTbtF32Gbfeaw/bFH2xzU7cJjz0xlAAw4B13PTLriGee+suc4z7wvhMqVRll8pFqyz70mY994lO/MvvK575wksWfxlz1tW9YPfCbQXY2NerUctjNqd4mNxKXfhbcmt23mUeLVlu0+Z89tmrXodNDv1twzSmnEwiuu+OGM8664KJ3nXPee/oddcUbLiUIeP0RyBrVzQqFL/+GwKaHbXg8F994BVvzKDqRx1/zv4vxmk4kEigAAAA="}},"time_used":29,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":7,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/EU.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.428Z","timestamp":1785159269428,"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 /country/EU.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"e9173ef4613c3da43c45885ea39c4b96\"\r\nlast-modified: Wed, 08 Sep 2021 09:01:40 GMT\r\ncdn-cachedat: 08/14/2025 09:10:20\r\nx-amz-id-2: IGvrac7MqHxUh1QiyHa7TlaNCW1ovet751MtaKlEOhnFUg/Ve+TJ7dFFdzEvBETD3+Js36nYc2s=\r\nx-amz-request-id: ECGH90GHNAD03QXR\r\nx-amz-meta-hash: e9173ef4613c3da43c45885ea39c4b96\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 919252abd6d9fbd7d41e20637e12e051\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":870,"size_decoded":1356,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (870), with no line terminators","md5":"e9173ef4613c3da43c45885ea39c4b96","sha1":"218b28ec16584e3f2326b778d3cca1d5c6a682d1","sha256":"b47993af3ef9963a193ddc9d0bd10fc8f1f773fe0881ffa3c8d2151498fccf03","sha512":"00d7715020d6aff8cb33c0816f82fad776e93a11839ebf322e782d322c40e34b5f38cd0ec5fc20f5b9539d398fb7fe2a790779eabe23b473da197bead805c302","ssdeep":"","tlshash":"f8115c6b4308d6384885ca21edb658052653bcfaa8ce2adff1969960b5478c7b400f18","first_seen":"2023-04-19T07:58:06Z","last_seen":"2026-07-30T06:08:06.592089Z","times_seen":6202,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDBoMTh2MThIMFYweiIgZmlsbD0iIzE1NjVDMCIvPjxwYXRoIGQ9Ik04Ljk1IDJsLjM3IDEuMTRoMS4ybC0uOTcuNy4zNyAxLjE0LS45Ny0uNy0uOTYuNy4zNi0xLjEzLS45Ni0uN2gxLjJMOC45NCAyek00LjA0IDQuMDRsMS4wNy41NC44NC0uODQtLjE4IDEuMTggMS4wNi41NC0xLjE4LjE5LS4xOSAxLjE4LS41NC0xLjA2LTEuMTguMTguODQtLjg0LS41NC0xLjA3ek0yIDguOTVsMS4xNC0uMzd2LTEuMmwuNy45N0w0Ljk5IDhsLS43Ljk2LjcuOTctMS4xMy0uMzctLjcuOTd2LTEuMkwyIDguOTV6TTQuMDQgMTMuODZsLjU0LTEuMDYtLjg0LS44NSAxLjE4LjE5LjU0LTEuMDcuMTkgMS4xOSAxLjE4LjE4LTEuMDYuNTUuMTggMS4xOC0uODQtLjg1LTEuMDcuNTR6TTguOTUgMTUuOWwtLjM3LTEuMTRoLTEuMmwuOTctLjdMOCAxMi45MmwuOTYuNy45Ny0uNy0uMzcgMS4xNC45Ny43aC0xLjJsLS4zNyAxLjE0ek0xMy44NiAxMy44NmwtMS4wNi0uNTQtLjg1Ljg1LjE5LTEuMTgtMS4wNy0uNTUgMS4xOS0uMTguMTgtMS4xOS41NSAxLjA3IDEuMTgtLjE5LS44NS44NS41NCAxLjA2ek0xNS45IDguOTVsLTEuMTQuMzd2MS4ybC0uNy0uOTctMS4xNC4zNy43LS45Ny0uNy0uOTYgMS4xNC4zNi43LS45NnYxLjJsMS4xNC4zNnpNMTMuODYgNC4wNGwtLjU0IDEuMDcuODUuODQtMS4xOC0uMTgtLjU1IDEuMDYtLjE4LTEuMTgtMS4xOS0uMTkgMS4wNy0uNTQtLjE5LTEuMTguODUuODQgMS4wNi0uNTR6IiBmaWxsPSIjRkREODM1Ii8+PC9zdmc+"}},"time_used":110,"timings":{"blocked":-1,"dns":54,"connect":29,"send":0,"wait":2,"receive":-1,"ssl":18},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_68x28dp.png","fqdn":"www.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":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.713Z","timestamp":1785159269713,"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 /images/branding/googlelogo/1x/googlelogo_color_68x28dp.png HTTP/1.1\r\nHost: www.gstatic.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 1597\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:18 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:18 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Fri, 30 Jun 2023 18:58:00 GMT\r\ncontent-type: image/png\r\nvary: Origin\r\nage: 433451\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":1597,"size_decoded":2271,"mime_type":"image/png","magic":"PNG image data, 68 x 28, 8-bit/color RGBA, non-interlaced","md5":"c4a931d597decd2553aac6634b766cf2","sha1":"6ec84fb4a2745b4b71520241be77db1fd1013830","sha256":"f56402b127698db4b4dc611a97a6f081d04c4691c60522c5912d189e37c94a9e","sha512":"4932e0f7f38085a7c52539bdd5c7f470740e560a4471bea30d12ef9e3efe77f6bbfac28d26c62a245c43d98ebf74c824b2b414843080a27edf1563a5f874ac84","ssdeep":"","tlshash":"7c310afff39e8cec419e764069ba5965a362cd68233e928f14499592e4d007710f5f41","first_seen":"2023-04-05T08:27:37Z","last_seen":"2026-07-30T06:08:30.839679Z","times_seen":18811,"resource_available":false,"data":"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"}},"time_used":16,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/img-bg1.jpg","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.428Z","timestamp":1785159268428,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/img-bg1.jpg HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"11ee1-66136805-8038ce783fa3c78b;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 73441\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":73441,"size_decoded":73770,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 1349x430, components 3","md5":"0b1db3085409120bc4599ed7f86a6344","sha1":"2a96abb49f729d307809669c3dab137223f2f3e3","sha256":"144eef6a5f20b31f2673a2dc3e41975a420affd1f86dcb8881cdf40a79da035e","sha512":"90f980c8658d74e09268dedbdf14627f63793d7f09724720249ad532196daeb9795fe96f72f63fdc60a08412aad425246abf3d7a6130cd9bd45cfc21a8851387","ssdeep":"1536:jlUVDV2F0PKr2hVvYPvAZ6ueyvtgEHgr1FlYzlzXTx14Vn:BkVZ423vYQPeyVgE2Fcl/xI","tlshash":"db73e0a5f496471f29442d8c8edc2a48e67e02e444b7e76eb2ef4cc9cbd02af1954127","first_seen":"2026-07-27T07:08:39.379763Z","last_seen":"2026-07-27T13:35:41.707576Z","times_seen":3,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkU5NDdEODNGMUI3NjExRUM4RjgzQUY4MUQyN0FEOThCIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkU5NDdEODQwMUI3NjExRUM4RjgzQUY4MUQyN0FEOThCIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RTk0N0Q4M0QxQjc2MTFFQzhGODNBRjgxRDI3QUQ5OEIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RTk0N0Q4M0UxQjc2MTFFQzhGODNBRjgxRDI3QUQ5OEIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAGBAQEBQQGBQUGCQYFBgkLCAYGCAsMCgoLCgoMEAwMDAwMDBAMDg8QDw4MExMUFBMTHBsbGxwfHx8fHx8fHx8fAQcHBw0MDRgQEBgaFREVGh8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx//wAARCAGuBUUDAREAAhEBAxEB/8QAuAABAQEBAQEBAQEAAAAAAAAAAAQDAgEFBgcIAQEBAQEBAQEAAAAAAAAAAAAAAQIDBAUGEAACAgEBBAUHCAYGCQIFBAMBAgADBBEhMRIFQVFhcROBkSIyQmIUoVJygpKiIzOxskNjFQbBU3MkNETwwoOTo7NUJQfRw+HS03Q18YSUVeLjFhEBAQABAwMEAQIEBQUAAwAAAAERITECQVES8GFxAyIyBIGRsROhwdHxQuFSYhQFgrIV/9oADAMBAAIRAxEAPwD/AE74j/OPnnPKniP84+eMh4j/ADj54yHiP84+eMh4j/OPnjIeI/zj54yHiP8AOPnjIeI/zj54yHiP84+eMh4j/OPnjIeI/wA4+eMh4j/OPnjIeI/zj54yHiP84+eMh4j/ADj54yHiP84+eMh4j/OPnjIeI/zj54yHiP8AOPnjIeI/zj54yHiP84+eMh4j/OPnjIeI/wA4+eMh4j/OPnjIeI/zj54yHiP84+eMh4j/ADj54yHiP84+eMh4j/OPnjIeI/zj54yHiP8AOPnjIeI/zj54yHiP84+eMh4j/OPnjIeI/wA4+eMh4j/OPnjIeI/zj54yHiP84+eMjkqCdSASd5gw84V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBg4V6hBh7AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBA8LqOmEtZNkabh55Ms3mxfJu6Dp3CTLN51PZdcfbbzzNrN5VLYznexPlmaxU1gmWancsNxIkZZHKyk9S517mIkzU8r3BzvmtXq5DHsYBv0iPOr/d5Tq3q/m/OrP41SWjs1Q/0j5JZ91an7m9V+N/OXK7NBer47dZHEvnXb8k3Pujpx/c8bvo+xjZuJlJx49yWr08JB07x0TrOUuzvx5S7NpVICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAmEy4JJkZtcNCMmEiMmEjLFxIjBxMs1O4kZqewTLNTWCZZqWwSVmprBM1mpbBM1mp+Oypw9blHG5lJBHlEyznD6+B/O/NsQhcjTLqG8PsfTscf0gzrx+/lN9Xbh+65TfV+s5T/NfJ+ZEVpb4OQf2FuisT7p3N5J6OH28eT2fX+448vl9idXYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcW3U0rx22LWnznIUecwZT/xTFb8oWXdtVbsPtAcPyyZTyPjrj6uDeR1/hD9awRkz7Hx9g9fDyEHXojfqO0ZMuq+ZYTuE8Tw7DurtBrY9wcKTGTyimVSAgICAgICAgICAgICAgICAgICAgICB5DLwwjgyIzYSIyYSIxcSMsHEiJ3EyzU9gkZqawTNZqawTNZqawTNZqWwTNYqWwSVmpbBM1mprBM1mvt8l/njmnLStWQTmYg2cDn01Huv/QZ14ffeO+sd/q/dcuO+sf0Lk/PeWc3o8XDtDEfmVNsdPpL/AE7p7eH2Tls+j9f28ec0fQm3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBI3Ma2Ypio2U42E16cAPbYfR82pkynk88DPu233ilT+zoG3y2MNfMBBitKuXYdTca1BrP619Xf7TamMGIolUgIHNlVdqFLEDod6sAQfIYEhwbaPSwbOAD/L2EtUe72k8mzskwmOzXGzFuY1OppyEGr0tv061O5l7REpKolUgICAgICAgICAgICAgICAgICAgIHkI8MMuTIjNpEZMIRk4mUYOJGWDiRlPYJlKmsEyxU1gkrNS2CZrNTWCZrNS2CZrNS2CZrFTWCZrNS2CSs1xj5eVh5C5GLa1NyHVXU6GSWy5hOV43Mf0b+Vf5/xuYFMPmXDj5p9FLd1dh/1W7P8A9J7fq/cTlpd30vo/dzlpy3fsZ6nsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSPzAOxrw0+IsB0ZgdK1PvPt8w1MmUz2TXfD8fDzC/wCIt3jDqBK/7teJm+tskS+7dbs91C4+MtFY2BriAdOytNflYSrq6+Dyn/OzH+jSq1r/AKz/AHowYP4VhH11a09dljv+sxjB4w/hHKv+kp7+Bf8A0jEPGH8JwB6lZqPXU71/qERg8Y8+FzatuPlFx/V3gOPIy8LDy6xgxXqcw4HFeXWcaxjorE8VbH3X2eZtDGTPdXKrHKxK8hRqSlqHWq1fWRusf0jpksSzLjEyndmx8gBcqsasB6rr0OvYfkiUlUyqQEBAQEBAQEBAQEBAQEBAQEBAQEI8MI5MjLNoRmwkRkwkRg4kRg4mWansEjNT2CZZqawTNZqWwTNZqWwSVmprBM1ipbBM1mpbBM1mprBMs1NYJlmpnEjNfuP5M/8AILY7V8u5xZxUbFozG2lOpbD0r29Hdu9X0/uMacnu/bfu8fjy/m/pYIYAg6g7QRuInvfTICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYZObTQQm2y5hqlKbXPb2DtOyTKWvmtfdmMVIN67jj0HSkf2t3tdoXzGRnOVDY/BUDm5K0UDYKKT4NYHUX2MfJp3QuO72jLwqk4MHHexf3NfCpP024FPnlySzo18fmb+pipWOu23b5kV/0xquacPNj+0x0+o7/wCukamp4fNh+3xz2eC4/wDdMamp4nNU9amm0e47IfMykfejU1efxOlDpko+Keu0eh9tSyfLGTyWAhgCDqDtBEqvHrSxClih0YaMrDUEdoMCErdy/wBJOK3BHrJtZ6h1r0svZvHRJszsuR0dFdGDIw1VhtBB6RK0nzcZrVWykhcmk8VLHdr0q3utuMliWNMXJTIoW1QVJ1Dod6sNjKe0GIS5ayqQEBAQEBAQEBAQEBAQEBAQEBAQPDDLkwjgyIzYSIyYSIxcSMsHEjKdxMpU9gkrNTWCZZqawTNYqWwTNZqawTNZqWwTNZqWwTLNTWCSsVNYJms1NYJlmp3EjL9r/If89HBevlXM7NcJjw4+Qx/KJ3Kx+Z+ju3er9v8AfjS7Pd+1/deP48tn9T3z6D6pAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDx3RFLuwVFGrMToAO0wPj384uyWarlykov5mSdAB3Fti958imZyxeWdmONj1OCAGzmY6uKyVoJ63tY/iec/REiSPpLi51igWXDHrGwU44GwdXGw/QomsNYp4PKcNvEsNaW/1tzgv9pyTGhiR1/FsA+rabP7NXs/VBjK+UP4nj9Fd57fAu/pSMnkfxXEHrC5PpU3KPOV0jJ5R3TzDBubhqvrZ/mBhxfZ3xkliiVQgEaHaDvECJuXmkl8FxQ280nbS3evs96/LJhMdmuNmi1zTYppyUGrUtt2fOU+0vbEpKolVAR/D7uIbMG1vTXoqdj6w9xjv6jJszsvlaRP8A3XPWwbKMshLOoWgei31gOHv0kZ2q2VogICAgICAgICAgICAgICAgICAgeQjwwy4aRGbSIzYSIxcSIwcSMsHEjNT2CZZqawTNZqawSVmpbBM1mpbBM1mprBM1ipbBM1mpbBM1mprBM1mprBIzU7iZZqdxIy/pP/jb+dDZwcj5jZ+IBpg3Md4H7InrHs+bqnt/bff/AMa+n+z/AHOfw5fwf0We59EgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4zKqlmIVQNSTsAED4HMv58/lnAJVsoZFg/Z448T7w9D7048v3HCdXn5/uvr49X5zM/wDL1KkjD5a7joa6wJ91Q/6Zw5fvO0ebl/8AQnSPlW/+Xefa/hYeKo94WN+h1nO/vOXaOV/+hz7RkP8Ay9/MoPpYuGR2JaP/AHDJ/wC5y7RP/wChz7Rjd/5Pzsu0HPw1sqXQpTU7VoCOlhoWb7Ql/wDcvWH/AL9u8fd5d/5G/lR60XMqyBYunDU6J4Cn3VQ8PlYazrx/dcLu9HD979d3y/Ycv5i/NKfFwcrGFH7lvHYdh9UKezQz08eU5bV6+HOcppYq/hlb/wCIuuvPSGcqv2a+BfkmsN+LanBw6dtNFdZ61UA+eMEkbSqQEDO7HovXhurWxep1DD5YLE/8ONW3Dueg/wBWT4lf2GOz6pEmE8ewM+ylgmcgp1Oi3qdaie87VP0vPGUz3WStMcrEryEAJKWIeKq1fWRusf8Ap0yWJZlniZVjO2PkALlVjU6eq67g69nWOiJSVS6JYjI4DIwIZTuIO8SqkwXep3wbSWaocVLne9R2DXtX1T5+mSJOzfKx1yMeyljpxjYw3hhtVh3HbFWzLnByGvxkdxpaNUtXqdTwsPOIiSt5VICAgICAgICAgICAgICAgICAgeQjwwjkyMuGEIyYSIycSIwcTLLBxIlT2CZZqawSM1NYJms1NYJms1LYJmsVNYJKzUtgmazUtgmazU1gmaxU1gmWamcSM1g4mUY8T1uroxV0IZWB0II2ggyMv7Z/In81Lz7lWlxA5hi6JlLu4vm2Ae909s+r9H2+c933P2v3/wBzjrvH6Wd3pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQASToBvMD8rz3+fMPD4qeXqMvIGw2fslPeNreTzzz/AGfuJNtXk+391Jpx1r8BzfnPOOaMTm5DOm8VD0ax3KNk8fPny5bvn/Z9nLnvXyWo7Jzw5YZNRJhMM2pkwzhm1MmDDNqpMJhmapMJh1jX5eJct+Lc9Fy+rZWxVh5RLLZsS2XMfseRf+Sc2qxaueG7Kxzs8amxqrF7wpUN8k9X1/urP1avd9X72zTlq/pXK25BzXFXKwbjk0nefFtJB6mDNqD3z38OXHlMx9Phy485marP4Vg/MYdzuP0NNYb8Yfwykfl231911hHmYsIweLz4bmFf5WX4g+begP3q+D9BgxT4+2n/ABlDVL03VnxK/KQAy+VYyme6quyuxA9bB0barKdQR2EStPWVWUqwDKRoQdoIgQmu3l/pUg24Xt072rHXX1r7vm6pNmdltdiWVrZWwZHGqsNoIMrTHNxWuRXqITJqPFRYevpU+624yVLHWJkrkUiwAqwJWys71ddjKe6IS5ZcxrcIuVUNbsY8aqN7J7aeUbu3SKclNdiWVrYh4kcBlYdII1Eqpa/wOZ2V7kyl8VP7RNFfzrwnzydWeqyVogICAgICAgICAgICAgICAgICAhHhhHJkRw0IzYSIxYSMsXEiMHEyzU7iRmp7BMs1NYJGamsEzWalsEzWalsEzWamsEzWKlsEzWamsEzWalsEjNT2CZZqdxIywcTKLv5b59kci5xTn1alFPDfWPbqPrL/AEjtm/q+y8OWW/p+2/Xyy/t+P/MnJ76K70uK1WqHR3rdQQdoOpXSfXnOWZfe4/ZLMq6eZcvu/KyanPUrqT5tZctTlFEqkBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQM8nJoxqWuvcJWg1ZjJbhOXKSZr8F/MH8xZnMi1NRNOFu8Mes/a5H6J4/s+y8vh8/7vuvLSbPzrY/ZOOHmwxbH7JMJhk1HZJhnDJqOyTCYZNRJhMMmokwmGTUSYTDJqZMJhm1MmEwzamTCYVco5tzPk+YuXgXGqwesu9XX5rruImuHO8bmN/X9nLhcx/Wv5W/nn+OVlFxVXMrGtuOtoDEfOQOFBH1tk+n9P3zn8vr/R+5n2fL7/8AFKE/xCWYvbaui/bXiT707ZejyVo6OodGDKdzA6g+UStPYEdnL+BzdhN8PcdrLprU599P6RtkwmOzvFzRa5ptTwcpBq1ROuo+ch9pf9DGSVTKqCwfw+02r/gbT+MvRUx9se6fa6t/XJszsvlaQ3/3TMXJGyjIIryB0B91b/6p8kjN0q6VpFgfg234R2Co+JR/ZWEkD6raju0kjM7PeaehTXlDfiuLD9D1bPuMTFOXdZK0QEBAQEBAQEBAQEBAQEBAQEBAQPIZeGEcNIjNhIjJhIjFxIywcSJWDiZZqewSM1NYJms1NYJms1LYJms1LYJKxUtgmazU1gmazUtgmazU1gmazU1gkrNTuJlmsHEyywcSMv6V/wCK/wCa6kxreTZtmnha24jEE+iT6abOo7fKZ7/2n2/8a+p+w+/Txv8AB+8azkOWdGbGuY7w3Ax8x2z26PoaV5/BOXjbQHxz0Gix0HmB4fkjB4R78DzKr8jPLgbkyEVx9pfDaMGL3efE83p/OxEvXpfHfb9izh/WjUzXSc6wOIJczYth9jIU1/K3onyGMnnFqsrKGUhlO4jaDK09gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc22pVW1lh4UUasT1SWluH4vnXMLuYXbdVx0P4df9J7Z5ufLyeD7ed5X2fJbH7Jyw44ZNj9kmEwxbH7JMJhk2P2SYTDFsfskwzhk2P2SYTDFqOyTCYZNR2SYTDJqOyTDOGTUSYTDJqJMJhk1MmEw6xrcnDya8nGsaq+puKuxdhBES2XMONsuY/sn8n/zVTz7B9PSvPpAGTSNx99fdPyT6n0/b5z3fa/b/fPsnu+q/LKOI2YxOLcdperQAn3k9VvNOuHfxcjNuxiFz1CpuXKTXwz9MHanl2dsZTON1oII1G6Vpjl4leQgDEpYh4qrV2MjdY/02yYSzLPEyrGdsbJAXKrGp09V13cadnWOiISqWVWUqwBVhoQdxBlVHhM2PccCwkqo48Vz017ivem7u0kjM00VX0130vTYNUsUqw7DK1Yw5ddY9BruOt9DGq49ZXc31lIaSJxrnO/BvxssbkbwbfoWkAeZwsVL3VWVrZW9bjVHBVh2EaGVpPyuxnwag51sr1qsPvVkoT5eGSJx2VSqQEBAQEBAQEBAQEBAQEBAQEBA8hHhhlyZEZsJEZsIRi4kRi4mWU7iRmp7BMpU1gkrNTWCZrFTWCZrNS2CZrNS2CZrNTWCZrNS2CSsVNYJlmprBMs1M4mWawcSMsHEiN+T8zv5VzXF5hT6+PYH4fnLuZfrLqJeHLxsrX187w5Szo/vlHNOScworsS+i1LVDqrFSdGGo1U7Z9mcpZl+gnPjymWn8J5afSrqFWvtUs1X/LKy4Xxh8Bcn5OZcnuvw2j74LfejC49z/u9f9RkD61J/90Rqmrx848JXLw7VQ+sQouQ/7ssfOsZM94mqxOTXOTg3/DXdIx34D9as+j51kxEknRtpzrH3GvOrHQfwbfONUPyS6rrHVfOMTjFeQGxLTsCXjg1Put6h8hjJ5RdvlaICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHw+dZLXP8Oh/DQ+l2t/8ACcedzo8/28s6PjNR2Tnhwwyajskwzhk2P2SYTDFsfskwmGTY/ZJhMMWx+yTDOGTY/ZJhMMWx+yZwmGTY/ZJhMMWx+yTDOGTY8mEwyajskwmGLUSYTDJqJMJhRynPy+VcwqzsY6WVnavQynerdhmuHK8bmNfXzvDlmP7TyzmONzHBqzMdta7V106VPSp7QZ9TjynKZj7fDnOUzFRAIII1B2EGaaQGq3l546AbMLe+ONrV+9X2e75uqTZnZbVbXbWtlbB63GqsNoIMrTHNxTeitW3BkVHiot6m6j7p3ESVLHuHlDIq4ivBahKXVnerjeP/AE7IhLlzzDHstpD0/wCJpPiUE/OHsnsYeiYpY1xshMihLk9Vxrod46we0HZCy5TW/wB35lVburyh4Nn011as+UcQ80M3SqMqhcjGtobYLFK69Wo3+SGrMucC9r8Oq1hpYRpYOp19Fx5GBiJLmMsT8POzKOglL1HZYOE/erJiJN1krRAQEBAQEBAQEBAQEBAQEBAQEBCPDCOTIjNoRmwkZZMJEYuJETuJllPYJGansEyzU1gmazU1gkrNS2CZrNS2CZrFS2CZrNTWCZrNS2CZrNTWCRmp7BMs1O4mWWDiRlgwkR/Wf/GHPcLK5C3Lc6yoW4TlahaV9Kp9WXTi36HiHmn0v2nPPHF6Pr/sftl4eN6P2S8r5U446qUXX26T4fy1lZ6sR7fGPf4c6/k5d9fYWFg/4oc/LGDxPD5snq3U3jqdGrP2lLD7samp8Zmp+dhMR0tS62DzN4bfJGTN7M7szk9+iZYVT0Lk1lNvYbAPkjQtl3drgKFDYeTZUp3AN4tfmfi+6RGDHZ5Z/EQhS+irNqPrBPQYj6FhKn7UGqJFw6nC4mRZy207se4HwieoK/o/YaRnTpor/iGXj/47HPB/1OPrYney+uvy98uWvKzdZRkUZFYsosWys7mUgj5JWpctICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGGVkpWhQMPGI9Fddum7XSS1nlyxHxmpnLDz4ZtRJhnDJqOyTCYZNRJhMMmo7JMJhk1HZJhMMWo7JMJhk2P2SYZwybH7JMJhi2P2SYTDFsfskwzhk2P2SYTDFsfskwmGTY/ZJhMMWx5MM4ZNR2SYTD9J/IuVZVnPhLcaXuHFQ29C6jUq69IYeXqno/b8sXD1/tOeLh/QcbN8Sw0Xp4OUo1NeuoYfORvaH6OmezL6MqqVUFqnl9rZCD+5WHXIrH7Mn9ovZ84eXrk2Zui8EEAg6g7QRK0hzP7rkDOXZUdEyx7vs2fUO/s7pKzdNV0rSKj+7Z9mPuqyNb6exxoLF+UN5TIzNK15hQ1+JYibLQA9R6rEPEh+0Iq2aNMW9cjHqvXYtihgOrUbvJKsuU+F+Hl5mP0cYvQe7aNv31aSMzcu/D5pjP0XJZUe8aOvyK0F3WStEBAQEBAQEBAQEBAQEBAQEBAQEDyGXJhHDSIzYSIyYSIxcSMsXEiJ3EyzU1gkZqewTLNS2CZrNTWCZrFS2CZrNS2CZrNTWCSs1LYJliprBMs1NYJlmp3EiVg4mWWDiRl+m/8AG3NquX/zMleQyri5iNTaX04QdOJCddnrLp5Z6P2vPHP5er9l9nj9ntX9iTC5LkHjqrpZj7dXCD9pNDPqYj7WJXX8MVfycm+rq0sLjzW+IIweJ4PNE9TJrtHVbXoftIyj7sGKfE8yT8zDFg66LAT5rBX+mDNeHmmKARkJZSDv8Wtgv2gCnyxk8o4rxOTZJL4xrDHaXxn4D5TWRGhiXZp8JnV/kZhYfMvUWDzrwN5yYMVy92cFKZOGt9Z9Y0sG1HalnB8hMGb2TIeWq4XGyX5fad1LaopPUKrRw/ZkTT4c34WQlhuNP4vTl4R4HP06m9FvOYwWOsfm9ykraBkqvrPUpW1R+8ob0x3rr3RknJ9PHycfJr8SixbE3aqddvUeozTcuWkBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQPl5v8AMnK8XiUOci1Rqa6fT0729UeeS8mL9kj4eV/MPNswFaSuGh2LWh8S9u4DaO/Re+ZzXO87V3I8A1YrXWNx33nWx2DBtmzbx+lrJhJF5qjC4ZtVGEw4amTCYZNTJhMM2pkwmGTUSYTDJqJMM4ZNRJhMMmo7JMJhk1HZJhMMmx5MJhi2P2SYZwybH7JMJhi2P2SYTDFsfskwmGTY/ZJhnDmnxMe+u+o8NlTB0Pap1ETSk0uX9TC4/MsGm7avGq21WKdHRiN4PWJ9CXMy+vLOUy9xMq3xDi5WgyVGqsNi2IPbX/WHRKsvSqyARodoO8SqgxScPIGE3+Hs1bDY9Gm1qvq717O6RmaaLmVXUqwBVhowO4gytI+XM1fiYNhJfG08NjvapvUPk04T3SRnj2dczR/hxfWNbsVhcgG88PrL9ZCRFOSqt0sRXQ6o4DKR0g7RK0j5f+FdlYvRXZ4lY9y70v1+ISRnj2e5H4fM8W3ouV6G79PEX9VoLuc09Gui7+pvrbyM3ht91zFOSyVogICAgICAgICAgICAgICAgICAgeQjwwy4MiOGkRkwkRi4kRi4kZTuJGansEyzU1gmWamsElZqawTNZqWwTNZqWwTNYqWwTNZqawTNZqawSM1NYJlmpnEyzWDiRlg4mUMTJsxMyjKq/Mx7FtTvRgw/REuLk48sWV/oCq7+Xc9EsBxrWcBlB4OPaNRv9IT7csr9FLxqj+FY67abLqergtfT7LFl+SXC+J8NzFPyswP2X1q3y1mqDF7njc1r9fGrtHXVZofsuAPvQZp/E0X8/Hvp6y1Zcfar4xGTycFuR5rbTj3WdvDxg/rCNDSu/wCGIn5GRfR1BbC4+zZxiMHieHzav1bqrx1WIa2+0pYfdg1cvlX8JTLwGZD6xrK3J5jwt92DPeJk/hAfhx8lsC07q9TV/wAK0cP3ZNE0+GmRiZjqPGrpzkXajDWm1e1WHENe4rKWX5fOvqFV3i132YmTu/vI8Nj2eOA1b9z8UjNVU8/tx2WrmlRq4tiZCj0G7wCw+yT5Iys543fYrsrtRbK2Dow1VlOoI7CJp0dQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAEgDU7AN5gSPzXlysV+IR3G9K/xG+ynEZMp5R5/E1b8vGyLP8AZFP+ZwRlPI+Oyj6vL7/K1I/9yMmb2Pjcz/8Ar7j3PT/TYIM3sfxCwevhZC+Stv1HaMnl7H8Wwx+Z4tX9pVYo+0V4fljJ5RtRnYV+yi+u09SMGPyGMrLK2lUgICAgICAgICAgICAgICAgICAgICAgICAgQ5nO+VYeovyFDjfWvpt5VXUjyyZZvOR8e/8AnB7iU5fj8TbeFrdWYkdVdfE3lJmfJi/b2fNduZ8zqsfJsvvRdeKtAtFC6fPZyF1Xq017ZN2Na1xuWMuGbRRXXUDr8RlMSu3Z+FTwuNT0E669EuFnHRdXiZleFo718vx7GA4VR2vuJ3BvSVtvQBt7pcNYuOz7ldC11rWoAVAFAA0GzqAlMBSQw4NcYTDg1yYMODVGEw4aqTCYZtTJhMM2pkwmGTUyYTDNqIwmGTUSYTDJqOyTCYZNR2SYZwxajskwmGTY/ZJhMMmx+yTCYYtj9kmGcMmx+yZwmH7T+T7y/KfBO+h2UfRPpD9Jnr+m6Pf+2v44fVzMRcisDiKWoeKm0b0cbj/6jpE6V2sy8wspr0ZLVCZNJ4b6xuB6CPdYbREJXWZjDJoNfFwOCGqsG9XXareeKWZeYOScigM68FqEpcnzXXYw7ukdkQlyx5j+A9WcN1B4b+2l9Ax+qdG88VOXdbK0i5Z+Et2Gf8s5Wv8As29JPMDw+SSM8exkfhczxrfZvVqH7wPET9VvPBd3vNvRxPH6cd0u191WHH9zWKctnfM6jby7JrX1jW3D9IDUfLFXls2otFtNdo3WKGHcRrKsdwEBAQEBAQEBAQEBAQEBAQEBAQEI5MI5MjLhhCMmEiMnEiMXEyyncSInsEjNT2CZZqawTNZqWwTNZqawTNYqWwSVmpbBM1mprBM1mpbBM1mprBMsVPYJEqdxMssHEjLFhIj+2/ydzflmV/KnLhmFda6vBY3IeD8IlB6TDh3L1z630cs8I+7+25y/XMvt1cv5TaOLF0QfOxrCg/4ZAnbDv4zo0+Cy0/JzbNPm2qlg/QrfejBi9zi5vXvroyB1qzVH7JFg+9BqfxF0/PxL6+tlUWj/AIRc/JGTyctmcmyj4dr0u39XcAG+y4BjQzK9HKcIDWnjo6vBsdB9kHh+SMHjHvwecn5Wcx6hciOPu+G3ywYvc4+bp61VF461dqz9lg4+9Bq5fN1UplYNwU7/AEFuU+SsufkjJnvEy/wHi0qu+DsO5Vdsc/7tuEH7Mmifip8DmAT8LKTJrPs3oNo+nXwj7plXFRW4gRWV8O3GVvWOKVupPfSRt/3cjNns+fTTk41zPyrIR33vjKSvF9KiwgjvVvJIzJjZ9TC/mPGssGNmqcPL3cFmoVvoswHy6Sytz7O76802QEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECW3mWMlhqr4si8b6qRxEfSPqr9YiTKXk44ea3+syYdfUv4tnnOiDzGE1r0cpwydbw2S3XexcfZPoDyCMHjA8w5dSfBqYO6/saFLkd4QHTyxk8ofFcws/Jw+AdDX2BPkTxD59IM3seFzZ/WyKah1JWWP2mbT7sGK8bDyAC1vMLgBv0FKD9TX5YwY90r2ctU8Lc0sZ/mrcpbzIJE07vPExfYyc5+1UtYefwyINPdjfj1X+v8ZZ/aY9T/AK9evywlnyw+GzKv8LflU9hodh9njKfdhMXo0Xm3O8c/i0jJQbvwb63Pl8MpGaeVjdP5r5eNBlpbiN08a8S696cXyiPJf7k6vpY3McDK/wAPkV2nfwqwJ82+XLc5SqJVICAgICAgICAgICAgICAgICBlfl4uONci5KQdxdgv6YS2R8y7+a+VKG8DxMoptYUoSB2knhGkz5M37I+df/NXNLULYuLXj1dF17jbru4QSmvk1k8mL9l6Pm3ZHMculrM7mCJXrsQ2cPEP7GsBvtaSMW271zj4mBRjFrcvGQk6IqBbrjr0HVzXX3jzwSSK0fCqxDXdzIaWH0cXGaoEn97aV29vF8srWmN2rNytaK1yOYfFWk/g41dypSmm7VhwgafO2dgg07tmXlCqhvzPj8xjrSgynFdZ0+dx+iO07T0DohdO+VOLhcqryKQ1pzM524l4LHZaxvOnpHRR72+WRZJ/F9zSabw8KwmHhWRMOSkGHJSRMODXBhwa5MJhwaowmHDVSYTDNqZMJhm1MYTDJqZMJhm1EmEwyaiTCYZNR2SYTDJqOyTCYZNR2SYTDJsfskwzh9LkF2Ri2XOi8dAAa+sDVuEbONe1dd3SJ1+rR3+i4y/V1uliK6MGRgCrDaCDuInd60efU9brnUKWtqGlqDfZVvK967183TJWb3V1WV21rZWwatwGVhuIO0GVpHd/deYJeNlOVpVd1Cwflt5fV80jN0q10SxGRxxI4KsD0g7DK0k5W7/Dtj2HW3FY0sTvIXajfWQgyRni8v8AweZ0W+zkKaH+kur1/wCuILu95sD8C9qjV8crevX+EQxHlAIinLZRdWmRjWV66pchXXsYaStXVly603cvx7H9Zq14x7wGjfLJE43Rxyf/APG0Id9QNP8AumKf6sROOyyVogICAgICAgICAgICAgICAgICAhHhhHJhHDSIzYSIyYSMsXEiMHEjKdxMs1NYJlmp7BJWalsEzWamsEzWalsEzWalsEzWalsEzWKmsElZqawTLNTWCZZqdxIzWDiZRg4kZf1n/wAV804P5bsoem11pyHHHWvGAGVW00XVt5PRPpfs7+H8X1/2HP8ADHu/VM/8vZFg4xStx3cY8K3ycQV56tHs/Gtxy0KNcfKvqHQOPxF81os+SML4veDm9fq2U5A6nVqm+0pcfdg1PjstPz8KwDpaplsX9Kv92DN7OW5lyq0eHe6pr+zyFNfyWBYyeUeryrljDjprFQO0Njs1X/LKxg8Y9+AyE/Jzbl91+CwfeXi+9GDx9zg5wm6yi4dTI9Z84Z/0QanxXMk/Mwg/9jarf8wVQZvZ43MKyvDfiXqp3g1Gwf8AD8SMnkkJ/lstqTXjOfa9LGbz/hmTRPxb1Y4bbh8ysI6FLJcv3gW+9KuO1L8XmFi8F9eLmoNwdWrP/ujWCyocnBV6zXbjZFdfzRw5VXkUlrB9UCTDFiCm7mXLn4cHJqyKR/kri1bae4l2jr3cRkZls2fVwf5p5fe/g5OuFkg6NXdsGvYx0+XSay3PslfZBBGo2g7jK6EBAQEBAQEBAQEBAQEBAQEBAQEBAQEDx3RFLOwVRvYnQfLAjbnXK1OgyFsI6K9bP1A0mWfOC83x3/LqvcdYpsH6wEZPJ7/FKx61GQo/sXP6oMZPIHN+XagNcKmO4XBqj/xAsZPKK1ZWUMpDKdxG0StPYCAgICAgICAgS38xrSw0UKcnJG+qvT0fpsfRXy7ZMpeTP4LJyNubb6B/y1JKp9Z9jP8AIOyExbup/umHR7GPQncij9AhdIn+OycjZhUEp/1F2qJ9VdONvMB2wmc7H8N8Xbm3Nkfux6FX2FO36xMYPHu1svwcGtVZkoU7ErUAE9iqu0+QQuZGXxmdd/hsUqv9bkHwx5EHE/n0hM0+CzLP8RmMB8yhRUvnPG/3oMXu4twuS4wFmStfZZktxnXsNhaMQsk3dJzGjh4cTGtuHR4dfAn2rOBfNGTy7OvF5s/q0VUjrssLt9lV0+9BqfD80b18xE7KqtPldngxe6e449R0yOburfNL0ofIFQGEvyy48NvUuzru1Bdp9oKq/LImnu98NmHoY+e3abgo+9aD8kH80N/8u03niODYrHbxG6sHXt2PGGb9eejAcm5/hhnx8ixagPw6jeNnkZeA/JJip4co4p57/MFPEtl+Na6+tXfw1t5DrWreQmM0nPk3p/nO8g+JjVPw+sUuVfMrj0vIZfJZ9qmv+dOWnQWU3Vsd4IU/obX5I8l/uxUn818iY6HJ4G6mRx/RpLmNf3OKlOd8ncarm0beg2KD5iYyvnO7dM7Cf1Mitu51P9MLmNRYh3MD3GVXsBAQM3ycev17UX6TAfpgywbm/Kl9bNoHfYn/AKyZTyndNZ/NHIa/Wy1P0QzfqgxmM/3OPdLZ/OvJlOiC23tVAP1isnkn92Jbf53GhNOJ6PQbbVU/YHE0eTN+72SP/NXOLkJSzExaxt4ydW+ySzfckyz/AHKnGRzbMqd8nmtaL7BF4Ti/2Valz3aCEzb1eY/JazU11ngAHYLb7n26/NROF9extvZJgnBXTyaxMZrbMeiutdgyMxn10Pza9NB2cS6y4anBtj8svTGeyvDxaE3tl5PrEfOVWTRPKo7ows46NsbHzPhnbFwqKF3tmWuS7rvJXjrHD2ajTqEqyXpHeKc1qT8DgitGP4mYXV3ftQ2BNexjs6hBM9I6oy7TSU5fhWojMRfmHw7WJG8qeL8Q9u4fJBL2j1c/GRDRhUWqSxGRl2UvbwsN/EVDcT9+wfJBns8Obyer+64r1G+w63ZOToOE9bcfCWbqUfIIMzaPo8v5fyupVeha7bAeI5Gis5J3niG7ySyN8eMXytGkJh5pBg0hMPOGEw5KyJh4UgcFJEw5NcGHBrkwmHBqjCYcNVJhMM2qjBhm1MmEwzamTCYZNTJhMM2okwzhk1EmEwv5BXwZj9tZ/WE39e7r9M1XL/2/JCbsLIb0Oqq1vZ+i53dR751d9vh9CVpDjf3TMbEOyi7itxew77K/l4h5eqRmaXCnKx0yceyh9i2LpqN4PQR2g7ZVsy45fkPfjKbNl6E13gdDodG8h3jskhxuYys/A5pXZury18J/7SvVk868XyQm1dc1rZsGx0GttOl1Y62rPHp5dNIq8tlCmu6kEelXauo7VYSqn5SzHl9SMdXp1pc9tRKHz8MkZ47POV+imRT/AFN9gA7HPiD5HiHE5b6Jy6v6vIf/AIgFv+vEOKyVogICAgICAgICAgICAgICAgICAgeQjwwy4MiM2EiMmEiMnEjLBxIidxMs1PYJGamsEyzU1gmazUtgkrNTWCZrFS2CZrNS2CZrNTWCZrNS2CZZqewSM1M4mWawcSMsHEyj+k/+IsnMXD5lXRStyrZWzAvwMCykbPRIPq9Ynv8A2V0r6f8A8+3FfvbM+orwZmJbWvTx1+Knnr8Qeee3L6Hl3Z0Y3JLyfg7FrfpGNYayD2qhA84jRJJdm3wnMK/yczjHzb0V/lTwz+mFxe58RzOv83EW0fOosGv2bAn60GaNzXC0K5IegHeL62VftEcHyxk8o5TA5NkfiUJXt32Y7cB+1WRGDxld/wAOsT8nMvr7GZbB/wARWb5YwePueFzdPVyKbR1PWyn7SuR92DU8fmy+ti1OOuu46+ZkX9MGafH5C/mYF47VNTj5H1+SMnl7B5pQPzKchOvWi1h91WjJ5Jrbv5et23VV69dtJU+dlEaJni4U/wAua6V5aUnqryWr+6HEaJ+PdqqUH8jmrjs8SqwffVj8sL/F22PnWLwjJoyE6Vtp4tfKrgfJC4r52Z/L5uQj4KhW00D49rJ06/lsnAR3yYYvD2fJWrnvJVXw2tqXi0FbhbKW7uEngJ6vlk1jGOXF9Kj+cfCbw+ZYzUuNOJ0B0BPWj8LL8svk3Pt7vtYfNuW5mnw2QljH2NdG+ydG+SXLpOUuyuVSAgICAgICAgICAgICAgIEmRzflePr42VUjDevEC32RtkyzeUj593838qXQUrdkljwr4VZ0J6vS4ZPJm/bEVn8181tNiYfLWFlZ0YOLHI71RRp5THkz/cvSMnyue3HXJz6sett9a+JjkfXelj8smqZ5da9p5ILz4xLZrdLjJqyD/xKhGCcMqBy/Fp/MqtoHXZi41q+U01n5TLhrxjenApuXjx6+X5qjqrFTDvZfE0P1Ywsnw74MWj86rJ5f+8rsZqvullH1lEGnwqVc/ww9N9WfQw2CwBSR2WICh+xK1r8sEr5cbgnBZyzLY+iFPhhj2cOtVnywmnwpNnMsX81RmUj26xw2gdqeq31dO6F1inGysfJr8Slw666HoIPUwO0HsMqy5awpAQEBAyycqjGr8S5+FddB0kk7goG0nsEJbhLwZubtsLYmKd1SnS5x7zD1B2Db2iRNarqpx8angqVaql26DYO0mVqTCX4+7J9Hl6B06cqzUVD6I32eTZ2yM+WdndXLahYLshjk5A2rZZpop9xB6K/p7YwTi7yc/Hx2CMS9zepSg4rD3KOjtOyFvLDHh5lk+u3wVJ9hNHuI7W2ovk174TWtsfBxMYl60/EPr3MSznvdtTGFkkZNzSt2KYdbZbjYWTQVg9th9HzamMp5dj4bmF+3IyPBT+qx9nnsYcR8gWDFrpMPluGDeVRCPWyLDq3lsck/LC4kc/xMW7MOizJ/eAcFf2301+rrGU8ux4XNrfzLq8Zfm0r4jfbfRfuQavH5bhBS+XY9yj1mvsPB9nVU+SMHjOrinM5ZUOHAo8X/wC2r9H7eip96CWdGvjc1s9THroXrtfib7KAj78Ga8OLnsNbs4oOnwa0Qed/FMGL3SOeTlirZN2W43pXZbbt7UqPD5xImguLjMdaeThj0WXitf08b/JCY9mj8vyrayj04dNZ3r4Zu/T4X6JcL432fOyqK66TjLzZbNurYjKtoI+aBpa6/LIzZ7pLUqalKTXnU8R0Wu9uHGY9XptTs7BoeyRm/wAXWTyq+qpA2EMaoD07kte9B31EPs7vPGC8fZLk4OCXRq2x8kADVcNGNv8Au9XTz6RhLI5v5bj3ZCVpTYGOn4WTXTiE/RZShPkUxhLxZ5XJsajKVL0XFB2aeL8Rr9RPDs+STBeEleU8npvySmEhy1X1/DIxyPJf4hjCTjnZy/K8erK8LMIxfmo5+IY+TH8OMHjrqYnJq8m5zj0nKqXXUratAGnu2eI8YJwyUctpF7g12ehvrx668weV+JgPKojBOPrdtj4GCzu9luNQumxMriW0f7Ks1r+mXCzjFWFyu48Xg4TZNbD0bjY2LX5ECozCMNTj7PMWhKjbWEzNR61OA2tQPUziy1tfN3QSfP8ABtjnExUc2ZxwQ/8Al0r0uJPW71o583lgmJ1wrx8bMrx7bkupw6GGvxNqrZew63biK+cmVqSmPj5j1u2Nh0sT/ncjiLOOnhVxxd2pAgkvZlVXhstng8s+Lv10tybVSyoHp4eDYdPmoohJjs48L+X6G4ShtztfVYNiqhPfwKg85740PxnyobAwlrR78q3JvduLHx6LWsUMP6tXL7vnN8kYXxjS/Ayhji7mOeVRW4kodVsUH2VbQJ4jdWzuhbxvWvWp51k0ceW1K4q6saH4qS6j+tINmg93z9UGLdwZXMsupAMN6sHcxx3XisUbuDj8EqnbpqeiDNvTQPNqHRMbGD4WIoKvkmshRodClZAZOLrJOyMnl0mj6WC3LTQKsR67Kh0IwfXXeTtOpPTrK3MdGi4OEtwuXHrW5deGwIoYajQ7QNYwYjaVSAgIDSDDzSEwaQmHmkJh4VkMOSkI5KQmHJSQw4NcJhwa5MJhw1UmDDNqowmGbUyYTDNqZMJhTyqsLkMengOg8omuE1b+qavpX0VX0vTavFW40YTo72ZT8vut9PEyDxZGPoC59tD6lnl00PbJGeN6OuYYz3458I6ZFZFlDHodd3kO49kVeUaYmSmTjV3qNA41KnepGwqe0HZKS5T/AOH5p1VZq/8AGrH+sn6sibX5d80qezDdqxrdSRdUOtqzxAeXTSKvKaN6rUupS1DrXYoZT1hhqJViXlPo4pxzvxXan6qn0PuFZIzx2ML8PMzaOjjW5R2WLofvI0E3r3H9DmmZX0WJVcO8hqz/AMsQTemL6PMs1PnCq37SlP8A24JvVkrRAQEBAQEBAQEBAQEBAQEBAQEBA8hHhhHJkZZsJEZsIRi4kRi4mWU7iRKnsEyzU9gkZqawTNZqWwTNYqawTNZqWwTNZqWwTNZqWwSViprBM1mprBMs1O4mWancSIwcSMv6D/4hrynHNvh7xUV+HJDIHVtfE3jVT0dBnt/ZdX0f/n5/L+H+b+i+Lzav16K8heupyjfYfZ9+e59LNY5GVyu7Zn4xqI6cirYP9oOJPvQls6u6sGhkD4OZYidHBYLU81niDzQuO1d6c4q3GnKXt4qW848RT8kGp/EjX/icW6nrYL4q+erjPnAjJ5M1TkWa+qCiy7pK6CwebRxGh+Nafwzg/IysinqHH4g81osjB4vfC5snq5FVo6rKip+0rafdgxTxubL62LU4667jr5mQfpgzT4/KHr8vvHarUsP+Zr8kHlex/E1HrY2Qv+yLfq8UZPI/i2N015A//bX/ANCRk8o8bmuCRoy2kdRx7v8A5IyeUZNl8nf1sdm78W0/+3CZjJv/APn234BY9fwVv/040Px7f4OfD5L7ODcPo0XJ/QITTs8enlroU+FzeFhoVBvUEHs4hBie6DI5eVsRqKc1qEGgr10srH7pmJ2e6fPJhm8fl8t+V02rdcK8hqwdBatdWqEb1sqXhZSOkhh3SYY8XddvPsKmuyjIuWpzops4LaeHo0sZio7tB3xqZ5R9Gv8AmTntNvhZOCtjH1VGtTsOsA8Yb6sua3/c5dYpr/nPD14cjFvpceuAobh79oYeaPJf7sVV/wA1chs00ygpPzldflI0lzGv7nFUnOeUOPRzaO7xFB8xMZXzndumZiP6l9bdzKf0GVcxpxp84eeFC6DewHeYGT5uGnr31r3uo/SYTMYtznlC+tm0DTo8VNf0yZTzndPZ/NHIKzo2Yp+iGb9UGMxP7nHuns/nLlCqWrW65F3ulZ087FZPJP7sTX/zmyBTXy63gf8ALa0+Hr3bG18keTN+32S2fzbzhyBVRQnGdFQtx2fZ4lI8okyn92sreYfzNc1yG+xVTf8AD11uF+k6M3D5yYzUvLkiOO+Vp4+eLlKlhbkWWV169Q8QcT/VUQzjPVrXyoVLj3WY7qjnhDIKrWs/s6bFRvKwJjC+KqjlOK48O+yvF1fVaMunSxuoNb+F5kOkYWcY+wvLvAA1wBwDc+Fc1bd/CTX8jGaw6ePs0obifw8bPsru/wCmyl4j5mCWHvDQs9qX0ji4s7l6Waf5rGHEw7dBw2D6usFneNMdLGTxOXZ3i1jYarvxVB6uLZYp7ye6Ce1Z3NhvYP4jj/CX7kylOik+7cvCR3NpBcdVHDzLF2o3xtHzG0W4DsbYj+XTvhdZ7sqqcLJZ7sGxsXJB/FVRwni/e1NsPfpr1GEkl2dvkgD4bmtKBbPRFunFQ5O4HX1D2N5CYXPSvTRmYXpYxORjDfjOdXUfu3O/6LeeDFmx4WLnD4rEsNOUvom1RowI9i1Dv7m8kGJdY0x85/FGNlqKsk+pp6lgG8oT8qnaPlgl6VXK0QECTJzilnw+OnjZZGvBroqA+1Y3sj5T0SJa9xsAJZ8RkP4+WRp4hGiqD7Na+yPlPTGCcXWVnVUMtYBtyHGtdCbWPaehR2nZBbhiuDbkkWcwYON64qflL9L+sPfs7ITGd1N+Rj41XiXOK0Gwa9J6AAN57BKtuEvFzDM9UHCxj7RAN7DsB1CeXU90ia1TjYeNjKRSnCW2u5JLMetmOpPlhZMMH5l4jGvBr+JsB0ZweGpT7z7fMupjKeXZ4OWteeLPt+I/cAcNI+pr6X1iYwePdRfk4mJWvista+qiDeexVG09whbZE/jcyyfyaxiUn9rcOKw/RrB0H1j5ITNrurleMri23iybhtFtx4yD7o9VfqgRgnGF3M8ZLDVUGyLxvqpHEQfePqr9YiMl5OeHmt/rOmHWfZTS237TegPsmDWvRyzArPjXjxnXb4uQ3Hp2ji9FfIBGDxjz+KVP6OHW+Wd3FWAK/wDeNonmJjJ5djw+a3evbXip82oeI/23AX7kGri3A5XSvi5r+KBvsyn4l1+ix4B5BGC8Z1erzFWULgYtl6jcwXwqh9Z+HUfRBjJ5dnvhc3u/MurxVPs0r4j/AG30X7kGKwyMXlFGnx9xvc7lyLC/F3VD0T5FhLJN2lWVZw8HL+Xla+h7AMdPs6F/uQS9o9sxOYXowy8pKqSPTrpQbu17eP8AVELi3d8m3D5WrL/D+LOsq2DHZTkUn6x0RD9bySOeJ01duLrchEsoq5PcdBXdqWZuxWr8Os/RYnuhf8HOYBVf4Ofe3NgxH92qJWxe+mv0WHaSIS++r3Ard73/AIPWOXhT+NXewLeWj0mX7SxF4+2jjKroOUK+c8ebaupRccggDtrrCWr5dR2wl31a8sxbyGflBTFxTrqthS5te5PSHlsPdEXjOzC04XxDpzLHs5lloDqaGFyqO1EFfB5R5YS466t8OnLuqd8TPXAxFBBpDjJZPpF/U7gYWS9LhnSr6OauXpzRtNuazEhu7xgdfqMRCT4y5GLyVVcZN1lN1mz4OlHoGp6Fp0PH37RBidVlWJz4Y7JVkLj46/lpaqeKFHW1a8CeYxq1jkxx856qrBjcu8RieG3LUtejdbFtBZZp1DzwkvaOEp/l4txknK5g59GuoGiwN2Ivh8He3njRMcf4qbeW5PwzWZucaaAeL4dz4lYHzbGPC1ndrp3xhq8bjWvVfnl1KqlS14oOmtX4NzIN3Ajlgg7zr3Qfk5Tm2NVUMfDpOKvERbk3LrUjD1tXUsHf63eYyeXZ34HKK1AoRc/Nu9IOpBdveLrsRO7Z1QYnzRuXLiIuZlZtgvU6VgHxVUt7Fa2CxiT2HUxg8ca2vTRzW5VvzRU9FerDFdjUNBtDWkeIpYdW4QYvV42fbmhfFpux+XsNWdFZzbt3apqVTt6e6XJ5Z+H08TJwbEFeLZWyoNBWhHogdHCN0NyzoX8vwcg63UV2N0MyjiHcd8YLxlZ18tSp1am66tVIJr8QupHVpZx6Du0jCeKuVogICAgICA0gNITDzSEw80gw8KwmHhSRMOSkGHBSRMOTXGEw4NcmDDg1RhMOThWPWbaTwZNRDUsdxOm1W91hsMsjXHitw8pMmgWqCp2rZWd6OuxlPaDK6S5YcxrdODNpBNuNqWUb3qPrr8mo7RFTl3V12JZWtiEMjgMrDcQdoMrSOn+7cxso3VZQN1XZYNBYvl2N55GZpWnM6bLMRmqGt9JF1I62Q66fW9XyxV5TRvRdXdTXdWda7FDqexhqJVlS8r/DS7EP+WtZVH7tvTTzK2nkkjPHsVfhc2vT2citbV+kh4H+Tggm5Z+Hzelui+l0P0q2DL8jNB1LfQ5vjt0W02oe9WRl+Tigu731ec/2uN/y3/8A9kHVZK0QEBAQEBAQEBAQEBAQEBAQEBAQEI8MI5MiM2hGbCRGTCRli4kRg4mWansEjNTWCZZqawTNZqawSVmpbBM1mprBM1mpbBM1ipbBM1mprBM1mprBJWamsEyzU7iZZrBxIy/d/wDiwcuVOZNmOatTSK7Qz16aB9fTUjTeN5nt/Z9X0f2GNc+z+jVUXlOPC5gbE6BYFuT7S8L/AHp7n0pO1d/Eczq/NxVuX52O41+xZw/rGDNTM3IrbdbU+EyG2cThsawnsccHF5DGifipGJm1jXGzSy9CXqLF+0vA/nJhcXpT4rmNX5+J4i/Px3DfdfgPm1gzezO3L5LkkV5YQOdgTJTgbXs8QD5ITMu7QcroA1xrrqAd3h2Fl8ivxp8kYXxPA5rX6mVXaOq6rQ/aRlH3YMU8fmqevi12Drqt2+Z1X9MGa9/iFw/Mwche0eG4+47Rk8vY/itI9ajIX/YWn9VTGTyP4tifNv8A/wCNf/8AJGTyh/FsU7q8g/8A7a/+lIyeUP4oh9XHyW/2Lr+twxk8j+IZB9TAyG7T4Sj71gMHl7HxPM29TCVf7S4D9RbIM3sf95b/AKar7dn/ANODV58NzRvXzVX+ypC/rtZBi90GdhYtTtdZzZ6cwjh42atOLTcGWtayw+WRmyd3zgmIwFdNWQuYzMTSWsajIPSQXavXv2EdOsMaPU5fxZQqq5fj41xXVsXMbxEYabTUQrbvdbyRg8ddmDYddYsottox7gdVw3q1bb/VXa2udezXuEiYcjDR7qErqyDcw9TL4KC30LhwOfsmDDG3luLTbdXlcGNc21KbzZcT9Gyrh+UE9kYS8ZNy7kyiuotjtSvt2ZKhadPp1Ktg+vpGC8GP8GrJt4Ee5R6r4Vfj1eV3IPmjCeAnJqS1QXw7WPr1Ypa2/wCsj+inljB4On5XjV+Itq10uT+FXkLct7fRFf4Z17A0YPFo/Jq8eyuzJpfCrccIe0VZPE3UK61Qg+SML4Y30dLhVtiCwGp60fQWeIy3k9SUK71huw+aDGjW3FprZ3yLLMRGX0Gz6VyHY6bk0UIvcGJ7IWz1WgwTjJRc1DY1dmxTh2n4mwnd6JfTTp0XXyRhcYerV+E1QuKcb6pyuyvW+w++yil9vXqR1kynrDvIxa6bGTMwiHsXipxcEjwwBp6VgX0joenhIgs7xtWuTZZSasirmmSF/KddaqRt2llICno2rxGF/wAWuNhYGM3FlLbg5znbkqQlZJ6FKa1AdjDWMLJJvpX0mHMakIdU5hjkbRoEt07j+G/3ZW9fljjU4dhYcuufDvTa+PpoB9Kl9gHaunfCSTo7vv4U8Pm2OrU/9Sg46u9gfSr793bBb3aLTk0qHw7fiKCNRTa3Fs9y3afta+SFxejjw8LNtLLx4ueg9IjRLgO3err51g0vy9bLuxga+ZKrUNs+LUfhkHotU68Hf6vdBnG734S/FHHy8hqd5w3Poafu29ju9XugxjY4cPmI8RC1GZT6JYejdWT0MOkHqOoMGlEyWVhh8xRdbPRrt0/Ct16NDrwt7p8kGeleFL+Xbag1+CPWq2tZUOtOll93eOjqg2+HduOmRw52DYqXlQVtG1LF6FcDeO3eILM6wR8fmFL4+RWa7qyPFpJ9JG9lkYfdYQbvMfJux7lxMxuItsx8ncLNPZbqf9PRBLjSrpWkNuVdk2Nj4R4Qh4b8vTVUPSqdDP8AIOnqkZtzspxcWnGr8OobzxOxOrMx3sxO0kwsmEz5l2S7U4GnCp4bcsjVFI3hB7bfIOnqhM52b4uHTjK3Bq1j7bLXOruetmhZMMrs9mtbHwkF167LHJ0qr+mw6fdG3uhLy7Osfl6JYL73ORlf1rbl16EXco+XrMYWcXWVn00MK9DbkONUor2ue3sHadkF5YYfBZOX6WewFR3YdZPB/tG2F+7YO+ExndXZZjYtHE5WmlBpt0VQOqVdkvj52Xsxl+GoP+YtX0yPcrO7vbzSJm3ZtjYGPQxsANl7DRr7DxOfKdw7BsjCzjhxdzKsWGnHQ5OQuxq69NFPvufRX9PZGUvJx8Fk5O3Ou0Q/5aglU+s+x2+QdkGLd27NhYOONeDHoXYoGijXqAHTC6Rh8VnZP+Fp8Go/t8gEE/RqGjfaKwmbdnS8roZg+UzZdg2g26FAfdrGiDzaxg8e727mWLU5pr4r7x+wpHEw+l7K/WIjJeUccHNcj13XCrPsppZb9ojgXzHvg1vs9XA5di65FujOu05N7cbD6z+r5IweMjz+JtdswaGyP3zfh1fbYat9UGMnl2Pgs2//ABeUVU/scbWseVzq58hEGLd3PHyjlz+HUijIbb4damy5u/TVvKYNI68Tm2R+XWmHWfbt/Es+wp4R5WPdBrWd2By+pPG5jcbwu3jyWHAD2J6NfyRhLxnV0uffaoXl+KTWNi3Xfg1adg04z9nTthfLs5t5a11bNzPKNlWmr0p+DSB26HiPlaMJ490eP/d34eRVm7HJ1srYaUd6XH0vNxDukZmn6Xopq5hcBzS005NYJXGAFJUdJWzUs47VbTshcZ3cY2TdiBqeU0DmOONdXULVwkddoASzyDWElxtq9TExc9rMjNyhXcq6W1VD4c1g/wBYW/Eb63o9kGJd3uNkcwoqNXLcdcrFUehdwCjzLqos714RCy2bOXp5HkE3cxuNuYNBwOGpsU9ASpdG7t/fCY43dsqc/ZGFD8OPs4BkcIyCOnQqrKvZxAnrl1X8mXx3KKOPFfFLZrkLbVeVYsTu47mLLp5e4SJmTTq6s5IqUNdk5fw9SkP8Op1xV06ClmvF8ndGF8O7oZnObagFoK4wOnxNKgWMnWlNh9Hy690pmvOPkrr8Jj4wy8p9rVXKQ+vS1rWDiX9PVIabPG5MmJWuVdnNXZUdUVvxKUJ9muuzibXq0OsYPDGuRn53eiHLxy2GdeOvHIrtcdHGrNsU/NDa/og/K7tK+c417Jg8uZKHA4WNo4PD0OnCtZ04mHUNkuTzl0j3IwOV4qqi1NbnW6lCjFb3bpZnUroo6TuEYLxk+XPwGZiKM7IzEe2pTsvUsiAncjAq2vRxaEmMGLNcufHzMkpZzHDtrwxoy01DxAx+dao0s06l4e+DNu8fVxs3EydRRarlfWQH0h3qdo8srcsr2/DxcjTxqUsI3MwBI7jvEFkrH4C2vbjZVtfuOfFT7+reZhJhPHseNzKn82hchfn0Nwt9iwgffMGapptFtYcKyg+y4KsO8GVqO4CAgICAgICAgIDSEw80gw80hMPCsJh4VkTDkpA5KSJhtUvCg7dssdOM0RZP9yyxmDZj3EJljoDbkt/1W7NOqEulyvlaQ4X92ybcE7K9t2L9An00H0GPmIkZmlw75nTY+N4lQ1vx2F1I6yu9frLqvlinKaKKbq7qUurOtdihkPWCNRK1Kl5b+E+Rhn9g/FUP3durL5jxL5JIzx7D/g83rb2cqoo306jxL51ZvNB1M/8ADysLI6FsNL/RtXQffCwct4cy9BsS/wDqshAT2Wg1fpcRTl0OYejdg2/Mv4T3WIyfpIg5dDJ9HmmE/wA5Lq/Pwv8A6kF3i2VogICAgICAgICAgICAgICAgICAgIHkMvDCODIjNhIjJhIjFxIywcSJU7iZZqewSM1NYJlmprBM1mpbBM1iprBM1mpbBJWalsEzWamsEzWalsEyxU9gmWamcSIwcTLL+lf+KFzauU5t9NC3VvkBG1fgfVEB2AqVPr9Yn0P2c/Gvp/sJfG33frrTystx5WFZiW9NwQqf97QSPO09b23HWNqK7XTjwOYi6voW3huX7SlX87GFntXT5OYilMvC8Ws+s1BFi6dqNwN5gYXN6xhTVye2zhw7mxL/AOqrY0t5aXGnnWEmOing5vT6llWUvVYDU/2k4l+6IXVy/MUClM3FspU+sWXxa/tJx6D6WkHl3c04XKLwbMJwnW2LYUGvaqHh84hJJdmnwvMa/wAnN4x83IrVvlr8IwuL3PG5snr41do66rCD9l1A+9Bmn8SdfzcPIr69EWz/AJbPGTy9j+MYPteKn06bl/WQRk8ofxnlv9ePKG/9IyecP4zy7otLfRRz+hYyecP4tjn1Ksh+6i0DzsoEZPI+PyW/KwLz2ua0HyvxfJB5XseJzh/VoopHW9jOfsqqj70Gp8LzJ/zc3gHSKKlX5bDbBi93j8rwwpbJsstUbzda3D5VBVPkjB4zqzpy+UU+jgUi1t2mLXqPK4ATztCSzoZFXMM6o1Pj1Y9R2hrWNlgI3ELWVCkdBDwWWoMzFWjhHO8h8rCJAqu4vDCNpoONU0Y/S1PbIzZj9WzNfwcZ6qMAZXLzoVyXTwivvEKvG+m/iVdf0wn8NHuRRYmJXZnZgz+Wtp+EjCs7Ts4WJ4re7i174LNNbmGJXfwXDktNbYR1FiZQGvF0hRrx+SyCf+OzFaMUFa6LLr82sknltyBqwd/5fopWB0Nxad8GJ/Hs0tpRbLGzXfk5YEKmNqK7O919F27NFaCzvo8bGuNKeLhjFxkJJzqK+G/h+dwAl69ek+l2iDHs6x6r3W4cq4M3Hs1FuTlKCzH5qudPE094adsE9tXGIuKMmurljvXzFdVtN/BwKAfSXh2g/Rq07TBMZ03e38NdtqZNBys8aceejOUqB3cRrCtVoPZXynpgv+LWsX1XhsK1ObZNlfpPZt8NSN4sB4VVj7O89fTC/GrGmrFryFpwzZTzt9fE4gtaqDoW1TRqyvUE1J6+mEknT9TS8PQ12NkUJnZL6Nbm8LWCtSdhesAlNN6qp7dm+C9t3VNV1TGvkmUMqyxAci67R1XZop8QDXi6lOo7BCz/AMVONjctLLS6WYnMdp8Rm4bnPSwsHo2d23uEqyT+Klrc3GUrlp8XjbjfWvpgfvKhv7180NZs3eVYoFYv5Teq1NtFBPFQ3dptT6vmhJOwXxM11oy6jj5qamsE6OPeqsXeO7yiDS77ujfl4WzK1yMUf5lR6aj94g3j3l80Lmzd4MMoPieV2Kqv6Ro11os16Rp6hPWvlBgx1jpXxeYA1Wo1OXTtKE8NtZPtKw3g9Y2GDSvRk24zCnO0atvRrygNFbXYFsHssfMezdBnG7g49+AS+Gpsxd74fSvWadd30d3VpBjGzp6sfPrTLxbfDvUEV3qNo60dTvGu9T8hgxnWFV1eWr4WdUq3gfiUnarr89D0j5RBLnSuUutwLFpyXNmK54aMlt6k7ktP6G6enbvGcbvbqLcKxsnEUvSx4snFXp67Kx87rHtd8FmNY7uprzaqsvEsC3qOLHvG0EHerDpU9I/pgszrHlb08wx7KMivgtQhb6SdqNvBUjzqwg3QY+Xk5dv8Pa7SkcQGYuqtkImwqh0ABG5yPJ2GZc6PsKuPjUaALVRUvYqqoldNkX43MvnU8vPetlw/SqfKewb4zv8AC0mjGo1PDTRUvYqqo/RK1sj4srmHqlsbBPtbVttHZ0ovb6x7JGdb8LKqqMakJWq1U1jcNgA6ZWpMJPisnN9HCPh4/tZjDXX+yU7/AKR2d8jObdlOLh0YykVg8TnWyxjxO562Y7TKsmGFvMGexqMJBfcp0dydKqz77dfujb3SJeXZ7Ry5RYL8pzk5I2q7DRE/s03L37+2ME492mVnUYxVWJe5/wAuhBxWN3L1dp2QtuGHw2bl7ct/AoP+Wqb0iP3lg/QvnMJi3dUFxcTH0ASiisdiqB+iVdIl+My8rZhV+HUf81cCAfoV7GbvOg75Ezbs1x+XUVWeNYWvyf6+3aw+iNyj6IjCzi8v5lUlhopVsnJG+mvQ8P02Por5TCXkz+DzMnbm3eHWf8tQSo7ns2M3k0EGLd25ODy/H9jHoXcNijU/pJhdIx+Jz8n/AAtXgVH/ADGQDqfo1bG+0RCZt2dV8rx+MW5BbKuG0WXaEA+6g0RfIIweJZzSrjNWKjZdy7GWrThU++59Ed2uvZGTy7OfhM7J25d/hVn/AC+OSv2rdjn6vDBi3d0X5ZyysIAtRf1a0GtjnsUasxg0jjxOaZX5SDCpP7SzR7SOxB6K+Unug1vs9GDy7E/vWQ3HYm/JyG4iO4nYv1QIMSavPjcvJ2YVOlZ/zN4Kr3qmx2+QdsGbdno5bR+dnWHKZfS1t0Fa6dK1j0B3nb2xg8e7n+JWX+hy6nxxu+Ib0KB3Nvf6o8sZPLOzm3k9WQpfmlpydATwfl0p2qoPysTGEvDO6VM3mFSlOXIeYYijRLXAXg06Fb0fGA7PPCZvTV0MTlWZS2Xm5PjvV61rE0ik79AgI4D9LbBiXWvBl858Nvhla/FBHDlWIBdw9JWslOPv0HcYM17w8hNJuus+IvJ4TY/Ecjj+aqjR0PuqBB+Lz4fnj1nRn+F12UO4XJKdXigaDu1196DHJ3VzLl4X+HYeNrknUPhuAgXrNjHUHvGusE5TaOP4IuMnxT5QqeomwIwBxa/o1sfR7wwMYPDGrw8y5jcq+PU2JhnXizKgzlh7qkcVYPzmX/1jJ5Vrb/CDQmNi0V5lj+nWiENv/aPZt4fpa698Gm0cDlmTiAZlmWtllKk8ORxNUgPzGJ4l6uI6mMHjjXLluY35PCM1HwMFhqXHERZ2GzRTWn0gCeyDyzvpFGQ+JfUuBh005OijYQGoqU7i2mzuUbT8sLcXSMG5ZVyunx6Muyu5gEPEotFreyoTY3cFYRhPHx6iNzHxkyeaYrWImhpTH9Nazp6zV68RftHFp0Qa719TGzsTKBNFq2FfWUH0l+kp2jyw3LK9ycHEydPHqV2X1XI9IdzDaPJKWSsPgsynbi5TFf6rIHir5G1D+cmRMXo8/iF9OzMxXQdN1P41fyAOPKsHl3VY+Tj5CcdFi2p1oQf0SrLlpCkBAQEBAQEBAQEBAQEBpCYeaQYNITDzhgwioZsPL+Fck495LYrn2W3tUT8q9mzokJpcLbK0srauxQyOCrKdxB2EStJOXWOhswbmLW42nA53vUfUbv2cJ7RJGePZ7zOqzwVyaRxX4reKijew00dPrLr5dIpy7qqra7aktrPFXYoZGHSCNQZWpUfL/wAC/IwjsFbeLR/Z2knT6r8Q7tJGeOmj3K/B5ji5Hs2641v1vSrP2lI+tBdzm/oYq5I34jrd9VTo/wBwtFOW2XXNkZ+W3lNrovi1/SrIdflWKctnPMz43KLrKtp8Lxau0qONflEU5bPOaurcu8ddyNVcD2JYr/oEU5bPeYejkYD/ADcjQ9z1Ov6SIOXRbK0QEBAQEBAQEBAQEBAQEBAQEBAQEDyEeGGXJkRmwkRkwhGTiZRg4kZYOJGamsEyzU9gmWamsElZqWwTNZqWwTNZqawTNZqWwTNYqWwTNZqawSM1NYJlmp3EyzU7iRl/Uv8Ax7Vh1fy7TrzA4mTdZZYaw6DX0uEehYGB2L0CfS/azHB9f9nJOG79aF5vWNUspyk6AwNTH6y8a/dnoevVNecJn487Asx7f+orBP8AxaTxjy6Qlx1jWhbmTj5fzBcisexdpaO7jQqw+trBPal9xZODmXLy9Y9usDIr79ABYPswW948x6MawFuWZzJw76+LxUHYUfVl7gRBJ2rbx+a0/m46ZKj26G4W/wB3YdPvwuawe3keVaBkItWSd3iqabfqseEn6phPxrf+H5Ff+GzbUHQluly+dvT+9C+PanHziv1qqcgfORmqb7LBx96DU/iTL+dh5FfWQgtH/CLmMnl7H8Z5YPXvFX9qGr/XCxk847XmvK29XMoPdYh/pjK+U7vTzTlg35dI77E/9YyeU7uP4zyr2cquz+zPH+rrGU84fxSpvyqMi3uqdB57AgjJ5PPiOaWfl4i1DrvsAI+rWLP1oM3sfC8xs/OzPDHzcdAv3n8Q+bSDF7vRyrl6nxLU8Zl2+JextI7RxkgeSMHjHh5rik+Hiq2W42cNA4lHYXOiD7UZPKdHnh81yPXsTDrPs1fiWfbYcI+ye+DWuWo5VgEXXEG5ti22k2WsepdeJvIsGJEfh81r435bScfDbaaLdC+/a1NZ2J9Fjp2CGdejEVctxuHOwbePNYsDVaCz2OfWXgA4q2+iB2iRMSazdoKbeZ5NjFjy3JRdGqQnxmB3Gxhwhk6uH7QlMZvZib8YqvL1xa0yEfhry0YrQtnzhaPT8T3d/bImZs1uT+H2B+Zj+J+KCtdmgNoAG1RSTw6dZXy9cLdN9XC4dzYgzDbW3Lx+IvL3sJpCDrt1P2dOH9MGNM9HtaV82yHNPFy0hPTUa132AjYWUEDg7dp7RB+r2cvkLfQmFdXVTy9G4Dn1qTV6P9XqNKzr7RJA6DrCZzp0aAZmObMTlDeNjpttbRS1bMdSEckB3IOvpbuk9Eq6zSPK66LHWnkzWY+WNuVa2ui67/GR/Xc9HT26SHw4tsrrr/hN1KLkOwNmY546wz66WFj6QsOnoqdO/SC9mrLm8vZ8Ll7HK4h4lzMA11XEdrltVFjH2Vbb5JTWaRTiYWG9It5Ze1Vy7LHOp4n3nx6201br3NDUk6NGvqv0wuZ0rXY59DXbXYR01vs0bs2GDOdK9/vuD87Mwx5b6x/7g+93wusPhqrv77y25a7LNrEbarOyxR09o2iDHWPRZjZwOJmVeFkr6XhE7dnt1ONNe8bR06Qb6V4MjIwCFy2NuJuXL9pOy0D9ceWDON3r4luOxyOX6FW9K3F10R9faQ+w3yHp64MY2elcTmVQsRmrvqJCuPRtqfpUg/KDsMGlKclmc4Oeii5gQp0/DuXp4denrU/ogl6VzxWctPpk2cu6GO1qe89Nfb7PduG3w6yMa2uw5uDobG0N1OuiXDr16H03N54LOsesuNzLGWytiliEmuwbLKrBsIIO4jcQd8Glhj3+OLMLNRfiFX8RNPQsQ7ONdfZPSOiCXOlcUWPg3Ji3sWxrDw4t7bSD/VOev5p6d2/eJpo8vRuX3NlVAnEsPFlVD2D02qP1x5e8XTVLm1W8zc3YQAqqBRrdSvxI11aoEH1Nnrde7phm/lsqufAyeVi3j+Hrp2o+nC1NibAOH5ynZw9O6FuLGGA13Mn1zx4Zx+E/BaEAsRqLHB3g+yvR07dxOOu76WVl041fHaTtPCiKNWZjuVQN5lbtwmqxLsmxcjPAAU8VOIDqqHoZ/nP8g6OuRJM7qcrLoxqw9p9Y8KIBqzN0KqjaTKtuEy4l+YRZnjhpB1rwgdV7DaR6x7Nw7ZExndXkZFGNUbLnCVjZqevoAA3nsEq24R+HmZ+23ixcM7qQdLbB75HqDsG3t6JE1qxEx8ajhULTTWNw0VVAla2SfFZWbswvwsc78xxtP9kh3/SbZ3yM5t2UYuFj4wY1gmx9tlrnidj7zGVZMMruY62NRhp8TkLsfQ6V1n332+YamRLy7PKuXcTrdmv8Tcp1RSNKkPuJt851MHj3bZWbj43CLCTY/wCXUg4nY+6o2wtuE/g5+ZtyGOLjn9hW34jD37B6vcnnhMWqUrxMOghAlFCbSdiqOsk/0yrpE3xmXl7MFOCo/wCbuB4T/ZpsLd50HfImbdmuPy2iqzxrC2Rk/wBfbtYfRG5R2KIws4vLuZVrYaMdDk5C7Grr00X6bn0V/T2RlLyZ/AZGTtz7eJD/AJWkla/rNsZ/kHZB453bXZGFg1Ih4a13VUoPSPYiKNT5BC2yMdeZ5e7+4456To17D5UT5T3Qmt9mtWLgYCPdsQ6a25FjasfpO22FkkZfG5eVswauGs/5q8EL9RNjN8g7YTNuzunltCOL8hmychdott0PD9BR6KeQQTi4bmZuY18vr+JYHRrteGlT2vt4u5dYyeXYXlfisLOYWHKcbRVpw0qeyvbr3trGDx7urOYqzmnCr+JtXYxU6VIfffaPINT2QeXZ4vLWuYWZ9nxDDatIHDSp+ht4u9tfJB49x+YmxjTgVjIddjWa6Uoe1+kjqXXyQeXZhZyOm1/i8q4tmroVyFAVU4d3Ch1XQe9rGE8Ot3YfxrM4OHRPC4uH+KcL+Bp87h//AMuH3uiMp53/AKqLuXcupqOXfe637D8dx6WancF09HQ9CgadkLeM3TnI5s9a/FCyvBJPFkVJw3legugLFAekqNfowmb12b3Nyf4WvGopTK4/Sooq0JJ+fxezt3uT8sLcYwxTlnMqjXfe65or2riWMdK9uoKu3rsOtx5RGE8b8ta+bnmNnw+C3gnTWy2zh4gNdCK01PGfe9XvjK+edjJweX4NavU9tOU50RqjxW2vv9JTqrn6Q2dkFkjJU5kLEv5rT8RWmhrTH9IVsPaerezdqk6dA6YTXqpGe3Mi1XL7OGhdl2Xpu92sH2u07B2mF8s7MsnCwsBEGGbKcp9lVdLatYw6XVtVb3mYeWEsk2eU18xx7/is+n4uzTRbKDr4QI2hajp5SCSeqCZmtfSxszFyVJosD8Oxl3Mp6mU7R5ZW5ZXOVy/DySGuqBsX1bV1Wxe510YeeQvGVh8PzPG/w94yqx+yyNj+S1R+sp74TFj1ObUKwry0bDtOwC7QIT7tg1Q+fWMnl3Xb5Wk2Ry3DvfxGTgu6LqyUs+0uh88mEvGVl4fNcf8ALsXMrHsW/h2eR1HCfKo74TWLUYsoJBUkbVO8dmzWVp7AQEBAQEBAQEBAQEBAQEDJMmpsizH2i2sBipGmqtuZesa7ISXV5l4qZOO1LErroUcb1YbVYdoMFmXGBlPdUyXALk0nw71G7iHtD3WG0SHGs+ZI9fBnVAmzG1LqN7VH8xfk4h2iE5d1iOroroQyMAVYbiDtBlaRYH93yL8E7FU+Nj/2bnav1X1HdpIzx00OYfg342aNgrbwbj+7tIHyPwnzwctNWvMcd78K2uv83TjpPVYh4kP2gIXlMx1U9WbhK+mtWRWCR2Ou0fLKTWM+VWNZy6pbNtlYNNuvS1RKN5yskTjs45SAeWpQ+3wePHYHqqYp8oEQ47MKUa/+WzSdrjHekn3kU1n5Vjok14tM23xMDEyOu3GfyPYoPyNBbpK+jK2QEBAQEBAQEBAQEBAQEBAQEBAQEBCOTCOTIy4aEZsJEYuJEYuJEYOJlmp7BIzU1gmazU1gmazU1gmazUtgkrNS2CZrFTWCZrNS2CZrNTWCZrNTWCZZqZxIzU7iZZf27k2Pn4XJMPCtwEuSmlFYJYpJOm3VbFQa69s+v9fHHGR936uN48ZMOyvKUOrY1/Lm+fWr1rr2tSWr8821p8KKGynXjwc+rMrHs2hWP+8q4dPKphZnpWWR8Oz8efgPTYP81Rq+n+0q0tHlUQl940xzksnHgZyZdQ/Z3aMR2eImhH1lMLM9K4ybMRyDzLCah13ZKjiUd1tfpL5dILjrGtVWTwCzAzhkUn1Vu0tU91i6N5+KCS9K9szHCGvmGEwrPrOg8eo+YcfnSFz3jjHw+W3KX5dkNSBv+Gs9EHtrPEg+zCSTo24OcVerZTlL1WA1N9peNfuwup/EL0/xGFcnW1fDavk4Dx/dg8vZ6Oc8s10fIWpj7N2tR81gUxk842VsO7aprt7RwtKuldimkbq1HcBC4evZWg1dgo6yQP0wJn5vytDwnKrZ/mIwdvsrqZMs+cc/xNn/AMPiX3dTFPCXz2lD5hB5djTnF29qcRfd1ufzngUeYwag5TjMQ2Uz5bDb+OeJfJWNK/uxg8Z1aX5+FikUltbNPQx6wWcjsRdTpC3lIy15plbgMGk9J0suI7tqJ96E1vs6TGwMBWyHIDafiZNzcTnvdv0CDEmrj4jOzNmKpxqD/mbV9Mj93Wf0t5jBm3ZPlYOLgL8XVe1WZu8Wwmw3E+wy72102cO7ohmyTVjwWc4t8LNBwbKV4lx1P4xDDQt4hHq9Gi+XqhP1b6PLM40IeVPVTbpw1C/QDGUNuFqj1W93p7IPLGjoUNyQjIZmzVs4a24tuQD0LVqfSX3P0wuPH3cU4PxgPNK7K6iW8RcXfRquu24f1nWR6vbCTjnUFlXPLEpyE+GrRS6r+0t12FqnIH4faNp6dBvbn6i3LykDYJcHBqIrv5jWunAun5ZUDhDdBcbB1CC27dHVlVuMwxeRPqCnFZSTx1VqRsZWJ9F26BtB3wYxpxclcOxKsfAR6uaKTq7bLaturvcfaB13bQx3dg02m718huX0/wAOvrrsyMkngyHINdpYgM9wY6rpru3HcIM40U4+Bk8qr/uuuVSdDdU2gsLAAFkbYDu9U+Qw1OPjs18LGzh8Xh2+Fkj0fFUaHUexah0106jtHRpC4l1j1ciu/XB5jSqXONinbXaB01k/o3j5YM50rziyeXeuWyMEe3ta2oe90uvbvHbCaz4evi6t8by51Wyz0mXXWq4e9puPUw+WFx1j0Ni8yqNditVkUkFkJ4ban6GUj5CNhg0ryrKuosXFz9CX9GnJ00Sz3WHsv2bj0dUEuNK5NVvLSXoU2YG98cbWq96sdK9a+bqhNvh3dji/gzsCxVyCo4bBtrtTeFfTeOo7xC2Z1j1XxuZY703IUtrI8WonSytxtDKR51YQaV5jZNtVows08Vja+BfpotqjoPQHA3jyjsEvSszryt+vljHb+4J/9v8AV7txP0/DTKx7arfjsMcVhA8ekbrVHV749k+TuLZ1j22ujmONXfj2cFi+lj3gekjbiCD5mUwbwptrzse3Gyqwtyehk0dRO5lPzTvU/wBMEudK+fRfdl3Hllt2uMhYHJGobIVNAUB0A1XXRyN/R06GJc6KTanKHKPqOXWamkgE+E+/w9B7Lez27OqGs+PwmfHuryRzfIq4aeINZi7SaxpoL2AOhsUet1DuhnGuVXNrRU9GTjfiZ26qlNpurO1lOnQN/F0Hvitcr1m7TllK3KnMLXF19q+iw1C1qd6IDu97XaenqheMzq1y87wnFFKeNluNUpB0AHznPsr/AKCFvJ5i4Ph2HIyH8bLYaGzTRVHza19lflPTCTi9ys5anFFKG/LcarSp00HznPsr2+aFvJzj4DC0ZOW4vyh6p00SvXorXo795hJx61pl51WPwpobL7PyqE2u3/oOsnZC3lhimDbksLeYEPoda8VdtSHoLfPbtOzqEJ453U5OVj41fiXPwrroo3lidwUDaT2CVbcJPCzc7bdxYuId1KnS1x77D1B2Lt7eiRNasRMfGo4UC00VjcNFVQJWtknxeVmbMEeHQd+ZYNh/skPrfSOzvkZzbs3xcGjG4mUF7n/Mvc8Vjd7f0DZCzjhndzEeI1GInxOQuxwDpWh/ePt07hqeyEvLs8r5abHW7Of4m0HVU00qQ+6nX2tqYPHu2ys7HxuEWEtY/wCXSg4rG+io/TulW3Cf4fOzNuUxxsc/5apvTI/eWDd3J5zImLd1P9zwsb2MfHrHYqiVdJE3xGdmbMVfhsc/5m1fTYfu6z+lvNImbdm+LgY2MWsUF7m/MvsPFY3ex6OwbIWcZGLcxe5jXy9BewOjXk6Uqfpe0exfkhPLOz2rlqmxbsxzlXrtUsNK0PuV7h3nU9sYJx7usjmNaWGihDk5Q3016ejr0ux9FB3wXkzHL78n0uY2B16MSvUVD6XTZ5dnZB453a5GbjYvDQql7iPw8aoasQOzYFHadBC2yMvhMvL25r+HSd2JUTof7R9hbuGg74TFu7W7KxMJUoRdXI/BxaVBYgdSjcO07ILZGXwmVmbc5vDpO7DqOw/2jjQt3DZ3wYt3aX5mNicGPUnHdp+Fi1Aa6d2wKvadkFsmjMYF2SQ/MGDLvXETXwh9M7DYe/Z2QeOd3d+cA5xcSsZGQBoyDZXWD/WN0d2/sgvLpEVfJLsV1yqrEsvTVvAsHDQuu8VAamrv2xhnwxq6p5vZzBxj4f8Ad301sts4WIGuh8JQSLPper37oyTnnZ7fy/D5fUcmm9sa4n07STZ4rE7nQ+uSd3Dt6oW8ZNWHxGRkOic4Q4eM2nBWPy7Cf6xwfR+gdPLCZzur5ica3hwqqFyMhQCi+qtI6HZ12p2abT0QvLGzFMTL5YWy7HGcAgF1lh4LVVRt4GY8PD2HTtJhMWa7vacoc4dkVzThpp4lJPDdZr84b0Q+du6CXye8woxFsSnEq4eYlQKjSfDKINgawjZwDqIOvQIXlJ03MenOwLHuyU+PazTxMqsaWgD2fDOzhHuHyQSWb6vo42XjZKF6LA4B0YDYVPUwO0HvlallcZOBi5DB7E0tX1LkJSxe510MheMrHh5pjeqRnUjobRLgO/YjeXhhNZ7tcbmOLe5rVil42tRYClg+qd47RshZylUOiOpV1DKdhUjUESqhPKvBPFgXNin+q9ek/wCzO76pEmGfHsfH5OPszschB/mKNbK/rLpxr5iO2Dys3WU3031iymxbK23OhBHnErUuXcBAQEBAQEBAQEBAQEBAQECXPxbLFS/H0GXRq1JO5gfWRvdb/wCMjPKNcTKryaFuTUA6hlOxlYHRlYdYOyVZcpc8HGuXmKeqg4MtR01a+t31k692sictNV4II1G0HcZWkHL/AO7X28vPqJ+Li/2THav1G2d2kjPHTR7zQGoVZy78VtbNOmltlnmGjeSKcu6rIpryceyl9tdqlTp1MNNkq2ZY8svsuw0Nv59etV39pWeFvORrIcboz5Z+E2Tif1Fpasfu7fxF8xJXyRE49nuF+HnZuP0FkyEHZYvCfv1k+WCb0wvw87Op6C6XqOyxOE/eraCb05YAPjKDuryLNnZaBb/7kHHqi1I/ldNd9Fag99DAf6kdGf8Ai+1K6EBAQEBAQEBAQEBAQBIAJJ0A2kmB8j+Op8Vxf5IL6wGp4Sfzm6k1Gg6xq24SZc/PX2fXldCAgICAgIR4YRyYRw0iM2EiMmEjLFxIjBxIyncTKVPYJlmprBJWamsEzWKlsEzWalsEzWalsEzWamsEzWKlsElZqawTLNT2CZZqjkPL15hzvDxGPDXZaPEO7RF9J9/uia+vj5cpG/q4eXOR/ZxRt0q5paD1E0uPlTX5Z9Z9vHu08PnCbUvpvHU9bIftKzD7sLqmyER2483lZ4x/mMciwjuZfDt8ywzfeGPZxNwYHMeNxvxcocTDz8Fo8usE9q8yBWX8TPwWqsH+cxiX0+tXw2jyrpBfeNcd8wp4mFl159I9m0gMOzxEGnnWFmelywsPLPF4smqzlmSx/OB8MMf7RCa27m80Jp10Vgc1pAKPXm1bxxaVWafSUFG8whrX5YXXcovsHx1Bxcjcr2jw216luU6eZoS2XduMPNrGuLmll3hMhRavkYcD+djC4vSvfi+Y1fn4fiD5+O4fy8L+GfNrBm9j+L8tPo3WeATsK5CtV/zAoMZPOPfgOUZI4vh8e4H2uBG+XQweMrz+C8o/6Onu4F/9IweE7Ok5RypDqmFQp6xWmv6IweE7KUSutdEUIvUAAPklaT2815dU3A+Qhs/q1PG/2V1b5JEvKM/j8q3Zi4bkdFl/4KeY62fchPK9IfBZt/8Ai8ohDvpxwa18r6lz5CIMW7t6sfCwqmNaJRWNrtsHlZjv7zKskif+IXZOzl9XiL/1Vmq1D6PtP5NnbInlnZ3Ty1BYL8lzlZK7Vsf1V+gg9Ff09sE493lvMHssajAQX2qdLLTsqrPvMN591fLpBeXZ1Rg1UMcnIs8bJ0PFkWaAKvSEG5F/0ME441SZFbc34BTrTi1niTNHo2sf3PUOtjv6OuEv5Mvi6uW0ry3JoWx7AVxggHDfqdDxcXqtt9Li2fohM40ryrDyOWEZl+mRUikOoLE46a6nwuIniUDf0/ogk8dXJxP4q7Z2KVqx204UOvDklTvuUEejs0HT19UJjy1jq3JXm1o5dweBfQeLJfUF6yp/YsN5Pzugb9uyFz5aPLMu/lSLy4cDKV/BydNFrQnQteo7/W3MeqEt8dHr4x5PXWeXHxnvbQ4jH81yNrqR6mg2n2dOqFx47OQuCcNso2OeZhtGsUcN4ubYKuE+z0BTs029sJpjPVtg8VVr1c2RTl5fo+L61Ni6bKl19XT5p379sLx92/h5PLttIbIwRvp2tZUPc6WX3d/V1Qus+HT49eSFzuX2ql7DZaNqWAezYvT+kQuM6x6tuPno+Jl1eHkJoz0Mdo03PWw01Gu5hu7DBnOlcrk34LCrMbxMYnSrMPRruW3Tceptx6dIM43LMW7Ddr8FeKpjxXYe4HXe1euxW7Nx74MY2dPXj8wqTKxrPDvTUVXgekp6UdT0a+sp/TBvrCq6vLWzBzqguQF/FpO1XX56HpX5RBLnSua7rcGxaMpzZjOQuPlNvBO5LT1/Nbp6du8ZxuW024NjZOKpfHc8WTirv1O+ysfO616e/eLMax3fSuWlWbhWKMhV1pu3q6nbwPpvU/IYLM6wRsfmWM9VyGu1CBbUTo9dg2ggjzqwg3jzFyLBYcHN0a8AmuzTRbq92unzh7S/0QS9KzqJ5ZctDknAtPDjuf2THdWx+afZPRu6oTb4dZKPg3Nm0gnHfbmUrt/2qjrHtDpHbC3TVJzAPzG7i5adTQpF2QrcIsVhr4CsOvfxezDPLXZRc3L7uUrarfDV0aGlgNGqsT0QvD84H0eHp3QtxhjhVHmgsfmaAXVDw/gtoFfEvr9rMDsPRu36wnH8t3a8wyKCeXOhyM8D8AnYtlR2Cxz0cO5u3dvhfLGnVzyvFHLcs49xDtkLrRftHqjVqQCTwhd6jq7oTjMVnkZVmLzF8fCZfDyWAusYEpj3P07NhNnzdfW74LcXR9XEw6sVCE1axzxW2ttd262P+mkrcmGFuZdk2Nj4BHonhuyyNUQ9KqPbf5B09UiW52UYmHTioVrBLMeKyxjq7t1s3TKsmE9ubdfY2PgAMynhtyW211npA+e/YPLIludm2Jg043EwJsus/Nvfa7ntPV1AbBKsmGeRnt4pxsNBfkj19uldevTY3+qNsiXl0j3G5etdnxF7nIyyNPGYaBQfZrXco+XrgnF1lZ9VDCpVN2S41THTaxHWehV7TC3lhkmBbkMLeYMLCDqmKv5SHo119du0+QQnjndTk5ePi18dzcIJ0Ub2Y9Cqo2k9glW3CTw83O23cWJin9ip0uce+w9Qdi7e2RNasRMbFo4UC00VjXoVQOuVdIj+Ly8zZhDwsc78ywb/AOyQ7/pHZ3yJm3ZRi4OPjcTIC1r/AJlznisbvY/o3SrOOGVvMS1jUYSfEXqdHbXSqs++/X7o2yJeXZ7Ty4eIt+W/xOSu1SRoiH92m0Dv2ntgnHu7yuYU0OKgGuyWGqY9e1yOs9CjtbZC3lhiMHIy/S5gw8Pow6yfD/2jbC/6OyE8c7qMjJxcOpfEIRfVrrUaknoVFG09wlW2RN4efm/mFsPFP7NT+M495h6ncu3tEia32UBcLl+MdODHx02k7hqeknpJlXSRh4udm/kg4mKf2zj8Vx7iH1O9tvZImbW9OPh4NLuNK19a65ztPvO7bT5ZVkkT/EZmbsxAcfGO/KdfSYfu0P6zeYyJm3ZvTjYeDU9moXX0rr7G1ZtOl3aFkkYfEZedsxNcfFO/Kcemw/dIf1m8gMJm3ZtXVg8uodyRWnrW3OdWY9bMdpMLiRjrmZ/q8WJhn2vVusHZ/Vr97uhNb8NnfB5bjKoArr10rrQas7HoUDazGF0kYjFyM48ecPDxt64QOuvbcRv+iNnfCYzu85m2I4TEFPj5QHFTUh4Wr6A/GPyx2+bWE5Y2TU0ZeDcMnmJOdoNFyUGppGm38MdHW67esQklmt1UPlPzENThEHGb0bswgMpHStYOxj27h2wuc7MXxE5LQbMJwtGo4sW3VuNjs9BgC4c9W0dkJjx2e4tg5jkn478JqjxVcufYRpusfX1+zT0R3wTW6u+ZCvLuGNjoGzK9+SNR4APTxKQeI9Ca7enZC8tdDHpy+WcZKHMqsbisvQf3jXrdfb093zQSXj7r8bKx8mvxKLBYm4kbweojeD2GVqXLPJ5fjXuLSDXeNi31nhsHlG8dh2SF4ysfG5jifnp8XQP21Q0tA96v2vq+aEzYqxsrHya/EosFi7jpvB6iN4PYZVlyZOJjZKBL6xYBtXXeD1qRtB7oLJU3gcxxduPZ8VSP2N50cfRt6frDyyJixpj8yx7bBS/FRk/1Fo4WP0ehu9SYJyVStJLuV4z2G6rixsg77qTwk/SG1W+sDIzeMZ+PzLF/xFQyqh+2oGlg+lUTt+qfJBmxTjZmNlKWosD8OxgNjKeplO0HvlWWVtCkBAQEBAQEBAQEBAQIMxbMW459QLVkAZdI26qN1ij5y/KPJIzdNVyOliK6MGRgGVhtBB2giVpBkf3HL+KGzFyCFyh0K+5LfL6reQyM3S5fQIBBBGoOwgytIOXk49r8uc7Khx4pPTSTpw/7M+j3aSM8dNHXNK3FaZdS8V2IfECjeyaaWJ5V3doEU5d1StVdSGXR6rF1B3gqw/pErW6XlTMlL4bnV8NvCBO816a1n7BA7wZIzx7PKfwOa3Vbky0F6fTTRLPk4D54JpS78Hm1Fvs5KNQ/001sT5OOC7vcn8LmmJb0XLZjt36eIn6jeeC7ws/D5zS3RfQ6H6VbBl+R2g6mP6HNstOiyuq0d/pIf1BBN6lCcXJuZ4/zWylH1yzj9eGf+N/i+pRZ4lNdnz1DecayukdwEBAQEBAQEBAQEBA/P845mL2bGqI+HTXxWPquVOjcWn7NTsOnrN6I6ZK5c+WdEXp6+3xh+sCwWEa69TXcPseqq+hvaRl+tmncgICAgICB5CPDDLhpEZsJEZsJEYuJGWDiRGDiRmprBMs1PYJlmpbBM1mprBJWalsEzWalsEzWKmsEzWalsEzWamsEzWamsEjNfqv/AB1i8t+NyczPNZFaCuipwHJZjqzBNCTwgabumen9rx1tev8AZcZm2v3xs5K42cvawf8A2b6feQT3Po549v8ABmU5Eu7Dvxveqovq08tSjSD8ezqu7E4uHF5syP0U3Mr/ACWAWfegzOla5FWY6BczDpz6htDV6K/eEs2ffhbnrMsaraksFeLmWYtp9XEzAzKexfEIc/VfSEntXuQiB/EzsNqbR/nsQs32inDZ51IgvvGtNmaauPHuq5ninZoSq2adXEvoN3ECFmfljUvL/FCY9lnK8pt1BARWPZW2tTd6eeEmPhU13MaVK5WOuVUdhso2HT3qnP6GPdDWb1YY9HK7nIwL2xLxtaqomsj6VDjh+7CSToo15xT0VZidmtNn+up+7C6wPNsdRplVW43X4qEp9tONPlg8u7xMLkeX+LVVj2n+srCk/aXbBjjXX8Hwh6puT6F9yjzB9IweEP4RjdNmSR1fE3/0PGDwh/BeWH16Bb/alrf1y0YPCKqqKaV4aq1rX5qAKPklakYX8zwKX8N7gbf6lNXs+wnE3ySJeUjP4nmV+zHxxjof22Tv8lSnX7TCEzbs9TldTOLMt2y7QdVNunAp92seiO/TXtg8e7XKzsbG4VsYm1/y6UHFY30VG3y7pVvKRP8AD5ubtyycfGP+Vrb02H7ywfqr5zImLd1F1+HgUKNBWg9CmlBtY9Coo3mVbZE64l+awszxwUg614QOo7DaR6x93cO2RMZ3a5eayWDGxUFuWw1CblRfn2Ebh8p6ILekcLy/FqoufMZbmtX+9X26aFRt003Ko6B/TB4zq+YoyPQtyhZZyVG4qlfbYANOF7l04mrHR09Ldhj52bZa2W5TDkzhbnXiy3UjwiGHonXRh4jdBHRtPRC3f8XltnLmwkxaaWTOrbhox9eG5LTt4+Lbs6WfaD2wXGMdXVF38LW0cz/Ee4lmzVGotOmxCo9UgbFXcejbBL47uMbDyuX8XMfDBQqePD120Va8WlTE6drLuPRuhJLNXVGOvNbf4rVYKrEJTCYAEhV1BNo6eLX1egdRhZPLVYl9eVxYOfUqXkelUdqWKParPSPlENZzpXPi38u2Xs12B7OQdr1dlnzl97o6euEzj4dW4llbnM5eV439K2jXSu3t19l/e6emFs6x7piczpDKWqvpbYfVups6v9NhHWINORTlNx/A8wVRc4IR9Pw7l026a7jpvU/ogl6Vn+JyvfrZy3r2lqP6Wr+Ve7cT9Pw0vxrFs+OwCDawBsq19C5ejb0Np6refZC2dYEY3M8dbEZqrqmPA+mltNg3gg/KNxEGnIov8fjwc6tRkcJ4009C1N3GmvR1joglzpXNVtmBauPkMXxHPDjZDbSpO6uw/qt07jt3kmmhdXZgWtlY6lsVzxZWOo1IPTag6/nDp3794umrrJoN3h52CynICjgbX0Lazt4GI6D0HoMLZ1j0jH5niAqWrsRth3WU2r/SPlHYYP1Qx7Rl124Wai+Og4b6/ZdW2B191vkOyCXOlQDKy1yf4Ktvp+zmk6sKtNeDtuA+T0oZzc+LZfC5J6B1Xlbeo21jU+/hO8lX6O3Z0iF/T8J2ouryhzi+rhxy3E+LtJrGnCL2GunGB62zYvaIZxrlvza5q76rsBfG5gEJ8Jdoenf6e0bAdq9uwbzC8723e18vrtxEzMW3xc5tLky22F2004W6kI9Hh6O+F8dMzdxZe/OqBTjA0KjA3ZLD0qrUOvBXu1cHed3fCZ8tm2DXiWcrsxLq1q8LWvLTXc28vxHb6XrBjC8cYwnwcjK5kpxXtKU0AC25dVsvQkhGXYOFWA2sN/RCcbbo+uBjYuPoOGnHqXsVVUSt6RFrk8y3cWPgHp2rbcP0on3j2SM634WquPi0aALTRUvYqqola2ReJlcw2UlsbCO+/dbYP3YPqr7x29XXIzrfhbRRRjUiupRXUu3QfKSf6ZWpMIzmZGaSmAeCjc2aw1HdUp9Y+96vfImc7KcTCoxVIrBLOdbLWPE7nrZjvlWTDG7mDva2PgoLrlOllh/KrPvMN590bevSRLy7O8bl6VWePc5yMsjQ3v0A9CLuRe7y6wTiZXMK6XFKKb8phqlCetp1sdyr2mVbywzTl9l7i7mDC1gdUxl/JQ9Gw+u3a3kAkTxzuoyszHxUD3NpxHREAJZj1Ko2k90q24S+Dm523J1xcU7sdD+I4/eOvq/RXzyJi3dXpi4mP7FGPUOxVUfolXSJPHzc7Zja42Kd+S4/EYfu0bd9JvNImbdlWLh4+KhFS6FjrZYx1dj1sx2kyrJhM2fbksa+XKHAOj5b/lKfd0/MPds7ZE8s7NcXl9VLm52N2Uw0bIs2tp1L0KvYIWccOb+Y62tj4afEZK7H26V1n94+3TuG2EvLsUcu/FXIy3+JyV2qSNEr/s026d+/tgnHu9yeYJXZ8PShyMsjUUp7IPS7bkHf5NYLycV8ve2xb89xfap1rqGyms+6p9Y+83k0g8e7TK5hXS4prU35TDVaE36fOY7lXtMLeWGdfL7LnW7mDC11OtdC/koesA+s3vN5AITx7tMrmC1WeBShvyyNRSp3D5ztuVe/yawXk4o5ezWrkZri/IXbWo2VV/QU9PvHb3QTj1r3Iz28U42GgvyR6+3SuvXpsYfqjbBeXSOsXAWqw33Ob8tho1zDTQfNRfZX/Q6wTiyfMvy2NWAQKwdLc0jVRpvFY9tu3cO3dBnOzaqnD5fju5YIg9O66w6sx+c7HeYXEifgyOZbbQ1GAd1R1Wy0e/0qnu7z09UM7/DLNqqwXVuX/hZdp9DDQapbpv1TUBdOlxp267oTlMbGAwfN4uYarzIa+FU2xFT9zvDbPWPrdem6F4767vc0LzN/hqAOCpvxM3prYb1pPz+s7h8kF/LR1RXk8rr8MIcrDBJNiD8dddpLqPzO8bewwTPH4X4+RRkVC2hxZWfaU9PUe2VuXLHJ5dTbZ41bNRlbhfXsY6dDDcw7GEjN4svjsnE2Z6A1D/N1AlPrptZPlHbB5WbrkdLEDowdGGqsp1BHYRK0myeXY91njDipyQNBkVHhfuPQw7GBEiXjll8Tn4mzLr+IpH+ZoU8QHv1bT5V17hCZs3V0ZFGRWLaLFsrO5lOolalyZGNj5FZrvrWxDt4WGu3rHbBZlJ8Nn4u3Ft+IpH+XvJ4gPct2n7WvfIzizZpRzLHssFFgbHyT+wtHCx+idqv9UmCclcrSbJ5fi5DCxlKXrsW+slLB9YbdOw7JEvGVkp5ljHSz++UfPUBLgO1div5NO4wms91dN1VycVbajcRuIPUQdoPYZWpXcBAQEBAQEBAQECDxrcPK4L3L4mQ34Nzb63Y/lsfmn2T5OqRnOKvlafOq/wC35QoOzCyW/APRXadpr+i29e3Z1SMbX2X2VpZW1dihkcFWU7iDsIlbR8vsep3wLmLWUDipc73pOxT3r6refpkZ49nfMqLGrTIoGuTjHxKh84aaOn1l2d+kHKKMe+rIoS6o8VdihlPYZWpco+Xf3e67l52LWfFxv7Jydn1G1HdpIzx00e5X935jj5O6u8fDXd+1qj9rVfrQXS5Obfh1VZg34lgsb+zPo2fcYnyQcu73m6n4Fr0Gr4xXIXTp8M8TDyrqIpz2ec2YfAfEodRjsmQCPmowLedNYpz2ycz9A4eR0VZCAnstBq/TYIOXR7d6HOMZ+i2m2s96lHX5OKC7ucZAcnmdB3O6uO56VX9KGCb1pyhy/KsNjvNFevfwDWIcNorlaICAgICAgICAgIHx+ec08MHDob8Vh+KwOhVSNeEN7JIGuvsrq3VJXPny6Pi1Agrw666rwcA0OunocKn2uH8tT6i+m20yOcaaJ4Y14OAggEkmvh4toU+sK+LTiu3l9DuEHr1/q/XTT0EBAQEBAQPIR4YRyZGXDCEZMJEZOJEYOJllg4kSp7BMs1NYJGamsEzWamsEzWKlsEzWalsEzWalsElZqawTNZqawTLFTWCZZr+t/wAt4+FyHkmLi3sFzLV8W2pQWtZ326cCgseH1d0+n9PDx44fZ+jjOHCS7vpfHZ1n5GC/D0Ne61A+QcbedZ0dfK9nvic6P+Xxh2eNYf8A2hB+Ti1+YuvDkcvquTpVLQ+vksSsQlz2SFOX1HX4fK5a3zqg3AO8VGyr7QhNPeNUbIyKSK7sbm2P7Vb8Kv5SvEhPZwiDf3Yo9NDBKrreWWHYMfJHHQT1KSSvkRx3Qbezu9FWzxczGbGtP+fwySD9PhHF9pSO2C+7TiybMf0lq5thP7S8AfT6J/DfyFe6F1+Y5xhWWK8ty2psXa2DkBmA+o+lijuOkJPausm2p1C82wtAu7IQeLWO0MoDp3kDvhbe8aU493hi3l2d4lJ9VLT46eRwQ/3jBJ2rv47Mp/xWG2nTbjnxl+zotn3TC+V6xmByDPs9Wiy/pBAW4eQ6OIT8a1/hNK/lX5FXYtzsPM5cQvifw/KHq8xyAOorQf01aweN7n8PyT6/Mcg9gFK/q1gweN7n8Hw2/ONt/Zba7L9nXh+SMHhFNGPj0JwUVJUnzUUKPMJWpMMb+aYVL+Fx+Jf/AFFQNln2V108sjN5Rl/3TK6sGk9z3kfKifeg1vsoxcHGxuI1L+I/5lrEs7fSY6kyrOMjC3mLWWNRgIL7lOllh2VVn3mG8+6u3ukS8uzTFwFqsN9rm/LYaNe3QPmou5V7B5dYJxZ3Zl19rYuAQXU6X5JGqVdg+c/Z0dPVBbnSNaaMXAx3YtwqNXuvsOrMelnYyrJJE9dVnMLFvyFKYaENRjsNC5G6ywfqr5Tt3RnGfhpmZVptGHiafFONXsI1WpD7bdp9kdPdC29IkfGHJafGxCXoJAtxWOrO7aDirPz26tx7IZx47PMTFTPrbmDXmvOJ0DoSPAC/sirabvbDDb5oJM69WWJkLzLJReZKor4T8JWQfCvO0NaOLfs9VTuG3bvhJc3Vzd4i3NjavkcnxnX4jZxup018PXXV0XYW6ejbtgvbo+jZi8bDO5dYq3OATt1quXo4tOnqYbe/dDeOsA+LzKpqLkarIqIL1E8NlbdDKw+Rhvg0pVlXY1i42eQyueGjL00VydyuNyv8h6OqDONK5ai7l7GzEQ2YZOtmIvrJ1tV/Snm6iTGNtnVlNWYqZ2DaFyNPw7htV1+ZYOkfKIXGdY9SzH5hU+LlV+HkJobaSfSU+y6MNNmvqsP0wb6V5Tk3Y1q4ua3Ernhx8o7A/uP0B/kb5IJcaVw1dnLGNlKl+Xk62ULtanXe1Y6U616OjqhP0/DS/HLsufy9lN5Ua7fw7k3gMR91ujuhbOsD8PzPGBUtVfU2w7rabR/p3EdkGnKFF4yBZgZ6L8QF/ET2LEOzjTXo6x0GCXOlc0W2YVy4eSxelzpiZDbSf3bn53zT098EuNK5cHllrWqP+3WHW5B+xY73X3D7Q6N/XCfp+HeXRZVb8fhjjfQePSu61Bu099fZPTuhbOsS8wvGb8OeVuDn6eJVfuWus7G8TYdjaacPX3Qzyudt3VVfLn5O6uWx/AJa93P4td67S5bpbXbr090ExhnhK3NGdeaJo1KgLhkFQQ6/nEHpbboPZ74OP5bu1zsqi08pAF+bprRY59E0nZx2dq7iPa8uweVmnV7y3HTlV/wjniryNGpyCACWVdtbabtANU7NnRBxnjomNhfKZKHark+VZo9y7NbW14lrbXVUsO9vnbt+sJ19leQKOUWDKQCrAcLXkoo2KR6KWAD7LeTqhq/jr0TZlF1tg5nkU8GGvCLsQ68b1LqRZaAdPQJ4uDq16YZs61Xze6rGFHMEINlZCCtdpurf1kUDeR6y90Nc7jV1jY753h5mWQajpZjYqniRQdqs59tvkHR1wSZ1qrLzaMVAbCS7nhqqUau7dSr0ytW4T14d+U63cw04VPFVhg6op6C59tvkHR1yJjO6nKy6MWvjubTU8KKBqzMdyqo2kyrbhKMXIzjx5w8PH3phA669txHrfRGzvkZxbusvvx8ak2WsK6k2anYOoAf+krVuEfDmcw9fixMI/s/VusHvEflr2D0u6RnW/CxEx8agKgWmisbhoqqBK3sj+Jys7Zh604p35jD0mH7pT+s2zqBkYzbsqxcPHxUK1LoWOruTxO7dbMdpMrUmE9nMLLrGo5eotsU6WXt+TWeokes3ujykSJ5dmmLy+ulzdYxvymGjXvv06lG5V7BCziZXMEqs8ClDkZZGooToB9p23Ivf5NYS8mdXL3ssW/PcXWqda6h+VWfdU+s3vN5NIJx7t8vNoxVXxCTY+yqpBxO56lUSreWE3wmVm+ln/h0dGEh1B/tWHrfRGzvkZxburuvxsSjjsZaql0UdHYFUD5AJWrZEnDm5/r8WHhn2BsvsHvEfljsHpd0jOtVKuJhY2g4KMeoancqgdZla0kS+LmZ+yjixcM77yNLXH7tT6o95tvUOmRnNqqjHxcOgisCqsas7E7z0szHaT2mVqSRL8TlZ3o4etOKd+Yw9Jh+6U/rNs6gZGc27KcfFxcOpuAcI9a21zqzHpZ2O0+WVqSRN8Tk5/o4ZNOL7WYR6Tf2Sn9Y7OrWRnNuymnHxMGhuHSusavbY52k9LOx2k9plakkS+Llcw2UFsbCO+/TSywfuwfVX3jt6uuRnNvwp0wuX4vs0Y9e/vPykk+UytaSJvCyeY7bw2Pg9GPussH7zT1V93f19UjOLfhTk5WNhVIvDtPoUUVj0mI9lFH/6CVq2RjThXX2rk5+hdTxU4wOtdZ6z85+3o6JEkzrXWVnOLfhcRRbl6atr6lYPtWEfIu8/LBeXSO8TCrxg9rubch9t2Q+86dHuqOgCFkwjuQc40rUacuVgxv09KxlP7I+yvv8AT0dcM38vh3WMnlla18JyMBBorIv4tajrVfXHaNvYYJnj8L6L6b6ltpcWVttV1OoMrcuU+Ry5GtORjucbKO+xBqrdlibm/T1GRm8ezhOYvU4p5ggosY6JcDrS57GPqn3W8msHl3XStIX5aa3NuBZ8NYTq1emtLn3k2aHtXQyM+PZ7VzILYtObX8Lcx0Qk61Ofcs2eY6GCcu62VpJfy2p7DfQzY2Sd9tenpfTU+i/lkZvFn8fk4uzmFelY/wA3SCa/rrtZPlHbB5Wbrq7EsQPWwdGGqsp1BHYRK04yMajIrNd9a2IfZYa7euEsyk+Gz8Tbi2fEUj/L3seID3Ldp8ja94kTFmzXG5lj3WeC3FRk7zj2jhf6vQw7VJgnJVK04spRzxbVsA0Fi7G/+I7DBhhZkZGPttrN1PTZUNWA96vefq690iZw2oyKMioW0OLKzuZTqO6VZctICAgICBxTdVdWLKnFiHcynUbNkEuXOTR49LVixqmOhWxDowI2g9vcYSzLHDzLGsbFygEy6xrs9WxN3Gn9I6JEl6VRdTVdU9Vqh63BV1O4gytWZSYd1uPd8BksWbQnFubfYg6D769PWNvXIzLjSqsnHqyKHotGtbjQjce8HoI6JVsyn5fkW6vh5J1yqNPT3eJWfVsHfubtkTjele8xxrbES/H/AMXjnjp12BvnVnscbO/Qwco2xcmrJx0vq9SwagHYR1gjrB2GVZcpcb+6Z74p2UZHFdjdQbfannPEO89UiTS4e80U1LXnoNWxCWsA3mltlg8g9LvEHLu3zMdcvDsqDaeIutbjobejDuOhlWzMc4ly5uArWLtsUpdX1MNVdfIwIglzGfKmL4Iot9KzHLY9uvTweiCfpLofLInHZxyxBZy1sO3b4HHi2a9Kpqq+dNDBx2wx/FyP5bYb8iuplP8Aa0aj9dIZ34ts21XHLstPV8ZCD7tyNWPlcQtu1d1+jzq8dFuPUw70dwf1hC/8jkuzltS/1Zev7Dsv9EQ4bLZWiAgICAgICAgIEPN+Zpg43ENDc+oqU7teljpt0X/4bzIzz5Yj8qpd2LOSzsdWJHESS3SB6xLDd7TDT1EkcG6gaHXQghtdW9Err6fFZ8zX82z2z6K7IVsC2p0LcegdiF/E00OjtXu4eHXho38HEd8L69f6P1c07kBAQEBAQEI8MI5MiOGhGbCRGLCRli4kRg4mWU7iRmp7BMs1NYJKzUtgmazU1gmazUtgmazUtgmaxU1gmazUtgmWa+r/ACjyI825uoYlcfH0tudd+w+io16zOv08PLk7ft/q8+XtH9RWrl3LaWs9ChN9lrn0mPvM3pMe+fRfVxIyGdmZH+DxiKzuvyCa1PaqaFz5QJDyt2dfCczfbbn8B6qKkUf8TxYMXufw/JG0cxyAesig/wDtQeN7vPh+aptrzUt7Lqgflrav9EGL3TZFFrtx5nLltcbsjFfSwdu3wnHkYwzZ3jiu4sTRj5YtJGhwc9SrkdQYhX8pVoM+/wDNwDXisAps5S+uxH/ExGPYdeFfIUMJt7f0dWqlbm7JqbDtbb8fhniqbtsGn66kdsLffRpbx21KcuhOY42+vKxvXX3uEHXyo3kgvvq6xnyChfl+UubSuxqLyRYvZ4gHED2OpPbCzPS5cMeWPfrclnLM1zpx6+EWP011rs7jr3QmnxVWnN8fca82sdf4VvnGqN92GtZ7srs3lV4FfMafBO4LloAuvY54qz5GhLyl3aLyrG4Q2LddQp2jwrWKeRW40+SF8Z0dfCczX1M/i/tqkb9TwoMXueHzv/qMY9vgWD/3YMcj4fmzevm1qP3VGh++9kGL3efwmt/8TkX5PWrvwL5UqFanyiDx7qqMfHx08OitakHsooUeYStSYYX80xq7DTXxZGSN9FI4mH0j6qfWIkZvKM/hM3L25r+DQf8AK0sdo/eWbCe5dPLBi3dV/dsTH9ijHqHYqKB8glXSI+LK5jsTixsE77Nq22j3elF7d56NN8jOt+FROJgYmvo0Y9Q2AbAB2AdJla0kTVUXZ1i5GWhroQ8WPiNv1G57fe6l6O/dGZM61rm5jo642MA+ZaNVU+qi7jY/YPlOyFt6Td1RRj4GM7O/XZkZD72Om1mP+mkqyYjHEqsy71zshSqLr8HQ29VOzxGHz2HmHlkSTOqPmOGc/NevDIrasBc23bwWdK0OFI12esd4GzphnlM3R7l5a5dI5YaPCz30HhMNVrUftlYaahfZI6dmyC3OnVtjs/KUXHyPSwgT4eX0qWOv42nWT6/n0hZ+Pw0fEuxXORy8Bkc8VuJroj672rO5W+Q/LC4xrHpXF5lWt1LtVk0khbAOG2pulHU/Kp2GDTkV5ItJwOY1qtzggDTWq5ekpr8qnaPlgz0rjjv5ZstLXcv6LTq1lI6n6WT3t46euE/T8O7caytzm8vIY2eldRrpXcPnA7lf3unphbOsCuNzOpbqXanJpJC2aaWVP0qyn5VOwwaciu9MkPgcwqVbyvpV+xYvz6yf0b1+WCXOlc1324DrRlObMViFoym3qTuS0/obp6du8mcbllVvL3a/GUvhseK/GUalCd9lQ/WXyjbvGMbbOrqfG4OYcvdTeVHT6Fyb+FiPut0QtnWBGPzPHDIWpyaW9FtNLKbQNoI/SNxEH6iq1Myu3BzqwuQo/Fq28LLrssrO/TXygwS50pjX20WjBzG4y2oxshv2qj2W98Df17+uCXGlR5GVZyq4YdHC9V+3GDnZQSwX0/3ep9H7PcZt8dHfw45KGyw5sxrDxcwZvW4yfzgB37VHRu7Rjx1ZWY2RlXLzhKtUXhavD9q2tddHbbpxji1QdHfuJjOrTPyfi2oflJFmeq8aWbkWtt62/S02Lv17oXlc7buqcXEu5Z41dhqyUY2vk26eIl6DRvE7vVI3cO7ZBJMMUL/zDjtXcPh8VNBZWNrtZoGDDUbEGuq/O7t5P1xuc3H+Csws9AchNKWxqxts1HoNUo6GA1HzfJC+UxisuXY9mRa1PN/xcmhR4dLaFPDZdOPqZztVj0dHaOMzu7qzrcR25VwHJykAOKNdjUnYDY3Rweq3Xs64Jyxo85Th/BZrY+SRZfwcWJbt4RVs4qqwSeHgPnGkHCYurxMt8LNs5XiqtzufExlLALUG1Lq/TovrKBt0PZBnFxH0MTAWlzfa5vy3Gj3sNNnzUHsr2eeVqcXOTnlbTjYqePl9K66JWD02N0d28yF5dI9xcAV2fEXv4+WRobiNAoPs1r7K/p6YJxe5XMFqsFFKG/LYarQp00Hznbcq9p8mspeTjHwGNoyc1xfkj1ABpXXr/Vqen3jt/RITj1rXLzqcbhVtbLrPyqEGruewdXWTsEq3lhgmDdlMLeY6FQda8NTrWvUXPtt8nZ0yJ453VZOVj4tXiXOEXXQdJJO4KBtJPUJVtwk8HMz9uRxYuId2ODpa4/eMPVHur5T0SM4t+FgGPjUezTRUOxVVR8gla0iPx8vP2Y2uNiHfksNLHH7pTuHvN5B0yM5t2V4uJj4tfh0rwgnVidrMTvZmO0ntMrUmEr592S5q5cA+h0sy221IekLp67dg2dZkTyzs2xMCnHZrNTbkP+ZkWbXbs6gOwbJVnHDjI5hpacbET4jKHrDXRK9emxtundvkS8ukMfl4W0ZOU/xGX0ORoqa9Fa7eHv39sE49a6y+YV0OKUU35TjVMdPW062O5V7TC3lhnVy+y2xcjPYW2qda6V/KrPYD6ze8fJpCTj3bZedTjcKtrZdZ+VQg1d+4dXWTsEq3lhgmDdlMLeYkFQda8NTrWp6C59tvk7OmRPHO6jLzaMVV49Wsc6VUoNXc9Sr/AKASrbhMuFflsLeYaeGDrXhKdUHUbD7bfIPlkTGd1GXm04qqG1ex9lVKDV3PUo/p3CVbcMK8K7JdbuYaEKeKrEU61oegt89vkHR1yJ453bZedXjla1U25Nn5WOnrN2n5qjpYyreWGePg2PauVnMLchdtda/l1fQB3t7x290iTj1r3KzytvwuKguzCNSuuiVg+1Y3QOobzBeXSbusTAWl2vtc35bjR72Gmz5qD2V7PPKTixty78uxsfBbhRTw35mmqqRvWvXYz/IPkkM52UVVYmBjNoRXUmr2WOdpPSzsd5PXKskkSiu7mZ4rlNXL96UHY93bYOhPd6enqkZ/V8PpAAAADQDYAJWyBFfy4i1sjCf4fIba401rs+mvX7w2yM3j1j3G5iHtGPkp8Pl9FbHVX06a23MPl6xBOXSq3rSxClih0YaMrDUEdoMrSD4TLwtuCfFoG/DsO7+yc+r9E7O6RjFmyjEz8fJ4lQlLk/MoccNi96/0jZK1OWW1tVdtbV2oHrYaMjAEEdoMLYh+EzMPbgv4tI34lzHYP3dh1K9zajukZxZs3xeYUZDGrbVkKNXx7BwuO3TpHaNRKs5ZUwqGzlgRzbg2fC2k6soGtTn369g8q6GRnx7C8zNLCvmFfwzE6LcDxUsex9nCextPLB5Y3Xb5WmWTi4+TX4d9YsTeAeg9YO8HtEJZKl8HmOHtoY5mOP2Np0tA9yw7G7n+1ImLPdvi5+Nk8S1kran5lLjhsX6Snb5d0qzlKohUeRy5WtORjOcbKO+xRqr9libm/T2yM3j2eU8xZLVx85BRex0rcHWqw+43X7p298E5dKtlacX12WVMtdppc+rYAG0PcwIgqXHzrFuGLmqKsk/luPy7dOlCdx61O3vkZnLpVsrSHIxLqLWy8Eau23IxtdFt7R81+3p6esRmzGsU4uVTlUi2o6jUhlI0ZWG9WB3ESrLlxm4a5NY9I13VniouX1kbrHZ1jpEFmXODmNdx0XqK8ynTxaxuIO5061b/AOEJxv8AN3m4iZVPhklHUhqrV9ZHG5hC2ZcYGW9wem8BMujRbkG467nX3W6PNCca85hi22BMjH0GXj6tVrsDA+tW3Y3yHQyHKdm2Jk15WOl1evC29TsKkbCpHWDsMqy5SD+48w03Yua2zqS/T9FgH2u+Rna/LfmOK+Rj/hELkVEWY7HosXdr2H1T2GVrlMu8TIry8VLlGi2D0kO8EbGU9oOwwS5iflZNItwGO3EIFWvTS22s+TavkkTj2eY/935nfj7q8kfEU/SGi2j9VvKYJpXqfgc4ddyZlYsH9pVoredCvmg2vyU/g83vr9nKrW9fp1/hv93ggmlMABMvOxjuFguQe7cup++rQcd7EW1f5bYe1g6jt/uluz5K4Z/4/H+S248POMRxuspur8oKMPkBhq7x7ynZVkV/Myb/AL1hf/Wg4rZWiAgICAgICAgZ5ORVj0PfaeGtBqx/oA6z0QluH4rLzbc3KbJtPCD6i66BVG0DiG7QbS31vmTLzXlm59evXZ0i6bxpprqD6Gmi6NqR6gC7GPsL6A9ImFULs2k6aFCSU3H9mTX87+pp9n1m2wvr1/lGnDs4NDsfTg49NLTt0FvtZB014vVHqdMq+vXu/Vyu5AQEBAQEBA8hl4YRw0iM2EiMmEiMXEjLBxIjBxMs1NYJKzU1gmazU1gmazU1gmazUtgkrFS2CZrNS2CZrNTOpJ0A1J3CZZf0b+W8Q8p5eMLGqF/NLdLMvU6JUWHoixh80eyNpn0Pq4eM930/o4eHHHV9rH5Yi2jIynOVljdY40VOytNy/p7Z0d5x60t5kGsajCrOVcp0cg8NSH37No17BqeyC8uzwYOZdty8tgD+xx9akH1tth+0O6Dxt3r0ck5T7eLXaeu0eIfO/EYweE7B5JyfeMKhT1rWqnzqBGDwnZ5/CaU/w99+OejgsZl+zZxr8kHgzyMTmBr4LVo5jT/V3L4b+ccaE/VEJZflILRjnw1uswS2z4bNHiUN2LZqdO4P9WGc49vl5sxDr6XK2PtL+LhMT17uD7kG3t/R6wShvFtU8vsfb8ZjHjxn16bF00GvWw+tBt7O7wCVuzqNoHoczwy273gurgfaWFvv/NstmWaNfw+a4Tj1l4BYR2j8t/u90Lr8xxi14rsV5ZlPi2rtbDsBKjvpfRlH0SISY6KDmZlIK5uIXr3G7H/FXTtrPpjyBoazesZUYvJMks2E4qsHr/DOamB99FK/eEJJxuzb4PmVf5OdxjoGRUr/AC1mowuL3OLna/ssa3t8Syv/AFLIPye+Pzj/AKOnX/7htP8AlQZvZ5/3t/8ApsftHHd/9GD8j+Ftb/jMq28dNYPhV/Zr0J+sTB491dFFFFYrorWqsbkQBR5hK1JhLdzOvxDRiIcvIXYyIfQQ/vH9Ve7f2QzeXZ5Vy97bFvz3F9qnWulRpTWetVPrN7zeTSQnHu3y82nFQGzVnc8NVSjV3bqUSrbhhRh3XXLlZ2hsXbRjg6pV2+8/vdHRIkmda0zc1qmXHoUW5lo1rrO5R0u5G5R8u4Slv83WHhrjIxZjZfYeK+9thZv6AOgdELJhKn/c7hYf/wAdS2tY/rnU+ufcU+r1nbu0kZ/V8Ns/KtUpi42nxd+vCTtFaD1rG7ujrMq8r0joDF5Zgk7RVUNSd7uzH7zOx8pg04xNVyoZCNkZoK5tpDh0OjUgeoiMPm67es6yJOOd93a5luMwo5loUb0a8sDSt9dnDYPYY+Y/JBnG7w4+Ry88eGpuw974ftJ20k/qHydUGLNtnrVUZoGdgXCvJHoi0DYdP2dqbNdOo7RBjOsFtozg2FnVeFkj0jUTv03WVONNdOsbR0wZzpXi5N+Cwqzm8TGOyvNPRruW7TYD7249kGcbjY92AxtwlNuITrbhjeuu9qf6U3dXaMY2etVXlhc/l9oTI0049vC4H7O1d+zzrBjOsA2PzKtqL0ajLpIYprpZW3Q6MN46iN+49UGlK8hg3wHMlVmsBWu3T8O4abtOh9N6+aDPSuQ9vKyFtJs5duS47Wp91z0p1N0dPXB+n4e2U24djZWGviY9h4sjFXp132Ve91r09+8YxrHtlYyAnMeXOpv4e5LUHsP1EdB3qfKILM6wPg8zpD1lqMzHb0SR+JVZptVh0g9I3EQfq+U2VmnKpbl1uPrzM7qgSFXTdetnQgO0Hfrs3wludOrnGbHwVyMfmzK1toLPlOPRyE3aAdag6cA8m+CaaVniJcMmheYhxhk/9uSw66NqeEXe/p6mv60JN9duhdlWYOQ+HhuoxGYB7mBKYjOfV6iG9lfZO/ZpBbi4n+zd66uRa5IYnBtI+MLnicWNs8brPF7QHeIX9OvRhfj322fxS2nTCYq9uENSzooOlzgHQsuw8HUOvSEs69G3M8sVX1ZXLh8TmNXq9Fe0WUaEhmI3aH1T07hvheV6zcXDsauvm1FvxWdw8XENiPUdpqRT6o+b0674MderjMyreYiu7lC8V9ALDJb0UHEu2raPSY7NR0Hf1QludmteHj2cvTLwSfikPjLdafTZwNHW09u1SOjyQuJjMY3X5HO8VLOWjwVr/Ery32N4gBBRB5eFmOzq1hLfKaN0x8a7lC2YgGPZUTcjOdqXpqG8RjtJ11VyYXEs0MbPyebUI2JrjYrD8XIOhct7SVjaNh2cR8nXBOV5bPo4+Nj4lPh1KErGrMTvJ6WZjtJ6yZW5JEhy8jOPBgnw8bc+aRrr2UqfW+kdnfIzm3ZVi4dGLWUqXTiPE7k6s7fOZjtJlakwmfPuyXanlwDcJ4bMtttSHpC/PbsGzrMieWdm+Jg043E4Jsvs/Nvfa7d56B1AbJVnHDPI5gfFONhp8RlD1xrpXXr02N0fRG2RLy6R7jcvCW/EZD/EZemnikaKgPs1r7I+U9JlJx611l59WOy1KpuyXGteOm1j2noVe07IW8sMa8C291v5gwsZTxV4y/lVnoO31294+QCRPHO6nKzMfFrD3NpqdEUAlmb5qqNpPdKtuEnw2Xn7cwGjFO7EU+kw/esP1V8pMjOLd1rvj4tBZytNFQ3nRVUCVrSIuLM5h6nFiYR/aH0brB7oP5a9p9LukZ1vwsoox8Wnw6lWqpNT1DrJJ/STK1JIkOXk5x4cA+Hj7mzWGuv9ip9b6R2d8jObdlOJh4+KhWoekx1ssY8Tu3WzHaTK1JhPZnXZLtTy4BuE8NuW22pD0hfnt2DYOkyJ5Z2b4mDTjcTgmy+z8299rt3noHUBslWccMbs+yy1sbAUW3KdLbm/KqPvEes3ujy6SJeXSNcTArx2a1mN2S40syH9Y9g6FXsEqzjhnfn2Pa2NgqLb12W2N+VV9Ije3ujy6SJeXSNMTArx2a1mN2TZ+bkP6x7B0KvUolWccMrs6261sbAAexTpdkNtrqPV7z+6PLpIl5dI2w8GrGDEE2XWbbr32u57T1dQGwSrOOE75d+Y7U4DcNSnhuzdNQNN61A7Gbt3Dt3SM5zspox8XCoITREGr2WMdpPSzsd57TK1JIk4r+Z7ELU8u6XGq2XD3elU7d57pGf1fCu23EwMYFtKqU0VEUdO4KqjeT0AStWyRNVi35di5OcvCiHix8PeFPQ9mmxn+Qd+2RmTOtfQlbICAgZZOLRk1Gq9A6HboegjcQRtBHWISzKPjzsD8zizMMftANb6x7wH5g7R6XfIzrPeLqL6b6ltpcWVttV1OoMrcuWWXg4+TwlwVtT8u5Dw2IfdYfo3Ql45T/FZmFszR42ON2ZWu0D96g3fSXZ2CRnNm66uyuxFsrYOjDVXU6gjsIlbZ5WFjZShbk1KnVHBKup61YaFT3QlkqXj5jhfmA5uMPbUDx1HvKNA/wBXQ9hkZ1nurxsrHya/EosFibiR0EdBG8HsMrUuWjKrKVYBlI0IO0EQqE8uuxvS5dYK16cSzU0n6PtV+TZ2SM+ONndHMq3tFGQhxso7qrNNG/s3Hov5NvWJSclkNJ8vBx8nhNgK2p+Xch4bF+iw2+TdCXjKn+JzcLZmA5GMN2XWvpKP3lY/WXzCRnNm66q2u2tbKmD1sNVdTqCOwiVuV5dTTfU1VyCytxoyMNQYLMoeHM5ftTjy8Iex611Y9077F7PW75GNZ8LqMinIqW2lxZW25l3Sty5eZGNRk1Gq5A9bdB6CNxBG4joMJZlEuRfgMKsxzZik6VZh3rruW7+htx6e2M5xu+jK2hy8S6u45uEB8RppdSdi3KOg9TD2W8h2SM2dYoxMunKpFtROmpVlYaMrDerDoIlWXLPOw2u4LqGFeXTqabDuOu9G61bp88JyjrCzFyqieE13Vngvpb1kcdB/SD0iF43LPPxbWKZWNoMujXhB2CxD61bdh6OownKdY3xMqrKoW6vXhbYVOxlYbGVh0EHYYWXKO7+4ZnxI2YeSwXJHQlh2LZ3N6reQ9cjN0ueizLxq8nHeizXhcaajeCNoYdoO0StWZjHl2TZbU1V+gysc+HeBsBIGocdjjaITjWaf3PmZr3Y+cS6dS3qPSH11HF3gyG1+TmP93vozxsWs+Fk/2VhA1+o2h7tYOWmr3mwKUpmINXw38UgbzXppYPsEnvg59+zzmxC4team04jrfqOmvdZ/w2MHLbL3mRFb4mYN1VoRz+7u/DP3ip8kHLpS78LnGO/s5NT0t9Ksh0+Tjgu7iioNdzPDb1bGFgHu3V8J+8rQkm8YV2l8XkuS3rcaLZ3vSyEfb0hJdJVXL/Ry+Y19V4YdzU1n9OsNcd6ulaICAgICAgICB+O/mDm/x2T8PSdcak6ajU8b7tdm8DXQf/FTJXn+znm4RUjdpv2aaEa/OGh9Xo1B3e36oQSMxVWAANN3o6aKW6da9EO1tv5SHefTaF9evXu2QHVeEHiJZUCNq3EfXWtz7X9bd0bllX16/wA691TwwSa/CKFQxGtJrBAKqnrCjXTis3ltG3CF9evZ+tldyAgICAgICB5CPDDLkyIzYSIyYQjJxMowcSMsHEjNT2CZSprBIxU1gmazUtgmazU1gmazUtgmazUtgmaxX2f5V/l3J5hlDLJNWLS35vtFh8zXpHX0Tt9H15uXo/b/AE3lc9H9ARMLl+IdOGnHr9JmJ6TvJJ2knzme19HSRMEyuY7bOPGwTuqGq22j3zvRewbevTdIzrfhfVTVTWtVSCutBoqKNAB2AStyOoCAgICB4yq6lWAZTsKkagiBCeVCnU4Fpxtd9OnHQf8AZk+j9UiRnx7IGV8JiWB5cSdtifi4T6/OXZ4ev1e8wxt7f0ARjMH1/hrvtFqfiYVpPSRsC6/VPaYNvb+jqzw6rPFyFbl2Q/8AnaDxY9h6C+o4ftr3GD50a5HEyKOZ4q5FS7a83GBJX3uEHxE70Jhb7tKPixWLeX5aZ2P0V3Nqe4XKCftKe+Fmely4yMnldzKvM8b4a0bFe9QAD7l6+j94GEtl3brgXoA2HnWKh2qlul6edvT+/DXj2r3j51X61VGQOtHao/ZYWD70H5H8QzF9fl1/ejUsP+YD8kHlex/Erju5fkk9WlQ/TYJTy9j4jm1myvESkfOvsBI+rWGB+1IZvZ5/Dbr/APHZL3L001/hVeUKS58raQeOd1tVNVNYrqRa612KigADyCVqRFZzJrnNPLkF9gOj3H8lD2sPWPur5dJGfLs1xMBKXN1jm/LcaPe+/T5qjcq9glJxw8y811s+FxVFuYw10PqVqfbsI3DqG8wXl0m7vDwkxlYljbfaeK69vWc/0AdA6IWTCW5m5la2NWSMGs8OTaP2jDfUp6vnnydcjN/LToqy8mrDxwwXU7EopTYWY7FRR/ppK1biOcDEekPdeQ+Xfo17jcNNyL7q9Hn6YTjP5sKf+4ZYyDtwsZiMcdFlo2GzuXcvbqeqRJrfZ9GVt46JYjI6hkYaMrDUEHoIMD5/gZfL9uMGyMMb8YnWxB+6Y+sPdPkPRIxizbZ4KqcsnN5bcKsn1bDoeFiPYur2HUeRhBjOsDbjZxGJm1nHzF9JF10Oo9umwaa+Tb1iDMul3enKuxB4PMdLMZvRXM0HDodmly7l+l6vdBnG7wU5GAOPEByME7Tig6ug66Sd49w+TqgxZtsCpL9c/ldqrc2y1DqEsI9mxd6sN2u8dOu6DGdYa43MTwNxYnMcfaBsFtZPSp3Oh8xg0vyG5bB8BzWtQ9myuwaiq3TcUO9X6eHf1awZ6U8e7A/DzWN2EdiZZ2lB827s9/z9cGcb7Aru5d6eMpv5edrULtaoHpq+cvu+bqg222PDP/5DlbLYtvpXUA6Jb7yn2bP09PWB7xLk5Qy70s5UCOZqNLeMFURAdqZA/VG/q2QzbnbdkPgFxy1rWVc6VtS2gbINpGwKo2PWRuA9HTqhNP8A8mlNTZ9rJzcmnMrAemhDwqgH7atgTxNr0+zu7yyZ33cLl38yH8MtZRU+oOaF2Xqn9SCOHi6z0b116Bny0aLkU8rX+FZFfji0EYYUAm4Mdq2A7OLbtY7Dv3wZ8dHOHjWYmVSvND4iH0cEluKuljr+EdQNW02K537tnSJMXVwuZdRacTBcDlzuK681gWSlm11qTofbsU7gdnZBnGk2UVVY/IXOp05feQWuO1kt009IgbVfTZ1HZuMLJOHwnZbxfxOLMTkuVZ6Sa8Lh26W6a67DvGuuvVrDP/6qb7sbklysAEwck8IoQbUtA2FFHQ+mh03Hb0mGrZx+E9mLcuUMjOTwuXZVn4uIG1VbDoEe3TYeLcwHo66b98JjXN2U5mVTynNFm+jNPCaE04hcBorKuzY/qnt07YW3xvynbEtXOS/mChcPLf0sVSSiXaAVtb0NxaadWum/fCY112U5WTVyrPDtqaM46CpBq3jqNBwqPnjYe0DrhbfG/LYYeRmkPzAcFG9MFTqvfaw9c+76vfC4t3VZOVjYlXHcwRdiooGpJ6FVRtJ7BK1bIk8DLz9uUDj4Z3YoP4jj96w3D3V8p6JGcW77LHfGxMfiYrTRUOxVUCVrSI+LN5h6nHiYR9s+jdYPdB/LXtPpd0jOt+FlFGPi0iupVqqTU6DYO0k/pJlakwkOZk5pKcv9Cjc2cw1U/wBkp9f6Xq98jObdlOJhUYqsKwS7nW21zxO562Y75Wpxwwu5g72tj4CC69TpZYfyqz7zDe3ujb3SJeXSNMXl6U2G+1zkZbDRr33gfNQbkXsHl1lJxMrmCU2CipDflsNVoTeB85zuRe0+SC8sM6eXu9q5Ge4uvU611j8qs+6p3t7x29WkhOPWt8vNoxVXxCWsc6VUoOJ3PUqyreWEwwsjMIs5hotQ2pgqdV77T7Z7PV798jOM7q8jJx8WnxLmCVjQDrJO5VA2k9QErVuEfg5fMNuSGxsM7sYHSywfvGHqj3R5T0SM4t32WO+NiY/ExWnHqHYqqBK1pEf975j8/FwT3rdaP01r97ukZ1vwsVcXDxtAEox6h2KqgStaSI+PK5j+WWxsE/tNq22j3elF7d56NN8jOt+FiJi4eNooWjHqGp3KoHSSZWtJEfFk8y9QtjYB9vatto93pRO3eeyRnW/Cv+6YWL7NGNSOxVUStaSI+DI5ltsDY/LzuqOq23D3+lE93eenTdIzry+Fl1+LhY4ZyKqU0VFUeQKqjeeoCVq2SJExb85hdnLwY4PFThHbu3NdpvPu7h2mRnGd1OZm14qqCDZdYdKaE2u57OwdJOwStXlhli4VhuGXmkWZX7NB+XUD0JrvPW289ghJx61bDRAQEBAQECK/lxFrZGE/w+S21xprXZ/aJ1+8NsjN49Y9xuYhrRjZKfDZfRWx1V9Omt9zD5esSk5dKshpDZy1qna7l7jHsY6vURrS595R6p95fLrIz49nWPzJWtGPkocbKO6tjqr6dNb7m/T1iUnLpVkNJMnltVtnj1M2PlbvHr0BOnQ6n0XHfDN4shzC/FPDzFAibhmV6mo/TB1Nfl2dsieWN30FYMAykFTtBG4iVtnfj0ZFRqvrWys71YaiCzKPws/C20E5mKP2Dn8ZR7jn1u5vPIxiz3U4ubj5Sk1N6SHSytgVdD1Mp2iVqcpW8Kht5c9VjX8vcU2sdbKW/JsPao9VveXy6yM3j2aYvMEusNFqHHy1GrUPvI+ch3OvaPLpKTkqhpFkYFiWtlYLCrIbbbWfyrfpgbm94be+Rm8esaYedXkcVZU1ZNf5uO/rL29qnoYbJVnLKh0V1KOAyMNGUjUEHoIhXzvxOV79bOWde1mo/pav5V7t0Y/T8PoqysoZSGVhqCNoIMraLLxbqrjm4Y1u0Avo3C5R+hx7J8h7IzZ1inFyqcmlbqTqp2EHYQRsKsDuIO8SrLlPm4ty2jNxB/eUGj17hbWNvAe0eyejuhOU6xRi5VOVQt1R1VthB2EEbCrDoIOwwsuUeUrYGQ2dWCcazT42sdGmwXAdntdndIzdNVzpVfSUYCyqxdCN4ZWH9Mre6Pl9llFrcvvYs9Q4sext9lO4an5ybm8h6ZGeNxocwBxbk5kg9GscGWo6addeLvrO3u1hOWmrfOxhl4jIjcL7HotG3hdfSRvPK1ymY5xbq8/B/FTTjDVZFJ9lhqrofLCS5jjldjtjvi3njuxWNNhPtKBqjH6SEHvkOO2HPKwBj24FvpfCsadD01Ea1/cOneITj2ZYtJyeUXcvsb8SkPisx36qPw27ypVoJMzDnIyTdyjF5gRo9D13WD5uh4Lh5FZoS3MlUP8Ah86qboyKGQ/SqYMo8ztDX/JC34fKrl6cLM4u5VvFv/LaGOnxV2P6POMxPn1UWDv1sQ/qiG5vV0rRAQEBAQEBA/P/AM086+Hr+Bx2/HtH4rDeiHo6Nrf6bxJXL7eeNH5mhBsGmuuzTTXfs00GmvraadOumzU8McIsrGo69dOjj14js2D1+JhsHtt7iw169ev8FCDXtJ4/b2n+s/E6v6236qytevX+daDhKnXhKlAW4xwIax6pcfs6B7FfrP0wevXs0BbjJBs8XY7MB+PuOljJu04deGj5nEd8L69f6P1UruQEBAQEBAQEI8MI5MjLNhAzYSMsnEiMHEiMHEyzU9gkZqewTLNTWCZrNS2CZrNTWCSs1LYJmsVpyrlF/M81cevYm+2zoVek/wDpLw4eVw19f13lcP6LrhcqwUrUcFNYCVVqNWZjuVQPWZjPdJJMPpzHGYZ0Yl2RauVngBlOuPig6rV7zfOft6OjrlJM61fDRAQEBAQEBAQBAI0O6BBZyrw+J8BxjlteOgjiofXfrX0a9a6eWRnx7IF48R/DXTl7sdBRZ+JhWE9CNs4CerZ9Ewxt7f0dV6UWhKieV5LHZj2eni2H3DsG33Sp7INvb+jq74ZbuPMrbluU2z4ylvw3PRq+nCe6xYW466KjbzKhdLqlzscj8ynRbNPerY8LfVbyQubPdhj4/Kb3b4C58O8bXqqJqYfSoccPnSEkl20UcHO6fVenLUdDhqX+0vGp+yJWvyj3+JZCfn4F6e9XwWr9xuL7sh5XsfxrBHreNWep6Ll/Skp5w/jWAfVNrnqSm5j8iQecPj823ZjYT/2mQRUvm9N/uyHlekefw2/I28wvNqf9NUDXV9baWfynTsg8c7rUSutAqKErUaBQAAAJWkTZl+YTXy86VbnzSNVHWKh7Z7fVHbukZznZTi4lOLWUqB9I8Tux1Z2O9mY7zKsmEl11ufa2LisUxkPDlZS7CSN9dZ6/nN0d+6M250isnFwsXU8NONQvcFUStaSJsOm2+/4/KUo2hGLQ2+tD0n326erd1wkmdaZ1j5Nw5dQxXiHFl2rvSo+yD859w6hqeqQ5a6La60rrWutQqIAqqNgAGwAStOoCAgSZXLkts+Ipc4+WBoL06QOh1Oxx3+TSGbxS5F6GvwOc0BE1HDlJr4WvQ3F61Td/nkZt/wC5oGzsRfS15hhEbHXQ3Kp6xusHdt7DC6z3jLGQKhu5PatlIPp4TkhAekL7VTe6Rp2CEn/i8BxsnJLUO2BzXT0q3ABcD5ya8Nq+8p2dcGlvavci6mzgq5pWcS9T+Blo2icR2apb7JPzW39sFvd1dZbVU1HNKhlYbDT4pF12fvaxtX6S7O6FvvsVtk41QeljzHlzD0dCHtVew7rV+93wTM94yrsrxqGy+W3I+EmpuxLG4FTr4C35Z91tndCbazZKlt3ML7bOTscMleLJFhCmwsNQRXo/Cf3n60M5z+nRxRfjW2pTyevweZpr4zO4KEA+n4rAt423pXb2rBLP+O7tvh62/vr3Jz3fXYg42bfoKQBwmvrU/W64Pn9Rcj57rTz0jDKrxY6LwhGbh9JvEJYaj5n6wguv6tBs63Nrr5eyooZtKOZEMlbcOnC1I2fidXpadRO6Dyzp/i7ZsHCNmFzJTfk5W2u5dWtv0PojZtRlO7cvSOwuk0rxasu9q8PnbFcWzZQgIHiHUkJfYvtgabF0B7YTFunJ6M9ag3J+Bc1D+DRaSFq0IP4dzbuNQPZ1Jg8v+O7qjCSi8Uc5f4rjXhxb7PygOH0q+E7n019I7WHTCyY/U5qzrbNeV18ORRbxJj5twY1vWBtTo8R1HUdCNuu+CcujXDxMbEttxOYEXPZWRXl3HXxKQPSQlj6JTpA3jb1wSSaVlRl5GUjcqr4bKnVhXm3BuGygaD0VOniMvFoTrp0wS50b4GHjVnKwMweLeVPFkWElraDsB4ju4NxA3Hb0wvGTWVhTmX8wx7eVVhbigKPnOfQaonRbEAILts6NnEN8JLnRvg4FN1OVjZZL56/h35DHVyvrVOh9kdIA3MIXjxzmXd1ic3ycis41FYuzqSa8mw7KVZTpxFhv4t4VdvXpBOdunVZi8vWuz4i9zkZZGnjMNOEH2a13IP8AQkytTj1MnmKV2fD0IcjL018FD6oPTY25B3+QGC8unVxTy53tXIznF+Qp1rQDSqs+4p3n3jt7oJx61tl51GKFD6va+yqhBxWOfdX+ncIW8sJxhZGYQ/MdBVvTBQ6p/tW9s9nq9++Rnxt3V5GRj4tPiXOK610AJ+QADeeoCVq2RHwZvMPzOLEwj+zB4brB7xH5a9g9LukZ1vwtrrx8agIgWmisbhoqqBK1pEXxWXn+jhE04p9bNYekw/cqf1m2dWsjObdleJh4+LWUpXTiPE7klndvnMx2kytSYTW8wtvsajlyix1PDZkt+TWekbPXb3R5SJEvLOzbEwKsdmtZjdkuNLMh9rHsHQq9g2SrOOHGTzDhtONip8Rl6bawdFQHpsbbwj5T0CEvLpNzG5fw2jJyn+Iy+hyNEQHorXbw9+89cE49a6y8+vHZalU3ZTjWvHT1j2noVfeMLeWGdOBZZauTnsLblOtVK/lVfRB9ZvePk0hJx61tmZ1OKFDavdZsqoQau57B+knYIW8sMKsG7IsXI5hoxU8VWIp1rrPQT89+07B0Qk453UZebRiops1Z3OlVSDV3bqVYW8sJ68K/JsW/mGminipw1OtaHoLn23+QdHXIzJndRmZtOKq8er2WHSqlBq7t1KP6dwlavLCenCuvtXJ5hoXU8VOMp1rqPX77+90dEJOOda2zM6vG4UCm3Is/Jx09ZtOnsUdLHZC3lhnjYNhtGXmsLcoflqPy6gehAenrY7T2DZCTj1rrLzzXYMbGTxsxxqK9dFRfn2H2V+U9EF5dJu9w8EUM11r+Nl2DSy8jTZ81R7KjqgnHCqGiAgICAgICAgZZOLj5NRqvQWIduh6CNxB3gjrEJZlHxZ2B6/FmYY9sDW+sdoH5g7R6XfIzrPeLqMinIqW2lxZW25lOolbly8yMajJqNV6Cys+y3WOkdRhLMo+DmGD6nFm4g9hj+Og91jssHft7TIzrPdVi5ePlV8dDhgDow2hlPUynap7DK1LK2IBGh2g7xCoG5dbjk2ctcVa7WxX1NLdwG2s/R2dhkY8cbNMbmVdlox70ONl/1NntadKMNjju8ukqzkrhpNl8vpyGFoJqyUGleRXscdnUw7DshLxywGffiEJzEAV7lzUGlZ/tBt8M/d7ZGfLG76AIIBB1B3GVtjlYePlVhLl14TxI4JDK3zlYbQYSzKT4rJwDw5x8XF3LmgaFf7ZRu+kNnXpIzmzd9FWVlDKQVO0EbQRK2mzMGrJCtqasivbTkJsdD/SD0g7DCXjlnjZ1i3DEzVFeSfy3X8u0DpTXcetTt7xCTl0q2GnzWrs5YxspUvy4nWyhRq1Ou9qx0p1r0dHVIx+n4fQrsrsrWytg9bgFWU6gg9IMraLKxrse5s3DXic/4nGGwWge0vVYOjr3Ho0jNmNYrxsmnJpW6luKttx3HZsIIO4jpEqy5R5VVuJe2djKXRv8ZjrtLAbPEQfPUfaHbpIzZjWLararqlsrYPVYNVYbQQZW5coaCeXZK4jf4K4/3Rj+zc7fBPYfY83VIxNLjo35hiPfUrUkJlUnxMew7gw6D7rDYZV5TLvDyky8YWcPCdqW1NvRxsZG7oWXMTcvJxb25a59BR4mGx6atdCnfWTp3aSM8dNB/wC58zD7sfOIV+pb1Hon66jTvA64Nr8vcv8AuufTmDZVdpjZPeT+Ex7mPD9aC6XJlf3bmWPk7q8gfDX9+1qm+1qv1oW6XJ/h+cdVebX/AMWn/wCZD92U25fLjGpQvzHltn5bk2KP3eSDxf8AEDyJJvGHjO3LuXZdn5uNciXn3iTj2febWEzpK6yKC9vN8Qf5mhbV73Rqj/yxBZvHePeLOY4l/Rl4ZYH6LIw/5kLLrPh9SVsgICAgICB8/nfN6uWYZuOjXN6NNZ6W7ewdMjHPn4x+D47brXuuYtZYSzsek7dejv8A9NVkeXdZUnQR2EEH6O0D0unh03n1RtLtDUVIOk9TEksBsHouS42AdDuPoJK169evZsAADroAODi412D+r46x/wAKgd7Qvr1/lGmpUkklSr6kt+Iy2ncWA/NyD0KPRSD169zT2OHYH04OPTS07dBd7WQdNeP1R6nTB69e79ZK9BAQEBAQEBAQPDDLkwjhpEZsJEZMJEYuJGWDiRlg4mUqawSM1NYJms1NYJlipbBM1muKMO/LyFooXisc6AdA7T2STjm4JxtuI/bYeLh8i5eE2vdYQDwjV7bDuVR+jqns4cJxj38OM4RRiYdrXfGZujZRBFdY2pSp9lesn2m6e6bbk61bDRAQEBAQEBAQEBAQObK67EZLFDow0ZWGoI7QYHzreWW01smLw3YzDR8DI9KsjqRjqU7jqO6Ri8eyfHssRzRisVfT0+V5h26dPhWels+0vdDM9v5FApW3wsOx+W5W/wCBuGtTdfCuumnbW3fBPbRrk3UMAvOMMIF9XJUGysdocAPX5QO+Ft/7o1rxclUFnL87xKTtVL/x0I7HBD+djCyXpXfxvMKv8Rgsw/rMZ1sH2W8NvMDKvlesP43y0fm2nHPSL0en5bAog841TmXLnGqZVLDrFin+mF8p3eWc25XX6+ZSvUPEXU9w1hPOd2f8UNuzDxrcg9DsDVX9twCR9EGDy7PP4fdkni5hYLE6MWvVafra+lZ5dnZB453Wk11oSSErQbSdgAENPnmy/mfo0FqeX+3eNVe0dVfSq+909HXIxny+FyrRjUBVC1UVLu2KqqBK1shpV+Y3Jk2qVwqzxYtLDQ2MN1rjq+YPL1aRma69FOfmHHrVal8TKuPBj1dbdZ6lXexlXlcPcHDGLSVLeJc5477jvdzvP9AHQIXjMKIUgICAgCAQQRqDvECA8pWol8G1sNjtKJo1JPbWdg+rpIz4dtEuTj5ZsFuRh+Jco0GZgvwW6dquV2dnE0M2XrP5JcnO/D8LMC5VQOoXLqfGtXtFnCaye0cMM3l3S/8A/R4dINYzAazsONl6Xrp1C2k2Np9MNDP9yTqzq/mLl1J0xbLcQ/1aj4jGPcp4HX6vDCT7JNkln80ILPEx6DhWs34mRU2qMPnNQRodfP2wzft7aJ7ec4t91l9yHJylI8LN41o4dN2lPCwPD28UJecqi7nGBm2r8deM8BCFNemKUJG3XxAvF9vT3YW85d9f8B+epbj00331nGRtEWhCMtNN3C5RKQe1dIP7nrq1q5jiLTelaVWVsQ3i5zpXla6+sDxqbOH2fSUws5T/AH3b1ZeNkWrVa1vOwU1FJV6mr2bwraI/0teIdZhqWX/ydW517YvhZWTX/DyeGygur5qL0KwtVNdPo8XaYLy012/xd42RQlWSuFitzTBf86+xWWxW19V2Kl7AOjRdR2wsvaZjux6hj1fxbNGTyu0aL4T6AHXYLNNLLAOvX6Q6YLtrdHfxJrwjhjH8blTcKY+ZcGpRAd3HovF6PsuAO/pgzpjo7sxkr/u/P8hr8d10x8lm8OnUDcwGmj9IZidejbC2dOQc63KqHLTUb3c/3TPfWituDarqSNfEX3Rod8HlnR0MA5bWYvN72bMqHiY77Fq4V3Wog0BI9ri107jC+OdLuNzI8xpGNjp4nNMZuJbqiPBRhqBZxnejbQVGp3iE8s6TcODfzWlrcmxTn4rELiFQKUYEHhYHiZ1sAG0ndtAhfHy33aZXMce1ce/DBPMqNR8Gg1fh14bKrAPVGzYTs1AgvKdN2WTXk5tNfN3IGOF/ExaC3G9BOrB3HCSy7+EDrHTCXN1U5l2Fyw4/MamSvDZVpuVNAprO2t1Ub+Ano6CYatnHXoo15hnerxYOIfaOnjuOwbRWPvd0LrfZVRj4uHQVqUVVjVnYneelmY7SesmVqSRKc7JzPR5cAtPTm2D0P9kuzj7/AFe+Rnyt2UYmBRjFnXWy9/zciw8Vjd56uwbJWpxwyv5iTa2NhJ8TkrsfbpXWf3j7fsjbCXl0j3G5cFtGTlP8Rlj1XI0RNeitNvD37+2Ccetd5fMKcYrXobch/wArHr2u3b2DtOyFvLDBMC7KYW8yIYA614abalPQW/rG79nZIz453V5OXj4tXiXuEXXRRvJJ3KoG0nsErVsiPwczmG3IDYuGd2ODpbYP3jD1R7q+U9EjOLd9lv8Ad8Wj2KaKl7FRVHyAStaRF42XzDZjFsbDO/JI0ssH7tT6o94+QdMM5t22WY2Lj4tXh0oEQbT0kk7yxO0k9ZhqSRI2bfmMauXaCsHSzNYaoOsVj227fVHbuhnyzspxMGjFVvD1axzrbc54nc9bN/ppDU44YXZ9ttrY3L1FlqnS29vyqj2kes3ujy6Ql5dI1w8CrHLWFjdk2fm5D+s3Z1KvUo2Qs44Z5PMH8U4uEguyh65P5dQPTYw+RRtPywl5dI7w8BKGa6xzfluNLMht+nzVHsr2CCccOcrPYWnFw0F2Xp6QOxKwfasYbuxd5+WC8uk3dYeAtDNdY5vy7BpZew26fNUeyvYIJxw4yc6w3HEwlFuUPzGP5dQPS5HT1KNp7BtgvLpGmHg143E5Y25Nn52Q/rNp0dijoUbIWccMb826+1sXA0NinS/JI1Srs95/d6OmEvLOkUYmHTi1la9SzHistY6u7fOY9JhZMN4UgICAgICAgICAgIEV/LiLWycN/h8ltr7Na7P7RNmv0hthm8ese4/MQbRjZafDZR9VSdUs7a32cXdv7IJy6VZDSXK5dVdZ49bNj5QGi5FegbTqYHY69hhm8csV5hdikV8yUVqdi5aa+C30tdtZ79nbInljd9AEEajaDuMrbLJxcfJqNV6CxN+h6CNxB3g9ohLJUf8A3DB+dnYg8uQg/RYPvd8jOs91mNlY+TV4tDixNxI3gjeCDtB7DK1LK1IBBBGoOwgwr55wcjDPHy4g1b2wXOif7JvYPZ6vdvhjxs2UYmfRlcQTVLq/zaHHDYh7R/SNhhqcsqCARod0K+c2HkYLGzl446CdbMEnQdppJ9U+76p7JGMY2V4mZRlV8dLbjwuhGjIw3qynaDK1Ll7k4tGTSarl4kO3qII3EEbQR0EQWZR15V+C60ZzcdDHhozTs2nclumwN1NuPYZGc43fRlbfOspu5fY1+KhsxGJa/FXepO96h+svT0bd8YxjZdRfTfUt1Lh63GqsNxErcuUWTj3YtzZuGpcPtysUe2B7afvB96GLMaxZj5FORSt1LB63GqsIblyhsB5Zc1y//jrW1vQfsXO+we4fa6t/XIx+n4W5GPTlY7U2jiqsG3Q+UEEdI3gytWZT4GTaLGwso65VQ1Wzd4te4OO3oYdfeITjelZ5gODknPX/AA9mi5yjoA2Ld9Xc3Z3Ql0uW3MMZ76VsoIGVQfEx36OID1T7rjYYXlMvPwOactI2oLRp79din9ZHHnEH6o4x2HMOX24+UNLhxUZSjZo4HrL37GWCazFcVB+Ycstxb24cqvWm5h0WpoVsHf6LiRJrMOLrbcvlCZar/e8VhaaxvFtJIsQd/pL5YS3My0yLUXMwM6s603jwHYbito462+0un1pVt1lZNjmz+K8uGw2jx6D1eMpGo7rEJkTG8e1ZItyuW5o2DLpeth7xUWqPJwNBLrL3T4n4S8sH/T334bdigOF8/hrCTo+7K6kBAQEBAyy8ujExrMi9uCqsasf6B2mEtxMv51zLmV/M81sm30VHo1V/MUdHf1/0bBMvHy5eVy6oXdpv8o6urb1btu7TbwhaRZWoA6AACSSeEAD0CSV10A9UlfoJt4jDfr169lKKQdNCG4lXQKC3GB6ICeqbAPUr9WsbW2wvr160a1g6pwa6kstXhHiYsfXFLH1n/rL22DcIX16/1epponBtBBSnwTpqPaTHJ9VP6y87+iD16/1c8ScIOtfh8BAJUmnwtdCoTeuPrsNm9m0bcsHr17P18r0EBAQEBAQEBA8hHhhlwZEcNIjJhIjFxIjBxIywcSM1PYJlmprBMs1NYJKzWVWLdk3LTSpaxtw/pMkmUnG24j9TiYeJyTE4mBtyrSFAUavY53Ig/wBOsz08OHi9nDhOE91WHh2+L8ZmEPlsNFUbUqU+wn+s3T3TbpJ1u62GiAgICAgICAgICAgICAgZZWJjZVfh31h1B1XXYQetSNoPaISyV8/Iw8quo12oOZ4e/wAOzTx006VY6B9PI3aZGLL8xziW38LHl+R8VWmyzDySVuTs4yOMdzg98EvZyi8styOFPE5XnvvQaVMx7vSqt+WDT4qrXnNG9a82sdKnwbfMeJG86ytflPd7/GcRNmUtmIenx0Kr/vBxV/eg851a1jlmUOOsU3j5y8D/ACjWF0rauiiv8utU+iAP0QuHTuiKWdgqjexOg+WBC3OKLCUwkbNs3a1flj6Vp9DzEnshnz7ai8vuyWFnMXFgB1TETXwVI3cWu2w9+zshPHO6y66qiprbXFdSDVnY6ACG7cIFqt5k62ZCGvAUhqsdtjWkbQ9g6F6l8/VDGPLfZZl5VOLQ11pPCNAFA1ZmOwKo6STuhq3DDBxbvEbMywPi7RoEB1FVe8Vqf1j0ns0hOM61bDRAQEBAQEBAQEBoNdemAgICB4VU66gHXfAwfl3L39fFpbX51an9IhPGdmL8h5K+/BoH0a1X9AEJ/b49k1v8pcgsGhxeHq4XcAeTi0+STDN+rj2Tj+TeXVnixr78dx6rIy6juJXiHkMYT+zOjC/+VeY62W18w8TIccItsFiOAOjjR9D9ZTDN+q90q8p/mXEvrtox6BYuy3IxgCzj30setW79AYTw5RI/M87ESxclMjDV21egVBMdwd+jNxGsnp4dRDPlZvo0xcrlrXFMPB+LqKcLY+S9JZQB+wsLsxHWoHm3QSzpMqvi8u3DFV91I5eX0FxL3X45Hqiz8llKnc2hI6euGs3HsWnlVthxuaZ/xWQPTw8pWFidn4KaqG6wQeIQXG1qoZ2VlvSmPiNTzTGGqWMPBqavXQ+i+lhrfTdw7DDXlbtNQ0Z2ar5/iFcir8LKwKNamKqdTWz8XEW26qw0HkMGLdXZzuU8terLw7EGNeo+Jxk2voN13B63Eu5//UQeU46wF+fVkcVCfB8vznGltwDlLX9pUVtFFmz1j63Rthc3PaVrg8txcDNbFvXxhehOLfboTw6fiU9Cr84BQBp3QceMlw8wOamsvy3GU5t2OSKbFYcBq2cJew9Ka8LaamDjz6TVavLXvYWcxsGQQdVx1GlCn6J2ue1vMJWvHO6jKzsbEVfFb0n2V1KCzuepVG0w1eUiXwc/O/xBOHin9gjfjOPfdfV7l88M4t9liJi4ePooSjHqGvQqqOsw1pIj+LzM7Zgg04535li7SP3SHf8ASbZ3wzm3ZViYOPihvDBNj7bbnPE7nrZjtMNTjIwu5iz2Nj4CDIvU6WOTpVWffYbz7q7e6EvLpHeLy5a7fiMhzkZmmnjMNAoPs1ruQfL1kwTj16vcvmFWOy1KpuynGtePXtYjrPQq9pgvLDKvl9t9i38xYWMp4q8Zfyaz0Hb67e8fIBB453U5eZj4tYe5tNTwooBLM3zVUbSe6FtkSfDZWf6WaDTiH1cMH0mH75h+oNnXrDOLd1ttuPi0F7GWmisbzoFAGwCGrZEOmXzHfx4uAejat1o/TWv3u6Gdb8LkTHxaAqBaaKhuGiqoENaRD4+VzHZilsfCPrZWmllg/dA7h758nXIzm3bZbj42Pi0iulRXUupP6SSTvPWTK1JIjOTkcwJTCY1Ym583Ta3WKQd/0zs6tYZzbssxsXHxafDpXgQaliTqSTvZmO0k9JMNSSIzk5HMCa8JjVibrM0b26xTr+vu6tYZznZZj42PiUeHUorrXUntO8sxO89ZMNSSIjdfzI8OMxpwNz5Q2Pb2VdS+/wCbrhnPltsvoopoqWmlBXWg0VV3CG5MO4CAgICAgICAgICAgICBnkY1GRUar0Flbb1b9PfCWZRaZ+B6vFm4Y9k7b0HYT+YPvd8M6z3izGysfJqFtDh03EjeCN4IO0EdRhqWVqyhgVYag7CDuIhXzzgZGIePlrAV72wrCfDP9mdpr/V7JGPHGzbE5jTkOaiGpyVGr49mxwOsdDDtXZKs5ZVQ0jyeWpZb8RQ5xsvd4ye0B0WLucd+3qIhm8evVxXzJ6rFo5ggotY6V3DbTYexj6re63k1g8u6+Gk2ZgU5PC5Jrvr/ACsivY69x6R1g7IS8csEz78VxTzEBQTw15i7KmPQHH7Nu/Z1Hohnyxu+hDaTL5f4lgycd/AzFGgtA1DAezYvtL8o6IZvHrNzE5h4lnw2SngZijU1E6qwHtVt7S/KOmCcul3U2V12I1dih0caMrDUEHoIMNPna3cr2Hiu5b0NtaygdvS1fyjtG6Mfp+H0kdLEV0YMjDVWB1BB6QRK2gvxb8S1srBXjVzxZOINgc9L167A/wAjd+2GLMaxXi5VGTSLqW4kOzqII3gg7QR0gw1LlJkUXYdzZmGhdHOuXir7X7yv3+se13wzZjWLKL6MmhbamFlNg2HoI6jDUuUNZPK7Vpc/9usOlDn9ix3Vt7h9k9G7qkZ/T8Kc/DORWrVt4eTSePHt+a3UetW3MJWuUyYWWuXSwsTgurPh5NDbeFtNo7Qd4PSIONynw2OFkDl9h/BbVsFz80bTUT1p7Pu9xhmaaFv9wzvHGzEzGC3dSXHYr9z+qe3Ttgul9q9zP7nmJnDZRbw05nUNv4dn1SeE9h7ILpcmT/dOY15Q2UZPDRkdQfX8J/OeA94guly9T+681ZN1OcONOoXINGH1kAPkMG1+UyYrPh5vKQeGyg8eI3UjHjpP1HHD9WRMaWOhlCyzlvMgOFbwce8fNNmhAP0bE4fLBnasLPwMTJXp5blDIX+xdhY3kCO6+SEuk+KZ34Jz/wBxdj569iaqH/5T+eDlpn+b7srqQEBAQPHdK0Z3YKigszE6AAbyTA/nv8xc+s5rleFSSuFUfw12gud3Gf6BvkeP7Ps8r7I6Kt3k0/o3a9fR17NdRxxmLqk2dnl6dVHq6nbtHonU7VX2nlbiqsHUEa66kjQqDqg0JB9QFBsL+pWNi6tCz169YbKF4dNnDwdZrXwidpJO2unrJ9Ow9kL69e39WhGoYNodUBcWfhg1jcbdPyaB7NY9JunphfXr2HOocudQyhrDaODiQeq1wH5dI9iobW6emD16/wBFA5dm/DHM0s14g2gA8cjQjxWTcdBsFW4JqPWMNeNxn169n6WV2ICAgICAgICAhHJhHJkZcMIRkwkRk4kRg4mWWDiRKnsEjNT2CZZrzGwMjLt4Khs9pzuA7YnG048Ly2ferqwuT4wIU2XWEKoA1stc7lUf6abzO/HjI9XHjOEa4eHb4pzMwhsthoqjalSH2E/1m6e6aak63dbDRAQEBAQEBAQEBAQEBAQEBAQJsvl+NksruCl6bK76zwWL3MOjsOyEvGVJeuZXWas2heZYh3uqjxQPeqPot3r9mGbnrrHOLWHQvynO1RdjY12tqqfmkMRah7NfJCT2rf8AiOTTszcR0A33Ufj1+ZQLB9iF8rN45Sr+X+YMSqY19g3+ihcHt9oQY413/BOWdFRXsV3A+RoXwj1OS8qVg3wtbMNzOOMjytrB4TstAAAAGgG4CGkV3NaBYacYHLyRsNVOh4T77+qnlMM3n2c1YF11q5HMGWyxDxVY6/lVnr2+u3vHyAQTjnWqsrKoxaWuubhQbOskncFA2knoELbhLi419965uYvC66/DYx2ioHZxNpsNhG/q3Dp1MyZ1q+GyAgICAgICAgICAgICAgICAgICAgICB8/N/l7kuZqb8SssdpdRwNr2suhMMX6+N6PkZH8lVpwPy/IFb1klVurrcEnrYKCR9Likw536eyKzG/mXAqvrsxKbsS3QNVVWbatd5YKrrYh+iundDNnKdNGVfNxcKEu5keGn0lyBQy30Pu0cMzar0E6nX2uuE889W3xGLazWXZz3cwXTiQPw05Na66AeCqdewNuPWIXM76/1WY/MuX4rPk8uxrWxHGmdjLSw8NlHrcRATX544u3vNTlJrNnaNmioYBorq5dmariWZDCzgDDUVaVHQ9aemOrqhdduldjlTZYtwOZZNl2ZSA+Mz6CoruWwVgANpucNr8sHhnS7vb+Y47UUvUAnNcJipwqgXbZssr4UB9BxtU7txgvKfxi2nJ5jzGpbcfhw8WwarY2llxHYo1RPLxd0rct5baKsXl+LilnQFrn/ADL7DxWN3sejs3Q1OMjF+arY5qwK/i7QdGdTpSp96zaPIuphPLtq9r5Y1jrdzCz4m1TqlWnDSh91Nup95tT3QePdvl52NihfFb032V1KCzuepVG0wt5SJfAzs7blE4uKf8sjfiMP3jr6v0U88M4t3WKuNiY+gCUY9Q7FRQPkENaSI/iszO2YQNGMd+Y6+kw/dIf1m2dhhnNuyrEwsfFVhUp4nOtlrHidz1sx2mGpxkYXcxeyxsfl6C+5TpZadlNZ95hvb3V29ekJeXSO8TlyU2HIuc5GWw0a9+gfNRdyL2Dy6wTj16mXzFKbBRUhyMthquOm8D5znci9p8msF5Y+XFHL3e1cnPcXZCnWusflVfQU72947e6CcetbZmdRiKviatY50qpQcTuepV/0AhbywmTByMxxdzHQVg614SnVF6jYfbb7o+WGfG3dXlZePi1eJc3CuvCoA1ZmO5VUbST1CGrZEgxcnmBD5ymrF3pha7W6jcRv+gNnXrDOLd1mRkY+LQbLmFdSaDX5AABvPUBDVsiIUZHMTxZamnC3riHY9nbdpuHuefqhnF5b7Lb78fFoNlrCupAB/QAAPkAhq2REMfI5iQ+Ypqw96YZ9Z+o3f/J5+qGcW77PpAADQbANwhsgICAgICAgICAgICAgICAgIEeTy1LLTkY7nGy93jINQwHRYu5x8vURDN49Zu4r5k9LrTzFBRYx0S8HWlz2MfVPut5NYPLG6+GmGXhY2UgW5NSp1rcEq6HrVhtU90JeMqXxc/B2XhszFH7dB+Mg99F9fvXb2Qzmz3XUZFGRUttDrZW3qup1ENy5e2VV21tXYoethoyMNQR2gwWIPhszB24ZORijfiO3pqP3Tt+q3kIhjFmyrEzcfKQtU3pIdLK2BV0PUynaDDU5StnRHQo6hkYaMpGoIPQQYV8/4fL5ftxAcjDHrYhPpoP3THePcPkPRDGLNtleLl4+VV4lD8S66MNoZWG9WU7QR1GGpZTLw6MqvgtG48SOp0dGG5lYbQYLMpFzL8JhVzA8VJOlWcBop6haB6jdvqns3QznG76MNvnPi34LtdgLx0MeK7C3DbvarXYre7uPYYYxjZZi5dGVULaW4l10YHYysN6sDtBHUYalymysK6u45mDouQfzqSdEuA6+pupvPshLOsb4ebTlVlk1V0PDbU40dG+aw/01hZyymyMe7EubMw1Lo54srEHt+/X1P+t3wzZjWKq7MXOxeJeG7HuBBBGwjcQQflENaWJKLbMC5cTIYtjOeHEyGOp16KnPX809PfvMy40rvOxrltXOxBrk1jhsq3C6vfwH3hvU9fYYXlOsdOuNzTBDVuQG9KuwbHrsU7DodzK28eSDTlHONaM2i7DzUHjoPDyqvZYMNjr7rjd5uiCXOlc4bFlt5Xm/i2VroGb9tQ2wN3+y3b3wk7VxjILKb+UZhLtWvCrk7bKW2I+vzl3HtGvTBP8AtrgLkZmBZjuwHMsJxo52A2J6Vb/RsXf3kQm8x1hblIy4nN6wVQfg5SneqOdDxdtdg2+WQt25OHxibM/lgPB44+Lw2+axOrafRtAb60GN4JbXkXY2Q66VcypbGyEPRYgLBT3fiLBnOvdjUviripedTbXdyzLPW6g8LHv4G0+lCTp/J9TlF73ctoez81V8O3+0rPA/3lMrfC5iuGiAgeMyopZiFVRqzHYAB0mB+C/mf+Zm5hYcPDYjCU+m432EbvJ1CR5Pt+3Ok2fHor3du4b9dfP/AKdmxjnF9KeXXy7wT19RJ37tpIXVnNRXWuzU7tAdSTpo40GpUBvSGwaDifcoVIaUqvQR7QQgqG9NfVTgXY7r7NS+gm9tsNevX+jUbNuu0Wb/AM3S3/38j7ieSF9eu9e+qCdihH2k/ihbT1/9RknoHqpB69d6+vy3lBBW/KXTRvEqx2PGQ5/aWt7dnyL0Q6ceHd9aV0ICAgICAgICAgIR4YRyZEcMIRmwkRkwkZYOJEYOJllhYJGa3w+UPfpZaeCo7QOlhLOGW+P1Z3fSvvxeX46hU2seGmhNru56B29Z886yYd9OMc4eFaLTmZhD5jDRQNqVKfYT/WbplJx63dbDRAQEBAQEBAQEBAQEBAQEBAQEBAQJsrluJkuLGUpeo0XIrJSwfWXbp2HZDN4ysNOcY24rn1Dr0quA7/y2+7CflPdnblcky2FedStV25Uy6wja+6zeifqtCW8bu2HJ8Ubabb6R0BLrOHyKzMvyQ14Q/hlv/wDYZWnVxV//ACawePvT+DYr/wCIe7JHzbbXK+VAQh80HhFlVNNNYrpRa619VEAUDyCGpMJsrmdNVngVKcjL6MevQka9Lncg7Whm8v5ucbAta4ZecwtyV/KRfy6gfma7262O3ugnHrVsNEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAkzOVcuzCGyKFeweraPRsGnU66MPPDN4S7vhZf8p51VZTluaxp4g4x7juYHXiSzRirdoHeZHK/VelfPs5hzfBzC+ba2JkFOFbraQa7tBqFsasldnQ4GvXpDF5WXXRpXlYzYoqs5kFwLW0vx1WpLKHJ11VW8T0NduqervHYXMxvo3sTl93HTmcwWzNo9PEybbh4NiE7ioIXbpwuN/SIXS73VvTzXllQqzeXVFdB4edh0Vlhwj2taxwa17welfJCznN42qzc2nJ/uuMKsLPcNRZkMAq2sCToKy50s3gHTbr1ws5WXTavo/wpr9vML2yh/UgeHT9gElvrsZW/DO7a/LwcFFSx1qG6upR6R7ERdp8ghq2Rh4vM8vZSnwVB/bWgNcR7te5e9vswzm32b4nL8bGLOgL3P8AmX2HisbvY9HYNkNTjIyu5opsajCrOXkLsYKdK0P7yzcO4anshLy7PK+Wta63cwsGRYp1SoDSlD7qe0R85vJpCePdRl5uNiqGubQudK6wCzuepVG0mGrykS+BnZ+3J1xcQ/5ZG/FcfvHX1R7q+eGcW7rVXGxcfQBKMeodioqj5BDWkiL4nMz9mHrj4p35jj02H7pG/WbyAwzm3ZXiYWPi1lKV04jxO5JZ3b5zMdpMNSSJbeY232Nj8tUW2KeG3Jb8ms9I1Hrt7q+UiGbyzpG2Hy+rHZrWY3ZVg0syLNrHsHQq+6IWccOcrmPBacbFT4jM01NYOioD7VjbeEdm89AgvLpNzF5fwW/E5L/EZhGniEaKgPs1rt4R8p6TBOPW7uszmCY7LSim/LsGteOnrEfOY7lXtMF5YcY3L3Ny5Wcwuyh+Wo/Lq16KwenrY7e7dBOPWtMzPrxuFAptybPycdPXbTp7FHSx2Qt5YZY+Ba9y5ecwsyV/KrX8urX5gO9utjt7oScetXQ0QEBAQEBAQEBAQEBAQEBAQEBAQObK67EauxQ6MNGVhqCOogwIPhMzC24J8bHG/DsbaB+6sO76LbO6GMWbKcTmGPlcSoSlyfmUWDhsXvU/p3Q1OUqiFRX8tHitkYdnwuU212A1rsP7xNgbv2Hthm8eseVczKWLj59fw17HRG11qsPuPs2+62hgnLpV0NJcvl1OQ4uUtTlINK8ivY4HUehl7G2QzeOWK8wuxWFXMlCAnRMxNfBbq4tfyz37O2E8sbvoQ2jyuXCy34nHf4fMA08VRqGA9mxfaHyjoMM3j1m7zH5ifFXGzU+Hym2Jt1rs06a26fonbBOXSrGVXUqwDKw0ZTtBB6DDT53w+Vy/0sMG/D9rEJ9NB+5J6PcPk6oYxZtstxcvHyqvFofiXXRhuKkb1ZTtBHUYallT5XL2NpysNxRmaaMSNUsA3LYo39h3j5IS8es3dYfMFvc0WoaMxBq9DHbp85D7S9o8ukE5Z+TMwDbYMnHfwc1BotumqsvzLB7S/o6ILx6zcw88XO1FyeBmVjWygnXUfOQ+0vb54Jyz8s8jEvx7mzMFeJm25OLrotvvL0LZ29PT1glmNY2rsw+Y4jDTxKX1SythoQRvVhvVhDWnKMMe+7EuXEy2L1ueHFym9r93Yfn9R9rvhmXGleZVVuFe2djKXqfbmY6jUnTZ4qD54G8e0O2CzGsdZVXxKVcwwHVshF1qYH0ba22mtj1HoPQYLM6xzbw8xxa8vEPBl0Emrj2FXGx6rB1Hc3n6oLrMxzYzZ2NXnYi8Obik/hNsOo2WUP3/AKdDBdZmbubshCtPOcYEoq8GWmnpGrXbqPnVNqdO8Qlv/KPWWmrLapwH5fzQHTpUWldo7rV2947YXr7VM5vTHBOtmdyd9T863HI017eOv76yM64949srFjXY9DDhywM7ltns+KpDMO4to3lMHt31jh2ORxNR6Jz0XJxg2zgy8fTiQ9p4Rr3NCb/x/qp5TlVnJsVdlOaoy8cHeGOi3J3q2hPfK1wuvy+tDoQMsvLxsShr8mwVVLvZv0DrMJbJu/AfzD/NORzRmx8fWnBB00OxrCNurdg6pHk+z7by0mz5FNQGg0/07f8ATs64c4vpq3dJPl11OnUenZu8hPoqakWVqNNT0gno00B1J9IldA28sSoO8u2wG4qQEaknh4RxsxYpwh97M7ekgb5x/Ef2QohfXr1lsAFBBHCFTRgfweGs9Daf4eo/NH4j9ML69dv6ta67HsVFVmtZNErQeFYa+pR/lqPvtCz166R9zl/Kkxylt3C+Qq8NYUcNdSn2al6B1neZXXjwwvhsgS/xHGOV8NVxXWg6WeGOJa/ptuHdv7IZ8pnCqGiAgICAgICAgeQy8MI4aRGbCRGTCRGLiRlnbWEqa65hVSg1axtg8nXGDxMDlz32DJyVKUjbRjNsY9T2jr6l6Onbu1OLfDh1r6GbnV4qLqDZdYeGihfWduof0ncJp05csM8LCsWw5eWwszHGmz1K1PsV69HWd5+SE48et3WQ0QEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDmyuuxClih0O9WAIPkMCL+C4SnXH8TEPVQ7Iv2AeD7sM+E6PfguZJ+XzBmHR41Vb/AKnhQeN7ngc6/wCsoA7MdtfltMGOXd4eWX2/4rNusXprr4aVPlQB/vQnj3qrGxcbGr8PHrWpN+ijTU9Z6zDUkmzWFICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzbVVbWa7UWyttjIwBBHaDBY+FmfynTxi/ldzYV6a8KevSddpHA2ugPUNnZDlfq7aPh5L825WjVZ2PWlRcPTdUGCVv0NVYvHw9OqMvcOiRxueO76GNzXmN2UL8arHtylq/GFVx4cqtRvQFNjKes6jcRtENznbcz/d1Wc18ZcbTHr5dnsRjPxWWClzt8PXhqKni2r1HZ1QuuMdK+hhVZ2S9uNnZ1i345AeukLUHQ+pYGAL6Np0MNDqJW+Mt0tW143K+XK1uldGvr32N6R+lY54j5TDWJHH8XW7ZgUPlnosA4Kv942gP1dYTzztq8+Ay8rbn3/hn/K0Eoncz+u/yDsg8bd1TNh4ONtNeNj1jQbkUdg3Q1pIl+LzszZhV+BSf83epBI/d1HRj3tp5YZzbs3xOXY+Oxt9K3JcaPkWHisPZr0DsXQQs44cZHM60tOPjocrLG+pNy69Nj7k8u3qEF5dJu4r5bZc63cxcXup1ShRpSh6NFPrMPnN5AITxzuoy87GxKw978PEdEQAs7t81VG1j3Q1eUiT4fO5htytcXDO7FU/iOP3rr6o91fKeiGcW77Lv7ti4/sUY9S9ioqj5BDWkiHxszmGzGLYuGd+SRpbYP3Sn1R7zeQdMM5t22W4uLj4tXhUIETXU9JJO9mJ2knrMNSSI3zr8xjVy3TgB0szWGta9YrHtt90fJDPlnZTh4NGKrCvVrHOttznidz1s3+gHRDU44YX59ttrYvLwLLlOlt7baqu/T1m90eXSEvLpG2HgVY3E+ptyLPzsh9ruR+gDoA2CFnHCmFICAgICAgICAgICAgICAgICAgICAgIE+XgY2VwmwFbU/KuQ8NiH3WG3yboS8ZU3xOfhbMtTk4w3ZVS+mo/eVj9ZPMIZzZuupvpvqW2l1srbarqQQfKIbly9tpquraq1FsrcaMjAEEdoMFmUHw2dg7cNjk4w34lremo/dWH9VvOIYxZspxM/GyuIVkran5lLjhsT6Snb5d0NTlK3ZVZSrAMrDQqdoIMK+f8FlYXpcvIejpwbDoo/snPqfRPo90MeNmyjE5hj5RZE1S5PzaLBw2L3r1do2Q1OUrXIx6Mipqb0Flbb1YawWZRaZ+B6vFm4Y9nfkVjsJ/MH3u+GdZ7xZjZWPlVC2iwWJuJG8EbwQdoI6jDUsrDK5cLLficZ/hszTTxVGocD2bF3MPlHQYS8es3c0cyItXGzkGPktsrOutVn9m/X7p2wTl0rfMwqMtALAQ6HiqtU8Lo3WrDdC3jlKudkYTCvmJBqJ0rzlGiHqFo9g9vqns3Qz5WbqczCoy0XiJWxDxU3odHRutT/oDDV45T0512PauNzHRXY8NOUo0rsPQD8x+w7+iGZyxpXeVg2i45mERXlaAWI35dwHsvp09Tbx3bIW8ese034vMaLKLa9HX0cjFs2Mh6N3nVh5IJZyZ1X3YTrj5bF6GPDj5bdZ3Jb73U3T37yS40rm2u3l1rZOOpfCsJbJx1GpQnfbWP1l8o27xZ46zYuRkccz5fpclgByKUIIuTTY6dHGo3dY2dUF7xzYwBXm3L/wAauwD4mlN9iDZxKP6xOrp3dUJ7xy11WK/8SxyLOW5WjZQXaFJ2eMB1dD+frgzjWbODj1VA8tuP9wytuDcp/Lf1hWD0aH0q/N0QY6dHni5RYXFdeZ4A4cmpdnj0N7SDt04l6m1WRM3+MTqqAV4+PYBTa3xPJsj2Vs2lqD2HU7PmkjohPafwHdHVnB+HrvtDattOLnL0P7th8/1oPXxWbuQXfQ47V2eLYACzYuQR6TFRtai0byO/uJ6+P+j6Nf8AMGOtPHlVvWQNtlStfU3atlQYad+hlb/uTq+XzD+eaEXhwqTYx9WyzYu3ZqApJO3ftEjHL7+z8jzDmWdzG4W5VhsI2qm5V6dFUbOkCHm5cry3ZVV66abe3/TrP9HXCRZTXuAGu7t37B0dPdt6ieJSbiypAB17Dru3bm6QNBuPpadDN7ENT169f5K0XTaSdgFh3AgDYr6uAFA6LHAA/Zp0w169evhvWG4lCA8S/iKF2FQd9i+J6mvTdb6R9kQvr1/rVnL+X3ZPC1Oi0qeJcjQmtWO9qVfbY/72zyCGuPHPr1/N9/EwsfErKVKdWPFZYx4ndvnMx2kyu04yN4UgIEz28v5bjqpKY9I9GtFGmp6lUbSe6GczjGHi8zzPylODjn9rYAb2HuodVT62p92Ezb7L9Qiek2xR6TtoN3Sdwhtji5uNlBmx2NiKdPECtwH6LEcLeSEnKXZvCkBAQEBA8hHhhlyZEYZF1VFRtuYJWNhY9Z3AdZPVCV1VUbUDkFAdoDDRtO7o8smFnHLzJtw8KrxbdpJ4UUDid2O5UUbyZcLcRjj4d+RcuXngBkOuPig6rV7zfOs7dw6OuUkzrW2bnrj8NaIbsq3XwcdToTpvJPsqOloXlyw5wsFqnbJyXF2bYNHs00VV38FY6FHy9MHHj1u6yGiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeOiOpR1DIw0ZSNQQesGB+d5j/JeFYzXcvIxbztCka169GmnpJ9U+SHHl9M6Ph3eNg2LjcxxcitbSRetVztTef6xCzfmbB6PT2SOV00sUrfgWKWbLvbKq1ONddZfWt9QPpVMTw8LbNDps10PWIXM7vs4WZ/KfCmRV4ItI11ccVqnqJPE2srrx5cN138Zx22UU5GQfcpcD7bhE+WGvOHFznI2KleFWfac+Nb9ldEH2mg/K+zujlWNXaL7S2TkjdfceJh9EbFT6oELOEe5PNMSmzwQTfk/9PSOOzygbFHaxAgvORl8PzLM/wAS/wAJjn/L0trYw9+0bu5PtQmLd9FVVOJh4/DWqUUJqTuUDrJP9JhqSSI/4jk5no8sQGo7860EVf7NdjWfIvbDPlbs3xOW049hvdmvy2Gj5Nm19OpehV7FhZxx8mVzKuq34elDk5ZGoor01APS7bkHf5NYLy6dWdXLrLrFv5i4usU610L+TWesA+s3vN5AIScc7qcvNx8SsPc2nEdEQAs7t81VG1j3Q1eUiP4XL5h6WaDRiHdhKfSYfvmH6i7OsmGcW7rrLMfFoLuy00VDedFVQIazIh/vnMd3HiYB6dq3Wj9Na/e7oZ15fC+iimipaqUFdSDRUUaAQ3Jh3AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQIruVr4rZGHYcTJba7KNa3P7yvYG79h7YZvHrHC80ahhXzKsYzE6LkA60Mfp+wexvJrCeWN30Addo3Q2ny+X42VwtYCtyfl3oeGxPosP0boS8ZU3xOfhbMxTk44/zVS+mo/eVj9KeYQzmzddRfTfUttLrZW21XUgg+UQ3Llll4GNlBTYCtqbarkPDYh91ht8m6EvGVN8RzDC2ZSnLxh/mal/EUfvKxv7080M5s3W4+RRkVC2ixba23Op1ENS5T5PLa7LfiKHONl7vHr09IDosU7HHf5NIS8evVmOZW4xCczQVDcuWmpob6RO2s/S2dsJ5Y3WXU4+TSa7UW2lxtU6EEQ1ZlF4XMMD8gtmYg/YufxkHuO3rjsbb2wziz3inGy8TNrbwmDgejbWw0ZSfZdG2jyw1LKm+DysE8XL/xMf2sFzoB/YsfV+ifR7oZ8bNm1OThcwqspZeLZw341q6OuvQyH9O7qhZZWHDm8u/LD5eCP2frX1D3SfzF7PW74TXj7x3ZTicxrry8W7huTUU5VfrL1qwO8dat+mFxOWseV5gZvgeZ1ql1gKr003Dp4CenrQ7e/fCeXSgN/LtjcV+B0NtaykdvS6du8dvQP0/Dg02YpOZy4C/Ft9O7FQjQ67TZSd3Eeldzd8GMaxwp2nmPKj41dh1ysQejxMNhZQdOC0dIO/p27YT3jmt1QNncuBvxLSfi8MD0lb2mRTuf5yHf37x7zZkfhasQjX4jkV+1WXXixzr2bQgPlQ9m4mmP/EsNwelLrguWn/4/mP7O5W/Z26bNW6R07127IL/tWVirZ41XgMOI+JmcuB0tR9dfHxm2cW3bs39jagk9Y/0YG9irXM62gjwrMsIXptQbPDy6gOKtx87T/wBJEz6/1S25lQVHVwRWNKn8VbCg6q8ipxZw+7YsM3l6/wCr42bkCyzj0BJ2hwE42HWltYXUjqMOXKvnueInU667SR07NpHeu3yQw9Wv52zr6O/b5f0GBTXV17Bt16N2/r0012jo6fR0INRZWmgOuwAbdeph06nYG7Tt/eQ169ev5qVATXXYVI4tdmjD1deIHhb5vGC3zK1hr169fwVUY91loqVGa0Hj8JR6YJ9sh+IVn95aS/UohqT16/zfdwuQ1qA2Xwvt4xjLqag3znLela/vP5AJXXj9fd9aHQgICAgSY3LcXGc3nW3I09LJuPE+nedijsXQQzOMjJubC4lOXVHLcbDaDw0Ke2zbr3KDCeedtReVteQ/MrfiSNoxwOGhT9Dbx97E+SDxzu3yuYYmJw1u2trD8PHrBaxvooNunbuhbykYCrmeYdbmOFjf1NZBuYe/YNidybfehMW+y17KaKS9jhKqx6Tu2wAdbNDeyWnOyMqwHGpIxenJt1Xi/s09Y950HVrDM5W7LYaRNzMWXmjCr+KdTpbYDw1J1hn0Ppe6oJ69IZ8uy2GkeXzFKrfh6EOTmEaihDpwg+1Y25F7/IDDF5dOrfHXI8IfEMptPreGCFHYNST5Yak7sczPqx2WpEN+XYNasdPWPvEnYq+8YS2T5cY3L7GuXLzmFuSv5SL+VVr8wHeetjt7t0E49a0zOYLQy01ob8uwa14679PnMfZXtP6YOXLHy4xMB1t+Ky3F2aRoGHqVqfYrB3DrO8wTj1u5mZ7rb8JiKLs1hrwn1K1Pt2Ebh1DeYLy6Td3hYCY3FY7G7Kt0N2Q3rNpuAHsqOhRBx44VQ0QEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDi6im+pqrq1tqfYyOAynvBgsy/Mcw/lTMx1Z+TXstZYWHDdtgdfVap214WH+h0h5+X1WfpSYfPuY4+fd4lafEgD4nEfioe7TYLUXSwcYX1gvrDdrIzPssr9JVzDmN1S21YSPW4DI63qVIPSDwyu85Xs68Tnj7Fox6R85rXsP2QifrQZ5H8NyLv8AG5lli9NVP4Ff3SbPvweNu9bAcv5dj/ssWgbSTwouvadm2GtOMT/xO/I2cux2tB/zN2tVI7RqON/qjTthnyzs9TlItcW8xtOZYDqtZHDSp92vbr3sSYPDvqpys7FxFBvcKW2VoNS7HqVRqzHuENXlIl05lm79cDFPQNDkMO/atfynuhnW+yvGxcbEq8OhBWm9usnpZidpPaYakkStzG3JY18tUWgHRst9fBU+7ptsPYuzthnyzs1xOXVUOb3Y35bDR8izQtp1KBsVewQs44MrmKU2fD0ocjLI1FCbwD7TtuRe0+TWC8sadXFPLrLLVyc9xdep1rqX8qo+6p3t7x29WkE49auhogICAgICAgICAgICAgICAgICAgICAgICAgICAgeMqspVgGVhoVO0EQIP4bfi+ly2wVr04lmrUn6PtV/V2dkMeONndPNajYtGWhxMltipZpwuf3dg9Fu7f2Qs599FsNIr+V1m1r8VziZLbWevThc/vEPot37+2Gbx7aOP4jkYuzmNPAg/zdOr1d7D1q/Ls7YTys3XV2V2otlbh62GqupBBHYRDcqS/ldT2nIx3bFyj61tWmjf2iH0X8o17YZvHrHHx+Xi7OYU61j/ADdALJ3um10+UdsJ5WbrarqMioWVOttTjYykMpHkhuXKI8rsxyX5bb8P0nGYcVB7l3p9XzGGPHGz1ObLWwr5hWcOwnQOx4qWPu27B5G0PZB599GuVy7HyWF2pqyVGleTUeFwOrXcw7G1ELeMrD4vPw9mZX8RQP8ANUKSQP3lQ1PlXXuEJmzdpZRy/mVaZFVgZl/KyqW0desBh8qnZ1iFxOWrP4rPwtmYhyccf5qlfSA/eVDb5U17hCZs3Di4+SfjuW5AquffdXo1dmnRYgOjfIw64MS6xxbmUunwnOKFp4/RDn0qHPRwvs4T1BtD1awW9OToLzDA9TizsMeyTrkIOwn8wd/pd8Gs948oFdgbJ5Tau0nxsVtQhbp1XTiqfyd4gnfizK13ZJsxmOBzTT06bB6NoHzlB0sHvKdR8kJvdNKyssHxQZ/+2c0bRQzelRfpuGvoh+zc4hOvauXsNOQXOnLc6w+mtnpYmQfp7BxHr2N2GDOL2v8AgxsKUBqWrXES3ZZgZW3EsJ/qrgCEJ6vuwl09v6MshiiKtyuK021JlcfodtObTx6D6W2Evr/dFfn0F/EN6PYBoLjZjmzTqF1ORjv9pZGLy9af6x83Ly7XfaX4m2jVnVz9F/EtRu4wxagc66nXf6RYDTXT2tOhl9oQw8VDru0OvR1naNP0r17oG1Ve7Tq1B26aDpGw7B3ejuYaQsU1oBtPQA3VoBuO/YB0HXT5rruhr169fxWU02s6IqkOfSRVBLnXeVVeFtvSw4Qemxoak9evXu+7y/8Al230XvPgKo0VEI8XQ7xxKAtQPSKxr7xldeP19328bFx8aoVUVrXWNvCo02neT1nth1kkawpAQEBAQPnjlPjENzG45Z3+DpwUD/Zgni+uTDHhnfVrkcywsVhRrx3aehjUjjs06PRXcO06CFvKRlw82y/XIwKD7KEPeR2ttRPJxd8JrfZvj4eFg1u6KK9fStuc6s2nS7sST5TDUkjD+J25Po8tp8cf9VZqlA7j6z/VGnbDPlnZ1VypWsW/NsOXep1XjGlaH3K9w7zqe2FnDvq0y+ZY2O4q9K3JYapjVDisI69PZHa2ggvKRh8Hm5u3Ofwcc/5OljtH7ywaE/RXQd8Ji3dU9mHg4wLFMfHrGgGxVHUAB+iGsyRJ4nMM/ZUGwsQ/tWGl7j3VP5Y7W29ghnW+0WY2Li4dJSlRWm1nYnUk9LMx2k9phqSRIc7IzSU5botO589xqn+yX2z2+r37oZ8rdlOHg4+IreGC1lh1tuc8VjnrZv8AQDohqcZE9mfdlWNRy3RuE8NuYw1qQ9IX579m4dPVDN5Z0ijDwacVW4NXtsOt17nV3brY/oG4dENceOE1ubfl2Nj8uICqeG/NI1RCN61j23+QdPVDN5Z0irDw6MSrw6gdp4ndjq7sd7Mx2kmGpxw3hSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRc05Py/mdPhZdQfT1LBsdfotDPLhOW781by/mfILTYLL7uVbS74zaPXt14jU3FX3kDTu6TheN4fD6eLzHHyFQ1c8deP1FvrpRj3aomvkhucpf+S8cvybADZzK90PRX4SA+VU4vlhvxvd3XyvlmO3jmsNav8AmLmNjj69hYiFnCR43OsDiKUOcqwbODHU27e0r6K/WIg845/7vlfNwKT3W3n9NafehPyvs3xeXYuMxsRS97bHvsJexu9jt07N0NTjIzu5rSLGoxVOXkrsaurThU++59Ff09kJefbVx/Dr8o8XMrA6dGHXqKR9Mn0rPLs7ITxzuruvxsSjjtdaaU0AJ0A7AP8A0hq2RH4nMM7ZUGwsQ77WH47j3UPqDtbb2CGdb7RXi4ePi1+HQnCCdWO0szH2mY6lj2mGpJG0KQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQOLqab62quRbK22MjgEHvBgsyi+AzMXby+/Wsf5XIJZO5H2un3h2Qx42bPU5vSjCvOrbCtJ0Bt08Nj7to9DyHQ9kHn30XggjUbQYbQ2copDm3DdsO5jqzVacDH36z6Dd+mvbDN4dtHPxnMcbZmY/jVj/MYoLeVqj6Y+qWhM2bqsXOxMpS2PatnDsYA7VPUy7we+Gpyl2YXcpx2sa/HZsTIba1tJC8R99SCj/WEJeE6aOPiOa4uzIoGXUP22P6L6e9Ux/VY90JmzfVtj52Bmhq67FsbTSyhxo4HvVsAw8ohZylY/wpqDxcuuOL+4I8Sg/wCzJHD9QiE8MbH8SycfZn4rIo/zFGttflAHiL5V07YPKzePBicuzScvCu8O5t+TjMNSffG1W+sIMS6x78RzXF2ZFIy6h+2x/RsA96pj+q3kgzZvqySvlebc1uFecbN32Gv0LP8Aa1ONv1lhNLtu7e/mFKGvNxhmUEaNbjjUke/SxJ+yW7oXNm+rDFSg6/wbMVOH18K3VkHZwNpZV5NnZCT/AMa5ympNgtz8a3ByVGgzscl107bEGvD2WLpCX30dF8m6gca083xNdVtpKraCNx014Ce1WXuhdb7xk2XRwnHOQrI+w4PM1KMexbGGreUP3wmen9XLV201la1vx6WGhpdPjcYjsCFrAPMOyExj1lC2TVjgqlteOp2FKshUQ9nw+WvAvcDDOcev9UbZVKk+Aa1Y/wBSaUJ//jZtX6sMZ9f7VJk5mQW4TbaXPsmy5WP0Vue5G88M3lUDaEHTTRjoQBwqx6iPYeRh4FJOu3UnTXcSw/VceZoGiINg36+iBps16VCnTyodD80yqtxMLJyX4Ka2sYEcQUFiCN3ETw6H6ZRx1mGpxtfoMD+VXGj5Vnh6Hi4KzxPr18ZACntVeL3jDvx+ru+9i4WLioUx6xWCdWI3setmO1j2mHWcZNm0KQEBAQEBAQPn/A5+T/jcooh34+Lqg7msP4h+rwwx4271p/2vldH7LFrY9gLN+lm+WF04s/js/J2YWMa0P+ZygUHetX5jeXhhPK3Z6nKK3cWZ1jZtoOqizQVKfdqHo+U6ntg8O+rTJ5nh47+CWNmRp6ONUOOz7I3DtOghbykY+HzXM/Nb4Gg/s6yGvI95/VT6uvfCYt9lNGLhYNLeEq1J61lhO0+87ttPeTDUkib+JX5Xo8sqFi9OXZqtI+j7Vn1dnbDPlnZpj8rrS0ZGS5ysserbZpon9mg9FP09ZhZx63d1l8yoosFKhr8phquNVtfTrboUdrECC8sfLEcvyMwh+ZsDXvXCrJ8If2h2Gw/d7ITxt3VZWXi4dQa5gin0UQDVmPQqKNpPYIatkSeBmcx25QbFwjuxVP4lg/esvqj3VPeeiGcXlvssssxMLG4nKUY9QAG5VA3AAD5AIatkiLgy+Zfmh8XAP7Lat1o9/Tai+7vPTpuhnXl8Po11V1VrXWoStBoqKNAAOgAQ3I6gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8bO5Cyl7+VuuPa54rcZ1DY1p95Drwn3lhz5fX2fPx2w/GNGXyWuvK3stARHOntBCU4h9BmhzmOsWKP5ZRgbMPw3G7x8azUdzOhHmMN/h2/wAFq855YqhaS7gbkppsf5EUw15x78dzC7ZjYLKP63JYVL9leN/OBB5W7R5/Db8jbn5LWqd+PVrVV5dCXbytp2QeOd1ROFg420142PWNm5EH6BDWkiX4/LytmBTpWf8AN3gqneibHf5B2wz5W7NMfllSWjIvdsrKG66zT0f7NR6KeTb1mFnHrVkNEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBA8ZFdSrgMrbCpGoIgQHlCU+lgXPhn+rX0qT/sm2D6ukMeHbQ+L5nj7MrFF6D9tinU+Wp9GH1S0GbN42xuZ4GS/h1XDxRvpbVLB3o2jDzQs5SvcrluFlMHtqHir6tykpYO510YeeC8ZWHwvNcf/AA+UuQg3VZQ9LyWoNfOphMWbU/ir1bM3Eux+uxR41f2q9SPrKIPPvHZXk/NEBBqygnqupBZT2MPSUwv48nHwGdR/g8xio3U5I8VfI+q2edjCeNm1e/H51OzKwXI6bcZhcv2TwWeZTB5WbxgW/l/Nv4hYtWYfaVmx8jy+o/nhPxvy3+G5tR+RlLkp0V5K6N/vK9PlQwuOU6p8qxLgBzLlbnh9W6oC8L2qU0tH2YS67xlVkY6twYXN+BujGzPTPmsNd33oSWdL/Nrk15NwU5vLK8sL6l2O6lx2r4nhlfI0LZbvMp/iFo/Ly8vE0/Z5dL3Vj65Gv/EhnOOtidrsS6w2a8vvu6bsfIOLd8mp87wmZe39HbXZXAUByjWd6O2Hk1n7TCwwZvv/AIIXCV6kVV1dZShqD56slRDPr1qnbmNuvBVe5b5q32OR9X43i+SGfL16qK/KusYo1ljt0oXdm/3eRx6juaGbfX+6MleA6cIr10YaEVa9TKdtRhl0lVllnhqrNYRpwacbkdRUfmL2jbBh9jC/lXmuRobEFCEaE2nU6dWm0uvY4U9sOnH6rX3sL+VOX0bby2Q+mhB9FNOogHiYdjs0O3H6pH2a6q6kFdSKiLsVFAAHcBDrI6gICAgICAgICAgfP+H5vkfn5C4tZ314w4n8ttg/QghjHK7u68LlmBxZDBUcD08q5uJ/LY5J+WF8ZNXH8XF2zAx7MvqtA8On/ePpqPoBoTzztqfBcwyduZk+HWf8vi6oO5rT6Z+rwweNu9bKnLeW45I8PFoG1mOignrJO8wunGMf4jl5Ozl+OSh/zOQDXX3qp9N/MB2wnlbs9TlKWOLc+w5lgOqq4C0qfdqGzytqe2Dw76tsvmGJiFVtf8V/y6UBexvoourGGrykT8PNM31ycDGPsqQ2Qw7W2pX5NT2iGdb7KsbExMKlhUorT1rHJ2k9LOx2k9pMNSSJTzK/LPByxA6bjm2AikfQGw2eTZ2wz5Z2bYnLaqLDfYzZGWRo2RZoWAPQgGxF7FhZxxr1c5PM1W042InxWYPWrU6KmvTa+0L3b+oQXl0m7zH5axuXKzrPiMpdtezSur+zT/WO2CcetXQ0QEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDLJxMbKr8PIqW1NdQGGuh6weg9ohLJd0nwGfR/g8wlBupyR4oHYHBWzzloZ8bNq9+K5wmyzBSz3qbgdfJYtf6YM8ux8bzNticuZT12W1qPuGw/JB5XseFzq78y6rEXpFKm1/I9nCv3IMcr7O6OU4ddgucNkZC7r72NjD6OuxfqgQs4RZDRAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAxycPEyk4MmlLlG4OobTu13Ql4y7pv4U9X+Dy7scdFbN41fmt4iPqsIZ8O1PE55T61VGWo9qtmpf7Dca/fg/Ke5/GK0/xONkY/WWrNi/aq8RfOYPPvGbN/LnMH1L491w9oMotHlBDiE/Hk0/hd1f+Fzr6h0I5F6/8UM/3oXx7U/77V/02UB9Og/+8IPyZ35NlieHm8pssTp08G5PMWDfdgt7xJ/2Sv1Bl4B6kTJqQeTTwoY/H3n83o5hQp0q5/Vr0JlCon7vgNC+U/7nb5l9qcD3ctzE6i5QHyfjQZvtU3gY67V5fjVE9OLl+F+qtUM4nafzcm5q9zZNY/8AvaX/AOazQZ9ZTX8wQ7LMxz7tl/Lm/SjGEvL3/olco4LKviDrFdDDz1YdsM+vWiRrVL8NYBs+agQsPqp8K/mWGc+vWGycq5xlDhXHtZD026lfKmTo32WhfDlfX+q3H/kzOsUDIuqqT+rHFaPIDwlD3NDU+i9X1cX+UeVUkPabMiwDTidtNnV6HCSPpEw6T6ZH1sfFxsZPDx6kpT5qKFHyQ6SSbNYUgICAgICAgICAgICB8/4fnF/52SmKh9jGXib/AHloI+5DGOV6vV5Xyyg/EXjxbE2/EZLGwr3FyQvk0g8JNQ86xX2YaWZrdHgLqn+9bhr+9B5zpq84edZHrPXg1noT8a37TAIv2Wg/K+zSjlOFTYLmU35A3X3sbHH0S2xfq6Qs4SObOc4gc1Y/FmXjYascceh95tiL9ZhBec6aufC5tlfnWDBpP7OnR7SO2xhwr9VfLCY5X2b42DhYSu1SBCdttzEs7adLu2rHymGpxkYHm3jkpy2o5bbvG14KB32EHi+oDDPnnbUXlTXsLOZW/FMDqtAHDQp+hqeLvcnyQeGd1GXn4mGqi19GbZVUoLOx6kRdSYavKRL4fMs780nBxT+yQjx3HvONlfcup7RDOLfZdjYuPjVCrHrFdY9lR0neT1nthqSTZpCkBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQMr8XFyBpfSlo6nUMPlEJZLul/gXKx+XSaP7B3p/5bLDP9uH8JZfys7Kr/ANoLP+atkHh70+B5kvq8ydv7Sqo/qqkHje58Nzobs6k/Sxyf0WrBjl3DRzwjRsrFYduNZ/8AXgxy7z+X/Vi3K+YP69mCf/2bH9N0J4X2/l/1cfwG0+s+KPo4iD9Zmg/t/H8nq/y+OnKK9ldOMv6a2MH9v3/o2TkeONjX5DDpAuasf8Lw4X+3Ha8j5QCGbFS1hua0eKfO/FB/b49lldVVa8NaKi/NUAD5IbkdQEBAQEBAQEBAQEBAQEBAQECD4Lmdv+IzygO9Mata/JxWeK3m0hjxvWuX5bybG0vygrsu0XZbmwg9htJ08kHjxm73+N4TDTEWzLPR8OhZf94eGv70HnOmp4nO7/Uqqw0PtWt41n2E4V++YM8r7H8Gqt2511mYfmWELV/u04VP1tYPDvq1uzuWYIWlrEqOnoY9Y1fT3a0BbzCFvKRl8XzPI2YuL4CH9vlbD3ipfSP1isJm3aC8nrsIfPtbNcbQtmgqB7Kl9H7Wp7YPDvq2yuY4OIVrsceKR+HQgL2N9FF1b5IW8pGHFzbM9Vf4fQfabhsvI7F2onl4u6E/K+yjE5di4pZ61LXP+Ze5L2N3udvk3Qs4yKYaICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHz25WpGuVnZNq9OtgpH/BFUMeHe1OG/lXEt1DY3xHWStlvy8Twn4Tsp/jCP/hsXJyOoio1r9q7wxC+faV54nPLvUpoxV+dazWt9hOBfvwZ5U/hVtv8AjM264dNdZ8CvzV6P52MHh3rv/s/Kq/2OIrbyeFCx8u1jC/jx9nH8Vtu2YOJbfrutsHgVedxxH6qmE887Q+C5lkf4vL8JD+wxQU89raufq8MHjbvVOJgYeIpGPUtfFtdhtZj1sx1Zj3mGpxk2bwpAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQED4Kj+VwQfgWdhuLYd9h+WsmHH8O3+CyrmWLWvDjYORw/NXHasffCQ3OU6R38fzF/yuW2L1G6ypB9xrT8kHlexpz6ze2NjDsD3nznwR8kH5ezz+FW2f4rOyLR0ojChf+EFf70Hh3rfG5Zy/Fbjox0Sw77NNXPe51Y+eFnGRTDRAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQED/2Q=="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/22974.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.649Z","timestamp":1785159268649,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/22974.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 446\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Wed, 14 Dec 2022 06:25:07 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 04:05:26 GMT\r\netag: \"a062e2c769af25c180143b158a03c7c9\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 34143\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: kMV-1cSs8J2s5FYKsOOHJA_dAdkYnxM1_8TIHeJJSDMEs4yyj5bJqQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":446,"size_decoded":979,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"a062e2c769af25c180143b158a03c7c9","sha1":"a68c0d9392a682c3aa6104b07e02dfb915527ac1","sha256":"3ec5fbbd218e9cef5b494c2df9a4426542b226f062c967a6fdffaff7f98e3244","sha512":"833130dc07ece584b5c50f65be06eda012db68a1c8b8778ee1991b6ae5e61aa5d46af9032d8c38edbb98e6fa3fbfaaf8dfe77e8cb8011cc4a3c4833ada588cd8","ssdeep":"","tlshash":"d7f0dcd2e282a1869b85e6e2a80070af89348ca1f3415509c890f22a2f378aa43437a1","first_seen":"2025-01-10T18:56:09.115311Z","last_seen":"2026-07-29T06:14:00.365365Z","times_seen":1379,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAABhUlEQVR4Xu2Zi06DQBBFF8rTGiVq/P8/JGogiMDYpSLmEq22bLdm7kmmtLeb0J4OJQxGlGMw0AYFYKANCsBAGxSAgTYoAANtUAAG2qAADLRBARhogwIw0AYFYKCNswhomgajPzHsqusH6e2TlXEuIEkSiaJI0jQ9upI0F2PCUcTaOBNgjBk/+FplBfyLDui6TsIwXHyBUyrPc2nbFne1Ck4EHPr1o3jX2tmV3BZ3i/emipNsXBOEEe5iVZwIsH96tlt/qu31zSL7Wk/PL/PrwT66YXUBB/k4kG0XhJt43PrEq4Cp3YuikLIsYeF5uAgBmyiR1/YNFp6HixBgy8Up7jdQAAbOoQAKGDcUQAEUQAEUQAEUoFCA7K/vp1mfrfuHx/G63wdeBFisADvnm7sgk77vcZlzvAio61qqqgIBuTgc/HyLFwETdnwWBMGngCzf4hLneBUwTwD3nHoD5Rg8C/APBWCgDQrAQBsUgIE2KAADbVAABtqgAAy0QQEYaIMCMNCGegHveof2oBXRtqkAAAAASUVORK5CYII="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/35491.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.659Z","timestamp":1785159268659,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/35491.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 332\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 00:46:09 GMT\r\nlast-modified: Wed, 30 Jul 2025 12:26:41 GMT\r\netag: \"cc548cb26fde330895dba23ae4af6f04\"\r\nx-amz-server-side-encryption: AES256\r\ncache-control: public, max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 46100\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: X76CGmFZTZz0hG2HdbICajBUViEVi41piKmv1uC5npzdWbtsQMzo4w==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":332,"size_decoded":886,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"cc548cb26fde330895dba23ae4af6f04","sha1":"3dfabad6a0e3c3c940c77525d8214c2d18f413c0","sha256":"0a345379ac9b1705adaa73b601e126fc6ddaf9c6280b01458926ebc31b886772","sha512":"adc1c3866158c64aa3fcf20b473e44c2790fdfa62a031a17585d10c99998dc71dd5cf4b9409d9b7dddd616f82de3aab85bcd7ff62bea5dbd4877bfe12220c0b7","ssdeep":"","tlshash":"a9e078dfd7a857ed513916751de8fd204e7b00755100d5c809ed7570445f5453a52531","first_seen":"2025-08-09T19:29:39.154535Z","last_seen":"2026-07-29T06:14:00.318458Z","times_seen":1301,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAABE0lEQVR4Xu2QwY3CMBQFaYQ6aIvzNkMhlEBDSHtYxCWKhpisHSOSvBnpXZ6/5e85/IVzYJGGAlikoQAWaSiARRoKYJGGAlikoQAWaSiARRrdBJyO55eU4FzLfC8UwKIVLvhuSc61zPdikQAu9czt+juEZ1NpnR93S1AAixq43HhBLllK6/y4W0K1AC7ExS4/9yGlz4371vnSbC0KYDEHP84lWz9UO1+areWjAkqf49lU5uYVoICNCegdBWxZAO9OhXcYBShgJwJ49t8oQAE7EVAK7zAKUMCGBfSIAhSwUgHfiAIUsAIBa0ktCmAxBx9cW2qpFrA3FMAiDQWwSEMBLNJQAIs0FMAiDQWwSEMBLNKIF/AAZC46QvDJoXEAAAAASUVORK5CYII="}},"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":"wss","addr":"wss://websocket-visitors.smartsupp.com/socket/?EIO=3\u0026transport=websocket","fqdn":"websocket-visitors.smartsupp.com","domain":"smartsupp.com","tld":"com"},"ip":{"addr":"52.59.7.56","port":443,"asn":16509,"as":"AMAZON-02","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:35.235Z","timestamp":1785159275235,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.smartsupp.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Wed, 24 Jun 2026 00:00:00 GMT","end":"Thu, 07 Jan 2027 23:59:59 GMT"},"fingerprint":{"sha1":"4F:1A:3B:79:00:E3:DC:1F:92:62:7C:DC:85:3A:BE:8C:D1:68:F2:57","sha256":"7F:93:E6:29:5D:CA:78:BD:30:0D:25:11:3B:E2:01:C9:DC:80:3C:80:90:3F:84:D2:72:1B:0D:42:F1:20:13:D9"}}},"request":{"raw":"GET /socket/?EIO=3\u0026transport=websocket HTTP/1.1\r\nHost: websocket-visitors.smartsupp.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://walmartfundholdings.com\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: QMEzoXCBB76cx0jCVwjHAw==\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":"HTTP/1.1 101 Switching Protocols\r\nDate: Mon, 27 Jul 2026 13:34:35 GMT\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Accept: w5cCC6hRahCVdxsjeyP/ywDf++A=\r\nSec-WebSocket-Version: 13\r\nWebSocket-Server: uWebSockets\r\n\r\n","headers":null,"cookies":null,"status_code":"101","status_text":"Switching Protocols","fingerprints":null,"data":{"size":0,"size_decoded":224,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":""}},"time_used":274,"timings":{"blocked":0,"dns":104,"connect":122,"send":0,"wait":24,"receive":0,"ssl":24},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.googleapis.com/css2?family=Raleway:wght@100;300;500;600;700;900\u0026display=swap","fqdn":"fonts.googleapis.com","domain":"fonts.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.896Z","timestamp":1785159267896,"http_version":"HTTP/3","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 /css2?family=Raleway:wght@100;300;500;600;700;900\u0026display=swap 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://walmartfundholdings.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\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 13:34:28 GMT\r\ndate: Mon, 27 Jul 2026 13:34:28 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\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":11022,"size_decoded":1348,"mime_type":"text/css; charset=utf-8","magic":"ASCII text","md5":"b5a0d316b2e451ad66a3df64fd9e92ac","sha1":"41b72b7cf77ad9a5d326632143bbe2f2a3aabcb7","sha256":"b4c4536f5db19f90e6ce63fd5de2a8b91cdcf8d114244462b77188ebf61c047a","sha512":"5c14f096031ca15922b22f3e5f8186b9dea4c46f4599a664980c606e9fbdc6d762ebd61afb3dcec547fbb80d85ece09c72d165fcbe58720ef8d894fea9426796","ssdeep":"192:tpidpTqpHnpD3pXiVT8HXDn9ivTiH9DN0iST/H0DEbiBT4HbDrhi7TuHhDxp:tUdxqFnd4FS8bcFwf+JmYvgF","tlshash":"4d3298a00917d000eb47acc663ce7f36ee5e62053046853e9bfd58f8acaad361394b0d","first_seen":"2026-07-27T07:08:39.362189Z","last_seen":"2026-07-27T13:35:41.72114Z","times_seen":3,"resource_available":false,"data":"LyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAxMDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNBSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDOEEsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjsKfQovKiBjeXJpbGxpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDa0lUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDSUlUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAxMDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNNSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDMElUdy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMzAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDQUlUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzhBLCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7Cn0KLyogY3lyaWxsaWMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q2tJVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMSwgVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2Owp9Ci8qIHZpZXRuYW1lc2UgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q0lJVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCOwp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMzAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDTUlUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDMwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55QzBJVHcud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBjeXJpbGxpYy1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q0FJVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4QSwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNrSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDEsIFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjsKfQovKiB2aWV0bmFtZXNlICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNJSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q01JVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUMwSVR3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNBSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDOEEsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjsKfQovKiBjeXJpbGxpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDa0lUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDSUlUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNNSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDMElUdy53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDQUlUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzhBLCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7Cn0KLyogY3lyaWxsaWMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q2tJVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMSwgVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2Owp9Ci8qIHZpZXRuYW1lc2UgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q0lJVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCOwp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNzAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0dWc4ellTX1NLZ2dQTnlDTUlUNWx1LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55QzBJVHcud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBjeXJpbGxpYy1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDkwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q0FJVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4QSwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA5MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNrSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDEsIFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjsKfQovKiB2aWV0bmFtZXNlICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA5MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUNJSVQ1bHUud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDkwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjM3LzFQdHVnOHpZU19TS2dnUE55Q01JVDVsdS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA5MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR1Zzh6WVNfU0tnZ1BOeUMwSVR3LndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0K"}},"time_used":310,"timings":{"blocked":-1,"dns":3,"connect":16,"send":0,"wait":33,"receive":0,"ssl":29},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget.coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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://walmartfundholdings.com/","date":"2026-07-27T13:34:27.914Z","timestamp":1785159267914,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover= 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://walmartfundholdings.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=3,cfOrigin;dur=0, cfExtPri\r\nlocation: https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=uRMl7NsvthnQdXeYTt2YuNc5Yvfr617xVXLe1MmXDiLjmolbYrke7R1499m6LnWJ%2FNPU4VUTtUYdij%2Fe7%2BehLVasqB9wWky0qDQSlS9kJZpHnkC9PTbCcV0f%2Bc3cijGDrJoJYA%3D%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\npriority: u=4,i=?0\r\nserver: cloudflare\r\ncf-ray: a21c0591193056a3-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-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":null}},"time_used":106,"timings":{"blocked":-1,"dns":80,"connect":17,"send":0,"wait":8,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/ser-ico1.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.936Z","timestamp":1785159267936,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/ser-ico1.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"81b-66136805-75826620ec81e7b4;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2075\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2075,"size_decoded":2400,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"27e71265cccecc85676b15d095183ed5","sha1":"40e4e1db56774593346d019efc0b7b4a8d70c12c","sha256":"7a800ba1a79dfaba83b7aa827f95b6aa7062d6a48294a597f43663e0d059764b","sha512":"5aae99ac5ab2a05c5911fa88ff9295f1714ac15d453a565311657211dc5ecf19cc78e12d9c7529076952f4e291420733d434cf02cb45a1e094fe91de7590500d","ssdeep":"","tlshash":"2641d881be911900d5e6e28d3df6545e89aa0930e7c4d079bc89c9ae18684f781278eb","first_seen":"2026-07-27T07:08:39.418807Z","last_seen":"2026-07-27T13:35:41.664627Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTgyODJENjkxQjc4MTFFQ0I0MkJEODg3OTYzNDVCNEQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTgyODJENkExQjc4MTFFQ0I0MkJEODg3OTYzNDVCNEQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxODI4MkQ2NzFCNzgxMUVDQjQyQkQ4ODc5NjM0NUI0RCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxODI4MkQ2ODFCNzgxMUVDQjQyQkQ4ODc5NjM0NUI0RCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PnP1wR4AAASPSURBVHja7JpdbBRVFMdndmWlu1hiAvErihoffBElqdi0UALqGwkYMRZEiIGEEFESDfEFjIjlQY0kkpAYfakxmgYMjYEH6xPS1iLV9EElMbVWxShGMVR2W2Td6+/unkmnw36wsNa7zTnJL3c7cz9m/nPPuXfO1DfGeGrlzVeRVCQVSUVSkVQkFUlFUlORVCQVSUVSkVQkFUlNRVKRVCQVaUaL1LBx2VGKebBlvPPYUBXt8tcBc2ER2AP3w43wDwzDcfgUvoOJcHvG+s9FuqZmPRmvSW60scp29hqWwwtSWsvmzxTsPlgLZ+EDeBV+Cp2vI5EKT7hRnv7lzaINy2ZTbIa9kILT0AMn4TzE4CZ4CJrhaZlltvwScvUlUpVu2/BkW4LiGZkZVuB3YQ+MFKn+GqyEl2CxzKiN8Nl0zKhYDd1tkkoCrW+LU68d9sI4vAJPwciUfqZyBNbAx3AX7MuX02A1E8k3k5Sz5BNtPnWa4WXIwRvQEW5fhlHYCgOwGF6kv/n1M5NyZpLy9e6APbAADkLHlLaV+R52wAish03JtUuvnTHulmxfeh3nt8NyOAG7xd28KukVF/1L+ni4XrYA5d3s8fzTtivZs/CzrGhnJRBnA6+FOJyBH234gjtt80gdu6p1wkLYDq/T/y+ZruNfuC1SGTdLPrbExo0N9mYgI6tYj6xs7bLcBzPbbgu64HkR6E24O7SJtCLNkdVtJ9wOq+FtxnmOsj9zsPfvuphJyTVL7MbyFtk5b4J1kIZ9mUO9b3H+Bn7b1Wm+ELabg4UQbpO9UtQWSH87ZH+2QrYG++nbPoDfGWfUsZhkAkzy0VafchUcgk9gHYzCLtgt9WOQDrULc972A1mYKFHnAsQRYphyC3TBXOiAo9Dp3Ezyp+594zKLboVTMAjvpw/39UTq+6W6q2bszId9w6lHWjeLS68S91zourvZV5NueTn9Ot3d9021gb5a4wHYuHYgtbrV7tzvhetdDtx++qN+IzPo1JUE+qsSqzsvVp+jq9vkz9TKFl/SHitCS3cw3q9wOHL8ikdlrHskvTIrND9tmU4f6X/H1RdcIwvCg7LEm0is+UryQ2M1cvIW6JAVLjzWH+CWSJHA7ZcJwvEaRyQjfVYa17lUiSnjThdrLFK2RA5r3OmY5Ig5OJNyM/eDwrS94KpIlwZuFekyAreKpO6mgduJmeSHludKWQD/KjIFvusi2QtMlqg5R3bIsQp1glRuQ4k6CSltH6ki593OAsgO+Ji8u+WE4KZtfvtPuADvgU2jBKnZmNT5XPqwX3QPeIXs5oT0EZPrPiltBrxCvjwR2nnbOudqtnLX6h8mGpubfvAKadiWsYHBIf725c38Ejk5n5U2cblhU+RVI9hUzJKbzkVcKJ/Hpi/bT6LY3ObcRbdEeqBp1CvkorfJU54dunk/8jt8zISOmUgsCqc+qqljbWLsxOCQYzHJJGTK73fkTe6cV/wDwv8okud96xW+XriwF7Du+ZtzMWkmm4qkIqlIKpKKpCKpSCqSmoqkIqlIKpKKpCKpSGoqkoqkIqlITtq/AgwASDBih1SGjTMAAAAASUVORK5CYII="}},"time_used":56,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":56,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/4943.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.626Z","timestamp":1785159268626,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/4943.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2671\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:35:11 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 01:40:53 GMT\r\ncache-control: max-age=86400\r\netag: \"8e26118d7a63338cfef1116720c92e0e\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 42823\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: KxSh97lDh8al3U4AenH09e3x0yfsuoFysa5oOvmbfhgJ5dIXb7TrWQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.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":2671,"size_decoded":3197,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"8e26118d7a63338cfef1116720c92e0e","sha1":"8902985faa4db767ea26150e0058886b8874fb37","sha256":"a0ed329b8cd852688196ea87f4496585aeb0047c57b1fadbfc87f7bb8b9cada6","sha512":"d5137311b25651141f093713ba390fbf9403398c35ed1f1178a95a99101ddbdcc4791b7cb60e7f39d7cb8216c9b5a65ea6ab02e61730d398c6bc805f8efbbc49","ssdeep":"","tlshash":"39513bdc736f68c4999581dbda64c9cc91092c1ded09a4431ee838733cb8bc28b2749a","first_seen":"2023-05-06T12:21:16Z","last_seen":"2026-07-29T06:14:00.408993Z","times_seen":1479,"resource_available":false,"data":"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"}},"time_used":37,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":14,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/js/script.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.929Z","timestamp":1785159267929,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /js/script.js HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"3d9-66136805-ff21c134d2467e6f;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 338\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":985,"size_decoded":713,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"62e271a8a7e9ea8e6a3482b58a65e498","sha1":"d10d38c6a68e8a2178f95e31ae9df130b2acb367","sha256":"7237c13688b844a1988ed75acace36a9a09977726dc883a63d42f1ad7aed60e1","sha512":"92a5fc06ad938269540602abaa97eca54baf15775ca4294817da2297ca51ba163a5f025fe326606a1387a91490682f2556a94147afb33f2c3e40f249950d7d09","ssdeep":"","tlshash":"2611ce0d70a8501969fb71056e794a48d7a5200bf005b8cafcbdb2103f3a14b26eaf0e","first_seen":"2026-07-27T07:08:39.367597Z","last_seen":"2026-07-27T13:35:41.644505Z","times_seen":3,"resource_available":true,"data":"DQoNCiAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpew0KICAkKCcucGF5bWVudC1pbmZvJykub3dsQ2Fyb3VzZWwoew0KICAgIGxvb3A6dHJ1ZSwNCiAgICBtYXJnaW46MjAsDQoJYXV0b3BsYXk6ZmFsc2UsDQogICAgYXV0b3BsYXlUaW1lb3V0OjMwMDAsDQogICAgYXV0b3BsYXlIb3ZlclBhdXNlOnRydWUsDQoJZG90czpmYWxzZSwNCiAgICBuYXY6ZmFsc2UsDQoJIA0KCSANCgkgDQogICAgcmVzcG9uc2l2ZTp7DQogICAgICAgIDA6ew0KICAgICAgICAgICAgaXRlbXM6MQ0KICAgICAgICB9LA0KCQkyMDA6ew0KICAgICAgICAgICAgaXRlbXM6Mg0KICAgICAgICB9LA0KCQkzMDA6ew0KICAgICAgICAgICAgaXRlbXM6Mg0KICAgICAgICB9LA0KCQk0ODA6ew0KICAgICAgICAgICAgaXRlbXM6Mg0KICAgICAgICB9LA0KICAgICAgICA2MDA6ew0KICAgICAgICAgICAgaXRlbXM6Mw0KICAgICAgICB9LA0KCQk3Njc6ew0KICAgICAgICAgICAgaXRlbXM6NA0KICAgICAgICB9LA0KCQk5OTE6ew0KICAgICAgICAgICAgaXRlbXM6NQ0KICAgICAgICB9LA0KICAgICAgICAxMjAwOnsNCiAgICAgICAgICAgIGl0ZW1zOjYNCiAgICAgICAgfSANCgkJIA0KICAgIH0NCn0pOw0KIA0KfSk7CSANCg0KDQoNCg0KDQoNCi8qRkFRIEFjY29yZGlvbiovDQoNCg0KICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgew0KCSQoJy5hY2NvcmRpb24nKS5maW5kKCcuYWNjb3JkaW9uLXRvZ2dsZScpLmNsaWNrKGZ1bmN0aW9uKCkgew0KCQkkKHRoaXMpLm5leHQoKS5zbGlkZVRvZ2dsZSgnNjAwJyk7DQoJCSQoIi5hY2NvcmRpb24tY29udGVudCIpLm5vdCgkKHRoaXMpLm5leHQoKSkuc2xpZGVVcCgnNjAwJyk7DQoJfSk7DQoJJCgnLmFjY29yZGlvbi10b2dnbGUnKS5vbignY2xpY2snLCBmdW5jdGlvbigpIHsNCgkJJCh0aGlzKS50b2dnbGVDbGFzcygnYWN0aXZlJykuc2libGluZ3MoKS5yZW1vdmVDbGFzcygnYWN0aXZlJyk7DQoJfSk7DQp9KTsNCg=="}},"time_used":61,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":61,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"static.getbutton.io/widget-send-button/js/init.js","fqdn":"static.getbutton.io","domain":"getbutton.io","tld":"io"},"ip":{"addr":"104.26.14.221","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.296Z","timestamp":1785159268296,"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":"getbutton.io","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Tue, 16 Jun 2026 00:45:37 GMT","end":"Mon, 14 Sep 2026 01:45:33 GMT"},"fingerprint":{"sha1":"DC:2F:40:2C:2E:8F:A1:FE:B6:A3:D2:1B:01:7E:28:02:66:38:0E:86","sha256":"E1:C6:2E:FD:25:F8:44:CA:B3:2C:26:9B:A5:CB:26:9B:6D:77:7B:CF:2A:52:29:CD:23:39:99:E7:89:F4:41:57"}}},"request":{"raw":"GET /widget-send-button/js/init.js HTTP/1.1\r\nHost: static.getbutton.io\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://walmartfundholdings.com/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 302 \r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\ncontent-type: text/html\r\nlocation: https://static.getbutton.io/widget/bundle.js\r\nserver: cloudflare\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-cache-status: BYPASS\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=4qRcVDFjcqAM3lPqMM48L4%2FO2UUnn%2B2z6vtzwg2v6SNZAI9LNPKSc6%2BS2fO4jaPbc%2B5ImdpaycZTE1T31jB%2FK3uVdvYaDXOVT9NJ98XfsciUg3jdr6wh8JwY%2BHPceKL0oeIihM0%3D\"}]}\r\ncf-ray: a21c0593091d3181-OSL\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"302","status_text":"","fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":0,"size_decoded":0,"mime_type":"application/javascript; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":null}},"time_used":255,"timings":{"blocked":-1,"dns":6,"connect":4,"send":0,"wait":220,"receive":0,"ssl":22},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/css/owl.carousel.min.css","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.905Z","timestamp":1785159267905,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /css/owl.carousel.min.css HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"d3e-66136805-d0ac945bceec6edd;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 942\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3390,"size_decoded":1303,"mime_type":"text/css","magic":"ASCII text, with very long lines (3185)","md5":"878c9c40c4c12d6d2de0b89c4d00c49a","sha1":"d0da0e73106c47338a91061bb1d955c251f9b2fc","sha256":"d09ed76a6e677eade2452777a4e81b4baaba6f9d080c6ac827891e29558ac62a","sha512":"96952105453d313af50479d840253cbd0fe0441ac1530686be70b2b52c6c0413f127b80860e89e4e70c21f4f72294b2556a95a35acc6943f2e97fc139bc48ce7","ssdeep":"","tlshash":"e461bbe5314b255f480f83221dd91e86383dc852d8660a9a92fbd314479ae6d213ffcf","first_seen":"2026-07-27T07:08:39.217334Z","last_seen":"2026-07-27T13:35:41.706112Z","times_seen":3,"resource_available":false,"data":"QGNoYXJzZXQgInV0Zi04IjsKLyogQ1NTIERvY3VtZW50ICovCgovKioKICogT3dsIENhcm91c2VsIHYyLjMuNAogKiBDb3B5cmlnaHQgMjAxMy0yMDE4IERhdmlkIERldXRzY2gKICogTGljZW5zZWQgdW5kZXI6IFNFRSBMSUNFTlNFIElOIGh0dHBzOi8vZ2l0aHViLmNvbS9Pd2xDYXJvdXNlbDIvT3dsQ2Fyb3VzZWwyL2Jsb2IvbWFzdGVyL0xJQ0VOU0UKICovCi5vd2wtY2Fyb3VzZWwsLm93bC1jYXJvdXNlbCAub3dsLWl0ZW17LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O3Bvc2l0aW9uOnJlbGF0aXZlfS5vd2wtY2Fyb3VzZWx7ZGlzcGxheTpub25lO3dpZHRoOjEwMCU7ei1pbmRleDoxfS5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZXtwb3NpdGlvbjpyZWxhdGl2ZTstbXMtdG91Y2gtYWN0aW9uOnBhbi1ZO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXJ7Y29udGVudDoiLiI7ZGlzcGxheTpibG9jaztjbGVhcjpib3RoO3Zpc2liaWxpdHk6aGlkZGVuO2xpbmUtaGVpZ2h0OjA7aGVpZ2h0OjB9Lm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVye3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCl9Lm93bC1jYXJvdXNlbCAub3dsLWl0ZW0sLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXJ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuOy1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApfS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVte21pbi1oZWlnaHQ6MXB4O2Zsb2F0OmxlZnQ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRvdWNoLWNhbGxvdXQ6bm9uZX0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWd7ZGlzcGxheTpibG9jazt3aWR0aDphdXRvfS5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkLC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYuZGlzYWJsZWR7ZGlzcGxheTpub25lfS5uby1qcyAub3dsLWNhcm91c2VsLC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZHtkaXNwbGF5OmJsb2NrfS5vd2wtY2Fyb3VzZWwgLm93bC1kb3QsLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLXByZXZ7Y3Vyc29yOnBvaW50ZXI7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1raHRtbC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2LC5vd2wtY2Fyb3VzZWwgYnV0dG9uLm93bC1kb3R7YmFja2dyb3VuZDowIDA7Y29sb3I6aW5oZXJpdDtib3JkZXI6bm9uZTtwYWRkaW5nOjAhaW1wb3J0YW50O2ZvbnQ6aW5oZXJpdH0ub3dsLWNhcm91c2VsLm93bC1sb2FkaW5ne29wYWNpdHk6MDtkaXNwbGF5OmJsb2NrfS5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbntvcGFjaXR5OjB9Lm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW17dmlzaWJpbGl0eTpoaWRkZW59Lm93bC1jYXJvdXNlbC5vd2wtZHJhZyAub3dsLWl0ZW17LW1zLXRvdWNoLWFjdGlvbjpwYW4teTt0b3VjaC1hY3Rpb246cGFuLXk7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5vd2wtY2Fyb3VzZWwub3dsLWdyYWJ7Y3Vyc29yOm1vdmU7Y3Vyc29yOmdyYWJ9Lm93bC1jYXJvdXNlbC5vd2wtcnRse2RpcmVjdGlvbjpydGx9Lm93bC1jYXJvdXNlbC5vd2wtcnRsIC5vd2wtaXRlbXtmbG9hdDpyaWdodH0ub3dsLWNhcm91c2VsIC5hbmltYXRlZHthbmltYXRpb24tZHVyYXRpb246MXM7YW5pbWF0aW9uLWZpbGwtbW9kZTpib3RofS5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbnt6LWluZGV4OjB9Lm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dHt6LWluZGV4OjF9Lm93bC1jYXJvdXNlbCAuZmFkZU91dHthbmltYXRpb24tbmFtZTpmYWRlT3V0fUBrZXlmcmFtZXMgZmFkZU91dHswJXtvcGFjaXR5OjF9MTAwJXtvcGFjaXR5OjB9fS5vd2wtaGVpZ2h0e3RyYW5zaXRpb246aGVpZ2h0IC41cyBlYXNlLWluLW91dH0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenl7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZX0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSwub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenlbc3JjXj0iIl17bWF4LWhlaWdodDowfS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZy5vd2wtbGF6eXt0cmFuc2Zvcm0tc3R5bGU6cHJlc2VydmUtM2R9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXJ7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDojMDAwfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb257cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjgwcHg7d2lkdGg6ODBweDtsZWZ0OjUwJTt0b3A6NTAlO21hcmdpbi1sZWZ0Oi00MHB4O21hcmdpbi10b3A6LTQwcHg7YmFja2dyb3VuZDp1cmwob3dsLnZpZGVvLnBsYXkuaHRtbCkgbm8tcmVwZWF0O2N1cnNvcjpwb2ludGVyO3otaW5kZXg6MTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBlYXNlfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXJ7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLjMsMS4zKTt0cmFuc2Zvcm06c2NhbGUoMS4zLDEuMyl9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24sLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bntkaXNwbGF5Om5vbmV9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRue29wYWNpdHk6MDtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb250YWluO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZX0ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWV7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/getstart-img.gif","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.959Z","timestamp":1785159267959,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/getstart-img.gif HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: image/gif\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"144c3-66136805-52b69151d38dafda;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 83139\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":83139,"size_decoded":83467,"mime_type":"image/gif","magic":"GIF image data, version 89a, 732 x 554","md5":"b16a56d9d99de5fa57610a40702bc9ee","sha1":"6dbef813b49513902d85471ac3b1e3fa9f859731","sha256":"1254d2b234454e33b82395e7ca4d1503a75bf3842647c0021703006367e0fab5","sha512":"e6dca4dc11c49882730fc61816a4b614fb0444f3da231cd5278b680013bac2eefd2f5022b92c633f2724c09730ba08f1204f2397710e5785f0cc987b6f5e7d1c","ssdeep":"1536:EisVjNUWwMAYPIRMU3ItD1YMgASQDlDQW7h4hMdmxqOtCRIFlTDxg:hWw2PIgDm2h1DOw2G","tlshash":"9083022a6151a7cb5f4f0dc07a4fe9669eb1144b18edf23e0094b74086989f6917dfb0","first_seen":"2026-07-27T07:08:39.375244Z","last_seen":"2026-07-27T13:35:41.659196Z","times_seen":3,"resource_available":false,"data":"R0lGODlh3AIqAvf/AESDbPL29Nvm4uLi4oSrnXOai+Ps6glcPhtqTJy8sJS1qfr6+uXl5QxgQe3t7YyypFiRfCRsUtLd2cHVzurw7ujo6Guciomvoff39/Ly8sja1L3SyrrRydXi3XWikfX19Zy5rjN3XaLBterq6u3y8CZwU8ba0vb29pq2rDp9ZKXDuPf5+FKLdt7o5DZ6YfD08uDp5pC0pnmklHubkuTt6lWOeWWZhi10WrbOxbbIwejv7WKWg6G9svn6+szd1nGgj0mGb8XSzczW0xJkRbDKwa3IvglfP12VgKC6savHvLvPyNDf2pa5rH+pmRT1o77UzD6AZ1maVdPh3KjGu8rc1bTMw63EvMTW0PT496rBuRCNYTl1NMjZ0xTVjxCCW8LQyxRlRxTtnShyVxBvTxSqc87e2E+KdBS2e1WSTUyJchB3VBT7phTnmuLr6A9iQxTdlBCgbRa+grzMxrLMwxCWZxBnSubr6VKBcMfZ0hTFhL7TyxZbQRTjl6W+tXGqeU2OSWejaTVxMBTNimulcxTLhhZnSRBgRmKeZRJiRPf9+nWtg/z8/F2aXHyyioe5k9ni3+z79VmWVLPZyWKiXubm5qzu1l+eXeP2726pb6jOuNT16ZPKs5XBn8ro3ZPvznmwfrz44oLhvpjcxIu7pmjpunHSrzGmfaDHo07qsQtUO1fWqA1RQcnc00fGmFqWWt/s4Xfzxi+Sb3y0lTrcoTNsMUyvjCHFiiXinXa8pCzOlGDGoTPrqBybbjlzOk2dgSiBY2K2mICvgjBmLBrjmf39/S1PThvMjGCkjQw0MFGOUTx5NE5waWWrlHWsmU2OdW6LhCxgK4ifmqe4tBvrnxnDhSFZMx/vo/7+/h71pi1jOsXZ0vv7+/j6+cTY0cPY0MbY0f3+/djl4Ofn5xhoSqO/tcDPybLGvrnQyGOQf+fv7Pz9/ViJd26fjZCroYCnmH2omMvb1RhgRUWCQUiGQjx5OEF9O1GSTQhePg00MlGOSU2KRVmaUVWWUV2eVf///////yH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDYuMC1jMDAyIDc5LjE2NDQ4OCwgMjAyMC8wNy8xMC0yMjowNjo1MyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIyLjAgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkM1REE4M0E5MjY5RjExRUNBOUUzRUJDNjI0NzBCOTdGIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkM1REE4M0FBMjY5RjExRUNBOUUzRUJDNjI0NzBCOTdGIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzVEQTgzQTcyNjlGMTFFQ0E5RTNFQkM2MjQ3MEI5N0YiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QzVEQTgzQTgyNjlGMTFFQ0E5RTNFQkM2MjQ3MEI5N0YiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr6uno5+bl5OPi4eDf3t3c29rZ2NfW1dTT0tHQz87NzMvKycjHxsXEw8LBwL++vby7urm4t7a1tLOysbCvrq2sq6qpqKempaSjoqGgn56dnJuamZiXlpWUk5KRkI+OjYyLiomIh4aFhIOCgYB/fn18e3p5eHd2dXRzcnFwb25tbGtqaWhnZmVkY2JhYF9eXVxbWllYV1ZVVFNSUVBPTk1MS0pJSEdGRURDQkFAPz49PDs6OTg3NjU0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"}},"time_used":70,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"receive":36,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.340Z","timestamp":1785159268340,"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/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.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://walmartfundholdings.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: 48264\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: Tue, 09 Sep 2025 19:08:31 GMT\r\ncontent-type: font/woff2\r\nage: 433449\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":48264,"size_decoded":49077,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48264, version 1.0","md5":"e401cae7a12911a5c9752dc7a62f9dd7","sha1":"5685dd613a8a8211bf60b4b10753a47587bd0b60","sha256":"b1bef1f03a77a36fc257c5525e32a1dd621bb6f935b743a419da7ed0b18dc8f5","sha512":"dc8b6f28bc048efb508b482199c958ffaeddf15431aad34544f5b9972fd8c19e0315f74499d5549b30e15a03e41bfaf2a30613b6889b9a693a9c87c4e872e1f3","ssdeep":"768:AWHBpvVWVHIgyYwXiDAOa6GWeFGaCfLBc/qiufIdQRuEl4ofxl8VKme:AWbEIgmi8uAFCfS/OfUYuRExl8VFe","tlshash":"1123f2e56c6a826bd88c882945ee21c1f3d7f4927713d149e8fa5df8c432c05ed5066b","first_seen":"2025-05-29T19:02:42.430777Z","last_seen":"2026-07-30T06:06:44.959375Z","times_seen":62401,"resource_available":false,"data":"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"}},"time_used":78,"timings":{"blocked":16,"dns":0,"connect":0,"send":0,"wait":23,"receive":39,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/5805.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.643Z","timestamp":1785159268643,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/5805.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 685\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 03:08:31 GMT\r\nlast-modified: Wed, 27 Apr 2022 07:39:01 GMT\r\netag: \"b9913f5599faab08d2addf87011c61e0\"\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 37558\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: -eN0LMSyFusP80uRRQFvyMfZEXVy-NpKoOwAjNjmnj-R2YjzR0AFBQ==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":685,"size_decoded":1163,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"b9913f5599faab08d2addf87011c61e0","sha1":"d9ae6e6a8ca0e50e02a991d032d9b9a461079f95","sha256":"68ba1605b3a54d7f827c22cc7252f01c6bf9412cfa6573be2c91fcd4b9e908cd","sha512":"7baea45f411fc30232bd93d04b8cf34414d333096ec669558ee6dd4a4a725785786f488b387e6c38654ba4fd3aecfda5526de2d949851796582c75214a42150f","ssdeep":"","tlshash":"8d01d8fb0957c025408f01f8224f7372d160c4eec9c7e20d89d9f7301862ad24c4524d","first_seen":"2023-05-15T13:26:32Z","last_seen":"2026-07-29T06:14:00.300791Z","times_seen":1738,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAACdElEQVR4Xu2bPU7DQBBGuRlrcwTugejgLCBElxZBAQeABiREDzX5awEJIpSAI2Elz9jZ3Zm1dw1Peo298+3MVImibG21xNTkB+MsX9hYnGV9cnAoqcyPFjauLe+LgonJT9locE1+xj46odJYy7Kf1mAjXcv+gsLLY5F9qsMLY5V9q8BLYpf9i2B4KnIOLxiampzHCYalKueyhkHa/sDn2nIuKxiiLeF7bTlfIywOIeH7EHLOWliobR08py3n/BUWhbAJntWW864xzrIHFmi7CZ7XdmTMJecu4WFtbWGdtpy7hAe1tYV12nLuJTykrSus15bz/+0F8KW2vjBH2/8FtLEAX6a7u5UsbYMvYPb0xLmsYVYIl8MPTb7PF1r6Mnt8rGSFcFT8AsWHWkpgVkijWwBzQhtkARKYFdqoFsCcNlRfgARmrfp+e7eYf3xUnktVXcDrYMCZrGHWqi9Hx9ZnXVVdgARmNeXyvUS1BUhglk0uz/na+QKYQ+vgOV9VFiCBWS65PO9j8VH4kA9d9YU5dBOfz8NKjZvZnvjLkARm+eSyzkXxt8G38wv2Yw2zVnWF9baKFyCBWZJc1tsqWoAEZmnkMsfGcgE+S/CFOdQX5mxybfg+LKCAWU1y/iU81OT79Q3vb4T1dfrCnCY5dwkP9lXOXTIx2RUP983Rdn7PuddgQd/kvL/Cor7IOWthYV/knI2wOHU5nxUMSVXOZQ2DUpVzOcGw1OQ8XjA0FTmHCIbHLvtXgZfEKvtWhxfGIvsMCi/vWvbXGmykbdlPJxR/YmRjwd3eOWEfUVBpVFneFy3fzc7ZvMA585NjZIz13+eLs6wPxRfcM7S6mfjOrgAAAABJRU5ErkJggg=="}},"time_used":30,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":30,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/8408.de534663e052075ba12f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.273Z","timestamp":1785159269273,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/8408.de534663e052075ba12f.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a338e19-274d\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 18 Jun 2026 06:20:09 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/18/2026 10:28:50\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a9209b94586edfdd44a9c7eb688025a6\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"]}],"data":{"size":10061,"size_decoded":2244,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (10061), with no line terminators","md5":"1a43de6a5db68cdffb5be29be8c611ea","sha1":"3cd66aa1e4e9e97cd58ad3ba8f6af15ad6c8fde1","sha256":"3f9db9383ecbe7095a61cb68292e437e948824de33abb3b09239c5effac91b84","sha512":"6735b9616b71290aa8fca75a177841e1cac8bb0193205099110ee83ffc75603098ead364960c2f7f86c7848f9fc3a784a56f615ecba08502e87028ebcc46eaa7","ssdeep":"192:zx9ZzZ8+bBPb+8b7XbnVb1pcGbM9zzZxZwG3TKO0/xavh42fmmw0TuUBJuHbRPuF:zxbl4zlvwG3GVxa2ruiUBsHdPunkS","tlshash":"62227526b95302617c2b5a3d0270affc6936cb939ac387dead10e1344fc75c9a297d85","first_seen":"2026-06-18T11:35:39.145966Z","last_seen":"2026-07-30T06:08:06.346134Z","times_seen":3442,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtUVpDcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLVFaQ3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LW1hcmtldC1zdGF0dXNfX2RvdHtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDo0cHh9LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXR7Y29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1tYXJrZXQtc3RhdHVzLS1wcmUtbWFya2V0IC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCl9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtbWFya2V0LXN0YXR1cy0tb3V0LW9mLXNlc3Npb257Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLW91dC1vZi1zZXNzaW9uIC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0taW52YWxpZHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1pbnZhbGlkIC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1yZXBsYXl7Y29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLXJlcGxheSAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXl7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXkgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1kZWxpc3RlZHtjb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWRhbmdlci1hY3RpdmUpfS50di1tYXJrZXQtc3RhdHVzLS1uaWdodHtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItc2VtaS1ib2xkKX0udHYtbWFya2V0LXN0YXR1cy0tbmlnaHQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpfS50di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbl9fd2l0aEljb257aGVpZ2h0OjE4cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7d2lkdGg6MThweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LW1hcmtldC1zdGF0dXMtLW91dC1vZi1zZXNzaW9uX193aXRoSWNvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLVFaQ3IpfX0udHYtbWFya2V0LXN0YXR1cy0tb3V0LW9mLXNlc3Npb25fX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbl9fd2l0aEljb24gLnR2LW1hcmtldC1zdGF0dXNfX2ljb257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1RWkNyKTtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4Oy13ZWJraXQtbWFzazp1cmwobWFya2V0LWNsb3NlLmQwMjVlODcxMDAxOTljMWJjN2FmLnN2Zyk7bWFzazp1cmwobWFya2V0LWNsb3NlLmQwMjVlODcxMDAxOTljMWJjN2FmLnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tcHJlLW1hcmtldF9fd2l0aEljb257aGVpZ2h0OjE4cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7d2lkdGg6MThweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApfX0udHYtbWFya2V0LXN0YXR1cy0tcHJlLW1hcmtldF9fd2l0aEljb246YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo2cHg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O29wYWNpdHk6MTUlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXRfX3dpdGhJY29uIC50di1tYXJrZXQtc3RhdHVzX19pY29ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtcHJlLjdkMzdkY2NhMjM0ODMzZDEyYzQzLnN2Zyk7bWFzazp1cmwobWFya2V0LXByZS43ZDM3ZGNjYTIzNDgzM2QxMmM0My5zdmcpOy13ZWJraXQtbWFzay1wb3NpdGlvbjpjZW50ZXI7bWFzay1wb3NpdGlvbjpjZW50ZXI7LXdlYmtpdC1tYXNrLXNpemU6Y292ZXI7bWFzay1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApfX0udHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXRfX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1wb3N0LW1hcmtldF9fd2l0aEljb24gLnR2LW1hcmtldC1zdGF0dXNfX2ljb257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDstd2Via2l0LW1hc2s6dXJsKG1hcmtldC1wb3N0LjlmMmM1YmZkYTk0MDVhMjkxZjkwLnN2Zyk7bWFzazp1cmwobWFya2V0LXBvc3QuOWYyYzViZmRhOTQwNWEyOTFmOTAuc3ZnKTstd2Via2l0LW1hc2stcG9zaXRpb246Y2VudGVyO21hc2stcG9zaXRpb246Y2VudGVyOy13ZWJraXQtbWFzay1zaXplOmNvdmVyO21hc2stc2l6ZTpjb3Zlcjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1ob2xpZGF5X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0taG9saWRheV9fd2l0aEljb246aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1RWkNyKX19LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXlfX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1ob2xpZGF5X193aXRoSWNvbiAudHYtbWFya2V0LXN0YXR1c19faWNvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLVFaQ3IpO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtaG9saWRheS40M2NhMzNkNjkwOTM5YjkzOTc4Ni5zdmcpO21hc2s6dXJsKG1hcmtldC1ob2xpZGF5LjQzY2EzM2Q2OTA5MzliOTM5Nzg2LnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWRfX3dpdGhJY29ue2hlaWdodDoxOHB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4O3dpZHRoOjE4cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1tYXJrZXQtc3RhdHVzLS1kZWxpc3RlZF9fd2l0aEljb246aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX19LnR2LW1hcmtldC1zdGF0dXMtLWRlbGlzdGVkX193aXRoSWNvbjphZnRlcntib3JkZXItcmFkaXVzOjZweDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7b3BhY2l0eToxNSU7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWRfX3dpdGhJY29uIC50di1tYXJrZXQtc3RhdHVzX19pY29ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItZGFuZ2VyLWFjdGl2ZSk7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDstd2Via2l0LW1hc2s6dXJsKGRlbGlzdGVkLW1vYmlsZS40ZDI2YTJkN2M0MzFkZmZlOTRlZC5zdmcpO21hc2s6dXJsKGRlbGlzdGVkLW1vYmlsZS40ZDI2YTJkN2M0MzFkZmZlOTRlZC5zdmcpOy13ZWJraXQtbWFzay1wb3NpdGlvbjpjZW50ZXI7bWFzay1wb3NpdGlvbjpjZW50ZXI7LXdlYmtpdC1tYXNrLXNpemU6Y292ZXI7bWFzay1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLW5pZ2h0X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0tbmlnaHRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZCl9fS50di1tYXJrZXQtc3RhdHVzLS1uaWdodF9fd2l0aEljb246YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo2cHg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O29wYWNpdHk6MTUlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLW5pZ2h0X193aXRoSWNvbiAudHYtbWFya2V0LXN0YXR1c19faWNvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtcG9zdC45ZjJjNWJmZGE5NDA1YTI5MWY5MC5zdmcpO21hc2s6dXJsKG1hcmtldC1wb3N0LjlmMmM1YmZkYTk0MDVhMjkxZjkwLnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0e2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6aW5saW5lLXN0YXJ0O21hcmdpbi1pbmxpbmUtZW5kOjB9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcHJlLW1hcmtldHtjb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcHJlLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLXBvc3QtbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1wb3N0LW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLW1hcmtldHtjb2xvcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1vdXQtb2Ytc2Vzc2lvbntjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1vdXQtb2Ytc2Vzc2lvbiAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0taW52YWxpZHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLWludmFsaWQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcmVwbGF5e2NvbG9yOnZhcigtLWNvbG9yLXJlcGxheS1kYXRhLW1vZGUpfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLXJlcGxheSAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0taG9saWRheXtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1ob2xpZGF5IC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1kZWxpc3RlZHtjb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1kZWxpc3RlZCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItZGFuZ2VyLWFjdGl2ZSl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tbmlnaHR7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tbmlnaHQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpfS50di1tYXJrZXQtc3RhdHVzLS1sb2FkaW5nLS1mb3ItY2hhcnR7Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1sb2FkaW5nLS1mb3ItY2hhcnQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXRpY2tlcnttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXdhdGNoLWxpc3R7bWFyZ2luOmF1dG8gM3B4fS50di1tYXJrZXQtc3RhdHVzLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXN0aWNreS1zeW1ib2wtaGVhZGVyLC50di1tYXJrZXQtc3RhdHVzLS1mb3ItdGlja2VyLXRhcGV7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDt0cmFuc2Zvcm06dHJhbnNsYXRlWCg0cHgpfS50di1tYXJrZXQtc3RhdHVzLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXI6ZGlyKHJ0bCksLnR2LW1hcmtldC1zdGF0dXMtLWZvci10aWNrZXItdGFwZTpkaXIocnRsKXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNHB4KX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTpmbGV4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4fS50di1tYXJrZXQtc3RhdHVzX19kb3QtLWZvci1jaGFydHtoZWlnaHQ6NnB4O21hcmdpbi1yaWdodDo0cHg7dmVydGljYWwtYWxpZ246MXB4O3dpZHRoOjZweH0udHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLWNhcmR7aGVpZ2h0OjZweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDo2cHh9LnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXdhdGNoLWxpc3R7bWFyZ2luLWJvdHRvbTozcHh9LnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1sYXN0e2hlaWdodDo2cHg7d2lkdGg6NnB4fS50di1tYXJrZXQtc3RhdHVzX19kb3QtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLXRhcGV7aGVpZ2h0OjRweDt3aWR0aDo0cHh9LnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItY2hhcnR7ZGlzcGxheTpibG9jaztmbG9hdDppbmxpbmUtZW5kO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWlubGluZS1lbmQ6MH0udHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci1jaGFydDpkaXIocnRsKXttYXJnaW4taW5saW5lLWVuZDo2cHh9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXIsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLC50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1jYXJkLC50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1oZWFkZXIsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLWxhc3QsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLXRhcGUsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3Itd2F0Y2gtbGlzdCwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXIsLnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItdGlja2VyLWNhcmQsLnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItdGlja2VyLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXItbGFzdCwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXItdGFwZSwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci13YXRjaC1saXN0e2Rpc3BsYXk6bm9uZX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0e21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4fS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQ6ZGlyKHJ0bCl7bWFyZ2luLWlubGluZS1zdGFydDowfS50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQtLWZvci1jaGFydHtkaXNwbGF5Om5vbmV9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldF9fd2l0aEljb257ZGlzcGxheTpub25lIWltcG9ydGFudH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQtLWZvci13YXRjaC1saXN0e21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQtLWZvci13YXRjaC1saXN0OmFmdGVye2Rpc3BsYXk6bm9uZX0="}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/product/2x/translate_24dp.png","fqdn":"www.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":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.513Z","timestamp":1785159269513,"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 /images/branding/product/2x/translate_24dp.png HTTP/1.1\r\nHost: www.gstatic.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://www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 1842\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 07:17:13 GMT\r\nexpires: Sat, 24 Jul 2027 07:17:13 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 14 Oct 2021 09:08:00 GMT\r\ncontent-type: image/png\r\nvary: Origin\r\nage: 281836\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":1842,"size_decoded":2516,"mime_type":"image/png","magic":"PNG image data, 48 x 48, 8-bit/color RGBA, non-interlaced","md5":"c69c796362406f9e11c7f4bf5bb628da","sha1":"e489ce95ab56208090868882113d7416abf46775","sha256":"4dac0026fbfa2615dce30c0af12830863fe885f84387a0147b9e338f548d5d82","sha512":"d3ad560ed0fd29be7d2cc434694f09e5a6fbea8b29c0611aecb54a1b73b4d722c53f42a19dae9e3d5d358444e50fb8fffbc39d67ce751bdbc8c861f6f95d3162","ssdeep":"","tlshash":"4e31f9fd129220437101ade72165eef798347c15f412da60ce65ba389c9fe20ed9a619","first_seen":"2023-04-05T07:39:29Z","last_seen":"2026-07-30T06:06:44.984836Z","times_seen":73051,"resource_available":false,"data":"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"}},"time_used":17,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/81809.146bc8abb60920a25d2f.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.273Z","timestamp":1785159269273,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/81809.146bc8abb60920a25d2f.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58aaad-3655\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:55:57 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:05:24\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: cf3513eac946e24a929c2b444245425e\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"]}],"data":{"size":13909,"size_decoded":3226,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (13909), with no line terminators","md5":"39f4345254ab6de1caff1143860495aa","sha1":"0eb72a69ce368974de136a49f4523a998f1ed695","sha256":"4c41271119eb699b24addac1d79a15df4f49fcc4c8cc29fddbe617efc088f987","sha512":"cb1eef480386dd5c8182cbf0aced6c37b6f9982e2083ae70bbb6f3d20dd108d153dc99d7921645f062eb24650e458be08ae130f684dfea610aee8feb6f2a7773","ssdeep":"192:1hjWhoQCBp67QX+XqVZKC4erpwU5H/NwsE+82yfzJh+SvpINI3I3IqIC:Sc/R","tlshash":"b352ec44eb3271ab741bb03d7399d4cba6596792d8074fbcb2b25102dbca2d36fa0d04","first_seen":"2026-07-17T06:00:43.352688Z","last_seen":"2026-07-28T04:59:54.485166Z","times_seen":297,"resource_available":false,"data":"LmNvbnRhaW5lci1GQVBXMlVOaHtjdXJzb3I6dmFyKC0tY3Jvc3MtdGFibGUtY3Vyc29yLWNlbGwscG9pbnRlcik7bWluLXdpZHRoOnZhcigtLWNyb3NzLXRhYmxlLW1pbi13aWR0aC1jZWxsLGF1dG8pO3BhZGRpbmc6dmFyKC0tY3Jvc3MtdGFibGUtcGFkZGluZy10ZC1jZWxsLDApO3dpZHRoOnZhcigtLWNyb3NzLXRhYmxlLXdpZHRoLWNlbGwsYXV0byl9LmNvbnRhaW5lci1GQVBXMlVOaDpkaXIocnRsKXtkaXJlY3Rpb246bHRyfS5jb250ZW50LUZBUFcyVU5oe2FsaWduLWl0ZW1zOmNlbnRlcjtib3R0b206MDtkaXNwbGF5OmZsZXg7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246dmFyKC0tY3Jvc3MtdGFibGUtcG9zaXRpb24tY2VsbC1jb250ZW50LGFic29sdXRlKTt0b3A6MH0uY29udGVudC1GQVBXMlVOaDpkaXIocnRsKXtkaXJlY3Rpb246bHRyfS50di1jcm9zcy10YWJsZS0tcG9zaXRpdmUteGx7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1iZy1jb2xvci1jZWxsLXBvc2l0aXZlLXhsLHZhcigtLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS14bCkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY3Jvc3MtdGFibGUtLXBvc2l0aXZlLXhsOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtYmctY29sb3ItY2VsbC1wb3NpdGl2ZS14bCwjMDAwMCl9fWh0bWwudGhlbWUtbGlnaHQgLnR2LWNyb3NzLXRhYmxlLS1wb3NpdGl2ZS14bHtjb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1tYXgtdmFsdWUtY29sb3IsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpe2h0bWwudGhlbWUtbGlnaHQgLnR2LWNyb3NzLXRhYmxlLS1wb3NpdGl2ZS14bDpob3Zlcntjb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1tYXgtdmFsdWUtY29sb3ItaG92ZXIsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5KSl9fS50di1jcm9zcy10YWJsZS0tcG9zaXRpdmUtbHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWJnLWNvbG9yLWNlbGwtcG9zaXRpdmUtbCx2YXIoLS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbCkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY3Jvc3MtdGFibGUtLXBvc2l0aXZlLWw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1iZy1jb2xvci1jZWxsLXBvc2l0aXZlLWwsIzAwMDApfX0udHYtY3Jvc3MtdGFibGUtLXBvc2l0aXZlLW17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1iZy1jb2xvci1jZWxsLXBvc2l0aXZlLW0sdmFyKC0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLW0pKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNyb3NzLXRhYmxlLS1wb3NpdGl2ZS1tOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtYmctY29sb3ItY2VsbC1wb3NpdGl2ZS1tLCMwMDAwKX19LnR2LWNyb3NzLXRhYmxlLS1wb3NpdGl2ZS1ze2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtYmctY29sb3ItY2VsbC1wb3NpdGl2ZS1zLHZhcigtLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1zKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jcm9zcy10YWJsZS0tcG9zaXRpdmUtczpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWJnLWNvbG9yLWNlbGwtcG9zaXRpdmUtcywjMDAwMCl9fS50di1jcm9zcy10YWJsZS0tbmV1dHJhbHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWJnLWNvbG9yLWNlbGwtbmV1dHJhbCx2YXIoLS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmV1dHJhbCkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY3Jvc3MtdGFibGUtLW5ldXRyYWw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1iZy1jb2xvci1jZWxsLW5ldXRyYWwsIzAwMDApfX0udHYtY3Jvc3MtdGFibGUtLW5lZ2F0aXZlLXN7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1iZy1jb2xvci1jZWxsLW5lZ2F0aXZlLXMsdmFyKC0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXMpKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNyb3NzLXRhYmxlLS1uZWdhdGl2ZS1zOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtYmctY29sb3ItY2VsbC1uZWdhdGl2ZS1zLCMwMDAwKX19LnR2LWNyb3NzLXRhYmxlLS1uZWdhdGl2ZS1te2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtYmctY29sb3ItY2VsbC1uZWdhdGl2ZS1tLHZhcigtLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1tKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jcm9zcy10YWJsZS0tbmVnYXRpdmUtbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWJnLWNvbG9yLWNlbGwtbmVnYXRpdmUtbSwjMDAwMCl9fS50di1jcm9zcy10YWJsZS0tbmVnYXRpdmUtbHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWJnLWNvbG9yLWNlbGwtbmVnYXRpdmUtbCx2YXIoLS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbCkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY3Jvc3MtdGFibGUtLW5lZ2F0aXZlLWw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1iZy1jb2xvci1jZWxsLW5lZ2F0aXZlLWwsIzAwMDApfX0udHYtY3Jvc3MtdGFibGUtLW5lZ2F0aXZlLXhse2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtYmctY29sb3ItY2VsbC1uZWdhdGl2ZS14bCx2YXIoLS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUteGwpKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNyb3NzLXRhYmxlLS1uZWdhdGl2ZS14bDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWJnLWNvbG9yLWNlbGwtbmVnYXRpdmUteGwsIzAwMDApfX1odG1sLnRoZW1lLWxpZ2h0IC50di1jcm9zcy10YWJsZS0tbmVnYXRpdmUteGx7Y29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtbWF4LXZhbHVlLWNvbG9yLHZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktaW52ZXJzZSkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXtodG1sLnRoZW1lLWxpZ2h0IC50di1jcm9zcy10YWJsZS0tbmVnYXRpdmUteGw6aG92ZXJ7Y29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtbWF4LXZhbHVlLWNvbG9yLWhvdmVyLHZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1oZWF2eSkpfX0udHYtY3Jvc3MtdGFibGUtLWVtcHR5e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNyb3NzLXRhYmxlLS1lbXB0eTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbCl9fS50YWJsZURhdGFDZWxsLXFlYzhRNDRLe2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowfS50YWJsZURhdGFDZWxsQ29udGVudC1xZWM4UTQ0S3thbGlnbi1pdGVtczpjZW50ZXI7Ym90dG9tOjA7ZGlzcGxheTpmbGV4O2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS5ncm93aW5nLXFlYzhRNDRLe2JhY2tncm91bmQtY29sb3I6cmdiKGZyb20gdmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCkgciBnIGIvLjE0KX1odG1sLnRoZW1lLWRhcmsgLmdyb3dpbmctcWVjOFE0NEt7YmFja2dyb3VuZC1jb2xvcjpyZ2IoZnJvbSB2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKSByIGcgYi8uMzQpfS5mYWxsaW5nLXFlYzhRNDRLe2JhY2tncm91bmQtY29sb3I6cmdiKGZyb20gdmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKSByIGcgYi8uMSl9aHRtbC50aGVtZS1kYXJrIC5mYWxsaW5nLXFlYzhRNDRLe2JhY2tncm91bmQtY29sb3I6cmdiKGZyb20gdmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKSByIGcgYi8uNTIpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuZmFsbGluZy1xZWM4UTQ0Szpob3ZlciwuZ3Jvd2luZy1xZWM4UTQ0Szpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYihmcm9tIHZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKSByIGcgYi8uMTQpfWh0bWwudGhlbWUtZGFyayAuZmFsbGluZy1xZWM4UTQ0Szpob3ZlcixodG1sLnRoZW1lLWRhcmsgLmdyb3dpbmctcWVjOFE0NEs6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2IoZnJvbSB2YXIoLS1jb2xvci10di1ibHVlLTUwMCkgciBnIGIvLjM0KX19QHN1cHBvcnRzIG5vdCAoYmFja2dyb3VuZDpyZ2IoZnJvbSAjMDAwIHIgZyBiKSl7Lmdyb3dpbmctcWVjOFE0NEt7YmFja2dyb3VuZC1jb2xvcjojMDg5OTUwMjR9aHRtbC50aGVtZS1kYXJrIC5ncm93aW5nLXFlYzhRNDRLe2JhY2tncm91bmQtY29sb3I6IzA4OTk1MDU3fS5mYWxsaW5nLXFlYzhRNDRLe2JhY2tncm91bmQtY29sb3I6I2YyMzY0NTFhfWh0bWwudGhlbWUtZGFyayAuZmFsbGluZy1xZWM4UTQ0S3tiYWNrZ3JvdW5kLWNvbG9yOiNmMjM2NDU4NX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmZhbGxpbmctcWVjOFE0NEs6aG92ZXIsLmdyb3dpbmctcWVjOFE0NEs6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMjk2MmZmMjR9aHRtbC50aGVtZS1kYXJrIC5mYWxsaW5nLXFlYzhRNDRLOmhvdmVyLGh0bWwudGhlbWUtZGFyayAuZ3Jvd2luZy1xZWM4UTQ0Szpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMyOTYyZmY1N319fS5ub0RhdGEtcWVjOFE0NEt7Y3Vyc29yOmRlZmF1bHR9LmN1cnJlbmN5QmxvY2stZFNzY2Y1cHp7YWxpZ24taXRlbXM6Y2VudGVyO2NvbHVtbi1nYXA6NnB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7aGVpZ2h0OjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6MTAwJX1bZGF0YS10aGVtZT1saWdodF17LS1fMC1PeDRFOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1PeDRFOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApfS5jb250YWluZXItZ1R4M1JaUG57LS1jcm9zcy10YWJsZS1jb2xvci1kaXZpZGVyOnZhcigtLWNvbG9yLWRpdmlkZXIpOy0tY3Jvc3MtdGFibGUtYm9yZGVyLXRhYmxlOnZhcigtLWNvbG9yLWJvcmRlci10YWJsZSk7Ym9yZGVyLWJvdHRvbTp2YXIoLS1jcm9zcy10YWJsZS1ib3JkZXItaGVpZ2h0LDFweCkgc29saWQgdmFyKC0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1jcm9zcy10YWJsZS1ib3JkZXItcmFkaXVzLG5vbmUpO2JvcmRlci10b3A6dmFyKC0tY3Jvc3MtdGFibGUtYm9yZGVyLWhlaWdodCwxcHgpIHNvbGlkIHZhcigtLWNyb3NzLXRhYmxlLWNvbG9yLWRpdmlkZXIpO2hlaWdodDoxMDAlO292ZXJmbG93OnZhcigtLWNyb3NzLXRhYmxlLW92ZXJmbG93LWNvbnRhaW5lcixhdXRvKTt3aWR0aDphdXRvfUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuY29udGFpbmVyLWdUeDNSWlBue2JvcmRlci1pbmxpbmUtZW5kOnZhcigtLWNyb3NzLXRhYmxlLWJvcmRlci1oZWlnaHQsMXB4KSBzb2xpZCB2YXIoLS1jcm9zcy10YWJsZS1jb2xvci1kaXZpZGVyKTtib3JkZXItaW5saW5lLXN0YXJ0OnZhcigtLWNyb3NzLXRhYmxlLWJvcmRlci1oZWlnaHQsMXB4KSBzb2xpZCB2YXIoLS1jcm9zcy10YWJsZS1jb2xvci1kaXZpZGVyKX19QHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6bm9uZSl7LmNvbnRhaW5lci1nVHgzUlpQbntzY3JvbGxiYXItY29sb3I6dmFyKC0tdHYtY29sb3Itc2Nyb2xsYmFyLXRodW1iLWJhY2tncm91bmQsdmFyKC0tY29sb3Itc2Nyb2xsLWJnKSkgIzAwMDA7c2Nyb2xsYmFyLXdpZHRoOnRoaW59fS5jb250YWluZXItZ1R4M1JaUG46Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo1cHg7d2lkdGg6NXB4fS5jb250YWluZXItZ1R4M1JaUG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXNjcm9sbGJhci10aHVtYi1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXNjcm9sbC1iZykpO2JvcmRlcjoxcHggc29saWQgIzAwMDA7Ym9yZGVyLXJhZGl1czozcHh9LmNvbnRhaW5lci1nVHgzUlpQbjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2JvcmRlci1yYWRpdXM6M3B4fS5jb250YWluZXItZ1R4M1JaUG46Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lcntkaXNwbGF5Om5vbmV9LmNvbnRhaW5lci1nVHgzUlpQbi53aWRnZXQtZ1R4M1JaUG57LS1jcm9zcy10YWJsZS1lbXB0eS1jZWxsOnJnYihmcm9tIHZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKSByIGcgYi8wLjA1KTstLWNyb3NzLXRhYmxlLWhvdmVyLWNvbG9yLWNlbGw6cmdiKGZyb20gdmFyKC0tY29sb3ItdHYtYmx1ZS01MDApIHIgZyBiLzAuMTQpOy0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlcjpyZ2IoZnJvbSB2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKSByIGcgYi8wLjEpOy0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlci1oYWxmOnJnYihmcm9tIHZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApIHIgZyBiLzAuMDUpOy0tY3Jvc3MtdGFibGUtYm9yZGVyLXRhYmxlOnZhcigtLWNyb3NzLXRhYmxlLWNvbG9yLWRpdmlkZXIpfWh0bWwudGhlbWUtZGFyayAuY29udGFpbmVyLWdUeDNSWlBuLndpZGdldC1nVHgzUlpQbnstLWNyb3NzLXRhYmxlLWVtcHR5LWNlbGw6cmdiKGZyb20gdmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCkgciBnIGIvMC4yOCk7LS1jcm9zcy10YWJsZS1ob3Zlci1jb2xvci1jZWxsOnJnYihmcm9tIHZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKSByIGcgYi8wLjM0KTstLWNyb3NzLXRhYmxlLWNvbG9yLWRpdmlkZXI6cmdiKGZyb20gdmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCkgciBnIGIvMC4zNyk7LS1jcm9zcy10YWJsZS1jb2xvci1kaXZpZGVyLWhhbGY6cmdiKGZyb20gdmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCkgciBnIGIvMC4xMyl9QHN1cHBvcnRzIG5vdCAoYmFja2dyb3VuZDpyZ2IoZnJvbSAjMDAwIHIgZyBiKSl7LmNvbnRhaW5lci1nVHgzUlpQbi53aWRnZXQtZ1R4M1JaUG57LS1jcm9zcy10YWJsZS1lbXB0eS1jZWxsOiMyOTYyZmYwZDstLWNyb3NzLXRhYmxlLWhvdmVyLWNvbG9yLWNlbGw6IzI5NjJmZjI0Oy0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlcjojNzg3Yjg2MWE7LS1jcm9zcy10YWJsZS1jb2xvci1kaXZpZGVyLWhhbGY6Izc4N2I4NjBkfWh0bWwudGhlbWUtZGFyayAuY29udGFpbmVyLWdUeDNSWlBuLndpZGdldC1nVHgzUlpQbnstLWNyb3NzLXRhYmxlLWVtcHR5LWNlbGw6Izc4N2I4NjQ3Oy0tY3Jvc3MtdGFibGUtaG92ZXItY29sb3ItY2VsbDojMjk2MmZmNTc7LS1jcm9zcy10YWJsZS1jb2xvci1kaXZpZGVyOiM3ODdiODY1ZTstLWNyb3NzLXRhYmxlLWNvbG9yLWRpdmlkZXItaGFsZjojNzg3Yjg2MjF9fS5jb250YWluZXItZ1R4M1JaUG4ud2lkZ2V0LWdUeDNSWlBuLmZvcmNlLWRlZmF1bHQtY29sb3JzLWdUeDNSWlBuey0tY3Jvc3MtdGFibGUtZW1wdHktY2VsbDp1bnNldDstLWNyb3NzLXRhYmxlLWhvdmVyLWNvbG9yLWNlbGw6dW5zZXQ7LS1jcm9zcy10YWJsZS1jb2xvci1kaXZpZGVyOnVuc2V0Oy0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlci1oYWxmOnVuc2V0Oy0tY3Jvc3MtdGFibGUtYm9yZGVyLXRhYmxlOnVuc2V0fSN3aWRnZXQtZm9yZXgtY3Jvc3MtcmF0ZXMtY29udGFpbmVyIC50di1jcm9zcy10YWJsZS0tZW1wdHl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1lbXB0eS1jZWxsKX0udGFibGUtZ1R4M1JaUG57YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13aWRnZXQtYmctY29sb3IsdmFyKC0tY29sb3ItYm9keS1iZykpO2JvcmRlci1jb2xsYXBzZTppbml0aWFsO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7aGVpZ2h0OjEwMCU7bWluLWhlaWdodDp2YXIoLS1jcm9zcy10YWJsZS1taW4taGVpZ2h0LDgwcHgpO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOnZhcigtLWNyb3NzLXRhYmxlLXdpZHRoLDEwMCUpfS50YWJsZS1nVHgzUlpQbiB0aDpmaXJzdC1jaGlsZCwudGFibGUtZ1R4M1JaUG4gdHI6Zmlyc3QtY2hpbGQgdGh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13aWRnZXQtYmctY29sb3IsdmFyKC0tY29sb3ItYm9keS1iZykpO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOnN0aWNreTt0b3A6MDt6LWluZGV4OjF9LnRhYmxlLWdUeDNSWlBuIHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxke3otaW5kZXg6Mn0udGFibGUtZ1R4M1JaUG4gdGh7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO3BhZGRpbmc6dmFyKC0tY3Jvc3MtdGFibGUtcGFkZGluZy10aC1jZWxsLDE2cHggMjBweCl9LnRhYmxlLWdUeDNSWlBuIHRkLC50YWJsZS1nVHgzUlpQbiB0aHtmb250LWZhbWlseTotYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxUcmVidWNoZXQgTVMsUm9ib3RvLFVidW50dSxzYW5zLXNlcmlmOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE2cHg7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoyNHB4O2xpbmUtaGVpZ2h0OnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0KX0udGFibGUtZ1R4M1JaUG4gdGR7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJ0bnVtIiBvbiwibG51bSIgb247Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO3BhZGRpbmc6dmFyKC0tY3Jvc3MtdGFibGUtcGFkZGluZy10ZC1jZWxsLDE2cHggMjBweCl9LnRhYmxlLWdUeDNSWlBuIHRkLC50YWJsZS1nVHgzUlpQbiB0aHttaW4td2lkdGg6dmFyKC0tY3Jvc3MtdGFibGUtbWluLXdpZHRoLDk0cHgpO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtYWxpZ246Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXR9LnRhYmxlLWdUeDNSWlBuIHRkOmVtcHR5e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtZW1wdHktY2VsbCx2YXIoLS1fMC1PeDRFKSl9LnRhYmxlLWdUeDNSWlBuLnByZXZlbnRBbmltYXRpb24tZ1R4M1JaUG4gdGQsLnRhYmxlLWdUeDNSWlBuLnByZXZlbnRBbmltYXRpb24tZ1R4M1JaUG4gdGh7dHJhbnNpdGlvbjpub25lfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudGFibGUtZ1R4M1JaUG4gLnRhYmxlQm9keVJvdy1nVHgzUlpQbiB0cjpub3QoOmZpcnN0LWNoaWxkKSB0ZDpob3Zlcjpub3QodGQ6ZW1wdHkpLC50YWJsZS1nVHgzUlpQbiAudGFibGVCb2R5Um93LWdUeDNSWlBuIHRyOm5vdCg6Zmlyc3QtY2hpbGQpOmhvdmVyIHRoOm5vdCg6aG92ZXIpe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtaG92ZXItY29sb3ItY2VsbCx2YXIoLS1jb2xvci1pdGVtLXNlbGVjdGVkLWJsdWUpKX19LnRhYmxlLWdUeDNSWlBuIC50YWJsZUJvZHlSb3ctZ1R4M1JaUG4gdHI6bm90KDpsYXN0LWNoaWxkKSB0ZCwudGFibGUtZ1R4M1JaUG4gLnRhYmxlQm9keVJvdy1nVHgzUlpQbiB0cjpub3QoOmxhc3QtY2hpbGQpIHRoe2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWNyb3NzLXRhYmxlLWNvbG9yLWRpdmlkZXIpfS50YWJsZS1nVHgzUlpQbiAudGFibGVCb2R5Um93LWdUeDNSWlBuIHRkOm5vdCg6bGFzdC1jaGlsZCksLnRhYmxlLWdUeDNSWlBuIC50YWJsZUJvZHlSb3ctZ1R4M1JaUG4gdGg6bm90KDpsYXN0LWNoaWxkKXtib3JkZXItaW5saW5lLWVuZDoxcHggc29saWQgdmFyKC0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlcil9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey50YWJsZS1nVHgzUlpQbiB0cjpmaXJzdC1jaGlsZCB0aC50YWJsZUhlYWRlckNlbGxIb3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWhvdmVyLWNvbG9yLWNlbGwsdmFyKC0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlKSl9fS50YWJsZS1nVHgzUlpQbjpkaXIocnRsKSB0aDpmaXJzdC1jaGlsZCwudGFibGUtZ1R4M1JaUG46ZGlyKHJ0bCkgdHI6Zmlyc3QtY2hpbGQgdGh7cG9zaXRpb246dmFyKC0tY3Jvc3MtdGFibGUtaGVhZGVyLXBvc2l0aW9uLGluaXRpYWwpfS5jb250YWluZXItZ1R4M1JaUG4ud2lkZ2V0LWdUeDNSWlBuIC50YWJsZS1nVHgzUlpQbiB0ZDplbXB0eXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWVtcHR5LWNlbGwsdmFyKC0tXzAtT3g0RSkpO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlci1oYWxmLHZhcigtLWNvbG9yLWRpdmlkZXIpKSFpbXBvcnRhbnQ7Ym9yZGVyLWlubGluZS1lbmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtY29sb3ItZGl2aWRlci1oYWxmLHZhcigtLWNvbG9yLWRpdmlkZXIpKSFpbXBvcnRhbnR9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5jb250YWluZXItZ1R4M1JaUG4ud2lkZ2V0LWdUeDNSWlBuIC50YWJsZS1nVHgzUlpQbiAudGFibGVCb2R5Um93LWdUeDNSWlBuIHRyOm5vdCg6Zmlyc3QtY2hpbGQpIHRkOmhvdmVyOm5vdCh0ZDplbXB0eSkgc3BhbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWhvdmVyLWNvbG9yLWNlbGwsdmFyKC0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlKSl9LmNvbnRhaW5lci1nVHgzUlpQbi53aWRnZXQtZ1R4M1JaUG4gLnRhYmxlLWdUeDNSWlBuIC50YWJsZUJvZHlSb3ctZ1R4M1JaUG4gdHI6bm90KDpmaXJzdC1jaGlsZCkgdGQ6aG92ZXI6bm90KHRkOmVtcHR5KTpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13aWRnZXQtYmctY29sb3IsdmFyKC0tY29sb3ItYm9keS1iZykpO2NvbnRlbnQ6IiI7aW5zZXQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0uY29udGFpbmVyLWdUeDNSWlBuLndpZGdldC1nVHgzUlpQbiAudGFibGUtZ1R4M1JaUG4gLnRhYmxlQm9keVJvdy1nVHgzUlpQbiB0cjpub3QoOmZpcnN0LWNoaWxkKTpob3ZlciB0aDpub3QoOmhvdmVyKSBzcGFue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtaG92ZXItY29sb3ItY2VsbCx2YXIoLS1jb2xvci1pdGVtLXNlbGVjdGVkLWJsdWUpKX0uY29udGFpbmVyLWdUeDNSWlBuLndpZGdldC1nVHgzUlpQbiAudGFibGUtZ1R4M1JaUG4gLnRhYmxlQm9keVJvdy1nVHgzUlpQbiB0cjpub3QoOmZpcnN0LWNoaWxkKTpob3ZlciB0aDpub3QoOmhvdmVyKTpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13aWRnZXQtYmctY29sb3IsdmFyKC0tY29sb3ItYm9keS1iZykpO2NvbnRlbnQ6IiI7aW5zZXQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0uY29udGFpbmVyLWdUeDNSWlBuLndpZGdldC1nVHgzUlpQbiAudGFibGUtZ1R4M1JaUG4gdHI6bm90KDpmaXJzdC1jaGlsZCkgdGQ6aG92ZXI6bm90KHRkOmVtcHR5KSBzcGFue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY3Jvc3MtdGFibGUtaG92ZXItY29sb3ItY2VsbCx2YXIoLS1jb2xvci1pdGVtLXNlbGVjdGVkLWJsdWUpKX0uY29udGFpbmVyLWdUeDNSWlBuLndpZGdldC1nVHgzUlpQbiAudGFibGUtZ1R4M1JaUG4gdHI6bm90KDpmaXJzdC1jaGlsZCkgdGQ6aG92ZXI6bm90KHRkOmVtcHR5KTpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13aWRnZXQtYmctY29sb3IsdmFyKC0tY29sb3ItYm9keS1iZykpO2NvbnRlbnQ6IiI7aW5zZXQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0uY29udGFpbmVyLWdUeDNSWlBuLndpZGdldC1nVHgzUlpQbiAudGFibGUtZ1R4M1JaUG4gdHI6bm90KDpmaXJzdC1jaGlsZCk6aG92ZXIgdGg6bm90KDpob3Zlcikgc3BhbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNyb3NzLXRhYmxlLWhvdmVyLWNvbG9yLWNlbGwsdmFyKC0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlKSl9LmNvbnRhaW5lci1nVHgzUlpQbi53aWRnZXQtZ1R4M1JaUG4gLnRhYmxlLWdUeDNSWlBuIHRyOm5vdCg6Zmlyc3QtY2hpbGQpOmhvdmVyIHRoOm5vdCg6aG92ZXIpOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXdpZGdldC1iZy1jb2xvcix2YXIoLS1jb2xvci1ib2R5LWJnKSk7Y29udGVudDoiIjtpbnNldDowO3Bvc2l0aW9uOmFic29sdXRlfX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmNvbnRhaW5lci1nVHgzUlpQbi53aWRnZXQtZ1R4M1JaUG4gLnRhYmxlLWdUeDNSWlBuIHRyOmZpcnN0LWNoaWxkIHRoLnRhYmxlSGVhZGVyQ2VsbEhvdmVye2JhY2tncm91bmQtY29sb3I6aW5oZXJpdH19LmNvbnRhaW5lci1nVHgzUlpQbi53aWRnZXQtZ1R4M1JaUG4gLnRhYmxlLWdUeDNSWlBuIHRyOmZpcnN0LWNoaWxkIHRoLnRhYmxlSGVhZGVyQ2VsbEhvdmVyIHNwYW57YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jcm9zcy10YWJsZS1ob3Zlci1jb2xvci1jZWxsLHZhcigtLWNvbG9yLWl0ZW0tc2VsZWN0ZWQtYmx1ZSkpfS5jb250YWluZXItZ1R4M1JaUG4ud2lkZ2V0LWdUeDNSWlBuIC50YWJsZS1nVHgzUlpQbiB0cjpmaXJzdC1jaGlsZCB0aC50YWJsZUhlYWRlckNlbGxIb3ZlcjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS13aWRnZXQtYmctY29sb3IsdmFyKC0tY29sb3ItYm9keS1iZykpO2NvbnRlbnQ6IiI7aW5zZXQ6MDtwb3NpdGlvbjphYnNvbHV0ZX0jd2lkZ2V0LWZvcmV4LWNyb3NzLXJhdGVzLWNvbnRhaW5lcntoZWlnaHQ6MTAwJTstLWNyb3NzLXRhYmxlLW92ZXJmbG93LWNvbnRhaW5lcjphdXRvOy0tY3Jvc3MtdGFibGUtYm9yZGVyLWhlaWdodDowOy0tY3Jvc3MtdGFibGUtYm9yZGVyLXJhZGl1czowOy0tY3Jvc3MtdGFibGUtbWluLXdpZHRoOjc1cHg7LS1jcm9zcy10YWJsZS1wYWRkaW5nLXRkLWNlbGw6MDstLWNyb3NzLXRhYmxlLXBhZGRpbmctdGgtY2VsbDowfSN3aWRnZXQtZm9yZXgtY3Jvc3MtcmF0ZXMtY29udGFpbmVyIHRoe2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoidG51bSIgb24sImxudW0iIG9uOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MTZweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo2MDB9I3dpZGdldC1mb3JleC1jcm9zcy1yYXRlcy1jb250YWluZXIgdGQsI3dpZGdldC1mb3JleC1jcm9zcy1yYXRlcy1jb250YWluZXIgdGh7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTJweH0jd2lkZ2V0LWZvcmV4LWNyb3NzLXJhdGVzLWNvbnRhaW5lciB0ZHtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7LS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodDoxNnB4fSN3aWRnZXQtZm9yZXgtY3Jvc3MtcmF0ZXMtY29udGFpbmVyIHRoZWFke2Rpc3BsYXk6dGFibGUtcm93LWdyb3VwfQ=="}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"bootstrap.smartsuppchat.com/widget/2cb2e88e9c3b9f97f41856d9cadf1163e18d163c.json","fqdn":"bootstrap.smartsuppchat.com","domain":"smartsuppchat.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:31.634Z","timestamp":1785159271634,"http_version":"","security_state":"","security_info":null,"request":{"raw":"GET /widget/2cb2e88e9c3b9f97f41856d9cadf1163e18d163c.json HTTP/1.1\r\nHost: bootstrap.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\nContent-Type: text/plain\r\nOrigin: https://walmartfundholdings.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://walmartfundholdings.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: 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-07-30T06:24:56.209576Z","times_seen":17611926,"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/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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.320Z","timestamp":1785159268320,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 4137624\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 13:34:28 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=lYcKxqkHfeUzww4rQzLDYQLGObgx0F3mGor9GptpWx5tXrpLzgOHugNOOv3fMERZvBnrdElrGnh2joO%2FllM2G2F6KTLP5jDeE48dmSG0qFtdNW2N5IB1nKns1Tdt\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0593094856a3-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":7478,"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-07-30T06:07:43.527233Z","times_seen":1720,"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":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/footer-bg.jpg","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.440Z","timestamp":1785159268440,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/footer-bg.jpg HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"46bb-66136805-2b17a7e262cdb082;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 18107\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":18107,"size_decoded":18435,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 1349x306, components 3","md5":"8820980b3cb5a19c89a8279ff9adcde5","sha1":"e9f91dd18492208a225539504dc61ee50f61492e","sha256":"8bc0a8247d39f029ec146ea13def6266f56d187ed09581b3ceba5d1fceb60270","sha512":"6139d7ff2ec00452d8f26c04d93803631bbd01537f0fdbe34e9c6a43390fd1d82280ccfa7b453dbde58fb4a302f12eb640a72b16dd39385024bee8dc6a676ba0","ssdeep":"384:jefNuI1X5XrIRnxRi4gNgssJCLwxOd3RIZL+ySAH7iaGpNA5S4naZuml:jsfXR0RxkgDwLwxOzIZJknpNSS4naZf","tlshash":"eb82bf63ef11a743c49f7c335bf2182d73a917aac282c9d2fb7a04211d929374c156e9","first_seen":"2026-07-27T07:08:39.360263Z","last_seen":"2026-07-27T13:35:41.61868Z","times_seen":3,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjVFNUFDQkM2MUI5RDExRUNBNDJDQjI2NTZFQjcwMjA1IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjVFNUFDQkM3MUI5RDExRUNBNDJDQjI2NTZFQjcwMjA1Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NUU1QUNCQzQxQjlEMTFFQ0E0MkNCMjY1NkVCNzAyMDUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NUU1QUNCQzUxQjlEMTFFQ0E0MkNCMjY1NkVCNzAyMDUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAGBAQEBQQGBQUGCQYFBgkLCAYGCAsMCgoLCgoMEAwMDAwMDBAMDg8QDw4MExMUFBMTHBsbGxwfHx8fHx8fHx8fAQcHBw0MDRgQEBgaFREVGh8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx//wAARCAEyBUUDAREAAhEBAxEB/8QAkQABAQEBAQEBAAAAAAAAAAAAAAECAwQFBgEBAQEBAQEAAAAAAAAAAAAAAAECAwQFEAEAAQMBBQYEBAUDBAMBAAAAARECAzEhcTIzBEFRgbEScmHBIjRCghNDkaEjcxTwRAVSssIk0WKDkhEBAQACAgIBBQADAQADAAAAAAExAhEDQTIEIXGBEkKRIjMTYcFD/9oADAMBAAIRAxEAPwD8FD574Cg1ZCVY7xbFHPl04cskRDcZ2jm0woAAAAKIACgAigACqIAAoEagoAALAAAKCgAAsCAAArMioKAqIKKCgCKKoigoKIoAjQCiwDQgDVNoiwCgsKiiKCwIuwFgGoEXYqLFAa2CLSAWKdwi7O5BdncIsU7kGtncIUjuBaR3AtI7g5IiO5DlaR3KnJSO5FWkdwnJSO4OSkdyrytI7kQpHcobO4U2dwGzugDZ3ATEUj4iooHCrbrO6UozsVQCv+qCpXd/BBABTwgDZ3IqACpsA2CgIgAbBSQQBFKKAogAUkCkgCoCgm0BFXsBAAAAAIFUHTHqMV6LWnKt1EKoFQVQAQAUCqhVAqCgAKLANdiMuV43HKUdBQQAAAAVQQAAAAUAAH4iG3RQas1StR6LdHKukcsjpqxs5NMAKAAAAIoAoAIoAAqiAAKBGoKAACwAAACgAoECKAAKzIqCgKiLCgCgCKK0IAoKIqhCI0CqECNAA1XaIsAoLCooigsCLAKDQiqiwDQgo1CIqCqiwgoKIqCgAoixqLAQAFUAEBQSoCqTOyPgCACrbr4SUZFABUQABUFEEFAAQUABEFFQAAUBAVFAQAAUAAARVrsoIVkVKyAAACxPwAB0s1VmvRarlWqiFUCoqwqCAKAogoVRSoKIACrCo12IjneNxylG0UVAAAAAhRUAAAAAFAB+Iht0Abs1StR6LdHKukcsjpqxs5NMAAAKAAIAooAIoAAqiAAKBGoKAACgAAAoAKCwICggKzIqCgKIsAAoKICtCALAKIqgiNKKBAjQANdoiwCgsKiiKCwCiKDQiqiwCiKCwI0ACwiKCgoioEAoLGoAAKAAAqgH4fFBFFnSPiKgALZxeEoMK0IAAqACiACCgAIigAIKoIAAiiiIAqggAAoAAAir2AgAAAAEAoOlmqs13tVzrVURaglQWqggAAoAAFQWoFQKgsA12DLneNxylGxQFVEAAAIBQAAAQFAAFfiYbbAbs1StR6LdHKukcsjerGzk2wAAAAAogKoAAAigCgKIAoEAoAAKAAACgAAsAoAgKzIqCgKiLCgCgogK0IAsAoiqCI0CqECNICjQigQCwqNCANQCiKCiKqLANIKqLAKIoLAKgCKCgAojVuqVUEFAVQAKgAfhneCKqzKCACrZxfxQrCqqAKTbdERMxSJ0lOZhbKioIqAACgIigAIAKoIAKICiIoAAKCAoAAgCgAAAAChCCit2DFd7WnOtogABUCoLUUAEAUVAWoFQKgsCNdgjneNRzlGxQFEQAABYAFAAAAUQFAfiYltsqDdmqVqPRbo5V0jllb1Z2cZbc1AAABdgGwAAFA2AviICgALQRQAI1FXtEKAAoAAAKAACwCgAAzIqCgKIsAAoKICtCALAKIqgiNAqgDSIKNdohALALAigqjUCKIsAoigsAoiqiwCgoiwCgA0IIoIoNW8RRAAUAAAUBfwTvBmJBZ0gVAAaxxMzWmzb5IViYmNYoKACuuT7fF4uGnvs7b+kcXZxBQUBABRBAUEAFAAQVUEFAAABQQFAAEBVXsQQAAAACAUVuwZrvarnWhAAAFqBUAAAFAFKiAALAN9gy53jcc5RpBVAAAAAhRUAAAAFEBQH4iG21Fas1SrHpt0cq6Ryyt6s7OLbCiAAAAKAAACgAAoAKIAAooIAoKAAACgAAsSC1AqADMioKtfgAiKoA1sA2CKCgCLFAa2AACNRQF2d6gI0gQo1EfERYgAFgRqIkFpILSVQEUGtogCwDQhVRYBpEFFgRUFUUBBYBVRbOJKp3iAAoAAAC/gnfCCKoCIArth4Z3pWaxm4/BV1YGkB2v8Atse+XDX/AKbO23pHF2cgAVABQCUEAAFQFAFQBAFAABQAAAUEEUAAAAAAUIQUVuwZrtarnWhAAUEUAUAAEUUAqBUAGoEa7BHO8ajEo2gAKAAABCioAAAAAKAD8RDbaitWapVj026OVdI5ZG9WdnGW3NQAAAAUAAAFgAAFAABRAVY1A7RAFABQAAUAAFgAFABmRUFAVEVQBQUQFaEAWBFBQBGgFFBURVGu0QBQWBFBQWFRRFBqs94FZ7xFBQWJmBGoukCoOmLSSs1ntFWvwgCvwBu+300/+0RP8WddueV2144ZaRYkRax3A1ZT1QUqTrIAFY+ILs+IIAKuzvQb/T+mkTrSTlnlz0mYVpZ0jxRUA8QdsPDO9Kzsxn443C6s2Wxd6q9lszDO144+7pprzyzSWkdb4n/Gx75cdf8Apfs67ekcXZyBTaAAigIAKAgAKiooAIAoAAKAAICqCCKKL2IIAAAABAKK1YM12tVzrQAAALUCoAAKAKAVRCqhUGoBrsGWLkajnI2KAKgAAAQCgAAgAKAAD8TDbooNWapVj026OVdI5ZG9WdnFthRAAAAFAAAABQAUAAAFAgFAEUAFAABQAAWAAUEBJFQUBURVAFBRFFUQEWBVEUARoBRQWERVFEUFBYEUFBYVFABoRRAGgAWBFB1w6SlZrHbKqoAOub9v2Q5dXn7unZ4+zDq5gKI1ZxQUqTrO8AUAqCzExFf9bURFUB6LeGNzLDhPFO9W4goBAO2DSd6VNmM/HG4XUxfj9ksb+Pu69fn7ObbDrd9tZ7pcZ/0v2dr6RydnEFAEEFAKgVkUqCAAtUVKqACBX4CngAAKbANgCCKq7PiICgCBs7wNneAABQFiBQGrRmu1qsVraIgAqiAFRSoKAABUCqBVQqDUCNdgjFyNRgaFBBQAQAFAAAAABQAAfiYbdFBqzVKsei3RyrpHPI3qzs4tsKIAAAAoAAAAKACgAAAoEagoAAKCiAAKAACwACggJKKiqAqIqgCgoigoAiwKoigCNAKKCwiKovaIoKCwCiANQIKKDQgCwCiKCwCiOuHSUrOzE6yqgoI65dMfshy6vP3dezx9mHVzBFBqsxbbSaaoFa2VnWuoiKoBVBu7h/gJGFaEHpt4Y3I5157uK7erpCZ2R8BUAB3waXb0Z2Y6jjjcLqYvx+yWN/H3devz9mLOO3fHm1tiprmOtt905/RM1t9U/TOjjdZNOZnh1m1u/Fxy4O7gCiAKAAAgqggACKKIgooAAAiigCACqiAqKNdiCAAAAAQKoNWjNdYViqCggLUCoFQAWsgVAFAWqIVAqqrAlbrsGWLkajA0ACggABsAgFAAAABQAAfiYbdFBqzVKseizRyrpHPI3qzs4tsKIAAAAoAAAAKACgAAAoEAoAALAAigAoAALAAAAJIqCgKiKoAoKIoKAIsCqIoEA0IAqiwiKooKIAsAoigsAoigoiqEA0iCiwCg64O1GdmJ1lVAAdsumP2w5dedvu6dnj7Obq5iCqjU8FvigRwTv+QeUFKgA6XcHhaMxzGlB6bOGNyMV57uO7ercTs3itY9bvbIlZjQV26fS7ejOzPUccbhdExa3e27yc+zx947dfn7M28Vu+G9sVnXLpb91+eXK/8AP8Ok/wCn5cXVyFUQAAAQUAABBVQAQFFQAAAUBQQUBUQVUBUABQQAAIFUGrRmukKyoiioCiFRSoAKgKACC1BKgtVFgG+wZYuRYwNAoCiAAAEAoAAAoAIooD8ZbjmWrXSatfo3J+y/qtuK6JS7E1drbZiGLXSRjJbLWtZ2jjNlzfLHB6ZOU4SioAAAoAAAAKACgAAAoEagoAAKAIoAKAACwAAACSioqgKiKoAoigoKACwCiALANCAKosIKqLWsgqIKLAKIoLAKIA0AqLCCgqiwiLbbdOkVDl1w23RWsUGdmJifVOxVgiijrl4cft+bl152+7e+J9nN0YBFUangt8UCOXO8PKAAoN3cvwtE8sDQD02cFu5HOvPdx3b1bhM7I+CK3jsvis02TE0EtYpdGsUFdun0u8BndnqeKNwujWDDddbN0TFJibaeDz9vZJeHq6uu2cuV1s2ZPTOsTDtNptOY5XXi8VuPuvz/ADc7/wA/w6f/AKflynV1cXTp4ic1sTFY7p3Ofbf9a69U/wBo5zxTvdJhi5QQFAAAABUQUEAFAAAAEUUABQFREVRBewABQQAAIFUFtErpCsNAAAAAVQKiqIKCKAtQKgKLAlbjQZZuRqMDQACiAAoICgAAAAKAAD8piozs9GrtEQ5trSBSgJ6YXlOE9EHJwl1kUWVmx574dY51zaYAKAoAAALQCgAKBALQCkiApGoKAACwAAIoKAACwAAACSKgqwAiKoAoigoqiAiwKogCg0IAoKCqi9oCCqLAigoLAgCgoigQDQgCwDtg1kY2dkZUHlnWVdHTp7bb8kW3RWKS5d21mvMdOrWXbivVkwY5t7fpjZteXTu2l+7079U4eJ73iWAKiNTwW75Dyscud8B5ZFAUHS7l+FvnIz5cxoQerHwW7hzuXnv5l28dJhJ0j4ivVj4Ld0DlcuXUa2+I1ovTfi8A3TqeK3cLo79JyvGXi+R7Pf8AH9XDqOfPg79Po49vun+6/P8AM/8Az/B/f5c51l1jlW+n51m9z7vSunV7Ri7iu3y3MMbZRUBQAERVVERRRUEFAAAAAEUUABRBQRQQXsqAoAIAAECgNWiVuFZaqIIoAoAtUCoACggAtQAAWArcaDLNwsZGgAAAAACAUAAAAFAAB+UxM7PRq7w5ugAAACXaLGa82R11ctnJtgABQAAAAUAFAABRAUgFArIFZBQABFrILUAAFgFqACAiKV+CqRMdyCiChANbO4Q2AoKBsBdgLsEAWAa2CGzvBQUAGvFUWnxQFFgRYgFoCiALALSRFpPcACiKCxUHXp9ZGdncYWEHlu4p3q6R06Wf60bpce/0duj2e27hndLw65j2bYfPfUfNAUGp4Ld8h5I5d2+BPKCgN1mMdtNm2UTynru3/CVXgmnoiaRE1ps3AiD1YuXbuHO5efJzLt46TDMzs3CvVj5du4crlz6nW3xG9F6b8XgG6dVxW7pDR26TlTveL5Hs9/x/Vw6nnz4O/T6OPd7E/dfn+ZP+f4L/ANPy5XcU75dJhzuXpxdNdbfZf6omNXm7O6WWPT19NllYydPkj1XzT01rq6adut4jnv1Wc1xdnFBVBAEUAAUEAUAAAFBBFFAAUBQQBBa7KAigCooICgANQJW4VlagVQAFCqC1FQFEAKilQWoAALAlbgRJFjIoAAAAABAKAAAAACgA/KYmdno1doc3RQAAAS7RYzXmyOurls5NsAAKAAAACgAoAAAKBGoKAACwAAIoKAACwCgAgJKKiqqCiCgCgogK0IAA0IAoKCiEA0AC9oigoEKigoLAigAoigAoLUFiZ7xHbp5+qdwzs7jCwiPLdM+qdvarrHTppn9aPFx7/Su3T7PbdwzueGZey4fOfUfOWJlBayqLM/07d8h5I5d2+EPKKLX4QK1M/wBO3Z2yieWBW/2o93yE8s1juFerFy7dw5bZefJzLt46TCTpHxGnqxcu3cOO2XPqKfT4jWh01K3eAu6dVrb4ho7dHy53/J4vkez3/H9XHqqfrTuh36PVx7/Yup/lfmgnp+F29/y5X8V2+XTXEctsvoWcFu6Hz9s19HTETPyb9zXV7Rnt9a+fs73veAAAQBQAACgoCAoFJFKSAAgbVAAUQFABBewEUEAVQBAUBYEbhUVEBQBRaoAAAAApUFEAAWAbjQZSRYyKAAoAAAAAAAAAKACg/KYmdno1doc3RQAAAS7RYzXmyOurls5NsAAKAAAACgAoAAAKBAKAACwAAIsAoAALAKCAAiKiqqCiCgCiKAK0IAA0IAoKCiANAAoigAsAogDUKAigoAiwCoCiwDt0/FO4Y3egYWER5LuKd6u0dOm51vj5OPf6V16fZ7Z0nc8My9tw+c+o+aoANTy43yJ5W3l3b4QuWRRRueXbvlE8sitftfm+QnlkV68PKt3Dltl58vNu3jprhmo09WHlW7hy2yx1P4fEXROl4rt0C7nVa2+IaOvR8u7f8nj+R7R7/j4cer507oduj1cu/wBi/wC5/NBr6fg29/y538d2+fN01xHPbNfQx8u3dHk+fvmvoaYiZuTfuXr9oz2etfPfQeBBVQAQFBAAUVAAUEFUABAUAEUBayoVlBAUCsgVkEFUCoESACwI1E/BUWqAAC1gCoAoBsA2AVAqCgAAsBW40GSQZFAAUEBQAIgUAAAAEUAAV+Vws7O+rtDm6KAAACXaLGa82R11c9nJtzAAUAAAAFABQAAAUCNQXtAABQAAURQAAWAUAEBEUFBFAUAaRBRQUAAGhAFBQUQBYBQWdRFABYBRAFgFEVRUBRYBUQUWAdun453Ixu9CsEIjy3cc71do300/1rfHycu70rr0+0e6dJeCPdXzn1HzCEFUanlx7p8kPJby7/AS5QUFanlR7p8hnyyNNxyp93yE8sivXh5Vu4cdsvPl5tw664ZnSPEV6sPKt3DltljqtLfEa606Xiu3QLudX+HxE63To5+i7e8fyMx7/j4cur5vhDr8f1cu/wBkv+58Y+S6+hv7sZOO7fPm3riOe+a9+Ll2bo8nh39q+hp6wzcq/dJ1+0Ts9a+c+g+eIooIAAAoAAAAAKAqAAoAIoAoIAL2eIIAKAoIBAKCwCwIogKAVBagAAAAVFAUAAFgRuBkkVABQAAAAGoQJBFAAAARRQH5TEzs76u8ObooAAAJdosZrzZHXVy2cpbYAAUAAAAFABQAAAUCAUAAFAABRFAABYBQQAERQUBRBRQVEFFFUQABoQBQUAFEWAUAFEUFgAFBYEUAFEVQQUBUWAdun453Izvh6VcyER5L+Kd47Rvp+db/AK7HPu9K69PtHu7Hz3ufOfUfNAURueVHunyDyW8u/wAPMLlkUBv9qPd8hPLIrUcqfdHkJ5ZFevByrRx2y8+bm3DrrhlFevByrdyuW2WOq0t3yNdbPS8d24XfC9X+DxE63To+C7e8fyMx7/j4rl1fN8Idfj+rn3+zOT7jxt8oa09P8pv7s5eZf7p82tMRjfNe7DyrN0PDv7V7uv1i5eVfuk09odnrXznvfPBQAAAAUAAAAFAAEFAUAEUAAAFBAAUBQQCAUCAURQABSoi1AqKAAAVAqCoCgCwDcDJIIKAAoAACDUCkgggogAKgKKD8piZ2d9XeHN0UAAAEu0WM158jpq5bOMujAACgAAAAoAKAAACgRqCzqAACgACKCgAAsAoIACIoKAogooKiCigoCAo0IAA0ACiKCgs6iAKBAKCgsCAKCiAKCgKLCDr0/M8BjfD1K5kIjyX8d28dphrp+db/AK7HPu9a69XtHvfPe9859R8wABv9r83yE8lvLv8ADzC5ZFUGv2vzfITyyK3HKn3R5CeWRXrwcq0ct8vPm5t3+uwdNcMzpHijT1YOTarjvlnquG3fJWutnpeO7ci9mF6vSzxE62+j4bt7yfIzHv8Aj4rn1nN/LDr8f1c+/wBmcnP/AP58oa09f8s7+3+GcvNv90+bWmIzv7V7sHJs3Q8XZ7V7uv1i5OXfulNMxd/WvnPe+egKACCqACAoAAAoAAgCiiogKAAACr2eIiCgAAAEAoALUCoAAFQWoAoAIAtRUqCoFQFFgG4GSQAAAUAABBqBQEkRFAAFQFFQflcSbO2rvDm6AoAACXaLGa8+R01ctnKXRhAWgFAAAUCkgCAqgAoAgKQCgAAoCIAqioCgCwCgAgIigoIoCigqIAqigICjQgADQAKIoKACgAsCKACwIoAO19tsYbJiNs6yMS/VzGgFBQWAden5ngMb4epXMhEeO/ju3jvMN4Odbvc+31rp1e0e54HvfOnV9N80EUGv2vzfITytnBk3R5hcxkUFb/Z/N8hnywNNxyrvdAnllFevp+THirjvlwz867w8iummGEaevp+Tb4+auO+Weq4bd5WutjpeZdu+aL2Ya6zSzfInW10fDfvh5fkZj3/GxWOs5se1v4/qx8j2Yy82N1vlDenr/ljf2/wmbm375XT1idntXtwcmzc8fZ7V7er1jWTl3bp8mdcxrfFfNfRfOEFBBQFBAAUAEFUAABAFFFRAVAUAAU7BAUAAAAgFAAqAAKAoFQEBQQKqFUUBRACqqsIjcKyoAAAAACCwCwKoIIigAgoAAPyuJNnbV3hzdFRQBQBLtFjNefI6auezk25igAIoAoBtBdogAKAtZQKyqAqxqBXagVkRayoIoIoFVFQFAFgFABEEFNgLs7gAAWFF2IhsBVFA2ILsBdioAA1sQXZ3qAioEKNbK6gbO8AFgRfEFpHeACxWdkRWRF9F/wD0z/AOY7XxP6Fm8YmXKm4bAURaAsRIOvT7MngM74epXIhEeS+J9d2ztHeYXDE/q273Pt9a69XtHveB73zp1l9KPmU2qLt7hGv2vzfIPJZwZN0eYXMZFUGv2Z90eSJ5ZFbt5V2+FTywivZ03JjfKuO+XDqOdd4eRXTTDEzsiO5Gnr6fkx4+auO+WOr4bd6NdeWek5k7vmNdmGus0s3jPW10Wl++Hl+R4e/43ljrOZG75t/Hwz8jLnl5kbrfJvTH+XPfP+DNzb98r1+sTs9q9mDk2bnj7favb1esbv4Lt0+TOuY1tivmvoPnAoAAAAACggoCoCgAAKAIAAKAAKvYCAAAAAQCggoCiAoBACAAqqiAAoAAAo1CDcDKiIoAAoACCwK6W2s2tcE2nJwxLTKCAAAKAK/L4rTaN67OrlXaKigCgCXaEZrz5HXVz2cqNuZSTk4FFEABQBEVQAFAVEFAVY1ARAFUEFAAUVAAUWAAAEEkUFBFAgFUVEAVVBFQAVRRAGkBQBURVF0kFABYEAUFB06fm2jG+HuVxURJiKaA8Haj0gKBAjt0/NgZ3w9auRCI8eTmXbx31wuDm2b3Ps9a69XtH0Hz3vfOnWd76cfNuUEWqjdf6U+6PITyWcGTdHmhfDNRSsqNxM/oz7o8kTyyK1byr99qp5T1T3orrhzXxW3ZSImY3jO2sc7r5vum6dZ7hqThJjZE94r19NyY3z5q475Tqtllu8Xryx0s/wBWdyNdmGus4bd4z1r0Wl/g8vyPD3/G8s9ZP9S3d82/j4Z+Rlzyz9Ue23ydNMf5c98/iGbm37zr9YdntXs6fkWbnj7favZ1esbu4Lt0s65a2w+bV9B84FAKx3AVjuAAABdgqSACoGxQ2AAIps+KizRBAWkxrsA2d4GzvBBXbpbLb81tt8VtmtY8CMdl4n0cpiKztGzxAAAp8QWI+MAAgq0AoICiBSVFpKCKoC0lEKSAKAUkCkgA1ANwMggKKgCoAArVqUjrYzW4txCuVzUZrKogAKIoAr81Y1satuNeiDLQAoAl2hGa8+R11c9jHbEyWprHS+yKMyt2PPdG11jlRWQAUARFUABQFRBRQI1FEQBVBBQAFFQAFFgFABEEkUFBFBQAUQBQVQQAUFVAGkBQBURVFrtABQWABHa6I/x7O+ozMucDTeDm2kZ3w96vOoE6A+fOs70emAALAOvT82BjfD2K5EIjxZOZdvHeYaw82ze59nrXXr9o97wPe+ddrO99KYfNuQQUbjlXe6PITyWcOT2/NC+GRVFbjlXe6PIZ8sCt28u/faqXLKK1jmIumuz6Zj+QlZgaWZ2RHcDrgzTbNuOkUmdd4xtr5M2b1x6aUpOoa68L0vN8JIdmG+s4Ld61nrydF+PweX5Hh7/jeU6zjt3fNfj4qfIyzZS/HfddETNkRSWtvpZJ5Z1+stvhyvum66bp1l0k4nDlteby93T8izc8fb7V7ur1jpdw3bpYmW9sPmPoPmrFs+mbqfTE0mfiHIKACggAAKAsW3TbN0R9NvFPcJyiKKAKAiiggToK79Vri/twtc+vz93BGwUB36Of/Ysjf5LHPs9XGeKd8+aNgoAABAAoACiCKgKoACiAIoAoAAADUA1AyogKKFQWqCAA1bKLHaxmtRbiFcrmozWVRAAUQFAfm7Gtk1bca9MGWgBQBJ0IzXDI66uexi1TY1db9GY3Xmu1do41FZABQBEVQAFEFEWFStU2AnaKIICqCCgAKKgUAUWAAUEQBUBQAUAFEAUFAABQVUAVBVAFQVRe0QQVQgFEdr/t7N8jM9nKBp0wc20jO2HvV51AnQHzp4p3o9MUAFgHTp+bAzvh7VcSER4svMu3jvrhcPNs3wx2etdev2j6D576D513FO+X0ph83bIICNxyrvdHlIeSzhye35wJfDIoK3HKu90DPlkaat5d/wCXzEuWRQFgFmNkfEFxzTJZPxgS4S7iu3z5ix16XneEkZ3w6dZwW7/ktY68nRa3+Dy/I8Pf8fynW8du5fj4qfIzHPFfbFmSJmk3Rsb3ltjnpZJXN0c3v6bkWePm8Xb7V7+n1jpPDO5zjdw+Y+i+c6W/bX+6Bn+nMaAdMPMjdPlLG+G+vLDbACCqADti+3z7oGNsxxRsUAEVQFBA7BXfqv2f7cK59fn7uCNgoDv0lsxltv0tiaTd2aLHPsxw5X23W3TWKVmafHajcrIqgAAACgAKAggLCgAigAigCoCgAAsA3AyoACggAAA1aix2sZrUW5Itcbm4xWVQAABQAfm7Gtk1bcK9MEaAFAEnQjNcMmrrq57GLVNjV1v0Yjdea7V3jjUVkAFAERVAAUQURqFStdgM9oqIAKoIKAAo1bAldoxxQY5c77aDUrI0AoCCCgAKAACiAArQgACgCKCgqgCoKoCKgAsKKI63fbW7xmeznA06YObaRnbD3q86oE6KPnTxTvR6YIKoQDr0/NgZ3w9quJCI8WXmXbyvRrgxc2zfDG/rXTr9o+i+e+g+ddx3b5fR1w+btmoqKDUcq73R8xPK49L/AGz5wF8MigNxyrt9vzE8sCt2cvJ+XzEuYyKAQC12bgQVYEdel50bpIzvh16vl27/AJLWevKdHMRddWaVpR5fkTD2/Hv1qdZMTdb27JX4+KfIzHnd3nUHu6XkW+Pm8Xd7V7un1jrOkucdK+dhti7JbbdpM7X0XzNrxHsjp8XomyK+m6azt7muHH97l5s+O3HfFttaUrtZrtptzHIaejpMMXzN1aTbspvhx7t+Po79OnP1c8uP9PJNla0ptdNNv2nLnvrxeGGmSYmKV2VisbklLBR36Oyy+6+LrYupEUqsc+y2PVGHFETbFkRF3FHevDl+1cuowYbcN11ttJilJ8Usb03trxo7AogoIoqB2Cu3U8OD2K56efu4o2CgOk/bx/cn/tGf6/BfycX5vNSZrmjQCgAACgAACACqACKACKAKgKAACwDcDIAAoAqAADdoOtrFbi3JFrldDcYrEqgAACgA/N2NbJq24V6YI0AKAJOhGa4ZHXVz2XFqmxq636MR0ry3au0cKjTIAKAIiqAAogojUKlaEZ7UaJ1BAVQQUABRu3USvRbornXLIjUcxtQAEEFAAUAAFEAUFAABQUQBQVQBUAGu1UEAFhRUHWftrd6sT2c4GgGvXd/1T/EOHb13/wCPE+qa11GOPq5/q5f+qf4nK/rEGhEFFgHXBzbRnfD2q4kIjxZeZdvK9GuDFzLN8Mb+tdNPaPoPnvoPn38d2+X0dcR87bNRWQG45V++35ieTHpf7ZCsiqDUcq/faJ5ZFbs4Mm6PMS5jIqAsAs6RO9FQCFHbpedG6SMb4der5cb1rHXl5rOO3fDG2K9GuYuTmXb58zXENs1lUBHv6XkW+Pm8fd7Pd0+rr2S5OtfPwc+ze+i+Xvive287ydZzY9vzZrt14cEdHs6Dhv3w83yPD1fH8uPV8+7dHk6dPq5d3s4urm3l/B7IY08/dvfx9mW2Ho6K6IvvrMRs7d6xz7Z9HsibZ0mJ8VcOHPqZienv2x2eaVvry+ej0tW47rsd18UpZSvftZu3F4Wa/TllUAAUAV26jl4PYrnpmuKOgADp/t//ANP/ABGf6/BfyMW+/wA4Uma5o0AoIBAqgAAIAAKoIAoAIKCKAoAALANwICACggoAAN2g62MVuLKK53NRmsNIUGSYBBQFB+bsa2TVtwr06iNACgCToM1wyOmrnsuLU2NXW/hYjpXlu1do4VGmQBAABVAAVUQBqFRoRmUaQAFUEFAAUbt1ErvbornXPIjUc0bVQAQQUABQAAUQBQUAAFABRFBQW2Eqx0pFGeWuGJbjFBFABYUEHaft7d6sf05o2Kgg7z9vG9WP6chsQUBRYRG8MxGW0ibYe6LrZ0mGnDhax3oPFm5tw764THzLd8ebO2K3pmPovnPovn38d2+X0dcR87fNZVlQbjlX77RLkx/j9shsyKCt28q/8ozcsitWcGTdHmJfDI0AAqABAOvTc6N0rGd8O3V8qN8LWOvLyxNJie5l2lW6azMzrM1JOC3moAD3dJyI3y8fd7Pb0eru5Or52Hn2e59GPmb4r3tvM8nWcy32/Nmu3VhwR1evoNL/AAeb5Hh6fj+XPrOfO6HTp9XPu9nB1cm8v7fsj5sa+fu3v4+zLTCSo7YIj9PP7RjfMctiOgo74fts/wCXzct/aOuvrXB0cgAAAV3z8rp/arnpmuKOgADpH28/3I/7Rn+vwXcjH7rvkpM1zRsEABSAVAAUEAABRUAUAAAABQAAWAagRRAAFAAAgHS2BOXW2GK3Kso05XNRKw0zVgZSQQUFAfnLGtmdW3CvTqI0AKAE6CVwyOmrlsY9TY1dbtGI6V5rtXaOFSqsgAAFQWqiACrCItQWJVGhGe1GjtAqAoIKACqNWiV6LdFc65ZNUa1c0bWsdwALEVLVi+hnlrhmaNMmzuAABQXYIbAAUDYC7AXYCAojWwDYDVuqVqOk6MNOc0dIxVmldRk2d4AqwIuzvB12f48b1Y/pz2I2CArvs/x429q+GP6ctnejQCgU+ILER3gT/EG8HNtWM7Yazc24pphinxhGinxgHWs/oa/j+Tn/AH+HT+Py5ujmsR8YAp8Y/iI3HLv/AC+YlzDH+L2yGzMClNwrUTMROlJ1idugljdkW3W1m2K1n/tqM1iL5pMRER6taQNcFJRT0yCKNTw2+KCUkFiJBvBMW5om6aRt2ysZ3n0duqutnFSJiZrE0Wsdc+rzMupSe4UpIAPd0nIjfLx93s9vR6u8OTq+diif17Nn4n0Y+Zvive28zy9bx27vmzXbqw8+1HV6+g/H4PN8jw9Px/Ln1nPndDp0+rn3ezljiJyWxOkzES6bX6Oes+r1dXhx24outjbFLY3PP07216O3SSPI9DzIo7dPw5vYMb+HFHRbbZuui2IrM7Igt4JOXqxYM0YM1s2TE3U9Md7htvLtLy766X9a89+PJZMRfbNszpV2m0uHG62ZZUBAAV3zcjp/bKueua4I6FQbyYrsfp9VPqisUEm3LUfb3e+PKRP6/CXfb2e67yhSezCNgO3T2WXxk9UVpbWJc97Zw3pOeXF0YIBUAFiyZsuurw9ipb9URQAAAFFAAAAAUAAFgGoEAAAagRQQFtErtbAy6RDNb1Jhh1YusWVLHKYblYpCspIIKCgPz1kN2OcrdHO6us3KJ+rX/okwzY3NkRsBaVTk4ZnB6l/fhP05W3p5hLuTrbuw1hJs1dXG7pZdJ2Od63O/DNrc3c7pw5TFG2AQAAUAVAABqFStCMyjSAAqioAACjduqJXot0ac65ZNUa1c0bUAGrdUqxudGHRyu1bjFRUUAFAEUAFAABQABGhQRq3VK1HTsYaYl0jFQRQUCBFB1/23irP9OcI0oAO3+28VY/pyRpQAVQhBQax3em+LqVoqWcxb7/XfN0RSqJJwyNAN+uP0vR2+qv8AJn9f9uWv2/14/wDlGmQARu3l3/l8wuYuPW72yJswKoog6Y7rYt2zEbZnb7aLGNo5wNqgAQoIAKAK1l4o9tvkrOrKKCgKD3dHyI3y8ff7PZ0ervDk7PnY+fb7vm+jHzN8V9Bt5nk63js3T5s126sPOjq9XQa3+DzfI8PR8fyx1vP8Ib6PVju9nLHzLPdHm6bYrGuY9vW8id8PL0ez1d3q8NZ73reNFHbptM3skjG/j7uMTKOjpgmf18fuhnf1rWmY+q8L2vF/yPHj3S9Px8V5+7MeR3cSsgVkQFd832/Tz8JVjX2rjWUbSZmgPR1XDh9v/wALWOvyxb9vf77fKUW+xM/+vb77vKA/pzqNiD0dJpl9rn2eG9PLz1dWFqAggOtk/wBHJsjsVm5jnX4QjQAKV+AjVJpWmydJOVQACvwArHcAAC+AAALANRuEAAWIVGogCYREFatErrarLpDGzerTnXaJcQcL3SMVlphJEQUFAfn7W65RtloFiS5121Rl1RBqEqx1tYrcbZaASViPPmdtHHd47tXePNUUBAFAAAABqFStCM9qNE6ggKoIKACxbKpy3bZdXQS13tiaK52ueS2ao3K5+mRrkoigNW6pVjc6MOjldq3GKiooLANxaza1wkxRYzUVAFAABQAURRQRq3VK1HTsYaYl0jFJ1GQVQIEUHX/bfmVn+nOEaAUFrNKV2dwnACgAAsAoALAAAKACgCN28GTw8wuYYtZ9s+QmzI0oCAoAqCAsKLMxSI7qoqCAKK1l1t9tqs6sooKAA64+pyY7fTbSmu1z26ptea669t1nEd83U5LL4iKUmInb8XLTqljrv22V5fVPq9UbJrWr0vLfq62dRfFl8XXz6pj6N68s3ScxzuvvvpN103TGlUakkZFdMGW7HfFJpbMx6tzG+nMb69uKl99993qums6VXXWSfRNtrcpZzLd8eZtimuXu63kXb483l6fZ6u71eB7HkAdul/d9kkc+zx93GNEdCsxtB6cF984s/wBU1i2Jja5bycx20t4rhN113FMzTvmrpJI5c8ooRtmIjtUJiYmYnZMbJhEgK75ften/ADK56+1cEdFi266sWxWaVDnh6M9l11mKLY9U220mIps0Wuel4tcrft8nut+aNX2hP29vvnyD+vwwNiD62LBhjHExZEeqPqeLbe8vXrrOHj67Djx3W+iPTExth6Ona3Lj26yPK7OQg6ZIiMeOYjbMbVZ1zXrwdHZdg23T9e2WpHHbssrxXR6bpjumjLvERpAWAdZr/j290XSz/TXhzaZQFAAABQAAWAWBFAgG4VluIEqzAnLEwjRaFdbVZdIY2b1ac67RLiDhe3GKy2wkiMigoD4Frdco2y0CxJc666Iw7IDcJVjpaxW42y0AkrEefM66OO7yXavRHnrKoAAogAACgsKjQjPajQAAoqAC2iV6sVsS1HLau8Y7VY5a9MCcpNkByxfjtoNSvNkiksu0c0aat1SrG50YdHK5uMVFRQWAdLdGK3EuWM1lpkBQAAUAFBQBGrdUrUdOxhpiW4xUVFABYAEdo+2nerP9OcI0AoAKACiALAKABAKACgAAoN28GTdHmJcwxcU+2fINmRQFQAFBABYUWY2RPeggoIopMzNK9kUjdAnAKAAACu3U8dvshy6sX7unbmfZydXMAAABQWzjt3wlw1rl7+s+3u3x5vH0+z1d3q+e9ryIDphyxjm6sV9Vs27PiM7a8sdiNAO/TcrP7HLszr93XTFcHVyBVt4rd8eYlbz8/J7pE0xHMaejL9pg33Kxr7VwRt0xfuf27vkRnbx9zpoj/Ix7/kRd8Us+3yb7PmF9of7aP7n/AIh/X4cxpUHv6brMl0TbNsUstrHg8+/VI76dlry5+ouzTE3REU7nbTSauW2/LFll99fTFaarbIknJZETfbE6TO1Wbh7+p6bDGCZi3bbH07W7Hn03vLr0n29m5Yx2ez5mXZlv3sV69cLhiJyRExWO4htfoma2LckxEUhDW/RmBp1n7aPcz/TXhzaZQFiJlORZtmNV5EABQQAGrdQrpMRQZjAqwDdqs10tGa1IjEwjS22qlrpECNQxs6atOddokkK43Q6RzrDTCSKyAKA+Ba3XKNstAqS57OuqMO0BWoSkdLWK3G2WgElYjz5tHXRy3eS7V6I89RUABAAFAAEWFStCM9qNAACioALbqJXrwtRx2eiFc1ABi/QajyZNWXbVzRtbUqx07GHRzubjFRUBFgV0t0YrcS5YzWWmQFAABqgFDk4AUFgpHfFiiXHbd210d/0Yo5f+jp/5vPkx0dtdnHbXhznV1cgAFgAHaPtp3qx/TkjaiAKCgAoAiwACgQCgAoAAKDVnBk3R5iXMXFxeE+QbMQKoKgAQoIALALM7IjuFQCAUEBQAAABW8mT9SYmlKRFv8GddeGttuWGmVAAAFAW3ijfCXCzL6HWfb3+Hm8fT7R6u31fOe15AAFQAd+m5ef2OfZmfd10xXB0cmvR/Tm+ul3ppvioc/Xgx4777votm6lJmilsmXTqceS3LfdNsxbddNJ7ys6WcOKNu+T7TD7rlYntXFG28Ot/9u4jO3j7nT8/HvIu+K1ZWcGaIitJt85IlzEpP+Np+5/4h/X4ZiyuOb66TSg1z9eEFd+j5l3tly7cOnXlw7XRzejpbbo9VYmHPsrppHO2LoyxMxMR6nSVz2n0fS6nkX7m68emU6P7ezcQ7PZ83Nzb97NevXC4ObaQ3wZ+bcU0wxCNPpz0uD/Gr6eyuva8v/pf2ej9Jw+Y9TzgOmJnZYuU1WubTIAAAK64sc3SRja8O+Tp5ttqtjnru886o6kA3CsulolaGUoK1bAlbgQhjZ01VzrvCSFcrnSOVYlplmRWRRAB8C10rlG2WhFSWNnbRGHWArUIR0tYrcbhloBJWI4ZtHXRy3eS7V3jz1FEEUBUAAABFgStdionajSAAKKgA1bqJXqwtRx2eiFc1ABi/QajyZNWa7auaNtWxNUrUdKTRz5b4cro2ukYqKgIsCulujFbiXLGay0yAoAANwlWNSisS0yoLbqlWPXhebd6NHonRxdnmzPRo8/Y886vQ89AAUAHaPt53qx/TlCNKACgAoKACwIAoEAoAKAACg1ZMUviZiKxsrvErVts2XVumIiYmm34CW8uY0oKggLCqIALALMUiJ7wQCAAAUAEFUQFAAAUAEFUFjWN8JSPo9Z9vf4ebx9PtHs7fV817HjFABBRXfpeHN/blz7fH3dOvF+zg6Ob0R0+f9C630T6pviYjZpReHP8Aec5b/wCP2ZMkTrERX+KxnuxHT/kOTb7vkVnpy8DL0O9/2eL3XKxPauKOjeDiv9l3kMbf/Zg5+P3QRd8VLJmL4mJmPqiJ7O0W4dOrur1F+2sV2bdmhWeuf6x1x9JlnBMbK3UmNq8MXsnLyzFJmJ1hl2d+j5l3tlz7cOnXlyxbMtu9vbDEyX3Xeu7bOpJ9C10wzM23Vmu2Es+sW+tfR6j7e/c614dPZjovt7CL2+z5+fnX72a9OmFx2xZdbdddERO2naFvK5IjJfM2XROytAl4n1coRt9m2a9N+V4r7PVMPjdr2vKA6YtWdli5TVa5tMgoiCgK9PS8Sxy7Hrz8C1w0y+fdqy9UIBqFR0tGa6xAw1FgnJ6VORAhnZ11VyrvCSFcrnSOVYlplmRWEUFFHwbW64xtloFSXPZ21Rh1iCtwlHS1itxuGWgElYOGbR10cd3ku1d44VFQAEFAACBGogQqIeoOFidoJIIKKKgAtolevD2NRx2eiFc1ABm/QWPHl1ZrvqxbFZZrpHqxYrZcN9no11dv0rXL93T9HDLjiHXTZz31eaY2u8cKisrArrboxW4zcsZrLTICgAA3CVY1KKxLTKgtuqVY9eF5t3p0ejscXV5sz0dbh2PPM7XoeagALAAOtv2929WL7OaNqICqIAoKABAKACwIoAKAAgqhOgrrm0x7iuevlzGwFQQFVRAABZmsRHcAAAAAAKAogKAACqIgoCgRrCEfS6v7e/dHm8XV7R7Oz1fOiJmaRtmdIe143bFiv9GWtk19P01jt+CsbbTmON1l9tPVbNtdKxQbllRAFbsyXWer0/ij0zuTbWVZtwwqPsx2eDbxPH0X3Gb/AF2pHft9Y3/yHJt90eRWenLwMvS73fZY/fKuc9q4I6OmDju9l3kRjbCYOdj90Ea3xUnWY+MhEFfXw8q3c28W2Xy8vMu3yxXs1w69Fzp9suXbh168uVnNje3cMzKX8d29ZhLl0wzS27uiks3MXxXuy9RhnBP1x9UUje68vHrpeV6Gf/XtInb7Pn9Rzr97NenTBm0s9oupg453SQ2wxCNPs2fbR7Xivs9Uw+NOr2vKA6YtWasXKmq1zbZBREKKAr0dNxLHLsezNy1rhrl8+7Vl6okA3AjpYrNdrRitwrJIMosGdnXVXKu8JIVyubjnWJbYYkVlFBQHwbXSuMbZaBYkueztqjDrEFahKOtrFbjbLQCSQcM2jto47vJdq7xwqKgCxuEPBRAAWBGhEkEFW3USrNBGdncKbAUAGraCV6sLUctnohXJQAZv0FjyZKVZrvqxbSrNddXswvNu9Oju4urz53bRy3eS6lXpjzVlWVgV0tYrcLqLGaxsaZAUDYCxQG4olWLKKx2tM1dgNW0qlWPVhebd6NHo7HF2efNR6Otw7Hnu9Ne13eZPp+KgCwC7AdbafoXb1Yvs57OxGwQj4itfT8RD6fiACgfT8QWPT8QXZ2AgLFO0Rr6fiin0/FQEAWPT3yir9PfP8FRJp2Irrm4ce5a56+XOKdqNr9PfP8BTZTUQAhVWkd/8kDZ3/wAgQGpiPTbPfWoJs7wWKd/8gSadgALs7wKR3/yFNneCAoGzv/kBs7/5ACgLs7/5AUjv/kgKID6fU0/x79vY8PV7R7Oz1eDDT9azb+KHujxbYr6jbyPJ/wAhw498+TNduny8kU72Xc2d4IBOgR9i3S3dDbxV5Ok+6zePmkd+z1jp/wAhyI90FY6cvn9jL1Pfb0lt/T2WTdMRX112dvY1w817ONrXDqumtw+ml0z6q6/Dcljr17/sxg5n5bvJI1vhnDzcfujzIu2KXR9V3unzCM+Ir62Dk2bm48W2XzMvMu3sV7NcJjyX2XVtmk6M2StS8FnMt29pcEyuTmXbyYLlrHy8m6EuYsw5+qaRbXZ3NM8PqdD9vbvbjydvs8HVc+/ezXp68Jl4ce4XXyYOZ4SkN8MU+MDT7GL7WPa8W3s9WuHx51l7XmBHTHG3WGasXLCarXPVtlqbJoJyWxt1gKt0BGBp6Om4ljn2Pbm5a159cvnX6svVEgGoEdbVZrraMV0hWSQZlFiVZrrqRc5V2izJFrnc3HOuctssyDKKCoD4VrpXGNstCLEljZ20Rh1iCtQlHW1itxploAkhXDNo7aOO7yXau8cKioQDcQM1JUjIqoAKrKSKAsCVZBkAAFBbRK9eHsajls9EK5KADF+gseTLqzXfVmzVmusezC82706O7i6vPndtHLd47tXpjzVFZWBXS1itxLljNZaZAUAAG4SrFlFZlplQW3VKsevD2PPu9Gj0djg7PNmejrcOx551eh56CALAAO1v2929WL7OUI2CKKogCwCgAQCgAsAoAKICiIqgK1dfN0RE/h2QMycIKCqiICqogAAtZpEd2gICgAgqgAAAAAoAoAAAADd0x+lZHbE3VjfRmZrVxDFzbPdHm1GNsV9WdW3keT/kODHvnyZrt05rxsu4ABOkhH2LOG3dHk28deTpfvM3j5pMu3Z6x06/7f8ANBWOn2fOZep6v1csdFbdF8xMX+mvw7l8OX6z9/w4X5Ml9PXdN1NKo6TWTDXT83wu/wC2SJvhnDzMfut8yLtil/HfH/2nzCYQV9bp5rhs3Nx498vmZ+dfvYr1a4YRpbZpdE9xVjrbZZlvupMxM7dsMW2RriVJussi+2KzM7Pgv1p9I5NMu2HNdZF0eqYimyPivLG2vLlMzO2ZrPbKNR0y8OPcJr5MHM8JIb4cxp9nDt6a32vFt7PVrh8i7Wd72R5kVG8erNWNZU1WsWxtbZrrdE+nRWJWbLLpnYi2rkxXW6ia7OQ6O/TcSxz3e7Ny1rz65fNu4mXqgitQqOlis12tkc63CskhHO65GpGJvSukhFznXWN+plpi6W451mZaZYlVZlFSopUHw7XSuEbZaEVJY2dtUYdYgrUJR1tc63GkaAJIVwzaO2jju8l2rvHCooCNwM1JURFBQRpUSQQFt1CrIjIAqwIAtuolevC1HLZ6IVyUAGb9BY8mXVmu+rFmrNddXswvNu9Oju4urhm0dtHLd4rtXojzVGmWrbZlLWpHa3Hc53Z0mrN+O6FmzN1c5ijbAqKAADcJViyistMqC26pVj14Hn3ejR6OxwdnnzPRo4bvNdq9DzoIoEAoOtnIv3qxcxzhGwRRVEAUFAAgFABQUAFEBVQFQFVAEBVBAWFBAAgGpj6bfjXzFZEWABUBQAAAABQQFUAEBQEAVrHzLPdHmRNsPrTq6PG8n/Icuz3fJmu3TmvGy7gAJOgPpWdXh/T9W2lkWxds79jXLzXrvLl0d0XdXkujS6JmP4kb7JxrHXr/ALf80FY6fZ85l6no/wBh/wDoeHP+/wAOA6OnTc63dPlJGd8MYuOzfb5jW2K1k48nvnzkTXEYRXpxdbksxzbsrEfRsa5ctuqWuF103XTdOs6susnCAKEIoAAoqDpk5ePdIzrmpg5keJDfDHbI0+z032tvteLf2erTD5F3FO97I8zr1FK46f8ATDGnlrZ16bpou2s778Na6uubpIi2rOvYu2jlgx2+ukvRq8vZ9Htux2ejRt55teXltiIybGXW4Op0KaPF2o9Dv0/FBHPd7cvLarz65eGI+pl6EujaLCIBu0SutsqxXSLoGeEmQkcr5G44zO1mukIuThtuL04OSrUZorLMisyioKA+Ha6VwjcMtCKksbO2iMOsQVqEqutrnW40igEkK4ZnbRy3eS7V3jz1FARuBmpKkRGgARoRJUQVYEqyIyKAoAi26iV6sLUctnphXJQAZv0Fjx5dWa76sWas11j24Xm3enR3cXVwzaO2jlu8V2r0R5qjSO+GNrlu6aPZZEUea16pGM0RRvSue8eO/V6dXm2ZaQEWEVqkIq1heDk9ScHJsBZhYhbqUj1YHn3ejR6exwd3nzPR1vP2PLOr0R56CAqiAO1nIvVi5jnCNgKCiAECqIoEAoALAKACiCKoCooogCAqgAKCABAAoAAACggAKAKAAAAAIqqAIg3ZzLfdHmRLh9adXR43l6/l2e75M116cvCy9AACgVnSuydYFen/AI/7ifbKxy7vV6ev+2nfC1y6vZ81l6nePsJ/uQeHP+/w4jo6dNz7PHykjO+HPHxWb48xqt5udk90+YmuIwKCqgAAQAAACg6ZOXj3SM65qYObBDfDE6yNPs9LNemt3PF2ez1aYfIv47t8vZHmrrn/AGvbDGnlrbw9nR6OPY6aO/UcDGmW9njw8x7dHh7XtngbeWZeT91l38J1PCU0eLtR3dun4oIzu9+XltV5tcvDEfUy9BdARBSoL6w4WMgn6txfUThm6RY5TqNxlFaiQagZaVGZFYlFBQHw7XSuEbhloFSXPZ10Rh2iCtQlHW1zrpGkUAkHDNo66OW7y3avRHCsqixAjUDNJhRmiKCgjQiSogq26iVZ7RGRQFABbdRK9WFqOOz0wrkoAM36Cx48urNd9WLNWa6R7MGjzbvVo9Di6uGfR10ct3iu1emPNUaR3w6uW7ro9tmjzbPTGM2jWjG7xX6vVq8uzLSAiwitCorICwitSkCNVpHqwPPu9Gj09jg7PNnejrcOx57tXojzoICrAgDtj5F6s3MckaUFABQAUQBYBQAWAUAFBUCAVQQAUAAABQQAIUaun6LPhWv8UVkCAAAABQARRQAAAAAUAQAatml1s9kTHmFfSt6jBfMxbfWYiZnXSG+XkuljzdX1GHLjtiyazE10p2Ja7dell+rysuoKAAAtt19s1smbZ74CyXLr1GW6+6kXzdb6baxXZWm0rGmvDkNu9v2N39yDwxff8OA269Nz7N8+UkZ3xXO3W3fHmjddM/Ny++VZ0xHMaEAABRYQAAAAdb+Vj8RmZqYObaRdsMzrIr6PTdVht6akzNbI+rY8u+luzvrvOHzrpibpmNJl6Y412zzWMXtY18tbeHs6PRx7HTR3z8Esa5b2eLDzHs0eLte6eB0eTy8c81l38HUcJTR5bdUdq6YuOCM7Ye7JymnnmXhniZegkEFSRWZlFIkHS1Watwkc5G4yirAjcCNKjMorEigoD4VrpXCOkMtAqS57OujLDtAVqEo62uddI0igEg4ZtHXRy3eW7V6I4VIVlRAFVAGZRoCtQMpKqgLAlWQZABYABYEr1YWo47vTGiuSgAzfoLHjy6s131Yt1ZrrHswPNu9Oj0OLq8+Z20ct3ju1emPNUEd8Ornu66PbZo82z0xjNo1oxu8V+r1avLsw0jQhCK0KkqyAsIrSRSNVqR6sDz7vRo9PY4O7z5no63n3eWdXojz0EBVgQB2x8nIrO2Y4wja/xEUFBQAUAFgFEAWAVAUWAVA7QUAFAAAAAUEUAUEEkFgAEFUQFABAUBQQVQAAEABQQd+k47/ZcsY7MflwjSEdFEBQAAAFAB3t+xv98Hhi+8+zgNunT/cY9/yIzviudusb480brpn5+T3SrOmIwNCAAAosIAAAAOmTlY/EZmaYObaRdsMTrIrti5OXwY2zGtcVxbR3z8GH2ueua1t4evo9HLsdNHoz8Dnq3s8WLmPZo8Xa908Do8jyTzWXfwdTwrU0eO1l3dcXHBGdsPdfy2nnmXhniZegkEFSRWJRVgHS1Watwkc5RuMirAjcCNKjMorEigoD/9k="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"subdocument","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.493Z","timestamp":1785159268493,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /embed-widget/forex-cross-rates/?locale=en HTTP/1.1\r\nHost: www.tradingview-widget.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://walmartfundholdings.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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\ncontent-type: text/html; charset=utf-8\r\nvary: Accept-Encoding\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\ncache-control: max-age=120\r\nexpires: Mon, 27 Jul 2026 13:34:28 GMT\r\ncontent-security-policy: base-uri 'none'; default-src 'self' https: data: blob: wss: 'unsafe-inline'; object-src 'none'; script-src https://static.tradingview.com/static/ blob: https://*.ampproject.org/ https://*.paypal.com/ https://platform.twitter.com https://platform.x.com https://songbird.cardinalcommerce.com/edge/v1/ https://checkout.razorpay.com/ https://cdn.razorpay.com/static/cx/ https://*.checkout.com/ https://*.revolut.com/ https://*.cardinaltrusted.com https://pay.google.com/gp/p/js/ https://applepay.cdn-apple.com/jsapi/ https://tradingview-gateway.com/ https://www.tradingview-widget.com/static/bundles/embed/ 'nonce-Be2hVo4lUe0bglYotDROnA=='\r\ncross-origin-opener-policy: same-origin-allow-popups\r\nreferrer-policy: origin-when-cross-origin\r\nx-content-type-options: nosniff\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/27/2026 13:34:28\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 64d004a6487bce184cd7fb2227064729\r\ncdn-cache: EXPIRED\r\ncontent-encoding: br\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":"PayPal","description":"PayPal is an online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders.","website":"https://paypal.com","common_platform_enumeration":"cpe:2.3:a:paypal:paypal:*:*:*:*:*:*:*:*","icon":"PayPal.svg","categories":["Payment processors"]},{"name":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":51402,"size_decoded":17407,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (17729)","md5":"79b352c3c384d420f2224a456b9ad4e5","sha1":"879ce00827bc4c6a89be34f44b8dfdcf0daf794d","sha256":"78939c4b385d5a4e8dc2acfb0c3833b79c9ba382047bb87b8e40deb6dd131966","sha512":"0b200a6351f33a2a53bbaa1acd7f26a20903a504f67a7f650c2a20602f6497d0d30894d65ad10b4a43ad64423850d1370b7bde68d12254ba0952e9032a5b540d","ssdeep":"1536:ej84MteeNzfMO5t69Nogdv3uWn+66ceuvRM4:ej84MteeNzfMO5t69NlGWe4M4","tlshash":"fa33e75398098b05dad64a057c33b103f92903a8955268987aacdcdc159ffc3f1a7bfe","first_seen":"2026-07-27T13:35:15.25478Z","last_seen":"2026-07-27T13:35:41.660675Z","times_seen":2,"resource_available":false,"data":"Cgo8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj4KPGhlYWQ+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIG1pbmltdW0tc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xIj4KCTx0aXRsZT5Gb3JleCBjcm9zcyByYXRlczwvdGl0bGU+CgoJPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS8iIGNyb3Nzb3JpZ2luPgoKCTxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTk1MjcuMTVjNWMyNWQyN2E1NmEwZGY3NzIuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzkwNzAuNTVjYmM3YTFkYTk2M2IzODI5YjMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Cgk8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzQ2OTA3LmM1YWY4YWE3YjUwODJiMTg3NWE1LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzQzMzI1LjI1NmZhNWE1MjEzYjljYjcwZjVjLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM5MDUuNjgyZTg5ZWYyZGM0YzcwNDIzYzYuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTU5MzIuMmE3MGQzOTdjMzRmMmU5ZGU5NGYuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNTE1MDguNzY3MjE5MjgzYzY1ZjRkNGNhNmUuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODQwOC5kZTUzNDY2M2UwNTIwNzViYTEyZi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC84MTgwOS4xNDZiYzhhYmI2MDkyMGEyNWQyZi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCjxzY3JpcHQgbm9uY2U9IkJlMmhWbzRsVWUwYmdsWW90RFJPbkE9PSI+Cgl3aW5kb3cubG9jYWxlID0gJ2VuJzsKCXdpbmRvdy5sYW5ndWFnZSA9ICdlbic7Cjwvc2NyaXB0PgoJPHNjcmlwdCBub25jZT0iQmUyaFZvNGxVZTBiZ2xZb3REUk9uQT09Ij52YXIgZW52aXJvbm1lbnQgPSAiYmF0dGxlIjs8L3NjcmlwdD4KCgk8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL3J1bnRpbWUtZW1iZWRfZm9yZXhfY3Jvc3NfcmF0ZXNfd2lkZ2V0LmQ3Y2Q4YmJiYTQxYTBkNTQ2NTZjLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbi41ODY2Ny5kMTVmYzRiNWM2MzFiYjVlY2U4ZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW4uMzkxNDcuMzBiODg4YTVlYTk3OTZjYjdkNTguanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMyMzg3LjQ3YWNlODNjNjFhODg0MzQxY2Q2LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xMzE0OC4zMmNjMDFkYzAxNzUxYjkxNjgyYy5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDkyNjUuYzIwOGVmODM3OWUwNzNmOTRkMTYuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwNzA2LmE1OTEzYWE2YWQ2MmQ5ZGJmMDMxLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82NTg2Mi45NTc2NDc1MmMwOWYzZjE4Zjg5MC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNTEwMzEuNTM1ZjI3Yjc3NmYzOTRjN2U0M2EuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzk0NzA4LjczZDJiY2EzNzIwN2M2N2E0MWY0LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zNTUyLjRjNTUzNTE4M2I3YTAzMzBhODlkLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC84MDU5NC5lODc0NDRlMjZmOWUxMjU0NTIzMS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNzkyMDcuNmE2MmZjODAzZDNkMDc4OTg5MzYuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzIwMDYxLjg3MTVhNDUyNTE0ZDQ1ZDVkZDNiLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNjA2Ny45ZDI0ODg5YjJhZjNlYjMwNWRjZi5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW1iZWRfZm9yZXhfY3Jvc3NfcmF0ZXNfd2lkZ2V0Ljc3N2NlYTI3MWQwYzBkNjdjMDllLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz48c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9ydW50aW1lLWVtYmVkX2ZvcmV4X2Nyb3NzX3JhdGVzX3dpZGdldC5kN2NkOGJiYmE0MWEwZDU0NjU2Yy5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjU4NjY3LmQxNWZjNGI1YzYzMWJiNWVjZThkLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW4uMzkxNDcuMzBiODg4YTVlYTk3OTZjYjdkNTguanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjM4Ny40N2FjZTgzYzYxYTg4NDM0MWNkNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzEzMTQ4LjMyY2MwMWRjMDE3NTFiOTE2ODJjLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDkyNjUuYzIwOGVmODM3OWUwNzNmOTRkMTYuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC84MDcwNi5hNTkxM2FhNmFkNjJkOWRiZjAzMS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzY1ODYyLjk1NzY0NzUyYzA5ZjNmMThmODkwLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNTEwMzEuNTM1ZjI3Yjc3NmYzOTRjN2U0M2EuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85NDcwOC43M2QyYmNhMzcyMDdjNjdhNDFmNC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM1NTIuNGM1NTM1MTgzYjdhMDMzMGE4OWQuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC84MDU5NC5lODc0NDRlMjZmOWUxMjU0NTIzMS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc5MjA3LjZhNjJmYzgwM2QzZDA3ODk4OTM2LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMjAwNjEuODcxNWE0NTI1MTRkNDVkNWRkM2IuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNjA2Ny45ZDI0ODg5YjJhZjNlYjMwNWRjZi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VtYmVkX2ZvcmV4X2Nyb3NzX3JhdGVzX3dpZGdldC43NzdjZWEyNzFkMGMwZDY3YzA5ZS5qcyIgZGVmZXI+PC9zY3JpcHQ+CgoJPHNjcmlwdCBub25jZT0iQmUyaFZvNGxVZTBiZ2xZb3REUk9uQT09Ij53aW5kb3cuZmVhdHVyZVRvZ2dsZVN0YXRlID0geyJzaG93X2ZlYXR1cmVkX2lwbyI6MS4wLCJibGFja19mcmlkYXlfcG9wdXAiOjEuMCwiYmxhY2tfZnJpZGF5X21haW5wYWdlIjoxLjAsImJsYWNrX2ZyaWRheV9leHRlbmRfbGltaXRhdGlvbiI6MS4wLCJlbmFibGVfdHJhZGluZ19yZXBsYXlfZm9yX3BvaW50X2luZGV4ZXMiOjEuMCwiaW5jcmVhc2VfbWV0YWluZm9fdmVyc2lvbiI6MC4zNSwiY2hhcnRfYXV0b3NhdmVfNW1pbiI6MS4wLCJjaGFydF9hdXRvc2F2ZV8zMG1pbiI6MS4wLCJwZXJmb3JtYW5jZV90ZXN0X21vZGUiOjEuMCwiY2hlY2tfYXV0aF90b2tlbl9leHBpcmF0aW9uX29uX2V2ZXJ5X3JlcXVlc3QiOjEuMCwiY2hhcnRfc3RvcmFnZV9oaWJlcm5hdGlvbl9kZWxheV82MG1pbiI6MS4wLCJzdXBwb3J0X3BlcnNpc3RlbnRfbG9ncyI6MS4wLCJuZXdfc3RvcmFnZV9zdWJzY3JpcHRpb25fdXJsIjoxLjAsInJlbW92ZV9hbmNob3JlZF90ZXh0IjoxLjAsImVuYWJsZV9zdGVwX2J5X3N0ZXBfaGludHNfZm9yX2RyYXdpbmdzIjoxLjAsInB1c2hzdHJlYW1fYmFzaWNfdGVsZW1ldHJ5IjoxLjAsImFsbG93X2JyYWNrZXRzX3Byb2ZpdF9sb3NzIjoxLjAsImVuYWJsZV90cmFkZWRfY29udGV4dF9saW5raW5nIjoxLjAsIm9yZGVyX2NvbnRleHRfdmFsaWRhdGlvbl9pbl9pbnN0YW50X21vZGUiOjEuMCwiYWxlcnRzLW9uLWZ1bmRhbWVudGFsLW1ldHJpY3MiOjEuMCwiYWxlcnRzLW5vdGlmaWNhdGlvbi1zY2hlZHVsZSI6MS4wLCJhbGVydHMtd2F0Y2hsaXN0LWV4dGVuZGVkLWhvdXJzIjoxLjAsImVuYWJsZV9zeW1ib2xfY2hhbmdlX3Jlc3RyaWN0aW9uX29uX3dpZGdldHMiOjEuMCwiZW5hYmxlX2FzeF9zeW1ib2xfcmVzdHJpY3Rpb24iOjEuMCwic3ltcGhvbnlfYWxsb3dfbm9uX3BhcnRpdGlvbmVkX2Nvb2tpZV9vbl9vbGRfc3ltcGhvbnkiOjEuMCwic3ltcGhvbnlfbm90aWZpY2F0aW9uX2JhZGdlcyI6MS4wLCJzeW1waG9ueV91c2VfYWRrX2Zvcl91cGdyYWRlX3JlcXVlc3QiOjEuMCwic3ltcGhvbnlfZW5hYmxlX3RpbWVvdXRfdHJhY2tpbmciOjEuMCwic3ltcGhvbnlfZW5hYmxlX3RpbWVvdXRfc29mdF9saW1pdCI6MS4wLCJzeW1waG9ueV9lbmFibGVfdGltZW91dF9oYXJkX2xpbWl0IjoxLjAsInRlbGVncmFtX21pbmlfYXBwX3JlZHVjZV9zbmFwc2hvdF9xdWFsaXR5IjoxLjAsIm5ld3Nfc3ltYm9sX292ZXJ2aWV3X2tleV9mYWN0cyI6MS4wLCJ0aW1lb3V0X2RqYW5nb19kYiI6MC4xNSwidGltZW91dF9kamFuZ29fdXNlcnNldHRpbmdzX2RiIjowLjE1LCJ0aW1lb3V0X2RqYW5nb19jaGFydHNfZGIiOjAuMjUsInRpbWVvdXRfZGphbmdvX3N5bWJvbHNfbGlzdHNfZGIiOjAuMjUsInRpbWVvdXRfZGphbmdvX21pbmRzX2RiIjowLjA1LCJ0aW1lb3V0X2RqYW5nb19sb2dnaW5nX2RiIjowLjI1LCJkaXNhYmxlX3NlcnZpY2VzX21vbml0b3JfbWV0cmljcyI6MS4wLCJlbmFibGVfc2lnbmluX3JlY2FwdGNoYSI6MS4wLCJlbmFibGVfaWRlYV9zcGFtZGV0ZWN0b3JtbCI6MS4wLCJlbmFibGVfaWRlYV9zcGFtZGV0ZWN0b3JtbF9jb21tZW50cyI6MS4wLCJlbmFibGVfc3BhbWRldGVjdG9ybWxfY2hhdCI6MS4wLCJlbmFibGVfbWluZHNfc3BhbWRldGVjdG9ybWwiOjEuMCwiYmFja2VuZC1jb25uZWN0aW9ucy1pbi10b2tlbiI6MS4wLCJvbmVfY29ubmVjdGlvbl93aXRoX2V4Y2hhbmdlcyI6MS4wLCJtb2JpbGUtYWRzLWlvcyI6MS4wLCJtb2JpbGUtYWRzLWFuZHJvaWQiOjEuMCwiZ29vZ2xlLW9uZS10YXAtc2lnbmluIjoxLjAsImJyYWludHJlZS1nb3Byby1pbi1vcmRlci1kaWFsb2ciOjEuMCwiYnJhaW50cmVlLWFwcGxlLXBheSI6MS4wLCJicmFpbnRyZWUtZ29vZ2xlLXBheSI6MS4wLCJicmFpbnRyZWUtYXBwbGUtcGF5LWZyb20taW9zLWFwcCI6MS4wLCJicmFpbnRyZWUtYXBwbGUtcGF5LXRyaWFsIjoxLjAsInRyaXBsZWEtcGF5bWVudHMiOjEuMCwiYnJhaW50cmVlLWdvb2dsZS1wYXktdHJpYWwiOjEuMCwiYnJhaW50cmVlLW9uZS11c2QtdmVyaWZpY2F0aW9uIjoxLjAsImJyYWludHJlZS0zZHMtZW5hYmxlZCI6MS4wLCJicmFpbnRyZWUtM2RzLXN0YXR1cy1jaGVjayI6MS4wLCJicmFpbnRyZWUtYWRkaXRpb25hbC1jYXJkLWNoZWNrcy1mb3ItdHJpYWwiOjEuMCwiYnJhaW50cmVlLWluc3RhbnQtc2V0dGxlbWVudCI6MS4wLCJicmFpbnRyZWVfcmVjdXJyaW5nX2JpbGxpbmdfc2NoZWR1bGVyX3N1YnNjcmlwdGlvbiI6MS4wLCJjaGVja291dF9tYW51YWxfY2FwdHVyZV9yZXF1aXJlZCI6MS4wLCJjaGVja291dC1zdWJzY3JpcHRpb25zIjoxLjAsImNoZWNrb3V0X2FkZGl0aW9uYWxfY2FyZF9jaGVja3NfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fZHVwbGljYXRlX3BheW1lbnRfbWV0aG9kc19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9iYW5uZWRfY291bnRyaWVzX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl9wcmVtaXVtX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fY2xvc2VfdG9fZXhwaXJhdGlvbl9jYXJkX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fcHJlcGFpZF9jYXJkX3RyaWFsIjoxLjAsInJldm9sdXRfYWRkaXRpb25hbF9jYXJkX2NoZWNrc19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2R1cGxpY2F0ZV9wYXltZW50X21ldGhvZHNfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9iYW5uZWRfY291bnRyaWVzX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfcHJlbWl1bV90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fY2xvc2VfdG9fZXhwaXJhdGlvbl9jYXJkX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9wcmVwYWlkX2NhcmRfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2NvbW1lcmNpYWxfY2FyZF90cmlhbCI6MS4wLCJlbmFibGVfcGF5bWVudHNfM2RzX29wdGltaXphdGlvbiI6MS4wLCJjb3VudHJ5X29mX2lzc3VhbmNlX3ZzX2JpbGxpbmdfY291bnRyeSI6MS4wLCJjaGVja291dF9zaG93X2luc3RlYWRfb2ZfYnJhaW50cmVlIjoxLjAsImNoZWNrb3V0LTNkcyI6MS4wLCJjaGVja291dC1wYXlwYWwiOjEuMCwiY2hlY2tvdXRfaW5jbHVkZV9hY2NvdW50X2hvbGRlciI6MS4wLCJjaGVja291dC1wYXlwYWwtdHJpYWwiOjEuMCwiYW5udWFsX3RvX21vbnRobHlfZG93bmdyYWRlX2F0dGVtcHQiOjEuMCwicmF6b3JwYXlfdHJpYWxfMTBfaW5yIjoxLjAsInJhem9ycGF5LWNhcmQtb3JkZXItdG9rZW4tc2VjdGlvbiI6MS4wLCJyYXpvcnBheS1jYXJkLXN1YnNjcmlwdGlvbnMiOjEuMCwicmF6b3JwYXktdXBpLXN1YnNjcmlwdGlvbnMiOjEuMCwicmF6b3JwYXktczMtaW52b2ljZS11cGxvYWQiOjEuMCwicmF6b3JwYXlfaW5jbHVkZV9kYXRlX29mX2JpcnRoIjoxLjAsImRsb2NhbC1wYXltZW50cyI6MS4wLCJyZXZvbHV0LXBheS1wYXltZW50cyI6MS4wLCJyZXZvbHV0LWNhcmQtcGF5bWVudHMiOjAuNSwiZGxvY2FsLXBpeC1hdXRvbWF0aWNvIjoxLjAsImJyYWludHJlZV90cmFuc2FjdGlvbl9zb3VyY2UiOjEuMCwidmVydGV4LXRheCI6MS4wLCJ2ZXJ0ZXgtdGF4LWZpeCI6MS4wLCJyZWNlaXB0X2luX2VtYWlscyI6MS4wLCJhZHdvcmRzLWFuYWx5dGljcyI6MS4wLCJjbTM2MC1hbmFseXRpY3MiOjEuMCwiZGlzYWJsZV9tb2JpbGVfdXBzZWxsX2lvcyI6MS4wLCJkaXNhYmxlX21vYmlsZV91cHNlbGxfYW5kcm9pZCI6MS4wLCJyZXF1aXJlZF9hZ3JlZW1lbnRfZm9yX3J0IjoxLjAsImNoZWNrX21hcmtldF9kYXRhX2xpbWl0cyI6MS4wLCJmb3JjZV90b19jb21wbGV0ZV9kYXRhIjoxLjAsImZvcmNlX3RvX3VwZ3JhZGVfdG9fZXhwZXJ0IjoxLjAsInNlbmRfdHJhZGV2YW5faW52b2ljZSI6MS4wLCJzaG93X3BlcGVfYW5pbWF0aW9uIjoxLjAsInNlbmRfbmV4dF9wYXltZW50X2luZm9fcmVjZWlwdCI6MS4wLCJzdXBwb3J0X292ZXJuaWdodF9zZXNzaW9uIjoxLjAsInNjcmVlbmVyLWFsZXJ0cy1yZWFkLW9ubHkiOjEuMCwic2NyZWVuZXJfYm9uZF9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfc3RvY2tfYWlfZmlsdGVyc19lbmFibGVkIjoxLjAsInNjcmVlbmVyX2lzX2FsbG93ZWRfdG9fY3JlYXRlX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9yYXRpbmdfY29sdW1uc19yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9zb3J0aW5nX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX2dyb3VwX2J5X2lzaW5fcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfc3ltYm9sX3NlYXJjaF9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9yZWdpc3RyYXRpb25fYmFubmVyX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzZXNfdHJhY2tpbmciOjEuMCwic2VuZF9maW5hbmNpYWxfbm90aWZpY2F0aW9ucyI6MS4wLCJzcGFya190cmFuc2xhdGlvbnMiOjEuMCwic3BhcmtfY2F0ZWdvcnlfdHJhbnNsYXRpb25zIjoxLjAsInNwYXJrX3RhZ3NfdHJhbnNsYXRpb25zIjoxLjAsInByb19wbGFuX2luaXRpYWxfcmVmdW5kc19kaXNhYmxlZCI6MS4wLCJwcmV2aW91c19tb25vcHJvZHVjdF9wdXJjaGFzZXNfcmVmdW5kc19lbmFibGVkIjoxLjAsImVuYWJsZV9pZGVhc19yZWNvbW1lbmRhdGlvbnMiOjEuMCwiZW5hYmxlX2lkZWFzX3JlY29tbWVuZGF0aW9uc19mZWVkIjoxLjAsImZhaWxfb25fZHVwbGljYXRlX3BheW1lbnRfbWV0aG9kc19mb3JfdHJpYWwiOjEuMCwiZXRob2NhX2FsZXJ0X25vdGlmaWNhdGlvbl93ZWJob29rIjoxLjAsImhpZGVfc3VzcGljaW91c191c2Vyc19pZGVhcyI6MS4wLCJkaXNhYmxlX3B1Ymxpc2hfc3RyYXRlZ3lfcmFuZ2VfYmFzZWRfY2hhcnQiOjEuMCwicmVzdHJpY3Rfc2ltdWx0YW5lb3VzX3JlcXVlc3RzIjoxLjAsImxvZ2luX2Zyb21fbmV3X2RldmljZV9lbWFpbCI6MS4wLCJzc3Jfd29ya2VyX25vd2FpdCI6MS4wLCJicm9rZXJfQTFDQVBJVEFMIjoxLjAsImJyb2tlcl9BQ1RJVlRSQURFUyI6MS4wLCJicm9rZXJfQUxDSEVNWU1BUktFVFMiOjEuMCwiYnJva2VyX0FMSUNFQkxVRSI6MS4wLCJoaWRlX0FMT1Jfb25faW9zIjoxLjAsImhpZGVfQUxPUl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfQUxPUl9vbl9tb2JpbGVfd2ViIjoxLjAsImFsb3ItYnJva2Vycy1zaWRlLW1haW50ZW5hbmNlIjoxLjAsImJyb2tlcl9BTFBBQ0EiOjEuMCwiYnJva2VyX0FMUkFNWiI6MS4wLCJicm9rZXJfQU1QIjoxLjAsImJyb2tlcl9BTkdFTE9ORSI6MS4wLCJicm9rZXJfQVZBX0ZVVFVSRVMiOjEuMCwiQVZBX0ZVVFVSRVNfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfQjJQUklNRSI6MS4wLCJicm9rZXJfQkFKQUoiOjEuMCwiYnJva2VyX0JFWU9ORCI6MS4wLCJicm9rZXJfQklOQU5DRSI6MS4wLCJlbmFibGVfYmluYW5jZWFwaXNfYmFzZV91cmwiOjEuMCwiYnJva2VyX0JJTkdCT04iOjEuMCwiYnJva2VyX0JJVEFaWkEiOjEuMCwiYnJva2VyX0JJVEdFVCI6MS4wLCJicm9rZXJfQklUTUVYIjoxLjAsImJyb2tlcl9CSVRTVEFNUCI6MS4wLCJicm9rZXJfQkxBQ0tCVUxMIjoxLjAsImJyb2tlcl9CTFVFQkVSUllNQVJLRVRTIjoxLjAsImJyb2tlcl9CVENDIjoxLjAsImJyb2tlcl9CWUJJVCI6MS4wLCJicm9rZXJfQ0FQSVRBTENPTSI6MS4wLCJicm9rZXJfQ0FQVFJBREVSIjoxLjAsIkNBUFRSQURFUl9zZXBhcmF0ZV9pbnRlZ3JhdGlvbl9taWdyYXRpb25fd2FybmluZyI6MS4wLCJicm9rZXJfQ0ZJIjoxLjAsImJyb2tlcl9DR1NJIjoxLjAsImJyb2tlcl9DSVRZSU5ERVgiOjEuMCwiY2l0eWluZGV4X3NwcmVhZGJldHRpbmciOjEuMCwiQ0xFQVJTVFJFRVRfYmV0YSI6MS4wLCJicm9rZXJfQ01DTUFSS0VUUyI6MS4wLCJicm9rZXJfQ09CUkFUUkFESU5HIjoxLjAsImJyb2tlcl9DT0lOQkFTRSI6MS4wLCJjb2luYmFzZV9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiY29pbmJhc2VfY2FuY2VsX3Bvc2l0aW9uX2JyYWNrZXRzIjoxLjAsImJyb2tlcl9DT0lOSkFSIjoxLjAsIkNPSU5KQVJfYmV0YSI6MS4wLCJicm9rZXJfQ09JTlNXSVRDSCI6MS4wLCJicm9rZXJfQ09JTlciOjEuMCwiYnJva2VyX0NPTE1FWCI6MS4wLCJoaWRlX0NRR19vbl9pb3MiOjEuMCwiaGlkZV9DUUdfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0NRR19vbl9tb2JpbGVfd2ViIjoxLjAsImNxZy1yZWFsdGltZS1iYW5kd2lkdGgtbGltaXQiOjEuMCwiYnJva2VyX0NSWVBUT0NPTSI6MS4wLCJoaWRlX0NVUlJFTkNZQ09NX29uX2lvcyI6MS4wLCJoaWRlX0NVUlJFTkNZQ09NX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9DVVJSRU5DWUNPTV9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9DWE0iOjEuMCwiYnJva2VyX0RBT0wiOjEuMCwiYnJva2VyX0RBUldJTkVYIjoxLjAsIkRBUldJTkVYX2JldGEiOjEuMCwiYnJva2VyX0RFTFRBIjoxLjAsImJyb2tlcl9ERVJBWUFIIjoxLjAsImJyb2tlcl9ERVJJViI6MS4wLCJicm9rZXJfREhBTiI6MS4wLCJicm9rZXJfRE5TRSI6MS4wLCJicm9rZXJfRE9STUFOIjoxLjAsImhpZGVfRFVNTVlfb25faW9zIjoxLjAsImhpZGVfRFVNTVlfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0RVTU1ZX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0VBU1lNQVJLRVRTIjoxLjAsImJyb2tlcl9FQ09WQUxPUkVTIjoxLjAsImJyb2tlcl9FREdFQ0xFQVIiOjEuMCwiZWRnZWNsZWFyX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX0VJR0hUQ0FQIjoxLjAsImJyb2tlcl9FUlJBTlRFIjoxLjAsImJyb2tlcl9FU0FGWCI6MS4wLCJGSURFTElUWV9iZXRhIjoxLjAsIkZJREVMSVRZX3VzX3JlbGVhc2UiOjAuMjUsImZpZGVsaXR5X3NlY3VyaXR5X3Rva2VuIjoxLjAsImJyb2tlcl9GT1JFWENPTSI6MS4wLCJmb3JleGNvbV9zZXNzaW9uX3YyIjoxLjAsImJyb2tlcl9GUE1BUktFVFMiOjEuMCwiaGlkZV9GVFhfb25faW9zIjoxLjAsImhpZGVfRlRYX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9GVFhfb25fbW9iaWxlX3dlYiI6MS4wLCJmdHhfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImJyb2tlcl9GVVNJT05NQVJLRVRTIjoxLjAsImZ4Y21fc2VydmVyX2xvZ2dlciI6MS4wLCJicm9rZXJfRlhDTSI6MS4wLCJoaWRlX0ZYT1BFTl9vbl9pb3MiOjEuMCwiaGlkZV9GWE9QRU5fb25fYW5kcm9pZCI6MS4wLCJoaWRlX0ZYT1BFTl9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9GWFBSTyI6MS4wLCJicm9rZXJfRlhURiI6MS4wLCJicm9rZXJfRllFUlMiOjEuMCwiYnJva2VyX0dBVEUiOjEuMCwiYnJva2VyX0dCRUJST0tFUlMiOjEuMCwiZ2VtaW5pLWJyb2tlcnMtc2lkZS1tYWludGVuYW5jZSI6MS4wLCJicm9rZXJfR0VOSUFMSU5WRVNUSU1FTlRPUyI6MS4wLCJoaWRlX0dMT0JBTFBSSU1FX29uX2lvcyI6MS4wLCJoaWRlX0dMT0JBTFBSSU1FX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9HTE9CQUxQUklNRV9vbl9tb2JpbGVfd2ViIjoxLjAsImdsb2JhbHByaW1lLWJyb2tlcnMtc2lkZS1tYWludGVuYW5jZSI6MS4wLCJicm9rZXJfR09NQVJLRVRTIjoxLjAsImJyb2tlcl9HT1RSQURFIjoxLjAsImdvdHJhZGVfZW5hYmxlX3N0cmVhbWluZ19lbmRwb2ludHMiOjEuMCwiYnJva2VyX0hFUkVOWUEiOjEuMCwiaGlkZV9IVFhfb25faW9zIjoxLjAsImhpZGVfSFRYX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9IVFhfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfSUJLUiI6MS4wLCJjaGVja19pYmtyX3NpZGVfbWFpbnRlbmFuY2UiOjEuMCwiaWJrcl9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiaWJrcl9wYXJhbGxlbF9wcm92aWRlcl9pbml0aWFsaXphdGlvbiI6MS4wLCJpYmtyX3dzX2FjY291bnRfc3VtbWFyeSI6MS4wLCJpYmtyX3dzX3NlcnZlcl9sb2dnZXIiOjEuMCwiaWJrcl9zdWJzY3JpYmVfdG9fb3JkZXJfdXBkYXRlc19maXJzdCI6MS4wLCJpYmtyX3dzX2FjY291bnRfbGVkZ2VyIjoxLjAsImJyb2tlcl9JQlJPS0VSIjoxLjAsImJyb2tlcl9JQ01BUktFVFMiOjEuMCwiYnJva2VyX0lDTUFSS0VUU19BU0lDIjoxLjAsImJyb2tlcl9JQ01BUktFVFNfRVUiOjEuMCwiYnJva2VyX0lHIjoxLjAsImJyb2tlcl9JTkRTVE9DS1MiOjEuMCwiYnJva2VyX0lORk9ZQVRJUklNIjoxLjAsImJyb2tlcl9JTk5PVkVTVFgiOjEuMCwiYnJva2VyX0lOVEVSQUNUSVZFSUwiOjEuMCwiYnJva2VyX0lOVkVTVFJBREUiOjEuMCwiSU5WRVNUUkFERV9iZXRhIjoxLjAsImJyb2tlcl9JUk9OQkVBTSI6MS4wLCJoaWRlX0lST05CRUFNX0NRR19vbl9pb3MiOjEuMCwiaGlkZV9JUk9OQkVBTV9DUUdfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0lST05CRUFNX0NRR19vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9LSVdPT00iOjEuMCwia2l3b29tX3VzZV9zZXBhcmF0ZV9zdHJlYW1pbmdfdXJsIjoxLjAsImJyb2tlcl9LT1RBSyI6MS4wLCJoaWRlX0tPVEFLX29uX2lvcyI6MS4wLCJoaWRlX0tPVEFLX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9LT1RBS19vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9LUkFLRU4iOjEuMCwiaGlkZV9LUkFLRU5fb25faW9zIjoxLjAsImhpZGVfS1JBS0VOX29uX2FuZHJvaWQiOjEuMCwiS1JBS0VOX2JldGEiOjEuMCwia3Jha2VuX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJicm9rZXJfS1NFQ1VSSVRJRVMiOjEuMCwiYnJva2VyX0xJQkVSQVRPUiI6MS4wLCJicm9rZXJfTUVYQyI6MS4wLCJicm9rZXJfTUVYRU0iOjEuMCwiYnJva2VyX01JREFTIjoxLjAsImhpZGVfTU9DS0JST0tFUl9vbl9pb3MiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX29uX21vYmlsZV93ZWIiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0lNUExJQ0lUX29uX2lvcyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfSU1QTElDSVRfb25fYW5kcm9pZCI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfSU1QTElDSVRfb25fbW9iaWxlX3dlYiI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfQ09ERV9vbl9pb3MiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0NPREVfb25fYW5kcm9pZCI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfQ09ERV9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9NT09NT08iOjEuMCwiYnJva2VyX01PVElMQUxPU1dBTCI6MS4wLCJicm9rZXJfTklOSkFUUkFERVIiOjEuMCwiYnJva2VyX09BTkRBIjoxLjAsIm9hbmRhX3NlcnZlcl9sb2dnaW5nIjoxLjAsIm9hbmRhX29hdXRoX211bHRpcGxleGluZyI6MS4wLCJicm9rZXJfT0tYIjoxLjAsImJyb2tlcl9PUE9GSU5BTkNFIjoxLjAsImJyb2tlcl9PUFRJTVVTIjoxLjAsImJyb2tlcl9PU01BTkxJIjoxLjAsImJyb2tlcl9PU01BTkxJRlgiOjEuMCwicGFwZXJfZm9yY2VfY29ubmVjdF9wdXNoc3RyZWFtIjoxLjAsInBhcGVyX3N1YmFjY291bnRfY3VzdG9tX2N1cnJlbmN5IjoxLjAsInBhcGVyX291dHNpZGVfcnRoIjoxLjAsImJyb2tlcl9QQVlUTSI6MS4wLCJicm9rZXJfUEVQUEVSU1RPTkUiOjEuMCwiYnJva2VyX1BIRU1FWCI6MS4wLCJicm9rZXJfUEhJTExJUENBUElUQUxfVFIiOjEuMCwiYnJva2VyX1BISUxMSVBOT1ZBIjoxLjAsImJyb2tlcl9QTFVTNTAwIjoxLjAsInBsdXM1MDBfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJQTFVTNTAwVVNfYmV0YSI6MS4wLCJicm9rZXJfUFVSUExFVFJBRElORyI6MS4wLCJicm9rZXJfUVVFU1RSQURFIjoxLjAsImJyb2tlcl9SQVZBQlVSU0FUSUwiOjEuMCwiUkFWQUJVUlNBVElMX2JldGEiOjEuMCwiYnJva2VyX1JJWUFEQ0FQSVRBTCI6MS4wLCJicm9rZXJfUk9CT01BUktFVFMiOjEuMCwiYnJva2VyX1JFUExBWUJST0tFUiI6MS4wLCJicm9rZXJfU0FNVUVMIjoxLjAsImJyb2tlcl9TQVhPQkFOSyI6MS4wLCJicm9rZXJfU0hBUkVNQVJLRVQiOjEuMCwiYnJva2VyX1NLSUxMSU5HIjoxLjAsImJyb2tlcl9TUFJFQURFWCI6MS4wLCJicm9rZXJfU1dJU1NRVU9URSI6MS4wLCJicm9rZXJfU1RPTkVYIjoxLjAsImJyb2tlcl9UQVNUWUZYIjoxLjAsImJyb2tlcl9UQVNUWVRSQURFIjoxLjAsImJyb2tlcl9USElOS01BUktFVFMiOjEuMCwidGhpbmttYXJrZXRzX2FjY291bnRfZGF0YV9zdHJlYW1pbmciOjEuMCwiYnJva2VyX1RJQ0tNSUxMIjoxLjAsImhpZGVfVElHRVJfb25faW9zIjoxLjAsImhpZGVfVElHRVJfb25fYW5kcm9pZCI6MS4wLCJoaWRlX1RJR0VSX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX1RSQURFTkFUSU9OIjoxLjAsImJyb2tlcl9UUkFERVNUQVRJT04iOjEuMCwidHJhZGVzdGF0aW9uX3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJ0cmFkZXN0YXRpb25fYWNjb3VudF9kYXRhX3N0cmVhbWluZyI6MS4wLCJ0cmFkZXN0YXRpb25fc3RyZWFtaW5nX3NlcnZlcl9sb2dnaW5nIjoxLjAsImJyb2tlcl9UUkFERVpFUk8iOjEuMCwiYnJva2VyX1RSQURJRVIiOjEuMCwiYnJva2VyX1RSQURJRVJfRlVUVVJFUyI6MS4wLCJ0cmFkaWVyX2Z1dHVyZXNfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfVFJBRE9WQVRFIjoxLjAsImhpZGVfVFJBRFVfb25faW9zIjoxLjAsImhpZGVfVFJBRFVfb25fYW5kcm9pZCI6MS4wLCJoaWRlX1RSQURVX29uX21vYmlsZV93ZWIiOjEuMCwidHJhZHVfc3ByZWFkX2JldCI6MS4wLCJicm9rZXJfVFJJVkUiOjEuMCwiYnJva2VyX1ZBTlRBR0UiOjEuMCwiYnJva2VyX1ZFTE9DSVRZIjoxLjAsImJyb2tlcl9XRUJVTEwiOjEuMCwiYnJva2VyX1dFQlVMTEpBUEFOIjoxLjAsImJyb2tlcl9XRUJVTExQQVkiOjEuMCwiYnJva2VyX1dFQlVMTFVLIjoxLjAsImJyb2tlcl9XSElURUJJVCI6MS4wLCJicm9rZXJfV0hTRUxGSU5WRVNUIjoxLjAsImJyb2tlcl9XSFNFTEZJTlZFU1RfRlVUVVJFUyI6MS4wLCJXSFNFTEZJTlZFU1RfRlVUVVJFU19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9YQ1VCRSI6MS4wLCJicm9rZXJfWUxHIjoxLjAsImJyb2tlcl9pZF9zZXNzaW9uIjoxLjAsImRpc2FsbG93X2NvbmN1cnJlbnRfc2Vzc2lvbnMiOjEuMCwidXNlX2NvZGVfZmxvd192Ml9wcm92aWRlciI6MS4wLCJ1c2VfY29kZV9mbG93X3YyX3Byb3ZpZGVyX2Zvcl91bnRlc3RlZF9icm9rZXJzIjoxLjAsIm1vYmlsZV90cmFkaW5nX3dlYiI6MS4wLCJtb2JpbGVfdHJhZGluZ19pb3MiOjEuMCwibW9iaWxlX3RyYWRpbmdfYW5kcm9pZCI6MS4wLCJjb250aW51b3VzX2Zyb250X2NvbnRyYWN0X3RyYWRpbmciOjEuMCwidHJhZGluZ19yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwicmVzdF9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwib2F1dGgyX2NvZGVfZmxvd19wcm92aWRlcl9zZXJ2ZXJfbG9nZ2VyIjoxLjAsInJlc3Rfb2F1dGgyX2NvZGVfZmxvd19tdWx0aXBsZXhpbmciOjEuMCwicmVzdF9sb2dvdXRfb25fNDI5IjoxLjAsInJldmlld19wb3B1cF9vbl9jaGFydCI6MS4wLCJzaG93X2NvbmN1cnJlbnRfY29ubmVjdGlvbl93YXJuaW5nIjoxLjAsImVuYWJsZV90cmFkaW5nX3NlcnZlcl9sb2dnZXIiOjEuMCwib3JkZXJfcHJlc2V0cyI6MS4wLCJvcmRlcl90aWNrZXRfcmVzaXphYmxlX2RyYXdlcl9vbiI6MS4wLCJyZXN0X3VzZV9hc3luY19tYXBwZXIiOjEuMCwicGFwZXJfY29tcGV0aXRpb25fYmFubmVyX3Nob3dfcHJvIjoxLjAsInBhcGVyX2NvbXBldGl0aW9uX3N0YXJ0ZWRfZGlhbG9nIjoxLjAsInBhcGVyX2NvbXBldGl0aW9uX3N0YXJ0ZWRfZGlhbG9nX3Nob3dfcHJvIjoxLjAsInBhcGVyX2NvbXBldGl0aW9uX2xlYWRlcmJvYXJkIjoxLjAsInBhcGVyX2NvbXBldGl0aW9uX3ByZXZpb3VzX2NvbXBldGl0aW9ucyI6MS4wLCJhbXBfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJibHVlbGluZV9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImRvcm1hbl9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImlyb25iZWFtX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwib3B0aW11c19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsInN0b25leF9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsInlsZ19vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsInRyYWRpbmdfZ2VuZXJhbF9ldmVudHNfZ2FfdHJhY2tpbmciOjEuMCwicmVwbGF5X3Jlc3VsdF9zaGFyaW5nIjoxLjAsInJlcGxheV90cmFkaW5nX2JyYWNrZXRzIjoxLjAsImhpZGVfYWxsX2Jyb2tlcnNfYnV0dG9uX2luX2lvc19hcHAiOjEuMCwiZm9yY2VfbWF4X2FsbG93ZWRfcHVsbGluZ19pbnRlcnZhbHMiOjEuMCwicGFwZXJfZGVsYXlfdHJhZGluZyI6MS4wLCJlbmFibGVfZmlyc3RfdG91Y2hfaXNfc2VsZWN0aW9uIjoxLjAsImNsZWFyX3Byb2plY3Rfb3JkZXJfb25fb3JkZXJfdGlja2V0X2Nsb3NlIjoxLjAsImVuYWJsZV9uZXdfYmVoYXZpb3Jfb2ZfY29uZmlybV9idXR0b25zX29uX21vYmlsZSI6MS4wLCJyZW5ld190b2tlbl9wcmVlbXB0aW9uXzMwIjoxLjAsImRvX25vdF9vcGVuX290X2Zyb21fcGx1c19idXR0b24iOjEuMCwiYnJva2VyX3NpZGVfcHJvbW90aW9uIjoxLjAsImVuYWJsZV9uZXdfdHJhZGluZ19tZW51X3N0cnVjdHVyZSI6MS4wLCJxdWlja190cmFkaW5nX3BhbmVsIjoxLjAsInBhcGVyX29yZGVyX2NvbmZpcm1hdGlvbl9kaWFsb2ciOjEuMCwicGFwZXJfbXVsdGlwbGVfbGV2ZWxzX2VuYWJsZWQiOjEuMCwicGFwZXJfbWFyZ2luX2NvbnRyb2wiOjEuMCwiZW5hYmxlX3NlZ21lbnRhdGlvbl9wYXBlcl90cmFkaW5nIjoxLjAsImVuYWJsZV9jaGFydF9hZGFwdGl2ZV90cHNsX2J1dHRvbnNfb25fbW9iaWxlIjoxLjAsImVuYWJsZV9tYXJrZXRfcHJvamVjdF9vcmRlciI6MS4wLCJlbmFibGVfc3ltYm9sc19wb3B1bGFyaXR5X3Nob3dpbmciOjEuMCwiZW5hYmxlX3RyYW5zbGF0aW9uc19zM191cGxvYWQiOjEuMCwiZXRmX2Z1bmRfZmxvd3Nfb25seV9kYXlzX3Jlc29sdXRpb25zIjoxLjAsImRpc2FibGVfc25vd3Bsb3dfcGxhdGZvcm1fZXZlbnRzIjoxLjAsIm5vdGlmeV9pZGVhX21vZHNfYWJvdXRfZmlyc3RfcHVibGljYXRpb24iOjEuMCwiZW5hYmxlX3dhZl90cmFja2luZyI6MS4wLCJuZXdfZXJyb3JzX2Zsb3ciOjEuMCwicXVvdGUtdG9rZW4tZmlsdGVyLW93bi1zY3JpcHRzLWJ5LWFjY2VzcyI6MS4wLCJrZWVwX2luZGljYXRvcnNfc2VhcmNoX3N0YXRlIjoxLjAsImtlZXBfaW5kaWNhdG9yc190YWJfc2Nyb2xsX3N0YXRlIjoxLjAsImNvbmZpZ3VyYWJsZV9zZWFyY2hfYW5kX2ZpbHRyYXRpb24iOjEuMCwicGluZV9lZGl0b3Jfd3JhcF9vbl9saW5lX3NwbGl0IjoxLjAsInN5bWJvbF9zZWFyY2hfY291bnRyeV9zb3VyY2VzIjoxLjAsIndhdGNobGlzdHNfZGlhbG9nX3Njcm9sbF90b19hY3RpdmUiOjEuMCwiYm90dG9tX3BhbmVsX3RyYWNrX2V2ZW50cyI6MS4wLCJzbm93cGxvd19iZWFjb25fZmVhdHVyZSI6MS4wLCJzaG93X2RhdGFfcHJvYmxlbXNfaW5faGVscF9jZW50ZXIiOjEuMCwiZW5hYmxlX2FwcGxlX2RldmljZV9jaGVjayI6MS4wLCJlbmFibGVfYXBwbGVfaW50cm9fb2ZmZXJfc2lnbmF0dXJlIjoxLjAsImVuYWJsZV9hcHBsZV9wcm9tb19vZmZlcl9zaWduYXR1cmVfdjIiOjEuMCwiZW5hYmxlX2FwcGxlX3Byb21vX3NpZ25hdHVyZSI6MS4wLCJlbmFibGVfcHVzaF9ub3RpZmljYXRpb25zX2FuZHJvaWQiOjEuMCwiZW5hYmxlX3B1c2hfbm90aWZpY2F0aW9uc19pb3MiOjEuMCwiZW5hYmxlX21hbnRpY29yZV9jbHVzdGVyIjoxLjAsImVuYWJsZV9wdXNoc3RyZWFtX2F1dGgiOjEuMCwiZW5hYmxlX2Vudm95X3Byb3h5IjoxLjAsImVuYWJsZV9lbnZveV9wcm94eV9wYXBlcnRyYWRpbmciOjEuMCwiZW5hYmxlX2Vudm95X3Byb3h5X3NjcmVlbmVyIjoxLjAsIm9wdGlvbnNfcmVkdWNlX3BvbGxpbmdfaW50ZXJ2YWwiOjEuMCwib3B0aW9uc19idWlsZGVyX2dyb3VwX2FjdGlvbnMiOjEuMCwib3B0aW9uc19jaGFpbl9zaWdtYV9maWx0ZXIiOjEuMCwib3B0aW9uc19icm9rZXJfc3RyYXRlZ2llcyI6MS4wLCJzaG93X3RvYXN0X2Fib3V0X3VucmVhZF9tZXNzYWdlIjoxLjAsImVuYWJsZV9wYXJ0bmVyX3BheW91dCI6MS4wLCJlbmFibGVfZW1haWxfY2hhbmdlX2xvZ2dpbmciOjEuMCwiZW5hYmxlX2VtYWlsX29uX3BhcnRuZXJfc3RhdHVzX2NoYW5nZSI6MS4wLCJlbmFibGVfcGFydG5lcl9wcm9ncmFtX2FwcGx5IjoxLjAsImVuYWJsZV9wYXJ0bmVyX3Byb2dyYW0iOjEuMCwiY29tcHJlc3NfY2FjaGVfZGF0YSI6MS4wLCJuZXdzX2VuYWJsZV9zdHJlYW1pbmciOjEuMCwibmV3c19zY3JlZW5lcl9wYWdlX2NsaWVudCI6MS4wLCJlbmFibGVfZGVjbGFyYXRpb25fcG9wdXBfb25fbG9hZCI6MS4wLCJzaG93X2RhdGFfYm9uZHNfZnJlZV91c2VycyI6MS4wLCJlbmFibGVfbW9kZXJuX3JlbmRlcl9tb2RlIjoxLjAsImVuYWJsZV9wcm9mX3BvcHVwX2ZyZWUiOjEuMCwiaW9zX2FwcF9uZXdzX2FuZF9taW5kcyI6MS4wLCJkb19ub3RfZGlzY2xvc2VfcGhvbmVfb2NjdXBhbmN5IjoxLjAsImVuYWJsZV9yZWRpcmVjdF90b193aWRnZXRfZG9jdW1lbnRhdGlvbl9vZl9hbnlfbG9jYWxpemF0aW9uIjoxLjAsIm5ld3NfZW5hYmxlX3N0cmVhbWluZ19oaWJlcm5hdGlvbiI6MS4wLCJuZXdzX3N0cmVhbWluZ19oaWJlcm5hdGlvbl9kZWxheV8xMG1pbiI6MS4wLCJwYXNzX3JlY292ZXJ5X3NlYXJjaF9oaWRlX2luZm8iOjEuMCwibmV3c19lbmFibGVfc3RyZWFtaW5nX29uX3NjcmVlbmVyIjoxLjAsImVuYWJsZV9mb3JjZWRfZW1haWxfY29uZmlybWF0aW9uIjoxLjAsInNob3dfZ2lmdF9idXR0b24iOjEuMCwiYWRkcmVzc192YWxpZGF0aW9uX2VuYWJsZWQiOjEuMCwiZGlzYWJsZV91bnZlcmlmaWVkX2FkZHJlc3MiOjEuMCwiZ2VuZXJhdGVfaW52b2ljZV9udW1iZXJfYnlfY291bnRyeSI6MS4wLCJzaG93X2Zhdm9yaXRlX2xheW91dHMiOjEuMCwiZW5hYmxlX3NvY2lhbF9hdXRoX2NvbmZpcm1hdGlvbiI6MS4wLCJlbmFibGVfYWRfYmxvY2tfZGV0ZWN0IjoxLjAsInR2ZF9uZXdfdGFiX2xpbmtpbmciOjEuMCwidHZkX3RpbWVfYW5kX2RhdGVfcmFuZ2VfbGlua2luZyI6MS4wLCJ1c2VfYnJvd3Nlcl9zZXNzaW9uX3N0b3JhZ2UiOjEuMCwidXNlX2Rlc2t0b3Bfc2Vzc2lvbl9zdG9yYWdlIjoxLjAsIndyb25nX2FjY291bnRfZGlhbG9nX3ByaW1hcnlfc3dpdGNoIjoxLjAsImVuYWJsZV9saW5ndWFfbGFuZ19jaGVjayI6MS4wLCJnZXRfc2F2ZWRfYWN0aXZlX2xpc3RfYmVmb3JlX2dldHRpbmdfYWxsX2xpc3RzIjoxLjAsIndhdGNobGlzdF9hZGRfc291cmNlX3BhcmFtIjoxLjAsInNob3dfcmVmZXJyYWxfbm90aWZpY2F0aW9uX2RpYWxvZyI6MS4wLCJzZXRfbmV3X2JsYWNrX2NvbG9yIjoxLjAsIm5ld3NfdXNlX25ld3NfbWVkaWF0b3IiOjEuMCwiYWxsb3dfdHJhaWxpbmdfd2hpdGVzcGFjZV9pbl9udW1iZXJfdG9rZW4iOjEuMCwicmVzdHJpY3RfcHduZWRfcGFzc3dvcmRfc2V0IjoxLjAsIm5vdGlmX3NldHRpbmdzX2VuYWJsZV9uZXdfc3RvcmUiOjEuMCwibm90aWZfc2V0dGluZ3NfZGlzYWJsZV9vbGRfc3RvcmVfd3JpdGUiOjEuMCwibm90aWZfc2V0dGluZ3NfZGlzYWJsZV9vbGRfc3RvcmVfcmVhZCI6MS4wLCJjaGVja291dC1lbmFibGUtcmlza3NkayI6MS4wLCJjaGVja291dC1lbmFibGUtcmlza3Nkay1mb3ItaW5pdGlhbC1wdXJjaGFzZSI6MS4wLCJlbmFibGVfbWV0YWRlZmVuZGVyX2NoZWNrX2Zvcl9hZ3JlZW1lbnQiOjEuMCwic2hvd19kb3dubG9hZF95aWVsZF9jdXJ2ZXNfZGF0YSI6MS4wLCJtb3ZlX2tleV90ZW5vcnNfdG9fc2V0dGluZ3MiOjEuMCwic2hvd195aWVsZF9jdXJ2ZXNfbWFwIjoxLjAsImRpc2FibGVfd2lkZ2V0YmFyX2luX2FwcHMiOjEuMCwiaGlkZV9wdWJsaWNhdGlvbnNfb2ZfYmFubmVkX3VzZXJzIjoxLjAsImVuYWJsZV9zdW1tYXJ5X3VwZGF0ZXNfZnJvbV9jaGFydF9zZXNzaW9uIjoxLjAsInNob3dfbmV3c19mbG93X3Rvb2xfcmlnaHRfYmFyIjoxLjAsImVuYWJsZV9jaGFydF9zYXZpbmdfc3RhdHMiOjEuMCwiZW5hYmxlX3NhdmluZ19zYW1lX2NoYXJ0X3JhdGVfbGltaXQiOjEuMCwibmV3c19hbGVydHNfZW5hYmxlZCI6MS4wLCJuZXdzX211bHRpcGxlX2FsZXJ0c19lbmFibGVkIjoxLjAsInJlZnVuZF91bnZvaWRhYmxlX2NvdXBvbnNfZW5hYmxlZCI6MS4wLCJlbmFibGVfc25vd3Bsb3dfZW1haWxfdHJhY2tpbmciOjEuMCwibmV3c19lbmFibGVfc2VudGltZW50IjoxLjAsInVzZV9pbl9zeW1ib2xfc2VhcmNoX29wdGlvbnNfbWN4X2V4Y2hhbmdlIjoxLjAsImVuYWJsZV91c2Vyc2V0dGluZ3Nfc3ltYm9sc19wZXJfcm93X3NvZnRfbGltaXQiOjAuMSwiZm9yYmlkX2xvZ2luX3dpdGhfcHduZWRfcGFzc3dvcmRzIjoxLjAsImRlYnVnX2dldF90ZXN0X2JhcnNfZGF0YSI6MS4wLCJuZXdzX3VzZV9tZWRpYXRvcl9zdG9yeSI6MS4wLCJuZXdzX2Zsb3dfcmVjb25maWd1cmVfZmlsdGVycyI6MS4wLCJibGFja19mcmlkYXlfZW5hYmxlX3NraXBfdG9fcGF5bWVudCI6MS4wLCJoaWRlX3RyYWRpbmdfYnV0dG9uX29uX2JvdHRvbV9wYW5lbF9hbmRfcmVwbGF5X3RhYiI6MS4wLCJoaWRlX3RyYWRlX2J1dHRvbl9oaW50X2luX2hlYWRlcl90b29sYmFyIjoxLjAsImhpZGVfc2VlX29uX3N1cGVyX2NoYXJ0c19idXR0b24iOjEuMCwiaGlkZV9zeW1ib2xfcGFnZV9jaGFydF90eXBlX3N3aXRjaGVyIjoxLjAsImRpc2FibGVfY2hhdF9zcGFtX3Byb3RlY3Rpb25fZm9yX3ByZW1pdW1fdXNlcnMiOjEuMCwiZGlzYWJsZV9wdWJsaWNfcGluZV9zY3JpcHRfcHVibGlzaF9saW1pdHMiOjEuMCwibWFrZV90cmFkaW5nX3BhbmVsX2NvbnRleHR1YWxfdGFiIjoxLjAsInJlY29ubmVjdF9nYWluX3Nlc3Npb25fb25fbHNfZXJyb3IiOjEuMCwiY2hlY2tvdXQtZmxvdy1wYXltZW50cyI6MS4wLCJmb3JjZV90b19jb21wbGV0ZV9reWMiOjEuMCwiaW5kaWFfZXhjbHVkZV9icmFpbnRyZWVfdGFiIjoxLjAsIm1hY3JvX21hcHNfaGlkZV90b29sdGlwX2NoYXJ0X2J1dHRvbiI6MS4wLCJmb3JjZV9reWNfZm9yX25vbnByb19wdXJjaGFzZV9ieV9jb21tZXJjaWFsIjoxLjAsInNob3dfc3BsaXRfcGFuZWxfZnVsbHNjcmVlbl9idXR0b24iOjEuMCwic2hvd19zcGxpdF9wYW5lbF9tb3ZlX2J1dHRvbl90b190aXRsZSI6MS4wLCJvcmRlcl9wcmVzZXRzX2NydWRfc3RvcmFnZSI6MS4wLCJvcmRlcl9wcmVzZXRzX3JlbW92ZV9mcm9tX3R2X3NldHRpbmdzIjoxLjAsImNoZWNrb3V0LWZsb3ctdHJpYWwiOjEuMCwiY2hlY2tvdXQtZmxvdy1nb29nbGVwYXkiOjEuMCwiY2hlY2tvdXQtZmxvdy1hcHBsZXBheSI6MS4wLCJjaGVja291dC1mbG93LXBheXBhbCI6MS4wLCJmb3JiaWRfc2lnbnVwX3dpdGhfZmFrZV9nbWFpbF9kb21haW5zIjoxLjAsInNob3dfaW1wb3J0X2Zyb21fcGFwZXJfdHJhZGluZ19idXR0b24iOjEuMCwic3ltYm9sX3NlYXJjaF9ncm91cGluZyI6MS4wLCJjaGVja291dC1mbG93LWdvb2dsZXBheS10cmlhbCI6MS4wLCJjaGVja291dC1mbG93LWFwcGxlcGF5LXRyaWFsIjoxLjAsImNoZWNrb3V0LWZsb3ctcGF5cGFsLXRyaWFsIjoxLjAsInZvaWRfbm90X2ZvdW5kX2Nrb19wYXltZW50X2luX2FwcHJvdmVkX3dlYmhvb2siOjEuMCwic2hvd19wYW5lbF9jb2xsYXBzZV9idXR0b24iOjEuMCwiZGVsYXlfc3RhdHVzX29uX2xhc3RfYmFyIjowLjV9Owp3aW5kb3cuaW5pdERhdGEgPSB7fTsKCQl3aW5kb3cuUzNfTE9HT19TRVJWSUNFX0JBU0VfVVJMID0gImh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tLyI7Cgp3aW5kb3cuaW5pdERhdGEgPSB7IndpZGdldERlZmF1bHRzIjp7IndpZHRoIjo3NzAsImhlaWdodCI6NDAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiY3VycmVuY2llcyI6WyJFVVIiLCJVU0QiLCJKUFkiLCJHQlAiLCJDSEYiLCJBVUQiLCJDQUQiLCJOWkQiXSwiZnJhbWVFbGVtZW50SWQiOm51bGwsImF1dG9zaXplIjpmYWxzZSwiY29sb3JUaGVtZSI6ImxpZ2h0IiwibG9jYWxlIjoiZW4ifX07CgkJd2luZG93LmluaXREYXRhLmN1cnJlbnRMb2NhbGVJbmZvID0geyJsYW5ndWFnZSI6ImVuIiwibGFuZ3VhZ2VfbmFtZSI6IkVuZ2xpc2giLCJmbGFnIjoidXMiLCJnZW9pcF9jb2RlIjoidXMiLCJpc28iOiJlbiIsImlzb182MzlfMyI6ImVuZyIsImdsb2JhbF9uYW1lIjoiRW5nbGlzaCIsImlzX29ubHlfcmVjb21tZW5kZWRfdHdfYXV0b3JlcG9zdCI6dHJ1ZX07CgkJd2luZG93LmluaXREYXRhLnNldHRpbmdzID0geydTM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkwnOiAnaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vJywgJ1MzX05FV1NfSU1BR0VfU0VSVklDRV9CQVNFX1VSTCc6ICdodHRwczovL3MzLnRyYWRpbmd2aWV3LmNvbS9uZXdzLycsICdXRUJQQUNLX1NUQVRJQ19QQVRIJzogJ2h0dHBzOi8vc3RhdGljLnRyYWRpbmd2aWV3LmNvbS9zdGF0aWMvYnVuZGxlcy8nLCAnVFJBRElOR19VUkxTJzogeydmcmVlJzogJ2h0dHBzOi8vcGFwZXJ0cmFkaW5nLWZyZWUudHJhZGluZ3ZpZXcuY29tJywgJ3Bybyc6ICdodHRwczovL3BhcGVydHJhZGluZy50cmFkaW5ndmlldy5jb20nfSwgJ0NPTlRFU1RTX1VSTCc6ICcvcGFwZXItdHJhZGluZycsICdDUlVEX1NUT1JBR0VfVVJMJzogJ2h0dHBzOi8vY3J1ZC1zdG9yYWdlLnRyYWRpbmd2aWV3LmNvbSd9Ozwvc2NyaXB0PgoKCTxzY3JpcHQgbm9uY2U9IkJlMmhWbzRsVWUwYmdsWW90RFJPbkE9PSI+CgkJKCgpPT57InVzZSBzdHJpY3QiO2NvbnN0IGU9e3doaXRlbGFiZWw6ITAscGVybWlzc2lvbk92ZXJyaWRlczohMCxsaW5rQ2FwdHVyaW5nQWxsb3dlZDohMCxzeW1ib2xfc2VhcmNoX2RlZmF1bHRfZXhjaGFuZ2U6ITAsc3ltYm9sX3NlYXJjaF9hbGxvd2VkX2V4Y2hhbmdlczohMH07Y29uc3QgdD13aW5kb3c7dC5pbml0RGF0YT10LmluaXREYXRhfHx7fTtjb25zdCBhPS9cKy9nLG49LzxcLz9bXj5dKyg+fCQpL2cscz1lPT5kZWNvZGVVUklDb21wb25lbnQoZS5yZXBsYWNlKGEsIiAiKSkucmVwbGFjZShuLCIiKSxvPXQubG9jYXRpb24uc2VhcmNoLnN1YnN0cmluZygxKSxjPS8oW14mPV0rKT0/KFteJl0qKS9nLGk9e307bGV0IGwscj1jLmV4ZWMobyk7Zm9yKDtudWxsIT09cjspaVtzKHJbMV0pXT1zKHJbMl0pLHI9Yy5leGVjKG8pO3RyeXtsPUpTT04ucGFyc2UoZGVjb2RlVVJJQ29tcG9uZW50KHQubG9jYXRpb24uaGFzaC5zdWJzdHJpbmcoMSkpKSwib2JqZWN0Ij09dHlwZW9mIGwmJm51bGwhPT1sfHwobD17fSl9Y2F0Y2goZSl7bD17fX12YXIgaDt0LmluaXREYXRhLnF1ZXJ5U2V0dGluZ3M9aSx0LmluaXREYXRhLmhhc2hTZXR0aW5ncz0oaD1sLE9iamVjdC5rZXlzKGgpLmZvckVhY2goKHQ9PntlW3RdJiZkZWxldGUgaFt0XX0pKSxoKX0pKCk7Cgk8L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJCZTJoVm80bFVlMGJnbFlvdERST25BPT0iPndpbmRvdy5TU19IT1NUID0gInN5bWJvbC1zZWFyY2gudHJhZGluZ3ZpZXcuY29tIjsKCQl3aW5kb3cuV0lER0VUX1NIRVJJRkZfSE9TVCA9ICJodHRwczovL3dpZGdldC1zaGVyaWZmLnRyYWRpbmd2aWV3LXdpZGdldC5jb20iOwoJCXdpbmRvdy5pc19hdXRoZW50aWNhdGVkID0gZmFsc2U7CgoKCQl3aW5kb3cubG9jYWxlX2RvbWFpbnMgPSB7ImVuIjoid3d3LnRyYWRpbmd2aWV3LmNvbSIsImFyX0FFIjoiYXIudHJhZGluZ3ZpZXcuY29tIiwiYnIiOiJici50cmFkaW5ndmlldy5jb20iLCJkZV9ERSI6ImRlLnRyYWRpbmd2aWV3LmNvbSIsImVzIjoiZXMudHJhZGluZ3ZpZXcuY29tIiwiZnIiOiJmci50cmFkaW5ndmlldy5jb20iLCJoZV9JTCI6ImlsLnRyYWRpbmd2aWV3LmNvbSIsImlkIjoiaWQudHJhZGluZ3ZpZXcuY29tIiwiaW4iOiJpbi50cmFkaW5ndmlldy5jb20iLCJpdCI6Iml0LnRyYWRpbmd2aWV3LmNvbSIsImphIjoianAudHJhZGluZ3ZpZXcuY29tIiwia3IiOiJrci50cmFkaW5ndmlldy5jb20iLCJtc19NWSI6Im15LnRyYWRpbmd2aWV3LmNvbSIsInBsIjoicGwudHJhZGluZ3ZpZXcuY29tIiwicnUiOiJydS50cmFkaW5ndmlldy5jb20iLCJ0aF9USCI6InRoLnRyYWRpbmd2aWV3LmNvbSIsInRyIjoidHIudHJhZGluZ3ZpZXcuY29tIiwidmlfVk4iOiJ2bi50cmFkaW5ndmlldy5jb20iLCJ6aF9DTiI6ImNuLnRyYWRpbmd2aWV3LmNvbSIsInpoX1RXIjoidHcudHJhZGluZ3ZpZXcuY29tIiwiY2FfRVMiOiJlcy50cmFkaW5ndmlldy5jb20ifTsKCgkJCXdpbmRvdy5fX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMgPSB3aW5kb3cuX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzIHx8IFtdOwoJCQkJd2luZG93Ll9faW5pdGlhbEVuYWJsZWRGZWF0dXJlc2V0cy5wdXNoKCd3aWRnZXQnKTsKCgkJd2luZG93LlRyYWRpbmdWaWV3ID0gd2luZG93LlRyYWRpbmdWaWV3IHx8IHt9Owo8L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJCZTJoVm80bFVlMGJnbFlvdERST25BPT0iPnZhciBlbnZpcm9ubWVudCA9ICJiYXR0bGUiOwoJCXdpbmRvdy5CVUlMRF9USU1FID0gIjIwMjYtMDctMjRUMTE6NDA6MDgiOwoJCXdpbmRvdy5XRUJTT0NLRVRfSE9TVCA9ICJ3aWRnZXRkYXRhLnRyYWRpbmd2aWV3LmNvbSI7CgkJd2luZG93LldFQlNPQ0tFVF9IT1NUX0ZPUl9SRUNPTk5FQ1QgPSAid2lkZ2V0ZGF0YS1iYWNrdXAudHJhZGluZ3ZpZXcuY29tIjsKCQl3aW5kb3cudXNlciA9IHsndXNlcm5hbWUnOiAnR3Vlc3QnLCAnZm9sbG93aW5nJzogJzAnLCAnZm9sbG93ZXJzJzogJzAnLCAnaWdub3JlX2xpc3QnOiB7fSwgJ2RvX25vdF90cmFjayc6IHRydWV9Ozwvc2NyaXB0PgoJPHNjcmlwdCBub25jZT0iQmUyaFZvNGxVZTBiZ2xZb3REUk9uQT09Ij5sZXQgcGFyYW1zID0ge307CgkJCWNvbnN0IGh0dHBSZWcgPSBuZXcgUmVnRXhwKCdeaHR0cChzKT86Ly8nKTsKCgkJCXRyeSB7CgkJCQlwYXJhbXMgPSBKU09OLnBhcnNlKGRlY29kZVVSSUNvbXBvbmVudChsb2NhdGlvbi5oYXNoLnN1YnN0cmluZygxKSkpOwoJCQl9IGNhdGNoIChlKSB7CgkJCQlwYXJhbXMgPSB7fTsKCQkJfQoKCQkJd2luZG93LldFQlNPQ0tFVF9QQVJBTVNfQU5BTFlUSUNTID0gewoJCQkJJ3dzX2FuY2VzdG9yX29yaWdpbic6IHdpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMgJiYgd2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGggPyB3aW5kb3cubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zW3dpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMubGVuZ3RoIC0gMV0ucmVwbGFjZShodHRwUmVnLCAnJykgOiBudWxsLAoJCQkJJ3dzX3BhZ2VfdXJpJzogcGFyYW1zWydwYWdlLXVyaSddLAoJCQl9OygoKT0+eyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBlKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOm59PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IHM9InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcF9uZXciKSxvPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1mdW5jdGlvbihlKXtjb25zdCB0PWUrIj0iLG49ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKyspe2xldCBzPW5bZV07Zm9yKDsiICI9PT1zLmNoYXJBdCgwKTspcz1zLnN1YnN0cmluZygxLHMubGVuZ3RoKTtpZigwPT09cy5pbmRleE9mKHQpKXJldHVybiBzLnN1YnN0cmluZyh0Lmxlbmd0aCxzLmxlbmd0aCl9cmV0dXJuIG51bGx9KCJ0dl9hcHAiKXx8IiI7c3x8PVsiYW5kcm9pZCIsImFuZHJvaWRfbnBzIl0uaW5jbHVkZXMoZSksb3x8PSJpb3MiPT09ZX1yZXR1cm4hKCJuZXciIT09ZSYmImFueSIhPT1lfHwhcyl8fCEoIm5ldyI9PT1lfHwhbyl9Y29uc3QgdD0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmInVuZGVmaW5lZCIhPXR5cGVvZiBuYXZpZ2F0b3Isbj10JiYib250b3VjaHN0YXJ0ImluIHdpbmRvdyxzPSh0JiZuJiZ3aW5kb3csdCYmKG58fG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyksdCYmd2luZG93LmNocm9tZSYmd2luZG93LmNocm9tZS5ydW50aW1lLHQmJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpLHQmJi9cc0VkZ2VcL1xkXGRcYi8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSx0JiZCb29sZWFuKG5hdmlnYXRvci52ZW5kb3IpJiZuYXZpZ2F0b3IudmVuZG9yLmluZGV4T2YoIkFwcGxlIik+LTEmJi0xPT09bmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJDcmlPUyIpJiZuYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksdCYmL21hYy9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSx0JiYvV2luMzJ8V2luNjQvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksdCYmL0xpbnV4L2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHQmJi9BbmRyb2lkL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSksbz10JiYvQmxhY2tCZXJyeS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksaT10JiYvaVBob25lfGlQYWR8aVBvZC8udGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHI9dCYmL09wZXJhIE1pbmkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGM9dCYmKCJNYWNJbnRlbCI9PT1uYXZpZ2F0b3IucGxhdGZvcm0mJm5hdmlnYXRvci5tYXhUb3VjaFBvaW50cz4xfHwvaVBhZC8udGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pKSxhPXN8fG98fGl8fHI7Y29uc3QgXz1uZXcgTWFwO2Z1bmN0aW9uIGQoKXtjb25zdCBlPXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSx0PXdpbmRvdy5sb2NhdGlvbi5ob3N0LG49YCR7dH0ke2V9YDtyZXR1cm4gXy5oYXMobil8fF8uc2V0KG4sZnVuY3Rpb24oZSx0KXtjb25zdCBuPVsiXndpZGdldC1kb2NzIl07Zm9yKGNvbnN0IGUgb2YgbilpZihuZXcgUmVnRXhwKGUpLnRlc3QodCkpcmV0dXJuITA7Y29uc3Qgcz1bIl53aWRnZXRlbWJlZC8/JCIsIl5jbWV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldHN0YXRpYy8/JCIsIl4oWzAtOWEtekEtWi1dKyk/Lz9tZWRpdW13aWRnZXRlbWJlZC8/JCIsIl50d2l0dGVyLWNoYXJ0Lz8kIiwiXnRlbGVncmFtL2NoYXJ0Lz8kIiwiXmVtYmVkLyhbMC05YS16QS1aXXs4fSkvPyQiLCJed2lkZ2V0cG9wdXAvPyQiLCJeZXh0ZW5zaW9uLz8kIiwiXmlkZWEtcG9wdXAvPyQiLCJeaG90bGlzdHN3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvaG90bGlzdHN3aWRnZXRlbWJlZC8/JCIsIl5tYXJrZXRvdmVydmlld3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRvdmVydmlld3dpZGdldGVtYmVkLz8kIiwiXmV2ZW50c3dpZGdldGVtYmVkLz8kIiwiXnRpY2tlcnN3aWRnZXRlbWJlZC8/JCIsIl5mb3JleGNyb3NzcmF0ZXN3aWRnZXRlbWJlZC8/JCIsIl5mb3JleGhlYXRtYXB3aWRnZXRlbWJlZC8/JCIsIl5tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl5zY3JlZW5lcndpZGdldC8/JCIsIl5jcnlwdG9ta3RzY3JlZW5lcndpZGdldC8/JCIsIl4oWzAtOWEtekEtWi1dKykvY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL21hcmtldHF1b3Rlc3dpZGdldGVtYmVkLz8kIiwiXnRlY2huaWNhbC1hbmFseXNpcy13aWRnZXQtZW1iZWQvJCIsIl5zaW5nbGVxdW90ZXdpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9zaW5nbGVxdW90ZXdpZGdldGVtYmVkLz8kIiwiXmVtYmVkLXdpZGdldC8oWzAtOWEtekEtWi1dKykvKChbMC05YS16QS1aLV0rKS8pPyQiLCJed2lkZ2V0LWRvY3MvKFswLTlhLXpBLVotXSspLyhbMC05YS16QS1aLS9dKyk/JCJdLG89ZS5yZXBsYWNlKC9eXC8vLCIiKTtsZXQgaTtmb3IobGV0IGU9cy5sZW5ndGgtMTtlPj0wO2UtLSlpZihpPW5ldyBSZWdFeHAoc1tlXSksaS50ZXN0KG8pKXJldHVybiEwO3JldHVybiExfShlLHQpKSxfLmdldChuKT8/ITF9Y29uc3QgaD13aW5kb3cuVHJhZGluZ1ZpZXc9d2luZG93LlRyYWRpbmdWaWV3fHx7fTtjb25zdCBsPXtBbmRyb2lkOigpPT5zLEJsYWNrQmVycnk6KCk9Pm8saU9TOigpPT5pLE9wZXJhOigpPT5yLGlzSVBhZDooKT0+Yyxhbnk6KCk9PmF9O2guaXNNb2JpbGU9bCxoLm9uV2lkZ2V0PWQ7Y29uc3QgdT0oKT0+e30sZz0ifm1+IjtjbGFzcyBte2NvbnN0cnVjdG9yKGUsdD17fSl7dGhpcy5zZXNzaW9uaWQ9bnVsbCx0aGlzLmNvbm5lY3RlZD0hMSx0aGlzLl90aW1lb3V0PW51bGwsdGhpcy5fYmFzZT1lLHRoaXMuX29wdGlvbnM9e3RpbWVvdXQ6dC50aW1lb3V0fHwyZTQsY29ubmVjdGlvblR5cGU6dC5jb25uZWN0aW9uVHlwZSxhcGlLZXk6dC5hcGlLZXl9fWNvbm5lY3QoKXt0aGlzLl9zb2NrZXQ9bmV3IFdlYlNvY2tldCh0aGlzLl9wcmVwYXJlVXJsKCkpLAp0aGlzLl9zb2NrZXQub25tZXNzYWdlPWU9PntpZigic3RyaW5nIiE9dHlwZW9mIGUuZGF0YSl0aHJvdyBuZXcgVHlwZUVycm9yKGBUaGUgV2ViU29ja2V0IG1lc3NhZ2Ugc2hvdWxkIGJlIGEgc3RyaW5nLiBSZWNpZXZlZCAke09iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlLmRhdGEpfWApO3RoaXMuX29uRGF0YShlLmRhdGEpfSx0aGlzLl9zb2NrZXQub25jbG9zZT10aGlzLl9vbkNsb3NlLmJpbmQodGhpcyksdGhpcy5fc29ja2V0Lm9uZXJyb3I9dGhpcy5fb25FcnJvci5iaW5kKHRoaXMpfXNlbmQoZSl7dGhpcy5fc29ja2V0JiZ0aGlzLl9zb2NrZXQuc2VuZCh0aGlzLl9lbmNvZGUoZSkpfWRpc2Nvbm5lY3QoKXt0aGlzLl9jbGVhcklkbGVUaW1lb3V0KCksdGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0Lm9ubWVzc2FnZT11LHRoaXMuX3NvY2tldC5vbmNsb3NlPXUsdGhpcy5fc29ja2V0Lm9uZXJyb3I9dSx0aGlzLl9zb2NrZXQuY2xvc2UoKSl9X2NsZWFySWRsZVRpbWVvdXQoKXtudWxsIT09dGhpcy5fdGltZW91dCYmKGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KSx0aGlzLl90aW1lb3V0PW51bGwpfV9lbmNvZGUoZSl7bGV0IHQsbj0iIjtjb25zdCBzPUFycmF5LmlzQXJyYXkoZSk/ZTpbZV0sbz1zLmxlbmd0aDtmb3IobGV0IGU9MDtlPG87ZSsrKXQ9bnVsbD09PXNbZV18fHZvaWQgMD09PXNbZV0/IiI6bS5fc3RyaW5naWZ5KHNbZV0pLG4rPWcrdC5sZW5ndGgrZyt0O3JldHVybiBufV9kZWNvZGUoZSl7Y29uc3QgdD1bXTtsZXQgbixzO2Rve2lmKGUuc3Vic3RyaW5nKDAsMykhPT1nKXJldHVybiB0O249IiIscz0iIjtjb25zdCBvPShlPWUuc3Vic3RyaW5nKDMpKS5sZW5ndGg7Zm9yKGxldCB0PTA7dDxvO3QrKyl7aWYocz1OdW1iZXIoZS5zdWJzdHJpbmcodCx0KzEpKSxOdW1iZXIoZS5zdWJzdHJpbmcodCx0KzEpKSE9PXMpe2U9ZS5zdWJzdHJpbmcobi5sZW5ndGgrMyksbj1OdW1iZXIobik7YnJlYWt9bis9c310LnB1c2goZS5zdWJzdHJpbmcoMCxuKSksZT1lLnN1YnN0cmluZyhuKX13aGlsZSgiIiE9PWUpO3JldHVybiB0fV9vbkRhdGEoZSl7dGhpcy5fc2V0VGltZW91dCgpO2NvbnN0IHQ9dGhpcy5fZGVjb2RlKGUpLG49dC5sZW5ndGg7Zm9yKGxldCBlPTA7ZTxuO2UrKyl0aGlzLl9vbk1lc3NhZ2UodFtlXSl9X3NldFRpbWVvdXQoKXt0aGlzLl9jbGVhcklkbGVUaW1lb3V0KCksdGhpcy5fdGltZW91dD1zZXRUaW1lb3V0KHRoaXMuX29uVGltZW91dC5iaW5kKHRoaXMpLHRoaXMuX29wdGlvbnMudGltZW91dCl9X29uVGltZW91dCgpe3RoaXMuZGlzY29ubmVjdCgpLHRoaXMuX29uRGlzY29ubmVjdCh7Y29kZTo0ZTMscmVhc29uOiJzb2NrZXQuaW8gdGltZW91dCIsd2FzQ2xlYW46ITF9KX1fb25NZXNzYWdlKGUpe3RoaXMuc2Vzc2lvbmlkP3RoaXMuX2NoZWNrSWZIZWFydGJlYXQoZSk/dGhpcy5fb25IZWFydGJlYXQoZS5zbGljZSgzKSk6dGhpcy5fY2hlY2tJZkpzb24oZSk/dGhpcy5fYmFzZS5vbk1lc3NhZ2UoSlNPTi5wYXJzZShlLnNsaWNlKDMpKSk6dGhpcy5fYmFzZS5vbk1lc3NhZ2UoZSk6KHRoaXMuc2Vzc2lvbmlkPWUsdGhpcy5fb25Db25uZWN0KCkpfV9jaGVja0lmSGVhcnRiZWF0KGUpe3JldHVybiB0aGlzLl9jaGVja01lc3NhZ2VUeXBlKGUsImgiKX1fY2hlY2tJZkpzb24oZSl7cmV0dXJuIHRoaXMuX2NoZWNrTWVzc2FnZVR5cGUoZSwiaiIpfV9jaGVja01lc3NhZ2VUeXBlKGUsdCl7cmV0dXJuIGUuc3Vic3RyaW5nKDAsMyk9PT0ifiIrdCsifiJ9X29uSGVhcnRiZWF0KGUpe3RoaXMuc2VuZCgifmh+IitlKX1fb25Db25uZWN0KCl7dGhpcy5jb25uZWN0ZWQ9ITAsdGhpcy5fYmFzZS5vbkNvbm5lY3QoKX1fb25EaXNjb25uZWN0KGUpe3RoaXMuX2NsZWFyKCksdGhpcy5fYmFzZS5vbkRpc2Nvbm5lY3QoZSksdGhpcy5zZXNzaW9uaWQ9bnVsbH1fY2xlYXIoKXt0aGlzLmNvbm5lY3RlZD0hMX1fcHJlcGFyZVVybCgpe2NvbnN0IHQ9ayh0aGlzLl9iYXNlLmhvc3QpO2lmKHQucGF0aG5hbWUrPSJzb2NrZXQuaW8vd2Vic29ja2V0Iix0LnByb3RvY29sPSJ3c3M6Iix0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImZyb20iLHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZS5zbGljZSgxLDUwKSksdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJkYXRlIix3aW5kb3cuQlVJTERfVElNRXx8IiIpLGUoImFueSIpJiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImNsaWVudCIsIm1vYmlsZSIpLHRoaXMuX29wdGlvbnMuY29ubmVjdGlvblR5cGUmJnQuc2VhcmNoUGFyYW1zLmFwcGVuZCgidHlwZSIsdGhpcy5fb3B0aW9ucy5jb25uZWN0aW9uVHlwZSksd2luZG93LldFQlNPQ0tFVF9QQVJBTVNfQU5BTFlUSUNTKXtjb25zdHt3c19wYWdlX3VyaTplLHdzX2FuY2VzdG9yX29yaWdpbjpufT13aW5kb3cuV0VCU09DS0VUX1BBUkFNU19BTkFMWVRJQ1M7ZSYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJwYWdlLXVyaSIsZSksbiYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJhbmNlc3Rvci1vcmlnaW4iLG4pfWNvbnN0IG49d2luZG93LmxvY2F0aW9uLnNlYXJjaC5pbmNsdWRlcygid2lkZ2V0X3Rva2VuIil8fHdpbmRvdy5sb2NhdGlvbi5oYXNoLmluY2x1ZGVzKCJ3aWRnZXRfdG9rZW4iKTtyZXR1cm4gZCgpfHxufHx0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImF1dGgiLCJzZXNzaW9uaWQiKSx2b2lkIDAhPT10aGlzLl9vcHRpb25zLmFwaUtleSYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJhcGlfa2V5Iix0aGlzLl9vcHRpb25zLmFwaUtleSksdC5ocmVmfV9vbkNsb3NlKGUpe3RoaXMuX2NsZWFySWRsZVRpbWVvdXQoKSx0aGlzLl9vbkRpc2Nvbm5lY3QoZSl9X29uRXJyb3IoZSl7dGhpcy5fY2xlYXJJZGxlVGltZW91dCgpLHRoaXMuX2NsZWFyKCksdGhpcy5fYmFzZS5lbWl0KCJlcnJvciIsW2VdKSx0aGlzLnNlc3Npb25pZD1udWxsfXN0YXRpYyBfc3RyaW5naWZ5KGUpe3JldHVybiJbb2JqZWN0IE9iamVjdF0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPyJ+an4iK0pTT04uc3RyaW5naWZ5KGUpOlN0cmluZyhlKX19Y2xhc3Mgd3tjb25zdHJ1Y3RvcihlLHQpe3RoaXMuaG9zdD1lLAp0aGlzLl9jb25uZWN0aW5nPSExLHRoaXMuX2V2ZW50cz17fSx0aGlzLnRyYW5zcG9ydD10aGlzLl9nZXRUcmFuc3BvcnQodCl9aXNDb25uZWN0ZWQoKXtyZXR1cm4hIXRoaXMudHJhbnNwb3J0JiZ0aGlzLnRyYW5zcG9ydC5jb25uZWN0ZWR9aXNDb25uZWN0aW5nKCl7cmV0dXJuIHRoaXMuX2Nvbm5lY3Rpbmd9Y29ubmVjdCgpe3RoaXMuaXNDb25uZWN0ZWQoKXx8KHRoaXMuX2Nvbm5lY3RpbmcmJnRoaXMuZGlzY29ubmVjdCgpLHRoaXMuX2Nvbm5lY3Rpbmc9ITAsdGhpcy50cmFuc3BvcnQuY29ubmVjdCgpKX1zZW5kKGUpe3RoaXMudHJhbnNwb3J0JiZ0aGlzLnRyYW5zcG9ydC5jb25uZWN0ZWQmJnRoaXMudHJhbnNwb3J0LnNlbmQoZSl9ZGlzY29ubmVjdCgpe3RoaXMudHJhbnNwb3J0JiZ0aGlzLnRyYW5zcG9ydC5kaXNjb25uZWN0KCl9b24oZSx0KXtlIGluIHRoaXMuX2V2ZW50c3x8KHRoaXMuX2V2ZW50c1tlXT1bXSksdGhpcy5fZXZlbnRzW2VdLnB1c2godCl9b2ZmQWxsKCl7dGhpcy5fZXZlbnRzPXt9fW9uTWVzc2FnZShlKXt0aGlzLmVtaXQoIm1lc3NhZ2UiLFtlXSl9ZW1pdChlLHQ9W10pe2lmKGUgaW4gdGhpcy5fZXZlbnRzKXtjb25zdCBuPXRoaXMuX2V2ZW50c1tlXS5jb25jYXQoKSxzPW4ubGVuZ3RoO2ZvcihsZXQgZT0wO2U8cztlKyspbltlXS5hcHBseSh0aGlzLHQpfX1vbkNvbm5lY3QoKXt0aGlzLmNsZWFyKCksdGhpcy5lbWl0KCJjb25uZWN0Iil9b25EaXNjb25uZWN0KGUpe3RoaXMuZW1pdCgiZGlzY29ubmVjdCIsW2VdKX1jbGVhcigpe3RoaXMuX2Nvbm5lY3Rpbmc9ITF9X2dldFRyYW5zcG9ydChlKXtyZXR1cm4gbmV3IG0odGhpcyxlKX19ZnVuY3Rpb24gayhlKXtjb25zdCB0PS0xIT09ZS5pbmRleE9mKCIvIik/bmV3IFVSTChlKTpuZXcgVVJMKCJ3c3M6Ly8iK2UpO2lmKCJ3c3M6IiE9PXQucHJvdG9jb2wmJiJodHRwczoiIT09dC5wcm90b2NvbCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgd2Vic29ja2V0IGJhc2UgIitlKTtyZXR1cm4gdC5wYXRobmFtZS5lbmRzV2l0aCgiLyIpfHwodC5wYXRobmFtZSs9Ii8iKSx0LnNlYXJjaD0iIix0LnVzZXJuYW1lPSIiLHQucGFzc3dvcmQ9IiIsdH12YXIgcCxiOyFmdW5jdGlvbihlKXtlW2UuTm9ybWFsPTMwMF09Ik5vcm1hbCIsZVtlLkFmdGVyQ2xvc2VFdmVudD01ZTNdPSJBZnRlckNsb3NlRXZlbnQifShwfHwocD17fSkpLGZ1bmN0aW9uKGUpe2VbZS5JbmZvPTBdPSJJbmZvIixlW2UuTm9ybWFsPTFdPSJOb3JtYWwiLGVbZS5EZWJ1Zz0yXT0iRGVidWciLGVbZS5FcnJvcj0zXT0iRXJyb3IifShifHwoYj17fSkpO2NvbnN0IGY9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJk51bWJlcih3aW5kb3cuVEVMRU1FVFJZX1dTX0VSUk9SX0xPR1NfVEhSRVNIT0xEKXx8MDt2YXIgeTshZnVuY3Rpb24oZSl7ZVtlLlBpbmdJbnRlcnZhbD0xZTRdPSJQaW5nSW50ZXJ2YWwiLGVbZS5NYXhQaW5nc0NvdW50PTEwXT0iTWF4UGluZ3NDb3VudCIsZVtlLk1heFJlZGlyZWN0cz0yMF09Ik1heFJlZGlyZWN0cyIsZVtlLk1heFJlY29ubmVjdHM9MjBdPSJNYXhSZWNvbm5lY3RzIn0oeXx8KHk9e30pKTtjbGFzcyBUe2NvbnN0cnVjdG9yKGUsdD17fSl7dGhpcy5fcXVldWVTdGFjaz1bXSx0aGlzLl9sb2dzUXVldWU9W10sdGhpcy5fdGVsZW1ldHJ5T2JqZWN0c1F1ZXVlPVtdLHRoaXMuX3JlY29ubmVjdENvdW50PTAsdGhpcy5fcmVkaXJlY3RDb3VudD0wLHRoaXMuX2Vycm9yc0NvdW50PTAsdGhpcy5fZXJyb3JzSW5mb1NlbnQ9ITEsdGhpcy5fY29ubmVjdGlvblN0YXJ0PW51bGwsdGhpcy5fY29ubmVjdGlvbkVzdGFibGlzaGVkPW51bGwsdGhpcy5fcmVjb25uZWN0VGltZW91dD1udWxsLHRoaXMuX29ubGluZUNhbmNlbGxhdGlvblRva2VuPW51bGwsdGhpcy5faXNDb25uZWN0aW9uRm9yYmlkZGVuPSExLHRoaXMuX2luaXRpYWxIb3N0PXQuaW5pdGlhbEhvc3R8fG51bGwsdGhpcy5fc3VnZ2VzdGVkSG9zdD1lLHRoaXMuX3Byb0hvc3Q9dC5wcm9Ib3N0LHRoaXMuX3JlY29ubmVjdEhvc3Q9dC5yZWNvbm5lY3RIb3N0LHRoaXMuX25vUmVjb25uZWN0QWZ0ZXJUaW1lb3V0PSEwPT09dC5ub1JlY29ubmVjdEFmdGVyVGltZW91dCx0aGlzLl9kYXRhUmVxdWVzdFRpbWVvdXQ9dC5kYXRhUmVxdWVzdFRpbWVvdXQsdGhpcy5fY29ubmVjdGlvblR5cGU9dC5jb25uZWN0aW9uVHlwZSx0aGlzLl9hcGlLZXk9dC5hcGlLZXksdGhpcy5fZG9Db25uZWN0KCksdC5waW5nUmVxdWlyZWQmJi0xPT09d2luZG93LmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCJub3BpbmciKSYmdGhpcy5fc3RhcnRQaW5nKCl9Y29ubmVjdCgpe3RoaXMuX3RyeUNvbm5lY3QoKX1yZXNldENvdW50ZXJzKCl7dGhpcy5fcmVjb25uZWN0Q291bnQ9MCx0aGlzLl9yZWRpcmVjdENvdW50PTB9c2V0TG9nZ2VyKGUsdCl7dGhpcy5fbG9nZ2VyPWUsdGhpcy5fZ2V0TG9nSGlzdG9yeT10LHRoaXMuX2ZsdXNoTG9ncygpfXNldFRlbGVtZXRyeShlKXt0aGlzLl90ZWxlbWV0cnk9ZSx0aGlzLl90ZWxlbWV0cnkucmVwb3J0U2VudC5zdWJzY3JpYmUodGhpcyx0aGlzLl9vblRlbGVtZXRyeVNlbnQpLHRoaXMuX2ZsdXNoVGVsZW1ldHJ5KCl9b25SZWNvbm5lY3QoZSl7dGhpcy5fb25SZWNvbm5lY3Q9ZX1pc0Nvbm5lY3RlZCgpe3JldHVybiEhdGhpcy5fc29ja2V0JiZ0aGlzLl9zb2NrZXQuaXNDb25uZWN0ZWQoKX1pc0Nvbm5lY3RpbmcoKXtyZXR1cm4hIXRoaXMuX3NvY2tldCYmdGhpcy5fc29ja2V0LmlzQ29ubmVjdGluZygpfW9uKGUsdCl7cmV0dXJuISF0aGlzLl9zb2NrZXQmJigiY29ubmVjdCI9PT1lJiZ0aGlzLl9zb2NrZXQuaXNDb25uZWN0ZWQoKT90KCk6ImRpc2Nvbm5lY3QiPT09ZT90aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzLnB1c2godCk6dGhpcy5fc29ja2V0Lm9uKGUsdCksITApfWdldFNlc3Npb25JZCgpe3JldHVybiB0aGlzLl9zb2NrZXQmJnRoaXMuX3NvY2tldC50cmFuc3BvcnQ/dGhpcy5fc29ja2V0LnRyYW5zcG9ydC5zZXNzaW9uaWQ6bnVsbH1zZW5kKGUpe3JldHVybiB0aGlzLmlzQ29ubmVjdGVkKCk/KHRoaXMuX3NvY2tldC5zZW5kKGUpLCEwKToodGhpcy5fcXVldWVNZXNzYWdlKGUpLCExKX0KZ2V0Q29ubmVjdGlvbkVzdGFibGlzaGVkKCl7cmV0dXJuIHRoaXMuX2Nvbm5lY3Rpb25Fc3RhYmxpc2hlZH1nZXRIb3N0KCl7Y29uc3QgZT10aGlzLl90cnlHZXRQcm9Ib3N0KCk7cmV0dXJuIG51bGwhPT1lP2U6dGhpcy5fcmVjb25uZWN0SG9zdCYmdGhpcy5fcmVjb25uZWN0Q291bnQ+Mz90aGlzLl9yZWNvbm5lY3RIb3N0OnRoaXMuX3N1Z2dlc3RlZEhvc3R9Z2V0UmVjb25uZWN0Q291bnQoKXtyZXR1cm4gdGhpcy5fcmVjb25uZWN0Q291bnR9Z2V0UmVkaXJlY3RDb3VudCgpe3JldHVybiB0aGlzLl9yZWRpcmVjdENvdW50fWdldENvbm5lY3Rpb25TdGFydCgpe3JldHVybiB0aGlzLl9jb25uZWN0aW9uU3RhcnR9ZGlzY29ubmVjdCgpe3RoaXMuX2NsZWFyUmVjb25uZWN0VGltZW91dCgpLCh0aGlzLmlzQ29ubmVjdGVkKCl8fHRoaXMuaXNDb25uZWN0aW5nKCkpJiYodGhpcy5fcHJvcGFnYXRlRGlzY29ubmVjdCgpLHRoaXMuX2Rpc2Nvbm5lY3RDYWxsYmFja3M9W10sdGhpcy5fY2xvc2VTb2NrZXQoKSl9Zm9yYmlkQ29ubmVjdGlvbigpe3RoaXMuX2lzQ29ubmVjdGlvbkZvcmJpZGRlbj0hMCx0aGlzLmRpc2Nvbm5lY3QoKX1hbGxvd0Nvbm5lY3Rpb24oKXt0aGlzLl9pc0Nvbm5lY3Rpb25Gb3JiaWRkZW49ITEsdGhpcy5jb25uZWN0KCl9aXNNYXhSZWRpcmVjdHMoKXtyZXR1cm4gdGhpcy5fcmVkaXJlY3RDb3VudD49MjB9aXNNYXhSZWNvbm5lY3RzKCl7cmV0dXJuIHRoaXMuX3JlY29ubmVjdENvdW50Pj0yMH1nZXRQaW5nSW5mbygpe3JldHVybiB0aGlzLl9waW5nSW5mb3x8bnVsbH1nZXRBcGlLZXkoKXtyZXR1cm4gdGhpcy5fYXBpS2V5fV90cnlHZXRQcm9Ib3N0KCl7cmV0dXJuIHdpbmRvdy5UcmFkaW5nVmlldyYmd2luZG93LlRyYWRpbmdWaWV3Lm9uQ2hhcnRQYWdlJiYiYmF0dGxlIj09PXdpbmRvdy5lbnZpcm9ubWVudCYmIXRoaXMuX3JlZGlyZWN0Q291bnQmJi0xPT09d2luZG93LmxvY2F0aW9uLmhyZWYuaW5kZXhPZigid3NfaG9zdCIpP3RoaXMuX2luaXRpYWxIb3N0P3RoaXMuX2luaXRpYWxIb3N0OnZvaWQgMCE9PXdpbmRvdy51c2VyJiZ3aW5kb3cudXNlci5wcm9fcGxhbj90aGlzLl9wcm9Ib3N0fHx0aGlzLl9zdWdnZXN0ZWRIb3N0Om51bGw6bnVsbH1fcXVldWVNZXNzYWdlKGUpezA9PT10aGlzLl9xdWV1ZVN0YWNrLmxlbmd0aCYmdGhpcy5fbG9nTWVzc2FnZSgwLCJTb2NrZXQgaXMgbm90IGNvbm5lY3RlZC4gUXVldWVkIGEgbWVzc2FnZSIpLHRoaXMuX3F1ZXVlU3RhY2sucHVzaChlKX1fcHJvY2Vzc01lc3NhZ2VRdWV1ZSgpezAhPT10aGlzLl9xdWV1ZVN0YWNrLmxlbmd0aCYmKHRoaXMuX2xvZ01lc3NhZ2UoMCwiUHJvY2Vzc2luZyBxdWV1ZWQgbWVzc2FnZXMiKSx0aGlzLl9xdWV1ZVN0YWNrLmZvckVhY2godGhpcy5zZW5kLmJpbmQodGhpcykpLHRoaXMuX2xvZ01lc3NhZ2UoMCwiUHJvY2Vzc2VkICIrdGhpcy5fcXVldWVTdGFjay5sZW5ndGgrIiBtZXNzYWdlcyIpLHRoaXMuX3F1ZXVlU3RhY2s9W10pfV9vbkRpc2Nvbm5lY3QoZSl7dGhpcy5fbm9SZWNvbm5lY3RBZnRlclRpbWVvdXR8fG51bGwhPT10aGlzLl9yZWNvbm5lY3RUaW1lb3V0fHwodGhpcy5fcmVjb25uZWN0VGltZW91dD1zZXRUaW1lb3V0KHRoaXMuX3RyeVJlY29ubmVjdC5iaW5kKHRoaXMpLDVlMykpLHRoaXMuX2NsZWFyT25saW5lQ2FuY2VsbGF0aW9uVG9rZW4oKTtsZXQgdD0iZGlzY29ubmVjdCBzZXNzaW9uOiIrdGhpcy5nZXRTZXNzaW9uSWQoKTtlJiYodCs9IiwgY29kZToiK2UuY29kZSsiLCByZWFzb246IitlLnJlYXNvbiwxMDA1PT09ZS5jb2RlJiZ0aGlzLl9zZW5kVGVsZW1ldHJ5KCJ3ZWJzb2NrZXRfY29kZV8xMDA1IikpLHRoaXMuX2xvZ01lc3NhZ2UoMCx0KSx0aGlzLl9wcm9wYWdhdGVEaXNjb25uZWN0KGUpLHRoaXMuX2Nsb3NlU29ja2V0KCksdGhpcy5fcXVldWVTdGFjaz1bXX1fY2xvc2VTb2NrZXQoKXtudWxsIT09dGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0Lm9mZkFsbCgpLHRoaXMuX3NvY2tldC5kaXNjb25uZWN0KCksdGhpcy5fc29ja2V0PW51bGwpfV9sb2dNZXNzYWdlKGUsdCl7Y29uc3Qgbj17bWV0aG9kOmUsbWVzc2FnZTp0fTt0aGlzLl9sb2dnZXI/dGhpcy5fZmx1c2hMb2dNZXNzYWdlKG4pOihuLm1lc3NhZ2U9YFskeyhuZXcgRGF0ZSkudG9JU09TdHJpbmcoKX1dICR7bi5tZXNzYWdlfWAsdGhpcy5fbG9nc1F1ZXVlLnB1c2gobikpfV9mbHVzaExvZ01lc3NhZ2UoZSl7c3dpdGNoKGUubWV0aG9kKXtjYXNlIDI6dGhpcy5fbG9nZ2VyLmxvZ0RlYnVnKGUubWVzc2FnZSk7YnJlYWs7Y2FzZSAzOnRoaXMuX2xvZ2dlci5sb2dFcnJvcihlLm1lc3NhZ2UpO2JyZWFrO2Nhc2UgMDp0aGlzLl9sb2dnZXIubG9nSW5mbyhlLm1lc3NhZ2UpO2JyZWFrO2Nhc2UgMTp0aGlzLl9sb2dnZXIubG9nTm9ybWFsKGUubWVzc2FnZSl9fV9mbHVzaExvZ3MoKXt0aGlzLl9mbHVzaExvZ01lc3NhZ2Uoe21ldGhvZDoxLG1lc3NhZ2U6Im1lc3NhZ2VzIGZyb20gcXVldWUuIFN0YXJ0LiJ9KSx0aGlzLl9sb2dzUXVldWUuZm9yRWFjaCgoZT0+e3RoaXMuX2ZsdXNoTG9nTWVzc2FnZShlKX0pKSx0aGlzLl9mbHVzaExvZ01lc3NhZ2Uoe21ldGhvZDoxLG1lc3NhZ2U6Im1lc3NhZ2VzIGZyb20gcXVldWUuIEVuZC4ifSksdGhpcy5fbG9nc1F1ZXVlPVtdfV9zZW5kVGVsZW1ldHJ5KGUsdCl7Y29uc3Qgbj17ZXZlbnQ6ZSxwYXJhbXM6dH07dGhpcy5fdGVsZW1ldHJ5P3RoaXMuX2ZsdXNoVGVsZW1ldHJ5T2JqZWN0KG4pOnRoaXMuX3RlbGVtZXRyeU9iamVjdHNRdWV1ZS5wdXNoKG4pfV9mbHVzaFRlbGVtZXRyeU9iamVjdChlKXt0aGlzLl90ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KGUuZXZlbnQsZS5wYXJhbXMsITEpfV9mbHVzaFRlbGVtZXRyeSgpe3RoaXMuX3RlbGVtZXRyeU9iamVjdHNRdWV1ZS5mb3JFYWNoKChlPT57dGhpcy5fZmx1c2hUZWxlbWV0cnlPYmplY3QoZSl9KSksdGhpcy5fdGVsZW1ldHJ5T2JqZWN0c1F1ZXVlPVtdfV9kb0Nvbm5lY3QoKXsKdGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0LmlzQ29ubmVjdGVkKCl8fHRoaXMuX3NvY2tldC5pc0Nvbm5lY3RpbmcoKSl8fCh0aGlzLl9jbGVhck9ubGluZUNhbmNlbGxhdGlvblRva2VuKCksdGhpcy5faG9zdD10aGlzLmdldEhvc3QoKSx0aGlzLl9zb2NrZXQ9bmV3IHcodGhpcy5faG9zdCx7dGltZW91dDp0aGlzLl9kYXRhUmVxdWVzdFRpbWVvdXQsY29ubmVjdGlvblR5cGU6dGhpcy5fY29ubmVjdGlvblR5cGUsYXBpS2V5OnRoaXMuX2FwaUtleX0pLHRoaXMuX2xvZ01lc3NhZ2UoMCwiQ29ubmVjdGluZyB0byAiK3RoaXMuX2hvc3QpLHRoaXMuX2JpbmRFdmVudHMoKSx0aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzPVtdLHRoaXMuX2Nvbm5lY3Rpb25TdGFydD1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLl9jb25uZWN0aW9uRXN0YWJsaXNoZWQ9bnVsbCx0aGlzLl9zb2NrZXQuY29ubmVjdCgpLHBlcmZvcm1hbmNlLm1hcmsoIlNXU0MiLHtkZXRhaWw6IlN0YXJ0IFdlYlNvY2tldCBjb25uZWN0aW9uIn0pLHRoaXMuX3NvY2tldC5vbigiY29ubmVjdCIsKCgpPT57cGVyZm9ybWFuY2UubWFyaygiRVdTQyIse2RldGFpbDoiRW5kIFdlYlNvY2tldCBjb25uZWN0aW9uIn0pLHBlcmZvcm1hbmNlLm1lYXN1cmUoIldlYlNvY2tldCBjb25uZWN0aW9uIGRlbGF5IiwiU1dTQyIsIkVXU0MiKX0pKSl9X3Byb3BhZ2F0ZURpc2Nvbm5lY3QoZSl7Y29uc3QgdD10aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzLmxlbmd0aDtmb3IobGV0IG49MDtuPHQ7bisrKXRoaXMuX2Rpc2Nvbm5lY3RDYWxsYmFja3Nbbl0oZXx8e30pfV9iaW5kRXZlbnRzKCl7dGhpcy5fc29ja2V0JiYodGhpcy5fc29ja2V0Lm9uKCJjb25uZWN0IiwoKCk9Pntjb25zdCBlPXRoaXMuZ2V0U2Vzc2lvbklkKCk7aWYoInN0cmluZyI9PXR5cGVvZiBlKXtjb25zdCB0PUpTT04ucGFyc2UoZSk7aWYodC5yZWRpcmVjdClyZXR1cm4gdGhpcy5fcmVkaXJlY3RDb3VudCs9MSx0aGlzLl9zdWdnZXN0ZWRIb3N0PXQucmVkaXJlY3QsdGhpcy5pc01heFJlZGlyZWN0cygpJiZ0aGlzLl9zZW5kVGVsZW1ldHJ5KCJyZWRpcmVjdF9iYWlsb3V0Iiksdm9pZCB0aGlzLl9yZWRpcmVjdCgpfXRoaXMuX2Nvbm5lY3Rpb25Fc3RhYmxpc2hlZD1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLl9wcm9jZXNzTWVzc2FnZVF1ZXVlKCksdGhpcy5fbG9nTWVzc2FnZSgwLCJjb25uZWN0IHNlc3Npb246IitlKX0pKSx0aGlzLl9zb2NrZXQub24oImRpc2Nvbm5lY3QiLHRoaXMuX29uRGlzY29ubmVjdC5iaW5kKHRoaXMpKSx0aGlzLl9zb2NrZXQub24oImNsb3NlIix0aGlzLl9vbkRpc2Nvbm5lY3QuYmluZCh0aGlzKSksdGhpcy5fc29ja2V0Lm9uKCJlcnJvciIsKGU9Pnt0aGlzLl9sb2dNZXNzYWdlKDAsbmV3IERhdGUrIiBzZXNzaW9uOiIrdGhpcy5nZXRTZXNzaW9uSWQoKSsiIHdlYnNvY2tldCBlcnJvcjoiK0pTT04uc3RyaW5naWZ5KGUpKSx0aGlzLl9zZW5kVGVsZW1ldHJ5KCJ3ZWJzb2NrZXRfZXJyb3IiKSx0aGlzLl9lcnJvcnNDb3VudCsrLCF0aGlzLl9lcnJvcnNJbmZvU2VudCYmdGhpcy5fZXJyb3JzQ291bnQ+PWYmJih2b2lkIDAhPT10aGlzLl9sYXN0Q29ubmVjdENhbGxTdGFjayYmKHRoaXMuX3NlbmRUZWxlbWV0cnkoIndlYnNvY2tldF9lcnJvcl9jb25uZWN0X3N0YWNrIix7dGV4dDp0aGlzLl9sYXN0Q29ubmVjdENhbGxTdGFja30pLGRlbGV0ZSB0aGlzLl9sYXN0Q29ubmVjdENhbGxTdGFjayksdm9pZCAwIT09dGhpcy5fZ2V0TG9nSGlzdG9yeSYmdGhpcy5fc2VuZFRlbGVtZXRyeSgid2Vic29ja2V0X2Vycm9yX2xvZyIse3RleHQ6dGhpcy5fZ2V0TG9nSGlzdG9yeSg1MCkuam9pbigiXG4iKX0pLHRoaXMuX2Vycm9yc0luZm9TZW50PSEwKX0pKSl9X3JlZGlyZWN0KCl7dGhpcy5kaXNjb25uZWN0KCksdGhpcy5fcmVjb25uZWN0V2hlbk9ubGluZSgpfV90cnlSZWNvbm5lY3QoKXt0aGlzLl90cnlDb25uZWN0KCkmJih0aGlzLl9yZWNvbm5lY3RDb3VudCs9MSl9X3RyeUNvbm5lY3QoKXtyZXR1cm4hdGhpcy5faXNDb25uZWN0aW9uRm9yYmlkZGVuJiYodGhpcy5fY2xlYXJSZWNvbm5lY3RUaW1lb3V0KCksdGhpcy5fbGFzdENvbm5lY3RDYWxsU3RhY2s9bmV3IEVycm9yKGBXZWJTb2NrZXQgY29ubmVjdCBzdGFjay4gSXMgY29ubmVjdGVkOiAke3RoaXMuaXNDb25uZWN0ZWQoKX0uYCkuc3RhY2t8fCIiLCF0aGlzLmlzQ29ubmVjdGVkKCkmJih0aGlzLmRpc2Nvbm5lY3QoKSx0aGlzLl9yZWNvbm5lY3RXaGVuT25saW5lKCksITApKX1fY2xlYXJPbmxpbmVDYW5jZWxsYXRpb25Ub2tlbigpe3RoaXMuX29ubGluZUNhbmNlbGxhdGlvblRva2VuJiYodGhpcy5fb25saW5lQ2FuY2VsbGF0aW9uVG9rZW4oKSx0aGlzLl9vbmxpbmVDYW5jZWxsYXRpb25Ub2tlbj1udWxsKX1fY2xlYXJSZWNvbm5lY3RUaW1lb3V0KCl7bnVsbCE9PXRoaXMuX3JlY29ubmVjdFRpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5fcmVjb25uZWN0VGltZW91dCksdGhpcy5fcmVjb25uZWN0VGltZW91dD1udWxsKX1fcmVjb25uZWN0V2hlbk9ubGluZSgpe2lmKG5hdmlnYXRvci5vbkxpbmUpcmV0dXJuIHRoaXMuX2xvZ01lc3NhZ2UoMCwiTmV0d29yayBzdGF0dXM6IG9ubGluZSAtIHRyeWluZyB0byBjb25uZWN0IiksdGhpcy5fZG9Db25uZWN0KCksdm9pZCh0aGlzLl9vblJlY29ubmVjdCYmdGhpcy5fb25SZWNvbm5lY3QoKSk7dGhpcy5fbG9nTWVzc2FnZSgwLCJOZXR3b3JrIHN0YXR1czogb2ZmbGluZSAtIHdhaXQgdW50aWwgb25saW5lIiksdGhpcy5fb25saW5lQ2FuY2VsbGF0aW9uVG9rZW49ZnVuY3Rpb24oZSl7bGV0IHQ9ZTtjb25zdCBuPSgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbiksdCYmdCgpfTtyZXR1cm4gd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbiksKCk9Pnt0PW51bGx9fSgoKCk9Pnt0aGlzLl9sb2dNZXNzYWdlKDAsIk5ldHdvcmsgc3RhdHVzIGNoYW5nZWQgdG8gb25saW5lIC0gdHJ5aW5nIHRvIGNvbm5lY3QiKSx0aGlzLl9kb0Nvbm5lY3QoKSx0aGlzLl9vblJlY29ubmVjdCYmdGhpcy5fb25SZWNvbm5lY3QoKX0pKX0KX29uVGVsZW1ldHJ5U2VudChlKXsid2Vic29ja2V0X2Vycm9yImluIGUmJih0aGlzLl9lcnJvcnNDb3VudD0wLHRoaXMuX2Vycm9yc0luZm9TZW50PSExKX1fc3RhcnRQaW5nKCl7aWYodGhpcy5fcGluZ0ludGVydmFsSWQpcmV0dXJuO2NvbnN0IGU9ayh0aGlzLmdldEhvc3QoKSk7ZS5wYXRobmFtZSs9InBpbmciLGUucHJvdG9jb2w9Imh0dHBzOiI7bGV0IHQ9MCxuPTA7Y29uc3Qgcz1lPT57dGhpcy5fcGluZ0luZm89dGhpcy5fcGluZ0luZm98fHttYXg6MCxtaW46MS8wLGF2ZzowfTtjb25zdCBzPShuZXcgRGF0ZSkuZ2V0VGltZSgpLWU7cz50aGlzLl9waW5nSW5mby5tYXgmJih0aGlzLl9waW5nSW5mby5tYXg9cyksczx0aGlzLl9waW5nSW5mby5taW4mJih0aGlzLl9waW5nSW5mby5taW49cyksdCs9cyxuKyssdGhpcy5fcGluZ0luZm8uYXZnPXQvbixuPj0xMCYmdGhpcy5fcGluZ0ludGVydmFsSWQmJihjbGVhckludGVydmFsKHRoaXMuX3BpbmdJbnRlcnZhbElkKSxkZWxldGUgdGhpcy5fcGluZ0ludGVydmFsSWQpfTt0aGlzLl9waW5nSW50ZXJ2YWxJZD1zZXRJbnRlcnZhbCgoKCk9Pntjb25zdCB0PShuZXcgRGF0ZSkuZ2V0VGltZSgpLG49bmV3IFhNTEh0dHBSZXF1ZXN0O24ub3BlbigiR0VUIixlLCEwKSxuLnNlbmQoKSxuLm9ucmVhZHlzdGF0ZWNoYW5nZT0oKT0+e24ucmVhZHlTdGF0ZT09PVhNTEh0dHBSZXF1ZXN0LkRPTkUmJjIwMD09PW4uc3RhdHVzJiZzKHQpfX0pLDFlNCl9fQpjb25zdCBDPSJ3aWRnZXRfdXNlcl90b2tlbi0iLHY9SlNPTi5wYXJzZSgneyJhZHgiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZHgiLCJhZHhEIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWR4RCIsImFnZW5jaWFsYm1jb21iciI6IndpZGdldF91c2VyX3Rva2VuLWFnZW5jaWFsYm1jb21iciIsImFsamF6aXJhY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxEIiwiYWxqYXppcmFjYXBpdGFsUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxSVCIsImFscmFqaGljYXBpdGFsY29tRCI6IndpZGdldF91c2VyX3Rva2VuLWFscmFqaGljYXBpdGFsY29tRCIsImFscmFqaGljYXBpdGFsY29tUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbHJhamhpY2FwaXRhbGNvbVJUIiwiYW1iaXRvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYW1iaXRvIiwiYXJlbmF4dHJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYXJlbmF4dHJvIiwiYXJ0ZWNoZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLUFydGVjaGVEIiwiYXRsY2FwaXRhbCI6IndpZGdldF91c2VyX3Rva2VuLWF0bGNhcGl0YWwiLCJiYW5raXJvc3J1Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYmFua2lyb3NydSIsImJidmFjaCI6IndpZGdldF91c2VyX3Rva2VuLWJidmFjaCIsImJlZWtzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1iZWVrc2dyb3VwIiwiYmVsdWdhZ3JvdXBydSI6IndpZGdldF91c2VyX3Rva2VuLWJlbHVnYWdyb3VwcnUiLCJiaXZhY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tYml2YWNvbSIsImJsdWVmaWVsZCI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVmaWVsZCIsImJsdWVsaW5lZnV0dXJlcyI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVsaW5lZnV0dXJlcyIsImJvdmVzcGEiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibWZib3Zlc3BhY29tYnIiLCJidmJybyI6IndpZGdldF91c2VyX3Rva2VuLWJ2YnJvIiwiYnl0ZXRyYXZlbCI6IndpZGdldF91c2VyX3Rva2VuLWJ5dGV0cmF2ZWwiLCJjYm9lY2FuYWRhIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2JvZWNhbmFkYSIsImNoYW1waW9ubmF0Ym91cnNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2hhbXBpb25uYXRib3Vyc2UiLCJjaW5jb2RpYXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jaW5jb2RpYXMiLCJjZW9jYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1jZW9jYUQiLCJjZW9jYVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2VvY2FSVCIsImNtY21hcmtldHMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jbWNtYXJrZXRzIiwiY29wZWVzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY29wZWVzIiwiY3NlbGsiOiJ3aWRnZXRfdXNlcl90b2tlbi1jc2VsayIsImRhaWx5ZngiOiJ3aWRnZXRfdXNlcl90b2tlbi1kYWlseWZ4IiwiZGVlcHNlYXJjaCI6IndpZGdldF91c2VyX3Rva2VuLWRlZXBzZWFyY2giLCJkZXJheWFoY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGVyYXlhaGNvbSIsImRmbWFlRCI6IndpZGdldF91c2VyX3Rva2VuLWRmbWFlRCIsImRmbWFlUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kZm1hZVJUIiwiZGluYXJzYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kaW5hcnNhRCIsImRpbmFyc2FSVCI6IndpZGdldF91c2VyX3Rva2VuLWRpbmFyc2FSVCIsImRvbGFyaG95Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZG9sYXJob3kiLCJlYXN5bnZlc3Rjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWVhc3ludmVzdGNvbWJyIiwiZWRhaWx5Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZWRhaWx5IiwiZWxlc3Bhbm9sY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxlc3Bhbm9sY29tIiwiZWxvYnJlcm9lcyI6IndpZGdldF91c2VyX3Rva2VuLWVsb2JyZXJvZXMiLCJlbG5hY2lvbmFsRCI6IndpZGdldF91c2VyX3Rva2VuLUVsTmFjaW9uYWxEIiwiZWxwYWlzZmluYW5jaWVybyI6IndpZGdldF91c2VyX3Rva2VuLWVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxwZXJpb2RpY29kZWxhZW5lcmdpYSIsImV1cXVlcm9pbnZlc3RpciI6IndpZGdldF91c2VyX3Rva2VuLWV1cXVlcm9pbnZlc3RpcmNvbSIsImV1cmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyZXgiLCJldXJvZmlucyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9maW5zIiwiZXBlIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXBlIiwiZXVyb3BhcHJlc3NlcyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9wYXByZXNzZXMiLCJmaW5hbnphc0QiOiJ3aWRnZXRfdXNlcl90b2tlbi1GaW5hbnphc0QiLCJmb3JiZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyI6IndpZGdldF91c2VyX3Rva2VuLWdlbmlhbGludmVzdGltZW50b3MiLCJoZWFsdGhpdGFsaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1oZWFsdGhpdGFsaWEiLCJoZWduYXJubyI6IndpZGdldF91c2VyX3Rva2VuLWhlZ25hcm5vIiwiaGlwb3RlY2FyaW9jb21hciI6IndpZGdldF91c2VyX3Rva2VuLWhpcG90ZWNhcmlvY29tYXIiLCJpZ2NvbSI6IndpZGdldF91c2VyX3Rva2VuLWlnY29tIiwiaW52ZXN0ZWdhdGVjb3VrIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0ZWdhdGVjb3VrIiwiaW52ZXN0b3BlZGlhIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0b3BlZGlhIiwiaW50ZWdyYWx5YXRpcmltIjoid2lkZ2V0X3VzZXJfdG9rZW4taW50ZWdyYWx5YXRpcmltIiwiaXZzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1pdnNncm91cCIsImpzZWNvemEiOiJ3aWRnZXRfdXNlcl90b2tlbi1qc2Vjb3phIiwiYm9lcnNlbnplaXR1bmciOiJ3aWRnZXRfdXNlcl90b2tlbi1ib2Vyc2VuemVpdHVuZyIsImxhaW5mb3JtYWNpb25jb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1sYWluZm9ybWFjaW9uY29tIiwibWFyY29wb2xvY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1tYXJjb3BvbG9jb21iciIsIm1lcmNhZG9maW5hbmNpZXJvY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbWVyY2Fkb2ZpbmFuY2llcm9jb20iLCJtb2V4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tbW9leCIsIm1vbmV5dGltZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLW1vbmV5dGltZXNjb21iciIsIm1vbml0b3Jkb21lcmNhZG9EIjoid2lkZ2V0X3VzZXJfdG9rZW4tbW9uaXRvcmRvbWVyY2Fkb0QiLCJteW5ldGNvbSI6IndpZGdldF91c2VyX3Rva2VuLW15bmV0Y29tIiwibmVnb2Npb3MiOiJ3aWRnZXRfdXNlcl90b2tlbi1uZWdvY2lvcyIsIk5HWCI6IndpZGdldF91c2VyX3Rva2VuLU5HWCIsIk5vdGljaWFzYWdyaWNvbGFEIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm90aWNpYXNhZ3JpY29sYUQiLCJub21tb21hIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm9tbW9tYSIsIm5zZWNva3IiOiJ3aWRnZXRfdXNlcl90b2tlbi1uc2Vjb2tyIiwib2tkaWFyaW8iOiJ3aWRnZXRfdXNlcl90b2tlbi1va2RpYXJpbyIsInBhbmFmcmljYW5yZXNvdXJjZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1wYW5hZnJpY2FucmVzb3VyY2VzY29tIiwicHNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tcHNlIiwicG9kZXIzNjAiOiJ3aWRnZXRfdXNlcl90b2tlbi1wb2RlcjM2MCIsInBzZUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1wc2VEIiwicml5YWRoY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1yaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCI6IndpZGdldF91c2VyX3Rva2VuLXJpeWFkaGNhcGl0YWxSVCIsInFlY29tcWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1xZWNvbXFhIiwic2Ftb2xldCI6IndpZGdldF91c2VyX3Rva2VuLXNhbW9sZXQiLCJzZWVpbmdtYWNoaW5lc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXNlZWluZ21hY2hpbmVzY29tIiwic2V1ZGluaGVpcm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1zZXVkaW5oZWlybyIsInNvZnR3YXJlYWciOiJ3aWRnZXRfdXNlcl90b2tlbi1zb2Z0d2FyZWFnIiwic29nZWNsYWlyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc29nZWNsYWlyIiwic2djb21wYW55aXQiOiJ3aWRnZXRfdXNlcl90b2tlbi1zZ2NvbXBhbnlpdCIsInNoYXJlanVuY3Rpb24iOiJ3aWRnZXRfdXNlcl90b2tlbi1zaGFyZWp1bmN0aW9uIiwic21hcnRsYWItY3VzdG9tIjoid2lkZ2V0X3VzZXJfdG9rZW4tc21hcnRsYWIiLCJzbWFydGxhYiI6IndpZGdldF91c2VyX3Rva2VuLXNtYXJ0bGFiIiwic3BhY2Vtb25leWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3BhY2Vtb25leWNvbWJyIiwic3RvbmV4d2RnIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4wqMtIXd3dy5zdG9uZXguY29tIiwic3RveGlvIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RveGlvIiwic3RvbmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4IiwidG9yb2ludmVzdGltZW50b3Njb20iOiJ3aWRnZXRfdXNlcl90b2tlbi10b3JvaW52ZXN0aW1lbnRvc2NvbSIsInRoZWNzZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLXRoZWNzZWNvbSIsInRyYWRlcnNjbHViYnJhc2lsIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkZXJzY2x1YmJyYXNpbEQiLCJ0cmFkaW5ndmlldyI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRpbmd2aWV3IiwieHRvb2xzIjoid2lkZ2V0X3VzZXJfdG9rZW4teHRvb2xzIiwidHdpdHRlciI6IndpZGdldF91c2VyX3Rva2VuLXR3aXR0ZXIiLCJ2ZWxvY2l0eWNvbXBvc2l0ZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi12ZWxvY2l0eWNvbXBvc2l0ZXNjb20iLCJ2b2Nlc2FhYnJpbGNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tdm9jZXNhYWJyaWxjb21iciIsIndlYWx0aHNpbXBsZSI6IndpZGdldF91c2VyX3Rva2VuLXdlYWx0aHNpbXBsZcKjLSFteS53ZWFsdGhzaW1wbGUuY29tIiwid29ybGRjaGVzc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXdvcmxkY2hlc3Njb20iLCJ4Q3J0eUprc3AiOiJ3aWRnZXRfdXNlcl90b2tlbi14Q3J0eUprc3AiLCJ4cGljb21iciI6IndpZGdldF91c2VyX3Rva2VuLXhwaWNvbWJyIn0nKVt3aW5kb3cuVHJhZGluZ1ZpZXcmJndpbmRvdy5UcmFkaW5nVmlldy53aWRnZXRDdXN0b21lcnx8IiJdfHwiIixTPXYuc3RhcnRzV2l0aChDKT92LnN1YnN0cmluZygxOCk6InRyYWRpbmd2aWV3Igo7d2luZG93LldTQmFja2VuZENvbm5lY3Rpb249bmV3IFQod2luZG93LldFQlNPQ0tFVF9IT1NULHtwaW5nUmVxdWlyZWQ6d2luZG93LldTX0hPU1RfUElOR19SRVFVSVJFRCxwcm9Ib3N0OndpbmRvdy5XRUJTT0NLRVRfUFJPX0hPU1QscmVjb25uZWN0SG9zdDp3aW5kb3cuV0VCU09DS0VUX0hPU1RfRk9SX1JFQ09OTkVDVCxpbml0aWFsSG9zdDp3aW5kb3cuV0VCU09DS0VUX0lOSVRJQUxfSE9TVCxjb25uZWN0aW9uVHlwZTp3aW5kb3cuV0VCU09DS0VUX0NPTk5FQ1RJT05fVFlQRSxhcGlLZXk6U30pLHdpbmRvdy5XU0JhY2tlbmRDb25uZWN0aW9uQ3Rvcj1UfSkoKTsKCTwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5PgoJPHNjcmlwdCBub25jZT0iQmUyaFZvNGxVZTBiZ2xZb3REUk9uQT09Ij4KCQkoKCk9PnsidXNlIHN0cmljdCI7Y29uc3QgdD0xMDE5O3ZhciBlLHMsbyxhLGQ7IWZ1bmN0aW9uKHQpe3QuQWRhcHRpdmU9ImFkYXB0aXZlIix0LlJlZ3VsYXI9InJlZ3VsYXIiLHQuQ29tcGFjdD0iY29tcGFjdCJ9KGV8fChlPXt9KSksZnVuY3Rpb24odCl7dC5BbGxTeW1ib2xzPSJhbGxfc3ltYm9scyIsdC5NYXJrZXQ9Im1hcmtldCIsdC5TeW1ib2w9InN5bWJvbCJ9KHN8fChzPXt9KSksZnVuY3Rpb24odCl7dC5DcnlwdG9jdXJyZW5jaWVzPSJjcnlwdG8iLHQuQ3VycmVuY2llcz0iZm9yZXgiLHQuU3RvY2tzPSJzdG9jayIsdC5JbmRpY2VzPSJpbmRleCIsdC5GdXR1cmVzPSJmdXR1cmVzIix0LkJvbmRzPSJjZmQifShvfHwobz17fSkpLGZ1bmN0aW9uKHQpe3QuSFRNTD0iaHRtbCIsdC5SZWFjdD0icmVhY3QifShhfHwoYT17fSkpLGZ1bmN0aW9uKHQpe3QuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0oZHx8KGQ9e30pKTtjb25zdCBjPXdpbmRvdztjLmluaXREYXRhPWMuaW5pdERhdGF8fHt9O2xldCBpPWMuaW5pdERhdGEuaGFzaFNldHRpbmdzO2lmKGMuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMmJihpPXsuLi5jLmluaXREYXRhLndpZGdldERlZmF1bHRzLC4uLml9KSx2b2lkIDAhPT1pKXtpZih2b2lkIDAhPT1pLmNvbG9yVGhlbWUmJmZ1bmN0aW9uKHQsZT13aW5kb3cpe2NvbnN0IHM9InRoZW1lLSIrdCxvPWUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdDtmb3IoY29uc3QgdCBvZiBBcnJheS5mcm9tKG8pKXQuc3RhcnRzV2l0aCgidGhlbWUtIikmJnQhPT1zJiZvLnJlbW92ZSh0KTtvLmFkZChzKSxlLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kYXRhc2V0LnRoZW1lPXR9KGkuY29sb3JUaGVtZSksKGkuaXNUcmFuc3BhcmVudHx8aS50cmFuc3BhcmVuY3kpJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaXMtdHJhbnNwYXJlbnQiKSx2b2lkIDAhPT1pLmRpc3BsYXlNb2RlJiZmdW5jdGlvbihzLG8pe2lmKG89PT1lLkFkYXB0aXZlKXtjb25zdCBlPXdpbmRvdy5tYXRjaE1lZGlhKGAobWF4LXdpZHRoOiAke3R9cHgpYCksbz0oKT0+e3MuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLXJlZ3VsYXIiLCFlLm1hdGNoZXMpLHMuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLWNvbXBhY3QiLGUubWF0Y2hlcyl9O28oKSxlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsbyl9ZWxzZSBzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1yZWd1bGFyIixvPT09ZS5SZWd1bGFyKSxzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1jb21wYWN0IixvPT09ZS5Db21wYWN0KX0oZG9jdW1lbnQuYm9keSxpLmRpc3BsYXlNb2RlKSxpLmJvZHlDbGFzc2VzKWZvcihjb25zdCB0IG9mIGkuYm9keUNsYXNzZXMpZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKHQpO2kuYm9keV9jbGFzcyYmZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKGkuYm9keV9jbGFzcyksaS5ib2R5SWQmJihkb2N1bWVudC5ib2R5LmlkPWkuYm9keUlkKX19KSgpOwoJPC9zY3JpcHQ+CgoJPGRpdiBpZD0id2lkZ2V0LWZvcmV4LWNyb3NzLXJhdGVzLWNvbnRhaW5lciI+PC9kaXY+Cgo8c2NyaXB0IG5vbmNlPSJCZTJoVm80bFVlMGJnbFlvdERST25BPT0iPgoJd2luZG93LmluaXREYXRhID0gd2luZG93LmluaXREYXRhIHx8IHt9OwoKCXdpbmRvdy5pbml0RGF0YS5zbm93cGxvd1NldHRpbmdzID0gewoJCWNvbGxlY3RvcklkOiAndHZfY2YnLAoJCXVybDogJ3Nub3dwbG93LXBpeGVsLnRyYWRpbmd2aWV3LmNvbScsCgkJcGFyYW1zOiB7CgkJCWFwcElkOiAndHJhZGluZ3ZpZXcnLAoJCQlwb3N0UGF0aDogJy9jb20udHJhZGluZ3ZpZXcvdHJhY2snLAoJCX0sCgkJZW5hYmxlZDogdHJ1ZSwKCX0KPC9zY3JpcHQ+PC9ib2R5Pgo8L2h0bWw+"}},"time_used":151,"timings":{"blocked":-1,"dns":5,"connect":3,"send":0,"wait":130,"receive":0,"ssl":13},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/2010.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.622Z","timestamp":1785159268622,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/2010.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 854\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Wed, 30 Jul 2025 12:26:03 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 08:28:14 GMT\r\ncache-control: public, max-age=86400\r\netag: \"8a5e9b87a7c053bb9d65cd8bcbc4b171\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 18374\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: csJSeD08jKpTjg3cRA2HWmHswmc7w_pc9M1KcelQXDNlVTFu2kldRQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":854,"size_decoded":1425,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"8a5e9b87a7c053bb9d65cd8bcbc4b171","sha1":"2168aa11330c0401cfc5e0974b7ca94093c9d48b","sha256":"0b1d6af59fc52f5e8f88909ae09fdd4ee303dbcd00004c210b8e375759893cb4","sha512":"47a77cb24f98b7862798354660849992762cf9b9df17cdd872793f36467addba4fa78b7751c167297120010aa62e36fcf2b27c5d46f1fdc2270ae62665872e86","ssdeep":"","tlshash":"af011a7a5f05106ffe733a7083576661d745826711081e4880b3907c36b9c405d4bd03","first_seen":"2025-08-01T01:41:04.546261Z","last_seen":"2026-07-29T06:14:00.365942Z","times_seen":1602,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADHUlEQVR4Xu2au47UMBSGR0sNFYiKnmsxcVZbUCJeAIl3AEEBWgkoFrEl1CCBRAEF1WBHM6IHITqKpYDH2G4RSNzHCTOxf1/GnjiJo/Unncbn98l/7Ewmk8lolEgkEn1B2N8yDiWL5qsoMD0cCPuy1k6KC5DTm5i2spxbXMNU94iN+ELo13m8w+GVNDlmIpFItEobF6g2arZCeVUXzGbFGZRIuDSVsZlUkxR3URIPF2dHnXdLaspDGz2E/SyNuu6+S2Ob9FxVkz3G1HDxWYBeGU9OtGKQFC+XzefFZUw3YuvVsf9n4Q1M+TOIXQKCeg5arCPCet7daFxINFTFH5RoNA2PSZ/iUHsQtj3amp3E4RJsahn0+2qNYREy9mg+/xMO94PNcMY+KnmdFsfleC5UVLW9cnVyxGoIcxi+Op22d2yGMIfhq9Npe0c29APTimGdeRzXaWrtvjUfHdiQyTjmTbpBkrFbTk1JzdPTmB4G/OtN3sX7KHEmZ++HdUbwGxw0XMVvlK5ErdHjIoxfX3I6OBptYhrnu9aqdR8wZcdW3MVAxh4oOjFydgenGCFsR5kvBr8T1IE6hEwvGHO10eI8plYW5pS3p6CTYwenGOGLpc4XQ39dQZ0OW84IP51cJqKBVWZs4HzXWgsN/9h2Dhp1Na2DsF9KjSrUX5JRoRp+ixJn1GvBN5QMA/6A1OVsEDV5cRvTw0Q9I/SLgHmTLjpkw/uYVhrSNYfjOk2trR67m/KdYzOMOQxfnU7bOzZDmMPw1em0/KFMr6AhOfdCyeu0OC4Gf6wmgvkoIGxvHg9xuAQN68wThr8gVY0IfwDLH8R2Rsae4ZAX2JSuMd0vySaU83c3cNifUIa6JKjnoMU6Iqhn/gcjL8T/+w8JYfXLFG1cycvab47jcDyIuxRkp2Ihp0/KhvhLDSb4/3Y+C7B4QYLfBUaPa1M+CyDqQn8Ug0LoPbkxOkWJhEvz48lZWKwDlMSF66760EbNRCKRCEKTC1Q1T34DxIUmxwwOodfXMiM2sTk9hWkr9dzPmBoO4gJkxRVMHw7WOXMSiUQiIP8AkShaO1yVGykAAAAASUVORK5CYII="}},"time_used":35,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":35,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/52.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.604Z","timestamp":1785159268604,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/52.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2330\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:35:17 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 02:14:21 GMT\r\ncache-control: max-age=86400\r\netag: \"39edd8e5c80256300562f68afb1ab525\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 40808\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: JJJYQqZ4fFgoQkOvlbXPzWVPQpQ1NacD-E_I_9Mm3Behkuko6V1JWQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2330,"size_decoded":2856,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"39edd8e5c80256300562f68afb1ab525","sha1":"506e80486e2b9e90f7344334cd95e93ac8fa0338","sha256":"cf4c3c2ec18de3d4dcd49151ffe00cb299f86fc98467cf806b9c447467935479","sha512":"029abf77a53608d0e0a92ca7764bbed17cf0960e540fee5f8eb0a9cb1bbbb490e730ec22e8dc186b07b784cd87410f5667207c22478773346d725579673e5e2c","ssdeep":"","tlshash":"a3410ad884a0624d2924177332a3193dfc6d3f949a066dffc81d563c84a1e8271b5d64","first_seen":"2023-05-04T14:58:57Z","last_seen":"2026-07-30T06:07:43.538027Z","times_seen":17591,"resource_available":false,"data":"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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/74.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.609Z","timestamp":1785159268609,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/74.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 4251\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:36:06 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:40:30 GMT\r\ncache-control: max-age=86400\r\netag: \"ae64499c8825452f6262177ee6dd525b\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 21239\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: 4JQywcfKYI4qOGHf8WUwdBGTP2R2hbyEAVQigVzaItiwhT3eIhO08g==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":4251,"size_decoded":4777,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"ae64499c8825452f6262177ee6dd525b","sha1":"92a35e0817cefb5befbb18422fb4c9d220f6754c","sha256":"47fb417f6b72c4edc08dfb90a376b2c88b3b51992bf3c83dd14e011edba2f339","sha512":"1a776374f3c20d16bf0c84dbb28a6ca3d0a110ca928aa87f56d79d09b898091b84f4d3ea164a6c79db0c9fedeb66167bd83b854267c2870394f70dc536117441","ssdeep":"96:IqQDUBKTuBVrN2Dc4tR/HAwaHEIkVZdBrc2nPatF:IL4cTIB8c4n/HbIegdF","tlshash":"00918ede37594349986e152b32ca7f282c32b7db00753e35ad4946c327b4063e5d6714","first_seen":"2023-05-04T14:40:12Z","last_seen":"2026-07-29T06:14:00.390251Z","times_seen":15033,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAQYklEQVR4Xu2beVRUV57HnXP6v/SZOXPOnJ45Pd3TnaWdY7RZhLglrklMtG07nUnS6U73TCfartEEjRFsg0QWQ2s0uEIjiMu4xLgkUVEguGRcQEQEESiqgKIoiqKAoopF1CS/ud/76j5e3feqKCJJd5/T95zvebW85ff53t+99/dewbBhf2/ffMtIingxPTnClp4UQUIZkrTfYV8cI5/nb6ZtSxj5XQbylQBKiw+j+KUjadWiR+mdJSPpTytH0ZaEMEpPVITX+AzfYR/si2M0pnyFc8rX+atrGYlRD/PeTY6geAYTx2Ayk8Mpf1cU5Q1SOAbH4hw4F87Jz82uIV/3L95ET615YyRlpoTpYIZKODeuIa4nx/GtNxbETQGOFFaDzR5Nn2eP1wEMlXAtjRE35bi+lYaLb3onjI/Z/Bz/ACtO/ZaKsifSyeRoXfD3q/zdvi27Jq6NGL7VbNiRFL4OF3xnyaN0fMdoXYBQ3dl51HBhEeWmPkbHU4fOhJw/RtPu1dGUs6r/nIgBsSAmxCbHO6QtPSlyEi4Ut3CErte1Kj7yAtWfW0iFaePoZEo0ncnW7zNo7ZxK+RnTuAHQx5v7v0MsiEkZEpGT5LiHpKUnh/8WF0haPlIfnKQjW8dSw/mF9NkHY7kBn66/vywozJpG53JmUOHOpwyzQAixcRNYrHL899UE/OrXH9Vd1EiHPoiiemZA/kbFAEjeJ1QdeTeKrh6axeGh09umqlmQZ5CFiHFITdieEjZxMPDQh8yAa/ufpYvpj6sGnFw3eBOOrB1NH78/mXLTp6vavGwCbX9rPDdATIiyhAmIXeYZVNuRFJHM037ZwGkvhPFoKphDF7aPYRpLlzPHU/nBSaoqDk2my/vG8/1OZkbR0a1RtH9jFB3w6eAmZfvRu6NpT2w45WU+y8G3LR9P25eP5dqyfAI3IDdTf30hxKxMjBHJMlfITUx48smD6ZP0KCrdP5PObxtD5rzfqNKaMJAAD21dHEanM6bT1pgxFPdKBP3+mRH0wqThlDJPGQInduivr5WYGGWukJpY6oLN9lDB7gf9ZGFLYHFONFkKXvZTxaEouvlhtKqi7Eep8uMZVHlcUcWxZ6lkbzSdWv8IHY7/Hm2cO4L2xI+jw6mTOPSssY/w7YuTh/NhAANOpuvj0QqxiyVS5gva2FJSjgIj0DovlPvnYeR2Vmtkot4OC912W6ivs57udjXy11C3y8TlcdaQp6VGed9W6ydvq4mrramamuuqqKXhOm1Y8hM6tXkKZSVM5AYkz42mLTGKAYHmAK3AoBRLkeUyZ8DGU3/RwJNebuYwcjVXk5cFf8dTz6XA13F4bgB7LQzoYnAcXgJX4PsN6GRGttlrqN1hovZmdoyrgV6drRiw9rXR6lIoxxNIYAk5C7BjAquzB0p9aHfKMLrnbVDhhQQ81AdTOhQDRM8jS4R62s3cAJgjzOhi+3T44LGtNVWRmclae5P2p0yhvWvG0K640A0AC5hCMgE7pb6tubEJIKz17dde9wNHT9/1WqnH3aAa0NVm5tCdLYoB/fB1fkboM0KBb7RUc3jIaauhTpeVruY8QQVbxhnWAYEEpgENyEwMexBOyQcbyXx2PjmL5vv3PIPv7WzgBtyRDHA7FCDe6+56VUoWWFiv98P34DMmmOBpVTLBYa3hx0P4/ErWBDqx/TFdXMEENjDK3GqDQxnJA9/P79sQTq6S5dRavIBBWjl8n6eBqqoqqamxVjGAmQF4SASOdNfCA1orbQYIEyB8JzKizVZNdksVedlkWpQ1LqShKgS2gFmAR0546iIfZKSWohhuQFfH5/TF3U5uQK/XTq4WKxHdYZNiPQe/wybA3nbFAExyvRp4bgAMMjBACy+bgNUB6nSwjGgsokNp+viCCYyGj9eYM1/iWZx8gCwUOoB3m7YxAy7R3V4HS3cbM8BBJlMNzwKsAoCHulxm/0kPac+WSJOpmqpu3SSvq45BCwU2QAwJ9D4McDfX8CzI3foPuhiDCYxglflDXvpQpraXraZu9xXq7rzKzWi79hbNe+Vx+p8Xx9G9nhYVHupu7zeggwXtsJnIXFtFPZ5qWjj/1/Rv3/sOfeefvkvXD8+kG8eeU7LDAJ5ngW9yhAHt9mpuADJLjjGYAi6JfPwnBh7/+TnKhHN23wwGX8R0kcGdImdxDNkvLVZUOIfudisG9HmsqoQBWNurblXSnV4n/XL2BPrJQ/9Mz88aQxPHPUwlB2fQzU9foqpTr/CJFFkiGyCygIP75GE1w+nMB3TxBhIYdQZsT4ycjcfQAz29zd89ltx1GQp82wnq7sjnGcDhL8yn5s9eYwY4/OC1BiADbmGIMJNqSzPox//xj/TTEf9K769+mso/+RVX/bX3qK54NfV1NRlKGMDnBN/WZSvTxRpIYAQrmFUDmCOWNSGMf8jrPK7At33KeuQcW+LyyH5xEdVfXM0MmEt9PS6dAbdZWvexXoUBXe115GXamPA87drwCyo9+aoKX3lmDjcA6vWwKrLLrkoY0MPqBwEu5HYNbhiAFcxaA/gDRnlHWZ/tiebwnc2HOXyr9QB9npdEE8f8iKY9/hBZL73jZ8AdLypBfzNgAFSRO1cFh2rOL1PheRZcTTQ0oLfTygsqrQEox09nhdaBEFj9hgHe4K5J3jFv12g6kx1GZw/+nM7+73TqsH2o9H7LUXKYd9PMp0fxcaxVU5ONbI2s+PE0cWGF6NMYAXgA3cqbTzXnYvygZd1mw0kLL9TZoox9YQCGxcVjzxvEbyzdHSLevLdi4PLX26KkP3q/2bQTJzA0wGKuUQ1QTRDDwdej1rJNOmBZvV5lGBgZAGmzoL7isC7eQAKrzoC0+J/qdlSVHUnnD77AUu8Y630l/Vssu2jE8H/RGeBw2JkBJj8DoK9jQGfLNR08N8CJewt/A9ocdfq4Awisfgbg19nta8OlHR9js/54NgSU6rBgzySe9vabW6nHlUu2qj/Tm394UmeAs8VOdlsdh+5gNy7Y9kCdjawSZCuCt4nLeuMDHbBWDUxu2zkdfKAM6Gw160ADCaxgHsAARTABNcCZ7HCqLdlIXscR6m7Mpv2ZS2jpnGk0ma3hwxk4lrMJ0T/mBsi9z9XewAoZi38GlKZS7eU1OniosSSZ3I2FOngjAzAHdLksutgDSWdA8CEwmqX/c3zrtR+gbqdiwNljcdyAN+Y+SY+FfZ9i5j1FkaO+z4ZAE3V1Qja+BTzAhQYaAgAX8jSzUrvHwXWnu38ukA3gEyIrpXOz5NiNpRsCgSbB/N3jOLgwosu6k0+CXdYs8jbspLm/eYKWzJlKS15TBEOczmbydPTDd7N1W2sAAAIZ0FiSosK3VW5mtYPJZ0CzDh4lME9932vcNp9If1zHYCTDSdB4GYT6n7x4G3O4Abbr67kJRXkJHPql2VH0w39/gB55EJOgf+pr4YUBkDDAem2dX68LeOje7TZuQKD01762Xc+mi3ufMohfL8NlMJRCqPyz+RxcqLdpFzdAK6fTTg31Ji7cGQpZ2F1ck7WWbqPC89qo6foGQ2ghV8UGH3x/6t9mRZDS40oNoDWg9KOfUcnBZ3QxG0lXCLEJoTaUUhgrAlJfGNBp3kL1l1bQ4t9PUQ1odzWzO75arkarstWKG8CkNcBZsVFnQFdruV/PB+p9t0PZFu+fxg0I5YdYsIK5PwMSI2ZuXhMW0tOVLmumaoC7ZgO1V/2JGi6vpISlU+n92GeojRngYTNyZ6uFbyE3e+1y4EmRlcMDRmuADN9WmaaDRwksoGV5nGYODx3Zoo9ZKzCCFcyqAdwElhI71ga+HRbqdhzi8B3V66nt1nss2HXUcCmWZcJKKv10LlvvHazcrWey8K3ocRnIfwik+Blwt6dFt78MDeHxGN823qBzGRPo6sHpdDgt+NNiMPqlv9aAUB6InM6KVHrftFExgRmAbd3Ft7kJuBkS0IHghQFNpeuYlKXPUYZzKROfvC9meRne1Vitpv/Z7T/gBiADig9M18WsVbAHIvdCeSSGMXYr91XysiUR4J66feSp30deViW2Vu5k9/rOAeF5j9YdIbf5kCqPLZfu9bbqZn2+L4P0usx8C2jAQx12fF7H4YUBA02Evkdi92T+YXvWhz2A6kg+QFbxsVlkK4qljpqtbPwns6DtXF9APXY/+LvdTfwzGQgSBY4seT+sGJC254XwXLAidxld2fekCj+QAWAEq8zPG58HgjwWg+xXV3GVH3+Zyo7M4JCqCT2BdQ/7qe+bdeACHjW9bEKfzwA+5n0Z0M56v5cVWyUs5bXwhVun6WIWApth+ou2LWnUDxPeDD4MWkrjuQG2opXcAA9LzW424cnAg9EdADJwQ3gmPEPAbw3aDOhmnynQ06n6/HKuW3kLKO+DKbqYhcAGRpnbr8GhdQZlsZDIAAgGAN7Llroveh06sGD6kmWMslwq4IHghcQtMOBRB1QVLmXQy1R4qOzEHwIaAKagvS8adoJTgWoCrQFNRTH8GR1MQJkLCPQWhsWXPtCvept573nZ925nP6xW3R31/Bkg1noIY17OAA5vrWLVYJMOXOhC1mxDA/iPo2+G+OMoGl8SFxovibIB+A0QggkQCiAZMJgEdDDBQP7abeGgtRdZ3VGSQLWX4qjm8xWqAXmbJhsaAJaQ4dEykiNK0uLD6ei2SN3JAhmgNUHI44MUW78eNwANpJ4OpPwCqrnwFjWUrqWGa++qggmqAYCXDAADWMAkcwZtcAx3TQXSX2H4G7CC3ac3+amnAz9oKMKwwPwgBCPkIkkWHwr8h9NqshQlUtW5Nzkch9eAC5kvrwpoAGLX3fkNpuHAWM1QKNw7wc8AI13Y93Mq//jXXKVHX+Lvof878EvdmB2MZHCh+pI16j6yAYj9a8OjZSRFxuLX1MQYZWmUYY0kgLW6fPhFulX4hg4qVMnQWlWfUybEM2L8+wxAzIgdDDLXoFpGcthouPjHxSN0sEaS4SEZKFTVX12jA9bKcmW1Hp5J/KEkYpd5vlbLSIx4LlQTzu+dpYJf+ehXOqiBFGisGwnL4ZlNk4zhWcwyx301YcK6t4MPBQV+lg4smKrOxvCtDBhMWAYv73/ZDz7xDaXYGXJ40XasDY/EuFox72FqubZaBw+I83t/RjdOL9BBGoqNX3lZC0WNZUn9az5TQdoUil00go95xCjHPaQtPTl8JVzGbWV53usKfHEcVRYsoqLDv6DST/5bDxpAMlio0vb60dQn+H+bISbEJsf7jTVcMG1NOMuGh6jsk/+i0uPPq7px8nc6WK2MCppQlc+gy07N52VvHOt1xHBfS939tB3JEcW4+Luszk5dGeFnglbV598akp6/WbCEZd1iSo2N4tfEtRGDHNe33nj6JSk3UbtSJ/jBWy7H8uDNrGSVgYLJfGUVh0Wld+PMIv465/2n1Zuav1ivB2uZCWE/4LNwkvKvdLELhtPezbPIOoh0L/fBVuS/Ttnrn2LV3H/yc4l/r8U15Ov+1TU8cmLBdoue2szGKXpuFRuz8UtH0fq4MZSRMpV2McDdm2ZSesoU/ln8klF8H+yLY8TxOFfAx1h/C21HYtg0BlGpAVLWa5/kz7EvjpHP8/f2DbT/Bywjkv1zCDfPAAAAAElFTkSuQmCC"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/7083.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.647Z","timestamp":1785159268647,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/7083.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 4286\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:36:00 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 01:55:24 GMT\r\ncache-control: max-age=86400\r\netag: \"24c244a9b134b0b20dc773ff3205ceff\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 41945\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: Hq-nsS1XrTh9aa-r8fcr1z08yNyUKCHoo_ZvlbON7faOVljN49oqQQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":4286,"size_decoded":4812,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"24c244a9b134b0b20dc773ff3205ceff","sha1":"4cc2e56268b05b16e8f83994d123b718dbd9aed2","sha256":"965d190fded64a36997b47c11a127aa66fdfa182642f24ba11d1271674142a74","sha512":"66e2c72c9479ae0c4a36f6d8a1a5074f2ffc484fd39bb7a19bd84def584071affe5dd95f960462a713b873042a18302ea921c319d9e177aec1cfbc8d99e87607","ssdeep":"96:qnaFq4eHDfniUwYKYmtTTbnTJXZiTvTYZb51oQpuz:qnaFq4eDfnIYmlTJZuet1puz","tlshash":"74917da5179858b86680474fdfe543cf4f932db31000552f2f90f59a6b38f7a5248cb8","first_seen":"2023-05-08T12:03:54Z","last_seen":"2026-07-29T06:14:00.364222Z","times_seen":1496,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAMAUExURUxpcaNpafnd6vfh7PnL4Pfv8ffG3vz7//nt8vjY5/nu9PrQ4/j19u7u7vfm7vjO4f3x9/ns8vfs8fru9PXc6PLR4evM4vTp7vry9vfs8u3Z4/fp8Pnz9+3n6/r1+Pjz9vry9vLZ5PnD2/fO4ffU5Pb28vjn7/jf7Prp8frz9/r19vnx9ffg6/DS4Pjd6vTc6f////jn7/v1+PfW5PPT4+XX3fr29/LS3/bA2fPR4vu74vfr7//2+u631/nz+fbp7f/0+f7z+f/x+P/4/P/0+/70+//m8/7w9/3p8v7v9v/t9v3l8v/r9f/s9P30+v3n8/3r9P7q9f/m9f3v9vz3+//y+fzk8f/s9/3y+P7o9P/k8v/1/P/v9vvs9P////vo8vru9P3p9Pzx9//3/Pzw+Pnr8//6/fvw9v34/P/o9fzr8v3n9PoCev/8//fx8/7k8f8Dfvrj8Prm8vj1+//k8/wDfv4Befny+Pni7fvl7vUAb/zy+vz+//72+/3u9vz3///u+v33+/AAcPjq8P/p9/rY6f3x//7i8OoGc/vc7P3t9P/U7OoAa//w/Pry/f/4///1//ju9/kGgPUAdPvo7/bM6//z/PGs1/v5+vzS5ed9ufX6/elorvju7/nt+v3j7t5uq/7e7u2/3fzG5Pzy9f/T5/j4+OiGv+MKc/v8//QHfPj//+cjgudcpvjT5//n8P/e8P3O4/Xt9fCVyuAUd+yby/bB5+aky/fT7//N6fHH5eItiPnZ9u8AZ/3v8/XN5+AefP/Z7NMXcfG33/re8PkAcegSe+Ct0PABdf3g9uyIw+UBb/TZ7uxSot0+jutxs/7p+vbg8uBlp+MAZPD19eE2jOys0/S+4u7h8P3q/tsSdffi+uBTnOK+1+NKl9lgoPTn9e+Ox9krfuk6kuJbofvk9uxFm+6i0N0GbPvW7OePvuouif/l/eeWx+3V5few3OF5sNiSts5flvHv8M83g9qDsMtFjNZ3q+DY4NSextROktwAYdu0y9Nsotuhwckqevm4aWsAAACadFJOUwAB/P3+K/4BAv39/f0H/ukZ6bf2hrj+XtDQXW2+F+p1hHn99tAUquv1XY+Mj9HNOwSPOviPKqpt+6r+gj34Lh////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////6HGF5lAAAMtklEQVRYw4xWe1BTdxa+QlkgIFW0itWqu7Wt1u4u6+72j52dndyYcHMJ3ETz8CJNiDExmRCyPEwuBnIhyUghGwkBFCS8igiER7UIyPASURER8Q2KLxzro1rfbafttt09N3S7u3ba3TOTe2cyv/Od7zu/87gI8iMLjoZHdNCq5ZFRc+fJHSvnLopcvjDI/2cw8r+NcY/+89tR89huN1er0TgcNGfXrtiVi1avif5/IODQnGVRXEVRnEPjYLGUYA5H6bZMPpbCWbRsjv/Az1hIMPLa8qUKq4Yll6sJq41HECghxUitx5OelhafOHf5a0hwyM+Fn7VsqYJgsbQkLzGRx0N5PC6bRHkoAUC0PCKQ7567eNZPkgD1f1mikLKMlMTK5lnZKJfN5rJR8EelKBjJkUdkxuyKDPqJTAQHI6vCUxxyQmKzQXAuj82DF+OIoioSniTJwfSBgZyVC5mzP/ZHkLcVJIuy6iQS3WaUx0XZAIH6jWRMRWpVHA6eHliT+zv/8RfSh8x+V6E1EjqdFTIHzNlgPDYTnuHgd1epMA4JJLbnvTkbmfVC/JDZSxQsrUS3xcZjHGfsewEcDkfKwTCMI8XgQqTyzIAdkbNnBb+Qv3cVLMomsUkkPEY8yjDgQWQeSkoxQIDQEB8Ta1X4e6LMgNw3/zuT0aCfRUl0VLiO4ELu2OgP6lVAQKVk4sNPrNRqcRyL/yBgxzv/eZvRyCoFS2mVEJIvAxUqNkFAGjCOiiLJLIoiITy40hhHDfFVNI4PDCQEhsYtREL+ncCg8AyjRGcjvNTTBS3qjCy0oaGe9PmocAoQMEwK4tWYVo3V1+NAQEw7SwMKAoJ+QAgJWZLCkuh0tvIG3dlnR1qqKCq8wfvltR5vtrGeQ2UBAxVHzFJ7tJxYMYY7aSceKwvdGBkS8i8BixW0ygZWXk+1fPJZp8KTQTaM1T16+m2d78JArlqMiYG6ODfQo47FMJrWOJ1xcTWhGxbPpCE4+I2lEpxrBQBJBkFlH/pHYwqhzO4cqrxc90WFz6hW4nIn7kRt6deyKBpzAgDt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"}},"time_used":27,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":25,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/GB.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.434Z","timestamp":1785159269434,"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 /country/GB.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"09bfac5408302ee8c52fa2ed008c4f13\"\r\nlast-modified: Wed, 08 Sep 2021 09:01:59 GMT\r\ncdn-cachedat: 08/14/2025 09:10:20\r\nx-amz-id-2: 68gGMaqWV52aq4R4wVs0x4FWrkZip1o16smB3CWyrNHqHEHqlbY86adMdFCTU1o2p0cOST1IVfU=\r\nx-amz-request-id: RGQRYSSB0AWQ1G5G\r\nx-amz-meta-hash: 09bfac5408302ee8c52fa2ed008c4f13\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: af9485b6de75a6ed18605c1527bcaf0a\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":468,"size_decoded":1207,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (468), with no line terminators","md5":"09bfac5408302ee8c52fa2ed008c4f13","sha1":"ec2b53eba8ec1a31fc6745cd9c4fc09518db1c2f","sha256":"b3e463d925abc879f5b76428144c0da44bc02fae2188f71bc9e7aa7ab6f46037","sha512":"91a4dac83bf63f0aca8abe1038f8228640fcdda0cb3dee9d5c886cec74267b834c8f4cf6d59c7e8185c035190f46cbd931bd3661590b81d16240ff2d4f9dcd6c","ssdeep":"","tlshash":"7ff05cd9932d88008842c228fb190030205e70faa1dc05eeb8aae6203a416f7a887ecc","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-30T06:08:06.714039Z","times_seen":3144,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDBoMTh2MThIMFYweiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03IDBIMWw2IDUuNVYwem00IDB2Nmw2LjUtNkgxMXptNyA0LjVMMTUgN2gzVjQuNXptMCA2LjVoLTRsNCAzLjVWMTF6bS0xIDdsLTYtNS41VjE4aDZ6TTcgMTh2LTZMLjUgMThIN3ptLTctNC41TDMgMTFIMHYyLjV6TTAgN2g0TDAgMy41Vjd6IiBmaWxsPSIjMEQ0N0ExIi8+PHBhdGggZD0iTTcgN0wtNi41LTV2Mi4zTDUgN2gyem0xIDFWMGgydjhoOHYyaC04djhIOHYtOEgwVjhoOHpNLTkgMjNMNSAxMWgyTC02LjUgMjNILTl6TTExIDdMMjMtNGgyLjJMMTMgN2gtMnptMiA0aC0ybDExLjUgMTB2LTJMMTMgMTF6IiBmaWxsPSIjRUY1MzUwIi8+PC9zdmc+"}},"time_used":103,"timings":{"blocked":-1,"dns":48,"connect":28,"send":0,"wait":2,"receive":-1,"ssl":19},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/feat-ico3.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.971Z","timestamp":1785159267971,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/feat-ico3.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"7b8-66136805-4aef0923e26b8260;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 1976\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1976,"size_decoded":2301,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"55790551f8bf864ea47175b5c3e32efc","sha1":"56c71287e1bfffc25870d6d62544830b0503fa58","sha256":"85580eaf92a7f2466d32c28cddcf886d66d14c23ee56c36ac9ebd16ab5af54c7","sha512":"83435fecd34b097eb8edcc8d493b6299f244940094399651fe821fd3bf72538fe2fddec1a799a96970ebd6d9aad04bb1720d8089955f56e9d4d4511890421189","ssdeep":"","tlshash":"b341084efb040c006a54fb9378d703274516da80d4f4e8e5bfcbe8321a290e2d45e2e9","first_seen":"2026-07-27T07:08:39.279074Z","last_seen":"2026-07-27T13:35:41.591814Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QkM5QTgyMkYxQjhEMTFFQ0JCRUZDNDJCRUU2NjgwRjkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QkM5QTgyMzAxQjhEMTFFQ0JCRUZDNDJCRUU2NjgwRjkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCQzlBODIyRDFCOEQxMUVDQkJFRkM0MkJFRTY2ODBGOSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCQzlBODIyRTFCOEQxMUVDQkJFRkM0MkJFRTY2ODBGOSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pvspn6gAAAQsSURBVHja7JtpSFRRFMffmJloC20UQnu2W0KRkq2fopL60uLHNgoKv5QVQQuYJFFBFLQoRbTQh4pWK4g2oiKiqCSNSqnIFsMMs1Cxpv/l/QdvrzdLOsub6Rz4Mde3zcyfc84999zR5Xa7DTHfFicSiEgikogkIolIIpKIJCYiiUgikogkIolIIpKYx+KD8Ix7IAU4tTHlAp/BuFY/IAhNt2+go8OdoRm0j6QnrQGdwDCw2GHiXANXwI82uWIQ27dTwE2HibQRFDgpcSe34p6foDGEIiVG8+z2HWwC6SAN5IDSAO+tA+fC+mlVuAWJme7ArAHMsrm/Jyj1c281mMHrtwfwXgXB+G6R8KRToIRjleyncqym6Xw/95aDy9qEsT9Wi8lbfE3izHMDZGo1l6+ZaDI4o+W/FaA4FkVK1GqXF+AD+MpjHUA7P/XOHHpQMgvY5aEWKj4CIi0Ae0ATv7DyqBqem0ehdKsCh+lxStAGCv3Lk1Yp1Bewqi1Fo5MSt7IdIN5yfzaos1y3iwk9kPfvC2pCkbgj4UnKVoMsJuF6MB7MtYTaMksYDQAjQT+ux45pYarOXQTdYiXcPJapJWyr5WsCdWbVvJDLH2XrKK5HIDVbDo+lnOTPnoEtHHdn4ZjFv+uZd4rDJVAkZrfr4CjHlV7qnAOcxeI4ztLOPdUE6g/Oh1qgcCfuSyCZ1xaCsRzngSZeo14H8fgkL885BNJAWbgq7nCGW5VWKK7Xjr/WGnZvwTuOZ3t5ziIwv5ULaseH21KwzaaCPgkS+PcnrSvQK8gdh6gQ6Tk4bZOkT2iFob4kSXDKTBJOkVQdc5/jDHqDqrT3sYpW9oivql5K9fKcl2Arx7WcCWtjZVmSR1Eq6D0nOdMd4dJEeVERrx0CRts8owzMBG/YEVDheRVcAGcNc0Mi6uukQm2cQwyt9VHB8RIvn+2nluSPacd/xVoXwK7TmAv28u+hXLDaWRpbJfruTApbLinRGm4fOfW7bM6p8LoJjjOpe3pMRYb3LSr1vM2WBF8NNoDt2rIlqkQ6yC8QiA2mQJN9XPOKXqPCa4xh7vlV0rvWhkqkUIdbYwDvPwrsBA/AND/XT+Qsmc3+UgkTufLIgdEabjlcW9mFWxfmkeH/WBNNJ8q6Gi398qgtAUaQqDb5VUmYRXI58Pu5nCaSOwT3uyP8mUylg/iDic6cxtvywB5Gy77aSnC3Dd6gHOC9Ye6wOCZx12kL1NaamvGaOVa/DXgsiftvSzJadkySnfKhnCRSuvHnFvZuFoqRz/4O+R/cPuAOX63rO7VMeSieZG5M9vESfrkSbqb19nEuVUQyrdzHuduSk0xTLQ7Vhs2wHFd1zgTDbNf+9yJ5Qq6Q7RD185knhtmLKhVPki6AiCQiiYlIIpKIJCKJSCKSiCQiiYlIIpKI5Bj7LcAAxsGjMdwR9Z8AAAAASUVORK5CYII="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/feat-ico4.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.974Z","timestamp":1785159267974,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/feat-ico4.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"914-66136805-cd6c001159aeda5c;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2324\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2324,"size_decoded":2649,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"c5c1d42fd3c96609955a5a18dc034e7f","sha1":"9b3aeced24952297f2aa09fb4e2b854273f491ee","sha256":"7b7ff441805adab44bc1910e761d279b6e23f653a3fb6b8ac92ca103650e8178","sha512":"e1ee6bde7d149cfdd681c9a2c08b506333d8f89bcc3dee12e4012ce383a8dd7ccf8603dcc9882256d5a662f9a994dc613dc621d2df112fad606fb9c2179ba043","ssdeep":"","tlshash":"a041e85bf1926c43f339d45f24eb183edd210c909295b515b9cdc4492e32bf8041d9d7","first_seen":"2026-07-27T07:08:39.289543Z","last_seen":"2026-07-27T13:35:41.744511Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzI0MjIyM0IxQjhEMTFFQ0E4NUFBNDM2QzAxQjRGNjciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzI0MjIyM0MxQjhEMTFFQ0E4NUFBNDM2QzAxQjRGNjciPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDMjQyMjIzOTFCOEQxMUVDQTg1QUE0MzZDMDFCNEY2NyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDMjQyMjIzQTFCOEQxMUVDQTg1QUE0MzZDMDFCNEY2NyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Plwng+oAAAWISURBVHja7JtbbBRVGMdnli1tWShbkHIRCmKUGiXoAzFgBBSj4ItCAI1BQCHECDyYQEzEiIKpiS8GIwFfNBhNTEzABxJUUAqGkHBLEAqEmxYaUAShNd2FbjvD/wv/jcfj7LaY6enu7PmSX9ruXDr773c739m6vu871vJbzEpgRbIiWZGsSFYkK5IVyZoVyYpkRbIiWZGsSOFaEqwEh8EJ8CG4pxAezC2QUUk/8DGYCxLyXCANdoPl4NdSF6kCbATzKJZqGbALvA7OlnK4vZdDILEy8BSo5/clKdIcsCiHQOozPgfeLLVwk5xTA3aA8d285g8wAxwBfil4Uh/w6h0IJDaU3pQoFU8aCfaBu+lVqnkkHnBdJ5gMDvF7IxbvBYHKwZMUSrXL4BQ4yap2H6jTzhMPnM1zWo09sXiSYWrAFv/fdhG8BhIgBuL8Ogsc0c49AWpNPnNviHQvuKS86QyYy2NPg6/BNvAyhZoIrirne+Ax4EZZpOmaZ2ylBy2mR3WSNHif16zRrlnOa4w8s+nqJv3QOO21H8AN9kLDWHFj7MSnc/32o3bNKB6PZAtQzlKuWhur2cCASjeAz9imvT6C94qkSFJNq7XXHufX7QFlfR/XbI9qr48FlVFtAfrQO1R7HnwJPmLYzWYo7eBkYAwnAaoNBn2jKpIb8DvvAh+ANWAT2MpQkvHIQ3z9wYDndqMqks9GUbdJYAP4imuzDvAseDEg1Bwe96IqkheQhLMmHfa7ynn58uXVHGJHInF3dHM50dVznWf+iqRI7eBKCPeRdd7NqIZbmiU9xUqXTcBuF4nYYz7rJOcpeGRHJUmW+YfBBDCEr/Vn7xNXhEkzh12nB8ouylFWwAumhm+9IZKrVLo4PSrG/qmanbf8/De4BlqUapZR7uFHzZNc9joyG/oOzAQv0Bt+Z7Vqoed0KvlS+qUqMIjrutHswj8H05i8D/O6os9JEk4LwUQuaGv4cysTcDu9JKP0PzF6mXTWZRQswdATId+g+CsZhkUvknTVjzAHiUf9zORd9T/u9T3FeoDiJaPSAvSjR8ibWwzOgRWg6Q7uIfmpnp44nwm/nd4WiRYgxbwjf3nZiJTt68/AX8wtY5l3EjzHZeilGF7NYC/YzCXMCib63xwDGwKmRLrs/LNNPRysd24PzmSV/y0T+mCKVEGRbirlv4m5SgZzbysL3mYe7+EVp7mx7VJtBOtx3p09XgaqQZIMApXK8QHguHaPelDV089usuNuBJfoSQ5D7k/l+FIwRemjJNf8wjlTK8OvgQvhOL3sgGNia8mgJ4l3vAOugCYwh1tH2eN7/P9aI6jjcdk5mQCOcvdkIxhu4tlNeFKMyVhyzCdsJqVSnVbOqcixFstoyxSZNT3DpvIME3v2Wq8n30BPmqzFFlEYCY1tzu1Pkuhl+36WdN0GMrz0cYuE5TdgP0NQGsqhxRpuQ8BmJXw6QCs4DeYr50kYtgSEW4bXZ8+bBPaDazyWtQYwvtg2JytZqbJCLQPNmgAXmGOmMc94frDJda+AYeCYdiwF1irb3tWsgqG+n7AXuLVgCefS5Zz7fAF2somUSjVCOX8Pm8i6PD2bz/s0cu6tzqZWcTYuyx35yOA4nn+MjefBQgu3Wn4Qok37a0tvs4TnvOSHZ6t5z5nggHZMtsl/4mcGCqq6LQCzAl6Xheg6JuswR67t9M636El6QXqCy5e9hTRPkuZwcp6wSXP9NjKk33eRC+dknjA9G1Ade3Xt1tHFnLoyRIEcLbflEimUOXiYfVKDY3CbpxvmsTcrKJE+ZXOXcgzurubwIMl9pzhlKLgZt8yF5BOyU5VcYXqnQXLfIS6BdhfTRkBRm/1XLiuSFcmKZEWyIlmRrEjWrEhWJCuSFcmKFAm7JcAABgBYs85vxIAAAAAASUVORK5CYII="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/33038.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.667Z","timestamp":1785159268667,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/33038.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 3998\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 17 Sep 2024 01:09:25 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:41:40 GMT\r\netag: \"8fae21ff4a6f0a8988b54b0e313a59a0\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 35569\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: m-MqxUaGB9TpyVUHf2Pr77dY1C9FdC2NTBlAwd8dgqwbsKM6HvlS5Q==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":3998,"size_decoded":4532,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"8fae21ff4a6f0a8988b54b0e313a59a0","sha1":"403478a6466c3040cc8f1ffd2a7c974a5d255462","sha256":"a7d5443eca9bbdd62c689dc413dc108db9684829b85987b613b92d1d3d1f4df1","sha512":"964939d60666d7977ff00acdb432a744a824477dea921acaba2b3da1a166ec7367eb373248718b8013005aed6ba8617e8679f5ac0fe164945bb266069f9058b7","ssdeep":"","tlshash":"6f816db04b910e247ffc91243ebe5540dbc38cc2095fd2a04816a63eef5c965f1903b6","first_seen":"2025-08-09T19:29:39.018282Z","last_seen":"2026-07-29T06:14:00.361868Z","times_seen":1337,"resource_available":false,"data":"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"}},"time_used":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":12,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.googleapis.com/css2?family=Montserrat:wght@100;400;500;600\u0026display=swap","fqdn":"fonts.googleapis.com","domain":"fonts.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.106","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.897Z","timestamp":1785159267897,"http_version":"HTTP/3","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 /css2?family=Montserrat:wght@100;400;500;600\u0026display=swap 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://walmartfundholdings.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\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 13:34:28 GMT\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\ncache-control: private, max-age=86400\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin-allow-popups\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\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":7708,"size_decoded":1321,"mime_type":"text/css; charset=utf-8","magic":"ASCII text","md5":"39fd54e13a8ed9ae9c3e63c246fdbfb9","sha1":"d18dee718f0a135fa19cc04b3261fe3ca181c9cd","sha256":"69dfd2c5d73f3eccddca8e78e254c073580a43a3a85904b5a4b23125ec315e49","sha512":"eccd617ffd6c172f02891c769e489a2b36ca17057f0fd17b7c2aeff8ba255ff0cd77713db45971bad55d55faa4d3243c3c9cd246e7e2017935e3dd6e4d00f7c4","ssdeep":"192:NpRdp7opQpOPpuXRo7TbOmuwRv7M0OFupRS719Ocu8:Nnd1oWQqQPTza7","tlshash":"25f1ac91105be500e6472cc923cf7e2add4e21627494c5797ffe2ca8adeac221325b3d","first_seen":"2026-01-09T12:36:53.567868Z","last_seen":"2026-07-27T13:35:41.675014Z","times_seen":5,"resource_available":false,"data":"LyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAxMDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXUmh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDOEEsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjsKfQovKiBjeXJpbGxpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5VzFoeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V1poeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiAxMDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXZGh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogMTAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V2xoeXlUbjg5ZGRwUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Ci8qIGN5cmlsbGljLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V1JoeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswNDYwLTA1MkYsIFUrMUM4MC0xQzhBLCBVKzIwQjQsIFUrMkRFMC0yREZGLCBVK0E2NDAtQTY5RiwgVStGRTJFLUZFMkY7Cn0KLyogY3lyaWxsaWMgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjMxL0pUVVNqSWcxX2k2dDhrQ0hLbTQ1OVcxaHl5VG44OWRkcFJPaS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDMwMSwgVSswNDAwLTA0NUYsIFUrMDQ5MC0wNDkxLCBVKzA0QjAtMDRCMSwgVSsyMTE2Owp9Ci8qIHZpZXRuYW1lc2UgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjMxL0pUVVNqSWcxX2k2dDhrQ0hLbTQ1OVdaaHl5VG44OWRkcFJPaS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMi0wMTAzLCBVKzAxMTAtMDExMSwgVSswMTI4LTAxMjksIFUrMDE2OC0wMTY5LCBVKzAxQTAtMDFBMSwgVSswMUFGLTAxQjAsIFUrMDMwMC0wMzAxLCBVKzAzMDMtMDMwNCwgVSswMzA4LTAzMDksIFUrMDMyMywgVSswMzI5LCBVKzFFQTAtMUVGOSwgVSsyMEFCOwp9Ci8qIGxhdGluLWV4dCAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V2RoeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyQkEsIFUrMDJCRC0wMkM1LCBVKzAyQzctMDJDQywgVSswMkNFLTAyRDcsIFUrMDJERC0wMkZGLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzFEMDAtMURCRiwgVSsxRTAwLTFFOUYsIFUrMUVGMi0xRUZGLCBVKzIwMjAsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDMCwgVSsyMTEzLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7Cn0KLyogbGF0aW4gKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDQwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjMxL0pUVVNqSWcxX2k2dDhrQ0hLbTQ1OVdsaHl5VG44OWRkcFEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDsKfQovKiBjeXJpbGxpYy1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjMxL0pUVVNqSWcxX2k2dDhrQ0hLbTQ1OVdSaHl5VG44OWRkcFJPaS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDQ2MC0wNTJGLCBVKzFDODAtMUM4QSwgVSsyMEI0LCBVKzJERTAtMkRGRiwgVStBNjQwLUE2OUYsIFUrRkUyRS1GRTJGOwp9Ci8qIGN5cmlsbGljICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXMWh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAzMDEsIFUrMDQwMC0wNDVGLCBVKzA0OTAtMDQ5MSwgVSswNEIwLTA0QjEsIFUrMjExNjsKfQovKiB2aWV0bmFtZXNlICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXWmh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDItMDEwMywgVSswMTEwLTAxMTEsIFUrMDEyOC0wMTI5LCBVKzAxNjgtMDE2OSwgVSswMUEwLTAxQTEsIFUrMDFBRi0wMUIwLCBVKzAzMDAtMDMwMSwgVSswMzAzLTAzMDQsIFUrMDMwOC0wMzA5LCBVKzAzMjMsIFUrMDMyOSwgVSsxRUEwLTFFRjksIFUrMjBBQjsKfQovKiBsYXRpbi1leHQgKi8KQGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0JzsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IDUwMDsKICBmb250LWRpc3BsYXk6IHN3YXA7CiAgc3JjOiB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL21vbnRzZXJyYXQvdjMxL0pUVVNqSWcxX2k2dDhrQ0hLbTQ1OVdkaHl5VG44OWRkcFJPaS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGOwp9Ci8qIGxhdGluICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA1MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXbGh5eVRuODlkZHBRLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0KLyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXUmh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDOEEsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjsKfQovKiBjeXJpbGxpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5VzFoeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V1poeXlUbjg5ZGRwUk9pLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA2MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tb250c2VycmF0L3YzMS9KVFVTaklnMV9pNnQ4a0NIS200NTlXZGh5eVRuODlkZHBST2kud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNjAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbW9udHNlcnJhdC92MzEvSlRVU2pJZzFfaTZ0OGtDSEttNDU5V2xoeXlUbjg5ZGRwUS53b2ZmMikgZm9ybWF0KCd3b2ZmMicpOwogIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQkItMDJCQywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsyMDAwLTIwNkYsIFUrMjBBQywgVSsyMTIyLCBVKzIxOTEsIFUrMjE5MywgVSsyMjEyLCBVKzIyMTUsIFUrRkVGRiwgVStGRkZEOwp9Cg=="}},"time_used":380,"timings":{"blocked":-1,"dns":2,"connect":16,"send":0,"wait":100,"receive":0,"ssl":261},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1437.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.612Z","timestamp":1785159268612,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1437.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2424\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 05:05:34 GMT\r\nlast-modified: Tue, 19 Oct 2021 05:33:41 GMT\r\netag: \"2f7f439543524c24f6631dc79fff2534\"\r\ncache-control: max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 30535\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: xJC_dkHdSb9yYsE_LNnfjXZ4YyGaYmjB6zz2o8U94sjoBrUl3Unzpg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":2424,"size_decoded":2933,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"2f7f439543524c24f6631dc79fff2534","sha1":"fe636b1346a355d4d2a860eab78ed63151a1d105","sha256":"047acc3f1c7ca410bb750b6c23980bc8f9d827c50ff7903d6fbfe2a8828cdccb","sha512":"39928410f8a01eb59e165fdffebe13aa0f451ad6a5e4058e4e93782470b1a34b95badd6e1ec467f9cf6bb4d4138e086b9b80569b0c7ce6d528b6c068eb434996","ssdeep":"","tlshash":"8b410af2968c157ee44825b969f2fd33f9f2a5e444c4e4431b4bc19a228d10d3e3e86c","first_seen":"2023-05-25T22:55:54Z","last_seen":"2026-07-29T06:14:00.325325Z","times_seen":1512,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAADAFBMVEVHcEz/AAD/vz9/dgDrsUTrskPrsUP//wD6qlHrsUTrskTrskPssUTqsUPqsUT//0frsUS/vz/ts0T/f1vsskTrskPus0TssUPqsET////tskTwtkTytkXrskPxtkXlrUTor0P0uEbsskTwtEXqsUPMmTPvtEbqsETrskTus0TssUPrsUPvtEUAAAD//1XytkXvtETus0XxtkXsskLutEW/fz/rsUTssUPtskTtskTrskPsskTstETsskTxtkXorkLsskTss0Pus0TrsETpsUPpsEPrskPss0PytkXytkXpr0LrsEPrskPlrT/qsUTmtkjzuUXwtUXrsETvtETts0TwtETxtkX0tD/ss0Tssj/wtUTxtkXrskPrsUPss0PrskPssEPtskTtsUPts0PrsUPwtkbpr0LytkXxtUXus0XxtkTxtkXtskPrsUPrsUTtskXsskT////ss0fsskX//v3///7//vzss0brrTnyyXzrrTj9v0n1uUfrrTfsskPssUD2ukftuFP4u0j/wEnssUHts0TssULvtEXrrz3ssD/00pHwtUXtt1DxtUXrrDb9+fD+v0nzt0b7vUj8v0n22qXrrjv8vknss0XssUP//fv//frstEn+wEn9+O7ttUzvv2P9+e////3++vLrrjnqqjDrrz7rsD7rsEDxxG/rrzvyyn/1uEb1uUb2uUfus0X4u0futEX7vkn8vkjts0fstEj//v7//vvvvmD++vHuuVTttEr99+301JfvvV711ZrssEDvwGbrrjr++/byyXv4vEj88+LrrTb22aL34LT99efvwGfvwWjuvFvtuFL78Nvz0Y767NL77tb00pP669D9vkn00ZDzzILzzIPww23uuFPyt0bxxnX01Jb55sP88d/5vEj++/XxyHr44rjstEf8v0j22qb23Kr00I734LL01ZntskTz0Izxx3jzzYfwwmruulf115zzzof558X45b/89OTqqC3ttk333q7+/Pf66svqqCz44rrwwWn+/fr99unxxHHFBZVYAAAAcHRSTlMAAQQC+/39AQP+/vz3/P4C+gTtAv0ojur7Afr89Gv+GRb+d3fYBUE/ul34kG0BA/WnrecqjwSO6tX31s4pqMIu+2KN+5Bhx6m//WBixCyH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"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/4642.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.637Z","timestamp":1785159268637,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/4642.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 512\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 03:09:24 GMT\r\nlast-modified: Fri, 07 Mar 2025 07:10:13 GMT\r\netag: \"9461694e94919b8ea6de7e3db0f232b5\"\r\nx-amz-server-side-encryption: AES256\r\ncache-control: public, max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 37505\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: woVIC8HkXqEUJQUzwRjoxfMj0e_Eb4exYnS24ZPquVCl4sEnwgaFgw==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":512,"size_decoded":1066,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"9461694e94919b8ea6de7e3db0f232b5","sha1":"e699eedd2c9bcc757317e9861642da43917fc8c2","sha256":"9b3cad62eacf47b257066fda4d3695d45582360164b8b0f1082f74cae3304517","sha512":"6f543ea38f0600ad22dc1e5b155d03df442a3474fc039cace36fc5467901e3634dc8f44da9b8d1a35eb97eabbb9b3a8d61b87052810d1e3a34a56c4abd1a371b","ssdeep":"","tlshash":"e8f005d3a3d216acd438033551ebc6326cc2082048d3d69089d7e57091cc3ac7ae1543","first_seen":"2025-05-17T13:51:35.296693Z","last_seen":"2026-07-29T06:14:00.377224Z","times_seen":1382,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAABx0lEQVR4Xt3UwXHbMBQGYZSqElJCSnIJLikdJJYPnPEHyyH+R0EEd2YvWAAPPEitzeP3h393et+7PG+t/7DU+13L4OOP9pS8t/6hz/a9nQQfNtuX4UNe7VQcfhafzq31Q8/mrT0JB53dQ/HyVTwEL13NErfWX7iav1oBL1vVCC9Z3SE8fBV348GruAsPXc0f+dP6A1fz/o0PcfOQYk8Ve+BD3Dik2FPFHvgtbhpW7KliD+1ww7BiTxV76BcO+fMTe6rYC24YIsWeKvaCG4ZIsaeKveCGIVLsqWIv+Mkhv/+7Yk8Ve9FuIXYWzi3aLcTOwrlFu4XYWTi3aLcQK/ZUsRftFmLFnir2ot1CrNhTxV60W4gVe6rYi3YLsbNwbtFuIXYWzi3aLcTOwrlFu4VYsaeKvegnLkaKPVXsBTcMkWJPFXvBDUOk2FPFXnDDECn2VLEX/IJxWLGnij20ww3Dij1V7KHf4qYhxZ4q9sCHuHFIsaeKPfAhbryqP+Lmq7kLD13F3XjwKg7h4dWN8JJVjfGiVS3hZat5CF66iofi5Wf3KTjkrD4dB57FqTj81b4MHzLbU+CjZnlKfOTRLoMPr7o8ftD/nMI/fb1rr6o8l2IAAAAASUVORK5CYII="}},"time_used":33,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":33,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/99527.15c5c25d27a56a0df772.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.263Z","timestamp":1785159269263,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/99527.15c5c25d27a56a0df772.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58aaad-19360\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:55:57 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:20\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: cdd5425ff7632353fd42f41961889cd7\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"]}],"data":{"size":103264,"size_decoded":14015,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"3ae28448cb02ee3491028f82c9e212b5","sha1":"840f868063e33818424634685f83f5dc9c54fd85","sha256":"6d8af262e85da3952f96074c40841361fe81de28292a6654a4b6a5c8c0d9a1b6","sha512":"615657ad93d0166da77c83a566e60f1d4002b7a4a1c811227c935f2a4ea91b16e01893aba5c708e2a1b40c39c6e773c08d99e62560bcc1c8df301a3b9f1b3821","ssdeep":"768:ywlwokCcAfM0x/2bcVtmUK6ogvY0FGhgiU4vWQs/WQ2das9:oIVtmUK6ouY0FGhgi1vjs/WQ2day","tlshash":"dea335bcf95192bb5e9b587f4398f6697648f943fd066f86bf00c00020c6ee710e5a5a","first_seen":"2026-04-20T12:30:34.890238Z","last_seen":"2026-07-30T06:08:06.295173Z","times_seen":5909,"resource_available":false,"data":"aHRtbHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOjE0cHg7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbn1odG1sW2xhbmc9dmldIGJvZHl7Zm9udC1mYW1pbHk6QXJpYWwsc2Fucy1zZXJpZn1ib2R5LGh0bWx7Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDoxMDAlfWJvZHksZGlyLGgxLGgyLGgzLGg0LGg1LGg2LGh0bWwsbGksbWVudSxvbCxwLHVse21hcmdpbjowO3BhZGRpbmc6MH1he3RleHQtZGVjb3JhdGlvbjpub25lfWE6YWN0aXZle291dGxpbmU6MH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7YTpob3ZlcntvdXRsaW5lOjB9fWgxe2ZvbnQtc2l6ZToyZW19c3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246aW5pdGlhbH1zdXB7dG9wOi0uMjVlbX1zdWJ7Ym90dG9tOi0uMjVlbX1maWd1cmV7bWFyZ2luOjB9cHJle292ZXJmbG93OmF1dG99Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7bWFyZ2luOjB9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixpbnB1dFt0eXBlPWJ1dHRvbl0saW5wdXRbdHlwZT1yZXNldF0saW5wdXRbdHlwZT1zdWJtaXRdey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b247Y3Vyc29yOmRlZmF1bHR9aW5wdXRbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MDtwYWRkaW5nOjB9aW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtib3gtc2l6aW5nOmluaXRpYWx9aW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLGlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1maWVsZHNldHtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9dGQsdGh7cGFkZGluZzowfTpyb290ey0tY29sb3Itd2hpdGU6I2ZmZjstLWNvbG9yLWJsYWNrOiMwMDA7LS1jb2xvci10cmFuc3BhcmVudDojMDAwMDstLWNvbG9yLWNvbGQtZ3JheS01MDojZjlmOWY5Oy0tY29sb3ItY29sZC1ncmF5LTEwMDojZjJmMmYyOy0tY29sb3ItY29sZC1ncmF5LTE1MDojZWJlYmViOy0tY29sb3ItY29sZC1ncmF5LTIwMDojZGJkYmRiOy0tY29sb3ItY29sZC1ncmF5LTI1MDojYzljOWM5Oy0tY29sb3ItY29sZC1ncmF5LTMwMDojYjhiOGI4Oy0tY29sb3ItY29sZC1ncmF5LTM1MDojYThhOGE4Oy0tY29sb3ItY29sZC1ncmF5LTQwMDojOWM5YzljOy0tY29sb3ItY29sZC1ncmF5LTQ1MDojOGM4YzhjOy0tY29sb3ItY29sZC1ncmF5LTUwMDpncmV5Oy0tY29sb3ItY29sZC1ncmF5LTU1MDojNzA3MDcwOy0tY29sb3ItY29sZC1ncmF5LTYwMDojNjM2MzYzOy0tY29sb3ItY29sZC1ncmF5LTY1MDojNTc1NzU3Oy0tY29sb3ItY29sZC1ncmF5LTcwMDojNGE0YTRhOy0tY29sb3ItY29sZC1ncmF5LTc1MDojM2QzZDNkOy0tY29sb3ItY29sZC1ncmF5LTgwMDojMmUyZTJlOy0tY29sb3ItY29sZC1ncmF5LTg1MDojMWYxZjFmOy0tY29sb3ItY29sZC1ncmF5LTkwMDojMGYwZjBmOy0tY29sb3ItY29sZC1ncmF5LTk1MDojMDAwOy0tY29sb3ItcmlwZS1yZWQtNTA6I2ZmZWJlYzstLWNvbG9yLXJpcGUtcmVkLTEwMDojZmNjYmNkOy0tY29sb3ItcmlwZS1yZWQtMjAwOiNmYWExYTQ7LS1jb2xvci1yaXBlLXJlZC0zMDA6I2Y3N2M4MDstLWNvbG9yLXJpcGUtcmVkLTQwMDojZjc1MjVmOy0tY29sb3ItcmlwZS1yZWQtNTAwOiNmMjM2NDU7LS1jb2xvci1yaXBlLXJlZC02MDA6I2NjMmYzYzstLWNvbG9yLXJpcGUtcmVkLTcwMDojYjIyODMzOy0tY29sb3ItcmlwZS1yZWQtODAwOiM5OTFmMjk7LS1jb2xvci1yaXBlLXJlZC05MDA6IzgwMTkyMjstLWNvbG9yLXJpcGUtcmVkLWExMDA6I2ZmODA4MDstLWNvbG9yLXJpcGUtcmVkLWEyMDA6I2ZmNTI1MjstLWNvbG9yLXJpcGUtcmVkLWE0MDA6I2YzMzstLWNvbG9yLXJpcGUtcmVkLWE2MDA6I2NjMjkyOTstLWNvbG9yLXJpcGUtcmVkLWE3MDA6IzgwMjAyODstLWNvbG9yLXJpcGUtcmVkLWE4MDA6IzRkMTkxZDstLWNvbG9yLXJpcGUtcmVkLWE5MDA6IzMzMWYyMDstLWNvbG9yLXRhbi1vcmFuZ2UtNTA6I2ZmZjNlMDstLWNvbG9yLXRhbi1vcmFuZ2UtMTAwOiNmZmUwYjI7LS1jb2xvci10YW4tb3JhbmdlLTIwMDojZmZjYzgwOy0tY29sb3ItdGFuLW9yYW5nZS0zMDA6I2ZmYjc0ZDstLWNvbG9yLXRhbi1vcmFuZ2UtNDAwOiNmZmE3MjY7LS1jb2xvci10YW4tb3JhbmdlLTUwMDojZmY5ODAwOy0tY29sb3ItdGFuLW9yYW5nZS02MDA6I2ZiOGMwMDstLWNvbG9yLXRhbi1vcmFuZ2UtNzAwOiNmNTdjMDA7LS1jb2xvci10YW4tb3JhbmdlLTgwMDojZWY2YzAwOy0tY29sb3ItdGFuLW9yYW5nZS05MDA6I2U2NTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTEwMDojZmZkMTgwOy0tY29sb3ItdGFuLW9yYW5nZS1hMjAwOiNmZmFiNDA7LS1jb2xvci10YW4tb3JhbmdlLWE0MDA6I2ZmOTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTUwMDojZTU3ZTE3Oy0tY29sb3ItdGFuLW9yYW5nZS1hNjAwOiNjYzcwMTQ7LS1jb2xvci10YW4tb3JhbmdlLWE3MDA6IzhjNTQxYzstLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMDojNTkzYTFiOy0tY29sb3ItdGFuLW9yYW5nZS1hOTAwOiMzMzI2MWE7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tNTA6I2U4ZjVlOTstLWNvbG9yLWlndWFuYS1ncmVlbi0xMDA6I2M4ZTZjOTstLWNvbG9yLWlndWFuYS1ncmVlbi0yMDA6I2E1ZDZhNzstLWNvbG9yLWlndWFuYS1ncmVlbi0zMDA6IzgxYzc4NDstLWNvbG9yLWlndWFuYS1ncmVlbi00MDA6IzY2YmI2YTstLWNvbG9yLWlndWFuYS1ncmVlbi01MDA6IzRjYWY1MDstLWNvbG9yLWlndWFuYS1ncmVlbi02MDA6IzQzYTA0NzstLWNvbG9yLWlndWFuYS1ncmVlbi03MDA6IzM4OGUzYzstLWNvbG9yLWlndWFuYS1ncmVlbi04MDA6IzJlN2QzMjstLWNvbG9yLWlndWFuYS1ncmVlbi05MDA6IzFiNWUyMDstLWNvbG9yLWlndWFuYS1ncmVlbi1hMTAwOiNiOWY2Y2E7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tYTIwMDojNjlmMGFlOy0tY29sb3ItaWd1YW5hLWdyZWVuLWE0MDA6IzAwZTY3NjstLWNvbG9yLWlndWFuYS1ncmVlbi1hNzAwOiMwMGM4NTM7LS1jb2xvci1iYW5hbmEteWVsbG93LTUwOiNmZmZkZTc7LS1jb2xvci1iYW5hbmEteWVsbG93LTEwMDojZmZmOWM0Oy0tY29sb3ItYmFuYW5hLXllbGxvdy0yMDA6I2ZmZjU5ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctMzAwOiNmZmYxNzY7LS1jb2xvci1iYW5hbmEteWVsbG93LTQwMDojZmZlZTU4Oy0tY29sb3ItYmFuYW5hLXllbGxvdy01MDA6I2ZmZWIzYjstLWNvbG9yLWJhbmFuYS15ZWxsb3ctNjAwOiNmZGQ4MzU7LS1jb2xvci1iYW5hbmEteWVsbG93LTcwMDojZmJjMDJkOy0tY29sb3ItYmFuYW5hLXllbGxvdy04MDA6I2Y5YTgyNTstLWNvbG9yLWJhbmFuYS15ZWxsb3ctOTAwOiNmNTdmMTc7LS1jb2xvci1iYW5hbmEteWVsbG93LWExMDA6I2ZmZmY4ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctYTIwMDojZmYwOy0tY29sb3ItYmFuYW5hLXllbGxvdy1hNDAwOiNmZmVhMDA7LS1jb2xvci1iYW5hbmEteWVsbG93LWE3MDA6I2VlZGEwMTstLWNvbG9yLXR2LWJsdWUtNTA6I2UzZWZmZDstLWNvbG9yLXR2LWJsdWUtMTAwOiNiYmQ5ZmI7LS1jb2xvci10di1ibHVlLTIwMDojOTBiZmY5Oy0tY29sb3ItdHYtYmx1ZS0zMDA6IzViOWNmNjstLWNvbG9yLXR2LWJsdWUtNDAwOiMzMTc5ZjU7LS1jb2xvci10di1ibHVlLTUwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS02MDA6IzFlNTNlNTstLWNvbG9yLXR2LWJsdWUtNzAwOiMxODQ4Y2M7LS1jb2xvci10di1ibHVlLTgwMDojMTQzZWIyOy0tY29sb3ItdHYtYmx1ZS05MDA6IzBjMzI5OTstLWNvbG9yLXR2LWJsdWUtYTEwMDojODJiMWZmOy0tY29sb3ItdHYtYmx1ZS1hMjAwOiM0NDhhZmY7LS1jb2xvci10di1ibHVlLWE0MDA6IzI5NzlmZjstLWNvbG9yLXR2LWJsdWUtYTYwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS1hNzAwOiMxNDNhODc7LS1jb2xvci10di1ibHVlLWE4MDA6IzE0MmU2MTstLWNvbG9yLXR2LWJsdWUtYTkwMDojMTMyMDQyOy0tY29sb3ItZGVlcC1ibHVlLTUwOiNlZGU3ZjY7LS1jb2xvci1kZWVwLWJsdWUtMTAwOiNkMWM0ZTk7LS1jb2xvci1kZWVwLWJsdWUtMjAwOiNiMzlkZGI7LS1jb2xvci1kZWVwLWJsdWUtMzAwOiM5NTc1Y2Q7LS1jb2xvci1kZWVwLWJsdWUtNDAwOiM3ZTU3YzI7LS1jb2xvci1kZWVwLWJsdWUtNTAwOiM2NzNhYjc7LS1jb2xvci1kZWVwLWJsdWUtNjAwOiM1ZTM1YjE7LS1jb2xvci1kZWVwLWJsdWUtNzAwOiM1MTJkYTg7LS1jb2xvci1kZWVwLWJsdWUtODAwOiM0NTI3YTA7LS1jb2xvci1kZWVwLWJsdWUtOTAwOiMzMTFiOTI7LS1jb2xvci1kZWVwLWJsdWUtYTEwMDojYjM4OGZmOy0tY29sb3ItZGVlcC1ibHVlLWEyMDA6IzdjNGRmZjstLWNvbG9yLWRlZXAtYmx1ZS1hNDAwOiM2NTFmZmY7LS1jb2xvci1kZWVwLWJsdWUtYTcwMDojNjIwMGVhOy0tY29sb3ItbWludHktZ3JlZW4tNTA6I2RhZjJlZTstLWNvbG9yLW1pbnR5LWdyZWVuLTEwMDojYWNlNWRjOy0tY29sb3ItbWludHktZ3JlZW4tMjAwOiM3MGNjYmQ7LS1jb2xvci1taW50eS1ncmVlbi0zMDA6IzQyYmRhODstLWNvbG9yLW1pbnR5LWdyZWVuLTQwMDojMjJhYjk0Oy0tY29sb3ItbWludHktZ3JlZW4tNTAwOiMwODk5ODE7LS1jb2xvci1taW50eS1ncmVlbi02MDA6IzA2ODA2YjstLWNvbG9yLW1pbnR5LWdyZWVuLTcwMDojMDU2NjU2Oy0tY29sb3ItbWludHktZ3JlZW4tODAwOiMwMDRkNDA7LS1jb2xvci1taW50eS1ncmVlbi05MDA6IzAwMzMyYTstLWNvbG9yLW1pbnR5LWdyZWVuLWExMDA6I2E3ZmZmMDstLWNvbG9yLW1pbnR5LWdyZWVuLWEyMDA6IzQ1ZTVjYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE0MDA6IzJiZDliYzstLWNvbG9yLW1pbnR5LWdyZWVuLWE2MDA6IzI0YjI5YjstLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDA6IzFiNzY2NzstLWNvbG9yLW1pbnR5LWdyZWVuLWE4MDA6IzEwNDQzYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE5MDA6IzA4MjYyMTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTA6I2YzZTVmNTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtMTAwOiNlMWJlZTc7LS1jb2xvci1ncmFwZXMtcHVycGxlLTIwMDojY2U5M2Q4Oy0tY29sb3ItZ3JhcGVzLXB1cnBsZS0zMDA6I2JhNjhjODstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNDAwOiNhYjQ3YmM7LS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMDojOWMyN2IwOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS02MDA6IzhlMjRhYTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwOiM3YjFmYTI7LS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMDojNmExYjlhOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS05MDA6IzRhMTQ4YzstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTEwMDojZWE4MGZjOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS1hMjAwOiNlMDQwZmI7LS1jb2xvci1ncmFwZXMtcHVycGxlLWE0MDA6I2Q1MDBmOTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTcwMDojYTBmOy0tY29sb3ItYmVycnktcGluay01MDojZmNlNGVjOy0tY29sb3ItYmVycnktcGluay0xMDA6I2Y4YmJkMDstLWNvbG9yLWJlcnJ5LXBpbmstMjAwOiNmNDhmYjE7LS1jb2xvci1iZXJyeS1waW5rLTMwMDojZjA2MjkyOy0tY29sb3ItYmVycnktcGluay00MDA6I2VjNDA3YTstLWNvbG9yLWJlcnJ5LXBpbmstNTAwOiNlOTFlNjM7LS1jb2xvci1iZXJyeS1waW5rLTYwMDojZDgxYjYwOy0tY29sb3ItYmVycnktcGluay03MDA6I2MyMTg1YjstLWNvbG9yLWJlcnJ5LXBpbmstODAwOiNhZDE0NTc7LS1jb2xvci1iZXJyeS1waW5rLTkwMDojODgwZTRmOy0tY29sb3ItYmVycnktcGluay1hMTAwOiNmZjgwYWI7LS1jb2xvci1iZXJyeS1waW5rLWEyMDA6I2ZmNDA4MTstLWNvbG9yLWJlcnJ5LXBpbmstYTQwMDojZjUwMDU3Oy0tY29sb3ItYmVycnktcGluay1hNzAwOiNjNTExNjI7LS1jb2xvci1za3ktYmx1ZS01MDojZTBmN2ZhOy0tY29sb3Itc2t5LWJsdWUtMTAwOiNiMmViZjI7LS1jb2xvci1za3ktYmx1ZS0yMDA6IzgwZGVlYTstLWNvbG9yLXNreS1ibHVlLTMwMDojNGRkMGUxOy0tY29sb3Itc2t5LWJsdWUtNDAwOiMyNmM2ZGE7LS1jb2xvci1za3ktYmx1ZS01MDA6IzAwYmNkNDstLWNvbG9yLXNreS1ibHVlLTYwMDojMDBhY2MxOy0tY29sb3Itc2t5LWJsdWUtNzAwOiMwMDk3YTc7LS1jb2xvci1za3ktYmx1ZS04MDA6IzAwODM4ZjstLWNvbG9yLXNreS1ibHVlLTkwMDojMDA2MDY0Oy0tY29sb3Itc2t5LWJsdWUtYTEwMDojODRmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTIwMDojMThmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTQwMDojMDBlNWZmOy0tY29sb3Itc2t5LWJsdWUtYTcwMDojMDBiOGQ0Oy0tY29sb3ItZm9yZXN0LWdyZWVuLTUwOiNkYWYyZTY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMTAwOiNhY2U1Yzk7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwOiM3MGNjOWU7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwOiM0MmJkN2Y7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwOiMyMmFiNjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwOiMwODk5NTA7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNjAwOiMwNjgwNDM7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwOiMwNTY2MzY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwOiMwMDRkMjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwOiMxYTMzMjY7LS1jb2xvci1mYWNlYm9vazojMTg3N2YyOy0tY29sb3ItZGVlcC1mYWNlYm9vazojMTU2NGNhOy0tY29sb3ItdHdpdHRlcjojMWRhMWYyOy0tY29sb3ItZGVlcC10d2l0dGVyOiMxODhjZDM7LS1jb2xvci15b3V0dWJlOnJlZDstLWNvbG9yLWxpbmtlZGluOiMwMDdiYjU7LS1jb2xvci1zZWVraW5nLWFscGhhLWJyYW5kOiNmZjcyMDB9W2RhdGEtdGhlbWU9bGlnaHRdey0tY29sb3ItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvZHktYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9keS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmctaGlnaGxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItdGV4dC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApOy0tY29sb3ItdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWFjY2VudC1jb250ZW50OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm94LXNoYWRvdzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWRpdmlkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kaXZpZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItZGl2aWRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnJhbmQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGlnaGxpZ2h0LW5ldzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWlucHV0LXB1Ymxpc2gtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBhbmUtc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1zZXBhcmF0b3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wcmltYXJ5LXN5bWJvbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWljb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLW9wZW5lZC1lbGVtZW50LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1kaXZpZGVyLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtc2Vjb25kYXJ5LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWhpbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10di1kaWFsb2ctY2FwdGlvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci11bmRlcmxpbmVkLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci13aWRnZXQtcGFnZXMtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItbGlzdC1pdGVtLWFjdGl2ZS1iZzp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1saXN0LWl0ZW0tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtYmFjazp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhci1ob3Zlcjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1idXR0b24taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kZXB0aHJlbmRlcmVyLWZpbGwtc3R5bGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGlzYWJsZWQtaW5wdXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1lbXB0eS1jb250YWluZXItbWVzc2FnZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWljb25zOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaXRlbS1ob3Zlci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0tc2VsZWN0ZWQtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItcGxhY2Vob2xkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1yb3ctaG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Itc2Nyb2xsYmFyLWJvZHktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1zZWN0aW9uLXNlcGFyYXRvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1zZXBhcmF0b3ItdGFibGUtY2hhdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXNjcm9sbC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXNjcm9sbC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci13aWRnZXQtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Nyb2xsLWJ1dHRvbnMtYXJyb3c6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXByaW1hcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWdvdG8tbGFiZWwtYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByZS1tYXJrZXQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItcG9zdC1tYXJrZXQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3Itbm90YWNjdXJhdGUtbW9kZTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTYwMCk7LS1jb2xvci1kZWxheS1tb2RlOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWRlbGF5LW1vZGUtYmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS00MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItbGlzdC1pdGVtLWJnLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1oaWdobGlnaHRlZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1tYXJrZXItZmxhZ2dlZC1ob3ZlcmVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hc2s6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLXNlbGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWJ1eTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItcHJvOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1wcm8taG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXByby1wbHVzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXByby1wbHVzLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXByby1wcmVtaXVtOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXByby1wcmVtaXVtLWhvdmVyOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLXRyaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdHJpYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1tb2Q6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1vZC1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYnJva2VyLWZlYXR1cmVkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1zdG9wcGVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1hbGVydC1zdGF0dXMtdHJpZ2dlcmVkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1zZWFyY2gtYnV0dG9uLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jYXJkLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNhcmQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itc3Ryb2tlLXNwZWNpYWwtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNlbGVjdGlvbi1iZzp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1kZWZhdWx0LWdyYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXNwZWNpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXBsYXRmb3JtOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtcGFnZS1wcm9tbzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2Utc29jaWFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXNpbXBsZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1wcm9tbzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1mdWxsc2NyZWVuOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1pY29ucy10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1zb2NpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtcHJpbWFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3Itc3RhdGljLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1zdGF0aWMtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWZvY3VzLW5vdC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXJlYWQtb25seTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2l0aC12YWx1ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWVycm9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWxpbms6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1hcnJvd3MtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1kYW5nZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1maWxsLWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1ib3JkZXItdGVydGlhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaXNPcGVuZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1pc09wZW5lZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLW90aGVyLXRyYW5zcGFyZW50OiNmZmYwOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQtNjA6I2ZmZjk7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDAzOy0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLW90aGVyLW1vZGFsLWJhY2tncm91bmQ6I2QxZDFkMTRkOy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTojMDAwMzstLWNvbG9yLW90aGVyLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1zaGFkb3ctc2Vjb25kYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktcHJpbWFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXRlcnRpYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktcHJpbWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hNDAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1zZWNvbmRhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTIwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktdGVydGlhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTEwMCk7LS1jb2xvci1zZWFyY2gtaGlnaGxpZ2h0LXByaW1hcnktbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsYWNrOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3Itd2hpdGU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDEtbm9ybWFsOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDItYm9sZDp2YXIoLS1jb2xvci1za3ktYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1ub3JtYWw6dmFyKC0tY29sb3ItcmlwZS1yZWQtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC10aGluOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1saWdodDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLW5vcm1hbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcXVhdGVybmFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE2MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1aW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTgwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay04MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE0MDApOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYm9yZGVyLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMS1saWdodDojMjk2MmZmMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLW5vcm1hbDojMjk2MmZmNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWJvbGQ6IzI5NjJmZjY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMi1saWdodDojMDBhY2MxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLW5vcm1hbDojMDBhY2MxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWJvbGQ6IzAwYWNjMTY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMy1saWdodDojOWMyN2IwMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLW5vcm1hbDojOWMyN2IwNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWJvbGQ6IzljMjdiMDY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtNC1saWdodDojNWUzNWIxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LW5vcm1hbDojNWUzNWIxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWJvbGQ6IzVlMzViMTY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWxpZ2h0OiNjYzJmM2MyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMS1ub3JtYWw6I2NjMmYzYzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWJvbGQ6I2NjMmYzYzY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWxpZ2h0OiNlOTFlNjMyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMi1ub3JtYWw6I2U5MWU2MzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWJvbGQ6I2U5MWU2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbGlnaHQ6IzYzNjM2MzI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbm9ybWFsOiM2MzYzNjM0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0xLWJvbGQ6IzYzNjM2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbGlnaHQ6IzAwMDAwMDI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbm9ybWFsOiMwMDAwMDA0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLWJvbGQ6IzAwMDY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtbGlnaHQ6IzA4OTk4MTI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLW5vcm1hbDojMDg5OTgxNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtYm9sZDojMDg5OTgxNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItbGlnaHQ6IzA4OTk1MDI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLW5vcm1hbDojMDg5OTUwNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItYm9sZDojMDg5OTUwNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtbGlnaHQ6IzQzYTA0NzI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLW5vcm1hbDojNDNhMDQ3NGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtYm9sZDojNDNhMDQ3NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1saWdodDojZmRkODM1MjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1ub3JtYWw6I2ZkZDgzNTRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItYm9sZDojZmRkODM1NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1saWdodDojNjM2MzYzMjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1ub3JtYWw6IzYzNjM2MzRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtYm9sZDojNjM2MzYzNjY7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtODAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLW06dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmV1dHJhbDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC1taW51czItZGVmYXVsdDojZGU4MTJmOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXY3LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS00MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3Itc2t5LWJsdWUtMTAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0zMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14eGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS05MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWJvcmRlcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLXhzOnZhcigtLWNvbG9yLXNreS1ibHVlLTUwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtczp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteHhsOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3Itc2t5LWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXhzOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXM6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWw6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhsOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14eGw6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHM6dmFyKC0tY29sb3ItYmVycnktcGluay01MCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstczp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTUwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteGw6dmFyKC0tY29sb3ItYmVycnktcGluay03MDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXh4bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstYm9yZGVyOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXhzOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1sOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXhsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHM6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS01MCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtczp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbTp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteGw6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS03MDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXh4bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtYm9yZGVyOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLWNvbG9yLWhlYWRlci1iZzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib2R5LWJnOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYmctcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10ZXh0LXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYWNjZW50LWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZGl2aWRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWRpdmlkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1kaXZpZGVyLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJveC1zaGFkb3c6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnV0dG9uLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItZmlsbC1zdHlsZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWRpc2FibGVkLWlucHV0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZW1wdHktY29udGFpbmVyLW1lc3NhZ2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1oaWdobGlnaHQtbmV3OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pY29uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItaW5wdXQtcHVibGlzaC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLWJsdWU6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtaXRlbTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcGFuZS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wbGFjZWhvbGRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXBvcHVwLW1lbnUtaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItcHJpbWFyeS1zeW1ib2w6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLXJvdy1ob3Zlci1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zYi1zY3JvbGxiYXItYm9keS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXNjcmVlbmVyLWRlc2NyaXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc2VjdGlvbi1zZXBhcmF0b3ItYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2VhcmNoLWJ1dHRvbi1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXNlcGFyYXRvci10YWJsZS1jaGF0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3Itc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3Itc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLXNlY29uZGFyeS1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24taWNvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRvb2xiYXItaW50ZXJhY3RpdmUtZWxlbWVudC10ZXh0LW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItb3BlbmVkLWVsZW1lbnQtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWRpdmlkZXItYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXBvcHVwLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXNlY29uZGFyeS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1oaW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXR2LWRpYWxvZy1jYXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10di1kcm9wZG93bi1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdW5kZXJsaW5lZC10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itd2lkZ2V0LXBhZ2VzLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWxpc3QtaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItbGlzdC1pdGVtLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLWJhY2s6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zY3JvbGwtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1zY3JvbGwtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3Itd2lkZ2V0LWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXNjcm9sbC1idXR0b25zLWFycm93OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250cm9sLWludGVudC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1wcmltYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1nb3RvLWxhYmVsLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1wcmUtbWFya2V0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLXBvc3QtbWFya2V0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5vdGFjY3VyYXRlLW1vZGU6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWRlbGF5LW1vZGU6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItZGVsYXktbW9kZS1iZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctaGlnaGxpZ2h0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTk1MCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY2FyZC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jYXJkLWJvcmRlci1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLXN0cm9rZS1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zZWxlY3Rpb24tYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWRlZmF1bHQtZ3JheTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWZlYXR1cmVkLWJyb2tlci1iYWRnZS1iZzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci10di1ibHVlLWE5MDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcGxhdGZvcm06dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcHJvbW86dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXNvY2lhbDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1zaW1wbGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXByb21vOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItYmFja2dyb3VuZC1kaWFsb2ctZnVsbHNjcmVlbjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb250ZW50LWljb25zLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LWljb25zLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXByb21vLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXByaW1hcnktc3BlY2lhbDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtc2Vjb25kYXJ5LXNwZWNpYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMjAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1zdGF0aWMtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXN0YXRpYy1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtbm90LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci13aXRoLXZhbHVlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWRlc2NyaXB0aW9uLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1maWxsLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1saW5rOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGFiZWwtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb3VudGVyLWZpbGwtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY291bnRlci1jb250ZW50LWFjY2VudDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb3VudGVyLWJvcmRlci10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQ6IzAwMDA7LS1jb2xvci1vdGhlci10cmFuc3BhcmVudC02MDojMDAwOTstLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6IzAwMDY7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3Itb3RoZXItbW9kYWwtYmFja2dyb3VuZDojMDAwMDAwNGQ7LS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDA2Oy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLW90aGVyLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLW90aGVyLWJsYWNrLWZyaWRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktc2Vjb25kYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktdGVydGlhcnk6dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXNreS1ibHVlLWE0MDApOy0tY29sb3Itb3RoZXItY3liZXItbW9uZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMjAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS10ZXJ0aWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMTAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2VhcmNoLWhpZ2hsaWdodC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmxhY2s6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci13aGl0ZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0MS1ub3JtYWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLWExMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0Mi1ib2xkOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1saWdodDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLW5vcm1hbDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtdGhpbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3Mtbm9ybWFsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE5MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nLWxpZ2h0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1YXRlcm5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtYTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtaGVhdnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1xdWluYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWExMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYXR0ZW50aW9uOnZhcigtLWNvbG9yLWJhbmFuYS15ZWxsb3ctODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXBvc2l0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWEyMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLWExMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLWJvbGQ6dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItaWd1YW5hLWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcXVpbmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWxpZ2h0OiM0NDhhZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtbm9ybWFsOiM0NDhhZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtYm9sZDojNDQ4YWZmNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWxpZ2h0OiMwMGJjZDQzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItbm9ybWFsOiMwMGJjZDQ0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItYm9sZDojMDBiY2Q0NjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWxpZ2h0OiNlYTgwZmMzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtbm9ybWFsOiNlYTgwZmM0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtYm9sZDojZWE4MGZjNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWxpZ2h0OiNiMzg4ZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtbm9ybWFsOiNiMzg4ZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtYm9sZDojYjM4OGZmNjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtbGlnaHQ6I2YyMzY0NTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLW5vcm1hbDojZjIzNjQ1NGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtYm9sZDojZjIzNjQ1NjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItbGlnaHQ6I2ZmNDA4MTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLW5vcm1hbDojZmY0MDgxNGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItYm9sZDojZmY0MDgxNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1saWdodDojYjhiOGI4MzM7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1ub3JtYWw6I2I4YjhiODRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtYm9sZDojYjhiOGI4NjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1saWdodDojZmZmMzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLW5vcm1hbDojZmZmZmZmNGQ7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1ib2xkOiNmZmY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWxpZ2h0OiMyMmFiOTQzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMS1ub3JtYWw6IzIyYWI5NDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWJvbGQ6IzIyYWI5NDY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWxpZ2h0OiMyMmFiNjczMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMi1ub3JtYWw6IzIyYWI2NzRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWJvbGQ6IzIyYWI2NzY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWxpZ2h0OiM0Y2FmNTAzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMy1ub3JtYWw6IzRjYWY1MDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWJvbGQ6IzRjYWY1MDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbGlnaHQ6I2ZmOTgwMDMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbm9ybWFsOiNmZjk4MDA0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0xLWJvbGQ6I2ZmOTgwMDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbGlnaHQ6I2ZkZDgzNTMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbm9ybWFsOiNmZGQ4MzU0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0yLWJvbGQ6I2ZkZDgzNTY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbGlnaHQ6I2ZmOTgwMDFhOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbm9ybWFsOiNmZjk4MDAzMzstLWNvbG9yLW92ZXJsYXktd2FybmluZy0zLWJvbGQ6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbGlnaHQ6IzJlMmUyZTY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbm9ybWFsOiMyZTJlMmVjYzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0zLWJvbGQ6IzJlMmUyZTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czMtZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMi1kZWZhdWx0OiNhYTYzMjQ7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXplcm8tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12MS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12My1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjctZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTYwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5ldXRyYWw6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2Utczp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14bDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2UteHhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1ib3JkZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14czp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14eGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUteHM6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS03MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUtczp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1sOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14bDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUteHhsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXhzOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1zOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1tOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNzAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1sOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay14bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHhsOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstMjAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1ib3JkZXI6dmFyKC0tY29sb3ItYmVycnktcGluay0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4teHM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hOTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hODAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hNzAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14eGw6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLWJvcmRlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXhzOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1zOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1tOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1sOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS14bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHhsOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1ib3JkZXI6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS0xMDApOy0tY29sb3ItbWFya2VyLWZsYWdnZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkLWhvdmVyZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWFzazp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc2VsbDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItYnV5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1wcm86dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLXByby1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItcHJvLXBsdXM6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItcHJvLXBsdXMtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItcHJvLXByZW1pdW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItcHJvLXByZW1pdW0taG92ZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItdHJpYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10cmlhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLW1vZDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItbW9kLWhvdmVyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLWJyb2tlci1mZWF0dXJlZC1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLXN0b3BwZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy10cmlnZ2VyZWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApfQ=="}},"time_used":33,"timings":{"blocked":-1,"dns":15,"connect":3,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/js/th/-kKZYXbYL1zKddVWiRpKQAs-FFrmXi_6UkcmhFlYLos.js","fqdn":"www.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.251.154.119","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/6jePbqXJhe8","date":"2026-07-27T13:34:29.905Z","timestamp":1785159269905,"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 /js/th/-kKZYXbYL1zKddVWiRpKQAs-FFrmXi_6UkcmhFlYLos.js HTTP/1.1\r\nHost: www.google.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/\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\naccept-ranges: bytes\r\ncontent-encoding: br\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/botguard-scs\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"botguard-scs\"\r\nreport-to: {\"group\":\"botguard-scs\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/botguard-scs\"}]}\r\ncontent-length: 23710\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 22:03:26 GMT\r\nexpires: Thu, 22 Jul 2027 22:03:26 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Tue, 21 Jul 2026 08:00:00 GMT\r\ncontent-type: text/javascript\r\nvary: Accept-Encoding\r\nage: 401463\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":62145,"size_decoded":24521,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (60918)","md5":"175c5223286c359a85dc124e70b631cc","sha1":"9783da70cc4ec9e1ee0345dcbad47674d41c5ed7","sha256":"fa42996176d82f5cca75d556891a4a400b3e145ae65e2ffa5247268459582e8b","sha512":"cfa0f26623d1cb13939c7b675013156701c25016a2eb9c8fe728cb97c652643368bb57914488e6f2ad40d97606a7cb39396905dad46897148f68f353b80b2d82","ssdeep":"768:jcaBTPMErdYHnCuKN9dPS5oPX3zp76JSAZg+hCU7aeTEPecnjfJG9CwaebQHr6na:jcainjK1pHh6i+9aeQmKSLQLOEEK","tlshash":"cc532aeff2d273710de665e2045b820d92be75525c40189eba05e7f86eb0c47e02bf29","first_seen":"2026-07-22T04:26:21.664288Z","last_seen":"2026-07-28T07:04:56.300909Z","times_seen":362,"resource_available":true,"data":"Ly8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGV5SjJaWEp6YVc5dUlqb2dNeXdpYzI5MWNtTmxjeUk2V3lJaVhTd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lJQ0pkTENKdVlXMWxjeUk2V3lKamJHOXpkWEpsUkhsdVlXMXBZMEoxZEhSdmJpSmRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUVpZlE9PQooZnVuY3Rpb24oKXt2YXIgYz1mdW5jdGlvbihmLEwsWSxGLFMseSxyLEcsSSxwKXtmb3IoST05NjtJIT04NzspaWYoST09MzcpST1ZPDwxJjM/NTQ6ZjtlbHNlIGlmKEk9PWYpcD1GLEk9NTQ7ZWxzZXtpZihJPT1MKXJldHVybiBwO2lmKEk9PTU0KUk9KFkmNTMpPT1ZPzI2Okw7ZWxzZSBpZihJPT05NilJPTM3O2Vsc2UgaWYoST09MjYpe2E6e2lmKHI9KEc9Rix1KS50cnVzdGVkVHlwZXMsIXJ8fCFyLmNyZWF0ZVBvbGljeSl7cD1HO2JyZWFrIGF9dHJ5e0c9ci5jcmVhdGVQb2xpY3koUyx7Y3JlYXRlSFRNTDpYLGNyZWF0ZVNjcmlwdDpYLGNyZWF0ZVNjcmlwdFVSTDpYfSl9Y2F0Y2goQSl7aWYodS5jb25zb2xlKXUuY29uc29sZVt5XShBLm1lc3NhZ2UpfXA9R31JPUx9fX0sWD1mdW5jdGlvbihmKXtyZXR1cm4gYy5jYWxsKHRoaXMsMjgsNzksNixmKX0sdT10aGlzfHxzZWxmOygwLGV2YWwpKGZ1bmN0aW9uKGYsTCl7cmV0dXJuKEw9YygyOCw3OSw1LG51bGwsImFkIiwiZXJyb3IiKSkmJmYuZXZhbChMLmNyZWF0ZVNjcmlwdCgiMSIpKT09PTE/ZnVuY3Rpb24oWSl7cmV0dXJuIEwuY3JlYXRlU2NyaXB0KFkpfTpmdW5jdGlvbihZKXtyZXR1cm4iIitZfX0odSkoQXJyYXkoTWF0aC5yYW5kb20oKSo3ODI0fDApLmpvaW4oIlxuIikrWycvLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvZ015d2ljMjkxY21ObGN5STZXeUlpWFN3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaUlDSmRMQ0p1WVcxbGN5STZXeUpqYkc5emRYSmxSSGx1WVcxcFkwSjFkSFJ2YmlKZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUU3UVVGQlFUdEJRVUZCTzBGQlFVRWlmUT09JywKJyhmdW5jdGlvbigpey8qJywKJycsCicgQ29weXJpZ2h0IEdvb2dsZSBMTEMnLAonIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wJywKJyovJywKJ3ZhciByUD1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7Zm9yKHk9OTY7eSE9STspaWYoeT09OTcpcD1YP3R5cGVvZiBYLmVvPT09ImZ1bmN0aW9uIj9YLmVvKCk6bmV3IFg6bnVsbCx5PTQwO2Vsc2UgaWYoeT09NDApdGhpcy5HPXAseT03OTtlbHNlIGlmKHk9PTc5KXk9TCs5Pj4xPEwmJihMKzdeMjUpPj1MPzkwOjI4O2Vsc2UgaWYoeT09MjYpdGhpcy5VPVkseT01NDtlbHNlIGlmKHk9PTcyKXk9KFg9SWFbdV0pPzkzOjQ5O2Vsc2UgaWYoeT09NjgpeT0xMjtlbHNlIGlmKHk9PTM1KUxFLmNhbGwodGhpcyxyKSx5PTE0O2Vsc2UgaWYoeT09NDkpUz0oYz1PYmplY3QuZ2V0UHJvdG90eXBlT2YoUy5wcm90b3R5cGUpKSYmYy5jb25zdHJ1Y3Rvcix5PTU7ZWxzZSBpZih5PT0zNyl5PShMXjUxKT4+ND49MyYmTC00PDIxPzI2OjU0O2Vsc2V7aWYoeT09MjgpcmV0dXJuIEY7eT09NT95PTEyOnk9PTQyPyh1PWlCKDMsUykseT03Mik6eT09MTI/eT1TPzQyOjk3Onk9PTkwPyh0aGlzLnR5cGU9WSx0aGlzLmN1cnJlbnRUYXJnZXQ9dGhpcy50YXJnZXQ9Zix0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dGhpcy5GbT1mYWxzZSx5PTI4KTp5PT05Mz95PTk3Onk9PTYwPyhTPXRoaXMuY29uc3RydWN0b3IseT02OCk6eT09NTQ/eT0oTHw4KT09TD8zNTo3OTp5PT05Nj95PTM3Onk9PTE0JiYoeT0ocD1mKT80MDo2MCl9fSxxPWZ1bmN0aW9uKEksTCxZLGYscixwLHUpeygoSXw1KT4+Mz49MCYmSTw8MTwxNiYmKGY9JEsoWSksZiYxMjgmJihmPS0yKn4oZiZMKS0xK34oZnxMKSsoZl5MKXwkSyhZKTw8NyksdT1mKSxJKzU+PTIwKSYmKEleMTcpPDM4JiYoZj1wRVtMLkJdKEwuR3gpLGZbTC5CXT1mdW5jdGlvbigpe3JldHVybiBZfSxmLmNvbmNhdD1mdW5jdGlvbihYKXtZPVh9LHU9Zik7d2hpbGUoSS00PDMxJiYoKEl8NykmMTUpPj0xMil7Zm9yKHA9KHI9TihZLDIxKSwwKTtmPjA7Zi0tKXA9cDw8THwkSyhZKTtpZihKKFkscixwKSx7fSlicmVha31pZigoSXwyNCk9PUkpaWYocj1qMCgiYXJyYXkiLGYsIm51bWJlciIpPT09ImFycmF5Ij9mOltmXSx0aGlzLlcpTCh0aGlzLlcpO2Vsc2UgdHJ5e3A9IXRoaXMuVC5sZW5ndGgmJiF0aGlzLk4sZShbdUIsW10scixMLFldLDkyLHRoaXMpLFkmJiFwfHxYZih0cnVlLDMsMCx0aGlzLFksdHJ1ZSl9Y2F0Y2goWCl7Syg2NCx0aGlzLFgsMCksTCh0aGlzLlcpfXJldHVybiB1fSxOPWZ1bmN0aW9uKEksTCxZLGYscil7Zm9yKGZhbHNlOyEoTDw8MiY3KTshIVtdKXthOntpZihJLk8pe3I9VGwoSS5aLEkpO2JyZWFrIGF9cj0oKGY9a0sodHJ1ZSxJLDgpLChmfDEyOCktfihmJjEyOCkrfihmfDEyOCkpJiYoZj0tMTMwLX4oZnwxMjgpLShmfC0xMjkpLFk9a0sodHJ1ZSxJLDIpLGY9KGY8PDIpKyhZfDApKSxmKX1pZigiVyIpYnJlYWt9aWYoKEwmOTMpPT1MKWE6e3doaWxlKEkuTyl7d2hpbGUodHJ1ZSlpZihyPVRsKEkuWixJKSx0cnVlKWJyZWFrO2JyZWFrIGE7aWYoW10pYnJlYWt9KChZPWtLKHRydWUsSSw4KSxZKXwxMjgpLX4oWSYxMjgpK34oWXwxMjgpJiYoWT0tMTMwLX4oWXwxMjgpLShZfC0xMjkpLGY9a0sodHJ1ZSxJLDIpLFk9KFk8PDIpKyhmfDApKSxyPVl9cmV0dXJuIHJ9LFQ9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpeygoTHwxKSYxNCk9PTImJihGPShYPShyPShjPWZbWV08PDI0LHA9ZlstMi1+WS0gLTJdPDwxNiwoY3xJKSsocHxJKS0oYyZwKSksdT1mWzIqKFl8MiktMip+KFkmMikrflkrLTNdPDw4LCh1fEkpK34ociZ1KS1+ciksUz1mWzIqKFl8MyktfihZJjMpK34oWXwzKV0sKFN8SSkrfihYJlMpLX5YKSk7Zm9yKFtdIT0oZmFsc2UhPW51bGwpOyEoKExeMTgpPj40KTt0cnVlLnRydWUpe2E6e2lmKEkuTyl7Rj1UbChJLlosSSk7YnJlYWsgYX0oWT1rSyh0cnVlLEksOCksWXwxMjgpLX4oWSYxMjgpK34oWXwxMjgpJiYoWT0tMTMwLX4oWXwxMjgpLShZfC0xMjkpLGY9a0sodHJ1ZSxJLDIpLFk9KFk8PDIpKyhmfDApKSxGPVl9aWYodHJ1ZSE9W10pYnJlYWt9KCgoTCY1NCk9PUwmJihGPXk9ZnVuY3Rpb24oKXt7dmFyIEc9ODA7d2hpbGUoRyE9OClpZihHPT0wKUc9Zj09WT85ODo0ODtlbHNlIGlmKEc9PTQ0KXt2YXIgQT1YZih0cnVlLDUsKGUoRCw5NCxwKSwwKSxwLGZhbHNlLGZhbHNlKTtHPTI0fWVsc2UgaWYoRz09OTgpe3ZhciBRPSFwLlQubGVuZ3RoJiYhcC5OO0c9KChlKEQsODYscCksUSkmJlhmKHRydWUsNiwwLHAsZmFsc2UsZmFsc2UpLDI0KX1lbHNlIGlmKEc9PTgwKUc9cC5VPT1wPzI5Ojg7ZWxzZSBpZihHPT0xMil2YXIgRD1bKEc9NCxNZiksdSxyLHZvaWQgMCxYLGMsYXJndW1lbnRzXTtlbHNlIGlmKEc9PTQ4KUE9QlMoMSwyOTcscCxEKSxHPTI0O2Vsc2UgaWYoRz09MjkpRz1wLlM/MTI6NTtlbHNlIGlmKEc9PTUpWCYmYyYmWC5yZW1vdmVFdmVudExpc3RlbmVyKGMseSxIUyksRz04O2Vsc2UgaWYoRz09NClHPWY9PUk/NDQ6MDtlbHNlIGlmKEc9PTI0KXJldHVybiBBfX0pLEwpJjI5KT09TCYmKFM9VmMscj1bLTY5LDQsOTcsMjIsLTEwLDgyLHIsODgsLTczLC02Ml0sdT0ocHw3KS1+KHAmNykrLTgtKHAmLTgpLGM9cEVbWS5CXShZLnhJKSxjW1kuQl09ZnVuY3Rpb24oRyl7WD1HLHUrPTYrNypwLHUmPTd9LGMuY29uY2F0PWZ1bmN0aW9uKEcsQSxRLEQsVyxiKXtyZXR1cm4oKFg9KFE9MTgyMCpYLShEPWYlMTYrMSxJKmYpKmYqWCtyW2I9dSs2NywoYnwwKSsofmJeNyktKGJ8LTgpXSpmKkQrKFMoKXwwKSpEKzUqZipmKkQtMjA4KmYqWC1EKlgrNTIqWCpYK3Usdm9pZCAwKSxXPXJbUV0scilbQT11KzI5JjcsRz1wJjIsLTEtMip+KEF8RykrKH5BXkcpXT1XLHIpW3UrKC1+KHB8MiktKHAmLTMpKyhwfC0zKSldPTQsV30sRj1jKTt3aGlsZSh0cnVlKXtyZXR1cm4gRjtpZighIiI9PSFmYWxzZSlicmVha319LGdQPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7e0c9NzQ7d2hpbGUoRyE9NylpZihHPT0yMSlBKFMpLEc9OTU7ZWxzZSBpZihHPT02MilHPShMLTN8NzUpPEwmJihMKzleNik+PUw/NTU6NTM7ZWxzZXtpZihHPT04NylyZXR1cm4gRjtpZihHPT02OSlHPSFteigwLCJvYmplY3QiLHIsMyxmLFMpfHxTMChTLEksMzMpJiZTLm5vZGVUeXBlPlk/MjE6NTA7ZWxzZSBpZihHPT02MClHPTc4O2Vsc2UgaWYoRz09NzQpRz02MjtlbHNlIGlmKEc9PTc4KUc9eTxwLmxlbmd0aD82NDo1MztlbHNlIGlmKEc9PTYzKUc9KExeNzYpJjEzPzEyOjI3O2Vsc2UgaWYoRz09NjQpUz1wW3ldLEc9Njk7ZWxzZSBpZihHPT01NylGPVFjKEksMjAsSSksRz04NztlbHNlIGlmKEc9PTU1KUE9ZnVuY3Rpb24oUSl7USYmdS5hcHBlbmRDaGlsZCh0eXBlb2YgUT09PSJzdHJpbmciP1guY3JlYXRlVGV4dE5vZGUoUSk6USl9LHk9MSxHPTYwO2Vsc2UgaWYoRz09NjEpRz02NjtlbHNlIGlmKEc9PTk1KXkrKyxHPTc4O2Vsc2UgaWYoRz09NTMpRz0oTC04fDQyKTxMJiZMLTk8PDE+PUw/MzY6NjM7ZWxzZSBpZihHPT04OClYPXIubGVuZ3RoLHA9dHlwZW9mIHI9PT0ic3RyaW5nIj9yLnNwbGl0KFkpOnIsdT1JLEc9NjE7ZWxzZSBpZihHPT0yNyl7Zm9yKHAgaW4gcj1JLGYuSil7Zm9yKHU9KFg9Zi5KW3BdLEkpO3U8WC5sZW5ndGg7dSsrKSsrcixaKDc0LFksWFt1XSk7ZGVsZXRlIGYuSltmLmc1LS0scF19Rz0xMn1lbHNlIGlmKEc9PTY2KUc9dTxYPzkxOjE1O2Vsc2UgaWYoRz09MzYpWS5JOShmdW5jdGlvbihRKXtyPVF9LEksZiksRj1yLEc9NjM7ZWxzZSBpZihHPT05MSl1IGluIHAmJmYuY2FsbCh2b2lkIDAscFt1XSx1LHIpLEc9ODQ7ZWxzZSBpZihHPT04NCl1KyssRz02NjtlbHNlIGlmKEc9PTEyKUc9KEx8NTYpPT1MPzg4OjE1O2Vsc2UgaWYoRz09MTUpRz0oTC04XjkpPEwmJihMKzgmMjUpPj1MPzU3Ojg3O2Vsc2UgaWYoRz09NTApe2E6e2lmKFMmJnR5cGVvZiBTLmxlbmd0aD09Zil7aWYoUzAoUyxJLDM0KSl7Yz10eXBlb2YgUy5pdGVtPT0iZnVuY3Rpb24ifHx0eXBlb2YgUy5pdGVtPT0ic3RyaW5nIjticmVhayBhfWlmKHR5cGVvZiBTPT09ImZ1bmN0aW9uIil7Yz10eXBlb2YgUy5pdGVtPT0iZnVuY3Rpb24iO2JyZWFrIGF9fWM9ZmFsc2V9Z1AoWSw1NiwiIixBLGM/eEsoMywxMSxTLFkpOlMpLEc9OTV9fX19LGlCPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCl7e3U9Nzc7d2hpbGUodSE9ODYpaWYodT09NzcpdT0xO2Vsc2UgaWYodT09MzgpcC5jbGFzc0xpc3Q/cC5jbGFzc0xpc3QucmVtb3ZlKHIpOksoMTEsWSxwLGYscikmJlJhKDQ1LDI0LGYsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKGFhKDQ0LGYscCksZnVuY3Rpb24oYyl7cmV0dXJuIGMhPXJ9KS5qb2luKEwpLHApLHU9MjA7ZWxzZXtpZih1PT01OClyZXR1cm4gWDt1PT03Mj91PUkrOT4+Mz09Mz83ODoyMTp1PT0yMT91PUkrNj4+ND8zMjo0MTp1PT0yMD91PShJLTZ8NDApPj1JJiYoSS02fDUyKTxJPzY5OjU4OnU9PTY5PyhMLnZxPXZvaWQgMCxMLmVvPWZ1bmN0aW9uKCl7cmV0dXJuIEwudnE/TC52cTpMLnZxPW5ldyBMfSx1PTU4KTp1PT0yMj8oWD13UCgwLDksODE5MixudWxsLGZhbHNlLEwpLHU9NzIpOnU9PTc4PyhYPUFDKDM5LDUsMixZLGYpJiZaKDMzLDAsWSxmKSE9ciYmKCEocD1mLkxpLChwfFkpLX5wK35ZLTIqKHAmflkpKXx8Zi5kaXNwYXRjaEV2ZW50KGUoNjQsMzQsMSwzMixMLHIsWSkpKSYmIWYuWSx1PTIxKTp1PT0xP3U9KChJXjM3KSYxMyk9PTE/MjI6NzI6dT09MzI/dT1JLTg+PjQ9PTQ/Mzg6MjA6dT09NDEmJihYPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChMLE5mKSYmTFtOZl18fChMW05mXT0rK3ZTKSx1PTMyKX19fSxWPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcpe3tHPTI4O3doaWxlKEchPTM4KWlmKEc9PTUpcisrLEc9NDA7ZWxzZSBpZihHPT0zOSl7YTp7aWYoKCgoZi5pKz0oYz0oUz0ocnx8Zi5aYysrLGYuT0E+MCkmJmYuTiYmZi5BbCYmZi5ocjw9MSYmIWYuTyYmIWYuSyYmKCFyfHxmLldpLXA+MSkmJmRvY3VtZW50LmhpZGRlbj09MCwoeT1mLlpjPT00KXx8Uz9mLnUoKTpmLnhhKSx1PWMtZi54YSx1Pj4xNCk+MCxmLkMpJiYoZi5DXj0oZi5pKzE+PjIpKih1PDwyKSksZikuVT1mLmkrMT4+MiE9MHx8Zi5VLHkpfHxTKWYueGE9YyxmLlpjPTA7aWYoIVMpe0Y9ZmFsc2U7YnJlYWsgYX1pZihjLShmLk9BPmYuRGMmJihmLkRjPWYuT0EpLGYpLmQ1PGYuT0EtKFk/MjU1OnI/NToyKSl7Rj1mYWxzZTticmVhayBhfUY9KChNKChYPWsoZiwoZi5XaT1wLHI/MjcyOjUwOSkpLEwpLGYsZi5QKSxmLlQpLnB1c2goW1V3LFgscj9wKzE6cCxmLm8sZi5JXSksZi5LPUNFLHRydWUpfUc9NTB9ZWxzZSBpZihHPT02MClHPTgwO2Vsc2UgaWYoRz09MjIpRz0oSSs1JjE1KT09MT80NzoyMztlbHNlIGlmKEc9PTMpRj11LEc9MjI7ZWxzZSBpZihHPT05NylHPTU0O2Vsc2V7aWYoRz09NTApcmV0dXJuIEY7Rz09NTQ/Rz1JKzYmMTU/NTA6Mzk6Rz09ODc/KGYrPVkscD1wPDxZfExbcl0sRz02MCk6Rz09NzI/Rz1JKzEmNz8yMjo0NDpHPT02MT9HPTQwOkc9PTQwP0c9cjxMLmxlbmd0aD84NzozOkc9PTIzP0c9KChJXjc0KSY3KT09Mj85Nzo1NDpHPT0xNj9HPTgwOkc9PTQ0PyhyPWY9MCx1PVtdLEc9NjEpOkc9PTk4PyhmLT04LHUucHVzaChwPj5mJjI1NSksRz0xNik6Rz09ODA/Rz1mPjc/OTg6NTpHPT0yOD9HPTcyOkc9PTQ3JiYoTShmLFksTCksTFtkUF09Mjc5NixHPTIzKX19fSxtej1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTKXt7Yz05Nzt3aGlsZShjIT02MylpZihjPT0xMCljPShmPDwyJjcpPj0xJiZmLTk+PjU8MT81MTozNjtlbHNle2lmKGM9PTkyKXJldHVybiBTO2M9PTUxPyhYPXR5cGVvZiBwLHU9WCE9TD9YOnA/QXJyYXkuaXNBcnJheShwKT8iYXJyYXkiOlg6Im51bGwiLFM9dT09WXx8dT09TCYmdHlwZW9mIHAubGVuZ3RoPT1yLGM9MzYpOmM9PTIzP2M9KGYtOF4zKTxmJiYoZi00XjEwKT49Zj8xNTo5MjpjPT0zNj9jPWYtOT4+NDwzJiYoZj4+MSY3KT49ND81ODoyMzpjPT0xNT8oTC5jbGFzc0xpc3Q/QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChZLGZ1bmN0aW9uKHkpe2lCKDcyLCIgIixJLCJzdHJpbmciLHksTCl9KTpSYSg0NSwyNywic3RyaW5nIixBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoYWEoNDIsInN0cmluZyIsTCksZnVuY3Rpb24oeSl7cmV0dXJuIShTMChZLEksMjQseSk+PUkpfSkuam9pbigiICIpLEwpLGM9OTIpOmM9PTU4PyhyPVksdEM9PT12b2lkIDAmJih0Qz1MKSx1PShwPXRDKT9wLmNyZWF0ZVNjcmlwdFVSTChyKTpyLFM9bmV3IFo0KHUpLGM9MjMpOmM9PTk3JiYoYz0xMCl9fX0seEs9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe3tGPTMzO3doaWxlKEYhPTI1KWlmKEY9PTU3KUY9MTU7ZWxzZSBpZihGPT04MilGPShMLTFeMjkpPj1MJiYoTC1JXjEyKTxMPzE4OjE0O2Vsc2UgaWYoRj09MTUpRj1TPHAubGVuZ3RoPzY3OjY7ZWxzZSBpZihGPT0yNilvYSgxLDUsZixZLHUsWCxwLHIsYyksRj02O2Vsc2UgaWYoRj09MzMpRj04MjtlbHNlIGlmKEY9PTY3KXhLKDMsNSxudWxsLHRydWUscixwW1NdLHUsWCxjKSxGPTc4O2Vsc2UgaWYoRj09ODQpUz0wLEY9NTc7ZWxzZSBpZihGPT0xOCl7YTp7aWYoKHU9WS5sZW5ndGgsdSk+Zil7Zm9yKHA9KHI9QXJyYXkodSksZik7cDx1O3ArKylyW3BdPVlbcF07eT1yO2JyZWFrIGF9eT1bXX1GPTE0fWVsc2UgaWYoRj09MTApRj1YJiZYLm9uY2U/MjY6NDU7ZWxzZSBpZihGPT00MSljPXljKDk5LDMzLGMpLHImJnJbYkJdP3IuZy5hZGQoU3RyaW5nKHApLGMsZmFsc2UsUzAoWCxZLDM2KT8hIVguY2FwdHVyZTohIVgsdSk6ZShudWxsLDUsZmFsc2UsYyxyLFgscCx1LGZhbHNlKSxGPTY7ZWxzZXtpZihGPT02KXJldHVybiB5O0Y9PTQ1P0Y9QXJyYXkuaXNBcnJheShwKT84NDo0MTpGPT03OD8oUysrLEY9MTUpOkY9PTE0JiYoRj1MPj4yJjY/NjoxMCl9fX0sWGY9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe2Zvcih5PTI3O3khPTc7KWlmKHk9PTI3KXk9ODk7ZWxzZSBpZih5PT0zOClGPU1hdGguZmxvb3IodGhpcy51KCkpLHk9NjY7ZWxzZSBpZih5PT04OSl5PUwrOD4+Mz09MT80Mzo0OTtlbHNle2lmKHk9PTY2KXJldHVybiBGO2lmKHk9PTQ5KXk9KExeMzEpPj40PzY2OjM4O2Vsc2UgaWYoeT09NDMpe2E6aWYoZi5ULmxlbmd0aCl7Zi5OPShmLk4mJiI6VFFSOlRRUjoiKCksSSksZi5BbD1yO3RyeXtTPWYudSgpLGYuRGM9WSxmLnhhPVMsZi5kNT1TLGYuWmM9WSxjPVFjKEksMjUsbnVsbCwwLDI5NyxmLHIpLFg9cD8wOjEwLHU9Zi51KCktZi5kNSxmLnNBKz11LGYubTcmJmYubTcodS1mLmwsZi5vLGYuSSxmLkRjKSxmLm89ZmFsc2UsZi5sPVksZi5JPWZhbHNlLHU8WHx8Zi5ZYS0tPD1ZfHwodT1NYXRoLmZsb29yKHUpLGYuVmUucHVzaCh1PD0yNTQ/dToyNTQpKX1maW5hbGx5e2YuTj1mYWxzZX1GPWM7YnJlYWsgYX15PTQ5fX19LEFDPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSl7e1M9MjY7d2hpbGUoUyE9NTIpaWYoUz09ODcpWD1yLnByb3h5LHA9ci50eXBlLHUucmVtb3ZlRXZlbnRMaXN0ZW5lcj91LnJlbW92ZUV2ZW50TGlzdGVuZXIocCxYLHIuY2FwdHVyZSk6dS5kZXRhY2hFdmVudD91LmRldGFjaEV2ZW50KFMwKHAsIm9uIiwzKSxYKTp1LmFkZExpc3RlbmVyJiZ1LnJlbW92ZUxpc3RlbmVyJiZ1LnJlbW92ZUxpc3RlbmVyKFgpLGhDLS0sYz1RYyh1LDgpLFM9STtlbHNlIGlmKFM9PTU1KVM9dSYmdVtiQl0/ODU6ODc7ZWxzZSBpZihTPT0xNil1PXIuc3JjLFM9NTU7ZWxzZSBpZihTPT0yNilTPTg2O2Vsc2UgaWYoUz09NjYpUz1jLmc1PT0wPzg0OjIxO2Vsc2UgaWYoUz09SSlTPWM/NjI6NDg7ZWxzZXtpZihTPT0yMSlyZXR1cm4geTtTPT04NT8oSyg2MCxyLHUuZyxZKSxTPTIxKTpTPT00OD8oWig1OCxZLHIpLFM9MjEpOlM9PTYzP1M9KChMXjUwKSYxMik+PTEmJihMLTgmMTIpPDg/Mjg6OTU6Uz09NjI/KEsoNTYscixjLFkpLFM9NjYpOlM9PTk1P1M9KEwtOHwzNCk8TCYmTC04PDwxPj1MPzU2OjIxOlM9PTg0PyhjLnNyYz1mLHVbRXddPWYsUz0yMSk6Uz09ODY/Uz0oTHw4KT4+ND82MzoyOlM9PTU2P1M9dHlwZW9mIHIhPT0ibnVtYmVyIiYmciYmIXIudWQ/MTY6MjE6Uz09Mj8oeT0hIShwPXIuUmwsLX4ocHxmKS0ofnBeZiktWSoofnAmZikrWSoofnB8ZikpLFM9NjMpOlM9PTI4JiYocj1ZLHk9ZnVuY3Rpb24oKXtyZXR1cm4gcjxmLmxlbmd0aD97ZG9uZTpmYWxzZSx2YWx1ZTpmW3IrK119Ontkb25lOnRydWV9fSxTPTk1KX19fSxRYz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRixHLEEpe0Y9Nzk7e0c9NzM7d2hpbGUoe30pdHJ5e2lmKEY9PTk5KWJyZWFrO2Vsc2UgaWYoRj09MjUpWT1JW0V3XSxBPVkgaW5zdGFuY2VvZiBLRT9ZOm51bGwsRj05NjtlbHNle2lmKEY9PTQ0KXJldHVybiBBO0Y9PTQ5PyhHPTczLEsoNDgscCx5LGYpLEY9NjkpOkY9PTU2PyhBPVgsRj0yOSk6Rj09MD9GPXAuVC5sZW5ndGg/OTU6NTY6Rj09ND9GPTA6Rj09OTU/KHAuSz1ZLGM9cC5ULnBvcCgpLEY9NSk6Rj09ODU/KFM9cC5LLFMoZnVuY3Rpb24oKXtYZih0cnVlLDYsZixwLEksSSl9KSxGPTU2KTpGPT02OT8oRz03MyxGPTQwKTpGPT0yMj9GPTA6Rj09NTE/KEkucmF3PVksT2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoSSksT2JqZWN0LmZyZWV6ZShZKSksQT1JLEY9NDQpOkY9PTI5P0Y9KEwtOCYxMSk+PTgmJihMfDIpPDI3PzUxOjQ0OkY9PTQwP0Y9dSYmcC5LPzg1OjQ6Rj09NDE/Rj1MLTQ+PjQ/OTY6MjU6Rj09NT8oRz00MSxYPUJTKDEscixwLGMpLEY9NjkpOkY9PTc5P0Y9NDE6Rj09OTYmJihGPShMKzEmNDMpPEwmJihMKzcmNDUpPj1MPzIyOjI5KX19Y2F0Y2goUSl7aWYoRz09NzMpdGhyb3cgUTtHPT00MSYmKHk9USxGPTQ5KX19fSxmTz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7e0Y9NTU7d2hpbGUoRiE9ODcpaWYoRj09MjcpcC5zZXRBdHRyaWJ1dGUoUyx1KSxGPTM3O2Vsc2UgaWYoRj09NTUpRj0zNjtlbHNlIGlmKEY9PTI0KUY9dT09PSIifHx1PT12b2lkIDA/NDA6Mjc7ZWxzZSBpZihGPT0zNilGPShMKzZeMTYpPEwmJihMLTh8MjMpPj1MPzY2OjM3O2Vsc2UgaWYoRj09NDApRj1MTz8zMDo0NztlbHNlIGlmKEY9PTQ3KVg9e30sTE89KFguYXRvbWljPWYsWC5hdXRvY29tcGxldGU9Im5vbmUiLFguZHJvcGVmZmVjdD0ibm9uZSIsWC5oYXNwb3B1cD1mLFgubGl2ZT0ib2ZmIixYLm11bHRpbGluZT1mLFgubXVsdGlzZWxlY3RhYmxlPWYsWC5vcmllbnRhdGlvbj0idmVydGljYWwiLFgucmVhZG9ubHk9ZixYLnJlbGV2YW50PSJhZGRpdGlvbnMgdGV4dCIsWC5yZXF1aXJlZD1mLFguc29ydD0ibm9uZSIsWC5idXN5PWYsWC5kaXNhYmxlZD1mLFhbWV09ZixYLmludmFsaWQ9ImZhbHNlIixYKSxGPTMwO2Vsc2UgaWYoRj09OTMpRj0oTDw8MSYxNSk9PTI/NTg6MTQ7ZWxzZSBpZihGPT02MilGPTkzO2Vsc2UgaWYoRj09MzApYz1MTyxyIGluIGM/cC5zZXRBdHRyaWJ1dGUoUyxjW3JdKTpwLnJlbW92ZUF0dHJpYnV0ZShTKSxGPTM3O2Vsc2UgaWYoRj09NjYpQXJyYXkuaXNBcnJheSh1KSYmKHU9dS5qb2luKCIgIikpLFM9ImFyaWEtIityLEY9MjQ7ZWxzZXtpZihGPT0xNClyZXR1cm4geTtpZihGPT01OCl7YTp7aWYoIShyPShmPW51bGwsVS50cnVzdGVkVHlwZXMpLHIpfHwhci5jcmVhdGVQb2xpY3kpe3k9ZjticmVhayBhfXRyeXtmPXIuY3JlYXRlUG9saWN5KEkse2NyZWF0ZUhUTUw6WVYsY3JlYXRlU2NyaXB0OllWLGNyZWF0ZVNjcmlwdFVSTDpZVn0pfWNhdGNoKEcpe2lmKFUuY29uc29sZSlVLmNvbnNvbGVbWV0oRy5tZXNzYWdlKX15PWZ9Rj0xNH1lbHNlIEY9PTM3JiYoRj0oTC03XjEzKTxMJiYoTC0yfDE0KT49TD82Mjo5Myl9fX0sWj1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyl7e2M9NjM7d2hpbGUoYyE9MjIpaWYoYz09OTgpYz0oSSY4MSk9PUk/MjM6ODM7ZWxzZSBpZihjPT0yOSl1PXdQKDAsNDEsODE5MixudWxsLHRydWUsTCksYz0zMztlbHNlIGlmKGM9PTMzKWM9KEktOCYxNSk9PTI/ODY6MDtlbHNlIGlmKGM9PTApYz0oSXw5KTwxNiYmKEk8PDImMTMpPj02PzI0OjQxO2Vsc2UgaWYoYz09ODYpWS51ZD1MLFkubGlzdGVuZXI9bnVsbCxZLnByb3h5PW51bGwsWS5zcmM9bnVsbCxZLkN6PW51bGwsYz0wO2Vsc2UgaWYoYz09ODMpYz0oST4+MSYyMyk9PTI/Mjk6MzM7ZWxzZSBpZihjPT0yMylYPWZ1bmN0aW9uKFMpe3JldHVybiBMLmNhbGwoWC5zcmMsWC5saXN0ZW5lcixTKX0sTD0kVix1PVgsYz04MztlbHNlIGlmKGM9PTYzKWM9OTg7ZWxzZSBpZihjPT00MSljPShJLTZeOCk8SSYmKEkrNyY0Nik+PUk/NTI6Nzk7ZWxzZSBpZihjPT0yNClwPVMwKGYsTCwyNSxZKSwocj1wPj1MKSYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGYscCwxKSx1PXIsYz00MTtlbHNlIGlmKGM9PTUyKXU9ISEocj1mLldxLChZfEwpLX5yK34ocnxZKSksYz03OTtlbHNlIGlmKGM9PTc5KXJldHVybiB1fX0seWM9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMpe2ZvcihYPTY2O1ghPTkyOylpZihYPT04NSl0aGlzW3RoaXMrIiJdPXRoaXMsWD04MTtlbHNlIGlmKFg9PTIpYz1ZLFg9ODI7ZWxzZXtpZihYPT0yOClyZXR1cm4gYztpZihYPT03OCl0aGlzLmxpc3RlbmVyPXUsdGhpcy5wcm94eT1udWxsLHRoaXMuc3JjPVksdGhpcy50eXBlPXIsdGhpcy5jYXB0dXJlPSEhcCx0aGlzLkN6PWYsdGhpcy5rZXk9Kytpbyx0aGlzLnllPXRoaXMudWQ9ZmFsc2UsWD0yODtlbHNlIGlmKFg9PTM2KVg9KEwrMyYxNSk+PTgmJkwtNzwxOT8yOjgyO2Vsc2UgaWYoWD09ODIpWD1MPj4yJjk/MzM6ODtlbHNlIGlmKFg9PTgxKVg9KEwmMTAxKT09TD81NjozNjtlbHNlIGlmKFg9PTY2KVg9NTg7ZWxzZSBpZihYPT01Nil7YTp7aWYodHlwZW9mIFk9PT0iZnVuY3Rpb24iKXtjPVk7YnJlYWsgYX1jPVlbWVtyQ118fChZW3JDXT1mdW5jdGlvbihTKXtyZXR1cm4gWS5oYW5kbGVFdmVudChTKX0pLHJDXX1YPTM2fWVsc2UgaWYoWD09MzIpQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChmLGZ1bmN0aW9uKFMseSxGKXtmb3IoRj0xO0YhPTQzOylGPT0xP0Y9WS5jbGFzc0xpc3Q/OTpJOkY9PTk/KFkuY2xhc3NMaXN0LmFkZChTKSxGPTQzKTpGPT0zMD8oeT1hYSgzLCJzdHJpbmciLCIiLFkpLFJhKDQ1LDI2LCJzdHJpbmciLHkrKHkubGVuZ3RoPjA/IiAiK1M6UyksWSksRj00Myk6Rj09SSYmKEY9SygxOSwwLFksInN0cmluZyIsUyk/NDM6MzApfSksWD0zMztlbHNlIGlmKFg9PTU4KVg9TC0zPDQwJiZMLTc+PTI5Pzg1OjgxO2Vsc2UgaWYoWD09OClYPVkuY2xhc3NMaXN0PzMyOjk3O2Vsc2UgaWYoWD09OTcpe2ZvcihyIGluIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoKHA9e30sYWEoNDAsInN0cmluZyIsWSkpLGZ1bmN0aW9uKFMpe3BbU109dHJ1ZX0pLEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZixmdW5jdGlvbihTKXtwW1NdPXRydWV9KSx1PSIiLHApdSs9dS5sZW5ndGg+MD8iICIrcjpyO1g9KFJhKDQ1LDI1LCJzdHJpbmciLHUsWSksMzMpfWVsc2UgWD09MzMmJihYPShMXjU1KT4+ND8yODo3OCl9fSxLPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7Zm9yKEE9NDc7QSE9NTA7KWlmKEE9PTQpWT10cnVlLEE9NDE7ZWxzZSBpZihBPT0zKUE9KChJXjgwKSY3KT09Mz8zMDo2MTtlbHNlIGlmKEE9PTMwKUE9WS5jbGFzc0xpc3Q/MTQ6OTg7ZWxzZSBpZihBPT02MSlBPShJLTcmMTUpPT0yPzg4OjM0O2Vsc2UgaWYoQT09NDEpRz1ZLEE9MzQ7ZWxzZSBpZihBPT0zOClBPVkuSltyXS5sZW5ndGg9PTA/NDI6NjY7ZWxzZSBpZihBPT0xNSlBPShJJjM5KT09ST81NDozO2Vsc2UgaWYoQT09ODgpQT1mLnVkPzQ6NTg7ZWxzZXtpZihBPT0zNClyZXR1cm4gRztpZihBPT0xNClwPVkuY2xhc3NMaXN0LmNvbnRhaW5zKHIpLEE9NzU7ZWxzZSBpZihBPT03NSlHPXAsQT02MTtlbHNlIGlmKEE9PTU0KXthOntpZihYPXIuZy5KW1N0cmluZyhMKV0sIVgpe0c9ZjticmVhayBhfWZvcihTPShYPVguY29uY2F0KCksdT0wLGYpO3U8WC5sZW5ndGg7Kyt1KShGPVhbdV0pJiYhRi51ZCYmRi5jYXB0dXJlPT1wJiYoYz1GLmxpc3RlbmVyLHk9Ri5Denx8Ri5zcmMsRi55ZSYmSyg1OCxGLHIuZyxmKSxTPWMuY2FsbCh5LFkpIT09ZmFsc2UmJlMpO0c9UyYmIVkuZGVmYXVsdFByZXZlbnRlZH1BPTN9ZWxzZSBBPT01OD8ocD1uZXcgT3coTCx0aGlzKSx1PWYubGlzdGVuZXIscj1mLkN6fHxmLnNyYyxmLnllJiZBQygzOSw0OSx0cnVlLG51bGwsZiksWT11LmNhbGwocixwKSxBPTQxKTpBPT00Nj8oWig0MixmLEwpLEE9MzgpOkE9PTgyP0E9ciBpbiBZLkomJlooNiwwLEwsWS5KW3JdKT80Njo2NjpBPT05OD8odT1hYSg0MyxmLFkpLHA9UzAodSxMLDI2LHIpPj1MLEE9NzUpOkE9PTQyPyhkZWxldGUgWS5KW3JdLFkuZzUtLSxBPTY2KTpBPT04Nz8oTC5XPSgoTC5XP0wuVysifiI6IkU6IikrWS5tZXNzYWdlKyI6IitZLnN0YWNrKS5zbGljZShmLDIwNDgpLEE9MTUpOkE9PTY2P0E9KEkmMTE2KT09ST84NzoxNTpBPT00Nz9BPTg1OkE9PTg1P0E9KEktOHw0Myk+PUkmJihJLTd8NTIpPEk/NTk6NjY6QT09NTkmJihyPUwudHlwZSxBPTgyKX19LEZmPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7e0c9ODI7d2hpbGUoRyE9NSlpZihHPT05OClHPShyJjEyMSk9PXI/MTY6Mzc7ZWxzZSBpZihHPT0yKUZmKDAsTCxZW3ldLGYsMjYsbnVsbCx1LFgpLEc9MTQ7ZWxzZSBpZihHPT04MClGPVMwKFgscCwzMik/ISFYLmNhcHR1cmU6ISFYLEw9eWMoOTksMzIsTCksRz0xNTtlbHNlIGlmKEc9PTE5KUc9NDk7ZWxzZSBpZihHPT0zMSljKz1JLmNoYXJDb2RlQXQoTCksYys9Yzw8MTAsY149Yz4+NixHPTMyO2Vsc2V7aWYoRz09MzcpcmV0dXJuIEE7Rz09NDk/Rz15PFkubGVuZ3RoPzI6OTg6Rz09MTQ/KHkrKyxHPTQ5KTpHPT01OT8oKGM9Uy5sZChGLFksdSxMKSkmJkFDKDM5LDQ4LHRydWUsbnVsbCxjKSxHPTk4KTpHPT0zMj8oTCsrLEc9NzcpOkc9PTg3Pyh5PUksRz0xOSk6Rz09NDA/KFM9UWMoZiw5KSxHPTIyKTpHPT0xNT9HPWYmJmZbYkJdPzk0OjY5Okc9PTMzPyhjKz1jPDwzLGNePWM+PjExLGY9YysoYzw8MTUpPj4+MCx1PW5ldyBOdW1iZXIoKFg9KDE8PHApLTEsLTEtfmYtKGZeWCkrKH5mJlgpKSksdVswXT0oZj4+PnApJVksQT11LEc9MzcpOkc9PTE2PyhMPWM9MCxHPTQxKTpHPT03Nz9HPUw8SS5sZW5ndGg/MzE6MzM6Rz09ODI/Rz03ODpHPT02OT9HPWY/NDA6OTg6Rz09OTQ/KGYuZy5yZW1vdmUoU3RyaW5nKFkpLEwsRix1KSxHPTk4KTpHPT03OD9HPShyKzZeMTkpPj1yJiYoci00XjMwKTxyPzI0Ojk4Okc9PTI0P0c9QXJyYXkuaXNBcnJheShZKT84Nzo4MDpHPT0yMj9HPVM/NTk6OTg6Rz09NDEmJihHPTc3KX19fSx3UD1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7e0Y9NTA7d2hpbGUoRiE9MzgpaWYoRj09MzApeT1NYXRoLmZsb29yKHRoaXMuc0ErKHRoaXMudSgpLXRoaXMuZDUpKSxGPTU0O2Vsc2V7aWYoRj09NzYpcmV0dXJuIHk7aWYoRj09NDgpe2E6aWYoYz13aW5kb3cuYnRvYSl7Zm9yKHU9SSxYPSIiO3U8cC5sZW5ndGg7dSs9WSlYKz1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KGYscC5zbGljZSh1LHUrWSkpO3k9KFM9YyhYKSxyJiYoUz1TLnJlcGxhY2UoL1xcKy9nLCItIikucmVwbGFjZSgvXFwvL2csIl8iKS5yZXBsYWNlKC89L2csIiIpKSxTKTticmVhayBhfUY9NzJ9ZWxzZSBGPT00Mj8odGhpc1t0aGlzKyIiXT10aGlzLHk9UHJvbWlzZS5yZXNvbHZlKCksRj0yNyk6Rj09NDk/KHRoaXMuc3JjPVksdGhpcy5KPXt9LHRoaXMuZzU9SSxGPTM3KTpGPT01OD9GPShMJjEwNSk9PUw/NDg6NzI6Rj09NzI/Rj0oTCYxMjIpPT1MPzMwOjU0OkY9PTUwP0Y9NTg6Rj09NTk/KHk9cEVbWV0ocEUucHJvdG90eXBlLHtwYXJlbnQ6ZixjYWxsOmYsbGVuZ3RoOmYscHJvcGVydHlJc0VudW1lcmFibGU6ZixyZXBsYWNlOmYsY29uc29sZTpmLHN0YWNrOmYsZG9jdW1lbnQ6ZixzcGxpY2U6Zixwcm90b3R5cGU6ZixmbG9vcjpmLHBvcDpmfSksRj03Nik6Rj09NTQ/Rj0oTCY5Mik9PUw/NDk6Mzc6Rj09Mzc/Rj1MLTM+PTI1JiZMLTM8Mzc/NDI6Mjc6Rj09MjcmJihGPShMXjMzKT4+Mz09Mz81OTo3Nil9fX0sUzA9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSl7Zm9yKHA9NTM7cCE9MjspaWYocD09MTIpcD1ZPj4yJjE1PzM1Ojc4O2Vsc2UgaWYocD09OTYpcD0oWV44MCk+PS03OSYmKFktNiYxNik8Mj85NzoxMjtlbHNlIGlmKHA9PTk3KXRoaXMubisrLEk9TC10aGlzLlIsdGhpcy5SKz1JL3RoaXMubix0aGlzLnc1Kz1JKihMLXRoaXMuUikscD0xMjtlbHNlIGlmKHA9PTEpZj10eXBlb2YgSSx1PWY9PSJvYmplY3QiJiZJIT1MfHxmPT0iZnVuY3Rpb24iLHA9NTtlbHNlIGlmKHA9PTcyKXA9KFleMzgpPj4zPzU6MTtlbHNlIGlmKHA9PTUzKXA9NzI7ZWxzZXtpZihwPT0zNSlyZXR1cm4gdTtpZihwPT01KXA9WSs1Pj4xPFkmJihZLTheMTUpPj1ZPzc3Ojk2O2Vsc2UgaWYocD09NzgpdT1JIGluIEkxP0kxW0ldOkkxW0ldPUwrSSxwPTM1O2Vsc2UgaWYocD09Nzcpe2E6e2lmKHR5cGVvZiBJPT09InN0cmluZyIpe3U9dHlwZW9mIGYhPT0ic3RyaW5nInx8Zi5sZW5ndGghPTE/LTE6SS5pbmRleE9mKGYsTCk7YnJlYWsgYX1mb3Iocj1MO3I8SS5sZW5ndGg7cisrKWlmKHIgaW4gSSYmSVtyXT09PWYpe3U9cjticmVhayBhfXU9LTF9cD05Nn19fSxQUz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHkpe3t5PTQwO3doaWxlKHkhPTQ4KWlmKHk9PTQwKXk9NzU7ZWxzZSBpZih5PT00Myl7YTp7Zm9yKGM9WTtjPHUubGVuZ3RoOysrYylpZihYPXVbY10sIVgudWQmJlgubGlzdGVuZXI9PXImJlguY2FwdHVyZT09ISFmJiZYLkN6PT1wKXtTPWM7YnJlYWsgYX1TPS0xfXk9MjF9ZWxzZSBpZih5PT04Myl5PShMKzYmNjIpPj1MJiZMLTg8PDI8TD84Njo5NDtlbHNlIGlmKHk9PTg2KXk9WT8yOTo1MjtlbHNlIGlmKHk9PTk0KXk9KEwtMSYxMSk9PTI/OTY6Njk7ZWxzZXtpZih5PT00Nil0aHJvdyBFcnJvcigiSW52YWxpZCBkZWNvcmF0b3IgZnVuY3Rpb24gIitmKTtpZih5PT05Nil0aGlzLlk9dGhpcy5ZLHRoaXMuTmg9dGhpcy5OaCx5PTY5O2Vsc2UgaWYoeT09NzUpeT0oTD4+MiYxNSk9PTM/MTA6ODM7ZWxzZSBpZih5PT0yOSl5PXR5cGVvZiBmIT09ImZ1bmN0aW9uIj80Njo5NDtlbHNle2lmKHk9PTIxKXJldHVybiBTO2lmKHk9PTY5KXk9KEx8SSk9PUw/NDM6MjE7ZWxzZXtpZih5PT01Mil0aHJvdyBFcnJvcigiSW52YWxpZCBjbGFzcyBuYW1lICIrWSk7eT09MTAmJih0aGlzLkFyPVUuZG9jdW1lbnR8fGRvY3VtZW50LHk9ODMpfX19fX0sUmE9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSl7e3A9ODE7d2hpbGUocCE9SSlpZihwPT02MilwPShMfDI0KT09TD82Njo5MjtlbHNlIGlmKHA9PTYpSkMuY2FsbCh0aGlzKSx0aGlzLmc9bmV3IEtFKHRoaXMpLHRoaXMuQmk9dGhpcyx0aGlzLmE5PW51bGwscD02MjtlbHNlIGlmKHA9PTgxKXA9NDM7ZWxzZXtpZihwPT05MilyZXR1cm4gdTtwPT00Mz9wPUwtMT4+ND82Mjo2OnA9PTY2JiYodHlwZW9mIHIuY2xhc3NOYW1lPT1ZP3IuY2xhc3NOYW1lPWY6ci5zZXRBdHRyaWJ1dGUmJnIuc2V0QXR0cmlidXRlKCJjbGFzcyIsZikscD05Mil9fX0sYWE9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYKXt7dT0wO3doaWxlKHUhPTM4KXtpZih1PT0zNylyZXR1cm4gWDtpZih1PT0wKXU9MjQ7ZWxzZSBpZih1PT00NClYPUwmJkwucGFyZW50Tm9kZT9MLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoTCk6bnVsbCx1PTU2O2Vsc2UgaWYodT09NDcpdT1JKzY+PjM9PTI/NDQ6NTY7ZWxzZSBpZih1PT04OClYPXRoaXMubj09PTA/MDpNYXRoLnNxcnQodGhpcy53NS90aGlzLm4pLHU9NTtlbHNlIGlmKHU9PTcpWD1ZLmNsYXNzTGlzdD9ZLmNsYXNzTGlzdDphYSg1LEwsIiIsWSkubWF0Y2goL1xcUysvZyl8fFtdLHU9NDc7ZWxzZSBpZih1PT01Nil1PUktMSY3PzM3OjY4O2Vsc2UgaWYodT09MTIpdT0oSS0zJjE2KTwxMSYmST4+Mj49MTk/ODg6NTtlbHNlIGlmKHU9PTY4KXthOntmb3IocCBpbiBmKWlmKHIuY2FsbCh2b2lkIDAsZltwXSxwLGYpKXtYPVk7YnJlYWsgYX1YPUx9dT0zN31lbHNlIHU9PTU0PyhYPXR5cGVvZiBmLmNsYXNzTmFtZT09TD9mLmNsYXNzTmFtZTpmLmdldEF0dHJpYnV0ZSYmZi5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fFksdT0xMik6dT09NT91PShJfDQwKT09ST83OjQ3OnU9PTI0JiYodT0oSS03XjI3KTxJJiYoSS0yfDI1KT49ST81NDoxMil9fX0sb2E9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe2ZvcihGPTUyO0YhPTk0Oyl7aWYoRj09MzkpcmV0dXJuIHk7Rj09ND9GPUFycmF5LmlzQXJyYXkodSk/NTc6NzE6Rj09NTI/Rj05MTpGPT04Mj9GPVM8dS5sZW5ndGg/NDM6ODQ6Rj09NTc/KFM9MCxGPTU1KTpGPT05NT8oeT1xZihuRSxZKSxGPTM5KTpGPT01NT9GPTgyOkY9PTcxPyhjPXljKDk5LDY4LGMpLFgmJlhbYkJdP1guZy5hZGQoU3RyaW5nKHUpLGMsWSxTMChwLGYsMzUpPyEhcC5jYXB0dXJlOiEhcCxyKTplKG51bGwsNixmYWxzZSxjLFgscCx1LHIsWSksRj04NCk6Rj09ODQ/Rj0oTF41KT4+NDwyJiZMLTc+PjQ+PTA/OTU6Mzk6Rj09NDM/KG9hKDEsNix0cnVlLG51bGwscixwLHVbU10sWCxjKSxGPTc5KTpGPT05MT9GPSgoTF4zNSkmNyk+PTUmJigoTF4xNykmOCk8ST80Ojg0OkY9PTc5JiYoUysrLEY9ODIpfX0sZT1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRixHLEEsUSl7Zm9yKFE9NDQ7USE9ODY7KXtpZihRPT04NSlyZXR1cm4gQTtpZihRPT02OSlRPXIuYWRkTGlzdGVuZXImJnIucmVtb3ZlTGlzdGVuZXI/MTk6MTtlbHNlIGlmKFE9PTQxKXIuYXR0YWNoRXZlbnQoUzAodS50b1N0cmluZygpLCJvbiIsNjQpLEcpLFE9NzU7ZWxzZSBpZihRPT00NClRPTgwO2Vsc2UgaWYoUT09MzMpUT0oTC03XjE0KT49TCYmTCs4Pj4yPEw/Njc6ODU7ZWxzZSBpZihRPT0zOSlTPVMwKHAsSSwzNyk/ISFwLmNhcHR1cmU6ISFwLCh5PVFjKHIsMTApKXx8KHJbRXddPXk9bmV3IEtFKHIpKSxGPXkuYWRkKHUsZixjLFMsWCksUT0yMDtlbHNlIGlmKFE9PTIzKXRoaXMuWC5wdXNoKEkpLFE9MzM7ZWxzZSBpZihRPT03NSloQysrLFE9MTA7ZWxzZXtpZihRPT02Mil0aHJvdyBFcnJvcigiSW52YWxpZCBldmVudCB0eXBlIik7aWYoUT09MClRPXU/Mzk6NjI7ZWxzZSBpZihRPT05NSlRPShMPj4xJjE1KT09MT8xMjo3ODtlbHNlIGlmKFE9PTkxKVkuVC5zcGxpY2UoMCwwLEkpLFE9OTU7ZWxzZSBpZihRPT0xNil0aGlzLm4rKyxRPTkyO2Vsc2UgaWYoUT09NjcpQT0hIShwPWYuajUsWSoocnxJKSt+ci0ocF5yKS0ofnB8cikpJiZBQygzOSwzLFkscixmKSxRPTg1O2Vsc2UgaWYoUT09NzYpR2N8fChwPVMpLHA9PT12b2lkIDAmJihwPVkpLHIuYWRkRXZlbnRMaXN0ZW5lcih1LnRvU3RyaW5nKCksRyxwKSxRPTc1O2Vsc2UgaWYoUT09NzgpUT0oTHw5KT4+ND8xMDowO2Vsc2UgaWYoUT09ODApUT0oTHw4MCk9PUw/OTE6OTU7ZWxzZSBpZihRPT00NilRPXIuYXR0YWNoRXZlbnQ/NDE6Njk7ZWxzZSBpZihRPT0xNClZPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSp0aGlzLm4pLFk8NTAmJih0aGlzLlhbWV09SSksUT0zMztlbHNlIGlmKFE9PTEyKXthOntzd2l0Y2godSl7Y2FzZSBZOkE9cD8iZGlzYWJsZSI6ImVuYWJsZSI7YnJlYWsgYTtjYXNlIDI6QT1wPyJoaWdobGlnaHQiOiJ1bmhpZ2hsaWdodCI7YnJlYWsgYTtjYXNlIDQ6QT1wPyJhY3RpdmF0ZSI6ImRlYWN0aXZhdGUiO2JyZWFrIGE7Y2FzZSByOkE9cD8ic2VsZWN0IjoidW5zZWxlY3QiO2JyZWFrIGE7Y2FzZSAxNjpBPXA/ImNoZWNrIjoidW5jaGVjayI7YnJlYWsgYTtjYXNlIGY6QT1wPyJmb2N1cyI6ImJsdXIiO2JyZWFrIGE7Y2FzZSBJOkE9cD8ib3BlbiI6ImNsb3NlIjticmVhayBhfXRocm93IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCBzdGF0ZSIpO31RPTc4fWVsc2UgaWYoUT09MjApUT1GLnByb3h5PzEwOjk5O2Vsc2UgaWYoUT09MTApUT0oKExeODEpJjcpPT0xPzE2OjMzO2Vsc2UgaWYoUT09NjUpUT1yLmFkZEV2ZW50TGlzdGVuZXI/NzY6NDY7ZWxzZSBpZihRPT05MilRPXRoaXMuWC5sZW5ndGg8NTA/MjM6MTQ7ZWxzZXtpZihRPT0xKXRocm93IEVycm9yKCJhZGRFdmVudExpc3RlbmVyIGFuZCBhdHRhY2hFdmVudCBhcmUgdW5hdmFpbGFibGUuIik7UT09MTk/KHIuYWRkTGlzdGVuZXIoRyksUT03NSk6UT09OTkmJihHPVooMTYpLEYucHJveHk9RyxHLnNyYz1yLEcubGlzdGVuZXI9RixRPTY1KX19fX0sUjE9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMpe3tYPTgzO3doaWxlKFghPTM4KWlmKFg9PTg3KVg9KFk8PDEmOCk8MyYmWTw8MT49LTM3PzEwOjE1O2Vsc2UgaWYoWD09MjQpWD0oWXwzKTwzMyYmWSszPj0xNT80Nzo4NztlbHNlIGlmKFg9PTE1KVg9KFk+PjImNyk9PTE/MzA6MTtlbHNlIGlmKFg9PTc0KVg9MTI7ZWxzZSBpZihYPT0xMilYPXA8ci5sZW5ndGg/NTY6ODI7ZWxzZSBpZihYPT0xMClMLnJlbW92ZUF0dHJpYnV0ZSgic3JjZG9jIiksWD03MjtlbHNle2lmKFg9PTEpcmV0dXJuIHU7aWYoWD09ODkpdGhyb3cgbmV3IERxKHR5cGVvZiBJLDEpO2lmKFg9PTU2KUwuc2FuZGJveC5zdXBwb3J0cyYmIUwuc2FuZGJveC5zdXBwb3J0cyhyW3BdKXx8TC5zYW5kYm94LmFkZChyW3BdKSxYPTM0O2Vsc2UgaWYoWD09ODEpcj0iYWxsb3ctc2FtZS1vcmlnaW4gYWxsb3ctc2NyaXB0cyBhbGxvdy1mb3JtcyBhbGxvdy1wb3B1cHMgYWxsb3ctcG9wdXBzLXRvLWVzY2FwZS1zYW5kYm94IGFsbG93LXN0b3JhZ2UtYWNjZXNzLWJ5LXVzZXItYWN0aXZhdGlvbiIuc3BsaXQoIiAiKSxMLnNldEF0dHJpYnV0ZSgic2FuZGJveCIsIiIpLHA9MCxYPTc0O2Vsc2UgaWYoWD09NDcpYm8uY2FsbCh0aGlzLEw/TC50eXBlOiIiKSx0aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PW51bGwsdGhpcy5idXR0b249dGhpcy5zY3JlZW5ZPXRoaXMuc2NyZWVuWD10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPXRoaXMub2Zmc2V0WT10aGlzLm9mZnNldFg9MCx0aGlzLmtleT0iIix0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wLHRoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT1mYWxzZSx0aGlzLnN0YXRlPW51bGwsdGhpcy5wb2ludGVySWQ9MCx0aGlzLnBvaW50ZXJUeXBlPSIiLHRoaXMudGltZVN0YW1wPTAsdGhpcy5Tbz1udWxsLEwmJnRoaXMuaW5pdChMLEkpLFg9ODc7ZWxzZSBpZihYPT04Mil7aWYoSSBpbnN0YW5jZW9mIFo0KWY9SS5IaTtlbHNlIHRocm93IEVycm9yKCIiKTtYPShMLnNyYz1mLnRvU3RyaW5nKCksMTUpfWVsc2UgWD09MzA/KGM9ZnVuY3Rpb24oKXt9LGMucHJvdG90eXBlPWYucHJvdG90eXBlLEkuRj1mLnByb3RvdHlwZSxJLnByb3RvdHlwZT1uZXcgYyxJLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1JLEkueWk9ZnVuY3Rpb24oUyx5LEYpe2Zvcih2YXIgRz02MTtHIT03OTspaWYoRz09NjkpRz1RPGFyZ3VtZW50cy5sZW5ndGg/NDA6MTM7ZWxzZSBpZihHPT05OSlRKyssRz02OTtlbHNlIGlmKEc9PTQwKUFbUS1MXT1hcmd1bWVudHNbUV0sRz05OTtlbHNle2lmKEc9PTEzKXJldHVybiBmLnByb3RvdHlwZVt5XS5hcHBseShTLEEpO2lmKEc9PTYxKXZhciBBPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtKEc9NDksTCkpLFE9TDtlbHNlIEc9PTQ5JiYoRz02OSl9fSxYPTEpOlg9PTcyP1g9SSBpbnN0YW5jZW9mIFo0PzgxOjg5Olg9PTM0PyhwKyssWD0xMik6WD09ODMmJihYPTI0KX19fSxXaz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHkpe2ZvcihjPTM5O2MhPTg0OylpZihjPT05MilZLkhxJiZZLkhxLmZvckVhY2goZix2b2lkIDApLGM9MjtlbHNle2lmKGM9PTg5KXJldHVybiBTO2lmKGM9PTE3KXk9ZnVuY3Rpb24oKXt9LHI9dm9pZCAwLHA9UVMoWSxmdW5jdGlvbihGLEcpe2ZvcihHPTU2O0chPTkwOylHPT0xNj8oZiYmQ0UoZikscj1GLHkoKSx5PXZvaWQgMCxHPTkwKTpHPT01NiYmKEc9eT8xNjo5MCl9LCEhZiksdT1wWzFdLFg9cFswXSxTPXtob3Q6ZnVuY3Rpb24oRixHLEEsUSxELFcsYil7Zm9yKFc9MTM7VyE9MTU7KWlmKFc9PTIyKWIoKSxXPTE1O2Vsc2UgaWYoVz09OTIpVz1HPzEwOjcwO2Vsc2UgaWYoVz09MTApVz1yPzIyOjE2O2Vsc2V7aWYoVz09NzApcmV0dXJuIEQ9WChBKSxGJiZGKEQpLEQ7Vz09MTM/KGI9ZnVuY3Rpb24oKXtyKGZ1bmN0aW9uKGEpe0NFKGZ1bmN0aW9uKCl7RihhKX0pfSxBKX0sVz05Mik6Vz09MTYmJihRPXkseT1mdW5jdGlvbigpeyhRKCksQ0UpKGIpfSxXPTE1KX19LHBlOmZ1bmN0aW9uKEYpe3UmJnUoRil9fSxjPTg5O2Vsc2UgaWYoYz09SSl7YTp7aWYodGhpcy5uPT09MCl7Uz1bMCwwXTticmVhayBhfVM9Wyh0aGlzLlguc29ydChmdW5jdGlvbihGLEcpe3JldHVybiBGLUd9KSx0aGlzKS5uLHRoaXMuWFt0aGlzLlgubGVuZ3RoPj4xXV19Yz03Mn1lbHNlIGM9PTcyP2M9TC05Pj4zPzI6OTI6Yz09Mj9jPShMPDwxJjcpPj02JiZMLTQ+PjU8NT8xNzo4OTpjPT0zOT9jPTk0OmM9PTk0JiYoYz0oTCs2XjEzKTxMJiYoTCsyJjI1KT49TD9JOjcyKX19LGhLPWZ1bmN0aW9uKCl7cmV0dXJuIHdDLmNhbGwodGhpcyw3Mil9LEFLPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSl7Zm9yKFM9Nzk7UyE9ODQ7KWlmKFM9PTc5KVM9ODg7ZWxzZSBpZihTPT1JKVM9cDxyLmxlbmd0aD83NTo0MTtlbHNlIGlmKFM9PTY4KXRoaXMuSGk9WSxTPTgzO2Vsc2V7aWYoUz09NTkpcmV0dXJuIHk7Uz09Njk/Uz1JOlM9PTE0P1M9KEw+PjEmMTEpPT0xPzYyOjU5OlM9PTQ0P1M9dT5mPzg1OjM5OlM9PTgxPyhYPVksYz1bXSxwPVksUz02OSk6Uz09ODM/Uz0oTCYzNyk9PUw/ODE6MTQ6Uz09ODg/Uz0oTHw5KT4+ND49MyYmKEw8PDEmMTYpPEk/Njg6ODM6Uz09ODU/KGNbWCsrXT1mLX4odSZmKSstMjU2LHU+Pj04LFM9MzkpOlM9PTY1PyhwKyssUz1JKTpTPT03NT8odT1yLmNoYXJDb2RlQXQocCksUz00NCk6Uz09Mzk/KGNbWCsrXT11LFM9NjUpOlM9PTQxPyh5PWMsUz0xNCk6Uz09NjImJihTPTU5KX19LGVTPWZ1bmN0aW9uKEksTCxZLGYpe2Y9TihMLChZPVQoTCwzMCksNikpLEpLKGYsTCxkKEksQyhMLFkpKSl9LHZrPWZ1bmN0aW9uKEksTCxZLGYscil7cmV0dXJuIFIxLmNhbGwodGhpcyxMLEksMyxZLGYscil9LEU4PWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCl7Zm9yKFg9TFt1PUxbM118cixwPXIsMl18cjtwPDE2O3ArKylmPWY+Pj5JfGY8PDI0LGYrPVl8cix1PXU+Pj5JfHU8PDI0LFk9WTw8M3xZPj4+MjksZl49WCs2NTksdSs9WHxyLFg9WDw8M3xYPj4+MjksdV49cCs2NTksWF49dSxZXj1mO3JldHVybltZPj4+MjQmMjU1LFk+Pj4xNiYyNTUsWT4+PkkmMjU1LFk+Pj5yJjI1NSxmPj4+MjQmMjU1LGY+Pj4xNiYyNTUsZj4+PkkmMjU1LGY+Pj5yJjI1NV19LERxPWZ1bmN0aW9uKEksTCxZKXt0aGlzLnR5cGU9KCJzdGFjayJpbihZPUVycm9yLmNhbGwodGhpcyxJKyIgY2Fubm90IGJlIHVzZWQgd2l0aCBpbnRlbnQgIitOQltMXSksdGhpcy5tZXNzYWdlPVkubWVzc2FnZSxZKSYmKHRoaXMuc3RhY2s9WS5zdGFjayksSSk7d2hpbGUoW10paWYodGhpcy5uYW1lPSJUeXBlQ2Fubm90QmVVc2VkV2l0aElmcmFtZUludGVudEVycm9yIix0cnVlKWJyZWFrfSx5Uz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgpe2ZvcihYPUw7WCE9ODA7KWlmKFg9PTIpdW8uY2FsbCh0aGlzLGYscnx8WHQuZW8oKSxwKSxYPTc5O2Vsc2UgaWYoWD09MjkpRnQuY2FsbCh0aGlzKSxmfHxja3x8KGNrPW5ldyBTUyksdGhpcy5Kcj12b2lkIDAsdGhpcy5MPXRoaXMuSHE9dGhpcy5UMT1udWxsLHRoaXMud289dGhpcy5Mej1mYWxzZSx0aGlzLnVSPXRoaXMuTWg9bnVsbCxYPTE5O2Vsc2UgaWYoWD09MTkpWD0oWSYxMjMpPT1ZPzI6Nzk7ZWxzZXtpZihYPT03OSlyZXR1cm4gdTtYPT1MP1g9ODg6WD09ODgmJihYPShZKzYmSSk8WSYmKFkrNV42KT49WT8yOToxOSl9fSxLTz1mdW5jdGlvbihJLEwpe3JldHVybiBtei5jYWxsKHRoaXMsMCxJLEwsNil9LFRjPWZ1bmN0aW9uKEksTCxZLGYscixwLHUpe211KCgoWT1DKChwPU4oKHU9Tigocj00LShMJi00KS0ofkxeMykrMiooTHwtNCksZj0oTHw0KS1+KEwmNCkrfihMfDQpLEkpLDE3KSxJKSwyMiksSSksdSksZikmJihZPVpxKCIiK1ksMTAyMykpLHImJkpLKHAsSSxkKDIsWS5sZW5ndGgpKSxwKSxJLFkpfSxnPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjKXtjPXRoaXM7dHJ5e01CKHUscixZLFgsdGhpcyxmLEksTCxwKX1jYXRjaChTKXtLKDE2LHRoaXMsUywwKSxYKGZ1bmN0aW9uKHkpe3koYy5XKX0pfX0sd0M9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYsRyl7e0c9OTM7d2hpbGUoRyE9NjgpaWYoRz09ODMpRz0oSXw3Mik9PUk/MzA6NjM7ZWxzZXtpZihHPT03NilyZXR1cm4gRjtHPT00Nj8oRj0oeT1hMVtMLnN1YnN0cmluZygwLDMpKyJfIl0pP3koTC5zdWJzdHJpbmcoMyksWSxmLHIscCx1LFgsYyxTKTp3QygxNixZLEwpLEc9MzIpOkc9PTMyP0c9ST4+MiYxMT83Njo3ODpHPT02Mz9HPShJPDwxJjE2KTw5JiYoSTw8MSYxNSk+PTU/NDY6MzI6Rz09Nzg/KEwoZnVuY3Rpb24oQSl7QShZKX0pLEY9W2Z1bmN0aW9uKCl7cmV0dXJuIFl9LGZ1bmN0aW9uKCl7fV0sRz03Nik6Rz09NTE/KHI9WSxyXj1yPDwxMyxyXj1yPj4xNyxyPShwPXI8PDUsKHJ8MCkrfihyfHApLSh+cl5wKSsofnImcCkpLChyPS1+Zi0ociZ+ZiktKH5yXmYpKzIqKHJ8fmYpKXx8KHI9MSksRj0tKEx8MCkrKEx8cikrKEwmfnIpLEc9ODMpOkc9PTI3P0c9KEk8PDEmMTUpPj0xMiYmKEkrMyY4KTw2PzUxOjgzOkc9PTMwP0c9NjM6Rz09OTMmJihHPTI3KX19fSx0Sz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyl7aWYoIUwuVyl7TC5ocisrO3RyeXtyPShjPXZvaWQgMCwwKTt7cD1MLlA7d2hpbGUoLS1ZKXRyeXtpZihYPXZvaWQgMCxMLk8pYz1UbChMLk8sTCk7ZWxzZXtpZihyPUMoTCxmKSxyPj1wKWJyZWFrO2M9KFg9KEooTCxJLHIpLE4oTCwxMCkpLEMoTCxYKSl9Vig1OCwoYyYmKHU9Y1txQl0sMjA0OC1+dSstMjA0OS0odSYtMjA0OSkpP2MoTCxZKTpuTyhbbzEsMjEsWF0sMCwzNTcsTCksZiksZmFsc2UsTCxmYWxzZSxZKX1jYXRjaChTKXtsKEwsMzgpP25PKFMsMjIsMzU3LEwpOkooTCwzOCxTKX19aWYoIVkpe2ZvcigwPT0oTnVtYmVyKCkhPSFbXSk7TC5aejswKXt0SygyNzIsTCwoTC5oci0tLDE0MDQyMzU1MzYyOTEpLDUwOSk7cmV0dXJuO2lmKCFbXT09TnVtYmVyKCkpYnJlYWt9bk8oW28xLDMzXSwwLDM1NyxMKX19Y2F0Y2goUyl7dHJ5e25PKFMsMjIsMzU3LEwpfWNhdGNoKHkpe0soMjAsTCx5LDApfX1MLmhyLS19fSxYdD1mdW5jdGlvbigpe3JldHVybiBmTy5jYWxsKHRoaXMsImFkIiwzKX0sbk89ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYsRyl7c3dpdGNoKCEoIWYuYmQmJihTPXZvaWQgMCxJJiZJWzBdPT09bzEmJihTPUlbMl0sTD1JWzFdLEk9dm9pZCAwKSxjPWwoZixZKSxjLmxlbmd0aD09MCYmKFg9bChmLDI3Mik+PjMsYy5wdXNoKEwsWD4+OCYyNTUsMiooWHwyNTUpLSAtMSt+KFh8MjU1KS0oWF4yNTUpKSxTIT12b2lkIDAmJmMucHVzaCgtMS1+KFN8MjU1KS0oU14yNTUpKSkseT0iIixJJiYoSS5tZXNzYWdlJiYoeSs9SS5tZXNzYWdlKSxJLnN0YWNrJiYoeSs9IjoiK0kuc3RhY2spKSx1PWsoZiw0NjQpLHVbMF0+MykpKXtjYXNlIHRydWU6IVtdPT0oZmFsc2U9PTApO2JyZWFrO2Nhc2UgZmFsc2U6KHA9KHVbMF0tPSh5PXkuc2xpY2UoMCwodVswXXwwKS0zKSxGPXkubGVuZ3RoLDIqKEYmMyktMS0ofkZeMykpLHk9WnEoeSwxMDIzKSxmLlUpLGYpLlU9Zjt0cnl7Zi5rYT8ocj0ocj1DKGYsMzUwKSkmJnJbci5sZW5ndGgtMV18fDk1LChHPWwoZiw0MjEpKSYmR1tHLmxlbmd0aC0xXT09cnx8SksoNDIxLGYsW3ImMjU1XSkpOm11KDM1MCxmLFs5NV0pLG11KDE5NSxmLGQoMix5Lmxlbmd0aCkuY29uY2F0KHkpLDE0NCl9ZmluYWxseXtmLlU9cH1icmVha319LExFPWZ1bmN0aW9uKEkpe3JldHVybiB5Uy5jYWxsKHRoaXMsNDAsNywxMixJKX0sU1M9ZnVuY3Rpb24oKXtyZXR1cm4gUFMuY2FsbCh0aGlzLDU2LDEyKX0sT3c9ZnVuY3Rpb24oSSxMKXtyZXR1cm4gUjEuY2FsbCh0aGlzLEwsSSwxMil9LGtWPWZ1bmN0aW9uKEksTCl7ZnVuY3Rpb24gWSgpe3RoaXMuUj10aGlzLnc1PXRoaXMubj0wfXdoaWxlKDEyKWlmKFkucHJvdG90eXBlLnB6PWZ1bmN0aW9uKGYscil7cmV0dXJuIFMwLmNhbGwodGhpcyxyLGYsNil9LHRydWUpYnJlYWs7WS5wcm90b3R5cGUuRks9ZnVuY3Rpb24oKXtyZXR1cm4gYWEuY2FsbCh0aGlzLDc2KX07d2hpbGUoW10paWYoST1uZXcgWSx0cnVlKWJyZWFrO3JldHVybltmdW5jdGlvbihmKXtJLnB6KGYpLEwucHooZil9LChMPW5ldyBZLGZ1bmN0aW9uKGYscil7cmV0dXJuKChyPVtJLkZLKCksTC5GSygpLEkuUixMLlJdLGY9PT12b2lkIDApfHxmKSYmKEw9bmV3IFkpLHJ9KV19LHM4PWZ1bmN0aW9uKEksTCxZLGYscil7cmV0dXJuIHljLmNhbGwodGhpcyw5OSw0OCxZLHIsZixJLEwpfSxKSz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyl7c3dpdGNoKCEoTC5VPT1MKSl7Y2FzZSAtMD09PU51bWJlcigpOk5hTjticmVhaztjYXNlIFtdPT0obnVsbCE9ZmFsc2UpOmZvcih1PUMoTCxJKSxJPT0xOTV8fEk9PTQ4OHx8ST09MTI/KGM9ZnVuY3Rpb24oUyx5LEYsRyxBLFEsRCxXLGIsYSl7Zm9yKFc9KGI9NjYsMTQpOzspdHJ5e2lmKGI9PTQwKWJyZWFrO2Vsc2UgaWYoYj09NDEpYj11LkVBIT15PzMyOjM1O2Vsc2UgaWYoYj09MjgpVz0zMyx1LnI1PUU4KDgsRyxUKDAsMyxBLHUpLFQoMCwzNSwtKEEmNCktMS0zKn4oQXw0KSsyKih+QV40KSx1KSwwKSxiPTM1O2Vsc2UgaWYoYj09MzUpdS5wdXNoKChGPXUucjVbLX4oRCY3KS0gLTErMiooRF43KSsyKih+RF43KV0sLTErKH5GJlMpLSh+RnxTKSkpLGI9NDA7ZWxzZXtpZihiPT0wKXRocm93IFc9MTQsYTtiPT0zMj8odS5FQT15LEE9KFE9eTw8MywtfihRJjQpK34oUXw0KSsyKihRJi01KSksRz1bMCwwLHBbMV0scFsyXV0sYj0yOCk6Yj09NjYmJihEPXUubGVuZ3RoLHk9KER8MCktND4+MyxiPTQxKX19Y2F0Y2godyl7aWYoVz09MTQpdGhyb3cgdztXPT0zMyYmKGE9dyxiPTApfX0scD1DKEwsMzgwKSk6Yz1mdW5jdGlvbihTKXt1LnB1c2goUyl9LGYmJmMoZiYyNTUpLFg9MCxyPVkubGVuZ3RoO1g8cjtYKyspYyhZW1hdKTticmVha319LHoseD1mdW5jdGlvbihJLEwsWSl7c3dpdGNoKCEoST09NTA5fHxJPT0yNzIpKXtjYXNlIFtdIT10cnVlOmlmKEwuYmQmJkkhPTQ4KXJldHVybjtJPT0yNjJ8fEk9PTE5NXx8ST09MjM2fHxJPT0xMnx8ST09MzU3fHxJPT0zNTB8fEk9PTQyMXx8ST09MzgwfHxJPT00ODh8fEk9PTQ2ND9MLlNbSV18fChMLlNbSV09VCgyNjAsMTIsTCxJLFksNTQpKTpMLlNbSV09VCgyNjAsOCxMLEksWSw4OSk7YnJlYWs7Y2FzZSBbXT09dHJ1ZTpMLlNbSV0/TC5TW0ldLmNvbmNhdChZKTpMLlNbSV09cSgyMCxMLFkpO2JyZWFrfUk9PTQ4JiYoTC5DPWtLKGZhbHNlLEwsMzIpLEwuQT12b2lkIDApfSxDTz1mdW5jdGlvbigpe2Zvcih2YXIgST04MztJIT0zMzspe2lmKEk9PTIxKXJldHVybiBZO2lmKEk9PTgzKXZhciBMPShJPTksTnVtYmVyKHRoaXMpKSxZPVtdLGY9TDtlbHNlIEk9PTk0PyhmKyssST02OCk6ST09NDc/KFlbZi1MXT1hcmd1bWVudHNbZl0sST05NCk6ST09OT9JPTY4Okk9PTY4JiYoST1mPGFyZ3VtZW50cy5sZW5ndGg/NDc6MjEpfX0sa0s9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYsRyxBLFEsRCxXKXtpZihEPWsoTCw1MDkpLEQ+PUwuUCl0aHJvd1tvMSwzMV07Zm9yKEE9KFM9MCxRPVkscD1ELEwucWUubGVuZ3RoKTtRPjA7KWY9cD4+MyxXPUwudHJbZl0sYz1wJTgsRz04LShjfDApLFg9RzxRP0c6USxJJiYoRj1wLHk9TCx5LkEhPUY+PjYmJih5LkE9Rj4+Nix1PWwoeSw0OCkseS5VZj1FOCg4LFswLDAsdVsxXSx1WzJdXSx5LkMseS5BLDApKSxXXj1MLlVmW2YmQV0pLFN8PShXPj44LShjfDApLShYfDApJigxPDxYKS0xKTw8KFF8MCktKFh8MCkscCs9WCxRLT1YO3JldHVybiBNKDUwOSxMLChyPVMsKER8MCkrKFl8MCkpKSxyfSxIaz1mdW5jdGlvbihJLEwsWSxmLHIscCl7cmV0dXJuIGwoZiwoeChJLCh0SygyNzIsZixyLCgocD1rKGYsSSksZi50ciYmcDxmLlApPyhNKEksZixmLlApLEJrKDM1NywwLGYsSSxZLDEwNCkpOk0oSSxmLFkpLEkpKSxmKSxwKSxMKSl9LFU4PWZ1bmN0aW9uKEksTCl7Zm9yKHZhciBZPTEzO1khPTU5OylpZihZPT0xMyl2YXIgZj0oWT0zOCwxKTtlbHNlIGlmKFk9PTU0KXt2YXIgcj1hcmd1bWVudHNbZl07Zm9yKHUgaW4gcilJW3VdPXJbdV07dmFyIHA9KFk9MjcsMCl9ZWxzZSBpZihZPT0zOClZPTEyO2Vsc2UgaWYoWT09MjcpWT01MTtlbHNlIGlmKFk9PTEyKVk9Zjxhcmd1bWVudHMubGVuZ3RoPzU0OjU5O2Vsc2UgaWYoWT09MjUpe3ZhciB1PVZTW3BdO09iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyLHUpJiYoSVt1XT1yW3VdKSxZPTM5fWVsc2UgWT09NTE/WT1wPFZTLmxlbmd0aD8yNTo2NDpZPT0zOT8ocCsrLFk9NTEpOlk9PTY0JiYoZisrLFk9MTIpfSwkSz1mdW5jdGlvbihJKXtyZXR1cm4gSS5PP1RsKEkuWixJKTprSyh0cnVlLEksOCl9LGQ9ZnVuY3Rpb24oSSxMLFksZixyKXtmPVtdO3tyPShJfDApLTE7d2hpbGUocj49MClmWy0oSXwxKSsoSSYxKSsyKihJJi0yKS0ocnwwKV09KFk9TD4+cio4LDI1NisyKihZJi0yNTYpLShZXjI1NSkrKH5ZfDI1NSkpLHItLX1yZXR1cm4gZn0sTT1mdW5jdGlvbihJLEwsWSl7aWYoST09NTA5fHxJPT0yNzIpTC5TW0ldP0wuU1tJXS5jb25jYXQoWSk6TC5TW0ldPXEoMTgsTCxZKTtlbHNle2lmKEwuYmQmJkkhPTQ4KXJldHVybjtJPT0yNjJ8fEk9PTE5NXx8ST09MjM2fHxJPT0xMnx8ST09MzU3fHxJPT0zNTB8fEk9PTQyMXx8ST09MzgwfHxJPT00ODh8fEk9PTQ2ND9MLlNbSV18fChMLlNbSV09VCgyNjAsOSxMLEksWSw1NCkpOkwuU1tJXT1UKDI2MCwxMyxMLEksWSw4OSl9ST09NDgmJihMLkM9a0soZmFsc2UsTCwzMiksTC5BPXZvaWQgMCl9LFhqPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oSSl7ZnVuY3Rpb24gTCgpe31MLnByb3RvdHlwZT1JO3doaWxlKFtdKXtyZXR1cm4gbmV3IEw7aWYoIWZhbHNlPT0hIiIpYnJlYWt9fSxGaj1mdW5jdGlvbihJLEwsWSxmLHIpe2lmKEkubGVuZ3RoPT0zKXt7WT0wO3doaWxlKFk8MylMW1ldKz1JW1ldLFkrK31mb3IoZj1bMTMsOCwxMywxMiwxNiw1LDMsMTAsMTVdLHI9MDtyPDk7cisrKUxbM10oTCxyJTMsZltyXSl9fSxKPWZ1bmN0aW9uKEksTCxZKXtzd2l0Y2goIShMPT01MDl8fEw9PTI3Mikpe2Nhc2UgTnVtYmVyKHVuZGVmaW5lZCkhPT1OdW1iZXIodW5kZWZpbmVkKTppZihJLmJkJiZMIT00OClyZXR1cm47TD09MjYyfHxMPT0xOTV8fEw9PTIzNnx8TD09MTJ8fEw9PTM1N3x8TD09MzUwfHxMPT00MjF8fEw9PTM4MHx8TD09NDg4fHxMPT00NjQ/SS5TW0xdfHwoSS5TW0xdPVQoMjYwLDUsSSxMLFksNTQpKTpJLlNbTF09VCgyNjAsNSxJLEwsWSw4OSk7YnJlYWs7Y2FzZSAwIT0hWyIiXTpJLlNbTF0/SS5TW0xdLmNvbmNhdChZKTpJLlNbTF09cSgxNyxJLFkpO2JyZWFrfUw9PTQ4JiYoSS5DPWtLKGZhbHNlLEksMzIpLEkuQT12b2lkIDApfSxsbz1mdW5jdGlvbihJLEwsWSl7cmV0dXJuIHlTLmNhbGwodGhpcyw0MCw3LDMsSSxMLFkpfSxNQj1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7Zm9yKFM9KHk9KHIuR3g9KHIueEk9d1AoMCw1NyxyLkIsKHIucWU9KHIuU2I9eFYsci5VaT16YyxyW1BrXSkse2dldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbmNhdCgpfX0pKSxwRVtyLkJdKHIueEkse3ZhbHVlOnt2YWx1ZTp7fX19KSksW10pLDApO1M8MzIzO1MrKyl5W1NdPVN0cmluZy5mcm9tQ2hhckNvZGUoUyk7aWYoKChyLmw9MCwoci5zQT0wLHIpLlZlPShyLlc9KChyLkk9KHIuSWw9TCxmYWxzZSkscikuSz0oci50cj0oKHIuT0E9MCxyKS5XaT0zMDAwMSxyLmJkPWZhbHNlLHIuZDU9MCxbXSksKHIuTmU9W10sci5DPXZvaWQgMCxyLlVmPXZvaWQgMCxyKS5VPXIsci5obD0wLHIuQT12b2lkIDAsci5CcT1bXSxyLkRjPTAsci5ZYT0oci5QPShyLm85PXZvaWQgMCwwKSxyLm03PWMsMjUpLG51bGwpLHZvaWQgMCksRj0oci5TPVtdLHdpbmRvdy5wZXJmb3JtYW5jZSl8fHt9LHIuVD1bXSwoci5hbD1bXSxyLmNxPShyLkt6PShyLmhyPTAsci5RVz1mdW5jdGlvbihHKXtyZXR1cm4gclAuY2FsbCh0aGlzLDg3LDMsRyl9LFtdKSxbXSksci5BbD1mYWxzZSxyKS5vPWZhbHNlLHIua2E9KHIuSjU9KHIueGE9MCxyLk89dm9pZCAwLDApLHIuWmM9dm9pZCAwLCEoci5pPShyLlo9dm9pZCAwLDEpLDEpKSxbXSksci5OPWZhbHNlLHIpLlBpPShyLmd5PUksRi50aW1lT3JpZ2lufHwoRi50aW1pbmd8fHt9KS5uYXZpZ2F0aW9uU3RhcnR8fDApLHApJiZwLmxlbmd0aD09MiYmKHIuYWw9cFsxXSxyLk5lPXBbMF0pLFkpdHJ5e3Iubzk9SlNPTi5wYXJzZShZKX1jYXRjaChHKXtyLm85PXt9fVYoNzYsKHgoMzgsKEoociwxMiwoVig3NixmdW5jdGlvbihHKXtUYyhHLDQpfSwoKE0oMzUwLHIsKFYoMjgsZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSx3LHYsRSl7Zm9yKEU9OTU7RSE9NzA7KUU9PTk/KFc9ZkgoMjMsNSwwLDEsRy5VKSxhPVcueVcsYj1XLk9mLFE9Vy5KbCx2PVcuVix3PXYubGVuZ3RoLEQ9dz09MD9uZXcgYltRXTp3PT0xP25ldyBiW1FdKHZbMF0pOnc9PTI/bmV3IGJbUV0odlswXSx2WzFdKTp3PT0zP25ldyBiW1FdKHZbMF0sdlsxXSx2WzJdKTp3PT00P25ldyBiW1FdKHZbMF0sdlsxXSx2WzJdLHZbM10pOjIoKSxKKEcsYSxEKSxFPTcwKTpFPT05NSYmKEU9Vig0Miw1MDksZmFsc2UsRyx0cnVlLEEpPzcwOjkpfSxyLChKKHIsMjM2LChKKHIsKFYoKChuZXcgKFYoMTIsZnVuY3Rpb24oRyl7ZVMoMSxHKX0sKFYoNjAsZnVuY3Rpb24oRyxBLFEsRCxXLGIpe3doaWxlKHt9KWlmKChRPU4oRywzNCksMCk9PSFbdW5kZWZpbmVkXSlicmVhazsoRD1sKEcsKEE9QyhHLChXPShiPVQoRywzMSksVChHLDMwKSksUSkpLGIpKSxNKShXLEcsQSBpbiBEfDApfSwoVig2MCwoTSgoKFYoMjgsZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSx3LHYpe2Zvcih2PTYyO3YhPTk5Oyl2PT05PyhBKyssdj0zOSk6dj09Njg/dj0zOTp2PT04MT8oTShiLEcsYSBpbiBEfDApLHY9OTkpOnY9PTUxPyhhKz1TdHJpbmcuZnJvbUNoYXJDb2RlKFFbQV1eMTIxKSx2PTkpOnY9PTM5P3Y9QTxRLmxlbmd0aD81MTo4MTp2PT02MiYmKFc9TihHLDEzKSx3PVQoRywzMSksYj1UKEcsMjcpLFE9ayhHLFcpLEQ9ayhHLHcpLGE9IiIsQT0wLHY9NjgpfSxyLChWKDI4LChWKDc2LGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyl7Zm9yKHc9Mjc7dyE9MTA7KXc9PTgyP3c9MTI6dz09Mjc/KEE9TihHLDYpLGI9cSg1LDEyNyxHKSxEPVtdLGE9ayhHLDc0KSxRPTAsVz1hLmxlbmd0aCx3PTgyKTp3PT0yOD8oUT0oKFF8MCkrKHEoMywxMjcsRyl8MCkpJVcsRC5wdXNoKGFbUV0pLHc9OTQpOnc9PTk0P3c9MTI6dz09MTI/dz1iLS0/Mjg6NDY6dz09NDYmJih4KEEsRyxEKSx3PTEwKX0sciwyNTIpLGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyx2LEUpe3tFPTkyO3doaWxlKEUhPTkxKUU9PTkyPyh3PU4oRywyOSksUT1OKEcsMzgpLEQ9VChHLDIzKSxhPWwoRyx3KSxiPUMoRyxRKSxBPTAsVz0iIixFPTQyKTpFPT05Mz9FPUE8Yi5sZW5ndGg/OTA6NzY6RT09NDI/RT05MzpFPT0yND8oQSsrLEU9OTMpOkU9PTc2PyhKKEcsRCxhW1ddKSxFPTkxKTpFPT05MCYmKFcrPVN0cmluZy5mcm9tQ2hhckNvZGUoKHY9YltBXSwtMS0ofnZeMTIxKSkpLEU9MjQpfX0pLHIsMzAyKSwyMzcpKSx4KSg1MDksciwwKSwyNzIpLHIsMCksZnVuY3Rpb24oRyxBLFEsRCl7eCgoRD0oQT0oUT1UKEcsMjYpLCRLKEcpKSxUKEcsMjYpKSxEKSxHLGsoRyxRKT4+PkEpfSksciw0NTEpLHIpLDU5KSxyKSw1MCksbG8pKCJTdWJtaXQiKSkuZGlzcG9zZSgpLDYwKSxmdW5jdGlvbihHLEEsUSxELFcsYixhLHcpe2Zvcih3PTMxO3chPTE4Oyl3PT0zMD93PUcuVT09Rz84NToxODp3PT01Mz8oRy5BPXZvaWQgMCx3PTI0KTp3PT0yMj93PWE9PTQ4PzUzOjE4Onc9PTk5PyhHLkM9a0soZmFsc2UsRywzMiksRy5BPXZvaWQgMCx3PTE4KTp3PT0zMT8oYT1OKEcsMzQpLGI9TihHLDM2KSxXPVQoRywyMyksdz0zMCk6dz09MjQ/dz1BPT0yPzk5OjE4Onc9PTg1JiYoUT1sKEcsYSksRD1DKEcsVyksQT1sKEcsYiksUVtBXT1ELHc9MjIpfSxyLDE0NCksNDg4KSxZOCg0KSksW10pKSw0NjYpKSxbXSkpLHIpLnQ1PTAsciksNjkpLFk4KDQpKSksciksNTQ3KSxmdW5jdGlvbigpe30pLHIsMjgwKTt3aGlsZShbXSlpZihWKDYwLGZ1bmN0aW9uKEcsQSxRLEQsVyl7eCgoQT1qMCgiYXJyYXkiLChEPWwoKFc9TigoUT1UKEcsMjMpLEcpLDEwKSxHKSxRKSxEKSwibnVtYmVyIiksVyksRyxBKX0sciwzNDApLFtdKWJyZWFrO2lmKFYoNzYsZnVuY3Rpb24oRyxBLFEsRCxXLGIpeyhiPWwoRywoVz1sKEcsKEQ9TigoUT1UKEcsMjYpLEE9TihHLDMwKSxHKSwxOCksQSkpLFEpKT09Vyx4KShELEcsK2IpfSxyLChKKHIsMTYxLChKKHIsKEoociwoVig0NCxmdW5jdGlvbihHKXtxKDksOCxHLDQpfSxyLChWKDEyLCh4KDI2MixyLFs1NywwLCh4KDM1MywoVigyOCwoVig2MCxmdW5jdGlvbihHLEEsUSxELFcpe3tXPTM4O3doaWxlKFchPTYpVz09OTQ/KEQtLSxXPTYzKTpXPT0zND9XPTYzOlc9PTQxP1c9QT82NTo0MjpXPT00Mj8oeCg1MDksRyxHLlApLFc9Nik6Vz09Mzk/KFE9VChHLDMxKSxBW1FdPUcuU1tRXSxXPTk0KTpXPT02Mz9XPUQ+MD8zOTo4Olc9PTg/KEFbMzU3XT1HLlNbMzU3XSxBWzQ2NF09Ry5TWzQ2NF0sRy5TPUEsVz02KTpXPT0zOD8oQT1HLkt6LnBvcCgpLFc9NDEpOlc9PTY1JiYoRD0kSyhHKSxXPTM0KX19LChNKDE5NSwoVigxMiwoVig3NixmdW5jdGlvbihHLEEsUSxELFcsYixhLHcsdixFLG0sWUssR2wsY1MsbixzdyxsQixoLFdTKXt7aD0wO3doaWxlKGghPTY1KWg9PTYzP2g9bTxZSz84OTozOmg9PTc2PyhjUz1XUygxKSxELnB1c2goY1MpLFcrPWNTPzA6MSxoPTI3KTpoPT03Mz9oPTMwOmg9PTQ/KHN3PSgoV3wwKS0xKS50b1N0cmluZygyKS5sZW5ndGgsRT0wLHY9W10saD03KTpoPT0yNz8oYisrLGg9MzIpOmg9PTIzPyhWKDEyLGZ1bmN0aW9uKEgsZkUsUCxENCxlMCx0KXtmb3IodD0xMjt0IT0yODspdD09NDc/dD1mRT49RDQubGVuZ3RoPzYyOjg4OnQ9PTYyPyhENC5wdXNoKFQoSCwzMSkpLHQ9NCk6dD09NjQ/KFArKyx0PTE1KTp0PT04NT90PURbUF0/NTQ6OTA6dD09MTU/dD1QPFlLPzU5OjY3OnQ9PTg4PyhmRT1ENFtmRV0sdD01NCk6dD09NTk/KGZFPXZbUF0sdD04NSk6dD09MTI/KEQ0PVtdLGUwPVtdLFA9MCx0PTcwKTp0PT00P3Q9NDc6dD09NTQ/KGUwLnB1c2goZkUpLHQ9NjQpOnQ9PTY3PyhILk89cSgxOSxILG4uc2xpY2UoKSksSC5aPXEoMTYsSCxlMCksdD0yOCk6dD09NzA/dD0xNTp0PT05MCYmKHQ9NDcpfSxHLGxCKSxoPTY1KTpoPT0zMD9oPUdsLS0/OTE6MjM6aD09OTE/KG4ucHVzaChDKEcsTihHLDUpKSksaD03Myk6aD09Nz9oPTg6aD09ODk/KERbbV0mJih2W21dPU4oRywxOCkpLGg9NzkpOmg9PTA/KFdTPWZ1bmN0aW9uKEgsZkUpe2Zvcig7YTxIOylRfD0kSyhHKTw8YSxhKz04O3JldHVybiBhLT1ILFE+Pj0oZkU9USYoMTw8SCktMSxIKSxmRX0sbEI9VChHLDMxKSxhPVE9MCx3PShBPVdTKDMpLH5BLTMqfihBfDEpKyhBJi0yKSsyKih+QV4xKSksWUs9V1MoNSksVz1iPTAsRD1bXSxoPTkyKTpoPT03OT8obSsrLGg9NjMpOmg9PTkyP2g9MzI6aD09MzI/aD1iPFlLPzc2OjQ6aD09MzE/KG09MCxoPTc3KTpoPT00MT8oRSsrLGg9OCk6aD09Nzc/aD02MzpoPT04Nz9oPTMwOmg9PTg/aD1FPFlLPzE0OjMxOmg9PTM/KG49W10sR2w9dyxoPTg3KTpoPT0xNCYmKERbRV18fCh2W0VdPVdTKHN3KSksaD00MSl9fSxyLChWKDI4LGZ1bmN0aW9uKEcsQSxRLEQsVyl7Zm9yKFc9Nzg7VyE9MTI7KVc9PTc4P1c9Vig3NCw1MDksZmFsc2UsRyx0cnVlLEEpPzEyOjI3Olc9PTI3JiYoRD1OKEcsMTMpLFE9TihHLDEzKSxKKEcsUSxmdW5jdGlvbihiKXtyZXR1cm4gZXZhbChiKX0oTzgobChHLlUsRCkpKSksVz0xMil9LHIsKFYoMjgsZnVuY3Rpb24oRyxBLFEsRCxXLGIpe2ZvcihiPTY5O2IhPTczOyliPT00ND8oQSsrLGI9ODApOmI9PTc0P2I9ODA6Yj09MzY/KEooRyxXLEQpLGI9NzMpOmI9PTgwP2I9QTxRPzg0OjM2OmI9PTg0PyhELnB1c2goJEsoRykpLGI9NDQpOmI9PTY5JiYoVz1OKEcsMjYpLFE9cSg3LDEyNyxHKSxBPTAsRD1bXSxiPTc0KX0sKFYoNDQsZnVuY3Rpb24oRyxBLFEpeyhBPWsoKFE9TihHLDE0KSxHLlUpLFEpLEEpWzBdLnJlbW92ZUV2ZW50TGlzdGVuZXIoQVsxXSxBWzJdLEhTKX0sKFYoNDQsZnVuY3Rpb24oRyl7ZVMoNCxHKX0sKEoociwoTSg0NjQscixbKEoociw0NjEsKFYoNjAsZnVuY3Rpb24oRyxBLFEsRCl7RD1rKEcsKEE9TihHLChRPU4oRywxNyksMjEpKSxBKSksbChHLFEpIT0wJiZNKDUwOSxHLEQpfSxyLChWKDI4LGZ1bmN0aW9uKEcsQSxRLEQsVyxiKXt4KChEPWwoKFc9bCgoYj0oUT0oQT1UKEcsMjYpLFQoRywyNykpLE4oRyw1KSksRyksQSksRyksUSksYiksRyxXW0RdKX0sciwoTSgzNTcsKFYoMTIsZnVuY3Rpb24oRyxBKXtCaygzNTcsKEE9bChHLE4oRyw2KSksMCksRy5VLDUwOSxBLDEwNCl9LChyLkY4PShWKDEyLGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyx2LEUsbSl7Zm9yKG09MjI7bSE9MzA7KW09PTQ3PyhEPVQoMiwzMiwxLDEsdixHLFcsQSxRKSxBLmFkZEV2ZW50TGlzdGVuZXIoUSxELEhTKSxrKEcsMTYxKS5wdXNoKGZ1bmN0aW9uKCl7QS5yZW1vdmVFdmVudExpc3RlbmVyKFEsRCxIUyl9KSx4KDM1NSxHLFtBLFEsRF0pLG09MzApOm09PTI0P209QSE9PTA/NDc6MzA6bT09MjImJihhPVQoRywyNyksRT1OKEcsOSksdz1OKEcsMjIpLGI9TihHLDM2KSxXPUMoRyx3KSxRPUMoRyxFKSxBPWwoRy5VLGEpLHY9bChHLGIpLG09MjQpfSxyLDYzKSwwKSxyKSw0MzUpLHIpLFtdKSw0NDgpKSwxMTEpKSxVKSksMjA0OCldKSwyOTcpLHt9KSxyKSwzNzkpLHIpLDQ2MiksciksMSksMTE4KSksMzA2KSksZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSl7Zm9yKGE9Mjg7YSE9OTE7KWlmKGE9PTM0KWE9RC5maT81MzozOTtlbHNlIGlmKGE9PTM5KVUuY2xlYXJUaW1lb3V0KEQuZTUpLGUoRC5Eeiw4MyxHKSxlKEQuTWUsOTMsRyksYT01MztlbHNlIGlmKGE9PTUzKUErKyxhPTk0O2Vsc2UgaWYoYT09NTIpRD1HLkJxW0FdLGE9MzQ7ZWxzZSBpZihhPT03NilhPTk0O2Vsc2UgaWYoYT09MzApRy5CcS5sZW5ndGg9MCxhPTkxO2Vsc2UgaWYoYT09Mjgpe2ZvcihXIGluIGI9ayhHLChRPSRLKEcpLDM4MSkpLGRlbGV0ZSBiW1FdLGIpaWYoVyE9PSJ0IiYmT2JqZWN0Lmhhc093bihiLFcpKXJldHVybjtBPShhPTc2LDApfWVsc2UgYT09OTQmJihhPUE8Ry5CcS5sZW5ndGg/NTI6MzApfSksciwzMzQpLHIpLFk4KDQpKSxyKSwzMjMpLGZ1bmN0aW9uKEcsQSxRLEQsVyxiLGEsdyx2LEUsbSxZSyxHbCxjUyxuKXtmb3Iobj0yO24hPTk0OylpZihuPT0yNSluPTE5O2Vsc2UgaWYobj09NjgpY1M9YS5sZW5ndGgsdj12PjA/djoxLG09MCxuPTI1O2Vsc2UgaWYobj09Njcpbj1qMCgiYXJyYXkiLGEsIm51bWJlciIpPT0ib2JqZWN0Ij8wOjUzO2Vsc2UgaWYobj09NTMpbj1HLlU9PUc/Njg6OTQ7ZWxzZSBpZihuPT00NSltKz12LG49MTk7ZWxzZSBpZihuPT0wKXtmb3IoRSBpbiBXPVtdLGEpVy5wdXNoKEUpO2E9VyxuPTUzfWVsc2Ugbj09Mj9uPVYoMTAsNTA5LHRydWUsRyx0cnVlLEEpPzk0OjI5Om49PTE5P249bTxjUz83NDo5NDpuPT0yOT8oR2w9VChHLDMwKSx3PVQoRywyNiksRD1OKEcsMTcpLGI9TihHLDI2KSxRPUMoRyx3KSx2PWsoRyxEKSxZSz1sKEcsYiksYT1DKEcsR2wpLG49NjcpOm49PTc0JiYoUShhLnNsaWNlKG0sKG18MCkrKHZ8MCkpLFlLKSxuPTQ1KX0pLHIsNDM3KSxyKSwwKSxyLllJPTAsMCldKSxmdW5jdGlvbihHLEEsUSxELFcsYixhLHcpe2Zvcih3PTIyO3chPTU5Oyl3PT05P3c9US0tPzkyOjU3Onc9PTIyPyhXPU4oRywxNCksUT1xKDYsMTI3LEcpLGE9IiIsRD1rKEcsNzQpLGI9RC5sZW5ndGgsQT0wLHc9NjMpOnc9PTEwP3c9OTp3PT02Mz93PTk6dz09NTc/KEooRyxXLGEpLHc9NTkpOnc9PTkyJiYoQT0oKEF8MCkrKHEoMywxMjcsRyl8MCkpJWIsYSs9eVtEW0FdXSx3PTEwKX0pLHIsNDExKSwzKSksMzgwKSxbMCwwLDBdKSw0OTEpLHIpLFtdKSksMTAzKSksOClWKDQ0LGZ1bmN0aW9uKEcsQSxRLEQpe0ooRywoRD1OKEcsKEE9TihHLChRPU4oRywzMCksMzgpKSwxMCkpLEQpLEMoRyxRKXx8QyhHLEEpKX0sciwxODcpO1hmKHRydWUsKGUoKCgoSihyLDM4MSwoVig0NCxmdW5jdGlvbihHLEEsUSxELFcsYil7e2I9Nzg7d2hpbGUoYiE9OTcpYj09Mj9iPUcuVT09R3x8RD09Ry5RVyYmUT09Rz8zOTo5NzpiPT02OT8oVz1mSCgyMyw1LDAsMSxHKSxRPVcuT2YsRD1XLkpsLGI9Mik6Yj09Nzg/Yj1WKDI2LDUwOSxmYWxzZSxHLHRydWUsQSk/OTc6Njk6Yj09MzkmJihNKFcueVcsRyxELmFwcGx5KFEsVy5WKSksRy54YT1HLnUoKSxiPTk3KX19LChKKHIsKChWKDEyLGZ1bmN0aW9uKEcsQSxRLEQsVyl7SihHLChXPShEPShBPU4oRywoUT1OKEcsMzIpLDI1KSksQyhHLFEpKSxDKEcsQSkpLEEpLFcrRCl9LHIsKFYoNDQsZnVuY3Rpb24oRyxBLFEsRCxXLGIsYSx3KXtNKChRPUMoKGI9KEE9bCgoVz1OKEcsKEQ9KGE9VChHLCh3PVQoRywyNyksMjMpKSxOKEcsMjkpKSwyNSkpLEcpLFcpLEMoRyxEKSksRyksYSksdyksRyxUKDIsNiwxLEEsYixHLFEpKX0sciwoSihyLChWKDc2LGZ1bmN0aW9uKEcsQSxRKXsoQT1UKChRPVQoRywyNyksRyksMzApLHgpKEEsRywiIitsKEcsUSkpfSxyLDMxNCksNDIxKSxbXSksNDUyKSksODgpKSxWKSg0NCxmdW5jdGlvbihHKXtUYyhHLDMpfSxyLDEzMCksMzU1KSwwKSxyKSwxNSkse30pKSxYKXx8ZShbZFBdLDg1LHIpLGUpKFtpeCx1XSw5MSxyKSxbcmEsZl0pLDgyLHIpLDcpLDAscix0cnVlLHRydWUpfSxCUz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRixHKXtpZihwPWZbMF0scD09dUIpISh5PVkuaihmKSl8fCh5LmU1PVUuc2V0VGltZW91dChmdW5jdGlvbihBKXt3aGlsZSh0cnVlKWlmKEE9IVkuVC5sZW5ndGgmJiFZLk4sMTUpYnJlYWs7ZSh5LkR6LDk1LCh5LmZpPXRydWUsWSkpO3doaWxlKCEhW10paWYoZSh5Lk1lLDgxLFkpLFtdKWJyZWFrO0EmJlhmKHRydWUsMywwLFksdHJ1ZSx0cnVlKX0seS50aW1lb3V0KSxZLkJxLnB1c2goeSkpO2Vsc2UgaWYocD09JDgpWS5JPXRydWUsWS5ZYT0yNSxZLmhsPVkuRzEoKS1mWzJdLFkuaihmKTtlbHNlIGlmKHA9PVBrKXtGPWZbSV1bM107dHJ5e1g9WS5XfHxZLmooZil9Y2F0Y2goQSl7Syg1MixZLEEsMCksWD1ZLld9aWYoYz1ZLnUoKSxbXSlGKFgpO1kubCs9WS51KCktY31lbHNlIGlmKHA9PVV3KWZbM10mJihZLm89dHJ1ZSksZls0XSYmKFkuST10cnVlKSxZLmooZik7ZWxzZSBzd2l0Y2goIShwPT1peCkpe2Nhc2UgdHJ1ZTpzd2l0Y2goIShwPT1yYSkpe2Nhc2UgMD09IVtdOndoaWxlKHA9PU1mKXtyZXR1cm4gdT1mWzJdLHgoMjE3LFksZls2XSksTShMLFksdSksWS5qKGYpO2lmKE51bWJlcigpPT09LTApYnJlYWt9cD09cUI/KFkuaihmKSxZLnRyPVtdLFkuUz1udWxsLFkuVmU9W10pOnA9PWRQJiZVLmRvY3VtZW50LnJlYWR5U3RhdGU9PT0ibG9hZGluZyImJihZLks9ZnVuY3Rpb24oQSxRKXtmdW5jdGlvbiBEKFcpe2ZvcihXPTE2O1chPTEyOylXPT02Mj8oUT10cnVlLFUuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsRCxIUyksVS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixELEhTKSxBKCksVz0xMik6Vz09MTYmJihXPVE/MTI6NjIpfVUuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKFE9ZmFsc2UsRCksSFMpLFUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsRCxIUyl9KTticmVhaztjYXNlIGZhbHNlOnRyeXt7Rz0wO3doaWxlKEc8WS5jcS5sZW5ndGgpe3RyeXtTPVkuY3FbR10sU1swXVtTW0ldXShTWzJdKX1jYXRjaChBKXt9RysrfX19Y2F0Y2goQSl7fSgwLGZbSV0pKGZ1bmN0aW9uKEEsUSl7WS5JOShBLHRydWUsUSl9LChyPShZLmNxPVtdLFkpLnUoKSxmdW5jdGlvbihBKXsoZShbcUJdLChBPSFZLlQubGVuZ3RoJiYhWS5OLDg0KSxZKSxBKSYmWGYodHJ1ZSw1LDAsWSx0cnVlLGZhbHNlKX0pLGZ1bmN0aW9uKEEpe3JldHVybiBZLnoxKEEpfSxmdW5jdGlvbihBLFEsRCl7cmV0dXJuIFkuQ2koQSxRLEQpfSksWS5sKz1ZLnUoKS1yO2JyZWFrfWJyZWFrO2Nhc2UgISFudWxsOlkubz10cnVlLFkuaihmKTticmVha319LGowPWZ1bmN0aW9uKEksTCxZLGYscil7aWYoKGY9dHlwZW9mIEwsZik9PSJvYmplY3QiKWlmKEwpe2lmKEwgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4gSTt3aGlsZShMIGluc3RhbmNlb2YgT2JqZWN0KXtyZXR1cm4gZjtpZihbXSlicmVha31pZigocj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoTCkscik9PSJbb2JqZWN0IFdpbmRvd10iKXJldHVybiJvYmplY3QiO3doaWxlKHI9PSJbb2JqZWN0IEFycmF5XSJ8fHR5cGVvZiBMLmxlbmd0aD09WSYmdHlwZW9mIEwuc3BsaWNlIT0idW5kZWZpbmVkIiYmdHlwZW9mIEwucHJvcGVydHlJc0VudW1lcmFibGUhPSJ1bmRlZmluZWQiJiYhTC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgic3BsaWNlIikpe3JldHVybiBJO2lmKE5hTiE9PU5hTilicmVha31pZihyPT0iW29iamVjdCBGdW5jdGlvbl0ifHx0eXBlb2YgTC5jYWxsIT0idW5kZWZpbmVkIiYmdHlwZW9mIEwucHJvcGVydHlJc0VudW1lcmFibGUhPSJ1bmRlZmluZWQiJiYhTC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgiY2FsbCIpKXJldHVybiJmdW5jdGlvbiJ9ZWxzZSByZXR1cm4ibnVsbCI7ZWxzZSBmb3IoMTtmPT0iZnVuY3Rpb24iJiZ0eXBlb2YgTC5jYWxsPT0idW5kZWZpbmVkIjsxKXtyZXR1cm4ib2JqZWN0IjtpZihudWxsIT0oTmFOPT09TmFOKSlicmVha31yZXR1cm4gZn0scEg9ZnVuY3Rpb24oKXt3aGlsZSh0cnVlKXtyZXR1cm4gQUsuY2FsbCh0aGlzLDcsMyk7aWYoe30pYnJlYWt9fSx1eD1mdW5jdGlvbihJLEwpe2Z1bmN0aW9uIFkoKXt0aGlzLm49KHRoaXMuWD1bXSwwKX1yZXR1cm4gTD0oST0oKFkucHJvdG90eXBlLnRsPWZ1bmN0aW9uKCl7cmV0dXJuIFdrLmNhbGwodGhpcyw3MSw2KX0sWSkucHJvdG90eXBlLm56PWZ1bmN0aW9uKGYscil7cmV0dXJuIGUuY2FsbCh0aGlzLGYsMTYscil9LG5ldyBZKSxuZXcgWSksW2Z1bmN0aW9uKGYpe0kubnooZiksTC5ueihmKX0sZnVuY3Rpb24oZixyKXtyZXR1cm4oZj1mPT09dm9pZCAwP3RydWU6ZixyPUkudGwoKS5jb25jYXQoTC50bCgpKSxmKSYmKEw9bmV3IFkpLHJ9XX0sSkM9ZnVuY3Rpb24oKXtyZXR1cm4gUFMuY2FsbCh0aGlzLDU2LDE5KX0sbD1mdW5jdGlvbihJLEwsWSl7WT1JLlNbTF07d2hpbGUoWT09PXZvaWQgMCl7dGhyb3dbbzEsMzAsTF07aWYodHJ1ZSlicmVha31pZihZLnZhbHVlKXJldHVybiBZLmNyZWF0ZSgpO3JldHVybiBZLmNyZWF0ZShMKjUqTCs0KkwrLTM1KSxZLnByb3RvdHlwZX0sQms9ZnVuY3Rpb24oSSxMLFksZixyLHApe1kuS3oubGVuZ3RoPnA/bk8oW28xLDM2XSxMLEksWSk6KFkuS3oucHVzaChZLlMuc2xpY2UoKSksWS5TW2ZdPXZvaWQgMCx4KGYsWSxyKSl9LEtFPWZ1bmN0aW9uKEkpe3JldHVybiB3UC5jYWxsKHRoaXMsMCwxMixJKX0sQz1mdW5jdGlvbihJLEwsWSl7WT1JLlNbTF07d2hpbGUoWT09PXZvaWQgMCl7dGhyb3dbbzEsMzAsTF07aWYoMSlicmVha31zd2l0Y2goIVkudmFsdWUpe2Nhc2UgdHJ1ZTp0cnVlLnRydWU7YnJlYWs7Y2FzZSAwIT0hWyIiXTpyZXR1cm4gWS5jcmVhdGUoKTticmVha31yZXR1cm4oWS5jcmVhdGUoTCo1KkwrNCpMKy0zNSksWSkucHJvdG90eXBlfSxHeT1mdW5jdGlvbihJLEwsWSxmLHIscCl7cmV0dXJuIFdrLmNhbGwodGhpcyw3MSwzLEksTCxZLGYscixwKX0sZEM9ZnVuY3Rpb24oKXtyZXR1cm4gVi5jYWxsKHRoaXMsOCl9LFpxPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMseSxGLEcsQSl7Zm9yKGM9KHU9KFk9SS5yZXBsYWNlKC9cXHJcXG4vZywiXFxuIiksMCkscj1bXSwwKTt1PFkubGVuZ3RoO3UrKylmPVkuY2hhckNvZGVBdCh1KSxmPDEyOD9yW2MrK109ZjooZjwyMDQ4P3JbYysrXT0oRz1mPj42LC0xLX4oR3wxOTIpKTooKGZ8MCkrfihmJjY0NTEyKS0gLTY0NTEzLShmXjY0NTEyKT09NTUyOTYmJnUrMTxZLmxlbmd0aCYmKFM9WS5jaGFyQ29kZUF0KHUrMSksLShTfDY0NTEyKS0yKn4oU3w2NDUxMikrKFNeNjQ1MTIpKzIqKH5TXjY0NTEyKSk9PTU2MzIwPyhmPTY1NTM2KygyKihmfDApLX4oZiZMKS0gLTErMip+Zjw8MTApKyhZLmNoYXJDb2RlQXQoKyt1KSZMKSxyW2MrK109KHk9Zj4+MTgsLTEtfnkrKH55JjI0MCkpLHJbYysrXT0oQT1mPj4xMiY2MywtfihBJjEyOCkrMiooQV4xMjgpKyh+QV4xMjgpKSk6cltjKytdPShwPWY+PjEyLDIqfihwJjIyNCktMip+cC0gLTIyNSsofnB8MjI0KSkscltjKytdPShYPWY+PjYmNjMsLX5YKyhYXjEyOCkrKH5YfDEyOCkpKSxyW2MrK109KEY9ZiY2MywoRiYxMjgpLTEtKH5GXjEyOCkpKTtyZXR1cm4gcn0sRnQ9ZnVuY3Rpb24oKXtyZXR1cm4gUmEuY2FsbCh0aGlzLDQ1LDMpfSxqYT1mdW5jdGlvbihJKXtyZXR1cm4gb2EuY2FsbCh0aGlzLDEsNyxJKX0sZ0M9ZnVuY3Rpb24oSSxMLFksZil7dHJ5e2Y9SVsoKEx8MiktfihMfDIpKyh+TF4yKSklM10sSVtMXT0oSVtMXXwwKS0oSVsoKEx8MCkrMSklM118MCktKGZ8MCleKEw9PTE/Zjw8WTpmPj4+WSl9Y2F0Y2gocil7dGhyb3cgcjt9fSxZVj1mdW5jdGlvbihJKXtyZXR1cm4geWMuY2FsbCh0aGlzLDk5LDYsSSl9LGs9ZnVuY3Rpb24oSSxMLFkpe2lmKChZPUkuU1tMXSxZKT09PXZvaWQgMCl0aHJvd1tvMSwzMCxMXTtpZihZLnZhbHVlKXJldHVybiBZLmNyZWF0ZSgpO3JldHVybiBZLmNyZWF0ZShMKjUqTCs0KkwrLTM1KSxZLnByb3RvdHlwZX0sU2E9ZnVuY3Rpb24oSSl7cmV0dXJuIGFhLmNhbGwodGhpcywxMCxJKX0sbXU9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMpe3doaWxlKEwuVT09TCl7Zm9yKHU9QyhMLEkpLEk9PTE5NXx8ST09NDg4fHxJPT0xMj8ocD1mdW5jdGlvbihTLHksRixHLEEsUSxELFcsYixhKXtmb3IoYj0oYT02Myw2Nyk7Oyl0cnl7aWYoYT09NzQpYnJlYWs7ZWxzZSBpZihhPT02MylEPXUubGVuZ3RoLEE9KER8MCktND4+MyxhPTM3O2Vsc2UgaWYoYT09MTkpYj00Myx1LnI1PUU4KDgsRixUKDAsNjYseSx1KSxUKDAsNTEsLSh5JjQpLTEtMyp+KHl8NCkrMioofnleNCksdSksMCksYT02NjtlbHNlIGlmKGE9PTY2KXUucHVzaCgoUT11LnI1Wy1+KEQmNyktIC0xKzIqKEReNykrMioofkReNyldLC0xKyh+USZTKS0oflF8UykpKSxhPTc0O2Vsc2UgaWYoYT09NTApdS5FQT1BLHk9KEc9QTw8MywtfihHJjQpK34oR3w0KSsyKihHJi01KSksRj1bMCwwLGNbMV0sY1syXV0sYT0xOTtlbHNlIGlmKGE9PTM3KWE9dS5FQSE9QT81MDo2NjtlbHNlIGlmKGE9PTk1KXRocm93IGI9NjcsVzt9Y2F0Y2godyl7aWYoYj09NjcpdGhyb3cgdztiPT00MyYmKFc9dyxhPTk1KX19LGM9QyhMLDM4MCkpOnA9ZnVuY3Rpb24oUyl7dS5wdXNoKFMpfSxmJiZwKGYmMjU1KSxYPTAscj1ZLmxlbmd0aDtYPHI7WCsrKXAoWVtYXSk7aWYodHJ1ZSE9IVtdKWJyZWFrfX0sdW89ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYKXtyZXR1cm4gclAuY2FsbCh0aGlzLDg3LDI0LEksTCxZLGYscixwLHUsWCl9LGZIPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMpe3U9KFg9KCgocD1OKHIsKGM9cltBcF18fHt9LEwpKSxjKS55Vz1UKHIsSSksYykuVj1bXSxyLlUpPT1yPygkSyhyKXxZKS1mOjEsTikociw5KTt7Uz1ZO3doaWxlKFM8WCljLlYucHVzaChUKHIsMzApKSxTKyt9Zm9yKChjLk9mPWsocix1KSxjKS5KbD1sKHIscCk7WC0tOyljLlZbWF09QyhyLGMuVltYXSk7cmV0dXJuIGN9LFE4LFk4PWZ1bmN0aW9uKEksTCxZKXtmb3IoWT01NTtZIT04MjspaWYoWT09NTIpWT0zOTtlbHNlIGlmKFk9PTM5KVk9SS0tPzY4Ojc3O2Vsc2UgaWYoWT09OTIpWT0zOTtlbHNlIGlmKFk9PTY4KUwucHVzaChNYXRoLnJhbmRvbSgpKjI1NXwwKSxZPTUyO2Vsc2V7aWYoWT09NzcpcmV0dXJuIEw7WT09NTUmJihMPVtdLFk9OTIpfX0sYm89ZnVuY3Rpb24oSSxMKXtyZXR1cm4gclAuY2FsbCh0aGlzLDg3LDMyLEksTCl9LFFTPWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjLFMpe3JldHVybiB3Qy5jYWxsKHRoaXMsNSxJLEwsWSxmLHIscCx1LFgsYyxTKX0seTg9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpeyhMLnB1c2goKHA9SVswXTw8MjQscj1JWzFdPDwxNiwocCZyKS0xLSh+cF5yKSl8SVsyXTw8OHxJWzNdKSxMLnB1c2goKHk9KFg9SVs0XTw8MjQsRj1JWzVdPDwxNiwtfihYJkYpKy0zLShYfH5GKS0oflh8RikpfElbNl08PDgsZj1JWzddLChmfDApK34oeSZmKS1+eSkpLEwpLnB1c2goKFk9KHU9SVs4XTw8MjQsUz1JWzldPDwxNiwoU3wwKSsodV5TKS0ofnUmUykpfElbMTBdPDw4LGM9SVsxMV0sKFkmYyktMSsoWSZ+YyktKFl8fmMpKSl9LFRsPWZ1bmN0aW9uKEksTCxZKXtyZXR1cm4oWT1JLmNyZWF0ZSgpLnNoaWZ0KCksTCkuTy5jcmVhdGUoKS5sZW5ndGh8fEwuWi5jcmVhdGUoKS5sZW5ndGh8fChMLk89dm9pZCAwLEwuWj12b2lkIDApLFl9LCRWPWZ1bmN0aW9uKEksTCxZLGYscixwKXtyZXR1cm4gSy5jYWxsKHRoaXMsOSxMLFksSSxmLHIscCl9LGN2PWZ1bmN0aW9uKEksTCxZLGYscil7cmV0dXJuIHljLmNhbGwodGhpcyw5OSwzLEksTCxZLGYscil9LHFmPWZ1bmN0aW9uKEkpe3t2YXIgTD00Nzt3aGlsZShMIT0xOSlpZihMPT00Nyl2YXIgWT1DTy5hcHBseSgoTD00LDEpLGFyZ3VtZW50cyk7ZWxzZSBpZihMPT05MylMPTY4O2Vsc2UgaWYoTD09MzgpcisrLEw9Njg7ZWxzZSBpZihMPT0yKXZhciBmPShMPTkzLEkpWzBdLHI9MDtlbHNlIGlmKEw9PTY4KUw9cjxZLmxlbmd0aD81OToxMTtlbHNle2lmKEw9PTI5KXJldHVybiBteigwLG51bGwsSVswXSwxNCk7aWYoTD09NClMPVkubGVuZ3RoPT09MD8yOToyO2Vsc2UgaWYoTD09NTkpZis9ZW5jb2RlVVJJQ29tcG9uZW50KFlbcl0pK0lbcisxXSxMPTM4O2Vsc2UgaWYoTD09MTEpcmV0dXJuIG16KDAsbnVsbCxmLDEyKX19fSxaND1mdW5jdGlvbihJKXtyZXR1cm4gQUsuY2FsbCh0aGlzLDcsNDgsSSl9O3N3aXRjaCghKHR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpKXtjYXNlIGZhbHNlPT0wOnZhciBXdjthOnt2YXIgRGM9e2E6dHJ1ZX0sYng9e307dHJ5e1d2PShieC5fX3Byb3RvX189RGMsYngpLmE7YnJlYWsgYX1jYXRjaChJKXt9V3Y9ZmFsc2V9UTg9V3Y/ZnVuY3Rpb24oSSxMLFkpe2ZvcihZPTU4O1khPTMxOylpZihZPT01OClJLl9fcHJvdG9fXz1MLFk9MjA7ZWxzZSBpZihZPT0yMClZPUkuX19wcm90b19fIT09TD84NDo0NDtlbHNle2lmKFk9PTQ0KXJldHVybiBJO2lmKFk9PTg0KXRocm93IG5ldyBUeXBlRXJyb3IoSSsiIGlzIG5vdCBleHRlbnNpYmxlIik7fX06bnVsbDticmVhaztjYXNlIGZhbHNlOlE4PU9iamVjdC5zZXRQcm90b3R5cGVPZjticmVha312YXIgVT10aGlzfHxzZWxmLFJfPVE4LE5mPSJjbG9zdXJlX3VpZF8iKyhNYXRoLnJhbmRvbSgpKjFFOT4+PjApLGNrLHZTPTAsR2M9ZnVuY3Rpb24oSSxMLFksZixyLHApe2lmKCJzIilwPTg3O2ZvcihmPTI1OzspdHJ5e2lmKHA9PTgwKWJyZWFrO2Vsc2UgaWYocD09MTMpZj0yNSxwPTY5O2Vsc2UgaWYocD09NDIpST1mYWxzZSxMPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe0k9dHJ1ZX19KSxwPTEwO2Vsc2V7aWYocD09MTUpcmV0dXJuIGZhbHNlO2lmKHA9PTY5KXJldHVybiBmPTI1LEk7cD09MTA/KGY9NjcsWT1mdW5jdGlvbigpe30sVS5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixZLEwpLFUucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsWSxMKSxwPTY5KTpwPT04NyYmKHA9VS5hZGRFdmVudExpc3RlbmVyJiZPYmplY3QuZGVmaW5lUHJvcGVydHk/NDI6MTUpfX1jYXRjaCh1KXtpZihmPT0yNSl0aHJvdyB1O2Y9PTY3JiYocj11LHA9MTMpfX0oKSxiQj0oKFIxKE93LDIsMzYsKCgoYm8ucHJvdG90eXBlLnN0b3BQcm9wYWdhdGlvbj1mdW5jdGlvbigpe3RoaXMuRm09dHJ1ZX0sSkMucHJvdG90eXBlKS5IPWZ1bmN0aW9uKEkpe3tJPTE1O3doaWxlKEkhPTcwKUk9PTE0P0k9dGhpcy5OaC5sZW5ndGg/MTM6NzA6ST09MjI/ST0xNDpJPT0xNT9JPXRoaXMuTmg/Njc6NzA6ST09Njc/ST0xNDpJPT0xMyYmKHRoaXMuTmguc2hpZnQoKSgpLEk9MjIpfX0sSkMucHJvdG90eXBlKVsoYm8ucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPXRydWV9LEpDLnByb3RvdHlwZS5ZPWZhbHNlLEpDLnByb3RvdHlwZSkuZGlzcG9zZT1mdW5jdGlvbihJKXt7ST0yNzt3aGlsZShJIT0yMSlJPT0yNz9JPXRoaXMuWT8yMTo4NzpJPT04NyYmKHRoaXMuWT10cnVlLHRoaXMuSCgpLEk9MjEpfX0sU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9LGJvKSksT3cucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oSSxMLFksZixyLHApe2ZvcihwPTE1O3AhPTIwOylwPT03OT8odGhpcy5vZmZzZXRYPUkub2Zmc2V0WCx0aGlzLm9mZnNldFk9SS5vZmZzZXRZLHRoaXMuY2xpZW50WD1JLmNsaWVudFghPT12b2lkIDA/SS5jbGllbnRYOkkucGFnZVgsdGhpcy5jbGllbnRZPUkuY2xpZW50WSE9PXZvaWQgMD9JLmNsaWVudFk6SS5wYWdlWSx0aGlzLnNjcmVlblg9SS5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1JLnNjcmVlbll8fDAscD0zNSk6cD09Njk/cD1yPzI6Nzk6cD09NDM/cD1mPzk2OjU2OnA9PTM1Pyh0aGlzLmJ1dHRvbj1JLmJ1dHRvbix0aGlzLmtleUNvZGU9SS5rZXlDb2RlfHwwLHRoaXMua2V5PUkua2V5fHwiIix0aGlzLmNoYXJDb2RlPUkuY2hhckNvZGV8fChZPT0ia2V5cHJlc3MiP0kua2V5Q29kZTowKSx0aGlzLmN0cmxLZXk9SS5jdHJsS2V5LHRoaXMuYWx0S2V5PUkuYWx0S2V5LHRoaXMuc2hpZnRLZXk9SS5zaGlmdEtleSx0aGlzLm1ldGFLZXk9SS5tZXRhS2V5LHRoaXMucG9pbnRlcklkPUkucG9pbnRlcklkfHwwLHRoaXMucG9pbnRlclR5cGU9SS5wb2ludGVyVHlwZSx0aGlzLnN0YXRlPUkuc3RhdGUsdGhpcy50aW1lU3RhbXA9SS50aW1lU3RhbXAsdGhpcy5Tbz1JLEkuZGVmYXVsdFByZXZlbnRlZCYmT3cuRi5wcmV2ZW50RGVmYXVsdC5jYWxsKHRoaXMpLHA9MjApOnA9PTY3PyhmPUkuZnJvbUVsZW1lbnQscD05Nik6cD09MTU/KFk9dGhpcy50eXBlPUkudHlwZSxyPUkuY2hhbmdlZFRvdWNoZXMmJkkuY2hhbmdlZFRvdWNoZXMubGVuZ3RoP0kuY2hhbmdlZFRvdWNoZXNbMF06bnVsbCx0aGlzLnRhcmdldD1JLnRhcmdldHx8SS5zcmNFbGVtZW50LHRoaXMuY3VycmVudFRhcmdldD1MLGY9SS5yZWxhdGVkVGFyZ2V0LHA9NDMpOnA9PTU2P3A9WT09Im1vdXNlb3ZlciI/Njc6Mzg6cD09ODI/KGY9SS50b0VsZW1lbnQscD05Nik6cD09OTY/KHRoaXMucmVsYXRlZFRhcmdldD1mLHA9NjkpOnA9PTI/KHRoaXMuY2xpZW50WD1yLmNsaWVudFghPT12b2lkIDA/ci5jbGllbnRYOnIucGFnZVgsdGhpcy5jbGllbnRZPXIuY2xpZW50WSE9PXZvaWQgMD9yLmNsaWVudFk6ci5wYWdlWSx0aGlzLnNjcmVlblg9ci5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT1yLnNjcmVlbll8fDAscD0zNSk6cD09MzgmJihwPVk9PSJtb3VzZW91dCI/ODI6OTYpfSxPdy5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7KE93LkYuc3RvcFByb3BhZ2F0aW9uLmNhbGwodGhpcyksdGhpcy5Tbykuc3RvcFByb3BhZ2F0aW9uP3RoaXMuU28uc3RvcFByb3BhZ2F0aW9uKCk6dGhpcy5Tby5jYW5jZWxCdWJibGU9dHJ1ZX0sT3cpLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbihJKXt3aGlsZSh0cnVlIT0hW10paWYoZmFsc2UhPShPdy5GLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyksbnVsbCkpYnJlYWs7KEk9dGhpcy5TbyxJLnByZXZlbnREZWZhdWx0KT9JLnByZXZlbnREZWZhdWx0KCk6SS5yZXR1cm5WYWx1ZT1mYWxzZX0sImNsb3N1cmVfbGlzdGVuYWJsZV8iKSsoTWF0aC5yYW5kb20oKSoxRTZ8MCksaW89MCxWUz0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpLEV3PSJjbG9zdXJlX2xtXyIrKCgoKEtFLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyl7Zm9yKFM9OTk7UyE9MTk7KWlmKFM9PTgzKVM9Yz4tMT8zNTo4NDtlbHNlIGlmKFM9PTM1KVg9cFtjXSxTPTM0O2Vsc2UgaWYoUz09NzEpUz1wPzQzOjkwO2Vsc2V7aWYoUz09NTkpcmV0dXJuIFg7Uz09MzQ/Uz1ZPzU5OjQ0OlM9PTQ0PyhYLnllPWZhbHNlLFM9NTkpOlM9PTg0PyhYPW5ldyBzOCghIWYsTCx0aGlzLnNyYyx1LHIpLFgueWU9WSxwLnB1c2goWCksUz01OSk6Uz09NDM/KGM9UFMoNTYsNTYsMCxmLEwscixwKSxTPTgzKTpTPT05OT8odT1JLnRvU3RyaW5nKCkscD10aGlzLkpbdV0sUz03MSk6Uz09OTAmJihwPXRoaXMuSlt1XT1bXSx0aGlzLmc1KyssUz00Myl9fSxLRSkucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgpe3tYPTI5O3doaWxlKFghPTQ1KWlmKFg9PTM4KVooMjYsdHJ1ZSxyW3VdKSxBcnJheS5wcm90b3R5cGUuc3BsaWNlLmNhbGwocix1LDEpLFg9NTY7ZWxzZXtpZihYPT05NilyZXR1cm4gZmFsc2U7aWYoWD09NzcpWD1wIGluIHRoaXMuSj82Nzo4ODtlbHNlIGlmKFg9PTg5KVg9dT4tMT8zODo5NjtlbHNlIGlmKFg9PTU2KVg9ci5sZW5ndGg9PTA/NTA6NjU7ZWxzZXtpZihYPT04OClyZXR1cm4gZmFsc2U7aWYoWD09Njcpcj10aGlzLkpbcF0sdT1QUyg1Niw1OCwwLFksTCxmLHIpLFg9ODk7ZWxzZSBpZihYPT0yOSlwPUkudG9TdHJpbmcoKSxYPTc3O2Vsc2UgaWYoWD09NTApZGVsZXRlIHRoaXMuSltwXSx0aGlzLmc1LS0sWD02NTtlbHNlIGlmKFg9PTY1KXJldHVybiB0cnVlfX19fSxLRS5wcm90b3R5cGUpLmxkPShLRS5wcm90b3R5cGUuaGFzTGlzdGVuZXI9ZnVuY3Rpb24oSSxMLFksZixyKXtyZXR1cm4gYWEoOSwoZj0ocj1JIT09KFk9TCE9PXZvaWQgMCx2b2lkIDApKT9JLnRvU3RyaW5nKCk6IiIsZmFsc2UpLHRydWUsdGhpcy5KLGZ1bmN0aW9uKHAsdSxYKXtmb3IoWD01MTtYIT03OTspaWYoWD09NjgpWD1yJiZwW3VdLnR5cGUhPWZ8fFkmJnBbdV0uY2FwdHVyZSE9TD81OToxO2Vsc2UgaWYoWD09OTUpWD11PHAubGVuZ3RoPzY4OjQ5O2Vsc2UgaWYoWD09NTkpKyt1LFg9OTU7ZWxzZSBpZihYPT04NylYPTk1O2Vsc2V7aWYoWD09MSlyZXR1cm4gdHJ1ZTtpZihYPT00OSlyZXR1cm4gZmFsc2U7WD09NTEmJih1PTAsWD04Nyl9fSl9LGZ1bmN0aW9uKEksTCxZLGYscixwKXtyZXR1cm4ocj0ocD0tMSx0aGlzLkopW0wudG9TdHJpbmcoKV0scikmJihwPVBTKDU2LDU3LDAsSSxmLFkscikpLHA+LTE/cltwXTpudWxsfSksTWF0aCkucmFuZG9tKCkqMUU2fDApLEkxPXt9LGhDPTAsckM9Il9fY2xvc3VyZV9ldmVudHNfZm5fIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTt6PSgoUjEoRnQsMiw3LEpDKSxGdC5wcm90b3R5cGUpW2JCXT10cnVlLEZ0LnByb3RvdHlwZSk7d2hpbGUodHJ1ZSlpZih0cnVlIT0hKHoucWg9ZnVuY3Rpb24oSSl7dGhpcy5hOT1JfSxbXSkpYnJlYWs7KHouYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihJLEwsWSxmKXt4SygzLDMsbnVsbCx0cnVlLHRoaXMsSSxmLFksTCl9LHopLnJlbW92ZUV2ZW50TGlzdGVuZXI9KHouZGlzcGF0Y2hFdmVudD1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgsYyxTLHksRil7e0Y9OTU7d2hpbGUoRiE9OTMpaWYoRj09MTApRj0hcC5GbSYmeTxTLmxlbmd0aD81MDo4NDtlbHNlIGlmKEY9PTQyKUY9NDc7ZWxzZSBpZihGPT02KUY9NzA7ZWxzZSBpZihGPT04OSlYPXAscD1uZXcgYm8ocixZKSxVOChwLFgpLEY9ODg7ZWxzZSBpZihGPT05NClGPVM/NjA6ODQ7ZWxzZSBpZihGPT01MCl1PXAuY3VycmVudFRhcmdldD1TW3ldLGY9SygzMyxyLHAsdHJ1ZSx1LGZhbHNlKSYmZixGPTIzO2Vsc2UgaWYoRj09ODcpRj1wIGluc3RhbmNlb2YgYm8/NzY6ODk7ZWxzZSBpZihGPT0zNyljPWMuYTksRj03MDtlbHNlIGlmKEY9PTM4KUwucHVzaChjKSxGPTM3O2Vsc2UgaWYoRj09NjApeT0wLEY9MzQ7ZWxzZSBpZihGPT03NilwLnRhcmdldD1wLnRhcmdldHx8WSxGPTg4O2Vsc2UgaWYoRj09ODgpZj10cnVlLEY9NTY7ZWxzZSBpZihGPT0yMClMPVtdLEY9NjtlbHNlIGlmKEY9PTQ3KUY9IXAuRm0mJnk+PTA/NDoxODtlbHNlIGlmKEY9PTgzKXA9bmV3IGJvKHAsWSksRj04ODtlbHNlIGlmKEY9PTM5KUY9dHlwZW9mIHA9PT0ic3RyaW5nIj84Mzo4NztlbHNle2lmKEY9PTg0KXJldHVybiBmO0Y9PTIzPyh5KyssRj0xMCk6Rj09MzQ/Rj0xMDpGPT01ND8odT1wLmN1cnJlbnRUYXJnZXQ9WSxmPUsoNixyLHAsdHJ1ZSx1LHRydWUpJiZmLHAuRm18fChmPUsoNSxyLHAsdHJ1ZSx1LGZhbHNlKSYmZiksRj05NCk6Rj09NTY/Rj1TPzM6MTg6Rj09Mz8oeT1TLmxlbmd0aC0xLEY9NDIpOkY9PTQ/KHU9cC5jdXJyZW50VGFyZ2V0PVNbeV0sZj1LKDcscixwLHRydWUsdSx0cnVlKSYmZixGPTE1KTpGPT0xOD9GPXAuRm0/OTQ6NTQ6Rj09Nzg/KFM9TCxwPUkscj1wLnR5cGV8fHAsWT10aGlzLkJpLEY9MzkpOkY9PTE1Pyh5LS0sRj00Nyk6Rj09OTU/KGM9dGhpcy5hOSxGPTQzKTpGPT00Mz9GPWM/MjA6Nzg6Rj09NzAmJihGPWM/Mzg6NzgpfX19LGZ1bmN0aW9uKEksTCxZLGYpe0ZmKDAsTCxJLHRoaXMsMyxudWxsLGYsWSl9KTt3aGlsZShOdW1iZXIodW5kZWZpbmVkKSE9PU5hTilpZighKHoubGQ9ZnVuY3Rpb24oSSxMLFksZil7cmV0dXJuIHRoaXMuZy5sZChJLFN0cmluZyhMKSxZLGYpfSwiIik9PSFmYWxzZSlicmVhazt6Lmhhc0xpc3RlbmVyPSh6Lkg9ZnVuY3Rpb24oKXt0aGlzLmE5PShGdC5GLkguY2FsbCh0aGlzKSx0aGlzLmcmJmdQKDAsMTIsdHJ1ZSx0aGlzLmcpLG51bGwpfSxmdW5jdGlvbihJLEwpe3JldHVybiB0aGlzLmcuaGFzTGlzdGVuZXIoSSE9PXZvaWQgMD9TdHJpbmcoSSk6dm9pZCAwLEwpfSk7dmFyIExPLHRDLE5CPXtYSzowLGNpOjEsc2Y6KFo0LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkhpKyIifSwyKSwwOiJGT1JNQVRURURfSFRNTF9DT05URU5UIiwxOiJFTUJFRERFRF9JTlRFUk5BTF9DT05URU5UIiwyOiJFTUJFRERFRF9UUlVTVEVEX0VYVEVSTkFMX0NPTlRFTlQifSxhXz1FcnJvcjtpZigoRHEucHJvdG90eXBlPVhqKGFfLnByb3RvdHlwZSksRHEpLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1EcSxSXylSXyhEcSxhXyk7ZWxzZSBmb3IodmFyIHdhIGluIGFfKWlmKHdhIT0icHJvdG90eXBlIilpZihPYmplY3QuZGVmaW5lUHJvcGVydGllcyl7dmFyIE5fPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYV8sd2EpO05fJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoRHEsd2EsTl8pfWVsc2UgRHFbd2FdPWFfW3dhXTsoKChSMShMRSwyLDYsKChpQig1NSwoKCh6PShEcS5GPWFfLnByb3RvdHlwZSwiQVJUSUNMRSBTRUNUSU9OIE5BViBBU0lERSBIMSBIMiBIMyBINCBINSBINiBIRUFERVIgRk9PVEVSIEFERFJFU1MgUCBIUiBQUkUgQkxPQ0tRVU9URSBPTCBVTCBMSCBMSSBETCBEVCBERCBGSUdVUkUgRklHQ0FQVElPTiBNQUlOIERJViBFTSBTVFJPTkcgU01BTEwgUyBDSVRFIFEgREZOIEFCQlIgUlVCWSBSQiBSVCBSVEMgUlAgREFUQSBUSU1FIENPREUgVkFSIFNBTVAgS0JEIFNVQiBTVVAgSSBCIFUgTUFSSyBCREkgQkRPIFNQQU4gQlIgV0JSIE5PQlIgSU5TIERFTCBQSUNUVVJFIFBBUkFNIFRSQUNLIE1BUCBUQUJMRSBDQVBUSU9OIENPTEdST1VQIENPTCBUQk9EWSBUSEVBRCBURk9PVCBUUiBURCBUSCBTRUxFQ1QgREFUQUxJU1QgT1BUR1JPVVAgT1BUSU9OIE9VVFBVVCBQUk9HUkVTUyBNRVRFUiBGSUVMRFNFVCBMRUdFTkQgREVUQUlMUyBTVU1NQVJZIE1FTlUgRElBTE9HIFNMT1QgQ0FOVkFTIEZPTlQgQ0VOVEVSIEFDUk9OWU0gQkFTRUZPTlQgQklHIERJUiBIR1JPVVAgU1RSSUtFIFRUIi5zcGxpdCgiICIpLmNvbmNhdChbIkJVVFRPTiIsIklOUFVUIl0pLFNTKS5wcm90b3R5cGUsei52PWZ1bmN0aW9uKEksTCl7cmV0dXJuIHR5cGVvZiBJPT09KEw9dGhpcy5Bciwic3RyaW5nIik/TC5nZXRFbGVtZW50QnlJZChJKTpJfSx6KS5nZXRFbGVtZW50c0J5VGFnTmFtZT1mdW5jdGlvbihJLEwpe3JldHVybihMfHx0aGlzLkFyKS5nZXRFbGVtZW50c0J5VGFnTmFtZShTdHJpbmcoSSkpfSx6LmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oSSxMLFkpe3JldHVybigoTD0oWT1TdHJpbmcoSSksdGhpcy5BciksTCkuY29udGVudFR5cGU9PT0iYXBwbGljYXRpb24veGh0bWwreG1sIiYmKFk9WS50b0xvd2VyQ2FzZSgpKSxMKS5jcmVhdGVFbGVtZW50KFkpfSx6KS5jcmVhdGVUZXh0Tm9kZT1mdW5jdGlvbihJKXtyZXR1cm4gdGhpcy5Bci5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoSSkpfSx6LmFwcGVuZENoaWxkPWZ1bmN0aW9uKEksTCl7aWYodHJ1ZSlJLmFwcGVuZENoaWxkKEwpfSx6LmFwcGVuZD1mdW5jdGlvbihJLEwpe2dQKG51bGwsNzcsMCwibnVtYmVyIiwiYXJyYXkiLGFyZ3VtZW50cyxJLEkubm9kZVR5cGU9PTk/STpJLm93bmVyRG9jdW1lbnR8fEkuZG9jdW1lbnQpfSx6LmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihJLEwpe2ZvcihMPTYwO0whPTcwOylpZihMPT02MClMPUkubm9kZVR5cGUhPTE/Mzc6OTE7ZWxzZXtpZihMPT05MSl7c3dpdGNoKEkudGFnTmFtZSl7Y2FzZSAiQVBQTEVUIjpjYXNlICJBUkVBIjpjYXNlICJCQVNFIjpjYXNlICJCUiI6Y2FzZSAiQ09MIjpjYXNlICJDT01NQU5EIjpjYXNlICJFTUJFRCI6Y2FzZSAiRlJBTUUiOmNhc2UgIkhSIjpjYXNlICJJTUciOmNhc2UgIklOUFVUIjpjYXNlICJJRlJBTUUiOmNhc2UgIklTSU5ERVgiOmNhc2UgIktFWUdFTiI6Y2FzZSAiTElOSyI6Y2FzZSAiTk9GUkFNRVMiOmNhc2UgIk5PU0NSSVBUIjpjYXNlICJNRVRBIjpjYXNlICJPQkpFQ1QiOmNhc2UgIlBBUkFNIjpjYXNlICJTQ1JJUFQiOmNhc2UgIlNPVVJDRSI6Y2FzZSAiU1RZTEUiOmNhc2UgIlRSQUNLIjpjYXNlICJXQlIiOnJldHVybiBmYWxzZX1yZXR1cm4gdHJ1ZX1pZihMPT0zNylyZXR1cm4gZmFsc2V9fSx6LnJlbW92ZU5vZGU9U2Esei5jb250YWlucz1mdW5jdGlvbihJLEwsWSxmKXt7Zj03ODt3aGlsZShmIT0zKWlmKGY9PTkyKWY9dHlwZW9mIEkuY29tcGFyZURvY3VtZW50UG9zaXRpb24hPSJ1bmRlZmluZWQiPzg1OjcwO2Vsc2V7aWYoZj09NjgpcmV0dXJuIEk9PUx8fEkuY29udGFpbnMoTCk7aWYoZj09ODUpcmV0dXJuIEk9PUx8fCEhKFk9SS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihMKSwoWXwxNiktIC0xKyh+WV4xNikpO2lmKGY9PTY0KUw9TC5wYXJlbnROb2RlLGY9NjE7ZWxzZSBpZihmPT01KWY9SS5jb250YWlucyYmTC5ub2RlVHlwZT09MT82ODo5MjtlbHNle2lmKGY9PTUyKXJldHVybiBmYWxzZTtpZihmPT05NylmPUwmJkkhPUw/NjQ6NztlbHNlIGlmKGY9PTYxKWY9OTc7ZWxzZSBpZihmPT03MClmPTk3O2Vsc2UgaWYoZj09NzgpZj1JJiZMPzU6NTI7ZWxzZSBpZihmPT03KXJldHVybiBMPT1JfX19fSxwSCkpLHBILnByb3RvdHlwZS5sUj0wLHBIKS5wcm90b3R5cGUuRWY9IiIsRnQpKSx6PUxFLnByb3RvdHlwZSx6LnJvPXBILmVvKCkseikudj1mdW5jdGlvbigpe3JldHVybiB0aGlzLkx9LHouZ2V0UGFyZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuVDF9LHoucWg9ZnVuY3Rpb24oSSxMKXtmb3IoTD00MDtMIT04Oyl7aWYoTD09MjIpdGhyb3cgRXJyb3IoIk1ldGhvZCBub3Qgc3VwcG9ydGVkIik7TD09NDA/TD10aGlzLlQxJiZ0aGlzLlQxIT1JPzIyOjQ6TD09NCYmKExFLkYucWguY2FsbCh0aGlzLEkpLEw9OCl9fSx6KS5VQT1mdW5jdGlvbigpe3RoaXMuTHo9IShXayg3MSwxMix0aGlzLGZ1bmN0aW9uKEkpe0kuTHomJkkuVUEoKX0pLHRoaXMuSnImJmdQKDAsMTQsdHJ1ZSx0aGlzLkpyKSwxKX0seikuSD1mdW5jdGlvbihJKXt7ST0xMjt3aGlsZShJIT03NylJPT01PyhXayg3MSwxMCx0aGlzLGZ1bmN0aW9uKEwpe0wuZGlzcG9zZSgpfSksIXRoaXMud28mJnRoaXMuTCYmU2EodGhpcy5MKSx0aGlzLlQxPXRoaXMuTWg9dGhpcy5MPXRoaXMuSHE9bnVsbCxMRS5GLkguY2FsbCh0aGlzKSxJPTc3KTpJPT0xMj8odGhpcy5MeiYmdGhpcy5VQSgpLEk9MzMpOkk9PTMzP0k9dGhpcy5Kcj83Mzo1Okk9PTczJiYodGhpcy5Kci5kaXNwb3NlKCksZGVsZXRlIHRoaXMuSnIsST01KX19LHoucmVtb3ZlQ2hpbGQ9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyx5LEYpe3tGPTEzO3doaWxlKEYhPTMzKWlmKEY9PTY1KUY9TD85OjU7ZWxzZSBpZihGPT0yMylGPUk/NDY6ODQ7ZWxzZSBpZihGPT0xMClGPXkmJkk/ODY6MjM7ZWxzZSBpZihGPT00MSlZLlQxPW51bGwsTEUuRi5xaC5jYWxsKFksbnVsbCksRj0yMztlbHNlIGlmKEY9PTgyKUY9dHlwZW9mIEk9PT0ic3RyaW5nIj80NDo2NDtlbHNlIGlmKEY9PTI5KXI9ZixGPTY5O2Vsc2UgaWYoRj09NTkpdT10aGlzLk1oLFM9KHUhPT1udWxsJiZ5IGluIHU/dVt5XTp2b2lkIDApfHxudWxsLEY9MTU7ZWxzZXtpZihGPT04NCl0aHJvdyBFcnJvcigiQ2hpbGQgaXMgbm90IGluIHBhcmVudCBjb21wb25lbnQiKTtpZihGPT00MClGPXRoaXMuTWgmJnk/NTk6NDI7ZWxzZSBpZihGPT02NClGPShmPUkudVIpPzI5OjU2O2Vsc2UgaWYoRj09OSlJLlVBKCksSS5MJiZTYShJLkwpLEY9NTtlbHNle2lmKEY9PTYxKXRocm93IEVycm9yKCJVbmFibGUgdG8gc2V0IHBhcmVudCBjb21wb25lbnQiKTtpZihGPT03MylGPVk9PW51bGw/NjE6NDE7ZWxzZSBpZihGPT00MilTPW51bGwsRj0xNTtlbHNlIGlmKEY9PTg2KWM9dGhpcy5NaCx5IGluIGMmJmRlbGV0ZSBjW3ldLFooNywwLEksdGhpcy5IcSksRj02NTtlbHNlIGlmKEY9PTE1KUk9UyxGPTEwO2Vsc2UgaWYoRj09NSlZPUksRj03MztlbHNle2lmKEY9PTQ2KXJldHVybiBJO0Y9PTY5Pyh5PXIsRj00MCk6Rj09NDQ/KHI9SSxGPTY5KTpGPT0xMz9GPUk/ODI6MjM6Rj09NTYmJihwPUkucm8sWD1wLkVmKyI6IisocC5sUisrKS50b1N0cmluZygzNiksZj1JLnVSPVgsRj0yOSl9fX19fTt2YXIgdnYsaHA9e2J1dHRvbjoicHJlc3NlZCIsY2hlY2tib3g6ImNoZWNrZWQiLG1lbnVpdGVtOiJzZWxlY3RlZCIsbWVudWl0ZW1jaGVja2JveDooej0oaUIoNTgsaEspLGhLKS5wcm90b3R5cGUsImNoZWNrZWQiKSxtZW51aXRlbXJhZGlvOiJjaGVja2VkIixyYWRpbzoiY2hlY2tlZCIsdGFiOiJzZWxlY3RlZCIsdHJlZWl0ZW06InNlbGVjdGVkIn0sSWE9KGlCKDU3LChSMShkQywyLCgoei5QcT0oei5UeD1mdW5jdGlvbigpe3JldHVybiJnb29nLWNvbnRyb2wifSxmdW5jdGlvbihJKXtyZXR1cm4gSS52KCl9KSx6LlI5PWZ1bmN0aW9uKEksTCxZLGYscixwLHUsWCxjKXtjPTEwO3tYPTgzO3doaWxlKHRydWUpdHJ5e2lmKGM9PTMzKWJyZWFrO2Vsc2UgYz09Nzc/KFg9MyxyLmJsdXIoKSxjPTgyKTpjPT00Mj9jPVkhPUw/Mzg6MzM6Yz09Njk/KHAudGFiSW5kZXg9LTEscC5yZW1vdmVBdHRyaWJ1dGUoInRhYkluZGV4IiksYz0zMyk6Yz09Mzg/KHA9cixjPTg2KTpjPT04Nj9jPUw/NjQ6Njk6Yz09NzI/KGY9ci50YWJJbmRleCxZPXR5cGVvZiBmPT09Im51bWJlciImJmY+PTAmJmY8MzI3NjgsYz00Mik6Yz09ODI/KFg9ODMsYz0yOSk6Yz09NzE/KFg9ODMsYz04Mik6Yz09NjQ/KHAudGFiSW5kZXg9MCxjPTMzKTpjPT01Mj9jPSFMJiZaKDMxLDAsMzIsSSk/Nzc6NjA6Yz09MTY/KGUoMCwyNSwyLEksNCkmJkkuc2V0QWN0aXZlKGZhbHNlKSxlKDAsMjMsMixJLDMyKSYmaUIoMTcsOCwzMixJLGZhbHNlKSYmSS5oKDMyLGZhbHNlKSxjPTYwKTpjPT0yOT9jPVooMzAsMCwzMixJKT8xNjo2MDpjPT0xMD9jPUFDKDM5LDYsMiwzMixJKSYmKHI9SS5QcSgpKT81MjozMzpjPT02MCYmKGM9KFk9ci5oYXNBdHRyaWJ1dGUoInRhYmluZGV4IikpPzcyOjQyKX1jYXRjaChTKXtpZihYPT04Myl0aHJvdyBTO1g9PTMmJih1PVMsYz03MSl9fX0sei5qbz1mdW5jdGlvbihJLEwsWSxmLHIscCx1LFgpe3doaWxlKDA9PSFbXSlpZih2dnx8KHZ2PXsxOiJkaXNhYmxlZCIsODoic2VsZWN0ZWQiLDE2OiJjaGVja2VkIiw2NDoiZXhwYW5kZWQifSksW10pYnJlYWs7KHA9KFg9dnZbTF0sKHI9SS5nZXRBdHRyaWJ1dGUoInJvbGUiKXx8bnVsbCk/KHU9aHBbcl18fFgsZj1YPT0iY2hlY2tlZCJ8fFg9PSJzZWxlY3RlZCI/dTpYKTpmPVgsZikpJiZmTygiYWQiLDE2LCJoaWRkZW4iLGZhbHNlLHAsSSxZKX0seikuZno9ZnVuY3Rpb24oSSxMLFksZil7KGY9TC52P0wudigpOkwpJiYoWT9jdjpLTykoZixbSV0pfSx6Lmg9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSl7Zm9yKHU9ODI7dSE9NDspdT09MjA/KChwPXRoaXMuUzVbTF0pJiZ0aGlzLmZ6KHAsSSxZKSx0aGlzLmpvKGYsTCxZKSx1PTQpOnU9PTk4PyhyPXRoaXMuVHgoKSxyLnJlcGxhY2UoL1xceGEwfFxccy9nLCIgIiksdGhpcy5TNT17MTpyKyItZGlzYWJsZWQiLDI6cisiLWhvdmVyIiw0OnIrIi1hY3RpdmUiLDg6cisiLXNlbGVjdGVkIiwxNjpyKyItY2hlY2tlZCIsMzI6cisiLWZvY3VzZWQiLDY0OnIrIi1vcGVuIn0sdT0yMCk6dT09ODg/dT1mPzY1OjQ6dT09ODI/KGY9SS52KCksdT04OCk6dT09NjUmJih1PXRoaXMuUzU/MjA6OTgpfSwzNyksaEspLGRDKSkse30pO1IxKHVvLDIsKChkQy5wcm90b3R5cGUuVHg9ZnVuY3Rpb24oKXtyZXR1cm4iZ29vZy1idXR0b24ifSxkQy5wcm90b3R5cGUpLmpvPWZ1bmN0aW9uKEksTCxZKXtzd2l0Y2goTCl7Y2FzZSA4OmNhc2UgMTY6Zk8oImFkIiwxMCwiaGlkZGVuIixmYWxzZSwicHJlc3NlZCIsSSxZKTticmVhaztkZWZhdWx0OmNhc2UgNjQ6Y2FzZSAxOmRDLkYuam8uY2FsbCh0aGlzLEksTCxZKX19LDM4KSxMRSk7d2hpbGUoImciKWlmKCFbIiJdPT0oej11by5wcm90b3R5cGUsMCkpYnJlYWs7aWYodHlwZW9mIHVvIT09KHouaXNWaXNpYmxlPSgoKHouS2k9dHJ1ZSx6KS5QcT0oei5mej1mdW5jdGlvbihJLEwsWSl7e1k9NDt3aGlsZShZIT01MSlZPT02MT9ZPUwmJnRoaXMuRCYmWigxMSwwLEwsdGhpcy5EKT8zNjo1MTpZPT03Mz8odGhpcy5EP1MwKHRoaXMuRCwwLDI3LEwpPj0wfHx0aGlzLkQucHVzaChMKTp0aGlzLkQ9W0xdLHRoaXMuRy5meihMLHRoaXMsdHJ1ZSksWT01MSk6WT09OTA/KHRoaXMuRD1udWxsLFk9MTMpOlk9PTQ/WT1JPzg6NjE6WT09MTM/KHRoaXMuRy5meihMLHRoaXMsZmFsc2UpLFk9NTEpOlk9PTM2P1k9dGhpcy5ELmxlbmd0aD09MD85MDoxMzpZPT04JiYoWT1MPzczOjUxKX19LHouZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5XcX0sei5MaT0wLHouaXNFbmFibGVkPWZ1bmN0aW9uKCl7cmV0dXJuIVooMzUsMCwxLHRoaXMpfSx6LmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuIFooMzIsMCw0LHRoaXMpfSx6Lkg9ZnVuY3Rpb24oSSl7e0k9Nzg7d2hpbGUoSSE9NjkpST09Nzg/KHVvLkYuSC5jYWxsKHRoaXMpLEk9MjYpOkk9PTM4PyhkZWxldGUgdGhpcy5HLHRoaXMuRD1udWxsLEk9NjkpOkk9PTkyPyh0aGlzLlFlLmRpc3Bvc2UoKSxkZWxldGUgdGhpcy5RZSxJPTM4KTpJPT0yNiYmKEk9dGhpcy5RZT85MjozOCl9fSx6LlJsPSh6Lmo1PTI1NSwzOSksKHouRD1udWxsLHouaD1mdW5jdGlvbihJLEwsWSxmLHIscCl7Zm9yKHA9NTQ7cCE9NDA7KXA9PTkwP3A9QUMoMzksNywyLEksdGhpcykmJkwhPVooMzQsMCxJLHRoaXMpPzY5OjQwOnA9PTY5Pyh0aGlzLkcuaCh0aGlzLEksTCksdGhpcy5XcT1MP3RoaXMuV3F8STp0aGlzLldxJn5JLHA9NDApOnA9PTc2P3A9ZiYmdHlwZW9mIGYuaXNFbmFibGVkPT0iZnVuY3Rpb24iJiYhZi5pc0VuYWJsZWQoKXx8IWlCKDE1LDgsMSx0aGlzLCFyKT80MDoyNjpwPT0yOT8ocj0hTCxmPXRoaXMuZ2V0UGFyZW50KCkscD03Nik6cD09OTI/KHRoaXMuc2V0QWN0aXZlKGZhbHNlKSxpQigxNiw4LDIsdGhpcyxmYWxzZSkmJnRoaXMuaCgyLGZhbHNlKSxwPTYpOnA9PTY/KHRoaXMuaXNWaXNpYmxlKCkmJnRoaXMuRy5SOSh0aGlzLHIpLHRoaXMuaCgxLCFyLHRydWUpLHA9NDApOnA9PTI2P3A9cj82OjkyOnA9PTU0JiYocD1ZfHxJIT0xPzkwOjI5KX0seikuV3E9KHouc2V0QWN0aXZlPWZ1bmN0aW9uKEkpe2lCKDE4LDgsNCx0aGlzLEkpJiZ0aGlzLmgoNCxJKX0sMCksZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5HLlBxKHRoaXMpfSkseikuVUE9ZnVuY3Rpb24oKXt1by5GLlVBLmNhbGwodGhpcyk7d2hpbGUoe30paWYodGhpcy5RZSYmdGhpcy5RZS5kZXRhY2goKSx0cnVlKWJyZWFrO3RoaXMuaXNWaXNpYmxlKCkmJnRoaXMuaXNFbmFibGVkKCkmJnRoaXMuRy5SOSh0aGlzLGZhbHNlKX0sZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LaX0pLCJmdW5jdGlvbiIpKXRocm93IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCBjbGFzcyAiK3VvKTt3aGlsZSh0eXBlb2YgaEshPT0iZnVuY3Rpb24iKXt0aHJvdyBFcnJvcigiSW52YWxpZCByZW5kZXJlciBjbGFzcyAiK2hLKTtpZihbXSlicmVha312YXIgRVE9aUIoNSx1byksQ0U9KFBTKCgoUjEobG8sKCgoaUIoNTYsKFIxKFh0LDIsKFBTKDU2LDYsImdvb2ctY29udHJvbCIsKElhW0VRXT1oSyxmdW5jdGlvbigpe3JldHVybiBuZXcgdW8obnVsbCl9KSksNSksZEMpLFh0KSksWHQpLnByb3RvdHlwZS5oPWZ1bmN0aW9uKEksTCxZLGYscil7Zm9yKHI9MztyIT0zMzspcj09Mz8oWHQuRi5oLmNhbGwodGhpcyxJLEwsWSksZj1JLnYoKSxyPTUpOnI9PTk/KGYuZGlzYWJsZWQ9WSxyPTMzKTpyPT01JiYocj1mJiZMPT0xPzk6MzMpfSxYdCkucHJvdG90eXBlLmpvPWZ1bmN0aW9uKCl7fSxYdC5wcm90b3R5cGUuUjk9ZnVuY3Rpb24oKXt9LDIpLDM5LHVvKSxsby5wcm90b3R5cGUpLkg9ZnVuY3Rpb24oKXtkZWxldGUgKGxvLkYuSC5jYWxsKHRoaXMpLHRoaXMpLkhLLGRlbGV0ZSB0aGlzLk1pfSw1NiksNSwiZ29vZy1idXR0b24iLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBsbyhudWxsKX0pLFUpLnJlcXVlc3RJZGxlQ2FsbGJhY2s/ZnVuY3Rpb24oSSl7cmVxdWVzdElkbGVDYWxsYmFjayhmdW5jdGlvbigpe0koKX0se3RpbWVvdXQ6NH0pfTpVLnNldEltbWVkaWF0ZT9mdW5jdGlvbihJKXtzZXRJbW1lZGlhdGUoSSl9OmZ1bmN0aW9uKEkpe3NldFRpbWVvdXQoSSwwKX0sYTEsSFM9e3Bhc3NpdmU6dHJ1ZSxjYXB0dXJlOnRydWV9LG5FPWdQKFsiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qcy9iZy8iLCIiXSwzKSxBcD1TdHJpbmcuZnJvbUNoYXJDb2RlKDEwNSwxMTAsMTE2LDEwMSwxMDMsNjcsMTA0LDEwMSw5OSwxMDcsNjYsMTIxLDExMiw5NywxMTUsMTE1KSxvMT17fSxVdz1bXSxQaz1bXSwkOD1bXSxyYT1bXSxkUD0oZy5wcm90b3R5cGUuV0s9dm9pZCAwLChnLnByb3RvdHlwZS5aej0hKGcucHJvdG90eXBlLlhtPSJ0b1N0cmluZyIsMSksZy5wcm90b3R5cGUpLnVnPXZvaWQgMCxbXSkscUI9W10sTWY9W10saXg9W10sdUI9W10sTzg9ZnVuY3Rpb24oSSxMKXtyZXR1cm4oTD1mTygiYWQiLDksImVycm9yIikpJiZJLmV2YWwoTC5jcmVhdGVTY3JpcHQoIjEiKSk9PT0xP2Z1bmN0aW9uKFkpe3JldHVybiBMLmNyZWF0ZVNjcmlwdChZKX06ZnVuY3Rpb24oWSl7cmV0dXJuIiIrWX19KFUpLEpwPWZ1bmN0aW9uKEkpe3JldHVybihJPWZPKCJhZCIsMzMsImVycm9yIikpP2Z1bmN0aW9uKEwpe3JldHVybiBJLmNyZWF0ZVNjcmlwdFVSTChMKX06ZnVuY3Rpb24oTCl7cmV0dXJuIEx9fSgpLGVhPWZ1bmN0aW9uKEkpe3JldHVybihJPWZPKCJhZCIsMjUsImVycm9yIikpP2Z1bmN0aW9uKEwpe3JldHVybiBJLmNyZWF0ZUhUTUwoTCl9OmZ1bmN0aW9uKEwpe3JldHVybiBMfX0oKSxwRT0oKHo9KCgoKHk4LGZ1bmN0aW9uKCl7fSkoWTgpLGdDLEZqLHV4LGtWLGZ1bmN0aW9uKCl7fSkodmspLGphLEpwLGZ1bmN0aW9uKCl7fSkoZWEpLGcpLnByb3RvdHlwZSx6LlRYPWZ1bmN0aW9uKEksTCxZLGYscixwKXtyZXR1cm4gVi5jYWxsKHRoaXMsNyxJLEwsWSxmLHIscCl9LHoucGk9ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYKXtyZXR1cm4gRmYuY2FsbCh0aGlzLEksZixZLHIsOCxMLHUscCxYKX0seikubUQ9MCxvMSkuY29uc3RydWN0b3IsVmM9KCh6LkcxPWZ1bmN0aW9uKCl7cmV0dXJuIFhmLmNhbGwodGhpcyx0cnVlLDE2KX0sZy5wcm90b3R5cGUuQj0oei51PSh3aW5kb3cucGVyZm9ybWFuY2V8fHt9KS5ub3c/ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5QaSt3aW5kb3cucGVyZm9ybWFuY2Uubm93KCl9OmZ1bmN0aW9uKCl7cmV0dXJuK25ldyBEYXRlfSx6Lm5pPWZ1bmN0aW9uKCl7cmV0dXJuIHdQLmNhbGwodGhpcywwLDEwKX0sImNyZWF0ZSIpLGcpLnByb3RvdHlwZS56eD0wLHouVlc9KHouSTk9ZnVuY3Rpb24oSSxMLFksZixyKXtpZih0cnVlKXJldHVybiBxLmNhbGwodGhpcyw1NixJLEwsWSxmLHIpfSxmdW5jdGlvbihJLEwsWSxmLHIpe3JldHVybiB3Qy5jYWxsKHRoaXMsMTQsSSxMLFksZixyKX0pLHZvaWQgMCksemM9KCgoKHo9Zy5wcm90b3R5cGUsei5qPWZ1bmN0aW9uKEksTCl7cmV0dXJuIFZjPWZ1bmN0aW9uKCl7cmV0dXJuIEw9PUk/LTM1Oi0xN30sST17fSxMPXt9LGZ1bmN0aW9uKFksZixyLHAsdSxYLGMsUyx5LEYsRyxBLFEsRCxXLGIsYSx3LHYsRSxtLFlLLEdsLGNTLG4sc3csbEIsaCxXUyxILGZFLFAsRDQsZTAsdCxwTyxPLHFfLFIsbkgsSV8semwsQixMSCl7Qj0oUj0zMywzMSksTz11bmRlZmluZWQ7e25IPWZhbHNlO3doaWxlKHRydWUhPSFbXSl0cnl7aWYoUj09NDApYnJlYWs7ZWxzZSBpZihSPT00NylCPTIyLHRLKDI3Mix0aGlzLDMwMDAxLDUwOSksUj03MjtlbHNlIGlmKFI9PTEzKU8hPT11bmRlZmluZWQ/KFI9TyxPPXVuZGVmaW5lZCk6Uj00MDtlbHNlIGlmKFI9PTk5KVI9UD09dUI/NDI6OTA7ZWxzZSBpZihSPT00NSlSPVA9PWl4PzUxOjk5O2Vsc2UgaWYoUj09NTQpemw9SGsoNTA5LDI5NyxZWzFdLHRoaXMsMzAwMDEpLE89NjQsUj03MjtlbHNlIGlmKFI9PTI0KUI9MjIsUD1ZWzBdLFI9NDU7ZWxzZSBpZihSPT0yNilSPW4/MjozMTtlbHNlIGlmKFI9PTg3KUI9OSx2PWwodGhpcywzODEpfHx7fSxEPXYudHwwLFI9ODM7ZWxzZXtpZihSPT02NClyZXR1cm4gemw7aWYoUj09OTApUj1QPT0kOD83MDozODtlbHNlIGlmKFI9PTIyKVI9Yi5sZW5ndGg+MUU2PzQ5Ojg5O2Vsc2UgaWYoUj09MzkpUj1ZWzRdPzc3OjMyO2Vsc2UgaWYoUj09NilSPU8hPT11bmRlZmluZWQ/NzI6MjU7ZWxzZSBpZihSPT03NClRKyssUj0yODtlbHNlIGlmKFI9PTE1KUI9MTMsdT1sKHRoaXMsMzU3KSx1Lmxlbmd0aD4wJiZKSygyNjIsdGhpcyxkKDIsdS5sZW5ndGgpLmNvbmNhdCh1KSwxNDcpLEpLKDI2Mix0aGlzLGQoMSx0aGlzLmkrMT4+MSksMjQ0KSxtdSgyNjIsdGhpcyxkKDEsdGhpc1tQa10ubGVuZ3RoKSkscE89dGhpcy5rYT9rKHRoaXMsNDIxKTpsKHRoaXMsMzUwKSxwTy5sZW5ndGg+MCYmbXUoMTIsdGhpcyxkKDIscE8ubGVuZ3RoKS5jb25jYXQocE8pLDIyNykscD1sKHRoaXMsMTIpLHAubGVuZ3RoPjQmJkpLKDI2Mix0aGlzLGQoMixwLmxlbmd0aCkuY29uY2F0KHApLDIyNiksSD0wLEgtPShrKHRoaXMsMjYyKS5sZW5ndGh8MCkrNSxiPWsodGhpcywxOTUpLEgrPShlMD1sKHRoaXMsMzUzKSwoZTB8MjA0NyktIC0xKyh+ZTBeMjA0NykpLGIubGVuZ3RoPjQmJihILT0oYi5sZW5ndGh8MCkrMyksSD4wJiZtdSgyNjIsdGhpcyxkKDIsSCkuY29uY2F0KFk4KEgpKSwxNTApLFI9OTY7ZWxzZSBpZihSPT00MilEPTAsdj17fSxSPTg3O2Vsc2UgaWYoUj09MzApQj0yMixuTyhMSCwxNywzNTcsdGhpcyksTz00MCxSPTcyO2Vsc2UgaWYoUj09NzkpUj1QPT1xQj8zNjo3MjtlbHNlIGlmKFI9PTUxKXc9WVsxXSxSPTIzO2Vsc2UgaWYoUj09MzEpbj0iIixRPTAsUj04MjtlbHNle2lmKFI9PTg1fHxSPT01NSlyZXR1cm4gemw7aWYoUj09OTUpSGsoNTA5LDI5NyxZWzFdLHRoaXMsWVsyXSksUj03MjtlbHNlIGlmKFI9PTMzKWxCPUwsTD1JLFI9MjQ7ZWxzZSBpZihSPT04MylCPTIyLEdsPVskOCxZLHRoaXMuRzEoKV0sbT1bUGssWV0sUj0zOTtlbHNlIGlmKFI9PTIpbj0iJCIrbixSPTQ0O2Vsc2UgaWYoUj09NylSPVA9PVV3Pzk1OjI5O2Vsc2UgaWYoUj09NjcpZj1XW1FdW3RoaXMuWG1dKDE2KSxmLmxlbmd0aD09MSYmKGY9IjAiK2YpLG4rPWYsUj03NDtlbHNlIGlmKFI9PTcyKUI9MzEsTD1sQixSPTEzO2Vsc2UgaWYoUj09MTgpemw9e0R6OkdsLE1lOm0sdGltZW91dDpELGZpOmZhbHNlLGU1OjB9LE89NTUsUj03MjtlbHNlIGlmKFI9PTk2KVI9Yi5sZW5ndGg+ND8yMjo5ODtlbHNlIGlmKFI9PTM4KVI9UD09UGs/OTQ6NztlbHNlIGlmKFI9PTQ0KUE9bixsKHRoaXMsMjYyKS5sZW5ndGg9ci5zaGlmdCgpLGwodGhpcyw0ODgpLmxlbmd0aD1yLnNoaWZ0KCksQyh0aGlzLDE5NSkubGVuZ3RoPXIuc2hpZnQoKSxrKHRoaXMsMTIpLmxlbmd0aD1yLnNoaWZ0KCksbCh0aGlzLDIzNikubGVuZ3RoPXIuc2hpZnQoKSxrKHRoaXMsMzUwKS5sZW5ndGg9ci5zaGlmdCgpLGwodGhpcyw0NjQpWzBdPXIuc2hpZnQoKSxDKHRoaXMsNDIxKS5sZW5ndGg9ci5zaGlmdCgpLHpsPUEsTz04NSxSPTcyO2Vsc2UgaWYoUj09ODgpUj04NjtlbHNlIGlmKFI9PTI4KVI9UTxXLmxlbmd0aD82Nzo0NDtlbHNlIGlmKFI9PTIzKUI9MjQsdGhpcy50cj1BSyg3LDUsMCwyNTUsYXRvYih3KSksdGhpcy5QPXRoaXMudHIubGVuZ3RoPDwzLHgoNDgsdGhpcyxbMCwwLDBdKSxSPTQ3O2Vsc2UgaWYoUj09MjEpQj03MyxjUygpLFI9NTM7ZWxzZSBpZihSPT00OSliPWIuc2xpY2UoMCwxRTYpLEpLKDI2Mix0aGlzLFtdLDEwMiksSksoMjYyLHRoaXMsW10sMTM1KSxSPTg5O2Vsc2UgaWYoUj09MylFLmxlbmd0aD0wLFI9NzI7ZWxzZSBpZihSPT02NSl0aGlzLlQucHVzaChtKSx0aGlzLlQucHVzaChHbCksTz00MCxSPTcyO2Vsc2UgaWYoUj09ODkpbXUoMjYyLHRoaXMsZCgyLGIubGVuZ3RoKS5jb25jYXQoYiksNSksUj05ODtlbHNlIGlmKFI9PTU3KWNTPXkudmFsdWUsUj0yMTtlbHNlIGlmKFI9PTI1KUI9MjIsVz1ZOCgyKS5jb25jYXQobCh0aGlzLDI2MikpLFdbMV09KGE9V1swXSwxNTktKGEmMTU5KSt+KGEmMTU5KS1+YSksV1szXT0oZkU9V1sxXSxEND1zd1swXSwtKGZFfDApKyhENHwwKSsyKihmRSZ+RDQpKSxXWzRdPShHPVdbMV0sYz1zd1sxXSwoR3wwKS0oY3wwKSstMi0yKihHfH5jKSksbj10aGlzLmJSKFcpLFI9MjY7ZWxzZSBpZihSPT0zNil7aWYoRT1sKHRoaXMsMTYxKSxYPXR5cGVvZiBTeW1ib2whPSJ1bmRlZmluZWQiJiZTeW1ib2wuaXRlcmF0b3ImJkVbU3ltYm9sLml0ZXJhdG9yXSl0PVguY2FsbChFKTtlbHNlIGlmKHR5cGVvZiBFLmxlbmd0aD09Im51bWJlciIpdD17bmV4dDpBQygzOSwyNCwwLEUpfTtlbHNlIHRocm93IEVycm9yKFN0cmluZyhFKSsiIGlzIG5vdCBhbiBpdGVyYWJsZSBvciBBcnJheUxpa2UiKTtZSz10LHk9WUsubmV4dCgpLFI9ODh9ZWxzZSBpZihSPT05NClyPVlbMV1bMV0sc3c9ZCgyLChDKHRoaXMsMjYyKS5sZW5ndGh8MCkrMiksV1M9dGhpcy5VLHRoaXMuVT10aGlzLFI9MTU7ZWxzZSBpZihSPT02OClSPUY/MTg6NjU7ZWxzZSBpZihSPT05OClCPTIyLHRoaXMuVT1XUyxSPTY7ZWxzZSBpZihSPT04NilSPXkuZG9uZT8zOjU3O2Vsc2UgaWYoUj09ODIpUj0yODtlbHNlIGlmKFI9PTMyKXRoaXMuVC5wdXNoKG0pLHRoaXMuVC5wdXNoKEdsKSxPPTQwLFI9NzI7ZWxzZSBpZihSPT03Nyl7Zm9yKGggaW4gRj1mYWxzZSx2KWlmKGghPT0idCImJk9iamVjdC5oYXNPd24odixoKSl7Rj10cnVlO2JyZWFrfVI9Njh9ZWxzZSBpZihSPT0xMClCPTIyLFI9NTM7ZWxzZSBpZihSPT03MClTPVlbMV0sU1sxXS5wdXNoKGsodGhpcywyNjIpLmxlbmd0aCxsKHRoaXMsNDg4KS5sZW5ndGgsayh0aGlzLDE5NSkubGVuZ3RoLGwodGhpcywxMikubGVuZ3RoLEModGhpcywyMzYpLmxlbmd0aCxrKHRoaXMsMzUwKS5sZW5ndGgsayh0aGlzLDQ2NClbMF0sbCh0aGlzLDQyMSkubGVuZ3RoKSxNKDI5Nyx0aGlzLFNbMl0pLHRoaXMuU1s0MTRdJiZIayg1MDksMjk3LGwodGhpcyw0MTQpLHRoaXMsMzAwMDEpLFI9NzI7ZWxzZSBpZihSPT0yOSlSPVA9PU1mPzU0Ojc5O2Vsc2UgaWYoUj09NTMpeT1ZSy5uZXh0KCksUj04NjtlbHNlIGlmKFI9PTU4KXRocm93IElfO319fWNhdGNoKGpTKXtpZihCPT0oSV89alMsMzEpKXRocm93IGpTO0I9PTk/KE89NTgsUj04Myk6Qj09NzM/KHFfPWpTLFI9MTApOkI9PTI0PyhMSD1qUyxSPTMwKTpCPT0xMz8oTz01OCxSPTk4KTpCPT0yMiYmKE89NTgsUj03Mil9fX19KCkseikua0k9ZnVuY3Rpb24oSSl7cmV0dXJuIGlCLmNhbGwodGhpcywzNixJKX0sei5iUj1mdW5jdGlvbihJKXtyZXR1cm4gWi5jYWxsKHRoaXMsMjAsSSl9LHouQ2k9ZnVuY3Rpb24oKXtyZXR1cm4gd1AuY2FsbCh0aGlzLDAsMjkpfSx6KS5vbD0wLHopLk9pPTAsLy4vKTt6LnoxPWZ1bmN0aW9uKCl7cmV0dXJuIHljLmNhbGwodGhpcyw5OSwzOCl9O3ZhciB4VixLSD0oZy5wcm90b3R5cGVbcmFdPVswLDAsMSwxLDAsMSwxXSxpeCkucG9wLmJpbmQoZy5wcm90b3R5cGVbJDhdKTsoYTE9KHhWPXdQKDAsKHpjW2cucHJvdG90eXBlLlhtXT1LSCw1OSksZy5wcm90b3R5cGUuQix7Z2V0OktIfSksZy5wcm90b3R5cGUuaVI9dm9pZCAwLFUudHJheXJpZGV8fChVLnRyYXlyaWRlPXt9KSksYTEpLm0+NDB8fChhMS5tPTQxLGExLmFkPUd5LGExLmE9UVMpLGExLmxydl89ZnVuY3Rpb24oSSxMLFksZixyLHAsdSxYLGMsUyl7cmV0dXJuW2Z1bmN0aW9uKHkpe3JldHVybiBnUChmYWxzZSw0OCxTLHkpfSwoUz1uZXcgZyhJLFgsdSxwLGMscixmLEwpLGZ1bmN0aW9uKHkpe1MuejEoeSl9KV19O30pLmNhbGwodGhpcyk7J10uam9pbignXG4nKSkpO30pLmNhbGwodGhpcyk7"}},"time_used":13,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":11,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/img-bg4.jpg","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.429Z","timestamp":1785159268429,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/img-bg4.jpg HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"27db-66136805-caca34c395e87f98;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 10203\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":10203,"size_decoded":10531,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 1349x306, components 3","md5":"c2aca22ddd87cb2d35d50a585a692db5","sha1":"d18d6d19f7c616951ae09df6bf774f548da6feb5","sha256":"c82ed042a33e7711013cf60e12b7b0d2defa7bf0fe511f7fcc7b6c217ac2929f","sha512":"765f9868c1a8b66068fecab6aedb2d3cb626a6723880e88f2011aef7cc246485f6d690ab7a78c5c9b77980c74395146e0c8223a4692fde3f11e86b7030b3f817","ssdeep":"96:jY2mUNNAYgK75RAagon6U3Qfs+r6L89Ow4lbqKNRI78d:j3Ee7fAag1U3Qfs+pOJqKNKC","tlshash":"932238bdb023cb11ee83897521f713c26e98fc62a595c70758f5e951a9d02b8a434bfc","first_seen":"2026-07-27T07:08:39.424615Z","last_seen":"2026-07-27T13:35:41.672876Z","times_seen":3,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEyQzgzQzRBMUJBMjExRUNCOTg1OTRGRjZERkMyQzRCIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEyQzgzQzRCMUJBMjExRUNCOTg1OTRGRjZERkMyQzRCIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTJDODNDNDgxQkEyMTFFQ0I5ODU5NEZGNkRGQzJDNEIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTJDODNDNDkxQkEyMTFFQ0I5ODU5NEZGNkRGQzJDNEIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAGBAQEBQQGBQUGCQYFBgkLCAYG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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/5994.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.640Z","timestamp":1785159268640,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/5994.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 3014\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 01:23:06 GMT\r\nlast-modified: Tue, 19 Oct 2021 05:35:35 GMT\r\netag: \"570db8310832b88c50ab986a819a0764\"\r\ncache-control: max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 43883\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: 1rPtozLbPEO58Q6WRc0NjH59MQjlDTiNjM7z3gJVuV5sngzOM_72Rg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.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"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":3014,"size_decoded":3523,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"570db8310832b88c50ab986a819a0764","sha1":"d4abd6f12354fb40df26c3aa51a1de62998d2e12","sha256":"a8f6ffea983f46e8f2b83abe8561938c10de36484ca79ca5432683f4c2634ea6","sha512":"a772dd550924c8ed53c12286a3a7572694110c47645a13904184e5591ac35dd0442a239f7d6a4d918fc1717e7a7f90f4e704b5cce2a7cfc461b6eb882067ef43","ssdeep":"","tlshash":"52516b4366536127d84a8b1e0cf0684aa0a78c8b3573d1067c1d7cec87fc251de2828d","first_seen":"2023-05-08T12:03:54Z","last_seen":"2026-07-29T06:14:00.412474Z","times_seen":1614,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAMAUExURUxpcdceB70dCcIeCccfCdIgCv8FAFwECv8cAAAAAP7//xIUG84dB5kDACASEcEdCjQPDeMiCQAWKYsaDEYUD4MWCQUSF58bC5kaC7oZBm0RCkgVEH4VCsYbBrMdCrAUBHgVCU8AAJcPBmUaEYJPQIEMB44XCdkkDHwMB+P09IQkGakbCq8cCswUA6MUA7seCqwZB1kaEcgcB7GJQ+/8+8PPzmIQCsAfCnpZVpQfEvX28/////SkKegxGe+KFOwsEvOmL+cuFfHy7/OiKPOnM+o5Iuk1HPOqOfOlLOs/KPOuROoqEPT08vkjCN4fB+xELfX08PTVo/GgJswhC/X39/XPlvIiCPO3XfOrPe5JM+xNOe2HEvSwSv+vLv+qJ/XKieUsFAAAAPUiB+0hB+c3H+ggB/SzT/OgIvW9ZvOdG/Q4H/PEfeUoD/GjK/T9//ExF/TIhObn4/ilKfupKumBE/OnN/TDdvr69/Pbt/79+8kiD90lDvrpzPS1VPc/JvT5+5JbN/biwvS/buigOKp+PZM3KggHCKMlFqUSBf8lCPVTPvStP7yOPY9ANPfw4bYQAPyjIhsWD/Pr246Pjv736I1pXO2ECr3FwbYcCeYXAe+RHdwyIKovJP62RfLkzeuLG6COiUZGRJ9vOaSko7u2sP7w1v/pw9jc2f7DZgECBgAABPbbssUQAa0iFtbj4bRDOvXNj+03HfWtMvnYp/xKMaAsIYllNtSdNu6bI7Suo7aIO1dXV7y8uZiYl83Rz3RcNlI6GPybG+l+DIQRB4l/fPcsEJYpG/1ZQftYQZxFOfW4a5NRSj4+Pf+8UtMXA//NdkUxFPTy6O66c5VuaeqOLLSdmKJ4cv+xOcREO5d0Pv9XPrQqHd6sWmtsazEoHe3Eh5h7Vf7PfvCuT+ErFptmFtyVKI1fGr1+IceGIf7WmZmDX3xCLN7cxolORcSROqyzs14vKGUXEIphXJ5xRu3nzddIPMcyJdNHPL84Lr2aWsCBImVGFeWyYqx0HP/XiczCnItVZDwAAADHdFJOUwD+/v7+/gICAQH+EvwEJ/wy/QurPXYb0MLPe0uM7OzGaJD1b/44l/5c/v7Z5fyl84Fe9f3+/f3c/en//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v////////////////////////////////////////////////////////////4MkkDGAAAHkUlEQVRYw+2Xd1hT9xrHT0IGGYcAsmXVvVq7731yEkJOUCIZDUlIvIwYEiIz7A2ylxRkC1hAKyigyHWhuK2r7t1pp21v29vW3vbufd9zGIIg5fo89/7V75PnyXNy8n5+7/otBPlZ/1uxmKRYT2TMRBkPHxjof0lhoeQXx87eycnejkM+oMzZD06Mbef7jLsXl6JUUrhe7s842xN+MGc9uouzD1en0FmUFDqdorToFKbr7s52gJhFIDCKyyIvnUlJ41FtaBpQrg2Vx1WaTM8vsiNfzywUQZ29FGYu1YaeIJOJRpSQR7ehcs2K5z0dEfSn7O19dGYalZ4gEgnFYiFIDN9ikSxBQ9XoTMudEMZM9gxkCXcjvY0uExHGq8dEYMSiBE0bRUH3nSkRKOJcV1enEcnAHOxWkYqCDwEhEQNPV3k+nkDYn+tpuaBMEo5YrxnVKpJhTEqo/Gb7Cxc8H5cHFJnffmFwx85/L+DFRRHWr4yJZETF8b6p2W+IKLruMT2BiThp2r+7lb17d3DLngLS/FejIhkFew4FGtTDhjJe3tzpCEwGZ4Wi7sfmu3dvh3z926GDhHXoqAjGwaH3IiTDW9Pra+Zt9HaxZU5TgDkKTd2d/M2bz5TG/wsIoaHV1RcvXnzzzYvV1aGhBzvei1BvSU9Pf+PBWaViztRiQgB0B6ryTn6Yn9+Zu7c//aTj/erQP777a9C7fw6tfv8vhwj7ML+wN47uoVkoc6e0JANxU1Dz2n/M9wOd2aq/8Un5paLfl71QU3O0bHvRpUsL9kdvBXsAQA54ClcmY6oDShuR5UrjljCCkK6P+esHGzo733knArS/tKY0lbT3C6vfnptEdZjiApEBXp5YVJuSsRn+ll4ao7+2PihobWBGgL+/1ZpqSLUOh5GA1KI8EZ32aBZYCMfbQpUZk4Z6LxMAfWaMfsP68KBXAwMBIJVarVKBQL2FCK+0XGRMoJpXukxyAUXmKrkamTFuz/GvAXA5uWQEQHgQIPX3l0gEAolEsgVS8GAoySijURyem9QLKOJpggiEcbnbdm7dfHlvZuYEgD8MDwCQGlJQdi9OLFpMUyyaBIAa6Hgyo3DVZy2bSu8HJ8ePA4gQIAYBfMCF6LC0otf2CSEGkytiOzEFjissPJl4dVRc7bchwSHr4kv0G8YARBIEktjYaIIQW1obFyUUy6hmbw7CmlBEl5VKmsgojCq4d2QnAcg8cCAmfCwEqVUiXbc3EAhqQ01HQZTQKONZeHYTsshE7GgUjUi8etWa11qKAZCZj2E7xnMglUYfgGdwQA0RrIlaLRbRlBr7yQANRSMbByQn52AYlrx2LAeScHjE1kdL1YbtfwIPAECh20/nQVRBBxlCZn7zjuKYoKBX15IAQcCB/E35GdESSf3h8gLwQDbFAxeeMpcIYd93f9gNgE9v9OnDw0caiQhBEqu2GgwCtUQdAVUgATYTcwBV8Hagicg+2EEATp36oE9/P5z0IIDsxIi0f57+Kk2tNhztiIMq2FhWTqwClNTVDGUUxg215gPg44bIhkP3r42HAHPhy5v9uz43DEtSD5cnEX2gW86cCIC5pOMlGIUwmYqzwYPTkf27GsqujXgQ4J/2xemK/v6KL9Mghv1FnwmNMKEnzyYU8bXQFov25d1pJgG3TzX0R0Ye6gzwzwiQRKd+0bCrv+Lm38BeYo2A6Syjc3XzJ7UyUQbopCTathFA/I1/lJ26eTooPrurK/vjzs8/+vtvvkozgL3Eajh6L0lmo8y1n7wgEJOBmpDU1tNcvJts5Zi+vs6+RjZRfwxPro+ISJOoBVJopfoHlefzqLAk2T6yJzxn0dDPV7Y2d2UH700GgP5+PM4+/jqom50YMmxVCyTRsbHWgNTDF87ncs3zH1nZWbaOK8xt5ytfysHxTV3BmSUl+hIVjh2LBH2UpUqMj/WPjg1aV9zY2PhtubnN5M2xZU3Zlsy0vLZWDOdrC7WNe/X6rkIc+7C/oqLiag6uvbU2NiNYnlhYqGUPVkIKp25OLAbqauINbMNwOUirDUkulOPsHsKDJgxXJSYHbUqUq1RyHDtSRTMtd5y6wcK6zHWwKV/Kl5MEeaNWLsdzmhoqPiR+0TbeKlSRbwoX1Mmm2RbIIDzMi6vOjbhAIOR8Nh87eRzTZgFCS4L5ONZ91kE3/f7MgnY00c9+P0aQa1NOpuDd5/CUFPmYcOzkDxSFGzr9CYHFcHRT0H9ofUi4euzEsddPHLuaNW4/+LunN7pybJmPO6Bx3BSUl7/HVPjI34839Tad6z3RPYrEsV7C3uXxRzUm4jhHZ3m5KTGLtODzU/gpvfwUORk/rsJal7Wb3DgzHfXglQd3Y9UvBzH+SDnlWVlEOsEcx15smqegeDJnPipCJp18FO3LTiwFBP4weaocduuCAYX7XMT2pw6rDAT1/YVuoLZ7KTtHhZNSZbETX2qpavdydpzNYRc8dPR1v15Xvu3ki2xSiYNHrlQNuDtzZnHSHT/r2z/rM+9s7dtv9fS89faVZfN8nl0IQ6OsWV8XiMnOWbjE4ymQx5KF5I0BZT3xhQVWXfQJLj4sJjqqJ7w1/az/m/4Dvg7lpGWpzr0AAAAASUVORK5CYII="}},"time_used":35,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":30,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":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.152.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/6jePbqXJhe8","date":"2026-07-27T13:34:28.826Z","timestamp":1785159268826,"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/6jePbqXJhe8\r\nCookie: __Secure-YNID=20.YT=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; YSC=KVevwPvGbos; __Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; VISITOR_INFO1_LIVE=mydA6aM0K4I; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%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:01:30 GMT\r\nexpires: Sat, 24 Jul 2027 13:01:30 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: 261178\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-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":""}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/start-ico2.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.943Z","timestamp":1785159267943,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/start-ico2.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"a04-66136805-61ea8ca7f963c1f3;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2564\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2564,"size_decoded":2889,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"ba470bd1ea60318a210141a7570c1460","sha1":"264b0e70185106ab1c03d0fd8c37fd908a8465e9","sha256":"910dfd6db3ac6767e4a72c277d5a48c87303bff590a77e4b87b3ea6ba8b79813","sha512":"1d21edd8bec1a1a3e7be88b43a4b96794e9df505ba2631bfd0859a3a08a569cf2b35e8f87ab8929b49539efef31aad9dd3f1862ce68c873791605625a4bc25eb","ssdeep":"","tlshash":"f3510a4ee946b90196adc2c22cfa809bf63205d7cbd661217d8a829b78d045f402d5e7","first_seen":"2026-07-27T07:08:39.240694Z","last_seen":"2026-07-27T13:35:41.600415Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NzlENDA2RkQxQkEzMTFFQ0JDMUY5REQ4NzdBRjBGRDIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzlENDA2RkUxQkEzMTFFQ0JDMUY5REQ4NzdBRjBGRDIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3OUQ0MDZGQjFCQTMxMUVDQkMxRjlERDg3N0FGMEZEMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3OUQ0MDZGQzFCQTMxMUVDQkMxRjlERDg3N0FGMEZEMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PrwncRsAAAZ4SURBVHja7JwJbBRV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"}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":38,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/start-ico3.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.946Z","timestamp":1785159267946,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/start-ico3.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"bff-66136805-8762669bb04e0e18;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3071\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3071,"size_decoded":3396,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"d934ef50e4361023d681b43dc8db1791","sha1":"9598c6ba34c0933f429d292f1a4bbed606f94224","sha256":"c03080cedf76bb333ce6e24b84270d011e3181bc86fdf56125d80428079d3bfc","sha512":"a5c07a04ca9a2b7f623d7e765ccaf5febe05a76a4c9731775e5c740817ac2a9c5d6c907d18073a3354e618a0d8f8c9b04069abd20280c01e9cba4946eb00a8ac","ssdeep":"","tlshash":"1b517d80d7d38cc09eb3fea43cd5912365215a80c8ccc247a26bd27798692ee44da0e7","first_seen":"2026-07-27T07:08:39.37321Z","last_seen":"2026-07-27T13:35:41.609297Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODBEQzkxMjIxQkEzMTFFQzlEREJEQUU5MjhFNjUwRTQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODBEQzkxMjMxQkEzMTFFQzlEREJEQUU5MjhFNjUwRTQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MERDOTEyMDFCQTMxMUVDOUREQkRBRTkyOEU2NTBFNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4MERDOTEyMTFCQTMxMUVDOUREQkRBRTkyOEU2NTBFNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqWA4g4AAAhzSURBVHja7JoJcA13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"}},"time_used":43,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":38,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/con-ico1.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.001Z","timestamp":1785159268001,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/con-ico1.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"815-66136805-313e5835d1428477;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2069\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2069,"size_decoded":2394,"mime_type":"image/png","magic":"PNG image data, 63 x 57, 8-bit/color RGBA, non-interlaced","md5":"38181d308261ae9b0af96e04d2440aad","sha1":"0f571ce5fc69ca514d56e03be1e2519f9448e773","sha256":"c9f500161aa7d24d1f65695c51a701f6d15713115ba57ea38138e51058e62852","sha512":"0ba9088b76bb250d8ab455cdb5d8036bc55eab272925b36cdd8498a01d1d044dcf8e6cd5c50db220d37026f42f93e0b4723d85657bab3730276ad11439a34abd","ssdeep":"","tlshash":"a1411886f550750091aedce22cd3a83f233209808e90d17fbdaf98011a983b2c46d5de","first_seen":"2026-07-27T07:08:39.314465Z","last_seen":"2026-07-27T13:35:41.634376Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAD8AAAA5CAYAAACBBvPCAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MjE3OTk0MTIxQjkzMTFFQzk5NDhEN0VDMTBCREE1ODUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MjE3OTk0MTMxQjkzMTFFQzk5NDhEN0VDMTBCREE1ODUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyMTc5OTQxMDFCOTMxMUVDOTk0OEQ3RUMxMEJEQTU4NSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoyMTc5OTQxMTFCOTMxMUVDOTk0OEQ3RUMxMEJEQTU4NSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PrfefuwAAASJSURBVHja1JpXaBVBFIZ3jYmx94Ilij1qBCtYMKhYwAISfRBRBBVRUdQHCyKIIIjig/3N7osKFnyyxRBjiRAFk6gxKtGYqLH3gsb/4Fm4yL07Z8vMXg/8EJjMzvn27sycc2bs2tpaK4jZti3914FQJpQBdYPaQenQT6gGegg9hcqgQuiH5KFB/K9r6bV+0BwoGxpC70rYrwS6Ah2F8rV5R28uiBLYYOg09JWGCCh6CeN1+B82fAdoN3/KtSHrJNQ3WeEnQk80QMfqPbQo2eBXQr80g8dqF5SSDPAbDELH6lCk8LAVEYE72hsJPGxyAKc/8fpwD3oMfQjwrDVG4XlVr/bo5ANoKzSCA51GUBrUgJ83CFoL3fL4XNpZRpqEP+bBuSqeHg2EoUcdaCYHOtIxiqBU7fCwYdBvoVMU6HT1GX8151Vd+gIWmIC/JF2MQgpClwvHq4Dqa4PnsFUSvZ3hzzcs26zj1/cKv0fgAGVmbUNOQSigyROMfUELPKwhVC5wYLoQiBbA1lBjDxniR8XY36EsHfBjBOAFgs+d8voTvL+/4S/lvFvmFmP7BT7M1wG/WDDwMoXzMzjASdR/naL/OIEPu3XA71QMSolNlovjI4X5/TyXZ7SEXqm+Ph3wFxWDPoeaJXA6lSsykhW7hiET2TlF/1Ipk5ftqJ2inebuuwRtVLMbLhynFW+piaxU0b+hFMgLvCo8rXZpa+FxrO4ubS8VfVN1wP8O8HJ+edzXv7i0pavKkjrg3yra27tUgytcpkQ8u+3S1lHR96sO+GeK9o4ctMQzWgwPCse5DBW7lNoHKvp/1gFfominSK2XS/sm6I7iGa+hpZw/xLNOfPDhZi90wN8V/M80lzbawiZxCTqeXecKcLEiyElT+FAgPm2SHvfYtp3JczFN8dYHKFZ+sgnQUK7o1HAx4iz0TZHcXOV+rj8AmE6FfmIjzKy2aTpcmisYm156K10p7WphTW1syOBd+KtSlrN15vNteFGS1O16hgTeFLqho5Dpp4y1w0O1dnBAcNo+c4Xj5Zmo4fXgooHEIcrXF/oEn8IvUFrAnGSqdH3aY239MhcrGgnuC9Bqftzj82l7TPPKYfu52YBtj7aza1A9j10fcb/7/DeVpepDnXmNGKqoCSSy2eA4YuxyAuxAxOd0jm468YrJs7oMQUHRhEb7ZfBdW0dnOmjcaEVrh+FHrt/OdpDbTJj76RyaZkYATie7feF/pd8HBDpVwcDfOAuLwtZDlVZAgDCupWw3PM8vOT9cMtzJacJ7rQlwCq97h/Hj1Qlx/s3yUkUJYEusvzc6glvI9/BWaf7VD4bpf9jwKVyU0AFeHO8wI5ngnUOHsOc/VY77h/3l6rp7m6U4kPSqHB3TVhe8tOwk0RZda5ZOeKdcHQScUlv7f4Unx/f5BM+3BLc2khneCaHP+FjZ2+reqk3AO6e0RUJwOoXtYyJOMQXv5P9lCnCKFLNNBWkm4cnoNma5y14+ymSEahre4mCl6h9wSo2nmg7Po4C3+Ji5KgY8J4rcJCp4iw80C4OAB4X/I8AANR8yVw7jPZoAAAAASUVORK5CYII="}},"time_used":26,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.313Z","timestamp":1785159268313,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 2274655\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 13:34:28 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=iN85cnkpCEC0VBtt4R%2BhyFpGQE9S0uoOdtBQt2nAFoKmwQUXFDUfeP%2BAwr2N4v62WiZTAe%2BB%2FG8RccGB2j8ascio8NmIjOwR5r80ZR81EyDvL1hkU%2Fgw2PGOMW6m\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0593094456a3-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":10707,"size_decoded":6494,"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-30T06:07:43.52664Z","times_seen":1505,"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":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":"walmartfundholdings.com/images/plan-btn.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.436Z","timestamp":1785159268436,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/plan-btn.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"7d2f-66136805-42f444c9f806f3a7;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 32047\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":32047,"size_decoded":32374,"mime_type":"image/png","magic":"PNG image data, 293 x 157, 8-bit/color RGBA, non-interlaced","md5":"ae74c9ba49dbdecb21532568f43bb240","sha1":"b74a26b78de1777f55e0b7a65ba13e162402be78","sha256":"b6818f31836361c17511344f00cc845a8307a849ca04ababd19ee091a6a30da1","sha512":"318b650f6f6371aba44ebc66928df60a2997bf32085dd0148db196e5dfb8e59189fb6dd7347718430de155f323c1937354021031af93cf5d13ec606111be1715","ssdeep":"768:sksp3rYx9FyZjD2TOVM3IiM9Pyouo5pfqOpzn3fzTatYvC:skLnyByTOGIiMIC1pRC","tlshash":"64e2f21d654bc8a759fad5a1507b5233835ed870ee34f1e3370e60e2843859f602af9a","first_seen":"2026-07-27T07:08:39.420632Z","last_seen":"2026-07-27T13:35:41.647592Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAASUAAACdCAYAAADyiW7bAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTBCRUY0MzcxQkFFMTFFQ0FBQjI4NkRGRUYyRjNFOUUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTBCRUY0MzgxQkFFMTFFQ0FBQjI4NkRGRUYyRjNFOUUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxMEJFRjQzNTFCQUUxMUVDQUFCMjg2REZFRjJGM0U5RSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxMEJFRjQzNjFCQUUxMUVDQUFCMjg2REZFRjJGM0U5RSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PmTjuK0AAHmjSURBVHja7L1nsBzX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limZ9LbevIGCZZxR0Fd56KGHiu9ffPFFmbLRKAeQ9HdVR5q+1UZQuuuuu4pjgtJHZVzdY5s4KyPIUuKMjGiHDCgGJe116XNryUmm50osu+H5BYC+/PLL4jZIpfTT7r33XguvSLf4Ado4cyQOHDiQHT16NAHR7Zwppfj5gob2JEdVDZrfAMfbb7898XOeBEpPPfVU8bUDBhOXRhvj4sWLV2RaDjzspKxG45577rFKEj19+vQ68FFQ2pg9EYz49+/fbx977DGa19dMztKRkUApxQ36mZJh6H4XgbgcQISzxtzcnDC34zE5zeJY4hXAuBYo0W/auIybR83rq4BSwVwny4oVBgghgLrXffDgQfvSSy9lr732WnE794uXY59//vns1VdfTSB0i0VqdN9i8cQTTxRff/DBB9lG4bljx47JFEtLoHVo5sCE+0MVEBePAB4/ZQBilIEI6X/88cdXlF8KnrxOAHRjJghRVC2MEiClTCnFTRY7d+40TKO+98Egtk1jWb149913r9uxgawsmdAzzzzDEuwPxrX0ySZQSnGLBczxt956a+LPnnzySSmRYhmPnzpgnJMp0YCflCkBWuoomyKBUorbJIKT78Sg5LtWA/1H9wzK5XWM9I3BHtpHH32UQClFihRXXLCuy7+9e/emi2GKq1+00luQYlK88MIL1+2xX3755ZQFpbhq/E+AAQD2IP7dZ1WJ0AAAAABJRU5ErkJggg=="}},"time_used":22,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/3897.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.653Z","timestamp":1785159268653,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/3897.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 431\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 25 Jan 2022 23:26:38 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:16:23 GMT\r\netag: \"7b13f300b044436260728185583927b9\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 28890\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: Erjt9rWKsIWhGK62oAxEQbB-agOBlJvXXiZDzdLlE7o_SciJxYQkgQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":431,"size_decoded":926,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"7b13f300b044436260728185583927b9","sha1":"d62b14a8548ea890dbd1a7d940ae3c3d7c413841","sha256":"f5885d09e88c56b64a53c6814e145398f404d87bf8e7e1e8684e723c9ba14164","sha512":"6ee41031c1f78cb0da61687c6c4c531e64ba06b23ed6da339bbc99a706851c9060be7799132f1a9e20e2e5b241582d881dd79ba39a5409fdd7b6876c23b457af","ssdeep":"","tlshash":"d4e05cb9be567e1fd76d25ebe3798074b4366604c81512fc14c48024b240531b984d0e","first_seen":"2025-05-17T13:51:35.328372Z","last_seen":"2026-07-29T06:14:00.443388Z","times_seen":1351,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAABdklEQVR4XuXOMYpFUQzD0Lv/Rb/5vQWTqEjlwGkEhrz33l85hDYIbRDaILRBaIPQBqENQhuENghtENogtEFog7BiL/cTe7kXEFbs5X5iL/cCwoq93E/s5V5AWLGX+4m93AsIK/ZyP7GXewFhxV7uJ/ZyLyCs2Mv9xF7uBYQVe7mf2Mu9gLBiL/cTe7kXEFbs5X5iL/cCwoq93E/s5V5AWLGX+4m93AsIJ77vy5//vdwfQjhhL/eHEE7Yy/0hhBP2cn8I4YS93B9COGEv94cQTtjL/SGEE/ZyfwjhhL3cH0I4YS/3hxBO2Mv9IYQT9nJ/CGHFXu4n9nIvIKzYy/3EXu4FhBV7uZ/Yy72AsGIv9xN7uRcQVuzlfmIv9wLCir3cT+zlXkBYsZf7ib3cCwgr9nI/sZd7AWHFXu4n9nIvIKzYy/3EXu4FhBV7uZ/Yy72AsGIv9xN7uRcQ2iC0QWiD0AahDUIbhDYIbRDaILRBaIPQBqENQpUf4B5Y9kWIRxEAAAAASUVORK5CYII="}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"i.ytimg.com/vi/6jePbqXJhe8/sddefault.jpg?sqp=-oaymwEmCIAFEOAD8quKqQMa8AEB-AH-CYAC0AWKAgwIABABGDogSyhyMA8=\u0026rs=AOn4CLD_zYKBV40B5dr99h6nxYZIb_vAZQ","fqdn":"i.ytimg.com","domain":"ytimg.com","tld":"com"},"ip":{"addr":"142.250.178.86","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.youtube.com/embed/6jePbqXJhe8","date":"2026-07-27T13:34:29.660Z","timestamp":1785159269660,"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":"edgestatic.com","organization":""},"issuer":{"commonName":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:24 GMT","end":"Mon, 21 Sep 2026 08:37:23 GMT"},"fingerprint":{"sha1":"99:EB:44:FC:A9:EB:62:72:A5:7C:E5:77:BF:06:63:47:1B:54:C7:D7","sha256":"CD:4A:F6:7A:9F:60:AA:84:9F:37:94:1B:BE:E7:AB:41:46:38:9E:68:4A:4F:36:B3:D0:84:EC:FA:44:D7:A9:DD"}}},"request":{"raw":"GET /vi/6jePbqXJhe8/sddefault.jpg?sqp=-oaymwEmCIAFEOAD8quKqQMa8AEB-AH-CYAC0AWKAgwIABABGDogSyhyMA8=\u0026rs=AOn4CLD_zYKBV40B5dr99h6nxYZIb_vAZQ HTTP/1.1\r\nHost: i.ytimg.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://www.youtube.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\naccept-ranges: bytes\r\naccess-control-allow-origin: *\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\ntiming-allow-origin: *\r\ncontent-length: 39781\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\nexpires: Mon, 27 Jul 2026 15:34:29 GMT\r\ncache-control: public, max-age=7200\r\netag: \"0\"\r\ncontent-type: image/jpeg\r\nage: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":39781,"size_decoded":40442,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 640x480, components 3","md5":"a598d814f05ca482a6e90f3c3e6eca69","sha1":"c1795722b6d25c241f724d927f9ab0ae1c394450","sha256":"be11ca879ca1f37853c1d36b6fd4b63981fed35198ca394ee4019d9b56cb7fa7","sha512":"87f0c76b0a73d1a24b76faa646892e0eb157f6efa073f7e4e1aa457c5802fb0e68ae67b2651fa358b99fa5e9a586815490a6728393de639af87f68046ddb90c0","ssdeep":"768:nfvyR28U2TTcxdMTE3DR9ktJDypd2MaAG5FX:nHIdPid0E3Dc2ps5l","tlshash":"aa03e087bbc1c68968913f29bc96437025f915dfb2226d93538894049dfcac96ae0cfc","first_seen":"2026-07-27T07:08:39.36535Z","last_seen":"2026-07-27T13:35:41.617794Z","times_seen":3,"resource_available":false,"data":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAgGBhISERISEhISEhISEhISEhISEhISEhISHRIfHh0VHBwgKysnICsqKxwcKDUpKysrNDA0Hyc7PTUrPCsqMCoBCQkJDQsNFQ4OFSYVFRUmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJv/AABEIAeACgAMBIgACEQEDEQH/xAAcAAABBQEBAQAAAAAAAAAAAAAAAgMEBQYBBwj/xABLEAABAwIEAwQGBgcGBQQDAQEBAAIDBBEFEiExE0FRBiJhcQcUMlKBkSNCkqGxwRUzU1RictEXgpOy4fAWJEPS8WOio8IINHPDRP/EABgBAQEBAQEAAAAAAAAAAAAAAAABAgME/8QALBEBAQACAgICAgEEAQQDAAAAAAECERIhAzETQVFhIgQUMnGBQmKhsTNSkf/aAAwDAQACEQMRAD8A+f0IQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgEIQgkepP8Acd8kepv9x3yWgC61pOwJ8l2+LbHNnfVH+6fknIsNlcbNY4nwCuS3W3NKimcw3boVfik9pz2pX4VMN43jzCb9Sk9x3yWkNc52h1TWZZ+NeTPmkf7p+S6KKT3HfJXciWx2ifGclEyhkOzHHyF0qnw2WRwaxjnOOwA3VxHIQe7ceSmtAmDiRke0auDfo3fzD6vnsrj45S5M7UYRNGbPje09CLJsYfJ7jvktJJI82DySRtrfROt2V+KbTmy36Ok9x3yKl0XZuqmOWKCR53s1t9loWp6krCw3BtuuuH9PjfdZvkqgj7HVri1oppSXGzRl3KnP9G2KAEmhqbDU/RnZa+HEXFu+2y9R7B9uzIWwTkWIs17t722JW/J/Rax5Y3evbE/qO9Xp84y9ja5rS51LMGi1yWHS+yQzsnWFheKaUsbe7shsLb3X1X21wifhvkpGscXZTJG76wbfVvjYn7l4Di2OVDXnK+SD3o2OewA+S83xyzcdedY+r7M1UQDpIJGA7EjQqKMKm/Zu+S1BxeR8Yje4uaDdtybtvuApsQ0C18WP0c6yw7K1eUP9XlyEgB2U2JOwv8CoQwyW2bhvtYm9uQ3PwuF6Lhfa99PFUQ2z8XJlzHusAdc6eI+SzTKpzcpB9gnL4X3U+KHNm/U3+675LraKQ7Md8lpa6SMkOjuMwu5lv1bubQeY5g+PgnsJiu6/RPihzVM/Y2uZEJnUk4iNrScM5TfbXxU1vo0xQi4oagg/wLd1OHYi+kfUMlkfSM7r4uK45Wj+Daw0P3qpi7XVbGDh1MzWjTI2RwAt0Cvwfs+RiHdlawSuh9Xl4rSGuZlOYOOwVl/Zniv7hU/4RWowDEpHySPdI50r3N+kc45s2wJd8tVM7S4nilHOYZquovlD2ubO8sewjQg38ws/Ec3mtb2dqYXPZLBJG+MNL2uaQWg7X81YUfo/xKVjZI6Kd7HC7XNYSCPBXJr3yR1L5Huke8R5nvJc51nW1J8lOm7T1cGVkNTPGzhx91kjmt9noFL415MpSdhq+Vz2R0k73RuLXtDDdrgdQVX1OBVEZe18MjTG7I8FpGR3uleg0GPTtpy5s0jJXSvcZGvcHm41uUxiuOPqI5JZSDK8xh5DQ25a0tuR1sBcp8ZzYqn7NVUkT5mQSOijtne1t2tvtdKqOytWxrHPp5WtezOxxabOZ7wK0mF4nM2KaCNxDKjI2RvJwB0H3lWtJjMjZqWCoLuDEeC6M/Uje/vn77/Ba+JObG4Z2LrqhpfBSzStacpLGXAda9vvCm/2ZYr+4VP+GVbU+OVdE6WGOeWEtkcyRsby0F7TlJ+5P/8AHmIfvtT/AIrli4NclF/Zliv7hU/4ZUej7A4jLm4dHO/I4sdlZfK4bgrTf8d4h++1H+K5So+11RAy8c0rOJ3n5HluZ5Grjbmrj497/SXJl/7McV/cKj7C7/Zhiv7hUfYWh/tBr/3uo/xXrv8Ax/X/AL5Uf4r1jhWts7/Zjiv7hUfYR/Zjiv7hUfYWg/48xD98qP8AFej/AI9xD98qP8VycabZat7A4jCAZaOdgc4MaXMtdx2AUn+zHFf3Co+wtQ/tXUTsvLPK/h95ud5OV9tCPFRT26r/AN8qf8Z/9Vu+LSclD/Zhi37hUfYUTEew1fTtD5qSaNpOUF7bXdvb7itN/wAc1/75U/40n9Vz/iWWeSIVdRM+JsgJzudJlHMgHnZJ4+05MrU9jq2P26WZml+8wjS103P2Vq2Nje+nla2b9U4tsJPL5heg1uLVlXJUTNz8C8ju+dGg6hgPMjwTfaztQ+b1ZuTginY1jGh2bug3ab9dlqeLdTm89xLs5U07+HPBJE+18r22NkinwKoeWBkMjjI7KwBp77r2sFp8ZxB80xe9xcdNTudFZYfjT6VtPNHl4kb5CzMMzbltr28L3S+KQ5sviPYXEKdhkmpJ44xYF7mWAJTGHdkK2clsNNLI5rWuIY25DTsVrJe0dRPFMJp5ZBluA+RzgDm5ApmTGZ4HNME0kRdDGHGN7mFwtoDZZ+NrkqJPRtijQSaGoAAuSYzoFAoOyNbO5zIqaWR7QC5rGXIB2JW1w3tLXyPAdUVUkf8A1BxJXsyn3tbW801X4vLDM58UskVw3MY3uZcAcyFfiTmoP7MsV/cKn/DKg4l2NrqcB09LNEDsXsIX0Tg+Iy0GGisqpZpZ5x9HFLI5wbf2bA+AuV5fiOIzVDXGWR79yAXGzSd7Dkt4+Dct31Gb5Xl5o3+6V31N/ulXjm6p+ho3zPbHG3M92w2GmpcTyAGpJ2Cx8bXNn48NldezHHKMx02HVK/RM1r8N/I7cjstlX1EcbeDTnMxt+LUWs6d5sDbmGC1gOe51OnaGXMPIAfJX4YnNizhcv7N+u2hUyo7L1cbBI+nlaw7OLSBvZaWud3meCZrcXnmDInOLmx5sg6X3/BL4oc2SZh8h0DHH4K9g9HmJP1ZRVDvERmy9C9HHo/mqpWzO+jp2EHOR+ssb5W/Ldeydr+1LKGINjDeIRZrR9QciQnw7ymOPdS+XU3XyfX9ja6D9bSyx395tlBODT/sn/Ir0jE8VfK8vkeXOdzKrJZ9F67/AEeGM/ll25Tz5W9RipcFnbbNE8X2uLXTf6Nl9x3yW1lmLuZsNtb2Cj8l5vhn5dudY/1J/uO+Sl0XZ+pmvwoXvtvlF7K2O5TlLiJjzd54v9VjywO8yNfkucwm15KOpwKojJD4ntI3uNlGNFJe2R1+lloJ53uIc7QEdzSzQBpoE2X94FXLDHfRMqpjhstr8N1vJN+qP90rUvqyRawA/FV7lPjOSn9Sf7jvknY8JmdtG8/BXTdk7TVpZ1PTXujzCs8cTmpP0HUfsX/ZKQ7B5xvE/wCSu5a17j7R+aSKh3vH5pfHN9HNQ+pSe475Lv6Pk9x3yW1osCle3iFoYz3pO7fyUR0gvbQ25jZavgyxm8knll9Iadoq98TszDYppNlblsu59Jrc01QxOmqf/wBhnCl/bRjQ+JCTP2TkFnFzXxH/AKjNfmFllZUGNTQ+xIQPdOrfkvXPNhn/APJP+XC4ZY/4VXubYpTFopK+kqAeKzgS+/GO67zCz+S3O64eTxzH1dyumGW/ZmRLaNEiRLZsuTotaTs+6RnEhkZI4e1ENJB5A7/BVRc+N2l2uGh/oQuQylrg5pII2INiPitC/HYp2ZKmP6TlUR24nk4cwuvHDP8A7a57yx/cUV+drX100ClNXKuOxaA5r2gWa5vTxHJDSszHV01e4ehhL+60XPIBQpAWuIIII3BFiPMKWx5Go3GoKsZMaiqGZapruK0dyojAzm2zZBpmHjuF1mv+WO0OlqLNVvwHtibPC/iNHt5Lh8Lv4hvb+LZZ8aCyXhuKy08gkidlcNOoIO7SOYPRaw8tnSZ4beldjPShJAck5dJGTzN3N8ltO03YSkxWPjwPDJiNJG+y7wePuuvC8RqKeQCSNpilJ+khA+i/nYeX8p+ClYV23qqS/BksCLFp1b8ljyyb3OquG1XieDy0sxhmZlePi1w5Fp5hTInqDPjMstxI7OC7MM2uQk65el+g0UpmyzNb6a7+yZcPfIyeoFssJj4n992UWHmmsLoGSkxuk4cjh9CXW4bpL+w4/VvsDsDv1CDVvaJIw4hkmXO3k7K67b+R1UZXUTuuz0T2Etc0tc15Y5h9oOG4IUzDAWucCLEaEHcEdUzWVz5A3iOzFjQwO+sWja5522ueVhyCVRSEkkm5ssam2o3nY3tUaSa0nfp5e7KzfTbNZQPSD2MFHM18RLqae74nW0b/AAX59R4LNvn1W67JdqoZYJKCvd9A8fRyuP6l421XbOdbjnOqw+FvtmW9pW/pShNO43raNpdTH600VtY7/D8PFYJrWsfI1jw9rXOaJBs8A2Dh5pWHYvJTzsmjNnxuuPzB81zk6aqADZkg8B/mWsrsEinw5lTCLTUxyVbbk5o3DuS28Njb8lnscxQVE1RMI2xCVwfw2m7WnnbzNz8Vb9lO0Ipp28QZqeVnBqGb5onCx+W6zponszgzaqKaLMRO2N8lO3lI9urmHxLb2TfZnCGVPGgJIldE99Pb60zRmyEeIDgPGyZgrhTVHEpn5hDOXQvsRmYHaXB6jQqRXYnEysdUUZcxnEZPGHCxY82cWeQNx5JoUlNMGDzJVnjFAG+qzOdf1iIyP1Fw4TOb+ACj17455JZGR8Jr5HvbGDmDLm9r/FQakO7jTckNt/dvcW+av0hT4M2Z/eIMjhnNzc779bEFNcAKS2rPB4XITOf43LGtI+5NXVkhsjgBHCCdXFOMXZngBK4QTlkLOouzfCCOEE4iycYbNiII4ITll1b4xNmjCEjgk3sCbWvYbXNh96kWUuhxfgN+j/WmeOQkgFmRjXZRbrmcT/dalxibWlVXyQNmpC8ERvkj87Gxtt4qHjVEBBSyOJ40rHyOafqw3yx+NzlcfKygzHiGWV7i5zi436uP1iremxqKWsinqW5YY+H9HGDYNjj7kQHQloB8ypehExns++CWOC+eYsiu1o1bI8AiLxIuB5p/tdhcdPI2njeZDEAJXaW4+XvhvgDopeE4+xlU+snu+UCWaLS4NU490nwFyfgFXYbh76ypiizd6aQl73aZR7T3nyAJU0OyYC6Og9bc5rRM8xxR653tb7UnkDoquduZzBzyMAt9wWi7aY4yeRzYdKeBggp28uG363xOq72NxClgnNRU3cYYQ+CPKSJJ+Vzytv8A+FNLtqK9gwuhjohb1qqtLVuH1WfVjv8A759VSdlBSOrC+se1sMTeJldtI8bM/wBOao6zGJKmd80rsz3uufDwHkq+rfqVu4zWmY0fa/tlJWzl5JETdImcmt8upVTh8/tKqUyjdoVu3rX0mkGcd93miGA2e4ZrNyhxF7AO0sT47eKRM7vHzU9lVJDHPAW5OKYuIHtIe3I4uAty35rnjG8kXMOH43N/LS35qVhp0UJw7ql4fsknYXVnvNXpXo/9HEdUyOqlf9Hmfmjt7WV1hc9N7rzOqOrVMg7YVcURp45SyI3u0eO+qWb/AEPYu13pHjp2+rUeUFvdzNtlaOjV5DWYxJI4uke5xPU3VO+Qk3KkUlWxkgfJGJQBoxxIbm5F3UDppddfHnMesXLLG32uaXDAYxUVDjFTkkNP/UmI3awf/Y6DxT3YzE6ZldHxoI5KaRxidHO1kwY1x7r+8LXBtc22zdVncSxSSd+eR2Y7AbNY3k1o2AUcN081PNnz6awx09jqsEpsPxtrJoIH0VcLRNljjeyKRztmhw0s6w0sA2QdFV4jh0eGYsY5ooJKKUmUNmgjlAhIOjLi4LTdoAOote9xaB2q7ZMrMMoYnjNVxPdxZNczWtZlBvpq8Frjyu09Aldt+2LK6koGkXqY2vM79sp9mw/nsH+Fh1Xmxxv26WsjHG2pNdJkEcjWetRQxhjIWxCUCSOwA9lrgRa2jHXvfTh7NtdQ+sB7jUZ+LwBa3qPF4PFta9+Lpva2qYwOubBVRSuGaNr8srfehe0skb8WOcFYDG4fXbZ3ii4H6Pz5O/6pwOHxctr3zfTWtfNy5LFnf+muh/wtmZAM7RUPi4jxNPEyMMdI4QsbfvOJawusL6OG3OXH2Tjpm1D64i8UDZWQxPzOIdUxMEgc3ukEPtb+O+hGk93a2k4lQ6ny0zy6HgVE8BqG8BjMnCDMrshyiOxyHRpHduCqvtR2hiqONlkMjn4XBSZ+DwM87K+ORxyAWaC1pcLact12nX0xrf2TV9j6gyvY1kLZRctpGVEb6hzQ292svmdpcjS5AuARa9TW9nZI2GTNBIxr2skMFRDNwnuvlD8pNr2IB2uLX2voW9o4P0x65mdwOJmzZHZrerZPZ330WfwOuijgqI5g53EFIOG24MgZUse9uYez3QbFTK2rCqrAZI4Xy56eRsVuMIaiKZ0NyAMwaTpchtwSL2F9Rexp+wk3rAp5ZaeB5bI6zponSZWx5gclwbHle2lzYgC7uKYrBwK+OOSB3HYGU8cOHR0xY0VcUmV8uUOuGtcLZng5bl18t3f+KKcYtJV2L4XusH5XZmNNNwy7JoTbXTTQaclMe/fS1c9jvRvTT09TPVSzjgShjTSSQujewxtNwXNObVxGhtp4K/7Mdi8LlmljpnVb3xQ8QunDA65dZoaMgGtjfTkFVYT6RmUtFWxx1RdVvkY6leymeGWyMuAHtsNnjvD8k12J9JhZU1NRiVQ9z30rIInthFxlkc4NtG0DdxNyPiltxtuKceU7R6fsrPUYfX1dc2sp5KWPiQxOjMEbyIydQ9t3AEDYhecscvR8K9I7n4biFPX1EstRPCWU4LMwuYyCLtFhrbdeeBrbbm/lorc887vKmpj1HE2U4nqERF1pc4b1ZZamO+kt0iXUrD4mueA/bXnbl1V3L2WzjNTSNmb7psJB8FST0MkejmOb5ghdb4csL3NufyTL0juC6wocEMXGukJfzSmbJL/zSmbKNbNXXQFdUWG08rbCbhT9JbcN3keXxUOuwmWE2kZbod2uHUHmrl4spN+2ZnN6IAAtrfT5FPFqjNbtdS3qY+1pN1BedVZ0zmhwztzN5i9vkVaydnI5GmSncS3ctd+sj01uPrDfUa+C78OU6+mOWlCDol1WGyRtY97C1sgux2ha7yI/DdHBtcdFe9n6uZoLRHxoT7ULwXQvO2+pafEBYxk+1yZuFovqbaH58lLoIIXOLZ3ujzCzJAMzWO5F43I8tR4qbieHQi0kLi0FxDoJP1kbhvY7OHjoeoTDMAqJhmihkkbsSxtxfoper+SI2IYPJTyZJANbFrmnMx7Ts5p5hSo9k3U0NTE3JLHIxlxYPGgPh0+CcjVwst6K3vZb0cwV1LK5stqkewL6N6XHQ/csW6lfRyyQ1MNwe7LGQA4gG4cx3I8wRp1uFc4Bik1M9s0Rc0jc/UcOhXrlNDSY1T5pY2iZgyk/WYeoPQrp5JcLy94/+nOX6fPeI0TWH6N4kjcMzHaZsp+q9v1XDYj4i4ITVCN1aYx2cnpJHxTtyuF7H6r2jTM08wq7D26lctbrrPRRDc4zkhvMgXPy0TBV9Wdlajhx1DI3uicQC7IRkdewv4G4sR9yhVuAVEQvJBKwEgNcYzleT0PwNuq1cmUOhb7SacrHAoSX91ud2Ztm2vmN9BbxXofbHsDLPHFV0tK+N7wGz0oZlLHj67R0P+vVZ5STtbHlAb3X+Q/FOyt2/lH4KVV4dJFxY5GOje3LmY4WcL9Qt5H2PfV4Yx0dM9k9OMzHhlhVwu3F+bhy+XNTcivPIadxic8BxDT3iASG3Nhc8tVMwjBnztnLCLwwmYt+s9oIzBviAb+QWs7CUUzZJYXU8kkby6nq42tu5jDpc9C02PwScLwKro6x7Y4nTS00wzRx97iQkfg5p+9LkRiS+3x0VtjTImR0TmHvmDNL5id4GvkLW6AJXaDCMmd0ccjIhPOxokFnsyn2HeIH4KPiGFSRGOOZuU8OOQeLJNQfht5gq7SoU1O3gCW/fM72lt/q5Gm9vMlIcG93Lf2W3v71tSPBXGFdnJJmS2Y4t4VRJG8ezxIw0kE+RA/vBD8Ce+cx08bpM5dwmM1NgLuaOuXUHyKb0KhJstL/AMB4j+5z/ZTM/Y+tjaXy000bG+097LNHLUqc5+V4qGyMq0z+wdf9WkncOuRJ/wCBMR/cp/sj+qzcoarN5Vyy0v8AwJiP7lP9kf1Smdgq/nSTtHXInOfldVmbLtlfQ9j6yRofDTSyxu9l7G3B5fiCnP8AgXEf3Kf7C1zk+00z/dyvvcWYcthe7uQPgnjQRmqdC17eHxcjZHuAbkv7RPknanCZY5ODLG+OTRvDLe/mcO6LeNwo1ZhskMj2yNySMtmafqnTQ/MLVu00k4y6NtROyL9XxJBHY3GS5tr5WS8QwlkVPTOJPFnY+ZzeTYibRfOzj5EJmronRPex7S2T6wO4uL/mtBhdG6vnifNtJKxhEbNCxkJIiaPEMDfDdMkZjEMPki4fEaWF8bZGg82OF2n4hFXSPjbGXsczO3M3MCMzDqHDwPVbo4BPX17PWYnxZuJNNEQQ+Onba0bRvtZot1uq/thT1NRUMD4Htmke4RwZe82MDuMA8AFmVWODLsf5JEg9n+Rq2+I9in0uHGedkjJpHaMI7scfLN/EdbC+yzVLhMs72shjfI/hh2VgubAamynKbWIdKO8FyuHfXoWG+jWVlJLU1EczZQbQwsbcix1e8cgsPWUxdLYC97D4nYLW5fSK4qdTOB2BGg3N9ban5qfTdn5RDJO6F72sdw8uR2Vpygl73aCwuLAEknoAbkeEyRtLnts3MWA+8RvbyWpUVlNViJ5kDc0gP0ebVjD79uZHLkDrrayepqNskNRM+Q8SMxFgJuZHPeQ4m+pta/xTuH4BJUPswWaD35CCWt+A1cTyaNSr6j7CT1E/q0IdGIwXHjgBzWl2hcG8zcaC6k6WsxQ0Es5EUTDI7UhrRc+KfZRPjuyRpa4bg7he3Qx0mB01m2lqnjvH6zifwaOi8lxaudNI+V/tPNz8VvDHcuWtT6YuXelFVHUKbX0MLaSnkzDjvfPxBfXKHAN05c/NQKw7LlNg1TUXfHFLKBoS1pIHhdcsrquiIH3TkjtALa66/L+isXdm6qMF8lPKxg9pzm2A80nD6VjpRxGyPb7sVs7zybc7X66+SQpvCsFlqCcgAa3WSR5yxxjq535b+CZmjDSWhweAdHNvY+IurjF6ypkaIuEYqeM9yFjbNb4k7k9SSVShltFrK4+oklORrpCGt0/0XbK/QhO5pEcTTq52UD4uPkE/KmG0zney0nyC4z3+Wy3zi2VjbN8dXnzP9E1dWeF9m6ic9yM25vd3WDqSSrZ9JSUh+kPrUw/6bdIGnxdufgu2OGWXvqOVzmPpmYwmyptXVGR5dlYz+Fgs0fBQTusZTX7blODZIKcbslRTluwF+pF7eSTspbKI2zOsxvV35DcpucM+pmPUu5+QSsrnnm5x+JV2zsq5ozTvZA3+I3efgus8dy6xjF8kx91nktaB1dSwi0MfFdzkk2+AVNKz6xcLnXKBss5+Lj9rjnv6NZUnIp5w6S2bhvt1tooparfHZ+jlKep61zLbabdR5FaNvakSMEcrWyN6SaO8LP8A9FlC1dzLrh5MsenPLCVezYXSyXMU/Dd+zm2+DlQmOxSS5KaVz8mUy9TTeGOvsy9LbskvCUNlxdDN1Z0uNSMbkJ4kf7N4zN+HT4KsS2OUxzyx9VLjL7TqmYPLS1uWwta9x8Ep+yaaLW8Qlly1LblunqAFBmkbq1xt4HZLp4C9waLXO1zYX80V9FJE6zgWu/3qCtXHfbOzbTzUjDKwsNmnK55Dc4NrXO/T5qM155p6KUPyxuZm1s0ssJBc2tfY/H7lJIvZNRWPJyuN7PdrYam+pB8Vd4P2hdDeP1iWnY8XD42texr+r27keRv5qhkpjHezmubcg23BB2I3B/3dMVTtvJSzje19r7tDUVmYMqZOK02cyRmV0bxyLXADr5hRGHRVcVQcuW5te9r6HxsrKPYLWOt9JVthHavgxywPjEjJDHufZyvubJeGdsKimsaeQszHvCwOax53Wacy0liNjqDy81Jw2OJwyyvcy+jJBqxjr/XFrkeWo3sdluZX1WeMr2BvbOhxOkdFXFsUzGOLX/xAe00/DbmvHsP9o80qsoZISWPG4zNcDdkjTs9p2IPUJrDtyufq9NL2btTVtDYDK4QjI7hFrbZQbjW17adVMxLtZUTRBwqHZYyziQP4dw4HuyMNgXNJGo1LT1BBFLUYgcnCc0PDTeJx9uK57wB5g9DsdRbW8SqoXxiN5sWSDuPabtuN2noRfUH7wQTcoRNwmqyPL4+4WkObzykf6rV4T6Wa+OZjppeNED32Fkbbt5kEAarEUP11Hlcs8ZfbS77TYoyeoq5WPe9kjmFjpAA/L0IHTb4Kyw70gV1NwmRznhRhloi2PKW+6Ta+vmsew92Tyb+KlVA2/lb+CmOMptpIu2VSzjTwScCSone5+QNcLHWwzApdD2rr7VFSyV5nvHxZQxjrRizQSLWAvlGyzDP1X98q37MYwKeTM9ueJ54U7Pfge2zh+Y8QlwNremxU1NHUQTPHFkMtW17src0zD3mnYd5pdbxHiqzG+0D6jKyQAuiY6OOS1nOjzAtYf5bHXfVVWKQsaXMjk4sbZJBHJYjOy+jrHz+aexWiMT4nXzMkhZKx+17mzm+bXBwPl4pIiwwvG5W0k1NbMz6SY9RbIL+QNrj+ik1uPFoglp38N9PJJZ4sXF0gJJsdLCxG31lXUsmWMTNcM5M9OWO9kxui1uN9cx+SjTwtdndYRgAbHuGS2jbeIa/wvZauKel8PSTif74/7EP/AGpqs7e18zTHNUPkjdo9hbEA4eYAPILNgIU+KLyahvpIxIaCreBsBki0HL6qV/aVif72/wCxD/2rKLqx8ca5NV/aVif72/8Aw4f+1B9JGJHQ1byDoRki1B+CyqE+OHKtHTdvK+JrY4ql8cTNGMDY7NHmQSnz6S8T/e3/AOHB/wBqywCS5a+KJyXtHXulndUTzXk4scjnEtDiI2GS9tt2MaLc3KHDiTvWXVM7eMXubM5hNhITI1wv4eHTRQZKFzpBGwgl2Qg3sBeMO1Phc38lLe31ipMcLbCSQMibtlBeAB4WutcdIVi2KmorJpnf9R8jrdNNB8LK5lqpaOlozHI5lQXmqDbA8Jj2FrDYjdwBJvysqj9GcSWqdEbxQNkeZH6Zm5yxvxdcWH9E5Rh9bO3jSgGWRpllfla1kbY9TyGjW6AeClmxNn7Z1gdFUCdwnLZI3SBseYszDQi1uQ5KXR9qnOnpaurkkkMb3lzmCMSEBpygaAcwL9LqBjcvrtVGynjs1xEFOwC30bTlZf4akpntXQxQPEMLzIIzle87OmAs/L4XuAs8Iu03He3VXWMnbM/6I99kQDcrNdADa5t1Knej2tEVS6V9SKeKOFj5R3c84G0Tb9TvbX5rFD2JP5fzCRIdW/yNV4/Sb232J+k+snmeGSmOB5LREGx+wdLEkXv8Vi8RnIe8D6zMp/lO4+O3kkUTAXam1tfE8gAnnVIjlLsuZwAyX9lrveI525Da+99j01r0i7r8cJgZBI++YR1F2u0zOjHdI2uLAKG3FJJA5pddgc5zG6aEnUqrEJjdeRgu9jXsvtlcLg6eCkUVR3S2zdHXvbvHpc+Ckx7Fx2OoayapEdJJw3kkukIa5sbebrH8rEr1fGO1tPhTeE0mpqnD6R7iA4utu4gfdyXi+EdonUcj5Yv11nMY6/dbfdxH1j0B056pEH0kU88smaRmTIH68TO4hxHiLA+F1Lju9+kqTi2Mule+V7i5ziXG5v8ABQWVBI8wCqp8mhUykOnwC65eS3qdMzHRuuOyvOz2LzsjNqsUtPH7ZtG+Rzib2YyxLifgB1Coa47KtJXC+3RtMc7XyVX0YkLYGbB5BllPJz7c/AWAWfFW9p+jdlN9DoOVtz5lRoYO619xq8ty89ADf71Ipqdj5LSSiFlrl5a5505Bo3Py81rSbTBiMtwxr3yyO7tmjQfwtFru/wB7qPUxODnBwLXA2LToR8FbTYuIY7UjOACC01EhBqqgHe2ncHl8yqKFx1vr5q54yekxtPFzrC9/DyQCmwUpqv0qHIdSnqKvMRvlD9b2dsmpG6rkdM5+2w3cSGtHmSuOO99N/S3rO1tRJs4RsHsxsAyD+vmVSlOSRxt0Di93UaMHlfU/cmiV1y5fbEkPB6jkJ0BIIWF2U0aKXh7Ys15s+Xozdx6KM06JUdQ5vsm1/n81vDUu6mXbSHFCxv0MbKdp2LtZXePVUNdVue67nukPV35C5UZ0pKRddvJ5rZqOePjk7cSgV0BOuisOXz1XDVrr0+p+z+FUzoW2a1wc3W9iqvHfRXRzglreE/qz+i8cwvtNPB+rkc3wvp8lvcH9LMgsJmB/iNCvR5PB5blcsMtvPjnhJrKaUeL+iSqi/V5J2Dke6+3mFhK3BzG60kckR914JB8nL6TwrtzSz2GfI4/Vd/VWdThtPUN7zI5AfAFcvlyw68mLpMZf8a+R5YtU3lX0s70U0WfOGlv8P1fvWL9IPo3cxrZKaPPb2su9rdFZn48/V7Lyx+njDwugaKTW0T43ZXtcw9HCxTACzcWpVlR1FK5uSaJ0Z5TROJPxadPknqvsm8M4kMjJ29Gd2Vo8WHVULlIgxJ7f4gNs27f5TuPgrMsb1lE1fokNI0IsehToXaiqMliST56n5rgWMdb6brt1YRYvI2PK4Nlj92RucN8QdwfIqvslBgcMpfkN9L+wfM8lveX0z19mzIuMdYgjQjUeaS6O3+7/AHrl1mRadLblxPnvbUne3NLFK06vcWA+y62YXG9xvz5K/o8PgkoZpXEcaOWEMF7HK7Q6c1nKvS/krn1+0xuyZ6J0Z1s4H2XsOZrh4H8lNZsFWh+qsY+SzhrfS1IrK2V7WtkAdk0bIWjiW9wu3IGtgdkYN2aqappNPHxMh73eY219tyOnJNVmHyss547jvYeNWO8ijCsSMQ0LSHaPjkF45G+6eh6EWI6hLvfZC8VwSopcrZ4zHmBLQXNdpfW1ibalRaA6lP1UsbiTFxACzVkhDix1/ZDvrDXQkA/io9BuUntfp6j2Miw+pidSVMbWyvvkn2cT4HkfxWc7Sdh62ga8PIfTuLbyMPcc6/du06g79fPXWndE9rWyiz48wa5zTcxO5B43F+R2PXkt1hHpGgqGOpMUjaYgLMmGYva4aXPQ+IWvJPud/pjF5xhrbkj4K4r+zckcsfEg4fFaLxuljDbkluZj8xtqLgOtY6ajesYGNklEbs7A4hjyLFzb6EhdfKGn6Il7D3+G8XdG6+rTyPgRuOhuFPpqoElOWcVp3GnLk63ivVcE7LTV+GtjfDlMbTJRT3ZZ1/aicL31O1x/r5ZPU8TiP5kNv531XXVL2lha5wLQ0tIJFjbQhY1+F9rzD+y1VNxoo4s8kDzxWB0Yy2NjqTY2PiqaFvtDx/JXXZztPLTSiouZHGR3FDjfitI7zXHx6qHj0kDZ5XUpc6Bzg5mZpaWXbcsPkbi66Y27Sr3s/gZqKCrGRtovp2SktBZI0asOt7ObmHMXAUHEcBq28GF7XZHtfLTNu03DrFxHPWwNj/VKw6tj/RtUx3t8SExa2dc3zHxFrXCXVyerzQVcBuHsEgDtcs8ekkZHS5BHg9Zy9kVc2EPip4ZzrHOJHA29lzZMpBPxB+Pgl10AMLZGfqy2Lib6ThhBv4nvEeC6Hcd0jGExsMMskcRcXAFsmfIDprlBANhew6qO2qc2NzHfqnStfbq5jSAPk9IL+m7AVk2cwRcWNrsrX8SJuYbg2JG4Un+y7Ev3b/5oP+5ZSupzG4tD7guLrAnTWw+YAI8FG73vH5lZvNdRqaX0f10nEDIMxjkMb/pIhleADbUi+41Gik/2X4l+7f8AzQf9yx5lfYDMdBbS/wB6Tmd7zvmVLyXpsv7MMS/dv/mg/wC5Rqr0e18ZjEkAaZZBHGOLES55G2h8Oay2Z3vO+ZTjZXAEZjrprf7knJWvHowxL93/APlg/wC5QsU7C1lOziTwlkY9pwfG6wG/NZq7vePzU7DMVkjzgFzy5uUN3FyQDofC4V3kmokS4aIpKgSd0sp+JG0Ouc78hY3zs8AqLi9KYJpYswLoX5C5vUc0t0uSUvkbnc9vea46Aub3T8LgjrZApWxz2qblrmQyzZNXhr8rizW2tj8Lrp9MJ9BQ1DoJ2xMBp4y2aoN2Bw7rwy+oJG+gB1Xcb7LupaWlfICJJ80mW7S1rBbL8bG58x0K5FD6w6pq32jYxrsoaNHTyF2WEeAGYnwb4pztJVB1JQuu50krJJZXvdme6TiZdfINAHgs4+1qBgmLywSfQBvFkY6Fjnbxl5tmaeR5X5XKXWdnqkTRUpj/AOYc+wjzxkklt7XvbYdVS8wrmPEKikdTzNbw5GgvjMjL6OZYPAPgTYreUI03ansQaLD2F8V5nnNNPnBbGToIGi+uxJNt1ghTueRkF7RtJ8kuSre9sjnvc4uFyXEkkk7lNuvuNhG2+tr35f8Ahc5v7Vc1/Z2SlEfHLWTPefoc7Hu4dhZ92kgXNxqeSboMLM8+UNc8/VjjtxJDyaCdGjq47DqbBMum4gbK9zc5kLGsboI42sbYAchrYeR3T1Hg8lTPwoh3jvvoOvX4C5K39MmKyhlMwa+/KOO1yMo7oa063A0Gl1a4zh3Bk4fBfDljjDg8WL3CMAvtyubleqPjhw6GKpq2slr2xiNjWnRlhpYctNzbfZeY49jEtU8zy/WJa33dPqtHhcK+OW7v0lUeGdnJqp7uGG5WaySPcGsjHU/0CWMAlll4NOHS2BLb5Yy5nvWJ8eqqZZnAuAJAO4BNj5qTS1DBkMge9gvdjH5C/oM2the17a22tusNJmKdlKumjzzQmNl8t88btemhKh0p0SsRxqSf2rNY0ZY42DLHG3oG/iTcnmSmqXZMfYRXclKwzCGSMdLK/hwxkZ3AF8sh5MY3QDzNhtvsotbyUYPFvrZtefdHwUvtfpf11ReO0ELYaYu0vZ00jgN3uOp30AsAqNxObTdLiDyA43yXyi50va5A+5aTBvVmw1ZmycThM4F985frl+C3P5Vn0zT7k94kk8yusNtEiWS5SQVKqQEq640eN1wrWuk2bc9R3R30Gp5AaqRGy5K7E5sbi8l126tDXZSTfrvz5LjJ22taTso5tn1UjKaPo8/SkeDN/nZSHYvSwG1LBxHDaeo7x8wzYKgnxF0m/P4k+ZOp+aYC7/JMesY58bfaZVVz5XF7zmceaiEJxrFbnszUZM/DNvv+STHLNNzFUNYgRrWYL2ArKj2Yi1vvP0C9IwD0LtbrUSl38DLtHxN0/jh/ldLyt9PFm4a550Fr8gMzvgArx/YGq4ecROaOZfp93+q+jsN7L0lK36OJjLbmwv8AEqB2i7U0sEbgXsc62jBYlMfJjnZMcLUylndunzBLh727i1lHstXi9a173PAsCTosxIdSu3m8Uw9M+PO5e0hk6sMPidK7K21/E2VIHJYkUw8ulyw210tDUQEF8brcnN7w+YUvDu00sR7ksjPPZZmi7SVEXsSuA90m7fkr49tY5WBlRTtk2u5vcdfrovVPPhlO/wDy818eUr07st6RC5wjnc2x2dsbrYydraQEB0rQXbBfPJlopBeOaSB3uyNzN8rhUktY4/WJtzuV5vN4PDld+v8ATthnnJr2+oq3BaOsb3mRyA8xYn5rB4z6EoH3NO90Z906tXkND2nqID9HI4eRstthHplqY7cUCUeOh+a8/wAeWP8Ahlv/AG6cvzNM5jfoxrqe5MfEaPrR6/dusmcPNzYh1txs75Gy+g4PTFRSRnPeN9vZdqPmvAseq2S1EkjBZrn3CavHeU0svfSPktv96dCZB0CdasYN5H6ebK4GwNuRFwfBWdRJSTNJLJKWTqwcWBx6W3bfzKp1xlRI3VpIF/h8Qu8y1052EELll1z766fDQIBXNo0SR1CVUuWlo6OnfQzveRx2SQiMX1yE97Tmqmnp4XuLZZTDp3X8MyNzfxWNwPEA+SZYUxyVrArELuIYHJAQXZXsNrSRuD4zfx/qAuM5KYSzpcrsgtfb62TN45Q4/mlYXhrpyGNy3uO6XBrnDNY5AdyN7bnkCnayFos5kgkafq6tkaf4m/mCVBp5AMpcLjNqOoVs1T6OvpXxucCHNIzb3BBBt8wlwTOc4ueS5x3J3PiSn6vEXSm73ue0NytuczmM6XO/zUaADMbHMORtl+Y/8rMnZ9JD6WXV4ZJk2c8Ndk3vYnbopFZQN4bZLSROOmWRruHL/HG+3zadtwTsOTYw8x8F4BaLGM6tczXUG2jh4EG3KyYqaOXK2TNniJtdry4Ru914+qddLixvoStZI5hLLvIOgLgD5ErVdq/R7PRfTMPHpi1p4zRlyk8nC58NfHkslQHVy2mB9tJaLNDURiopZgMzHnO1zNiWHbzHUcip3x3C+2Ee8Fr7C3db876lPkOIyNZmuGuFgS4WGtrcrbj4qR2gmgfNO6lDmwEM4bX+00cx8DdcpaiRjo3REtexumX2rZdbfC6LSKWlkcCxrHufmPcaxznaDXQa6JqNt8w8fwCUJ7NLmF7TxCWuzuzjTW53Pmm4Ta5/3qFqJVvg2HMkiqM3EAETiyRrHvjZI3vASWBsHAEX5H4pulwaWSdkWRzDPpGZGua119iDbUbahTKCrjGH1jbjiF8HD7xBtd2YjrbS6Zxipjdwnxuc2Th5JY7u+je3QPaejgb2GxB6hTKLCaqF/AZGYXiSHj3fl04eduZp6lrr68syiRSM4b8zdRI3U+6GOuPmWqe2onZGyoL+IJo54nh5Lu8XAPDvFwIdf+ii1zw1xjziSIEyNI0vmsT4g2ABHIhTEpNRRva+Rr7l0YGupGUOa0fC1rfBPswKpIBFPUEHUEQSkEHmDZLbMY3v4gDrjghxN2jkNfBuyrePKNppLcrSP25c1bv6ImnBqi4b6vPmIJDeDJcgbkC22q7+gKr92qP8CX+iiCtm/ayX68R+YDoDfRJ9bm/bTf4sn9Vm7aTv0BVfu1R/gS/0XBglRfL6vPmtfLwZM1joDa17aH5KH61N+2l/xZP6pRrJf2snnxH3PgTdSbNJTsCqRc+r1FhueBLoPHRRmENa+7Dns1zHDxc3U+Fr2/mSHTym/wBNIdDvI/ptupTpPo3OdmJfFFGwcmWyaE/ytFvNbm/tmkMgaZW8d5yloc6wN9Gd1g87NF+V/BPQtl4D4+E8uldAXSd4ki54bPC5JN762HRIdDLNNGD7TmRuF7aRtbbMegDWX8lKdWyFprGvERj9XihjGty06EA+6ADc83DqrRFlw2dj5Iyx54BcJcoc5kbxcXJGg6XKiVtHKGx8RkjG5e7nY5lx1F9/MKyoHR5J3yvc6RzRHHHmcC55uTK/qGgHfcuUntBC2Olom95shZI6RryS8HiaXB20tYJjCofZx9O2ZjqgOeyNrntiaL8eQezEegJ3P9UvtJUVNTO0yxvbNI+zYy1zcoPssaDyA0Co3uNwQbdDtsnjUn6Nzi5xDiblzs3hrumSQp2HyNike5jgwO4eYggZxqR8kltI54u0EhkbC+3IHQfM6Jckj3RyPc7uuNg3P9a+rsvxGquuyUdIZi6sm4cMcIdkF805/Z6f78llUlvZGqkhfVvjbTxQnKIngxOyjbKCLnfc6k3Kj4BjNTTVDn0kfEkLcn6sy2B5gDyV12t7aPrmse0GOnEhjjizbkNBLiOtiP8Ae+Klr5I3O4cjo84DX5CWlzehPRav+Pf2ifi1dLUT3AmklEbRKbF7jIPadYbC/kFDgidYuINibZiDY9bFdo4m9975izkGMJ4sjrXtbkNdXH4XK5BUHKW2Fg699b68v/CuNuzRqkqWxufIYhK4eyHi8bCfrOHPwB0803OZZna55JXu6Xe5x8B+ACXSUckjn5LNDdXSPfw44wObj+A1J5ApyrmeyVzhI4u1+kAdGXXFibbi9z8FhpIxnADTtbm0efaZ7Tm/zEd0H+EEkczyUCD8kiWYEWbm03LnXLj1tsEqH8lZ7QmsOyew6hiIMk8j2RtPsxxl75PAE2aPMn4FM1IUY3t7Wnu3/JYvWS/S3rMYa5vCghbDAHZrfrJXu957z5bCwVS/Up5k5yhnK+b4kW/JaHBTTthqzNk4nCZwL758+tvFdZOTHpmuGjKlSSapsuWeK72fjXSUB5O6SVpPt2n3T07RbbXomKfcq/7M4H63UtiL8g3cb2081yxm7p0t1GbNA9u4sfd+t8lfYJ2Jq6ojhwut77xlb96+gcG9H9BRgOyNuBq+Qg/elYl2+oKbuh7XEfVjH5qzKXrCWsXf30wfZ/0KvDmvqJBoQcjP6r2CDDY2NDQ1tgLagLyTF/TQ43bAwN/idqfkoOI+leSWIs2LtDbTRb+Dy+TUtmMZvkxn1t6rifa2lp9HPF+jdVjMT9LVtIY/i/8AoF5LVYrnSaGeMu+k4hb0j3K9WH9J4cPf8q43y539NHjHbeon9uQ26DQfJU4wyplNxE83+sdB81KdjUcYvFTxR/xzO4knyVTjHauebQym38IyDytdd7ljhOumMZcr+Uyq7OZATNURR/w3zu+QWVlIubHML77X+CbkffcpcLGljifa5LxZ+SZ3UejHC4+zSQXIukErzbddJTKvkWscPKx+YTxMLti6M+Peb/VV91wFbx8n5S4pLxY738UsOUYi2iWHps069y6CmnFdDlNrpd0PZaSdmaKWF7v2XEDJPgDZIxHA5IW3nppI7mwcD3SfI3+4qizK6i7T1kTRHxHiMfUkbmbr4FbxywvuMZTL6V5b0TgK7U1hk7xDQf4W5b/BIBWMdb6ap0IzM2dnGt7tt+HP5hDCrrB+ystW8MjsCevJdZLfX0xbJ7UJaOWv3Lppn6HKcp2d9XXx2W3xT0UV8AuI+K3rHqfksiaOaN+XLIx3MWIPxCskyS5aQL6rs5TjoS02cCD02TdQuec1G46yM2vyPj+I/qpbSoDFPj5J4zIy5u5T2GyQgjjskcy+8bgHM1vex0d5XHmE/VmJzbxxvY4GzwXh8et7FugIv0N/NQIXWs617EE9PirZ2fSbW00bP1Ugka4E+y5pbroCDsfn5qJRHVdB1LhodT0seVkqGYucXON3Hc6anqs67X6TpqaIsz8TvjeNwsTru06g89DYjxUTIe93rWcBl2uDqLp6npnyPyRjM52w8tdPkuOxAuZw32dlI4eZoLmC+oDtwNtNR5LdZhFO+5cdB5Cw08FysiyFwtI0jdrwAdeg6HqiAC7st7eJufyTsEwJyylz42tLQM+UtH8JNx5A6eSn/Sv2hOeC19hbutv581tcK7FmppmVFNOHSxAmogIs9rRsW9QR+KxDrWkttpa+htfornBcWmgljfBMYXgDvcjYXykcwbWssTd9LTdEGknQiO8pc1lg7JwzcNzabX3Ud0LLGzjl+jNyNQSNRZWFO6SpfLMWZ+/JPNZjhGARc3DdgdtxuotMyzrBt9Lua42uOGc1j5XsVtC8J9X4U4n4jXPYRDI0Xax7dQHC+od7PhuimkibNG6QPfHf6Zo0OW+ob8PvUH/p/at56KzxGsE/Aa1n0rI+G9zAfpGj2LttuBcEi9xbpq0ANp8z2mR/DyTcOTZuYO+jJG+trHpddlp23Ebo3t4T3umOmfhmRoI+Gtj/ABKty6NvsWm3j3uXyVjOLGJ0j5M0gaZCNf8AlzlDbHnpmFj0HVTS0yw5S5rw8h2Ujk4AlpvbqW/iF1piB+k4hzDM3hBnU3Bvz0Gy4yRwdlcA72QM9wcoIIt8GgfFNyBg3JaTa4toLk6jnyG3VU9HuLTn94HmItudrHdd41N0qflF/VRQ5n7QfZk/oukx/tB9iT+iw1tI49N0qf8A4f6romp+YqD0tw9vG/NRLx/tB9iT+iVmj/aD7Mh++yqJUTmOe0RNlBAc45uHoAN+STcBjm99zuGxzbG4BAab28G3H/hNsjJHdIyE6vOm1+W9rX+S40gXAvcxgZmE3DS27tOehItcDdb+machkDWlrmOzvewtfmsRGC5paPAkj7Nk4aWHO2MS90thzzf9NpJ+kNrXIBNhprbxCeppu9JJGXOfFm4bXjNkgGYZyTpdt2AeOvJQGVtoZIQ1vfdG50n1srTowdBck+OnRZDkxiMkvD4mTvcEOse4Sfb8bW2UbEaji2kLpHONs7pCC4m3X+qnUNZFHHO0x55pGiON7vZjj1zED3joAeQuq5rBlbc6HU21tobD7giuyRlmUHQ2cDtpfQhO1/D7nDzZP4zc6DUn46pLadz+GxjS5ztGtGriSdAFeVDJKCohfPTxZ2ASeru1jF290OAO40Nid990obxLshNBReszAMMr7Rxl30jmb58ttvj8FRtjvqb2EbbkW0VljmPy1nEmnka6Q90MDSMrBqLcgNbb3VU2O+vJrG302vos/SJ5bE+QCFkuUN7o9uQkDV7tbD4aAW3tcstqmxyZixrjplLhmyfxBp0JHK9xfkUoBua0Dn5cpzOccpktv3RsNNASfPomMN4t3ZjZru63Ld3dOlzoPOxt0K6fSFU1DxeIRmJb3uVrdXHl8bJEDe6Tf623Pz+9NNkNizM+xcHCMeyT1PUqRJSujsHfWa2QfyubcH5FXEqvkcO8073uDpYKWYBnyTSZLXzvymU3tyAIv03HmFDfz8/j8E9V0pjJY7duh0I+4rDX0l19RT5clPG9oGpkldeSQ+IGjR4AfEqLCUSQ9wPbG5rNs5zEOda5Gbb4BcgWpO0+hONQn6Kmgs5875ABsyNgLpD0Djo3438ky/2gmqpZv+S/SzrMWhcOHDTsiZe4JJkmP8zz+AACqnqdg+DSVDw2Jj3uJt3WOcPiV6pD6DnuLc04YPraZz8NlrlJ3bpjTx0MShEvpCi7BYdRsBlyuI1vIQBcdGrA+kGso5HgUzW2aLFzRYHyW/FMfJdSX/aZZcXmVkgp2QJorOXTUFNuVMgq3RvDmP4bhsQCT8AoELrFDq0xva9tszTcXFxfyXDHLV23Z01JxHEK0hjDUS7C9i1jR1NtPvTcvZYxn/m6qCC31Q4yyfZH5lU9X2uq5tHzvy+4yzGDwAFlVSSlxzOJJO5O69F8uMcuFqyqjG1xETy9o+s5uW/wUfjKO1w+KTmWb5P+G+KUJUn1gpkOTZKnyU4H86QXpDwRuk3Wcs9+2pjoolJBXLoaue1LSSu3SSUo5dF1Ijmj+tGf5mvIPyNwnXRQH2XyN/mZf7x/RamG/tOSI599SlNK7UEZjl25cvuQ1ql9qQ4roKS5KCm1NEp2KukboHm3u7t+R0TRSAVjlZ6NbTs99dPgLJQTTToE4CunjZyOsK2OAdtZoLZeG7L7OZjbj4ix+9YsLjZV6MM+P7255Y8nuuGemA2AmjB6lmi2GG9oaCtLdGGTkJGDMD4FfMbKkqXS4qW2cyYxvG12ka+BF/wVy8XiynX8azOc/b37tb6MIKx3EY7gyZbd0Atd5heVY96Ia+EFzGtnaOcZ71vIrPt7Y1fE4gnkzdcx0+C2GA+lypF2TzxtGXuPlikeM3iWajzsVxuNn/VtvbzIhzbsOYWOrTyI8FJYVY9oqKQSOkdJTzCQ8TPA9rhd2traEb8wqxi6YTVL6LbQyEOfkeWg7hpLfiV3DsXkg1jI72h5gjoRsR4G4Xo/Yrt+2mjMT4WyMJ1tbML7jxW8wujwiuEj2QxNe5vfu3IW+Ntue4Tybwu9dflmZb6eAVdYJCHZI4yb5+G3K0m++W9vlYKNEwBxyuzt5OsW3+B2XpGNehmeMOfSysqI7XAPdkt+BXmtMLE332WJZl22fZUSRyNfG4tc06OHLl+abb9cZbi7bn3ddPmpVBiPBnZJkDw2/dOxuLfmnJ8Tl4LY3GN8f1CQ0yR2Ps5twPA3HRbySIlO2xdqD4hSnVXEc3jucRbLmYGmQa6E7ZvibnqotOwguBFj0OifMjJHjPaAc3sY5zSQdDlvp45fkp9F9q+UW4g8f/spb4W8MOz98EAMynUW3B6+B+fJRZR+ssb66HqL7p+Rrcg1dn0sLd0jz5FYirvstj89LPxWayF72vY85RISPYfe25srGjFPXVj8rvUeIGGK/wBJG2cNF2k6ZWmxt0+5ZaCLdjyG98gudc5dOdv9UqF9j9JsQG39uzDHYEC/Ley3pD9XQyxcWN7Bnjc9sg0OQ3HeBHyuNNfFNiZ0UrJI3Fr22e1w+q4G4spuFvpXU87KguZIQ58EwzPaHC143N6Hry8VAqoXMeLtcwlrHjMCLtIuHDqCoHa3F5JWNY4RgB8srMrA3I57rua3o24vbqlMe76Muks1w4B+s5sYc2929NQR5b6KA45dRsAf83+qnT1ZOQ5G/qGw6gnVv1geo0VUNJJZr3mEAHKblt+64k6WHdAvbQjonY87w1rmgjRubnpmsfhr9lMtcS0F1zlAYTr+r09o/wAN22FtvJEGXVr8xIuGhu252Pj+aYojuk10Bt16+KQ6TwP3JUzS02uB4HUjwKZcT7wWcum4cEngfuTjXajQ772Hz3Udh8U7FqdX6c7C5smJU45W6ZnHW22W7XN105b/AHpqF9gdSH2MegILGfWcfeuC4WvyPgnp5HXaBbNcZSNTe/S2l7i9+iRxMouLtzfRsd3sjY9iQdb379xbTVdMvwxC3SOtI9jgGAerjQNe5hc4ju9bNuT1PimqOMNYZ3GN3DfGGxPueKc1zcCxyiwvte4CUypa0ylrQW8J0IcAdSX6SG+xNjpp05KuHPyH+b/RZVLkldI+SV5u83e46C5cddPjyUnDKCSaWOKJmZ7n5Ws5ewSSfAaknkosEN+JYOOVhdoCbNG5Ph4q3xfBnUnABlAme1z5GMLi6FpacocepF7gbW13URJkqX4XVfRvgnlYwsz8MuZFJ9YtvuW7X230VBi0kr3jOTJK993WOclx8r667DyTDhmy6gaPPeNtvz8PFOPh70bY35jcAPbdup3tex016JpTZhaI5Lu+kDsuTLsOZJ89LJrh3+w2+9hfS5KcexojfvnzFt9Mlh48/gm83+Rv4KEWZPDk+jd/07E8PJuPqg3NttTYnXa9lGZTh7yHPbG0AkucfDQAbm/QLtJMGnugO7rgTINLndwF9xsL38k3wnOks1he47NALjtbYLd/xQ/R4gIs2WNjpT7Mr7u4bf4G7X8SD8N0hsjne2SbANF/dAsB8k7SwN4cjpJHMAcBw2MzOe7lcmwAHmT4LtTiJlcHFobljjj055GBt/ja61hEpNDicsGd8PdcdOJlaXNvpoTt5jVRoK1wcJDaR2pPFHEBJ5kG9+uqk0WHSznhQsdI9x9lgJPmvTOyfoakJzV1mMy92NjrvzdSdlyuUl7XTzDFMXknsZC4kC13OJ+Q0a0eAACjQ/kvdDhuCYfuBPK33vpXA/gF5P2gnifK90TBGwnRg5DkF1wnKb1rSXLXSkce8F6Z2CwbDHQunrZGF7D+rkeQ0Afw8/vXmLzqFLpo6c6zzOZY+xHDxJJB4OJAaPP5Lll3dettT09vqPSrh9OMlNDna3nG1scfw/8ACqsS9J8tXaKja5ji0l1iAbDfvGwA8V5NiFXSezTU7xrpLNKXSEfyizR96rjLaxsDbkdR8VrHHx43dm/9s3lXoWIBuj6quZmN+5HepkB+By/esfV1ouchJbyLgA74gX/FQZsQc4Zb2HutaGN38N/imc673z/hnHx/k9nuuFJYdF264b26GQd00ypyk91hP8Tc1vIJzqo2ax2B815rdV0SJa6R/tO090aN+Q0TV0jPf/QJV1rlami2rhKUE2UDgSCUtqVHSud7Iv8AEC3xQNF10m6sZaH6znxt5WzXPyF1EnjaPZdn/ulquWNns5bNAp8sda9jbrayjpzOeqyriSUpSaClZI6z5BEPeIJCsm7pL0hWSlpz2Qa79XW0r+gLywn5qVN2AnDA5vDkJ5NkZ9xXX+3z/Dn8uLHBONVvUdk6xmpp5LdRZ34KscFjLDLH23MpfRh663ZJclBYaNlSo4IT/wBUt8Hx/mCfwUUlIspLr6KnOaBsQfK66E0waJ4LfjZyF0yXm1uV7/FPFdhrMvdLI3tvfvA3va24IXTX5ZIadE2LeKcLhy0T7KaMj9aA7o4Ob99imlRQVycpTGX25apFQFi+l+3Y3C22vW+/mFNY61lXRqeFvx1M0yrxySWwkyEt+uI2MefAloF/insJmY7MySoMIdoHcN0jb35kG4HjqqU7pcMxAIAab75mtPyvt8FvnWJhGhfilRTfRwVZe1wP6iVz2OF7AW3B8CAVRQtIcQ4EO5hwIIPiEwH9BYgam+/9E9BKXOu4lx6kkn5rPLdXXTfdm/R169CZGVMbJRcCJw36Em9/uVd2l9HFXR5XFjpWkEvfE0uYzXYn+oCqBjDWMDWxZZBb6dsj2u8i25B23Ft/DXXxekHE4oo5WywSRgZC3NG8jbR7b5gVc976u0jz6mOpUwQRyOAjeIRa548l2NcDsCBz31v5rgeXzvdLZhkfmfYABuY3Nh8Vv/7Ko54ZJaKrbU93SOwY7N0Jvp5GyWyYza/by+QW4m3mNRvyKkPyZBfMJNLHTIW22PMHx1/NGJYbJA+WGZhZIywcw8tiPxCcOTha5s925Tpky21uN1mKRELAg6tz65bH5FEPh3xdndsdf4SP6IDbMdY3GbcXAPTROZTm2EZPCI1sBdmjr8r7/FbQ3GHcJ9gCO9cb5dR3x9wv4qwdiZnfBDPKRDF3GycMF8THEX6FwB2BOmtt7Ktc0ZDe99dtb7b/ANU5KzvNvlbce1yPnbp5XUocqYQ0uaHCTKZO82+RwB9oX8roinDSA8F7GlzmszENzl7dT4GwBta45iwUqLFvoWxvjjkaxlTlzd1zc45OHQi4vfXzTWJ0mR12nPG4uDJAC1riMpIt1FxcKBuK+W9u6HlwabFtiLEC+5ta3xPJLYbEWNxe38WUjR1r8hp4WATEBFrOLgAS4W1ubWsB121uNL+CeuDa4t3R52trceev/laxCq+L6waAPnboCeZUAu8vkrf2o9eWn3/6/wC7KOKUKeRcEAO8lNoh9c205j77+Gw8LpfqwTwGWPTcm3z/AN/7snjnZn6RnC99mAki9/DvG/MHoOtui5PmLednSc8gaBls29tjYa+FjzSyNHaX7hvppa2h673d8PBMTEhuUkk3Dj3rj2bAedvHa3RavtmOzSWvG1xyZgXa9x8gLhnG2mptfl5pVFSmTu5msaeG18j9I2AvsC48hul0GFyS+yO6N3uIaxujnak+DT8kVWKZ4zHGDFC7guMebNme3u53O013PQX2WVS/0i6EVVPFI10b3ZXSBgDpmNcbWO4ad7eSqnss0FwtmN7NtcbjUctl2IavNs3d9rXS9/x8UGwa21/EnYnXUBWRCp23d3m5O7IQxo2dbQWvt/vVdnDS6MMsAXAAvtbYXJ0A/wB80u9pBo2bR/MlrjbfqefmmGMvwwS0d7VzrloHU21V0pLsvDeNS/Mdf+nl8Odz8LfHRo8v5Qn3PbwnDUuzHW/dy6WsLbnz5bKZg3Z+erdkp43SPDATawDR1JOgXPLpRJUNc8l8TYxkDWxwnIAeRJNyepubnqNlDlkcL5XFt7A2JF/ArdYv6NmUcZdLWw8QMDmwBpzuPTf77Kk7L9mhWzmJ0zYGNbne9wvoOW4HzK3uXDbM9s0GjUl2t9Bqb7XN07Bz817NT0+A01MD3K10byc1g6R8hPTQW2t+a887T43DUyZ4YGQAC1mbWHUWCuF39aTJXYL2kmonOlgeGv8AZJIB7vkp47Z108l31pjzA957y2MC21mg/CwKoaLF3QFzo+Hn1AL42SWuNSMwIB1UWoqnyEve4ue7UuO5K57m9t2dL/HgyLRs7p3nUnhhjBfXS7i7nzaFTMlJUPNvt8BZPwHRdOdtZ46E5UWR7bbHN719LdAE/UqG9cPJ7dMUiKdwFgSAd7c/NckKIYSdQCbb2B080p0RNrc9Agb08UsJ6WjytuSy/TiNJ+Qv96ZBVs0h2PZdQH+AHki619IZ6pEUIcdXNaP4nW/I/gl9VFfuuG9V0ibPBG32X5j4Mdb5n+iiLgC7Zat3+kOtfpZNlLDUgqKW0pDiuhSaHDJZnZYmF56BWS3qJekW64tOzsVVc442eL5Gj81Mq+weQd6qp2bXuevku39tn+GPkxYxKaFpHYBSNHeroyf/AE2OcqKXLezTccjtdYz8Vwm6uOcyMpN0pIXNt0FO+tPtbM6w2FzolMfHbVrieoeB91inXmDkJR8WFdMJf/sxdfhNp4anKCyR1jqLSuCQcGlPT7SmYJUggs93UX6FXDVzyzvq9tSRk6jCZGAuIFh0N1CW2eOXwWRrqXhuLfl4jkkq6WNFVUOUCannLub45gPuIsriPCsMliDo31TH3OYHI4j8AsVdXOC08jZPZ7rhbcHyW5nfwxw/aRU4C4fq3B48e6U3+hpejftLRFhG4IXViZdt2MlTUzpHBjRdx2GymVfZOrj1fTy5R9YRuc23W4FknFYCyTMNA7UeB5qD+kJQTaWQX3tI8X89V23jpz1fo7T0LpPYy+V7FLOBy/w/aUSOQjUGxHRbHBfSBUR5Guk9nQZ2scw/AjT5rDWmabgsv8P2lybBZf4ftLa1mKulFnMi65mRMjd8SFEjZGcxklZCAPakEhB8O6Cs1WKlY+P6N2XTXSxtfx3TzVJxfDBG4ubUwVGazrxOdpcbWIG2yjxDYbfkunjmmcjDra735dEqCAOBu9rba2JsXeSmYhhojAcJYpM19I3OuPMEBMYdhc05LYY3yOG4YLnfon2iOGW16g225JVJunarD5Ijlkjkjfr3ZGOYdNNL7/BN0o1SdWL9CXdKllOg0sL20F9d9Up82uzdRY6dOY8UmWS9u7Yi9zcm/wAOXw3Wr0zHaPmranxt3Eu4AC3ebG71fNYaHTS432VRSc0rh3Js5v1j3jbbz+6ysv8AEs7FTUF7pHEudfm92d2+lzzW3wKpw11GWVcEjHNAHrMDi5+YnQluw59QfisABo/4fin5Ze61unUHmNNbFY9xanS0zS6RsGeSPiO4Zc2zyzkSORSadhcSCHv9i+T2sobbextoOYVh2a7U1FJIZonauP0gcM4kHR19d+hBUmk7YzNqjVR5Kd7srHiKMcMi3euzY3Oq1LU0o4rZH96wynS183fbYfn8F11s7dLHS+bbz8lbUtVTzR1b6hknFcHSRugyMaw3F7x6NtcjY9dOaRNhLi+kbHIyofO0WiGZro3kj6N17dRYg6q7FQT3bdGyachc/wCikwzWf3tWG7XXALg0vbctvoDpoUxLEWFzHjK5oe1zXi1iHWII6odv/vqEIdqaYWDmEuYeZsHNd0IF+ht1HyRFMeWjmstve4Fv6X+fgmoZy03sDpYh3skXvYj5FWkODCRnEY/Le92WuW2PnqP9+c3pdEQH2gDdv9DonkxSTZrnn+Fzew+d0/dM1xcsm5vqjlryvvonbpipfYD/AHfUaEfBTD2ZIckvO+pYR5XLgf8Ax5JdJS6F7r8Nt7kWvmto0eZI11tvYpDYwLOkvb6rR7TrdOVhom5Zi83PSwsLADoB8Vq1JD9RPxHaDKwWaGN6BzrX6nq7mmPq26tj7o9k68yhm/8Avq5OQU7n5Wsa55PDaGtGpJOg80Q21hu88gNbW53tb/ROVBIazNY6ezybv0+amR4Tb1gySxwyQZm8B1zK99yC1oHTW52U2op/UXU8jJqWokI4mUfTRxm2gdyJ6dCPJNoi0eGzyztjpWSOe4ODdBmDDYFxNrAa72Fk9N2a4FRHTVcjYRqXvZ9PkFjpZu502ScX7SzPqXzmZ7nva5okjzQd21wLNOgBsbXOyrK7ECZGyt7puCMvdIcGgXBHO/NW2mmk7Uw4c2n/AOSZM8hzGvqJHWaTluWhm9+Z0FlmqOudGHZJJYy6No+jcW3F9c1iL+SiGcljgTfn8U2d/wC4ue9NLutxIGQOY98l2Zc8+WSQHn1HlqbKpq5OXlp1S+CWuAdYHTTzCYqva+S3ll/FJO3WPN7g28tPknYOaaY9veFjc2sbjQeVtfmE5C5MCxFlB180stOiTK46i+nMX/JO0tM+QhkbHPedmsaXO+QXL8tO1ELm2zBrdNg4O+J1NvuRAVKxPAJ6e3GZkvbdzL6i+wJKiQrc9o5UqM6U2y6W39kX+J3UipT2HOptfWPWNxYQcIAjncu/ILOX+TWPpEjedrlEitsSqaM3FPBMzvd18s4f3emUNH4lQqSudE/OwMLtQM8bJBr/AAuBF/gqlRmwuIuAbHQG2/gEsstvor1/bmvLWsExYG3tw4449/5QPuVLLK97i55c5x1LnXJJ8Sl0k2GLq61p6H5IyHoVQyeaagDc4znK2/eIGYgeAXJM19ihsBPgvPfbq01L+i2uGY1kgB1u2JjT+JSqjFsOa48Oie/oZKh4HyCzjaJ3+wnBSrv8v6c7gVV1LXuJZG2Ie40kj5lQ3BTOBZd4QXPK7a9IgCXHI5vskt8iQpPDC6IvA/JTelRnvcdyT5klcc5x5lS+H4H5JJarzyv2nGIfDSuGpdktrVLV1pXpJC6ghShKWJj4fIJCEglUdXke13z8jute0rDBanA6nNHlO7P8vJNbE4qtxukzMzDdn+XmrIro6ddFmKwqGKZWU3De5vTbxHJMZVRtaGbiRtd138+aeIWewCrs7IfrajzC0j1MUQsQpc7COY1Hms1DM9vsm3gWtP4ha9qzuLw5JL/VdqPPmF05aTSA4EpbZtLGKM+PfB/FF0FXY0WFPvE34j5FVnaGqOjB/M78grDCZgIbnYF1/wAVQ1EudxceawqCyRtvrZvMW+SmNKbZA1OEWXXBnJosLmzRanUd0jw/8WWcfSWLhna0sdpmLgXdLG35hWOCzWfl94feP9lIxuPK4OGmYWPmFnfZYrjK42JeSdbd4lzf6dUqKVziXOcXE7lxJJ+KbaCfgCu0yu+zXSzdiEzo+BZpYP8A0o84uRs+2bkOa1IijZCxoZK14+sS0xv620B68ysthcWaUE/U739FZT4h9OyPlY31+s7b8PvVyySRTzxBskgDcovoL3080qSOnLm2fMxlu+50bHuDvABwuPiD4KXjMdrP/un8R+apRUJy6XXbjrd+2o5Ha4vvZSjGeHfOzdoyFwzk8iB0CYygggblTcPizOYCNrOJ56cr/JWekvtpIKd0cOVrc7x3bCxu8+I03WRY32r+8FdY1VaNZYHXMQfuVPDI4d67tC2xBNxbax5WUxKS09w/H8QnDOc419na+tvgnaeCQscAwkOLtx94J56bp5lBM5zbxju7exY+BsdVbkFw4y5kbWtbGDknBk4bTI9smha4m4I6aXHXZLfNDI/2OETfVrvowSWBtwdh7RJBO+2mtdLE5os5hBDXa663Py08FwEXNv8AffCuzSY6ivbhubJpsNH35906nXp5q8w0Fsbd2uGbwO55LLFxWqwqpfwGDcDNo7UbkLNVSULxry01HLfkpOZQqOQa93LpyOilxxucbNFyrfQVdRat4uL69By8ypUsTmmzgQfFR5IXOOkZfp4hvx/8qSiCbudc6uP+/kprMPIvxHNYB7WrXOHTug31OiVwKn6reGOjC1vhrrc/FQXwuabOBafFXcRPY6mDiHcV4v7YLY3fXGjdRYnJqTsD1uOVGPTOjLS+zSIHZWWYzMzutcALC4A3Vdm1J316/wAR/wBE7DA5zTlZm0Z15H802khDJnFz9T3hd2u/mm3+yPNT4cPl730Y1b1Hd8tVHqnSNDc4tbujuty89uXMptdGnxEkBrXOsHG2U3sNyRroN07U0z8zI8uVxI7rnN5tFrk2HPnsmZ5iXXu4k83G7j5ldnjGVvL+Hor9U+3HRERPOZmji3LmZnv1tuRpvskBo62OUWFt+uvJNGXukKXHQSOtZjvZ6W/FY3F0dbTxsfYv4jctwYdRmOwJcB8bBNNljbJ9JEZQRYNEhj163AN/LRSBQTE/q7eAyW0+Kj1lI9p7wLf9FvK/xT7LpK5sbZG8CN5d9aTiks8gCB8wkxTHLl0sDf2W3ufG1/mUw1xta5sdxfRORlMaZQQVfDLnZIn7i0rGvGotoD/RMyyX1s0X5MAa3XkANB5JZo5DqGEtPNMLO10XLTuZ7Vrkcntd87E2+KXCnW0Erv8Ap8ujW/0S4KKQi7WEjqrL2mjrcJdI0OBaPO/VVT4wBzvfwt/Va7D4y2NocLG50+KzD8Nkv7DlzyvbUMxOHMHwINvnp/RTcLtxo/M7b+yVGNFI0Xc0gdVIw39cz4/5Sm+ka54ZbTNfxc38EhhTV0syZWl3QE/JTbR5zly6qTjzPdd/7f6rgx5nuv8AuVRdMaqnHtmebkwe0bL6Mf8Ad/VR8SxESBuhFr725rGmttFD7DP5G/gl3Uanf3GfyN/BLzKbGcxI/SyfzFRmuSsRP0sn8xUUSK7El5WxjcsG6RbiN2iEP3WLq3/SP/nf/mWtdKsPWSfSP/nd/mUge4iVE9Qc6lUxWkRrLhC7mHUJOceHzV9oEsRO6H5J2OSK3eD7+Dm2/BLdUQe7J/iN/otzCfdTkjFtlOwyp4cgPI90+RUF0jSdNB0Jv96XmFtx81lZWzIQ1QMMrmvj1cLt0Oo+CmCdvvN+YXNpWY9S3aHj6uh8iqAFbB8rCCC5tjpuFkJ25HFtxod77jkU2HYX2II3BBC2cc4e1ruo/wDKxkbx1CuMFrh3mEj3hr80lF40qDitNxGEfWHeb5jkpLahvvN+YSXzt95vzCuyMYJU6H3T+KwNbJcEWdqNRvzCgB46re2Vg2sIjMfV1z5dPuCj2XGSDwUjMOo+YWpjtN6MZVNjju1NhOsfZax8bNyMxvykP90jRXeKRZ4iRys8fn9yqcQxESaCGCKxOsbXBx8CSTf5BW2ES5ogOndPlyWc41KzzHaIpyuTsMchA0LXafl+SdikdI+7iXOcbXOpJ8Ug0+E4a9sBlMb8jjfPldlsNN9ll3z5pC/ne4/JaPFagxwZATb2Gi5ttr9wWWburfY1VSOLAbc25h5hZBafBKm4c33Tp5H/AGVQV8OSV7eV7jyOoWL00dpAtHhkALXyE94loaLHVo38Oiz9MdAtrTYJO6E8KGSTIz6jS7vH/Vdb/ix9sTXzZ3uI62HkNFeYJw2Rlx56OzdegCoeE6J7mSNLHsJa5rhZzXDkQnIXZn2AuToANbnkLJJNJVrU48Ldxl+8dXafco9Ljzs2rW/eEuCpomx1GeGeQuNqYmZjBGerwBc/AW5c7ijjks4W189j5hYumptr6SoZMDcc7OYVR4rhxp5i14Lb3IBFjY7X+YTNHWOM7XHd79bANGu9gNArHtA27WnnnP3j/RTf4FOX6t1va/mtPhcn0Lf734lZQs2+9a3Cm2hb8f8AMVfaqChP4K7wc/Sf3SqakaefyVzg4+k/uuVos56IOkzO9kNHxNzuq2vxlrTlY3Nb4D4KbjM9mho+tv5BZipj10WVqSO0J5xj4Eqzp6iOceGtw7cf75LM20v428euykYY7LM3+LQ+N0sRLiwbvWJ7jST/ADDkFYYlUergRljmvFjkIyd0i4J+Buk4nOY4i4bnQfHmss+UkC5J2GpJ20soL6LHnZT3G/MqTRYiyUFtrHm08/JZlstgpmCTRNmjdPxOEHd/hZeJtpa+nRLoTMQoGxuae9kINrAGz7aA3I0VfWknVegYlhEFRI+OnnYyPQxvqbx3Ob2QbHXXS9lg6sWzMNrtJB1vqDbddJq4spuHCFkfENr7Ene/QBOy4+Pqt5buNvuWdI0Kdy91c9NtDh+OblzR4AX1+KnNq2TtII15tP4hZek2U6hfaRnibfPRdeP8XPfaDiNJw325HVv9Pgo8Tlcdom91h/iI+BH+ipY1yxbaqg/Ut/ld+JUangjp2Bzz3rb879ApeHD6Fp8/xKopcTeJeIwju3a27WPGXycCPuSCU7tD7rNPF3+i5R4sWNy5Qdzv1UbEsblqP1nD05shhjO1tS0An4qLGVuSI1tJUcRgda17/iqKTtAb+wPmVbYRrG3zP4qho6mnYSJ6d013aFs7oS1vPQA3WLjurD0mJPlY4ZABpc5ttfFMYZ+uZ5n/AClScQqaN1+BDPGb6Z5myMt5ZQfvRgPC9YZxeJl736vLmvlNt1vhGdr1cqP1cn8jvwV86CgLRaSpa7XNeON3lzCqJmsu5oOdm1yMpI8Rc2+axY1tjXJxsa0f6Mi/Zj704MLit7A+ZWojNta1vJMkZj4LUfoyL3B8yszOLPeByc4fetaiba6JtmM/kb+CGsSKc9xn8rfwTt1zsjW2frsLkMjyG3BNxq3+qh/oaX3f/c3+q1ZCRl8VnKKzBwmX3P8A3N/qtJnRdcWdrBdYysP0kn87/wDMtksZV/rJP53/AOZNhq6k0rlFUilVFYnYMl+/e38O6aXFmC1ElN7sp+ITr66ntYQn4v8AzVMg7ErfNOKwdiEf7CMeJcSoBcvpCLs7SYJR084oxW5i31yryiV8UZZcyNbY929rAWHU80YfhFBVUnrUFFFH+kK6JkfEhj4jYhKxsoFr5QRFK6wNu8uV8jUxfOlJUgHcW2Vrde8xw08naX1ZsMPCpcOddgjZlErpGOJIta9nNVp2fweEwU7XwwvdWVdVUPzRsP0HEke0ajb9ULbarO2tPnC4UOubfUct19KUMvHxOShfh1PHRxcSRj3U2Xj8MsbpcZSA54Ol9gqft5WRfoqvdU0ENKOKYKA2aJpyHkNlDbAs0GbfUX5bzZp87nZdjktY3XrvoUoYmQ4lXzRxvbTRDhmRgflLWPe+19tA3ZesUvZmlkmir5qWCOX1G9RGY2kMc4tcCRbduV7c1r20V2afMTH3F1wuHUL0z0T0kdQ7E8SngjkjjMjomSMa5gke50hAB0BAyAW95emPwaJ2NxgRRCOHDXuLAxuXPJUANNrW2Y5Npp8w1DQW/eFCDF9C9qMKbRU+PVGRo9YfDDDoPZfEzNbprI/5L56D10wrORIS7Ju6WFuVFhQnQ+f5KY1Q6AaHzU2Nq9GF6c8kd0B1KsMEeWvLTs4feFv+x/YemqITLNUiOx1bdl/M3W8wTD8Hp+I1ksUhDbyZn5+75f0TOY49d1Ma8Dx2nGYP6j7wudnoLyE+6L/E7fmvYMV7X4ZHC/gULZCWnV0bG/G5ufFeY4JGGx59s13/AA5LlP8A8bWEnZerq3fQQve1ulwG2BPiduSt3+hOs7p4kDWlt3F7iMh6abqop+1FdTwEx1ccbHPJEIkaZt98oBy6EbkbKhxrtZU1WXjyuflblGptbxHVbyv+mdG6ZnAqXRkg2c6Mubq062uPC6Vj8GrX/wB0/iPzVSx3NaKUcWHxLb/3h/qFzybiqwZl5B0HePw/2FqcV7cVcMbIIp3sjLSC1tgQ0nkdxz5qjwGHul/vGw8gouJkPLneNh5DRN7XSvfMSSSSSSSS43JJ5kqxwnC3SODyS1oOnU+Sq2hbB7ckdm6WAA8OSdp0hz0VNHo4i4J3cSfkElhpbj2eXJ6rHRd1/wDM5NVDdQPALVxIvqdlLnbly5rjLo72r6JXaCO7QNu//wDVVmG03fZzIkZ+Nyrvtk6MANjubSG8huC+7BpblY387qcdexmpCABqS7YC2lvP5LW4RCeCwuNzY/is9S0zQ0OcL9L877afFarDR9E34/5iukjLOU0Kt8Jh+k/ulMU8StMLi+k/ulTydGKNjMfeb/L+apJ4Vp8Xi7zf5fzVTNCp45tclJLS31aO9z1XKBhfOwd1rs3OzRca2HidgOvRTHNttvddgoA+VjwSHZm6eIK3lizEntLHlYGuBvxCLdCAbgrOPjuBbla/xOi0HaGU5Rf3z/lUCXDywWzMeDwnB8ZzMOYZgL9RzG+i56a2qnw90n+K39UyTop7xcuvo0H71HbGCPis2NNZVvPBNubLbX0OhWSnkJcSbC9vZaGj4AaLZ1bPo/7v5hY2q/WO5a2T6RMoMJMgzE5W8upWpwSpo6UvM0EVQMrRllf3mm+4Gvx0VbiUnDgdl02aLcuSzTW3+yFFeldp8WwmYsdTxcN2UB2jg3QbBtuXXms+2WnuMuW99NHb8llHtItdP4e8mRn84+5XeppNLbtB7Df5/wAlRsV52g9hv8//ANVRsKmK1rsNH/Lt8nfiVk4YHO0aC4+AuV6D2Lxv1VrJOGyTuOGV/wDNuDqtz2Y9I2GzSHiUsdK/Ie+WxuBHNtwAVqbn1tmvCfVT0Q2Oy9xqKXs/Ul2WVsLv5nR/IO0+S8px+lhjkc2GTiMBIDuoXfHGWb7mvy58knBf1bfN34rL1je981qcE/Vt83fis3Wl1yNctydvHquF9usRWhT8LH00fmf8pUJoVthlOeNHcHn/AJSt442xm1frjiALnQDUqRw1HrmfRSfyO/BY4rswMSi/aBP/AKRit+sasgQpBGi3MU20n6Si99qzFRq956ucR803dJzK9RO2wph3Gfyt/BOpqn9hn8rfwTi57aVVTjmRzm8O+U2vm/0TRx8/s/8A3/6KuxH9bJ/Mo91vURYv7Q/+n/7/APRXQKxUi2rVwybgWMq/1kn87/8AMtmsXV/rJP53/wCZZU0pNKNVGUulC0KuyTlTll0NTSbN2UnDqJ00scTLZ5ZGRtubDM5wAueQ1XAxKDR0Wpgm3052GwGswuOojrqmCXD4WZoXm4dG3XMCD7LbfVubclOw2gZG7CaVrcoihnqwz3csQjt86gr5hrcVqZmCOWoqJYxtHJNLIwW2s0khE2OVdy41VUXFuUuM82bLe+Um97aDRcvirfJ772RwGpjx/Ep52Bpmge6A5w4GIzta29tjaIaclqMJhAxEQN1ZQYbFF4Z5pOnlA35r5Upsfqo82SpnjLwA8tmka5wGwJve2p0T0OI1ffyVFSOJYyZZpRnIGhdrrbxT46c4+j+z4r6c19ViMgcYoHSU7AWOEUZL3ub3QPcYNzsNV5/6bIPWabDcTY4lkkQjcwuNml7c4cG8jo5pI6N8F5/mqjC5t5srjmc3O/I59rZiL2JsBqeizcz3aBxccgygOJOUb2HQa8lOGvZy36e69kMTdhfZp9YxjHyzzl7GSgljs0rYhcaG1mX03Vv2LqK2vwjEqgu4lXWumii1EbWMEQY1reTQCXn79SSV89yYjK5jY3SyujZoyN0j3MYBsA0mw+ASmYvOGCNs8zY23yxtlkbGCTckNBtqSs6Xb6I7O4RDhuE0lJWcRkldWRsc2HKXOndKC1pPu5WNBPTzWm7VVHqjMSrx7TaOGFh/iaZCLfGUL5TfjFQ5zHOqJ3OjIMbnTSOdGRsWknS3UKaMenkY6OWonkYO/kklke0nqQTqdvuTSvbv/wAhcStQ0sQP66oznxayM/m5p+C+dFIrK6SV2eR75HdZHueQOlySo4VnSUtqdzJm6LrXJFlRz2B81NE6qaV2h81LgXbDJmpJqSpOGTxXvM2V7fdie1hPW5IP4KtMZJsE/A2wPmt8rWNNdBWxSN+ii4LW3bl4jpTbkST/AEUXFKohpvu/u8hpz0CpqWsdHfLbXrqkTVjpHd62g0sLLP20YdGmvVuqlrjnK1EMc1cYDPo5nQ3Hkd/9+Kqo49SpNFTyMdmbYeeqzxt9Nb00EwDIzl05N8yqGaPJ3SlVWJybG3dN9BZQpJi7Uq610hR0HxWtwuZs0dudu91B6rKU9MXeSn4ackpynUDktY41LU2XBpA2WwzDM61v6Jmu7N1DRFIYy1srMzHOLbEDmBvbUctVoIMYEEVWyRjZphmZG4OBiZpq/T2iOWw33VJieOVDy0G3sNaznZo0AHQalay2jlLE2ADMbve5oHz2H5q6xmIABxt7evyKztBA65fJuC0i+uxupdbiD5fatYHSwspMS0zIC7XlyC1GFs+ib5H8Ss3HsFb0te9rQ0WsPBdtdMbJiarLDW9/+6VCjCkRSlmo3sd1x8jeKRio1b/L+aq5GqZJUF4BPRR3hTx+1yVcsaRSuPGZb3m/HVSpWqNDo8O6ar02bcpUztJQF7W5be3fXxCqKOpkjifET9GZIXuj5ZgSAfPU7bqdVYm4mzrZfAc01LFnGngfkbrjcdOm1VM3uS//ANPzUOZgA6803JMbv8Xaj4qbhOHGolZCHxxl+gfK7Iy9tATrvsPErnv6VqZv1Y/kH5LLYgzvjxK0eLMngmNPK3IWggtt02IPQ9VRVkffb5rpMf4Jb2umxiWE36Wd4HqqgYPIx2gzCw1FvwXaiQtbdpsfBKix17d8rjb3T/VcspxrUrv6LkP1beaepKZkGrjd7yG/M7D+qdhxN8rTbK3y/wBVQTPeHZnHM4G9zrsVmzarftF7Df5//qqKMp6txR8gAdawN9Ao8aQrV4e76FnkfxKyrJtlPp8Te0Boy2Hgoz4RYW3SbDfGKcY5MuaU7FstzKppoMBqBqznfMPEL0Psp2pgpGOilp+I1zs2ZoaTrvcFeP8AEykEaEcwrvDO1RjvxIIqgH3+I1w8i0hS+9flHt9OMFqsv0UTXO2a5nDNzy6K7xPsNSTZLDhlmxbbW4tqvn7Fsfp3j/l2TwO6F7Ht8bHcfeiix+snlaBM0OaO7xJGxt6WuSBfVbxn4ysZs/T2Kp9F53jmHk5qxnaPsvJA2QP9w2PXRMu7U43Sta5zXlh2JaJm6eLSVQ4z6QqmquJcuxbYC1uq6Ycpf59xm/8AayUzLFOO9lMyOuuGXRYyy03HCFyyMyGvBXPbWmvp/YZ/K38E6s23GJAAO7oANuiX+mZP4fkppUTET9LJ/Mohcnp3l7i47k6ph4stdxky5bYLEqz/AE3J/D8v9VyyajRrF1X6x/8AO/8AzFTjjkv8P2VWyPuSepJ+awril0qiKXSrQghqfZEtrQdloy0FyuYsGhb9QLrcscf2xJa85ioXnZh+SnRdnpnfUt5r0EujZ7oUKfHoGfXHwU+S/UOP5quwLsc98jWWzOcbMb4+a9CxP0NQcFzjN9PGwvLRYMPh15WB08keinE4qirky6mKEuF+V3gXH3/NPdt4Y6iCvq6Oqe6akN6iJ7HCI8Mas1AvYB1rEjfrdcs/JlvvpuYz/ZvCfRXRiICV2WqkiMscd291g2Jba58f9lMN7LU0FCauodwb/qW93vk+zv138tVe9kO01JisslRHTTMeyAQ1MsxAhjadTGyxIJPM2Fm72uAbbtDVYbUVFHR1EHrL6qOV8ALA5kUYZcyHUZb2sCBfyWOVXjHjsONwSyxU7T35ZY4m2bexc8NvbwvdXeO+gyNwn4Fdnq42CUwOYwXBBsCAbtvY2JuNFlPRZgDH4vBle17IZZpWi4c4sYHBrj8SzVet0tY2KXF8T1cXyCip2HTivi+jDGX96Q5b9QSrlSPNew3obbXUkNVNVPg47n8OJsQLi1pIzXJ55Sdtuqh0XonEkNRP6yWMjrnUNOwxZ3Sk1LYWPcbi1y7UAcjqF73hmBPgkoYWD/lqSjkjLri7pvo2t032EhJtzVNg9CWQ4bD+2q562W++Q8WYH4PfEsba084PoOjNaaVla/6Knjnnc6Juaz3ua1rADYewbkk7jdYzHOwfq2GUlfJUASVeUspeHqWuu4OD78m2J03Nui9h7GYqZ+0OMa3Y2KOEdBw3BhHzzLyb0t9phV17o4//ANejHq0LR7N2+24DxIt5NCsKwSUAkp0BaZNoSw1Bagdptj5/kp1OodM3Q+amU5XTFmnrWuuQbLsjbpTGrojt0iLdOW8EiNupT7Q7lXMqmMb3U1kXW4ptGgbqVaNVdCO8VZMCvhTNS1Q1enaZ7QNUmrGr1Fcdlz5ccmpNxd0Lrh3golDNaX+YlQm1JAyg6JVI8h7SNTdL5N04reMXZIBuXPATr4/Z82/clxRZfiST8U1NMb2HRdWS5JMxyj4p18dgAo0Ispj1vD0zRExTImpmNqlRrf0iQwJbtiksS37HyXjzdMSWDQeSS4Jcew8guOTFahSNUR7VOkao0gXsnpyV0gXYpMm+ydc3VOyw3Cxx2u1PXUgDHOF78T7tbKuFwr6Cc3ynon5YQfyPRceDe03B6qKepj9edMWuiyZw/vxnSxN73A108Ux2lwpsFQGMlZOwjOx8ZuC07X6HqFCN+Iy/uvUmkrGxVEL5ImzMDjmif7LwRb87rWumUSphu1VMkVt16N2kw2kMbaiklGR5DX07r8SJxbfnuFgMVGoWPJJZtrGo0cxadE5VtN9d05htODmcT7Ow6lNTXvrv965+o2YECcbCmg+ykRyXSIbj3T6ZDdU5dIuiZRoiIaJV1yIKxCJVxoSpQgBS+yOBBK7ZcsqJNJi88VuHNLGBsGSOaBffRM1NU+Rxe9xc92pcdyfFIsklt0uVNFApEgSmhcepaGonrjhYpDUork0edqEiGVETkl41V3Q++SybD8yUTcJhosVeVNFvZZJCfIuFHugSUmyUQk3WAXUylUNTKUqi0p+1r2NsB8yodT2lnf8AXt5KkurLB8CqKuQx0sT53hpeWtsLNBAubm25HNdOTMhiSsc7dxPxTJetLhvo4xGeaaCOmPEpywT55ImtjLm5mgm+txrpe3OyjUPYavma18VM97JJDFG/NG1kjw5wIaXEX1a7XbRZ+ReJHZPtbNh9S2ohyuIa5j2P9mSM2JabbagEHkRz2Wq7YemWetp300dPHSxy/ri15kfIOYvZtgeehJ6rOxej6vdVPo+CG1DIeO9jpI8rItO8XAkcxsSoruxNeHQMNLKH1QeYGdzPIGtDnEC+gAIOtt1ztlaaKf0ksZhAw2kp3U5fpUSmQScVp9sg2Bu42Go0boOVnKn0x1b6RtOIoWSiH1c1bQePwrAED3Sbam++oA0tRwejnEX1HqgpnCfhCcsc+IBsRdlDi69hqLWvfwTFT2Fro21DzATHSPeyeVr2cNjmgZgCSCbXGwOqnSpXo97ZNwuokqDBx3OhMTBxOGGXeCTex90BWOI+lSeespp5YWer0knFhomOyRcSxs9zrElwJBvbyAuSqeXsBiLZY4HUknGlY6RkYMZcWNIBdodLXG9k9R+jbEZZ30zaY8aNjHyNdJE0Rtd7JJvbWx0Fz4INLR+mqdlbUVjqdj3TRRwsi4z2sha3XTQ3uTfkpbvTm/1iKcUTBwIJYI4+O7L33RkvJy62EYAGm5XltdSuikkjfbNFI+N9jduZri02PMaFaqb0a1TcMZiBDyHkngCF+eOEF15nm+gsL7HQjzTUF/TemuSOaaeOgpY5ZmNY5zHPA0e92YgDUkvNzfWwXl0ryTcm5OpJ3JOpKvGdjK/hPmNHUNijYXvkkjMTQwC5d3rX06XTuE9ha+rhdPT0skkTb98Fjc1t8gcQXf3Qeiehm080KbgfZ2prJOFSwvmfbMQ2wDR1c4kBvxISsSwOopp/VpoZGVF2gRWzucXezly3Dr8rXV2IVkkhXuO9ja6iYySqpnwskOVji6NwzWvlOUnKbA6G2x6KhzK7RJpNj5qzp6B26TgkY181dSTABdscOmLVO5uqehiRlT0K6YTtLQ9llEYe8VNkUJg7xWs+kicz2Umycjbou5F0vcZQ6f2itDhOAT1DwyGNzzpe3stv1PJUVHbi6+zmF7b2vqvTq/tvDBC6mw5jmNcO/UO0kcdNgfC4/BYxtk67tMnmPaHDH0880MmUvjIDsjszb2vofiqcqbXHvSfC6hkLjnvbpPR2kjBfY/WFvjyVhhtK5r7uG113CmW7xbsPxU6SS3mrhiWiaVMmLmlxR31UmRmgXeY7jnvSNGFLDU1G1SmtW8JpKcYE/G1NMCfYFckh5iVJsfJcaF2TY+S8mTpBHsPILjkRnQeQXXJitR5Aozgpb1GeF6sPTlUV7EsbLrgm3Le9IgTjUpdPUciuSBNOYvN9umk17L+fJQqs96P+b8lIhmulyRg7q1DdTPlaT0VNW1IfYhWNYTkcD81RNC5+XJvGLbCho7zXa5lhdN4VOBcE68lJxIdxJ3iVBipswum8lnWSoKuwskvfc3Wrx49e0m9usk1T+VR4md5TgxcsWqjZF3KnyxIcFrQiyoAXZhsnGtWb7DdlyyeMaQWIpuyUx9lxcQLJumnpwJt6COlxhJS4t1yqgtXLKQ6NIY1XQaahwS3sSo2q6DbHIlZzSpI7JxguFBDKTZOSMsm7qAUylUNTKVQVN179/wDj7hQjgqax+nGljp4z4N3t5ueB/dXgBK9/wPtth9LBhFGyqjyRPdLWPAfka4U73EE21vI8Wt0Wcmo9JoqcUsNdKf1r31FXJ4NsRHf+4xv3qh7PYfwo8CpDo6Knkq3t/ibThhv/AHqj7vBZqP0m0E0WIsnqchrZ5YYRklsym4TYmvLgLNBs5+pB1KmYh6T8PE9XUR1LHCOhZBSta2TO+ZznucALbaQi+3josaVqu0GFNzVVYx2tVR09DGR1fO5ocPPis+SOA12LPmdpFQULI29BJK8ud8mRs+0slgfpKw71TDaeWqa18MdO6ozMkytMcOjS61ic4boLrmK+kbDhG7hVbHSVdfTvmIEn0dO2WNrnG40HDiAI6uRXo2G4cG1dXO63En4bI+vAiYB/ne8/ELAVUV8Lpod3YniuZwHOOSudM74ZGa/6rkXpdoG1lbM+o+iEVPBShscj+IQHvkeAAbXL2tubeyFzDe1WE+qYXUSVrG/o+AWpswMzpvVxHZzPaJHetyJN72VGspGNditZUvNm08FNQMPSR7uK8fHPCFZYRQtilrZnfrJ5eK4c2wsjEcY8iIy7+8V5y70l0PCpB6wwPqK1lVVjvfQMBMoa4gWJaWRR6b2QfS1Q3xN7qjV/0FI1scri+NkGj9BYAve/U2RHjPZLGIGYlT1NW3NB6w6WUEZw0uuQ4jnlcQ74L3X0k45X0cb62llhqaGdsLHxyNzCBpFg+MtIzB+YXJvY20I28W9GzaD1rh4gx745o+BFlBcGzPcAHG3eB5AjYn4j0D0r9pqejov0HSNeSwRCRzjcRsDhIG33JJtfkAfgqNm/EJsTwembMGRPxKZkWWPMAIOK57rXubmKNx+PJN03bwtxqHCKWCMUsLHRyENN2ObAXjLY2DW91uo1JPgs1V+kugp3YPDBIZoqI2qHMZJZo9UMIcCQM1s7jpfn1XO03bPCaP1uqw5wnxCta5vEaXObBmGr7kWbsDYakgXsNoLHtPjbez9FelZG6qr6mee7wS0MLy7UAgnK1zGgX3JPW+pxKmhZMcZqIxnpMObZttWyHM9wF+YByj+c9VkKntfgNZT0VTWvvNRsBFN9IX8SzbtyDR4uwEHbrzUbs76TKKvjxGnxN/AZVSl8YcSGiDhsaIw4bOGQHxLjbmmhEx/tlLiPZ2qnqWRseK6KKLhhwaQHxu0uTci7xfw814kAt96RO1lLKynoMPbloaQlwcQ4caYggv110u7U6kuPhfBBaiVPw+e1/NWBKqaeEkEjqrWkYXN8Qu+F+mKfCWxcDUpgXaRilKGz2ypyhRjvlXP6Zi8w/DnyZWsBc52gAFyV6HB2IpKCMVGIvzkt7lO0al3MePLwVN2W7ZwUVMckGerOgkdbKB+Py3WcxrHZ6t4fO/O4Cw5AC+wC6Z7vU6k/8sxSvc0zyGNpawvJY0m5a2+gJU1qraf23KQ+S+g2WcMtNVX1Y1kPLRT6aIZRoNkxXt+jPwT8Du4PJc/+prfR58lgmYhc3SN1MgatTvpEiFi5KnWpp69NmsXP7cjCkBNxtTwCkWnGhPtTLU+1YzWHWok2PkgIk2PkvNW45HsPIJRSYth5BdKkUy5MuUhwTDgvThXOmCE1IE+4JmQLoyhyNSWNTr2ohauUnbe0V7LG6fjlunJY1De2xUs4k7O1dMXsIbus9wnN3Cv5qktYXBQKpriL20Oq45zbpiq1K9eJblPzTLo7bpDQuXcacUhibLLJ2FVEmlh5qYAmaTZSQF2wjGRt4TMgUlwTEgWrNERpeSkwN0UafkpNOsYf5LfTskaYIUx6aDFvPH8JKilIyqY+FRnMXK42NSkAJqQp8rjqclSrtDAS4xquZbJyEarkqSAuCNONCXZbDLo0lkdlIsuWVDEjbpuIKXlTJYpoR6gKGpk6hrFAplKoamUqCoC4XLoK+hvQ12Rpm4a6sqYIZXyPlkY+WJj3MhZ3bAkG1y1x5brFrT55L0rOOei+kMRwNtB2bnzRsFRLTkzEMGbjTvALB5Z8oHQBaDAezlLSQR0/q9OZ4KFss8vCj4hktbMTa+pa/c8lORp8ol6QSvojsD2JoK3CsOm4MTDHMJqlxbd8xi4jcr3HkSQ4g6W5KC2jopcNxStp6OmZx53UtDlhZmynJC17dO6XPc46Wtp0TkungmZLDh1C+o8d9HlIKWkoo6eFplnpopZWRMEj44xxJHOeBe7hGRc83eKscXwWGXEqGAwxGGGnq6h0ZjYY8+aONlxa2mZ9vLwTkmnyZmCHOXv0+DxS4ZXSxwQ8WvxF9NTP4Ud2RmpbTtym2gAY52nO61naHsHSO9RpoaaCNnrTJZyyGNrnQRRucQSBrmdwwf5inJdPlMHofkpmG4XLO/hwRSSvsTkiY57rDc2HLUar1P8A/IOVgqqOBjQ0R075MrQABnkty/8A5rU9hMFhwzDIMRjgfWTVDIjUvY65gpnkF+VovcMsLgC5I3AGl2PnpwsSDoQSCDyINiEnQ819J9iKLDahuIV1HQtkiztbDC+GIF0kcILhEHaNDi4dNVl+0EP6WraTDRh8mGlj3zzucyNrjAG2Lm5RY9AdRcjoU2mnit1wyWX0tU0uEVNLiGGUsLM9HA85mxgkStBs5r93ODhYnmdNdVG7NYVhuCto6era19fX5WucYxLlc4gZP4WAkN8Tc9bORp83Zk4DcL3+k9H1BRVWIYjWMaKOnm/5WEtzR3LGkkN+tZzsjW7Ag9ARnvTLBSzQ4fX0rAwVLZGmzAwvaAC0uA5jvD4+AV3sry2ha4bbX/JX1Jp8VAwuPunz/JWjAvR48NduVrojTsNC9x7rXO/lBKvOzvZ6SpeGRszHmeTR1JXreEYfSYTGTNKwyvbfW19OTQvVnxwn5yv05S2sJhnovcYXT1cnq7Q24Btm+N9l5gB9I7nvr1Ww7Vdsqitdd5yxg9yJvst8+p8Vj2HvlcrvXbeKe3ZKJSM2iZc+63y6TRmAd5ylgJLQlXXORomUjY6+CYJvpySct3Ep9jFOS6da1PxFNgJ2MK4+0qVdcshoS16fcc3WBOgJDQnQpELaE+1MtTgXPNqHguSHQ+S61JkOh8l563BD7I8kpy5D7IXSkWm3Jl5TxTTgu+DnTLk05POCbcF2RFeEQpbwkN0WJ7X6PFqiTMU1iamYt547iY1VnTRSIng6DlySZo1Ej0fdea3VdEmroOI3TcKjfSubqVo45uihVR+9Zzx+1lVcrl2FcexLiC5NNf2CxClinvVx8SItI9nNlPvWW/xn0WsmtNQSMfE7UNzX+R/qvG6N2pW37F9s5KB7jZ0kbxrHmsM3JwXbHl7xc6pavDHRktcNRofBVkzLL3WagosXjMsDhHPbvtOjr9HD81472ioHQvcx/tNNjZei3HyY7nVnuMTcumfl5KVAFHeNQpbG2Xnx/wAnXL065JYlEJLQujBwqO4J8pkhTyLijOarSkboq2ROwVdlyjaXPSAqufTZSrJlWCmZzdW4xN1FD0sFMSBJbIscWtpYXLJAkS7poFk1KUt71BmnUUid6jLpK4udAplIoamUqKq6endI5sbBd73NYwdXuNgPmQvr7DGx00kNACOFS4dmlvsQXta1x88kh+K+Q4HuY4Oa4tc0hzXNJa5pGxBGoKmHGqkl5NRUEyNyPPHlu9nuuN9RqdDpqeqxYr6piBxChpHOByVFTFUkH9i2YzMB+DGD4pUdTDUSYsafivqGRNo5A7Lw87I5HNYz4yOvfmvlWLFqhlstRO3K3I3LNK2zPcGug0Gg0XaTF6iK/DqKiLM7O7hzSMzSH65sdT47qcar6o7OdnIaegOEtfeRtJ9MRzM2cF/hch9vABVfZLs0Y6DCKV7cuR/rk7SL6tzPA8xJJGf7vy+cZMfq3GRzqqoLpAxsjjNJmka0HKHG9yBc6FdHaOr/AHuq2t/+zNt0328FNG305J2nDqYSt1dU4iaODX6vrXBc5v8Acje/TorCoD/XK18YDpI8PgbE24DjI587ra6C9mfevksYrPZjePNljOaJvFkyxu95gv3TqdRbcqRQdoaune6SCpmjkeMr3iRxc8dDe9/C+yaNvpnAMFETMMonkZ6KH1udoNwJTG5gzeBc+Vw6mO/JO0/aQPgoXg3fXVbmxHnwDM+Q/DIwD4hfLv6dqs0j/WajPNbiv48gdJYWGYg62ubX2TBxSf6Mcea0VxEOLJ9ECLEM17ummlldU23/AKc5i/Fy0W7sFPH3iA0XLnak7e0vWPR/2TnwkT8Wsikw/htlZckcOS13uudA3fYm+hsDe/y7LMSbuJcTuXEuJ8yVdS9qah9DHQFzfV45OK0ZTnLtdC6+wzGwtyHRND2zsz2dnqqR1ThmIy0rZa6qkbDljMDGetuHs5c18gaQCbctAtrS9pKefFZKaNzHT01I4F4se86RuZg/lysJHLN4FfKVBjlRAHtgqJ4Wv9tsUr42u8wCPmosFU+Nwkje+N7dWvje5jwTuQ4apo2927PYIzAGXrJ45KvEKmngytcS1sHH+kkJIB2cSSRYHKPE3/afsRfFhi1VPGyipIo35Tmzh8dyAeVsxzbkk6W1XzTV18kzi+WR8ryLF8r3SPt0u4kp6qxiokY2OSeeSNlskck0j2NttZpJATRt9G49hcuPYTSmlkjj4lRx5RIXWDQXgsNgblpI00vbcLzD0oV0IkpaCnfnhw2DgZ73zzG2fwuMovbmXDksLQYtURtcyKoniY/22RzSRtdpzAIB+K4GreOKWrPDB3T5/krFqgYZ7J8/yU0yL14enGtt2c9Iho4HxshaZDs8nT4jmsniOJSTyOklcXvcbkn8lECUFvfe/wAs6BVew98qe99goUDdSVnKrDxBKcaEALqm2nU0XXQ56VGxNoGsTgSrIyrGldATsYSAnIwuuLNSGBdshoSl3YdanAkNTgUDjU4E20JwLjk3DoSZdj5LoK5N7JXGqIfZCUUiE90JRRSCm3BOFIcu2FYpkhIcnCm3LsyZcEnKlkIQEZQ8LlrJQK3KiNOxV8jFbzjRQXNXn8s7dMERklk+WXTUjEmORY9q5JQhNCjsp+ZJKzxi8kGjb3irFQSzK7Ny5qXHICtYdJklUWISQvzxPcx3VpUWsqHSHM9xcepXSm37LVyTSG72gpt1Dk3C1WF9jaueAzxR52C+x7xtvYLGM7XOqFcsnpKctNnCxG4PJcyLtxY2bKaKeITRXPNvFFlSWtS5Ahi4tG72SxImOZTjVjfbTr0yVIskli1tNGg5BmQ5qZcFq1IJJUyUopJXKtQi6EIWdkCm0gUJTqRFVdlv/Rl2ChxI1TqiWWGKmZG4ujyC5dmJuXAjQMvtzWBXtPYGlkj7O1742l01ZK+nhDfacXBsLQPi52vJYqxT9p/RVHG6gfQ1D6inr5o4Gvfkc5hdqHgtABGUOOwtl58rPtf6IKWko5JYJ6iads0EDGyGPh53ysbqA250d1XpOE4fGyegoGkP/RdMJ5XdJnRmKO/mHTOty7vVOSYPI+GnZNlc6TFDUuyOzNyNqJJmC/g1jAVN1dMDF6D6T1mSF9VU5IaeOeV44TdXveAB3SAAI3E7nUKho/RHHLT4dNHPKfX6hgIystBTGGSR3W7gGAX0FzsvSu1WKGKgxupzWzPNNE7oBCyH7nukUPBu0QoezVPVEAyR04bDcf8AVc4sZ8Nbnwuhp5BU9jYf0wzDYZ3yxmdkMkuVge02zSAW0u0Ai9twdNNdF2m9H2GQSvoqeorJ8Tdw2wwEM4Ze+xBe4MsAAS494aBV3oUpDNjDJHEudFHUVDnHcvIyZj8ZLr1bsvilHV4piMsdEGVFEXRuqeIXvnPej0bbTSMjmrRSQegKk4Do3VMjqzJmztc0RsdbT6O1y2+mpueoVBhnopw9lNRS19bUQy1rYuHG0MaOI9oPDF2OPMDWye9GU1Q04jjNUHNdM3gxZ8zeNPJILMaDyBDGDptyK9VxljA17KeKOWuoKMS0olbmDc7XNbbxPCI5ctdVNj5h7Wdl/VsSloIXGbLLFHETYOcZGNLWnle7wP6L1ej9AVNlEUte/wBcMfEyR8LIBe2YMIzOaCbXuL+C8iwhlXW1zDCXyVks3GbJcAiQHNxSdgBa+2lttgvcqmsZgsb5pXzYniz4cjpC172xRjvZCRcRsB7xvq7fyo8Swrsq+TEmYfIcr/WnU8jma2yuOZzb+DSQvSsc9C1GIav1OslkqqNgfLDIYiNY84aQGgjMNjcj71SehmndU4z6xJ3nsjqKl7usrzlJ+PEcf/C9Bw/MyDEap2k+M1ppaQW7xiLjFE+3QNL3nllF0tGY7GehOmqaWmnqKidklRGZhFFw2gR3FtS08nN+aroPQ6x8NBIyeRxrqoMIDG5YafhSPcb63cAy1zYXOy91ioXMqQW5BBT0fBjaHd8OLwTdvIWjZY89eixGDdpRRdmqercLyMp8sObnK55a38bnwupujKVHoTpadz5aqvfHSNcyNjsjeM97nW31Frm3sknU6DfFekHsvDQVfAgnM8Zja+7nMdIxxc4Fji0Acgdhv8T6d6O+0UlZE3CcUpHyB0AkjlkY7LLDYOaX9DqCHA/I7+L9q8OZSVtVTR6shmexh55dwD4i9j5LeN7SmqWsytPW/wCSdpJCVU053Vnh5XXHKsWLMIfJZNvlsmg269G3Mod5PNCSEtSrAkveuOehjEUpjFKYxcYxPtarjjtLTJauZU85qTZWzSbJATrAuAJxoWsYhxqVZcauroyUAnAkgJQClDoCUEkJQXHJs4EmY90roKTN7JXJoQeyEspEHshLQIKQ5LKSV0xZppybcnXBIIXeVg0k2S7Lip7JISWFLKaemwqVQ3BSXO0UZy5eW7bwNuaoj2qampI1waNRyJ0lRSE7HItmjpTDm5dR8U8hUEcl1x6Zc2xuEsS3S0R5DqFv+w3b59F9G4cSAm5b9ZvUj57Lz6bcKdEpjJeqmT3vFOzdHisXHp3NEh+sNNejx1XmmN9iZqS3EtZ17EbeSquz3aGWklbJG8tFxnG7XN5ghe6QY3Q4kzgl7S4i+S9nDyXTHLLxXv8Alj/6c7jy/VfP0lKoMsdl6d2o7ByU93s78XUbt81gqinXpywx8mPLCsY5WXVUkiQ1PVDbFMLwZTT0QzbVONC4HpxoXHXbZWVdyrqF00hshILE4QuWWRHdAkGnUuyUAroVroCmixW5YmnQqXA2q7KdSJL6dLphZYsaVZXouC+luopKGOjp4IWGMOtO4ukdmc8uLwzQA947kjwWW7Mdj6rEJHx0rGuMbQ57nvDGsBNhc+NjsDsryX0VYm2oFNwA6Qs4ge2RnCyA2JzG2xIFrX12XNTWEekeqpoatjAx8ta5zpqmXO+bWPLpqBpqRe4BO1tFa4D6aqmkp4KZlNTuZTxhjC4yZi73zY+J08d1V416LMSphGZIGu4sjIWcKRr/AKRxs1p2tc6X26kLsfohxIiYmOJpgbmkYZml4vHmsMtwTa2l+aKsaL01VsUXCjhpdZJpnukZI8vkkmdI42zADVxtvyVF2h7f1NZSw0b2QxwQFhY2Jrw4lrC0ZiXG+5Ow1UB/Y6oFJTVdgY6uUwwRtzOne/vD2Lbd0215jTVW+IeizFII45H0+kkkcQa2Rjnte9wa0OF7C5IF72B3shtC7G9uZcMdNJBHE+SZjI80uchjQ4k2AIvfTnySux/pCqMPqpahjWS+sZuPG+4a8l5cHAjUEEnroT5iyo/RBicsj4+DGx0eTPnnZZhc24aS2+trHS+41UKL0W4k6plpGwAywtY9/wBJGI8jrhrw4kXvY7a6HQWToS8c9KlXWVVPPK2Ph00rZoqVpcIs7TcOed3Hb8gLlKZ6Vq8Vsta0wiWaFsBbkcYmsDrghpN7jXUk7nRMD0XYh636mI43T8AVDgJW5GRGTLq42F7jYX/FZmtpDFJJG/Lmie+N5aczczXEGx5i4Oq1NMr3sr2vloauSrYyOSSRkjSHgtYC94cSA21ttttVoca9M+IVMEsD20rI5o3xvyRSh+RwsbEvOtjvZQaT0U4nI+NnBjjdJG6ZgkmYO40sBJy3t7bdDrv0VWOxtTwa2d3DYygkdDPneQeIDbKzTXUjpuFel7Pdhe3j8LfO9kEcz5mMZd73MyBpJ5DW9x02Tn9plW6vir5hHK+na9sEBDmU8OZmXutBvseZJOmugslvowxI0rqv1ctiawyZXODZjGBfMGb7a2Nj4KJjHYKtpRTcaNjTVvbHBGJGue5xta42HtAanms9C4oPSxVxTV1QI4HTV3DD3OEmSNrGFrQxt+h5lU+N9vKiqo4KF7Yo6emEeQRtfndkjLQXkkg7k7DVTh6K8S45puCzithbO8caOzI3PLQSdrktOgvsnaT0PYpJC2dkDCx7BIxvGjD3NIuLDxB2JHwToXp9PtdwBG2GnbKG5ePZ3T2hHsD8beHJeVVMrnuc95Lnvc573HUucTcknqSStT2d9HGIVrXvgg7kcjoXmSRkdpG2zNsddLjkrZnoVxVxcBFD3DlLuOzKXWuQOel+m6dDC0o0Kn0TkmvwqallfBURmOVjrOYbH6oIII0IIO4SKR2q6Ys1ZNYnQFwBKC7uboQ56S5yQxt1rYWxl1LYxJjYng1ZnbRbGp9rU1GFIC9GEcsjDwm7JyRcaFMiOhqU0ICUFYFtXQuWSgtbQsJbUgJQWbVOBKCQE4FxyadXJz3SupM57pXNRAe6Eu6bg9lLRXCkldKSVvFkgpJSikldcWaQUlKKSum0JKQ4JaSVFMuTZanXhNkrjk1CMq4WpSSVz03Ed8SjOZZWBCaexTuBqN6WozhZOskWwshN5U4klGUSo3CmxbKLUR3+Ccp5uSmPtalJ2nncwhzCWuabgg2IKZBXbrrtnT2jsd6TGTgQVdmuOgkPsv8ANUHpCw2mjkvCW98EkN1A8vmvNbrj5CeZVws8eXKff0xljcv+DFRumOSdemyuOV3d/l1nRmFupT7Qm6Xcp9y5NCyLLqF0QgpFk4QkkLFVxLASLJYVgUElzUoIK6MmnNTeVPOSLLnlGo9V9CGEyHD8SliA4014IS8lrczYSRc9LyakdPBen4BWRSZ4oZRK6hgjpXVF8wMxaMwJ5kZWE67m24Xz9N24pI+zrcOhke6qldmmsx7WtvPnIzG19A0aXuuYF29p6PApaWF7/X55jJox2WPvsGrjYeyzS19T5ryOr1LDJeFX0eDMlqKl1O51dWVFSXuc8iLuMZe+mZzDpoLWuTmWx7MSsd61Kf8A/qr6hrb/AFuE3g2HhaAled03pewd1Ya53GjnbRin1icWy5nh5a21/ZItd1r302VPTelWjiOCsEznNpuLLXPEcluM6mc2wBALu9I/l0QepYd2ehpRTZ7FmGUbspOwc8d6XzAjdY9HleWdgu3ddimLRxyTH1XPLUmnDY8rGNH0bSbX0dkOp3VpS+mTDaioxCKqMjKOoiZHG9zJLubwi2RhDLube5sfwULA/SrhUdbLMI/V4KakbSUbWwuMk7S67nOIBtbIwAON7EnmQA9DFBJUUte6J3DdVVz7yOcW5IYpGQueD/LC4jqSNr3T9ZjET4pKqDv+sz01BHIz/qMFTkLgegMkuvQXC8N9IXb2mqMLoaGnlfJJGY5Kl+R7GukERDt7E3c9x2Wsp/S/R0rcLpKWdwp4Q1lZK6B2rGx7AEX7zrm4GiD0SV4grMVrn+zBR07B4BjJJHD/ANzV8v4RROqamCJ3edUVEbH9TnkAcfvJXuGK+lfBZ4aqKSaoLKt1niOJ7ZMvDY3ciwvl+9ePdhMUo6bF2VEsrmUkEkz4y5j3vcMrhGCGg66g/BWVH1BTzj9IVLzYR09PSwN8JHyPc4fLhJqXstFndGQCyorvXpWH6+SNtr/32xmy8lxv0rUZpavgyPNRV4hHNbhvbkgjfE1pJOmrIRoL+1yV5U+nOgOJU7mul9VbBURSyGNwAe98bmvDfaIHDI2v3tioqj7TekSsqsXNFTTmOmdUR0fDY2Ml44mWR5JBOt3bEaALSdrH+sdpcLprXZSxmc+DiHP/AP8AOP5rOzekbCGVtHHTMDKSComq56p0UjpHzOjfZrLgv1cRcm2wGw1k03pBwb9NMr2y1AdLHJFM+Vh4UZyMbGWgagWa4HfV19NVRsY6lzpMeqm+0DHQwfzxwaC/88xUyqqJf01QUkL3thpaGaaoY2/De11o42uG1wW3HMa+KxNd6Q8KhfBRwVDnwyV5raypc15a08bjBgsAXXeGDQEWGt9VV9u/TFSj1kYZxHz1bWMlq3NcwRxNbYMjBs6+rjcgWLiddLB6B2ipYJMKnBq46GOsqpHiof7JvUFwtqLlzWX32JVPIyamw3BKOnlfxaqrhcZGlzXuizOme887WIuDfTRZ3tB24wGegpKOSSpmbTRxtYIWPY3iNhyBzi6xIFzt47qx7Uel/DIRFJRZquqggfBTZmSMghDsoc92YAk2Y3bcC1xclQUHpjmZJirgzUxQQxSW9+7n/g9qyNLRtYL9Vi6rFJpJHyvke6SRxe92Y3c4nUlM+tye+/7RXXHyajNxbUrl1ivWn++77RR6y/33faK18rPBsd1KiYsL62/33faK767J77/tuT5V4PQmhLDV5169J+0f9ty76/J+0f8AbctTz/pLg9IypQkXmvr0n7R/23I9fl/aP+25dP7r9M/E9HcgLzj1+X9o/wC25Hr8v7R/23LP9z+j4npSWAvMvX5P2j/tuR6/L+0k+25P7n9HxPULLoC8u/SEv7ST7bl39Iy/tZPtuV/uf0fE9TASgF5V+kZf2kn23I/SMv7ST7bln+4/S/G9YASwF5J+kpf2sn23I/SUv7WT7bv6rN8y/G9bCROdF5R+kpf2sn23/wBVw4jL+0k+25Z+U4PWafZLXkYxCX9pJ9ty7+kpv2sn23f1T5V4PWSkFeU/pKb9rJ/iO/qufpGX9rJ9t39VZ5tJ8b1UpJC8s/SUv7WT7bkfpKX9rJ9ty3P6j9J8b1Gy5ZeX/pGX9rJ9tyP0jL+0k+25a/uf0nxPTbJBC80/SMv7ST7bkfpGX9pJ9tyf3P6PiekFqZcvPf0hL+0k+25Hr8v7R/23LN/qP0vxvQsqQQvP/XpP2j/tuR69J77/ALTlPnn4Xg39lyywHr0n7R/2nLvrsn7R/wBpynzfo4N0+FQ3tssj67J+0f8Aackmqf77vtFT5V4Nq16CsUKp/vu+0V31t/vv+0U+b9JwbMJuSJZD1t/vv+0UetP99/2ir836ODYRT8ipIWF9Zf7zvtFHrT/fd9op8/6ODdWXC1Yf1t/vu+0Uetye+/7RV+f9HBsXBNLJesv9532iuesv9532is/L+l4NVSnUqS5Yz1h/vO+0Uesv9932ip8hxbNCxvrT/fd9oo9af77vtFX5k4NiklZD1p/vu+0UetP9932ip8i8GuS7LHetP9932ij1l/vO+0VflOLZBBWM9Zf77vtFd9af77vtFX5v0nBsCElZD1l/vO+0V31h/vu+0Vm+XazAzdduuIXFt265dCEHbouuIQF0XQhAXRdCEBdCEIC67dcQg7dF1xCDt0XXEIBCEIBF0IQF0XQhAIQhAXQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCAQhCD//2Q=="}},"time_used":151,"timings":{"blocked":0,"dns":2,"connect":15,"send":0,"wait":85,"receive":17,"ssl":31},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translations.smartsuppcdn.com/api/v1/widget/translations/lang/en/defaults","fqdn":"translations.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:35.175Z","timestamp":1785159275175,"http_version":"HTTP/2","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":"1087630013.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Wed, 03 Jun 2026 14:33:02 GMT","end":"Tue, 01 Sep 2026 14:33:01 GMT"},"fingerprint":{"sha1":"CE:B9:32:81:E9:D2:46:C8:31:53:55:D3:41:19:F7:94:91:30:D1:93","sha256":"54:C9:41:2F:97:E8:14:28:D7:2C:4F:FA:E0:C3:3A:BC:85:F8:14:22:1C:98:23:82:53:4D:5D:58:C9:0B:C9:68"}}},"request":{"raw":"GET /api/v1/widget/translations/lang/en/defaults HTTP/1.1\r\nHost: translations.smartsuppcdn.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://walmartfundholdings.com/\r\nOrigin: https://walmartfundholdings.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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:35 GMT\r\ncontent-type: application/json; charset=utf-8\r\naccess-control-allow-origin: *\r\ncache-control: max-age=600\r\nx-response-time: 0ms\r\nx-version: 143765d349003193ebd3783518e376c4c54f428f\r\nx-77-nzt: k2X/ajJ22gCxOJIZs91SXiAPZahbO13v2l5T7Qa+lNhhUxNFyC0fBH1ib1wn91+vgWuM6T8\r\nx-77-nzt-ray: fdb54123241939596b5e676ac2297b0c\r\nx-77-cache: HIT\r\nx-77-age: 85\r\nvary: Origin, Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":7219,"size_decoded":3348,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"0259a73d21d0110609c1b3d5cab20ebe","sha1":"f80fcc484290999d3c48fe3d75f434cb63a00b4a","sha256":"ff798ee596d00dfbc59c3916cde6ce6cc8fd9183e1cd673c45dc6be9b333e582","sha512":"fbb7720f87a9673084b909fc940d2861fb5b1a7ce80d7a60d469eabe47765e69bce287d2bece28eb226d2e75e1c8202283aeda38f34ff354c2466f567ee3535b","ssdeep":"192:Ccdft/hcRl6WKHSY8pZcqq+jT0UHAfoW/Ymz8:CgF/hcSWbYKZcF+jhqoWQmw","tlshash":"ede1b64f9a144ea987c643c276cfb84675bc807342509d7afd8cc9b842697cda3e3b94","first_seen":"2026-07-27T13:24:21.79927Z","last_seen":"2026-07-30T06:08:39.282457Z","times_seen":345,"resource_available":false,"data":"eyJhZ2VudFJhdGluZy5hbGwucGxhY2Vob2xkZXIiOiJMZWF2ZSB1cyBmZWVkYmFjayIsImFnZW50UmF0aW5nLmJhZC5mb3JtVGV4dCI6IlNvIHNvcnJ5IPCfmJMgV2hhdCB3ZW50IHdyb25nPyIsImFnZW50UmF0aW5nLmdvb2QuZm9ybVRleHQiOiJUaGFua3Mg8J+kqSBXaGF0IHdhcyBzbyBncmVhdD8iLCJhZ2VudFJhdGluZy5ub3JtYWwuZm9ybVRleHQiOiJUaGFua3Mg8J+RjSBIb3cgY2FuIHdlIGltcHJvdmU/IiwiYWdlbnRUcmFuc2Zlci5kZWZhdWx0VGV4dCI6IkFnZW50IiwiYWdlbnRUcmFuc2Zlci5qb2luZWQiOiJqb2luZWQgdGhlIGNoYXQiLCJhZ2VudFRyYW5zZmVyLmxlZnQiOiJsZWZ0IiwiYWdlbnRUcmFuc2Zlci5yZWRpcmVjdGVkIjoiaXMgeW91ciBuZXcgYWdlbnQiLCJhcmlhTGFiZWwuYWdlbnRBdmF0YXIiOiJBZ2VudCBhdmF0YXIiLCJhcmlhTGFiZWwuY2FyZCI6IlByb2R1Y3QgY2FyZCIsImFyaWFMYWJlbC5jaGF0Q29udGVudCI6IkNoYXQgY29udGVudCIsImFyaWFMYWJlbC5jaGF0Ym90QXZhdGFyIjoiQ2hhdGJvdCBhdmF0YXIiLCJhcmlhTGFiZWwuZHJhd2VyLmNvbnRlbnQiOiJEcmF3ZXIgY29udGVudCIsImFyaWFMYWJlbC5kcmF3ZXIub3ZlcmxheSI6IkRyYXdlciBvdmVybGF5IiwiYXJpYUxhYmVsLmlubGluZUVtb2ppUGlja2VyLmRlc2NyaXB0aW9uIjoiU2hvd2luZyB7Y291bnR9IGVtb2ppcyIsImFyaWFMYWJlbC5pbmxpbmVFbW9qaVBpY2tlci5sYWJlbCI6IkVtb2ppIHN1Z2dlc3Rpb25zIiwiYXJpYUxhYmVsLmxlZnQiOiJMZWZ0IiwiYXJpYUxhYmVsLm9wZW5DaGF0IjoiT3BlbiBTbWFydHN1cHAgY2hhdCIsImFyaWFMYWJlbC5wb3B1cCI6IlNtYXJ0c3VwcCBjaGF0IHBvcHVwIiwiYXJpYUxhYmVsLnJhdGVDaGF0LmJhZCI6IlJhdGUgY2hhdCBuZWdhdGl2ZWxseSIsImFyaWFMYWJlbC5yYXRlQ2hhdC5nb29kIjoiUmF0ZSBjaGF0IHBvc2l0aXZlbHkiLCJhcmlhTGFiZWwucmF0ZUNoYXQubmV1dHJhbCI6IlJhdGUgY2hhdCBuZXV0cmFsbHkiLCJhcmlhTGFiZWwucmVtb3ZlQXR0YWNobWVudCI6IlJlbW92ZSBhdHRhY2htZW50IiwiYXJpYUxhYmVsLnJpZ2h0IjoiUmlnaHQiLCJhcmlhTGFiZWwuc2Nyb2xsRG93biI6IlNjcm9sbCBkb3duIiwiYXJpYUxhYmVsLnN1Y2Nlc3MiOiJTdWNjZXNzIiwiYXJpYUxhYmVsLnVwbG9hZGluZyI6IlVwbG9hZGluZy4uLiIsImFyaWFMYWJlbC53aWRnZXRCcmFuZGluZyI6IlNtYXJ0c3VwcCBicmFuZGluZyIsImF1dGhGb3JtLmFjY2VwdFRlcm1zIjoiSSBhZ3JlZSB3aXRoIHByaXZhY3kgcG9saWN5IiwiYXV0aEZvcm0uYnV0dG9uLnNlbmQiOiJTZW5kIG1lc3NhZ2UiLCJhdXRoRm9ybS5kZXNjcmlwdGlvbiI6Ildl4oCZbGwgdXNlIHlvdXIgY29udGFjdCBpbmZvIG9ubHkgaWYgYWxsIHRoZSBvcGVyYXRvcnMgYXJlIGJ1c3kgYXQgdGhlIG1vbWVudCBhbmQgY2Fubm90IGltbWVkaWF0ZWx5IHJlcGx5LiIsImF1dGhGb3JtLmdyZWV0aW5nIjoi8J+RiyBQbGVhc2UgaW50cm9kdWNlIHlvdXJzZWxmIiwiYXV0aEZvcm0uZ3JvdXAiOiJDaG9vc2UgYSBncm91cCIsImF1dGhGb3JtLmxhYmVsLmVtYWlsIjoiRS1tYWlsIiwiYXV0aEZvcm0ubGFiZWwuZ3JvdXAiOiJHcm91cCIsImF1dGhGb3JtLmxhYmVsLm5hbWUiOiJOYW1lIiwiYXV0aEZvcm0ubGFiZWwucGhvbmUiOiJQaG9uZSIsImF1dGhGb3JtLnN1Ym1pdC5lcnJvciI6IkF1dGhlbnRpY2F0aW9uIGZhaWxlZCIsImF1dGhGb3JtLnN1Ym1pdC5zdWNjZXNzIjoiQXV0aGVudGljYXRpb24gd2FzIHN1Y2Nlc3NmdWwiLCJhdXRoRm9ybS55b3VyRW1haWwiOiJZb3VyIGVtYWlsIiwiYXV0aEZvcm0ueW91ck5hbWUiOiJZb3VyIG5hbWUiLCJhdXRoRm9ybS55b3VyUGhvbmUiOiJQaG9uZSBudW1iZXIiLCJidXR0b24uZ3JlZXRpbmciOiJDaGF0IiwiY2FyZC5saW5rc0xpbWl0UmVhY2hlZCI6IlVuYWJsZSB0byBzZW5kIG1vcmUgdGhhbiAyMCBVUkwgbGlua3MuIiwiY2FyZC5ub1ByZXZpZXdUaXRsZSI6IlByZXZpZXcgbm90IGF2YWlsYWJsZSIsImNhcmQub3BlblVybFRpdGxlIjoiUmVhZCBtb3JlIiwiY2FyZC5zZW5kaW5nSW5Qcm9ncmVzcyI6IlNlbmRpbmcgaW4gcHJvZ3Jlc3MsIHBsZWFzZSB3YWl04oCmIiwiY2hhdElucHV0LnBsYWNlaG9sZGVyIjoiVHlwZSB5b3VyIG1lc3NhZ2UgaGVyZSIsImNoYXRQcmV2aWV3Lm1lc3NhZ2UxIjoiSGksIGlzIGFueWJvZHkgaGVyZT8iLCJjaGF0UHJldmlldy5tZXNzYWdlMiI6IkhlbGxvLCB5ZXMgd2UgYXJlIGhlcmUiLCJjaGF0UHJldmlldy5tZXNzYWdlMyI6Ik9rLCB0aGFua3MiLCJjaGF0Ym90LmdvQmFjayI6IkdvIGJhY2siLCJjbG9zZUNvbnZlcnNhdGlvbk1vZGFsLmJ1dHRvbiI6IlllcywgZW5kIGNoYXQiLCJjbG9zZUNvbnZlcnNhdGlvbk1vZGFsLnRleHQiOiJJcyB0aGF0IHJlYWxseSBhbGw/IElmIHNvbWV0aGluZyBlbHNlIGNvbWVzIHRvIG1pbmQsIHlvdSBjYW4gYWx3YXlzIHJldHVybiB0byB0aGUgY29udmVyc2F0aW9uLiIsImNsb3NlQ29udmVyc2F0aW9uTW9kYWwudGl0bGUiOiJFbmQgY2hhdCIsImRyYWdBbmREcm9wLmRyb3BIZXJlIjoiRHJvcCB5b3VyIGZpbGUocykgaGVyZSIsImVtYWlsVHJhbnNjcmlwdC5wb3NpdGl2ZUZlZWRiYWNrIjoiVHJhbnNjcmlwdCBoYXMgYmVlbiBzZW50IiwiZW1haWxUcmFuc2NyaXB0LnNlbmRDb3B5IjoiU2VuZCBjb252ZXJzYXRpb24gY29weSIsImVycm9yLmZpbGVVcGxvYWQiOiJGaWxlIHVwbG9hZCBmYWlsdXJlIiwiZXJyb3Iubm9JbnRlcm5ldCI6IkludGVybmV0IGNvbm5lY3Rpb24gbG9zdCIsImVycm9yLnNlcnZlckVycm9yIjoiU2VydmVyIGVycm9yIG9jY3VycmVkIiwiZmlsZVVwbG9hZC5iYWRGaWxlVHlwZSI6IlRoaXMgZmlsZSB0eXBlIGlzIG5vdCBzdXBwb3J0ZWQuIiwiZmlsZVVwbG9hZC5maWxlVG9vQmlnIjoiVGhlIGZpbGUgaXMgYmlnZ2VyIHRoYW4gdGhlIGFsbG93ZWQgbGltaXQiLCJmaWxlVXBsb2FkLmZpbGVzV2VyZW50UHJvY2Vzc2VkIjoiU29tZSBmaWxlcyBjb3VsZCBub3QgYmUgcHJvY2Vzc2VkIiwiZmlsZVVwbG9hZC5pbWFnZUVycm9yIjoiVGhpcyBpbWFnZSBpcyBub3QgdmFsaWQiLCJmaWxlVXBsb2FkLnRvb01hbnlGaWxlcyI6IkxpbWl0IGZvciB1cGxvYWRpbmcgZmlsZXMgaXMgIiwiZmlsZVVwbG9hZC51cGxvYWRGaWxlIjoiVXBsb2FkIGZpbGUiLCJmb3JtLnN1Ym1pdC5lcnJvciI6IlNvbWV0aGluZyB3ZW50IHdyb25nLiBQbGVhc2UgdHJ5IGFnYWluLiIsImZvcm0uc3VibWl0LnN1Y2Nlc3MiOiJTdWNjZXNzZnVsbHkgZG9uZSIsImdkcHIuZGF0YVByaXZhY3lIZWFkbGluZSI6IlBlcnNvbmFsIGRhdGEgcHJvY2Vzc2luZyIsImdkcHIuZGF0YVByaXZhY3lUZXh0IjoiU21hcnRzdXBwLmNvbSwgcy5yLm8sIHByb2Nlc3NlcyBwZXJzb25hbCBkYXRhLiwgVkFUIElEIENaMDM2Njg2ODEgKGZ1cnRoZXIgYXMgXCJTbWFydHN1cHBcIikgYXMgYSBkYXRhIHByb2Nlc3NvciB3aG8gYWN0cyBvbiBiZWhhbGYgb2YgdGhlIHdlYnNpdGUgb3duZXIgd2hvIGlzIHRoZSBkYXRhIGNvbnRyb2xsZXIuIFxuXG5TbWFydHN1cHAgaXMgR0RQUiBjb21wbGlhbnQuIFlvdSBjYW4gZmluZCBpbmZvcm1hdGlvbiBhYm91dCBTbWFydHN1cHAgcGVyc29uYWwgZGF0YSBwcml2YWN5IGFuZCBwcm9jZXNzaW5nIG9uIGhlbHAuc21hcnRzdXBwLmNvbS9lbl9VUy9wcml2YWN5LiBcblxuUHJvY2Vzc2luZyBvZiB5b3VyIHBlcnNvbmFsIGRhdGEgaXMgbmVjZXNzYXJ5IGluIG9yZGVyIHRvIHByb3ZpZGUgY3VzdG9tZXIgc2VydmljZS4gQWR2YW5jZWQgZmVhdHVyZXMgd2lsbCBvbmx5IGJlIHR1cm5lZCBvbiBpZiB5b3UgaGF2ZSBhZ3JlZWQgdG8gdGhlbS4gXG5cblBsZWFzZSBjb250YWN0IHRoZSB3ZWJzaXRlIG93bmVyIGlmIHlvdSBoYXZlIHF1ZXN0aW9ucyBhYm91dCB0aGUgcHJvY2Vzc2luZyBvZiBwZXJzb25hbCBkYXRhIG9yIGlmIHlvdSB3YW50IHRvIHJlcXVlc3Qgb3IgZXJhc2UgeW91ciBwZXJzb25hbCBkYXRhLiIsImdlbmVyYWwuYmFjayI6IkJhY2siLCJnZW5lcmFsLm5ld01lc3NhZ2VzIjoiTmV3IG1lc3NhZ2VzIiwiZ2VuZXJhbC5zZW5kIjoiU2VuZCIsIm9wdGlvbnMuYWNjZXNzaWJpbGl0eSI6IkFjY2Vzc2liaWxpdHkiLCJvcHRpb25zLmNvcHlyaWdodCI6IsKpIHt5ZWFyfSBTbWFydHN1cHAuY29tIiwib3B0aW9ucy5lbWFpbFRyYW5zY3JpcHQiOiJTZW5kIGVtYWlsIHRyYW5zY3JpcHQiLCJvcHRpb25zLmZlZWRiYWNrIjoiRGlkIHlvdSBmaW5kIGEgYnVnPyIsIm9wdGlvbnMuZ2RwciI6IkdEUFIgYW5kIHByaXZhY3kiLCJvcHRpb25zLnBkZlRyYW5zY3JpcHQiOiJEb3dubG9hZCB0cmFuc2NyaXB0Iiwib3B0aW9ucy5wbGF5U291bmRzIjoiUGxheSB0aGUgc291bmRzIiwib3B0aW9ucy50aXRsZSI6Ik9wdGlvbnMiLCJyYXRpbmcuYnV0dG9uLnJhdGUuYWdlbnQiOiJSYXRlIGNoYXQiLCJyYXRpbmcuYnV0dG9uLnJhdGUuYWkiOiJSYXRlIEFJIGNoYXRib3QiLCJyYXRpbmcuc3VibWl0LnN1Y2Nlc3MiOiJSYXRpbmcgc2VudCIsInJhdGluZy5zdWJtaXRGZWVkYmFjay5zdWNjZXNzIjoiVGhhbmsgeW91IGZvciB5b3VyIGZlZWRiYWNrIiwicmF0aW5nLndhc0l0SGVscGZ1bC5hZ2VudCI6IkhvdyB3b3VsZCB5b3UgcmF0ZSBvdXIgc3VwcG9ydD8iLCJyYXRpbmcud2FzSXRIZWxwZnVsLmFpIjoiSG93IHdvdWxkIHlvdSByYXRlIHRoZSBBSSBjaGF0Ym90IGV4cGVyaWVuY2U/Iiwic3RhdHVzQmFyLmJvdElkZW50aXR5IjoiQUkgYXNzaXN0YW50Iiwic3RhdHVzQmFyLm9mZmxpbmVUZXh0IjoiSGFwcHkgdG8gYW5zd2VyIHlvdSBsYXRlciIsInN0YXR1c0Jhci5vbmxpbmVUZXh0IjoiV2UgcmVwbHkgaW1tZWRpYXRlbHkiLCJzeXN0ZW1NZXNzYWdlLmNoYXRDbG9zZWQiOiJDaGF0IHdhcyBjbG9zZWQiLCJzeXN0ZW1NZXNzYWdlLmNoYXRSZXNvbHZlZCI6InJlc29sdmVkIGNvbnZlcnNhdGlvbiIsInRpY2tldEZvcm0ubGFiZWwubWVzc2FnZSI6IldoYXQgY2FuIHdlIGhlbHAgeW91IHdpdGg/IiwidGlja2V0Rm9ybS5tZXNzYWdlLnBsYWNlaG9sZGVyIjoiRGVzY3JpYmUgeW91ciBwcm9ibGVtIiwidGlja2V0Rm9ybS5zdWJtaXQuYnV0dG9uIjoi4pyJ77iPIENvbnRhY3QgdGhlIGFnZW50IGJ5IGVtYWlsIiwidGltZWFnby5YRGF5c0FnbyI6IiclcyBkYXlzIGFnbyIsInRpbWVhZ28uWEhvdXJzQWdvIjoiJXMgaG91cnMgYWdvIiwidGltZWFnby5YTWludXRlc0FnbyI6IiVzIG1pbnV0ZXMgYWdvIiwidGltZWFnby5YTW9udGhzQWdvIjoiJXMgbW9udGhzIGFnbyIsInRpbWVhZ28uWFNlY29uZHNBZ28iOiIlcyBzZWNvbmRzIGFnbyIsInRpbWVhZ28uWFdlZWtzQWdvIjoiJXMgd2Vla3MgYWdvIiwidGltZWFnby5YWWVhcnNBZ28iOiIlcyB5ZWFycyBhZ28iLCJ0aW1lYWdvLmp1c3ROb3ciOiJqdXN0IG5vdyIsInRpbWVhZ28ub25lRGF5QWdvIjoiMSBkYXkgYWdvIiwidGltZWFnby5vbmVIb3VyQWdvIjoiMSBob3VyIGFnbyIsInRpbWVhZ28ub25lTWludXRlQWdvIjoiMSBtaW51dGUgYWdvIiwidGltZWFnby5vbmVNb250aEFnbyI6IjEgbW9udGggYWdvIiwidGltZWFnby5vbmVXZWVrQWdvIjoiMSB3ZWVrIGFnbyIsInRpbWVhZ28ub25lWWVhckFnbyI6IjEgeWVhciBhZ28iLCJ0aW1lYWdvLnJpZ2h0Tm93IjoicmlnaHQgbm93IiwidGltZWFnby5zZWNvbmRzIjoiaW4gJXMgc2Vjb25kcyIsInRvb2x0aXAuYXR0YWNobWVudCI6IkF0dGFjaG1lbnQiLCJ0b29sdGlwLmNsb3NlIjoiQ2xvc2UiLCJ0b29sdGlwLmNvbGxhcHNlIjoiQ29sbGFwc2UgY2hhdCIsInRvb2x0aXAuZW1vamkiOiJFbW9qaSIsInRvb2x0aXAuZXhwYW5kIjoiRXhwYW5kIGNoYXQiLCJ0b29sdGlwLm1pbmltaXplIjoiTWluaW1pemUgY2hhdCIsInRvb2x0aXAubW9yZSI6IlNob3cgbW9yZSIsInRvb2x0aXAubW9yZUJ1dHRvbiI6IlNob3cgTW9yZSIsInRvb2x0aXAucmF0ZUNoYXQiOiJSYXRlIENoYXQiLCJ0b29sdGlwLnNlbmQiOiJTZW5kIiwidG9wQmFyLmVtYWlsVHJhbnNjcmlwdCI6IlNlbmQgZW1haWwgdHJhbnNjcmlwdCIsInRvcEJhci5nZHByVGl0bGUiOiJHRFBSIGFuZCBwcml2YWN5IiwidG9wQmFyLm9mZmxpbmUuaGVsbG8iOiJTZW5kIHVzIGEgbWVzc2FnZSIsInRvcEJhci5vbmxpbmUuaGVsbG8iOiJIb3cgY2FuIHdlIGhlbHA/IiwidG9wQmFyLnR1cm5PZmZTb3VuZHMiOiJUdXJuIG9mZiBzb3VuZHMiLCJ0b3BCYXIudHVybk9uU291bmRzIjoiVHVybiBvbiBzb3VuZHMiLCJ0cmlnZ2VyLm9wZW5DaGF0QnV0dG9uIjoiTGV0J3MgY2hhdCIsInRyaWdnZXIucmVwbHlCdXR0b24iOiJSZXBseSIsInZhbGlkYXRpb25zLmNoZWNrZWRUZXJtcyI6IllvdSBtdXN0IGFncmVlIHdpdGggdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIHRvIGNvbnRpbnVlIiwidmFsaWRhdGlvbnMuaXNFbWFpbCI6IlBsZWFzZSBlbnRlciB2YWxpZCBlbWFpbCIsInZhbGlkYXRpb25zLnBob25lIjoiUGxlYXNlIGVudGVyIGEgdmFsaWQgcGhvbmUgbnVtYmVyIiwidmFsaWRhdGlvbnMucmVxdWlyZWQiOiJQbGVhc2UgZmlsbCBvdXQgdGhpcyBmaWVsZCIsIndhcm5pbmdCYXIubWF4TGVuZ3RoIjoiWW91IGhhdmUgcmVhY2hlZCB0aGUgbWF4aW11bSBhbGxvd2VkIG51bWJlciBvZiBjaGFyYWN0ZXJzICgyMDAwKSIsIndhcm5pbmdCYXIuc2FtZU1lc3NhZ2VUd2ljZSI6IkNhbm5vdCBzZW5kIHRoZSBzYW1lIG1lc3NhZ2UgdHdpY2UgaW4gYSByb3cuIiwid2FybmluZ0Jhci5zcGFtUHJvdGVjdGlvbiI6IllvdXIgbWVzc2FnZXMgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgc3BhbS4gUGxlYXNlIHdhaXQgZm9yIDMwIHNlY29uZHMgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlLiIsIndhcm5pbmdCYXIudXBsb2FkRmlsZU5vdEZpcnN0IjoiRmlyc3QgbWVzc2FnZSBjYW5ub3QgYmUgYSBmaWxlIiwid2lkZ2V0UHJldmlldy5jb250YWN0TWVzc2FnZSI6IvCfjokgTG9va3MgZmFudGFzdGljISDwn5Kq8J+PuyBMZXTCtHMgcm9jayB0aG9zZSBjb252ZXJzYXRpb25zIGFuZCBsZWF2ZSBhIGxhc3RpbmcgaW1wcmVzc2lvbiEg8J+agCIsIndpZGdldFByZXZpZXcud2VsY29tZU1lc3NhZ2UiOiLwn5GL8J+PuyBXZWxjb21lISBUaGlzIGlzIGEgc25lYWsgcGVlayBvZiB5b3VyIGNoYXQgYm94LiBHZXQgcmVhZHkgdG8gc2hpbmUg4pyoIGluIGN1c3RvbWVyIGludGVyYWN0aW9ucyEiLCJtZXNzYWdlLmRlbGV0ZWQiOiJUaGlzIG1lc3NhZ2Ugd2FzIHJlbW92ZWQifQ=="}},"time_used":37,"timings":{"blocked":0,"dns":3,"connect":10,"send":0,"wait":8,"receive":0,"ssl":16},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/36148.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.629Z","timestamp":1785159268629,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/36148.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2840\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Sun, 13 Apr 2025 05:35:57 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 00:58:57 GMT\r\ncache-control: public, max-age=86400\r\netag: \"fefd4d888e9f75d5894072eb3069d0ad\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 45332\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: FI5se5kY3KyqXzxcqCVtuLn5oaoy61ybNUeWcccNMytbUq2d7FG9sA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2840,"size_decoded":3412,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"fefd4d888e9f75d5894072eb3069d0ad","sha1":"e0eaa6772448722d704040a054127ac62394d664","sha256":"1401c583e2a19da1b2409ffc027aa355e1620583bbd63aec3640a973dae68179","sha512":"8762bc530d7841f2a640211d7be58bdc9885c557b9206a9ee6157a006d3ac96015abf4587a5ebf9b1cdb5af2afba95d7613c11bd35e60fabb51925410ac2bcd2","ssdeep":"","tlshash":"40515e8f8f805b1efcf94483752e92b385b254654410948dc32b135cf8489f95315bcb","first_seen":"2025-05-17T13:51:35.319255Z","last_seen":"2026-07-29T06:14:00.43348Z","times_seen":1382,"resource_available":false,"data":"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"}},"time_used":37,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":31,"receive":6,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/CN.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.442Z","timestamp":1785159269442,"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 /country/CN.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"8ea3ac67cd773a94323070920d5a3794\"\r\nlast-modified: Wed, 08 Sep 2021 09:01:42 GMT\r\ncdn-cachedat: 08/09/2025 14:29:31\r\nx-amz-id-2: FsvJprS7HqOjVjM9piwrLW/BAFLGlB0EZ5UZhf1CTv7FF00JvX9PFIMu4VQ9Kanj5FGxznXZ8kw=\r\nx-amz-request-id: 92J7465RVCSPRA62\r\nx-amz-meta-hash: 8ea3ac67cd773a94323070920d5a3794\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: bd70a35a9329d704b8167d35d55e0d35\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":434,"size_decoded":1185,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (434), with no line terminators","md5":"8ea3ac67cd773a94323070920d5a3794","sha1":"530c18f6cbd795cbc9603ad8d0740c0bbf1bf9c3","sha256":"991251c6f527ed5af6ffe76e6d8b63435ea972f986ef4a5d8908fef5fa9214fd","sha512":"9e88eb57174e856d0cf51d3db2aef61502ad90df3b981fe05abea4bb7c0ef5e4933026e7e179dc6dfa6d244ad662a17548d9e46465aa220278c5958fd5e399eb","ssdeep":"","tlshash":"f1e0ab29762ec21c850bc61decb81812750f64dae38f9aedf08257e079c0dd7d821e9c","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-29T06:16:55.261108Z","times_seen":1520,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDBoMTh2MThIMFYweiIgZmlsbD0iI0VGNTM1MCIvPjxwYXRoIGQ9Ik02LjY0IDUuOUwyLjQ5IDguOTcgNC4wNyA0bDEuNTkgNUwxLjUgNS45M2g1LjE0VjUuOXpNOC4wOSAzLjIxbDEuNTguNjdMOCA0LjI2IDkuMTIgM2wtLjE1IDEuNjgtLjg4LTEuNDd6TTkuOTkgNWwxLjIgMS4yMS0xLjY5LS4yNyAxLjU0LS43My0uOCAxLjUxTDkuOTkgNXpNMTAuMzMgNy41bC41OSAxLjYtMS40Mi0xaDEuNzFsLTEuMzUgMSAuNDctMS42ek05LjA3IDkuNWwtLjA4IDEuNzQtLjk0LTEuNDYgMS42LjYtMS42NS40NUw5LjA3IDkuNXoiIGZpbGw9IiNGRkVCM0IiLz48L3N2Zz4="}},"time_used":60,"timings":{"blocked":30,"dns":1,"connect":2,"send":0,"wait":4,"receive":-1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/js/jquery-2.1.4.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.925Z","timestamp":1785159267925,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /js/jquery-2.1.4.min.js HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"3fc81-66136805-812e8177ccbaa3d9;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 73409\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":261249,"size_decoded":73788,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"605ccb57ab3da4d1a5b6a0c77f7475e2","sha1":"96447d2da69a239c884a2aa9330bea43f12a41e0","sha256":"df028a1d70c7d7d932cf3cd27efe1995c34e85e9d4eb2a21f00ad38f5ca90e79","sha512":"c4994ade42cbbed633bbc466746a8cfadd77ca84bd42eeafa9ea510332a9197105b230e37e5baaf290d7daabb8f9d6862c3c02a92d10412251123ffc2a2b4eb3","ssdeep":"6144:cFaUYc1a9XN7rmJwsZ5zU9FjlR0eV9fiY12KMAjJ/kDABp8HN6bu4t:rUYhsaFjl39xF8DG8HN6blt","tlshash":"7644c4d9734f111f87a2336ae43b6249fe7cd1b1520551bdb58d986c24a081883fafbe","first_seen":"2026-07-27T07:08:39.295581Z","last_seen":"2026-07-27T13:35:41.7409Z","times_seen":3,"resource_available":true,"data":"LyohDQogKiBqUXVlcnkgSmF2YVNjcmlwdCBMaWJyYXJ5IHYyLjEuNA0KICogaHR0cDovL2pxdWVyeS5jb20vDQogKg0KICogSW5jbHVkZXMgU2l6emxlLmpzDQogKiBodHRwOi8vc2l6emxlanMuY29tLw0KICoNCiAqIENvcHlyaWdodCAyMDA1LCAyMDE0IGpRdWVyeSBGb3VuZGF0aW9uLCBJbmMuIGFuZCBvdGhlciBjb250cmlidXRvcnMNCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZQ0KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQ0KICoNCiAqIERhdGU6IDIwMTUtMDQtMjhUMTY6MDFaDQogKi8NCg0KOyhmdW5jdGlvbigpIHsNCgkndXNlIHN0cmljdCc7DQoNCgl2YXIgYW5pbWF0aW9uVGltZSA9IDM5MDsNCgl2YXIgb3B0aW9ucywgZGVmYXVsdHMsIGNvbnRhaW5lciwgaWNvbiwgbGF5b3V0LCBwb3BTdHlsZSwgcG9zaXRpb25zLCBjbG9zZTsNCg0KCXZhciBTbWFsbFBvcCA9IGZ1bmN0aW9uKHRlbXBsYXRlLCBzdHlsZSkgew0KDQoJCXRoaXMuZGVmYXVsdHMgPSB7DQoJCQl0ZW1wbGF0ZSAgOiBudWxsLA0KCQkJc3R5bGUgICAgIDogJ2luZm8nLA0KCQkJYXV0b2Nsb3NlIDogZmFsc2UsDQoJCQlwb3NpdGlvbiAgOiAndG9wLXJpZ2h0JywNCgkJCWljb24gICAgICA6IHRydWUsDQoJCQlncm91cCAgICAgOiBmYWxzZSwNCgkJCW9uT3BlbiAgICA6IGZhbHNlLA0KCQkJb25DbG9zZSAgIDogZmFsc2UNCgkJfTsNCg0KCQlkZWZhdWx0cyA9IGV4dGVuZCh0aGlzLmRlZmF1bHRzLCBzcG9wLmRlZmF1bHRzKTsNCg0KCQlpZiAoIHR5cGVvZiB0ZW1wbGF0ZSA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIHN0eWxlID09PSAnc3RyaW5nJyApIHsNCgkJCW9wdGlvbnMgPSB7IHRlbXBsYXRlOiB0ZW1wbGF0ZSwgc3R5bGU6IHN0eWxlIHx8IGRlZmF1bHRzLnN0eWxlfTsNCgkJfQ0KCQllbHNlIGlmICh0eXBlb2YgdGVtcGxhdGUgPT09ICdvYmplY3QnKSB7DQoJCQlvcHRpb25zID0gdGVtcGxhdGU7DQoJCX0NCgkJZWxzZSB7DQoJCQljb25zb2xlLmVycm9yKCdJbnZhbGlkIGFyZ3VtZW50cy4nKTsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KDQoJCXRoaXMub3B0ID0gZXh0ZW5kKCBkZWZhdWx0cywgb3B0aW9ucyk7DQoNCgkJaWYgKCQoJ3Nwb3AtLScgKyB0aGlzLm9wdC5ncm91cCkpIHsNCg0KCQkJdGhpcy5yZW1vdmUoJCgnc3BvcC0tJyArIHRoaXMub3B0Lmdyb3VwKSk7DQoJCX0NCg0KCQl0aGlzLm9wZW4oKTsNCgl9Ow0KDQoJU21hbGxQb3AucHJvdG90eXBlLmNyZWF0ZSA9IGZ1bmN0aW9uKHRlbXBsYXRlKSB7DQoNCgkJY29udGFpbmVyID0gJCh0aGlzLmdldFBvc2l0aW9uKCdzcG9wLS0nLCB0aGlzLm9wdC5wb3NpdGlvbikpOw0KDQoJCWljb24gPSAoIXRoaXMub3B0Lmljb24pID8gJycgOiAnPGkgY2xhc3M9InNwb3AtaWNvbiAnKw0KCQkgICAgICAgICAgICB0aGlzLmdldFN0eWxlKCdzcG9wLWljb24tLScsIHRoaXMub3B0LnN0eWxlKSArJyI+PC9pPic7DQoNCgkJbGF5b3V0ID0nPGRpdiBjbGFzcz0ic3BvcC1jbG9zZSIgZGF0YS1zcG9wPSJjbG9zZSIgYXJpYS1sYWJlbD0iQ2xvc2UiPiZ0aW1lczs8L2Rpdj4nICsNCgkJCQkJCWljb24gKw0KCQkJCQknPGRpdiBjbGFzcz0ic3BvcC1ib2R5Ij4nICsNCgkJCQkJCXRlbXBsYXRlICsNCgkJCQkJJzwvZGl2Pic7DQoNCgkJaWYgKCFjb250YWluZXIpIHsNCg0KCQkJdGhpcy5wb3BDb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsNCg0KCQkJdGhpcy5wb3BDb250YWluZXIuc2V0QXR0cmlidXRlKCdjbGFzcycsICdzcG9wLWNvbnRhaW5lciAnICsNCgkJCQl0aGlzLmdldFBvc2l0aW9uKCdzcG9wLS0nLCB0aGlzLm9wdC5wb3NpdGlvbikpOw0KDQoJCQl0aGlzLnBvcENvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ2lkJywgdGhpcy5nZXRQb3NpdGlvbignc3BvcC0tJywgdGhpcy5vcHQucG9zaXRpb24pKTsNCg0KCQkJZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLnBvcENvbnRhaW5lcik7DQoNCgkJCWNvbnRhaW5lciA9ICQodGhpcy5nZXRQb3NpdGlvbignc3BvcC0tJywgdGhpcy5vcHQucG9zaXRpb24pKTsNCgkJfQ0KDQoJCXRoaXMucG9wID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7DQoNCgkJdGhpcy5wb3Auc2V0QXR0cmlidXRlKCdjbGFzcycsICdzcG9wIHNwb3AtLW91dCBzcG9wLS1pbiAnICsgdGhpcy5nZXRTdHlsZSgnc3BvcC0tJywgdGhpcy5vcHQuc3R5bGUpICk7DQoNCgkJaWYgKHRoaXMub3B0Lmdyb3VwICYmIHR5cGVvZiB0aGlzLm9wdC5ncm91cCA9PT0gJ3N0cmluZycpIHsNCgkJCXRoaXMucG9wLnNldEF0dHJpYnV0ZSgnaWQnLCAnc3BvcC0tJyArIHRoaXMub3B0Lmdyb3VwKTsNCgkJfQ0KDQoNCgkJdGhpcy5wb3Auc2V0QXR0cmlidXRlKCdyb2xlJywgJ2FsZXJ0Jyk7DQoNCgkJdGhpcy5wb3AuaW5uZXJIVE1MID0gbGF5b3V0Ow0KDQoJCWNvbnRhaW5lci5hcHBlbmRDaGlsZCh0aGlzLnBvcCk7DQoJfTsNCg0KCVNtYWxsUG9wLnByb3RvdHlwZS5nZXRTdHlsZSA9IGZ1bmN0aW9uKHN1Zml4LCBhcmcpIHsNCg0KCQlwb3BTdHlsZSA9IHsNCgkJCSdzdWNjZXNzJzogJ3N1Y2Nlc3MnLA0KCQkJJ2Vycm9yJyAgOiAnZXJyb3InLA0KCQkJJ3dhcm5pbmcnOiAnd2FybmluZycNCgkJfTsNCgkJcmV0dXJuIHN1Zml4ICsgKHBvcFN0eWxlW2FyZ10gfHwgJ2luZm8nKTsNCgl9Ow0KDQoJU21hbGxQb3AucHJvdG90eXBlLmdldFBvc2l0aW9uID0gZnVuY3Rpb24oc3VmaXgsIHBvc2l0aW9uKSB7DQoNCgkJcG9zaXRpb25zID0gew0KCQkJJ3RvcC1sZWZ0JyAgICAgOiAndG9wLWxlZnQnLA0KCQkJJ3RvcC1jZW50ZXInICAgOiAndG9wLWNlbnRlcicsDQoJCQkndG9wLXJpZ2h0JyAgICA6ICd0b3AtcmlnaHQnLA0KCQkJJ2JvdHRvbS1sZWZ0JyAgOiAnYm90dG9tLWxlZnQnLA0KCQkJJ2JvdHRvbS1jZW50ZXInOiAnYm90dG9tLWNlbnRlcicsDQoJCQknYm90dG9tLXJpZ2h0JyA6ICdib3R0b20tcmlnaHQnDQoJCX07DQoJCXJldHVybiBzdWZpeCArIChwb3NpdGlvbnNbcG9zaXRpb25dIHx8ICd0b3AtcmlnaHQnKTsNCgl9Ow0KDQoJU21hbGxQb3AucHJvdG90eXBlLm9wZW4gPSBmdW5jdGlvbigpIHsNCg0KCQl0aGlzLmNyZWF0ZSh0aGlzLm9wdC50ZW1wbGF0ZSk7DQoNCgkJaWYgKHRoaXMub3B0Lm9uT3BlbikgeyB0aGlzLm9wdC5vbk9wZW4oKTt9DQoNCgkJdGhpcy5jbG9zZSgpOw0KCX07DQoNCglTbWFsbFBvcC5wcm90b3R5cGUuY2xvc2UgPSBmdW5jdGlvbiAoKSB7DQoNCgkJaWYgKHRoaXMub3B0LmF1dG9jbG9zZSAmJiB0eXBlb2YgdGhpcy5vcHQuYXV0b2Nsb3NlID09PSAnbnVtYmVyJykgew0KDQoJCQl0aGlzLmF1dG9jbG9zZVRpbWVyID0gc2V0VGltZW91dCggdGhpcy5yZW1vdmUuYmluZCh0aGlzLCB0aGlzLnBvcCksIHRoaXMub3B0LmF1dG9jbG9zZSk7DQoJCX0NCg0KCQl0aGlzLnBvcC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuYWRkTGlzdGVuZXJzLmJpbmQodGhpcykgLCBmYWxzZSk7DQoJfTsNCg0KCVNtYWxsUG9wLnByb3RvdHlwZS5hZGRMaXN0ZW5lcnMgPSBmdW5jdGlvbihldmVudCkgew0KDQoJCWNsb3NlID0gZXZlbnQudGFyZ2V0LmdldEF0dHJpYnV0ZSgnZGF0YS1zcG9wJyk7DQoNCgkJaWYgKGNsb3NlID09PSAnY2xvc2UnKSB7DQoNCgkJCWlmICh0aGlzLmF1dG9jbG9zZVRpbWVyKSB7IGNsZWFyVGltZW91dCh0aGlzLmF1dG9jbG9zZVRpbWVyKTt9DQoNCgkJCXRoaXMucmVtb3ZlKHRoaXMucG9wKTsNCgkJfQ0KCX07DQoNCglTbWFsbFBvcC5wcm90b3R5cGUucmVtb3ZlID0gZnVuY3Rpb24oZWxtKSB7DQoNCgkJaWYgKHRoaXMub3B0Lm9uQ2xvc2UpIHsgdGhpcy5vcHQub25DbG9zZSgpO30NCg0KCQlyZW1vdmVDbGFzcyhlbG0sICdzcG9wLS1pbicpOw0KDQoJCXNldFRpbWVvdXQoIGZ1bmN0aW9uICgpIHsNCg0KCQkJaWYoZG9jdW1lbnQuYm9keS5jb250YWlucyhlbG0pKSB7DQoJCQkJZWxtLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZWxtKTsNCgkJCX0NCg0KCQl9LCBhbmltYXRpb25UaW1lKTsNCgl9Ow0KDQoNCgkvLyBIZWxwZXJzDQoNCglmdW5jdGlvbiAkKGVsLCBjb24pIHsNCgkJcmV0dXJuIHR5cGVvZiBlbCA9PT0gJ3N0cmluZyc/IChjb24gfHwgZG9jdW1lbnQpLmdldEVsZW1lbnRCeUlkKGVsKSA6IGVsIHx8IG51bGw7DQoJfQ0KDQoJZnVuY3Rpb24gcmVtb3ZlQ2xhc3MoZWwsIGNsYXNzTmFtZSkgew0KCQlpZiAoZWwuY2xhc3NMaXN0KSB7DQoJCQllbC5jbGFzc0xpc3QucmVtb3ZlKGNsYXNzTmFtZSk7DQoJCX0NCgkJZWxzZSB7DQoJCQllbC5jbGFzc05hbWUgPSBlbC5jbGFzc05hbWUucmVwbGFjZShuZXcgUmVnRXhwKCcoXnxcXGIpJyArDQoJCQkJCQkJY2xhc3NOYW1lLnNwbGl0KCcgJykuam9pbignfCcpICsNCgkJCQkJCQknKFxcYnwkKScsICdnaScpLCAnICcpOw0KCQl9DQoJfQ0KDQoJZnVuY3Rpb24gZXh0ZW5kKG9iaiwgc3JjKSB7DQoNCgkJZm9yICh2YXIga2V5IGluIHNyYykgew0KCQkJaWYgKHNyYy5oYXNPd25Qcm9wZXJ0eShrZXkpKSBvYmpba2V5XSA9IHNyY1trZXldOw0KCQl9DQoNCgkJcmV0dXJuIG9iajsNCgl9DQoNCgl3aW5kb3cuc3BvcCA9IGZ1bmN0aW9uICh0ZW1wbGF0ZSwgc3R5bGUpIHsNCgkJaWYgKCAhdGVtcGxhdGUgfHwgIXdpbmRvdy5hZGRFdmVudExpc3RlbmVyICkgeyByZXR1cm4gZmFsc2U7fQ0KDQoJCXJldHVybiBuZXcgU21hbGxQb3AodGVtcGxhdGUsIHN0eWxlKTsNCgl9Ow0KDQoJc3BvcC5kZWZhdWx0cyA9IHt9Ow0KfSgpKTsNCg0KKGZ1bmN0aW9uKCBnbG9iYWwsIGZhY3RvcnkgKSB7DQoNCglpZiAoIHR5cGVvZiBtb2R1bGUgPT09ICJvYmplY3QiICYmIHR5cGVvZiBtb2R1bGUuZXhwb3J0cyA9PT0gIm9iamVjdCIgKSB7DQoJCS8vIEZvciBDb21tb25KUyBhbmQgQ29tbW9uSlMtbGlrZSBlbnZpcm9ubWVudHMgd2hlcmUgYSBwcm9wZXIgYHdpbmRvd2ANCgkJLy8gaXMgcHJlc2VudCwgZXhlY3V0ZSB0aGUgZmFjdG9yeSBhbmQgZ2V0IGpRdWVyeS4NCgkJLy8gRm9yIGVudmlyb25tZW50cyB0aGF0IGRvIG5vdCBoYXZlIGEgYHdpbmRvd2Agd2l0aCBhIGBkb2N1bWVudGANCgkJLy8gKHN1Y2ggYXMgTm9kZS5qcyksIGV4cG9zZSBhIGZhY3RvcnkgYXMgbW9kdWxlLmV4cG9ydHMuDQoJCS8vIFRoaXMgYWNjZW50dWF0ZXMgdGhlIG5lZWQgZm9yIHRoZSBjcmVhdGlvbiBvZiBhIHJlYWwgYHdpbmRvd2AuDQoJCS8vIGUuZy4gdmFyIGpRdWVyeSA9IHJlcXVpcmUoImpxdWVyeSIpKHdpbmRvdyk7DQoJCS8vIFNlZSB0aWNrZXQgIzE0NTQ5IGZvciBtb3JlIGluZm8uDQoJCW1vZHVsZS5leHBvcnRzID0gZ2xvYmFsLmRvY3VtZW50ID8NCgkJCWZhY3RvcnkoIGdsb2JhbCwgdHJ1ZSApIDoNCgkJCWZ1bmN0aW9uKCB3ICkgew0KCQkJCWlmICggIXcuZG9jdW1lbnQgKSB7DQoJCQkJCXRocm93IG5ldyBFcnJvciggImpRdWVyeSByZXF1aXJlcyBhIHdpbmRvdyB3aXRoIGEgZG9jdW1lbnQiICk7DQoJCQkJfQ0KCQkJCXJldHVybiBmYWN0b3J5KCB3ICk7DQoJCQl9Ow0KCX0gZWxzZSB7DQoJCWZhY3RvcnkoIGdsb2JhbCApOw0KCX0NCg0KLy8gUGFzcyB0aGlzIGlmIHdpbmRvdyBpcyBub3QgZGVmaW5lZCB5ZXQNCn0odHlwZW9mIHdpbmRvdyAhPT0gInVuZGVmaW5lZCIgPyB3aW5kb3cgOiB0aGlzLCBmdW5jdGlvbiggd2luZG93LCBub0dsb2JhbCApIHsNCg0KLy8gU3VwcG9ydDogRmlyZWZveCAxOCsNCi8vIENhbid0IGJlIGluIHN0cmljdCBtb2RlLCBzZXZlcmFsIGxpYnMgaW5jbHVkaW5nIEFTUC5ORVQgdHJhY2UNCi8vIHRoZSBzdGFjayB2aWEgYXJndW1lbnRzLmNhbGxlci5jYWxsZWUgYW5kIEZpcmVmb3ggZGllcyBpZg0KLy8geW91IHRyeSB0byB0cmFjZSB0aHJvdWdoICJ1c2Ugc3RyaWN0IiBjYWxsIGNoYWlucy4gKCMxMzMzNSkNCi8vDQoNCnZhciBhcnIgPSBbXTsNCg0KdmFyIHNsaWNlID0gYXJyLnNsaWNlOw0KDQp2YXIgY29uY2F0ID0gYXJyLmNvbmNhdDsNCg0KdmFyIHB1c2ggPSBhcnIucHVzaDsNCg0KdmFyIGluZGV4T2YgPSBhcnIuaW5kZXhPZjsNCg0KdmFyIGNsYXNzMnR5cGUgPSB7fTsNCg0KdmFyIHRvU3RyaW5nID0gY2xhc3MydHlwZS50b1N0cmluZzsNCg0KdmFyIGhhc093biA9IGNsYXNzMnR5cGUuaGFzT3duUHJvcGVydHk7DQoNCnZhciBzdXBwb3J0ID0ge307DQoNCg0KDQp2YXINCgkvLyBVc2UgdGhlIGNvcnJlY3QgZG9jdW1lbnQgYWNjb3JkaW5nbHkgd2l0aCB3aW5kb3cgYXJndW1lbnQgKHNhbmRib3gpDQoJZG9jdW1lbnQgPSB3aW5kb3cuZG9jdW1lbnQsDQoNCgl2ZXJzaW9uID0gIjIuMS40IiwNCg0KCS8vIERlZmluZSBhIGxvY2FsIGNvcHkgb2YgalF1ZXJ5DQoJalF1ZXJ5ID0gZnVuY3Rpb24oIHNlbGVjdG9yLCBjb250ZXh0ICkgew0KCQkvLyBUaGUgalF1ZXJ5IG9iamVjdCBpcyBhY3R1YWxseSBqdXN0IHRoZSBpbml0IGNvbnN0cnVjdG9yICdlbmhhbmNlZCcNCgkJLy8gTmVlZCBpbml0IGlmIGpRdWVyeSBpcyBjYWxsZWQgKGp1c3QgYWxsb3cgZXJyb3IgdG8gYmUgdGhyb3duIGlmIG5vdCBpbmNsdWRlZCkNCgkJcmV0dXJuIG5ldyBqUXVlcnkuZm4uaW5pdCggc2VsZWN0b3IsIGNvbnRleHQgKTsNCgl9LA0KDQoJLy8gU3VwcG9ydDogQW5kcm9pZDw0LjENCgkvLyBNYWtlIHN1cmUgd2UgdHJpbSBCT00gYW5kIE5CU1ANCglydHJpbSA9IC9eW1xzXHVGRUZGXHhBMF0rfFtcc1x1RkVGRlx4QTBdKyQvZywNCg0KCS8vIE1hdGNoZXMgZGFzaGVkIHN0cmluZyBmb3IgY2FtZWxpemluZw0KCXJtc1ByZWZpeCA9IC9eLW1zLS8sDQoJcmRhc2hBbHBoYSA9IC8tKFtcZGEtel0pL2dpLA0KDQoJLy8gVXNlZCBieSBqUXVlcnkuY2FtZWxDYXNlIGFzIGNhbGxiYWNrIHRvIHJlcGxhY2UoKQ0KCWZjYW1lbENhc2UgPSBmdW5jdGlvbiggYWxsLCBsZXR0ZXIgKSB7DQoJCXJldHVybiBsZXR0ZXIudG9VcHBlckNhc2UoKTsNCgl9Ow0KDQpqUXVlcnkuZm4gPSBqUXVlcnkucHJvdG90eXBlID0gew0KCS8vIFRoZSBjdXJyZW50IHZlcnNpb24gb2YgalF1ZXJ5IGJlaW5nIHVzZWQNCglqcXVlcnk6IHZlcnNpb24sDQoNCgljb25zdHJ1Y3RvcjogalF1ZXJ5LA0KDQoJLy8gU3RhcnQgd2l0aCBhbiBlbXB0eSBzZWxlY3Rvcg0KCXNlbGVjdG9yOiAiIiwNCg0KCS8vIFRoZSBkZWZhdWx0IGxlbmd0aCBvZiBhIGpRdWVyeSBvYmplY3QgaXMgMA0KCWxlbmd0aDogMCwNCg0KCXRvQXJyYXk6IGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4gc2xpY2UuY2FsbCggdGhpcyApOw0KCX0sDQoNCgkvLyBHZXQgdGhlIE50aCBlbGVtZW50IGluIHRoZSBtYXRjaGVkIGVsZW1lbnQgc2V0IE9SDQoJLy8gR2V0IHRoZSB3aG9sZSBtYXRjaGVkIGVsZW1lbnQgc2V0IGFzIGEgY2xlYW4gYXJyYXkNCglnZXQ6IGZ1bmN0aW9uKCBudW0gKSB7DQoJCXJldHVybiBudW0gIT0gbnVsbCA/DQoNCgkJCS8vIFJldHVybiBqdXN0IHRoZSBvbmUgZWxlbWVudCBmcm9tIHRoZSBzZXQNCgkJCSggbnVtIDwgMCA/IHRoaXNbIG51bSArIHRoaXMubGVuZ3RoIF0gOiB0aGlzWyBudW0gXSApIDoNCg0KCQkJLy8gUmV0dXJuIGFsbCB0aGUgZWxlbWVudHMgaW4gYSBjbGVhbiBhcnJheQ0KCQkJc2xpY2UuY2FsbCggdGhpcyApOw0KCX0sDQoNCgkvLyBUYWtlIGFuIGFycmF5IG9mIGVsZW1lbnRzIGFuZCBwdXNoIGl0IG9udG8gdGhlIHN0YWNrDQoJLy8gKHJldHVybmluZyB0aGUgbmV3IG1hdGNoZWQgZWxlbWVudCBzZXQpDQoJcHVzaFN0YWNrOiBmdW5jdGlvbiggZWxlbXMgKSB7DQoNCgkJLy8gQnVpbGQgYSBuZXcgalF1ZXJ5IG1hdGNoZWQgZWxlbWVudCBzZXQNCgkJdmFyIHJldCA9IGpRdWVyeS5tZXJnZSggdGhpcy5jb25zdHJ1Y3RvcigpLCBlbGVtcyApOw0KDQoJCS8vIEFkZCB0aGUgb2xkIG9iamVjdCBvbnRvIHRoZSBzdGFjayAoYXMgYSByZWZlcmVuY2UpDQoJCXJldC5wcmV2T2JqZWN0ID0gdGhpczsNCgkJcmV0LmNvbnRleHQgPSB0aGlzLmNvbnRleHQ7DQoNCgkJLy8gUmV0dXJuIHRoZSBuZXdseS1mb3JtZWQgZWxlbWVudCBzZXQNCgkJcmV0dXJuIHJldDsNCgl9LA0KDQoJLy8gRXhlY3V0ZSBhIGNhbGxiYWNrIGZvciBldmVyeSBlbGVtZW50IGluIHRoZSBtYXRjaGVkIHNldC4NCgkvLyAoWW91IGNhbiBzZWVkIHRoZSBhcmd1bWVudHMgd2l0aCBhbiBhcnJheSBvZiBhcmdzLCBidXQgdGhpcyBpcw0KCS8vIG9ubHkgdXNlZCBpbnRlcm5hbGx5LikNCgllYWNoOiBmdW5jdGlvbiggY2FsbGJhY2ssIGFyZ3MgKSB7DQoJCXJldHVybiBqUXVlcnkuZWFjaCggdGhpcywgY2FsbGJhY2ssIGFyZ3MgKTsNCgl9LA0KDQoJbWFwOiBmdW5jdGlvbiggY2FsbGJhY2sgKSB7DQoJCXJldHVybiB0aGlzLnB1c2hTdGFjayggalF1ZXJ5Lm1hcCh0aGlzLCBmdW5jdGlvbiggZWxlbSwgaSApIHsNCgkJCXJldHVybiBjYWxsYmFjay5jYWxsKCBlbGVtLCBpLCBlbGVtICk7DQoJCX0pKTsNCgl9LA0KDQoJc2xpY2U6IGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4gdGhpcy5wdXNoU3RhY2soIHNsaWNlLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSApOw0KCX0sDQoNCglmaXJzdDogZnVuY3Rpb24oKSB7DQoJCXJldHVybiB0aGlzLmVxKCAwICk7DQoJfSwNCg0KCWxhc3Q6IGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4gdGhpcy5lcSggLTEgKTsNCgl9LA0KDQoJZXE6IGZ1bmN0aW9uKCBpICkgew0KCQl2YXIgbGVuID0gdGhpcy5sZW5ndGgsDQoJCQlqID0gK2kgKyAoIGkgPCAwID8gbGVuIDogMCApOw0KCQlyZXR1cm4gdGhpcy5wdXNoU3RhY2soIGogPj0gMCAmJiBqIDwgbGVuID8gWyB0aGlzW2pdIF0gOiBbXSApOw0KCX0sDQoNCgllbmQ6IGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4gdGhpcy5wcmV2T2JqZWN0IHx8IHRoaXMuY29uc3RydWN0b3IobnVsbCk7DQoJfSwNCg0KCS8vIEZvciBpbnRlcm5hbCB1c2Ugb25seS4NCgkvLyBCZWhhdmVzIGxpa2UgYW4gQXJyYXkncyBtZXRob2QsIG5vdCBsaWtlIGEgalF1ZXJ5IG1ldGhvZC4NCglwdXNoOiBwdXNoLA0KCXNvcnQ6IGFyci5zb3J0LA0KCXNwbGljZTogYXJyLnNwbGljZQ0KfTsNCg0KalF1ZXJ5LmV4dGVuZCA9IGpRdWVyeS5mbi5leHRlbmQgPSBmdW5jdGlvbigpIHsNCgl2YXIgb3B0aW9ucywgbmFtZSwgc3JjLCBjb3B5LCBjb3B5SXNBcnJheSwgY2xvbmUsDQoJCXRhcmdldCA9IGFyZ3VtZW50c1swXSB8fCB7fSwNCgkJaSA9IDEsDQoJCWxlbmd0aCA9IGFyZ3VtZW50cy5sZW5ndGgsDQoJCWRlZXAgPSBmYWxzZTsNCg0KCS8vIEhhbmRsZSBhIGRlZXAgY29weSBzaXR1YXRpb24NCglpZiAoIHR5cGVvZiB0YXJnZXQgPT09ICJib29sZWFuIiApIHsNCgkJZGVlcCA9IHRhcmdldDsNCg0KCQkvLyBTa2lwIHRoZSBib29sZWFuIGFuZCB0aGUgdGFyZ2V0DQoJCXRhcmdldCA9IGFyZ3VtZW50c1sgaSBdIHx8IHt9Ow0KCQlpKys7DQoJfQ0KDQoJLy8gSGFuZGxlIGNhc2Ugd2hlbiB0YXJnZXQgaXMgYSBzdHJpbmcgb3Igc29tZXRoaW5nIChwb3NzaWJsZSBpbiBkZWVwIGNvcHkpDQoJaWYgKCB0eXBlb2YgdGFyZ2V0ICE9PSAib2JqZWN0IiAmJiAhalF1ZXJ5LmlzRnVuY3Rpb24odGFyZ2V0KSApIHsNCgkJdGFyZ2V0ID0ge307DQoJfQ0KDQoJLy8gRXh0ZW5kIGpRdWVyeSBpdHNlbGYgaWYgb25seSBvbmUgYXJndW1lbnQgaXMgcGFzc2VkDQoJaWYgKCBpID09PSBsZW5ndGggKSB7DQoJCXRhcmdldCA9IHRoaXM7DQoJCWktLTsNCgl9DQoNCglmb3IgKCA7IGkgPCBsZW5ndGg7IGkrKyApIHsNCgkJLy8gT25seSBkZWFsIHdpdGggbm9uLW51bGwvdW5kZWZpbmVkIHZhbHVlcw0KCQlpZiAoIChvcHRpb25zID0gYXJndW1lbnRzWyBpIF0pICE9IG51bGwgKSB7DQoJCQkvLyBFeHRlbmQgdGhlIGJhc2Ugb2JqZWN0DQoJCQlmb3IgKCBuYW1lIGluIG9wdGlvbnMgKSB7DQoJCQkJc3JjID0gdGFyZ2V0WyBuYW1lIF07DQoJCQkJY29weSA9IG9wdGlvbnNbIG5hbWUgXTsNCg0KCQkJCS8vIFByZXZlbnQgbmV2ZXItZW5kaW5nIGxvb3ANCgkJCQlpZiAoIHRhcmdldCA9PT0gY29weSApIHsNCgkJCQkJY29udGludWU7DQoJCQkJfQ0KDQoJCQkJLy8gUmVjdXJzZSBpZiB3ZSdyZSBtZXJnaW5nIHBsYWluIG9iamVjdHMgb3IgYXJyYXlzDQoJCQkJaWYgKCBkZWVwICYmIGNvcHkgJiYgKCBqUXVlcnkuaXNQbGFpbk9iamVjdChjb3B5KSB8fCAoY29weUlzQXJyYXkgPSBqUXVlcnkuaXNBcnJheShjb3B5KSkgKSApIHsNCgkJCQkJaWYgKCBjb3B5SXNBcnJheSApIHsNCgkJCQkJCWNvcHlJc0FycmF5ID0gZmFsc2U7DQoJCQkJCQljbG9uZSA9IHNyYyAmJiBqUXVlcnkuaXNBcnJheShzcmMpID8gc3JjIDogW107DQoNCgkJCQkJfSBlbHNlIHsNCgkJCQkJCWNsb25lID0gc3JjICYmIGpRdWVyeS5pc1BsYWluT2JqZWN0KHNyYykgPyBzcmMgOiB7fTsNCgkJCQkJfQ0KDQoJCQkJCS8vIE5ldmVyIG1vdmUgb3JpZ2luYWwgb2JqZWN0cywgY2xvbmUgdGhlbQ0KCQkJCQl0YXJnZXRbIG5hbWUgXSA9IGpRdWVyeS5leHRlbmQoIGRlZXAsIGNsb25lLCBjb3B5ICk7DQoNCgkJCQkvLyBEb24ndCBicmluZyBpbiB1bmRlZmluZWQgdmFsdWVzDQoJCQkJfSBlbHNlIGlmICggY29weSAhPT0gdW5kZWZpbmVkICkgew0KCQkJCQl0YXJnZXRbIG5hbWUgXSA9IGNvcHk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJfQ0KDQoJLy8gUmV0dXJuIHRoZSBtb2RpZmllZCBvYmplY3QNCglyZXR1cm4gdGFyZ2V0Ow0KfTsNCg0KalF1ZXJ5LmV4dGVuZCh7DQoJLy8gVW5pcXVlIGZvciBlYWNoIGNvcHkgb2YgalF1ZXJ5IG9uIHRoZSBwYWdlDQoJZXhwYW5kbzogImpRdWVyeSIgKyAoIHZlcnNpb24gKyBNYXRoLnJhbmRvbSgpICkucmVwbGFjZSggL1xEL2csICIiICksDQoNCgkvLyBBc3N1bWUgalF1ZXJ5IGlzIHJlYWR5IHdpdGhvdXQgdGhlIHJlYWR5IG1vZHVsZQ0KCWlzUmVhZHk6IHRydWUsDQoNCgllcnJvcjogZnVuY3Rpb24oIG1zZyApIHsNCgkJdGhyb3cgbmV3IEVycm9yKCBtc2cgKTsNCgl9LA0KDQoJbm9vcDogZnVuY3Rpb24oKSB7fSwNCg0KCWlzRnVuY3Rpb246IGZ1bmN0aW9uKCBvYmogKSB7DQoJCXJldHVybiBqUXVlcnkudHlwZShvYmopID09PSAiZnVuY3Rpb24iOw0KCX0sDQoNCglpc0FycmF5OiBBcnJheS5pc0FycmF5LA0KDQoJaXNXaW5kb3c6IGZ1bmN0aW9uKCBvYmogKSB7DQoJCXJldHVybiBvYmogIT0gbnVsbCAmJiBvYmogPT09IG9iai53aW5kb3c7DQoJfSwNCg0KCWlzTnVtZXJpYzogZnVuY3Rpb24oIG9iaiApIHsNCgkJLy8gcGFyc2VGbG9hdCBOYU5zIG51bWVyaWMtY2FzdCBmYWxzZSBwb3NpdGl2ZXMgKG51bGx8dHJ1ZXxmYWxzZXwiIikNCgkJLy8gLi4uYnV0IG1pc2ludGVycHJldHMgbGVhZGluZy1udW1iZXIgc3RyaW5ncywgcGFydGljdWxhcmx5IGhleCBsaXRlcmFscyAoIjB4Li4uIikNCgkJLy8gc3VidHJhY3Rpb24gZm9yY2VzIGluZmluaXRpZXMgdG8gTmFODQoJCS8vIGFkZGluZyAxIGNvcnJlY3RzIGxvc3Mgb2YgcHJlY2lzaW9uIGZyb20gcGFyc2VGbG9hdCAoIzE1MTAwKQ0KCQlyZXR1cm4gIWpRdWVyeS5pc0FycmF5KCBvYmogKSAmJiAob2JqIC0gcGFyc2VGbG9hdCggb2JqICkgKyAxKSA+PSAwOw0KCX0sDQoNCglpc1BsYWluT2JqZWN0OiBmdW5jdGlvbiggb2JqICkgew0KCQkvLyBOb3QgcGxhaW4gb2JqZWN0czoNCgkJLy8gLSBBbnkgb2JqZWN0IG9yIHZhbHVlIHdob3NlIGludGVybmFsIFtbQ2xhc3NdXSBwcm9wZXJ0eSBpcyBub3QgIltvYmplY3QgT2JqZWN0XSINCgkJLy8gLSBET00gbm9kZXMNCgkJLy8gLSB3aW5kb3cNCgkJaWYgKCBqUXVlcnkudHlwZSggb2JqICkgIT09ICJvYmplY3QiIHx8IG9iai5ub2RlVHlwZSB8fCBqUXVlcnkuaXNXaW5kb3coIG9iaiApICkgew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJaWYgKCBvYmouY29uc3RydWN0b3IgJiYNCgkJCQkhaGFzT3duLmNhbGwoIG9iai5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsICJpc1Byb3RvdHlwZU9mIiApICkgew0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoNCgkJLy8gSWYgdGhlIGZ1bmN0aW9uIGhhc24ndCByZXR1cm5lZCBhbHJlYWR5LCB3ZSdyZSBjb25maWRlbnQgdGhhdA0KCQkvLyB8b2JqfCBpcyBhIHBsYWluIG9iamVjdCwgY3JlYXRlZCBieSB7fSBvciBjb25zdHJ1Y3RlZCB3aXRoIG5ldyBPYmplY3QNCgkJcmV0dXJuIHRydWU7DQoJfSwNCg0KCWlzRW1wdHlPYmplY3Q6IGZ1bmN0aW9uKCBvYmogKSB7DQoJCXZhciBuYW1lOw0KCQlmb3IgKCBuYW1lIGluIG9iaiApIHsNCgkJCXJldHVybiBmYWxzZTsNCgkJfQ0KCQlyZXR1cm4gdHJ1ZTsNCgl9LA0KDQoJdHlwZTogZnVuY3Rpb24oIG9iaiApIHsNCgkJaWYgKCBvYmogPT0gbnVsbCApIHsNCgkJCXJldHVybiBvYmogKyAiIjsNCgkJfQ0KCQkvLyBTdXBwb3J0OiBBbmRyb2lkPDQuMCwgaU9TPDYgKGZ1bmN0aW9uaXNoIFJlZ0V4cCkNCgkJcmV0dXJuIHR5cGVvZiBvYmogPT09ICJvYmplY3QiIHx8IHR5cGVvZiBvYmogPT09ICJmdW5jdGlvbiIgPw0KCQkJY2xhc3MydHlwZVsgdG9TdHJpbmcuY2FsbChvYmopIF0gfHwgIm9iamVjdCIgOg0KCQkJdHlwZW9mIG9iajsNCgl9LA0KDQoJLy8gRXZhbHVhdGVzIGEgc2NyaXB0IGluIGEgZ2xvYmFsIGNvbnRleHQNCglnbG9iYWxFdmFsOiBmdW5jdGlvbiggY29kZSApIHsNCgkJdmFyIHNjcmlwdCwNCgkJCWluZGlyZWN0ID0gZXZhbDsNCg0KCQljb2RlID0galF1ZXJ5LnRyaW0oIGNvZGUgKTsNCg0KCQlpZiAoIGNvZGUgKSB7DQoJCQkvLyBJZiB0aGUgY29kZSBpbmNsdWRlcyBhIHZhbGlkLCBwcm9sb2d1ZSBwb3NpdGlvbg0KCQkJLy8gc3RyaWN0IG1vZGUgcHJhZ21hLCBleGVjdXRlIGNvZGUgYnkgaW5qZWN0aW5nIGENCgkJCS8vIHNjcmlwdCB0YWcgaW50byB0aGUgZG9jdW1lbnQuDQoJCQlpZiAoIGNvZGUuaW5kZXhPZigidXNlIHN0cmljdCIpID09PSAxICkgew0KCQkJCXNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0KCQkJCXNjcmlwdC50ZXh0ID0gY29kZTsNCgkJCQlkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKCBzY3JpcHQgKS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKCBzY3JpcHQgKTsNCgkJCX0gZWxzZSB7DQoJCQkvLyBPdGhlcndpc2UsIGF2b2lkIHRoZSBET00gbm9kZSBjcmVhdGlvbiwgaW5zZXJ0aW9uDQoJCQkvLyBhbmQgcmVtb3ZhbCBieSB1c2luZyBhbiBpbmRpcmVjdCBnbG9iYWwgZXZhbA0KCQkJCWluZGlyZWN0KCBjb2RlICk7DQoJCQl9DQoJCX0NCgl9LA0KDQoJLy8gQ29udmVydCBkYXNoZWQgdG8gY2FtZWxDYXNlOyB1c2VkIGJ5IHRoZSBjc3MgYW5kIGRhdGEgbW9kdWxlcw0KCS8vIFN1cHBvcnQ6IElFOS0xMSsNCgkvLyBNaWNyb3NvZnQgZm9yZ290IHRvIGh1bXAgdGhlaXIgdmVuZG9yIHByZWZpeCAoIzk1NzIpDQoJY2FtZWxDYXNlOiBmdW5jdGlvbiggc3RyaW5nICkgew0KCQlyZXR1cm4gc3RyaW5nLnJlcGxhY2UoIHJtc1ByZWZpeCwgIm1zLSIgKS5yZXBsYWNlKCByZGFzaEFscGhhLCBmY2FtZWxDYXNlICk7DQoJfSwNCg0KCW5vZGVOYW1lOiBmdW5jdGlvbiggZWxlbSwgbmFtZSApIHsNCgkJcmV0dXJuIGVsZW0ubm9kZU5hbWUgJiYgZWxlbS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09PSBuYW1lLnRvTG93ZXJDYXNlKCk7DQoJfSwNCg0KCS8vIGFyZ3MgaXMgZm9yIGludGVybmFsIHVzYWdlIG9ubHkNCgllYWNoOiBmdW5jdGlvbiggb2JqLCBjYWxsYmFjaywgYXJncyApIHsNCgkJdmFyIHZhbHVlLA0KCQkJaSA9IDAsDQoJCQlsZW5ndGggPSBvYmoubGVuZ3RoLA0KCQkJaXNBcnJheSA9IGlzQXJyYXlsaWtlKCBvYmogKTsNCg0KCQlpZiAoIGFyZ3MgKSB7DQoJCQlpZiAoIGlzQXJyYXkgKSB7DQoJCQkJZm9yICggOyBpIDwgbGVuZ3RoOyBpKysgKSB7DQoJCQkJCXZhbHVlID0gY2FsbGJhY2suYXBwbHkoIG9ialsgaSBdLCBhcmdzICk7DQoNCgkJCQkJaWYgKCB2YWx1ZSA9PT0gZmFsc2UgKSB7DQoJCQkJCQlicmVhazsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0gZWxzZSB7DQoJCQkJZm9yICggaSBpbiBvYmogKSB7DQoJCQkJCXZhbHVlID0gY2FsbGJhY2suYXBwbHkoIG9ialsgaSBdLCBhcmdzICk7DQoNCgkJCQkJaWYgKCB2YWx1ZSA9PT0gZmFsc2UgKSB7DQoJCQkJCQlicmVhazsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCg0KCQkvLyBBIHNwZWNpYWwsIGZhc3QsIGNhc2UgZm9yIHRoZSBtb3N0IGNvbW1vbiB1c2Ugb2YgZWFjaA0KCQl9IGVsc2Ugew0KCQkJaWYgKCBpc0FycmF5ICkgew0KCQkJCWZvciAoIDsgaSA8IGxlbmd0aDsgaSsrICkgew0KCQkJCQl2YWx1ZSA9IGNhbGxiYWNrLmNhbGwoIG9ialsgaSBdLCBpLCBvYmpbIGkgXSApOw0KDQoJCQkJCWlmICggdmFsdWUgPT09IGZhbHNlICkgew0KCQkJCQkJYnJlYWs7DQoJCQkJCX0NCgkJCQl9DQoJCQl9IGVsc2Ugew0KCQkJCWZvciAoIGkgaW4gb2JqICkgew0KCQkJCQl2YWx1ZSA9IGNhbGxiYWNrLmNhbGwoIG9ialsgaSBdLCBpLCBvYmpbIGkgXSApOw0KDQoJCQkJCWlmICggdmFsdWUgPT09IGZhbHNlICkgew0KCQkJCQkJYnJlYWs7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gb2JqOw0KCX0sDQoNCgkvLyBTdXBwb3J0OiBBbmRyb2lkPDQuMQ0KCXRyaW06IGZ1bmN0aW9uKCB0ZXh0ICkgew0KCQlyZXR1cm4gdGV4dCA9PSBudWxsID8NCgkJCSIiIDoNCgkJCSggdGV4dCArICIiICkucmVwbGFjZSggcnRyaW0sICIiICk7DQoJfSwNCg0KCS8vIHJlc3VsdHMgaXMgZm9yIGludGVybmFsIHVzYWdlIG9ubHkNCgltYWtlQXJyYXk6IGZ1bmN0aW9uKCBhcnIsIHJlc3VsdHMgKSB7DQoJCXZhciByZXQgPSByZXN1bHRzIHx8IFtdOw0KDQoJCWlmICggYXJyICE9IG51bGwgKSB7DQoJCQlpZiAoIGlzQXJyYXlsaWtlKCBPYmplY3QoYXJyKSApICkgew0KCQkJCWpRdWVyeS5tZXJnZSggcmV0LA0KCQkJCQl0eXBlb2YgYXJyID09PSAic3RyaW5nIiA/DQoJCQkJCVsgYXJyIF0gOiBhcnINCgkJCQkpOw0KCQkJfSBlbHNlIHsNCgkJCQlwdXNoLmNhbGwoIHJldCwgYXJyICk7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gcmV0Ow0KCX0sDQoNCglpbkFycmF5OiBmdW5jdGlvbiggZWxlbSwgYXJyLCBpICkgew0KCQlyZXR1cm4gYXJyID09IG51bGwgPyAtMSA6IGluZGV4T2YuY2FsbCggYXJyLCBlbGVtLCBpICk7DQoJfSwNCg0KCW1lcmdlOiBmdW5jdGlvbiggZmlyc3QsIHNlY29uZCApIHsNCgkJdmFyIGxlbiA9ICtzZWNvbmQubGVuZ3RoLA0KCQkJaiA9IDAsDQoJCQlpID0gZmlyc3QubGVuZ3RoOw0KDQoJCWZvciAoIDsgaiA8IGxlbjsgaisrICkgew0KCQkJZmlyc3RbIGkrKyBdID0gc2Vjb25kWyBqIF07DQoJCX0NCg0KCQlmaXJzdC5sZW5ndGggPSBpOw0KDQoJCXJldHVybiBmaXJzdDsNCgl9LA0KDQoJZ3JlcDogZnVuY3Rpb24oIGVsZW1zLCBjYWxsYmFjaywgaW52ZXJ0ICkgew0KCQl2YXIgY2FsbGJhY2tJbnZlcnNlLA0KCQkJbWF0Y2hlcyA9IFtdLA0KCQkJaSA9IDAsDQoJCQlsZW5ndGggPSBlbGVtcy5sZW5ndGgsDQoJCQljYWxsYmFja0V4cGVjdCA9ICFpbnZlcnQ7DQoNCgkJLy8gR28gdGhyb3VnaCB0aGUgYXJyYXksIG9ubHkgc2F2aW5nIHRoZSBpdGVtcw0KCQkvLyB0aGF0IHBhc3MgdGhlIHZhbGlkYXRvciBmdW5jdGlvbg0KCQlmb3IgKCA7IGkgPCBsZW5ndGg7IGkrKyApIHsNCgkJCWNhbGxiYWNrSW52ZXJzZSA9ICFjYWxsYmFjayggZWxlbXNbIGkgXSwgaSApOw0KCQkJaWYgKCBjYWxsYmFja0ludmVyc2UgIT09IGNhbGxiYWNrRXhwZWN0ICkgew0KCQkJCW1hdGNoZXMucHVzaCggZWxlbXNbIGkgXSApOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIG1hdGNoZXM7DQoJfSwNCg0KCS8vIGFyZyBpcyBmb3IgaW50ZXJuYWwgdXNhZ2Ugb25seQ0KCW1hcDogZnVuY3Rpb24oIGVsZW1zLCBjYWxsYmFjaywgYXJnICkgew0KCQl2YXIgdmFsdWUsDQoJCQlpID0gMCwNCgkJCWxlbmd0aCA9IGVsZW1zLmxlbmd0aCwNCgkJCWlzQXJyYXkgPSBpc0FycmF5bGlrZSggZWxlbXMgKSwNCgkJCXJldCA9IFtdOw0KDQoJCS8vIEdvIHRocm91Z2ggdGhlIGFycmF5LCB0cmFuc2xhdGluZyBlYWNoIG9mIHRoZSBpdGVtcyB0byB0aGVpciBuZXcgdmFsdWVzDQoJCWlmICggaXNBcnJheSApIHsNCgkJCWZvciAoIDsgaSA8IGxlbmd0aDsgaSsrICkgew0KCQkJCXZhbHVlID0gY2FsbGJhY2soIGVsZW1zWyBpIF0sIGksIGFyZyApOw0KDQoJCQkJaWYgKCB2YWx1ZSAhPSBudWxsICkgew0KCQkJCQlyZXQucHVzaCggdmFsdWUgKTsNCgkJCQl9DQoJCQl9DQoNCgkJLy8gR28gdGhyb3VnaCBldmVyeSBrZXkgb24gdGhlIG9iamVjdCwNCgkJfSBlbHNlIHsNCgkJCWZvciAoIGkgaW4gZWxlbXMgKSB7DQoJCQkJdmFsdWUgPSBjYWxsYmFjayggZWxlbXNbIGkgXSwgaSwgYXJnICk7DQoNCgkJCQlpZiAoIHZhbHVlICE9IG51bGwgKSB7DQoJCQkJCXJldC5wdXNoKCB2YWx1ZSApOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCS8vIEZsYXR0ZW4gYW55IG5lc3RlZCBhcnJheXMNCgkJcmV0dXJuIGNvbmNhdC5hcHBseSggW10sIHJldCApOw0KCX0sDQoNCgkvLyBBIGdsb2JhbCBHVUlEIGNvdW50ZXIgZm9yIG9iamVjdHMNCglndWlkOiAxLA0KDQoJLy8gQmluZCBhIGZ1bmN0aW9uIHRvIGEgY29udGV4dCwgb3B0aW9uYWxseSBwYXJ0aWFsbHkgYXBwbHlpbmcgYW55DQoJLy8gYXJndW1lbnRzLg0KCXByb3h5OiBmdW5jdGlvbiggZm4sIGNvbnRleHQgKSB7DQoJCXZhciB0bXAsIGFyZ3MsIHByb3h5Ow0KDQoJCWlmICggdHlwZW9mIGNvbnRleHQgPT09ICJzdHJpbmciICkgew0KCQkJdG1wID0gZm5bIGNvbnRleHQgXTsNCgkJCWNvbnRleHQgPSBmbjsNCgkJCWZuID0gdG1wOw0KCQl9DQoNCgkJLy8gUXVpY2sgY2hlY2sgdG8gZGV0ZXJtaW5lIGlmIHRhcmdldCBpcyBjYWxsYWJsZSwgaW4gdGhlIHNwZWMNCgkJLy8gdGhpcyB0aHJvd3MgYSBUeXBlRXJyb3IsIGJ1dCB3ZSB3aWxsIGp1c3QgcmV0dXJuIHVuZGVmaW5lZC4NCgkJaWYgKCAhalF1ZXJ5LmlzRnVuY3Rpb24oIGZuICkgKSB7DQoJCQlyZXR1cm4gdW5kZWZpbmVkOw0KCQl9DQoNCgkJLy8gU2ltdWxhdGVkIGJpbmQNCgkJYXJncyA9IHNsaWNlLmNhbGwoIGFyZ3VtZW50cywgMiApOw0KCQlwcm94eSA9IGZ1bmN0aW9uKCkgew0KCQkJcmV0dXJuIGZuLmFwcGx5KCBjb250ZXh0IHx8IHRoaXMsIGFyZ3MuY29uY2F0KCBzbGljZS5jYWxsKCBhcmd1bWVudHMgKSApICk7DQoJCX07DQoNCgkJLy8gU2V0IHRoZSBndWlkIG9mIHVuaXF1ZSBoYW5kbGVyIHRvIHRoZSBzYW1lIG9mIG9yaWdpbmFsIGhhbmRsZXIsIHNvIGl0IGNhbiBiZSByZW1vdmVkDQoJCXByb3h5Lmd1aWQgPSBmbi5ndWlkID0gZm4uZ3VpZCB8fCBqUXVlcnkuZ3VpZCsrOw0KDQoJCXJldHVybiBwcm94eTsNCgl9LA0KDQoJbm93OiBEYXRlLm5vdywNCg0KCS8vIGpRdWVyeS5zdXBwb3J0IGlzIG5vdCB1c2VkIGluIENvcmUgYnV0IG90aGVyIHByb2plY3RzIGF0dGFjaCB0aGVpcg0KCS8vIHByb3BlcnRpZXMgdG8gaXQgc28gaXQgbmVlZHMgdG8gZXhpc3QuDQoJc3VwcG9ydDogc3VwcG9ydA0KfSk7DQoNCi8vIFBvcHVsYXRlIHRoZSBjbGFzczJ0eXBlIG1hcA0KalF1ZXJ5LmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IiLnNwbGl0KCIgIiksIGZ1bmN0aW9uKGksIG5hbWUpIHsNCgljbGFzczJ0eXBlWyAiW29iamVjdCAiICsgbmFtZSArICJdIiBdID0gbmFtZS50b0xvd2VyQ2FzZSgpOw0KfSk7DQoNCmZ1bmN0aW9uIGlzQXJyYXlsaWtlKCBvYmogKSB7DQoNCgkvLyBTdXBwb3J0OiBpT1MgOC4yIChub3QgcmVwcm9kdWNpYmxlIGluIHNpbXVsYXRvcikNCgkvLyBgaW5gIGNoZWNrIHVzZWQgdG8gcHJldmVudCBKSVQgZXJyb3IgKGdoLTIxNDUpDQoJLy8gaGFzT3duIGlzbid0IHVzZWQgaGVyZSBkdWUgdG8gZmFsc2UgbmVnYXRpdmVzDQoJLy8gcmVnYXJkaW5nIE5vZGVsaXN0IGxlbmd0aCBpbiBJRQ0KCXZhciBsZW5ndGggPSAibGVuZ3RoIiBpbiBvYmogJiYgb2JqLmxlbmd0aCwNCgkJdHlwZSA9IGpRdWVyeS50eXBlKCBvYmogKTsNCg0KCWlmICggdHlwZSA9PT0gImZ1bmN0aW9uIiB8fCBqUXVlcnkuaXNXaW5kb3coIG9iaiApICkgew0KCQlyZXR1cm4gZmFsc2U7DQoJfQ0KDQoJaWYgKCBvYmoubm9kZVR5cGUgPT09IDEgJiYgbGVuZ3RoICkgew0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQoNCglyZXR1cm4gdHlwZSA9PT0gImFycmF5IiB8fCBsZW5ndGggPT09IDAgfHwNCgkJdHlwZW9mIGxlbmd0aCA9PT0gIm51bWJlciIgJiYgbGVuZ3RoID4gMCAmJiAoIGxlbmd0aCAtIDEgKSBpbiBvYmo7DQp9DQp2YXIgU2l6emxlID0NCi8qIQ0KICogU2l6emxlIENTUyBTZWxlY3RvciBFbmdpbmUgdjIuMi4wLXByZQ0KICogaHR0cDovL3NpenpsZWpzLmNvbS8NCiAqDQogKiBDb3B5cmlnaHQgMjAwOCwgMjAxNCBqUXVlcnkgRm91bmRhdGlvbiwgSW5jLiBhbmQgb3RoZXIgY29udHJpYnV0b3JzDQogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UNCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UNCiAqDQogKiBEYXRlOiAyMDE0LTEyLTE2DQogKi8NCihmdW5jdGlvbiggd2luZG93ICkgew0KDQp2YXIgaSwNCglzdXBwb3J0LA0KCUV4cHIsDQoJZ2V0VGV4dCwNCglpc1hNTCwNCgl0b2tlbml6ZSwNCgljb21waWxlLA0KCXNlbGVjdCwNCglvdXRlcm1vc3RDb250ZXh0LA0KCXNvcnRJbnB1dCwNCgloYXNEdXBsaWNhdGUsDQoNCgkvLyBMb2NhbCBkb2N1bWVudCB2YXJzDQoJc2V0RG9jdW1lbnQsDQoJZG9jdW1lbnQsDQoJZG9jRWxlbSwNCglkb2N1bWVudElzSFRNTCwNCglyYnVnZ3lRU0EsDQoJcmJ1Z2d5TWF0Y2hlcywNCgltYXRjaGVzLA0KCWNvbnRhaW5zLA0KDQoJLy8gSW5zdGFuY2Utc3BlY2lmaWMgZGF0YQ0KCWV4cGFuZG8gPSAic2l6emxlIiArIDEgKiBuZXcgRGF0ZSgpLA0KCXByZWZlcnJlZERvYyA9IHdpbmRvdy5kb2N1bWVudCwNCglkaXJydW5zID0gMCwNCglkb25lID0gMCwNCgljbGFzc0NhY2hlID0gY3JlYXRlQ2FjaGUoKSwNCgl0b2tlbkNhY2hlID0gY3JlYXRlQ2FjaGUoKSwNCgljb21waWxlckNhY2hlID0gY3JlYXRlQ2FjaGUoKSwNCglzb3J0T3JkZXIgPSBmdW5jdGlvbiggYSwgYiApIHsNCgkJaWYgKCBhID09PSBiICkgew0KCQkJaGFzRHVwbGljYXRlID0gdHJ1ZTsNCgkJfQ0KCQlyZXR1cm4gMDsNCgl9LA0KDQoJLy8gR2VuZXJhbC1wdXJwb3NlIGNvbnN0YW50cw0KCU1BWF9ORUdBVElWRSA9IDEgPDwgMzEsDQoNCgkvLyBJbnN0YW5jZSBtZXRob2RzDQoJaGFzT3duID0gKHt9KS5oYXNPd25Qcm9wZXJ0eSwNCglhcnIgPSBbXSwNCglwb3AgPSBhcnIucG9wLA0KCXB1c2hfbmF0aXZlID0gYXJyLnB1c2gsDQoJcHVzaCA9IGFyci5wdXNoLA0KCXNsaWNlID0gYXJyLnNsaWNlLA0KCS8vIFVzZSBhIHN0cmlwcGVkLWRvd24gaW5kZXhPZiBhcyBpdCdzIGZhc3RlciB0aGFuIG5hdGl2ZQ0KCS8vIGh0dHA6Ly9qc3BlcmYuY29tL3Rob3ItaW5kZXhvZi12cy1mb3IvNQ0KCWluZGV4T2YgPSBmdW5jdGlvbiggbGlzdCwgZWxlbSApIHsNCgkJdmFyIGkgPSAwLA0KCQkJbGVuID0gbGlzdC5sZW5ndGg7DQoJCWZvciAoIDsgaSA8IGxlbjsgaSsrICkgew0KCQkJaWYgKCBsaXN0W2ldID09PSBlbGVtICkgew0KCQkJCXJldHVybiBpOw0KCQkJfQ0KCQl9DQoJCXJldHVybiAtMTsNCgl9LA0KDQoJYm9vbGVhbnMgPSAiY2hlY2tlZHxzZWxlY3RlZHxhc3luY3xhdXRvZm9jdXN8YXV0b3BsYXl8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGlzbWFwfGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWQiLA0KDQoJLy8gUmVndWxhciBleHByZXNzaW9ucw0KDQoJLy8gV2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtc2VsZWN0b3JzLyN3aGl0ZXNwYWNlDQoJd2hpdGVzcGFjZSA9ICJbXFx4MjBcXHRcXHJcXG5cXGZdIiwNCgkvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLXN5bnRheC8jY2hhcmFjdGVycw0KCWNoYXJhY3RlckVuY29kaW5nID0gIig/OlxcXFwufFtcXHctXXxbXlxceDAwLVxceGEwXSkrIiwNCg0KCS8vIExvb3NlbHkgbW9kZWxlZCBvbiBDU1MgaWRlbnRpZmllciBjaGFyYWN0ZXJzDQoJLy8gQW4gdW5xdW90ZWQgdmFsdWUgc2hvdWxkIGJlIGEgQ1NTIGlkZW50aWZpZXIgaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy1zZWxlY3RvcnMvI2F0dHJpYnV0ZS1zZWxlY3RvcnMNCgkvLyBQcm9wZXIgc3ludGF4OiBodHRwOi8vd3d3LnczLm9yZy9UUi9DU1MyMS9zeW5kYXRhLmh0bWwjdmFsdWUtZGVmLWlkZW50aWZpZXINCglpZGVudGlmaWVyID0gY2hhcmFjdGVyRW5jb2RpbmcucmVwbGFjZSggInciLCAidyMiICksDQoNCgkvLyBBdHRyaWJ1dGUgc2VsZWN0b3JzOiBodHRwOi8vd3d3LnczLm9yZy9UUi9zZWxlY3RvcnMvI2F0dHJpYnV0ZS1zZWxlY3RvcnMNCglhdHRyaWJ1dGVzID0gIlxcWyIgKyB3aGl0ZXNwYWNlICsgIiooIiArIGNoYXJhY3RlckVuY29kaW5nICsgIikoPzoiICsgd2hpdGVzcGFjZSArDQoJCS8vIE9wZXJhdG9yIChjYXB0dXJlIDIpDQoJCSIqKFsqXiR8IX5dPz0pIiArIHdoaXRlc3BhY2UgKw0KCQkvLyAiQXR0cmlidXRlIHZhbHVlcyBtdXN0IGJlIENTUyBpZGVudGlmaWVycyBbY2FwdHVyZSA1XSBvciBzdHJpbmdzIFtjYXB0dXJlIDMgb3IgY2FwdHVyZSA0XSINCgkJIiooPzonKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcInwoIiArIGlkZW50aWZpZXIgKyAiKSl8KSIgKyB3aGl0ZXNwYWNlICsNCgkJIipcXF0iLA0KDQoJcHNldWRvcyA9ICI6KCIgKyBjaGFyYWN0ZXJFbmNvZGluZyArICIpKD86XFwoKCIgKw0KCQkvLyBUbyByZWR1Y2UgdGhlIG51bWJlciBvZiBzZWxlY3RvcnMgbmVlZGluZyB0b2tlbml6ZSBpbiB0aGUgcHJlRmlsdGVyLCBwcmVmZXIgYXJndW1lbnRzOg0KCQkvLyAxLiBxdW90ZWQgKGNhcHR1cmUgMzsgY2FwdHVyZSA0IG9yIGNhcHR1cmUgNSkNCgkJIignKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8IiArDQoJCS8vIDIuIHNpbXBsZSAoY2FwdHVyZSA2KQ0KCQkiKCg/OlxcXFwufFteXFxcXCgpW1xcXV18IiArIGF0dHJpYnV0ZXMgKyAiKSopfCIgKw0KCQkvLyAzLiBhbnl0aGluZyBlbHNlIChjYXB0dXJlIDIpDQoJCSIuKiIgKw0KCQkiKVxcKXwpIiwNCg0KCS8vIExlYWRpbmcgYW5kIG5vbi1lc2NhcGVkIHRyYWlsaW5nIHdoaXRlc3BhY2UsIGNhcHR1cmluZyBzb21lIG5vbi13aGl0ZXNwYWNlIGNoYXJhY3RlcnMgcHJlY2VkaW5nIHRoZSBsYXR0ZXINCglyd2hpdGVzcGFjZSA9IG5ldyBSZWdFeHAoIHdoaXRlc3BhY2UgKyAiKyIsICJnIiApLA0KCXJ0cmltID0gbmV3IFJlZ0V4cCggIl4iICsgd2hpdGVzcGFjZSArICIrfCgoPzpefFteXFxcXF0pKD86XFxcXC4pKikiICsgd2hpdGVzcGFjZSArICIrJCIsICJnIiApLA0KDQoJcmNvbW1hID0gbmV3IFJlZ0V4cCggIl4iICsgd2hpdGVzcGFjZSArICIqLCIgKyB3aGl0ZXNwYWNlICsgIioiICksDQoJcmNvbWJpbmF0b3JzID0gbmV3IFJlZ0V4cCggIl4iICsgd2hpdGVzcGFjZSArICIqKFs+K35dfCIgKyB3aGl0ZXNwYWNlICsgIikiICsgd2hpdGVzcGFjZSArICIqIiApLA0KDQoJcmF0dHJpYnV0ZVF1b3RlcyA9IG5ldyBSZWdFeHAoICI9IiArIHdoaXRlc3BhY2UgKyAiKihbXlxcXSdcIl0qPykiICsgd2hpdGVzcGFjZSArICIqXFxdIiwgImciICksDQoNCglycHNldWRvID0gbmV3IFJlZ0V4cCggcHNldWRvcyApLA0KCXJpZGVudGlmaWVyID0gbmV3IFJlZ0V4cCggIl4iICsgaWRlbnRpZmllciArICIkIiApLA0KDQoJbWF0Y2hFeHByID0gew0KCQkiSUQiOiBuZXcgUmVnRXhwKCAiXiMoIiArIGNoYXJhY3RlckVuY29kaW5nICsgIikiICksDQoJCSJDTEFTUyI6IG5ldyBSZWdFeHAoICJeXFwuKCIgKyBjaGFyYWN0ZXJFbmNvZGluZyArICIpIiApLA0KCQkiVEFHIjogbmV3IFJlZ0V4cCggIl4oIiArIGNoYXJhY3RlckVuY29kaW5nLnJlcGxhY2UoICJ3IiwgIncqIiApICsgIikiICksDQoJCSJBVFRSIjogbmV3IFJlZ0V4cCggIl4iICsgYXR0cmlidXRlcyApLA0KCQkiUFNFVURPIjogbmV3IFJlZ0V4cCggIl4iICsgcHNldWRvcyApLA0KCQkiQ0hJTEQiOiBuZXcgUmVnRXhwKCAiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIiArIHdoaXRlc3BhY2UgKw0KCQkJIiooZXZlbnxvZGR8KChbKy1dfCkoXFxkKilufCkiICsgd2hpdGVzcGFjZSArICIqKD86KFsrLV18KSIgKyB3aGl0ZXNwYWNlICsNCgkJCSIqKFxcZCspfCkpIiArIHdoaXRlc3BhY2UgKyAiKlxcKXwpIiwgImkiICksDQoJCSJib29sIjogbmV3IFJlZ0V4cCggIl4oPzoiICsgYm9vbGVhbnMgKyAiKSQiLCAiaSIgKSwNCgkJLy8gRm9yIHVzZSBpbiBsaWJyYXJpZXMgaW1wbGVtZW50aW5nIC5pcygpDQoJCS8vIFdlIHVzZSB0aGlzIGZvciBQT1MgbWF0Y2hpbmcgaW4gYHNlbGVjdGANCgkJIm5lZWRzQ29udGV4dCI6IG5ldyBSZWdFeHAoICJeIiArIHdoaXRlc3BhY2UgKyAiKls+K35dfDooZXZlbnxvZGR8ZXF8Z3R8bHR8bnRofGZpcnN0fGxhc3QpKD86XFwoIiArDQoJCQl3aGl0ZXNwYWNlICsgIiooKD86LVxcZCk/XFxkKikiICsgd2hpdGVzcGFjZSArICIqXFwpfCkoPz1bXi1dfCQpIiwgImkiICkNCgl9LA0KDQoJcmlucHV0cyA9IC9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGJ1dHRvbikkL2ksDQoJcmhlYWRlciA9IC9eaFxkJC9pLA0KDQoJcm5hdGl2ZSA9IC9eW157XStce1xzKlxbbmF0aXZlIFx3LywNCg0KCS8vIEVhc2lseS1wYXJzZWFibGUvcmV0cmlldmFibGUgSUQgb3IgVEFHIG9yIENMQVNTIHNlbGVjdG9ycw0KCXJxdWlja0V4cHIgPSAvXig/OiMoW1x3LV0rKXwoXHcrKXxcLihbXHctXSspKSQvLA0KDQoJcnNpYmxpbmcgPSAvWyt+XS8sDQoJcmVzY2FwZSA9IC8nfFxcL2csDQoNCgkvLyBDU1MgZXNjYXBlcyBodHRwOi8vd3d3LnczLm9yZy9UUi9DU1MyMS9zeW5kYXRhLmh0bWwjZXNjYXBlZC1jaGFyYWN0ZXJzDQoJcnVuZXNjYXBlID0gbmV3IFJlZ0V4cCggIlxcXFwoW1xcZGEtZl17MSw2fSIgKyB3aGl0ZXNwYWNlICsgIj98KCIgKyB3aGl0ZXNwYWNlICsgIil8LikiLCAiaWciICksDQoJZnVuZXNjYXBlID0gZnVuY3Rpb24oIF8sIGVzY2FwZWQsIGVzY2FwZWRXaGl0ZXNwYWNlICkgew0KCQl2YXIgaGlnaCA9ICIweCIgKyBlc2NhcGVkIC0gMHgxMDAwMDsNCgkJLy8gTmFOIG1lYW5zIG5vbi1jb2RlcG9pbnQNCgkJLy8gU3VwcG9ydDogRmlyZWZveDwyNA0KCQkvLyBXb3JrYXJvdW5kIGVycm9uZW91cyBudW1lcmljIGludGVycHJldGF0aW9uIG9mICsiMHgiDQoJCXJldHVybiBoaWdoICE9PSBoaWdoIHx8IGVzY2FwZWRXaGl0ZXNwYWNlID8NCgkJCWVzY2FwZWQgOg0KCQkJaGlnaCA8IDAgPw0KCQkJCS8vIEJNUCBjb2RlcG9pbnQNCgkJCQlTdHJpbmcuZnJvbUNoYXJDb2RlKCBoaWdoICsgMHgxMDAwMCApIDoNCgkJCQkvLyBTdXBwbGVtZW50YWwgUGxhbmUgY29kZXBvaW50IChzdXJyb2dhdGUgcGFpcikNCgkJCQlTdHJpbmcuZnJvbUNoYXJDb2RlKCBoaWdoID4+IDEwIHwgMHhEODAwLCBoaWdoICYgMHgzRkYgfCAweERDMDAgKTsNCgl9LA0KDQoJLy8gVXNlZCBmb3IgaWZyYW1lcw0KCS8vIFNlZSBzZXREb2N1bWVudCgpDQoJLy8gUmVtb3ZpbmcgdGhlIGZ1bmN0aW9uIHdyYXBwZXIgY2F1c2VzIGEgIlBlcm1pc3Npb24gRGVuaWVkIg0KCS8vIGVycm9yIGluIElFDQoJdW5sb2FkSGFuZGxlciA9IGZ1bmN0aW9uKCkgew0KCQlzZXREb2N1bWVudCgpOw0KCX07DQoNCi8vIE9wdGltaXplIGZvciBwdXNoLmFwcGx5KCBfLCBOb2RlTGlzdCApDQp0cnkgew0KCXB1c2guYXBwbHkoDQoJCShhcnIgPSBzbGljZS5jYWxsKCBwcmVmZXJyZWREb2MuY2hpbGROb2RlcyApKSwNCgkJcHJlZmVycmVkRG9jLmNoaWxkTm9kZXMNCgkpOw0KCS8vIFN1cHBvcnQ6IEFuZHJvaWQ8NC4wDQoJLy8gRGV0ZWN0IHNpbGVudGx5IGZhaWxpbmcgcHVzaC5hcHBseQ0KCWFyclsgcHJlZmVycmVkRG9jLmNoaWxkTm9kZXMubGVuZ3RoIF0ubm9kZVR5cGU7DQp9IGNhdGNoICggZSApIHsNCglwdXNoID0geyBhcHBseTogYXJyLmxlbmd0aCA/DQoNCgkJLy8gTGV2ZXJhZ2Ugc2xpY2UgaWYgcG9zc2libGUNCgkJZnVuY3Rpb24oIHRhcmdldCwgZWxzICkgew0KCQkJcHVzaF9uYXRpdmUuYXBwbHkoIHRhcmdldCwgc2xpY2UuY2FsbChlbHMpICk7DQoJCX0gOg0KDQoJCS8vIFN1cHBvcnQ6IElFPDkNCgkJLy8gT3RoZXJ3aXNlIGFwcGVuZCBkaXJlY3RseQ0KCQlmdW5jdGlvbiggdGFyZ2V0LCBlbHMgKSB7DQoJCQl2YXIgaiA9IHRhcmdldC5sZW5ndGgsDQoJCQkJaSA9IDA7DQoJCQkvLyBDYW4ndCB0cnVzdCBOb2RlTGlzdC5sZW5ndGgNCgkJCXdoaWxlICggKHRhcmdldFtqKytdID0gZWxzW2krK10pICkge30NCgkJCXRhcmdldC5sZW5ndGggPSBqIC0gMTsNCgkJfQ0KCX07DQp9DQoNCmZ1bmN0aW9uIFNpenpsZSggc2VsZWN0b3IsIGNvbnRleHQsIHJlc3VsdHMsIHNlZWQgKSB7DQoJdmFyIG1hdGNoLCBlbGVtLCBtLCBub2RlVHlwZSwNCgkJLy8gUVNBIHZhcnMNCgkJaSwgZ3JvdXBzLCBvbGQsIG5pZCwgbmV3Q29udGV4dCwgbmV3U2VsZWN0b3I7DQoNCglpZiAoICggY29udGV4dCA/IGNvbnRleHQub3duZXJEb2N1bWVudCB8fCBjb250ZXh0IDogcHJlZmVycmVkRG9jICkgIT09IGRvY3VtZW50ICkgew0KCQlzZXREb2N1bWVudCggY29udGV4dCApOw0KCX0NCg0KCWNvbnRleHQgPSBjb250ZXh0IHx8IGRvY3VtZW50Ow0KCXJlc3VsdHMgPSByZXN1bHRzIHx8IFtdOw0KCW5vZGVUeXBlID0gY29udGV4dC5ub2RlVHlwZTsNCg0KCWlmICggdHlwZW9mIHNlbGVjdG9yICE9PSAic3RyaW5nIiB8fCAhc2VsZWN0b3IgfHwNCgkJbm9kZVR5cGUgIT09IDEgJiYgbm9kZVR5cGUgIT09IDkgJiYgbm9kZVR5cGUgIT09IDExICkgew0KDQoJCXJldHVybiByZXN1bHRzOw0KCX0NCg0KCWlmICggIXNlZWQgJiYgZG9jdW1lbnRJc0hUTUwgKSB7DQoNCgkJLy8gVHJ5IHRvIHNob3J0Y3V0IGZpbmQgb3BlcmF0aW9ucyB3aGVuIHBvc3NpYmxlIChlLmcuLCBub3QgdW5kZXIgRG9jdW1lbnRGcmFnbWVudCkNCgkJaWYgKCBub2RlVHlwZSAhPT0gMTEgJiYgKG1hdGNoID0gcnF1aWNrRXhwci5leGVjKCBzZWxlY3RvciApKSApIHsNCgkJCS8vIFNwZWVkLXVwOiBTaXp6bGUoIiNJRCIpDQoJCQlpZiAoIChtID0gbWF0Y2hbMV0pICkgew0KCQkJCWlmICggbm9kZVR5cGUgPT09IDkgKSB7DQoJCQkJCWVsZW0gPSBjb250ZXh0LmdldEVsZW1lbnRCeUlkKCBtICk7DQoJCQkJCS8vIENoZWNrIHBhcmVudE5vZGUgdG8gY2F0Y2ggd2hlbiBCbGFja2JlcnJ5IDQuNiByZXR1cm5zDQoJCQkJCS8vIG5vZGVzIHRoYXQgYXJlIG5vIGxvbmdlciBpbiB0aGUgZG9jdW1lbnQgKGpRdWVyeSAjNjk2MykNCgkJCQkJaWYgKCBlbGVtICYmIGVsZW0ucGFyZW50Tm9kZSApIHsNCgkJCQkJCS8vIEhhbmRsZSB0aGUgY2FzZSB3aGVyZSBJRSwgT3BlcmEsIGFuZCBXZWJraXQgcmV0dXJuIGl0ZW1zDQoJCQkJCQkvLyBieSBuYW1lIGluc3RlYWQgb2YgSUQNCgkJCQkJCWlmICggZWxlbS5pZCA9PT0gbSApIHsNCgkJCQkJCQlyZXN1bHRzLnB1c2goIGVsZW0gKTsNCgkJCQkJCQlyZXR1cm4gcmVzdWx0czsNCgkJCQkJCX0NCgkJCQkJfSBlbHNlIHsNCgkJCQkJCXJldHVybiByZXN1bHRzOw0KCQkJCQl9DQoJCQkJfSBlbHNlIHsNCgkJCQkJLy8gQ29udGV4dCBpcyBub3QgYSBkb2N1bWVudA0KCQkJCQlpZiAoIGNvbnRleHQub3duZXJEb2N1bWVudCAmJiAoZWxlbSA9IGNvbnRleHQub3duZXJEb2N1bWVudC5nZXRFbGVtZW50QnlJZCggbSApKSAmJg0KCQkJCQkJY29udGFpbnMoIGNvbnRleHQsIGVsZW0gKSAmJiBlbGVtLmlkID09PSBtICkgew0KCQkJCQkJcmVzdWx0cy5wdXNoKCBlbGVtICk7DQoJCQkJCQlyZXR1cm4gcmVzdWx0czsNCgkJCQkJfQ0KCQkJCX0NCg0KCQkJLy8gU3BlZWQtdXA6IFNpenpsZSgiVEFHIikNCgkJCX0gZWxzZSBpZiAoIG1hdGNoWzJdICkgew0KCQkJCXB1c2guYXBwbHkoIHJlc3VsdHMsIGNvbnRleHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIHNlbGVjdG9yICkgKTsNCgkJCQlyZXR1cm4gcmVzdWx0czsNCg0KCQkJLy8gU3BlZWQtdXA6IFNpenpsZSgiLkNMQVNTIikNCgkJCX0gZWxzZSBpZiAoIChtID0gbWF0Y2hbM10pICYmIHN1cHBvcnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSApIHsNCgkJCQlwdXNoLmFwcGx5KCByZXN1bHRzLCBjb250ZXh0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoIG0gKSApOw0KCQkJCXJldHVybiByZXN1bHRzOw0KCQkJfQ0KCQl9DQoNCgkJLy8gUVNBIHBhdGgNCgkJaWYgKCBzdXBwb3J0LnFzYSAmJiAoIXJidWdneVFTQSB8fCAhcmJ1Z2d5UVNBLnRlc3QoIHNlbGVjdG9yICkpICkgew0KCQkJbmlkID0gb2xkID0gZXhwYW5kbzsNCgkJCW5ld0NvbnRleHQgPSBjb250ZXh0Ow0KCQkJbmV3U2VsZWN0b3IgPSBub2RlVHlwZSAhPT0gMSAmJiBzZWxlY3RvcjsNCg0KCQkJLy8gcVNBIHdvcmtzIHN0cmFuZ2VseSBvbiBFbGVtZW50LXJvb3RlZCBxdWVyaWVzDQoJCQkvLyBXZSBjYW4gd29yayBhcm91bmQgdGhpcyBieSBzcGVjaWZ5aW5nIGFuIGV4dHJhIElEIG9uIHRoZSByb290DQoJCQkvLyBhbmQgd29ya2luZyB1cCBmcm9tIHRoZXJlIChUaGFua3MgdG8gQW5kcmV3IER1cG9udCBmb3IgdGhlIHRlY2huaXF1ZSkNCgkJCS8vIElFIDggZG9lc24ndCB3b3JrIG9uIG9iamVjdCBlbGVtZW50cw0KCQkJaWYgKCBub2RlVHlwZSA9PT0gMSAmJiBjb250ZXh0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgIT09ICJvYmplY3QiICkgew0KCQkJCWdyb3VwcyA9IHRva2VuaXplKCBzZWxlY3RvciApOw0KDQoJCQkJaWYgKCAob2xkID0gY29udGV4dC5nZXRBdHRyaWJ1dGUoImlkIikpICkgew0KCQkJCQluaWQgPSBvbGQucmVwbGFjZSggcmVzY2FwZSwgIlxcJCYiICk7DQoJCQkJfSBlbHNlIHsNCgkJCQkJY29udGV4dC5zZXRBdHRyaWJ1dGUoICJpZCIsIG5pZCApOw0KCQkJCX0NCgkJCQluaWQgPSAiW2lkPSciICsgbmlkICsgIiddICI7DQoNCgkJCQlpID0gZ3JvdXBzLmxlbmd0aDsNCgkJCQl3aGlsZSAoIGktLSApIHsNCgkJCQkJZ3JvdXBzW2ldID0gbmlkICsgdG9TZWxlY3RvciggZ3JvdXBzW2ldICk7DQoJCQkJfQ0KCQkJCW5ld0NvbnRleHQgPSByc2libGluZy50ZXN0KCBzZWxlY3RvciApICYmIHRlc3RDb250ZXh0KCBjb250ZXh0LnBhcmVudE5vZGUgKSB8fCBjb250ZXh0Ow0KCQkJCW5ld1NlbGVjdG9yID0gZ3JvdXBzLmpvaW4oIiwiKTsNCgkJCX0NCg0KCQkJaWYgKCBuZXdTZWxlY3RvciApIHsNCgkJCQl0cnkgew0KCQkJCQlwdXNoLmFwcGx5KCByZXN1bHRzLA0KCQkJCQkJbmV3Q29udGV4dC5xdWVyeVNlbGVjdG9yQWxsKCBuZXdTZWxlY3RvciApDQoJCQkJCSk7DQoJCQkJCXJldHVybiByZXN1bHRzOw0KCQkJCX0gY2F0Y2gocXNhRXJyb3IpIHsNCgkJCQl9IGZpbmFsbHkgew0KCQkJCQlpZiAoICFvbGQgKSB7DQoJCQkJCQljb250ZXh0LnJlbW92ZUF0dHJpYnV0ZSgiaWQiKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCg0KCS8vIEFsbCBvdGhlcnMNCglyZXR1cm4gc2VsZWN0KCBzZWxlY3Rvci5yZXBsYWNlKCBydHJpbSwgIiQxIiApLCBjb250ZXh0LCByZXN1bHRzLCBzZWVkICk7DQp9DQoNCi8qKg0KICogQ3JlYXRlIGtleS12YWx1ZSBjYWNoZXMgb2YgbGltaXRlZCBzaXplDQogKiBAcmV0dXJucyB7RnVuY3Rpb24oc3RyaW5nLCBPYmplY3QpfSBSZXR1cm5zIHRoZSBPYmplY3QgZGF0YSBhZnRlciBzdG9yaW5nIGl0IG9uIGl0c2VsZiB3aXRoDQogKglwcm9wZXJ0eSBuYW1lIHRoZSAoc3BhY2Utc3VmZml4ZWQpIHN0cmluZyBhbmQgKGlmIHRoZSBjYWNoZSBpcyBsYXJnZXIgdGhhbiBFeHByLmNhY2hlTGVuZ3RoKQ0KICoJZGVsZXRpbmcgdGhlIG9sZGVzdCBlbnRyeQ0KICovDQpmdW5jdGlvbiBjcmVhdGVDYWNoZSgpIHsNCgl2YXIga2V5cyA9IFtdOw0KDQoJZnVuY3Rpb24gY2FjaGUoIGtleSwgdmFsdWUgKSB7DQoJCS8vIFVzZSAoa2V5ICsgIiAiKSB0byBhdm9pZCBjb2xsaXNpb24gd2l0aCBuYXRpdmUgcHJvdG90eXBlIHByb3BlcnRpZXMgKHNlZSBJc3N1ZSAjMTU3KQ0KCQlpZiAoIGtleXMucHVzaCgga2V5ICsgIiAiICkgPiBFeHByLmNhY2hlTGVuZ3RoICkgew0KCQkJLy8gT25seSBrZWVwIHRoZSBtb3N0IHJlY2VudCBlbnRyaWVzDQoJCQlkZWxldGUgY2FjaGVbIGtleXMuc2hpZnQoKSBdOw0KCQl9DQoJCXJldHVybiAoY2FjaGVbIGtleSArICIgIiBdID0gdmFsdWUpOw0KCX0NCglyZXR1cm4gY2FjaGU7DQp9DQoNCi8qKg0KICogTWFyayBhIGZ1bmN0aW9uIGZvciBzcGVjaWFsIHVzZSBieSBTaXp6bGUNCiAqIEBwYXJhbSB7RnVuY3Rpb259IGZuIFRoZSBmdW5jdGlvbiB0byBtYXJrDQogKi8NCmZ1bmN0aW9uIG1hcmtGdW5jdGlvbiggZm4gKSB7DQoJZm5bIGV4cGFuZG8gXSA9IHRydWU7DQoJcmV0dXJuIGZuOw0KfQ0KDQovKioNCiAqIFN1cHBvcnQgdGVzdGluZyB1c2luZyBhbiBlbGVtZW50DQogKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBQYXNzZWQgdGhlIGNyZWF0ZWQgZGl2IGFuZCBleHBlY3RzIGEgYm9vbGVhbiByZXN1bHQNCiAqLw0KZnVuY3Rpb24gYXNzZXJ0KCBmbiApIHsNCgl2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7DQoNCgl0cnkgew0KCQlyZXR1cm4gISFmbiggZGl2ICk7DQoJfSBjYXRjaCAoZSkgew0KCQlyZXR1cm4gZmFsc2U7DQoJfSBmaW5hbGx5IHsNCgkJLy8gUmVtb3ZlIGZyb20gaXRzIHBhcmVudCBieSBkZWZhdWx0DQoJCWlmICggZGl2LnBhcmVudE5vZGUgKSB7DQoJCQlkaXYucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCggZGl2ICk7DQoJCX0NCgkJLy8gcmVsZWFzZSBtZW1vcnkgaW4gSUUNCgkJZGl2ID0gbnVsbDsNCgl9DQp9DQoNCi8qKg0KICogQWRkcyB0aGUgc2FtZSBoYW5kbGVyIGZvciBhbGwgb2YgdGhlIHNwZWNpZmllZCBhdHRycw0KICogQHBhcmFtIHtTdHJpbmd9IGF0dHJzIFBpcGUtc2VwYXJhdGVkIGxpc3Qgb2YgYXR0cmlidXRlcw0KICogQHBhcmFtIHtGdW5jdGlvbn0gaGFuZGxlciBUaGUgbWV0aG9kIHRoYXQgd2lsbCBiZSBhcHBsaWVkDQogKi8NCmZ1bmN0aW9uIGFkZEhhbmRsZSggYXR0cnMsIGhhbmRsZXIgKSB7DQoJdmFyIGFyciA9IGF0dHJzLnNwbGl0KCJ8IiksDQoJCWkgPSBhdHRycy5sZW5ndGg7DQoNCgl3aGlsZSAoIGktLSApIHsNCgkJRXhwci5hdHRySGFuZGxlWyBhcnJbaV0gXSA9IGhhbmRsZXI7DQoJfQ0KfQ0KDQovKioNCiAqIENoZWNrcyBkb2N1bWVudCBvcmRlciBvZiB0d28gc2libGluZ3MNCiAqIEBwYXJhbSB7RWxlbWVudH0gYQ0KICogQHBhcmFtIHtFbGVtZW50fSBiDQogKiBAcmV0dXJucyB7TnVtYmVyfSBSZXR1cm5zIGxlc3MgdGhhbiAwIGlmIGEgcHJlY2VkZXMgYiwgZ3JlYXRlciB0aGFuIDAgaWYgYSBmb2xsb3dzIGINCiAqLw0KZnVuY3Rpb24gc2libGluZ0NoZWNrKCBhLCBiICkgew0KCXZhciBjdXIgPSBiICYmIGEsDQoJCWRpZmYgPSBjdXIgJiYgYS5ub2RlVHlwZSA9PT0gMSAmJiBiLm5vZGVUeXBlID09PSAxICYmDQoJCQkoIH5iLnNvdXJjZUluZGV4IHx8IE1BWF9ORUdBVElWRSApIC0NCgkJCSggfmEuc291cmNlSW5kZXggfHwgTUFYX05FR0FUSVZFICk7DQoNCgkvLyBVc2UgSUUgc291cmNlSW5kZXggaWYgYXZhaWxhYmxlIG9uIGJvdGggbm9kZXMNCglpZiAoIGRpZmYgKSB7DQoJCXJldHVybiBkaWZmOw0KCX0NCg0KCS8vIENoZWNrIGlmIGIgZm9sbG93cyBhDQoJaWYgKCBjdXIgKSB7DQoJCXdoaWxlICggKGN1ciA9IGN1ci5uZXh0U2libGluZykgKSB7DQoJCQlpZiAoIGN1ciA9PT0gYiApIHsNCgkJCQlyZXR1cm4gLTE7DQoJCQl9DQoJCX0NCgl9DQoNCglyZXR1cm4gYSA/IDEgOiAtMTsNCn0NCg0KLyoqDQogKiBSZXR1cm5zIGEgZnVuY3Rpb24gdG8gdXNlIGluIHBzZXVkb3MgZm9yIGlucHV0IHR5cGVzDQogKiBAcGFyYW0ge1N0cmluZ30gdHlwZQ0KICovDQpmdW5jdGlvbiBjcmVhdGVJbnB1dFBzZXVkbyggdHlwZSApIHsNCglyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7DQoJCXZhciBuYW1lID0gZWxlbS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOw0KCQlyZXR1cm4gbmFtZSA9PT0gImlucHV0IiAmJiBlbGVtLnR5cGUgPT09IHR5cGU7DQoJfTsNCn0NCg0KLyoqDQogKiBSZXR1cm5zIGEgZnVuY3Rpb24gdG8gdXNlIGluIHBzZXVkb3MgZm9yIGJ1dHRvbnMNCiAqIEBwYXJhbSB7U3RyaW5nfSB0eXBlDQogKi8NCmZ1bmN0aW9uIGNyZWF0ZUJ1dHRvblBzZXVkbyggdHlwZSApIHsNCglyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7DQoJCXZhciBuYW1lID0gZWxlbS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOw0KCQlyZXR1cm4gKG5hbWUgPT09ICJpbnB1dCIgfHwgbmFtZSA9PT0gImJ1dHRvbiIpICYmIGVsZW0udHlwZSA9PT0gdHlwZTsNCgl9Ow0KfQ0KDQovKioNCiAqIFJldHVybnMgYSBmdW5jdGlvbiB0byB1c2UgaW4gcHNldWRvcyBmb3IgcG9zaXRpb25hbHMNCiAqIEBwYXJhbSB7RnVuY3Rpb259IGZuDQogKi8NCmZ1bmN0aW9uIGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oIGZuICkgew0KCXJldHVybiBtYXJrRnVuY3Rpb24oZnVuY3Rpb24oIGFyZ3VtZW50ICkgew0KCQlhcmd1bWVudCA9ICthcmd1bWVudDsNCgkJcmV0dXJuIG1hcmtGdW5jdGlvbihmdW5jdGlvbiggc2VlZCwgbWF0Y2hlcyApIHsNCgkJCXZhciBqLA0KCQkJCW1hdGNoSW5kZXhlcyA9IGZuKCBbXSwgc2VlZC5sZW5ndGgsIGFyZ3VtZW50ICksDQoJCQkJaSA9IG1hdGNoSW5kZXhlcy5sZW5ndGg7DQoNCgkJCS8vIE1hdGNoIGVsZW1lbnRzIGZvdW5kIGF0IHRoZSBzcGVjaWZpZWQgaW5kZXhlcw0KCQkJd2hpbGUgKCBpLS0gKSB7DQoJCQkJaWYgKCBzZWVkWyAoaiA9IG1hdGNoSW5kZXhlc1tpXSkgXSApIHsNCgkJCQkJc2VlZFtqXSA9ICEobWF0Y2hlc1tqXSA9IHNlZWRbal0pOw0KCQkJCX0NCgkJCX0NCgkJfSk7DQoJfSk7DQp9DQoNCi8qKg0KICogQ2hlY2tzIGEgbm9kZSBmb3IgdmFsaWRpdHkgYXMgYSBTaXp6bGUgY29udGV4dA0KICogQHBhcmFtIHtFbGVtZW50fE9iamVjdD19IGNvbnRleHQNCiAqIEByZXR1cm5zIHtFbGVtZW50fE9iamVjdHxCb29sZWFufSBUaGUgaW5wdXQgbm9kZSBpZiBhY2NlcHRhYmxlLCBvdGhlcndpc2UgYSBmYWxzeSB2YWx1ZQ0KICovDQpmdW5jdGlvbiB0ZXN0Q29udGV4dCggY29udGV4dCApIHsNCglyZXR1cm4gY29udGV4dCAmJiB0eXBlb2YgY29udGV4dC5nZXRFbGVtZW50c0J5VGFnTmFtZSAhPT0gInVuZGVmaW5lZCIgJiYgY29udGV4dDsNCn0NCg0KLy8gRXhwb3NlIHN1cHBvcnQgdmFycyBmb3IgY29udmVuaWVuY2UNCnN1cHBvcnQgPSBTaXp6bGUuc3VwcG9ydCA9IHt9Ow0KDQovKioNCiAqIERldGVjdHMgWE1MIG5vZGVzDQogKiBAcGFyYW0ge0VsZW1lbnR8T2JqZWN0fSBlbGVtIEFuIGVsZW1lbnQgb3IgYSBkb2N1bWVudA0KICogQHJldHVybnMge0Jvb2xlYW59IFRydWUgaWZmIGVsZW0gaXMgYSBub24tSFRNTCBYTUwgbm9kZQ0KICovDQppc1hNTCA9IFNpenpsZS5pc1hNTCA9IGZ1bmN0aW9uKCBlbGVtICkgew0KCS8vIGRvY3VtZW50RWxlbWVudCBpcyB2ZXJpZmllZCBmb3IgY2FzZXMgd2hlcmUgaXQgZG9lc24ndCB5ZXQgZXhpc3QNCgkvLyAoc3VjaCBhcyBsb2FkaW5nIGlmcmFtZXMgaW4gSUUgLSAjNDgzMykNCgl2YXIgZG9jdW1lbnRFbGVtZW50ID0gZWxlbSAmJiAoZWxlbS5vd25lckRvY3VtZW50IHx8IGVsZW0pLmRvY3VtZW50RWxlbWVudDsNCglyZXR1cm4gZG9jdW1lbnRFbGVtZW50ID8gZG9jdW1lbnRFbGVtZW50Lm5vZGVOYW1lICE9PSAiSFRNTCIgOiBmYWxzZTsNCn07DQoNCi8qKg0KICogU2V0cyBkb2N1bWVudC1yZWxhdGVkIHZhcmlhYmxlcyBvbmNlIGJhc2VkIG9uIHRoZSBjdXJyZW50IGRvY3VtZW50DQogKiBAcGFyYW0ge0VsZW1lbnR8T2JqZWN0fSBbZG9jXSBBbiBlbGVtZW50IG9yIGRvY3VtZW50IG9iamVjdCB0byB1c2UgdG8gc2V0IHRoZSBkb2N1bWVudA0KICogQHJldHVybnMge09iamVjdH0gUmV0dXJucyB0aGUgY3VycmVudCBkb2N1bWVudA0KICovDQpzZXREb2N1bWVudCA9IFNpenpsZS5zZXREb2N1bWVudCA9IGZ1bmN0aW9uKCBub2RlICkgew0KCXZhciBoYXNDb21wYXJlLCBwYXJlbnQsDQoJCWRvYyA9IG5vZGUgPyBub2RlLm93bmVyRG9jdW1lbnQgfHwgbm9kZSA6IHByZWZlcnJlZERvYzsNCg0KCS8vIElmIG5vIGRvY3VtZW50IGFuZCBkb2N1bWVudEVsZW1lbnQgaXMgYXZhaWxhYmxlLCByZXR1cm4NCglpZiAoIGRvYyA9PT0gZG9jdW1lbnQgfHwgZG9jLm5vZGVUeXBlICE9PSA5IHx8ICFkb2MuZG9jdW1lbnRFbGVtZW50ICkgew0KCQlyZXR1cm4gZG9jdW1lbnQ7DQoJfQ0KDQoJLy8gU2V0IG91ciBkb2N1bWVudA0KCWRvY3VtZW50ID0gZG9jOw0KCWRvY0VsZW0gPSBkb2MuZG9jdW1lbnRFbGVtZW50Ow0KCXBhcmVudCA9IGRvYy5kZWZhdWx0VmlldzsNCg0KCS8vIFN1cHBvcnQ6IElFPjgNCgkvLyBJZiBpZnJhbWUgZG9jdW1lbnQgaXMgYXNzaWduZWQgdG8gImRvY3VtZW50IiB2YXJpYWJsZSBhbmQgaWYgaWZyYW1lIGhhcyBiZWVuIHJlbG9hZGVkLA0KCS8vIElFIHdpbGwgdGhyb3cgInBlcm1pc3Npb24gZGVuaWVkIiBlcnJvciB3aGVuIGFjY2Vzc2luZyAiZG9jdW1lbnQiIHZhcmlhYmxlLCBzZWUgalF1ZXJ5ICMxMzkzNg0KCS8vIElFNi04IGRvIG5vdCBzdXBwb3J0IHRoZSBkZWZhdWx0VmlldyBwcm9wZXJ0eSBzbyBwYXJlbnQgd2lsbCBiZSB1bmRlZmluZWQNCglpZiAoIHBhcmVudCAmJiBwYXJlbnQgIT09IHBhcmVudC50b3AgKSB7DQoJCS8vIElFMTEgZG9lcyBub3QgaGF2ZSBhdHRhY2hFdmVudCwgc28gYWxsIG11c3Qgc3VmZmVyDQoJCWlmICggcGFyZW50LmFkZEV2ZW50TGlzdGVuZXIgKSB7DQoJCQlwYXJlbnQuYWRkRXZlbnRMaXN0ZW5lciggInVubG9hZCIsIHVubG9hZEhhbmRsZXIsIGZhbHNlICk7DQoJCX0gZWxzZSBpZiAoIHBhcmVudC5hdHRhY2hFdmVudCApIHsNCgkJCXBhcmVudC5hdHRhY2hFdmVudCggIm9udW5sb2FkIiwgdW5sb2FkSGFuZGxlciApOw0KCQl9DQoJfQ0KDQoJLyogU3VwcG9ydCB0ZXN0cw0KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCglkb2N1bWVudElzSFRNTCA9ICFpc1hNTCggZG9jICk7DQoNCgkvKiBBdHRyaWJ1dGVzDQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KDQoJLy8gU3VwcG9ydDogSUU8OA0KCS8vIFZlcmlmeSB0aGF0IGdldEF0dHJpYnV0ZSByZWFsbHkgcmV0dXJucyBhdHRyaWJ1dGVzIGFuZCBub3QgcHJvcGVydGllcw0KCS8vIChleGNlcHRpbmcgSUU4IGJvb2xlYW5zKQ0KCXN1cHBvcnQuYXR0cmlidXRlcyA9IGFzc2VydChmdW5jdGlvbiggZGl2ICkgew0KCQlkaXYuY2xhc3NOYW1lID0gImkiOw0KCQlyZXR1cm4gIWRpdi5nZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIpOw0KCX0pOw0KDQoJLyogZ2V0RWxlbWVudChzKUJ5Kg0KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCg0KCS8vIENoZWNrIGlmIGdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikgcmV0dXJucyBvbmx5IGVsZW1lbnRzDQoJc3VwcG9ydC5nZXRFbGVtZW50c0J5VGFnTmFtZSA9IGFzc2VydChmdW5jdGlvbiggZGl2ICkgew0KCQlkaXYuYXBwZW5kQ2hpbGQoIGRvYy5jcmVhdGVDb21tZW50KCIiKSApOw0KCQlyZXR1cm4gIWRpdi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aDsNCgl9KTsNCg0KCS8vIFN1cHBvcnQ6IElFPDkNCglzdXBwb3J0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUgPSBybmF0aXZlLnRlc3QoIGRvYy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lICk7DQoNCgkvLyBTdXBwb3J0OiBJRTwxMA0KCS8vIENoZWNrIGlmIGdldEVsZW1lbnRCeUlkIHJldHVybnMgZWxlbWVudHMgYnkgbmFtZQ0KCS8vIFRoZSBicm9rZW4gZ2V0RWxlbWVudEJ5SWQgbWV0aG9kcyBkb24ndCBwaWNrIHVwIHByb2dyYW1hdGljYWxseS1zZXQgbmFtZXMsDQoJLy8gc28gdXNlIGEgcm91bmRhYm91dCBnZXRFbGVtZW50c0J5TmFtZSB0ZXN0DQoJc3VwcG9ydC5nZXRCeUlkID0gYXNzZXJ0KGZ1bmN0aW9uKCBkaXYgKSB7DQoJCWRvY0VsZW0uYXBwZW5kQ2hpbGQoIGRpdiApLmlkID0gZXhwYW5kbzsNCgkJcmV0dXJuICFkb2MuZ2V0RWxlbWVudHNCeU5hbWUgfHwgIWRvYy5nZXRFbGVtZW50c0J5TmFtZSggZXhwYW5kbyApLmxlbmd0aDsNCgl9KTsNCg0KCS8vIElEIGZpbmQgYW5kIGZpbHRlcg0KCWlmICggc3VwcG9ydC5nZXRCeUlkICkgew0KCQlFeHByLmZpbmRbIklEIl0gPSBmdW5jdGlvbiggaWQsIGNvbnRleHQgKSB7DQoJCQlpZiAoIHR5cGVvZiBjb250ZXh0LmdldEVsZW1lbnRCeUlkICE9PSAidW5kZWZpbmVkIiAmJiBkb2N1bWVudElzSFRNTCApIHsNCgkJCQl2YXIgbSA9IGNvbnRleHQuZ2V0RWxlbWVudEJ5SWQoIGlkICk7DQoJCQkJLy8gQ2hlY2sgcGFyZW50Tm9kZSB0byBjYXRjaCB3aGVuIEJsYWNrYmVycnkgNC42IHJldHVybnMNCgkJCQkvLyBub2RlcyB0aGF0IGFyZSBubyBsb25nZXIgaW4gdGhlIGRvY3VtZW50ICM2OTYzDQoJCQkJcmV0dXJuIG0gJiYgbS5wYXJlbnROb2RlID8gWyBtIF0gOiBbXTsNCgkJCX0NCgkJfTsNCgkJRXhwci5maWx0ZXJbIklEIl0gPSBmdW5jdGlvbiggaWQgKSB7DQoJCQl2YXIgYXR0cklkID0gaWQucmVwbGFjZSggcnVuZXNjYXBlLCBmdW5lc2NhcGUgKTsNCgkJCXJldHVybiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCQlyZXR1cm4gZWxlbS5nZXRBdHRyaWJ1dGUoImlkIikgPT09IGF0dHJJZDsNCgkJCX07DQoJCX07DQoJfSBlbHNlIHsNCgkJLy8gU3VwcG9ydDogSUU2LzcNCgkJLy8gZ2V0RWxlbWVudEJ5SWQgaXMgbm90IHJlbGlhYmxlIGFzIGEgZmluZCBzaG9ydGN1dA0KCQlkZWxldGUgRXhwci5maW5kWyJJRCJdOw0KDQoJCUV4cHIuZmlsdGVyWyJJRCJdID0gIGZ1bmN0aW9uKCBpZCApIHsNCgkJCXZhciBhdHRySWQgPSBpZC5yZXBsYWNlKCBydW5lc2NhcGUsIGZ1bmVzY2FwZSApOw0KCQkJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJCXZhciBub2RlID0gdHlwZW9mIGVsZW0uZ2V0QXR0cmlidXRlTm9kZSAhPT0gInVuZGVmaW5lZCIgJiYgZWxlbS5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpOw0KCQkJCXJldHVybiBub2RlICYmIG5vZGUudmFsdWUgPT09IGF0dHJJZDsNCgkJCX07DQoJCX07DQoJfQ0KDQoJLy8gVGFnDQoJRXhwci5maW5kWyJUQUciXSA9IHN1cHBvcnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgPw0KCQlmdW5jdGlvbiggdGFnLCBjb250ZXh0ICkgew0KCQkJaWYgKCB0eXBlb2YgY29udGV4dC5nZXRFbGVtZW50c0J5VGFnTmFtZSAhPT0gInVuZGVmaW5lZCIgKSB7DQoJCQkJcmV0dXJuIGNvbnRleHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIHRhZyApOw0KDQoJCQkvLyBEb2N1bWVudEZyYWdtZW50IG5vZGVzIGRvbid0IGhhdmUgZ0VCVE4NCgkJCX0gZWxzZSBpZiAoIHN1cHBvcnQucXNhICkgew0KCQkJCXJldHVybiBjb250ZXh0LnF1ZXJ5U2VsZWN0b3JBbGwoIHRhZyApOw0KCQkJfQ0KCQl9IDoNCg0KCQlmdW5jdGlvbiggdGFnLCBjb250ZXh0ICkgew0KCQkJdmFyIGVsZW0sDQoJCQkJdG1wID0gW10sDQoJCQkJaSA9IDAsDQoJCQkJLy8gQnkgaGFwcHkgY29pbmNpZGVuY2UsIGEgKGJyb2tlbikgZ0VCVE4gYXBwZWFycyBvbiBEb2N1bWVudEZyYWdtZW50IG5vZGVzIHRvbw0KCQkJCXJlc3VsdHMgPSBjb250ZXh0LmdldEVsZW1lbnRzQnlUYWdOYW1lKCB0YWcgKTsNCg0KCQkJLy8gRmlsdGVyIG91dCBwb3NzaWJsZSBjb21tZW50cw0KCQkJaWYgKCB0YWcgPT09ICIqIiApIHsNCgkJCQl3aGlsZSAoIChlbGVtID0gcmVzdWx0c1tpKytdKSApIHsNCgkJCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxICkgew0KCQkJCQkJdG1wLnB1c2goIGVsZW0gKTsNCgkJCQkJfQ0KCQkJCX0NCg0KCQkJCXJldHVybiB0bXA7DQoJCQl9DQoJCQlyZXR1cm4gcmVzdWx0czsNCgkJfTsNCg0KCS8vIENsYXNzDQoJRXhwci5maW5kWyJDTEFTUyJdID0gc3VwcG9ydC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lICYmIGZ1bmN0aW9uKCBjbGFzc05hbWUsIGNvbnRleHQgKSB7DQoJCWlmICggZG9jdW1lbnRJc0hUTUwgKSB7DQoJCQlyZXR1cm4gY29udGV4dC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCBjbGFzc05hbWUgKTsNCgkJfQ0KCX07DQoNCgkvKiBRU0EvbWF0Y2hlc1NlbGVjdG9yDQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KDQoJLy8gUVNBIGFuZCBtYXRjaGVzU2VsZWN0b3Igc3VwcG9ydA0KDQoJLy8gbWF0Y2hlc1NlbGVjdG9yKDphY3RpdmUpIHJlcG9ydHMgZmFsc2Ugd2hlbiB0cnVlIChJRTkvT3BlcmEgMTEuNSkNCglyYnVnZ3lNYXRjaGVzID0gW107DQoNCgkvLyBxU2EoOmZvY3VzKSByZXBvcnRzIGZhbHNlIHdoZW4gdHJ1ZSAoQ2hyb21lIDIxKQ0KCS8vIFdlIGFsbG93IHRoaXMgYmVjYXVzZSBvZiBhIGJ1ZyBpbiBJRTgvOSB0aGF0IHRocm93cyBhbiBlcnJvcg0KCS8vIHdoZW5ldmVyIGBkb2N1bWVudC5hY3RpdmVFbGVtZW50YCBpcyBhY2Nlc3NlZCBvbiBhbiBpZnJhbWUNCgkvLyBTbywgd2UgYWxsb3cgOmZvY3VzIHRvIHBhc3MgdGhyb3VnaCBRU0EgYWxsIHRoZSB0aW1lIHRvIGF2b2lkIHRoZSBJRSBlcnJvcg0KCS8vIFNlZSBodHRwOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC8xMzM3OA0KCXJidWdneVFTQSA9IFtdOw0KDQoJaWYgKCAoc3VwcG9ydC5xc2EgPSBybmF0aXZlLnRlc3QoIGRvYy5xdWVyeVNlbGVjdG9yQWxsICkpICkgew0KCQkvLyBCdWlsZCBRU0EgcmVnZXgNCgkJLy8gUmVnZXggc3RyYXRlZ3kgYWRvcHRlZCBmcm9tIERpZWdvIFBlcmluaQ0KCQlhc3NlcnQoZnVuY3Rpb24oIGRpdiApIHsNCgkJCS8vIFNlbGVjdCBpcyBzZXQgdG8gZW1wdHkgc3RyaW5nIG9uIHB1cnBvc2UNCgkJCS8vIFRoaXMgaXMgdG8gdGVzdCBJRSdzIHRyZWF0bWVudCBvZiBub3QgZXhwbGljaXRseQ0KCQkJLy8gc2V0dGluZyBhIGJvb2xlYW4gY29udGVudCBhdHRyaWJ1dGUsDQoJCQkvLyBzaW5jZSBpdHMgcHJlc2VuY2Ugc2hvdWxkIGJlIGVub3VnaA0KCQkJLy8gaHR0cDovL2J1Z3MuanF1ZXJ5LmNvbS90aWNrZXQvMTIzNTkNCgkJCWRvY0VsZW0uYXBwZW5kQ2hpbGQoIGRpdiApLmlubmVySFRNTCA9ICI8YSBpZD0nIiArIGV4cGFuZG8gKyAiJz48L2E+IiArDQoJCQkJIjxzZWxlY3QgaWQ9JyIgKyBleHBhbmRvICsgIi1cZl0nIG1zYWxsb3djYXB0dXJlPScnPiIgKw0KCQkJCSI8b3B0aW9uIHNlbGVjdGVkPScnPjwvb3B0aW9uPjwvc2VsZWN0PiI7DQoNCgkJCS8vIFN1cHBvcnQ6IElFOCwgT3BlcmEgMTEtMTIuMTYNCgkJCS8vIE5vdGhpbmcgc2hvdWxkIGJlIHNlbGVjdGVkIHdoZW4gZW1wdHkgc3RyaW5ncyBmb2xsb3cgXj0gb3IgJD0gb3IgKj0NCgkJCS8vIFRoZSB0ZXN0IGF0dHJpYnV0ZSBtdXN0IGJlIHVua25vd24gaW4gT3BlcmEgYnV0ICJzYWZlIiBmb3IgV2luUlQNCgkJCS8vIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9pZS9oaDQ2NTM4OC5hc3B4I2F0dHJpYnV0ZV9zZWN0aW9uDQoJCQlpZiAoIGRpdi5xdWVyeVNlbGVjdG9yQWxsKCJbbXNhbGxvd2NhcHR1cmVePScnXSIpLmxlbmd0aCApIHsNCgkJCQlyYnVnZ3lRU0EucHVzaCggIlsqXiRdPSIgKyB3aGl0ZXNwYWNlICsgIiooPzonJ3xcIlwiKSIgKTsNCgkJCX0NCg0KCQkJLy8gU3VwcG9ydDogSUU4DQoJCQkvLyBCb29sZWFuIGF0dHJpYnV0ZXMgYW5kICJ2YWx1ZSIgYXJlIG5vdCB0cmVhdGVkIGNvcnJlY3RseQ0KCQkJaWYgKCAhZGl2LnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGggKSB7DQoJCQkJcmJ1Z2d5UVNBLnB1c2goICJcXFsiICsgd2hpdGVzcGFjZSArICIqKD86dmFsdWV8IiArIGJvb2xlYW5zICsgIikiICk7DQoJCQl9DQoNCgkJCS8vIFN1cHBvcnQ6IENocm9tZTwyOSwgQW5kcm9pZDw0LjIrLCBTYWZhcmk8Ny4wKywgaU9TPDcuMCssIFBoYW50b21KUzwxLjkuNysNCgkJCWlmICggIWRpdi5xdWVyeVNlbGVjdG9yQWxsKCAiW2lkfj0iICsgZXhwYW5kbyArICItXSIgKS5sZW5ndGggKSB7DQoJCQkJcmJ1Z2d5UVNBLnB1c2goIn49Iik7DQoJCQl9DQoNCgkJCS8vIFdlYmtpdC9PcGVyYSAtIDpjaGVja2VkIHNob3VsZCByZXR1cm4gc2VsZWN0ZWQgb3B0aW9uIGVsZW1lbnRzDQoJCQkvLyBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDExL1JFQy1jc3MzLXNlbGVjdG9ycy0yMDExMDkyOS8jY2hlY2tlZA0KCQkJLy8gSUU4IHRocm93cyBlcnJvciBoZXJlIGFuZCB3aWxsIG5vdCBzZWUgbGF0ZXIgdGVzdHMNCgkJCWlmICggIWRpdi5xdWVyeVNlbGVjdG9yQWxsKCI6Y2hlY2tlZCIpLmxlbmd0aCApIHsNCgkJCQlyYnVnZ3lRU0EucHVzaCgiOmNoZWNrZWQiKTsNCgkJCX0NCg0KCQkJLy8gU3VwcG9ydDogU2FmYXJpIDgrLCBpT1MgOCsNCgkJCS8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzY4NTENCgkJCS8vIEluLXBhZ2UgYHNlbGVjdG9yI2lkIHNpYmluZy1jb21iaW5hdG9yIHNlbGVjdG9yYCBmYWlscw0KCQkJaWYgKCAhZGl2LnF1ZXJ5U2VsZWN0b3JBbGwoICJhIyIgKyBleHBhbmRvICsgIisqIiApLmxlbmd0aCApIHsNCgkJCQlyYnVnZ3lRU0EucHVzaCgiLiMuK1srfl0iKTsNCgkJCX0NCgkJfSk7DQoNCgkJYXNzZXJ0KGZ1bmN0aW9uKCBkaXYgKSB7DQoJCQkvLyBTdXBwb3J0OiBXaW5kb3dzIDggTmF0aXZlIEFwcHMNCgkJCS8vIFRoZSB0eXBlIGFuZCBuYW1lIGF0dHJpYnV0ZXMgYXJlIHJlc3RyaWN0ZWQgZHVyaW5nIC5pbm5lckhUTUwgYXNzaWdubWVudA0KCQkJdmFyIGlucHV0ID0gZG9jLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7DQoJCQlpbnB1dC5zZXRBdHRyaWJ1dGUoICJ0eXBlIiwgImhpZGRlbiIgKTsNCgkJCWRpdi5hcHBlbmRDaGlsZCggaW5wdXQgKS5zZXRBdHRyaWJ1dGUoICJuYW1lIiwgIkQiICk7DQoNCgkJCS8vIFN1cHBvcnQ6IElFOA0KCQkJLy8gRW5mb3JjZSBjYXNlLXNlbnNpdGl2aXR5IG9mIG5hbWUgYXR0cmlidXRlDQoJCQlpZiAoIGRpdi5xdWVyeVNlbGVjdG9yQWxsKCJbbmFtZT1kXSIpLmxlbmd0aCApIHsNCgkJCQlyYnVnZ3lRU0EucHVzaCggIm5hbWUiICsgd2hpdGVzcGFjZSArICIqWypeJHwhfl0/PSIgKTsNCgkJCX0NCg0KCQkJLy8gRkYgMy41IC0gOmVuYWJsZWQvOmRpc2FibGVkIGFuZCBoaWRkZW4gZWxlbWVudHMgKGhpZGRlbiBlbGVtZW50cyBhcmUgc3RpbGwgZW5hYmxlZCkNCgkJCS8vIElFOCB0aHJvd3MgZXJyb3IgaGVyZSBhbmQgd2lsbCBub3Qgc2VlIGxhdGVyIHRlc3RzDQoJCQlpZiAoICFkaXYucXVlcnlTZWxlY3RvckFsbCgiOmVuYWJsZWQiKS5sZW5ndGggKSB7DQoJCQkJcmJ1Z2d5UVNBLnB1c2goICI6ZW5hYmxlZCIsICI6ZGlzYWJsZWQiICk7DQoJCQl9DQoNCgkJCS8vIE9wZXJhIDEwLTExIGRvZXMgbm90IHRocm93IG9uIHBvc3QtY29tbWEgaW52YWxpZCBwc2V1ZG9zDQoJCQlkaXYucXVlcnlTZWxlY3RvckFsbCgiKiw6eCIpOw0KCQkJcmJ1Z2d5UVNBLnB1c2goIiwuKjoiKTsNCgkJfSk7DQoJfQ0KDQoJaWYgKCAoc3VwcG9ydC5tYXRjaGVzU2VsZWN0b3IgPSBybmF0aXZlLnRlc3QoIChtYXRjaGVzID0gZG9jRWxlbS5tYXRjaGVzIHx8DQoJCWRvY0VsZW0ud2Via2l0TWF0Y2hlc1NlbGVjdG9yIHx8DQoJCWRvY0VsZW0ubW96TWF0Y2hlc1NlbGVjdG9yIHx8DQoJCWRvY0VsZW0ub01hdGNoZXNTZWxlY3RvciB8fA0KCQlkb2NFbGVtLm1zTWF0Y2hlc1NlbGVjdG9yKSApKSApIHsNCg0KCQlhc3NlcnQoZnVuY3Rpb24oIGRpdiApIHsNCgkJCS8vIENoZWNrIHRvIHNlZSBpZiBpdCdzIHBvc3NpYmxlIHRvIGRvIG1hdGNoZXNTZWxlY3Rvcg0KCQkJLy8gb24gYSBkaXNjb25uZWN0ZWQgbm9kZSAoSUUgOSkNCgkJCXN1cHBvcnQuZGlzY29ubmVjdGVkTWF0Y2ggPSBtYXRjaGVzLmNhbGwoIGRpdiwgImRpdiIgKTsNCg0KCQkJLy8gVGhpcyBzaG91bGQgZmFpbCB3aXRoIGFuIGV4Y2VwdGlvbg0KCQkJLy8gR2Vja28gZG9lcyBub3QgZXJyb3IsIHJldHVybnMgZmFsc2UgaW5zdGVhZA0KCQkJbWF0Y2hlcy5jYWxsKCBkaXYsICJbcyE9JyddOngiICk7DQoJCQlyYnVnZ3lNYXRjaGVzLnB1c2goICIhPSIsIHBzZXVkb3MgKTsNCgkJfSk7DQoJfQ0KDQoJcmJ1Z2d5UVNBID0gcmJ1Z2d5UVNBLmxlbmd0aCAmJiBuZXcgUmVnRXhwKCByYnVnZ3lRU0Euam9pbigifCIpICk7DQoJcmJ1Z2d5TWF0Y2hlcyA9IHJidWdneU1hdGNoZXMubGVuZ3RoICYmIG5ldyBSZWdFeHAoIHJidWdneU1hdGNoZXMuam9pbigifCIpICk7DQoNCgkvKiBDb250YWlucw0KCS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCgloYXNDb21wYXJlID0gcm5hdGl2ZS50ZXN0KCBkb2NFbGVtLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uICk7DQoNCgkvLyBFbGVtZW50IGNvbnRhaW5zIGFub3RoZXINCgkvLyBQdXJwb3NlZnVsbHkgZG9lcyBub3QgaW1wbGVtZW50IGluY2x1c2l2ZSBkZXNjZW5kZW50DQoJLy8gQXMgaW4sIGFuIGVsZW1lbnQgZG9lcyBub3QgY29udGFpbiBpdHNlbGYNCgljb250YWlucyA9IGhhc0NvbXBhcmUgfHwgcm5hdGl2ZS50ZXN0KCBkb2NFbGVtLmNvbnRhaW5zICkgPw0KCQlmdW5jdGlvbiggYSwgYiApIHsNCgkJCXZhciBhZG93biA9IGEubm9kZVR5cGUgPT09IDkgPyBhLmRvY3VtZW50RWxlbWVudCA6IGEsDQoJCQkJYnVwID0gYiAmJiBiLnBhcmVudE5vZGU7DQoJCQlyZXR1cm4gYSA9PT0gYnVwIHx8ICEhKCBidXAgJiYgYnVwLm5vZGVUeXBlID09PSAxICYmICgNCgkJCQlhZG93bi5jb250YWlucyA/DQoJCQkJCWFkb3duLmNvbnRhaW5zKCBidXAgKSA6DQoJCQkJCWEuY29tcGFyZURvY3VtZW50UG9zaXRpb24gJiYgYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiggYnVwICkgJiAxNg0KCQkJKSk7DQoJCX0gOg0KCQlmdW5jdGlvbiggYSwgYiApIHsNCgkJCWlmICggYiApIHsNCgkJCQl3aGlsZSAoIChiID0gYi5wYXJlbnROb2RlKSApIHsNCgkJCQkJaWYgKCBiID09PSBhICkgew0KCQkJCQkJcmV0dXJuIHRydWU7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCQlyZXR1cm4gZmFsc2U7DQoJCX07DQoNCgkvKiBTb3J0aW5nDQoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KDQoJLy8gRG9jdW1lbnQgb3JkZXIgc29ydGluZw0KCXNvcnRPcmRlciA9IGhhc0NvbXBhcmUgPw0KCWZ1bmN0aW9uKCBhLCBiICkgew0KDQoJCS8vIEZsYWcgZm9yIGR1cGxpY2F0ZSByZW1vdmFsDQoJCWlmICggYSA9PT0gYiApIHsNCgkJCWhhc0R1cGxpY2F0ZSA9IHRydWU7DQoJCQlyZXR1cm4gMDsNCgkJfQ0KDQoJCS8vIFNvcnQgb24gbWV0aG9kIGV4aXN0ZW5jZSBpZiBvbmx5IG9uZSBpbnB1dCBoYXMgY29tcGFyZURvY3VtZW50UG9zaXRpb24NCgkJdmFyIGNvbXBhcmUgPSAhYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiAtICFiLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uOw0KCQlpZiAoIGNvbXBhcmUgKSB7DQoJCQlyZXR1cm4gY29tcGFyZTsNCgkJfQ0KDQoJCS8vIENhbGN1bGF0ZSBwb3NpdGlvbiBpZiBib3RoIGlucHV0cyBiZWxvbmcgdG8gdGhlIHNhbWUgZG9jdW1lbnQNCgkJY29tcGFyZSA9ICggYS5vd25lckRvY3VtZW50IHx8IGEgKSA9PT0gKCBiLm93bmVyRG9jdW1lbnQgfHwgYiApID8NCgkJCWEuY29tcGFyZURvY3VtZW50UG9zaXRpb24oIGIgKSA6DQoNCgkJCS8vIE90aGVyd2lzZSB3ZSBrbm93IHRoZXkgYXJlIGRpc2Nvbm5lY3RlZA0KCQkJMTsNCg0KCQkvLyBEaXNjb25uZWN0ZWQgbm9kZXMNCgkJaWYgKCBjb21wYXJlICYgMSB8fA0KCQkJKCFzdXBwb3J0LnNvcnREZXRhY2hlZCAmJiBiLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKCBhICkgPT09IGNvbXBhcmUpICkgew0KDQoJCQkvLyBDaG9vc2UgdGhlIGZpcnN0IGVsZW1lbnQgdGhhdCBpcyByZWxhdGVkIHRvIG91ciBwcmVmZXJyZWQgZG9jdW1lbnQNCgkJCWlmICggYSA9PT0gZG9jIHx8IGEub3duZXJEb2N1bWVudCA9PT0gcHJlZmVycmVkRG9jICYmIGNvbnRhaW5zKHByZWZlcnJlZERvYywgYSkgKSB7DQoJCQkJcmV0dXJuIC0xOw0KCQkJfQ0KCQkJaWYgKCBiID09PSBkb2MgfHwgYi5vd25lckRvY3VtZW50ID09PSBwcmVmZXJyZWREb2MgJiYgY29udGFpbnMocHJlZmVycmVkRG9jLCBiKSApIHsNCgkJCQlyZXR1cm4gMTsNCgkJCX0NCg0KCQkJLy8gTWFpbnRhaW4gb3JpZ2luYWwgb3JkZXINCgkJCXJldHVybiBzb3J0SW5wdXQgPw0KCQkJCSggaW5kZXhPZiggc29ydElucHV0LCBhICkgLSBpbmRleE9mKCBzb3J0SW5wdXQsIGIgKSApIDoNCgkJCQkwOw0KCQl9DQoNCgkJcmV0dXJuIGNvbXBhcmUgJiA0ID8gLTEgOiAxOw0KCX0gOg0KCWZ1bmN0aW9uKCBhLCBiICkgew0KCQkvLyBFeGl0IGVhcmx5IGlmIHRoZSBub2RlcyBhcmUgaWRlbnRpY2FsDQoJCWlmICggYSA9PT0gYiApIHsNCgkJCWhhc0R1cGxpY2F0ZSA9IHRydWU7DQoJCQlyZXR1cm4gMDsNCgkJfQ0KDQoJCXZhciBjdXIsDQoJCQlpID0gMCwNCgkJCWF1cCA9IGEucGFyZW50Tm9kZSwNCgkJCWJ1cCA9IGIucGFyZW50Tm9kZSwNCgkJCWFwID0gWyBhIF0sDQoJCQlicCA9IFsgYiBdOw0KDQoJCS8vIFBhcmVudGxlc3Mgbm9kZXMgYXJlIGVpdGhlciBkb2N1bWVudHMgb3IgZGlzY29ubmVjdGVkDQoJCWlmICggIWF1cCB8fCAhYnVwICkgew0KCQkJcmV0dXJuIGEgPT09IGRvYyA/IC0xIDoNCgkJCQliID09PSBkb2MgPyAxIDoNCgkJCQlhdXAgPyAtMSA6DQoJCQkJYnVwID8gMSA6DQoJCQkJc29ydElucHV0ID8NCgkJCQkoIGluZGV4T2YoIHNvcnRJbnB1dCwgYSApIC0gaW5kZXhPZiggc29ydElucHV0LCBiICkgKSA6DQoJCQkJMDsNCg0KCQkvLyBJZiB0aGUgbm9kZXMgYXJlIHNpYmxpbmdzLCB3ZSBjYW4gZG8gYSBxdWljayBjaGVjaw0KCQl9IGVsc2UgaWYgKCBhdXAgPT09IGJ1cCApIHsNCgkJCXJldHVybiBzaWJsaW5nQ2hlY2soIGEsIGIgKTsNCgkJfQ0KDQoJCS8vIE90aGVyd2lzZSB3ZSBuZWVkIGZ1bGwgbGlzdHMgb2YgdGhlaXIgYW5jZXN0b3JzIGZvciBjb21wYXJpc29uDQoJCWN1ciA9IGE7DQoJCXdoaWxlICggKGN1ciA9IGN1ci5wYXJlbnROb2RlKSApIHsNCgkJCWFwLnVuc2hpZnQoIGN1ciApOw0KCQl9DQoJCWN1ciA9IGI7DQoJCXdoaWxlICggKGN1ciA9IGN1ci5wYXJlbnROb2RlKSApIHsNCgkJCWJwLnVuc2hpZnQoIGN1ciApOw0KCQl9DQoNCgkJLy8gV2FsayBkb3duIHRoZSB0cmVlIGxvb2tpbmcgZm9yIGEgZGlzY3JlcGFuY3kNCgkJd2hpbGUgKCBhcFtpXSA9PT0gYnBbaV0gKSB7DQoJCQlpKys7DQoJCX0NCg0KCQlyZXR1cm4gaSA/DQoJCQkvLyBEbyBhIHNpYmxpbmcgY2hlY2sgaWYgdGhlIG5vZGVzIGhhdmUgYSBjb21tb24gYW5jZXN0b3INCgkJCXNpYmxpbmdDaGVjayggYXBbaV0sIGJwW2ldICkgOg0KDQoJCQkvLyBPdGhlcndpc2Ugbm9kZXMgaW4gb3VyIGRvY3VtZW50IHNvcnQgZmlyc3QNCgkJCWFwW2ldID09PSBwcmVmZXJyZWREb2MgPyAtMSA6DQoJCQlicFtpXSA9PT0gcHJlZmVycmVkRG9jID8gMSA6DQoJCQkwOw0KCX07DQoNCglyZXR1cm4gZG9jOw0KfTsNCg0KU2l6emxlLm1hdGNoZXMgPSBmdW5jdGlvbiggZXhwciwgZWxlbWVudHMgKSB7DQoJcmV0dXJuIFNpenpsZSggZXhwciwgbnVsbCwgbnVsbCwgZWxlbWVudHMgKTsNCn07DQoNClNpenpsZS5tYXRjaGVzU2VsZWN0b3IgPSBmdW5jdGlvbiggZWxlbSwgZXhwciApIHsNCgkvLyBTZXQgZG9jdW1lbnQgdmFycyBpZiBuZWVkZWQNCglpZiAoICggZWxlbS5vd25lckRvY3VtZW50IHx8IGVsZW0gKSAhPT0gZG9jdW1lbnQgKSB7DQoJCXNldERvY3VtZW50KCBlbGVtICk7DQoJfQ0KDQoJLy8gTWFrZSBzdXJlIHRoYXQgYXR0cmlidXRlIHNlbGVjdG9ycyBhcmUgcXVvdGVkDQoJZXhwciA9IGV4cHIucmVwbGFjZSggcmF0dHJpYnV0ZVF1b3RlcywgIj0nJDEnXSIgKTsNCg0KCWlmICggc3VwcG9ydC5tYXRjaGVzU2VsZWN0b3IgJiYgZG9jdW1lbnRJc0hUTUwgJiYNCgkJKCAhcmJ1Z2d5TWF0Y2hlcyB8fCAhcmJ1Z2d5TWF0Y2hlcy50ZXN0KCBleHByICkgKSAmJg0KCQkoICFyYnVnZ3lRU0EgICAgIHx8ICFyYnVnZ3lRU0EudGVzdCggZXhwciApICkgKSB7DQoNCgkJdHJ5IHsNCgkJCXZhciByZXQgPSBtYXRjaGVzLmNhbGwoIGVsZW0sIGV4cHIgKTsNCg0KCQkJLy8gSUUgOSdzIG1hdGNoZXNTZWxlY3RvciByZXR1cm5zIGZhbHNlIG9uIGRpc2Nvbm5lY3RlZCBub2Rlcw0KCQkJaWYgKCByZXQgfHwgc3VwcG9ydC5kaXNjb25uZWN0ZWRNYXRjaCB8fA0KCQkJCQkvLyBBcyB3ZWxsLCBkaXNjb25uZWN0ZWQgbm9kZXMgYXJlIHNhaWQgdG8gYmUgaW4gYSBkb2N1bWVudA0KCQkJCQkvLyBmcmFnbWVudCBpbiBJRSA5DQoJCQkJCWVsZW0uZG9jdW1lbnQgJiYgZWxlbS5kb2N1bWVudC5ub2RlVHlwZSAhPT0gMTEgKSB7DQoJCQkJcmV0dXJuIHJldDsNCgkJCX0NCgkJfSBjYXRjaCAoZSkge30NCgl9DQoNCglyZXR1cm4gU2l6emxlKCBleHByLCBkb2N1bWVudCwgbnVsbCwgWyBlbGVtIF0gKS5sZW5ndGggPiAwOw0KfTsNCg0KU2l6emxlLmNvbnRhaW5zID0gZnVuY3Rpb24oIGNvbnRleHQsIGVsZW0gKSB7DQoJLy8gU2V0IGRvY3VtZW50IHZhcnMgaWYgbmVlZGVkDQoJaWYgKCAoIGNvbnRleHQub3duZXJEb2N1bWVudCB8fCBjb250ZXh0ICkgIT09IGRvY3VtZW50ICkgew0KCQlzZXREb2N1bWVudCggY29udGV4dCApOw0KCX0NCglyZXR1cm4gY29udGFpbnMoIGNvbnRleHQsIGVsZW0gKTsNCn07DQoNClNpenpsZS5hdHRyID0gZnVuY3Rpb24oIGVsZW0sIG5hbWUgKSB7DQoJLy8gU2V0IGRvY3VtZW50IHZhcnMgaWYgbmVlZGVkDQoJaWYgKCAoIGVsZW0ub3duZXJEb2N1bWVudCB8fCBlbGVtICkgIT09IGRvY3VtZW50ICkgew0KCQlzZXREb2N1bWVudCggZWxlbSApOw0KCX0NCg0KCXZhciBmbiA9IEV4cHIuYXR0ckhhbmRsZVsgbmFtZS50b0xvd2VyQ2FzZSgpIF0sDQoJCS8vIERvbid0IGdldCBmb29sZWQgYnkgT2JqZWN0LnByb3RvdHlwZSBwcm9wZXJ0aWVzIChqUXVlcnkgIzEzODA3KQ0KCQl2YWwgPSBmbiAmJiBoYXNPd24uY2FsbCggRXhwci5hdHRySGFuZGxlLCBuYW1lLnRvTG93ZXJDYXNlKCkgKSA/DQoJCQlmbiggZWxlbSwgbmFtZSwgIWRvY3VtZW50SXNIVE1MICkgOg0KCQkJdW5kZWZpbmVkOw0KDQoJcmV0dXJuIHZhbCAhPT0gdW5kZWZpbmVkID8NCgkJdmFsIDoNCgkJc3VwcG9ydC5hdHRyaWJ1dGVzIHx8ICFkb2N1bWVudElzSFRNTCA/DQoJCQllbGVtLmdldEF0dHJpYnV0ZSggbmFtZSApIDoNCgkJCSh2YWwgPSBlbGVtLmdldEF0dHJpYnV0ZU5vZGUobmFtZSkpICYmIHZhbC5zcGVjaWZpZWQgPw0KCQkJCXZhbC52YWx1ZSA6DQoJCQkJbnVsbDsNCn07DQoNClNpenpsZS5lcnJvciA9IGZ1bmN0aW9uKCBtc2cgKSB7DQoJdGhyb3cgbmV3IEVycm9yKCAiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIiArIG1zZyApOw0KfTsNCg0KLyoqDQogKiBEb2N1bWVudCBzb3J0aW5nIGFuZCByZW1vdmluZyBkdXBsaWNhdGVzDQogKiBAcGFyYW0ge0FycmF5TGlrZX0gcmVzdWx0cw0KICovDQpTaXp6bGUudW5pcXVlU29ydCA9IGZ1bmN0aW9uKCByZXN1bHRzICkgew0KCXZhciBlbGVtLA0KCQlkdXBsaWNhdGVzID0gW10sDQoJCWogPSAwLA0KCQlpID0gMDsNCg0KCS8vIFVubGVzcyB3ZSAqa25vdyogd2UgY2FuIGRldGVjdCBkdXBsaWNhdGVzLCBhc3N1bWUgdGhlaXIgcHJlc2VuY2UNCgloYXNEdXBsaWNhdGUgPSAhc3VwcG9ydC5kZXRlY3REdXBsaWNhdGVzOw0KCXNvcnRJbnB1dCA9ICFzdXBwb3J0LnNvcnRTdGFibGUgJiYgcmVzdWx0cy5zbGljZSggMCApOw0KCXJlc3VsdHMuc29ydCggc29ydE9yZGVyICk7DQoNCglpZiAoIGhhc0R1cGxpY2F0ZSApIHsNCgkJd2hpbGUgKCAoZWxlbSA9IHJlc3VsdHNbaSsrXSkgKSB7DQoJCQlpZiAoIGVsZW0gPT09IHJlc3VsdHNbIGkgXSApIHsNCgkJCQlqID0gZHVwbGljYXRlcy5wdXNoKCBpICk7DQoJCQl9DQoJCX0NCgkJd2hpbGUgKCBqLS0gKSB7DQoJCQlyZXN1bHRzLnNwbGljZSggZHVwbGljYXRlc1sgaiBdLCAxICk7DQoJCX0NCgl9DQoNCgkvLyBDbGVhciBpbnB1dCBhZnRlciBzb3J0aW5nIHRvIHJlbGVhc2Ugb2JqZWN0cw0KCS8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vanF1ZXJ5L3NpenpsZS9wdWxsLzIyNQ0KCXNvcnRJbnB1dCA9IG51bGw7DQoNCglyZXR1cm4gcmVzdWx0czsNCn07DQoNCi8qKg0KICogVXRpbGl0eSBmdW5jdGlvbiBmb3IgcmV0cmlldmluZyB0aGUgdGV4dCB2YWx1ZSBvZiBhbiBhcnJheSBvZiBET00gbm9kZXMNCiAqIEBwYXJhbSB7QXJyYXl8RWxlbWVudH0gZWxlbQ0KICovDQpnZXRUZXh0ID0gU2l6emxlLmdldFRleHQgPSBmdW5jdGlvbiggZWxlbSApIHsNCgl2YXIgbm9kZSwNCgkJcmV0ID0gIiIsDQoJCWkgPSAwLA0KCQlub2RlVHlwZSA9IGVsZW0ubm9kZVR5cGU7DQoNCglpZiAoICFub2RlVHlwZSApIHsNCgkJLy8gSWYgbm8gbm9kZVR5cGUsIHRoaXMgaXMgZXhwZWN0ZWQgdG8gYmUgYW4gYXJyYXkNCgkJd2hpbGUgKCAobm9kZSA9IGVsZW1baSsrXSkgKSB7DQoJCQkvLyBEbyBub3QgdHJhdmVyc2UgY29tbWVudCBub2Rlcw0KCQkJcmV0ICs9IGdldFRleHQoIG5vZGUgKTsNCgkJfQ0KCX0gZWxzZSBpZiAoIG5vZGVUeXBlID09PSAxIHx8IG5vZGVUeXBlID09PSA5IHx8IG5vZGVUeXBlID09PSAxMSApIHsNCgkJLy8gVXNlIHRleHRDb250ZW50IGZvciBlbGVtZW50cw0KCQkvLyBpbm5lclRleHQgdXNhZ2UgcmVtb3ZlZCBmb3IgY29uc2lzdGVuY3kgb2YgbmV3IGxpbmVzIChqUXVlcnkgIzExMTUzKQ0KCQlpZiAoIHR5cGVvZiBlbGVtLnRleHRDb250ZW50ID09PSAic3RyaW5nIiApIHsNCgkJCXJldHVybiBlbGVtLnRleHRDb250ZW50Ow0KCQl9IGVsc2Ugew0KCQkJLy8gVHJhdmVyc2UgaXRzIGNoaWxkcmVuDQoJCQlmb3IgKCBlbGVtID0gZWxlbS5maXJzdENoaWxkOyBlbGVtOyBlbGVtID0gZWxlbS5uZXh0U2libGluZyApIHsNCgkJCQlyZXQgKz0gZ2V0VGV4dCggZWxlbSApOw0KCQkJfQ0KCQl9DQoJfSBlbHNlIGlmICggbm9kZVR5cGUgPT09IDMgfHwgbm9kZVR5cGUgPT09IDQgKSB7DQoJCXJldHVybiBlbGVtLm5vZGVWYWx1ZTsNCgl9DQoJLy8gRG8gbm90IGluY2x1ZGUgY29tbWVudCBvciBwcm9jZXNzaW5nIGluc3RydWN0aW9uIG5vZGVzDQoNCglyZXR1cm4gcmV0Ow0KfTsNCg0KRXhwciA9IFNpenpsZS5zZWxlY3RvcnMgPSB7DQoNCgkvLyBDYW4gYmUgYWRqdXN0ZWQgYnkgdGhlIHVzZXINCgljYWNoZUxlbmd0aDogNTAsDQoNCgljcmVhdGVQc2V1ZG86IG1hcmtGdW5jdGlvbiwNCg0KCW1hdGNoOiBtYXRjaEV4cHIsDQoNCglhdHRySGFuZGxlOiB7fSwNCg0KCWZpbmQ6IHt9LA0KDQoJcmVsYXRpdmU6IHsNCgkJIj4iOiB7IGRpcjogInBhcmVudE5vZGUiLCBmaXJzdDogdHJ1ZSB9LA0KCQkiICI6IHsgZGlyOiAicGFyZW50Tm9kZSIgfSwNCgkJIisiOiB7IGRpcjogInByZXZpb3VzU2libGluZyIsIGZpcnN0OiB0cnVlIH0sDQoJCSJ+IjogeyBkaXI6ICJwcmV2aW91c1NpYmxpbmciIH0NCgl9LA0KDQoJcHJlRmlsdGVyOiB7DQoJCSJBVFRSIjogZnVuY3Rpb24oIG1hdGNoICkgew0KCQkJbWF0Y2hbMV0gPSBtYXRjaFsxXS5yZXBsYWNlKCBydW5lc2NhcGUsIGZ1bmVzY2FwZSApOw0KDQoJCQkvLyBNb3ZlIHRoZSBnaXZlbiB2YWx1ZSB0byBtYXRjaFszXSB3aGV0aGVyIHF1b3RlZCBvciB1bnF1b3RlZA0KCQkJbWF0Y2hbM10gPSAoIG1hdGNoWzNdIHx8IG1hdGNoWzRdIHx8IG1hdGNoWzVdIHx8ICIiICkucmVwbGFjZSggcnVuZXNjYXBlLCBmdW5lc2NhcGUgKTsNCg0KCQkJaWYgKCBtYXRjaFsyXSA9PT0gIn49IiApIHsNCgkJCQltYXRjaFszXSA9ICIgIiArIG1hdGNoWzNdICsgIiAiOw0KCQkJfQ0KDQoJCQlyZXR1cm4gbWF0Y2guc2xpY2UoIDAsIDQgKTsNCgkJfSwNCg0KCQkiQ0hJTEQiOiBmdW5jdGlvbiggbWF0Y2ggKSB7DQoJCQkvKiBtYXRjaGVzIGZyb20gbWF0Y2hFeHByWyJDSElMRCJdDQoJCQkJMSB0eXBlIChvbmx5fG50aHwuLi4pDQoJCQkJMiB3aGF0IChjaGlsZHxvZi10eXBlKQ0KCQkJCTMgYXJndW1lbnQgKGV2ZW58b2RkfFxkKnxcZCpuKFsrLV1cZCspP3wuLi4pDQoJCQkJNCB4bi1jb21wb25lbnQgb2YgeG4reSBhcmd1bWVudCAoWystXT9cZCpufCkNCgkJCQk1IHNpZ24gb2YgeG4tY29tcG9uZW50DQoJCQkJNiB4IG9mIHhuLWNvbXBvbmVudA0KCQkJCTcgc2lnbiBvZiB5LWNvbXBvbmVudA0KCQkJCTggeSBvZiB5LWNvbXBvbmVudA0KCQkJKi8NCgkJCW1hdGNoWzFdID0gbWF0Y2hbMV0udG9Mb3dlckNhc2UoKTsNCg0KCQkJaWYgKCBtYXRjaFsxXS5zbGljZSggMCwgMyApID09PSAibnRoIiApIHsNCgkJCQkvLyBudGgtKiByZXF1aXJlcyBhcmd1bWVudA0KCQkJCWlmICggIW1hdGNoWzNdICkgew0KCQkJCQlTaXp6bGUuZXJyb3IoIG1hdGNoWzBdICk7DQoJCQkJfQ0KDQoJCQkJLy8gbnVtZXJpYyB4IGFuZCB5IHBhcmFtZXRlcnMgZm9yIEV4cHIuZmlsdGVyLkNISUxEDQoJCQkJLy8gcmVtZW1iZXIgdGhhdCBmYWxzZS90cnVlIGNhc3QgcmVzcGVjdGl2ZWx5IHRvIDAvMQ0KCQkJCW1hdGNoWzRdID0gKyggbWF0Y2hbNF0gPyBtYXRjaFs1XSArIChtYXRjaFs2XSB8fCAxKSA6IDIgKiAoIG1hdGNoWzNdID09PSAiZXZlbiIgfHwgbWF0Y2hbM10gPT09ICJvZGQiICkgKTsNCgkJCQltYXRjaFs1XSA9ICsoICggbWF0Y2hbN10gKyBtYXRjaFs4XSApIHx8IG1hdGNoWzNdID09PSAib2RkIiApOw0KDQoJCQkvLyBvdGhlciB0eXBlcyBwcm9oaWJpdCBhcmd1bWVudHMNCgkJCX0gZWxzZSBpZiAoIG1hdGNoWzNdICkgew0KCQkJCVNpenpsZS5lcnJvciggbWF0Y2hbMF0gKTsNCgkJCX0NCg0KCQkJcmV0dXJuIG1hdGNoOw0KCQl9LA0KDQoJCSJQU0VVRE8iOiBmdW5jdGlvbiggbWF0Y2ggKSB7DQoJCQl2YXIgZXhjZXNzLA0KCQkJCXVucXVvdGVkID0gIW1hdGNoWzZdICYmIG1hdGNoWzJdOw0KDQoJCQlpZiAoIG1hdGNoRXhwclsiQ0hJTEQiXS50ZXN0KCBtYXRjaFswXSApICkgew0KCQkJCXJldHVybiBudWxsOw0KCQkJfQ0KDQoJCQkvLyBBY2NlcHQgcXVvdGVkIGFyZ3VtZW50cyBhcy1pcw0KCQkJaWYgKCBtYXRjaFszXSApIHsNCgkJCQltYXRjaFsyXSA9IG1hdGNoWzRdIHx8IG1hdGNoWzVdIHx8ICIiOw0KDQoJCQkvLyBTdHJpcCBleGNlc3MgY2hhcmFjdGVycyBmcm9tIHVucXVvdGVkIGFyZ3VtZW50cw0KCQkJfSBlbHNlIGlmICggdW5xdW90ZWQgJiYgcnBzZXVkby50ZXN0KCB1bnF1b3RlZCApICYmDQoJCQkJLy8gR2V0IGV4Y2VzcyBmcm9tIHRva2VuaXplIChyZWN1cnNpdmVseSkNCgkJCQkoZXhjZXNzID0gdG9rZW5pemUoIHVucXVvdGVkLCB0cnVlICkpICYmDQoJCQkJLy8gYWR2YW5jZSB0byB0aGUgbmV4dCBjbG9zaW5nIHBhcmVudGhlc2lzDQoJCQkJKGV4Y2VzcyA9IHVucXVvdGVkLmluZGV4T2YoICIpIiwgdW5xdW90ZWQubGVuZ3RoIC0gZXhjZXNzICkgLSB1bnF1b3RlZC5sZW5ndGgpICkgew0KDQoJCQkJLy8gZXhjZXNzIGlzIGEgbmVnYXRpdmUgaW5kZXgNCgkJCQltYXRjaFswXSA9IG1hdGNoWzBdLnNsaWNlKCAwLCBleGNlc3MgKTsNCgkJCQltYXRjaFsyXSA9IHVucXVvdGVkLnNsaWNlKCAwLCBleGNlc3MgKTsNCgkJCX0NCg0KCQkJLy8gUmV0dXJuIG9ubHkgY2FwdHVyZXMgbmVlZGVkIGJ5IHRoZSBwc2V1ZG8gZmlsdGVyIG1ldGhvZCAodHlwZSBhbmQgYXJndW1lbnQpDQoJCQlyZXR1cm4gbWF0Y2guc2xpY2UoIDAsIDMgKTsNCgkJfQ0KCX0sDQoNCglmaWx0ZXI6IHsNCg0KCQkiVEFHIjogZnVuY3Rpb24oIG5vZGVOYW1lU2VsZWN0b3IgKSB7DQoJCQl2YXIgbm9kZU5hbWUgPSBub2RlTmFtZVNlbGVjdG9yLnJlcGxhY2UoIHJ1bmVzY2FwZSwgZnVuZXNjYXBlICkudG9Mb3dlckNhc2UoKTsNCgkJCXJldHVybiBub2RlTmFtZVNlbGVjdG9yID09PSAiKiIgPw0KCQkJCWZ1bmN0aW9uKCkgeyByZXR1cm4gdHJ1ZTsgfSA6DQoJCQkJZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQkJCXJldHVybiBlbGVtLm5vZGVOYW1lICYmIGVsZW0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PT0gbm9kZU5hbWU7DQoJCQkJfTsNCgkJfSwNCg0KCQkiQ0xBU1MiOiBmdW5jdGlvbiggY2xhc3NOYW1lICkgew0KCQkJdmFyIHBhdHRlcm4gPSBjbGFzc0NhY2hlWyBjbGFzc05hbWUgKyAiICIgXTsNCg0KCQkJcmV0dXJuIHBhdHRlcm4gfHwNCgkJCQkocGF0dGVybiA9IG5ldyBSZWdFeHAoICIoXnwiICsgd2hpdGVzcGFjZSArICIpIiArIGNsYXNzTmFtZSArICIoIiArIHdoaXRlc3BhY2UgKyAifCQpIiApKSAmJg0KCQkJCWNsYXNzQ2FjaGUoIGNsYXNzTmFtZSwgZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQkJCXJldHVybiBwYXR0ZXJuLnRlc3QoIHR5cGVvZiBlbGVtLmNsYXNzTmFtZSA9PT0gInN0cmluZyIgJiYgZWxlbS5jbGFzc05hbWUgfHwgdHlwZW9mIGVsZW0uZ2V0QXR0cmlidXRlICE9PSAidW5kZWZpbmVkIiAmJiBlbGVtLmdldEF0dHJpYnV0ZSgiY2xhc3MiKSB8fCAiIiApOw0KCQkJCX0pOw0KCQl9LA0KDQoJCSJBVFRSIjogZnVuY3Rpb24oIG5hbWUsIG9wZXJhdG9yLCBjaGVjayApIHsNCgkJCXJldHVybiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCQl2YXIgcmVzdWx0ID0gU2l6emxlLmF0dHIoIGVsZW0sIG5hbWUgKTsNCg0KCQkJCWlmICggcmVzdWx0ID09IG51bGwgKSB7DQoJCQkJCXJldHVybiBvcGVyYXRvciA9PT0gIiE9IjsNCgkJCQl9DQoJCQkJaWYgKCAhb3BlcmF0b3IgKSB7DQoJCQkJCXJldHVybiB0cnVlOw0KCQkJCX0NCg0KCQkJCXJlc3VsdCArPSAiIjsNCg0KCQkJCXJldHVybiBvcGVyYXRvciA9PT0gIj0iID8gcmVzdWx0ID09PSBjaGVjayA6DQoJCQkJCW9wZXJhdG9yID09PSAiIT0iID8gcmVzdWx0ICE9PSBjaGVjayA6DQoJCQkJCW9wZXJhdG9yID09PSAiXj0iID8gY2hlY2sgJiYgcmVzdWx0LmluZGV4T2YoIGNoZWNrICkgPT09IDAgOg0KCQkJCQlvcGVyYXRvciA9PT0gIio9IiA/IGNoZWNrICYmIHJlc3VsdC5pbmRleE9mKCBjaGVjayApID4gLTEgOg0KCQkJCQlvcGVyYXRvciA9PT0gIiQ9IiA/IGNoZWNrICYmIHJlc3VsdC5zbGljZSggLWNoZWNrLmxlbmd0aCApID09PSBjaGVjayA6DQoJCQkJCW9wZXJhdG9yID09PSAifj0iID8gKCAiICIgKyByZXN1bHQucmVwbGFjZSggcndoaXRlc3BhY2UsICIgIiApICsgIiAiICkuaW5kZXhPZiggY2hlY2sgKSA+IC0xIDoNCgkJCQkJb3BlcmF0b3IgPT09ICJ8PSIgPyByZXN1bHQgPT09IGNoZWNrIHx8IHJlc3VsdC5zbGljZSggMCwgY2hlY2subGVuZ3RoICsgMSApID09PSBjaGVjayArICItIiA6DQoJCQkJCWZhbHNlOw0KCQkJfTsNCgkJfSwNCg0KCQkiQ0hJTEQiOiBmdW5jdGlvbiggdHlwZSwgd2hhdCwgYXJndW1lbnQsIGZpcnN0LCBsYXN0ICkgew0KCQkJdmFyIHNpbXBsZSA9IHR5cGUuc2xpY2UoIDAsIDMgKSAhPT0gIm50aCIsDQoJCQkJZm9yd2FyZCA9IHR5cGUuc2xpY2UoIC00ICkgIT09ICJsYXN0IiwNCgkJCQlvZlR5cGUgPSB3aGF0ID09PSAib2YtdHlwZSI7DQoNCgkJCXJldHVybiBmaXJzdCA9PT0gMSAmJiBsYXN0ID09PSAwID8NCg0KCQkJCS8vIFNob3J0Y3V0IGZvciA6bnRoLSoobikNCgkJCQlmdW5jdGlvbiggZWxlbSApIHsNCgkJCQkJcmV0dXJuICEhZWxlbS5wYXJlbnROb2RlOw0KCQkJCX0gOg0KDQoJCQkJZnVuY3Rpb24oIGVsZW0sIGNvbnRleHQsIHhtbCApIHsNCgkJCQkJdmFyIGNhY2hlLCBvdXRlckNhY2hlLCBub2RlLCBkaWZmLCBub2RlSW5kZXgsIHN0YXJ0LA0KCQkJCQkJZGlyID0gc2ltcGxlICE9PSBmb3J3YXJkID8gIm5leHRTaWJsaW5nIiA6ICJwcmV2aW91c1NpYmxpbmciLA0KCQkJCQkJcGFyZW50ID0gZWxlbS5wYXJlbnROb2RlLA0KCQkJCQkJbmFtZSA9IG9mVHlwZSAmJiBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCksDQoJCQkJCQl1c2VDYWNoZSA9ICF4bWwgJiYgIW9mVHlwZTsNCg0KCQkJCQlpZiAoIHBhcmVudCApIHsNCg0KCQkJCQkJLy8gOihmaXJzdHxsYXN0fG9ubHkpLShjaGlsZHxvZi10eXBlKQ0KCQkJCQkJaWYgKCBzaW1wbGUgKSB7DQoJCQkJCQkJd2hpbGUgKCBkaXIgKSB7DQoJCQkJCQkJCW5vZGUgPSBlbGVtOw0KCQkJCQkJCQl3aGlsZSAoIChub2RlID0gbm9kZVsgZGlyIF0pICkgew0KCQkJCQkJCQkJaWYgKCBvZlR5cGUgPyBub2RlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgPT09IG5hbWUgOiBub2RlLm5vZGVUeXBlID09PSAxICkgew0KCQkJCQkJCQkJCXJldHVybiBmYWxzZTsNCgkJCQkJCQkJCX0NCgkJCQkJCQkJfQ0KCQkJCQkJCQkvLyBSZXZlcnNlIGRpcmVjdGlvbiBmb3IgOm9ubHktKiAoaWYgd2UgaGF2ZW4ndCB5ZXQgZG9uZSBzbykNCgkJCQkJCQkJc3RhcnQgPSBkaXIgPSB0eXBlID09PSAib25seSIgJiYgIXN0YXJ0ICYmICJuZXh0U2libGluZyI7DQoJCQkJCQkJfQ0KCQkJCQkJCXJldHVybiB0cnVlOw0KCQkJCQkJfQ0KDQoJCQkJCQlzdGFydCA9IFsgZm9yd2FyZCA/IHBhcmVudC5maXJzdENoaWxkIDogcGFyZW50Lmxhc3RDaGlsZCBdOw0KDQoJCQkJCQkvLyBub24teG1sIDpudGgtY2hpbGQoLi4uKSBzdG9yZXMgY2FjaGUgZGF0YSBvbiBgcGFyZW50YA0KCQkJCQkJaWYgKCBmb3J3YXJkICYmIHVzZUNhY2hlICkgew0KCQkJCQkJCS8vIFNlZWsgYGVsZW1gIGZyb20gYSBwcmV2aW91c2x5LWNhY2hlZCBpbmRleA0KCQkJCQkJCW91dGVyQ2FjaGUgPSBwYXJlbnRbIGV4cGFuZG8gXSB8fCAocGFyZW50WyBleHBhbmRvIF0gPSB7fSk7DQoJCQkJCQkJY2FjaGUgPSBvdXRlckNhY2hlWyB0eXBlIF0gfHwgW107DQoJCQkJCQkJbm9kZUluZGV4ID0gY2FjaGVbMF0gPT09IGRpcnJ1bnMgJiYgY2FjaGVbMV07DQoJCQkJCQkJZGlmZiA9IGNhY2hlWzBdID09PSBkaXJydW5zICYmIGNhY2hlWzJdOw0KCQkJCQkJCW5vZGUgPSBub2RlSW5kZXggJiYgcGFyZW50LmNoaWxkTm9kZXNbIG5vZGVJbmRleCBdOw0KDQoJCQkJCQkJd2hpbGUgKCAobm9kZSA9ICsrbm9kZUluZGV4ICYmIG5vZGUgJiYgbm9kZVsgZGlyIF0gfHwNCg0KCQkJCQkJCQkvLyBGYWxsYmFjayB0byBzZWVraW5nIGBlbGVtYCBmcm9tIHRoZSBzdGFydA0KCQkJCQkJCQkoZGlmZiA9IG5vZGVJbmRleCA9IDApIHx8IHN0YXJ0LnBvcCgpKSApIHsNCg0KCQkJCQkJCQkvLyBXaGVuIGZvdW5kLCBjYWNoZSBpbmRleGVzIG9uIGBwYXJlbnRgIGFuZCBicmVhaw0KCQkJCQkJCQlpZiAoIG5vZGUubm9kZVR5cGUgPT09IDEgJiYgKytkaWZmICYmIG5vZGUgPT09IGVsZW0gKSB7DQoJCQkJCQkJCQlvdXRlckNhY2hlWyB0eXBlIF0gPSBbIGRpcnJ1bnMsIG5vZGVJbmRleCwgZGlmZiBdOw0KCQkJCQkJCQkJYnJlYWs7DQoJCQkJCQkJCX0NCgkJCQkJCQl9DQoNCgkJCQkJCS8vIFVzZSBwcmV2aW91c2x5LWNhY2hlZCBlbGVtZW50IGluZGV4IGlmIGF2YWlsYWJsZQ0KCQkJCQkJfSBlbHNlIGlmICggdXNlQ2FjaGUgJiYgKGNhY2hlID0gKGVsZW1bIGV4cGFuZG8gXSB8fCAoZWxlbVsgZXhwYW5kbyBdID0ge30pKVsgdHlwZSBdKSAmJiBjYWNoZVswXSA9PT0gZGlycnVucyApIHsNCgkJCQkJCQlkaWZmID0gY2FjaGVbMV07DQoNCgkJCQkJCS8vIHhtbCA6bnRoLWNoaWxkKC4uLikgb3IgOm50aC1sYXN0LWNoaWxkKC4uLikgb3IgOm50aCgtbGFzdCk/LW9mLXR5cGUoLi4uKQ0KCQkJCQkJfSBlbHNlIHsNCg0KCQkJCQkJCS8vIFVzZSB0aGUgc2FtZSBsb29wIGFzIGFib3ZlIHRvIHNlZWsgYGVsZW1gIGZyb20gdGhlIHN0YXJ0DQoJCQkJCQkJd2hpbGUgKCAobm9kZSA9ICsrbm9kZUluZGV4ICYmIG5vZGUgJiYgbm9kZVsgZGlyIF0gfHwNCgkJCQkJCQkJKGRpZmYgPSBub2RlSW5kZXggPSAwKSB8fCBzdGFydC5wb3AoKSkgKSB7DQoNCgkJCQkJCQkJaWYgKCAoIG9mVHlwZSA/IG5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PT0gbmFtZSA6IG5vZGUubm9kZVR5cGUgPT09IDEgKSAmJiArK2RpZmYgKSB7DQoJCQkJCQkJCQkvLyBDYWNoZSB0aGUgaW5kZXggb2YgZWFjaCBlbmNvdW50ZXJlZCBlbGVtZW50DQoJCQkJCQkJCQlpZiAoIHVzZUNhY2hlICkgew0KCQkJCQkJCQkJCShub2RlWyBleHBhbmRvIF0gfHwgKG5vZGVbIGV4cGFuZG8gXSA9IHt9KSlbIHR5cGUgXSA9IFsgZGlycnVucywgZGlmZiBdOw0KCQkJCQkJCQkJfQ0KDQoJCQkJCQkJCQlpZiAoIG5vZGUgPT09IGVsZW0gKSB7DQoJCQkJCQkJCQkJYnJlYWs7DQoJCQkJCQkJCQl9DQoJCQkJCQkJCX0NCgkJCQkJCQl9DQoJCQkJCQl9DQoNCgkJCQkJCS8vIEluY29ycG9yYXRlIHRoZSBvZmZzZXQsIHRoZW4gY2hlY2sgYWdhaW5zdCBjeWNsZSBzaXplDQoJCQkJCQlkaWZmIC09IGxhc3Q7DQoJCQkJCQlyZXR1cm4gZGlmZiA9PT0gZmlyc3QgfHwgKCBkaWZmICUgZmlyc3QgPT09IDAgJiYgZGlmZiAvIGZpcnN0ID49IDAgKTsNCgkJCQkJfQ0KCQkJCX07DQoJCX0sDQoNCgkJIlBTRVVETyI6IGZ1bmN0aW9uKCBwc2V1ZG8sIGFyZ3VtZW50ICkgew0KCQkJLy8gcHNldWRvLWNsYXNzIG5hbWVzIGFyZSBjYXNlLWluc2Vuc2l0aXZlDQoJCQkvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9zZWxlY3RvcnMvI3BzZXVkby1jbGFzc2VzDQoJCQkvLyBQcmlvcml0aXplIGJ5IGNhc2Ugc2Vuc2l0aXZpdHkgaW4gY2FzZSBjdXN0b20gcHNldWRvcyBhcmUgYWRkZWQgd2l0aCB1cHBlcmNhc2UgbGV0dGVycw0KCQkJLy8gUmVtZW1iZXIgdGhhdCBzZXRGaWx0ZXJzIGluaGVyaXRzIGZyb20gcHNldWRvcw0KCQkJdmFyIGFyZ3MsDQoJCQkJZm4gPSBFeHByLnBzZXVkb3NbIHBzZXVkbyBdIHx8IEV4cHIuc2V0RmlsdGVyc1sgcHNldWRvLnRvTG93ZXJDYXNlKCkgXSB8fA0KCQkJCQlTaXp6bGUuZXJyb3IoICJ1bnN1cHBvcnRlZCBwc2V1ZG86ICIgKyBwc2V1ZG8gKTsNCg0KCQkJLy8gVGhlIHVzZXIgbWF5IHVzZSBjcmVhdGVQc2V1ZG8gdG8gaW5kaWNhdGUgdGhhdA0KCQkJLy8gYXJndW1lbnRzIGFyZSBuZWVkZWQgdG8gY3JlYXRlIHRoZSBmaWx0ZXIgZnVuY3Rpb24NCgkJCS8vIGp1c3QgYXMgU2l6emxlIGRvZXMNCgkJCWlmICggZm5bIGV4cGFuZG8gXSApIHsNCgkJCQlyZXR1cm4gZm4oIGFyZ3VtZW50ICk7DQoJCQl9DQoNCgkJCS8vIEJ1dCBtYWludGFpbiBzdXBwb3J0IGZvciBvbGQgc2lnbmF0dXJlcw0KCQkJaWYgKCBmbi5sZW5ndGggPiAxICkgew0KCQkJCWFyZ3MgPSBbIHBzZXVkbywgcHNldWRvLCAiIiwgYXJndW1lbnQgXTsNCgkJCQlyZXR1cm4gRXhwci5zZXRGaWx0ZXJzLmhhc093blByb3BlcnR5KCBwc2V1ZG8udG9Mb3dlckNhc2UoKSApID8NCgkJCQkJbWFya0Z1bmN0aW9uKGZ1bmN0aW9uKCBzZWVkLCBtYXRjaGVzICkgew0KCQkJCQkJdmFyIGlkeCwNCgkJCQkJCQltYXRjaGVkID0gZm4oIHNlZWQsIGFyZ3VtZW50ICksDQoJCQkJCQkJaSA9IG1hdGNoZWQubGVuZ3RoOw0KCQkJCQkJd2hpbGUgKCBpLS0gKSB7DQoJCQkJCQkJaWR4ID0gaW5kZXhPZiggc2VlZCwgbWF0Y2hlZFtpXSApOw0KCQkJCQkJCXNlZWRbIGlkeCBdID0gISggbWF0Y2hlc1sgaWR4IF0gPSBtYXRjaGVkW2ldICk7DQoJCQkJCQl9DQoJCQkJCX0pIDoNCgkJCQkJZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQkJCQlyZXR1cm4gZm4oIGVsZW0sIDAsIGFyZ3MgKTsNCgkJCQkJfTsNCgkJCX0NCg0KCQkJcmV0dXJuIGZuOw0KCQl9DQoJfSwNCg0KCXBzZXVkb3M6IHsNCgkJLy8gUG90ZW50aWFsbHkgY29tcGxleCBwc2V1ZG9zDQoJCSJub3QiOiBtYXJrRnVuY3Rpb24oZnVuY3Rpb24oIHNlbGVjdG9yICkgew0KCQkJLy8gVHJpbSB0aGUgc2VsZWN0b3IgcGFzc2VkIHRvIGNvbXBpbGUNCgkJCS8vIHRvIGF2b2lkIHRyZWF0aW5nIGxlYWRpbmcgYW5kIHRyYWlsaW5nDQoJCQkvLyBzcGFjZXMgYXMgY29tYmluYXRvcnMNCgkJCXZhciBpbnB1dCA9IFtdLA0KCQkJCXJlc3VsdHMgPSBbXSwNCgkJCQltYXRjaGVyID0gY29tcGlsZSggc2VsZWN0b3IucmVwbGFjZSggcnRyaW0sICIkMSIgKSApOw0KDQoJCQlyZXR1cm4gbWF0Y2hlclsgZXhwYW5kbyBdID8NCgkJCQltYXJrRnVuY3Rpb24oZnVuY3Rpb24oIHNlZWQsIG1hdGNoZXMsIGNvbnRleHQsIHhtbCApIHsNCgkJCQkJdmFyIGVsZW0sDQoJCQkJCQl1bm1hdGNoZWQgPSBtYXRjaGVyKCBzZWVkLCBudWxsLCB4bWwsIFtdICksDQoJCQkJCQlpID0gc2VlZC5sZW5ndGg7DQoNCgkJCQkJLy8gTWF0Y2ggZWxlbWVudHMgdW5tYXRjaGVkIGJ5IGBtYXRjaGVyYA0KCQkJCQl3aGlsZSAoIGktLSApIHsNCgkJCQkJCWlmICggKGVsZW0gPSB1bm1hdGNoZWRbaV0pICkgew0KCQkJCQkJCXNlZWRbaV0gPSAhKG1hdGNoZXNbaV0gPSBlbGVtKTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0pIDoNCgkJCQlmdW5jdGlvbiggZWxlbSwgY29udGV4dCwgeG1sICkgew0KCQkJCQlpbnB1dFswXSA9IGVsZW07DQoJCQkJCW1hdGNoZXIoIGlucHV0LCBudWxsLCB4bWwsIHJlc3VsdHMgKTsNCgkJCQkJLy8gRG9uJ3Qga2VlcCB0aGUgZWxlbWVudCAoaXNzdWUgIzI5OSkNCgkJCQkJaW5wdXRbMF0gPSBudWxsOw0KCQkJCQlyZXR1cm4gIXJlc3VsdHMucG9wKCk7DQoJCQkJfTsNCgkJfSksDQoNCgkJImhhcyI6IG1hcmtGdW5jdGlvbihmdW5jdGlvbiggc2VsZWN0b3IgKSB7DQoJCQlyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQkJcmV0dXJuIFNpenpsZSggc2VsZWN0b3IsIGVsZW0gKS5sZW5ndGggPiAwOw0KCQkJfTsNCgkJfSksDQoNCgkJImNvbnRhaW5zIjogbWFya0Z1bmN0aW9uKGZ1bmN0aW9uKCB0ZXh0ICkgew0KCQkJdGV4dCA9IHRleHQucmVwbGFjZSggcnVuZXNjYXBlLCBmdW5lc2NhcGUgKTsNCgkJCXJldHVybiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCQlyZXR1cm4gKCBlbGVtLnRleHRDb250ZW50IHx8IGVsZW0uaW5uZXJUZXh0IHx8IGdldFRleHQoIGVsZW0gKSApLmluZGV4T2YoIHRleHQgKSA+IC0xOw0KCQkJfTsNCgkJfSksDQoNCgkJLy8gIldoZXRoZXIgYW4gZWxlbWVudCBpcyByZXByZXNlbnRlZCBieSBhIDpsYW5nKCkgc2VsZWN0b3INCgkJLy8gaXMgYmFzZWQgc29sZWx5IG9uIHRoZSBlbGVtZW50J3MgbGFuZ3VhZ2UgdmFsdWUNCgkJLy8gYmVpbmcgZXF1YWwgdG8gdGhlIGlkZW50aWZpZXIgQywNCgkJLy8gb3IgYmVnaW5uaW5nIHdpdGggdGhlIGlkZW50aWZpZXIgQyBpbW1lZGlhdGVseSBmb2xsb3dlZCBieSAiLSIuDQoJCS8vIFRoZSBtYXRjaGluZyBvZiBDIGFnYWluc3QgdGhlIGVsZW1lbnQncyBsYW5ndWFnZSB2YWx1ZSBpcyBwZXJmb3JtZWQgY2FzZS1pbnNlbnNpdGl2ZWx5Lg0KCQkvLyBUaGUgaWRlbnRpZmllciBDIGRvZXMgbm90IGhhdmUgdG8gYmUgYSB2YWxpZCBsYW5ndWFnZSBuYW1lLiINCgkJLy8gaHR0cDovL3d3dy53My5vcmcvVFIvc2VsZWN0b3JzLyNsYW5nLXBzZXVkbw0KCQkibGFuZyI6IG1hcmtGdW5jdGlvbiggZnVuY3Rpb24oIGxhbmcgKSB7DQoJCQkvLyBsYW5nIHZhbHVlIG11c3QgYmUgYSB2YWxpZCBpZGVudGlmaWVyDQoJCQlpZiAoICFyaWRlbnRpZmllci50ZXN0KGxhbmcgfHwgIiIpICkgew0KCQkJCVNpenpsZS5lcnJvciggInVuc3VwcG9ydGVkIGxhbmc6ICIgKyBsYW5nICk7DQoJCQl9DQoJCQlsYW5nID0gbGFuZy5yZXBsYWNlKCBydW5lc2NhcGUsIGZ1bmVzY2FwZSApLnRvTG93ZXJDYXNlKCk7DQoJCQlyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQkJdmFyIGVsZW1MYW5nOw0KCQkJCWRvIHsNCgkJCQkJaWYgKCAoZWxlbUxhbmcgPSBkb2N1bWVudElzSFRNTCA/DQoJCQkJCQllbGVtLmxhbmcgOg0KCQkJCQkJZWxlbS5nZXRBdHRyaWJ1dGUoInhtbDpsYW5nIikgfHwgZWxlbS5nZXRBdHRyaWJ1dGUoImxhbmciKSkgKSB7DQoNCgkJCQkJCWVsZW1MYW5nID0gZWxlbUxhbmcudG9Mb3dlckNhc2UoKTsNCgkJCQkJCXJldHVybiBlbGVtTGFuZyA9PT0gbGFuZyB8fCBlbGVtTGFuZy5pbmRleE9mKCBsYW5nICsgIi0iICkgPT09IDA7DQoJCQkJCX0NCgkJCQl9IHdoaWxlICggKGVsZW0gPSBlbGVtLnBhcmVudE5vZGUpICYmIGVsZW0ubm9kZVR5cGUgPT09IDEgKTsNCgkJCQlyZXR1cm4gZmFsc2U7DQoJCQl9Ow0KCQl9KSwNCg0KCQkvLyBNaXNjZWxsYW5lb3VzDQoJCSJ0YXJnZXQiOiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCXZhciBoYXNoID0gd2luZG93LmxvY2F0aW9uICYmIHdpbmRvdy5sb2NhdGlvbi5oYXNoOw0KCQkJcmV0dXJuIGhhc2ggJiYgaGFzaC5zbGljZSggMSApID09PSBlbGVtLmlkOw0KCQl9LA0KDQoJCSJyb290IjogZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQlyZXR1cm4gZWxlbSA9PT0gZG9jRWxlbTsNCgkJfSwNCg0KCQkiZm9jdXMiOiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCXJldHVybiBlbGVtID09PSBkb2N1bWVudC5hY3RpdmVFbGVtZW50ICYmICghZG9jdW1lbnQuaGFzRm9jdXMgfHwgZG9jdW1lbnQuaGFzRm9jdXMoKSkgJiYgISEoZWxlbS50eXBlIHx8IGVsZW0uaHJlZiB8fCB+ZWxlbS50YWJJbmRleCk7DQoJCX0sDQoNCgkJLy8gQm9vbGVhbiBwcm9wZXJ0aWVzDQoJCSJlbmFibGVkIjogZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQlyZXR1cm4gZWxlbS5kaXNhYmxlZCA9PT0gZmFsc2U7DQoJCX0sDQoNCgkJImRpc2FibGVkIjogZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQlyZXR1cm4gZWxlbS5kaXNhYmxlZCA9PT0gdHJ1ZTsNCgkJfSwNCg0KCQkiY2hlY2tlZCI6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJLy8gSW4gQ1NTMywgOmNoZWNrZWQgc2hvdWxkIHJldHVybiBib3RoIGNoZWNrZWQgYW5kIHNlbGVjdGVkIGVsZW1lbnRzDQoJCQkvLyBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDExL1JFQy1jc3MzLXNlbGVjdG9ycy0yMDExMDkyOS8jY2hlY2tlZA0KCQkJdmFyIG5vZGVOYW1lID0gZWxlbS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOw0KCQkJcmV0dXJuIChub2RlTmFtZSA9PT0gImlucHV0IiAmJiAhIWVsZW0uY2hlY2tlZCkgfHwgKG5vZGVOYW1lID09PSAib3B0aW9uIiAmJiAhIWVsZW0uc2VsZWN0ZWQpOw0KCQl9LA0KDQoJCSJzZWxlY3RlZCI6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJLy8gQWNjZXNzaW5nIHRoaXMgcHJvcGVydHkgbWFrZXMgc2VsZWN0ZWQtYnktZGVmYXVsdA0KCQkJLy8gb3B0aW9ucyBpbiBTYWZhcmkgd29yayBwcm9wZXJseQ0KCQkJaWYgKCBlbGVtLnBhcmVudE5vZGUgKSB7DQoJCQkJZWxlbS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXg7DQoJCQl9DQoNCgkJCXJldHVybiBlbGVtLnNlbGVjdGVkID09PSB0cnVlOw0KCQl9LA0KDQoJCS8vIENvbnRlbnRzDQoJCSJlbXB0eSI6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJLy8gaHR0cDovL3d3dy53My5vcmcvVFIvc2VsZWN0b3JzLyNlbXB0eS1wc2V1ZG8NCgkJCS8vIDplbXB0eSBpcyBuZWdhdGVkIGJ5IGVsZW1lbnQgKDEpIG9yIGNvbnRlbnQgbm9kZXMgKHRleHQ6IDM7IGNkYXRhOiA0OyBlbnRpdHkgcmVmOiA1KSwNCgkJCS8vICAgYnV0IG5vdCBieSBvdGhlcnMgKGNvbW1lbnQ6IDg7IHByb2Nlc3NpbmcgaW5zdHJ1Y3Rpb246IDc7IGV0Yy4pDQoJCQkvLyBub2RlVHlwZSA8IDYgd29ya3MgYmVjYXVzZSBhdHRyaWJ1dGVzICgyKSBkbyBub3QgYXBwZWFyIGFzIGNoaWxkcmVuDQoJCQlmb3IgKCBlbGVtID0gZWxlbS5maXJzdENoaWxkOyBlbGVtOyBlbGVtID0gZWxlbS5uZXh0U2libGluZyApIHsNCgkJCQlpZiAoIGVsZW0ubm9kZVR5cGUgPCA2ICkgew0KCQkJCQlyZXR1cm4gZmFsc2U7DQoJCQkJfQ0KCQkJfQ0KCQkJcmV0dXJuIHRydWU7DQoJCX0sDQoNCgkJInBhcmVudCI6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJcmV0dXJuICFFeHByLnBzZXVkb3NbImVtcHR5Il0oIGVsZW0gKTsNCgkJfSwNCg0KCQkvLyBFbGVtZW50L2lucHV0IHR5cGVzDQoJCSJoZWFkZXIiOiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCXJldHVybiByaGVhZGVyLnRlc3QoIGVsZW0ubm9kZU5hbWUgKTsNCgkJfSwNCg0KCQkiaW5wdXQiOiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCXJldHVybiByaW5wdXRzLnRlc3QoIGVsZW0ubm9kZU5hbWUgKTsNCgkJfSwNCg0KCQkiYnV0dG9uIjogZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQl2YXIgbmFtZSA9IGVsZW0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsNCgkJCXJldHVybiBuYW1lID09PSAiaW5wdXQiICYmIGVsZW0udHlwZSA9PT0gImJ1dHRvbiIgfHwgbmFtZSA9PT0gImJ1dHRvbiI7DQoJCX0sDQoNCgkJInRleHQiOiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCXZhciBhdHRyOw0KCQkJcmV0dXJuIGVsZW0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PT0gImlucHV0IiAmJg0KCQkJCWVsZW0udHlwZSA9PT0gInRleHQiICYmDQoNCgkJCQkvLyBTdXBwb3J0OiBJRTw4DQoJCQkJLy8gTmV3IEhUTUw1IGF0dHJpYnV0ZSB2YWx1ZXMgKGUuZy4sICJzZWFyY2giKSBhcHBlYXIgd2l0aCBlbGVtLnR5cGUgPT09ICJ0ZXh0Ig0KCQkJCSggKGF0dHIgPSBlbGVtLmdldEF0dHJpYnV0ZSgidHlwZSIpKSA9PSBudWxsIHx8IGF0dHIudG9Mb3dlckNhc2UoKSA9PT0gInRleHQiICk7DQoJCX0sDQoNCgkJLy8gUG9zaXRpb24taW4tY29sbGVjdGlvbg0KCQkiZmlyc3QiOiBjcmVhdGVQb3NpdGlvbmFsUHNldWRvKGZ1bmN0aW9uKCkgew0KCQkJcmV0dXJuIFsgMCBdOw0KCQl9KSwNCg0KCQkibGFzdCI6IGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oZnVuY3Rpb24oIG1hdGNoSW5kZXhlcywgbGVuZ3RoICkgew0KCQkJcmV0dXJuIFsgbGVuZ3RoIC0gMSBdOw0KCQl9KSwNCg0KCQkiZXEiOiBjcmVhdGVQb3NpdGlvbmFsUHNldWRvKGZ1bmN0aW9uKCBtYXRjaEluZGV4ZXMsIGxlbmd0aCwgYXJndW1lbnQgKSB7DQoJCQlyZXR1cm4gWyBhcmd1bWVudCA8IDAgPyBhcmd1bWVudCArIGxlbmd0aCA6IGFyZ3VtZW50IF07DQoJCX0pLA0KDQoJCSJldmVuIjogY3JlYXRlUG9zaXRpb25hbFBzZXVkbyhmdW5jdGlvbiggbWF0Y2hJbmRleGVzLCBsZW5ndGggKSB7DQoJCQl2YXIgaSA9IDA7DQoJCQlmb3IgKCA7IGkgPCBsZW5ndGg7IGkgKz0gMiApIHsNCgkJCQltYXRjaEluZGV4ZXMucHVzaCggaSApOw0KCQkJfQ0KCQkJcmV0dXJuIG1hdGNoSW5kZXhlczsNCgkJfSksDQoNCgkJIm9kZCI6IGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oZnVuY3Rpb24oIG1hdGNoSW5kZXhlcywgbGVuZ3RoICkgew0KCQkJdmFyIGkgPSAxOw0KCQkJZm9yICggOyBpIDwgbGVuZ3RoOyBpICs9IDIgKSB7DQoJCQkJbWF0Y2hJbmRleGVzLnB1c2goIGkgKTsNCgkJCX0NCgkJCXJldHVybiBtYXRjaEluZGV4ZXM7DQoJCX0pLA0KDQoJCSJsdCI6IGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oZnVuY3Rpb24oIG1hdGNoSW5kZXhlcywgbGVuZ3RoLCBhcmd1bWVudCApIHsNCgkJCXZhciBpID0gYXJndW1lbnQgPCAwID8gYXJndW1lbnQgKyBsZW5ndGggOiBhcmd1bWVudDsNCgkJCWZvciAoIDsgLS1pID49IDA7ICkgew0KCQkJCW1hdGNoSW5kZXhlcy5wdXNoKCBpICk7DQoJCQl9DQoJCQlyZXR1cm4gbWF0Y2hJbmRleGVzOw0KCQl9KSwNCg0KCQkiZ3QiOiBjcmVhdGVQb3NpdGlvbmFsUHNldWRvKGZ1bmN0aW9uKCBtYXRjaEluZGV4ZXMsIGxlbmd0aCwgYXJndW1lbnQgKSB7DQoJCQl2YXIgaSA9IGFyZ3VtZW50IDwgMCA/IGFyZ3VtZW50ICsgbGVuZ3RoIDogYXJndW1lbnQ7DQoJCQlmb3IgKCA7ICsraSA8IGxlbmd0aDsgKSB7DQoJCQkJbWF0Y2hJbmRleGVzLnB1c2goIGkgKTsNCgkJCX0NCgkJCXJldHVybiBtYXRjaEluZGV4ZXM7DQoJCX0pDQoJfQ0KfTsNCg0KRXhwci5wc2V1ZG9zWyJudGgiXSA9IEV4cHIucHNldWRvc1siZXEiXTsNCg0KLy8gQWRkIGJ1dHRvbi9pbnB1dCB0eXBlIHBzZXVkb3MNCmZvciAoIGkgaW4geyByYWRpbzogdHJ1ZSwgY2hlY2tib3g6IHRydWUsIGZpbGU6IHRydWUsIHBhc3N3b3JkOiB0cnVlLCBpbWFnZTogdHJ1ZSB9ICkgew0KCUV4cHIucHNldWRvc1sgaSBdID0gY3JlYXRlSW5wdXRQc2V1ZG8oIGkgKTsNCn0NCmZvciAoIGkgaW4geyBzdWJtaXQ6IHRydWUsIHJlc2V0OiB0cnVlIH0gKSB7DQoJRXhwci5wc2V1ZG9zWyBpIF0gPSBjcmVhdGVCdXR0b25Qc2V1ZG8oIGkgKTsNCn0NCg0KLy8gRWFzeSBBUEkgZm9yIGNyZWF0aW5nIG5ldyBzZXRGaWx0ZXJzDQpmdW5jdGlvbiBzZXRGaWx0ZXJzKCkge30NCnNldEZpbHRlcnMucHJvdG90eXBlID0gRXhwci5maWx0ZXJzID0gRXhwci5wc2V1ZG9zOw0KRXhwci5zZXRGaWx0ZXJzID0gbmV3IHNldEZpbHRlcnMoKTsNCg0KdG9rZW5pemUgPSBTaXp6bGUudG9rZW5pemUgPSBmdW5jdGlvbiggc2VsZWN0b3IsIHBhcnNlT25seSApIHsNCgl2YXIgbWF0Y2hlZCwgbWF0Y2gsIHRva2VucywgdHlwZSwNCgkJc29GYXIsIGdyb3VwcywgcHJlRmlsdGVycywNCgkJY2FjaGVkID0gdG9rZW5DYWNoZVsgc2VsZWN0b3IgKyAiICIgXTsNCg0KCWlmICggY2FjaGVkICkgew0KCQlyZXR1cm4gcGFyc2VPbmx5ID8gMCA6IGNhY2hlZC5zbGljZSggMCApOw0KCX0NCg0KCXNvRmFyID0gc2VsZWN0b3I7DQoJZ3JvdXBzID0gW107DQoJcHJlRmlsdGVycyA9IEV4cHIucHJlRmlsdGVyOw0KDQoJd2hpbGUgKCBzb0ZhciApIHsNCg0KCQkvLyBDb21tYSBhbmQgZmlyc3QgcnVuDQoJCWlmICggIW1hdGNoZWQgfHwgKG1hdGNoID0gcmNvbW1hLmV4ZWMoIHNvRmFyICkpICkgew0KCQkJaWYgKCBtYXRjaCApIHsNCgkJCQkvLyBEb24ndCBjb25zdW1lIHRyYWlsaW5nIGNvbW1hcyBhcyB2YWxpZA0KCQkJCXNvRmFyID0gc29GYXIuc2xpY2UoIG1hdGNoWzBdLmxlbmd0aCApIHx8IHNvRmFyOw0KCQkJfQ0KCQkJZ3JvdXBzLnB1c2goICh0b2tlbnMgPSBbXSkgKTsNCgkJfQ0KDQoJCW1hdGNoZWQgPSBmYWxzZTsNCg0KCQkvLyBDb21iaW5hdG9ycw0KCQlpZiAoIChtYXRjaCA9IHJjb21iaW5hdG9ycy5leGVjKCBzb0ZhciApKSApIHsNCgkJCW1hdGNoZWQgPSBtYXRjaC5zaGlmdCgpOw0KCQkJdG9rZW5zLnB1c2goew0KCQkJCXZhbHVlOiBtYXRjaGVkLA0KCQkJCS8vIENhc3QgZGVzY2VuZGFudCBjb21iaW5hdG9ycyB0byBzcGFjZQ0KCQkJCXR5cGU6IG1hdGNoWzBdLnJlcGxhY2UoIHJ0cmltLCAiICIgKQ0KCQkJfSk7DQoJCQlzb0ZhciA9IHNvRmFyLnNsaWNlKCBtYXRjaGVkLmxlbmd0aCApOw0KCQl9DQoNCgkJLy8gRmlsdGVycw0KCQlmb3IgKCB0eXBlIGluIEV4cHIuZmlsdGVyICkgew0KCQkJaWYgKCAobWF0Y2ggPSBtYXRjaEV4cHJbIHR5cGUgXS5leGVjKCBzb0ZhciApKSAmJiAoIXByZUZpbHRlcnNbIHR5cGUgXSB8fA0KCQkJCShtYXRjaCA9IHByZUZpbHRlcnNbIHR5cGUgXSggbWF0Y2ggKSkpICkgew0KCQkJCW1hdGNoZWQgPSBtYXRjaC5zaGlmdCgpOw0KCQkJCXRva2Vucy5wdXNoKHsNCgkJCQkJdmFsdWU6IG1hdGNoZWQsDQoJCQkJCXR5cGU6IHR5cGUsDQoJCQkJCW1hdGNoZXM6IG1hdGNoDQoJCQkJfSk7DQoJCQkJc29GYXIgPSBzb0Zhci5zbGljZSggbWF0Y2hlZC5sZW5ndGggKTsNCgkJCX0NCgkJfQ0KDQoJCWlmICggIW1hdGNoZWQgKSB7DQoJCQlicmVhazsNCgkJfQ0KCX0NCg0KCS8vIFJldHVybiB0aGUgbGVuZ3RoIG9mIHRoZSBpbnZhbGlkIGV4Y2Vzcw0KCS8vIGlmIHdlJ3JlIGp1c3QgcGFyc2luZw0KCS8vIE90aGVyd2lzZSwgdGhyb3cgYW4gZXJyb3Igb3IgcmV0dXJuIHRva2Vucw0KCXJldHVybiBwYXJzZU9ubHkgPw0KCQlzb0Zhci5sZW5ndGggOg0KCQlzb0ZhciA/DQoJCQlTaXp6bGUuZXJyb3IoIHNlbGVjdG9yICkgOg0KCQkJLy8gQ2FjaGUgdGhlIHRva2Vucw0KCQkJdG9rZW5DYWNoZSggc2VsZWN0b3IsIGdyb3VwcyApLnNsaWNlKCAwICk7DQp9Ow0KDQpmdW5jdGlvbiB0b1NlbGVjdG9yKCB0b2tlbnMgKSB7DQoJdmFyIGkgPSAwLA0KCQlsZW4gPSB0b2tlbnMubGVuZ3RoLA0KCQlzZWxlY3RvciA9ICIiOw0KCWZvciAoIDsgaSA8IGxlbjsgaSsrICkgew0KCQlzZWxlY3RvciArPSB0b2tlbnNbaV0udmFsdWU7DQoJfQ0KCXJldHVybiBzZWxlY3RvcjsNCn0NCg0KZnVuY3Rpb24gYWRkQ29tYmluYXRvciggbWF0Y2hlciwgY29tYmluYXRvciwgYmFzZSApIHsNCgl2YXIgZGlyID0gY29tYmluYXRvci5kaXIsDQoJCWNoZWNrTm9uRWxlbWVudHMgPSBiYXNlICYmIGRpciA9PT0gInBhcmVudE5vZGUiLA0KCQlkb25lTmFtZSA9IGRvbmUrKzsNCg0KCXJldHVybiBjb21iaW5hdG9yLmZpcnN0ID8NCgkJLy8gQ2hlY2sgYWdhaW5zdCBjbG9zZXN0IGFuY2VzdG9yL3ByZWNlZGluZyBlbGVtZW50DQoJCWZ1bmN0aW9uKCBlbGVtLCBjb250ZXh0LCB4bWwgKSB7DQoJCQl3aGlsZSAoIChlbGVtID0gZWxlbVsgZGlyIF0pICkgew0KCQkJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMSB8fCBjaGVja05vbkVsZW1lbnRzICkgew0KCQkJCQlyZXR1cm4gbWF0Y2hlciggZWxlbSwgY29udGV4dCwgeG1sICk7DQoJCQkJfQ0KCQkJfQ0KCQl9IDoNCg0KCQkvLyBDaGVjayBhZ2FpbnN0IGFsbCBhbmNlc3Rvci9wcmVjZWRpbmcgZWxlbWVudHMNCgkJZnVuY3Rpb24oIGVsZW0sIGNvbnRleHQsIHhtbCApIHsNCgkJCXZhciBvbGRDYWNoZSwgb3V0ZXJDYWNoZSwNCgkJCQluZXdDYWNoZSA9IFsgZGlycnVucywgZG9uZU5hbWUgXTsNCg0KCQkJLy8gV2UgY2FuJ3Qgc2V0IGFyYml0cmFyeSBkYXRhIG9uIFhNTCBub2Rlcywgc28gdGhleSBkb24ndCBiZW5lZml0IGZyb20gZGlyIGNhY2hpbmcNCgkJCWlmICggeG1sICkgew0KCQkJCXdoaWxlICggKGVsZW0gPSBlbGVtWyBkaXIgXSkgKSB7DQoJCQkJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMSB8fCBjaGVja05vbkVsZW1lbnRzICkgew0KCQkJCQkJaWYgKCBtYXRjaGVyKCBlbGVtLCBjb250ZXh0LCB4bWwgKSApIHsNCgkJCQkJCQlyZXR1cm4gdHJ1ZTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0NCgkJCX0gZWxzZSB7DQoJCQkJd2hpbGUgKCAoZWxlbSA9IGVsZW1bIGRpciBdKSApIHsNCgkJCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxIHx8IGNoZWNrTm9uRWxlbWVudHMgKSB7DQoJCQkJCQlvdXRlckNhY2hlID0gZWxlbVsgZXhwYW5kbyBdIHx8IChlbGVtWyBleHBhbmRvIF0gPSB7fSk7DQoJCQkJCQlpZiAoIChvbGRDYWNoZSA9IG91dGVyQ2FjaGVbIGRpciBdKSAmJg0KCQkJCQkJCW9sZENhY2hlWyAwIF0gPT09IGRpcnJ1bnMgJiYgb2xkQ2FjaGVbIDEgXSA9PT0gZG9uZU5hbWUgKSB7DQoNCgkJCQkJCQkvLyBBc3NpZ24gdG8gbmV3Q2FjaGUgc28gcmVzdWx0cyBiYWNrLXByb3BhZ2F0ZSB0byBwcmV2aW91cyBlbGVtZW50cw0KCQkJCQkJCXJldHVybiAobmV3Q2FjaGVbIDIgXSA9IG9sZENhY2hlWyAyIF0pOw0KCQkJCQkJfSBlbHNlIHsNCgkJCQkJCQkvLyBSZXVzZSBuZXdjYWNoZSBzbyByZXN1bHRzIGJhY2stcHJvcGFnYXRlIHRvIHByZXZpb3VzIGVsZW1lbnRzDQoJCQkJCQkJb3V0ZXJDYWNoZVsgZGlyIF0gPSBuZXdDYWNoZTsNCg0KCQkJCQkJCS8vIEEgbWF0Y2ggbWVhbnMgd2UncmUgZG9uZTsgYSBmYWlsIG1lYW5zIHdlIGhhdmUgdG8ga2VlcCBjaGVja2luZw0KCQkJCQkJCWlmICggKG5ld0NhY2hlWyAyIF0gPSBtYXRjaGVyKCBlbGVtLCBjb250ZXh0LCB4bWwgKSkgKSB7DQoJCQkJCQkJCXJldHVybiB0cnVlOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfTsNCn0NCg0KZnVuY3Rpb24gZWxlbWVudE1hdGNoZXIoIG1hdGNoZXJzICkgew0KCXJldHVybiBtYXRjaGVycy5sZW5ndGggPiAxID8NCgkJZnVuY3Rpb24oIGVsZW0sIGNvbnRleHQsIHhtbCApIHsNCgkJCXZhciBpID0gbWF0Y2hlcnMubGVuZ3RoOw0KCQkJd2hpbGUgKCBpLS0gKSB7DQoJCQkJaWYgKCAhbWF0Y2hlcnNbaV0oIGVsZW0sIGNvbnRleHQsIHhtbCApICkgew0KCQkJCQlyZXR1cm4gZmFsc2U7DQoJCQkJfQ0KCQkJfQ0KCQkJcmV0dXJuIHRydWU7DQoJCX0gOg0KCQltYXRjaGVyc1swXTsNCn0NCg0KZnVuY3Rpb24gbXVsdGlwbGVDb250ZXh0cyggc2VsZWN0b3IsIGNvbnRleHRzLCByZXN1bHRzICkgew0KCXZhciBpID0gMCwNCgkJbGVuID0gY29udGV4dHMubGVuZ3RoOw0KCWZvciAoIDsgaSA8IGxlbjsgaSsrICkgew0KCQlTaXp6bGUoIHNlbGVjdG9yLCBjb250ZXh0c1tpXSwgcmVzdWx0cyApOw0KCX0NCglyZXR1cm4gcmVzdWx0czsNCn0NCg0KZnVuY3Rpb24gY29uZGVuc2UoIHVubWF0Y2hlZCwgbWFwLCBmaWx0ZXIsIGNvbnRleHQsIHhtbCApIHsNCgl2YXIgZWxlbSwNCgkJbmV3VW5tYXRjaGVkID0gW10sDQoJCWkgPSAwLA0KCQlsZW4gPSB1bm1hdGNoZWQubGVuZ3RoLA0KCQltYXBwZWQgPSBtYXAgIT0gbnVsbDsNCg0KCWZvciAoIDsgaSA8IGxlbjsgaSsrICkgew0KCQlpZiAoIChlbGVtID0gdW5tYXRjaGVkW2ldKSApIHsNCgkJCWlmICggIWZpbHRlciB8fCBmaWx0ZXIoIGVsZW0sIGNvbnRleHQsIHhtbCApICkgew0KCQkJCW5ld1VubWF0Y2hlZC5wdXNoKCBlbGVtICk7DQoJCQkJaWYgKCBtYXBwZWQgKSB7DQoJCQkJCW1hcC5wdXNoKCBpICk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJfQ0KDQoJcmV0dXJuIG5ld1VubWF0Y2hlZDsNCn0NCg0KZnVuY3Rpb24gc2V0TWF0Y2hlciggcHJlRmlsdGVyLCBzZWxlY3RvciwgbWF0Y2hlciwgcG9zdEZpbHRlciwgcG9zdEZpbmRlciwgcG9zdFNlbGVjdG9yICkgew0KCWlmICggcG9zdEZpbHRlciAmJiAhcG9zdEZpbHRlclsgZXhwYW5kbyBdICkgew0KCQlwb3N0RmlsdGVyID0gc2V0TWF0Y2hlciggcG9zdEZpbHRlciApOw0KCX0NCglpZiAoIHBvc3RGaW5kZXIgJiYgIXBvc3RGaW5kZXJbIGV4cGFuZG8gXSApIHsNCgkJcG9zdEZpbmRlciA9IHNldE1hdGNoZXIoIHBvc3RGaW5kZXIsIHBvc3RTZWxlY3RvciApOw0KCX0NCglyZXR1cm4gbWFya0Z1bmN0aW9uKGZ1bmN0aW9uKCBzZWVkLCByZXN1bHRzLCBjb250ZXh0LCB4bWwgKSB7DQoJCXZhciB0ZW1wLCBpLCBlbGVtLA0KCQkJcHJlTWFwID0gW10sDQoJCQlwb3N0TWFwID0gW10sDQoJCQlwcmVleGlzdGluZyA9IHJlc3VsdHMubGVuZ3RoLA0KDQoJCQkvLyBHZXQgaW5pdGlhbCBlbGVtZW50cyBmcm9tIHNlZWQgb3IgY29udGV4dA0KCQkJZWxlbXMgPSBzZWVkIHx8IG11bHRpcGxlQ29udGV4dHMoIHNlbGVjdG9yIHx8ICIqIiwgY29udGV4dC5ub2RlVHlwZSA/IFsgY29udGV4dCBdIDogY29udGV4dCwgW10gKSwNCg0KCQkJLy8gUHJlZmlsdGVyIHRvIGdldCBtYXRjaGVyIGlucHV0LCBwcmVzZXJ2aW5nIGEgbWFwIGZvciBzZWVkLXJlc3VsdHMgc3luY2hyb25pemF0aW9uDQoJCQltYXRjaGVySW4gPSBwcmVGaWx0ZXIgJiYgKCBzZWVkIHx8ICFzZWxlY3RvciApID8NCgkJCQljb25kZW5zZSggZWxlbXMsIHByZU1hcCwgcHJlRmlsdGVyLCBjb250ZXh0LCB4bWwgKSA6DQoJCQkJZWxlbXMsDQoNCgkJCW1hdGNoZXJPdXQgPSBtYXRjaGVyID8NCgkJCQkvLyBJZiB3ZSBoYXZlIGEgcG9zdEZpbmRlciwgb3IgZmlsdGVyZWQgc2VlZCwgb3Igbm9uLXNlZWQgcG9zdEZpbHRlciBvciBwcmVleGlzdGluZyByZXN1bHRzLA0KCQkJCXBvc3RGaW5kZXIgfHwgKCBzZWVkID8gcHJlRmlsdGVyIDogcHJlZXhpc3RpbmcgfHwgcG9zdEZpbHRlciApID8NCg0KCQkJCQkvLyAuLi5pbnRlcm1lZGlhdGUgcHJvY2Vzc2luZyBpcyBuZWNlc3NhcnkNCgkJCQkJW10gOg0KDQoJCQkJCS8vIC4uLm90aGVyd2lzZSB1c2UgcmVzdWx0cyBkaXJlY3RseQ0KCQkJCQlyZXN1bHRzIDoNCgkJCQltYXRjaGVySW47DQoNCgkJLy8gRmluZCBwcmltYXJ5IG1hdGNoZXMNCgkJaWYgKCBtYXRjaGVyICkgew0KCQkJbWF0Y2hlciggbWF0Y2hlckluLCBtYXRjaGVyT3V0LCBjb250ZXh0LCB4bWwgKTsNCgkJfQ0KDQoJCS8vIEFwcGx5IHBvc3RGaWx0ZXINCgkJaWYgKCBwb3N0RmlsdGVyICkgew0KCQkJdGVtcCA9IGNvbmRlbnNlKCBtYXRjaGVyT3V0LCBwb3N0TWFwICk7DQoJCQlwb3N0RmlsdGVyKCB0ZW1wLCBbXSwgY29udGV4dCwgeG1sICk7DQoNCgkJCS8vIFVuLW1hdGNoIGZhaWxpbmcgZWxlbWVudHMgYnkgbW92aW5nIHRoZW0gYmFjayB0byBtYXRjaGVySW4NCgkJCWkgPSB0ZW1wLmxlbmd0aDsNCgkJCXdoaWxlICggaS0tICkgew0KCQkJCWlmICggKGVsZW0gPSB0ZW1wW2ldKSApIHsNCgkJCQkJbWF0Y2hlck91dFsgcG9zdE1hcFtpXSBdID0gIShtYXRjaGVySW5bIHBvc3RNYXBbaV0gXSA9IGVsZW0pOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCWlmICggc2VlZCApIHsNCgkJCWlmICggcG9zdEZpbmRlciB8fCBwcmVGaWx0ZXIgKSB7DQoJCQkJaWYgKCBwb3N0RmluZGVyICkgew0KCQkJCQkvLyBHZXQgdGhlIGZpbmFsIG1hdGNoZXJPdXQgYnkgY29uZGVuc2luZyB0aGlzIGludGVybWVkaWF0ZSBpbnRvIHBvc3RGaW5kZXIgY29udGV4dHMNCgkJCQkJdGVtcCA9IFtdOw0KCQkJCQlpID0gbWF0Y2hlck91dC5sZW5ndGg7DQoJCQkJCXdoaWxlICggaS0tICkgew0KCQkJCQkJaWYgKCAoZWxlbSA9IG1hdGNoZXJPdXRbaV0pICkgew0KCQkJCQkJCS8vIFJlc3RvcmUgbWF0Y2hlckluIHNpbmNlIGVsZW0gaXMgbm90IHlldCBhIGZpbmFsIG1hdGNoDQoJCQkJCQkJdGVtcC5wdXNoKCAobWF0Y2hlckluW2ldID0gZWxlbSkgKTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCQlwb3N0RmluZGVyKCBudWxsLCAobWF0Y2hlck91dCA9IFtdKSwgdGVtcCwgeG1sICk7DQoJCQkJfQ0KDQoJCQkJLy8gTW92ZSBtYXRjaGVkIGVsZW1lbnRzIGZyb20gc2VlZCB0byByZXN1bHRzIHRvIGtlZXAgdGhlbSBzeW5jaHJvbml6ZWQNCgkJCQlpID0gbWF0Y2hlck91dC5sZW5ndGg7DQoJCQkJd2hpbGUgKCBpLS0gKSB7DQoJCQkJCWlmICggKGVsZW0gPSBtYXRjaGVyT3V0W2ldKSAmJg0KCQkJCQkJKHRlbXAgPSBwb3N0RmluZGVyID8gaW5kZXhPZiggc2VlZCwgZWxlbSApIDogcHJlTWFwW2ldKSA+IC0xICkgew0KDQoJCQkJCQlzZWVkW3RlbXBdID0gIShyZXN1bHRzW3RlbXBdID0gZWxlbSk7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoNCgkJLy8gQWRkIGVsZW1lbnRzIHRvIHJlc3VsdHMsIHRocm91Z2ggcG9zdEZpbmRlciBpZiBkZWZpbmVkDQoJCX0gZWxzZSB7DQoJCQltYXRjaGVyT3V0ID0gY29uZGVuc2UoDQoJCQkJbWF0Y2hlck91dCA9PT0gcmVzdWx0cyA/DQoJCQkJCW1hdGNoZXJPdXQuc3BsaWNlKCBwcmVleGlzdGluZywgbWF0Y2hlck91dC5sZW5ndGggKSA6DQoJCQkJCW1hdGNoZXJPdXQNCgkJCSk7DQoJCQlpZiAoIHBvc3RGaW5kZXIgKSB7DQoJCQkJcG9zdEZpbmRlciggbnVsbCwgcmVzdWx0cywgbWF0Y2hlck91dCwgeG1sICk7DQoJCQl9IGVsc2Ugew0KCQkJCXB1c2guYXBwbHkoIHJlc3VsdHMsIG1hdGNoZXJPdXQgKTsNCgkJCX0NCgkJfQ0KCX0pOw0KfQ0KDQpmdW5jdGlvbiBtYXRjaGVyRnJvbVRva2VucyggdG9rZW5zICkgew0KCXZhciBjaGVja0NvbnRleHQsIG1hdGNoZXIsIGosDQoJCWxlbiA9IHRva2Vucy5sZW5ndGgsDQoJCWxlYWRpbmdSZWxhdGl2ZSA9IEV4cHIucmVsYXRpdmVbIHRva2Vuc1swXS50eXBlIF0sDQoJCWltcGxpY2l0UmVsYXRpdmUgPSBsZWFkaW5nUmVsYXRpdmUgfHwgRXhwci5yZWxhdGl2ZVsiICJdLA0KCQlpID0gbGVhZGluZ1JlbGF0aXZlID8gMSA6IDAsDQoNCgkJLy8gVGhlIGZvdW5kYXRpb25hbCBtYXRjaGVyIGVuc3VyZXMgdGhhdCBlbGVtZW50cyBhcmUgcmVhY2hhYmxlIGZyb20gdG9wLWxldmVsIGNvbnRleHQocykNCgkJbWF0Y2hDb250ZXh0ID0gYWRkQ29tYmluYXRvciggZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQlyZXR1cm4gZWxlbSA9PT0gY2hlY2tDb250ZXh0Ow0KCQl9LCBpbXBsaWNpdFJlbGF0aXZlLCB0cnVlICksDQoJCW1hdGNoQW55Q29udGV4dCA9IGFkZENvbWJpbmF0b3IoIGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJcmV0dXJuIGluZGV4T2YoIGNoZWNrQ29udGV4dCwgZWxlbSApID4gLTE7DQoJCX0sIGltcGxpY2l0UmVsYXRpdmUsIHRydWUgKSwNCgkJbWF0Y2hlcnMgPSBbIGZ1bmN0aW9uKCBlbGVtLCBjb250ZXh0LCB4bWwgKSB7DQoJCQl2YXIgcmV0ID0gKCAhbGVhZGluZ1JlbGF0aXZlICYmICggeG1sIHx8IGNvbnRleHQgIT09IG91dGVybW9zdENvbnRleHQgKSApIHx8ICgNCgkJCQkoY2hlY2tDb250ZXh0ID0gY29udGV4dCkubm9kZVR5cGUgPw0KCQkJCQltYXRjaENvbnRleHQoIGVsZW0sIGNvbnRleHQsIHhtbCApIDoNCgkJCQkJbWF0Y2hBbnlDb250ZXh0KCBlbGVtLCBjb250ZXh0LCB4bWwgKSApOw0KCQkJLy8gQXZvaWQgaGFuZ2luZyBvbnRvIGVsZW1lbnQgKGlzc3VlICMyOTkpDQoJCQljaGVja0NvbnRleHQgPSBudWxsOw0KCQkJcmV0dXJuIHJldDsNCgkJfSBdOw0KDQoJZm9yICggOyBpIDwgbGVuOyBpKysgKSB7DQoJCWlmICggKG1hdGNoZXIgPSBFeHByLnJlbGF0aXZlWyB0b2tlbnNbaV0udHlwZSBdKSApIHsNCgkJCW1hdGNoZXJzID0gWyBhZGRDb21iaW5hdG9yKGVsZW1lbnRNYXRjaGVyKCBtYXRjaGVycyApLCBtYXRjaGVyKSBdOw0KCQl9IGVsc2Ugew0KCQkJbWF0Y2hlciA9IEV4cHIuZmlsdGVyWyB0b2tlbnNbaV0udHlwZSBdLmFwcGx5KCBudWxsLCB0b2tlbnNbaV0ubWF0Y2hlcyApOw0KDQoJCQkvLyBSZXR1cm4gc3BlY2lhbCB1cG9uIHNlZWluZyBhIHBvc2l0aW9uYWwgbWF0Y2hlcg0KCQkJaWYgKCBtYXRjaGVyWyBleHBhbmRvIF0gKSB7DQoJCQkJLy8gRmluZCB0aGUgbmV4dCByZWxhdGl2ZSBvcGVyYXRvciAoaWYgYW55KSBmb3IgcHJvcGVyIGhhbmRsaW5nDQoJCQkJaiA9ICsraTsNCgkJCQlmb3IgKCA7IGogPCBsZW47IGorKyApIHsNCgkJCQkJaWYgKCBFeHByLnJlbGF0aXZlWyB0b2tlbnNbal0udHlwZSBdICkgew0KCQkJCQkJYnJlYWs7DQoJCQkJCX0NCgkJCQl9DQoJCQkJcmV0dXJuIHNldE1hdGNoZXIoDQoJCQkJCWkgPiAxICYmIGVsZW1lbnRNYXRjaGVyKCBtYXRjaGVycyApLA0KCQkJCQlpID4gMSAmJiB0b1NlbGVjdG9yKA0KCQkJCQkJLy8gSWYgdGhlIHByZWNlZGluZyB0b2tlbiB3YXMgYSBkZXNjZW5kYW50IGNvbWJpbmF0b3IsIGluc2VydCBhbiBpbXBsaWNpdCBhbnktZWxlbWVudCBgKmANCgkJCQkJCXRva2Vucy5zbGljZSggMCwgaSAtIDEgKS5jb25jYXQoeyB2YWx1ZTogdG9rZW5zWyBpIC0gMiBdLnR5cGUgPT09ICIgIiA/ICIqIiA6ICIiIH0pDQoJCQkJCSkucmVwbGFjZSggcnRyaW0sICIkMSIgKSwNCgkJCQkJbWF0Y2hlciwNCgkJCQkJaSA8IGogJiYgbWF0Y2hlckZyb21Ub2tlbnMoIHRva2Vucy5zbGljZSggaSwgaiApICksDQoJCQkJCWogPCBsZW4gJiYgbWF0Y2hlckZyb21Ub2tlbnMoICh0b2tlbnMgPSB0b2tlbnMuc2xpY2UoIGogKSkgKSwNCgkJCQkJaiA8IGxlbiAmJiB0b1NlbGVjdG9yKCB0b2tlbnMgKQ0KCQkJCSk7DQoJCQl9DQoJCQltYXRjaGVycy5wdXNoKCBtYXRjaGVyICk7DQoJCX0NCgl9DQoNCglyZXR1cm4gZWxlbWVudE1hdGNoZXIoIG1hdGNoZXJzICk7DQp9DQoNCmZ1bmN0aW9uIG1hdGNoZXJGcm9tR3JvdXBNYXRjaGVycyggZWxlbWVudE1hdGNoZXJzLCBzZXRNYXRjaGVycyApIHsNCgl2YXIgYnlTZXQgPSBzZXRNYXRjaGVycy5sZW5ndGggPiAwLA0KCQlieUVsZW1lbnQgPSBlbGVtZW50TWF0Y2hlcnMubGVuZ3RoID4gMCwNCgkJc3VwZXJNYXRjaGVyID0gZnVuY3Rpb24oIHNlZWQsIGNvbnRleHQsIHhtbCwgcmVzdWx0cywgb3V0ZXJtb3N0ICkgew0KCQkJdmFyIGVsZW0sIGosIG1hdGNoZXIsDQoJCQkJbWF0Y2hlZENvdW50ID0gMCwNCgkJCQlpID0gIjAiLA0KCQkJCXVubWF0Y2hlZCA9IHNlZWQgJiYgW10sDQoJCQkJc2V0TWF0Y2hlZCA9IFtdLA0KCQkJCWNvbnRleHRCYWNrdXAgPSBvdXRlcm1vc3RDb250ZXh0LA0KCQkJCS8vIFdlIG11c3QgYWx3YXlzIGhhdmUgZWl0aGVyIHNlZWQgZWxlbWVudHMgb3Igb3V0ZXJtb3N0IGNvbnRleHQNCgkJCQllbGVtcyA9IHNlZWQgfHwgYnlFbGVtZW50ICYmIEV4cHIuZmluZFsiVEFHIl0oICIqIiwgb3V0ZXJtb3N0ICksDQoJCQkJLy8gVXNlIGludGVnZXIgZGlycnVucyBpZmYgdGhpcyBpcyB0aGUgb3V0ZXJtb3N0IG1hdGNoZXINCgkJCQlkaXJydW5zVW5pcXVlID0gKGRpcnJ1bnMgKz0gY29udGV4dEJhY2t1cCA9PSBudWxsID8gMSA6IE1hdGgucmFuZG9tKCkgfHwgMC4xKSwNCgkJCQlsZW4gPSBlbGVtcy5sZW5ndGg7DQoNCgkJCWlmICggb3V0ZXJtb3N0ICkgew0KCQkJCW91dGVybW9zdENvbnRleHQgPSBjb250ZXh0ICE9PSBkb2N1bWVudCAmJiBjb250ZXh0Ow0KCQkJfQ0KDQoJCQkvLyBBZGQgZWxlbWVudHMgcGFzc2luZyBlbGVtZW50TWF0Y2hlcnMgZGlyZWN0bHkgdG8gcmVzdWx0cw0KCQkJLy8gS2VlcCBgaWAgYSBzdHJpbmcgaWYgdGhlcmUgYXJlIG5vIGVsZW1lbnRzIHNvIGBtYXRjaGVkQ291bnRgIHdpbGwgYmUgIjAwIiBiZWxvdw0KCQkJLy8gU3VwcG9ydDogSUU8OSwgU2FmYXJpDQoJCQkvLyBUb2xlcmF0ZSBOb2RlTGlzdCBwcm9wZXJ0aWVzIChJRTogImxlbmd0aCI7IFNhZmFyaTogPG51bWJlcj4pIG1hdGNoaW5nIGVsZW1lbnRzIGJ5IGlkDQoJCQlmb3IgKCA7IGkgIT09IGxlbiAmJiAoZWxlbSA9IGVsZW1zW2ldKSAhPSBudWxsOyBpKysgKSB7DQoJCQkJaWYgKCBieUVsZW1lbnQgJiYgZWxlbSApIHsNCgkJCQkJaiA9IDA7DQoJCQkJCXdoaWxlICggKG1hdGNoZXIgPSBlbGVtZW50TWF0Y2hlcnNbaisrXSkgKSB7DQoJCQkJCQlpZiAoIG1hdGNoZXIoIGVsZW0sIGNvbnRleHQsIHhtbCApICkgew0KCQkJCQkJCXJlc3VsdHMucHVzaCggZWxlbSApOw0KCQkJCQkJCWJyZWFrOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJCWlmICggb3V0ZXJtb3N0ICkgew0KCQkJCQkJZGlycnVucyA9IGRpcnJ1bnNVbmlxdWU7DQoJCQkJCX0NCgkJCQl9DQoNCgkJCQkvLyBUcmFjayB1bm1hdGNoZWQgZWxlbWVudHMgZm9yIHNldCBmaWx0ZXJzDQoJCQkJaWYgKCBieVNldCApIHsNCgkJCQkJLy8gVGhleSB3aWxsIGhhdmUgZ29uZSB0aHJvdWdoIGFsbCBwb3NzaWJsZSBtYXRjaGVycw0KCQkJCQlpZiAoIChlbGVtID0gIW1hdGNoZXIgJiYgZWxlbSkgKSB7DQoJCQkJCQltYXRjaGVkQ291bnQtLTsNCgkJCQkJfQ0KDQoJCQkJCS8vIExlbmd0aGVuIHRoZSBhcnJheSBmb3IgZXZlcnkgZWxlbWVudCwgbWF0Y2hlZCBvciBub3QNCgkJCQkJaWYgKCBzZWVkICkgew0KCQkJCQkJdW5tYXRjaGVkLnB1c2goIGVsZW0gKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCg0KCQkJLy8gQXBwbHkgc2V0IGZpbHRlcnMgdG8gdW5tYXRjaGVkIGVsZW1lbnRzDQoJCQltYXRjaGVkQ291bnQgKz0gaTsNCgkJCWlmICggYnlTZXQgJiYgaSAhPT0gbWF0Y2hlZENvdW50ICkgew0KCQkJCWogPSAwOw0KCQkJCXdoaWxlICggKG1hdGNoZXIgPSBzZXRNYXRjaGVyc1tqKytdKSApIHsNCgkJCQkJbWF0Y2hlciggdW5tYXRjaGVkLCBzZXRNYXRjaGVkLCBjb250ZXh0LCB4bWwgKTsNCgkJCQl9DQoNCgkJCQlpZiAoIHNlZWQgKSB7DQoJCQkJCS8vIFJlaW50ZWdyYXRlIGVsZW1lbnQgbWF0Y2hlcyB0byBlbGltaW5hdGUgdGhlIG5lZWQgZm9yIHNvcnRpbmcNCgkJCQkJaWYgKCBtYXRjaGVkQ291bnQgPiAwICkgew0KCQkJCQkJd2hpbGUgKCBpLS0gKSB7DQoJCQkJCQkJaWYgKCAhKHVubWF0Y2hlZFtpXSB8fCBzZXRNYXRjaGVkW2ldKSApIHsNCgkJCQkJCQkJc2V0TWF0Y2hlZFtpXSA9IHBvcC5jYWxsKCByZXN1bHRzICk7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9DQoNCgkJCQkJLy8gRGlzY2FyZCBpbmRleCBwbGFjZWhvbGRlciB2YWx1ZXMgdG8gZ2V0IG9ubHkgYWN0dWFsIG1hdGNoZXMNCgkJCQkJc2V0TWF0Y2hlZCA9IGNvbmRlbnNlKCBzZXRNYXRjaGVkICk7DQoJCQkJfQ0KDQoJCQkJLy8gQWRkIG1hdGNoZXMgdG8gcmVzdWx0cw0KCQkJCXB1c2guYXBwbHkoIHJlc3VsdHMsIHNldE1hdGNoZWQgKTsNCg0KCQkJCS8vIFNlZWRsZXNzIHNldCBtYXRjaGVzIHN1Y2NlZWRpbmcgbXVsdGlwbGUgc3VjY2Vzc2Z1bCBtYXRjaGVycyBzdGlwdWxhdGUgc29ydGluZw0KCQkJCWlmICggb3V0ZXJtb3N0ICYmICFzZWVkICYmIHNldE1hdGNoZWQubGVuZ3RoID4gMCAmJg0KCQkJCQkoIG1hdGNoZWRDb3VudCArIHNldE1hdGNoZXJzLmxlbmd0aCApID4gMSApIHsNCg0KCQkJCQlTaXp6bGUudW5pcXVlU29ydCggcmVzdWx0cyApOw0KCQkJCX0NCgkJCX0NCg0KCQkJLy8gT3ZlcnJpZGUgbWFuaXB1bGF0aW9uIG9mIGdsb2JhbHMgYnkgbmVzdGVkIG1hdGNoZXJzDQoJCQlpZiAoIG91dGVybW9zdCApIHsNCgkJCQlkaXJydW5zID0gZGlycnVuc1VuaXF1ZTsNCgkJCQlvdXRlcm1vc3RDb250ZXh0ID0gY29udGV4dEJhY2t1cDsNCgkJCX0NCg0KCQkJcmV0dXJuIHVubWF0Y2hlZDsNCgkJfTsNCg0KCXJldHVybiBieVNldCA/DQoJCW1hcmtGdW5jdGlvbiggc3VwZXJNYXRjaGVyICkgOg0KCQlzdXBlck1hdGNoZXI7DQp9DQoNCmNvbXBpbGUgPSBTaXp6bGUuY29tcGlsZSA9IGZ1bmN0aW9uKCBzZWxlY3RvciwgbWF0Y2ggLyogSW50ZXJuYWwgVXNlIE9ubHkgKi8gKSB7DQoJdmFyIGksDQoJCXNldE1hdGNoZXJzID0gW10sDQoJCWVsZW1lbnRNYXRjaGVycyA9IFtdLA0KCQljYWNoZWQgPSBjb21waWxlckNhY2hlWyBzZWxlY3RvciArICIgIiBdOw0KDQoJaWYgKCAhY2FjaGVkICkgew0KCQkvLyBHZW5lcmF0ZSBhIGZ1bmN0aW9uIG9mIHJlY3Vyc2l2ZSBmdW5jdGlvbnMgdGhhdCBjYW4gYmUgdXNlZCB0byBjaGVjayBlYWNoIGVsZW1lbnQNCgkJaWYgKCAhbWF0Y2ggKSB7DQoJCQltYXRjaCA9IHRva2VuaXplKCBzZWxlY3RvciApOw0KCQl9DQoJCWkgPSBtYXRjaC5sZW5ndGg7DQoJCXdoaWxlICggaS0tICkgew0KCQkJY2FjaGVkID0gbWF0Y2hlckZyb21Ub2tlbnMoIG1hdGNoW2ldICk7DQoJCQlpZiAoIGNhY2hlZFsgZXhwYW5kbyBdICkgew0KCQkJCXNldE1hdGNoZXJzLnB1c2goIGNhY2hlZCApOw0KCQkJfSBlbHNlIHsNCgkJCQllbGVtZW50TWF0Y2hlcnMucHVzaCggY2FjaGVkICk7DQoJCQl9DQoJCX0NCg0KCQkvLyBDYWNoZSB0aGUgY29tcGlsZWQgZnVuY3Rpb24NCgkJY2FjaGVkID0gY29tcGlsZXJDYWNoZSggc2VsZWN0b3IsIG1hdGNoZXJGcm9tR3JvdXBNYXRjaGVycyggZWxlbWVudE1hdGNoZXJzLCBzZXRNYXRjaGVycyApICk7DQoNCgkJLy8gU2F2ZSBzZWxlY3RvciBhbmQgdG9rZW5pemF0aW9uDQoJCWNhY2hlZC5zZWxlY3RvciA9IHNlbGVjdG9yOw0KCX0NCglyZXR1cm4gY2FjaGVkOw0KfTsNCg0KLyoqDQogKiBBIGxvdy1sZXZlbCBzZWxlY3Rpb24gZnVuY3Rpb24gdGhhdCB3b3JrcyB3aXRoIFNpenpsZSdzIGNvbXBpbGVkDQogKiAgc2VsZWN0b3IgZnVuY3Rpb25zDQogKiBAcGFyYW0ge1N0cmluZ3xGdW5jdGlvbn0gc2VsZWN0b3IgQSBzZWxlY3RvciBvciBhIHByZS1jb21waWxlZA0KICogIHNlbGVjdG9yIGZ1bmN0aW9uIGJ1aWx0IHdpdGggU2l6emxlLmNvbXBpbGUNCiAqIEBwYXJhbSB7RWxlbWVudH0gY29udGV4dA0KICogQHBhcmFtIHtBcnJheX0gW3Jlc3VsdHNdDQogKiBAcGFyYW0ge0FycmF5fSBbc2VlZF0gQSBzZXQgb2YgZWxlbWVudHMgdG8gbWF0Y2ggYWdhaW5zdA0KICovDQpzZWxlY3QgPSBTaXp6bGUuc2VsZWN0ID0gZnVuY3Rpb24oIHNlbGVjdG9yLCBjb250ZXh0LCByZXN1bHRzLCBzZWVkICkgew0KCXZhciBpLCB0b2tlbnMsIHRva2VuLCB0eXBlLCBmaW5kLA0KCQljb21waWxlZCA9IHR5cGVvZiBzZWxlY3RvciA9PT0gImZ1bmN0aW9uIiAmJiBzZWxlY3RvciwNCgkJbWF0Y2ggPSAhc2VlZCAmJiB0b2tlbml6ZSggKHNlbGVjdG9yID0gY29tcGlsZWQuc2VsZWN0b3IgfHwgc2VsZWN0b3IpICk7DQoNCglyZXN1bHRzID0gcmVzdWx0cyB8fCBbXTsNCg0KCS8vIFRyeSB0byBtaW5pbWl6ZSBvcGVyYXRpb25zIGlmIHRoZXJlIGlzIG5vIHNlZWQgYW5kIG9ubHkgb25lIGdyb3VwDQoJaWYgKCBtYXRjaC5sZW5ndGggPT09IDEgKSB7DQoNCgkJLy8gVGFrZSBhIHNob3J0Y3V0IGFuZCBzZXQgdGhlIGNvbnRleHQgaWYgdGhlIHJvb3Qgc2VsZWN0b3IgaXMgYW4gSUQNCgkJdG9rZW5zID0gbWF0Y2hbMF0gPSBtYXRjaFswXS5zbGljZSggMCApOw0KCQlpZiAoIHRva2Vucy5sZW5ndGggPiAyICYmICh0b2tlbiA9IHRva2Vuc1swXSkudHlwZSA9PT0gIklEIiAmJg0KCQkJCXN1cHBvcnQuZ2V0QnlJZCAmJiBjb250ZXh0Lm5vZGVUeXBlID09PSA5ICYmIGRvY3VtZW50SXNIVE1MICYmDQoJCQkJRXhwci5yZWxhdGl2ZVsgdG9rZW5zWzFdLnR5cGUgXSApIHsNCg0KCQkJY29udGV4dCA9ICggRXhwci5maW5kWyJJRCJdKCB0b2tlbi5tYXRjaGVzWzBdLnJlcGxhY2UocnVuZXNjYXBlLCBmdW5lc2NhcGUpLCBjb250ZXh0ICkgfHwgW10gKVswXTsNCgkJCWlmICggIWNvbnRleHQgKSB7DQoJCQkJcmV0dXJuIHJlc3VsdHM7DQoNCgkJCS8vIFByZWNvbXBpbGVkIG1hdGNoZXJzIHdpbGwgc3RpbGwgdmVyaWZ5IGFuY2VzdHJ5LCBzbyBzdGVwIHVwIGEgbGV2ZWwNCgkJCX0gZWxzZSBpZiAoIGNvbXBpbGVkICkgew0KCQkJCWNvbnRleHQgPSBjb250ZXh0LnBhcmVudE5vZGU7DQoJCQl9DQoNCgkJCXNlbGVjdG9yID0gc2VsZWN0b3Iuc2xpY2UoIHRva2Vucy5zaGlmdCgpLnZhbHVlLmxlbmd0aCApOw0KCQl9DQoNCgkJLy8gRmV0Y2ggYSBzZWVkIHNldCBmb3IgcmlnaHQtdG8tbGVmdCBtYXRjaGluZw0KCQlpID0gbWF0Y2hFeHByWyJuZWVkc0NvbnRleHQiXS50ZXN0KCBzZWxlY3RvciApID8gMCA6IHRva2Vucy5sZW5ndGg7DQoJCXdoaWxlICggaS0tICkgew0KCQkJdG9rZW4gPSB0b2tlbnNbaV07DQoNCgkJCS8vIEFib3J0IGlmIHdlIGhpdCBhIGNvbWJpbmF0b3INCgkJCWlmICggRXhwci5yZWxhdGl2ZVsgKHR5cGUgPSB0b2tlbi50eXBlKSBdICkgew0KCQkJCWJyZWFrOw0KCQkJfQ0KCQkJaWYgKCAoZmluZCA9IEV4cHIuZmluZFsgdHlwZSBdKSApIHsNCgkJCQkvLyBTZWFyY2gsIGV4cGFuZGluZyBjb250ZXh0IGZvciBsZWFkaW5nIHNpYmxpbmcgY29tYmluYXRvcnMNCgkJCQlpZiAoIChzZWVkID0gZmluZCgNCgkJCQkJdG9rZW4ubWF0Y2hlc1swXS5yZXBsYWNlKCBydW5lc2NhcGUsIGZ1bmVzY2FwZSApLA0KCQkJCQlyc2libGluZy50ZXN0KCB0b2tlbnNbMF0udHlwZSApICYmIHRlc3RDb250ZXh0KCBjb250ZXh0LnBhcmVudE5vZGUgKSB8fCBjb250ZXh0DQoJCQkJKSkgKSB7DQoNCgkJCQkJLy8gSWYgc2VlZCBpcyBlbXB0eSBvciBubyB0b2tlbnMgcmVtYWluLCB3ZSBjYW4gcmV0dXJuIGVhcmx5DQoJCQkJCXRva2Vucy5zcGxpY2UoIGksIDEgKTsNCgkJCQkJc2VsZWN0b3IgPSBzZWVkLmxlbmd0aCAmJiB0b1NlbGVjdG9yKCB0b2tlbnMgKTsNCgkJCQkJaWYgKCAhc2VsZWN0b3IgKSB7DQoJCQkJCQlwdXNoLmFwcGx5KCByZXN1bHRzLCBzZWVkICk7DQoJCQkJCQlyZXR1cm4gcmVzdWx0czsNCgkJCQkJfQ0KDQoJCQkJCWJyZWFrOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCg0KCS8vIENvbXBpbGUgYW5kIGV4ZWN1dGUgYSBmaWx0ZXJpbmcgZnVuY3Rpb24gaWYgb25lIGlzIG5vdCBwcm92aWRlZA0KCS8vIFByb3ZpZGUgYG1hdGNoYCB0byBhdm9pZCByZXRva2VuaXphdGlvbiBpZiB3ZSBtb2RpZmllZCB0aGUgc2VsZWN0b3IgYWJvdmUNCgkoIGNvbXBpbGVkIHx8IGNvbXBpbGUoIHNlbGVjdG9yLCBtYXRjaCApICkoDQoJCXNlZWQsDQoJCWNvbnRleHQsDQoJCSFkb2N1bWVudElzSFRNTCwNCgkJcmVzdWx0cywNCgkJcnNpYmxpbmcudGVzdCggc2VsZWN0b3IgKSAmJiB0ZXN0Q29udGV4dCggY29udGV4dC5wYXJlbnROb2RlICkgfHwgY29udGV4dA0KCSk7DQoJcmV0dXJuIHJlc3VsdHM7DQp9Ow0KDQovLyBPbmUtdGltZSBhc3NpZ25tZW50cw0KDQovLyBTb3J0IHN0YWJpbGl0eQ0Kc3VwcG9ydC5zb3J0U3RhYmxlID0gZXhwYW5kby5zcGxpdCgiIikuc29ydCggc29ydE9yZGVyICkuam9pbigiIikgPT09IGV4cGFuZG87DQoNCi8vIFN1cHBvcnQ6IENocm9tZSAxNC0zNSsNCi8vIEFsd2F5cyBhc3N1bWUgZHVwbGljYXRlcyBpZiB0aGV5IGFyZW4ndCBwYXNzZWQgdG8gdGhlIGNvbXBhcmlzb24gZnVuY3Rpb24NCnN1cHBvcnQuZGV0ZWN0RHVwbGljYXRlcyA9ICEhaGFzRHVwbGljYXRlOw0KDQovLyBJbml0aWFsaXplIGFnYWluc3QgdGhlIGRlZmF1bHQgZG9jdW1lbnQNCnNldERvY3VtZW50KCk7DQoNCi8vIFN1cHBvcnQ6IFdlYmtpdDw1MzcuMzIgLSBTYWZhcmkgNi4wLjMvQ2hyb21lIDI1IChmaXhlZCBpbiBDaHJvbWUgMjcpDQovLyBEZXRhY2hlZCBub2RlcyBjb25mb3VuZGluZ2x5IGZvbGxvdyAqZWFjaCBvdGhlcioNCnN1cHBvcnQuc29ydERldGFjaGVkID0gYXNzZXJ0KGZ1bmN0aW9uKCBkaXYxICkgew0KCS8vIFNob3VsZCByZXR1cm4gMSwgYnV0IHJldHVybnMgNCAoZm9sbG93aW5nKQ0KCXJldHVybiBkaXYxLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKCBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSApICYgMTsNCn0pOw0KDQovLyBTdXBwb3J0OiBJRTw4DQovLyBQcmV2ZW50IGF0dHJpYnV0ZS9wcm9wZXJ0eSAiaW50ZXJwb2xhdGlvbiINCi8vIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9tczUzNjQyOSUyOFZTLjg1JTI5LmFzcHgNCmlmICggIWFzc2VydChmdW5jdGlvbiggZGl2ICkgew0KCWRpdi5pbm5lckhUTUwgPSAiPGEgaHJlZj0nIyc+PC9hPiI7DQoJcmV0dXJuIGRpdi5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgiaHJlZiIpID09PSAiIyIgOw0KfSkgKSB7DQoJYWRkSGFuZGxlKCAidHlwZXxocmVmfGhlaWdodHx3aWR0aCIsIGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCBpc1hNTCApIHsNCgkJaWYgKCAhaXNYTUwgKSB7DQoJCQlyZXR1cm4gZWxlbS5nZXRBdHRyaWJ1dGUoIG5hbWUsIG5hbWUudG9Mb3dlckNhc2UoKSA9PT0gInR5cGUiID8gMSA6IDIgKTsNCgkJfQ0KCX0pOw0KfQ0KDQovLyBTdXBwb3J0OiBJRTw5DQovLyBVc2UgZGVmYXVsdFZhbHVlIGluIHBsYWNlIG9mIGdldEF0dHJpYnV0ZSgidmFsdWUiKQ0KaWYgKCAhc3VwcG9ydC5hdHRyaWJ1dGVzIHx8ICFhc3NlcnQoZnVuY3Rpb24oIGRpdiApIHsNCglkaXYuaW5uZXJIVE1MID0gIjxpbnB1dC8+IjsNCglkaXYuZmlyc3RDaGlsZC5zZXRBdHRyaWJ1dGUoICJ2YWx1ZSIsICIiICk7DQoJcmV0dXJuIGRpdi5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSggInZhbHVlIiApID09PSAiIjsNCn0pICkgew0KCWFkZEhhbmRsZSggInZhbHVlIiwgZnVuY3Rpb24oIGVsZW0sIG5hbWUsIGlzWE1MICkgew0KCQlpZiAoICFpc1hNTCAmJiBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICJpbnB1dCIgKSB7DQoJCQlyZXR1cm4gZWxlbS5kZWZhdWx0VmFsdWU7DQoJCX0NCgl9KTsNCn0NCg0KLy8gU3VwcG9ydDogSUU8OQ0KLy8gVXNlIGdldEF0dHJpYnV0ZU5vZGUgdG8gZmV0Y2ggYm9vbGVhbnMgd2hlbiBnZXRBdHRyaWJ1dGUgbGllcw0KaWYgKCAhYXNzZXJ0KGZ1bmN0aW9uKCBkaXYgKSB7DQoJcmV0dXJuIGRpdi5nZXRBdHRyaWJ1dGUoImRpc2FibGVkIikgPT0gbnVsbDsNCn0pICkgew0KCWFkZEhhbmRsZSggYm9vbGVhbnMsIGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCBpc1hNTCApIHsNCgkJdmFyIHZhbDsNCgkJaWYgKCAhaXNYTUwgKSB7DQoJCQlyZXR1cm4gZWxlbVsgbmFtZSBdID09PSB0cnVlID8gbmFtZS50b0xvd2VyQ2FzZSgpIDoNCgkJCQkJKHZhbCA9IGVsZW0uZ2V0QXR0cmlidXRlTm9kZSggbmFtZSApKSAmJiB2YWwuc3BlY2lmaWVkID8NCgkJCQkJdmFsLnZhbHVlIDoNCgkJCQludWxsOw0KCQl9DQoJfSk7DQp9DQoNCnJldHVybiBTaXp6bGU7DQoNCn0pKCB3aW5kb3cgKTsNCg0KDQoNCmpRdWVyeS5maW5kID0gU2l6emxlOw0KalF1ZXJ5LmV4cHIgPSBTaXp6bGUuc2VsZWN0b3JzOw0KalF1ZXJ5LmV4cHJbIjoiXSA9IGpRdWVyeS5leHByLnBzZXVkb3M7DQpqUXVlcnkudW5pcXVlID0gU2l6emxlLnVuaXF1ZVNvcnQ7DQpqUXVlcnkudGV4dCA9IFNpenpsZS5nZXRUZXh0Ow0KalF1ZXJ5LmlzWE1MRG9jID0gU2l6emxlLmlzWE1MOw0KalF1ZXJ5LmNvbnRhaW5zID0gU2l6emxlLmNvbnRhaW5zOw0KDQoNCg0KdmFyIHJuZWVkc0NvbnRleHQgPSBqUXVlcnkuZXhwci5tYXRjaC5uZWVkc0NvbnRleHQ7DQoNCnZhciByc2luZ2xlVGFnID0gKC9ePChcdyspXHMqXC8/Pig/OjxcL1wxPnwpJC8pOw0KDQoNCg0KdmFyIHJpc1NpbXBsZSA9IC9eLlteOiNcW1wuLF0qJC87DQoNCi8vIEltcGxlbWVudCB0aGUgaWRlbnRpY2FsIGZ1bmN0aW9uYWxpdHkgZm9yIGZpbHRlciBhbmQgbm90DQpmdW5jdGlvbiB3aW5ub3coIGVsZW1lbnRzLCBxdWFsaWZpZXIsIG5vdCApIHsNCglpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCBxdWFsaWZpZXIgKSApIHsNCgkJcmV0dXJuIGpRdWVyeS5ncmVwKCBlbGVtZW50cywgZnVuY3Rpb24oIGVsZW0sIGkgKSB7DQoJCQkvKiBqc2hpbnQgLVcwMTggKi8NCgkJCXJldHVybiAhIXF1YWxpZmllci5jYWxsKCBlbGVtLCBpLCBlbGVtICkgIT09IG5vdDsNCgkJfSk7DQoNCgl9DQoNCglpZiAoIHF1YWxpZmllci5ub2RlVHlwZSApIHsNCgkJcmV0dXJuIGpRdWVyeS5ncmVwKCBlbGVtZW50cywgZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQlyZXR1cm4gKCBlbGVtID09PSBxdWFsaWZpZXIgKSAhPT0gbm90Ow0KCQl9KTsNCg0KCX0NCg0KCWlmICggdHlwZW9mIHF1YWxpZmllciA9PT0gInN0cmluZyIgKSB7DQoJCWlmICggcmlzU2ltcGxlLnRlc3QoIHF1YWxpZmllciApICkgew0KCQkJcmV0dXJuIGpRdWVyeS5maWx0ZXIoIHF1YWxpZmllciwgZWxlbWVudHMsIG5vdCApOw0KCQl9DQoNCgkJcXVhbGlmaWVyID0galF1ZXJ5LmZpbHRlciggcXVhbGlmaWVyLCBlbGVtZW50cyApOw0KCX0NCg0KCXJldHVybiBqUXVlcnkuZ3JlcCggZWxlbWVudHMsIGZ1bmN0aW9uKCBlbGVtICkgew0KCQlyZXR1cm4gKCBpbmRleE9mLmNhbGwoIHF1YWxpZmllciwgZWxlbSApID49IDAgKSAhPT0gbm90Ow0KCX0pOw0KfQ0KDQpqUXVlcnkuZmlsdGVyID0gZnVuY3Rpb24oIGV4cHIsIGVsZW1zLCBub3QgKSB7DQoJdmFyIGVsZW0gPSBlbGVtc1sgMCBdOw0KDQoJaWYgKCBub3QgKSB7DQoJCWV4cHIgPSAiOm5vdCgiICsgZXhwciArICIpIjsNCgl9DQoNCglyZXR1cm4gZWxlbXMubGVuZ3RoID09PSAxICYmIGVsZW0ubm9kZVR5cGUgPT09IDEgPw0KCQlqUXVlcnkuZmluZC5tYXRjaGVzU2VsZWN0b3IoIGVsZW0sIGV4cHIgKSA/IFsgZWxlbSBdIDogW10gOg0KCQlqUXVlcnkuZmluZC5tYXRjaGVzKCBleHByLCBqUXVlcnkuZ3JlcCggZWxlbXMsIGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJcmV0dXJuIGVsZW0ubm9kZVR5cGUgPT09IDE7DQoJCX0pKTsNCn07DQoNCmpRdWVyeS5mbi5leHRlbmQoew0KCWZpbmQ6IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsNCgkJdmFyIGksDQoJCQlsZW4gPSB0aGlzLmxlbmd0aCwNCgkJCXJldCA9IFtdLA0KCQkJc2VsZiA9IHRoaXM7DQoNCgkJaWYgKCB0eXBlb2Ygc2VsZWN0b3IgIT09ICJzdHJpbmciICkgew0KCQkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCBqUXVlcnkoIHNlbGVjdG9yICkuZmlsdGVyKGZ1bmN0aW9uKCkgew0KCQkJCWZvciAoIGkgPSAwOyBpIDwgbGVuOyBpKysgKSB7DQoJCQkJCWlmICggalF1ZXJ5LmNvbnRhaW5zKCBzZWxmWyBpIF0sIHRoaXMgKSApIHsNCgkJCQkJCXJldHVybiB0cnVlOw0KCQkJCQl9DQoJCQkJfQ0KCQkJfSkgKTsNCgkJfQ0KDQoJCWZvciAoIGkgPSAwOyBpIDwgbGVuOyBpKysgKSB7DQoJCQlqUXVlcnkuZmluZCggc2VsZWN0b3IsIHNlbGZbIGkgXSwgcmV0ICk7DQoJCX0NCg0KCQkvLyBOZWVkZWQgYmVjYXVzZSAkKCBzZWxlY3RvciwgY29udGV4dCApIGJlY29tZXMgJCggY29udGV4dCApLmZpbmQoIHNlbGVjdG9yICkNCgkJcmV0ID0gdGhpcy5wdXNoU3RhY2soIGxlbiA+IDEgPyBqUXVlcnkudW5pcXVlKCByZXQgKSA6IHJldCApOw0KCQlyZXQuc2VsZWN0b3IgPSB0aGlzLnNlbGVjdG9yID8gdGhpcy5zZWxlY3RvciArICIgIiArIHNlbGVjdG9yIDogc2VsZWN0b3I7DQoJCXJldHVybiByZXQ7DQoJfSwNCglmaWx0ZXI6IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsNCgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCB3aW5ub3codGhpcywgc2VsZWN0b3IgfHwgW10sIGZhbHNlKSApOw0KCX0sDQoJbm90OiBmdW5jdGlvbiggc2VsZWN0b3IgKSB7DQoJCXJldHVybiB0aGlzLnB1c2hTdGFjayggd2lubm93KHRoaXMsIHNlbGVjdG9yIHx8IFtdLCB0cnVlKSApOw0KCX0sDQoJaXM6IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsNCgkJcmV0dXJuICEhd2lubm93KA0KCQkJdGhpcywNCg0KCQkJLy8gSWYgdGhpcyBpcyBhIHBvc2l0aW9uYWwvcmVsYXRpdmUgc2VsZWN0b3IsIGNoZWNrIG1lbWJlcnNoaXAgaW4gdGhlIHJldHVybmVkIHNldA0KCQkJLy8gc28gJCgicDpmaXJzdCIpLmlzKCJwOmxhc3QiKSB3b24ndCByZXR1cm4gdHJ1ZSBmb3IgYSBkb2Mgd2l0aCB0d28gInAiLg0KCQkJdHlwZW9mIHNlbGVjdG9yID09PSAic3RyaW5nIiAmJiBybmVlZHNDb250ZXh0LnRlc3QoIHNlbGVjdG9yICkgPw0KCQkJCWpRdWVyeSggc2VsZWN0b3IgKSA6DQoJCQkJc2VsZWN0b3IgfHwgW10sDQoJCQlmYWxzZQ0KCQkpLmxlbmd0aDsNCgl9DQp9KTsNCg0KDQovLyBJbml0aWFsaXplIGEgalF1ZXJ5IG9iamVjdA0KDQoNCi8vIEEgY2VudHJhbCByZWZlcmVuY2UgdG8gdGhlIHJvb3QgalF1ZXJ5KGRvY3VtZW50KQ0KdmFyIHJvb3RqUXVlcnksDQoNCgkvLyBBIHNpbXBsZSB3YXkgdG8gY2hlY2sgZm9yIEhUTUwgc3RyaW5ncw0KCS8vIFByaW9yaXRpemUgI2lkIG92ZXIgPHRhZz4gdG8gYXZvaWQgWFNTIHZpYSBsb2NhdGlvbi5oYXNoICgjOTUyMSkNCgkvLyBTdHJpY3QgSFRNTCByZWNvZ25pdGlvbiAoIzExMjkwOiBtdXN0IHN0YXJ0IHdpdGggPCkNCglycXVpY2tFeHByID0gL14oPzpccyooPFtcd1xXXSs+KVtePl0qfCMoW1x3LV0qKSkkLywNCg0KCWluaXQgPSBqUXVlcnkuZm4uaW5pdCA9IGZ1bmN0aW9uKCBzZWxlY3RvciwgY29udGV4dCApIHsNCgkJdmFyIG1hdGNoLCBlbGVtOw0KDQoJCS8vIEhBTkRMRTogJCgiIiksICQobnVsbCksICQodW5kZWZpbmVkKSwgJChmYWxzZSkNCgkJaWYgKCAhc2VsZWN0b3IgKSB7DQoJCQlyZXR1cm4gdGhpczsNCgkJfQ0KDQoJCS8vIEhhbmRsZSBIVE1MIHN0cmluZ3MNCgkJaWYgKCB0eXBlb2Ygc2VsZWN0b3IgPT09ICJzdHJpbmciICkgew0KCQkJaWYgKCBzZWxlY3RvclswXSA9PT0gIjwiICYmIHNlbGVjdG9yWyBzZWxlY3Rvci5sZW5ndGggLSAxIF0gPT09ICI+IiAmJiBzZWxlY3Rvci5sZW5ndGggPj0gMyApIHsNCgkJCQkvLyBBc3N1bWUgdGhhdCBzdHJpbmdzIHRoYXQgc3RhcnQgYW5kIGVuZCB3aXRoIDw+IGFyZSBIVE1MIGFuZCBza2lwIHRoZSByZWdleCBjaGVjaw0KCQkJCW1hdGNoID0gWyBudWxsLCBzZWxlY3RvciwgbnVsbCBdOw0KDQoJCQl9IGVsc2Ugew0KCQkJCW1hdGNoID0gcnF1aWNrRXhwci5leGVjKCBzZWxlY3RvciApOw0KCQkJfQ0KDQoJCQkvLyBNYXRjaCBodG1sIG9yIG1ha2Ugc3VyZSBubyBjb250ZXh0IGlzIHNwZWNpZmllZCBmb3IgI2lkDQoJCQlpZiAoIG1hdGNoICYmIChtYXRjaFsxXSB8fCAhY29udGV4dCkgKSB7DQoNCgkJCQkvLyBIQU5ETEU6ICQoaHRtbCkgLT4gJChhcnJheSkNCgkJCQlpZiAoIG1hdGNoWzFdICkgew0KCQkJCQljb250ZXh0ID0gY29udGV4dCBpbnN0YW5jZW9mIGpRdWVyeSA/IGNvbnRleHRbMF0gOiBjb250ZXh0Ow0KDQoJCQkJCS8vIE9wdGlvbiB0byBydW4gc2NyaXB0cyBpcyB0cnVlIGZvciBiYWNrLWNvbXBhdA0KCQkJCQkvLyBJbnRlbnRpb25hbGx5IGxldCB0aGUgZXJyb3IgYmUgdGhyb3duIGlmIHBhcnNlSFRNTCBpcyBub3QgcHJlc2VudA0KCQkJCQlqUXVlcnkubWVyZ2UoIHRoaXMsIGpRdWVyeS5wYXJzZUhUTUwoDQoJCQkJCQltYXRjaFsxXSwNCgkJCQkJCWNvbnRleHQgJiYgY29udGV4dC5ub2RlVHlwZSA/IGNvbnRleHQub3duZXJEb2N1bWVudCB8fCBjb250ZXh0IDogZG9jdW1lbnQsDQoJCQkJCQl0cnVlDQoJCQkJCSkgKTsNCg0KCQkJCQkvLyBIQU5ETEU6ICQoaHRtbCwgcHJvcHMpDQoJCQkJCWlmICggcnNpbmdsZVRhZy50ZXN0KCBtYXRjaFsxXSApICYmIGpRdWVyeS5pc1BsYWluT2JqZWN0KCBjb250ZXh0ICkgKSB7DQoJCQkJCQlmb3IgKCBtYXRjaCBpbiBjb250ZXh0ICkgew0KCQkJCQkJCS8vIFByb3BlcnRpZXMgb2YgY29udGV4dCBhcmUgY2FsbGVkIGFzIG1ldGhvZHMgaWYgcG9zc2libGUNCgkJCQkJCQlpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCB0aGlzWyBtYXRjaCBdICkgKSB7DQoJCQkJCQkJCXRoaXNbIG1hdGNoIF0oIGNvbnRleHRbIG1hdGNoIF0gKTsNCg0KCQkJCQkJCS8vIC4uLmFuZCBvdGhlcndpc2Ugc2V0IGFzIGF0dHJpYnV0ZXMNCgkJCQkJCQl9IGVsc2Ugew0KCQkJCQkJCQl0aGlzLmF0dHIoIG1hdGNoLCBjb250ZXh0WyBtYXRjaCBdICk7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9DQoNCgkJCQkJcmV0dXJuIHRoaXM7DQoNCgkJCQkvLyBIQU5ETEU6ICQoI2lkKQ0KCQkJCX0gZWxzZSB7DQoJCQkJCWVsZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCggbWF0Y2hbMl0gKTsNCg0KCQkJCQkvLyBTdXBwb3J0OiBCbGFja2JlcnJ5IDQuNg0KCQkJCQkvLyBnRUJJRCByZXR1cm5zIG5vZGVzIG5vIGxvbmdlciBpbiB0aGUgZG9jdW1lbnQgKCM2OTYzKQ0KCQkJCQlpZiAoIGVsZW0gJiYgZWxlbS5wYXJlbnROb2RlICkgew0KCQkJCQkJLy8gSW5qZWN0IHRoZSBlbGVtZW50IGRpcmVjdGx5IGludG8gdGhlIGpRdWVyeSBvYmplY3QNCgkJCQkJCXRoaXMubGVuZ3RoID0gMTsNCgkJCQkJCXRoaXNbMF0gPSBlbGVtOw0KCQkJCQl9DQoNCgkJCQkJdGhpcy5jb250ZXh0ID0gZG9jdW1lbnQ7DQoJCQkJCXRoaXMuc2VsZWN0b3IgPSBzZWxlY3RvcjsNCgkJCQkJcmV0dXJuIHRoaXM7DQoJCQkJfQ0KDQoJCQkvLyBIQU5ETEU6ICQoZXhwciwgJCguLi4pKQ0KCQkJfSBlbHNlIGlmICggIWNvbnRleHQgfHwgY29udGV4dC5qcXVlcnkgKSB7DQoJCQkJcmV0dXJuICggY29udGV4dCB8fCByb290alF1ZXJ5ICkuZmluZCggc2VsZWN0b3IgKTsNCg0KCQkJLy8gSEFORExFOiAkKGV4cHIsIGNvbnRleHQpDQoJCQkvLyAod2hpY2ggaXMganVzdCBlcXVpdmFsZW50IHRvOiAkKGNvbnRleHQpLmZpbmQoZXhwcikNCgkJCX0gZWxzZSB7DQoJCQkJcmV0dXJuIHRoaXMuY29uc3RydWN0b3IoIGNvbnRleHQgKS5maW5kKCBzZWxlY3RvciApOw0KCQkJfQ0KDQoJCS8vIEhBTkRMRTogJChET01FbGVtZW50KQ0KCQl9IGVsc2UgaWYgKCBzZWxlY3Rvci5ub2RlVHlwZSApIHsNCgkJCXRoaXMuY29udGV4dCA9IHRoaXNbMF0gPSBzZWxlY3RvcjsNCgkJCXRoaXMubGVuZ3RoID0gMTsNCgkJCXJldHVybiB0aGlzOw0KDQoJCS8vIEhBTkRMRTogJChmdW5jdGlvbikNCgkJLy8gU2hvcnRjdXQgZm9yIGRvY3VtZW50IHJlYWR5DQoJCX0gZWxzZSBpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCBzZWxlY3RvciApICkgew0KCQkJcmV0dXJuIHR5cGVvZiByb290alF1ZXJ5LnJlYWR5ICE9PSAidW5kZWZpbmVkIiA/DQoJCQkJcm9vdGpRdWVyeS5yZWFkeSggc2VsZWN0b3IgKSA6DQoJCQkJLy8gRXhlY3V0ZSBpbW1lZGlhdGVseSBpZiByZWFkeSBpcyBub3QgcHJlc2VudA0KCQkJCXNlbGVjdG9yKCBqUXVlcnkgKTsNCgkJfQ0KDQoJCWlmICggc2VsZWN0b3Iuc2VsZWN0b3IgIT09IHVuZGVmaW5lZCApIHsNCgkJCXRoaXMuc2VsZWN0b3IgPSBzZWxlY3Rvci5zZWxlY3RvcjsNCgkJCXRoaXMuY29udGV4dCA9IHNlbGVjdG9yLmNvbnRleHQ7DQoJCX0NCg0KCQlyZXR1cm4galF1ZXJ5Lm1ha2VBcnJheSggc2VsZWN0b3IsIHRoaXMgKTsNCgl9Ow0KDQovLyBHaXZlIHRoZSBpbml0IGZ1bmN0aW9uIHRoZSBqUXVlcnkgcHJvdG90eXBlIGZvciBsYXRlciBpbnN0YW50aWF0aW9uDQppbml0LnByb3RvdHlwZSA9IGpRdWVyeS5mbjsNCg0KLy8gSW5pdGlhbGl6ZSBjZW50cmFsIHJlZmVyZW5jZQ0Kcm9vdGpRdWVyeSA9IGpRdWVyeSggZG9jdW1lbnQgKTsNCg0KDQp2YXIgcnBhcmVudHNwcmV2ID0gL14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sDQoJLy8gTWV0aG9kcyBndWFyYW50ZWVkIHRvIHByb2R1Y2UgYSB1bmlxdWUgc2V0IHdoZW4gc3RhcnRpbmcgZnJvbSBhIHVuaXF1ZSBzZXQNCglndWFyYW50ZWVkVW5pcXVlID0gew0KCQljaGlsZHJlbjogdHJ1ZSwNCgkJY29udGVudHM6IHRydWUsDQoJCW5leHQ6IHRydWUsDQoJCXByZXY6IHRydWUNCgl9Ow0KDQpqUXVlcnkuZXh0ZW5kKHsNCglkaXI6IGZ1bmN0aW9uKCBlbGVtLCBkaXIsIHVudGlsICkgew0KCQl2YXIgbWF0Y2hlZCA9IFtdLA0KCQkJdHJ1bmNhdGUgPSB1bnRpbCAhPT0gdW5kZWZpbmVkOw0KDQoJCXdoaWxlICggKGVsZW0gPSBlbGVtWyBkaXIgXSkgJiYgZWxlbS5ub2RlVHlwZSAhPT0gOSApIHsNCgkJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsNCgkJCQlpZiAoIHRydW5jYXRlICYmIGpRdWVyeSggZWxlbSApLmlzKCB1bnRpbCApICkgew0KCQkJCQlicmVhazsNCgkJCQl9DQoJCQkJbWF0Y2hlZC5wdXNoKCBlbGVtICk7DQoJCQl9DQoJCX0NCgkJcmV0dXJuIG1hdGNoZWQ7DQoJfSwNCg0KCXNpYmxpbmc6IGZ1bmN0aW9uKCBuLCBlbGVtICkgew0KCQl2YXIgbWF0Y2hlZCA9IFtdOw0KDQoJCWZvciAoIDsgbjsgbiA9IG4ubmV4dFNpYmxpbmcgKSB7DQoJCQlpZiAoIG4ubm9kZVR5cGUgPT09IDEgJiYgbiAhPT0gZWxlbSApIHsNCgkJCQltYXRjaGVkLnB1c2goIG4gKTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBtYXRjaGVkOw0KCX0NCn0pOw0KDQpqUXVlcnkuZm4uZXh0ZW5kKHsNCgloYXM6IGZ1bmN0aW9uKCB0YXJnZXQgKSB7DQoJCXZhciB0YXJnZXRzID0galF1ZXJ5KCB0YXJnZXQsIHRoaXMgKSwNCgkJCWwgPSB0YXJnZXRzLmxlbmd0aDsNCg0KCQlyZXR1cm4gdGhpcy5maWx0ZXIoZnVuY3Rpb24oKSB7DQoJCQl2YXIgaSA9IDA7DQoJCQlmb3IgKCA7IGkgPCBsOyBpKysgKSB7DQoJCQkJaWYgKCBqUXVlcnkuY29udGFpbnMoIHRoaXMsIHRhcmdldHNbaV0gKSApIHsNCgkJCQkJcmV0dXJuIHRydWU7DQoJCQkJfQ0KCQkJfQ0KCQl9KTsNCgl9LA0KDQoJY2xvc2VzdDogZnVuY3Rpb24oIHNlbGVjdG9ycywgY29udGV4dCApIHsNCgkJdmFyIGN1ciwNCgkJCWkgPSAwLA0KCQkJbCA9IHRoaXMubGVuZ3RoLA0KCQkJbWF0Y2hlZCA9IFtdLA0KCQkJcG9zID0gcm5lZWRzQ29udGV4dC50ZXN0KCBzZWxlY3RvcnMgKSB8fCB0eXBlb2Ygc2VsZWN0b3JzICE9PSAic3RyaW5nIiA/DQoJCQkJalF1ZXJ5KCBzZWxlY3RvcnMsIGNvbnRleHQgfHwgdGhpcy5jb250ZXh0ICkgOg0KCQkJCTA7DQoNCgkJZm9yICggOyBpIDwgbDsgaSsrICkgew0KCQkJZm9yICggY3VyID0gdGhpc1tpXTsgY3VyICYmIGN1ciAhPT0gY29udGV4dDsgY3VyID0gY3VyLnBhcmVudE5vZGUgKSB7DQoJCQkJLy8gQWx3YXlzIHNraXAgZG9jdW1lbnQgZnJhZ21lbnRzDQoJCQkJaWYgKCBjdXIubm9kZVR5cGUgPCAxMSAmJiAocG9zID8NCgkJCQkJcG9zLmluZGV4KGN1cikgPiAtMSA6DQoNCgkJCQkJLy8gRG9uJ3QgcGFzcyBub24tZWxlbWVudHMgdG8gU2l6emxlDQoJCQkJCWN1ci5ub2RlVHlwZSA9PT0gMSAmJg0KCQkJCQkJalF1ZXJ5LmZpbmQubWF0Y2hlc1NlbGVjdG9yKGN1ciwgc2VsZWN0b3JzKSkgKSB7DQoNCgkJCQkJbWF0Y2hlZC5wdXNoKCBjdXIgKTsNCgkJCQkJYnJlYWs7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCBtYXRjaGVkLmxlbmd0aCA+IDEgPyBqUXVlcnkudW5pcXVlKCBtYXRjaGVkICkgOiBtYXRjaGVkICk7DQoJfSwNCg0KCS8vIERldGVybWluZSB0aGUgcG9zaXRpb24gb2YgYW4gZWxlbWVudCB3aXRoaW4gdGhlIHNldA0KCWluZGV4OiBmdW5jdGlvbiggZWxlbSApIHsNCg0KCQkvLyBObyBhcmd1bWVudCwgcmV0dXJuIGluZGV4IGluIHBhcmVudA0KCQlpZiAoICFlbGVtICkgew0KCQkJcmV0dXJuICggdGhpc1sgMCBdICYmIHRoaXNbIDAgXS5wYXJlbnROb2RlICkgPyB0aGlzLmZpcnN0KCkucHJldkFsbCgpLmxlbmd0aCA6IC0xOw0KCQl9DQoNCgkJLy8gSW5kZXggaW4gc2VsZWN0b3INCgkJaWYgKCB0eXBlb2YgZWxlbSA9PT0gInN0cmluZyIgKSB7DQoJCQlyZXR1cm4gaW5kZXhPZi5jYWxsKCBqUXVlcnkoIGVsZW0gKSwgdGhpc1sgMCBdICk7DQoJCX0NCg0KCQkvLyBMb2NhdGUgdGhlIHBvc2l0aW9uIG9mIHRoZSBkZXNpcmVkIGVsZW1lbnQNCgkJcmV0dXJuIGluZGV4T2YuY2FsbCggdGhpcywNCg0KCQkJLy8gSWYgaXQgcmVjZWl2ZXMgYSBqUXVlcnkgb2JqZWN0LCB0aGUgZmlyc3QgZWxlbWVudCBpcyB1c2VkDQoJCQllbGVtLmpxdWVyeSA/IGVsZW1bIDAgXSA6IGVsZW0NCgkJKTsNCgl9LA0KDQoJYWRkOiBmdW5jdGlvbiggc2VsZWN0b3IsIGNvbnRleHQgKSB7DQoJCXJldHVybiB0aGlzLnB1c2hTdGFjaygNCgkJCWpRdWVyeS51bmlxdWUoDQoJCQkJalF1ZXJ5Lm1lcmdlKCB0aGlzLmdldCgpLCBqUXVlcnkoIHNlbGVjdG9yLCBjb250ZXh0ICkgKQ0KCQkJKQ0KCQkpOw0KCX0sDQoNCglhZGRCYWNrOiBmdW5jdGlvbiggc2VsZWN0b3IgKSB7DQoJCXJldHVybiB0aGlzLmFkZCggc2VsZWN0b3IgPT0gbnVsbCA/DQoJCQl0aGlzLnByZXZPYmplY3QgOiB0aGlzLnByZXZPYmplY3QuZmlsdGVyKHNlbGVjdG9yKQ0KCQkpOw0KCX0NCn0pOw0KDQpmdW5jdGlvbiBzaWJsaW5nKCBjdXIsIGRpciApIHsNCgl3aGlsZSAoIChjdXIgPSBjdXJbZGlyXSkgJiYgY3VyLm5vZGVUeXBlICE9PSAxICkge30NCglyZXR1cm4gY3VyOw0KfQ0KDQpqUXVlcnkuZWFjaCh7DQoJcGFyZW50OiBmdW5jdGlvbiggZWxlbSApIHsNCgkJdmFyIHBhcmVudCA9IGVsZW0ucGFyZW50Tm9kZTsNCgkJcmV0dXJuIHBhcmVudCAmJiBwYXJlbnQubm9kZVR5cGUgIT09IDExID8gcGFyZW50IDogbnVsbDsNCgl9LA0KCXBhcmVudHM6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQlyZXR1cm4galF1ZXJ5LmRpciggZWxlbSwgInBhcmVudE5vZGUiICk7DQoJfSwNCglwYXJlbnRzVW50aWw6IGZ1bmN0aW9uKCBlbGVtLCBpLCB1bnRpbCApIHsNCgkJcmV0dXJuIGpRdWVyeS5kaXIoIGVsZW0sICJwYXJlbnROb2RlIiwgdW50aWwgKTsNCgl9LA0KCW5leHQ6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQlyZXR1cm4gc2libGluZyggZWxlbSwgIm5leHRTaWJsaW5nIiApOw0KCX0sDQoJcHJldjogZnVuY3Rpb24oIGVsZW0gKSB7DQoJCXJldHVybiBzaWJsaW5nKCBlbGVtLCAicHJldmlvdXNTaWJsaW5nIiApOw0KCX0sDQoJbmV4dEFsbDogZnVuY3Rpb24oIGVsZW0gKSB7DQoJCXJldHVybiBqUXVlcnkuZGlyKCBlbGVtLCAibmV4dFNpYmxpbmciICk7DQoJfSwNCglwcmV2QWxsOiBmdW5jdGlvbiggZWxlbSApIHsNCgkJcmV0dXJuIGpRdWVyeS5kaXIoIGVsZW0sICJwcmV2aW91c1NpYmxpbmciICk7DQoJfSwNCgluZXh0VW50aWw6IGZ1bmN0aW9uKCBlbGVtLCBpLCB1bnRpbCApIHsNCgkJcmV0dXJuIGpRdWVyeS5kaXIoIGVsZW0sICJuZXh0U2libGluZyIsIHVudGlsICk7DQoJfSwNCglwcmV2VW50aWw6IGZ1bmN0aW9uKCBlbGVtLCBpLCB1bnRpbCApIHsNCgkJcmV0dXJuIGpRdWVyeS5kaXIoIGVsZW0sICJwcmV2aW91c1NpYmxpbmciLCB1bnRpbCApOw0KCX0sDQoJc2libGluZ3M6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQlyZXR1cm4galF1ZXJ5LnNpYmxpbmcoICggZWxlbS5wYXJlbnROb2RlIHx8IHt9ICkuZmlyc3RDaGlsZCwgZWxlbSApOw0KCX0sDQoJY2hpbGRyZW46IGZ1bmN0aW9uKCBlbGVtICkgew0KCQlyZXR1cm4galF1ZXJ5LnNpYmxpbmcoIGVsZW0uZmlyc3RDaGlsZCApOw0KCX0sDQoJY29udGVudHM6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQlyZXR1cm4gZWxlbS5jb250ZW50RG9jdW1lbnQgfHwgalF1ZXJ5Lm1lcmdlKCBbXSwgZWxlbS5jaGlsZE5vZGVzICk7DQoJfQ0KfSwgZnVuY3Rpb24oIG5hbWUsIGZuICkgew0KCWpRdWVyeS5mblsgbmFtZSBdID0gZnVuY3Rpb24oIHVudGlsLCBzZWxlY3RvciApIHsNCgkJdmFyIG1hdGNoZWQgPSBqUXVlcnkubWFwKCB0aGlzLCBmbiwgdW50aWwgKTsNCg0KCQlpZiAoIG5hbWUuc2xpY2UoIC01ICkgIT09ICJVbnRpbCIgKSB7DQoJCQlzZWxlY3RvciA9IHVudGlsOw0KCQl9DQoNCgkJaWYgKCBzZWxlY3RvciAmJiB0eXBlb2Ygc2VsZWN0b3IgPT09ICJzdHJpbmciICkgew0KCQkJbWF0Y2hlZCA9IGpRdWVyeS5maWx0ZXIoIHNlbGVjdG9yLCBtYXRjaGVkICk7DQoJCX0NCg0KCQlpZiAoIHRoaXMubGVuZ3RoID4gMSApIHsNCgkJCS8vIFJlbW92ZSBkdXBsaWNhdGVzDQoJCQlpZiAoICFndWFyYW50ZWVkVW5pcXVlWyBuYW1lIF0gKSB7DQoJCQkJalF1ZXJ5LnVuaXF1ZSggbWF0Y2hlZCApOw0KCQkJfQ0KDQoJCQkvLyBSZXZlcnNlIG9yZGVyIGZvciBwYXJlbnRzKiBhbmQgcHJldi1kZXJpdmF0aXZlcw0KCQkJaWYgKCBycGFyZW50c3ByZXYudGVzdCggbmFtZSApICkgew0KCQkJCW1hdGNoZWQucmV2ZXJzZSgpOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCBtYXRjaGVkICk7DQoJfTsNCn0pOw0KdmFyIHJub3R3aGl0ZSA9ICgvXFMrL2cpOw0KDQoNCg0KLy8gU3RyaW5nIHRvIE9iamVjdCBvcHRpb25zIGZvcm1hdCBjYWNoZQ0KdmFyIG9wdGlvbnNDYWNoZSA9IHt9Ow0KDQovLyBDb252ZXJ0IFN0cmluZy1mb3JtYXR0ZWQgb3B0aW9ucyBpbnRvIE9iamVjdC1mb3JtYXR0ZWQgb25lcyBhbmQgc3RvcmUgaW4gY2FjaGUNCmZ1bmN0aW9uIGNyZWF0ZU9wdGlvbnMoIG9wdGlvbnMgKSB7DQoJdmFyIG9iamVjdCA9IG9wdGlvbnNDYWNoZVsgb3B0aW9ucyBdID0ge307DQoJalF1ZXJ5LmVhY2goIG9wdGlvbnMubWF0Y2goIHJub3R3aGl0ZSApIHx8IFtdLCBmdW5jdGlvbiggXywgZmxhZyApIHsNCgkJb2JqZWN0WyBmbGFnIF0gPSB0cnVlOw0KCX0pOw0KCXJldHVybiBvYmplY3Q7DQp9DQoNCi8qDQogKiBDcmVhdGUgYSBjYWxsYmFjayBsaXN0IHVzaW5nIHRoZSBmb2xsb3dpbmcgcGFyYW1ldGVyczoNCiAqDQogKglvcHRpb25zOiBhbiBvcHRpb25hbCBsaXN0IG9mIHNwYWNlLXNlcGFyYXRlZCBvcHRpb25zIHRoYXQgd2lsbCBjaGFuZ2UgaG93DQogKgkJCXRoZSBjYWxsYmFjayBsaXN0IGJlaGF2ZXMgb3IgYSBtb3JlIHRyYWRpdGlvbmFsIG9wdGlvbiBvYmplY3QNCiAqDQogKiBCeSBkZWZhdWx0IGEgY2FsbGJhY2sgbGlzdCB3aWxsIGFjdCBsaWtlIGFuIGV2ZW50IGNhbGxiYWNrIGxpc3QgYW5kIGNhbiBiZQ0KICogImZpcmVkIiBtdWx0aXBsZSB0aW1lcy4NCiAqDQogKiBQb3NzaWJsZSBvcHRpb25zOg0KICoNCiAqCW9uY2U6CQkJd2lsbCBlbnN1cmUgdGhlIGNhbGxiYWNrIGxpc3QgY2FuIG9ubHkgYmUgZmlyZWQgb25jZSAobGlrZSBhIERlZmVycmVkKQ0KICoNCiAqCW1lbW9yeToJCQl3aWxsIGtlZXAgdHJhY2sgb2YgcHJldmlvdXMgdmFsdWVzIGFuZCB3aWxsIGNhbGwgYW55IGNhbGxiYWNrIGFkZGVkDQogKgkJCQkJYWZ0ZXIgdGhlIGxpc3QgaGFzIGJlZW4gZmlyZWQgcmlnaHQgYXdheSB3aXRoIHRoZSBsYXRlc3QgIm1lbW9yaXplZCINCiAqCQkJCQl2YWx1ZXMgKGxpa2UgYSBEZWZlcnJlZCkNCiAqDQogKgl1bmlxdWU6CQkJd2lsbCBlbnN1cmUgYSBjYWxsYmFjayBjYW4gb25seSBiZSBhZGRlZCBvbmNlIChubyBkdXBsaWNhdGUgaW4gdGhlIGxpc3QpDQogKg0KICoJc3RvcE9uRmFsc2U6CWludGVycnVwdCBjYWxsaW5ncyB3aGVuIGEgY2FsbGJhY2sgcmV0dXJucyBmYWxzZQ0KICoNCiAqLw0KalF1ZXJ5LkNhbGxiYWNrcyA9IGZ1bmN0aW9uKCBvcHRpb25zICkgew0KDQoJLy8gQ29udmVydCBvcHRpb25zIGZyb20gU3RyaW5nLWZvcm1hdHRlZCB0byBPYmplY3QtZm9ybWF0dGVkIGlmIG5lZWRlZA0KCS8vICh3ZSBjaGVjayBpbiBjYWNoZSBmaXJzdCkNCglvcHRpb25zID0gdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciID8NCgkJKCBvcHRpb25zQ2FjaGVbIG9wdGlvbnMgXSB8fCBjcmVhdGVPcHRpb25zKCBvcHRpb25zICkgKSA6DQoJCWpRdWVyeS5leHRlbmQoIHt9LCBvcHRpb25zICk7DQoNCgl2YXIgLy8gTGFzdCBmaXJlIHZhbHVlIChmb3Igbm9uLWZvcmdldHRhYmxlIGxpc3RzKQ0KCQltZW1vcnksDQoJCS8vIEZsYWcgdG8ga25vdyBpZiBsaXN0IHdhcyBhbHJlYWR5IGZpcmVkDQoJCWZpcmVkLA0KCQkvLyBGbGFnIHRvIGtub3cgaWYgbGlzdCBpcyBjdXJyZW50bHkgZmlyaW5nDQoJCWZpcmluZywNCgkJLy8gRmlyc3QgY2FsbGJhY2sgdG8gZmlyZSAodXNlZCBpbnRlcm5hbGx5IGJ5IGFkZCBhbmQgZmlyZVdpdGgpDQoJCWZpcmluZ1N0YXJ0LA0KCQkvLyBFbmQgb2YgdGhlIGxvb3Agd2hlbiBmaXJpbmcNCgkJZmlyaW5nTGVuZ3RoLA0KCQkvLyBJbmRleCBvZiBjdXJyZW50bHkgZmlyaW5nIGNhbGxiYWNrIChtb2RpZmllZCBieSByZW1vdmUgaWYgbmVlZGVkKQ0KCQlmaXJpbmdJbmRleCwNCgkJLy8gQWN0dWFsIGNhbGxiYWNrIGxpc3QNCgkJbGlzdCA9IFtdLA0KCQkvLyBTdGFjayBvZiBmaXJlIGNhbGxzIGZvciByZXBlYXRhYmxlIGxpc3RzDQoJCXN0YWNrID0gIW9wdGlvbnMub25jZSAmJiBbXSwNCgkJLy8gRmlyZSBjYWxsYmFja3MNCgkJZmlyZSA9IGZ1bmN0aW9uKCBkYXRhICkgew0KCQkJbWVtb3J5ID0gb3B0aW9ucy5tZW1vcnkgJiYgZGF0YTsNCgkJCWZpcmVkID0gdHJ1ZTsNCgkJCWZpcmluZ0luZGV4ID0gZmlyaW5nU3RhcnQgfHwgMDsNCgkJCWZpcmluZ1N0YXJ0ID0gMDsNCgkJCWZpcmluZ0xlbmd0aCA9IGxpc3QubGVuZ3RoOw0KCQkJZmlyaW5nID0gdHJ1ZTsNCgkJCWZvciAoIDsgbGlzdCAmJiBmaXJpbmdJbmRleCA8IGZpcmluZ0xlbmd0aDsgZmlyaW5nSW5kZXgrKyApIHsNCgkJCQlpZiAoIGxpc3RbIGZpcmluZ0luZGV4IF0uYXBwbHkoIGRhdGFbIDAgXSwgZGF0YVsgMSBdICkgPT09IGZhbHNlICYmIG9wdGlvbnMuc3RvcE9uRmFsc2UgKSB7DQoJCQkJCW1lbW9yeSA9IGZhbHNlOyAvLyBUbyBwcmV2ZW50IGZ1cnRoZXIgY2FsbHMgdXNpbmcgYWRkDQoJCQkJCWJyZWFrOw0KCQkJCX0NCgkJCX0NCgkJCWZpcmluZyA9IGZhbHNlOw0KCQkJaWYgKCBsaXN0ICkgew0KCQkJCWlmICggc3RhY2sgKSB7DQoJCQkJCWlmICggc3RhY2subGVuZ3RoICkgew0KCQkJCQkJZmlyZSggc3RhY2suc2hpZnQoKSApOw0KCQkJCQl9DQoJCQkJfSBlbHNlIGlmICggbWVtb3J5ICkgew0KCQkJCQlsaXN0ID0gW107DQoJCQkJfSBlbHNlIHsNCgkJCQkJc2VsZi5kaXNhYmxlKCk7DQoJCQkJfQ0KCQkJfQ0KCQl9LA0KCQkvLyBBY3R1YWwgQ2FsbGJhY2tzIG9iamVjdA0KCQlzZWxmID0gew0KCQkJLy8gQWRkIGEgY2FsbGJhY2sgb3IgYSBjb2xsZWN0aW9uIG9mIGNhbGxiYWNrcyB0byB0aGUgbGlzdA0KCQkJYWRkOiBmdW5jdGlvbigpIHsNCgkJCQlpZiAoIGxpc3QgKSB7DQoJCQkJCS8vIEZpcnN0LCB3ZSBzYXZlIHRoZSBjdXJyZW50IGxlbmd0aA0KCQkJCQl2YXIgc3RhcnQgPSBsaXN0Lmxlbmd0aDsNCgkJCQkJKGZ1bmN0aW9uIGFkZCggYXJncyApIHsNCgkJCQkJCWpRdWVyeS5lYWNoKCBhcmdzLCBmdW5jdGlvbiggXywgYXJnICkgew0KCQkJCQkJCXZhciB0eXBlID0galF1ZXJ5LnR5cGUoIGFyZyApOw0KCQkJCQkJCWlmICggdHlwZSA9PT0gImZ1bmN0aW9uIiApIHsNCgkJCQkJCQkJaWYgKCAhb3B0aW9ucy51bmlxdWUgfHwgIXNlbGYuaGFzKCBhcmcgKSApIHsNCgkJCQkJCQkJCWxpc3QucHVzaCggYXJnICk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9IGVsc2UgaWYgKCBhcmcgJiYgYXJnLmxlbmd0aCAmJiB0eXBlICE9PSAic3RyaW5nIiApIHsNCgkJCQkJCQkJLy8gSW5zcGVjdCByZWN1cnNpdmVseQ0KCQkJCQkJCQlhZGQoIGFyZyApOw0KCQkJCQkJCX0NCgkJCQkJCX0pOw0KCQkJCQl9KSggYXJndW1lbnRzICk7DQoJCQkJCS8vIERvIHdlIG5lZWQgdG8gYWRkIHRoZSBjYWxsYmFja3MgdG8gdGhlDQoJCQkJCS8vIGN1cnJlbnQgZmlyaW5nIGJhdGNoPw0KCQkJCQlpZiAoIGZpcmluZyApIHsNCgkJCQkJCWZpcmluZ0xlbmd0aCA9IGxpc3QubGVuZ3RoOw0KCQkJCQkvLyBXaXRoIG1lbW9yeSwgaWYgd2UncmUgbm90IGZpcmluZyB0aGVuDQoJCQkJCS8vIHdlIHNob3VsZCBjYWxsIHJpZ2h0IGF3YXkNCgkJCQkJfSBlbHNlIGlmICggbWVtb3J5ICkgew0KCQkJCQkJZmlyaW5nU3RhcnQgPSBzdGFydDsNCgkJCQkJCWZpcmUoIG1lbW9yeSApOw0KCQkJCQl9DQoJCQkJfQ0KCQkJCXJldHVybiB0aGlzOw0KCQkJfSwNCgkJCS8vIFJlbW92ZSBhIGNhbGxiYWNrIGZyb20gdGhlIGxpc3QNCgkJCXJlbW92ZTogZnVuY3Rpb24oKSB7DQoJCQkJaWYgKCBsaXN0ICkgew0KCQkJCQlqUXVlcnkuZWFjaCggYXJndW1lbnRzLCBmdW5jdGlvbiggXywgYXJnICkgew0KCQkJCQkJdmFyIGluZGV4Ow0KCQkJCQkJd2hpbGUgKCAoIGluZGV4ID0galF1ZXJ5LmluQXJyYXkoIGFyZywgbGlzdCwgaW5kZXggKSApID4gLTEgKSB7DQoJCQkJCQkJbGlzdC5zcGxpY2UoIGluZGV4LCAxICk7DQoJCQkJCQkJLy8gSGFuZGxlIGZpcmluZyBpbmRleGVzDQoJCQkJCQkJaWYgKCBmaXJpbmcgKSB7DQoJCQkJCQkJCWlmICggaW5kZXggPD0gZmlyaW5nTGVuZ3RoICkgew0KCQkJCQkJCQkJZmlyaW5nTGVuZ3RoLS07DQoJCQkJCQkJCX0NCgkJCQkJCQkJaWYgKCBpbmRleCA8PSBmaXJpbmdJbmRleCApIHsNCgkJCQkJCQkJCWZpcmluZ0luZGV4LS07DQoJCQkJCQkJCX0NCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0pOw0KCQkJCX0NCgkJCQlyZXR1cm4gdGhpczsNCgkJCX0sDQoJCQkvLyBDaGVjayBpZiBhIGdpdmVuIGNhbGxiYWNrIGlzIGluIHRoZSBsaXN0Lg0KCQkJLy8gSWYgbm8gYXJndW1lbnQgaXMgZ2l2ZW4sIHJldHVybiB3aGV0aGVyIG9yIG5vdCBsaXN0IGhhcyBjYWxsYmFja3MgYXR0YWNoZWQuDQoJCQloYXM6IGZ1bmN0aW9uKCBmbiApIHsNCgkJCQlyZXR1cm4gZm4gPyBqUXVlcnkuaW5BcnJheSggZm4sIGxpc3QgKSA+IC0xIDogISEoIGxpc3QgJiYgbGlzdC5sZW5ndGggKTsNCgkJCX0sDQoJCQkvLyBSZW1vdmUgYWxsIGNhbGxiYWNrcyBmcm9tIHRoZSBsaXN0DQoJCQllbXB0eTogZnVuY3Rpb24oKSB7DQoJCQkJbGlzdCA9IFtdOw0KCQkJCWZpcmluZ0xlbmd0aCA9IDA7DQoJCQkJcmV0dXJuIHRoaXM7DQoJCQl9LA0KCQkJLy8gSGF2ZSB0aGUgbGlzdCBkbyBub3RoaW5nIGFueW1vcmUNCgkJCWRpc2FibGU6IGZ1bmN0aW9uKCkgew0KCQkJCWxpc3QgPSBzdGFjayA9IG1lbW9yeSA9IHVuZGVmaW5lZDsNCgkJCQlyZXR1cm4gdGhpczsNCgkJCX0sDQoJCQkvLyBJcyBpdCBkaXNhYmxlZD8NCgkJCWRpc2FibGVkOiBmdW5jdGlvbigpIHsNCgkJCQlyZXR1cm4gIWxpc3Q7DQoJCQl9LA0KCQkJLy8gTG9jayB0aGUgbGlzdCBpbiBpdHMgY3VycmVudCBzdGF0ZQ0KCQkJbG9jazogZnVuY3Rpb24oKSB7DQoJCQkJc3RhY2sgPSB1bmRlZmluZWQ7DQoJCQkJaWYgKCAhbWVtb3J5ICkgew0KCQkJCQlzZWxmLmRpc2FibGUoKTsNCgkJCQl9DQoJCQkJcmV0dXJuIHRoaXM7DQoJCQl9LA0KCQkJLy8gSXMgaXQgbG9ja2VkPw0KCQkJbG9ja2VkOiBmdW5jdGlvbigpIHsNCgkJCQlyZXR1cm4gIXN0YWNrOw0KCQkJfSwNCgkJCS8vIENhbGwgYWxsIGNhbGxiYWNrcyB3aXRoIHRoZSBnaXZlbiBjb250ZXh0IGFuZCBhcmd1bWVudHMNCgkJCWZpcmVXaXRoOiBmdW5jdGlvbiggY29udGV4dCwgYXJncyApIHsNCgkJCQlpZiAoIGxpc3QgJiYgKCAhZmlyZWQgfHwgc3RhY2sgKSApIHsNCgkJCQkJYXJncyA9IGFyZ3MgfHwgW107DQoJCQkJCWFyZ3MgPSBbIGNvbnRleHQsIGFyZ3Muc2xpY2UgPyBhcmdzLnNsaWNlKCkgOiBhcmdzIF07DQoJCQkJCWlmICggZmlyaW5nICkgew0KCQkJCQkJc3RhY2sucHVzaCggYXJncyApOw0KCQkJCQl9IGVsc2Ugew0KCQkJCQkJZmlyZSggYXJncyApOw0KCQkJCQl9DQoJCQkJfQ0KCQkJCXJldHVybiB0aGlzOw0KCQkJfSwNCgkJCS8vIENhbGwgYWxsIHRoZSBjYWxsYmFja3Mgd2l0aCB0aGUgZ2l2ZW4gYXJndW1lbnRzDQoJCQlmaXJlOiBmdW5jdGlvbigpIHsNCgkJCQlzZWxmLmZpcmVXaXRoKCB0aGlzLCBhcmd1bWVudHMgKTsNCgkJCQlyZXR1cm4gdGhpczsNCgkJCX0sDQoJCQkvLyBUbyBrbm93IGlmIHRoZSBjYWxsYmFja3MgaGF2ZSBhbHJlYWR5IGJlZW4gY2FsbGVkIGF0IGxlYXN0IG9uY2UNCgkJCWZpcmVkOiBmdW5jdGlvbigpIHsNCgkJCQlyZXR1cm4gISFmaXJlZDsNCgkJCX0NCgkJfTsNCg0KCXJldHVybiBzZWxmOw0KfTsNCg0KDQpqUXVlcnkuZXh0ZW5kKHsNCg0KCURlZmVycmVkOiBmdW5jdGlvbiggZnVuYyApIHsNCgkJdmFyIHR1cGxlcyA9IFsNCgkJCQkvLyBhY3Rpb24sIGFkZCBsaXN0ZW5lciwgbGlzdGVuZXIgbGlzdCwgZmluYWwgc3RhdGUNCgkJCQlbICJyZXNvbHZlIiwgImRvbmUiLCBqUXVlcnkuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLCAicmVzb2x2ZWQiIF0sDQoJCQkJWyAicmVqZWN0IiwgImZhaWwiLCBqUXVlcnkuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLCAicmVqZWN0ZWQiIF0sDQoJCQkJWyAibm90aWZ5IiwgInByb2dyZXNzIiwgalF1ZXJ5LkNhbGxiYWNrcygibWVtb3J5IikgXQ0KCQkJXSwNCgkJCXN0YXRlID0gInBlbmRpbmciLA0KCQkJcHJvbWlzZSA9IHsNCgkJCQlzdGF0ZTogZnVuY3Rpb24oKSB7DQoJCQkJCXJldHVybiBzdGF0ZTsNCgkJCQl9LA0KCQkJCWFsd2F5czogZnVuY3Rpb24oKSB7DQoJCQkJCWRlZmVycmVkLmRvbmUoIGFyZ3VtZW50cyApLmZhaWwoIGFyZ3VtZW50cyApOw0KCQkJCQlyZXR1cm4gdGhpczsNCgkJCQl9LA0KCQkJCXRoZW46IGZ1bmN0aW9uKCAvKiBmbkRvbmUsIGZuRmFpbCwgZm5Qcm9ncmVzcyAqLyApIHsNCgkJCQkJdmFyIGZucyA9IGFyZ3VtZW50czsNCgkJCQkJcmV0dXJuIGpRdWVyeS5EZWZlcnJlZChmdW5jdGlvbiggbmV3RGVmZXIgKSB7DQoJCQkJCQlqUXVlcnkuZWFjaCggdHVwbGVzLCBmdW5jdGlvbiggaSwgdHVwbGUgKSB7DQoJCQkJCQkJdmFyIGZuID0galF1ZXJ5LmlzRnVuY3Rpb24oIGZuc1sgaSBdICkgJiYgZm5zWyBpIF07DQoJCQkJCQkJLy8gZGVmZXJyZWRbIGRvbmUgfCBmYWlsIHwgcHJvZ3Jlc3MgXSBmb3IgZm9yd2FyZGluZyBhY3Rpb25zIHRvIG5ld0RlZmVyDQoJCQkJCQkJZGVmZXJyZWRbIHR1cGxlWzFdIF0oZnVuY3Rpb24oKSB7DQoJCQkJCQkJCXZhciByZXR1cm5lZCA9IGZuICYmIGZuLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsNCgkJCQkJCQkJaWYgKCByZXR1cm5lZCAmJiBqUXVlcnkuaXNGdW5jdGlvbiggcmV0dXJuZWQucHJvbWlzZSApICkgew0KCQkJCQkJCQkJcmV0dXJuZWQucHJvbWlzZSgpDQoJCQkJCQkJCQkJLmRvbmUoIG5ld0RlZmVyLnJlc29sdmUgKQ0KCQkJCQkJCQkJCS5mYWlsKCBuZXdEZWZlci5yZWplY3QgKQ0KCQkJCQkJCQkJCS5wcm9ncmVzcyggbmV3RGVmZXIubm90aWZ5ICk7DQoJCQkJCQkJCX0gZWxzZSB7DQoJCQkJCQkJCQluZXdEZWZlclsgdHVwbGVbIDAgXSArICJXaXRoIiBdKCB0aGlzID09PSBwcm9taXNlID8gbmV3RGVmZXIucHJvbWlzZSgpIDogdGhpcywgZm4gPyBbIHJldHVybmVkIF0gOiBhcmd1bWVudHMgKTsNCgkJCQkJCQkJfQ0KCQkJCQkJCX0pOw0KCQkJCQkJfSk7DQoJCQkJCQlmbnMgPSBudWxsOw0KCQkJCQl9KS5wcm9taXNlKCk7DQoJCQkJfSwNCgkJCQkvLyBHZXQgYSBwcm9taXNlIGZvciB0aGlzIGRlZmVycmVkDQoJCQkJLy8gSWYgb2JqIGlzIHByb3ZpZGVkLCB0aGUgcHJvbWlzZSBhc3BlY3QgaXMgYWRkZWQgdG8gdGhlIG9iamVjdA0KCQkJCXByb21pc2U6IGZ1bmN0aW9uKCBvYmogKSB7DQoJCQkJCXJldHVybiBvYmogIT0gbnVsbCA/IGpRdWVyeS5leHRlbmQoIG9iaiwgcHJvbWlzZSApIDogcHJvbWlzZTsNCgkJCQl9DQoJCQl9LA0KCQkJZGVmZXJyZWQgPSB7fTsNCg0KCQkvLyBLZWVwIHBpcGUgZm9yIGJhY2stY29tcGF0DQoJCXByb21pc2UucGlwZSA9IHByb21pc2UudGhlbjsNCg0KCQkvLyBBZGQgbGlzdC1zcGVjaWZpYyBtZXRob2RzDQoJCWpRdWVyeS5lYWNoKCB0dXBsZXMsIGZ1bmN0aW9uKCBpLCB0dXBsZSApIHsNCgkJCXZhciBsaXN0ID0gdHVwbGVbIDIgXSwNCgkJCQlzdGF0ZVN0cmluZyA9IHR1cGxlWyAzIF07DQoNCgkJCS8vIHByb21pc2VbIGRvbmUgfCBmYWlsIHwgcHJvZ3Jlc3MgXSA9IGxpc3QuYWRkDQoJCQlwcm9taXNlWyB0dXBsZVsxXSBdID0gbGlzdC5hZGQ7DQoNCgkJCS8vIEhhbmRsZSBzdGF0ZQ0KCQkJaWYgKCBzdGF0ZVN0cmluZyApIHsNCgkJCQlsaXN0LmFkZChmdW5jdGlvbigpIHsNCgkJCQkJLy8gc3RhdGUgPSBbIHJlc29sdmVkIHwgcmVqZWN0ZWQgXQ0KCQkJCQlzdGF0ZSA9IHN0YXRlU3RyaW5nOw0KDQoJCQkJLy8gWyByZWplY3RfbGlzdCB8IHJlc29sdmVfbGlzdCBdLmRpc2FibGU7IHByb2dyZXNzX2xpc3QubG9jaw0KCQkJCX0sIHR1cGxlc1sgaSBeIDEgXVsgMiBdLmRpc2FibGUsIHR1cGxlc1sgMiBdWyAyIF0ubG9jayApOw0KCQkJfQ0KDQoJCQkvLyBkZWZlcnJlZFsgcmVzb2x2ZSB8IHJlamVjdCB8IG5vdGlmeSBdDQoJCQlkZWZlcnJlZFsgdHVwbGVbMF0gXSA9IGZ1bmN0aW9uKCkgew0KCQkJCWRlZmVycmVkWyB0dXBsZVswXSArICJXaXRoIiBdKCB0aGlzID09PSBkZWZlcnJlZCA/IHByb21pc2UgOiB0aGlzLCBhcmd1bWVudHMgKTsNCgkJCQlyZXR1cm4gdGhpczsNCgkJCX07DQoJCQlkZWZlcnJlZFsgdHVwbGVbMF0gKyAiV2l0aCIgXSA9IGxpc3QuZmlyZVdpdGg7DQoJCX0pOw0KDQoJCS8vIE1ha2UgdGhlIGRlZmVycmVkIGEgcHJvbWlzZQ0KCQlwcm9taXNlLnByb21pc2UoIGRlZmVycmVkICk7DQoNCgkJLy8gQ2FsbCBnaXZlbiBmdW5jIGlmIGFueQ0KCQlpZiAoIGZ1bmMgKSB7DQoJCQlmdW5jLmNhbGwoIGRlZmVycmVkLCBkZWZlcnJlZCApOw0KCQl9DQoNCgkJLy8gQWxsIGRvbmUhDQoJCXJldHVybiBkZWZlcnJlZDsNCgl9LA0KDQoJLy8gRGVmZXJyZWQgaGVscGVyDQoJd2hlbjogZnVuY3Rpb24oIHN1Ym9yZGluYXRlIC8qICwgLi4uLCBzdWJvcmRpbmF0ZU4gKi8gKSB7DQoJCXZhciBpID0gMCwNCgkJCXJlc29sdmVWYWx1ZXMgPSBzbGljZS5jYWxsKCBhcmd1bWVudHMgKSwNCgkJCWxlbmd0aCA9IHJlc29sdmVWYWx1ZXMubGVuZ3RoLA0KDQoJCQkvLyB0aGUgY291bnQgb2YgdW5jb21wbGV0ZWQgc3Vib3JkaW5hdGVzDQoJCQlyZW1haW5pbmcgPSBsZW5ndGggIT09IDEgfHwgKCBzdWJvcmRpbmF0ZSAmJiBqUXVlcnkuaXNGdW5jdGlvbiggc3Vib3JkaW5hdGUucHJvbWlzZSApICkgPyBsZW5ndGggOiAwLA0KDQoJCQkvLyB0aGUgbWFzdGVyIERlZmVycmVkLiBJZiByZXNvbHZlVmFsdWVzIGNvbnNpc3Qgb2Ygb25seSBhIHNpbmdsZSBEZWZlcnJlZCwganVzdCB1c2UgdGhhdC4NCgkJCWRlZmVycmVkID0gcmVtYWluaW5nID09PSAxID8gc3Vib3JkaW5hdGUgOiBqUXVlcnkuRGVmZXJyZWQoKSwNCg0KCQkJLy8gVXBkYXRlIGZ1bmN0aW9uIGZvciBib3RoIHJlc29sdmUgYW5kIHByb2dyZXNzIHZhbHVlcw0KCQkJdXBkYXRlRnVuYyA9IGZ1bmN0aW9uKCBpLCBjb250ZXh0cywgdmFsdWVzICkgew0KCQkJCXJldHVybiBmdW5jdGlvbiggdmFsdWUgKSB7DQoJCQkJCWNvbnRleHRzWyBpIF0gPSB0aGlzOw0KCQkJCQl2YWx1ZXNbIGkgXSA9IGFyZ3VtZW50cy5sZW5ndGggPiAxID8gc2xpY2UuY2FsbCggYXJndW1lbnRzICkgOiB2YWx1ZTsNCgkJCQkJaWYgKCB2YWx1ZXMgPT09IHByb2dyZXNzVmFsdWVzICkgew0KCQkJCQkJZGVmZXJyZWQubm90aWZ5V2l0aCggY29udGV4dHMsIHZhbHVlcyApOw0KCQkJCQl9IGVsc2UgaWYgKCAhKCAtLXJlbWFpbmluZyApICkgew0KCQkJCQkJZGVmZXJyZWQucmVzb2x2ZVdpdGgoIGNvbnRleHRzLCB2YWx1ZXMgKTsNCgkJCQkJfQ0KCQkJCX07DQoJCQl9LA0KDQoJCQlwcm9ncmVzc1ZhbHVlcywgcHJvZ3Jlc3NDb250ZXh0cywgcmVzb2x2ZUNvbnRleHRzOw0KDQoJCS8vIEFkZCBsaXN0ZW5lcnMgdG8gRGVmZXJyZWQgc3Vib3JkaW5hdGVzOyB0cmVhdCBvdGhlcnMgYXMgcmVzb2x2ZWQNCgkJaWYgKCBsZW5ndGggPiAxICkgew0KCQkJcHJvZ3Jlc3NWYWx1ZXMgPSBuZXcgQXJyYXkoIGxlbmd0aCApOw0KCQkJcHJvZ3Jlc3NDb250ZXh0cyA9IG5ldyBBcnJheSggbGVuZ3RoICk7DQoJCQlyZXNvbHZlQ29udGV4dHMgPSBuZXcgQXJyYXkoIGxlbmd0aCApOw0KCQkJZm9yICggOyBpIDwgbGVuZ3RoOyBpKysgKSB7DQoJCQkJaWYgKCByZXNvbHZlVmFsdWVzWyBpIF0gJiYgalF1ZXJ5LmlzRnVuY3Rpb24oIHJlc29sdmVWYWx1ZXNbIGkgXS5wcm9taXNlICkgKSB7DQoJCQkJCXJlc29sdmVWYWx1ZXNbIGkgXS5wcm9taXNlKCkNCgkJCQkJCS5kb25lKCB1cGRhdGVGdW5jKCBpLCByZXNvbHZlQ29udGV4dHMsIHJlc29sdmVWYWx1ZXMgKSApDQoJCQkJCQkuZmFpbCggZGVmZXJyZWQucmVqZWN0ICkNCgkJCQkJCS5wcm9ncmVzcyggdXBkYXRlRnVuYyggaSwgcHJvZ3Jlc3NDb250ZXh0cywgcHJvZ3Jlc3NWYWx1ZXMgKSApOw0KCQkJCX0gZWxzZSB7DQoJCQkJCS0tcmVtYWluaW5nOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCS8vIElmIHdlJ3JlIG5vdCB3YWl0aW5nIG9uIGFueXRoaW5nLCByZXNvbHZlIHRoZSBtYXN0ZXINCgkJaWYgKCAhcmVtYWluaW5nICkgew0KCQkJZGVmZXJyZWQucmVzb2x2ZVdpdGgoIHJlc29sdmVDb250ZXh0cywgcmVzb2x2ZVZhbHVlcyApOw0KCQl9DQoNCgkJcmV0dXJuIGRlZmVycmVkLnByb21pc2UoKTsNCgl9DQp9KTsNCg0KDQovLyBUaGUgZGVmZXJyZWQgdXNlZCBvbiBET00gcmVhZHkNCnZhciByZWFkeUxpc3Q7DQoNCmpRdWVyeS5mbi5yZWFkeSA9IGZ1bmN0aW9uKCBmbiApIHsNCgkvLyBBZGQgdGhlIGNhbGxiYWNrDQoJalF1ZXJ5LnJlYWR5LnByb21pc2UoKS5kb25lKCBmbiApOw0KDQoJcmV0dXJuIHRoaXM7DQp9Ow0KDQpqUXVlcnkuZXh0ZW5kKHsNCgkvLyBJcyB0aGUgRE9NIHJlYWR5IHRvIGJlIHVzZWQ/IFNldCB0byB0cnVlIG9uY2UgaXQgb2NjdXJzLg0KCWlzUmVhZHk6IGZhbHNlLA0KDQoJLy8gQSBjb3VudGVyIHRvIHRyYWNrIGhvdyBtYW55IGl0ZW1zIHRvIHdhaXQgZm9yIGJlZm9yZQ0KCS8vIHRoZSByZWFkeSBldmVudCBmaXJlcy4gU2VlICM2NzgxDQoJcmVhZHlXYWl0OiAxLA0KDQoJLy8gSG9sZCAob3IgcmVsZWFzZSkgdGhlIHJlYWR5IGV2ZW50DQoJaG9sZFJlYWR5OiBmdW5jdGlvbiggaG9sZCApIHsNCgkJaWYgKCBob2xkICkgew0KCQkJalF1ZXJ5LnJlYWR5V2FpdCsrOw0KCQl9IGVsc2Ugew0KCQkJalF1ZXJ5LnJlYWR5KCB0cnVlICk7DQoJCX0NCgl9LA0KDQoJLy8gSGFuZGxlIHdoZW4gdGhlIERPTSBpcyByZWFkeQ0KCXJlYWR5OiBmdW5jdGlvbiggd2FpdCApIHsNCg0KCQkvLyBBYm9ydCBpZiB0aGVyZSBhcmUgcGVuZGluZyBob2xkcyBvciB3ZSdyZSBhbHJlYWR5IHJlYWR5DQoJCWlmICggd2FpdCA9PT0gdHJ1ZSA/IC0talF1ZXJ5LnJlYWR5V2FpdCA6IGpRdWVyeS5pc1JlYWR5ICkgew0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJLy8gUmVtZW1iZXIgdGhhdCB0aGUgRE9NIGlzIHJlYWR5DQoJCWpRdWVyeS5pc1JlYWR5ID0gdHJ1ZTsNCg0KCQkvLyBJZiBhIG5vcm1hbCBET00gUmVhZHkgZXZlbnQgZmlyZWQsIGRlY3JlbWVudCwgYW5kIHdhaXQgaWYgbmVlZCBiZQ0KCQlpZiAoIHdhaXQgIT09IHRydWUgJiYgLS1qUXVlcnkucmVhZHlXYWl0ID4gMCApIHsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCS8vIElmIHRoZXJlIGFyZSBmdW5jdGlvbnMgYm91bmQsIHRvIGV4ZWN1dGUNCgkJcmVhZHlMaXN0LnJlc29sdmVXaXRoKCBkb2N1bWVudCwgWyBqUXVlcnkgXSApOw0KDQoJCS8vIFRyaWdnZXIgYW55IGJvdW5kIHJlYWR5IGV2ZW50cw0KCQlpZiAoIGpRdWVyeS5mbi50cmlnZ2VySGFuZGxlciApIHsNCgkJCWpRdWVyeSggZG9jdW1lbnQgKS50cmlnZ2VySGFuZGxlciggInJlYWR5IiApOw0KCQkJalF1ZXJ5KCBkb2N1bWVudCApLm9mZiggInJlYWR5IiApOw0KCQl9DQoJfQ0KfSk7DQoNCi8qKg0KICogVGhlIHJlYWR5IGV2ZW50IGhhbmRsZXIgYW5kIHNlbGYgY2xlYW51cCBtZXRob2QNCiAqLw0KZnVuY3Rpb24gY29tcGxldGVkKCkgew0KCWRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoICJET01Db250ZW50TG9hZGVkIiwgY29tcGxldGVkLCBmYWxzZSApOw0KCXdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCAibG9hZCIsIGNvbXBsZXRlZCwgZmFsc2UgKTsNCglqUXVlcnkucmVhZHkoKTsNCn0NCg0KalF1ZXJ5LnJlYWR5LnByb21pc2UgPSBmdW5jdGlvbiggb2JqICkgew0KCWlmICggIXJlYWR5TGlzdCApIHsNCg0KCQlyZWFkeUxpc3QgPSBqUXVlcnkuRGVmZXJyZWQoKTsNCg0KCQkvLyBDYXRjaCBjYXNlcyB3aGVyZSAkKGRvY3VtZW50KS5yZWFkeSgpIGlzIGNhbGxlZCBhZnRlciB0aGUgYnJvd3NlciBldmVudCBoYXMgYWxyZWFkeSBvY2N1cnJlZC4NCgkJLy8gV2Ugb25jZSB0cmllZCB0byB1c2UgcmVhZHlTdGF0ZSAiaW50ZXJhY3RpdmUiIGhlcmUsIGJ1dCBpdCBjYXVzZWQgaXNzdWVzIGxpa2UgdGhlIG9uZQ0KCQkvLyBkaXNjb3ZlcmVkIGJ5IENocmlzUyBoZXJlOiBodHRwOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC8xMjI4MiNjb21tZW50OjE1DQoJCWlmICggZG9jdW1lbnQucmVhZHlTdGF0ZSA9PT0gImNvbXBsZXRlIiApIHsNCgkJCS8vIEhhbmRsZSBpdCBhc3luY2hyb25vdXNseSB0byBhbGxvdyBzY3JpcHRzIHRoZSBvcHBvcnR1bml0eSB0byBkZWxheSByZWFkeQ0KCQkJc2V0VGltZW91dCggalF1ZXJ5LnJlYWR5ICk7DQoNCgkJfSBlbHNlIHsNCg0KCQkJLy8gVXNlIHRoZSBoYW5keSBldmVudCBjYWxsYmFjaw0KCQkJZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lciggIkRPTUNvbnRlbnRMb2FkZWQiLCBjb21wbGV0ZWQsIGZhbHNlICk7DQoNCgkJCS8vIEEgZmFsbGJhY2sgdG8gd2luZG93Lm9ubG9hZCwgdGhhdCB3aWxsIGFsd2F5cyB3b3JrDQoJCQl3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lciggImxvYWQiLCBjb21wbGV0ZWQsIGZhbHNlICk7DQoJCX0NCgl9DQoJcmV0dXJuIHJlYWR5TGlzdC5wcm9taXNlKCBvYmogKTsNCn07DQoNCi8vIEtpY2sgb2ZmIHRoZSBET00gcmVhZHkgY2hlY2sgZXZlbiBpZiB0aGUgdXNlciBkb2VzIG5vdA0KalF1ZXJ5LnJlYWR5LnByb21pc2UoKTsNCg0KDQoNCg0KLy8gTXVsdGlmdW5jdGlvbmFsIG1ldGhvZCB0byBnZXQgYW5kIHNldCB2YWx1ZXMgb2YgYSBjb2xsZWN0aW9uDQovLyBUaGUgdmFsdWUvcyBjYW4gb3B0aW9uYWxseSBiZSBleGVjdXRlZCBpZiBpdCdzIGEgZnVuY3Rpb24NCnZhciBhY2Nlc3MgPSBqUXVlcnkuYWNjZXNzID0gZnVuY3Rpb24oIGVsZW1zLCBmbiwga2V5LCB2YWx1ZSwgY2hhaW5hYmxlLCBlbXB0eUdldCwgcmF3ICkgew0KCXZhciBpID0gMCwNCgkJbGVuID0gZWxlbXMubGVuZ3RoLA0KCQlidWxrID0ga2V5ID09IG51bGw7DQoNCgkvLyBTZXRzIG1hbnkgdmFsdWVzDQoJaWYgKCBqUXVlcnkudHlwZSgga2V5ICkgPT09ICJvYmplY3QiICkgew0KCQljaGFpbmFibGUgPSB0cnVlOw0KCQlmb3IgKCBpIGluIGtleSApIHsNCgkJCWpRdWVyeS5hY2Nlc3MoIGVsZW1zLCBmbiwgaSwga2V5W2ldLCB0cnVlLCBlbXB0eUdldCwgcmF3ICk7DQoJCX0NCg0KCS8vIFNldHMgb25lIHZhbHVlDQoJfSBlbHNlIGlmICggdmFsdWUgIT09IHVuZGVmaW5lZCApIHsNCgkJY2hhaW5hYmxlID0gdHJ1ZTsNCg0KCQlpZiAoICFqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWUgKSApIHsNCgkJCXJhdyA9IHRydWU7DQoJCX0NCg0KCQlpZiAoIGJ1bGsgKSB7DQoJCQkvLyBCdWxrIG9wZXJhdGlvbnMgcnVuIGFnYWluc3QgdGhlIGVudGlyZSBzZXQNCgkJCWlmICggcmF3ICkgew0KCQkJCWZuLmNhbGwoIGVsZW1zLCB2YWx1ZSApOw0KCQkJCWZuID0gbnVsbDsNCg0KCQkJLy8gLi4uZXhjZXB0IHdoZW4gZXhlY3V0aW5nIGZ1bmN0aW9uIHZhbHVlcw0KCQkJfSBlbHNlIHsNCgkJCQlidWxrID0gZm47DQoJCQkJZm4gPSBmdW5jdGlvbiggZWxlbSwga2V5LCB2YWx1ZSApIHsNCgkJCQkJcmV0dXJuIGJ1bGsuY2FsbCggalF1ZXJ5KCBlbGVtICksIHZhbHVlICk7DQoJCQkJfTsNCgkJCX0NCgkJfQ0KDQoJCWlmICggZm4gKSB7DQoJCQlmb3IgKCA7IGkgPCBsZW47IGkrKyApIHsNCgkJCQlmbiggZWxlbXNbaV0sIGtleSwgcmF3ID8gdmFsdWUgOiB2YWx1ZS5jYWxsKCBlbGVtc1tpXSwgaSwgZm4oIGVsZW1zW2ldLCBrZXkgKSApICk7DQoJCQl9DQoJCX0NCgl9DQoNCglyZXR1cm4gY2hhaW5hYmxlID8NCgkJZWxlbXMgOg0KDQoJCS8vIEdldHMNCgkJYnVsayA/DQoJCQlmbi5jYWxsKCBlbGVtcyApIDoNCgkJCWxlbiA/IGZuKCBlbGVtc1swXSwga2V5ICkgOiBlbXB0eUdldDsNCn07DQoNCg0KLyoqDQogKiBEZXRlcm1pbmVzIHdoZXRoZXIgYW4gb2JqZWN0IGNhbiBoYXZlIGRhdGENCiAqLw0KalF1ZXJ5LmFjY2VwdERhdGEgPSBmdW5jdGlvbiggb3duZXIgKSB7DQoJLy8gQWNjZXB0cyBvbmx5Og0KCS8vICAtIE5vZGUNCgkvLyAgICAtIE5vZGUuRUxFTUVOVF9OT0RFDQoJLy8gICAgLSBOb2RlLkRPQ1VNRU5UX05PREUNCgkvLyAgLSBPYmplY3QNCgkvLyAgICAtIEFueQ0KCS8qIGpzaGludCAtVzAxOCAqLw0KCXJldHVybiBvd25lci5ub2RlVHlwZSA9PT0gMSB8fCBvd25lci5ub2RlVHlwZSA9PT0gOSB8fCAhKCArb3duZXIubm9kZVR5cGUgKTsNCn07DQoNCg0KZnVuY3Rpb24gRGF0YSgpIHsNCgkvLyBTdXBwb3J0OiBBbmRyb2lkPDQsDQoJLy8gT2xkIFdlYktpdCBkb2VzIG5vdCBoYXZlIE9iamVjdC5wcmV2ZW50RXh0ZW5zaW9ucy9mcmVlemUgbWV0aG9kLA0KCS8vIHJldHVybiBuZXcgZW1wdHkgb2JqZWN0IGluc3RlYWQgd2l0aCBubyBbW3NldF1dIGFjY2Vzc29yDQoJT2JqZWN0LmRlZmluZVByb3BlcnR5KCB0aGlzLmNhY2hlID0ge30sIDAsIHsNCgkJZ2V0OiBmdW5jdGlvbigpIHsNCgkJCXJldHVybiB7fTsNCgkJfQ0KCX0pOw0KDQoJdGhpcy5leHBhbmRvID0galF1ZXJ5LmV4cGFuZG8gKyBEYXRhLnVpZCsrOw0KfQ0KDQpEYXRhLnVpZCA9IDE7DQpEYXRhLmFjY2VwdHMgPSBqUXVlcnkuYWNjZXB0RGF0YTsNCg0KRGF0YS5wcm90b3R5cGUgPSB7DQoJa2V5OiBmdW5jdGlvbiggb3duZXIgKSB7DQoJCS8vIFdlIGNhbiBhY2NlcHQgZGF0YSBmb3Igbm9uLWVsZW1lbnQgbm9kZXMgaW4gbW9kZXJuIGJyb3dzZXJzLA0KCQkvLyBidXQgd2Ugc2hvdWxkIG5vdCwgc2VlICM4MzM1Lg0KCQkvLyBBbHdheXMgcmV0dXJuIHRoZSBrZXkgZm9yIGEgZnJvemVuIG9iamVjdC4NCgkJaWYgKCAhRGF0YS5hY2NlcHRzKCBvd25lciApICkgew0KCQkJcmV0dXJuIDA7DQoJCX0NCg0KCQl2YXIgZGVzY3JpcHRvciA9IHt9LA0KCQkJLy8gQ2hlY2sgaWYgdGhlIG93bmVyIG9iamVjdCBhbHJlYWR5IGhhcyBhIGNhY2hlIGtleQ0KCQkJdW5sb2NrID0gb3duZXJbIHRoaXMuZXhwYW5kbyBdOw0KDQoJCS8vIElmIG5vdCwgY3JlYXRlIG9uZQ0KCQlpZiAoICF1bmxvY2sgKSB7DQoJCQl1bmxvY2sgPSBEYXRhLnVpZCsrOw0KDQoJCQkvLyBTZWN1cmUgaXQgaW4gYSBub24tZW51bWVyYWJsZSwgbm9uLXdyaXRhYmxlIHByb3BlcnR5DQoJCQl0cnkgew0KCQkJCWRlc2NyaXB0b3JbIHRoaXMuZXhwYW5kbyBdID0geyB2YWx1ZTogdW5sb2NrIH07DQoJCQkJT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoIG93bmVyLCBkZXNjcmlwdG9yICk7DQoNCgkJCS8vIFN1cHBvcnQ6IEFuZHJvaWQ8NA0KCQkJLy8gRmFsbGJhY2sgdG8gYSBsZXNzIHNlY3VyZSBkZWZpbml0aW9uDQoJCQl9IGNhdGNoICggZSApIHsNCgkJCQlkZXNjcmlwdG9yWyB0aGlzLmV4cGFuZG8gXSA9IHVubG9jazsNCgkJCQlqUXVlcnkuZXh0ZW5kKCBvd25lciwgZGVzY3JpcHRvciApOw0KCQkJfQ0KCQl9DQoNCgkJLy8gRW5zdXJlIHRoZSBjYWNoZSBvYmplY3QNCgkJaWYgKCAhdGhpcy5jYWNoZVsgdW5sb2NrIF0gKSB7DQoJCQl0aGlzLmNhY2hlWyB1bmxvY2sgXSA9IHt9Ow0KCQl9DQoNCgkJcmV0dXJuIHVubG9jazsNCgl9LA0KCXNldDogZnVuY3Rpb24oIG93bmVyLCBkYXRhLCB2YWx1ZSApIHsNCgkJdmFyIHByb3AsDQoJCQkvLyBUaGVyZSBtYXkgYmUgYW4gdW5sb2NrIGFzc2lnbmVkIHRvIHRoaXMgbm9kZSwNCgkJCS8vIGlmIHRoZXJlIGlzIG5vIGVudHJ5IGZvciB0aGlzICJvd25lciIsIGNyZWF0ZSBvbmUgaW5saW5lDQoJCQkvLyBhbmQgc2V0IHRoZSB1bmxvY2sgYXMgdGhvdWdoIGFuIG93bmVyIGVudHJ5IGhhZCBhbHdheXMgZXhpc3RlZA0KCQkJdW5sb2NrID0gdGhpcy5rZXkoIG93bmVyICksDQoJCQljYWNoZSA9IHRoaXMuY2FjaGVbIHVubG9jayBdOw0KDQoJCS8vIEhhbmRsZTogWyBvd25lciwga2V5LCB2YWx1ZSBdIGFyZ3MNCgkJaWYgKCB0eXBlb2YgZGF0YSA9PT0gInN0cmluZyIgKSB7DQoJCQljYWNoZVsgZGF0YSBdID0gdmFsdWU7DQoNCgkJLy8gSGFuZGxlOiBbIG93bmVyLCB7IHByb3BlcnRpZXMgfSBdIGFyZ3MNCgkJfSBlbHNlIHsNCgkJCS8vIEZyZXNoIGFzc2lnbm1lbnRzIGJ5IG9iamVjdCBhcmUgc2hhbGxvdyBjb3BpZWQNCgkJCWlmICggalF1ZXJ5LmlzRW1wdHlPYmplY3QoIGNhY2hlICkgKSB7DQoJCQkJalF1ZXJ5LmV4dGVuZCggdGhpcy5jYWNoZVsgdW5sb2NrIF0sIGRhdGEgKTsNCgkJCS8vIE90aGVyd2lzZSwgY29weSB0aGUgcHJvcGVydGllcyBvbmUtYnktb25lIHRvIHRoZSBjYWNoZSBvYmplY3QNCgkJCX0gZWxzZSB7DQoJCQkJZm9yICggcHJvcCBpbiBkYXRhICkgew0KCQkJCQljYWNoZVsgcHJvcCBdID0gZGF0YVsgcHJvcCBdOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQlyZXR1cm4gY2FjaGU7DQoJfSwNCglnZXQ6IGZ1bmN0aW9uKCBvd25lciwga2V5ICkgew0KCQkvLyBFaXRoZXIgYSB2YWxpZCBjYWNoZSBpcyBmb3VuZCwgb3Igd2lsbCBiZSBjcmVhdGVkLg0KCQkvLyBOZXcgY2FjaGVzIHdpbGwgYmUgY3JlYXRlZCBhbmQgdGhlIHVubG9jayByZXR1cm5lZCwNCgkJLy8gYWxsb3dpbmcgZGlyZWN0IGFjY2VzcyB0byB0aGUgbmV3bHkgY3JlYXRlZA0KCQkvLyBlbXB0eSBkYXRhIG9iamVjdC4gQSB2YWxpZCBvd25lciBvYmplY3QgbXVzdCBiZSBwcm92aWRlZC4NCgkJdmFyIGNhY2hlID0gdGhpcy5jYWNoZVsgdGhpcy5rZXkoIG93bmVyICkgXTsNCg0KCQlyZXR1cm4ga2V5ID09PSB1bmRlZmluZWQgPw0KCQkJY2FjaGUgOiBjYWNoZVsga2V5IF07DQoJfSwNCglhY2Nlc3M6IGZ1bmN0aW9uKCBvd25lciwga2V5LCB2YWx1ZSApIHsNCgkJdmFyIHN0b3JlZDsNCgkJLy8gSW4gY2FzZXMgd2hlcmUgZWl0aGVyOg0KCQkvLw0KCQkvLyAgIDEuIE5vIGtleSB3YXMgc3BlY2lmaWVkDQoJCS8vICAgMi4gQSBzdHJpbmcga2V5IHdhcyBzcGVjaWZpZWQsIGJ1dCBubyB2YWx1ZSBwcm92aWRlZA0KCQkvLw0KCQkvLyBUYWtlIHRoZSAicmVhZCIgcGF0aCBhbmQgYWxsb3cgdGhlIGdldCBtZXRob2QgdG8gZGV0ZXJtaW5lDQoJCS8vIHdoaWNoIHZhbHVlIHRvIHJldHVybiwgcmVzcGVjdGl2ZWx5IGVpdGhlcjoNCgkJLy8NCgkJLy8gICAxLiBUaGUgZW50aXJlIGNhY2hlIG9iamVjdA0KCQkvLyAgIDIuIFRoZSBkYXRhIHN0b3JlZCBhdCB0aGUga2V5DQoJCS8vDQoJCWlmICgga2V5ID09PSB1bmRlZmluZWQgfHwNCgkJCQkoKGtleSAmJiB0eXBlb2Yga2V5ID09PSAic3RyaW5nIikgJiYgdmFsdWUgPT09IHVuZGVmaW5lZCkgKSB7DQoNCgkJCXN0b3JlZCA9IHRoaXMuZ2V0KCBvd25lciwga2V5ICk7DQoNCgkJCXJldHVybiBzdG9yZWQgIT09IHVuZGVmaW5lZCA/DQoJCQkJc3RvcmVkIDogdGhpcy5nZXQoIG93bmVyLCBqUXVlcnkuY2FtZWxDYXNlKGtleSkgKTsNCgkJfQ0KDQoJCS8vIFsqXVdoZW4gdGhlIGtleSBpcyBub3QgYSBzdHJpbmcsIG9yIGJvdGggYSBrZXkgYW5kIHZhbHVlDQoJCS8vIGFyZSBzcGVjaWZpZWQsIHNldCBvciBleHRlbmQgKGV4aXN0aW5nIG9iamVjdHMpIHdpdGggZWl0aGVyOg0KCQkvLw0KCQkvLyAgIDEuIEFuIG9iamVjdCBvZiBwcm9wZXJ0aWVzDQoJCS8vICAgMi4gQSBrZXkgYW5kIHZhbHVlDQoJCS8vDQoJCXRoaXMuc2V0KCBvd25lciwga2V5LCB2YWx1ZSApOw0KDQoJCS8vIFNpbmNlIHRoZSAic2V0IiBwYXRoIGNhbiBoYXZlIHR3byBwb3NzaWJsZSBlbnRyeSBwb2ludHMNCgkJLy8gcmV0dXJuIHRoZSBleHBlY3RlZCBkYXRhIGJhc2VkIG9uIHdoaWNoIHBhdGggd2FzIHRha2VuWypdDQoJCXJldHVybiB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiBrZXk7DQoJfSwNCglyZW1vdmU6IGZ1bmN0aW9uKCBvd25lciwga2V5ICkgew0KCQl2YXIgaSwgbmFtZSwgY2FtZWwsDQoJCQl1bmxvY2sgPSB0aGlzLmtleSggb3duZXIgKSwNCgkJCWNhY2hlID0gdGhpcy5jYWNoZVsgdW5sb2NrIF07DQoNCgkJaWYgKCBrZXkgPT09IHVuZGVmaW5lZCApIHsNCgkJCXRoaXMuY2FjaGVbIHVubG9jayBdID0ge307DQoNCgkJfSBlbHNlIHsNCgkJCS8vIFN1cHBvcnQgYXJyYXkgb3Igc3BhY2Ugc2VwYXJhdGVkIHN0cmluZyBvZiBrZXlzDQoJCQlpZiAoIGpRdWVyeS5pc0FycmF5KCBrZXkgKSApIHsNCgkJCQkvLyBJZiAibmFtZSIgaXMgYW4gYXJyYXkgb2Yga2V5cy4uLg0KCQkJCS8vIFdoZW4gZGF0YSBpcyBpbml0aWFsbHkgY3JlYXRlZCwgdmlhICgia2V5IiwgInZhbCIpIHNpZ25hdHVyZSwNCgkJCQkvLyBrZXlzIHdpbGwgYmUgY29udmVydGVkIHRvIGNhbWVsQ2FzZS4NCgkJCQkvLyBTaW5jZSB0aGVyZSBpcyBubyB3YXkgdG8gdGVsbCBfaG93XyBhIGtleSB3YXMgYWRkZWQsIHJlbW92ZQ0KCQkJCS8vIGJvdGggcGxhaW4ga2V5IGFuZCBjYW1lbENhc2Uga2V5LiAjMTI3ODYNCgkJCQkvLyBUaGlzIHdpbGwgb25seSBwZW5hbGl6ZSB0aGUgYXJyYXkgYXJndW1lbnQgcGF0aC4NCgkJCQluYW1lID0ga2V5LmNvbmNhdCgga2V5Lm1hcCggalF1ZXJ5LmNhbWVsQ2FzZSApICk7DQoJCQl9IGVsc2Ugew0KCQkJCWNhbWVsID0galF1ZXJ5LmNhbWVsQ2FzZSgga2V5ICk7DQoJCQkJLy8gVHJ5IHRoZSBzdHJpbmcgYXMgYSBrZXkgYmVmb3JlIGFueSBtYW5pcHVsYXRpb24NCgkJCQlpZiAoIGtleSBpbiBjYWNoZSApIHsNCgkJCQkJbmFtZSA9IFsga2V5LCBjYW1lbCBdOw0KCQkJCX0gZWxzZSB7DQoJCQkJCS8vIElmIGEga2V5IHdpdGggdGhlIHNwYWNlcyBleGlzdHMsIHVzZSBpdC4NCgkJCQkJLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYW4gYXJyYXkgYnkgbWF0Y2hpbmcgbm9uLXdoaXRlc3BhY2UNCgkJCQkJbmFtZSA9IGNhbWVsOw0KCQkJCQluYW1lID0gbmFtZSBpbiBjYWNoZSA/DQoJCQkJCQlbIG5hbWUgXSA6ICggbmFtZS5tYXRjaCggcm5vdHdoaXRlICkgfHwgW10gKTsNCgkJCQl9DQoJCQl9DQoNCgkJCWkgPSBuYW1lLmxlbmd0aDsNCgkJCXdoaWxlICggaS0tICkgew0KCQkJCWRlbGV0ZSBjYWNoZVsgbmFtZVsgaSBdIF07DQoJCQl9DQoJCX0NCgl9LA0KCWhhc0RhdGE6IGZ1bmN0aW9uKCBvd25lciApIHsNCgkJcmV0dXJuICFqUXVlcnkuaXNFbXB0eU9iamVjdCgNCgkJCXRoaXMuY2FjaGVbIG93bmVyWyB0aGlzLmV4cGFuZG8gXSBdIHx8IHt9DQoJCSk7DQoJfSwNCglkaXNjYXJkOiBmdW5jdGlvbiggb3duZXIgKSB7DQoJCWlmICggb3duZXJbIHRoaXMuZXhwYW5kbyBdICkgew0KCQkJZGVsZXRlIHRoaXMuY2FjaGVbIG93bmVyWyB0aGlzLmV4cGFuZG8gXSBdOw0KCQl9DQoJfQ0KfTsNCnZhciBkYXRhX3ByaXYgPSBuZXcgRGF0YSgpOw0KDQp2YXIgZGF0YV91c2VyID0gbmV3IERhdGEoKTsNCg0KDQoNCi8vCUltcGxlbWVudGF0aW9uIFN1bW1hcnkNCi8vDQovLwkxLiBFbmZvcmNlIEFQSSBzdXJmYWNlIGFuZCBzZW1hbnRpYyBjb21wYXRpYmlsaXR5IHdpdGggMS45LnggYnJhbmNoDQovLwkyLiBJbXByb3ZlIHRoZSBtb2R1bGUncyBtYWludGFpbmFiaWxpdHkgYnkgcmVkdWNpbmcgdGhlIHN0b3JhZ2UNCi8vCQlwYXRocyB0byBhIHNpbmdsZSBtZWNoYW5pc20uDQovLwkzLiBVc2UgdGhlIHNhbWUgc2luZ2xlIG1lY2hhbmlzbSB0byBzdXBwb3J0ICJwcml2YXRlIiBhbmQgInVzZXIiIGRhdGEuDQovLwk0LiBfTmV2ZXJfIGV4cG9zZSAicHJpdmF0ZSIgZGF0YSB0byB1c2VyIGNvZGUgKFRPRE86IERyb3AgX2RhdGEsIF9yZW1vdmVEYXRhKQ0KLy8JNS4gQXZvaWQgZXhwb3NpbmcgaW1wbGVtZW50YXRpb24gZGV0YWlscyBvbiB1c2VyIG9iamVjdHMgKGVnLiBleHBhbmRvIHByb3BlcnRpZXMpDQovLwk2LiBQcm92aWRlIGEgY2xlYXIgcGF0aCBmb3IgaW1wbGVtZW50YXRpb24gdXBncmFkZSB0byBXZWFrTWFwIGluIDIwMTQNCg0KdmFyIHJicmFjZSA9IC9eKD86XHtbXHdcV10qXH18XFtbXHdcV10qXF0pJC8sDQoJcm11bHRpRGFzaCA9IC8oW0EtWl0pL2c7DQoNCmZ1bmN0aW9uIGRhdGFBdHRyKCBlbGVtLCBrZXksIGRhdGEgKSB7DQoJdmFyIG5hbWU7DQoNCgkvLyBJZiBub3RoaW5nIHdhcyBmb3VuZCBpbnRlcm5hbGx5LCB0cnkgdG8gZmV0Y2ggYW55DQoJLy8gZGF0YSBmcm9tIHRoZSBIVE1MNSBkYXRhLSogYXR0cmlidXRlDQoJaWYgKCBkYXRhID09PSB1bmRlZmluZWQgJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsNCgkJbmFtZSA9ICJkYXRhLSIgKyBrZXkucmVwbGFjZSggcm11bHRpRGFzaCwgIi0kMSIgKS50b0xvd2VyQ2FzZSgpOw0KCQlkYXRhID0gZWxlbS5nZXRBdHRyaWJ1dGUoIG5hbWUgKTsNCg0KCQlpZiAoIHR5cGVvZiBkYXRhID09PSAic3RyaW5nIiApIHsNCgkJCXRyeSB7DQoJCQkJZGF0YSA9IGRhdGEgPT09ICJ0cnVlIiA/IHRydWUgOg0KCQkJCQlkYXRhID09PSAiZmFsc2UiID8gZmFsc2UgOg0KCQkJCQlkYXRhID09PSAibnVsbCIgPyBudWxsIDoNCgkJCQkJLy8gT25seSBjb252ZXJ0IHRvIGEgbnVtYmVyIGlmIGl0IGRvZXNuJ3QgY2hhbmdlIHRoZSBzdHJpbmcNCgkJCQkJK2RhdGEgKyAiIiA9PT0gZGF0YSA/ICtkYXRhIDoNCgkJCQkJcmJyYWNlLnRlc3QoIGRhdGEgKSA/IGpRdWVyeS5wYXJzZUpTT04oIGRhdGEgKSA6DQoJCQkJCWRhdGE7DQoJCQl9IGNhdGNoKCBlICkge30NCg0KCQkJLy8gTWFrZSBzdXJlIHdlIHNldCB0aGUgZGF0YSBzbyBpdCBpc24ndCBjaGFuZ2VkIGxhdGVyDQoJCQlkYXRhX3VzZXIuc2V0KCBlbGVtLCBrZXksIGRhdGEgKTsNCgkJfSBlbHNlIHsNCgkJCWRhdGEgPSB1bmRlZmluZWQ7DQoJCX0NCgl9DQoJcmV0dXJuIGRhdGE7DQp9DQoNCmpRdWVyeS5leHRlbmQoew0KCWhhc0RhdGE6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQlyZXR1cm4gZGF0YV91c2VyLmhhc0RhdGEoIGVsZW0gKSB8fCBkYXRhX3ByaXYuaGFzRGF0YSggZWxlbSApOw0KCX0sDQoNCglkYXRhOiBmdW5jdGlvbiggZWxlbSwgbmFtZSwgZGF0YSApIHsNCgkJcmV0dXJuIGRhdGFfdXNlci5hY2Nlc3MoIGVsZW0sIG5hbWUsIGRhdGEgKTsNCgl9LA0KDQoJcmVtb3ZlRGF0YTogZnVuY3Rpb24oIGVsZW0sIG5hbWUgKSB7DQoJCWRhdGFfdXNlci5yZW1vdmUoIGVsZW0sIG5hbWUgKTsNCgl9LA0KDQoJLy8gVE9ETzogTm93IHRoYXQgYWxsIGNhbGxzIHRvIF9kYXRhIGFuZCBfcmVtb3ZlRGF0YSBoYXZlIGJlZW4gcmVwbGFjZWQNCgkvLyB3aXRoIGRpcmVjdCBjYWxscyB0byBkYXRhX3ByaXYgbWV0aG9kcywgdGhlc2UgY2FuIGJlIGRlcHJlY2F0ZWQuDQoJX2RhdGE6IGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCBkYXRhICkgew0KCQlyZXR1cm4gZGF0YV9wcml2LmFjY2VzcyggZWxlbSwgbmFtZSwgZGF0YSApOw0KCX0sDQoNCglfcmVtb3ZlRGF0YTogZnVuY3Rpb24oIGVsZW0sIG5hbWUgKSB7DQoJCWRhdGFfcHJpdi5yZW1vdmUoIGVsZW0sIG5hbWUgKTsNCgl9DQp9KTsNCg0KalF1ZXJ5LmZuLmV4dGVuZCh7DQoJZGF0YTogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7DQoJCXZhciBpLCBuYW1lLCBkYXRhLA0KCQkJZWxlbSA9IHRoaXNbIDAgXSwNCgkJCWF0dHJzID0gZWxlbSAmJiBlbGVtLmF0dHJpYnV0ZXM7DQoNCgkJLy8gR2V0cyBhbGwgdmFsdWVzDQoJCWlmICgga2V5ID09PSB1bmRlZmluZWQgKSB7DQoJCQlpZiAoIHRoaXMubGVuZ3RoICkgew0KCQkJCWRhdGEgPSBkYXRhX3VzZXIuZ2V0KCBlbGVtICk7DQoNCgkJCQlpZiAoIGVsZW0ubm9kZVR5cGUgPT09IDEgJiYgIWRhdGFfcHJpdi5nZXQoIGVsZW0sICJoYXNEYXRhQXR0cnMiICkgKSB7DQoJCQkJCWkgPSBhdHRycy5sZW5ndGg7DQoJCQkJCXdoaWxlICggaS0tICkgew0KDQoJCQkJCQkvLyBTdXBwb3J0OiBJRTExKw0KCQkJCQkJLy8gVGhlIGF0dHJzIGVsZW1lbnRzIGNhbiBiZSBudWxsICgjMTQ4OTQpDQoJCQkJCQlpZiAoIGF0dHJzWyBpIF0gKSB7DQoJCQkJCQkJbmFtZSA9IGF0dHJzWyBpIF0ubmFtZTsNCgkJCQkJCQlpZiAoIG5hbWUuaW5kZXhPZiggImRhdGEtIiApID09PSAwICkgew0KCQkJCQkJCQluYW1lID0galF1ZXJ5LmNhbWVsQ2FzZSggbmFtZS5zbGljZSg1KSApOw0KCQkJCQkJCQlkYXRhQXR0ciggZWxlbSwgbmFtZSwgZGF0YVsgbmFtZSBdICk7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJCWRhdGFfcHJpdi5zZXQoIGVsZW0sICJoYXNEYXRhQXR0cnMiLCB0cnVlICk7DQoJCQkJfQ0KCQkJfQ0KDQoJCQlyZXR1cm4gZGF0YTsNCgkJfQ0KDQoJCS8vIFNldHMgbXVsdGlwbGUgdmFsdWVzDQoJCWlmICggdHlwZW9mIGtleSA9PT0gIm9iamVjdCIgKSB7DQoJCQlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgew0KCQkJCWRhdGFfdXNlci5zZXQoIHRoaXMsIGtleSApOw0KCQkJfSk7DQoJCX0NCg0KCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBmdW5jdGlvbiggdmFsdWUgKSB7DQoJCQl2YXIgZGF0YSwNCgkJCQljYW1lbEtleSA9IGpRdWVyeS5jYW1lbENhc2UoIGtleSApOw0KDQoJCQkvLyBUaGUgY2FsbGluZyBqUXVlcnkgb2JqZWN0IChlbGVtZW50IG1hdGNoZXMpIGlzIG5vdCBlbXB0eQ0KCQkJLy8gKGFuZCB0aGVyZWZvcmUgaGFzIGFuIGVsZW1lbnQgYXBwZWFycyBhdCB0aGlzWyAwIF0pIGFuZCB0aGUNCgkJCS8vIGB2YWx1ZWAgcGFyYW1ldGVyIHdhcyBub3QgdW5kZWZpbmVkLiBBbiBlbXB0eSBqUXVlcnkgb2JqZWN0DQoJCQkvLyB3aWxsIHJlc3VsdCBpbiBgdW5kZWZpbmVkYCBmb3IgZWxlbSA9IHRoaXNbIDAgXSB3aGljaCB3aWxsDQoJCQkvLyB0aHJvdyBhbiBleGNlcHRpb24gaWYgYW4gYXR0ZW1wdCB0byByZWFkIGEgZGF0YSBjYWNoZSBpcyBtYWRlLg0KCQkJaWYgKCBlbGVtICYmIHZhbHVlID09PSB1bmRlZmluZWQgKSB7DQoJCQkJLy8gQXR0ZW1wdCB0byBnZXQgZGF0YSBmcm9tIHRoZSBjYWNoZQ0KCQkJCS8vIHdpdGggdGhlIGtleSBhcy1pcw0KCQkJCWRhdGEgPSBkYXRhX3VzZXIuZ2V0KCBlbGVtLCBrZXkgKTsNCgkJCQlpZiAoIGRhdGEgIT09IHVuZGVmaW5lZCApIHsNCgkJCQkJcmV0dXJuIGRhdGE7DQoJCQkJfQ0KDQoJCQkJLy8gQXR0ZW1wdCB0byBnZXQgZGF0YSBmcm9tIHRoZSBjYWNoZQ0KCQkJCS8vIHdpdGggdGhlIGtleSBjYW1lbGl6ZWQNCgkJCQlkYXRhID0gZGF0YV91c2VyLmdldCggZWxlbSwgY2FtZWxLZXkgKTsNCgkJCQlpZiAoIGRhdGEgIT09IHVuZGVmaW5lZCApIHsNCgkJCQkJcmV0dXJuIGRhdGE7DQoJCQkJfQ0KDQoJCQkJLy8gQXR0ZW1wdCB0byAiZGlzY292ZXIiIHRoZSBkYXRhIGluDQoJCQkJLy8gSFRNTDUgY3VzdG9tIGRhdGEtKiBhdHRycw0KCQkJCWRhdGEgPSBkYXRhQXR0ciggZWxlbSwgY2FtZWxLZXksIHVuZGVmaW5lZCApOw0KCQkJCWlmICggZGF0YSAhPT0gdW5kZWZpbmVkICkgew0KCQkJCQlyZXR1cm4gZGF0YTsNCgkJCQl9DQoNCgkJCQkvLyBXZSB0cmllZCByZWFsbHkgaGFyZCwgYnV0IHRoZSBkYXRhIGRvZXNuJ3QgZXhpc3QuDQoJCQkJcmV0dXJuOw0KCQkJfQ0KDQoJCQkvLyBTZXQgdGhlIGRhdGEuLi4NCgkJCXRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCQkvLyBGaXJzdCwgYXR0ZW1wdCB0byBzdG9yZSBhIGNvcHkgb3IgcmVmZXJlbmNlIG9mIGFueQ0KCQkJCS8vIGRhdGEgdGhhdCBtaWdodCd2ZSBiZWVuIHN0b3JlIHdpdGggYSBjYW1lbENhc2VkIGtleS4NCgkJCQl2YXIgZGF0YSA9IGRhdGFfdXNlci5nZXQoIHRoaXMsIGNhbWVsS2V5ICk7DQoNCgkJCQkvLyBGb3IgSFRNTDUgZGF0YS0qIGF0dHJpYnV0ZSBpbnRlcm9wLCB3ZSBoYXZlIHRvDQoJCQkJLy8gc3RvcmUgcHJvcGVydHkgbmFtZXMgd2l0aCBkYXNoZXMgaW4gYSBjYW1lbENhc2UgZm9ybS4NCgkJCQkvLyBUaGlzIG1pZ2h0IG5vdCBhcHBseSB0byBhbGwgcHJvcGVydGllcy4uLioNCgkJCQlkYXRhX3VzZXIuc2V0KCB0aGlzLCBjYW1lbEtleSwgdmFsdWUgKTsNCg0KCQkJCS8vICouLi4gSW4gdGhlIGNhc2Ugb2YgcHJvcGVydGllcyB0aGF0IG1pZ2h0IF9hY3R1YWxseV8NCgkJCQkvLyBoYXZlIGRhc2hlcywgd2UgbmVlZCB0byBhbHNvIHN0b3JlIGEgY29weSBvZiB0aGF0DQoJCQkJLy8gdW5jaGFuZ2VkIHByb3BlcnR5Lg0KCQkJCWlmICgga2V5LmluZGV4T2YoIi0iKSAhPT0gLTEgJiYgZGF0YSAhPT0gdW5kZWZpbmVkICkgew0KCQkJCQlkYXRhX3VzZXIuc2V0KCB0aGlzLCBrZXksIHZhbHVlICk7DQoJCQkJfQ0KCQkJfSk7DQoJCX0sIG51bGwsIHZhbHVlLCBhcmd1bWVudHMubGVuZ3RoID4gMSwgbnVsbCwgdHJ1ZSApOw0KCX0sDQoNCglyZW1vdmVEYXRhOiBmdW5jdGlvbigga2V5ICkgew0KCQlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgew0KCQkJZGF0YV91c2VyLnJlbW92ZSggdGhpcywga2V5ICk7DQoJCX0pOw0KCX0NCn0pOw0KDQoNCmpRdWVyeS5leHRlbmQoew0KCXF1ZXVlOiBmdW5jdGlvbiggZWxlbSwgdHlwZSwgZGF0YSApIHsNCgkJdmFyIHF1ZXVlOw0KDQoJCWlmICggZWxlbSApIHsNCgkJCXR5cGUgPSAoIHR5cGUgfHwgImZ4IiApICsgInF1ZXVlIjsNCgkJCXF1ZXVlID0gZGF0YV9wcml2LmdldCggZWxlbSwgdHlwZSApOw0KDQoJCQkvLyBTcGVlZCB1cCBkZXF1ZXVlIGJ5IGdldHRpbmcgb3V0IHF1aWNrbHkgaWYgdGhpcyBpcyBqdXN0IGEgbG9va3VwDQoJCQlpZiAoIGRhdGEgKSB7DQoJCQkJaWYgKCAhcXVldWUgfHwgalF1ZXJ5LmlzQXJyYXkoIGRhdGEgKSApIHsNCgkJCQkJcXVldWUgPSBkYXRhX3ByaXYuYWNjZXNzKCBlbGVtLCB0eXBlLCBqUXVlcnkubWFrZUFycmF5KGRhdGEpICk7DQoJCQkJfSBlbHNlIHsNCgkJCQkJcXVldWUucHVzaCggZGF0YSApOw0KCQkJCX0NCgkJCX0NCgkJCXJldHVybiBxdWV1ZSB8fCBbXTsNCgkJfQ0KCX0sDQoNCglkZXF1ZXVlOiBmdW5jdGlvbiggZWxlbSwgdHlwZSApIHsNCgkJdHlwZSA9IHR5cGUgfHwgImZ4IjsNCg0KCQl2YXIgcXVldWUgPSBqUXVlcnkucXVldWUoIGVsZW0sIHR5cGUgKSwNCgkJCXN0YXJ0TGVuZ3RoID0gcXVldWUubGVuZ3RoLA0KCQkJZm4gPSBxdWV1ZS5zaGlmdCgpLA0KCQkJaG9va3MgPSBqUXVlcnkuX3F1ZXVlSG9va3MoIGVsZW0sIHR5cGUgKSwNCgkJCW5leHQgPSBmdW5jdGlvbigpIHsNCgkJCQlqUXVlcnkuZGVxdWV1ZSggZWxlbSwgdHlwZSApOw0KCQkJfTsNCg0KCQkvLyBJZiB0aGUgZnggcXVldWUgaXMgZGVxdWV1ZWQsIGFsd2F5cyByZW1vdmUgdGhlIHByb2dyZXNzIHNlbnRpbmVsDQoJCWlmICggZm4gPT09ICJpbnByb2dyZXNzIiApIHsNCgkJCWZuID0gcXVldWUuc2hpZnQoKTsNCgkJCXN0YXJ0TGVuZ3RoLS07DQoJCX0NCg0KCQlpZiAoIGZuICkgew0KDQoJCQkvLyBBZGQgYSBwcm9ncmVzcyBzZW50aW5lbCB0byBwcmV2ZW50IHRoZSBmeCBxdWV1ZSBmcm9tIGJlaW5nDQoJCQkvLyBhdXRvbWF0aWNhbGx5IGRlcXVldWVkDQoJCQlpZiAoIHR5cGUgPT09ICJmeCIgKSB7DQoJCQkJcXVldWUudW5zaGlmdCggImlucHJvZ3Jlc3MiICk7DQoJCQl9DQoNCgkJCS8vIENsZWFyIHVwIHRoZSBsYXN0IHF1ZXVlIHN0b3AgZnVuY3Rpb24NCgkJCWRlbGV0ZSBob29rcy5zdG9wOw0KCQkJZm4uY2FsbCggZWxlbSwgbmV4dCwgaG9va3MgKTsNCgkJfQ0KDQoJCWlmICggIXN0YXJ0TGVuZ3RoICYmIGhvb2tzICkgew0KCQkJaG9va3MuZW1wdHkuZmlyZSgpOw0KCQl9DQoJfSwNCg0KCS8vIE5vdCBwdWJsaWMgLSBnZW5lcmF0ZSBhIHF1ZXVlSG9va3Mgb2JqZWN0LCBvciByZXR1cm4gdGhlIGN1cnJlbnQgb25lDQoJX3F1ZXVlSG9va3M6IGZ1bmN0aW9uKCBlbGVtLCB0eXBlICkgew0KCQl2YXIga2V5ID0gdHlwZSArICJxdWV1ZUhvb2tzIjsNCgkJcmV0dXJuIGRhdGFfcHJpdi5nZXQoIGVsZW0sIGtleSApIHx8IGRhdGFfcHJpdi5hY2Nlc3MoIGVsZW0sIGtleSwgew0KCQkJZW1wdHk6IGpRdWVyeS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCkgew0KCQkJCWRhdGFfcHJpdi5yZW1vdmUoIGVsZW0sIFsgdHlwZSArICJxdWV1ZSIsIGtleSBdICk7DQoJCQl9KQ0KCQl9KTsNCgl9DQp9KTsNCg0KalF1ZXJ5LmZuLmV4dGVuZCh7DQoJcXVldWU6IGZ1bmN0aW9uKCB0eXBlLCBkYXRhICkgew0KCQl2YXIgc2V0dGVyID0gMjsNCg0KCQlpZiAoIHR5cGVvZiB0eXBlICE9PSAic3RyaW5nIiApIHsNCgkJCWRhdGEgPSB0eXBlOw0KCQkJdHlwZSA9ICJmeCI7DQoJCQlzZXR0ZXItLTsNCgkJfQ0KDQoJCWlmICggYXJndW1lbnRzLmxlbmd0aCA8IHNldHRlciApIHsNCgkJCXJldHVybiBqUXVlcnkucXVldWUoIHRoaXNbMF0sIHR5cGUgKTsNCgkJfQ0KDQoJCXJldHVybiBkYXRhID09PSB1bmRlZmluZWQgPw0KCQkJdGhpcyA6DQoJCQl0aGlzLmVhY2goZnVuY3Rpb24oKSB7DQoJCQkJdmFyIHF1ZXVlID0galF1ZXJ5LnF1ZXVlKCB0aGlzLCB0eXBlLCBkYXRhICk7DQoNCgkJCQkvLyBFbnN1cmUgYSBob29rcyBmb3IgdGhpcyBxdWV1ZQ0KCQkJCWpRdWVyeS5fcXVldWVIb29rcyggdGhpcywgdHlwZSApOw0KDQoJCQkJaWYgKCB0eXBlID09PSAiZngiICYmIHF1ZXVlWzBdICE9PSAiaW5wcm9ncmVzcyIgKSB7DQoJCQkJCWpRdWVyeS5kZXF1ZXVlKCB0aGlzLCB0eXBlICk7DQoJCQkJfQ0KCQkJfSk7DQoJfSwNCglkZXF1ZXVlOiBmdW5jdGlvbiggdHlwZSApIHsNCgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCWpRdWVyeS5kZXF1ZXVlKCB0aGlzLCB0eXBlICk7DQoJCX0pOw0KCX0sDQoJY2xlYXJRdWV1ZTogZnVuY3Rpb24oIHR5cGUgKSB7DQoJCXJldHVybiB0aGlzLnF1ZXVlKCB0eXBlIHx8ICJmeCIsIFtdICk7DQoJfSwNCgkvLyBHZXQgYSBwcm9taXNlIHJlc29sdmVkIHdoZW4gcXVldWVzIG9mIGEgY2VydGFpbiB0eXBlDQoJLy8gYXJlIGVtcHRpZWQgKGZ4IGlzIHRoZSB0eXBlIGJ5IGRlZmF1bHQpDQoJcHJvbWlzZTogZnVuY3Rpb24oIHR5cGUsIG9iaiApIHsNCgkJdmFyIHRtcCwNCgkJCWNvdW50ID0gMSwNCgkJCWRlZmVyID0galF1ZXJ5LkRlZmVycmVkKCksDQoJCQllbGVtZW50cyA9IHRoaXMsDQoJCQlpID0gdGhpcy5sZW5ndGgsDQoJCQlyZXNvbHZlID0gZnVuY3Rpb24oKSB7DQoJCQkJaWYgKCAhKCAtLWNvdW50ICkgKSB7DQoJCQkJCWRlZmVyLnJlc29sdmVXaXRoKCBlbGVtZW50cywgWyBlbGVtZW50cyBdICk7DQoJCQkJfQ0KCQkJfTsNCg0KCQlpZiAoIHR5cGVvZiB0eXBlICE9PSAic3RyaW5nIiApIHsNCgkJCW9iaiA9IHR5cGU7DQoJCQl0eXBlID0gdW5kZWZpbmVkOw0KCQl9DQoJCXR5cGUgPSB0eXBlIHx8ICJmeCI7DQoNCgkJd2hpbGUgKCBpLS0gKSB7DQoJCQl0bXAgPSBkYXRhX3ByaXYuZ2V0KCBlbGVtZW50c1sgaSBdLCB0eXBlICsgInF1ZXVlSG9va3MiICk7DQoJCQlpZiAoIHRtcCAmJiB0bXAuZW1wdHkgKSB7DQoJCQkJY291bnQrKzsNCgkJCQl0bXAuZW1wdHkuYWRkKCByZXNvbHZlICk7DQoJCQl9DQoJCX0NCgkJcmVzb2x2ZSgpOw0KCQlyZXR1cm4gZGVmZXIucHJvbWlzZSggb2JqICk7DQoJfQ0KfSk7DQp2YXIgcG51bSA9ICgvWystXT8oPzpcZCpcLnwpXGQrKD86W2VFXVsrLV0/XGQrfCkvKS5zb3VyY2U7DQoNCnZhciBjc3NFeHBhbmQgPSBbICJUb3AiLCAiUmlnaHQiLCAiQm90dG9tIiwgIkxlZnQiIF07DQoNCnZhciBpc0hpZGRlbiA9IGZ1bmN0aW9uKCBlbGVtLCBlbCApIHsNCgkJLy8gaXNIaWRkZW4gbWlnaHQgYmUgY2FsbGVkIGZyb20galF1ZXJ5I2ZpbHRlciBmdW5jdGlvbjsNCgkJLy8gaW4gdGhhdCBjYXNlLCBlbGVtZW50IHdpbGwgYmUgc2Vjb25kIGFyZ3VtZW50DQoJCWVsZW0gPSBlbCB8fCBlbGVtOw0KCQlyZXR1cm4galF1ZXJ5LmNzcyggZWxlbSwgImRpc3BsYXkiICkgPT09ICJub25lIiB8fCAhalF1ZXJ5LmNvbnRhaW5zKCBlbGVtLm93bmVyRG9jdW1lbnQsIGVsZW0gKTsNCgl9Ow0KDQp2YXIgcmNoZWNrYWJsZVR5cGUgPSAoL14oPzpjaGVja2JveHxyYWRpbykkL2kpOw0KDQoNCg0KKGZ1bmN0aW9uKCkgew0KCXZhciBmcmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSwNCgkJZGl2ID0gZnJhZ21lbnQuYXBwZW5kQ2hpbGQoIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICJkaXYiICkgKSwNCgkJaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAiaW5wdXQiICk7DQoNCgkvLyBTdXBwb3J0OiBTYWZhcmk8PTUuMQ0KCS8vIENoZWNrIHN0YXRlIGxvc3QgaWYgdGhlIG5hbWUgaXMgc2V0ICgjMTEyMTcpDQoJLy8gU3VwcG9ydDogV2luZG93cyBXZWIgQXBwcyAoV1dBKQ0KCS8vIGBuYW1lYCBhbmQgYHR5cGVgIG11c3QgdXNlIC5zZXRBdHRyaWJ1dGUgZm9yIFdXQSAoIzE0OTAxKQ0KCWlucHV0LnNldEF0dHJpYnV0ZSggInR5cGUiLCAicmFkaW8iICk7DQoJaW5wdXQuc2V0QXR0cmlidXRlKCAiY2hlY2tlZCIsICJjaGVja2VkIiApOw0KCWlucHV0LnNldEF0dHJpYnV0ZSggIm5hbWUiLCAidCIgKTsNCg0KCWRpdi5hcHBlbmRDaGlsZCggaW5wdXQgKTsNCg0KCS8vIFN1cHBvcnQ6IFNhZmFyaTw9NS4xLCBBbmRyb2lkPDQuMg0KCS8vIE9sZGVyIFdlYktpdCBkb2Vzbid0IGNsb25lIGNoZWNrZWQgc3RhdGUgY29ycmVjdGx5IGluIGZyYWdtZW50cw0KCXN1cHBvcnQuY2hlY2tDbG9uZSA9IGRpdi5jbG9uZU5vZGUoIHRydWUgKS5jbG9uZU5vZGUoIHRydWUgKS5sYXN0Q2hpbGQuY2hlY2tlZDsNCg0KCS8vIFN1cHBvcnQ6IElFPD0xMSsNCgkvLyBNYWtlIHN1cmUgdGV4dGFyZWEgKGFuZCBjaGVja2JveCkgZGVmYXVsdFZhbHVlIGlzIHByb3Blcmx5IGNsb25lZA0KCWRpdi5pbm5lckhUTUwgPSAiPHRleHRhcmVhPng8L3RleHRhcmVhPiI7DQoJc3VwcG9ydC5ub0Nsb25lQ2hlY2tlZCA9ICEhZGl2LmNsb25lTm9kZSggdHJ1ZSApLmxhc3RDaGlsZC5kZWZhdWx0VmFsdWU7DQp9KSgpOw0KdmFyIHN0cnVuZGVmaW5lZCA9IHR5cGVvZiB1bmRlZmluZWQ7DQoNCg0KDQpzdXBwb3J0LmZvY3VzaW5CdWJibGVzID0gIm9uZm9jdXNpbiIgaW4gd2luZG93Ow0KDQoNCnZhcg0KCXJrZXlFdmVudCA9IC9ea2V5LywNCglybW91c2VFdmVudCA9IC9eKD86bW91c2V8cG9pbnRlcnxjb250ZXh0bWVudSl8Y2xpY2svLA0KCXJmb2N1c01vcnBoID0gL14oPzpmb2N1c2luZm9jdXN8Zm9jdXNvdXRibHVyKSQvLA0KCXJ0eXBlbmFtZXNwYWNlID0gL14oW14uXSopKD86XC4oLispfCkkLzsNCg0KZnVuY3Rpb24gcmV0dXJuVHJ1ZSgpIHsNCglyZXR1cm4gdHJ1ZTsNCn0NCg0KZnVuY3Rpb24gcmV0dXJuRmFsc2UoKSB7DQoJcmV0dXJuIGZhbHNlOw0KfQ0KDQpmdW5jdGlvbiBzYWZlQWN0aXZlRWxlbWVudCgpIHsNCgl0cnkgew0KCQlyZXR1cm4gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDsNCgl9IGNhdGNoICggZXJyICkgeyB9DQp9DQoNCi8qDQogKiBIZWxwZXIgZnVuY3Rpb25zIGZvciBtYW5hZ2luZyBldmVudHMgLS0gbm90IHBhcnQgb2YgdGhlIHB1YmxpYyBpbnRlcmZhY2UuDQogKiBQcm9wcyB0byBEZWFuIEVkd2FyZHMnIGFkZEV2ZW50IGxpYnJhcnkgZm9yIG1hbnkgb2YgdGhlIGlkZWFzLg0KICovDQpqUXVlcnkuZXZlbnQgPSB7DQoNCglnbG9iYWw6IHt9LA0KDQoJYWRkOiBmdW5jdGlvbiggZWxlbSwgdHlwZXMsIGhhbmRsZXIsIGRhdGEsIHNlbGVjdG9yICkgew0KDQoJCXZhciBoYW5kbGVPYmpJbiwgZXZlbnRIYW5kbGUsIHRtcCwNCgkJCWV2ZW50cywgdCwgaGFuZGxlT2JqLA0KCQkJc3BlY2lhbCwgaGFuZGxlcnMsIHR5cGUsIG5hbWVzcGFjZXMsIG9yaWdUeXBlLA0KCQkJZWxlbURhdGEgPSBkYXRhX3ByaXYuZ2V0KCBlbGVtICk7DQoNCgkJLy8gRG9uJ3QgYXR0YWNoIGV2ZW50cyB0byBub0RhdGEgb3IgdGV4dC9jb21tZW50IG5vZGVzIChidXQgYWxsb3cgcGxhaW4gb2JqZWN0cykNCgkJaWYgKCAhZWxlbURhdGEgKSB7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQkvLyBDYWxsZXIgY2FuIHBhc3MgaW4gYW4gb2JqZWN0IG9mIGN1c3RvbSBkYXRhIGluIGxpZXUgb2YgdGhlIGhhbmRsZXINCgkJaWYgKCBoYW5kbGVyLmhhbmRsZXIgKSB7DQoJCQloYW5kbGVPYmpJbiA9IGhhbmRsZXI7DQoJCQloYW5kbGVyID0gaGFuZGxlT2JqSW4uaGFuZGxlcjsNCgkJCXNlbGVjdG9yID0gaGFuZGxlT2JqSW4uc2VsZWN0b3I7DQoJCX0NCg0KCQkvLyBNYWtlIHN1cmUgdGhhdCB0aGUgaGFuZGxlciBoYXMgYSB1bmlxdWUgSUQsIHVzZWQgdG8gZmluZC9yZW1vdmUgaXQgbGF0ZXINCgkJaWYgKCAhaGFuZGxlci5ndWlkICkgew0KCQkJaGFuZGxlci5ndWlkID0galF1ZXJ5Lmd1aWQrKzsNCgkJfQ0KDQoJCS8vIEluaXQgdGhlIGVsZW1lbnQncyBldmVudCBzdHJ1Y3R1cmUgYW5kIG1haW4gaGFuZGxlciwgaWYgdGhpcyBpcyB0aGUgZmlyc3QNCgkJaWYgKCAhKGV2ZW50cyA9IGVsZW1EYXRhLmV2ZW50cykgKSB7DQoJCQlldmVudHMgPSBlbGVtRGF0YS5ldmVudHMgPSB7fTsNCgkJfQ0KCQlpZiAoICEoZXZlbnRIYW5kbGUgPSBlbGVtRGF0YS5oYW5kbGUpICkgew0KCQkJZXZlbnRIYW5kbGUgPSBlbGVtRGF0YS5oYW5kbGUgPSBmdW5jdGlvbiggZSApIHsNCgkJCQkvLyBEaXNjYXJkIHRoZSBzZWNvbmQgZXZlbnQgb2YgYSBqUXVlcnkuZXZlbnQudHJpZ2dlcigpIGFuZA0KCQkJCS8vIHdoZW4gYW4gZXZlbnQgaXMgY2FsbGVkIGFmdGVyIGEgcGFnZSBoYXMgdW5sb2FkZWQNCgkJCQlyZXR1cm4gdHlwZW9mIGpRdWVyeSAhPT0gc3RydW5kZWZpbmVkICYmIGpRdWVyeS5ldmVudC50cmlnZ2VyZWQgIT09IGUudHlwZSA/DQoJCQkJCWpRdWVyeS5ldmVudC5kaXNwYXRjaC5hcHBseSggZWxlbSwgYXJndW1lbnRzICkgOiB1bmRlZmluZWQ7DQoJCQl9Ow0KCQl9DQoNCgkJLy8gSGFuZGxlIG11bHRpcGxlIGV2ZW50cyBzZXBhcmF0ZWQgYnkgYSBzcGFjZQ0KCQl0eXBlcyA9ICggdHlwZXMgfHwgIiIgKS5tYXRjaCggcm5vdHdoaXRlICkgfHwgWyAiIiBdOw0KCQl0ID0gdHlwZXMubGVuZ3RoOw0KCQl3aGlsZSAoIHQtLSApIHsNCgkJCXRtcCA9IHJ0eXBlbmFtZXNwYWNlLmV4ZWMoIHR5cGVzW3RdICkgfHwgW107DQoJCQl0eXBlID0gb3JpZ1R5cGUgPSB0bXBbMV07DQoJCQluYW1lc3BhY2VzID0gKCB0bXBbMl0gfHwgIiIgKS5zcGxpdCggIi4iICkuc29ydCgpOw0KDQoJCQkvLyBUaGVyZSAqbXVzdCogYmUgYSB0eXBlLCBubyBhdHRhY2hpbmcgbmFtZXNwYWNlLW9ubHkgaGFuZGxlcnMNCgkJCWlmICggIXR5cGUgKSB7DQoJCQkJY29udGludWU7DQoJCQl9DQoNCgkJCS8vIElmIGV2ZW50IGNoYW5nZXMgaXRzIHR5cGUsIHVzZSB0aGUgc3BlY2lhbCBldmVudCBoYW5kbGVycyBmb3IgdGhlIGNoYW5nZWQgdHlwZQ0KCQkJc3BlY2lhbCA9IGpRdWVyeS5ldmVudC5zcGVjaWFsWyB0eXBlIF0gfHwge307DQoNCgkJCS8vIElmIHNlbGVjdG9yIGRlZmluZWQsIGRldGVybWluZSBzcGVjaWFsIGV2ZW50IGFwaSB0eXBlLCBvdGhlcndpc2UgZ2l2ZW4gdHlwZQ0KCQkJdHlwZSA9ICggc2VsZWN0b3IgPyBzcGVjaWFsLmRlbGVnYXRlVHlwZSA6IHNwZWNpYWwuYmluZFR5cGUgKSB8fCB0eXBlOw0KDQoJCQkvLyBVcGRhdGUgc3BlY2lhbCBiYXNlZCBvbiBuZXdseSByZXNldCB0eXBlDQoJCQlzcGVjaWFsID0galF1ZXJ5LmV2ZW50LnNwZWNpYWxbIHR5cGUgXSB8fCB7fTsNCg0KCQkJLy8gaGFuZGxlT2JqIGlzIHBhc3NlZCB0byBhbGwgZXZlbnQgaGFuZGxlcnMNCgkJCWhhbmRsZU9iaiA9IGpRdWVyeS5leHRlbmQoew0KCQkJCXR5cGU6IHR5cGUsDQoJCQkJb3JpZ1R5cGU6IG9yaWdUeXBlLA0KCQkJCWRhdGE6IGRhdGEsDQoJCQkJaGFuZGxlcjogaGFuZGxlciwNCgkJCQlndWlkOiBoYW5kbGVyLmd1aWQsDQoJCQkJc2VsZWN0b3I6IHNlbGVjdG9yLA0KCQkJCW5lZWRzQ29udGV4dDogc2VsZWN0b3IgJiYgalF1ZXJ5LmV4cHIubWF0Y2gubmVlZHNDb250ZXh0LnRlc3QoIHNlbGVjdG9yICksDQoJCQkJbmFtZXNwYWNlOiBuYW1lc3BhY2VzLmpvaW4oIi4iKQ0KCQkJfSwgaGFuZGxlT2JqSW4gKTsNCg0KCQkJLy8gSW5pdCB0aGUgZXZlbnQgaGFuZGxlciBxdWV1ZSBpZiB3ZSdyZSB0aGUgZmlyc3QNCgkJCWlmICggIShoYW5kbGVycyA9IGV2ZW50c1sgdHlwZSBdKSApIHsNCgkJCQloYW5kbGVycyA9IGV2ZW50c1sgdHlwZSBdID0gW107DQoJCQkJaGFuZGxlcnMuZGVsZWdhdGVDb3VudCA9IDA7DQoNCgkJCQkvLyBPbmx5IHVzZSBhZGRFdmVudExpc3RlbmVyIGlmIHRoZSBzcGVjaWFsIGV2ZW50cyBoYW5kbGVyIHJldHVybnMgZmFsc2UNCgkJCQlpZiAoICFzcGVjaWFsLnNldHVwIHx8IHNwZWNpYWwuc2V0dXAuY2FsbCggZWxlbSwgZGF0YSwgbmFtZXNwYWNlcywgZXZlbnRIYW5kbGUgKSA9PT0gZmFsc2UgKSB7DQoJCQkJCWlmICggZWxlbS5hZGRFdmVudExpc3RlbmVyICkgew0KCQkJCQkJZWxlbS5hZGRFdmVudExpc3RlbmVyKCB0eXBlLCBldmVudEhhbmRsZSwgZmFsc2UgKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCg0KCQkJaWYgKCBzcGVjaWFsLmFkZCApIHsNCgkJCQlzcGVjaWFsLmFkZC5jYWxsKCBlbGVtLCBoYW5kbGVPYmogKTsNCg0KCQkJCWlmICggIWhhbmRsZU9iai5oYW5kbGVyLmd1aWQgKSB7DQoJCQkJCWhhbmRsZU9iai5oYW5kbGVyLmd1aWQgPSBoYW5kbGVyLmd1aWQ7DQoJCQkJfQ0KCQkJfQ0KDQoJCQkvLyBBZGQgdG8gdGhlIGVsZW1lbnQncyBoYW5kbGVyIGxpc3QsIGRlbGVnYXRlcyBpbiBmcm9udA0KCQkJaWYgKCBzZWxlY3RvciApIHsNCgkJCQloYW5kbGVycy5zcGxpY2UoIGhhbmRsZXJzLmRlbGVnYXRlQ291bnQrKywgMCwgaGFuZGxlT2JqICk7DQoJCQl9IGVsc2Ugew0KCQkJCWhhbmRsZXJzLnB1c2goIGhhbmRsZU9iaiApOw0KCQkJfQ0KDQoJCQkvLyBLZWVwIHRyYWNrIG9mIHdoaWNoIGV2ZW50cyBoYXZlIGV2ZXIgYmVlbiB1c2VkLCBmb3IgZXZlbnQgb3B0aW1pemF0aW9uDQoJCQlqUXVlcnkuZXZlbnQuZ2xvYmFsWyB0eXBlIF0gPSB0cnVlOw0KCQl9DQoNCgl9LA0KDQoJLy8gRGV0YWNoIGFuIGV2ZW50IG9yIHNldCBvZiBldmVudHMgZnJvbSBhbiBlbGVtZW50DQoJcmVtb3ZlOiBmdW5jdGlvbiggZWxlbSwgdHlwZXMsIGhhbmRsZXIsIHNlbGVjdG9yLCBtYXBwZWRUeXBlcyApIHsNCg0KCQl2YXIgaiwgb3JpZ0NvdW50LCB0bXAsDQoJCQlldmVudHMsIHQsIGhhbmRsZU9iaiwNCgkJCXNwZWNpYWwsIGhhbmRsZXJzLCB0eXBlLCBuYW1lc3BhY2VzLCBvcmlnVHlwZSwNCgkJCWVsZW1EYXRhID0gZGF0YV9wcml2Lmhhc0RhdGEoIGVsZW0gKSAmJiBkYXRhX3ByaXYuZ2V0KCBlbGVtICk7DQoNCgkJaWYgKCAhZWxlbURhdGEgfHwgIShldmVudHMgPSBlbGVtRGF0YS5ldmVudHMpICkgew0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJLy8gT25jZSBmb3IgZWFjaCB0eXBlLm5hbWVzcGFjZSBpbiB0eXBlczsgdHlwZSBtYXkgYmUgb21pdHRlZA0KCQl0eXBlcyA9ICggdHlwZXMgfHwgIiIgKS5tYXRjaCggcm5vdHdoaXRlICkgfHwgWyAiIiBdOw0KCQl0ID0gdHlwZXMubGVuZ3RoOw0KCQl3aGlsZSAoIHQtLSApIHsNCgkJCXRtcCA9IHJ0eXBlbmFtZXNwYWNlLmV4ZWMoIHR5cGVzW3RdICkgfHwgW107DQoJCQl0eXBlID0gb3JpZ1R5cGUgPSB0bXBbMV07DQoJCQluYW1lc3BhY2VzID0gKCB0bXBbMl0gfHwgIiIgKS5zcGxpdCggIi4iICkuc29ydCgpOw0KDQoJCQkvLyBVbmJpbmQgYWxsIGV2ZW50cyAob24gdGhpcyBuYW1lc3BhY2UsIGlmIHByb3ZpZGVkKSBmb3IgdGhlIGVsZW1lbnQNCgkJCWlmICggIXR5cGUgKSB7DQoJCQkJZm9yICggdHlwZSBpbiBldmVudHMgKSB7DQoJCQkJCWpRdWVyeS5ldmVudC5yZW1vdmUoIGVsZW0sIHR5cGUgKyB0eXBlc1sgdCBdLCBoYW5kbGVyLCBzZWxlY3RvciwgdHJ1ZSApOw0KCQkJCX0NCgkJCQljb250aW51ZTsNCgkJCX0NCg0KCQkJc3BlY2lhbCA9IGpRdWVyeS5ldmVudC5zcGVjaWFsWyB0eXBlIF0gfHwge307DQoJCQl0eXBlID0gKCBzZWxlY3RvciA/IHNwZWNpYWwuZGVsZWdhdGVUeXBlIDogc3BlY2lhbC5iaW5kVHlwZSApIHx8IHR5cGU7DQoJCQloYW5kbGVycyA9IGV2ZW50c1sgdHlwZSBdIHx8IFtdOw0KCQkJdG1wID0gdG1wWzJdICYmIG5ldyBSZWdFeHAoICIoXnxcXC4pIiArIG5hbWVzcGFjZXMuam9pbigiXFwuKD86LipcXC58KSIpICsgIihcXC58JCkiICk7DQoNCgkJCS8vIFJlbW92ZSBtYXRjaGluZyBldmVudHMNCgkJCW9yaWdDb3VudCA9IGogPSBoYW5kbGVycy5sZW5ndGg7DQoJCQl3aGlsZSAoIGotLSApIHsNCgkJCQloYW5kbGVPYmogPSBoYW5kbGVyc1sgaiBdOw0KDQoJCQkJaWYgKCAoIG1hcHBlZFR5cGVzIHx8IG9yaWdUeXBlID09PSBoYW5kbGVPYmoub3JpZ1R5cGUgKSAmJg0KCQkJCQkoICFoYW5kbGVyIHx8IGhhbmRsZXIuZ3VpZCA9PT0gaGFuZGxlT2JqLmd1aWQgKSAmJg0KCQkJCQkoICF0bXAgfHwgdG1wLnRlc3QoIGhhbmRsZU9iai5uYW1lc3BhY2UgKSApICYmDQoJCQkJCSggIXNlbGVjdG9yIHx8IHNlbGVjdG9yID09PSBoYW5kbGVPYmouc2VsZWN0b3IgfHwgc2VsZWN0b3IgPT09ICIqKiIgJiYgaGFuZGxlT2JqLnNlbGVjdG9yICkgKSB7DQoJCQkJCWhhbmRsZXJzLnNwbGljZSggaiwgMSApOw0KDQoJCQkJCWlmICggaGFuZGxlT2JqLnNlbGVjdG9yICkgew0KCQkJCQkJaGFuZGxlcnMuZGVsZWdhdGVDb3VudC0tOw0KCQkJCQl9DQoJCQkJCWlmICggc3BlY2lhbC5yZW1vdmUgKSB7DQoJCQkJCQlzcGVjaWFsLnJlbW92ZS5jYWxsKCBlbGVtLCBoYW5kbGVPYmogKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCg0KCQkJLy8gUmVtb3ZlIGdlbmVyaWMgZXZlbnQgaGFuZGxlciBpZiB3ZSByZW1vdmVkIHNvbWV0aGluZyBhbmQgbm8gbW9yZSBoYW5kbGVycyBleGlzdA0KCQkJLy8gKGF2b2lkcyBwb3RlbnRpYWwgZm9yIGVuZGxlc3MgcmVjdXJzaW9uIGR1cmluZyByZW1vdmFsIG9mIHNwZWNpYWwgZXZlbnQgaGFuZGxlcnMpDQoJCQlpZiAoIG9yaWdDb3VudCAmJiAhaGFuZGxlcnMubGVuZ3RoICkgew0KCQkJCWlmICggIXNwZWNpYWwudGVhcmRvd24gfHwgc3BlY2lhbC50ZWFyZG93bi5jYWxsKCBlbGVtLCBuYW1lc3BhY2VzLCBlbGVtRGF0YS5oYW5kbGUgKSA9PT0gZmFsc2UgKSB7DQoJCQkJCWpRdWVyeS5yZW1vdmVFdmVudCggZWxlbSwgdHlwZSwgZWxlbURhdGEuaGFuZGxlICk7DQoJCQkJfQ0KDQoJCQkJZGVsZXRlIGV2ZW50c1sgdHlwZSBdOw0KCQkJfQ0KCQl9DQoNCgkJLy8gUmVtb3ZlIHRoZSBleHBhbmRvIGlmIGl0J3Mgbm8gbG9uZ2VyIHVzZWQNCgkJaWYgKCBqUXVlcnkuaXNFbXB0eU9iamVjdCggZXZlbnRzICkgKSB7DQoJCQlkZWxldGUgZWxlbURhdGEuaGFuZGxlOw0KCQkJZGF0YV9wcml2LnJlbW92ZSggZWxlbSwgImV2ZW50cyIgKTsNCgkJfQ0KCX0sDQoNCgl0cmlnZ2VyOiBmdW5jdGlvbiggZXZlbnQsIGRhdGEsIGVsZW0sIG9ubHlIYW5kbGVycyApIHsNCg0KCQl2YXIgaSwgY3VyLCB0bXAsIGJ1YmJsZVR5cGUsIG9udHlwZSwgaGFuZGxlLCBzcGVjaWFsLA0KCQkJZXZlbnRQYXRoID0gWyBlbGVtIHx8IGRvY3VtZW50IF0sDQoJCQl0eXBlID0gaGFzT3duLmNhbGwoIGV2ZW50LCAidHlwZSIgKSA/IGV2ZW50LnR5cGUgOiBldmVudCwNCgkJCW5hbWVzcGFjZXMgPSBoYXNPd24uY2FsbCggZXZlbnQsICJuYW1lc3BhY2UiICkgPyBldmVudC5uYW1lc3BhY2Uuc3BsaXQoIi4iKSA6IFtdOw0KDQoJCWN1ciA9IHRtcCA9IGVsZW0gPSBlbGVtIHx8IGRvY3VtZW50Ow0KDQoJCS8vIERvbid0IGRvIGV2ZW50cyBvbiB0ZXh0IGFuZCBjb21tZW50IG5vZGVzDQoJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMyB8fCBlbGVtLm5vZGVUeXBlID09PSA4ICkgew0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJLy8gZm9jdXMvYmx1ciBtb3JwaHMgdG8gZm9jdXNpbi9vdXQ7IGVuc3VyZSB3ZSdyZSBub3QgZmlyaW5nIHRoZW0gcmlnaHQgbm93DQoJCWlmICggcmZvY3VzTW9ycGgudGVzdCggdHlwZSArIGpRdWVyeS5ldmVudC50cmlnZ2VyZWQgKSApIHsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCWlmICggdHlwZS5pbmRleE9mKCIuIikgPj0gMCApIHsNCgkJCS8vIE5hbWVzcGFjZWQgdHJpZ2dlcjsgY3JlYXRlIGEgcmVnZXhwIHRvIG1hdGNoIGV2ZW50IHR5cGUgaW4gaGFuZGxlKCkNCgkJCW5hbWVzcGFjZXMgPSB0eXBlLnNwbGl0KCIuIik7DQoJCQl0eXBlID0gbmFtZXNwYWNlcy5zaGlmdCgpOw0KCQkJbmFtZXNwYWNlcy5zb3J0KCk7DQoJCX0NCgkJb250eXBlID0gdHlwZS5pbmRleE9mKCI6IikgPCAwICYmICJvbiIgKyB0eXBlOw0KDQoJCS8vIENhbGxlciBjYW4gcGFzcyBpbiBhIGpRdWVyeS5FdmVudCBvYmplY3QsIE9iamVjdCwgb3IganVzdCBhbiBldmVudCB0eXBlIHN0cmluZw0KCQlldmVudCA9IGV2ZW50WyBqUXVlcnkuZXhwYW5kbyBdID8NCgkJCWV2ZW50IDoNCgkJCW5ldyBqUXVlcnkuRXZlbnQoIHR5cGUsIHR5cGVvZiBldmVudCA9PT0gIm9iamVjdCIgJiYgZXZlbnQgKTsNCg0KCQkvLyBUcmlnZ2VyIGJpdG1hc2s6ICYgMSBmb3IgbmF0aXZlIGhhbmRsZXJzOyAmIDIgZm9yIGpRdWVyeSAoYWx3YXlzIHRydWUpDQoJCWV2ZW50LmlzVHJpZ2dlciA9IG9ubHlIYW5kbGVycyA/IDIgOiAzOw0KCQlldmVudC5uYW1lc3BhY2UgPSBuYW1lc3BhY2VzLmpvaW4oIi4iKTsNCgkJZXZlbnQubmFtZXNwYWNlX3JlID0gZXZlbnQubmFtZXNwYWNlID8NCgkJCW5ldyBSZWdFeHAoICIoXnxcXC4pIiArIG5hbWVzcGFjZXMuam9pbigiXFwuKD86LipcXC58KSIpICsgIihcXC58JCkiICkgOg0KCQkJbnVsbDsNCg0KCQkvLyBDbGVhbiB1cCB0aGUgZXZlbnQgaW4gY2FzZSBpdCBpcyBiZWluZyByZXVzZWQNCgkJZXZlbnQucmVzdWx0ID0gdW5kZWZpbmVkOw0KCQlpZiAoICFldmVudC50YXJnZXQgKSB7DQoJCQlldmVudC50YXJnZXQgPSBlbGVtOw0KCQl9DQoNCgkJLy8gQ2xvbmUgYW55IGluY29taW5nIGRhdGEgYW5kIHByZXBlbmQgdGhlIGV2ZW50LCBjcmVhdGluZyB0aGUgaGFuZGxlciBhcmcgbGlzdA0KCQlkYXRhID0gZGF0YSA9PSBudWxsID8NCgkJCVsgZXZlbnQgXSA6DQoJCQlqUXVlcnkubWFrZUFycmF5KCBkYXRhLCBbIGV2ZW50IF0gKTsNCg0KCQkvLyBBbGxvdyBzcGVjaWFsIGV2ZW50cyB0byBkcmF3IG91dHNpZGUgdGhlIGxpbmVzDQoJCXNwZWNpYWwgPSBqUXVlcnkuZXZlbnQuc3BlY2lhbFsgdHlwZSBdIHx8IHt9Ow0KCQlpZiAoICFvbmx5SGFuZGxlcnMgJiYgc3BlY2lhbC50cmlnZ2VyICYmIHNwZWNpYWwudHJpZ2dlci5hcHBseSggZWxlbSwgZGF0YSApID09PSBmYWxzZSApIHsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCS8vIERldGVybWluZSBldmVudCBwcm9wYWdhdGlvbiBwYXRoIGluIGFkdmFuY2UsIHBlciBXM0MgZXZlbnRzIHNwZWMgKCM5OTUxKQ0KCQkvLyBCdWJibGUgdXAgdG8gZG9jdW1lbnQsIHRoZW4gdG8gd2luZG93OyB3YXRjaCBmb3IgYSBnbG9iYWwgb3duZXJEb2N1bWVudCB2YXIgKCM5NzI0KQ0KCQlpZiAoICFvbmx5SGFuZGxlcnMgJiYgIXNwZWNpYWwubm9CdWJibGUgJiYgIWpRdWVyeS5pc1dpbmRvdyggZWxlbSApICkgew0KDQoJCQlidWJibGVUeXBlID0gc3BlY2lhbC5kZWxlZ2F0ZVR5cGUgfHwgdHlwZTsNCgkJCWlmICggIXJmb2N1c01vcnBoLnRlc3QoIGJ1YmJsZVR5cGUgKyB0eXBlICkgKSB7DQoJCQkJY3VyID0gY3VyLnBhcmVudE5vZGU7DQoJCQl9DQoJCQlmb3IgKCA7IGN1cjsgY3VyID0gY3VyLnBhcmVudE5vZGUgKSB7DQoJCQkJZXZlbnRQYXRoLnB1c2goIGN1ciApOw0KCQkJCXRtcCA9IGN1cjsNCgkJCX0NCg0KCQkJLy8gT25seSBhZGQgd2luZG93IGlmIHdlIGdvdCB0byBkb2N1bWVudCAoZS5nLiwgbm90IHBsYWluIG9iaiBvciBkZXRhY2hlZCBET00pDQoJCQlpZiAoIHRtcCA9PT0gKGVsZW0ub3duZXJEb2N1bWVudCB8fCBkb2N1bWVudCkgKSB7DQoJCQkJZXZlbnRQYXRoLnB1c2goIHRtcC5kZWZhdWx0VmlldyB8fCB0bXAucGFyZW50V2luZG93IHx8IHdpbmRvdyApOw0KCQkJfQ0KCQl9DQoNCgkJLy8gRmlyZSBoYW5kbGVycyBvbiB0aGUgZXZlbnQgcGF0aA0KCQlpID0gMDsNCgkJd2hpbGUgKCAoY3VyID0gZXZlbnRQYXRoW2krK10pICYmICFldmVudC5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpICkgew0KDQoJCQlldmVudC50eXBlID0gaSA+IDEgPw0KCQkJCWJ1YmJsZVR5cGUgOg0KCQkJCXNwZWNpYWwuYmluZFR5cGUgfHwgdHlwZTsNCg0KCQkJLy8galF1ZXJ5IGhhbmRsZXINCgkJCWhhbmRsZSA9ICggZGF0YV9wcml2LmdldCggY3VyLCAiZXZlbnRzIiApIHx8IHt9IClbIGV2ZW50LnR5cGUgXSAmJiBkYXRhX3ByaXYuZ2V0KCBjdXIsICJoYW5kbGUiICk7DQoJCQlpZiAoIGhhbmRsZSApIHsNCgkJCQloYW5kbGUuYXBwbHkoIGN1ciwgZGF0YSApOw0KCQkJfQ0KDQoJCQkvLyBOYXRpdmUgaGFuZGxlcg0KCQkJaGFuZGxlID0gb250eXBlICYmIGN1clsgb250eXBlIF07DQoJCQlpZiAoIGhhbmRsZSAmJiBoYW5kbGUuYXBwbHkgJiYgalF1ZXJ5LmFjY2VwdERhdGEoIGN1ciApICkgew0KCQkJCWV2ZW50LnJlc3VsdCA9IGhhbmRsZS5hcHBseSggY3VyLCBkYXRhICk7DQoJCQkJaWYgKCBldmVudC5yZXN1bHQgPT09IGZhbHNlICkgew0KCQkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQlldmVudC50eXBlID0gdHlwZTsNCg0KCQkvLyBJZiBub2JvZHkgcHJldmVudGVkIHRoZSBkZWZhdWx0IGFjdGlvbiwgZG8gaXQgbm93DQoJCWlmICggIW9ubHlIYW5kbGVycyAmJiAhZXZlbnQuaXNEZWZhdWx0UHJldmVudGVkKCkgKSB7DQoNCgkJCWlmICggKCFzcGVjaWFsLl9kZWZhdWx0IHx8IHNwZWNpYWwuX2RlZmF1bHQuYXBwbHkoIGV2ZW50UGF0aC5wb3AoKSwgZGF0YSApID09PSBmYWxzZSkgJiYNCgkJCQlqUXVlcnkuYWNjZXB0RGF0YSggZWxlbSApICkgew0KDQoJCQkJLy8gQ2FsbCBhIG5hdGl2ZSBET00gbWV0aG9kIG9uIHRoZSB0YXJnZXQgd2l0aCB0aGUgc2FtZSBuYW1lIG5hbWUgYXMgdGhlIGV2ZW50Lg0KCQkJCS8vIERvbid0IGRvIGRlZmF1bHQgYWN0aW9ucyBvbiB3aW5kb3csIHRoYXQncyB3aGVyZSBnbG9iYWwgdmFyaWFibGVzIGJlICgjNjE3MCkNCgkJCQlpZiAoIG9udHlwZSAmJiBqUXVlcnkuaXNGdW5jdGlvbiggZWxlbVsgdHlwZSBdICkgJiYgIWpRdWVyeS5pc1dpbmRvdyggZWxlbSApICkgew0KDQoJCQkJCS8vIERvbid0IHJlLXRyaWdnZXIgYW4gb25GT08gZXZlbnQgd2hlbiB3ZSBjYWxsIGl0cyBGT08oKSBtZXRob2QNCgkJCQkJdG1wID0gZWxlbVsgb250eXBlIF07DQoNCgkJCQkJaWYgKCB0bXAgKSB7DQoJCQkJCQllbGVtWyBvbnR5cGUgXSA9IG51bGw7DQoJCQkJCX0NCg0KCQkJCQkvLyBQcmV2ZW50IHJlLXRyaWdnZXJpbmcgb2YgdGhlIHNhbWUgZXZlbnQsIHNpbmNlIHdlIGFscmVhZHkgYnViYmxlZCBpdCBhYm92ZQ0KCQkJCQlqUXVlcnkuZXZlbnQudHJpZ2dlcmVkID0gdHlwZTsNCgkJCQkJZWxlbVsgdHlwZSBdKCk7DQoJCQkJCWpRdWVyeS5ldmVudC50cmlnZ2VyZWQgPSB1bmRlZmluZWQ7DQoNCgkJCQkJaWYgKCB0bXAgKSB7DQoJCQkJCQllbGVtWyBvbnR5cGUgXSA9IHRtcDsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBldmVudC5yZXN1bHQ7DQoJfSwNCg0KCWRpc3BhdGNoOiBmdW5jdGlvbiggZXZlbnQgKSB7DQoNCgkJLy8gTWFrZSBhIHdyaXRhYmxlIGpRdWVyeS5FdmVudCBmcm9tIHRoZSBuYXRpdmUgZXZlbnQgb2JqZWN0DQoJCWV2ZW50ID0galF1ZXJ5LmV2ZW50LmZpeCggZXZlbnQgKTsNCg0KCQl2YXIgaSwgaiwgcmV0LCBtYXRjaGVkLCBoYW5kbGVPYmosDQoJCQloYW5kbGVyUXVldWUgPSBbXSwNCgkJCWFyZ3MgPSBzbGljZS5jYWxsKCBhcmd1bWVudHMgKSwNCgkJCWhhbmRsZXJzID0gKCBkYXRhX3ByaXYuZ2V0KCB0aGlzLCAiZXZlbnRzIiApIHx8IHt9IClbIGV2ZW50LnR5cGUgXSB8fCBbXSwNCgkJCXNwZWNpYWwgPSBqUXVlcnkuZXZlbnQuc3BlY2lhbFsgZXZlbnQudHlwZSBdIHx8IHt9Ow0KDQoJCS8vIFVzZSB0aGUgZml4LWVkIGpRdWVyeS5FdmVudCByYXRoZXIgdGhhbiB0aGUgKHJlYWQtb25seSkgbmF0aXZlIGV2ZW50DQoJCWFyZ3NbMF0gPSBldmVudDsNCgkJZXZlbnQuZGVsZWdhdGVUYXJnZXQgPSB0aGlzOw0KDQoJCS8vIENhbGwgdGhlIHByZURpc3BhdGNoIGhvb2sgZm9yIHRoZSBtYXBwZWQgdHlwZSwgYW5kIGxldCBpdCBiYWlsIGlmIGRlc2lyZWQNCgkJaWYgKCBzcGVjaWFsLnByZURpc3BhdGNoICYmIHNwZWNpYWwucHJlRGlzcGF0Y2guY2FsbCggdGhpcywgZXZlbnQgKSA9PT0gZmFsc2UgKSB7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQkvLyBEZXRlcm1pbmUgaGFuZGxlcnMNCgkJaGFuZGxlclF1ZXVlID0galF1ZXJ5LmV2ZW50LmhhbmRsZXJzLmNhbGwoIHRoaXMsIGV2ZW50LCBoYW5kbGVycyApOw0KDQoJCS8vIFJ1biBkZWxlZ2F0ZXMgZmlyc3Q7IHRoZXkgbWF5IHdhbnQgdG8gc3RvcCBwcm9wYWdhdGlvbiBiZW5lYXRoIHVzDQoJCWkgPSAwOw0KCQl3aGlsZSAoIChtYXRjaGVkID0gaGFuZGxlclF1ZXVlWyBpKysgXSkgJiYgIWV2ZW50LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkgKSB7DQoJCQlldmVudC5jdXJyZW50VGFyZ2V0ID0gbWF0Y2hlZC5lbGVtOw0KDQoJCQlqID0gMDsNCgkJCXdoaWxlICggKGhhbmRsZU9iaiA9IG1hdGNoZWQuaGFuZGxlcnNbIGorKyBdKSAmJiAhZXZlbnQuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSApIHsNCg0KCQkJCS8vIFRyaWdnZXJlZCBldmVudCBtdXN0IGVpdGhlciAxKSBoYXZlIG5vIG5hbWVzcGFjZSwgb3IgMikgaGF2ZSBuYW1lc3BhY2UocykNCgkJCQkvLyBhIHN1YnNldCBvciBlcXVhbCB0byB0aG9zZSBpbiB0aGUgYm91bmQgZXZlbnQgKGJvdGggY2FuIGhhdmUgbm8gbmFtZXNwYWNlKS4NCgkJCQlpZiAoICFldmVudC5uYW1lc3BhY2VfcmUgfHwgZXZlbnQubmFtZXNwYWNlX3JlLnRlc3QoIGhhbmRsZU9iai5uYW1lc3BhY2UgKSApIHsNCg0KCQkJCQlldmVudC5oYW5kbGVPYmogPSBoYW5kbGVPYmo7DQoJCQkJCWV2ZW50LmRhdGEgPSBoYW5kbGVPYmouZGF0YTsNCg0KCQkJCQlyZXQgPSAoIChqUXVlcnkuZXZlbnQuc3BlY2lhbFsgaGFuZGxlT2JqLm9yaWdUeXBlIF0gfHwge30pLmhhbmRsZSB8fCBoYW5kbGVPYmouaGFuZGxlciApDQoJCQkJCQkJLmFwcGx5KCBtYXRjaGVkLmVsZW0sIGFyZ3MgKTsNCg0KCQkJCQlpZiAoIHJldCAhPT0gdW5kZWZpbmVkICkgew0KCQkJCQkJaWYgKCAoZXZlbnQucmVzdWx0ID0gcmV0KSA9PT0gZmFsc2UgKSB7DQoJCQkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsNCgkJCQkJCQlldmVudC5zdG9wUHJvcGFnYXRpb24oKTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCS8vIENhbGwgdGhlIHBvc3REaXNwYXRjaCBob29rIGZvciB0aGUgbWFwcGVkIHR5cGUNCgkJaWYgKCBzcGVjaWFsLnBvc3REaXNwYXRjaCApIHsNCgkJCXNwZWNpYWwucG9zdERpc3BhdGNoLmNhbGwoIHRoaXMsIGV2ZW50ICk7DQoJCX0NCg0KCQlyZXR1cm4gZXZlbnQucmVzdWx0Ow0KCX0sDQoNCgloYW5kbGVyczogZnVuY3Rpb24oIGV2ZW50LCBoYW5kbGVycyApIHsNCgkJdmFyIGksIG1hdGNoZXMsIHNlbCwgaGFuZGxlT2JqLA0KCQkJaGFuZGxlclF1ZXVlID0gW10sDQoJCQlkZWxlZ2F0ZUNvdW50ID0gaGFuZGxlcnMuZGVsZWdhdGVDb3VudCwNCgkJCWN1ciA9IGV2ZW50LnRhcmdldDsNCg0KCQkvLyBGaW5kIGRlbGVnYXRlIGhhbmRsZXJzDQoJCS8vIEJsYWNrLWhvbGUgU1ZHIDx1c2U+IGluc3RhbmNlIHRyZWVzICgjMTMxODApDQoJCS8vIEF2b2lkIG5vbi1sZWZ0LWNsaWNrIGJ1YmJsaW5nIGluIEZpcmVmb3ggKCMzODYxKQ0KCQlpZiAoIGRlbGVnYXRlQ291bnQgJiYgY3VyLm5vZGVUeXBlICYmICghZXZlbnQuYnV0dG9uIHx8IGV2ZW50LnR5cGUgIT09ICJjbGljayIpICkgew0KDQoJCQlmb3IgKCA7IGN1ciAhPT0gdGhpczsgY3VyID0gY3VyLnBhcmVudE5vZGUgfHwgdGhpcyApIHsNCg0KCQkJCS8vIERvbid0IHByb2Nlc3MgY2xpY2tzIG9uIGRpc2FibGVkIGVsZW1lbnRzICgjNjkxMSwgIzgxNjUsICMxMTM4MiwgIzExNzY0KQ0KCQkJCWlmICggY3VyLmRpc2FibGVkICE9PSB0cnVlIHx8IGV2ZW50LnR5cGUgIT09ICJjbGljayIgKSB7DQoJCQkJCW1hdGNoZXMgPSBbXTsNCgkJCQkJZm9yICggaSA9IDA7IGkgPCBkZWxlZ2F0ZUNvdW50OyBpKysgKSB7DQoJCQkJCQloYW5kbGVPYmogPSBoYW5kbGVyc1sgaSBdOw0KDQoJCQkJCQkvLyBEb24ndCBjb25mbGljdCB3aXRoIE9iamVjdC5wcm90b3R5cGUgcHJvcGVydGllcyAoIzEzMjAzKQ0KCQkJCQkJc2VsID0gaGFuZGxlT2JqLnNlbGVjdG9yICsgIiAiOw0KDQoJCQkJCQlpZiAoIG1hdGNoZXNbIHNlbCBdID09PSB1bmRlZmluZWQgKSB7DQoJCQkJCQkJbWF0Y2hlc1sgc2VsIF0gPSBoYW5kbGVPYmoubmVlZHNDb250ZXh0ID8NCgkJCQkJCQkJalF1ZXJ5KCBzZWwsIHRoaXMgKS5pbmRleCggY3VyICkgPj0gMCA6DQoJCQkJCQkJCWpRdWVyeS5maW5kKCBzZWwsIHRoaXMsIG51bGwsIFsgY3VyIF0gKS5sZW5ndGg7DQoJCQkJCQl9DQoJCQkJCQlpZiAoIG1hdGNoZXNbIHNlbCBdICkgew0KCQkJCQkJCW1hdGNoZXMucHVzaCggaGFuZGxlT2JqICk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQkJaWYgKCBtYXRjaGVzLmxlbmd0aCApIHsNCgkJCQkJCWhhbmRsZXJRdWV1ZS5wdXNoKHsgZWxlbTogY3VyLCBoYW5kbGVyczogbWF0Y2hlcyB9KTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCS8vIEFkZCB0aGUgcmVtYWluaW5nIChkaXJlY3RseS1ib3VuZCkgaGFuZGxlcnMNCgkJaWYgKCBkZWxlZ2F0ZUNvdW50IDwgaGFuZGxlcnMubGVuZ3RoICkgew0KCQkJaGFuZGxlclF1ZXVlLnB1c2goeyBlbGVtOiB0aGlzLCBoYW5kbGVyczogaGFuZGxlcnMuc2xpY2UoIGRlbGVnYXRlQ291bnQgKSB9KTsNCgkJfQ0KDQoJCXJldHVybiBoYW5kbGVyUXVldWU7DQoJfSwNCg0KCS8vIEluY2x1ZGVzIHNvbWUgZXZlbnQgcHJvcHMgc2hhcmVkIGJ5IEtleUV2ZW50IGFuZCBNb3VzZUV2ZW50DQoJcHJvcHM6ICJhbHRLZXkgYnViYmxlcyBjYW5jZWxhYmxlIGN0cmxLZXkgY3VycmVudFRhcmdldCBldmVudFBoYXNlIG1ldGFLZXkgcmVsYXRlZFRhcmdldCBzaGlmdEtleSB0YXJnZXQgdGltZVN0YW1wIHZpZXcgd2hpY2giLnNwbGl0KCIgIiksDQoNCglmaXhIb29rczoge30sDQoNCglrZXlIb29rczogew0KCQlwcm9wczogImNoYXIgY2hhckNvZGUga2V5IGtleUNvZGUiLnNwbGl0KCIgIiksDQoJCWZpbHRlcjogZnVuY3Rpb24oIGV2ZW50LCBvcmlnaW5hbCApIHsNCg0KCQkJLy8gQWRkIHdoaWNoIGZvciBrZXkgZXZlbnRzDQoJCQlpZiAoIGV2ZW50LndoaWNoID09IG51bGwgKSB7DQoJCQkJZXZlbnQud2hpY2ggPSBvcmlnaW5hbC5jaGFyQ29kZSAhPSBudWxsID8gb3JpZ2luYWwuY2hhckNvZGUgOiBvcmlnaW5hbC5rZXlDb2RlOw0KCQkJfQ0KDQoJCQlyZXR1cm4gZXZlbnQ7DQoJCX0NCgl9LA0KDQoJbW91c2VIb29rczogew0KCQlwcm9wczogImJ1dHRvbiBidXR0b25zIGNsaWVudFggY2xpZW50WSBvZmZzZXRYIG9mZnNldFkgcGFnZVggcGFnZVkgc2NyZWVuWCBzY3JlZW5ZIHRvRWxlbWVudCIuc3BsaXQoIiAiKSwNCgkJZmlsdGVyOiBmdW5jdGlvbiggZXZlbnQsIG9yaWdpbmFsICkgew0KCQkJdmFyIGV2ZW50RG9jLCBkb2MsIGJvZHksDQoJCQkJYnV0dG9uID0gb3JpZ2luYWwuYnV0dG9uOw0KDQoJCQkvLyBDYWxjdWxhdGUgcGFnZVgvWSBpZiBtaXNzaW5nIGFuZCBjbGllbnRYL1kgYXZhaWxhYmxlDQoJCQlpZiAoIGV2ZW50LnBhZ2VYID09IG51bGwgJiYgb3JpZ2luYWwuY2xpZW50WCAhPSBudWxsICkgew0KCQkJCWV2ZW50RG9jID0gZXZlbnQudGFyZ2V0Lm93bmVyRG9jdW1lbnQgfHwgZG9jdW1lbnQ7DQoJCQkJZG9jID0gZXZlbnREb2MuZG9jdW1lbnRFbGVtZW50Ow0KCQkJCWJvZHkgPSBldmVudERvYy5ib2R5Ow0KDQoJCQkJZXZlbnQucGFnZVggPSBvcmlnaW5hbC5jbGllbnRYICsgKCBkb2MgJiYgZG9jLnNjcm9sbExlZnQgfHwgYm9keSAmJiBib2R5LnNjcm9sbExlZnQgfHwgMCApIC0gKCBkb2MgJiYgZG9jLmNsaWVudExlZnQgfHwgYm9keSAmJiBib2R5LmNsaWVudExlZnQgfHwgMCApOw0KCQkJCWV2ZW50LnBhZ2VZID0gb3JpZ2luYWwuY2xpZW50WSArICggZG9jICYmIGRvYy5zY3JvbGxUb3AgIHx8IGJvZHkgJiYgYm9keS5zY3JvbGxUb3AgIHx8IDAgKSAtICggZG9jICYmIGRvYy5jbGllbnRUb3AgIHx8IGJvZHkgJiYgYm9keS5jbGllbnRUb3AgIHx8IDAgKTsNCgkJCX0NCg0KCQkJLy8gQWRkIHdoaWNoIGZvciBjbGljazogMSA9PT0gbGVmdDsgMiA9PT0gbWlkZGxlOyAzID09PSByaWdodA0KCQkJLy8gTm90ZTogYnV0dG9uIGlzIG5vdCBub3JtYWxpemVkLCBzbyBkb24ndCB1c2UgaXQNCgkJCWlmICggIWV2ZW50LndoaWNoICYmIGJ1dHRvbiAhPT0gdW5kZWZpbmVkICkgew0KCQkJCWV2ZW50LndoaWNoID0gKCBidXR0b24gJiAxID8gMSA6ICggYnV0dG9uICYgMiA/IDMgOiAoIGJ1dHRvbiAmIDQgPyAyIDogMCApICkgKTsNCgkJCX0NCg0KCQkJcmV0dXJuIGV2ZW50Ow0KCQl9DQoJfSwNCg0KCWZpeDogZnVuY3Rpb24oIGV2ZW50ICkgew0KCQlpZiAoIGV2ZW50WyBqUXVlcnkuZXhwYW5kbyBdICkgew0KCQkJcmV0dXJuIGV2ZW50Ow0KCQl9DQoNCgkJLy8gQ3JlYXRlIGEgd3JpdGFibGUgY29weSBvZiB0aGUgZXZlbnQgb2JqZWN0IGFuZCBub3JtYWxpemUgc29tZSBwcm9wZXJ0aWVzDQoJCXZhciBpLCBwcm9wLCBjb3B5LA0KCQkJdHlwZSA9IGV2ZW50LnR5cGUsDQoJCQlvcmlnaW5hbEV2ZW50ID0gZXZlbnQsDQoJCQlmaXhIb29rID0gdGhpcy5maXhIb29rc1sgdHlwZSBdOw0KDQoJCWlmICggIWZpeEhvb2sgKSB7DQoJCQl0aGlzLmZpeEhvb2tzWyB0eXBlIF0gPSBmaXhIb29rID0NCgkJCQlybW91c2VFdmVudC50ZXN0KCB0eXBlICkgPyB0aGlzLm1vdXNlSG9va3MgOg0KCQkJCXJrZXlFdmVudC50ZXN0KCB0eXBlICkgPyB0aGlzLmtleUhvb2tzIDoNCgkJCQl7fTsNCgkJfQ0KCQljb3B5ID0gZml4SG9vay5wcm9wcyA/IHRoaXMucHJvcHMuY29uY2F0KCBmaXhIb29rLnByb3BzICkgOiB0aGlzLnByb3BzOw0KDQoJCWV2ZW50ID0gbmV3IGpRdWVyeS5FdmVudCggb3JpZ2luYWxFdmVudCApOw0KDQoJCWkgPSBjb3B5Lmxlbmd0aDsNCgkJd2hpbGUgKCBpLS0gKSB7DQoJCQlwcm9wID0gY29weVsgaSBdOw0KCQkJZXZlbnRbIHByb3AgXSA9IG9yaWdpbmFsRXZlbnRbIHByb3AgXTsNCgkJfQ0KDQoJCS8vIFN1cHBvcnQ6IENvcmRvdmEgMi41IChXZWJLaXQpICgjMTMyNTUpDQoJCS8vIEFsbCBldmVudHMgc2hvdWxkIGhhdmUgYSB0YXJnZXQ7IENvcmRvdmEgZGV2aWNlcmVhZHkgZG9lc24ndA0KCQlpZiAoICFldmVudC50YXJnZXQgKSB7DQoJCQlldmVudC50YXJnZXQgPSBkb2N1bWVudDsNCgkJfQ0KDQoJCS8vIFN1cHBvcnQ6IFNhZmFyaSA2LjArLCBDaHJvbWU8MjgNCgkJLy8gVGFyZ2V0IHNob3VsZCBub3QgYmUgYSB0ZXh0IG5vZGUgKCM1MDQsICMxMzE0MykNCgkJaWYgKCBldmVudC50YXJnZXQubm9kZVR5cGUgPT09IDMgKSB7DQoJCQlldmVudC50YXJnZXQgPSBldmVudC50YXJnZXQucGFyZW50Tm9kZTsNCgkJfQ0KDQoJCXJldHVybiBmaXhIb29rLmZpbHRlciA/IGZpeEhvb2suZmlsdGVyKCBldmVudCwgb3JpZ2luYWxFdmVudCApIDogZXZlbnQ7DQoJfSwNCg0KCXNwZWNpYWw6IHsNCgkJbG9hZDogew0KCQkJLy8gUHJldmVudCB0cmlnZ2VyZWQgaW1hZ2UubG9hZCBldmVudHMgZnJvbSBidWJibGluZyB0byB3aW5kb3cubG9hZA0KCQkJbm9CdWJibGU6IHRydWUNCgkJfSwNCgkJZm9jdXM6IHsNCgkJCS8vIEZpcmUgbmF0aXZlIGV2ZW50IGlmIHBvc3NpYmxlIHNvIGJsdXIvZm9jdXMgc2VxdWVuY2UgaXMgY29ycmVjdA0KCQkJdHJpZ2dlcjogZnVuY3Rpb24oKSB7DQoJCQkJaWYgKCB0aGlzICE9PSBzYWZlQWN0aXZlRWxlbWVudCgpICYmIHRoaXMuZm9jdXMgKSB7DQoJCQkJCXRoaXMuZm9jdXMoKTsNCgkJCQkJcmV0dXJuIGZhbHNlOw0KCQkJCX0NCgkJCX0sDQoJCQlkZWxlZ2F0ZVR5cGU6ICJmb2N1c2luIg0KCQl9LA0KCQlibHVyOiB7DQoJCQl0cmlnZ2VyOiBmdW5jdGlvbigpIHsNCgkJCQlpZiAoIHRoaXMgPT09IHNhZmVBY3RpdmVFbGVtZW50KCkgJiYgdGhpcy5ibHVyICkgew0KCQkJCQl0aGlzLmJsdXIoKTsNCgkJCQkJcmV0dXJuIGZhbHNlOw0KCQkJCX0NCgkJCX0sDQoJCQlkZWxlZ2F0ZVR5cGU6ICJmb2N1c291dCINCgkJfSwNCgkJY2xpY2s6IHsNCgkJCS8vIEZvciBjaGVja2JveCwgZmlyZSBuYXRpdmUgZXZlbnQgc28gY2hlY2tlZCBzdGF0ZSB3aWxsIGJlIHJpZ2h0DQoJCQl0cmlnZ2VyOiBmdW5jdGlvbigpIHsNCgkJCQlpZiAoIHRoaXMudHlwZSA9PT0gImNoZWNrYm94IiAmJiB0aGlzLmNsaWNrICYmIGpRdWVyeS5ub2RlTmFtZSggdGhpcywgImlucHV0IiApICkgew0KCQkJCQl0aGlzLmNsaWNrKCk7DQoJCQkJCXJldHVybiBmYWxzZTsNCgkJCQl9DQoJCQl9LA0KDQoJCQkvLyBGb3IgY3Jvc3MtYnJvd3NlciBjb25zaXN0ZW5jeSwgZG9uJ3QgZmlyZSBuYXRpdmUgLmNsaWNrKCkgb24gbGlua3MNCgkJCV9kZWZhdWx0OiBmdW5jdGlvbiggZXZlbnQgKSB7DQoJCQkJcmV0dXJuIGpRdWVyeS5ub2RlTmFtZSggZXZlbnQudGFyZ2V0LCAiYSIgKTsNCgkJCX0NCgkJfSwNCg0KCQliZWZvcmV1bmxvYWQ6IHsNCgkJCXBvc3REaXNwYXRjaDogZnVuY3Rpb24oIGV2ZW50ICkgew0KDQoJCQkJLy8gU3VwcG9ydDogRmlyZWZveCAyMCsNCgkJCQkvLyBGaXJlZm94IGRvZXNuJ3QgYWxlcnQgaWYgdGhlIHJldHVyblZhbHVlIGZpZWxkIGlzIG5vdCBzZXQuDQoJCQkJaWYgKCBldmVudC5yZXN1bHQgIT09IHVuZGVmaW5lZCAmJiBldmVudC5vcmlnaW5hbEV2ZW50ICkgew0KCQkJCQlldmVudC5vcmlnaW5hbEV2ZW50LnJldHVyblZhbHVlID0gZXZlbnQucmVzdWx0Ow0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0sDQoNCglzaW11bGF0ZTogZnVuY3Rpb24oIHR5cGUsIGVsZW0sIGV2ZW50LCBidWJibGUgKSB7DQoJCS8vIFBpZ2d5YmFjayBvbiBhIGRvbm9yIGV2ZW50IHRvIHNpbXVsYXRlIGEgZGlmZmVyZW50IG9uZS4NCgkJLy8gRmFrZSBvcmlnaW5hbEV2ZW50IHRvIGF2b2lkIGRvbm9yJ3Mgc3RvcFByb3BhZ2F0aW9uLCBidXQgaWYgdGhlDQoJCS8vIHNpbXVsYXRlZCBldmVudCBwcmV2ZW50cyBkZWZhdWx0IHRoZW4gd2UgZG8gdGhlIHNhbWUgb24gdGhlIGRvbm9yLg0KCQl2YXIgZSA9IGpRdWVyeS5leHRlbmQoDQoJCQluZXcgalF1ZXJ5LkV2ZW50KCksDQoJCQlldmVudCwNCgkJCXsNCgkJCQl0eXBlOiB0eXBlLA0KCQkJCWlzU2ltdWxhdGVkOiB0cnVlLA0KCQkJCW9yaWdpbmFsRXZlbnQ6IHt9DQoJCQl9DQoJCSk7DQoJCWlmICggYnViYmxlICkgew0KCQkJalF1ZXJ5LmV2ZW50LnRyaWdnZXIoIGUsIG51bGwsIGVsZW0gKTsNCgkJfSBlbHNlIHsNCgkJCWpRdWVyeS5ldmVudC5kaXNwYXRjaC5jYWxsKCBlbGVtLCBlICk7DQoJCX0NCgkJaWYgKCBlLmlzRGVmYXVsdFByZXZlbnRlZCgpICkgew0KCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsNCgkJfQ0KCX0NCn07DQoNCmpRdWVyeS5yZW1vdmVFdmVudCA9IGZ1bmN0aW9uKCBlbGVtLCB0eXBlLCBoYW5kbGUgKSB7DQoJaWYgKCBlbGVtLnJlbW92ZUV2ZW50TGlzdGVuZXIgKSB7DQoJCWVsZW0ucmVtb3ZlRXZlbnRMaXN0ZW5lciggdHlwZSwgaGFuZGxlLCBmYWxzZSApOw0KCX0NCn07DQoNCmpRdWVyeS5FdmVudCA9IGZ1bmN0aW9uKCBzcmMsIHByb3BzICkgew0KCS8vIEFsbG93IGluc3RhbnRpYXRpb24gd2l0aG91dCB0aGUgJ25ldycga2V5d29yZA0KCWlmICggISh0aGlzIGluc3RhbmNlb2YgalF1ZXJ5LkV2ZW50KSApIHsNCgkJcmV0dXJuIG5ldyBqUXVlcnkuRXZlbnQoIHNyYywgcHJvcHMgKTsNCgl9DQoNCgkvLyBFdmVudCBvYmplY3QNCglpZiAoIHNyYyAmJiBzcmMudHlwZSApIHsNCgkJdGhpcy5vcmlnaW5hbEV2ZW50ID0gc3JjOw0KCQl0aGlzLnR5cGUgPSBzcmMudHlwZTsNCg0KCQkvLyBFdmVudHMgYnViYmxpbmcgdXAgdGhlIGRvY3VtZW50IG1heSBoYXZlIGJlZW4gbWFya2VkIGFzIHByZXZlbnRlZA0KCQkvLyBieSBhIGhhbmRsZXIgbG93ZXIgZG93biB0aGUgdHJlZTsgcmVmbGVjdCB0aGUgY29ycmVjdCB2YWx1ZS4NCgkJdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQgPSBzcmMuZGVmYXVsdFByZXZlbnRlZCB8fA0KCQkJCXNyYy5kZWZhdWx0UHJldmVudGVkID09PSB1bmRlZmluZWQgJiYNCgkJCQkvLyBTdXBwb3J0OiBBbmRyb2lkPDQuMA0KCQkJCXNyYy5yZXR1cm5WYWx1ZSA9PT0gZmFsc2UgPw0KCQkJcmV0dXJuVHJ1ZSA6DQoJCQlyZXR1cm5GYWxzZTsNCg0KCS8vIEV2ZW50IHR5cGUNCgl9IGVsc2Ugew0KCQl0aGlzLnR5cGUgPSBzcmM7DQoJfQ0KDQoJLy8gUHV0IGV4cGxpY2l0bHkgcHJvdmlkZWQgcHJvcGVydGllcyBvbnRvIHRoZSBldmVudCBvYmplY3QNCglpZiAoIHByb3BzICkgew0KCQlqUXVlcnkuZXh0ZW5kKCB0aGlzLCBwcm9wcyApOw0KCX0NCg0KCS8vIENyZWF0ZSBhIHRpbWVzdGFtcCBpZiBpbmNvbWluZyBldmVudCBkb2Vzbid0IGhhdmUgb25lDQoJdGhpcy50aW1lU3RhbXAgPSBzcmMgJiYgc3JjLnRpbWVTdGFtcCB8fCBqUXVlcnkubm93KCk7DQoNCgkvLyBNYXJrIGl0IGFzIGZpeGVkDQoJdGhpc1sgalF1ZXJ5LmV4cGFuZG8gXSA9IHRydWU7DQp9Ow0KDQovLyBqUXVlcnkuRXZlbnQgaXMgYmFzZWQgb24gRE9NMyBFdmVudHMgYXMgc3BlY2lmaWVkIGJ5IHRoZSBFQ01BU2NyaXB0IExhbmd1YWdlIEJpbmRpbmcNCi8vIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDMvV0QtRE9NLUxldmVsLTMtRXZlbnRzLTIwMDMwMzMxL2VjbWEtc2NyaXB0LWJpbmRpbmcuaHRtbA0KalF1ZXJ5LkV2ZW50LnByb3RvdHlwZSA9IHsNCglpc0RlZmF1bHRQcmV2ZW50ZWQ6IHJldHVybkZhbHNlLA0KCWlzUHJvcGFnYXRpb25TdG9wcGVkOiByZXR1cm5GYWxzZSwNCglpc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDogcmV0dXJuRmFsc2UsDQoNCglwcmV2ZW50RGVmYXVsdDogZnVuY3Rpb24oKSB7DQoJCXZhciBlID0gdGhpcy5vcmlnaW5hbEV2ZW50Ow0KDQoJCXRoaXMuaXNEZWZhdWx0UHJldmVudGVkID0gcmV0dXJuVHJ1ZTsNCg0KCQlpZiAoIGUgJiYgZS5wcmV2ZW50RGVmYXVsdCApIHsNCgkJCWUucHJldmVudERlZmF1bHQoKTsNCgkJfQ0KCX0sDQoJc3RvcFByb3BhZ2F0aW9uOiBmdW5jdGlvbigpIHsNCgkJdmFyIGUgPSB0aGlzLm9yaWdpbmFsRXZlbnQ7DQoNCgkJdGhpcy5pc1Byb3BhZ2F0aW9uU3RvcHBlZCA9IHJldHVyblRydWU7DQoNCgkJaWYgKCBlICYmIGUuc3RvcFByb3BhZ2F0aW9uICkgew0KCQkJZS5zdG9wUHJvcGFnYXRpb24oKTsNCgkJfQ0KCX0sDQoJc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOiBmdW5jdGlvbigpIHsNCgkJdmFyIGUgPSB0aGlzLm9yaWdpbmFsRXZlbnQ7DQoNCgkJdGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCA9IHJldHVyblRydWU7DQoNCgkJaWYgKCBlICYmIGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uICkgew0KCQkJZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTsNCgkJfQ0KDQoJCXRoaXMuc3RvcFByb3BhZ2F0aW9uKCk7DQoJfQ0KfTsNCg0KLy8gQ3JlYXRlIG1vdXNlZW50ZXIvbGVhdmUgZXZlbnRzIHVzaW5nIG1vdXNlb3Zlci9vdXQgYW5kIGV2ZW50LXRpbWUgY2hlY2tzDQovLyBTdXBwb3J0OiBDaHJvbWUgMTUrDQpqUXVlcnkuZWFjaCh7DQoJbW91c2VlbnRlcjogIm1vdXNlb3ZlciIsDQoJbW91c2VsZWF2ZTogIm1vdXNlb3V0IiwNCglwb2ludGVyZW50ZXI6ICJwb2ludGVyb3ZlciIsDQoJcG9pbnRlcmxlYXZlOiAicG9pbnRlcm91dCINCn0sIGZ1bmN0aW9uKCBvcmlnLCBmaXggKSB7DQoJalF1ZXJ5LmV2ZW50LnNwZWNpYWxbIG9yaWcgXSA9IHsNCgkJZGVsZWdhdGVUeXBlOiBmaXgsDQoJCWJpbmRUeXBlOiBmaXgsDQoNCgkJaGFuZGxlOiBmdW5jdGlvbiggZXZlbnQgKSB7DQoJCQl2YXIgcmV0LA0KCQkJCXRhcmdldCA9IHRoaXMsDQoJCQkJcmVsYXRlZCA9IGV2ZW50LnJlbGF0ZWRUYXJnZXQsDQoJCQkJaGFuZGxlT2JqID0gZXZlbnQuaGFuZGxlT2JqOw0KDQoJCQkvLyBGb3IgbW91c2VudGVyL2xlYXZlIGNhbGwgdGhlIGhhbmRsZXIgaWYgcmVsYXRlZCBpcyBvdXRzaWRlIHRoZSB0YXJnZXQuDQoJCQkvLyBOQjogTm8gcmVsYXRlZFRhcmdldCBpZiB0aGUgbW91c2UgbGVmdC9lbnRlcmVkIHRoZSBicm93c2VyIHdpbmRvdw0KCQkJaWYgKCAhcmVsYXRlZCB8fCAocmVsYXRlZCAhPT0gdGFyZ2V0ICYmICFqUXVlcnkuY29udGFpbnMoIHRhcmdldCwgcmVsYXRlZCApKSApIHsNCgkJCQlldmVudC50eXBlID0gaGFuZGxlT2JqLm9yaWdUeXBlOw0KCQkJCXJldCA9IGhhbmRsZU9iai5oYW5kbGVyLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsNCgkJCQlldmVudC50eXBlID0gZml4Ow0KCQkJfQ0KCQkJcmV0dXJuIHJldDsNCgkJfQ0KCX07DQp9KTsNCg0KLy8gU3VwcG9ydDogRmlyZWZveCwgQ2hyb21lLCBTYWZhcmkNCi8vIENyZWF0ZSAiYnViYmxpbmciIGZvY3VzIGFuZCBibHVyIGV2ZW50cw0KaWYgKCAhc3VwcG9ydC5mb2N1c2luQnViYmxlcyApIHsNCglqUXVlcnkuZWFjaCh7IGZvY3VzOiAiZm9jdXNpbiIsIGJsdXI6ICJmb2N1c291dCIgfSwgZnVuY3Rpb24oIG9yaWcsIGZpeCApIHsNCg0KCQkvLyBBdHRhY2ggYSBzaW5nbGUgY2FwdHVyaW5nIGhhbmRsZXIgb24gdGhlIGRvY3VtZW50IHdoaWxlIHNvbWVvbmUgd2FudHMgZm9jdXNpbi9mb2N1c291dA0KCQl2YXIgaGFuZGxlciA9IGZ1bmN0aW9uKCBldmVudCApIHsNCgkJCQlqUXVlcnkuZXZlbnQuc2ltdWxhdGUoIGZpeCwgZXZlbnQudGFyZ2V0LCBqUXVlcnkuZXZlbnQuZml4KCBldmVudCApLCB0cnVlICk7DQoJCQl9Ow0KDQoJCWpRdWVyeS5ldmVudC5zcGVjaWFsWyBmaXggXSA9IHsNCgkJCXNldHVwOiBmdW5jdGlvbigpIHsNCgkJCQl2YXIgZG9jID0gdGhpcy5vd25lckRvY3VtZW50IHx8IHRoaXMsDQoJCQkJCWF0dGFjaGVzID0gZGF0YV9wcml2LmFjY2VzcyggZG9jLCBmaXggKTsNCg0KCQkJCWlmICggIWF0dGFjaGVzICkgew0KCQkJCQlkb2MuYWRkRXZlbnRMaXN0ZW5lciggb3JpZywgaGFuZGxlciwgdHJ1ZSApOw0KCQkJCX0NCgkJCQlkYXRhX3ByaXYuYWNjZXNzKCBkb2MsIGZpeCwgKCBhdHRhY2hlcyB8fCAwICkgKyAxICk7DQoJCQl9LA0KCQkJdGVhcmRvd246IGZ1bmN0aW9uKCkgew0KCQkJCXZhciBkb2MgPSB0aGlzLm93bmVyRG9jdW1lbnQgfHwgdGhpcywNCgkJCQkJYXR0YWNoZXMgPSBkYXRhX3ByaXYuYWNjZXNzKCBkb2MsIGZpeCApIC0gMTsNCg0KCQkJCWlmICggIWF0dGFjaGVzICkgew0KCQkJCQlkb2MucmVtb3ZlRXZlbnRMaXN0ZW5lciggb3JpZywgaGFuZGxlciwgdHJ1ZSApOw0KCQkJCQlkYXRhX3ByaXYucmVtb3ZlKCBkb2MsIGZpeCApOw0KDQoJCQkJfSBlbHNlIHsNCgkJCQkJZGF0YV9wcml2LmFjY2VzcyggZG9jLCBmaXgsIGF0dGFjaGVzICk7DQoJCQkJfQ0KCQkJfQ0KCQl9Ow0KCX0pOw0KfQ0KDQpqUXVlcnkuZm4uZXh0ZW5kKHsNCg0KCW9uOiBmdW5jdGlvbiggdHlwZXMsIHNlbGVjdG9yLCBkYXRhLCBmbiwgLypJTlRFUk5BTCovIG9uZSApIHsNCgkJdmFyIG9yaWdGbiwgdHlwZTsNCg0KCQkvLyBUeXBlcyBjYW4gYmUgYSBtYXAgb2YgdHlwZXMvaGFuZGxlcnMNCgkJaWYgKCB0eXBlb2YgdHlwZXMgPT09ICJvYmplY3QiICkgew0KCQkJLy8gKCB0eXBlcy1PYmplY3QsIHNlbGVjdG9yLCBkYXRhICkNCgkJCWlmICggdHlwZW9mIHNlbGVjdG9yICE9PSAic3RyaW5nIiApIHsNCgkJCQkvLyAoIHR5cGVzLU9iamVjdCwgZGF0YSApDQoJCQkJZGF0YSA9IGRhdGEgfHwgc2VsZWN0b3I7DQoJCQkJc2VsZWN0b3IgPSB1bmRlZmluZWQ7DQoJCQl9DQoJCQlmb3IgKCB0eXBlIGluIHR5cGVzICkgew0KCQkJCXRoaXMub24oIHR5cGUsIHNlbGVjdG9yLCBkYXRhLCB0eXBlc1sgdHlwZSBdLCBvbmUgKTsNCgkJCX0NCgkJCXJldHVybiB0aGlzOw0KCQl9DQoNCgkJaWYgKCBkYXRhID09IG51bGwgJiYgZm4gPT0gbnVsbCApIHsNCgkJCS8vICggdHlwZXMsIGZuICkNCgkJCWZuID0gc2VsZWN0b3I7DQoJCQlkYXRhID0gc2VsZWN0b3IgPSB1bmRlZmluZWQ7DQoJCX0gZWxzZSBpZiAoIGZuID09IG51bGwgKSB7DQoJCQlpZiAoIHR5cGVvZiBzZWxlY3RvciA9PT0gInN0cmluZyIgKSB7DQoJCQkJLy8gKCB0eXBlcywgc2VsZWN0b3IsIGZuICkNCgkJCQlmbiA9IGRhdGE7DQoJCQkJZGF0YSA9IHVuZGVmaW5lZDsNCgkJCX0gZWxzZSB7DQoJCQkJLy8gKCB0eXBlcywgZGF0YSwgZm4gKQ0KCQkJCWZuID0gZGF0YTsNCgkJCQlkYXRhID0gc2VsZWN0b3I7DQoJCQkJc2VsZWN0b3IgPSB1bmRlZmluZWQ7DQoJCQl9DQoJCX0NCgkJaWYgKCBmbiA9PT0gZmFsc2UgKSB7DQoJCQlmbiA9IHJldHVybkZhbHNlOw0KCQl9IGVsc2UgaWYgKCAhZm4gKSB7DQoJCQlyZXR1cm4gdGhpczsNCgkJfQ0KDQoJCWlmICggb25lID09PSAxICkgew0KCQkJb3JpZ0ZuID0gZm47DQoJCQlmbiA9IGZ1bmN0aW9uKCBldmVudCApIHsNCgkJCQkvLyBDYW4gdXNlIGFuIGVtcHR5IHNldCwgc2luY2UgZXZlbnQgY29udGFpbnMgdGhlIGluZm8NCgkJCQlqUXVlcnkoKS5vZmYoIGV2ZW50ICk7DQoJCQkJcmV0dXJuIG9yaWdGbi5hcHBseSggdGhpcywgYXJndW1lbnRzICk7DQoJCQl9Ow0KCQkJLy8gVXNlIHNhbWUgZ3VpZCBzbyBjYWxsZXIgY2FuIHJlbW92ZSB1c2luZyBvcmlnRm4NCgkJCWZuLmd1aWQgPSBvcmlnRm4uZ3VpZCB8fCAoIG9yaWdGbi5ndWlkID0galF1ZXJ5Lmd1aWQrKyApOw0KCQl9DQoJCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgew0KCQkJalF1ZXJ5LmV2ZW50LmFkZCggdGhpcywgdHlwZXMsIGZuLCBkYXRhLCBzZWxlY3RvciApOw0KCQl9KTsNCgl9LA0KCW9uZTogZnVuY3Rpb24oIHR5cGVzLCBzZWxlY3RvciwgZGF0YSwgZm4gKSB7DQoJCXJldHVybiB0aGlzLm9uKCB0eXBlcywgc2VsZWN0b3IsIGRhdGEsIGZuLCAxICk7DQoJfSwNCglvZmY6IGZ1bmN0aW9uKCB0eXBlcywgc2VsZWN0b3IsIGZuICkgew0KCQl2YXIgaGFuZGxlT2JqLCB0eXBlOw0KCQlpZiAoIHR5cGVzICYmIHR5cGVzLnByZXZlbnREZWZhdWx0ICYmIHR5cGVzLmhhbmRsZU9iaiApIHsNCgkJCS8vICggZXZlbnQgKSAgZGlzcGF0Y2hlZCBqUXVlcnkuRXZlbnQNCgkJCWhhbmRsZU9iaiA9IHR5cGVzLmhhbmRsZU9iajsNCgkJCWpRdWVyeSggdHlwZXMuZGVsZWdhdGVUYXJnZXQgKS5vZmYoDQoJCQkJaGFuZGxlT2JqLm5hbWVzcGFjZSA/IGhhbmRsZU9iai5vcmlnVHlwZSArICIuIiArIGhhbmRsZU9iai5uYW1lc3BhY2UgOiBoYW5kbGVPYmoub3JpZ1R5cGUsDQoJCQkJaGFuZGxlT2JqLnNlbGVjdG9yLA0KCQkJCWhhbmRsZU9iai5oYW5kbGVyDQoJCQkpOw0KCQkJcmV0dXJuIHRoaXM7DQoJCX0NCgkJaWYgKCB0eXBlb2YgdHlwZXMgPT09ICJvYmplY3QiICkgew0KCQkJLy8gKCB0eXBlcy1vYmplY3QgWywgc2VsZWN0b3JdICkNCgkJCWZvciAoIHR5cGUgaW4gdHlwZXMgKSB7DQoJCQkJdGhpcy5vZmYoIHR5cGUsIHNlbGVjdG9yLCB0eXBlc1sgdHlwZSBdICk7DQoJCQl9DQoJCQlyZXR1cm4gdGhpczsNCgkJfQ0KCQlpZiAoIHNlbGVjdG9yID09PSBmYWxzZSB8fCB0eXBlb2Ygc2VsZWN0b3IgPT09ICJmdW5jdGlvbiIgKSB7DQoJCQkvLyAoIHR5cGVzIFssIGZuXSApDQoJCQlmbiA9IHNlbGVjdG9yOw0KCQkJc2VsZWN0b3IgPSB1bmRlZmluZWQ7DQoJCX0NCgkJaWYgKCBmbiA9PT0gZmFsc2UgKSB7DQoJCQlmbiA9IHJldHVybkZhbHNlOw0KCQl9DQoJCXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7DQoJCQlqUXVlcnkuZXZlbnQucmVtb3ZlKCB0aGlzLCB0eXBlcywgZm4sIHNlbGVjdG9yICk7DQoJCX0pOw0KCX0sDQoNCgl0cmlnZ2VyOiBmdW5jdGlvbiggdHlwZSwgZGF0YSApIHsNCgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCWpRdWVyeS5ldmVudC50cmlnZ2VyKCB0eXBlLCBkYXRhLCB0aGlzICk7DQoJCX0pOw0KCX0sDQoJdHJpZ2dlckhhbmRsZXI6IGZ1bmN0aW9uKCB0eXBlLCBkYXRhICkgew0KCQl2YXIgZWxlbSA9IHRoaXNbMF07DQoJCWlmICggZWxlbSApIHsNCgkJCXJldHVybiBqUXVlcnkuZXZlbnQudHJpZ2dlciggdHlwZSwgZGF0YSwgZWxlbSwgdHJ1ZSApOw0KCQl9DQoJfQ0KfSk7DQoNCg0KdmFyDQoJcnhodG1sVGFnID0gLzwoPyFhcmVhfGJyfGNvbHxlbWJlZHxocnxpbWd8aW5wdXR8bGlua3xtZXRhfHBhcmFtKSgoW1x3Ol0rKVtePl0qKVwvPi9naSwNCglydGFnTmFtZSA9IC88KFtcdzpdKykvLA0KCXJodG1sID0gLzx8JiM/XHcrOy8sDQoJcm5vSW5uZXJodG1sID0gLzwoPzpzY3JpcHR8c3R5bGV8bGluaykvaSwNCgkvLyBjaGVja2VkPSJjaGVja2VkIiBvciBjaGVja2VkDQoJcmNoZWNrZWQgPSAvY2hlY2tlZFxzKig/OltePV18PVxzKi5jaGVja2VkLikvaSwNCglyc2NyaXB0VHlwZSA9IC9eJHxcLyg/OmphdmF8ZWNtYSlzY3JpcHQvaSwNCglyc2NyaXB0VHlwZU1hc2tlZCA9IC9edHJ1ZVwvKC4qKS8sDQoJcmNsZWFuU2NyaXB0ID0gL15ccyo8ISg/OlxbQ0RBVEFcW3wtLSl8KD86XF1cXXwtLSk+XHMqJC9nLA0KDQoJLy8gV2UgaGF2ZSB0byBjbG9zZSB0aGVzZSB0YWdzIHRvIHN1cHBvcnQgWEhUTUwgKCMxMzIwMCkNCgl3cmFwTWFwID0gew0KDQoJCS8vIFN1cHBvcnQ6IElFOQ0KCQlvcHRpb246IFsgMSwgIjxzZWxlY3QgbXVsdGlwbGU9J211bHRpcGxlJz4iLCAiPC9zZWxlY3Q+IiBdLA0KDQoJCXRoZWFkOiBbIDEsICI8dGFibGU+IiwgIjwvdGFibGU+IiBdLA0KCQljb2w6IFsgMiwgIjx0YWJsZT48Y29sZ3JvdXA+IiwgIjwvY29sZ3JvdXA+PC90YWJsZT4iIF0sDQoJCXRyOiBbIDIsICI8dGFibGU+PHRib2R5PiIsICI8L3Rib2R5PjwvdGFibGU+IiBdLA0KCQl0ZDogWyAzLCAiPHRhYmxlPjx0Ym9keT48dHI+IiwgIjwvdHI+PC90Ym9keT48L3RhYmxlPiIgXSwNCg0KCQlfZGVmYXVsdDogWyAwLCAiIiwgIiIgXQ0KCX07DQoNCi8vIFN1cHBvcnQ6IElFOQ0Kd3JhcE1hcC5vcHRncm91cCA9IHdyYXBNYXAub3B0aW9uOw0KDQp3cmFwTWFwLnRib2R5ID0gd3JhcE1hcC50Zm9vdCA9IHdyYXBNYXAuY29sZ3JvdXAgPSB3cmFwTWFwLmNhcHRpb24gPSB3cmFwTWFwLnRoZWFkOw0Kd3JhcE1hcC50aCA9IHdyYXBNYXAudGQ7DQoNCi8vIFN1cHBvcnQ6IDEueCBjb21wYXRpYmlsaXR5DQovLyBNYW5pcHVsYXRpbmcgdGFibGVzIHJlcXVpcmVzIGEgdGJvZHkNCmZ1bmN0aW9uIG1hbmlwdWxhdGlvblRhcmdldCggZWxlbSwgY29udGVudCApIHsNCglyZXR1cm4galF1ZXJ5Lm5vZGVOYW1lKCBlbGVtLCAidGFibGUiICkgJiYNCgkJalF1ZXJ5Lm5vZGVOYW1lKCBjb250ZW50Lm5vZGVUeXBlICE9PSAxMSA/IGNvbnRlbnQgOiBjb250ZW50LmZpcnN0Q2hpbGQsICJ0ciIgKSA/DQoNCgkJZWxlbS5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGJvZHkiKVswXSB8fA0KCQkJZWxlbS5hcHBlbmRDaGlsZCggZWxlbS5vd25lckRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRib2R5IikgKSA6DQoJCWVsZW07DQp9DQoNCi8vIFJlcGxhY2UvcmVzdG9yZSB0aGUgdHlwZSBhdHRyaWJ1dGUgb2Ygc2NyaXB0IGVsZW1lbnRzIGZvciBzYWZlIERPTSBtYW5pcHVsYXRpb24NCmZ1bmN0aW9uIGRpc2FibGVTY3JpcHQoIGVsZW0gKSB7DQoJZWxlbS50eXBlID0gKGVsZW0uZ2V0QXR0cmlidXRlKCJ0eXBlIikgIT09IG51bGwpICsgIi8iICsgZWxlbS50eXBlOw0KCXJldHVybiBlbGVtOw0KfQ0KZnVuY3Rpb24gcmVzdG9yZVNjcmlwdCggZWxlbSApIHsNCgl2YXIgbWF0Y2ggPSByc2NyaXB0VHlwZU1hc2tlZC5leGVjKCBlbGVtLnR5cGUgKTsNCg0KCWlmICggbWF0Y2ggKSB7DQoJCWVsZW0udHlwZSA9IG1hdGNoWyAxIF07DQoJfSBlbHNlIHsNCgkJZWxlbS5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKTsNCgl9DQoNCglyZXR1cm4gZWxlbTsNCn0NCg0KLy8gTWFyayBzY3JpcHRzIGFzIGhhdmluZyBhbHJlYWR5IGJlZW4gZXZhbHVhdGVkDQpmdW5jdGlvbiBzZXRHbG9iYWxFdmFsKCBlbGVtcywgcmVmRWxlbWVudHMgKSB7DQoJdmFyIGkgPSAwLA0KCQlsID0gZWxlbXMubGVuZ3RoOw0KDQoJZm9yICggOyBpIDwgbDsgaSsrICkgew0KCQlkYXRhX3ByaXYuc2V0KA0KCQkJZWxlbXNbIGkgXSwgImdsb2JhbEV2YWwiLCAhcmVmRWxlbWVudHMgfHwgZGF0YV9wcml2LmdldCggcmVmRWxlbWVudHNbIGkgXSwgImdsb2JhbEV2YWwiICkNCgkJKTsNCgl9DQp9DQoNCmZ1bmN0aW9uIGNsb25lQ29weUV2ZW50KCBzcmMsIGRlc3QgKSB7DQoJdmFyIGksIGwsIHR5cGUsIHBkYXRhT2xkLCBwZGF0YUN1ciwgdWRhdGFPbGQsIHVkYXRhQ3VyLCBldmVudHM7DQoNCglpZiAoIGRlc3Qubm9kZVR5cGUgIT09IDEgKSB7DQoJCXJldHVybjsNCgl9DQoNCgkvLyAxLiBDb3B5IHByaXZhdGUgZGF0YTogZXZlbnRzLCBoYW5kbGVycywgZXRjLg0KCWlmICggZGF0YV9wcml2Lmhhc0RhdGEoIHNyYyApICkgew0KCQlwZGF0YU9sZCA9IGRhdGFfcHJpdi5hY2Nlc3MoIHNyYyApOw0KCQlwZGF0YUN1ciA9IGRhdGFfcHJpdi5zZXQoIGRlc3QsIHBkYXRhT2xkICk7DQoJCWV2ZW50cyA9IHBkYXRhT2xkLmV2ZW50czsNCg0KCQlpZiAoIGV2ZW50cyApIHsNCgkJCWRlbGV0ZSBwZGF0YUN1ci5oYW5kbGU7DQoJCQlwZGF0YUN1ci5ldmVudHMgPSB7fTsNCg0KCQkJZm9yICggdHlwZSBpbiBldmVudHMgKSB7DQoJCQkJZm9yICggaSA9IDAsIGwgPSBldmVudHNbIHR5cGUgXS5sZW5ndGg7IGkgPCBsOyBpKysgKSB7DQoJCQkJCWpRdWVyeS5ldmVudC5hZGQoIGRlc3QsIHR5cGUsIGV2ZW50c1sgdHlwZSBdWyBpIF0gKTsNCgkJCQl9DQoJCQl9DQoJCX0NCgl9DQoNCgkvLyAyLiBDb3B5IHVzZXIgZGF0YQ0KCWlmICggZGF0YV91c2VyLmhhc0RhdGEoIHNyYyApICkgew0KCQl1ZGF0YU9sZCA9IGRhdGFfdXNlci5hY2Nlc3MoIHNyYyApOw0KCQl1ZGF0YUN1ciA9IGpRdWVyeS5leHRlbmQoIHt9LCB1ZGF0YU9sZCApOw0KDQoJCWRhdGFfdXNlci5zZXQoIGRlc3QsIHVkYXRhQ3VyICk7DQoJfQ0KfQ0KDQpmdW5jdGlvbiBnZXRBbGwoIGNvbnRleHQsIHRhZyApIHsNCgl2YXIgcmV0ID0gY29udGV4dC5nZXRFbGVtZW50c0J5VGFnTmFtZSA/IGNvbnRleHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIHRhZyB8fCAiKiIgKSA6DQoJCQljb250ZXh0LnF1ZXJ5U2VsZWN0b3JBbGwgPyBjb250ZXh0LnF1ZXJ5U2VsZWN0b3JBbGwoIHRhZyB8fCAiKiIgKSA6DQoJCQlbXTsNCg0KCXJldHVybiB0YWcgPT09IHVuZGVmaW5lZCB8fCB0YWcgJiYgalF1ZXJ5Lm5vZGVOYW1lKCBjb250ZXh0LCB0YWcgKSA/DQoJCWpRdWVyeS5tZXJnZSggWyBjb250ZXh0IF0sIHJldCApIDoNCgkJcmV0Ow0KfQ0KDQovLyBGaXggSUUgYnVncywgc2VlIHN1cHBvcnQgdGVzdHMNCmZ1bmN0aW9uIGZpeElucHV0KCBzcmMsIGRlc3QgKSB7DQoJdmFyIG5vZGVOYW1lID0gZGVzdC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOw0KDQoJLy8gRmFpbHMgdG8gcGVyc2lzdCB0aGUgY2hlY2tlZCBzdGF0ZSBvZiBhIGNsb25lZCBjaGVja2JveCBvciByYWRpbyBidXR0b24uDQoJaWYgKCBub2RlTmFtZSA9PT0gImlucHV0IiAmJiByY2hlY2thYmxlVHlwZS50ZXN0KCBzcmMudHlwZSApICkgew0KCQlkZXN0LmNoZWNrZWQgPSBzcmMuY2hlY2tlZDsNCg0KCS8vIEZhaWxzIHRvIHJldHVybiB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRvIHRoZSBkZWZhdWx0IHNlbGVjdGVkIHN0YXRlIHdoZW4gY2xvbmluZyBvcHRpb25zDQoJfSBlbHNlIGlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgfHwgbm9kZU5hbWUgPT09ICJ0ZXh0YXJlYSIgKSB7DQoJCWRlc3QuZGVmYXVsdFZhbHVlID0gc3JjLmRlZmF1bHRWYWx1ZTsNCgl9DQp9DQoNCmpRdWVyeS5leHRlbmQoew0KCWNsb25lOiBmdW5jdGlvbiggZWxlbSwgZGF0YUFuZEV2ZW50cywgZGVlcERhdGFBbmRFdmVudHMgKSB7DQoJCXZhciBpLCBsLCBzcmNFbGVtZW50cywgZGVzdEVsZW1lbnRzLA0KCQkJY2xvbmUgPSBlbGVtLmNsb25lTm9kZSggdHJ1ZSApLA0KCQkJaW5QYWdlID0galF1ZXJ5LmNvbnRhaW5zKCBlbGVtLm93bmVyRG9jdW1lbnQsIGVsZW0gKTsNCg0KCQkvLyBGaXggSUUgY2xvbmluZyBpc3N1ZXMNCgkJaWYgKCAhc3VwcG9ydC5ub0Nsb25lQ2hlY2tlZCAmJiAoIGVsZW0ubm9kZVR5cGUgPT09IDEgfHwgZWxlbS5ub2RlVHlwZSA9PT0gMTEgKSAmJg0KCQkJCSFqUXVlcnkuaXNYTUxEb2MoIGVsZW0gKSApIHsNCg0KCQkJLy8gV2UgZXNjaGV3IFNpenpsZSBoZXJlIGZvciBwZXJmb3JtYW5jZSByZWFzb25zOiBodHRwOi8vanNwZXJmLmNvbS9nZXRhbGwtdnMtc2l6emxlLzINCgkJCWRlc3RFbGVtZW50cyA9IGdldEFsbCggY2xvbmUgKTsNCgkJCXNyY0VsZW1lbnRzID0gZ2V0QWxsKCBlbGVtICk7DQoNCgkJCWZvciAoIGkgPSAwLCBsID0gc3JjRWxlbWVudHMubGVuZ3RoOyBpIDwgbDsgaSsrICkgew0KCQkJCWZpeElucHV0KCBzcmNFbGVtZW50c1sgaSBdLCBkZXN0RWxlbWVudHNbIGkgXSApOw0KCQkJfQ0KCQl9DQoNCgkJLy8gQ29weSB0aGUgZXZlbnRzIGZyb20gdGhlIG9yaWdpbmFsIHRvIHRoZSBjbG9uZQ0KCQlpZiAoIGRhdGFBbmRFdmVudHMgKSB7DQoJCQlpZiAoIGRlZXBEYXRhQW5kRXZlbnRzICkgew0KCQkJCXNyY0VsZW1lbnRzID0gc3JjRWxlbWVudHMgfHwgZ2V0QWxsKCBlbGVtICk7DQoJCQkJZGVzdEVsZW1lbnRzID0gZGVzdEVsZW1lbnRzIHx8IGdldEFsbCggY2xvbmUgKTsNCg0KCQkJCWZvciAoIGkgPSAwLCBsID0gc3JjRWxlbWVudHMubGVuZ3RoOyBpIDwgbDsgaSsrICkgew0KCQkJCQljbG9uZUNvcHlFdmVudCggc3JjRWxlbWVudHNbIGkgXSwgZGVzdEVsZW1lbnRzWyBpIF0gKTsNCgkJCQl9DQoJCQl9IGVsc2Ugew0KCQkJCWNsb25lQ29weUV2ZW50KCBlbGVtLCBjbG9uZSApOw0KCQkJfQ0KCQl9DQoNCgkJLy8gUHJlc2VydmUgc2NyaXB0IGV2YWx1YXRpb24gaGlzdG9yeQ0KCQlkZXN0RWxlbWVudHMgPSBnZXRBbGwoIGNsb25lLCAic2NyaXB0IiApOw0KCQlpZiAoIGRlc3RFbGVtZW50cy5sZW5ndGggPiAwICkgew0KCQkJc2V0R2xvYmFsRXZhbCggZGVzdEVsZW1lbnRzLCAhaW5QYWdlICYmIGdldEFsbCggZWxlbSwgInNjcmlwdCIgKSApOw0KCQl9DQoNCgkJLy8gUmV0dXJuIHRoZSBjbG9uZWQgc2V0DQoJCXJldHVybiBjbG9uZTsNCgl9LA0KDQoJYnVpbGRGcmFnbWVudDogZnVuY3Rpb24oIGVsZW1zLCBjb250ZXh0LCBzY3JpcHRzLCBzZWxlY3Rpb24gKSB7DQoJCXZhciBlbGVtLCB0bXAsIHRhZywgd3JhcCwgY29udGFpbnMsIGosDQoJCQlmcmFnbWVudCA9IGNvbnRleHQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLA0KCQkJbm9kZXMgPSBbXSwNCgkJCWkgPSAwLA0KCQkJbCA9IGVsZW1zLmxlbmd0aDsNCg0KCQlmb3IgKCA7IGkgPCBsOyBpKysgKSB7DQoJCQllbGVtID0gZWxlbXNbIGkgXTsNCg0KCQkJaWYgKCBlbGVtIHx8IGVsZW0gPT09IDAgKSB7DQoNCgkJCQkvLyBBZGQgbm9kZXMgZGlyZWN0bHkNCgkJCQlpZiAoIGpRdWVyeS50eXBlKCBlbGVtICkgPT09ICJvYmplY3QiICkgew0KCQkJCQkvLyBTdXBwb3J0OiBRdFdlYktpdCwgUGhhbnRvbUpTDQoJCQkJCS8vIHB1c2guYXBwbHkoXywgYXJyYXlsaWtlKSB0aHJvd3Mgb24gYW5jaWVudCBXZWJLaXQNCgkJCQkJalF1ZXJ5Lm1lcmdlKCBub2RlcywgZWxlbS5ub2RlVHlwZSA/IFsgZWxlbSBdIDogZWxlbSApOw0KDQoJCQkJLy8gQ29udmVydCBub24taHRtbCBpbnRvIGEgdGV4dCBub2RlDQoJCQkJfSBlbHNlIGlmICggIXJodG1sLnRlc3QoIGVsZW0gKSApIHsNCgkJCQkJbm9kZXMucHVzaCggY29udGV4dC5jcmVhdGVUZXh0Tm9kZSggZWxlbSApICk7DQoNCgkJCQkvLyBDb252ZXJ0IGh0bWwgaW50byBET00gbm9kZXMNCgkJCQl9IGVsc2Ugew0KCQkJCQl0bXAgPSB0bXAgfHwgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoIGNvbnRleHQuY3JlYXRlRWxlbWVudCgiZGl2IikgKTsNCg0KCQkJCQkvLyBEZXNlcmlhbGl6ZSBhIHN0YW5kYXJkIHJlcHJlc2VudGF0aW9uDQoJCQkJCXRhZyA9ICggcnRhZ05hbWUuZXhlYyggZWxlbSApIHx8IFsgIiIsICIiIF0gKVsgMSBdLnRvTG93ZXJDYXNlKCk7DQoJCQkJCXdyYXAgPSB3cmFwTWFwWyB0YWcgXSB8fCB3cmFwTWFwLl9kZWZhdWx0Ow0KCQkJCQl0bXAuaW5uZXJIVE1MID0gd3JhcFsgMSBdICsgZWxlbS5yZXBsYWNlKCByeGh0bWxUYWcsICI8JDE+PC8kMj4iICkgKyB3cmFwWyAyIF07DQoNCgkJCQkJLy8gRGVzY2VuZCB0aHJvdWdoIHdyYXBwZXJzIHRvIHRoZSByaWdodCBjb250ZW50DQoJCQkJCWogPSB3cmFwWyAwIF07DQoJCQkJCXdoaWxlICggai0tICkgew0KCQkJCQkJdG1wID0gdG1wLmxhc3RDaGlsZDsNCgkJCQkJfQ0KDQoJCQkJCS8vIFN1cHBvcnQ6IFF0V2ViS2l0LCBQaGFudG9tSlMNCgkJCQkJLy8gcHVzaC5hcHBseShfLCBhcnJheWxpa2UpIHRocm93cyBvbiBhbmNpZW50IFdlYktpdA0KCQkJCQlqUXVlcnkubWVyZ2UoIG5vZGVzLCB0bXAuY2hpbGROb2RlcyApOw0KDQoJCQkJCS8vIFJlbWVtYmVyIHRoZSB0b3AtbGV2ZWwgY29udGFpbmVyDQoJCQkJCXRtcCA9IGZyYWdtZW50LmZpcnN0Q2hpbGQ7DQoNCgkJCQkJLy8gRW5zdXJlIHRoZSBjcmVhdGVkIG5vZGVzIGFyZSBvcnBoYW5lZCAoIzEyMzkyKQ0KCQkJCQl0bXAudGV4dENvbnRlbnQgPSAiIjsNCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQkvLyBSZW1vdmUgd3JhcHBlciBmcm9tIGZyYWdtZW50DQoJCWZyYWdtZW50LnRleHRDb250ZW50ID0gIiI7DQoNCgkJaSA9IDA7DQoJCXdoaWxlICggKGVsZW0gPSBub2Rlc1sgaSsrIF0pICkgew0KDQoJCQkvLyAjNDA4NyAtIElmIG9yaWdpbiBhbmQgZGVzdGluYXRpb24gZWxlbWVudHMgYXJlIHRoZSBzYW1lLCBhbmQgdGhpcyBpcw0KCQkJLy8gdGhhdCBlbGVtZW50LCBkbyBub3QgZG8gYW55dGhpbmcNCgkJCWlmICggc2VsZWN0aW9uICYmIGpRdWVyeS5pbkFycmF5KCBlbGVtLCBzZWxlY3Rpb24gKSAhPT0gLTEgKSB7DQoJCQkJY29udGludWU7DQoJCQl9DQoNCgkJCWNvbnRhaW5zID0galF1ZXJ5LmNvbnRhaW5zKCBlbGVtLm93bmVyRG9jdW1lbnQsIGVsZW0gKTsNCg0KCQkJLy8gQXBwZW5kIHRvIGZyYWdtZW50DQoJCQl0bXAgPSBnZXRBbGwoIGZyYWdtZW50LmFwcGVuZENoaWxkKCBlbGVtICksICJzY3JpcHQiICk7DQoNCgkJCS8vIFByZXNlcnZlIHNjcmlwdCBldmFsdWF0aW9uIGhpc3RvcnkNCgkJCWlmICggY29udGFpbnMgKSB7DQoJCQkJc2V0R2xvYmFsRXZhbCggdG1wICk7DQoJCQl9DQoNCgkJCS8vIENhcHR1cmUgZXhlY3V0YWJsZXMNCgkJCWlmICggc2NyaXB0cyApIHsNCgkJCQlqID0gMDsNCgkJCQl3aGlsZSAoIChlbGVtID0gdG1wWyBqKysgXSkgKSB7DQoJCQkJCWlmICggcnNjcmlwdFR5cGUudGVzdCggZWxlbS50eXBlIHx8ICIiICkgKSB7DQoJCQkJCQlzY3JpcHRzLnB1c2goIGVsZW0gKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBmcmFnbWVudDsNCgl9LA0KDQoJY2xlYW5EYXRhOiBmdW5jdGlvbiggZWxlbXMgKSB7DQoJCXZhciBkYXRhLCBlbGVtLCB0eXBlLCBrZXksDQoJCQlzcGVjaWFsID0galF1ZXJ5LmV2ZW50LnNwZWNpYWwsDQoJCQlpID0gMDsNCg0KCQlmb3IgKCA7IChlbGVtID0gZWxlbXNbIGkgXSkgIT09IHVuZGVmaW5lZDsgaSsrICkgew0KCQkJaWYgKCBqUXVlcnkuYWNjZXB0RGF0YSggZWxlbSApICkgew0KCQkJCWtleSA9IGVsZW1bIGRhdGFfcHJpdi5leHBhbmRvIF07DQoNCgkJCQlpZiAoIGtleSAmJiAoZGF0YSA9IGRhdGFfcHJpdi5jYWNoZVsga2V5IF0pICkgew0KCQkJCQlpZiAoIGRhdGEuZXZlbnRzICkgew0KCQkJCQkJZm9yICggdHlwZSBpbiBkYXRhLmV2ZW50cyApIHsNCgkJCQkJCQlpZiAoIHNwZWNpYWxbIHR5cGUgXSApIHsNCgkJCQkJCQkJalF1ZXJ5LmV2ZW50LnJlbW92ZSggZWxlbSwgdHlwZSApOw0KDQoJCQkJCQkJLy8gVGhpcyBpcyBhIHNob3J0Y3V0IHRvIGF2b2lkIGpRdWVyeS5ldmVudC5yZW1vdmUncyBvdmVyaGVhZA0KCQkJCQkJCX0gZWxzZSB7DQoJCQkJCQkJCWpRdWVyeS5yZW1vdmVFdmVudCggZWxlbSwgdHlwZSwgZGF0YS5oYW5kbGUgKTsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQkJaWYgKCBkYXRhX3ByaXYuY2FjaGVbIGtleSBdICkgew0KCQkJCQkJLy8gRGlzY2FyZCBhbnkgcmVtYWluaW5nIGBwcml2YXRlYCBkYXRhDQoJCQkJCQlkZWxldGUgZGF0YV9wcml2LmNhY2hlWyBrZXkgXTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJCS8vIERpc2NhcmQgYW55IHJlbWFpbmluZyBgdXNlcmAgZGF0YQ0KCQkJZGVsZXRlIGRhdGFfdXNlci5jYWNoZVsgZWxlbVsgZGF0YV91c2VyLmV4cGFuZG8gXSBdOw0KCQl9DQoJfQ0KfSk7DQoNCmpRdWVyeS5mbi5leHRlbmQoew0KCXRleHQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsNCgkJcmV0dXJuIGFjY2VzcyggdGhpcywgZnVuY3Rpb24oIHZhbHVlICkgew0KCQkJcmV0dXJuIHZhbHVlID09PSB1bmRlZmluZWQgPw0KCQkJCWpRdWVyeS50ZXh0KCB0aGlzICkgOg0KCQkJCXRoaXMuZW1wdHkoKS5lYWNoKGZ1bmN0aW9uKCkgew0KCQkJCQlpZiAoIHRoaXMubm9kZVR5cGUgPT09IDEgfHwgdGhpcy5ub2RlVHlwZSA9PT0gMTEgfHwgdGhpcy5ub2RlVHlwZSA9PT0gOSApIHsNCgkJCQkJCXRoaXMudGV4dENvbnRlbnQgPSB2YWx1ZTsNCgkJCQkJfQ0KCQkJCX0pOw0KCQl9LCBudWxsLCB2YWx1ZSwgYXJndW1lbnRzLmxlbmd0aCApOw0KCX0sDQoNCglhcHBlbmQ6IGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4gdGhpcy5kb21NYW5pcCggYXJndW1lbnRzLCBmdW5jdGlvbiggZWxlbSApIHsNCgkJCWlmICggdGhpcy5ub2RlVHlwZSA9PT0gMSB8fCB0aGlzLm5vZGVUeXBlID09PSAxMSB8fCB0aGlzLm5vZGVUeXBlID09PSA5ICkgew0KCQkJCXZhciB0YXJnZXQgPSBtYW5pcHVsYXRpb25UYXJnZXQoIHRoaXMsIGVsZW0gKTsNCgkJCQl0YXJnZXQuYXBwZW5kQ2hpbGQoIGVsZW0gKTsNCgkJCX0NCgkJfSk7DQoJfSwNCg0KCXByZXBlbmQ6IGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4gdGhpcy5kb21NYW5pcCggYXJndW1lbnRzLCBmdW5jdGlvbiggZWxlbSApIHsNCgkJCWlmICggdGhpcy5ub2RlVHlwZSA9PT0gMSB8fCB0aGlzLm5vZGVUeXBlID09PSAxMSB8fCB0aGlzLm5vZGVUeXBlID09PSA5ICkgew0KCQkJCXZhciB0YXJnZXQgPSBtYW5pcHVsYXRpb25UYXJnZXQoIHRoaXMsIGVsZW0gKTsNCgkJCQl0YXJnZXQuaW5zZXJ0QmVmb3JlKCBlbGVtLCB0YXJnZXQuZmlyc3RDaGlsZCApOw0KCQkJfQ0KCQl9KTsNCgl9LA0KDQoJYmVmb3JlOiBmdW5jdGlvbigpIHsNCgkJcmV0dXJuIHRoaXMuZG9tTWFuaXAoIGFyZ3VtZW50cywgZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQlpZiAoIHRoaXMucGFyZW50Tm9kZSApIHsNCgkJCQl0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKCBlbGVtLCB0aGlzICk7DQoJCQl9DQoJCX0pOw0KCX0sDQoNCglhZnRlcjogZnVuY3Rpb24oKSB7DQoJCXJldHVybiB0aGlzLmRvbU1hbmlwKCBhcmd1bWVudHMsIGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJaWYgKCB0aGlzLnBhcmVudE5vZGUgKSB7DQoJCQkJdGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZSggZWxlbSwgdGhpcy5uZXh0U2libGluZyApOw0KCQkJfQ0KCQl9KTsNCgl9LA0KDQoJcmVtb3ZlOiBmdW5jdGlvbiggc2VsZWN0b3IsIGtlZXBEYXRhIC8qIEludGVybmFsIFVzZSBPbmx5ICovICkgew0KCQl2YXIgZWxlbSwNCgkJCWVsZW1zID0gc2VsZWN0b3IgPyBqUXVlcnkuZmlsdGVyKCBzZWxlY3RvciwgdGhpcyApIDogdGhpcywNCgkJCWkgPSAwOw0KDQoJCWZvciAoIDsgKGVsZW0gPSBlbGVtc1tpXSkgIT0gbnVsbDsgaSsrICkgew0KCQkJaWYgKCAha2VlcERhdGEgJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsNCgkJCQlqUXVlcnkuY2xlYW5EYXRhKCBnZXRBbGwoIGVsZW0gKSApOw0KCQkJfQ0KDQoJCQlpZiAoIGVsZW0ucGFyZW50Tm9kZSApIHsNCgkJCQlpZiAoIGtlZXBEYXRhICYmIGpRdWVyeS5jb250YWlucyggZWxlbS5vd25lckRvY3VtZW50LCBlbGVtICkgKSB7DQoJCQkJCXNldEdsb2JhbEV2YWwoIGdldEFsbCggZWxlbSwgInNjcmlwdCIgKSApOw0KCQkJCX0NCgkJCQllbGVtLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoIGVsZW0gKTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiB0aGlzOw0KCX0sDQoNCgllbXB0eTogZnVuY3Rpb24oKSB7DQoJCXZhciBlbGVtLA0KCQkJaSA9IDA7DQoNCgkJZm9yICggOyAoZWxlbSA9IHRoaXNbaV0pICE9IG51bGw7IGkrKyApIHsNCgkJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsNCg0KCQkJCS8vIFByZXZlbnQgbWVtb3J5IGxlYWtzDQoJCQkJalF1ZXJ5LmNsZWFuRGF0YSggZ2V0QWxsKCBlbGVtLCBmYWxzZSApICk7DQoNCgkJCQkvLyBSZW1vdmUgYW55IHJlbWFpbmluZyBub2Rlcw0KCQkJCWVsZW0udGV4dENvbnRlbnQgPSAiIjsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiB0aGlzOw0KCX0sDQoNCgljbG9uZTogZnVuY3Rpb24oIGRhdGFBbmRFdmVudHMsIGRlZXBEYXRhQW5kRXZlbnRzICkgew0KCQlkYXRhQW5kRXZlbnRzID0gZGF0YUFuZEV2ZW50cyA9PSBudWxsID8gZmFsc2UgOiBkYXRhQW5kRXZlbnRzOw0KCQlkZWVwRGF0YUFuZEV2ZW50cyA9IGRlZXBEYXRhQW5kRXZlbnRzID09IG51bGwgPyBkYXRhQW5kRXZlbnRzIDogZGVlcERhdGFBbmRFdmVudHM7DQoNCgkJcmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKCkgew0KCQkJcmV0dXJuIGpRdWVyeS5jbG9uZSggdGhpcywgZGF0YUFuZEV2ZW50cywgZGVlcERhdGFBbmRFdmVudHMgKTsNCgkJfSk7DQoJfSwNCg0KCWh0bWw6IGZ1bmN0aW9uKCB2YWx1ZSApIHsNCgkJcmV0dXJuIGFjY2VzcyggdGhpcywgZnVuY3Rpb24oIHZhbHVlICkgew0KCQkJdmFyIGVsZW0gPSB0aGlzWyAwIF0gfHwge30sDQoJCQkJaSA9IDAsDQoJCQkJbCA9IHRoaXMubGVuZ3RoOw0KDQoJCQlpZiAoIHZhbHVlID09PSB1bmRlZmluZWQgJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsNCgkJCQlyZXR1cm4gZWxlbS5pbm5lckhUTUw7DQoJCQl9DQoNCgkJCS8vIFNlZSBpZiB3ZSBjYW4gdGFrZSBhIHNob3J0Y3V0IGFuZCBqdXN0IHVzZSBpbm5lckhUTUwNCgkJCWlmICggdHlwZW9mIHZhbHVlID09PSAic3RyaW5nIiAmJiAhcm5vSW5uZXJodG1sLnRlc3QoIHZhbHVlICkgJiYNCgkJCQkhd3JhcE1hcFsgKCBydGFnTmFtZS5leGVjKCB2YWx1ZSApIHx8IFsgIiIsICIiIF0gKVsgMSBdLnRvTG93ZXJDYXNlKCkgXSApIHsNCg0KCQkJCXZhbHVlID0gdmFsdWUucmVwbGFjZSggcnhodG1sVGFnLCAiPCQxPjwvJDI+IiApOw0KDQoJCQkJdHJ5IHsNCgkJCQkJZm9yICggOyBpIDwgbDsgaSsrICkgew0KCQkJCQkJZWxlbSA9IHRoaXNbIGkgXSB8fCB7fTsNCg0KCQkJCQkJLy8gUmVtb3ZlIGVsZW1lbnQgbm9kZXMgYW5kIHByZXZlbnQgbWVtb3J5IGxlYWtzDQoJCQkJCQlpZiAoIGVsZW0ubm9kZVR5cGUgPT09IDEgKSB7DQoJCQkJCQkJalF1ZXJ5LmNsZWFuRGF0YSggZ2V0QWxsKCBlbGVtLCBmYWxzZSApICk7DQoJCQkJCQkJZWxlbS5pbm5lckhUTUwgPSB2YWx1ZTsNCgkJCQkJCX0NCgkJCQkJfQ0KDQoJCQkJCWVsZW0gPSAwOw0KDQoJCQkJLy8gSWYgdXNpbmcgaW5uZXJIVE1MIHRocm93cyBhbiBleGNlcHRpb24sIHVzZSB0aGUgZmFsbGJhY2sgbWV0aG9kDQoJCQkJfSBjYXRjaCggZSApIHt9DQoJCQl9DQoNCgkJCWlmICggZWxlbSApIHsNCgkJCQl0aGlzLmVtcHR5KCkuYXBwZW5kKCB2YWx1ZSApOw0KCQkJfQ0KCQl9LCBudWxsLCB2YWx1ZSwgYXJndW1lbnRzLmxlbmd0aCApOw0KCX0sDQoNCglyZXBsYWNlV2l0aDogZnVuY3Rpb24oKSB7DQoJCXZhciBhcmcgPSBhcmd1bWVudHNbIDAgXTsNCg0KCQkvLyBNYWtlIHRoZSBjaGFuZ2VzLCByZXBsYWNpbmcgZWFjaCBjb250ZXh0IGVsZW1lbnQgd2l0aCB0aGUgbmV3IGNvbnRlbnQNCgkJdGhpcy5kb21NYW5pcCggYXJndW1lbnRzLCBmdW5jdGlvbiggZWxlbSApIHsNCgkJCWFyZyA9IHRoaXMucGFyZW50Tm9kZTsNCg0KCQkJalF1ZXJ5LmNsZWFuRGF0YSggZ2V0QWxsKCB0aGlzICkgKTsNCg0KCQkJaWYgKCBhcmcgKSB7DQoJCQkJYXJnLnJlcGxhY2VDaGlsZCggZWxlbSwgdGhpcyApOw0KCQkJfQ0KCQl9KTsNCg0KCQkvLyBGb3JjZSByZW1vdmFsIGlmIHRoZXJlIHdhcyBubyBuZXcgY29udGVudCAoZS5nLiwgZnJvbSBlbXB0eSBhcmd1bWVudHMpDQoJCXJldHVybiBhcmcgJiYgKGFyZy5sZW5ndGggfHwgYXJnLm5vZGVUeXBlKSA/IHRoaXMgOiB0aGlzLnJlbW92ZSgpOw0KCX0sDQoNCglkZXRhY2g6IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsNCgkJcmV0dXJuIHRoaXMucmVtb3ZlKCBzZWxlY3RvciwgdHJ1ZSApOw0KCX0sDQoNCglkb21NYW5pcDogZnVuY3Rpb24oIGFyZ3MsIGNhbGxiYWNrICkgew0KDQoJCS8vIEZsYXR0ZW4gYW55IG5lc3RlZCBhcnJheXMNCgkJYXJncyA9IGNvbmNhdC5hcHBseSggW10sIGFyZ3MgKTsNCg0KCQl2YXIgZnJhZ21lbnQsIGZpcnN0LCBzY3JpcHRzLCBoYXNTY3JpcHRzLCBub2RlLCBkb2MsDQoJCQlpID0gMCwNCgkJCWwgPSB0aGlzLmxlbmd0aCwNCgkJCXNldCA9IHRoaXMsDQoJCQlpTm9DbG9uZSA9IGwgLSAxLA0KCQkJdmFsdWUgPSBhcmdzWyAwIF0sDQoJCQlpc0Z1bmN0aW9uID0galF1ZXJ5LmlzRnVuY3Rpb24oIHZhbHVlICk7DQoNCgkJLy8gV2UgY2FuJ3QgY2xvbmVOb2RlIGZyYWdtZW50cyB0aGF0IGNvbnRhaW4gY2hlY2tlZCwgaW4gV2ViS2l0DQoJCWlmICggaXNGdW5jdGlvbiB8fA0KCQkJCSggbCA+IDEgJiYgdHlwZW9mIHZhbHVlID09PSAic3RyaW5nIiAmJg0KCQkJCQkhc3VwcG9ydC5jaGVja0Nsb25lICYmIHJjaGVja2VkLnRlc3QoIHZhbHVlICkgKSApIHsNCgkJCXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oIGluZGV4ICkgew0KCQkJCXZhciBzZWxmID0gc2V0LmVxKCBpbmRleCApOw0KCQkJCWlmICggaXNGdW5jdGlvbiApIHsNCgkJCQkJYXJnc1sgMCBdID0gdmFsdWUuY2FsbCggdGhpcywgaW5kZXgsIHNlbGYuaHRtbCgpICk7DQoJCQkJfQ0KCQkJCXNlbGYuZG9tTWFuaXAoIGFyZ3MsIGNhbGxiYWNrICk7DQoJCQl9KTsNCgkJfQ0KDQoJCWlmICggbCApIHsNCgkJCWZyYWdtZW50ID0galF1ZXJ5LmJ1aWxkRnJhZ21lbnQoIGFyZ3MsIHRoaXNbIDAgXS5vd25lckRvY3VtZW50LCBmYWxzZSwgdGhpcyApOw0KCQkJZmlyc3QgPSBmcmFnbWVudC5maXJzdENoaWxkOw0KDQoJCQlpZiAoIGZyYWdtZW50LmNoaWxkTm9kZXMubGVuZ3RoID09PSAxICkgew0KCQkJCWZyYWdtZW50ID0gZmlyc3Q7DQoJCQl9DQoNCgkJCWlmICggZmlyc3QgKSB7DQoJCQkJc2NyaXB0cyA9IGpRdWVyeS5tYXAoIGdldEFsbCggZnJhZ21lbnQsICJzY3JpcHQiICksIGRpc2FibGVTY3JpcHQgKTsNCgkJCQloYXNTY3JpcHRzID0gc2NyaXB0cy5sZW5ndGg7DQoNCgkJCQkvLyBVc2UgdGhlIG9yaWdpbmFsIGZyYWdtZW50IGZvciB0aGUgbGFzdCBpdGVtIGluc3RlYWQgb2YgdGhlIGZpcnN0IGJlY2F1c2UgaXQgY2FuIGVuZCB1cA0KCQkJCS8vIGJlaW5nIGVtcHRpZWQgaW5jb3JyZWN0bHkgaW4gY2VydGFpbiBzaXR1YXRpb25zICgjODA3MCkuDQoJCQkJZm9yICggOyBpIDwgbDsgaSsrICkgew0KCQkJCQlub2RlID0gZnJhZ21lbnQ7DQoNCgkJCQkJaWYgKCBpICE9PSBpTm9DbG9uZSApIHsNCgkJCQkJCW5vZGUgPSBqUXVlcnkuY2xvbmUoIG5vZGUsIHRydWUsIHRydWUgKTsNCg0KCQkJCQkJLy8gS2VlcCByZWZlcmVuY2VzIHRvIGNsb25lZCBzY3JpcHRzIGZvciBsYXRlciByZXN0b3JhdGlvbg0KCQkJCQkJaWYgKCBoYXNTY3JpcHRzICkgew0KCQkJCQkJCS8vIFN1cHBvcnQ6IFF0V2ViS2l0DQoJCQkJCQkJLy8galF1ZXJ5Lm1lcmdlIGJlY2F1c2UgcHVzaC5hcHBseShfLCBhcnJheWxpa2UpIHRocm93cw0KCQkJCQkJCWpRdWVyeS5tZXJnZSggc2NyaXB0cywgZ2V0QWxsKCBub2RlLCAic2NyaXB0IiApICk7DQoJCQkJCQl9DQoJCQkJCX0NCg0KCQkJCQljYWxsYmFjay5jYWxsKCB0aGlzWyBpIF0sIG5vZGUsIGkgKTsNCgkJCQl9DQoNCgkJCQlpZiAoIGhhc1NjcmlwdHMgKSB7DQoJCQkJCWRvYyA9IHNjcmlwdHNbIHNjcmlwdHMubGVuZ3RoIC0gMSBdLm93bmVyRG9jdW1lbnQ7DQoNCgkJCQkJLy8gUmVlbmFibGUgc2NyaXB0cw0KCQkJCQlqUXVlcnkubWFwKCBzY3JpcHRzLCByZXN0b3JlU2NyaXB0ICk7DQoNCgkJCQkJLy8gRXZhbHVhdGUgZXhlY3V0YWJsZSBzY3JpcHRzIG9uIGZpcnN0IGRvY3VtZW50IGluc2VydGlvbg0KCQkJCQlmb3IgKCBpID0gMDsgaSA8IGhhc1NjcmlwdHM7IGkrKyApIHsNCgkJCQkJCW5vZGUgPSBzY3JpcHRzWyBpIF07DQoJCQkJCQlpZiAoIHJzY3JpcHRUeXBlLnRlc3QoIG5vZGUudHlwZSB8fCAiIiApICYmDQoJCQkJCQkJIWRhdGFfcHJpdi5hY2Nlc3MoIG5vZGUsICJnbG9iYWxFdmFsIiApICYmIGpRdWVyeS5jb250YWlucyggZG9jLCBub2RlICkgKSB7DQoNCgkJCQkJCQlpZiAoIG5vZGUuc3JjICkgew0KCQkJCQkJCQkvLyBPcHRpb25hbCBBSkFYIGRlcGVuZGVuY3ksIGJ1dCB3b24ndCBydW4gc2NyaXB0cyBpZiBub3QgcHJlc2VudA0KCQkJCQkJCQlpZiAoIGpRdWVyeS5fZXZhbFVybCApIHsNCgkJCQkJCQkJCWpRdWVyeS5fZXZhbFVybCggbm9kZS5zcmMgKTsNCgkJCQkJCQkJfQ0KCQkJCQkJCX0gZWxzZSB7DQoJCQkJCQkJCWpRdWVyeS5nbG9iYWxFdmFsKCBub2RlLnRleHRDb250ZW50LnJlcGxhY2UoIHJjbGVhblNjcmlwdCwgIiIgKSApOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiB0aGlzOw0KCX0NCn0pOw0KDQpqUXVlcnkuZWFjaCh7DQoJYXBwZW5kVG86ICJhcHBlbmQiLA0KCXByZXBlbmRUbzogInByZXBlbmQiLA0KCWluc2VydEJlZm9yZTogImJlZm9yZSIsDQoJaW5zZXJ0QWZ0ZXI6ICJhZnRlciIsDQoJcmVwbGFjZUFsbDogInJlcGxhY2VXaXRoIg0KfSwgZnVuY3Rpb24oIG5hbWUsIG9yaWdpbmFsICkgew0KCWpRdWVyeS5mblsgbmFtZSBdID0gZnVuY3Rpb24oIHNlbGVjdG9yICkgew0KCQl2YXIgZWxlbXMsDQoJCQlyZXQgPSBbXSwNCgkJCWluc2VydCA9IGpRdWVyeSggc2VsZWN0b3IgKSwNCgkJCWxhc3QgPSBpbnNlcnQubGVuZ3RoIC0gMSwNCgkJCWkgPSAwOw0KDQoJCWZvciAoIDsgaSA8PSBsYXN0OyBpKysgKSB7DQoJCQllbGVtcyA9IGkgPT09IGxhc3QgPyB0aGlzIDogdGhpcy5jbG9uZSggdHJ1ZSApOw0KCQkJalF1ZXJ5KCBpbnNlcnRbIGkgXSApWyBvcmlnaW5hbCBdKCBlbGVtcyApOw0KDQoJCQkvLyBTdXBwb3J0OiBRdFdlYktpdA0KCQkJLy8gLmdldCgpIGJlY2F1c2UgcHVzaC5hcHBseShfLCBhcnJheWxpa2UpIHRocm93cw0KCQkJcHVzaC5hcHBseSggcmV0LCBlbGVtcy5nZXQoKSApOw0KCQl9DQoNCgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCByZXQgKTsNCgl9Ow0KfSk7DQoNCg0KdmFyIGlmcmFtZSwNCgllbGVtZGlzcGxheSA9IHt9Ow0KDQovKioNCiAqIFJldHJpZXZlIHRoZSBhY3R1YWwgZGlzcGxheSBvZiBhIGVsZW1lbnQNCiAqIEBwYXJhbSB7U3RyaW5nfSBuYW1lIG5vZGVOYW1lIG9mIHRoZSBlbGVtZW50DQogKiBAcGFyYW0ge09iamVjdH0gZG9jIERvY3VtZW50IG9iamVjdA0KICovDQovLyBDYWxsZWQgb25seSBmcm9tIHdpdGhpbiBkZWZhdWx0RGlzcGxheQ0KZnVuY3Rpb24gYWN0dWFsRGlzcGxheSggbmFtZSwgZG9jICkgew0KCXZhciBzdHlsZSwNCgkJZWxlbSA9IGpRdWVyeSggZG9jLmNyZWF0ZUVsZW1lbnQoIG5hbWUgKSApLmFwcGVuZFRvKCBkb2MuYm9keSApLA0KDQoJCS8vIGdldERlZmF1bHRDb21wdXRlZFN0eWxlIG1pZ2h0IGJlIHJlbGlhYmx5IHVzZWQgb25seSBvbiBhdHRhY2hlZCBlbGVtZW50DQoJCWRpc3BsYXkgPSB3aW5kb3cuZ2V0RGVmYXVsdENvbXB1dGVkU3R5bGUgJiYgKCBzdHlsZSA9IHdpbmRvdy5nZXREZWZhdWx0Q29tcHV0ZWRTdHlsZSggZWxlbVsgMCBdICkgKSA/DQoNCgkJCS8vIFVzZSBvZiB0aGlzIG1ldGhvZCBpcyBhIHRlbXBvcmFyeSBmaXggKG1vcmUgbGlrZSBvcHRpbWl6YXRpb24pIHVudGlsIHNvbWV0aGluZyBiZXR0ZXIgY29tZXMgYWxvbmcsDQoJCQkvLyBzaW5jZSBpdCB3YXMgcmVtb3ZlZCBmcm9tIHNwZWNpZmljYXRpb24gYW5kIHN1cHBvcnRlZCBvbmx5IGluIEZGDQoJCQlzdHlsZS5kaXNwbGF5IDogalF1ZXJ5LmNzcyggZWxlbVsgMCBdLCAiZGlzcGxheSIgKTsNCg0KCS8vIFdlIGRvbid0IGhhdmUgYW55IGRhdGEgc3RvcmVkIG9uIHRoZSBlbGVtZW50LA0KCS8vIHNvIHVzZSAiZGV0YWNoIiBtZXRob2QgYXMgZmFzdCB3YXkgdG8gZ2V0IHJpZCBvZiB0aGUgZWxlbWVudA0KCWVsZW0uZGV0YWNoKCk7DQoNCglyZXR1cm4gZGlzcGxheTsNCn0NCg0KLyoqDQogKiBUcnkgdG8gZGV0ZXJtaW5lIHRoZSBkZWZhdWx0IGRpc3BsYXkgdmFsdWUgb2YgYW4gZWxlbWVudA0KICogQHBhcmFtIHtTdHJpbmd9IG5vZGVOYW1lDQogKi8NCmZ1bmN0aW9uIGRlZmF1bHREaXNwbGF5KCBub2RlTmFtZSApIHsNCgl2YXIgZG9jID0gZG9jdW1lbnQsDQoJCWRpc3BsYXkgPSBlbGVtZGlzcGxheVsgbm9kZU5hbWUgXTsNCg0KCWlmICggIWRpc3BsYXkgKSB7DQoJCWRpc3BsYXkgPSBhY3R1YWxEaXNwbGF5KCBub2RlTmFtZSwgZG9jICk7DQoNCgkJLy8gSWYgdGhlIHNpbXBsZSB3YXkgZmFpbHMsIHJlYWQgZnJvbSBpbnNpZGUgYW4gaWZyYW1lDQoJCWlmICggZGlzcGxheSA9PT0gIm5vbmUiIHx8ICFkaXNwbGF5ICkgew0KDQoJCQkvLyBVc2UgdGhlIGFscmVhZHktY3JlYXRlZCBpZnJhbWUgaWYgcG9zc2libGUNCgkJCWlmcmFtZSA9IChpZnJhbWUgfHwgalF1ZXJ5KCAiPGlmcmFtZSBmcmFtZWJvcmRlcj0nMCcgd2lkdGg9JzAnIGhlaWdodD0nMCcvPiIgKSkuYXBwZW5kVG8oIGRvYy5kb2N1bWVudEVsZW1lbnQgKTsNCg0KCQkJLy8gQWx3YXlzIHdyaXRlIGEgbmV3IEhUTUwgc2tlbGV0b24gc28gV2Via2l0IGFuZCBGaXJlZm94IGRvbid0IGNob2tlIG9uIHJldXNlDQoJCQlkb2MgPSBpZnJhbWVbIDAgXS5jb250ZW50RG9jdW1lbnQ7DQoNCgkJCS8vIFN1cHBvcnQ6IElFDQoJCQlkb2Mud3JpdGUoKTsNCgkJCWRvYy5jbG9zZSgpOw0KDQoJCQlkaXNwbGF5ID0gYWN0dWFsRGlzcGxheSggbm9kZU5hbWUsIGRvYyApOw0KCQkJaWZyYW1lLmRldGFjaCgpOw0KCQl9DQoNCgkJLy8gU3RvcmUgdGhlIGNvcnJlY3QgZGVmYXVsdCBkaXNwbGF5DQoJCWVsZW1kaXNwbGF5WyBub2RlTmFtZSBdID0gZGlzcGxheTsNCgl9DQoNCglyZXR1cm4gZGlzcGxheTsNCn0NCnZhciBybWFyZ2luID0gKC9ebWFyZ2luLyk7DQoNCnZhciBybnVtbm9ucHggPSBuZXcgUmVnRXhwKCAiXigiICsgcG51bSArICIpKD8hcHgpW2EteiVdKyQiLCAiaSIgKTsNCg0KdmFyIGdldFN0eWxlcyA9IGZ1bmN0aW9uKCBlbGVtICkgew0KCQkvLyBTdXBwb3J0OiBJRTw9MTErLCBGaXJlZm94PD0zMCsgKCMxNTA5OCwgIzE0MTUwKQ0KCQkvLyBJRSB0aHJvd3Mgb24gZWxlbWVudHMgY3JlYXRlZCBpbiBwb3B1cHMNCgkJLy8gRkYgbWVhbndoaWxlIHRocm93cyBvbiBmcmFtZSBlbGVtZW50cyB0aHJvdWdoICJkZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlIg0KCQlpZiAoIGVsZW0ub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldy5vcGVuZXIgKSB7DQoJCQlyZXR1cm4gZWxlbS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoIGVsZW0sIG51bGwgKTsNCgkJfQ0KDQoJCXJldHVybiB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSggZWxlbSwgbnVsbCApOw0KCX07DQoNCg0KDQpmdW5jdGlvbiBjdXJDU1MoIGVsZW0sIG5hbWUsIGNvbXB1dGVkICkgew0KCXZhciB3aWR0aCwgbWluV2lkdGgsIG1heFdpZHRoLCByZXQsDQoJCXN0eWxlID0gZWxlbS5zdHlsZTsNCg0KCWNvbXB1dGVkID0gY29tcHV0ZWQgfHwgZ2V0U3R5bGVzKCBlbGVtICk7DQoNCgkvLyBTdXBwb3J0OiBJRTkNCgkvLyBnZXRQcm9wZXJ0eVZhbHVlIGlzIG9ubHkgbmVlZGVkIGZvciAuY3NzKCdmaWx0ZXInKSAoIzEyNTM3KQ0KCWlmICggY29tcHV0ZWQgKSB7DQoJCXJldCA9IGNvbXB1dGVkLmdldFByb3BlcnR5VmFsdWUoIG5hbWUgKSB8fCBjb21wdXRlZFsgbmFtZSBdOw0KCX0NCg0KCWlmICggY29tcHV0ZWQgKSB7DQoNCgkJaWYgKCByZXQgPT09ICIiICYmICFqUXVlcnkuY29udGFpbnMoIGVsZW0ub3duZXJEb2N1bWVudCwgZWxlbSApICkgew0KCQkJcmV0ID0galF1ZXJ5LnN0eWxlKCBlbGVtLCBuYW1lICk7DQoJCX0NCg0KCQkvLyBTdXBwb3J0OiBpT1MgPCA2DQoJCS8vIEEgdHJpYnV0ZSB0byB0aGUgImF3ZXNvbWUgaGFjayBieSBEZWFuIEVkd2FyZHMiDQoJCS8vIGlPUyA8IDYgKGF0IGxlYXN0KSByZXR1cm5zIHBlcmNlbnRhZ2UgZm9yIGEgbGFyZ2VyIHNldCBvZiB2YWx1ZXMsIGJ1dCB3aWR0aCBzZWVtcyB0byBiZSByZWxpYWJseSBwaXhlbHMNCgkJLy8gdGhpcyBpcyBhZ2FpbnN0IHRoZSBDU1NPTSBkcmFmdCBzcGVjOiBodHRwOi8vZGV2LnczLm9yZy9jc3N3Zy9jc3NvbS8jcmVzb2x2ZWQtdmFsdWVzDQoJCWlmICggcm51bW5vbnB4LnRlc3QoIHJldCApICYmIHJtYXJnaW4udGVzdCggbmFtZSApICkgew0KDQoJCQkvLyBSZW1lbWJlciB0aGUgb3JpZ2luYWwgdmFsdWVzDQoJCQl3aWR0aCA9IHN0eWxlLndpZHRoOw0KCQkJbWluV2lkdGggPSBzdHlsZS5taW5XaWR0aDsNCgkJCW1heFdpZHRoID0gc3R5bGUubWF4V2lkdGg7DQoNCgkJCS8vIFB1dCBpbiB0aGUgbmV3IHZhbHVlcyB0byBnZXQgYSBjb21wdXRlZCB2YWx1ZSBvdXQNCgkJCXN0eWxlLm1pbldpZHRoID0gc3R5bGUubWF4V2lkdGggPSBzdHlsZS53aWR0aCA9IHJldDsNCgkJCXJldCA9IGNvbXB1dGVkLndpZHRoOw0KDQoJCQkvLyBSZXZlcnQgdGhlIGNoYW5nZWQgdmFsdWVzDQoJCQlzdHlsZS53aWR0aCA9IHdpZHRoOw0KCQkJc3R5bGUubWluV2lkdGggPSBtaW5XaWR0aDsNCgkJCXN0eWxlLm1heFdpZHRoID0gbWF4V2lkdGg7DQoJCX0NCgl9DQoNCglyZXR1cm4gcmV0ICE9PSB1bmRlZmluZWQgPw0KCQkvLyBTdXBwb3J0OiBJRQ0KCQkvLyBJRSByZXR1cm5zIHpJbmRleCB2YWx1ZSBhcyBhbiBpbnRlZ2VyLg0KCQlyZXQgKyAiIiA6DQoJCXJldDsNCn0NCg0KDQpmdW5jdGlvbiBhZGRHZXRIb29rSWYoIGNvbmRpdGlvbkZuLCBob29rRm4gKSB7DQoJLy8gRGVmaW5lIHRoZSBob29rLCB3ZSdsbCBjaGVjayBvbiB0aGUgZmlyc3QgcnVuIGlmIGl0J3MgcmVhbGx5IG5lZWRlZC4NCglyZXR1cm4gew0KCQlnZXQ6IGZ1bmN0aW9uKCkgew0KCQkJaWYgKCBjb25kaXRpb25GbigpICkgew0KCQkJCS8vIEhvb2sgbm90IG5lZWRlZCAob3IgaXQncyBub3QgcG9zc2libGUgdG8gdXNlIGl0IGR1ZQ0KCQkJCS8vIHRvIG1pc3NpbmcgZGVwZW5kZW5jeSksIHJlbW92ZSBpdC4NCgkJCQlkZWxldGUgdGhpcy5nZXQ7DQoJCQkJcmV0dXJuOw0KCQkJfQ0KDQoJCQkvLyBIb29rIG5lZWRlZDsgcmVkZWZpbmUgaXQgc28gdGhhdCB0aGUgc3VwcG9ydCB0ZXN0IGlzIG5vdCBleGVjdXRlZCBhZ2Fpbi4NCgkJCXJldHVybiAodGhpcy5nZXQgPSBob29rRm4pLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsNCgkJfQ0KCX07DQp9DQoNCg0KKGZ1bmN0aW9uKCkgew0KCXZhciBwaXhlbFBvc2l0aW9uVmFsLCBib3hTaXppbmdSZWxpYWJsZVZhbCwNCgkJZG9jRWxlbSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCwNCgkJY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggImRpdiIgKSwNCgkJZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggImRpdiIgKTsNCg0KCWlmICggIWRpdi5zdHlsZSApIHsNCgkJcmV0dXJuOw0KCX0NCg0KCS8vIFN1cHBvcnQ6IElFOS0xMSsNCgkvLyBTdHlsZSBvZiBjbG9uZWQgZWxlbWVudCBhZmZlY3RzIHNvdXJjZSBlbGVtZW50IGNsb25lZCAoIzg5MDgpDQoJZGl2LnN0eWxlLmJhY2tncm91bmRDbGlwID0gImNvbnRlbnQtYm94IjsNCglkaXYuY2xvbmVOb2RlKCB0cnVlICkuc3R5bGUuYmFja2dyb3VuZENsaXAgPSAiIjsNCglzdXBwb3J0LmNsZWFyQ2xvbmVTdHlsZSA9IGRpdi5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCA9PT0gImNvbnRlbnQtYm94IjsNCg0KCWNvbnRhaW5lci5zdHlsZS5jc3NUZXh0ID0gImJvcmRlcjowO3dpZHRoOjA7aGVpZ2h0OjA7dG9wOjA7bGVmdDotOTk5OXB4O21hcmdpbi10b3A6MXB4OyIgKw0KCQkicG9zaXRpb246YWJzb2x1dGUiOw0KCWNvbnRhaW5lci5hcHBlbmRDaGlsZCggZGl2ICk7DQoNCgkvLyBFeGVjdXRpbmcgYm90aCBwaXhlbFBvc2l0aW9uICYgYm94U2l6aW5nUmVsaWFibGUgdGVzdHMgcmVxdWlyZSBvbmx5IG9uZSBsYXlvdXQNCgkvLyBzbyB0aGV5J3JlIGV4ZWN1dGVkIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSB0aGUgc2Vjb25kIGNvbXB1dGF0aW9uLg0KCWZ1bmN0aW9uIGNvbXB1dGVQaXhlbFBvc2l0aW9uQW5kQm94U2l6aW5nUmVsaWFibGUoKSB7DQoJCWRpdi5zdHlsZS5jc3NUZXh0ID0NCgkJCS8vIFN1cHBvcnQ6IEZpcmVmb3g8MjksIEFuZHJvaWQgMi4zDQoJCQkvLyBWZW5kb3ItcHJlZml4IGJveC1zaXppbmcNCgkJCSItd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDsiICsNCgkJCSJib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjElO3RvcDoxJTsiICsNCgkJCSJib3JkZXI6MXB4O3BhZGRpbmc6MXB4O3dpZHRoOjRweDtwb3NpdGlvbjphYnNvbHV0ZSI7DQoJCWRpdi5pbm5lckhUTUwgPSAiIjsNCgkJZG9jRWxlbS5hcHBlbmRDaGlsZCggY29udGFpbmVyICk7DQoNCgkJdmFyIGRpdlN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoIGRpdiwgbnVsbCApOw0KCQlwaXhlbFBvc2l0aW9uVmFsID0gZGl2U3R5bGUudG9wICE9PSAiMSUiOw0KCQlib3hTaXppbmdSZWxpYWJsZVZhbCA9IGRpdlN0eWxlLndpZHRoID09PSAiNHB4IjsNCg0KCQlkb2NFbGVtLnJlbW92ZUNoaWxkKCBjb250YWluZXIgKTsNCgl9DQoNCgkvLyBTdXBwb3J0OiBub2RlLmpzIGpzZG9tDQoJLy8gRG9uJ3QgYXNzdW1lIHRoYXQgZ2V0Q29tcHV0ZWRTdHlsZSBpcyBhIHByb3BlcnR5IG9mIHRoZSBnbG9iYWwgb2JqZWN0DQoJaWYgKCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSApIHsNCgkJalF1ZXJ5LmV4dGVuZCggc3VwcG9ydCwgew0KCQkJcGl4ZWxQb3NpdGlvbjogZnVuY3Rpb24oKSB7DQoNCgkJCQkvLyBUaGlzIHRlc3QgaXMgZXhlY3V0ZWQgb25seSBvbmNlIGJ1dCB3ZSBzdGlsbCBkbyBtZW1vaXppbmcNCgkJCQkvLyBzaW5jZSB3ZSBjYW4gdXNlIHRoZSBib3hTaXppbmdSZWxpYWJsZSBwcmUtY29tcHV0aW5nLg0KCQkJCS8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHRlc3Qgd2FzIGFscmVhZHkgcGVyZm9ybWVkLCB0aG91Z2guDQoJCQkJY29tcHV0ZVBpeGVsUG9zaXRpb25BbmRCb3hTaXppbmdSZWxpYWJsZSgpOw0KCQkJCXJldHVybiBwaXhlbFBvc2l0aW9uVmFsOw0KCQkJfSwNCgkJCWJveFNpemluZ1JlbGlhYmxlOiBmdW5jdGlvbigpIHsNCgkJCQlpZiAoIGJveFNpemluZ1JlbGlhYmxlVmFsID09IG51bGwgKSB7DQoJCQkJCWNvbXB1dGVQaXhlbFBvc2l0aW9uQW5kQm94U2l6aW5nUmVsaWFibGUoKTsNCgkJCQl9DQoJCQkJcmV0dXJuIGJveFNpemluZ1JlbGlhYmxlVmFsOw0KCQkJfSwNCgkJCXJlbGlhYmxlTWFyZ2luUmlnaHQ6IGZ1bmN0aW9uKCkgew0KDQoJCQkJLy8gU3VwcG9ydDogQW5kcm9pZCAyLjMNCgkJCQkvLyBDaGVjayBpZiBkaXYgd2l0aCBleHBsaWNpdCB3aWR0aCBhbmQgbm8gbWFyZ2luLXJpZ2h0IGluY29ycmVjdGx5DQoJCQkJLy8gZ2V0cyBjb21wdXRlZCBtYXJnaW4tcmlnaHQgYmFzZWQgb24gd2lkdGggb2YgY29udGFpbmVyLiAoIzMzMzMpDQoJCQkJLy8gV2ViS2l0IEJ1ZyAxMzM0MyAtIGdldENvbXB1dGVkU3R5bGUgcmV0dXJucyB3cm9uZyB2YWx1ZSBmb3IgbWFyZ2luLXJpZ2h0DQoJCQkJLy8gVGhpcyBzdXBwb3J0IGZ1bmN0aW9uIGlzIG9ubHkgZXhlY3V0ZWQgb25jZSBzbyBubyBtZW1vaXppbmcgaXMgbmVlZGVkLg0KCQkJCXZhciByZXQsDQoJCQkJCW1hcmdpbkRpdiA9IGRpdi5hcHBlbmRDaGlsZCggZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggImRpdiIgKSApOw0KDQoJCQkJLy8gUmVzZXQgQ1NTOiBib3gtc2l6aW5nOyBkaXNwbGF5OyBtYXJnaW47IGJvcmRlcjsgcGFkZGluZw0KCQkJCW1hcmdpbkRpdi5zdHlsZS5jc3NUZXh0ID0gZGl2LnN0eWxlLmNzc1RleHQgPQ0KCQkJCQkvLyBTdXBwb3J0OiBGaXJlZm94PDI5LCBBbmRyb2lkIDIuMw0KCQkJCQkvLyBWZW5kb3ItcHJlZml4IGJveC1zaXppbmcNCgkJCQkJIi13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7IiArDQoJCQkJCSJib3gtc2l6aW5nOmNvbnRlbnQtYm94O2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjA7Ym9yZGVyOjA7cGFkZGluZzowIjsNCgkJCQltYXJnaW5EaXYuc3R5bGUubWFyZ2luUmlnaHQgPSBtYXJnaW5EaXYuc3R5bGUud2lkdGggPSAiMCI7DQoJCQkJZGl2LnN0eWxlLndpZHRoID0gIjFweCI7DQoJCQkJZG9jRWxlbS5hcHBlbmRDaGlsZCggY29udGFpbmVyICk7DQoNCgkJCQlyZXQgPSAhcGFyc2VGbG9hdCggd2luZG93LmdldENvbXB1dGVkU3R5bGUoIG1hcmdpbkRpdiwgbnVsbCApLm1hcmdpblJpZ2h0ICk7DQoNCgkJCQlkb2NFbGVtLnJlbW92ZUNoaWxkKCBjb250YWluZXIgKTsNCgkJCQlkaXYucmVtb3ZlQ2hpbGQoIG1hcmdpbkRpdiApOw0KDQoJCQkJcmV0dXJuIHJldDsNCgkJCX0NCgkJfSk7DQoJfQ0KfSkoKTsNCg0KDQovLyBBIG1ldGhvZCBmb3IgcXVpY2tseSBzd2FwcGluZyBpbi9vdXQgQ1NTIHByb3BlcnRpZXMgdG8gZ2V0IGNvcnJlY3QgY2FsY3VsYXRpb25zLg0KalF1ZXJ5LnN3YXAgPSBmdW5jdGlvbiggZWxlbSwgb3B0aW9ucywgY2FsbGJhY2ssIGFyZ3MgKSB7DQoJdmFyIHJldCwgbmFtZSwNCgkJb2xkID0ge307DQoNCgkvLyBSZW1lbWJlciB0aGUgb2xkIHZhbHVlcywgYW5kIGluc2VydCB0aGUgbmV3IG9uZXMNCglmb3IgKCBuYW1lIGluIG9wdGlvbnMgKSB7DQoJCW9sZFsgbmFtZSBdID0gZWxlbS5zdHlsZVsgbmFtZSBdOw0KCQllbGVtLnN0eWxlWyBuYW1lIF0gPSBvcHRpb25zWyBuYW1lIF07DQoJfQ0KDQoJcmV0ID0gY2FsbGJhY2suYXBwbHkoIGVsZW0sIGFyZ3MgfHwgW10gKTsNCg0KCS8vIFJldmVydCB0aGUgb2xkIHZhbHVlcw0KCWZvciAoIG5hbWUgaW4gb3B0aW9ucyApIHsNCgkJZWxlbS5zdHlsZVsgbmFtZSBdID0gb2xkWyBuYW1lIF07DQoJfQ0KDQoJcmV0dXJuIHJldDsNCn07DQoNCg0KdmFyDQoJLy8gU3dhcHBhYmxlIGlmIGRpc3BsYXkgaXMgbm9uZSBvciBzdGFydHMgd2l0aCB0YWJsZSBleGNlcHQgInRhYmxlIiwgInRhYmxlLWNlbGwiLCBvciAidGFibGUtY2FwdGlvbiINCgkvLyBTZWUgaGVyZSBmb3IgZGlzcGxheSB2YWx1ZXM6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvQ1NTL2Rpc3BsYXkNCglyZGlzcGxheXN3YXAgPSAvXihub25lfHRhYmxlKD8hLWNbZWFdKS4rKS8sDQoJcm51bXNwbGl0ID0gbmV3IFJlZ0V4cCggIl4oIiArIHBudW0gKyAiKSguKikkIiwgImkiICksDQoJcnJlbE51bSA9IG5ldyBSZWdFeHAoICJeKFsrLV0pPSgiICsgcG51bSArICIpIiwgImkiICksDQoNCgljc3NTaG93ID0geyBwb3NpdGlvbjogImFic29sdXRlIiwgdmlzaWJpbGl0eTogImhpZGRlbiIsIGRpc3BsYXk6ICJibG9jayIgfSwNCgljc3NOb3JtYWxUcmFuc2Zvcm0gPSB7DQoJCWxldHRlclNwYWNpbmc6ICIwIiwNCgkJZm9udFdlaWdodDogIjQwMCINCgl9LA0KDQoJY3NzUHJlZml4ZXMgPSBbICJXZWJraXQiLCAiTyIsICJNb3oiLCAibXMiIF07DQoNCi8vIFJldHVybiBhIGNzcyBwcm9wZXJ0eSBtYXBwZWQgdG8gYSBwb3RlbnRpYWxseSB2ZW5kb3IgcHJlZml4ZWQgcHJvcGVydHkNCmZ1bmN0aW9uIHZlbmRvclByb3BOYW1lKCBzdHlsZSwgbmFtZSApIHsNCg0KCS8vIFNob3J0Y3V0IGZvciBuYW1lcyB0aGF0IGFyZSBub3QgdmVuZG9yIHByZWZpeGVkDQoJaWYgKCBuYW1lIGluIHN0eWxlICkgew0KCQlyZXR1cm4gbmFtZTsNCgl9DQoNCgkvLyBDaGVjayBmb3IgdmVuZG9yIHByZWZpeGVkIG5hbWVzDQoJdmFyIGNhcE5hbWUgPSBuYW1lWzBdLnRvVXBwZXJDYXNlKCkgKyBuYW1lLnNsaWNlKDEpLA0KCQlvcmlnTmFtZSA9IG5hbWUsDQoJCWkgPSBjc3NQcmVmaXhlcy5sZW5ndGg7DQoNCgl3aGlsZSAoIGktLSApIHsNCgkJbmFtZSA9IGNzc1ByZWZpeGVzWyBpIF0gKyBjYXBOYW1lOw0KCQlpZiAoIG5hbWUgaW4gc3R5bGUgKSB7DQoJCQlyZXR1cm4gbmFtZTsNCgkJfQ0KCX0NCg0KCXJldHVybiBvcmlnTmFtZTsNCn0NCg0KZnVuY3Rpb24gc2V0UG9zaXRpdmVOdW1iZXIoIGVsZW0sIHZhbHVlLCBzdWJ0cmFjdCApIHsNCgl2YXIgbWF0Y2hlcyA9IHJudW1zcGxpdC5leGVjKCB2YWx1ZSApOw0KCXJldHVybiBtYXRjaGVzID8NCgkJLy8gR3VhcmQgYWdhaW5zdCB1bmRlZmluZWQgInN1YnRyYWN0IiwgZS5nLiwgd2hlbiB1c2VkIGFzIGluIGNzc0hvb2tzDQoJCU1hdGgubWF4KCAwLCBtYXRjaGVzWyAxIF0gLSAoIHN1YnRyYWN0IHx8IDAgKSApICsgKCBtYXRjaGVzWyAyIF0gfHwgInB4IiApIDoNCgkJdmFsdWU7DQp9DQoNCmZ1bmN0aW9uIGF1Z21lbnRXaWR0aE9ySGVpZ2h0KCBlbGVtLCBuYW1lLCBleHRyYSwgaXNCb3JkZXJCb3gsIHN0eWxlcyApIHsNCgl2YXIgaSA9IGV4dHJhID09PSAoIGlzQm9yZGVyQm94ID8gImJvcmRlciIgOiAiY29udGVudCIgKSA/DQoJCS8vIElmIHdlIGFscmVhZHkgaGF2ZSB0aGUgcmlnaHQgbWVhc3VyZW1lbnQsIGF2b2lkIGF1Z21lbnRhdGlvbg0KCQk0IDoNCgkJLy8gT3RoZXJ3aXNlIGluaXRpYWxpemUgZm9yIGhvcml6b250YWwgb3IgdmVydGljYWwgcHJvcGVydGllcw0KCQluYW1lID09PSAid2lkdGgiID8gMSA6IDAsDQoNCgkJdmFsID0gMDsNCg0KCWZvciAoIDsgaSA8IDQ7IGkgKz0gMiApIHsNCgkJLy8gQm90aCBib3ggbW9kZWxzIGV4Y2x1ZGUgbWFyZ2luLCBzbyBhZGQgaXQgaWYgd2Ugd2FudCBpdA0KCQlpZiAoIGV4dHJhID09PSAibWFyZ2luIiApIHsNCgkJCXZhbCArPSBqUXVlcnkuY3NzKCBlbGVtLCBleHRyYSArIGNzc0V4cGFuZFsgaSBdLCB0cnVlLCBzdHlsZXMgKTsNCgkJfQ0KDQoJCWlmICggaXNCb3JkZXJCb3ggKSB7DQoJCQkvLyBib3JkZXItYm94IGluY2x1ZGVzIHBhZGRpbmcsIHNvIHJlbW92ZSBpdCBpZiB3ZSB3YW50IGNvbnRlbnQNCgkJCWlmICggZXh0cmEgPT09ICJjb250ZW50IiApIHsNCgkJCQl2YWwgLT0galF1ZXJ5LmNzcyggZWxlbSwgInBhZGRpbmciICsgY3NzRXhwYW5kWyBpIF0sIHRydWUsIHN0eWxlcyApOw0KCQkJfQ0KDQoJCQkvLyBBdCB0aGlzIHBvaW50LCBleHRyYSBpc24ndCBib3JkZXIgbm9yIG1hcmdpbiwgc28gcmVtb3ZlIGJvcmRlcg0KCQkJaWYgKCBleHRyYSAhPT0gIm1hcmdpbiIgKSB7DQoJCQkJdmFsIC09IGpRdWVyeS5jc3MoIGVsZW0sICJib3JkZXIiICsgY3NzRXhwYW5kWyBpIF0gKyAiV2lkdGgiLCB0cnVlLCBzdHlsZXMgKTsNCgkJCX0NCgkJfSBlbHNlIHsNCgkJCS8vIEF0IHRoaXMgcG9pbnQsIGV4dHJhIGlzbid0IGNvbnRlbnQsIHNvIGFkZCBwYWRkaW5nDQoJCQl2YWwgKz0galF1ZXJ5LmNzcyggZWxlbSwgInBhZGRpbmciICsgY3NzRXhwYW5kWyBpIF0sIHRydWUsIHN0eWxlcyApOw0KDQoJCQkvLyBBdCB0aGlzIHBvaW50LCBleHRyYSBpc24ndCBjb250ZW50IG5vciBwYWRkaW5nLCBzbyBhZGQgYm9yZGVyDQoJCQlpZiAoIGV4dHJhICE9PSAicGFkZGluZyIgKSB7DQoJCQkJdmFsICs9IGpRdWVyeS5jc3MoIGVsZW0sICJib3JkZXIiICsgY3NzRXhwYW5kWyBpIF0gKyAiV2lkdGgiLCB0cnVlLCBzdHlsZXMgKTsNCgkJCX0NCgkJfQ0KCX0NCg0KCXJldHVybiB2YWw7DQp9DQoNCmZ1bmN0aW9uIGdldFdpZHRoT3JIZWlnaHQoIGVsZW0sIG5hbWUsIGV4dHJhICkgew0KDQoJLy8gU3RhcnQgd2l0aCBvZmZzZXQgcHJvcGVydHksIHdoaWNoIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGJvcmRlci1ib3ggdmFsdWUNCgl2YXIgdmFsdWVJc0JvcmRlckJveCA9IHRydWUsDQoJCXZhbCA9IG5hbWUgPT09ICJ3aWR0aCIgPyBlbGVtLm9mZnNldFdpZHRoIDogZWxlbS5vZmZzZXRIZWlnaHQsDQoJCXN0eWxlcyA9IGdldFN0eWxlcyggZWxlbSApLA0KCQlpc0JvcmRlckJveCA9IGpRdWVyeS5jc3MoIGVsZW0sICJib3hTaXppbmciLCBmYWxzZSwgc3R5bGVzICkgPT09ICJib3JkZXItYm94IjsNCg0KCS8vIFNvbWUgbm9uLWh0bWwgZWxlbWVudHMgcmV0dXJuIHVuZGVmaW5lZCBmb3Igb2Zmc2V0V2lkdGgsIHNvIGNoZWNrIGZvciBudWxsL3VuZGVmaW5lZA0KCS8vIHN2ZyAtIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTY0OTI4NQ0KCS8vIE1hdGhNTCAtIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTQ5MTY2OA0KCWlmICggdmFsIDw9IDAgfHwgdmFsID09IG51bGwgKSB7DQoJCS8vIEZhbGwgYmFjayB0byBjb21wdXRlZCB0aGVuIHVuY29tcHV0ZWQgY3NzIGlmIG5lY2Vzc2FyeQ0KCQl2YWwgPSBjdXJDU1MoIGVsZW0sIG5hbWUsIHN0eWxlcyApOw0KCQlpZiAoIHZhbCA8IDAgfHwgdmFsID09IG51bGwgKSB7DQoJCQl2YWwgPSBlbGVtLnN0eWxlWyBuYW1lIF07DQoJCX0NCg0KCQkvLyBDb21wdXRlZCB1bml0IGlzIG5vdCBwaXhlbHMuIFN0b3AgaGVyZSBhbmQgcmV0dXJuLg0KCQlpZiAoIHJudW1ub25weC50ZXN0KHZhbCkgKSB7DQoJCQlyZXR1cm4gdmFsOw0KCQl9DQoNCgkJLy8gQ2hlY2sgZm9yIHN0eWxlIGluIGNhc2UgYSBicm93c2VyIHdoaWNoIHJldHVybnMgdW5yZWxpYWJsZSB2YWx1ZXMNCgkJLy8gZm9yIGdldENvbXB1dGVkU3R5bGUgc2lsZW50bHkgZmFsbHMgYmFjayB0byB0aGUgcmVsaWFibGUgZWxlbS5zdHlsZQ0KCQl2YWx1ZUlzQm9yZGVyQm94ID0gaXNCb3JkZXJCb3ggJiYNCgkJCSggc3VwcG9ydC5ib3hTaXppbmdSZWxpYWJsZSgpIHx8IHZhbCA9PT0gZWxlbS5zdHlsZVsgbmFtZSBdICk7DQoNCgkJLy8gTm9ybWFsaXplICIiLCBhdXRvLCBhbmQgcHJlcGFyZSBmb3IgZXh0cmENCgkJdmFsID0gcGFyc2VGbG9hdCggdmFsICkgfHwgMDsNCgl9DQoNCgkvLyBVc2UgdGhlIGFjdGl2ZSBib3gtc2l6aW5nIG1vZGVsIHRvIGFkZC9zdWJ0cmFjdCBpcnJlbGV2YW50IHN0eWxlcw0KCXJldHVybiAoIHZhbCArDQoJCWF1Z21lbnRXaWR0aE9ySGVpZ2h0KA0KCQkJZWxlbSwNCgkJCW5hbWUsDQoJCQlleHRyYSB8fCAoIGlzQm9yZGVyQm94ID8gImJvcmRlciIgOiAiY29udGVudCIgKSwNCgkJCXZhbHVlSXNCb3JkZXJCb3gsDQoJCQlzdHlsZXMNCgkJKQ0KCSkgKyAicHgiOw0KfQ0KDQpmdW5jdGlvbiBzaG93SGlkZSggZWxlbWVudHMsIHNob3cgKSB7DQoJdmFyIGRpc3BsYXksIGVsZW0sIGhpZGRlbiwNCgkJdmFsdWVzID0gW10sDQoJCWluZGV4ID0gMCwNCgkJbGVuZ3RoID0gZWxlbWVudHMubGVuZ3RoOw0KDQoJZm9yICggOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKyApIHsNCgkJZWxlbSA9IGVsZW1lbnRzWyBpbmRleCBdOw0KCQlpZiAoICFlbGVtLnN0eWxlICkgew0KCQkJY29udGludWU7DQoJCX0NCg0KCQl2YWx1ZXNbIGluZGV4IF0gPSBkYXRhX3ByaXYuZ2V0KCBlbGVtLCAib2xkZGlzcGxheSIgKTsNCgkJZGlzcGxheSA9IGVsZW0uc3R5bGUuZGlzcGxheTsNCgkJaWYgKCBzaG93ICkgew0KCQkJLy8gUmVzZXQgdGhlIGlubGluZSBkaXNwbGF5IG9mIHRoaXMgZWxlbWVudCB0byBsZWFybiBpZiBpdCBpcw0KCQkJLy8gYmVpbmcgaGlkZGVuIGJ5IGNhc2NhZGVkIHJ1bGVzIG9yIG5vdA0KCQkJaWYgKCAhdmFsdWVzWyBpbmRleCBdICYmIGRpc3BsYXkgPT09ICJub25lIiApIHsNCgkJCQllbGVtLnN0eWxlLmRpc3BsYXkgPSAiIjsNCgkJCX0NCg0KCQkJLy8gU2V0IGVsZW1lbnRzIHdoaWNoIGhhdmUgYmVlbiBvdmVycmlkZGVuIHdpdGggZGlzcGxheTogbm9uZQ0KCQkJLy8gaW4gYSBzdHlsZXNoZWV0IHRvIHdoYXRldmVyIHRoZSBkZWZhdWx0IGJyb3dzZXIgc3R5bGUgaXMNCgkJCS8vIGZvciBzdWNoIGFuIGVsZW1lbnQNCgkJCWlmICggZWxlbS5zdHlsZS5kaXNwbGF5ID09PSAiIiAmJiBpc0hpZGRlbiggZWxlbSApICkgew0KCQkJCXZhbHVlc1sgaW5kZXggXSA9IGRhdGFfcHJpdi5hY2Nlc3MoIGVsZW0sICJvbGRkaXNwbGF5IiwgZGVmYXVsdERpc3BsYXkoZWxlbS5ub2RlTmFtZSkgKTsNCgkJCX0NCgkJfSBlbHNlIHsNCgkJCWhpZGRlbiA9IGlzSGlkZGVuKCBlbGVtICk7DQoNCgkJCWlmICggZGlzcGxheSAhPT0gIm5vbmUiIHx8ICFoaWRkZW4gKSB7DQoJCQkJZGF0YV9wcml2LnNldCggZWxlbSwgIm9sZGRpc3BsYXkiLCBoaWRkZW4gPyBkaXNwbGF5IDogalF1ZXJ5LmNzcyggZWxlbSwgImRpc3BsYXkiICkgKTsNCgkJCX0NCgkJfQ0KCX0NCg0KCS8vIFNldCB0aGUgZGlzcGxheSBvZiBtb3N0IG9mIHRoZSBlbGVtZW50cyBpbiBhIHNlY29uZCBsb29wDQoJLy8gdG8gYXZvaWQgdGhlIGNvbnN0YW50IHJlZmxvdw0KCWZvciAoIGluZGV4ID0gMDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KysgKSB7DQoJCWVsZW0gPSBlbGVtZW50c1sgaW5kZXggXTsNCgkJaWYgKCAhZWxlbS5zdHlsZSApIHsNCgkJCWNvbnRpbnVlOw0KCQl9DQoJCWlmICggIXNob3cgfHwgZWxlbS5zdHlsZS5kaXNwbGF5ID09PSAibm9uZSIgfHwgZWxlbS5zdHlsZS5kaXNwbGF5ID09PSAiIiApIHsNCgkJCWVsZW0uc3R5bGUuZGlzcGxheSA9IHNob3cgPyB2YWx1ZXNbIGluZGV4IF0gfHwgIiIgOiAibm9uZSI7DQoJCX0NCgl9DQoNCglyZXR1cm4gZWxlbWVudHM7DQp9DQoNCmpRdWVyeS5leHRlbmQoew0KDQoJLy8gQWRkIGluIHN0eWxlIHByb3BlcnR5IGhvb2tzIGZvciBvdmVycmlkaW5nIHRoZSBkZWZhdWx0DQoJLy8gYmVoYXZpb3Igb2YgZ2V0dGluZyBhbmQgc2V0dGluZyBhIHN0eWxlIHByb3BlcnR5DQoJY3NzSG9va3M6IHsNCgkJb3BhY2l0eTogew0KCQkJZ2V0OiBmdW5jdGlvbiggZWxlbSwgY29tcHV0ZWQgKSB7DQoJCQkJaWYgKCBjb21wdXRlZCApIHsNCg0KCQkJCQkvLyBXZSBzaG91bGQgYWx3YXlzIGdldCBhIG51bWJlciBiYWNrIGZyb20gb3BhY2l0eQ0KCQkJCQl2YXIgcmV0ID0gY3VyQ1NTKCBlbGVtLCAib3BhY2l0eSIgKTsNCgkJCQkJcmV0dXJuIHJldCA9PT0gIiIgPyAiMSIgOiByZXQ7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJfSwNCg0KCS8vIERvbid0IGF1dG9tYXRpY2FsbHkgYWRkICJweCIgdG8gdGhlc2UgcG9zc2libHktdW5pdGxlc3MgcHJvcGVydGllcw0KCWNzc051bWJlcjogew0KCQkiY29sdW1uQ291bnQiOiB0cnVlLA0KCQkiZmlsbE9wYWNpdHkiOiB0cnVlLA0KCQkiZmxleEdyb3ciOiB0cnVlLA0KCQkiZmxleFNocmluayI6IHRydWUsDQoJCSJmb250V2VpZ2h0IjogdHJ1ZSwNCgkJImxpbmVIZWlnaHQiOiB0cnVlLA0KCQkib3BhY2l0eSI6IHRydWUsDQoJCSJvcmRlciI6IHRydWUsDQoJCSJvcnBoYW5zIjogdHJ1ZSwNCgkJIndpZG93cyI6IHRydWUsDQoJCSJ6SW5kZXgiOiB0cnVlLA0KCQkiem9vbSI6IHRydWUNCgl9LA0KDQoJLy8gQWRkIGluIHByb3BlcnRpZXMgd2hvc2UgbmFtZXMgeW91IHdpc2ggdG8gZml4IGJlZm9yZQ0KCS8vIHNldHRpbmcgb3IgZ2V0dGluZyB0aGUgdmFsdWUNCgljc3NQcm9wczogew0KCQkiZmxvYXQiOiAiY3NzRmxvYXQiDQoJfSwNCg0KCS8vIEdldCBhbmQgc2V0IHRoZSBzdHlsZSBwcm9wZXJ0eSBvbiBhIERPTSBOb2RlDQoJc3R5bGU6IGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCB2YWx1ZSwgZXh0cmEgKSB7DQoNCgkJLy8gRG9uJ3Qgc2V0IHN0eWxlcyBvbiB0ZXh0IGFuZCBjb21tZW50IG5vZGVzDQoJCWlmICggIWVsZW0gfHwgZWxlbS5ub2RlVHlwZSA9PT0gMyB8fCBlbGVtLm5vZGVUeXBlID09PSA4IHx8ICFlbGVtLnN0eWxlICkgew0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJLy8gTWFrZSBzdXJlIHRoYXQgd2UncmUgd29ya2luZyB3aXRoIHRoZSByaWdodCBuYW1lDQoJCXZhciByZXQsIHR5cGUsIGhvb2tzLA0KCQkJb3JpZ05hbWUgPSBqUXVlcnkuY2FtZWxDYXNlKCBuYW1lICksDQoJCQlzdHlsZSA9IGVsZW0uc3R5bGU7DQoNCgkJbmFtZSA9IGpRdWVyeS5jc3NQcm9wc1sgb3JpZ05hbWUgXSB8fCAoIGpRdWVyeS5jc3NQcm9wc1sgb3JpZ05hbWUgXSA9IHZlbmRvclByb3BOYW1lKCBzdHlsZSwgb3JpZ05hbWUgKSApOw0KDQoJCS8vIEdldHMgaG9vayBmb3IgdGhlIHByZWZpeGVkIHZlcnNpb24sIHRoZW4gdW5wcmVmaXhlZCB2ZXJzaW9uDQoJCWhvb2tzID0galF1ZXJ5LmNzc0hvb2tzWyBuYW1lIF0gfHwgalF1ZXJ5LmNzc0hvb2tzWyBvcmlnTmFtZSBdOw0KDQoJCS8vIENoZWNrIGlmIHdlJ3JlIHNldHRpbmcgYSB2YWx1ZQ0KCQlpZiAoIHZhbHVlICE9PSB1bmRlZmluZWQgKSB7DQoJCQl0eXBlID0gdHlwZW9mIHZhbHVlOw0KDQoJCQkvLyBDb252ZXJ0ICIrPSIgb3IgIi09IiB0byByZWxhdGl2ZSBudW1iZXJzICgjNzM0NSkNCgkJCWlmICggdHlwZSA9PT0gInN0cmluZyIgJiYgKHJldCA9IHJyZWxOdW0uZXhlYyggdmFsdWUgKSkgKSB7DQoJCQkJdmFsdWUgPSAoIHJldFsxXSArIDEgKSAqIHJldFsyXSArIHBhcnNlRmxvYXQoIGpRdWVyeS5jc3MoIGVsZW0sIG5hbWUgKSApOw0KCQkJCS8vIEZpeGVzIGJ1ZyAjOTIzNw0KCQkJCXR5cGUgPSAibnVtYmVyIjsNCgkJCX0NCg0KCQkJLy8gTWFrZSBzdXJlIHRoYXQgbnVsbCBhbmQgTmFOIHZhbHVlcyBhcmVuJ3Qgc2V0ICgjNzExNikNCgkJCWlmICggdmFsdWUgPT0gbnVsbCB8fCB2YWx1ZSAhPT0gdmFsdWUgKSB7DQoJCQkJcmV0dXJuOw0KCQkJfQ0KDQoJCQkvLyBJZiBhIG51bWJlciwgYWRkICdweCcgdG8gdGhlIChleGNlcHQgZm9yIGNlcnRhaW4gQ1NTIHByb3BlcnRpZXMpDQoJCQlpZiAoIHR5cGUgPT09ICJudW1iZXIiICYmICFqUXVlcnkuY3NzTnVtYmVyWyBvcmlnTmFtZSBdICkgew0KCQkJCXZhbHVlICs9ICJweCI7DQoJCQl9DQoNCgkJCS8vIFN1cHBvcnQ6IElFOS0xMSsNCgkJCS8vIGJhY2tncm91bmQtKiBwcm9wcyBhZmZlY3Qgb3JpZ2luYWwgY2xvbmUncyB2YWx1ZXMNCgkJCWlmICggIXN1cHBvcnQuY2xlYXJDbG9uZVN0eWxlICYmIHZhbHVlID09PSAiIiAmJiBuYW1lLmluZGV4T2YoICJiYWNrZ3JvdW5kIiApID09PSAwICkgew0KCQkJCXN0eWxlWyBuYW1lIF0gPSAiaW5oZXJpdCI7DQoJCQl9DQoNCgkJCS8vIElmIGEgaG9vayB3YXMgcHJvdmlkZWQsIHVzZSB0aGF0IHZhbHVlLCBvdGhlcndpc2UganVzdCBzZXQgdGhlIHNwZWNpZmllZCB2YWx1ZQ0KCQkJaWYgKCAhaG9va3MgfHwgISgic2V0IiBpbiBob29rcykgfHwgKHZhbHVlID0gaG9va3Muc2V0KCBlbGVtLCB2YWx1ZSwgZXh0cmEgKSkgIT09IHVuZGVmaW5lZCApIHsNCgkJCQlzdHlsZVsgbmFtZSBdID0gdmFsdWU7DQoJCQl9DQoNCgkJfSBlbHNlIHsNCgkJCS8vIElmIGEgaG9vayB3YXMgcHJvdmlkZWQgZ2V0IHRoZSBub24tY29tcHV0ZWQgdmFsdWUgZnJvbSB0aGVyZQ0KCQkJaWYgKCBob29rcyAmJiAiZ2V0IiBpbiBob29rcyAmJiAocmV0ID0gaG9va3MuZ2V0KCBlbGVtLCBmYWxzZSwgZXh0cmEgKSkgIT09IHVuZGVmaW5lZCApIHsNCgkJCQlyZXR1cm4gcmV0Ow0KCQkJfQ0KDQoJCQkvLyBPdGhlcndpc2UganVzdCBnZXQgdGhlIHZhbHVlIGZyb20gdGhlIHN0eWxlIG9iamVjdA0KCQkJcmV0dXJuIHN0eWxlWyBuYW1lIF07DQoJCX0NCgl9LA0KDQoJY3NzOiBmdW5jdGlvbiggZWxlbSwgbmFtZSwgZXh0cmEsIHN0eWxlcyApIHsNCgkJdmFyIHZhbCwgbnVtLCBob29rcywNCgkJCW9yaWdOYW1lID0galF1ZXJ5LmNhbWVsQ2FzZSggbmFtZSApOw0KDQoJCS8vIE1ha2Ugc3VyZSB0aGF0IHdlJ3JlIHdvcmtpbmcgd2l0aCB0aGUgcmlnaHQgbmFtZQ0KCQluYW1lID0galF1ZXJ5LmNzc1Byb3BzWyBvcmlnTmFtZSBdIHx8ICggalF1ZXJ5LmNzc1Byb3BzWyBvcmlnTmFtZSBdID0gdmVuZG9yUHJvcE5hbWUoIGVsZW0uc3R5bGUsIG9yaWdOYW1lICkgKTsNCg0KCQkvLyBUcnkgcHJlZml4ZWQgbmFtZSBmb2xsb3dlZCBieSB0aGUgdW5wcmVmaXhlZCBuYW1lDQoJCWhvb2tzID0galF1ZXJ5LmNzc0hvb2tzWyBuYW1lIF0gfHwgalF1ZXJ5LmNzc0hvb2tzWyBvcmlnTmFtZSBdOw0KDQoJCS8vIElmIGEgaG9vayB3YXMgcHJvdmlkZWQgZ2V0IHRoZSBjb21wdXRlZCB2YWx1ZSBmcm9tIHRoZXJlDQoJCWlmICggaG9va3MgJiYgImdldCIgaW4gaG9va3MgKSB7DQoJCQl2YWwgPSBob29rcy5nZXQoIGVsZW0sIHRydWUsIGV4dHJhICk7DQoJCX0NCg0KCQkvLyBPdGhlcndpc2UsIGlmIGEgd2F5IHRvIGdldCB0aGUgY29tcHV0ZWQgdmFsdWUgZXhpc3RzLCB1c2UgdGhhdA0KCQlpZiAoIHZhbCA9PT0gdW5kZWZpbmVkICkgew0KCQkJdmFsID0gY3VyQ1NTKCBlbGVtLCBuYW1lLCBzdHlsZXMgKTsNCgkJfQ0KDQoJCS8vIENvbnZlcnQgIm5vcm1hbCIgdG8gY29tcHV0ZWQgdmFsdWUNCgkJaWYgKCB2YWwgPT09ICJub3JtYWwiICYmIG5hbWUgaW4gY3NzTm9ybWFsVHJhbnNmb3JtICkgew0KCQkJdmFsID0gY3NzTm9ybWFsVHJhbnNmb3JtWyBuYW1lIF07DQoJCX0NCg0KCQkvLyBNYWtlIG51bWVyaWMgaWYgZm9yY2VkIG9yIGEgcXVhbGlmaWVyIHdhcyBwcm92aWRlZCBhbmQgdmFsIGxvb2tzIG51bWVyaWMNCgkJaWYgKCBleHRyYSA9PT0gIiIgfHwgZXh0cmEgKSB7DQoJCQludW0gPSBwYXJzZUZsb2F0KCB2YWwgKTsNCgkJCXJldHVybiBleHRyYSA9PT0gdHJ1ZSB8fCBqUXVlcnkuaXNOdW1lcmljKCBudW0gKSA/IG51bSB8fCAwIDogdmFsOw0KCQl9DQoJCXJldHVybiB2YWw7DQoJfQ0KfSk7DQoNCmpRdWVyeS5lYWNoKFsgImhlaWdodCIsICJ3aWR0aCIgXSwgZnVuY3Rpb24oIGksIG5hbWUgKSB7DQoJalF1ZXJ5LmNzc0hvb2tzWyBuYW1lIF0gPSB7DQoJCWdldDogZnVuY3Rpb24oIGVsZW0sIGNvbXB1dGVkLCBleHRyYSApIHsNCgkJCWlmICggY29tcHV0ZWQgKSB7DQoNCgkJCQkvLyBDZXJ0YWluIGVsZW1lbnRzIGNhbiBoYXZlIGRpbWVuc2lvbiBpbmZvIGlmIHdlIGludmlzaWJseSBzaG93IHRoZW0NCgkJCQkvLyBidXQgaXQgbXVzdCBoYXZlIGEgY3VycmVudCBkaXNwbGF5IHN0eWxlIHRoYXQgd291bGQgYmVuZWZpdA0KCQkJCXJldHVybiByZGlzcGxheXN3YXAudGVzdCggalF1ZXJ5LmNzcyggZWxlbSwgImRpc3BsYXkiICkgKSAmJiBlbGVtLm9mZnNldFdpZHRoID09PSAwID8NCgkJCQkJalF1ZXJ5LnN3YXAoIGVsZW0sIGNzc1Nob3csIGZ1bmN0aW9uKCkgew0KCQkJCQkJcmV0dXJuIGdldFdpZHRoT3JIZWlnaHQoIGVsZW0sIG5hbWUsIGV4dHJhICk7DQoJCQkJCX0pIDoNCgkJCQkJZ2V0V2lkdGhPckhlaWdodCggZWxlbSwgbmFtZSwgZXh0cmEgKTsNCgkJCX0NCgkJfSwNCg0KCQlzZXQ6IGZ1bmN0aW9uKCBlbGVtLCB2YWx1ZSwgZXh0cmEgKSB7DQoJCQl2YXIgc3R5bGVzID0gZXh0cmEgJiYgZ2V0U3R5bGVzKCBlbGVtICk7DQoJCQlyZXR1cm4gc2V0UG9zaXRpdmVOdW1iZXIoIGVsZW0sIHZhbHVlLCBleHRyYSA/DQoJCQkJYXVnbWVudFdpZHRoT3JIZWlnaHQoDQoJCQkJCWVsZW0sDQoJCQkJCW5hbWUsDQoJCQkJCWV4dHJhLA0KCQkJCQlqUXVlcnkuY3NzKCBlbGVtLCAiYm94U2l6aW5nIiwgZmFsc2UsIHN0eWxlcyApID09PSAiYm9yZGVyLWJveCIsDQoJCQkJCXN0eWxlcw0KCQkJCSkgOiAwDQoJCQkpOw0KCQl9DQoJfTsNCn0pOw0KDQovLyBTdXBwb3J0OiBBbmRyb2lkIDIuMw0KalF1ZXJ5LmNzc0hvb2tzLm1hcmdpblJpZ2h0ID0gYWRkR2V0SG9va0lmKCBzdXBwb3J0LnJlbGlhYmxlTWFyZ2luUmlnaHQsDQoJZnVuY3Rpb24oIGVsZW0sIGNvbXB1dGVkICkgew0KCQlpZiAoIGNvbXB1dGVkICkgew0KCQkJcmV0dXJuIGpRdWVyeS5zd2FwKCBlbGVtLCB7ICJkaXNwbGF5IjogImlubGluZS1ibG9jayIgfSwNCgkJCQljdXJDU1MsIFsgZWxlbSwgIm1hcmdpblJpZ2h0IiBdICk7DQoJCX0NCgl9DQopOw0KDQovLyBUaGVzZSBob29rcyBhcmUgdXNlZCBieSBhbmltYXRlIHRvIGV4cGFuZCBwcm9wZXJ0aWVzDQpqUXVlcnkuZWFjaCh7DQoJbWFyZ2luOiAiIiwNCglwYWRkaW5nOiAiIiwNCglib3JkZXI6ICJXaWR0aCINCn0sIGZ1bmN0aW9uKCBwcmVmaXgsIHN1ZmZpeCApIHsNCglqUXVlcnkuY3NzSG9va3NbIHByZWZpeCArIHN1ZmZpeCBdID0gew0KCQlleHBhbmQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsNCgkJCXZhciBpID0gMCwNCgkJCQlleHBhbmRlZCA9IHt9LA0KDQoJCQkJLy8gQXNzdW1lcyBhIHNpbmdsZSBudW1iZXIgaWYgbm90IGEgc3RyaW5nDQoJCQkJcGFydHMgPSB0eXBlb2YgdmFsdWUgPT09ICJzdHJpbmciID8gdmFsdWUuc3BsaXQoIiAiKSA6IFsgdmFsdWUgXTsNCg0KCQkJZm9yICggOyBpIDwgNDsgaSsrICkgew0KCQkJCWV4cGFuZGVkWyBwcmVmaXggKyBjc3NFeHBhbmRbIGkgXSArIHN1ZmZpeCBdID0NCgkJCQkJcGFydHNbIGkgXSB8fCBwYXJ0c1sgaSAtIDIgXSB8fCBwYXJ0c1sgMCBdOw0KCQkJfQ0KDQoJCQlyZXR1cm4gZXhwYW5kZWQ7DQoJCX0NCgl9Ow0KDQoJaWYgKCAhcm1hcmdpbi50ZXN0KCBwcmVmaXggKSApIHsNCgkJalF1ZXJ5LmNzc0hvb2tzWyBwcmVmaXggKyBzdWZmaXggXS5zZXQgPSBzZXRQb3NpdGl2ZU51bWJlcjsNCgl9DQp9KTsNCg0KalF1ZXJ5LmZuLmV4dGVuZCh7DQoJY3NzOiBmdW5jdGlvbiggbmFtZSwgdmFsdWUgKSB7DQoJCXJldHVybiBhY2Nlc3MoIHRoaXMsIGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCB2YWx1ZSApIHsNCgkJCXZhciBzdHlsZXMsIGxlbiwNCgkJCQltYXAgPSB7fSwNCgkJCQlpID0gMDsNCg0KCQkJaWYgKCBqUXVlcnkuaXNBcnJheSggbmFtZSApICkgew0KCQkJCXN0eWxlcyA9IGdldFN0eWxlcyggZWxlbSApOw0KCQkJCWxlbiA9IG5hbWUubGVuZ3RoOw0KDQoJCQkJZm9yICggOyBpIDwgbGVuOyBpKysgKSB7DQoJCQkJCW1hcFsgbmFtZVsgaSBdIF0gPSBqUXVlcnkuY3NzKCBlbGVtLCBuYW1lWyBpIF0sIGZhbHNlLCBzdHlsZXMgKTsNCgkJCQl9DQoNCgkJCQlyZXR1cm4gbWFwOw0KCQkJfQ0KDQoJCQlyZXR1cm4gdmFsdWUgIT09IHVuZGVmaW5lZCA/DQoJCQkJalF1ZXJ5LnN0eWxlKCBlbGVtLCBuYW1lLCB2YWx1ZSApIDoNCgkJCQlqUXVlcnkuY3NzKCBlbGVtLCBuYW1lICk7DQoJCX0sIG5hbWUsIHZhbHVlLCBhcmd1bWVudHMubGVuZ3RoID4gMSApOw0KCX0sDQoJc2hvdzogZnVuY3Rpb24oKSB7DQoJCXJldHVybiBzaG93SGlkZSggdGhpcywgdHJ1ZSApOw0KCX0sDQoJaGlkZTogZnVuY3Rpb24oKSB7DQoJCXJldHVybiBzaG93SGlkZSggdGhpcyApOw0KCX0sDQoJdG9nZ2xlOiBmdW5jdGlvbiggc3RhdGUgKSB7DQoJCWlmICggdHlwZW9mIHN0YXRlID09PSAiYm9vbGVhbiIgKSB7DQoJCQlyZXR1cm4gc3RhdGUgPyB0aGlzLnNob3coKSA6IHRoaXMuaGlkZSgpOw0KCQl9DQoNCgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCWlmICggaXNIaWRkZW4oIHRoaXMgKSApIHsNCgkJCQlqUXVlcnkoIHRoaXMgKS5zaG93KCk7DQoJCQl9IGVsc2Ugew0KCQkJCWpRdWVyeSggdGhpcyApLmhpZGUoKTsNCgkJCX0NCgkJfSk7DQoJfQ0KfSk7DQoNCg0KZnVuY3Rpb24gVHdlZW4oIGVsZW0sIG9wdGlvbnMsIHByb3AsIGVuZCwgZWFzaW5nICkgew0KCXJldHVybiBuZXcgVHdlZW4ucHJvdG90eXBlLmluaXQoIGVsZW0sIG9wdGlvbnMsIHByb3AsIGVuZCwgZWFzaW5nICk7DQp9DQpqUXVlcnkuVHdlZW4gPSBUd2VlbjsNCg0KVHdlZW4ucHJvdG90eXBlID0gew0KCWNvbnN0cnVjdG9yOiBUd2VlbiwNCglpbml0OiBmdW5jdGlvbiggZWxlbSwgb3B0aW9ucywgcHJvcCwgZW5kLCBlYXNpbmcsIHVuaXQgKSB7DQoJCXRoaXMuZWxlbSA9IGVsZW07DQoJCXRoaXMucHJvcCA9IHByb3A7DQoJCXRoaXMuZWFzaW5nID0gZWFzaW5nIHx8ICJzd2luZyI7DQoJCXRoaXMub3B0aW9ucyA9IG9wdGlvbnM7DQoJCXRoaXMuc3RhcnQgPSB0aGlzLm5vdyA9IHRoaXMuY3VyKCk7DQoJCXRoaXMuZW5kID0gZW5kOw0KCQl0aGlzLnVuaXQgPSB1bml0IHx8ICggalF1ZXJ5LmNzc051bWJlclsgcHJvcCBdID8gIiIgOiAicHgiICk7DQoJfSwNCgljdXI6IGZ1bmN0aW9uKCkgew0KCQl2YXIgaG9va3MgPSBUd2Vlbi5wcm9wSG9va3NbIHRoaXMucHJvcCBdOw0KDQoJCXJldHVybiBob29rcyAmJiBob29rcy5nZXQgPw0KCQkJaG9va3MuZ2V0KCB0aGlzICkgOg0KCQkJVHdlZW4ucHJvcEhvb2tzLl9kZWZhdWx0LmdldCggdGhpcyApOw0KCX0sDQoJcnVuOiBmdW5jdGlvbiggcGVyY2VudCApIHsNCgkJdmFyIGVhc2VkLA0KCQkJaG9va3MgPSBUd2Vlbi5wcm9wSG9va3NbIHRoaXMucHJvcCBdOw0KDQoJCWlmICggdGhpcy5vcHRpb25zLmR1cmF0aW9uICkgew0KCQkJdGhpcy5wb3MgPSBlYXNlZCA9IGpRdWVyeS5lYXNpbmdbIHRoaXMuZWFzaW5nIF0oDQoJCQkJcGVyY2VudCwgdGhpcy5vcHRpb25zLmR1cmF0aW9uICogcGVyY2VudCwgMCwgMSwgdGhpcy5vcHRpb25zLmR1cmF0aW9uDQoJCQkpOw0KCQl9IGVsc2Ugew0KCQkJdGhpcy5wb3MgPSBlYXNlZCA9IHBlcmNlbnQ7DQoJCX0NCgkJdGhpcy5ub3cgPSAoIHRoaXMuZW5kIC0gdGhpcy5zdGFydCApICogZWFzZWQgKyB0aGlzLnN0YXJ0Ow0KDQoJCWlmICggdGhpcy5vcHRpb25zLnN0ZXAgKSB7DQoJCQl0aGlzLm9wdGlvbnMuc3RlcC5jYWxsKCB0aGlzLmVsZW0sIHRoaXMubm93LCB0aGlzICk7DQoJCX0NCg0KCQlpZiAoIGhvb2tzICYmIGhvb2tzLnNldCApIHsNCgkJCWhvb2tzLnNldCggdGhpcyApOw0KCQl9IGVsc2Ugew0KCQkJVHdlZW4ucHJvcEhvb2tzLl9kZWZhdWx0LnNldCggdGhpcyApOw0KCQl9DQoJCXJldHVybiB0aGlzOw0KCX0NCn07DQoNClR3ZWVuLnByb3RvdHlwZS5pbml0LnByb3RvdHlwZSA9IFR3ZWVuLnByb3RvdHlwZTsNCg0KVHdlZW4ucHJvcEhvb2tzID0gew0KCV9kZWZhdWx0OiB7DQoJCWdldDogZnVuY3Rpb24oIHR3ZWVuICkgew0KCQkJdmFyIHJlc3VsdDsNCg0KCQkJaWYgKCB0d2Vlbi5lbGVtWyB0d2Vlbi5wcm9wIF0gIT0gbnVsbCAmJg0KCQkJCSghdHdlZW4uZWxlbS5zdHlsZSB8fCB0d2Vlbi5lbGVtLnN0eWxlWyB0d2Vlbi5wcm9wIF0gPT0gbnVsbCkgKSB7DQoJCQkJcmV0dXJuIHR3ZWVuLmVsZW1bIHR3ZWVuLnByb3AgXTsNCgkJCX0NCg0KCQkJLy8gUGFzc2luZyBhbiBlbXB0eSBzdHJpbmcgYXMgYSAzcmQgcGFyYW1ldGVyIHRvIC5jc3Mgd2lsbCBhdXRvbWF0aWNhbGx5DQoJCQkvLyBhdHRlbXB0IGEgcGFyc2VGbG9hdCBhbmQgZmFsbGJhY2sgdG8gYSBzdHJpbmcgaWYgdGhlIHBhcnNlIGZhaWxzLg0KCQkJLy8gU2ltcGxlIHZhbHVlcyBzdWNoIGFzICIxMHB4IiBhcmUgcGFyc2VkIHRvIEZsb2F0Ow0KCQkJLy8gY29tcGxleCB2YWx1ZXMgc3VjaCBhcyAicm90YXRlKDFyYWQpIiBhcmUgcmV0dXJuZWQgYXMtaXMuDQoJCQlyZXN1bHQgPSBqUXVlcnkuY3NzKCB0d2Vlbi5lbGVtLCB0d2Vlbi5wcm9wLCAiIiApOw0KCQkJLy8gRW1wdHkgc3RyaW5ncywgbnVsbCwgdW5kZWZpbmVkIGFuZCAiYXV0byIgYXJlIGNvbnZlcnRlZCB0byAwLg0KCQkJcmV0dXJuICFyZXN1bHQgfHwgcmVzdWx0ID09PSAiYXV0byIgPyAwIDogcmVzdWx0Ow0KCQl9LA0KCQlzZXQ6IGZ1bmN0aW9uKCB0d2VlbiApIHsNCgkJCS8vIFVzZSBzdGVwIGhvb2sgZm9yIGJhY2sgY29tcGF0Lg0KCQkJLy8gVXNlIGNzc0hvb2sgaWYgaXRzIHRoZXJlLg0KCQkJLy8gVXNlIC5zdHlsZSBpZiBhdmFpbGFibGUgYW5kIHVzZSBwbGFpbiBwcm9wZXJ0aWVzIHdoZXJlIGF2YWlsYWJsZS4NCgkJCWlmICggalF1ZXJ5LmZ4LnN0ZXBbIHR3ZWVuLnByb3AgXSApIHsNCgkJCQlqUXVlcnkuZnguc3RlcFsgdHdlZW4ucHJvcCBdKCB0d2VlbiApOw0KCQkJfSBlbHNlIGlmICggdHdlZW4uZWxlbS5zdHlsZSAmJiAoIHR3ZWVuLmVsZW0uc3R5bGVbIGpRdWVyeS5jc3NQcm9wc1sgdHdlZW4ucHJvcCBdIF0gIT0gbnVsbCB8fCBqUXVlcnkuY3NzSG9va3NbIHR3ZWVuLnByb3AgXSApICkgew0KCQkJCWpRdWVyeS5zdHlsZSggdHdlZW4uZWxlbSwgdHdlZW4ucHJvcCwgdHdlZW4ubm93ICsgdHdlZW4udW5pdCApOw0KCQkJfSBlbHNlIHsNCgkJCQl0d2Vlbi5lbGVtWyB0d2Vlbi5wcm9wIF0gPSB0d2Vlbi5ub3c7DQoJCQl9DQoJCX0NCgl9DQp9Ow0KDQovLyBTdXBwb3J0OiBJRTkNCi8vIFBhbmljIGJhc2VkIGFwcHJvYWNoIHRvIHNldHRpbmcgdGhpbmdzIG9uIGRpc2Nvbm5lY3RlZCBub2Rlcw0KVHdlZW4ucHJvcEhvb2tzLnNjcm9sbFRvcCA9IFR3ZWVuLnByb3BIb29rcy5zY3JvbGxMZWZ0ID0gew0KCXNldDogZnVuY3Rpb24oIHR3ZWVuICkgew0KCQlpZiAoIHR3ZWVuLmVsZW0ubm9kZVR5cGUgJiYgdHdlZW4uZWxlbS5wYXJlbnROb2RlICkgew0KCQkJdHdlZW4uZWxlbVsgdHdlZW4ucHJvcCBdID0gdHdlZW4ubm93Ow0KCQl9DQoJfQ0KfTsNCg0KalF1ZXJ5LmVhc2luZyA9IHsNCglsaW5lYXI6IGZ1bmN0aW9uKCBwICkgew0KCQlyZXR1cm4gcDsNCgl9LA0KCXN3aW5nOiBmdW5jdGlvbiggcCApIHsNCgkJcmV0dXJuIDAuNSAtIE1hdGguY29zKCBwICogTWF0aC5QSSApIC8gMjsNCgl9DQp9Ow0KDQpqUXVlcnkuZnggPSBUd2Vlbi5wcm90b3R5cGUuaW5pdDsNCg0KLy8gQmFjayBDb21wYXQgPDEuOCBleHRlbnNpb24gcG9pbnQNCmpRdWVyeS5meC5zdGVwID0ge307DQoNCg0KDQoNCnZhcg0KCWZ4Tm93LCB0aW1lcklkLA0KCXJmeHR5cGVzID0gL14oPzp0b2dnbGV8c2hvd3xoaWRlKSQvLA0KCXJmeG51bSA9IG5ldyBSZWdFeHAoICJeKD86KFsrLV0pPXwpKCIgKyBwbnVtICsgIikoW2EteiVdKikkIiwgImkiICksDQoJcnJ1biA9IC9xdWV1ZUhvb2tzJC8sDQoJYW5pbWF0aW9uUHJlZmlsdGVycyA9IFsgZGVmYXVsdFByZWZpbHRlciBdLA0KCXR3ZWVuZXJzID0gew0KCQkiKiI6IFsgZnVuY3Rpb24oIHByb3AsIHZhbHVlICkgew0KCQkJdmFyIHR3ZWVuID0gdGhpcy5jcmVhdGVUd2VlbiggcHJvcCwgdmFsdWUgKSwNCgkJCQl0YXJnZXQgPSB0d2Vlbi5jdXIoKSwNCgkJCQlwYXJ0cyA9IHJmeG51bS5leGVjKCB2YWx1ZSApLA0KCQkJCXVuaXQgPSBwYXJ0cyAmJiBwYXJ0c1sgMyBdIHx8ICggalF1ZXJ5LmNzc051bWJlclsgcHJvcCBdID8gIiIgOiAicHgiICksDQoNCgkJCQkvLyBTdGFydGluZyB2YWx1ZSBjb21wdXRhdGlvbiBpcyByZXF1aXJlZCBmb3IgcG90ZW50aWFsIHVuaXQgbWlzbWF0Y2hlcw0KCQkJCXN0YXJ0ID0gKCBqUXVlcnkuY3NzTnVtYmVyWyBwcm9wIF0gfHwgdW5pdCAhPT0gInB4IiAmJiArdGFyZ2V0ICkgJiYNCgkJCQkJcmZ4bnVtLmV4ZWMoIGpRdWVyeS5jc3MoIHR3ZWVuLmVsZW0sIHByb3AgKSApLA0KCQkJCXNjYWxlID0gMSwNCgkJCQltYXhJdGVyYXRpb25zID0gMjA7DQoNCgkJCWlmICggc3RhcnQgJiYgc3RhcnRbIDMgXSAhPT0gdW5pdCApIHsNCgkJCQkvLyBUcnVzdCB1bml0cyByZXBvcnRlZCBieSBqUXVlcnkuY3NzDQoJCQkJdW5pdCA9IHVuaXQgfHwgc3RhcnRbIDMgXTsNCg0KCQkJCS8vIE1ha2Ugc3VyZSB3ZSB1cGRhdGUgdGhlIHR3ZWVuIHByb3BlcnRpZXMgbGF0ZXIgb24NCgkJCQlwYXJ0cyA9IHBhcnRzIHx8IFtdOw0KDQoJCQkJLy8gSXRlcmF0aXZlbHkgYXBwcm94aW1hdGUgZnJvbSBhIG5vbnplcm8gc3RhcnRpbmcgcG9pbnQNCgkJCQlzdGFydCA9ICt0YXJnZXQgfHwgMTsNCg0KCQkJCWRvIHsNCgkJCQkJLy8gSWYgcHJldmlvdXMgaXRlcmF0aW9uIHplcm9lZCBvdXQsIGRvdWJsZSB1bnRpbCB3ZSBnZXQgKnNvbWV0aGluZyouDQoJCQkJCS8vIFVzZSBzdHJpbmcgZm9yIGRvdWJsaW5nIHNvIHdlIGRvbid0IGFjY2lkZW50YWxseSBzZWUgc2NhbGUgYXMgdW5jaGFuZ2VkIGJlbG93DQoJCQkJCXNjYWxlID0gc2NhbGUgfHwgIi41IjsNCg0KCQkJCQkvLyBBZGp1c3QgYW5kIGFwcGx5DQoJCQkJCXN0YXJ0ID0gc3RhcnQgLyBzY2FsZTsNCgkJCQkJalF1ZXJ5LnN0eWxlKCB0d2Vlbi5lbGVtLCBwcm9wLCBzdGFydCArIHVuaXQgKTsNCg0KCQkJCS8vIFVwZGF0ZSBzY2FsZSwgdG9sZXJhdGluZyB6ZXJvIG9yIE5hTiBmcm9tIHR3ZWVuLmN1cigpLA0KCQkJCS8vIGJyZWFrIHRoZSBsb29wIGlmIHNjYWxlIGlzIHVuY2hhbmdlZCBvciBwZXJmZWN0LCBvciBpZiB3ZSd2ZSBqdXN0IGhhZCBlbm91Z2gNCgkJCQl9IHdoaWxlICggc2NhbGUgIT09IChzY2FsZSA9IHR3ZWVuLmN1cigpIC8gdGFyZ2V0KSAmJiBzY2FsZSAhPT0gMSAmJiAtLW1heEl0ZXJhdGlvbnMgKTsNCgkJCX0NCg0KCQkJLy8gVXBkYXRlIHR3ZWVuIHByb3BlcnRpZXMNCgkJCWlmICggcGFydHMgKSB7DQoJCQkJc3RhcnQgPSB0d2Vlbi5zdGFydCA9ICtzdGFydCB8fCArdGFyZ2V0IHx8IDA7DQoJCQkJdHdlZW4udW5pdCA9IHVuaXQ7DQoJCQkJLy8gSWYgYSArPS8tPSB0b2tlbiB3YXMgcHJvdmlkZWQsIHdlJ3JlIGRvaW5nIGEgcmVsYXRpdmUgYW5pbWF0aW9uDQoJCQkJdHdlZW4uZW5kID0gcGFydHNbIDEgXSA/DQoJCQkJCXN0YXJ0ICsgKCBwYXJ0c1sgMSBdICsgMSApICogcGFydHNbIDIgXSA6DQoJCQkJCStwYXJ0c1sgMiBdOw0KCQkJfQ0KDQoJCQlyZXR1cm4gdHdlZW47DQoJCX0gXQ0KCX07DQoNCi8vIEFuaW1hdGlvbnMgY3JlYXRlZCBzeW5jaHJvbm91c2x5IHdpbGwgcnVuIHN5bmNocm9ub3VzbHkNCmZ1bmN0aW9uIGNyZWF0ZUZ4Tm93KCkgew0KCXNldFRpbWVvdXQoZnVuY3Rpb24oKSB7DQoJCWZ4Tm93ID0gdW5kZWZpbmVkOw0KCX0pOw0KCXJldHVybiAoIGZ4Tm93ID0galF1ZXJ5Lm5vdygpICk7DQp9DQoNCi8vIEdlbmVyYXRlIHBhcmFtZXRlcnMgdG8gY3JlYXRlIGEgc3RhbmRhcmQgYW5pbWF0aW9uDQpmdW5jdGlvbiBnZW5GeCggdHlwZSwgaW5jbHVkZVdpZHRoICkgew0KCXZhciB3aGljaCwNCgkJaSA9IDAsDQoJCWF0dHJzID0geyBoZWlnaHQ6IHR5cGUgfTsNCg0KCS8vIElmIHdlIGluY2x1ZGUgd2lkdGgsIHN0ZXAgdmFsdWUgaXMgMSB0byBkbyBhbGwgY3NzRXhwYW5kIHZhbHVlcywNCgkvLyBvdGhlcndpc2Ugc3RlcCB2YWx1ZSBpcyAyIHRvIHNraXAgb3ZlciBMZWZ0IGFuZCBSaWdodA0KCWluY2x1ZGVXaWR0aCA9IGluY2x1ZGVXaWR0aCA/IDEgOiAwOw0KCWZvciAoIDsgaSA8IDQgOyBpICs9IDIgLSBpbmNsdWRlV2lkdGggKSB7DQoJCXdoaWNoID0gY3NzRXhwYW5kWyBpIF07DQoJCWF0dHJzWyAibWFyZ2luIiArIHdoaWNoIF0gPSBhdHRyc1sgInBhZGRpbmciICsgd2hpY2ggXSA9IHR5cGU7DQoJfQ0KDQoJaWYgKCBpbmNsdWRlV2lkdGggKSB7DQoJCWF0dHJzLm9wYWNpdHkgPSBhdHRycy53aWR0aCA9IHR5cGU7DQoJfQ0KDQoJcmV0dXJuIGF0dHJzOw0KfQ0KDQpmdW5jdGlvbiBjcmVhdGVUd2VlbiggdmFsdWUsIHByb3AsIGFuaW1hdGlvbiApIHsNCgl2YXIgdHdlZW4sDQoJCWNvbGxlY3Rpb24gPSAoIHR3ZWVuZXJzWyBwcm9wIF0gfHwgW10gKS5jb25jYXQoIHR3ZWVuZXJzWyAiKiIgXSApLA0KCQlpbmRleCA9IDAsDQoJCWxlbmd0aCA9IGNvbGxlY3Rpb24ubGVuZ3RoOw0KCWZvciAoIDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KysgKSB7DQoJCWlmICggKHR3ZWVuID0gY29sbGVjdGlvblsgaW5kZXggXS5jYWxsKCBhbmltYXRpb24sIHByb3AsIHZhbHVlICkpICkgew0KDQoJCQkvLyBXZSdyZSBkb25lIHdpdGggdGhpcyBwcm9wZXJ0eQ0KCQkJcmV0dXJuIHR3ZWVuOw0KCQl9DQoJfQ0KfQ0KDQpmdW5jdGlvbiBkZWZhdWx0UHJlZmlsdGVyKCBlbGVtLCBwcm9wcywgb3B0cyApIHsNCgkvKiBqc2hpbnQgdmFsaWR0aGlzOiB0cnVlICovDQoJdmFyIHByb3AsIHZhbHVlLCB0b2dnbGUsIHR3ZWVuLCBob29rcywgb2xkZmlyZSwgZGlzcGxheSwgY2hlY2tEaXNwbGF5LA0KCQlhbmltID0gdGhpcywNCgkJb3JpZyA9IHt9LA0KCQlzdHlsZSA9IGVsZW0uc3R5bGUsDQoJCWhpZGRlbiA9IGVsZW0ubm9kZVR5cGUgJiYgaXNIaWRkZW4oIGVsZW0gKSwNCgkJZGF0YVNob3cgPSBkYXRhX3ByaXYuZ2V0KCBlbGVtLCAiZnhzaG93IiApOw0KDQoJLy8gSGFuZGxlIHF1ZXVlOiBmYWxzZSBwcm9taXNlcw0KCWlmICggIW9wdHMucXVldWUgKSB7DQoJCWhvb2tzID0galF1ZXJ5Ll9xdWV1ZUhvb2tzKCBlbGVtLCAiZngiICk7DQoJCWlmICggaG9va3MudW5xdWV1ZWQgPT0gbnVsbCApIHsNCgkJCWhvb2tzLnVucXVldWVkID0gMDsNCgkJCW9sZGZpcmUgPSBob29rcy5lbXB0eS5maXJlOw0KCQkJaG9va3MuZW1wdHkuZmlyZSA9IGZ1bmN0aW9uKCkgew0KCQkJCWlmICggIWhvb2tzLnVucXVldWVkICkgew0KCQkJCQlvbGRmaXJlKCk7DQoJCQkJfQ0KCQkJfTsNCgkJfQ0KCQlob29rcy51bnF1ZXVlZCsrOw0KDQoJCWFuaW0uYWx3YXlzKGZ1bmN0aW9uKCkgew0KCQkJLy8gRW5zdXJlIHRoZSBjb21wbGV0ZSBoYW5kbGVyIGlzIGNhbGxlZCBiZWZvcmUgdGhpcyBjb21wbGV0ZXMNCgkJCWFuaW0uYWx3YXlzKGZ1bmN0aW9uKCkgew0KCQkJCWhvb2tzLnVucXVldWVkLS07DQoJCQkJaWYgKCAhalF1ZXJ5LnF1ZXVlKCBlbGVtLCAiZngiICkubGVuZ3RoICkgew0KCQkJCQlob29rcy5lbXB0eS5maXJlKCk7DQoJCQkJfQ0KCQkJfSk7DQoJCX0pOw0KCX0NCg0KCS8vIEhlaWdodC93aWR0aCBvdmVyZmxvdyBwYXNzDQoJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxICYmICggImhlaWdodCIgaW4gcHJvcHMgfHwgIndpZHRoIiBpbiBwcm9wcyApICkgew0KCQkvLyBNYWtlIHN1cmUgdGhhdCBub3RoaW5nIHNuZWFrcyBvdXQNCgkJLy8gUmVjb3JkIGFsbCAzIG92ZXJmbG93IGF0dHJpYnV0ZXMgYmVjYXVzZSBJRTktMTAgZG8gbm90DQoJCS8vIGNoYW5nZSB0aGUgb3ZlcmZsb3cgYXR0cmlidXRlIHdoZW4gb3ZlcmZsb3dYIGFuZA0KCQkvLyBvdmVyZmxvd1kgYXJlIHNldCB0byB0aGUgc2FtZSB2YWx1ZQ0KCQlvcHRzLm92ZXJmbG93ID0gWyBzdHlsZS5vdmVyZmxvdywgc3R5bGUub3ZlcmZsb3dYLCBzdHlsZS5vdmVyZmxvd1kgXTsNCg0KCQkvLyBTZXQgZGlzcGxheSBwcm9wZXJ0eSB0byBpbmxpbmUtYmxvY2sgZm9yIGhlaWdodC93aWR0aA0KCQkvLyBhbmltYXRpb25zIG9uIGlubGluZSBlbGVtZW50cyB0aGF0IGFyZSBoYXZpbmcgd2lkdGgvaGVpZ2h0IGFuaW1hdGVkDQoJCWRpc3BsYXkgPSBqUXVlcnkuY3NzKCBlbGVtLCAiZGlzcGxheSIgKTsNCg0KCQkvLyBUZXN0IGRlZmF1bHQgZGlzcGxheSBpZiBkaXNwbGF5IGlzIGN1cnJlbnRseSAibm9uZSINCgkJY2hlY2tEaXNwbGF5ID0gZGlzcGxheSA9PT0gIm5vbmUiID8NCgkJCWRhdGFfcHJpdi5nZXQoIGVsZW0sICJvbGRkaXNwbGF5IiApIHx8IGRlZmF1bHREaXNwbGF5KCBlbGVtLm5vZGVOYW1lICkgOiBkaXNwbGF5Ow0KDQoJCWlmICggY2hlY2tEaXNwbGF5ID09PSAiaW5saW5lIiAmJiBqUXVlcnkuY3NzKCBlbGVtLCAiZmxvYXQiICkgPT09ICJub25lIiApIHsNCgkJCXN0eWxlLmRpc3BsYXkgPSAiaW5saW5lLWJsb2NrIjsNCgkJfQ0KCX0NCg0KCWlmICggb3B0cy5vdmVyZmxvdyApIHsNCgkJc3R5bGUub3ZlcmZsb3cgPSAiaGlkZGVuIjsNCgkJYW5pbS5hbHdheXMoZnVuY3Rpb24oKSB7DQoJCQlzdHlsZS5vdmVyZmxvdyA9IG9wdHMub3ZlcmZsb3dbIDAgXTsNCgkJCXN0eWxlLm92ZXJmbG93WCA9IG9wdHMub3ZlcmZsb3dbIDEgXTsNCgkJCXN0eWxlLm92ZXJmbG93WSA9IG9wdHMub3ZlcmZsb3dbIDIgXTsNCgkJfSk7DQoJfQ0KDQoJLy8gc2hvdy9oaWRlIHBhc3MNCglmb3IgKCBwcm9wIGluIHByb3BzICkgew0KCQl2YWx1ZSA9IHByb3BzWyBwcm9wIF07DQoJCWlmICggcmZ4dHlwZXMuZXhlYyggdmFsdWUgKSApIHsNCgkJCWRlbGV0ZSBwcm9wc1sgcHJvcCBdOw0KCQkJdG9nZ2xlID0gdG9nZ2xlIHx8IHZhbHVlID09PSAidG9nZ2xlIjsNCgkJCWlmICggdmFsdWUgPT09ICggaGlkZGVuID8gImhpZGUiIDogInNob3ciICkgKSB7DQoNCgkJCQkvLyBJZiB0aGVyZSBpcyBkYXRhU2hvdyBsZWZ0IG92ZXIgZnJvbSBhIHN0b3BwZWQgaGlkZSBvciBzaG93IGFuZCB3ZSBhcmUgZ29pbmcgdG8gcHJvY2VlZCB3aXRoIHNob3csIHdlIHNob3VsZCBwcmV0ZW5kIHRvIGJlIGhpZGRlbg0KCQkJCWlmICggdmFsdWUgPT09ICJzaG93IiAmJiBkYXRhU2hvdyAmJiBkYXRhU2hvd1sgcHJvcCBdICE9PSB1bmRlZmluZWQgKSB7DQoJCQkJCWhpZGRlbiA9IHRydWU7DQoJCQkJfSBlbHNlIHsNCgkJCQkJY29udGludWU7DQoJCQkJfQ0KCQkJfQ0KCQkJb3JpZ1sgcHJvcCBdID0gZGF0YVNob3cgJiYgZGF0YVNob3dbIHByb3AgXSB8fCBqUXVlcnkuc3R5bGUoIGVsZW0sIHByb3AgKTsNCg0KCQkvLyBBbnkgbm9uLWZ4IHZhbHVlIHN0b3BzIHVzIGZyb20gcmVzdG9yaW5nIHRoZSBvcmlnaW5hbCBkaXNwbGF5IHZhbHVlDQoJCX0gZWxzZSB7DQoJCQlkaXNwbGF5ID0gdW5kZWZpbmVkOw0KCQl9DQoJfQ0KDQoJaWYgKCAhalF1ZXJ5LmlzRW1wdHlPYmplY3QoIG9yaWcgKSApIHsNCgkJaWYgKCBkYXRhU2hvdyApIHsNCgkJCWlmICggImhpZGRlbiIgaW4gZGF0YVNob3cgKSB7DQoJCQkJaGlkZGVuID0gZGF0YVNob3cuaGlkZGVuOw0KCQkJfQ0KCQl9IGVsc2Ugew0KCQkJZGF0YVNob3cgPSBkYXRhX3ByaXYuYWNjZXNzKCBlbGVtLCAiZnhzaG93Iiwge30gKTsNCgkJfQ0KDQoJCS8vIFN0b3JlIHN0YXRlIGlmIGl0cyB0b2dnbGUgLSBlbmFibGVzIC5zdG9wKCkudG9nZ2xlKCkgdG8gInJldmVyc2UiDQoJCWlmICggdG9nZ2xlICkgew0KCQkJZGF0YVNob3cuaGlkZGVuID0gIWhpZGRlbjsNCgkJfQ0KCQlpZiAoIGhpZGRlbiApIHsNCgkJCWpRdWVyeSggZWxlbSApLnNob3coKTsNCgkJfSBlbHNlIHsNCgkJCWFuaW0uZG9uZShmdW5jdGlvbigpIHsNCgkJCQlqUXVlcnkoIGVsZW0gKS5oaWRlKCk7DQoJCQl9KTsNCgkJfQ0KCQlhbmltLmRvbmUoZnVuY3Rpb24oKSB7DQoJCQl2YXIgcHJvcDsNCg0KCQkJZGF0YV9wcml2LnJlbW92ZSggZWxlbSwgImZ4c2hvdyIgKTsNCgkJCWZvciAoIHByb3AgaW4gb3JpZyApIHsNCgkJCQlqUXVlcnkuc3R5bGUoIGVsZW0sIHByb3AsIG9yaWdbIHByb3AgXSApOw0KCQkJfQ0KCQl9KTsNCgkJZm9yICggcHJvcCBpbiBvcmlnICkgew0KCQkJdHdlZW4gPSBjcmVhdGVUd2VlbiggaGlkZGVuID8gZGF0YVNob3dbIHByb3AgXSA6IDAsIHByb3AsIGFuaW0gKTsNCg0KCQkJaWYgKCAhKCBwcm9wIGluIGRhdGFTaG93ICkgKSB7DQoJCQkJZGF0YVNob3dbIHByb3AgXSA9IHR3ZWVuLnN0YXJ0Ow0KCQkJCWlmICggaGlkZGVuICkgew0KCQkJCQl0d2Vlbi5lbmQgPSB0d2Vlbi5zdGFydDsNCgkJCQkJdHdlZW4uc3RhcnQgPSBwcm9wID09PSAid2lkdGgiIHx8IHByb3AgPT09ICJoZWlnaHQiID8gMSA6IDA7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoNCgkvLyBJZiB0aGlzIGlzIGEgbm9vcCBsaWtlIC5oaWRlKCkuaGlkZSgpLCByZXN0b3JlIGFuIG92ZXJ3cml0dGVuIGRpc3BsYXkgdmFsdWUNCgl9IGVsc2UgaWYgKCAoZGlzcGxheSA9PT0gIm5vbmUiID8gZGVmYXVsdERpc3BsYXkoIGVsZW0ubm9kZU5hbWUgKSA6IGRpc3BsYXkpID09PSAiaW5saW5lIiApIHsNCgkJc3R5bGUuZGlzcGxheSA9IGRpc3BsYXk7DQoJfQ0KfQ0KDQoNCmZ1bmN0aW9uIHByb3BGaWx0ZXIoIHByb3BzLCBzcGVjaWFsRWFzaW5nICkgew0KCXZhciBpbmRleCwgbmFtZSwgZWFzaW5nLCB2YWx1ZSwgaG9va3M7DQoNCgkvLyBjYW1lbENhc2UsIHNwZWNpYWxFYXNpbmcgYW5kIGV4cGFuZCBjc3NIb29rIHBhc3MNCglmb3IgKCBpbmRleCBpbiBwcm9wcyApIHsNCgkJbmFtZSA9IGpRdWVyeS5jYW1lbENhc2UoIGluZGV4ICk7DQoJCWVhc2luZyA9IHNwZWNpYWxFYXNpbmdbIG5hbWUgXTsNCgkJdmFsdWUgPSBwcm9wc1sgaW5kZXggXTsNCgkJaWYgKCBqUXVlcnkuaXNBcnJheSggdmFsdWUgKSApIHsNCgkJCWVhc2luZyA9IHZhbHVlWyAxIF07DQoJCQl2YWx1ZSA9IHByb3BzWyBpbmRleCBdID0gdmFsdWVbIDAgXTsNCgkJfQ0KDQoJCWlmICggaW5kZXggIT09IG5hbWUgKSB7DQoJCQlwcm9wc1sgbmFtZSBdID0gdmFsdWU7DQoJCQlkZWxldGUgcHJvcHNbIGluZGV4IF07DQoJCX0NCg0KCQlob29rcyA9IGpRdWVyeS5jc3NIb29rc1sgbmFtZSBdOw0KCQlpZiAoIGhvb2tzICYmICJleHBhbmQiIGluIGhvb2tzICkgew0KCQkJdmFsdWUgPSBob29rcy5leHBhbmQoIHZhbHVlICk7DQoJCQlkZWxldGUgcHJvcHNbIG5hbWUgXTsNCg0KCQkJLy8gTm90IHF1aXRlICQuZXh0ZW5kLCB0aGlzIHdvbid0IG92ZXJ3cml0ZSBleGlzdGluZyBrZXlzLg0KCQkJLy8gUmV1c2luZyAnaW5kZXgnIGJlY2F1c2Ugd2UgaGF2ZSB0aGUgY29ycmVjdCAibmFtZSINCgkJCWZvciAoIGluZGV4IGluIHZhbHVlICkgew0KCQkJCWlmICggISggaW5kZXggaW4gcHJvcHMgKSApIHsNCgkJCQkJcHJvcHNbIGluZGV4IF0gPSB2YWx1ZVsgaW5kZXggXTsNCgkJCQkJc3BlY2lhbEVhc2luZ1sgaW5kZXggXSA9IGVhc2luZzsNCgkJCQl9DQoJCQl9DQoJCX0gZWxzZSB7DQoJCQlzcGVjaWFsRWFzaW5nWyBuYW1lIF0gPSBlYXNpbmc7DQoJCX0NCgl9DQp9DQoNCmZ1bmN0aW9uIEFuaW1hdGlvbiggZWxlbSwgcHJvcGVydGllcywgb3B0aW9ucyApIHsNCgl2YXIgcmVzdWx0LA0KCQlzdG9wcGVkLA0KCQlpbmRleCA9IDAsDQoJCWxlbmd0aCA9IGFuaW1hdGlvblByZWZpbHRlcnMubGVuZ3RoLA0KCQlkZWZlcnJlZCA9IGpRdWVyeS5EZWZlcnJlZCgpLmFsd2F5cyggZnVuY3Rpb24oKSB7DQoJCQkvLyBEb24ndCBtYXRjaCBlbGVtIGluIHRoZSA6YW5pbWF0ZWQgc2VsZWN0b3INCgkJCWRlbGV0ZSB0aWNrLmVsZW07DQoJCX0pLA0KCQl0aWNrID0gZnVuY3Rpb24oKSB7DQoJCQlpZiAoIHN0b3BwZWQgKSB7DQoJCQkJcmV0dXJuIGZhbHNlOw0KCQkJfQ0KCQkJdmFyIGN1cnJlbnRUaW1lID0gZnhOb3cgfHwgY3JlYXRlRnhOb3coKSwNCgkJCQlyZW1haW5pbmcgPSBNYXRoLm1heCggMCwgYW5pbWF0aW9uLnN0YXJ0VGltZSArIGFuaW1hdGlvbi5kdXJhdGlvbiAtIGN1cnJlbnRUaW1lICksDQoJCQkJLy8gU3VwcG9ydDogQW5kcm9pZCAyLjMNCgkJCQkvLyBBcmNoYWljIGNyYXNoIGJ1ZyB3b24ndCBhbGxvdyB1cyB0byB1c2UgYDEgLSAoIDAuNSB8fCAwIClgICgjMTI0OTcpDQoJCQkJdGVtcCA9IHJlbWFpbmluZyAvIGFuaW1hdGlvbi5kdXJhdGlvbiB8fCAwLA0KCQkJCXBlcmNlbnQgPSAxIC0gdGVtcCwNCgkJCQlpbmRleCA9IDAsDQoJCQkJbGVuZ3RoID0gYW5pbWF0aW9uLnR3ZWVucy5sZW5ndGg7DQoNCgkJCWZvciAoIDsgaW5kZXggPCBsZW5ndGggOyBpbmRleCsrICkgew0KCQkJCWFuaW1hdGlvbi50d2VlbnNbIGluZGV4IF0ucnVuKCBwZXJjZW50ICk7DQoJCQl9DQoNCgkJCWRlZmVycmVkLm5vdGlmeVdpdGgoIGVsZW0sIFsgYW5pbWF0aW9uLCBwZXJjZW50LCByZW1haW5pbmcgXSk7DQoNCgkJCWlmICggcGVyY2VudCA8IDEgJiYgbGVuZ3RoICkgew0KCQkJCXJldHVybiByZW1haW5pbmc7DQoJCQl9IGVsc2Ugew0KCQkJCWRlZmVycmVkLnJlc29sdmVXaXRoKCBlbGVtLCBbIGFuaW1hdGlvbiBdICk7DQoJCQkJcmV0dXJuIGZhbHNlOw0KCQkJfQ0KCQl9LA0KCQlhbmltYXRpb24gPSBkZWZlcnJlZC5wcm9taXNlKHsNCgkJCWVsZW06IGVsZW0sDQoJCQlwcm9wczogalF1ZXJ5LmV4dGVuZCgge30sIHByb3BlcnRpZXMgKSwNCgkJCW9wdHM6IGpRdWVyeS5leHRlbmQoIHRydWUsIHsgc3BlY2lhbEVhc2luZzoge30gfSwgb3B0aW9ucyApLA0KCQkJb3JpZ2luYWxQcm9wZXJ0aWVzOiBwcm9wZXJ0aWVzLA0KCQkJb3JpZ2luYWxPcHRpb25zOiBvcHRpb25zLA0KCQkJc3RhcnRUaW1lOiBmeE5vdyB8fCBjcmVhdGVGeE5vdygpLA0KCQkJZHVyYXRpb246IG9wdGlvbnMuZHVyYXRpb24sDQoJCQl0d2VlbnM6IFtdLA0KCQkJY3JlYXRlVHdlZW46IGZ1bmN0aW9uKCBwcm9wLCBlbmQgKSB7DQoJCQkJdmFyIHR3ZWVuID0galF1ZXJ5LlR3ZWVuKCBlbGVtLCBhbmltYXRpb24ub3B0cywgcHJvcCwgZW5kLA0KCQkJCQkJYW5pbWF0aW9uLm9wdHMuc3BlY2lhbEVhc2luZ1sgcHJvcCBdIHx8IGFuaW1hdGlvbi5vcHRzLmVhc2luZyApOw0KCQkJCWFuaW1hdGlvbi50d2VlbnMucHVzaCggdHdlZW4gKTsNCgkJCQlyZXR1cm4gdHdlZW47DQoJCQl9LA0KCQkJc3RvcDogZnVuY3Rpb24oIGdvdG9FbmQgKSB7DQoJCQkJdmFyIGluZGV4ID0gMCwNCgkJCQkJLy8gSWYgd2UgYXJlIGdvaW5nIHRvIHRoZSBlbmQsIHdlIHdhbnQgdG8gcnVuIGFsbCB0aGUgdHdlZW5zDQoJCQkJCS8vIG90aGVyd2lzZSB3ZSBza2lwIHRoaXMgcGFydA0KCQkJCQlsZW5ndGggPSBnb3RvRW5kID8gYW5pbWF0aW9uLnR3ZWVucy5sZW5ndGggOiAwOw0KCQkJCWlmICggc3RvcHBlZCApIHsNCgkJCQkJcmV0dXJuIHRoaXM7DQoJCQkJfQ0KCQkJCXN0b3BwZWQgPSB0cnVlOw0KCQkJCWZvciAoIDsgaW5kZXggPCBsZW5ndGggOyBpbmRleCsrICkgew0KCQkJCQlhbmltYXRpb24udHdlZW5zWyBpbmRleCBdLnJ1biggMSApOw0KCQkJCX0NCg0KCQkJCS8vIFJlc29sdmUgd2hlbiB3ZSBwbGF5ZWQgdGhlIGxhc3QgZnJhbWU7IG90aGVyd2lzZSwgcmVqZWN0DQoJCQkJaWYgKCBnb3RvRW5kICkgew0KCQkJCQlkZWZlcnJlZC5yZXNvbHZlV2l0aCggZWxlbSwgWyBhbmltYXRpb24sIGdvdG9FbmQgXSApOw0KCQkJCX0gZWxzZSB7DQoJCQkJCWRlZmVycmVkLnJlamVjdFdpdGgoIGVsZW0sIFsgYW5pbWF0aW9uLCBnb3RvRW5kIF0gKTsNCgkJCQl9DQoJCQkJcmV0dXJuIHRoaXM7DQoJCQl9DQoJCX0pLA0KCQlwcm9wcyA9IGFuaW1hdGlvbi5wcm9wczsNCg0KCXByb3BGaWx0ZXIoIHByb3BzLCBhbmltYXRpb24ub3B0cy5zcGVjaWFsRWFzaW5nICk7DQoNCglmb3IgKCA7IGluZGV4IDwgbGVuZ3RoIDsgaW5kZXgrKyApIHsNCgkJcmVzdWx0ID0gYW5pbWF0aW9uUHJlZmlsdGVyc1sgaW5kZXggXS5jYWxsKCBhbmltYXRpb24sIGVsZW0sIHByb3BzLCBhbmltYXRpb24ub3B0cyApOw0KCQlpZiAoIHJlc3VsdCApIHsNCgkJCXJldHVybiByZXN1bHQ7DQoJCX0NCgl9DQoNCglqUXVlcnkubWFwKCBwcm9wcywgY3JlYXRlVHdlZW4sIGFuaW1hdGlvbiApOw0KDQoJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggYW5pbWF0aW9uLm9wdHMuc3RhcnQgKSApIHsNCgkJYW5pbWF0aW9uLm9wdHMuc3RhcnQuY2FsbCggZWxlbSwgYW5pbWF0aW9uICk7DQoJfQ0KDQoJalF1ZXJ5LmZ4LnRpbWVyKA0KCQlqUXVlcnkuZXh0ZW5kKCB0aWNrLCB7DQoJCQllbGVtOiBlbGVtLA0KCQkJYW5pbTogYW5pbWF0aW9uLA0KCQkJcXVldWU6IGFuaW1hdGlvbi5vcHRzLnF1ZXVlDQoJCX0pDQoJKTsNCg0KCS8vIGF0dGFjaCBjYWxsYmFja3MgZnJvbSBvcHRpb25zDQoJcmV0dXJuIGFuaW1hdGlvbi5wcm9ncmVzcyggYW5pbWF0aW9uLm9wdHMucHJvZ3Jlc3MgKQ0KCQkuZG9uZSggYW5pbWF0aW9uLm9wdHMuZG9uZSwgYW5pbWF0aW9uLm9wdHMuY29tcGxldGUgKQ0KCQkuZmFpbCggYW5pbWF0aW9uLm9wdHMuZmFpbCApDQoJCS5hbHdheXMoIGFuaW1hdGlvbi5vcHRzLmFsd2F5cyApOw0KfQ0KDQpqUXVlcnkuQW5pbWF0aW9uID0galF1ZXJ5LmV4dGVuZCggQW5pbWF0aW9uLCB7DQoNCgl0d2VlbmVyOiBmdW5jdGlvbiggcHJvcHMsIGNhbGxiYWNrICkgew0KCQlpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCBwcm9wcyApICkgew0KCQkJY2FsbGJhY2sgPSBwcm9wczsNCgkJCXByb3BzID0gWyAiKiIgXTsNCgkJfSBlbHNlIHsNCgkJCXByb3BzID0gcHJvcHMuc3BsaXQoIiAiKTsNCgkJfQ0KDQoJCXZhciBwcm9wLA0KCQkJaW5kZXggPSAwLA0KCQkJbGVuZ3RoID0gcHJvcHMubGVuZ3RoOw0KDQoJCWZvciAoIDsgaW5kZXggPCBsZW5ndGggOyBpbmRleCsrICkgew0KCQkJcHJvcCA9IHByb3BzWyBpbmRleCBdOw0KCQkJdHdlZW5lcnNbIHByb3AgXSA9IHR3ZWVuZXJzWyBwcm9wIF0gfHwgW107DQoJCQl0d2VlbmVyc1sgcHJvcCBdLnVuc2hpZnQoIGNhbGxiYWNrICk7DQoJCX0NCgl9LA0KDQoJcHJlZmlsdGVyOiBmdW5jdGlvbiggY2FsbGJhY2ssIHByZXBlbmQgKSB7DQoJCWlmICggcHJlcGVuZCApIHsNCgkJCWFuaW1hdGlvblByZWZpbHRlcnMudW5zaGlmdCggY2FsbGJhY2sgKTsNCgkJfSBlbHNlIHsNCgkJCWFuaW1hdGlvblByZWZpbHRlcnMucHVzaCggY2FsbGJhY2sgKTsNCgkJfQ0KCX0NCn0pOw0KDQpqUXVlcnkuc3BlZWQgPSBmdW5jdGlvbiggc3BlZWQsIGVhc2luZywgZm4gKSB7DQoJdmFyIG9wdCA9IHNwZWVkICYmIHR5cGVvZiBzcGVlZCA9PT0gIm9iamVjdCIgPyBqUXVlcnkuZXh0ZW5kKCB7fSwgc3BlZWQgKSA6IHsNCgkJY29tcGxldGU6IGZuIHx8ICFmbiAmJiBlYXNpbmcgfHwNCgkJCWpRdWVyeS5pc0Z1bmN0aW9uKCBzcGVlZCApICYmIHNwZWVkLA0KCQlkdXJhdGlvbjogc3BlZWQsDQoJCWVhc2luZzogZm4gJiYgZWFzaW5nIHx8IGVhc2luZyAmJiAhalF1ZXJ5LmlzRnVuY3Rpb24oIGVhc2luZyApICYmIGVhc2luZw0KCX07DQoNCglvcHQuZHVyYXRpb24gPSBqUXVlcnkuZngub2ZmID8gMCA6IHR5cGVvZiBvcHQuZHVyYXRpb24gPT09ICJudW1iZXIiID8gb3B0LmR1cmF0aW9uIDoNCgkJb3B0LmR1cmF0aW9uIGluIGpRdWVyeS5meC5zcGVlZHMgPyBqUXVlcnkuZnguc3BlZWRzWyBvcHQuZHVyYXRpb24gXSA6IGpRdWVyeS5meC5zcGVlZHMuX2RlZmF1bHQ7DQoNCgkvLyBOb3JtYWxpemUgb3B0LnF1ZXVlIC0gdHJ1ZS91bmRlZmluZWQvbnVsbCAtPiAiZngiDQoJaWYgKCBvcHQucXVldWUgPT0gbnVsbCB8fCBvcHQucXVldWUgPT09IHRydWUgKSB7DQoJCW9wdC5xdWV1ZSA9ICJmeCI7DQoJfQ0KDQoJLy8gUXVldWVpbmcNCglvcHQub2xkID0gb3B0LmNvbXBsZXRlOw0KDQoJb3B0LmNvbXBsZXRlID0gZnVuY3Rpb24oKSB7DQoJCWlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIG9wdC5vbGQgKSApIHsNCgkJCW9wdC5vbGQuY2FsbCggdGhpcyApOw0KCQl9DQoNCgkJaWYgKCBvcHQucXVldWUgKSB7DQoJCQlqUXVlcnkuZGVxdWV1ZSggdGhpcywgb3B0LnF1ZXVlICk7DQoJCX0NCgl9Ow0KDQoJcmV0dXJuIG9wdDsNCn07DQoNCmpRdWVyeS5mbi5leHRlbmQoew0KCWZhZGVUbzogZnVuY3Rpb24oIHNwZWVkLCB0bywgZWFzaW5nLCBjYWxsYmFjayApIHsNCg0KCQkvLyBTaG93IGFueSBoaWRkZW4gZWxlbWVudHMgYWZ0ZXIgc2V0dGluZyBvcGFjaXR5IHRvIDANCgkJcmV0dXJuIHRoaXMuZmlsdGVyKCBpc0hpZGRlbiApLmNzcyggIm9wYWNpdHkiLCAwICkuc2hvdygpDQoNCgkJCS8vIEFuaW1hdGUgdG8gdGhlIHZhbHVlIHNwZWNpZmllZA0KCQkJLmVuZCgpLmFuaW1hdGUoeyBvcGFjaXR5OiB0byB9LCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApOw0KCX0sDQoJYW5pbWF0ZTogZnVuY3Rpb24oIHByb3AsIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICkgew0KCQl2YXIgZW1wdHkgPSBqUXVlcnkuaXNFbXB0eU9iamVjdCggcHJvcCApLA0KCQkJb3B0YWxsID0galF1ZXJ5LnNwZWVkKCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApLA0KCQkJZG9BbmltYXRpb24gPSBmdW5jdGlvbigpIHsNCgkJCQkvLyBPcGVyYXRlIG9uIGEgY29weSBvZiBwcm9wIHNvIHBlci1wcm9wZXJ0eSBlYXNpbmcgd29uJ3QgYmUgbG9zdA0KCQkJCXZhciBhbmltID0gQW5pbWF0aW9uKCB0aGlzLCBqUXVlcnkuZXh0ZW5kKCB7fSwgcHJvcCApLCBvcHRhbGwgKTsNCg0KCQkJCS8vIEVtcHR5IGFuaW1hdGlvbnMsIG9yIGZpbmlzaGluZyByZXNvbHZlcyBpbW1lZGlhdGVseQ0KCQkJCWlmICggZW1wdHkgfHwgZGF0YV9wcml2LmdldCggdGhpcywgImZpbmlzaCIgKSApIHsNCgkJCQkJYW5pbS5zdG9wKCB0cnVlICk7DQoJCQkJfQ0KCQkJfTsNCgkJCWRvQW5pbWF0aW9uLmZpbmlzaCA9IGRvQW5pbWF0aW9uOw0KDQoJCXJldHVybiBlbXB0eSB8fCBvcHRhbGwucXVldWUgPT09IGZhbHNlID8NCgkJCXRoaXMuZWFjaCggZG9BbmltYXRpb24gKSA6DQoJCQl0aGlzLnF1ZXVlKCBvcHRhbGwucXVldWUsIGRvQW5pbWF0aW9uICk7DQoJfSwNCglzdG9wOiBmdW5jdGlvbiggdHlwZSwgY2xlYXJRdWV1ZSwgZ290b0VuZCApIHsNCgkJdmFyIHN0b3BRdWV1ZSA9IGZ1bmN0aW9uKCBob29rcyApIHsNCgkJCXZhciBzdG9wID0gaG9va3Muc3RvcDsNCgkJCWRlbGV0ZSBob29rcy5zdG9wOw0KCQkJc3RvcCggZ290b0VuZCApOw0KCQl9Ow0KDQoJCWlmICggdHlwZW9mIHR5cGUgIT09ICJzdHJpbmciICkgew0KCQkJZ290b0VuZCA9IGNsZWFyUXVldWU7DQoJCQljbGVhclF1ZXVlID0gdHlwZTsNCgkJCXR5cGUgPSB1bmRlZmluZWQ7DQoJCX0NCgkJaWYgKCBjbGVhclF1ZXVlICYmIHR5cGUgIT09IGZhbHNlICkgew0KCQkJdGhpcy5xdWV1ZSggdHlwZSB8fCAiZngiLCBbXSApOw0KCQl9DQoNCgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCXZhciBkZXF1ZXVlID0gdHJ1ZSwNCgkJCQlpbmRleCA9IHR5cGUgIT0gbnVsbCAmJiB0eXBlICsgInF1ZXVlSG9va3MiLA0KCQkJCXRpbWVycyA9IGpRdWVyeS50aW1lcnMsDQoJCQkJZGF0YSA9IGRhdGFfcHJpdi5nZXQoIHRoaXMgKTsNCg0KCQkJaWYgKCBpbmRleCApIHsNCgkJCQlpZiAoIGRhdGFbIGluZGV4IF0gJiYgZGF0YVsgaW5kZXggXS5zdG9wICkgew0KCQkJCQlzdG9wUXVldWUoIGRhdGFbIGluZGV4IF0gKTsNCgkJCQl9DQoJCQl9IGVsc2Ugew0KCQkJCWZvciAoIGluZGV4IGluIGRhdGEgKSB7DQoJCQkJCWlmICggZGF0YVsgaW5kZXggXSAmJiBkYXRhWyBpbmRleCBdLnN0b3AgJiYgcnJ1bi50ZXN0KCBpbmRleCApICkgew0KCQkJCQkJc3RvcFF1ZXVlKCBkYXRhWyBpbmRleCBdICk7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoNCgkJCWZvciAoIGluZGV4ID0gdGltZXJzLmxlbmd0aDsgaW5kZXgtLTsgKSB7DQoJCQkJaWYgKCB0aW1lcnNbIGluZGV4IF0uZWxlbSA9PT0gdGhpcyAmJiAodHlwZSA9PSBudWxsIHx8IHRpbWVyc1sgaW5kZXggXS5xdWV1ZSA9PT0gdHlwZSkgKSB7DQoJCQkJCXRpbWVyc1sgaW5kZXggXS5hbmltLnN0b3AoIGdvdG9FbmQgKTsNCgkJCQkJZGVxdWV1ZSA9IGZhbHNlOw0KCQkJCQl0aW1lcnMuc3BsaWNlKCBpbmRleCwgMSApOw0KCQkJCX0NCgkJCX0NCg0KCQkJLy8gU3RhcnQgdGhlIG5leHQgaW4gdGhlIHF1ZXVlIGlmIHRoZSBsYXN0IHN0ZXAgd2Fzbid0IGZvcmNlZC4NCgkJCS8vIFRpbWVycyBjdXJyZW50bHkgd2lsbCBjYWxsIHRoZWlyIGNvbXBsZXRlIGNhbGxiYWNrcywgd2hpY2gNCgkJCS8vIHdpbGwgZGVxdWV1ZSBidXQgb25seSBpZiB0aGV5IHdlcmUgZ290b0VuZC4NCgkJCWlmICggZGVxdWV1ZSB8fCAhZ290b0VuZCApIHsNCgkJCQlqUXVlcnkuZGVxdWV1ZSggdGhpcywgdHlwZSApOw0KCQkJfQ0KCQl9KTsNCgl9LA0KCWZpbmlzaDogZnVuY3Rpb24oIHR5cGUgKSB7DQoJCWlmICggdHlwZSAhPT0gZmFsc2UgKSB7DQoJCQl0eXBlID0gdHlwZSB8fCAiZngiOw0KCQl9DQoJCXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7DQoJCQl2YXIgaW5kZXgsDQoJCQkJZGF0YSA9IGRhdGFfcHJpdi5nZXQoIHRoaXMgKSwNCgkJCQlxdWV1ZSA9IGRhdGFbIHR5cGUgKyAicXVldWUiIF0sDQoJCQkJaG9va3MgPSBkYXRhWyB0eXBlICsgInF1ZXVlSG9va3MiIF0sDQoJCQkJdGltZXJzID0galF1ZXJ5LnRpbWVycywNCgkJCQlsZW5ndGggPSBxdWV1ZSA/IHF1ZXVlLmxlbmd0aCA6IDA7DQoNCgkJCS8vIEVuYWJsZSBmaW5pc2hpbmcgZmxhZyBvbiBwcml2YXRlIGRhdGENCgkJCWRhdGEuZmluaXNoID0gdHJ1ZTsNCg0KCQkJLy8gRW1wdHkgdGhlIHF1ZXVlIGZpcnN0DQoJCQlqUXVlcnkucXVldWUoIHRoaXMsIHR5cGUsIFtdICk7DQoNCgkJCWlmICggaG9va3MgJiYgaG9va3Muc3RvcCApIHsNCg0KCQkJCWhvb2tzLnN0b3AuY2FsbCggdGhpcywgdHJ1ZSApOw0KCQkJfQ0KDQoJCQkvLyBMb29rIGZvciBhbnkgYWN0aXZlIGFuaW1hdGlvbnMsIGFuZCBmaW5pc2ggdGhlbQ0KCQkJZm9yICggaW5kZXggPSB0aW1lcnMubGVuZ3RoOyBpbmRleC0tOyApIHsNCgkJCQlpZiAoIHRpbWVyc1sgaW5kZXggXS5lbGVtID09PSB0aGlzICYmIHRpbWVyc1sgaW5kZXggXS5xdWV1ZSA9PT0gdHlwZSApIHsNCgkJCQkJdGltZXJzWyBpbmRleCBdLmFuaW0uc3RvcCggdHJ1ZSApOw0KCQkJCQl0aW1lcnMuc3BsaWNlKCBpbmRleCwgMSApOw0KCQkJCX0NCgkJCX0NCg0KCQkJLy8gTG9vayBmb3IgYW55IGFuaW1hdGlvbnMgaW4gdGhlIG9sZCBxdWV1ZSBhbmQgZmluaXNoIHRoZW0NCgkJCWZvciAoIGluZGV4ID0gMDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KysgKSB7DQoJCQkJaWYgKCBxdWV1ZVsgaW5kZXggXSAmJiBxdWV1ZVsgaW5kZXggXS5maW5pc2ggKSB7DQoJCQkJCXF1ZXVlWyBpbmRleCBdLmZpbmlzaC5jYWxsKCB0aGlzICk7DQoJCQkJfQ0KCQkJfQ0KDQoJCQkvLyBUdXJuIG9mZiBmaW5pc2hpbmcgZmxhZw0KCQkJZGVsZXRlIGRhdGEuZmluaXNoOw0KCQl9KTsNCgl9DQp9KTsNCg0KalF1ZXJ5LmVhY2goWyAidG9nZ2xlIiwgInNob3ciLCAiaGlkZSIgXSwgZnVuY3Rpb24oIGksIG5hbWUgKSB7DQoJdmFyIGNzc0ZuID0galF1ZXJ5LmZuWyBuYW1lIF07DQoJalF1ZXJ5LmZuWyBuYW1lIF0gPSBmdW5jdGlvbiggc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKSB7DQoJCXJldHVybiBzcGVlZCA9PSBudWxsIHx8IHR5cGVvZiBzcGVlZCA9PT0gImJvb2xlYW4iID8NCgkJCWNzc0ZuLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSA6DQoJCQl0aGlzLmFuaW1hdGUoIGdlbkZ4KCBuYW1lLCB0cnVlICksIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICk7DQoJfTsNCn0pOw0KDQovLyBHZW5lcmF0ZSBzaG9ydGN1dHMgZm9yIGN1c3RvbSBhbmltYXRpb25zDQpqUXVlcnkuZWFjaCh7DQoJc2xpZGVEb3duOiBnZW5GeCgic2hvdyIpLA0KCXNsaWRlVXA6IGdlbkZ4KCJoaWRlIiksDQoJc2xpZGVUb2dnbGU6IGdlbkZ4KCJ0b2dnbGUiKSwNCglmYWRlSW46IHsgb3BhY2l0eTogInNob3ciIH0sDQoJZmFkZU91dDogeyBvcGFjaXR5OiAiaGlkZSIgfSwNCglmYWRlVG9nZ2xlOiB7IG9wYWNpdHk6ICJ0b2dnbGUiIH0NCn0sIGZ1bmN0aW9uKCBuYW1lLCBwcm9wcyApIHsNCglqUXVlcnkuZm5bIG5hbWUgXSA9IGZ1bmN0aW9uKCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIHsNCgkJcmV0dXJuIHRoaXMuYW5pbWF0ZSggcHJvcHMsIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICk7DQoJfTsNCn0pOw0KDQpqUXVlcnkudGltZXJzID0gW107DQpqUXVlcnkuZngudGljayA9IGZ1bmN0aW9uKCkgew0KCXZhciB0aW1lciwNCgkJaSA9IDAsDQoJCXRpbWVycyA9IGpRdWVyeS50aW1lcnM7DQoNCglmeE5vdyA9IGpRdWVyeS5ub3coKTsNCg0KCWZvciAoIDsgaSA8IHRpbWVycy5sZW5ndGg7IGkrKyApIHsNCgkJdGltZXIgPSB0aW1lcnNbIGkgXTsNCgkJLy8gQ2hlY2tzIHRoZSB0aW1lciBoYXMgbm90IGFscmVhZHkgYmVlbiByZW1vdmVkDQoJCWlmICggIXRpbWVyKCkgJiYgdGltZXJzWyBpIF0gPT09IHRpbWVyICkgew0KCQkJdGltZXJzLnNwbGljZSggaS0tLCAxICk7DQoJCX0NCgl9DQoNCglpZiAoICF0aW1lcnMubGVuZ3RoICkgew0KCQlqUXVlcnkuZnguc3RvcCgpOw0KCX0NCglmeE5vdyA9IHVuZGVmaW5lZDsNCn07DQoNCmpRdWVyeS5meC50aW1lciA9IGZ1bmN0aW9uKCB0aW1lciApIHsNCglqUXVlcnkudGltZXJzLnB1c2goIHRpbWVyICk7DQoJaWYgKCB0aW1lcigpICkgew0KCQlqUXVlcnkuZnguc3RhcnQoKTsNCgl9IGVsc2Ugew0KCQlqUXVlcnkudGltZXJzLnBvcCgpOw0KCX0NCn07DQoNCmpRdWVyeS5meC5pbnRlcnZhbCA9IDEzOw0KDQpqUXVlcnkuZnguc3RhcnQgPSBmdW5jdGlvbigpIHsNCglpZiAoICF0aW1lcklkICkgew0KCQl0aW1lcklkID0gc2V0SW50ZXJ2YWwoIGpRdWVyeS5meC50aWNrLCBqUXVlcnkuZnguaW50ZXJ2YWwgKTsNCgl9DQp9Ow0KDQpqUXVlcnkuZnguc3RvcCA9IGZ1bmN0aW9uKCkgew0KCWNsZWFySW50ZXJ2YWwoIHRpbWVySWQgKTsNCgl0aW1lcklkID0gbnVsbDsNCn07DQoNCmpRdWVyeS5meC5zcGVlZHMgPSB7DQoJc2xvdzogNjAwLA0KCWZhc3Q6IDIwMCwNCgkvLyBEZWZhdWx0IHNwZWVkDQoJX2RlZmF1bHQ6IDQwMA0KfTsNCg0KDQovLyBCYXNlZCBvZmYgb2YgdGhlIHBsdWdpbiBieSBDbGludCBIZWxmZXJzLCB3aXRoIHBlcm1pc3Npb24uDQovLyBodHRwOi8vYmxpbmRzaWduYWxzLmNvbS9pbmRleC5waHAvMjAwOS8wNy9qcXVlcnktZGVsYXkvDQpqUXVlcnkuZm4uZGVsYXkgPSBmdW5jdGlvbiggdGltZSwgdHlwZSApIHsNCgl0aW1lID0galF1ZXJ5LmZ4ID8galF1ZXJ5LmZ4LnNwZWVkc1sgdGltZSBdIHx8IHRpbWUgOiB0aW1lOw0KCXR5cGUgPSB0eXBlIHx8ICJmeCI7DQoNCglyZXR1cm4gdGhpcy5xdWV1ZSggdHlwZSwgZnVuY3Rpb24oIG5leHQsIGhvb2tzICkgew0KCQl2YXIgdGltZW91dCA9IHNldFRpbWVvdXQoIG5leHQsIHRpbWUgKTsNCgkJaG9va3Muc3RvcCA9IGZ1bmN0aW9uKCkgew0KCQkJY2xlYXJUaW1lb3V0KCB0aW1lb3V0ICk7DQoJCX07DQoJfSk7DQp9Ow0KDQoNCihmdW5jdGlvbigpIHsNCgl2YXIgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAiaW5wdXQiICksDQoJCXNlbGVjdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICJzZWxlY3QiICksDQoJCW9wdCA9IHNlbGVjdC5hcHBlbmRDaGlsZCggZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggIm9wdGlvbiIgKSApOw0KDQoJaW5wdXQudHlwZSA9ICJjaGVja2JveCI7DQoNCgkvLyBTdXBwb3J0OiBpT1M8PTUuMSwgQW5kcm9pZDw9NC4yKw0KCS8vIERlZmF1bHQgdmFsdWUgZm9yIGEgY2hlY2tib3ggc2hvdWxkIGJlICJvbiINCglzdXBwb3J0LmNoZWNrT24gPSBpbnB1dC52YWx1ZSAhPT0gIiI7DQoNCgkvLyBTdXBwb3J0OiBJRTw9MTErDQoJLy8gTXVzdCBhY2Nlc3Mgc2VsZWN0ZWRJbmRleCB0byBtYWtlIGRlZmF1bHQgb3B0aW9ucyBzZWxlY3QNCglzdXBwb3J0Lm9wdFNlbGVjdGVkID0gb3B0LnNlbGVjdGVkOw0KDQoJLy8gU3VwcG9ydDogQW5kcm9pZDw9Mi4zDQoJLy8gT3B0aW9ucyBpbnNpZGUgZGlzYWJsZWQgc2VsZWN0cyBhcmUgaW5jb3JyZWN0bHkgbWFya2VkIGFzIGRpc2FibGVkDQoJc2VsZWN0LmRpc2FibGVkID0gdHJ1ZTsNCglzdXBwb3J0Lm9wdERpc2FibGVkID0gIW9wdC5kaXNhYmxlZDsNCg0KCS8vIFN1cHBvcnQ6IElFPD0xMSsNCgkvLyBBbiBpbnB1dCBsb3NlcyBpdHMgdmFsdWUgYWZ0ZXIgYmVjb21pbmcgYSByYWRpbw0KCWlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggImlucHV0IiApOw0KCWlucHV0LnZhbHVlID0gInQiOw0KCWlucHV0LnR5cGUgPSAicmFkaW8iOw0KCXN1cHBvcnQucmFkaW9WYWx1ZSA9IGlucHV0LnZhbHVlID09PSAidCI7DQp9KSgpOw0KDQoNCnZhciBub2RlSG9vaywgYm9vbEhvb2ssDQoJYXR0ckhhbmRsZSA9IGpRdWVyeS5leHByLmF0dHJIYW5kbGU7DQoNCmpRdWVyeS5mbi5leHRlbmQoew0KCWF0dHI6IGZ1bmN0aW9uKCBuYW1lLCB2YWx1ZSApIHsNCgkJcmV0dXJuIGFjY2VzcyggdGhpcywgalF1ZXJ5LmF0dHIsIG5hbWUsIHZhbHVlLCBhcmd1bWVudHMubGVuZ3RoID4gMSApOw0KCX0sDQoNCglyZW1vdmVBdHRyOiBmdW5jdGlvbiggbmFtZSApIHsNCgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCWpRdWVyeS5yZW1vdmVBdHRyKCB0aGlzLCBuYW1lICk7DQoJCX0pOw0KCX0NCn0pOw0KDQpqUXVlcnkuZXh0ZW5kKHsNCglhdHRyOiBmdW5jdGlvbiggZWxlbSwgbmFtZSwgdmFsdWUgKSB7DQoJCXZhciBob29rcywgcmV0LA0KCQkJblR5cGUgPSBlbGVtLm5vZGVUeXBlOw0KDQoJCS8vIGRvbid0IGdldC9zZXQgYXR0cmlidXRlcyBvbiB0ZXh0LCBjb21tZW50IGFuZCBhdHRyaWJ1dGUgbm9kZXMNCgkJaWYgKCAhZWxlbSB8fCBuVHlwZSA9PT0gMyB8fCBuVHlwZSA9PT0gOCB8fCBuVHlwZSA9PT0gMiApIHsNCgkJCXJldHVybjsNCgkJfQ0KDQoJCS8vIEZhbGxiYWNrIHRvIHByb3Agd2hlbiBhdHRyaWJ1dGVzIGFyZSBub3Qgc3VwcG9ydGVkDQoJCWlmICggdHlwZW9mIGVsZW0uZ2V0QXR0cmlidXRlID09PSBzdHJ1bmRlZmluZWQgKSB7DQoJCQlyZXR1cm4galF1ZXJ5LnByb3AoIGVsZW0sIG5hbWUsIHZhbHVlICk7DQoJCX0NCg0KCQkvLyBBbGwgYXR0cmlidXRlcyBhcmUgbG93ZXJjYXNlDQoJCS8vIEdyYWIgbmVjZXNzYXJ5IGhvb2sgaWYgb25lIGlzIGRlZmluZWQNCgkJaWYgKCBuVHlwZSAhPT0gMSB8fCAhalF1ZXJ5LmlzWE1MRG9jKCBlbGVtICkgKSB7DQoJCQluYW1lID0gbmFtZS50b0xvd2VyQ2FzZSgpOw0KCQkJaG9va3MgPSBqUXVlcnkuYXR0ckhvb2tzWyBuYW1lIF0gfHwNCgkJCQkoIGpRdWVyeS5leHByLm1hdGNoLmJvb2wudGVzdCggbmFtZSApID8gYm9vbEhvb2sgOiBub2RlSG9vayApOw0KCQl9DQoNCgkJaWYgKCB2YWx1ZSAhPT0gdW5kZWZpbmVkICkgew0KDQoJCQlpZiAoIHZhbHVlID09PSBudWxsICkgew0KCQkJCWpRdWVyeS5yZW1vdmVBdHRyKCBlbGVtLCBuYW1lICk7DQoNCgkJCX0gZWxzZSBpZiAoIGhvb2tzICYmICJzZXQiIGluIGhvb2tzICYmIChyZXQgPSBob29rcy5zZXQoIGVsZW0sIHZhbHVlLCBuYW1lICkpICE9PSB1bmRlZmluZWQgKSB7DQoJCQkJcmV0dXJuIHJldDsNCg0KCQkJfSBlbHNlIHsNCgkJCQllbGVtLnNldEF0dHJpYnV0ZSggbmFtZSwgdmFsdWUgKyAiIiApOw0KCQkJCXJldHVybiB2YWx1ZTsNCgkJCX0NCg0KCQl9IGVsc2UgaWYgKCBob29rcyAmJiAiZ2V0IiBpbiBob29rcyAmJiAocmV0ID0gaG9va3MuZ2V0KCBlbGVtLCBuYW1lICkpICE9PSBudWxsICkgew0KCQkJcmV0dXJuIHJldDsNCg0KCQl9IGVsc2Ugew0KCQkJcmV0ID0galF1ZXJ5LmZpbmQuYXR0ciggZWxlbSwgbmFtZSApOw0KDQoJCQkvLyBOb24tZXhpc3RlbnQgYXR0cmlidXRlcyByZXR1cm4gbnVsbCwgd2Ugbm9ybWFsaXplIHRvIHVuZGVmaW5lZA0KCQkJcmV0dXJuIHJldCA9PSBudWxsID8NCgkJCQl1bmRlZmluZWQgOg0KCQkJCXJldDsNCgkJfQ0KCX0sDQoNCglyZW1vdmVBdHRyOiBmdW5jdGlvbiggZWxlbSwgdmFsdWUgKSB7DQoJCXZhciBuYW1lLCBwcm9wTmFtZSwNCgkJCWkgPSAwLA0KCQkJYXR0ck5hbWVzID0gdmFsdWUgJiYgdmFsdWUubWF0Y2goIHJub3R3aGl0ZSApOw0KDQoJCWlmICggYXR0ck5hbWVzICYmIGVsZW0ubm9kZVR5cGUgPT09IDEgKSB7DQoJCQl3aGlsZSAoIChuYW1lID0gYXR0ck5hbWVzW2krK10pICkgew0KCQkJCXByb3BOYW1lID0galF1ZXJ5LnByb3BGaXhbIG5hbWUgXSB8fCBuYW1lOw0KDQoJCQkJLy8gQm9vbGVhbiBhdHRyaWJ1dGVzIGdldCBzcGVjaWFsIHRyZWF0bWVudCAoIzEwODcwKQ0KCQkJCWlmICggalF1ZXJ5LmV4cHIubWF0Y2guYm9vbC50ZXN0KCBuYW1lICkgKSB7DQoJCQkJCS8vIFNldCBjb3JyZXNwb25kaW5nIHByb3BlcnR5IHRvIGZhbHNlDQoJCQkJCWVsZW1bIHByb3BOYW1lIF0gPSBmYWxzZTsNCgkJCQl9DQoNCgkJCQllbGVtLnJlbW92ZUF0dHJpYnV0ZSggbmFtZSApOw0KCQkJfQ0KCQl9DQoJfSwNCg0KCWF0dHJIb29rczogew0KCQl0eXBlOiB7DQoJCQlzZXQ6IGZ1bmN0aW9uKCBlbGVtLCB2YWx1ZSApIHsNCgkJCQlpZiAoICFzdXBwb3J0LnJhZGlvVmFsdWUgJiYgdmFsdWUgPT09ICJyYWRpbyIgJiYNCgkJCQkJalF1ZXJ5Lm5vZGVOYW1lKCBlbGVtLCAiaW5wdXQiICkgKSB7DQoJCQkJCXZhciB2YWwgPSBlbGVtLnZhbHVlOw0KCQkJCQllbGVtLnNldEF0dHJpYnV0ZSggInR5cGUiLCB2YWx1ZSApOw0KCQkJCQlpZiAoIHZhbCApIHsNCgkJCQkJCWVsZW0udmFsdWUgPSB2YWw7DQoJCQkJCX0NCgkJCQkJcmV0dXJuIHZhbHVlOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCn0pOw0KDQovLyBIb29rcyBmb3IgYm9vbGVhbiBhdHRyaWJ1dGVzDQpib29sSG9vayA9IHsNCglzZXQ6IGZ1bmN0aW9uKCBlbGVtLCB2YWx1ZSwgbmFtZSApIHsNCgkJaWYgKCB2YWx1ZSA9PT0gZmFsc2UgKSB7DQoJCQkvLyBSZW1vdmUgYm9vbGVhbiBhdHRyaWJ1dGVzIHdoZW4gc2V0IHRvIGZhbHNlDQoJCQlqUXVlcnkucmVtb3ZlQXR0ciggZWxlbSwgbmFtZSApOw0KCQl9IGVsc2Ugew0KCQkJZWxlbS5zZXRBdHRyaWJ1dGUoIG5hbWUsIG5hbWUgKTsNCgkJfQ0KCQlyZXR1cm4gbmFtZTsNCgl9DQp9Ow0KalF1ZXJ5LmVhY2goIGpRdWVyeS5leHByLm1hdGNoLmJvb2wuc291cmNlLm1hdGNoKCAvXHcrL2cgKSwgZnVuY3Rpb24oIGksIG5hbWUgKSB7DQoJdmFyIGdldHRlciA9IGF0dHJIYW5kbGVbIG5hbWUgXSB8fCBqUXVlcnkuZmluZC5hdHRyOw0KDQoJYXR0ckhhbmRsZVsgbmFtZSBdID0gZnVuY3Rpb24oIGVsZW0sIG5hbWUsIGlzWE1MICkgew0KCQl2YXIgcmV0LCBoYW5kbGU7DQoJCWlmICggIWlzWE1MICkgew0KCQkJLy8gQXZvaWQgYW4gaW5maW5pdGUgbG9vcCBieSB0ZW1wb3JhcmlseSByZW1vdmluZyB0aGlzIGZ1bmN0aW9uIGZyb20gdGhlIGdldHRlcg0KCQkJaGFuZGxlID0gYXR0ckhhbmRsZVsgbmFtZSBdOw0KCQkJYXR0ckhhbmRsZVsgbmFtZSBdID0gcmV0Ow0KCQkJcmV0ID0gZ2V0dGVyKCBlbGVtLCBuYW1lLCBpc1hNTCApICE9IG51bGwgPw0KCQkJCW5hbWUudG9Mb3dlckNhc2UoKSA6DQoJCQkJbnVsbDsNCgkJCWF0dHJIYW5kbGVbIG5hbWUgXSA9IGhhbmRsZTsNCgkJfQ0KCQlyZXR1cm4gcmV0Ow0KCX07DQp9KTsNCg0KDQoNCg0KdmFyIHJmb2N1c2FibGUgPSAvXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pOw0KDQpqUXVlcnkuZm4uZXh0ZW5kKHsNCglwcm9wOiBmdW5jdGlvbiggbmFtZSwgdmFsdWUgKSB7DQoJCXJldHVybiBhY2Nlc3MoIHRoaXMsIGpRdWVyeS5wcm9wLCBuYW1lLCB2YWx1ZSwgYXJndW1lbnRzLmxlbmd0aCA+IDEgKTsNCgl9LA0KDQoJcmVtb3ZlUHJvcDogZnVuY3Rpb24oIG5hbWUgKSB7DQoJCXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKSB7DQoJCQlkZWxldGUgdGhpc1sgalF1ZXJ5LnByb3BGaXhbIG5hbWUgXSB8fCBuYW1lIF07DQoJCX0pOw0KCX0NCn0pOw0KDQpqUXVlcnkuZXh0ZW5kKHsNCglwcm9wRml4OiB7DQoJCSJmb3IiOiAiaHRtbEZvciIsDQoJCSJjbGFzcyI6ICJjbGFzc05hbWUiDQoJfSwNCg0KCXByb3A6IGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCB2YWx1ZSApIHsNCgkJdmFyIHJldCwgaG9va3MsIG5vdHhtbCwNCgkJCW5UeXBlID0gZWxlbS5ub2RlVHlwZTsNCg0KCQkvLyBEb24ndCBnZXQvc2V0IHByb3BlcnRpZXMgb24gdGV4dCwgY29tbWVudCBhbmQgYXR0cmlidXRlIG5vZGVzDQoJCWlmICggIWVsZW0gfHwgblR5cGUgPT09IDMgfHwgblR5cGUgPT09IDggfHwgblR5cGUgPT09IDIgKSB7DQoJCQlyZXR1cm47DQoJCX0NCg0KCQlub3R4bWwgPSBuVHlwZSAhPT0gMSB8fCAhalF1ZXJ5LmlzWE1MRG9jKCBlbGVtICk7DQoNCgkJaWYgKCBub3R4bWwgKSB7DQoJCQkvLyBGaXggbmFtZSBhbmQgYXR0YWNoIGhvb2tzDQoJCQluYW1lID0galF1ZXJ5LnByb3BGaXhbIG5hbWUgXSB8fCBuYW1lOw0KCQkJaG9va3MgPSBqUXVlcnkucHJvcEhvb2tzWyBuYW1lIF07DQoJCX0NCg0KCQlpZiAoIHZhbHVlICE9PSB1bmRlZmluZWQgKSB7DQoJCQlyZXR1cm4gaG9va3MgJiYgInNldCIgaW4gaG9va3MgJiYgKHJldCA9IGhvb2tzLnNldCggZWxlbSwgdmFsdWUsIG5hbWUgKSkgIT09IHVuZGVmaW5lZCA/DQoJCQkJcmV0IDoNCgkJCQkoIGVsZW1bIG5hbWUgXSA9IHZhbHVlICk7DQoNCgkJfSBlbHNlIHsNCgkJCXJldHVybiBob29rcyAmJiAiZ2V0IiBpbiBob29rcyAmJiAocmV0ID0gaG9va3MuZ2V0KCBlbGVtLCBuYW1lICkpICE9PSBudWxsID8NCgkJCQlyZXQgOg0KCQkJCWVsZW1bIG5hbWUgXTsNCgkJfQ0KCX0sDQoNCglwcm9wSG9va3M6IHsNCgkJdGFiSW5kZXg6IHsNCgkJCWdldDogZnVuY3Rpb24oIGVsZW0gKSB7DQoJCQkJcmV0dXJuIGVsZW0uaGFzQXR0cmlidXRlKCAidGFiaW5kZXgiICkgfHwgcmZvY3VzYWJsZS50ZXN0KCBlbGVtLm5vZGVOYW1lICkgfHwgZWxlbS5ocmVmID8NCgkJCQkJZWxlbS50YWJJbmRleCA6DQoJCQkJCS0xOw0KCQkJfQ0KCQl9DQoJfQ0KfSk7DQoNCmlmICggIXN1cHBvcnQub3B0U2VsZWN0ZWQgKSB7DQoJalF1ZXJ5LnByb3BIb29rcy5zZWxlY3RlZCA9IHsNCgkJZ2V0OiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCXZhciBwYXJlbnQgPSBlbGVtLnBhcmVudE5vZGU7DQoJCQlpZiAoIHBhcmVudCAmJiBwYXJlbnQucGFyZW50Tm9kZSApIHsNCgkJCQlwYXJlbnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4Ow0KCQkJfQ0KCQkJcmV0dXJuIG51bGw7DQoJCX0NCgl9Ow0KfQ0KDQpqUXVlcnkuZWFjaChbDQoJInRhYkluZGV4IiwNCgkicmVhZE9ubHkiLA0KCSJtYXhMZW5ndGgiLA0KCSJjZWxsU3BhY2luZyIsDQoJImNlbGxQYWRkaW5nIiwNCgkicm93U3BhbiIsDQoJImNvbFNwYW4iLA0KCSJ1c2VNYXAiLA0KCSJmcmFtZUJvcmRlciIsDQoJImNvbnRlbnRFZGl0YWJsZSINCl0sIGZ1bmN0aW9uKCkgew0KCWpRdWVyeS5wcm9wRml4WyB0aGlzLnRvTG93ZXJDYXNlKCkgXSA9IHRoaXM7DQp9KTsNCg0KDQoNCg0KdmFyIHJjbGFzcyA9IC9bXHRcclxuXGZdL2c7DQoNCmpRdWVyeS5mbi5leHRlbmQoew0KCWFkZENsYXNzOiBmdW5jdGlvbiggdmFsdWUgKSB7DQoJCXZhciBjbGFzc2VzLCBlbGVtLCBjdXIsIGNsYXp6LCBqLCBmaW5hbFZhbHVlLA0KCQkJcHJvY2VlZCA9IHR5cGVvZiB2YWx1ZSA9PT0gInN0cmluZyIgJiYgdmFsdWUsDQoJCQlpID0gMCwNCgkJCWxlbiA9IHRoaXMubGVuZ3RoOw0KDQoJCWlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIHZhbHVlICkgKSB7DQoJCQlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCBqICkgew0KCQkJCWpRdWVyeSggdGhpcyApLmFkZENsYXNzKCB2YWx1ZS5jYWxsKCB0aGlzLCBqLCB0aGlzLmNsYXNzTmFtZSApICk7DQoJCQl9KTsNCgkJfQ0KDQoJCWlmICggcHJvY2VlZCApIHsNCgkJCS8vIFRoZSBkaXNqdW5jdGlvbiBoZXJlIGlzIGZvciBiZXR0ZXIgY29tcHJlc3NpYmlsaXR5IChzZWUgcmVtb3ZlQ2xhc3MpDQoJCQljbGFzc2VzID0gKCB2YWx1ZSB8fCAiIiApLm1hdGNoKCBybm90d2hpdGUgKSB8fCBbXTsNCg0KCQkJZm9yICggOyBpIDwgbGVuOyBpKysgKSB7DQoJCQkJZWxlbSA9IHRoaXNbIGkgXTsNCgkJCQljdXIgPSBlbGVtLm5vZGVUeXBlID09PSAxICYmICggZWxlbS5jbGFzc05hbWUgPw0KCQkJCQkoICIgIiArIGVsZW0uY2xhc3NOYW1lICsgIiAiICkucmVwbGFjZSggcmNsYXNzLCAiICIgKSA6DQoJCQkJCSIgIg0KCQkJCSk7DQoNCgkJCQlpZiAoIGN1ciApIHsNCgkJCQkJaiA9IDA7DQoJCQkJCXdoaWxlICggKGNsYXp6ID0gY2xhc3Nlc1tqKytdKSApIHsNCgkJCQkJCWlmICggY3VyLmluZGV4T2YoICIgIiArIGNsYXp6ICsgIiAiICkgPCAwICkgew0KCQkJCQkJCWN1ciArPSBjbGF6eiArICIgIjsNCgkJCQkJCX0NCgkJCQkJfQ0KDQoJCQkJCS8vIG9ubHkgYXNzaWduIGlmIGRpZmZlcmVudCB0byBhdm9pZCB1bm5lZWRlZCByZW5kZXJpbmcuDQoJCQkJCWZpbmFsVmFsdWUgPSBqUXVlcnkudHJpbSggY3VyICk7DQoJCQkJCWlmICggZWxlbS5jbGFzc05hbWUgIT09IGZpbmFsVmFsdWUgKSB7DQoJCQkJCQllbGVtLmNsYXNzTmFtZSA9IGZpbmFsVmFsdWU7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gdGhpczsNCgl9LA0KDQoJcmVtb3ZlQ2xhc3M6IGZ1bmN0aW9uKCB2YWx1ZSApIHsNCgkJdmFyIGNsYXNzZXMsIGVsZW0sIGN1ciwgY2xhenosIGosIGZpbmFsVmFsdWUsDQoJCQlwcm9jZWVkID0gYXJndW1lbnRzLmxlbmd0aCA9PT0gMCB8fCB0eXBlb2YgdmFsdWUgPT09ICJzdHJpbmciICYmIHZhbHVlLA0KCQkJaSA9IDAsDQoJCQlsZW4gPSB0aGlzLmxlbmd0aDsNCg0KCQlpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCB2YWx1ZSApICkgew0KCQkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiggaiApIHsNCgkJCQlqUXVlcnkoIHRoaXMgKS5yZW1vdmVDbGFzcyggdmFsdWUuY2FsbCggdGhpcywgaiwgdGhpcy5jbGFzc05hbWUgKSApOw0KCQkJfSk7DQoJCX0NCgkJaWYgKCBwcm9jZWVkICkgew0KCQkJY2xhc3NlcyA9ICggdmFsdWUgfHwgIiIgKS5tYXRjaCggcm5vdHdoaXRlICkgfHwgW107DQoNCgkJCWZvciAoIDsgaSA8IGxlbjsgaSsrICkgew0KCQkJCWVsZW0gPSB0aGlzWyBpIF07DQoJCQkJLy8gVGhpcyBleHByZXNzaW9uIGlzIGhlcmUgZm9yIGJldHRlciBjb21wcmVzc2liaWxpdHkgKHNlZSBhZGRDbGFzcykNCgkJCQljdXIgPSBlbGVtLm5vZGVUeXBlID09PSAxICYmICggZWxlbS5jbGFzc05hbWUgPw0KCQkJCQkoICIgIiArIGVsZW0uY2xhc3NOYW1lICsgIiAiICkucmVwbGFjZSggcmNsYXNzLCAiICIgKSA6DQoJCQkJCSIiDQoJCQkJKTsNCg0KCQkJCWlmICggY3VyICkgew0KCQkJCQlqID0gMDsNCgkJCQkJd2hpbGUgKCAoY2xhenogPSBjbGFzc2VzW2orK10pICkgew0KCQkJCQkJLy8gUmVtb3ZlICphbGwqIGluc3RhbmNlcw0KCQkJCQkJd2hpbGUgKCBjdXIuaW5kZXhPZiggIiAiICsgY2xhenogKyAiICIgKSA+PSAwICkgew0KCQkJCQkJCWN1ciA9IGN1ci5yZXBsYWNlKCAiICIgKyBjbGF6eiArICIgIiwgIiAiICk7DQoJCQkJCQl9DQoJCQkJCX0NCg0KCQkJCQkvLyBPbmx5IGFzc2lnbiBpZiBkaWZmZXJlbnQgdG8gYXZvaWQgdW5uZWVkZWQgcmVuZGVyaW5nLg0KCQkJCQlmaW5hbFZhbHVlID0gdmFsdWUgPyBqUXVlcnkudHJpbSggY3VyICkgOiAiIjsNCgkJCQkJaWYgKCBlbGVtLmNsYXNzTmFtZSAhPT0gZmluYWxWYWx1ZSApIHsNCgkJCQkJCWVsZW0uY2xhc3NOYW1lID0gZmluYWxWYWx1ZTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiB0aGlzOw0KCX0sDQoNCgl0b2dnbGVDbGFzczogZnVuY3Rpb24oIHZhbHVlLCBzdGF0ZVZhbCApIHsNCgkJdmFyIHR5cGUgPSB0eXBlb2YgdmFsdWU7DQoNCgkJaWYgKCB0eXBlb2Ygc3RhdGVWYWwgPT09ICJib29sZWFuIiAmJiB0eXBlID09PSAic3RyaW5nIiApIHsNCgkJCXJldHVybiBzdGF0ZVZhbCA/IHRoaXMuYWRkQ2xhc3MoIHZhbHVlICkgOiB0aGlzLnJlbW92ZUNsYXNzKCB2YWx1ZSApOw0KCQl9DQoNCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWUgKSApIHsNCgkJCXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oIGkgKSB7DQoJCQkJalF1ZXJ5KCB0aGlzICkudG9nZ2xlQ2xhc3MoIHZhbHVlLmNhbGwodGhpcywgaSwgdGhpcy5jbGFzc05hbWUsIHN0YXRlVmFsKSwgc3RhdGVWYWwgKTsNCgkJCX0pOw0KCQl9DQoNCgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsNCgkJCWlmICggdHlwZSA9PT0gInN0cmluZyIgKSB7DQoJCQkJLy8gVG9nZ2xlIGluZGl2aWR1YWwgY2xhc3MgbmFtZXMNCgkJCQl2YXIgY2xhc3NOYW1lLA0KCQkJCQlpID0gMCwNCgkJCQkJc2VsZiA9IGpRdWVyeSggdGhpcyApLA0KCQkJCQljbGFzc05hbWVzID0gdmFsdWUubWF0Y2goIHJub3R3aGl0ZSApIHx8IFtdOw0KDQoJCQkJd2hpbGUgKCAoY2xhc3NOYW1lID0gY2xhc3NOYW1lc1sgaSsrIF0pICkgew0KCQkJCQkvLyBDaGVjayBlYWNoIGNsYXNzTmFtZSBnaXZlbiwgc3BhY2Ugc2VwYXJhdGVkIGxpc3QNCgkJCQkJaWYgKCBzZWxmLmhhc0NsYXNzKCBjbGFzc05hbWUgKSApIHsNCgkJCQkJCXNlbGYucmVtb3ZlQ2xhc3MoIGNsYXNzTmFtZSApOw0KCQkJCQl9IGVsc2Ugew0KCQkJCQkJc2VsZi5hZGRDbGFzcyggY2xhc3NOYW1lICk7DQoJCQkJCX0NCgkJCQl9DQoNCgkJCS8vIFRvZ2dsZSB3aG9sZSBjbGFzcyBuYW1lDQoJCQl9IGVsc2UgaWYgKCB0eXBlID09PSBzdHJ1bmRlZmluZWQgfHwgdHlwZSA9PT0gImJvb2xlYW4iICkgew0KCQkJCWlmICggdGhpcy5jbGFzc05hbWUgKSB7DQoJCQkJCS8vIHN0b3JlIGNsYXNzTmFtZSBpZiBzZXQNCgkJCQkJZGF0YV9wcml2LnNldCggdGhpcywgIl9fY2xhc3NOYW1lX18iLCB0aGlzLmNsYXNzTmFtZSApOw0KCQkJCX0NCg0KCQkJCS8vIElmIHRoZSBlbGVtZW50IGhhcyBhIGNsYXNzIG5hbWUgb3IgaWYgd2UncmUgcGFzc2VkIGBmYWxzZWAsDQoJCQkJLy8gdGhlbiByZW1vdmUgdGhlIHdob2xlIGNsYXNzbmFtZSAoaWYgdGhlcmUgd2FzIG9uZSwgdGhlIGFib3ZlIHNhdmVkIGl0KS4NCgkJCQkvLyBPdGhlcndpc2UgYnJpbmcgYmFjayB3aGF0ZXZlciB3YXMgcHJldmlvdXNseSBzYXZlZCAoaWYgYW55dGhpbmcpLA0KCQkJCS8vIGZhbGxpbmcgYmFjayB0byB0aGUgZW1wdHkgc3RyaW5nIGlmIG5vdGhpbmcgd2FzIHN0b3JlZC4NCgkJCQl0aGlzLmNsYXNzTmFtZSA9IHRoaXMuY2xhc3NOYW1lIHx8IHZhbHVlID09PSBmYWxzZSA/ICIiIDogZGF0YV9wcml2LmdldCggdGhpcywgIl9fY2xhc3NOYW1lX18iICkgfHwgIiI7DQoJCQl9DQoJCX0pOw0KCX0sDQoNCgloYXNDbGFzczogZnVuY3Rpb24oIHNlbGVjdG9yICkgew0KCQl2YXIgY2xhc3NOYW1lID0gIiAiICsgc2VsZWN0b3IgKyAiICIsDQoJCQlpID0gMCwNCgkJCWwgPSB0aGlzLmxlbmd0aDsNCgkJZm9yICggOyBpIDwgbDsgaSsrICkgew0KCQkJaWYgKCB0aGlzW2ldLm5vZGVUeXBlID09PSAxICYmICgiICIgKyB0aGlzW2ldLmNsYXNzTmFtZSArICIgIikucmVwbGFjZShyY2xhc3MsICIgIikuaW5kZXhPZiggY2xhc3NOYW1lICkgPj0gMCApIHsNCgkJCQlyZXR1cm4gdHJ1ZTsNCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBmYWxzZTsNCgl9DQp9KTsNCg0KDQoNCg0KdmFyIHJyZXR1cm4gPSAvXHIvZzsNCg0KalF1ZXJ5LmZuLmV4dGVuZCh7DQoJdmFsOiBmdW5jdGlvbiggdmFsdWUgKSB7DQoJCXZhciBob29rcywgcmV0LCBpc0Z1bmN0aW9uLA0KCQkJZWxlbSA9IHRoaXNbMF07DQoNCgkJaWYgKCAhYXJndW1lbnRzLmxlbmd0aCApIHsNCgkJCWlmICggZWxlbSApIHsNCgkJCQlob29rcyA9IGpRdWVyeS52YWxIb29rc1sgZWxlbS50eXBlIF0gfHwgalF1ZXJ5LnZhbEhvb2tzWyBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgXTsNCg0KCQkJCWlmICggaG9va3MgJiYgImdldCIgaW4gaG9va3MgJiYgKHJldCA9IGhvb2tzLmdldCggZWxlbSwgInZhbHVlIiApKSAhPT0gdW5kZWZpbmVkICkgew0KCQkJCQlyZXR1cm4gcmV0Ow0KCQkJCX0NCg0KCQkJCXJldCA9IGVsZW0udmFsdWU7DQoNCgkJCQlyZXR1cm4gdHlwZW9mIHJldCA9PT0gInN0cmluZyIgPw0KCQkJCQkvLyBIYW5kbGUgbW9zdCBjb21tb24gc3RyaW5nIGNhc2VzDQoJCQkJCXJldC5yZXBsYWNlKHJyZXR1cm4sICIiKSA6DQoJCQkJCS8vIEhhbmRsZSBjYXNlcyB3aGVyZSB2YWx1ZSBpcyBudWxsL3VuZGVmIG9yIG51bWJlcg0KCQkJCQlyZXQgPT0gbnVsbCA/ICIiIDogcmV0Ow0KCQkJfQ0KDQoJCQlyZXR1cm47DQoJCX0NCg0KCQlpc0Z1bmN0aW9uID0galF1ZXJ5LmlzRnVuY3Rpb24oIHZhbHVlICk7DQoNCgkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiggaSApIHsNCgkJCXZhciB2YWw7DQoNCgkJCWlmICggdGhpcy5ub2RlVHlwZSAhPT0gMSApIHsNCgkJCQlyZXR1cm47DQoJCQl9DQoNCgkJCWlmICggaXNGdW5jdGlvbiApIHsNCgkJCQl2YWwgPSB2YWx1ZS5jYWxsKCB0aGlzLCBpLCBqUXVlcnkoIHRoaXMgKS52YWwoKSApOw0KCQkJfSBlbHNlIHsNCgkJCQl2YWwgPSB2YWx1ZTsNCgkJCX0NCg0KCQkJLy8gVHJlYXQgbnVsbC91bmRlZmluZWQgYXMgIiI7IGNvbnZlcnQgbnVtYmVycyB0byBzdHJpbmcNCgkJCWlmICggdmFsID09IG51bGwgKSB7DQoJCQkJdmFsID0gIiI7DQoNCgkJCX0gZWxzZSBpZiAoIHR5cGVvZiB2YWwgPT09ICJudW1iZXIiICkgew0KCQkJCXZhbCArPSAiIjsNCg0KCQkJfSBlbHNlIGlmICggalF1ZXJ5LmlzQXJyYXkoIHZhbCApICkgew0KCQkJCXZhbCA9IGpRdWVyeS5tYXAoIHZhbCwgZnVuY3Rpb24oIHZhbHVlICkgew0KCQkJCQlyZXR1cm4gdmFsdWUgPT0gbnVsbCA/ICIiIDogdmFsdWUgKyAiIjsNCgkJCQl9KTsNCgkJCX0NCg0KCQkJaG9va3MgPSBqUXVlcnkudmFsSG9va3NbIHRoaXMudHlwZSBdIHx8IGpRdWVyeS52YWxIb29rc1sgdGhpcy5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpIF07DQoNCgkJCS8vIElmIHNldCByZXR1cm5zIHVuZGVmaW5lZCwgZmFsbCBiYWNrIHRvIG5vcm1hbCBzZXR0aW5nDQoJCQlpZiAoICFob29rcyB8fCAhKCJzZXQiIGluIGhvb2tzKSB8fCBob29rcy5zZXQoIHRoaXMsIHZhbCwgInZhbHVlIiApID09PSB1bmRlZmluZWQgKSB7DQoJCQkJdGhpcy52YWx1ZSA9IHZhbDsNCgkJCX0NCgkJfSk7DQoJfQ0KfSk7DQoNCmpRdWVyeS5leHRlbmQoew0KCXZhbEhvb2tzOiB7DQoJCW9wdGlvbjogew0KCQkJZ2V0OiBmdW5jdGlvbiggZWxlbSApIHsNCgkJCQl2YXIgdmFsID0galF1ZXJ5LmZpbmQuYXR0ciggZWxlbSwgInZhbHVlIiApOw0KCQkJCXJldHVybiB2YWwgIT0gbnVsbCA/DQoJCQkJCXZhbCA6DQoJCQkJCS8vIFN1cHBvcnQ6IElFMTAtMTErDQoJCQkJCS8vIG9wdGlvbi50ZXh0IHRocm93cyBleGNlcHRpb25zICgjMTQ2ODYsICMxNDg1OCkNCgkJCQkJalF1ZXJ5LnRyaW0oIGpRdWVyeS50ZXh0KCBlbGVtICkgKTsNCgkJCX0NCgkJfSwNCgkJc2VsZWN0OiB7DQoJCQlnZXQ6IGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJCXZhciB2YWx1ZSwgb3B0aW9uLA0KCQkJCQlvcHRpb25zID0gZWxlbS5vcHRpb25zLA0KCQkJCQlpbmRleCA9IGVsZW0uc2VsZWN0ZWRJbmRleCwNCgkJCQkJb25lID0gZWxlbS50eXBlID09PSAic2VsZWN0LW9uZSIgfHwgaW5kZXggPCAwLA0KCQkJCQl2YWx1ZXMgPSBvbmUgPyBudWxsIDogW10sDQoJCQkJCW1heCA9IG9uZSA/IGluZGV4ICsgMSA6IG9wdGlvbnMubGVuZ3RoLA0KCQkJCQlpID0gaW5kZXggPCAwID8NCgkJCQkJCW1heCA6DQoJCQkJCQlvbmUgPyBpbmRleCA6IDA7DQoNCgkJCQkvLyBMb29wIHRocm91Z2ggYWxsIHRoZSBzZWxlY3RlZCBvcHRpb25zDQoJCQkJZm9yICggOyBpIDwgbWF4OyBpKysgKSB7DQoJCQkJCW9wdGlvbiA9IG9wdGlvbnNbIGkgXTsNCg0KCQkJCQkvLyBJRTYtOSBkb2Vzbid0IHVwZGF0ZSBzZWxlY3RlZCBhZnRlciBmb3JtIHJlc2V0ICgjMjU1MSkNCgkJCQkJaWYgKCAoIG9wdGlvbi5zZWxlY3RlZCB8fCBpID09PSBpbmRleCApICYmDQoJCQkJCQkJLy8gRG9uJ3QgcmV0dXJuIG9wdGlvbnMgdGhhdCBhcmUgZGlzYWJsZWQgb3IgaW4gYSBkaXNhYmxlZCBvcHRncm91cA0KCQkJCQkJCSggc3VwcG9ydC5vcHREaXNhYmxlZCA/ICFvcHRpb24uZGlzYWJsZWQgOiBvcHRpb24uZ2V0QXR0cmlidXRlKCAiZGlzYWJsZWQiICkgPT09IG51bGwgKSAmJg0KCQkJCQkJCSggIW9wdGlvbi5wYXJlbnROb2RlLmRpc2FibGVkIHx8ICFqUXVlcnkubm9kZU5hbWUoIG9wdGlvbi5wYXJlbnROb2RlLCAib3B0Z3JvdXAiICkgKSApIHsNCg0KCQkJCQkJLy8gR2V0IHRoZSBzcGVjaWZpYyB2YWx1ZSBmb3IgdGhlIG9wdGlvbg0KCQkJCQkJdmFsdWUgPSBqUXVlcnkoIG9wdGlvbiApLnZhbCgpOw0KDQoJCQkJCQkvLyBXZSBkb24ndCBuZWVkIGFuIGFycmF5IGZvciBvbmUgc2VsZWN0cw0KCQkJCQkJaWYgKCBvbmUgKSB7DQoJCQkJCQkJcmV0dXJuIHZhbHVlOw0KCQkJCQkJfQ0KDQoJCQkJCQkvLyBNdWx0aS1TZWxlY3RzIHJldHVybiBhbiBhcnJheQ0KCQkJCQkJdmFsdWVzLnB1c2goIHZhbHVlICk7DQoJCQkJCX0NCgkJCQl9DQoNCgkJCQlyZXR1cm4gdmFsdWVzOw0KCQkJfSwNCg0KCQkJc2V0OiBmdW5jdGlvbiggZWxlbSwgdmFsdWUgKSB7DQoJCQkJdmFyIG9wdGlvblNldCwgb3B0aW9uLA0KCQkJCQlvcHRpb25zID0gZWxlbS5vcHRpb25zLA0KCQkJCQl2YWx1ZXMgPSBqUXVlcnkubWFrZUFycmF5KCB2YWx1ZSApLA0KCQkJCQlpID0gb3B0aW9ucy5sZW5ndGg7DQoNCgkJCQl3aGlsZSAoIGktLSApIHsNCgkJCQkJb3B0aW9uID0gb3B0aW9uc1sgaSBdOw0KCQkJCQlpZiAoIChvcHRpb24uc2VsZWN0ZWQgPSBqUXVlcnkuaW5BcnJheSggb3B0aW9uLnZhbHVlLCB2YWx1ZXMgKSA+PSAwKSApIHsNCgkJCQkJCW9wdGlvblNldCA9IHRydWU7DQoJCQkJCX0NCgkJCQl9DQoNCgkJCQkvLyBGb3JjZSBicm93c2VycyB0byBiZWhhdmUgY29uc2lzdGVudGx5IHdoZW4gbm9uLW1hdGNoaW5nIHZhbHVlIGlzIHNldA0KCQkJCWlmICggIW9wdGlvblNldCApIHsNCgkJCQkJZWxlbS5zZWxlY3RlZEluZGV4ID0gLTE7DQoJCQkJfQ0KCQkJCXJldHVybiB2YWx1ZXM7DQoJCQl9DQoJCX0NCgl9DQp9KTsNCg0KLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIGdldHRlci9zZXR0ZXINCmpRdWVyeS5lYWNoKFsgInJhZGlvIiwgImNoZWNrYm94IiBdLCBmdW5jdGlvbigpIHsNCglqUXVlcnkudmFsSG9va3NbIHRoaXMgXSA9IHsNCgkJc2V0OiBmdW5jdGlvbiggZWxlbSwgdmFsdWUgKSB7DQoJCQlpZiAoIGpRdWVyeS5pc0FycmF5KCB2YWx1ZSApICkgew0KCQkJCXJldHVybiAoIGVsZW0uY2hlY2tlZCA9IGpRdWVyeS5pbkFycmF5KCBqUXVlcnkoZWxlbSkudmFsKCksIHZhbHVlICkgPj0gMCApOw0KCQkJfQ0KCQl9DQoJfTsNCglpZiAoICFzdXBwb3J0LmNoZWNrT24gKSB7DQoJCWpRdWVyeS52YWxIb29rc1sgdGhpcyBdLmdldCA9IGZ1bmN0aW9uKCBlbGVtICkgew0KCQkJcmV0dXJuIGVsZW0uZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpID09PSBudWxsID8gIm9uIiA6IGVsZW0udmFsdWU7DQoJCX07DQoJfQ0KfSk7DQoNCg0KDQoNCi8vIFJldHVybiBqUXVlcnkgZm9yIGF0dHJpYnV0ZXMtb25seSBpbmNsdXNpb24NCg0KDQpqUXVlcnkuZWFjaCggKCJibHVyIGZvY3VzIGZvY3VzaW4gZm9jdXNvdXQgbG9hZCByZXNpemUgc2Nyb2xsIHVubG9hZCBjbGljayBkYmxjbGljayAiICsNCgkibW91c2Vkb3duIG1vdXNldXAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgIiArDQoJImNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgZXJyb3IgY29udGV4dG1lbnUiKS5zcGxpdCgiICIpLCBmdW5jdGlvbiggaSwgbmFtZSApIHsNCg0KCS8vIEhhbmRsZSBldmVudCBiaW5kaW5nDQoJalF1ZXJ5LmZuWyBuYW1lIF0gPSBmdW5jdGlvbiggZGF0YSwgZm4gKSB7DQoJCXJldHVybiBhcmd1bWVudHMubGVuZ3RoID4gMCA/DQoJCQl0aGlzLm9uKCBuYW1lLCBudWxsLCBkYXRhLCBmbiApIDoNCgkJCXRoaXMudHJpZ2dlciggbmFtZSApOw0KCX07DQp9KTsNCg0KalF1ZXJ5LmZuLmV4dGVuZCh7DQoJaG92ZXI6IGZ1bmN0aW9uKCBmbk92ZXIsIGZuT3V0ICkgew0KCQlyZXR1cm4gdGhpcy5tb3VzZWVudGVyKCBmbk92ZXIgKS5tb3VzZWxlYXZlKCBmbk91dCB8fCBmbk92ZXIgKTsNCgl9LA0KDQoJYmluZDogZnVuY3Rpb24oIHR5cGVzLCBkYXRhLCBmbiApIHsNCgkJcmV0dXJuIHRoaXMub24oIHR5cGVzLCBudWxsLCBkYXRhLCBmbiApOw0KCX0sDQoJdW5iaW5kOiBmdW5jdGlvbiggdHlwZXMsIGZuICkgew0KCQlyZXR1cm4gdGhpcy5vZmYoIHR5cGVzLCBudWxsLCBmbiApOw0KCX0sDQoNCglkZWxlZ2F0ZTogZnVuY3Rpb24oIHNlbGVjdG9yLCB0eXBlcywgZGF0YSwgZm4gKSB7DQoJCXJldHVybiB0aGlzLm9uKCB0eXBlcywgc2VsZWN0b3IsIGRhdGEsIGZuICk7DQoJfSwNCgl1bmRlbGVnYXRlOiBmdW5jdGlvbiggc2VsZWN0b3IsIHR5cGVzLCBmbiApIHsNCgkJLy8gKCBuYW1lc3BhY2UgKSBvciAoIHNlbGVjdG9yLCB0eXBlcyBbLCBmbl0gKQ0KCQlyZXR1cm4gYXJndW1lbnRzLmxlbmd0aCA9PT0gMSA/IHRoaXMub2ZmKCBzZWxlY3RvciwgIioqIiApIDogdGhpcy5vZmYoIHR5cGVzLCBzZWxlY3RvciB8fCAiKioiLCBmbiApOw0KCX0NCn0pOw0KDQoNCnZhciBub25jZSA9IGpRdWVyeS5ub3coKTsNCg0KdmFyIHJxdWVyeSA9ICgvXD8vKTsNCg0KDQoNCi8vIFN1cHBvcnQ6IEFuZHJvaWQgMi4zDQovLyBXb3JrYXJvdW5kIGZhaWx1cmUgdG8gc3RyaW5nLWNhc3QgbnVsbCBpbnB1dA0KalF1ZXJ5LnBhcnNlSlNPTiA9IGZ1bmN0aW9uKCBkYXRhICkgew0KCXJldHVybiBKU09OLnBhcnNlKCBkYXRhICsgIiIgKTsNCn07DQoNCg0KLy8gQ3Jvc3MtYnJvd3NlciB4bWwgcGFyc2luZw0KalF1ZXJ5LnBhcnNlWE1MID0gZnVuY3Rpb24oIGRhdGEgKSB7DQoJdmFyIHhtbCwgdG1wOw0KCWlmICggIWRhdGEgfHwgdHlwZW9mIGRhdGEgIT09ICJzdHJpbmciICkgew0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCgkvLyBTdXBwb3J0OiBJRTkNCgl0cnkgew0KCQl0bXAgPSBuZXcgRE9NUGFyc2VyKCk7DQoJCXhtbCA9IHRtcC5wYXJzZUZyb21TdHJpbmcoIGRhdGEsICJ0ZXh0L3htbCIgKTsNCgl9IGNhdGNoICggZSApIHsNCgkJeG1sID0gdW5kZWZpbmVkOw0KCX0NCg0KCWlmICggIXhtbCB8fCB4bWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoICJwYXJzZXJlcnJvciIgKS5sZW5ndGggKSB7DQoJCWpRdWVyeS5lcnJvciggIkludmFsaWQgWE1MOiAiICsgZGF0YSApOw0KCX0NCglyZXR1cm4geG1sOw0KfTsNCg0KDQp2YXINCglyaGFzaCA9IC8jLiokLywNCglydHMgPSAvKFs/Jl0pXz1bXiZdKi8sDQoJcmhlYWRlcnMgPSAvXiguKj8pOlsgXHRdKihbXlxyXG5dKikkL21nLA0KCS8vICM3NjUzLCAjODEyNSwgIzgxNTI6IGxvY2FsIHByb3RvY29sIGRldGVjdGlvbg0KCXJsb2NhbFByb3RvY29sID0gL14oPzphYm91dHxhcHB8YXBwLXN0b3JhZ2V8ListZXh0ZW5zaW9ufGZpbGV8cmVzfHdpZGdldCk6JC8sDQoJcm5vQ29udGVudCA9IC9eKD86R0VUfEhFQUQpJC8sDQoJcnByb3RvY29sID0gL15cL1wvLywNCglydXJsID0gL14oW1x3ListXSs6KSg/OlwvXC8oPzpbXlwvPyNdKkB8KShbXlwvPyM6XSopKD86OihcZCspfCl8KS8sDQoNCgkvKiBQcmVmaWx0ZXJzDQoJICogMSkgVGhleSBhcmUgdXNlZnVsIHRvIGludHJvZHVjZSBjdXN0b20gZGF0YVR5cGVzIChzZWUgYWpheC9qc29ucC5qcyBmb3IgYW4gZXhhbXBsZSkNCgkgKiAyKSBUaGVzZSBhcmUgY2FsbGVkOg0KCSAqICAgIC0gQkVGT1JFIGFza2luZyBmb3IgYSB0cmFuc3BvcnQNCgkgKiAgICAtIEFGVEVSIHBhcmFtIHNlcmlhbGl6YXRpb24gKHMuZGF0YSBpcyBhIHN0cmluZyBpZiBzLnByb2Nlc3NEYXRhIGlzIHRydWUpDQoJICogMykga2V5IGlzIHRoZSBkYXRhVHlwZQ0KCSAqIDQpIHRoZSBjYXRjaGFsbCBzeW1ib2wgIioiIGNhbiBiZSB1c2VkDQoJICogNSkgZXhlY3V0aW9uIHdpbGwgc3RhcnQgd2l0aCB0cmFuc3BvcnQgZGF0YVR5cGUgYW5kIFRIRU4gY29udGludWUgZG93biB0byAiKiIgaWYgbmVlZGVkDQoJICovDQoJcHJlZmlsdGVycyA9IHt9LA0KDQoJLyogVHJhbnNwb3J0cyBiaW5kaW5ncw0KCSAqIDEpIGtleSBpcyB0aGUgZGF0YVR5cGUNCgkgKiAyKSB0aGUgY2F0Y2hhbGwgc3ltYm9sICIqIiBjYW4gYmUgdXNlZA0KCSAqIDMpIHNlbGVjdGlvbiB3aWxsIHN0YXJ0IHdpdGggdHJhbnNwb3J0IGRhdGFUeXBlIGFuZCBUSEVOIGdvIHRvICIqIiBpZiBuZWVkZWQNCgkgKi8NCgl0cmFuc3BvcnRzID0ge30sDQoNCgkvLyBBdm9pZCBjb21tZW50LXByb2xvZyBjaGFyIHNlcXVlbmNlICgjMTAwOTgpOyBtdXN0IGFwcGVhc2UgbGludCBhbmQgZXZhZGUgY29tcHJlc3Npb24NCglhbGxUeXBlcyA9ICIqLyIuY29uY2F0KCAiKiIgKSwNCg0KCS8vIERvY3VtZW50IGxvY2F0aW9uDQoJYWpheExvY2F0aW9uID0gd2luZG93LmxvY2F0aW9uLmhyZWYsDQoNCgkvLyBTZWdtZW50IGxvY2F0aW9uIGludG8gcGFydHMNCglhamF4TG9jUGFydHMgPSBydXJsLmV4ZWMoIGFqYXhMb2NhdGlvbi50b0xvd2VyQ2FzZSgpICkgfHwgW107DQoNCi8vIEJhc2UgImNvbnN0cnVjdG9yIiBmb3IgalF1ZXJ5LmFqYXhQcmVmaWx0ZXIgYW5kIGpRdWVyeS5hamF4VHJhbnNwb3J0DQpmdW5jdGlvbiBhZGRUb1ByZWZpbHRlcnNPclRyYW5zcG9ydHMoIHN0cnVjdHVyZSApIHsNCg0KCS8vIGRhdGFUeXBlRXhwcmVzc2lvbiBpcyBvcHRpb25hbCBhbmQgZGVmYXVsdHMgdG8gIioiDQoJcmV0dXJuIGZ1bmN0aW9uKCBkYXRhVHlwZUV4cHJlc3Npb24sIGZ1bmMgKSB7DQoNCgkJaWYgKCB0eXBlb2YgZGF0YVR5cGVFeHByZXNzaW9uICE9PSAic3RyaW5nIiApIHsNCgkJCWZ1bmMgPSBkYXRhVHlwZUV4cHJlc3Npb247DQoJCQlkYXRhVHlwZUV4cHJlc3Npb24gPSAiKiI7DQoJCX0NCg0KCQl2YXIgZGF0YVR5cGUsDQoJCQlpID0gMCwNCgkJCWRhdGFUeXBlcyA9IGRhdGFUeXBlRXhwcmVzc2lvbi50b0xvd2VyQ2FzZSgpLm1hdGNoKCBybm90d2hpdGUgKSB8fCBbXTsNCg0KCQlpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCBmdW5jICkgKSB7DQoJCQkvLyBGb3IgZWFjaCBkYXRhVHlwZSBpbiB0aGUgZGF0YVR5cGVFeHByZXNzaW9uDQoJCQl3aGlsZSAoIChkYXRhVHlwZSA9IGRhdGFUeXBlc1tpKytdKSApIHsNCgkJCQkvLyBQcmVwZW5kIGlmIHJlcXVlc3RlZA0KCQkJCWlmICggZGF0YVR5cGVbMF0gPT09ICIrIiApIHsNCgkJCQkJZGF0YVR5cGUgPSBkYXRhVHlwZS5zbGljZSggMSApIHx8ICIqIjsNCgkJCQkJKHN0cnVjdHVyZVsgZGF0YVR5cGUgXSA9IHN0cnVjdHVyZVsgZGF0YVR5cGUgXSB8fCBbXSkudW5zaGlmdCggZnVuYyApOw0KDQoJCQkJLy8gT3RoZXJ3aXNlIGFwcGVuZA0KCQkJCX0gZWxzZSB7DQoJCQkJCShzdHJ1Y3R1cmVbIGRhdGFUeXBlIF0gPSBzdHJ1Y3R1cmVbIGRhdGFUeXBlIF0gfHwgW10pLnB1c2goIGZ1bmMgKTsNCgkJCQl9DQoJCQl9DQoJCX0NCgl9Ow0KfQ0KDQovLyBCYXNlIGluc3BlY3Rpb24gZnVuY3Rpb24gZm9yIHByZWZpbHRlcnMgYW5kIHRyYW5zcG9ydHMNCmZ1bmN0aW9uIGluc3BlY3RQcmVmaWx0ZXJzT3JUcmFuc3BvcnRzKCBzdHJ1Y3R1cmUsIG9wdGlvbnMsIG9yaWdpbmFsT3B0aW9ucywganFYSFIgKSB7DQoNCgl2YXIgaW5zcGVjdGVkID0ge30sDQoJCXNlZWtpbmdUcmFuc3BvcnQgPSAoIHN0cnVjdHVyZSA9PT0gdHJhbnNwb3J0cyApOw0KDQoJZnVuY3Rpb24gaW5zcGVjdCggZGF0YVR5cGUgKSB7DQoJCXZhciBzZWxlY3RlZDsNCgkJaW5zcGVjdGVkWyBkYXRhVHlwZSBdID0gdHJ1ZTsNCgkJalF1ZXJ5LmVhY2goIHN0cnVjdHVyZVsgZGF0YVR5cGUgXSB8fCBbXSwgZnVuY3Rpb24oIF8sIHByZWZpbHRlck9yRmFjdG9yeSApIHsNCgkJCXZhciBkYXRhVHlwZU9yVHJhbnNwb3J0ID0gcHJlZmlsdGVyT3JGYWN0b3J5KCBvcHRpb25zLCBvcmlnaW5hbE9wdGlvbnMsIGpxWEhSICk7DQoJCQlpZiAoIHR5cGVvZiBkYXRhVHlwZU9yVHJhbnNwb3J0ID09PSAic3RyaW5nIiAmJiAhc2Vla2luZ1RyYW5zcG9ydCAmJiAhaW5zcGVjdGVkWyBkYXRhVHlwZU9yVHJhbnNwb3J0IF0gKSB7DQoJCQkJb3B0aW9ucy5kYXRhVHlwZXMudW5zaGlmdCggZGF0YVR5cGVPclRyYW5zcG9ydCApOw0KCQkJCWluc3BlY3QoIGRhdGFUeXBlT3JUcmFuc3BvcnQgKTsNCgkJCQlyZXR1cm4gZmFsc2U7DQoJCQl9IGVsc2UgaWYgKCBzZWVraW5nVHJhbnNwb3J0ICkgew0KCQkJCXJldHVybiAhKCBzZWxlY3RlZCA9IGRhdGFUeXBlT3JUcmFuc3BvcnQgKTsNCgkJCX0NCgkJfSk7DQoJCXJldHVybiBzZWxlY3RlZDsNCgl9DQoNCglyZXR1cm4gaW5zcGVjdCggb3B0aW9ucy5kYXRhVHlwZXNbIDAgXSApIHx8ICFpbnNwZWN0ZWRbICIqIiBdICYmIGluc3BlY3QoICIqIiApOw0KfQ0KDQovLyBBIHNwZWNpYWwgZXh0ZW5kIGZvciBhamF4IG9wdGlvbnMNCi8vIHRoYXQgdGFrZXMgImZsYXQiIG9wdGlvbnMgKG5vdCB0byBiZSBkZWVwIGV4dGVuZGVkKQ0KLy8gRml4ZXMgIzk4ODcNCmZ1bmN0aW9uIGFqYXhFeHRlbmQoIHRhcmdldCwgc3JjICkgew0KCXZhciBrZXksIGRlZXAsDQoJCWZsYXRPcHRpb25zID0galF1ZXJ5LmFqYXhTZXR0aW5ncy5mbGF0T3B0aW9ucyB8fCB7fTsNCg0KCWZvciAoIGtleSBpbiBzcmMgKSB7DQoJCWlmICggc3JjWyBrZXkgXSAhPT0gdW5kZWZpbmVkICkgew0KCQkJKCBmbGF0T3B0aW9uc1sga2V5IF0gPyB0YXJnZXQgOiAoIGRlZXAgfHwgKGRlZXAgPSB7fSkgKSApWyBrZXkgXSA9IHNyY1sga2V5IF07DQoJCX0NCgl9DQoJaWYgKCBkZWVwICkgew0KCQlqUXVlcnkuZXh0ZW5kKCB0cnVlLCB0YXJnZXQsIGRlZXAgKTsNCgl9DQoNCglyZXR1cm4gdGFyZ2V0Ow0KfQ0KDQovKiBIYW5kbGVzIHJlc3BvbnNlcyB0byBhbiBhamF4IHJlcXVlc3Q6DQogKiAtIGZpbmRzIHRoZSByaWdodCBkYXRhVHlwZSAobWVkaWF0ZXMgYmV0d2VlbiBjb250ZW50LXR5cGUgYW5kIGV4cGVjdGVkIGRhdGFUeXBlKQ0KICogLSByZXR1cm5zIHRoZSBjb3JyZXNwb25kaW5nIHJlc3BvbnNlDQogKi8NCmZ1bmN0aW9uIGFqYXhIYW5kbGVSZXNwb25zZXMoIHMsIGpxWEhSLCByZXNwb25zZXMgKSB7DQoNCgl2YXIgY3QsIHR5cGUsIGZpbmFsRGF0YVR5cGUsIGZpcnN0RGF0YVR5cGUsDQoJCWNvbnRlbnRzID0gcy5jb250ZW50cywNCgkJZGF0YVR5cGVzID0gcy5kYXRhVHlwZXM7DQoNCgkvLyBSZW1vdmUgYXV0byBkYXRhVHlwZSBhbmQgZ2V0IGNvbnRlbnQtdHlwZSBpbiB0aGUgcHJvY2Vzcw0KCXdoaWxlICggZGF0YVR5cGVzWyAwIF0gPT09ICIqIiApIHsNCgkJZGF0YVR5cGVzLnNoaWZ0KCk7DQoJCWlmICggY3QgPT09IHVuZGVmaW5lZCApIHsNCgkJCWN0ID0gcy5taW1lVHlwZSB8fCBqcVhIUi5nZXRSZXNwb25zZUhlYWRlcigiQ29udGVudC1UeXBlIik7DQoJCX0NCgl9DQoNCgkvLyBDaGVjayBpZiB3ZSdyZSBkZWFsaW5nIHdpdGggYSBrbm93biBjb250ZW50LXR5cGUNCglpZiAoIGN0ICkgew0KCQlmb3IgKCB0eXBlIGluIGNvbnRlbnRzICkgew0KCQkJaWYgKCBjb250ZW50c1sgdHlwZSBdICYmIGNvbnRlbnRzWyB0eXBlIF0udGVzdCggY3QgKSApIHsNCgkJCQlkYXRhVHlwZXMudW5zaGlmdCggdHlwZSApOw0KCQkJCWJyZWFrOw0KCQkJfQ0KCQl9DQoJfQ0KDQoJLy8gQ2hlY2sgdG8gc2VlIGlmIHdlIGhhdmUgYSByZXNwb25zZSBmb3IgdGhlIGV4cGVjdGVkIGRhdGFUeXBlDQoJaWYgKCBkYXRhVHlwZXNbIDAgXSBpbiByZXNwb25zZXMgKSB7DQoJCWZpbmFsRGF0YVR5cGUgPSBkYXRhVHlwZXNbIDAgXTsNCgl9IGVsc2Ugew0KCQkvLyBUcnkgY29udmVydGlibGUgZGF0YVR5cGVzDQoJCWZvciAoIHR5cGUgaW4gcmVzcG9uc2VzICkgew0KCQkJaWYgKCAhZGF0YVR5cGVzWyAwIF0gfHwgcy5jb252ZXJ0ZXJzWyB0eXBlICsgIiAiICsgZGF0YVR5cGVzWzBdIF0gKSB7DQoJCQkJZmluYWxEYXRhVHlwZSA9IHR5cGU7DQoJCQkJYnJlYWs7DQoJCQl9DQoJCQlpZiAoICFmaXJzdERhdGFUeXBlICkgew0KCQkJCWZpcnN0RGF0YVR5cGUgPSB0eXBlOw0KCQkJfQ0KCQl9DQoJCS8vIE9yIGp1c3QgdXNlIGZpcnN0IG9uZQ0KCQlmaW5hbERhdGFUeXBlID0gZmluYWxEYXRhVHlwZSB8fCBmaXJzdERhdGFUeXBlOw0KCX0NCg0KCS8vIElmIHdlIGZvdW5kIGEgZGF0YVR5cGUNCgkvLyBXZSBhZGQgdGhlIGRhdGFUeXBlIHRvIHRoZSBsaXN0IGlmIG5lZWRlZA0KCS8vIGFuZCByZXR1cm4gdGhlIGNvcnJlc3BvbmRpbmcgcmVzcG9uc2UNCglpZiAoIGZpbmFsRGF0YVR5cGUgKSB7DQoJCWlmICggZmluYWxEYXRhVHlwZSAhPT0gZGF0YVR5cGVzWyAwIF0gKSB7DQoJCQlkYXRhVHlwZXMudW5zaGlmdCggZmluYWxEYXRhVHlwZSApOw0KCQl9DQoJCXJldHVybiByZXNwb25zZXNbIGZpbmFsRGF0YVR5cGUgXTsNCgl9DQp9DQoNCi8qIENoYWluIGNvbnZlcnNpb25zIGdpdmVuIHRoZSByZXF1ZXN0IGFuZCB0aGUgb3JpZ2luYWwgcmVzcG9uc2UNCiAqIEFsc28gc2V0cyB0aGUgcmVzcG9uc2VYWFggZmllbGRzIG9uIHRoZSBqcVhIUiBpbnN0YW5jZQ0KICovDQpmdW5jdGlvbiBhamF4Q29udmVydCggcywgcmVzcG9uc2UsIGpxWEhSLCBpc1N1Y2Nlc3MgKSB7DQoJdmFyIGNvbnYyLCBjdXJyZW50LCBjb252LCB0bXAsIHByZXYsDQoJCWNvbnZlcnRlcnMgPSB7fSwNCgkJLy8gV29yayB3aXRoIGEgY29weSBvZiBkYXRhVHlwZXMgaW4gY2FzZSB3ZSBuZWVkIHRvIG1vZGlmeSBpdCBmb3IgY29udmVyc2lvbg0KCQlkYXRhVHlwZXMgPSBzLmRhdGFUeXBlcy5zbGljZSgpOw0KDQoJLy8gQ3JlYXRlIGNvbnZlcnRlcnMgbWFwIHdpdGggbG93ZXJjYXNlZCBrZXlzDQoJaWYgKCBkYXRhVHlwZXNbIDEgXSApIHsNCgkJZm9yICggY29udiBpbiBzLmNvbnZlcnRlcnMgKSB7DQoJCQljb252ZXJ0ZXJzWyBjb252LnRvTG93ZXJDYXNlKCkgXSA9IHMuY29udmVydGVyc1sgY29udiBdOw0KCQl9DQoJfQ0KDQoJY3VycmVudCA9IGRhdGFUeXBlcy5zaGlmdCgpOw0KDQoJLy8gQ29udmVydCB0byBlYWNoIHNlcXVlbnRpYWwgZGF0YVR5cGUNCgl3aGlsZSAoIGN1cnJlbnQgKSB7DQoNCgkJaWYgKCBzLnJlc3BvbnNlRmllbGRzWyBjdXJyZW50IF0gKSB7DQoJCQlqcVhIUlsgcy5yZXNwb25zZUZpZWxkc1sgY3VycmVudCBdIF0gPSByZXNwb25zZTsNCgkJfQ0KDQoJCS8vIEFwcGx5IHRoZSBkYXRhRmlsdGVyIGlmIHByb3ZpZGVkDQoJCWlmICggIXByZXYgJiYgaXNTdWNjZXNzICYmIHMuZGF0YUZpbHRlciApIHsNCgkJCXJlc3BvbnNlID0gcy5kYXRhRmlsdGVyKCByZXNwb25zZSwgcy5kYXRhVHlwZSApOw0KCQl9DQoNCgkJcHJldiA9IGN1cnJlbnQ7DQoJCWN1cnJlbnQgPSBkYXRhVHlwZXMuc2hpZnQoKTsNCg0KCQlpZiAoIGN1cnJlbnQgKSB7DQoNCgkJLy8gVGhlcmUncyBvbmx5IHdvcmsgdG8gZG8gaWYgY3VycmVudCBkYXRhVHlwZSBpcyBub24tYXV0bw0KCQkJaWYgKCBjdXJyZW50ID09PSAiKiIgKSB7DQoNCgkJCQljdXJyZW50ID0gcHJldjsNCg0KCQkJLy8gQ29udmVydCByZXNwb25zZSBpZiBwcmV2IGRhdGFUeXBlIGlzIG5vbi1hdXRvIGFuZCBkaWZmZXJzIGZyb20gY3VycmVudA0KCQkJfSBlbHNlIGlmICggcHJldiAhPT0gIioiICYmIHByZXYgIT09IGN1cnJlbnQgKSB7DQoNCgkJCQkvLyBTZWVrIGEgZGlyZWN0IGNvbnZlcnRlcg0KCQkJCWNvbnYgPSBjb252ZXJ0ZXJzWyBwcmV2ICsgIiAiICsgY3VycmVudCBdIHx8IGNvbnZlcnRlcnNbICIqICIgKyBjdXJyZW50IF07DQoNCgkJCQkvLyBJZiBub25lIGZvdW5kLCBzZWVrIGEgcGFpcg0KCQkJCWlmICggIWNvbnYgKSB7DQoJCQkJCWZvciAoIGNvbnYyIGluIGNvbnZlcnRlcnMgKSB7DQoNCgkJCQkJCS8vIElmIGNvbnYyIG91dHB1dHMgY3VycmVudA0KCQkJCQkJdG1wID0gY29udjIuc3BsaXQoICIgIiApOw0KCQkJCQkJaWYgKCB0bXBbIDEgXSA9PT0gY3VycmVudCApIHsNCg0KCQkJCQkJCS8vIElmIHByZXYgY2FuIGJlIGNvbnZlcnRlZCB0byBhY2NlcHRlZCBpbnB1dA0KCQkJCQkJCWNvbnYgPSBjb252ZXJ0ZXJzWyBwcmV2ICsgIiAiICsgdG1wWyAwIF0gXSB8fA0KCQkJCQkJCQljb252ZXJ0ZXJzWyAiKiAiICsgdG1wWyAwIF0gXTsNCgkJCQkJCQlpZiAoIGNvbnYgKSB7DQoJCQkJCQkJCS8vIENvbmRlbnNlIGVxdWl2YWxlbmNlIGNvbnZlcnRlcnMNCgkJCQkJCQkJaWYgKCBjb252ID09PSB0cnVlICkgew0KCQkJCQkJCQkJY29udiA9IGNvbnZlcnRlcnNbIGNvbnYyIF07DQoNCgkJCQkJCQkJLy8gT3RoZXJ3aXNlLCBpbnNlcnQgdGhlIGludGVybWVkaWF0ZSBkYXRhVHlwZQ0KCQkJCQkJCQl9IGVsc2UgaWYgKCBjb252ZXJ0ZXJzWyBjb252MiBdICE9PSB0cnVlICkgew0KCQkJCQkJCQkJY3VycmVudCA9IHRtcFsgMCBdOw0KCQkJCQkJCQkJZGF0YVR5cGVzLnVuc2hpZnQoIHRtcFsgMSBdICk7DQoJCQkJCQkJCX0NCgkJCQkJCQkJYnJlYWs7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfQ0KDQoJCQkJLy8gQXBwbHkgY29udmVydGVyIChpZiBub3QgYW4gZXF1aXZhbGVuY2UpDQoJCQkJaWYgKCBjb252ICE9PSB0cnVlICkgew0KDQoJCQkJCS8vIFVubGVzcyBlcnJvcnMgYXJlIGFsbG93ZWQgdG8gYnViYmxlLCBjYXRjaCBhbmQgcmV0dXJuIHRoZW0NCgkJCQkJaWYgKCBjb252ICYmIHNbICJ0aHJvd3MiIF0gKSB7DQoJCQkJCQlyZXNwb25zZSA9IGNvbnYoIHJlc3BvbnNlICk7DQoJCQkJCX0gZWxzZSB7DQoJCQkJCQl0cnkgew0KCQkJCQkJCXJlc3BvbnNlID0gY29udiggcmVzcG9uc2UgKTsNCgkJCQkJCX0gY2F0Y2ggKCBlICkgew0KCQkJCQkJCXJldHVybiB7IHN0YXRlOiAicGFyc2VyZXJyb3IiLCBlcnJvcjogY29udiA/IGUgOiAiTm8gY29udmVyc2lvbiBmcm9tICIgKyBwcmV2ICsgIiB0byAiICsgY3VycmVudCB9Ow0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJfQ0KDQoJcmV0dXJuIHsgc3RhdGU6ICJzdWNjZXNzIiwgZGF0YTogcmVzcG9uc2UgfTsNCn0NCg0KalF1ZXJ5LmV4dGVuZCh7DQoNCgkvLyBDb3VudGVyIGZvciBob2xkaW5nIHRoZSBudW1iZXIgb2YgYWN0aXZlIHF1ZXJpZXMNCglhY3RpdmU6IDAsDQoNCgkvLyBMYXN0LU1vZGlmaWVkIGhlYWRlciBjYWNoZSBmb3IgbmV4dCByZXF1ZXN0DQoJbGFzdE1vZGlmaWVkOiB7fSwNCglldGFnOiB7fSwNCg0KCWFqYXhTZXR0aW5nczogew0KCQl1cmw6IGFqYXhMb2NhdGlvbiwNCgkJdHlwZTogIkdFVCIsDQoJCWlzTG9jYWw6IHJsb2NhbFByb3RvY29sLnRlc3QoIGFqYXhMb2NQYXJ0c1sgMSBdICksDQoJCWdsb2JhbDogdHJ1ZSwNCgkJcHJvY2Vzc0RhdGE6IHRydWUsDQoJCWFzeW5jOiB0cnVlLA0KCQljb250ZW50VHlwZTogImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIsDQoJCS8qDQoJCXRpbWVvdXQ6IDAsDQoJCWRhdGE6IG51bGwsDQoJCWRhdGFUeXBlOiBudWxsLA0KCQl1c2VybmFtZTogbnVsbCwNCgkJcGFzc3dvcmQ6IG51bGwsDQoJCWNhY2hlOiBudWxsLA0KCQl0aHJvd3M6IGZhbHNlLA0KCQl0cmFkaXRpb25hbDogZmFsc2UsDQoJCWhlYWRlcnM6IHt9LA0KCQkqLw0KDQoJCWFjY2VwdHM6IHsNCgkJCSIqIjogYWxsVHlwZXMsDQoJCQl0ZXh0OiAidGV4dC9wbGFpbiIsDQoJCQlodG1sOiAidGV4dC9odG1sIiwNCgkJCXhtbDogImFwcGxpY2F0aW9uL3htbCwgdGV4dC94bWwiLA0KCQkJanNvbjogImFwcGxpY2F0aW9uL2pzb24sIHRleHQvamF2YXNjcmlwdCINCgkJfSwNCg0KCQljb250ZW50czogew0KCQkJeG1sOiAveG1sLywNCgkJCWh0bWw6IC9odG1sLywNCgkJCWpzb246IC9qc29uLw0KCQl9LA0KDQoJCXJlc3BvbnNlRmllbGRzOiB7DQoJCQl4bWw6ICJyZXNwb25zZVhNTCIsDQoJCQl0ZXh0OiAicmVzcG9uc2VUZXh0IiwNCgkJCWpzb246ICJyZXNwb25zZUpTT04iDQoJCX0sDQoNCgkJLy8gRGF0YSBjb252ZXJ0ZXJzDQoJCS8vIEtleXMgc2VwYXJhdGUgc291cmNlIChvciBjYXRjaGFsbCAiKiIpIGFuZCBkZXN0aW5hdGlvbiB0eXBlcyB3aXRoIGEgc2luZ2xlIHNwYWNlDQoJCWNvbnZlcnRlcnM6IHsNCg0KCQkJLy8gQ29udmVydCBhbnl0aGluZyB0byB0ZXh0DQoJCQkiKiB0ZXh0IjogU3RyaW5nLA0KDQoJCQkvLyBUZXh0IHRvIGh0bWwgKHRydWUgPSBubyB0cmFuc2Zvcm1hdGlvbikNCgkJCSJ0ZXh0IGh0bWwiOiB0cnVlLA0KDQoJCQkvLyBFdmFsdWF0ZSB0ZXh0IGFzIGEganNvbiBleHByZXNzaW9uDQoJCQkidGV4dCBqc29uIjogalF1ZXJ5LnBhcnNlSlNPTiwNCg0KCQkJLy8gUGFyc2UgdGV4dCBhcyB4bWwNCgkJCSJ0ZXh0IHhtbCI6IGpRdWVyeS5wYXJzZVhNTA0KCQl9LA0KDQoJCS8vIEZvciBvcHRpb25zIHRoYXQgc2hvdWxkbid0IGJlIGRlZXAgZXh0ZW5kZWQ6DQoJCS8vIHlvdSBjYW4gYWRkIHlvdXIgb3duIGN1c3RvbSBvcHRpb25zIGhlcmUgaWYNCgkJLy8gYW5kIHdoZW4geW91IGNyZWF0ZSBvbmUgdGhhdCBzaG91bGRuJ3QgYmUNCgkJLy8gZGVlcCBleHRlbmRlZCAoc2VlIGFqYXhFeHRlbmQpDQoJCWZsYXRPcHRpb25zOiB7DQoJCQl1cmw6IHRydWUsDQoJCQljb250ZXh0OiB0cnVlDQoJCX0NCgl9LA0KDQoJLy8gQ3JlYXRlcyBhIGZ1bGwgZmxlZGdlZCBzZXR0aW5ncyBvYmplY3QgaW50byB0YXJnZXQNCgkvLyB3aXRoIGJvdGggYWpheFNldHRpbmdzIGFuZCBzZXR0aW5ncyBmaWVsZHMuDQoJLy8gSWYgdGFyZ2V0IGlzIG9taXR0ZWQsIHdyaXRlcyBpbnRvIGFqYXhTZXR0aW5ncy4NCglhamF4U2V0dXA6IGZ1bmN0aW9uKCB0YXJnZXQsIHNldHRpbmdzICkgew0KCQlyZXR1cm4gc2V0dGluZ3MgPw0KDQoJCQkvLyBCdWlsZGluZyBhIHNldHRpbmdzIG9iamVjdA0KCQkJYWpheEV4dGVuZCggYWpheEV4dGVuZCggdGFyZ2V0LCBqUXVlcnkuYWpheFNldHRpbmdzICksIHNldHRpbmdzICkgOg0KDQoJCQkvLyBFeHRlbmRpbmcgYWpheFNldHRpbmdzDQoJCQlhamF4RXh0ZW5kKCBqUXVlcnkuYWpheFNldHRpbmdzLCB0YXJnZXQgKTsNCgl9LA0KDQoJYWpheFByZWZpbHRlcjogYWRkVG9QcmVmaWx0ZXJzT3JUcmFuc3BvcnRzKCBwcmVmaWx0ZXJzICksDQoJYWpheFRyYW5zcG9ydDogYWRkVG9QcmVmaWx0ZXJzT3JUcmFuc3BvcnRzKCB0cmFuc3BvcnRzICksDQoNCgkvLyBNYWluIG1ldGhvZA0KCWFqYXg6IGZ1bmN0aW9uKCB1cmwsIG9wdGlvbnMgKSB7DQoNCgkJLy8gSWYgdXJsIGlzIGFuIG9iamVjdCwgc2ltdWxhdGUgcHJlLTEuNSBzaWduYXR1cmUNCgkJaWYgKCB0eXBlb2YgdXJsID09PSAib2JqZWN0IiApIHsNCgkJCW9wdGlvbnMgPSB1cmw7DQoJCQl1cmwgPSB1bmRlZmluZWQ7DQoJCX0NCg0KCQkvLyBGb3JjZSBvcHRpb25zIHRvIGJlIGFuIG9iamVjdA0KCQlvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsNCg0KCQl2YXIgdHJhbnNwb3J0LA0KCQkJLy8gVVJMIHdpdGhvdXQgYW50aS1jYWNoZSBwYXJhbQ0KCQkJY2FjaGVVUkwsDQoJCQkvLyBSZXNwb25zZSBoZWFkZXJzDQoJCQlyZXNwb25zZUhlYWRlcnNTdHJpbmcsDQoJCQlyZXNwb25zZUhlYWRlcnMsDQoJCQkvLyB0aW1lb3V0IGhhbmRsZQ0KCQkJdGltZW91dFRpbWVyLA0KCQkJLy8gQ3Jvc3MtZG9tYWluIGRldGVjdGlvbiB2YXJzDQoJCQlwYXJ0cywNCgkJCS8vIFRvIGtub3cgaWYgZ2xvYmFsIGV2ZW50cyBhcmUgdG8gYmUgZGlzcGF0Y2hlZA0KCQkJZmlyZUdsb2JhbHMsDQoJCQkvLyBMb29wIHZhcmlhYmxlDQoJCQlpLA0KCQkJLy8gQ3JlYXRlIHRoZSBmaW5hbCBvcHRpb25zIG9iamVjdA0KCQkJcyA9IGpRdWVyeS5hamF4U2V0dXAoIHt9LCBvcHRpb25zICksDQoJCQkvLyBDYWxsYmFja3MgY29udGV4dA0KCQkJY2FsbGJhY2tDb250ZXh0ID0gcy5jb250ZXh0IHx8IHMsDQoJCQkvLyBDb250ZXh0IGZvciBnbG9iYWwgZXZlbnRzIGlzIGNhbGxiYWNrQ29udGV4dCBpZiBpdCBpcyBhIERPTSBub2RlIG9yIGpRdWVyeSBjb2xsZWN0aW9uDQoJCQlnbG9iYWxFdmVudENvbnRleHQgPSBzLmNvbnRleHQgJiYgKCBjYWxsYmFja0NvbnRleHQubm9kZVR5cGUgfHwgY2FsbGJhY2tDb250ZXh0LmpxdWVyeSApID8NCgkJCQlqUXVlcnkoIGNhbGxiYWNrQ29udGV4dCApIDoNCgkJCQlqUXVlcnkuZXZlbnQsDQoJCQkvLyBEZWZlcnJlZHMNCgkJCWRlZmVycmVkID0galF1ZXJ5LkRlZmVycmVkKCksDQoJCQljb21wbGV0ZURlZmVycmVkID0galF1ZXJ5LkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwNCgkJCS8vIFN0YXR1cy1kZXBlbmRlbnQgY2FsbGJhY2tzDQoJCQlzdGF0dXNDb2RlID0gcy5zdGF0dXNDb2RlIHx8IHt9LA0KCQkJLy8gSGVhZGVycyAodGhleSBhcmUgc2VudCBhbGwgYXQgb25jZSkNCgkJCXJlcXVlc3RIZWFkZXJzID0ge30sDQoJCQlyZXF1ZXN0SGVhZGVyc05hbWVzID0ge30sDQoJCQkvLyBUaGUganFYSFIgc3RhdGUNCgkJCXN0YXRlID0gMCwNCgkJCS8vIERlZmF1bHQgYWJvcnQgbWVzc2FnZQ0KCQkJc3RyQWJvcnQgPSAiY2FuY2VsZWQiLA0KCQkJLy8gRmFrZSB4aHINCgkJCWpxWEhSID0gew0KCQkJCXJlYWR5U3RhdGU6IDAsDQoNCgkJCQkvLyBCdWlsZHMgaGVhZGVycyBoYXNodGFibGUgaWYgbmVlZGVkDQoJCQkJZ2V0UmVzcG9uc2VIZWFkZXI6IGZ1bmN0aW9uKCBrZXkgKSB7DQoJCQkJCXZhciBtYXRjaDsNCgkJCQkJaWYgKCBzdGF0ZSA9PT0gMiApIHsNCgkJCQkJCWlmICggIXJlc3BvbnNlSGVhZGVycyApIHsNCgkJCQkJCQlyZXNwb25zZUhlYWRlcnMgPSB7fTsNCgkJCQkJCQl3aGlsZSAoIChtYXRjaCA9IHJoZWFkZXJzLmV4ZWMoIHJlc3BvbnNlSGVhZGVyc1N0cmluZyApKSApIHsNCgkJCQkJCQkJcmVzcG9uc2VIZWFkZXJzWyBtYXRjaFsxXS50b0xvd2VyQ2FzZSgpIF0gPSBtYXRjaFsgMiBdOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJCQkJCW1hdGNoID0gcmVzcG9uc2VIZWFkZXJzWyBrZXkudG9Mb3dlckNhc2UoKSBdOw0KCQkJCQl9DQoJCQkJCXJldHVybiBtYXRjaCA9PSBudWxsID8gbnVsbCA6IG1hdGNoOw0KCQkJCX0sDQoNCgkJCQkvLyBSYXcgc3RyaW5nDQoJCQkJZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOiBmdW5jdGlvbigpIHsNCgkJCQkJcmV0dXJuIHN0YXRlID09PSAyID8gcmVzcG9uc2VIZWFkZXJzU3RyaW5nIDogbnVsbDsNCgkJCQl9LA0KDQoJCQkJLy8gQ2FjaGVzIHRoZSBoZWFkZXINCgkJCQlzZXRSZXF1ZXN0SGVhZGVyOiBmdW5jdGlvbiggbmFtZSwgdmFsdWUgKSB7DQoJCQkJCXZhciBsbmFtZSA9IG5hbWUudG9Mb3dlckNhc2UoKTsNCgkJCQkJaWYgKCAhc3RhdGUgKSB7DQoJCQkJCQluYW1lID0gcmVxdWVzdEhlYWRlcnNOYW1lc1sgbG5hbWUgXSA9IHJlcXVlc3RIZWFkZXJzTmFtZXNbIGxuYW1lIF0gfHwgbmFtZTsNCgkJCQkJCXJlcXVlc3RIZWFkZXJzWyBuYW1lIF0gPSB2YWx1ZTsNCgkJCQkJfQ0KCQkJCQlyZXR1cm4gdGhpczsNCgkJCQl9LA0KDQoJCQkJLy8gT3ZlcnJpZGVzIHJlc3BvbnNlIGNvbnRlbnQtdHlwZSBoZWFkZXINCgkJCQlvdmVycmlkZU1pbWVUeXBlOiBmdW5jdGlvbiggdHlwZSApIHsNCgkJCQkJaWYgKCAhc3RhdGUgKSB7DQoJCQkJCQlzLm1pbWVUeXBlID0gdHlwZTsNCgkJCQkJfQ0KCQkJCQlyZXR1cm4gdGhpczsNCgkJCQl9LA0KDQoJCQkJLy8gU3RhdHVzLWRlcGVuZGVudCBjYWxsYmFja3MNCgkJCQlzdGF0dXNDb2RlOiBmdW5jdGlvbiggbWFwICkgew0KCQkJCQl2YXIgY29kZTsNCgkJCQkJaWYgKCBtYXAgKSB7DQoJCQkJCQlpZiAoIHN0YXRlIDwgMiApIHsNCgkJCQkJCQlmb3IgKCBjb2RlIGluIG1hcCApIHsNCgkJCQkJCQkJLy8gTGF6eS1hZGQgdGhlIG5ldyBjYWxsYmFjayBpbiBhIHdheSB0aGF0IHByZXNlcnZlcyBvbGQgb25lcw0KCQkJCQkJCQlzdGF0dXNDb2RlWyBjb2RlIF0gPSBbIHN0YXR1c0NvZGVbIGNvZGUgXSwgbWFwWyBjb2RlIF0gXTsNCgkJCQkJCQl9DQoJCQkJCQl9IGVsc2Ugew0KCQkJCQkJCS8vIEV4ZWN1dGUgdGhlIGFwcHJvcHJpYXRlIGNhbGxiYWNrcw0KCQkJCQkJCWpxWEhSLmFsd2F5cyggbWFwWyBqcVhIUi5zdGF0dXMgXSApOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJCXJldHVybiB0aGlzOw0KCQkJCX0sDQoNCgkJCQkvLyBDYW5jZWwgdGhlIHJlcXVlc3QNCgkJCQlhYm9ydDogZnVuY3Rpb24oIHN0YXR1c1RleHQgKSB7DQoJCQkJCXZhciBmaW5hbFRleHQgPSBzdGF0dXNUZXh0IHx8IHN0ckFib3J0Ow0KCQkJCQlpZiAoIHRyYW5zcG9ydCApIHsNCgkJCQkJCXRyYW5zcG9ydC5hYm9ydCggZmluYWxUZXh0ICk7DQoJCQkJCX0NCgkJCQkJZG9uZSggMCwgZmluYWxUZXh0ICk7DQoJCQkJCXJldHVybiB0aGlzOw0KCQkJCX0NCgkJCX07DQoNCgkJLy8gQXR0YWNoIGRlZmVycmVkcw0KCQlkZWZlcnJlZC5wcm9taXNlKCBqcVhIUiApLmNvbXBsZXRlID0gY29tcGxldGVEZWZlcnJlZC5hZGQ7DQoJCWpxWEhSLnN1Y2Nlc3MgPSBqcVhIUi5kb25lOw0KCQlqcVhIUi5lcnJvciA9IGpxWEhSLmZhaWw7DQoNCgkJLy8gUmVtb3ZlIGhhc2ggY2hhcmFjdGVyICgjNzUzMTogYW5kIHN0cmluZyBwcm9tb3Rpb24pDQoJCS8vIEFkZCBwcm90b2NvbCBpZiBub3QgcHJvdmlkZWQgKHByZWZpbHRlcnMgbWlnaHQgZXhwZWN0IGl0KQ0KCQkvLyBIYW5kbGUgZmFsc3kgdXJsIGluIHRoZSBzZXR0aW5ncyBvYmplY3QgKCMxMDA5MzogY29uc2lzdGVuY3kgd2l0aCBvbGQgc2lnbmF0dXJlKQ0KCQkvLyBXZSBhbHNvIHVzZSB0aGUgdXJsIHBhcmFtZXRlciBpZiBhdmFpbGFibGUNCgkJcy51cmwgPSAoICggdXJsIHx8IHMudXJsIHx8IGFqYXhMb2NhdGlvbiApICsgIiIgKS5yZXBsYWNlKCByaGFzaCwgIiIgKQ0KCQkJLnJlcGxhY2UoIHJwcm90b2NvbCwgYWpheExvY1BhcnRzWyAxIF0gKyAiLy8iICk7DQoNCgkJLy8gQWxpYXMgbWV0aG9kIG9wdGlvbiB0byB0eXBlIGFzIHBlciB0aWNrZXQgIzEyMDA0DQoJCXMudHlwZSA9IG9wdGlvbnMubWV0aG9kIHx8IG9wdGlvbnMudHlwZSB8fCBzLm1ldGhvZCB8fCBzLnR5cGU7DQoNCgkJLy8gRXh0cmFjdCBkYXRhVHlwZXMgbGlzdA0KCQlzLmRhdGFUeXBlcyA9IGpRdWVyeS50cmltKCBzLmRhdGFUeXBlIHx8ICIqIiApLnRvTG93ZXJDYXNlKCkubWF0Y2goIHJub3R3aGl0ZSApIHx8IFsgIiIgXTsNCg0KCQkvLyBBIGNyb3NzLWRvbWFpbiByZXF1ZXN0IGlzIGluIG9yZGVyIHdoZW4gd2UgaGF2ZSBhIHByb3RvY29sOmhvc3Q6cG9ydCBtaXNtYXRjaA0KCQlpZiAoIHMuY3Jvc3NEb21haW4gPT0gbnVsbCApIHsNCgkJCXBhcnRzID0gcnVybC5leGVjKCBzLnVybC50b0xvd2VyQ2FzZSgpICk7DQoJCQlzLmNyb3NzRG9tYWluID0gISEoIHBhcnRzICYmDQoJCQkJKCBwYXJ0c1sgMSBdICE9PSBhamF4TG9jUGFydHNbIDEgXSB8fCBwYXJ0c1sgMiBdICE9PSBhamF4TG9jUGFydHNbIDIgXSB8fA0KCQkJCQkoIHBhcnRzWyAzIF0gfHwgKCBwYXJ0c1sgMSBdID09PSAiaHR0cDoiID8gIjgwIiA6ICI0NDMiICkgKSAhPT0NCgkJCQkJCSggYWpheExvY1BhcnRzWyAzIF0gfHwgKCBhamF4TG9jUGFydHNbIDEgXSA9PT0gImh0dHA6IiA/ICI4MCIgOiAiNDQzIiApICkgKQ0KCQkJKTsNCgkJfQ0KDQoJCS8vIENvbnZlcnQgZGF0YSBpZiBub3QgYWxyZWFkeSBhIHN0cmluZw0KCQlpZiAoIHMuZGF0YSAmJiBzLnByb2Nlc3NEYXRhICYmIHR5cGVvZiBzLmRhdGEgIT09ICJzdHJpbmciICkgew0KCQkJcy5kYXRhID0galF1ZXJ5LnBhcmFtKCBzLmRhdGEsIHMudHJhZGl0aW9uYWwgKTsNCgkJfQ0KDQoJCS8vIEFwcGx5IHByZWZpbHRlcnMNCgkJaW5zcGVjdFByZWZpbHRlcnNPclRyYW5zcG9ydHMoIHByZWZpbHRlcnMsIHMsIG9wdGlvbnMsIGpxWEhSICk7DQoNCgkJLy8gSWYgcmVxdWVzdCB3YXMgYWJvcnRlZCBpbnNpZGUgYSBwcmVmaWx0ZXIsIHN0b3AgdGhlcmUNCgkJaWYgKCBzdGF0ZSA9PT0gMiApIHsNCgkJCXJldHVybiBqcVhIUjsNCgkJfQ0KDQoJCS8vIFdlIGNhbiBmaXJlIGdsb2JhbCBldmVudHMgYXMgb2Ygbm93IGlmIGFza2VkIHRvDQoJCS8vIERvbid0IGZpcmUgZXZlbnRzIGlmIGpRdWVyeS5ldmVudCBpcyB1bmRlZmluZWQgaW4gYW4gQU1ELXVzYWdlIHNjZW5hcmlvICgjMTUxMTgpDQoJCWZpcmVHbG9iYWxzID0galF1ZXJ5LmV2ZW50ICYmIHMuZ2xvYmFsOw0KDQoJCS8vIFdhdGNoIGZvciBhIG5ldyBzZXQgb2YgcmVxdWVzdHMNCgkJaWYgKCBmaXJlR2xvYmFscyAmJiBqUXVlcnkuYWN0aXZlKysgPT09IDAgKSB7DQoJCQlqUXVlcnkuZXZlbnQudHJpZ2dlcigiYWpheFN0YXJ0Iik7DQoJCX0NCg0KCQkvLyBVcHBlcmNhc2UgdGhlIHR5cGUNCgkJcy50eXBlID0gcy50eXBlLnRvVXBwZXJDYXNlKCk7DQoNCgkJLy8gRGV0ZXJtaW5lIGlmIHJlcXVlc3QgaGFzIGNvbnRlbnQNCgkJcy5oYXNDb250ZW50ID0gIXJub0NvbnRlbnQudGVzdCggcy50eXBlICk7DQoNCgkJLy8gU2F2ZSB0aGUgVVJMIGluIGNhc2Ugd2UncmUgdG95aW5nIHdpdGggdGhlIElmLU1vZGlmaWVkLVNpbmNlDQoJCS8vIGFuZC9vciBJZi1Ob25lLU1hdGNoIGhlYWRlciBsYXRlciBvbg0KCQljYWNoZVVSTCA9IHMudXJsOw0KDQoJCS8vIE1vcmUgb3B0aW9ucyBoYW5kbGluZyBmb3IgcmVxdWVzdHMgd2l0aCBubyBjb250ZW50DQoJCWlmICggIXMuaGFzQ29udGVudCApIHsNCg0KCQkJLy8gSWYgZGF0YSBpcyBhdmFpbGFibGUsIGFwcGVuZCBkYXRhIHRvIHVybA0KCQkJaWYgKCBzLmRhdGEgKSB7DQoJCQkJY2FjaGVVUkwgPSAoIHMudXJsICs9ICggcnF1ZXJ5LnRlc3QoIGNhY2hlVVJMICkgPyAiJiIgOiAiPyIgKSArIHMuZGF0YSApOw0KCQkJCS8vICM5NjgyOiByZW1vdmUgZGF0YSBzbyB0aGF0IGl0J3Mgbm90IHVzZWQgaW4gYW4gZXZlbnR1YWwgcmV0cnkNCgkJCQlkZWxldGUgcy5kYXRhOw0KCQkJfQ0KDQoJCQkvLyBBZGQgYW50aS1jYWNoZSBpbiB1cmwgaWYgbmVlZGVkDQoJCQlpZiAoIHMuY2FjaGUgPT09IGZhbHNlICkgew0KCQkJCXMudXJsID0gcnRzLnRlc3QoIGNhY2hlVVJMICkgPw0KDQoJCQkJCS8vIElmIHRoZXJlIGlzIGFscmVhZHkgYSAnXycgcGFyYW1ldGVyLCBzZXQgaXRzIHZhbHVlDQoJCQkJCWNhY2hlVVJMLnJlcGxhY2UoIHJ0cywgIiQxXz0iICsgbm9uY2UrKyApIDoNCg0KCQkJCQkvLyBPdGhlcndpc2UgYWRkIG9uZSB0byB0aGUgZW5kDQoJCQkJCWNhY2hlVVJMICsgKCBycXVlcnkudGVzdCggY2FjaGVVUkwgKSA/ICImIiA6ICI/IiApICsgIl89IiArIG5vbmNlKys7DQoJCQl9DQoJCX0NCg0KCQkvLyBTZXQgdGhlIElmLU1vZGlmaWVkLVNpbmNlIGFuZC9vciBJZi1Ob25lLU1hdGNoIGhlYWRlciwgaWYgaW4gaWZNb2RpZmllZCBtb2RlLg0KCQlpZiAoIHMuaWZNb2RpZmllZCApIHsNCgkJCWlmICggalF1ZXJ5Lmxhc3RNb2RpZmllZFsgY2FjaGVVUkwgXSApIHsNCgkJCQlqcVhIUi5zZXRSZXF1ZXN0SGVhZGVyKCAiSWYtTW9kaWZpZWQtU2luY2UiLCBqUXVlcnkubGFzdE1vZGlmaWVkWyBjYWNoZVVSTCBdICk7DQoJCQl9DQoJCQlpZiAoIGpRdWVyeS5ldGFnWyBjYWNoZVVSTCBdICkgew0KCQkJCWpxWEhSLnNldFJlcXVlc3RIZWFkZXIoICJJZi1Ob25lLU1hdGNoIiwgalF1ZXJ5LmV0YWdbIGNhY2hlVVJMIF0gKTsNCgkJCX0NCgkJfQ0KDQoJCS8vIFNldCB0aGUgY29ycmVjdCBoZWFkZXIsIGlmIGRhdGEgaXMgYmVpbmcgc2VudA0KCQlpZiAoIHMuZGF0YSAmJiBzLmhhc0NvbnRlbnQgJiYgcy5jb250ZW50VHlwZSAhPT0gZmFsc2UgfHwgb3B0aW9ucy5jb250ZW50VHlwZSApIHsNCgkJCWpxWEhSLnNldFJlcXVlc3RIZWFkZXIoICJDb250ZW50LVR5cGUiLCBzLmNvbnRlbnRUeXBlICk7DQoJCX0NCg0KCQkvLyBTZXQgdGhlIEFjY2VwdHMgaGVhZGVyIGZvciB0aGUgc2VydmVyLCBkZXBlbmRpbmcgb24gdGhlIGRhdGFUeXBlDQoJCWpxWEhSLnNldFJlcXVlc3RIZWFkZXIoDQoJCQkiQWNjZXB0IiwNCgkJCXMuZGF0YVR5cGVzWyAwIF0gJiYgcy5hY2NlcHRzWyBzLmRhdGFUeXBlc1swXSBdID8NCgkJCQlzLmFjY2VwdHNbIHMuZGF0YVR5cGVzWzBdIF0gKyAoIHMuZGF0YVR5cGVzWyAwIF0gIT09ICIqIiA/ICIsICIgKyBhbGxUeXBlcyArICI7IHE9MC4wMSIgOiAiIiApIDoNCgkJCQlzLmFjY2VwdHNbICIqIiBdDQoJCSk7DQoNCgkJLy8gQ2hlY2sgZm9yIGhlYWRlcnMgb3B0aW9uDQoJCWZvciAoIGkgaW4gcy5oZWFkZXJzICkgew0KCQkJanFYSFIuc2V0UmVxdWVzdEhlYWRlciggaSwgcy5oZWFkZXJzWyBpIF0gKTsNCgkJfQ0KDQoJCS8vIEFsbG93IGN1c3RvbSBoZWFkZXJzL21pbWV0eXBlcyBhbmQgZWFybHkgYWJvcnQNCgkJaWYgKCBzLmJlZm9yZVNlbmQgJiYgKCBzLmJlZm9yZVNlbmQuY2FsbCggY2FsbGJhY2tDb250ZXh0LCBqcVhIUiwgcyApID09PSBmYWxzZSB8fCBzdGF0ZSA9PT0gMiApICkgew0KCQkJLy8gQWJvcnQgaWYgbm90IGRvbmUgYWxyZWFkeSBhbmQgcmV0dXJuDQoJCQlyZXR1cm4ganFYSFIuYWJvcnQoKTsNCgkJfQ0KDQoJCS8vIEFib3J0aW5nIGlzIG5vIGxvbmdlciBhIGNhbmNlbGxhdGlvbg0KCQlzdHJBYm9ydCA9ICJhYm9ydCI7DQoNCgkJLy8gSW5zdGFsbCBjYWxsYmFja3Mgb24gZGVmZXJyZWRzDQoJCWZvciAoIGkgaW4geyBzdWNjZXNzOiAxLCBlcnJvcjogMSwgY29tcGxldGU6IDEgfSApIHsNCgkJCWpxWEhSWyBpIF0oIHNbIGkgXSApOw0KCQl9DQoNCgkJLy8gR2V0IHRyYW5zcG9ydA0KCQl0cmFuc3BvcnQgPSBpbnNwZWN0UHJlZmlsdGVyc09yVHJhbnNwb3J0cyggdHJhbnNwb3J0cywgcywgb3B0aW9ucywganFYSFIgKTsNCg0KCQkvLyBJZiBubyB0cmFuc3BvcnQsIHdlIGF1dG8tYWJvcnQNCgkJaWYgKCAhdHJhbnNwb3J0ICkgew0KCQkJZG9uZSggLTEsICJObyBUcmFuc3BvcnQiICk7DQoJCX0gZWxzZSB7DQoJCQlqcVhIUi5yZWFkeVN0YXRlID0gMTsNCg0KCQkJLy8gU2VuZCBnbG9iYWwgZXZlbnQNCgkJCWlmICggZmlyZUdsb2JhbHMgKSB7DQoJCQkJZ2xvYmFsRXZlbnRDb250ZXh0LnRyaWdnZXIoICJhamF4U2VuZCIsIFsganFYSFIsIHMgXSApOw0KCQkJfQ0KCQkJLy8gVGltZW91dA0KCQkJaWYgKCBzLmFzeW5jICYmIHMudGltZW91dCA+IDAgKSB7DQoJCQkJdGltZW91dFRpbWVyID0gc2V0VGltZW91dChmdW5jdGlvbigpIHsNCgkJCQkJanFYSFIuYWJvcnQoInRpbWVvdXQiKTsNCgkJCQl9LCBzLnRpbWVvdXQgKTsNCgkJCX0NCg0KCQkJdHJ5IHsNCgkJCQlzdGF0ZSA9IDE7DQoJCQkJdHJhbnNwb3J0LnNlbmQoIHJlcXVlc3RIZWFkZXJzLCBkb25lICk7DQoJCQl9IGNhdGNoICggZSApIHsNCgkJCQkvLyBQcm9wYWdhdGUgZXhjZXB0aW9uIGFzIGVycm9yIGlmIG5vdCBkb25lDQoJCQkJaWYgKCBzdGF0ZSA8IDIgKSB7DQoJCQkJCWRvbmUoIC0xLCBlICk7DQoJCQkJLy8gU2ltcGx5IHJldGhyb3cgb3RoZXJ3aXNlDQoJCQkJfSBlbHNlIHsNCgkJCQkJdGhyb3cgZTsNCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQkvLyBDYWxsYmFjayBmb3Igd2hlbiBldmVyeXRoaW5nIGlzIGRvbmUNCgkJZnVuY3Rpb24gZG9uZSggc3RhdHVzLCBuYXRpdmVTdGF0dXNUZXh0LCByZXNwb25zZXMsIGhlYWRlcnMgKSB7DQoJCQl2YXIgaXNTdWNjZXNzLCBzdWNjZXNzLCBlcnJvciwgcmVzcG9uc2UsIG1vZGlmaWVkLA0KCQkJCXN0YXR1c1RleHQgPSBuYXRpdmVTdGF0dXNUZXh0Ow0KDQoJCQkvLyBDYWxsZWQgb25jZQ0KCQkJaWYgKCBzdGF0ZSA9PT0gMiApIHsNCgkJCQlyZXR1cm47DQoJCQl9DQoNCgkJCS8vIFN0YXRlIGlzICJkb25lIiBub3cNCgkJCXN0YXRlID0gMjsNCg0KCQkJLy8gQ2xlYXIgdGltZW91dCBpZiBpdCBleGlzdHMNCgkJCWlmICggdGltZW91dFRpbWVyICkgew0KCQkJCWNsZWFyVGltZW91dCggdGltZW91dFRpbWVyICk7DQoJCQl9DQoNCgkJCS8vIERlcmVmZXJlbmNlIHRyYW5zcG9ydCBmb3IgZWFybHkgZ2FyYmFnZSBjb2xsZWN0aW9uDQoJCQkvLyAobm8gbWF0dGVyIGhvdyBsb25nIHRoZSBqcVhIUiBvYmplY3Qgd2lsbCBiZSB1c2VkKQ0KCQkJdHJhbnNwb3J0ID0gdW5kZWZpbmVkOw0KDQoJCQkvLyBDYWNoZSByZXNwb25zZSBoZWFkZXJzDQoJCQlyZXNwb25zZUhlYWRlcnNTdHJpbmcgPSBoZWFkZXJzIHx8ICIiOw0KDQoJCQkvLyBTZXQgcmVhZHlTdGF0ZQ0KCQkJanFYSFIucmVhZHlTdGF0ZSA9IHN0YXR1cyA+IDAgPyA0IDogMDsNCg0KCQkJLy8gRGV0ZXJtaW5lIGlmIHN1Y2Nlc3NmdWwNCgkJCWlzU3VjY2VzcyA9IHN0YXR1cyA+PSAyMDAgJiYgc3RhdHVzIDwgMzAwIHx8IHN0YXR1cyA9PT0gMzA0Ow0KDQoJCQkvLyBHZXQgcmVzcG9uc2UgZGF0YQ0KCQkJaWYgKCByZXNwb25zZXMgKSB7DQoJCQkJcmVzcG9uc2UgPSBhamF4SGFuZGxlUmVzcG9uc2VzKCBzLCBqcVhIUiwgcmVzcG9uc2VzICk7DQoJCQl9DQoNCgkJCS8vIENvbnZlcnQgbm8gbWF0dGVyIHdoYXQgKHRoYXQgd2F5IHJlc3BvbnNlWFhYIGZpZWxkcyBhcmUgYWx3YXlzIHNldCkNCgkJCXJlc3BvbnNlID0gYWpheENvbnZlcnQoIHMsIHJlc3BvbnNlLCBqcVhIUiwgaXNTdWNjZXNzICk7DQoNCgkJCS8vIElmIHN1Y2Nlc3NmdWwsIGhhbmRsZSB0eXBlIGNoYWluaW5nDQoJCQlpZiAoIGlzU3VjY2VzcyApIHsNCg0KCQkJCS8vIFNldCB0aGUgSWYtTW9kaWZpZWQtU2luY2UgYW5kL29yIElmLU5vbmUtTWF0Y2ggaGVhZGVyLCBpZiBpbiBpZk1vZGlmaWVkIG1vZGUuDQoJCQkJaWYgKCBzLmlmTW9kaWZpZWQgKSB7DQoJCQkJCW1vZGlmaWVkID0ganFYSFIuZ2V0UmVzcG9uc2VIZWFkZXIoIkxhc3QtTW9kaWZpZWQiKTsNCgkJCQkJaWYgKCBtb2RpZmllZCApIHsNCgkJCQkJCWpRdWVyeS5sYXN0TW9kaWZpZWRbIGNhY2hlVVJMIF0gPSBtb2RpZmllZDsNCgkJCQkJfQ0KCQkJCQltb2RpZmllZCA9IGpxWEhSLmdldFJlc3BvbnNlSGVhZGVyKCJldGFnIik7DQoJCQkJCWlmICggbW9kaWZpZWQgKSB7DQoJCQkJCQlqUXVlcnkuZXRhZ1sgY2FjaGVVUkwgXSA9IG1vZGlmaWVkOw0KCQkJCQl9DQoJCQkJfQ0KDQoJCQkJLy8gaWYgbm8gY29udGVudA0KCQkJCWlmICggc3RhdHVzID09PSAyMDQgfHwgcy50eXBlID09PSAiSEVBRCIgKSB7DQoJCQkJCXN0YXR1c1RleHQgPSAibm9jb250ZW50IjsNCg0KCQkJCS8vIGlmIG5vdCBtb2RpZmllZA0KCQkJCX0gZWxzZSBpZiAoIHN0YXR1cyA9PT0gMzA0ICkgew0KCQkJCQlzdGF0dXNUZXh0ID0gIm5vdG1vZGlmaWVkIjsNCg0KCQkJCS8vIElmIHdlIGhhdmUgZGF0YSwgbGV0J3MgY29udmVydCBpdA0KCQkJCX0gZWxzZSB7DQoJCQkJCXN0YXR1c1RleHQgPSByZXNwb25zZS5zdGF0ZTsNCgkJCQkJc3VjY2VzcyA9IHJlc3BvbnNlLmRhdGE7DQoJCQkJCWVycm9yID0gcmVzcG9uc2UuZXJyb3I7DQoJCQkJCWlzU3VjY2VzcyA9ICFlcnJvcjsNCgkJCQl9DQoJCQl9IGVsc2Ugew0KCQkJCS8vIEV4dHJhY3QgZXJyb3IgZnJvbSBzdGF0dXNUZXh0IGFuZCBub3JtYWxpemUgZm9yIG5vbi1hYm9ydHMNCgkJCQllcnJvciA9IHN0YXR1c1RleHQ7DQoJCQkJaWYgKCBzdGF0dXMgfHwgIXN0YXR1c1RleHQgKSB7DQoJCQkJCXN0YXR1c1RleHQgPSAiZXJyb3IiOw0KCQkJCQlpZiAoIHN0YXR1cyA8IDAgKSB7DQoJCQkJCQlzdGF0dXMgPSAwOw0KCQkJCQl9DQoJCQkJfQ0KCQkJfQ0KDQoJCQkvLyBTZXQgZGF0YSBmb3IgdGhlIGZha2UgeGhyIG9iamVjdA0KCQkJanFYSFIuc3RhdHVzID0gc3RhdHVzOw0KCQkJanFYSFIuc3RhdHVzVGV4dCA9ICggbmF0aXZlU3RhdHVzVGV4dCB8fCBzdGF0dXNUZXh0ICkgKyAiIjsNCg0KCQkJLy8gU3VjY2Vzcy9FcnJvcg0KCQkJaWYgKCBpc1N1Y2Nlc3MgKSB7DQoJCQkJZGVmZXJyZWQucmVzb2x2ZVdpdGgoIGNhbGxiYWNrQ29udGV4dCwgWyBzdWNjZXNzLCBzdGF0dXNUZXh0LCBqcVhIUiBdICk7DQoJCQl9IGVsc2Ugew0KCQkJCWRlZmVycmVkLnJlamVjdFdpdGgoIGNhbGxiYWNrQ29udGV4dCwgWyBqcVhIUiwgc3RhdHVzVGV4dCwgZXJyb3IgXSApOw0KCQkJfQ0KDQoJCQkvLyBTdGF0dXMtZGVwZW5kZW50IGNhbGxiYWNrcw0KCQkJanFYSFIuc3RhdHVzQ29kZSggc3RhdHVzQ29kZSApOw0KCQkJc3RhdHVzQ29kZSA9IHVuZGVmaW5lZDsNCg0KCQkJaWYgKCBmaXJlR2xvYmFscyApIHsNCgkJCQlnbG9iYWxFdmVudENvbnRleHQudHJpZ2dlciggaXNTdWNjZXNzID8gImFqYXhTdWNjZXNzIiA6ICJhamF4RXJyb3IiLA0KCQkJCQlbIGpxWEhSLCBzLCBpc1N1Y2Nlc3MgPyBzdWNjZXNzIDogZXJyb3IgXSApOw0KCQkJfQ0KDQoJCQkvLyBDb21wbGV0ZQ0KCQkJY29tcGxldGVEZWZlcnJlZC5maXJlV2l0aCggY2FsbGJhY2tDb250ZXh0LCBbIGpxWEhSLCBzdGF0dXNUZXh0IF0gKTsNCg0KCQkJaWYgKCBmaXJlR2xvYmFscyApIHsNCgkJCQlnbG9iYWxFdmVudENvbnRleHQudHJpZ2dlciggImFqYXhDb21wbGV0ZSIsIFsganFYSFIsIHMgXSApOw0KCQkJCS8vIEhhbmRsZSB0aGUgZ2xvYmFsIEFKQVggY291bnRlcg0KCQkJCWlmICggISggLS1qUXVlcnkuYWN0aXZlICkgKSB7DQoJCQkJCWpRdWVyeS5ldmVudC50cmlnZ2VyKCJhamF4U3RvcCIpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KDQoJCXJldHVybiBqcVhIUjsNCgl9LA0KDQoJZ2V0SlNPTjogZnVuY3Rpb24oIHVybCwgZGF0YSwgY2FsbGJhY2sgKSB7DQoJCXJldHVybiBqUXVlcnkuZ2V0KCB1cmwsIGRhdGEsIGNhbGxiYWNrLCAianNvbiIgKTsNCgl9LA0KDQoJZ2V0U2NyaXB0OiBmdW5jdGlvbiggdXJsLCBjYWxsYmFjayApIHsNCgkJcmV0dXJuIGpRdWVyeS5nZXQoIHVybCwgdW5kZWZpbmVkLCBjYWxsYmFjaywgInNjcmlwdCIgKTsNCgl9DQp9KTsNCg0KalF1ZXJ5LmVhY2goIFsgImdldCIsICJwb3N0IiBdLCBmdW5jdGlvbiggaSwgbWV0aG9kICkgew0KCWpRdWVyeVsgbWV0aG9kIF0gPSBmdW5jdGlvbiggdXJsLCBkYXRhLCBjYWxsYmFjaywgdHlwZSApIHsNCgkJLy8gU2hpZnQgYXJndW1lbnRzIGlmIGRhdGEgYXJndW1lbnQgd2FzIG9taXR0ZWQNCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggZGF0YSApICkgew0KCQkJdHlwZSA9IHR5cGUgfHwgY2FsbGJhY2s7DQoJCQljYWxsYmFjayA9IGRhdGE7DQoJCQlkYXRhID0gdW5kZWZpbmVkOw0KCQl9DQoNCgkJcmV0dXJuIGpRdWVyeS5hamF4KHsNCgkJCXVybDogdXJsLA0KCQkJdHlwZTogbWV0aG9kLA0KCQkJZGF0YVR5cGU6IHR5cGUsDQoJCQlkYXRhOiBkYXRhLA0KCQkJc3VjY2VzczogY2FsbGJhY2sNCgkJfSk7DQoJfTsNCn0pOw0KDQoNCmpRdWVyeS5fZXZhbFVybCA9IGZ1bmN0aW9uKCB1cmwgKSB7DQoJcmV0dXJuIGpRdWVyeS5hamF4KHsNCgkJdXJsOiB1cmwsDQoJCXR5cGU6ICJHRVQiLA0KCQlkYXRhVHlwZTogInNjcmlwdCIsDQoJCWFzeW5jOiBmYWxzZSwNCgkJZ2xvYmFsOiBmYWxzZSwNCgkJInRocm93cyI6IHRydWUNCgl9KTsNCn07DQoNCg0KalF1ZXJ5LmZuLmV4dGVuZCh7DQoJd3JhcEFsbDogZnVuY3Rpb24oIGh0bWwgKSB7DQoJCXZhciB3cmFwOw0KDQoJCWlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIGh0bWwgKSApIHsNCgkJCXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oIGkgKSB7DQoJCQkJalF1ZXJ5KCB0aGlzICkud3JhcEFsbCggaHRtbC5jYWxsKHRoaXMsIGkpICk7DQoJCQl9KTsNCgkJfQ0KDQoJCWlmICggdGhpc1sgMCBdICkgew0KDQoJCQkvLyBUaGUgZWxlbWVudHMgdG8gd3JhcCB0aGUgdGFyZ2V0IGFyb3VuZA0KCQkJd3JhcCA9IGpRdWVyeSggaHRtbCwgdGhpc1sgMCBdLm93bmVyRG9jdW1lbnQgKS5lcSggMCApLmNsb25lKCB0cnVlICk7DQoNCgkJCWlmICggdGhpc1sgMCBdLnBhcmVudE5vZGUgKSB7DQoJCQkJd3JhcC5pbnNlcnRCZWZvcmUoIHRoaXNbIDAgXSApOw0KCQkJfQ0KDQoJCQl3cmFwLm1hcChmdW5jdGlvbigpIHsNCgkJCQl2YXIgZWxlbSA9IHRoaXM7DQoNCgkJCQl3aGlsZSAoIGVsZW0uZmlyc3RFbGVtZW50Q2hpbGQgKSB7DQoJCQkJCWVsZW0gPSBlbGVtLmZpcnN0RWxlbWVudENoaWxkOw0KCQkJCX0NCg0KCQkJCXJldHVybiBlbGVtOw0KCQkJfSkuYXBwZW5kKCB0aGlzICk7DQoJCX0NCg0KCQlyZXR1cm4gdGhpczsNCgl9LA0KDQoJd3JhcElubmVyOiBmdW5jdGlvbiggaHRtbCApIHsNCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggaHRtbCApICkgew0KCQkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiggaSApIHsNCgkJCQlqUXVlcnkoIHRoaXMgKS53cmFwSW5uZXIoIGh0bWwuY2FsbCh0aGlzLCBpKSApOw0KCQkJfSk7DQoJCX0NCg0KCQlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgew0KCQkJdmFyIHNlbGYgPSBqUXVlcnkoIHRoaXMgKSwNCgkJCQljb250ZW50cyA9IHNlbGYuY29udGVudHMoKTsNCg0KCQkJaWYgKCBjb250ZW50cy5sZW5ndGggKSB7DQoJCQkJY29udGVudHMud3JhcEFsbCggaHRtbCApOw0KDQoJCQl9IGVsc2Ugew0KCQkJCXNlbGYuYXBwZW5kKCBodG1sICk7DQoJCQl9DQoJCX0pOw0KCX0sDQoNCgl3cmFwOiBmdW5jdGlvbiggaHRtbCApIHsNCgkJdmFyIGlzRnVuY3Rpb24gPSBqUXVlcnkuaXNGdW5jdGlvbiggaHRtbCApOw0KDQoJCXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oIGkgKSB7DQoJCQlqUXVlcnkoIHRoaXMgKS53cmFwQWxsKCBpc0Z1bmN0aW9uID8gaHRtbC5jYWxsKHRoaXMsIGkpIDogaHRtbCApOw0KCQl9KTsNCgl9LA0KDQoJdW53cmFwOiBmdW5jdGlvbigpIHsNCgkJcmV0dXJuIHRoaXMucGFyZW50KCkuZWFjaChmdW5jdGlvbigpIHsNCgkJCWlmICggIWpRdWVyeS5ub2RlTmFtZSggdGhpcywgImJvZHkiICkgKSB7DQoJCQkJalF1ZXJ5KCB0aGlzICkucmVwbGFjZVdpdGgoIHRoaXMuY2hpbGROb2RlcyApOw0KCQkJfQ0KCQl9KS5lbmQoKTsNCgl9DQp9KTsNCg0KDQpqUXVlcnkuZXhwci5maWx0ZXJzLmhpZGRlbiA9IGZ1bmN0aW9uKCBlbGVtICkgew0KCS8vIFN1cHBvcnQ6IE9wZXJhIDw9IDEyLjEyDQoJLy8gT3BlcmEgcmVwb3J0cyBvZmZzZXRXaWR0aHMgYW5kIG9mZnNldEhlaWdodHMgbGVzcyB0aGFuIHplcm8gb24gc29tZSBlbGVtZW50cw0KCXJldHVybiBlbGVtLm9mZnNldFdpZHRoIDw9IDAgJiYgZWxlbS5vZmZzZXRIZWlnaHQgPD0gMDsNCn07DQpqUXVlcnkuZXhwci5maWx0ZXJzLnZpc2libGUgPSBmdW5jdGlvbiggZWxlbSApIHsNCglyZXR1cm4gIWpRdWVyeS5leHByLmZpbHRlcnMuaGlkZGVuKCBlbGVtICk7DQp9Ow0KDQoNCg0KDQp2YXIgcjIwID0gLyUyMC9nLA0KCXJicmFja2V0ID0gL1xbXF0kLywNCglyQ1JMRiA9IC9ccj9cbi9nLA0KCXJzdWJtaXR0ZXJUeXBlcyA9IC9eKD86c3VibWl0fGJ1dHRvbnxpbWFnZXxyZXNldHxmaWxlKSQvaSwNCglyc3VibWl0dGFibGUgPSAvXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxrZXlnZW4pL2k7DQoNCmZ1bmN0aW9uIGJ1aWxkUGFyYW1zKCBwcmVmaXgsIG9iaiwgdHJhZGl0aW9uYWwsIGFkZCApIHsNCgl2YXIgbmFtZTsNCg0KCWlmICggalF1ZXJ5LmlzQXJyYXkoIG9iaiApICkgew0KCQkvLyBTZXJpYWxpemUgYXJyYXkgaXRlbS4NCgkJalF1ZXJ5LmVhY2goIG9iaiwgZnVuY3Rpb24oIGksIHYgKSB7DQoJCQlpZiAoIHRyYWRpdGlvbmFsIHx8IHJicmFja2V0LnRlc3QoIHByZWZpeCApICkgew0KCQkJCS8vIFRyZWF0IGVhY2ggYXJyYXkgaXRlbSBhcyBhIHNjYWxhci4NCgkJCQlhZGQoIHByZWZpeCwgdiApOw0KDQoJCQl9IGVsc2Ugew0KCQkJCS8vIEl0ZW0gaXMgbm9uLXNjYWxhciAoYXJyYXkgb3Igb2JqZWN0KSwgZW5jb2RlIGl0cyBudW1lcmljIGluZGV4Lg0KCQkJCWJ1aWxkUGFyYW1zKCBwcmVmaXggKyAiWyIgKyAoIHR5cGVvZiB2ID09PSAib2JqZWN0IiA/IGkgOiAiIiApICsgIl0iLCB2LCB0cmFkaXRpb25hbCwgYWRkICk7DQoJCQl9DQoJCX0pOw0KDQoJfSBlbHNlIGlmICggIXRyYWRpdGlvbmFsICYmIGpRdWVyeS50eXBlKCBvYmogKSA9PT0gIm9iamVjdCIgKSB7DQoJCS8vIFNlcmlhbGl6ZSBvYmplY3QgaXRlbS4NCgkJZm9yICggbmFtZSBpbiBvYmogKSB7DQoJCQlidWlsZFBhcmFtcyggcHJlZml4ICsgIlsiICsgbmFtZSArICJdIiwgb2JqWyBuYW1lIF0sIHRyYWRpdGlvbmFsLCBhZGQgKTsNCgkJfQ0KDQoJfSBlbHNlIHsNCgkJLy8gU2VyaWFsaXplIHNjYWxhciBpdGVtLg0KCQlhZGQoIHByZWZpeCwgb2JqICk7DQoJfQ0KfQ0KDQovLyBTZXJpYWxpemUgYW4gYXJyYXkgb2YgZm9ybSBlbGVtZW50cyBvciBhIHNldCBvZg0KLy8ga2V5L3ZhbHVlcyBpbnRvIGEgcXVlcnkgc3RyaW5nDQpqUXVlcnkucGFyYW0gPSBmdW5jdGlvbiggYSwgdHJhZGl0aW9uYWwgKSB7DQoJdmFyIHByZWZpeCwNCgkJcyA9IFtdLA0KCQlhZGQgPSBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsNCgkJCS8vIElmIHZhbHVlIGlzIGEgZnVuY3Rpb24sIGludm9rZSBpdCBhbmQgcmV0dXJuIGl0cyB2YWx1ZQ0KCQkJdmFsdWUgPSBqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWUgKSA/IHZhbHVlKCkgOiAoIHZhbHVlID09IG51bGwgPyAiIiA6IHZhbHVlICk7DQoJCQlzWyBzLmxlbmd0aCBdID0gZW5jb2RlVVJJQ29tcG9uZW50KCBrZXkgKSArICI9IiArIGVuY29kZVVSSUNvbXBvbmVudCggdmFsdWUgKTsNCgkJfTsNCg0KCS8vIFNldCB0cmFkaXRpb25hbCB0byB0cnVlIGZvciBqUXVlcnkgPD0gMS4zLjIgYmVoYXZpb3IuDQoJaWYgKCB0cmFkaXRpb25hbCA9PT0gdW5kZWZpbmVkICkgew0KCQl0cmFkaXRpb25hbCA9IGpRdWVyeS5hamF4U2V0dGluZ3MgJiYgalF1ZXJ5LmFqYXhTZXR0aW5ncy50cmFkaXRpb25hbDsNCgl9DQoNCgkvLyBJZiBhbiBhcnJheSB3YXMgcGFzc2VkIGluLCBhc3N1bWUgdGhhdCBpdCBpcyBhbiBhcnJheSBvZiBmb3JtIGVsZW1lbnRzLg0KCWlmICggalF1ZXJ5LmlzQXJyYXkoIGEgKSB8fCAoIGEuanF1ZXJ5ICYmICFqUXVlcnkuaXNQbGFpbk9iamVjdCggYSApICkgKSB7DQoJCS8vIFNlcmlhbGl6ZSB0aGUgZm9ybSBlbGVtZW50cw0KCQlqUXVlcnkuZWFjaCggYSwgZnVuY3Rpb24oKSB7DQoJCQlhZGQoIHRoaXMubmFtZSwgdGhpcy52YWx1ZSApOw0KCQl9KTsNCg0KCX0gZWxzZSB7DQoJCS8vIElmIHRyYWRpdGlvbmFsLCBlbmNvZGUgdGhlICJvbGQiIHdheSAodGhlIHdheSAxLjMuMiBvciBvbGRlcg0KCQkvLyBkaWQgaXQpLCBvdGhlcndpc2UgZW5jb2RlIHBhcmFtcyByZWN1cnNpdmVseS4NCgkJZm9yICggcHJlZml4IGluIGEgKSB7DQoJCQlidWlsZFBhcmFtcyggcHJlZml4LCBhWyBwcmVmaXggXSwgdHJhZGl0aW9uYWwsIGFkZCApOw0KCQl9DQoJfQ0KDQoJLy8gUmV0dXJuIHRoZSByZXN1bHRpbmcgc2VyaWFsaXphdGlvbg0KCXJldHVybiBzLmpvaW4oICImIiApLnJlcGxhY2UoIHIyMCwgIisiICk7DQp9Ow0KDQpqUXVlcnkuZm4uZXh0ZW5kKHsNCglzZXJpYWxpemU6IGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4galF1ZXJ5LnBhcmFtKCB0aGlzLnNlcmlhbGl6ZUFycmF5KCkgKTsNCgl9LA0KCXNlcmlhbGl6ZUFycmF5OiBmdW5jdGlvbigpIHsNCgkJcmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKCkgew0KCQkJLy8gQ2FuIGFkZCBwcm9wSG9vayBmb3IgImVsZW1lbnRzIiB0byBmaWx0ZXIgb3IgYWRkIGZvcm0gZWxlbWVudHMNCgkJCXZhciBlbGVtZW50cyA9IGpRdWVyeS5wcm9wKCB0aGlzLCAiZWxlbWVudHMiICk7DQoJCQlyZXR1cm4gZWxlbWVudHMgPyBqUXVlcnkubWFrZUFycmF5KCBlbGVtZW50cyApIDogdGhpczsNCgkJfSkNCgkJLmZpbHRlcihmdW5jdGlvbigpIHsNCgkJCXZhciB0eXBlID0gdGhpcy50eXBlOw0KDQoJCQkvLyBVc2UgLmlzKCAiOmRpc2FibGVkIiApIHNvIHRoYXQgZmllbGRzZXRbZGlzYWJsZWRdIHdvcmtzDQoJCQlyZXR1cm4gdGhpcy5uYW1lICYmICFqUXVlcnkoIHRoaXMgKS5pcyggIjpkaXNhYmxlZCIgKSAmJg0KCQkJCXJzdWJtaXR0YWJsZS50ZXN0KCB0aGlzLm5vZGVOYW1lICkgJiYgIXJzdWJtaXR0ZXJUeXBlcy50ZXN0KCB0eXBlICkgJiYNCgkJCQkoIHRoaXMuY2hlY2tlZCB8fCAhcmNoZWNrYWJsZVR5cGUudGVzdCggdHlwZSApICk7DQoJCX0pDQoJCS5tYXAoZnVuY3Rpb24oIGksIGVsZW0gKSB7DQoJCQl2YXIgdmFsID0galF1ZXJ5KCB0aGlzICkudmFsKCk7DQoNCgkJCXJldHVybiB2YWwgPT0gbnVsbCA/DQoJCQkJbnVsbCA6DQoJCQkJalF1ZXJ5LmlzQXJyYXkoIHZhbCApID8NCgkJCQkJalF1ZXJ5Lm1hcCggdmFsLCBmdW5jdGlvbiggdmFsICkgew0KCQkJCQkJcmV0dXJuIHsgbmFtZTogZWxlbS5uYW1lLCB2YWx1ZTogdmFsLnJlcGxhY2UoIHJDUkxGLCAiXHJcbiIgKSB9Ow0KCQkJCQl9KSA6DQoJCQkJCXsgbmFtZTogZWxlbS5uYW1lLCB2YWx1ZTogdmFsLnJlcGxhY2UoIHJDUkxGLCAiXHJcbiIgKSB9Ow0KCQl9KS5nZXQoKTsNCgl9DQp9KTsNCg0KDQpqUXVlcnkuYWpheFNldHRpbmdzLnhociA9IGZ1bmN0aW9uKCkgew0KCXRyeSB7DQoJCXJldHVybiBuZXcgWE1MSHR0cFJlcXVlc3QoKTsNCgl9IGNhdGNoKCBlICkge30NCn07DQoNCnZhciB4aHJJZCA9IDAsDQoJeGhyQ2FsbGJhY2tzID0ge30sDQoJeGhyU3VjY2Vzc1N0YXR1cyA9IHsNCgkJLy8gZmlsZSBwcm90b2NvbCBhbHdheXMgeWllbGRzIHN0YXR1cyBjb2RlIDAsIGFzc3VtZSAyMDANCgkJMDogMjAwLA0KCQkvLyBTdXBwb3J0OiBJRTkNCgkJLy8gIzE0NTA6IHNvbWV0aW1lcyBJRSByZXR1cm5zIDEyMjMgd2hlbiBpdCBzaG91bGQgYmUgMjA0DQoJCTEyMjM6IDIwNA0KCX0sDQoJeGhyU3VwcG9ydGVkID0galF1ZXJ5LmFqYXhTZXR0aW5ncy54aHIoKTsNCg0KLy8gU3VwcG9ydDogSUU5DQovLyBPcGVuIHJlcXVlc3RzIG11c3QgYmUgbWFudWFsbHkgYWJvcnRlZCBvbiB1bmxvYWQgKCM1MjgwKQ0KLy8gU2VlIGh0dHBzOi8vc3VwcG9ydC5taWNyb3NvZnQuY29tL2tiLzI4NTY3NDYgZm9yIG1vcmUgaW5mbw0KaWYgKCB3aW5kb3cuYXR0YWNoRXZlbnQgKSB7DQoJd2luZG93LmF0dGFjaEV2ZW50KCAib251bmxvYWQiLCBmdW5jdGlvbigpIHsNCgkJZm9yICggdmFyIGtleSBpbiB4aHJDYWxsYmFja3MgKSB7DQoJCQl4aHJDYWxsYmFja3NbIGtleSBdKCk7DQoJCX0NCgl9KTsNCn0NCg0Kc3VwcG9ydC5jb3JzID0gISF4aHJTdXBwb3J0ZWQgJiYgKCAid2l0aENyZWRlbnRpYWxzIiBpbiB4aHJTdXBwb3J0ZWQgKTsNCnN1cHBvcnQuYWpheCA9IHhoclN1cHBvcnRlZCA9ICEheGhyU3VwcG9ydGVkOw0KDQpqUXVlcnkuYWpheFRyYW5zcG9ydChmdW5jdGlvbiggb3B0aW9ucyApIHsNCgl2YXIgY2FsbGJhY2s7DQoNCgkvLyBDcm9zcyBkb21haW4gb25seSBhbGxvd2VkIGlmIHN1cHBvcnRlZCB0aHJvdWdoIFhNTEh0dHBSZXF1ZXN0DQoJaWYgKCBzdXBwb3J0LmNvcnMgfHwgeGhyU3VwcG9ydGVkICYmICFvcHRpb25zLmNyb3NzRG9tYWluICkgew0KCQlyZXR1cm4gew0KCQkJc2VuZDogZnVuY3Rpb24oIGhlYWRlcnMsIGNvbXBsZXRlICkgew0KCQkJCXZhciBpLA0KCQkJCQl4aHIgPSBvcHRpb25zLnhocigpLA0KCQkJCQlpZCA9ICsreGhySWQ7DQoNCgkJCQl4aHIub3Blbiggb3B0aW9ucy50eXBlLCBvcHRpb25zLnVybCwgb3B0aW9ucy5hc3luYywgb3B0aW9ucy51c2VybmFtZSwgb3B0aW9ucy5wYXNzd29yZCApOw0KDQoJCQkJLy8gQXBwbHkgY3VzdG9tIGZpZWxkcyBpZiBwcm92aWRlZA0KCQkJCWlmICggb3B0aW9ucy54aHJGaWVsZHMgKSB7DQoJCQkJCWZvciAoIGkgaW4gb3B0aW9ucy54aHJGaWVsZHMgKSB7DQoJCQkJCQl4aHJbIGkgXSA9IG9wdGlvbnMueGhyRmllbGRzWyBpIF07DQoJCQkJCX0NCgkJCQl9DQoNCgkJCQkvLyBPdmVycmlkZSBtaW1lIHR5cGUgaWYgbmVlZGVkDQoJCQkJaWYgKCBvcHRpb25zLm1pbWVUeXBlICYmIHhoci5vdmVycmlkZU1pbWVUeXBlICkgew0KCQkJCQl4aHIub3ZlcnJpZGVNaW1lVHlwZSggb3B0aW9ucy5taW1lVHlwZSApOw0KCQkJCX0NCg0KCQkJCS8vIFgtUmVxdWVzdGVkLVdpdGggaGVhZGVyDQoJCQkJLy8gRm9yIGNyb3NzLWRvbWFpbiByZXF1ZXN0cywgc2VlaW5nIGFzIGNvbmRpdGlvbnMgZm9yIGEgcHJlZmxpZ2h0IGFyZQ0KCQkJCS8vIGFraW4gdG8gYSBqaWdzYXcgcHV6emxlLCB3ZSBzaW1wbHkgbmV2ZXIgc2V0IGl0IHRvIGJlIHN1cmUuDQoJCQkJLy8gKGl0IGNhbiBhbHdheXMgYmUgc2V0IG9uIGEgcGVyLXJlcXVlc3QgYmFzaXMgb3IgZXZlbiB1c2luZyBhamF4U2V0dXApDQoJCQkJLy8gRm9yIHNhbWUtZG9tYWluIHJlcXVlc3RzLCB3b24ndCBjaGFuZ2UgaGVhZGVyIGlmIGFscmVhZHkgcHJvdmlkZWQuDQoJCQkJaWYgKCAhb3B0aW9ucy5jcm9zc0RvbWFpbiAmJiAhaGVhZGVyc1siWC1SZXF1ZXN0ZWQtV2l0aCJdICkgew0KCQkJCQloZWFkZXJzWyJYLVJlcXVlc3RlZC1XaXRoIl0gPSAiWE1MSHR0cFJlcXVlc3QiOw0KCQkJCX0NCg0KCQkJCS8vIFNldCBoZWFkZXJzDQoJCQkJZm9yICggaSBpbiBoZWFkZXJzICkgew0KCQkJCQl4aHIuc2V0UmVxdWVzdEhlYWRlciggaSwgaGVhZGVyc1sgaSBdICk7DQoJCQkJfQ0KDQoJCQkJLy8gQ2FsbGJhY2sNCgkJCQljYWxsYmFjayA9IGZ1bmN0aW9uKCB0eXBlICkgew0KCQkJCQlyZXR1cm4gZnVuY3Rpb24oKSB7DQoJCQkJCQlpZiAoIGNhbGxiYWNrICkgew0KCQkJCQkJCWRlbGV0ZSB4aHJDYWxsYmFja3NbIGlkIF07DQoJCQkJCQkJY2FsbGJhY2sgPSB4aHIub25sb2FkID0geGhyLm9uZXJyb3IgPSBudWxsOw0KDQoJCQkJCQkJaWYgKCB0eXBlID09PSAiYWJvcnQiICkgew0KCQkJCQkJCQl4aHIuYWJvcnQoKTsNCgkJCQkJCQl9IGVsc2UgaWYgKCB0eXBlID09PSAiZXJyb3IiICkgew0KCQkJCQkJCQljb21wbGV0ZSgNCgkJCQkJCQkJCS8vIGZpbGU6IHByb3RvY29sIGFsd2F5cyB5aWVsZHMgc3RhdHVzIDA7IHNlZSAjODYwNSwgIzE0MjA3DQoJCQkJCQkJCQl4aHIuc3RhdHVzLA0KCQkJCQkJCQkJeGhyLnN0YXR1c1RleHQNCgkJCQkJCQkJKTsNCgkJCQkJCQl9IGVsc2Ugew0KCQkJCQkJCQljb21wbGV0ZSgNCgkJCQkJCQkJCXhoclN1Y2Nlc3NTdGF0dXNbIHhoci5zdGF0dXMgXSB8fCB4aHIuc3RhdHVzLA0KCQkJCQkJCQkJeGhyLnN0YXR1c1RleHQsDQoJCQkJCQkJCQkvLyBTdXBwb3J0OiBJRTkNCgkJCQkJCQkJCS8vIEFjY2Vzc2luZyBiaW5hcnktZGF0YSByZXNwb25zZVRleHQgdGhyb3dzIGFuIGV4Y2VwdGlvbg0KCQkJCQkJCQkJLy8gKCMxMTQyNikNCgkJCQkJCQkJCXR5cGVvZiB4aHIucmVzcG9uc2VUZXh0ID09PSAic3RyaW5nIiA/IHsNCgkJCQkJCQkJCQl0ZXh0OiB4aHIucmVzcG9uc2VUZXh0DQoJCQkJCQkJCQl9IDogdW5kZWZpbmVkLA0KCQkJCQkJCQkJeGhyLmdldEFsbFJlc3BvbnNlSGVhZGVycygpDQoJCQkJCQkJCSk7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9Ow0KCQkJCX07DQoNCgkJCQkvLyBMaXN0ZW4gdG8gZXZlbnRzDQoJCQkJeGhyLm9ubG9hZCA9IGNhbGxiYWNrKCk7DQoJCQkJeGhyLm9uZXJyb3IgPSBjYWxsYmFjaygiZXJyb3IiKTsNCg0KCQkJCS8vIENyZWF0ZSB0aGUgYWJvcnQgY2FsbGJhY2sNCgkJCQljYWxsYmFjayA9IHhockNhbGxiYWNrc1sgaWQgXSA9IGNhbGxiYWNrKCJhYm9ydCIpOw0KDQoJCQkJdHJ5IHsNCgkJCQkJLy8gRG8gc2VuZCB0aGUgcmVxdWVzdCAodGhpcyBtYXkgcmFpc2UgYW4gZXhjZXB0aW9uKQ0KCQkJCQl4aHIuc2VuZCggb3B0aW9ucy5oYXNDb250ZW50ICYmIG9wdGlvbnMuZGF0YSB8fCBudWxsICk7DQoJCQkJfSBjYXRjaCAoIGUgKSB7DQoJCQkJCS8vICMxNDY4MzogT25seSByZXRocm93IGlmIHRoaXMgaGFzbid0IGJlZW4gbm90aWZpZWQgYXMgYW4gZXJyb3IgeWV0DQoJCQkJCWlmICggY2FsbGJhY2sgKSB7DQoJCQkJCQl0aHJvdyBlOw0KCQkJCQl9DQoJCQkJfQ0KCQkJfSwNCg0KCQkJYWJvcnQ6IGZ1bmN0aW9uKCkgew0KCQkJCWlmICggY2FsbGJhY2sgKSB7DQoJCQkJCWNhbGxiYWNrKCk7DQoJCQkJfQ0KCQkJfQ0KCQl9Ow0KCX0NCn0pOw0KDQoNCg0KDQovLyBJbnN0YWxsIHNjcmlwdCBkYXRhVHlwZQ0KalF1ZXJ5LmFqYXhTZXR1cCh7DQoJYWNjZXB0czogew0KCQlzY3JpcHQ6ICJ0ZXh0L2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2VjbWFzY3JpcHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCINCgl9LA0KCWNvbnRlbnRzOiB7DQoJCXNjcmlwdDogLyg/OmphdmF8ZWNtYSlzY3JpcHQvDQoJfSwNCgljb252ZXJ0ZXJzOiB7DQoJCSJ0ZXh0IHNjcmlwdCI6IGZ1bmN0aW9uKCB0ZXh0ICkgew0KCQkJalF1ZXJ5Lmdsb2JhbEV2YWwoIHRleHQgKTsNCgkJCXJldHVybiB0ZXh0Ow0KCQl9DQoJfQ0KfSk7DQoNCi8vIEhhbmRsZSBjYWNoZSdzIHNwZWNpYWwgY2FzZSBhbmQgY3Jvc3NEb21haW4NCmpRdWVyeS5hamF4UHJlZmlsdGVyKCAic2NyaXB0IiwgZnVuY3Rpb24oIHMgKSB7DQoJaWYgKCBzLmNhY2hlID09PSB1bmRlZmluZWQgKSB7DQoJCXMuY2FjaGUgPSBmYWxzZTsNCgl9DQoJaWYgKCBzLmNyb3NzRG9tYWluICkgew0KCQlzLnR5cGUgPSAiR0VUIjsNCgl9DQp9KTsNCg0KLy8gQmluZCBzY3JpcHQgdGFnIGhhY2sgdHJhbnNwb3J0DQpqUXVlcnkuYWpheFRyYW5zcG9ydCggInNjcmlwdCIsIGZ1bmN0aW9uKCBzICkgew0KCS8vIFRoaXMgdHJhbnNwb3J0IG9ubHkgZGVhbHMgd2l0aCBjcm9zcyBkb21haW4gcmVxdWVzdHMNCglpZiAoIHMuY3Jvc3NEb21haW4gKSB7DQoJCXZhciBzY3JpcHQsIGNhbGxiYWNrOw0KCQlyZXR1cm4gew0KCQkJc2VuZDogZnVuY3Rpb24oIF8sIGNvbXBsZXRlICkgew0KCQkJCXNjcmlwdCA9IGpRdWVyeSgiPHNjcmlwdD4iKS5wcm9wKHsNCgkJCQkJYXN5bmM6IHRydWUsDQoJCQkJCWNoYXJzZXQ6IHMuc2NyaXB0Q2hhcnNldCwNCgkJCQkJc3JjOiBzLnVybA0KCQkJCX0pLm9uKA0KCQkJCQkibG9hZCBlcnJvciIsDQoJCQkJCWNhbGxiYWNrID0gZnVuY3Rpb24oIGV2dCApIHsNCgkJCQkJCXNjcmlwdC5yZW1vdmUoKTsNCgkJCQkJCWNhbGxiYWNrID0gbnVsbDsNCgkJCQkJCWlmICggZXZ0ICkgew0KCQkJCQkJCWNvbXBsZXRlKCBldnQudHlwZSA9PT0gImVycm9yIiA/IDQwNCA6IDIwMCwgZXZ0LnR5cGUgKTsNCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCSk7DQoJCQkJZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCggc2NyaXB0WyAwIF0gKTsNCgkJCX0sDQoJCQlhYm9ydDogZnVuY3Rpb24oKSB7DQoJCQkJaWYgKCBjYWxsYmFjayApIHsNCgkJCQkJY2FsbGJhY2soKTsNCgkJCQl9DQoJCQl9DQoJCX07DQoJfQ0KfSk7DQoNCg0KDQoNCnZhciBvbGRDYWxsYmFja3MgPSBbXSwNCglyanNvbnAgPSAvKD0pXD8oPz0mfCQpfFw/XD8vOw0KDQovLyBEZWZhdWx0IGpzb25wIHNldHRpbmdzDQpqUXVlcnkuYWpheFNldHVwKHsNCglqc29ucDogImNhbGxiYWNrIiwNCglqc29ucENhbGxiYWNrOiBmdW5jdGlvbigpIHsNCgkJdmFyIGNhbGxiYWNrID0gb2xkQ2FsbGJhY2tzLnBvcCgpIHx8ICggalF1ZXJ5LmV4cGFuZG8gKyAiXyIgKyAoIG5vbmNlKysgKSApOw0KCQl0aGlzWyBjYWxsYmFjayBdID0gdHJ1ZTsNCgkJcmV0dXJuIGNhbGxiYWNrOw0KCX0NCn0pOw0KDQovLyBEZXRlY3QsIG5vcm1hbGl6ZSBvcHRpb25zIGFuZCBpbnN0YWxsIGNhbGxiYWNrcyBmb3IganNvbnAgcmVxdWVzdHMNCmpRdWVyeS5hamF4UHJlZmlsdGVyKCAianNvbiBqc29ucCIsIGZ1bmN0aW9uKCBzLCBvcmlnaW5hbFNldHRpbmdzLCBqcVhIUiApIHsNCg0KCXZhciBjYWxsYmFja05hbWUsIG92ZXJ3cml0dGVuLCByZXNwb25zZUNvbnRhaW5lciwNCgkJanNvblByb3AgPSBzLmpzb25wICE9PSBmYWxzZSAmJiAoIHJqc29ucC50ZXN0KCBzLnVybCApID8NCgkJCSJ1cmwiIDoNCgkJCXR5cGVvZiBzLmRhdGEgPT09ICJzdHJpbmciICYmICEoIHMuY29udGVudFR5cGUgfHwgIiIgKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSAmJiByanNvbnAudGVzdCggcy5kYXRhICkgJiYgImRhdGEiDQoJCSk7DQoNCgkvLyBIYW5kbGUgaWZmIHRoZSBleHBlY3RlZCBkYXRhIHR5cGUgaXMgImpzb25wIiBvciB3ZSBoYXZlIGEgcGFyYW1ldGVyIHRvIHNldA0KCWlmICgganNvblByb3AgfHwgcy5kYXRhVHlwZXNbIDAgXSA9PT0gImpzb25wIiApIHsNCg0KCQkvLyBHZXQgY2FsbGJhY2sgbmFtZSwgcmVtZW1iZXJpbmcgcHJlZXhpc3RpbmcgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGl0DQoJCWNhbGxiYWNrTmFtZSA9IHMuanNvbnBDYWxsYmFjayA9IGpRdWVyeS5pc0Z1bmN0aW9uKCBzLmpzb25wQ2FsbGJhY2sgKSA/DQoJCQlzLmpzb25wQ2FsbGJhY2soKSA6DQoJCQlzLmpzb25wQ2FsbGJhY2s7DQoNCgkJLy8gSW5zZXJ0IGNhbGxiYWNrIGludG8gdXJsIG9yIGZvcm0gZGF0YQ0KCQlpZiAoIGpzb25Qcm9wICkgew0KCQkJc1sganNvblByb3AgXSA9IHNbIGpzb25Qcm9wIF0ucmVwbGFjZSggcmpzb25wLCAiJDEiICsgY2FsbGJhY2tOYW1lICk7DQoJCX0gZWxzZSBpZiAoIHMuanNvbnAgIT09IGZhbHNlICkgew0KCQkJcy51cmwgKz0gKCBycXVlcnkudGVzdCggcy51cmwgKSA/ICImIiA6ICI/IiApICsgcy5qc29ucCArICI9IiArIGNhbGxiYWNrTmFtZTsNCgkJfQ0KDQoJCS8vIFVzZSBkYXRhIGNvbnZlcnRlciB0byByZXRyaWV2ZSBqc29uIGFmdGVyIHNjcmlwdCBleGVjdXRpb24NCgkJcy5jb252ZXJ0ZXJzWyJzY3JpcHQganNvbiJdID0gZnVuY3Rpb24oKSB7DQoJCQlpZiAoICFyZXNwb25zZUNvbnRhaW5lciApIHsNCgkJCQlqUXVlcnkuZXJyb3IoIGNhbGxiYWNrTmFtZSArICIgd2FzIG5vdCBjYWxsZWQiICk7DQoJCQl9DQoJCQlyZXR1cm4gcmVzcG9uc2VDb250YWluZXJbIDAgXTsNCgkJfTsNCg0KCQkvLyBmb3JjZSBqc29uIGRhdGFUeXBlDQoJCXMuZGF0YVR5cGVzWyAwIF0gPSAianNvbiI7DQoNCgkJLy8gSW5zdGFsbCBjYWxsYmFjaw0KCQlvdmVyd3JpdHRlbiA9IHdpbmRvd1sgY2FsbGJhY2tOYW1lIF07DQoJCXdpbmRvd1sgY2FsbGJhY2tOYW1lIF0gPSBmdW5jdGlvbigpIHsNCgkJCXJlc3BvbnNlQ29udGFpbmVyID0gYXJndW1lbnRzOw0KCQl9Ow0KDQoJCS8vIENsZWFuLXVwIGZ1bmN0aW9uIChmaXJlcyBhZnRlciBjb252ZXJ0ZXJzKQ0KCQlqcVhIUi5hbHdheXMoZnVuY3Rpb24oKSB7DQoJCQkvLyBSZXN0b3JlIHByZWV4aXN0aW5nIHZhbHVlDQoJCQl3aW5kb3dbIGNhbGxiYWNrTmFtZSBdID0gb3ZlcndyaXR0ZW47DQoNCgkJCS8vIFNhdmUgYmFjayBhcyBmcmVlDQoJCQlpZiAoIHNbIGNhbGxiYWNrTmFtZSBdICkgew0KCQkJCS8vIG1ha2Ugc3VyZSB0aGF0IHJlLXVzaW5nIHRoZSBvcHRpb25zIGRvZXNuJ3Qgc2NyZXcgdGhpbmdzIGFyb3VuZA0KCQkJCXMuanNvbnBDYWxsYmFjayA9IG9yaWdpbmFsU2V0dGluZ3MuanNvbnBDYWxsYmFjazsNCg0KCQkJCS8vIHNhdmUgdGhlIGNhbGxiYWNrIG5hbWUgZm9yIGZ1dHVyZSB1c2UNCgkJCQlvbGRDYWxsYmFja3MucHVzaCggY2FsbGJhY2tOYW1lICk7DQoJCQl9DQoNCgkJCS8vIENhbGwgaWYgaXQgd2FzIGEgZnVuY3Rpb24gYW5kIHdlIGhhdmUgYSByZXNwb25zZQ0KCQkJaWYgKCByZXNwb25zZUNvbnRhaW5lciAmJiBqUXVlcnkuaXNGdW5jdGlvbiggb3ZlcndyaXR0ZW4gKSApIHsNCgkJCQlvdmVyd3JpdHRlbiggcmVzcG9uc2VDb250YWluZXJbIDAgXSApOw0KCQkJfQ0KDQoJCQlyZXNwb25zZUNvbnRhaW5lciA9IG92ZXJ3cml0dGVuID0gdW5kZWZpbmVkOw0KCQl9KTsNCg0KCQkvLyBEZWxlZ2F0ZSB0byBzY3JpcHQNCgkJcmV0dXJuICJzY3JpcHQiOw0KCX0NCn0pOw0KDQoNCg0KDQovLyBkYXRhOiBzdHJpbmcgb2YgaHRtbA0KLy8gY29udGV4dCAob3B0aW9uYWwpOiBJZiBzcGVjaWZpZWQsIHRoZSBmcmFnbWVudCB3aWxsIGJlIGNyZWF0ZWQgaW4gdGhpcyBjb250ZXh0LCBkZWZhdWx0cyB0byBkb2N1bWVudA0KLy8ga2VlcFNjcmlwdHMgKG9wdGlvbmFsKTogSWYgdHJ1ZSwgd2lsbCBpbmNsdWRlIHNjcmlwdHMgcGFzc2VkIGluIHRoZSBodG1sIHN0cmluZw0KalF1ZXJ5LnBhcnNlSFRNTCA9IGZ1bmN0aW9uKCBkYXRhLCBjb250ZXh0LCBrZWVwU2NyaXB0cyApIHsNCglpZiAoICFkYXRhIHx8IHR5cGVvZiBkYXRhICE9PSAic3RyaW5nIiApIHsNCgkJcmV0dXJuIG51bGw7DQoJfQ0KCWlmICggdHlwZW9mIGNvbnRleHQgPT09ICJib29sZWFuIiApIHsNCgkJa2VlcFNjcmlwdHMgPSBjb250ZXh0Ow0KCQljb250ZXh0ID0gZmFsc2U7DQoJfQ0KCWNvbnRleHQgPSBjb250ZXh0IHx8IGRvY3VtZW50Ow0KDQoJdmFyIHBhcnNlZCA9IHJzaW5nbGVUYWcuZXhlYyggZGF0YSApLA0KCQlzY3JpcHRzID0gIWtlZXBTY3JpcHRzICYmIFtdOw0KDQoJLy8gU2luZ2xlIHRhZw0KCWlmICggcGFyc2VkICkgew0KCQlyZXR1cm4gWyBjb250ZXh0LmNyZWF0ZUVsZW1lbnQoIHBhcnNlZFsxXSApIF07DQoJfQ0KDQoJcGFyc2VkID0galF1ZXJ5LmJ1aWxkRnJhZ21lbnQoIFsgZGF0YSBdLCBjb250ZXh0LCBzY3JpcHRzICk7DQoNCglpZiAoIHNjcmlwdHMgJiYgc2NyaXB0cy5sZW5ndGggKSB7DQoJCWpRdWVyeSggc2NyaXB0cyApLnJlbW92ZSgpOw0KCX0NCg0KCXJldHVybiBqUXVlcnkubWVyZ2UoIFtdLCBwYXJzZWQuY2hpbGROb2RlcyApOw0KfTsNCg0KDQovLyBLZWVwIGEgY29weSBvZiB0aGUgb2xkIGxvYWQgbWV0aG9kDQp2YXIgX2xvYWQgPSBqUXVlcnkuZm4ubG9hZDsNCg0KLyoqDQogKiBMb2FkIGEgdXJsIGludG8gYSBwYWdlDQogKi8NCmpRdWVyeS5mbi5sb2FkID0gZnVuY3Rpb24oIHVybCwgcGFyYW1zLCBjYWxsYmFjayApIHsNCglpZiAoIHR5cGVvZiB1cmwgIT09ICJzdHJpbmciICYmIF9sb2FkICkgew0KCQlyZXR1cm4gX2xvYWQuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOw0KCX0NCg0KCXZhciBzZWxlY3RvciwgdHlwZSwgcmVzcG9uc2UsDQoJCXNlbGYgPSB0aGlzLA0KCQlvZmYgPSB1cmwuaW5kZXhPZigiICIpOw0KDQoJaWYgKCBvZmYgPj0gMCApIHsNCgkJc2VsZWN0b3IgPSBqUXVlcnkudHJpbSggdXJsLnNsaWNlKCBvZmYgKSApOw0KCQl1cmwgPSB1cmwuc2xpY2UoIDAsIG9mZiApOw0KCX0NCg0KCS8vIElmIGl0J3MgYSBmdW5jdGlvbg0KCWlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIHBhcmFtcyApICkgew0KDQoJCS8vIFdlIGFzc3VtZSB0aGF0IGl0J3MgdGhlIGNhbGxiYWNrDQoJCWNhbGxiYWNrID0gcGFyYW1zOw0KCQlwYXJhbXMgPSB1bmRlZmluZWQ7DQoNCgkvLyBPdGhlcndpc2UsIGJ1aWxkIGEgcGFyYW0gc3RyaW5nDQoJfSBlbHNlIGlmICggcGFyYW1zICYmIHR5cGVvZiBwYXJhbXMgPT09ICJvYmplY3QiICkgew0KCQl0eXBlID0gIlBPU1QiOw0KCX0NCg0KCS8vIElmIHdlIGhhdmUgZWxlbWVudHMgdG8gbW9kaWZ5LCBtYWtlIHRoZSByZXF1ZXN0DQoJaWYgKCBzZWxmLmxlbmd0aCA+IDAgKSB7DQoJCWpRdWVyeS5hamF4KHsNCgkJCXVybDogdXJsLA0KDQoJCQkvLyBpZiAidHlwZSIgdmFyaWFibGUgaXMgdW5kZWZpbmVkLCB0aGVuICJHRVQiIG1ldGhvZCB3aWxsIGJlIHVzZWQNCgkJCXR5cGU6IHR5cGUsDQoJCQlkYXRhVHlwZTogImh0bWwiLA0KCQkJZGF0YTogcGFyYW1zDQoJCX0pLmRvbmUoZnVuY3Rpb24oIHJlc3BvbnNlVGV4dCApIHsNCg0KCQkJLy8gU2F2ZSByZXNwb25zZSBmb3IgdXNlIGluIGNvbXBsZXRlIGNhbGxiYWNrDQoJCQlyZXNwb25zZSA9IGFyZ3VtZW50czsNCg0KCQkJc2VsZi5odG1sKCBzZWxlY3RvciA/DQoNCgkJCQkvLyBJZiBhIHNlbGVjdG9yIHdhcyBzcGVjaWZpZWQsIGxvY2F0ZSB0aGUgcmlnaHQgZWxlbWVudHMgaW4gYSBkdW1teSBkaXYNCgkJCQkvLyBFeGNsdWRlIHNjcmlwdHMgdG8gYXZvaWQgSUUgJ1Blcm1pc3Npb24gRGVuaWVkJyBlcnJvcnMNCgkJCQlqUXVlcnkoIjxkaXY+IikuYXBwZW5kKCBqUXVlcnkucGFyc2VIVE1MKCByZXNwb25zZVRleHQgKSApLmZpbmQoIHNlbGVjdG9yICkgOg0KDQoJCQkJLy8gT3RoZXJ3aXNlIHVzZSB0aGUgZnVsbCByZXN1bHQNCgkJCQlyZXNwb25zZVRleHQgKTsNCg0KCQl9KS5jb21wbGV0ZSggY2FsbGJhY2sgJiYgZnVuY3Rpb24oIGpxWEhSLCBzdGF0dXMgKSB7DQoJCQlzZWxmLmVhY2goIGNhbGxiYWNrLCByZXNwb25zZSB8fCBbIGpxWEhSLnJlc3BvbnNlVGV4dCwgc3RhdHVzLCBqcVhIUiBdICk7DQoJCX0pOw0KCX0NCg0KCXJldHVybiB0aGlzOw0KfTsNCg0KDQoNCg0KLy8gQXR0YWNoIGEgYnVuY2ggb2YgZnVuY3Rpb25zIGZvciBoYW5kbGluZyBjb21tb24gQUpBWCBldmVudHMNCmpRdWVyeS5lYWNoKCBbICJhamF4U3RhcnQiLCAiYWpheFN0b3AiLCAiYWpheENvbXBsZXRlIiwgImFqYXhFcnJvciIsICJhamF4U3VjY2VzcyIsICJhamF4U2VuZCIgXSwgZnVuY3Rpb24oIGksIHR5cGUgKSB7DQoJalF1ZXJ5LmZuWyB0eXBlIF0gPSBmdW5jdGlvbiggZm4gKSB7DQoJCXJldHVybiB0aGlzLm9uKCB0eXBlLCBmbiApOw0KCX07DQp9KTsNCg0KDQoNCg0KalF1ZXJ5LmV4cHIuZmlsdGVycy5hbmltYXRlZCA9IGZ1bmN0aW9uKCBlbGVtICkgew0KCXJldHVybiBqUXVlcnkuZ3JlcChqUXVlcnkudGltZXJzLCBmdW5jdGlvbiggZm4gKSB7DQoJCXJldHVybiBlbGVtID09PSBmbi5lbGVtOw0KCX0pLmxlbmd0aDsNCn07DQoNCg0KDQoNCnZhciBkb2NFbGVtID0gd2luZG93LmRvY3VtZW50LmRvY3VtZW50RWxlbWVudDsNCg0KLyoqDQogKiBHZXRzIGEgd2luZG93IGZyb20gYW4gZWxlbWVudA0KICovDQpmdW5jdGlvbiBnZXRXaW5kb3coIGVsZW0gKSB7DQoJcmV0dXJuIGpRdWVyeS5pc1dpbmRvdyggZWxlbSApID8gZWxlbSA6IGVsZW0ubm9kZVR5cGUgPT09IDkgJiYgZWxlbS5kZWZhdWx0VmlldzsNCn0NCg0KalF1ZXJ5Lm9mZnNldCA9IHsNCglzZXRPZmZzZXQ6IGZ1bmN0aW9uKCBlbGVtLCBvcHRpb25zLCBpICkgew0KCQl2YXIgY3VyUG9zaXRpb24sIGN1ckxlZnQsIGN1ckNTU1RvcCwgY3VyVG9wLCBjdXJPZmZzZXQsIGN1ckNTU0xlZnQsIGNhbGN1bGF0ZVBvc2l0aW9uLA0KCQkJcG9zaXRpb24gPSBqUXVlcnkuY3NzKCBlbGVtLCAicG9zaXRpb24iICksDQoJCQljdXJFbGVtID0galF1ZXJ5KCBlbGVtICksDQoJCQlwcm9wcyA9IHt9Ow0KDQoJCS8vIFNldCBwb3NpdGlvbiBmaXJzdCwgaW4tY2FzZSB0b3AvbGVmdCBhcmUgc2V0IGV2ZW4gb24gc3RhdGljIGVsZW0NCgkJaWYgKCBwb3NpdGlvbiA9PT0gInN0YXRpYyIgKSB7DQoJCQllbGVtLnN0eWxlLnBvc2l0aW9uID0gInJlbGF0aXZlIjsNCgkJfQ0KDQoJCWN1ck9mZnNldCA9IGN1ckVsZW0ub2Zmc2V0KCk7DQoJCWN1ckNTU1RvcCA9IGpRdWVyeS5jc3MoIGVsZW0sICJ0b3AiICk7DQoJCWN1ckNTU0xlZnQgPSBqUXVlcnkuY3NzKCBlbGVtLCAibGVmdCIgKTsNCgkJY2FsY3VsYXRlUG9zaXRpb24gPSAoIHBvc2l0aW9uID09PSAiYWJzb2x1dGUiIHx8IHBvc2l0aW9uID09PSAiZml4ZWQiICkgJiYNCgkJCSggY3VyQ1NTVG9wICsgY3VyQ1NTTGVmdCApLmluZGV4T2YoImF1dG8iKSA+IC0xOw0KDQoJCS8vIE5lZWQgdG8gYmUgYWJsZSB0byBjYWxjdWxhdGUgcG9zaXRpb24gaWYgZWl0aGVyDQoJCS8vIHRvcCBvciBsZWZ0IGlzIGF1dG8gYW5kIHBvc2l0aW9uIGlzIGVpdGhlciBhYnNvbHV0ZSBvciBmaXhlZA0KCQlpZiAoIGNhbGN1bGF0ZVBvc2l0aW9uICkgew0KCQkJY3VyUG9zaXRpb24gPSBjdXJFbGVtLnBvc2l0aW9uKCk7DQoJCQljdXJUb3AgPSBjdXJQb3NpdGlvbi50b3A7DQoJCQljdXJMZWZ0ID0gY3VyUG9zaXRpb24ubGVmdDsNCg0KCQl9IGVsc2Ugew0KCQkJY3VyVG9wID0gcGFyc2VGbG9hdCggY3VyQ1NTVG9wICkgfHwgMDsNCgkJCWN1ckxlZnQgPSBwYXJzZUZsb2F0KCBjdXJDU1NMZWZ0ICkgfHwgMDsNCgkJfQ0KDQoJCWlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIG9wdGlvbnMgKSApIHsNCgkJCW9wdGlvbnMgPSBvcHRpb25zLmNhbGwoIGVsZW0sIGksIGN1ck9mZnNldCApOw0KCQl9DQoNCgkJaWYgKCBvcHRpb25zLnRvcCAhPSBudWxsICkgew0KCQkJcHJvcHMudG9wID0gKCBvcHRpb25zLnRvcCAtIGN1ck9mZnNldC50b3AgKSArIGN1clRvcDsNCgkJfQ0KCQlpZiAoIG9wdGlvbnMubGVmdCAhPSBudWxsICkgew0KCQkJcHJvcHMubGVmdCA9ICggb3B0aW9ucy5sZWZ0IC0gY3VyT2Zmc2V0LmxlZnQgKSArIGN1ckxlZnQ7DQoJCX0NCg0KCQlpZiAoICJ1c2luZyIgaW4gb3B0aW9ucyApIHsNCgkJCW9wdGlvbnMudXNpbmcuY2FsbCggZWxlbSwgcHJvcHMgKTsNCg0KCQl9IGVsc2Ugew0KCQkJY3VyRWxlbS5jc3MoIHByb3BzICk7DQoJCX0NCgl9DQp9Ow0KDQpqUXVlcnkuZm4uZXh0ZW5kKHsNCglvZmZzZXQ6IGZ1bmN0aW9uKCBvcHRpb25zICkgew0KCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggKSB7DQoJCQlyZXR1cm4gb3B0aW9ucyA9PT0gdW5kZWZpbmVkID8NCgkJCQl0aGlzIDoNCgkJCQl0aGlzLmVhY2goZnVuY3Rpb24oIGkgKSB7DQoJCQkJCWpRdWVyeS5vZmZzZXQuc2V0T2Zmc2V0KCB0aGlzLCBvcHRpb25zLCBpICk7DQoJCQkJfSk7DQoJCX0NCg0KCQl2YXIgZG9jRWxlbSwgd2luLA0KCQkJZWxlbSA9IHRoaXNbIDAgXSwNCgkJCWJveCA9IHsgdG9wOiAwLCBsZWZ0OiAwIH0sDQoJCQlkb2MgPSBlbGVtICYmIGVsZW0ub3duZXJEb2N1bWVudDsNCg0KCQlpZiAoICFkb2MgKSB7DQoJCQlyZXR1cm47DQoNCgkJfQ0KDQoJCWRvY0VsZW0gPSBkb2MuZG9jdW1lbnRFbGVtZW50Ow0KDQoJCS8vIE1ha2Ugc3VyZSBpdCdzIG5vdCBhIGRpc2Nvbm5lY3RlZCBET00gbm9kZQ0KCQlpZiAoICFqUXVlcnkuY29udGFpbnMoIGRvY0VsZW0sIGVsZW0gKSApIHsNCgkJCXJldHVybiBib3g7DQoJCX0NCg0KCQkvLyBTdXBwb3J0OiBCbGFja0JlcnJ5IDUsIGlPUyAzIChvcmlnaW5hbCBpUGhvbmUpDQoJCS8vIElmIHdlIGRvbid0IGhhdmUgZ0JDUiwganVzdCB1c2UgMCwwIHJhdGhlciB0aGFuIGVycm9yDQoJCWlmICggdHlwZW9mIGVsZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0ICE9PSBzdHJ1bmRlZmluZWQgKSB7DQoJCQlib3ggPSBlbGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOw0KCQl9DQoJCXdpbiA9IGdldFdpbmRvdyggZG9jICk7DQoJCXJldHVybiB7DQoJCQl0b3A6IGJveC50b3AgKyB3aW4ucGFnZVlPZmZzZXQgLSBkb2NFbGVtLmNsaWVudFRvcCwNCgkJCWxlZnQ6IGJveC5sZWZ0ICsgd2luLnBhZ2VYT2Zmc2V0IC0gZG9jRWxlbS5jbGllbnRMZWZ0DQoJCX07DQoJfSwNCg0KCXBvc2l0aW9uOiBmdW5jdGlvbigpIHsNCgkJaWYgKCAhdGhpc1sgMCBdICkgew0KCQkJcmV0dXJuOw0KCQl9DQoNCgkJdmFyIG9mZnNldFBhcmVudCwgb2Zmc2V0LA0KCQkJZWxlbSA9IHRoaXNbIDAgXSwNCgkJCXBhcmVudE9mZnNldCA9IHsgdG9wOiAwLCBsZWZ0OiAwIH07DQoNCgkJLy8gRml4ZWQgZWxlbWVudHMgYXJlIG9mZnNldCBmcm9tIHdpbmRvdyAocGFyZW50T2Zmc2V0ID0ge3RvcDowLCBsZWZ0OiAwfSwgYmVjYXVzZSBpdCBpcyBpdHMgb25seSBvZmZzZXQgcGFyZW50DQoJCWlmICggalF1ZXJ5LmNzcyggZWxlbSwgInBvc2l0aW9uIiApID09PSAiZml4ZWQiICkgew0KCQkJLy8gQXNzdW1lIGdldEJvdW5kaW5nQ2xpZW50UmVjdCBpcyB0aGVyZSB3aGVuIGNvbXB1dGVkIHBvc2l0aW9uIGlzIGZpeGVkDQoJCQlvZmZzZXQgPSBlbGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOw0KDQoJCX0gZWxzZSB7DQoJCQkvLyBHZXQgKnJlYWwqIG9mZnNldFBhcmVudA0KCQkJb2Zmc2V0UGFyZW50ID0gdGhpcy5vZmZzZXRQYXJlbnQoKTsNCg0KCQkJLy8gR2V0IGNvcnJlY3Qgb2Zmc2V0cw0KCQkJb2Zmc2V0ID0gdGhpcy5vZmZzZXQoKTsNCgkJCWlmICggIWpRdWVyeS5ub2RlTmFtZSggb2Zmc2V0UGFyZW50WyAwIF0sICJodG1sIiApICkgew0KCQkJCXBhcmVudE9mZnNldCA9IG9mZnNldFBhcmVudC5vZmZzZXQoKTsNCgkJCX0NCg0KCQkJLy8gQWRkIG9mZnNldFBhcmVudCBib3JkZXJzDQoJCQlwYXJlbnRPZmZzZXQudG9wICs9IGpRdWVyeS5jc3MoIG9mZnNldFBhcmVudFsgMCBdLCAiYm9yZGVyVG9wV2lkdGgiLCB0cnVlICk7DQoJCQlwYXJlbnRPZmZzZXQubGVmdCArPSBqUXVlcnkuY3NzKCBvZmZzZXRQYXJlbnRbIDAgXSwgImJvcmRlckxlZnRXaWR0aCIsIHRydWUgKTsNCgkJfQ0KDQoJCS8vIFN1YnRyYWN0IHBhcmVudCBvZmZzZXRzIGFuZCBlbGVtZW50IG1hcmdpbnMNCgkJcmV0dXJuIHsNCgkJCXRvcDogb2Zmc2V0LnRvcCAtIHBhcmVudE9mZnNldC50b3AgLSBqUXVlcnkuY3NzKCBlbGVtLCAibWFyZ2luVG9wIiwgdHJ1ZSApLA0KCQkJbGVmdDogb2Zmc2V0LmxlZnQgLSBwYXJlbnRPZmZzZXQubGVmdCAtIGpRdWVyeS5jc3MoIGVsZW0sICJtYXJnaW5MZWZ0IiwgdHJ1ZSApDQoJCX07DQoJfSwNCg0KCW9mZnNldFBhcmVudDogZnVuY3Rpb24oKSB7DQoJCXJldHVybiB0aGlzLm1hcChmdW5jdGlvbigpIHsNCgkJCXZhciBvZmZzZXRQYXJlbnQgPSB0aGlzLm9mZnNldFBhcmVudCB8fCBkb2NFbGVtOw0KDQoJCQl3aGlsZSAoIG9mZnNldFBhcmVudCAmJiAoICFqUXVlcnkubm9kZU5hbWUoIG9mZnNldFBhcmVudCwgImh0bWwiICkgJiYgalF1ZXJ5LmNzcyggb2Zmc2V0UGFyZW50LCAicG9zaXRpb24iICkgPT09ICJzdGF0aWMiICkgKSB7DQoJCQkJb2Zmc2V0UGFyZW50ID0gb2Zmc2V0UGFyZW50Lm9mZnNldFBhcmVudDsNCgkJCX0NCg0KCQkJcmV0dXJuIG9mZnNldFBhcmVudCB8fCBkb2NFbGVtOw0KCQl9KTsNCgl9DQp9KTsNCg0KLy8gQ3JlYXRlIHNjcm9sbExlZnQgYW5kIHNjcm9sbFRvcCBtZXRob2RzDQpqUXVlcnkuZWFjaCggeyBzY3JvbGxMZWZ0OiAicGFnZVhPZmZzZXQiLCBzY3JvbGxUb3A6ICJwYWdlWU9mZnNldCIgfSwgZnVuY3Rpb24oIG1ldGhvZCwgcHJvcCApIHsNCgl2YXIgdG9wID0gInBhZ2VZT2Zmc2V0IiA9PT0gcHJvcDsNCg0KCWpRdWVyeS5mblsgbWV0aG9kIF0gPSBmdW5jdGlvbiggdmFsICkgew0KCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBmdW5jdGlvbiggZWxlbSwgbWV0aG9kLCB2YWwgKSB7DQoJCQl2YXIgd2luID0gZ2V0V2luZG93KCBlbGVtICk7DQoNCgkJCWlmICggdmFsID09PSB1bmRlZmluZWQgKSB7DQoJCQkJcmV0dXJuIHdpbiA/IHdpblsgcHJvcCBdIDogZWxlbVsgbWV0aG9kIF07DQoJCQl9DQoNCgkJCWlmICggd2luICkgew0KCQkJCXdpbi5zY3JvbGxUbygNCgkJCQkJIXRvcCA/IHZhbCA6IHdpbmRvdy5wYWdlWE9mZnNldCwNCgkJCQkJdG9wID8gdmFsIDogd2luZG93LnBhZ2VZT2Zmc2V0DQoJCQkJKTsNCg0KCQkJfSBlbHNlIHsNCgkJCQllbGVtWyBtZXRob2QgXSA9IHZhbDsNCgkJCX0NCgkJfSwgbWV0aG9kLCB2YWwsIGFyZ3VtZW50cy5sZW5ndGgsIG51bGwgKTsNCgl9Ow0KfSk7DQoNCi8vIFN1cHBvcnQ6IFNhZmFyaTw3KywgQ2hyb21lPDM3Kw0KLy8gQWRkIHRoZSB0b3AvbGVmdCBjc3NIb29rcyB1c2luZyBqUXVlcnkuZm4ucG9zaXRpb24NCi8vIFdlYmtpdCBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTA4NA0KLy8gQmxpbmsgYnVnOiBodHRwczovL2NvZGUuZ29vZ2xlLmNvbS9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9MjI5MjgwDQovLyBnZXRDb21wdXRlZFN0eWxlIHJldHVybnMgcGVyY2VudCB3aGVuIHNwZWNpZmllZCBmb3IgdG9wL2xlZnQvYm90dG9tL3JpZ2h0Ow0KLy8gcmF0aGVyIHRoYW4gbWFrZSB0aGUgY3NzIG1vZHVsZSBkZXBlbmQgb24gdGhlIG9mZnNldCBtb2R1bGUsIGp1c3QgY2hlY2sgZm9yIGl0IGhlcmUNCmpRdWVyeS5lYWNoKCBbICJ0b3AiLCAibGVmdCIgXSwgZnVuY3Rpb24oIGksIHByb3AgKSB7DQoJalF1ZXJ5LmNzc0hvb2tzWyBwcm9wIF0gPSBhZGRHZXRIb29rSWYoIHN1cHBvcnQucGl4ZWxQb3NpdGlvbiwNCgkJZnVuY3Rpb24oIGVsZW0sIGNvbXB1dGVkICkgew0KCQkJaWYgKCBjb21wdXRlZCApIHsNCgkJCQljb21wdXRlZCA9IGN1ckNTUyggZWxlbSwgcHJvcCApOw0KCQkJCS8vIElmIGN1ckNTUyByZXR1cm5zIHBlcmNlbnRhZ2UsIGZhbGxiYWNrIHRvIG9mZnNldA0KCQkJCXJldHVybiBybnVtbm9ucHgudGVzdCggY29tcHV0ZWQgKSA/DQoJCQkJCWpRdWVyeSggZWxlbSApLnBvc2l0aW9uKClbIHByb3AgXSArICJweCIgOg0KCQkJCQljb21wdXRlZDsNCgkJCX0NCgkJfQ0KCSk7DQp9KTsNCg0KDQovLyBDcmVhdGUgaW5uZXJIZWlnaHQsIGlubmVyV2lkdGgsIGhlaWdodCwgd2lkdGgsIG91dGVySGVpZ2h0IGFuZCBvdXRlcldpZHRoIG1ldGhvZHMNCmpRdWVyeS5lYWNoKCB7IEhlaWdodDogImhlaWdodCIsIFdpZHRoOiAid2lkdGgiIH0sIGZ1bmN0aW9uKCBuYW1lLCB0eXBlICkgew0KCWpRdWVyeS5lYWNoKCB7IHBhZGRpbmc6ICJpbm5lciIgKyBuYW1lLCBjb250ZW50OiB0eXBlLCAiIjogIm91dGVyIiArIG5hbWUgfSwgZnVuY3Rpb24oIGRlZmF1bHRFeHRyYSwgZnVuY05hbWUgKSB7DQoJCS8vIE1hcmdpbiBpcyBvbmx5IGZvciBvdXRlckhlaWdodCwgb3V0ZXJXaWR0aA0KCQlqUXVlcnkuZm5bIGZ1bmNOYW1lIF0gPSBmdW5jdGlvbiggbWFyZ2luLCB2YWx1ZSApIHsNCgkJCXZhciBjaGFpbmFibGUgPSBhcmd1bWVudHMubGVuZ3RoICYmICggZGVmYXVsdEV4dHJhIHx8IHR5cGVvZiBtYXJnaW4gIT09ICJib29sZWFuIiApLA0KCQkJCWV4dHJhID0gZGVmYXVsdEV4dHJhIHx8ICggbWFyZ2luID09PSB0cnVlIHx8IHZhbHVlID09PSB0cnVlID8gIm1hcmdpbiIgOiAiYm9yZGVyIiApOw0KDQoJCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBmdW5jdGlvbiggZWxlbSwgdHlwZSwgdmFsdWUgKSB7DQoJCQkJdmFyIGRvYzsNCg0KCQkJCWlmICggalF1ZXJ5LmlzV2luZG93KCBlbGVtICkgKSB7DQoJCQkJCS8vIEFzIG9mIDUvOC8yMDEyIHRoaXMgd2lsbCB5aWVsZCBpbmNvcnJlY3QgcmVzdWx0cyBmb3IgTW9iaWxlIFNhZmFyaSwgYnV0IHRoZXJlDQoJCQkJCS8vIGlzbid0IGEgd2hvbGUgbG90IHdlIGNhbiBkby4gU2VlIHB1bGwgcmVxdWVzdCBhdCB0aGlzIFVSTCBmb3IgZGlzY3Vzc2lvbjoNCgkJCQkJLy8gaHR0cHM6Ly9naXRodWIuY29tL2pxdWVyeS9qcXVlcnkvcHVsbC83NjQNCgkJCQkJcmV0dXJuIGVsZW0uZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50WyAiY2xpZW50IiArIG5hbWUgXTsNCgkJCQl9DQoNCgkJCQkvLyBHZXQgZG9jdW1lbnQgd2lkdGggb3IgaGVpZ2h0DQoJCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSA5ICkgew0KCQkJCQlkb2MgPSBlbGVtLmRvY3VtZW50RWxlbWVudDsNCg0KCQkJCQkvLyBFaXRoZXIgc2Nyb2xsW1dpZHRoL0hlaWdodF0gb3Igb2Zmc2V0W1dpZHRoL0hlaWdodF0gb3IgY2xpZW50W1dpZHRoL0hlaWdodF0sDQoJCQkJCS8vIHdoaWNoZXZlciBpcyBncmVhdGVzdA0KCQkJCQlyZXR1cm4gTWF0aC5tYXgoDQoJCQkJCQllbGVtLmJvZHlbICJzY3JvbGwiICsgbmFtZSBdLCBkb2NbICJzY3JvbGwiICsgbmFtZSBdLA0KCQkJCQkJZWxlbS5ib2R5WyAib2Zmc2V0IiArIG5hbWUgXSwgZG9jWyAib2Zmc2V0IiArIG5hbWUgXSwNCgkJCQkJCWRvY1sgImNsaWVudCIgKyBuYW1lIF0NCgkJCQkJKTsNCgkJCQl9DQoNCgkJCQlyZXR1cm4gdmFsdWUgPT09IHVuZGVmaW5lZCA/DQoJCQkJCS8vIEdldCB3aWR0aCBvciBoZWlnaHQgb24gdGhlIGVsZW1lbnQsIHJlcXVlc3RpbmcgYnV0IG5vdCBmb3JjaW5nIHBhcnNlRmxvYXQNCgkJCQkJalF1ZXJ5LmNzcyggZWxlbSwgdHlwZSwgZXh0cmEgKSA6DQoNCgkJCQkJLy8gU2V0IHdpZHRoIG9yIGhlaWdodCBvbiB0aGUgZWxlbWVudA0KCQkJCQlqUXVlcnkuc3R5bGUoIGVsZW0sIHR5cGUsIHZhbHVlLCBleHRyYSApOw0KCQkJfSwgdHlwZSwgY2hhaW5hYmxlID8gbWFyZ2luIDogdW5kZWZpbmVkLCBjaGFpbmFibGUsIG51bGwgKTsNCgkJfTsNCgl9KTsNCn0pOw0KDQoNCi8vIFRoZSBudW1iZXIgb2YgZWxlbWVudHMgY29udGFpbmVkIGluIHRoZSBtYXRjaGVkIGVsZW1lbnQgc2V0DQpqUXVlcnkuZm4uc2l6ZSA9IGZ1bmN0aW9uKCkgew0KCXJldHVybiB0aGlzLmxlbmd0aDsNCn07DQoNCmpRdWVyeS5mbi5hbmRTZWxmID0galF1ZXJ5LmZuLmFkZEJhY2s7DQoNCg0KDQoNCi8vIFJlZ2lzdGVyIGFzIGEgbmFtZWQgQU1EIG1vZHVsZSwgc2luY2UgalF1ZXJ5IGNhbiBiZSBjb25jYXRlbmF0ZWQgd2l0aCBvdGhlcg0KLy8gZmlsZXMgdGhhdCBtYXkgdXNlIGRlZmluZSwgYnV0IG5vdCB2aWEgYSBwcm9wZXIgY29uY2F0ZW5hdGlvbiBzY3JpcHQgdGhhdA0KLy8gdW5kZXJzdGFuZHMgYW5vbnltb3VzIEFNRCBtb2R1bGVzLiBBIG5hbWVkIEFNRCBpcyBzYWZlc3QgYW5kIG1vc3Qgcm9idXN0DQovLyB3YXkgdG8gcmVnaXN0ZXIuIExvd2VyY2FzZSBqcXVlcnkgaXMgdXNlZCBiZWNhdXNlIEFNRCBtb2R1bGUgbmFtZXMgYXJlDQovLyBkZXJpdmVkIGZyb20gZmlsZSBuYW1lcywgYW5kIGpRdWVyeSBpcyBub3JtYWxseSBkZWxpdmVyZWQgaW4gYSBsb3dlcmNhc2UNCi8vIGZpbGUgbmFtZS4gRG8gdGhpcyBhZnRlciBjcmVhdGluZyB0aGUgZ2xvYmFsIHNvIHRoYXQgaWYgYW4gQU1EIG1vZHVsZSB3YW50cw0KLy8gdG8gY2FsbCBub0NvbmZsaWN0IHRvIGhpZGUgdGhpcyB2ZXJzaW9uIG9mIGpRdWVyeSwgaXQgd2lsbCB3b3JrLg0KDQovLyBOb3RlIHRoYXQgZm9yIG1heGltdW0gcG9ydGFiaWxpdHksIGxpYnJhcmllcyB0aGF0IGFyZSBub3QgalF1ZXJ5IHNob3VsZA0KLy8gZGVjbGFyZSB0aGVtc2VsdmVzIGFzIGFub255bW91cyBtb2R1bGVzLCBhbmQgYXZvaWQgc2V0dGluZyBhIGdsb2JhbCBpZiBhbg0KLy8gQU1EIGxvYWRlciBpcyBwcmVzZW50LiBqUXVlcnkgaXMgYSBzcGVjaWFsIGNhc2UuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUNCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9qcmJ1cmtlL3JlcXVpcmVqcy93aWtpL1VwZGF0aW5nLWV4aXN0aW5nLWxpYnJhcmllcyN3aWtpLWFub24NCg0KaWYgKCB0eXBlb2YgZGVmaW5lID09PSAiZnVuY3Rpb24iICYmIGRlZmluZS5hbWQgKSB7DQoJZGVmaW5lKCAianF1ZXJ5IiwgW10sIGZ1bmN0aW9uKCkgew0KCQlyZXR1cm4galF1ZXJ5Ow0KCX0pOw0KfQ0KDQoNCg0KDQp2YXINCgkvLyBNYXAgb3ZlciBqUXVlcnkgaW4gY2FzZSBvZiBvdmVyd3JpdGUNCglfalF1ZXJ5ID0gd2luZG93LmpRdWVyeSwNCg0KCS8vIE1hcCBvdmVyIHRoZSAkIGluIGNhc2Ugb2Ygb3ZlcndyaXRlDQoJXyQgPSB3aW5kb3cuJDsNCg0KalF1ZXJ5Lm5vQ29uZmxpY3QgPSBmdW5jdGlvbiggZGVlcCApIHsNCglpZiAoIHdpbmRvdy4kID09PSBqUXVlcnkgKSB7DQoJCXdpbmRvdy4kID0gXyQ7DQoJfQ0KDQoJaWYgKCBkZWVwICYmIHdpbmRvdy5qUXVlcnkgPT09IGpRdWVyeSApIHsNCgkJd2luZG93LmpRdWVyeSA9IF9qUXVlcnk7DQoJfQ0KDQoJcmV0dXJuIGpRdWVyeTsNCn07DQoNCi8vIEV4cG9zZSBqUXVlcnkgYW5kICQgaWRlbnRpZmllcnMsIGV2ZW4gaW4gQU1EDQovLyAoIzcxMDIjY29tbWVudDoxMCwgaHR0cHM6Ly9naXRodWIuY29tL2pxdWVyeS9qcXVlcnkvcHVsbC81NTcpDQovLyBhbmQgQ29tbW9uSlMgZm9yIGJyb3dzZXIgZW11bGF0b3JzICgjMTM1NjYpDQppZiAoIHR5cGVvZiBub0dsb2JhbCA9PT0gc3RydW5kZWZpbmVkICkgew0KCXdpbmRvdy5qUXVlcnkgPSB3aW5kb3cuJCA9IGpRdWVyeTsNCn0NCg0KDQoNCg0KcmV0dXJuIGpRdWVyeTsNCg0KfSkpOw0K"}},"time_used":86,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":27,"receive":59,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/feat-ico1.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.965Z","timestamp":1785159267965,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/feat-ico1.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"bbd-66136805-de398a34a3d4f977;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3005\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3005,"size_decoded":3330,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"d07344d1fa81b1e5ee782205a51ce488","sha1":"523ee44b6d358cd65b339084cdba1fdd0d821f81","sha256":"d17ab7cad76841ae190e3a197803d7eef1578cd6fa983c1c23962bef496e5e75","sha512":"becfec1e24fad297bc5347cd6f88fd5e2defde6de3fd3df2c15b52ccf5ba2eaeef4484af7d993744777e702438ec05b603d0315f458a881171b6306161ce299a","ssdeep":"","tlshash":"c6515cc8d1642cc12402e19b3cf9d23ba7b28260e9f3a95638d6e82815768fc10ed9c7","first_seen":"2026-07-27T07:08:39.338165Z","last_seen":"2026-07-27T13:35:41.654715Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QjExODM2REIxQjhEMTFFQzg5OUZEQ0QzQUQ1N0ZGREQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QjExODM2REMxQjhEMTFFQzg5OUZEQ0QzQUQ1N0ZGREQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCMTE4MzZEOTFCOEQxMUVDODk5RkRDRDNBRDU3RkZERCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCMTE4MzZEQTFCOEQxMUVDODk5RkRDRDNBRDU3RkZERCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pu7i36IAAAgxSURBVHja7Jx5bFVF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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"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":"walmartfundholdings.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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.322Z","timestamp":1785159268322,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 2287884\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 13:34:28 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=FPlyRTeg%2BE71%2BBsjxlu2aFP%2Bw4K%2BHotYzQ7XNz5wwWYIjrJbfMJY5xPQlToi%2Bg5vzesn3YfRNAl4jhUEWmsaEie3vxrN%2FKVkzlDTOV%2FDML365oSZ0cll5FPUMFn7\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0593094956a3-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":27443,"size_decoded":11055,"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-07-30T06:07:43.524757Z","times_seen":1966,"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":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":"s2.coinmarketcap.com/static/img/coins/64x64/4705.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.651Z","timestamp":1785159268651,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/4705.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2948\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:35:06 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:16:04 GMT\r\ncache-control: max-age=86400\r\netag: \"127a7bdf804468096a60ffca81bccfac\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 28234\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: q88pa0IS6JoxYdJZtCG8ZA1RR8Kdp4QV7OALYSrvqL6BKz5vDiaHwg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.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":2948,"size_decoded":3474,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"127a7bdf804468096a60ffca81bccfac","sha1":"e4b6d66bacfd5a6f6a847874dff49589eebf3136","sha256":"9ac8b8dad05370893f13d3c4148618d073ed55945e225b8a4e0a819bd5979757","sha512":"23f48dd56b95cccf64e5919854e619e580087a74be3d1ec99287043483a3ffe0f209174b9b2b34b0436fa53fdc0f18fb21cabafae5c3ef0829aedd575e48c8e1","ssdeep":"","tlshash":"47512ce7227040bfdfb0f9f520588662a01673994013559fab737171da604fb818796b","first_seen":"2023-09-24T22:56:46Z","last_seen":"2026-07-29T06:14:00.333457Z","times_seen":1365,"resource_available":false,"data":"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"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/NZ.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.441Z","timestamp":1785159269441,"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 /country/NZ.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"5a0f74e16a6666e570491716f8789d90\"\r\nlast-modified: Wed, 20 Dec 2023 06:32:12 GMT\r\ncdn-cachedat: 08/14/2025 09:09:50\r\nx-amz-id-2: N/ssS1yQrIwyVRruwXzKYQq7p+abqRNv1ziIc+xu2gFI/3VSbIsmvpITQTt8qmGrXlSXyZI5ilk=\r\nx-amz-request-id: SKM9CRTCZWDD11DN\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 5a0f74e16a6666e570491716f8789d90\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 59a2aa0c8f727828c6de5fc94cef0a42\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":787,"size_decoded":1306,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (787), with no line terminators","md5":"5a0f74e16a6666e570491716f8789d90","sha1":"30ef3c67bbc2178d38d8c80f916604c7880135b6","sha256":"e99a9149573a35adb03587a50c3af9c0ef7287b7dda403619c23052b782f5311","sha512":"73d509f5e2f359d1c6dbe822a707209c049e0c439dee66ee051fbee68dc2604d1b8b0fecaef061ff987d6394356cfa5d7d419bccf0d7cfcc98c8d8fd130e3661","ssdeep":"","tlshash":"6e016bc1b124c307cd52c21de1781230a06d11d6b0ed55d968e3b75e251fad5fee417c","first_seen":"2023-12-22T15:34:58Z","last_seen":"2026-07-30T06:08:06.423491Z","times_seen":1796,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDE4aDE4VjBIMHYxOHoiIGZpbGw9IiMwRDQ3QTEiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxwYXRoIGQ9Ik0xMSA4LjEzbC4yNS41Mi41Ni0uMTMtLjI1LjUxLjQ1LjM2LS41Ni4xMnYuNThMMTEgOS43M2wtLjQ0LjM2VjkuNUwxMCA5LjRsLjQ1LS4zNi0uMjUtLjUxLjU2LjEzLjI0LS41MnpNMTMgMTIuMTNsLjI1LjUyLjU2LS4xMy0uMjUuNTEuNDUuMzYtLjU2LjEydi41OGwtLjQ1LS4zNi0uNDQuMzZ2LS41OEwxMiAxMy40bC40NS0uMzYtLjI1LS41MS41Ni4xMy4yNC0uNTJ6TTEzLjMgNWwuMjUuNTIuNTYtLjEzLS4yNS41MS40NC4zNi0uNTUuMTJ2LjU4bC0uNDUtLjM2LS40NS4zNnYtLjU4bC0uNTUtLjEyLjQ1LS4zNi0uMjUtLjUxLjU1LjEzLjI1LS41MnpNMTUuMyA4LjM1bC4yNS41MS41Ni0uMTItLjI1LjUxLjQ1LjM2LS41Ni4xMnYuNTdsLS40NC0uMzUtLjQ1LjM1di0uNTdsLS41Ni0uMTIuNDUtLjM2LS4yNS0uNTEuNTYuMTIuMjUtLjUxeiIgZmlsbD0iI0VGNTM1MCIvPjxwYXRoIGQ9Ik05IDRWMEgwdjloNFY2bDMgM2gyVjdMNiA0aDN6IiBmaWxsPSIjRjhGOUZEIi8+PHBhdGggZD0iTTMgMVYwSDF2MUgwdjJoMXY2aDJWM2g2VjFIM3oiIGZpbGw9IiNFRjUzNTAiLz48cGF0aCBkPSJNOSA4TDUgNEg0bDUgNVY4eiIgZmlsbD0iI0VGNTM1MCIvPjwvc3ZnPg=="}},"time_used":66,"timings":{"blocked":30,"dns":1,"connect":1,"send":0,"wait":8,"receive":-1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/element/log?format=json\u0026hasfast=true\u0026authuser=0","fqdn":"translate.googleapis.com","domain":"translate.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":"fetch","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:39.481Z","timestamp":1785159279481,"http_version":"HTTP/3","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":"OPTIONS /element/log?format=json\u0026hasfast=true\u0026authuser=0 HTTP/1.1\r\nHost: translate.googleapis.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\nAccess-Control-Request-Method: POST\r\nAccess-Control-Request-Headers: content-encoding,content-type,x-goog-authuser\r\nReferer: https://walmartfundholdings.com/\r\nOrigin: https://walmartfundholdings.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=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"HTTP/3 200 \r\naccess-control-allow-origin: https://walmartfundholdings.com\r\naccess-control-allow-methods: GET, POST, OPTIONS\r\naccess-control-max-age: 86400\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: X-Playlog-Web,authorization,content-encoding,content-type,x-goog-authuser,origin\r\ncontent-type: text/plain; charset=UTF-8\r\ndate: Mon, 27 Jul 2026 13:34:39 GMT\r\nserver: Playlog\r\ncontent-length: 0\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\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":531,"mime_type":"text/plain; charset=UTF-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":""}},"time_used":32,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":32,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.310Z","timestamp":1785159268310,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 3846784\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 13:34:28 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=Oz2svOngNyZz9iC84tvaiemA6zoB3QJ9bh9OF3zTzbyt6I5MEFo3d1P%2By7X%2BVFe98cR8UJTclK4EywR8ober5aO0lWDVLxf5Td%2BQp2ibTfGTTjRZB1Xh1Hcrwaf1\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0592f94056a3-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":224417,"size_decoded":73401,"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-07-30T06:07:43.512018Z","times_seen":1870,"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":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":15,"receive":10,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/banner.gif","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.326Z","timestamp":1785159268326,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/banner.gif HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/gif\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"35a0d-66136805-77738b65342d63bd;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 219661\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":219661,"size_decoded":219990,"mime_type":"image/gif","magic":"GIF image data, version 89a, 574 x 681","md5":"8cd1b737af5c461888bf26c5312ee935","sha1":"2313d013a6f6d8a08ab962d738b516079032f292","sha256":"9a89d28080c11909bad20e3348325b6c930a38a1c945495a408d099a85a5b6b9","sha512":"3a5ff253e3911ec902d4b7ec7f2393dbfb064ce401ef831797b9ada7abfbe0d7e07d3eb693c1570aa66510ede7371d1e6126b09bf060f822c8ed871eac7abfcc","ssdeep":"3072:OqkEoZ8V0gurEKi4Wn3+TcvnPDkPFcFe2Fp5s8SuxDD23B7yImmKG+PTCkqj7qZV:i8V01rER53mcvP4drwpWeDa3s7G+7KQV","tlshash":"f42422f62a897c1190b5eca25fee82fdbde4c5d025e4b084ed79001b2d49855bcdecc2","first_seen":"2026-07-27T07:08:39.194451Z","last_seen":"2026-07-27T13:35:41.745335Z","times_seen":3,"resource_available":false,"data":"R0lGODlhPgKpAvf/APT49zJ5XlWQejV7YTl+ZY20pV2Wgdjm4ezy8FKOeNLi3D2BaNDg2lmTfsba0kaGbrHMwpK4qa3Jv6nHvM7f2EmIcBJkRn2qmWKZhCBuUaPDtxtrTeLs6PD29NXk3rTOxZm9sHamlMHXz4myo2WbhxZnSQ5iQyx1Wm6gjb/VzVGNdyRwVKTEuICsnECDapS6rHKjkSp0WGqeipy/snSkkk6LdJ7Asx1sT0iGQkWCQYexobbQxnqplxT1oxTTjRTtnS53XE2OSRTnmjRtMBTdlBT7pl2iWRTHhhBtTRTznlmaVRS2exB3VFGOShBnSxSqcxm9gxBxURCSZBCEWxB9WBGYaBCgbRTjlxCMYWWbbFyTZWelaG2jdnOreWKiXvb9+oa3j0qESlOMVur69NTm21qUW26qb1aQWeHr33auiXqyfmGdYNP16E6GUq7r1V2cW83b0FmWVER8RZTszeXv5L314XDTsCzNk47OtpLBm4Lhv+Xz6sLSxa/Zy0XImVCwjkWCRZjdxFbVpzCpfg6mbWrmuLbKvCuXcQ47NjrcoXS9o1/Bn4CsgQ9iSFHmryXfnEmggXnxxRydb6DIow2xdTTnpUJ4Zm2ShQxQQi1QThvhmZWxpCtuU6e6s4efmQ9iPxBJOV2aVQpfQAlfPyljOiD4qSNTNgppTAtgQAxhQf7+/g1hQu708e/08vj7+vP39vn7+v3+/fb5+DODUPz9/fr8+xRmR9/q5t3p5cnc1fv8/PD18/f6+SNwU9zo5ODr5+vy7xhpSxBjROXu6wtxTB9tUOHr6Nvo43+sm5e7rr3UzCdyVpG3qShzV7POxE+MdUOFbCZyVcvd1vL39SlzWJi8r8PY0OTt6qHCtrnSyc3e2GidiWmdirvTyoWvoMze1+bv60yKc+rx7pa7rcrc1WCXg0uSUnCij3inltfl4EKEaxdnSenw7qfGuqvIvefv7IKunUuKRVKSTDx1NTx5OFWWT1maUUF9Ow00MghePjhzMzRxMF2eVeny5f///////yH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDYuMC1jMDAyIDc5LjE2NDQ4OCwgMjAyMC8wNy8xMC0yMjowNjo1MyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIyLjAgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjgxNzU2RUY3MzE5RjExRUM4MzQ3RjVFQjZEOTFFNEIxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjgxNzU2RUY4MzE5RjExRUM4MzQ3RjVFQjZEOTFFNEIxIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODE3NTZFRjUzMTlGMTFFQzgzNDdGNUVCNkQ5MUU0QjEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ODE3NTZFRjYzMTlGMTFFQzgzNDdGNUVCNkQ5MUU0QjEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj39vX08/Lx8O/u7ezr6uno5+bl5OPi4eDf3t3c29rZ2NfW1dTT0tHQz87NzMvKycjHxsXEw8LBwL++vby7urm4t7a1tLOysbCvrq2sq6qpqKempaSjoqGgn56dnJuamZiXlpWUk5KRkI+OjYyLiomIh4aFhIOCgYB/fn18e3p5eHd2dXRzcnFwb25tbGtqaWhnZmVkY2JhYF9eXVxbWllYV1ZVVFNSUVBPTk1MS0pJSEdGRURDQkFAPz49PDs6OTg3NjU0MzIxMC8uLSwrKikoJyYlJCMiISAfHh0cGxoZGBcWFRQTEhEQDw4NDAsKCQgHBgUEAwIBAAAh+QQFMgD/ACwAAAAAPgKpAgAI/wD7CRxIsCDBIQgTKtzHsCFDelq0iJlHkR49ORjlAAIUJkybjyBDguy4MaOcexbpUdTHkmWYiGLotZxJs2ZLijhz6txZMeVFLSh9Ch1KtOi9o0iTKl3KtKnTpjmiSp1KtarVqjiyat3KtatXrvHCih1LtqzZskHSql3Ltm3aJnDjym0ir67du3jz6r1br16cOEoCB/7bt7Dhw4gTH7bHuLHjx5AjRxZMWTC/y5gza868BYyaN5tDazajxoto0VtKG1nN2qDr17BjD1RIe4jDhnIihrlZ0aRGjh07hgwepqTJoCrn2ZzXJmIb5Taj8+ZJXadQQFqKat8u9Kn37+CZXv8dT97q1/Pou55dz96s2/fv58rfS78+X79K3rxZw19/qDiKBSigYZIVaKBklVV22mmdqbHggml08eBmXqixBWutyabhhgbVttBtzWkhB0PTWeTbRhsRR5JxGSGXnHT63COGbjBGV92NOF2XHXc8GhXej0CKV96Q5KVnJHrtJdkefEyuJd9c9kWpV19xhMLfFlhiuYZ+hA3o5WIHhnlggpRNOJpnZoaWmmlpXmaEGmZguBqHdHLoYUIO6TPjGfM0NFNPF/kmKCCCYoQcTjWyJMcZWpwhR6J/4nijUC/1aGl3QWYaJJGcmnfkp2ApKSpaTTb5pFxSpmqXX/utgaUZZnD/oeWWAH5paz1i5oogmYG1yY8ZYEjoa2ZdODjsm13IaUSdzMZ2J0INQaRFG/rcFuk8Kd1T6LYnpZQTpCzN85JE94Ar6aQ+VXrpupq2G16n8EoF6rxZjWqvWKWaeipcqqaK35VmdCGwwLJuqUSttw6o68KO8dprmsAKO+xlFW4xsRHFKtvsxh0+y1BuWgBym5/XZqstt/S4iCi4M9ETYhsy1XhudZSesS677ubsVLzx0jvvvffmy+S+/PYbJauuBqyGGmAwokYXBb+hRMJeMmy1w0qk2UWwE2dmRhpGXEyaF3JybLZAz9oWIj0jWzsdtuuuzHJNMuoGnY0z8yRUGzHd/2ypzoAvxTO8PoMKtL1Cw0c0XUbbV09+WBYLBhh5TP70FgYjTHViVjOMtZlbS9w1P093bcSaZZ/N8bN6SlRt226/nWNROs20z9w0LdooINLlrbdPfPv9d+DE3zN4p4V/evioicdHdOP1/btFwIyAMckklV+O+Ruabw5m57l+/uDWZoyO2ZqmV5y66s3eOQ+jbcAOe02+00Qy7jeNK0a59PtuHfB9Ex53ike843EqeUdanqia55bFQW8v/8oCF7qQBspdbxJNg9r2uue9woBPV+I7DfnMh5lijW41cFof++rkoUU5Sn4wvF3v9LGS6OQJfzRxmXNiJjv/7S2AAtQOAf8DZ0AiIdBIClQSA9viwAf6JQ5lKIN+9pOFLUywgnm4Xva6oCXudZBzHxRTCEPDtPKRkB8VOyHGkoWhFbZvIYAQw0RiSEf8tQ2HNqmbFsJwN//9LyVyDOIAh6izIg7piOlJYpKWyJYmOu6JUpyifqJIGMCsYYJdqB7lJscILhrsi2AM45gcJpo3lPGMlxmbGkmjQjduSCH68Ai1bEPHWtYohniMju7OwDsa+nF2gISZIIVIyJwZsjyIRJIi2cNIJz0vL5CM5CTL8BcA6SUOa6jiBJfmtKdp8JOg7IsZJgEHNHzhnF9AAxwm0QVRNmaMmWGaxVBJOtEd63Sl8YI+l+X/SjolJJZtGBG0aknQgsYulzQRF0zk8EtgWkQMwhwmUYppzGOOJ5nnWSYzm/mWU9XlL1EMqUgJk6o4tOqSmBzYN6XGwYS9YRJ08IdMZ0pTmdJhEmsQJTwvI0968gN9J/RCasygT332059DmIcc+PghgzrVlgiNjg6nlRw/CgWiEvURRTVl0Yti1CsaXQ9HO0oXv4j0rCRtXD2m+JcqShBqsZrVf75oj0mMoaZ4rekYJhGKD8LTlGCYJz1NOLqipoaLWzDqUTe0D6U+ijZPjSwuoyodPYahqnkTyhkimlWfbLVdXb3KV8EaVvc0j3H1OOtIrflAvJjUi/Xgz5WyhLkt/821g2ZAQ153W1M0mAF8YwSsYFFZITNOzLCpgROWvLDYDenDIvuojWSne0fKwggQjAqZD31yhst2FlOf3VRosTLaUJWWLEOjyxlUG9K/2GU+rZXHa99Qj4/SSglZkO2WWPpFMHyBtwCe6RfA0LkQVggMbPKpKo8r1OmRBk6w2kJzNaScO1H3wvez7nIUKhGGzkwoe/wueMP7o/GSt7xaOS+pgsCv9bKXmvWFC1k92tpIxsEur6WSwQTTJe/lgbdkkMIg/EGGQygCwHm4GinRmIbS+BQzpbuYPh0suS7AygwTlk10LYzhC2u4dxV5GWZp5pMQi9hkJC6xiaeC4q2omP/FTRCDi9l7BnnIWHHPbNxry1DfuqyVvvatZksTBgYAB/kQRJbCHwJM4IVhRpKXyVqF0pBgn6ZRyq8qFtOWZuV+7GEPdMhyx7jc5el+GW840SPMcARiQJwZzWkGz5rZ3OZ6JREucn5xHM4ghjsnzpGq+jP38MIlHNM3nOL8L5ClgOggLxrAX/htrvihnzUU1QtroJhnKu1TwjJ4epqenGeWRgc6gFrUBUlbqal76g3rBLu6GXNOWv1qi8RazbPOQa1tLSq4nGHOZ+W1jOMxVjjvy2ivvbFrh20XKSIbV7o1NLMT/WwAo6GvY6LYlLM0Zc+A5skUg1Nhhaq0yeUhe2r/+DSoQ41utHls3ZJtd/94oj8P78QnuXF1ve/9rnzre9/rifO/6SzwJoh1rMC2z3z7fJfXEpvPyJ7EbvFA9UDggdl9uPog+hBx3k4iTNTe+JVfBQZKg/x8Tu7alEuexZMvTeUtP8jLYf5UmSeUZmK+ub2xEwYXfZfnsvb5vnEQljjnOuBFDwLikJ7n6Nl4Svphel1gC8o33DWvUsi85jeveUjEdLdjyGmB8rP2gKl0cok9+2UEZr61S+7kKI/7qD1E98ja/VrVkcOMqDo7beWgOWHIwUn8PkzAf8fnP09m4eUI8Cj+u9dGV2TBk37NSdKn2Hyh/BelvlvOe1/zh7h8/16/jiB+WBvcS0v/5MyQ2I8/+dJqJ/nWxD1uNZhb9rOZe+0LevseUgfeZpYyKSIGWdAGJNEtnWV83oF8hbN8QydS/yZwKoYvjHdw9JFab8Bn9CFFCtd0xxZOnwdg4EcGZNAHirB5eMBbdDB6byB/SyNulWNlicVtqORt6YMlm5Z+T2MGoLYH+NcP6rZ/BtV/4fJh+gMI98ARfKMFWcBrBkgoxCdACvgUDJhI8SB0zfd8cBEPbjaBFMhR1Ndw2LcXJlUG1ScP4WQGASZTmicJNNUHmldxedVOkREKLTg9Lwh7W8R+NEhCb2Jc6XNg3uRNsOJpn4Z/QSiEBEWEvpRZIf+yWXxzBhLUKLxWHAhYfFMIFYLXhcyXhXIUfVbohQRXgTTmWlKkgReoH3shRWgIStwXYG1YU50HYOQHGeZHckxjPVrkGTLYh+YDVK23aVc2jBL2gy5HaopYR0RoVbmRBVkQEUzIBc7YKGJQHFHoN5moiSaGAx7BfCKlBWXAaxDFhT4jimExfY1XF6fYgdfHcHmhiuHEB2voD7E4U2MQhwAGB5Jxi3hoQbu4g6n3ZKx3RqHTYGOHJcZ4jLSXjFDVf1aVhATIBRJJQRL5jJsVBnKQVdkoJBYVD7kGjeEogeSofOaIjhb4UdYXJRx4fTcWTl0HYJKQeW44U1eXeSnIW2j/sI/nRxqTc0F7GJD0BH+jQz7IxXHMlZCJyJAwxIgPCQhtIIlckAYV1Elc0CgGmAPXiDMbmRShJQZlIEcGOHiEV5Kk+CR+doqSRx9leIFr0JKgJH4wKZMk2AeLEIfKBnqSYYcuaHIoh1i+2DWkQZBgYEZGcG3XlpBAqH9KOT/L+EcmYhIpEonRiEV5wAjS+JXWKFFbqRRdWQZUMXjmOIpg+DyPJyV/Vh/YVF/hdJdx+X2Z9wdkAG0Ish+v8oKbBJD69GQiZz4j5CarcW1zgpSKuZgjg1CAcjIZARyyJBLMSRwfMSMSVD0nBwaXWY1IqJmbiRSd+ZlAR5ajeSp71i+R/4eab+BnoMSavBWTrql5L1lTX1Ag/Agr4eYZ7AeUqASME3NKmKEsGWKMSUmcxckbj5mcwcGcBvoRxEEoJjEU1pGETylBXKBJUlmV1YiV2JmdxtNVcsadtRaaJgklIZWW9rGS9cGKrfhFcJmemtcHc3mC+IiXs1l6pucZy5Vt3WZPvsI09sSfwemfw9llRTigGFGgB3qgwaGgGeETNYR7HwaREeGMFCmRErlHGXmh2dmVZ8ChbeahZUkXUERNCJeBUaKKJ9pB7blb6jmTMxUI4IeTBhIKaNRg05MagZWblmYho6Ojm8Gj/OSjyMiYvhQoGAEcISFHhnqoYDkSlrigFv+xpFFlVXFkqBFRkc/IhM/IWUGEoUeBpVqKYlz6nXCRWlFkZ/1ymmOqcOEEB/OYpu65ebyljwZyGda2cZ3RBe5HT4HZNXq6pzyKmHgiQ70xpMvJN3IWgeJ4qMOBkYxaQ/LDlL5DDx5RHN0IlRHhhLsnBlWaqZrKqbTWod7ZTHEhD+0Vrqoyno7Tlua5fasqk3rlqrtVi/BZbdbGH0xzq6i0m8Oyq7zKn4hJQ4GynIiarAu6pDDnrOdyEQaIEknYjUzohMUhfLuHqTejqRlqUf/WqeX1qeDaBFAkpqiSKiSqdGvQZ2m4rlKgpjJVk0LGW3SYcZfxcV4wmE+Gn2mir/v/qjEJGSm2A6CAenszcw8ekZFwoxEdQYAG+LBBAYA6h43b2lW8hrGjpbGMJK7gWA/wFSUmxY6ouQarAoJryKo0iYK7tYJiRCZLI5A4OiE2e7OtJHv/ybMZZneSQg9OeVnzljIa0QZZYIlHsTcwkZXEhKGh9bTduqXfykBNEEXgaGdXu7VmmCr50bWuCGBjgAbqKQWKsAh/cAibdwjoOVPwaiC80hnDFYylq7ZcsyB86qs/CrcGSx1y8BFC+0dAGzJ9O1ERO7FNa7FiALVfJbVC0wSiaoYnWR/mKiVkWqYdZHlTt56bBwl7sFtfIHph4jBni0q52iZrGxqrK5x/Crck/9KYehOt8gYodAsUPIIdu3MpFDu4vVu4nnq4+SKuUWS16agXZYCuqqK/yttBr1hTLrqef9AHtAhCoxtY9wqIqJu2bNtG3ruQ4HtDDskTsRtQ6GIR2AG42RIi+9Mj7dtVX+m7GAW8Q6O4cdAEBleKZMi/psm/D2cPZ+oPinAIgwAJf2CTVwcJn9tbGFe2ZEI6xvKLZlezqTsh3eunEBzB4TvB8+YRrsZqKZEbGoxzu+dd2/HBFhXC8Jux8gsfVGuGahGGOLYGj6sqqSm5abjDM7UHJ0txARZtC4M1wPKXoMPAZFTERtyrDyxdShy3MvduH1G+emci6Lsu45KlV7y7x/+kxfLSnaKYL4kLjifsTMX7juWJcFyLxuFUaLzFxm7obIzmOaQUIa2XBqcrGturunqMxHzcxzLExPcgu5kVxSKCjdd6jVh8TBIhwiT5yE1SDxFRBijcSPdrF/uhtch7yen6cD+2W56caJCAZErGK78CBjY6MaRhr6iMx2ZyxD/4tuDLlNBqgIJMHZ5Vy8KTA9llxZ6lyIa0y1sctV2sFl8sD85TyWOMzMl8Hw/XF/6VV2wczXuABwScVwNWYEvGzW1iZWaSyg/izYjYujzLiBVsc7Nsb+gsQI+YrfbmzkWkBU3Ay4hEwixWBsE8zA1UzGsJPSzcz4aRW/OYV74FXEv/tjVdswVDvCAO/dCr/M0SDaD9N852a1XZEjLFF7HIkctFhAMgLdJHRMJfjNL3rMJ+lrxGE1vs6NIEMglqLL185VdLFrMKXMcLrEb8useQ5cqvfGpKJcsNdc5LK0jqa2ZKbUBM3QZOjUBSG8nhCMn363APdMaarNVrAFNreFPUS9PUvHqf4SumdMrxpNBtAtFu+9PEKXMuY4AN5VD3YNQaycHDJ7gWddd5nTwam13CHLzpmL/6XFKZPNhaLU7kZE4ylU7r1LI6tWRohMBt8jXaHNl23M09jX/V8r3h/GXz4JQwU4RvXWbsrJlILdrHxNTxUNoNSJZ8LQan1XjYVMbQ/2PV/RvbBOJOoqvbQOwrDH0aO50mlB13cKMPrdzHXxbLFux/F20RAfhd42K7m9lV8aAF1R3Pv2uOkQyOUu3XJxlbyvxA4C3eAULe5b3Yl0G6aeIFOb0Z683ewy17t7NUDNVU8k1Z4hLId0cdZwAGfEAGY3BOY0AGfAAGNuPcO8fB/d2Re2Td5SiK62XgjORI+yGiRsPC4e3guALhuyLhPBXEDxIw6i3ZF7PhcQctI/4cA+XKlFXR7pYT9wAGMdxbYBAU+S1ixrPOG+nfNy7gIzyBfH0GoGqW4irkaiXkRB5KRv4Y8EThD/IGprzNwe0r7d1yCxG7m8U2ao1QLlONPP9U4hUBBikaYGMABhDx3H93FIeMlVPYVS8R4I3sraUVBKh94Ij7PN0dX/aVlnOOGHU+GebNU33+U2nw2xnu51AO6JClex1m5XikewEFIzkhBrEZ0zVFBlwgsQmYFLesgJgO4DhOL+fllQYumhu7LwpO6vYFTac+3qneMKtezXTMD+mtGbEu62fNyniiOyKixDh06HwkMxTBBV09j1/ACPWWMkoBgH0HeGau6VEBmhpV4Gx+jl2KKvtB7ZO34Mt87dlu59uu58FdITSoBnnQ6vc07j5tYc147q47N+KCVZBCEYwA7P4wBiYICZwrfvL+ak3xiJYea2aOA8v+M8v06WP/8aEgCucMbvBD7uAJr+1Ijhlfc82bweTgHvGq9+fologXPyJAzTKxKwa91PFcAOxfEMArSlNcgPJOEd1p1lXN4fJo3svLU+BisGLRLh+jTvDyAOfXju07v1PURsqikQYKDPES/+QUH9F/evEis5jmwjfLzTJi8O40RQeD8H1HJmBApJFPsd/3Hl5crwVev+mGuzzZ9e9k3+NPElveTepYbe1rX+Q7bw9u7+1pgBoXHu6mM+tH/6OL8oy7wZCQonvYijvz8Otr+AWF/31ySGRnBh4cvPIU1VVNAPkvbziH4+zCfHRtzi/gTeqCzc9rH/qMMfoWPtbeLjp0r3r7qfqi/wbODyGJe/Q6+yczfn83LMPJ86iyioAHkNCmNQXpk3582dUGn6WhWnBikz8q/r4kXQoQ8sqsqddE3kGECRUuXBhnDcN6ESVOpFjR4kWJ9jRu5NjR48ePSkSOJMnP5MmTXdKgNOklzZaTavJ0YVnT5s2bRnTu3NnP50+gQYUOJTp0yFGkSfctZdp0Hz0xWbSE0efU6lWsTvVt5dpVjhgxcrqOJdv13hh/adWuXTvmkJRDaNT+kVKXrb8x9+jt5dvX79+/9wQPJlz4XhgticMYZtzYseAckSVPplyZshgtlXFs5tzZ82fQnuONJl3a9Ogzics0OX06yGvYsWXPft3E9v/tgasNMuTd++CbNxAxDid+EeRx5CBJLleC0yVMlGZompQ5Hed17Cd5bi/a3fv3fknFD8naFKrUNlXLr79aVh+9NmLCzHNfnyuYu/nTKqrbZ+2euqTIDwzACjSQr8caw0wLMRJ0sDHLIpQwMsw0C+1CDEVrrbUmykhMjA1do21E2m6zrZ41ypDHNt9aXAg44YqTsbjkaqyRuZJwUkONNbzw0SUzqJspOyKx244n8JJUMrzxkGKPqXmiyiK9J6ssKwwx2qDHPi71kUs/tgCsC6213hLwLjQOVDOwBwvLITUt2mhzzgnrvCwzyjLUE8MQTYPzjD5FJHHQ2m6TZ43gDHX/cdFD44hxRkgtsnFS5XAU6botwDDDiy22MOMlL6orctScjtRpSVS7a9LJKpeKMosp52m1vLG+EgOQLrk8A8y7+LOLrbcG0a+MNYulZ07D2kjsDECQTdBOaHOoMM89q9WwzwVXC1RQQkk0dKCCFGXUNxQdXShSdCuidF2OLL30ph537NQMeWVSg1R8WTL11FT7DWrVo2aFsg1Y25B1vbKa4mqe+AzOlUv8ePXnC3/ErIuMtcioSxH9CDRWTWcNW7DBkBmL1k4xyrDQWpb77PDDbVvrllDc1ojDxN3G7c2heh5NF112g3a3OZve4LQLMLpQOml7fcz36X2N8HdqnwAm/0/ggQs+2Kqt5vGLPvW2slWsh7k0BEwyFjlkEX98resPtb6A5GL9+PgY5JIJAySxqfIm7OQ6U16Z5WpDhLOMmDeceVDbHNLNRJ19G4i3nysPmt2hb/LRUzDAUKNzMPIAo1Mv3nga36ipntpqrJ1iGFYx6NHKa3rksN12veh7qo0zHC6bS4zzcxsNOgIM8I8+8BhkYzDTvNtAvwtTVoszcoge8AnPUJlawgs/rQnVWEtc5sVHNAjRFXGOvDcYfa58xsvXzbwmoz3t4vPO8xC9CzO2cPr0UaVOdf1iXeu0QrAsxG4p+vCa7cLwwDAAwnb0mEcYzhCW3+WKTGv5Al3qwv+2RRhPhHU5BMX0M4bnQS96f4OTnPKGPQlpb3Ddy9Bp/jS+EJVPNgYpQxlgFS71rY8h7TvX+4AWv0nNDyVG4xS9ZKI//e2If/4zHQCJJMABoqqABjygFhIohwaGoQ3xydIYAWHBqWTwYSZci9ukgAY0jHCEcODVF1JYoBUaBjGKKRkMI3SG6nGPhjUkTbbEh0PylY+HWljDGmClBZyJS4gJsRnljBgpJCbRXTZp4v1Ch4dJTEJ0aphi6ax4xX1lMVVb5KJWECOVB8YHTgxakBbAqMZcsVEtZCADHPrgHw/KkXl1vCNg8siY6VXPWX60DCBnOMjQjOZlDEJknxbXhDj/DKSRWvBQGbIZSRZNMiEOMVcRLwm/TN5okzXp5OfyEEpRis5zXdhCFU95HSyqMkmsbOUBYSUVL/7zn8y6B9hwaZ8N6kdjwqzLIHSZHxQW0y/HNFkLkcXMypQhkJOBpp7iccNqWnNQAtFmilSkvdUIJH1BFOdBeGbJc8ooneq0FCft5054QlGnnSNl/4xwT32lUp9K4mc/mfIeOZyBC0tdqtKWGqcwyGFLB7VP8MDUB4bSTWLOkyiCKMqYPfbtQRiljEY7yjLwcfOQIVUcbQTCyDVw82ZBwKY3WaQicLYUIZODaUyJM9PkKBElm6NX6HbaU+l4EnQ8VUP/vHDKfA7V/ztFNeo+kBqfLKgEdFyQinykalCqkoUPEvMHGcw0QjyQ1h9266pXv8qYkVnvWcz0DPXOuqd4eIh6bN1WbJqgPbhyc0Ww6VAZ6lEovEZSr78JTl/9ihHAIkewJ+kR5/KXvzw01n+PPUk7F8vTUpIqspItCmWN2sD4eDEN+gNDGtLAhTh9NrTuiRjavjCGEIoQEl/ow0Pv4rHWHuu1jQGERR8Dw888cLfxuG00FwQo3vb2t7rlpopmU1x5ELdDQITcclPUm+fSKLqVqin9OPW5HXluR/qj5/+cs4X74Q90UnQsTsZLXqMArLJcq116s5CG0LXXvWnoAny1NF+y7ApMX/+IS1r6IAnjkWEPh/APr4gVYAEPuDHJXAyEANeZ0iAGwvEIA2kajINpNgEHEc5hyoKr0SaYr4cZ1rBdlevhcpozxMYZcUjWyZI3rAFp/EOx0pCmKe6Sqp0yBq9jf8qPG+P4XzrescJqhyX1poERjOAs37LAVPSQDclfyg8e4KYWOsxNCqmlS2qbh+W9aPnAsTVZtDgzGgiWOR7cNI2uRwPNjy6LwWtmc2kmzDfhxplEJFV2nW9255aSE8R7hm6fPTLdk2SKnjDWlBn6Z4bOQeeUi14sjf3HHUmritKVXuA85CBGzLiXs51tgwT3gsZ5xwkQoM1gfe9yCFfHTRFww0P/XQI+IFhnWdaNCasL/2anzTyQzKQZ4xiz8LgxtqZ72QoCmIt9bNWcodmDQunIkfu4Dkf7IdOmtqSs3RFs88MlXfiRSjpFOi+EG6j6IveOetqpdKt7Vew+ahiV9V6+ZSmqFKyVsv7JoMVk8Cz5AVCVnWxVD1r9LnlJ+MIdlMxmDQbiOIAgxXF2cXCu9de41a0YPhPhaYb8kN3K5mpKVNe86pWvzm15Rl7erj+f5A07MonR6PWj/31O3DuviRGamFil0UHydAj6pIdO9AXW7t2fTiBY2hBVvdiHHph+ZJZu2SV/71IKHEuLafegeilY9b8JV7jXIQQnMci2TmQnc5nb/3AbsAS/s8EHi4lIU2Y93RA01QyCm/lWBjEEgVsX7uEZvNWEeqBckpMkovv6Xo+/A77EKFFDGtYQnS4YATgs+VyQGN94U3mhH5OvPFDMa1QGXrrTY4ygHEL/MHdLr2Wpt6kqi3mQvbSIIynoAzooOK3zB0g4BLShvdqzPYbjm8WQkIgru99rAuIDpDOQChC8oOAzPjMLjbSCpAsZH5DjJpETqRKZM8bhoZXaPiH6MJb7Pr8LP3uYLpVINJOQDh3RlPcLKlOpvxy7PMyzLK9BoFu5HaazLDUavelJjM87Pa4QA/9angA5OCfzwrg5Awq0wLF6MA3kwN8LvhEEJBFcQ/9AKj7bKI23+xNCcplZckG1ayvqs7sZVCloE6dKykEdBD8e7MHA+5TFC0L3u4n2K0LtECoktL91W8Kt4BsX2gvdkUKqCsAHu8ItmQcuuAsymJtBeMC0uC/96ALBoD0ybJMC+5DKOCOJS0OwcMMegq8e0ig3FAMTHLbNyBZfXMENcb7wQSTaSBk+nMEOqcFwEidpE0QdLERDHL8tIDKb4B/s+BzreL9Iq7z727F5mBJbmgdy3IqjQrKuuQdAICPPkwNGUC3VAgNAyAH/67pWbJMqDAPJAIQ18z0PrEVAysUe0gLOEshcHEFevA0zy60P8R7SaEE4Y6vZKLmZwQ0Oa8b/SXKIFhnEiZDG+QmVbUQJbMSOQXPEbgy6b6ysMMiCvdkarUBHsrg0MmIE/4LHU8wDpZvHegywe6STB+OMWfxHEBRIZOu05xNIEIRD8aFDa5GmO4zICJONblIk27CzlJukveO77/PIdSK8m6AnIilJboTESKyaSVxCxdAC9eAamHQPclTHLCA1m0zApSLBz7M3nuzJscqBsJIPfwRIlKKwf5q3LIgr1TjIN0zI1JAKNSscYqQeECm20SAuD7E+quyQZ7tKIeo+7+s7rqyp+wFClgBLIgG3kIQssizLlOwnesgCeMuKtnRLciRHegCDhCKtMciDxOi0C7pLvWgtvdxL/wrxIgahxaHULUcSKMIUqMPUxQtazCwAlD1pPgqjnjwsttrwEDq7zB76wxtUEXLhyIj4TByxuesgzdL0HMY7yXRbzVYimChpA9iMTbKYTfuUAzCQS/1AA91czPcCKKXbSYkKTgehjFcavuNMDIGCFS4osgWFlbhCzICiprUDjd9CNuiTzBx6GZOryMbRvpyZpECExq0sRHepxkUsGvRMz3sBKvaUNPfkIurZh6mYT/rsCvvM0Xk4AzDgAzIYgy+4LzTggzyYEjFYTC7QNN6Uj2YBTgI9sH18IClpw4FMTgZlqiIDNYGKUA/5p8ep0M2IhyNFtgsaNg3dEHlQKx3SMP+8YykhekYS9UwTxZGZo5/BWlEiyRQ1eDQrelEci9HWaU2qsCUbvdGu0VFEzdFLwwwGZYTO4TR6a9KuelIojQyy872AkgoPsdJPY6ok9dSl2lIvmjcSjMNfE9PqfMFrOVPSSI1kXNPbyD5mVDkXEc/xnNPlWIM0aFH6AQ6jeYn1G5Ut8Mo+Tc1IBFSsIZj3IFSsMFQcTVRo9Rp1JD0uMCwhC1XI5L95XEVjoVTHiNJY8sAQxFbl9FSVcCpPLVdNfUPge0oQEUZWjYcgmMo19a0TSS4b1Jms1Eo55UHm4IcdOb8lAo5GaqRhRbzSsSdM2RHRRB1jRUJkFZgZlQMtcMn/l3RWBorWRD2WM2LUamUvSAUoZBtZviFBpYsg2apAb4UMS4UgMgIkggzVTm0qpWEETWMEdAXVgqy+gMxUbnrXOjzTeaWeet2hu5pVceLMzmw58myOHxzYHkHYakTYHwlWnBhWNWjYAHrY+ovYVmlNQNgHxFhLtsRYjd3YRR1XIAMDSC1OST0WOZDFMapFkiVZu/w8lCVQybjUNBzKUc1Smt00mxVcnC0yQ8s33VrQDG1KVk0rEClae+Whi2wpHAxP8ZRGlkBEfjAd4KDaH/kUz61agdUchj0dPyUvr60SZd2H+KAVjM3Ys9VRmRzXBsXWC4qg3+zWe8iBM5rbMa1b/zK92wfa1q+KDFmEtyNFqYBqUCLrAsJ11OdVCSJbTi2Fs0NySMlMK/GBXDbFTDddnxGNU6YNP8FrpE/pAkTp3ND1EURcXx9ZAz5lp9LNl9OVrNR9EgZZiixxXbONXdmdVuKU2WxdOic1DN6NJYAEXjINPv7TR9marQNG4ORNXAYdMsJdLMF1L8BNVxe8IFMNRj7R0EOBJNLg3kKpyszEyMiBU/GltvBrDibyAnDLWvfllJu7n5vDudCN38GaX/HiWm88yx2TgyyQg6WIE/51Vv+V3drBDDYEqN7E3bzsI7l9WQVeYM/DW46aRYDs0itN0rX9rsXStCHLUk3l2YQ8Qf+PkswzSBHpK2ETNpHu1Eyd0chatdW/UwImmpfO6R8d/pEcvmE1COSb22HSzVqHPcKy/In7XY/V1QdmbdbXXWLZRQz5iArhfdtJ9boI9l2YvWJQHswG3TQxFuMyJswK08U0BtMQZjMfKoM3hmPulWPtS9qV20g8tjY9ri5v6xz+8bZCtmFChrFBHubtoloe7i55+WFFXmQmUUJ2S6CloIdIbo9JpmT7vAewiFvMwNu8hbWV3V2+FCNZouAvNleVIOXFYi/Q2TR0fboKY9frxa2o9KExKw0Tpqvb+CY6HhelXVoXtjZ+4GVwUzFS+mVj9jZv2xGF9uNA9txkNgkjWOb/IqnfoWrkrCBiI94HirXYi1VibKZNsBAwzAAEk8YdewxnsWtZMRJXL+5U6Q3j/AkleWJbd5ZZgELjD8beagKfNYjM6atXE4mDRMlXRqlcy+VIXQ60eWE0n0Pom2tohWZoqXboYEY858DhigZilBRio4oK9VAWhLlmbIaP2OGLLCGMMVTplc4BvhXKgRRl51Xn0KHpdr5pVI5nD57nNQ6pJoir65zMOI7VolZhnQnfFt4zawuF+iks7GKsX/62hjY0KYpshSZkhI3oltDq7LBofcLo9pDmpeCdse5fbI4PqULrMKDAvmDrtn7rWozrK51rR8Uudrbpd34kvV5lEIZX/0QKQRLOocFmkcIO0TpGbH4d3xEb6KMBnXcSJRVTmqo2tKU5aEOT6odGPM2GNM7GJ65uT69uJY1mit4pbZCmZCzZt74IC9Z2Lbbe23CN7ZduKsFd55oWXMB9OsTkbZ5OnFfureE2iDfgsIy8ZVy+3D5j7oKua7uO7simbp8zaOu27Oz+EXzq7lJp5kUGbasAa6ZA4iQ2VGz+ivmgnSbOXdZ2bZZ1ay4+UtmG6QsuZfzW0jNW5Z2mZxz6bwCfZRN5gxTmPgNP6kEU6HjxHAaHbgeHPJ+L8CWvbArPYe3GDnpJRCM8Emc2S2jGP9Heh3moZms27diFCi2hzXs76/ZWWf9vBVfk7dnlbVDalnF3zu/C1Ou9VuOgjRkvumcYhFycsUrj9ufmumMEX+43QJoUMyx2dnKlafJDZ/TrvuyrdjGcoJcUrXJ0c2YOb4rxXgqK3ehCFXH/hYrYmU2+GKMzjzUVF+fjfVnlPee5BrLnnXGcPkx55us7dxkvAuod53Na7udFQWohj8Y+UwLTlA5GY6wJZ3SndvQn/+PtPgnpqPRH1HDVDG8DioqmaEnzBvWzNeuCIvW9yJJTR/M0Z+m+bfWZpW/3ivWcReX9vnEcD5QmgJXA1kNexw2UE9E8C/YSHbGZa+pGX3LKXvJSRvanjmwo/5Fnz7aRtHQkufJMX6D/KWkKsd72G/Vf3gEj++QLZhn3VBdnFve9Ll5Qc113wm33f+LSpIT3vu4T4K53ey9anOFnw16Ul1oUWyXE6Bo88+ukGGvyRW/y76rpGRN4hI/0IoExM+Bhz1aliN8HQMiCe2iKI2WP14XdaC2wEt/42jmD1D7zj1fzvvUhgBJl5nVe6gbVlE/lWrfzWz8NH9KCkMrnmX8Io24RO8b5XAasUNhVgn086g58obfvUjZ6SHf2pOef+G36LHr6EHSK/LV4+jzbpDIYJi6wcSd3St1icq6lF+9UedvgdNVvNOZvxg0RHWe+AMc+u695Fwm0ccn56FKCH1QCxrbhyRb8CHdu/526bYOXbmBG/MRf+mm3coi3doHRh4lvChAP8YuPVnq4IApiYizJ/LCHbymtzIB86U8T/dEnfedMSPEhnD7Jc96ie8hp/T//9UAXdKUGLEQ0xM0VZqkO+kO37d4nesMP/mMGCC9e+BEsaPAgPy9dzBghaOQhRIj9JlKsaPEixowYh3Ds6HEfyJAiR5IcGSYLPZHzsgAqOVIfzJgyZ9KsWXMezpw66YkRQ0/nTnpt2tAravQo0qRKld5r6vQp1KhSp1KdmuPqVRxhxJQ50/MM2DJltKzJkoVLFy5q1Zpt21aLWLFgezZpEu8ujrx69/LNe/fv3yZmxQAubPhwkMSKF/8zbpy4LmR5a+pFlmf5MubMl9eU0ezZcr3QokeTLm36tGh7qlezbu2a9ZY0ZlQrCUVwjZctureY6d2li5rgYIaDyWP8OPI8xMEED/679+4tAgUirG5QoZmBEbdr7O79ez+P4oe4LF9ei5aRcrLIMQ/SJvz4NoECbaNFDv2cRcWEWer//1JVCTgggVJhddVWXrXRxFdhjaXFWVyc5RaFa8AV11xiQIZXXx3udZhgWdh1GImIOXaiY5BBtkYclX32IosvaoYajTWi9hqOOa6RRhdK0GYbP29Mt5tvzS2H3CRJJokccc2p8ZwZ0U03kHVVYufFdhGBtyWX4Y3XkXthvpf/RRsjAZKFPmHKt+aa+eEUhhaAuIlTUWcAAiCeeBa4J59WYdVGT2GEEc+CDcZVRoQUuoXehXLNtSGHHnpo2BlmjVgipn+huOliKtb1RhkuyphZHJONipmNqaqaI6usvZFGGvysVtsb/OAmkG5FCkcckkoqeVyTzUEZpW5TVnnslVk+1CWz3X0JppjunZSSSPaJySa28+UnhxZhzEmnHGfckye5AfZ5bp8IBgqIoGEM1ZMYYJ0h1oRmkWUho412Ja+Gdf0lKcCFIapFpgVryimnnjYhlqinWlaqw5epOjGNrbaqBHBrsEarrUPyZgZwavCanK+/GhescwtBV+x0DR1r/50XvWGZZbM1X/QsR9G6hx5JYqSnZrZBx5TfPVq08S2dYZxRLtNIoft0gTkA2gZW7Ao6FIPxynsWelnoe6ijXvXbRBCRAtwhYBCWYTDbCCfsKcN1RYzZG2vMLQ/FeZdmMatdpOFFaxzfmhtvIY9Msq94MDmck8PuNqXLL1cXc3Y023y5l8/qXN5KZY6khRjXCi00ffR49RPSQvnUNOtQu04VIIEemAMO8VxdqNZnSDhWFmCHze/YZZt9Nl9/mXUG2227jaLCZbzRsMNvvHG33tWHxjeOsW3hmuAeg7xrckjiMcn4yTEurMrESjed5MjKzB3mNuNM3uYlnTQPSWSKPv96tvTFi3rqxEAU1jXtdQZ0itQEODus1E5QhMqaz7ighTOgR14WvODY2iC8eBBPUvEIEWGSZ7DlMc9TpYLeqdYwvblZr3rYc40XZPOa2hBESLgqnMiKkweTHYd85FPcJPiAhj18wR/++MIeyGAIMKyMZdRpn3WMQLmZLSt+NZtf/UrCs5GspCVA4x+26nMfpOmnWwQs4AFfBwhAhWGBDNSKA7EmhuNRcIIXzBBd/AWYDkpqjiISofJI2BiFQUxud5NMHKjXwry90FU88hH3gGRDwn1vODv0VXKACIcxGLGTnuxkPwyhPmNBsToPmaJErNgsLGZRJfpTD0r2B8Y25QT/Tt4iI06KJoczMi2NUEsg1e7hxje2a1AMGozPvAI8eHmqMHz0UKWysEFAZkqQKfJUPexmyLmVKpEsXCTFGqmaUMDqDThSghJq6D3gWBKTmYRDET8pT09+YRJOpFIpDwIRVBpBlavEWSurlQX8mQRNspxlfHLCraPhEieA0AIve+nLc8WOPwgcZla0YrtBVSpUyYRXHpu5x2d2qAwSombyrDlIT0mGMk04JMQUCc5VidNvGjtnOoN0q1yxszglQ9Ie5inUT9JBDS3LJ0IikpvK+ZNZrAzoPrY4EmsdFKHaogfoGpqTNiwtouSaaJ+mloOnYPRAeRkUnLIgwIWNzVMa/3QmSfsSDy1IEKUpVWmnWMqibUasDHaT6UxtJE4zpGF7OUJnkOp2w++JrIeTQI4h4jnUyR5xEl2QDlL1uR3eeKGpXXpqK+nBhTCUxGfRsmqbTLc0reKkJ179KlgJVNEwRKWsszur1wTFlTYYLK5oO8sZamfXEeJVMQprAmf4Gr2/fjOwgn1hbGZzMSANDoc5DF8eDEHZ7XZyEsGJUuTyqSzdeJZLoM1iGwxKEtCdFrUJ9dk9WIuTMwzwtQCK7YDEaiDbmnWOyItHvBz4l3b9y7d9AaFfhluw4hpXYaBSbgpX2FznVgx7O+oC3xAbpHXmcDnD0S53Q5yHLfxmIZgtpf+yjLAFOpQXPOetn9dc8sovurcm9pGTfLF6J/veF79TmS1V+Ds7RHEQBz0RrmEM7CE/NkEvCl4wg4Nw3LgdMgvenDCFT4O9NzwJkhdLp/Sqa4YcdtiSkg0xZb/QhYQU7jcnflmKjUAHFrfYWQANqGhJS5IutrfGNLGlfHHCrV3y+D8+lop+gyxkrHiNdkYWg5KfqbssFDnBTy5RlKXcvDVAWEb1sPIhs1yjDPvNnNjLqWJxBasnOUlkQZWnIhTRhzOjGQ2RW+pz3mzKFE+EznXeyJ1bmd40kWQ91KKxn2HCLTEE+k0QLbShD+0UIAto0VdJ7xmw0pOMRlpSJqV08S7/jekoT5nTL+VmFuoRalHfyGI2bSSqFUtY2fgmZGoAsTzHcAgpSOIPfeAkmv0xCYTg2sT4NEicKeLrX1fkxTqLsf3Ui2w/Y9UnzZ4HoKAdbWkDSgxjHZC1c1CpNl5FgY7GwW27zbVKO1ncJMr0cQt5N78eEm/s1nKrCGvYF8ZbITwiUr3VQOtO9gEOUjj60f+ABzSE+AsHRzjlDB65hDNcIw4Xkxy44EWSpFdnyR4aBQEYaAFq3D/SpjaBQo6eA/GnrJGOB3An5XITMfi4n5bHuSNWt5rfHOc5iq44VVMQhVzWYx8zA77liQcyKALpjj+EIuCw3YEfS4qHl06c+1n1/4xcPUxzJDZJKOj1r+vDZ3LQx8Wx2p+yM8XHHf941BZ9kmxrm+TDVHIT1AJpuc+9MDBXmDzSnXeHqZDvfd9bjl6F4cALnsRd8MLgCJerfgyVDIMYAyQcr31J4GGydCjlUqFDRS1tHtiaa2UWznCe0PXZzzeGycWLtmPWOy22OQjUuaxdqXhgZSsox6iBiYFaNJkH9Z7vkRvwWdnwnUrvGN/xjUbywYqXidMbgMwW1MoaRN9ugAFlQR4dSIL2Id0h7MEfKMJQqQFShV+UCEQqlZ9FdJ55ZN3W5Y/nVJVVPVQbDE2zPRT9td5EKY3HoYu1QciBbIVt+da3sRzaGCBg/P+ewiQXC4Hauj1gasxQqTGfPazBb1BJmGngFkwCZTVeH/RBCB4dGeDB0S2CUFEeUlnex6yPC95MsG3O57nESrRH+6FW0TCbDgaaffRgUkzU/Z0BbT2N7KVfEXqc25EUXYHb2TBhEyLgE4YKuqnbFFJhPeAIYd2UOCkBiZnBG+RUYmXglHiB5E0WGY7gIoQgHpChFPwB080THGQWPyiV9C1cHMJgeaRfeRjb6LkXVmnBPMjExbkWIB6FLwEh7AmhkM0R1fyJIgLgM3ENH0HiwdTdcUnPAspIHGRBzdkcJmaia2gP81XgZfmIhiVWqgkEHaQZCP6BvjmeIqCBJBzCv/X/gVB9X2YpCzvOWRxOhC6WRNbhYcSB3sSB0TyE3UxcHH0dIzIa0CC2AUQKGREeCKAcYQfBHReUwTNZ4104Idxw2tzsnQNiomvsiHSJE+FxIjqJYq2s49DJ0ypKweIhHTwOgiKMQR8cQjvO0xfQItX9I0DOYbRUinl03S9alenRRLPpmEMahQFtRRBOpG2dRBnMjslJ49nkHhfsXjV6JEiqCKJsI4wwF2BRYWtwWY+IUyighRnIyqy0ZEFIT6rF5Ce5ohScoRSMoCKQARr8gRSYoFD95D7ymlAO5fl5nVqZh+gl5SzZ0k0E2qA9ZVG4TkT6UjOSCVY+o1b20QDGlUfG/0NYQkY33g1nfGM4Xs+slJM4aeE5Bk5LimKQ6JRdetIYiOAY/AEZfMEXoOFe1iZhtqFhHmZAqgcXEKQWsV8e8s+yaYt8wQllVubTACEgCCJ/VSTb2d7tAYxJcYESZiRYSiI2eePcSOElouVqXCHPOZ+pwWZsVkdtehJgpqERwcEgIB0+DlVwitdwCmVxioRRmseM2WDQYNUZDGNkyhdXzUN0CmG8SCRY8RcONFp/aacbAUwjKllojmZdfNqVjUo3fiiWPeBq6Fwj8YMFTuDGxKZcGkRPUlYgON4XzOTRQQJl6aNwKsthIuaXbI4+dKV58Jljkg560AN8NFtPMChlnv8LdeIXf81RNF4FgP1fZ/JFFnSBFrxdeGJjAoroi5QmaqamasQGFzSSawLOYbHoexLEKVLWHjjebToeGVDWLBamju7of4IEIBxnDMbSkAYNfCVUjnWLkj4ln1ymj10nS8yOEWJk8aAFR2qpNXJoXTSgwyDKN4KjSQIedC1Ee+KUmqYjGHJX9u0lHcjj5AFlf/5jnkZVFkiLxBEom6QXIMhHoMlfoTrknjTpofEXhVpklG7nXnClV2rolhbXcdXFaRKfWZ7lA3Iq37wBWmyBis5QqKajGoSYb0ICGSCdJLzaZKGgnVoOcRKlefyocrrEHNUPGJ1EDtqqfPFgrh5j2j3/qLQ1hW1B6QJtm6PmhQByAQF224aKp6dkYMQUX5hiIrRajGty4pddq4ty16m+Il52343SYi2uai6aa3mEARccm0tI1XKyyXqIAZv4oTDOKyAOCK/eq21BCJVqG2d2ZhmkxXca2MByqYM164uY53n2XQwtn8V44kKEAs9dq2yO6nZlnyLEqBQMQnwaERvmKLn6J8eG7Ku6x2L6qNAEI4LCK2slqcr2YFUg6r3ia1n9KtvNrLBeaRZ0W7hNKsGKJXmOiodmKiZe2Ja5WSci7XVErRGhIR74Zn5OltNhbFBabWK6x4/WoEvow4DK6nwUaRjJl9HQyZJOhdLYydmSFUal/1ewlpyFXuiEpsHbwu2HHCteJevC1C03phvePqDe8s1KBh7SyiY/KO1kdSseNN4fcNfUUi38lOvimofHgmxJ0ANLsCugskf/sJbqYa6hSoXPQGjnXtQwIcroGtnoLlA8cEEaRCrqtpzc6qwJwe6oYGrs9t2FKYE4HpZbVmuG+e1BxGIH9sEq2u9Q2RrGZuydEm+PigmEhIkvci22pFcYBI18DZr06ipUbG51Xq/nDpPaYsWU2lYT/EZwjW/qli+yJuvdjgpJJiy7KZ/7vu9rvAHfYuHtIkQXAG7kleB2qVn/+m/VsurVvgQXOK5LDBvzssmZvOvzahV0NjC9OoUcVP+vBNfWMGGbGzUqRp3BbwQsB1saJFLqS/nsZyAsCWeZCVfha7AnFtIG/V5H4gkVHPwlwE2WZdVw4uJw8fYwFxCUeazrD8vHPaTf6Choyo4t/TkFnHDuEkMFRmmvG11kIaeBd1Zx3F7x3KqIpcpIJJckhb1KGpywagZOio4xGUPsQWwBGOjuYBbuUI2YGmxB/77xxsaxFmXtzvyMAceH1+4xa3mFfmSuz4jBIO+XG5nFMPHrApXu6TJyBzuy+XpKFkjYZ4RwFweWJWNyJq9Gw3JyXHqyQZgBGLwBGACu4eYBQQDH06GYxrpgQM7DDovJ1sYyfECIkdKyVl2uEQNiIEf/8C4T8hMjohsBs1mBbxZwGzEjmTF/cLIa7OtaYjODkyW/AfKtBolxwadycgsfRBeAAUGYgf4GHBq8ZUEER62M6/AqbgAf5RyryTnfsU3M0enxD2vhajyz3j3kcj37yQJVCtvK7AJ5bPi+kZJlQR4I0Rjw5higAR/kAaV58Oqyblmkr+tSMjgpQTmZxmq05WVRs3uGKkIEh0FMAjd3Uj2FV0I8iar+L0iPR5hAnHuI1gyOrEyklxC7My49VHy1tMYFciHGNBMvkC8PE33NTganAe358zM1QR5c9DyhQR5cytxhceuKMM86aws5dRooNFRn4W84LFXbQ0QbBFZfxyS8/+hQ0YE9WceYobLwkh8Ak3WQlrR7ZB3ySm7JIhRr/eEt/zFM27VMF2HvBLNWlEEb5MVVnAGPNEHKdWQerDF3jUEeGKBiq29ZZipoBBbGRPaNfKL8UnNmFwQYrFl1dMEkpHE8fQEawIF3SY7fhDOcjXP56WIbcIFBlsd6t7esKq8WWFXYHuhslx2cmBE92DYvs51mMpDtABjo2A4OaIEi899wd9AazGnAdRIZrEFiPzJpou9nTDJTV090S7ZpqPBUXzb3lDF2a3QNwwyPePV5izUch7SMwbJ72LFJDw2EfC1CvjOz3XehvTTojIt08vcEHwh20o67fEX69UQWKHLM6v808TDCVg8mI7icYoeoJHupYzOSTaGGaz60h3eyVV8HGJD2iFvHFqiBiLePKpNzDu+DaPHwebD4n+oDhKQ0bDdU9Nq4feX36kElj/c4guR2VoQBg8yL2tSs6YbBkQO2pDBCgw8VGIibYgeflD+MFv9s3sRBlZuGEqAFF1S3h183P4CyeX95QYy2OKP4Kqt4z7B3tKSzOsPEHCUwamkVA9N5ROG4LgdinmOvtv23VjQBWEDIhMCKWvFWoXcQorupIhwCHkRtkz9Zo1s4ZoCpc4NTpZcGh3tBHGQ5qG55qFM0qFeJEYAzFJV5ehPlTJg146r2qrtrjaWOURSxrJ+RnZv/y60L0+xgZ5BTkFmgRRqAQe94BQfpNsCsQXySAY0+bZv6JIQrmGILhjJnxhss9YWrCqWnwWSYBntGM7ZXs7Z/M7d3O8yANZmj9+Y9Ffwp6Z6+a5igdSvNxHrM97qXjlL4zFH4cQHBtNnNO71XDYVqRbxAiFrsOxhISO9oyL+b1dkw+Dz1wXyGYE5W3zRR08JnQWNbBkFHu/WA7xZYugXaAxhnvMar6UGkgbh6PJifcsiTupmfH+rttxy0PV3t0jC6x562tizJt4zTt1wfxQTNNXrcubzfOlaqVVYAGL5zASMQhyL3u10c+dnkgU/iwb6VoQiS8icl93AtfFJXeMNH/7yN6JxpNCxpeH1Vg71B8AjZH8uYfTrCiXzVYdHat/3VSEjb/wR8VwuqZ5FMsPPL0/x+O4Va3bjN99i813s/IwigIIrhh/JjDYcilwFhML6kNIFxd9IYNJ7ka98fgKttIjYgYT7EX4azS3rnF1ZpxEFDQzPGez2nM9HpW8lvmLhmof24aw6DysEaAYqBG00YwH3tA8S+fWeyCDR4EGFCfQsJyln4EGJEiRLnVaR3ESO9exs53gOUpc3GjCNJlrwYRouWMCZJdnT5EmZMmTM75rBpM4uWm2HaiCmThQsjMJMm5QGTBmmaLlni3bSJA2pUqXn8VbVaFY0/MpCkdPX6Vf8KpD5XyeaJdxZtWrVrg7R1+xZu3LZN6Na12+SnPL179dbLEodvYMGD5dUzfBhx4sNc0mxRrIRLly32FNezdxlzZs2bOXNW8hl0aH6j+b0Bs4V0atWrWbde7UWNGdejjdS2bbtfbt27eff2/dv3EOHDh+/TN08OoJ5ntDDWIqZNGDn09CU0mNJ6doQL22QJMxF8+OMV543kKAd9ejndpb9kafKeGC1n7r03TxN/fv0bnYrJIuYmHOLxCaguwADDKKSyACopLrRoKgepJMQhK7KqkkKRL/zp4xCwuvoDjqrGstAfNNY6EUW5VFTxrhbzGiyOLOohjEbBKrvRsC0aU2z/jS66WAPHzoQcsrPQjFQiNS/A8GK2Jp1kbQs1UHPttiqBuxLLLPshjkvj6FlPPi2ySMPB59pAb57qrMviDO3cNO4jMcSbEyLyMjpPPfQA2dM/QNTryL6MUFIp0Pv2OxRRjpwSE5AAwxCDuSy6YIRSRpDioowzmhCjx0sfnBCqLEi8UIpDxhpDka8UIcOfL/oYRIpR/WEKxVrPWhHXt1q8K0bABHsjixqF3QvHynTkIrE4tuiCCyWKJRJaaI8UjbQtwFjjyWyz9ZHJ1qq8Tctwxd2Sy+GOk4OnSLtIgxEHz4hOjjSt04eLNt7UTo6c6NzXTow2Um/PgANOSeA/RXov/7756iv0zkQd3s+pnJzKId2fuLgY44v/O8umeDol89OpZP3qjz20+kMRk8fAo8OuZDXL1lpznXlXu/wqY7A11hh22GIT09GMxN7w0TGfoz26yGk/S80MMLR9ukkvfDTC229rGxfrK8s1FzmexOQCjE3AWOo56aizjh4uALnXunkWTHNf8frV6J70BA4D77zDyAlvgXNAjyOWBl2JYUMfPlymm/wD0CkcHiVowchzuvjTiT1eF+R4oOJjZLDw0NCfPRRp2StZ+YhZ5plxrbkueTDN+Q2ehfX5sGMT67GLN2i3DOneMVN6adK6UAPq4luTWjbWrL466+Z521q4cx8VM/+NTaxnJCcxzFYTIUC4oIft7cSkLu7w5v5Szz31zruN9h1cP+C/5Tj4TvnoK7wlxPWH6SYxw5iYYgPKSRlSUoZMQe4MAIyQgNbAGJBViEQeksIgTMYVD8nKRKg7kepWx7omyCMLOxNMFnAmOxrtbg1KQYw9ItOs3fHOd70DHpJIowbiGQ+HTOtCt1SzPCM4D4i5gd4QpNcG6oUNDFzInnTklZA2cIF74RuI2spnPotgxG6AWF/7uNgTLrwrOnoLGOAWdhFApKQN+CvJ/thYE5zoRIFhYA6kzlDHM4hhUwtqAgAlFI/mpAF0EZQgqywIFlmNQYMb5CCLPAhCEfLFL77/MuFgaJfCLiBmaD96oWFi6LsZpkYpORQlP4zArdX4MIhAHOI+kKOcM1yqXTl5FxOjaBCCSNEgT2xDFa2YkSyyr4s9EYN8uAAdLopxT2TUSJjKqMaGtZGNNulOAhWIg+fE4y7xCIOAFgShAIEqCIG0kASlQEgJyuoLiWTLIuXiwQ8uSDAxmtEkKVksS8ahdj7S3SZh2MlofZI0YEjeKHGIvFMuL5XOW6U+vvTENEROiXc8U7yygx1cyuGLvATPFS/yS55wcZghHSZQRNrFvCVzfoNKozPXCM1o5uAn/1NgG86wTW3iTXM3acKCZPoUUOFAnGQhpzkvOKp0qjMt7Gxn/yPXEKzAvIieNsLRPQ0DGcngk5/99CeRAMoPJU2JoDhcFlhpg9CEZm2IRESOFtIwH+akBDp+amJC2IRLeujLOBqNSHn8lT68gVSkdjxDRO8Y0mP2bU8E0cJ0WNpSl+oPJ1lQoE3uONn+dPOboBpD5zxEVEOOCpFIRYtS4+JOebyBC79yalQDg6M3KAWrmQRSVjm51X8Cr1pLCqsozbDD1KDyrFhLq3HCsJSPDlMLbfATPeaRHXrZK3z6eJtA9LrXviZHi8cNqWBT0hw22dGw7WPfgsRAv8Y+87GHy8E0JyvHnlo2B5DDgU9BBcFxDtIfhfwKBkU7WtLqqpFlSG1gdP/GWqkq5rVdwOqyXEjb2tqWq7gdTdN2K8pSdoFqZbVacIW7yrRxQU95g8505oqQe6gtus2Rg0Gq+xC+dhS7fxUmHd/aXe92F7zD5KKYVDI/856XbulVL0He2x/Gwfcmip3vT3HAuVEN1R9/OOeoTtffePwXwKyTRxy4IEm9ZCF2BoakYkIB23pYtWgOfjCEhdTVdVVYlAbV8Lc4PK7hAiVe6EMPT8innTB8L3xi4EIYDtLihby4bsmR8XZr3N0Fkc3Gddzugs6A0h+fV8iIy8GC2luGIiP5J1pgMg6o8mT8fiFVnyURzPqLZbeYth5dDsxfxDxmxJQ5DfjE3T7VvGb/NntGwvwYHpxFOdY5W6nO4UrrYNd2aDud6U1PrGV2/iyG7bT4ionOLmDr6GjJMSZyka4jUP7Tt78FDsgXyfTh9laGyUIKyXzkMZNFZerOWoUOUi7dqGjValcHwbSuK6FeelVrYiFGCUhxFoOd1evD/HpIXVVDF4jNW98CN9lZGqL3rM1iiKDrTWJiG0a1UEtDZzvE2m205BYEbsnZmHLiDcOecoDudK/7YQRpQzXLsPN4T8yaJGSyfa8C5avAAVaxIlEGrfxvgDfSdY+UB1QNjpg4KFwJRHN4YiDe5mDHpuI59IIZzODDH2Zc41tLW0G0M482NFc7ObnX2qd9ciwq//qjy3kryzGmFI2FGygO0nEYG+XjdKsb54nitALh/XN5s+mnpb7vvS2EB0mMitX+dnXAQ8gXYNV6noUxTBzWFYpdb53rXQe20gJK1rBDTWpbwDjagbM16UIx2ivWzhffdHvwKaS6KMd7+4ZZY4hmzO9/D7wsB4/YczezsYlH1N7gCMAyHNnxTokHeUHVhM1aKOlgYRWJvk+WMTTByrf6N+dXK48C0/MwcZA/VutB+jSglln0R72vVX8ZgCqJh16veLbADLzArGiv9spFxe5lPaaNuuol5EDMuYKPr+pGfUDK+FoOYyaFXTKGMZQoJSQNOpzP8G5O+vbDP3xuYtrA3f+yT4G27z9ARfLIIhBIpyvGT1bIYhLQL/2cLuCaii/ADP7kz0jmb11wZ7b2b4X6TzMAylqwRQBxiOwMkM4QMAGJQ5eG4F70AdqsA6PWRjsEDbrmhQLVbfiEae808GIqhV0oBXOUKCdCsPlm7vkO7wT3Y/EAqLJckI9gsAlABQfJ4gsszysCMQf9gQ78bg14EKl8EOoaKAgHjmfqTwne4A10RmcscV1aqOGUcAmZ8HckjMKisKDIbsOs8De4hOSEg214gtoA7RXbRDuwja9SjvggJSXUMCjYkA3JBA7jUNJkrvAuzZnuMD8+ovqcAiU+jQ+hYqeYYkLWIKiuAlVu8BD/reILFlHAfIQL1kAM1MkRtWzqBqwwaE12KPES12AL1lFnkGJd0swTPxEU7QGgho0US1H2kA0Ve4M4pCsL9IEV72UexED3EELQHHAfMOof3aQMNcIWlyMX1bBShAIMLMUdlS8EC4vw/GR+7NAYaWJxFGgP+RDooMI/oFFCGOEQ880QZYUR0gIvIoNZFhF1wrFmCE7Wtqz9ZicOlEBn1pELzOBi0uAo0iAJ41EeQRGgJu4eccgICJAKcWMf+ZEVCWIeioNt2sc6miM75kGJ4G4W9Ur4tg0ixUQDK+VA0rIiKQVjFiQjdQyxlAnIPpImxCSOVIIk+SgqIEdzJAQMrhEw//0BDFAkJrmRJlNk/aCOy3yF6oRF/i6RAH3ER4jyKNZACfQPKbWKCZeS4pqyeGpjCsFlKp9HOPZGDogjfOTgDMDSIOROIfBsC8WyAm2x+CIy8NASQYxiLdvl73AMLmeOI4kRf+gycSQGgBovLxtHKuRLKs6CEaYxMKviC14yZgpzJuVhnTYP6lwnzN6PZ+IAMiNDDSjyQKRkDd6gEzNTM/sPoNJgoDxTW2pj7PKReUZTN4SDHpKrS8LnXRKC9xKiOQgtNjVqLP+qNs0yMpKCMvNANyulLeNwPn7T0qCvGIkTJkJyYs5IBZOTvqIi1KACm+oiC4guOtFgDZDKOrsRO//VTzvFMeq+TOpqpP4gc3gOhEHBYOLWET0xMx7nMRRZL4VcDz6dxDbGLirtczeMY5j2YT9bseQKrQvGMJeKKbpk0wyHD7kCT0GRgiJvdDcf9C1HEDjlEtMs9CXs8jhbkEMzSyp4DOBorI7yoPwAcwwyT7RSdGdsclf2YgtEiITOMQ6aSjyHgigqsgvMoE8vUz35jz1xywvSIACHlEhtYx2pEEl1gwvlpFykSB9U4iDkoAvA0CBIjlOt1CGTw4i0NPkwZiLV8kt7060kNDgpVI3M1CU2TQvuAYCSa02Vc0LIrY4MSFjPoAzygA6uEQ3yYEXTDy3w9AywLOBAKFgiSXb/5E9QJyUPiKIoxgZRLZNHPdFH/Q+3dERSn+Y2vGAd6xNJ1wN8NlWKjOggigt8xAAMDIEMNOQLxoAMDAEMOm4CCbQ8AEE+Ag9WzZJgW7Uii5I3wy1WxdTSPNJWN2JxdNUpjKhXfbU5dwoEmyqEtCBT8CgL8oAP0GAMviBf0YAP8qDfmPVEnFWpojULtkAnQ48nL1E8GbQojCI2EvVblTBc6RG3zOCGyvVJqgRdDfBS+4EOpGMhmBQ1pSg/C1IMiJJELQQNwOD3rq2K0IUgMiZ7uC0iM2Yie9EXGTYYCa8OTTBi74FRKPYmru9i2TQqsGmwmGX5Quhj0Y/JWLYm8bQe/zgoWiGxMWUUPNXRQGxUN49iC9BzURlV9T7pzYi2aI12C7wgafcgXuDGaQNSiuZDIOZhEqDzkMDA5OjkHuSIYAVPuSxw0XDRYMV2bC1yKdxSDo3J3EpwLtd207KAP27CiJgxObuPQNZFMjVmDTJFb3+Kb2NGV37CMP+2g1wUtdxvJx0TMtUAR23oQJDiQLogPTPzZz+JKSV3UqtkHS91D/aAuSqiOp5Wij5CDsSgJQOTDKQUPE6XOTKmbKgD5S6Q+DIwdSeFLS9mE2lXBDcybXM3YqepdymLmuJ2gTKWWBkkLRnBbpG3L0FleW2lnZx3JqG3tLZTwGIkRh0TPK3FPf8n80CGEimOEinDF7fAjnybxGrQFX37ASPY133Z5jiyAAxENzC/gAs8Th+4NnX3lyJm8wwP9HU90Gs/0DdtFzgTuEwj1n8aeBkhuENBFBeBQihu1IKV6Pr+UHk3GDFZxIO7MQ7gIlq5DFhK2HqRYh234GK29zx1RClCQT1hmPUaY4ZpuIb3IGnr5iLSZId77zg24RD7YEQOkRHw94i1h3zkphbPUO+8TRcflEHcRSPRFncV2Ex3V1Fswie0eIsFxCe+hhGydVsvRWMKSAQZ0Yyzc3UsZibX+OnEUf6WQo1pdnaOEBPX8XC3AJ+47FJ6ttf4eFoeNVL/uIcO0D4xlyP/DRkrY3MeVDIHx+AP8KCRc3ASKEeSealAVQ6AWY7lqOeL5jCZbA6ULZSBe1dDTTmC57aLD7dQFxZCDdacC+iA8EiWm26R8KJA1FjL6g88maUb30D+fJkwdGQLlCAULNESU+goOvFjXHjrlPlIdKSZnZk0Zm8090A5wgSulMshtnAetACIq0IRIAEPBgEwv+AMTu7FHhINV86cabe7LkaiTur5aLVCbTWmRlk+5HmeQbQJiNWBKDKMSeiOyBhEQ5SODAiTGXZYn7oJgoCDSWvqCHYN4uAuCqNwcedHzjMU5E9YXgtZDBo0lOVSfsYdeS2jw3WGyNWjq+YULzXR0IWm/5rDa83kpFkMOeaXGiXBpaWgm2WFDAztOK6LLBnNxmwzst3Krx3WT9i5nelSlEf5OYx6QuhWUpiFA2PpeDUlgz+bMDclWAlICzhWZ7pLWPuZLlytqzHmqz9oy9JxWZSCHc8Tn07IR+apMjDHhbNOjpF5kzTaSIT2rvG6Ci81h6mZldYjUhKUTL42DBT5EFPlsCEhMEkX2+4kxrSLxiY7snNssOplin0MqIPaQtutJizWsydEY+FwKGfXgPBo1NKPLmhMWM3bY2O7juShLlakLizmYo43UNWRMY6CWfrUW2mEMZSgRlJIKb63Hi56rn10hnykuZUHmu2zkOXlkKe7r/8LBJAOcQ+64rARm04nWSwdmyxnTLAaTbDCS9DqZRiFk6UiVudqorPnuznJjapb7kfyO3nLeJZvhS7kYbX/m59j24B+Wy/sora5kYDTcuK6VaEZ2v2M8pf97kbw2HuTma6BJ5Q+/JnzGknJo2lLHG20OwdTrcW9GzDBO/jEe7wBi9FqvLAGLzqeqF7I9PCCzEI5rSN+16iPGga1QLWFtYHW4KlPW4OXXC0MHLfPQP6knNOnPA4sJilstDztVsHjiUx6JsEk40aMe0ccTLlDwz3VfM2fu801t0kZsmqvYsVZHA+8IkSQlaZ9ya9kbMZEytiNSebwBihCgsd73Ez/LFf/OyJTFn2en/EMBKS/7UiJ8IjSK93S/Yu0WsfJ58+AgAXFEYQojOJQeba1grtnYo1Mcmeq3BGjaefVP+MNpETWfyvER/MhNrea3eQMrjHVwqLXPyQw5YQWhX28866LjN2kTkp9lr3QDYcuB4vZNyKLFz0qTvLao9oumiPJ9/vbwR1aW6QwykAdhRbdt5URuvUyA4Mxwmx2ziz5isWtL5yf7l0JmHnfP7rfp1JNtoZt/jIH6cAr/oAMqtEarxHPZfPF9Ex99CaYqh5+Ck8ONq1eKt5fzBTROYI5qH2BIEcMvH1xRq05S55FTz6s6+9aheKeHzzC9yJIz9EwzKAxVL1Y/4bmuF+I5+3650kp6PdRIKCHbQxhu0uFkbdZEZBOCv4AMA2Bsc9H26Z+fS5f4mmOjNh267n+2R2kI+KZ2nEActoA7XEgJ04/qtVeT5t8RleePA1Vib469K6OHN/d5pdC3n3GwjXJ3s98Wpg78AWfze1zuO6FsKsC6VdFyg57EOCg15PfKhZ78jnqX9LH8jEfODWfvTGiOVaq0M1U0MqLI4p69M2y20HlJ1RfQNT+yhIT5T/97dVAKeS+y/diXbys5nOkMQCCC5c49QoaPFhQyZY0acwoQQjRnsSJFCtavHhRicaNG8104QcypMiRJEuaPIlSpJGVLFn2ewkzpsyZNP9r0hyCM6fOfTx7+uw5xp/QoUTxkMEjJSkkpEkVHSUKdegYfVSrWr2K1eq8rfS60rt3T45YOYDKmj1rNsdYOWDvee2qhYuYt3Tr2n3bNq/evXz7+gWbJUuOtjm0iMmBOLHixYwbK8ahJXA8HJQrW7bcJIuYy5wpx/sMOrTo0aRHBzmNOrXq1aebuH7tWl69OG/WbBHYJY3ALWvWlIkjL/jCN8GLGz8e/GAchkq6bIEIvd6b3Gm22IteD6P27Rg5eu/yMaX48eRNtjxvM7369f10uh/yMz7PL1GJwhmUVCnTpIf61If6RVYCDkjVVvPQBdZaY52F2Fp53XUGF2fcReH/XX9diOFfgHChRV5iaOFYiCIuhkNgWnSGImVZlJGiZaW9CCNprM04I2ywBRcHbVlscZtzvb2hBHDBvVEdckYah9BCvHWxBnYQecFQF29Ex12VVXrHkRpmlMdllymd1xJ7Yo7Z3ns5yRcfff/5g4ck+Umx1JuS4LHmUAESiOdVBh6IV1sKKrhXhRFqUWGhXmWIaKL3iCEXYYbdM2KkjYVhYosolpGFpZ7FyCmMNH6amo03yqNjb2twkcUab+RYD45pdHFkrLIhxFAcAhHk5EFKcMGQQxFZCWxGWCrBjxpbeIlssiCB6RKZztpk5plo+hRUnXsskl+cSf2xR51S5Qmu/1Zc1YWhoW8xSqi5FCrK7l9xDQZWG1qEAamk9ubQRmBn5KApZ5k1oWmnAssIKqii3ijdqmWUgWqOBBWXm5CyIgeRknE4lytE0zFk3UHBfkzRsEqsoYYXyp7MJbMrPcvyTNHiNK1PZHgr1H1wItUfzUOREW7P+hhYIVjqUoju0Ha1i7ReOaCalxZngHWvpGIEdhi//V6WxRkBD8z1ZwUbfPBrcZRRUI6BFWTcQmtMfCR0Ea/BZMYI2bPQq1MWBHLeIntRMsp+i6eyES0P/tLL8MXMkyF19kGHUF/gsdQi1T7lrSE++wy00Zq3waFbmneVdOiLNgpWGPNCHbWIZwTWRP9iV19WxomWdt3115+GHdtvxr2RxXFEcsF22xCtoVs9tz0kt65mMMTFQ3mDLPJCf09/UuCED2444jyBYe2cao6h5heKSFJtnWBc3vOemRvKp7phMP35V6IjHRcgbZ0BIuqpN7Z6FvE89rrKNEELAGsR7bhmOxrhrgn1KMNx4tC74tTjVcETHkRysyqBJE9j1PHC8z4msuVRb4Qjsd71WJY97YnBW4qQQs6GAodDSIFONBMD+sKlvhzWRX2ae18WPGe0+bVraT8ECyC00AbC7I8xkfEfiQJYGafN7oACS2CNcJej49SjScXhlcQqiCToEI8LW4zbBj1WNyl90EoiAw//Cd/IDxOe0Fkp1B4a6jQGGUrhD2gQX1LIRzM03BCHOSykIT+3IcFoTojs4tzTwPIheNVriYiBTGBwwBgoVuYMLDIgFTtlRdbgjlRGWoOQiLc2MFIsOhg0XvPOiBAlLE83Sljjdtq4JTiOUI5zHFMdEce9Ou1HWzPU2fkGmSdDKpOHiAxMDoLIyETFhV6QepQSKVmiLJyoMZqkTBPKMJkUfRKUoVQN7tCGnDc4cDnAU+UqoUOkLsxGg7BECNxe5UFbCgtL1dHlLlXWSzq+THs8mUf5/oOfm/FHTXikBzKTucyIxo8eOQgMIIYWzUQFpi2RzAslc0CpFYWom5Q5QwFR/zROTpXTnAeTzZEWJg/wtMqdWsQOr5o0nSbV0yASSeMb9FmRYRHpWP6cHi8Dup5fAtNbfdBPUmjorWM+lEARlehE75EFLoRBXRnNEOfKADWnKW2J8dCXiEiKAzFsRpwp9dRKURO24DTBSLThlQNpWtPoxLMgx9sp3iQSCl5Vp5ZAtcewoGSyov7tqEhNj1Jjpo+Z1ekPCj0EQ9fEs6niqarLnCjosrpVQ3UVQ9OM1+k8ur+paWZEaI3HGcLZmba69a1BaKlcjVSPm+L1ndG5aUHoudOK3JNJhR3WcBS72JZ4YbleaKyYHhuzNlw2KmRQaCBo9oU2aHaznD2kZ7+S1f82iHa0f9koWLTQobFGTbWtYy1axXBSzsj2RbRtjajkOlfklEE3u+UtdJTwqoK8AVV+vYhP9WncNIQCuX5byXJ5tIXlOpc90I0ZF7y1iKUMQmdc2Md2qdrdQn4XdHERb9DI25evlg6Je0ld//4XKbTiwDVsna9p6ntf/BopYv3NK3aUVJCs3g2WGBkwxwj7vGF5hFgMTtaDIbzcZk3YsQMlqE8YYa2l+MdbjODJhwcUYhGPGC5yOTGK98KwJN4Df5K8pqSaCOMYtza+l7ExwWib49cgR21f7HHGlpMGXN2qntsZ7ho+OCzwMLnJ5HkylL0AppfsYco1qTDiuDBdovT/AQ7e+kKHvfzlrIRZh2Mm84QsdOa9mPeIalZvpJqISXvJeMawrbOdRVPf2o5KHno2DvGygM4eJydjQK7Hrp5D5FvWzQw/hR6WuuAQRn/JC1swg7UjbDJmUZsOk6b0TapsZZ+0QbI6gwoZ2uCTUIt61HsqtVficmpypTov70svm/kiqWyCKGqz/gxKbx2aXNsIv7EpDjuTI2wJ/jliBTnVkJNnpTfM0jog9A4/BittkhiB2tU2A48grZLzVHsLdPB2pcEd7p7oAwwHpdkYzvcTdWOF3e12d1cGBcRDzft+XEhiYcTQl0iFtAz767e/5Qtw0Ah8VLuOaRpmmnCFE7s6/wYRyHU2GCwv5Ia4wMLSUBct7Qdb2+PLNQ9LOh5hk588WimXDz3AcEdvoQEM95CPzPVE83HZnB7oyrn8do5VLgymo/gWUb6ytsRZ4+Dotk56PJZe8IELJw3EiXoY5ZYb5B37jCBcdrO5gyUorQHsyKX22D8OOCNsATxmgLTg1O4ylLf9J2IAgyHIAL4vjIEMhgCDGCB796rkXe9773ufdl7v8z6y8I5RbdWKbvTYOv7xONZzjodqeR/naowGOZVO5Za3jQ0W9N7Zghr4QXo4mv70IG90F9TgnDDBXiaWnr39QR38nw1/72/h3A91vnMRAnT5Qk3MxxiMkgVt8FGKt/94tbYpjgd5BKdnEwQr2Xd5mEd5BtFX4Pc8q/cqh6YdWLJ6GqFLYndtZcclXmAG8LcFkTZ/MVF/9zd7+Vcg+8d/XuFDngN4gTcY6PUXjhEhWRAGH2U10dd4SReBLeVFFniBGcN9CcEFyJYxa6QQvfJ5QeUdS5Z+KLN+J4gsKqgGWgJQLwgTMSiDKUeD+pd3N/gWPvRMgLchHUIprWaAiREXQkiERShjjFcZ00d9eBYbB5MFaZBKTDhsG8QrQ+Z9HLhGw7UFSDYRHAES0IZ+f9OFZKcsRrCCWuJ6zEKGZSh7ZyiDaTh87cOG9JBIbXZmjAJ0PviDi3GHsUaEDBgPTeD/gH4IeQezX+1kiIeYPHulga+UK0ClEFsHgpEIEm/AD0TCbCdjG9YGba2XWMpifvCXWIwFe2YoigRFijZ4il2RSPYzb1mVA4CQgBeiGObIIXnoOopXi7c4fbk4cODRi00oN74FhVKIHYVlD/wwS1zADxOxjG/AXA3hBarSJabHehH2N+aXBsYScp74iWXCdtsoit24ht/oFRWlValGRGsmGOiIGJSyjuxYSQxIYy4Sj9V3MEtYj76YPKEQYAYxYN9HJfxoD45ILLUhdg2BbWsgHgoJbQw5PVoHBhBZQmP4idpokcCXf6WokW/BkQU4WqxYUUAnkvkiISbZjorXBGJQ/2u4yJI2gkovKXVnhI98JYw3iZPFCB7MxSMeAQbXhm0l8YzgMZTKSD1aF4ZmYAQlgY1qx5RNiSYYSXNRiRfhhWL1MzWqiG+MIhdc2ZX9ZlIqCYFjKTa6kV9muVMA1gW4Mk9bAJq/gpMSIXFR0nHvBwYLGWF6yQ/UhpeYSEKa2CvTqHFKSYaDSZjxYZjshpg6p5hd9ZFihSGQqYCSeZIMeAZr9YBICIjzCCub+ZJ+VWwCxgU2OTelGYke+JBhCAZHCX8eB2EeAR6tqUsruJq2CZi4+YK6uZvpRoNQ+Zt/l1VYGU2McgYEiCEMg4fImZxeCU59uJJv1ZKBVnCcGVyvcv91QcYFD+cx2ikR/LAGRvmd35kH4BmGavAqHueacGR+R0lUX8Ke8+ee74l/wSefv9k0pMNI0+SKflEYqDKE/vmf/VYGJyWWBEqWhNhrCLpT1RmaC/qg2qkEBFltXWCheaCkFcqC6vlGfAOi5RGYJleiJtqbozaff3deEhJNMnqOMJpVgkGjk6l4CyOgl7lSonJwPTqdfnUxaYA81omdf0WkRuoRagAGeTAJe3qhTeoFHTpCRimGKTOi2RiKJqo9VxpmWboXcZFeovNVL4pvYTqmAMSAOIA/4ZSj5dQEujZXuVEPTVePflUQUKKPW9SgpFmaRaqQeKqnfHqUzrFcgLr/WEiqJbSaehK5lIeKqE6Jot6ImHyBc6JTYprhFySZP5Vao7P2L80JcDrqqcMhebICdbtFqgWReWjUMUO6qnaqmq/ap1pSlySEnl3gpOQxpd5Wpe+pqCHGqHzRd6GDKqvjmKUjEMunrHrIgFrQSZuaQK+ha/uVBTlGrcJ2rVtUPLpyndlJpK9penhqod8ZnuZJPR/aN5lYqILJq71amPEJrFHpFwiYNJwTGfapF5Bpsvl6qZVRBmswGf5qO67RGhTIa9MaK31GUwdbD610EA7HraUZCnYKsXgahkNJlA1JtCGKsbqamxvLsbzpsRmpon7hf/TDISG5F8bpajS6st40/7ANiKb/KrO1xSuhSrA3W605e7BPaBBxsIHZAaGGRZAq+JDvV7QnCJR+A6VI2WAZS6VO+7Tw+ZQfq5EX4n/1+hcCsSJ8wTAdubX+2bWLJ0UwWzBjGwSD+AZxNTFZ1F86m1sZqLBSGLcR+pq9MnZ0iYInQ6G5ZFR+q66AG7gnencpGqwX4oaJ4kNC2KgyWoeQG7mcBLbO+a+8dhrLsQWjtLl3Za06+zvDk6pwG7fEsjziCWHYdq5dYgbf2QV/+U9M256wG7vt2l3varuoIo6khSqPCjWUGnTKGrkzdqOU+ynBcRox1QULxDa04Weem5Zl01ejKxFwY67MRcC4yiXZm/+ecJSulLauuym+nEW+F7IhXHC+5YUqdMiRWNu7yPm+8VAGYPms5lS5xNsEXoS/EyMdaatKnisdChpLUQi9ENoc5pqMpvIGBkweFnu9yeW9JAq+gfvAVRXBEgxa5cs0bYGsIlmp74upr2VjLLVArVG/oRoEqLRA0hkrptS5LLwQXuC8xwihq+cQYLcRTpa0irXAU9bAhBnEVjW1iDKVfxEhLPo+XABWSjymTNwETtxWcHXFWCQPQcBOnqq5E+MbW+y5MyykagmJODkdUiIyW5gSq8tgaTxha9yUbdxZ88kuHEmHSpQFXVBE98A5LPqKS9zB8CVbhWwcmwkbY/OpsEL/yLY1MbWByJ4LpAnBI3HrEV4QyZJ8Ekg6l4xmyc6FyRapyco0xIgSnPVSFpzTBY+ktRmisnpsi+NkXzYrK3NVBiblRdnMyrGCKbess/YAHossHdepnVo3xpFcHgi8vdJWzI11zNuYzN71xuxSn+UYBmHQBvKiG21wRAJBlXjMtUz8jlQEztJ5BgVxBg4zmsUBU1a80Gd7s8C2vCxsPFRXMc3TluDxU788HjqccXHkugz8w097z2KWz+ziqP6sVoySBgmYVY4Lx+6L0NdMO7NcHGfw0BA9NgsD0WXjG7sIsFccPPWQBThbQRqNN4oWEbvMj6tHcSKNEhartPJ80mqc/9Icu9Kk1tKKksFiwElawBBxQdCI276ojNAHxNM+7TC/kSMLQ9dy7TC18aat8scHOjFZUHlq69SmGhE1WVgCTFhWXRJ7m9UZN89IVc8XGbWHyclJAwiU0gVXK1i80nNDKNY43da1AxtiIA8//Rt1bdqmPTZ+nYitjNTB0xsZrdHmDKfZ6XAI5hHHiNgiMR3fybolHRKNHVCPfYZfzUxhDccwPYiXzRDM88FtwNk3zdYdDNp6BtenXQY3jN03fN10vQaBwdGsjbxs092wrdFsS6dSvUarxwUh484jIczh4dtJ2cOGWpGx66uzS7jfmDQg1Qb4I1jf+SraJAbOrdYt5v/Z0j0whDzapF3XN2wqD64q2I0qr8IqUNfabDPOeOXUB8GzdPoGvLFGjxyQkdjeIIHAFxvf8u2Cu1rf9t2xgyu1tdsulS0GmDKIeXqhouw0YvDc1Hzgkds1N1LddO3gEG7kvZFVDKFODmPh4b25S63hGy5gCUunObkFV/gxHkFxJC4yIEHSKb6e862xLe7iUAvjkm3cGULjmMIFjKCkF8oI+sLjBf64HMzEwcspQs5JQV3kphIYf/7npkIdKyLUuFIcc0XLbAPlgC3ly/N9FcEjjWwlcOPR7L03ZwzmZifmf0vmZS64vxrjIIs0a55VjIDjYBDgy9njGFLNn90p1M3/SUT+4IBO64DOK6up3YUebDWrzbLi11Eu5dJx2bgSVCAOQiBtESJDMryd6SgB3L0k3KMY2b452UPkz/hT6mDACMs902ew6gbtu64eI7pG1rHO3d0N6BAmELsBYWmA6ja85BUO3mxqyIW4wsH+W2ZkEbaB5dxB1fu0Ebs9zM3u7Ft9yV3dq8Rdc2nO6jBt41xw2QLBPBecKK2O4ONO3UG9MH4eGLex7h+/7sK8BanyI/H+MIfe67Fiy4wu5Y98HQb2iMDyyJJuWGUMzzhM8Mti8MaM8Iiq8Osj4zN+7TYO6GiNKtr0yWttkpaxrCtbRbHx0HXN8R4f8ngZ8VygvSNP//KqUugnL4FYLCtxYO9ghO8aGDcZYeygd9vdoRFbILG+DMw5b9Kb/rqd7umyK3O0K+pIw99kvTDotTBqhdb986UwuvQPeOdnGiPULfVIviMfb/WRnwZ5oBs8Ehg2bNfVmvJto8XuVPYJcc4Ywe9Vot4hiNWSKPeavuJNa/d3//PEt/d8789toFY+rVbO7c9ZlZ9/nvRutoCfARvxEAYO6PQq5RpkrfG1ge5Ub/WM4PzODx5KGvFaD++Zj/L0bshMjcKfbzzOoR2Rvh384EYYAaVg8IgWl/phvvrf2/qe/vqmGPt8X9n/TP/ODQiDEaNZAAjyQjUAkePeQII5DB5EmP9Q4UEc8ZqIORPxjJgmQeLhwJhR40aOHTPGAxlSZMgmJSGWQVlmzZosWbZwgdlFJiOaNWmCycNIJswtLVeueVMmztB69eQdLVny6FKmTY++ieNUatOiVa1exZpVaz0lMpXYAxsWrJItW8YqCZU2lBIlXLqYFQv2TRcwYMzwY5uXLT++ff3+BRxY8GDCf40cRoy432LGjR0/hhwZ8hDKlS3vw5xZ82bOnT1/zqxP9GjSpU2fPj1P9WrWrV3Poxdb9mzatW3flk1Q927evA0CChM8DCCDusXAFHOvjZaWYgQWXBh9IUiIZ1KWiUjxokfu3TGOBB8vSFIxcVK+WdkSptv/Ljbd48wjs4sZnj6BBh0axyjSpFOnovTPv60GJDCrLd6KS6w3tlgjlDfQW+lBL+b7Six+6AKjizf04rAwDz8EkbDERpSsRBNP7McyFYcArUUXX8QMNRlnRO01G1/DLUcdceutRx+hK643QLLgQguBwmAuC+cGkq5JhuI5KcmWtMBOO++u5Ci8kcYr6YyhUErPpZjas6kuM/PIAwydduKipyx+wo+opZJqIkCn4njDTqkK5LNAe7xKMKyXVvKiUEO7SGONCu1Rwoy61HiDUQ71CrFSSz0cMTEUN+U0xRUrgzFUUUOjsVQab0R1tR1XZfVHV1/t8QwusghjICSbc9JJ/xzCaMI65tabNYsqt8OyWC1F4vKklMIck0xGzIQWzZrkqw9OoYjaj049mcJzv22P6jPcrdZAMFAl3jDDjLLWPTANM97Ay54tHvUirEkpvTRfffnKVLFO/5XsU1BHJdhFUw+uMVVUWWU4R1gfhjgMIs947tYsKM51oYYg+pXMLmZdA7smiC3Wu2NJMsk6lNBriUj2aoK2LjTTVJMmNst6EyiUsJ1TqW2LwlO/b8EVt2ir/tQwwXPXOHA++RBNYwsvFlSjLrjsvXevfbeutN/DAAb7MYEpK7jszxBGmzSFF2541SFIMQUURPChu26778Y7b7335rtvv/8GPHDBBye8cP/DCUcEFFNIkUMeo8Mllwul3/Ci3S7UwLyut7ao2q5Fsc6aa9E/9NqIsE9fbGwWzWZds7RfX/vGtm+bB25QDsc9d9135713338PHBRS6Gni8QHtcStSe9Er6/KYM+w8aXOzVmJ06wcrHfXTVW+9+31eTzt2G2efDe65gUc/ffXXZ799wYVv3Pir7JnLDLGW3sIM52dOE001GORHoCQVuusV0C/Z0x7YuOc91oEPbeLD0eyGYIrzuc+CF8RgBjUYOESYQg7yKwpY9LeG5VXODFXLwyRUiKYMqQsoAqRe9Qw4QwQm8F8LZGDZHIgwCLqmbXDbYBCFOEQiss+D8pPLx0r/mD8UqnASaVLDfBikPKVRb4Y09JoNAYbDHBJshwfrYWsYNsEiltGMZ0Qj4EwRhseFxS0kZBTlmNjEJ4Ihii6kYlxieEUD1lCLm+JiF0X1RVOFkTWsIkUaFblIRppRH0YLy1y6MBbm6a9z/FODurywhgBOj4B8tJ4f/3iiQAoSRoQslSFVpaN5mKKRr4RlLNtnCseFSywHqtfSTOi8aNllap+7nxVBGcosjhKQYzOlF1E5I1WqRkdDqKAspTlNahYOER/s0/0AdS4TWhJzMumcGrwATNDda5jE7JcxjymwZI5qmcxsZo4SWU161tOeeyNFNm+JIF2WJV2Xk+KB6mIG/3IO0JznFJ0o1RmZUrYTNO+UUTNhYxt9uPKeF8VoPWnpJ2124Sv9XJdMpAaUNXTuauWcFEITWsyFlqihDvUMRBOmSopGM6M3xWkjEcHG48XlQHA5F3oM9ZJNbggsXqiaGuB4lk+qVF8KbaljXgpTzsg0NfGkjT5smlOudrWMO+1pXADFKAc9CD1c+OX9HJUh5e3RqfuCalQZM1Wqus6qpZFoVrfqVb72NYOIaMNWAkWuk0pqLVIT4IUGihdhvjVfcZWrp9hZ1xbdFa9YlY1F/bpZzloQEbXEigCTJ8AFFRQsJbXjFhrrWEtBVq50pez3LDuavGZ2d43AwhN8cIUk9P/At78FbnB9WwTiFte4x0VucpW7XOY217nPhW50pTtd6la3uj0Qgg+WIAUk7HVwptCKACMHwy3kMVCcy5CiUsraS7k2qrCl7Gxpi9l5Hg4JSxCCcPW7X/4O17r/BXCABTxgAhd4ukmAAhW8C7hHhla00ksQgwRoobXepUPsbS1LIytVZMb2bPLVR221ajhEYIEI/UVxilFsYBa32MUvhvF0f1CFBfuNp0cj7XzEq9oJL48uUcMXhkPk3pbCt64gDjFWb1c4KlxBxU+GsopjPGUqV9nKz/0BFmq8N/DOb8JvDFQoyttjpiLVjuOUoZBBROSFGpmqSM6rZgWHiSNE2c7/d4bylfW8Zz4L2AeNKFw+cZxjyZ13qRPm0BbSwFY1D1nDG55rhz3cGTg3cwiFY8IP8LxpTke5z58Gdah7gIXCYTOEPT7QocPCNNOitHqOclejSfdoSEv2U5OOKYglumTBSaHTvwa2nUM9bGK7+Albxttnq0JmSQZqQeat4qTIlVpZi4jWkHYzTCttyPoG7gnBBne471xscpcbukdA9t0EXQ8yy6tc95Nwj2No5i54odqBYbM6s+3QbfcQmoP7trgFPvBxm9vg5Eb34Hja7q54NEFMI7NbOecueN27L/k25r7b2W8IyvlvViB4yEW+6YOX/MpQGJyg2+3uwtJvzIhe/y2i/mdxfl17wxpPJsdjd2nBUWHkPwc6p00+9AJbQeHsZvhY7RVvGK6WHxNKgzgtjvFR4tyUOl9bt/3WCE0H3etfJznRxQ5dJggunytn+cPrBfOm9kXRadBQtan+R6sLEusKSzfdEHFisPfd70Ife+CL8ANMcLAJaEdaKOJSWrYfNDBmiPpdGj13Lda9i3dHldb7BvK/d97zgBe8uY8gODkgnrB6fLknHR+YuaQhamqmvA0tn0PM38jjfGtEbz+/e96DPvR8LrsaEY88CB9V1cFse2CgXm8Mxz6Bs2dg7W2Ud3zUuffXx36nfz9lIlD/8Ggfr1hY3fTkC0bRmWSv8/+1B33vSd81PP8bErI/f/oDe/sEnkLgSo94/eWRLNBmqtXzkBOaubdSP9Rhv+5xv9a4vb05giSAwAisvwmkwIK7P+i6gsAhheGbi0ILi00iPwH0kAmJIntTqQPcHknDNbuSrx7itb7JvQiUwRmUwAq0wRvcrwtMrigAHFAYPuI7tPGLNhH8EKgzAxMcJhQMmwRsnQVkjbx7AhqUwimsQRy0QivcvtEDnO9Du/pZlGdTvfXKl7fbgnNSQgVSwRWMEV0TH/jrG0QQAiqUwzmswiu0wwkkuhfkm/1DvFS7peMzKDHMF3SJojLkozPcojRUQydUjQbMmyigw0iURBm8w0r/rL9iI7W/2cDhC4WPWRQhRD4itBQSZD4sSqdaawwmbCA2jB1HxJsonMQpjIRCoEJHmEUaLIRIoEFL5EXs0zMt9Bsf/EFciqTU0xq+EMVLOZBMMoI+srnIUkWzYcR5yDsiiEUanIMv8Ad/GANanME62EZ/YINKgMBCGINt/II5iMReZMfdc7EeyDukQ7yGqxCyUK9jFIw0G50TeosCQsQbUsQVZMR96MFrnMFI8Ic6iIRIGIMvmME58Ic5iASIVMckYIN0nIOGdASDrMN29EgVc4Q5qIMxIMk6mANHEDYAcwLAAYQfTDu2YLW0YC8v0J9SXKlTRMXUCUhcY0TN0xtI/+RICATHjUwCiNTFCJyDikyCMWCDJEDIiiyEiAxKOfzIqvStUqgDbQzHcPyCOigF/WLILyDJsSTLrvzKHoAuKQCcTRy+hmOsZ+OHBwEMs6q4K5qQ+UBCuHrG19rJSWNEV7ybKphKp5TKJMjKKayEpyxKfzjKJOjKwYxFq7xDRzjHbRyDOsDMyuRGlAyurlzIzwTNiWTMFTOuJRC+H1SCCTHEBbkPunRNuazLGWoaQ9RLnMzJaNQhVlQYPdybJYBMiCRJxpRCcExIofQHolzKMYDM5ZTM+qtMNoiEs+yBUogENrBM4fqC6AzNz3SEUihJKPOBHnTJ6pGJ+ygLCFkDQ//ZpJ+IkNicoZqkzfbay/fqSw9jxLx7wKl0BLHETLGUwpAER3UER29MzuU0UClsTs/LSjcoBerETIX8ymysA+xcyK3cSjbwTn/4AigTAsBBBNSsngl5Fzn6CfU00fWcGvcsIJrEy8eazyKrz9i6T8Ahgh+wUY7MSnJcTKWkQZIkzKOshOI80CGdwwT9uVJASUewzgtNUun8rexESAvdRgw9xzGIsnicR7R4EJnYJC9okxMFU/U0q7icobs8wgyzTVTEzYKZ0b8RAhuF0ziFUzlkA+Usx8KEQB/NU+WMyjqAQMUk0kCNTCMFt1JYUqZ8TicFLiiV0inN0A2FMt7UGy7/jDgtfZADOcLKkZqhYpdNPdH7IFPZFKlmXLMXbbMYjS/dTJXAkdNWddU43VFHKIQBtUg/BUeFhEg/tciEHMkv0FFBBdagJNQ7y0gGnc6MnANFfVLt3M5I6M7vhLLC+5s2WDm2KCsIQRSpyZ9O5dayAFOgACUjqMm8tLY0rbU1VaYWXBt98NBXdVdXJU4NnYMfcMymNEytrAMdrYSsFEcCDdZ/NdBh5a+vDEmUbFD+8sxmXUijtDNptTGGs1QIqRy486dutdhPVdEV1Z8zLYx/7BR0dSdVvRF2/RtEeNeTjVNbjIR3rYRflUGXBdiYFVSB9S1wxFAUC8sv0Nmd5Vmv/2xYwAmDSr3W9DwUd8kfdTnadFHabjVRcM1Y65lNcjUMU9U3VD0ykbURkvUbk0XZrvVad5XZsBVbq2TIOeg8h+0baoW5oSVaTXW9/JkPpZVbue3UpoWXpx0dI5hN7KHajLPaN8Pa19DaN/zawjVcsBXbxAVYmh04tOWbM3ih6YlLidXU5oG7jZ3bzEXadbFbhGJRjp1ac8W2v9W2wHWNweUbrj3c1WVdV1Xc1wVWxt00x92bNmCaN/kca30QQqnco428pwFemZhbdulcz9UfqQndTMnJSJssNSQVdVUY1N0b1W3d6rXeVoXd7B1S2e0v2tWboFUClniTSNHd3U1Pdv9RWsyJoii6HPUFXrrlXEMBV6c62i0gVX7wWE4B2UEy3daQXr2h3usV4AGWU+01YMjkXu/Nm6ClJJYAilCYXN5dF7mFGvW1YAt+mqWN30KZX5XqJhPM33W6Ned93tmKnf/NmwAm4BVmYVg94Bc2yOZUYLxhYAVhmimSYH/6J3Cyowv2YfaN28311DW4X6eiSU0KYRTZ31BxQhROthaG4ihGXBim4nW0xBm+mxq+H+bx1kKZ4B3OHDP5YQwW3nQhXkPBW1A6YvsV3ZsjXX7rX9Zw4rtRYSm24zue0yrWYyq8QSy2Gy3Gmkt9iTbR4Zq04OeBlgsuYyEW0+ajSalR3uX/tbUVIeEStqwTblc81uRNdt099uRdvD4/rhtAHiDzHWQKbl/1ReREJmMN7uJCUbPK9QJNkeQlPqU4Xo05tps65uRe9mV6/eRghkC/E2W6IeW9MF9NrUn5OORVZmX3jdszLpQ0TkIj0NRC+ZpafuONw2XV0OW64eVfFudxFmZhFrlixodjDiqhqlxDbmb44B8WEmNoduVGbj7EuGbT0ebmJeEmzuRxBuiAnuJy3mNgQ2d1TuZ29qbOOZN4nplnXuQNnmUhyxRDkeRJVpFKXkPoTZVv1juBBumQPlmC/uRoBdoqSuhCTuVocWj+medvimaJpuiK9oKLtuUX8eeSFemd/+bpkSbpgg6ug0Zpif1icApjmeGfFXroly5jaZZap0piUtrmnOvmefBofAjnntbqrb7Rn4ZhoUa+ZC7qlW7oFHKiJ1rqHmbfejaUmW5jaJzqq6vqq85qrrbru/ZqxQVr0NldL9Zho2bopD5rl57niH7lpz7Bvq26uLa7ufZQIYDsyL7ryabsTs5rIt1rpuprhQbssjZrJyJsiA4o9XTrSF7emzYYxy7ZyGbt1pbsyoZtyr7soMzsUibqv25flkaTs0ZreWblqHM9uGtqqaFmZ3xrvuRn583prXXt5nbu147t6N7q2ZbDzP6ooCKUCb6cRXuemeHt0Ibm4A3e4X3lK/+KahNB7cpSbeZ+7vZ27zeV7vjuaequbUkxZf0Jbh9G6pZOazEe7sP266TVXDP21K05b5di7Mtb7zd87wZ3cMiW7wgXaWGub5iEW0RZ5M7e75Ze5W/aXPUsYr+gHIUe8A9v645VbLpLcNpb8NR98BeHcQiX8BkH6Be2bqZhj4Aaa1XW7dBWa/WNukL01KmxlBH/4hJHWkO53wMPmBWPvhaf3hiX8imXcRq3ck5O3IM+l0HmCRw+X5XmJUT27UchY5kA7rdAY+vhVAHX3A2m5dN28vaDcgCm8jq38yq/8jy3Y0FFZy1wizYBirxI6b8Op6Pu8FY242Vu0XNSzyMX4k3/tek4V8A5T+E7t/RLx3M913QWnso+nxo9wm6iLWrXu2BnVuQg7tRlBl3HsmYwjfTkXkRKTzZMp/Vaz/RNx3UbJYInmIJTyIdfB/ZgF/ZhJ/ZiN/ZjR/ZkV/ZlZ3Zk/4RPQIJZiAMUP276hHWBlHU6tvVt53b4znUaF4IqaPZxJ/dyN/dzR3di5wR9TF4S2ecRruTlZvBup/d6/3bY9gFfT/d95/d+9/dm/wRzEAwmZyhJb8Js3+V6V/iFZ+173+l8//eIl/iJ7/eAx7cUrzyDX0WORhW6ZviPB/mGd3hOvgJioPiTR/mUT/ZPYHf8xXjZ03hpRHhwDvmat3mRH/kV/xZ3lef5nlf5WQAMgp+MmM9Njh/Zx775pFd66M75wiUCn4f6qJf4aT+gl38+omfTmde7pef6rsf5pm/VJ5D6sSf7cwf6qq92GL12ntR6rPb6t4d7pnf4KSj7urf7ZEeCdn/z28T6dDXhdUX6uBf8wff2PNf3u0f8xM+HT9B7f4HztffLtkeEK6D8yq98wsd8uI/wcWcCKfD8zwf90Bf90Sf90jf900f91Ff902eCcW/8bH58eO9nybf82rf9y8/83F/6yR53QtBBYqME10d70+Z7yLdP2r/95Fd+ytf95r95ke793x+24G/219fn2KdkjZb31F3+7vd+5nf+8Ad5X/+OfukHNepndut/ddlXbuT//veHf/GX/4WP4vI3/z5D/2XPS6EXG4AYInDgwH0GDyJMqHAhw4YH9UGMKHEixYoV52HMqFGjPnweP4IEiegKyZImT6JMqXKlSiEuX8KMKXMmzZo2b+LMqXMnz544fwANKnQo0aD5jiJNqvToFEpOn0KNKnUq1apWr2LNqvUqlqVek5rZ4sUIPyNmz57tp3Yt27Zu38J9S3DuEId27+I1aHEvX4sb/2bsGHKwx5EsDyNOrPiKz8aOH0OOLNln0cpfL2POrHkz586eP4O+vMUMabFo0cZNrXp1P7oE88KO/bAv7b6AAQsmHNLw4t6+f5f/nCx8OPHixomGTq58OfPmzPl52TI67NjTrK9jb+1aoOzueGuD93t7Y27dH3kDT6/et/H27t/Dd+l8Pv369j/zyw9dunQv1Y1kF2Bq23HnnYEMhZegROORZ95u60EYYXrGaeKII5FEMocbdbBRhyM0VcKGP1+M0eEcc0TyYXwrPnYfE1LAGKOMM9JYo4034pijjjlOcV8++uVnVnT9jSWgkW4RWNeBSyKkoJMMcuSgSBJSWeWEjTnyhT9bctmlijGN0aWY/rChCYtn8nQfIUWw2aabb8IZp5xz0lmnnXX64COQZZ3ln59HAqpWkkwSuo+TCkIZmJTnEdGolY9C2htO/2GO2eUcMlVSqZiR0ORIIZWgGaoQat5ZqqmnolpqnvfteZqQXgQK6KCFLnlogoliVJ6DiDTaq6+9RhrsoxVGUkcdkZzkUqaaclmHTI4wy+WlMs3B5RhufCpqfKSm2q2339K5qn2tumpWrEfOSquBtoaH6zy6msfrr/PS66iw9yJWSbFadonsSZpEu6WzMRUSsD+cxrTsmGzM8aW2xHELrsQTpypufeSWe66R6arbHbvguQuvbvLWW7LJ+OIbCaWVspESv8zWQRJMCjOLMEzVRmvzw8Ld19RWPwMdtNBPWaEnkOWaq3GAHHcc28e1hbxoYSZTXfWvKEdYcMCVoFRHtP9fOJISzpp+AWpMXgds5s48+9i2228rh7GrSi9NYNPePU1b1FKTbLXff9uLNWJuGFwISiFySWKHbszBtUr6ZmgsG1qOYbhMIm69Nttwc96550nJbR3d2DF993d587X3on0D3rrrRAhu0tjMhp1SJZVocu/slY5B0yOVPKL5Tp8TX3zboaM2+nWlm24X6qnjKjJhrL9evfXrVfhpStBGW0fuimly++0Wku+I+N8npskcL4/pxkyRNGu28DYZX7/9zx2NtPLL2908bM/vRXVSop71CmjAwKnkESrbEthQogn2WasOhUCfSR7hqcixYQwQ/FqJ6sC4FDnOgY6YA+a8dLj/MXlofjW5HwtbyBnkpWV/q2Ge/xAEwItET2r4IOABe+hDIlRifWIaQ0rgx8BjhZAkxJpDHV72hcWhKBKFsJD4qlgJCxUiQ0zMYOLY4IYUPQIljyiEG9jABsOhhHCVSqEKYzIfS4ChES6c43xgmDQZDqh/NbzLDXGYKOkNhoc/HKTrKqHGSqHxJJWYIgUXScIIzmGKYaRS+LJYRn5dKxJJZAnAujdJkwhvPmDoByfoaMrl2BFAeMzjdvZ4uj4uKId8IyQtrWdEmNHLJJogI6XGcCxHUJCTVqziJw9TyUf6w5eaZAnNNDWHxZzJOZyAQz/AcMprgiaVq2Sla1zJR1jG//KPOhRkLctJrwcGrA710lcTk4mtTVbwglscw8o4CEUQrsSCyGRY7VBSQk3FDELFcQ4X1EKGUmIzoZrR5jbhQkNvzgacEBHgrsxp0ao1E5G/0peIvoDEc15oQ/XsIONQVIiTTpF8J8WQhji0sifWoWHFLMkY2zmGhp3kEYes1DOD5RjmfGIWfFgLGJyg0KN+haENRZIeIboQiUaEovG6KFVLVs8hFqJXu8ScBB8xrzGWEZIg1ISvwjc+LKbUfMD71yIjccktKROeFXKDlhiWRENqCp74wklyuLAJQ/CBDGyhAxz4MAkwZAGpilXqUtnyUKdCdaKyXF1VK/urW3bpjP9kBaIQj+XVspIRc76Uaa8sWAgmutRgXeqgSXFXEkdizqPL1CUZtSRB9AWRfW5YSTBR9pLkdGI1dNiEYpHK2MYKqqlOTUhk9SHVkVk2ukTQRD091KitJrNxG93XiD7aKNi+jLVSnCIxq4jFDG1oclzyYoq+p0/M8TOnkRDRGCLxyUfMQYNumClJImFbveIrOU6YRGrQkAU5Flehx0XuYyHa3OdOT7qDxG+HEkGvSnDIDZW47gJv6ysFwrdh1x1hO8n0xU9t9oBXdKt6yRTJSdaUcjg1iSMI94XGJQazlYsdSZSDBAK/BQ2XSLBx85cx5DpWucuNqEQhHEgJ+9ARL93/sMnwGybrarUQaGODJr/LXdk64rOtmxw9OxhTKZovxdPVlxsoxc/czbWu9jVJbv1RBwCTpBIbdENvhbUcJxjiLVwgcpH1gzRVIjm5rVyyQh482QFC2YDqQ2HJ1PeFG1u4V4nIb3apHESupujDIeWy32R7og2lFpKf8tUi2/kFNwBzuo5Am4d02WEA73S1/QzwcoDcFksQ+qgLbmyDvelocc4y0tVLxD+7lNVfaWKBcxAzEWY9Ilh/95GvLoSYE1EsSj3xWqWORL3CdyEmgpufn60Qp1/tiEaBmEyR2OwVoh0mDXctZ1hbzieG6pZBBzuhw15qsV15bCgBcjfKfp1//5k1h18V4t5UblQh6DttinvN3Ztlp5aeGEkqe3DcpVXzVy9UBzc3bLMjDNNNqWztG4s52peetkkwWyl/3Ws5nBBsP8gQaLVYM+DYHHhDC77HgzMo4SLxAdMX7rfdjenZREiE1+qQaYqH6YyN2nTWub31faZ8XiG32hfITQQjKu7M5rswL7vr9WrT1c7v5uzMxYxfEpm9UVDPLMqWIwY69CMPlkDCJYZqCKMK/ZRE36bRa4j08Sj9PEyfPOUn73RfbbBLboB3tSrnq4iTae6JsPEcMs31a7+9V47c8NirVna9Vw69J+fXE78Ya19dqKMeVmDXyXp3mKvea2yYuJQBCv+7e51COVkwhBY+gRQkpMEQSEi8KT+x+FU23n+Pv03kC1P574Pf8tLNfDKfLeUbp9gRImLD3K1dX6/G292/8vbJuZTV1lPt9UTI74VHzcA3s9p8jYiIVZvX1JfvrU/ZpV+YXBwRPALaiMnc1QuVUAH1WeBmIMH14VH2Nc/24cY4hV8IiqD41dLe1QH8EY7VaZrwmd/6mV/cedh1tZ2LcZs/3N/mkZ3Z8Z8DVprJdZx3ZVvvAZEBzpsDEo7nXdf6jIEEFgL7PJzr/EbRXOAUfsUsaKAMcaDpeOBfdN8OjeAXgiEJWs8j1NMXmJ8G5R1+jYjZUR2ZPFvFZVfMaZmMhZn/r9ggEeCfyegf/+FMiZzY1QXglmlXr7jfxeFV5ZAVhpHJxCHOHGwcrZGcAa2ExVBhJeZDHFzh/mTh3Wxhg/BNGIJiKIph1SSCm2Vatagg1vnDxY2eG6qi1hFi3HEZINrhDYrc/o0BEbQZerWYx6UevNWWvIlZEGmQdiki+zVK8TWgzC2h6k0cVV2BFFiiJVphJirPJjZNJ0bJJ4piN3qjD5TMGIne5ORdG7JBpvkXEnaYBPJedtHiCE2OV91hHpbMHuZiGW2UyfUStlDbLtGaBNqbP2hYtYnInU2XEkog4uRdycwXLPqQDyTfNF7gJyjBnvDJkSWadiwaozVJZDnZ/258Y0iCYbVxG/h9HolcXRPqnyPswSp6Feil4tTZGLaVVjA+kT9Y2DzioOvp4D2ygcksUpttCcMAYrxxWYpFHPAlpSMCkYjsVxLaGbX9yuws5AEdgfNJZOJ9gjlY5EXOTUZqZDdxZEdC1UcunUiiJfg9gmg5QvjpokA+AtM9oJ1Z2FyqoPrRJSESod3NoYu9G7TkpC3mIOzpYn0VQiJI5fwVy1AOYjJm3DKqjAJOWjOeHYkwoWXSC9RVpQEdQURmJaFtZVd6pehkJDZ2jDYqCjem5Wr6wFp2yRckwve5ZiFM3vlFAtNFnOfpVOgRogvinixGAiACJhHopN/UV6PM1//+XZqq0WJNbtkEqV4CLiNCTp1TehWzraLqTY7UwZumbGYB+UBXfGaCcUJFiuahgWVY0sVYkmWTPdqusOZqPkJLDlHlleISNl21nGNres1T6gGJ0CbT4SUyyiCZlR69MNtLehWK+A21fRb8eQq6wdWxNKcDCiCmlZZ0PmgKelU6zp1+UpkmEM4TflfNEJIPWAEVeOZ40tEnIMEsYKJoBon+gKVpqgtq5goIxqdIkqGmxCZuPtGPuubm+YCUVY4PYOe0MR3VPVFbymV+eZQEAg5+nUiVWmkD/o0+oc21/GIyqhGWOWACFiFBvl6SktX5SSD8eE+vNFu/XJ7fYIIOhYH/PdBpndrpneJpntapEvBpn/qpfryBGayBjBJqoRqqoaJnjSoZo+Hou+jojnpjj2pKXPqAHkSlgGpQgKJiXOqnk97dkT4pPZVe5TngKGbmlV5pYtYL/GTSu7EbV0Hnh3EagRphMqXpE20YiDqg1+RdlrDBZ1XCVTnbm1ZNnErNnOppsirrnvppswJJWBxqtEorotJoaS7qkjVqFyICpEaqsEoL01XLHExewYxBbLrmbSbpuBYjEYTqTVHq5G1aBrGrCBLSGJHQDwbn1F0oTWrVAtFqG6Yis73e+T0bKqocPWVasGrKTxKryRjroiDrskosnjars+qHdExrxp6nn3Bs/8fyB5H4R3raKK1k66NyKyjmmqUw3YhO3qYWKcJW6hfsgZMyqRsIqcqMgR68K26eHFF+o/VEXExZCHfd1Lud3vtd1pWlJBr2in+d4Fw+YRP+6nchLNWyTMM6rJxO7NbaacX+6cWagcbmxxt0LMd+LH+QRtqq7dqerVh0rMhe63KVrGqebBi26ZaIqw94TYD6AMtWalTOpRtM3n/iJ25mkJJO3iPogRnBWms66Rfe56VJ7uQGKCkyEb/w02mx3IHW2AAWZcM9ZZiSienR07ttarVVrQNOztwprJhwJ9b+ysNKScRy7cQ2ayjgLu4CiReYgX+sgdm2rXSs7fCmbfCCbP/ZkoWRfaW1biR7zu3q1G0o7l3e7q1ciogerOwqImmmLmkT7Vf3XsuPyuXi+iw8sgEoJkL6qu/6im8IImjbedQUzap9WZlAFqWN9SrT1iq5+aqFCezcrSXYbF09fSfsNorsOgjt1u6yei2fhsKemAEXSPAEc0EEG2/ZjoXYEmqiMq9YsqeheOR7xkv0gqJrqqze+gPNightziVtSu2P5ubj5peHUJ4CGQu3gZUHlSQJVx5+Hea8fh2sapnnnp3S+gp2niPnRSXFvZomlKIABzAAN9E4rqEBlwwCm4cCL3CyNjCf7skbrMEbvMHYjrEGm7E1js7IFsrzDhAPh6EJay//CtPsHoANkmZQW1aL4IKrR1Gq+uVs5WlZV+WwHiRCjdUBKKoUSilyGGJnd4kYvC7uAI6QlthsEcOlrzQciRpp+5XIIwRwVmnC3l7XFJeWFWftsW6x7XbxGbOytHJwoqkxobAxfLpxGOpBwzCd19AszN5nbHoN9trxFwCzD8xw+xoyDpMRtiRCMgfnG5vRM0OzGT3uF1qQHrhaV8Erp0lQh1mYf93Yhwlfps2l2a1luYbywTSKKKuuAJsy1WCxbmhxKlPsKrdyPW9wtcJy3EJWCCMb9NayKBJOgPby9p7jJ2NquYLvMCMpE+msvTbMMp9ImP3zCHobrFIqEcChYd4b/2J2Xlv2ikpK3emGsgATjtkFNLxlUIV+mBW/M2HEszx3LT3b80yjMd3EMpPM8ghPdBhWCzAPdCI80R0kwh4gtA804QniZom0r5bZbJFG9DLrwWEmbvvutGwOsbvVJhFK2yO04fcuaUF+1gvr3R2Ga6OctAMStapiNMtJ6Zu29GC8NEzTaRebJ03b9WgmTwev5weDcFmK8MhUdZFSNeVZat4ONWwWaVAPNDELZMveFOVtGrYg6S07QiFHtfhWM9+OoE65QWd79mcP9jcqLsvp7JIe4WkBqFGndn76wx786ECfHTqXNR7e4dR18q/MpbWodaS9dUjEtVzT9V3f9Ssj2f9N1wo/I5zJunEpwpUgfB+06PEdTI5zA/Uhl+J+9q0/APMDgirPjuppcZunSPWSekplh6Iio5QeqHdWQerLIa45DrHVBe67ZokZWm8dG/XB+AD8PKEub51H/UrKqlPD9jZI/DZMB7dw0zRxM5g+OxhyJ51y83CzKXR1T54uI+kTZTgb3IEP3EETCbQZYTYT0WYiqHf6nhRmFzJiBrY3blrdCahTJuVtNmHh2nEctzBu6ne13CYRTM6PQguJEoG3vu7CFfhHHLg8J7iC2zODE5uDGxuEQ56ER+/edbiHl8iVBzRBC3VQe/h0YypSM50gdHZsnlaYeYr4CnX6pqUnu7n/m5Pw7+VtzFZOCqbv9SZuf05eSev4bfJ4a2YQpVoq394tbBLrkXtEkqfykjN5Kzs5wUG5wUk591H5yQqCpji33iI2Y2PvHWT5dXe4dBd1xOmxdwv1iS+zIFw5krJ4SDKbGZVZrHd33aohqNplUtKmy4LrpXJ6n2d3iXfyyuI39yxM0zkdouODom8xozf6GT960UX60U36B9Jt9Hp6pXxBh1dLpheMHmeQUI/BHoR6SjPdf845MUuQUxfCHaT55An1zrLmm8M7CZsjDNPTEIvrCw8umVBqT+s4bU5xYh8yOAb6rt8cvVYWsiv7AjN7s2vwszNetDvetHNhpUMqBIoJ//ZeumF7VC7D5h0Q9bgX9foM8x1siKrfsiAssyN0eGSve4uTMEvieH9a6q/e5+MWzK/uOjDDz7uRe8Fw/MD7QKHP+wjWksLLNRfLtMObMcRjn8RrH8V74uocQdVbPbdqDQph+cB7+hhouz84949/+aaTPLwaS/qeSCIIwnj37SVcgiHE76p/o3int3qrt9zXsn7C8BPF8GzWJon0uw3uMWLSE6cKfn77tKZMs0gWENInfZ42PNNnrNNvINR3oNRvI9Vb/eZzftWHpLd6vd6GvqbHpr/TVaY30Y+W/Ve7gVC7gR7cQYrDqyD0QybskCVsAhr4rDeqN6pWaWjzMHb6dP+mbmd2D3OWjAGlEo6TnhxXdzzp77qT7h3wx6fVOP7j32nkS74r43NxW74WYn5qan7nk3/5gyGm/22mD3p+C261BOjp7/EwC4IX3QGZw/5JXblQd7ge8AFA4BMoMJMnOP7cFLrjg2FDhw8hRpQ4kWJFiHP81Xnk41Edf3rcfPSBUU9DR1/2bPRR50siH0TYsPHhyN8cjmNkMmQzhohOfz9/RrI4lChEIkeJYBq4lKnAMPagRpU6lWrVqEqwZtXKj2tXr1/BhhU7luxXI2fRou23lm1bt2/hxoWrb0hdu3b35dW7l29fv38B69U3mHBhw4cRI563mHHjxvqaRsaH6Ej/ZcuXMWfWfNmhR6A/bSaqyVAQQh+JvsgsNHqkv0IM9XwpSXqPGx+F6hRKpEchw0QuG87xFBnUpU5j6ugBXpR5c+cMHY0Z44ghRjcYbWI36Y+Nyp0uH42xjfE1TZunv5xPNObn9OfvKyqVzPSpVfv3r2rVX5Z/f/9k0wpQrgEJLLCfNu5KMLAFGWwwr8QgjDAxxyhkDLL5lqJssw053OwOz37KKSaG7hhjDx9KHOMO1OpgaLXZVjvPB0HE80GP3BKZ4zXfliPRH0vmQ8SSTdBgYw5BJrpDjzmYbHION6DsET74HmFDpNsy0sM0LWVcrcWbupvJtZVastEf6sxE85FC/wrpaco3H5IPQ6fwq9Mq/fb7T889ywoQLS8MDFTQfrhI8C4HEU1UMAkZlbDCCi+cc7IOKa20sti4u+MIjBKpLCSXQhLkDjb2WEiQL2ybEdWGaLTtRkEE0ZFEQaR0kQ5QJM3kEj4Q6u2h34AN9jc4iQ3pvEJS09LVK81MFbVUY0skPBHH8K5aYrGNU1I67ew2Pzyx4lPccbvy86wtBk13wDwMxUvRdxlsVN4JH3Us0jk1tFTfzVCsTLQ5KitNjyNiPMKNMkvMicWG1nOVDUEKScg3Wieaw5BtBSquk36SqzXbjxvS8suT2FhtPGa1w3I2N6o1Dz1n0wM5WznnrM/bbv/BzYrcnfc01wgz1A36LUParQveowGbV+nC6rUX43z3jVozUn04ImEUU8OykCNWUtHqPdhYCEXklCw54h0ToZiiOS7BeClLPCFjjCNlrnum1DZCrWTTyGvIox0xoi68k6lbbUctPbabOZoxtPnmOnMOl+fJ+fO5C6ExXwuNoodA2nO+lg696ceeltp0zFYTxNOWjmApkTtQrQwj1cns1OqYlNyDzdxI080i1DJxmyldDUHVV8XhpDHs03Di0odQG2KjzK43oum1nRiq41ofRpQoETSRl4jx+Rx//L7IlaBc/bF8ViPzzAEp+vP59wl96dEtLP3002F3I+CPjqClge3/RFOlAdim/KE6rmnvDoUYA29KZpk7aIprEPmCQwpBBkQIrylC6gQd2KCc8E1pPXtwid4EyL3prUdFzPvSHFryLPSchyazwaCV/GHCEUJkfJIpn/nuFLn1DdEs5gLD+zCXBfnRz3P2Uxr+FnMvDEFtf5nZjQIxA0MKgs1qqQlgAq2Gk6oJzDIHg9XcBBFCSxWiEzuqTic4OB9OGAQhSNphc9azvFPVgTxXg05GXHQlNrRIS9RBHENYJrbsfQaQd2xIDyPzQyBSBX1EtCQ/fJYHJAoNDEtk4tGcOC8ozkOKQariZrQUIiweQTQD+6LqXPes1WmqRHWwTGx0I5402sRS/8IxxAE91bY4zod4X8iNIh1JkTwuxDyxNGbIrnSwE46JatxTWMz+yEh/JE5xkGyKJCcplUpecog+m8Qmg0a0dn0SaaGU1yhLKRkqntJq2nRl68ZQmf4dgYwMJJhrKuNPfqZnVGxIBBtso69EwAEUdNhawMYQvGFOcUggpFsyJ5JH2HyEgC/y2/TEOJIvPOJfMxpTa4CzGm2mypHepE84zydEcq7PnOhUFxk8yU5FubNR8NQfPS2DEUZ+4X8PPdgETfRP1dXyUmAMo0xYlog6hC1qEbWEPygYQDhscKK5omNCkIlR0jyzNQ6UyexIFFKBMaRGMHQJA9maqkdo8ycquf+jS5cCTpjaY5wzpZy5vGAIm6orDOvU6bt4yiifbmueVYQdXSsTE38BcHZMNdgXaJmeMmI2NoKIqtWySim24cMTwNzUcLqKMV0dp2NibUiMsvcF2BIwkOfRophEhZzTsOaQz6OrjHaI14HoFaZ99SvPAMuHwaarUIY6LGITG6HFSqqx+0slI21ZGgVqr4u21CI/AXgEAlbGcKeaQ2zscLt7UkoQcBAIH+7pgx+lVnhCIpKR7IhRLb0mYYXsX0M+NbYvTRVLSLqtD3S7W21itqUYI244jXtccgEWDssd1CYM+1xERVe6UIxnZKp7OvZoU3WSBe/WQjLBmlSGi6/UJ6r/7gA281qtDnUILaX8EbxM9AOLguiHROkrPF3xCqzJNONu58BAw6U1J6nbbUlGBLtjbXOR9mzwth48yQhLWFyAJYOFBcWHDGu4QRyG0HTxBdSmapMN4N3uHo7ghxVz94ud2mdAVSRNE7uBqvsaLT6uehk98CHIE9UYx0S4Q9ruV7dHDeRsqjkHFZXmNZxi65dKw+YrSyrLQNwyl3vmJ0CBOVBo2IdzyewgM9MLfx/uoJqPMGJGlrjN4E0vS+5A6S7677IUTJ3AjkqwMazSUoIgtEA2YVrhFDq1cJMb3TADslpmbwwvKhFLcf1krNlEe9sOJHBw+JmcBNfBew1izkC9/zNzAY3UgRIDqlMdr1UfBs1TVHOmGdlm7QYUznIe2FRlh1nwuvLatSTjeky7ry/gajJwuCfsOMFs+g7ZeDfODHzWWktpLnm3qUqkjTArmkpjNa6BZKQNRyhcbpl7Kp9Ot3/M5b52G4gR8I53YOZNbw//9JT4/kx63QDnE/e6NOm9Q3hN3Gu3IieytTadG4SJj0x8AYuFQANXJZ5aD4JQOVEbilu1pttuV4fKUmYrt8fgbZGKLdwPTKbK8dFp87n85ZXzkyZnXqBJ2Pzmf8m5YeptSjWH+ydwProrWRZnAO45n0ewg1P97e/vunV/grjYQC7Ba9nBMevMniMc5ma7/f89BGzUNlxJBVwdBsdmRWO6LexsuCQ3brpmLKekTOse6gCdM+8EggPf+96XvzNt54yFdQBlrToY6hOARy264l25B1s2XbwPA6AfZHPKL2AdH50wLdQ7n3VdkUH09CRj/xh4YC0hyewIRru2n5d21zoE7nJ/HN1zzz4/Cbb3BJKDgoIvaYZvMAJPno6vMuxAD/ygMjRrUzDr6AAG4Aym8bRkAd3s8dKo1pIujWjJDSxuM9wASAYCEcjgoVjpC4As/IJsxz5wf75rv2ri2hoipG6L9Sgt/nzjpObPB+rP9loO9/IP5vykwvpvQJToUALQ7wZQHwoQxA4QMx6PgjRLS+7/QM6MLrzEwzKkL9bqAANd7HamL8kQ0JUsMDPsgPMGYuqySg+2SgWDjATvKUeITWqYypq0CHHIC4wOD2ugTCa0Sye+ZAd70Ae/BVyCUE/MBQ2KcEAwDAmTUPiWsAlf7QktQwKjMNb8J/EcUFMezwI7sQKz8M42xWvSSHX8wA1URxD04ANLhPvw4RKUbRPckL5+yTJGYlcSTmr2jdJqhOm4psVYpmokrcC450uocAd5sNwIESrw7xCLKC3QZRHlQswc8RH3YgmZsPioCwq4kRuP7+jSq/oczx/8APa6KBBYTPNqAxOpsNcqA/tcqQ54zQ0GRknmsBJFcCkMYb1CcBYn/6q0LmPZ8GET3KD8pKbbWmcPEGc1bCd1WAmgRA7B/Kcd22/+BnEZm9EZyyVAZE4a42IeqtEaHyQStRFfuvEkUdIbpSY23tEf0kuy2rEdS8MTybECNcvfLMPE7GAMFhAkNEUP1isz2KgpGioc+enH/JGDMi8gL08gLkG29qeVHtKBbCMLucYXJRDgWE/KPKXxJChiBombsOUiCTEjNRKTAgTvPBIutCAkRRIbJZEpECEl6bIuVXIz1vEIAoGoDu8I8tIqk26Q2FHgNNHxqC6y/McP2CC9YoWWJmiCLiPGIuOq1vDYknJbOOEwL4UMGG4gLKEfgnJfEgmfFnKbmqpT9v+NIftSE0tD9NbjMwQu2mZGGTESCM9SLPyE99byLTrJXURyUQYwLjPELonzJP1gqlDxCLxRzhQoC/cy18Bo36zwf1SRHG/SJS3DKvXAa+TRatzA6PTADmClHB+zdfJxKQAyqFDrMjEkExzKMmgkBdMQDnLRUvpS5HqR17gSE68yAvUNjNyvEu1JX56DLH3QLDXST5RrN4fGLa0RLktyioqzOB8LKHiSGwMhn6CAOaEgCzWRz7qyEtusNtox6G7pCxawRABGD9hgAQOB1/TgHi9FFiMDviRovthTnhzuRs9TLr2vBTvku6aKCllvdaqmSCXtnzplbkK0MmQNKKaviij/wkBtD0Gd0U++jEHdgg7owmh+EziHTzhHcEKJ87qAgg24sTa4MUn37QsCAQr68giyr57EM4GycDrDCEZVZFQGRhDqQHUSkEPuAA0kY8ewyA5uJUcjw/sCMurmwxOcal/6ktIIKrxErp62RjRUR7OS1M0CasGq5gkZgkpZzkoPMUBGTUvd4gx880shtNWehkztMiQYaQw2NIG4cW6ggE3JEQqoEAqicE1tdao6cQJPlJbGAB35TFOug5/moAw3gw3k0zM1Ty+bUlEFIj03D2MsASqjRhMHKUkLUzBbRwMzMZ/2TU4PyEyBQkaBilTNzVSDkCNVlTdb9TdfdXRcTS5l/7Uuv0Cb6sBXv4AbOVRX+YwbBwlhAzZXAwEcE/bwoMBJeS1Dq3AM0ssOwuYOvpNS9GA9myLZGhVbBYIyb6kNVQsN7vHoTm6ytiZ1XCNd23E1fhKz2vSAQPQhB5QSjwBe90pe8y8t69Ut1KlzvnQkgzNCg6RfU9LngEIPoAChuDE2blUQoEA24NQlr9YOuHEm95JDWY8bOxFOHwgKAI5P9bI+M+MOyCBIdvQdURBbp67q6GBa58QSojQytQmYJHBuAC4v4zT7jk51mPRmZdZJAVZnd5Y2y9I2bxMsAoT/gnYtuNRLizZfm2Zfh1NpTzIQ6MoPoABrn9YNoGAvoWAmBf9WOVmSGw9WPCQtV0U3YtV0dGmW6nw1bOzADaCVQ6SVmFDUMuxAg3IUFNDgnk6FbucDFDYhUvGWkYCpNUdRZou0XAPKXI31Eo/OqCBLZ3m2uBi3cb0iQIgwcteiLYm2ckkSVhlLc0+S8NqjdLEqa0MXCoJOYRH2dWFPu5LVfT1Xf+E0PZ42YPn0OLW2LjOjYzFkKYMKDf0REWyU+RxVUi6hH9D2UpzkWS8jC0XDDio1HC+xcJdvJuMUofKQxLRXcQ+0e72XKwKEDsSXLXqzaI02TJFWntSXG1WWkUQ3EPYAbLEKHDvUaSHWh4EVqzLUdA+WG6cqameXagMBTaFEOWX/1Q/cC0M6AR3LqEdVEGTV020ygQ9wt4qWT7ygJJ/ItS/NGCH6klw79YY/w11PaXshDIVTOC0up4XXghphuH7OV19jtYaZ9ie0FmrlF00f72rvYIgP+VfJFk2T9WBhz4ZBVzwWWWy11g1sTGn3wHgFAhHQwCjj0x9hkSmfJnlDU2qms7MSKHolkFwfL8m8q/FKg4LY1+meEI61TI69Ny3U0o7poXxddY8vt4/V9497GHT34E0P1g52eJCReGGrNkYTyGqDVWB52A+wj2r1YJk19nVlNRAeuCnUsBvZcBZJdjNdUTIsgQ4mGDPY+CeCUjDBcYObamZviTuIynnB8R33/yBEShnWbNnTcLlx0wJy7ViJ8thy6wVzx7SGoWCfxc19D9mH8xdKGJYbrVZ/i7hXk7h+6Xd+G9ppbZge+9UPLHM+YPEkBbLzDBU+kXJOujg57TNvMYMlxdhERbieUjFSaVV1kK5agfT4/nnuAvo20yJ87ZhdDhqYE1qYa5hF28NzM5SHqxBXLdaiqdZ0R3eHEcqjL5pDmfORd/KQu/EUB5hMc0xS9rEbjwBHJQ4UyOCe5AyL5dIT5vQydpKoNKOd/cGKbzS90AurOtUvec0XPxVgbnoOhA5xNSOo72+oz/JP7LgtcCqpjxZ9t5GhjbMb5RFDbXUnDflWObsbawMc8/83lpVYdW31Vy15aXG3m7+ZKOmAard2brPOEPh6U177bdBgDm7MTzshlDcDVoRbVDJDhJnzI2ZSdoTOgCRoD1SkUwtXsTODsW/GZ3MPLToysg+EsmXYsk0Ss+lybMk2h0XXs4EVTccbku2gE3HVo+P3mcl2YWOCLu2At8nU8raFMsX5WumrtFRyDmi0UA0BpiVoDsjAEjg5d6OmU2VDhMPrEr/o4XDiEplTuqfbhKvUsRP0LHRTuxmBu/9OTDcZvFMycC3aaZNjdF/XDd4UvhGZzwq5Q1vch4MVdP1AklMSKGV14bbFv7sR/IIs805y0M55k+k6NGPDEzZIW08nufn/jCVvOnCDKlJPxUoUqK4tvDKo21usu+7QYkG1ux8MAcRzTsQnYwnQPM3B27RNfNjIFqQX81b3V4cb+kXR1MQR+X8huhtppMVREijFUxCseYJSEsglBb7G+m1TKzP3F1jRoDOZwhLIwL5V0rMMQaLUcEP0upSzb/3IMUOzs1oPpgwfDyHWGznWO9VVfdVXXcH1ZctxRsOv9CwUMcz7gQ7oAYYR+lEUepPT/NeBXc0nFGMJtpgPmXY/13NPpRuh1iXzN8aZ2Ye3EyV3sqy7MdesmTzFGiXxe1sMtRvt4Oq6yj3LungjIxM64U9TMhDo4Dw7oZ+Zj5FuuxITM4FcMpab/2qVxmvN6Krf/R3eOwTW7aTLX+4s6tjW+yELdF2pef1pgv3hIV7YMfR1l33Zj+6QsS9q0ftz65RDj7jOqVl+l3nI3Zyht49buXl0Fbi+HO7a2XopLkG8T/LxlPxtnDkl4/0z5r0yQF1OWdQDI5UlyjBhflpqrKPoFxvDS1XWT9UIdjnMJ2HhK5uPGSvirX4J/EDQoeDXWRzNWbR2S3dgz1t1W1zO/OCvD1mQfbjGCDY1Cr1FGbofMWYT/Fx+c3tOqnhzPVYgOIE+G51g3YAP5JMEZZs4sz3bgxurarrNkvUy9j3OjOkAT4Uno0bgIYfp59UIwNzWyUDqu5vqqevqIf+ec4FiD/wAzffADtAcSpbgRZeARdH8RRF2gDVYfusgqjl+a98XdDfU7VGyDsBmkKAkEMJTPAedvld+ilq+7TVZMjyh7gNh5ZGX98V5D177EuqexPMZsbXEYBL7qS6jNGhV3B6z/M3//CHzdsLLUiwfPwg+3Wgd4dlCDMx36oO56kUf2OWMkfYAIJZA8ednyRI2epbUSejGjcGFAgka1OMGyp5AbupA8UMQChQ9Xzb6s+PRo58vbEqWtMNSkEtBfmLemamy5hhE+HLq3Mkz0xdBJfXAwcmzqE5L/u4EHbrzUj89NaHY8dcJlNFMY5RGjTqz650jW6GMCSTVnyCCJ93/HFl7JC3bI1P9yZ1Lt65du3v8rJ3jz83Xt4DfYjJqNIy9w4gTK17MGLGSx5Aj85tMubLly5gza95s2YiafqBDix5NurTp06hJg9nHurXr17Bjy569T5/t27hz6969e57v38CB6yNcFJHB48iTI49bF8qdpAbH2FmyZzpE6oKWPIdi0A3ZkReXTC2Z0aObjiX9jEkZtn37OpaIG71UsWSgTfJ3+gTq0Q6dTDplAocbftR0xxxwxEdYJ1C559FzdZG1VR0VcXQWUGdJ2J8/erx1Vl17vCTiiCS6xMYXdqwlyBd7BObiEYPll5NhjdVoo2OR5cjZjjz2uJkRk6Qm5JBE/6bGB21IJqkkb0w2yVtwUP42nIz4GKfclcjpcdcSHHG3REcSVRdRQSsex4YdFo60RCBjHOdGVgKxkZVK6rEBU0x45umVg3bgR6VOnWg4kILyZYIGSSZ9oSAim4wUlR5jXCIfUg6WBCFdgqo0xx7OjfRFg1oi6lEgjqaXpx9/vajqWuf5dcQdKa7KVowy0njjrYvlqKOPvPbKmRF8FCnssETKoeSxyLbm5LLLRhnllDJaiSWWpNbVpiBtapfUc3cs8UVB24nHxnFj+HGWhUtkdNwd63FnUUrIqffFvGOMsQcbbFDoXSB6tFRgWP38qRMih5YkyB4AEocIHw2aJyk+l//QkSkUgtTRScLEwSGqg5fO1XBN40HxKRv1QeHGtyqd/K9Ydc2hkqwu2sGiXjDP+qetuOZsj66S+erzz5N5gQaxRBc9GiPJJp0ks0w/6Wxw0OYn7bTKnVfXuHaMy6U/W3sk0UkGYWTQQLCaBR3J8X7hEJdfaPQQvnD7tWelNcEncE4+afURH/IFqtJ9+GTCB4EGBoIGocRd4jLdD3qld1RnKUXyHCh7JOfjcs6huV1jaO7556CHLshad5zYYc0w3qzz6jxDBvTrvX5m9OxEH6n07bE1rTtuT0P959RUI1eHXQ6JvQS2x3/R9fF7dBeIQV3KPN4SY9SR3FTTHe+PvnP/zTtvIODzq0e/Ld3Znh5+3n2JoIF4Qtj6KgnCByKefProF54QJR8o/azMOOMWMlkd7rCHPWiFXWwAy4Pgxga7oISBEIwgA/vCllahjlb5wdnqbtS6x8DugzwKEu1GKCxj4e6ErNmdCnsnnN8F70oNrEvx1pY18TQPbOJyHvTaBClIGWQqz0MOqQoiLnx1z3t1SGJD9sUvlqAJS85Bw910YoiGPQdxOUHKyu5AhkugYWJ+cAMfMJafTXyMbuYSkXscFYiUIDA9fQlLBM/4P5mx4V92KJmsMCgfDW6wRh1UAggHqRk4kPCQQ+ICClGowt2xUEoufGFyxmCX53lnIljD/1q2jHcmgwhiXG1s43FChRwoXC45ezji2iQ5LTaQ8U+goAN/pIIGqwRoDLOMIuFqEgg6YLFQ/vjfgyrZHvtByiRx3BAdhYnGPaDof2vhI3H8+EfGBJKQ2KzMFhDJTdQYYpEnbKTuHumbqMkHeJK8y3QuuSaHUCSH7TSImHLoBoSYxU3fQg4CT8XPfp6KJlTTg/umiA9K2ccQOgEFGej4uA1tQn9U0hgzOyaXiZVkLBQzy4Y0RKoCevSjIA2pSEXqF5Mlk3HSJAw1q6mYa2Yzm3nopkxJQ4d5gPN24mwaOedhToWxEjmUrMsiFJKQeIqthukKIi4n4hB1qWxspzwOR//ucsQv1MtecNMX+IqKJT+QgaA58QT7HmYIi9bED4GAwytlRB9meq0uy7RcfepQLo+EKijjy6te98rXvvI1EFYtkB39556UFoalHOzgS7MZrJk6FjRZuKnScuo0ntpmpz0lDDpfyBy5aK2T6ZrhEvRgvaQaJJ+jdQiF4gQngbRLn/6MrZ664qVWrvVPDJPqFzKxCbOqRA/9eNjdEEEHwrq1UhR6UAHJo9HjTrSBUPGDM1GqOsQCUrGLHaQX6PDYx05CskmjLO/mQY/ylnen5YzkT6FnBz3wy0ugvaTY3klUg0gknmwIokU4BT21US2ocynteq/UPrAGrh/Z+eFTaqv/nLJUBay9da4wk5sojXikDpXbCj8bykxSldS4YTFsUVZq3Z1hN7sfBEN3H1tT8CJLvJct7z3kQGM53OO8LJSDGNQ7YBhm75LyXdt17gs+6gSRbVrTnr6WyGQHhu/JWx0fS4jYVTgYuKCrFAjV7hAIMvzyT5kIpoT/Vx6D+UNDBSyRIDorlxCp+c0u0cqK6kpdKpHYui5FMewMseLHKtLFSxKvjOUAiDAYGhA0vrGz5HAGLqSBCzzucXLia8nnGa8O2SPy8z4Vr74cxw5JDLWoh2eXUDN5iU+mMpYQduXeShIkAzUwHzY2Zge96XFTaRC7qMrrXvP6mc6Bbp1rVeLG/+RZzz8zwtD6PNNvAnpplCUvocPQhmpXOwyIVvRvGO3oNGRBDPOItKSPM08gW1rI0xkIEYssJ1UDUZJ1gOCRx32cQAiXoIjQGNUE4QZD3FZgllhlrSt1Hk79rbntoag/2DPRVtlnDMPOYLGteWJk+0x2zJYpHe7xbCRFmx7TboMYzkByMYihDWGwMT3ucYYspMHbYrhHeqm02XFT2rSXLqqmBbLcLKmJ3kDnEt+u7BMGHwcKhvvycNGg6isNnDwnYviFM/x0PqEExIWt7sQTc2yL94rPGZ8p0jo+m2jfo9BtOIMWtJCFtZ/h5G3QQre/LfMW0jzoyLl5Q1LbHZ2ve/9tdWKw1Xz9a+9Z9aoFzPK0/PHvP3mCq5/GH0QNLFZ6u5VCZymZ5QxeTBmO2Q8norWDRMyTOyO2617vkbLDPlPbkT134pQ2tcXA9ixwgQtZyH23uXCGukMps0apuaRBK7b5lpadRE5yWq7nxOY7//nQh37TqXVvglZeqmJs/N2KjvcGhyW5WvoYu+w1UgDTZaTo92jJHB7xPm69pRVPfY8wzvpumvD1r8mp7Glve0Yw4uUvh3ttIAf08DTAVxxPkIBP8FNQsAh2gAck8RB4EDaiBWo6RD1DFSertAj+0Afd94GCgFCtlj1rQgfVd2X4UEUfyEr5VRalYhJ+NT7VQhf/YxCDNghYdGZH7TdN78d18Sd/OyJC9ddNY4d/rqF/MyZybNcFYJAHYJAGXZAFZ4ByBGiAv6OAWJiFCxgv5gdxpmVUDoFUxjNPcSJgubZeeLGC3jJ5d9MJ2eMHcGBLKHgUiqeGq/Y8U3EeBcE4p+YGosc4pcMhJvGHW0F6O2F6LIV6QKgZRkAGQyhTcGCE+Rd7Z6eEWcAITZgHjyaFVFiAznKAPIEIWjiKWTh4c1FpBoEH1lNDi7BJawNaUEUGXkIqElSLMXQ1togvZDBvVOMGJygwfEBEfTKHO4EIZJBgdkg1KDJa0uEP5TItVRcWpGJh/2OIOoGI1aSIi4gZ9PeI/4jUBpKoLLEHcpbIBU34hN42hSnnic9yhaT4jrc4F27wBIHQBwtYQ3ZwQ1wjHmTwELxoSvAiHlA2kFB2FwQ5kCQYPILQCVdGBkQkUMSoE9eXjNCoJm0EEgVkB3C2kRxZInIWWNWodT2ojdtoGULojYiUB+GYQuMoB2Ewcrb3cl3QBQHYBoCgbe1Ic+/4jqYoF3VAj/P4BK0olGPwBBzxQ1rDTskRb0YnSc+XgSv4BWz4J/y1Jr8IVnlDkVTDEQWREW10EoQXlmIpF8AWiHEVFdY4Iz2II61Tkr+ybCiJSGSgDytJWSA3e2y3iblXk+yYk9Gyk6TYB3bBBk+QNQnIEf9GyTXqJpRfkIAYsYVLGZBaKWluoHQyso/pYplTxCCTOS0c0S0kUx4cAnpnNhOkGQh3cJqOs5qsyZrnwVEQRzdpiQ/Y+Eck6Zb8oGJx2U2RFY4f55Ii53JrpwUm53JpoAW9A4rFCJijOINzUZSLsAcJOAj+MAjUOQhP8C2JuQSFSZijmC570IfiOZ7kuUR9cJ59wItUYwcMSVBYYSacEJGWIGCdqRzTU4Mk8xzZgXRxJBDsN41N2WODxUyzWZsbdJtuCXa7iUjOJomCdnbUdnsmd3LYJgaOxgVy8InuyJxYiAcOlJgJ+CV+8AQE8QTVsYAlugiNSYrigQcu+qIuaoP/NogHfpWQwSMWWJlkrEaMZGCj9VlvzTMQdlCDHHFk2LJU4nF1x1MvWPc/XOJMPpp1draWh4Gg27hdC8pNdHB/+Cde5DVjYSCAKIdtBEgPxgluv7ehHJqAbCYXS3CdCTgGi2CidvAEdYAHcTqnXbKmHPqjCqGZhDGfxyGVxLg+fnole5cma+ZZRHQHw0MWXBJ62hGPY0kXd+Sf/flCUFCgVGpibYmbmBFTWcpNRdilXlpegHCcgIBoKueJbeBoWeB7M/eXfJqAHGgX2FmiT9Cjdoqn55mAvCqi7yge0Vesxmqs6zWMU0Qfg0qMWDF9hxoeU3EugRAiY7CME7Fwe8h+/x35ZlmDrTKjnlgihxKnGPXQGHGQrge6K6BqGYY0qogUiQ4KY+TVBmnQBjdmXsFhpo/WBnZHq7U6VXUxonswp0+Qngdrj3ZABgmIsHRKitIVmuU5sRTbEIPAgHRAUIbKJVI0h5x5qMkhpGtSHcG0WiZ1qU8KrkoKdCZVEVwCrVdCrn1UDzRbszZ7szhbD+mqrrgiSO1aGWYAr910BvMKY/pwBmlwXrcRJWJAk1ngico5MLU6nQ7EnXeagHgwj3jAsCqKtQz7BN4xiuE6tWTLosHjZVPkCRPIJVaGgpyAmSB7HBxYEBQiSmMBPc7IaZjqstKFIrL1twWSpCjLSjI7Tf85e7iIi7M687MnKbQj9F1GaLS2IXe6sWguxwVhwFNqyqce2j0GW4+2Kp1dC6cy45g/mYWAVadlu7p9+kOx9iduaBCLIIJXpm9xmyXKQz16QDIiKx7BRItENGdDZVKVyjkFAXrYKkmFq1KJWw/y8LzQ67zQKw+Ju7NxcF1uKTSOi0howHGmarRcoAWV+zRIe5zhppNl+weLsAgjqoCGuZ1w+gV6Wp2FuaLTyQZ5kYVDanj827/++7/0YrBrOggdKzCGkIHKamAbe7tuYj0cwYF2wIHdsiaf5Q96CwWPCj2AG1ufxCGYGqAxezM0O70kXMImXMI5a73w5zpAqJvbe0j/pdpxkksPaSAG4/s0gACrm8u6tmq/2im/u4qnXzKn1PkHhzkGDoG6/oAH69vETvzEUBzFUAwFU+tKdwMHRIQHrztF/AOzh8ppUzG3bGIma/MF4KOt2Tq49Aag4vFTy1sYJdwEz9sEdFzHdnzHdmzCObvCPWNxjfXCJCSvrye5qQoIN/w09CB3O8zDRQysdXq1j2migRCnqtu1WJgucsrDmjyKWnw3dDCLV0klrsbAUiUR9QQSCrFKavLAa2LBRdW3aLLB/sQdR+rFIUwlgCAPeLzLvNzLdKzHNnu9bOmzyBa0gIxIWvC94iUGSXvIvSMHi8zDmUyPk9wH8zikDfu1/2H7BNTZvtyML9iZhbIsy9w5tV51N5hZmQYWZqSMu9ERCEnkLW8oEdNTT8CLqcVbFz8xqc3jxn8CCL7cBPEw0ARd0AYd0HI8vTW7sz5IzNnVuMc8O5BLdpJLuc5shei7yQq4zYbJJtxMv6X7BHggnQnIBnhqlEgczgo4CJSaz1dTtlZMJaBQlAtoN2DFB2vbzktABg7xwH57X6g8su/cyhfcmkbtFX6QwVrmz1QiB3QcBAQdBvFgaFRd1VZ91VJN0LxMwgvNs56aXdob0SS0pYMMvlnQG+QUtTkhihqtgFubgH9QnRyIndLxBHE9ohwRzl0mlGemherhBtYZ2EG3uv8FRiWZ4J1PENPLWhEKSMoiKzNinC0KUVpow8r2jMZBpyVsMMFMLSNyMNVYXdWrOtqkPdqhbWhajcfPe7NezcLYJKpiTUKrQdH0mgZngNaPpNZVQgi8TQisa509rID+sAjUWae/+gRjcNIoYqvViQeIrYAqOsltzcNw+CfzqYBj8MbnRAckwZydOT112yZoc1oJ8djBRD2b9j3HeqzHe622jByUQAnazRMuKdqlDQg5UGP6rd85kAP3HdrxsMurvdDwh03vGtsjRAY2JcMwlqphgNsspNuI0NsUXuG+TYqL0AdBZY8kasSJjadsoLAk3QfaHJTZSdz0q4Ckoro97NL/ILK6jEclASfcYCVWBcG63ecG/SikGPVzc7sEHMgd9bQ17EsQzunSy2gyUDkt8U0JTzDfOzEPpa3f9LAPnEAKn5DlWp4P+aDlWk4KpMAJ+gBypW3VAX7H0UuzwowjINSNCD47f/ZsRsvM9ADhyfk7Fp7nen6rdDGnJu2YDOvRpOsPbGq/bmCPf56AJyPARqk2673ejF6r9kYl6zOdGTtFPjEINz7dIcpK5s2BDnjea7JJ/Xy34xHUAiFhDvdCTa6AUK4T81Bj9HDln8Dltn7ruJ7ruZ7lnEDmq2rmZ17HA66zDQ07f/zmtON6gGa0Fn3RGkpzVhDtVqDn1E4GdtEH/4QQyRzI10Z8Jh9NxMNd6CLNsCy9Bypt12PwtZwesEOXH2p7mG17N4ZgB5q+7oBpn+edRGPM0+S2NnfLlekyLqvVfTKTF0zu5Fn46jkR5rWu6w7/8BDf5aSgD4RWaFUd7AlNvWpepY8RCkBjzMhOQsks5zCWe5UV4b8j7Sq/8tXOOYz5BL4d7l+Ap3ud2BxOBhxOnYsQ14NABmRw7oOwHudulI/+lKzrD6++CZVMu9Y9j8Bt73xKMh89pIFQ3Hg7VKwMWOQtz7Jb9NF3vPmCJfGthYQA5YgAChGf9mrv8J/Q679O1QOdxxpP7H38dSF/SA3qYvTaBbdt5xgdLSsf+P+CL+2dWxdGPNy8vYuE4POEsO2EgAeNSQghDbaIjgc1f79jMPQcCMCc/9xTO+n5ccC22p6/gwZEXM5Qz5wPLNLySxCQT8VLAPmpmLuVTRA//iWcn/tfsMRjgxwJiPBZSAjR/sZnv/bGf/y4/gmkUPEXL/dqfr2u7SNbwF13T0JhQPKUJQf3evJ3Du2D//3SHtd2YQeLHwi8nY+ST+jIvQiEoPPtj/iN/wWDkI88r4Bk8AUeDt1qk/rvCBCLDOEjWNAgQTh+njzB4+ngw4OeAj1ZMmjhRYwZNW7k2HFhnzFLluzp42bPEzZuLu5RiVKlH3+LlgQKGWiPyEX+/Ijk2dP/58+Z/upAWUKxKKWNhKwstYLoIah8UaVOpVrV6lWsWfN94iQHUBiwYeI1ISvPbL04aZWs5dfW7Vu4bSf1o1vX7l28efXu5dvX799+efYNJlzY8GHEg/UtZtzY8WPGbdLcg6xv3mXMmTPrgwgREVPQoUUzffLF32nUbqzg2bN0kL8/rxURKkmIEJs+tsnkJvRkjJ1BXxaRCWQ70Jc/Gf98IePR+XOPX5x2JojG4pNAl6g/zPTF4qCi0MWPXxgcz5Oci77ggbloYfsn8PF8KTqmj+9AIvvcBNof6KIx9lCII9tAq6KK6QjCRCsGG3RQK1K8CkssspqQpx4M07JnLSXi//KQHy/QAGxEEks00S805EhsRRYVq+zFx7Tg4kXNasSMs+0K+mw0HkVzAzXUvrDitUGWYgMPK8hQTb0nVvviCULUG8Q4Nmhzg0lC7PBnStsIWa65jfAgY0wyyxzzPvIy6kO77Z78iM0cCerkvIrStNO5+aB4wg02tBwEpItoWmi+olKKLyaYBhzjSDwaxUMPSCOVdFI98HAPiisJNPBAKaZ78FNQQ3WCnq/AimessjBEa0O2PnwrjxNjlXVWv8Bo8dbDYNSVsSyyoNHGGnGMc8cei7VCSyBP+8OKI5di7dgtfVtkSH8UsaI0O1yD7Y8tf+vNvi4HWRTKLm17og9/3P/oY1122+3jvDsXWqST7RBxc09L4iTIkpaui/ffi5YYY6LX7GAJivUWEniiJ1g61D1BaSoKpgD3sPhijDPOeAx/8tOUqQOrkGJkREI1+eQGPyE1LFRTXZVVV9vyggxaa7Z5VjTmwXXnfXbdlQstfgV2M33xIdZYHrlN1p9s8WBD29iqtSIQ1ZIkY6lAnl5K3SQDYa1JP23DY8tyzf3RjrLLBhgj6ajL5KSF2MhEX0TIcG9tvJ/w89zfdJrvOi0Vgu+4+ibag2GJAbaDOX8XUgpkTkfG4hSUK7fcqlFLpdBlDTl0FdabQxcdMEZ4xtVnGO9Jow2hh75M2ByPRno0jpP/nZbbIpkNxGorcLcipyK5Xfb3LaUU7lr7XFvPinIHIUO4tKOPPk038u2MEzB9mzvOSxjOe237nnjN6ebCX4iMOj6Ce2D0dEp0IfMB9oOkix6HXGQpsCDmcv77j8oJCZnKZS9rFVyMQLPRJVCBdyGDPkzXItS9SDJyaJ3rYFev2RUrEMnqA1OatZoxEK9IzZLEwJayG6YcjlmN0trYcvc3pgyCDchZivRseMPebGRe1OHXRfyRILeNoXHfu5MLsSOcmATuPTGhSMJyohCTYAduMNmNu6x4xXbZoTyO29TI8kcF/4Wxf5zQHKrOQsAOwQV0C2SjArvwQBZFsDJn4MI8/yo4tAtSR3YZBI0kyIeH4TmrNdRyzxd2p4gxSMJJTQLeUhThHUQGx1q+6eC1SOKaPYwhkD3CYSeb1w/qdK88oIzTnIgIsOAQbD1kYEPDWrInuO2tDq00j2/gdRw25FKXu+RlL3X5BTTZzwohk9wUxHhM/qmsVG2o0IXQEgeYueWAbaTm6OAAxxXJETK9gpHriEY3PoYTaltTDU0kIYnjFWwpKlxnICSxh0adZDVbWkp6kHc1cYLGk2mrXmc8AS/nxckS/jglwI5jEZCk54nlYdpCHAYTLfoJePDz3r8WsQcy5G6YkcvfJ5D50cuRQnPNVBU0CwiGaqY0dFzAJmK0+f8YoHXTm68r2h7zWSzi1HNLr5lWIPC5H0Uqgp5WeOQgpPQbK5Rwd1vbgyJzkq2bFuuGdthEZzahxSf8gQ9xgsPdCmonbp2HW3ZgQ3McthBBtU8hx3GoSurQkoXi7U+54ygWmABSvFpOmQK0kDNN2qE3IFClg5XVNVtqmJc2hh6rk+lM89gZm0Z1NOpR5DuRxEpqLYtb03rnUjvLrD5Ecp65S+VS+uAdyYqTEIOgQ2c6sQjb7HA7ovzqncgAtzrsQUuLUKL4/AGvMYnPkGrl6UL4lDdhRg4LU6BcXp2LMjLy1UIZYlUe6EBY7MaKpYclTGIZE4Y0UPCOwHqsZ0J23ir/pLaPY7AWCCWRk2Wta2taK6pOB4E7NuyuYfiE1rLExV/1ZpAM1jsIH/5gG6puBxT9OLDaauuc9LQPQCoZwysPKmHsROu4NmEoVvXGnjQJc6OSA+NzTXwyAErXr/YILB2um10YAwYODuRuz7yrDzracbw2Ku9DEIFeIAM5n05TniLeqRrfbXadlUxSB93gBuH1jmlMua1TYxJgPtrBIQ/JqLO2bFU87NNcDxZXS1jiwr8xFF6zXMhwxxocrLL1fKipg1edk1z85W9/J+ZzqD4hh7CQFC15QAMaXBxjRPdlu9y9sT642Vhv9vggPw5ypS2d3hjiIRD+hQ3WWiPUIqHQ/wp8snLuNhucRfRBa6clrSGXYodNYrlYg0ADRMbQpKnBiTsEFfMN8eYGIR5RPYFI5UUA9TCGaPjWacaPvJbmYQLhWXKT63O1Q7WyMJA0FHAotKFfnGhw22XGNW50TCFtwZpeWt1B/hOQpiVfQr6zg0mWWpKqZgWg4kGIY0DSO/m7W1mLU26TFtLWCPwQOLQ3NL3upHgiHNbc7unWCxnr+WgJzKw29HAL2RtKltbKjohYuVPwqLVN/qDobk4eeSBDt70dbpjTZdEtvfFixaCrmdKUbuvm+YHElayn4e5AfSBDFYS6LFEDVcrDExceJIEb+EoZSVsTYsD52JCDvI3KnP/ozCWYnEGG4xAjwWlJLncbYYs72z1GBFTHDdW+j4e8i/lbbslPfncGiVSAZYDDmFx+6JiDe9yHvTF4xbvjYKW75+sW6tIWUYXd+DwmJexDFYRXhfGZtqmO9I7wVK3IsTEdo4q0OtICahDspXB7k6ZDrCUb9nI94bZTOo56+lDmi+w2bukrdsEaxrC4kmFpDdVIgSA37RLjXflacUKp4pEHOPS95d0GfOARXTrCe1cMXdAx4jUjaYNQevGXzsnSii70KhDd6LBJf9Gr8DfMrwfTY/LjHgahQkmQoeq923/pjbWH1cMHfmGKtnmITZg6/9OnTtqgA8sJMREiVusNcUH/k9A7F++QOL2JFpQAk/JLlonLCDzDHyzAguRbPhO8iuYLAy3gg+iTPur7NuuDMTLQGZrzLhnZlZyzI8UbP0sroeH7A8irPMybPIwawsejvAMpKp9bj/zrAyX7L9JLwNnBuoLwuqUoDYjIBH+IQimUqthimtUaAzIYm0V4qi6JwFTykt/KOC3aOAzbk+GDF4wIDWKiuxI8QTykiubbBD5gwejzu0KrvhjMLlupwcQyt3PDox3kwUobm6WpPPT7vPSoApuQhCqArwMZk5A5OkmCv+UQwi40lj+AA4P4J9eotYfgA6gKRaT5xGvRv5wgtgojFzOkjWC7LShhJb25QNkD/xOlSRZevAg6VC4SzENjtApOMARD6MMWBMSXG8TsShFD1KZ56IKbw7mcAz8dYcRLQ6fhG4QgXEJFgLymKiE8yMSmir9xHLqmeqQ/+Lz1O0dLY0Ur8IfVu6qlGMWHsISvo0ceEZdWmpqY2INWAjbSwigoMcP0iBIm4rcvhC1CcMRkqSjRqMMRvMNjzEhLUEZmlL7pe0ZoJCzBwCbvAoQuAAQczMZF5EYgk0gggcQtORB9k4SwMjrviL9AkMmbrAJ5Sz/7ww1LHJt1HL+Ay46CeK16GojwQwPX80fQQAn7I6rf0r9BIEOmYDVLao7/gh83iMhb6w2M6hKXPA3vML5hFP/BYsxItZwKLeBIP3RGQQzJlKIDQCDJxNq+7vO+bxoWlrS011iaPRg6IVQqSrxJTXw/9oM8NrBEy6uWp8sofhu6mOhL9MonrSoIA3OkqipFBHRK0ZA9GuKWPtigReCWpSKe9joofEOtg4IzBIONcNmDiTTLTUFLkjvBXqiBEHiBD8iFY2CFVoiFWGgFVjiGXPiAFwiBZ+gF5bsEt/zDj4xLuaSmSbDLl7rBlHSslaTMkEEXoJM8IFy/QUBCSUJHS2y6TYQNcdm0auFJ9eNOdesRSfAHUCCILluNL8OH7tAoz+wjN6Ch/9ISPPivGAKmfPwt4kGSsBq1gKSk0KjK2on/ytGwyLrDO1EgAB5wBmAYPg5NFmBwhgsgAFEwOU9YRj90wUCEwemkpjOAI+/KgqDJzkirqZGBz/P6yyAJz/ejA8bUxEmEv+AQQkwcOiFaDkWYxHOyUUY0LTbph9wxyoIwhM7sz6WQhB+Zlvtjg5zog6eTUKgskvu7GoBsEjY4iaibGtT6zEVQBP6szWljrpMzgQTQgA3tUDvlUGBggQQwgT5rhE0w0WaMzhVVKT5w0ZeqxmvERu2kGy9qVC/qS0c0JHAMGXOUvHEECUskAzhIwvZ8PyE6kPxbzPQ4OiXtS4EgCH8YJnwjsAGkUv+8svvbA/UgAyulIdPqNHyrOnRZ/5YKZKfMyycKnYI9qzYCSIZWuFNkvdNdAAEC4DNO6ARARVGQHNQ2mrnTeSk56IIw8Jkc1EaCQARHDVdxlQKeuy/GRC8lfD/vCFJ1HLqdpD9Q3QM4kISjmw8dLdXxQydEyIQxCJkB+1a7wTRXtVJYZYMxAJDFJE2mEKr2AjgHHBJXo4ncwUVxOq83vas+Q4UGyIVk7dhkJYcGQAUT28hohUsVpdYEmkHTSaw26AJ64FaVZNRxnVmaXbzI40k6qDyGtUlIwNnF5EmSCJkJVNc/YFN85cY+sIRMYIOQoYPtkYj47ELnSSeDvSj7G5tVNM0D3Z3goNUuzbhpIZ6wDadgNf8mPhMFDPAFj13bZMUFDBBZ5yrRjkRR6UTZ0SnEnUks7JRRdJNZmv1bwK1R9EK1A+GWS71JoIo/ITSPkFmOnLTXo+XGeeGXkBmD+txPlgyw+9OkIckkqx0EoUJAKOxcrzXYIgm9p6ukCWSKc5odCl2u5jKxGvAAtq3dZD0AAXCuT4DWjjRZu2UjuuSZxHo0vlVEvw1c5EXemdTJ8SzCnrzE3yrcTrU8+YPcyM3XL/A6UP0COZFHfM2gPwgQMLWYzxWq04zVIsm/qlPYBZVY00pTR7xPHnldYT2xE8gG283fZM2GE8irZCxZQf3dBTIE4X0pLjgD1OlWGk1eBh7Xov3/A3LdjRrVxJo0XJmczPXT0eU4R+u910GY1OtFL60KT9YSQPcLYSFbWH+gVf6TVfEVKi6tUqq81WUx3yERQ5q8MtTUqSBRuLO0TYz8qFTgAVnQXyO+U1m4gFTAqz/t3eg8WQG+mSzIW23K1m2F2UUdlgbeYi+SBO/8LSmABOEYGfOQAjKUgqMbmdMKT+ttTA6uFnbNxC8YyqM918JtXFIMWBSuNC/uGEucVfVgA9D1hxhOqucZHqGUMq+lyvV0jQpTHseryLKNXbyKAY49Yky2U2no34/6hOeUViiO4pqBAxqEIG1q2ZfF4hk9Xi5G3vtLFgguqpFJY1aTAomVAvUd/4SRaeNPjEdIwKhDcE9CtmMlPSdiLlxD6J49rrQ/2APh4MmxCa0V9iM/rtL/HJ7QveGoZMBRY+FRq7r8G77TXAqLpbspqF/nMoBpyGR27tBpMACQcs5lDNQUFeUEwts40qa9LV7yWuBWTt4vRo0xOAQp6DsvAonm5VFyJOhDoIM9IGhbRg4vCl8u/UTn2YPwfCSMXubz+gND+FSOptSxEWTM+5FGGeYN8t4+fjzo7SBJoAMaYlgnyR2Am6c4rM08W64pCGIxSoUIaGeg7tAXWIWP4t23DGB7Dh06CINbeSni5Wce8+d/Dlzhe0QpOAR+G5nHxLwx2NSGptWr3gM0wP+f44BgMgbmMB2EDVIEMhY+dwppyzvmPXae37LEZj5YdHE6dLEDSn0elv7EcxI+IBRNsc1HV5Oy4du8jaJfOMUrW8DfoI7spemGEkAmknXiek7q0CFgU5ajA44gBaabERztqabZsUQNthYeMrYPKRBNKZjA1e4DL7JXLzqE2TsEkPgD2yNom5TVR+1LSfjgQTgEYy7uJA1pat5oarYbZ16EqWVpnjzkwmWOc0KXcYRC9ATaxUwq2fxBVUWvN50CjAWpDFAAyT7vZFGADEAmo4ZO6tNs0bHWXJGje9BW0I7ZYRlt/d7vESztQ+huYNRlfdPl1gbj0A1jYBoZSGDtXY7/iS5eYzP+Lec5WDKGA3+AAwIf154zbrgOsotiQswTPjx4JEG+ax2VIeSYblpNv+hF35d2A8b8z0k97dOYOiAL78b+qGhQW/Tu8dPAhWU4Jif4ZECsW/g+ETK4h3yOoJY9PKhOPNHmbymfcgb+xWQhAzUGazR2cKFsbUNScPvAH4Zt1LHBg9YWQ0iYjz6A6IsiZIhO3g7vuT8QPjcARz/6AllFFy4VqowSWouZ1C+xxA3KyVwOVcYkQ38dvhW/8fAeb2SKBg7wcUn3h2sIcjFq4qN+7yO3merMJjmiIzkK7fyeclIvddIWVxqHjavO2dlW9V0t8EA463kdGdtr1PAl/4NDwO05hgT9Y2ty1bf1ePMGloRcJ27jNmYUhgR0YYPw/AM6+C1EOtg+5tLG/QI6mNScWPFBj+4UR+gDccDzCmiyBGHwNuedtrtjygAen3Qf9wXmDCNPBuDM3nRameLE0KanfvLvqylT73d/J200GD5fb7qDHgNIkIJXN82zxvWRufU3t21NkgIAIQNIQCQyMOtDmA9JbeBDUIQj/QOQB3lIGPmRv95R9Ic9WMd2u3h0qfNmfub0nFdOpfYNqjwvTvEOBqbBZQPbqTQcd3QxWgfzZvdJV4B1ECO5zfRApPeaIQN6uHfPjtEExu/Y+XerN3VIGL6Db/hq8aLZQ3iJ/v/EkbHtax/729r6Bl9z3JZwPSfwjOcYJyxt5GVJehU+OljHO2evR2Kv5QbhPs7JCxZCPRfmxyNVzBs9IKPm0xBCRjd3KkD3MEKFbiB6ok8BovafeMfsaWX6ExnJ+UYdeuAC1rnvLK76qz99KXdJ5NjvoxtB235osIdgsSdXOIh4NZ7jRoUENMDo1qYD9oIECw8EiKbXZ0cDRRB2uYfzSoPQFQ5PPxqD9VgEnq/oZ/dezJshvM9rYSZ0dCl8DO5SchfhI/X58KYCoA+jn6b8XXCAGQgBAViAE+iFYiiGXqAGAmgADWCHI34BpAcIQ3z4wIFDhgyahHT6MWzo8CHEiBL/J1KsaPGixDL7NnLcp+8jyJAi9YXhImckSpDzVrJs2VIfvpgyZ85EhOUmzpw6d/LsubOPP39wDvHE8wXSzUN06BySAvSPFEhjyDSVgsefIilaFX3pU1XrVa9Wv5D584eMvz6DtEr5AzQt27hxJSmqq2jRIrN6zcrt61fuIEVovwQaVKXKITxj/AX6A8dfWUmBIBs+XIXrnsqDyHxZVEUSWjyfgXpehPUw6C+VLbNu7ZotzilTqJzKZ/s27ty6d+NuEPQ38ODChxMPXutdCh0GFmRYpVvUChLZXhWvDrwc7+za8zUyJLCgwYRolmIsb/48evRw6HXcmDKlGC7vU7qs/88SJs38MW367O///yFE+RTIGEhhoRRTTvmzCBaQ7IGGgIrApRUkdOwBFVuQwPEFHlIcMllZjqWFoYeK9PFXXHfhtddekKD4YhWQ4IFWWotIQiFQhLnlzx6eKTLGF4qwdghQfUhy2B9jXFjFIHucBtqCVZgm5Gcb/uEallnChoVsVDCxHZjZUTONdWWa+VsrIoxQQzEWmCAKb6OU8IwEAJxJ3CsnhLlnPp4IRJBBCI23UHqFGnqoeZO059F8ImmRRaMj2WcffvrRxN9/mWq6aR97CKiUp1gApciBZBR4k4NU3STFZB3GtcgePXoIVFmQAIWGIl+9uCuvfsVo4mJd5f+qFV1ojYHHjnsI+QcaaR3C2iJjjOHZYVdRVUWSnSHGxhdXSkhlFU8dllgfV2b5mlY3yTZbbXzymUoud8o7nCvSwPNANCbsaQI0EOgyb3DfOOeudpx4B+hB4hGKKMMNO5xFe5GGxIUWEoc0aX2VWioTppt6/HFSAnb6qYVIXYUHFk4FmdSGDN70xx50/JFTYmRBNUgfX9CRKx5Oltsr0L0q9gVZyFahFbY5C7WIYDwui1ZZcRHprFaHPCbaZTxe2WSBWYNL2mFN/ob1uYfFpe5sVBDMJw8Au/1KChdAs84ouo0yigm2mFA3bqM8o4DbwF2wtnab/FlQwoM6vDjj6JH/cU9HFutDDxdtSP4Rxi5pvDE+iKy7Lsih93QIjSg7FWqpp0p4IhYnS3FTWJ9O5hXNRpV1YM/HQuJWV7s2uRQaBwk//I28/qHIlWxJskgfi9GBrGKQeXaWP2iQKMVlX0zLVpJjQCUJrc8mSYdhV30dJZNOAgeulluuSwUxhIN5giyB36nKMNhUYAFvFpxQAQp4QIIBDOw2vaiGnezHCz3JTzeWOFygFLKwxlGwghFRFEckBwiTXE4fmXsJ52ryuRGSUHSbUgpwUCaqPRhIClbCwh/IQpQkqapBFpoZqkyVFZoF4gu42grUhpWyFwWoiEYsYtDYgq0ZBQUNyGpaV1y0/wi0oGERcmEWY6oytaFIYRDN6sPRJASHI+XMXOFCn9iEsxp0pQttVKBCIxqonWzY70y18AA8YrCbUQgjGgKIgDUQAABw2CAAfLNNCVBwjDr6oxtyzM0nOvGdCCrEgpa8JEO4kEGLxWceHfzgfULIMRKSspSgM2FOmhUcFTbPQKLCSoP24L3U4dAqWVzVj2Smk8RICw9ESQwd/IHDniSxV4mh0Rj6gLymCUURkkiMk6IWFw1BxkVaiVaQtkK0rICPMaPxHrEeY8Uuqk847GvN2bjUpS89cjcqYKR1VAEMFiRgA7sRxgBQMAEFsEIVv0HACKKBGxMI4BvwTEA7b+Ongf8gTlDkwSREGYeGMLjHYo/qoAdB6UlR7seUHv3oKTX1B+Kwsls4OdmBHkOq1jkLVWgYw0pxB5lh4hItcIAKFgbxn7YwDS8+/en1XsQsZf5hEXgIJmSGtaMoAgYostLKIB4jlqmRYS2byaYXyVc1zmAojcOBBJbkEpu0ISGhuUFFOuBZHFX4whvU2I0oliEDCAxjOKqQhgAOuQoBkAOeB0iFWR/IUEo+NKKGZRgf5sEoiWWhYp/U6OY25jmQUraysuHJSEkKO3+kASdpkCFLaQezC63KKHBwJVVpiqrmdUW1PLEaeODQh9nSdravGyKKDmEipO6hD4toCu+SqqsuOjX/K8QyylOT5A/RSCFaLGzLGLjYRTqAs4uLISmvxjobJnzCrLjBgFqJowoFoCMDu7GACwrgi+LEggIGQMVtLGAABqiVBGaN5CQTN57D8hdRYFhso+bBBTFgVKMb5ehkLatgBWOBRsNRoYTygBMHsRCGSprZ1ALxKaBoGCep3UlbyohKTXEPMoFQxFp0q7Q94MGacUmWcbfiJDzcaGoyk0I3xSIhV0E3M2x5y4N7NdY3stO7+RDFIsMbHF18Yxv21E0xSNANVlSnFjuowCHXEYJbqPUWgE3oQhHm0P6SuVCOjdQGAVFgjbaBo51bMJwtS7rirDSGffCwSlO63JfFaphn/+GQgHD3BRYHesSofN0hFhEIpJKhxX3RLRVj3JYvrkUKP1rujRyUTSJ1hi2LkGFcHhPk7KKNrEa2jW+UDBxYWEMF+srNKgIQgWuU6RUR6AVumsECV4S3AWYVAwQTV9gyE9siZDhJpDq55g+GIQtuTnCco23KOQ+nD+tKVaCvMhQscAUNSEmMUAKtCFnmysOKoENr+3MI1Vra0KtqXlB6W26dtKWHI3ox1DAECahZ01prgZlWwZKWo6Vo1KRWJ5HbZeR4qTooqhBBA+AL62dMoANmYgUMCpiPBfQ1vLkwKxIO1lCFFbvkFjGExC66bIzJgWLPljbMp63K4Bjic1Yr0P+6YDbLOfuyQaERtyx7jhPesdiVOYFZqVDlD3ffpA/IKnROZBRMQuPE0s2S5tRgqpU/BNNVYSme1Zb7l8msD2jaJfKp8zGAhv+GAuV4NW6EIYAU0OJMHlABbkRhAC4rmQBmNdxgBbVfkxNeImCIVGMxmlGM0SMLXKDHy2Mu+RGiEDhjOMQIWaqIdU2t55j5g2zGrXWcKAINUaRZ01hMU6Qfwh9EgcTS/1N6VH2BKHiAw07/cFR/tPa2uHPSTZNilOU2haou2kx12yLLoMqF7FgJ2tmZEIW0V4Pt/vAFBmyhmxvIQAH+NBMvXlAM3BQjAvVTMgjMeolgj7nw7n8IpN7/I2ACr9w+WuCCmiM/+f1PofL+wDkp2Rnmhd6F9R+tQMIUcJu0kMpliQgZdBbqPYaw7M4eHIjrNUjs+YdiKJ3tkYFPQIKJfMH//czRvUUfGEjNpIVOWdo2gcUXSJctUYXxKIKLHdz7eInCmZUJUFnDgQMPaF9uFAMycIC8HMMz5EYFUEDD7QLcyZFgiZkEvZ8U9gMZhMF7tJya1Z9LxEcbHJgoQRv/SR6R7MFQeBTpXAjnFQnmYZFX9J9iwNQAToGM9JLRpYzuNcugWeDrZWB/bCAGdiDN6N6GBEWj1aGMOMnOfEr0nODLfNHrvVRMhR2P6RbzFZPvlVrCndo7NVwH/7xAM+iGLaCDMcgLL7CAQN1GMCBDK7AdQrWTweSXQ03QFBJeYqVEGzye4mFMSZzBSkSWpYBhGAZj5iGFbKBUzi3gTfwIoLlhL8UhFqTBYxRd5q3bt10g7GWKH8Ke7bFYH3BGUCQTslxigzBRuqGKvTGiz1XTgagh6UnLMHFFUNwZblliTtwgExSZd2FDw8lCOwwAnOBGMKAALsxLLiRAAaFCAjhALLBdO5iVJEFhJc3i+00CfMSfFq5Ey2kBPfSi/gmjR8pGDPHe5slhzCDgZV2F9SSgUSwjt/kM6HGeIkRjuaiTzbmeHPKhT2TjBUrIHpABUUGdHe5e7w2dBHZYg/88hvUkow8N09TQjp6tT3/sik7Y4/QZmSiIQ8MpAzQckm1sAA0MpLz8Agzwz200AzbAgvUhwD8+UpghDslJ5Pt1AUpowZk9lks0XhZsJEci2Ef25SGI4G+UIUv5EudJFQLWzLEMoIjsQR7EYf8BC2Qgizq1HubBHinthE4C5S7pHo30Fk6hSs84jYBQ0868DLrFlALOUjJeF3DUHsi0UamlDRPEj5ERQMO1wjkIQ26YwDYcAMDYgB7dBm/ynfUtQEKtX+C1H1wWHh2UwUhkgeXkYn3cnxyAEIK9EXb2Jf852G94j2xAAhrsQRp8DvW0YQqeoGxAk3B9zjgOIho4nU3/WiZIKUYCauNOrJuJqFIy0SDqDcZMJmOkvczPTRhaOOXUaNaIfY6XMEEOJlTbKFktQMAA6EYFiADAeEACrGU+nAAELKT1+cPgtNMTjtzgLWfhkUEWfkTjpahdssQZcEEYaM6zYSeN1ugbaaeCwR5x3FnovaBJykYaBJN5jptQdNZ3GsJikEGukBAIdmMF3iRl0edN2gUe9IHpBUXRzJu50YiSKmI04VB5Bhq46RKqsOaDGZo9MkEcGZkzqJoCCEAT5kMAQABayosHyAAQ2kY0FMAufGhQfEBCGUxyRqGJFh4f0ANIAIJGKt7ircQtikHGzKiNTiql4mgAVgcdmGTn/zlm6aWFSaaBsbRYzkXP8/yBY46QfH6UlOoo76EBHOAB8pxq/7mF+sCBli4VOoKqp+aEMnZITpTTcBxFgqZpdxkZMChZK0TA+OHGMugAdcgLLvDAk9nGOtAAOPhpULBCQjmByBGWLBZqsVHkR4TBGTBqo26QFlCKpFIqu7brjX4kFgCrcIwBTe7bF0gYeebbd0YPGjTmteUBl8LqqaaqR0mpHBJFKTVIfsZbH6TBAI5jkpabbvlMoaUBxe5SdZBBHYZOmlald/WCqjlAOEicbaQCBvimvNjaJ95GKhiAEmJrUKxAQnWrfn0ruBLb4elDG0SndM4DXuqljF6nuw4t0f9mpxhyp3D8KJCSG6o6FWFOQXCRQR78aHsGi08iz0hF6RgkLH52I2C+55I2YGjqznfmTGIeXbOcVk8glXCo0LB2yYJ6rFnVgJK9gjdMq20sAATU3Z28wgwEwFqiwjMoJMwGBd61E+CRaInerMnJRxuwqF06XnWqq9AWreVe7rsq2FUQh6xOwbgpC00yo1DMTAKmgdIkk8PaXBpUKdtG6RekQV3gQZWSAbBeranaXAj+n2Q+5tUxYAPyW3+w6m94m7uNEJExQVkZGQ0omTaEA1cGAzPw4JkMQzUALsu6QDZ4aOGGAJgF21syrsnRgRa0wT2Y60rcX4xOii/qByJgrvv/vi+NepSDCEfNmZLoPW3O5Ui5XFto8ogyKW16hq79dmdP9oEhwCokyGqTqk8hpmdM6q7StuTomlJObG5QuC2a3qCXREGDttMLhJcuYENw2sYoPAB93ckwFMAJHFIqLEA7nF/h+sM4dG/gfS/4lhwZpKv5PmrmrG9+tC/8BrEQG+0r/QYdCDAp6Sp64q5/pm7/pYEhsK3tImxlda7NgeCMAGaj3e5jSuBM2twiUq1gsBgStw4d3A7TGS+RcfCpQUB4vcM5kKVtBIM3WJyZxAIHwMMK3wYqLIAG9GkM/+lxem9E3rDJwQGyKR66fpAPX8oQP/Ijp8FiQEgSL8ZpXRut/4wk7opaIU5mk7Lt//mk7CpCGvwBJJxyAoNOgOwO7M4ua9LB/06m7jlJMpEueeYI/h5CHpipJi8YyKjxPbLxwqmVLmSDC+RdBeTC91mHLIgAN+CtCbgABMBwIEvDIA/q4hoysdHBoSrePXBBXjLyukIyObtv/1HqXwLHA3Le0BgCACfgLBPi033O7iiCKxcHYAqHD8lWHphyvUKxKjUwqkaPktJkCgYHvYZhT5DQ8QqzdyUZI7ECMywDbqyADkhvdbDCBNSAHOeDLaiABPBaIP8GLiSUFrBfIWtzyRmCJ13OPDjePYBSI9dEOdd0OVswcNDBeOYvj4gqCR3C6tJIlv+mMuUdAiqbhV2kQSmfMhVz3vFksTxzMT3nQbOQbRpWRy9batrEbQc/EkbbjzHQQDDgRoX+S3XAwjBEwABwpS0YgAiI9EgHRSuYNEpns0oTm7hKzv0BAmSNs03/tfu2XnGIJ41yWzT6NCmBoCF4Y7zJFh7kAfKgMlMfyCqzsj33ARyw7VAjsRziAR7ub+bJq3BYm1Z3bBSsqXfZMSMxgAqQbCqcA1YWBy2wgzsYAK7x8Qqgg/fFNXB0QEIBGzbb7F2TWc5KDBca2ExzzD3eI2A3d9EKL3GkgY2qGNEoE+ZRQSkZtSLkgSHAQXjmc5nojGPToBU/5ul+cWKXCR6Utmn/o7ZZ1WkdqYIzBABAMgM1B8crWMMF0DdurAI0jAOt8TZwqEJCjShhDXfhMYLElETFIPezLTeERzgTODeFU4FgV0cfsCvUMtF+IqCNTptRn3KLJHB5s2eTXpdAy691UDJ7Y2cwI4F7JxR82w8AJMNt2wYQaABcA4crHMAM1ECe2oYFJMA0C3hwELiI1rVwI3h/Kfh8ZKQnOTiCSTiVV/mEV3gkg3fbEi1QMxFk/ORWf3i0da0qveDuqq6RkhDSDm9Wa7WLSx+Mn5pq288wXADehkM3mHVQ1AIreAA2NEA0aKgwnAAMaEMtGHlw+HY7ATdELjmT85d8pMTPYk5fT7mV/186pmP55c7CLnPudHeKrUJCjcqhPZtKEzldHiw1wk5qAlZ2K2N2OUUXAv/0Hf6Gp5BQZgHHTbG3GsdtnBvZV7tNOnBDCeAGCvxCUNDCNODCB7RAOKwAV45CBmAABMQ2ogPHXLfTSQf3oxdepIvEPDxKIkv5F2K6uZ87hGt6pRIpcGS4jYpadzbsIUyqUacBd3u3mf6ftOR7a56x06UBUTOpl7ctKcH7EvO6Bvt6jLcTRNtPOmxDkMvAAcRCB1gDM5CAC+AtIj1AAaTVtQtHSWu7knd74VkkSIhBFlihSlR6uaO7y788c6s7FQRpvM17jV74cJRF0Vb27vwB7Cr1Uv8nMBa46+ekgXWQQSnBbom7+fHC+cI/UjtwACvwgv0cAwZ0NAHogAS8gABkwJfhhgUMADpkwyp+vHBYczshZ6OTfMmHBCBkAf2tvEw/OMzXvd3HPGDvTphjp9FXR+1V6iP3X4BQ6poLx9IjfK8vdxT8uncNAAl4AzYogwLcAjiwQge8AgDwAizowvepAi3AAi/IAgC8wge4gIaaQAacQAbEqShsAAHQQDaIA9+afXAAatoTsl2zPZnRQfzdgxbwIrizfAghwt0Xv/EvN4UbQplId43OgqgV8AGTss1/+GXjO3AYwqQWfnC8M+Kb0ptHweI//SOZwAacwAIkAAacQwv/MAMIsIAEOIMykAMFMIA2WMMOSIAGzEABJEBHA0Q+gQMJ2oKmQ9k1fwsZNnT4EGJEiRMXJiN4EWPGgZ4M8eEDBw4ZNCPp9DN5EmVKlStZtnT5EmZMmTNR0slC74wWevp49pz3E2jQoPrwFTV69CgiJkuZNnX6FGpUqVOpSqVyFWtWrVuz4qHoD9JWQxO/hN0Kh+KfrV4n7pnC9eoUuXPp1rV7F29euVmZRkHiRGNgwRlFmbCwIVoAAgug1WhgwECDBA8WDAiQwcTgfKuAqLjwAcFX0aNJO0SnGTVHjyBFkqT5GnZs2bNnMjqzs6dPobt/EkX6u6jSqsOJFzc+HC7c/0N7yL7VSocinK2QvubZ+mcinEPJuev1/r0uXyZR/AJGfX5zqsCjRKFKZQK+iVWoRI0aLGpDgBoh2inYVau0AAWUSAX0BNukI5BCGgmNkmh7EMIIJUwJDS5yy4033nwDDinhjvsQxBCPg2uKNPoYA6I+uPqCIjSm+wqPraZAsSEy8IDEOe505Aq8HnO8ainy/jIQNVsECGADC1IRhcjAbHEBHQkUAAaWAa28kqFomsyokwRDaq3BCcUck0yZLLxQnwx325BDozwUEc445bTqKkgUQWuhsmT8SjqtDvnKEK4g6cPGP7DYEdFEsfIxPPGENG/LwESAAB4MwiEAiGiKCf+mBBPsy2gVW9bJDKMFsPmlSixVHZCVSC9ywhAvyWiNDgfLvBXXMhlBU02h2GwTnzfnHJbYYamAJI1Z4KJRIhW1mqI6RaWdVlq9tOqrPFcD+wCWdxSYVINkCvAGGRowkCyBBFRQIQEDULjAmwtqsOWiBBRYFV8Bd9B2IE46+uhLkmzNleCCadsVw16B+rVNRMh7OIpiJZ7Y2DQoSoMrPCOC40dqPf54x72wwvavT/jFiIeFYqGlFldkeaWDVti5xQMFGKAAZwWOAYeVaV7J5gEmBxqABQDyPVq0C07Ox5J/WaPV4Kilhi2PhBWeh2EOHYaYa64p/hrsqQ5JQ5E8OiL/g7kvYuRqFkPIgKMPPPJIIw1ItgMZ77wTJRkJk5ceaAHRVBmccIeAgacYgkxogAKkHZdogaUvcTrgMKe+HPOWJsE6zauxBjaprkUf/eGwTT89Kr1VX/1jkp1o5O+BRBFHVVggGOCiXl4w+vHeF2JFaH5VAxjMgTM/PnNDdvL8c9CDIx366MlDnfrqWb8eeyCD9GvI2AXSYNVjylFP9gek8d33dv7ukvjikX//eD7kYD5r4LaWHv/8q9/f9Oz9l5ZvkIpdAlZVCxD04iIWaME70Pc4ASwNVrKilfHgV8GCkaENnqvfb+6XPw9+cHr8E+HE/ldC7W0PCSXzXj5MsItV/1GgBsETCBBmwIsGHq0DpOJX01ZTuVpZEIhRQ4MWrrbBDoEQiUn02giZaCwT5q0pQlLhCkGwqlfAYx0XEcUDIKCLG64qFhaRHOVm5ZognrFgXFCYEUOnRDe+EWJNlCOcnqioKHLvdSvMBwHw5YAakG8gqVCHMmjxxSvJggJaWhqCeug+ND4SV2DoFRvdBEdLXnKJc9Skcep4rQDCTo+5WJUssNEMjKSiAQ6IhSED5IpfTCAcf4tg+xhEQUjeMkLKyxAljYJJX/4yk5sUJlX85xQp5lGPDcAXLrhhAYxYwADWcAUrRQOLa0gABQGQobZ4SMsG2RKX4ZwNHMKgIecZJf+F6UwhMNn5y2G+k5ggMyYeneA376XCF2DMRQU+RRALVEACsqCmRGRxC3eU4wTC8N7kGgk1cT40QkNc0zmLok6LXhQJ7dSoJeHZUaggap4pdAIyV4gBfKkCGwHQCAGwwY6BOgQWChgHBnCnR/YRr5YQ1SmEJDkUiuIDo0EVakY3WtQkehSpTBFPAEnqPVQcAF+sGEEGNAIEbygAQANthQckQIIMbPNv/pJgTndaVtnwgR4L++lQ2dpWo74VhEmVK/f+0gh7eo+A+LrGCICgkRskoB3XmGYDadGBYYgAHgkAgjMFkooNBCN2DPXmD81a2degQQy9WWtbOdvZdcIVtNL/k+scpVjXu3qvG/lqhQ1UqpETyKAdv1BF72iBgBQwQwbQ2MBFgqECGXjvpqwhq2WJW5vmndOzyVVuOkPbXNKNlnrHbKr3TmBDfAFgBgsAq0BMEAAYQMADLsQXL35BDgnAowYr0CELA6ACZCjjBLFr2ljNWFz7woQP89jscvnbX6I6F8Clg+6wHibS6XrvAkd7hTMMkDiNWGAA5RiBMm7RiqySJhavYMUtrFENGCQgAMFAxUBQcYMAbGMCCkAAMhZKxgneF8YvQUMmKOpfG9+YuQEO8IBBVNrXgVKPq/jG0XRxjAIQgLEZMUEwAoCBArjDAQcYRitkIQtXXNllsugA/wKu4QEHQAAE3igHAYphixELZBQWiEYDCtCNYVRJG6uIXSPYpyBHxhjPK0HDJZCLYz//+bM6di6Po1JgAwNZjyd4BdIQ8AEaIFkwwogGAR4gABQUABsTkAAEOO0OFiSjBdwQwAMwhZmLpKIYLuCGDRjACoYAIL6x04KLh5tnW6PEEDQGFqB53escC7q5PPbx607rPZMiTRfGgEAIXFCMM2tkFKiwwAoGsBgXqMMFBCDACYIhDFT0cyAm6AU0tsEMZ3jAugwhwQoZOVlw3hrPe961r+ld7/8CO7TvNPRffqxHgrzgcbAAhgiYsY0HAGEDz84Ie0TR8FE8/Jk3OIELBP9wjnGI4BoAuDBDxCjfWHnTcvAW+UlyzSF7nxzlgcY3aEcIMQMT29/cTQFtd3ELB2ADHc8IgKY6RR9wD+Th0T5MBqjhgnIgAxspUIAxOlBIiKRgvUsb3tMENnKrm4QOnkDEb1Leda+rfOVvDZvLD41oPa7jXr6LBQBwkYJ2JEMHKBi1OgjQDE6VYB3LIAA01AGNcGDgAgWYgTO0YQwA0GK2ElFAFr0nVpC/++p5hoMlkPJ1y18e7GEv6pzIzu9G2DXmAukFLl6Kvl8gcIVTr1zII3/1TugaHyMdKeZpj3nNs5w4XUvnSEEf+nxQQyGld9w1Yt34j9u5lpBvfZ73vHX/2T8f+k6o/fS9fnuxP4Vr6uR970PfjFsI/2i/oIa/VV/G+i6/9ZOP/vrZL33qv9/e1g/t7nlfbD1mwAPgX5UHUL/C+QJsQaoO/QbQECyh/Q7wAOFPAXtN/oBJ+7bP/lZoHZRB/64kBSDL39qN6s5vANEvDzgBAUMwBBeQBP+sAZXoAT8vAldoFcahAgWkGqLO47wkAL+pA2+wH9AADEBQBHuwB0sQCG3sBKHnAX9sBUuKd16QImQBA0LPCYJr9ZQPB0eODNKA33wQC7EwCLdwuYawCFXQ9y7iBIZMCSWCAvoq9CRrA21wCqeQDLjgCrNQDuWQC+uws1buC7kvDDej/wUGqwwZwhXgQc5Cz/Eerw0PsR/ggAvmkBEb8fnsEBKHav7ozwiPUI+AQAT+cCFEoLVC7xOg0PzYEBHbEA4uwRFPERVnLxJX0aIc0KJk7/MagRP28CIE4BiU0BceaA/VcAMpaxQRURHjMBWH0RFZ0Rjv7YMwSvYsgSMMAQlokSBSYRt+AfyMgRsAyff+7/Gk8BeXrwp5kBjDcRiP0RijB6NmIQ0MAQ48whA2ARpPzQAah5oowAAGcQ+fkNYEsBu7UQfBURz/MRzJkRX3jRPScVYUhB0v4R0xggBmoAMaaBpsIHIWUgPXkBv3sQPpIA8MECA70iMFcguZgAsMgUHQ4P8g15EPYsUSFhIjhEEAJsDVjoYVJkAAkuwdJycfRREjd9IQtMAjfxIoVREkLY8JIGES0ADr6IBBTpIdO2EWWRIjUMEFkGEHWsFKdiEbkMEFFG4htdEiL3InpxAO0sAfg9IsP3IoeU0kjzIlamUp3wYk2HETzA4qLyIDHkAGmOEDCq8VBssVWsEYKGAHqoEHEmAZ6vIiCvFp7iwsG9Mk0GAjz1IyJzMtk4sTRvLd3HIkThIlDcETLBExQ7NJ8LGHohAsHfMQ+YALynIyW9MsKzOdLtMQuFEzTRIuPSIlPUE0d/NknKAiTRM1g5NCOkEMXNM4j5MV0dEQYEMp3zIuU9L/EBSSN6eTSBqh3bZROLMzJeAADDjyOL8TOeEvCrRgE+BgNmpzVm4TOrWAOttTMz6hGRuqJH1RO+uzH/iALMFTP/ez6zjhEtgSQtCTKdfTPQsUI+Dz49qneE7TPjEyOllzPyM0PG/MEtKAD8hEQBGSQA3UQBshPhU0+RpURFXCEPJTQk/0RNtKOZESVzL0OWNFOjmUOn0zQRczREcUR1MCPy0hFhsBRX80Qi9zEshAaly0M6NTRqcTCRCEcoAzR590OzfBJ3u0R4HUSj2SE7KgPDOnVprTNjU0VjyBLpP0HTnhpgAwFOkTStcU60qUR6kUTj/vSucUC/0zD8wTfmrz/0tftB2fkUxZ0hLO1Eb1kU0LFSXIYBMugRPilFGrlE6vFAkqdEjRSE85EzcNwSn/9CYTFEQFhkENVUThoBMUtVFLlUof1Tgt4RI2gQ8+dWoqFS5RckM11Qk/1M7SVE1BVVdTggw6gQsM0FSD9VRRlRhVlVVZVKdgNVbZ0TMFiFblq0uaND2Tz1V3FUrpgA8SFViFlVsdlVgPkBPEgAsQBFktq0vfclmhsxNW8ln/5hNwEjdvdUGr1VoNFQ2ylQvEYFG7lV+91UojdVXd5tbOdTMtlVkvYUzb1UAClVNvdT7ptV4jlgza8RIsYV/7FWN91DU5QVXTwGyINPIItmA1VP9d2VVhq5NJ43VQCTViW5Y27rUTNoELtGBbMxZjh5FjtYALwGAS+ABkp1BZSTZM/fRkUyNW/gVNQ1EnXZZpJ4QMUnIT0mBmLfbHbJZf149jxeASdrZL4KBc9zFon1NdEbZoBWPWGlZeH7Zp11aI4tIQJmETojYNLuEStMBuLQFv8ZYT9pZj89YS7FYL6JYL0gAMNiEPJiFBvrY+w1ZsY6UTtAA0NZVhkTZpweSbIJZtM1dzDUZkbTNdmZU4I5dDzfRoVXZlL3dzU1d1z6hz01NBZFVdtSBhZZR00fZ0l3Z1c1d3MUdPPfd1cXNsn5JMJxdpX3daHxZzd1d5l/c1Otf/d0kWOj3TEkR3If0zWotXXi0Xd5mXe7t3THo3PWMVdo92VKeXN52APEvXdG+3S73Xfd9XTJw3fH8XeMnXEwwQKjkhfdW3NNk3V+EXgAO4ecHXden3Uo9WW511hTj2Eq6XcgHwdrdXgCeYgl9CfgvYgJkVgT2BZok2Uj6BgT3BgR/4db9EaT21glNYhS34gjEYejWYfDfBE+pWDPSWb28YbwN3VUeYU9d3MbUXdVdYiIe4LZ3Xc8X3hQ/4aJeYiZu4iYHXh38YiNuXiKvYirvUS9GVM0sYirsYih/Yi4G3hLMXiIPYis/4inu3YOd3jDM4jMO4jY03fKeYitHYjtNYlY2P2IXjmI/7WIpPmFqT944HWXmxuCQPeY7Z2I/jOJHD95ADmZAj+Y4N+ZFLspEvGZMTuZIhWZI7eZCxOIs3eY0z+XhFmZM9GZUjGZRNmZVb2VPrOJVjuZNBOY9dOZCxWJZzWZf7gZZ72ZdpeZeDWZhZeJiL2ZiPGZmTWZmXmZmb2ZmfGZqjWZqnmZqr2ZqvGZsLJiAAACH5BAUyAP8ALBEAAAAaAlECAAj/AP8JHPhvHyAxYuYRJLivocOHEPVJnEix4kSIDSkurLiw4797YrRoCaPQo8mTCxHSQ8mypcuXMGPKnEmzps2bOP/VqxcnTpk3QIOWKdOTp5I1XLp0YQQGTJ6mjLpsWfNGSc6rWDu+UQPGjEd+YPm9NKPGy7+wMY0YIRtTX5g2bfSZxEgXo8WKdR1O9GixpZwzWs4AyipQTBvCiBMrXsy4MUqePn8KJVrUY5w1WbYkVaOGEWelXKZWdUwaJdctX8HGVNNFoOq0Rv6V9UKbpds2cvbNdSgwr+/fduWe5MhyXhiRYuRkNVy6ufPn0HHKk9dzqPXrlV3GebOmO5ekSsOH/6aqJE705qdTi4W5pezZ1zG9tDdDu7bJeXJI7ubdG7h/38LZphFL9LQhUhsr5cTceQw26CBj8vB03YTZyVRPUOZllkVSXHQUyoOMbQUGah2hFVMXari2Hkz1tSfVFvYttA9+cgQo40M3/qcjji/1xRJIIoWRoE1nHAbikUgmSVAT09UzIXZx1CPPVdu9YV49awi0xhZcctndG6FEWY+SV4lI4kImsqiGV2m61GJ7a3JpVkf60EOPbh7x2NGOfOIJk48oAQKYFoMRGQaZiCbaWBNMnvGkdT1NNyVhVb4x5pRUxaFEFt19WZWYYypKkxdczYkmfDCRZVabLNHG5T9krf9phhlnEjSPjTn6uV+fv9EE6EnHaZFcTSOJauyxMDEqj6OPEiUlo45JZp5A2+nEE3lKZFvUTjsh+5IXabhXIqowsaYiTEa4OiuKYHQxq1d7mjSEnijx2qtNxKFU4IFDwlSstwCLGgSjYjD76BnyQPtclWWEKhBQUlK3Rk/bcsstwGEF9cZrpKZhKkGsfqsGaiGflC6XZrTG1Wde7bEHHSwNMa+uLdlL11W/mgSkFgjGRGjAQINIsMEUniGGwgxeCNS0AsmztKTbWSz1xcjyA9Qa9XmxBlhegCHuqSvKhOK5LMqXcopNec0ZHXS8jJLM89Zkc0OE5eyRoEH2i9LPQff/TRqjZxB9ndGMBqFklXFICvU/iUv609RTH6sE16526arXb6hXE6lsktuq2ew69RRnLr8Mc0dwy4xTn4zZ3VGww7IkB99+155TEwULPlTgRzeh6HT/AKWT4sADRfwbDUNOtbFWV/4uymB4PK7n7LlX8knqspvHJHnkQbrL8qae1b2l5XvSvjzrTdA9gIx0j+3wv4R7wU/yXrioxEdYRvCNAy+Q0hGTlJWUt7ybcMseCExgAm+ihDeoK2Xh6UJTYDS9myiFbGXbwtlEN7oUnSR1Q4ifSVy3EDmEJH0DWck95JADA4UhB3K4x/tEWLt4xGN+urOf7xKlrPwRL3jIO8nT/xR3IVApz4BSU6ASFyiTyWFNgyjiDGeaQisvZG4g1xMZyaiHkuylrSlSbJtHxEfD4UxkHiUJ1KCEZCf2ASIMYsjCP8IQBkDEsIzHsiHuAjehwBHOWIwKZCB9OBAnIc9hHflJ/6BmKQIi0kKQW6Ik7RGTBoJuik15irtgNKewhI0mY3vPTE7WHq/JhmUv2wNBQIhHAaERjQSCHSDY95aQZMFobajjHVsJIj3mro+Ea0I8EhWEYhpTkMhEWiKXhpLtlMGH24nQEWtCwElKEiahcKAGp9i97nltk6vK4kuMsKb3fNIl6ZLNN1ujlFn9o3QDISMvUfJKWBLIQIGBS8E2FP8Yo+lyhvMsjQ0RwsfBIUSYw0SUMRfK0IEJUjs/adhjMieppk3nJ9KMHDWrac0lvoQfTyRLUyZB0tGB05M5aU84z/mSlQnEnW8LYUBdUs80moQes8tCFkSihQ3pNDBiqCNAZ4oVHNSSftbRQhmMZpiEKrShUF0oTSLKNCEyblL/UJzxIGcTR9ajo9dsCUjNxpXtlfSbtDLnVS4oypnwQ4JdkI8GZ9WlMRL1JTW16ULowb44ficpafjOTosUBuXc9SbxoB9Pl0o4GybKhpCNKkOpBJT9sUQe+0vcQBQXvKxaDCde/SpYPcqSsW5zpGdlTRW5KBNSbZGlLZEgfSpnObP/9OO2h51JXj3CV0C04QwbSkMawBAVLuTzhUPNbUzEUAaE5BIHioKsdKXb0MQYUqIomY55LLtZ4GEpq1gJrWhHq0SWZPOSmezgi7wA25mwpa1i6wpY0pW1+twWt8qNiZ32K4f+9hcQb2xDwXrKheF2jxFcyEJzhZrfmTAXUdONcIRJI62WNEl4BKko49YgpauId7zkVSBKGrilbXLFKWjlZFbKKU6TyDYsaqEvbdRyX/zOFI37XaF/5fBGOsLlx0AGMh19LGACM8WbCV7wLBsskwc7SMJQdqpzGGZhAVoqw/5j3BuyjMTQhpi0JzHtujCZoldlRaVqXY18YRzjNhvh/759wzFOd9zjtwT5zj8esi53vN9/2OmVAuntbzfEBaZEL7DCQi6Tl3uG50RZwg/C7FAe2RHiKRLLWcYoVrv64S+DeSwC8ZqcsoQVtrLWJFxpjSfd3GYQSUTOO84PkfFM6yHbkc/7tWdM8trbE+q0C4H9q3ELu2hGKwYHyE42Dh5NJuoMpaom4awzF6Lhh2150xsVr6fLaxIEhoIftE3rPzh5ajW9Vs2tMSc/WB1jG+fkjPOY839nLWCE2Pvehsnznv2ba706pp70OIi9RSLYnfZ0p0YqtksKlhNlO9zhjj2Wk4aC7UpzVmnU5nJnNU6TD4N42ydJIFiwRtuHtXgsHv8s90JSjUU2sxvOe9rHq+PtX3oT1I9MvbeQC4trNErkWDh+Sx1rCVzjArXIwjKswlHC8Jg8/OnKBpqkiVLlLEMM0wv5bsVn4vGPg9wjCrQad7DWHa5sTOUuYTHaBcLyls+X3bGB+T/0QfP8/BjfO+ezz3/OS5zm8h69rWVPcVnHHPzjhAlfukcChxKoOx5+PkHe1jGdaSthfSGX6TBoPb5tbndEiZMDy9m7ZoaTtwTNpldnukH2dnbzBd4DUrxA7vEW5cQbpz2OYy4LD/iAD6pQsieI0QSSg+I73uGtxKxSKW1xLm8H2tUeyGU4znXOd56Jn1dgtra/fdmkHiWmbu//ytulHrjHJvj69a2Q/vHKNvK4DVn4Z+8ThE8xJFfxjS6+/p9O1CYMRamT110adxncZVFb10DUB0mddn0I1G3ax33btwUjsnbYMzJpxhJtBzbrBnfoBxNyABdykCAA10bHMUvz12cfgXgdaDT6V3z51QQT90yXxVkLcXUCaBLGE4Aw0XUM2IBg94AQmC2cQYEm8V5ol4GstyIc2IH3AUtCRw95JWd20j4nuF/90j6BAXxLN3yLNnXMl3HUVwYTc3kekSUJGBM82IMOmEBBGIETiBPlBF8ngYRu1xGtxmR3YRFRiB8CIQd7KIUBpwVViIIDcQ/1d38N1lxM5n9loAVx/7BDJ8EkCXgZ0JeAWudh1seAIceGbTg5nIETWyA9LUaHKiJ+IpSHqJiKFMFrbzEYuiYQI2gnszOIduIRJhQkS6eI+aV8MogSgzR5BAiGJ5F5OriDmXh9m4hAnZgtZgAGHzMT4YeB5FdB3sInqniNJDQQvtUzTQiIs2iFhOgRwXIGhrdounhY/qdUj+iLDyVEV3SDw7gGZ4iGx9h5KMGJncgPabB6MwEu5zaH0wg2DDI3/4GKiGGIuFEc7cdfWhCC4Kg+C7Ez9sdkwpJb9SASZQCJJoFMKMEdVRV9HpGDmLiAmniP9rCMVtGMpOZeapA5p0aKF4gTICQzBLkjDUIPT/+okAvZRg35kOHoETmwRg1WkUTFi8XIkc00hmSIg9c2ktqmhixxkssYavx4IvDCWjD5fR80k3BjLwHzgQlJT7yWYz3pk7XIEvh0Bkp3V1qgka2Ujkrllh2BlMMYREtpEmZYjC+RhiXZElP5DxJEE6G4UqgWkEl4FVwJN0SFk7kEkbZST+x3ezwJCOAYaFb4I4iHiHiEA20ZULwolwtBlyeBcXfpEZcYXiRpjzaRLQJBetCYblyUlUTIhOwHlmvpETVlK342mZdJEJUZKDx1KDPFmYlHQ+m4VCxRTO3IEo9TmpbBYXppjE+JjKs5OQKBIu/oElvxj+NXlaVIm/oFF/r/IZaAdlMzdJYd8ZsnYYjIcZtlRJytNCgZiRILpUwoIYaVGJ3TF517mZpft5rr0TW10hJmkAYuyVKyaYoyoQ80E1DzsI2OORC5SSBz1BLqqTMqyEucKWXwc5xikJxS9RLB6Jwh2ZRZ4Z9flhOhx3Ye9BLugkEDkaCIcXu40koI6Yc66W83VaEWeqHiyFNaKELxoAUc6jdwOZ8nUV17SRXC+BIieaLT+Z8Auh4SOKDYI4rkIqOIIXP5gaOtZBxwEaGwCJkvsRLC6RI+2hHsSZQ0NKRnWjuOEpcgakwywR2IBJIskZeIEaUpehUm8okukTIwqnqasxgzYmc66je22RJk/woTZioTaboQQYmLQvovRtqIyEmfkxUT+JlxaGiGiuFlUpoTr1GlLfEGacCdhEqNjbEPH1gkYoosBRJUsdqo+sWj+hWpBDGO5Wg7h1Kk3hIE8gmaBLGpMTGi8Cii0LkYXjWqpPoa5sISoXigK6KlpeGqIRE7QWNCYXkSEzoTK1GcjtqbTIcc8POrfcNccqqpdMp1TEqi8TiPm6c8nqYYr9GMz9gRLwpf1uocrjoo7ikqszqe3lqeNRGuN6Gr2iiUfjNMwCoqcHkGhpOkxhoTTrOSBjgTT8qs9Bpii/EaqOqdBEEqhCkbeSCyWpkYOdWQQAdH3GhGBnuw/yCukKqwAv+Rlr0aMMMEXQAzrHNaTDWBWUqZsRproozRsaPFGCZSoBi7EILaVmpwsoX6ICsbsEfygWIQpHRyRleBsDlhs4VxIEFzGDx7LHD5oewKtDaBrEQrE3pKGlOTtI6BFiF7EmnQOWIRtSg7m46xslrrIPMgYC87QrGHE177tWAbLJaKLGSLLIMisT87sdS0BgWYVfJqEqfpHAc0Sc5hIsBmEoNpTv3aGKrzEn+xU2FQo9FhQtpKuHuBGDRrE1aomQRRfzkLsf9QtomirkhKse1qE06zZfDKEsSoeBxztx4Rfno7taQhTxYKXCOhuqURuIaRqANhPlhRJInRRjLEEpPKM8j/8qG3myQRG7mSG7RieKeXG6/8GVCemwYd4Y/vsbysWhoz6ahxFL3QwbpWe72Fm6N7uBBciBh8JUO0OxCK+6aIIr6J4rMoEQ8hihNiWLl4ChMbq3DHO6BPyw/0K5DRcb9lmr9xURoDa70C8b8F+4exKBADnBgG3L0scUJou7v/ML4PcrYsEVnna0CUu2kVbMFGi8HQqgYkRxvIy8FSW78fzEp4FUdZMMKM4bKxir3dqMKxuBII4RgvfMA1PCix+yAMnCSPm8PUhRXyQBU+vL4o8bbGS6VdIVcFCiMdfJggkjp008Q61QYmXBOs+7cb8bqMasVjuV9ZTBov3BJp6ccN/xLGIHJCvWsS05UVQqu+7Yu5oBp8YYE1nIEymxy1LUrHSEKT/EFT8PfEezx3rkO9eiwggAzAggyI9FDIhnzIMWyuScJcNgwdOPzAkZwVnToQkpgTxYvJzbMFcKUU7RK1renBiAIRMBG4eZyorwaOt2Ij/MvKfEdTrzzIdqISzrHFLIGFi+sguPwg8tkSvZwVbNtDOSGGanxY4GY2YJQ2TyEn75iy0eHMeFXKYqA3dCeLOwZ4t+Jnv7XKKIHC5LnNVxzLZ4CepUHLKIGzIOIouVwaTYCRxDoQ6SzJaLwkTFImQSx76JVe5KdiMWks+uwS+sDPCfLP/aVntwaFYWA0/f97wgidwgq90AXzk1oM0SbxvV/cHBTNIGNMxpCVFUwyFDqFSIGEFRe8dA5EVlHbTd6jWjBydgpKJhjRIwaSBclBc3bmXHDxRoChwK+XzT2S09wcy1rA07NswCyRwA0SOBXNGI6c0QKx0TeR1FrQHT/l0fZpE2ws0lBUVniQWuB0drWz1Sp9HKhLdDyFEDzlpa6L1mmt1gttIOT6zT5tEhIdHYz3HLt8EnpdE03gE52iVOrIXcuJE5cBXh2IXmbFPU/xTVuwMfHD2C2x0jplcL3924JxD9Z7066E2TtpJ5q92ZwN1ygB1NGRqUItEo1m1BEHvEPRKRTHLFnVi02NFcP/jH6yTVK0TdX/AEabdH59o9vDgVNnIGzg8R08U1gQScU9QnfGDcvJ7dbN0dk/SqnNsVQPtxgXva6kLV03oXzdoY6+c9pE4TuYNSWtLcHyWMl3pS7lTdUm5U6h80WcUUVAo9504ndxBGxpk2CJFoJ6Rdwqbd/3DY757dDRAc61LCx1jRMOFxgBjhjx0IiBgc5HTRNNEKcJ/kyQyIiIROTd7dQhrXghVd4oJjpxEiP/MNIcDk7HAuISKuI9lQbeJFzGhRtQ6L+WPRPw1uJW+OIwHuP8vRB4A76E8XB0FBg2FHVZkVjS7eM/HhNBzuNK1YtLQnEL0TBJjhU9TOFEpU1c/6FOHtQ9UiHlHiEfUfRFamPlWp3S16vlWWBghyZcXfDl9EDfCzpzZr5faB6r+83cES3dZl0TyiZdx3EGkBUGeY4TcInX/1Da9KmuQ34GxMqIFdfgtk4Tgy173BGYImUuEtQVo1LYJ5Y2Vu0F6O0g6l0n+WFLwsUICGZwBCZYPFPTfyLqxg2Ox/GQSCLjJ5EDMlzjLJFsNqRnNqQFt+7qBl4T8fC4D6vRs84Se85TAIjXkgaaDZ4YlGjodyWBLyJbdNWMb4gTl9Tsk+7hA6nPdGd3IeHlP2UYduRnM60FCYZwgHDKrnvfsDzuYAsd5m4SihvUJ4FsdBQPsm5DQCZHgf8EF5DWZBi5wx2B63MZpxjJ6y7BLKDJiME+E/tJm+ASV7QBbF3CSROUGCdzNivDMmb2HHYB1gaCaMiRSyiezR94cDsVVFz8xywe7lZI8soNIifv2dKtyB7B8i0P88gk88mEUPOOzjw+wwVe3ZHI50rl8yI6FBp5TAyuGO5M8DM1hM2jKlkDFunhGGYDQUrBNmxD9Q9B7QLhU4f3oYUFeNKr8bb09bixx2VO9vtl9vr9IGnfEd8rBuqeu7Le8m0QSPj29fgmSLF+7wNh79R970GgroslBjjvi7szEA3FKE6iGE+teGqQBlsTFiljBEDhSRys7NBhFpKfzxkB1gk2s7n/ZEec3/m2grU8VSSUedYiL5l2YvppniSpvxByvfJGNWTxEPvzc3PQi3P3Zvv5viQ8BRBN/g0kWPBfPIQIDRJscqaMFohlzghcWNFgkzJl5P0L0tGjxyZN5Gm0WNIkwTUaN55k2dLlS5gvu6T5x8+mTTNdbu60qQaMmZhBhQ6FuW+fvnn02mT5JwaQHKj05uk7GpRemDYQIbYJI2feQH1h540lW9bs2aT01F7Vcm+tWqJxX96jS/dkDjEQz5TEEcZvvDZtmoghfMbw4SxaDi8+Qzhkk4TxFsY7o5dl5IoNtWqRSFEoxjJNPo7u+E8kSbkL1/yTtzL1a9hCzaTZwpOf/xkztnf6zG0z9m/gA40e1ae1DV21U43qiztPTpu8irnKoYcU7fWzb++FyQKoLtzgwOvaNQmoshYxCwH5DQN4cGHGGblwzsjYsJjHkBUSjF5GskkcMCtIjIe0Ci01Ak0jjaOPTMPINdjiWCMOCMOzELgt0uiiJp666E23nv7RSbcLS2xpuH2+ysqrscIaLqzX5rkHEOgIE6MN6rDTUa175MhhqTYAyUEOt0yMbbx7TsoKojAIAiTA9gSz8bCMqtSCiyyq1HIx/B5L6KAC0wMQhwD/M80hAydKrSOHQmtwoDcHwqge4CRszUg84/JCjQ053MlDEPkhqAswRgz0pjxNRP+RO0C0mAdFFGEEjh45sCIssKek0pEseu7JYT0xsrgxDCGJTFQuJFmK7gwy+4ryPSqt1ArLzbSU6L4u9TtvrzFblfO8iNSU66My4AxioTjlLCMO4MpY485To21JDTUIsq2L2kAsiNA+BzrUNmlTQ1GLf8LQgipIl5M0trCsmxGrwILM8bpOc7D0DC4aG/WpcIlK1SRzIRLjLynFiLVALbJQGEuF1zCwysMc0ywxzyxqNUACN2sstYRA+kcxi5JVltnf3ngD2n5THlQNL6ztMFtwDTKj0JK+jVnlk4ajJwtL032x3XZhE8ssSmmMt6vkxlKrUugqo7UxrrzDOSYkkzT/Ka/EboTVsIwgWkNhsBkGW+GI6ruvMoXPMLOiVoPIWCth44oMoY4w0qJCgkRWttjfUkJ5amln2sIgnv6BufCFZq7WJZuNcNwIwAsabql5bvRZXaAzZ26ooentEd7p3Jqx6YTToBW90COfa7yTzCUbvjYhGnvhLsQe22GI0c76S7Y1M1BMuebGzO6KC9Jbzjj4jm01vFU3MkOgCuLpDcMDrUjxoWx7fHvHpx5OsX3KvbyqgjQHOqbON01KjvVANzhhLtJg5OmBpXbepX/V8ytUsrl+6OuwcUGAtROg7bKAu4eALTQh2Q9B4mGwgehFDGsbivB4xxrOFC9vHilJE5L3/xsJUeh+ifKChgj3BkHVRESHSyGiFrIFMKgBcqnh3uP6ccN+pCx8PCuOHMZnEvOdjyXWUR/RKoW1LHCBEWAAw/yyFiSrjZAlVVuIqwCTMLL9b2wFFKDpuGg7hyUxbRL70gMfEsGJUDAoFrzgQCpzIGRx0CRNqAdqXmOn5kkROGtIw+Kkxw+TmayEW6BeCl1myIJsgVoWghwOdbgUfdBDCz68nEuCGDSLELGInHoX1rgAhjzkAQxp8GJioBa1HJBHjwXJ3z/ah5XBnCGJtNoiF2fSBQIWsJaJuVWu3geRf5RhghxjY0WC8BDlGeR4F6ljHoXirL+tEjj8oNZqChLINf9kcw2K9EI3u2myQ1ZEkSyTplzAJwdHVVIol1zXQDZJtE7CD5SidGJiNnNPjdmIK6RKZRRVlj9XWcpgThPgwgqIyy4wQn6MwOUXdZk7NIGNMxPEQfCKGbKH8CqOpWHJaZwZFJNFs5yv4cdMvGBIk63Bm97M0EpXCk4XGmScLRupVbqzjyahC1KvYefm3skpSoXBYElMAxOdiDr7/aNH7QtMYfCJT30Fxi9CSlRdcpCDf7hKSlSCXy65gEtGhHWhYW0oQhnGGdmNrVjx8FUFLdhRgYVMji0ZCZ1g47eP1rQlPJlNbagnSJd6czaBfekaYlqQPZFTry+B5D6g47PgBPH/p2UJahtkOcCCKqZ+/pyip9bT1F8+FW5R3SdVYeOpT5VLoP7D4lc1lNCwhrWJsWUoKWtXS4Z1Rj9qbAkbeZsZiGjQWBx1CUZI9hrmLTZ7NnlDNmfThTUEsmWE7WZfqevNNRjBNwtJLE2VexL0/GMflgtfoto1WU6uJ2FXOivUumKhT/mlRoYRbT4vtc+rtgSr8ZUvfAoUNlKOdYlMnK1CNeRQWvWSgQ3s7UVdIg+HCZdBx4qJcSM0obx+dyFKAKRgY3hdlm5BxF2olohFDGLtVqS7Gi6JHLIgB/H+ow1GSRl6l5YXw5BNs1Hj7Kn4C1pg1Vez9/VLfrNKMP9icZbx/ysqgZ1MYPkFmIC8zMg/GiOQNlqsTHMTyhlSQmFlzhUmoLmwSFlsESW8oZsintlPTLzSf3jBxHMmseHmfGLCppi71PLumQnS2B6WF2c/ZcvAQkVaUhVplT+eb5CF/LGPbSaAsH1ypUdpW7HRR8G75cvFBPTMLIHZeGIeczBh01wz+7kgaVbpFnDDRA/h5s1yvrOJ61xrPAdWzwZJ7OBUPRBRiVeSPlTdJu9BGPblZZ/8dAt4znxV+Tbtv0z5B4JxudAnh9LJZJ0y2YK56Sxn9WJtJcoxs6DRMBM3KB5MZlxCmuEz86PVr44htXApa1zjBjfU0rcZcJ1nRBLECNTytf+fXQzjfaDzUSPcEWE6dWwtAELiUGm2s3/9D6weGZZWTqBBZ0LKbE9iEqI0KlkLquNi3WfB/xn3uFPTBC2sAXjpFvW643Ay5Krk4hVhNZt9QmBq8QnfbO73vtVQ9KHPeqWHHYgXSFxwFocKXVmh8WKh85YbjectFv91xrUKq65NOrYEzoPISV7gKf/Dnmbr0kHE3fKKvqYJEbZIPEi97nrgPDXJ3flCQqFmV/98nky0t75d3W+E2jvW/a61S7Ub8KY//cz6CLZRLFv1mkKHOmsZ2NY9/3kWe71JBYsdU2YJ2wHPU9slbyjDIsh20yTE5b+RpRaE2zG5y0PvcQkhvFn/LG85E4qJZR85GAZy76IjFJfGV/7ik74FxzP9H0aQvIYPLt59nGHGgi6nUAGRFrWIYfOfJ3/5PX8/0ct4MBwvlthlS/azx7ZbpidXla+8WzKFpwxZqnu4hyKSN7Ar3nsW39Mw4GszUBK54qs35MuJxKOWelO8BvS3OXOpnVgI6lMDqNMrqfue7aspORgYpbmxigO9gTA/86uaVsKT9JMMMQk7teMCEaEtSyuwapNBYNM0lYMMt9M//quIT3u5JniD4yIKVCvA7wI+n/AJ4ltAxXNAEgs6CJRCCWS8CvSmx9sumdFA5aK89DCKeZgk7lslergRTVkLoUJBmPg8FWxD/zfsMaLIOJMgF4L4qn9ghIEgsH/QwztsqGobCASKGCNJGHQriCCUu2VJjXfru4UAJEKBQNUjOQnEJSqExEpEKCvMtW7yE8j7BzM4usW6PqNAJ2IrpzIUA3r4hxFUijYwPwt5Q1h8w5aAQ4NQHhkcoIEoKtoiCIbCQYmij73AjxKBuWADQv8Lii3IAz5AgzH4AmdEAz7IAxwMCrxiRINQgpnxEBLTQ8KbxEoUvAiUwgm8wm6CnAtMHA/hQKYYjkZZOGlSCjGwmlU0w/JLmVi8RxUciByoqCapmDMqiAEyMNriNi6SKL4JRiwbiLiDjSZQGAk7xKCIg0lAA3+oSIu8yP+KRINJKMKW4DtrJIgSwpbAW6R/oMIHDLoaDMcnTLqVmqFzlKl0LCfKawPscywtwDw9siwYIwjwOwNAqEdpwkckuap9RLKBUh6DGiBSGsjWO7l/wB0rQ8geXMjUqL2HPMYHy4MxwEiuxMgxyIOXkJB6QELlegM1SIN5o8RLjEIpzLZKM8nFI0fveslE8pAZ0iNAyIIkoTGDwUkLOQMw4AMyaMYvGAMy4AMwKESDMI8mKYi0sLLx27qdqxqifKWt2j97CiDXSijl+yKwQaBNm0rY2D86nAysdIk1oMiuXM2LRIMNtAg8+siBCIU+Sik580TlOz61REknW70nE8e4VDr/L7hLuiSILbDLVZKlmvwYMfDL37gHMFBN1vQHNACDHpMD7TMIpXGlMyA/2VQqfSxKeEmPslGyWSKlr0Iw29FBfVkwcXuN/Ws3BzrNlmCEL5hO/PSHL8DDkzhC2VQCk1KCv6M1xMMlEWFLcAwlBfXNblxJCoQ+LPwjLaxLM7hL55nJ5SSXMYyNeQCDrcxPixwDMEjFE2wMEnWnsRiINJTM7wRPjBPPJsko1toir/LMsWHP+9MPciMKQuw/BhMKMGBNMpCCQfAHMjgERZhO4zOJ6Eo1Vesre1ACDgM8otO3DWlL+FtQBXUy4DQ8TewzTlQx5Lwf7qCH4VDFmwqPNiAD/xDtSjJIj1M8URT9ChlrRTltURclyr4wNdjpGgBKz4KcnSzKHTJCiB1dN4WZOUOkT5ZghOkc0kMwUin4A/xcUouoRmuEnn+I0lCwiVYzMSstSUgcPi3VUi4NOuSTy0aUvjjzEDCdGmA604Pb0NTggvts0678Ai5YEe1M0YHovDttUashSqHaC9JjLfjBEgO6HU3rpVwx1EMdM4f00dTIgltdTUiVVEqdzi94TZRgjY/koy5Qgk0VUOYKscO70gRVUAU0uy1tUD6JtTmLs01c1QkFSVdVHQw907ykCuBwVFwdgz5QBEg4BCn4UH/YBEDoVTp1o58M1u8c1h8hDILZGv8tmSVB/cVmjRgvgdb867JpNcbfGjPpxFYpiNQh3dbpRAPYXIOxtMY3IKUU4lQUUqk1S9eBWNdQalcFfNdwbEATo9dXDSfuylfAKdMzlbGbpFWi4AJc/QJFkAKpndo+uMhpVEWyIAjsVDQ8JQirEar0sMwaGag2ESOyyaZ72hKOXbnZiwnSLAlGbYk8WE08qNtAwIOT7QO8HYQ+KNmunISKiM2+A1A1sKZy/Tvgu1nc6JMsZVeeHTnf7NKha7rhrJl7bTrcGFppidWqywvnJAoxuFb8pINBmFrTTVKL/AIxKYuCCIPuhFg8hY42qEz2CIytybH5WC9bsZWIyZUg8Nj/aGWJhJHPgYBIoagHhMVI011e04UEOmDNMeDIf/DPvjOpgqDZxCVQxiVVLeVZPFhQoEPVxbMzyrVQe1WxzB20LKBJzEOPzxWKeWBTEP2C0mXeScVIMtAUX/0zVIRd2QQEiiXKq4ISeLldtUug3b0VLvFd2buYoEgbHx3ZmJjb1bRf+z2E5MVIwDWIRdy5DNlA7LVZ7c3DSOxePJiEEzZV4xNffSNfemUJVvWC9E0Z7ngUzFvH2AjSNsVbqVUEPICEqY1UjASDrDUIeuxafZTd8BRgAnYPGyEXxdAL+2CMXGmD3wXejy2uRI3g2PDbrgxiMiCDgTVdPGBNOlCNkyFL/z0qoeghCHvg1HNV3A0h1Z5dUBRG4e8t1W400DYuOM0lHOmTYTP440HU0KqbhzR9jXvIYOg12EOQzj+YWq4cg3to2ILQgjDguv+FjsZ8USYOKMCQkrTZlSm2kWeNDLh7Cf65SglGRhCdWkm4yD6YWpXtyjYGRHC9uJgd1+t9Y3PtMMUtyeHjWS3Fg3+A3FAiYS7dkD4GScYJ5BmOFkRmX0FzMTOFDR0G0aiVgqq1yD2QZK60VFaaJP/duYmdXYMQ4AEOqPZYP1HBMbI15VxZOSzOYpaQpSyoufls5aCgYPyEZeWVWkiYzg0eiN67ONpMA+px4ze2h3/gMGAmUGFOwP86TuZ/MGaCAMuK4NLo8eOXKM44i+ZEoZykLZcs8NfX8OLV/GapzWCDlYKuZFn10AJNZkQAHpiKUOd1bo+/2IvQgGdTzo+ObeCWe4kywBK4/dHX4INXltpYDlFank4+KAjBVbWZMNyBaGjpaa6bFZGfa0J3LQmNrogojKGYnD6YAGk5G+Ro4VxBozqmjQkxwNVthmmMNNgi7Ur5tKya3jnZlcOF0OmdjgdzaQrBECahfgwrnhu4C97JuJLSNAjjTQ2V5kpJcOqL5GEpKGPWlOmBgCY1vp++MgitHghytU3vKmvHtWiDYKKCIEnkG4icQFVvPQmQNhy2zhN64IImwUn/z41rmMhm1rxPlpZa+a3IIZUC1A3nhXC4cj6zm+5kixBsPe0LptifMmgD30LlxrZnuE0ixSzeuBUKRu7Ky5YCSQjjPlgEWhbdSb4mAlQ1Te3lN85qAa0Ja2qZ2f7qBSVhBl3SoNNN3DCcgthvfzNfk7htERvpky5p5nzfmDAEIV2EQ1gEf6jr+63ILwBiKThujJxqg9C+vvazv74L6tbTQ0MIg/mLhGAPou5uqrSIhixG01Tq2HDv1TxvC/4DD+fKLyiIJg3tyBFX0i7tciVXQGo6Aifhgsi2s+PDRWpA8q1Xw8FE6Nsrm0BwwzljPEmM5SQIHH6NHrfIukYDOmDe/z/Q2/pdbq4kA4OQpIe1aYo18RMX4P1jKxwgjC1jbBh34JNYZWotERw3bws23crWz4JgCiEHHLPkZYaubzeW0ultLnodnJ9bHEt7cpTMAwd90BeePptYa4S68gTnh+5ZCDrg8hLZ7d7mPkQGBOCGCUb+gkiWWgtn70I/2UGvyDEwCFJ8buUqcZMgSoKo88TYxzwXgz5f9nvGkt8a77gob8umWvXG8Fr2SoKohywQIRYDUIUucofuZSSn9DUjJa/+RiZUSZIUOi/NNW/RQlH3EFKvCFM/dVQ3kcbCSWuO9ZfAcQxHAzTIdamFA241CHMZceWK7pNALcD2ZHVeCk8mjP91XvZUNomjzoJnt/HgOPSLPO+ntshACOLOJog4yIKXZbGrBveF8OWasM3ZSAMrRVAp5HR0B8tMdPfHUzFXu7d5L4jtsQhVDw8vd3DuQOnUwPEwhoM+qNpaL3Q2z1WDuDpgH6kaaXiDsKrp1mlZCgOivJGJV2dmN4kk0gLemuzgYOr89HiM/ALTZU0QD6b41rDRpu+KYHlAop5bAtXFPUk1oHngJDFOfz44Y1WBE2R5r1yBe5xokQMuWFi/XAoIjwlpt8jkLvRB2PUQNWI7VTWFNwnWyXp1hggBHpg673OTiAfw5uI88efpVPuLHIO2X82Cpl7lmu9HD3eV9w0DRdf/5Fu+A22+WIO1O4u+y60II1hrWUP8n0+UDvTLyoh8mBhzjJzlXJd+/C0IScrkqc9Jiff8zy8JdVa7MxDgcin97p4jAVJUgtiyU9kCEHV9i9TsvLZllEjj79plcMf9/OeH4wSILl7WeCnoZQvCLWYWMgQDpgvEiAwXOky4xWBBI/w28vvn8SPIkB4PMrz4zwhKIyJXsmzZMsuZf/tmhtQihqbLnCAN+evp82dPMoekEC1KFA/QpD35gLyn5R89nVKnUp2aQ4yYMDnvcb1nNQfYM1n+gc2hFUfZtGVxsG3LNqcYLlyasGQbrypel2iUApVEVNJPPEaRKqUDMksZeXkX/zNm+SZNGiUh7VFuSdneGzNdtrzht4agQYsKG4KZaNrMli5g1CDEWJDjRsYkF2755wVl46pyuACSuU/k2N+5QYLh65PMlzGLjBKF9KXPF+M9wYAEpIVe1OHaF4c5IybH1q54wWrJkjbMd7Vq3b7NWYZLlrsi3W5fPEn6GDR+iSpa9GdoUYdEp9QkH9WTRRyK1begS0p0kcYbk1VmmT1rQOTFRm+88RlGoo222mm0JaRGaa7dBltHuR00mm0MtiRGFvrMJNxH82QhB43aiSHdF4fs5U8f+xFFxh6H9CGdP2WA1MZ12bn4JEhXnaGVS115xR1MaXmk3nptSaUFfPKFRP8flFLVMwZfgjG3phSQ7MHXGHF8FEcW9ShY5pNmpLGGhPbkpERqZryhBEcactihaHmwVpKHCJF4kUEaocjRcAXV9o9heP4Dk285/iNHFvR4OtyPSuHxx090QHKUP39IQRhfaISEFXaaPtndd+Fx1RiMbaTVBllcroXDVFlw8dRKZNrqUh58KcKmUX8caVyBc2Yhz53LardFGpd+dFlOmW2mhD1KEJqhoSYmZMZDjVpk6WqRTjpvpV5gmumTu8nhm0hhxDhqbsXxdQisPX2hCKpqFpwUdSCd0Uat2monJbBVipdbecGCBaywZU0Vj7FKJuulxC01UepPihwyCCSuvir/mHNIygrShtiWPNwaaZjRp58teQHRGpeZey4/nW1o4kGqoeaua+wKJOmk/8ybImP99IOnWJ2K1EYWONV3D5pJ7SHFtD31QYZPLped1BhXekSPFoBEfDN3WIFn8a65+askWGSJ4WvHd+fUhFxi1EUy3StlMSBfYwNGhhSo8uitR5/ZnHheb6jRhWTfgstSKFx0YUZHQg9daLomquYh0gatPnVsHk3d2NVP6pOF4TOKdIYWXtcnMFCQK3LcIW8GNaRxDX8khxZyOIm5VWI8rKvbufXq8T9/3y2sTnHNdXh70IvEiHSO+wO55MmLtEZi2Yr/J2QRgvT5ShaO65Hppxda/zRoBpHYuomOpgY1YGh2ITEgXmrHIH3xSyQ28d125oE2oKCBKH2gg2DW5g9IHMI4ZHjeP8LQpPdJBVe9wVv1MDYW7GVle32jynu4IKYxIY6ExDGO+SAHCeko7zAJsqFUHiQ/z/VMJICCyBD/kT/9oUhD/gMDAA2ioc7wwwurgR3VDohAzGVNd8CRCZTEwDifDGIwSenDwnzyBcOFpA1nmAcIgfgRilFvQTjIwlNeiIMWMgZMYxlZ+OQIEkaM0Sdj2+Ee8KBBNfbQWj8UJEv0RDklTkgk/NDMFjo3v3INrZPzMlS8WmcEo6GIXaTb4kpglzh9cCF3EPyHjQABsO1wIf8pZFjVIBbpj+TwhQsrwQocIQkSE9ZxQTBKz93iIQa0LCYLXUDWfGooTI9kAWVIouAkrXW5aX6EW77cZBFDYj97sYSTnfTkpN7wkCmiZIpY5IdqChi1qaAINyUDBBf29cpPhWqW2yHfNQPKiJXALQzBFCYdUfik8gACe+h5IVXiITqRRTOQ3PSIPPIQtoDuMg8uKcO13CdMbu0MnOHs5uiSKKFznjOdVjzlOydlhAGqsiobSUlKlpUxL4bEXzLSFBcKyVE1flMkToHlNImp0CfhMVgfaUOuqkK4VoKPWBddSRwmQYdr0mEScnKJ5UQqSJLyTCRvEF0mKWROlhINNlb/3EJMp7aFh6CSKjjFaZlY6UqAwWifDNKCNYdKBjauxDr0mAckE9oSK5XpmNjLXlSn4j26ANKqV23JFibBBzSELT98mMRApbKGN2xzpDoTCf0+Yj8+lfMyfmKrueY1V3nGtZRggOs8G3NXBTIoDFyIil+10Dt/bgdUZwDDRgM6BjDEcUlamAdi5ajUxV4MSuVBC0QNJzidlKELMgTfZRtDF9bqZCxiBaIX0tAF1FbSI0c0QyjUWknYzotdtYXdAGkbO+2gxGq83c5O/Yo7v24Hbs/9FBgCmxQ0gGFfcBEDdIGoWJYwVlNNhWj2yFKsLvyxopYNb16aAFIzIei8JMzZ/3r7FJI3QCSbJjUiS+elmvtOzQs0RVF4WQksv94OjGWah3BBeFw+kGEMX0gOGfgAhphMRQttiDAJu3OGE1I3b3jiGjJBwsfypqHDNLQoiKU6Yp3QyU7TRPFJXQuSn3WBvOxNLUhiPKkb03hSJMXxZX0rKr/SIwuyxBOMHPwRfRBaOwWFsvjE4ORi2gqkYXjsHh+dE4mmgaJf/nCY8dKEMnM3pMJEsSbxRz8liM4MoebZSUNyTqmhiK51lnG3YBPeAM8SVKIqE9eoNOhCa4d5ckB04qRMZQpX11YX3q4ymWkyiDDZw5kW74G+6pKamRhzj+Hcmz/C4s3IN9Ur6eRHYP9TmldPLb+UuqqOG7gSrv30SYDIQsV2zevhiPCw0JODouNNbCsvi2tneGwI09OSM0CEshV9dm6aIA8E6WS0pSXhtU9NySKmpgsqNam3W2KucG/kreSel427cO6LtoEL8+CpSPpKXMbcg1MgIfS8h8MkYJdMhFNmtLYcDXCoYhgkZUjDdwGJ8IQ3ATHlTYwgHxOZbP9DCZiUOBEzThWOzPbjsmXNfrlJ65YIl8CMMXB05b0g79BcW4om7L5TqK0srBDDdktWFrqMaY8oa+iMKfrFQxLtat9M6RL/3GpdoubhcIRdVLQ6irpAwCwKcx5c2DFxB7zyvJQHhDD/65PDri3/mw97JRW+mb9i0vO3j4kLXa6q3YfThM/kpMx8l5jSL/651HAh76KGM2M4MmPEz2uAtgdiyU9OYB1PHi+BDsnlF3TUspfpHmfH+c3EArjtZs9XPTW9pUFS99Qvhi5eXglIH445JcRPJPWoTOi4LV8GbYTOvHfr5q7aVJSHhB68KT5VuKbvfyR/Qda5h+Zpis3pWtqJD9tpTEg8zHY1wYM026Vxn+qNWUtQGwmRH4SY3/n9Q+C1Fu4RHj+43/sVHmtwk+NBnkvsxq3VB6igHf/1X30wib3ZivPZhNo1RbEFm9FBFFuEQRm0QXucgXoZ3JdBoHaI2PetzxqI3804yAXq/1091MM/BArU3Z7U5cZGuFoIJl4akBMklZyMeJ0X4p9O9Bk0eQTM6cOTSA/z9ZZwEaDn3WDiXE/f4EA8hIEyPUUd4oAWAN0MaR+YEWGIcdpLtI/4MOHFPWE9bJuLRR2e8MO4ZaGspVcXqAQkzZ/XqVwElUcAuuCC2MQabscMikEN2uAo0k3GrEUYQJX0wARWxB0XzN0/bB8gdh+dSJviPBLm2MODuJlHIKL9/J5rVaF2eBwkntsWqEFJyZH9maBLdJ0YNuONIF/MLcihBeCCiJAWuKFRwSHm7E2w4EAYNIH0lEF5lEF3dVkYzF0OSNMsdt/C2WJI1OLrlUkc7CIGkv+ad03hxAnjdlRdMWaRGYygHMXFF66c5OlIFrghJy6Ir31iY4RiKf7D59mQHIJjE5wB77AdfEAG7rRBPHwYWPxhO2rawmUfSNCJEmqLPTrhtnkBPL7YstjXP2aRESgeF67SGVoicRGfdvjL/i3kcGAHdtSbNfZkG0IfCZ0ieEBVRhrLg4ABYnjHR85RSI7kduDdBHoa3dTjnmBgxQHj4C3L7s3kmsUfTkIXduBTGxDaytnfn+UGqJRhC07j1wmlXSqaXX7N2UWkRPIbEL1bHoGj9JSHXKSBQ8AHYohBE3ykWljlVWYBL4JEWCWO6WVTPTjdZkhdWGpLGqhBMcpO1h3/4yLiiT7A0T3IAWqCifPMAxq6BD6l4Nfh0SbSZVXYpW0KpRacgW0aZTYiJUXiTkgqU0ZyASM4BBgAXVQuJgI65lVuykuQ1jwyiCSZ3wZyID+6SBpIDWgiHkiM3D8E5E3aSmnSA2qGQSrCB2pGRWuyRBiqkOXRZk5E2G3apZXgzm4+5F66BHb4pSApZSqKAUgRJxhMwiTkgUMAXRmIAWNSH2Owh4P2YZit3hF+hHnRzXTGI+3p42aWzLh158dpURaxGSUuCxzJASC0AVTtoZOFwWqu5+50zTMmYDS+HHy6BHTB0W1aSVe8Wxt4hVA2BjZqY/3tp/zlkVlAVYAWJ4Ea/yhkQAaHxQOD4oWDTikdxoOVPpsRssTe3UxlrgRaaWYHLos6wRWI3hdLeKeNJSOe7ENpmihTgkka2EQbsCg9uGhNDBdj5Jo02qlO3CiOCmVXoKagomauyYGO8qVRKdoZROR9cpNjBSeAOqVDMGmXGcs/QMaxQKhUUCmVWqmnZlqWYlWdRGc/dsv6/EObCV6YLosVYciZvpNOeKdo2gqbkmeKlgfQCdffoCZrsgRMeF1LvBsLAqWNoiWgcsWgCiogLCuMAMKgTmROBGlO5OVlMRQqDqYzMYK2MgKmlsEZiKOFYKoWaGpVcapbeCq6gtimMZxZaeWyeBOG/gMX6OP5tf9X4szVGjDegsjaR1yIprRpKmbkgzDCsTwMi/aqSPBkXsTlnvJpsf4pPSCrsi4rxS6rcFXss/JnSMzgouontV7WsXlEwAaoXJSsXODOlf5DPIRrrpLrR5hrp6Lrp15WExyISWpgEpJqbpAVzazXFkChltYrCclkI2adiJLmPMhBKhImGGzCQ+BRVjiPw7pljMIS282mw7bEjR7rxC6reX6teeKRVlRsDqAmN4rsUXrs3FzWo96NYIoF240F24FJpmLayj5Iy1YWzJ6rzM7sRSkcF9ysw+ksY8CrZK7XGwAtBj7hddqK4mXdk6Dp6CCt0ipa3G0C5jIC1NKpw75mjOr/Q+XtaVVsrVB2Ldh+LYqWXDaCLcWWraGqHccy6sfOWkJiD3go01iQoxaYI0ay3b+xxMqaXt7S3d5Oad+m698uXGRuCtLZCorNj+jMq+I6ISICEU3ZCr96hGaE54IALJPEXdOCAXzYxME6bHtWxRnwhuhSBelix8Sebuqmblw8zJyy7rKabfVYx6KpbXMVqVNtiVl4hPRgJEYqJoxkgRCuRDzAaa42QfEa7/H67TQpr/mVmPOqV8+22RMG7QbLUXbqa+RmXU0KBJTsQ9KeKBACHcHikcH+msOKBbC20eOtL/tC7PuaZ/yiKFYomi/Fr/066+tKpKJpgez+6LP5m+1W/6WCNgETM3Eegkx8SEUQrIHwHosDP7BdRLAEQ9LCHaHraQqKSdtXdjD1kjEQdeiySK6aLkitykHJVaqxsGIb8CpLOCNV7MYZuOgZjq4No6bXpqL87vAOG4sg+7B53q+hYuP+icTsZprOvVBZuFE61qF5Lih4sJ2QskQTMDAXrMEV760Wb7EgycMaHGH4EW5VhLF7oVUcmLGBVC8keZzEyKr6uUibqihGCpecOivCAscZxPDb4JGdEqvW0qcfAwIO67AgE3D6woR37HDqfi3FikXz8G//htcBQlRZeEfggMUBu6wfssUmV7EWfHLMhjI4i488nFW7pqR2XNtXbdsawP8ySCCiKwNR1c2yd24vlOhDGHCYVqiiR1AZwCisTtxOFmBtXvzpaZooMgPyMhOwLsMHM0MziqIu24liKTbyEXOKNpvFlHRzWLAdLF5aWwQBJ5fzOYcyN8nDeyChO+cGPHtEhtLzK9u0IBGtPtMkRIzodgzBPthfPpno1+7qYbXbxt6fVIBuPtEw+9rlMSfzDku0LgvX+AoXAVv092bj66pdo9qdWDzaR2ePSG8zHpX0y3IqSlexJ7MHOqesMMlDHHABPGYBdD5JKKiXnOBjbeD0P9jzVT0I5GKv0U7uggC1sfwaeQpqKtZpQfbLbxVfXChkjdoooPqxVGNFLld1eTj/Ex5VdQFrtu8isl9y9NBlszb/QxmIdVnnAEhpgUg+8DhjaltX6VtPcD3QdUhYsIvkdRrIyS/+tSvb8/RO0+OCsKbQ8mjmxRCkrywRmp/SwxzPyCudr0v41rBWttbiaEM/dCBvdmfHrenFLWj3LnxkRRg0VFe/jWkjnDeO3r+1Nt2VB2xLExaLMyd78lunM+ZgS+CeJG8viAVKRoYKd3EDdnhtDnIn9z6T8Hbg003MyBnqg9JS96iUB7Duhha4KJtqN0sYa3dnNu/octyKd3aWeFXLhZPV77LmgHi099BJH8DhQA+2tuDoIWI4KPHeN36z9WJqcUt3ss+563bEAWSY/0uL9eJw+zU3IeOCM3iILoRPfx18WLiFz8OTUTdw4GlL2F+MgMRMePiHly5RAzJTjniJG0thrhdizq2a28TfsHjZ+qgRzyJqb5f02PiYlMcZ8HjxzjbQ6XfftjRk0gyRV0Vx/wNXhkJwG3g9IziI3daTQ/ma1TJj3A4XFKSVz8R005+8/rI/YToIhTljgDhmQ/RgCpd4mywGn6xGju8zX3R6qzdXXLPd+YuRhkSCaoxIhwQUs5Gfm6uVipiPI29cH6Bq5SyiP2EcNHsrewRXnpV3fZVNQzqIteqkF21omgH3VoVqbrqF78tjv9zjEZdqhoSn1/B+OrSZp3p4m2wXcP/rQLH6VYc2i9M6c8rhdrWByNg49f16OAd7W8gssdO2ck5wKR/GXU9FPTT7OTn7LgLNTSuutYMYvma7tofEQnS7VJRcGwA1uEu4R7zSbrzlL80wmKf7VJi6d6simr+6XGxrGmwr3iKmLsf6nP4DrSMqwt25w7BR4FBlz0GxEAo83/YtsUNEJyewDZFyUTknqTa8EhjKZ4wWiwFdPk68kjP5Zek09KDpQiyGho98yM9IKr6Sns2Sbzlgp1QtSBjrqSvzy5vstsq7tmJqm2O1d8j6zlslYP4v2lJJz62EloBE0UXxjhs9Oie9d60BC6rzS/digOeE1G/IGiTEZzipqWr/vYEnepgdNwmB/XKvBEKvZ9nPxDyIgaBpWaYDzG58+UdoeWOYepnr8MurOXFuq0Nwq5O6+mfb+yEDMc9nWtv+PABHqUgU/kd8c+IL/H7HA+MvPQnJtW4r+qFraRwowWcgBBeYQWEeZ1dyfsU/m4LbUPZGIbdTxT6IheadPqcv8j+AySs5XkKnPDAX67rX/pu+e+4DBCMwAwkyMsgFYZYsWrScOSNGTJt/YQABkiPn3r1/Gzl29PgRZEiRI0mG1JLlXw6VHMNoCbNxZUmYKnN4PKMw3j8cO3n29PmTZzyhQ4kS5dikDJcuXbisaSITatSN8uJwibOxTBZ58mTGifNm/80WM0uXphmYZo2Sq//qta3H1q1UuXPpqvnHj27ekfz4ejRjxgvUMFnkeNx3GHFixHLOzPu48LBHfVm4FO6IWC/HefPo0bt3EVCYMG0gnmGokDIXgwLB5MkzcDVCLgoZNoTYRnTFixkz9/bdMcfClDU5ijkzkzhUmsk33kTZkyhQ6TiKVh/6EalSpmu4/o66lcubjWu4dyf5NaxSNawHqtmy5o0SuG3nv/V+X24aM3jx6+XLfyMvzNhCJnq0kOiyyBRLrDkEO+LijMg60oKLlxLc57fNOvtMjtBGK+00yrpIg0SzWnsNjNgSWoih4yLKzSKMNOqPRpnEyEIMmjgC5P/AmeRa7qOstNgpniaMPFKo6aCzrjqRsluqKfNq9EiepjbKoryS6kFviy7UGMg1MNToYost4osjLrfsm5LNjtZIYwsA24Tqv44EDEykffSBCEOOhpBwowX7bEmfjvTpoo0+OWqDCzEMw8w3DT0DTTTSxDgJoRJLZC3MFA9ascWHXqQoRt7mPPWfk4DcSIwykJuLJhw+OkmLIJowzqGHjIxHSSKZNKqkJ7eTckp53rvyH2JD2nINEb+cBNoUuxgwLTTVXBNVNr1Iwws5sxXpPznLxBMkfUgr1M8/R8JMH5c6kqMLQBT9Rw4utHgU0N40/OezfwBpA1MuSGRKNtVWIwj/tk+5+Ec4h26bSDcZv2UzuHtj2qjH4fJSaafHZnOojJBD1pVXJX8FFiphmzquWIXYyiIOZUHyqlmlGMkD2klem/Y9ta6duM0t0ugL6L2IDrBMkeRogx5Fh3h6XpAkBLijMLpomiN6ZkM3UEgz/IceQC5NDdQQyV6NNYFIZGRFjB2OaCJ/6S16yhvFuOdiqn3cmKeOiqRsoWax1KIMkk0+WSi6VF6DZfy4IjCOLOqR+aMtwVLPNZ1fU4Nan+Oiu0Yz1Dga9I/4MsLOLcjtiI4w5NBHnz6fHqIkzAy07B8xuoh9o8m4cOxC7+QI46aCF4I7945QQmij1f5h5PkS/5mN/+FU/2FZIgtLr/EkQPBOrgxHNc6sJ46KPEOp2VZco3AxmigZKMQT12txbHuTZ42Fs9pKJsvD6oIgnQIDnOLzue31Z0SkOyBH+GEE1HHEC6r7yB7ksBnY7WN2MoFUQ3pHIQlRCHddi5pc7kE8stkrIoDIDPQ2koZ/dAElC5xYcFCCt0W5a3zk69s/bpWVEZElIew7w/umIz+UKc6H27EfXeTxhoU1i39dAcsWvqQGK57FRF1QAn1kiJ8xeauLDXwgR5LWkT3sgR6bmUfsnhYVCQGCMJtRyBr1cYYuaE+EcymhaQqmBTGEgR4emZEKN+Ig67lsekp5XiKV4kKMXS95cf8jZBd/04YsnCEjyXHIq3wDnSacISsCKwhTslA4IkrHiE2iXxKbssTvJCVyWerKV7YwwLGMaCCZ+gdaKOnF/fSyIw4c4z8i6JE9gK0zFmwjVBCjj3lckh710kJn2tCFxolwhCAZXvFk40dASuYfjvEMvVT4EkuZxmwFUyf10mCve4mqDbiRW01mBMy5nCQMmdxISyx0sU52zDiYEkiYGEHK8DWhiL/ym3Uyg5QsQGkNa5EKVcKDJcqBhCtvINFGtrCws8BHaGnoQijs2Rs4gZGSwrTTMQUph2Tqg3ZS0ZMz0ScaFy4NhmvkCIPKtccTejOQIoGdpMgZt3jiqjaoOaH/bFCzS3u9LZ4vAUQOZNSZkkaFhvyqZ6s46R0itUqgONPZANuZEIYUTlTvUyhImNTQUG5Hol2BYVPQBBV51GNE5CFPmbrA0boKrJ1xvSpUttWtwf5DpSKhYIx0KhfY0SsMT03DgRBSQXTxtHc+7eMfgyqToXJmUh2q1DnReRKlnhY1J2knPHFDKhndw6qHJYklMWkqHiHIn16NR0AfOpBosW02LDIbas+KVvc9JSRtXaWI6CqSu3rlDQT7xxu84koqCe0fSgjFG7gLFrOkYYtvWcOIeClbmQjNsINNbEj28C9H1SaFryuJMy9iydlMVmBtwIhOm0kPE272m3T5bGei/yna0RwVqUlFLW1qQyEIjYoiVM0IbDtrXpBkJZ+mulRX8XO+pKwNNgbV1ZKMhKuQKVipxTWukYLAUL3II5QIiSiV/DfepaxhuqHwykia2M62eEUJQY5DSLnwuZB2QTwWFonQFGjP9YKEQ8NrAx+N50f9cu0fzozmaLTQTi8fyHVp3OZPOfsb2Gl5Q5Q6MEQS3ODUNrghVB6VbiZMYCWDJKsTxpj4cnuf8z2UKV1gRBrYhiVTwu8nRelIiUFWBoYIjjy1cdXIdIVcJsa4uVtBD45/WCbyUNe6G1nK5O56rbdslIvZJe8WBHvnf4iuyU52oEgIbMFAzWNpphERiWZjZf+KjMY0mnLnaRaGEKDS6MygTXNFRsvmXMEZ2rkqDUJwUxEJZ8TOrq5aKfX8D73lkEbIDW6mYIiSgx5ufim7Va5EBm0VU1oeRyoJptkXh72KUqRceE+1RCIwJWwF4AHH38DY4pHxkgjH2hZ1F1Aq62F6JJlrzKZmco0p8pYVsGQtUa8BqRhkJ5vAHGL2gS2Fq2fXJleiighpqD3V12Zb4c3JQhu67ce91SgelPlHyKqnFBy76h+ITjSNgsBDeTS63e8WWRnQBPCOwFhEBFMKQcZELVCD5E3lEXjA8ZpvVx5ZPtoWacMdDpJ+qDHLE6c18ShE3k1sYoAfC3PsBKV2qZz/GeQhB42H4lny0qRc2mzu+2iYtxsKxzbmDMtCDvQMsH4yp8O0WbfI8sc495UMdEHQ/OY1b6StnMErSxf90kNPmRKBqT2krPdH4tDOrW+9HhpdCoFAooRVi/2XSn7yRs6e5X9g0LHRJM1JGPF2MMDQmy6le93tHhK8P3/ABL5IhzxEcjZfH/srj6poBrOwOsNc4ZHVQrcLx+H7NEEhZ6AOozeJo1PKanuc53xIjvR5r8QhZG9QSCNbA62ddU6w8KoLSO31AK4tBEYpkgzrBibhzOsN3IPsSmrWOqIf+uHMMCimokIftmxsVCNFPgY3LIv5vEaooO/5sizZlK3AqI/7//rOBbHPBbmPVEKDMpiGwBBP4dCH5niDn25OJrIgD/gADcbgC75gDNCAD/IghnIn/YKiSI6EQt4P/hZI/jbvO+qhDMJCdPpvrBgBAD1CYMSjALmuHuRDukRiyAYm7A6rsCJQ1jyiH9IOAzMQKugL2AKm1+JL4kYwX3rHBPHuI/BOjW5w+kauBV0QEVuL+6ztIoKDC2wQ/LRNIRiPN0zD/JIrD9DAHzaREztxE9EgD7ICR+JHKOzGJ4CpCjWvJJ6rZgQNDH6LKXomrt6E9pJlDEutHszgHwikFkMiukiE1Q6LydzQyeLwUWaHDj2LM6RM11jkRZSPDxfkDx+LJARRUv/SjPqqTwa3UQYrghFfi0IgMfEmwl707LZ8MCRwIA/GwBPb0RO/YBKeolcWold2qHRSsehC4rmmyAzYQ1pmI6LWpPUWhiNuEReVQKQe6g1CbTwYcLBgjRjNqx+QcZnkAteWhjSgynXuYQ+jsZkA8e6sUdkyohC9kRu30Rtd7uU6IxxxUNvEoFH0bMOGA/KChAzcESc9kQzWoFeyoh59Za1QJRUt7enwrxUZQQ1EKhbho65ELQ3iyiDjQmg6yioYMrtCygzWsJfGIta0bSIpEhn70PmiKTQQ0XVE0CMxS8CebxBDLsqyMSXjUiUN7/BYslEqTBIXb8JywObADSQY4Qv/clIwOfELGEFJ0E8MyocjfCKVTqY/OO9IiHIf02NhymrfmI6M0kABbfEW46L1wItMDMgXV80egGkpItLCwDIs6y5BhqokS6Uj01IsHYstr3FD3vI1p4qqpm/C6vIG0eeaXA0QypE3LoU4+qwjGGEwl5MTwUBJdk4xpaIxTyYf6cJWItNIOuIrUKKjxmO65KM7NKoXA24qYE8q4WS81kBNSGJbRGozF8guUNO8wHIjoEY2h6ozpu+lZFMxsGwuTFCNVNAzJmz6CpQ3e9M3b5Ae0OdeFA4m7yaT+hI5OUI5B3MPFOEQ8CAwBdMwpcMnO6Y/UgkfqzBYsFPT9E+vAJK6/5ruH1qvr54uipZlPUmkKqpSNGsPsLJShvgBAsfRI+gzT/jws9TogvgzMagxL/6wLRUUQZs0QRX0BnPHXhSOQijxHhwPHTuiDDYUJ8lgEaQATKVgEOBAML+AJ4EC/RBqCrNlKEbUTSFz0SLzrrgL/5ICZqoL4EYEKmNUJNZzKuOATOrDKn8RTkpze9ZADdLLR+uTIuXCSB8VSdcSQG0TSrENSi8VSotjSu8sB6hnwjiIJkXiJnGyD/4gTE9VChSBHbt0Oi5pTbvoTTcPO2cV/34sciSHAI2lvMrzojriZ/Q0PQWVJOzhyN4TaLwgUeVTthrVUR+VPyP1P6fRmSgVU/+rFVM7glHGT8kedMJ60C87Ig/c8Qvw4BBQ1VwPoQ9yMg88tEFdTVZntf6YLuD0T+A0iiB5tVd9VU3eZGE6Kux+ZiSUwAx4TSsnZhgXNV0qUqac9T6hlTaVNECpFVMFNEo/IrKyoJ4Oi0K8JyNMg54mNAxW1RPHQBHM1WSl4A/2wB3HQE19ogm0gCgX9UiwUOAih+tEikr4lCR+VTNrlCNMjSQIdXW+ZWC7UuEyiC4YtmH982EnNWIDFEoj1lpB4mIztqQ6tYbu4Rz5pSY5IlzdURPJABJONkwhIV1xMg904hRBFWF5yEi8QuDqQT0BTmByNl8rZ1/b6R+C9WcBNiT/iHVgjHVOTrNtGVUvlDYtz6w3pvFpG9dxKVZBQWI4F++wGKW27sE4taprN0IT3TFVA7MPytVc/4BM/eFs2xENPKJjQKlw3ZYqXi+itiLrzMPp5MLURkQ8/NUj/DYkBJZgv6WvlLV1pQZxo1FxF9dpH1d5M3UjInEj4Ihyr4pCMowvxcdUsC4nwRRd/YFkT1URbvIL+mAQpCAnl1BteagMcqJwm6AtXu8NyoAqXI92dRYqrkX2WpR5dpd3se6HhpZNTmp4M6N4jddhJVUklfdxI7cjnDclFGKSgMllMiJzuw0kvtZzwzRl/YEM/kARVHYMyDVM1bUj+maIArgAQ0Ye/0Ztfu9WRtVEYHAsuhpQX9dzJIp1TsRTeAP4Qga47o7XN6APgRGYgZEJLzfiHigDj7qIUcogQlmGgj+CD7IXVTV0Ey9UdEMYJ/lAdWUFIgK4CV7vKwQGfguSfqXCfnF2F7mgYPv2Rj8iFABrC9b4PtpQh/OCh0fQh3/4gIP4aV0S4vyYX5AYmKY3I7D0iT+icy8YVQdBZcfWXHMydUdYVuLhDNR3Ufnni2HvhaOodjPjWl54I/IXJIB2JA6uC2QYP4TmDXJ4e7zAlf3XN+6Y+fLYzIaUj5+2QAD5iB+xlyL4HhjCiK8XJES2HU/2Jh0ZVXNyDLaYi2M28TD59cpAfv/JmIV3Vk0Q8kWdyHzxloaXLHBpRGhCgZWLxpXLRHVguTdkuYcLGHnD6ZZxOZeLmF/CUYm5gIlLKGOEGSS4tJhN9phNNie/4CM6JjsvmZO3Tk9htJq1RE2m8krCYyRIWSScCBjlWC/GQgnGGVXK2ZxdmU3UWVBomUbeOUCjomI9gkLE54CSYgc9Vqus9iP42RON2R+Q+VQDeqAn2ZkVLooyuSOEZsZ49T7S5DPXAiFaTX+7OSRMGZUzYyksupUjyJzPmb3uA6SlkZ1r5Jbl4qQnBEIWKIK39pA/gphn2p9rGqBxcpmZmYcsOeZq94vdxIW4qJO941ocOrv0rX+Uuvb/sFJw56KvoBpojCCC/mJAPBokIogOWMo7rro/s7pN4DkvupojKCQ4gUb8OlYL6EmfQSKR+9lc//mRcTKStzjo3JqnzSOuN2Igt8I+6vo3iDqh9xaiGbot7MFQJ3pg4aQ3+AFOBPtUCLtM/mJcHs4jxGIL6IBGHPsj25aym6McQUcH8aYvxxqKpTi0/cFUR9sdtTinTxu1Xa2niXJESE2oaSRN8DqRctuacRu32fOHmjoqxBO4p6ScDZuqSUIsDrtGmPswINvVnltKtbVoKIPxJrizKxi7URV8SzaZ0RYk+ibdtC1GC3oXNdMWOXNK0qTrwk4J9Doq3Pu9QaILJgEO/9BgQ78ADeBgEl6UsNCivvGjsIlbgs5rKQDjo/0bwAOcgWGSwL9F/ObZiRP8I9ZgwU91VP2BDrYbTMs3HSc5vJVMtQtaPMtTwzecPuRWb8fDSqRCxHN7DSaBDpaTDiYBnY97dGK8N2acuL3AuEXCC7wkUOdExwNYwBkFYycGfe7Gkl7CukFCDMZckRncE+FgfMkXbEUCRCdcyqd8I+oBjTmzjIeai7pOAXXXy0X8HyahrAdzDCbBDbskyOybzfM7KgRkTHqxTfy7jgW8ar/FwH+5Qf/cJrjAEHCSptsRDyQBwp8cynn6KApaYCSKPOfkc/iVIz5c1aECt83gs5mTE//RQBdFAqPV/NT3u83pAtU5J5h2Dz+Yu46JWJ4vdnP7YzjvxZyCWSYoBEc63R8OndBXdmV3ejF/ncKD/Up29cqNvdJ3SQErjy7AQKahnTDBACT4Ylr4wdpHgs35Oy+MQHQ4B0+EieJXHaTDvXkZeHLL/T64FZhfuiTYXVYs2BMD4YrBNMmZM21HomOKJMotTN6k+V7P+1Q+537JSI3lguQJ3h1X/i74YZU1aro0WgvH4i8QWy+oaEy6RYwqHlXUGeMXGJAn94FrxMDhiCNo3V8oo13/IeU7cVwlIUy/XjBLW9F1+uXNKztT2MXxNVu6eVeVXSrAgOeX0+CB/g1eWT//vAA+5KKwb7zGe4OK0gAC/8PbeS/HBzjq/1ieHTGJ8QNrIYmzYXrbNpUjtlSZHZzscdJMZYKg6V225G3YFXrSa+RzQiHSp6vLS8IMBr7u39EMwOK+9eOc5dsj/p5nznwu4lxM4iRcQsKBKpDOi3fxP4KBHb9uGiU4rJfIvY0yLvt5BnPJN98dWagkCFoM0n6wsjPrFHoqvoWGQRnn61sJnn0TFUER+sD1lxMNOHoswIDGkd5NxIIsBuSv6QIvvMQujKBOAOKfwIEDjRjsRzChwoUMF+57CDGixIn7Glq8iDGjxo0L6XmktzALlzYcN2rhAkhMlhz/7rlsKIYLFzEL/3PkYOQvp86dPHvyBLMRh9B4Z5qUPIoUY5MmcdJwSSgvatKpAutZFagkTZc4A+Nw2cLV4iSf/sYckiLpT58xZNsa2mLGTBc1YLp0MbNli5c3A71ssXtXL1WF/PgZ+ZcmjZl//DAafDy4JMXJECNbvoz0I0iFIkli/peDS5Z/Ws7ca/lyYcyRNW3e/NI2ts4vjEoK/XeG5ufdAo0OXCrPrjyCUYfz1mi1nsAtaRK+4bLG4hu2PvvAkYId+x88aGTPBqMmPBjwagLnhQtYL1/MhQv/o9vFS8bHBo9rpFzZvn77mkPO/BzTGW1kEYZAqSlUhmgFKuQaS/+UQYZ3ZJERnf9tOPzTRBnx7GeZb739w0UaYQlUHIcXJSeQPVrZQ5BI6y00Fll4kKFIdjYeoggc3vUx3nh5kBeeGlrh9aJl7bX3HnhbzEefiU4+CSVD/Sl0km6WnRSGFlqc5tJpCeVwEoGt2UQQDnlQJ2FZeUw1VBkeRsmRh0utkUaFJEoFp0Io/sPcFsoJ5NUWLC5ER1tkDDIGJDYuKgkesfXjYx6S9lieYJcdeWSSaiyJUWGQ5QlqqMdNmdBJZ1ym4D9tcOklQTmINNqYDibURB7dyYZGHm8edVsZZYia0VK/NcWFcXcaK+qecXSRhhIEPWcnQV3IhiMdkiya3SF7/KFIWz/mMUn/uD9W6sVeg2GKpBddgGfGYRcd6S6w8s47FakEnaRFZG1wUYaWrLYq0KuizeqqaxdlkQcfaIzxxRdjoMFHHrEOdtsZWmxI70K7MvvnsRnv6UUafhK0BhdFChRjWzX20Qe22JGBB3aLkMUHGOCKC14Xepl7FLruCWTEumqYcfJC6GaMdNIZ2TvQGVzkS9VJA4rBakJhiKQFwQM1SK9QODSRxa5ICzsQc0U2gSdDHTu55z/MKtGxPXkNOpCOsbWs7SLY4tGyFH/c2hMZNuMcHl7lcuTzzwOZAZ98nWaqdOSSK/QRwAPFBHVSop2aQ5cAhyHTqQwanLHXpP0a+VIelpHG/8QYon0inHvS+c/aSkCXEOBkfXHtH2bZqAgakhyyVh9kQerjeOUZXrTRPi+0BV1qOP4u5JNff71HBxIUk+sc7atFFlSj1upqVhZMZtK9roFx0mTXrhWywF004pNtM/vG2iUXiWZbeksxo+z4bhCKGEMfDlEon3xBeeQxD/WcdzSGRE9JGcEU9i6IPXp0aSH78p5G8LUSz11OJp75EunUJxSwiU1eqhtIiNbWQvqtjW1X+QeduFDDf8RhC1xwlkBgI5u+SQFmUtCWIsiAhj9IoVttKU+Q7oIXGxImcRbxgvQ4VT3rYZAhYgCDIcjAMIeRoWbn2yJvNqiQDmoNIzLJQv8ZPOelBHFhQSZMn9K8Fo/SKO19WUjD2d5nkTjUj4Y1DFH+OnY7LAIxNmPI1hj+QIaGxayIi/TJP+KCySXJpzECoeJF1DWexTxOi2YkCD3AoDuyoAEMmynlZ9BotYFtBHRZIFDVSJOq0dkxchVDXcbQ5pumYPF1gGxIHHwJpT29wSk5tKHJBNK/tihRZjmBwyCyY7y2fOE85ymXFxKnuIuYYTxdiJdFLOjKhOgDDNGUzRjAMI90YgaWBKElID4omi15TmArWcg9Tig5r2VohaHCU3C6QKtiGrN5HErOn0K0hhzusIf/SCVZAmGjL/wPO5CQDR28CdI3PG8j46zLAxv/gk55DqQNEUoTT8hQQpVShZ4DAYRM7okRWK2qS/xcI0/XeMc2lfEyQSjqb5QiD6M0IUT1i2FG6pG/PClzRTlM5D/sJps92KiRNmppW+DAjzesYaxvECkpMTLB6VXwrPLMQiVdOpunyHQwNBUIIERCR4aATjSeu9rT/FnXyVVMdEQtalFVh9jEfugf8qiHUegULcRyZA2DJOSfmOOFZpZsDSmTjaKKSAfgeWcSR1KCaSOIEStScJRImqtAcHK3bMqmNq6dSmAFlleFOG0mXdorMgcCRzMKlLCDMWxij4tc1cVhOMQiiGQn+1v71VAJdrFHM3k4LQlNEhJkyI4k9uCd/y6YdrynTWlDQAkGUWaxtbXlgju3I9vYyLW2SLltZ1qThS5koUv7+o9CgivcoYiBoCVJbnEOjLaoIPaYaBOOcxV6EXmINVR76lPblJCXBHpUO0J0lEfJS17zMmRd6dWIiOfahrf2RBGQwMMgJPSFodJXI4H9x30DlgNAAGJfXTDNPVYTU+DWGHu3gTBHDnvcAytZyWgrQ1GYGoTfGNki8iiDB6X7J3tUt5nP6WxsFKUIjEphECruySRAPN4TE6Sk5Vwre+mrD6+SZQySaLEU4muoeM74KDUWiRhyHIYwtKENWnDKP+4pk9waaMhEHgqBMYJk1R34DFY5gyAF6dDi+P9KHpB98JQbIo84ZGGGyayhha/bhXb6JGZ4mCSeFegFNJc3nAlJ60kZombXgsE7NbJzRyUElD3zeXv3epqgxYDsEGVhQIkGLLFLicdHWyQIiS3OGSx9aUH6qgzZtkoc1uArQ2OoN58GtY0ri+UU2QVu1/XyhABYoz9I6MyyVgJb0zpMlLK1tvRQ9U60KgU731lCY7CcsDMiwi/BSgxn6FdioDZHnzL6gqZLCrURK49rX5rb2t62r7IdB7EuKw31SKpikRKVLDCUkAIJmZ+4zAWL+oR4epM5T9DAj3rbm9b/UO2m3MzzPe9aNjUK+HbTFOyDcyThNb1aF54mksSEiDX/WmO6TG+DlIsvRQwZ1/YxPQ52jx9T5YZkrILLTWVOR0t2NdRys9pmQ0aUmSc54pZ3vmAGne/cOSRW73o5qXSB2FwnADd6drAaGzQEviRMz8Gx+/j0xCTmQWJoQxgcBGDXVvzIGNd42MtQ1tCXFfTbXkMtRWYVqSSVKlExPbBmx0y4byEP3oFDEv29EzDYQ++AFwiJEQr03gdeDLzOjsD9liYZL74hCXd8GywWojSMRytZ0ELlL0++Z6t08xrROto0/vVtl3Ws5Ce/6EWjFUyXXMGsr/KVS11D/MH9DbO/+6t7kgd77F7na1berSEYdEo3dG0RWtoBRkU3RMC2fEu3/0GAEAZiYGV9ZDM/ol+lIQaXZ3X0hXUb0XmW5nHjV34hWH5R50ccFwfrhywod26vV0PL9BRwtwZbAAZzlyYL9A/650PkVWvS839T9GYL+A+GQHRFxDLbkSPXJG/eYQhAuBGe44AQKBKMICk/wgi1lBsYqH2adyEcKGnXxm2+AoLkV0tjOIbkxyyts21ckXqqlxQph27w9ydmUCe1Uw90wydwMXi4shj6t3vndUXBx4QJIWc9EVpHpER2NghwEDOD6BNkEIg05hJPaGVcwAgTCAbUd4WdY3AaiAPtoxTA4YXiN4JkSIpjGCJ1UVYPwnFrmDYlkXIrl27/8AZPd4J1SP8QGLYGSjAJNKhApJUi+scQa0AXJQZ0j5gQuOcPMzJJhocdR+RhjGSMNOZ8FhOFYMAIktc6Z4CBy9eJ3bd1oVh6pkeG5yETMsFN0lcnZPUG3KZDrJiCGtF6aydVe8IFXRAddWiHMcgXnKVhbdEPhqBefGiHAjGLoWRi+8aEvGhNNnJ8RHh30agRzgeFIvF0TyF1NhZkB9eNkNaF4VcGYlhLPFSOI1mOJLYFWWB+63hpKPiOGREVEyYvylRdNwiMZbMFPuQ2k2B7QPQFaAAHk1Ae4vWLNTkQ/MBmsFiUCBmIvIgH12J8y4gWz6hNEKkRDvh8ETiGuCQQtaQFGckhXrP/hfaxkRdxcV3ncSApkiUJGBXJBeR0kihJVh+HaQd2FFIhj/Noavb4i7e4BXepEEogF3bCh7Xmf4BIlceYVRt1fH8AXt4xBoeZEcfWcAKhBb6CbCfBBWcwhl7JG3gUD/GwgaHShWc5ViE5kmuJmmmQB06RF7VkfibIkihXD5Q1L3tCXV3AIoM5EPqIVk83EAJZNn/IWsIHmf/AiD6xkHZGPC7liMXJfM7XBsh2bchmeYImEgKymfvRifGAWPEQBp4IJxfHcOEnVuKYlmvJCOmZnnYhKRX5likJmyVSl5z2hlHiUMuhM0NJEHmBk0ZjF5wEnD03jPmGa0pJlULYFn2Q/0BfgActtgjUATNK6JwMwVNWOWgXGgaA0DlgIho7Fj7iA1QUw50Md2250QRBAJ5QojoMR5qmKROAoZ4xWol5wAh2YY6uGZcriYLz+Qb1aZ/TtW57ORAYximmFQpHGgqmVY9YNJgFmV7ECYATuhAD6BN70ChAxDA58QWKIAnImBNJJ6VC5hI24YCBlqE24Tnmoyof+meY8Zkk6nHT2QQpaiJaJwbkWZoi8aJdIKMxOoGAYQY3Cpejt5LyyRFR4Ssfk5ecopsE2ZehEIZlpS55p5+/h5SdZKCQSXyxUSPLqRNwcBZS2RbK55xwNKauYaqncVdPwxJZUkttKqIs+qFc6f9kA0an+6F12OYreSqSdiGjPRIp1ggYgvqahdqK8DgclxqLWiaUNGmHPDRWIFUuzJKLKQKYyqOsuRamFcVIZ+E3aLCl2NGl3qF420oQqYqusOQ0YvIPrgqibBIGTdBw4TOStVSrt6of4tlw4VhLe8qn6QmsPSIp6uk27gmXa6CS6nes8CiLpEZhNbQG+amf/6AEbxAX3JQXzEI0OSc3hTmc5toQVLpqT5kdokoWYGqu6Zqu9XSdDuKuxMURnchw9PqvT4eSTjanUbKi+wp64qinvgqwATuF46GeCGWOJxmXq7ijHOFtPeqweKkczLoeg1mxMWgXcgEYiaEeEwQGBLr/ELMGshbRb7JxTcx4CLyYEwUXtoumsqb6JWGCU4cWgWcQlhoRD1dJkZUorKKBs/h6HDsrii4KtHo7gZIyCT9ijevpnkiLsAnLiky7cbVIL7Pjm0NZsX7BLHMhHnWRF8NIqRcRYmt7ESLbE30jcCbrEyibsm3rtgqhpgOBAxFYBorWENzZcNUYLtMnecNKkuVYiqRYfpX5eb5Sog3nkR/Jq/X4r4Q7hYaLuInLu4xLqHO5sA1RD9nGbc2ULPTYBS+ye2KVscMIrHMxHrI4kH8JYqJ7EXEmG4cYM2frHWSgZ6LLuqmqEH6VNQQBCJpZfbSrELYrgYNzuJeoFb1LkqiZ/7XYqMALzMANrMABC6xTGC44AxSKa7DqCJtmhxyXpkPq97Rs9yezGJBVix500bwTuClrAKW3qIPqixEpFhvdZWeBcHekGqb1i65fkiDsShD8qwX+KxCxG32JMaOIm09F4bd2+5ncuaIsCnZakKd6uqfYGMGGOwl4MClEq7g3isErqcFPBXIdrL0PW0OBOaRv4BeMI8CHS4F4gbANkb4urBHuFRuL0GIv5h3z5cI4nMMNshowKxAq0b8JgQOaKXmi0a8Bi4ZIzCHvIyxObEPmqbzqKbA3w8Y9YsFc3Li/gmlfjBEgxxXqp6ghXLkUi8ZwYcITPC6B8cYKsX+mJcclAf9bZLEHLXZ/PEFbsZx9OYyuNoEDZspsWVC3l8OVBWLIiZEFZxAPLCoSl3iJ0Sc+ObsfjhzIkxnJpjm4lZwHWCwp/4DJ0TsamyzGJKIRoDzOozwo9Vghl3tJ4nEzq7wYrfybOAjLuswRXECD1iEbX6DHuqyy57pBgCZoTTBghCYTyuc00neJ4jMQd8vMToHMfdQ6SXwZYhBl4/YPLEqQklyw6enNPiIua6LIRtuaUrSOA/EnLbkQoOzFSGMVgzKLwFe1l0S+hZsHQ6MXKjzPfNif9rwRLAVXOwFTPv1fNcZTgUbQxSudMpE5ApHQh9yVVpPUISIQYJDMbtM6TjJgi0X/E4nKF7HyFAhFWz3yD4db1cF2jdOnMydJEL70wWqTbefs0viIn/JRtWlc0wKbXnvhLAJJlERdEuvkpTzxTvML2BwBaM83mVpSqyqhIE/dOrpBaJW5Ib4crzHRY6wzE0vRR/38t4DcEF4rEOAyENaoEIf8fkfhbaL8wQ711rxB1xQbpJe7JHLxREkCHrHm14c9U6hErmAgB7yNFCwRnf1ChqeDbFlgMwstY23QL2XQBr78mfqVbGkwp6BZaF1A0VQRBG7yDxdtFIL0IFLEJyDiNq9VG92sxbVhF+aN1eKmQwNhHNKG0idYFYaqNsnBwQ2lm38xTH5R2+9xSUvSd0rw/9fCPRVd9EVhNAZjBAY2jOARvnyc0ME+OhW6eZsGftfcZBc5LVZq4M2iLeEjTuIRLgdnYFoWzhH9rTM4OH7exENegLAGbg8+55cljuM5TtRxoATiTRWNum44CKmhVzJ8LZDXioo6ruRLvuM+nhS6GbGCcuRKkKR64deDwg99t8JMzuVdHuGNWo9vcOX6R3803qg2JJxeruZrzttQ/nRjvntbIOYBup/wceNsjud5LqW6aQ9hDud9uduEUVJmsOV6buiH/oiDySJ3AecxaObnOxAFKTKITumVHojA2ef2OOahIOd0zhA+14OWLuqjLk+K7jZcAOc2FOgWwRxJTuqvDv/rZoTpf7EGY+7oq45S46QYsc7rvR45uhnTY05/U+vpwSg0Iu7rya7sHMLiUn7kfbnTZ/7pjbPs1W7t+oHh7b3bMZgQV45WQkI01y7u4z4Yzb7Tw+7KPJ0RzPJz5O7u744R2d6sPA3tC0HPPb0Q6pIGagXv/e7vE+vf82xDof7K9czqidG9/67w5A7kXRAKQ1nmFhHH4rTvfrfwF5/sbs6oOCjnGDHxDTGLWovxI9/rYJ7wNNlzd87C45VamRvqJA/zeu7mcsWHjq4RoYtWFR/zO0/pjSoXfEHvyjqkO1foixMeyM7zSa/kwO6bgynjPZOp6lIeL6/0VT/iAarOKG//81D/g/musVRv9WF/2Eyfd3yI7kmRqXwi8mLP9hIeoLQ+mPWO9plqsZXS9nff5jUZCk9H4zZ0k+cS9XMRH3hP+PbM4l5g9h2PFURf9AmR9n8xNOZU+JNvrvJOk7gYYuBU9Nq6ZnZP+Z+/rc2+f45+pJrf9T4YgAThBVgL9qDv+ssn7zkni3IeVmZ1JKKX+o5/+gqhLnfR+q8P/HtGteqyBYVBf40reslfVmGFOLtfax0e/NEPhFSb5fZYVnlRnmsAUiKYihvB+YsD/dIv/gdHz/wwqZLal9Eqrduv/d1/kM7fF3JhBr8//vV/Pfs35HYh417wFQDhReBAggUFvkH4/+/NP4YNHTbkF5HfQ4oMvXTpYsZLRY4dPX4EGVLkSJIlTZ5EmVLlSpYtXb6EGVMmSyVKQiF8syWjwC1bCPYE6tOglzUJF4KUGDGkzi5bjMyEGlXqVKpVrV7FmlXry5oKEa5Z0yXNPy9bzARFG3RoUZJJJ340Ygbjxq117d7Fm1fvXr5Xa978uqZsmqZm0x7uaZBt26QgvcjV2FfyZMqVLV/GTPIvTsEDxZ41c9ZsaNKi0RZke1RkY5BMfWaGHVv2bNq1HbZRXXFz4IE906Qxm7H08NCnCaZmLBGkEde2nT+HHl36S05bFlOsyY93WaBiMwonPtz4wOvJlX58vHP6ev/27d07f7NmS5Y1ShzuBstzy7/RadTIxShAAcErDijUcjMvpPRee69BBx+EUCsl1siCvoV2i0+woEhTo8Mu1MCoQw8FLE0t8hAsibWPRnMqQhdfhDFGk5SIz8JQtMtQP7P+CU0s/0QEUkQSC0zsRJXccmw0umRkskknX4yvp6Ly4240AD8EI0gtRwTPRKKeWglJ9Ipb8kkzz0TTNhrlK7JK0kJUAww5s9xSSIxI89ILFE8S06PHzkozUEEHlawmhHriggugSPvnQxHnhHTOIO8kUqiDXOqzIyMeY5BQTz8FFaqaaMxwi0RLg/PRSCOdtEsDB4IpU46qLDNUW2/FFaT/7Hjr6cpU41x11VYrJWjPI1XsiDuBcmW22U/DwI7U+HQEMMg588A2W2whBZJS04qVSdZZE3O2XHOfDMMee+4jlcpF5VL1Wm215XZEPNv0AsxwkU122XP/BfjBdNVV9x9Dc+TuzXjBmLdhSe0kFtaoxKXI34Avxng6gtU9OL93U4V03kkmofdhEIXLkyqKM2a5ZY3tGVUhj3uttsOQsR0555LpPPleS2uFamWXhyZ6tlETorZmYBnONueRd6bT21ctVpnfoq/GurKuZE4aZDm1dZrkbIW1tyeLgJ5KIn2zZrvtvLpaaGYea74ZZ6ehlrND/34jjNLEjN3XCMHdJrxw/78aipss/vb7MI1gm757bDn/4XJAy8VrcybBNze8c8+hSjw4voFk6OuG5/2H1UZ5bGi/s90Mr0RLWdp88M9vxx0l+QDs2wzWu2gIDIby4Ij40usFvqK1HXoj6di/lVik2nOnvnrd5OMiQNEoSl4Nh4SnCHzKG9LbQ4oA56h52J8XbaDlHeLcevk/p9HURBW1LnGGXAfwoUiPn1yHGpI8saiBMMxzSW9o9rypMcR284Og27SQPUUtxj5xWxbNgCe8hQWLdJTij69895ao/GSBpilSBFXINi3oqSEFu+A/OrO4Hv3GWsHimb2IxJArRWYrQ0HbCoVINBjiyF1m+82vbv+oJe3tMIOQOUsQhzhFKo6EYDbZDhLT4Kst5a1bUpvaGowwESv5sIpnRKNHrqgEI2pILHPrUYC0xLMhofA4b2iMlTqVRj6ecV0cw+JXLkKYEw4ISFmqox1P5BaJbARP5+ljJIW4RsBcpAv4O6Gv5Ngz2eGLKHhkZCNdxx8vhJKEkkSl5zZmE36sgSFc0FEmh9MhzE1NIEWxGkOUwiifmDKUqQTm0DYGyLAA74gbCs+HOulJXILylOPC0z98OU3lBNOatxpmNhvVBT1NS4FoIc4WD3Mg7eQSmmRyCDVDWbv3XdOdMhpYNtWlEy6sATAIi+Vh/jOeRQpNU2WUoi5Nyc7/6b3ToC8a2EPmyQUzvAFDVPpmWjBiy37+0iRlwVNAOULQBx7Uox8FaUhFOlKSltSkJ0VpSlVqUCeQa6UvlSSZ2glTmqowJxmtaU6HmLAo6tSnKqySUH46VPnRSqNERSrbCpJUpt6Oak2FalSlOlWqVhWkz7RqVgNmTq12FVdumalXxfqppMRvrGe1FT8Iila2gmqtbYWroNgZV7oGqqN1xWte9bpXvvbVr38FbGAFO1jCFtawh0VsYhVrLk5sghOLhWxftNAPLUTWsnhphCH6YYhPXNazWrFEP0Rric+Wliqf4IRmRTsJTnTWtK91SRbA0Ak+wEG0t4UDHyYBhizA/9a3KAHDbYU73H5s4rfHJckn0kDc4aahEciFbkg+EVzm9mMs0cXuRz6RB+ZuwrXZBW9FlktcLoTXvBSZBHONd97zOkG1aDAEGkRrCCew97ycsK0hxOAELWgWDo+1b3gtYYhL1JchTriEIUgbYAY32MGDKgg/H/zbNVTKk0edsGLDmmEOd9jDHwZxiEU8YhKXOGPVNDFsIZli0664KupUK0c3zOKRungkMMbxOmVM45GOamsCzXGQhYxVHtPUPukcskWLjFfW2HjJT4ZylKU8ZSpX2cpXxnKWtbxlLnfZy18Gc5jFPGYyVw/DZRbrmdGs1aeuua1qdrNV4Rxnqs6Zzv93xnOe9bxnPveZWev1c6AFbaYZDzqphTY0URGd6J8umtGPhnSkJT1pSlfa0pfGdKY1vWlOd9rTnwZ1qEU9alKX2tSnRnWqVb1qVrfa1a+GdaxlPWta19rWt8Z1rnW9a1732te/zsw8hA1sIQqbHsc+9rCJLb95HPsecoC2HO5xbJDIQQzLzpqz5QCIMHQbENCeNkfkcAYupKG82C5as7cdhja0u91h+Ha4GzLucqchC2KYB7qJpm5ut0EMZwC4GMTQhjBImx73OEMWfnPve+j7avO4R7/PoAUtZIHiZxh4Gya4cDE03OEPp4cc2C2GimchURUy+W+4cAaPfxxr6g7/A8lNzghG8M3cWWiDHOjhcrZBXA7+rngXGAYGwmThDATXOc+zBnFAAD0LjGDazY9e8J0rHeQ/lzkXhr7wqSfd6ukOecwTXm+MqLwNgJA3Reahj68HLOxOv3mFzF51hwhb2Gxv+79g7m+FU1wLAld4GirLELsXHu95NxfbW54ogf+D4IAQQ7m5IIfCKxvx/9JHs58dBi7gnODw1jk9evsPfOf78gHTR+qbTQ9ACB4Q3zY4PYTdhnJnoeWnP1fqVU+PNqShDdNGduVFb+424B7zuk/9GdKQbN1XniFiEEsW6G58ZiE/9RO0fuYLP2+FcwFa1K++9bmghew73yHKF7zp/8FvK+vTIw1iKP/2HwKI2q8fV8hvPSDib/mH0GOC9r8V5BOD5ds/9asIOQDAALw+Lsg+7ZO/BCwX3eu8Bqw8/oPA6puHNDgDCjQ987tAZmm9MGjAh/DAD7yVAaQH5POIEjTBT8G+w/sIFmzBQamQ1CMJw5tBQpmHLthAGAwJu/PBHDwTOfA9GyyJuxNCQem9ezBCkwjCJHSSF4TCi6nBJ5zCZhm/JrzCcrmHIrTCLbyV3pMDLQRDZiG3tStDc6nCNCyXLPxCNvQU92sDMoTDUAmDNBjDN6xDQTlDPdzDQFnDP7wVNxREW3E/+PPDQkQXPKRDRQwU6Fu7RHREJpHCSf/0FEK0xEHZQUTMxEEBhC7QP0nsRBeBxEYcxSapxFNEE4szRVWMkU1sRVd8ETkAnliUxQhpgy5IQVG8RfdIxV5kkkAERiZZOVscxvegRRHkxWOUjlzcRWaMkV+ExggRxmmMkGJcRmu0jXvoAmXURlzsgjz8RgghN2McR+ioxnN0D0xUR/egBy6Yw2xsx8zgPHGcx/aIPHO8x9moOH3cx9hgx3+MjneMR4GcDvqzR4OEjshDQ4WMjn6UR4fsC1aMSInUi3ngAk60SNugv1CUieLbyKlgyIrsiDAYvZCMCoiMCTkYP5SUCoqECdHjgulzSZjASI10iQkChJqECpb8B3//BInIA0me/MiZBEqP4LwzIEqoEIMsOMqOYEktoMmlzEnyI8mGED3po8qZwLmnrIgJQsCtjAnR+8mr/Ady+76GMEuxBASp9MrbyEgSXMutDIMeXAn6G7yGQEKxXIl2e0uGyMrpA0K+7EuPTAmTC0u9tEDCPMLf+8sJSkvCW0zGJAl6CINIRAnau7a6m0zKHAnWe0u8JEG788yUODivvIfOE0zSLE2UOLannAeTu71/YM3WPIm7y0adHE0DtM0j1L2SEMrd7E2VOErOy0vJ5M3hLAmgjEoDfEDldEJRDEzhhE6U0Md5qLjERM7qTIk5FImmjEza7EzuhAlAuDfqJM+TcOiHkLgHLTgDA3TA9IwKepi46VO95JRPl5iHNjgDmlS9/IQKyNPOspxLAO2/s3uI3zTQmJiH10tQBV3Ql4A2+ITQCG2Jg6PQv7RQiqADLuDNCt1QlqCDBy3QEKUIFTRRmUDRFI0JpyxRFm2I9fzGgAAAIfkEBTIA/wAsEQAAABoCTQIACP8A/wkc+G+IQYMEEypc+G+fw4cQIz5kSLGiQn0YM1r8F0aLFjFyNsrRAmijyZMoU6pcybKlyiZizpwpQ7NmGZlimjRxydOkPHn/3rz5V++nUaBCj8p7U6ae06dQ6/WcapLfGy9etmwxw1WrGTBpvCjkR5afyy1qxJZNiXVrFzVg8kzKk0eNmj14GR5ESLWhRIh9TWbEuJFeG49t6FG8B0hLmHuBI0ueTJkhzJg2aeLUGaQyVaXy6pUJGufowHpCix59Eyeqa899lVzNyrWLbdtgwGwRm3CtS9sCyapsa+ZtXLpg7FbcOwS284qDCVuUIwaxYoGK78nJcThMDjn3ID//H09ecrx4l2dm3ryzfEqdoEEHZUpRaOmjqFu7hup+pRJ+a9D2ll125WbGbkMN5FtLXqixxT8LnkRcF7lVSCAdeyy0V38cDjbPPBsBcoZHYdBjImOAhCFGFhyFAQh4HMYoI0HnwSTTepvNaJJOPPIY32llMCUVQ0Hed1Qcb+zHn44bySZggbnlAUYXB2IVXIQsvXXlSkZkhVZy/xBI5R4YEsQck+Vh9OGHFtHT0UeAMBZGG9VlcYYYbbgII5p8BlZjTOrVxF48fSYUxKGI9qioThQFyVpFSJYRH5KhKVkoRaFctVWBdCGnBpW7QYgll2qYIapZKnUZZnLA2cbVP3hl/yjQhpc+tyabbR6mxRlt0HlGFlzseqee4tVqLEPniQHoeso2cd6xiEYrbRCKmhRHkE1VhNo/RglkVJCVvnZsbwFumtsk6Er5aZVlocoTWmoJxxJcagj06nLNjWvrrW2OlEUWHmkB7L+7iuFisfryicOcygZahhY3KdsGodBOa3G0LGEbx0ZDlTbQam+Eu2TCwZVrBlxypcvqgadSBZyoLPFDYRdecnWgVhqSvC+/DNHD2IpcBN1FGkEDzGsYIeksYzyYBXzTnc5SXOt5VF8sLVVI0meRPKN57G23Q4msNEEA0gYXGOjOtfJu8vbU4IOjmkShGVh5qdVuYvWj99jl3f+Ka0I+A9LGr1ykkQYYjHQR7NE5IMz3eGKUIXEYOIxL9eWXTzuZaEJuLc/GoxHUbT1rcPt4Qpk+GaW6n2rlhbs9nbzlSnOT1WXduOu99+nPmei7HMADD0iKvgpc+HGMcJGF5AfzTl7kxmIuvfTPObqx56gl+PFPAsWxRlHOCyTbGl5BqS6oVvZVassq1W67EbdjBb/uu4e/0Ye+axe8HCmGMWevAAwgAP3nv17ViQuMOA4YlMe8ONnPOdDT0fQmKLXyZC10FQHZkL4GlO6FrIPhK9tWigOleuEsMPBiH0rgYoZ2we+FMNQd7/BHj/3xj4ACzGEACain/fnuHyZaE3b/GDM4YCEwN4YLlsEa90DYxMQ9FJwek7hGkw0yRClFEl23BAIuEDZxIKb6R3JcV7q+vKxtJ4FLF07FDxi6EU1qmoeJbIhDHdoxT/57kQ999zeU+E2OP/PIv4YWtEI6JmlfpMwTJ4ODRjoSB1Gs1edocr0MditSCdmiQJLixdPZwx6h4EdbvPKgf+ANjS55mwpNosYrvc+N8+tHYDKCv/31L4DKyqUuJTbAHgaPjyDq25roAQhdeqRoABMYwNqQyMoskiePjGY0n0Uy0dCkkwpRClGEkknuESRs2OTbJ+1BlgCNspRviNtKZAezFU5JQWWB5QtlqBCHxLGGwCsgABsm/xOc7HKHSNvjh6SjL/zNyUUMI5xH7kQnj4CkmZJ55kmkSdFHPo6KZagkRUyzySRpsZOkM539xklOoawhQCeFSzpR2ZL1qXMhrYTnK2H5D3r+Qx9yzOc+dQlQHw6UoBCtYZ7uETiGCYyhLsrBP6qjBWZCtC8yqUhFp/rAazElnB/15j+yuD1seg98IyXpf8iyUi+AoYUsXUkKX5qQmJJtpm+8CC3nMZinuuQecwqJHGvYvxXhERCNM5GIPFISu/LkTgLJgWKnGs2ncg1iVryiJv+BJI1yS6sD8R5meUdSeyjhs6D9bJjYepIzwq4ibn1rG+VpBMPChph5Uswwfca/Nv9kgVhENZFAdCUGx7n2JGf4h2KHS9Hf/qMJNIEYVrvaSe9hkIMLkc1mPSnW0IJ2C7pJK1sctEqKpFamq5WncScjh17J4Tq3yl9H4pRb313nHkx16nhNcqfhKna+A2mCNSXlucl21Ir+HQgnH9hZ64bWLtpFCTsTTJDvunIgrMUvT4R4UHr8kYaC1UJ73XsdgTRmV4WVMEMQK+KP1SSyC+FoQsqwBo0GeCClm+7jCmzgz2J3C6ddyfraidp3joWlMCyxQKJD5Dj+MWlyuPBsM7xh9ybkHrz1bYklJ2TkPiwO7aFIE15M2RZ3E6shXa44x1njz/JDOe8KS3cV4uA1P7X/yHCOc5H/6KY2lKSP/0jv7zTM4R8qhDokEjJBqCzix/K3Ij7CqnO/TJGvinls1S3zV3jTEtNapM2kLdRfNm1POXu6yBYRXGIoouc58rnPFXnTGZQqaELPF7kQwzKie1QRbn4UUmuQMWc/WWYzp2GNDEoD3BiMaQbDhtPITrZE4iwZKLcBkQwpdQ21cF5UVwS+DpWycT+C33p4pAxZtgyt6+PlrlpkwInkda//8ZUyrlMNQyG2j3tjbJQwxyDKzre+Z1TnElnEb+69B7X77GeK5GBEjikxt41r6EdXC9eW5bKAPwhRz65bjMCmXRgTXOwcr+Tee9G3RPhW3mf/m875/xs4wXVrEV2dAdrbDvdTYQ0xmSvk4Y3WmrktEuNH8+7iFGLJFtSszo5TBeQHMW6/OxxtfmHYZyThMHacfO34aruZONCCzRNp6K0TBOcUyR6jLRJmCYv2H2YNY0osDdN5q1bQfZlHyWGuEL8RBEQpBwTVByL1inw44b/NunybCeubWORQ47ZIkACs64Q42uz/EchbtGeSN3A3bkaH+1QMk6dgkppnC/HZ1Hu2d4ZA2aF0T6Tgn4pwcFckWowyCYsj3niCaNbnzYw82nWTEjOkId4ez3xf9LEP/M5D1ExfiN3bxJHClH4h2G6qYbNewQcWXgyHx9hJFn3rylPc7PJCc/9pN55j4cfdRPowrrOTfHI8U0QxYTCJtSnyJpI8NR5aqL7zaO56imjuJKRDeZeFex1Ve081VgJxYxJCdKhkfn2xD/ogB0jjec00D/+TfHUHeoXRfCfRd4vBWxCFf/H3QDNRc9mHKCrxBt/TfSfRcyXmG+JnEcUxOwPhgJGxDxbYKxT4QHN3P0KUEvCnEh7IEAcXaF8kgvZTeMH1eleTErPXTSlRdkImLwp4bsK2SjY4GftQXryCgY9jGAbjhXf3g0LIgUA4hAuhaqxmP/Gnf0oTBK3ndQPRhCnBfTu3fd9DgBAFgxlHEUMHfO6ShZWxhdXxULxDHSZXEcu3EooxeGf/WHAUwVTYx4b/4IYkEzkmyIQouBIBOHYocXtwJy+TZhFUQoOCeGxygHCpNy5gGAY7mIHuB4T/4IhC+HwKMViAxzuEYonjQnNn0Bn+R4cpsRTuBl0p+H1TiCpv8GsV0SDxgipqkAd9KFM64i/URjIWiCdiOBBG1hON6I1oqBAut4Z8QyiVMzZxeIKH0hJcU27GeIwG6Fq+4XvFmBAz2E7ROI0PhibWuIr8SCchxhAeQhXfuHm2qBDxdTrMdI4kQ3OTGIyb2BJ2+I4p4YKhKBzLqI8DkQamshb5uBCZ5h7WGJBoMg90MmrQUVcEOYt9MX8MUX8jqDQLqTMI94vqCIwt/0E6zzWALCGFF4kqQ8MQQ/eMpygZfGESqQgwYZB+TEIdhkgR0TEZtMgTAbcRvEWO+rITDHksmNh/ELmOPLEUIcOCKvF4mtdOXsCRC2FaH/ljHlcZtCJ/v+IYTMkhJoknr5gQUSkZvDIZJxIeFlGE0neJwtWLD7MrN4mT7MhijKeHCgGKZ+kbQZkQaTlsbUlvbwmXZ9KBK0KX/eGU/jhkKjkZJCYZPhMeVzcQMJkw2IeVfZKOFREP2tcTLLaTEscxyKh58lKZ9ghsZyaNIFlvlHFvKEEPndkGdfladOKKFjGalFGak4GagGkRkqgvrVkrDmkRVaOYPKGTXnSbuBmP4/8Fg2pgTlihlr+pkSHpGcR5EvOwIlmAnLChIigJlc6pSA9ZGdKZmsKFcFOJJtdZKDWpnZnTF/KwBmN5hy1hkWfZTthFN14hbA0CnG7JJyFXfO4Jn22Qlz3hlCS5EPfpTPnpGdJplQv1oUwSoAD6bXIoEJgTGO3YmD3hkw1aFgFiF+XjINFYLxVaKPg2Ee5pW/HJoQQBanV3kkQqmhoBOSNKoiVKnQ51KZHjmhySnbH5ooHxhPklnhZhlg0qKpoyM7jxFnkgEJS2j8YSEX4kpBsqkDjFYXSVnKDZnCHqRE0KG/sZagETkylaBlTqHq23EVgaGBMJH45JJLl2qL8lSrT/kRtnExe6gSDUmDBqGqT/IgbJ96b4FDxERVdANDhtmpJA9TxL6B5PWhHjiCYz8afj0QQsSqBUMxkHmqACAR9UgW5faqZu8ajIsUZ4g6YkU6mCIaSYOmQ5JYEEpEcWFgZ3Epo3VafPIVHlkacVIZj/WR6rKiMDCqvURBVbRhP/YkU80he42qCzsSnR2Cl1sS4Isp6aJqzNeRhZABI59T+8ZGfMmov2OaruUR0zQq30t6czIhOs6hlM5ZXIcjl98a1acFIE83XjShUM+qWqkwd4oDLs6gUrFT4jJxgdoZQJFTDKEjDst6/86h6HoSMASxGpyiFR5R5WShGDyhNNcC0n/7UGEBNrGJR4PeE9IpWraLercZE2yMEqW5BOTdSxG6EPQppM//K0/3IGcUKk0IqyWoAmK7sQ1sohhoetCyWoChuWNHGz16Qe3HJoEYs1eQi0ukpCQ5su6lqmjgoqreU8SguVNXQGhSQ0ihMseXJeIFq1VtsnpxqwRkgeNyFNleGqmSizYbuYDYuzGbUTNTu5ZwsUPEubicq2aEcbYhS3K2MqxlEhjloqocI3d3sRQrUiQ1MhyvMRSGNhermkfJKyhFu4DCGJBdsT0bQrimseh1mqjtutL1GCJ6VcWWZlViQpmdsT5fqlJiNGkHocpps+bTu6pJuxwQqvd7e6ApMGyP+RRE11Xp4nuDFiu4WStbfon5IhTf6zK+dhUX7CVMKbsLFavIcJMYf2dde0YvWQtn2xBpKiqL+lKXCxKjxKF13wq824BQNCusmhvbWSujflvVlwOFJiOIajOE1FD3t5Keh7Kbi7EC7Hp9DkSJfTEWdANWFwv1NBcy1aiY9rEkGAicd7E15nZdg0uTHMEhP7pSoYdCfDKv9AIWfFEk/yqHNbJXXLJHerDzWkIt+bBoyQPMlkPEUzvsfSEeOivgmRA7p7wpAUDzx0HleLOS3swisRDzXJiy6qxhbRBCXoNPLQolS0dZYrGd7jNZyLXQvswGfVFV+RXVORxNkrwTHSsTj/JYENlUQEgycvAkT5qjzLBAhJ6h5crC9eTBD1d61StTAtnMbxEEAswiO9IkUqcbDcqRAzq2VzDDFn0MP/oB5bZ2WyXJaby7lpSTNYMTR3gze5UUqR0SW7Si92ASrCXB7LVq+HQTQi+7cWRlDlpUwAYzD86RyZrMkjLI4nmhKNREBU0waKUsqLEjUzHJuHeacJcc4LQXPfFsufSBPhliiVSxksxqUShmBW4QUngzuvc2a85xy0URy3QQcGTQfuERFQnDQDs1TYhzRElZyAI8WP/GyXPBkmrM2oGZgIJwa7KxALQ8YtLM46sUvVvEs9wsJuLBBtzK28WMP5CzFisMqI/6YZcygtOiEalPG8DaoGabAG7VIcRiAU7QLQalceYnHQHPIQbyqByjOLefIiES3R0VZeTLUrdraNkZHRCbPJqimwFPHN4EzSutRPRtNPupTScPx1ARPDrZxfr4zDLKHD/2A18LG/gSHA+DxeQVnUxVHU7cJCcGdPcmRbS6VH5Et8VF0YcxIwTTWBlRF/15y+20wQYPy1DAHKIy3OudRPZi0snu1PPMLObIzZV0q8cO3Yct0Stmw16/itBMxzlwW0vodjfo1WgE0WLOSuSdtpAdMG4RFExAeBE2bVCwXNgYFXWcBek80nXu1hHX2LY30ZgOLZNBEsghLaUDPaxHuwK/89xqiNiU5zyxUBPU2gOVejE3ittnzcoEO3RoBNJbkd2EU8378FESByGEn2U0y92CsxD0TEU4DbEtqhVPEJWHuiNM89i2D9D4AASSNN3f2UGVrAQJnxNOyhE7EaD+lsESgsNXKcv6vNE4dCy7M5m8eVLZEBmQ3aIL5Z1PJt35I3JfMN2IkEEWGw3FowD5t2st7IyLz0Ilr9ZDmQIiuCJ0mV4CSz4Eu1UI7kP6OcHjdSE479uk5jE2idExpe2oj5yY5Uqwj3zuT9laEDlgSB4iluWVNxz7ENUeIX37ad2wQxM6pV4+3COxBxtR0x3Mvm430hJwEk5O93DzmQUFxwJ0j/Hsl8s+D1ZzARzk+BEjBPS8lZgLPflt2IrhMjAjAx/EhME9PQ2RLbSS3/0OUKgeZpLhk8LWRvQWlwLuME8RUa6Up2fueU6hD0cFt0wmlGWhl8tUPVxndRXDyvi1QOtOgLXicfwdnVnVwNC7UDA+3JhOkxoUwr7OUw7djw3BPSg3gPg1WonuI7ORV63eZf5MuYKRxxXtQL8RU8WhW1HmSX8hC29Z5twOue5hm09T9/S1QBvulEk0xIruQKXtlf/cjNfpjSzgWKI+2Vrr9Po0wfsdYgLceqrc4qQUEprnUMEe7HdS2SEWPurZZ1bhWmVOPtDiYxU9Ss1cQz8hC7Unxh/8Drswtnr3VD/F7twELFxW4wx346m9xXTyssybUGULu3fYtMTyu5D/O04Lbl67xICyUGK20SGu8tjWsoEXlzIE+oLWbuD7TLvYG0EFLE644qcYNdauDyLsFa9PPy/3Bb+kBtnCaqNu/rElgnwJJAiPO6kNzcxrKfvgXKo0zNOWv0k763RLO3lP7w0Z7p5lyJmCgQu+Is3H71AzEiCHvTZm4ZogH2tpfLgrYGafDu8CQUQlGZ8YaZC4EWpj/MNVU/S21bUEz3m3YS+R4ZRXVACpREPd8rSTWdOrOy/TMnNmJEAHP0SP9rSa/0yA/L220jAbNVVD8VmH/mDzPuAuHxX//3+Vkq+i9oF/WI+jdLPmmBO7bmZq5/pnYV8yPB43/RErlPlXLC+8hhxVfs2Po/9ZMDEGEA5bh3799BhAkVLmTY0GHCghER4ghTsY0YMWfOaOHSMUuWjh27jGSUhhGjkSFVcslSxqXGM2W0fMyipYyYeDge7jwYz+fPnw6DyDzTMMjRIDz/NZFXRp5SqG/eyHsK1epVrFkb8uuSxgs/hFLXeCFbdovXsmml/uPXluEWNWq8aKVbVyu9LID2hfmnb99fwPvsItRX2PBhfXTp0ZMTJiPINGDAMGKpRUwbQAYP3pMDyOLFjFpEjyYt+gzGNm0qDhx8NWKOHP8ohmnTJKP/Rpkgu6gkedLkSZS7R+7+aFM0zY9l/uXEoZMuUKA8m4gWYxSp1ab1WiNc47TqdvDhE7YlbybNFn5v/klN2958+/Zv1pBn6CXuXPH56bbJ4vdiYMD0Q8yweQrEijHazgCJi90qO00gzaAqKAfPUsNoo9Iy1Ag11QSKDbx7YAPkH4sujCk33dLoDbjJgEMpDRVZoimk5M5ooomgsoIuOqWm06IJ6466qoky4ghvjX++029JrciTbw3zulhDqjfmgq8s87a4Mq01jHBrIfvkYnJMniz7Z5/L/iJzIQILdNPAnei5x7OZOJJRi9NUk4NJCku8LUMNMbqsQ9iUiq1PP3E7/+4jLmD87STJJAMOxgZXqqmMDW/MEaodN1VKnjV+DDIrIo3cLo414lByTVYZUiI9LMGQa0uztrC1CzX+sdVWWr3wsr77WhVWjiz2FKwNNYVd6E1m52mInn/kEANPBWvC8zIIlV0IUQtDA7S00zisqFDZKooHNEVn7AjGSNtt1yRHG7zUpX9OA9LThprrVKszuktqIaT+xYpI5U5dgyptE1aiSi9sNUMyM3ZN65+Gd90VV10t5vXKX8EMNmEm+fNLHy3kEAxkhpplFiFnw7DMsSzCTQ1CaFGGilt0MfyWtH+06Jk0dbuA1F2i45VxXkztxdEnh5pzmketymhJ4IQCpv8LyIJbkw9hm9dceKwtzHgYjC7EjnhjjS3GOO2N4etYoTC36Fq8LKrbh56ST557WZXd/Aejzqbt0MN7Fqt577pg+ywjmWbK4qCVROpq6EjzyKPdk1I62ueXlMZXNqdDH2yomIOkeuA4sh5MKq4R148fsMWWLC41RhKb7bDNjsvsszXmGKyFjIhLbtfrItZYObSYR+/i+XaTHozkvGdaQKqXQ47CDW++tQ9nq61eFBfsit1285hkksslzdyj4myq13OmQQ9d9MGmW6M6hqyuq4k4ptquu9ZtrzVfc5ga2kW7svUud7wzw+4YqMC2lYU+cMMV8QRoFTH05y9t0EKyLtj/kIsYDnptiEj2RPhBunTPIrZhXPhEwiLJmA99kQKOvP5hrc6J4UbLkd/8nNOaJoQKSAyJx3Xs0oR6+K81SFoVCrUSiiqFzYAxTF9cEhgxBg7Hilc0W9ra4yXgUVANFnRiQ/RRtzPtow1n8GAZD3IROYhQDGEQYR3tqD03MkSF/6jNhVwykxu+kHKWsxwNg8O+g9gkadVZGnOclh8FiWohPznd1eShRLugSlV5pAvsGtaFyp3vcgexXRaHA8p/nJKLEPziBBNihApyciHHS+MZkMW8MjoGEPOQYxzv+Etg3lGAe+wj+JQTNBhS0ZAoQcjjavIPesGPOUuSmuoSArX6/11SO4NBVQBlCRVPjg0MMpyhrGp3xVPSzpxbLOXtLNYe8oQRIbAc4zcRkkG//EULt+SktMJQIMNJy4TCPEgwg1lChBYkYXuMx98O8kdnciGVLiKa+hjxj440U5GL1BQPqdmShmCzfk14g6nssrUm2vMhnjSgAclZxXOaQYu0i8s6EdhOVpYFjF9SSAPJmMcz2m0f88gbJ0dID4AuxjEGvcodE/pUqJYwPB96iM8QwqB/XPQfkdqqZA5ySIweJFSdOw2rZlIUIn6ufkXS2lRSqtKtvAGUNR0nIWd3zpnSdIp6xSvv3jmxeDKkgWb4Ji3/kjyT5RF6YoBWUumRmmAyKf+qk6VshB5i2YZkTaIiOUhkXIQQlEj0hu17yd+GyKTpoDGt8RMPwZboHbhCRQkPKxuuuHpXvOKKrwfkK07/ShYjsMWVCZEpYTmZwTTuAxDKw+UFHysGzTj2MpG1WWWt+9SD5EAnfDktNK16VQaV5FE1rNTmClYUHXr0h9tpwke6e021AhGaS0xSbKHiBRUVMC4H0Wte6VrR3l7xt746SGAXsoWyATULbUguB9v4wTXuiWWGOwMggOnG6yIUNto1V86yxqiQjM9Fh6TR48b6PtOqNzyRfC9CRBoe/lkzK6iqx1vtm5A3qCENsRsJX8+52/IRrb8CllhZEGJghSDYDMH/dSIgsmAQNWXkwQIExBn4khBeQusMvrTjjSGiYRFVhDa2iUn71MUgFQVHcyXOwlhzuMOGygY8UvuuQl7c2m5m8mA29nIo0qAGsTTsHzIdDil7TFN3FVLIN+1ikYF75OEiRMlM/qCCktszMUy5eXKwpUIA+o8q/9LLDtEMbLx3kZ9BVF0wYlDk2FcclyxSh0sD3XaqGdL4wrgeBzvpnkftqq54QQlQrBjvCn3o/9aVkIqOFE3b6WgCQ5qnCZn0B8/I4AD5rLnNo8dpDvcPv5GIsXX8Namzy+GKeBcmqmZUeS2FnI3CZNZLe+Rgzopr1o6JKbyuy5S8We4s2UMJr4qi/8OM/Q9EV27Zy+btFhutpYmNJ9IH8ULZKN28MGSBHgGaR1627brFfhvccIKsyMvNkFKbmi/KMdGJtLCGdr8bObCO9YZm/ZN6X+0j+JtkrlsLqm3SBYB8ju1ZCCvwULQFbLsyWxcQnuyFR73hMVVgxCU+bYRU3Az4aZ5oLn28jyOOgxJmGZz+RkeTn1whKc+BY4rSx9u4fCYeOdrM27xRWd+I3jknlXvxrawbpcouTFS7WFWkhH8gvS0Mq1junA51Qp5P8gzHLdUtRjGyMATJCdE61xF37Us72S8fdNmIsGz2elk47YXfzLlB02EW4ibWC7I7TUYT66QprZH0y0q1Wv/ck3y3iqQytgqNia7SN8AIeEh/gyfJYnCnI7x8kZf85JntbCLLzchbwTrFy+b5uWV848lycNi7lrwrl93snC4c680t7up4ZnEtdwlIbL+GUJEG9zDRPc55fxU6cwifQy16oYtuOr5vUgJcQZKDYD7nKzaZOgiFW7bqs770salnsxWKizbN6z6KERvwsxmvC5C/6SDzQ5l72CdPC7eDCIMzWAz3e4iLaIMNkz/agDv+A4njwDvcIyuM0Lsg8AkfyoqZIL7lGEDwCAK90zuX0LusQCm1C7aEcMCxeL6wib4JpMDqwwPKw8ArypgNvLiFmLgP3Lq96Ths0xvL0LSu6Tb/xjo91OOjcYtBhgAEjAiDDTO1ePiM2NOIG8qNHiQreZu3IBTC/4OKj0Crngs+/QiYJbyRMngDvaMKBDwI1qnEPDqLn6LCWonAroq6yMODSRDFhfMqRhMbMMQ8niBDLwDB8MuC5fGgxzlBkMkIkWPBe2oDGKRDhMiBGTy3PMSBPQyDc2GhaekZDOE/ZZQ3vWuDQnQkvpOOncO3OGOSgDmKR+SfNZhESoQKf8PEMsIv40IIe1A8WLHCCKQiC7ScURxFLpQ6cxqJQZO0rFOKzaM4VxRBbUuWjtMLYRmQNnEWPiqZFRRIhdACtOPFgwCEi0i/PDS12SDG1LCNREzGZQyX/x/UFKDwofXaiQzKgt87wmq0xmtUwkfsphuhxG7cCcL7teTrAsQjx3IctsXrROkbpwpcODz4B/QhJAl0l9qZx4OwoBDkvu5rRTMEGTRMI4Qglo1bE4BEjDdxmfQ7CFxEiBSMI4X0xcugKmDcsOYQM2K0jRvCiGsZREF5ROjgSKuolkoCvpFckpLExkfcNXlISZX8t4TQJHBEIT9LA/WQyXL8h1c5x2K7SXLqScs5iJ1EiDxoiAMyLqK0inssw6JcE/6IRb3JuNFjkqgcEDdJnjYwuzepQy3YxRi0wznSo4fULooYxngoijKwjWsRlHlbwrVkS6goA5YQQEbMj7mky/8lBDq8zEsbO8Bf6woGFMzxkA8rTKUpSsyedIjHbAjdkpUEOwgx3InKbJikVJYR9KDy88zPlEpesozSLE2GWCPUZL0Z9EqFaE2IJEaX+ZvauIlsvBFnzE2O7MiQ4og6g6/fFI/gFM5JTJXiNM7M8jUvyxKFKEd7QAjECzSuu07qW8yF8CqE2K9USqCDkCkE+il7JMOwucwloQcu4Is2mhY2HIzyBM1ue8G+cYjoWT0vU82qZE35dM2MIxHHKIM26JQd6c9oDCmQUEQ7Q8LRKVCTfMTuSFAFXQgovDGje1AIbcBhYwsGnAsQjc5l+0lm01DaMTRUJKMujZjtdIjKTMX/VhEZEkykTKPFrHhR0JyWe5hRh7Cl9iy399yJHQ3GDDoDn8gIc/kJMfM/Im0OaVStRYzLRmTSJl3CN5hNpjDOlVSIb7yxNVARKx1MLEW89KA4XUEIDf1JhSMa/sqVdgLDzBvK4YgYE726NN0COhCWZ3rTGzoTAaFTxOCgXcJThsAb1VM7HPXTP31IqWEOjBDGTknU+eGJjwxJJW0NSI1UJqRUS1XJhXicvtyeHIPJKbxSchy49ZAPzJObvTLVIGu2msoDh3s4VfwHMPLO4dAS7uQHI0hTOqjVNUFRFWWefpTTq+BVxKDKvrnKpiwZG4WrPn2IDevFP60J11xWZ3VW/544A5ZwVLhslWq1VkjcxkrN1gCqhyzYpNhSQMDsVCsFVXN9PhiBTh9zKZsaU4Tjot8qMJ6i17Kx163I1zT9B34dEzdtI6cUWKgg2MNIHjE4WPVUCJfZU/sq1st62ITYUf74hw3DCIisWN10CN7MAo0VSWHp2PwsA5AV2Uv9hzjIghqzL+VU2ZVli0AzjzRoOt3iK3eN2cf0q5sFo/q4wp0tSp/92aBdklttI840WqVA2sLAG8ZiWoSVQ6hlWK29rAlpCPlUEDyEja50TRx4yIrdCR3U2DsjSUjNT5RE2wAyW73MIwcN1whdiJmUW/Xoii5gOrFJJ9rJW+zDGDVwJ/9oEy55Ch6kDNyLG9yEkQMuGJEH448WnVPGnYeNQCrIRdjpWtg8klpSkwjMbU3RyMM5OlaLFcAjpUZl6ViPRaIsuEvVbZ0ptacqhd3YVVm3kMdaWaDcHQkw6FBV8tBU8p202CmlMALvvJ1oQ15lwSdcrRcTDA/G1YdpkQN9qN4zAAM+IIMx+IIvGAMygIM8KAPsLSPQgM+1kyqHzcMbOgMU3twdTdSHaIKO4DmFYNawNd3TzUZ5YNuQRVvucCvk41T5bQgItQd+QLAu8IIqtEKD4x3J6F8GkowB85U1fYgChlV59VllKZ0FXkPF3QnG9dXCONh7AAM0OAh/OGM0TmP/NAADzMqjHLjDnTBhnshDS9swvvjcP+1Pj+yIkNQXkEHf/MzhONhhkW0mp/jhNIhJ5hTicnwDmdqC5sO/tNAYJgaDB/IrVIogsoin4bWKKta+fG0V5WXe5ppFB0ba5WqDgHwTegCDMVCINI7lMx6D/ZUlFxQDEi5hhboK2JiJPHSMY/XcIl2Ir9XYQxxbss3PJ23fqiBZk5UllA3MRWbkNRiJr0iPJ5lkSn6Y373ky7Nkt+HkwYBAimkVBX6wjkss8EDaFFzaVS4QMSADhpBleiYDGf6gN7ayOOberMg4FabaYD5mhuAIsGUIgebYZM7GZW7fg1jbtv0m81jOBvRU/4dQAiV7g8LEZknWZotx1wXCHbgAA4gDLk6eYk8WNKBdEy1+sKI9ZTrFG+U5DGbhgi9oCHqm5y8QLdI7jVz+sl3WigyiwQ1jsID2z4bQQYXIgjzgAzTI4A1GAz7Ig8c534R+RKkg5Gxt6PXt1q7RRLh1CEe+XSUQuIymkiS+X8K6XZCGuC2QFZ0qabge57nYVyZRXmNprsR16fKU3tM0zwJhBH9wiJu+aa3annxmMMv9aboApDwk6mPlFJDImibIAzQYbDRGgzwISeCs6iU0W6y2VEtk0Dza1HGcaIquj5FYAwgduLJOj7M2C6eDoCjeqiPeKQOD606+in7ohzGxtP8F5qMseF6s4NUIBs0C4YIzFuw9UIRDwIMvsGx/0GnXcQxc3mfF1oqMU45CeWOh/tMeieGeyIMxgO5YHoM8eEsC5WwmBElmFivRLqNvVeTEE1eGCAUGMQOwWG3WdhIKbQ+n8yJaQaW4VgjcrgveFhA0+u2NEO6BfVGqBEh4fm6HIINFkAILl4JBgAPL/gIk7ZrDtu42BuoFo9qu/EoU3mMuGKI1IAPyvmkykOhHrdb85J+tZuh/GLo8UgIYkWbTdohqFmvTZu2Bi6fmc86JAYNeUYuxuI+SVtMBx4oDFw+7ZsqF4GK9BkiljUpeYvGG6IM/uHAwlwJFGG8XR5xbNr3/7b3uumBscglfYATAjogzRnjuFr/pLyjsGL/hbCRZZq6KkuVqkOkKHp/v+VUIix4JHtdvIYdr9sg8JE9yKmkLL5AVcV7FAu8a39Y0U75yxMCbM5gHLQeD5E6IL8CDQwhzVD+EPhjsWkaZD0/sEKcLHHgmcsEBN9cKggatOifvVt9sGc9PZ27vtX1mJ3rdaSbwR5bviRbyRS9psXDrLTGCIufkh8FvMnTyJ1cWfeACoWqugBWPzySqvo7KexjvhRgDRUB1dZeCP9gDeh4DstOWMwdx8cggXCaXeBCDz9WKLOiC7wLsXSdvPA8PQA7kP2fotW3d5jkL6Sb0hvhxEyVr/2bfb2cnGyrJ10jH7bYQ8NwGp3gKZWUBBC64a4ZoaU43DDstT1FniDImA0hY9wuHhFW/6V5vlVdP81i3i5kYCHIB5p4WQAbJmjWg84DfcBhPwl/Pz5awcalReNeJX8EsdEkrm0EP14lvdiKfdGvXeNwWHjXoeKxoi8EFeTIBpN8mEQ0Cd4DkD0B40coedYQQ85rug1NH9T/QcH+YeVkuY2WZd1g3XJ8hFzn8+YaAYW5PCBaXZUVQhD4g+oAnA/S2C/XWu6Hj4Rt/bwGCetOW+vVgkC1Qdti9eorn5ElHD67X+LaOPvAYeyxekm3vdobIIAZv8IJdsBc9gzRWCAtX9f9/QHcwVwQW/4I+GAQpGGwjzI+bbwg5zg97p9q/qW4M4uOEyIObHoNTl4Q/6AMy3/XqTG89V+g9s/xM/SDN73FMTW2HGOIIFf2MDiwkP32ufxgRbY2xj3LxCAMugBY2FI3ZB4h/AgcSLPhPH0KEcrKISejwIZh//iYWlGJRyp89/sj8UaRxDJ5DFyeSLBnRIMqUKguGOSMG0Mp/92bei2lzpZYsOHLwHCjmX46bAst04RKPYJMxJUv2gXPR4h88aJZSJTmmidCs/4Jw7eqVa5OwYsW+WSPvLNq08gZm+bdWK9y4BL2k6WLQHt6CSrZ0MRNKJd7AA5UQLkyYH+LE/Mz/gFHs+DHkf2rUeJF704iRfpotq8z5bx/olAxDc0bpkJ4WLfMestZnqGTFp1LwfJm4R5HIp1Un8iltM4eYM21i0qzpO2YWLUCD+gQqNEuXtgXz7PaHh4wi2RYPKYJTnWSe4wa/kg8y9nyZLGrVDqyXJc5b8fIFrql7Ny/BN126bFkZ2J5BhhUGWReNQXagYwJ5Mdl8Da6kDxfDkWaQPm3t4+BBCM2TGj2tsUYGbARpJ8UgGkEyYnVoYDhQS2fAtFJxKxLUBkM8MSeQGGHcuFIWaUhX0FS7kTHIGCeOKIUkeHynIobleXXeWOmtl9ZAcWRRT3wyylVfFwAS9N9c+60B/xiYKAmoBGSTIbgmPwRtkYYZWq4YBhf0gHYhSvRkAQieDiIkRhZyeMiaUiTFph2IRspW3RgyiqHFcDDSJOdA6enYk0A45LgjSvFwkUYZKGXxnT/c0SHJkYfs0VF1PzboJFhQhmUlllMSJGWWlArFpRIFlfmPElz01WtK/3mZkoD/PAZGF2yuSVAXafSnq3ye3ZnSQnauqA+NYQzK2hcS+WPQkYmiuFu4Drb4okoxUpvccgTFI8ZOKzWx3xkpUfdddn30US4eFi2yW3grwiprWO7Bt15BZZ1FbVZv1EXsl/j9ox9/ZApmk2EDKQaGGc4qJlBiBU1WGcSlQShhnwbRqP9Py/MBkkUb34IrLrkjmqtddenKJ8ejkbY7KcQ0nmEjQWGIgSlKZ+yHFUo48EHqv6ouoh0e/2IUJFW9yegkwk3I8x7DBa3xxsMpxyRxFxQPtPE/fHXxhsYW30RYQfx4AcYWziqbN2JzqWGX2pa1wcU816YE6ITz3ZPFGTYTivOhsu286G6NyheGFi4SRzTEliI9UBtLc1ppGkalhAMOXKOL6h9j5GaRImhIckgfY/SxG5Nfkxd2E1mUwZ5BwudaeMNppOG2QBsrYQZ/zFdsd2lbgOEFgjGVPNAWakyLvFbWNl5QauMfh5pqGUqOEBkqleuPorrxLt+jP0k6E/JZtDX/Oo5LR92jTqLGOhwU6jtXmw0ZLhK7QShCd4egQ+Yo9buwZQFtaTOIwo4HvospT3obW4OY/AO34zDmDW2Ky/YG0gXKbFAo84jQZ2JWkNHI0Dc5ocdA1ocQrxnEH+/7w7mqwkPOcM5z9zOO2sIAuXgRRAz+KwgOPuUqggwQB/+oDdUuQoaAqUoRZEADEBXRM2o9KWxrMIsGBUKrNBZOYmmgm6/wwxcuwBElxmpQgQInlxQKZDJ1bKFKDpc48+UwQjUsDaDkUBAdnqQgE3nfF7KDuao0Ui73qN/n8Ae+M9CMfzhqA6foBKrVDVAgWPzOGC5yiDH8gQxf+ELApHCIU1LF/2dkBN4apmgQXAFSIEpQ3h8FUo+8hEJY37PjCOWjphPuUY8KGlwveaQcxeWJC3xqEI2EJhAd6iNfBCnJ+yZCByCOZDehskwRw5BJJOZvf0wTiHB2dK80eNMgVRxIAb9DTikMzB9wGMRFdseoaAqkCelZGxp7+cs3YnCY/wBhF8ZUrF81SE2+4aMZvEdQg7yQZSuRQ50OKZeF2C+HCVHfoJhElXCS5J8WmZ8l68dOg7hrg0oMFdNYF4YytIF18KwL1OzpU4K4rjqBeMoXDmgRSJCqd700qC7NltAWKiFawfxHPbIat2HVTUsRYaZl+PiPaKFsowI5HMwISTouwEw+ev9SDkEcskgPgWE3LC0JHiSxm0pmhXNaUOcRewkoUPYEB/EIw7yUc1gcaCF1RxGgFQsyNVL5Yw9PSeVTQPSdIQKyCbTi0fDYqKuqMrQgWa0Hxo55H+o5CGRgDasz/0GXLhjBrAKBFzVRwjiRamVDWZjHXPWRlXvkkyQARVTmqjIGRWrlkloQw0xpqsleesZGOAhD6YIDOSf2iAuRhWIpDbIvyhrpgU8RI6kKFk3PvodH8GmhPaIlUYKcFqJXfRtFMbS3vomHj92Lk1npAUO1DqR8vM1KTphrUuFqpa5VCcTsLKJZyk6ErzbxK2CHNl1A3nQ5121CcMqQkzIQxUdh+O7/QHIQ3uJR2DpLTaBFJKERUkUVfGJrb0qs9F7wxUG+DQ1WUaSHX9ZiyHrYkw9GNbpRMbA1t6ISA4GzAqgMbxMhcaHHhJcCS1RJuMUbaa5MA7vkTqo4DE04wxlykgUu9MhHYmhDPFDMk6GmpKi7oQNUtDYbyjr1qWM7J0qsdMHC+di0qN2PF+LQVV0xJral4aMRVlhW5D0Et1Fe2YFvokRtqs8yYqDlUsYgySx/5wv1vHBqqIySmhK0ukEpXZr1J6w0gEF4Lolziucck/GS6kSKOCqJQF0V9RI0ePcVyBvUI1oZ9TgN821PPeR27H/ckVp5fO2jY7sgwhVOQ/OgBz0A/xEhhBxYwNcszULgumAGy4ULpBonqavDBaE4F7qZtO0/ZqacMgcnJ1z4FBjAwGbhiaEJcbbRO1OSFAoHDA+xFCgqg1rsLDxbqoOG2KdUi9Xn8edYq/W4rtKgBkdfNLbd0zil9PHte8ih5VrgghzosZqYiFtbnHkrcONq5ZszwsukYoRQMLxOfP8DUKYzbL/XzIiAgyF1tjb4ck6nEl5XJ4F4yM4fKEzsYv+jxl23YOHMIC0MQrTicSSynNLwNwcledIp/3bLw4BdNrcch+xGCVozjZMs4FDnd3chcMEN7i4I2+dfmLdN6h1dgoB7w7Z1NXbFkB4uLH0Sk8hDwFNXBv8xHFzqK4l3VXB3NTtTBQ1BwHcTcqmStiwbQ2LXeBzmKOTmJRNirsUQH72wn9pSC+6AaEPpGgupMMR85inhZJRjwkkFV/nvN5kH9AUv+DOAnsJkKOlKhL4SwS9+o/DiSeQnX/nLN115dclCPDy/kjUUfindYRWpvmD29R4UJRlUW8ZRYkyQT4//1HoD32Bbf2mbGgCYnOyDysnB7/XbpzxXGxBfh3SGFiRfIGWBqp1Ub0Hft0kfTcjBJhQXqYyBha3ao5xB9wmE9PUd0RVdjczZvExegYAB5imPrP2D8nCBFjxWVvQcqcABGIEgVQAd0UFVjl1J683Hm2jcmESUCKH/na7szZGtiH8pmZYgID3IQfDlROqkxpu1nPEVzxlQIErMDPZ1WgZuYOPNRMutYRvkAektBRpsArtkX6rFhPStIEHkBCBYl9LEWhcwAiAywg2WwRmAGAjdYA5mhYOVGsRVxwgWm46hRLJdnJa8CeJVSX9wwexhVe2pjfWsgQAOYGwhmpwkIHb5YRowAg4KB/F9YVwZ0kjBi98530poIAey3BoCgi7uYhbkgQ+OwSuNARrwwSZoAeikhHOZ4PbdIR6yxb4xxylO3r9N478xRDw8Vjwc4hbq4EowQvu12BcI4Qo2gXsAGkGcESWuyJsYILLZxRbUg0pklRNCTKOFoiiG/wltaYkptoG/gcEmMEty5EjM0aK56V1BzIP+5NyCnSH34aIC7qLcRaTcJYc67eIettwxskQdLiO4NWMTtSBzXJd26U9b6M/L4SCuyYs2omRMrEH18dn8mZXYcIE5DsTZpKODWKLZ2MUbwKP9nZb/EdrI2eM9DoTusaOfzIMcKI0WboJTMkJAQiAt1pxB5tANBRdDCl4u6qJERiTwHc5fSeQu5gBGRlcynuA/pKBH5qEFjk5QzEtbiJgWkBia6c/RpEQ2fso2qkQ85AEQMkoenJ5H3tj8GY+ucMmXCIsm+mRDnRZBWZScjMxAQI/bzcc+aqE/ClxUyoErrlVbacUZWP8TVmaFLWply3GlRH7lVzKZcDygWOpiWRIEIKQGpxkEM66lMzLRcgBWcKAZmhUcoGSBxHXKyyHicA5EE7ghn+VBGTbj2Jjd/ckJYg4ExqyBVv3kdRKU2hElksVWpHVBZYrHPijl753BDapicrAiZ9Ii8lXlPxwOp2EgaaLhFZ4mIHilambXo8ybar4mIMSmcxkjR3YkbpIO5LilrnHeeSxWPOgPN6pEEKyBXuLgcd5WHvABGgDjFwgjH+SB1+Hh2OjSGklnXSiaQEhbdtLXaTEmQd2eruReX6yIFWKhFMnadrWBF6aEgWUFSEXOLGag9G2l3KmmExUpd3GBkfan3MH/phzcg1/VZkHcZoEORVtiio20wRmc2GHJXecFhf6omr0UZ+qsQYVO6U3Ig+oVBC/JCJeYKJBtQRykKLTJaTTtF3fOh39lDIYkoPChWWo44H92JluEoUG+1d/JpwtxoH0OKfAZaW+iGZv9ZpF+ZUTuIidpAfPZppSaqf7opo24BMKFqo0E54PaRBOIKYWaqVbIwxtcInUqm4ywjYlWp2MaWq3alpHdaXfGFmVuSxhEhzpll0CwSw1hmlBUyG+NZm9x36Jil34+apqlRqT65qQCn1fqD3Sd4KaaqdF4ag60xKWIaqhyUgDFRRCgqhaUqaoShDyUgavSx1Q5iKyeaJDd/+qc0ilB1WPKQNruNcgQ7IOAwZwCRmQXytxnFsQ9WJPe6cPLZSqiJqppomajOpFv/umfstmfUqsTfWVO/FWTOl5abquZclK45lrRiSvKXiqKwcW5TiiZrmtKyEMccIGJsgXYOUgolCiwGBNW0emKNmO0kFxkaluMzse/rhln1mfctUGHpJUM0YnNxQSTXeDOwQUa4uJ9OmuR+qnFqll0dK2kjqSL/OfHRqngwewMudONBEUZhCvKhmp6aAGdycWpuqy6Fqg81APNztCONUjOpoGi2VfPsujg4qtZrZDQDi1Y8QXKWcYQhCafeFv04eidmE/eXRiSKiuQ0gPWMmp2cf+tmpFkjSZHxtYlm+VIGFwk0agl2rKI8OgmjhzN24ZqpnTsPXFG3d7gy8LsWdAkQejYEWrFQvWK7A2urRLuCg6OrrIdRoGnfIgblN3JQyxl5cpQTiQfSGnB3SFg1W5u52ptv/0pSYqu2o2vxf4bpLimLubApIgszHISYe0IDvDU7NJu7QpPFc1tXOTumN7tCsoDFzzbmspHHHRQVempvRZugRbg8jIvWHmBGZgB75WGgGVB9VbvPLTBIJlPckRZBW8v91oGGp6m5/Zmaozvmv2bfQycSabwc72Z+pJlTbgvzHaqJwVH/SIcFOXEGeTvitEtqu4ubj5nfsCqXCBvs4X/guAa770iLx4G4AbBaONmRYU02QVXLuU62T9wAaGqRBWroECABi0+3wZ+78RGa+hS46fYRTXKGsa6BAwvqereAxi3rus+o5r+RA570j80KENkig+vLFwYlN2uZYieY7zexGnFASPHqRpZlWKaqL3+7JRCYQM78OKaQXgiGMxdcfUqktMuEix2BswVhBbPZ+M9pLPCmvi68b/9YSpu8TQ6XWpIqvqqrh0vDpntSBuc0x7zsR9jXyALslYQsu76bwuhqatUEE7aHyMLSCPLVwgJ061S8pR+4iU7cEFE8CbbBHz+qydLbxjLEEidm27BEEFULmdEH+cOLPhGq+hOYyCm/yIgRovTkW7nbOwD5psMo2UNqy1BuIRAzG6uJZwfH+cwlwYh70cAI3PhoKmrsl5W1EMcKMEblMUZnY1+pE6Q3Ss1JzBu6msL5V4EjxQOjnM4gwZ2mQ/UHhKdnFoMiaFKsDMJv/MJp/C/BaIgznPqsHAtu4S1pm4/53JB6Bvscg5gJRxK6DBSOCgp+bBCuytDr0FzblC7XmJ02gRFW/QZbYFXn5HyRMsxUbI1qyriZjPuaZsZTHFKICu7pTRozIMYZCqONBlKgFQWgLBMpwQ7mzErp3FOB2LACWJYtzHp2rIcYyRRf6Tp7IhAR91NMLVPOLVKJDTuSnVRCLFVz6yJCv/aEW51V28BF5iBCpffs5E1SE+p8kaTZJ6oJmfFPnCSQsZ0SgMfSryc+bxQsg6EOpdGX9d0o8KzGws20w02IE6jSXYOHA9H6pItyLauq90IUg+0+hmEZMMTZa+EZVvGQme2Q6+IzO7tPwzwSjByWWwB9OxHtGTeGiiBJDtmWa9gF0yCD77SK6EBHFze2vWSWHFz0AWKKcP1PsjBGcz2bU1gzFRxpp6y1ZYxcFPsTacwcecB5oFBICI3Pi93YpftYufA9+1IcFB3dVs3H5NrQVzjNQoVVF+2sGR28M5H78IROh5hHJy3sKjB0jGd95xNr/xsfNuWF0wCBJFKP0xCN6v/DUmz9UCgBqddSzjDU21y8fi8nKoxeIOnsjt/7k3PmvkFHIUbtyq2ccYW3S3H5mIbHf/MZqQodUxcN5XCVTxASYqDV/6WajFjdgC/+HEAsERRXDO3R42vAV+ogZdj3uB49Ru4N3ynNkHxwyR8Y1V8wSQ0ulofOQI6UcuAczpfsEBwzt3pQxe0QcwcThn2tm/8dpY7kb/ppfmlYqGDOYb/9MZu+HPDbE5ItuSJeFxYl0F0rHlAa8FBHWQZFopHdYvnua7Iwxb0uVsochzk0o2DgeVNgoX3xbIr+oo68UaZwRvyGVIiT2vHzRZ0M7c0BEEMwb+uxLUwLJXJQReY8z9k/2+A73VMRJ9MKNLvrXphU6NOF7eFH/e/dZ1y2PI/NLeZ57KH43GBrfmIq8ScCfKaQc4ZkBjFu4Swrw6KZ7yxTzVMN8ghZ3V5P/ua/WEeTDvmWXt7x+mPmxUYQDplfcEj7qu2ebVKYGHUonu6qzue8GPSdEHUfvCm03u9pyUgPApOD1wr43S/W3j5hXmn/oNyb2zB51u8LzaOMMQ9MA3PUzdnqNjcxnnEa0EuUdxcWrydn3jGFzuLczyGrEV/jKhWB/qNU/jlGfpap/zKbxTVhWAfKAIkiEQBbR2488MEy9a4owQdEB+5CQTO28S1oIaCiUEXfGYVG7iVw8VSchI1Bv9kpGBfWwT8PwRi6Ie++W1xSUL9P3gTc1s9+exJ1t/I5nF9adxuH5+ZYqaw/qwBIRbc2RtE2qs9d+O5dcK4hI63EccERZ93DMpghTfdFiQ6o2/UIr68JD1FI8Y8xBB+4XvB4RfEHnDmasBM4zs+aXTONuE2njTsvJeGk2r+NAJqaYij2kUH62eFh7dF1pPOX8n+7AMEDoH//jURUyZLlzRdGHLhkmVNmTNN4hG0eBGjxXgbOW7M+BFkQYQN19QLeRKjvDdc/q3JIk8eSotx3qzZogaMGp1gwKRJw7OLknomZRY1etSimS/+mDZ16pTOIClTqUpR5PSLGaRbi/IzYgT/45YtGPfsoTcPrb59Q4Yc3bePIKAsctBmyTJPn74zXcJgfAt3670wZ7Q4dKhFTBh6GO/FtdjmopZ/dgk67PKP0T/DCi1KPvNPDMG+gLiWNm26TZYz9+7lsHjm878cs09fFCgwXpMzCLn85Mmoy0OJFE137Fi7ycjgJU/LK8MlDkSYRuPQ3NLTDEPfDtP8S7OmdviuaJ6Wb/pFalWqf56iER/+K1iLXsZe3POPXv60bN2+1TdPNXrk4EKL/NroIjaL/gIMJTkGy8IwAhNb7CJ9/pkHv8bkIK2vNsQQgzAttLALwghNzMI7Aj37sI02RpPtn8bem/G0EcNgzbV/wtCi/y/ZcnzvNtAIg5ARMPLIAwzghBOjifCM4wg55bhYIw6u5ImDizekOyqmN3wiaAuWePrujS186iIUGtX8ZxLz3MSDKkXwgISqQ8qbZE2u4rvIi/sYk0M/fdpCap+85jmDizDC6E6OA++ykKAFQdJHsDNKPGzCkwydJ79/NtTxnxZBDHFEEk10iMQUtYCNRRf/ASQHOVjrNM9aQcqBMtYsOoig2X4EEod4DhqRC0bymGQSJH0yLAsRJTrjQ+KQetKj05KDcLkqj4qjCwipJEomeepRaI1ybdrisn+2iMOk3tKAztbT1hjDzfLGOESKQ8hj6g+qyvvCi3iN2jOkPTaUg/8uSJHKy9MwCDwjDS3acCjhSP+qsNJLJVTsqE3zuwdhQBQVdVQRSyURZZRHfBdaMVpUFBBAZJ2VQoEFTm01XV+VuNdfZwwWxBG74AnZJFFt1uSUVdaijGeZbBIkaiuylrdsQxK3ujeCY+mN6sC92sx/lAjljbJr+ikNoUxaQ6HvbN6qzXqfUmSqPpzaw98730aJYJD2AMTDf0x2WWaFQ/oP4dQeiri3NmTF65+/9KHnwQgR47g0j/MLeWSSYTP5ZKVBL4wLaF2EOVbW7qF171oRulFnMSTz0ecZc9vN3SKTDC4LiZi8aKMmDIKt6aRTdrZpVoUPgtranLuUypTqoan/XIa6AO+NUKo7SaV3h6pOifDjMNP7ocA8843WZaJD7rupotcpfKUwjw71Q+r7I5ARDqMNwk5EzHGG+4+A+KeFdx1QYmEA1DwcZCnLZUo8eRngxzjHPw996HOjI9HoVuU/LrgMZjJTXX5qZr8Z4QpFqiMIYnpmq9slJDhdYEQaGPGQiExkakgR3qiKpwWXQGQNJivDP5IHLeE1hzcOiR5MqAcehXRBLOXq2tcywpB6wGQoWTTfl8xHECW0bV0mrGL7nEK3qZQHX4NwkxrEmBH8YYSEaYkUA/tHrLY9BIBhEFkdfbIs0EFIMxsr4YwkyCkSgixmnfvQqEjFQRHBpmWI/+KCi2KWOpoNso2nCUPvVBiq2fkoXlB7SIkWYpem/W5NO4Rk08rgSKax8lnyEB7UTpLEKZUhDuUKE9qCs4VyKUFbH+mNEmBSTGPKYw1n+gcV2eYT8GSSTWRcCt6oQgankGEqVzEPnqBJkDdeRD94YdBH6DgkLrTtXdxBWx/f1SzMxUuCE6SH/hJpwQsyMoOPhOQiReWQNsBqZqtjXTdPY6k2dJKFoHQhIJs2Gc1cj4iZDEJB5EE8WAoRlqxkVzEv8rxzbu2cPMlJF8zgyyl+JJlrOOZKx7UQLlDxfAtRQibhUC8yLOIQi/CHGafCHqZ8gU5SsKZ54EBQb37lI/1AC/+G1LIVyvmvbZvYRE8ecgYF0sNweYqnoUg4z5CJzJ6LxCAkySrWFrloYixB2CUxaVSk2CUHKmwDj1pYq3jYRQvDY+UapmTEeAykjUEQ7GAFKzyYnKE6GVVs0xILoT7yBEkjtSEuMxKHd62UpV5iSH0y8kWfcNZ++yoPT9FAB/VI4Q99wEN6tGke97j1m0r9h4XWspXJNUp2WWCEVMHQrcsBKqsR3OpW0dJVhG0IrGEV63L5eVZFKQqQIyShW03jMC10UiI9q917mmCXMwRLlbCZDJP+ClhoEpawIJnlYasTh6ZpCVs/OVayelvSNQATI+PqwhUxa8yh9Oac6QNJMhf/8kz1wQ8r/ZqKThdxWvUcYilu+gJ1/4HUi/SjHxJcy6A6RsDcFstoqnFRxcIz3OHOtpCG3NxXn3tWFy/Xxc/VYyIh1IauDpTCRkHUQXW1ox7RJk9i8O5tgjfLwlDkNjigLnoHy6V6lMEmZsDJfJHECPvi9yK9SV9//VuPmW7tJOM700xbF+EyVgUNaHCwemparwlT18IW6cds38IWDhsFcfwzp2aaRTgS29bE8cxIPJdqXBbL2MWJfpmMK4kwXE3yxjneClxVSBjt5slSWRBDkom8ESFvOsmSZrJgwzU9l5yzSEVTki+xTJBkcpbLWByKVsYC2o9o7bPBFJiZm0IG/zLAoQ92U/CardK+N8N5zn7ZMH8WxikH1ZEyeQSuUSQX6OAOOsUq9ipykytjbzM6ZgANaGFsjGNJo8S6KgQEzxSqpkxDhtPxbla86a3kbo56oiDBWk22YAbd/YZ335rJuzoa6ywqoZRdeANMMUJgiNoMwW7CJrGlMAhem+fY5yZIP+xs59IwMFSBa5mr7gE5kCxoQVsFdLYPqT9ud/vbM250QElIbnNrHCRi+KAKZXdpGuGgVFOr920QMnROSw1KrRs1LTvq3lPLUA0L6eUaTkoQheg61uIyn5nCBB2GX0QJ5DMDmW0lWjf1geJCJeNrcf4Pjncc7m8pyuReZc+Xyf/hQk1VEMr5Pk6uDLfQLT/uy8Nd+Jmvla30KIwY2tp2jFAaRwkF8s+CbhGj46C7oDbvP46OdM8fR02EnSXT920Th6SIC76MSDDNJGCCZF3rJrFs2qCYRZTgOg1bsIet2iw3MsjvtHggoz+K6vh/wD3ufR+nfxD3VZk9Ti3KR7maAF/crrJm8Mct/GwGrzqB3pgeiEqQ8TMCCALxXAs5mrx4cIBXjFxeyWUI9VY+X/+N5Ls0QRj9LC9CExSFydX+4Q1mKiYEMPcKbjr+AbO0SF1yj21KwvZOwgvQp1bixqa+YAwaTD0g4Qv64OL0xviQjyDYQvr6jqsEBGECpQThqfr/rK/lsC/7us/7vg/8wo9AyO8jdE4MVCcHJG+7qsv9MuLyim7zbMf+8I3JZGL/moCJtMRcbKhrNuofLCtdLIKjQkKLTMInsMTrIjAklMBdxm5NukBuvkBfmKIPJKEqyGAPDsFu5IaNQhDuTqIEmW+p0iL6JKV1Ai3wbmwG/5AGa7CrQOMGcTAyuCCuWGOufuwHuSI1VOMj4K+7mqAI34YjkBATRe8i9k9cysa9niML2ou/5OHqEFAmGJDruGUssvD2wGj3aIR93sSnmIIOgkr4+kX46qV+yE8ECaUO+85+rK0PazDxBLEGd6UQDTEHHiJGWGNVfC48hEzTIhH+2u+7/84tEwdrCffPvb4nOrJgKIzJTAxMARMQJVjx6h5wmRjwJOyBfBSORiwQjXLxPBSBPeBECuhxm3BwDrfiF4FRfaxtU7TNGAvyGB/j/AxRB1XHx+oqPDKN6SwvSIyulQzxIrRxGw0Ll4xJS47JS1jCCq/wFLUomVgiTMiMFU9CCcxgWciuNubFPPDmDdFwqPxBwWbyXwKGFz2OK/6R70xIIO9wGAuSIAcxIxwmC2TE+AoDEFSHMFyjNRoRJXwlBzItHqhSIs1r6JogryxSCYXnyY4pOvxrIVLCHEfS9hSia06PILLw6ywC93QyPOSx14qNKX5vD+pS7dyEm3byznzRJ/8vJhiFUSiFEvwM0xg/AimVEueWMYXuYd0gI0ak8laosgft4iqpMt6oMdSeUeO2IA/4AA3G4AswEA34IA9sjSBmqTqOqR5Koph6wywL8CiysCRb4uHaMiVBwh0psDb4weyYQs2koA/oAE5w0h8gwU7chO128jQCUzCBkg8Lkzqr0yA/wvyygDIJamJy5h5kBypbAyksMweAzi5wgDw5TSYGYjckrR7yIDhdaxJ0zbDiALOoBCZSijZFsjazUC3VhQtcch29ECRWsiVrQynKIz2mQh/RsEHPQyu8sjag0+8C0sSqE0MR0yjx4+bkQjvbrjBgpwdDoxnH0zLbb97Iszz/1fMkBiI5coigmiAPIo6MxiAPaLMJwnGl3qAMruSy9vMs+zOLNGsK2fIi3BIlmqkL5LI0wKA8yIBOBgE5f4pGmwIMJDQ8oLObLjRDuzTSwOnmUIg0NC5XvjP9mpExp9IyN6l3VHQ26K1F2TMiM2kN4nP4/AENUCQkV6ppSHG/gJQ2t8ItewN7cvNIdxMk3tH1uCIP7pSM8gBLxcMnjaoFu9Q6b45D2+oeIKRHcmxiyiDyYqOTZII870o13PRN4TQkBuJDjIoRPtBR/eELMmM1MYsmeqNH97Q2spBIAVRALQJRPyIU3GULftUowABWHfULrjRSJbUOqYu4LBVDMZUg/6YrIzY1USQtRBWRrkZVTalSGsUAVVNVVanxH+LhDGBUjJxU4irOH36vtcwDDGKCCVmKUBOQP00jCwm1MkDyI5D0JJSUHJHCDOx0+NAgQs/NCxaWSWtF+iQt26S1MIvCWhmjxnKsTEWEILw1JMhTGptgXMm1XN+PVedUfRjB9/LlXVGrfa60Xo+pDH5UV8MjCxEuXVZCT0ECYENCUUuDHyYhWSWsL3NsYcViCxa2WbXKQiSWOo2iYi/iHsiNuj6VNXZEMnWGVKnSKkNWZDcTJFzUZPdmDYJ2Ze0Em2ZRwsYCs0pxZsUjC7mOICBkUTNiZ0FiJT7LWGXCCyYhFuWGDv8moWEJqmiNFmmT9m2Y9g6PYkMPkUQJ6jl47CnRtCgsM+i4tmu9VgiVLDfaqAkMti7NlmXbxz3OchyDKV931XymZwv7Vdf+NVgzQmBPowsmAQ7QIMK+AA3gYBKq0KgGl3ADlyD8xHBtRWKd6mk7o3SMKlcic2OxtmOpslTQ03JX1Og4syDUdW8a1TzwgHsDAU7cEE6k1HOZ4kYvIpnW8fWC1G21CG7FJvWK4nUxIux8wgzm1jQuI2/FyAjowwz692iB9x/ogw6Ed3htZmJPY3GRd/zEKN3uIXI5tjLLE6+m11fg72s1F3ttRh6qlCnSbiogoW/tpf9+lChOl2ZTl1v/0kBb+Mp+XXco7OEVQ+INWPIAfzP38ndv9lcs/Pdo5SNRS2oXC1hCE5ggEOW6MmnHWiOhIPgjZoNNy4CCK/jyLvhcq6V1tNc8PHgqDoGDmaIvFYK/0jdQacT26qF9AymGz7EeYBiGUcILnmhgkcJLirWNirZ/S6pwT6Lf8FiIm5WICfGIxQhC4go8JTdrH/EMoliKpzhzMTi0yKhOfK0PeCof6+W1Wq8cy3GMyTh1W4rMwFA125GN0/gj5jcN6rc0JvC+7Id/eRiAMwJdSOqV+xgH/1jnAll9rCtGPJOJMyIHwlWRF7l6zdWK32YLho8qJMEp0K6n5KZ+a3g6THhG/8r4Nl1tSrZilEk5I3CPjpHiJvgBh2eklf3XC3xYb7tADaCIlgv4jycmKe0HUXYwNfqilzNC57KgDYJZmIeOiqv4ipF5KpTZKagCEuRmEspSjNVXTSKwpVzvJLE5m1ECXQrMm4MinE/Djsl5lj/CC6RMnddZiP94MdVnkKN2dur5IhAlC8JAn/e53i7YkfeGDwBaCgSaKcZgPeQGDlR4Tzc5TyKwmt03lGUiolVS7Fr4I7IjfNZknPmYKzpaJxK2wr4JpA1RpB9iO9/D/CSjQ5q3KApjpVvapUeWZP15b8a3KdSwpp0CHyu5XvaAHKV5TRjaO1yPr+LYKIo6JJS0m/9Bgh/4gaTA+T2a+mhPwwikTA3MQCfjg7Gr2o+PNy6w+m0WUmMN+STAWnrFmnqHmZilBeKGT60lQZI1ELXINuM0uXUisFfBJEBNI5u1Gewm2lAJ4q/fgB+8RAD5QV72mKQUe6Nl4ibS2Qv+mrHjzLGTFrJf5SHGNF4GWS4sAqXl4gY1e6wxN3PP1bN3DbQp7g9qEuMQ0KdrhR29w8BAuTb02q9pmAt0m7bLhmFP2Quobiv4lyGcOjxuIg3UYAv+mriN+8KOG0uT+9E6NU8c8x8+IzzTFCM2qRCp+3LJuqyP6G3INq092HOP7ZjUJwJDAaEJYiXw+iheO0mfqFhvew3/7PiU/xfE+aTf6ruwxXlo9Ju//xokvgLDADxSBZxTbUUHcYVE61lxEsTBN5ufV1XJDCKD16SLn0KtiVOSKRltn2IMxPj1NDwC+dUiHvq8Rxklws56GHaHh8aVgTfKrKekkNpn/wGd2cgI+Psk4iPZcDzAk/ti84QphSzBQ0LnPugihrwa4zRYJuJt0JopQvspAqFOLJnKxSgCbTaYsCSMwgO9b42Goah/0bm3SEosvMD16MPMX3xGiNs7Tvkf2PvNG1vOH/vm6pxGDHxVGqOX91wyLcLPLThOD7xx42WmycjQsaIq6oUPUDuTIjBsLuLDt/y1ubyzJjq/dyIn0rmk/4w2OzaL09Vkxv8BJ5a0KIo71Yf3jyEk18VD585gnr36I0CRwLVLs//81l/UZrBYbnq9KXA6b7ZJrvcmAu1hIdJYbrki2f+djS+CH058aETKSJ5dJ6JO09HcZ2dct3FCv7cd1bvd25N78WgkREUE1p23V8A63dVdrG0dJXCjDMKWRo6Z1wP6KdpajdzEDBTahIg998AF0mGbNwEe59tYCd6AviHrSCJrpEBdPBzezSF+qDGiv82Z4iv+5gpjgU/jITpk430ZQnIWI4acyCHcXBvKZghd3v2hrd26PNDg3lO7i1LYJY+9KHKe7e1h5+l7ypCFvtL5fxm+K4het984J//MQOk/Ysb7fumZvq0K45NO41M13rJ7peq3C+uz3rqN/MC1IMlpBN7tBQ2aXBEW4Q+AL1+SdRJgntG7aAK34GtYmKjbPuffvsXjHlmQhO4X1u79Gu8twghiHJVRgugDv6r/2IjDg9w0beovgsHP1Jd9hXZampHXUyAmUYO7OOyJDRLy0jzGwD5P4i3Fu4vUPG3AxR11T5RRH+dVPztY3/UT+3+RAu9p/CKkrLd+u9SvXfcd+5ByMBlLo6pkw/uE3yGe/vgB4p/AfzkKGjyIMGEOHAwbOhwIMeLAhv+0lJGIMaNGiXn8efzoUZGUkSRLSvnTB6RKf3nkbfxX76XMmRH/69kUuCYNTIhKuKzRaC+o0KFEixZVws+Lly1m1IB5muepmi5mtnh5M5Of1q1aMW5xqsZLVq40y5o9izat2rVsN9Kjd+8eRjFcsqhtw0VLFjFy48oVSJeLGIwHIyo8rNChYhxmGf4rsyZeW5lN0Kz0p+jQIEh/RuLBIwXSl8sg0chzuTHO5LM2YwrskuaNa5xcsEo0ijs30VBvljaVCkbN1KpWN3Ilm/Fr8C1jt65+Dj269Olu/WLEaxetlrxZcvj9+y9wG8IGySM+v5hiY4ZNsjShHnHNaNL+9kiR5I/MSfoev2x5/1Ics8EnUWs4pcHFTQLFsQUXSkSkW4S5KdHb/z9mpDGVcMNV9c9PER2HXEZegMWcTCASiGKKKq44kHUSYZfDWVzUVcZ3f5UxYxjmxZjReeilh1ZD8WhxxoqM8Gcffvr9wZ8/jAAYoGosCtSaa1zEpuA/PZU4kIReFqWVF2noZEaZZTInFj8DgdjVS1508ZQZzTk3ZZ123omWixGFURePM/GZRRZh9PXXdoLu+JKPhwGZlmNnXLQiGPQlmV9o/IHRBJSpQVqngf+8gWCWHdbW5ZemBoXUhcRtwapVSrFJp0xmPNWFEXOqiWeuuu4akZ4QAQoITYZqYWMOWfSJ0T3lyaRoQout1VATZWiKIiPzqWQfJPXhkdJlX2BKrf9GcdjWqadXrpElgw4KdGq7a3TRhVLyyvsGm2bNCka8t/LKb794+joQIDMGK9OxWbTxnbHI9hpXQWU1e9BDbAlZxmDTBYHxQO9lYVmTpKHxX7ga1SPbnZ6C2oU9WW7JbrtfKgGvF1q9sUbNb9QbIk3KhbWvvz7/rCLAAgFyrI4b8VnXd2Ecq0WyQs8E8UKOTeZokdBhjHWmWmcqTx5jeAzSGC1pbdYaUpar4BZpeCHqGj65bOoWVCmB1FZ0153zRiMudyuuQP8NeHRPK2x0RmfMyFdcSHMKkY1sKRpdtFZPlvXWlmsdxyR0eEzHJHFsfdYajE/pKcwpi9qgEnBL+Ab/vG/cDTvdJ7oJJxhymnhc4LrvPtngx44nUUFZdJGFX3gJ5vTTgQsphshoXc71adLL04T0XEzCBxpf+zMGHWRMwiXZZslDc66eqr2Fp1qyunqEZsQbe+y5v1T77bjHynv++pel/O8DFQQIQOClC2eIi3iSB579/cMxmWoLxqA3vQhGsHplOEMTrhSHIGisgWeRRxmyYzIF2QNeKhvQG97WPqO8yQzxk1/eIoKvWvVMgTSsYfIyciwx5AAQYQhDG9qgBQT9I1g5QqANF8iQeDhvJg/c2vTOYJMzxGGKAmqN9MpQBnnkxEMCAV0H45CFAaFNIOhT3z9Sl0KimO4N9mjh/91eOJCdieV+bTqiHY+ovO1owYdi6OOVDnYsLhSuccrLn5CW+JIgWE56Z5AiFaeIxTI80iZxEF0ZhPgPAImvg//Iwtns5KkRdkEJ6rMH+9IoFLltAVVuxJvfILIzLhkHjnekyT5uictc6kMftUzRd4JnMDE8KohpaNo/BOmnFhXSkFNLiyKd2EgqShKSkcTiI8dlNtjUg3qWU8tpskCuELpGTOnLkj1OuAZU2uNdo2SlG/EnkL2pQZYamV8vzZLLfOpyl7u8J3V+CREeDo87V0IQgsaTzH8A9I7NPMszMyUGeThSktWsaEXj8METxuYf0tskWk5TM12FEjakFOE6a/+TRiW8L53ubGEdBdK6ONHEnv6UiT5vekt+6rSmgtNTDviYhTR0oaBjeowY2hAGHjmul+oxy0OrF02LluFmVL3ZVCO5hkCloZyn4SgiZQJSEOLJUzlJkIFSucoUyo0LQ2klUiJSuy7MlJY8lQhOcarTndZ1NQD9aRvOsJ0xPUWoWdDCUZOq0IXWsqk0eapEJ1rNm9VsspOtal2EOkWbdJQtp/ngrqr0GizdRChv2AJL4da6LvCjra2ECL54RsdX7lUjd8VrXvk5295Zh4di+GBQwZCHqBCPSGJIqmLv2dCZQFOKkaUZZZ9L2WON6Q3TFJD02uIST35WQaDiAkxsMpT/NWyBjXB7X1qF0sKIyHGGuaVtbW96W722Vy3f4e0HucCI4EaFEYE6Q3G9E5e9Jvcly6XoVJ072UApWMGThU0ashBJ1Wi2q6j5qDy0K1JPXegn4B0Kq1TnrqGCGL10w4g86ZkRms4XI++1bXz7ueK0+MW+x2IEcKNCWP8aN4E1TWJZtPbYyEZ3wURW8JXydbPHTHPCXU3LN8M5Vu4OtYpqNG271niUB8XHKbab60tjbNcWw/fFuAVznvwK2BqDgRFjGlMWzmDc9uJAMkyEaCMrWjMit2pGM2qV2sCQhspSVzVVnJ6TtchF85mrCxwuinjJ+yVVGqXEA4lpl9lrZoiI/9nFZOZlps3i194GigtD9e6YvHuw+c65zlxjLlbzHKgG8XnWfK7dFrIg6Opu87oWLh+vTkbCfxjlw19K7YhZKxB+xBDKKaZrpjc95k57+tNl4eFffavgini3k4UF3pQkBp9Vy+SZEsXoq7OaBVnXGl7w4jOtbo1rm1kzs4buoEsSrei0MbplbbWyhFTKaNxoeQtSmeNLVEztgUA72tJOeFn4+CiBWKRiYtgOF86gYG+jSEjxiMeA7QTkR5071rNmt8nhlYY8IIhVgaqsruvdwXqYjV+lC7ZRHi2htU4olph2uMIXnk9pl9nnG1GWD9vQx0b2Eak+PNYZ2pDxjXd8a//xCAOd8fRMYZp7qrBWt8kZAXawwyu4pYZ3rqm46wqPT4ufzLdrVMlvD2/h2GCC12pVyGUUYwThRBcI0IOuUzGAgQ9kGMMXvjAGMvABDBbrOyGVZe0fSj4MgPBODgwlQL3sJaGrmXMThNlI/zYhCFcHuZ2r2fV1dyHsrLdxHhjRbi6YXd5oT3uv255vgZhOy0c5Jd1CAfxQ0I3U5x2Kpc0g22Z/2fF+//s+6QEGNGjkI2gAA499nrAd9rCHlQewARH3DyAGSofQ6Tjoq6n0JpSeRQ8Vw9adO+oZwav1rL8xu83Q55avwapo5/Xasegv59MFJWIUpbUGvIFgN7NCdMf/D3HFbHvnbETnfLoEBmPwEioxBmAwD45nIw1jEB0oF0STFzESBppHfm0xZ8JUBpoXKBYheuunIg8FWalHaqtXf08BFfvFbvkXb/v3ck22dp8SgCIEL7xXFA1SM/OiFLCxBiOmUmDwD2rwgBLBd8zXfBPYBmQwE5dBBhqXcCAIhnpyOIfyDyU4fpxXFjgQBk0wTIE0I4FSQWIAgymSdSKHRbAmf/MHdjjIh8EVdv8Qe7fmcrUHhOPzKWKUYa7xLlyiRm9wJn4mN2lgBvWiOgQXHAY3S/BkhRExgfvABfMhE6TxBdvmcGEYhr/idDxihm+mFimYZqQmdnUhOhY0hwSi/zUqiEU0Y2Q1GHZ8mINRsWZid0yyJ4g+uGS2ZxaU9AYC0i+gJUq20VY0IzdUYXJjYhWllXczITvLt4mc6HxH8hEY0Qd9MBD8wQjYZ4ogaBiYFzC+dQaMYRbxcG3HsnpPAXs0Qot1cot2qIvploe9+It5MAnAGHaBWIz8V2iFKBP1IE1V1IwK8i6kiF69EYldoCHvphxQqGUbATvJ141hBnRcoBISMQZ/wC0C0SSk+GnpqI4SERiNt0C+VQaD9BJK9ChqNgmTMFhttoO0xmdFRmSUNXFSVUGhZ2Aj5496aGMBKZDAGIw9eZCDRm8KuREM2ZCikohW0gXk0kbSyBxcxv+HFvkUn2IPLxE/H2lTQNcG1+IREqEIkIAHg4CS/PEFMJlpLNmSqDiCAYVxhUWTGWGTvwVcOYljQuWTtHZy7NZmi8mYjemYj9lmvtiHwZWThDmWYheI8YaQzEiVGWGVhJZZWJl7n0IVXUIh4vU+TqFfURFc87QGHskTsIOWMwF0+kAGIxkRYyAJcCkF5OgxZLCB1IaXYGgYOEKGENGXe7QROIAji+l6wFgXRKJ+k9FxU3eLuFhNWgBrbliDizmZAjkJeBBcOFiQZaeZUsmZaleV1/QPofmQCrJSA0EhvqGalTmeVGFaU6glsjmbtLlwkhKOGCESvAkJ/wA2UPiFw6n/jgcRGJMDEWLQgjSJAxjXZnUxar74YBU0nSjCQZn0HrjYIejWIEqJg5RJmE6JmeZpM9TVnulJE9cEmqI5mq1DivPJFPVpmcORnxjRRnfTn2WxcPSwPf4wlxBhH6EBGr0JNmNwfWDGkonVgQWhhj0EdXUBjxEBoX75DxTqZmcQDyp4LIAGaAW1Fxtqi1ACICqIEyLKi3v4i+IZXP9AnlBpF/vHopklEOopLuyJp0NYD2V5TPumJRXSFDgaFcPRIVBGYhv5o2m5aQA6l205ECKBpCOhLQeKjsSpTAGmfT70eU0AROCHEYeTBoO1FwMhj2BqUA8WVA9Wi9IhBhqUSYAR/3GfwqaAaINyChUnqqs4KFTHxHId8imc4hp6mhEwinY/A14wBS+6Vz6pGZBqUBVe8Jqlgl6Nik/QJn2RSqQDcaSVOhJwADbbSnTHtak/tYagp3TCNCPGNBCkWqFa4IXpSqoCAQasCBtiRSDN00WAoWRCmB3eJVfn2Kv/MJD2iqBsNlgDeGsQQays8Ugtioi/9qeAKjdicZq+IZZ9aDtX8SBFga1osWliQBoQQanguh9g46A/qn1/FXFa4IJ9ZDBhAK8PZjFAZBGSIaXpSmqPgiDN0x6YxKEruxF6JxACORBrJhEVqq9rQUnuObFUAlqkExS6V4SDuhQWYpHCIVdcFv8WdBeyafGolwERdEASf1B4J3ubHoOg2BojSLeCC1YRFJcFwAVop/oiK1gGbSClHUc8fpQG6udxQdQFr7oaQTAt/yCr7zFFjyGsZ3RMgCgQYPcPcWqPlNus2+ZgpHg2qPFVA8GQroGMI9MaVKQiFWuxAwgRS8EccqIGFsIc9QNiYasWm2YIZDupUnAI42iSigAHg5CyTcIHIbtDcNs08veGgMiYTbsnjwJnC/EeZdBxl1QGDnEGY2KX0hEHRbK47icQXIduw9islPsPAJmiM3JGdlFQPiFhHNWvCxkTEtSZBfKZd9O40yEUVttOGetn8GIV+7cGrwsGRku7/vleawv/EmUrBYpABp3Bm4MAB6CBwPShhW7rQ2kGiGFXqmM6kzlwOFzghRIRBoNRXIfTBA2BIIrRBGNSvenhwi5cnTHccR5knZ9XJK9Gcnm4enJqvvfHgyE1jXUBEy7RoZ5ZrPJrrDIxRUoAfK+jBLi3Fvl7RgOIKpIlLw1Cra8TFPKEbwVswLU1pAEqEHhABkmKsgyMBx5jgRYsTHqxeuM5ptKZVDFyLKNjGD8ls1yAAwZhF4shGYH2woHsEDIcw9KifnX4fjRYg1DYevkSe7Knf3YKGaRWF6pRxDUxG0jsf2oRB7Fzv1Fcta/RTm2EgJLFBR7bVsvmxdlaW2zZrQPxuyXB/5sksbse8wXEO8J9CSf6xQjRaUFzXBCG8pcEETEz0gYe58Fp8I5N9UdBwnGE3HFbWsMSJWRsKn9yenKAVmqQrH+beV+VLDJ9mqeanMScHLGgDKiLqEZMrARWAbL/0IBxApurDJI4xZYSgQeSIMtmfB9p3CS3zMZp9sbQWVi/LBAG8ZL/cxhcMJMdFwaMoceMVVaGexbRjEUdR26udoc0qBMnt7482IPU9XIyx2dvUGHiPBDkXM67IsWBCmlEUVpgOxABzDf07Kg3FcYYsQeLQBKzfBJ7sKS4/Fd6gV9LCWiP8XSDJKVMcx540QQLUXVLg0TJdUld8Lk0Ec1N8BPWWf9u1Yxux/IPCIKYQsVy3byZaecS3wxhkpQR5Kw7UhyRAjdeRCERyiGoNu1eN6WFkpoRscybtQw2+UG8AtRbRE3JDnYRDx08Hhwoc6zQdLzHUjqhj/FxYjAmRKsW0Qxh8VCHGg2+6CZXxMhnrEJYkUxVP3gaWxMHNbgFUMxRmvzWoWwPpPbSHnZaofwh+IJ8eJ3X+WQIG9EHdGCgX4AHcLkI21PGHjO8Ql3YRXbZNIkQS4O3Bx3M3YEQOJDCVxoRQQAbdpwWFp0FnN1qdpiL0XW3QJmvlGVVurZr1dNA5lZJfcZssL07+VuWVIEb4nVsGhFTW8XbGXFTbavTkoAH82H/eP2hCJIQxqQh4I2qI4Nhx8SkQ4dx0Bi3QAoNYQoRVB6n3RHRzG0RzRbuoeWmZOf2LmBgoUCJICsaYaHZUdUzLpJUYWUga+iS0kisERGkK0MhbKR220IRCnPd0iICFpj43z+HS9lbjpihu93iEXBwCFLgz02C2WhpdPQaen30HtiLEBlhEYglEJuXEJbdwh/XSQhC0TU5dQwNGCReUQgGaNBFWfAiyfOWkNyETVmEEWD0hqohQTQRQTKaIvYNiGxlFB1C1y/xZ1t55Cx2Sx1DGmMQ5SeBBl9AqQruMeTa6Jv+N6TAUYIeHTxuSgHnaHOX6MYxK5LI6RIBoPRhxj49/+WXsuqzHjj00ARmFOqhnFoFOF5xB6gbceLzROv/IKRNArzgegiufBlMOuzNDjjygOuTIcWSVmVc9M564xT6MuutThp9YKlJGuv00eDOTu5+Ch1SbDrCxuPiBSGnrhFfIYn6Sc+22SQODBrJ/pvBWe773l7Trrr8VlrM1lYzARvCzulryR/6wZuBYMtKzu8Pf0/ofrXq3kamlRHuJBNvgiFGztsiyR+LAJeDADYqCfEl70/+zohluQYcb5r8WbRjwuiNDo6ksQdw6eT0QbAmr/MRj9vwEgoAP3cc6fIbcSHSuumfSB99IK50SfI77/RHBNf/jl69bpZDnxGtY42Nnv+Fgb0SZODwTw/2+tPStN0y/0CtNBE7GQ8b2v7fFcj13KOBYS/3UB/KEclv+o32bzQTamP0Ry4H0Zfp1jf3g19DLf0+WDH18i4R2zjPriUcBOzFgkd4hod4isd4hI/5ha/rQ0XxZt/FsaX2U8HymU/6pT/oUuzj6t4hQY8WVbi6sGEGo2/6s0/70r75LERaVJ8WEUhGWV/7vw/86Jy6p3VGn18Wrl9pTfHvwc/8zb8RUhwKIla1eM8WyB9PFsn2zq/92u/vXpD75ML4jU+FmugVFmkGtrL96R/8Ei9XqGJaHQkr3AgR1i8Qyg/56o//c4/yParfABEqFD+CBQ0W/Jf/UOHChAcZPvznxUyXLl4gXsSYUeNGjh09fgQZUuRIkiVNnkSZUuVKli1d2oOZUAlFfkr+vdnyht8bnQd58iTY0SBHLxTNWHSZVOlSpk2dPoUaVepUpjDt/VNSdAtBnGt+fgWr883HoRu3UNxCVe1atm3dvoUbF65VrPwoesWZc81eL3297AWMl2xZjRO7pJWbWPFixo0dP1YJU4kSfkXN8PSyBbBfzn758hyMUKPELkchn0adWvVq1iztTQ7Fk+JfL1y2dMaN++dNjoQzFi2NtPVw4sWNH38L++fZo5lv+90SXXruv6DHbnRoFq0R5N29fwcffuPkmzz3dkkTcYsZ/+nt3T/v7DV0UI1GDAsXn1//fv6LlZtfI7M0DlvvPQOjw02++fjZiDTT+oMwQgkn7GgNm8ZTIjbzOEOPPTPYW+9DEUF0L76xrhNKNI3OOgw/Cl+EMUbwolPwov/e4Kuv6NJIY73SRgTywxI5kw/F3ny7yAgWEZOxSSefTA1HzYxcaLKdcAzQuejQK+3HIIEc0jMqU1QRIwddhDJNNddUS8osLKwyQwB1TCvENNQwjCI99wRzOiLHJJPBBie6jU1DD0VUKSXWyOLNsW7kqz0R1aC0CzUoorRSPkVs78+SkLwoxC24S7RUU0/9SAkcHR1oTi3N+OdD9O7MtNZMNyURvv/qPgX1ocw+RBNVYYdFVcopc5RORD3VAMNWZzX1stO+1iCV1zIvkoi9YInltts0VV3Dz1dltZRZMM59tlY9ORXXC0BDyu43Ib2lt14nJ+MpOi5si07Ef8ql9FyBB25W3WjbfRfeXhkyQqJC7YU44v0mUxXLLfYdEdNaCebYVqOEbHeleM2cTmKTTz7Oyjn73RNgczkm2OMfpe0r4ZFGxhbBbVHmuee1ALmKIXw3fFXjTAXOI2mlkx7YYHZ1tfnmhRlybmefr8Z6KVLoUmhoZPud6OiBlya7aU2f5qxalnDGtq+s34Z7Kavo8jpLsMMOGGmyy0b31plDVoptX62Ou3D/w0Ga+7WKIwXb6LGXnmSSpc2+9G+d3WZK8MM35xwlycjDclzH9c4jctMn77tytP1ySvPOX4c91aEjEh1g0ks3XXKlzf6YRM6gcj124YePMyEc6QxxdDAgzx11yo2KLiHMgSdIbeKvvx70fxiP1bC8z2X+9N1jVuNOHgf8GMGoVareCOuxh5/zC3lbI6J/orc0DZiVzl13ps/9B7RaNsA+wccl7kNg/BQIu7HUz0fnq1VCwLc3sv0jZv+KlUKYBJ27fQlkrDMJAt23QBIaLlyGQR+sYNUFhYAhIXm4CAwlyLskXeQNyPPg6qbHERGW0Ic9W9TF1hU9hrAwgAtx4UOS/3jEhFCKVkZcyPoYcsNx5RBEfnmfQhL4Qy7SS1UX2xe/5FO/hCDGMAwh2AwBSCmFGBE95YMib1DCwRDlUFwJGWEX9TgsLXChC7ZRkE0a6LbGWTCA34NZwdj4sfvlqTT/EJRSOJOsp+lsj5c8lRbcpZCYCHJ7hEwej2yVSEWeDWRmXBfhJJkbTLZSWJ280tfSwiOjOSt1fjtYWgg5ESGp0pW/FJ5V5BQ65/yDR4581i0rl0v4UItBdXwQMKWJPWFSZmXo6R65ahkwXDLzT0Op48OmOc7OXeVzGjoelzrYso0t00u5+uZBCGIRTtGHnPeMWzU1BBx+ddCRy1LdiGg2rf+eyHOeTLqNQSOJT4ZCbG4Z4gcZuYA8fwKJUgW8HEEXFhR/JVSh8mxoSEuVOMWtgSLbs5t7PGgpgQ60Oju5FkR+Na+P1jSmIsUpf0iauH9VhGgUpeSI0pCrdr20oAsdTTjxY1ODijCLOYUqccKwU6uchQtrQGeOgPoePIVJTCAFiZJGRLiPOrWHUUVra6YaNE7a42KXgVSW6PgetGT0qwoVyUy1FRKz5jGtfzUOGJVwzp9sJjeSqgh1gMJUkUDTC08FbGQndrEtDFafXzEsdc6iq5oB5ahBMWhelSpZ0vJHCX7cwk5VhtnA4Gaz03JXQT9rT0iC9SMNE6gvS7tb1Lz/YV+ppaqVrsRauU7rfntZbE0vYtuP6FWcvIXuanx71YQEl2IFCQuWvLKGD4mFqUhlSGjDmq1eRte8kFnDvshYXevCBruz5UdakqvcIwUvZ5x67Hn1K5f0coFKVK0mxQby3p4UZQ3fhaRHxAsS5+p2vw92CRgBBeCHUowy8vStF4SLV/DWd2okE5WDITxik5xhX/NbCIXbSxALw2rDzJWafXPmJxLX2CV9RHFbVQxgC5OHCy/+sMJkLFMa29jIWevMkZWMtR0u2clPhnKUpTzlzX3iwlTG8rCGnGUuwygOB4Fsl8UMI4NsccxndhI/zIpmNstozW2G84ScGmc6S8iv/3XGc571vGc+99nPfwZ0oAU9aEIX2tCHRnSiFb1oRjfa0Y+GdKQlPWlKV9rSl8Z0pjW9aU532tOfpooTwGAJUJd6Fv1IT6k/vYl+wIETqu40J8jQj35cAtabdgKrac0HTnzi1pTOAhgmwQc40IHWtCYDHwyxCS78GtJgMPaxpS3tSbSmM151Njk/kQU0THvak3BCa05ZVBFn24eX6La3+9GJcJsb0mlQtyHa7e5Hi0Hd1aY3pLmgbj40It+P1nU/DDHrVr/634x2giH6wYcsIMESk+gHGkh98EVzwhBpQIJCPqEFQ2iB4h8HecgVXOa+hlnkef4yyft6ckF3mOUvh/95zGU+c5rX3OY3x3nOdb5znvfc5z8HetCFPnSiF93oR4d5uZH+ZKUvXclNdnqXoR71LE+d6lS2+tWn3HStk5jrXQd72MUudJOP3chlNzuJ75x2J6Od7RB2+9v3G3e5193ud8d73vW+d7733e9/B3zgBT94whfe8IdHfOIVv3jGN97xj4d85CU/ecpX3vKXx3zmNb95znfe858HfehFP3rSl36P80C96UuIenq0vvWpVz325tH6e8jB9nK4R+s3IgcxxP5ttJcDIMIwfEDYPvcXkYOJ09Bs319t9sEPQxukL/0wFP/4Ckk+F3iUBTHMo/k+e77w2yCGM5RfDGJoQxj/cE+Pe5whC9sXwz2+j7V53EP8Z9CCFrKQ/zOgvw19hD/5mz/6owc5iD4x0L8s2JdGUUAe4YIzEMABzJrnCwMEVEBGYITzWb4saAM5oAcJhJv6k4Px078uWB4wGJAsOIP080AQfJv6AwQSzAJGWJ482MAVVL8PdEECHEEL5IIT3D4cbMEddL4CrED30z70ccA2AITre4h50AcihBgjlMENbJQl1MGFQD3Ui0IprBcKHL/3yz8tOL/3SwOPS4gtVMMu9EJvicII3Jfz+4f0AwQx0D4ukAM1hL02rBd9mL3aCwMu4MD0qz4PpIcsSIju8z4+hBh9cMTZowdAOENAKL71/6MH1GsD7cuCCGREenHER6SHNkiDNsg919PDQ1y+NujEPvxERzyDNHi9T9TDRESPLMjCVRyWVnTEPtJFP1RD7Hs/LggDXCSWXuQCLejFWVyIVzzDRSRGU9FFekgDMUjGX2QIQNDEZ0SVVpREQKjGPWQIeugjbTyVVhQDWPxGZ4QIOSDHctxFLuhFX7TGduyWTxTEeNRDcKTHXJyHNDgDfFxEZdzHYZHEMIhHhhDIgTyVc6SHVsyIhFRIROFFNtQIiIxINmkUR/yINbxIQ5mHLvhHiuSILRTJjnwSORhFjQQJLjTJNRHFe1DJkCjJlpSRiaTJiMnImbxJYjnGmNzJbv+5h5TUyZ88FVGUA58kymExMShMSm/Jyabslp4cSqg8FGlsA6SkylIJgzQ4yqnMyjVZSq/8SjV5yrE8Fak0S1ORRmoUy7Rskq3sSrdMFDHoAihsS7mEEZvEy0NBy71kk49kS79kE0DoAm+8S8GMELq0S8RUE71kTCjZP6x8TBgBTMmcTAqRAxayzMuUkDbogoY8TM4UD8cUTRgpy9KEkQfcTNTcj8w0yNBkze7wTNCMTQohzdqEkNPETQhRTdjcTeK4hy54zd+EEM+MS+LkDxNbTeTsDt1kTvHoy+cUD3rggqv0TelEjUA8TuwEDztcTu4cDv37TvBkjegkT+SgTuv/PE/vwMbtXE/jsEOmfE/kEM/rnE/FiEz7vM+4mAcuCMz9JA5sNMyWUEUAdYr41E+MCANENNCmqE+WkINjbNCmyM+VOEQuuMUJbYn+/M+U6CNA0NCliNB/GM+OsMMCDdGkyETaRIlAPIMUXQoxyIIS3b1jzFAYXYn8o9GMOERbxFGl4MAdxYg+YscfdYlDJNEETQgTG8aFUFIjVQhA0AIWJYlM7D0tfFIo/YcwCEmTwEY0VAiW1FKTkD4hDcdGuUWSHFMyHVCSUMAiDVN9XNOVJEUzVYg+atI4Vcc5DQl6CIPFFAkrRUg55dOPiEQ7/YcvHVRCLdSOYD87vQdBTNMt7GxUkmg9M50HBeTEf6DUSh0JLvTND11UTyUJu4TNEx1VUiUJIQ1EME1DRlXVjtjRCNUCdZzHWJXJw+zRDO1UXM3Vu5wH/YPTV91TX/WITzTRLMhTYjXWkShRQOC+VG3WXOWIe9CCM1BHeZxWkfhOesC/W3zEYt1WjljOeWiDM8jQRxxXbt2IOhzWJM3SdX2IUARRJ0VUeX1ISmQIh8TXlbC9bEXWflUJ9gPYexXYJ7zEfTXYgx1UhY1XhuVUh31YiLXXhaVYiODXi12JgNVYleDYjkWJjwXZkxDZkV1VizXZf+iHGU3ZlOgH8AwIACH5BAUyAP8ALBEAAAAZAkQCAAj/AP8JHEiwoMGDCBMqXMiQ4Lx59CLek0ORIqAwGNto3MhxI8aMbcRoycKFEZg8ecBwyVJGTBhA9xrKnEmzps2FYsrc3Ikwns+fQIPG48kzzps3OhfKWyrvaD2CTAcaXUq0qtV//NZ42WLGTBc1asCAUfNvy5arA7eo8YKVH7+aYc24dWukrl27/fKi3cvwYcSKFj92HMzx40vAciLS+xfx4TyB9O4BanOGZEmxadJw0eIyR0y+oEPTFHNGdEKhqH+animvjOunCpkuLfMmDtSoAmlTXc07oRmBY816WbO3SxeBbuGCOT6X393nvRnq0+eXHmLBhLO3+QgIsWJ6D206/3YcGZDIkVm6aObCfnMYOdHjmyYtGof9+zhS+5TPOo5r20pFZVRSA+Em0FG78ceXPfaEwo8XW5llxlllQZicVV6ocdZcNIV1XFt0PYdXP2hNRx1EgF0UBkditOjii2IUdhhgioXH33j0mOeiFlqwl0UWPP6oRRsKFmkVfVXhp6SS+xlZUz2ulSFPgFHVc1RBBh74T4JOVsWgPW5pBaFZFL7BoVVmkNVWh8sN1JyII5JY0D77TOdXRSBp1OIZfPIJY4wevUcjePNM1+VMfq340oqkkcTjGTGeJwZ8h1aKU2k0LakpfpbW1Np/DMk2kFO3TUlQPcSZ2ulOX4J51Bpawf8alpkXVqXGb2c25CFBb8JpxD95yUmddXKsqOeLMtL4kImrgmbddveUx+hIkG4HSA7/nEdks9zyqdCm4HJ7k39IqYqQbKrSBqBAWQoUxxr1mCuuTK3ao8RctHoBhly18qQWW7kutGtBc/n6a0EmnpjwvF3esyJ8EFmnohhZbPeSZxEBcgaPgDBcKaQC5SAyuEp6zFNrWpQBW2xZGrUuu1y6u0bMJidUrxI454zzP2oEvJNxyL2la5sGFexrzQznuN1i5EUmx2RZHHZPtBEJ1AaPYnyGtHyliey1plsT1YRrKctrkKgEvUsgzGb/o8QbNIdN0M0657wFGFv0e1OGG+r/jdDABBsNp9yryqFRYgLhKFEYWsBE9XcC3aMt4b1B6rXIlFfVBJSutV0qzaQWGPc/CHpOON114wyW3zWlGfTQHwYu9D9HZ66gY/8oSuh41WWsxePfLTYQII92bDtoIB9f1acqh9pubmu8/PxAqZouN+qp3523rb+tKTDRsht0l/I8JWx+wrw7Rqkc6SvuO/CQE3TP1ZxpTT5RLd1/09hlaBFHEwtpwvT+8a6XbWl0qNqS/gTSqtTljB9gqcoW0gAw1hEEcLyy4AIFcr4OevCDJ8LRijpmo4G4zzq/C55iDiKH84RhgzvJHwwbgjIpBbAJAvSc2rA0OgLCy3qn+5ID/3NmBjCwhSdA815CMOgmDYqLTlCMohShCMIqenAhk2mD8A5yQjmkUIUKYZwWzoCtGc5EhmZEyNhS9j+F4PCNCrlSqRTyrh5mTohDvFcaYmcTL6Shb7M7CBODFkj+TPGQiEzkFD8Imvm1gVIJ6aIWEgNGhUgOa/ZLI0I4o8mD1INHZQCgG98oSoS8IXpzjCPcgEg5BuVRCf8oInFukqY3KFGQ4MtgIXcyhF76cgiKDKYwp3goeuhuIbz7zj0mqcIVKiQHG9PCCzu5STFQs0D9s+Eo4UhHVKYyIaUzo73yCBw+0qQL3dPgIEFUlV+6E5jDJCbhDPdIZKZPmcxsZtUWQv+/M0DymgLRQik1ucaUDfQgpDyoQQbEQ1ZWT5Pk/EcXwHCTCVZwlwJZp89u8s5fAtSYS7Mn7noXmcYFDzLxS8glh5RJTeJAoNSsoUILklCGWMmW30xIAlkJw539Q1/dO+eHLKhRJwK0KvOg5z+5OB6HMEYiJnXmQE6qEOLxaJrUfOm2zLjGMmAqIUEIAikbQpuVHZCn74rXUQeCM6F9BacyeYOG2GmQomJ0rVahh0bC8BiF8C4hkUEpQqiqUvpNKqtDSmM0Q6mQsIYVhzIpgzdFh9aZ8bSnQtMXhWRihjTYknV23Ys+9oHXeWRxiwj560IWg1XAphQhK92qGV86FBj/dtWajXVsEGayw5yq0o5pvJfQIjgTdL6uIKHdS8T0AVBHsk+kfWUIaxtSyYSIsXFpjIcWaqu/gjIWrLrdrUxQBVe2zSSceHXbhbQnEz9eFLm5bOJdeVKnYj03jfMwFmqZijuZTNe/rz3I/LBmRu22VnlnyOZMCRLempzSrANEyEPTS1fiMsQrxx1IckOzj/xqJLoLVGpf+juT/5Y4wAaB5lVhaOD7dfWrCAmveM84WZjRZKcUbqJA2LuQN/yRrhmNLyF7sw/DnUGL+tOrS/ZrkKbaxMQnRnFBxEjGBb6Qu5kLwmIXPJAG16S3lKVJWi9rxjOpwZwHmeBna7VhIreQ/zNLnWeM4lwQ1T75H7KlCWETIin9Xfl4OTHoQrz8pDWU96xftmyOdRxLIy7EuEpsc3yKHE06m0zJfIUuURaT55rs+SAaW7HyhoLlsBX0DDM+iIxv0pRZhtnBq1z0cX2MZoJk6L08y0OtN8ofLwLJ0tzKb4yYjLAQVoXTx/60QfpZxswNBQeU2/KgdbuT1tQ4wr8lc5kv1FlXGwTD3lODrg/C6yL5epImM5wYjJcQ9F0F2XmVckEmlzkiQdvU/eNkbh1LFDCb1yYTljWHaJ2QNOAqOeLetVEVdG52r2oeIUGyQsyHFnjHW94Due6BkWbvsEUT1dPmN09QtTZE2wTHsv8eskTTgBCLgkjSpunlTORQGWky11ItPOzEFwaaTm9aMS1dNtaajTQA3ttkgf4ueEV+MgT5lrc/TDmj/RhUgiTRLQkn98LR4lH/1jwMNzcSxGME4oNQHHk+T/bUgk4QFSd2a9YkurhOHXKmV1uyEAZuN/UO0DOpxyB+7FvWi7Z1rruzxBSzublbBGwO8jw0yXPW2tlOEI0jLe4ek7ZC4kFtq0i25NjucaylftzAFwTcEBw34ee7mnciHkhtCDtvMF12gzxeNJEPzeQpP5A+I/0fcu9UQXF7Gp+EFS0kN1foRc/3vl8ILGKCkMGxMvjwdcn1MpkHxSom+9CEYdgLOfv/alrUm90vxO1ptxTmu/WohQQl1USRh6GV3/yEBJz0691XhDq7hQyp3vqV8kt0gijb1wa1ZxU553AIcXvjR3y8MXkM0U8K2CnrR4GgxGUCERR7YW15p22elCqkp0taARYSQoLipiYA2Cm9FEWI0gY/YoDScT5cFHEHSBDi1xvkFx/mhxMExi05EXxGMnzup4F7IVkvk0NWMWYh2ERvsBUTZRxPKG4CcUTy5TFS1IIvWIN2EjyFIns513j/cIPRkYPysYMJYVXS1Cw/aCmLxRBEuBf+hkP1lxCSNYd9NyZFNBZicRJ4039wVW7NcoXZ54JZIAb7NSzEUhHRUiiMQRkw/7hzhlIkSKIgEMhPjwKERZJgmBgfTXCBQ6gaoCF/cEMQcngV6LWEU8gVX7GHKNEm/XdEgPhELCgT+kCIhshBKFIs3EER4BEGkAKGYigfk0iJlZgQ6MeGZbCJldN+n9gkVyFArvEjZsVNVnGKIdiEW5Em4oYSKAEW6OSHscgw8iQdV1OI7GMdxtIiG3ERG7NxtscsXSISh2KGCGF5XcInyjgfnrh5QIEW0KgFsCIkpEiNVXF/IZiNq5gHeDAJk5ASZzYhXkAryjOO4cc4QJIRpMEjnHEek1SDjgePXXI1lUKPCMFsTuItCiKE/AiKmuMfsLIGKcNGBDJWV/EuCoSKqf/oFWGRBwzZkCkxFl2wBWaiPxQ5cYQIJOjxI0p5BjDhkQzoJCJpKSSZYtGUfqvhVQrycW7Yj/HnGi/ZOQmmE61hKgRZFUqIkz+lijvZk9zIjf8gFg+5BQdjO0VpdtZxBu3BHsbBHkPyHsQWjFCpBc1SjNalke54lWewJKbRiYK2ks7Iav0DK2wEQE3gH200lv9Ak1dRhx4IUHj4lm3pkOj0G6u4h3B5K/1HOXVpg89CMeqxhyvBGX5Zdk95KFG5KlNpEJKSj0ShJGOkmKARD/kGYz3BkjXRBAkGkDApJaXEP2bFnGVZFda4hFrBFW/JhyeRB6gJIbamlqYJl99IhVb/KIhN1pojkQatmBmb8UjgMRC1WSm3OZiECWpVCRpLghFj5BOcshfxcB7EeRBvOBPImW8po02k2DkFoTLRWZBS0pnX1IRqQVFhoSYoEZTcqRBOCBbf6Y0QOS91qQ/mmQVpwIeZkRldsJ70AJiWEp/cMp8H0U+HaRP4ARSMcwY/EQbGKTb5hoH/EKAMEQSBJpletWD8YzZl8D88ehMGeY1rMFGxNKHHMVH7sjdqGRamGZdeMJeHQpEgWiwiIaJpwAiMEJtB0h6wB4Zdwjgmk5ttt5u9aR8+YRg+IZhBgaM5ShPx8HGlZhBc2RADqpFlg4GfMlNHmqQ2UUAOClB3E5Rb/zBRXTEhebg9VYGQGrqHHJqaTiJP1FEsIaEF6ikkMdIdjOGLPSIkbQAIHlkkalozbJpxGmmVCWEfGBEPdhoPHJEFmYlDGoEaNnEeZQB/fNqnbpScoHQGhhqWM8U/hppodnhUftQFEOIF6kEmrygWm7UXRkCpE3qp1zppUjQsnOqpm4E125EYXTgQhpOUssl70bGqrOqiQjdGE/gtOPARP9EGCYWrCfVGQiETwtmDjskQBVWsy0pArjFQjoVD/iEanImWGdUz/NCEaRKtFgJBeBMd2egVUEgHHEsHhhRFXSoQJIGr5Pce0dJ9BGFMXwokc5aqohGj89KqIRNNYsCb//9Qr7SKo/iKQzDCsjBCSje6pwahp80otAIBpASaMmIArG7kGl8lYzgEJaIxnSGoBmmwBs3hFUZwFM1hsVUnH2zRsUVCRSgSBiuBZ9YiByeLslykbhp5ZIBAbN6XOTKbO4ZJr3K6sy/SJ0DSJ5DiIkB7pwPBmDDlmEb7pwS7PwgqYwkLjYmqEGvQoGj5d13rFV3bHHEha3QyLC6YLd3Bi4VSJ0+2IoBari7LEy/EruJStzngn7FqrxrRBC7it3zSt7TrJ2LAr3eap8wYsAaBnIA6pDyhrIxLbY4bGkuacvx3uV1xuZi7L+E4Q1SkD686NY0xWqLLE0nVqWNUrnJ7Ew7/kwWOo7ryuXZYRLMGoSI6K7t7QruusRlRcruQErhY5qtGOxD5kaOBppFKxxM5kZmr1mA4ZKBogag4OUHM0bXo5LyYK1EMTE1R9BhXwz7Lgr11wrbiIRkh4SLsyRMTgS0Vcy1qSzl1Sz9pKBCAkB/rO7t8EiVksxIuHL99kru6S2r55oAHcR/OiLgpY6xWEVbI2nn/IMSZ2Tx8UUePO0MZMlQKzC/OOxBPyMCXu0FRFAbiqwXzgEiRyBfouMEa0R3faxD3kAMXQTExcjEjLDd1my2Pch+ziq/tG5Zko5FkCkouPMM03AQ+oZX0eh8CAbz868NVoVtJcXwFQcRFbECe/6doS2hhlxuUUmx1uSTFT5w5USSYjGPB37rFoiEZxvLFiDNYY8woePm3aUu38Fp5GukSK0waLTzHSbkSPwKTduy0uItDGwMkPDqj+/soOHwTP5Gw/zBGMWZ3f3ykoEG1i/YVVPjIeVPJBFFEtUZIlNwcSANF9BA1IZFIHTR7T1MYlDRVXZyRsVktL0G+LVq3X8oZcOzKYckja6CUPyLL8oyUMgwpuZwFNtrHSAuogkwUQvFY/eM5iHzMJWcVkdusZjStspMczzzF3zYWM1HNzmEXsrgPLqh9bcDNVbQaTvPJJlseIZHLmoGUZ5zGJJzKrgqq7jzH9UwSJ/rSWbCctv+MHpwhuDcLyKD0y8CcGkVcuAZR0H+8sHwBgqQ3QV/btbb00BB9ehJ9E5drMJYCRWNEWmHAzcV2RR79NHmSkSQRpuXsEjChPGw6MUo5Ru8cz0qZlydqpvJM00kZSjj0mD2KJL58vzOhHwXSmEFtzKRI1AUcPUmsP89KMEOJFRLF1ELDa3ejBlrKE74SLHJiJKQVNdQrB4kEiVotGui4spcBBmPKsqeKzgyzey1VrzqrrpEpz3nJBeuRl289ErL8t3O9H/3ZPwFlrHjdEPpRahvTv13m1zQFJYOdNowsa2uQBijIhEfRhH/0WSmYFhYGGr8SLF2C0VkAopOU2Q3R0Vz/7MlfygXZCQbqGdZ7dS1TQzj0qL5wXBk+kpSW0R7qsZewvdax6VXzy7PRJJgtsdu87dNBnU3FbMhuRNxFeNw5BkFq4G2k8yov+S8UK0dARhBqsRbXVNVelMWHtBPevWngLdvjHdpICagk/rYcjBHoTdoPWIyozSiu3CM+Et9cAIWMEKaMQN+tDcO2nJxn3d9HtxN6HWP9859HK9y/i5loocxHxQ/q4QWz8yoUOyYUFOUQciWMDRbiOUPZDAj78EKaDEVX0eGe1tnuPaKgHZuhqjUToSLHst8lbuKAguI2ixZrhzmo3d4tLNttrZddIKY17uc3fqJQKMsxCd8s0aN+/wzkvBpAAHvIRn4QrWFWDKrQtlO5fxSxDU7l0dpZmh6tp8RrGWLhaeSCo7XNq1kVHkRi/sWp7j3j7w0p50wTU0PG6ZiRb+7Ppmwx17IXY0zGuePir4weM75HfQ7ooA3o6rFH9BzfPzKkekzX/grgAssjCybUCTE2iswTRu18EQsrndUFhnYUbNHpXsB/5A4ha2AErBPqWb5AnLQPMTKA/GEi7XO60jISMC4k5oymO0HrwO7mt/63cR4GmMMQ2OLv/55va12ixr6Hfm6iOX7fflLb/k0QQS4T8gfUjs60AYTMNSnYR3Uv2FjuY3HuY0ImX1EWZHLu6n4Q7D5DcpAF8P9BWhtNWl1S7yVUEIvxZrWLlOY81l3i721+6yQu8HtF8GWE2rbavv1j365t5t9pmmFaom0NJFHyD/Pbo9BuEHDarzZxBpHLtNbe8Qe9E0gMUG9z8nk4IcIRrWlJrWaR8nDf9lTe8oCH5TBE6nWy3c2C8yX0GIzjEhST6+ccxp0i9BvMJ0RP4sM8zIBq38Ue9VFP9fRcoPhNwzh9szOa+QxRBiwh9o8eQP9Q9jdxSpQeNm9TnV0hFqPJ9q849yhPFrD/inWPUaHercpTiP+wD/TA9/Pi94/BeObRl3L+OPojMiBBGgqPq/8Q8cZh49/Zig4f6DEOJKN/+RTP9WBDFEH/4PlEPsShH0CALZ2j10lZkbGneWajOfuPqo3tD/uabvcFYQQkqD8xP/MZbvM1k0wtAhD07t0TowXQQTly7tFjSO/fQ4gRJU6kWNHiRYwWczzEESZMmyb/zpTRksUkFy5d0qwE07JlnkmT8rhkVLMLSpNZtGgpI/KMmCZN4g3liMPo0aMZMzbRskZMxSBRgyi12CTOG3lUMa4pIy+rVrBhxWZU8mbNli1m1LgEo8ZtFzNm0KKNWzeuW7t158710tcvP8ATvXRRs2XsYcQWxWTRt29fGy2OE08e20ZMQ3pi2gwciJkhZdChN/7r+LGJGDEjSeZE2aUmI5cwZdK0ifOf/06eZc78DPovHmmkSEM3WaMlJMV4Uic3qYcV9Jp/X0NPBx3qjZe0a1/ObKsGbty0druMf/vd7l60fvsaCSyYsGHq8S3qy/LUcZszkuXv/2dZDmYxwvBsQAL5M/Ch0Trq77TUyljtttZeiy0PCmkbD6csHsptt6eEGiq4+M7Q6TiJhkoOtCbkcW6yONaIQ7oDY6yInzWw6yK2mGZ6aLy8zBjvRzD++ZHH8/ZSzwv22ovIiPdklE+OLOT4x7Ez2tDPycnCEAOQeQD8j0AwwywQS6oSDGPBp1S77aSUJJyQNka6gChDnf5xUCSgPIzHqP3KyKIn5EwcTsV6KGvRKzIT/f+HRi/MwDHHlsqra0i31qrUux+L5Es9wJSEiMnCFKVsscYc08LKfUQdS44A5+mSIVYXChMiMcXk7NZbFTXTt3+esvPBLLgQ8jXY2ILzH5TmzE033oTitc8/KzLxt+GaeCMOysxCVFUZGbUUDNlm647HHy91q7tLM9XLSL+S9BQiteDjNiz67NtnHi3kSHVerTJrgx5XG9KyVrAIxPVghBGebrSLtIgopX8YecilfyiO+EJkHyrOwd1+krGkM6QVlLomysB2sjewgpFf+fh548ZzwaWQu/LKNVe7m9UFb1O/Fu2UIrXMYFkrKKV0TI589x36oswu+ydghtr4d9b9Erb/+upcM7onI0Azbu2hNMAgFqI4hV0TN457JXE/puoTmaj4Su4aMa62XTo+JRyFizCKI62ZsJvZuhlTTbdQzwif333IR6HvvmixKR0DRIt5lHZcInos2/rpV/0Vc16sQ7caQRz+OXNtkiSKcCVibboJJS5y4umhkIF6tvTpmjBp7YimZdtOyqBb+XLKvEijC7oqfchcmys1VnDmzWN3vYc65YeiLeAifiL62oj8scgs376/M6SEqPMzAKF6/IdEPzgH+EuLx7LURpozWNhVSqP1C2E36Z+N+URtt5uOiIzzNmrJxypzG0uL6jE89onlDWpIQ43SQp6cAe5SxuIO9CpF/yS58MwLELEe9uCCOPYBIgtbk0xqrjQ+QJzhTBF5lUi+NKAIguV98AOER0zTIJPshDWtOV6cfgQ7DGVhYxxrFgFB4yeHBQpu/LHKGiColUNdMYdKCUUa1JAyC/7DRz/aEQadx5YKPS9d0hMhChN3vYlkzwxuJJ6IvvcPLYjhhcSTQ5UkErB/xBBMWzzM5uLnEak9ZScOKskQV5ISJCIxJzpxELNQExSi8IkyfmIgRHx3IOZYMTHa0iIhLaIElXhBCdbBTnjiQkYzamc7M0ujS9a4LsO1KyIljOMJt9e9OzpMfJejx08ccj5XPWRgnjFlIRGUg9KciSQdY+QkIRlJ//9Nclkdy5OHkjIZkCFQRikSJd1U1kywmCENW7CHEpTgsla68pX/2OCEaDkzDxJuZ7ns2S5/5p45Ei8MWaCHY1I1jywAYph3a9oxkTmPh0jtM+hEjCEPCTzUUJMkazjJ67I5ySBW0pJ5MtE3D6M7t0kxgaCUxxoKRbeulJKiENlCGoTWzlAAxoJzmRQ9YzbLe+LTlh/8zvRGKBFeSmQwZjjq3XZyx6ItdGmQMd9DIRKgic5ULBbNgZZCBpKM7oaRJcFJ7ECakyUy8ZKY3JNJxYJS3nlyiuMkzskOIzytbuV4SvgHTgFznb7w1Ec+RePMYnJYWg5VUiFEyz/6idR/KhX/Lk1lGTANGkjGSJVlYTDIH5MJkfRlNa9asSj9PDI/Bom1kvg7q+wWWUluBkVPwhmLiLIQ14eMjEzW6iQWXSrTmb5hJXDE6RsYFdjwyImehaXQYZ0rVHTpk7GO7YtFIhuRpVJ2XgMtqH4gs8elIW2GD4XoQ/q4kNFuVZmoCaQPExlW1QRLdmsozk5ey0QOybaktA0LFC2i293e6TBZTO9EUKkG6DykuMdt5TwrBtTmOjdHtbzlPh9CvRkpzrFx0a6qnnrZXoWPePc4lWc/q8wziLbAVLFMG+CXgx4iEqz1202whLgskcKWQ90MwodAFJaS9NY3AN4t8A5DyhVHJJUR/1lwjZA72AfL7J4SxkNi/bZYoTWWunScyHUh0iim8guh3rtSHsHLr2I6jbwSsYyKk2wRQKAmDC+OXzxknNrd3GY1OcYvN3m8X7dSxSQhUym3QvIGxKTMbiuuqbwUvErjOrnByoUwLSeBh0vLxMo+le4/tFxdjHj5whzebhYqd6UMaZZbqXHoQ1xV3ohoxs1vlkgOWvxMOuPAzmFALWoKgscz7KRjwyZ2N9vQYx/zVyko9dVEPqmqKppz0ek1XuMgYg+/wvPJctoOYi2NaTxUOah+G48YafplpST1y6T2sDD1g1CFXo6qJqaIFgTUalpLBBCWGS+d4xfN+YF10MHWAv+x/bxWPSVb2RhZzG3fxrIqArcieE2ycLvA12tje5V/9QtdlgsuCd8TD//QNIUmZizvmPsh8upwhhUH5pbHaMyRgwiUCuo4zo7X1SeOCIn/k2+K2FozDMP1i43iQ16f5jaoKTiNfY1wtgJ64Rex7VSkOLRQSnwiLXpRkruYBkRnHNv/eKe2G/zxcJU8Dw8ZOUTWThHBNY7lWlH3qMOcqDaYGsSmy+zdkOY9Gr6aIpObNa3jHKCg+xuaHdl1PEJWhtM0/emypfy02hoc3CmlDLH771znRc6XhoXAK1ZJgsW+S7MgV0jaSbumLfJ2igCuLdp7CJdDLWrs3B1LH77Sd1X/TSZ65NHEsGZzivGd7xYTvdaKXzyvOdsrkJShm5RvwrEtj/mpI0cLXIiis4n8+ZbaFSxlsKLWI6hOR/d17A/hKxhBvfq1GNb1E2lJRNxSxrgsToPIE0vdV677GKEHLjiTFyqIM1OUYkoxeqsI1Ci8Ajs8nUs85mu+DPEIMSiDNrA8DVQ47FOKeAgWQvM+z4M4rhgLJEuvmrI2BcM2e3i0UFiUBBshH4mZezq5Wqo/TsO/LIuIGVQDubA96xI1T0s/A8m7UrEcM/s9JymIzbEqi6gSBxyt5MOICcy1xTiDoUiN0zIRH5I67NOki2A2cboc3hqLNTin0VqD45EIFmzB/0fjK5e5ME+DCBw8uTcxluVRAyExjyGkLprKFMNJN8AAwi2gAyepk727jSkZGsgAhAWsiOBTn+NLLwikwir0Nz9pK9TQtQ38wg5kuN15uO0JCSHDiAwxv+2ZoItjMhZkMnf6BzCiLsPAGTtEIw8CFyybLlBLktz7kUC8iEEEQjowxAMRQAK0HHhTwhjJuUesCKT5OVqbwot4MYi4RJ1YvE30RG0MNIo4g9hZqd4ZwbsJCdPTinrIgq7LK1QCOzZcv4yDQ7OQxZWAv8EBl+hSHnoyD8bip+pRkl6Ei1+kCH4wAoKsCGLkDyNMRJtTRgNBmmbbOZ6jCM6KQnSqxIu4B/9qjIgJzLt/eDHU+Ldt/EKM2LwsAEe5MknHKZlypIo4yIIHGq3Sa0c3ZEV4TD11sqlX0iBzyYPBcYu1Kxx+TBKK+Ee5aDmCLEiKOEj5QMQXGqjGmJfgUzMnvIg2m8SZoh/lkwjOyMqiezERmTP4GbrFwwF/C0lT5D6UfLbxibj+Kr+8Qj+ZpAiNW5SUEZLjEawxiiWejB7CoKd9So+eEcJPATOARJIlOcpEkQMucMQ9yrsDlJF5CDZ8E7yMkDWrbCaLtIiskUA62wk6C5BL3MaL+EAuCMES+T7iYY4sQEVYdMuZSkGZnElWbMHAKLeOowvxGI8gGZIhyT8hQY8jcRf/pTCC3AMPw/yHowRC/iCVRBQJEVOVgqgqiFSK4Lu39MLKi9zMivC32zgDOjOd0PTEMESJh4wITkTJ1JQHlwyLM5w2QrK42KyINuSH7OkCL5C0eJKnuGgJ3tRHRwEDo0IS/8OI4ixK5ETMQwyZ5kxCVWnEZrxIh7nMLcoBOcMI7ZxGr8yQFzsTsqxCkXwclMAt4EDPUVRP8VOKP2HNoRGuNMC405NPbHsDH9mCSMNP9LCLluiR87iRITwSL7AeOBKLAjUMJFFO6lBMxhymVFOVyQG8qcwIwpPQCAqDn+DKnuOMsICfkqAzLbnEseTGiSBJlMw+9gmKEjRHdFRRflnH/7B7URhdg/H4UZcxCxu9UUfxQR3di4phquAE0sloMKGJOepgzj1CKH0RFRITA+J7NeLDCMigyO2hUBmyUCwdi4Hyzoz0UjKViO0rSYrY1DI9U5Z0STWdF3VayVa8CCWQozcouzmlryNBjy3gSVeS1blYC34SUCAVTK0IrIdQyqVU0D1aSATciUalTKpoQCkVqCql1IFAjMVwsRfzHk3NvLPsPokA1TKtSyxazVJVlUaLy4uQUeRRgnZy1ZRJvVj1OOSx1U3ZgrZol12d1z8doWHcD8U0mmFySoYMjcjUgsmMyIyAwmW9G0l10oq4ULEoiY6c1oatQqogTSHT1jIFIP+wOEFCUkMVVD93HMrxWAMWdCd0dRn87Dg52UfgVI+KsU934aV5DdKx6Id+4A87as7+yILH3I/olAh9EFiMiERIXRotEQMrhQiFDYuB6gn46UixhNilIM+KoNgy9ROwoC/3HB9VdFGOlU2JCIWUMIPrCVmR7ZR0Ldm+kBNZ9VH14FF6haxdRYyZjY96uSOJCLacjQ9mjAh96FmxeMaCZZmDddYmTIxozcih68qMBFEuEFGpLdOWNL+6+VYyUYKVaNMV5NqIgNNyvVyRdSfrMS517RkwUFu1TT23kNMB7ce3FYu4nY58pbmJYFAncUie3dtGVYqJ/Nvt+glHzM5nBQ3/hjXcOcO18UMJ9GzcMj1H80tTU1IJy+XYiljV8bBcse3ceU0Z0SVd9UhXwPCCtvDTjHhZmFWUmj2zJXWS4DsD4tvbva0M9dVdUQlc3x3cycCBOlla0gDNw+jUqAXTmVLNE7WIlkzHHILL2ZyRGdXaFexc691VMIpX0jUC0AVSRwFbXhXIl1UUfeACexmmZHQSfAHY2tUHpWDUV0ONGtoeKt0SwR3U+sjIeBADshyLLOgCbDVP//1fEx3Vq72cmjIbN5UIzRXUc2XgsXVgMOiCdCVI7hVffmDb8QULIEVKJwEELtBXiiBWGWHCEcYIE2bU6uycoHUS+dXMSqWOkgCE/4zs0qKVlpSY2Bz+X90pRYnwkx6+G9icTcz1NLh4Xpo04iP+XO+1YCeeVyNwiygei2BMzhhhWJvlu6eMkbzrXYhg34v4YhMmMS7Boc3i3RZeSofB3/4g2rBoAqj91DjWKuKg48x1zfHJY7HD3DdIiS1Q4NkE5EC2Hu/dgkIWX3hVrtBITkaWjw3uYIpYjLuljIFC2H9gXxKuCEw2YcITY8zgljJO2DOOj8UgWlH+SLAQgxDtXzCkNeJYSYtoT8k9EFgOYo35WItowxbEZVctodHtZfF1FCKkDGFu3ekIAy5wiAPciWRODCgpT2e2iGg2YciAmjFJlBWmZGz+3f0oif8OZZinaOM6vonjHWfgwD7UXEuLRdHoYB/jAWZ2ll4zeEEYTVWyA+R5dRR7Fl+fEtTJIEiZ5WfKcOQDrI+BPozgoxy9tWRoTmhGRWFqZiYsuWaKOFrquF+iu2hB64IMQWUwDEkN3KKSmWqMOEcCvhw1NOnLlYiX4b93ZmmIcOldvZGYblsvuD902mAykyr6WET+CGF8E2qKIGoTPhWGHiQZodL0+eQifGFR7pXhzYgsSAOtztZvCkmj2EASxTqqzYiWfEni+WqubUPscueV7tiIMOJ5ReS1Vrd13iJ/7i6pooeE6lexWAzpbOb2HWq9Dhh762u/NpCCYOaJYOr48BP/sGQYHNDf0eSCNIBjTXLsx4Zsx13PkfTWy96r+GS/r7XlWN7js+7cNwKMJB5t8N2RdWomnZYqLZaPvItAvJ6I2WbUZ7TthpYPwIbopc7mA3Hq3pHhNm6C8TBNHD5u5D7PDVxLrs4IjF0ai7Nllh7rfL5cz45ekSWhTgEDQrZn1ZWI0yUkuIZdikjI/VAhZj5o2U7viWTv9g4NVimx+SWTvMNUomPjJxwPxq3q/vbv/05PdMwIdHacAp8Ilq5PP65usHjFXdrlXl4Ut8WulNuiNuCCU9MsZGZtqriHLNBvD8/r9H61hRbxEc+SgoPv3ZbvGPHtxB3lwo6IMkgDLtjo/8yL8eSGbHHkl6CIFlPsChxfCQNfv7zZ3M4ODXhF3dUNQpjdglDJofC2CIF28oz46UY9b/Suclf5iVerlYaYjoIozy6XaDL5nzD35omwX8W2VojgLzVfczaPbGjLgh6PCK5O5+lg0Tp3Q801Zz2eDkcxLkV+F8KgaZaZBy6I64vgaUPHiJK469hGaEbHlzZ4dEiHX4vgrMA+cUW51IaVCE03T+Je7P221lCXcTYnQ/rCiMpWddBgUT9O1ezhglPfWus+DLVOZEEcX7c4d5ZJ8iWfj13/9ceJki6+iJ5ldE1G9mRPDIIQPmcXFRGRVuU73Ijw5+IWZ2zP9lFXS6xTxP+LsGNwnwzKZUeJqIex81qyzvP4EG3EuK62BmvHYUrNEsB4m4686/Bhn49in5x78HdIRwxmj8BKp99EwfQxrxKiw+800O9Pd6tsF/WHT8nJtogBV5WL9+N60HgA4my51Gz5QOTJuK542R5d53WLUMybI/GUqmRFp4h9r/JHlXmC2apJx/krtXRRSdpoL4owwEBNOoPjeXFP7+hQf3iId/OjnzhXVnrnnYimLxQ5om4FN5AgYXe6s/U0wHVRSfIjpEouiGTKUO0bnnJ9L/bUAONkV3bT2Qmb10ovV5TCXVpd47VfszMc0AIzR3Oqznu9b3Noq+xej6l5YVPBb3oEvwj/qecPCFf8xYfZkjZSVTH5e+9pLy6JRG/5zGf0POL8fyettHfWpQneQ6IfEfmJxTDzu8f714f92Cf13RrgXu9qRbGHmMz4ptfcc4fnAxFy0LguQN9YNNt1DK+IQgdefA/qZwaIfwIHEhyobx7ChAoX0tMSRiG9iBInUixokWAYLQ4vErzn8R7HkCJHjgyTpcy/HDlwhGki5kwZLSfLdEmTJQwOiytx5LzI8yfQoEJ5xitq9CjSeCSXMh3ZRF6WOCHjRJXX9OrSODXXWKxXTwmXLlyUhLRn1h7WtP+2gPHCT+1FfnIJmlGzBS7ekGK46Nvnd2QWMX/z/hNzs6C+xFcP/y5snFCOFjkQKVKWuPSeGC1iQIb8yJkwaIGG26hk2eTMGZlZuGRJY1NMm3g9BZaebXEo7qFJdxsNHfrpyalZ5Fn1jXVr13pvunTxIpXjWbTGQ5oBMze03LcDjXRR42X64sSJs2j553efSH1c2qAnbLINYsWLHU+OmJFe/coVS2oMM9IzeITJlFIO/7TxkmphpQHGSWeIIdtAKq0kUm4V/sQbbwHi1UQWb4T0xnDFaTgVcgV5tQVzHkIX3YgWdWGddthdJ5AXanTRYkiJIRQRIOsl1l5I9HABCJBwyUFefPI1xRhDlWU20Tz6VSYSZpp9xtFHOKoFCJIrhYHgalwsCP8GayeJ0YRsEqo0koUWYriblldxyBVHa6xBXJwWiXmXiUqY0cUW0l3EYp4CpaHGjDLGuJZdhQp0ED33yDGpFlzIgZ8+I/VIT5Fp0UPePEmmxaSUEmlxRqmlhpTRRlRm6ShTholRWjxgcsEIGLmmwVoZZ6BJYIEktVnhm0nB6tQ/WYTUIZ6wmpEGnwTVswZzdK5o1rFp/LOob9nR5V2hkE4aRhhtsDYpPf9kGpK5fcUKhiFkjPHFF2OgAQcYYhAkXloJlepZYKlKeVGVm4kUkUfHNjWgSuWKUcZquE4ySR66clHGgzisudSwuRWLlMIhNbGGshwpK2Khz0Y7UBwojlX/1lkhg2EGt4oS5AVzRuQZpRyAtHGgFmlo0UYYl86z7kVnZDFYkGCg4Q/UUUsNNRpg3MMvVv5S5tlHXLbhkcCUWcSqfwcjHDJTXebgMMS3gjFxxa651kUW8QTLcce6fdwb2hY1ATFH9VQF654XhRUozNgq/AYYW9Rs80A1mqHlPgf1fGBqYmpG9KVIW6QR0xbpA8YYU5s+9RhghHpVfpF6NCnsk7Zxkxxc3yNwQVWecaVF+/UtkqwS4lBr2y+CEbdNq/3jGhdaKCVs3kLtzffvA/1dskVU1YOylltAaxFXXVg7aMwhe9HW45ALtEWjLVZOjxxAy7SrRrBNerTJZ4RO/1AbZJz+/9TIAB+maA1hr4vdpAChQMMAInaeSRVG+jOSiVSPJDIBhPC+lJosdIERHmQE83rlEmoxz3kUil5QpleUClqPKs8pCIiaFSfvcaEgLfvHywJXPrSxZQ3pA012FsWc74zIcuXaYE0Y0bwzcA5/oltPpwaShS8AsIpR+0INSVLAdEkKdgr84hc1AkYHgk0/AtEd7wriOxaarDwbO2LbuCDHObLmQc+LBwnp97yCoDCFKmTjP5ogOJSA707cG5H3JkeQ5aylHiHxiuL6Vp1EgcdbkctZEechh3LJhAtg2AQY6KaZotHDcwMREpEuwggrsjJqjBhJAQ/Ysy+Sq/+W5CIPucCYg0l9ZEr/INsELQNIvQRGQgJhyUuyoExlKbNSzYMQQfBYEz0SpI9AUeEeK/iUi11kDW+QYYtoWBBq/eMNjryIVyBZwe5QspKJwpkiA2TEzLRmE/ZkBHnEQEpTCmRTUeQCK/egiEPggYpVzOJFtuhFBdqylj8zl0Ns+cVd1u52FESj2YQ5TI7IJAzGTMk/aqWsmGihDL1SWhbOcLeC4FFM1PyHNYkyvWECZ3xSLMMhA7SGNNxoIPYIy1jOmZx0slANiNJSEOnSHA0ZsQ3z+ySZ8lk0JxakXZ1qg0H/R4ZFSKGrUhgEHKr4BX1ZRKEJBERDH/rQvTCRaBL/VSAvLcojjQwwSBrdaBsJFKG1iQY1fj2TYbLQhJHEo1IlbEJM/zhMqNj0H4KLQ06ns9OeCmQ54vNK4IjKRm390DiWFAh3lgqefWjSZ2dgnhLJw8Sp8vMfSgudPvz3vz78wau2lYIiSqfV1RFkRxJZqEPVeiAxZIYLsHnoWxtY0UhlRgtpJMga8WqR2al0Y8IrTDyaoF3txgMn8VBmNkMShDW4tHmIjZ5iAQkV7LEsC9vD0WRfiKIumFOo0kqnfSs4s8569p1diKdx3hc/MS2TNQ5qw/04qoXQgeF0X8DDIW4r4UP0AYBgKIhvIwLccq2VuB42jHE9rNZawrV2rKor/0co2CItgIEPaJhXvdDABzCURy0Q86h1VdKGM3i3lmlakzLLtpQmGHZXazhvm2a6UXmQzCIQAyd44isQsAAqDpgdan4reD7HFeqzawGUPDUZtFOlpn5taCBVC5JSptFDt6hThITjLIU/7OF0Y7hSlCTSRYZyeLge9usZDOwgEf+MxApUWmQyGpERAcJprERDHmyzFGXqlTYqcZCaMi2hwIaXJEQurxaQjBslL/YNCB1IDCMLmjfw9DmWXYNm7xtrQLLFLV328p+IOB19hIFu/hluPwcSRXVBkSANPt3TyAAJOXsVEhX+34UHkudInZVcP/uwa1GjkUql9K/ERa61lf+5mecKRMUaIl0ro5a6lYqEupUmUBh4rOl5o1TSbOJJEIps3lF/TLryKMOpBWInKPuG1V14jsuUMGuB4DfLLJwkf6fj5dDqzDdD2IeQLNWzWtoPU8O+x5CK9LTT4ZaKfYiwhP8QVn8823RokPZEqs3hP2t72xphzba9fVyn4rKiaYyucc4g23RLjQyEHInScHy3Nc1q3vQmj71P+JN8l/fIfnyTdP8hjzhw4YUCYZaq8RKKVv+DyndZuGPRDsiatBNHXoancS6+GsnAD3blKmVf9vdLLnBqIGIAYFcp7I8xwNmrivDfF/owCCkA8AwCmfaere3nmttcmaK0OWr+rMz/M5Q4YdC9K3i4kFWiS+0LlF2Wsj4K0jIo3emZhpgWeNKUoXyaeVYfHtazLo96dF3NkA3Q2NMgFWrRN+35bXjfujAJOKCBXvS61yRuxM6Iu3NRKFpZXoYQaCLpyF8IPo/erTqQY5Pcq3T2Bxn+oIg6jwHCXrXwP3wb+T4Tl/LLVCaBm5lz1KwmMLnc5asAnXGsEukB0CutSnBsjN9Vl+upyTHJROz9BN7Qnr4dGYZknUAQBze11+9NhxK4BlkknPGZiNrliRdMAh2wEh0YwlEdS1INRK6FRo8IxnmIR2JsEvhFkUwwjSEA3m0VFNQIFMq93/8YQvzl2fxdG4Js2/3h/5+23J/NydHQuJUC5UCWmJuGdEEBWtEBJk0WkIYCwlQZgGEDqh4OyEQZCMW95UbtGRmaHAUGDoQ8cMH4PFnYpUUcgKASMAefLBx+hQw/TIKbtdIXTAIgvpMZmEHF4YWQLE0Ogt88tME8gJ9FkAfTDJ3pxNkg1NmySRgAkUH8/dbG0V/NNeEc8RQOQWGYaMZx/V/t/AMWBsgZjN4Wms4XHJ2apV4YvkQZOmA1ycQZ4EZIDEsb0uGvxGEGZsH4pBpcZJlWpEEoEJ+KzBryKYwZjNwWogGA3dqi4Az2YYU+rEbePeJ5fN956In+AMkgTo2c+U8n3hYAjYH8JZDk1R8T4v8fHaGiHBUYzg1aoYVBFS5XnGBi1CiCIvQBLaYbGbDbL6lNQWAMsPQiS4nbMQ0FRyRZdgGc7Q1WHK4XQQzcHZJgPcQBSVqZQDyjqYnFc1BjCcYJGCQk6X1BtDnKC66PGehaWlSKHJBjDsqBupzjvhTbQMAk1LSjP7yjbQHQF8wjQ61VmalGmMhRB6XBK+UjzpHZt+USBr2iS/7PGESYJPxBH6wjK82k332h6hkIIfWiLw7EdwVGNVmkT/Db8/xN1XEkXjEZe4FdU4xkHCgBYAJmSW5FtQzEHzJcS2pJHpDeGPSBIkBChLlZHrggJSUiTjaFubTBxfFkDQqE3slByBH/BFH6g1EiJRE6GFPW4xLyoxx9EFV60DSVSc59G9H8w1Z6XovkAFlCTR/AwW39AR5goxWNgZB9nS6ulINYmtPtVRiGlDLh5UAI44YAHHMY45KRF0GcTF/+5Ru8gZ3YSXfWBFCRBWJeWTUqDPmx0hcUnm21nD+YZZ68XSKmBWjWGGeCX7noXRjwXZHsZlHGmTvGWTz6Fj3O3GpG5a24pmvuSpmQB1b+422Sm3Gk59TgARmwp20dgiKsXBVN5kBwiRutVEaUTXNeRFsKBIfUzUXKJVzYZXWuAVlV0L8h1GOFJMNxp51sgY7aydx8j2Fq1mGGjBmM5tTQweJJmCKU3jbG/4l8fmN6KBPS3KdfzIMY+KRF7IW7DARBSk1pCuhuIUyBXluZseYH4QoYgNDc7KP+ZR5saCUvaYlwBtAgjIFp2pYk4EEVvdxZNh1yklVahsSJFgZ4SV1Q5IWLisWRVc/W9d4/UAXBodNf5ugWcIEZyNGCuMb4HGaQKgw/xKlSHmnKTY2e0qSXbcFNMsU+KA1vmYeU7sPPXESlhE4P/o9R1pYn/g8fIGGYYo5G8OMH5QqwnqkHzdGa+uMvdZ6EgoYWWJGG0oEkyNkh7IH6AZC1MIwCjqilNUWgolSn3QaLqsWhWmfILOpz2GFWxIF3mipzMMeYpMEaKMFKEtWmhswkEP8dHhgeHrzjIZiOIcKKl/2DZS6FSVipsLWqHJzBqn7dghUJhXIpgPrDet7q6agOmI7icI0pPv7q8VSMsCqRms5mmwKkcuFmgDTs1MBZH/RBO96rFCzC/3hoDjjkAirnVWwrpUUT9UTnt6ZFuN7JsWigioBkVqRrWKiBmeaKXXgTWfzhvCrMGvin6XylFBwCNtoq403NF1wmkyKik6rR0BTEOXKmQDAROobO39Hqw0INHVjt1Z4OwlYsWjnMgSqI3ORKHnDsBxGrg55KYVDhyCYrYfCBFalstHLVD6rsnHkq1PCBaBSTAgLC174bUwTqP8CeQGTXdnFXp+mGoVInotr/qG/MIZ0o46OaCLquAYqogd1WjI3o6BvAq7wmZqHUa7oVnnvuwWlKTb/6KyJqrbDpA3EVyWYSBDkKREZ4jj50AXtUVZ2Vn4QRJBwc6f+gwTxaLHF1kkvJDVWubq7k7cdiZcgia4sobuk96x9IreGhgSRQWGNOr0DIRFs+DM1ixXUVBAQGgUsA2pkco7fK1ApNZ1h8bpzIwxaMrtYtxUiSTNG+zcSc6X8VMOyeZ/WkYCvhbletI8qdDh1waqluge+qy4F4zhBcnEicoz60ikDIQRek0kCAJu1mYtpWqCRA2478g6TYJs9ZKk/RUYJ6ULB27BwlS3mwKXyIbFy1CNRG/43hWqj5jcEg5NbJUXDUpoTMvu8Alejk7kQlCppJdbGD8K9PwAkAv6jjjYhH1ui5KnAH5cHEUEwomQEEW1nToo0W1m7uQk2EDcL/qAEHd6OOckT89J1AjDAJl3B7OBVGdIEgwyJr3MNugqptbSnU7OadhQo9AAI90ZH+QeUclWn3goFreOzNgm8R2+Y/EOyIEClvehUZ3Gu0Hh4a1FaS/s8XCOpmKCAiZytc7IRtZFf/aQHJKGNJfXG3spQYt6jn0mEZT4dV3IX22OhIemfR3i3FsC4cv6scXxkLvbBS+oMFdxUmkkFXzTK/HuIi/oMXeLBF0EHR/MggjzBJnGNDEP+sGHRBloYjF4SKyfpDIAwhOJPeJsQbgubTAMVosuBQFn3QP7wSmmoLaxz0EAtEKReKKg+eVx3CGPwBGdALyx7CaNbyBd2DAkKk5KoFULjlaQBVmCjTGvTKmRSzRWTIGCOqw8EFk9WQuZJENKOu8WwssELL68quwnCo6WzVIbgshv7BFXWiJPsDHKANPxjBOafzZe6BZBxNXxDyUgAl36pLrLaHTj5KUz/Ys/5zutHBHG0OIORFF2oL3QBSEkeN1bqsU4Oqe0ZtzCqLSA+EU5EoQ6bFSQfSw3AQT1Una7S0r8A0R8g0MnMQTYOGPJjaP5BM6WZPuqquUakuKI9JFyj/XE3/DvmyJxrQQcr1AR4cKTm7HFRLdUH88UDswR7gB0Jk9RA0xWBwyVUrE1afQRcUJ1bFY+E1tS1yQRikS0cEm0QTRHncrFQuNEIryEBENFn5x1oXCvlOTSDY1hcYbldBghWhAXV5xN2gxvwSxjWdRtuMiQPzSmLDBWODK8S86GeTxIxShSExBUm+AVukwZ/URK5Y6vI0FguR5RfMtT9wN7R+dN9I9VSvzB7AYkTMNjyjql8cRErBT/NERBt0wTJ75j9Y0doK99QgVKZYMkj0zC8ZiD32Kj7yMLEuT/MMMW1SN0gBLmgIbkDZ1hjcloj7Ax90lHgbb6tgMVxIoK3g/8rdrreZQKdavDfPxjeieh1TLCqI+OyUl5NrrE8N6Yo3eQ9PhcJGJSSGogEaMJtXEbUt/g6D38yDd8SlYEptX0XlHESgkYu2xA/dUNV5EGAtTk0XqgtjLBqK/xrmPOX9uXiDwjgp12aELtqI7LPpdOIhkLbhsVIeUBpuyi+wTAdRPEwnMQIbuzHz7KNGnBRxgfFSODlWXA9QrYGUj4RWrIarzzdB7N5WfKeO9tQWmGR5vXrfJCQZkAEcpKw/sG2cpbaDVc+ac4RVK1eaMYVibNISCY25WIoTUaLo9TnUYFF8VG/cKqH9NaG4k0drcIE/+q3PObqGLGsrsSwkiHNXSf9C81bR5r0K5F7xX5t3rSBRrjSwKO8tVIp7qZu6doWEqstJ8dChr2egXy6HHJUTSdK61nlP2YVCd3bnToGyZ0/2NAl4yMQ1vDPbIKhyLas5azO7z+jLtsFGA7UWYmhS/PSf0IgJgt0D/tQgPezndVuRAIlOoGuYxYL7UwZ8E9qcMx0YiQFgGeHIzkcNpYulV+Hpd9/Yq2RGeU9HdsGES5kpI4hFg5wJzmrXS8AESRG9g3rxFzdBEByzWvxbVLp6Qeze6RKf+JRTKJCkSET2rngFSQZmyzCPZnl58VVP0yMus4GiQADQqC74yROM3e2YMxHr5sgB8vIMJ+0K5g8NKWn/kkBrsiAypupchHhA3q7SnNFD5elrmxyFbwP1krpryGK20rIpQnZ/VUVful57nmbocoBkvWOHBQilFmKj+pDlL9lrRDDbybahhEllXsHbdBwpvNZtnXeGD0/tqDeZZEgwx/bsXsM5UpZr8x66xq7/DppLjZb6s23hgUWczlNX0LL3ToRfuyZB/mrEJkED5BEFjdwABBctA7Vk4fKPi0AxYej9c3gPDBp/EylWnIgGjByHGznq8ziPXkh69+QAAhQmTJs2YliecUkQJkyXZ1ombBPGZA4593iK5PgTaFChHHOMsXh0Ih4peJRK6YPU4hgxWcrwvOewjZaNOXIM9fp1/2MTh1yyGOSSpkvZMmXEiAX7lmOTJmJmri0Tk6DdtS7lyXXrtYxZLmvKxFmzZstZMGi5bDmsJM7Qs0rkVbZ8eU0atP/q/VzTRfMauKNJT4K6kcyXMYuktHYN6UufLz+PTiJ9m7QR3UJDzpunb5/XeXLanCnIBbTmhGfTLNasPIsWhl/FgDFEZswX1WT4gBED1uNHkSRLnkypkiXdmcYJrk+P3iYgnVZ94r4NBqpFMksVSfmTvyIwzsiiDasc0uK7f7iyD654DPpnrX+yQKgL0cpgEMONgvinCXlc0uuugUC0K456LONInsCQ62K5LsB4UY0uzHDsjRKDymyNy3SsrP8e0FjsDKgtNOtCiQwx7OIojr44BA2H+pDENSnI2OOQpyjaqCI1jNxyI92MAKof3+b5B7jb6AnDOOQ022STxcg6Iww56NGHy6HCCw+k8eQoDyWVVkpPvfVcAtTPlBL6Z8+e6qtzKDIApKhK1iR6lIwcysrBwKzCcGhBRjlyMLq5zrBrjcFoaiIeHHDwlLQgXH3VVbkqOyOOOEa8tVYVn3sxDxhZzIKwyH6KIw0udtyxnjfQ6mILoZRIrllW36Kjop/w+IMjOiBpDQ9/sO32Siz9oUPaDL38KUwy/9lniNv0oYc4MQpihE0w0kIwzjlZvZPfj/IMaU8++0QP0ILfKxT/pTAepG/Rcjc644tH/VEEjj8UkfiLMsIQyEAIz+C0U1abKOsMHOKRK1AJ20pVVYdHgxVWofyatVZby3ijLDXByGOSSXqV0THIfuqxCxOPvayees5C7o2hMkNLNJeDMi3cjQ7B46cvFPkP63/AnYijiWyTGrfdNuqnn/DYbZe0d+UIQ16DGAGDkTdvkuO3Lfvtl0w8/4V3T5MS9pPwgglPGCfBDWpDpIalRvJROND4w6hHGfnnDC4K5OmfMKQDudypsihZ1XhO9ksLLlBVtWWy4YL51dHkqacMxMxQY+eee2VkxjWE5uispo9Gup4iWTxoqDiERKtI1x1ao/Kf9nCK/6M+HJ0I23+sBFtJL5zP7cuzydxnbbZH02e4lIx7kCwE2wAEbzpx25tfoO4Us/GABUec8P5VQjxxOpGDpTTXuIZ8jxEY215+LiehLGCKc8YBWVdYNaAsiIF1GTRdPKaCwQx+72Ww29BXZmcYg3Rhbj2jG4uCJqznpSFa/xgej5Jmhn80K4ZCeQO0XEg20wBlP4pAzSH2QJH9SKlaHJkEP0A4GiP04yfkG8IUzQcX9MFLfQWZkPvyJT+wkG8f9PMIePz2N/KYxDwAVGPC0CifRPEkdYwLSRP/0YWISSw/X2jgxrRgIEBooQ2gq2BZAplBQ6oqOodU5Kro+BMRjjAoJf98g+3m9qIVkmUNNnIIsZDnkBnOLmlKQEsWuvAGIDltSFEjGz+a9BM0tKYPdFDKAv0BiUP8I4kOQQM/eNnI2/SDilS0z3D+gR7MseQm/7hH3oQCRmeG8U7uup9vxkOe8uxvjShpowAZRo84zpGOZ7geHvVzIYeIgQtiMJC8JugpHGgxHg5ZJOsCM09DbhCf+AShCP+CIlut4YSMUMOyGrOGGp0SND38ZNI6I6TEcEGTQ1HC8szQPJfZwwyz+ckgooS1avXBo1X7ghl4yURfjgaYwVQp+d7yrn+cpH9x+sdvgrORZ96UpRjqF/6qGbBrthGobgxYN0OSOjEcsJFgqBz/OccABgo65FJWyQGCBFmnd5YlnvK058g82Dqtsi6fYRVrWFkFK7/0U5KIOVSxChqsjQipaRv5JCg7Q6w0PGsLDP3KDjWzBXtc1B5gAOK2BtEHXFZLNQ6pGhhKatKTwkWlK8VpTR1Cvo/ozySJoulkn+mpnVKzcTzxKWZzIsA3KsqA9Mjcx04ahjxMCkBoyENWNwIIjnFOXhQM2ZZwUBatcMSeLSvDB28zVuOOFZK4CcJZ/cKROODshsgTzRuKJA+HKCuHl/EksvTq0M+sgaGnFIoXhhRXVtkDvfbIw1dyKS5/OCQPje3lY98SWYdMkbM4FQ/g5ESPzU7WZXsT099G/2KV0Y7WKkRNbeZ++1gtgIEPaMiOatDQnQb/BJ3q5MlUE7RbIyksOkEJbj29yqjj4vORsAMLczskj+cC6zCYrFGJrEusLvzkREMJb2c0E4eElEivXlECcyp63vQGVqNhO2x7K/IFxsrXsfT1in2Hkl/Lom/AHrkpCOnHUwMmGMwKTm3j/oHOC0t5NKmD4D00VVUjtYFkIg7uyJpQYudtMMV5Nmtczjq7N9RoLWSpmdHkkVAUVQYs4b0hDOPALM4o2it8heFf63Rk9JqhldVKkmIpggaSQjnKaA4KlUdjZQBzucugHXOBV93qRZlZ1KPJAVmUCUfWcuWpGRJdgn4SXP/WjY6RsXaInl/FYubaKmm1KkvSLiMkVcoQ0YlWdEK/++ggD8UeyytlpS1tD35M4o7k/MISQT1fYQNFpbgxNU6bKEZ/EdjV8SbzRtrAsXN7JcNW8dymFJRrDFmwnxv5oD3vcu+3FNvYsirMZXCmI2V1EtrRljZDM3OQxDRvx19RghmUY1EMdTu9XpgEtZaMFDpMwgvlLqnBfxJM+6x7y+0W44C9HG94O84hG8vCVVj+k9QBwirG6co9PGwfC9IWuKwT+CKboIWA9xwufqGdjuKQBaRt5tDWhUvGQVOjQzlkx+INiqS9lyGQW7oLk5DcHb9ABzJMogsqly/U7ztFBsH/vLMyTzXNB5xamrs6KDrnOdRnPSGe/DGQyvS3feApZzt/VelaYC3dR+OXWumoHuC1zFlwLPGth7fi/6j2RsLulWyX9+NnT68SWN961nch7nKfO93tfne855SOM+f77nkf76DY9oF0r/cZrJLbWi+eNFfNQrCT/nigtGxUlCeNrOJwrExWBkdajzhuwt716Hrc2knTOMeLBX64qH71rm+9jGQ/e+lj6PaUzb2AeV//vhtwIzh/6aWgnrowbJiqai1DeiuRgCIHiOsrWqYJygDp3s8rmoDZduQNysDFikXicuw2dkxZbszHIA7sMs4rPgMtyo400A+91K/1YKj9GssB/+EP7+iL/uzP/vCPI/TPUrIAEHquLGrN+DrGPkDMnH6CK5TuLZTuDJ6uBYXiaNai0IpG+zAwA3fsLKarQoKi9LxC28zrLUzQHlBQCbBrBVcuCV9u3dDss2Sw/vTvH/TvHgyC386t3qqC6CTvITjHPkBl8ohiCG+jZVhiDFfsWJ7rLChQrjyP+8JrAx3i4oQCBIciFJhjC8xPKLjQC8kr5cIw1P4QLkwt1vgFDWcQqYKCDd3w3vyPJ9rMB29j14IC15AvAVclHs6gATUR2jjkWJQmDXJE66CQQaQwF8fCAzniCp3GR54N20zQC+EKEzPRl7zAGUmwXDjr3sroE/nuLf9GUXPObQfh6LdScTREBwlb0T6Uri1osfNscUfKwAKf0BDtY8dE6cb+4Q1oTccaUSiyECyQEQWFJBQwUcqccQsC0hnN0bPopBp3Dy7YMI5iLQ55wnMSzw5v4+hYEdcwRAGRcAxz7FgMrRC1z0h2zKGgigu0ECiGUYcgURI3Qh/VzwyIxB8bCSADcgsGkiCl5iAHbDTmzefSSdTKQHN4QuhqbfDSDKsosuiSDxYxMgmjrcU4wtlciBczRK/qwa6E5ce+wiRvpBiPUfW8EPaU4CWdJyZlkiaBYg9q0mGq0Uz0L3Xy8KS2EfHqcCjfQouYbysqcgAVcBaXkik9MjMebbv/PJJLQBKGHGLIcqger81ZKIokVbIrUVBGwHIFXccIvGALzAAzZxIaOcIy6eAs0ZJsrBFDdJIj2pK++AgotWDoIrIIfUsoxJG3YHEv6YvYztEhOmQjOIlHApNVprLR0kBYSqUxrZCh0GuvyA8xHQL9UJAfYEgyZc9lKjMgM3Mmw+ceZ4RcQDMJSfNh7M2XMqdAOEwuRwMIjfIox1E2Z5OOiA3h3IIp+wk0jIY3pWUqQxIYKU3ajuwrvGArf+IxXQ+7nlPupAUgMXNGynIoLvNAtfMPufOcvJOODAJTepA1vwLORsc8XRE9ZXMjsiAPImzCxqDC8mBCyoU9zaq5tE8u/94qDYTHuqKyTqayR+7KMBujBPVTyBjTP0EOBcnLd9rPUyzTQAUSLrYA9sxgMxm0BR20zCD0e/hImehQKOFiFQ0QL91JNpvgtSRGtpTSPk4URWXFLZpLHguzFmE0RsUv84plI0rFGPMRR4dC0iKRI3hU/bZADfhBQEGNS4R0SL3AOsGCP2MkOZV0O/Wv3nauiTJHneBsU7xxKNCJQMyzXFomHvJgqfBoDPIguTAETMO0MlZ0RTkD6yKuHT0lyGbUvBbxRuP0HvtTOS1tH4lkT93PPgo0MxH0LbzgdhzNUGuSSQUPhCT0HgZiPMEic7LgDfXwPGNzDcaJnIzoTW/jU/9BlcXGAjg7UjDLJchCr0YLFU7TS+N0NFbTz/VakvVUjkH8NFdv9XbUwIa65Fx+dQyDlSw01FNsSys2BSLnUihSR1kp1WUYIdyitcka6EurtT374qyg6hc70nlS9R9atE0Hg0Es7StEkFma58hcj5fYr1aZcT8VtF0ZxAjeFUkdwktWll4bVP+AD1/rJN+MdUq/AmDtcoJi1kjwA0D6gJagQrCUS2Hb09jU0QPRlD7Fr0zjURG5ICXDVVwlykihxjEl8w34QVnM4GqhbDRspyUxU1dxA09j5BJX1mxalhZflixyUGokFBBKtGaF4m0F4jWvtFwSCEDG4A/w4GeRAmH/X2doiZa5mrDzTpVbr+1h/+Ewzc5Vg4IfyI8LHAtr3+AZ0wBJDcrcBPUyj3QmuQRP00ANtqCx5hVM0PZQQ3ErSNFhCg9zFCRuA88gzuwum5VL1qBgkUIRIAEPBgGPvmBahyJwBfeszkKhtOt7giwUSlUeLTb1GhcoNDYSsXYNCtRyNfN3OXNzgSZJMYQ/wSB0bZUjdANtTLdewUkIVVdaMsxSEgRS6c0g3DJnySYeoBUpxkASdNcp8AgNOnUo4iF4Y8XYsg9iZQiEIG0KndJpjQRjcxT2uuAZp9NFqDNsRS97gWY4GYSJukANtMQIxFAovASKyLd8zZcjFqdcfm4q/1bTXzcCnXjSSmm3TvJAYvoDfyGBnNbrLfz3f42Nk3BzPukoyODRhXxsC3roYp33J96A/JgFMzXYXoBmJs3LMht4QRmFl75EM2xIZMOXZUXYZUm4Q7PRU1hX8q6ifZtUjIXQbh2mCTIVKaZHCvA3fyVmDLY1KHQ4cI2tCftiFw03YpVWSJKYeRV4gRczOTYYd7w3RmZEJlsS9qLYU1gQdxz4LczWi82RSQ2C17gEnc7AUetQKHwyYF9YZ7lEhh+lP+K4KWwYj3DYK0xnh1mMeGXFeE8qyOwBLfBTQkaS25D4H/hhel3EknZGkREZLWbkgjF47nAndCu5iy8Zk9nShf+5xP8GwowrVEEAdllnt5S5BLagAo5V2TXgQH/BApaDl8VwZGaQtoABGYZOiYh1mZCjliO+UEiFOQ/yuVd8pXPrpNz+gZnB9Seu+GyhmSCZ1DS5hCz49ZoN0CDgVo1hmFGyYIZfoyn8g5wE2iHOeWhZTDfX2Y/bGUh+0+Pm8Xrto9vqmXI3F3d4Rne8l1mcMZnh4p+7F14DVShG16AZFKHp9s24IESueS4JKPhIGYROOT/owDX+ADtSGYkkxpWFgqMVtgmWS1bis89CuomCjLzyiiOE08hw1J5ZOndemlBl2j7+WWVdBF5n2iG4dqd5Wv8YzEji6IIamiMURiCQDzb/v4cPUFkKqqQP9pZiOOo/JIYPvmKqP1UurLoJ4Gpw7Zj0tlpp6+iuTinb/CqsxXWsW7KlzRpeNZM01JUjbsdethcowDeuQXM8ggLWMORNFCTB8joh4LffJFpavvkolFoRyOAPxHkQ4EAp6BcpWql/8ZixG1su1DELWCykxc51ujUNOKOeB9lTZJUfCjSRiRmmD9St35pPg4SZUXugWXC16TUksLlJIZo06q0g1CluW3iTudmX3Ngi8IAMLlqOpaC3vyY/xkCxkRtMG3u56gEtGDarvcKIo7uyu068wLpcjiwUVtq0vVeRoZi8fzm8gwJPvVejN0K1z1tJC2yFE5Xx/wTigWb7QdOYWbtZWm7XIuCAoyw6SqoEYwKcqgm8Cc6iHvRYsjcJuslGurmgspUngSP8BOOK42IEkWVkRkQvtdV6vAL6LeBaxE23fRPVxYGRKsDMIXySC7Y5fk8KxisCD6CExl1DEvwbKpJMqgWcPQk8CLKgRRMupGsFiIMseCp7cQGLl8hrug00M//BeyR3w4eie8EgXr/Cyq+cfNtX51xc55QVr7VZYE/Kvi1iD1ijNfb7D4qIjnGcsfvCVYhlCxKuKZMnCEX6uoqlskWPly8KLG2IkWVSMy9Ryr/CDF6kC3A6p83b0S8Z0tcWLgC2jxKMqJGP6HBbanQbKmRcnP9tnJyM+82rtTJcpQlRPdWF4rkayYBzschZFclFw4Gf0dy3NsSHYtdPu8qBPdihuX1tiwvY9iseenM27KEXT6q23GH+Oj9iaSK+AA90dxEqJ78R2ytgp6r1rEOqeseBU9uf25S8XWk30B743EaR/FkcmJcm6TD+LN0TdLzb3YPffafjHX2FYmPIIsH0WnaFcoV9CanfeM3vKDsCXhEkIdMtIqo1JExRPVawvceDQJ0jHiwyieLd2Qte3U2R3EgVV0Bbr9G9wguoHCym3uQNun0JSMw5InPSSd8SYtU3wstFjaIBpD+kfSLg4BCWAo8QU3i1/djkIQg4ybHt/OjH/nj/lXbjL168xJ1R/gr2qMsLa1VQhXnRvQLrs/7k1ZuAEk+NSWnnTjEh5lsu1fuxnL0ixqDt/QMNtKY1dJ5LgcLOd6TFELwJbKVDYI/u5f7HPWmSbNmd84rPA1JaMMqBCz9d3V0oEJ+meZ/xz/uMTRhkTKLeuoD47qGFIZ8jVPzcZh4p9Pui2RwqohqAI3uuOqQMjpB4rz/hwCJF2JvV/8EeYM/vOcKkWYU/K0r399Qr1r3XST5zg9/Rhz+dcsA8VEIL2DQHAYILlzD/Chr8dy/hvYMMGzp8CDFiwyZj/Fm8iNHfIClSIOHheOhLxpH+xsgrGCRIk5Ur5bmUd6ZevTNx/2rGkSnzZZky8takWdMkJcuhQyX+kxcnSz2jTJsyxFlwS5otUA1u4aLEqVElXbr8s6ckrNix/Mryg7hFDRg1XpiaLas1rty5dOvavYv3rsKHWrhoCdNGjGAuabK0ySKQYEOFC/M6ZpiHJMY+HD1yxCM5Yx6URF+eoWmz5s4yoWXGWbMzDReWKokWNXoyS5zHcava66qkatQtj7d02WIP7Njhbx2mXcvb6NuztJs7fw49ul3GDXMgziLmTBktadJoKTgwx+K90u/GI5PZ4p+OH0Omt4imyb/WLGGCjkNa9OidoeO8WRNHF2nUI49rrjXlUhZvlBdRVV5Mpds/b3CxRv9ea+AW3HDEwcWQF2qpkZxEyzFIYokmnjgXdQcBEkYWXfiFWHeEcdHGP+IdpCKKca0hUmZksCdFIO/580WF9DUhBkyi4bdfk/vhpyBhb7xUoIHyIdhThToWZJuAucl00BpcLGiXEmZ0UWGGGorFoUFvdAEGGGY0NeKWdt6JJ3Q55gCYGFmk8WJ33f1ThhhthHEjY43lyRQj7y3i0SBD+sPIfEPZx2STb2zK6RtleLrTGln8SRWBLxmolUui4lmVT1zgtJRVIdLlGxcGCbemEswZBCcYXrlVHKPCDkusUyry2cYZfXUXJ6BZaGEoogjlWCxEYKS3h0d9DAmGpfV9pt//aJuuQW655HbKxZ9d1JSTSwemKk8ZWbBalYBvRPjGFlrO9WYXzKmZ60FmxMkWsGZVi3DCCVPHohjy/glGHnn4+uwZYiBKrcIOMdIjSX3A8d4Xlf5zKbj7jWtuyubGmIanNpla5UpzxTbbnVW9odo/Ea6xBZlynRlihgWNxdBxBSsXrMZKL20nYw3LywUjEk/MyKgWY5wQ0xCtgd6kI6GhZcnaMYlyuaOefXa5AhY2GrswN3HSzPLIRi+Y/5jxk8712HPQFltkteOLgAcHFkQeImdwm1ovzrh0Cj2NGCMRT+zs1Tlk3XhD8eRRkdcl5RGEQd9qJ+7KaJ9+NmG+btr2/00wxy1Xgj7befOLrvNtkBL6xsVVFz4T/tAaaslJ58GZH488bfcgq2zkYDAiaGFnYJx8Q/LkgcaQaOQBu7fZkT4auaf7fZVAXJAvFRg/nevyP65TKTe5ecIKHpo6Bxdmz1r5FjTwDL0ZpzklblfVK6ABtYIsh42KCy+ylYz+YZgDNiQLeeADGsbwhS+MAQ18yMO8GEIfJe3HbKMqn/lOKJBebSEL5WLdy+AXO3n8h1G16wLf/LcbwBmlX4PDYUH4MbDVDVCCRCxiRFiUrIed7R99KciotFCjE+FgijiQDg7iwZTWiDB84suCCVPYla6YL06/GVUL+cMuGMLrH/uyWf9VfKMl/OVud1s50758+I8tEKwtSDOeEf8IyIL0STsF0cJOBNMXLpzhbFEsDxXjAckp5ulbI+ziF8OIya6kIQ+q8ZsZz5Wfm6gxVfUAEA3t1rsbyrEgPJvdQ2p1KxwabVYQqVMgb1nE5QEmMN8TzKEAg5gzHGZUjXzOFeMxlHiEAYt2ak12MvUfUXnRfJhkhDWt2RWJNXCFLGRfKGEWv5rVLVb8K4gP/aZDh/CjK//y3+HAQMuH2BKX9DSgQnKAxDboU59hAMTlctCXLACiDVoYlRhuRJsrIukznxFDUJipI5Zkp5IlpGZXrolRyeWBEWI83yfX4DK3vSSGbxBn3Yb/hhtz4m5ofhuaEkIB01CEhYH94xsA5UTAWvqxnjytHmNygM8wCLWfQGWMGAQihn8Q1KAIxQskv7efhjYBoiaijxig2UWLZhSjkwujGQTCTW++0CUx3Mmw3vgbla5UQvoKRdk25YUumKGHfOuV74bY07wmT1EJAWpR+foPQCBGC+IJQ0Gx01S6XHGih31iGSw2VRTRBzShkmb5LsrVOMVJYs8LI1g/GlJRkjUuZHWlG2N1my7QtW8UWoMXXgtbAa1hcGYimGnVmTS96rZxfO2togxyhnQpxrBMrQsOwtAE7RT0hKN6rBioSiJngq8MWWUgZiWnWc1K7Jr/6OgKz/gy/1PNTEKxOmWsLlTTob3BDGZAn98EZIY38EMJ9tDjWvgootzudr9a861/F/WPFinyRsTNwhkUG4/sLLcL2EwXas4QWRNJFHz/SZ11r5ndzXL2edj8B1i/C1I0tqt7TDFNScs7zq90hUzAU8J/fCNXTHZnC17I1/Di6ZCw7JS/PF7af33LEICmCxAGAcTDzlBFrcQjiYhhcJw4mq7HRrhEEy5dRS9sTe1ObRIT4zBHtwliF75vtE2ph01IY7f52e1CtlKri73gG0CpYc5k9Nvw5roVNvV4z/39MWAbclQuJNUgOHhYGRTDFGRqx3mTmESzBOVZFJoPdaczlyGdNBqGjv+tSSS8ynW1vOUuczjSYQ4tOMscGjSj+LSxYuDvXMwz3wwvu10YnoTWmuPh8HnXPvbznw8iYMKuaJHPQnREFA2xiDWacoCSNAozGcboSXva1K72tDOc3S03mstx+gc2vdtNMd/kKCSGiJlr4j63rZp2dnuTAL8C6y2cSS1Tm5jEQLSGnDZE17zut8J8DeSD5KAMwm0Isf8SkUITRlAa7XK6tABh6M4FkpAcimCmuxMtdBExFo1etiXWaDxs2MvgFiu7yI3q0KQ7zSm+m/3UC2cz0HvbnJWrvm7rUrH4e+f/BnhvbeTXQB8Y0E809j9wsEhBpWuBGWZbxMsjs4LIbKL/ZWCjZbGM3cnRXNTf3ma4PbVylDOlP7Nx21nb/aLcvSHmM1/2WmwOUofgKp08N5E+7o73vN+97n6eFl+BelyhHiZdSWaIn4r9j6R3x8AJXjQX1Ke+hWNnytCJOskKMlFWXv3TGs6DyCX2D81+2etsZF3Yj9IUsp9eWDjBHQO19Oa70TkPbleDXEvPEMLpvO5217vvfb/z/+JoL0EFDJKaQFCkPiS4aWgWdgyy5In+SfJ/KozEnyOG0F3+H5mX0NW7y+BKaXfZm2m6V863QjZKqOpcKki5H0L2lxVLJrjrl3orNO/O50EN7fVCvmOpe7x3Ir9HgMAXfOQxHrqEXN/T/1DZIRDfcRDMp3RQxBALyHwFAQYG1l2FQSIOJXWYRyhVtyAfZCteMTKa9Q9choHd4m3Npz6/kX4GwX46Uxsqd3Lztze44xttAWsxV2sZNjFmUGNZQTh4JIDSsQ8FqIR5d4QQEVTJQkhaYEgW4yfCJYGFMWgEZUhYBHgLyEDaoRoO1QTTxyDJ5RQ4VhC0ZxDP0xBK90F4YRpmt24GAStzGB05iFKq9Q9vxhvzNmdeMTxsQV9F2IQlsg9JuISJWIjVoVQO01jzYkiCkQURoz7P1xBtsB1l0AaAB0ldgB1HlQZTFQ84wB1dcH2PEQRlIB/aJx/oVnVawhslWBDW9A+g9/9ktNgVHlYQa9Nm7mMQcXMlRmFmsXJq5oYTNsEgOaiDaWUQcNaH/6AGd8MbvTJXq7SISHiIiaiN11gQ+BQY2+FhDCQQ87I2gvKGDxEG2jE9OYAD8lEGkFQGaVAGVIR03TFo0BEHB8aKV1UQn9JF4ZiLtOhtWTZqHZVH87JwFDIbSwGMJcaQVDJSwnhucSAW6OYc/tM79NWD6NMVNAZSwhN6aMiNj3GI2aiNiniNzFNQ3XVNLqgah5YDwUUjEhEGSXUxwdUEVKQa9NiO3TGPPAmUQcmTFEeUkBQvFbcS2RGC1HV1YMRgoYdhndUVX+VR3ZRHYjQvBEIywfgQdgORo+T/FDXxUm4VFiZ1F/7DPxkyLrB1Ff73BoN4OGrQRiNJkiWJiCe5hClZk83DYBumGhDXBIgiHogxgw4BVDVZhTjgV/MClFj0E0IJmY1ZlBTXBKoYD9KFVU1pXd2SUb7SUVXZQp4iJi9CN5bXEGn2lRB5FxQ5FhZZFziEIWDhVpwiJkNYhLUlRHTpGHZpkniZl4XIJ9kxKnAyNYzwcBAmmEAVUEbXjX7FjgLRBqMYk2mAZFRkEIRxjk1Bj5NJlImHlHAzXdF0ZQwUepn0gubDTV8XSlCTLnHAlQZxg+6XmhHpGP1hF/6DXkUoHDJFY/qJO+sUQPqmm3LBm3fpmwW4iMHJ/5dS43AVE5jNmQOBdo/OSaFccGiQFAZVxAX0GCaqcYoTh0U7AUlaRBOV1JRpAH6eJSOfBVpoJEqlZD5TAp/jxhDzSZ/FgkOu5p/BkS+D6EPCgzgDShcFaqAHSoDACRjNEzVZh6KPdSgCx46DRaEU2garwY7K1CJHZ50HEY9d8J51AUkkUyFIuUU7EU3ShBj/oBrPBiie9Emc8k3ww55ZwB8PYaPvNyz4+SI7ChY9o58NcRwvJ6RaQaRG+ptH6I2OyHEvsjZVl6HVEZOjIpgG4VcQpJiAh3SEIkmA1h1D51RYRKeXmZQmUzpddH5+g55S4YmgJW6vMxRxYF1bYJa/aP+jGuM/9qCjO6ovf9oQQBSgg+oUhWqoCIqk3/iIo9KpRkehLWKJEFpQU4oDO1l4ICQghQmmIZoFogqeGHemolKJlCYg3eRN32QqcCMzTHIaYGVatao0wFNXZsCnPOOjuHYQADQVwGoURFqkw6p3i0gQSWWtTGSPU1qpNrJIR0ep1lEGBPsnozitDIGdn5p4H9QSNLGUlUUucLJ0lKYa40qupwI3/kEasFMG5bMG5cWuDqGadkKIuIomOxoKfmqEHfIh+IWvDaGv/EqsR6iAC8VQgiEfA+ucfAGTBoFYUyoG8sihDjF9H5poFWehmKckF+uP5KI+KmMuXQFSoPKx7tL/BP6BGu+XFOM4G1+JJS/BciXirt3FBXzKRrwaEelzVzfLEDmrs7/XhPfEIn3iUL90XF5xBkCVcAfWBEDlJ8k5tDmztA0Rj6thFyM6KsA1dJpCLo8nriozIT/xJCLlLlZXdV96EDAaZXbhEnUYIdDRsnC0o/IKt7U0MGnwbnT7D3Z7t/3Ks/fEjkMlVP7kV4RBWIILEQmWk8pyqRQKQSiqpZtqcIByj3IhqgR3YCchTidDLt2BuazzKR7momOGFBVSIaYJETJksnZYG6abto/hP/2yo/nCYoQoERcSpHRLu7WLd3n7U1O6PM75J1lQsA+BA9FpSP0ruEnLfovLEE1Q/610oRJHQSEiJIOlE5JbC6dNwkD9IQ+mcgaiAiCvEb6wM7YKSRvmS750gZa/4Z+6c0et+xCH0wU2O6jzS7/6YL8/Zrz7O7TBa2DGC3hsexBbqjmEMZdZNBQC8Rlm9cDjYr2sg72tcyEAIloXLE1bSRR2SmbwKSbpQneOUYfoK0e98xWEyDO5p8LGoQawi3PcCMP0O8P/ZbwCu6H92xCG1QZTBK3HyxAGfBD7qxVHIgYX0iRucp1gQCFL/CT54WGvA0HzEhRWYnk36hD5IhBnXC0lXFPs2xC3yRQCAiLAmsa1u8b+1caJByhAl1gGIQZaQI8UWkUEfMc+zBDcwQVOe/8QLMF9YEino2F18qOm6wMqXEuuLmIqh3UUKXEkBuLIEfHBptSuXZxSX9ynQaxSuxcRcZUGR6ObnXy3n+xbocx9gBIPNxyBC9tUfiVJadfKyssQZ9AVoDsRo4ofXVG1KvN4rdXLrZOPBBIghIIYayAPxCwUtCw6LVHFY3fFdGOrclROKsVGLnwQc5fFgNodczuS2Kyzhehn4GwQbSC0wKul0MLRlCpJf+IQeCw68CwRE8YkQLwy4uMTyLu1n9I6Z3AqM2JgQeHPrbF9nQGWwgjJCjLCdwKbXRAKatWjEcFvEoE3/EeXFM2vFk3DcGwQYSAgB7bDykRQF4POBUFFrDz/0lkNfb4bESxRoqHSsZQ2z5rny/kh0/HiIvJo0zeN01IM0OS20xLBnsqMo3KEXm6mPxJx1BDxJjOGxsIaw3vn1KCM0YRGGFV3XMiUXNASnVltnebc1V79D/Gwv9dXZWba0pRWfZErPzBdGlBDpxQC18R8JVNsPSsblleM18KSo3OLP/7XFH+9wgLSwtdI2DEsu73db3raZoQjr7WtZ0YhFUpdiLutxr7N3D2GQ2eyILrX18S9Yw8hc5t8hMrtyc3N3fuVvmkHPLQdF/N027bH0P5WoIUtw93N3nrlvq/3xWz0N3NB3g5BzULIe+ld2O3N3z313dXIo9MtF/r1SoJd/3e8ud/9reC45L6qiz90RBf13RDrZXsi2WN2ydsLruGB5D+hIDj4M9x2IeEdUmu5vXMludwbruJGVMJeQDiW7FIEHhEyDqi1ZgZGcOL7aqQrzuNFhJG5mCH6QhbLMeIGUeQCU+Enns09zuQHRMnCIa8wReRT3keKs8JnYuL91tRNzuXV8+P+khXsyw+bQuSdYuU6deb2PZXnzWM73uVvnjwtFldbUBb5IsGdgufyJcm9Wt3G0ZE8h5JwLujH02LrhCab4jdnClv+lzKbohVHbhBYbuGDTumVHhdqwg9xFV9rpy/ksuifzug1tucMAen/4AVngt95JQZgYAhkgEEaRP8GfAAGzWvptU4ioFAG9DoX+7kpXeF/XnA+oC7si84pEpI4TBFXcsXmREQPYJA974EGYABgtk7tz0EKQn4XYTGb+aLszrjo7kVjwr61xl7lAlrjv4Hjf6QPYNA5XjMGYDAP1S7vziEHfgNSs8oUYSEhKCMgpi5v4A7w4j7qB1HqRoDly448bdA1nnMRZFBM8w7xd/FiIKXrEKHttOlaquo37QXwAf/pcffoNH4Qp67sEpQFHcPwF/EFvRjxLV8XL8ZCD71vL0Wbiw5f8sbx7KXz7OXxsBV3A2/kfX7uNFZAjiIZPyIpZHAIipAeI+PyTz8XShBrIP8QF48ybCkVU4H/6jvP9TyPPh+/IED/QyJvEEYAY5OuMVyQHj9yCP7wI3/wHiwP9XPvFBOPczp29c74XoCy9V3P9e4F9vRN9gVB8qnOOG2A8iPB9m4vBXCfHl9A63Qv+RIB87N1EFbv6c6YR+xVzVgObV6181+/6FQ/3kLfIUCD8MWiDwt/9FLQ9m8/JGQQ75NP+1shTXFn9dGk9zh/3bZne7U2Z78P+l7vN6Mv9riV5oDK8+muNNdCEngA/YHQHn3wEYPQB8+eGSxY+9tv8RUGUqEw5rqv93PCXmsT/Od//pik86L/WqQ/4IPv7+yV+nlCD+2eERyB//mf/5BABwDhT+DAgWPu/UOY/1DhQoYNHT6EGFHiRIoVLV7EmFHjRo4dPX78+GbNli1rRK7x4oXkFjMtu7xUA0bNTJo1ab7s0tLMyi0pvawx4pHf0KESvbTsCVJpQjAEnUqBGlWq1ENjnBIEs1TrVq5dvX4FG1YsSCUiV/pcqRNmTDBtbb7FqZOnTy9vPhItGvHozrEX0Vy9GvUQGTJ9FEnFA1ggmr6NHT+GHFny5IhKyr4hyYVL2pb/utRsG1q0zJov5Z71afcuXolGjialrFCM4qdQJRHsE/UPbX9iYv8GHlz48MmWL68ZqVmnmbU0Rz+3aRop6pRL8fIzehZ4U94Co94mGBUS76zEzZ9Hnz69Pf97Di3ze3NSJUuczdk+Hx09507qdbVez64nL2IzpDvvbCNoDN14M0Q9Bx+EMMKv2GOPIcviEymltOy7Lw8PP/RQtNL240/AlFSzjrUAB5yMDAP9kQTBgfCIKjHayJAwRx135BEiCitM6EL55mOJOedEAzFJEWeSrkS6guIKQKOqk8wqA2OUQhLC+lhEty94G6NHMcck08EfKxQSOQ2LNHImJJNU0q2b9pvLp6+khIjKyL68cqqp/nCRti/KJLRQQyc7M02UOGvuzQ8nmQTEJdWQrk49vcLTPD67w9JPqf5SbNBDRyW1VK7YM+4f+Rj9zM3QHoUUUknlpJTE/sTKdDj/KzmNqo8tD1tQsTBNJbZYYy8yLr5/1iyy0bZAjFXWD5ds8taxcgUuUF6zdCoQwW48Nlxxx0XIMoQyJNKlVjuENdZZJzWNJIQuxXUoKIUrsE9uCfpCKtoaJDdggQ811y415VXX1WfblTbE/NRIA+I00oiLP//qNSJj4bjbFryC/FWsvIFHJllHJRIyeNl/5P0sDfwYjnTatv5hsj6b61vOSXpByrhn4GbT12OBaIRqENp8KzlppSFMmb6JI6YJoYXhBPGf/Dz7x4yEtkgILZJyBtvinTHqWePYQOUNS6GJhsrGqxhbOm65iRuJuS4ozilrrKVGKA+H/JaaWofuXegN/2bDXs5aisqOjWPAxkCjU0UW+eMQqjZ1SuS5N+e8LyWSi0vehbpASA2FNGcqIdNLh5hJhlCkyPB0ET/NJ8IX8nkyenZ1im1PxdtD2IM6J774pcraQjPNSDLpnzW2RsjuhUYLfOaZEiLds4gpVgh2jrxmE3HqEDJ7MscJAvZ3Kf7ogzzj34c/I1M062Kz5v852eDqvmbOapoVxg9priedldnNNP/AzlfowpnpoCY2+tAW+g4xCEj8oW00ggTmAEOGecTPgx+MSE9QhCZVOW9/zZqYTQIowJqdhmtZiwuLHkMXuvymDRp0yh64RYb1decLSANhEIXYEDTBZ0gr+cfEOP8EGhbWzFby2h9zkCLDpHGBNzq8DQ93wxsuDNGLX/wHhZQQivioaT5JTIMB18VE/TyRJD4BCnbCR0WSMYI2WPQHD8dDG0aA0Y9BFKMSjHiwu2VNLTh5iwBx1kAT/eQNrGETbEjGBRz6Q4fj2QMe2geYL3Txj5+EX3tQNUYMoeRuXeCfuhDpnFo1qUSNNMl1iDIgueRFYG2I4IsGQoY2gNKXoRwlGQ33ks0wUJX1aWHi+uNIWeJFJVvzQjMTWCx9gIF3BhoDGDr4S24S70dj5Mfz/sEFZqUybDPJGU8ayUyiOKQoOllZNKUpy0PdAwxoow0awCCHbvZzc2eyh2XW8BL/56GESMZczmeUucxYPtKWD1GJXBA4T4o+dEdiAIMhyDCGL3xhDGTgAxiA6E+SkgygZ/JMF+qCrnIi1AxpVOcb6dJQFU0kolNUSEWbWbbbldSnP9VKGE5KoS3Ubw3CHFJLY6qGV66TnTWtiBHmGJF58pRxQMVqVjUi1PYohD3JM8MbLINUM4Ivpi9ZZkpiKc2M3HQndJyIVcunVbrWFSPJ44ISglnKstKQJ8yhIV3io9NpWmSOPbVrYhWrFCUkbwt6DSRST2LQwGoIlYHFEHzo2cy2RhKuiwVtaCuiBC6g8qTvwVAZkdNXywoIJYMdikMzxdmLuCZxnxVtbnWrquUN/zWggjRialdLw+eVxCSynac7sWVTz+7Wubl9g2bEOVTjADe4wkWOSFrySOQm9yG0tYht5YLb55a3pGuQrlepa5xQEAW21+HaeylKEfBWxK09Qax59etL9HLBe74dJXvxkll+eKELayAsAitSX/s2d78PBiVevYcQAAfSOM2Mrhfek9zCLpieF5kPTiE84iGeQTMnY0iFT7vh6mptwwzOCIyZ60AS1xh+WsgrEVXs2+qaK6/WXe5GZBwgAdnYyJ3Tgo4pROEdWzhVZuAHkNsZpQ9bhIZHxnLcerkQlCakyQE2DnrXIGXsdDhFQdYLebO85oH9SMkq7rEgXTxlBYOFrf9sxjMI3eyQJseZtI81c1+GnGdCx23PfN6xn5OH4sncudCPVtqhfVRhPx9lwpJxNKQ1PS5JSwTAfn6DGcQpHFnmd9OnNlSnK7LiOPPFPHjJHaplXSiudrUjgVSIZUSHHn5Ydda/FhNXwaJrrT3I18BGdp55mmxm43muzYZ2tKU9bWpX29rXxna2tb1tbnfb298Gd7jFPW5yl9vc50Z3utW9bna3293vhne85T1vetfb3vfGd771vW9+99vf/wZ4wAU+cIIX3OAHR3jCFb5whk/Gr5ZSc8MljhFGyrSGE8d4xjW+cY6LJQ1J7njIOeIEMgBM5Ce/CBf6QQZLoNzlE3H/Ah/60Y9NvNzmDmkEF+gwc5Z/4uY3B0MeDAEHNMyc53AwxCbS8HOUk8HoT4c6Hx5zHbk+m+nbtoTTof50PnBi6rCu+tXBnfWtz7zrYke5FooOdTh4He0n58Tauf52lFui7GRwO907rnKzw2HmaGi53ju+iX7AgQuc4MQ9++FJwWv8E3nYRN7/YYlJLL3xl8d85jW/ec533vOfB33oRT960pfe9B+M+OkDnnrV+3tsrRf462EPcNnP3vWst72+cZ97fO+e978HfvCFLzdTD//exTc+va2e/OMjn/nxXv7zle986b+b+tVv9/Wxv33ud9/73wd/+MU/fvKX3/znR3/6/9W/fva33/3vh3/85T9/+tff/vfHf/71v3/+99///wfAABTAASTAAjTAA0TABFTABQyOeXBABnw0B6SHCZzAB4TANZuHCbwHOeBAObiHCZQIORipCxQtDZQDQAiDFAQEDvxAh5ADE0sDxiPB0MrAEwyDNsBBHAyDFWzBhHhBLpiYLBCDbZpB0KpBFGwDMTiDJRQDMWiDMPBAeriHM8iCIBSD4SlC0ZqHe0DCM9ACLciCLzwDJ2wDHLNCLMxCLaQHObhBMQDDLNCMLJBDIIzBM0DDNMytGgwDN4RDRmCEp4nBLGgDOaAHPHyuLZSDJATDLgg6MKCYLDiDJyREQ3SuLf8EBEXMAkYIujwIxEiEwkKkRN2qQUzkgkYMQk+cxFDMwzXcQyqkw5eYGC5oA0DoQYaYB31QRbpiRUwMRDmMxTYARYVwQAfExVzMKj1Mwir8Qi1owir8uIQYxmgsRmMEKlzEQs1own94QkAQAyDkAjmIRgukxqzShwzcwDDgAkF8wh0kRHrIAoQYQiIcR3LUh3KcQED4OEBYwSikBwdsAyDMgjucx5+qx3rMwDZIgzb4QAoMR3eMwS0byGosyHo8gzSowIIMR3i8mywIxogkqYmsRxwDyXKMRh+sQi4IA48sqZHkAi0YyYxUiIr8OHlUSV8CSXpIAzF4yZJcCEAAyJr/7KeJxEdA2ElxXAh6wDGg7KaJFAOLLEqaXAh+UkpuKkiRfEqjnMqVrMd0HEmShMms9KlyTIMz6EoL/Eqw9Cd8DIOuXIizREtuakp6mEiIcMu3/CSrpIi6tEswksN6tAhp3Ms/mocuIMtpzEtiDEw/koOE9MuLQMzE/CKEvIfGxAjDhMwgwsvLpKu+tEzN/KmWpEzP/Kl7YMzOFE1/Qkg5CM3TJCkTu0XWBCrOhM3PdEnTnE1fwsk2WM3b/KUwSAPVtE3e/CPXDE7h9CPZNM5uAs3iTM4hwkmdZM7mDCLfBE7p9CUx6IJbjE7r9KDM5M4/Ws7vFMwugE7x9CNA6AKi/9xO8ywe7NRO9vwi74RPIQrD3ZzP+BnM8rzPIJID0rHP/TSeNugCuVxPAI0b+TRQ+EHOBI0fLihMBo2f/lzLAoVQkhFQAq3Q90HQDOWcBeXQznHQ//xQpbmHLpjQEe0cAa1OFN0cExNRFiUZD4XRpQnPGY0bepDFF7VRckHHFd3RpOlGHf1RcQFDIR3SY6nRIx0ZHNVNClXSUfFJH33SgOnG15zSgSlSJ73SQqlPLd1SMpkHLtDPLxUXn1TPrYBIMiWOKvXSiAiDd1RT88hSrZCDloxT8+jSpXBHLujIO/2NMB3Tj8AxQPDT4ajTfzBSiujGNC1UG+LTRJUIdDyDRv8dDjHIAkiNiDrVgj6lVMr4Qkx9CHfkyE4VDkEEVYfAMakk1d9wR0Rt05hEyYV41VX1CEDY1FNdiH8cQSul1ccIgwflCJ8EOWjk1V5tDBzE1YQQ1Y4cxlk1Vo2YxWRFCDhUVYQYxmd1jHlQSGnFsZQURqzE1rCghzB4z4zQ1bYE13AFC3o404wQVnRNV3X1CinE1XtIR2a9Vnntiwk81XmAwzvMV30dC2LU0kGFV4FtDO100kU9WIRtDFBFx2G11nh1WK/AVE2VR56s2LGA1GVt2I0Vi4LMSzCs1n8IWJANC5GdCEv1VmKFSpS12PUEBCH8WJhN2e28By04A3n0SpuC5djopAcv7EiDfFmf5Qod1dYz6FODNFqOlQhuLFmVbdrYoIdZlFVpndqlmAd9vFqszVqQ4ECeldqvjQwpFFuvJduOyECaHNu0fQysbFu3zdaudVa5VYq5tNsHitu8hYy95VvH8Nu/7YvAFdyfrdvC3QjCRdyvUNzFjVnHjYzDhdGAAAAh+QQFMgD/ACwRAAAAGQI6AgAI/wD/CRxIsKDBgwgTKlzIkKC+hxAjQpxHsSJFOQLlWNw4j55HeoC03PtIkl7Be220aBFzr6HLlzBjyiwjRqbNmzgVNilTRkucJgubyBuKMM6aOAWHykNYb82/pTmjShVor6o9JVizZuWnRk3ULWm8/ONHdqEaMF0OkuU3ta3bgRLjyp0rkSO9MG0A/aNY0CJJOSJLfjwoR4zKMG8TKy5Ic7FjqfJ6loGasIllogeNlkmKOfOaepQfi6ZqVatpJWbAiMXZJe1YtgrPui64dnTbfbhz696Nm65v3wsBtWljEqHfj4BHClYYRuWZHLajx2wsvfrBnVrK/NRp2bLCN284h/82aLSzdcWlT29NM1umlzRbXsNGKFtt2fP/eOvfz5833cQotYGRQsd5BJgcghWX0D2GrdQSfhAKtFKE1tWjUhlAcdfdd0cRpNRC4JlH4VRVqZfVP6k5ZZMZaoR3H31o2TdfTkPUaOMQ/eWoI28U3tVGGAoaVyA992iBYIJBHpTDGYeNeN6ETooWWXbjGdSddwoZhZSHIhoUYpVR4nSViUoIFKNNXZgh0IsG1WdQbTTeKOeO+oXpkhzDDZgQRx19VOSRSDKUkhZn6GmnY1pkeKhb2GWnKEJXPprZG5txCWZBTnW5qE1kCtQFGDaBJRacbZ5JG5s3ySnnpm/5CORCG+3/1adHRQJSkkC3KsSgSm08yGpbOCT6K2SSSWrllQzVA554yWY6bGJYCeQFGGrG1NqaMxLk5qnZPrvoPHgKCKtFBM3zj59a2DoYQbkmFFKT3uYUbBvxyoRdGWcsFEQQyDJUxhv1WNqQUaDVOxVWsHXRIkxvqBEfqdqaShDEBodJz3BhmEsguQgRiWuSA7WLEEoqiWFoxQ3Ni3JDTDqq0L77YulvhwIzVN6lK7ukBGzTxveSGWm42O0/206Mak767JOzTfMIR9y4FTFkEmILiXzQrlrQu/RCwcaz9XWS1fQyzEG8pBmzDX35tUw7w9YVTGliW2p7A1EcVZ/6rM1QgBpB/62x1P9QXbXVBjWnkl56FxSPFl4n3iiGY5P9UlPh1Zz2G5omjlDbAm0Bhs8MvTcqqkXXfXRU++gjRxh9a14uXk9vHLVLU79E+EmDiu364oJ/fUax+krO8GeWN5Qpzq5zK9DbDZnhGukSmz70VPvMA/vfiYd78kEc2x54TLcTtCS8ifO+9r35Rg7zdDQPlDlTzibv0n2eg57QG/DJFzHd2E7v1j54OkPsvnYxMbxKdtjzXu9oF76BGO45iUNM43IWhJZBTn1li8nZimezzyBPfkZzG/8MAhahzad0/ZMOAA1jsq0VRlwITKD3tCaTBg6kQbrbmgSXJgbgYdAmlEOb2f/W8D4QnkogqVlNQuL2moGgUH/WAWDLtvesAmbMbzkxCQ1tYsN/AKJlC0SZ1yZosEadIYMIIdu+bCKPN6jIfUVEiNqMyJD74G+EA/GCGkbntjyM0G7VAUwWjBQv64lhgAh5yOxwosWoLEchg4JgzryGA5RZ0FgFUeNNItO+p8RRjpj7IB2hCLQ3GsR5ciOaH2UUJUES8ld4EgPiEhIRGXLxH1tkJEkY0qBc1otelaxXo3J4EE3iZINwFOVBjjfKOpbljglJg5pqo4ZVvul0EXLlLMM0jzYcEmQFkUhbGjmVRybEcFoI47OAWa+WnTF468NJUyqVTCDGr5kKgVMX0oD/EFHJ54mAVEyNXiKHMwwyDHlzUmFaqBBxJsaXWfSToEoGHWH+I5jD6qHLfpiTNmKOg0MsGD4Xcp/3VKsg13pNNf+ITYHayHYGTWdC8dPNQ9rSIRFRjAAVQ6t7+Aoh48tavWpSUVaZEZ7xxAknA1bPm9xspCS9zz4N8p6HccWaypOOqmwnhoPOVDoLpSJOIeKYMxBznD71KUPQqc5DEfVXl1xIPIQXlTKsgZ4C+dBN5gjVhJQ0fwRB5VhWysrzbJV2Xc3aVx9jxZvChayPMetj0qrWheDwWW9d1DDlGo+5ojEq8wyNXvcayr7m8z5dWYMXVmvSwWI1hBQ6bEPm0dUs/7RhsYkJwzcX4tDHiOGsAKLsQoIK0Shl1k7u5Gxn59oWeazho03FCTNN61fYeM4MXtjCFoC2BT2+VnpRuhFuXkLbLNjWsThZ6DYTCdnR/DY6wl1IJNdr3H8U1UkNumBClttZtywVpDFpylOoe1p+qLYr2mWRw6rplWv6Dz810g1522DeNqBXIHLhnjctzNucRue98I2vQi7r1jLcN0KbVQh/++sWu25JIEJR5kIIJuORkuUN2f1Ua3RcTWlldVO7mXCFb6rIkszjIQQJa4fb+2HgTlbECHlXOu3UwxPjx4IMWXFikPmPy9Q4IXb9pGn5sdrtggEMZzlzHj7X3cpBcf9YQXZJN80rhiTpo09yyHOeR3Lkc7VBgBf2sHXEkD7rQBkhkbTylU1MoSZcCJME0XJinAtdGAtlKnwlMEKy67w0gyEPa05Ld1cTUCBL2CX6oHAW6ozhjuQ5DLAOAyDyTA/rmVWsj2VydQgNIcr+VEktK251fqfo6CRXuSyeilB4Yl6mWhrSMsm0pgmCY053BdTY7kqa2lzqX/GoIanWwqo1Qo/VDee3w8lLGJjU1rHidtdaoJCvF8JWCp1BkoN+NLLJmJNla2ENazBvvAfSL6lMd9pU3a7CPo2HSUxizWrYthfe0FJvfZsh+mjOQfFCaJWspEFGQm9vIZSSEc1bvs7/KfZo7n2eFO+Xv8qOg10Bnp3syJzgG5qKUQaM8INweuF5cPjD14zmLmyB4nq7OG9VPUhxm/fpWTgDIO7hWEFTqOROOnlCiIsffFnn2CqGeUd5AvC7TuZ3m4kMVHKucw/23OcKP0vQHY5tbP/jzBE3wxaMsDWlJ7LcZ+CC4AXfGsFnjXXgHPnVBx6lQx+k3tXBFw4mT3nHOHqjL1/u2P+9BpsDpQky347au8x2qYT5yyMts5o+Xfeim0FNCz+z7LuidyXWy+/hLLc3s7BP2XNhkAZEUAKt7iSsh0nrCcGhyqVC+ckTqvmTV0w8ekKoLGveJk34HeeppKidlMHZ/5hM/8ExXdq3Y4rTd/+0mvOghtrb/ueenr3ELR5ng7jam+JOA6jBkIY0cCFrwpdr7zYixmcnyHcQX8QriQF9OABrhNJZzfcW8dAghZZ5yfYS2Ud92TEZVsIT4/F9pTcVdyVmpoVjW3AWRINmAgFqRrdaC5FjXSF7eJd33WVqp+YQumcYWZAG6td//dcF/0ccihcmBXgojmcQkdRuMdF8/NUcZ7BcYXB9UtEo0CYQkuYSQaBRNIcvkOZ9VaIdMuMWB2d+AuFGn4IiZxFx//Ap1GIT8Bd/rtddfOckSqcP5aZb+ZcGjMAIv+dxWTB4gwRDm9Icw3KABpEDyicvk9dZsRaFi//zDyvmiBcYE/HgTvxmEGLXEBnocdynEJGhXwQBhoqhJagHVZ5jdFvwKa+nd6nxOQ/mEm8og9pWexHybXdmbobRf78HfHmBEXfBJLuYNYBwYdVBiM9iiAWBTsKmEJMHa/EgielGYaTXBMOxYpPYEPn1WQdxhTqhfRdyBlU4EGiHSd4XjjbxVGRIEO/RBay1T9qlXat1ZvbTFkYQi11Bg/NoG/7hanihBf7ncYeEeEc2U3jidMAXBr92HsZ4jEdYEPMFE83ojJ3VBpGSBdMYKdboEtNXMtZ3jR3IiVxoNjzxKDBjGTenGKeXjtqiBjfmBSzCWqtFFmeRj4rBac6zY3T/kJN0UB27YYcD8ocW+V6sMxIDeC54KHCH1DrFWDHIKD4tIwbLNxAN+IxRSJGW8VtYCXxY+VtXAoWXaBCWuG8JkYUamB1ioI1BwROFpkb80gT1gFduIW3mpwZpsAZrwQ/OYwTgcZdc0YbnIRY6eR65cWd3+Hu49COzRpRFWS6x5HECZCvRoYSs0pQO5HFKGJHOaJVbeW8xxZlmhZVdKYVW4nHhyI0EsYnfaI5gw4FsWZLLVooMMYKwSUdTxZfOw5d3eRYnRV290RHSKEt6VmtJs5gd048e9yNKmVv/kJAMmVbDRYEJ0YCZSZFY6Zn3NkjWyZlcaRmZOBCV6Bwd+ZXZ/weS4IgT5diakvOaijGGb8dduPl6uJmb1NJt8jOY+nCcPuURR9YbOQEu+EcoyAlON3EPYZAFU1dZ9UKZApGAUEIQgBBr8UCdv5WdPPF/PIEv2SkGoUlG+fWVBIED3fkPGuVxoHgTPdRlbPkPmmQZHPgWpKiSYJEWuJkm8Zmba1ijo6Qb5pISGkERD2GfUzEP9yAcWykgAtoQ9yAH0GFbgJADcsCchdiQAzEoU7agIFqVTVCd93ahPKEFv8elF+qZGtodmreRDYoQlJdsqJkd5RkV+zKOdEVXXfZ9W0ZEsyk/evQ8fEmjOOopaFGjuKk5ulGgITEP+4FkiXGH3nRIvf94pAZxDznwoF0VkE36pEwppTfkHJSXmVlKaFt6oZzYhyTKpdo5pk3QWWCHphHYZS2TmlJBNpWyRpmUVDCmHYmRkmTIPPKxFkYHqAShYyEEqHeZM7oRb82RNPqhawDyoNE4a0dKJDnAcYH3mYiJa7+ioIEDkJw6oZ+qgU+3i1nQeRcSpve2nUwySOHIhCPqHE4GE8tVkv9QfcVEq7X6Ym0hl5qmMEo0o1vQp4EVPcEqrPRJh7hBD1nAcfyRYYwlB06DMUcSMoracX1oVogJpVGKqSIqbishoZzZpf8GdUAJsk1HrmZ1rlHnoQJBeWTJiW2aE9YYMz1xKXJKcDyRGLL/aX7uyC1l0a/xeRCp0WANIbD8YAREO4d2khsURlttkLC/wVhJCjvIORJD6k3n6n9NF5CWujLYqnFa2bHUJ7JcAIQiG64biKFOtxKi+aHjSaLt6q7W2F/YAWkzS3AnKYY813NgsZu7yg/hwbM9e0oqaBO4WbSES7QEuw+EojRhkLDh9B8L+6BQ23F/qIcTa0BTtzVNCbm1hZ1o97HfOnhACIhQ13ld+nQYwp38NoHpw64o+xJvm2zygHmzKqvXUbdtFwd3mjjrSBtINxZr6Lf3AUieowZGmxOFW7T9kLz9UIv/cLD3KQf80VDA4Rh3qIN/yAhnxoe8eLmYa4jSGaEG/1lzAfe5g+d/gyd4oytuu/iZqDtGGiUh4Ni6DfG6k8gkJSoQc1sQbtmibUeCRrQGaQC0pgMe4FFVLvJjBHGCAvwWfKe8tUhhdmgk0Qtu0+sWRCKp6st6/Ge+2MmospYDCBovyAe5eJGlBoW+BvmH57tPhXe+UIfCGGqqHacS4ScG8ju/r1tMkpFG9Hodb5m7jGGnCMcVamBK/0DAZbcGJwiTE+dmwtsVtgdCiQsYhlonNtG0jjSkR8kFGqy9TceJYOyYWPkjHxzC8iZi0slxnuql6KvChNcajKCHjNDC54u+JNsTT2eW8YBRN0G/Y9kTFUgQ+Wslo3ev5Udg/LBPXv8wH+ChWkwsKky8WsvyxHtERwYLCPuAGMhaf0hTweBTvSfMg2CgvRvLvcvJsLB2bjMcxiyLbmTcpNWRVjkAHdJJnR2rvqH7xnsYx7s8x0C4Y8H4tVC3GXscfX38tgxxeU42yAcRGeAXFTcLVbYJH3x7xNUWyS4ZFtgsyXZ5OnpUySAEwfvgTVb8FnOxSLRjbicctihsVrJmsVcDqcy6qK3Kys5Bra8clTABqZEaOGr8qU4XtuzRBb2MvQW9T+wBrm5sXlx4qh4ZnqZZGSohtz2sE7baFvfUTGvhRmsANF3wXAX8D9uczaM20mtgBN4MxVJcE/twSONVHRPBJ1KjxRr/28aEgrWOEampzK323MquDGuz3BDQodM77anCPLn918syuMs/WMcwXK7t67bI/BLOJSzzipbJfNFS8aL4tDPX/LMjzVrvmIpeMdZhjdI+p9KuIwdZgBFKs7RKEyF8gs7s8g+FQSgG1XQU+84UQtSqXM89/ZkeHAZBfVGZya14bF7lK8oy2Nh66IOhO0gX+g9mBRRpexCLmJEycQZ3hdXMbNFweUxC3ExKUG0JdmZ6B4+sJdJj/Y4K8w+trdqRjNZUpdaJI87PG9dRMteLZC7NYUBdhc/v7KhR4tf0DNg9Ha/xyomfS9DY29jQDdngWrZQ7dAoC30hChNlkAVl4NkV/62J4Xevo01Hpa1a29WKafJ671hmsa1dr93eJc3EtF0Q30yTObNq+UEPEswqvM0Xv8WwhkHGZbwuXzPLqUy1wiwQTh22+7SHjb1/sreHLZzH4RfDUV0QDGjMOBEE2x3IA/HZQWG7OYGvrmNgNjmDEZfe8L2KCsbi7Y3N800QRoBgesPWbk3Fuj0sG0EPv0UkuwIIQL5nu5Q8FVXLQKF9ze2DD053ES7hbTyylF3Z1p2yGa7h5vlvy/zdLgF6lZYT0WxE5Z1g8XePKv6OLL6KtHfmqW3WTGw3XqAw9m0wXYWsKfHSFeNNJHFIlGVOmlPkqdypndvcuyx7c0d0o+zkhv85shZu2RdV5W3RBJ0HaZ6F1TDhll0uXXdrRKFggixC6EQ3i+p95jumbent4q0t394M51ujD/iNG39m579kMnkOJEhS61vj57gE6KXbvIQ36OsH4Yc+4RYZr2opWdYNfYkRU5j0rsrWRkD8D1xNRyaeioTO5J5S6qu4Y60BKtqO7Wsu26uF0kdjBKqeMzaeH/sgQLDuLbo1jHkOKLUe7/G+KbhOnZRds4Lu4J7e5HM8EBY5SBVO2WO6XFbeYtyNENl9E0IBMFs93kZk4q34aUL36Sme7aMeg/eY4q1h6usNk8NaEOTuMDkz57mRNes+LIWRMbNSGMoRKB8j7wniazL/fx647jVis+t/uIZKDd2Hzgj/IHj+Tt1SPkaOsd2hbYWXbZ5N8Ab2ulcOD0ImnoYSz+RoVvEXn/FVn/E7xvHgLu6nwyJxziqsztLVs9/1wuPEQREfoVvyDhMxL/NwH/fO2Rb6zHg/nxY+n36gInsC4ctc8PMCQboYKlmjIW4ejvQPbZ5ajRMkrjl8+ykxyHoQTupXj/VZT+Ybv4psvtofXxAsorfPcu64cSA5Piw8zmpq7xHDMe+LIfeu//rwPBCxH94K/vNhKxA82MsDMcd/37wCt4H5oqGi4Wj4vY1JHxXeZ3CT8ezDghpo0Wl8j+LanvH3KIvUX/Ga3/Hhvqs+/8tE8dJV6L4PhVr6rFJAD5L6aM/6vQb77D/z9lVJiPEoPVEQvZ7UB53L010pwc/oFwUQ/wQOJFjQ4MEmWbI0Ofgv3sN4DSVOJMiwDEWM/9b8k5fR40eQIQ16SdNlyxYzalQKVNmyy8uWKsHMpEkzpsqXZnSePOnFpxcjAvkN5XdwSxczIpUuFagvS5t/+6S20SKV6VWQbc7IITiP3tczgL6OJYvVLMZ7adWuZbs2x1scYcLEayNGzJkzFwUq5NKXS5c0aRgNHvzSLxeFGrVcxPtPDMOI/3CcFXgmixaGByFGplwxjl6mcdbU69jZtNk3atKs8YIS5k01r2PWBJOHNv+Ymzl38vzpZSDRogaPmgl6ujOgLPei7nN8xqrx42fCFPRK799WsmWhb5fY9m0OQHLDtGlyt4xCLVoUZvELuAujl4YPr1+zuEwZvI8hC5x89ryWhjbj7p8mRCttKQMPHHDBg0JJQ4033mBti3/MiK8LgeK7ibY8bLstJt3M4GmL3or7BzijkDKRwZAsW445LcR4jkWR5DgDqq68+geQM7Ibi0YgBVLuH7jkaqOuf9K7T731+grsr8PmW88+/M6wq4kmHpKsP6zOA60gAQdsop41FBRJQnnMDJI7JQDzQolQ3mgNJZ0sfOkf2dSoqUM+O6QNRKR2I/GnFVEUTsU1M3L/CiqpYIwq0Y/osdK6geaxVKAwxPARUhqHLFKuf8rQAq+8RF2PvS6ilHLK+6q0Esss48FhVrPUOyNAiBhsQp4yr1rjjTQ5HdCMNLawRwkl+JGTpzp1wnA2mvqUtiZA6+Stt4IMLcgLRIU9KIws6Gn0n3myAIQ5byWixy5KK730nyO/SrdTgb6LK1TH7sJryTX4SnXVUy9rtcorY5WVVqYSykIMXLXUldd6fC0j2HlN2yKNpI4NZagJmXX2n5b2lHZam1wKdERssyXqIG7N8K1igdJ78R85spADXZgJooqrHOcZSIww5M2ZO0/fyvRW8uwidUn1+mIv4FPrGzg//WKd/xVhpRTOzKBcacRyjTh85Wjos9YoSYl/NB5KTp88flbPaPmcZO65+ywZp5N5+ueng7QlqOWX5110ZuT0wXnoMLQAhLp3KxOrXbJPK7ouoOdKWt+B2UMMavSUbJXUqiG6mssWFdoaTIeBbOKNL0MSjbTIr3ojsOA0foMf1tqmE0OQRe6QbuD5vDu2QEU8aW+fJFp5JKQC9xZccZ+jasac5dBiup59FsjGeyCPvbMhM2U4PCMp17fUp9Fbo770PL+P1FexFH10pf6TqOsgm7gvtDLV/D6jNqlhIwKxHe5+cpKP/SNufQIe3YQ3k2oJSiA+WZHKgrMtnTiPUzIbl2Oqcv+4it1DCzhyV+P+EYYeee9/lKlLG75DvvFcDn7sSY/ABnZD0FUtCA8ZHdY+op7WDSRMa7IIU9DkvxVOxE0EKWDu5mQhgSyQgcDDg90gaLI6/eN4yKugBVmWQW+Vi1E4ixH15iUpTWWvIHURWhLPAgi7hOE7cIlH+cpzvn9kwVQ3fB/8rKTD+V1NJAq5lWbwR8R/vMGIwEKiG4VTrII08YCuiWJtRvY7PEwikyQDGd6yuMXkUWR5GHSZsMA1jw7m8VFDu4v3LKU9goihDW105FJy0MJ6zTEHOKij5e4oBgCNKj1+JGb8mtCGHfKwhyBRGMMMmbpEFWiASvkVxWopEZL/JIWJalPWJKE4k9/VjYGZxEMVR3bFO2lTiwPRYEP8NkEwQoqDzynXuYa2M8bBkiDXo+U1QQKIumCPSLqclXjokjRCnmGYxbRLwQymzGV6RAyma1i6pNlIimwEo9ecXRfQNhB7hBROa/Nm72rTQGnh4R+T6FMlqYUhdVJogh55597iGSQxLmcgNRNXzhInUIG88iAilIMK/YmRW8oyBwXR5S7jYtDy5NEuozpfQx0qv8300IcUsUwWglBRi5Jpow0RTRzG6kYHpUGRIA2pPf6RrG7qLilwy0Pw+CQQlQ4kDw2hljZlureP1NQLN6VRG7KAyhmBy3Awsx4JgypUgwBC/wv9PCpF4Ai0gzTVqXORSzxuVYbyUNWqsCLtZg6m1Y+UATH3g6awdjUapSSosgYBzDQJGFKCKCt3x+sCXVG614YA9yC91VNs1NnFiQgWJe0c0DxxNj0QcooeMcqnPnWWwtlmpIVLbYhmN1tHAMlSf1Uj7TGTGUitku5+WuACgJ7JGYvyKmwiKUP/sjsQYv31tm4VCNoilLuBENeSdWWpcAkyE4KsBE+BEoiFXKJfmo6SIMulET24MB3qAdOMEgUDH8gwhi98YQxk4AMYnBkpvLjShAVhl1HvK5DLAjWz3t1sFk6YqTK0wbQ7hmh61Rsg9hSSa4ecVxPWEMSMHPHFF/9T5375q7ETDdA3DqZrSxVoSdqwRMG6WSd+iSsi5LpTwgPZIoMMazjqlTG6E6EHGNDgDzjHWc5wRgMYhoQRYN75sdYtyI0o+2J4KZUiNLbXRM/wkLt0FiIG7bGPf2yQZjYMvhVbHZIxUs2zfs9svGMrbgmIrBOt1Td/RfBAOOShmmh5wZ+kUCi1GB8RMdcgREHuFujAosvMbCA2XrNEwDCGOQd7zmMAA5/XqLh8sllxf85ujAdN6Dme52B24SWPHY1aikx0IWAlWxEHObbspsaj2/T0p/0rIeRRCG5qcOmeqCWTPHjSWscLpRGG0ho7mUTWv+GHEZBLh1sPyMIYPlz/PXttkDaQQdgLnzMZHFuQnyZ7ItYrKqB1JuiJfGcghL6MU6l9bZA/us+ImbQQW5szhtjWI/XIglmz2ya1RrLct0WbbtMdGDzBJmS20TlLime8noRylPjOCYmU5+8wB3w7Z04lzcJ1cIJw4QsMp3qcv8CFg1jvxHs2NkESx+yjOnsi99A4Qbxr2IHmwC5wCbmPKaLaLJRcIEQemv5UnpE4ZAF2s62tzPm7zZr/d7CBqVOeYhJvnathr80a0aB8Y+8L/s01SDG6QZCedO7kuumKhbpAGFF10MeZEQWZbhp7hhE2utiflONuQ9TSeqY21TJyfItSnYoDgoKcIjSU+xBj/3fRkNTXmv7Mr98PItJQK9I9Hss3cVWCeED1FmSCCnryxlwQIwzWQrFe0eWDJAcuLM6Mht1wQbgQevT7A+tBVaiKu87iWarekWLvjlokotn0zBFohNb9/YIs6SQakyzItIFQsqNiMr/7O3I7kaK4k0mik8J7CTBYsAvhMjxpvN4Aius7iOyDQBIpDu+jkYlCMxBSqPIbiDaYuvQDvS9wJmDimRLKiOkKGvlLItYbu7V4No3LgjOYoxPiP0ebiCboi60jiGqTu26TB70LCUw7qo5KwIZoK3vgh6PoAi9wojlBoGYxg5mowJ/jQjBAmRKpKYrAt514PKSjER7UtYFQM/+J0AeFCzZFUIQ+UMEV9AcymAeqWJzTywgR+oca/B+1wywcTAuPmCMX+Y7pwD0ac7uJEIO+OB0j5KVa2pWWCwk9IkCYmZ00+KhOk4i2egML2YLbWZ/eaLxmmYkt3MKjmMDq+wngiDyQMEMR2Rt/YxDwE7/o4rWJAIOFG4NDkAJJ+IM+ALYV3IQRkriMkCywWyEUEgPYGyr7A4m3UI85yhRow7aJgDu5o59KNDJLawiWc7lrgrm1+kRQtIc1eAkvWBsJwcLGoxPcWEXqUyCXyUDI28BZ1ELAWpARbDpysZmDowdjDLY+gAMpSMiE/AM8eLPQ+wIt0KdXej+Em6xAJBv/tZMOishBpQCXHiy7bBQkjGCvuDsIb7wmcASJvNu7WiIWlWsrilCC4XgDuFKWd8zAeIw3D4zHk9ATx9PAWNTHj2gbgVA66FhDgOSpg/PFhcMDMlAEhYzKQ1AEOAC9CexDidKUi/QpK4lGg+BIpZgoF/oOqAhJj6ChhjhJlIwQlRxATUyXi4EwmJwIUTQJJTiWmowQCcnALEwKk+DJa9kC3CCUoCxMrEgegIMO8OOKDeM8iXBIYSODQRgDSIhKy5QEPKA6NMBKj/CzrZyXjHy4r5xGplCPtLul09Qsj4gH9rA0tURJjQAJA3Qjs2mytJnLhuCWLliDtkKWvNQtvmwN/5gCzJ/0DTCwwnw0lMKUxZDoh37YDhcBSHjJghMUg6qbSjqQBMtUyEPYgz9QBIYrJH1YMYyYrsdxJPHxyoIAy6UAl4t4CyKxPRrLiCHkgiIciNdEyfMAifUZvv8RN0+8zZkriFD4CzMoit70TaLQSyz8CQyJx+B00Ak0TAuKRaZ4ztNwCoaRThPsNaZkOKjsgz7YzoQkAzxIyEVYuAnUh/GsES2ouCQKzY0kzasQy7LDOO/Cs0hMS5GcrQIZwI84Mv+MHSUIjHPcL4lYR7vcL99EFuC4nb3EFjCIUL7cS5VoRwsVs6BUCgztjMXUKYNww4MwhKob0e5chO3EgxGVgv8/gMw54wMWbdGQ+LrP5JRn5MP6M8SzMM0blaNcUk+JUC0uQML89CcBJMCWe0tOAYwjFdCGkMmXONIEbdLCjBC+mVIq9Qm9vDfcyFJRWk5hic7y48WGiEOG+wLt/ANgjEpFQANJOIRi7IOFI4M4VQqt0JHvkdFC1DOswIFcg0/J2L+lIEke3SofHUePyDtyXKHiW8C+GcUApbkmVdCg/K/BjFAjgNJY5MIDFcq+AdUg0Qf7ZMNKMZeDK0iGQ1MpcEqFVNVBUIQx6INDoINfZNGlsAtcjZw7nVE9pYyJgkZgjQcxwD2lyIIucC+DKNTKssT5woi8G1KyuZj1Q0eDUNL/fcPLaaXWWHyD49RLf9vU5RyKLphQ5gws4LhFGgEELmDMNVNKibBDhltTKTBRKehORSADNPgDKQDPhfsCfViKGczXnNHVPOXVPTWXssNGQL2fv3DNHgU0LNEjjzgPiM0ZBCQ3BSQzpGhUwMtYjV1QLwCDbg3Z5TQClShZkRiKy0NZ7jBN6TyhLFishoDZX+TOMfgDMgixE61ZupWzL2CKP6RIO7USPHU9Gu2MX229uljahqjP++SPp7W4lMyI/lRUILnaTsvaRPqLLYhWcvParyWKsN0CsiVbweS0s1jbNDQOcd3Q8puoE/wHdGU4nUVROIODQVBIWWW4MWAKZhTc/zUhWsPt19P417LLF8Y1CEjkAknEz8iV3PXxiCaMHcyl2IFQ0rvLXLcC3ZpEkSktXbLlQghL3cvr0s4IAy6wjhNMj9g1VaoLhKj8AnVNSEioOjJgCqogT1MiXH412s5QD0ZsPYZJXoIog1QhVGO1OAKJzYywMctlEZJAXSQlCEg1g1BIR9wE3cLkQvAl207aN6zwN+c031rhtRNcmNglU9Dbg6gcA8t0X2HjA6bAV+BlEeGVRuI9SgABVoEY4LPsAhszyedVYALZT4wYxwdekE0zCNwUiDd4ifHFWoPw2sIc2Q4GVy9QsFoS1zFqCKdYJb5Cv8qsWTpgVasszTbQ3/81QaGw6N8FMSyAhT1hxYgsSIMgTtghJmL9ueOJWMkk5o5Ny1op/JuXyF4n09z+mtbCPNsr9lQtwphrQt/o6TV6MNdHRL+9hQQyUEhJ2APQE7KQCNoaHhBgEs31PNztOA/aaz0cmGOmTQOnTWAiJpCVxAiq/WPo2LRoHeT+MlDP1d6JmFYGBI7jbOQtDTBIciS3PUGXnQg3ZbgyZlOZzcyq28yloDg1ZhE2Llwc9l8dHiiCEFiClYgmeAlQnkRZnmUBbFiJmM2K6SjPxc0nNgkMHtBH9U1+GwqxNWahGIqCuFI34mIwPQimo4gPrbrKVAT4lYJB6Ntgu8qOnKxRNg7/OShlNy4sHjzeEwJYiTiDl2heyBW5WRYIhr00RsoZeGbicqtCrgXmjwC13Bpd8D0RL2Kn2HCjNuACxDo42O08ggy9Ey2nhNxdqhsDb9auiJxo00icNt7VIFFljV5cQC2DNBjUYh1pIUyIcNy1iUHpwIhnT1MCaK1nyhBMLKVQ5fFnMlODKB6aZT449u08BQq9TcYDqPyD0INopbCSbOYOYHpcgmBPNbQxjV47k6zjLHg0hcXqgUiIliYIJN7Er1Zp/sLeieDls+DC21GKMestEE6XeeCCLpYIFJZrOAw9WEXTZ45MpQ7TNG5trGBqbh7NHNbmNeThHobGhOUCOy5W/5FmbJKO3j7WO1ymDE7k2rk8Ci54bAG156uwYrTFiDFTCeZOl5ze6TcUbbkWiBQEPar8ThYEbI8IXNheinv464tOFMsYy2jEuIFAX1j2beCmCIbg44O45Xkp0pgriHrArQKlZ7I+DUZmCgnLYgnOGc2LXQuzJ484v6qDg5ydXWGb2KWQrHso74jWSKfmlMTQ6OtwoYoAjHN23nSeb5I24na2L2/Rb66th/7WiEKuZ0Q2i7PFCglLibYOI9Ee6KxL3+0eiM+rui8gaoYbPaygCnrAcJA47xg56n8Q7DWWWh4uqBxDmDMoCZDekt828RO374pVcU4xR4Nw8YgZjl92Mv/umFAbV2tk/uxEyWkSnAg4//GBkLo7nLOrO4u76OuzSJzrSW9OsVH45KW5ACaHCAMc0IKqRuAt53JaXkLSnpjiZgox528Xn+ccb+4B2WezKPCSCDMOB5C3/RnqpHMUhOH0IwPxDokY4fOrYHIxcPInr215IuwioRzL+KM65gLFzmNH94xLJO1lTRR76DtLJ5NIlfEBkemzkLAtUAPb9BYLG22JiOul+LUVJDYlJ73rcfX2TA8Zo21ZpxH3HKi4KI+8ACIDtmNEN4jb+3WMKGmySlROiQNjh+x6UAIoOXNNXxCzju6QuHG2hhlIjPOJKG2mkAM3A706g8GzwOZtd73/v3ZyKBcWQT93vGASxAiMhdEx0mE7eI93JQzHh510pbj3gbh0dmRnKGQQDgZ4kJAwI/BsTolTFk1wqONiU2+IMGCEPPAwEBMxEjOxziCLr4v4bwF3QJ8XPl2qulAof0kDMNAjK5GVjYOLkKfPLGDuN3DLRLH31RjzemBpZWcR6O6MAr/pNWFRS/kKlW0DFvXp8Nt5g6gZhG2KWjULH/kKYNIOs4B1WUfldEGOHY6Lu2ga3p6JzSmDx5AVXcp6rTdkjQBzIOHt8c33UZzxfqeRB2HzZvf8Z8901vWKe5AD02evopqHn50Ile0ppqjkiCyIvAfavSeLUckOs/DzcD9l/1pPF+PdJYGFei5gBJqoaqrPkrSDfI+ob9I+6SBpVsi27AAHkjSg6dMQeDenjPGkB9M3EsQwfetY/YaY86tQD++Z/Y+4lNr/irVYGNwH3IlnM3rofaa39fEQg/MYfjCom5kAiDRcyoiJhyNHjn8KFzJs6PAhxIgSJ1KsSLHJmiwRNcqz6JGimTRbHMbZ0oWLkoj2Vtr76FIiGDP8XlLkZ5Ohly5djNB8OY+eHEBt2ojRkkZLmzBy6M3TF/FMln37ev6DKqehvqw+5/2k5/XrvbBi7wHK0ubev69Uw2jREmYiWKpyLWbR8g9hGKJlsnBhBGbSpDxg0hBO0yVLvIRzF/8zbtywyV6I9bLE6eiYIheRD7l02dISIsvPlyu+AbNl5uh/NlEr9KLGTOqG+/TNC0r0jJbMWsQkXeoUYlupPdtkecsw62+PXLl+9SpWDvTocogrHRvW5b2iZ9BGbE4vdmMxWcQgzIEjnpi9nMGAEUw4C99/hLloiQf+Pv6FkDU+jJOlnmX5KbSFZg2t8U8XB6rEkoAQeQGGF6yNthpDW6gx0n2zAUVUW1kI1BZv0DUFURZnCPdSWWJgpdVHyzX3nHTQATKjeIBIN5ZHbLkFl1oNUqVFFoCUh0MYYuCWRReMKMnIfGWc0YQYa3QxX30+WilXE/7F8dAbWcgTYH4EctH/UEn/oBRRPQxe2dAWYKwh4WWrSaiTF/fRJkdeR07JCH1n9DaiQ/pw0cZUL8lR14osWuQiWPdINyOkkLYV6Y3XSZSdFttJ5N2aNCGKkEJ5qscFqaVyMV489v0Tj5RUqtoprBE1MVkZD62xxpcNEggbQ2908c8W9aCZpmixmgHGTeBRuFBOO4F3Z15AcgHGJmActptS9CTHED1cAFJoi/DNk2iLzDnnqIyQhrEuu2HU9VakOUAnVkQ6Gtddj7F6JB55oP5DpJHwwfcPfLnRZ1BDrE754av6+rhFHnygMcYXX4yBBhyT8MrQGm/kGqZABv76hrAP1XNymg4r1IUaySrr//I/OW08GrRFebgJzozUJUa22y4ECBf0gGuRPkB+d5yiFTHqVXTqtrvuUG3Q9zSk8sphKUOYaopvvipTBGQY5SmUEHoaldFWGU5CVaJiDrGaGcNegxfHJGj4czfeed+NxiRbKpRFGWCCt4ZhDNnDGUolO4TyyXKr0XJ+cjJkRhd1pgZtG0CmQS0Yp2IrB6ANSa3P0BWd4S25ypnLdLpPRx21GFz4mVS7kM7LnUKAtNUGj17J7dGnbeOlkJFnGH+GGFDC18RE8eRGJfO/LyZPHmPofb3eY+Txz2SV5Uf4rwv5mmDjJqMsfRqqCbisQkbQmdo+tQl1xnx81uWnUqEzBP/ViRZJzTvSfEaR1QGldVB7HVHEUJQxva52M7rdPzClBdw9hFPSowhxziC2uyAEB/8oSBNCGMJ4hOE88GlYRIKwBrjRJ3oXdMka7Ia9GeYNDacCEH7A5zdg6YRkimMI437otZjA6WUSkhn89LGhzAjsVMhrg4iAo4X+UUQOstsWcgQoEQI2DRAHHIoCw6hAvoixget64NV0BECuHe2FE9lL2PxVnjacoYQkXJdBxAafe13keQJZgwvdKBFGfIGGhsTbF/LwsdjoUCFK4MwW4lC+hjDuhQ86jY/Yx0MMXeZORskUbkDUBhvpjyElouKm6kK6LGaxRS8yIOzEeLzTlQj/eWGMGrsgBRUtXIWNbRTkRjTiLw7mAHnlOSYyxYMYlzTBjy0E5kPAcMg+9OGQdwOD4BzzBsP4bXxrOB8lK/nCNkUok5qknOU6GYbDvCWBuVtI6RQiKEJVZDbikgor86k0sMAygQqcZVtyU0vj3XIo7CLOeLDmkOZAcyIZ5OBC8FJHZFIUIWvz4EuC4EwtBFKQjDjkGP6Ah2paEwyx2WYX/GaSxE1yIUEU5LFgFjmYuc9ZjRnCPrrFBRmxK0RMId1D7uGteMpmNrmRg1Rmk099RqQrrJvRAcN4vIAG1HNtOV5BM/euqylUIRZs6FOKs0GI9quiFN0lRmmiURYCUpBb/yikIRUBCTwMwpr++AInGxMKbv7jkZ3hXksVIk5BTkmmMz1iF2Y2F5zyBXQFhE5etEU6VP4jDEEjKjylErswJFWpS2VlU/kZlKj+M5RUhc+1qErQf8LnDGjsKkPBOpGBjTUhZYijWSm6Fy3gIK00aSZbO+qwJsiQhmOQxFylQNJDouEye03DlqTUhTcAVogvhSbLDHvYCv2VMUM43beyspyfQLGz8RwdZv+RVMuKwbyfXepDzIUuL+YFjMULqMDgw8SCBfR4fBnPGeVFr7TEVrb1AhxEGWKk3FJUITgAEm9769uXAHc+bVVZHqypCCkkFxJ29cckGqMEwqRkpSkBp/9LUQxNNXShiOs7Z+UYA7T2JpWVeDKvQ4BEWYUk1YpamGyN38tUhsiXp/X952nzy5f05ZeqpEIK7WaUA3oV2MBhbcNY/1UGLDP4mAt5MOAkLGEsOfPCnYqD9Qy5BylwGA9sXq4hx7BDqsSBxErQCYZUXF0hAvM1Ln7xEc1gBp7IpVtRMW9n59GGeXTWIXXZcVINDeQgCxm0RP6KkWFnvA7lt1SFO5XApEUfBRo0DEK6GoF9Z+XZCnOYH9Rgl7P8LyCdQcxiJnNw1zQJDbM5uRz+cIg9wuc4TCkU0qVudYE4WLCa5s+Axkl3e6IPvkwa0fsob1IdIjvK1pgvQkN0peH/q5Aij/bIRsKvfk31aVDzxXO2LLWUufrLVUPEXXZx9T8IQsxYJww+KvqXrXuLpTLkukHFneGae+1mNsPBrnSgCMriIHFJKoTYaXgD4vym4mWD9UHlhJXkFrIFM6TzJUe1tnmvAmSsDCqenT25tcMt7iJDVdPobjepkpQGRpjJ01ZdbZRPTUF6R0Q8XG7bP9pQq33zmyHx8DdDAi5wqkCm4ODZAq8VzmYp/OHDiqWkxJUgdrFPfErSVdCeUxxYsLbpTfrS5D8EXXKP/A+nKK8xj+NpxW85JKmxIxTKZc5UmpM2lE0s1ZJ2rqSFgbq/pE7KP4Q+9E5Zp/KTZzUx9/dv/wZHVNZPz4JwpT5hZhJcJ1ww82UybEg6bP0PZBjDhtlMBrsG22RxUMIb3nCrW+V+SohLiWDBed1Vx9TZDdKkFwRtKPrk/e5SyQtlLSu0ou7Dsia6u+D1aa5MJ9DwOO9L4hMvEHZf9YlRFvDlG2T59Q94ImW5N9LZYhx8P8TLDGnCCSEi+oFz5iRr+Hdj8MEhbdghUJNIKQIcDALX2RUfSMbt6d4abIEE3gphTEleiRPHWVl2Gd/xwUzy5RVFTFsWJIfzScU8iEEvNUTsABVDSIUVjaDzZR8rkRt9gZH34dyS+AUYMEkFkkqogRKpnZGNoBrlsZ8Rpt9C8EuWIc/Y0P9f/cmaMqFQQ+wf1ZWe/wkXTRzc9bCeIpDBH7SZFAwCHLjZ7DGX7SnBrUggF5gBqWwOYaBd2sUh0f0Di3FgB8LMyM1dROwDVIxLZpXgUDxEbqBS/JwKo8WgDCIHDUbVDZLKkrAHJO6gkpQKfwFdZb0WEsbGEW5iJgJJ5oXKjiRYRdjfQqyNFDoEFfZE1Zke6r1Ems0QHpDBwoEhm3UhHljTGPRHHOjeyOmETmzOYKyBEmjc+WQgvamB+ngN3MldRbhLCjaf88nBGfihKU3R0NjTTpWgZyXiIuYFkgFJuj1iewiGJPKJD9bFVQWhqQ1hV+EHJ3IiRORA8CjYGTQh0lH/BCkqxNokTKpIYSr+lhWeXjZVBFzNUAJuHS2yWQFa0xf0By9yhhroIHtcSMecWDHqmRuNnUaOnU2kgUz8DvKZAQhWEFJQn3qhnD6u0UJs2zXmBmdpYyIqYlfMF9R8o34tDGGwRx6Q45JQIjpmygcFHQSp3zvCo0Mo4TDpDgA5oUTko0LslkLEgwiJUKqgYsCdokesov8NZEQUJPbggSQgpK+xmSTc4iE1JNjxIsvopGCwmAS+wTBe5NpJD0ts5EbyA+FgEkh6IMntoT4o0NDYXQsiGihiURfQE0NIDY3BZEzSxkxmmgKJWmEUhg7uJHv05DmWnzpiIlEWpVEyBJCQ/2J62ONLDEmO1UUQQMksJU8TYKWY9SNWWoRWCmRFvCLCLcLWjeUf7IFd5SLYZQRE/gVg7GBibYEwStLwuVFo2INdaiQ/eEEaRIgdmhMeboEeyhNRbMsQ4JREZFvR8JEcdAHfLYSPaSOlceNPRNBVCIVkGoapgJ+SRGI5lgrB2IUlruNQuqNnFiVDyCP8geZS3qNHdNDo/ZfxpA2CIk9rSsR5wGZVVmH/nV49RoQWGqQCJtdCflhzkUkcAGeS5AFgBIa1iORxJucLLSdzNqfY8QOByMl0PhuzSCBETMf0KcR2cmd3FkrmMMQ61WhanEq1IWJMjgs9AILNmAp/gSMOiv+jXxCGOQ7MPwAhb1RW5P3DM+rnfr5jEibUMO1oE1KFeUxdVOKf52REFqyBFjhJ8sTmQjhoP/IfK05oQwggDfUBHdzNF+DBXC1CmsmiNTVgWq4Qy+xkYLQlicYlRtIliqroippBy7io3NgEobWGdToEHShFVhTKjVJEttEDLyVhF7DgtHHBIZrnNgoenkAFku4GAAEgwfScQizJP/AcD6bPqbyqfSoE7/BRZ2bpZwIJINzDMOmbKPbErY3p6ZxEu8HHGqjpglaEmz6oKgbkNzGE6iFcWcIVxeCpIkiCbc5Q7bnULkZgF0CiZbKHSMBloirqojIqPxSWi75o5BjBpMb/TKUyxB6ATlOQzqZy6okA5T8UDRf8azaaKj6F2z2EgaqWCqsCglzwnEKkz2FckK/u510MjLAuRObMn4C+xLFCyV5MiS/6YLM+CZs+RLSe7ETsBysKC9bFlRRk6N3AwSFIgVke0tf9w7haCBg8jhqgKzB2gRLMJbu2q4ryQx3Gq7zeBz/QK5vk1R7sAVNwBb8OgUecSFnoq7hkxRl0wVsY7MHmU8Lihqlgi7ZkzTvpKmgSDH/k3Kz2HGekj0Lk6r/By5VUrGcmXYmERdsYD2kuxms2wRmoBzAS56k4ybO+RMoOHJL4350aV81yHRp8Qex5qzU9nC6+QZt45C+yRxvK/wccKieK1qW7+pnSLi140Gu9egHUphrVbufV4tM8lAhQ0IdXtEEXTCjYelaqfp/Zal9aoEVQUGn33dx7vqdGfIh9Pp7dJkQmNgbe8ifY8C0ocqxjjNm58YVfWCYjKCtBYOFHLG4VIokhHNIsjuXNGlK4MkRHbJPcbsGYoGvHEIhhhIIgjW5oMKoS8INInC7qpq7TMsseNISjeEVTWO1HKNU8nM66pM90HMaImKo+jK3v8oxkCZm5WKnDttNtmFanHa/AyEefvBvkSZ6qaWL0vqM8agTWjOYnNkZvocfZaC+Iiuh8+CDarFbiWoT4quIaeCX2KCAtHgIQY4+cQYQ81P+D2e2eBIZPJAkLC82Z3OAv6aoodErn6cqN6kZEvg5hKVWEVuBJnxyF1OxUBAceBZetBaOnc3Bfad2ckimZ5sgO8+KnWJxwaqTwO2bQgCnll47GeWRvuQrnDmYmHMtxmqoNa0ZED7/Etc5QH2idzdJeRMgDgfRVKORe7hHOYAytsLRKGoSuw1BxFTcngWBxFqvMFkPEHgiFigQUb9iIFmFFbUzHfx1FZkDRPTRFZymRwlZwGFxwY64O93WfaSlpHFOVwTxRLqHfPeDxaOgxJ8LRgBXF346GVA4u3Ohg9x6ugjqdVKrm4J4NpzVZIityCAVBtFJYherNF2JoEV/Phj7/hDxsExecTNiRHf3ec/nQ73RNMSmnqIq2qP9qV6esclBFR54YDCWyqhxg0U/gSeYIBEUjRbbUxi+rcTC7V2MqomjVoD9tmjL/oGqRLRfwhhBy1TND82VI8xGucARZym78cWpkc+NyBpPYT8nusGyKc9q0hZneSkDVStoQVAh5xFsZEhmAYSAwZM4uhE4ASBIHkbAQBmAtxJ0RRiSpTEALdHM6akEb9EEH8EIZMKDEz3QcSdwKxM4khRfRkVEUBn3g15g8mQULaUc7FT04ClSZW/EcszKXny2dzqCsozN3TTS7NPu5SxkMmJcW62hED6i14WEAzvemRgj9NYIGNtog/6jayIMILcRHGdIizFVdlZQUM0RmKMGXtLZrywPhFI4QgbIoW0lXe7Vd6kRYi/WVIHRDmDULQkRtwDVf4KSnueFkes5GS3BHe3QbBwVIhzRA9RdWPV7sDIrkrfS8JbZiWx5UnIVMb17HNsbTjUnavCpnHMjSdUoQ/EMTyMOBevZQe3baPPL17MFcwdkM5cEbUJxDEA6uvPZrK7F78hmwVCDwrclt669h7Pb/AnC9KkQ/LEfAphdE0IPC5sbC4MxgOFHPnKR5NrdzP3dfx5JUzVJ1P15SlLGVyhtic3d3Wwd8TNl1bCxNY3PBqCaCrtAaKKhBjJ6PBIGQD7mQh9CXnP+BxCEoGMTz3fRBwxlSIp1pGaR2nXGBgAt4PaBUtDVEVhfIlSw4o3qkg0uPb//DhAeseiGwRyjRdNgMI3D4tfCMb4A4Y4o4FxlQffmTGO05b+ASu8THHb94S8e4dVjWBFmKk1zzZeBfiZxHZh8PwazpmDkMkRM5ibSzXfVDTBjnMFJSVF/5gNdDZnAGstlKBdb2fYB5c77BhYw5mddrP/QDcuwD7H4EmxeJtPiF/eAP6PwGc8dkwMpkc3TRQSGQnvd5qQmhF/FFG3jHdg86oYvF6YA3WsjfjTuGMtVaDIdzCOVGax6r11T6kDsE9XzrWfLBDh6qFGcGdYG6a59MSpz/xJhEREkguI+oul1esav/DlmbeYXTeq2vOUYTd123NSmRYJ0LXgA5pl4Te7sYOwJRzanJgTwOylehcLSHxYzTC24oemOsjRhIXT/yi629kLgLOZlMwuPGWcYYLqfPWV4uhLt/CcrAxkiMZEP4ilandmrg+0YS9G6/kBH0Q1HdqJoTTUQv9MCw6ocPJl6HW6DIpF7PV18/jdXnUtXczj3kRrOzNIwTuqHTix9DNmOsDe+InoTVBdqXPKWfPJtMgsSk2RfQARwYAjleprKugX/rbMjI/MyjzIgdxnQZOMecen74vEaC9b4DUz8YfcC3yFWAUVUEYQR9cQlm30PM4OqE/0UXVf3Vr2O8qfRXcL3XQ3u0x44Y0Is1vzBjgNkyARza78Xav2bKSquAnDwWykMclIGHMoIaGMZJGGd/K86UzNnMT7XLigSp7D1EKAH9mkGC93xXMyrlOPiDX0njO77R71igfMdbN9BV8LLTP/17QUQ+Lc1eo0u6RAr7h77We0duiMGzf313bzzfzjTZy4Xrv8rsA0STLGJwFMTxD+E/gwXjNXT4EGJEhwkpVrR4kWIQjUGadGxCUV69OG/WbOHC5V+ak1vWrCkTJ+GWNG9AyrN5E2fIevX+xUmTRkmXLTt5YkT4psvPLfaMNnX6z15UqVOlKrF69WqXLvy4dvXq9f9pWLFjLQ4xexbtPrVr11JUq0/fPDlzAdWde2+ePrZ7+bKF+xcw4KaB486bRw8x4nv35jamWxdQjhyOFy9OfJneGS5nyHZOWBl0aNGjRwPioqXyPzFaciCU7NkojixZtFRceNvgvzILPUv0/TteENgIOXr0SHFkln8mEa7590bJP3lH02ypaRNhTptEecpk2WUNd6defnahOdwoVfVRsbZXY+Zr/K7o6XdGaxah2b7798E9TK8xxPLib5+E+iIssKcQNMwwzEBzDEI5RMMMM81qq88p0jTcMDQxuBCjshy0EMO11jBEKIzZLrQNt4XKyCK3EykC7qGNbLxRo6eM68j/puRaWoOLLNZ4I4446pnOpy4quqkp7nj6KY6TjCTKKSW4+MmM6GSEaj2q2ruKHzW2kE++Lc2s6L4hmiLwrcIYhIsvp/xCkCwE3aSQHg7vwZNP1U470yI9BRVNCy5yqKwNLcIoUcY2ZuPMohZvE6iJggB1yiEcNd1Uo48S2jGkN4gso4wgizTypqRgSohJp8TzLg6h/nHSKaSUYurELr38Uok11PCCzPguPTPNztjcb1iM7LyTzzz3bBbahDxccdhBrc0hSNC0gFQyE+sTYzYSI5X0tizOOCjZ4Ti9ccd24yhjpyJn2wknmZxjFbunaFV1DfBmFa8pe2RKwzwZda2K/1cvfg0WrHRlvM+zY/tyuKJl/WsQ2oz7TKiN0+5J1tpBPQRxsTAUZRTDM2bzlEVLycWhDGoplnGjdo2T5yWc3sgipzdUum66sJxc42eTtKS1KSXM+IkLLek7mD1eZWK44ZnpQws2ieO0GiGLGfxaYwGbvSiMbEEOmcNCAansDNb+uee1+lTOIp6LeEOI3Ca0YJnrZD2qp4yc4uD5pnoIXjJfocVLisiTEnKyKKNsTcOL+qC2h1el06B6vr6HO2s4rffy3OuvTf/vMtOjtajsLD6uFm3SsFVuMUC0aAMhuDHUYra6x7X099y29Txdj4rMqZ7wbroS8aDHGvrnfu9FCP/ygAcuGD2oM9eKc36I/1zN0EVX6/tlTz8ffdQ3rsi0LLwFNPbROj6jstVaW+x9z3DgHUa7Y2zKUmcow/eGxaM4aEceazhgAtOwBue1iiyQY9xymlYRpBlFcypxWme0x6suwIdqBPze+ApUvgWlD4UYu0xCEnMRQMwmf2aKX2gKFQb8jSh3rxuObGiDLork4G5OsVQTyuA7EZqpCfTSzhsC5xMuJA6CEeSOz5QUJZRY8IIY6RfBKgebg2WuOpw7oufGd8QTpjB9mKlICy2Sg9kAIl0z/Nhs3nYP+9VRh55JURYG2EYgAu8puTkD38YoIwTiLHBaORK+nNcZyF3JOUj/mR5FqteU652Hg13ilc/GxLBCklFihSQMGlHIRouYkiL3yAIXFnW2kCGkY2W4IaRSA5t4POoi3fKhWCwlBnF9UkZNQOBIrhQ4RtLHSVREiNEwksWLhOJK1dmgWDT5JfIAK1jABCWBgBkYUqaRHk1B5WdW2co4cqgiNVxMohZVS8+AayC57Jb+DhKPMxhRm7DBjjC1Uw9I5iuKw3ESJBHiuGY60yJb9Fcmd9Uembwhm/lMiBco2sVh8Ueif/km+sIyztytEnfapONitHAhd5IFnoQsUdw6kxsxqFSiYtknAsugEigmDj1OUsLhnhOkJiG0IpdkKMIcmoZQkCmmFN3C/1IpGlMT/mOjpxOLR99WqJAWMpYlu10OYTM3fCakWzEcyxBh6tSmtAqBqrqOjJzkHYSsEpMXqaTkormFaTqloVgxQxeUICxtKnWpW2iqWQsZVQaNZYUWKdQvj1iqNiymbfdbjGf499WVinWs9SwrYS+SL35SxF6rkg5O60MlkUCpoFwQ7UEBZhSFTjIsRMWKVvpatSMCNrCDtcgeOCvCb3YmsencTCFHaruQnjQs/NslWOdJn9w0wbK9bR5ChEkRov0rO6TFUFurgxArWUdfrcWIEgZmhriKxYNZ4kohjeCFLZgBvoK1aEXcSwfeSneMUkVPcClSKEgRsGyouUdk8f9IFh7KjLksdW49o4vf7H7KeU7cTnYbeSLTxioNqwLSeVlbj6jUamndpQ8/pHnE9i41voI1giXNsAU6OBjGHaWqhfLYN808VkTiQm5T9tjHioQVs/T8x0RiXBPq8i0pRwpaQNm6k1m5NbW4Cu9UxpOUhcKGk3edmVLh22LdGuW9Xi7ymI3CX2l57HurPNQdd2wUR5lLns09UW4aQubRfoplD70zk5vMk50kRUvfJQtVqlReDoeFPGvQcrLc22WmimULWjHDfO1caYSYGSHTqjHFAlxVWk42LPBkbIKDjB5L1ZnMzjvOc0SMHT73eVZEu+I/gATbpxC6KZOza2e2oAb/fizaTI12tBdWLBYvdEENsrL0simC6X90zHU2/tA9HNVOUD/FQ1m46g/lbCbgoTrGiesI9Xg62lfDelYTXGYFB41rMFvZ1pbkK7Drw+X4fhnRZkg2eJnd70tTtXWbTpaa71HSHArcIprJgjm5rWBvn7rBnFX1uP9xJdHihGJUovXPvMsFfrdbKoXG0qEvslernEnY94aNF/T9HooYAebF9rednd26Um/JNLVZ1HERLtyFx/nm9YH4mCf+1gauNeNOnlVKMFnr4bhbi1betVG48sFfnyjlYh6OEVo+aYTEHOwzt7Sz2xd0DI2s4Ca9tlEK1T8/OhxQp4aunY9T01lT/9hqGldmTNjtGfUkLdIEszVXIOqz53hvOCWB7wcnTWnP9DrZ2AQ7zMXub6q2D47pUvMLP7N2i7zwT0CnmNwj3ttxy0Mrzatwslp79I5/3O9Ubgo/QswFxP+DH6KqaBomPaTONFrSgj1Rr9MgJq/EHCP9qDzNEZPLciZrdv/gjGR7/o8Uhf7tZp/zQShe5ONYHGirZ73SQ1HunsZ7LH9vikLtmvs1cJn38kU/RYD/QeHL6NhgML5tX26Efih/+ZgvnNro+S5lZNxIxzyPIhxluLKvb4ZIDErPrMaNaCYJrbgGYAiK7+gttmQPgyJNKyoKxboADFIM35rjvbTC/kgONv+8B9nU4B+MoHMwIuYAMAAFcAArAqQuRW3AhfqMwkM+RPQekCEGacw6wommi3g0bqe6QLSiZAtW6+k8ECPeIMSEYvHUAAyCT7Awyb1UUOtkhCtWDEtw7ykm7waXzdl20Eyib1s+ps38hAu2jdS+J4AIwiB8o5D4hke0opHOLemKQiYq4g24YP5ALuQ+MCmKTw20UP+SrcUCa6+0ogvNBCy0sAsc7yLQMA2ZbQ2FcEs85AyqjasuolR+zgHtsCCIKB7yEDhEiA8rLsOQjoA0zh4IRsr+Aa4MBuoogh/ejwTBQBjBIA8esRHVgGBajAVb8Cv+QQvFJCw4sRP7zdkWa0v/aqik4FABRSRIGK4OCSgPy6BSGIJGJLCA8KwCaVGENM47IgcKc9FyqNC73gD4hDEP7rEYhXHfNHE4kOoZYQ8jxpDyplHsqrEBMaQbn00bCdCnhlAVDYJUXLEcPaf7mkDC1LEWlQ7DNqgQDzH2qFAJ6DEFtTAPJsEki3EfvWAZwwKp8u89ZI7qugImCXLmDBLBPCOWsrHAfmiV3MchiQc32qYVcaAcicxqCCnJMHIdlY48hsK6uGAlPzIRQxL4SNIkJwElhYKiovIikOrrSPA9otKvaHL5nM1C6sOqBmIhKeL63CYVH3IhKIUci9Icg4lv9AzCxO9x+kbj/gHQIkdg/5biTP6OKkeSGE/yEb2MHwPSKxNC37ZwMX2R/8iy8hJD4KaFPoJk+kCDLU/ivxpO+4aFXLRgN4iSLsHNb7qvppQDz/RyL/lS6a4rcv7BSjxyCquCH7jMEYlRH+1PJVmyTCyi1/QvMhOiGSlzGhXjMhsSJ09DLXdSDkftso7oZcpgDVrxNI2ygFjGcLqgkXjEKaQwEBOCcWZzw4ZlKkJBJB9T/x7R/u6PMcdSOP8ROGcQOZOzzaANNgqFdw7FnYKQDqdThF4GB+QyO7XzTFZNFmdTQY3CSDxH42RN6XqCmS6lKs5jaZLtGBnPOgavMS9CYfQPILvyOO+TLPMzSEIztf/4KDQQolRY6SfHIgvygA/QYAy+4AvGAA34IA9skyIINB62xTQPNDUTIgtmgiIa1EHF02EycCYmVNCSJSq4gjzS4B+6LL7+oXJu70MxIv9KsD7t00RPVAGtL0XHonUWbi3bzhsFdCziIQ/QwB/mlE7rdE7RIA82KyEItCAEaEiJFFCEyVN84uOMIyzeZQmVzme4YEJpDSrTBXNo70oDK7coypPCwgyEsQtmMj7Xa0zHtM1aJ/Oeou0ELER6UqzgBu4AKA/GwE5f1U7HIA+EiE+JCLoOFDW3BKBSL0m7Lzy58kycNDzcsUIt1B6cIxMrSlkhSj6fIlMhM0xv71NBtUz/TYMLRrUpevKxTvVMKyJEVLQMyABWx9VOyWD++JQoyyACcVUCN+JTdEQePqIJwA/P9NSC3mA2805RcRFKPQ49MScECe9HRKVEIe0ZixMhCvY+xQAM+IAMbjRHyYAPwEA6l6/NQK9NK6JssqUy2vIiOJMsGOELyJVk6fQLGMF/0PUM7oldo4tdbMZQ/8FTQuIj0rFe7bUiFChRlU4mvKBRnQ5QoiLSaLO2uAJMFNYoQhQan6JZyZIewEBOSxYNwKD6mK3N3AhGjUIzpq1kTsLHUglkxYIRyJUMpGAQ/IEMDkERSBYMgodAm4Bl2bUiagZm69Z4kITjjsxXw8IlvocJ/7XCHhq1WLeEKbQCOjKnaS3iS80gWqUVOcHAVUu2TscADOYhDa+WDX/MjbrAddbpJCq2RcdibMlWCg4BbaXgD0oWZX8UXYnypVq2ImAWgfgpXo1HHFHPO3sVZ5eEJDJSEKujL8lrRC1nr7wgc6wCaS0iGBk3Wj+1DcRVcmGVDAJ05uIwcyWjLjqmC+jHjk6CesNWLMpgZEnXdMs2dUn2CyapdVfxVnE1ITqlXQ5JO4SpDAbJ4oRDbz0DZ1hzZxHCHgC3UTsS5T7oeJF3MiniWTe1eT+VC8Y3emH1C+6u8qz3Q3IAEMIgDNogUX4Gjk4iY8FXLKCXfE/3fEmWDFi3df/joX2JFH49AifOYCfO4FSmRIkQiYEmKWbJQh4GJ18xkGeBV3D7DkOCQkkw53gPeJkOdoE/dXQfmGRXNwDjkD8z2Jc8JA20bZWy1lvjsCnyYFzxAIwDAQ9Ktw/GeBD6IGrJdVbxZn1VuGWLw4VtYmVnuEhI5SVOJV5cwu6oK3/1VxeZdGZskbb6cjmGFzYibSmMGHHFNIlFdIkZWHL3QBEOAQ8ceFwlWOxA+B+wdiAESAt+4kJYKYY0+SnCIHJfVQpSWZVXWZUhgQ7IdQw8ZX3n8kDhmEfmuI5PxY7tmI5JAsOOpF2GwyayAFgvReOakpAFGEP6ha+iZpEdV0vpk2n/kRg528CSX5UMFmGVBwEO0Ldi/Q2ELzgLusA5o+lK5nCTt7hMn8KLx5WV31mVD+GUX3WNZ/lPT9OWxUAeZPhd3mWX/3mX34WYr4QmbkJJdTiBfHRYBBkoCPk86UNp/MWZecVTEwIphJF5p5mRTVQfRPhV++AP4FkKFGGey9VybzBsc4CKj5Scf+IndEMM2iAMTCR0PSONyTWeyYAM+kARVhkPyBUN2LiNa/lm5higy0BUklpUkNqO12A2gNjVdtcobMKpjyhCVUK8lqo+Im3WFJmiKyIYleSRp/UfwACC8eAQRDqe+4Bc2/Zya0ml26BtokkYCYY2Ynqm8WidnyIL/6JXlSWhTvtAlUsYVpXDnonahXH5n0XlRxp7SJI6SAimSGpYqjHCJl7EqjWuPAOYJdADKbbCf736SxBYHxEW96jZROmhpOd0DHparVf5D/YAVsegapeNMy9YDF7kSImxGDl3W8Rgpkl5LNq5ZP/aTluZZGf1sLOzqGV4lxnbsaO7JVbpJ5gIjwExLKYjCwBZX4tiUf/FPLegmCtir/iNPbzrKoJKiTW6osmaIswaVuWUDCDhtaUAEth6XN36rWsnDHJ7lRgBH8GAER4FuP2ztp2CD/w6lQGbTsdgsEmWDxRilpk7sQXIn6H7R2ZDwzX8RxaRj0gFJmpYOoRZHrY7s/+VbmmcYydycak48CL6hd2qImml2SmS173/4abrdKRHtg/S+p3/oJv9Ab9fNainsTJw+0W4gBF4Gwzs+gwKfK/HIsfHVRIWvE7HOJV/GqiFGl0pXJhW9rkbe8PHfMOvZAtFRTfuuIZd0ymGebyNWVHJeUpykbwUOiGIGJMSMaEcMaNrfKNvXDVwmoz9obVXWRHE9Qv6YBCkgFw/83Ljum3+W8Bd+orPILhPZLVhtcqlQBJ0ug+0OZX/4Jpjlcv5FJ87QgzAfJene8MD6yRWIrDSoMkH1rp7Ys31KaHHKAP9xcOkrAsmAQ7QAEdxFA3gYBLEWjiVjUs+jBCXVyxsHND/4RtWYVu2yeAPFEG2xwCtVbmtyTKu/XuVyBklmEYXqRc2Rl3TX/sPPPpVv6DUgbQo4Xif/ZlUMnw2TOLV8/3Vg3ELhKQllvq6sduy5aF3dT3Ou4ApouINJuGVS5YOJmGSPltL5JH2NJUroR3Q/8EQBN2nx1eSfZzbxzXCyfKC5Vq3NfwfCuWtaMPcyQLdX3XTX3vKTXZPUzjeb5nerZPV8X3fVVDcuUBT+93fhwTEJxvjOgM77Hz8eNZflGASMh2WJyEUaHOvpkfPl6m0xzrjLYLddfydB0G26fudyRY5qViAEII01XU1PFPDWz4soN5OY74PPN21Qx2Wa77LizKx/1d95/Pd5/8+DfJAJZZqNgb2jlFF4Dsrebjbh4uCiM1g5qMXDVqMnBPCA4dzaf38z7eeIuBepMVV7Fn57k80rtvAl1bWl2Q6g1dpFNt+OCI/7q28TgMhnrcc7+GdRooj1emdJJw6C3je5xlB+IVfK+5R3IWe1g9fydh8qhOI8btbECfh5R/4C44d8WQvRMHAkCVz8zmfIqb/8/0h9FeZXN2dJkOk5DVY/cMgMuCm7QAhUcJFRf8hwSV30xncZMlf5FvmZQAinsCBBAc2OSjmTJmFZdasyZJlC5eJXSoyuojxIpg8jCpO3ALR4Zo3ZeKYrFdPnsp/LFu6fNlS5Zs4MP9r2ryJ8ybKeizz+PsJNKhQf2P6KIJ0SMoYoJNa2nv6700XMGDM8MvJkp/Wq1i7ev0KNqzYm1+GApWCNi1aMv4gqU1r9ueXsXTr2nV5L++9HDkAhfkbBhBfvffETBTzr40WiGJyfPUZN6gktJKEjlEbOQ9MHJw7e+ZcMHS8IAebiInD8I1DiBO5WMyYcWOeil3MfAw5kqTJOClXhlW58K7wljvBRB76RdFbKX2Cgvn31N6/qWC6vOm6Vevw7dy741wad/natuIjj/GOnjthvXwHr7/3D1AWLloch1mcpXHXLMeBTpZSWVB4pDVIZFnU9FmCohVE2kFnmLTQahFR1AX/bFRdmEceYHTkERcgZSGSbiepJI9YK12XnlgomVFWfz/RMYh4igT1hRn2KGEGVWqgmFN2XKUIZJBhsRWeeGy5tVxkZAjJ5FfvPbleS2dwkUUYLN3HmGM5oeHifwH+NGBaeMSFxk0JerYgQQ0mxFBDD83n2muMXEhnhhhN18VtIZZ0Um9jlfgGT01iZQ+XLvrzRYzi/SEUGlvo6AV22Q1KaaUtGRKZeFKw9Ud5cfFhaagtQUkqfC2FMd8ZWmKZxRk5QRbXGGj8J4Uii/yRVFqHtDiUZmaeiUOaBiGk0EKqQQSnnHRSlaGGG17UxT8fgeQQSXyiRGJYKMUxk6CiujTJ/6FgpqUIHkhKcchQfICxRVdKKLHVt/ICaVyRy7GVXJJxPTcvpaVC+VIOWlAJSEuAlAHRGTjYFAZ4Q4WpaVqQ7BFrE1idKWw8/5TGprFvShQnRhg2O4mzGHW4BbW5XdtbiV/Vs1tJKPX7hsP9jZHUIYb60ylayEWa07vv/thv0duJkamRQNHRs89xuWo0k/8+WZNhXCDWEg4IZ1GGlTDBKpRyEUvxR3ORGTIRsmqrLdIaWrQJdxlnzK0Qam2KBJFEyjLbbB4lXwgtyiCuvFvLL++GGm/efhuuuGKb/dMecA3V1E1CCx115sPtLJSmRAIFh6Jkai711O/BhCp9WrIEyP8ZEGnhtUufB6XIIYNA0jMeA0LCa1x0xEkbbWkMT3zxxh+PfPLL1pnhJM7//VzgeXo4+Bsi8vaPb1jBbNI/hc8sLx3iSo6Wzf7kahYdll9Oevt11TuU52bh8aVQ/LqfnukAu5RDGVTGLqXXAbAMvRuK5CpDBrL15wtrCAtBSmOajrVJCxKCE4WKxzy/TQIPGQJc4PREuJNkz2XbQxxN+iSvLojLH2KTwlCSUiCzROsll1MC/m4YFnqY7yeKesvsgrJDopgKh97RH8DakwOrQe0lYhBgSxhxnAP6I4GMOg4jvHOQlmSxY/+QkN4qpBG+Pa+DVJEeCK1XBu9hT3s5MeH/CRUnr8YdpyzkGw9QEliruFSOJTfCHBH/2BX4CSUQuUrLD/tzP0Cq51//gBJfcACYNswnCwuDSROzALt/nEGOBgTQFKUAieMkcjtZZInF/sEmlngxZGGUTR44mKF/AI42t+kiGtUoKBK20YS4nBcclLSIQyyChWqpIqKQdMifwIGPT/GjIp9ZE30kE1H0M+QKyTAPaHanVHjRyz/68pc2mKYJijmMTaaUBqqkIQ8FjBwo/bEHPEBOKF+4YnrEEARTsiSVUfkYF/B0EVkyy3mxXFYaouUhkHQxKmlkSS694sbCzYtztEsLGuiwnLLhQVEzIlN0mqnNkMKkDe0EyhjE/zZN5GBNpIvMi03Y8xfT0O0MYkjIRLTwEnQSjz5tKENK+0OGBqZIDKc8JWKCc50DSWs6/7Dnhf5RMpZQhSWMSCcYDpoypbKkof9YXFe41z0RzmuHX2jaMBcxNnSV9Cdj+ChL39oSLvSHaT8Nyj/hWilwtmFuadTC22jaxP/pNA35YYli3taEPAQxMl/wFZCasESstMsmfmvJhmCyU63eZVso9KpLdgK+9LSzhVJAAxrSKoVfMhYqeMUrFFdoxdbmNTFiKAN+IPKPt9U0Cxu5amFHalu55YGiZkHDJKqjMSAFoQwWy+fG1PiPNAq1Xf+cYUAL+qwrVmSp0xneXb0XE/99fhV7Xc0WTkC7G++0kwxkgEMfmtM0TXWUsbKVLRfWKq4vfLe+QupLG2qLU4qkrbvF02xNwqCQM6AqD3ygQ4vGsAc45GENnDnD8Faanji4yrmmoUl0VfMmacWpqfYU2bNo+U+FcsG7a6AJT1x2ypzMjEQ01qVOwCq07tllsXdM6yDwy1b+trYNdVUShoUMpByEYa+LmQ5GrJoGLnQtB1PiQhtyEgbEiAHBXGhCZ6L8mSYMrwzAKjPGFiSPMgiEY65iyCopVCFZmphDtbnN4P6xBY8cKCUbi7FNwFdjGo/FJEoIRSje8C4Pg4W4QulDWou8B6Ei+a1g4LFZxgCGbE7/ur9ZPsNiKkTGKGvhDE0IA1/+MR+u1oQvWQ4sDtpzIAX9Iw0UNrOtg7WgJjB3NMSyWxlAnLfWVCR6sUEx9Qa3sjW4hko0KWVNQhvoGt8lDjXUMVZUexwyFPItY3IRGarDo01rUw5gYHSjwDBEcSe50xCZSrMYQaVRlxqJA6vSqpGIg4m0IR6vtrDCOhNXwooFTWnS5JoPIo9iecyfFJFl8KZy0NZ8qHrXQ1ja4uDnloiVJdEWNHd4mRNOmoUMXxgDWt/Cuz4A2R+ToI5V1C1SMYCBD2QYwxdKToZ1HRnmKVJyQj7NCDLGm9Rea4/VVorEpEs5DAIJw8K44BmXrCHK/8kdjkCiq2ZeNyHhvnYTw9OAJ1p6187Itlbh5FEPZU/kDSTceEw6zkZLqZCxOvtJH2i1qT0cYp4y7KIawKCGyfJ88IQXjpKZPJ9Wgl1ubQDgI+dTn6QjsQ1dzkGw/hJrgLukDAfNeF2u3oQGHpzrbQLxm+Yz69YIG6sTrxYaz54ti1NpIYp+CdxtHCrxxQUPxvQHHZA0pk5123cu2cLfuyDpwit/+VjxL4CT5Zox/8PpMOGL66p0apa0B9WvfiQO2syZqg0vsna5Ote0npAHlR5vWUBoyiS+hYMiK0SvHxGJIBiHOG2h9i65fb9EHhSHMHxyoQiMEiYDSDkvwQ85Uv8VRMN8DwiB37Rkz7c24wdA34REqPJb2scXiyF5OABmlQQTQdAFaaBqn6cxCKN1CadwC7cavrU27UZYbYNGfKI4KrF1WWQ3caB2WxBuHNdxRVMzZiE589QHn9MzfEcjQPMSUnFVgheBUah8VnJUMKEFFyZ52/dNrvMPIsgXXJOFWZAG/CaCMLFiBjYWV8eFfcZ1WOdmIjEVVBKDEBFlrscQ33N/W8ctJUFCZQAya+AtcHcT0hYkAPhJ86VtFPMTeJRSe1QTXvB3asCEUkiJ4rYXMZV+c1NTFoOFSGQTb2NqLZEfWSgGJhh1NSGGXFB1abhmUrZPbQg3pndVbUOLa1D/EStDe32Sh9yyBmWAe94DJ1lAE4HmFTUWWt1RKENxWsxBBwPCd0gRGWjggDURf+BWidcoZOzhFxNIVI3ndGEQLaqyOgjiKk3AF01kapKXel2oeTDBeV1WfqOBWywxN1u1fsoGBshWi2+wYr14h7qIg13Ui8+lE2rHNXahEqAFWtvBIkPRQ1KAgP7QBxEpFzYiHT2SI2lgBtjIkXhFGI8EGH8hGO2xYpE3jjARD0T1fVrQfUmHamDHjuFXExbWBTv3FbzmP65SIop2j8OzjzV4HVJmgzeoEjy4UM6GE/LwBn/oWWOhkAv5PkNBBm4xCEqIKIsFBh91kThhi4AHhR0J/5aAtB5ZuBdIJIZZoIU2gQP79jZpeWql2FCnCBNNUIIn+BWkkT1csAak1xLrJ0tbkBvWYy1t4homhHYqcQYP0WIQlBPaEwdw0mLd8ZTH+BiwdRy+opVbeROQWB2TGJaf6T6m45Jn6Yk3EQ+t4pKPNB371Y4vEQ/9KBYNchATwVeqZiyq4ZNoVIP/aIstxhskkna4BUGlYRPm5RI8mDY2hB4KKRZgsHIL5FjM5FY5YXwa+YOgiZ1FI5qleYVQl5aoowVtwBkf+JIvIZcvcZZgIZumYYtw0xI8wgVgoJe72SaJQxNc0DIlIpzrOZwxZpw2sZRrRzpmYG4uggZd4IMw8f9RypkTJRh42Qmh2jk1LkmPB4WBJ9kSYsCSnZF0CwOX5tmaLtGdq4gTxMkmhNUmAukQLOGTI2Es9dkn7dcb+JE9QWCj/Tmc/9lGkMl/86IEk/CcNDIJoaAEgGkTzfQuWOEFDuqZEeqkTbKd31mKXRAPpekSCpF9HGh5C5MnmxGiUlIRnlcTbIYaFfFrtegQ8amXLvpr/6hhKREH0WJxe2mjdcqYWoRwcYcVyMlsmeMFk6B7x0EHk7AGULEGTeoUNSRZw2MdT+qoUPovVtoSbdCJWcoZWtAYGLql5emlMjmXZpoTZLoQ/dg2gwMiw6NKuvmPZ3B/K0YlpFandmoxRQX/QYT4MgGaBYGSOV0wCXCABi3yBWgAB4YABqEgnUvJoDWhqFhhBmmgBhv5qNGaP5H6nadSgq6imvGwZJjqdGXIEp3xoQjiqa5ZkiXqIL42dXo5h2qqSmy6qsDRfibYBLEaq6XUn2/ncV8he5FJOtGhSggqnUV6nTCxrDghFcPzldKqsHZBrdX6rSuWRpAUDw6Cqfs2rjG5mr9ysSxxmoRFoqZELKkxdYQ1h8ODWyvapohTDxbHNXpJr/UKssQJE8QIFnzKr1HjryzhGigCFV6QfDhRsJtZgl2AqAtrtE5CKupYE2c4sYjhaa1CVALhreEnhjhxnlJHdXMpUyIbr++n/3rx2QXz10A1CCGox1xBMB/z+rL5NJyNaatekXYSkatNKSo5a4t3FR1rsAXJCrRCM43U6KzQerSDCxakwj9Zip5Rxlf4ITc0JbUuEX5iZpeQ+6VblSd+1iAKJyFg+7UrJp8Tp1SDCZnycBBBkH9lsLbrObOD+Lbb8wbzYaRFk7P/YAaNGh0CCxZDox3MqgYPSri/ixVUEzCI+62oclD4IYd/1QT8Rrlcul/iurH7BKogWyzHwhorFmUPd1UTgWe4wRJ5xmw4OK9NQCWpi5Rv57b5ClFqd7PfkrNS8U/+6rNi4SNK2gVqQLTAq791Ua0TKIZRtmzxJjfLC6Iv+bEgGv+9G9OPHONmE6Kz6fRwEDw9x6ZsHsEScZCHQaBsakuvrNsVNPsVPCgRIyEv0+kaDWSoezsW9ZsTS6qRRbu/MWwTVhoGkOU/V1VVHTF7pMa8WbMwktsVlfsPr0lYLfgQwuZkOCwyB2XBVIK9ennB5UW68yotqNvBxamnSam+XvG6VDKwTfK+taEE0bGUXywpu0udCCvDa9x82wdJP9d+zLIhAiwGPfyt4ce9QRyi5hdlC4EscDZnYWRGJSh/Kxpdb1e6EBGrWvyLWAHCXqEEygaYPSok05lnhQoVsUsXLGywZoC/CcvGoXyhlpeSFjcVBFUdelkGdTy1CyOGBwy9ZXj/dV10vEcsJ4HsQRySWdVzhxxXGmlUD87Fuo1cjK27p3oLmHxbyawVCnkyxtKht8ocFpwstPgLw6K8v+0RLLU1H+5WMjrci6xcwEDsFXI5y7rmXfNBPBaiCBfSziYWcR9SLbn4YhAExekrHNEWFq8LEmaMHjmbZ15AxgnKErqLxmf8tzCRZ89qBNiMzSAJx1wwJ2U0dOLcvCIGFqd4daRRW+nUERO9PO0MBiI9VRvSIbhhdr85xfOatknJZ9zxyO6CzO2bIjmrBNvVTMnstz5CzTXR0zbhyQDr0KHMajYMJxoRZVzDw97Kjrk1hhkNcKBnw1PnLL0V0nlA0mXEISDk/4/2R5ynO4gv7R0xfcwpswbSjIyslWdb0EfRbGg8DddY8dMw4QW1m79Djdd5DST8nKuUPBw2XRH8YENlzA/Ww9OC+QYHjROTYr+1cc16DdmR/RWqYdZ+fRf+qgRLugVasZSBidifndj+DBOMTZ0VAcqSjdqpDbQzjdZ1gdn8cIvWkzKm5wW17bO0aD1gMdcwYdenrdq/Ddw8GBEjYdligaT8sKRmYD1eAJgOYdvPbdvOndtfsdsuUdeODdzZrd3vicxvoJmu/S6HJhVEe6geAt3nfd6CGRUI3RVLit3bDd+qHclm3dqQXGiCmWdmUNsp89wp499bgN4+m9uinRWkjf8TeYagDR3fCx7Z9rCUgDkTY5GkgukQJfgPzG0G/63h/43eJEzdBm4TRmDXj83gJR7DDq63I/HdQXPf1uPc8YegW5DhG07jAA7dHv7h8dLCtavfJu7jQ03ZIFLfLRHeFP7cJZjhZjDjSs7kSk7jN34dBO4SIG4TCA7gP47loTzfEN634g1itp0yCMvjTU7mTs7hz03CUt4S1d0SRmDlWQ7na0zZOE5D8OLih8rc/j20Y17mZK7hUL7CVE7XPE7icW7ojhrkZ+0SRf7leY5nSh64Dyfpfu7fgB7oim0T133lh87pRxvJIXEdjP7l/83kvYu/+Hu/pv5wTX7mtU3n9Kv/49Tp5Are6bUerUpwLCMRCoXd6P69kUpOyKYu7MIePEze6gJuF2zOEhje42+1D8/+7Pog7dOuD7Zu7TmBCGi3zzPd6ynD5LQRicMu7qheG2bO365O63Wh7Bfu5IWuOdAO7/tA7fNe7ddu7y5hCjuRu5R97nku48Ce6nQy7sReEcZe6bat5j0i6C9R1xmuSPEe7/RO7/dO8frAnFjxLrINMr6u5NMh7Msj8ARv8P3uBQmv8LF+E0ZQ15t+QxAf8RI/7xRP8U/Zt7gOYiDT5BUx7CAf8qpe7jNO8t2x7v7u7qHi8i8P89Qu8zO/E6xFsHY+6jL+cB/P8z3fuwUP9DZe/9smj9AJbd3nTjpHj/RJP+1Lz/TTueg2rxr77e06T/Wu1DdVDXg+P/LPzfVd3978nTliP/ZkL+1mL/NamfZ3zvb/nup/l0FxL/d0b+7Pne5Cv/AMX9tGw/d97/f1Dvj3npn/kPHd/u2mnviKX9Uin/XPHSRDX/RAUvmWf/mZH/gLavMv7u12DfojQzIl0yw9j/XHziTrXjSrD++XP/Gu//qYE/WGf/gZ9DwElfs6cvU/f/CT3/uRT/nAD+3CP/zET/FCk9uFD/C1D/fLj/tk5PxYD/SmPyi+LyrWf/3Yr/Tav/3Kufb+/v29a/saNEbNr/u1kTIA8e+fFy8CDR5EmP9Q4cKE/BwaYRhR4kSK+yxexJjRoj6OHT1+9EhR5EiSJU2eRJlS5UqWLV2+hJlSiZJ/b/6tWeNly5Z/Zsx06aJGDRiiYPIczTNJqVKkeYoWFZpGTRqqQLv43OnFZsyFD41A5JpS49iMIM2aDZtW7Vq2bd2+hZuWpkCbawb+2/kvaJqnRZEuZYq06D+hVg0fBupT8c4tBAty/Ro5bkSylfedxdxx8mbOnT1/Bs25Lt6fVKUKVSOQaFPWSP/1Td2lp0GeAh0zVpxbd1aCLCN/DW2ZbObMoY0fR55ceeg1W352SZN4tmzVAvMsvK76aeGFYBO+IYhb927evUf+Bi18LHH/zMvdv4cfX/5CJc25WDWTFyH11AbBKPxPoP4Im4o7hLYaCTyddhpvvPK8S0gyz9TTiL2z5sMwQw03VEuJN7bgIkQudlpjNIFqew6hvrQjikCDqINuKurocuk2BhtcrDyBgJuQQowsRItDIYckssiDPgyxixFLFIimunq7Ubb/UOurStRiu8oM0gzTkh+2HFvQuRwZM68zH38E8iMj12SzzeWAagxBe+z5x8mboBQTutOorJKoK9VIDCv9nrvqsc3ABPOzMy9KU003H4U0UrfKUGjOOvl54w2cwsurqqD+5BNU/ATlCcqfsDJUUpEW3ahRzVSFNVZZW5rTHiVCyXTT/wX/oYrQT//088pR8yOToDWM8FJMn1KdNSFWL3OVo2anpbbahGqdCVNNc9oCup4UMwxUMFDjktTGHCvRIYdIQ9VagZ6NVlp356UXUjrnnAnXXL2ArosbfTrsynHLNRfMdNVFuKDF1p0W3njrhThiI7G9NVN+lWRMWYARKyzLMc9F9w2ER+ZHJ9q8IJlhSFl9WGKXX8awVltD4ceuf7jgVDwchSKv2JAR7spLxfBCOeWUiWQ5WpiXZho5mfGtD6ibcgpTZ92Cyi1jkI0VWWSVGdJpsX+MJntk+ZJ2tWm1137rabf16kIrTcHU+l/F0iBWa0TT9fpricJu16Cyjf4Nwv/gzlSabcUXfwkUt5/ulos19N2W7rozViPv8n42uyQjNGa2IcILl1BRxNNmPHXVT6oVoTlBNOONfDOt3PLL4dyc86NNAjy/0Ccincf0fER9deOPPwlELpSAmnKcqEa06p+idyzTwf0WCXTDkaawUeS/B18iJUDcgnmKKd8Weuq73Zog2jEleez4eVe2MTa7BzJ8/fdv8r4tHs8W7XL1PPWFx1/Gkpu6+gY0wc2PJEbwQtZ+pyH15I9/F0TeG0L0v8fZSgkOEeAAC2iXLeDEeoMLGgNL0jv7ca8yFsJgDFenQckJpIMzyRYIQ5g+Tfmka9fzEkN298AILmaCZ3shcWT/uMTFrSFENrPhDXFIMx2mjCcnRCFFhjgSFnphe/MZTnuYOEa1OZELCIpiBz04RYS9r2RdWAMQxzaSLXKxfkeMT1lAQkY+Nk15aDSIGmWGwxyOTINeKOTRgliSOlJkQYHrYyQlGZczhGgurhMkAHNISC0lsnMqaaQjM1amSZbSlC/RwvIqlUlBEnImN/OkumASyomEiZSnxGUuR6KFVbbuH6x8mitpYgZ+fNCBMaFlRBClS2Y2kyFtuJbMDgJMihHSiWswJtAWyZVkKhOPzgQnM6UZTWAKkx+dlKVAtpkWo4XTne8syTh7mUlhKmFEH/RMN+G5z3DKc56tFCaILplP/33y06Cm9CdDWFnPCALyM+08aERxmVCJANSVbzADFJFDsi9K1KMypKhINCnM/LwHYaX7aEovGAZfroRiB5mJfuDDD9Kp1KbhYymd1hJTLWGopjcFqurC4JaZrKGnGSpcUJWquKG2ZSYY/aZ7hLdUquIShyOqala1+paY1marXwXrS2YSwbCW1awoKWpGz7pWtkYkW2aIalvlCtSB/iMUTRqfV+e616W+kj7jOypfBQvWsQZ2sIdFbGIVu1jGNtaxj4VsZCU7WcpW1rKXxWxmNbtZznbWs58FbWhFO1rSlta0p0VtalW7Wta21rWvhW1sYYsovTlGtrc1krlyF1fc9v/Wt78FbnCFO1ziFte4x0VucpW7XOY217nPNelJg9dR6FbXJCObLnWtu13udte73w3NJdIAXvKqxBBkaER51UsSS6ChH5dYb3wnkod+9MMQ6ZVvfg/yCS2Qob5ouAR+9bveNGzCEHDwb337gQY4GCIP4x0wefmgYApXmAwRJi8nJlxhCpPBEhjO8IY57GEQl5cTcOAwGj5c4vKKWMFoQAKLM+xeDq9Yxt61hILhIGL43ti7XFgwGDjBiTT4dxNp4a2PP5uGTtj4H5zYRHa4kmQlO/eWVf7ulbHcXS1vebtd9rJ1qRzm5I6ZzGdGc5rVfFjtrjm5bXazcacaZ+bOmc7/yrXznZGbZz0fF859Du6fAT1oQhfa0IdGdKIVvWhGN9rRj4Z0pCU9aUpX2tKXxnSmNb1pTnfa058GdahFPWpSl9rUp0Z1qlW9ala32tWvhnWsZT1rWtc6tfPAta0Xi2t69LrXuda1YOfR63vIwdhyuEevJyIHMQQ7q8SWAyDCMG1AGDvZC5FDJdPABWdTddjRDkMbxC3uMFT72gbJNheokgUxzKPbSv22tNsghjPUWwxiaEMYkE2Pe5whC+sWwz3e7e17yPsMWtBCFhB+Bny3IZUAF/jAvU0POYRbDAnPQoiysHF1b/sMEZd4Vb8dhotnnBGMMM22s9AGOdAj5Fqd/0ex553wLhgFDNHJwhny3fKXZzXmgJh5FhhhlAdzIec7d3nPJy6HoHPB5uvWub6TrnR4U5zk/u44UKjChTYA4twJmYc+qO5Rqwdd5RvfehumbhBc41rsY4/oyOf9b4Rr4d7/TgMvBdJ2vr8d7gYVO8hDdO9/5BsQYlA3F+TAd2D/PaL6GHaxw2B0cpe75fTIgkDa7W7He7Qjw6YHIPIOiGrvmx64boO6swDyzh/UI8NuQxrakGxfMx7z24Zm613/kTOk4def57vmoZOFtevenSBJJUgYj+5/c6Gpxj/+R7igBeUH/yC9zzvnoe/Mj9AjDWKoftsTAgjVbz+cHhE9IP/Cr32E0COV5genR8Tg+/VHRA7wjz9Hkr/+xuN/nx0xOrNgvP7zv3eCvDQ4AwHkvOUrQHgSvTAIErazvgYMp/mjh5BgCAakwGbaP5HQwA3MpY2TFw9sO78DwVKahy5IQBOkiBI8wVOSA9kbwZFwuxc0pdi7hxkkCRa0QT7qwB70KBHkQSDcp+nTQSKEp3uQwSFEwnCKPTk4wiYMp0oKOyk0KCG0Qn4yQibMQl3yvjaIwi7UpTBIAyjkQjE8JSo8QzQ0JSxkQ3Dawjd0Ju8DvzWUwz4iQzO8Q2YSgy4IOzvcwzH6wUDEpTgkxFNKwTo8xFMChC5QP0BcRAzqwz+MxFL/GsRKjCSFC0NMlKFE3EROxCA5kI1PBEX+aYMuuEBILMXvucRVXCI3dEUm4oIVjEUmEkUIVMVaVJ1TTEVdlKFW9MX9gcVg5J9ZJEViVJ176AJcREZT7AI9bEb9qaRjjMbFGcZqRB5DxEbkoQeuo8ZtbJrJg0ZwNB7E+0ZyXJqEO0d0fBltZEfG6UYwzMV3hBjyG0d6VBzEq0J8ZBx1nEd+nBdN/EeArJZ54AJFJMi1Ib9H5IrcS0gj0ceBlIgwyLyHNBJ/jAk5mD6LNBKBhAnM44Li40gNMUiEdIlUAoSRJBKN/Id1lAjEc0iV5JDU68WWmLwzkEkiEYMscEmG0Egt/xDJnMQQhOtJhcA84hPKIVm5okyIVLq/pOQQzGtJibw+50MIqoRKuAAEoGRKg0i9ZjuIfcxK+AgDWlQJ8tM7CcTKsWwLcevKfzjKtXNBtnyPrnvLjHtKCWQ/ukyOeZi9rkyl59s7AuRL5KCHMKDEk/hKhBC/wnSP0GNKtGTMxnRM5eC3orwHo5NLyqzM5Oi1npyHjGO9f+DMzkQOt/tHlJzMvTTN4/jDeYTJ1WzN93DJyUvLwWTN2TyOdfxJ9ptA3UyOc4xL2QRO5XiViZiHhMtL3CzO5TjOl8wCwSRNwmzO0PhGQGA34qzO4ATEe9CCM2A/yKPO7fyMY6SHg1s7jnwYT/L0DFL0yzMoPvVkT+OciMNbzqlcy/ncDHrouqt8S/3cjHkgPf/8TwCNC2MLz+c00PjgtwQt0AV1i2HbSwWF0PcgQAqtUPeYUAzN0PjAwA7NkA8FUQzh0BF1jxI1UeN80BR1CxRl0d1c0RdVCxeVUevMzxplixu1yIAAACH5BAUyAP8ALBEAAAAaAk0CAAj/AP8JHPhvHyAxYuYRXMiw4T99ECNKnBjRocWLDO+J0aIljMKL80J+xPiPHkKSJempVImypcuXMGPmyBGzps2bF4Po3Inznzx59erFiVPmjdGjZcoMFarkH5cuXRiBAZNnKqMuW9a8adqza1cl/PgxfKMGjBmUYcU6NKPGy8C0L9m+1BemTRt9XgVSnJgXpZwzWs4AcigypEuTbQ6vpNe3sWOHMx9LzrtT502hRIsiVbq0YZw1WbY8VaOGEWmoXLJunczaIVyCZbe0DHtRTZe3tF9uaeulN0a6beTsa00cZBiOYuQsLAwTcfPFxaPDjCy9esPKlkn+HJq0u/fOKOO8/1nzbw2Xp1DTp9aqJI711rkFxp4dn+Fut/9eu/Sy20xv34TJ4dF7BNLTBkdtMMZcTM49Bx2BEApEXYTSYWcRUJl51x14P8nTUj1HDRVaFk9xYUZqWa0RinsUOgYXWWDIRp9aDXWhhkD6ofTfblhtAeBC+8wjhxx4tVidRhyVZFhN9JyRGJMPGindhFJKZuE/TfxUj4bfxVGPhw112JJ4b3hZzxporrHFmmui+caKVTYWFowy0meRF2qclSNJO+6W55r4LaSPSsPFKR0ggGkxmE1NhoHTYowZyhqVknalUxNZnsHlhnGIqd1P4R1Vj0CflalEFmlqtRWLlfbED55gBP+KVn0LseXFnhj1tqYZbOXJa50EzVNkq6xBFNJxWiTH5D+OPgopsX3NRBO0MWEqj6b/lJHtd19iWpOnGGnGKplBlarEue2xSq1NabQFE60L2YbrRUboyquNYHTB61kMFbpuYxJ9ZCCCkR7GrFfP/nuTtApfh6kYmmqYrUDyeJsXuA6RWcaoAoH4xkCfDTVUwxalddQbueGZxq0vzSsQnlvAi1G9u9pY1mln7bEHHSQ7xhdBSGqRoMF9QVpwzygxrPDDEXMZxxliYMqTYxgz5HGZCxk17sdIu2bUGv95sUZYXoBxo8wlo/3PbWrfyZ8ZNk9lNml00LHzQEMM0XVNPzf/hChHYRyN0aJ5LXbP3iQpLSmmZzStIdRSD3Ql1aBaRKa6pJYJZrZcIy4QWK/qyqauZn/cNkNqu2UGjS/Ziy9VVZGm8848/5N33p6j1LdFyCqLkXKEF03PPcTn3pDiETYBsePdNR51ExZhF4RkVRNE5hscW29U5f+8oa3x/Lwh+r67grEyjqfjxvpC99nkell5TJJHHrLrTNDttxvf0O4YDSy04EBb1OEcMzziDVB/EqIUcZQHMS45L3ItiUdlWFO9f2xJaw3x2Jc2h7XcKUF8b4NberowFR/hxk6uuc1N3ge72N3IIfjDHQIfUpGYyGEj/xsIY+4hhxw8KQdyKF5j/wwoRP0hry/xiAcDmVeGB0LPJkmU4PQoyD3tec8iWvMUiDCHNLCAbQtwI40Yp2IGH3HNZQRx2avUACyYuE5uUxGj3SwSQ73ljn8w+VtHVnIPQAAiDGLIQhvCEAZABPExRDyg545YkyQqr3GPeyASoyjB1lTvghuzSFHc4ynxZG9vH3xb3KZSFX35KFDpmxdtXmgTmu1mbmLU1872cBH87cNfSJMIwnoHiD7WZSNZgNogDanIvhDReIzEiCOXF8nnxWMylHymJasoEHFdRDzf4554jBcK8YGRNC2MnSlReTqZhcUIecJJvWBlGxtBhVf/mB1G8nbLW/YMj486UGDsAv8xEgUGaoU8JCKPibhkDiSJCIGkd6AWtSRGJ5rSZE2WNkeqomTSIh4bCPeKAr4vsmUqkwipOMtIzvUtBFdpaR9O2LmvlrYRJfW057rw2RV6yEELWcgCR3DKhZwGRgyFLOYQCYo0peHglw3sjhaaiJA2RPQ90SyOtShqUS6OpYM+4WDnEMcPj8IvpPIz2zjTqDZ4wQUqXSFhF/gDxl+tySYxxaWkdDmZ4R2EROfpQhrOo1MnhUE5rSEqyXIQjwbutImQc6iUohoda4HMKN8LF1azOpDJ7q2rbysLGMA6UhOqL20npQ3MekJC/4hudLKKSVznSte69rENZyBRGtIAhqv/cGGfYciBUB2TyJ7lQAxlaGoYcEAsxkrVYpj8pOWuqNHKncmqPeumKDU7v7n1KLVoy9Fr5IKT0g4kbGHrSlzlCqHW3gRSQ0qvH38JGNnCjhE9DW5Qo9Nbhf02ssWlZHUw5S1roiSjBOnkGpTbtQ+q6ZvUFStJsWtO1uknnTfx7kLC25fxRgiPIeFjeof0R0La5cMgBjEhPdwGYHJBKtWNL1B7KZ36ruu+0DJuY/mrsZcYRbna3KrnMNvWUf7Js6FFXXz0o9KalIVf1bFwazJsU+VweMQhjrKIR2zIDRttIXaFLV6lYr69Jiu3u2WNi4n12zPkN4rvsVZ3CHyRTTJk/6M6RlwoQyhCswGKPEJe35Drg1ablEWFBFLyRYw1D5VsWEAklvKH/zHlgFp5JUt6VB9xmFO9nufSHQHsewRbqTJXSsbSyVJmoLtc/Da3snFGXChCx6YyxuZHeU7La3I0WiPn68IQ+UehN9xhECPk18Bu6ocJWeX0QlpYw6oOPQ7ya47wVac41emTCDRmQ3naUPolUBO2lBSK/tcoDuGeZXMXFrCdNl+pVp+s170+7sbkz3m5JaGbjGhfL69xDP3Hr6d8aJWEJNe6q+F76FGXQrLXnz8tMXI0vWlOS+nai802hJJC6ovcOEzOXUPFuxa+8YANTWVJd37YzW6GQBgm8P/uiT52LaAPB5vfxv43RFaLkfGSl4YCV7YcBnkPu/4Sp8IsJBBxOG1qG1BSOWhcxNEMIfd4z9stcTPGwfQZNoNvTmQzi2tITnKCFNklKVd5RGQO8JoIGkg2rydBzHukusiBMYbucCAHKfQB6jF41qk2hZIuBiNJ/D3yKMNSrU4S8ZBam3ieYW1YGVqul1wgfX5J2KF19oKkPaY4L7uyATHIo+1QDpzPQkCLKBB9iiHMxdE7gfhOIVCHOilLrVhNPmPqhXDvg4rHyBZiFGvHy/plbET5rRum5MuPN+fV2XlwADiQexynl2EOWtHz7vD3sB5Cf9/vlihmsZhc/EJazT3/RkjTeN+X3N0tmTzxjW/8ZCu74MxfCCC0gPqBzD8weD9S9aekbwK5vjhTlBT1wF82UQYahxHcc4DiZxG710bm13UnhxLq1zPsl3buFx3Kx3AXMX/113ym14Fitn/EkQPBZR3/1xqXAntx0ARBQIAxETIImHEbl3v8QH5k9YCytgXnk37DlzsVGFcX2BoE1waAEH8NcVMgOBA3BDgRonojWILSkX3EURmBpwUCwRMu6BK09ylUN2ALeBFmECs3iINhARW/Vxs96IM/WE9BOBmcNzQvgYQwgSxnMC1Gd3TVQYJiIC0KlBc4IIWTgR3Qs1TuMUFZ2BLg9ikgk3hf6BBp/wBoI0eGr5IGMeN4sJGGariG+6B5k3EPdqGBLXFToEgSQXN6TSiCXcGHM5EsqvgYOPCKioWC0hME9cARZcCCUyMQ3YcS4zGDlCUQidiIawEGiSeJYcEWpmN+f2ZSiKOJ8taGhQN/NnEPWjCKSZMozXKHpOcVqsiHrMiHjfGK4jiFsxgEVVgGHjJBBLGLGAGDKCFuIieM/9CDxsgP+pI2udEFltg1zriJnNgXGYgT1GiNLaFPZ0CQxOGEMtGN0qIFTaCKxOUV4viK0JREs4glgrdU0KOO6/hEhcdc77g5CiiPNQIG6vaAOphaDbGMxvgv/bgX0dh5PUGN+QcT0peEA/+FionDkNKCAw4JkeNoExNJkY4BURx5jk/EkR35bfFoezJIkg5RNkgmiZFnEROIPr5nBFppBJXyknvBdi0hJJ/oFTTpFffXEaeIh9PBk3zok20AlBMZE0NZlBAVi7ooeE0kObm4EOzoEEVBeG+2OVUHlQ5hI8mIg2TxUvGCiRfBblv5mFopJS8pKF8JjVhmFwNCloqSF564cGm5jRjBlhApNHA5lyhhmnlRl3Y5EIlyi3qZHQ3RlwxhgL54aqTCiIRJEGVTiWqxj2aQBvF4lS8BmVvZD8bZDwOhDzfHGs44aJUZhPPwhkZoE2hpTET3maB5PKLZlv8QD6WJmhYBnjf/oZqrORBNgJd9d4V7GZsemTFrUHsxiGq56RCkoV1nCHmrw4z/IJw9wZXHORCFRg+W2RjNGXCVKRCeGBwj0RfV2RjIspkQopD/sJ3d+Eze2ZZDGZcOIZ6NpJoXcZ626JFK6RCHuBBn0pQYJ5/zaR8xomcm5QUrgyv8KRmbKCBysKDM+YM2QRHzUBdw+Bh7hEimh50WQaGq+Ey5haEZGpQEwaEwQZ4koSkaSRAjSqKyCYxeCBMJWJuNWIOMhz4MATdYeYmQmGQ9ahc4SqPs5xVFEhwUUTR7tBKOkXRMGKHEo0BGeqTM8p1L2qQa2qEQ1RIgmpdUup4f2p4EQZsxoUUj/7mi6NOAQUYQb0CJn7WfjGkd+7BzTjKdXmF8CFNigfOVInFeKhGncuoYdGiHmwaOCZSn0nIcF9qTSzqXTkoSUNoSQdCaiFqlh+oZ7/ktgpmljhqJ+1mmtKKDW5UWM5pkS+g7aqp2jXFDwbE/hFYYkUYSi/E/V+YYOJSeEOKqogmrfDqrTOoSt+oSwDWlC2GoJNGXJ2oTiDesJ/QPYSgrtHKPJ7Ws75GpiYKQN0FznwpUadoQ1mqtFhGgK6GtCeMYepSN1geuDBkPWhCrM0GufdoSsBio1ZKRZzBFr+mxL8GO8jAeNwGP8kqs3fOIZKWb7hIveaCPxHJTOuWvMAGwPf/Ro2Lwoy9RsAYrEEwmpwliNJx6EwapqtYBsUeqBTgwrrN6mhMJiC2hqwzBqyixi4HXqFoafsOaI79ZjKwjpi6rj+kTITJbjfGGeV2xc2JQkzHBs9YKKQq7rZJxnd+KtDNxIEurpBZbrgvRtDgBoslyHewqqO25hSUrklyqeKCTNSqLsgKRBkgmHy87ptBStmz7EvYkUzcxDyWms33Bs3AbtELbGg/qsNFht9KCt0zrtwNhsV2RKB0ruLBZE913JvDpEoyauAh0LiZlj2lAuf+QkmQ6htTyFzoVBgNqEZUHEzfkrEv2s6UqunLLGqZntK2BujPRBEq7uk3rul2Rrq7/2RBSBLK06y0j+wZQ9xKIB5gLiC5RCbklV5VqMLmN9y9NcrzJ2y82u7OdO7CSIRKQsqlCO8BDOx2JMn2Tgb0zsRHduLcOHJFeAbhmJr4WGcFqJqzwGqwrii5coW56VXKUqBbzW6bqZr+B1BH5OxCZq7lxiBA02xgAvBhQQ8A0XMMFTBClO4IKzMDcu7eOIbUUXJ42wV8GeLvqq7WEycEdDMK8eYxiW4P0u3VjayQmIW35q3bQehig6r+sEcMrMcMDrEM2LLSJVMYN0a3Xu8Na0MAP/Kd9AbjeyhBQW77lgY5dYbLCqMRKHInsRhpgMxDwC8Vi25hoJCnzEEiCNKBY/7ycvJOzN/wY0GsSYkDAL0HGZXzJiUSnQoOTL6HAC7zGPcy6XgG7FzHH8KoV6buoiNuI9mAPeszBvrd7/+AWYESpI7xu+KifrXLIOdUGXCxTLPw7CHG50RHJCBHGkoHJifQkgqHMOomgrYq9PKy3bQzBPYFD4esQpvwt5cG+LZG7X9jKrvzKvMt1YEMastEr+0k/XCfFurzLbdDLaQqt/ohPnJuzXCwdxjzJo3uK3erMAF1fnnxfbFzNRPm3GRnHQfxUeaGoXrG+CyjO40zOXCc+a5MvUJEv8+su7dwQ99kwnCvPBAGtKwcpyEYQzfvCxQwpxzy9FHKWphvQlzzQC/9cBgVt0D3RmrbKdI3xGVhyMZtjgBEt0eRczuzmG2FoNnJTFS+DMl3n0YVMLCGdBZMsEPZU0vQ2JD0nLCUBW75sKAirEhDj0kZStC9RxjSddDYdyhdLuyGqTDzdGPKAyoh6uCqaexI90a9Mct60NvNISqV0Fr2xj7G2N/oQz1RND/LGciPmaPTQo1Cj0vpcaClhEmewsNZ2wNMYzairKTddzTZBynAtxDeRJUmRUwN4pVl71zOU13qtx+wGQrJxI/NT2zgzy079eFA9xZVy2DiVHLvmo8JGhGEAGKYrJaOqQxtxqtCSwzbJ2XbbOJ/dxjGBzXUtx3H9t1WIJj6FJar/fcQDgbX649pFDTrr9jaWmgd4IFJi1dSEXdiecxzHy147hRA7daOVktwCMTA9Y9YuMUADLd1snaEhm9Aosc1VSxRpslSEqC0lCqxdqLv/Qt5FTXLoTducVRVitQW5/dS7/c7UIm+IDW05VeI51cz5TCD6vd8HUlSa3RIA7slNNN0P7BKivdMMvahJkSbdFjE+gY4PrsqL6M1IQ+EUfdRgpELxI1K1XdtxdI9G8NHwjTT2ZFNncGl51QXnITR/9cjFseIp0eJd49wYEeMK3EQGTa5V+9YHTtrvKHhoQojQ0wREsYI/7iHf/c1BjZsIZOR7fdTo/Q9NHjv0ujavA0ek/0FShAziXSlvNlViWaBXctNTX/Z2KT7Z1xrmVog43Wq9C2Hm4DqUgZHmoiy+HGuubm4RTSClcQ7k5imAiYrn173awIiiXePnsM1uHmWSgg7Y9HpKsqY6hy43tqHolbp+QfLowJQG1TVbt7V8l/7lYK7puaNHCKydeZqhhBQYSUTqtdqdODTBbZ7qDLHqGblUdsyX3bYQmZTnIRneRuw5uK7EfM0f8sF484MVg+17wTtKxF7sPsLocXLVyo5TtFUVszVbWp5DFLIgWMbfxmOQx80Q2S6OlHQcZxBFYRBFaa7qGTnrC40SQZCurX4Gs36e6Z6o7uHuiigQ4j3eeV3efP+9BrehLzfSTiRkFreCg7qZ5OCE6OPEla2idoMiIMueBowAX9DGU3wlNJL9uZkuxseBQL+FHJ4+EBRq8fHQ2Em0VNG08Rxf43IMuzluEdts7jsVeyD/49ms8t7dEwIm4evi2q9N7yQnGz1yG+ST1E3M7xcxXZoVRwCvkhBC9ELyc87uUzlrSCpR3FrQU9IGCNF+s1G/342/6Qj0oNcO3RhKSFsfRSCWBbeIKXZRlw7MENhMvqP9oVJqiyaPEhEz60nh3Wvf8v/g03hN9zJ/1I/4H3rFJqdUQmRIHzQTRjeDM29V+IVS0i2nBV6GHINk6Quxc9GmU0DFyTtb+ZbPLJj/P0MGybY8+YojBvr8hSmiX/7lD1FqThDxYOAvkd2vnvZNVPvWkxQgTxS0jxMbxee5AxD2BA4cqMTgQYT8FC58o0aNwjdezKjxUrGiwn9gtizk2JHfP5AhRY7kKNLLFjNmuqzsQsclnZExZc6kKXLfzZD66MmREyYLlyxihLYJI+cevZr0wojRkiWLFjFt5MyrWVXkPKxUZ9JDGkaLVbBhxY6VmeOMFqg5YuZg2zYHjjDxwsRt08SuULxP8eK1azfe37g4BA/GMfKsljPxyP5VLDKImDJo0ZYRE2RskzJlzlStV+ZfX7Ij5ckL+eZNaNSpQw/8R9AeQthKPKpJs4aj/0ojpjtmNOPR49iSNL38e6k69M19Of/tDANUSxuigIzS0xd2npw2TNGeaQMIKeqsWrd2/Wrc/HmaXtGGWdtW8Ny58eo22XvG/lP79vf2bcI4HmHBQmpCsiYWY0zAMyKb7IwCQ8OsDNKqkgdC0FQbLaQ1PENvQ+NYa42g2BLiqIs0vOhIJd8wAqO3FDECbiEON8RJJH3moacNp8SQjid65qkONaXakOy5osSzKququPrHq3tidNK4HLTbTCS34IoPOvqEyi+/fxDbMj+h+vKPMJDiOWzKsfz77LAFG0TtQTdrmpA0u4y7EKQ14nhyT6sIAsm1EA+6LY2NTmQxRd5a/P+IrOD4JAu5kfapTrI27jmqxx/Nuy677YiS47uZkEySnnt8AsTSJh1VtSZADhMDJLcAgU++LMX4MsEyuNAiM81uFYM/xgb7R7syGkvzL8iGLCPO1CBbViwIP2N2rNEijCPPVbP9UKCQAA1UNoW2SKML37o4NEU1wCAX0dAWMkJbsCC1aZ95shByKqz0yZTDee4BJDu8pAIVJFGTukeOHHDsLgej4HUYJCHXawsQHOSiddhX7eM1s3+A2lhD+0D6tcHGKlbwVQcTlEyzaVPDtWWayqhHWgsj/Ofah/n0s1sQv1XICzXW9chcRVUU+rd2+THi3ZxlmnFeU7UwMlvmAIb/Troep57pnhxkFSOo6BhOtelVpRT2H8Xo+2fKjUH6yjnJRAJ5WJAaPDPlLtuMMTINxypDzzpTu/OfMtYg20kPeS7IZ34carGLQovuQl12212a6cP/kXfe9bTYN2d/w4Du6k9pIjUH0W3l4oyhwpAucz65VksyMeb6py4tNc5Msiz++cmpLNZYmVcwRz7rKZhliifZuFGOETPEUPubZsFtNg129BJXXKBvZeuCoscjLzqjo11M7XLMyd48pH3oySJ17EPa6d/Ri1ISJK56GvYs51iPbuz4mQdVahFZU6CCO1vp7itrAJ5TgNJAp0wmM2A6XhYSA5bHKGg7/dkT9GxG/xaOBQ41g8tQAFWjve295lskEt/QWqgoM4DhIY063+Uy9zT27QNH84hKAEVFqp7Ubzr+ys7x0gC3qBQFgCYMDaqW6JUI5g5XaAFJA7nQhQdCUHjEqyBUDjSTJrBpV2JQ05OglzyrxMEzFQoNCfXERLLsbCTeCpG4zuWRN0CuaCeSIQ1ruDT14RAkN4meFtiDvYKNZH5zGZ2tmsKFNDCif7U7FRyb6MSRyGopwPPS7hhYRS6E8oqizKJTthgZ4C3LL8YqkyMlwzrFVOwve5LHrtCYxjWKkFp3utYbLQkWOc6xZ7HxwrjwyBEv6HGPJZGhEcxnHPQ1bX2DdF8Y9KEFOf8gEitgYc6rHMgIMIBBknrpzhJ/WRNMxsRK8mlKBCPDwN79hJRHJGUphfc7C4apP7NcngYRw0GQCIaVMTrLs4zTGXmwcZchwdk5gcmtmdARIWtIwwzxaJqIEEo3ywyX4xZ1nmg+TJCDxJFOsAm7RBrMa48EQx7yAIY00BM/UQmbpRwqknRmEj64O4M8nwK8jpGSRCuppxWd06uR0UeMlBkomZ4UBL6hB6EKFcvgCnfTqqBQmItLCJ46gtE1hHUNW6CIRbyw0aKRVQ1OsiG8pjnItf1DDlIbi77sele7kiU8YSGVrLr0k5a+dJxPGVJhh8S61rkuBzYlW07VudPcaUH/lA4UJUsYEUlGELWeocwCF1XGSabKxKlOgmr00DMn6pFlcNfDakQhWpNhGuQjJeKIadZg1oqIC7cWQWuKtgASE33UPIB060iXkwVALMlzYMFrc51rnW3ytZs9hWQ4x3nASoLkYJqEjpYMa1jEQmcugCCgkxz7WNEpVWOPxGJlu8AI+GIWvkRlyQN3hRYIhnYmo30eWpx3ngnNTJdVtVkJWxsTrcqEICciFD/e4OCI7LYiZiiRhCvyBtu06B8OCe4zz9eP4s6kpLf7L02ce+LmViWlVqkadUc5SdeZE51ck1V3XfndV4aXKIoVy3ljosnUJXB3Dhzqe+ELX3EeObMx/8WiUR/Isn0ONKBnc9KAtHDL0ExvwGFx44G3ao+H/gMiYaVwF9aAUQtbhMJbSHNF1uDMFAENfLtRTT9AvKq3ag4qImtDVVD8Z7yaOLpj6SsUJWtf/xWFT11jZGRx/MqA7ZgtPg4JAYEMsPW28ycxlS84w5nky45rs0fVzyqlzF8OyUN4WM4y4FgtGl5iy8t/SnBNIvyPGJa1zVvg9Ra68I9e87rNcA6OnDtMZ9Tc2VF5Bkk2u9RnEwNa2vqSib60xs2dMOU+hE10dsnGaNFh+tGHjfRc2BLQK+UOlZSFZBo+/e53R5LT7X0KF0f2xZCgekNnyJBlnhTCV4ukWiBp6P+styUWJUSY1zFcUa93G+xe/xriDpcwsc1nbJBUbizK3pNxb5eTk85EUtOe9kjsem1ueqV2X9NxjFsLbhvbZ9wz13QojQxvnMOUyVnc1QRZZ2qR6Bs9Zeisv/+dy4CDZLWGM3itZZLw26KE4eZKCbDZfJKJ81riWb86bv9B7JHI+bch0XD8mB0U/IU8JjchOclzktfU3EMocgAEU3asWBlbktKwQl24baUgJwuVREh+t0vfPV96R7DnpY7ylAP0VKKjaU9qlFbS/7Ha08za6TLhR9RTEk6HBI3qVod4SlLiENObYeL/MGtI4BwTIzhk7CIp++HyLIcsOHuu10ZO293//g+4N+tVlmIKIIzPk7zDce9lQXd6/17zK3Ia3nmYxCReat35clbxPr/3LIV+ngGtocRPisMbErplCRW4b63dfEygvvB0fTr0o7e6SEyP+qqHpNchGQ7tZ5JMNZi9mOgI4pKm5JCJr/kRIXGa3vM931ONGxEDUImK5WOiCmS+f7ASBJoi4LG5I/s06rO+TzuyxCMs7jO17zOPJli1bKkH86Mqq+iyAwsmqwiFiECJ+Ass0Asa08M1kWAJh1iJkVA9XgMJAfw64fieIxxApUGf9MEz49KHoDjANpC8HGI7B/y91MgOZxOZQ/KyC8RADcwSDqQsI/O0wDI87NMsTlq8/5+LMiojKOTRFnkwv9QCi4G7GVnDKhq0is47iYwIpxB8qSCkutRjiZWQIUQ0xJSAOP7zgicUCSNQQrBwwrZSldvLvQPkjrVDjpHLQmlTjaUABCMRgy7EqjCcCQIaQy0Zst7xQMITxOsDtfbiOXtDwcL4t85ymDoUsKTLw4Ljw9cSiz9kuJaqPhGUIdEzPURcq3QJPdFbidT7rf1rPZqYxAAUCyfkuI47wJhIwAN8jk5sQFD8M9WQg9oZNHRMPgtEFdVYxXT7u3ULqjNEQ3gjwclypxNsvD0huvXTljdwtYUCCQybwWEkxtt6xmOsvusrRJVYCWh0CGWERpaYxmAzq/9IHMJsHIulsTNu5JA8k0IxwIl5ULsrxMJyRLHUoIeoyJqQWIrWSsWasDTIEjL8osczzDkSrEVTcsM3xLcYaQor1BYt+0Xrybybar+IcrDJkcg0bMhohMiIjL+prEgzwLWLtMaamIirhCOPwz05OMC5OkXN8cRPTMkTCw2WlMCCgQ5UdMcNuTR1iwzfEar4AjUly6x8NEGkkhagRI8BQbumAbiB/AcDc6g+zCruiSFz+R6cmz8gnMp3m8pl7EGKq4iMHEJzYSJm+5oZAQS6mhdPREtzXBsw4AMyGIMv+IIxIAM+AAM0icAmKZgeOieZHAtWVKC6tMuYysvMqkVb9Dn/v5yl53EKy+MQgAs4GTynxIStgSgmyMFBp4zIyAw9MAhEeKtKQ8xKzAQLX+tKs4tCe5mRBYwUsyTNE7sHMEADf2hP93zP9kQDMLiHKnS2gjmD5Pql28TNeNSYeGK36Ou03yQl4DklMAE6DumpK8scyoNBmoi1mUHMg1TMgWiI2jiJh6RMqYTGcArEWZQ/itzOy+w/q/jOzBQpb8ykLLiHGbGVcSRH9LQ2MBgD+KxR+ByDSYC2f1DHMyDL+NlPsrg0pSI6t+lAmxuX39SsvTwlpBIT4hy6p8Ceazm/VwNGpmPOCXXOgQiFirItDH3IRdxQp/TQDwVRh7xK7oTEsDBR/9hhtp6Slz0zz9GMUX1pAzL4BxvN0/ckA5QZtFbRO7h0FA3kFAnSNHmKqRfbrAbqOaTqPilTDX+Mn3pYAyrlMuu5UktSSpHwEyUgES9QAhvEukNcRA7tUJc6VTU008okwq5T0zU1lxPNlpAczxkRRzmFUdLkgi8ACT3tVX/4Ai4oGJg0ISBNDStZisjID1ckslHTPtDyuTfcJw4RygBSNTqp0gJDSjjS1O0BiTX7B9m6wYUb1VKVRVQ91cmETNMbURIFi2Qyg1jFxBQVCZ+gB0ipl/wUTVxNSUYQCV/1VUYYNLcMoGJVDbiADMRS1ndiVgKFIH0UTkcFzBwxIVXzRf9LxZB/DCBu3RaIsiOQAFWFiLpeY8bvcUpzPVd0VVVpRFNhswiyeNd2La55DQkqmhGwfFGUREsuGAkb3QNFOAQ8+AJfDdaQqJ0fDVR4WQr/KZAEmqJHAopS0iJGbVQnnYksyAM+QAPVZE004IM86B2RaALjhCNsQT+ZWE4Tqocsda3XoqguUIKPDQWIsIiRVQnrBMFTRUaGTNmJrMxqdNmXNZeYlVXx7LPPzILPKcs5RUsx2FV/3dNFkALJlYJBgINe/QLnwU/sKVjjAJgrIUNcyQyfcljFY9S1YTx+FJA8YE9fRYM8KJCeyoLjXJU3yKWL1cMITVu1DQvXKI2Y+ij/UH2w28otqSvZHHxKvUVGvg3RdS1CwA1cMxhceZ2Jei1LiCmPW81ZUJyHO+XZ9uyDP5hc8ZUCRaDRPCUDpJCDM2DHVeFcURQK19kpgGla0eW5sCqsjdmSpALKeMgD8/3X9sTRKP0lwozBWIOjekhg3tWeTlUDTA3ePyTelChZvEXV5N3bWWTeRmzZ7gwNiYhemZ2Jmm1R7NVX7c3C64yJL8CDQxhfFz6EPtDT6wyDoXQY993C2vyHS9vA/PgJ/Jraj+kVxOqLIHhSwyQDALZRNMBUJirg9IuQgtRdBe4TFPLUkYDg4RVVCj7ZvNVbPEBVlRVR1rOIeBWOlJDeJ8mz/3ox3FodP8XdV9+7hzGQiTFQBBe+Yyn4gz2w0TGgTzfWFqTVlroz2qCTi3AD3TPwmKYIYiEuHiLGN0YQ2iS20S/oV0sqg9Owiw+aCcyT4tylid4VCXFZQiymW5TYYpTNWzyYhFU+1x08U1bVStT4YDSOEY/zCaqQF3sRucUFxRTmWfYkA0jA48mFhBjOUzDIYRsO5FVJGGUu5M/FC8lCjO24lS0Zlr5ogyJ+Ukbw1T44Zl/9ZRPCGU02YAzR1sxJ4CnWUjALuzQAT5EAWQczZbuVReW14FXGgy9G2R1cWe48D1qW15l1m/K4V+TiZThuOzSQCX8gX6HtgxZ24T+wXP9/AGf4RANDepgbRo1/IWTROlb5wB2nkDkv+RKM0aco42ZfHYM/wAOL1lNLHmdKLef0wxBfSmd1puIJfYNxgVv3k9t5lmDHXMh7PtUvtj6+zU6qu8gxBugzXjbjWuNBEsssGBgTTskabk/JhWF/qGPxVQQk/oI+GAQp0FMu8FFH2WiycOY2KK+yeI9ZoY8c0bam3YukMrUnXQNJ1lNFgAQ8GAQA/gImhp1JpZNNPltr2cPDUedPVrA+5NI0QOeQkK2g1uL4C0EMNmpXVtXJjGWLEK7UCOhuFLEs0IoZ8YnEPcmUFOeQ0OrJ1WN/IIM/UIQ9HgMWnlw9nYRlZt8nGeT/L6QJtngPQzaTzqIPxLBr/nDSv0TiXh0DSfBrKXjp8zU67KnYzzhsWEts7GFsCm3nmCCRwZ5scMEwob7s5E3lze7byFTE6MVMD5tllKhl1WA2Kprq662JXnZAQ4gJ93ThoG1Pn41o3M5TOABkZl6V7Ghrq2iLKYsLKLodzLhr/tBm/5CyPPhXO4ZuSEjiPKDYssVugbuTq8LpdWZb7x5CQqmJcCVvy06XLkbv61NDDWbG+WMzGDmP+HaSPKMHLjgkeWGKqkjoaeve1u5vFx6EPR5mF9bThVYVrmAsh/HtsGDwfIOLp5gLyGiDCt9yIxaQ/83TPZBc6I5uAB6D2d2T/xJqAhAPiaUj8cb+Mprw2KqQ5yw+ZadMZVmcvjygThEd2ZJVvTJe0yU0D48bMcV1mz+el5Sc48d1bRdGYiUfXz1ldD7hClLJmQR366o4t5HAga9Bm+U5g/hgjFnpcpG4cF+1YykY8w0H4A4PoNq97prGE8mGF+4GZadzW7Cg7Aiz7JwrvDJtqYlc2Q1u1ZOoSDbDcZiQEY8b4EP3HR3F75R0XF59TzyG9DvWU2p3Eku/H3iRcrGgciohuv/AGFna8lykCdbV0zAXczyYXIpuXRMKoTVXOpvJgpt2mFs3cZpoiLfdddnw0tyaCNCDN+z8UOvc81Vl1VZlGgxliWRXDf+XYPaB5vEvNOh89bNydFwbvXZ/iHTx1fY96XZMjwpNX3BO57sceIq38HQxABAAqYkswPBifnfJ/YMkBlvsuSo1r/c7qQd8b5p9jwm1XduPJZFan4nxrvOYChrKlEhClEz2bl4Orgja44eHN5eIR41lJ/SBvh3EzaFmq2qxKMc5zlOPB/kB52NuJ/koh1/USPl/aAscmftzE4Nzg/l0lwlU11M6eO3UVHUpYG5fffWdN5yelxNryYI3X5WhH4kENnqQAO+xGG/yprB3nmDjjUiFp8yXssgRfUIYyXrVk2+a6PrUOLsSPu2wrysHJPwaTftsz9Mm3xC3dxiAOXmwEHf/t/CdMGgLk1eLxwMLPkh1KYBh8MUDRYADssb5f+WDAJrSxOdkEQ9vVXn8kGDsE5eJb618iIiIoapbMN38zofM79nzYq966b3xr/tgrXdVbbk9Lsh48tR51287Q9BTjw/fJQcIfwIHCuTz7yDChAoXKqTn0CHDiBInLgQkRkwYihNzcDzI8eM/LR9zYBypMSEagir90ZGiiMwfKZDwSBkEhyaZlSvRnOzpk2G9LPKayJMnsSjCN2t+Mo1Y76nTp1Anbkljpuk/flq9dOmyxQvYLWLNkL3atQuYPGfXdiELBoxXsWLB0jXCUKtWhUa8bCn71S5WivsGE94XUUwWfQgJ/x88oyXwP32SJ1OefBCMToFSNnPenPOLos6bM/sDAznhQ3qnsba5mON0R48fM54ZWRKkzzGk/eEhQ3PzTM4v8ewWOGY18oPystT7hzTi839r3iTvKbU5UKka36TpApnflq5e1tDlK7ds2bds26J/K/drecB380bk69dL9X+F9w9emOVMQoyFJEZglml0BmmicZaTQHTExBlpZayWmmr5aUQSRqvhNlIOZ2QRz2xi4MChT1/sBscgnQXH2SF9FOfPFxZCtlwczhkF3Y3/ZCGhjBJpt9B12E3EXRpKBPaGGV69wc8a5NH1Xl/pgYEelWaEB4Yac5WH30R4UWQfWfCdxv8fmQnJwQUgAfanYxtYUdZTSjop6JlKKI6mE0+npdYjRWGcIcZrGsbGoRZZjBQGoCT2ZCJpeEii4m+bSUJccTHy2dQaEka30HNB1XipQj+GKupESnSRBnVYrSGeVm8o5WRYULqlRpVhyqXGlFt6IZ9EXmpkXphgNUUmsQghpthi/c2ThRxuSuYTZnLOyaBKjmZmWmAUgsoQSWdklFxs/xz636GJmtSTbrvtsQhnK0rxxx4v+nPctj5lauNRN8bBXL0HkervdT2ZkcZSTSkRnhnU4eVqk1tCuUUeWfr1sFi4wgcWr736elKsW9DBFLHF6gigmgfJkUWFPxnY0z3pqpT/ooLUquQyQWPck+1D/SrkJ6D5hWtbFm2M1BqHgZ4UZ3F2BteivALlqTNFruLLUFH6ZqHzv/8E2VNVW2CFpFdGHrQww7p63RdcFL8XFpZ1+bSxT2DRMfdJQ4Rc7JnNlvxPGIkxtTK0mQVyiGgyv5gHRD9pC7W4YpzRps8/f1Qoh0QXHa5EfOzWBx0CfYHHTIuk69uLBjE+URlLbZpQ1Qcp1W/WAfe0hlVYcdVFwQktzI9S5f2D35VWqr2lGXDtyhTcfNp9N5keLrRmG1er/GxT8xg+0OeP0tk0GmHk3NOepyPas4W4ictR32VwKIbQl3+Eg0R5qDspo2MwCpokNGeW/8fpqF/dOqdy1KR6/WtrPXmDGrogNp+Eggtt4UdEyNY7XaHlYboqTwWxkjwZLY95hdERgdRkmH84ZnrIwooYGKWTMYRGCtfLzBe48I/FSYSGOusW5GSEufMhpn0fYZ+iRoKDIcJPIVkoTmiYNhA4EI5SxZFe/xiyr6rliHUC5NGlCpi1UqUBVUxZVdi6tLB/TJAuuLrgBXunBjVw6Sd4geClOujBweRNIQLSQghPsg/AMUUOmyiOg16oE0ZogUKJY0j4GMezNPXIfLKh3PrCoCiE5ICIlkxI50gzBsK9Cw2gkZT+8BTFhDShlKUMChWrqJwcZeFTfNLiVHxyqlT15P9gXaGlGOlDxjeYEQxoLI+rUuUFLGlQlz2S4xydZ8c1Ba0ng6EeVuihhTMwomkvYkQbzjAPQ6YMITbsFw5B5ciD4CALIhHibXaYEEtaUguGKE6k3OXE3fAviqa8ZxM8lcroPGdfrpQRqQzok4F57W1J2sICT2JM3imlbWg0AnVw+Y/iXaUpG6wOMpmnDy7kMVmGWRYjNfJMyMxDC4XcqAqtSZAYzuMi2+Qmar6nyD+FlE/q/AdizMWReIhokhGxZBa6kIVQvgw4vzlESjMzhib0LwhBwKcpabRPpABwX1mMpda2SJGqyNBe4kFOXt4Al2AaAaJSmwha2vi2iyIno3f/AwQX9La3k3VTIgIKjBi0cI/JiEGQLyKDGLb5mJfC9Jv1Cue2xnmQQgGCQ4i6nEbi4cAy4EB+mzPqZuZJmnoyzqlPhWopdzTVVB6kDFC0kOyyilWu1c4nCJNoYFo1zIoyxQhrLCYcOThHwhSKIWvq2wntetemRA8QlZkHGIiqSTDQYx7zuIcWAEFYbsoUaosE503NWTSiUVKxpOQCR/8xRL8KJCZLSyqegnA6z34WtJkaLQClk7v8yE6grm3tSd7gQIQmx0vDLGhTtgAX3PJpt3sM7/NGiBiRDpcpfWtTZZ4FBqSRBg1gkINznQuIQk6XuqdDLHYZklOjHeQiCjnX/0LEAF6mImQN6CUIGWRCk0C86Avz7Rd72wvVJsEXgNMB6I9S+5Oq0FYjYLzxabwkYLUypXgAdqMx87PbMHChrvpZk0kF0+CfnCyEEabMGcDABzLY7wtjIAMfwKDNDGe4DVpwLnUT2a/r3vCmhRqRQti3EBQjpAxd4EI8FlLN3SxiJoOQFyPWm2PQllIpPW5dK1EbZK1+qTu1RFgoLESf4q1mjUxWKFvHNMfeJniEWehoqUcYTZPOIzJfpgybYy3rDLu0wx4+rONyWGcSI0S7KdZ1dzEX1NMqJFqZ2cNMXFQcbEEtx05ldBNM++iieIq+2hHyT2jnnfx25cnVoQ9aVv/jhdtaNMrJmeM/uADsgzBGH80UrqqrZ9IKvRrWs763c//RBjjHubp88tMZalpnhkSPfAnJELdwk4U0EFvQLxZIH+BQqUR31tk6xqe0p70vIa0mYNi2V3fswbGuILm/cCT3aYhMYCn3J2R8q7Jv+0OPLAhchKdBjN7qbW98y1o1YeB3vw/Zo7yuG7u8Lm0WvrVOhO/5I5JNAxYnsgby7gYNJd+WxS9+z41P27TV8TilKaLthEZECQ40A9nzQ58BI+dU3u5JqJmyPBF+kNQJNhnKIvLBwERP6TqfDM9nLQctYNjWt5YRwGu+a4b4WiE8LWLCm9AVkp0kHnlQrlI5W3H/i0Nbn492NHKCFPaodSftC3lDt7e19iKfxtPlNndThmC3iTxT3XofYfSC69F4MwUQ7z7I3yUTeFmHgcOGh6mF5ED0UcqG4A0/CKIocoausPgnTcgDhTODhjzIIx6BVjTnGS3VR09HlRQxv+hX+xPuKFAj4ekCbGWUl/9WZ9zbRh7sfyL72dO+DVxodcyV2PPtHVbcw38kRPAJ3/CxmZtlWNDJ2WoUX8Ax3z/cw02ZltIlRGugThoA2hAFRhbkAR+gQZmNARrwQR58iPetoPc1W9ZBWxOI1qOJlkaMFsCIHmQQieklhBIc1A6qXV4sWX5sQZYUU8bIneyJlN0t0whl/1mpQYY0vRkCJuACstmfOOADCt3N4REFHoQFHp2OPB9OoRpClBPDsdO2sCALYl3Wad09ZcEbPJrnTQR8pR/HNYUOih3J6YyXFE/8QUYXsJEGlVVg7N9JzIPtxZypkeGW/USh1FUC6kMVZpgW7BvQPSBySKDi9Y8FMkTfUF6ekaF4cQHDlSER9YsariCftKEbmhKP9RjXmR9C9Fj6nQaR/CFChAcX4KL8wVG4ycga8WIEEWLsJeFJ+B8APuFGAVsj+gTOLUQkTuJzRRcWZuFp3ENeiWIU3UMnLoSHFB1OrRuVQZ1CXJLOpGIL5gcrwuAaCEWPZZws2kgdfhxTKEEX8f9iA3nF6dAHyuWH/WFFWR0hRezfEPSEOa0JE84QmtAdZETPukWiJE7iht1DNWJiYEhgBnYhN4JhFoghCQGb5KUBKJriBzIOOn7faqwjtMHjaDna6qwSLY6eRtijF0nEkfUPP6oBn5hBETZFQPoEQfYEIrYBQs4VzLFbM55ElzEEREqjmzXXJVrkT2AjHt1MFyYEN0bEjizEEIVBGbRBSZ5Bd1QfV55i/5zkaagko7HkVL2iLE6bfdXjLFFFW/wgqKzd/cnIqXzaSfxk3RjjMXKBPmwZ9AgmUhYlU8zcYzBlNE6i47BZFvqbRhSfFmTkVXKjVfqHruFAPIQBT+FRZ+L/gBZ0IEr+VEmSJOSBClo2hVqCViyOlgy+pRzS40mYSk0yBOrp4yit3qV4QXcIJEX45UAC5kmYE1LeHU5BUVJqREllQTIqRFNOIh5BZmRamURQpRhk5lUiBGbumY6sUxi0huP8x0UsHBekpkSYJTuZYxqi40+0JlT5U4+1UnzNIlzG5UnYw6lcnXTcEvP5Fxi83RDSCkASY0QQZEGCTyIO1x0t5nJqRKHIFTQ25gJK089VpFT2iUlZ5nZWYFbuzFaSUxg0geOUQaGUgZ8xXBigZ3qup4tCzWpSBHzi0/hNlXy+5LTJAw7+RBzsZ9k5EBfYZb0omS9tC08KqEYI50IE/6UzGuaVxZuAnNqT3lzSTUR0LuDgFV5UBp1GYKd2dqgXfmievRsOjOgZOEZHcsHCMRz7xAOLmqaLoqFJsqBnTcSM3tNylAF8TVF9wmRM0qZE+Chuisc/RdGmMdulGEEg8mVwGuiSGqKVUoZxJovNLSMBNsWDUcSV3ltqFB9UbmmcTeaGgilDdOeJfSf0tQaaZoEDpQEY7MifuOlJxGmcRpH3ORtD3OkbxmFLuiOO3iegLkSPEkxEvJ8w8qEvImpvJlCBCmQ/IGhEKKBDwFUbUM9dMQY9oMmDTsTJLGa0QmRExhp15VVqHB/yRYSXkmqpiilC+N5ilqnjFAp4uSoYqP/pjohBE8gqRdBqrY5S1iWErppSFqwBfLml+eUofk4EKQpoD3qFyG0nfaSBTvYLESJpox7hs0IrdG7TPciBx2pBXDUXsqyJgMAVPSCm4pjTc7oauO7cA05TdRoWQlAmh6qrqSYESUipePEUmnIBI7wFGHQgrObrm5Yjv67nVf5rwJZSO8IXHFIR1cymTCIEQTHETYJpxOalkQqiT2ZMP2QskyKEJNKDx4ZBeKqpx4rsk/KH/w3maTwiy9Zb3L4ahlIIZhqgGMQsBHphNn6punInu3qE3YWnGJiWz4LBJExCHrxFB5aBGOhrix6tnG4nKzobDDZB08Kmnr6kn47WjlL/RNUqRBzoopDiJBxNCdTcDnBOhKP+Qz/8A4ImKEJskxwAQhu0xmhWYhjIQXOt7X54CO8xhYfIgdxCp87VLT3cLWb6Xhtwo95aGc3+7XUGLkdMKt+0huH+bOIubhd1kVCVJkNILtKqa+U+GwyyZdV4XjzKo+fWokQs7EKYncP+bVgFKOOMG+v1hBG8rkLE7mJIYu2qKsimAR61we6qRsiYFMrCm2T0XWVoBN1iKGZ6LAV7bN/JgfLeQ4ZWYF6dgd9Kb5j6bc7mEWcWLquiRVoELcOxavdygRaAL2qKL78mbRteLvoWxWvmyzw2x+cmRNcsxNWqK4Ay6qVUbHKALaTq/4c+kC3uFkoHmhT7eGxkEMt/LPDuFYY++J4Y6B4ER1hFTnAFeywgjDGBAEIF3y2XzuyogjC6Um8OMFYZIgqadgEj1DEjdBEXlMEZkOiq4PELG60MH+1JqqLOvCAM3mgqvYGv0uGfIkRccpXoki4IEyl/XspXrQYSIygAh+ccpwEjuPDj7O48DCZ/WGpRzlG3OovLPgQ3VvAYv/IrmxQsn7Hz3hpVejAbT++XVq+3puoZGC54BTN4nVo6xkMfP/H3BbJZkpMlDbIzq2FyGHLnxSYVvSIjN3JCGJDKJURuWizEwhGn9Y/qtlXsyt4mtwmrgsEmwIU5YQTvkvJ+ZCsgGP9YQiyLcxYI4AFdK4vxK5utP5vt1ZgtLOeAx2Im8kVvLrexCINQOcpxRz50R4KsC0PuQRjzqTyxeClzUzwzR9+qT4QftMlDHrclr+rwjUwVtgUJJCcEGB1rF4LbxIpzW5Azkw7BJufVwm2CTjNCO//DO5OJyd5NtMItPodralBwP/+z2d6u//HNP78yQWOwBtttB39wQofwib1xle4MT5mTiWoBip5pR45kQhgzKSKz+PZIR8dD+ToVQlguDC4Hwe6TDOrwRODnUyxFXtoDkJbuVeYk8yUJEfeE/wLfPMhBeDqxOtfrgIgyPBdG2+7HSZzBQp6GUT8EUgOCUjM1U6v/mL4Z8FOPcUFP9bSaFDheNVbjbA5Y7844huOc6ZniK2JkAVkyRDwM8BM3wQyfzgq29dISxcDuk/pG7fo68hZpm3bkZiWTatYyn6J2wWBrRGHrx2Hbrlh24Ceb0+P49Cg3j+8G5mn7REQeBETwsz9z9u1eRF5xFGeHthlLtWrklV6h9kTc7PlED1mTE2jiU2jGQ0fC8DoNURCswVm7sG5PLqn69uUuh69WTQ4rRJ9Gxb9oWxxoh3/SN28yH1fkr/6FrRIzMSk+tJr+SRs0yzwQy2NINkWcyRlwMZ+EN6tShGg3C2WGN33b9/lgYERk04p2ptlCbgxudVl+4AfitnQc/zh9K4RnLXjmUhFLQniES3gsUfhByO8WFGouK8H82S8Fhoc3DydxGvbgEfCZmlQBm3F3l8l3T4Riunj1JE7H/sMYL3V6q/drn+mI/4l6M7U/v7KHEF6S1ze7fmFHSsSfaMRswzB7XhJuG3igv3UrRpV+7ZMiQ60VFfeo/Aj7fYpyByuYajkECWEXCnYhhrnYhoFQhad4VqIZNxexmPJyuts9JwdhdWztaraq2zlsO4ZJ5XlsXwSfLzUIBe6jA652WiB+R4Sf1KxCeEgWpCZ7BriAN7oW1DZqL3gZcME+GeylM0WQbPpBSHIPS6+WH0Q4d+Fzr+5EmLo3gZcY+3MUq//GYxfGPWhrrIOshJ7GdJl3rl8EbJu5maupmcP2nt9uoVSmVFt1ktv3RnpIzZpYT/x5EUW7af5DEDT6Glj7VYtfHHBBHKTS08ZXlFPEdYRCd9SIlWe6+pFquf/DqXTohvcIq2IY2VJweNKDYoQMlZ3scqoYs7+5Q9g6rtf5awO8SXWkUBn9r4/nf8w4sT86w99MoXtiGfz8QpjWY1B8xSNEE2C8xl97KenoP3w8FdGnyHOuRjyFyafBQbR0dng687V8IIKpl1sIZaeJAsJZifuuZAvmclKZNmIFvwk9nYtnmR89RId4RA+8WKspRoRBYyV8sWOlmGJm+hxGfk+EaF7/zTLv62lyvdc/elSJ9ObisNnnyMinvZEUST1Iso8kbBe2PLOCKaknB1x1VGUg9mHyR6Es55logZsL/ksRfr/zOuIn/go/NMCDVyWC9hjnAI4HetTfwzeG71dixWNE3awW7T90fYFnPH2PPhfMdVHAo31i+kTEAdsrgZHoZtrD/enIPodrOFmou4J65D/Mw77tfmEARBYt+/b9M3gQIT0uWfQhdPgQ4sN59CjKkQMoTJg2G8WcOaNFSxaRIrmUTNOl5EiBWUpqESNmY0ZAOeTcu0cvYk6dO3n2RGjz3kGg/0RG7OgTYY4cOIieQfoPB9OdTbRwSZOGy5omT7l2jdik/4k8eQbFin2TpSxZsT7rPYzTJU2oNV26vGnLtl7evF756lSihJ9BMFv6Fs7ppQvhwvpYNtTZRg5CgpP3cTlTMCdjLjgNI5w3kd49ixg1tnn5EeTIkqtPrla9UMuZlzHDAJpZ82Zn3VyHGgQaRmDEMmK4KlUaTyRxn1Gl8mxSxipWrbupIwwrT2RZeWvWrFU7NqfeOOPj3H2b5g0XlP/2PtWrt7rXv4G9gPESv/MWM/f7Vo28U442HHtIHy7a2Mm/+D6jSDTbSjMNtZBIWq0LRtJgZDWTYItNNphkus0mivAbUSibfgpKjCwOfKiNMoozziDkslCup6i4ei66rLYisf8wsdZAq6ws3kAorfDG+wtJ8uCaq4s13rsLqSeh5NEvwP7ZAow1qOTLjP34asPAnvSBLCI5uABEJzHCVBC0BjPiqKPUJiyJkTovrBMurEQCKbbZ2pCJphAp4mxL3Xr7Z6iiIJLtKeNyQEjGHXmy0Ssc6dKxUKSuW4MLtbJw8Tud6olDiTfe4I47U+FSjwsl4IOPKykzhegvg8wAY1auvOjSKzO1QEqjiMLYLKdhncJvQXpGe9O0OCXMsE47o70qpT05hOnP2gINalBCc/XqUKAACe6hMLQIAylHH2pCpHhqpJQvS1Fag8ZvHQrrH+jIqieLOEI1slTuthiYu6vgUoz/vSf5Utjef2r9pws1GvZpV4R9YowhpOYR4z+H1BzQITMzZpPBZUtz9jUuomUEDDAsNLhaga71sDZALArqn24nfipcE1Os9yBGfVIXohSzcHfS5gqTF9Od8Y2DC3/liSOLg4qEaFQlBN6CCzNMAuMqLQ96tb2u3rPHHnsfVqOLnXvSj7+e9jkji3m42giiqiKaZyG7kW3TZI5Qey3alg13uU7XZPZotg9vxllnt3nqOaiQIDIXXZ4cfTQnuo9Oujqmp/sWLIOg9jffqv+5GqLxTtWPLrrSaDmNNZRA3SCyp4y1HrTRznXttiXfqcu4dwKuY6TkOMNvhMh1SLPkq0tW/7SL3jxNTpZUrrPlPPJoOVrF+ewwW9sePyjy4SPqbagcnkfoKM2J1slzh+K5H2mo4KVOdPAKLd0gXBjSP7izOu/kJA6vU48aWGY4NWxhDW9QAkJ0Zxjf/S5TD0uDGdSnk4r1hB5aWFFXzjDCg1gmb1zI3IioFzjsPStPV+ne9xCHoWqNr3E1Ox/6BtVBiJjINz6b0UMAIUL5KQUpZSBXPMDSxCbcT3886h+VmnhCsWVBS6x7yKheF7EZgoFtA5Mg7hLWFlgV5oJpoxKSCJgGi/nQIbsy3kP2oY+XYKYr5gKZPrpgQoOACWgkC40LxRASk1wFkQ30HvgSd8OZlc9muP9xSPrgyD4ghoRz8AOVTubnk5BoIQhN6IhHZAOWeOyPRFPEDwANAkGDfEqLW4zDjxYIhknc0mVdMAMEb0fB9pyxL2lU44jY6IU0zBGOCBkYMg8yJjGAjCv6OBdC5NAFNFGTC7+iUgsv0gZDRgcl0Crc4cLnSMbRzHySnGQPk2nJoLhPmw4xIidh1BWWZMEjZdCnPksZxUyJ7li6qeJBisKvOBwQgbNkSYXycMtJfE+XvCRjGXO3u2BekERs3EIaknmYgRnBCBAJED3w6BVvIiQMXfCWQkbGowUBopDac6SEZLoy8IHtQjEDyTkhebOIUFJ9QEQUzn7GonhGpJNIYeL/PbXwIyxqoQylPKW9ANoZVr6SMFSrh/9ElUBORcx7D/2eGnZpu4nCCpgWxGh82GgGiXXUISA1An9C6hA6hEEO+tBHSbkSwo6JoQsD0kzzRiSHMNAtQwLBVrMGJ9PtrexlWFmItRhHGxDhDCJAdZs7DRKSayJkOPREoleYeAZWaU8ka4gqcfJHVehcyknxuioBO6VEhBqpi4ZbJO22IEGs/bJsnRFmdR4GF7j+gx/8kKtcvbAFZO5BDp/RK1+fEhuDSLNTB0lQfO5xWMe6pA2AcNPJUDanx67MYCPBIbYApc6csHN4nHWf6hDizRU+JKlPEaUS4RK7lKj2DE8c3nOy/wBbi05FUgdJDwGB5BOvbkENYFRDhHHasi5McItoDa5w16qb4MExuSFWLkiVqZh+GGQPe6DHZ+ax176MK7rzEEmL9XGGLty3MN39SIZcEgactNBBG4EQn1KmnnKqR0+LI9+HtsUT+G4WZ71pAz4f4pGc5FepTTiDEq1iOEag5FMBnqr6CGzgngwUtFHD4m0T+gYsbVB2LTtk7X57l7RypQuTgAMavtDnL6ABDpPowjALszYOSk7EidZJP06M4pxRRLp80YeMz6CsbFKkDV0IaK+8y2Mx+FgigLMeeSNU5AylxCrZ3KmfmOxenTy5YZz9R0hwjDmIYPkp8YgTS1i2yP8vL2Q4TVAamfk7r4neK8EHgdpZsoiUBF5lYFzjAu0iuNGThMIh76nogXfyhknQwR/hFve4w02HSYiNL2z8hxsnlmhF5wSkXtjDQ0QDaWhebNKmzUgatBCgLtTt3pnR8Xc/7a29gSZwgiu1qWOW6keWr8k+0eyshtKb+T5EDJtMSj0Lo+syGJIRDX0oTl0Dkqh2SMCSIzCr1nDsf8z2H+MhSlbKE6UloWpgXWjZFvwFNWqR8Yx3zokSJjEGch+d3GOYBLblUytjMpNH7g4xT5ZbV4RAN5It7ope52HYbJ6B32DiQnQD3syBexrUT+EmaeDkESKrBO7qzQJWyNfTQ4H/ENYUN5GUqYyQIvrxH7jmiq4/UuCW4dKG1spe3E1+cjHAXIpcNvZBriqPUSUwnBEcD7cdstEtKCEUpjLVGmaXBgwTME/opujqeWIGNCAd9uRGw6G5otFjZkrqgelJ1SOyB0CYhk/gtVnZETJpi0x5Ify2CmTuofVm0qPTq+mxwbmSLGWNWsiniRBNGR/8ksgmW9rCDWYlnvctWfIgSsRxIfHLccOUFjpXaeCvw/x4St0PLKPU59tV0njHgyUI4kMeuKwkWi7BLM+rmKRJIigUZE4n3gAr8uJI/iIOrC27DsLa6mLbxmbDIAIMviD2QlDcvgAMCK0nbI9Kck/3dm+5/3aiegyrDXYsscArr4pvImBQC7BCB0UIr1bMsBBL+gpuegaletiuWUYp+LInCTmkKrgAnWzm7pBi4nik4oDo4uQJaASvK0qrwFCiQnIKi6JKwFBJJ/Ivnz6uqVJrDfhkn/4v2Z5iAGWq5QwoAbegvwhG8zivHujCzqQk9RxCCfKE51hP6A4iD0Qw6fpAESDhEKTA6MItD0xwJx7GrfBDBbkiueQK71bM+fah62LQkPIENjwEI0ARkbAi+Agu7VioWxrECF9ilLZvCTmkQ0zLQGpmW8jvKaZwRKrwIIBD4/7hpDZutPgHtbTnJERCnx7PIMhQtmJxn2YRqtrQI+QBzf9yggCzogxmaQ24pvRQAoLMKies4vQggvROohwNYi7CJug68CDAABFHUBGkgB7rsQ/GrQQlMSKKS3h0I/e8QsSszsk40cVy4hMLD8mo5ZBwCpFgYxULBTQG6SKM8AhJye3Gh5RgkSNKIrxysTB4sTqqELPoxo9cghgzaTeQA9g+jiSaZBlTzhnxI5TC4gyj0f/acBu3yju2Ig7VI5zUw4EiKg/Nkc52or8usPMMxlWgROjMAATjkQ4GoR6nUhHG7QvMwHeqhI1OwjD+kS/cTe2kqyCl8LCqIk82YRPAZiHOoAeJjxWJcDQoEha1zyLPyU/+ROwgw9X4AiR3wxcJKgv/UNK+DkILSWtPRGnL9IlT1kCqDoI5yOw6zmA8cJIy9WkyWWLdZgcMaIhtFkK1ji0OsKInIJAu3uggAhHapiSt7OH14vELpHIq6/EPZI8fshIQkQQ3lWCDANIr++LdwnK6tk5ZgC8LGAEtweDfekwO6MEt/6ZbLGIiM+JB5pI651LIwg84DCQK+ZJBzg8ohGpYjipfjqUwK0UknIKJENMjFuLxWusxj4vywEIsJHMyy+AsFmp2RA6iyqqXKIgPfSLVNDAizrEfWc8gJiEeww0P6lER8AAS6vEQjm4S0ug0cxNJ3uCBnqI3C+M3oyk4hdOwYkplXGYt/4Ts7MX6ri86/5nlOo/wLrHTNjCCJQDvI0NDF0Ny74TKtEzI1sqzK4wmoO4nC/KAD/jMH75gDNCAD/JAdWISPh3C8sqgG91qM2/pexiBPyfKKgboBFsDKd2CMNBxAw3iDR4REcegEQ+hNf3hD+rx6MbAC4TJHix0K6EOITa0K0VsMQhC0rpOIxAyJYTvRL+FxZ4zLqWTRVtUyBAVFy3CfdZkN2z0Rv3yO8lPJFDyIwLP/XbDc2ikCfJgTWMPDfLAn540JxBw5irEliYhl7hAohCC9EyTeNwoMbpNEP0FVhA0QedRCu5R3PbATSX0H4SJTmslDZILIi6ROsCyMPi0T5XlTyUEJDxkOf+bk0QKFS4nkjQYlVulM0ZvY/yqgkZzTKhw9Dt/MZv8ToR8lCs8Z4TywEzjcQzyoLVM9SEQ8HXMoIHAB8xaDkpC80u79N8ENCLygkCdBD7ALR6BlR7j1R8aUQqQjg4O4oKKdYLUYOoMAk/9sUPdxvgCBEKWrCacr2Gw1Uah81u7FVG/lSbGT7sglVInlVyDolzVpF4KiV2RAgckBGnWgAwS9OjIQPWOKwCRbWqkdKEYQQ1OAhyH0iDgwuV4wvNKImorSgmszQyWsguAllcjltwacRBgrx99x2LNoAtUEFlHpGMlR6+UpRSvE68GdWdM9mRR9lvvNkZb9nF0sSoCyTD/tnNm7+5SCdMlNrUzdrZdDIIRnhJoye0LGMFUi9Y6woKLurEkVsVVuWMbMRA9+CI0Ta9Ww0Mv3kAQ7UFXQxAEGZYef1bcyIAeqxLpJoFi0cZi6ULqUlBPO4rr7DaSms9aITJF6xY649I2lGJ4z3VRUMhcqaNS/S5dD4I4DNcwcGBPDoIRYs91w5YMDgF2YQ9X4FNyDaKJxMJ1smBg1CMcx0jB2K0vPG8uhjbb2sOYTgIOsHcRDmER/KFrpWA2w+0LHlQKWPfo4MAgKrZYySp3oy6B4YrrKsIi7M2HWCwiGQQohteCxw9wg+Z5mbdcA5f8bBYhXEJmCwM4nud6sVcK/yLUdfs39iAXroIgfJ2IDpmNOzzzDTbPdLjSMK4CaqJGdNtDCaxiD2Cva9GADmKTf/sAD2Cze48ODQqYbOmUHx5obXeDWU2V6yRYrzqKbomwUr/Y/DBug2O2M5o3hLmAc+7Bvkb4S87zINaAcZHOdVWYf0XwC+BXfWIYzSzPVOJAnxaCPKAEavPDjd5CVjlwSt4gjv23TekxfxcBiWPzEBZ53MYAimmXTtdADbygivN0ge0VlA3iMx6tW1rxJko5jMVYPMu4g7vCjA0iBxYiiGKDjb3CaOpFgGFvjv1hhRGRDDoKhic32fxYAqkmC9pjLDYKj70Cat9XVIKLkvcXDf/QIJJjs35j7wsueU7p9D44OWOro5NDWZxJGZXLOZVZJJtqmTdamWeQ1yBA2CZsrTo8J8EOEenwAJ8DYUEPQYmlYBD6IFSRjlR9CIYl9xpXZ3MVjL5WBwIDti9Ir1O4Jh19aUoomQzIAA764B4buZqloImRLpuHNYotdKPCmTe/eZxT+qfMuZS5YliyQJ3bOaZ/yJ0760yA4iNQsjM8p7WawGHFraOnEhIUFunG4A13JpjF96DrIRiphoJ0mDrg4oZL4pmh5KfJzXWDehAoOelmd5st1AyOFaU9OW1V2qx3ApVJeCFm2icy2AVrOpZh2ib+rjp41iHsGemCeioP4ar/IbGDCjo+39ABxya2AigNqpYvIBr1lpn1Avro+kCvcxn2nviSixViPvkrMfusN5tKAGEhdPpv3Xp9ohBMzgAocHY3EDcLcGBzcsCxjw5CL1oRpxIPRPWvDRrmpsYcUYf0GLswpPpKWuWHDeKaQ3B7q7m2EZGAZ7dYdWmsT7qsOVu6C2VcAtNc2fqVbToMbCIHTLIzlmJPWHtzVEcE61ESxg2y6ZGFkW6hJwaw/2Emfwsi3sBFAJarqIM0Y46qC7Y9TleXkRSSYxMSvqAPuHrcZJe56dSNojuzn3u6H3xE5uuzDEW0T6SDg0Ku/wG1C0MpSrgMWlspBtogYs+8ya0e/yEhBEUcqYsWho/a8u7bIPQJYrpgq0jEKrSEdBkbPrYWm9U03PpAEqaSDPaAn0WwQIeVTiFwC1awwRkcwp+8F1kCx0Kbnent7tQ4X97Jujg8B2TkDEBcKfjgIfKaHs9b3MZANkNQzFMSigwifCMCsAvaxWHcdNIjDcoglnQjv4N7oretLYj66PBgvekAgGu7TZMb9iYWITA5N5+OQzUbyvFDryad0iddnO9Byq/7rcvVJqoicwazL5TilsFcKSjbIY4uyKXAzBW0HhEd6Uy9L/AHfwqa1mndzd08mN8bStksd25cLWy8KPe7zv7Bv7/W1Y9UEWZzQaXg2MkNwZnbIP9wc6O4FBMhnUS8ANvtFIsrndu5HZQxHWZZucqDSKiAQlFmbZUbJQeMpglIXSksOSLGLdUlQbYDnH8NPNzgnS9kXdZr3d//Hb6T+l7pPMZF89eJSYfTo70RuR7KFOmA1Vd/XIAbOeKP7guMh2wfYqOYTkOtHT+wPdqwvWHEAAwMgQzGoM/GgAwMAQz8Fnq6HeYr3V7vQVw13copB0xAxVzGtSeUgqfdXSlCOt7DLdWr+Q8k23E7jt/v59+bHuAHnuAh5rCtJuoJWTFYgtopmtjl2KNb9xCGONyyGunF7dkvGSLMtis8njpAPuS1nUToAQxeW/bAgPr+oY5iHu8t3V7/+5a7yv2LowwooGNFcpovlIJngT7odULcir6j5f5I933pZ93pJ//NqT4nlBl3eH03Phd1qLbOesexqblX6WBBK94fGFFUmbzDEIIuOt7B1765os25oG7eeEQfwKCvYW8MwABkCCLvf/93h6cqNo3C/974MVx16LrwJUS8EV/fh77o+0C293e9u3rwIr/fKd/pISLP2+iYoaT7dcPzot1V+bstnPLoYJMem12JYe8qF902H0KXfMKkC2Ou9KNLZj8imosOAGLPv4EECxo8iPBgGzL+Gjp8CBEimTYD91nUhzGjxo0cNSb8CDKkSJBauJwZiXLgvZUsW7q89y8MFy0D/89oyZHSII4sWW7m+Ak0qFA0/kL6kyRFiiSIgZJKORTRIZqc/+JZvYr1apCtXLt6/RrkoDx5CeOk4TKwHsGxZKmmjNMlTZyBa7i8QVgvr1owEclAkjKoT9QvY6L6A2PQnuKE/NJsEckvcmS3Io142bLFjBnMXoyAzLyFDuWUWb4YPg3xCxeLFzu6fq1vtGzKZ2bCnF3wpW6W/2pTzKFFjGyeZYQaN87H4cejSZc+/OJUymk+ObNa1wo2O1iDYxPGVSu2Le6PWxwT5MLFHt68A/Ogfg8xT2LF6hG+Mf9R8uTxBb1c1ryZfyJlFiB/HzECX4L+MMIabA5yZGCECIlhm/+Bu+32TxZc4CTGTZS1wdMZx40IlHvKJYSUUhCNEd1p8qF0XYzazdhVQd0hVN5dCN0ooUFxKTGQElw8dpBe4IFhmoKDIVYQffUh5EUaazCmn4T/acYZSlt00YUZXvR4EBdKwvfPavs8iGZGYIJJoRa3zXbhbjLR9I8WJ7klBk9ikMhnFg99lKJzDuHh1CCnZQFjjNfRyKiNCd1H5I7irfnPGmcRVNeURbI3kBlEjekQHWBsASRB9H2mBj8IVcnflVh2lpIXXajRRaSU/tNGkqBGNdAXbZyZJpq3StgGF1m8OVqcutUmHIhh4IlWG3xO+2lRKDb3EKFO4WHYVCMpKiP/ozOuNSlB9aTRBUg83hqXjv9swUWpBulFkBKT6JrgF5Nsia6mTn6WrkH6qTqbfwQG+GVOXphBq6236sNQRIoo0ge+ZA5ERrDBDhuhTMfCqaxLGuKkBZ051ZZFGNNOa6K1Bo2BRopSKLLIH4dEd4jFDr0oEriLiqtdEwOVe55c6q67pqVoBTnkeuAR5MUkdMBHxySaKlFeGma8cSpIZgQ80MAFH1ygWwuroYYZHBeEYFRj3CzJH30U9p5BYGgs7Nr8eYxTsiGzBMhMMWVBUU4lpbzytE3QfZC20T2eFCR7GDaG0D37bB3QQVuOUBZSioT0mlyk4W6mTiPUxSRwoJHk/xdowDEJ2AWtEVetSjx5UGRdqio2Za6WTZkRDKedsN7z0B1RH3A8/gce1Ub0Mj14O6i3gYFn0bdbf7NEoXAlU3U4Dv8kzicOJh6kCOTMC+ZiophjpXl2TczPOUFlXAo60WDeJzu88ppLr4N0DSVY+0e/csePNyRQawqUjFvWQKAueal4o9kC2rpAQb3xxTB4IEP6IHcIRcABIgi52/RgUz3+XA8QlNneSkYGCMKlJIaCGwj5SIQDHDAEfYcYBCT+kBQ8EAoSOoOIty73PvjF7yv0m5+NuISS0Inuc0xzWFo4NR8naRF3TeKHGdJwFoL9I4Fv8E+UvLQGd6HkP1wC3v9sLJgGNVhRb8+TyCDG8Bf1KYVbDUEIGk6IwhSOJwcaehZVXJgDY/UGeygJg4ZMNr4bHieHa/gCSPagIjJI4Q/v+YKmQpLEzC3RK02s3+jmMhIpgikU6CrIG7jwSQBicYu01GKT6EM7dJEqgWswmAERFsuEsLFLW8hgwboABjkKsiBieE8I6SCzxx1iD39QhMsMIgZAumaZgyyk9v7WPUIKZyQgMolBJDnJHCLoI5hciiY5iRpGuC+UVhklKUtJFyqmUn9TjKX/NqWWWgrUlv/6B9a4hEFffg0MWCqmMSuVGYRuRo3jkRXazOAZbg5kg6dJXx/6oEcyaGsRCTGhNjf/otHxaKhwKdkeTQAhnBwgKyEU4sI4C4JO4+Qwh0xCSDv9oUlIoKanSKRnPOzZlVIKzSxLi6Iqe6QEdKHyH3EY0lSvmJeBatWWrvxiKzUzKzC0kTPuuoxEiwkm4YHRSykliCHeA9JpLgJyeADpJo9oEEOcFEJtnc1KD6msRP7jHnZqyUdqylKc5jQoO1WnJQ+CSaHuoa6G+YI852lUpG5FqU2QB5f4+ZGn9qg8tnplMP+hl62qlosG5Vcc0QaGZNJqM5iJKJeKSdEIMUysD+VmxE7zBaT84W3RUUTMDjG3PiQkY3v1SF/9alPAXohCZ3CWbgxSBmMZ8iCLZWxjcbAG/zIcREFoOC1IjKpEpHL2lG4RrYTsgS7caYiiqV3tQFfVS2TGNrZ5kC3a1ICuiQ7LgsmcY0qRd5q5SqGDThnuIBQxhj4cQjQIGUNznftc2ZTkpiiJU0nCUDLevGR8h9sud7v7k+/uNA9jKAh8xpAHLdQPlOjFjnpLaSnz5i+FpC1IVbfwJCPZV6tNUkIZI8rfPCh5vw3rbYS8oIYCZ9ggRYSIXaUg0qfsQRFkQAMQrZmQL1xYTVPWsDm/uZLzpIxwLhksSwipSJCgOMUqzmET8uAt1KAhD2QpQxlSUmMbj1KpTAXt0VIIlzT8z7RYzeqQ70sfI7MxynmYhKX722Qv5P/WQLJKJkbLXJAqP4RFSTnEGP5Ahi98QVs5u2aox4wRUJsZkqMpVhm+pxLeDBYncQ7JnOv83SzkgQ9oGIOqYcaHPCCKIDaJB2Yzq94g0M+zaXgaVdiSwig5rC5vMJKjH71VSUeU0paeBKZr5Z9N48YIyEybujOM4NMAMSmLaAgcBuEU9iXEwrCWtWxqQ2u3lAREHHaJI9Ei0+wl5NfA/i5KmpCFGX8k0PW05/ykPb8cORElamELtqv3oyZhxh7eBvdWDXrkr5Hb3LJFGJh2i0F/G+S3qGmKU76g4Mid6CDMHbPMR9Om2RjrDIzMzUpkYs6VBGXhKG64w1GihT9/i+L/Fr/4/O4X8Y2PpB4e93j1lGYQIa2h5CYXaJD4YbDd8je2s8WthAisBieD+q3wwaRTSO2U3yZEr/3+OWUotGy3FEsLWeCwSIyDkKY7ffF1LsMa4oEDir+v6ps9VxfkQb+3dP3jemuXQbgt5LLXkiChSHmUkylbYqLVQHA3sMw5+p48Tri4JDyISZvrd9kUK/CGm0nRsYmeNujahkI5cU4Zj/zGQrwJkZe8zwZ9cWmPrh5NjCJqN+/eCIHdx/6rr+i3WK8yLiyOs7rgq3RMFShLOfcHaWaCtAUJTTZncn9qf9/ZL3hjKXwk6MmC1LGLHmHQZue0dATRXYwncGfQfM6n/yjQxxWe8wb4lEpDg30pNDrukhdCsgXe931cNUZot1YA0lACghudxlD4lxB1ZBh0kBRysy28UhB/dH8omBN8kxIekzIHUWLXZXw/YYDH53S08X8GYRUEIXlL1FlNsBVmsQVKZX1lgH2G1iP30VR6AXr10IG0VC9epDW1VVtmNB5mEFtdkFE0aDcK8heKYHODUER2M4NmeIPGwkIjcTi0BmeIshs+2IM4sVhBSBlNUAYSVxXONhBHGD9jsRWe1QWcZX1vUIGCNDqaohdx0H1ZCH6YwiVmpImahhtiyFtwiBDH834Lpi3sA4P/MAbS43OgSBWBwwVzGBIaIkMGKItupv8bQMF0ildnshEPZWB4RkiINcZEjJKE0icXjJhK9dBtm7dM/KMeRqKBWGiJBWVQmRgZb7AG2fgG7zYScCd3cAh7p6FJeJA+8HQaG/WGrIgSNGRiCIF0vHdwbhInBfiDc5YDwIYbZ3AnB1GEg5hE98RZ9LNZiUh9YSElyLhPU9J1GlUeX+JtmTKN1LglavOB+yEb6qdM6pgQEJMgyDVXKkhCPYd7GukWcNaOBlEb0TUQSFcGIZM4xIdOKsYfTbCPRBiMk7dZAamT9BMH8hAETIVxEpiQUOh1CbGQEqIEXEJy3uY/EbkY//AGXMKN6adfFEmSCZEr8CFC1QQfvgIse3X/lZQBZ4n1g1nQBYFXLNHlkiSSeJK0i7gRD2IgiFfhjz4TkNjXWWPRRHEQiIrokwiZP9iYfRTIFliEG6TlbfWANUDmlJ0ScwZSlWEZEmLyHqszXPBhJiMpmW7xV8QHCIBQLF1wJ4hli/N4HL5GPjk0EI01Hlpnk3UZLpwVhZvXWWVwBpYTBzkplCHRHWXAeykxFolpmDlhD0qZmKbVmLJiBv8jG55IhpsZEm2DGl9giqdxWV8JSNA5GhqyJ4AQBmHQBm2gBWfRBoBQElxgSH9TfPSYi3yiEzsFl4I4iIUYm03kcWeQF2cQB/sZB0bCFn5GFmnwD0oYlJm3YwMRB1lg/22jIZzDGRKImZhNOY1J2QVT2Y1RFnfaKRJcIGr50lQDoU0aOholoQXgKQYnOjqEoyHoSRDqWYDs2Z56GEkHwZq8KJ90KSOlxBb6yJ/86Wdl0KN5EQdr4GdnIZBOeGgFUQ9ZcFX80aAiUZxdoASJaQ8jN42P4XpagqFZKqIEsRC70hATgRDT06WjcYdicAa3BkbniZ7Z46K4WI/715ZLl2IIAZ9r0o+Zo6M8up9A2qc/6mc9GgfYmGhct5NGKUVZYKGz4W0hoW1UipxZOCVS+pTpt6VlihL6AAbx9h5jcDch8SCYKhveaZa+NzpnQZ4q06JrCadxeniTlBA1KiF5Cv8/TSQG8qCffMmXgMqrgMqXUHmBHreTnMN5B5GNZaYeikZ23NaBSvA1/xBpORGVsWWVojoS9AAGIGlEYDBT1lo9OWCintMFpwpGXOCLbaCqpXkhxUeAMjqnkQQU4hOrdxohdOmPBYqr+tmrZbCN/bqN/PqjU+I5G8h1bDGsxYoQa/CbfaU0ZFeljCl6W7I0iqEEFTsS+iU73poSYgAGhkAGxkYYZGAIYPCLGvut4GkTpxpb6NITYoCuffOm7qpYMluP9aia83qz9epsWmGffMqr25iNQRu0/mosUtWfBYt5BjoQ0+Zevilr7RJ69vAGW7AGoheVXSBG9lCxW/sRnpj/oSYLtpLpnWLgm54DBkt2lnYiBumqrrfYqnMqpzN6Tjlrp/TKH0V4FT2rrz8KtELrt0GbIaeKoGnRHUJjOTpalAiRoE36XGcRtfYAQVxjcl9jRVtrsQbhjWGruWE5tr7JBYygZP3FCCGytm4aWG/bngRYt/L6EXYLl1gxoPOTr1T1D/x6F0KbEMcaF2mwbENoI0j6D8x4EEwqa180dt+mGJhxO49GO/GSEJZbKhjJpZtLvbnXuRrCCGfbXyx7BqVrdOsKo3BbszRKtzjLurORFdOmj7nLE+3rvu47OmL1r4F6tMGrl0prI0dJEIoqa1HJBUerRVhTtUNGoVO5tWtw/3rVWr0LbIbg2gY2gb1gwAhgBEZZcAZsm2t5yK5yBqeoSxDla77jUatNgKY1WSkZwhMZUlvogR5emAZgICXa+AZ+erTCypv6e6yyxgVdcLxbFLlDtiXTC5XpQlQMbMQ06MBkyxM7zMLlaixk2bbDB68jcZp1ixKyShnwE7u4elXH2r7wwsJhzML/EFtbkAVDO8P7eX0IezQeh43+drUkR0vKu1pXy5y545wNJEZHzMd+550PXLbuy6Y8oQVkyYMzS8UFKKuu27qMjFkYx8Wzk408AcYsjFBcwsJjaMZnrI3025+Ju09jMaQytyVjR0sCrFrOysMPynYJ0zt9DMuglv/EaXprUeeLHYIeRMcTUIyacTunO3UVNwvCjTzMNIYV6ivJCpsFlbzDl3zJaZAHZ4EZPDG0QEpVSCuFklIPa9CTskahAvXDWiWxqLJ+BfHKsYzObeXAbXCi+nii6AqeGlJd7cvLHxG+J9Z8TRQPYeBsxUzM1ZEVGIemU/XGlIwWzcwljKDQCs0lSpYuQ0LNlfKv/Im0ssHNbNxWQSxQdCxQ/MAle9wfp5elrJLOJc1NOfDH4anSYQAIfHg4oEl4hefLPehrkUfC+ujOSgh5/hzCU3fM84Om9jMQBo0eCLXQR529ecAIDw3RldLJFF3RlPEGPam/bUWh0HrKVlqxocD/1aFQsTs8R9PKUCC9KiRt0me9Nj/hnd/J0u5aU80S03uSyDRbEFZRwoCa0zvtFlg8cSNMwrvKr0ONKGiR0Ei90NoLRWbQwtScRmm8n1HtFn5GmBgtSEGM1Vs0tWtQetgow8rJnB49hotKEOeM1qVNKff8DzTkISCmJzPtqtxVFb1xa4Jsm3IJeZTB1/wY0PSTq34msO9S1F2A1PuVZBKMUGWyydVM0ZQtEoOav1UtSFEqL1sEL9m4ibIiJbcTJF4r2ghkkaYN3tyEMobE2jLdy9kTr2FAk7MdxsTRvXq9144MjCOMpoCaw2Vi1ApN3PulZAv9D5gM0cr92AU7GoO6/6D2C8opRDsGZmQNhaX8sjX8ACRb0Mq4QdrhjeEcc3AispIxbcI0zVhxCcE7zNDGQqS3edu4nduwaRX0U99+9sYDEdyHvd+hG1sLDeDT3Ml+mhfMnRBCOtUHjuA+viZRmltGBkFtlC5cAka4RWCjEiEXnuFT3iPAIYcEAQhlq4AcLBTxAMgaItw3Pq7+h+LnG98gfB0uTsv8qsxgXNjZm2RKxnISzNDjOiRmLMM8Dtlb56P1KynQPSzNexDiVjv/pclPvpxgYtZUzugS8tYFgQNlWwYnGac/EQ80GbjZa2krS8EIJcbt/b7vK7S2vK+2idNAyqtBa9Bvzt+hW2n9df/jS53jnDzRj/1x8qmkPQqkDvrcwWmBFVoQSI4ZYbXfxJ6xiu5Aja7sBhKPCgcIulyie2jpmP7CZ3tpMIwuYVwmYuzMCEXB3w7u4S7uFDwQ4U7G+x3n5TbndO7pAd7YNFzRrokXgjrgQs4d8mAkaxOV1SrsKqe9S6ZkcrQGZN0jUr7sB58SOZBdOYiShGxiOpVd357UsG4sdtIEO23mAN3iliMcdwKoWjDJS2zJuwtGxB26loYHSxbrsr7Yeb7chYvraUHvA85xjTosX/NJ4rZblXZp/UVMUMlayJ7sCE/0r/oTNfXh/5AnPWFI8Up0BlQmKcwF+827tnnx8p0TC/j/03kL1Gse8vAyEDSuveWm8uw+6y5v6/cb81Q1836eEja/Jv4bfv+xcizXdmkU9Guy6EXP9z+IA2xdTlmQ8Urv8DlAdBRswSL+Z1P/wqjKu7b9Dzw9EqppHfPD9TcdsG2+NGIfuilf9sZ99u/+8rHb3G1v7yKRmKKzyihH9yt3bpuB9ylk8H2/7Cj9nW1Awk0gnuhRsr0RvzCs9EDh5fXtOafKExVMiFg/+fJqHWIQBBuP+TCu+Zuv3/zV8+ie7e+C56Jfw0s7Em3fn4wK9wZytUGCjeMW53mQNsU08JWqN7NP+1MOrupdwu6MpuhBa7Xx7TMhLQCRQyCOME3EnOGS/yZLFjBZzpzpovDfPxwVJ17EmFHjRIv/4n0EKabJxyYlD5ZB+WbNwixcuHTpwkgmGJpgJuWpSVNmGpppumzZkmXNmjco48SpV0/ev5IbNdY7GvVoPadVqybFalXrxi1dvPxTotLLFjNd1OQEg9OMlzdK7Nm7+NaeErpb7TrllzfvXb59/f4FHFjwYMKFDWvMAShMm4dltDwuc0aMmJZZwiBMkzmLGIFttPwrE09gDoIGX54pk4aLyCZZVHPEMdgiSNpNznwMYhI1yjJDF2552eWfTEY080zKSZwRzIiZuQglWiZq0n/ymtxNOj2rU6zU7Xb3TlgJTCVg34w1U1bNev+YZ8Go+SpX/ly69esfvqiXH37+/f3/BzDA/nJYTAzHWFpIizImYwgnhcTAaLQ2HCujjYE+6mIzMRIaKZ5/tPApnopiA2xEj2jDrYyRcivpjKNQ8i0L4F4ajri0cNKJOOZcesm56Karri+ousMOq6i2Ao8qwrrawrw1xiJLvS7M+Kcrmsxwaz767LOvP/32EzBMMccks0wzz0QzzTE5+edI7sATbLwuygvrSaCAgmkLL4haw71/tOSSy/++VLNQQw9FNFFFFzVUjjPoiuMpOAFjcqKwxPJiLC72bOstL85SYw35Au0SQP0YRTVVVVdltdVC41DiKIySBIw8S0N5I1f/lTbtVC4lzKCpizfeIrU+ME3Vy1Vll2W2WWeZdXOiJJW8a42fMqIrFCX01PItfrq4kp9i6UoW2XKfRTdddddlF0Ba73rpDafe2CLLbvt8r95iv9zvWPwIbTdggQcmWOB3tbKWi43garJb+bY4q4s1SOW330FPLThjjTfmGNFptYo3I7m2ENVhufgBFgwzxLWvYn+9xLhjmWemuWbCPp53SozkW6Nek319A9w0wDLWZQEBtjlppZdeuru3nHppjYnmC2WLYX/e8tP3vCDXZYvN3Ytpsccme+Ck5NMoaIW7JRnrLenagidhvd7rZf6QLjtvvfdudb6Muip5vp7tdTjQ//3ASGNlusXEm2/HH4f8TC0nCrqLbuW92uRirX3vn8UZjzly0Ucn/bDJmQT0n8ALH1drr4wms/HSZ6e9dqfmk5Pwt6TGelwl8oI48TcqLlN2249HvnS5/vlJS3oz79Z3/SJSw3Pjjw49ee2355tY8nBvW/Nxv/SCei+ux54fI7hnv/2xRxZOyyd/lp7ffzKbO+wz8zKif/f/ByDH5gOTUMyHXrob1fhcZoY0qEFxhepfBAM4QQquy2/NG5XVxLcvrwUtM1uwm5ki6L8KltCErNJSvOazpw1SjG77iYhXDjXCE9bQhoiSXxe4IDifRU+BL+RH3ByIKAne0IhHHFO3yv8CvW1BL4EcBGJezLCeJhmKhEjEYhbxczkdrnB1T3RhFPdTPjXIUItnROOzTBY1nvUQdz+M4kXKl7ivpNGOd0yVyYIGFrk8z4dQjCNG4paGKuLRkIdM08+Yt7rwvRGQQEzbFK+FSEpWMkA/C4UO7TU4QMFRjPr7BxnNaElSljIwcPlZk7zQRw0S63d6CeMnXdYVB67PlLfE5Vbo9725kKxldHulLBdXRhCiL5fHPCTWUEeXwYUiFMKE5EbIx7zXBRKZ18yi2+YiHJY9jx+54peuhidMvpRPZ9A8FzbV2T5tjqp8xaQXUcQ5T119U5Z+6cok8yPMEdpynf8cXTsB9S3/1eUKKCoZSqYyNRSGylOMgSmLPqvitX7SEKAX3ZvfdsY6fnzFDLkaC0MVOlKFJhSc1uyLF8qylsBU9IoYhanYrnM7H+KqcnvyAhf0RFKekrSe4/xcSmHC0pgWtYSdtCm9ppQpoIz0TnfqKaeGB9S62Q+fefKnUbXKzgQmdSgR0RNZnjrWp/aUKFadCPH4YoSI1nGrb9VeV3WV0Lj9RKxkxetOR3rWdGIErXZR6VLhOtjjudKrI41Ilf5hBqCkx7HpIWsoMzWRsw7PKmq1Sz71RFjOlq0N8rKKErwqtcnej5DM00h6BIkRtxb0m3bBrFWMoNnO1nZpnCAZaPGSK9Iq/3YiMURtRlR7ESpdpJChPCtfYluVwBLVts+VmUqCMjGMZIu3T4JSYxnoQOZ0t7uPpdKdJlJS3Sr3r04J7Gahu96NKWElQpGXda+b3ShNkT1lNMt68Mucx5aVvIFZLlcgm1X2FjhgdYLvM+WV0Ow+tjn6hTCEvwtZqP5XMAFmbZRaa2AOs0slVeITdu/kWOaAKsIn3q9j/bsnAgP4vKyF7IY7PONmzUW6TWWqdiO6npygWMJDpTCOM1XewWB4vJClcZKZ5UqDzmjE6WmPftGClggDmbEVHvLdMGwElapXyV9GlSsvNZQZOTi/Up5yj3+sYizL2DAYzq6bwTxnybnym/8IhVJES4zmNKtZv0BeMVvAlr1Q4pjOh64zk3mbY7JEmc95gHSkIe1n/LJZr4JOX+OgJGdEd3qLy6PLfBusHh7nRNKn9rOV29ziQasvIwr1dKz7gzaiiVrHZzb1qVFNkzVfWcicvhj/XlpaWRd7MGFYnqXGbCftOjrXkZ7ETSKd6in5+tJpUl8/jb1twiAbLspe9qidXRNoRzvakq7Jn6vt65FaUdvchndfwoCtUGPqyeO+EaTNfe5pp7vSQW73DC0ab4JbZd7VrbeIm41r45Tb3OimMnum9OtFvbTgFw9twpkdpSg/+zj7hriaG5gZnwBaT0TGeMpRRadwj9gsPJn/ssP5PWleS9y7N183wImtcp6rSeONJvmJG67rkKfb5L9mNHiVfmVY99zpAWJmo2O4bnwTvd9TZg+7Fcrqf5xn1EvX+c6fPva7uBc4/B0rlBlObl1Tej0NJOalUa4Vrz8Z7BTeOtn1bp4ZuQQoIf56e/p8o4irGyYj/4lC5w4Yhdod7Fje+8W18BKdEqU+tm62e/jc5yqvW+pDBfZhnKpja+808tzWAqYvovGklyUzER585y3dWP6GPkBRPX3KyYX5ruDvzEJ/T+c9j+VGxzj3xxeTaDHfHD3/Hs3Cn31J14cex9oe+df/y+7x3Pucd1fohh/+r4mSYRVbH/vnz/hh/2NIeu9C+D0TDvKlx78RlaoY/ffPvvLPAxOdOr75e7ayxQo0TrEK6mMs88O/+xMtfrAWHWI00lO69QCvsSKp+duK+jO+BNRAjWCmPGEwsgI7s+ivARy/xaO/+vKyDdzABmQLTHlA/2Mga5uISyNAEyxAFERAFRy7ruCCNRit0csriJFBnrJAwZitx8pBHVQ54Pgo+cIzICSrPGkqybIw0cNBJcTCLNTCLeTCLvTCLwTDMDwMJ5hCMTRDMYkxrjvDNRwMeik/NoRDK4ySFIzDOmQ8/7LDPLxDQ9NDG8qHPwTEQBTEQSTEQjTEQ0TERFTERVRE0Qu4PjQhRpTESaTESv+0xEbkD7GDxAm6xE70xE8ERUDcxGsKxVI0xVMsxFFEJlRkxVYERVU8JleUxVmURFi0xcL4EpeyuFtcw1zURV4ExmAUxmEkxmI0xmNExmRUxmVkxmZ0xmeExmiUxmmkxmq0xq0SRcHIRm3MB8L4w2ssqm0EDHH8C3Isx28Ex4sSRG5Ex3E0R74IxHRUx3h0x3e0i3UMDHyUR1JMxb7oR3gkRL/4x300JUa0CoM8SEysikUkyFJCSKd4SIhUSIlMxIYkpYjUCIzMyIncCIa0SEuqyHtERJE8RJI0xI90yJK8C5U0yUEEyIFEyUo6yZd0SZrUx5WEyZhEpJnEyZxcSJ7/3AqW1MmdFEqtKMqE9EmKDMihpKSRbMmafEp6jEp7LAw1ZErSkUqpNMpt1Eqk7MaLoMqN/MqJCMvBsMqr1LtdREuMIykKTMK1jLU1iD+Kg8ueO8t/UMu6TEu9RL675Mu/BMzAFMzBJMzCNMzDRMzEVMzFZMzGdMzHhMzIlMzJpMzKtMzLxMzM1MzN5MzO9MzPBM3QFM1SesvR1KrSNM2Y0sTUtC3UZE2Mcs3XBKjYlM3atM3bxM3c1M3d5M3e9M3fBM7gFM7hJM7iNE6t0ofkPE5sSs7mdM7lxCXnlE59mIetmAd9gE4tmk7pnIfq3Iju7E7szE4k2k7u7E6MAM/0/xTP8byh8jTP9IRP72TPI3JP54xP8JzPLKpP+4TP/Dyj/WzO/vRP7QRQ6kzPASVQABVQBCXPAl1QBjWiAjVQ/ITQBt3PA61QC61PDM1Q+rzQB+3QE1LQ+AzR9txQ7wTREqWg+syIFFXRCZJOq3DRF3Uf5bSLGaVR7rHRu1DPHP2f5vQL8FxPH9XRHeWL8CTS9gFSwBjSJE0eI3XSBo1S/YTSKbWhJbXSCK3SLDUhG6VQLi0hA6WHMR3T8wTTAKLOMb0HOWBTObiHMd0KOYCQMy0dNZUDxQiDMAAENn1Tp3CUhFAYOh2deaCHO12MNkDUNtBTN6UHjPhTzRAD+RTUx/8hVENtg4N4iMlQVEa9hzNwjQe5h0klnXm4B8VgjMfIgseQDESdPEgNVVEd1UItEC1YCJdgiYRQjTN4VVgtnUoNAzGgVS7YCZJ7jjaQg0bl1dkhVTm4VFoFFwfJkDPYVGRN1lEt1WbNguKANNVwiGmt1l4tVGzlgrRAHIWQ1jA41m+NVTn4VU/F1cNTjTYAhD5VV9JhV2zl1oVwjjag1nqNHEL9hwJxjcfQAgbJjM/wV9HRB3oo1cVwickQA0UFhA1RDTlIWMhJ0zUNg2JV1EUd00+d04vdm+QkVHoAhDTQAkDYU0ZF1jZIiCzYVZEdGyAl1DZIgzZ4UzLNCHpwDS7/aAOZJRssPYM0KFOrEIOIyIJ+BVqbwdLJuws56NmDW1qmHVIuQNi7GFqUldSp7ZgdpYc0CNm7AISX5dqZwdKTBYS/oAenLduu3VExINrAsNi25ZimDVS6fRwjfQ68xdj1nIc0OAO+dZyzTQOpFdy8wVK4VdrDndkdZVvGRdwhXQjI1ZsdnYcuCFzKLZsdlYOb1dyg3VGbjdnPVRq7Jd3GxYjJPV2m0durXd2k2dF78NzXhd3QTYO5pd2aEVou2NrcddvUzQLfpVqMsFrh1d31/NqfNV6ZwdIwuN3lZd4dRYjehV6CMVLVrd6Nad3srVvkBVvu1ZjmfV7wLZjE7QLq/yXfdTHd9LXeqnVd9m0Xy+2CsIVf9d1RQOiCtK3f+H3b8z2MJt3fMlnfwrjOAE6T633fwEBSAz4T+aVfwBBSBjYTLJWDLjBcBTZTCSYTLG2DLljcIM1gDR6TAcZg9BVhALne4BUMDj1hMdHbzIXgL21hF17PCr7gvpDhGRYQDvbgEtbhDXbcuwVhE/7h/kjhGCbiIuaPF/4LFlbiAIldC27iEH5iFA7dLsBdHqXiKv6P3R1iLqZh4MXhLQZj/9jeu5jQMg4Tr/VZNDZQNV7j9dzYLLYKkoXjNcaIDXFjAL5jAaFVu8DSPh6T4tWK5xTkMaGHNq7jQD5kARlbOs4IQ/9uZDHZECJm5EkOkD+uikvGZABJ1U3m5E7uj3lYDaeQZFEOkLHV30gOZbtQXlTeikreiFbeijBQYVjWCk1mZT5+WkLGZav45F0WDJ7lgg/+5Ysg5Qem5VzmglU+5o2Qg2YW5sDYkFd+5o1w2X5dZoPjAhi+5o2gDFYWjGjWAmP+5g95X162C55N2nOuiiywZsKYPEh254ngWWceDIS44XqeCEAoZ8Nw2Qfm54m4DMMY2wQe6IlA1MJgZ3PmZ3ktjJag54SeB5yVZy7Y54T+B3oIgyTWioDWaKcw2cE46JAW6dHti3t4DodOaDiF4JZAaZOeCDK2i8nDZ5lGZmpWZJxiPoyNRWiellur9WigXueFYGmivlFanWik7gvKyGim5gtA2AyoHox70IIzGGqq3gh6OIN/1uomZoyj/uqNmNilHuuqoAeIPmscVtm19gs2zWq33uh7iGu3pgPeleu+oAP4DQgAOw=="}},"time_used":31,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":26,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/3957.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.611Z","timestamp":1785159268611,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/3957.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2847\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:34:38 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 04:36:21 GMT\r\ncache-control: max-age=86400\r\netag: \"f6894d3955fb14cdda30c8efa49a5096\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 37573\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: xfisMekxaQPioeiyE2OSHDa-GkkpSEKSluCk9Cv3x1XOrrYRR0SdwA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2847,"size_decoded":3373,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"f6894d3955fb14cdda30c8efa49a5096","sha1":"94fa4629c716af0d5a3743f37c56adfcfdf8f48c","sha256":"b2f4ab7b90bba9d8a6a7030dc77051befe48ab8f27fed2cfd8acb2060ce7b8f6","sha512":"22244597a2a22ec6011765743dda5e7ba01f9f3a23ba4c8ec9e91158f4e76835bbbd95f04cd65d18b6cd41c5b1b130971641298f9f2c00c54ce611c62f4e3232","ssdeep":"","tlshash":"2e513cc19d2d29b4dbaf4a523bf08512daceb3e53322222d9317afd10947f702459ac7","first_seen":"2023-05-16T12:20:21Z","last_seen":"2026-07-29T06:14:00.391361Z","times_seen":1434,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAADAFBMVEVHcEwAAAAXGx8XGx8XHB8XHB8WGx4AAAAAAAcXHB8XGx4WGx8XHB8XGx8XHCIWGx4XHB4VGx4WGx4WHB4UHR4XHB4WGx8WHh4XHB4WGx4XHB4XHCAWGx8XGx4XGx8XGx8XGx8WHB4XGx4WHB4WHB8WHB4XHCAXHB8SGxsNFh4XHB8YHR8aHh8XHSAYHSETGR4RGR8YHB8ZHh8IEh4JFR4NEx4RFx4HDh0aHx8LFx4UGh8WGx8bIB8PGB4nKiADDR0KER4aHR8ZHiIOFh4LFB7/7zbKwDX/6zIBCB1vVyVBOCL/2zIgIR8kKCAmJSD/yTFERCOAbCZdVST/kS4qLiFFMyIlISApIyD/eC7/5zH/9TT24TD61zD/vTD/qS9sSSQuJiDIjyv1zjA9NiL/si+Zdyj/4zFBPiJCKyK3qSsvMSH/iS7//zdvaiZlWCVvTyX53jD/0zEzKCHt3jVrWiXEgio7LyH/7zF8dSjs0jHs1zD/uS83NSH/pi/n2zhNPyP/oC//lS6GRSXnuzBdOCNKLiL/+zR3PiVPTCP22zCYbij/wjCcgynGmyzHlCvFoyxZSSTHfCtoZSaZRifFbyr+0TCOUSb+ri/45TCKWifIpyxXUSSkjiq4Uij86TTh1jZiXSTeeyz2ci3/gy6Ffijgciv5fi2uWSnSuS3/1jHKYCr1hy2wnyo5KiHfzi/SxTN1cCihmS1SNCLQbStvXSWjXijrjS3GiSupgilUQiOdYijzyjCbVyiOgijvhC3z4TLxmi9LSST/mS7ryi+cUCfocCyTgij30jCYZyjrwy/soS3/nC//cy7ppy7qsS5iPyScZChXOyPnYyu6sTLupy6VXiffxi6mZCj2ni6AVCbVXiu+ZCqglSmbjymCTyb2ty/6xjD2Zy26bCn6dS3xcCzvei2LZyfYiiz0yjDnxC/yvi/0wDDNsy2xkCp/XifBZCrdri3gkS10RSTOhCzMqy2NiC3EujWplSrLuC/qeS31pi7QdyvReyu8pCz4kS3Fsyz6TlESAAAAKnRSTlMAAo67/v35AQP8Yaj1bBXXkF3qxRgo1SnSLa3n7e93eEE/z4eG6oXrHPZV8ccMAAAHpElEQVRYw61XB3AT1xZdyZJ25QA2wcaQBEgIDpl9byVt0652JasmNrjjirEddxsH26Hj0JtDQknooRfTQi/pvU1I7733X5Lf+CW///9WkqVdSbaZSa5Gmh3N3vPOre9eDIsTHaH8pA/XJ6VkmgykKXNkkn54Bo7+JHBscMGROnGtfryJslAUGRQKPZrG668lLgcCvXTj2FGUjyKNZqPRoOgbjOiRRH+NGpcWfGEA0eFY2oSJPspgDulGxWA0Gyhf5g1pGK4b6Hh86NU+Cp2XUIxmynf1UF2/JJD1o5OQuoHsVwwIYsTofjyB41jyEMtA6iEIy5Bk5d0E+rjeQpnJQcVMWfR4PIIOJ67wJTgeJCLhu4KIdSWuI67ymeLVRTvJxEOYfFcRWg44gaPz49SddqFU4p3xLBAHXONJAtMnON8mZP11yTuL3JKYgEOqOpoElmyJ0YciI5ee3Tcju2f2gjwPYOIRkqMIBJYxROs/Bng8VvhZz9RPiz7d23N6k90vglhPDknHdH0OIEZYzFrbPWfPZblt+9cIPN86PXv+9HbBGmOH2TJCF3YDgQ3V6ENZaD9ZNeN0h5jDOxnI+3e9P7/7iSxBjnXk0JAROD5sotGoipzH2dHd8/7Jlqr/TZERdYZhS19oyP5NB6NNC4Nx4rBgLAlsgiqCopV95lh29Qulwppj2S3/WSRYASnahEW7f90yxyOSEqOmcL1CAceGXWPo8yAkhfx1W3N3tiKTPc7ilS2PrcuSgJJPOety72eBNZ+PusJgGJOGKbU5LkIABJg5f7zvh2KZR04XZSGr+LczJ/uVQ52B5pn3s/YF+4qEaDzMvrEKBSLFEPYAsE7eUFjTvMgjw5A3rO7GTnvwfcg2F05i6ekzntrkiTjCbEhR4nAdFfGgrX5h/VLWDkHEoa5A6Bmyd62dhEx4Yv78Q3y0w1DXISfqoy6U5i5udGtSH0CyD6CmixVJ4eyd2Z/5mYgNqciC8VEG0sZny1wgUROA3ItNXSwEzpwF2T/KUQajUBabyEgWS1tuLfMrACAkdJgGAM7Ai7UIgBQ9nS13S5E4kKZ0bHiUACl9cqQNMWAYqyJ2e/gov99lc7+37BYOAbCduVEARGE4lqpKY+n4q20uKNr5/CwkpaV5IYTGsrbVpz5YrgBAdsrM9ZKqIFKxJBUD+Y7NdZQktJ9bsmTfku6VT29zeEmSlv6e+8WHJ/7Re0kBCNxTuF7NIAkbSakK2eGQhPxDs2dk771p5hf/XPwmUkEAO+9raPhy4bI3OK8CsHZDFMBApWCZpAoAeMQFp3umTl9TdK675eKXzWwQoL5pe9O7zUsV78LAIwvr1QBXYppOBKYcq5p6spXneU/7oTNVu1HkEcC/Sv790SxPIJTsS7c/JKk7E6bWl35qufjTGp5nICPaBbGjA1UzkhWraNYGgykFHY2L56oBDJi6lUl/yd2VwzNKoslOwOd47EFhWZszmBI0dPk/WrZR01k0Jkh3b51sd4bqKuudMzf3yZm/tSs15ZW5eV8vX/6ojVabcKUqCtL6wtZwojP+Z/ZW3RSWqk08QwKvA37+ZMmBW2wqA8hMLEUNsKEmVP7IClHYde+0p6ZNQ99797sZkrY5zm/pPfJ4Hac630CN1CSSVL9wslILMs/LpFOYctttd6JPy35BRLEof/6byuPnc1ionhhQImlS+aHtCoAsFhWJQYTq6ovV1Z2CkwRS+cevvr3Cnr+7WAKkJpU1xTR3MQJADpw9Ows1U4TwWENDp6C0QWDbvOeUgy+autMPSE0xpavLeeMrqB+g1nn77QoA6XQX5xa7g2GhJVp2Of2tW3/nZ1Q+NGVgxChVQ9lSMs8BEUB3dxAAeuZsnRMIGY1cBxh7Y+HDAagiMB411VRVS7tw6wOyA1rzn3suBMBOQq00rECjG9N9z9qHVV40+/SYuqkC66rDvX9Y7bAWvPRSH0DNpMiJ0C/9/t2a71mobao4aut9FGiu7mjlwRW2gpUrwwBdTV3uUBoDLzdvblPtXVCO5IERtXXlZhsbtQG6bCu+2uMveP31PoDaP5dxykUAJa7r6dpfPRKI6iMLxiF1HZY2JnK1oVcdbeX+gtdey1MuF1rOe++V/+6QbdDLFXzw7PJH8wKQVl1t1wxDNyPCuF51udJelywVvPzyUlTAAAWP+/xEydcVHPfWgZIDb3ES1EwIwcs1dL2ruxKQ8v5U++GOOg5BAMCVXeg9fP7Skd6jFRxU3xnGvutdGTC0ExqQ5r354LIHd8zibF6Q5yg/WvntNwcvOWwwZkQJDxgoDjrtiEPSLq7ugRMlT26r4FwcKOfu+Orj1RwAsSMO0Tfp6bD0mCELQJv/1OPf9R7eduqNTy4Ax+oKpcHHDFkZ6jEtbswDwOWf9fzBym8rK49XyC7JGzvmWZK1g2Jq3KAJvC5H2+a396yCEg3ouDFRr1kb+hl1EUSF7JDpwUddFMvEw7ZXIr10wmFbh1/euE9f5rj/8xeO0Moz5nJWnjGJV57Q0jVi8KUraXT/6yeqzcHXPnyg3VNZPG/I7H/xnDhh4MUztPqmjetv9R1742Cr7y+wfIchMDwDrf8jM9GlYcpMQet/ukKcSMD+/wiy9DseMRyrAAAAAElFTkSuQmCC"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":2,"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/ck=ytembeds.base.NxniuuZETZw.L.F4.O/am=AAAAgA/d=1/exm=base,root/excm=base,root/ed=1/br=1/rs=AGKMywHU6qHNitns5XqYEK-2yyUEaGOVkQ/m=r78Drb","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.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/6jePbqXJhe8","date":"2026-07-27T13:34:29.418Z","timestamp":1785159269418,"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/ck=ytembeds.base.NxniuuZETZw.L.F4.O/am=AAAAgA/d=1/exm=base,root/excm=base,root/ed=1/br=1/rs=AGKMywHU6qHNitns5XqYEK-2yyUEaGOVkQ/m=r78Drb 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/6jePbqXJhe8\r\nCookie: __Secure-YNID=20.YT=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; YSC=KVevwPvGbos; __Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; VISITOR_INFO1_LIVE=mydA6aM0K4I; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%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: 235736\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 13:01:31 GMT\r\nexpires: Sat, 24 Jul 2027 13:01:31 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Fri, 24 Jul 2026 05:09:16 GMT\r\ncontent-type: text/javascript; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 261178\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":942843,"size_decoded":236650,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (65533), with no line terminators","md5":"6f2dc696d3e2c5e8b0536728ac5a3aea","sha1":"8da6a7915f0b3ff607db13862fc417574d8d4999","sha256":"4036991c2199a96276eabd866d75631508768ad958639f2ef3d985061bddef47","sha512":"481bcb7979552bb2b61e9faaf2cc6abdeeb36c7e5e4e0a483ba1e93c62bea4c29bd94f525ec183b9a9bb4518f02e3e9748be080d771f801fa3cc7d4e73a09116","ssdeep":"12288:Rhrh0EencTyXGld16WDVcIm4zDSG8UvCeoBJjlXc7WPz6/wWXqkZTNvl6hkTeubf:R41jofemc+tD70LCSn4AqVnYU1YtsxDT","tlshash":"a2159ff0b25271b4d147b926fab7c003b57e4903e2081879f0a7ae9c55fca942e77729","first_seen":"2026-07-24T13:38:07.888738Z","last_seen":"2026-07-27T16:56:48.650117Z","times_seen":570,"resource_available":true,"data":"InVzZSBzdHJpY3QiO19GX2luc3RhbGxDc3MoIjpyb290ey0tdDdmNGYyYzZkNTQ4MzZjZTA6aW5pdGlhbDstLXQ3ZDhiOGU1ZWUyOTFhZWMwOmluaXRpYWw7LS10NDcyNmM2OGVmNmQ3YjA4Zjppbml0aWFsOy0tdGYwYTBkMTE1NDgyNzg0N2Y6aW5pdGlhbDstLXQzZTQxZDdiMTdiMTg3ZjY5OmluaXRpYWw7LS10ZmY2NTk5MzM4NGJiNDU2MDppbml0aWFsOy0tdGUyODY3YjEzZDc3MWQwNTU6aW5pdGlhbDstLXQ5MzNkNzkyMmYzMTU4ZGM1OmluaXRpYWw7LS10MjY0ZTJjOWNiODc4OTFmOTppbml0aWFsOy0tdDIwNmYzZmEyZTAxYWYyMmQ6aW5pdGlhbDstLXQzNGY0NmYwZjJjMTNkMzI4OmluaXRpYWw7LS10ODU0Yzc5MzM4ZDhjYThhNzppbml0aWFsOy0tdDIwNDgwNzE3ZGU4MGY1NTU6aW5pdGlhbDstLXQyZDgwN2JiNzllNzU2MDZkOmluaXRpYWw7LS10NjE3ZGI3NzZhZjBkZTE5Njppbml0aWFsOy0tdGI2MjgxMTdmYzE2NGFkODc6aW5pdGlhbDstLXRkNTQ1ZGYwNGUyYzY1OWQ3OmluaXRpYWw7LS10NTM5OTFkNTk5YjE0ODhmNTppbml0aWFsOy0tdGE4ODlkZmRhOTYwNWEzNTg6aW5pdGlhbDstLXQ1OTc4ZGE4ZDU4NGI4ZmU5OmluaXRpYWw7LS10MTI0YjdkYWZlOWJjMzY2ZDppbml0aWFsOy0tdGRiZTUwZDI3ZDUxZjUwOTM6aW5pdGlhbDstLXRhNTY0ZDgyMTJiY2NiMTZhOmluaXRpYWw7LS10OTlmNzc0Njg0Y2JiOTcwMzppbml0aWFsOy0tdDRlNmRmOWIyYjZiOTdlMDA6aW5pdGlhbDstLXRiOGIzMWFjNTYyZmJlOWI1OmluaXRpYWw7LS10NTg4NDY3MjAwNGQ1NjEyMDppbml0aWFsOy0tdGVmNzBjYTI0NTQ0NWI1MmI6aW5pdGlhbDstLXQ0ZjA5MjJlNWEzZDBjMjBmOmluaXRpYWw7LS10N2RmYTZmODRjOTM0NmVkZjppbml0aWFsOy0tdGVjYmRmOTI0YjYzYjI3ZmM6aW5pdGlhbDstLXQxNDA1ZTcwYTM5Mjc2MjkzOmluaXRpYWw7LS10YWQ4NDQzZmFlZDY2YzExMTppbml0aWFsOy0tdGU2ZDJiNDI4ZGU2ODU1NGE6aW5pdGlhbDstLXRjOTgwYzU0NzgxMjRjOGM3OmluaXRpYWw7LS10OTY1NjQ0ZWNkYmU0YjdiODppbml0aWFsOy0tdGIxNGExMGMzYjQzYTE1YTM6aW5pdGlhbDstLXRiMTNmZjg3OTc4MjllNzllOmluaXRpYWw7LS10ZTU2NjhlNjExMWFiYTBlZDppbml0aWFsOy0tdGE3ZDYyOGZhY2ZlODRkMTg6aW5pdGlhbDstLXRiZTQyMjY5NTM0NjU1ZTY3OmluaXRpYWw7LS10YWI4MDU5MjM2MDYzY2FkYjppbml0aWFsOy0tdDczNWU0MzVhOGI3YWQ2N2M6aW5pdGlhbDstLXQyMWFmMDhmZGJmNmExNDA2OmluaXRpYWw7LS10YzYwNDExM2QwOWZlZTA1ZDppbml0aWFsOy0tdDA4YTdjNmMxNzZjYmM1YzI6aW5pdGlhbDstLXQ4Y2RjOTg0NmE3NmNhZjFmOmluaXRpYWw7LS10ZTFiNjRlNjk3MTA0MDM5Njppbml0aWFsOy0tdDQxNmU1OTMxZmM0NjQ1ODk6aW5pdGlhbDstLXRiN2Q3NGJiMzI5MWM5NTFkOmluaXRpYWw7LS10ZjNmYzg1NWFmMjI4NWY1Zjppbml0aWFsOy0tdDBhMTI0OWY3YzllODJiNWU6aW5pdGlhbDstLXQwMmMwYTJjODY4YzE0Y2U4OmluaXRpYWw7LS10ZDg1NjJjZGMyMDNiYzY4Mzppbml0aWFsOy0tdDUzZGRhOTEyNWU4ZDEzMjQ6aW5pdGlhbDstLXQ1NDRlMzE3MTRmNjNkNTNjOmluaXRpYWw7LS10ODdlYWJmMTEzYTE1YWM5Njppbml0aWFsOy0tdDg1OGI4MDlmODA0NGU5NjI6aW5pdGlhbDstLXQwZjU5MjkxY2U1NTA0NTQzOmluaXRpYWw7LS10ZmFhZTk2NjkyY2MxODJlNDppbml0aWFsOy0tdDUxOGU5MjVmNjFiZGNiOTE6aW5pdGlhbDstLXRiOTI3ZjVjMDE0OTAwNGM2OmluaXRpYWw7LS10ODMyZjIyY2U2NjE4ZTk5ZTppbml0aWFsOy0tdDQ1YjJhMzgzMTQ5MjQzNTc6aW5pdGlhbDstLXQ2OTMxYWExODI2YjM3M2IyOmluaXRpYWw7LS10ZWQ0MjM2NTM2ODk5ZTRiMzppbml0aWFsOy0tdGRjOGFmNjc1MGYwZGFkMGQ6aW5pdGlhbDstLXQzNDEwYzkxNjQ5ZTVlYjhhOmluaXRpYWw7LS10NGFlYWE4NTdkZThhNzg2Yjppbml0aWFsOy0tdDI5NmM3ZjgxZGQwOWE5YzM6aW5pdGlhbDstLXRmYTM0NzVjNTA4ZjVkZmVmOmluaXRpYWw7LS10OWJjMGI3NDAyNDJkYTAxNzppbml0aWFsOy0tdDQ0MWEwZTQ0ZTQ5NTM4MWE6aW5pdGlhbDstLXRkZTQxMzM4ZmMyYmQ0YmE1OmluaXRpYWw7LS10NGQ3Nzc2YzI4ZGIyMTEyMjppbml0aWFsOy0tdDdlMzRkNWJhYTRlYTYyNzc6aW5pdGlhbDstLXRjNGIyNjA0MmQ0Y2IxNDFmOmluaXRpYWw7LS10NTIwOGZkMTc3YTc4OGNmYTppbml0aWFsOy0tdGZmYzJmZDNhNjQ0ZjYyNzU6aW5pdGlhbDstLXQ2MjE2MTg2YzI4YjM4MzRiOmluaXRpYWw7LS10NGE2ZGExOWUxNmJmMjIxYTppbml0aWFsOy0tdGQ5YzE5ZjRmOGNlY2Q1NmU6aW5pdGlhbDstLXQzZjNiZGI0MTQwZDNlYWQ3OmluaXRpYWw7LS10OTA0YTg4YzYyM2NhMjdhYjppbml0aWFsOy0tdDJjM2JiZmY2YzE1YTNlYjI6aW5pdGlhbDstLXQwY2NkMWFjZTAwMGQ1ZTkzOmluaXRpYWw7LS10Yzg3ZjZhN2YwNWU2NWZjNDppbml0aWFsOy0tdGMwNGJhM2U3MzU2MTk1M2M6aW5pdGlhbDstLXQ3YzQ5NjVjMTFmODUzN2MwOmluaXRpYWw7LS10NDMyZmJkYmQ3ZjJmM2Y3MTppbml0aWFsOy0tdGFmMWJkZDk2MTQyM2MxNWY6aW5pdGlhbDstLXQ5ZDdiZGNhZWZjOTc1ZDQ0OmluaXRpYWw7LS10NGZiMGY2N2IyNTFlMWE0Mjppbml0aWFsOy0tdGEwOGUwMzY0MTBjMTQ1Mzg6aW5pdGlhbDstLXQ3ZjliN2UxNjAzZTIwYjk0OmluaXRpYWx9LmRpYWxvZ3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoxNnB4O21hcmdpbjowIGF1dG87b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvO2ZvbnQtc2l6ZToxLjNyZW07Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOm5vbmV9LmRpYWxvZy5tb2Rlcm4tZGlhbG9ne2JveC1zaGFkb3c6MCAwIDI0cHggMTJweCByZ2JhKDAsMCwwLDAuMjUpfS5kaWFsb2cucm91bmRlZC1jb250YWluZXJ7Ym9yZGVyLXJhZGl1czoxMnB4fS5kaWFsb2cubW9kZXJuLWRpYWxvZy1sYXlvdXR7cGFkZGluZzowO2JvcmRlci1yYWRpdXM6MjRweH0uZGlhbG9nLWJvZHl7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO21heC1oZWlnaHQ6MzAwcHg7bWF4LWhlaWdodDoxMDB2aH0uZGlhbG9nLnNjcm9sbGFibGUgLmRpYWxvZy1ib2R5e292ZXJmbG93LXk6dmlzaWJsZTtvdmVyZmxvdy14OnZpc2libGU7bWF4LWhlaWdodDp1bnNldH0uZGlhbG9nLWNvbnRhaW5lcntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDo0fS5kaWFsb2ctaGVhZGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGlhbG9nLWJ1dHRvbnMsLmRpYWxvZy1oZWFkZXJ7ZmxleC1zaHJpbms6MH0uZGlhbG9nLWJ1dHRvbnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bWFyZ2luLXRvcDoxMnB4fS5kaWFsb2ctYnV0dG9ucz4qe21hcmdpbi1sZWZ0OjhweH0uZGlhbG9nLWJ1dHRvbnM+OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjB9LmRpYWxvZy1mbGV4LWJ1dHRvbnstbW96LWJveC1mbGV4OjE7ZmxleDoxfS5kaWFsb2ctZmxleC1idXR0b24gLmJ1dHRvbi13aXRoLWljb24uY29tcGFjdHttYXJnaW46MH0uZGlhbG9nLWJvZHkgYSwuZGlhbG9nLWhlYWRlciBhe2NvbG9yOiMwNjVmZDR9LmRpYWxvZy1ib2R5IHl0bS1tZW51LWl0ZW0gYXtjb2xvcjpjdXJyZW50Y29sb3J9QG1lZGlhIChtaW4td2lkdGg6MzMwcHgpIGFuZCAobWluLWhlaWdodDozMzBweCl7LmRpYWxvZ3ttaW4td2lkdGg6MjUwcHg7bWF4LXdpZHRoOjM1NnB4fS5kaWFsb2ctY29udGFpbmVye21hcmdpbjowIDQwcHg7cGFkZGluZzowO3BhZGRpbmc6MCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KX19LmRpYWxvZy1mdWxsc2NyZWVue21pbi13aWR0aDoxMDAlO21pbi1oZWlnaHQ6MTAwJTttYXJnaW46MDtwYWRkaW5nOjA7aGVpZ2h0OjFweH0uZGlhbG9nLWZ1bGxzY3JlZW4+LmRpYWxvZy1ib2R5e2hlaWdodDoxMDAlfS5kaWFsb2cubW9kZXJuLWRpYWxvZy1sYXlvdXQuZGlhbG9nLWZ1bGxzY3JlZW57Ym9yZGVyLXJhZGl1czowfS5kaWFsb2ctY29udGFpbmVyLmRpYWxvZy1mdWxsc2NyZWVue21hcmdpbjowfWMzLXRvYXN0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDo1O2xlZnQ6MDtyaWdodDowO2JvdHRvbTowOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjE0cHggMjRweDtmb250LXNpemU6MS40cmVtO2NvbG9yOiNmZmY7YmFja2dyb3VuZDojMGYwZjBmO3dpbGwtY2hhbmdlOnRyYW5zZm9ybTttYXJnaW4tYm90dG9tOi0xMDAlfWMzLXRvYXN0Lmh1Zy10b2FzdHttYXgtd2lkdGg6MzQ0cHh9YzMtdG9hc3QuaW52ZXJzZS10aGVtZXtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzAzMDMwM31jMy10b2FzdC5pbnZlcnNlLXRoZW1lIC5idXR0b24td2l0aC1pY29ue2NvbG9yOiMwNjVmZDR9W2hhcy1zYWZlLWFyZWEtaW4tbWF4PXRydWVdIGMzLXRvYXN0e3BhZGRpbmc6MTRweCAyNHB4O3BhZGRpbmc6MTRweCBtYXgoMjRweCxlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSkgMTRweCBtYXgoMjRweCxlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKX1baGFzLXBpdm90LWJhcj10cnVlXSBjMy10b2FzdHstLXNhZmUtYXJlYS1pbnNldC10b3A6ZW52KHNhZmUtYXJlYS1pbnNldC10b3ApOy0tc2FmZS1hcmVhLWluc2V0LWJvdHRvbTplbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7Ym90dG9tOjQ4cHg7Ym90dG9tOmNhbGMoNDhweCArIHZhcigtLXNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTttYXJnaW4tYm90dG9tOi0xMDAlO21hcmdpbi1ib3R0b206Y2FsYygtMTAwJSArIHZhcigtLXNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTt6LWluZGV4OjJ9W21vZGFsLW9wZW4tYm9keV0gYzMtdG9hc3QsW3Nob3J0cy1wbGF5ZXI9dHJ1ZV0gYzMtdG9hc3R7Ym90dG9tOjhweDttYXJnaW4tYm90dG9tOi0xMDAlO3otaW5kZXg6NX1jMy10b2FzdFtkaXI9b3V0XXt0cmFuc2l0aW9uOm1hcmdpbiAxOTVtcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpfWMzLXRvYXN0W2Rpcj1pbl17dHJhbnNpdGlvbjptYXJnaW4gMjI1bXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTttYXJnaW4tYm90dG9tOjB9QGtleWZyYW1lcyBzcGlubmVyezAle3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9dG97dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fS5zcGlubmVyV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5zcGlubmVye2Rpc3BsYXk6YmxvY2s7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjoxMnB4IGF1dG87d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MnB4IHNvbGlkICNlZWU7Ym9yZGVyLXRvcC1jb2xvcjojNjY2O2FuaW1hdGlvbjpzcGlubmVyIC44cyBsaW5lYXIgaW5maW5pdGV9LnNwaW5uZXI+LmhpZGRlbntkaXNwbGF5Om5vbmV9LnNwaW5uZXI6bm90KFtoaWRkZW5dKXtjb2xvcjojMzMzO2ZvbnQtc2l6ZToxLjZyZW19aHRtbHtjb2xvcjojMDMwMzAzO2JhY2tncm91bmQtY29sb3I6I2ZmZjtmb250LXNpemU6MTBweDtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZn1ib2R5e21hcmdpbjowO3BhZGRpbmc6MDtwYWRkaW5nOjAgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7Zm9udC1zaXplOjEuMnJlbTtvdmVyZmxvdy14OmhpZGRlbn1baGlkZGVuXVtoaWRkZW5de2Rpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbn15dG0tYXBwPi5zcGlubmVye21hcmdpbi10b3A6MTAwcHh9eXRtLWhlYWRlcntkaXNwbGF5OmJsb2NrfWhlYWRlcntoZWlnaHQ6NDhweH0ucGxheWVyLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NDhweDtyaWdodDowO3JpZ2h0OmVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO2xlZnQ6MDtsZWZ0OmVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6Mn1baGFzLXBsYXllci1jdXN0b20tY29udHJvbD10cnVlXSAucGxheWVyLWNvbnRhaW5lcntvdmVyZmxvdzp2aXNpYmxlIWltcG9ydGFudH0jcGxheWVyLmlubGluZS1wbGF5ZXItaGlkZGVuLC5pbmxpbmUtcGxheWVyLWhpZGRlbntvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZX0ucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUseXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO3BhZGRpbmctYm90dG9tOjU2LjI1JTtvdmVyZmxvdzpoaWRkZW59LnBsYXllci1jb250YWluZXIgI3BsYXllci5wbGF5ZXItc2l6ZSx5dG0td2F0Y2ggLnBsYXllci1zaXple2JhY2tncm91bmQtY29sb3I6IzAwMH0ucGxheWVyLWNpbmVtYXRpY3N7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6IzAwMH0ucGxheWVyLWNpbmVtYXRpY3N+I3BsYXllci5wbGF5ZXItc2l6ZSwucGxheWVyLWNpbmVtYXRpY3N+LnBsYXllci1zaXple2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LnBhZ2Utc2hvcnRzIC5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSwucGFnZS1zaG9ydHMgeXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwYWRkaW5nLWJvdHRvbTowfS5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItYXBpe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ucGxheWVyLWFwaVtoaWRkZW5dLC5wbGF5ZXItYXBpW2xvYWRpbmc9dHJ1ZV0sLnBsYXllci1hcGlbcGxheWFibGU9ZmFsc2Vde2Rpc3BsYXk6bm9uZX0jcGxheWVyLmlubGluZS1vbi10aHVtYm5haWx7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowfS5wbGF5ZXItY29udGFpbmVyIC5odG1sNS12aWRlby1wbGF5ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjB9eXRtLWFwcHtkaXNwbGF5OmJsb2NrO292ZXJmbG93LXg6aGlkZGVufVtoYXMtc29mdC1iYXI9dHJ1ZV0geXRtLWFwcHtwYWRkaW5nLWJvdHRvbTozMHB4fVtoYXMtcGl2b3QtYmFyPXRydWVdIHl0bS1hcHB7cGFkZGluZy1ib3R0b206NDhweH15dG0taGVhZGVyLmlzLWF1dG9tb3RpdmUseXRtLWhlYWRlci5zdGlja3ktcGxheWVyLHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLmlzLWF1dG9tb3RpdmUseXRtLW1vYmlsZS10b3BiYXItcmVuZGVyZXIuc2hvcnRzLXRvcGJhcix5dG0tbW9iaWxlLXRvcGJhci1yZW5kZXJlci5zdGlja3ktcGxheWVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6NDtwYWRkaW5nOjA7cGFkZGluZzowIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIDAgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KX15dG0tbW9iaWxlLXRvcGJhci1yZW5kZXJlci5zdGlja3ktcGxheWVyLm91dHt0b3A6LTQ4cHg7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMTk1bXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbH15dG0tbW9iaWxlLXRvcGJhci1yZW5kZXJlci5zdGlja3ktcGxheWVyLmlue3RvcDowO3RyYW5zaXRpb246dHJhbnNmb3JtIDIyNW1zIGN1YmljLWJlemllcigwLDAsLjIsMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTphbGx9LnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntwb3NpdGlvbjpmaXhlZDt0b3A6NDhweDtyaWdodDowO3JpZ2h0OmVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO2xlZnQ6MDtsZWZ0OmVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6Mn0ucGxheWVyLWNvbnRhaW5lci5oZWFkZXItaW4tcGxheWVyLC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXIuaGVhZGVyLWluLXBsYXllcnt0b3A6MH15dG0tYXBwLmlzLWF1dG9tb3RpdmUseXRtLWFwcC5zdGlja3ktcGxheWVye2Rpc3BsYXk6YmxvY2s7cGFkZGluZy10b3A6NDhweH15dG0tYXBwLmlzLWF1dG9tb3RpdmUuaGVhZGVyLWluLXBsYXllcix5dG0tYXBwLnN0aWNreS1wbGF5ZXIuaGVhZGVyLWluLXBsYXllcntwYWRkaW5nLXRvcDowfUBtZWRpYSAobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Ym9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjI1NnB4fWJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMjU2cHgpfWJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1jb250YWluZXIsYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjI1NnB4fWJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye3dpZHRoOmNhbGMoMTAwJSAtIDI1NnB4KX0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIsLm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6MzM2cHh9Lm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSAzMzZweCl9Lm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lciwubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6MzM2cHh9Lm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMzM2cHgpfS5td2ViLWFsbC1sYW5kc2NhcGUtdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgLnBsYXllci1jb250YWluZXJ7Ym90dG9tOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn1Ac3VwcG9ydHMgKGFzcGVjdC1yYXRpbzoxNi85KXsubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciAucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgeXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwYWRkaW5nLWJvdHRvbTp1bnNldDthc3BlY3QtcmF0aW86MTYvOX19Lm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXplLC5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIHl0bS13YXRjaCAucGxheWVyLXNpemV7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gNDhweCk7bWF4LWhlaWdodDpjYWxjKDEwMHN2aCAtIDQ4cHgpfX1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MjEvMTApIGFuZCAobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgLnBsYXllci1jb250YWluZXJ7Ym90dG9tOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn19QG1lZGlhIChtaW4tYXNwZWN0LXJhdGlvOjE2LzkpIGFuZCAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lm13ZWItcGhvbmUtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIsLm13ZWItcGhvbmUtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDozMzZweH0ubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMzM2cHgpfS5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lciwubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDozMzZweH0ubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye3dpZHRoOmNhbGMoMTAwJSAtIDMzNnB4KX0ubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IC5wbGF5ZXItY29udGFpbmVye2JvdHRvbTowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9QHN1cHBvcnRzIChhc3BlY3QtcmF0aW86MTYvOSl7Lm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLm13ZWItcGhvbmUtbWV0YWRhdGEtc3BsaXQtdmlldyAucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLm13ZWItcGhvbmUtbWV0YWRhdGEtc3BsaXQtdmlldyB5dG0td2F0Y2ggLnBsYXllci1zaXple3BhZGRpbmctYm90dG9tOnVuc2V0O2hlaWdodDphdXRvO2FzcGVjdC1yYXRpbzoxNi85fX19QG1lZGlhIChtaW4td2lkdGg6MTI4MHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Ym9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjUwMHB4fWJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gNTAwcHgpfWJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1jb250YWluZXIsYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjUwMHB4fWJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye3dpZHRoOmNhbGMoMTAwJSAtIDUwMHB4KX0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIsLm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6NTAwcHh9Lm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSA1MDBweCl9Lm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lciwubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6NTAwcHh9Lm13ZWItdGFibGV0LW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gNTAwcHgpfX1AbWVkaWEgKG1heC13aWR0aDo5MzBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpe3l0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLnNob3J0cy10b3BiYXJ7cmlnaHQ6NzJweH0ucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUseXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwYWRkaW5nLWJvdHRvbTpjYWxjKDU2LjI1JSAtIDk2cHgpfS5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIC5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSwubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciB5dG0td2F0Y2ggLnBsYXllci1zaXple2hlaWdodDpjYWxjKDU2LjI1dncgLSA5NnB4KTtwYWRkaW5nLWJvdHRvbTp1bnNldDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA0OHB4KTttYXgtaGVpZ2h0OmNhbGMoMTAwc3ZoIC0gNDhweCl9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7LnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXplLHl0bS13YXRjaCAucGxheWVyLXNpemV7cGFkZGluZy1ib3R0b206NTYuMjUlfX1AbWVkaWEgKG1heC13aWR0aDozMjBweCkgYW5kIChtYXgtaGVpZ2h0OjI0MHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7LnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXplLHl0bS13YXRjaCAucGxheWVyLXNpemV7cGFkZGluZy1ib3R0b206NTYuMjUlfX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpe3l0bS1hcHB7cGFkZGluZy10b3A6NDhweH15dG0taGVhZGVyLHl0bS1oZWFkZXItYmFyLHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6NH19LmNvbnRlbnQtZXJyb3J7Zm9udC1zaXplOjEuNHJlbTtwYWRkaW5nOjEycHg7dGV4dC1hbGlnbjpjZW50ZXJ9I3BsYXllci10aHVtYm5haWwtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtvYmplY3QtZml0OmNvdmVyO21pbi1oZWlnaHQ6MH0jcGxheWVyLWNvbnRhaW5lci1pZFtwbGF5YWJsZT10cnVlXSAjcGxheWVyLXRodW1ibmFpbC1vdmVybGF5e3Zpc2liaWxpdHk6aGlkZGVufWJvZHkucGFnZS1zaG9ydHMsaHRtbFtwYWdlLXNob3J0c117b3ZlcnNjcm9sbC1iZWhhdmlvci15Om5vbmV9Ym9keS5sb2FkaW5nLnBhZ2Utc2hvcnRzICNoZWFkZXIsYm9keS5sb2FkaW5nLnBhZ2Utc2hvcnRzIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcntkaXNwbGF5Om5vbmV9Ym9keS5wYWdlLXNob3J0cyAjcGxheWVyLWNvbnRhaW5lci1pZCxib2R5LnBhZ2Utc2hvcnRzIC5wbGF5ZXItY29udGFpbmVyICNwbGF5ZXJ7aGVpZ2h0OjEwMCU7dG9wOjB9KnstbXMtZmxleDowIDEgYXV0b31idXR0b257cGFkZGluZzowO2JvcmRlcjpub25lO291dGxpbmU6bm9uZTtmb250OmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDtjb2xvcjppbmhlcml0O2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9aHRtbHt3b3JkLXdyYXA6YnJlYWstd29yZDtjb2xvcjojMDMwMzAzO2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5W2Rpc2FibGUtdGFwLWhpZ2hsaWdodD10cnVlXSBbcm9sZT1idXR0b25dLGJvZHlbZGlzYWJsZS10YXAtaGlnaGxpZ2h0PXRydWVdIGEsYm9keVtkaXNhYmxlLXRhcC1oaWdobGlnaHQ9dHJ1ZV0gYnV0dG9uey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH1odG1sW2Rhcmtlci1kYXJrLXRoZW1lXXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9aHRtbC53YXRjaC1zY3JvbGx7c2Nyb2xsLXBhZGRpbmctdG9wOjQ4cHh9aHRtbC53YXRjaC1zY3JvbGwuc3RpY2t5LXBsYXllcntzY3JvbGwtcGFkZGluZy10b3A6Y2FsYyg0OHB4ICsgNTYuMjV2dyl9aW5wdXR7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtwYWRkaW5nLWJvdHRvbTo0cHg7b3V0bGluZTpub25lOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjA7bWFyZ2luLWJvdHRvbToxcHg7Zm9udDppbmhlcml0O2NvbG9yOiMwMzAzMDM7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzczNzM3Mzt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfWlucHV0OmZvY3Vze21hcmdpbi1ib3R0b206MDtib3JkZXItYm90dG9tLXdpZHRoOjJweDtib3JkZXItYm90dG9tLWNvbG9yOiMwMzAzMDN9aW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9aW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOiM2MDYwNjA7b3BhY2l0eToxfXRleHRhcmVhe2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7cGFkZGluZy1ib3R0b206NHB4O291dGxpbmU6bm9uZTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czowO21hcmdpbi1ib3R0b206MXB4O2ZvbnQ6aW5oZXJpdDtjb2xvcjojMDMwMzAzOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTttaW4taGVpZ2h0OjguNHJlbTt3aWR0aDoxMDAlO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO3BhZGRpbmc6OHB4fXRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVye2NvbG9yOiM2MDYwNjA7b3BhY2l0eToxfXRleHRhcmVhOjpwbGFjZWhvbGRlcntjb2xvcjojNjA2MDYwO29wYWNpdHk6MX1mb3Jte21hcmdpbjowfWF7Y29sb3I6Y3VycmVudENvbG9yO3RleHQtZGVjb3JhdGlvbjpub25lfWgxe2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO21heC1oZWlnaHQ6Mi41ZW07LXdlYmtpdC1saW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjU7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXdlaWdodDo0MDA7bWFyZ2luOjAgMCAzcHg7bWFyZ2luLWJvdHRvbTowfWgye2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO21heC1oZWlnaHQ6Mi41ZW07LXdlYmtpdC1saW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjU7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXdlaWdodDo0MDA7bWFyZ2luOjAgMCAzcHg7Zm9udC1zaXplOjEuOHJlbTttYXJnaW4tYm90dG9tOjB9aDN7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDtmb250LXNpemU6MS40cmVtO21hcmdpbi1ib3R0b206MH1oNHtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDttYXgtaGVpZ2h0OjIuNWVtOy13ZWJraXQtbGluZS1jbGFtcDoyO292ZXJmbG93OmhpZGRlbjtsaW5lLWhlaWdodDoxLjI1O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowIDAgM3B4O2ZvbnQtc2l6ZToxLjNyZW07bWFyZ2luLWJvdHRvbTowfWltZ3ttaW4td2lkdGg6MXB4O21pbi1oZWlnaHQ6MXB4O2ZpbHRlcjpub25lfWltZzpub3QoW3NyY10pe3Zpc2liaWxpdHk6aGlkZGVufTpmb2N1c3tvdXRsaW5lOm5vbmV9cHttYXJnaW46MH0uaXRlbXttYXJnaW4tdG9wOjEycHg7ZGlzcGxheTpibG9ja30uaXRlbTpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MTJweH1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5pdGVte21hcmdpbi10b3A6OHB4fX0uaW1hZ2Utb3ZlcmxheS10ZXh0e3RleHQtc2hhZG93OjFweCAxcHggaHNsYSgwLDAlLDYuNyUsLjIpLC0xcHggMXB4IGhzbGEoMCwwJSw2LjclLC4yKSwtMXB4IC0xcHggaHNsYSgwLDAlLDYuNyUsLjIpLDFweCAtMXB4IGhzbGEoMCwwJSw2LjclLC4yKX0jcGxheWVyLWNvbnRyb2wtY29udGFpbmVyey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZX1bZGlyPXJ0bF0gI3BsYXllci1zaG9ydHMtY29udGFpbmVye2RpcmVjdGlvbjpydGx9W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAjcGxheWVyLWNvbnRyb2wtY29udGFpbmVyLFtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLnBsYXllci1jb250YWluZXIgI3BsYXllcixbc2hvcnRzLXBsYXllcj10cnVlXSAjcGxheWVyLXNob3J0cy1jb250YWluZXIsW3Nob3J0cy1wbGF5ZXI9dHJ1ZV0gLnBsYXllci1jb250YWluZXIgI3BsYXllcntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtwYWRkaW5nLWJvdHRvbTowfS5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIC5wbGF5ZXItY29udGFpbmVyOi13ZWJraXQtZnVsbC1zY3JlZW4gLnBsYXllci1zaXplLC5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIC5wbGF5ZXItY29udGFpbmVyOmZ1bGxzY3JlZW4gLnBsYXllci1zaXplLC5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIFtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXple2hlaWdodDoxMDAlO21heC1oZWlnaHQ6MTAwJTthc3BlY3QtcmF0aW86YXV0b31bZmF1eC1mdWxsc2NyZWVuPXRydWVdW2Z1bGxzY3JlZW4tcmVqZWN0ZWQ9dHJ1ZV0gI2FwcHtkaXNwbGF5Om5vbmV9W3Nob3J0cy1wbGF5ZXI9dHJ1ZV0gLnBsYXllci1jb250YWluZXIgLmh0bWw1LXZpZGVvLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLnBsYXllci1jb250YWluZXIsW2ZhdXgtZnVsbHNjcmVlbj10cnVlXSB5dG0tbW9iaWxlLXRvcGJhci1yZW5kZXJlcixbc2hvcnRzLXBsYXllcj10cnVlXSAucGxheWVyLWNvbnRhaW5lcixbc2hvcnRzLXBsYXllcj10cnVlXSB5dG0tbW9iaWxlLXRvcGJhci1yZW5kZXJlcjpub3QoLnNob3J0cy10b3BiYXIpe292ZXJmbG93OnZpc2libGU7ei1pbmRleDo0fVtzaG9ydHMtcGxheWVyPXRydWVdIC5wbGF5ZXItY29udGFpbmVyIC55dHAtdW5tdXRlLnl0cC1wb3B1cHt0b3A6NzVweDtsZWZ0OjA7bGVmdDplbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpfVtyb2xlPWJ1dHRvbl0sYnV0dG9uLGlucHV0W3R5cGU9Y2hlY2tib3hdLHNlbGVjdHtjdXJzb3I6cG9pbnRlcn15dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOjEwMCU7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl17d2lkdGg6dmFyKC0teXRkLXNob3J0cy1wbGF5ZXItd2lkdGgpO2hlaWdodDp2YXIoLS15dGQtc2hvcnRzLXBsYXllci1oZWlnaHQpfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl0gLnJlZWwtcGxheWVyLW92ZXJsYXktbWV0YWRhdGF7bWFyZ2luLXJpZ2h0OnZhcigtLWFjdGlvbi1idXR0b24tZnVsbC13aWR0aC1uZWdhdGl2ZSk7cGFkZGluZy1yaWdodDp2YXIoLS1hY3Rpb24tYnV0dG9uLWZ1bGwtd2lkdGgpfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl1bZXh0cmFjdC1hY3Rpb24tYmFyXXt3aWR0aDpjYWxjKHZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLXdpZHRoKSArIDcycHgpfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl1bZXh0cmFjdC1hY3Rpb24tYmFyXSAucmVlbC1wbGF5ZXItb3ZlcmxheS1tZXRhZGF0YXttYXJnaW4tcmlnaHQ6MDtwYWRkaW5nLXJpZ2h0OjB9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LWFjdGlvbi1iYXJdIC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnN7bWFyZ2luLWJvdHRvbToxNnB4fXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl1bZXh0cmFjdC1vdmVybGF5XXt3aWR0aDoxMDAlfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl1bZXh0cmFjdC1vdmVybGF5XSAucmVlbC1wbGF5ZXItb3ZlcmxheS1tZXRhZGF0YXt3aWR0aDpjYWxjKCgxMDAlIC0gbWF4KHZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLXdpZHRoKSwgMzE1cHgpKS8yKTttYXJnaW4tcmlnaHQ6bWF4KHZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLXdpZHRoKSwzMTVweCk7cGFkZGluZy1yaWdodDowO2JhY2tncm91bmQtaW1hZ2U6bm9uZTtmaWx0ZXI6dW5zZXQ7bWluLXdpZHRoOjM2MHB4O21heC13aWR0aDo0ODBweDtwYWRkaW5nLWxlZnQ6MTZweH15dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlcltpcy13ZWJdW2V4dHJhY3Qtb3ZlcmxheV0gLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9uc3stbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXIgYnV0dG9uOm5vdChbYXJpYS1wcmVzc2VkPXRydWVdKSBjMy1pY29ue2ZpbHRlcjpkcm9wLXNoYWRvdygwIDFweCA2cHggcmdiYSgwLDAsMCwuNCkpfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyIC55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbExhYmVse3RleHQtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLDAuOCl9LnJlZWwtcGxheWVyLW92ZXJsYXktbWFpbi1jb250ZW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZW5kOy1tb3otYm94LWFsaWduOnN0cmV0Y2g7YWxpZ24taXRlbXM6c3RyZXRjaH0ucmVlbC1wbGF5ZXItb3ZlcmxheS1tZXRhZGF0YXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtZmxleDoxO2ZsZXg6MSAxIDAlO2FsaWduLXNlbGY6ZmxleC1lbmQ7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO21pbi13aWR0aDowO21hcmdpbjowIDAgMTZweCAxNnB4fXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2RhdGEtaGFzLWluZm8tcGFuZWw9dHJ1ZV0rLlByb2dyZXNzQmFyU2hvd2luZ3twYWRkaW5nLXRvcDoxNnB4fS5yZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhIHl0LW1ldGFkYXRhLWJhZGdlLXJlbmRlcmVye2hlaWdodDoyNHB4O3BhZGRpbmc6M3B4IDRweCAzcHggMH0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25ze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjowIDRweCAxNnB4IDRweDstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnJlZWwtcGxheWVyLW92ZXJsYXktdG9wLWJhcntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctdG9wOjJweH0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIC5idXR0b24td2l0aC1pY29ue21hcmdpbjowIWltcG9ydGFudDttaW4td2lkdGg6MDt0ZXh0LXRyYW5zZm9ybTpub25lfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgLmJ1dHRvbi13aXRoLWljb24gLmJ1dHRvbi1yZW5kZXJlci10ZXh0e21hcmdpbi10b3A6N3B4O21heC13aWR0aDo2NHB4O292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS1idXR0b24tcmVuZGVyZXJ7bWF4LXdpZHRoOjY0cHh9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tYm90dG9tLXNoZWV0LXJlbmRlcmVyLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLW1lbnUtcmVuZGVyZXJ7bWFyZ2luLXRvcDo0cHg7ZGlzcGxheTpibG9jazstbW96LWJveC1mbGV4OjE7ZmxleDoxO3BhZGRpbmctcmlnaHQ6NHB4O3BhZGRpbmctdG9wOjRweDtwYWRkaW5nLWJvdHRvbTo4cHh9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyBwaXZvdC1idXR0b24tdmlldy1tb2RlbCwucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS1idXR0b24tcmVuZGVyZXIsLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlcntkaXNwbGF5OmJsb2NrO3BhZGRpbmctdG9wOjRweDtwYWRkaW5nLWJvdHRvbTo4cHg7bWFyZ2luOjB9QG1lZGlhIChtYXgtd2lkdGg6OTMwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA0OHB4KX0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHBpdm90LWJ1dHRvbi12aWV3LW1vZGVsLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLWJ1dHRvbi1yZW5kZXJlciwucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS10b2dnbGUtYnV0dG9uLXJlbmRlcmVye2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDouM2VtfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLWJvdHRvbS1zaGVldC1yZW5kZXJlciwucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS1tZW51LXJlbmRlcmVye2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDowfX0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS1tZW51LXJlbmRlcmVyIC5pY29uLWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgYnV0dG9uPi5idXR0b24td2l0aC1pY29uLWlubmVyey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn15dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlciB5dG0tcHJvZmlsZS1pY29ue2JvcmRlcjoxcHggc29saWQgI2ZmZn1AbWVkaWEgKG1heC1oZWlnaHQ6NDExcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIC5idXR0b24td2l0aC1pY29uLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLWZvcmNlZC1tdXRlLW1lc3NhZ2UtcmVuZGVyZXJ7bWluLWhlaWdodDo0MHB4fS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgLmJ1dHRvbi13aXRoLWljb24gLmJ1dHRvbi1yZW5kZXJlci10ZXh0LC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgLnl0QXR0cmlidXRlZFN0cmluZ0hvc3R7ZGlzcGxheTpub25lfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLW1lbnUtcmVuZGVyZXIgLmljb24tYnV0dG9ue2hlaWdodDozMnB4fX0ubG9nby1pbi1wbGF5ZXIsLm1vYmlsZS10b3BiYXItbG9nb3tjb2xvcjojZjAzO3BhZGRpbmc6MCAxMnB4O3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7bWFyZ2luLWxlZnQ6LTFweH0ubG9nby1pbi1wbGF5ZXIuZnVsbC1sb2dvLC5tb2JpbGUtdG9wYmFyLWxvZ28uZnVsbC1sb2dve3dpZHRoOjkzcHg7aGVpZ2h0OjIwcHg7Y29sb3I6IzAwMDttYXJnaW4tbGVmdDowfS5sb2dvLWluLXBsYXllci5zaG9ydHMtbG9nbywubW9iaWxlLXRvcGJhci1sb2dvLnNob3J0cy1sb2dve3dpZHRoOjczcHg7aGVpZ2h0OjI1cHg7Y29sb3I6IzAwMDttYXJnaW4tbGVmdDowfS5sb2dvLWluLXBsYXllci5mdWxsLWxvZ28tcmVkLC5tb2JpbGUtdG9wYmFyLWxvZ28uZnVsbC1sb2dvLXJlZHt3aWR0aDoxMDFweH0ubG9nby1pbi1wbGF5ZXItZW5kcG9pbnQsLm1vYmlsZS10b3BiYXItaGVhZGVyLWVuZHBvaW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjQ4cHg7dGV4dC1hbGlnbjpsZWZ0fS5sb2dvLWluLXBsYXllci5mdWxsLWxvZ297Y29sb3I6I2ZmZn0ubW9ub2Nocm9tYXRpYyBzdmcgcGF0aHtmaWxsOiNmZmZ9eXRtLXN1YnNjcmliZS1idXR0b24tcmVuZGVyZXJ7ZGlzcGxheTpibG9ja315dG0tc3Vic2NyaWJlLWJ1dHRvbi1yZW5kZXJlciAuYnV0dG9uLXJlbmRlcmVyLWljb257aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ubW9kZXJuLXN1YnNjcmliZS1idXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uc3Vic2NyaWJlLWJ1dHRvbi1jb3VudHtjb2xvcjojNjA2MDYwO2ZvbnQtc2l6ZToxLjRyZW07bWFyZ2luOjAgOHB4fUBrZXlmcmFtZXMgbm90aWZpY2F0aW9uLWJlbGwtZmFkZS1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTEwMCUpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06bm9uZX19Lm5vdGlmaWNhdGlvbi1iZWxsLWNvbnRhaW5lcntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6NTtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjUwJTtvdmVyZmxvdzpoaWRkZW59Lm5vdGlmaWNhdGlvbi1iZWxsLWNvbnRhaW5lci5oaWRkZW57ZGlzcGxheTpub25lfS5ub3RpZmljYXRpb24tYmVsbHtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6LTJweDthbmltYXRpb246bm90aWZpY2F0aW9uLWJlbGwtZmFkZS1pbiAuMnMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lm1vZGVybi1zdWJzY3JpYmUtYnV0dG9uLWNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS5tb2Rlcm4tc3Vic2NyaWJlLWJ1dHRvbiAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdHt0cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7cGFkZGluZy1sZWZ0OjB9Lll0bVZpZGVvSW5mb0V4cGFuZGVkIC5tb2Rlcm4tc3Vic2NyaWJlLWJ1dHRvbiAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdCwueXRtVmlkZW9JbmZvRXhwYW5kZWQgLm1vZGVybi1zdWJzY3JpYmUtYnV0dG9uIC55dEF0dHJpYnV0ZWRTdHJpbmdIb3N0e3RyYW5zaXRpb246bm9uZX0ud2l0aC1ub3RpZmljYXRpb24tYmVsbCAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdHtwYWRkaW5nLWxlZnQ6MjRweH0ueXRDb3JlSW1hZ2VIb3N0e3Zpc2liaWxpdHk6aGlkZGVuO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21pbi1oZWlnaHQ6MXB4O21pbi13aWR0aDoxcHh9Lnl0Q29yZUltYWdlTG9hZGVke3Zpc2liaWxpdHk6aW5oZXJpdH0ueXRDb3JlSW1hZ2VGaWxsUGFyZW50SGVpZ2h0e2hlaWdodDoxMDAlfS55dENvcmVJbWFnZUZpbGxQYXJlbnRXaWR0aHt3aWR0aDoxMDAlfS55dENvcmVJbWFnZU9iamVjdFBvc2l0aW9uVG9wTGVmdHtvYmplY3QtcG9zaXRpb246dG9wIGxlZnR9Lnl0Q29yZUltYWdlT2JqZWN0UG9zaXRpb25Ub3BSaWdodHtvYmplY3QtcG9zaXRpb246dG9wIHJpZ2h0fS55dENvcmVJbWFnZUNvbnRlbnRNb2RlU2NhbGVUb0ZpbGx7b2JqZWN0LWZpdDpmaWxsfS55dENvcmVJbWFnZUNvbnRlbnRNb2RlU2NhbGVBc3BlY3RGaXR7b2JqZWN0LWZpdDpjb250YWlufS55dENvcmVJbWFnZUNvbnRlbnRNb2RlU2NhbGVBc3BlY3RGaWxse29iamVjdC1maXQ6Y292ZXJ9Lnl0Q29yZUltYWdlQ29udGVudE1vZGVDZW50ZXJ7b2JqZWN0LWZpdDpub25lO29iamVjdC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyfS55dENvcmVJbWFnZUZsaXBSdGx7dHJhbnNmb3JtOnNjYWxlWCgtMSl9Lnl0Q29yZUltYWdlR3JhZGllbnRDb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRDb3JlSW1hZ2VHcmFkaWVudHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZX06cm9vdHstLXl0LWF0dHJpYnV0ZWQtc3RyaW5nLWxpbmstaG92ZXItY29sb3I6dW5zZXR9Lnl0QXR0cmlidXRlZFN0cmluZ0lubGluZUJsb2NrTW9ke2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dEF0dHJpYnV0ZWRTdHJpbmdJbWFnZUFsaWdubWVudEJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b219Lnl0QXR0cmlidXRlZFN0cmluZ0ltYWdlQWxpZ25tZW50QmFzZWxpbmV7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9Lnl0QXR0cmlidXRlZFN0cmluZ0ltYWdlQWxpZ25tZW50VmVydGljYWxDZW50ZXJ7dmVydGljYWwtYWxpZ246bWlkZGxlO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDotLjA3ZW19Lnl0QXR0cmlidXRlZFN0cmluZ0xpc3RHcm91cHstbW96LXBhZGRpbmctc3RhcnQ6MjBweDtwYWRkaW5nLWlubGluZS1zdGFydDoyMHB4fS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5re3RleHQtZGVjb3JhdGlvbjpub25lO2Rpc3BsYXk6aW5saW5lfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rQ2FsbFRvQWN0aW9uQ29sb3J7Y29sb3I6IzA2NWZkNH0ueXRBdHRyaWJ1dGVkU3RyaW5nTGlua092ZXJsYXlDYWxsVG9BY3Rpb25Db2xvcntjb2xvcjojM2VhNmZmfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rW3JvbGU9YnV0dG9uXXtjdXJzb3I6cG9pbnRlcn0ueXRBdHRyaWJ1dGVkU3RyaW5nTGlua0luaGVyaXRDb2xvciAueXRBdHRyaWJ1dGVkU3RyaW5nTGlua0NhbGxUb0FjdGlvbkNvbG9ye2NvbG9yOmluaGVyaXR9Lnl0QXR0cmlidXRlZFN0cmluZ0xpbmtJbmhlcml0Q29sb3IgLnl0QXR0cmlidXRlZFN0cmluZ0xpbmtDYWxsVG9BY3Rpb25Db2xvcjpob3Zlcntjb2xvcjp2YXIoLS15dC1hdHRyaWJ1dGVkLXN0cmluZy1saW5rLWhvdmVyLWNvbG9yKX0ueXRBdHRyaWJ1dGVkU3RyaW5nRWxsaXBzaXNUcnVuY2F0ZXtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRBdHRyaWJ1dGVkU3RyaW5nV2hpdGVTcGFjZU5vV3JhcHt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0QXR0cmlidXRlZFN0cmluZ1doaXRlU3BhY2VQcmVXcmFwe3doaXRlLXNwYWNlOnByZS13cmFwfS55dEF0dHJpYnV0ZWRTdHJpbmdJZ25vcmVTcGxpdExpbmVze3doaXRlLXNwYWNlOm5vcm1hbH0ueXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudExlZnR7ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmxlZnR9Lnl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRSaWdodHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246cmlnaHR9Lnl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRDZW50ZXJ7ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcn0ueXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudEp1c3RpZmllZHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246anVzdGlmeX0ueXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudExheW91dFN0YXJ0e2Rpc3BsYXk6YmxvY2s7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fS55dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50VW5rbm93bntkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246aW5oZXJpdH0ueXRBdHRyaWJ1dGVkU3RyaW5nV29yZFdyYXBwaW5ne292ZXJmbG93LXdyYXA6YW55d2hlcmV9Lnl0QXR0cmlidXRlZFN0cmluZ1VuZGVybGluZWR7LW1vei10ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmU7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS55dEF0dHJpYnV0ZWRTdHJpbmdTdHJpa2V0aHJvdWdoey1tb3otdGV4dC1kZWNvcmF0aW9uLWxpbmU6bGluZS10aHJvdWdoO3RleHQtZGVjb3JhdGlvbi1saW5lOmxpbmUtdGhyb3VnaH0ueXRBdHRyaWJ1dGVkU3RyaW5nVW5kZXJsaW5lU3RyaWtldGhyb3VnaHstbW96LXRleHQtZGVjb3JhdGlvbi1saW5lOnVuZGVybGluZSBsaW5lLXRocm91Z2g7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lIGxpbmUtdGhyb3VnaH0ueXRBdHRyaWJ1dGVkU3RyaW5nTGluZVN0eWxlTm9uZXt0ZXh0LWRlY29yYXRpb246bm9uZX0ueXRBdHRyaWJ1dGVkU3RyaW5nTGluZVN0eWxlU2luZ2xley1tb3otdGV4dC1kZWNvcmF0aW9uLXN0eWxlOnNvbGlkO3RleHQtZGVjb3JhdGlvbi1zdHlsZTpzb2xpZH0ueXRBdHRyaWJ1dGVkU3RyaW5nTGluZVN0eWxlRG90ey1tb3otdGV4dC1kZWNvcmF0aW9uLXN0eWxlOmRvdHRlZDt0ZXh0LWRlY29yYXRpb24tc3R5bGU6ZG90dGVkfS55dEF0dHJpYnV0ZWRTdHJpbmdCYXNlbGluZU9mZnNldFN1YnNjcmlwdHt2ZXJ0aWNhbC1hbGlnbjpzdWJ9Lnl0QXR0cmlidXRlZFN0cmluZ0Jhc2VsaW5lT2Zmc2V0U3VwZXJzY3JpcHR7dmVydGljYWwtYWxpZ246c3VwZXJ9Lnl0QXR0cmlidXRlZFN0cmluZ0Jhc2VsaW5lT2Zmc2V0VW5rbm93bnt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ueXRBdHRyaWJ1dGVkU3RyaW5nSXRhbGljaXplZHtmb250LXN0eWxlOml0YWxpY30ueXRBdHRyaWJ1dGVkU3RyaW5nSGVhZGluZzF7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRBdHRyaWJ1dGVkU3RyaW5nSGVhZGluZzJ7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRBdHRyaWJ1dGVkU3RyaW5nSGVhZGluZzN7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDB9Lnl0QnV0dG9uT3JBbmNob3JIb3N0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dEJ1dHRvbk9yQW5jaG9yQnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JvcmRlcjpub25lO2NvbG9yOmluaGVyaXQ7cGFkZGluZzowO21hcmdpbjowO2N1cnNvcjpwb2ludGVyO291dGxpbmUtd2lkdGg6MDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZDpub25lO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtYWxpZ246dW5zZXQ7d2lkdGg6MTAwJTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9Lnl0QnV0dG9uT3JBbmNob3JBbmNob3J7ZGlzcGxheTppbmxpbmUtYmxvY2s7Y29sb3I6aW5oZXJpdDtwYWRkaW5nOjA7bWFyZ2luOjA7dGV4dC1kZWNvcmF0aW9uOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOjEwMCV9Lnl0UmFkaW9TaGFwZUhvc3R7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9ja30ueXRSYWRpb1NoYXBlSW5wdXR7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTouMDAwMDAxO21hcmdpbjowO2xlZnQ6MTJweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0UmFkaW9TaGFwZUxhYmVsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWluLWhlaWdodDo0OHB4O3dpZHRoOjEwMCU7Y29sb3I6IzAzMDMwM30ueXRSYWRpb1NoYXBlS2V5Ym9hcmRGb2N1c2Vke291dGxpbmU6MnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtvdXRsaW5lLW9mZnNldDotMnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dFJhZGlvU2hhcGVEaXNhYmxlZHtjb2xvcjojOTA5MDkwfS55dFJhZGlvU2hhcGVMYWJlbHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7cGFkZGluZy1yaWdodDoxMnB4O2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9aW5wdXQ6Y2hlY2tlZCtsYWJlbD4ueXRSYWRpb1NoYXBlUmFkaW8+OmZpcnN0LWNoaWxke2Rpc3BsYXk6bm9uZX1pbnB1dDpub3QoOmNoZWNrZWQpK2xhYmVsPi55dFJhZGlvU2hhcGVSYWRpbz46bGFzdC1jaGlsZHtkaXNwbGF5Om5vbmV9Lnl0UmFkaW9TaGFwZVJhZGlvRGVmYXVsdFN0eWxle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMnB4O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9aW5wdXQ6bm90KDpjaGVja2VkKStsYWJlbD4ueXRSYWRpb1NoYXBlQ2hlY2tJY29uPjpmaXJzdC1jaGlsZHt2aXNpYmlsaXR5OmhpZGRlbn0ueXRSYWRpb1NoYXBlQ29tcGFjdHttaW4taGVpZ2h0OjQwcHh9Lnl0UmFkaW9TaGFwZUV2ZW50UGFzc3Rocm91Z2h7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRSYWRpb1NoYXBlVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7Y29sb3I6IzAzMDMwM30ueXRMaXN0SXRlbVZpZXdNb2RlbEhvc3Q6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIaWRkZW57ZGlzcGxheTpub25lfS55dExpc3RJdGVtVmlld01vZGVsS2V5Ym9hcmRGb2N1c2VkOmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25PckFuY2hvcnt3aWR0aDphdXRvfS55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uT3JBbmNob3I6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxOb1RyYWlsaW5nVGV4dCAueXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbk9yQW5jaG9yLC55dExpc3RJdGVtVmlld01vZGVsTm9UcmFpbGluZ1RleHQgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUZXh0V3JhcHBlcnttaW4td2lkdGg6MH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7bWluLWhlaWdodDo0NHB4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle2NvbG9yOiMwMzAzMDM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0LjRyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle21heC1oZWlnaHQ6Mi4ycmVtfS55dExpc3RJdGVtVmlld01vZGVsU3VidGl0bGV7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dExpc3RJdGVtVmlld01vZGVsV2l0aEJhZGdle21hcmdpbi1sZWZ0OjhweH0ueXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQ29udGFpbmVye21hcmdpbi10b3A6MnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdXBlcmxhYmVse2NvbG9yOiM2MDYwNjA7bWFyZ2luLWJvdHRvbToycHg7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRMaXN0SXRlbVZpZXdNb2RlbFNlbGVjdGlvblRleHR7Y29sb3I6IzYwNjA2MDttYXJnaW4tbGVmdDo0cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ1NlbGVjdGlvblRleHR7bWFyZ2luLWxlZnQ6MTJweDtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHttYXgtaGVpZ2h0OjQuNHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbE5ld0NvbnRlbnRJbmRpY2F0b3J7d2lkdGg6NHB4O2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS55dExpc3RJdGVtVmlld01vZGVsQ2hldnJvbkljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweDtmbGV4LXNocmluazowfS55dExpc3RJdGVtVmlld01vZGVsTGVhZGluZ3ttYXJnaW4tcmlnaHQ6MTJweH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjEycHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZzpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDoxMnB4fS55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uT3JBbmNob3IsLnl0TGlzdEl0ZW1WaWV3TW9kZWxQcmlvcml0aXplVHJhaWxpbmcgLnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUNvbnRhaW5lciwueXRMaXN0SXRlbVZpZXdNb2RlbFByaW9yaXRpemVUcmFpbGluZyAueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVyLC55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGVXcmFwcGVye21pbi13aWR0aDowfS55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmcsLnl0TGlzdEl0ZW1WaWV3TW9kZWxQcmlvcml0aXplVHJhaWxpbmcgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVsLC55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdTZWxlY3Rpb25UZXh0e2ZsZXgtc2hyaW5rOjB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25Db250YWluZXIsLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lcnthbGlnbi1zZWxmOnN0YXJ0O2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjQ0cHg7bWluLXdpZHRoOjM2cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dExpc3RJdGVtVmlld01vZGVsQXZhdGFyLC55dExpc3RJdGVtVmlld01vZGVsSW1hZ2V7bWF4LWhlaWdodDozNnB4fS55dExpc3RJdGVtVmlld01vZGVsQWNjZXNzb3J5e2JvcmRlci1yYWRpdXM6MnB4O292ZXJmbG93OmhpZGRlbjtjb2xvcjojMDMwMzAzfS55dExpc3RJdGVtVmlld01vZGVsTGF5b3V0V3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCb3R0b21BY2Nlc3Nvcnl7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjRweH0ueXRMaXN0SXRlbVZpZXdNb2RlbE1haW5Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQmFkZ2VXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUJhZGdlV3JhcHBlcjpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDo4cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb250YWluZXJ7cGFkZGluZzoycHggMTZweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjhweH0ueXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVIb3Jpem9udGFsUGFkZGluZ3twYWRkaW5nOjJweCAwfS55dExpc3RJdGVtVmlld01vZGVsSW5Qb3B1cHtib3JkZXItcmFkaXVzOjB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlZHtjb2xvcjojNjA2MDYwO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlZCAueXRMaXN0SXRlbVZpZXdNb2RlbEFjY2Vzc29yeSwueXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVkIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7Y29sb3I6IzYwNjA2MH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjQuNHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi4ycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZS55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7bWF4LWhlaWdodDoyLjJyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZS55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeSAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVse21heC1oZWlnaHQ6NC40cmVtfS55dExpc3RJdGVtVmlld01vZGVsSGFzU3VidGl0bGV7cGFkZGluZzo2cHggMTZweH0ueXRMaXN0SXRlbVZpZXdNb2RlbEhhc1N1YnRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmd7cGFkZGluZzo2cHggMH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUZXh0V3JhcHBlcnttaW4taGVpZ2h0OjM2cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXttYXgtaGVpZ2h0OjJyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdTZWxlY3Rpb25UZXh0e2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7bWF4LWhlaWdodDo0cmVtfS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXttYXgtaGVpZ2h0OjJyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVsey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7bWF4LWhlaWdodDo0cmVtfS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbENoZXZyb25JY29ue2hlaWdodDoxNnB4O3dpZHRoOjE2cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uQ29udGFpbmVye2hlaWdodDozNnB4O21pbi13aWR0aDozNnB4fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbEltYWdlQ29udGFpbmVye2hlaWdodDozNnB4O21pbi13aWR0aDoyNHB4fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbEltYWdle21heC1oZWlnaHQ6MjRweH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEhhc1N1YnRpdGxlIC55dExpc3RJdGVtVmlld01vZGVsVGV4dFdyYXBwZXJ7bWluLWhlaWdodDo0MnB4fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsSGFzU3VidGl0bGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25Db250YWluZXIsLnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIYXNTdWJ0aXRsZSAueXRMaXN0SXRlbVZpZXdNb2RlbEltYWdlQ29udGFpbmVye2hlaWdodDo0MnB4fS55dExpc3RJdGVtVmlld01vZGVsSXNPdmVybGF5LC55dExpc3RJdGVtVmlld01vZGVsSXNPdmVybGF5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7Y29sb3I6I2ZmZn0ueXRMaXN0SXRlbVZpZXdNb2RlbElzT3ZlcmxheSAueXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxle2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KX0ueXRMaXN0SXRlbVZpZXdNb2RlbElzT3ZlcmxheSAueXRMaXN0SXRlbVZpZXdNb2RlbEFjY2Vzc29yeXtjb2xvcjojZmZmfS55dENoZWNrYm94U2hhcGVIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWluLWhlaWdodDo0OHB4O3dpZHRoOjEwMCU7Y29sb3I6IzAzMDMwMztwb3NpdGlvbjpyZWxhdGl2ZX0ueXRDaGVja2JveFNoYXBlSG9zdENvbXBhY3R7bWluLWhlaWdodDo0MHB4fS55dENoZWNrYm94U2hhcGVJbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTttYXJnaW46MDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO29wYWNpdHk6LjAwMDAwMTt6LWluZGV4OjE7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRDaGVja2JveFNoYXBlTGFiZWx7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3BhZGRpbmctcmlnaHQ6MTJweDtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENoZWNrYm94U2hhcGVEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmcgLnl0Q2hlY2tib3hTaGFwZUxhYmVse3BhZGRpbmctcmlnaHQ6MH0ueXRDaGVja2JveFNoYXBlQ2hlY2tib3hEZWZhdWx0U3R5bGV7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzowIDEycHh9aW5wdXQ6Y2hlY2tlZH4ueXRDaGVja2JveFNoYXBlQ2hlY2tib3g+OmZpcnN0LWNoaWxke2Rpc3BsYXk6bm9uZX1pbnB1dDpub3QoOmNoZWNrZWQpfi55dENoZWNrYm94U2hhcGVDaGVja2JveD46bGFzdC1jaGlsZHtkaXNwbGF5Om5vbmV9Lnl0U3dpdGNoTGlzdEl0ZW1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9LnRvZ2dsZWFibGVMaXN0SXRlbVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRMaXN0Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0TGlzdFZpZXdNb2RlbEhvc3RLYWlvc1NwYXROYXZ7cGFkZGluZzozcHh9fS55dERvd25sb2FkTGlzdEl0ZW1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3R7cGFkZGluZzowIDEycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0W2RhdGEtaGFzLXN1YnNjcmliZS1idXR0b249dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YXtwYWRkaW5nOjA7LW1vei1ib3gtYWxpZ246bm9ybWFsO2FsaWduLWl0ZW1zOm5vcm1hbDttYXJnaW46YXV0bzstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0W2RhdGEtaGFzLXN1YnNjcmliZS1idXR0b249dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YSB5dG0tbWVudS1yZW5kZXJlcntoZWlnaHQ6MTAwJX0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3RbZGF0YS1oYXMtc3Vic2NyaWJlLWJ1dHRvbj10cnVlXSAuWXRtQ29tcGFjdE1lZGlhSXRlbUNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3RbZGF0YS1oYXMtc3Vic2NyaWJlLWJ1dHRvbj10cnVlXSAudmlkZW8tdGh1bWJuYWlsLWltZ3t3aWR0aDo2N3B4O2hlaWdodDo2N3B4O21pbi1oZWlnaHQ6MDtib3JkZXItcmFkaXVzOjUwJX0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3RbZGF0YS1oYXMtc3Vic2NyaWJlLWJ1dHRvbj10cnVlXSAuY2hhbm5lbC1zdWJzY3JpYmUtYnV0dG9ue3BhZGRpbmc6MCAwIDAgOHB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdFtkYXRhLWNvbG9yLXBhbGV0dGUtYXBwbGllZD10cnVlXSAuWXRtQ29tcGFjdE1lZGlhSXRlbVN1YmhlYWR7b3BhY2l0eToxfS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdD5he2Rpc3BsYXk6YmxvY2t9QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsuWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3R7ZGlzcGxheTpibG9jaztwYWRkaW5nOjAgOHB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdCAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItY29tcGFjdHt3aWR0aDoxMDAlO2hlaWdodDphdXRvO3BhZGRpbmctYm90dG9tOjU2LjI1JX19Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0IC5lbmdhZ2VtZW50LWJhcntoZWlnaHQ6MjRweDttYXJnaW4tdG9wOjRweH0uWXRtQ29tcGFjdE1lZGlhSXRlbU11bHRpY29sdW1ue3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH0uWXRtQ29tcGFjdE1lZGlhSXRlbUltYWdle2ZsZXgtc2hyaW5rOjB9Lll0bUNvbXBhY3RNZWRpYUl0ZW1JbWFnZS5zdGFja2Vke3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6NnB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGF7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO21pbi13aWR0aDowO292ZXJmbG93OnZpc2libGV9QG1lZGlhIChtaW4td2lkdGg6NTUwcHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpLChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhW2RhdGEtaGFzLWJhZGdlcz10cnVlXSAuWXRtQ29tcGFjdE1lZGlhSXRlbUhlYWRsaW5le2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfX1AbWVkaWEgKG1heC13aWR0aDo1NDlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCksKG1heC13aWR0aDo5MzBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFbZGF0YS1oYXMtYmFkZ2VzPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6Mn0uWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhLmhhcy1lbmdhZ2VtZW50LWJhciAuWXRtQ29tcGFjdE1lZGlhSXRlbUhlYWRsaW5le21heC1oZWlnaHQ6Mi41ZW07LXdlYmtpdC1saW5lLWNsYW1wOjJ9Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YS5oYXMtZW5nYWdlbWVudC1iYXJbZGF0YS1oYXMtYmFkZ2VzPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7bWF4LWhlaWdodDoxLjI1ZW07LXdlYmtpdC1saW5lLWNsYW1wOjF9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YXtwYWRkaW5nOjRweCAwfS5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFbZGF0YS1oYXMtYmFkZ2VzPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7ZGlzcGxheTotd2Via2l0LWJveDt3aGl0ZS1zcGFjZTpub3JtYWx9fS5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFDb250ZW50e2Rpc3BsYXk6YmxvY2s7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgOHB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFDb250ZW50LnN0YWNrZWR7bWFyZ2luLXRvcDo4cHh9QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhQ29udGVudHtwYWRkaW5nOjB9fS5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmVQbGFjZWhvbGRlcntoZWlnaHQ6MTZweDttYXgtd2lkdGg6MzAwcHg7bWFyZ2luLWJvdHRvbTo4cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLXJhZGl1czoycHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1TdWJoZWFke2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO21heC1oZWlnaHQ6Mi41ZW07LXdlYmtpdC1saW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjU7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXdlaWdodDo0MDA7b3BhY2l0eTouNn0uWXRtQ29tcGFjdE1lZGlhSXRlbVN1YmhlYWRQbGFjZWhvbGRlcntoZWlnaHQ6MTZweDt3aWR0aDoxMjBweDttYXJnaW4tYm90dG9tOjNweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjJweH0uWXRtQ29tcGFjdE1lZGlhSXRlbUhlYWRsaW5le2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO21heC1oZWlnaHQ6Mi41ZW07LXdlYmtpdC1saW5lLWNsYW1wOjI7bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDtmb250LXNpemU6MS4zcmVtO292ZXJmbG93OmhpZGRlbjttYXJnaW46MDtmb250LXNpemU6MS40cmVtfS5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmUgLnl0bS1jaGFubmVsLW5hbWV7Zm9udC1zaXplOjEuNHJlbX1AbWVkaWEgKG1heC13aWR0aDo1NDlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCksKG1heC13aWR0aDo5MzBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7bWF4LWhlaWdodDozLjc1ZW07LXdlYmtpdC1saW5lLWNsYW1wOjN9fS5ZdG1Db21wYWN0TWVkaWFJdGVtQnlsaW5le2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtc2l6ZToxLjJyZW19Lll0bUNvbXBhY3RNZWRpYUl0ZW1TdGF0c3tkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOjEuMnJlbX0uWXRtQ29tcGFjdE1lZGlhSXRlbVN0YXRzfi5ZdG1Db21wYWN0TWVkaWFJdGVtU3RhdHM6YmVmb3Jle2NvbnRlbnQ6XCLCoMK3wqBcIn0uWXRtQ29tcGFjdE1lZGlhSXRlbURlc2NyaXB0aW9ue21hcmdpbjo4cHggMDtwYWRkaW5nOjA7Zm9udC1zaXplOjEuMnJlbX0uWXRtQ29tcGFjdE1lZGlhSXRlbU1lbnV7ZmxleC1zaHJpbms6MDtjb2xvcjojMDMwMzAzfS5mb3JtYXR0ZWQtc3RyaW5nLWRlZW1waGFzaXple2NvbG9yOiM2MDYwNjB9LmZvcm1hdHRlZC1zdHJpbmctYm9sZHtmb250LXdlaWdodDo1MDB9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvc3R7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXJhZGl1czppbmhlcml0O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUcmlnZ2VyRXZlbnRze3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0e3RyYW5zaXRpb246YWxsIC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjkpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlSG92ZXJlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlSG92ZXJFZmZlY3R7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKX0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle3dpbGwtY2hhbmdlOm9wYWNpdHk7b3BhY2l0eTowO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRG93biAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRm9jdXNlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtvcGFjaXR5Oi4xfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUaHVtYm5haWxTaXplU21hbGx7bWFyZ2luOi00cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVTbWFsbCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckVmZmVjdCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW17bWFyZ2luOi04cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW0gLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGwsLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW0gLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0LC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUaHVtYm5haWxTaXplTWVkaXVtIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVMYXJnZXttYXJnaW46LTEycHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVMYXJnZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZUxhcmdlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckVmZmVjdCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZUxhcmdlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czoxNnB4fS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVDaXJjdWxhciAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlQ2lyY3VsYXIgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0LC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVDaXJjdWxhciAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlci1yYWRpdXM6NTAlfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVGaWxse2JhY2tncm91bmQtY29sb3I6IzAwMH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlcjoxcHggc29saWQgIzAwMH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGx7YmFja2dyb3VuZC1jb2xvcjojZmZmfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlSW52ZXJzZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlcjoxcHggc29saWQgI2ZmZn0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRG93biAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRm9jdXNlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtvcGFjaXR5Oi4yfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZU92ZXJsYXlUb3VjaFJlc3BvbnNlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyOjFweCBzb2xpZCAjZmZmfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGx7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVN0cm9rZXtib3JkZXI6MXB4IHNvbGlkICMwMDB9QGtleWZyYW1lcyBwb3BvdmVyLWZhZGUtaW57MCV7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIHBvcG92ZXItZmFkZS1vdXR7dG97b3BhY2l0eTowfX0ueXRQb3BvdmVyQ29tcG9uZW50SG9zdHttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRQb3BvdmVyQ29tcG9uZW50SG9zdC5cXDpwb3BvdmVyLW9wZW4sLnl0UG9wb3ZlckNvbXBvbmVudEhvc3Q6cG9wb3Zlci1vcGVue2FuaW1hdGlvbjpwb3BvdmVyLWZhZGUtaW4gLjE1cyBlYXNlLWlufS55dFBvcG92ZXJDb21wb25lbnRIb3N0Q2xvc2luZy5cXDpwb3BvdmVyLW9wZW4sLnl0UG9wb3ZlckNvbXBvbmVudEhvc3RDbG9zaW5nOnBvcG92ZXItb3BlbnthbmltYXRpb246cG9wb3Zlci1mYWRlLW91dCA3NW1zIGVhc2Utb3V0IGZvcndhcmRzfS55dFRvb2x0aXBDb250YWluZXJIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0VG9vbHRpcENvbnRhaW5lckRlZmF1bHRUb29sdGlwQ29udGVudHtwYWRkaW5nOjhweDtib3JkZXItc3R5bGU6bm9uZTtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzYwNjA2MDtvcGFjaXR5Oi45O2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0VG9vbHRpcENvbnRhaW5lclBsYXllclRvb2x0aXBDb250ZW50LC55dFRvb2x0aXBDb250YWluZXJQbGF5ZXJUb29sdGlwQ29udGVudEJsdXJyZWR7cGFkZGluZzo0cHggOHB4O2JvcmRlci1zdHlsZTpub25lO2JvcmRlci1yYWRpdXM6OHB4O2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7dGV4dC1zaGFkb3c6MCAycHggOHB4ICMwMDA7b3BhY2l0eTouOTtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUb29sdGlwQ29udGFpbmVyUGxheWVyVG9vbHRpcENvbnRlbnRCbHVycmVke29wYWNpdHk6dW5zZXQ7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0ueXRUb29sdGlwQ29udGFpbmVyRWZmZWN0TWFrZXJUb29sdGlwQ29udGVudHtwYWRkaW5nOjRweCA4cHg7Ym9yZGVyLXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czo0cHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGY7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUb29sdGlwQ29udGFpbmVySG90a2V5e2Rpc3BsYXk6aW5saW5lO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjMpO2JvcmRlci1yYWRpdXM6NHB4O3BhZGRpbmc6MCA2cHg7bWFyZ2luLWxlZnQ6OHB4O2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfTpyb290ey0teXQtbGlnaHQtcmltLWNvbG9yOnVuc2V0Oy0teXQtbGlnaHQtd2FzaC1vcGFjaXR5OjA7LS15dC1saWdodC13YXNoLXg6MDstLXl0LWxpZ2h0LXdhc2gteTowOy0teXQtbGlnaHQtd2FzaC1zaXplOjk2cHg7LS15dC1saWdodC13YXNoLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zKX0uY29udHJpYll0TGlnaHRTaGFwZUhvc3R7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXJhZGl1czppbmhlcml0O3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7cG9pbnRlci1ldmVudHM6bm9uZX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0OmJlZm9yZXtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtib3JkZXItcmFkaXVzOmluaGVyaXQ7cGFkZGluZzouNXB4Oy13ZWJraXQtbWFzazpsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7bWFzay1jb21wb3NpdGU6ZXhjbHVkZTtwb2ludGVyLWV2ZW50czpub25lfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRTb2xpZDpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4yKSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0VG9uYWw6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDAsMCwwLDAuMDUpKSx0cmFuc3BhcmVudCA3NSUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdXRsaW5le2luc2V0Oi0xcHh9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE91dGxpbmU6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMykpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodFNvbGlkSW52ZXJzZTpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4yKSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0VG9uYWxJbnZlcnNlOmJlZm9yZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh2YXIoLS15dC1saWdodC1yaW0tY29sb3IscmdiYSgyNTUsMjU1LDI1NSwwLjE1KSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZUludmVyc2V7aW5zZXQ6LTFweH0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZUludmVyc2U6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMTUpKSx0cmFuc3BhcmVudCA3NSUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdmVybGF5U29saWQ6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMikpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlUb25hbDpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4xNSkpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlPdXRsaW5le2luc2V0Oi0xcHh9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlPdXRsaW5lOmJlZm9yZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh2YXIoLS15dC1saWdodC1yaW0tY29sb3IscmdiYSgyNTUsMjU1LDI1NSwwLjE1KSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodHtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3R0b206NTAlO2xlZnQ6MDtib3JkZXItcmFkaXVzOmluaGVyaXQ7ZmlsdGVyOmJsdXIoMTBweCl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRTYWZhcml7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRTb2xpZHtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xNSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRUb25hbHtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodFNvbGlkSW52ZXJzZXtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4zKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodFRvbmFsSW52ZXJzZXtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4wNSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRPdmVybGF5U29saWR7YmFja2dyb3VuZDojZmZmfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0T3ZlcmxheVRvbmFse2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjE1KX0uY29udHJpYll0TGlnaHRTaGFwZUR5bmFtaWNXYXNoTGlnaHR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSkgdHJhbnNsYXRlKHZhcigtLXl0LWxpZ2h0LXdhc2gteCwwKSx2YXIoLS15dC1saWdodC13YXNoLXksMCkpO2JvcmRlci1yYWRpdXM6aW5oZXJpdDt3aWR0aDp2YXIoLS15dC1saWdodC13YXNoLXNpemUsOTZweCk7aGVpZ2h0OnZhcigtLXl0LWxpZ2h0LXdhc2gtc2l6ZSw5NnB4KTtvcGFjaXR5OnZhcigtLXl0LWxpZ2h0LXdhc2gtb3BhY2l0eSwwKTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgZmFydGhlc3QtY29ybmVyIGF0IGNlbnRlcixyZ2JhKDI1NSwyNTUsMjU1LC4yKSAwLHRyYW5zcGFyZW50IDEwMCUpO3BvaW50ZXItZXZlbnRzOm5vbmU7ZmlsdGVyOmJsdXIoMTVweCl9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3N0e2JvcmRlci1yYWRpdXM6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDtvdmVyZmxvdzpoaWRkZW47cG9pbnRlci1ldmVudHM6YXV0bztjb250YWluOmxheW91dCBzdHlsZSBwYWludDstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXt0cmFuc2l0aW9uOm9wYWNpdHkgLjQ1cyBjdWJpYy1iZXppZXIoLjI1LDEsLjgsMSl9fS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlUHJlc3NlZCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXt0cmFuc2l0aW9uLWR1cmF0aW9uOjQwbXN9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0IC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheURlZmF1bHQ6aG92ZXIgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouMDV9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVQcmVzc2VkIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjF9OnJvb3RbZGFya10gLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0IC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e2JhY2tncm91bmQtY29sb3I6IzAwMH06cm9vdFtkYXJrXSAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheURlZmF1bHQ6aG92ZXIgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouMn06cm9vdFtkYXJrXSAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheURlZmF1bHQueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouM30ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2UgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5SW52ZXJzZTpob3ZlciAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtvcGFjaXR5Oi4yfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5SW52ZXJzZS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlUHJlc3NlZCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtvcGFjaXR5Oi4zfTpyb290W2RhcmtdIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5SW52ZXJzZSAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9OnJvb3RbZGFya10gLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlJbnZlcnNlOmhvdmVyIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjA1fTpyb290W2RhcmtdIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5SW52ZXJzZS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlUHJlc3NlZCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtvcGFjaXR5Oi4xfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlVG91Y2hMaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowO2hlaWdodDowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtmaWx0ZXI6Ymx1cigyNHB4KTtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsI2ZmZiAwLHJnYmEoMjU1LDI1NSwyNTUsLjYpIDM1JSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNzAlLHRyYW5zcGFyZW50IDEwMCUpO2JvcmRlci1yYWRpdXM6NTAlfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJMaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7ZmlsdGVyOmJsdXIoMzJweCk7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgMCxyZ2JhKDI1NSwyNTUsMjU1LC41KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDgwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO2JvcmRlci1yYWRpdXM6NTAlfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyTGlnaHR7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlLHdpZHRoIC4xNXMgY3ViaWMtYmV6aWVyKC4yNSwxLC41LDEpLGhlaWdodCAuMTVzIGN1YmljLWJlemllciguMjUsMSwuNSwxKX19Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3N0OmhvdmVyIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJMaWdodHtvcGFjaXR5Oi4yfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG9zdC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlUHJlc3NlZCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyTGlnaHR7b3BhY2l0eTouMzU7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDRzfS5hbmltYXRlZFJvbGxpbmdDaGFyYWN0ZXJIb3N0e2Rpc3BsYXk6aW5saW5lfS5hbmltYXRlZFJvbGxpbmdOdW1iZXJIb3N0e2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O292ZXJmbG93OmhpZGRlbn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW46MDt3aGl0ZS1zcGFjZTpub3dyYXA7bWluLXdpZHRoOjA7dGV4dC10cmFuc2Zvcm06bm9uZTtmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MThweDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtvdXRsaW5lLXdpZHRoOjA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JhY2tncm91bmQ6bm9uZTt0ZXh0LWRlY29yYXRpb246bm9uZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7LW1vei1ib3gtZmxleDoxO2ZsZXg6MTtmbGV4LWJhc2lzOjAuMDAwMDAwMDAxcHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dFNwZWNCdXR0b25TaGFwZU5leHRFbGV2YXRlZENvbnRlbnR7ei1pbmRleDoxO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb24sLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bGluZS1oZWlnaHQ6MDtmaWxsOmN1cnJlbnRDb2xvcn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbnstbW96LWJveC1mbGV4OjA7ZmxleDpub25lfS55dFNwZWNCdXR0b25TaGFwZU5leHRCdXR0b25UZXh0Q29udGVudHt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWlkZGxlZ3JvdW5kQXNzZXR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7d2lkdGg6cm91bmQodXAsMTAwJSwxcHgpO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbjtwb2ludGVyLWV2ZW50czpub25lfS55dFNwZWNCdXR0b25TaGFwZU5leHRGZWF0dXJlUGhvbmVXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYc3twYWRkaW5nOjAgOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgN3B4O2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLXN0eWxlOnNvbGlkfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgNnB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDhweDt3aWR0aDozMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25UcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0Oi0ycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MnB4O21hcmdpbi1sZWZ0Oi0ycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MnB4O21hcmdpbi1sZWZ0Oi0ycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhze2hlaWdodDoyNHB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9ue3dpZHRoOjI0cHg7cGFkZGluZzowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoxMnB4IDAgMCAxMnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnQ6YWZ0ZXJ7Y29udGVudDpcIlwiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjRweDtoZWlnaHQ6MTZweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDEycHggMTJweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZ05vVGV4dCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZUljb25TaXplIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCA4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDdweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgNnB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDhweDt3aWR0aDozMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjRweDttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplU3twYWRkaW5nOjAgMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMTFweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMTBweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMTJweDt3aWR0aDo0NHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjRweDttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplU3toZWlnaHQ6MzJweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbnt3aWR0aDozMnB4O3BhZGRpbmc6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVycmlkZVNtYWxsU2l6ZUljb24gLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoxNnB4IDAgMCAxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OlwiXCI7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6OHB4O2hlaWdodDoxNnB4O3dpZHRoOjFweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5ke2JvcmRlci1yYWRpdXM6MCAxNnB4IDE2cHggMH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZ05vVGV4dCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlSWNvblNpemU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVycmlkZVNtYWxsU2l6ZUljb24pIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue2hlaWdodDoxOHB4O3dpZHRoOjE4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmd7cGFkZGluZzowIDEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMTFweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke3BhZGRpbmc6MCAxMHB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5ke3BhZGRpbmc6MCAxMnB4O3dpZHRoOjQ0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDo0cHg7bWFyZ2luLWxlZnQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjRweDttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU17cGFkZGluZzowIDE2cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDE1cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDE0cHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDE2cHg7d2lkdGg6NTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6NnB4O21hcmdpbi1yaWdodDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xMHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTXtoZWlnaHQ6MzZweDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6MThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0gLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0gLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbnt3aWR0aDozNnB4O3BhZGRpbmc6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydHtib3JkZXItcmFkaXVzOjE4cHggMCAwIDE4cHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0OmFmdGVye2NvbnRlbnQ6XCJcIjtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDo2cHg7aGVpZ2h0OjI0cHg7d2lkdGg6MXB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDE4cHggMThweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nTm9UZXh0IC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VJY29uU2l6ZS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbiwueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlSWNvblNpemU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uKTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25Pbmx5RGVmYXVsdCkgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZ3twYWRkaW5nOjAgMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le3BhZGRpbmc6MCAxNXB4O2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLXN0eWxlOnNvbGlkfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDE0cHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTE2cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDE2cHg7d2lkdGg6NTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25UcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xMHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6NnB4O21hcmdpbi1yaWdodDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEwcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMe3BhZGRpbmc6MCAyNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le3BhZGRpbmc6MCAyM3B4O2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLXN0eWxlOnNvbGlkfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke3BhZGRpbmc6MCAyMnB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5ke3BhZGRpbmc6MCAyNHB4O3dpZHRoOjcycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25UcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDo4cHg7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTE2cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUx7aGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjE4cHg7bGluZS1oZWlnaHQ6NDhweDtib3JkZXItcmFkaXVzOjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMIC55dFNwZWNCdXR0b25TaGFwZU5leHRNaWRkbGVncm91bmRBc3NldHtib3JkZXItcmFkaXVzOjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b257d2lkdGg6NDhweDtwYWRkaW5nOjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0e2JvcmRlci1yYWRpdXM6MjRweCAwIDAgMjRweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnQ6YWZ0ZXJ7Y29udGVudDpcIlwiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjEycHg7aGVpZ2h0OjI0cHg7d2lkdGg6MXB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDI0cHggMjRweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nTm9UZXh0IC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCAyMHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDE5cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMThweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMjBweDt3aWR0aDo2OHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbnttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhse3BhZGRpbmc6MCAzMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMzFweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDMwcHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0zMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDMycHg7d2lkdGg6ODhweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhse2hlaWdodDo1NnB4O2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czoyOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MjhweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9ue3dpZHRoOjU2cHg7cGFkZGluZzowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0e2JvcmRlci1yYWRpdXM6MjhweCAwIDAgMjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0OmFmdGVye2NvbnRlbnQ6XCJcIjtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO3RvcDoxNnB4O2hlaWdodDoyNHB4O3dpZHRoOjFweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtib3JkZXItcmFkaXVzOjAgMjhweCAyOHB4IDB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nTm9UZXh0IC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZ3twYWRkaW5nOjAgMjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMjNweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMjJweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0yNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMjRweDt3aWR0aDo4MHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDo4cHg7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbnttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTE2cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE9uZU9mZkN1c3RvbVRleHRXcmFwQ29udGFpbmVye2hlaWdodDphdXRvO3BhZGRpbmctdG9wOjhweDtwYWRkaW5nLWJvdHRvbTo4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE9uZU9mZkN1c3RvbVRleHRXcmFwQ29udGFpbmVyIC55dFNwZWNCdXR0b25TaGFwZU5leHRCdXR0b25UZXh0Q29udGVudHtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE9uZU9mZkN1c3RvbVRleHRXcmFwQ29udGFpbmVyIC55dFNwZWNCdXR0b25TaGFwZU5leHRCdXR0b25UZXh0Q29udGVudHstd2Via2l0LWxpbmUtY2xhbXA6NDttYXgtaGVpZ2h0Om5vbmV9fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlVGV4dEVsbGlwc2lzIC55dFNwZWNCdXR0b25TaGFwZU5leHRCdXR0b25UZXh0Q29udGVudHt0ZXh0LW92ZXJmbG93OmNsaXB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25Pbmx5RGVmYXVsdHttaW4td2lkdGg6MDtib3JkZXItcmFkaXVzOjUwJTt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3BhZGRpbmc6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbk9ubHlEZWZhdWx0Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFdvcmthcm91bmRJY29uTm9Cb3JkZXJSYWRpdXN7Ym9yZGVyLXJhZGl1czp1bnNldH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzA1NTZiZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMwNjVmZDR9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzA1NTZiZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Y29sb3I6IzA2NWZkNH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjEpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGVmMWZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6IzA2NWZkNH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkYWRmZTY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkZWYxZmZ9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGFkZmU2O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwNjVmZDR9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHR7Y29sb3I6IzNlYTZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMyNjM4NTA7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbkludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzI2Mzg1MDtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMzZWE2ZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiM2NWI4ZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzNlYTZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzY1YjhmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6IzNlYTZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6IzNlYTZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiM2NWI4ZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMwMDA7Ym9yZGVyLWNvbG9yOiMzZWE2ZmZ9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojNjViOGZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzI3MjcyNztib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDMwMzAzfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMjcyNzI3O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjEpfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjEpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4wNSl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojMDMwMzAzfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2Q5ZDlkOTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkOWQ5ZDk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2JvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMil9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjIpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojZmZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6IzAwMH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZTZlNmU2O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNlNmU2ZTY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwwLjgpKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjIpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWwueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlQmFja2Ryb3BGaWx0ZXJFeHBlcmltZW50e2JhY2tkcm9wLWZpbHRlcjpibHVyKDRweCl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjojZmZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojMDAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNlNmU2ZTY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwwLjgpKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoNDAsNDAsNDAsMC42KTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoNDAsNDAsNDAsMC42KTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVCYWNrZHJvcEZpbHRlckV4cGVyaW1lbnR7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjMpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoNDAsNDAsNDAsMC42KTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMwMDA7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4zKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLCNlMTAwMmQgMzAlLCNlMDEzNzggODUlKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLCNlMTAwMmQgMzAlLCNlMDEzNzggODUlKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsI2UxMDAyZCAzMCUsI2UwMTM3OCA4NSUpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsI2UxMDAyZCAzMCUsI2UwMTM3OCA4NSUpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6IzAzMDMwM319QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtcbiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjN2YwZTdmIDAsI2FhMDlhYSAyMCUsI2ZmNGU0NSAxMDAlKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMwMDdhNjUgMCwjN2YwZTdmIDEwMCUpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjN2YwZTdmIDAsI2FhMDlhYSAyMCUsI2ZmNGU0NSAxMDAlKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMwMDdhNjUgMCwjN2YwZTdmIDEwMCUpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHJnYmEoMTI3LDE0LDEyNywwLjIpIDAscmdiYSgxNzAsOSwxNzAsMC4yKSAyMCUscmdiYSgyNTUsNzgsNjksMC4yKSAxMDAlKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSgwLDEyMiwxMDEsMC4yKSAwLHJnYmEoMTI3LDE0LDEyNywwLjIpIDEwMCUpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHJnYmEoMTI3LDE0LDEyNywwLjIpIDAscmdiYSgxNzAsOSwxNzAsMC4yKSAyMCUscmdiYSgyNTUsNzgsNjksMC4yKSAxMDAlKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSgwLDEyMiwxMDEsMC4yKSAwLHJnYmEoMTI3LDE0LDEyNywwLjIpIDEwMCUpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7XG4gICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojMDMwMzAzfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVkLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojOTA5MDkwfS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiM5MDkwOTB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojOTA5MDkwfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6IzkwOTA5MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7XG4gIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFJhaXNlZC55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2ZmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzowIDRweCAxNnB4IDAgcmdiYSgwLDAsMCwwLjEpLDAgMnB4IDhweCAwIHJnYmEoMCwwLDAsMC4xKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0UmFpc2VkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzI3MjcyNztib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0UmFpc2VkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2Upe1xuICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZmZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0UmFpc2VkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXtcbiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzI3MjcyNztib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbHttYXJnaW46NHB4IC04cHggMDtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbElzT3ZlcmxheSAueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbHttYXgtd2lkdGg6NjRweDtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dEJhZGdlVmlld01vZGVsSG9zdHtkaXNwbGF5OmlubGluZS1ibG9ja30ueXRCck56QmFkZ2VTaGFwZUhvc3R7ZGlzcGxheTpibG9ja30ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlTnpSYXRpbmdSZWRTcXVhcmV7YmFja2dyb3VuZDojZjAzOTM2O2hlaWdodDoyLjJyZW07d2lkdGg6Mi4ycmVtO2JvcmRlci1yYWRpdXM6MDtjb2xvcjpibGFjazt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ1llbGxvd0NpcmNsZXtiYWNrZ3JvdW5kOiNmZmVmMDA7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Ym9yZGVyLXJhZGl1czo1MCU7Y29sb3I6YmxhY2s7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlTnpSYXRpbmdHcmVlbkNpcmNsZXtiYWNrZ3JvdW5kOiM0MmM3NTg7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Ym9yZGVyLXJhZGl1czo1MCU7Y29sb3I6YmxhY2s7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbEdyZWVuU3F1YXJle2JhY2tncm91bmQ6cmdiKDAsMTY2LDgxKTtoZWlnaHQ6MS44cmVtO3dpZHRoOjEuOHJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxCbHVlU3F1YXJle2JhY2tncm91bmQ6cmdiKDAsMTQ5LDIxOCk7aGVpZ2h0OjEuOHJlbTt3aWR0aDoxLjhyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ0xhcmdlQmx1ZVNxdWFyZXtiYWNrZ3JvdW5kOnJnYigwLDE0OSwyMTgpO2hlaWdodDoyLjJyZW07d2lkdGg6Mi4ycmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbFllbGxvd1NxdWFyZXtiYWNrZ3JvdW5kOnJnYigyNTEsMTkzLDIxKTtoZWlnaHQ6MS44cmVtO3dpZHRoOjEuOHJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VZZWxsb3dTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMjUxLDE5MywyMSk7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsT3JhbmdlU3F1YXJle2JhY2tncm91bmQ6cmdiKDI0NSwxMzAsMzIpO2hlaWdodDoxLjhyZW07d2lkdGg6MS44cmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZU9yYW5nZVNxdWFyZXtiYWNrZ3JvdW5kOnJnYigyNDUsMTMwLDMyKTtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxSZWRTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMjM2LDI5LDM3KTtoZWlnaHQ6MS44cmVtO3dpZHRoOjEuOHJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VSZWRTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMjM2LDI5LDM3KTtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxCbGFja1NxdWFyZXtiYWNrZ3JvdW5kOnJnYigwLDAsMCk7aGVpZ2h0OjEuOHJlbTt3aWR0aDoxLjhyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ0xhcmdlQmxhY2tTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMCwwLDApO2hlaWdodDoyLjJyZW07d2lkdGg6Mi4ycmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxCYWRnZVdpdGhMYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jazstbW96LW1hcmdpbi1lbmQ6OHB4O21hcmdpbi1pbmxpbmUtZW5kOjhweH0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQmFkZ2VzOm5vdCg6bGFzdC1jaGlsZCl7LW1vei1tYXJnaW4tZW5kOjhweDttYXJnaW4taW5saW5lLWVuZDo4cHh9Lnl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbFRyYWlsaW5nQWN0aW9uc0NvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxUcmFpbGluZ0FjdGlvbnNDb250YWluZXI+Om5vdCg6bGFzdC1jaGlsZCl7LW1vei1tYXJnaW4tZW5kOjhweDttYXJnaW4taW5saW5lLWVuZDo4cHh9Lnl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbENoZXZyb25zQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbENoZXZyb246bm90KDpsYXN0LWNoaWxkKXstbW96LW1hcmdpbi1lbmQ6OHB4O21hcmdpbi1pbmxpbmUtZW5kOjhweH0ueXRSYWRpb0J1dHRvbkdyb3VwVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFJhZGlvQnV0dG9uR3JvdXBWaWV3TW9kZWxGaWVsZHNldHtib3JkZXI6bm9uZTtwYWRkaW5nOjA7bWFyZ2luOjB9Lnl0UmFkaW9CdXR0b25Hcm91cFZpZXdNb2RlbEVycm9ye2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6I2MzMDAyN30ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbEhvc3R7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9ja30ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbENvbnRhaW5lcntwYWRkaW5nLWJvdHRvbToyMHB4fS55dFNlbGVjdGFibGVJdGVtVmlld01vZGVsTmF0aXZlQ29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNlbGVjdGFibGVJdGVtVmlld01vZGVsTmF0aXZlUmFkaW9CdXR0b257aGVpZ2h0OjA7bGVmdDowO21hcmdpbjowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjB9Lnl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxOYXRpdmVMYWJlbHtjdXJzb3I6cG9pbnRlcn0ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbERpc2FibGVke2N1cnNvcjpkZWZhdWx0fS55dENhcmRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRDYXJkVmlld01vZGVsT3V0bGluZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0Q2FyZFZpZXdNb2RlbFJhaXNlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDAgMTBweCByZ2JhKDAsMCwwLDAuMjUpO291dGxpbmUtc3R5bGU6c29saWQ7b3V0bGluZS1jb2xvcjp0cmFuc3BhcmVudDt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjE4cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvdXRsaW5lLWNvbG9yIC4xOHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3V0bGluZS13aWR0aCAuMThzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dENhcmRWaWV3TW9kZWxDYXJkU2VsZWN0ZWR7Ym94LXNoYWRvdzowIDJweCA4cHggMCByZ2JhKDAsMCwwLDAuMjUpO291dGxpbmU6IzAzMDMwMyBzb2xpZCAycHg7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4xOHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3V0bGluZS1jb2xvciAuMThzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG91dGxpbmUtd2lkdGggLjE4cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRDYXJkVmlld01vZGVsVG9uYWx7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dENhcmRWaWV3TW9kZWxJbnZlcnRlZHtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGZ9Lnl0Q2FyZFZpZXdNb2RlbENvbnRlbnRXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9Lnl0Q2FyZFZpZXdNb2RlbFRvcENvbnRlbnRDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7d2lkdGg6MTAwJX0ueXRDYXJkVmlld01vZGVsVG9wQ29udGVudHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9Lnl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9ue2FsaWduLXNlbGY6ZmxleC1zdGFydH0ueXRDYXJkVmlld01vZGVsSW5saW5lQ2VudGVyVHJhaWxpbmdBY3Rpb257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9uTWFyZ2lue21hcmdpbjo2cHh9Lnl0Q2FyZFZpZXdNb2RlbE92ZXJsYXlUcmFpbGluZ0FjdGlvbntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMnB4O3RvcDoxMnB4fS55dENhcmRWaWV3TW9kZWxDYXJkVmlld01vZGVsSW5uZXJ7Ym9yZGVyLXJhZGl1czoxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dENhcmRWaWV3TW9kZWxTZWxlY3RlZHtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCAjMDMwMzAzfS55dENhcmRWaWV3TW9kZWxCb3R0b21Db250ZW50UGFkZGluZywueXRDYXJkVmlld01vZGVsVG9wQ29udGVudFBhZGRpbmd7cGFkZGluZzoxMnB4fS55dENhcmRWaWV3TW9kZWxDbGlja2FibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0Q2FyZFZpZXdNb2RlbERpc2FibGVkT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtpbnNldDowO3Bvc2l0aW9uOmFic29sdXRlfS55dENhcmRWaWV3TW9kZWxCYWNrZ3JvdW5kV3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH0ueXRDYXJkVmlld01vZGVsQmFja2dyb3VuZHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29iamVjdC1maXQ6ZmlsbH0ueXRDaGVja2JveEdyb3VwVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dENoZWNrYm94R3JvdXBWaWV3TW9kZWxGaWVsZHNldHtib3JkZXI6bm9uZTtwYWRkaW5nOjA7bWFyZ2luOjB9Lnl0Q2hlY2tib3hJdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBhbmVsRm9vdGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO3BhZGRpbmc6MTJweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEhpZGVEaXZpZGVye2JvcmRlci10b3A6bm9uZX0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbERpc2FibGVQYWRkaW5ne3BhZGRpbmc6MTJweCAwIDB9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxEaXNhYmxlUGFkZGluZy55dFBhbmVsRm9vdGVyVmlld01vZGVsSGlkZURpdmlkZXJ7cGFkZGluZy10b3A6MH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFJvd0JvdHRvbVBhZGRpbmd7cGFkZGluZy1ib3R0b206MTJweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFRleHRQYWRkaW5ne3BhZGRpbmctcmlnaHQ6MjRweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFRleHRSb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25TdGFja3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25TdGFja1RvcEJ1dHRvbnttYXJnaW46MCAwIDhweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd1RyYWlsaW5ney1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0xlZnRCdXR0b257bWFyZ2luLXJpZ2h0OjhweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0Z1bGxXaWR0aHt3aWR0aDoxMDAlfS55dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93RXhwYW5key1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dTaHJpbmt7LW1vei1ib3gtZmxleDowO2ZsZXg6MH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0hpZGRlbntkaXNwbGF5Om5vbmV9Lnl0U3BlY0ljb25TaGFwZUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0U3Bpbm5lclNoYXBlV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNwaW5uZXJTaGFwZVNwaW5uZXJ7ZGlzcGxheTpibG9jazstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjEycHggYXV0bzt3aWR0aDozMnB4O2hlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoycHggc29saWQgI2VlZTtib3JkZXItdG9wLWNvbG9yOiM2NjY7YW5pbWF0aW9uOnNwaW5uZXIgLjhzIGxpbmVhciBpbmZpbml0ZX0ueXRTcGlubmVyU2hhcGVTcGlubmVyOm5vdChbaGlkZGVuXSl7Y29sb3I6IzMzMztmb250LXNpemU6MS42cmVtfUBrZXlmcmFtZXMgc3Bpbm5lcnswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0ueXRMb3R0aWVDb21wb25lbnRIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0TG90dGllQ29tcG9uZW50SG9zdCBzdmd7ZGlzcGxheTpibG9ja30ueXRBbmltYXRlZEljb25Ib3N0e2Rpc3BsYXk6YmxvY2t9Lnl0QW5pbWF0ZWRJY29uSG9zdCAuYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3QgLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweDttYXJnaW46MH0ueXRBbmltYXRlZEljb25Ib3N0IC5hbmltYXRlZC1saWtlLWljb24gLmFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0IC5hbmltYXRlZC1saWtlLWljb24gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdCAuY3VzdG9tLWFuaW1hdGVkLWxpa2UtaWNvbiAuYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3QgLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb24gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb257cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LC0xMnB4KTtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS55dEFuaW1hdGVkSWNvbkhvc3QgLmFuaW1hdGVkLXN1YnNjcmliZS1pY29ue3RyYW5zZm9ybTp0cmFuc2xhdGUoLTEycHgsLTEycHgpO2hlaWdodDo0OHB4O3dpZHRoOjQ4cHh9Lnl0QW5pbWF0ZWRJY29uSG9zdFtkYXRhLXNpemU9XCIxOFwiXSAuYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPVwiMThcIl0gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRBbmltYXRlZEljb25Ib3N0W2RhdGEtc2l6ZT1cIjE4XCJdIC5hbmltYXRlZC1saWtlLWljb24gLmFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0W2RhdGEtc2l6ZT1cIjE4XCJdIC5hbmltYXRlZC1saWtlLWljb24gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdFtkYXRhLXNpemU9XCIxOFwiXSAuY3VzdG9tLWFuaW1hdGVkLWxpa2UtaWNvbiAuYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPVwiMThcIl0gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb24gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb257dHJhbnNmb3JtOnRyYW5zbGF0ZSgtOXB4LC05cHgpO2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0QW5pbWF0ZWRJY29uSG9zdFtkYXRhLXNpemU9XCIxOFwiXSAuYW5pbWF0ZWQtc3Vic2NyaWJlLWljb257dHJhbnNmb3JtOnRyYW5zbGF0ZSgtOXB4LC05cHgpO2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0SG9yaXpvbnRhbFNsaWRlclZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRTbGlkZXJTaGFwZUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbjoxNnB4IDEycHh9Lnl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOm5vbmU7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246cmVsYXRpdmV9Lnl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9uSWNvbldyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dFNsaWRlclNoYXBlSG9zdEluY3JlbWVudEJ1dHRvbkljb257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiMwMzAzMDM7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ueXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b246ZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHQ7Y29sb3I6IzkwOTA5MH0ueXRTbGlkZXJTaGFwZUhvc3RTbGlkZXJ7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMzstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7bWFyZ2luOjAgMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O291dGxpbmU6bm9uZTtwYWRkaW5nLWJvdHRvbTowOy0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoyNHB4fS55dFNsaWRlclNoYXBlSG9zdFNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIzAzMDMwMyAwLCMwMzAzMDMgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgMTAwJSk7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U2xpZGVyU2hhcGVIb3N0U2xpZGVyOjotbW96LXJhbmdlLXRyYWNre2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCMwMzAzMDMgMCwjMDMwMzAzIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjOTA5MDkwIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjOTA5MDkwIDEwMCUpO2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dFNsaWRlclNoYXBlSG9zdFNsaWRlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6IzAzMDMwMzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4O21hcmdpbi10b3A6LTZweH0ueXRTbGlkZXJTaGFwZUhvc3RTbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZDojMDMwMzAzO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U2xpZGVyU2hhcGVIb3N0U2xpZGVyOjotbXMtdGh1bWJ7YmFja2dyb3VuZDojMDMwMzAzO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U2xpZGVyU2hhcGVWZXJ0aWNhbHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzttYXJnaW46MDt3cml0aW5nLW1vZGU6dmVydGljYWwtcmw7ZGlyZWN0aW9uOnJ0bH0ueXRTbGlkZXJTaGFwZVZlcnRpY2FsU2xpZGVyey1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjA7Zm9udDppbmhlcml0O2NvbG9yOiMwMzAzMDM7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO21hcmdpbjowIDEycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtvdXRsaW5lOm5vbmU7cGFkZGluZy1ib3R0b206MDstLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50OjA7aGVpZ2h0OjEwMCU7d2lkdGg6MjRweH0ueXRTbGlkZXJTaGFwZVZlcnRpY2FsU2xpZGVyOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byB0b3AsIzAzMDMwMyAwLCMwMzAzMDMgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgMTAwJSk7d2lkdGg6NHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRTbGlkZXJTaGFwZVZlcnRpY2FsU2xpZGVyOjotbW96LXJhbmdlLXRyYWNre2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHRvcCwjMDMwMzAzIDAsIzAzMDMwMyB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKTt3aWR0aDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1ie2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kOiMwMzAzMDM7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweDttYXJnaW4tcmlnaHQ6LTZweH0ueXRTbGlkZXJTaGFwZVZlcnRpY2FsU2xpZGVyOjotbW96LXJhbmdlLXRodW1ie2JhY2tncm91bmQ6IzAzMDMwMzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi1tcy10aHVtYntiYWNrZ3JvdW5kOiMwMzAzMDM7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweH1AbWVkaWEgKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTbGlkZXJTaGFwZUhvc3RTbGlkZXJ7LW1vei1hcHBlYXJhbmNlOmF1dG87YXBwZWFyYW5jZTphdXRvOy13ZWJraXQtYXBwZWFyYW5jZTphdXRvfX0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzoxMHB4IDE2cHg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7bWluLWhlaWdodDo0OHB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxIb3N0SGlkZURpdmlkZXJ7Ym9yZGVyLWJvdHRvbTpub25lfS55dFBhbmVsSGVhZGVyVmlld01vZGVsSG9zdENvbXBhY3R7cGFkZGluZzo4cHggMTJweH0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxlV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUaXRsZUhlYWRlcnttYXJnaW46MH0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxlSGVhZGVyTm9uSW50ZXJhY3RpdmV7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxle2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjIuNnJlbX0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFN1YnRpdGxle21hcmdpbi10b3A6MnB4O2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjEuOHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRQYW5lbEhlYWRlclZpZXdNb2RlbFN1YnRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxTdWJ0aXRsZXttYXgtaGVpZ2h0OjEuOHJlbX0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRyYWlsaW5nQnV0dG9uc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6bm93cmFwO21hcmdpbi1sZWZ0OjEycHh9Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxCdXR0b246bm90KDpsYXN0LWNoaWxkKXtwYWRkaW5nLXJpZ2h0OjI0cHh9Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxCdXR0b25PckFuY2hvcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtvdXRsaW5lOm5vbmV9Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxCdXR0b25PckFuY2hvckZvY3VzZWR7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yfS55dFNoZWV0Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0U2hlZXRWaWV3TW9kZWxDb250ZXh0dWFse2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7Ym9yZGVyLXJhZGl1czoxMnB4O2JveC1zaGFkb3c6MCA0cHggMzJweCAwIHJnYmEoMCwwLDAsMC4xKTtvdmVyZmxvdzpoaWRkZW59Lnl0U2hlZXRWaWV3TW9kZWxQYWRkZWRDb250ZW50e3BhZGRpbmc6MTZweCAwfS55dFNoZWV0Vmlld01vZGVsRGlzYWJsZUJhY2tkcm9wRmlsdGVye2JhY2tkcm9wLWZpbHRlcjpub25lfS55dFNwZWNCb3R0b21TaGVldExheW91dEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWluLWhlaWdodDowfS55dFNwZWNCb3R0b21TaGVldExheW91dENvbnRhaW5lcntib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmZpeGVkO21hcmdpbjowIDhweCAyNHB4O2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTAwfUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoxMy85KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSkgYW5kIChtaW4td2lkdGg6NDE2cHgpLChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSBhbmQgKG1pbi13aWR0aDo0MTZweCl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Q29udGFpbmVye3dpZHRoOjQwMHB4O21hcmdpbjowIGF1dG8gMjRweCBhdXRvfX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXJXcmFwcGVye292ZXJmbG93OmhpZGRlbjstbW96LWJveC1mbGV4OjA7ZmxleDpub25lO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNmZmY7Y3Vyc29yOi1tb3otZ3JhYjtjdXJzb3I6Z3JhYn0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXJXcmFwcGVySXNEcmFnZ2luZ3tjdXJzb3I6LW1vei1ncmFiYmluZztjdXJzb3I6Z3JhYmJpbmd9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlckJvdHRvbUJvcmRlcntib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0RHJhZ0xpbmV7YmFja2dyb3VuZDojMDMwMzAzO29wYWNpdHk6LjE1O2JvcmRlci1yYWRpdXM6NHB4O2hlaWdodDo0cHg7bWFyZ2luOjAgYXV0bzt3aWR0aDo0MHB4O21hcmdpbi10b3A6OHB4fS55dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcnstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWFyZ2luLXRvcDo4cHh9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV2l0aFRpdGxle21hcmdpbi1ib3R0b206N3B4fS55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxlV3JhcHBlcnstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWFyZ2luLWxlZnQ6MTJweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiMwMzAzMDM7bWF4LWhlaWdodDoyMHB4O21hcmdpbjowfS55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxle2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6IzYwNjA2MDttYXJnaW4tYm90dG9tOjA7bWFyZ2luLXRvcDo0cHg7bWF4LWhlaWdodDoxNnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dE1vZGVybiAueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuOHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4gLnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4gLnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4gLnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX19Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxle21heC1oZWlnaHQ6Mi44cmVtfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dFNwZWNCb3R0b21TaGVldExheW91dE1vZGVybiAueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZXttYXgtaGVpZ2h0OjIuNnJlbX19Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxle2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxle21heC1oZWlnaHQ6MS44cmVtfS55dFNwZWNCb3R0b21TaGVldExheW91dEFjdGlvbkhlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiMwMzAzMDM7bWFyZ2luOjAgMTJweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRDb250ZW50V3JhcHBlcnstbW96LWJveC1mbGV4OjE7ZmxleDoxOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO292ZXJmbG93LXk6c2Nyb2xsfS55dFNwZWNCb3R0b21TaGVldExheW91dEJvdHRvbVNoZWV0Q29udGVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Y29sb3I6IzAzMDMwM30ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJXcmFwcGVye2Rpc3BsYXk6YmxvY2s7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZTtwb3NpdGlvbjpzdGlja3k7Ym90dG9tOjB9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Rm9vdGVyQnV0dG9uV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW46MTJweCAwfS55dFNwZWNCb3R0b21TaGVldExheW91dEZvb3RlckJ1dHRvbldyYXBwZXJMYW5kc2NhcGVCdXR0b25XcmFwcGVye21hcmdpbjo2cHggMH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDoxMnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dFNlY29uZGFyeUJ1dHRvblRyYWlsaW5nUGFpcnstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U2Vjb25kYXJ5QnV0dG9uU3BsaXRQYWlyey1tb3otYm94LWZsZXg6MTtmbGV4OjE7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b25QcmltYXJ5U3BsaXRQYWlyey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0UHJpbWFyeUJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dFNwZWNCb3R0b21TaGVldExheW91dFByaW1hcnlCdXR0b25EZWZhdWx0e21hcmdpbjowIDEycHg7d2lkdGg6MTAwJX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uVHJhaWxpbmdQYWlyey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW4tcmlnaHQ6MTJweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uUHJpbWFyeVNwbGl0UGFpciwueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uU3BsaXRQYWlyey1tb3otYm94LWZsZXg6MTtmbGV4OjE7bWFyZ2luLXJpZ2h0OjEycHg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJMYWJlbFdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21hcmdpbjowIDEycHg7aGVpZ2h0OjMwcHh9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Rm9vdGVyTGFiZWxXcmFwcGVyV2l0aG91dEJ1dHRvbnN7bWFyZ2luLWJvdHRvbToxMnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dExlYWRpbmdMYWJlbCwueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUcmFpbGluZ0xhYmVse21hcmdpbi10b3A6MTJweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRleHR1YWxTaGVldExheW91dEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQtY29sb3I6I2ZmZjtoZWlnaHQ6MTAwJTttaW4td2lkdGg6MTI4cHg7bWF4LXdpZHRoOjQwMHB4O3dpZHRoOjEwMCU7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gNDhweCk7bWluLWhlaWdodDowfS55dENvbnRleHR1YWxTaGVldExheW91dEhvc3RPbGRNaW5XaWR0aHttaW4td2lkdGg6MjU2cHh9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0QWRkUGFkZGluZ3twYWRkaW5nLWJvdHRvbTo4cHh9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0SGVhZGVyQ29udGFpbmVyey1tb3otYm94LWZsZXg6MDtmbGV4OjB9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Q29udGVudENvbnRhaW5lcnstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7b3ZlcmZsb3cteTphdXRvO3Njcm9sbGJhci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtzY3JvbGxiYXItd2lkdGg6dGhpbn0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRDb250ZW50Q29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3dpZHRoOjE2cHh9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Q29udGVudENvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7aGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjRweCBzb2xpZCB0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6Y29udGVudC1ib3g7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRDb250ZW50Q29udGFpbmVyOmhvdmVye3Njcm9sbGJhci1jb2xvcjojOTA5MDkwIHRyYW5zcGFyZW50fS55dENvbnRleHR1YWxTaGVldExheW91dENvbnRlbnRDb250YWluZXI6aG92ZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQtY29sb3I6IzkwOTA5MH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRGb290ZXJDb250YWluZXJ7LW1vei1ib3gtZmxleDowO2ZsZXg6MH0ueXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MTJweH0ueXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxTcGVlZEluZGljYXRvckNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luOmF1dG99Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsUGxheWJhY2tTcGVlZERpc3BsYXl7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6Mi44cmVtO2xpbmUtaGVpZ2h0OjMuOHJlbTtmb250LXdlaWdodDo5MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsUGxheWJhY2tTcGVlZERpc3BsYXl7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjkwMH19Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsUHJlbWl1bUJhZGdle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEwMCU7bWFyZ2luLXJpZ2h0OjhweH0ueXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxTbGlkZXJDb250YWluZXJ7bWFyZ2luOjhweCAwfS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFBsYXliYWNrU3BlZWRCdXR0b257bWFyZ2luOjAgNHB4fS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWxTcGVlZExhYmVse21hcmdpbi10b3A6NHB4O2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6IzAzMDMwM30ueXRXZWJTY3JpbUhvc3R7cG9zaXRpb246Zml4ZWQ7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDoxO2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjgpfS55dFdlYlNjcmltSG9zdFJlbGF0aXZle3Bvc2l0aW9uOmFic29sdXRlfS55dFdlYlNjcmltSG9zdE1vZGVybk92ZXJsYXl7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyl9Lnl0V2ViU2NyaW1Ib3N0Qm90dG9tU2hlZXR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNil9Lnl0V2ViU2NyaW1Ib3N0RW5nYWdlbWVudFBhbmVse3otaW5kZXg6MDstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTt0b3A6MTAwdnd9Lnl0V2ViU2NyaW1Ib3N0RHJhZ2dhYmxlRW5nYWdlbWVudFBhbmVse3otaW5kZXg6Mzt0b3A6MH0ueXRXZWJTY3JpbUhvc3REcmF3ZXJMYXlvdXR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCl9Lnl0V2ViU2NyaW1EaWFsb2dDb250YWluZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDo0fS55dFdlYlNjcmltSGlkZGVuQnV0dG9ue3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4O3BhZGRpbmc6MDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7Zm9udDppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fWJvdHRvbS1zaGVldC1jb250YWluZXJ7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDo1fWJvdHRvbS1zaGVldC1jb250YWluZXIgLmNsb3NlLWJ1dHRvbntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH1jMy1vdmVybGF5LmJvdHRvbS1zaGVldC1vdmVybGF5e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfVtib3R0b20tc2hlZXQtb3Blbl17b3ZlcmZsb3c6aGlkZGVufVttb2RhbC1vcGVuLWJvZHlde3Bvc2l0aW9uOmZpeGVkO2xlZnQ6MDtyaWdodDowfS5iMy1pZnJhbWUtYW5jZXN0b3JbbW9kYWwtb3Blbi1ib2R5XXtwb3NpdGlvbjphYnNvbHV0ZX0ubW9kYWwtaGlkZGVuLWJ1dHRvbntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH0uYnV0dG9uLXdpdGgtaWNvbntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTttaW4td2lkdGg6NS4xNGVtO21hcmdpbjowIC4yOWVtO2ZvbnQtc2l6ZToxLjRyZW07Ym9yZGVyLXJhZGl1czozcHh9LmJ1dHRvbi13aXRoLWljb24tYnV0dG9ue3BhZGRpbmc6LjdlbSAuNTdlbX0uYnV0dG9uLXdpdGgtaWNvbi5jb21wYWN0e21hcmdpbjotLjdlbSAtLjU3ZW19LmJ1dHRvbi13aXRoLWljb24uY29tcGFjdCsuYnV0dG9uLXdpdGgtaWNvbi5jb21wYWN0e21hcmdpbi1sZWZ0Oi43ZW19LmJ1dHRvbi13aXRoLWljb24taW5uZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uYnV0dG9uLXdpdGgtaWNvbi1idXR0b25bZGlzYWJsZWRdLC5idXR0b24td2l0aC1pY29uLmRpc2FibGVkIC5idXR0b24td2l0aC1pY29uLWJ1dHRvbntjb2xvcjojOTA5MDkwfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9CUkFORF17Y29sb3I6I2UxMDAyZH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfUFJJTUFSWV06bm90KFtkaXNhYmxlZD10cnVlXSl7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwNjVmZDR9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX1BSSU1BUlldW2Rpc2FibGVkPXRydWVde2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX1RFWFRde2NvbG9yOiM2MDYwNjB9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX1RFWFRdIC5sb2dvLWFycm93e2ZpbGw6I2ZmZn0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfQkxVRV9URVhUXXtjb2xvcjojMDY1ZmQ0fS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9CTFVFX1RFWFRfV0lUSF9JTlZFUlNFX1RIRU1FXXtjb2xvcjojM2VhNmZmfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9ERVNUUlVDVElWRV17YmFja2dyb3VuZC1jb2xvcjojZTEwMDJkO2JvcmRlci1jb2xvcjojZTEwMDJkO2NvbG9yOiNmZmZ9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX1NVR0dFU1RJVkVde2JvcmRlcjoxcHggc29saWQgIzA2NWZkNDtjb2xvcjojMDY1ZmQ0fS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9PVkVSTEFZXXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zKTtjb2xvcjojZmZmfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9EQVJLXXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX0lOQUNUSVZFX09VVExJTkVde2NvbG9yOiM2MDYwNjA7Ym9yZGVyOjFweCBzb2xpZCAjNjA2MDYwO3BhZGRpbmc6NXB4IDExcHh9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLWljb24tb25seT10cnVlXXttaW4td2lkdGg6MDttYXJnaW46MH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtaWNvbi1vbmx5PWZhbHNlXSAuYnV0dG9uLXJlbmRlcmVyLWljb257bWFyZ2luOjAgOHB4fS5idXR0b24tcmVuZGVyZXItdGV4dHthbGlnbi1zZWxmOmNlbnRlcjttaW4taGVpZ2h0OjFlbTtsaW5lLWhlaWdodDoxZW07Zm9udC13ZWlnaHQ6NTAwfVtpcy1idXN5PXRydWVdIC5idXR0b24tcmVuZGVyZXItaWNvbixbaXMtYnVzeT10cnVlXSAuYnV0dG9uLXJlbmRlcmVyLXRleHR7dmlzaWJpbGl0eTpoaWRkZW59LmJ1dHRvbi13aXRoLWljb24tc3Bpbm5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDttYXJnaW46YXV0b30uYnV0dG9uLXJlbmRlcmVyLXdpdGgtYW5pbWF0aW9uIC5idXR0b24td2l0aC1pY29uLWJ1dHRvbntvdmVyZmxvdzp2aXNpYmxlfWMzLWljb257ZGlzcGxheTotbW96LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDtmbGV4LXNocmluazowO3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7ZmlsbDpjdXJyZW50Q29sb3I7c3Ryb2tlOm5vbmV9W2Rpcj1ydGxdIGMzLWljb25bZmxpcC1mb3ItcnRsPXRydWVde3RyYW5zZm9ybTpzY2FsZVgoLTEpfS5pY29uLWJ1dHRvbntib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7cGFkZGluZzo4cHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fWMzLWljb24gc3Zne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9YzMtaWNvbi5pY29uLXN0YXRlLW91dGxpbmVbaWNvbi1zdGF0ZS1maWxsZWRde2Rpc3BsYXk6bm9uZX1jMy1pY29uLmljb24tc3RhdGUtZmlsbGVkW2ljb24tc3RhdGUtb3V0bGluZV17ZGlzcGxheTpub25lfS5waXZvdC1iYXItaXRlbS10YWIgYzMtaWNvbltpY29uLXN0YXRlLWZpbGxlZF17ZGlzcGxheTpub25lfS5waXZvdC1iYXItaXRlbS10YWIgYzMtaWNvbltpY29uLXN0YXRlLW91dGxpbmVde2Rpc3BsYXk6YmxvY2t9LnBpdm90LWJhci1pdGVtLXRhYlthcmlhLXNlbGVjdGVkPXRydWVdIGMzLWljb25baWNvbi1zdGF0ZS1maWxsZWRde2Rpc3BsYXk6YmxvY2t9LnBpdm90LWJhci1pdGVtLXRhYlthcmlhLXNlbGVjdGVkPXRydWVdIGMzLWljb25baWNvbi1zdGF0ZS1vdXRsaW5lXXtkaXNwbGF5Om5vbmV9I21lbnUsLm1lbnUtY29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt6LWluZGV4OjR9Lm1lbnUtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7bWF4LWhlaWdodDoxMDAlO292ZXJmbG93LXk6YXV0bztjb2xvcjojMDMwMzAzO2JhY2tncm91bmQtY29sb3I6I2ZmZjtwYWRkaW5nOjNweH0ubWVudS1jb250ZW50Lm1lbnUtYm90dG9te2JvdHRvbTowO2NvbG9yOiMwMzAzMDM7cGFkZGluZzowO3Bvc2l0aW9uOmZpeGVkO21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCV9LmJvdHRvbS1tZW51LWNhbmNlbHtib3JkZXItdG9wOjFweCBzb2xpZCAjZjFmMWYxO3BhZGRpbmc6OHB4IDB9Lm1lbnUtY29udGVudD5he2Rpc3BsYXk6YmxvY2t9Lm1lbnUtY2FuY2VsLWJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5tZW51LWNhbmNlbC1pY29ue21hcmdpbjowIDhweH0ubWVudS1jb250ZW50Lm1lbnUtYm90dG9tIGMzLWljb257Y29sb3I6IzAzMDMwMzttYXJnaW46MCAzMnB4IDAgMH0ubWVudS1jb250ZW50Om5vdCgubWVudS1zaG93LWljb25zKSAubWVudS1pdGVtLWJ1dHRvbiBjMy1pY29ue2Rpc3BsYXk6bm9uZX1AbWVkaWEgKG1pbi13aWR0aDozMzBweCl7Lm1lbnUtY29udGVudDpub3QoLm1lbnUtYm90dG9tKXttaW4td2lkdGg6MjUwcHg7bWF4LXdpZHRoOjM1NnB4O21hcmdpbjo0MHB4fX0ubWVudS1mdWxsLXdpZHRoIC5tZW51LWNvbnRlbnR7YmFja2dyb3VuZC1jb2xvcjojZmZmO21pbi13aWR0aDoxMDAlO21pbi1oZWlnaHQ6MTAwJTttYXJnaW46MDtwYWRkaW5nOjA7aGVpZ2h0OjFweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lm1lbnUtY29udGVudC5yb3VuZGVkLWNvbnRhaW5lcntib3JkZXItcmFkaXVzOjhweH0uaWNvbi1idXR0b24uc21hbGx7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowO3dpZHRoOjE2cHh9eXRtLW1lbnUtaXRlbXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6M3B4IDB9eXRtLW1lbnUtaXRlbSAubWVudS1pdGVtLWJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDttaW4taGVpZ2h0OjQ4cHg7cGFkZGluZzo4cHggMTZweDttYXJnaW4tbGVmdDowO3dpZHRoOjEwMCU7Y3Vyc29yOnBvaW50ZXI7dGV4dC1hbGlnbjppbml0aWFsO3RleHQtdHJhbnNmb3JtOnVuc2V0Oy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9eXRtLW1lbnUtaXRlbSAubWVudS1pdGVtLWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSl9eXRtLW1lbnUtaXRlbSBjMy1pY29ue21hcmdpbi1yaWdodDoyNHB4fS5tZW51LWJvdHRvbSAubWVudS1pdGVtLWJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZvbnQtc2l6ZToxLjZyZW07cGFkZGluZzoxMXB4IDE2cHh9Lnl0d1BsYXllckJvdHRvbUNvbnRyb2xzSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJCb3R0b21Db250cm9sc0Z1bGxzY3JlZW5CdXR0b25XcmFwcGVyey1tb3otbWFyZ2luLXN0YXJ0OmF1dG87bWFyZ2luLWlubGluZS1zdGFydDphdXRvfS55dEJhZGdlU2hhcGVIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czoycHg7cGFkZGluZzowIDRweH0ueXRCYWRnZVNoYXBlVHlwb2dyYXBoeXtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dEJhZGdlU2hhcGVJY29ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXJpZ2h0OjJweDtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dEJhZGdlU2hhcGVNb2Rlcm4gLnl0QmFkZ2VTaGFwZUljb257bWFyZ2luLXJpZ2h0OjJweDtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS55dEJhZGdlU2hhcGVOb1RleHR7cGFkZGluZzowIDFweDttaW4taGVpZ2h0OjE4cHh9Lnl0QmFkZ2VTaGFwZU5vVGV4dCAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsQmFkZ2V7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzoxcHggNHB4fS55dEJhZGdlU2hhcGVUaHVtYm5haWxCYWRnZSAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6NHB4O2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbEJhZGdlLnl0QmFkZ2VTaGFwZU5vVGV4dCAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsQmFkZ2VSZWRlc2lnbntiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjAgNnB4fS55dEJhZGdlU2hhcGVTdGF0dXNCYWRnZXtib3JkZXItcmFkaXVzOjRweDtwYWRkaW5nOjFweCA0cHh9Lnl0QmFkZ2VTaGFwZVN0YXR1c0JhZGdlIC55dEJhZGdlU2hhcGVJY29ue21hcmdpbi1yaWdodDo0cHg7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH0ueXRCYWRnZVNoYXBlU3RhdHVzQmFkZ2UueXRCYWRnZVNoYXBlTm9UZXh0IC55dEJhZGdlU2hhcGVJY29ue21hcmdpbi1yaWdodDowfS55dEJhZGdlU2hhcGVUZXh0e2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwfS55dEJhZGdlU2hhcGVUZXh0Q2xpcFRleHRPdmVyZmxvd3tvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRCYWRnZVNoYXBlVGV4dEhhc011bHRpcGxlQmFkZ2VzSW5Sb3d7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LXdpZHRoOjIwY2h9Lnl0QmFkZ2VTaGFwZURlZmF1bHR7XG4gIC8qICFrZWVwICovY29sb3I6IzYwNjA2MDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4wNSl9Lnl0QmFkZ2VTaGFwZURlZmF1bHQueXRCYWRnZVNoYXBlT3ZlcmxheXtjb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjYpfS55dEJhZGdlU2hhcGVEZWZhdWx0Lnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojNjA2MDYwO2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlTWVkaWF7XG4gIC8qICFrZWVwICovY29sb3I6IzYwNjA2MDtvdXRsaW5lOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7b3V0bGluZS1vZmZzZXQ6LTFweH0ueXRCYWRnZVNoYXBlTWVkaWEueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiM2MDYwNjA7b3V0bGluZToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZU1lZGlhT3ZlcmxheXtcbiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO291dGxpbmU6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVNZWRpYU92ZXJsYXkueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7b3V0bGluZToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjMpO291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZVByb21vdGVke1xuICAvKiAha2VlcCAqL2NvbG9yOiMwMzAzMDM7cGFkZGluZy1sZWZ0OjB9Lnl0QmFkZ2VTaGFwZVByb21vdGVkLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojMDMwMzAzO2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlUHJvbW90ZWRJbnZlcnRlZC55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOm5vbmU7cGFkZGluZy1sZWZ0OjB9Lnl0QmFkZ2VTaGFwZVRpbWVseXtcbiAgLyogIWtlZXAgKi9jb2xvcjojNjA2MDYwfS55dEJhZGdlU2hhcGVUaW1lbHkgLnl0QmFkZ2VTaGFwZUljb257Y29sb3I6I2UxMDAyZH0ueXRCYWRnZVNoYXBlVGltZWx5e3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVUaW1lbHkueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiM2MDYwNjB9Lnl0QmFkZ2VTaGFwZVRpbWVseS55dEJhZGdlU2hhcGVNb2Rlcm4gLnl0QmFkZ2VTaGFwZUljb257Y29sb3I6I2UxMDAyZH0ueXRCYWRnZVNoYXBlVGltZWx5Lnl0QmFkZ2VTaGFwZU1vZGVybntwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlUHJlbWl1bXtcbiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO2JhY2tncm91bmQ6I2UxMDAyZH0ueXRCYWRnZVNoYXBlUHJlbWl1bS55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVNhbGV7XG4gIC8qICFrZWVwICovY29sb3I6I2MzMDAyN30ueXRCYWRnZVNoYXBlU2FsZSAueXRCYWRnZVNoYXBlSWNvbntjb2xvcjojYzMwMDI3fS55dEJhZGdlU2hhcGVTYWxle3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVTYWxlLnl0QmFkZ2VTaGFwZU1vZGVybiwueXRCYWRnZVNoYXBlU2FsZS55dEJhZGdlU2hhcGVNb2Rlcm4gLnl0QmFkZ2VTaGFwZUljb257Y29sb3I6I2MzMDAyN30ueXRCYWRnZVNoYXBlU2FsZS55dEJhZGdlU2hhcGVNb2Rlcm57cGFkZGluZy1sZWZ0OjB9Lnl0QmFkZ2VTaGFwZU1lbWJlcnNoaXB7XG4gIC8qICFrZWVwICovY29sb3I6IzEwNzUxNjtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4wNSl9Lnl0QmFkZ2VTaGFwZU1lbWJlcnNoaXAueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMxMDc1MTY7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVDb21tZXJjZXtcbiAgLyogIWtlZXAgKi9jb2xvcjojMTA3NTE2O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ueXRCYWRnZVNoYXBlQ29tbWVyY2UueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMxMDc1MTY7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVMaXZle1xuICAvKiAha2VlcCAqL2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDIyNSwwLDQ1LDAuOSl9Lnl0QmFkZ2VTaGFwZUxpdmUueXRCYWRnZVNoYXBlT3ZlcmxheXtjb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgyMjUsMCw0NSwwLjkpfS55dEJhZGdlU2hhcGVMaXZlLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgyMjUsMCw0NSwwLjkpfS55dEJhZGdlU2hhcGVTdGF0dXNOZXd7XG4gIC8qICFrZWVwICovY29sb3I6IzA2NWZkNDtvdXRsaW5lOjFweCBzb2xpZCAjMDY1ZmQ0O291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZVN0YXR1c05ldy55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzA2NWZkNDtvdXRsaW5lOjFweCBzb2xpZCAjMDY1ZmQ0O291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZVN0YXR1c0NvbXBsZXRle1xuICAvKiAha2VlcCAqL2NvbG9yOiMwMDU5MTc7YmFja2dyb3VuZDojZGVmZmRlfS55dEJhZGdlU2hhcGVTdGF0dXNDb21wbGV0ZS55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAwNTkxNztiYWNrZ3JvdW5kOiNkZWZmZGV9Lnl0QmFkZ2VTaGFwZVN0YXR1c1dhcm5pbmd7XG4gIC8qICFrZWVwICovY29sb3I6IzdjMjkwMDtiYWNrZ3JvdW5kOiNmZmVhY2Z9Lnl0QmFkZ2VTaGFwZVN0YXR1c1dhcm5pbmcueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiM3YzI5MDA7YmFja2dyb3VuZDojZmZlYWNmfS55dEJhZGdlU2hhcGVTdGF0dXNFcnJvcntcbiAgLyogIWtlZXAgKi9jb2xvcjojOTkwNDEyO2JhY2tncm91bmQ6cmdiYSgyNTUsODUsMTE5LDAuMil9Lnl0QmFkZ2VTaGFwZVN0YXR1c0Vycm9yLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojOTkwNDEyO2JhY2tncm91bmQ6cmdiYSgyNTUsODUsMTE5LDAuMil9Lnl0QmFkZ2VTaGFwZVN0YXR1c0RlZmF1bHR7XG4gIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRCYWRnZVNoYXBlU3RhdHVzRGVmYXVsdC55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsRGVmYXVsdHtcbiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjYpfS55dEJhZGdlU2hhcGVUaHVtYm5haWxEZWZhdWx0Lnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjYpfS55dEJhZGdlU2hhcGVUaHVtYm5haWxMaXZle1xuICAvKiAha2VlcCAqL2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDIyNSwwLDQ1LDAuOSl9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbExpdmUueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDIyNSwwLDQ1LDAuOSl9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWx7XG4gIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOiNmZmZ9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWwgLnl0QmFkZ2VTaGFwZUljb257Y29sb3I6I2UxMDAyZH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsU3BlY2lhbC55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOiNmZmZ9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWwueXRCYWRnZVNoYXBlTW9kZXJuIC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHRSZWRlc2lnbntcbiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjMpfS55dEJhZGdlU2hhcGVUaHVtYm5haWxEZWZhdWx0UmVkZXNpZ24ueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyl9Lnl0QmFkZ2VTaGFwZUFke2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojMDMwMzAzO3doaXRlLXNwYWNlOm5vd3JhcDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjA7Zm9udC1zaXplOnVuc2V0O2xpbmUtaGVpZ2h0OnVuc2V0fS55dEJhZGdlU2hhcGVBZC55dEJhZGdlU2hhcGVBZHNJbmNsdWRlRG90OmFmdGVye2NvbnRlbnQ6XCLCt1wiOy1tb3otcGFkZGluZy1lbmQ6NHB4O3BhZGRpbmctaW5saW5lLWVuZDo0cHg7LW1vei1wYWRkaW5nLXN0YXJ0OjRweDtwYWRkaW5nLWlubGluZS1zdGFydDo0cHh9Lnl0QmFkZ2VTaGFwZUFkLnl0QmFkZ2VTaGFwZU92ZXJsYXl7Y29sb3I6I2ZmZn0ueXRCYWRnZVNoYXBlTWVkaXVtRm9udEFkQmFkZ2V7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDB9Lnl0QmFkZ2VTaGFwZUxhcmdlRm9udEFkQmFkZ2V7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRCYWRnZVNoYXBlSXNFbXB0eXtkaXNwbGF5Om5vbmV9LmFjY291bnRJbmZvSG9zdHtkaXNwbGF5OmJsb2NrfS5saWtlLWJ1dHRvbi1yZW5kZXJlciBbYXJpYS1wcmVzc2VkPXRydWVdIGMzLWljb257Y29sb3I6IzA2NWZkNH0ubGlrZS1idXR0b24tcmVuZGVyZXIgW2FyaWEtcHJlc3NlZD10cnVlXSBjMy1pY29uIHBhdGh7ZmlsbDojM2VhNmZmO3N0cm9rZTojZmZmO3N0cm9rZS13aWR0aDoxcHh9eXRtLW1lbnUtcmVuZGVyZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9LmJvdHRvbS1zaGVldC1tZWRpYS1tZW51LWl0ZW0geXRtLW1lbnUtaXRlbXtwYWRkaW5nOjA7aGVpZ2h0OjQ4cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uYm90dG9tLXNoZWV0LW1lZGlhLW1lbnUtaXRlbSAubWVudS1pdGVtLWJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjA7bWFyZ2luLWxlZnQ6MTJweDtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS5ib3R0b20tc2hlZXQtbWVkaWEtbWVudS1pdGVtIGMzLWljb257bWFyZ2luLXJpZ2h0OjEycHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVye21hcmdpbjo1cHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVyW3RodW1ibmFpbC1zaXplPXNtYWxsXXttYXJnaW46MnB4fXl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlclt0aHVtYm5haWwtc2l6ZT1tZWRpdW1de21hcmdpbjo0cHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVyW3RodW1ibmFpbC1zaXplPWxhcmdlXXttYXJnaW46OHB4fXl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlcltkYXRhLXN0eWxlPUxJVkVdLHl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlcltkYXRhLXN0eWxlPVNIT1JUU117dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfWltZy5jdXN0b20tdGh1bWJuYWlsLnZpZGVvLXRodW1ibmFpbC1pbWd7b2JqZWN0LWZpdDpzY2FsZS1kb3duO21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJX0udmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0LC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdle3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXgtc2hyaW5rOjA7b3ZlcmZsb3c6aGlkZGVufS52aWRlby10aHVtYm5haWwtaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3dpZHRoOjEwMCU7bWluLWhlaWdodDoxMDAlO21hcmdpbjphdXRvfS52aWRlby10aHVtYm5haWwtYmd7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctYm90dG9tOjU2LjI1JX0udmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5zdGFja2Vke2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfS52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE2MHB4O2hlaWdodDo5MHB4fS5jdXN0b20tdGh1bWJuYWlsLWJhY2tncm91bmQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4MHB4O2hlaWdodDoxODBweH0uY3VzdG9tLXRodW1ibmFpbC1iYWNrZ3JvdW5kLWNvbnRhaW5lciAuY3VzdG9tLXRodW1ibmFpbHtvcGFjaXR5Oi43O2ZpbHRlcjpibHVyKDMwcHgpfS52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3Qtcm91bmRlZHtib3JkZXItcmFkaXVzOjhweH0ub3JpZ2luYWwtYXNwZWN0LXJhdGlvIGltZ3toZWlnaHQ6MTAwJTt3aWR0aDphdXRvfS5zdGFja2Vke2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfUBtZWRpYSAobWF4LXdpZHRoOjU0OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsuYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7cGFkZGluZy1ib3R0b206MTI1JX0uYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2UgaW1ne29iamVjdC1maXQ6Y292ZXI7d2lkdGg6MTAwJX19QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZXttYXJnaW4tdG9wOjB9LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2U6d2hlcmUoLm5vdC1yZW5kZXJlZC1mcm9tLXJpY2gtaXRlbSl7bWFyZ2luOi0xM3B4IC0xMnB4IDA7cGFkZGluZy10b3A6MTNweH0uc3R5bGUtcmVjb21tZW5kYXRpb25zLWluLXBvcnRyYWl0IC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdlLnJvdW5kZWQtdGh1bWJuYWlse2JvcmRlci1yYWRpdXM6MTJweDttYXJnaW46MDtwYWRkaW5nLXRvcDowfX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjA7cGFkZGluZy10b3A6MH19LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2UudGh1bWJuYWlsLWNvdmVyLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoxMnB4fUBtZWRpYSAobWluLXdpZHRoOjU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2Uucm91bmRlZC10aHVtYm5haWx7Ym9yZGVyLXJhZGl1czoxMnB4fX1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MTMvOSkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbHtib3JkZXItcmFkaXVzOjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7LnN0eWxlLXJlY29tbWVuZGF0aW9ucy1pbi1wb3J0cmFpdCAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbCxwbGF5ZXItZnVsbHNjcmVlbi1jb250cm9scyAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbHtib3JkZXItcmFkaXVzOjEycHh9fS52aWRlby10aHVtYm5haWwtZmlsbC1wYXJlbnR7bWFyZ2luOjA7cGFkZGluZy10b3A6MDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U3BlY0RpYWxvZ0xheW91dEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRTcGVjRGlhbG9nTGF5b3V0Q29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1ib3R0b206MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0VG9wUGFkZGluZ3twYWRkaW5nLXRvcDoyNHB4fS55dFNwZWNEaWFsb2dMYXlvdXRJY29ue21hcmdpbjoyNHB4IDI0cHggMH0ueXRTcGVjRGlhbG9nTGF5b3V0SWNvbkFib3ZlTWVkaWF7bWFyZ2luLWJvdHRvbToyNHB4fS55dFNwZWNEaWFsb2dMYXlvdXRJY29uQ2VudGVyQWxpZ257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0U3BlY0RpYWxvZ0xheW91dEFzc2V0e3dpZHRoOjEwMCU7bWluLWhlaWdodDowO2ZsZXgtc2hyaW5rOjQ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6aGlkZGVufS55dFNwZWNEaWFsb2dMYXlvdXRBc3NldEl0ZW17d2lkdGg6MTAwJTtmbGV4LXNocmluazowO29iamVjdC1maXQ6Y292ZXJ9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckNvbnRhaW5lcntwYWRkaW5nOjI0cHggMjRweCA4cHh9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXgtc2hyaW5rOjB9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckFib3ZlQXNzZXR7cGFkZGluZy1ib3R0b206MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0VGl0bGV7Y29sb3I6IzAzMDMwMzstbW96LWJveC1mbGV4OjE7ZmxleDoxO21hcmdpbi1ib3R0b206MDtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTcGVjRGlhbG9nTGF5b3V0VGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRTcGVjRGlhbG9nTGF5b3V0VGl0bGV7bWF4LWhlaWdodDo1LjZyZW19Lnl0U3BlY0RpYWxvZ0xheW91dExlYWRpbmdBY3Rpb25IZWFkZXJ7Y29sb3I6IzAzMDMwMzttYXJnaW4tcmlnaHQ6MTJweH0ueXRTcGVjRGlhbG9nTGF5b3V0VHJhaWxpbmdBY3Rpb25IZWFkZXJ7Y29sb3I6IzAzMDMwMzttYXJnaW4tbGVmdDphdXRvfS55dFNwZWNEaWFsb2dMYXlvdXRDb250ZW50e2NvbG9yOiMwMzAzMDM7b3ZlcmZsb3cteTphdXRvfS55dFNwZWNEaWFsb2dMYXlvdXRDb250ZW50SW5uZXJ7b3ZlcmZsb3c6dmlzaWJsZTtwYWRkaW5nOjAgMjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0Rm9vdGVyQ29udGFpbmVye3BhZGRpbmctdG9wOjE2cHg7cGFkZGluZy1sZWZ0OjI0cHg7cGFkZGluZy1yaWdodDoyNHB4fS55dFNwZWNEaWFsb2dMYXlvdXRGb290ZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWZsb3c6cm93IHdyYXAtcmV2ZXJzZTtmbGV4LXNocmluazowO21hcmdpbjotOHB4IDAgMCAtOHB4fS55dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zSW5saW5lRW5key1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDplbmR9Lnl0U3BlY0RpYWxvZ0xheW91dEJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjhweCAwIDAgOHB4fS55dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zSW5saW5lU3RyZXRjaGVkey1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0U3BlY0RpYWxvZ0xheW91dENlbnRlckFsaWduIC55dFNwZWNEaWFsb2dMYXlvdXRDb250ZW50LC55dFNwZWNEaWFsb2dMYXlvdXRDZW50ZXJBbGlnbiAueXRTcGVjRGlhbG9nTGF5b3V0VGl0bGV7dGV4dC1hbGlnbjpjZW50ZXJ9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0J1dHRvbnNTdGFja2Vkey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn1AbWVkaWEgKG1heC13aWR0aDozMzBweCl7Lnl0U3BlY0RpYWxvZ0xheW91dFJlc3BvbnNpdmV7bWluLXdpZHRoOmNhbGMoMTAwdncgLSA5NnB4KTttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMHZofX1AbWVkaWEgKG1pbi13aWR0aDozMzFweCkgYW5kIChtYXgtd2lkdGg6NTI3cHgpey55dFNwZWNEaWFsb2dMYXlvdXRSZXNwb25zaXZle21pbi13aWR0aDpjYWxjKDEwMHZ3IC0gOTZweCk7bWluLXdpZHRoOm1pbigzMjBweCwxMDB2dyAtIDk2cHgpO21heC13aWR0aDpjYWxjKDEwMHZ3IC0gOTZweCk7bWF4LXdpZHRoOm1pbig0MDBweCwxMDB2dyAtIDk2cHgpO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDk2cHgpfX1AbWVkaWEgKG1pbi13aWR0aDo1MjhweCl7Lnl0U3BlY0RpYWxvZ0xheW91dFJlc3BvbnNpdmV7bWluLXdpZHRoOjMyMHB4O21heC13aWR0aDpjYWxjKDEwMHZ3IC0gOTZweCk7bWF4LXdpZHRoOm1pbig1NjBweCwxMDB2dyAtIDk2cHgpO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDk2cHgpO21heC1oZWlnaHQ6bWluKDU2MHB4LDEwMHZoIC0gOTZweCl9fS55dFNwZWNEaWFsb2dMYXlvdXRGdWxsc2NyZWVue2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lnl0U3BlY0RpYWxvZ0xheW91dEZ1bGxzY3JlZW4gLnl0U3BlY0RpYWxvZ0xheW91dENvbnRhaW5lciwueXRTcGVjRGlhbG9nTGF5b3V0RnVsbHNjcmVlbiAueXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudHtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lnl0U3BlY0RpYWxvZ0xheW91dEZ1bGxzY3JlZW4gLnl0U3BlY0RpYWxvZ0xheW91dENvbnRlbnRJbm5lcntkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7cGFkZGluZzowfUBtZWRpYSAobWluLXdpZHRoOjUyOHB4KXsueXRTcGVjRGlhbG9nTGF5b3V0RXh0ZW5kZWRNYXhIZWlnaHR7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gOTZweCl9fS55dFNwZWNEaWFsb2dMYXlvdXRBc3NldEluc2V0IC55dFNwZWNEaWFsb2dMYXlvdXRBc3NldHt3aWR0aDphdXRvO3BhZGRpbmc6MCAyNHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRTcGVjRGlhbG9nTGF5b3V0QXNzZXRJbnNldCAueXRTcGVjRGlhbG9nTGF5b3V0QXNzZXRJdGVte2JvcmRlci1yYWRpdXM6MTJweH0ueXR3UGl2b3RCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y3Vyc29yOnBvaW50ZXJ9Lnl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdEltYWdle2JvcmRlci1yYWRpdXM6NnB4O3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7ZGlzcGxheTpibG9ja30ueXR3UGl2b3RCdXR0b25WaWV3TW9kZWxIb3N0SWNvbntib3JkZXI6MXB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czo2cHg7cGFkZGluZzo2cHh9Lnl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdFtkYXRhLWJhY2tncm91bmQtY29sb3I9VEhFTUVfQVRUUklCVVRFX09WRVJMQVlfQkFDS0dST1VORF9NRURJVU1dIC55dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3RJY29ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0Pip7bWFyZ2luLXRvcDoxNnB4fS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdD50b2dnbGUtYnV0dG9uLXZpZXctbW9kZWx7bWFyZ2luLXRvcDowfS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZXt3aWR0aDo1NnB4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0TW9iaWxlIC55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbExhYmVse2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTZweDttYXJnaW46MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3RNb2JpbGUgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEhvc3Q6Zm9jdXN7YmFja2dyb3VuZDp1bnNldH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3RNb2JpbGUgYnV0dG9uOm5vdChbYXJpYS1wcmVzc2VkPXRydWVdKSBjMy1pY29ue2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMnB4IHJnYmEoMCwwLDAsMC4zKSl9Lnl0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0TW9iaWxlQWN0aW9uQnV0dG9ue3BhZGRpbmctdG9wOjRweDtwYWRkaW5nLWJvdHRvbTo4cHg7bWFyZ2luOjB9Lnl0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0RGVza3RvcHstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdERlc2t0b3AgLnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3REZXNrdG9wQWN0aW9uQnV0dG9ue3BhZGRpbmctdG9wOjA7cGFkZGluZy1ib3R0b206OHB4O21hcmdpbjowfUBtZWRpYSAobWF4LWhlaWdodDo0MTFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdD4qe21hcmdpbi10b3A6MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3QgLnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7ZGlzcGxheTpub25lfX0ueXRSZWVsTWV0YXBhbmVsVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDttYXgtd2lkdGg6NDgwcHh9Lnl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW06bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZy10b3A6NHB4O21heC13aWR0aDoxMDAlfS55dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtOm5vdCg6bGFzdC1jaGlsZCl7cGFkZGluZy1ib3R0b206NHB4O21heC13aWR0aDoxMDAlfS55dEFuaW1hdGVkQWN0aW9uSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS55dEFuaW1hdGVkQWN0aW9uTG90dGlle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czpub25lfS55dEFuaW1hdGVkQWN0aW9uQmFja2dyb3VuZHt3aWR0aDoxMDAlfS55dEFuaW1hdGVkQWN0aW9uQmFja2dyb3VuZENvbnRhaW5lcntvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXJhZGl1czoxOHB4fS55dEFuaW1hdGVkQWN0aW9uQ29udGVudFdpdGhCYWNrZ3JvdW5ke3Bvc2l0aW9uOnJlbGF0aXZlfS5wbGF5ZXItc2V0dGluZ3MtaGVhZGVye21hcmdpbi1ib3R0b206MjBweH0ucGxheWVyLWNhcHRpb24tc2V0dGluZ3MsLnBsYXllci1xdWFsaXR5LXNldHRpbmdzLC5wbGF5ZXItc3BlZWQtc2V0dGluZ3N7d2lkdGg6MTAwJTttYXJnaW46NHB4IDAgMTJweH0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mb3tiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMzstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7bWluLWhlaWdodDo4LjRyZW07d2lkdGg6MTAwJTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtwYWRkaW5nOjhweH0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mbzo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjojNjA2MDYwO29wYWNpdHk6MX0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mbzo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9LmNvcHlEZWJ1Z0luZm9QbGF5ZXJEZWJ1Z0luZm97aGVpZ2h0OjQwdmg7ZGlyZWN0aW9uOmx0cn0uc3RhYmxlVm9sdW1lVG9nZ2xlSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBsYXllckNvbnRyb2xzQ29udGFpbmVySG9zdHstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9Lnl0UGxheWVyQ29udHJvbHNDb250YWluZXJSZW5kZXJlZHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3BhZGRpbmctYm90dG9tOjB9Lnl0U2hvcnRzRW1iZWRzSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMCwwLDAsLjQpIDAscmdiYSgwLDAsMCwwKSAxNjBweCksbGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLC40KSAwLHJnYmEoMCwwLDAsMCkgOTZweCl9Lnl0U2hvcnRzRW1iZWRzUmVlbFBsYXllck92ZXJsYXlSZW5kZXJlciAucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zLC55dFNob3J0c0VtYmVkc1JlZWxQbGF5ZXJPdmVybGF5UmVuZGVyZXIgLnJlZWwtcGxheWVyLW92ZXJsYXktbWV0YWRhdGEsLnl0U2hvcnRzRW1iZWRzUmVlbFBsYXllck92ZXJsYXlSZW5kZXJlciAucmVlbC1wbGF5ZXItb3ZlcmxheS10b3AtYmFye3otaW5kZXg6Mn0ueXRTaG9ydHNFbWJlZHNUb3BiYXJDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6Mjt3aWR0aDoxMDAlfS55dFNob3J0c0VtYmVkc1ZvbHVtZUNvbnRyb2xze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjQ4cHh9Lnl0bUN1ZWRPdmVybGF5SG9zdHtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5fS55dG1DdWVkT3ZlcmxheUhpZGRlbiwueXRtQ3VlZE92ZXJsYXlIb3N0LmhpZGRlbnt2aXNpYmlsaXR5OmhpZGRlbjtvcGFjaXR5OjB9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0zNnB4O21hcmdpbi10b3A6LTM2cHg7d2lkdGg6NzJweDtoZWlnaHQ6NzJweDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcn0ueXRtQ3VlZE92ZXJsYXlQbGF5QnV0dG9uLnNob3J0cywueXRtQ3VlZE92ZXJsYXlTaG9ydHN7bWFyZ2luLWxlZnQ6LTUwcHg7bWFyZ2luLXRvcDotNTBweDt3aWR0aDoxMDBweDtoZWlnaHQ6MTAwcHh9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb257d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtjb2xvcjojZjAzfUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dG1DdWVkT3ZlcmxheVBsYXlCdXR0b25JY29ue2NvbG9yOkJ1dHRvblRleHR9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gcGF0aDpmaXJzdC1jaGlsZHtmaWxsOkJ1dHRvblRleHR9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gLmxvZ28tYXJyb3csLnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gcGF0aDpudGgtY2hpbGQoMil7ZmlsbDpDYW52YXN9fS55dG1DdWVkT3ZlcmxheUdyYWRpZW50e3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuOCkscmdiYSgwLDAsMCwuNikscmdiYSgwLDAsMCwwKSk7aGVpZ2h0OjdyZW19Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjNweH0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXJ7aGVpZ2h0OjNweDttYXJnaW46MCAxcHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyU2VlbntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXJJc1NjcnViYmluZ3ttYXJnaW46MCAycHh9Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyOmZpcnN0LW9mLXR5cGV7bWFyZ2luLWxlZnQ6MH0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXI6bGFzdC1vZi10eXBle21hcmdpbi1yaWdodDowfS55dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyRmlsbHtoZWlnaHQ6M3B4O3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyTG9hZGVke2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMyk7aGVpZ2h0OjNweDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckhvdmVyZWRNYWNyb01hcmtlcnt0cmFuc2Zvcm06c2NhbGVZKDIpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS55dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9Lnl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmV7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjNweDt3aWR0aDoxMDAlfS55dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5lUm91bmRlZHtib3JkZXItcmFkaXVzOjEuNXB4O292ZXJmbG93OmhpZGRlbn0ueXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0e2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czoyLjVweDtvdmVyZmxvdzpoaWRkZW59Lnl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO29wYWNpdHk6LjY7d2lkdGg6MTAwJX0ueXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVke3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowO2JvdHRvbTowO2hlaWdodDoxMDAlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55dEhlYXRTZWVrZXJIb3N0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2ZpbGw6cmdiYSgyNTUsMjU1LDI1NSwuNCl9Lnl0SGVhdFNlZWtlckhpZ2hDb250cmFzdHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLDApLDkwJSxyZ2JhKDAsMCwwLC42KSk7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LC41KX0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3R7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6MTAwJTtkaXJlY3Rpb246bHRyfS55dFBsYXllclByb2dyZXNzQmFySG9zdFJlYWRPbmx5e3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0SGlkZGVue29wYWNpdHk6MH0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RMb3dlclBsYXllcntib3R0b206MDtsZWZ0OjMwcHg7cmlnaHQ6MzBweDtoZWlnaHQ6NDRweH0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RCb3R0b21FZGdle2hlaWdodDoyOHB4O2xlZnQ6MDtyaWdodDowO2JvdHRvbTotN3B4fS55dFBsYXllclByb2dyZXNzQmFySG9zdEJvdHRvbUluc2V0e2hlaWdodDoyOHB4O2JvdHRvbTowO2xlZnQ6MDtyaWdodDowfS55dFBsYXllclByb2dyZXNzQmFySG9zdEN1c3RvbXtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRQbGF5ZXJQcm9ncmVzc0JhckJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsMCkscmdiYSgwLDAsMCwuNSkpO29wYWNpdHk6MTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguMiwwLC42LDEpfS55dFBsYXllclByb2dyZXNzQmFyQmFja2dyb3VuZEhpZGV7b3BhY2l0eTowfS55dFBsYXllclByb2dyZXNzQmFyRHJhZ0NvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRQbGF5ZXJQcm9ncmVzc0JhckRyYWdDb250YWluZXJCb3R0b21FZGdle2hlaWdodDowO3BhZGRpbmc6MTkuNXB4IDAgOC41cHh9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJIZWF0c2Vla2VyQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbToxLjVweH0ueXRQbGF5ZXJQcm9ncmVzc0JhckhlYXRzZWVrZXJDb250YWluZXJJbnNldHtib3R0b206MTQuNXB4fS55dFBsYXllclByb2dyZXNzQmFyUHJvZ3Jlc3NCYXJ7d2lkdGg6MTAwJTtvdmVyZmxvdzp2aXNpYmxlO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0Jhckluc2V0e3BhZGRpbmc6MTZweCAwIDEycHg7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbjp3aWR0aCAuMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRQbGF5ZXJQcm9ncmVzc0JhclByb2dyZXNzQmFySW5zZXRNaW5pbWl6ZWR7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTJweCl9Lnl0UHJvZ3Jlc3NCYXJMaW5lSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5le3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDozcHg7d2lkdGg6MTAwJX0ueXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmVSb3VuZGVke2JvcmRlci1yYWRpdXM6MS41cHg7b3ZlcmZsb3c6aGlkZGVufS55dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0e2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czoyLjVweDtvdmVyZmxvdzpoaWRkZW59Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJCYWNrZ3JvdW5ke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi4zO3dpZHRoOjEwMCV9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMb2FkZWR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO29wYWNpdHk6LjZ9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJIb3ZlcmVke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi43fS55dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRQcm9ncmVzc0JhclBsYXloZWFkSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlfS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkRG90e2hlaWdodDoxMnB4O3dpZHRoOjEycHg7Ym9yZGVyLXJhZGl1czo1MCU7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lO2JhY2tncm91bmQtY29sb3I6I2YwMzt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGVhc2V9Lnl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWREb3RMYXJnZXtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkRG90SGlkZXt0cmFuc2Zvcm06c2NhbGUoMCl9Lnl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWRDdXN0b217aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDtwb2ludGVyLWV2ZW50czpub25lfS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkQ3VzdG9tTGFyZ2V7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRQcm9ncmVzc0JhclBsYXloZWFkUHJvZ3Jlc3NCYXJQbGF5aGVhZEN1c3RvbUhpZGV7dHJhbnNmb3JtOnNjYWxlKDApfS55dFBsYXllclN0b3J5Ym9hcmRIb3N0e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4MHB4O3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3RCaWdib2FyZHt3aWR0aDoxMDAlO2xlZnQ6NTAlfS55dFBsYXllclN0b3J5Ym9hcmRIb3N0TXdlYlNob3J0c3ttYXJnaW4tYm90dG9tOjQ4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3RJbmxpbmVQbGF5ZXJ7Ym90dG9tOmNhbGMoNTZweCp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSl9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3REZXNrdG9wU2hvcnRze21hcmdpbi1ib3R0b206MTZweH0ueXRQbGF5ZXJTdG9yeWJvYXJkSG9zdElzRHJhZ2dpbmd7bWFyZ2luLWJvdHRvbTo4MHB4fS55dFBsYXllclN0b3J5Ym9hcmRIb3N0RmFkZUlue2FuaW1hdGlvbjpmYWRlLWluIC4xcyBjdWJpYy1iZXppZXIoLjIsMCwuNiwxKX0ueXRQbGF5ZXJTdG9yeWJvYXJkU3Rvcnlib2FyZEltYWdlV3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZEJpZ2JvYXJkV3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2JhY2tncm91bmQ6IzAwMH0ueXRQbGF5ZXJTdG9yeWJvYXJkQmlnYm9hcmRJbWFnZVdyYXBwZXJ7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVufS55dFBsYXllclN0b3J5Ym9hcmRUaW1lc3RhbXB7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLC43NSl9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcFNob3J0c3tmb250LWZhbWlseTpZb3VUdWJlIFNhbnMsUm9ib3RvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjIuOHJlbTtsaW5lLWhlaWdodDozLjhyZW07Zm9udC13ZWlnaHQ6NzAwfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dFBsYXllclN0b3J5Ym9hcmRUaW1lc3RhbXBTaG9ydHN7Zm9udC1mYW1pbHk6WW91VHViZSBTYW5zLFJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcFNob3J0c3twYWRkaW5nLXRvcDo4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcElzSG92ZXJpbmd7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6Y2FsYygxLjZyZW0qdmFyKC0tc3Rvcnlib2FyZC1zY2FsZSwgMSkpO2xpbmUtaGVpZ2h0OmNhbGMoMi4ycmVtKnZhcigtLXN0b3J5Ym9hcmQtc2NhbGUsIDEpKX0ueXRQbGF5ZXJTdG9yeWJvYXJkTWV0YWRhdGF7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOmNhbGMoLTZweCp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSk7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLDEwMCUpO2xlZnQ6NTAlO2NvbG9yOiNmZmY7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MTAwJTtmb250LXNpemU6Y2FsYygxMnB4KnZhcigtLXN0b3J5Ym9hcmQtc2NhbGUsIDEpKX0ueXRQbGF5ZXJTdG9yeWJvYXJkTWV0YWRhdGFCaWdib2FyZHt3aWR0aDphdXRvO2NvbG9yOiNmZmY7bWF4LXdpZHRoOjEwMCU7Ym90dG9tOjZweDtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7cGFkZGluZzo4cHggMTZweDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWNvbHVtbi1nYXA6MXJlbTtjb2x1bW4tZ2FwOjFyZW07bWluLXdpZHRoOjB9Lnl0UGxheWVyU3Rvcnlib2FyZFRpdGxle21heC13aWR0aDoxMDAlO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tYm90dG9tOjRweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFBsYXllclN0b3J5Ym9hcmRUaXRsZUJpZ2JvYXJke21hcmdpbi1ib3R0b206MDtmb250LXdlaWdodDo3MDB9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVkTWFya2VySWNvbldyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVkTWFya2VySWNvbntoZWlnaHQ6MTRweDt3aWR0aDoxNHB4O21hcmdpbi1yaWdodDo0cHh9Lnl0UGxheWVyU3Rvcnlib2FyZFN0b3J5Ym9hcmRJbWFnZXt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlfUBrZXlmcmFtZXMgZmFkZS1pbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX0ueXRNd2ViU2hvcnRzUGxheWVyQ29udHJvbHNIb3N0e3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjA7Ym90dG9tOjA7aGVpZ2h0OjNweDtkaXJlY3Rpb246bHRyO3RyYW5zaXRpb24tcHJvcGVydHk6aGVpZ2h0LG1hcmdpbi1sZWZ0LG1hcmdpbi1yaWdodCxwYWRkaW5nLHZpc2liaWxpdHk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMjVzfS55dE13ZWJTaG9ydHNQbGF5ZXJDb250cm9sc0hvc3RJc1NjcnViYmFibGVNb2Rle21hcmdpbi1yaWdodDoxNnB4O21hcmdpbi1sZWZ0OjE2cHg7aGVpZ2h0OjE2cHg7cGFkZGluZy1ib3R0b206MTZweDt0cmFuc2l0aW9uLWR1cmF0aW9uOi41c30ueXRNd2ViU2hvcnRzUGxheWVyQ29udHJvbHNIb3N0SGlkZVByb2dyZXNzQmFye3Zpc2liaWxpdHk6aGlkZGVuO2hlaWdodDowfS55dE13ZWJTaG9ydHNQbGF5ZXJDb250cm9sc0dlc3R1cmVPdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDoxMDB2aDt3aWR0aDoxMDB2dztpbnNldDowO3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0d0F1dG9uYXZUb29sdGlwSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjI1JTt3aWR0aDoxMDAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2NvbG9yOiNmZmZ9Lnl0d1BsYXllclVzZXJFZHVUb29sdGlwSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJVc2VyRWR1VG9vbHRpcFRvb2x0aXBDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjAgOHB4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dHdQbGF5ZXJVc2VyRWR1VG9vbHRpcFRvb2x0aXBXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnQ7bWFyZ2luLXRvcDoxNnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDo2O2JvcmRlci1yYWRpdXM6MTZweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KTtwYWRkaW5nOjdweCAxNnB4O21heC13aWR0aDoxMDAlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXR3UGxheWVyVXNlckVkdVRvb2x0aXBUb29sdGlwV3JhcHBlcjplbXB0eXtkaXNwbGF5Om5vbmV9Lnl0d1NwZWVkbWFzdGVyVG9vbHRpcEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0d1NwZWVkbWFzdGVyVG9vbHRpcEhvc3Q6bm90KC55dHdTcGVlZG1hc3RlclRvb2x0aXBLaWxsc3dpdGNoKXstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6I2ZmZjtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjA7cmlnaHQ6MH0ueXR3U3BlZWRtYXN0ZXJUb29sdGlwTGFiZWx7dGV4dC1hbGlnbjpqdXN0aWZ5O2ZvbnQtd2VpZ2h0OjUwMDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxOHB4fVtkaXI9cnRsXSAueXR3U3BlZWRtYXN0ZXJUb29sdGlwTGFiZWx7ZGlyZWN0aW9uOnJ0bH0ueXR3U3BlZWRtYXN0ZXJUb29sdGlwSWNvbnttYXJnaW4tbGVmdDo0cHh9Lnl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNHZXN0dXJlT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2xlZnQ6MDt0b3A6MDtib3R0b206MDtyaWdodDowO3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNHZXN0dXJlQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7bGVmdDowO3RvcDowO2JvdHRvbTowO3JpZ2h0OjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNTcGVlZG1hc3Rlckdlc3R1cmVBcmVhe2hlaWdodDoxMDAlO3dpZHRoOjI1JX0ueXRtU2hvcnRzR2VzdHVyZU92ZXJsYXlDb250cm9sc01lbnVHZXN0dXJlQXJlYXtoZWlnaHQ6MTAwJTt3aWR0aDo1MCV9Lnl0bVZpZGVvQ292ZXJIb3N0e2Rpc3BsYXk6YmxvY2s7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDoxO3RyYW5zaXRpb246dHJhbnNmb3JtIC43czt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHl9Lnl0bVZpZGVvQ292ZXJIb3N0LmVuZGVke3otaW5kZXg6MH0ueXRtVmlkZW9Db3Zlckhvc3QuaGlkZGVue3Zpc2liaWxpdHk6aGlkZGVuO29wYWNpdHk6MH0ueXRtVmlkZW9Db3ZlclRodW1ibmFpbHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOmNvdmVyO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0ZFZvbHVtZUNvbnRyb2xzSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXgtaGVpZ2h0OjQ4cHh9Lnl0ZFZvbHVtZUNvbnRyb2xzRGlzYWJsZVNsaWRlcnt3aWR0aDo0OHB4fS55dGRWb2x1bWVDb250cm9sc1ZvbHVtZUNvbnRyb2xzQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MHB4O3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LWZsZXg6MTtmbGV4OjEgMSBhdXRvO21heC13aWR0aDoxNjhweH0ueXRkVm9sdW1lQ29udHJvbHNWb2x1bWVDb250cm9sc0NvbnRhaW5lclZlcnRpY2Fse21heC13aWR0aDo0OHB4O3dpZHRoOjQ4cHg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7Z2FwOjYwcHg7aGVpZ2h0Oi1tb3otZml0LWNvbnRlbnQ7aGVpZ2h0OmZpdC1jb250ZW50O3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0ZFZvbHVtZUNvbnRyb2xzVm9sdW1lQ29udHJvbHNDb250YWluZXJFeHBhbmRlZHtwb2ludGVyLWV2ZW50czphbGx9Lnl0ZFZvbHVtZUNvbnRyb2xzTXV0ZUljb25CdXR0b25Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtib3JkZXItcmFkaXVzOjUwcHh9Lnl0ZFZvbHVtZUNvbnRyb2xzTXV0ZUljb25CdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZW5kO3otaW5kZXg6MTtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7cGFkZGluZzoxMnB4O2N1cnNvcjpwb2ludGVyO3BvaW50ZXItZXZlbnRzOmFsbDtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLDAuOCkpfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MDtvcGFjaXR5OjA7b3ZlcmZsb3c6aGlkZGVuO3Zpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb246dmlzaWJpbGl0eSAuMTJzIGxpbmVhcixvcGFjaXR5IC4xMnMgbGluZWFyLHdpZHRoIC4xMnMgbGluZWFyfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lckV4cGFuZGVke3Zpc2liaWxpdHk6dmlzaWJsZTt3aWR0aDoxMDAlO29wYWNpdHk6MTt0cmFuc2l0aW9uOnZpc2liaWxpdHkgLjNzIGxpbmVhcixvcGFjaXR5IC4zcyBsaW5lYXIsd2lkdGggLjNzIGxpbmVhcjt6LWluZGV4OjF9Lnl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyV2l0aFNjcmlte3BhZGRpbmctcmlnaHQ6MTJweH0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJWZXJ0aWNhbHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTtib3JkZXItcmFkaXVzOjUwcHg7aGVpZ2h0OjQ4cHg7bWluLWhlaWdodDo0OHB4O3BhZGRpbmc6MCAxMnB4O21hcmdpbjowO3RyYW5zaXRpb246dmlzaWJpbGl0eSAuM3MgbGluZWFyLG9wYWNpdHkgLjNzIGxpbmVhcix3aWR0aCAwcyBsaW5lYXIgLjNzLG1hcmdpbiAuM3MgbGluZWFyfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lclZlcnRpY2FsRG93bnt0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9Lnl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyVmVydGljYWxFeHBhbmRlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNDAsNDAsNDAsMC42KTttYXJnaW4tdG9wOjhweDt3aWR0aDoxMzNweDt0cmFuc2l0aW9uOnZpc2liaWxpdHkgLjNzIGxpbmVhcixvcGFjaXR5IC4zcyBsaW5lYXIsd2lkdGggMHMgbGluZWFyLG1hcmdpbiAuM3MgbGluZWFyfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lckRpc2FibGVTbGlkZXJ7ZGlzcGxheTpub25lfS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcnstLWdyYWRpZW50LXBlcmNlbnQ6MDstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7Ym9yZGVyOm5vbmU7bWFyZ2luLWJvdHRvbToxcHg7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jazttaW4td2lkdGg6MDt3aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7cGFkZGluZzo4cHggMDtmb3JjZWQtY29sb3ItYWRqdXN0Om5vbmV9Lnl0ZFZvbHVtZUNvbnRyb2xzTmF0aXZlU2xpZGVyOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjZmZmIDAsI2ZmZiB2YXIoLS1ncmFkaWVudC1wZXJjZW50KSxyZ2JhKDI1NSwyNTUsMjU1LDAuMykgdmFyKC0tZ3JhZGllbnQtcGVyY2VudCkscmdiYSgyNTUsMjU1LDI1NSwwLjMpIDEwMCUpO2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LW1vei1yYW5nZS10cmFja3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjZmZmIDAsI2ZmZiB2YXIoLS1ncmFkaWVudC1wZXJjZW50KSxyZ2JhKDAsMCwwLDAuMSkgdmFyKC0tZ3JhZGllbnQtcGVyY2VudCkscmdiYSgwLDAsMCwwLjEpIDEwMCUpO2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlci1yYWRpdXM6NTAlO21hcmdpbi10b3A6LTYuNXB4fS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LW1vei1yYW5nZS10aHVtYnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JhY2tncm91bmQtY29sb3I6d2hpdGU7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmV9Lnl0ZFZvbHVtZUNvbnRyb2xzTmF0aXZlU2xpZGVyOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3toZWlnaHQ6MnB4fS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LW1vei1yYW5nZS10cmFja3toZWlnaHQ6MnB4fS55dGRWb2x1bWVDb250cm9sc011dGVJY29ue2NvbG9yOndoaXRlfS55dGRWb2x1bWVDb250cm9sc0JhY2tncm91bmRTY3JpbXtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3otaW5kZXg6MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTt0cmFuc2l0aW9uOndpZHRoIC4yNXMgbGluZWFyO3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlci1yYWRpdXM6NTBweH0ueXRkVm9sdW1lQ29udHJvbHNCYWNrZ3JvdW5kU2NyaW1FeHBhbmRlZHt3aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpfS55dGRWb2x1bWVDb250cm9sc0JhY2tncm91bmRTY3JpbUV4cGFuZGVkSG92ZXJTdGF0ZTphZnRlcntjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6NHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoyOHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO3RyYW5zaXRpb24tcHJvcGVydHk6d2lkdGgsYmFja2dyb3VuZC1jb2xvcn0ueXR3UGxheWVyRnVsbHNjcmVlbkFjdGlvbk1lbnVIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0d1BsYXllckZ1bGxzY3JlZW5BY3Rpb25NZW51Q2lyY2xlQnV0dG9uc3ttYXJnaW4tcmlnaHQ6OHB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo0OHB4O2JvcmRlci1yYWRpdXM6MjRweDtwYWRkaW5nLWxlZnQ6MTJweDtwYWRkaW5nLXJpZ2h0OjEycHg7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOiNmZmY7Ym9yZGVyOm5vbmU7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxCdXR0b24gYnV0dG9ue3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsQnV0dG9uIHN2Z3tmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFNpbmdsZVRodW1ibmFpbHtwYWRkaW5nOjZweCA4cHg7Ym9yZGVyLXJhZGl1czoxNnB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxIb3N0Om5vdCgueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGl0bGVIaWRkZW4pIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTaW5nbGVUaHVtYm5haWx7cGFkZGluZzo2cHggMTJweH0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsU3RhY2t7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luLXRvcDotMXB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxIb3N0Om5vdCgueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGl0bGVIaWRkZW4pIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWxTdGFja3ttYXJnaW4tbGVmdDo4cHh9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEZhZGVkVGh1bWJuYWlse2hlaWdodDoycHg7bWFyZ2luLWJvdHRvbToxcHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoycHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MnB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTbWFsbEZhZGVkVGh1bWJuYWlse3dpZHRoOjEwcHg7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMyl9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbExhcmdlRmFkZWRUaHVtYm5haWx7d2lkdGg6MjBweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC43KX0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MzZweDtoZWlnaHQ6MjBweDtib3JkZXI6MnB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6OHB4O292ZXJmbG93OmhpZGRlbn0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsU2luZ2xlVGh1bWJuYWlsIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWxDb250YWluZXJ7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDtib3JkZXI6bm9uZTtvdXRsaW5lOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6OHB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWx7ZGlzcGxheTpibG9ja30ueXRtU2xpbU1ldGFkYXRhQnV0dG9uUmVuZGVyZXJIb3N0e21hcmdpbi1yaWdodDoxMnB4fXl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnN7bWFyZ2luLXJpZ2h0OjEycHh9eXRtLXNsaW0tbWV0YWRhdGEtdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9ucyAuYnV0dG9uLXJlbmRlcmVyLXRleHR7ZGlzcGxheTpub25lfXl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnMgLmJ1dHRvbi1yZW5kZXJlcnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O21pbi13aWR0aDphdXRvO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMyk7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luOjB9eXRtLXNsaW0tbWV0YWRhdGEtdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9ucyAuYnV0dG9uLXJlbmRlcmVyLWljb257d2lkdGg6MjBweDtoZWlnaHQ6MjBweH0uZnVsbHNjcmVlbi1jb250cm9sc3stLWNvbnRyb2xzLWhlaWdodDoyMTVweDtib3R0b206Y2FsYyh2YXIoLS1jb250cm9scy1oZWlnaHQpKi0xKTtsZWZ0OjA7cmlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6dmFyKC0tY29udHJvbHMtaGVpZ2h0KTt6LWluZGV4OjI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MTJweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmZ1bGxzY3JlZW4tY29udHJvbHMtdmlkZW8tdGl0bGV7Y29sb3I6I2ZmZn0uZnVsbHNjcmVlbi1jb250cm9scy5leHBhbmRlZHtib3R0b206MH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcnstbW96LWJveC1mbGV4OjE7ZmxleDoxO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93LXg6YXV0bzstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtzY3JvbGxiYXItd2lkdGg6bm9uZX0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfUBtZWRpYSAocG9pbnRlcjpmaW5lKXsuZnVsbHNjcmVlbi1jb250cm9sc3stLWNvbnRyb2xzLWhlaWdodDoyMjhweH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcntzY3JvbGxiYXItd2lkdGg6YXV0bzstbXMtb3ZlcmZsb3ctc3R5bGU6YXV0bztvdmVyZmxvdy15OmF1dG99LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb25zLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjE2cHh9LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb25zLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6IzYwNjA2MH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojOTA5MDkwfS5mdWxsc2NyZWVuLXJlY29tbWVuZGF0aW9ucy13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5OmJsb2NrfX0uZnVsbHNjcmVlbi1idXR0b25zLXdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjQ0cHh9LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb257d2lkdGg6MjAwcHg7bWluLXdpZHRoOjIwMHB4O21hcmdpbjowIDhweH0udG9wLWZ1bGxzY3JlZW4tY29udHJvbHN7cGFkZGluZzoxMnB4O2NvbG9yOiNmZmY7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo2fS5mdWxsc2NyZWVuLWNsb3NlLWJ1dHRvbi13cmFwcGVye21hcmdpbi10b3A6LThweDttYXJnaW4tbGVmdDphdXRvfS5mdWxsc2NyZWVuLWFjdGlvbi1tZW51e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMnB4O2hlaWdodDo0OHB4O2xlZnQ6MjRweDtyaWdodDoyNHB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ei1pbmRleDoyfS5hY3Rpb24tbWVudS1lbmdhZ2VtZW50LWJ1dHRvbnMtd3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtib3JkZXItcmFkaXVzOjQ4cHg7cGFkZGluZzo0cHggMDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyIGJ1dHRvbnt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyIHN2Z3tmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyPjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo4cHh9LmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnUsLmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnUgLnl0QXR0cmlidXRlZFN0cmluZ0hvc3QsLmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb257Y29sb3I6I2ZmZn0uZnVsbHNjcmVlbi13YXRjaC1uZXh0LWVudHJ5cG9pbnQtd3JhcHBlcnttYXJnaW4tbGVmdDphdXRvO2hlaWdodDoxMDAlfS5mdWxsc2NyZWVuLW1vcmUtdmlkZW9zLWVuZHBvaW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS5zdGFja2VkLXZpZGVvcy13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mjt3aWR0aDo2NHB4O2hlaWdodDoxMDAlfS5zdGFja2VkLXZpZGVvLXByZXZpZXd7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7YmFja2dyb3VuZDpibGFjaztib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6M3B4O292ZXJmbG93OmhpZGRlbjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnN0YWNrZWQtdmlkZW8tcHJldmlldyAuc3RhY2tlZC12aWRlby1wcmV2aWV3LWltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0uc3RhY2tlZC12aWRlby1wcmV2aWV3OmZpcnN0LWNoaWxke3otaW5kZXg6M30uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgyKXt6LWluZGV4OjI7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTRweCkgc2NhbGUoLjg3NSl9LnN0YWNrZWQtdmlkZW8tcHJldmlldzpudGgtY2hpbGQoMikgLnN0YWNrZWQtdmlkZW8tcHJldmlldy1pbWFnZXtvcGFjaXR5Oi43NX0uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgzKXt6LWluZGV4OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLThweCkgc2NhbGUoLjc1KX0uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgzKSAuc3RhY2tlZC12aWRlby1wcmV2aWV3LWltYWdle29wYWNpdHk6LjV9Lm1vcmUtdmlkZW9zLW1lc3NhZ2V7bWFyZ2luLXJpZ2h0OjEycHg7dGV4dC1hbGlnbjpyaWdodH0ubW9yZS12aWRlb3MtbWVzc2FnZS10aXRsZXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4fS5tb3JlLXZpZGVvcy1tZXNzYWdlLXN1YnRpdGxle2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjE0cHg7b3BhY2l0eTouN30ucXVpY2stYWN0aW9ucy13cmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjEwMCU7bWFyZ2luLWxlZnQ6YXV0b30ucXVpY2stYWN0aW9ucy1iYXItYnV0dG9ucy13cmFwcGVye3BhZGRpbmctbGVmdDoxMnB4fS53YXRjaC1vbi15b3V0dWJlLWJ1dHRvbi13cmFwcGVye2RpcmVjdGlvbjpsdHJ9QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsud2F0Y2gtb24teW91dHViZS1idXR0b24td3JhcHBlciAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdHtoZWlnaHQ6NDBweDtwYWRkaW5nOjAgMjBweH19LndhdGNoLW9uLXlvdXR1YmUtYnV0dG9ue3BhZGRpbmctbGVmdDo0cHh9Lm5vLWxhYmVsLWV4cCB5dG0tc2xpbS1tZXRhZGF0YS1idXR0b24tcmVuZGVyZXIsLm5vLWxhYmVsLWV4cCB5dG0tc2xpbS1tZXRhZGF0YS10b2dnbGUtYnV0dG9uLXJlbmRlcmVyLmNpcmNsZS1idXR0b25zLC5uby1sYWJlbC1leHA+eXRtLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9uc3ttYXJnaW4tcmlnaHQ6OHB4fVtkaXI9cnRsXSAubm8tbGFiZWwtZXhwIHl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnMubGlrZS1idXR0b24tbm8tbGFiZWwtZXhwe2RpcmVjdGlvbjpydGx9QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5mcy13YXRjaC1zeXN0ZW06bm90KC5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbik6bm90KC5lbmFibGUtZnVsbHNjcmVlbi1jb250cm9scy1mb3ItcG9ydHJhaXQpIC5mdWxsc2NyZWVuLWFjdGlvbi1tZW51LC5mcy13YXRjaC1zeXN0ZW06bm90KC5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbik6bm90KC5lbmFibGUtZnVsbHNjcmVlbi1jb250cm9scy1mb3ItcG9ydHJhaXQpIC5mdWxsc2NyZWVuLWNvbnRyb2xze2Rpc3BsYXk6bm9uZX19eXRtLWN1c3RvbS1jb250cm9sIC5pY29uLWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6MTJweH1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS1jdXN0b20tY29udHJvbCAuaWNvbi1idXR0b246bm90KC5wbGF5ZXItc2V0dGluZ3MtaWNvbil7aGVpZ2h0OjQwcHg7d2lkdGg6NDBweDtwYWRkaW5nOjhweH15dG0tY3VzdG9tLWNvbnRyb2wgLmljb24tYnV0dG9uOm5vdCgucGxheWVyLXNldHRpbmdzLWljb24pPmMzLWljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH19eXRtLWN1c3RvbS1jb250cm9sIC5hdXRvbmF2LXVzZXItZWR1Y2F0aW9uLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MjUlO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Y29sb3I6I2ZmZn0uaW50ZXJjZXB0LWVsZW1lbnQtY2xpY2tzIC5wbGF5ZXItY29udHJvbHMtYm90dG9tLC5pbnRlcmNlcHQtZWxlbWVudC1jbGlja3MgLnBsYXllci1jb250cm9scy1taWRkbGUsLmludGVyY2VwdC1lbGVtZW50LWNsaWNrcyAucGxheWVyLWNvbnRyb2xzLXRvcCwuaW50ZXJjZXB0LWVsZW1lbnQtY2xpY2tzIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntwb2ludGVyLWV2ZW50czpub25lfXl0bS1jdXN0b20tY29udHJvbCAuZmluZS1zY3J1YmJpbmctb3ZlcmxheSAuaWNvbi1idXR0b24+YzMtaWNvbiBzdmcgcGF0aCx5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1ib3R0b20gLmZ1bGxzY3JlZW4taWNvbiBjMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLWJvdHRvbSAuaWNvbi1idXR0b24+YzMtaWNvbiBzdmcgcGF0aCx5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uIGMzLWljb24gc3ZnIHBhdGgseXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtcGIgLmljb24tYnV0dG9uPmMzLWljb24seXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtdG9wIC5pY29uLWJ1dHRvbj5jMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcCB5dG0tY2xvc2VkLWNhcHRpb25pbmctYnV0dG9uIGJ1dHRvblthcmlhLXByZXNzZWQ9ZmFsc2VdPmMzLWljb24gc3ZnIHBhdGgseXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtdG9wIHl0bS1jbG9zZWQtY2FwdGlvbmluZy1idXR0b24gYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXT5jMy1pY29uIHN2ZyBwYXRoe2ZpbGw6I2ZmZn15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uLmljb24tZGlzYWJsZSBjMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcCB5dG0tY2xvc2VkLWNhcHRpb25pbmctYnV0dG9uIGJ1dHRvbj5jMy1pY29uIHN2ZyBwYXRoe2ZpbGw6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4OjI7cmlnaHQ6MjRweH1AbWVkaWEgKG1heC1oZWlnaHQ6MjIxcHgpe3l0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtyaWdodDowfX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7bGVmdDowfUBtZWRpYSAobWluLXdpZHRoOjM4MHB4KXt5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7bGVmdDoxNHB4fX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AtcmlnaHR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9W2Rpcj1ydGxdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLWJhY2tncm91bmQsW2Rpcj1ydGxdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtkaXJlY3Rpb246cnRsfWJvZHlbZmF1eC1mdWxsc2NyZWVuPXRydWVdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHt0b3A6ZW52KHNhZmUtYXJlYS1pbnNldC10b3ApfXl0bS1jdXN0b20tY29udHJvbCBjMy1vdmVybGF5e3Zpc2liaWxpdHk6dmlzaWJsZX0jcGxheWVyLWNvbnRyb2wtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtY29udGVudHtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47dmlzaWJpbGl0eTpoaWRkZW59I3BsYXllci1jb250cm9sLW92ZXJsYXkudXNlLW9wYWNpdHkgLnBsYXllci1jb250cm9scy1jb250ZW50e29wYWNpdHk6MDt2aXNpYmlsaXR5OnVuc2V0fSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt6LWluZGV4OjA7b3BhY2l0eTowfSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZDpub3QoLmZ1bGxzY3JlZW4tcmVjcy1leHBhbmRlZCl7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwwLDAsLjYpIDAscmdiYSgwLDAsMCwuNTQpIDI1JSxyZ2JhKDAsMCwwLC4zNikgNTAlLHJnYmEoMCwwLDAsLjE4KSA3NSUscmdiYSgwLDAsMCwwKSk7YmFja2dyb3VuZC1zaXplOjFweCA1MCU7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXh9I3BsYXllci1jb250cm9sLW92ZXJsYXkgLnBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kLmZ1bGxzY3JlZW4tcmVjcy1leHBhbmRlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0jcGxheWVyLWNvbnRyb2wtb3ZlcmxheSAucGxheWVyLWNvbnRyb2xzLWJhY2tncm91bmQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt0b3A6MDt2aXNpYmlsaXR5OnZpc2libGV9I3BsYXllci1jb250cm9sLW92ZXJsYXkgLnBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kLWFjdGlvbi1pdGVtc3twb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjJ9I3BsYXllci1jb250cm9sLW92ZXJsYXkuYW5pbWF0aW9uLWVuYWJsZWR7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjdzO3RyYW5zaXRpb24tcHJvcGVydHk6YWxsfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmFuaW1hdGlvbi1lbmFibGVkIC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMnN9I3BsYXllci1jb250cm9sLW92ZXJsYXkucG9pbnRlci1ldmVudHMtb2Zme3BvaW50ZXItZXZlbnRzOm5vbmV9I3BsYXllci1jb250cm9sLW92ZXJsYXkuZmFkZWlue3BvaW50ZXItZXZlbnRzOmF1dG99I3BsYXllci1jb250cm9sLW92ZXJsYXkuZmFkZWluIC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHt6LWluZGV4OjI7b3BhY2l0eToxfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmZhZGVpbiAucGxheWVyLWNvbnRyb2xzLWNvbnRlbnR7dmlzaWJpbGl0eTp2aXNpYmxlfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmZhZGVpbi51c2Utb3BhY2l0eSAucGxheWVyLWNvbnRyb2xzLWNvbnRlbnR7b3BhY2l0eToxO3Zpc2liaWxpdHk6dW5zZXR9I3BsYXllci1jb250cm9sLW92ZXJsYXkuaGlkZGVue2Rpc3BsYXk6bm9uZX1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAud2F0Y2gtcGFnZS1wcm9ncmVzcy1iYXJ7bGVmdDoyNHB4O3JpZ2h0OjI0cHh9Ym9keVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLmVuYWJsZS1mdWxsc2NyZWVuLWNvbnRyb2xzIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntib3R0b206MzBweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAuZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMuZnMtd2F0Y2gtc3lzdGVtIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntib3R0b206NTBweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFye2JvdHRvbTo1MnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206ODJweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnV7bGVmdDoxMnB4O3JpZ2h0OjEycHh9QG1lZGlhIChtaW4td2lkdGg6MzgwcHgpey5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAuZnVsbHNjcmVlbi1hY3Rpb24tbWVudXtsZWZ0OjMwcHg7cmlnaHQ6MzBweH19QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsuZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFye2JvdHRvbTozMnB4O3otaW5kZXg6MztoZWlnaHQ6NDBweDtsZWZ0OjEycHg7cmlnaHQ6MTJweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFyIC55dFBsYXllclByb2dyZXNzQmFyRHJhZ0NvbnRhaW5lcnstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZW5kfS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAud2F0Y2gtcGFnZS1wcm9ncmVzcy1iYXIgLnl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0JhcntwYWRkaW5nLWJvdHRvbToxMnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206NThweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLnBsYXllci1jb250cm9scy1ib3R0b20ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS1sZWZ0e2xlZnQ6MDtyaWdodDo0NHB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbS5wbGF5ZXItY29udHJvbHMtYm90dG9tLXJpZ2h0e2xlZnQ6dW5zZXQ7cmlnaHQ6MDt6LWluZGV4OjR9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5mdWxsc2NyZWVuLWFjdGlvbi1tZW51e2xlZnQ6MnB4O3JpZ2h0OjJweDtib3R0b206MnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAuZnVsbHNjcmVlbi1tb3JlLXZpZGVvcy1lbmRwb2ludHttYXJnaW4tdG9wOjEycHh9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5zdGFja2VkLXZpZGVvLXByZXZpZXcsLmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5zdGFja2VkLXZpZGVvcy13cmFwcGVye3dpZHRoOjQycHg7aGVpZ2h0OjI0cHh9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5wbGF5ZXItdGltZS1jaGFwdGVyLXRpdGxle2Rpc3BsYXk6bm9uZX19LnBsYXllci1jb250cm9scy1oaWRle2Rpc3BsYXk6bm9uZX0ueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlIb3N0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5QnJhbmRpbmdJY29ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2cHg7cmlnaHQ6MTJweDtjb2xvcjojZmZmfVtkaXI9cnRsXSAueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlCcmFuZGluZ0ljb257bGVmdDoxMnB4O3JpZ2h0OmF1dG99Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5QmFja2dyb3VuZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUFjdGlvbk1lbnV7b3BhY2l0eToxO3Zpc2liaWxpdHk6dmlzaWJsZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTphbGx9Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5SGlkZUFjdGlvbk1lbnV7b3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVufS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTVweDtyaWdodDoxMnB4fVtkaXI9cnRsXSAueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlFcXVhbGl6ZXJ7bGVmdDoxMnB4O3JpZ2h0OmF1dG99QGtleWZyYW1lcyB5dG0tZXF1YWxpemVyLWFuaW1hdGlvbnswJXt0cmFuc2Zvcm06c2NhbGVZKDEpfTUwJXt0cmFuc2Zvcm06c2NhbGVZKC41KX10b3t0cmFuc2Zvcm06c2NhbGVZKDEpfX0ueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlFcXVhbGl6ZXIgLnl0bS1lcXVhbGl6ZXItYmFyLWxlZnQsLnl0bU11dGVkQXV0b3BsYXlPdmVybGF5RXF1YWxpemVyIC55dG0tZXF1YWxpemVyLWJhci1taWRkbGUsLnl0bU11dGVkQXV0b3BsYXlPdmVybGF5RXF1YWxpemVyIC55dG0tZXF1YWxpemVyLWJhci1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDt0cmFuc2Zvcm0tb3JpZ2luOjhweCAxNnB4Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo4cHggMTZweDthbmltYXRpb24tbmFtZTp5dG0tZXF1YWxpemVyLWFuaW1hdGlvbjthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItbGVmdHthbmltYXRpb24tZHVyYXRpb246LjVzfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItbWlkZGxle2FuaW1hdGlvbi1kdXJhdGlvbjoxLjNzfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItcmlnaHR7YW5pbWF0aW9uLWR1cmF0aW9uOi43c30ueXRTaG9ydHNUb3VjaEZlZWRiYWNrSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dFNob3J0c1RvdWNoRmVlZGJhY2tIaWRkZW57ZGlzcGxheTpub25lfS55dFNob3J0c1RvdWNoRmVlZGJhY2tUb3VjaEZlZWRiYWNre2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9uV3JhcHBlcnt3aWR0aDoyNDBweDtoZWlnaHQ6MjQwcHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9ue3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0U2hvcnRzVG91Y2hGZWVkYmFja1BsYXlQYXVzZUFuaW1hdGlvbnt3aWR0aDo5NnB4O2hlaWdodDo5NnB4fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVySG9zdHtvdmVyZmxvdy15OnNjcm9sbH19Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyU2NyaW1Db250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDo1fS5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRhaW5lcntib3JkZXItcmFkaXVzOjIwcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO21hcmdpbjowIDhweCAyNHB4O21heC13aWR0aDo0MDBweDtkaXNwbGF5OmJsb2NrO292ZXJmbG93OnNjcm9sbH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJIZWFkZXJ7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTQwcHg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjIwcHggMDt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MTJweH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDZW50cmFsSWNvbntoZWlnaHQ6NjVweDt3aWR0aDo2NXB4O2NvbG9yOiNmMDM7YmFja2dyb3VuZC1jb2xvcjojZmZmO3BhZGRpbmc6MTVweDtib3JkZXItcmFkaXVzOjQ1cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ2xvc2V7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwcHg7cmlnaHQ6MTBweDtib3JkZXItcmFkaXVzOjI0cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyRHJhZ0hhbmRsZXtiYWNrZ3JvdW5kOiMwMzAzMDM7b3BhY2l0eTouMTU7Ym9yZGVyLXJhZGl1czo0cHg7aGVpZ2h0OjRweDttYXJnaW46MCBhdXRvO3dpZHRoOjQwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjhweH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDb250ZW50c3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzoyNHB4fS5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRlbnRzPmRpdntwYWRkaW5nLWJvdHRvbTo2cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ29udGVudHM+eXRtLWJ1dHRvbi1yZW5kZXJlcntwYWRkaW5nLXRvcDo2cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyVGl0bGV7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtfUBtZWRpYSAobWluLXdpZHRoOjMwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyVGl0bGV7bGV0dGVyLXNwYWNpbmc6LjAwNWVtfX0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJTdWJ0aXRsZXtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjEuOHJlbX1AbWVkaWEgKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6MzAwcHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlclN1YnRpdGxle2xldHRlci1zcGFjaW5nOi4wMWVtfX0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJPdmVybGF5Q29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3otaW5kZXg6NTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjEwMCV9QG1lZGlhIChtYXgtd2lkdGg6OTMwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsuWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJPdmVybGF5Q29udGFpbmVye3RvcDowfX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyT3ZlcmxheUNvbnRhaW5lcntib3R0b206NTAlfX1AbWVkaWEgKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlck92ZXJsYXlDb250YWluZXJ7Ym90dG9tOjI1JX19QG1lZGlhIChtYXgtaGVpZ2h0OjUwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyT3ZlcmxheUNvbnRhaW5lcntib3R0b206MH19W2JvdHRvbS1zaGVldC1vdmVybGF5LWJvZHktb3Blbl17cG9zaXRpb246Zml4ZWQ7bGVmdDowO3JpZ2h0OjA7dG9wOjA7b3ZlcmZsb3c6aGlkZGVufS55dG0tZm9yY2VkLW11dGUtbWVzc2FnZSAuYnV0dG9uLXdpdGgtaWNvbi1pbm5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTtib3JkZXI6MXB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czozcHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjZweH0ueXRtLWZvcmNlZC1tdXRlLW1lc3NhZ2UgLmJ1dHRvbi13aXRoLWljb24taW5uZXIgYzMtaWNvbntoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlci5pdGVte21hcmdpbi10b3A6MH15dG0taW5mby1wYW5lbC1jb250YWluZXItcmVuZGVyZXJ7YmFja2dyb3VuZC1jb2xvcjojZGVmMWZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn15dG0taW5mby1wYW5lbC1jb250YWluZXItcmVuZGVyZXJbYmFja2dyb3VuZD1JTkZPX1BBTkVMX0NPTlRBSU5FUl9CQUNLR1JPVU5EX1NZU1RFTV06Zmlyc3QtY2hpbGR7Ym9yZGVyOm5vbmV9eXRtLWluZm8tcGFuZWwtY29udGFpbmVyLXJlbmRlcmVyW2JhY2tncm91bmQ9SU5GT19QQU5FTF9DT05UQUlORVJfQkFDS0dST1VORF9TWVNURU1de2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlcltiYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEFJTkVSX0JBQ0tHUk9VTkRfR1JBWV17YmFja2dyb3VuZC1jb2xvcjojZmZmfXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlcltiYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEFJTkVSX0JBQ0tHUk9VTkRfT1ZFUkxBWV9CTEFDS117YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNil9Lnl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXJ7aGVpZ2h0OjM2cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dG0taW5mby1wYW5lbC1jb250YWluZXItaGVhZGVyLWxlZnQtaXRlbXN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRtLWluZm8tcGFuZWwtY29udGFpbmVyLWhlYWRlci1pY29ue21hcmdpbi1sZWZ0OjE2cHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdFt5dG0taW5mby1wYW5lbC1jb250ZW50LWhhcy1tZW51PXRydWVde2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbeXRtLWluZm8tcGFuZWwtY29udGVudC1oYXMtbWVudT10cnVlXSAueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyV3JhcHBlcntwYWRkaW5nLWJvdHRvbToxMnB4fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RJc1dhdGNoSW5mb1BhbmVse21hcmdpbjoxMnB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdFt5dG0taW5mby1wYW5lbC1jb250ZW50LXRydW5jYXRlLXBhcmFncmFwaHM9dHJ1ZV0gLnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlclBhcmFncmFwaHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczstd2Via2l0LWxpbmUtY2xhbXA6M30ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdFtkYXRhLWJhY2tncm91bmQ9SU5GT19QQU5FTF9DT05URU5UX0JBQ0tHUk9VTkRfT1ZFUkxBWV9CTEFDS10gLnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcklubGluZVNvdXJjZXtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjUwMH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdFtkYXRhLWJhY2tncm91bmQ9SU5GT19QQU5FTF9DT05URU5UX0JBQ0tHUk9VTkRfQkxVRV17YmFja2dyb3VuZC1jb2xvcjojZGVmMWZmfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RDaW5lbWF0aWNCYWNrZ3JvdW5ke2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJXcmFwcGVye3BhZGRpbmc6MTJweCAxNnB4IDE2cHggMTZweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyV3JhcHBlcltkYXRhLWhhcy1pY29uPXRydWVde3BhZGRpbmc6MTRweCAxMnB4fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJCb2R5e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUZXh0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaXRsZUNvbnRhaW5lcntjb2xvcjojMDY1ZmQ0O21hcmdpbi1ib3R0b206NHB4O2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyVGl0bGVDb250YWluZXJ7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyVGl0bGVDb250YWluZXJ7bWF4LWhlaWdodDo0cmVtfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJMaW5rSWNvbntwYWRkaW5nLWxlZnQ6MXB4O3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7dmVydGljYWwtYWxpZ246dGV4dC10b3B9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlck1ldGFkYXRhe21hcmdpbi1ib3R0b206NHB4O2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlclB1Ymxpc2hUaW1le2Rpc3BsYXk6aW5saW5lO2NvbG9yOiM2MDYwNjA7cGFkZGluZy1sZWZ0OjNweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyUGFyYWdyYXBoe2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcklubGluZVNvdXJjZXtkaXNwbGF5OmlubGluZS1ibG9jaztjb2xvcjojMDY1ZmQ0O3BhZGRpbmctbGVmdDoycHh9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcklubGluZVNvdXJjZVRleHR7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlclRodW1ibmFpbHtmbGV4LXNocmluazowO2hlaWdodDo2NHB4O3dpZHRoOjY0cHg7bWFyZ2luLWxlZnQ6OHB4fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJFbmRwb2ludHt3aWR0aDoxMDAlfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIZWFkZXJSaWdodEl0ZW1ze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySGVhZGVySWNvbnttYXJnaW4tbGVmdDo0cHg7bWFyZ2luLXJpZ2h0OjRweDtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJNZW51e2Rpc3BsYXk6YmxvY2t9Lnl0bUxvZ29FbnRpdHlIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjQ4cHh9Lnl0bUxvZ29FbnRpdHlDb250YWluZXJ7d2lkdGg6MTIycHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0bUxvZ29FbnRpdHlMb2dve3BhZGRpbmc6MDtoZWlnaHQ6NDhweDt3aWR0aDphdXRvO2NvbG9yOnVuc2V0fS5wbGF5ZXJJbnRlcnN0aXRpYWxSZW5kZXJlckhvc3R7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOiM2MDYwNjB9LnBsYXllckludGVyc3RpdGlhbFJlbmRlcmVyU2NyaW17d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLC40KSAwLHJnYmEoMCwwLDAsLjYpIDc1JSxyZ2JhKDAsMCwwLC42KSl9Lnl0QmlnYm9hcmRTdG9yeWJvYXJkSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO292ZXJmbG93OmhpZGRlbn0ueXRtQTExeVN0eWxlc0hpZGRlbkJ1dHRvbntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH0ueXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbkhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHh9Lnl0bUNsb3NlZENhcHRpb25pbmdCdXR0b25JY29uRGlzYWJsZWR7Y29sb3I6IzkwOTA5MH0ueXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbkljb25EaXNhYmxlZE92ZXJsYXl7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfS55dG1DbG9zZWRDYXB0aW9uaW5nQnV0dG9uWXRJY29uT3ZlcmxheXtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLDAuOCkpfS55dG1DbG9zZWRDYXB0aW9uaW5nQnV0dG9uQnV0dG9ue2N1cnNvcjpwb2ludGVyO3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7cGFkZGluZzoxMnB4O2JvcmRlcjpub25lO291dGxpbmU6bm9uZTtmb250OmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDtjb2xvcjppbmhlcml0O2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Lnl0bUNyZWF0b3JFbmRzY3JlZW5Ib3N0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2ZvbnQtc2l6ZToxLjJyZW07dmlzaWJpbGl0eTpoaWRkZW59Lnl0bUNyZWF0b3JFbmRzY3JlZW5JbkN1ZVJhbmdle3Zpc2liaWxpdHk6dmlzaWJsZX0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTN7Zm9udC1zaXplOjEuNHJlbX0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwe2ZvbnQtc2l6ZToxLjhyZW19Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMHtmb250LXNpemU6Mi40cmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuRWxlbWVudHtwb3NpdGlvbjphYnNvbHV0ZTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dG1DcmVhdG9yRW5kc2NyZWVuRWxlbWVudFZpc2libGV7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0bUNyZWF0b3JFbmRzY3JlZW5TY3JpbXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRtQ3JlYXRvckVuZHNjcmVlblNjcmltVmlzaWJsZXtvcGFjaXR5Oi4yNX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudEhvc3R7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3RyYW5zaXRpb246ei1pbmRleCAuMnMgc3RlcC1lbmQ7ei1pbmRleDo2O3Bvc2l0aW9uOnJlbGF0aXZlfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50SG9zdEFjdGl2ZXt0cmFuc2l0aW9uOnotaW5kZXggLjJzIHN0ZXAtc3RhcnQ7ei1pbmRleDo3fS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlse2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym94LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsMC42KX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFJvdW5ke2JvcmRlci1yYWRpdXM6NTAlfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC44KTtoZWlnaHQ6MTAwJTtwYWRkaW5nOjhweDttYXJnaW46LThweDtvcGFjaXR5OjA7dHJhbnNpdGlvbjphbGwgLjJzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDUsMCwwLDEpO2NvbG9yOiNmZmY7dmlzaWJpbGl0eTpoaWRkZW47YWxpZ24tY29udGVudDpjZW50ZXI7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufS55dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdTbWFsbCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXl7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5Sb3VuZGluZ01lZGl1bSAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXl7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5Sb3VuZGluZ0xhcmdlIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheXtib3JkZXItcmFkaXVzOjEycHh9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5UmlnaHR7bGVmdDowfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVJpZ2h0QWN0aXZle3BhZGRpbmctbGVmdDpjYWxjKDEwMCUgKyA4cHgpfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUxlZnR7cmlnaHQ6MH0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlMZWZ0QWN0aXZle3BhZGRpbmctcmlnaHQ6Y2FsYygxMDAlICsgOHB4KX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlMZWZ0QWN0aXZlLC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVJpZ2h0QWN0aXZle29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGU7bWF4LXdpZHRoOm5vbmV9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHt3aWR0aDoxMTVweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luLWxlZnQ6MTJweDttYXJnaW4tcmlnaHQ6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlBY3RpdmVSaWdodCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6MTJweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU0MjYgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU0NzAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU1MDYgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU1NzAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHt3aWR0aDoxMzZweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU0MjYgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDI2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWFyZ2luLWxlZnQ6MTJweDttYXJnaW4tcmlnaHQ6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTY0MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e3dpZHRoOjEzNnB4O21hcmdpbi1sZWZ0OjE2cHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNjQwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDoxNnB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e3dpZHRoOjE3NnB4O21hcmdpbi1sZWZ0OjE2cHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDoxNnB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTEyODAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHt3aWR0aDoyNjRweDttYXJnaW4tbGVmdDozMnB4O21hcmdpbi1yaWdodDoxNnB4fS55dG1DcmVhdG9yRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlBY3RpdmVSaWdodCAueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWFyZ2luLWxlZnQ6MTZweDttYXJnaW4tcmlnaHQ6MzJweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7d2lkdGg6MzkycHg7bWFyZ2luLWxlZnQ6NDhweDttYXJnaW4tcmlnaHQ6MjRweH0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjI0cHg7bWFyZ2luLXJpZ2h0OjQ4cHh9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHttYXgtaGVpZ2h0OjEwMCU7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlUaXRsZXtmb250LXNpemU6MS4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxLjI1O21hcmdpbi1ib3R0b206MnB4O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoyfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlUaXRsZXtmb250LXNpemU6MS42cmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTEyODAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGV7Zm9udC1zaXplOjJyZW19Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlUaXRsZXtmb250LXNpemU6Mi40cmVtfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YVdlYnNpdGV7Zm9udC1zaXplOjEuMnJlbTttYXJnaW4tdG9wOjRweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsLC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YVdlYnNpdGV7Zm9udC1zaXplOjEuNnJlbX0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhV2Vic2l0ZXtmb250LXNpemU6MS44cmVtO21hcmdpbi10b3A6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsLC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFXZWJzaXRle2ZvbnQtc2l6ZToycmVtO21hcmdpbi10b3A6MTJweH0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWx7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjIpO3BhZGRpbmctdG9wOjRweDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6M30ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU2NDAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsey13ZWJraXQtbGluZS1jbGFtcDoyfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTU3MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWx7LXdlYmtpdC1saW5lLWNsYW1wOjF9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMzQ2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU0MjYgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsLC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTQ3MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWwsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNTA2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbHtkaXNwbGF5Om5vbmV9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFXZWJzaXRle3doaXRlLXNwYWNlOm5vd3JhcH0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDYWxsVG9BY3Rpb257Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZToxcmVtO3RyYW5zaXRpb246YWxsIC4yc30ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDYWxsVG9BY3Rpb246aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtjdXJzb3I6cG9pbnRlcn0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlCdXR0b257bWFyZ2luLXRvcDo0cHg7bWFyZ2luLWJvdHRvbTo0cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMzQ2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUJ1dHRvbntkaXNwbGF5Om5vbmV9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRTY3JpbXtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQtY29sb3I6IzAwMDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmJsb2NrO3otaW5kZXg6NjtvcGFjaXR5OjA7dHJhbnNpdGlvbjphbGwgLjJzfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50U2NyaW1DaGFubmVse2JvcmRlci1yYWRpdXM6NTAlfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50U2NyaW1BY3RpdmV7b3BhY2l0eTouMjV9Lnl0d0FuaW1hdGVkU3Vic2NyaWJlQnV0dG9uSG9zdHt3aWR0aDoxMDAlfS55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkNvbnRlbnRDb250YWluZXJ7d2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXJhZGl1czoxOHB4fS55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkZsZXhDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudH0ueXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25DYW5BbmltYXRle3RyYW5zaXRpb246d2lkdGggLjVzIGVhc2V9Lnl0d0FuaW1hdGVkU3Vic2NyaWJlQnV0dG9uU3RhdGljV2lkdGggLnl0d0FuaW1hdGVkU3Vic2NyaWJlQnV0dG9uRmxleENvbnRhaW5lcnt3aWR0aDphdXRvfS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50SG9zdHtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2JveC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLDAuNik7dHJhbnNpdGlvbjphbGwgLjJzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMDUsMCwwLDEpO3otaW5kZXg6NX0ueXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nU21hbGwgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRIb3N0e2JvcmRlci1yYWRpdXM6NHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdNZWRpdW0gLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRIb3N0e2JvcmRlci1yYWRpdXM6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdMYXJnZSAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudEhvc3R7Ym9yZGVyLXJhZGl1czoxMnB4fS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50SG9zdEFjdGl2ZXtib3JkZXItY29sb3I6I2ZmZn0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRvcE92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCU7aGVpZ2h0OjMzJX0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbFRpdGxle2NvbG9yOiNmZmY7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1zaXplOjEuMnJlbTtmb250LXdlaWdodDo1MDA7bWFyZ2luOjZweCA4cHggMDtsaW5lLWhlaWdodDoxLjI1O3RleHQtc2hhZG93OjAgMXB4IDAgcmdiYSgwLDAsMCwwLjMpO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6Mjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTY0MCAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbFRpdGxle2ZvbnQtc2l6ZToxLjRyZW19Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlsVGl0bGV7Zm9udC1zaXplOjEuNnJlbTttYXJnaW46MTBweCAxMnB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTEyODAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWxUaXRsZXtmb250LXNpemU6MnJlbTttYXJnaW46MTRweCAxNnB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWxUaXRsZXtmb250LXNpemU6Mi40cmVtO21hcmdpbjoxOHB4IDIwcHh9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWx7b2JqZWN0LWZpdDpjb3Zlcn0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXN7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MH0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMgLnl0QmFkZ2VTaGFwZUhvc3R7Zm9udC1zaXplOmluaGVyaXR9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGltZVN0YXR1cyAueXRCYWRnZVNoYXBlSG9zdHtwYWRkaW5nOjJweCA0cHg7bWFyZ2luLWJvdHRvbToycHg7bWFyZ2luLXJpZ2h0OjJweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGltZVN0YXR1cyAueXRCYWRnZVNoYXBlSG9zdHtwYWRkaW5nOjZweCA4cHg7bWFyZ2luLWJvdHRvbTo4cHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGltZVN0YXR1cyAueXRCYWRnZVNoYXBlSG9zdHtwYWRkaW5nOjEwcHggMTJweDttYXJnaW4tYm90dG9tOjE2cHg7bWFyZ2luLXJpZ2h0OjE2cHh9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUb3BHcmFkaWVudHtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5Oi44O2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYigwLDAsMCksdHJhbnNwYXJlbnQpfS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGhPdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjJweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGhPdmVybGF5e3BhZGRpbmc6NHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTEyODAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdExlbmd0aE92ZXJsYXl7cGFkZGluZzo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMCAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFBsYXlsaXN0TGVuZ3RoT3ZlcmxheXtwYWRkaW5nOjEycHh9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdExlbmd0aHtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdEljb257Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpO21hcmdpbjowIDJweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdEljb257bWFyZ2luOjAgNHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTEyODAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdEljb257bWFyZ2luOjAgOHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdEljb257bWFyZ2luOjAgMTJweH0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFNjcmlte2JhY2tncm91bmQtY29sb3I6IzAwMDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmJsb2NrO3otaW5kZXg6NTtvcGFjaXR5OjA7dHJhbnNpdGlvbjphbGwgLjJzfS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50U2NyaW1BY3RpdmV7b3BhY2l0eTouMjV9Lnl0UGZwQXV0b25hdkhvc3R7cG9pbnRlci1ldmVudHM6bm9uZTtkaXNwbGF5OmJsb2NrfS55dFBmcEF1dG9uYXZWaXNpYmxle3BvaW50ZXItZXZlbnRzOmF1dG87YmFja2dyb3VuZDpibGFja30ueXRQZnBBdXRvbmF2U2NyaW17cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC42KTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOndoaXRlO3BvaW50ZXItZXZlbnRzOmF1dG99Lnl0UGZwQXV0b25hdkhlYWRlcntmb250LXNpemU6MTRweDttYXJnaW4tYm90dG9tOjhweH0ueXRQZnBBdXRvbmF2VGl0bGV7Zm9udC1zaXplOjI0cHg7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1ib3R0b206NHB4fS55dFBmcEF1dG9uYXZCeWxpbmV7Zm9udC1zaXplOjE2cHg7bWFyZ2luLWJvdHRvbToyNHB4fS55dFBmcEF1dG9uYXZCeWxpbmUsLnl0UGZwQXV0b25hdlRpdGxle21heC13aWR0aDo4MCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS55dFBmcEF1dG9uYXZQbGF5QnV0dG9ue3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjcycHg7aGVpZ2h0OjcycHg7bWFyZ2luLWJvdHRvbToyNHB4O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXI6MDtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6d2hpdGV9Lnl0UGZwQXV0b25hdlJpbmd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjcycHg7aGVpZ2h0OjcycHh9Lnl0UGZwQXV0b25hdlBsYXlJY29ue3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7ZmlsbDp3aGl0ZX0ueXRQZnBDb250cm9sc0hvc3R7ZGlzcGxheTpibG9jaztwb2ludGVyLWV2ZW50czpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS55dFBmcENvbnRyb2xzSG9zdCA6Zm9jdXMtdmlzaWJsZXtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCAjM2VhNmZmfS55dFBmcENvbnRyb2xzT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtwb2ludGVyLWV2ZW50czphdXRvO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259Lnl0UGZwQ29udHJvbHNDcmVhdG9yRW5kc2NyZWVuQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6Mn0ueXRQZnBDb250cm9sc0ZhZGVJbntwb2ludGVyLWV2ZW50czphdXRvfS55dFBmcENvbnRyb2xzQmlnYm9hcmQsLnl0UGZwQ29udHJvbHNCb3R0b21CYXIsLnl0UGZwQ29udHJvbHNHcmFkaWVudFRvcCwueXRQZnBDb250cm9sc1Byb2dyZXNzQmFyQ29udGFpbmVyLC55dFBmcENvbnRyb2xzVmlkZW9UaXRsZXt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyx2aXNpYmlsaXR5IC4yNXN9Lnl0UGZwQ29udHJvbHNPdmVybGF5Om5vdCgueXRQZnBDb250cm9sc0ZhZGVJbikgLnl0UGZwQ29udHJvbHNCaWdib2FyZCwueXRQZnBDb250cm9sc092ZXJsYXk6bm90KC55dFBmcENvbnRyb2xzRmFkZUluKSAueXRQZnBDb250cm9sc0JvdHRvbUJhciwueXRQZnBDb250cm9sc092ZXJsYXk6bm90KC55dFBmcENvbnRyb2xzRmFkZUluKSAueXRQZnBDb250cm9sc0dyYWRpZW50VG9wLC55dFBmcENvbnRyb2xzT3ZlcmxheTpub3QoLnl0UGZwQ29udHJvbHNGYWRlSW4pIC55dFBmcENvbnRyb2xzUHJvZ3Jlc3NCYXJDb250YWluZXIsLnl0UGZwQ29udHJvbHNPdmVybGF5Om5vdCgueXRQZnBDb250cm9sc0ZhZGVJbikgLnl0UGZwQ29udHJvbHNWaWRlb1RpdGxle29wYWNpdHk6MDt2aXNpYmlsaXR5OmhpZGRlbn0ueXRQZnBDb250cm9sc0dyYWRpZW50VG9we3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuOCkscmdiYSgwLDAsMCwuNikscmdiYSgwLDAsMCwwKSk7cG9pbnRlci1ldmVudHM6bm9uZTtoZWlnaHQ6NDlweDt6LWluZGV4OjV9Lnl0UGZwQ29udHJvbHNWaWRlb1RpdGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwYWRkaW5nOjEycHg7bWFyZ2luOjA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOndoaXRlO2ZvbnQtc2l6ZToxOHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS55dFBmcENvbnRyb2xzTGFyZ2VQbGF5QnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO3dpZHRoOjc1cHg7aGVpZ2h0Ojc1cHg7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3otaW5kZXg6MjtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZC1jb2xvcjp1bnNldH0ueXRQZnBDb250cm9sc0xhcmdlUGxheUJ1dHRvbkljb25CZ3tmaWxsLW9wYWNpdHk6Ljg7dHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKX0ueXRQZnBDb250cm9sc092ZXJsYXk6aG92ZXIgLnl0UGZwQ29udHJvbHNMYXJnZVBsYXlCdXR0b25JY29uQmd7ZmlsbC1vcGFjaXR5OjE7dHJhbnNpdGlvbjpmaWxsIC4xcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpLGZpbGwtb3BhY2l0eSAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0ueXRQZnBDb250cm9sc1ZpZGVvV2FsbEVuZHNjcmVlbntwYWRkaW5nOjQ4cHggMDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ei1pbmRleDoyfS55dFBmcENvbnRyb2xzQXV0b25hdntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt6LWluZGV4OjJ9Lnl0UGZwQ29udHJvbHNQcm9ncmVzc0JhckNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NDBweDtsZWZ0OjA7cmlnaHQ6MDtwb2ludGVyLWV2ZW50czphdXRvO3otaW5kZXg6M30ueXRQZnBDb250cm9sc0JvdHRvbUJhcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6NDBweDtwYWRkaW5nLWxlZnQ6M3B4O2NvbG9yOndoaXRlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cG9pbnRlci1ldmVudHM6YXV0bzt6LWluZGV4OjJ9Lnl0UGZwQ29udHJvbHNMZWZ0Q29udHJvbHMsLnl0UGZwQ29udHJvbHNSaWdodENvbnRyb2xze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0UGZwQ29udHJvbHNWb2x1bWVDb250cm9sc3ttYXgtd2lkdGg6MTEycHh9Lnl0UGZwQ29udHJvbHNUaW1lRGlzcGxheS55dFBmcENvbnRyb2xzVGltZURpc3BsYXl7Y29sb3I6d2hpdGU7Zm9udC1zaXplOjEuNHJlbTttYXJnaW4tbGVmdDo4cHg7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6MzQ5cHgpey55dFBmcENvbnRyb2xzVGltZURpc3BsYXkueXRQZnBDb250cm9sc1RpbWVEaXNwbGF5e2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpey55dFBmcENvbnRyb2xzQ2FwdGlvbnNCdXR0b257ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDoyNDlweCl7Lnl0UGZwQ29udHJvbHNWb2x1bWVDb250cm9scy55dFBmcENvbnRyb2xzVm9sdW1lQ29udHJvbHN7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDoxOTlweCl7Lnl0UGZwQ29udHJvbHNTZXR0aW5nc0J1dHRvbntkaXNwbGF5Om5vbmV9fS55dFBmcENvbnRyb2xzSGlkZGVuU2Vla0J1dHRvbi55dFBmcENvbnRyb2xzSGlkZGVuU2Vla0J1dHRvbntoZWlnaHQ6MTJweDt3aWR0aDoxMnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCV9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckhvc3R7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjhweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZC1jb2xvcjojMDAwO2Rpc3BsYXk6YmxvY2t9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckhvc3Q6Zm9jdXMtdmlzaWJsZSAueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyT3ZlcmxheSwueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVySG9zdDpmb2N1cy13aXRoaW4gLnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXksLnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckhvc3Q6aG92ZXIgLnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXl7b3BhY2l0eToxfS55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJUaHVtYm5haWx7b2JqZWN0LWZpdDpjb3Zlcjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MH0ueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtjb2xvcjp3aGl0ZX0ueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyT3ZlcmxheVRpdGxlQnlsaW5le3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2hlaWdodDo2MHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsLjgpLHJnYmEoMCwwLDAsLjYpIDYwJSxyZ2JhKDAsMCwwLDApKTtwYWRkaW5nOjhweH0ueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyVGl0bGV7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE4cHg7Y29sb3I6d2hpdGV9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckJ5bGluZXtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MTZweDttYXJnaW4tdG9wOjRweDtjb2xvcjp3aGl0ZX0ueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyRHVyYXRpb257cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjhweDtyaWdodDo4cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC44KTtib3JkZXItcmFkaXVzOjRweDtwYWRkaW5nOjJweCA0cHg7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjEycHg7Y29sb3I6d2hpdGV9Lnl0UGZwTW9yZVZpZGVvc0hvc3R7ZGlzcGxheTpibG9jaztwb2ludGVyLWV2ZW50czpub25lfUBtZWRpYSAobWF4LWhlaWdodDoyODlweCl7Lnl0UGZwTW9yZVZpZGVvc0hvc3R7ZGlzcGxheTpub25lfX0ueXRQZnBNb3JlVmlkZW9zT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NDhweDtsZWZ0OjEycHg7cmlnaHQ6MTJweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTIsMTIsMTIsLjgpO3otaW5kZXg6MjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cG9pbnRlci1ldmVudHM6YXV0bztib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzo4cHggMDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0UGZwTW9yZVZpZGVvc0hlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO3BhZGRpbmc6MCAxNnB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXRQZnBNb3JlVmlkZW9zVGl0bGV7Y29sb3I6d2hpdGU7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjIwcHg7bWFyZ2luOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS55dFBmcE1vcmVWaWRlb3NDbG9zZUJ1dHRvbntwYWRkaW5nOjRweDttYXJnaW4tcmlnaHQ6LTRweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOm5vbmU7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlfS55dFBmcE1vcmVWaWRlb3NDbG9zZUJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjEpfS55dFBmcE1vcmVWaWRlb3NDbG9zZUljb257Y29sb3I6d2hpdGU7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRQZnBNb3JlVmlkZW9zVmlkZW9MaXN0Q29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7cGFkZGluZzowIDEycHggNHB4IDEycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtvdmVyZmxvdzpoaWRkZW59Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvTGlzdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtvdmVyZmxvdy14OmF1dG87aGVpZ2h0OjEwMCU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3Njcm9sbGJhci13aWR0aDpub25lO3Njcm9sbC1iZWhhdmlvcjpzbW9vdGh9Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvTGlzdDo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS55dFBmcE1vcmVWaWRlb3NWaWRlb0xpc3R7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnl9Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbXtoZWlnaHQ6MDttYXJnaW46MCA2cHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JhY2tncm91bmQ6YmxhY2s7c2Nyb2xsLXNuYXAtYWxpZ246c3RhcnQ7cGFkZGluZy1ib3R0b206MTM1cHg7d2lkdGg6MjQwcHg7bWluLXdpZHRoOjI0MHB4fUBtZWRpYSAobWF4LXdpZHRoOjEwNDBweCl7Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbXtwYWRkaW5nLWJvdHRvbTpjYWxjKDE0LjA2MjUlIC0gNi43NXB4KTt3aWR0aDpjYWxjKDI1JSAtIDEycHgpO21pbi13aWR0aDpjYWxjKDI1JSAtIDEycHgpfX1AbWVkaWEgKG1heC13aWR0aDo3ODBweCl7Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbXtwYWRkaW5nLWJvdHRvbTpjYWxjKDE4LjU2MjUlIC0gMy4zNzVweCk7d2lkdGg6Y2FsYygzMyUgLSA2cHgpO21pbi13aWR0aDpjYWxjKDMzJSAtIDZweCl9fUBtZWRpYSAobWF4LXdpZHRoOjUzNHB4KXsueXRQZnBNb3JlVmlkZW9zVmlkZW9JdGVte3BhZGRpbmctYm90dG9tOmNhbGMoMjguMTI1JSAtIDMuMzc1cHgpO3dpZHRoOmNhbGMoNTAlIC0gNnB4KTttaW4td2lkdGg6Y2FsYyg1MCUgLSA2cHgpfX1AbWVkaWEgKG1heC13aWR0aDoyODhweCl7Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbXtwYWRkaW5nLWJvdHRvbTpjYWxjKDU2LjI1JSAtIDMuMzc1cHgpO3dpZHRoOmNhbGMoMTAwJSAtIDZweCk7bWluLXdpZHRoOmNhbGMoMTAwJSAtIDZweCl9fS55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW06Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6YXV0b30ueXRQZnBNb3JlVmlkZW9zVmlkZW9JdGVtOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OmF1dG99Lnl0UGZwTW9yZVZpZGVvc1BhZGRsZUxlZnQsLnl0UGZwTW9yZVZpZGVvc1BhZGRsZVJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzMsMzMsMzMsLjgpO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6NTAlO2NvbG9yOndoaXRlO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt6LWluZGV4OjI7Ym94LXNoYWRvdzowIDRweCA0cHggcmdiYSgwLDAsMCwuMjUpfS55dFBmcE1vcmVWaWRlb3NQYWRkbGVMZWZ0OmhvdmVyLC55dFBmcE1vcmVWaWRlb3NQYWRkbGVSaWdodDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYig1MCw1MCw1MCl9Lnl0UGZwTW9yZVZpZGVvc1BhZGRsZUxlZnR7bGVmdDowfS55dFBmcE1vcmVWaWRlb3NQYWRkbGVSaWdodHtyaWdodDowfS55dFBmcE1vcmVWaWRlb3NQYWRkbGVJY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0UGZwTW9yZVZpZGVvc01vcmVWaWRlb3NCdXR0b257cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjU2cHg7bGVmdDoxMnB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNik7Y29sb3I6d2hpdGU7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czoxOHB4O3BhZGRpbmc6OHB4IDE2cHg7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO3otaW5kZXg6NTtwb2ludGVyLWV2ZW50czphdXRvO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ueXRQZnBNb3JlVmlkZW9zTW9yZVZpZGVvc0J1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjEpfS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJIb3N0e3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjhweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZC1jb2xvcjojMDAwO2Rpc3BsYXk6YmxvY2t9Lnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckhvc3Q6Zm9jdXMtdmlzaWJsZSAueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyT3ZlcmxheSwueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVySG9zdDpmb2N1cy13aXRoaW4gLnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlck92ZXJsYXksLnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckhvc3Q6aG92ZXIgLnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlck92ZXJsYXl7b3BhY2l0eToxfS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJUaHVtYm5haWx7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyfS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0O2NvbG9yOndoaXRlfS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5VGl0bGV7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjYwcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuOCkscmdiYSgwLDAsMCwuNikgNjAlLHJnYmEoMCwwLDAsMCkpO3BhZGRpbmc6OHB4fS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJUaXRsZXtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MThweDttYXgtaGVpZ2h0OjM2cHg7Y29sb3I6d2hpdGU7b3ZlcmZsb3c6aGlkZGVufS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJCb3R0b21PdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCk7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOndoaXRlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVySWNvbntmaWxsOmN1cnJlbnRDb2xvcjt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O21hcmdpbi1yaWdodDo0cHh9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MH0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5WaXNpYmxle2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6cmdiKDEyLDEyLDEyKX0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5Jc09ic2N1cmVke3Zpc2liaWxpdHk6aGlkZGVufS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblZpZGVvTGlzdENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlOy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BvaW50ZXItZXZlbnRzOmF1dG87cGFkZGluZzoxMnB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5WaWRlb0xpc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3BhZGRpbmc6MH0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVMZWZ0LC55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZVJpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMzMsMzMsMzMsLjkpO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6NTAlO2NvbG9yOndoaXRlO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt6LWluZGV4OjI7Ym94LXNoYWRvdzowIDRweCA0cHggcmdiYSgwLDAsMCwuMjUpfS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZUxlZnQ6aG92ZXIsLnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuUGFkZGxlUmlnaHQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2IoNTAsNTAsNTApfS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZUxlZnR7bGVmdDo4cHh9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuUGFkZGxlUmlnaHR7cmlnaHQ6OHB4fS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZUljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5WaWRlb0l0ZW17cG9zaXRpb246YWJzb2x1dGU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dFBsYXllckNvbnRyb2xzUGxheWVyQWN0aW9uSW5kaWNhdG9ySG9zdHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6N30ueXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckFjdGlvbnt3aWR0aDo2MHB4O2hlaWdodDo2MHB4O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjYpO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtvcGFjaXR5OjA7YW5pbWF0aW9uOmFjdGlvbi1mYWRlLW91dCAuNXMgbGluZWFyIDEgbm9ybWFsIGZvcndhcmRzfS55dFBsYXllckNvbnRyb2xzUGxheWVyQWN0aW9uSW5kaWNhdG9ySWNvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4O2ZpbGw6I2ZmZn1Aa2V5ZnJhbWVzIGFjdGlvbi1mYWRlLW91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSgyKX19Lnl0d1BsYXllclRpbWVEaXNwbGF5SG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbn0ueXR3UGxheWVyVGltZURpc3BsYXlUaW1lQ2h1bmtze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0d1BsYXllclRpbWVEaXNwbGF5TGl2ZURvdDpiZWZvcmV7Y29udGVudDpcIlwiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjZweDt3aWR0aDo2cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7bWFyZ2luLXJpZ2h0OjRweH0ueXR3UGxheWVyVGltZURpc3BsYXlMaXZlRG90Lnl0d1BsYXllclRpbWVEaXNwbGF5TGl2ZUhlYWQ6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgyMjUsMCw0NSwwLjkpO29wYWNpdHk6MX0ueXR3UGxheWVyVGltZURpc3BsYXlUaW1lRGVsaW1pdGVye2NvbG9yOiNmZmY7bWFyZ2luOjAgNHB4O29wYWNpdHk6Ljd9Lnl0d1BsYXllclRpbWVEaXNwbGF5VGltZVNlY29uZHtvcGFjaXR5Oi43fS55dHdQbGF5ZXJUaW1lRGlzcGxheUNoYXB0ZXJUZXh0e21hcmdpbi1sZWZ0OjhweH0ueXR3UGxheWVyVGltZURpc3BsYXlQbGF5ZXJCYXJBY3Rpb25Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXR3UGxheWVyVGltZURpc3BsYXlQbGF5ZXJCYXJCdXR0b24ueXR3UGxheWVyVGltZURpc3BsYXlQaWxse21hcmdpbjowIDAgMCA4cHh9Lnl0d1BsYXllclRpbWVEaXNwbGF5UGxheWVyQmFyQnV0dG9ue292ZXJmbG93OmhpZGRlbjttYXgtd2lkdGg6MjQwcHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXR3UGxheWVyVGltZURpc3BsYXlDaGV2cm9ue2NvbG9yOiNmZmY7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweDttYXJnaW4tcmlnaHQ6LTRweH0ueXR3UGxheWVyVGltZURpc3BsYXlQaWxse2hlaWdodDoyNHB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjRweCA2cHg7Ym9yZGVyLXJhZGl1czoxNnB4O2ZvbnQtc2l6ZToxLjRyZW07YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGwgYnV0dG9ue3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXR3UGxheWVyVGltZURpc3BsYXlQaWxsIHN2Z3tmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0d1BsYXllclRpbWVEaXNwbGF5UGlsbHttYXJnaW4tbGVmdDoxNnB4fUBtZWRpYSAobWF4LWhlaWdodDoyMjFweCl7Lnl0d1BsYXllclRpbWVEaXNwbGF5RnVsbHNjcmVlbkNvbnRyb2xzQWx3YXlzT257ZGlzcGxheTpub25lfX0ueXR3UGxheWVyVGltZURpc3BsYXlTY3JlZW5SZWFkZXJPbmx5e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFweDtoZWlnaHQ6MXB4O3BhZGRpbmc6MDttYXJnaW46LTFweDtvdmVyZmxvdzpoaWRkZW47Y2xpcDpyZWN0KDAsMCwwLDApO3doaXRlLXNwYWNlOm5vd3JhcDtib3JkZXItd2lkdGg6MH0ueXR3UGxheWVyU2Vla092ZXJsYXlIb3N0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czpub25lO2RpcmVjdGlvbjpsdHJ9Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtvcGFjaXR5OjB9Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uQmFja3tsZWZ0OjQ4cHh9Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uRm9yd2FyZHtyaWdodDo0OHB4fS55dHdQbGF5ZXJTZWVrT3ZlcmxheUR1cmF0aW9ue2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6MCAwIDFweCByZ2JhKDAsMCwwLDAuOCk7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXR3UGxheWVyU2Vla092ZXJsYXlEdXJhdGlvbntmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uQmFjayAueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd3ttYXJnaW4tcmlnaHQ6MjBweH0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25Gb3J3YXJkIC55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93e21hcmdpbi1sZWZ0OjIwcHh9Lnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3cgLnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dTdmd7ZGlzcGxheTpibG9ja30ueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvdyAueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd1BhdGh7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAuNXB4IHJnYmEoMCwwLDAsMC44KSl9Lnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQZXJzaXN0ZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX0ueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd0FkZGl0aW9uYWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2xhdGU6MCAtNTAlfS55dHdQbGF5ZXJTZWVrT3ZlcmxheUFuaW1hdGlvbkJhY2sgLnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dBZGRpdGlvbmFse2xlZnQ6MH0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25Gb3J3YXJkIC55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93QWRkaXRpb25hbHtyaWdodDowfS55dHdQbGF5ZXJFbmRzY3JlZW5Ib3N0e2Rpc3BsYXk6YmxvY2t9Lnl0d1BsYXllckVuZHNjcmVlbkNvbnRhaW5lcntjb2xvcjojZmZmfS55dHdQbGF5ZXJFbmRzY3JlZW5QbGF5ZXJFbmRzY3JlZW57cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0d1BsYXllckVuZHNjcmVlblBsYXllckVuZHNjcmVlbltkYXRhLWhhcy10aW1lci1jb3VudGRvd249dHJ1ZV17YmFja2dyb3VuZC1jb2xvcjojMDAwO3BhZGRpbmc6OHB4IDE2cHg7bWFyZ2luOjAgYXV0bztkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey55dHdQbGF5ZXJFbmRzY3JlZW5QbGF5ZXJFbmRzY3JlZW5bZGF0YS1oYXMtdGltZXItY291bnRkb3duPXRydWVde3BhZGRpbmc6OHB4fX1bZGlyPXJ0bF0gLnl0d1BsYXllckVuZHNjcmVlblBsYXllckVuZHNjcmVlbltkYXRhLWhhcy10aW1lci1jb3VudGRvd249dHJ1ZV17ZGlyZWN0aW9uOnJ0bH0ueXR3UGxheWVyRW5kc2NyZWVuVG9wUGFuZWx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDt3aWR0aDoxMDAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey55dHdQbGF5ZXJFbmRzY3JlZW5Ub3BQYW5lbHtkaXNwbGF5Om5vbmV9fS55dHdQbGF5ZXJFbmRzY3JlZW5IZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjE2cHh9Lnl0d1BsYXllckVuZHNjcmVlbkNvdW50ZG93bkNvbnRhaW5lcntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7bWFyZ2luLWJvdHRvbToxMnB4O21hcmdpbi10b3A6NHB4fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlbkNvdW50ZG93bkNvbnRhaW5lcnttYXJnaW4tYm90dG9tOjhweH19Lnl0d1BsYXllckVuZHNjcmVlbkNvdW50ZG93bk51bWJlcntmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojZmZmfS55dHdQbGF5ZXJFbmRzY3JlZW5DdWVkVmlkZW9Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lnl0d1BsYXllckVuZHNjcmVlbkN1ZWRWaWRlb0NvbnRhaW5lcjpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MTJweH0ueXR3UGxheWVyRW5kc2NyZWVuQ3VlZFRodW1ibmFpbE92ZXJsYXl7d2lkdGg6NTAlO2ZsZXgtYmFzaXM6Y2FsYyg1MCUgLSA2cHgpO3Bvc2l0aW9uOnJlbGF0aXZlfUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlbkN1ZWRUaHVtYm5haWxPdmVybGF5e2ZsZXgtYmFzaXM6Y2FsYyg1MCUgLSA0cHgpfX0ueXR3UGxheWVyRW5kc2NyZWVuQ3VlZFRodW1ibmFpbE92ZXJsYXk+Lnl0d1BsYXllckVuZHNjcmVlblRodW1ibmFpbENvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDphdXRvO3BhZGRpbmctYm90dG9tOjU2LjI1JX0ueXR3UGxheWVyRW5kc2NyZWVuVGh1bWJuYWlsT3ZlcmxheXN7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MH0ueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9JbmZve3dpZHRoOjUwJTtmbGV4LWJhc2lzOmNhbGMoNTAlIC0gNnB4KX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb0luZm97ZmxleC1iYXNpczpjYWxjKDUwJSAtIDRweCl9fS55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb1RpdGxle2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9UaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb1RpdGxle21heC1oZWlnaHQ6NHJlbTtjb2xvcjojZmZmO21hcmdpbi1ib3R0b206NHB4fS55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb0F1dGhvcntmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KX0ueXR3UGxheWVyRW5kc2NyZWVuQnV0dG9uQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXR3UGxheWVyRW5kc2NyZWVuQWN0aW9uQnV0dG9ue3dpZHRoOjEwMCV9Lnl0d1BsYXllckVuZHNjcmVlbkFjdGlvbkJ1dHRvbj46Zmlyc3QtY2hpbGR7d2lkdGg6MTAwJX0ueXR3UGxheWVyRW5kc2NyZWVuQWN0aW9uQnV0dG9uOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDoxMnB4fS55dG1DdXN0b21Db250cm9sSG9zdHtkaXNwbGF5OmJsb2NrfS55dG1DdXN0b21Db250cm9sSG9zdCA6Zm9jdXMtdmlzaWJsZXtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCAjM2VhNmZmfS55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckhvc3R7Y29sb3I6I2ZmZjtwYWRkaW5nOjEycHggMCAwIDEycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyO3RvcDo1MnB4O21pbi13aWR0aDoxMzBweDttYXgtd2lkdGg6bWluKDUwJSAtIDY0cHgsMjcycHgpfS55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckhvc3RBdXRvaGlkZXthbmltYXRpb246ZmFkZSAzcyBlYXNlLWluIDEwcyBmb3J3YXJkczthbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzfUBtZWRpYSAobWF4LWFzcGVjdC1yYXRpbzozLzQpey55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckhvc3RUb3BDb250cm9sc1N0YWNrZWRJblBvcnRyYWl0e3RvcDoxMTJweH19Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySGlkZGVue2Rpc3BsYXk6bm9uZX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJCdXR0b257LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt0ZXh0LWFsaWduOmxlZnQ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KTtib3JkZXItbGVmdDo0cHggc29saWQgIzNlYTZmZjtib3JkZXItcmFkaXVzOjRweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6MzEycHg7cGFkZGluZzo4cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVyVGV4dHtmb250LXNpemU6MS4zcmVtO3BhZGRpbmctbGVmdDo4cHg7Zm9udC1mYW1pbHk6Um9ib3RvLFwiQXJpYWxcIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlclRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJUZXh0e21heC1oZWlnaHQ6NHJlbX1Aa2V5ZnJhbWVzIGZhZGV7dG97b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmV9fS55dEVtYmVkc0luZm9QYW5lbERldGFpbHNWaWV3TW9kZWxCb2R5VGV4dHtwYWRkaW5nOjAgMTJweCAxMnB4IDEycHg7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sXCJBcmlhbFwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRBdXRvY3JvcEJ1dHRvbkhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlO21hcmdpbi10b3A6NjBweH0ueXRBdXRvY3JvcEJ1dHRvblZpc2libGV7dmlzaWJpbGl0eTp2aXNpYmxlfS55dEF1dG9jcm9wQnV0dG9uSGlkZGVue3Zpc2liaWxpdHk6aGlkZGVufS55dEF1dG9jcm9wQnV0dG9uQXV0b0Nyb3BCdXR0b257Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuNyk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLXJhZGl1czoxOHB4fS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc0hvc3R7LW1vei1ib3gtZmxleDoxO2ZsZXg6MTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtvdmVyZmxvdy14OmF1dG99QG1lZGlhIG5vdCAocG9pbnRlcjpmaW5lKXsueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0ey1tcy1vdmVyZmxvdy1zdHlsZTpub25lO3Njcm9sbGJhci13aWR0aDpub25lfS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc0hvc3Q6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX19QG1lZGlhIChwb2ludGVyOmZpbmUpey55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc0hvc3R7b3ZlcmZsb3cteTphdXRvfS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc0hvc3Q6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjE2cHh9Lnl0RnVsbHNjcmVlblZpZGVvUmVjb21tZW5kYXRpb25zSG9zdDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7aGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjRweCBzb2xpZCB0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6Y29udGVudC1ib3g7YmFja2dyb3VuZC1jb2xvcjojNjA2MDYwfS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc0hvc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzkwOTA5MH19Lnl0RnVsbHNjcmVlblZpZGVvUmVjb21tZW5kYXRpb25zUmVjb21tZW5kYXRpb257d2lkdGg6MjAwcHg7bWluLXdpZHRoOjIwMHB4O21hcmdpbjowIDhweDtjb2xvcjojZmZmfS55dHdQbGF5ZXJGdWxsc2NyZWVuQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0d1BsYXllckZ1bGxzY3JlZW5Ub3BDb250cm9sc0hvc3R7cGFkZGluZzoxMnB4O2NvbG9yOiNmZmY7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo2fS55dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNGdWxsc2NyZWVuQ29udHJvbHNWaWRlb1RpdGxle21hcmdpbjowO2NvbG9yOiNmZmZ9Lnl0d1BsYXllckZ1bGxzY3JlZW5Ub3BDb250cm9sc0Z1bGxzY3JlZW5DbG9zZUJ1dHRvbldyYXBwZXJ7bWFyZ2luLXRvcDotOHB4O21hcmdpbi1sZWZ0OmF1dG99Lnl0bVBhaWRDb250ZW50T3ZlcmxheUhvc3R7Y29sb3I6I2ZmZjthbmltYXRpb246ZmFkZSAzcyBlYXNlLWluIDIwcyBmb3J3YXJkczthbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO3BhZGRpbmc6MTJweCAwIDEycHggMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXRtUGFpZENvbnRlbnRPdmVybGF5SGlkZGVue2Rpc3BsYXk6bm9uZX0ueXRtUGFpZENvbnRlbnRPdmVybGF5TGlua3stbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7Ym9yZGVyLWxlZnQ6NHB4IHNvbGlkICMzZWE2ZmY7Ym9yZGVyLXJhZGl1czo0cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWF4LXdpZHRoOjMxMnB4O3BhZGRpbmc6OHB4O3RleHQtZGVjb3JhdGlvbjpub25lfS55dG1QYWlkQ29udGVudE92ZXJsYXlUZXh0e2ZvbnQtc2l6ZToxLjNyZW07cGFkZGluZy1sZWZ0OjhweH1Aa2V5ZnJhbWVzIGZhZGV7dG97b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmV9fS5wbGF5ZXItY29udHJvbHMtYm90dG9te2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTozMHB4O3otaW5kZXg6MjtoZWlnaHQ6NDRweH0ucGxheWVyLWNvbnRyb2xzLWJvdHRvbSAucGxheWVyLWJvdHRvbS1jb250cm9scy1mdWxsc2NyZWVuLWljb24tdmlzaWJsZS1hcmVhey1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDt3aWR0aDozNnB4O2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NTAlO3BhZGRpbmc6NnB4O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjMpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ucGxheWVyLWNvbnRyb2xzLWJvdHRvbSAucGxheWVyLWJvdHRvbS1jb250cm9scy1mdWxsc2NyZWVuLWljb24tdmlzaWJsZS1hcmVhIGJ1dHRvbnt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LnBsYXllci1jb250cm9scy1ib3R0b20gLnBsYXllci1ib3R0b20tY29udHJvbHMtZnVsbHNjcmVlbi1pY29uLXZpc2libGUtYXJlYSBzdmd7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfS5wbGF5ZXItY29udHJvbHMtYm90dG9tLnBsYXllci1jb250cm9scy1ib3R0b20tbGVmdHtsZWZ0OjEycHg7cmlnaHQ6NzhweH0ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS5wbGF5ZXItY29udHJvbHMtYm90dG9tLXJpZ2h0e3JpZ2h0OjI0cHh9LnBsYXllci1jb250cm9scy1ib3R0b20gLmljb24tYnV0dG9uLmZ1bGxzY3JlZW4taWNvbntkaXNwbGF5OmJsb2NrOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6NnB4fWJvZHlbZmF1eC1mdWxsc2NyZWVuPXRydWVdIC5wbGF5ZXItY29udHJvbHMtYm90dG9te2JvdHRvbTo0NHB4fWJvZHlbZmF1eC1mdWxsc2NyZWVuPXRydWVdIC5lbmFibGUtZnVsbHNjcmVlbi1jb250cm9scyAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206NzRweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAuZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMuZnMtd2F0Y2gtc3lzdGVtIC5wbGF5ZXItY29udHJvbHMtYm90dG9te2JvdHRvbTo5NHB4fS55dHdQbGF5ZXJNaWRkbGVDb250cm9sc0hvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0d1BsYXllck1pZGRsZUNvbnRyb2xzQTExeVNlZWtCdXR0b257cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ei1pbmRleDo2fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZS5wcmV2ZW50LWNvbnRyb2xzLWNvbGxpc2lvbnt3aWR0aDotbW96LWZpdC1jb250ZW50O3dpZHRoOmZpdC1jb250ZW50O2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9ue2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7cGFkZGluZzo2cHg7Ym9yZGVyLXJhZGl1czoyNHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAuaWNvbi1idXR0b24+YzMtaWNvbntoZWlnaHQ6MzJweDt3aWR0aDozMnB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtYnV0dG9ue2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7cGFkZGluZzo2cHg7YmFja2dyb3VuZDpub25lfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtYnV0dG9uIGMzLWljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LWJ1dHRvbiAucGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtdmlzaWJsZS1hcmVhey1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6MzZweDt3aWR0aDozNnB4O3BhZGRpbmc6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjMpO3RleHQtc2hhZG93OjAgMCAycHggIzAwMH15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LWJ1dHRvbiAucGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtdmlzaWJsZS1hcmVhIGJ1dHRvbnt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC1idXR0b24gLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LXZpc2libGUtYXJlYSBzdmd7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwuOCkpfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAuaWNvbi1idXR0b24uZW5kc2NyZWVuLXJlcGxheS1idXR0b257aGVpZ2h0OmF1dG87d2lkdGg6YXV0bztib3JkZXItcmFkaXVzOjU2cHh9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5pY29uLWJ1dHRvbi5lbmRzY3JlZW4tcmVwbGF5LWJ1dHRvbj5jMy1pY29ue2hlaWdodDo0MHB4O3dpZHRoOjQwcHg7cGFkZGluZzo4cHh9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItY29udHJvbC1wbGF5LXBhdXNlLWljb24uaWNvbi1idXR0b257aGVpZ2h0OjU2cHg7d2lkdGg6NTZweDtwYWRkaW5nOjEwcHg7Ym9yZGVyLXJhZGl1czo1MCV9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItY29udHJvbC1wbGF5LXBhdXNlLWljb24uaWNvbi1idXR0b24+YzMtaWNvbntoZWlnaHQ6MzZweDt3aWR0aDozNnB4O3BhZGRpbmc6dW5zZXR9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5lbmRzY3JlZW4tcmVwbGF5LWJ1dHRvbi5pY29uLWJ1dHRvbix5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1jb250cm9sLXBsYXktcGF1c2UtaWNvbnttYXJnaW46MCAzNHB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAuc2NyZWVucmVhZGVyLXNhZmUtaGlkZS1taWRkbGUtYnV0dG9uc3twb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MH15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1jb250cm9scy1zcGlubmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpfVtkaXI9cnRsXSB5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGU6bm90KC5wcmV2ZW50LWNvbnRyb2xzLWNvbGxpc2lvbil7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSl9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlLWNvcmUtYnV0dG9uc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZGlyZWN0aW9uOmx0cn0ueXRtVmlkZW9JbmZvSG9zdHstbW96LWJveC1mbGV4OjE7ZmxleDoxO292ZXJmbG93OmhpZGRlbjttaW4td2lkdGg6MH0ueXRtVmlkZW9JbmZvVmlkZW9EZXRhaWxzQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmctbGVmdDoxMnB4O21pbi1oZWlnaHQ6NS4ycmVtfS55dG1WaWRlb0luZm9WaWRlb1RpdGxle2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dG1WaWRlb0luZm9WaWRlb1RpdGxle2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo3MDB9fS55dG1WaWRlb0luZm9WaWRlb1RpdGxle2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjEwMCU7cGFkZGluZy10b3A6MTBweDtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtZGVjb3JhdGlvbjpub25lO21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNmZmYgOTUlLHJnYmEoMCwwLDAsMCkpfVtkaXI9cnRsXSAueXRtVmlkZW9JbmZvVmlkZW9UaXRsZXttYXNrLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCNmZmYgOTUlLHJnYmEoMCwwLDAsMCkpfS55dG1WaWRlb0luZm9DaGFubmVsVGl0bGV7bWF4LXdpZHRoOjEwMCU7Zm9udC1zaXplOjEuMnJlbTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtZGVjb3JhdGlvbjpub25lO29wYWNpdHk6MTtsaW5lLWhlaWdodDoxLjF9Lnl0bVZpZGVvSW5mb1ZpZGVvVGl0bGVDb250YWluZXJ7bWluLWhlaWdodDozNnB4Oy1tb3otYm94LWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6aGlkZGVuO2NvbG9yOiNmZmY7bWFyZ2luLXJpZ2h0OjEycHg7cGFkZGluZy1sZWZ0OjB9Lnl0bVZpZGVvSW5mb0xvZ29FbmFibGVke3BhZGRpbmctbGVmdDo1MnB4fS55dG1WaWRlb0luZm9DaGFubmVsTG9nb3t3aWR0aDozNnB4O2hlaWdodDozNnB4O2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2ZsZXgtc2hyaW5rOjA7bWFyZ2luOjEycHg7bWFyZ2luLXRvcDo4cHg7Ym9yZGVyLXJhZGl1czo1MCU7ei1pbmRleDo3O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS55dG1WaWRlb0luZm9DaGFubmVsQ29udGFpbmVye2hlaWdodDo1LjJyZW07cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO21pbi13aWR0aDo1MnB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAxMnB4KTttYXJnaW46NHB4O21hcmdpbi10b3A6OHB4O292ZXJmbG93OmhpZGRlbn1bZGlyPXJ0bF0gLnl0bVZpZGVvSW5mb0NoYW5uZWxDb250YWluZXJ7bGVmdDphdXRvO3JpZ2h0OjB9Lnl0bVZpZGVvSW5mb092ZXJsYXl7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjgpO21hcmdpbi1sZWZ0OjRweDtoZWlnaHQ6MTAwJTt0cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7b3BhY2l0eTowO21heC13aWR0aDowO3BhZGRpbmctbGVmdDo1MnB4O3BhZGRpbmctcmlnaHQ6MTBweDt6LWluZGV4OjU7cG9zaXRpb246cmVsYXRpdmV9Lnl0bVZpZGVvSW5mb0V4cGFuZGVke29wYWNpdHk6MTttYXgtd2lkdGg6MTAwJX0ueXRtVmlkZW9JbmZvQ2hhbm5lbEluZm97ZGlzcGxheTpibG9jaztwYWRkaW5nLXJpZ2h0OjhweDstbW96LWJveC1mbGV4OjE7ZmxleDoxO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczthbGlnbi1zZWxmOmNlbnRlcjttYXgtd2lkdGg6MTAwJX0ueXRtVmlkZW9JbmZvRmx5b3V0Q2hhbm5lbFRpdGxle2ZvbnQtc2l6ZToxLjRyZW07Y29sb3I6I2ZmZjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToycHg7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0bVZpZGVvSW5mb0ZseW91dENoYW5uZWxTdWJ0aXRsZXtmb250LXNpemU6MS4ycmVtO2NvbG9yOiNmZmY7dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrfS55dG1WaWRlb0luZm9TdWJzY3JpYmVCdXR0b257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0bVZpZGVvSW5mb1N1YnNjcmliZUJ1dHRvbiAuaXMtc3Vic2NyaWJlZCAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdHtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0bVZpZGVvSW5mb0hpZGUsLnl0bVZpZGVvSW5mb1N1YnNjcmliZUJ1dHRvbiAuc3Vic2NyaWJlLWJ1dHRvbi1jb3VudHtkaXNwbGF5Om5vbmV9Lnl0bVZpZGVvSW5mb0xpbms6aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9Lnl0bVZpZGVvSW5mb0NoYW5uZWxBdmF0YXJ7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0OHB4O2hlaWdodDo0OHB4fS55dG1NdXRlQnV0dG9uSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXRtTXV0ZUJ1dHRvbkJ1dHRvbntjdXJzb3I6cG9pbnRlcjt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3BhZGRpbmc6MTJweDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7Zm9udDppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblNwYW5uZXJJY29uT2ZmLC55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25Pbnt3aWR0aDozNnB4O2hlaWdodDoxNHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PZmYgc3ZnLC55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PbiBzdmd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjM2cHg7aGVpZ2h0OjE0cHh9Lnl0d0F1dG9uYXZUb2dnbGVCdXR0b25QbGF5SWNvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2xlZnQ6MjJweDt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fVtkaXI9cnRsXSAueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBsYXlJY29ue2xlZnQ6NnB4fS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uUGF1c2VJY29ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7bGVmdDo2cHg7d2lkdGg6MjBweDtoZWlnaHQ6MjBweH1bZGlyPXJ0bF0gLnl0d0F1dG9uYXZUb2dnbGVCdXR0b25QYXVzZUljb257bGVmdDoyMnB4fS55dHdQbGF5ZXJBdXRvbmF2VG9nZ2xlSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJBdXRvbmF2VG9nZ2xlSG9zdCAueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBsYXlJY29ue2NvbG9yOiNmZmZ9Lnl0d1BsYXllclRvcENvbnRyb2xzSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJUb3BDb250cm9sc1BsYXllckNvbnRyb2xzVG9wUmlnaHR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0d1BsYXllclRvcENvbnRyb2xzQ29udGFpbmVyV2l0aEVtYmVkZGVkVmlkZW9EZXRhaWxzey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH1AbWVkaWEgKG1heC1hc3BlY3QtcmF0aW86My80KXsueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpyZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfX1AbWVkaWEgKG1heC1hc3BlY3QtcmF0aW86My80KXsueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHNQbGF5ZXJDb250cm9sc1RvcFJpZ2h0ey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH19Lnl0bVdhdGNoUGxheWVyQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0bVdhdGNoUGxheWVyQ29udHJvbHNCYWNrZ3JvdW5kQWN0aW9uSXRlbXN7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyfXl0bS1ub3RpZmljYXRpb24tYWN0aW9uLXJlbmRlcmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm5vdGlmaWNhdGlvbi1hY3Rpb24tcmVzcG9uc2UtdGV4dHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7cGFkZGluZy1yaWdodDoxcmVtfS5ub3RpZmljYXRpb24tYWN0aW9uLWJ1dHRvbntmbGV4LXNocmluazowfS51bmlmaWVkLXNoYXJlLXVybC1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMztib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNzM3MzczO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0OmZvY3Vze21hcmdpbi1ib3R0b206MDtib3JkZXItYm90dG9tLXdpZHRoOjJweDtib3JkZXItYm90dG9tLWNvbG9yOiMwMzAzMDN9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0OjotbW96LXBsYWNlaG9sZGVye2NvbG9yOiM2MDYwNjA7b3BhY2l0eToxfS51bmlmaWVkLXNoYXJlLXVybC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0e3dpZHRoOjEwMCU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjEycHg7Y29sb3I6IzA2NWZkNDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7Ym9yZGVyLWJvdHRvbS1zdHlsZTpub25lO2JvcmRlci1yYWRpdXM6OHB4fS5ib3R0b20tc2hlZXQtc2hhcmUtaXRlbSAudW5pZmllZC1zaGFyZS11cmwtaW5wdXR7aGVpZ2h0OjQ4cHg7bWFyZ2luLWJvdHRvbToxMnB4fS5zaGFyZS10YXJnZXQtbGlua3tkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MTJweH0uYm90dG9tLXNoZWV0LXNoYXJlLWl0ZW0gLnNoYXJlLXRhcmdldC1saW5re3BhZGRpbmc6MDttYXJnaW4tbGVmdDoxMnB4O2hlaWdodDo0OHB4O2ZvbnQtZmFtaWx5OlJvYm90byxcIkFyaWFsXCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9ZnVsbHNjcmVlbi1vdmVybGF5e3Bvc2l0aW9uOmZpeGVkO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjojZmZmO292ZXJmbG93OnNjcm9sbDt6LWluZGV4OjR9c2VudGluZWx7fSIpOwp0aGlzLmRlZmF1bHRfYmFzZT10aGlzLmRlZmF1bHRfYmFzZXx8e307KGZ1bmN0aW9uKF8pe3ZhciB3aW5kb3c9dGhpczsKdHJ5ewpfLkN0PWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5zZXJ2aWNlSWQ9bmV3IF8uTnIoYSxiKX10b1N0cmluZygpe3JldHVybiB0aGlzLnNlcnZpY2VJZC50b1N0cmluZygpfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoIml1VDVPYyIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgd3Q7Xy52dD1mdW5jdGlvbihhLGIpe3JldHVybiBhPT1iPyEwOmEmJmI/YS53aWR0aD09Yi53aWR0aCYmYS5oZWlnaHQ9PWIuaGVpZ2h0OiExfTtfLnh0PWZ1bmN0aW9uKGEsYil7Yi5oYXNPd25Qcm9wZXJ0eSgiZGlzcGxheU5hbWUiKXx8KGIuZGlzcGxheU5hbWU9YS50b1N0cmluZygpKTtiW3d0XT1hfTt3dD1TeW1ib2woIklhIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uSWU9ZnVuY3Rpb24oKXt0aGlzLmlkPSJiIn07Xy5JZS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZH07Xy5GdD1uZXcgXy5OcigiTXBKd1pjIiwiTXBKd1pjIik7dmFyIEd0O0d0PW5ldyBfLkllO18uSHQ9Y2xhc3MgZXh0ZW5kcyBfLkple2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoR3QsYSk7dGhpcy5ub2RlPWE7dGhpcy5raW5kPWJ9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKLyoKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCi8qCgogQ29weXJpZ2h0IDIwMTcgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQoqLwp2YXIgQUEsQkEsREEsV2FhLFhhYSxPQSxQQSwkYWEsYWJhLFNBLFRBLGRiYSxlYmEsZmJhLGRCLGdiYSxqYmEsa2JhLGhCLGtCLGxCLHJCLHNCLHRCLHVCLHZCLHdCLG5iYSxwYmEsb2JhLEVCLHNiYSxEQixGQixIQix0YmEsdWJhLHZiYSxRQixTQixUQix3YmEsYUMsWUIsY0MsVUIsZUMsaEMsaUMsa0MseWJhLHpiYSxBYmEsc0MsdkMsRGJhLHpDLENDLEZiYSxHYmEsRWJhLFZhYSxLQSxvQztfLnlBPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLmZiKXJldHVybiBhLmo7dGhyb3cgRXJyb3IoImgiKTt9O18uekE9ZnVuY3Rpb24oYSxiKXtpZihhLm5vZGVUeXBlPT09MSYmL14oc2NyaXB0fHN0eWxlKSQvaS50ZXN0KGEudGFnTmFtZSkpdGhyb3cgRXJyb3IoImgiKTthLmlubmVySFRNTD1fLnlBKGIpfTtBQT1mdW5jdGlvbihhLGIpe3ZhciBjPXt9O2ZvcihsZXQgZCBpbiBhKWNbZF09Yi5jYWxsKHZvaWQgMCxhW2RdLGQsYSk7cmV0dXJuIGN9OwpfLkl0PWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoIk1hIik7fTtCQT1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4gbnVsbDthPV8uWHQoXy5lZChhLDIsdm9pZCAwLF8uRHYpKTtyZXR1cm4gYT09PW51bGx8fGE9PT12b2lkIDA/bnVsbDpfLmdiKGEpfTtfLkNBPWZ1bmN0aW9uKGE9Myl7dmFyIGI9Xy5adDtpZighYil7c3dpdGNoKGEpe2Nhc2UgMDphPUVycm9yKCJSYSIpO2JyZWFrO2Nhc2UgMTphPUVycm9yKCJVYSIpO2JyZWFrO2Nhc2UgMjphPUVycm9yKCJWYSIpO2JyZWFrO2RlZmF1bHQ6YT1FcnJvcigiV2EiKX10aHJvdyBhO31yZXR1cm4gYn07REE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU9iamVjdC5jcmVhdGUoVmFhKTtkLnNvdXJjZT1hO2QuVGc9YjtjIT12b2lkIDAmJihkLmVxdWFsPWMpO2E9KCk9PntfLnJ1KGQpO18ucHUoZCk7aWYoZC52YWx1ZT09PV8uSXYpdGhyb3cgZC5lcnJvcjtyZXR1cm4gZC52YWx1ZX07YVtfLlp1XT1kO3JldHVybiBhfTsKXy5FQT1mdW5jdGlvbihhKXt2YXIgYj1fLmt1KG51bGwpO3RyeXtyZXR1cm4gYSgpfWZpbmFsbHl7Xy5rdShiKX19O1dhYT1mdW5jdGlvbihhKXthPXtbXy5FdV06ITAsZGVidWdOYW1lOmF9OyFfLlp0fHxfLkJ1KGEpO3JldHVybiBhfTtfLkZBPWZ1bmN0aW9uKGEpe3JldHVybiBhLmRlYnVnTmFtZXx8YS5uYW1lfHwiW2NvbXBvbmVudF0ifTtfLkdBPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1fLkZBKGEpO18uTXU9e25hbWU6Yz9gJHtkfSAoJHtjfSlgOmQsbGo6YS5jb21wb25lbnRUeXBlIT09Xy5LdixwYXJlbnQ6Xy5NdX07YT1iKCk7Xy5NdT1fLk11LnBhcmVudDtyZXR1cm4gYX07Xy5IQT1mdW5jdGlvbigpe3ZhciBhPV8uTXU7cmV0dXJuIGE/YS5sajohMX07Xy5JQT1mdW5jdGlvbihhKXtfLmd2LS07aWYoYSlmb3IobGV0IGIgb2YgXy5ZdiliLmNsZWFyKCk7ZWxzZSBfLmd2PjB8fF8uY3YuaXNGbHVzaGluZyYmIV8uS3UuUml8fF8uanYoKX07Cl8uSkE9ZnVuY3Rpb24oYSxiKXtiPXtjb21wb25lbnRTdGFjazpfLlN1KF8uUHUpLHByOl8uUXU/LnNsaWNlKCk/P1tdLGZoOjMsQWw6Xy5MdSgpLHRhZ05hbWU6Yn07cmV0dXJuW2EsYl19O18uTEE9ZnVuY3Rpb24oKXtpZih0eXBlb2YgS0E9PT0iZnVuY3Rpb24iKXZhciBhPUtBO2Vsc2UgaWYodHlwZW9mIEtBPT09Im9iamVjdCIpYT1LQS5jb25zdHJ1Y3RvcjtlbHNlIHRocm93IEVycm9yKHZvaWQgMCk7cmV0dXJuIF8uQ2MoYj0+YiBpbnN0YW5jZW9mIGEpfTtYYWE9ZnVuY3Rpb24oKXtpZighXy51Py5TeW1ib2w/LmZvcilyZXR1cm4gbmV3IFdlYWtNYXA7dmFyIGE9U3ltYm9sLmZvcigiZ29vZ2xlLmdvZW0iKSxiPV8udVthXTtpZihiKXJldHVybiBiO2I9bmV3IFdlYWtNYXA7cmV0dXJuIF8udVthXT1ifTsKT0E9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnRhZ05hbWUsZD1hLnRhZ05hbWU7YT1NQS5oYXMoZCkmJiFZYWEuaGFzKGQpOygoYj1NQS5oYXMoYykpfHxhKSYmYSYmIWImJk5BLmhhcyhjLnRvTG93ZXJDYXNlKCkpJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dGhyb3cgXy5VdShFcnJvcigiSWJgIitjKyJgIitkKSwyLGMpO30pfTtQQT1mdW5jdGlvbigpe307Xy5RQT1mdW5jdGlvbihhLGIsYyl7aWYoYz09bnVsbClhLnJlbW92ZUF0dHJpYnV0ZShiKTtlbHNle3ZhciBkOyhkPWIubGFzdEluZGV4T2YoInhtbDoiLDApPT09MD8iaHR0cDovL3d3dy53My5vcmcvWE1MLzE5OTgvbmFtZXNwYWNlIjpiLmxhc3RJbmRleE9mKCJ4bGluazoiLDApPT09MD8iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI6bnVsbCk/YS5zZXRBdHRyaWJ1dGVOUyhkLGIsYyk6YS5zZXRBdHRyaWJ1dGUoYixjKX19OwokYWE9ZnVuY3Rpb24oYSxiLGMpe2E9YS5zdHlsZTtpZih0eXBlb2YgYz09PSJzdHJpbmciKWEuY3NzVGV4dD1jO2Vsc2V7YS5jc3NUZXh0PSIiO2ZvcihsZXQgZiBpbiBjKWlmKFphYS5jYWxsKGMsZikpe2I9YTt2YXIgZD1mLGU9Y1tmXTtkLmluZGV4T2YoIi0iKT49MD9iLnNldFByb3BlcnR5KGQsZSk6YltkXT1lfX19O2FiYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dHlwZW9mIGM7ZD09PSJvYmplY3QifHxkPT09ImZ1bmN0aW9uIj9hW2JdPWM6Xy5RQShhLGIsYyl9O1NBPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IFBBO2FbXy5SQS5kZWZhdWx0XT1hYmE7YS5zdHlsZT0kYWE7cmV0dXJuIGF9O1RBPWZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIGI9PWMmJmQ9PWV9O18uWEE9ZnVuY3Rpb24oKXtmb3IodmFyIGE9Xy5VQSxiPV8uVkEoKTtiIT09bnVsbDspe2xldCBjPWIubmV4dFNpYmxpbmc7YS5yZW1vdmVDaGlsZChiKTtfLldBLmRlbGV0ZWQucHVzaChiKTtiPWN9fTsKXy5WQT1mdW5jdGlvbigpe3JldHVybiBfLllBP18uWUEubmV4dFNpYmxpbmc6Xy5VQS5maXJzdENoaWxkfTsKZGJhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1fLldBLGU9Xy5aQSxmPV8uJEEsaD1fLmFCLGs9Xy5ZQSxsPV8uVUEsbT1fLmJCO18uWkE9YS5vd25lckRvY3VtZW50O18uV0E9bmV3IGJiYShhKTtfLmJCPWI7Xy5hQj1bXTtfLllBPW51bGw7Yj1fLlVBPWEucGFyZW50Tm9kZTt2YXIgbj1jYmEuY2FsbChhKTtpZigobj1uLm5vZGVUeXBlPT09MTF8fG4ubm9kZVR5cGU9PT05P24uYWN0aXZlRWxlbWVudDpudWxsKSYmYS5jb250YWlucyhuKSl7Zm9yKGE9W107biE9PWI7KWEucHVzaChuKSxuPW4ucGFyZW50Tm9kZXx8KGI/bi5ob3N0Om51bGwpO2I9YX1lbHNlIGI9W107Xy4kQT1iO3RyeXtyZXR1cm4gYygpfWZpbmFsbHl7Yz1fLldBLF8uY0ImJmMuZGVsZXRlZC5sZW5ndGg+MCYmKDAsXy5jQikoYy5kZWxldGVkKSxfLlpBPWUsXy5XQT1kLF8uYkI9bSxfLmFCPWgsXy5ZQT1rLF8uVUE9bCxfLiRBPWZ9fTsKZWJhPWZ1bmN0aW9uKGEsYj17fSl7dmFyIHttYXRjaGVzOmM9VEF9PWI7cmV0dXJuKGQsZSxmKT0+ZGJhKGQsYywoKT0+YShkLGUsZikpfTtmYmE9ZnVuY3Rpb24oYSl7YT1TdHJpbmcoYSk7Zm9yKHZhciBiPShkLGUsZik9Pnt2YXIgaD1NYXRoLm1pbihlLmxlbmd0aC1mLGQubGVuZ3RoKTtmb3IobGV0IGw9MDtsPGg7bCsrKXt2YXIgaz1lW2YrbF07aWYoZFtsXSE9PSgiQSI8PWsmJms8PSJaIj9rLnRvTG93ZXJDYXNlKCk6aykpcmV0dXJuITF9cmV0dXJuITB9LGM9MDsoYz1hLmluZGV4T2YoIjwiLGMpKSE9LTE7KXtpZihiKCJceDNjL3NjcmlwdCIsYSxjKXx8YigiXHgzYyEtLSIsYSxjKSlyZXR1cm4ielNveXoiO2MrPTF9cmV0dXJuIGF9OwpkQj1mdW5jdGlvbihhKXtpZihhLmlzQ29ubmVjdGVkIT09dm9pZCAwKXJldHVybiBhLmlzQ29ubmVjdGVkO3ZhciBiPWEub3duZXJEb2N1bWVudDtpZighYilyZXR1cm4gYT09PWRvY3VtZW50O2lmKHR5cGVvZiBiLmNvbnRhaW5zPT09ImZ1bmN0aW9uIilyZXR1cm4gYi5jb250YWlucyhhKTtmb3IoO2E7KXtpZihhPT09YilyZXR1cm4hMDthPWEucGFyZW50Tm9kZX1yZXR1cm4hMX07Z2JhPWZ1bmN0aW9uKGEsYj0hMSl7dmFyIGM9Xy5DQSgpLGQ9Xy5NdTtyZXR1cm4gZT0+e3ZhciBmPSExLGg9ZS5jdXJyZW50VGFyZ2V0O2gmJihmPSFkQihoKXx8YiYmaFtlQl09PT0hMCk7dmFyIGs9Yz8uaWEsbD1iJiZoJiZoW2VCXT09PSEwO2lmKGZ8fGspe2lmKGgmJmRCKGgpJiYoa3x8bCkpdGhyb3cgXy5VdShFcnJvcigia2MiKSw0KTt9ZWxzZXt2YXIgbT0oKT0+YShlKTt0cnl7Xy5SdSgoKT0+Xy5FQShtKSxkKX1jYXRjaChuKXtfLm92KG4sYyl9fX19OwpfLmdCPWZ1bmN0aW9uKGEsYixjKXtpZihPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChmQixhKSYmKGE9ZkJbYV0sT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwoYSxiKSYmKGE9YVtiXSxhIGluc3RhbmNlb2YgQXJyYXkpKSl7bGV0IGU9bnVsbCxmPSExO2ZvcihsZXQgaD0wLGs9YS5sZW5ndGg7aDxrOysraCl7bGV0IGw9YVtoXTt2YXIgZD1sLmliO2lmKCFkKXJldHVybiBsLmthO2U9PT1udWxsJiYoZT17fSk7ZD1PYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChlLGQpP2VbZF06ZVtkXT1jKGQpO2lmKGQ9PT1sLm5iKXJldHVybiBsLmthO2Q9PW51bGwmJihmPSEwKX1pZihmKXJldHVybiBudWxsfWI9aGJhW2JdO3JldHVybiB0eXBlb2YgYj09PSJudW1iZXIiP2I6bnVsbH07CmpiYT1mdW5jdGlvbihhLGIpe2I9Xy5nQihhLnRvTG93ZXJDYXNlKCksYiwoKT0+e3Rocm93IF8uVXUoRXJyb3IoIm1jIiksNCxhLnRvTG93ZXJDYXNlKCkpO30pO3JldHVybiBiPT09bnVsbD9udWxsOmliYVtiXT8/bnVsbH07a2JhPWZ1bmN0aW9uKGEsYixjKXtpZihjPT09bnVsbHx8Yz09PXZvaWQgMClyZXR1cm4gYztiPWIudG9Mb3dlckNhc2UoKTthPWpiYShhLGIpO3JldHVybiBhPT09bnVsbD9jOmEoYixjKX07aEI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1XYWEoYik7Yj1fLiR0KGMpO3RyeXthKGMpfWZpbmFsbHl7Xy4kdChiKX1yZXR1cm4oKT0+dm9pZCBfLkN1KGMpfTtfLmlCPWZ1bmN0aW9uKGEpe3JldHVybiBfLkFhKGEpPyJub2RlVHlwZSJpbiBhOiExfTtfLmpCPWZ1bmN0aW9uKGEpe3JldHVybiBfLmlCKGEpJiZhLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREV9O2tCPWZ1bmN0aW9uKCl7cmV0dXJuIGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCIiKX07CmxCPWZ1bmN0aW9uKGEpe2E9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKGEpKTthLl9pc1NpZ25hbFRleHROb2RlPSEwO3JldHVybiBhfTtfLm9CPWZ1bmN0aW9uKGEpe3JldHVybiBhIT1udWxsJiZhLkdpPT09Xy5tQnx8YSBpbnN0YW5jZW9mIF8uZmJ8fG5CKGEpfTtfLnBCPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKG5CKGEpJiZCQShhKSlfLnpBKGIsQkEoYSkpO2Vsc2UgaWYoYSBpbnN0YW5jZW9mIF8uZmIpXy56QShiLGEpO2Vsc2UgaWYoYSE9bnVsbCYmYS5HaT09PV8ubUIpe2lmKGEuR2khPT1fLm1CKXRocm93IEVycm9yKCJOYSIpO2E9Xy5nYihhLnRvU3RyaW5nKCkpO18uekEoYixhKX1mb3IobGV0IGMgb2YgYi5jaGlsZE5vZGVzKWMuX2lzU2FmZU9yU2FuaXRpemVkSHRtbE5vZGU9ITA7cmV0dXJuIGJ9OwpfLnFCPWZ1bmN0aW9uKGEpe2E9dHlwZW9mIGE7cmV0dXJuIGE9PT0ic3RyaW5nInx8YT09PSJudW1iZXIifHxhPT09ImJvb2xlYW4ifTtyQj1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uU2F8fF8uWGEoYSl8fCExfTtzQj1mdW5jdGlvbihhLGIpe3ZhciBjPWEucGFyZW50RWxlbWVudDtpZighYylyZXR1cm4gYjtfLmpCKGIpJiZPQShjLGIpO2MucmVwbGFjZUNoaWxkKGIsYSk7cmV0dXJuIGJ9O3RCPWZ1bmN0aW9uKGEsYil7dmFyIGM9YVswXS5wYXJlbnRFbGVtZW50O2lmKGMpaWYoYVswXS5wcmV2aW91c1NpYmxpbmd8fGFbYS5sZW5ndGgtMV0ubmV4dFNpYmxpbmcpe2MuaW5zZXJ0QmVmb3JlKGIsYVswXSk7Zm9yKGxldCBkPWEubGVuZ3RoLTE7ZD49MDtkLS0pYy5yZW1vdmVDaGlsZChhW2RdKX1lbHNlIGMudGV4dENvbnRlbnQ9IiIsYy5hcHBlbmRDaGlsZChiKTtyZXR1cm4gYn07CnVCPWZ1bmN0aW9uKGEsYil7aWYoYVswXS5wYXJlbnRFbGVtZW50KXt2YXIgYz1hWzBdLnBhcmVudEVsZW1lbnQ7bGV0IGY9Yi5sZW5ndGgsaD1hLmxlbmd0aCxrPWYsbD0wLG09MCxuPWFbaC0xXS5uZXh0U2libGluZyxwPW51bGw7Zm9yKDtsPGh8fG08azspaWYoYVtsXT09PWJbbV0pbCsrLG0rKztlbHNle2Zvcig7YVtoLTFdPT09YltrLTFdOyloLS0say0tO2lmKGg9PT1sKWZvcih2YXIgZD1rPGY/bT9iW20tMV0ubmV4dFNpYmxpbmc6YltrLW1dOm47bTxrOyl7dmFyIGU9YlttKytdO18uakIoZSkmJk9BKGMsZSk7Yy5pbnNlcnRCZWZvcmUoZSxkKX1lbHNlIGlmKGs9PT1tKWZvcig7bDxoOylkPWFbbF0scCYmcC5oYXMoZCl8fGMucmVtb3ZlQ2hpbGQoZCksbCsrO2Vsc2UgaWYoYVtsXT09PWJbay0xXSYmYlttXT09PWFbaC0xXSlkPWFbLS1oXS5uZXh0U2libGluZyxjLmluc2VydEJlZm9yZShiW20rK10sYVtsKytdLm5leHRTaWJsaW5nKSxjLmluc2VydEJlZm9yZShiWy0ta10sZCksCmFbaF09YltrXTtlbHNle2lmKCFwKWZvcihwPW5ldyBNYXAsZD1tO2Q8azspcC5zZXQoYltkXSxkKyspO2Q9cC5nZXQoYVtsXSk7aWYoZD09bnVsbCljLnJlbW92ZUNoaWxkKGFbbF0pLGwrKztlbHNlIGlmKG08ZCYmZDxrKXtlPWw7bGV0IHI9MSx0O2Zvcig7KytlPGgmJmU8azspe3Q9cC5nZXQoYVtlXSk7aWYodD09bnVsbHx8dCE9PWQrcilicmVhaztyKyt9aWYocj5kLW0pZm9yKGU9YVtsXTttPGQ7KWMuaW5zZXJ0QmVmb3JlKGJbbSsrXSxlKTtlbHNlIGMucmVwbGFjZUNoaWxkKGJbbSsrXSxhW2wrK10pfWVsc2UgbCsrfX19cmV0dXJuIGJ9O3ZCPWZ1bmN0aW9uKGEpe2lmKCFBcnJheS5pc0FycmF5KGEpKXJldHVybiBhPy5wYXJlbnRFbGVtZW50O2ZvcihsZXQgYiBvZiBhKWlmKGE9dkIoYikpcmV0dXJuIGE7cmV0dXJuIG51bGx9O3dCPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5fZGlzcG9zZUVmZmVjdHM7YS5fZGlzcG9zZUVmZmVjdHM9Yz8oKT0+e2MoKTtiKCl9OmJ9OwpfLnpCPWZ1bmN0aW9uKGEsYixjKXtpZih0eXBlb2YgYz09PSJib29sZWFuIiYmbGJhLmhhcyhiKSlfLlFBKGEsYixTdHJpbmcoYykpO2Vsc2UgaWYoYz09PSExJiZtYmEuaGFzKGIpKV8uUUEoYSxiLG51bGwpO2Vsc2UgaWYoYiE9PSJpZG9tS2V5IiYmYiE9PSJza2lwIiYmYiE9PSJza2lwY2hpbGRyZW4iJiZiIT09ImNoaWxkcmVuIiYmYiE9PSJlbCIpaWYoYi5zdGFydHNXaXRoKCJvbiIpKXtpZihiWzJdIT09IjoiKXRocm93IF8uVXUoRXJyb3IoImxjYCIrYiksNCxhLnRhZ05hbWUpO2xldCBmPWIuc2xpY2UoMyk7dmFyIGQ9Xy5IQSgpO2lmKGM9PT12b2lkIDApZHx8Zj09PSJqc2FjdGlvbiJ8fHhCLmluY2x1ZGVzKGYpfHwoYVtgb24ke2Z9YF09bnVsbCk7ZWxzZSBpZihmPT09ImpzYWN0aW9uIil7Yz1BcnJheS5pc0FycmF5KGMpP2M6W2NdO2ZvcihsZXQgaCBvZiBjKXtpZih0eXBlb2YgaCE9PSJvYmplY3QifHxoPT09bnVsbHx8dHlwZW9mIGgucW4hPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKCJzY2AiKwpiKTtoLnFuKDAsYSxkP18uWXU6KCk9Pnt9KX19ZWxzZXtpZih0eXBlb2YgYz09PSJmdW5jdGlvbiIpe2R8fGFbZUJdIT09dm9pZCAwfHwoYVtlQl09ITEsd0IoYSwoKT0+e2FbZUJdPSEwfSkpO3ZhciBlPWdiYShjLCFkKX1lbHNle25iYShiLGMpO2lmKGMucW4pe2MucW4oMCxhLGYsZD9fLll1OigpPT57fSk7cmV0dXJufWU9Yy5VcCgwKX1pZihkJiZhW2BvbiR7Zn1gXT09PXZvaWQgMClhLmFkZEV2ZW50TGlzdGVuZXIoZixlKSxfLll1KCgpPT52b2lkIGEucmVtb3ZlRXZlbnRMaXN0ZW5lcihmLGUpKTtlbHNlIGlmKGR8fCF4Qi5pbmNsdWRlcyhmKSlhW2BvbiR7Zn1gXT1lfX1lbHNle2lmKGIuc3RhcnRzV2l0aCgiZGF0YS0iKSYmdHlwZW9mIGM9PT0ic3RyaW5nIil0cnl7Yz1mYmEoYyl9Y2F0Y2goZil7Yz0ielNveXoifXR5cGVvZiBjIT09ImZ1bmN0aW9uInx8YS5fZGlzcG9zZUVmZmVjdHMhPW51bGw/KChkPWIuc3RhcnRzV2l0aCgicHJvcDoiKSkmJihiPWIuc2xpY2UoNSkpLGI9PT0KInN0eWxlIj9fLkhBKCk/dHlwZW9mIGM9PT0ib2JqZWN0IiYmYyE9PW51bGw/b2JhKGEsYyk6eUIoYSxiLGMpOnlCKGEsYixjKTooXy5LdS55diYmKGQmJnBiYShhLnRhZ05hbWUpfHwoYz1rYmEoYS50YWdOYW1lLGIsYykpKSxkP2FbYl09YzpxYmEoYSxiLGMpKSk6KGEuX3NpZ25hbFByb3BzfHwoYS5fc2lnbmFsUHJvcHM9W10pLGEuX3NpZ25hbFZhbHVlc3x8KGEuX3NpZ25hbFZhbHVlcz1bXSksYS5fc2lnbmFsUHJvcHMucHVzaChiKSl9fTtfLkFCPWZ1bmN0aW9uKGEsYix7bGo6Y309e30pe2lmKGI/LmVsKXtsZXQgZD1iLmVsO2QubXo/LihhKTthLl9kaXNwb3NlUmVmfHwoYS5fZGlzcG9zZVJlZj0oKT0+e2QudXo/LigpO2RlbGV0ZSBhLl9kaXNwb3NlUmVmfSxjJiZfLll1KCgpPT57YS5fZGlzcG9zZVJlZj8uKCl9KSl9fTsKbmJhPWZ1bmN0aW9uKGEsYil7aWYodHlwZW9mIGIhPT0ib2JqZWN0Inx8Yj09PW51bGwpdGhyb3cgXy5VdShFcnJvcigicWNgIithKyJgIit0eXBlb2YgYiksNCk7aWYodHlwZW9mIGIuVXAhPT0iZnVuY3Rpb24iKXRocm93IF8uVXUoRXJyb3IoInJjYCIrYSsiYCIrT2JqZWN0LmtleXMoYikpLDQpO307cGJhPWZ1bmN0aW9uKGEpe3JldHVybiBhLmxlbmd0aD4wJiZhLmluY2x1ZGVzKCItIikmJiFyYmEuaW5jbHVkZXMoYS50b0xvd2VyQ2FzZSgpKX07Cm9iYT1mdW5jdGlvbihhLGIpe3ZhciBjPV8uWnQsZD1hW0JCXSxlPWFbQ0JdO2lmKGUpZm9yKHZhciBmIG9mIHNiYShlLGIpKURCKGQsZiksRUIoYS5zdHlsZSxmLG51bGwpO2U9bmV3IFNldDtmb3IobGV0IGggaW4gYil7aWYoIWIuaGFzT3duUHJvcGVydHkoaCkpY29udGludWU7ZS5hZGQoaCk7bGV0IGs9YltoXTtpZih0eXBlb2Ygaz09PSJmdW5jdGlvbiImJmMpe2lmKCFkKXtkPW5ldyBNYXA7bGV0IGw9YVtCQl09ZDt3QihhLCgpPT57Zm9yKGxldCBtIG9mIGwudmFsdWVzKCkpbSgpO2wuY2xlYXIoKX0pfURCKGQsaCk7Zj1fLnV2KCgpPT57Xy50digoKT0+e3ZhciBsPWsoKTtFQihhLnN0eWxlLGgsbCl9LCJRRHpISmUiKX0pO2Quc2V0KGgsZil9ZWxzZSBEQihkLGgpLEVCKGEuc3R5bGUsaCxrKX1hW0NCXT1lfTsKRUI9ZnVuY3Rpb24oYSxiLGMpe2M9PW51bGx8fGM9PT0hMT9iLnN0YXJ0c1dpdGgoIi0tIil8fGIuaW5jbHVkZXMoIi0iKT9hLnJlbW92ZVByb3BlcnR5KGIpOmFbYl09IiI6Yi5zdGFydHNXaXRoKCItLSIpfHxiLmluY2x1ZGVzKCItIik/YS5zZXRQcm9wZXJ0eShiLFN0cmluZyhjKSk6YVtiXT1jfTtzYmE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24qKCl7Zm9yKGxldCBjIG9mIGEpYyBpbiBifHwoeWllbGQgYyl9KCl9O0RCPWZ1bmN0aW9uKGEsYil7aWYoYSl7dmFyIGM9YS5nZXQoYik7YyYmKGMoKSxhLmRlbGV0ZShiKSl9fTtGQj1mdW5jdGlvbihhKXtyZXR1cm4oMCxfLnFyKShhKSYmIl9fd2l6X1JxTVlNImluIGF9O18uR0I9ZnVuY3Rpb24oYSl7cmV0dXJuIEZCKGEpP2EuX193aXpfUnFNWU0uUWU6YX07SEI9ZnVuY3Rpb24oYSxiLC4uLmMpe2I9Yj8/e307cmV0dXJue3R5cGU6YSxwcm9wczpiLGNoaWxkcmVuOmMsW18uTHZdOiEwfX07Xy5JQj1mdW5jdGlvbihhKXtyZXR1cm4gYS5jaGlsZHJlbn07Cl8uTEI9ZnVuY3Rpb24oYSl7dmFyIGI9SkIhPT1IQjtKQj1hP18uS0I6SEI7cmV0dXJuIGJ9O3RiYT1mdW5jdGlvbigpe3ZhciBhPV8uQ0EoMSksYj1fLmN1KGEsXy5NQik7aWYoIV8uYnUoYikpcmV0dXJuIGI7YT1fLmN1KGEsXy5OQik7aWYoIV8uYnUoYSkpcmV0dXJuIGEubncoKX07Xy5QQj1mdW5jdGlvbihhLGIpe2I9PW51bGwmJihiPShfLk9CLnN2Pz9kb2N1bWVudCkuX193aXpkaXNwYXRjaGVyLmFKKCkpO2IuZ2V0KF8uRnQpLm8uZGlzcGF0Y2hFdmVudChuZXcgXy5IdChhLF8ubUIpKX07CnViYT1mdW5jdGlvbihhKXtpZihBcnJheS5pc0FycmF5KGEpKXtpZihhLmxlbmd0aD4xKXRocm93IF8uVXUoRXJyb3IoInZjYCIrYS5sZW5ndGgrImAiK2EubWFwKFFCKS5qb2luKCIsICIpKSw0LCJTQ1JJUFQiKTthPWFbMF19aWYoYT09bnVsbClyZXR1cm4gbnVsbDtpZighKGEgaW5zdGFuY2VvZiBfLmpiKSl7aWYod2luZG93Py50cnVzdGVkVHlwZXM/LmlzU2NyaXB0KGEpKXRocm93IEVycm9yKCJ1YyIpO2lmKFN0cmluZyhhKS50cmltKCkubGVuZ3RoPT09MClyZXR1cm4gbnVsbDt0aHJvdyBFcnJvcigid2NgIitRQihhKSk7fXJldHVybiBhfTt2YmE9ZnVuY3Rpb24oYSxiKXtiPXViYShiKTtiIT09bnVsbCYmXy5uYihhLGIpfTsKXy5SQj1mdW5jdGlvbihhKXtpZihBcnJheS5pc0FycmF5KGEpKXtpZihhLmxlbmd0aD4xKXRocm93IF8uVXUoRXJyb3IoInhjYCIrYS5sZW5ndGgrImAiK2EubWFwKFFCKS5qb2luKCIsICIpKSw0LCJTVFlMRSIpO2E9YVswXX1pZihhPT1udWxsfHxTdHJpbmcoYSkudHJpbSgpLmxlbmd0aD09PTApcmV0dXJuIG51bGw7dGhyb3cgRXJyb3IoInljYCIrUUIoYSkpO307UUI9ZnVuY3Rpb24oYSl7cmV0dXJuYCgke3R5cGVvZiBhfSkgJHthIT1udWxsJiZ0eXBlb2YgYT09PSJvYmplY3QiP2EuY29uc3RydWN0b3IubmFtZTp0eXBlb2YgYX0gJHthfWB9O1NCPWZ1bmN0aW9uKCl7fTtUQj1mdW5jdGlvbigpe3JldHVybiBudWxsfTsKXy5YQj1mdW5jdGlvbihhLGI9e30pe3ZhciBjPVVCKCksZD0hMCxlLGY9ISFfLkt1LkpxO2YmJihlPXRiYSgpKTtfLnR2KCgpPT57dmFyIGg9IWQmJmIuV2UmJmYsaz1oP3ZCKGNbMF0pOnZvaWQgMDtkPSExO2IuV2UmJl8uZ3YrKzt2YXIgbD1jWzBdLG09Yy5fX3dpel9ScU1ZTS5RZSxuPV8uTEIoITApO3RyeXtsZXQgdjt0cnl7dj1hKCl9Y2F0Y2goRil7Xy5vdihGKSx2PWtCKCl9bGV0IHo9d2JhKGwsdixjKSxFPV8uVkIudnkoeik/P3o7QXJyYXkuaXNBcnJheShFKXx8KGMuX193aXpfUnFNWU0uUWU9W0VdKTtsZXQgQT1jLl9fd2l6X1JxTVlNLlFlO2lmKG0mJighQXJyYXkuaXNBcnJheShtKXx8bS5sZW5ndGghPT0wKSl7dmFyIHA9QXJyYXkuaXNBcnJheShtKT9tWzBdOm0scj1wW18uV0JdLHQ9cC5fZGlzcG9zZUVmZmVjdHM7cC5fZGlzcG9zZUVmZmVjdHM9dm9pZCAwO3A9QXJyYXkuaXNBcnJheShBKT9BWzBdOkE7cFtfLldCXT1yO3BbXy5XQl0mJihwW18uV0JdLlVxPXA9PT1BPwoxOkEubGVuZ3RoKTtwLl9kaXNwb3NlRWZmZWN0cz10fWNbMF09RTtiLldlJiZfLklBKCExKX1jYXRjaCh2KXt0aHJvdyBiLldlJiZfLklBKCEwKSxfLlV1KHYsNCk7fWZpbmFsbHl7Xy5MQihuKX1oJiZfLlBCKGssZSl9LGIuZGVidWdOYW1lKTtyZXR1cm4gY307CndiYT1mdW5jdGlvbihhLGIsYyl7Zm9yKDt0eXBlb2YgYj09PSJmdW5jdGlvbiI7KWI9YigpO2lmKGI/LltfLkx2XSl0aHJvdyBfLlV1KEVycm9yKCJ6Y2AiK2IudHlwZT8uWmMpLDQsYi50eXBlPy5aYyk7aWYoYT09bnVsbClyZXR1cm4gYj09bnVsbD9rQigpOl8ucUIoYik/bEIoYik6ckIoYik/bEIoYi50b1N0cmluZygpKTpfLmlCKGIpP2I6Yi5sZW5ndGg9PT0wP2tCKCk6WUIoYixjKTtpZihfLmlCKGEpKXtpZihiPT1udWxsKXJldHVybiBzQihhLGtCKCkpO2lmKF8ucUIoYikpcmV0dXJuIGFDKGEsYik7aWYockIoYikpcmV0dXJuIGFDKGEsYi50b1N0cmluZygpKTtpZihfLmlCKGIpKXJldHVybiBzQihhLGIpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gc0IoYSxrQigpKTtiPVlCKGIsYyk7dUIoW2FdLGMuX193aXpfUnFNWU0uUWUpO3JldHVybiBifWE9Xy5iQyhhKTtpZihiPT1udWxsKXJldHVybiB0QihhLGtCKCkpO2lmKF8ucUIoYikpcmV0dXJuIHRCKGEsbEIoYikpO2lmKHJCKGIpKXJldHVybiB0QihhLApsQihiLnRvU3RyaW5nKCkpKTtpZihfLmlCKGIpKXJldHVybiB1QihhLFtiXSlbMF07aWYoYi5sZW5ndGg9PT0wKXJldHVybiB0QihhLGtCKCkpO2I9WUIoYixjKTt1QihhLGMuX193aXpfUnFNWU0uUWUpO3JldHVybiBifTthQz1mdW5jdGlvbihhLGIpe2Eubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERT9hLnRleHRDb250ZW50IT09U3RyaW5nKGIpJiYoYS50ZXh0Q29udGVudD1TdHJpbmcoYikpOmE9c0IoYSxsQihiKSk7cmV0dXJuIGF9O18uYkM9ZnVuY3Rpb24oYSxiLGM9ITEpe3JldHVybiBjQyhhLGI/P1tdLGMpfTtZQj1mdW5jdGlvbihhLGIpe3ZhciBjPV8uYkMoYSx2b2lkIDAsITApO2lmKGMubGVuZ3RoPT09MClyZXR1cm4ga0IoKTtiLl9fd2l6X1JxTVlNLlFlPWM7cmV0dXJuIGF9OwpjQz1mdW5jdGlvbihhLGI9W10sYz0hMSxkLGU9LTEpe2lmKGE9PW51bGwpcmV0dXJuIGI7aWYoIUFycmF5LmlzQXJyYXkoYikmJl8uakIoYikpc3dpdGNoKF8uakIoYSkmJk9BKGIsYSksYi50YWdOYW1lKXtjYXNlICJTQ1JJUFQiOnZiYShiLGEpO3JldHVybjtjYXNlICJTVFlMRSI6aWYoXy5SQihhKSE9PW51bGwpdGhyb3cgRXJyb3IoImgiKTtyZXR1cm59aWYoQXJyYXkuaXNBcnJheShhKSl7Zm9yKHZhciBmPTA7ZjxhLmxlbmd0aDtmKyspY0MoYVtmXSxiLGMsYSxmKTtyZXR1cm4gYn1pZihhIGluc3RhbmNlb2YgXy5kQylyZXR1cm4gZj1hLm9jKCksY0MoZixiLGMsZCxlKTtpZihfLnFCKGEpKXJldHVybiBhPWxCKGEpLGQmJmMmJihkW2VdPWEpLGVDKGIsYSk7aWYoXy5vQihhKSl7Yz1fLnBCKGEpO2ZvcihjPWMuZmlyc3RDaGlsZDtjOylmPWMubmV4dFNpYmxpbmcsZUMoYixjKSxjPWY7cmV0dXJuIGJ9aWYockIoYSkpcmV0dXJuIGE9bEIoYS50b1N0cmluZygpKSxkJiZjJiYoZFtlXT0KYSksZUMoYixhKTtpZihfLmlCKGEpKXJldHVybiBlQyhiLGEpO2lmKHR5cGVvZiBhPT09ImZ1bmN0aW9uIil7Zj1fLlhCKCgpPT57dmFyIGs9YSgpO2lmKGs9PW51bGx8fF8ucUIoaykpcmV0dXJuIGs7aWYoXy5vQihrKSlyZXR1cm4gaz1fLnBCKGspLEFycmF5LmZyb20oay5jaGlsZE5vZGVzKTt0aHJvdyBfLlV1KEVycm9yKCJBYmAiKyhfLk11Py5uYW1lPz8idW5rbm93biIpKyJgIit0eXBlb2YgayksNCk7fSx7ZGVidWdOYW1lOiJxbUYybmUiLHpwOmF9KVswXTtpZihBcnJheS5pc0FycmF5KGYpKXtmb3IodmFyIGggb2YgZillQyhiLGgpO3JldHVybiBifWQmJmMmJihkW2VdPWYpO3JldHVybiBlQyhiLGYpfWlmKGE/LltfLkx2XSl7ZD1hO2U9Xy5MQighMCk7aD1KQjt0cnl7Zj1oKGQudHlwZSxkLnByb3BzLC4uLmQuY2hpbGRyZW4pfWZpbmFsbHl7Xy5MQihlKX1yZXR1cm4gY0MoZixiLGMpfXRocm93IF8uVXUoRXJyb3IoIkFjIiksNCk7fTsKVUI9ZnVuY3Rpb24oYSl7dmFyIGI9T2JqZWN0LmFzc2lnbihbXSx7X193aXpfUnFNWU06e1FlOltdfX0pO2lmKCFhKXJldHVybiBiO2JbMF09WUIoYSxiKTtyZXR1cm4gYn07ZUM9ZnVuY3Rpb24oYSxiKXtBcnJheS5pc0FycmF5KGEpP2EucHVzaChiKTphLmFwcGVuZENoaWxkKGIpO3JldHVybiBhfTtfLmZDPWZ1bmN0aW9uKGEpe2lmKEFycmF5LmlzQXJyYXkoYSkpe2ZvcihsZXQgYj0wO2I8YS5sZW5ndGg7YisrKWFbYl09Xy5mQyhhW2JdKTtyZXR1cm4gYX1yZXR1cm4gYSBpbnN0YW5jZW9mIF8uZEM/KGE9YS5vYygpLF8uZkMoYSkpOmF9OwpfLmdDPWZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlPV8uRkEoYSksZj1sPT57ZD1sO3ZhciBtPV8uTEIoITApLG49Xy5rdShfLnp2KTt0cnl7Yz1fLmZDKGEoYikpfWZpbmFsbHl7Xy5rdShuKSxfLkxCKG0pfSFBcnJheS5pc0FycmF5KGMpJiZfLkZ1KGwpfTtlPV8uS3UuR3A/aEIoZixlKTpfLnV2KGYsXy5LdS5yaXx8ISFfLlp0KTtpZighYi5qbil7Zj1fLiR0KGQpO3RyeXtyZXR1cm4oMCxfLnZ2KShhLGIsYyksY31maW5hbGx5e18uJHQoZil9fSFGQihjKSYmQXJyYXkuaXNBcnJheShjKSYmKGM9VUIoYykpO3ZhciBoPV8uR0IoYyk7Zj1BcnJheS5pc0FycmF5KGgpP2hbMF06aDt2YXIgaz0hMTtpZihmKXtsZXQgbD1iPy5pZG9tS2V5Pz9hLG09aCE9PWY7Zi5fZGlzcG9zZUVmZmVjdHM9ZTtsZXQgbj1mW18uV0JdfHx7fSxwPUZCKGMpP2M6bi55bjtPYmplY3QuYXNzaWduKG4se2tleTpsLFVxOm0/aC5sZW5ndGg6MSxvd25lcjpkLGxKOiEhZltfLldCXSx5bjpwfSk7ZltfLldCXT1ufWVsc2Ugaz0KITA7KCgpPT57dmFyIGw9Xy4kdChkKTt0cnl7KDAsXy52dikoYSxiLGgpfWZpbmFsbHl7Xy4kdChsKX19KSgpO2smJmUoKTtyZXR1cm4gY307aEM9ZnVuY3Rpb24oYSxiKXtpZighYS52JiZiKXthLnY9ITA7dHJ5e2EuSGYoKX1jYXRjaChjKXtfLkt1LmhhbmRsZUVycm9yPy4oLi4uXy5KQShjLGEuaj8uWmMpKX1fLmJ3LkhmKGEpO2EuZWw9bnVsbDtiLl9faW5zdGFuY2UmJmRlbGV0ZSBiLl9faW5zdGFuY2V9fTtfLmpDPWZ1bmN0aW9uKGEsYixjPSExKXthLl9zaWduYWxQcm9wcyE9bnVsbCYmYS5fZGlzcG9zZUVmZmVjdHM9PW51bGwmJihjP2EuX2Rpc3Bvc2VFZmZlY3RzPV8udXYoKCk9PnZvaWQgaUMoYSxiKSxfLkt1LnJpfHwhIV8uWnQpOmlDKGEsYikpfTsKaUM9ZnVuY3Rpb24oYSxiKXtfLnR2KCgpPT57dmFyIGM9YS5fc2lnbmFsUHJvcHMsZD1hLl9zaWduYWxWYWx1ZXM7Zm9yKGxldCBlPTA7ZTxjLmxlbmd0aDtlKyspe2xldCBmPWNbZV0saD1iW2ZdKCk7ZFtlXSE9PWgmJihkW2VdPWgsXy56QihhLGYsaCkpfX0sImUzWVZiYiIpfTtfLmxDPWZ1bmN0aW9uKGEsYiwuLi5jKXtiPz8oYj17fSk7cmV0dXJuIF8uSEEoKXx8Xy5NdT09bnVsbD9uZXcgeGJhKGEsYixjKTprQyhhLGIsYyl9OwprQz1mdW5jdGlvbihhLGIsYyl7aWYoYT09PV8uSUIpcmV0dXJuIGM7aWYodHlwZW9mIGE9PT0iZnVuY3Rpb24iKXJldHVybiBfLk11JiYhXy5IQSgpJiYoYi5qbj0hMCksXy5HQShhLCgpPT57Yy5sZW5ndGg+MCYmKGIuY2hpbGRyZW49Yy5sZW5ndGg9PT0xP2NbMF06Yyk7aWYoYS5jb21wb25lbnRUeXBlPT09Xy5Ldil7bGV0IGU7aEIoKCk9Pnt2YXIgZj1iO2lmKGEuY29tcG9uZW50VHlwZSE9PV8uS3YpZT0hMTtlbHNle2Z8fChmPXt9KTt2YXIgaD1uZXcgXy5tQyhmLGEpLGs9Xy5rdShfLnp2KTt0cnl7dmFyIGw9aC5vYyhmKX1maW5hbGx5e18ua3Uoayl9bCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50PyhsLl9faW5zdGFuY2U9aCxoLmVsPWwsaC5qPWEsYS5aYz1sLnRhZ05hbWUudG9Mb3dlckNhc2UoKSxfLmJ3LkdmKGgpLGU9bCk6ZT1sfX0sYS5uYW1lKTtpZihlKXJldHVybiBlfXJldHVybiBfLmdDKGEsYil9LGIuZGVidWdJbnN0YW5jZSk7dmFyIGQ9eWJhKGEsYik7Zm9yKGxldCBlIGluIGIpXy56QihkLAplLGJbZV0pO18uakMoZCxiKTtfLmJDKGMsZCk7Xy5BQihkLGIse2xqOiEwfSk7KDAsXy54dikoZCxiKTtyZXR1cm4gZH07eWJhPWZ1bmN0aW9uKGEsYil7YT0oTkEuaGFzKGEudG9Mb3dlckNhc2UoKSk/MDpNQS5oYXMoYS5zdGFydHNXaXRoKCJzdmc6Iik/YS5yZXBsYWNlKCJzdmc6IiwiIik6YSkpP2RvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGEuc3RhcnRzV2l0aCgic3ZnOiIpP2EucmVwbGFjZSgic3ZnOiIsIiIpOmEpOigwLF8ud3YpKGEsYil8fGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYSk7YVtfLm5DXT0hMDtyZXR1cm4gYX07Cl8ucEM9ZnVuY3Rpb24oYSl7aWYoYSl7YS5fZGlzcG9zZVJlZj8uKCk7YS5fZGlzcG9zZUVmZmVjdHM/LigpO2lmKGEuX19pbnN0YW5jZSYmYS5fX2luc3RhbmNlIGluc3RhbmNlb2Ygb0Mpe3ZhciBiPWEuX19pbnN0YW5jZTtoQyhiLGEpO2IgaW5zdGFuY2VvZiBfLm1DJiZiLkQoKX1mb3IoYj0wO2I8YS5jaGlsZE5vZGVzLmxlbmd0aDtiKyspXy5wQyhhLmNoaWxkTm9kZXNbYl0pfX07emJhPWZ1bmN0aW9uKGEpe3FDLnB1c2goYSk9PT0xJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntzZXRUaW1lb3V0KCgpPT57dmFyIGI9Wy4uLnFDXTtxQz1bXTtmb3IobGV0IGMgb2YgYil0cnl7Zm9yKGI9MDtiPGMubGVuZ3RoO2IrKylfLnBDKGNbYl0pfWNhdGNoKGQpe18uS3UuaGFuZGxlRXJyb3I/LiguLi5fLkpBKGQpKX19KX0pfTtfLks9ZnVuY3Rpb24oYSxiLC4uLmMpe3JldHVybiBKQihhLGIsLi4uYyl9O18uckM9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5rdShfLnl2KTt0cnl7YSgpfWZpbmFsbHl7Xy5rdShiKX19OwpBYmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O3NDPWZ1bmN0aW9uKGEsYixjPSIiKXtmdW5jdGlvbiBkKCl7cmV0dXJuIGUoKX12YXIgZT10eXBlb2YgYT09PSJmdW5jdGlvbiI/REEoYSxBYmEsYj8uZXF1YWxzKTpEQShhLnNvdXJjZSxhLlRnLGI/LmVxdWFscyk7dmFyIGY9ZVtfLlp1XTtmLmRlYnVnTmFtZT1fLmV1KGI/LmRlYnVnTmFtZSxjLCJbbGlua2VkU2lnbmFsXSIpO2RbXy5adV09ZjtyZXR1cm5bZCxoPT57Xy5ydShmKTtfLnl1KGYsaCk7Zi5QYj0hMTtmLnJqPV8ubXV9LGg9PntfLnJ1KGYpO2lmKGYudmFsdWU9PT1fLkl2KXRocm93IGYuZXJyb3I7Xy5qdT8uTGUhPT0hMXx8Xy53dShmKTtfLnl1KGYsaChmLnZhbHVlKSk7Zi5QYj0hMTtmLnJqPV8ubXV9XX07Xy51Qz1mdW5jdGlvbigpe3RDfHwodEM9e09jOiExLFV5OjAsc3RhY2s6W10sc2Vzc2lvbklkOiIiLGRoOnZvaWQgMCxwcm9jZXNzb3JzOltdLFdoOigpPT4hMH0pO3JldHVybiB0Q307CnZDPWZ1bmN0aW9uKCl7dmFyIGE9Xy51QygpO3JldHVybiBhLnN0YWNrW2Euc3RhY2subGVuZ3RoLTFdfTtfLndDPWZ1bmN0aW9uKGEpe3ZhciBiPV8udUMoKTtyZXR1cm4gYi5PYz9iLmRoP2IuZGhbYV06ITA6ITF9O0RiYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8ud0MoYSkmJl8udUMoKS5XaChhLGIsQmJhKT9uZXcgQ2JhKGEsYixjKTp4Q307Cl8ueUM9ZnVuY3Rpb24oYSxiLGMpe2lmKHR5cGVvZiBjPT09ImZ1bmN0aW9uIil7dmFyIGQ9YztjPXZvaWQgMH12YXIgZT1EYmEoYSxiLGMpO2lmKGM/LmVuZFRpbWUhPW51bGwpcmV0dXJuIGQmJl8uSXAoRXJyb3IoIkVjIikpLGU7ZSE9PXhDJiZjPy5hY3RpdmUhPT0hMSYmXy51QygpLnN0YWNrLnB1c2goZSk7aWYoIWQpcmV0dXJuIGU7aWYoZT09PXhDKXJldHVybiBkKGUpO3RyeXtsZXQgZj1kKGUpO2lmKGYgaW5zdGFuY2VvZiBQcm9taXNlKXJldHVybiBmLnRoZW4oaD0+e2UuZW5kKCk7cmV0dXJuIGh9LGg9PntlLmVuZCgiU1BBTl9TVEFUVVNfRVJST1IiKTt0aHJvdyBoO30pO2UuZW5kKCk7cmV0dXJuIGZ9Y2F0Y2goZil7dGhyb3cgZS5lbmQoIlNQQU5fU1RBVFVTX0VSUk9SIiksZjt9fTsKekM9ZnVuY3Rpb24oYSxiLGMsZCl7YSBpbnN0YW5jZW9mIEVsZW1lbnQmJihjLmRlYnVnTmFtZXx8KGMuZGVidWdOYW1lPWA8JHthLnRhZ05hbWUudG9Mb3dlckNhc2UoKX1gKyhhLnRhZ05hbWUuaW5jbHVkZXMoIi0iKT8iPiI6YC4ke2EuY2xhc3NOYW1lfT5gKSksXy54KCJ5dHdpel9lbmFibGVfZGVidWdfY29tcG9uZW50X3Byb3BzIikmJihhLmRlYnVnUHJvcHN8fChhLmRlYnVnUHJvcHM9QUEoYixlPT4oKT0+ZSgpKSksYi5kYXRhPT09dm9pZCAwfHwiZGF0YSJpbiBhJiYhYS5pc1dlYkNvbXBvbmVudFdyYXBwZXJ8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLmRlYnVnUHJvcHMsImRhdGEiLHtnZXQ6KCk9Pl8uQnYoYi5kYXRhKSxzZXQ6ZT0+e2Q/LmRhdGE/LihlKX0sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9KSkpfTsKXy5BQz1mdW5jdGlvbihhLGIpe2lmKGEubGVuZ3RoPT09MCYmIWI/LmluaXRpYWwpcmV0dXJuIHNDKGEse2RlYnVnTmFtZTpiPy5kZWJ1Z05hbWV9LCJoIik7dmFyIFtjLGQsZV09c0Moe3NvdXJjZTooKT0+YSgpLFRnOihmLGgpPT5oPy52YWx1ZT9hKGgudmFsdWUpOmI/LmluaXRpYWw/YShiLmluaXRpYWwpOmZ9LHtkZWJ1Z05hbWU6Yj8uZGVidWdOYW1lfSwiaSIpO3JldHVybltjLGQsZV19OwpfLkw9ZnVuY3Rpb24oYSxiPSIiKXt2YXIgYz1kPT5fLnlDKCJ5dENvbXBvbmVudCIse30sZT0+e3ZhciBmPUJDPXt9O2lmKGM/Lmlkb21Db21wYXQmJmQuam4pe2xldCBbayxsXT1FYmEoZCx0eXBlb2YgYy5pZG9tQ29tcGF0PT09Im9iamVjdCI/Yz8uaWRvbUNvbXBhdC5jYWxsYmFja3M6e30pO3ZhciBoPUNDKGEsZCk7Zi5Hej1oO0JDPXZvaWQgMDt6QyhoLGQsYyxrKTtlLkRlKHtkZWJ1Z05hbWU6Yy5kZWJ1Z05hbWV9KTtlPV8uR0IoaCk7ZT1BcnJheS5pc0FycmF5KGUpP2VbMF06ZTtlW18uV0JdfHwoZVtfLldCXT17fSk7ZVtfLldCXS5xQj1sO18uQ3YoZCxoKTtyZXR1cm4gaH1kPUFBKGQsRmJhKTtoPUNDKGEsZCk7ekMoaCxkLGMpO2YuR3o9aDtCQz12b2lkIDA7ZS5EZSh7ZGVidWdOYW1lOmMuZGVidWdOYW1lfSk7Xy5DdihkLGgpO3JldHVybiBofSk7Yy5kZWJ1Z05hbWU9YjtyZXR1cm4gY307Q0M9ZnVuY3Rpb24oYSxiKXthPWEoYik7cmV0dXJuIF8uZkMoYSl9OwpGYmE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYj09PSJjaGlsZHJlbiJ8fGI9PT0icmVmInx8dHlwZW9mIGE9PT0iZnVuY3Rpb24ifHxhPT09dm9pZCAwP2E6KCk9PmF9O0diYT1mdW5jdGlvbihhLGIpe3JldHVybigpPT5fLkJ2KGEpPz9ifTtfLkRDPWZ1bmN0aW9uKGEsYil7dmFyIGM9ey4uLmF9O2ZvcihsZXQgZCBpbiBiKWIuaGFzT3duUHJvcGVydHkoZCkmJihjW2RdPUdiYShhW2RdLGJbZF0pKTtyZXR1cm4gY307CkViYT1mdW5jdGlvbihhLGIpe3ZhciBjPXt9LGQ9e307Zm9yKGxldCBlIGluIGEpe2xldCBmPWFbZV07aWYoZSE9PSJjaGlsZHJlbiImJmUhPT0icmVmIilpZih0eXBlb2YgZj09PSJmdW5jdGlvbiIpaWYoZSBpbiBifHxmLmxlbmd0aD4wKWRbZV09ZixhW2VdPSguLi5oKT0+ZFtlXSguLi5oKTtlbHNle2lmKGU9PT0iZGF0YSIpe2xldCBbaCxrXT1fLkFDKGYse2RlYnVnTmFtZTpgJHtlfTpjd2lzYH0pO2FbZV09aDtjW2VdPWt9fWVsc2UgaWYoIShhW2VdPT09dm9pZCAwJiZlIGluIGIpKXtsZXQgW2gsa109Xy5KKGFbZV0se2RlYnVnTmFtZTpgJHtlfTpjd2lzYH0sIlZiY2dDZCIpO2FbZV09aDtjW2VdPWt9fXJldHVybltjLGZ1bmN0aW9uKGUpe2ZvcihsZXQgZiBpbiBlKXtsZXQgaD1lW2ZdO2YhPT0iY2hpbGRyZW4iJiZmIT09InJlZiImJih0eXBlb2YgaD09PSJmdW5jdGlvbiI/ZiBpbiBiP2RbZl09aDpoLmxlbmd0aD4wJiYoZFtmXT1oLF8uSXAobmV3IF8uWGooSGJhLGYpKSk6ZiBpbgpiJiZoPT09dm9pZCAwfHwoY1tmXXx8Xy5IcChuZXcgXy5YaihJYmEsZikpLF8uckMoKCk9PntjW2ZdKGgpfSkpKX19XX07ClZhYT17Li4uXy5YdSx2YWx1ZTpfLkd2LFBiOiEwLGVycm9yOm51bGwsZXF1YWw6Xy5pdSxraW5kOiJsaW5rZWRTaWduYWwiLFhtKGEpe3JldHVybiBhLnZhbHVlPT09Xy5Hdnx8YS52YWx1ZT09PV8uSHZ9LFltKGEpe2lmKGEudmFsdWU9PT1fLkh2KXRocm93IEVycm9yKCJoIik7dmFyIGI9YS52YWx1ZTthLnZhbHVlPV8uSHY7dmFyIGM9Xy50dShhKSxkPSExO3RyeXtsZXQgZj1hLnNvdXJjZSgpLGg9YiE9PV8uR3YmJmIhPT1fLkl2O3ZhciBlPWEuVGcoZixoP3tzb3VyY2U6YS5zb3VyY2VWYWx1ZSx2YWx1ZTpifTp2b2lkIDApO2Euc291cmNlVmFsdWU9ZjtfLmt1KG51bGwpO2Q9aCYmZSE9PV8uSXYmJmEuZXF1YWwoYixlKX1jYXRjaChmKXtlPV8uSXYsYS5lcnJvcj1mfWZpbmFsbHl7Xy5rdShjKSxhJiZfLnZ1KGEpfWQ/YS52YWx1ZT1iOihhLnZhbHVlPWUsYS52ZXJzaW9uKyspfX07Xy5tQj17fTtfLkl0LnByb3RvdHlwZS5qPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29udGVudH07Cl8uSXQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29udGVudH07S0E9Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfX07Xy5kQz1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuQ289bnVsbH19O29DPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMucHJvcHM9YTt0aGlzLnY9ITF9R2YoKXt9SmkoKXt9SGYoKXt9S2koKXt9fTt0cnl7bGV0IGE9d2luZG93Py50b3A/P18udTthLlUzYkhIZj8/KGEuVTNiSEhmPTApO2EuVTNiSEhmKyt9Y2F0Y2goYSl7Xy51LlUzYkhIZj8/KF8udS5VM2JISGY9MCksXy51LlUzYkhIZisrfTtfLkZDPW5ldyBXZWFrTWFwO18uR0M9WGFhKCk7dmFyIG1iYT1uZXcgU2V0KCJhbGxvd2Z1bGxzY3JlZW4gYWxsb3d0cmFuc3BhcmVuY3kgYXN5bmMgYXV0b2ZvY3VzIGF1dG9wbGF5IGNoZWNrZWQgY29udHJvbHMgZGVmYXVsdCBkZWZlciBkaXNhYmxlZCBkaXNhYmxlcmVtb3RlcGxheWJhY2sgZm9ybW5vdmFsaWRhdGUgaGlkZGVuIGluZXJ0IGlzbWFwIGl0ZW1zY29wZSBqc3NoYWRvdyBqc3Nsb3QgbG9vcCBtdWx0aXBsZSBtdXRlZCBub21vZHVsZSBub3ZhbGlkYXRlIG9wZW4gcGxheXNpbmxpbmUgcmVhZG9ubHkgcmVxdWlyZWQgcmV2ZXJzZWQgc2NvcGVkIHNlYW1sZXNzIHNlbGVjdGVkIHNvcnRhYmxlIHR5cGVtdXN0bWF0Y2giLnNwbGl0KCIgIikpLGxiYT1uZXcgU2V0KFsiY29udGVudGVkaXRhYmxlIiwiZHJhZ2dhYmxlIiwic3BlbGxjaGVjayJdKTt2YXIgTUE9bmV3IFNldCgiYSBhbHRHbHlwaCBhbHRHbHlwaERlZiBhbHRHbHlwaEl0ZW0gYW5pbWF0ZSBhbmltYXRlQ29sb3IgYW5pbWF0ZU1vdGlvbiBhbmltYXRlVHJhbnNmb3JtIGNpcmNsZSBjbGlwUGF0aCBjb2xvci1wcm9maWxlIGN1cnNvciBkZWZzIGRlc2MgZWxsaXBzZSBmZUJsZW5kIGZlQ29sb3JNYXRyaXggZmVDb21wb25lbnRUcmFuc2ZlciBmZUNvbXBvc2l0ZSBmZUNvbnZvbHZlTWF0cml4IGZlRGlmZnVzZUxpZ2h0aW5nIGZlRGlzcGxhY2VtZW50TWFwIGZlRGlzdGFudExpZ2h0IGZlRHJvcFNoYWRvdyBmZUZsb29kIGZlRnVuY0EgZmVGdW5jQiBmZUZ1bmNHIGZlRnVuY1IgZmVHYXVzc2lhbkJsdXIgZmVJbWFnZSBmZU1lcmdlIGZlTWVyZ2VOb2RlIGZlTW9ycGhvbG9neSBmZU9mZnNldCBmZVBvaW50TGlnaHQgZmVTcGVjdWxhckxpZ2h0aW5nIGZlU3BvdExpZ2h0IGZlVGlsZSBmZVR1cmJ1bGVuY2UgZmlsdGVyIGZvbnQgZm9udC1mYWNlIGZvbnQtZmFjZS1mb3JtYXQgZm9udC1mYWNlLW5hbWUgZm9udC1mYWNlLXNyYyBmb250LWZhY2UtdXJpIGZvcmVpZ25PYmplY3QgZyBnbHlwaCBnbHlwaFJlZiBoa2VybiBpbWFnZSBsaW5lIGxpbmVhckdyYWRpZW50IG1hcmtlciBtYXNrIG1ldGFkYXRhIG1pc3NpbmctZ2x5cGggbXBhdGggcGF0aCBwYXR0ZXJuIHBvbHlnb24gcG9seWxpbmUgcmFkaWFsR3JhZGllbnQgcmVjdCBzY3JpcHQgc2V0IHN0b3Agc3R5bGUgc3ZnIHN3aXRjaCBzeW1ib2wgdGV4dCB0ZXh0UGF0aCB0aXRsZSB0cmVmIHRzcGFuIHVzZSB2aWV3IHZrZXJuIi5zcGxpdCgiICIpKSwKTkE9bmV3IFNldChbImEiLCJmb250Iiwic2NyaXB0Iiwic3R5bGUiLCJ0aXRsZSJdKSxZYWE9bmV3IFNldChbImRlc2MiLCJmb3JlaWduT2JqZWN0IiwidGl0bGUiXSk7Xy5SQT17ZGVmYXVsdDoiX19kZWZhdWx0In07dmFyIFphYT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1BBLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKG51bGwpO18uSEM9U0EoKTtfLmNCPW51bGw7dmFyIGJiYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmNyZWF0ZWQ9W107dGhpcy5kZWxldGVkPVtdO3RoaXMubm9kZT1hfX07dmFyIGNiYT10eXBlb2YgTm9kZSE9PSJ1bmRlZmluZWQiJiZOb2RlLnByb3RvdHlwZS5nZXRSb290Tm9kZXx8ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcyxiPWE7YTspYj1hLGE9YS5wYXJlbnROb2RlO3JldHVybiBifTtfLldBPW51bGw7Xy5ZQT1udWxsO18uVUE9bnVsbDtfLlpBPW51bGw7Xy4kQT1bXTtfLmJCPVRBO18uYUI9W107Xy5JQz1mdW5jdGlvbihhKXtyZXR1cm4gZWJhKChiLGMsZCk9PntfLlVBPV8uWUE9YjtfLllBPW51bGw7YyhkKTtfLlhBKCk7Xy5ZQT1fLlVBO18uVUE9Xy5VQS5wYXJlbnROb2RlO3JldHVybiBifSxhKX0oKTtfLkpDPW5ldyBQQTtSZWdFeHAucHJvdG90eXBlLmhhc093blByb3BlcnR5KCJzdGlja3kiKTt2YXIgZUI9U3ltYm9sKCJqYyIpO3ZhciBoYmE9e2FsaWduOjEsYWx0OjEsImFyaWEtYWN0aXZlZGVzY2VuZGFudCI6MTAsImFyaWEtYXRvbWljIjoxLCJhcmlhLWF1dG9jb21wbGV0ZSI6MSwiYXJpYS1idXN5IjoxLCJhcmlhLWNoZWNrZWQiOjEsImFyaWEtY29udHJvbHMiOjEwLCJhcmlhLWN1cnJlbnQiOjEsImFyaWEtZGVzY3JpYmVkYnkiOjEwLCJhcmlhLWRpc2FibGVkIjoxLCJhcmlhLWRyb3BlZmZlY3QiOjEsImFyaWEtZXhwYW5kZWQiOjEsImFyaWEtaGFzcG9wdXAiOjEsImFyaWEtaGlkZGVuIjoxLCJhcmlhLWludmFsaWQiOjEsImFyaWEtbGFiZWwiOjEsImFyaWEtbGFiZWxsZWRieSI6MTAsImFyaWEtbGV2ZWwiOjEsImFyaWEtbGl2ZSI6MSwiYXJpYS1tdWx0aWxpbmUiOjEsImFyaWEtbXVsdGlzZWxlY3RhYmxlIjoxLCJhcmlhLW9yaWVudGF0aW9uIjoxLCJhcmlhLW93bnMiOjEwLCJhcmlhLXBvc2luc2V0IjoxLCJhcmlhLXByZXNzZWQiOjEsImFyaWEtcmVhZG9ubHkiOjEsImFyaWEtcmVsZXZhbnQiOjEsImFyaWEtcmVxdWlyZWQiOjEsCiJhcmlhLXNlbGVjdGVkIjoxLCJhcmlhLXNldHNpemUiOjEsImFyaWEtc29ydCI6MSwiYXJpYS12YWx1ZW1heCI6MSwiYXJpYS12YWx1ZW1pbiI6MSwiYXJpYS12YWx1ZW5vdyI6MSwiYXJpYS12YWx1ZXRleHQiOjEsYXN5bmM6OCxhdXRvY2FwaXRhbGl6ZToxLGF1dG9jb21wbGV0ZToxLGF1dG9jb3JyZWN0OjEsYXV0b2ZvY3VzOjEsYXV0b3BsYXk6MSxiZ2NvbG9yOjEsYm9yZGVyOjEsY2VsbHBhZGRpbmc6MSxjZWxsc3BhY2luZzoxLGNoZWNrZWQ6MSxjaXRlOjEsImNsYXNzIjoxLGNvbG9yOjEsY29sczoxLGNvbHNwYW46MSxjb250ZW50ZWRpdGFibGU6MSxjb250cm9sczoxLGNvbnRyb2xzbGlzdDoxLGNvb3JkczoxLGNyb3Nzb3JpZ2luOjEsZGF0ZXRpbWU6MSxkaXI6OCxkaXNhYmxlZDoxLGRvd25sb2FkOjEsZHJhZ2dhYmxlOjEsZW5jdHlwZToxLGZhY2U6MSwiZm9yIjoxMCxmb3JtZW5jdHlwZToxLGZyYW1lYm9yZGVyOjEsaGVpZ2h0OjEsaGlkZGVuOjEsaHJlZjo0LGhyZWZsYW5nOjEsCmlkOjEwLGluZXJ0OjEsaXNtYXA6MSxpdGVtaWQ6MSxpdGVtcHJvcDoxLGl0ZW1yZWY6MSxpdGVtc2NvcGU6MSxpdGVtdHlwZToxLGxhYmVsOjEsbGFuZzoxLGxpc3Q6MTAsbG9hZGluZzo4LGxvb3A6MSxtYXg6MSxtYXhsZW5ndGg6MSxtZWRpYToxLG1pbjoxLG1pbmxlbmd0aDoxLG11bHRpcGxlOjEsbXV0ZWQ6MSxuYW1lOjEwLG5vbmNlOjEsb3BlbjoxLHBsYWNlaG9sZGVyOjEscGxheXNpbmxpbmU6MSxwb3N0ZXI6MSxwcmVsb2FkOjEscmVsOjEscmVxdWlyZWQ6MSxyZXZlcnNlZDoxLHJvbGU6MSxyb3dzOjEscm93c3BhbjoxLHNlbGVjdGVkOjEsc2hhcGU6MSxzaXplOjEsc2l6ZXM6MSxzbG90OjEsc3BhbjoxLHNwZWxsY2hlY2s6MSxzcmM6NCxzcmNzZXQ6MTIsc3RhcnQ6MSxzdGVwOjEsc3R5bGU6NSxzdW1tYXJ5OjEsdGFiaW5kZXg6MSx0YXJnZXQ6OCx0aXRsZToxLHRyYW5zbGF0ZToxLHR5cGU6MSx1c2VtYXA6MSx2YWxpZ246MSx2YWx1ZToxLHdpZHRoOjEsd3JhcDoxfSxmQj0Ke2E6e2hyZWY6W3trYTozfV19LGFyZWE6e2hyZWY6W3trYTozfV19LGF1ZGlvOntzcmM6W3trYTozfV19LGJ1dHRvbjp7Zm9ybWFjdGlvbjpbe2thOjN9XSxmb3JtbWV0aG9kOlt7a2E6MX1dfSxmb3JtOnthY3Rpb246W3trYTozfV0sbWV0aG9kOlt7a2E6MX1dfSxpZnJhbWU6e3NyY2RvYzpbe2thOjJ9XX0saW1nOntzcmM6W3trYTozfV0sc3Jjc2V0Olt7a2E6MTF9XX0saW5wdXQ6e2FjY2VwdDpbe2thOjF9XSxmb3JtYWN0aW9uOlt7a2E6M31dLGZvcm1tZXRob2Q6W3trYToxfV0scGF0dGVybjpbe2thOjF9XSxyZWFkb25seTpbe2thOjF9XSxzcmM6W3trYTozfV19LGxpbms6e2hyZWY6W3trYTozLGliOiJyZWwiLG5iOiJhbHRlcm5hdGUifSx7a2E6MyxpYjoicmVsIixuYjoiYXV0aG9yIn0se2thOjMsaWI6InJlbCIsbmI6ImJvb2ttYXJrIn0se2thOjMsaWI6InJlbCIsbmI6ImNhbm9uaWNhbCJ9LHtrYTozLGliOiJyZWwiLG5iOiJjaXRlIn0se2thOjMsaWI6InJlbCIsbmI6ImhlbHAifSwKe2thOjMsaWI6InJlbCIsbmI6Imljb24ifSx7a2E6MyxpYjoicmVsIixuYjoibGljZW5zZSJ9LHtrYTozLGliOiJyZWwiLG5iOiJuZXh0In0se2thOjMsaWI6InJlbCIsbmI6InByZWZldGNoIn0se2thOjMsaWI6InJlbCIsbmI6ImRucy1wcmVmZXRjaCJ9LHtrYTozLGliOiJyZWwiLG5iOiJwcmVyZW5kZXIifSx7a2E6MyxpYjoicmVsIixuYjoicHJlY29ubmVjdCJ9LHtrYTozLGliOiJyZWwiLG5iOiJwcmVsb2FkIn0se2thOjMsaWI6InJlbCIsbmI6InByZXYifSx7a2E6MyxpYjoicmVsIixuYjoic2VhcmNoIn0se2thOjMsaWI6InJlbCIsbmI6InN1YnJlc291cmNlIn1dfSxzY3JpcHQ6e2RlZmVyOlt7a2E6MX1dfSxzb3VyY2U6e3NyYzpbe2thOjN9XSxzcmNzZXQ6W3trYToxMX1dfSx0ZXh0YXJlYTp7cmVhZG9ubHk6W3trYToxfV19LHZpZGVvOntzcmM6W3trYTozfV19fTt2YXIgSmJhPS9eKD8hamF2YXNjcmlwdDopKD86W2EtejAtOSsuLV0rOnxbXiY6XC8/I10qKD86W1wvPyNdfCQpKS9pLGliYT17WzFdOm51bGwsWzJdOihhLGIpPT5iIGluc3RhbmNlb2YgXy5mYj9fLnlBKGIpOl8uRnEudG9TdHJpbmcoKSxbM106KGEsYik9Pl8uWGEoYik/Xy5ZYShiKTpKYmEudGVzdChTdHJpbmcoYikpP1N0cmluZyhiKTpfLkZxLnRvU3RyaW5nKCksWzRdOihhLGIpPT5iIGluc3RhbmNlb2YgXy5TYT9fLlVhKGIpOl8uRnEudG9TdHJpbmcoKSxbNV06KGEsYik9PlN0cmluZyhiKSxbN106bnVsbCxbOF06bnVsbCxbMTBdOm51bGx9O18uS2JhPVN5bWJvbCgibmMiKTt2YXIgbkI9Xy5MQSgpO3ZhciBLQz1TQSgpLHFiYT1LQ1tfLlJBLmRlZmF1bHRdLHlCPUtDLnN0eWxlLHhCPVsiZm9jdXNpbiIsImZvY3Vzb3V0Il0sQkI9U3ltYm9sKCJvYyIpLENCPVN5bWJvbCgicGMiKSxyYmE9ImFubm90YXRpb24teG1sIGNvbG9yLXByb2ZpbGUgZm9udC1mYWNlIGZvbnQtZmFjZS1zcmMgZm9udC1mYWNlLXVyaSBmb250LWZhY2UtZm9ybWF0IGZvbnQtZmFjZS1uYW1lIG1pc3NpbmctZ2x5cGgiLnNwbGl0KCIgIik7dmFyIEpCO0pCPUhCO18uV0I9U3ltYm9sKCJ0YyIpO18uTGJhPV8uZHUoIldpekluamVjdGlvbkNvbnRleHRfTW9kZWxSb290RWxlbWVudCIpO18uTWJhPV8uZHUoIldpekluamVjdGlvbkNvbnRleHRfUmVuZGVyZXJEYXRhIik7Xy5OYmE9Xy5kdSgiV2l6SW5qZWN0aW9uQ29udGV4dF9JbmplY3RpbmdDb25zdHJ1Y3RvciIpO18uTUI9Xy5kdSgiV2l6SW5qZWN0aW9uQ29udGV4dF9BcHBDb250ZXh0Iik7Xy5OQj1fLmR1KCJXaXpJbmplY3Rpb25Db250ZXh0X0Rpc3BhdGNoZXIiKTtfLkxDPV8uZHUoIldpekluamVjdGlvbkNvbnRleHRfUm9vdEVsZW1lbnQiKTtfLk9iYT1fLmR1KCJXaXpJbmplY3Rpb25Db250ZXh0X0FzeW5jRGVwcyIpO18uUGJhPV8uZHUoIldpekluamVjdGlvbkNvbnRleHRfT2JqZWN0Q3JlYXRpb25UcmFja2VyIik7Xy5PQj17fTtfLlZCPXtNSzpTQixjTDpTQixsb2c6U0IsUko6VEIsdnk6VEIsZko6KGEsYik9PntiKCl9fTtfLk1DPW51bGw7Xy5tQz1jbGFzcyBleHRlbmRzIG9De2NvbnN0cnVjdG9yKGEsYil7c3VwZXIoYSk7dGhpcy5vPWI7dGhpcy5aZj1bXTt0aGlzLkI9MDt0aGlzLkQ9Xy51dihjPT57dGhpcy5xbD1jO18uWXUoKCk9PntoQyh0aGlzLHRoaXMuZWwpfSl9LF8uS3Uucml8fCEhXy5adCl9b2MoYSl7dmFyIGI9Xy5NQztfLk1DPXRoaXM7dGhpcy5CPTA7dmFyIGM9Xy5rdShfLnp2KSxkPV8uJHQodGhpcy5xbCk7dHJ5e3JldHVybiB0aGlzLm8oYSl9ZmluYWxseXtfLiR0KGQpLF8ua3UoYyksXy5NQz1ifX1nZXQgY29tcG9uZW50TmFtZSgpe3JldHVybiBfLkZBKHRoaXMubyl9fTt2YXIgeGJhO18ubkM9U3ltYm9sKCJDYyIpO3hiYT1jbGFzcyBleHRlbmRzIF8uZEN7Y29uc3RydWN0b3IoYSxiLGMpe3N1cGVyKCk7dGhpcy5raW5kPWE7dGhpcy5wcm9wcz1iO3RoaXMuY2hpbGRyZW49Y31vYygpe3ZhciBhPWtDKHRoaXMua2luZCx0aGlzLnByb3BzLHRoaXMuY2hpbGRyZW4pO2lmKHRoaXMuQ28hPW51bGwpZm9yKGxldCBiIG9mIHRoaXMuQ28pYT1iKGEpO3JldHVybiBhfX07dmFyIHFDPVtdO18ud3U9YT0+e3Rocm93IF8uVXUoRXJyb3IoImJiYCIrYS5kZWJ1Z05hbWUpLDQpO307KGZ1bmN0aW9uKCl7dmFyIGE9Xy5jQjtfLmNCPWI9PnthPy4oYik7emJhKGIpfX0pKCk7dmFyIENiYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYz17fSl7dmFyIGQ9Xy51QygpO3RoaXMubmFtZT1hO3RoaXMuaWQ9ZC5VeSsrO3RoaXMuc2Vzc2lvbklkPWQuc2Vzc2lvbklkO3RoaXMuYXR0cmlidXRlcz1iO3RoaXMuc3RhdHVzPSJTUEFOX1NUQVRVU19VTlNFVCI7dGhpcy5zdGFydFRpbWU9Yy5zdGFydFRpbWU/PygwLF8uZWwpKCk7dGhpcy5qPWMuYWN0aXZlO2lmKGE9dkMoKSl0aGlzLnBhcmVudElkPWEuaWQsYS5jaGlsZHJlbnx8KGEuY2hpbGRyZW49W10pLGEuY2hpbGRyZW4ucHVzaCh0aGlzKTtmb3IobGV0IGUgb2YgZC5wcm9jZXNzb3JzKXRyeXtlLkdtPy4odGhpcyl9Y2F0Y2goZil7Xy5JcChmKX1jLmVuZFRpbWUhPW51bGwmJih0aGlzLmo9ITEsdGhpcy5lbmQoIlNQQU5fU1RBVFVTX09LIixjLmVuZFRpbWUpKX1lbmQoYT0iU1BBTl9TVEFUVVNfT0siLGI9KDAsXy5lbCkoKSl7dmFyIGM9Xy51QygpO3RoaXMuZW5kVGltZT1iO3RoaXMuZHVyYXRpb249dGhpcy5lbmRUaW1lLQp0aGlzLnN0YXJ0VGltZTt0aGlzLnN0YXR1cz1hO3RoaXMuaiE9PSExJiYodkMoKT09PXRoaXM/Yy5zdGFjay5wb3AoKTpfLklwKEVycm9yKCJEY2AiK1N0cmluZyh0aGlzLm5hbWUpKSkpO2ZvcihsZXQgZCBvZiBjLnByb2Nlc3NvcnMpdHJ5e2QubHI/Lih0aGlzKX1jYXRjaChlKXtfLklwKGUpfX1EZShhKXtPYmplY3QuYXNzaWduKHRoaXMuYXR0cmlidXRlcyxhKX19LHhDPXtlbmQoKXt9LERlKCl7fX0sdEMsQmJhPXtXeigpe3JldHVybiBfLnVDKCkuc3RhY2tbMF19fTt2YXIgQkM9dm9pZCAwO3ZhciBJYmE9IklET00gaW50ZXJvcCBzZXR0ZXIgdW5kZWZpbmVkLiBLZXk6IixIYmE9IkNhbGxiYWNrIGRldGVjdGVkIHRoYXQgd2FzIG5vdCBzZXQgaW4gdGhlIGlkb21Db21wYXQgY2FsbGJhY2tzIG1hcC4gS2V5OiI7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBSYmEsUWJhO1JiYT1mdW5jdGlvbihhKXt2YXIgYj1PYmplY3QuY3JlYXRlKFFiYSk7Yi5UZz1hO2E9KCk9PntfLnJ1KGIpO18ucHUoYik7aWYoYi52YWx1ZT09PV8uSXYpdGhyb3cgYi5lcnJvcjtyZXR1cm4gYi52YWx1ZX07YVtfLlp1XT1iO3JldHVybiBhfTtfLk49ZnVuY3Rpb24oYSxiLGM9IiIpe3ZhciBkPVJiYShhKTthPWRbXy5adV07YS5kZWJ1Z05hbWU9Xy5ldShiPy5kZWJ1Z05hbWUsYywiW2NvbXB1dGVkXSIpO2I/LmVxdWFscyE9bnVsbCYmKGEuZXF1YWw9Yi5lcXVhbHMpO3JldHVybiBkfTsKUWJhPXsuLi5fLlh1LHZhbHVlOl8uR3YsUGI6ITAsZXJyb3I6bnVsbCxlcXVhbDpfLml1LGtpbmQ6ImNvbXB1dGVkIixYbShhKXtyZXR1cm4gYS52YWx1ZT09PV8uR3Z8fGEudmFsdWU9PT1fLkh2fSxZbShhKXtpZihhLnZhbHVlPT09Xy5Idil0aHJvdyBFcnJvcigiaCIpO3ZhciBiPWEudmFsdWU7YS52YWx1ZT1fLkh2O3ZhciBjPV8udHUoYSksZD0hMTt0cnl7dmFyIGU9YS5UZygpO18ua3UobnVsbCk7ZD1iIT09Xy5HdiYmYiE9PV8uSXYmJmUhPT1fLkl2JiZhLmVxdWFsKGIsZSl9Y2F0Y2goZil7ZT1fLkl2LGEuZXJyb3I9Zn1maW5hbGx5e18ua3UoYyksYSYmXy52dShhKX1kP2EudmFsdWU9YjooYS52YWx1ZT1lLGEudmVyc2lvbisrKX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgU2JhO18uTkM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oKT0+e3ZhciBjPWEoKTtpZighYyl7bGV0IGQ9RXJyb3IoIk9jYCIrYik7UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoZCwyLGIpO30pfXJldHVybiBjfX07Xy5PPWZ1bmN0aW9uKGEpe3JldHVybiBTYmEoYSl9OwpTYmE9ZnVuY3Rpb24oYSl7aWYoYS5BPT09dm9pZCAwKXJldHVybiBhLlc/LigpO2lmKHR5cGVvZiBhLkEhPT0iZnVuY3Rpb24iKXtsZXQgZT1hLnRoZW4sZj1hLlcsaD1hLkE7cmV0dXJuIGg/ZShoKTpmPy4oKX12YXIgYj1hLkEsYz1fLk4oKCk9PiEhYigpLHZvaWQgMCwiQmpRUlEiKSxkPV8uTkMoYiwiSWYiKTtyZXR1cm4gXy5YQigoKT0+e3ZhciBlPWMoKSxmO18udXYoKCk9Pnt2YXIgaD1fLmt1KF8uenYpO3RyeXtmPV8uZkMoZT9hLnRoZW4oZCk6YS5XPy4oKSl9ZmluYWxseXtfLmt1KGgpfX0sITApO3JldHVybiBmfSx7ZGVidWdOYW1lOmEuZGVidWdJbnN0YW5jZT8/IlJsRHVkZCIsenA6YS50aGVuLFdlOiEwfSl9O18uV0M9bmV3IE1hcDtfLlhDPVN5bWJvbCgiTmMiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5rRz1mdW5jdGlvbihhKXt2YXIgYj1fLkNBKDEpO2lmKCgwLF8ubHYpKGIpKXRocm93IEVycm9yKCJpYiIpO3JldHVybiBfLmh1KGEsYil9O18ubUc9ZnVuY3Rpb24oKXtyZXR1cm4gXy5adD9fLmtHKF8ubEcpOnZvaWQgMH07Xy5mZGE9U3ltYm9sKCIkYyIpO18uZ2RhPVN5bWJvbCgiYWQiKTtfLmxHPV8uZ3Uoe2RlZmF1bHRWYWx1ZTp2b2lkIDB9LCJ5RHA1T2MiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGhjYTtfLm5FPWZ1bmN0aW9uKGEsYil7YT1fLnB2KGhjYSxhLGIpO18uZnYoYSl9O2hjYT17Li4uXy4kdixlZmZlY3RUeXBlOl8uZHZ9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLm9IPWZ1bmN0aW9uKGEsYil7YT1fLiR0KGEpO3RyeXtfLkVBKGIpfWZpbmFsbHl7Xy4kdChhKX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLm9FPWZ1bmN0aW9uKCl7aWYoXy5IQSgpKXRocm93IEVycm9yKCJCYyIpO3JldHVybiBfLk1DfTtfLnBFPWZ1bmN0aW9uKGEpe3ZhciBiPV8ub0UoKTtpZihiPT1udWxsKXRocm93IEVycm9yKCJUYyIpO3ZhciBjPWIuQisrO2IuWmZ8fChiLlpmPVtdKTt2YXIgZD1iLlpmO2RbY118fChkW2NdPXtrZXk6YSxob3N0OmJ9KTtpZihhIT09ZFtjXS5rZXkpdGhyb3cgRXJyb3IoIlNjYCIrKGIuaj9iLmo/Lm5hbWU6YiBpbnN0YW5jZW9mIF8ubUM/Xy5GQShiLm8pOmA8JHtiLmVsLnRhZ05hbWUudG9Mb3dlckNhc2UoKX0+YCkpO3JldHVybiBkW2NdfTtfLnFFPWZ1bmN0aW9uKGEsYil7cmV0dXJuIWF8fGEubGVuZ3RoIT09Yj8ubGVuZ3RofHxhLnNvbWUoKGMsZCk9PmMhPT1iW2RdKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBpY2EsdEUsamNhLHdFO2ljYT1mdW5jdGlvbihhKXt2YXIgYj1udWxsLGMsZD17Q2s6bnVsbCxnZXQgdmFsdWUoKXtkLnZMPy4oKTtyZXR1cm4gZC5Da30sdm86ITEsa3U6ITEsc2V0IHZhbHVlKGUpe2Qud0w/LihlKTtkLkNrPWU7ZC52bz0hMH0sbXooZSl7YyYmZSE9PWMmJihjLl9kaXNwb3NlUmVmPXZvaWQgMCxiPy4oKSk7Yz1lO2I9YShlKXx8bnVsbH0sdXooKXtiPy4oKTtiPWQudmFsdWU9bnVsbH0sW18uTXZdOiEwfTtyZXR1cm4gZH07Xy5zRT1mdW5jdGlvbihhKXt2YXIgYj1bXTtpZihfLkhBKCkpcmV0dXJuIGEoKTt2YXIgYz1fLnBFKCJ1c2VNZW1vSW50ZXJuYWwiKTtfLnFFKGMubWwsYikmJihjLm1sPWIsYy52YWx1ZT1hKCkpO3JldHVybiBjLnZhbHVlfTtfLnVFPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRFKGEsITEsYil9O18udkU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdEUoYSwhMCxiKX07CnRFPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5IQSgpP3dFKGEsYixjKTpqY2EoYSxiLGMpfTtqY2E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLnNFKCgpPT53RShhLGIsYykpfTt3RT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Xy5adCxlPWljYShmPT57ZS52YWx1ZT1mO3ZhciBoPSgoKT0+e3ZhciBrPV8ua3UobnVsbCk7dHJ5e3JldHVybiBjPy4oZil9Y2F0Y2gobCl7Xy5vdihsLGQpfWZpbmFsbHl7Xy5rdShrKX19KSgpO3JldHVybigpPT57aD8uKCl9fSk7ZS5qdT1hO2UubHU9YjtlLnZKPSFfLkhBKCk7cmV0dXJuIGV9O18uQkU9U3ltYm9sKCJXYyIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLm1GPXtWYjohMSxzdGF0ZToidmlzaWJsZSJ9O18ubkY9e1ZiOiExLHN0YXRlOiJoaWRkZW4ifTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5wSD1mdW5jdGlvbihhKXt2YXIgYj1fLkNBKCk7cmV0dXJuIGM9Pnt2YXIgZD1hLm9ic2VydmVyPz9fLnkoKS5yZXNvbHZlKF8uTHgpLGU9Yy5qZj8/YyxmPVtdO2EuZWImJmYucHVzaChkLm9ic2VydmUoYywoKT0+e18ub0goYiwoKT0+e2EuTmIoITAsYyl9KX0sYS5lYikpO2EuTmMmJmYucHVzaChkLm9ic2VydmUoYywoKT0+e18ub0goYiwoKT0+e2EuTmIoITEsYyl9KX0sYS5OYykpO2EuTGgmJmEuTGomJmYucHVzaChkLm9ic2VydmUoYywoKT0+e18ub0goYiwoKT0+e2EuTGooKX0pfSxhLkxoKSk7ZS52aXNpYmlsaXR5TW9uaXRvcktleXM9KGUudmlzaWJpbGl0eU1vbml0b3JLZXlzPz9bXSkuY29uY2F0KGYpfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBQRDtfLlJEPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQihhLF8uT0QpO2lmKGIpcmV0dXJuIGI7aWYoKGI9Xy5CKGEsV2JhKSkmJmIuY29tbWFuZHMpcmV0dXJuIFBEKGIuY29tbWFuZHMpO2lmKChiPV8uQihhLFhiYSkpJiZiLmNvbW1hbmRzKXJldHVybiBQRChiLmNvbW1hbmRzKTtpZigoYT1fLkIoYSxZYmEpKSYmYS5pZGVudGlmaWVyJiZhLmNvbW1hbmQmJihRRHx8KFFEPVtdKSwhUUQuaW5jbHVkZXMoYS5pZGVudGlmaWVyKSkpcmV0dXJuIFFELnB1c2goYS5pZGVudGlmaWVyKSxfLkIoYS5jb21tYW5kLF8uT0QpfTtQRD1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCE9PTApe3ZhciBiPVtdO2ZvcihsZXQgYyBvZiBhKShhPV8uUkQoYykpJiZiLnB1c2goYSk7cmV0dXJue2NvbW1hbmRFeGVjdXRvckNvbW1hbmQ6e2NvbW1hbmRzOmJ9fX19O18uU0Q9bmV3IF8uSSgiY29tbWFuZEV4ZWN1dG9yQ29tbWFuZCIpO18uT0Q9bmV3IF8uSSgiaW5uZXJ0dWJlQ29tbWFuZCIpO3ZhciBXYmE9bmV3IF8uSSgicGFyYWxsZWxDb21tYW5kIik7dmFyIFliYT1uZXcgXy5JKCJwZXJmb3JtT25jZUNvbW1hbmQiKTt2YXIgWGJhPW5ldyBfLkkoInNlcmlhbENvbW1hbmQiKTt2YXIgUUQ9dm9pZCAwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlREPW5ldyBfLkkoInJlZWxXYXRjaEVuZHBvaW50Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVUQ9bmV3IF8uVnMoIkNPTU1BTkRfSEFORExFUl9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlZEPW5ldyBfLkkoInVybEVuZHBvaW50Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBaYmEsZGNhLCRiYSxlY2E7Xy5XRD1mdW5jdGlvbihhKXt0cnl7cmV0dXJuIGEoKX1jYXRjaChiKXtfLklwKGIpfX07Xy5ZRD1mdW5jdGlvbihhLGIsYyl7cmV0dXJue2Zvcm06e2N1cnJlbnREYXRhOl8uWEQ/LnJlc3BvbnNlPz97fSxzb3VyY2VEYXRhOmEsZXZlbnQ6Yj8uZXZlbnQsY2xpY2tlZFZpc3VhbEVsZW1lbnQ6Yj8uY2xpY2tlZFZpc3VhbEVsZW1lbnQsaW1wbGljaXRHZXN0dXJlVHlwZTpiPy5pbXBsaWNpdEdlc3R1cmVUeXBlLGF1dG9uYXY6Yj8uYXV0b25hdixCZDpiPy5CZH0sbWQ6Y319OwpfLmJFPWZ1bmN0aW9uKGEpe3ZhciBiPWEuaHYsYz1hLnV4LGQ9YS5iaCxlPWEuSWQsZj1hLnFkLGg9YS5BbyxrPWEuaW5uZXJ0dWJlQ29tbWFuZHx8Xy5SRChkKTtpZihrKXthPXt9O3ZhciB7UnE6bCxocmVmOm19PV8uWkQoayk7bCYmbT8oYS5ocmVmPW0sWmJhKGEsbCxtLGIpLCRiYShhLGwpLGYmJihhLnFkPSEwKSk6KGEucm9sZT0iYnV0dG9uIixhLnRhYmluZGV4PSIwIik7Xy5CKGssYWNhKSYmKGEuYXJpYUhhc1BvcHVwPSEwKTtlfHwoYS5vbmNsaWNrPW49PntsJiZtfHxuLnByZXZlbnREZWZhdWx0KCk7Xy4kRChrKTt2YXIgcD17Li4uXy5ZRChrLHtldmVudDpufSksLi4uaH07bi5wcmV2ZW50RGVmYXVsdCgpO18uYUUoayxwKTtuLnN0b3BQcm9wYWdhdGlvbigpfSxsJiZtfHwoYS5vbmtleWRvd249bj0+e2lmKG4ua2V5PT09IkVudGVyInx8bi5rZXk9PT0iICIpbi5zdG9wUHJvcGFnYXRpb24oKSxuLnByZXZlbnREZWZhdWx0KCksbi5jdXJyZW50VGFyZ2V0LmNsaWNrKCl9KSk7CnJldHVybnsuLi5jLC4uLmF9fX07Xy5aRD1mdW5jdGlvbihhKXthPV8uQihhLF8uU0QpPy5jb21tYW5kc3x8W2FdO2ZvcihsZXQgYiBvZiBhKWlmKGE9Xy5CKGI/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8udXJsLF8ueCgid2ViX3JlbW92ZV93ZWJfbmF2aWdhdGlvbl9lbmRwb2ludF9kYXRhIil8fChhPWF8fF8uQihiLGJjYSk/LnVybCksYSYmYSE9PSIvc2VydmljZV9hamF4Iil7bGV0IGM9Xy5iYihhLGNjYSk7aWYoYylyZXR1cm4gYT1fLllhKGMpLHtScTpiLGhyZWY6YX07Xy5JcChuZXcgXy5YaigiQXR0cmlidXRlZFN0cmluZyBVUkwgY291bGQgbm90IGJlIHNhbml0aXplZCIsYSkpfXJldHVybnt9fTsKWmJhPWZ1bmN0aW9uKGEsYixjLGQpe2M9IV8uZmooYyk7aWYoXy5CKGIsXy5jRSk/Lm5vZm9sbG93fHxfLkIoYixfLkF3KT8ubm9mb2xsb3d8fF8uQihiLF8uVkQpPy5ub2ZvbGxvd3x8Xy5CKGIsXy5URCk/Lm5vZm9sbG93fHxjKWEucmVsPSJub2ZvbGxvdyI7YS50YXJnZXQ9ZGNhKGIsZCl9O2RjYT1mdW5jdGlvbihhLGI9IiIpe3JldHVybiBfLkIoYSxfLlZEKT8udGFyZ2V0PT09IlRBUkdFVF9ORVdfV0lORE9XIj8iX2JsYW5rIjpifTskYmE9ZnVuY3Rpb24oYSxiKXtiLmNsaWNrVHJhY2tpbmdQYXJhbXMmJihhLnBhcmFtcz17aXRjdDpiLmNsaWNrVHJhY2tpbmdQYXJhbXN9KTthLm9ucG9pbnRlcmRvd249Yz0+e2VjYShjLGIpfTthLm51PWJ9OwpfLiREPWZ1bmN0aW9uKGEpeyhhLmxvZ2dpbmdVcmxzfHxbXSkuZm9yRWFjaChiPT57dmFyIGM9Yi5iYXNlVXJsO2IuYXR0cmlidXRpb25TcmNNb2RlPT09IkFUVFJJQlVUSU9OX1NSQ19NT0RFX1hIUl9PUFRJT04iPyhjPWRvY3VtZW50LmZlYXR1cmVQb2xpY3k/LmFsbG93ZWRGZWF0dXJlcygpLmluY2x1ZGVzKCJhdHRyaWJ1dGlvbi1yZXBvcnRpbmciKT9jKyImbmlzPTYiOmMrIiZuaXM9NSIsXy5hbihjLHZvaWQgMCx2b2lkIDAsdm9pZCAwLCIiLCEwLCEwKSk6Xy5hbihjKX0pfTtlY2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmN1cnJlbnRUYXJnZXQ7YT1fLldEKCgpPT5jLmhyZWYpO2I9Yi5jbGlja1RyYWNraW5nUGFyYW1zP3tpdGN0OmIuY2xpY2tUcmFja2luZ1BhcmFtc306e307YSYmXy51eihhLGIsOCwhMCl9O18uZEU9ZnVuY3Rpb24oYSxiKXsoYT1fLlJEKGEpKSYmXy5hRShhLGIpfTsKXy5hRT1mdW5jdGlvbihhLGIpe18uWXQoXy5VRCxjPT57Yj9jLnJlc29sdmVDb21tYW5kKGEsYik6Yy5yZXNvbHZlQ29tbWFuZChhKX0pfTtfLmNFPW5ldyBfLkkoImJyb3dzZUVuZHBvaW50Iik7dmFyIGJjYT1uZXcgXy5JKCJ3ZWJOYXZpZ2F0aW9uRW5kcG9pbnREYXRhIik7dmFyIGFjYT1uZXcgXy5JKCJtb2RhbEVuZHBvaW50Iik7Xy5mY2E9bmV3IF8uSSgidXNlckZlZWRiYWNrRW5kcG9pbnQiKTtfLmVFPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5kYXRhPVtdO3RoaXMuRGY9bnVsbH1wdXNoKGEpe3RoaXMuRGY/dGhpcy5EZihhKTp0aGlzLmRhdGEucHVzaChhKX19O18uWEQ9e307Xy5mRT1fLkooXy5YRCx2b2lkIDAsIlRIUk9PIilbMF07Xy5KKG51bGwsdm9pZCAwLCJjeDRUSWQiKTtfLkoobnVsbCx2b2lkIDAsIlFYYU91ZCIpO18uSigiIix2b2lkIDAsIkRSV085YyIpO18uSihfLnF6KCk/ITE6ITAsdm9pZCAwLCJ2eXp5aWQiKTtfLmdFPW5ldyBfLmVFO3ZhciBjY2E9W18uSXEsXy5KcSxfLktxLF8uTXEsXy5McSxfLkdxLF8uTnEsXy5QcV07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ucUg9ZnVuY3Rpb24oYSl7aWYoYS5jb21wb3NlZFBhdGgpcmV0dXJuIGEuY29tcG9zZWRQYXRoKCk7aWYoIWEudW8pe2xldCBiPVtdLGM9YS50YXJnZXQ7Zm9yKDtjOyliLnB1c2goYyksYz1jLnBhcmVudE5vZGU7Yi5wdXNoKHdpbmRvdyk7YS51bz1ifXJldHVybiBhLnVvfTtfLnJIPWZ1bmN0aW9uKGEsYixjKXtmb3IobGV0IGQgb2YgYSl7aWYoZD09PWIpYnJlYWs7Zm9yKGxldCBlIG9mIGMpaWYoZC50YWdOYW1lPT09ZXx8ZC5yb2xlPT09ImJ1dHRvbiImJmU9PT0iQlVUVE9OIilyZXR1cm4hMH1yZXR1cm4hMX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBCZGEsQ2RhLERkYSx2SCx3SCxFZGE7QmRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5vYnNlcnZlcj8/Xy55KCkucmVzb2x2ZShfLkx4KTtpZihhKXt2YXIgZD1hLmpmPz9hLGU9W107Yi5lYiYmZS5wdXNoKGMub2JzZXJ2ZShhLCgpPT57Yi5OYighMCxhKX0sYi5lYikpO2IuTmMmJmUucHVzaChjLm9ic2VydmUoYSwoKT0+e2IuTmIoITEsYSl9LGIuTmMpKTtiLkxoJiZiLkxqJiZlLnB1c2goYy5vYnNlcnZlKGEsKCk9PntiLkxqKCl9LGIuTGgpKTtkLnZpc2liaWxpdHlNb25pdG9yS2V5cz0oZC52aXNpYmlsaXR5TW9uaXRvcktleXM/P1tdKS5jb25jYXQoZSl9fTtfLnRIPWZ1bmN0aW9uKGEpe3JldHVybiEhXy5zSChhKX07Xy51SD1mdW5jdGlvbihhLGIsYyxkLGUpe3JldHVybiBmPT57dmFyIGg9Xy5tRygpO18ubkUoKCk9PntpZihmKXtDZGEoZixhKCksZSk7dmFyIGs9RGRhKGYsYSgpLGIsYyxkLGgpO18uWXUoayl9fSwiYWpRWTYiKX19OwpDZGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXZIKGIpLGU9d0goYiksZj1kJiZfLm1GLGg9ZSYmXy5uRjsoZHx8ZSkmJkJkYShhLHtOYjprPT57dmFyIGw9Xy55KCkucmVzb2x2ZShfLlVEKTtrJiZkPyhsLnJlc29sdmVDb21tYW5kKGQse2Zvcm06e2VsZW1lbnQ6Yz9hOnZvaWQgMH0sbWQ6ITB9KSxkPXZIKGIpKTohayYmZSYmKGwucmVzb2x2ZUNvbW1hbmQoZSx7Zm9ybTp7ZWxlbWVudDpjP2E6dm9pZCAwfSxtZDohMH0pLGU9d0goYikpfSxlYjpmLE5jOmh9KX07CkRkYT1mdW5jdGlvbihhLGIsYyxkLGUsZil7dmFyIGg9bmV3IE1hcDtpZihiPV8uc0goYikpYT1kPy5vblRhcD8udmFsdWV8fGEsYz1FZGEoYixhLGM/Lm9uVGFwLGUsZiksYS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsYyksaC5zZXQoImNsaWNrIixjKSxfLngoIndlYl9lbmFibGVfYWRkaXRpb25hbF9ldmVudF9saXN0ZW5lcl9mb3JfdGFwX2NvbW1hbmQiKSYmKGM9az0+e3ZhciBsPWEudGFnTmFtZTtsPT09IkJVVFRPTiJ8fGw9PT0iQSJ8fGw9PT0iSU5QVVQifHxrLmtleSE9PSJFbnRlciImJmsua2V5IT09IiAifHxlJiZfLnJIKF8ucUgoayksYSxlKXx8KGsucHJldmVudERlZmF1bHQoKSxhLmNsaWNrKCkpfSxhLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGMpLGguc2V0KCJrZXlkb3duIixjKSk7cmV0dXJuKCk9Pntmb3IobGV0IFtrLGxdb2YgaClhLnJlbW92ZUV2ZW50TGlzdGVuZXIoayxsKX19OwpfLnNIPWZ1bmN0aW9uKGEpe3JldHVybihhPV8uQihhLF8ueEgpPy5vblRhcCkmJl8uUkQoYSl9O3ZIPWZ1bmN0aW9uKGEpe3JldHVybihhPV8uQihhLF8ueEgpPy5vblZpc2libGUpJiZfLlJEKGEpfTt3SD1mdW5jdGlvbihhKXtyZXR1cm4oYT1fLkIoYSxfLnhIKT8ub25IaWRkZW4pJiZfLlJEKGEpfTtfLnlIPWZ1bmN0aW9uKGEpe3JldHVybiBfLlJEKF8uQihhLF8ueEgpPy5vbkhvdmVyU3RhcnQpfTtfLnpIPWZ1bmN0aW9uKGEpe3JldHVybiBfLlJEKF8uQihhLF8ueEgpPy5vbkhvdmVyRW5kKX07RWRhPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9az0+e18ueSgpLnJlc29sdmUoXy5VRCkucmVzb2x2ZUNvbW1hbmQoYSxrKX0saD1rPT57ZCYmXy5ySChfLnFIKGspLGIsZCl8fGYoay50YXJnZXQ/e2Zvcm06e2VsZW1lbnQ6ay50YXJnZXQsc291cmNlRGF0YTphLG11dGF0aW9uQ29udGV4dDplfX06dm9pZCAwKX07YyYmKGg9az0+e2MoayxmKX0pO3JldHVybiBofTtfLnhIPW5ldyBfLkkoImNvbW1hbmRDb250ZXh0Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uakg9bmV3IF8uVnMoIktFWV9NQU5BR0VSX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uUD1mdW5jdGlvbiguLi5hKXt2YXIgYj0hMDtmb3IobGV0IGMgb2YgYSlpZih0eXBlb2YgYyE9PSJzdHJpbmciKXtiPSExO2JyZWFrfXJldHVybiBiP2Euam9pbigiICIpLnRyaW0oKXx8dm9pZCAwOigpPT57dmFyIGM9IiI7Zm9yKGxldCBkIG9mIGEpaWYodHlwZW9mIGQ9PT0iZnVuY3Rpb24iJiYoZD1kKCkpLGQpaWYodHlwZW9mIGQ9PT0ic3RyaW5nIiljKz0iICIrZDtlbHNlIGZvcihsZXQgZSBpbiBkKXtpZighZC5oYXNPd25Qcm9wZXJ0eShlKSljb250aW51ZTtsZXQgZj1kW2VdO3R5cGVvZiBmPT09ImZ1bmN0aW9uIiYmKGY9ZigpKTtmJiYoYys9IiAiK2UpfWM9Yy50cmltKCl8fHZvaWQgMDtyZXR1cm4gXy5CdihjKX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIga0g7a0g9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9PmEoKT9hKCk6dm9pZCAwfTsKXy5uSD1fLkwoYT0+e3ZhciBiPV8udUUoImEiLGEucmVmKSxjPWEudWM/YS51YzpfLk4oKCk9Pl8uYkUoe2lubmVydHViZUNvbW1hbmQ6Xy5SRChhLmNvbW1hbmQ/LigpKT8/YS5jb21tYW5kPy4oKSxJZDphLklkPy4oKSxodjphLnRhcmdldD8uKCl9KXx8e30sdm9pZCAwLCJUQXZ6MCIpO3JldHVybiBfLksoImEiLHtlbDpiLGhyZWY6KCk9PmMoKS5ocmVmLHJlbDooKT0+YygpLnJlbCxjbGFzczooKT0+YygpLmNsYXNzTmFtZT8/YS5jbGFzc05hbWU/LigpLHN0eWxlOigpPT57aWYoYS5zdHlsZT8uKCkpcmV0dXJuIGEuc3R5bGUoKTtpZihhLmRpc2FibGVkPy4oKSlyZXR1cm4icG9pbnRlci1ldmVudHM6bm9uZSJ9LCJhcmlhLWhhc3BvcHVwIjooKT0+ISFjKCkuYXJpYUhhc1BvcHVwLCJmb3JjZS1uZXctc3RhdGUiOmtIKCgpPT5jKCkucWQpLHRpdGxlOmtIKCgpPT5jKCkudGl0bGU/P2EudGl0bGU/LigpKSxyb2xlOmtIKCgpPT5hLnJvbGU/LigpfHxjKCkucm9sZSksdGFyZ2V0OmtIKCgpPT4KYygpLnRhcmdldCksZGlyOmtIKCgpPT5hLmRpcj8uKCl8fGMoKS5kaXIpLHRhYmluZGV4OigpPT5jKCkudGFiaW5kZXghPT12b2lkIDA/TnVtYmVyKGMoKS50YWJpbmRleCk6YS50YWJJbmRleD8uKCksImFyaWEtaGlkZGVuIjooKT0+YygpLmFyaWFIaWRkZW4/P2EuYXJpYUhpZGRlbj8uKCksImFyaWEtbGFiZWwiOigpPT5jKCkuYXJpYUxhYmVsPz9hLmFyaWFMYWJlbD8uKCksImFyaWEtY3VycmVudCI6YS5hcmlhQ3VycmVudCwiYXJpYS1kaXNhYmxlZCI6YS5kaXNhYmxlZCwiYXJpYS1leHBhbmRlZCI6YS5hcmlhRXhwYW5kZWQsImFyaWEtbGFiZWxsZWRieSI6YS5IbywiYXJpYS1kZXNjcmliZWRieSI6YS5IZSwiYXJpYS1zZWxlY3RlZCI6YS5hcmlhU2VsZWN0ZWQsInRhYi1pZGVudGlmaWVyIjphLnRhYklkZW50aWZpZXIsIm9uOnBvaW50ZXJkb3duIjpmdW5jdGlvbihkKXtjKCkub25wb2ludGVyZG93bj8uKGQpfSwib246Y2xpY2siOmZ1bmN0aW9uKGQpe2MoKS5vbmNsaWNrPy4oZCk7CmEub25DbGljaz8uKGQpfSwib246Zm9jdXNpbiI6YS5keiwib246Zm9jdXNvdXQiOmEuZXosIm9uOm1vdXNlZW50ZXIiOmZ1bmN0aW9uKGQpe2Eub25Ib3Zlcj8uKGQpO2EuaXo/LihkKX0sIm9uOm1vdXNlbGVhdmUiOmZ1bmN0aW9uKGQpe2Euano/LihkKX0sIm9uOmtleWRvd24iOmZ1bmN0aW9uKGQpe2MoKS5vbmtleWRvd24/LihkKX19LGEuY2hpbGRyZW4pfSwidCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlZDPV8uTCgoe2NvbW1hbmQ6YSxyZW5kZXJlckNvbnRleHQ6YixjaGlsZHJlbjpjLGNsYXNzTmFtZTpkLFp2OmUsc3R5bGU6ZixvbkNsaWNrOmgsYXJpYUN1cnJlbnQ6ayxIZTpsLGFyaWFIaWRkZW46bSxhcmlhTGFiZWw6bixIbzpwLGFyaWFTZWxlY3RlZDpyLGRpc2FibGVkOnQsZGlyOnYsdGFiSW5kZXg6eix0YXJnZXQ6RSx0aXRsZTpBLHRvZ2dsZWFibGU6Rix0b2dnbGVkOkN9KT0+e2Z1bmN0aW9uIEcobWEpe3ZhciB0YT1fLnNIKGI/LigpKT8/YT8uKCk7aWYodGEpe2xldCBUPW1hLnRhcmdldD97Zm9ybTp7ZWxlbWVudDptYS50YXJnZXQsc291cmNlRGF0YTp0YSxtdXRhdGlvbkNvbnRleHQ6VX19OnZvaWQgMDtfLnkoKS5yZXNvbHZlKF8uVUQpLnJlc29sdmVDb21tYW5kKHRhLFQpfWg/LihtYSl9ZnVuY3Rpb24gRCgpe29hKFM/LlhlKCk/PyExKX1mdW5jdGlvbiBIKCl7b2EoITEpfWZ1bmN0aW9uIFIoKXt2YXIgbWE9Xy55SChiPy4oKSk7bWEmJl8ueSgpLnJlc29sdmUoXy5VRCkucmVzb2x2ZUNvbW1hbmQobWEpfQpmdW5jdGlvbiBNKCl7dmFyIG1hPV8uekgoYj8uKCkpO21hJiZfLnkoKS5yZXNvbHZlKF8uVUQpLnJlc29sdmVDb21tYW5kKG1hKX12YXIgUz1fLnkoKS5yZXNvbHZlKF8uSW4oXy5qSCkpLFtZLHBhXT1fLkooITEsdm9pZCAwLCJUTkxKRWMiKSxvYT1wYSxVPV8ubUcoKSxoYT0oKT0+Rj8uKCk/Qz8uKCk6dm9pZCAwO3JldHVybiBfLksoXy5PLHtBOmZ1bmN0aW9uKCl7dmFyIG1hPV8uc0goYj8uKCkpPz9hPy4oKSx0YTtpZih0YT1tYSl7bGV0IHtScTpULGhyZWY6YmF9PV8uWkQobWEpO3RhPSEoIVR8fCFiYSl9cmV0dXJuIHRhfSx0aGVuOigpPT5fLksoXy5uSCx7Y29tbWFuZDphLHN0eWxlOmYsSGU6bCxhcmlhSGlkZGVuOm0sYXJpYUxhYmVsOm4sSG86cCxhcmlhU2VsZWN0ZWQ6cixkaXNhYmxlZDp0LGRpcjp2LHRhYkluZGV4OnosdGFyZ2V0OkUsdGl0bGU6QSxvbkNsaWNrOmgsY2xhc3NOYW1lOl8uUCgieXRCdXR0b25PckFuY2hvckhvc3QiLCJ5dEJ1dHRvbk9yQW5jaG9yQW5jaG9yIiwKZCwoKT0+WSgpP2U/LigpOiIiKSxkejpELGV6OkgsaXo6UixqejpNLGFyaWFDdXJyZW50OigpPT5rPy4oKT8/aGEoKX0sYyksVzooKT0+Xy5LKCJidXR0b24iLHsib246Y2xpY2siOkcsIm9uOmZvY3VzaW4iOkQsIm9uOmZvY3Vzb3V0IjpILCJvbjptb3VzZWVudGVyIjpSLCJvbjptb3VzZWxlYXZlIjpNLGNsYXNzOl8uUCgieXRCdXR0b25PckFuY2hvckhvc3QiLCJ5dEJ1dHRvbk9yQW5jaG9yQnV0dG9uIixkLCgpPT5ZKCk/ZT8uKCk6IiIpLHN0eWxlOmYsImFyaWEtZGVzY3JpYmVkYnkiOmwsImFyaWEtaGlkZGVuIjptLCJhcmlhLWxhYmVsIjpuLCJhcmlhLWxhYmVsbGVkYnkiOnAsImFyaWEtcHJlc3NlZCI6aGEsZGlyOnYsZGlzYWJsZWQ6dCx0YWJpbmRleDooKT0+ej8uKCk/PygoXy5Pa3x8Xy5yeigpKSYmXy54KCJ3ZWJfZW5hYmxlX3NhZmFyaV9idXR0b25fdGFiaW5kZXhfZml4Iik/MDp2b2lkIDApLHRpdGxlOkF9LGMpfSl9LCJ2Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoIlpRS3gxIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uSUU9ZnVuY3Rpb24oLi4uYSl7cmV0dXJuKCk9Pnt2YXIgYj0iIjtmb3IobGV0IGMgb2YgYSl7bGV0IGQ9dHlwZW9mIGM9PT0iZnVuY3Rpb24iP2MoKTpjO2lmKGQpZm9yKGxldCBlIGluIGQpe2xldCBmPWRbZV07Zm9yKDt0eXBlb2YgZj09PSJmdW5jdGlvbiI7KWY9ZigpO2YhPT12b2lkIDAmJmYhPT1udWxsJiYoYis9YDsgJHtlfTogJHtmfWApfX1yZXR1cm4gYi5sZW5ndGg+MD9fLkJ2KGIuc2xpY2UoMikpOl8uQnYoKX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnJGPWZ1bmN0aW9uKC4uLmEpe3JldHVybiBfLnZFKF8uQkUsYj0+e3ZhciBjPWEubWFwKGQ9PmQ/LihiKSk7cmV0dXJuKCk9PnZvaWQgYy5mb3JFYWNoKGQ9PnZvaWQgZD8uKCkpfSl9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmhLPWZ1bmN0aW9uKCl7Z0t8fChnSz1uZXcgTGVhKTtyZXR1cm4gZ0t9O3ZhciBNZWE9Xy5MKGE9PntmdW5jdGlvbiBiKGhhKXtpZihoYSl7dmFyIG1hPU0uZ2V0KGhhKTttYSYmKG1hLmNhbmNlbCgpLE0uZGVsZXRlKGhhKSk7Zm9yKGxldCB0YSBvZiBoYS5nZXRBbmltYXRpb25zKCkpdGEuY2FuY2VsKCl9fWZ1bmN0aW9uIGMoaGEsbWEsdGEpe21hPV8uamYuR2EobWEsMyx0YSk7Uy5zZXQoaGEsbWEpfWZ1bmN0aW9uIGQoKXttKCExKTtpZihSKXt2YXIgaGE9UjtSPW51bGw7dmFyIG1hPURhdGUubm93KCktRztjKGhhLCgpPT57Uy5kZWxldGUoaGEpO3ZhciB7d2lkdGg6dGEsaGVpZ2h0OlQsb3BhY2l0eTpiYX09d2luZG93LmdldENvbXB1dGVkU3R5bGUoaGEpLGFhPU51bWJlci5wYXJzZUZsb2F0KHRhKXx8MCxPYT1OdW1iZXIucGFyc2VGbG9hdChUKXx8MCxKYj1OdW1iZXIucGFyc2VGbG9hdChiYSl8fC41O2hhLnN0eWxlLndpZHRoPWAke2FhfXB4YDtoYS5zdHlsZS5oZWlnaHQ9YCR7T2F9cHhgO2hhLnN0eWxlLm9wYWNpdHk9YCR7SmJ9YDtiKGhhKTthYT0KVT8wOjJFMztoYS5zdHlsZS50cmFuc2l0aW9uPWBvcGFjaXR5ICR7YWF9bXMgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMSlgO2hhLnN0eWxlLm9wYWNpdHk9aGEub2Zmc2V0V2lkdGg9PT0tMT8iMSI6IjAiO2MoaGEsKCk9PntTLmRlbGV0ZShoYSk7aGEuc3R5bGUuY3NzVGV4dD0iIn0sYWErMTAwKX0sTWF0aC5tYXgoMCwzMDAtbWEpKX19ZnVuY3Rpb24gZSgpe2QoKTtDPW51bGx9dmFyIHtjbGFzc05hbWU6ZixzdHlsZTpofT1fLkRDKGEse2NsYXNzTmFtZToiIixzdHlsZToiZGVmYXVsdCJ9KSxbayxsXT1fLkooITEsdm9pZCAwLCJLYlVUamYiKSxtPWwsW24scF09Xy5KKHZvaWQgMCx2b2lkIDAsIkdlRnZFZiIpLFtyLHRdPV8uSih2b2lkIDAsdm9pZCAwLCJpM2ZkVmUiKSxbdix6XT1fLkoodm9pZCAwLHZvaWQgMCwiTGVkVjRiIiksRT1fLnJGKCksQT1fLnJGKCksRj1fLnJGKCksQz1udWxsLEc9MCxEPTAsSD0hMCxSPW51bGwsTT1uZXcgTWFwLFM9bmV3IE1hcCxZPTAscGE9CjAsb2E9bnVsbCxVPXdpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSIpLm1hdGNoZXM7Xy5ZdSgoKT0+e2ZvcihsZXQgaGEgb2YgUy52YWx1ZXMoKSlfLmpmLkFhKGhhKTtTLmNsZWFyKCk7YihBLnZhbHVlKTtiKEYudmFsdWUpO29hIT09bnVsbCYmXy5qZi5BYShvYSl9KTtyZXR1cm4gXy5LKCJ5dC1saWdodC10b3VjaC1mZWVkYmFjay1zaGFwZSIse2VsOkUsY2xhc3M6Xy5QKCJ5dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG9zdCIsZix7eXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQ6ayx5dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5RGVmYXVsdDooKT0+aCgpPT09ImRlZmF1bHQiLHl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlJbnZlcnNlOigpPT5oKCk9PT0iaW52ZXJzZSJ9KSwib246cG9pbnRlcmVudGVyIjpmdW5jdGlvbigpe3ZhciBoYT1DPz8oQz1FLnZhbHVlPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKT8/Cm51bGwpO2hhJiZ6KGAkeyhoYS5oZWlnaHR8fDApKjIuNX1weGApfSwib246cG9pbnRlcmRvd24iOmZ1bmN0aW9uKGhhKXt2YXIgbWE9RGF0ZS5ub3coKTtpZighKG1hLUQ8MTAwKSl7RD1tYTttKCEwKTt2YXIgdGE9Qz8/KEM9RS52YWx1ZT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk/P251bGwpO2lmKHRhKXt2YXIgVD1oYS5jbGllbnRYLXRhLmxlZnQ7aGE9aGEuY2xpZW50WS10YS50b3A7dmFyIGJhPU1hdGgubWF4KCh0YS53aWR0aHx8MCkqMiwodGEuaGVpZ2h0fHwwKSo4LjUpLGFhPWJhLzQwOCoxNDAwO3RhPUg/QS52YWx1ZTpGLnZhbHVlO0g9IUg7aWYoUj10YSl7dGEuc3R5bGUuY3NzVGV4dD0iIjtiKHRhKTtsZXQgT2E9Uy5nZXQodGEpO09hIT09dm9pZCAwJiYoXy5qZi5BYShPYSksUy5kZWxldGUodGEpKTt0YS5zdHlsZS5sZWZ0PWAke1R9cHhgO3RhLnN0eWxlLnRvcD1gJHtoYX1weGA7VXx8KFQ9bmV3IEtleWZyYW1lRWZmZWN0KHRhLFt7d2lkdGg6IjBweCIsaGVpZ2h0OiIwcHgiLApvcGFjaXR5OiIwLjMwNiJ9LHt3aWR0aDpgJHtiYSouMjV9cHhgLGhlaWdodDpgJHtiYSouMjV9cHhgLG9wYWNpdHk6IjAuNzc0IixvZmZzZXQ6LjI1fSx7d2lkdGg6YCR7YmEqLjZ9cHhgLGhlaWdodDpgJHtiYSouNn1weGAsb3BhY2l0eToiMC44MjgiLG9mZnNldDouNn0se3dpZHRoOmAke2JhfXB4YCxoZWlnaHQ6YCR7YmF9cHhgLG9wYWNpdHk6IjAuOSJ9XSx7ZHVyYXRpb246YWEsZmlsbDoiZm9yd2FyZHMiLGVhc2luZzoiY3ViaWMtYmV6aWVyKDAuMTcsIDAuMTcsIDAuMSwgMSkifSksVD1uZXcgQW5pbWF0aW9uKFQsZG9jdW1lbnQudGltZWxpbmUpLE0uc2V0KHRhLFQpLFQucGxheSgpKX1HPW1hfX19LCJvbjpwb2ludGVydXAiOmQsIm9uOnBvaW50ZXJsZWF2ZSI6ZSwib246cG9pbnRlcmNhbmNlbCI6ZSwib246cG9pbnRlcm1vdmUiOmZ1bmN0aW9uKGhhKXt2YXIgbWE9Qz8/KEM9RS52YWx1ZT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk/P251bGwpO21hJiYoWT1oYS5jbGllbnRYLQptYS5sZWZ0LHBhPWhhLmNsaWVudFktbWEudG9wLGsoKSYmKGhhLmNsaWVudFg8bWEubGVmdHx8aGEuY2xpZW50WD5tYS5yaWdodHx8aGEuY2xpZW50WTxtYS50b3B8fGhhLmNsaWVudFk+bWEuYm90dG9tKT9kKCk6b2E9PT1udWxsJiYob2E9Xy5qZi5HYSgoKT0+e29hPW51bGw7cChgJHtZfXB4YCk7dChgJHtwYX1weGApfSwzKSkpfSwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sXy5LKCJkaXYiLHtjbGFzczoieXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheSJ9KSxfLksoImRpdiIse2NsYXNzOiJ5dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJMaWdodCIsc3R5bGU6Xy5JRSh7bGVmdDpuLHRvcDpyLHdpZHRoOnYsaGVpZ2h0OnZ9KX0pLF8uSygiZGl2Iix7ZWw6QSxjbGFzczoieXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVRvdWNoTGlnaHQifSksXy5LKCJkaXYiLHtlbDpGLGNsYXNzOiJ5dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlVG91Y2hMaWdodCJ9KSl9LCJhYSIpO3ZhciBMZWE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLmo9bmV3IE1hcDt2YXIgW2EsYl09Xy5KKFtdLHZvaWQgMCwiSUtmWkJkIik7dGhpcy52PWI7dGhpcy5vPV8uTigoKT0+e3ZhciBjPWEoKTtmb3IobGV0IGQgb2YgYylkLlB5Py4oKTtyZXR1cm4gYy5tYXAoZD0+ZC5lbGVtZW50KX0sdm9pZCAwLCJaTVJ0d2QiKX1sYSgpe2dLPW51bGw7c3VwZXIubGEoKX19LGdLPW51bGw7Xy55RT1fLkwoYT0+e3ZhciBiPV8udkUoXy5CRSksW2MsZF09Xy5KKHt4OjAseTowLG9wYWNpdHk6MCxzaXplOjB9LHZvaWQgMCwiR3dYY0RkIiksZT0oKT0+e2lmKGEuY29uZmlnKCk/LmprKXt2YXIgaD1iLnZhbHVlO2lmKGgpe3ZhciBrPV8uaEsoKS5vO3ZhciBsPWsoKTtpZihsLmxlbmd0aCl7bGV0IHQ9aC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtrPXQubGVmdCt0LndpZHRoLzI7dmFyIG09dC50b3ArdC5oZWlnaHQvMjtsZXQgdj1JbmZpbml0eTt2YXIgbj0wLHA9MDtsZXQgej05Njtmb3IobGV0IEUgb2YgbCl7aWYoRT09PWh8fCFFLmlzQ29ubmVjdGVkfHxFLm9mZnNldFBhcmVudD09PW51bGwpY29udGludWU7bD1FLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKGwud2lkdGg9PT0wJiZsLmhlaWdodD09PTApY29udGludWU7bGV0IEE9TWF0aC5tYXgobC5sZWZ0LE1hdGgubWluKGssbC5yaWdodCkpLEY9TWF0aC5tYXgobC50b3AsTWF0aC5taW4obSxsLmJvdHRvbSkpO3ZhciByPQpBLU1hdGgubWF4KHQubGVmdCxNYXRoLm1pbihBLHQucmlnaHQpKTtsZXQgQz1GLU1hdGgubWF4KHQudG9wLE1hdGgubWluKEYsdC5ib3R0b20pKTtyPXIqcitDKkM7cjx2JiYodj1yLG49QSxwPUYsej1NYXRoLm1heChsLndpZHRoLGwuaGVpZ2h0KSl9aD1NYXRoLnNxcnQodik7ZChoPDEwMD97eDpuLWsseTpwLW0sb3BhY2l0eToxLWgvMzAwLHNpemU6TWF0aC5tYXgoOTYseioyLjUpfTp7eDowLHk6MCxvcGFjaXR5OjAsc2l6ZTowfSl9ZWxzZSBkKHt4OjAseTowLG9wYWNpdHk6MCxzaXplOjB9KX19fTtfLm5FKCgpPT57aWYoYS5jb25maWcoKT8uamspe3ZhciBoPW5ldyBfLld0KGUsMTAwKSxrPSgpPT57aC52KCl9O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGspO3JldHVybigpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsayk7aC5kaXNwb3NlKCl9fX0sInJQWUMxZCIpO18ubkUoKCk9PnthLmNvbmZpZygpPy5qayYmZSgpfSwiUXA2UFJkIik7CnZhciBmPSgpPT5hLmNvbmZpZygpPy5WYSE9PTUmJmEuY29uZmlnKCk/LlZhIT09OSYmYS5jb25maWcoKT8uVmEhPT02O3JldHVybiBfLksoXy5PLHtBOigpPT5hLmNvbmZpZygpPy5WYSE9PTAmJiFfLmdyLHRoZW46KCk9Pl8uSygieXQtbGlnaHQtc2hhcGUiLHtlbDpiLCJhcmlhLWhpZGRlbiI6InRydWUiLGNsYXNzOl8uUCgiY29udHJpYll0TGlnaHRTaGFwZUhvc3QiLGEuY2xhc3NOYW1lLHtjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHQ6KCk9PiEwLGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodFNvbGlkOigpPT5hLmNvbmZpZygpPy5WYT09PTEsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0VG9uYWw6KCk9PmEuY29uZmlnKCk/LlZhPT09Myxjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRTb2xpZEludmVyc2U6KCk9PmEuY29uZmlnKCk/LlZhPT09Mixjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRUb25hbEludmVyc2U6KCk9PgphLmNvbmZpZygpPy5WYT09PTQsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3ZlcmxheVRvbmFsOigpPT5hLmNvbmZpZygpPy5WYT09PTgsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3ZlcmxheVNvbGlkOigpPT5hLmNvbmZpZygpPy5WYT09PTcsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZTooKT0+YS5jb25maWcoKT8uVmE9PT01LGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlPdXRsaW5lOigpPT5hLmNvbmZpZygpPy5WYT09PTksY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZUludmVyc2U6KCk9PmEuY29uZmlnKCk/LlZhPT09Nn0pLHN0eWxlOl8uSUUoeyItLXl0LWxpZ2h0LXJpbS1jb2xvciI6KCk9PmEuY29uZmlnKCk/LmR2LCItLXl0LWxpZ2h0LXdhc2gtb3BhY2l0eSI6KCk9PmMoKS5vcGFjaXR5LCItLXl0LWxpZ2h0LXdhc2gteCI6KCk9PmAke2MoKS54fXB4YCwiLS15dC1saWdodC13YXNoLXkiOigpPT4KYCR7YygpLnl9cHhgLCItLXl0LWxpZ2h0LXdhc2gtc2l6ZSI6KCk9PmAke2MoKS5zaXplfXB4YH0pfSxfLksoXy5PLHtBOigpPT5hLmNvbmZpZygpPy5qayx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJjb250cmliWXRMaWdodFNoYXBlRHluYW1pY1dhc2hMaWdodCJ9KX0pLF8uSyhfLk8se0E6KCk9PmEuY29uZmlnKCk/LkNCLHRoZW46KCk9Pl8uSyhNZWEse3N0eWxlOigpPT57dmFyIGg7YTp7aWYoaD1hLmNvbmZpZygpPy5WYSlzd2l0Y2goaCl7Y2FzZSAxOmNhc2UgNDpoPSJkZWZhdWx0IjticmVhayBhO2Nhc2UgMjpjYXNlIDM6Y2FzZSA1Omg9ImludmVyc2UiO2JyZWFrIGF9aD12b2lkIDB9cmV0dXJuIGh9fSl9KSxfLksoXy5PLHtBOmYsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoImNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHQiLHtjb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0U2FmYXJpOigpPT5fLk9rfHxfLklsLGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRTb2xpZDooKT0+CmEuY29uZmlnKCk/LlZhPT09MSxjb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0VG9uYWw6KCk9PmEuY29uZmlnKCk/LlZhPT09Myxjb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0U29saWRJbnZlcnNlOigpPT5hLmNvbmZpZygpPy5WYT09PTIsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodFRvbmFsSW52ZXJzZTooKT0+YS5jb25maWcoKT8uVmE9PT00LGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRPdmVybGF5VG9uYWw6KCk9PmEuY29uZmlnKCk/LlZhPT09OCxjb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0T3ZlcmxheVNvbGlkOigpPT5hLmNvbmZpZygpPy5WYT09PTd9KSxzdHlsZTpfLklFKHtiYWNrZ3JvdW5kOigpPT5gcmFkaWFsLWdyYWRpZW50KCR7YS5jb25maWcoKT8uZXZ9LCB0cmFuc3BhcmVudClgfSl9KX0pKX0pfSwiZGEiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgibnZYNFZiIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBoRyxkZGEsY2RhLGlHLGpHO18uZkc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oQXJyYXkuaXNBcnJheShhKT9hOkFycmF5LmZyb20oYSkpLm1hcChiKX07Xy5nRz1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGEucGEhPT0iZnVuY3Rpb24iP18uZkcoYS5wYSxhLmNoaWxkcmVuKTphLnRiPT09IklOREVYIj9jZGEoYSk6ZGRhKGEpfTtoRz1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgYSliPy4oKX07CmRkYT1mdW5jdGlvbihhKXt2YXIgYj1hLnRiPT09dm9pZCAwfHxhLnRiPT09IlJFRkVSRU5DRSIsYz1iP249Pm46YS50YixkPVtdLGU9W10sZj1bXSxoPVtdLGs9W10sbD1bXSxtPSEwO18uWXUoKCk9PntoRyhoKX0pO3JldHVybiBfLlhCKCgpPT57dmFyIG49aUcoYSkscD1uLmxlbmd0aDtpZihwPT09MCl7aWYoZC5sZW5ndGg9PT0wJiYhbSlyZXR1cm4gZjtoRyhoKTtkPW47ZT1bXTtmb3Iobj0wO248ZC5sZW5ndGg7bisrKWUucHVzaChjKGRbbl0pKTtmPVtdO2g9W107az1bXTtsPVtdO2EuZmFsbGJhY2smJihoWzBdPWpHKCgpPT57ZlswXT1fLmZDKGEuZmFsbGJhY2soKSl9KSk7bT0hMTtyZXR1cm4gZn12YXIgcj1uZXcgZWRhO2Zvcih2YXIgdD1kLmxlbmd0aC0xO3Q+PTA7dC0tKXIucHVzaChlW3RdLHQpO3Q9QXJyYXkocCk7dmFyIHY9QXJyYXkocCksej1BcnJheShwKSxFPUFycmF5KHApLEE9QXJyYXkoYj8wOnApO2ZvcihsZXQgRj0wO0Y8cDtGKyspe2xldCBDPW5bRl0sRz1jKEMpLApEPXIucG9wKEcpO0QhPW51bGw/KHpbRl09ZltEXSx2W0ZdPWVbRF0sdFtGXT1oW0RdLEVbRl09a1tEXSxifHwoQVtGXT1sW0RdKSxfLnJDKCgpPT57RVtGXShGKTtpZighYilBW0ZdKEMpfSksZGVsZXRlIGhbRF0pOnRbRl09akcoKCk9Pnt2YXIgSD1fLkooRix2b2lkIDAsIlBMVDFzIiksUj1IWzBdO0VbRl09SFsxXTt2W0ZdPUc7aWYoYil6W0ZdPV8uZkMoYS5jaGlsZHJlbihDLFIpKTtlbHNle2xldCBNPV8uSihDLHZvaWQgMCwiYms4UkpkIiksUz1NWzBdO0FbRl09TVsxXTt6W0ZdPV8uZkMoYS5jaGlsZHJlbihTLFIpKX19KX1oRyhoKTtkPW47ZT12O2Y9ejtoPXQ7az1FO2w9QTttPSExO3JldHVybiB6fSx7ZGVidWdOYW1lOmEuZGVidWdJbnN0YW5jZT8/Im5zVEdIZCIsenA6YS5wYSxXZTohMH0pfTsKY2RhPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9W10sZD1bXSxlPVtdLGY9ITE7Xy5ZdSgoKT0+e2hHKGUpfSk7cmV0dXJuIF8uWEIoKCk9Pnt2YXIgaD1pRyhhKTtmJiZoLmxlbmd0aD4wJiYoZS5wb3AoKSgpLGIucG9wKCksZj0hMSk7dmFyIGs9QXJyYXkoaC5sZW5ndGgpO2ZvcihsZXQgbT0wO208aC5sZW5ndGg7bSsrKXtpZihtPGIubGVuZ3RoKXtiW21dIT09aFttXSYmKF8uckMoKCk9PnZvaWQgY1ttXShoW21dKSksYlttXT1oW21dKTtrW21dPWRbbV07Y29udGludWV9dmFyIGw9akcoKCk9PntiW21dPWhbbV07dmFyIG49Xy5KKGhbbV0sdm9pZCAwLCJ1aUMwY2IiKSxwPW5bMF07Y1ttXT1uWzFdO2tbbV09Xy5mQyhhLmNoaWxkcmVuKHAsbSkpfSk7ZVttXT1sfWZvcig7Yi5sZW5ndGg+aC5sZW5ndGg7KWIucG9wKCksZS5wb3AoKSgpLGMucG9wKCk7aC5sZW5ndGg9PT0wJiYhZiYmYS5mYWxsYmFjayYmKGw9akcoKCk9PntrWzBdPV8uZkMoYS5mYWxsYmFjaygpKX0pLGVbMF09bCxmPQohMCk7cmV0dXJuIGQ9a30se2RlYnVnTmFtZTphLmRlYnVnSW5zdGFuY2U/PyJuc1RHSGQiLFdlOiEwfSl9O2lHPWZ1bmN0aW9uKGEpe2E9YS5wYSgpO3JldHVybiBBcnJheS5pc0FycmF5KGEpP2E6QXJyYXkuZnJvbShhKX07akc9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5DQSgpO3JldHVybiBfLnV2KGM9Pnt2YXIgZD1fLmt1KF8uenYpO3RyeXtjLnBhcmVudD1iLGEoYyl9ZmluYWxseXtfLmt1KGQpfX0sITEpfTt2YXIgZWRhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5tYXA9bmV3IE1hcH1wdXNoKGEsYil7dmFyIGM9dGhpcy5tYXA7aWYoYy5oYXMoYSkpe3RoaXMuanx8KHRoaXMuaj1uZXcgTWFwKTtpZih0aGlzLmo/LmhhcyhiKSl0aHJvdyBfLlV1KEVycm9yKCJaY2AiK2IpLDQpO3RoaXMuai5zZXQoYixjLmdldChhKSl9Yy5zZXQoYSxiKX1wb3AoYSl7dmFyIGI9dGhpcy5tYXAsYz1iLmdldChhKTtjIT09dm9pZCAwJiZ0aGlzLmo/LmhhcyhjKT8oYi5zZXQoYSx0aGlzLmouZ2V0KGMpKSx0aGlzLmouZGVsZXRlKGMpKTpiLmRlbGV0ZShhKTtyZXR1cm4gY319Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIga2NhLGxjYSxGRSxHRTtfLkNFPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtfLkRFPWZ1bmN0aW9uKGEpe3JldHVybntpc0RlZmF1bHQ6ITAsY2hpbGRyZW46YS5jaGlsZHJlbn19O18uRUU9ZnVuY3Rpb24oYSl7cmV0dXJuIGtjYShhKX07CmtjYT1mdW5jdGlvbihhKXt2YXIgYj1sY2EoYSksYz1fLk4oKCk9PnthOnt2YXIgZD0tMTtmb3IobGV0IGU9MDtlPGIubGVuZ3RoO2UrKyl7bGV0IGY9YltlXTtmPy5bXy5Mdl0mJihmPUZFKGYpKTtmIGluc3RhbmNlb2YgXy5kQyYmKGY9R0UoZikpO2lmKGYuaXNEZWZhdWx0KWQ9PT0tMSYmKGQ9ZSk7ZWxzZSBpZihfLkJ2KGYud2hlbikpe2Q9ZTticmVhayBhfX19cmV0dXJuIGR9LHZvaWQgMCwiTVNUeFdiIik7cmV0dXJuIF8uWEIoKCk9Pnt2YXIgZD1jKCksZTtfLnV2KCgpPT57dmFyIGY9Xy5rdShfLnp2KTt0cnl7aWYoZD09PS0xKWU9bnVsbDtlbHNle3ZhciBoPWJbZF07dmFyIGs9aD8uW18uTHZdP0ZFKGgpOmggaW5zdGFuY2VvZiBfLmRDP0dFKGgpOmg7dmFyIGw9az09PW51bGw/bnVsbDprLmlzRGVmYXVsdD9rLmNoaWxkcmVuKCk6dHlwZW9mIGsud2hlbj09PSJmdW5jdGlvbiI/ay5jaGlsZHJlbihfLk5DKGsud2hlbiwiQ2FzZSIpKTprLmNoaWxkcmVuKGsud2hlbik7ZT1fLmZDKGwpfX1maW5hbGx5e18ua3UoZil9fSk7CnJldHVybiBlfSx7ZGVidWdOYW1lOmEuZGVidWdJbnN0YW5jZT8/InZJMXJ0ZiIsV2U6ITB9KX07bGNhPWZ1bmN0aW9uKGEpe2E9YS5jaGlsZHJlbjtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9hOlthXX07RkU9ZnVuY3Rpb24oYSl7cmV0dXJuIGEudHlwZT09PV8uREU/e2lzRGVmYXVsdDohMCxjaGlsZHJlbjphLmNoaWxkcmVuWzBdfTp7d2hlbjphLnByb3BzLndoZW4sY2hpbGRyZW46YS5jaGlsZHJlblswXX19O0dFPWZ1bmN0aW9uKGEpe3ZhciBiPWEucHJvcHM7YT1hLmNoaWxkcmVuWzBdO3JldHVybiBiLndoZW4/e3doZW46Yi53aGVuLGNoaWxkcmVuOmF9Ontpc0RlZmF1bHQ6ITAsY2hpbGRyZW46YX19O18uQ0UuZGVidWdOYW1lPSJ0YmhNY2YiO18uREUuZGVidWdOYW1lPSJ6eU1GemIiOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgRGNhO0RjYT1mdW5jdGlvbihhKXtzd2l0Y2goYS5acSl7Y2FzZSBfLlF2Ol8uVXYuc2NoZWR1bGUoYSk7YnJlYWs7ZGVmYXVsdDpfLmViKGEuWnEsdm9pZCAwKX19O18ub0Y9ZnVuY3Rpb24oYSl7aWYoXy5qdT09PV8uV3UpUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoInliIiksMik7fSk7ZWxzZXtpZigoMCxfLmx2KShfLmp1KSl0aHJvdyBfLlV1KEVycm9yKCJ6YiIpLDQpO3ZhciBiPV8uWnQsYz1fLk11O0RjYSh7WnE6Xy5RdixydW46KCk9PntpZihiJiYhYi5pYSl7dmFyIGQ9Xy4kdChiKTt0cnl7Xy5SdSgoKT0+e3ZhciBlPWEoKTt0eXBlb2YgZT09PSJmdW5jdGlvbiImJl8uWXUoZSl9LGMpfWNhdGNoKGUpe18uVXUoZSw0KSxfLm92KGUpfWZpbmFsbHl7Xy4kdChkKX19fX0pfX07Xy5LQj1fLmxDO18ucUY9U3ltYm9sKCJYYyIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgV0osVko7Xy5USj1mdW5jdGlvbihhLGIpe3ZhciBjPV8ucEUoIm9uQ2hhbmdlIiksZD1fLm9FKCk7Xy5xRShjLm1sLGIpJiYoYy5tbD1iLGMuc3I9YSxkLnVmfHwoZC51Zj1bXSksZC51Zi5wdXNoKGMpKX07Xy5VSj1mdW5jdGlvbihhKXtfLkhBKCk/Xy5vRigoKT0+Xy5FQShhKSk6Xy5USigoKT0+Xy5FQShhKSxbXSl9O1dKPWZ1bmN0aW9uKGEpe3ZhciBiPVsuLi5hXTthLmxlbmd0aD0wO2ZvcihsZXQgYyBvZiBiKWlmKFZKKGMpLGE9Yy5zcixjLnNyPW51bGwsYT1hPy4oKSljLnJyPWF9O1ZKPWZ1bmN0aW9uKGEpe3ZhciBiPWEucnI7YS5ycj1udWxsO2I/LigpfTtfLmR3KHtTbyhhKXt2YXIgYj1fLiR0KGEucWwpO3RyeXthLnVmPy5sZW5ndGgmJldKKGEudWYpfWZpbmFsbHl7Xy4kdChiKX19LEdmKGEpe3ZhciBiPV8uJHQoYS5xbCk7dHJ5e2EudWY/Lmxlbmd0aCYmV0ooYS51Zil9ZmluYWxseXtfLiR0KGIpfX0sSGYoYSl7YS5aZj8ubGVuZ3RoJiZhLlpmLmZvckVhY2goVkopfX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmFEPW51bGw7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBoZGEsaWRhLGtkYSxtZGEscUcsbmRhLHNHLHJHLHVHLHdHLHZHLHhHLHRHLG9kYSxwZGEsc2RhLEJHLHRkYSxBRyxyZGEscWRhLGpkYSxsZGE7aGRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5hRCxkPTA7Xy5hRD17c3U6KCk9PntkKys7Xy5yQygoKT0+e2EoITEpfSl9LEhyOigpPT57LS1kPT09MCYmXy5yQygoKT0+e2EoITApfSl9fTt0cnl7cmV0dXJuIGIoKX1maW5hbGx5e18uYUQ9Y319O2lkYT1mdW5jdGlvbihhKXt2YXIgW2IsY109Xy5KKCEwLHZvaWQgMCwiYkt0TzZkIik7cmV0dXJuIGhkYShjLCgpPT57dmFyIGQ9Xy5mQyhhLmNoaWxkcmVuKCkpO3JldHVybiBfLksoXy5PLHtBOmIsdGhlbjooKT0+ZCxXOmEuZmFsbGJhY2t9KX0pfTsKXy5uRz1mdW5jdGlvbih7Y2hpbGRyZW46YSxFZjpiLGNhbGxiYWNrczpjfSl7dmFyIGQ9bmV3IE1hcDtiPWI/P1tdO2ZvcihsZXQgZSBvZiBiKWQuc2V0KGUuaWQuQ2IudG9rZW4sZSk7Yz1jPz9bXTtmb3IobGV0IGUgb2YgYylkLnNldChlLmlkLkNiLnRva2VuLGUpO2Q9T2JqZWN0LmFzc2lnbihPYmplY3QuY3JlYXRlKGpkYSkse2RlYnVnTmFtZToiW2NvbnRleHRPd25lcl0iLGVudHJpZXM6ZH0pO18uQnUoZCk7ZD1fLiR0KGQpO3RyeXtsZXQgZT1fLmZDKGEpO3JldHVybiBfLksoXy5JQixudWxsLGUpfWZpbmFsbHl7Xy4kdChkKX19O18ub0c9ZnVuY3Rpb24oYSxiKXtyZXR1cm57W18uZ2RhXTohMCxpZDphLHZhbHVlOmJ9fTtrZGE9ZnVuY3Rpb24oe1NnOmF9KXtyZXR1cm4gXy5LKF8uSUIsbnVsbCxhKCkpfTtfLnBHPWZ1bmN0aW9uKGEsYil7YT17Li4uYSxwYXJlbnQ6Xy5tRygpfTtyZXR1cm4gXy5LKF8ubkcse0VmOltfLm9HKF8ubEcsYSldfSxfLksoa2RhLHtTZzpifSkpfTsKbWRhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBsZGEoYSxiKX07cUc9ZnVuY3Rpb24oYSxiKXt0aGlzLm89e307dGhpcy5qPVtdO3RoaXMuQWU9dGhpcy5zaXplPTA7dmFyIGM9YXJndW1lbnRzLmxlbmd0aDtpZihjPjEpe2lmKGMlMil0aHJvdyBFcnJvcigiYmQiKTtmb3IodmFyIGQ9MDtkPGM7ZCs9Mil0aGlzLnNldChhcmd1bWVudHNbZF0sYXJndW1lbnRzW2QrMV0pfWVsc2UgaWYoYSlpZihhIGluc3RhbmNlb2YgcUcpZm9yKGM9YS5yZCgpLGQ9MDtkPGMubGVuZ3RoO2QrKyl0aGlzLnNldChjW2RdLGEuZ2V0KGNbZF0pKTtlbHNlIGZvcihkIGluIGEpdGhpcy5zZXQoZCxhW2RdKX07bmRhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT1ifTsKc0c9ZnVuY3Rpb24oYSl7aWYoYS5zaXplIT1hLmoubGVuZ3RoKXtmb3IodmFyIGI9MCxjPTA7YjxhLmoubGVuZ3RoOyl7dmFyIGQ9YS5qW2JdO3JHKGEubyxkKSYmKGEualtjKytdPWQpO2IrK31hLmoubGVuZ3RoPWN9aWYoYS5zaXplIT1hLmoubGVuZ3RoKXtiPXt9O2ZvcihkPWM9MDtjPGEuai5sZW5ndGg7KXtsZXQgZT1hLmpbY107ckcoYixlKXx8KGEualtkKytdPWUsYltlXT0xKTtjKyt9YS5qLmxlbmd0aD1kfX07ckc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYil9O3VHPWZ1bmN0aW9uKCl7dGhpcy5vPW5ldyBxRzt0aGlzLmo9bmV3IHRHKCIiKTt0aGlzLmoubmV4dD10aGlzLmouVWE9dGhpcy5qfTt3Rz1mdW5jdGlvbihhLGIpe2lmKGI9YS5vLmdldChiKSliLnJlbW92ZSgpLHZHKGEsYik7cmV0dXJuIGJ9Owp2Rz1mdW5jdGlvbihhLGIpe2IubmV4dD1hLmoubmV4dDtiLlVhPWEuajthLmoubmV4dD1iO2ZvcihiLm5leHQuVWE9YjthLm8uc2l6ZT4xMDA7KWEucmVtb3ZlTm9kZShhLmouVWEpfTt4Rz1mdW5jdGlvbihhLGIpe2EuaiE9YiYmYS5yZW1vdmVOb2RlKGIpO3JldHVybiBiLnZhbHVlfTt0Rz1mdW5jdGlvbihhLGIpe3RoaXMua2V5PWE7dGhpcy52YWx1ZT1ifTtvZGE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9eUc7aWYoYT09bnVsbHx8IWMuRWcpcmV0dXJuIGI7ZS5qLmdldChhKT09PXZvaWQgMCYmZS5qLnNldChhLFtiLGQ/P1tdLCExXSk7Yz1lLmouZ2V0KGEpO2lmKCFjKXJldHVybiBiO3ZhciBbZixoLGtdPWM7aWYoaD8ubGVuZ3RoJiZkPy5sZW5ndGgmJmQuc29tZSgobCxtKT0+bCE9PWhbbV0pKXJldHVybiBlLmoucmVtb3ZlKGEpLGI7ZD8ubGVuZ3RoJiZlLmouc2V0KGEsW2YsZCxrXSk7cmV0dXJuIGs/ZjpifTsKXy56Rz1mdW5jdGlvbihhLGI9e0VnOiEwfSl7cmV0dXJue01nOmZ1bmN0aW9uKGMsZCl7dmFyIGU9Xy5OKCgpPT5hKGMoKSksdm9pZCAwLCJHbXJibGIiKSxbZixoXT1fLkFDKCgpPT57dmFyIGs9YygpLGw9ZSgpLG09ZD8ubWFwKG49Pm4oKSk/P1tdO3JldHVybiBvZGEobCxrLGIsbSl9KTtfLm5FKCgpPT57dmFyIGs9ZSgpO2shPW51bGwmJihrPXlHLnJlZ2lzdGVyKGssW2YsaF0sKCk9PmQ/Lm1hcChsPT5sKCkpPz9bXSksXy5ZdShrKSl9LCJVbWFjNmMiKTtyZXR1cm5bZixmdW5jdGlvbihrKXtoKGspO3ZhciBsPWUoKTtsIT1udWxsJiZ5Ry51cGRhdGUobCwoKT0+ayxiKX1dfSxnZXREYXRhOmZ1bmN0aW9uKGMpe2M9YShjKTtyZXR1cm4geUcuZ2V0KGMsYil9LGdrOmZ1bmN0aW9uKGMsZCl7Yz1hKGMpO3JldHVybiB5Ry51cGRhdGUoYyxkLGIpfX19OwpfLlc9ZnVuY3Rpb24oYSl7dmFyIHtkYXRhOmIsbWFwcGluZzpjLHdyYXBwZXI6ZCxySzplfT1wZGEoYSk7cWRhKGIsYyk7dmFyIGY9KCk9PkFHKF8uQnYoYikpLGg9KCk9Pnt2YXIgaz1BRyhfLkJ2KGIpKSxsPVtdO2ZvcihsZXQgbSBvZiBrKShrPUJHKG0pKSYmbC5wdXNoKGspO3JldHVybiBsfTtyZXR1cm4gYS5kYXRhP18uSyhpZGEse2ZhbGxiYWNrOmV9LCgpPT5fLksoXy5nRyx7cGE6aH0sKGssbCk9Pnt2YXIgbT1kP3A9PmQoKCk9PmNba10ocCxsKSxuLGwpOnA9PmNba10ocCxsKTttLmRlYnVnTmFtZXx8KG0uZGVidWdOYW1lPVN0cmluZyhrKSk7aWYoIWNbU3RyaW5nKGspXSlyZXR1cm4gZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgiIik7bS5jb21wb25lbnRUeXBlIT09Xy5LdiYmcmRhKFN0cmluZyhrKSk7dmFyIG49c2RhKGYsayxsKTtyZXR1cm4gXy5LKG0se2RhdGE6bn0pfSkpOl8uSyhfLklCLG51bGwpfTsKcGRhPWZ1bmN0aW9uKGEpe3ZhciBiPWEudGFyZ2V0SWR8fHRkYShhLmNoaWxkcmVuKTtpZighYS5kYXRhfHwhYilyZXR1cm57Li4uYSxtYXBwaW5nOmEuY2hpbGRyZW59O3ZhciBjPWBzdGFtcGVyLSR7dWRhKyt9YCxkPSgpPT4odHlwZW9mIGEudGFyZ2V0SWQ9PT0iZnVuY3Rpb24iP2EudGFyZ2V0SWQoYyk6YS50YXJnZXRJZCk/P2M7W2JdPXZkYSgoKT0+e3ZhciBmPVsuLi5BRyhhLmRhdGEoKSldO2YudGFyZ2V0SWQ9ZDtyZXR1cm4gZn0pO3ZhciBlPXsuLi4oXy55KCkucmVzb2x2ZShfLkluKHdkYSkpfHx7fSkuQUssLi4uYS5jaGlsZHJlbn07aWYoYS5Kcil7bGV0IGY9ZS5ub3RpZmljYXRpb25UZXh0UmVuZGVyZXIsaD1lLm5vdGlmaWNhdGlvbk11bHRpQWN0aW9uUmVuZGVyZXI7ZiYmKGUubm90aWZpY2F0aW9uVGV4dFJlbmRlcmVyPSh7ZGF0YTprfSxsKT0+YS5KcihmKHtkYXRhOmt9LGwpKSk7aCYmKGUubm90aWZpY2F0aW9uTXVsdGlBY3Rpb25SZW5kZXJlcj0oe2RhdGE6a30sCmwpPT5hLkpyKGgoe2RhdGE6a30sbCkpKX1yZXR1cm57Li4uYSxkYXRhOmIsbWFwcGluZzplLHdyYXBwZXI6KGYsaCxrKT0+Xy5wRyh7dGFyZ2V0SWQ6ZCxZSzprfSxhLndyYXBwZXI/KCk9PmEud3JhcHBlcihmLGgsayk6Zil9fTtzZGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybiBfLk4oKCk9Pnt2YXIgZT1hKClbYygpXTtpZihlKWQ9ZVtiXTtlbHNlIHJldHVybiBfLklwKG5ldyBfLlhqKGBTdGFtcGVyIGZhaWxlZCB0byBmaW5kICR7U3RyaW5nKGIpfSBhdCBpbmRleCAke2MoKX0gb2YgZGF0YSBhcnJheSBvZiBsZW5ndGggJHthKCkubGVuZ3RofSAoYi8zNjU2NDMzNTkpLiBEaWQgeW91IGFjY2VzcyBhIHNpZ25hbCBhZnRlciBhIGNvbXBvbmVudCBoYXMgYmVlbiBjbGVhbmVkIHVwP2ApKSxkO3JldHVybiBlW2JdfSx2b2lkIDAsInNFcnRqZCIpfTsKQkc9ZnVuY3Rpb24oYSl7dmFyIGI9dm9pZCAwO2ZvcihsZXQgYyBpbiBhKWlmKCEoIWEpLmhhc093blByb3BlcnR5KGMpKXtiPWM7YnJlYWt9cmV0dXJuIGJ9O3RkYT1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgT2JqZWN0LmtleXMoYSkpaWYoeGRhLmluY2x1ZGVzKGIpfHx5ZGEuaW5jbHVkZXMoYil8fHpkYS5pbmNsdWRlcyhiKSlyZXR1cm4hMDtyZXR1cm4hMX07QUc9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/QXJyYXkuaXNBcnJheShhKSYmYSBpbnN0YW5jZW9mIEFycmF5P2E6W2FdOltdfTtyZGE9ZnVuY3Rpb24oYSl7Xy54KCJ3ZWJfZW5hYmxlX3JlbmRlcmVyX2xvZ2dlciIpJiZfLnkoKS5yZXNvbHZlKF8uSW4oXy5DRykpPy53eShhKX07CnFkYT1mdW5jdGlvbihhLGIpe3ZhciBjPV8ueSgpLnJlc29sdmUoXy5JbihBZGEpKTtjJiZfLm5FKCgpPT57dmFyIGQ9QUcoXy5CdihhKSksZT0wLGY9ITE7Zm9yKHZhciBoIG9mIGQpe2Q9QkcoaCk7aWYoIWR8fCFiW1N0cmluZyhkKV0pe2Y9ITA7YnJlYWt9ZSsrfWg9Yy5WSztkPWMuV0s7ZT4wJiYhZj9oLm8oZCgpKTpoLmooZCgpKX0sIkRoT1V4ZSIpfTtqZGE9e1JoKGEpe2lmKF8uZnUgaW4gYXx8Xy5mZGEgaW4gYSl7bGV0IGI9dGhpcy5lbnRyaWVzLmdldChhLkNiLnRva2VuKTtpZihiIT09dm9pZCAwKXJldHVybiBiLnZhbHVlfXJldHVybiB0aGlzLnBhcmVudD9fLmN1KHRoaXMucGFyZW50LGEpOl8uYXV9fTsKbGRhPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWFbXy51LlN5bWJvbC5pdGVyYXRvcl0oKTt0aGlzLm89Yn1bU3ltYm9sLml0ZXJhdG9yXSgpe3JldHVybiB0aGlzfW5leHQoKXt2YXIgYT10aGlzLmoubmV4dCgpO3JldHVybnt2YWx1ZTphLmRvbmU/dm9pZCAwOnRoaXMuby5jYWxsKHZvaWQgMCxhLnZhbHVlKSxkb25lOmEuZG9uZX19fTtfLmc9cUcucHJvdG90eXBlO18uZy5NYz1mdW5jdGlvbigpe3NHKHRoaXMpO3ZhciBhPVtdO2ZvcihsZXQgYj0wO2I8dGhpcy5qLmxlbmd0aDtiKyspYS5wdXNoKHRoaXMub1t0aGlzLmpbYl1dKTtyZXR1cm4gYX07Xy5nLnJkPWZ1bmN0aW9uKCl7c0codGhpcyk7cmV0dXJuIHRoaXMuai5jb25jYXQoKX07Xy5nLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gckcodGhpcy5vLGEpfTtfLmcuZXF1YWxzPWZ1bmN0aW9uKGEsYil7aWYodGhpcz09PWEpcmV0dXJuITA7aWYodGhpcy5zaXplIT1hLnNpemUpcmV0dXJuITE7Yj1ifHxuZGE7c0codGhpcyk7dmFyIGM7Zm9yKGxldCBkPTA7Yz10aGlzLmpbZF07ZCsrKWlmKCFiKHRoaXMuZ2V0KGMpLGEuZ2V0KGMpKSlyZXR1cm4hMTtyZXR1cm4hMH07Xy5nLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zaXplPT0wfTtfLmcuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLm89e307dGhpcy5BZT10aGlzLnNpemU9dGhpcy5qLmxlbmd0aD0wfTsKXy5nLnJlbW92ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5kZWxldGUoYSl9O18uZy5kZWxldGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHJHKHRoaXMubyxhKT8oZGVsZXRlIHRoaXMub1thXSwtLXRoaXMuc2l6ZSx0aGlzLkFlKyssdGhpcy5qLmxlbmd0aD4yKnRoaXMuc2l6ZSYmc0codGhpcyksITApOiExfTtfLmcuZ2V0PWZ1bmN0aW9uKGEsYil7cmV0dXJuIHJHKHRoaXMubyxhKT90aGlzLm9bYV06Yn07Xy5nLnNldD1mdW5jdGlvbihhLGIpe3JHKHRoaXMubyxhKXx8KHRoaXMuc2l6ZSs9MSx0aGlzLmoucHVzaChhKSx0aGlzLkFlKyspO3RoaXMub1thXT1ifTtfLmcuZm9yRWFjaD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMucmQoKTtmb3IobGV0IGQ9MDtkPGMubGVuZ3RoO2QrKyl7bGV0IGU9Y1tkXSxmPXRoaXMuZ2V0KGUpO2EuY2FsbChiLGYsZSx0aGlzKX19O18uZy5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgcUcodGhpcyl9O18uZy5rZXlzPWZ1bmN0aW9uKCl7cmV0dXJuIF8uc2godGhpcy5iZCghMCkpLmooKX07Cl8uZy52YWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gXy5zaCh0aGlzLmJkKCExKSkuaigpfTtfLmcuZW50cmllcz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7cmV0dXJuIG1kYSh0aGlzLmtleXMoKSxmdW5jdGlvbihiKXtyZXR1cm5bYixhLmdldChiKV19KX07Xy5nLmJkPWZ1bmN0aW9uKGEpe3NHKHRoaXMpO3ZhciBiPTAsYz10aGlzLkFlLGQ9dGhpcyxlPW5ldyBfLm9oO2UubmV4dD1mdW5jdGlvbigpe2lmKGMhPWQuQWUpdGhyb3cgRXJyb3IoImNkIik7aWYoYj49ZC5qLmxlbmd0aClyZXR1cm4gXy5hczt2YXIgZj1kLmpbYisrXTtyZXR1cm57dmFsdWU6YT9mOmQub1tmXSxkb25lOiExfX07cmV0dXJuIGV9O18uZz11Ry5wcm90b3R5cGU7Xy5nLmdldD1mdW5jdGlvbihhLGIpe3JldHVybihhPXdHKHRoaXMsYSkpP2EudmFsdWU6Yn07Xy5nLnNldD1mdW5jdGlvbihhLGIpe3ZhciBjPXdHKHRoaXMsYSk7Yz9jLnZhbHVlPWI6KGM9bmV3IHRHKGEsYiksdGhpcy5vLnNldChhLGMpLHZHKHRoaXMsYykpfTtfLmcudWU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qLm5leHQudmFsdWV9O18uZy5zaGlmdD1mdW5jdGlvbigpe3JldHVybiB4Ryh0aGlzLHRoaXMuai5uZXh0KX07Xy5nLnBvcD1mdW5jdGlvbigpe3JldHVybiB4Ryh0aGlzLHRoaXMuai5VYSl9O18uZy5yZW1vdmU9ZnVuY3Rpb24oYSl7cmV0dXJuKGE9dGhpcy5vLmdldChhKSk/KHRoaXMucmVtb3ZlTm9kZShhKSwhMCk6ITF9O18uZy5yZW1vdmVOb2RlPWZ1bmN0aW9uKGEpe2EucmVtb3ZlKCk7dGhpcy5vLnJlbW92ZShhLmtleSl9O18uZy5pc0VtcHR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuby5pc0VtcHR5KCl9OwpfLmcucmQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYn0pfTtfLmcuTWM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIGF9KX07Xy5nLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGI9PWF9KX07Xy5nLmNsZWFyPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLm8uc2l6ZT4wOyl0aGlzLnJlbW92ZU5vZGUodGhpcy5qLlVhKX07Xy5nLmZvckVhY2g9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGM9dGhpcy5qLm5leHQ7YyE9dGhpcy5qO2M9Yy5uZXh0KWEuY2FsbChiLGMudmFsdWUsYy5rZXksdGhpcyl9O18uZy5tYXA9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtmb3IobGV0IGQ9dGhpcy5qLm5leHQ7ZCE9dGhpcy5qO2Q9ZC5uZXh0KWMucHVzaChhLmNhbGwoYixkLnZhbHVlLGQua2V5LHRoaXMpKTtyZXR1cm4gY307Cl8uZy5zb21lPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjPXRoaXMuai5uZXh0O2MhPXRoaXMuajtjPWMubmV4dClpZihhLmNhbGwoYixjLnZhbHVlLGMua2V5LHRoaXMpKXJldHVybiEwO3JldHVybiExfTtfLmcuZXZlcnk9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGM9dGhpcy5qLm5leHQ7YyE9dGhpcy5qO2M9Yy5uZXh0KWlmKCFhLmNhbGwoYixjLnZhbHVlLGMua2V5LHRoaXMpKXJldHVybiExO3JldHVybiEwfTt0Ry5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKCl7dGhpcy5VYS5uZXh0PXRoaXMubmV4dDt0aGlzLm5leHQuVWE9dGhpcy5VYTtkZWxldGUgdGhpcy5VYTtkZWxldGUgdGhpcy5uZXh0fTt2YXIgeUc9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5vPW5ldyBNYXA7dGhpcy52PW5ldyBNYXA7dGhpcy5qPW5ldyB1R31nZXQoYSxiKXt2YXIgYz10aGlzLm8uZ2V0KGEpO2lmKGMpcmV0dXJuIGNbMF0oKTtpZihiLkVnJiZhIT1udWxsKXJldHVybiB0aGlzLmouZ2V0KGEpPy5bMF19dXBkYXRlKGEsYixjKXt2YXIgZD10aGlzLm8uZ2V0KGEpO2lmKGQpe2xldCBbZSxmXT1kO2I9YihlKCkpO2YoYik7Yy5FZyYmYSE9bnVsbCYmKGM9dGhpcy52LmdldChhKSx0aGlzLmouc2V0KGEsW2IsYz8uKCk/P1tdLCEwXSkpO3JldHVybiEwfWlmKGMuRWcmJmEhPW51bGwmJihjPXRoaXMuai5nZXQoYSkpKXtsZXQgW2UsZl09YztiPWIoZSk7dGhpcy5qLnNldChhLFtiLGYsITBdKTtyZXR1cm4hMH1yZXR1cm4hMX1yZWdpc3RlcihhLGIsYyl7aWYoYT09bnVsbClyZXR1cm4oKT0+e307dGhpcy5vLnNldChhLGIpO2MmJnRoaXMudi5zZXQoYSxjKTtyZXR1cm4oKT0+e3RoaXMuby5nZXQoYSk9PT0KYiYmKHRoaXMuby5kZWxldGUoYSksdGhpcy52LmRlbGV0ZShhKSl9fX07Xy5DRz1uZXcgXy5WcygiUkVOREVSRVJfTE9HR0VSX1RPS0VOIik7dmFyIHdkYT1uZXcgXy5WcygiUkVOREVSRVJfU1RBTVBFUl9PUFRJT05TX1RPS0VOIik7dmFyIEFkYT1uZXcgXy5WcygiUkVOREVSRVJfU1RBTVBFUl9TVUNDRVNTX1NMSV9UT0tFTiIpO3ZhciB4ZGE9ImNvbXBhY3RSYWRpb1JlbmRlcmVyIGNvbXBhY3RQbGF5bGlzdFJlbmRlcmVyIHBsYXlsaXN0VmlkZW9SZW5kZXJlciBjb21wYWN0VmlkZW9SZW5kZXJlciBmZWVkTnVkZ2VSZW5kZXJlciBncmlkVmlkZW9SZW5kZXJlciBwcmltZXRpbWVQcm9tb1JlbmRlcmVyIHJhZGlvUmVuZGVyZXIgcHJpbWV0aW1lUHJvbW9SZW5kZXJlciByZWVsSXRlbVJlbmRlcmVyIHJlZWxTaGVsZlJlbmRlcmVyIHJpY2hTaGVsZlJlbmRlcmVyIHNlYXJjaEhpc3RvcnlRdWVyeVJlbmRlcmVyIHNoZWxmUmVuZGVyZXIgdmlkZW9XaXRoQ29udGV4dFJlbmRlcmVyIHZpZGVvQ2FyZFJlbmRlcmVyIHN0YXRlbWVudEJhbm5lclJlbmRlcmVyIG1pbmlHYW1lQ2FyZFZpZXdNb2RlbCBzaG9ydHNMb2NrdXBWaWV3TW9kZWwgbG9ja3VwVmlld01vZGVsIGdyaWRTaGVsZlZpZXdNb2RlbCIuc3BsaXQoIiAiKSx6ZGE9WyJub3RpZmljYXRpb25UZXh0UmVuZGVyZXIiLCJub3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVyIl0sCnlkYT0icHJpbWV0aW1lUHJvbW9SZW5kZXJlciBzdGF0ZW1lbnRCYW5uZXJSZW5kZXJlciBicmFuZFZpZGVvU2hlbGZSZW5kZXJlciBicmFuZFZpZGVvU2luZ2xldG9uUmVuZGVyZXIgZmVlZE51ZGdlUmVuZGVyZXIgcGxheWxpc3RWaWRlb1JlbmRlcmVyIi5zcGxpdCgiICIpLHtNZzp2ZGF9PV8uekcoYT0+Xy5CdihhPy50YXJnZXRJZCkpO3ZhciB1ZGE9MDtfLlcuZGVidWdOYW1lPSJFakpiQ2UiOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgVmJhO1ZiYT1mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuZXZlcnkuY2FsbChhLGIsdm9pZCAwKX07Xy5ORD1mdW5jdGlvbihhKXthPVsoYSYxNjcxMTY4MCk+Pj4xNiwoYSY2NTI4MCk+Pj44LGEmMjU1LChhJjQyNzgxOTAwODApPj4+MjRdO2lmKCFWYmEoYSxiPT5iPT09KGImMjU1KSkpdGhyb3cgRXJyb3IoIlJjYCIrYS5qb2luKCIsIikpO3JldHVybmByZ2JhKCR7YVswXX0sJHthWzFdfSwke2FbMl19LCR7KGFbM10vMjU1KS50b0ZpeGVkKDMpfSlgfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5rQT1mdW5jdGlvbih7dHlwZTphLHBheWxvYWQ6Yn0pe2E9e3R5cGU6YX07YiE9PXZvaWQgMCYmKGEucGF5bG9hZD1iKTtyZXR1cm4gYX07LyoKCiBDb3B5cmlnaHQgMjAxNS1wcmVzZW50IERhbiBBYnJhbW92CiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUCiovCl8ubEE9KCk9Pk1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZyg3KS5zcGxpdCgiIikuam9pbigiLiIpO18ubUE9YEBAcmVkdXgvSU5JVCR7Xy5sQSgpfWA7Xy5SYWE9YEBAcmVkdXgvUkVQTEFDRSR7Xy5sQSgpfWA7Xy5uQT10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmU3ltYm9sLm9ic2VydmFibGV8fCJAQG9ic2VydmFibGUiOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLm9BPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5rQSh7dHlwZToiUkVQTEFDRV9FTlRJVFkiLHBheWxvYWQ6e3hsOmMsZW50aXR5VHlwZTphLGtleTpifX0pfTtfLnBBPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5rQSh7dHlwZToiVVBEQVRFX0VOVElUWSIscGF5bG9hZDp7eGw6YyxlbnRpdHlUeXBlOmEsa2V5OmIsSXk6dm9pZCAwfX0pfTtfLnFBPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYVtiXT9hW2JdW2NdfHxudWxsOm51bGx9OygoKT0+e3ZhciBhPWQ9Pm5ldyBVaW50OEFycmF5KGQpLGI9ZD0+e3ZhciBlPW5ldyBVaW50OEFycmF5KGQubGVuZ3RoKTtmb3IobGV0IGY9MDtmPGQubGVuZ3RoO2YrKyllW2ZdPWRbZl07cmV0dXJuIGV9LGM9bmV3IFVpbnQ4QXJyYXkoWzFdKTtyZXR1cm4gYy5sZW5ndGg9PT0xJiZjWzBdPT09MT9hOmJ9KSgpO18uckE9QXJyYXkoMTAyNCk7Xy5zQT10eXBlb2YgVGV4dERlY29kZXIhPT0idW5kZWZpbmVkIj9uZXcgVGV4dERlY29kZXI6dm9pZCAwO18udEE9dHlwZW9mIFRleHRFbmNvZGVyIT09InVuZGVmaW5lZCI/bmV3IFRleHRFbmNvZGVyOnZvaWQgMDtfLnVBPXthbmltYXRpb25FbnRpdHk6MzAyLGFjY291bnRMaW5rU3RhdHVzRW50aXR5OjEyMixhc2tTdHVkaW9HZW5lcmF0ZWREYXRhRW50aXR5OjYzMCxib29sZWFuRW50aXR5OjMwNyxhc2tTdHVkaW9Db252ZXJzYXRpb25TdW1tYXJ5RW50aXR5OjYzNyxidXR0b25FbnRpdHk6MzU4LGNhcHRpb25UcmFjazoyMjUsY2hhbm5lbEhhbmRsZToyNzUsY2hpcEVudGl0eTo0OTgsY29tbWVyY2VBY3F1aXNpdGlvbkNsaWVudFBheWxvYWRFbnRpdHk6Mjc2LGNvbW1lcmNlQ2FydExpc3RFbnRpdHk6MjM2LGNvbW1lcmNlVG9rZW5CYWxhbmNlRW50aXR5OjUzMixjb21wb3NpdGVTb3VyY2VFbnRpdHk6NTk0LGNvbnRleHROb3RlRmVlZEVudGl0eVBheWxvYWQ6NDgzLGNvbnRleHROb3RlVXNlclJhdGluZ0VudGl0eVBheWxvYWQ6NTc2LGNvbnRpbnVhdGlvblRva2VuRW50aXR5OjQwNixkb3dubG9hZFF1YWxpdHlQaWNrZXJFbnRpdHk6MjAyLGRvd25sb2Fkc1BhZ2VSZWZyZXNoVG9rZW5FbnRpdHk6Mjk5LApkb3dubG9hZHNQYWdlVmlld0NvbmZpZ3VyYXRpb25FbnRpdHk6MjY0LGRvd25sb2FkU3RhdHVzRW50aXR5OjE0MSxkaXNtaXNzU3RhdGU6NTQwLHNmdkF1ZGlvSXRlbUN1cnJlbnRseVBsYXlpbmdFbnRpdHk6MTg2LGVtb2ppRm91bnRhaW5EYXRhRW50aXR5OjM5MyxlbW9qaUN1c3RvbWl6YXRpb25TZXRFbnRpdHk6NDk2LGZha2VDaGFubmVsOjIsZmFrZVBsYXlsaXN0OjI3OSxmYWtlUGxheWxpc3RFbnRyeUNvbGxlY3Rpb246MjgwLGZha2VWaWRlbzoxODIsZmFrZVZpZGVvRGVzY3JpcHRpb246Mjc4LGZlYXR1cmVkUHJvZHVjdHNFbnRpdHk6MzkyLHNhdmVkUHJvZHVjdHNTdGF0ZUVudGl0eTo1OTgsZmxvd1N0YXRlRW50aXR5OjI1MixpY29uQmFkZ2VFbnRpdHk6MjI5LGludGVyc3RpdGlhbEludGVyYWN0aW9uU3RhdGVFbnRpdHk6NDQzLGxpa2VCdXR0b25BbmltYXRpb25FbnRpdHk6NTY3LGxpdmVDaGF0UG9sbFN0YXRlRW50aXR5OjIxNyxsaXZlVmlld2VyTGVhZGVyYm9hcmRDaGF0RW50cnlQb2ludFN0YXRlRW50aXR5OjU2MywKbGl2ZVZpZXdlckxlYWRlcmJvYXJkUG9pbnRzRW50aXR5OjU2NCxsaXZlUmVhY3Rpb25zRGF0YUVudGl0eTo1MDMsbG9nb0VudGl0eToyNDUsbWFjcm9NYXJrZXJFbnRpdHk6MzI5LG1haW5Eb3dubG9hZHNMaWJyYXJ5RW50aXR5OjE1OCxtYWluRG93bmxvYWRzTGlzdEVudGl0eToxNjQsbWFpblBsYXlsaXN0RG93bmxvYWRTdGF0ZUVudGl0eTozNzMsbWFpblBsYXlsaXN0RW50aXR5OjMwNixtYWluUGxheWxpc3RWaWRlb0VudGl0eTozNjgsbWFpblZpZGVvRG93bmxvYWRTdGF0ZUVudGl0eToyNjIsbWFpblZpZGVvRW50aXR5OjI2MSxtYXJrZXJzRW5nYWdlbWVudFBhbmVsU3luY0VudGl0eToxOTYsbWFya2Vyc1Zpc2liaWxpdHlPdmVycmlkZUVudGl0eTozMTIsbXVzaWNBbGJ1bVJlbGVhc2VEZXRhaWw6MTgsbXVzaWNBbGJ1bVJlbGVhc2VEb3dubG9hZE1ldGFkYXRhRW50aXR5OjI1OSxtdXNpY0FsYnVtUmVsZWFzZToxNyxtdXNpY0FsYnVtUmVsZWFzZVVzZXJEZXRhaWw6MTksbXVzaWNBcnRpc3REZXRhaWw6MjEsCm11c2ljQXJ0aXN0OjIwLG11c2ljQXJ0aXN0VXNlckRldGFpbDoyMixtdXNpY0Rvd25sb2Fkc0xpYnJhcnlFbnRpdHk6MjU3LG11c2ljTGlicmFyeUVkaXQ6MTIxLG11c2ljTGlicmFyeVN0YXR1c0VudGl0eTozMTgsbXVzaWNQbGF5bGlzdDoyNCxtdXNpY1BsYXlsaXN0RG93bmxvYWRNZXRhZGF0YUVudGl0eToyNDgsbXVzaWNTaGFyZToxMDAsbXVzaWNUcmFja0RldGFpbDoyOSxtdXNpY1RyYWNrRG93bmxvYWRNZXRhZGF0YUVudGl0eToyMzQsbXVzaWNUcmFjazoyOCxtdXNpY1RyYWNrVXNlckRldGFpbDozMCxvZmZsaW5lT3JjaGVzdHJhdGlvbkFjdGlvbldyYXBwZXJFbnRpdHk6MTY5LG9mZmxpbmVWaWRlb1BvbGljeToxMzAsb2ZmbGluZVZpZGVvU3RyZWFtczoxOTgsb2ZmbGluZWFiaWxpdHlFbnRpdHk6MjQ2LG9yY2hlc3RyYXRpb25XZWJTYW1wbGluZ0VudGl0eToyNDIscGFnZUhlYWRlckVudGl0eTo0OTUscGFydHlHYW1lUGFuZWxFbnRpdHk6NjE4LHNsaWRlckdhbWVQYW5lbEVudGl0eTo2MzMsCnBkcFN0YXRlRW50aXR5OjUyNCxwaW5uZWRQcm9kdWN0RW50aXR5OjI3MyxwbGF5YmFja0RhdGE6MTE5LHBsYXllclN0YXRlRW50aXR5OjMyMyxwbGF5bGlzdFRodW1ibmFpbEVkaXRzRW50aXR5OjUzOSxxdWFudGl0eUluY3JlbWVudGVyRW50aXR5OjM1NixyZWZyZXNoOjE0OCxzYXZlVG9QbGF5bGlzdExpc3RFbnRpdHk6MjMxLHNlbGVjdGVkQ2hpcEluZGV4RW50aXR5UGF5bG9hZDo0Nzksc2VsZWN0aW9uVmFsdWVMaXN0RW50aXR5OjYzNCxzZXR0aW5nRW50aXR5OjI5NyxzdHJpbmdFbnRpdHk6MzgyLHN1Z2dlc3RlZEZlZWRiYWNrQ2hpcFN0YXRlRW50aXR5OjQ4NSx0cmFuc2ZlcjoxMjAsdHJlbmRpbmdPZmZlckVudGl0eTo0NjksdW5wbHVnZ2VkU2lkZXNoZWV0SGVhZGVyU3RhdGVFbnRpdHk6NjM1LHZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5OjQ2MSx2aWRlb092ZXJ2aWV3QXN5bmNEYXRhRW50aXR5OjU0NSx2aWRlb1BsYXliYWNrUG9zaXRpb25FbnRpdHk6NzYsdm90aW5nRW50aXR5OjU2MSwKeXRNYWluQ2hhbm5lbEVudGl0eToxNTIseW91Y2hhdFBlbmRpbmdSZXNwb25zZUVudGl0eTo1NTMseXRNYWluRG93bmxvYWRlZFZpZGVvRW50aXR5OjE1NSx5dE1haW5WaWRlb0VudGl0eToxNTF9O18udkE9e307Zm9yKGxldCBbYSxiXW9mIE9iamVjdC5lbnRyaWVzKF8udUEpKXtsZXQgYz1hLGQ9YjtkJiYoXy52QVtkXT1jKX07KCgpPT57dmFyIGE9ZD0+bmV3IFVpbnQ4QXJyYXkoZCksYj1kPT57dmFyIGU9bmV3IFVpbnQ4QXJyYXkoZC5sZW5ndGgpO2ZvcihsZXQgZj0wO2Y8ZC5sZW5ndGg7ZisrKWVbZl09ZFtmXTtyZXR1cm4gZX0sYz1uZXcgVWludDhBcnJheShbMV0pO3JldHVybiBjLmxlbmd0aD09PTEmJmNbMF09PT0xP2E6Yn0pKCk7Xy5TYWE9Xy4kbCgieXQtaWRiLXByZWYtc3RvcmFnZSIse3NlOntwcmVmczp7UGQ6MX19LHNoYXJlZDohMSx1cGdyYWRlKGEsYil7YigxKSYmXy5vbChfLmtsKGEsInByZWZzIix7a2V5UGF0aDoia2V5In0pLCJieUV4cGlyYXRpb24iLCJleHBpcmF0aW9uVGltZXN0YW1wTXMiKX0sdmVyc2lvbjoxfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBqRTtfLmlFPWZ1bmN0aW9uKGEsYil7YT1bKGEmMTY3MTE2ODApPj4+MTYsKGEmNjUyODApPj4+OCxhJjI1NV07cmV0dXJuYHJnYmEoJHthWzBdfSwgJHthWzFdfSwgJHthWzJdfSwgJHtifSlgfTtfLmtFPWZ1bmN0aW9uKGEpe2lmKGEuc291cmNlcylmb3IobGV0IGIgb2YgYS5zb3VyY2VzKWlmKGIuY2xpZW50UmVzb3VyY2U/LmltYWdlTmFtZXx8Yi5jdXN0b21JbWFnZVNvdXJjZSYmXy5CKGIuY3VzdG9tSW1hZ2VTb3VyY2UsakUpPy5jbGllbnRSZXNvdXJjZT8uaWNvbilyZXR1cm4gYn07Cl8ubEU9ZnVuY3Rpb24oYSl7aWYoYT8uY2xpZW50UmVzb3VyY2U/LmltYWdlTmFtZSl7bGV0IGI9YS5jbGllbnRSZXNvdXJjZT8uaW1hZ2VOYW1lO2E6e3N3aXRjaChiKXtjYXNlICJ5dF9wcmVtaXVtX3dvcmRtYXJrX2hlYWRlcl9saWdodCI6Y2FzZSAieXRfcHJlbWl1bV93b3JkbWFya19oZWFkZXJfZGFyayI6YT0iWU9VVFVCRV9QUkVNSVVNX0xPR09fU0hPUlQiO2JyZWFrIGE7Y2FzZSAieXRfd29yZG1hcmtfaGVhZGVyX2xpZ2h0IjpjYXNlICJ5dF93b3JkbWFya19oZWFkZXJfZGFyayI6YT0iTE9HT19XSVRIX1RFWFQiO2JyZWFrIGF9YT12b2lkIDB9cmV0dXJuIGF8fGdjYS5nZXQoYil8fGJ9aWYoYT8uY3VzdG9tSW1hZ2VTb3VyY2UmJihhPV8uQihhLmN1c3RvbUltYWdlU291cmNlLGpFKT8uY2xpZW50UmVzb3VyY2U/Lmljb24pKXJldHVybiBhfTtqRT1uZXcgXy5JKCJ5b3V0dWJlSWNvblNvdXJjZSIpO18ubUU9d2luZG93LmRldmljZVBpeGVsUmF0aW98fDE7dmFyIGdjYT1uZXcgTWFwKFtbInl0X291dGxpbmVfYmFnX2JsYWNrXzI0IiwiYmFnIl1dKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5LRD1mdW5jdGlvbihhKXtpZihhPWEubWF0Y2goVWJhKSlyZXR1cm57aWNvbk5hbWU6YVsyXSxoeDphWzFdLnRvVXBwZXJDYXNlKCk9PT0iRklMTCIsaWNvblNpemU6TnVtYmVyKGFbM10pfX07Xy5MRD1uZXcgXy5WcygiSUNPTl9XSVpfQ09NUE9ORU5UX1RPS0VOIik7dmFyIFViYTtVYmE9L15ZVElDT05fKGZpbGx8b3V0bGluZSlfKFthLXpBLVowLTlfXSspX3MoWzAtOV0rKSQvaTsKXy5NRD1fLkwoKHtpY29uOmEsYWN0aXZlOmIsY2xhc3NOYW1lOmMsc3R5bGU6ZCx5cDplLGhjOmYscm9sZTpoLEdlOmssSGM6bCxhcmlhSGlkZGVuOm0sYXJpYUV4cGFuZGVkOm4sYXJpYUxhYmVsOnAsdGFiaW5kZXg6cixpZDp0LHNpemU6dixhZzp6LFpwOkUsZXI6QSx0aXRsZTpGfSk9Pnt2YXIgQz1fLk4oKCk9Pnt2YXIgUj1hPy4oKTtpZihSKXJldHVybiBfLktEKFIpfSx2b2lkIDAsIk0waTV2ZiIpLEc9KCk9PkMoKT8uaWNvbk5hbWU/P2E/LigpLEQ9KCk9PnY/LigpPz9DKCk/Lmljb25TaXplLEg9KCk9PmI/LigpPz9DKCk/Lmh4O3JldHVybiBfLksoXy5PLHtBOmEsdGhlbjooKT0+e3ZhciBSPV8ueSgpLnJlc29sdmUoXy5MRCk7cmV0dXJuIF8uSyhSLHtpY29uOkcseXA6ZSxoYzpmLEdlOmssSGM6bCxhcmlhRXhwYW5kZWQ6bix0YWJpbmRleDpyLGlkOnQsYWN0aXZlOkgsc2l6ZTpELHJvbGU6aCxjbGFzc05hbWU6YyxhcmlhSGlkZGVuOm0sYXJpYUxhYmVsOnAsc3R5bGU6KCk9Pgp7aWYoIUQoKSlyZXR1cm4gZD8uKCk7dmFyIE09YHdpZHRoOiAke0QoKX1weDsgaGVpZ2h0OiAke0QoKX1weDtgO3JldHVybiBkPy4oKT9gJHtNfSAke2QoKX1gOk19LHRpdGxlOkYsYWc6eixacDpFLGVyOkF9KX19KX0sImoiKTtfLk1ELmlkb21Db21wYXQ9e2NhbGxiYWNrczp7ZXI6ITB9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEtFLExFLG1jYSxuY2EsTkUscGNhLHFjYSxyY2EsdWNhLHdjYSx2Y2EsWEUseGNhLHljYSxBY2EsemNhO18uSkU9ZnVuY3Rpb24oYSl7YSY9MTY3NzcyMTU7dmFyIGI9WyhhJjE2NzExNjgwKT4+MTYsKGEmNjUyODApPj44LGEmMjU1XTthPWJbMF07dmFyIGM9YlsxXTtiPWJbMl07YT1OdW1iZXIoYSk7Yz1OdW1iZXIoYyk7Yj1OdW1iZXIoYik7aWYoYSE9KGEmMjU1KXx8YyE9KGMmMjU1KXx8YiE9KGImMjU1KSl0aHJvdyBFcnJvcigiUWNgIithKyJgIitjKyJgIitiKTtjPWE8PDE2fGM8PDh8YjtyZXR1cm4gYTwxNj8iIyIrKDE2Nzc3MjE2fGMpLnRvU3RyaW5nKDE2KS5zbGljZSgxKToiIyIrYy50b1N0cmluZygxNil9O0tFPWZ1bmN0aW9uKGEpe3JldHVybiBhLnNvdXJjZXMhPT12b2lkIDB8fGEucHJvY2Vzc29yIT09dm9pZCAwfTsKTEU9ZnVuY3Rpb24oYSl7dmFyIGI9YS50aHVtYm5haWxzO2lmKGIpe2E9e3NvdXJjZXM6W119O2ZvcihsZXQgYyBvZiBiKWI9e30sYi51cmw9Yy51cmwsYi53aWR0aD1jLndpZHRoLGIuaGVpZ2h0PWMuaGVpZ2h0LGEuc291cmNlcy5wdXNoKGIpO3JldHVybiBhfX07bWNhPWZ1bmN0aW9uKGEsYixjKXtjPWM/W2NdOltdO2Eub3BhY2l0eSYmYy5wdXNoKGBvcGFjaXR5OiAke2Eub3BhY2l0eX07YCk7YiYmYS5wbGFjZWhvbGRlckNvbG9yPyhhPV8uTkQoYS5wbGFjZWhvbGRlckNvbG9yKSxjLnB1c2goYGJhY2tncm91bmQtY29sb3I6ICR7YX07YCkpOmMucHVzaCgiYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7Iik7cmV0dXJuIGMuam9pbigiICIpfTsKbmNhPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9WyJ5dENvcmVJbWFnZUhvc3QiXTtiJiZmLnB1c2goYik7Y3x8Zi5wdXNoKCJ5dENvcmVJbWFnZUZpbGxQYXJlbnRIZWlnaHQiKTtkfHxmLnB1c2goInl0Q29yZUltYWdlRmlsbFBhcmVudFdpZHRoIik7c3dpdGNoKGEuY29udGVudE1vZGUpe2Nhc2UgIkNPTlRFTlRfTU9ERV9TQ0FMRV9BU1BFQ1RfRklUIjpmLnB1c2goInl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZUFzcGVjdEZpdCIpO2JyZWFrO2Nhc2UgIkNPTlRFTlRfTU9ERV9TQ0FMRV9BU1BFQ1RfRklMTCI6Zi5wdXNoKCJ5dENvcmVJbWFnZUNvbnRlbnRNb2RlU2NhbGVBc3BlY3RGaWxsIik7YnJlYWs7Y2FzZSAiQ09OVEVOVF9NT0RFX0NFTlRFUiI6Zi5wdXNoKCJ5dENvcmVJbWFnZUNvbnRlbnRNb2RlQ2VudGVyIik7YnJlYWs7ZGVmYXVsdDpmLnB1c2goInl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZVRvRmlsbCIpfWEuZmxpcEZvclJ0bExheW91dCYmZi5wdXNoKCJ5dENvcmVJbWFnZUZsaXBSdGwiKTsKc3dpdGNoKGUpe2Nhc2UgIlRPUF9TVEFSVCI6Zi5wdXNoKGRvY3VtZW50LmJvZHk/LmdldEF0dHJpYnV0ZSgiZGlyIik9PT0icnRsIj8ieXRDb3JlSW1hZ2VPYmplY3RQb3NpdGlvblRvcFJpZ2h0IjoieXRDb3JlSW1hZ2VPYmplY3RQb3NpdGlvblRvcExlZnQiKX1yZXR1cm4gZi5qb2luKCIgIil9O18uTUU9ZnVuY3Rpb24oKXtyZXR1cm4gd2luZG93Lm1hdGNoTWVkaWEmJndpbmRvdy5tYXRjaE1lZGlhKCIob3JpZW50YXRpb246IGxhbmRzY2FwZSkiKS5tYXRjaGVzfTtORT1mdW5jdGlvbihhKXt2YXIgYj17fTthPV8uQihhLnByb2Nlc3NvcixvY2EpO3ZhciBjPShjPWE/LmltYWdlVGludD8uY29sb3IpP18uTkQoYyk6dm9pZCAwO2MmJihiLmNvbG9yPWMpO2lmKGM9cGNhKGEpKWIubnk9YztpZihhPXFjYShhKSliLk56PWE7cmV0dXJuIGJ9OwpwY2E9ZnVuY3Rpb24oYSl7dmFyIGI9YT8ubGluZWFyR3JhZGllbnQ7aWYoYiYmYj8uY29sb3JzJiZiPy5jb2xvcnM/Lmxlbmd0aCE9PTApe3ZhciBjPWIuY29sb3JzLm1hcChlPT5fLk5EKGUpKTthPWIuYW5nbGUhPT12b2lkIDA/YCR7Yi5hbmdsZX1kZWcsIGA6IiI7dmFyIGQ9Yi5wb3NpdGlvbnM7aWYoIWR8fGQubGVuZ3RoIT09Yy5sZW5ndGgpcmV0dXJuYGxpbmVhci1ncmFkaWVudCgke2F9JHtjLmpvaW4oIiwgIil9KWA7Yj1jLm1hcCgoZSxmKT0+YCR7ZX0gJHtkW2ZdKjEwMH0lYCk7cmV0dXJuYGxpbmVhci1ncmFkaWVudCgke2F9JHtiLmpvaW4oIiwgIil9KWB9fTsKcWNhPWZ1bmN0aW9uKGEpe2lmKChhPWE/LnJhZGlhbEdyYWRpZW50KSYmYT8uY29sb3JzJiZhPy5jb2xvcnM/Lmxlbmd0aCE9PTApe3ZhciBiPWEuY29sb3JzLm1hcChrPT5fLk5EKGspKSxjPWEuY2VudGVyVW5pdD8/IkRJTUVOU0lPTl9VTklUX0ZSQUNUSU9OIixkPWM9PT0iRElNRU5TSU9OX1VOSVRfUE9JTlQiPyJweCI6IiUiLGU9Yz09PSJESU1FTlNJT05fVU5JVF9GUkFDVElPTiI/MTAwOjE7Yz1gJHsoYS5jZW50ZXJYPz8uNSkqZX0ke2R9YDtkPWAkeyhhLmNlbnRlclk/Py41KSplfSR7ZH1gO3ZhciBmPWEucmFkaXVzO2U9IiI7ZT1mIT09dm9pZCAwP2BjaXJjbGUgJHtmfXB4YDoiZWxsaXBzZSI7dmFyIGg9YS5wb3NpdGlvbnM7aWYoIWh8fGgubGVuZ3RoIT09Yi5sZW5ndGgpcmV0dXJuYHJhZGlhbC1ncmFkaWVudCgke2V9IGF0ICR7Y30gJHtkfSwgJHtiLmpvaW4oIiwgIil9KWA7YT1iLm1hcCgoayxsKT0+YCR7a30gJHtoW2xdKjEwMH0lYCk7cmV0dXJuYHJhZGlhbC1ncmFkaWVudCgke2V9IGF0ICR7Y30gJHtkfSwgJHthLmpvaW4oIiwgIil9KWB9fTsKXy5PRT1mdW5jdGlvbihhKXtfLmpmLkdhKCgpPT57dHJ5e2EoKX1jYXRjaChiKXtfLk90KGIpfX0sOCl9O3JjYT1mdW5jdGlvbihhKXt2YXIgYj0oMSthLm1hcmdpbikqKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHR8fHdpbmRvdy5pbm5lckhlaWdodCk7YS5qPWEuai5maWx0ZXIoYz0+e3ZhciBkPWMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7KGQ9Yj5kLnRvcCYmISFkLmhlaWdodCkmJmEuQihjKTtyZXR1cm4hZCYmYy5wYXJlbnROb2RlfSk7YS52PSExfTtfLlBFPWZ1bmN0aW9uKGEpe2lmKCJtYXRjaE1lZGlhImluIHdpbmRvdylyZXR1cm4gd2luZG93Lm1hdGNoTWVkaWEoYS5sYW5kc2NhcGUrIiwiK2EucG9ydHJhaXQpLm1hdGNoZXN9O18uVEU9ZnVuY3Rpb24oKXtpZihRRT09PXZvaWQgMCl7bGV0IGE9Xy5QRShzY2EpO1FFPWEhPT12b2lkIDA/YTpfLlJFPj05MzAmJlNFPj01NTB8fF8uUkU+PTU1MCYmU0U+PTkzMH1yZXR1cm4gUUV9Owp1Y2E9ZnVuY3Rpb24oYSxiKXthLkptPWI7dGNhLm9ic2VydmUoYSl9Owp3Y2E9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKGspe3ZhciBsPU1hdGgucm91bmQoKDAsXy5lbCkoKS1kKTtVRT1NYXRoLm1heCgwLFVFLTEpO2w9e2R1cmF0aW9uTG9hZGluZ01zOmwsd2lkdGhQeDphLm5hdHVyYWxXaWR0aCxoZWlnaHRQeDphLm5hdHVyYWxIZWlnaHQsdmlld1dpZHRoUHg6YS5jbGllbnRXaWR0aCx2aWV3SGVpZ2h0UHg6YS5jbGllbnRIZWlnaHQsZmluaXNoZWRMb2FkaW5nOiEwLGlzTG9hZEVycm9yOmssbG9hZE51bWJlcjplLGNvbmN1cnJlbnRMb2FkczpVRX07YiYmYi5pbWFnZUNsYXNzaWZpY2F0aW9uVHlwZSE9bnVsbCYmKGwuaW1hZ2VDbGFzc2lmaWNhdGlvblR5cGU9Yi5pbWFnZUNsYXNzaWZpY2F0aW9uVHlwZSk7aWYoIWspdHJ5e2xldCBtPXBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUoYS5zcmMpO2lmKG0mJm0ubGVuZ3RoPjApe2xldCBuPW1bbS5sZW5ndGgtMV07bi50cmFuc2ZlclNpemUmJihsLmRvd25sb2FkZWRCeXRlcz1uLnRyYW5zZmVyU2l6ZSl9fWNhdGNoKG0pe31fLkVwKCJ0aHVtYm5haWxMb2FkZWQiLApsKTtpZihrPVZFLmdldChhKSlhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLGsub25Mb2FkKSxhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVycm9yIixrLm9uRXJyb3IpO1ZFLmRlbGV0ZShhKX1pZihfLngoIndlYl9pbWFnZV9sb2FkX3RlbGVtZXRyeSIpKXt2Y2EoYSk7VUUrKztXRSsrO3ZhciBkPSgwLF8uZWwpKCksZT1XRSxmPSgpPT57YyghMSl9LGg9KCk9PntjKCEwKX07YS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmKTthLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixoKTtWRS5zZXQoYSx7b25Mb2FkOmYsb25FcnJvcjpofSl9fTt2Y2E9ZnVuY3Rpb24oYSl7dmFyIGI9VkUuZ2V0KGEpO2ImJihhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLGIub25Mb2FkKSxhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVycm9yIixiLm9uRXJyb3IpLFVFPU1hdGgubWF4KDAsVUUtMSksVkUuZGVsZXRlKGEpKX07ClhFPWZ1bmN0aW9uKGEsYixjKXtiJiZfLlR0KGEsYik7YyYmYS5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW1hZ2UtdW5sb2FkZWQiLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfTt4Y2E9ZnVuY3Rpb24oYSxiLGMsZCxlPSEwKXtmdW5jdGlvbiBmKCl7dmFyIGg9YyhiLGEpO2gmJmEuZ2V0QXR0cmlidXRlKCJzcmMiKSE9PWgmJihoIT09YS5zcmMmJihhLnNyYz1oKSx3Y2EoYSxkKSxkJiZYRShhLGQudGosZC5CbSkpfWEucmVtb3ZlQXR0cmlidXRlKCJzcmMiKTtkJiZYRShhLGQudGosZC5CbSk7YiYmKGU/dWNhKGEsZik6ZigpKX07eWNhPWZ1bmN0aW9uKGEsYixjKXtpZighYilyZXR1cm4hMTtiPWMoYixhKTtjPWEuZ2V0QXR0cmlidXRlKCJzcmMiKTtyZXR1cm4gYiYmYj09PWMmJmEuY29tcGxldGV9OwpBY2E9ZnVuY3Rpb24oYSxiLGM9ITEpe3ZhciBkPUtFKGEpP3suLi5hfTpMRShhKTtpZihkKXtkLmNvbnRlbnRNb2RlPWQuY29udGVudE1vZGU/P2IuY29udGVudE1vZGU7dmFyIGU9Yi5vbkxvYWQ7Yi5vbkxvYWQ9bD0+e3ZhciBtPWwudGFyZ2V0O2MmJm0ubmF0dXJhbFdpZHRoPT09MTIwfHxfLlN0KG0sInl0Q29yZUltYWdlTG9hZGVkIik7Yi5zZyYmbS5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW1hZ2UtbG9hZGVkIix7YnViYmxlczohMCxjb21wb3NlZDohMH0pKTtlPy4obCl9O2IuQWImJmIuVGEmJihiLndpZHRoPWIuQWIpO2IuZGMmJmIuWWEmJihiLmhlaWdodD1iLmRjKTt2YXIgZj1fLmtFKGQpLGg9ZiYmXy5sRShmKSxrPU5FKGQpO2lmKGgpe2E9Zi5jbGllbnRSZXNvdXJjZT8uaW1hZ2VDb2xvcj9fLk5EKGYuY2xpZW50UmVzb3VyY2UuaW1hZ2VDb2xvcik6dm9pZCAwO2lmKGs9YXx8ay5jb2xvciliLnN0eWxlPWIuc3R5bGU/Yi5zdHlsZS5lbmRzV2l0aCgiOyIpP2Iuc3R5bGUrCmAgY29sb3I6ICR7a307YDpiLnN0eWxlK2A7IGNvbG9yOiAke2t9O2A6YGNvbG9yOiAke2t9O2A7cmV0dXJue3R5cGU6Imljb24iLGljb25OYW1lOmgsY29uZmlnOnsuLi5iLC4uLihiLmFsdD97fTp7YXJpYUhpZGRlbjoidHJ1ZSJ9KSxhcmlhTGFiZWw6Yi5hbHQscm9sZToiaW1nIn19fUtFKGEpfHwoYi5hbHQ9YS5hY2Nlc3NpYmlsaXR5JiZhLmFjY2Vzc2liaWxpdHkuYWNjZXNzaWJpbGl0eURhdGEmJmEuYWNjZXNzaWJpbGl0eS5hY2Nlc3NpYmlsaXR5RGF0YS5sYWJlbHx8Yi5hbHQsYi5zdHlsZT1tY2EoYSxiLldyLGIuc3R5bGUpLGIuaXNQcmVsb2FkZWQ9ISFfLkIoYSx6Y2EpPy5pc1ByZWxvYWRlZCk7Yi5jbGFzc05hbWU9bmNhKGQsYi5jbGFzc05hbWUsYi5ZYSxiLlRhLGIub2JqZWN0UG9zaXRpb24pO2IudGo9Inl0Q29yZUltYWdlTG9hZGVkIjtyZXR1cm57dHlwZToiaW1hZ2UiLGltYWdlOmQsY29uZmlnOmJ9fX07emNhPW5ldyBfLkkoIndlYlRodW1ibmFpbERldGFpbHNFeHRlbnNpb25EYXRhIik7dmFyIG9jYT1uZXcgXy5JKCJib3JkZXJJbWFnZVByb2Nlc3NvciIpO3ZhciBDY2E7W18uQmNhLENjYV09Xy5KKF8uTUUoKSx2b2lkIDAsIk8zWDJ3ZCIpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLCgpPT57Q2NhKF8uTUUoKSl9KTtfLmZGPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5tYXJnaW49YTt0aGlzLkI9Yjt0aGlzLmo9W107dGhpcy52PSExO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLCgpPT57dGhpcy5vKCl9KTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLCgpPT57dGhpcy5vKCl9KTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidXBkYXRldWkiLCgpPT57dGhpcy5vKCl9KTt2YXIgYz1uZXcgXy5XdCgoMCxfLkNhKSh0aGlzLm8sdGhpcyksMTAwKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIiwoKT0+e2MudigpfSwhMCk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsKDAsXy5DYSkodGhpcy5vLHRoaXMpKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGUtbmF2aWdhdGVzdGFydCIsKCk9Pnt0aGlzLmo9W119KTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGUtbmF2aWdhdGVlbmQiLCgwLF8uQ2EpKHRoaXMubyx0aGlzKSl9b2JzZXJ2ZShhKXt0aGlzLmouaW5jbHVkZXMoYSl8fAp0aGlzLmoucHVzaChhKX11bm9ic2VydmUoYSl7dGhpcy5qPXRoaXMuai5maWx0ZXIoYj0+YiE9PWEpfW8oKXt0aGlzLnZ8fChfLk9FKCgpPT57cmNhKHRoaXMpfSksdGhpcy52PSEwKX1kaXNjb25uZWN0KCl7dGhpcy5qPVtdfX07dmFyIHNjYSxRRSxTRTtzY2E9e2xhbmRzY2FwZToiKG1pbi13aWR0aDogOTMxcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkiLHBvcnRyYWl0OiIobWluLXdpZHRoOiA1NTBweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIn07UUU9dm9pZCAwO18uZ0Y9dm9pZCAwO18uUkU9d2luZG93LmlubmVyV2lkdGg7U0U9d2luZG93LmlubmVySGVpZ2h0O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLCgpPT57Xy5nRj1RRT12b2lkIDB9KTt2YXIgdGNhPSJJbnRlcnNlY3Rpb25PYnNlcnZlciJpbiB3aW5kb3c/bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKChhLGIpPT57YS5maWx0ZXIoYz0+Yy5pbnRlcnNlY3Rpb25SZWN0LmhlaWdodD4wKS5mb3JFYWNoKCh7dGFyZ2V0OmN9KT0+e2MuSm0/LigpO2IudW5vYnNlcnZlKGMpfSl9LHtyb290TWFyZ2luOiIxMCUiLHRocmVzaG9sZDouMDF9KTpfLlRFKCk/e29ic2VydmUoYSl7Xy5qZi5HYSgoKT0+e3RyeXthLkptPy4oKX1jYXRjaChiKXtfLk90KGIpfX0sOCl9LHVub2JzZXJ2ZSgpe319Om5ldyBfLmZGKC4xLGE9PntfLmpmLkdhKCgpPT57dHJ5e2EuSm0/LigpfWNhdGNoKGIpe18uT3QoYil9fSw4KX0pO3ZhciBWRT1uZXcgV2Vha01hcCxXRT0wLFVFPTA7Xy5oRj1fLkwoYT0+e3ZhciBiPSExLGM9Xy51RSgiaW1nIixkPT57Xy5ZdSgoKT0+e2I9ITA7ZC5vbmxvYWQ9bnVsbH0pfSk7Xy5uRSgoKT0+e3ZhciBkPWEuZGF0YT8uKCksZT1hLkdsPy4oKS5TZyxmPWEuY29uZmlnKCksaD1jLnZhbHVlO2lmKGgpe3ZhciBrPShsLG0pPT57aWYoIWIpcmV0dXJuIGU/ZShsLG0pOmx9O18ueCgid2ViX2ltYWdlX2RvbnRfcmVsb2FkX3NhbWVfc3JjIikmJnljYShoLGQsayk/Xy54KCJ3ZWJfaW1hZ2VfZG9udF9yZWxvYWRfc2FtZV9zcmNfc2ltdWxhdGVfbG9hZCIpJiZoLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJsb2FkIix7YnViYmxlczohMSxjYW5jZWxhYmxlOiExLGRldGFpbDp7bWVzc2FnZToiU2ltdWxhdGluZyBsb2FkIGV2ZW50IGZvciBhbHJlYWR5IGxvYWRlZCBpbWFnZSJ9fSkpOnhjYShoLGR8fG51bGwsayxmLGEubGF6eT8uKCkpfX0sIlJmRWdCYyIpO3JldHVybiBfLksoImltZyIse2VsOmMsY2xhc3M6KCk9PmEuY29uZmlnKCkuY2xhc3NOYW1lLAphbHQ6KCk9PmEuY29uZmlnKCkuYWx0LCJhcmlhLWhpZGRlbiI6KCk9PmEuY29uZmlnKCkuYXJpYUhpZGRlbiwiZGF0YS1kaXNhYmxlZCI6KCk9PmEuY29uZmlnKCkuaGMsc3R5bGU6KCk9PmEuY29uZmlnKCkuc3R5bGUsd2lkdGg6KCk9PmEuY29uZmlnKCkud2lkdGgsaGVpZ2h0OigpPT5hLmNvbmZpZygpLmhlaWdodCxkcmFnZ2FibGU6KCk9PmEuY29uZmlnKCkuZHJhZ2dhYmxlLCJvbjplcnJvciI6ZD0+YS5jb25maWcoKS5vbkVycm9yPy4oZCksIm9uOmxvYWQiOmQ9PmEuY29uZmlnKCkub25Mb2FkPy4oZCl9KX0sImwiKTtfLmhGLmlkb21Db21wYXQ9ITA7dmFyIGlGO18uakY9Xy5MKGE9Pnt2YXIgW2IsY109Xy5KKCExLHZvaWQgMCwiVEZhRUtkIiksZD0oKT0+e3ZhciBmPWEuZGF0YSgpO3JldHVybiBLRShmKT97Li4uZn06TEUoZik/P3t9fSxlPSgpPT4hZCgpLnNvdXJjZXM/Lmxlbmd0aHx8YigpO3JldHVybiBfLksoXy5PLHtBOigpPT57aWYoIV8ueCgid2ViX2xpbmVhcl9ncmFkaWVudF9raWxsc3dpdGNoIikpcmV0dXJuIE5FKGQoKSkubnl8fE5FKGQoKSkuTnp9LHRoZW46Zj0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0Q29yZUltYWdlSG9zdCIsInl0Q29yZUltYWdlR3JhZGllbnRDb250YWluZXIiLHt5dENvcmVJbWFnZUxvYWRlZDplfSl9LF8uSygiZGl2Iix7Y2xhc3M6Inl0Q29yZUltYWdlR3JhZGllbnQiLCJhcmlhLWhpZGRlbiI6InRydWUiLHN0eWxlOl8uSUUoe2JhY2tncm91bmQ6Zn0pfSksXy5LKGlGLHsuLi5hLG9uTG9hZDpoPT57YyghMCk7YS5vbkxvYWQ/LihoKX19KSksVzooKT0+Xy5LKGlGLHsuLi5hfSl9KX0sIm0iKTsKaUY9Xy5MKGE9Pnt2YXIgYj0oKT0+QWNhKGEuZGF0YSgpLHtjb250ZW50TW9kZTphLmNvbnRlbnRNb2RlPy4oKSx0ajphLnRqPy4oKSxpc1ByZWxvYWRlZDphLmlzUHJlbG9hZGVkPy4oKSxzZzphLnNnPy4oKSxCbTphLkJtPy4oKSx5cjphLnlyPy4oKSxZYTphLllhPy4oKSxUYTphLlRhPy4oKSxvYmplY3RQb3NpdGlvbjphLm9iamVjdFBvc2l0aW9uPy4oKSxBYjphLkFiPy4oKSxkYzphLmRjPy4oKSxXcjphLldyPy4oKSxOZzphLk5nPy4oKSxpc1RvZ2dsZWQ6YS5pc1RvZ2dsZWQ/LigpLGFsdDphLmFsdD8uKCksY2xhc3NOYW1lOmEuY2xhc3NOYW1lPy4oKSxvbkVycm9yOmEub25FcnJvcixvbkxvYWQ6YS5vbkxvYWQsc3R5bGU6YS5zdHlsZT8uKCksY29sb3I6YS5jb2xvcj8uKCksd2lkdGg6YS53aWR0aD8uKCksaGVpZ2h0OmEuaGVpZ2h0Py4oKSxhcmlhSGlkZGVuOmEuYXJpYUhpZGRlbj8uKCksZHJhZ2dhYmxlOmEuZHJhZ2dhYmxlPy4oKSxoYzphLmhjPy4oKSxzaXplOmEuc2l6ZT8uKCksCmltYWdlQ2xhc3NpZmljYXRpb25UeXBlOmEuaW1hZ2VDbGFzc2lmaWNhdGlvblR5cGU/LigpfSxhLlV3Py4oKSk7cmV0dXJuIF8uSyhfLkVFLG51bGwsXy5LKF8uQ0Use3doZW46KCk9PmIoKT8udHlwZT09PSJpbWFnZSJ9LCgpPT5fLksoXy5oRix7ZGF0YTooKT0+YigpLmltYWdlLEdsOntTZzooYyxkKT0+e3ZhciBlPWIoKS5pbWFnZS5zb3VyY2VzO3ZhciBmPWIoKS5jb25maWcuaXNQcmVsb2FkZWQsaD1iKCkuY29uZmlnLk5nLGs9YigpLmNvbmZpZy5BYixsPWIoKS5jb25maWcuZGMsbT1iKCkuY29uZmlnLnlyO2lmKCFlfHxlLmxlbmd0aD09PTB8fGVbMF0uY2xpZW50UmVzb3VyY2UpZT1udWxsO2Vsc2UgaWYoZiYmZVswXS51cmwpZT1lWzBdLnVybDtlbHNle2g9PT12b2lkIDAmJihoPSEwKTtkPWg/Xy5tRSooa3x8ZD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk/LndpZHRofHwwKTpfLm1FKihsfHxkPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKT8uaGVpZ2h0fHwwKTtiOmlmKGQpe2lmKG0pZm9yKGxldCBuIG9mIGUpaWYoZj0Kbi51cmw/LmluZGV4T2YobSksZiE9PXZvaWQgMCYmZj49MCl7ZT1uO2JyZWFrIGJ9Zm9yKGxldCBuIG9mIGUpaWYobi53aWR0aCYmbi5oZWlnaHQmJihoJiZuLndpZHRoPj1kfHwhaCYmbi5oZWlnaHQ+PWQpKXtlPW47YnJlYWsgYn1mb3IobT1lLmxlbmd0aC0xO20+PTA7bS0tKWlmKGgmJmVbbV0ud2lkdGh8fCFoJiZlW21dLmhlaWdodCl7ZT1lW21dO2JyZWFrIGJ9ZT1lWzBdfWVsc2UgZT1lLmxlbmd0aD49MT9lW2UubGVuZ3RoLTFdOm51bGw7ZT1lPy51cmw/ZS51cmw6ZT8uaW1hZ2VEYXRhP2UuaW1hZ2VEYXRhOm51bGx9cmV0dXJuIGV8fCIifX0sY29uZmlnOigpPT57dmFyIGM9YigpLmNvbmZpZztmb3IobGV0IGQgaW4gYyljW2RdPT09dm9pZCAwJiZkZWxldGUgY1tkXTtyZXR1cm4gY30sbGF6eTphLlRifSkpLF8uSyhfLkNFLHt3aGVuOigpPT5iKCk/LnR5cGU9PT0iaWNvbiJ9LCgpPT5fLksoXy5NRCx7aWNvbjooKT0+YigpLmljb25OYW1lLHJvbGU6KCk9PmIoKS5jb25maWcucm9sZSwKY2xhc3NOYW1lOigpPT5iKCkuY29uZmlnLmNsYXNzTmFtZSxzdHlsZTooKT0+YigpLmNvbmZpZy5zdHlsZSxhcmlhTGFiZWw6KCk9PmIoKS5jb25maWcuYXJpYUxhYmVsLGFyaWFIaWRkZW46KCk9PmIoKS5jb25maWcuYXJpYUhpZGRlbixoYzooKT0+YigpLmNvbmZpZy5oYyxhY3RpdmU6KCk9PmIoKS5jb25maWcuaXNUb2dnbGVkLHNpemU6KCk9PmIoKS5jb25maWcuc2l6ZX0pKSl9LCJuIik7Xy5qRi5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e2NhbGxiYWNrOiEwLG9uRXJyb3I6ITAsb25Mb2FkOiEwfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uTko9bmV3IF8uSSgic2lnbmFsQWN0aW9uIik7Xy5PSj1jbGFzc3tjb25zdHJ1Y3RvcihhLGI9ITEsYz1udWxsKXt0aGlzLmFjdGlvbk5hbWU9YTt0aGlzLmo9Yjt0aGlzLmFyZ3M9Yzt0aGlzLnJldHVyblZhbHVlPVtdfX07Xy5QSj1uZXcgTWFwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmhFPW5ldyBfLkkoImxheW91dFByb3BlcnRpZXMiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5rRj1uZXcgXy5WcygiREFSS19USEVNRV9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmxGPW5ldyBfLlZzKCJBUFBfRElSRUNUSU9OX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8udUY9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iPy5pbml0aWFsO3JldHVybiBfLk4oKCk9PntfLkJ2KCEwKTtyZXR1cm4gYz1hKGMpfSx7ZXF1YWxzOmI/LmlzRXF1YWx9LCJyU2xLc2MiKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBFY2EsRmNhLHZGLEdjYSx5RixCRixDRixKY2EsTGNhLERGLEVGLE5jYSxIRixPY2EsUWNhLElGLFJjYSxKRixTY2EsS0YsTEYsVGNhLE1GLFVjYSxORixWY2EsV2NhLEljYSxIY2E7CkVjYT1mdW5jdGlvbihhKXt2YXIgYj17c3RhdGU6Ik5PTkUifSxjPXtSaDpkPT57c3dpdGNoKGQuQ2IudG9rZW4pe2Nhc2UgXy5QYmEuQ2IudG9rZW46dmFyIGU9YjticmVhaztjYXNlIF8uT2JhLkNiLnRva2VuOmU9YS5XSDticmVhaztjYXNlIF8uTEMuQ2IudG9rZW46ZT1hLnJvb3RFbGVtZW50O2JyZWFrO2Nhc2UgXy5MYmEuQ2IudG9rZW46ZT1hLllKO2JyZWFrO2Nhc2UgXy5NQi5DYi50b2tlbjplPWEuRm87YnJlYWs7Y2FzZSBfLk1iYS5DYi50b2tlbjplPWEucmVuZGVyZXJEYXRhO2JyZWFrO2Nhc2UgXy5OYmEuQ2IudG9rZW46ZT1hLm9KO2JyZWFrO2Nhc2UgXy5OQi5DYi50b2tlbjplPWEucnZ9aWYoZSlkPWU7ZWxzZSBhOntmb3IoZT1jLnBhcmVudDtlOyl7dmFyIGY9ZTtpZihmLlJoKXtkPWYuUmgoZCk7YnJlYWsgYX1lPWUucGFyZW50fWU9ZC5DYi50b2tlbjtmPV8uV0MuZ2V0KGUpO2YhPT12b2lkIDA/ZD1mOihmPWQuQ2IuTXosZC5DYi5LcD8oZD1kLkNiLktwKCksZSYmZj09PQoicm9vdCImJl8uV0Muc2V0KGUsZCkpOmQ9Xy5hdSl9cmV0dXJuIGR9fTtfLkJ1KGMpO3JldHVybiBjfTtGY2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT09PWJ9O3ZGPWZ1bmN0aW9uKGEsYil7aWYoYT09PWIpYT0hMDtlbHNlIGlmKEFycmF5LmlzQXJyYXkoYSkmJkFycmF5LmlzQXJyYXkoYikpYTppZihfLnlhKGEpJiZfLnlhKGIpJiZhLmxlbmd0aD09Yi5sZW5ndGgpe3ZhciBjPWEubGVuZ3RoLGQ9dkZ8fEZjYTtmb3IobGV0IGU9MDtlPGM7ZSsrKWlmKCFkKGFbZV0sYltlXSkpe2E9ITE7YnJlYWsgYX1hPSEwfWVsc2UgYT0hMTtlbHNlIGlmKF8uQWEoYSkmJl8uQWEoYikpYTppZihfLkZ4KGEpLmxlbmd0aCE9Xy5GeChiKS5sZW5ndGgpYT0hMTtlbHNle2ZvcihjIGluIGEpaWYoIXZGKGFbY10sYltjXSkpe2E9ITE7YnJlYWsgYX1hPSEwfWVsc2UgYT0hMTtyZXR1cm4gYX07Xy53Rj1mdW5jdGlvbihhLGIsYyl7Yz09PXZvaWQgMD9kZWxldGUgYVtiLm5hbWVdOmFbYi5uYW1lXT1jfTsKR2NhPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPSExO2FbXy5xRl0/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIkhiIiksMixhLnRhZ05hbWUpO30pOl8uWnQmJmQhPT1fLlhDP1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9Pnt0aHJvdyBfLlV1KEVycm9yKCJFYiIpLDIsYS50YWdOYW1lKTt9KTooYS50ZXh0Q29udGVudCE9PSIiJiZhLnRleHRDb250ZW50IT09bnVsbHx8YS5jaGlsZEVsZW1lbnRDb3VudD4wKSYmUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIkZiIiksMixhLnRhZ05hbWUpO30pO3ZhciBmPV8uUnUoKCk9Pnt2YXIgaD1fLmt1KF8uenYpLGs9KCk9Pnt2YXIgbD0oXy5PQi5zdj8/Xy52ZChhKSkuX193aXpkaXNwYXRjaGVyO2w9RWNhKHtyb290RWxlbWVudDp7dmFsdWU6YX0sRm86Y3x8bD8ubnc/LigpLHJ2Omx9KTtsPV8uJHQobCk7dmFyIG09Xy5MQighMCk7Xy5ndisrO3RyeXtfLmJDKGIoKSxhKSwKXy5JQSghMSl9Y2F0Y2gobil7dGhyb3cgXy5JQSghMCksbjt9ZmluYWxseXtfLkxCKG0pLF8uJHQobCl9fTt0cnl7cmV0dXJuIGQ9PT1fLlhDP18udXYoaywhMSk6Xy5pdyhrKX1jYXRjaChsKXt0aHJvdyBfLlV1KGwsNCksbDt9ZmluYWxseXtfLmt1KGgpfX0pO2FbXy5xRl09ITA7cmV0dXJuKCk9PntlP1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9Pnt0aHJvdyBfLlV1KEVycm9yKCJHYiIpLDIsYS50YWdOYW1lKTt9KTooYS50ZXh0Q29udGVudD0iIixmKCksZT0hMCxhW18ucUZdPSExKX19O18ueEY9ZnVuY3Rpb24oYSxiLGMpe2M/PyhjPXt9KTt2YXIgZD1jLkZvLGU9ISFfLkt1LkpxO2I9R2NhKGEsYixkLGMuSWspO2UmJl8uUEIoYSxkKTtfLlZCLmxvZyhhKTtyZXR1cm4gYn07Cl8uQUY9ZnVuY3Rpb24oYSl7dmFyIGI9e2FuZHJvaWRJbmNsdWRlRm9udFBhZGRpbmc6ITF9LGM9MCxkPVtdLGU9W10sZj1bXTtpZihhLnNpbXBsZVRleHQpcmV0dXJuIGIuY29udGVudD1hLnNpbXBsZVRleHQsYjtpZihhLnJ1bnM9PT12b2lkIDApcmV0dXJuIGIuY29udGVudD0iIixiO2ZvcihsZXQgbSBvZiBhLnJ1bnMpe3ZhciBoPW0udGV4dDthPWg/Lmxlbmd0aDtpZihoJiZhKXtkLnB1c2goaCk7aWYobS5ib2xkfHxtLml0YWxpY3N8fG0uc3RyaWtldGhyb3VnaHx8bS51bmRlcmxpbmV8fG0udGV4dENvbG9yIT1udWxsJiZtLnRleHRDb2xvciE9PTB8fG0uZGVlbXBoYXNpemUpe2g9ZTt2YXIgaz1oLnB1c2gsbD17c3RhcnRJbmRleDpjLGxlbmd0aDphfTttLmJvbGQmJihsLndlaWdodExhYmVsPSJGT05UX1dFSUdIVF9NRURJVU0iKTttLml0YWxpY3MmJihsLml0YWxpYz0hMCk7bS5zdHJpa2V0aHJvdWdoJiYobC5zdHJpa2V0aHJvdWdoPSJMSU5FX1NUWUxFX1NJTkdMRSIpO20udW5kZXJsaW5lJiYKKGwudW5kZXJsaW5lPSJMSU5FX1NUWUxFX1NJTkdMRSIpO20udGV4dENvbG9yIT1udWxsJiZtLnRleHRDb2xvciE9PTA/bC5mb250Q29sb3I9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmhhc0F0dHJpYnV0ZSgiZGFyayIpP20uZGFya01vZGVUZXh0Q29sb3J8fG0udGV4dENvbG9yOm0udGV4dENvbG9yOm0uZGVlbXBoYXNpemUmJihsLmZvbnRDb2xvcj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaGFzQXR0cmlidXRlKCJkYXJrIik/eUYoIiNhYWEiKTp5RigiIzYwNjA2MCIpKTtrLmNhbGwoaCxsKX1tLm5hdmlnYXRpb25FbmRwb2ludCYmKGg9ZixrPWgucHVzaCxsPXtzdGFydEluZGV4OmMsbGVuZ3RoOmEsb25UYXA6e2lubmVydHViZUNvbW1hbmQ6bS5uYXZpZ2F0aW9uRW5kcG9pbnR9fSxtLmxvZ2dpbmdEaXJlY3RpdmVzJiZfLndGKGwsekYsbS5sb2dnaW5nRGlyZWN0aXZlcyksay5jYWxsKGgsbCkpO2MrPWF9fWIuY29udGVudD1kLmpvaW4oIiIpO2Iuc3R5bGVSdW5zPWUubGVuZ3RoPwplOnZvaWQgMDtiLmNvbW1hbmRSdW5zPWYubGVuZ3RoP2Y6dm9pZCAwO3JldHVybiBifTt5Rj1mdW5jdGlvbihhKXt2YXIgYj1wYXJzZUludDtpZighSGNhLnRlc3QoYSkpdGhyb3cgRXJyb3IoIlBjYCIrYSk7YS5sZW5ndGg9PTQmJihhPWEucmVwbGFjZShJY2EsIiMkMSQxJDIkMiQzJDMiKSk7cmV0dXJuIGIoImZmIithLnRvTG93ZXJDYXNlKCkuc3Vic3RyaW5nKDEpLDE2KX07QkY9ZnVuY3Rpb24oYSl7aWYoYSlyZXR1cm4gT2JqZWN0LmVudHJpZXMoYSkuZmlsdGVyKChbLGJdKT0+YiE9PXZvaWQgMCYmYiE9PW51bGwmJmIhPT0iIikubWFwKChbYixjXSk9PmAke2IucmVwbGFjZSgvKFthLXpBLVpdKSg/PVtBLVpdKS9nLCIkMS0iKS50b0xvd2VyQ2FzZSgpfTogJHtjfTtgKS5qb2luKCIiKXx8dm9pZCAwfTsKQ0Y9ZnVuY3Rpb24oYSl7aWYoIWE/LnZhbHVlfHwhYT8udW5pdClyZXR1cm4iIjtzd2l0Y2goYS51bml0KXtjYXNlICJESU1FTlNJT05fVU5JVF9GUkFDVElPTiI6dmFyIGI9IiUiO2JyZWFrO2RlZmF1bHQ6Yj0icHgifWE9YS52YWx1ZTtiPT09IiUiJiYoYSo9MTAwKTtyZXR1cm5gJHthfSR7Yn1gfTtKY2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz17Li4uYn07Zm9yKGxldCBbZCxlXW9mIG5ldyBNYXAoW1sib250b3VjaHN0YXJ0IixhLm9udG91Y2hzdGFydF0sWyJvbnRvdWNoZW5kIixhLm9udG91Y2hlbmRdLFsib250b3VjaG1vdmUiLGEub250b3VjaG1vdmVdXSkpe2xldCBmPWQsaD1lO2JbZl09az0+e2NbZl0/LihrKTtoKGspfX19OwpMY2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bInl0QXR0cmlidXRlZFN0cmluZ0xpbmsiXTtiPy51Ynx8KGI/LmlzT3ZlcmxheT9jLnB1c2goInl0QXR0cmlidXRlZFN0cmluZ0xpbmtPdmVybGF5Q2FsbFRvQWN0aW9uQ29sb3IiKTpjLnB1c2goInl0QXR0cmlidXRlZFN0cmluZ0xpbmtDYWxsVG9BY3Rpb25Db2xvciIpLGI/LlhhJiZjLnB1c2goInl0QXR0cmlidXRlZFN0cmluZ0xpbmtJbmhlcml0Q29sb3IiKSk7Yz17Y2xhc3NOYW1lOmMuam9pbigiICIpLHRhYmluZGV4OiIwIn07dmFyIGQ9YS5vblRhcHx8YS5vbkxvbmdQcmVzcztpZighZClyZXR1cm4gYzt2YXIgZT1hLm9uVGFwT3B0aW9ucz8uYWNjZXNzaWJpbGl0eUluZm8/LmFjY2Vzc2liaWxpdHlMYWJlbDtlJiYoYy5hcmlhTGFiZWw9ZSk7Yj1fLmJFKHtiaDpkLHV4OmMsSWQ6ISFiPy5JZCxxZDohMH0pO2Eub25Mb25nUHJlc3MmJihkPW5ldyBLY2EoKCk9Pnt2YXIgZj1fLlJEKGEub25Mb25nUHJlc3MpO2YmJl8ueSgpLnJlc29sdmUoXy5VRCkucmVzb2x2ZUNvbW1hbmQoZil9KSwKYiYmSmNhKGQsYikpO3JldHVybiBifHxjfTtERj1mdW5jdGlvbihhKXt2YXIgYj1hO2E8PTE2Nzc3MjE1JiYoYis9cGFyc2VJbnQoImZmMDAwMDAwIiwxNikpO3JldHVybiBfLk5EKGIpfTtFRj1mdW5jdGlvbih7aXNEYXJrVGhlbWU6YSxleHRlbnNpb246YixPcjpjfSl7dmFyIGQ9dm9pZCAwO2lmKGI9Yj8uY29sb3JNYXApe2E9YT8iVVNFUl9JTlRFUkZBQ0VfVEhFTUVfREFSSyI6IlVTRVJfSU5URVJGQUNFX1RIRU1FX0xJR0hUIjtmb3IobGV0IGUgb2YgYilpZihhPT09ZS5rZXkpe2Q9ZS52YWx1ZTticmVha319ZD09bnVsbCYmYyYmKGQ9Yyk7aWYoZClyZXR1cm4gREYoZCl9OwpOY2E9ZnVuY3Rpb24oYSxiPSExKXt2YXIgYz17fTtpZihhLnRleHREZWNvcmF0b3Ipe3ZhciBkPWEudGV4dERlY29yYXRvcjt2YXIgZT17fTt2YXIgZj1fLkIoZCxfLkZGKSxoPV8uQihkLEdGKTtpZihmKXtkPU9iamVjdDtoPWQuYXNzaWduO2xldCBrPXt9OyhiPUVGKHtleHRlbnNpb246Xy5CKGYuaGlnaGxpZ2h0VGV4dERlY29yYXRvckV4dGVuc2lvbnMsTWNhKSxpc0RhcmtUaGVtZTpiLE9yOmYuYmFja2dyb3VuZENvbG9yfSkpJiYoa1siYmFja2dyb3VuZC1jb2xvciJdPWIpO2YuYmFja2dyb3VuZENvcm5lclJhZGl1cyE9PXZvaWQgMCYmKGtbImJvcmRlci1yYWRpdXMiXT1gJHtmLmJhY2tncm91bmRDb3JuZXJSYWRpdXN9cHhgKTtmLmxlZnRQYWRkaW5nIT09dm9pZCAwJiYoa1sicGFkZGluZy1sZWZ0Il09YCR7Zi5sZWZ0UGFkZGluZ31weGApO2YucmlnaHRQYWRkaW5nIT09dm9pZCAwJiYoa1sicGFkZGluZy1yaWdodCJdPWAke2YucmlnaHRQYWRkaW5nfXB4YCk7Zi50b3BQYWRkaW5nIT09CnZvaWQgMCYmKGtbInBhZGRpbmctdG9wIl09YCR7Zi50b3BQYWRkaW5nfXB4YCk7Zi5ib3R0b21QYWRkaW5nIT09dm9pZCAwJiYoa1sicGFkZGluZy1ib3R0b20iXT1gJHtmLmJvdHRvbVBhZGRpbmd9cHhgKTtoLmNhbGwoZCxlLGspfWVsc2UgaCYmKGY9T2JqZWN0LGQ9Zi5hc3NpZ24sYj1iPyIjMmJhNjQwIjoiIzEwNzUxNiIsYj1oLmNvbG9yP0RGKGguY29sb3IpOmIsZC5jYWxsKGYsZSx7cGFkZGluZzoiMnB4IiwiYm9yZGVyLXRvcCI6YHNvbGlkICR7Yn0gMnB4YCwiYm9yZGVyLWJvdHRvbSI6YHNvbGlkICR7Yn0gMnB4YCxiYWNrZ3JvdW5kOmBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAke2J9IDNweCwgcmdiYSgwLCAwLCAwLCAwKSAzcHgpLCBsaW5lYXItZ3JhZGllbnQoMzE1ZGVnLCAke2J9IDNweCwgcmdiYSgwLCAwLCAwLCAwKSAzcHgpYH0pKTtlPU9iamVjdC5rZXlzKGUpLmxlbmd0aCE9PTA/ZTp2b2lkIDA7Yy5zdHlsZT1lO2E9YS50ZXh0RGVjb3JhdG9yO2U9W107Yj1fLkIoYSwKR0YpO18uQihhLF8uRkYpP2UucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nSGlnaGxpZ2h0VGV4dERlY29yYXRvciIpOmImJmUucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nQnJhY2tldFRleHREZWNvcmF0b3IiKTthPWUuam9pbigiICIpO2MuY2xhc3NOYW1lPWE7Yy5kaXI9ImF1dG8ifXJldHVybiBjfTtIRj1mdW5jdGlvbih7Y29uZmlnOmEsaW1hZ2U6YixnajpjLE9sOmQscnVuOmUsdGFnOmYsdGV4dExlbmd0aDpoLHN0YXJ0SW5kZXg6az0wLGxlbmd0aDpsfSl7az09PXZvaWQgMCYmKGs9MCk7ZT17cnVuOmUsc3RhcnRJbmRleDprLHdsOmwhPT12b2lkIDA/aytsOmgsdGFnOmZ9O2ImJihlLmltYWdlPWIpO2MmJihlLmdqPWMpO2QmJihlLk9sPWQpO2EmJihlLmNvbmZpZz1hKTtyZXR1cm4gZX07Ck9jYT1mdW5jdGlvbihhLGIpe2lmKGEud2VpZ2h0KXJldHVybiBhLndlaWdodDtzd2l0Y2goYS53ZWlnaHRMYWJlbCl7Y2FzZSAiRk9OVF9XRUlHSFRfVEhJTiI6cmV0dXJuIDEwMDtjYXNlICJGT05UX1dFSUdIVF9FWFRSQV9MSUdIVCI6cmV0dXJuIDIwMDtjYXNlICJGT05UX1dFSUdIVF9MSUdIVCI6cmV0dXJuIDMwMDtjYXNlICJGT05UX1dFSUdIVF9NRURJVU0iOnJldHVybiA1MDA7Y2FzZSAiRk9OVF9XRUlHSFRfU0VNSV9CT0xEIjpyZXR1cm4gNjAwO2Nhc2UgIkZPTlRfV0VJR0hUX0JPTEQiOnJldHVybiBiPzkwMDo3MDA7Y2FzZSAiRk9OVF9XRUlHSFRfRVhUUkFfQk9MRCI6cmV0dXJuIDgwMDtjYXNlICJGT05UX1dFSUdIVF9CTEFDSyI6cmV0dXJuIDkwMDtkZWZhdWx0OnJldHVybiA0MDB9fTsKUWNhPWZ1bmN0aW9uKGEsYj0hMSxjKXtiPUVGKHtleHRlbnNpb246Xy5CKGEuc3R5bGVSdW5FeHRlbnNpb25zLFBjYSksaXNEYXJrVGhlbWU6YixPcjphLmZvbnRDb2xvcn0pO3ZhciBkPVtdO2ImJmQucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nTGlua0luaGVyaXRDb2xvciIpO2EuaXRhbGljJiZkLnB1c2goInl0QXR0cmlidXRlZFN0cmluZ0l0YWxpY2l6ZWQiKTthLnVuZGVybGluZSYmYS5zdHJpa2V0aHJvdWdoP2QucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nVW5kZXJsaW5lU3RyaWtldGhyb3VnaCIsSUYoYS51bmRlcmxpbmUpKTphLnVuZGVybGluZT9kLnB1c2goInl0QXR0cmlidXRlZFN0cmluZ1VuZGVybGluZWQiLElGKGEudW5kZXJsaW5lKSk6YS5zdHJpa2V0aHJvdWdoJiZkLnB1c2goInl0QXR0cmlidXRlZFN0cmluZ1N0cmlrZXRocm91Z2giLElGKGEuc3RyaWtldGhyb3VnaCkpO2lmKGEuYmFzZWxpbmVPZmZzZXQpe2E6c3dpdGNoKGEuYmFzZWxpbmVPZmZzZXQpe2Nhc2UgIkJBU0VMSU5FX09GRlNFVF9TVUJTQ1JJUFQiOnZhciBlPQoieXRBdHRyaWJ1dGVkU3RyaW5nQmFzZWxpbmVPZmZzZXRTdWJzY3JpcHQiO2JyZWFrIGE7Y2FzZSAiQkFTRUxJTkVfT0ZGU0VUX1NVUEVSU0NSSVBUIjplPSJ5dEF0dHJpYnV0ZWRTdHJpbmdCYXNlbGluZU9mZnNldFN1cGVyc2NyaXB0IjticmVhayBhO2RlZmF1bHQ6ZT0ieXRBdHRyaWJ1dGVkU3RyaW5nQmFzZWxpbmVPZmZzZXRVbmtub3duIn1kLnB1c2goZSl9ZD1kLmpvaW4oIiAiKTtlPXt9O2lmKGEud2VpZ2h0fHxhLndlaWdodExhYmVsKWUuZm9udFdlaWdodD1PY2EoYSxjPy5xaCkudG9TdHJpbmcoKTtiJiYoZS5jb2xvcj1iKTtyZXR1cm57Y2xhc3NOYW1lOmQsc3R5bGU6ZX19O0lGPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJMSU5FX1NUWUxFX0RPVCI6cmV0dXJuInl0QXR0cmlidXRlZFN0cmluZ0xpbmVTdHlsZURvdCI7Y2FzZSAiTElORV9TVFlMRV9OT05FIjpyZXR1cm4ieXRBdHRyaWJ1dGVkU3RyaW5nTGluZVN0eWxlTm9uZSI7ZGVmYXVsdDpyZXR1cm4ieXRBdHRyaWJ1dGVkU3RyaW5nTGluZVN0eWxlU2luZ2xlIn19OwpSY2E9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIlRFWFRfQUxJR05NRU5UX0xFRlQiOnJldHVybiJ5dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50TGVmdCI7Y2FzZSAiVEVYVF9BTElHTk1FTlRfUklHSFQiOnJldHVybiJ5dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50UmlnaHQiO2Nhc2UgIlRFWFRfQUxJR05NRU5UX0NFTlRFUiI6cmV0dXJuInl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRDZW50ZXIiO2Nhc2UgIlRFWFRfQUxJR05NRU5UX0pVU1RJRklFRCI6cmV0dXJuInl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRKdXN0aWZpZWQiO2Nhc2UgIlRFWFRfQUxJR05NRU5UX0xBWU9VVF9TVEFSVCI6cmV0dXJuInl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRMYXlvdXRTdGFydCI7ZGVmYXVsdDpyZXR1cm4ieXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudFVua25vd24ifX07CkpGPWZ1bmN0aW9uKGEsYil7cmV0dXJuISFifHwhKGEuY29tbWFuZFJ1bnMmJmEuY29tbWFuZFJ1bnMubGVuZ3RoIT09MHx8YS5wYXJhZ3JhcGhTdHlsZVJ1bnMmJmEucGFyYWdyYXBoU3R5bGVSdW5zLmxlbmd0aCE9PTApfTtTY2E9ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pnt2YXIgYz1hLnJ1bjsoYy5vblRhcCE9PXZvaWQgMHx8Yy5vbkxvbmdQcmVzcyE9PXZvaWQgMCkmJl8uQihjLHpGKSYmXy5KeChiLHtkYXRhOntsb2dnaW5nRGlyZWN0aXZlczpfLkIoYyx6Ril9LG9ic2VydmVyOl8ueSgpLnJlc29sdmUoXy5MeCksTmM6Xy5uRixlYjpfLm1GLGxheWVyOmIubGF5ZXJ9KX19O0tGPWZ1bmN0aW9uKGEsYixjLGQpe2ZvcihsZXQgZSBvZiBhLmxjKXtpZih0eXBlb2YgZT09PSJzdHJpbmciKXRocm93IEVycm9yKCJZYyIpO2lmKGUuc3RhcnQ8PWImJmM8PWUuZW5kKXtLRihlLGIsYyxkKTtyZXR1cm59fWEubGMucHVzaCh7ZGF0YTpkLGxjOltdLHN0YXJ0OmIsZW5kOmN9KX07CkxGPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBkPWIubGMubGVuZ3RoO2Q+PTA7ZC0tKXtsZXQgZT1iLmxjW2RdO3ZhciBjPWIubGNbZC0xXTtsZXQgZj1kPT09Yi5sYy5sZW5ndGg/Yi5lbmQ6ZS5zdGFydDtjPWQ9PT0wP2Iuc3RhcnQ6Yy5lbmQ7ZiE9PWMmJmIubGMuc3BsaWNlKGQsMCxhLnNsaWNlKGMsZikpO2UmJkxGKGEsZSl9fTtUY2E9ZnVuY3Rpb24oYSl7YS5zb3J0KChiLGMpPT57aWYoYi5zdGFydEluZGV4PGMuc3RhcnRJbmRleClyZXR1cm4tMTtpZihjLnN0YXJ0SW5kZXg8Yi5zdGFydEluZGV4KXJldHVybiAxO2I9Yi53bC1iLnN0YXJ0SW5kZXg7Yz1jLndsLWMuc3RhcnRJbmRleDtyZXR1cm4gYj5jPy0xOmM+Yj8xOjB9KX07Ck1GPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT1iPyEwOmE9PT12b2lkIDB8fGI9PT12b2lkIDA/ITE6Xy54KCJ3ZWJfYXR0cmlidXRlZF9zdHJpbmdfZGVlcF9lcXVhbF9idWdmaXgiKT92RihhLGIpOmEuY29udGVudD09PWIuY29udGVudCYmYS5zdHlsZVJ1bnM/Lmxlbmd0aD09PWIuc3R5bGVSdW5zPy5sZW5ndGgmJmEuY29tbWFuZFJ1bnM/Lmxlbmd0aD09PWIuY29tbWFuZFJ1bnM/Lmxlbmd0aCYmYS5hdHRhY2htZW50UnVucz8ubGVuZ3RoPT09Yi5hdHRhY2htZW50UnVucz8ubGVuZ3RoJiZhLmRlY29yYXRpb25SdW5zPy5sZW5ndGg9PT1iLmRlY29yYXRpb25SdW5zPy5sZW5ndGh9O1VjYT1mdW5jdGlvbih7bGM6YX0pe3JldHVybiBhLm1hcChORil9OwpORj1mdW5jdGlvbihhKXtpZih0eXBlb2YgYT09PSJzdHJpbmciKXJldHVybiBhO3ZhciBiPWEuZGF0YTtiLmltYWdlIT09dm9pZCAwJiZiLmdqIT09dm9pZCAwPyhiPWEuZGF0YS5PbCxhPV8uSygic3BhbiIse2NsYXNzOmI/LmNsYXNzTmFtZSxzdHlsZTpCRihiPy5zdHlsZSksZGlyOmI/LmRpcixyb2xlOmI/LnJvbGUsdGFiaW5kZXg6Yj8udGFiaW5kZXghPT12b2lkIDA/TnVtYmVyKGIudGFiaW5kZXgpOnZvaWQgMCwiZm9yY2UtbmV3LXN0YXRlIjpiPy5xZCwib246Y2xpY2siOmI/Lm9uY2xpY2ssIm9uOnRvdWNoZW5kIjpiPy5vbnRvdWNoZW5kLCJvbjp0b3VjaG1vdmUiOmI/Lm9udG91Y2htb3ZlLCJvbjp0b3VjaHN0YXJ0IjpiPy5vbnRvdWNoc3RhcnR9LF8uSyhfLmpGLHtkYXRhOmEuZGF0YS5pbWFnZSwuLi5hLmRhdGEuZ2p9KSkpOihiPWEuZGF0YS5jb25maWcsYT1fLksoYS5kYXRhLnRhZyx7ZWw6Xy5yRihTY2EoYS5kYXRhKSksInByb3A6X2RhdGEiOmI/Lm51LCJwcm9wOnBhcmFtcyI6Yj8ucGFyYW1zLApjbGFzczpiPy5jbGFzc05hbWUsc3R5bGU6QkYoYj8uc3R5bGUpLGRpcjpiPy5kaXIsaHJlZjpiPy5ocmVmLHJlbDpiPy5yZWwscm9sZTpiPy5yb2xlLHRhcmdldDpiPy50YXJnZXQsdGl0bGU6Yj8udGl0bGUsdGFiaW5kZXg6Yj8udGFiaW5kZXghPT12b2lkIDA/TnVtYmVyKGIudGFiaW5kZXgpOnZvaWQgMCwiYXJpYS1oYXNwb3B1cCI6Yj8uYXJpYUhhc1BvcHVwLCJmb3JjZS1uZXctc3RhdGUiOmI/LnFkLCJhcmlhLWhpZGRlbiI6Yj8uYXJpYUhpZGRlbiwiYXJpYS1leHBhbmRlZCI6Yj8uYXJpYUV4cGFuZGVkLCJhcmlhLWxhYmVsIjpiPy5hcmlhTGFiZWwsIm9uOmNsaWNrIjpiPy5vbmNsaWNrLCJvbjp0b3VjaGVuZCI6Yj8ub250b3VjaGVuZCwib246dG91Y2htb3ZlIjpiPy5vbnRvdWNobW92ZSwib246dG91Y2hzdGFydCI6Yj8ub250b3VjaHN0YXJ0LCJvbjpwb2ludGVyZG93biI6Yj8ub25wb2ludGVyZG93biwib246a2V5ZG93biI6Yj8ub25rZXlkb3dufSxhLmxjLm1hcChORikpKTsKcmV0dXJuIF8uZkMoYSl9O1ZjYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPT09Yj8hMDphPT09dm9pZCAwfHxiPT09dm9pZCAwPyExOmEuQ2o9PT1iLkNqJiZhLnViPT09Yi51YiYmYS5tYT09PWIubWEmJmEuaGVhZGVyUnVucz09PWIuaGVhZGVyUnVucyYmYS5pc092ZXJsYXk9PT1iLmlzT3ZlcmxheSYmYS5YYT09PWIuWGEmJmEudXNlcklucHV0PT09Yi51c2VySW5wdXQmJmEucWg9PT1iLnFofTtXY2E9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pih7YXJpYUxhYmVsOmEuYXJpYUxhYmVsPy4oKSxjbGFzc05hbWU6YS5jbGFzc05hbWU/LigpLHljOmEueWM/LigpLGlzT3ZlcmxheTphLmlzT3ZlcmxheT8uKCksWGE6YS5YYT8uKCksbWE6YS5tYT8uKCksQ2o6YS5Daj8uKCksdWI6YS51Yj8uKCkscmc6YS5yZz8uKCksbm9XcmFwOmEubm9XcmFwPy4oKSxJZDphLklkPy4oKSx1c2VySW5wdXQ6YS51c2VySW5wdXQ/LigpLGhlYWRlclJ1bnM6YS5oZWFkZXJSdW5zPy4oKSxxaDphLnFoPy4oKX0pfTsKSWNhPS8jKC4pKC4pKC4pLztIY2E9L14jKD86WzAtOWEtZl17M30pezEsMn0kL2k7Xy5YY2E9bmV3IF8uSSgiZW1vamkiKTt2YXIgekY9bmV3IF8uSSgibG9nZ2luZ0RpcmVjdGl2ZXMiKTtfLlljYT1uZXcgXy5JKCJ1bnBsdWdnZWRTdHJpbmdSdW5JbWFnZSIpO3ZhciBNY2E9bmV3IF8uSSgiaGlnaGxpZ2h0VGV4dERlY29yYXRvckNvbG9yTWFwRXh0ZW5zaW9uIik7dmFyIFBjYT1uZXcgXy5JKCJzdHlsZVJ1bkNvbG9yTWFwRXh0ZW5zaW9uIik7dmFyIFpjYT1uZXcgXy5JKCJhY2Nlc3NpYmlsaXR5UHJvcGVydGllcyIpO3ZhciBHRj1uZXcgXy5JKCJicmFja2V0VGV4dERlY29yYXRvciIpO18uRkY9bmV3IF8uSSgiaGlnaGxpZ2h0VGV4dERlY29yYXRvciIpO3ZhciAkY2E9bmV3IF8uSSgiaW1hZ2VUeXBlIik7dmFyIGFkYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuRD01MDA7dGhpcy5qPU5hTjt0aGlzLnY9dGhpcy5vPSExO3RoaXMuQj1hPT57dmFyIGI9bmV3IEN1c3RvbUV2ZW50KCJMT05HX1BSRVNTIik7YS5jaGFuZ2VkVG91Y2hlc1swXS50YXJnZXQ/LmRpc3BhdGNoRXZlbnQoYil9O3RoaXMub250b3VjaHN0YXJ0PWE9Pnt0aGlzLmo9Xy5xeChfLmpmLCgpPT57dGhpcy5CKGEpO3RoaXMubz0hMH0sdGhpcy5EKX07dGhpcy5vbnRvdWNobW92ZT0oKT0+e18uamYuQWEodGhpcy5qKTt0aGlzLmo9TmFOO3RoaXMubz0hMTt0aGlzLnY9ITB9O3RoaXMub250b3VjaGVuZD1hPT57dGhpcy5qJiYhdGhpcy5vJiYhdGhpcy52JiZhLmNoYW5nZWRUb3VjaGVzWzBdLnRhcmdldD8uZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImNsaWNrIikpO18uamYuQWEodGhpcy5qKTt0aGlzLmo9TmFOO3RoaXMudj10aGlzLm89ITF9fX07dmFyIEtjYT1jbGFzcyBleHRlbmRzIGFkYXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuY2FsbGJhY2s9YTt0aGlzLkI9Yj0+e3RoaXMuY2FsbGJhY2s/LihiKX19fTt2YXIgYmRhO2JkYT1fLngoImFsbG93X25lc3RlZF9yZW5kZXJfa3MiKT92b2lkIDA6e0lrOl8uWEN9OwpfLlY9Xy5MKGE9Pnt2YXIgYj1XY2EoYSksYz1lPT57dmFyIGYsaCxrPV8uckYocD0+e2Y9ZSgpO2g9Xy51digoKT0+e2Zvcih2YXIgciBvZiBtKCkpe2xldCB0PU5GKHIpO3Q9dHlwZW9mIHQ9PT0ic3RyaW5nIj9kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0KTp0O2lmKCEodCBpbnN0YW5jZW9mIE5vZGUpKXtyPW5ldyBfLlhqKCJQYXJ0IGlzIG5vdCBhIG5vZGUiLHQsdHlwZW9mIHQpO18uR3Aocik7YnJlYWt9cC5hcHBlbmRDaGlsZCh0KX19KX0pLGw9Xy51RihiLHtpc0VxdWFsOlZjYX0pLG09KCk9Pnt2YXIgcD1lKCkscj1sKCksdD1bXSx2PXAuY29udGVudC5sZW5ndGgsej1fLnkoKS5yZXNvbHZlKF8uSW4oXy5rRikpPy4oKTtpZihwLnBhcmFncmFwaFN0eWxlUnVucylmb3IobGV0IE0gb2YgcC5wYXJhZ3JhcGhTdHlsZVJ1bnMpe3ZhciBFPXQsQT1FLnB1c2g7YTp7aWYoIU0ubGlzdEdyb3VwPy5saXN0SXRlbXMpe3ZhciBGPVtdO2JyZWFrIGF9Rj1bXTtiOnN3aXRjaChNLmxpc3RHcm91cC5saXN0VHlwZSl7Y2FzZSAiTElTVF9UWVBFX0JVTExFVCI6dmFyIEM9CiJ1bCI7YnJlYWsgYjtkZWZhdWx0OkM9InNwYW4ifUYucHVzaChIRih7cnVuOk0sdGV4dExlbmd0aDp2LHRhZzpDLGNvbmZpZzp7Y2xhc3NOYW1lOiJ5dEF0dHJpYnV0ZWRTdHJpbmdMaXN0R3JvdXAifSxzdGFydEluZGV4Ok0uc3RhcnRJbmRleCxsZW5ndGg6TS5sZW5ndGh9KSk7Zm9yKGxldCBTIG9mIE0ubGlzdEdyb3VwLmxpc3RJdGVtcyl7Yjpzd2l0Y2goTS5saXN0R3JvdXAubGlzdFR5cGUpe2Nhc2UgIkxJU1RfVFlQRV9CVUxMRVQiOkM9ImxpIjticmVhayBiO2RlZmF1bHQ6Qz0ic3BhbiJ9Ri5wdXNoKEhGKHtydW46TSx0ZXh0TGVuZ3RoOnYsdGFnOkMsc3RhcnRJbmRleDpTLnN0YXJ0SW5kZXgsbGVuZ3RoOlMubGVuZ3RofSkpfX1BLmNhbGwoRSwuLi5GKX1pZihwLnN0eWxlUnVucyYmIXI/LkNqKWZvcih2YXIgRyBvZiBwLnN0eWxlUnVucylFPVFjYShHLHosciksdC5wdXNoKEhGKHtydW46Ryx0ZXh0TGVuZ3RoOnYsdGFnOiJzcGFuIixjb25maWc6RSxzdGFydEluZGV4Okcuc3RhcnRJbmRleCwKbGVuZ3RoOkcubGVuZ3RofSkpO2lmKHAuZGVjb3JhdGlvblJ1bnMpZm9yKHZhciBEIG9mIHAuZGVjb3JhdGlvblJ1bnMpRz1OY2EoRCx6KSxFPV8uQihELnRleHREZWNvcmF0b3IsR0YpLEE9Xy5CKEQudGV4dERlY29yYXRvcixHRiksdC5wdXNoKEhGKHtydW46RCx0ZXh0TGVuZ3RoOnYsdGFnOiJzcGFuIixjb25maWc6RyxzdGFydEluZGV4Ol8uQihELnRleHREZWNvcmF0b3IsXy5GRik/LnN0YXJ0SW5kZXh8fEU/LnN0YXJ0SW5kZXh8fDAsbGVuZ3RoOl8uQihELnRleHREZWNvcmF0b3IsXy5GRik/Lmxlbmd0aHx8QT8ubGVuZ3RofHwwfSkpO2lmKHAuY29tbWFuZFJ1bnMmJiFyPy5tYSlmb3IodmFyIEggb2YgcC5jb21tYW5kUnVucyl6PUxjYShILHIpLHQucHVzaChIRih7cnVuOkgsdGV4dExlbmd0aDp2LHRhZzoiYSIsY29uZmlnOnosc3RhcnRJbmRleDpILnN0YXJ0SW5kZXgsbGVuZ3RoOkgubGVuZ3RofSkpO2lmKHAuYXR0YWNobWVudFJ1bnMpZm9yKGxldCBNIG9mIHAuYXR0YWNobWVudFJ1bnMpe3A9CntjbGFzc05hbWU6Inl0QXR0cmlidXRlZFN0cmluZ0lubGluZUJsb2NrTW9kIn07TS5lbGVtZW50Py5wcm9wZXJ0aWVzJiYoSD17fSx6PV8uQihNLmVsZW1lbnQ/LnByb3BlcnRpZXMsXy5oRSksej8ubWFyZ2luJiYoej16Lm1hcmdpbixEPShHPV8udygiSFRNTF9ESVIiKT09PSJydGwifHxkb2N1bWVudC5ib2R5LmdldEF0dHJpYnV0ZSgiZGlyIik9PT0icnRsIik/ei5lbmR8fHoucmlnaHQ6ei5zdGFydHx8ei5sZWZ0LEc9Rz96LnN0YXJ0fHx6LmxlZnQ6ei5lbmR8fHoucmlnaHQsRCYmKEhbIm1hcmdpbi1sZWZ0Il09Q0YoRCkpLEcmJihIWyJtYXJnaW4tcmlnaHQiXT1DRihHKSksei50b3AmJihIWyJtYXJnaW4tdG9wIl09Q0Yoei50b3ApKSx6LmJvdHRvbSYmKEhbIm1hcmdpbi1ib3R0b20iXT1DRih6LmJvdHRvbSkpKSxIPU9iamVjdC5rZXlzKEgpLmxlbmd0aCE9PTA/SDp2b2lkIDAscC5zdHlsZT1IKTtIPXthbHQ6IiIsWWE6ITAsVGE6ITB9O3o9WyJ5dEF0dHJpYnV0ZWRTdHJpbmdJbWFnZUVsZW1lbnQiXTsKaWYoTS5hbGlnbm1lbnQpe2E6c3dpdGNoKE0uYWxpZ25tZW50KXtjYXNlICJBTElHTk1FTlRfQkFTRUxJTkUiOkQ9Inl0QXR0cmlidXRlZFN0cmluZ0ltYWdlQWxpZ25tZW50QmFzZWxpbmUiO2JyZWFrIGE7Y2FzZSAiQUxJR05NRU5UX1ZFUlRJQ0FMX0NFTlRFUiI6RD0ieXRBdHRyaWJ1dGVkU3RyaW5nSW1hZ2VBbGlnbm1lbnRWZXJ0aWNhbENlbnRlciI7YnJlYWsgYTtkZWZhdWx0OkQ9Inl0QXR0cmlidXRlZFN0cmluZ0ltYWdlQWxpZ25tZW50Qm90dG9tIn16LnB1c2goRCl9TS5lbGVtZW50Py5wcm9wZXJ0aWVzJiYoRD17fSxHPV8uQihNLmVsZW1lbnQucHJvcGVydGllcyxfLmhFKSxHPy5oZWlnaHQmJihELmhlaWdodD1DRihHLmhlaWdodCkpLEc/LndpZHRoJiYoRC53aWR0aD1DRihHLndpZHRoKSksRD1PYmplY3Qua2V5cyhEKS5sZW5ndGghPT0wP0Q6dm9pZCAwLEguc3R5bGU9QkYoRCksSC5hbHQ9Xy5CKE0uZWxlbWVudC5wcm9wZXJ0aWVzLFpjYSk/LmxhYmVsfHwiIik7SC5jbGFzc05hbWU9Cnouam9pbigiICIpO3o9TS5lbGVtZW50Py50eXBlP18uQihNLmVsZW1lbnQudHlwZSwkY2EpPy5pbWFnZTp2b2lkIDA7dC5wdXNoKEhGKHtydW46TSx0ZXh0TGVuZ3RoOnYsdGFnOiJpbWciLGltYWdlOnosZ2o6SCxPbDpwLHN0YXJ0SW5kZXg6TS5zdGFydEluZGV4LGxlbmd0aDpNLmxlbmd0aD8/MH0pKX1pZihyPy5oZWFkZXJSdW5zKWZvcih2YXIgUiBvZiByLmhlYWRlclJ1bnMpaWYoUi5oZWFkZXJNYXBwaW5nJiZbIkFUVFJJQlVURURfU1RSSU5HX0hFQURFUl9NQVBQSU5HX0hFQURJTkdfMSIsIkFUVFJJQlVURURfU1RSSU5HX0hFQURFUl9NQVBQSU5HX0hFQURJTkdfMiIsIkFUVFJJQlVURURfU1RSSU5HX0hFQURFUl9NQVBQSU5HX0hFQURJTkdfMyJdLmluY2x1ZGVzKFIuaGVhZGVyTWFwcGluZykpe2E6e3N3aXRjaChSLmhlYWRlck1hcHBpbmcpe2Nhc2UgIkFUVFJJQlVURURfU1RSSU5HX0hFQURFUl9NQVBQSU5HX0hFQURJTkdfMSI6cj0ieXRBdHRyaWJ1dGVkU3RyaW5nSGVhZGluZzEiOwpicmVhayBhO2Nhc2UgIkFUVFJJQlVURURfU1RSSU5HX0hFQURFUl9NQVBQSU5HX0hFQURJTkdfMiI6cj0ieXRBdHRyaWJ1dGVkU3RyaW5nSGVhZGluZzIiO2JyZWFrIGE7Y2FzZSAiQVRUUklCVVRFRF9TVFJJTkdfSEVBREVSX01BUFBJTkdfSEVBRElOR18zIjpyPSJ5dEF0dHJpYnV0ZWRTdHJpbmdIZWFkaW5nMyI7YnJlYWsgYX1yPXZvaWQgMH10LnB1c2goSEYoe3J1bjpSLHRleHRMZW5ndGg6dix0YWc6InNwYW4iLGNvbmZpZzpyP3tjbGFzc05hbWU6cn06dm9pZCAwLHN0YXJ0SW5kZXg6Ui5zdGFydEluZGV4LGxlbmd0aDpSLmxlbmd0aH0pKX1pZihsKCk/LnVzZXJJbnB1dClmb3IobGV0IE0gb2YgdCl7aWYoTS50YWc9PT0iYSJ8fE0udGFnPT09ImxpIiljb250aW51ZTtsZXQgUzsoUz1NKS5jb25maWd8fChTLmNvbmZpZz17fSk7TS50YWc9PT0idWwiP00uY29uZmlnLmRpcj1fLnkoKS5yZXNvbHZlKF8ubEYpOk0uY29uZmlnLmRpcj0iYXV0byJ9aWYoZSgpLmNvbnRlbnQpe3Y9ZSgpLmNvbnRlbnQ7ClRjYSh0KTtSPXtkYXRhOm51bGwsc3RhcnQ6MCxlbmQ6di5sZW5ndGgsbGM6W119O2ZvcihsZXQgTSBvZiB0KUtGKFIsTS5zdGFydEluZGV4LE0ud2wsTSk7TEYodixSKTt0PVIubGN9ZWxzZSB0PVtdO3JldHVybiB0fSxuPSEwO18ubkUoKCk9PntlKCk7bCgpO2lmKG4mJihuPSExLE1GKGUoKSxmKSkpcmV0dXJuO3ZhciBwPW0oKTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dmFyIHI9ay52YWx1ZTtyJiYoci5pbm5lclRleHQ9IiIsaD8uKCksaD1fLnhGKHIsKCk9Pl8uSyhVY2Ese2xjOnB9KSxiZGEpKX0pfSwidjJaMG9lIik7cmV0dXJuIF8uSygic3BhbiIse2VsOmssY2xhc3M6KCk9Pnt2YXIgcDtpZihwPWUoKSl7cD1lKCk7dmFyIHI9YigpO2xldCB0PVtdO3QucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nSG9zdCIpO3I/LmNsYXNzTmFtZSYmdC5wdXNoKHI/LmNsYXNzTmFtZSk7cj8ueWM/dC5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdFbGxpcHNpc1RydW5jYXRlIik6cj8ubm9XcmFwPwp0LnB1c2goInl0QXR0cmlidXRlZFN0cmluZ1doaXRlU3BhY2VOb1dyYXAiKTpyPy5yZ3x8dC5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdXaGl0ZVNwYWNlUHJlV3JhcCIpO3I/LlhhJiZ0LnB1c2goInl0QXR0cmlidXRlZFN0cmluZ0xpbmtJbmhlcml0Q29sb3IiKTtwLmFsaWdubWVudCYmdC5wdXNoKFJjYShwLmFsaWdubWVudCkpO3AubGluZUJyZWFrTW9kZSYmdC5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdXb3JkV3JhcHBpbmciKTtwPXQuam9pbigiICIpfXJldHVybiBwfSxzdHlsZTphLnN0eWxlLGRpcjooKT0+YigpLnVzZXJJbnB1dD8iYXV0byI6dm9pZCAwLCJhcmlhLWxhYmVsIjooKT0+SkYoZSgpLGIoKS5hcmlhTGFiZWwpP2IoKS5hcmlhTGFiZWw6dm9pZCAwLHJvbGU6KCk9PkpGKGUoKSxiKCkuYXJpYUxhYmVsKT8idGV4dCI6dm9pZCAwfSl9LGQ9Xy51RigoKT0+e3ZhciBlPWEudGV4dD8uKCk7aWYoZSlyZXR1cm4gZT1lPy5jb250ZW50IT09dm9pZCAwP2U6Xy5BRihlKSwKZT8uY29udGVudD9lOnZvaWQgMH0se2lzRXF1YWw6TUZ9KTtyZXR1cm4gYS5ZdT9jKGQpOl8uSyhfLk8se0E6ZCx0aGVuOmN9KX0sInEiKTtfLlYuaWRvbUNvbXBhdD0hMDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFFKO1FKPWZ1bmN0aW9uKGEsYil7aWYoIWEpcmV0dXJuIG51bGw7YT1PYmplY3Qua2V5cyhhKTtmb3IobGV0IGMgb2YgYSlpZihhPWMudG9Mb3dlckNhc2UoKSxhLmluZGV4T2YoYixhLmxlbmd0aC1iLmxlbmd0aCk+LTEpcmV0dXJuIGM7cmV0dXJuIG51bGx9O18uUko9ZnVuY3Rpb24oYSl7dmFyIGI9UUooYSwiYWN0aW9uIil8fFFKKGEsImNvbW1hbmQiKXx8UUooYSwiZW5kcG9pbnQiKTtpZighYilyZXR1cm4gbnVsbDt7dmFyIGM9Inl0IitiO2xldCBkPV8uUEouZ2V0KGMpO2Q/Yz1kOihiPWB5dC0ke2IucmVwbGFjZSgvKFtBLVpdKS9nLCItJDEiKS50b0xvd2VyQ2FzZSgpfWAsXy5QSi5zZXQoYyxiKSxjPWIpfV8uQihhLF8uTkopJiYoYys9Ii0iK18uQihhLF8uTkopLnNpZ25hbC50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL18vZywiLSIpKTtyZXR1cm4gY307Xy5TSj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuaj1uZXcgTWFwfX07Xy53YShfLlNKKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEZkYSxHZGEsQ0gsSGRhLERILEVILEZILElkYTtGZGE9ZnVuY3Rpb24oYSxiPTAsYz0tMSl7aWYoIWEudG90YWxMZW5ndGh8fCFjKXJldHVybiBuZXcgRGF0YVZpZXcobmV3IEFycmF5QnVmZmVyKDApKTtjPDAmJihjPWEudG90YWxMZW5ndGgtYik7YS5mb2N1cyhiKTtpZighKGItYS52K2M8PWEualthLm9dLmxlbmd0aCkpe3ZhciBkPWEubyxlPWEudjthLmZvY3VzKGIrYy0xKTtlPW5ldyBVaW50OEFycmF5KGEudithLmpbYS5vXS5sZW5ndGgtZSk7bGV0IGY9MDtmb3IobGV0IGg9ZDtoPD1hLm87aCsrKWUuc2V0KGEualtoXSxmKSxmKz1hLmpbaF0ubGVuZ3RoO2Euai5zcGxpY2UoZCxhLm8tZCsxLGUpO2Eubz0wO2Eudj0wO2EuZm9jdXMoYil9ZD1hLmpbYS5vXTtyZXR1cm4gbmV3IERhdGFWaWV3KGQuYnVmZmVyLGQuYnl0ZU9mZnNldCtiLWEudixjKX07CkdkYT1mdW5jdGlvbihhLGI9MCxjPS0xKXthPUZkYShhLGIsYyk7cmV0dXJuIG5ldyBVaW50OEFycmF5KGEuYnVmZmVyLGEuYnl0ZU9mZnNldCxhLmJ5dGVMZW5ndGgpfTtDSD1mdW5jdGlvbihhLGIpe2EuZm9jdXMoYik7cmV0dXJuIGEualthLm9dW2ItYS52XX07CkhkYT1mdW5jdGlvbihhKXtpZighYS5sZW5ndGgpcmV0dXJuIiI7dHJ5e2lmKF8uc0EpcmV0dXJuIF8uc0EuZGVjb2RlKGEpO2lmKHR5cGVvZiBGZXRjaEludGVybmFsIT09InVuZGVmaW5lZCIpcmV0dXJuIEZldGNoSW50ZXJuYWwuZGVjb2RlRnJvbVVURjgoYSl9Y2F0Y2h7fWZvcih2YXIgYj0wLGM9W10sZD1hLmxlbmd0aDtiPGQ7KXtsZXQgZj0wO2Zvcig7ZjwxMDI0JiZiPGQ7KXt2YXIgZT1hW2IrK107aWYoZTwxMjgpe18uckFbZisrXT1lO2NvbnRpbnVlfWlmKGU8MjI0KWU9KGUmMzEpPDw2fGFbYisrXSY2MztlbHNlIGlmKGU8MjQwKWU9KGUmMTUpPDwxMnwoYVtiKytdJjYzKTw8NnxhW2IrK10mNjM7ZWxzZXtpZihmKzE9PT0xMDI0KXstLWI7YnJlYWt9ZT0oZSY3KTw8MTh8KGFbYisrXSY2Myk8PDEyfChhW2IrK10mNjMpPDw2fGFbYisrXSY2MztlLT02NTUzNjtfLnJBW2YrK109NTUyOTZ8ZT4+MTA7ZT01NjMyMHxlJjEwMjN9Xy5yQVtmKytdPWV9ZT1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZywKXy5yQSk7ZjwxMDI0JiYoZT1lLnN1YnN0cmluZygwLGYpKTtjLnB1c2goZSl9cmV0dXJuIGMuam9pbigiIil9O0RIPWZ1bmN0aW9uKGEpe3ZhciBiPUNIKGEuaixhLnBvcyk7KythLnBvcztpZihiPDEyOClyZXR1cm4gYjtmb3IodmFyIGM9YiYxMjcsZD0xO2I+PTEyODspYj1DSChhLmosYS5wb3MpLCsrYS5wb3MsZCo9MTI4LGMrPShiJjEyNykqZDtyZXR1cm4gY307RUg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLm87Zm9yKGEubz0tMTthLnBvcysxPD1hLmoudG90YWxMZW5ndGg7KXtjPDAmJihjPURIKGEpKTt2YXIgZD1jPj4zO2xldCBlPWMmNztpZihkPT09YilyZXR1cm4hMDtpZihkPmIpe2Eubz1jO2JyZWFrfWM9LTE7c3dpdGNoKGUpe2Nhc2UgMDpESChhKTticmVhaztjYXNlIDE6YS5wb3MrPTg7YnJlYWs7Y2FzZSAyOmQ9REgoYSk7YS5wb3MrPWQ7YnJlYWs7Y2FzZSA1OmEucG9zKz00fX1yZXR1cm4hMX07Cl8uR0g9ZnVuY3Rpb24oYSl7YT1uZXcgSWRhKG5ldyBGSChbXy51YyhkZWNvZGVVUklDb21wb25lbnQoYSkpXSkpO2lmKEVIKGEsMikpe3ZhciBiPURIKGEpO3ZhciBjPUdkYShhLmosYS5wb3MsYik7YS5wb3MrPWI7Yj1jfWVsc2UgYj12b2lkIDA7Yj1iP0hkYShiKTp2b2lkIDA7YT1FSChhLDQpP0RIKGEpOnZvaWQgMDtjPV8udkFbYV07aWYodHlwZW9mIGM9PT0idW5kZWZpbmVkIil0aHJvdyBhPW5ldyBfLlhqKCJGYWlsZWQgdG8gcmVjb2duaXplIGZpZWxkIG51bWJlciIse25hbWU6IkVudGl0eUtleUhlbHBlckVycm9yIixXSTphfSksXy5HcChhKSxhO3JldHVybntSSTphLGVudGl0eVR5cGU6YyxlbnRpdHlJZDpifX07Xy5ISD1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsInBsYXllclN0YXRlRW50aXR5IixiKX07Xy5JSD1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsImJvb2xlYW5FbnRpdHkiLGIpfTsKRkg9Y2xhc3N7Y29uc3RydWN0b3IoYT1bXSl7dGhpcy5qPVtdO3RoaXMudG90YWxMZW5ndGg9dGhpcy52PXRoaXMubz0wO2EuZm9yRWFjaChiPT57dGhpcy5hcHBlbmQoYil9KX1hcHBlbmQoYSl7dmFyIGI9dGhpcy5qLmxlbmd0aD09PTA/ITE6KGI9dGhpcy5qW3RoaXMuai5sZW5ndGgtMV0pJiZiLmJ1ZmZlcj09PWEuYnVmZmVyJiZiLmJ5dGVPZmZzZXQrYi5sZW5ndGg9PT1hLmJ5dGVPZmZzZXQ7Yj8oYj10aGlzLmpbdGhpcy5qLmxlbmd0aC0xXSx0aGlzLmpbdGhpcy5qLmxlbmd0aC0xXT1uZXcgVWludDhBcnJheShiLmJ1ZmZlcixiLmJ5dGVPZmZzZXQsYi5sZW5ndGgrYS5sZW5ndGgpLHRoaXMudj10aGlzLm89MCk6dGhpcy5qLnB1c2goYSk7dGhpcy50b3RhbExlbmd0aCs9YS5sZW5ndGh9c3BsaXQoYSl7dmFyIGI9bmV3IEZILGM9bmV3IEZIO2ZvcihsZXQgZCBvZiB0aGlzLmopYT49ZC5sZW5ndGg/KGIuYXBwZW5kKGQpLGEtPWQubGVuZ3RoKTphPyhiLmFwcGVuZChuZXcgVWludDhBcnJheShkLmJ1ZmZlciwKZC5ieXRlT2Zmc2V0LGEpKSxjLmFwcGVuZChuZXcgVWludDhBcnJheShkLmJ1ZmZlcixkLmJ5dGVPZmZzZXQrYSxkLmxlbmd0aC1hKSksYT0wKTpjLmFwcGVuZChkKTtyZXR1cm57ako6YixiTDpjfX1pc0ZvY3VzZWQoYSl7cmV0dXJuIGE+PXRoaXMudiYmYTx0aGlzLnYrdGhpcy5qW3RoaXMub10ubGVuZ3RofWZvY3VzKGEpe2lmKCF0aGlzLmlzRm9jdXNlZChhKSlmb3IoYTx0aGlzLnYmJih0aGlzLnY9dGhpcy5vPTApO3RoaXMudit0aGlzLmpbdGhpcy5vXS5sZW5ndGg8PWEmJnRoaXMubzx0aGlzLmoubGVuZ3RoOyl0aGlzLnYrPXRoaXMualt0aGlzLm9dLmxlbmd0aCx0aGlzLm8rPTF9fTtJZGE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWE7dGhpcy5wb3M9MDt0aGlzLm89LTF9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEplYSxhSztKZWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1aSixkPV8uamYuR2EoKCk9PntjLlMoe3RleHQ6Yi50ZXh0LGxvY2F0aW9uOiRKLGFuY2hvcjphLG9mZnNldDpiLm9mZnNldCxzdHlsZTpiLnN0eWxlLGhvdGtleTpiLmhvdGtleX0pO2MubyghMCl9LDQsYi5kZWxheSk7Yy5qKGQpfTthSz1mdW5jdGlvbigpe3ZhciBhPVpKLGI9YS52KCk7YiYmKF8uamYuQWEoYiksYS5qKHZvaWQgMCkpO2EubyghMSl9OwpfLmJLPWZ1bmN0aW9uKGEsYil7dmFyIFtjLGRdPV8uQUMoKCk9PmEoKT8/Yj8uKCk/LnRleHQpO3JldHVybltlPT57dmFyIGY9Xy5OKCgpPT4oe2xvY2F0aW9uOiJib3R0b20iLG9mZnNldDoxNixkZWxheToxLC4uLmI/LigpLHRleHQ6YygpPz8iIn0pLHZvaWQgMCwiSUpVMzhkIik7Xy5uRSgoKT0+e3ZhciBsPWYoKTtfLkVBKCgpPT57Xy5qZi5HYSgoKT0+e1pKLm5vdGlmeShlLGwpfSw0KX0pfSwiV2xzZ1pjIik7dmFyIGg9KCk9PntKZWEoZSxmKCkpfSxrPSgpPT57YUsoKX07ZS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixoKTtlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixoKTtlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGspO2UuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsayk7ZS5hZGRFdmVudExpc3RlbmVyKCJ0YXAiLGspO18uWXUoKCk9PntlLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGgpO2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsCmspO2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGgpO2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsayk7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJ0YXAiLGspO2FLKCl9KX0sZF19O3ZhciAkSj17bGVmdDoiMHB4IixyaWdodDoiYXV0byIsdG9wOiItMTAwcHgiLGJvdHRvbToiYXV0byJ9O3ZhciBaSj1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXtbdGhpcy5zdGF0ZSx0aGlzLlNdPV8uSih2b2lkIDAsdm9pZCAwLCJMZmt4b2YiKTtbdGhpcy5zaG93LHRoaXMub109Xy5KKCExLHZvaWQgMCwiazFGa29lIik7W3RoaXMudix0aGlzLmpdPV8uSih2b2lkIDAsdm9pZCAwLCJVbDhNSWMiKX1ub3RpZnkoYSxiKXt0aGlzLnN0YXRlKCk/LmFuY2hvcj09PWEmJnRoaXMuUyh7dGV4dDpiLnRleHQsbG9jYXRpb246JEosYW5jaG9yOmEsb2Zmc2V0OmIub2Zmc2V0LHN0eWxlOmIuc3R5bGUsaG90a2V5OmIuaG90a2V5fSl9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5jSz1uZXcgXy5JKCJ0b29sdGlwVmlld01vZGVsIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uZEs9ZnVuY3Rpb24oYSxiKXtfLmFFKGEsey4uLmIsUHA6ITB9KX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBUYmE7VGJhPWZ1bmN0aW9uKGEsYil7dmFyIFtjLGRdPV8uSighMSx2b2lkIDAsIm1OeXd6YyIpLGU9ITEsZixoPWs9PntpZihmKXJldHVybiBfLksoZix7Li4ua30pO2lmKCFlKXtsZXQgbD1hKCk7ZT0hMDtpZihsIGluc3RhbmNlb2YgUHJvbWlzZSl7bGV0IG09Xy5hRDttPy5zdSgpO2wudGhlbihuPT57Zj1uO2QoITApO20/LkhyKCl9KS5jYXRjaChuPT57bT8uSHIoKTtpZihiPy5kZWJ1Z05hbWUpe3ZhciBwPW5ldyBfLlhqKCJmYWlsZWQgdG8gbG9hZCBjaHVuayIsYi5kZWJ1Z05hbWUsbj8udG9TdHJpbmc/LigpKTtfLkdwKHApfWVsc2UgXy5HcChuKTt0aHJvdyBuO30pfWVsc2UgcmV0dXJuIGY9bCxfLksoZix7Li4ua30pfXJldHVybiBfLksoXy5PLHtBOmMsdGhlbjooKT0+Xy5LKGYsey4uLmt9KX0pfTtfLmJELnNldChoLGEpO3JldHVybiBofTtfLmNEPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFRiYShhLGI/e2RlYnVnTmFtZTpifTp2b2lkIDApfTtfLkpEPW5ldyBfLlZzKCJDSFVOS19SRUdJU1RSWV9UT0tFTiIpO18uYkQ9bmV3IFdlYWtNYXA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uZUs9bmV3IF8uVnMoIkxJR0hUX0VGRkVDVF9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgS2VhO18uZks9ZnVuY3Rpb24oYSl7aWYoYSl7dmFyIGI9IiI7Zm9yKGxldCBjIG9mIEtlYSlpZihhLmVuZHNXaXRoKGMpKXtiPWEuc2xpY2UoMCwtYy5sZW5ndGgpO2JyZWFrfWlmKGImJihhPU51bWJlcihiKSwhaXNOYU4oYSkpKXJldHVybiBhfX07S2VhPVsicmVtIiwicHgiLCJtcyIsIiUiLCJzIl07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBLZGEsUkg7Xy5RSD1mdW5jdGlvbihhKXt2YXIgYj1fLlBIKCk7cmV0dXJuIEtkYShhLGIpfTtfLlBIPWZ1bmN0aW9uKCl7dmFyIGE9Xy55KCkucmVzb2x2ZShfLkluKFJIKSksW2IsY109Xy5KKGEsdm9pZCAwLCJ6TElZUmMiKTthfHxfLll0KFJILGMpO3JldHVybiBifTtLZGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5OKCgpPT57dmFyIGM9YSgpO3JldHVybiBjP2IoKT8uKGMpOnZvaWQgMH0sdm9pZCAwLCJlUXhobWIiKX07Ukg9bmV3IF8uVnMoIlNFTUFOVElDX0xBWU9VVF9SRVNPTFZFUl9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmlLPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiT3RLU0plIik7cmV0dXJuIF8uVUN9O18uaks9Xy5jRCgoKT0+Xy5pSygpLCJ0b3VjaEZlZWRiYWNrU2hhcGUiKTtfLll0KF8uSkQsYT0+e2EuSigidG91Y2hGZWVkYmFja1NoYXBlIiwiT3RLU0plIixfLmlLKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIga0ssTmVhLGxLLFBlYSxtSyxRZWEsUmVhLG5LLHBLLFZlYSxXZWEsWGVhLFllYTtrSz1mdW5jdGlvbihhKXt2YXIgYj1bXTtmb3IobGV0IFtjLGRdb2YgYS5qLmVudHJpZXMoKSliLnB1c2goe2VsZW1lbnQ6YyxQeTpkfSk7YS52KGIpfTtOZWE9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7ZD0wfXZhciBkPTA7cmV0dXJuIGZ1bmN0aW9uKGUpe2R8fChkPV8udS5zZXRUaW1lb3V0KGMsYiksYS5hcHBseSh2b2lkIDAsYXJndW1lbnRzKSl9fTtsSz1mdW5jdGlvbihhKXtyZXR1cm4haXNOYU4oTnVtYmVyKGEpKSYmIS9eW1xzXHhhMF0qJC8udGVzdChhKX07ClBlYT1mdW5jdGlvbihhLGIsYyxkLGUsZixoKXtjPW5ldyBBbmltYXRpb24obmV3IEtleWZyYW1lRWZmZWN0KGEsW3t0cmFuc2Zvcm06InRyYW5zbGF0ZVkoMHB4KSJ9LHt0cmFuc2Zvcm06YHRyYW5zbGF0ZVkoJHsoZj9tSyhiLGMsZCxlKTpkPy0xOjEpKmh9cHgpYH1dLE9lYSksZG9jdW1lbnQudGltZWxpbmUpO2I/KGEuc3R5bGUuZGlzcGxheT0iIixjLm9uZmluaXNoPW51bGwpOmMub25maW5pc2g9KCk9PnthLnN0eWxlLmRpc3BsYXk9Im5vbmUifTtjLnBsYXkoKTtyZXR1cm4gY307bUs9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9TnVtYmVyKGEpKzEwO2I/YT8oYT1OdW1iZXIoYSksYj1OdW1iZXIoYiksYz1jP2I8YT9lOmUrMTA6YjxhP2UtMTA6ZSk6Yz1jPzMwOjA6Yz1hPT09IjAiP2U6Yz9lLTEwOmUrMTA7cmV0dXJuIGQtY307ClFlYT1mdW5jdGlvbihhLGIpe3N3aXRjaChhKXtjYXNlICJtb25vIjpzd2l0Y2goYil7Y2FzZSAiZmlsbGVkIjpyZXR1cm4gMTtjYXNlICJ0b25hbCI6cmV0dXJuIDM7Y2FzZSAib3V0bGluZSI6cmV0dXJuIDU7ZGVmYXVsdDpyZXR1cm4gMH1jYXNlICJtb25vLWludmVyc2UiOnN3aXRjaChiKXtjYXNlICJmaWxsZWQiOnJldHVybiAyO2Nhc2UgInRvbmFsIjpyZXR1cm4gNDtjYXNlICJvdXRsaW5lIjpyZXR1cm4gNjtkZWZhdWx0OnJldHVybiAwfWRlZmF1bHQ6cmV0dXJuIDB9fTsKUmVhPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGgpe3ZhciB7ZGlzYWJsZWQ6ayxpY29uUG9zaXRpb246bCxzdHlsZTptLGZvY3VzZWQ6bix1c2VPdXRsaW5lZEljb246cCxBYzpyfT1uSyhhKSx0PSgpPT4hIUEoKSYmbCgpPT09Imljb24tb25seSIsdj0oKT0+ISFBKCkmJmwoKT09PSJpY29uLW9ubHktNDAiLHo9KCk9PiEhQSgpJiZsKCk9PT0iaWNvbi13aXRoLWxhYmVsIixFPSgpPT4oaygpPyJkaXNhYmxlZCI6YSgpLnN0YXRlKT09PSJkaXNhYmxlZCJ8fGsoKSxBPSgpPT4hIWJ8fCEhZD8uKCl8fCEhcj8uKCksRj0oKT0+Xy54KCJhbmltYXRlX2ljb25fZGlzYWJsZWRfa2lsbHN3aXRjaCIpP2g/LigpOmg/LigpJiYhRSgpLEM9Xy5QSCgpLEc9KCk9Pl8ub0soYSgpLCEwLEMsYSgpLmlnbm9yZUljb25TaXplT3ZlcnJpZGUpO3JldHVybnt0eXBlOigpPT5tKCk9PT0iY2FsbC10by1hY3Rpb24taW52ZXJzZSI/InRleHQiOm0oKT09PSJvdmVybGF5LWRhcmsiJiZhKCkudHlwZSE9PSJmaWxsZWQiJiYKYSgpLnR5cGUhPT0idG9uYWwiPyJ0b25hbCI6YSgpLnR5cGUsdG46KCk9PihuKCl8fGY/LigpKSYmIWsoKSxJbDooKT0+ISFBKCkmJmwoKT09PSJsZWFkaW5nIixLbDooKT0+ISFBKCkmJmwoKT09PSJ0cmFpbGluZyIsSmw6KCk9PiEhQSgpJiYhKCFjJiYhZT8uKCkpJiZsKCk9PT0ibGVhZGluZy10cmFpbGluZyIsRXc6dCxGdzp2LEd3OnosaWNvbkJ1dHRvbjooKT0+dCgpfHx2KCl8fHooKSxqaTpFLHZ6OigpPT4hYSgpLmlnbm9yZUljb25TaXplT3ZlcnJpZGUmJnBLKGEoKSxBKCkpLG14OmI/YjooKT0+Xy5LKF8uRUUsbnVsbCxfLksoXy5DRSx7d2hlbjpyfSwoKT0+Xy5LKCJkaXYiLHtzdHlsZTpfLklFKHt3aWR0aDooKT0+YCR7RygpfXB4YCxoZWlnaHQ6KCk9PmAke0coKX1weGB9KSwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sXy5LKF8uVyx7ZGF0YTpyfSx7YW5pbWF0ZWRBc3NldFZpZXdNb2RlbDooe2RhdGE6RH0pPT5fLksoXy5xSyx7ZGF0YTpELHNuOiEwfSl9KSkpLF8uSyhfLkRFLApudWxsLCgpPT5fLksoXy5NRCx7aWNvbjpkLFpwOigpPT5hKCkuY3VzdG9tQ29sb3JzPy5tSixzaXplOkcsYWN0aXZlOigpPT5hKCkudG9nZ2xlZCYmIXA/LigpLGFnOigpPT57YSgpfSxHZTpGfSkpKSxhQTpjP2M6KCk9Pl8uSyhfLk1ELHtpY29uOmUsc2l6ZTpHLGFjdGl2ZTooKT0+YSgpLnRvZ2dsZWQmJiFwPy4oKSxhZzooKT0+e2EoKX19KX19OwpuSz1mdW5jdGlvbihhKXtyZXR1cm57c2l6ZTooKT0+YSgpLnNpemUsc3R5bGU6KCk9PmEoKS5zdHlsZSxmb2N1c2VkOigpPT5hKCkuZm9jdXNlZCxkaXNhYmxlZDooKT0+YSgpLmRpc2FibGVkLG9uVGFwOmI9PmEoKS5vblRhcD8uKGIpLG9pOigpPT5hKCkub2ksdWM6KCk9PmEoKS51YyxjdXN0b21Db2xvcnM6KCk9PmEoKS5jdXN0b21Db2xvcnMsc2VnbWVudGVkUG9zaXRpb246KCk9PmEoKS5zZWdtZW50ZWRQb3NpdGlvbix0b2dnbGVkOigpPT5hKCkudG9nZ2xlZCx0b2dnbGVhYmxlOigpPT5hKCkudG9nZ2xlYWJsZSxhY2Nlc3NpYmlsaXR5TGFiZWw6KCk9PmEoKS5hY2Nlc3NpYmlsaXR5TGFiZWwsSGU6KCk9PmEoKS5IZSxvblRvZ2dsZTpiPT5hKCkub25Ub2dnbGU/LihiKSxpY29uUG9zaXRpb246KCk9PmEoKS5pY29uUG9zaXRpb24sb25lT2ZmQ3VzdG9tVGV4dFdyYXA6KCk9PmEoKS5vbmVPZmZDdXN0b21UZXh0V3JhcCxJZjooKT0+YSgpLklmLEFwOigpPT5hKCkuQXAsdG9vbHRpcFRleHQ6KCk9PgphKCkudG9vbHRpcFRleHQsRG46KCk9PmEoKS5EbixhcmlhSGlkZGVuOigpPT5hKCkuYXJpYUhpZGRlbixhcmlhRXhwYW5kZWQ6KCk9PmEoKS5hcmlhRXhwYW5kZWQsdGFiSW5kZXg6KCk9PmEoKS50YWJJbmRleCxidXR0b25UZXh0OigpPT5hKCkuYnV0dG9uVGV4dCxXYTooKT0+YSgpLldhLGFiOigpPT5hKCkuYWIsb25DbGlja1JhdGVMaW1pdE1zOigpPT5hKCkub25DbGlja1JhdGVMaW1pdE1zLG9uSG92ZXI6Yj0+YSgpLm9uSG92ZXI/LihiKSxtaWRkbGVncm91bmRBc3NldDooKT0+YSgpLm1pZGRsZWdyb3VuZEFzc2V0LEFjOigpPT5hKCkuQWMsZGlzYWJsZUxpZ2h0U2hhcGU6KCk9PmEoKS5kaXNhYmxlTGlnaHRTaGFwZSx1c2VPdXRsaW5lZEljb246KCk9PmEoKS51c2VPdXRsaW5lZEljb259fTsKcEs9ZnVuY3Rpb24oYSxiKXtiPShhLmljb25Qb3NpdGlvbj09PSJpY29uLW9ubHkifHxhLmljb25Qb3NpdGlvbj09PSJpY29uLW9ubHktNDAifHxhLmljb25Qb3NpdGlvbj09PSJpY29uLXdpdGgtbGFiZWwiKSYmYjtyZXR1cm4hYS5zZWdtZW50ZWRQb3NpdGlvbiYmYiYmYS5zaXplPT09IlMifTsKXy5vSz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1jKCk7aWYoXy54KCJ3ZWJfYnV0dG9uX2ljb25fc2l6ZV9leHBlcmltZW50Iikpe2E6e2M9Xy5mSyhlPy4oU2VhKSk/PzEyO3ZhciBmPV8uZksoZT8uKFRlYSkpPz8xODtlPV8uZksoZT8uKHJLKSk/PzI0O2xldCBoPWEuaWNvblBvc2l0aW9uPT09Imljb24tb25seSImJiFhLnNlZ21lbnRlZFBvc2l0aW9ufHxhLmljb25Qb3NpdGlvbj09PSJpY29uLW9ubHktNDAifHxhLmljb25Qb3NpdGlvbj09PSJpY29uLXdpdGgtbGFiZWwiO3N3aXRjaChhLnNpemUpe2Nhc2UgIlhTIjphPWM7YnJlYWsgYTtjYXNlICJTIjphPSFkJiZwSyhhLGIpP2U6ZjticmVhayBhO2Nhc2UgIk0iOmE9aD9lOmY7YnJlYWsgYTtkZWZhdWx0OmE9ZX19cmV0dXJuIGF9Yz1fLmZLKGU/LihVZWEpKT8/MTY7Zj1fLmZLKGU/LihySykpPz8yNDtzd2l0Y2goYS5zaXplKXtjYXNlICJYUyI6cmV0dXJuIGM7Y2FzZSAiUyI6cmV0dXJuIWQmJnBLKGEsYik/ZjpjO2RlZmF1bHQ6cmV0dXJuIGZ9fTsKVmVhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJmaWxsZWQiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQiO2Nhc2UgIm91dGxpbmUiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lIjtjYXNlICJ0b25hbCI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsIjtkZWZhdWx0OnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0In19OwpXZWE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgImNhbGwtdG8tYWN0aW9uIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uIjtjYXNlICJjYWxsLXRvLWFjdGlvbi1vdmVybGF5IjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheSI7Y2FzZSAibW9ubyI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8iO2Nhc2UgIm92ZXJsYXkiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5IjtjYXNlICJvdmVybGF5LWRhcmsiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyayI7Y2FzZSAiY2FsbC10by1hY3Rpb24taW52ZXJzZSI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbkludmVyc2UiO2Nhc2UgIm1vbm8taW52ZXJzZSI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlIjtjYXNlICJicmFuZC1ncmFkaWVudCI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQiOwpjYXNlICJnZW4tYWktZ3JhZGllbnQiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50IjtjYXNlICJyYWlzZWQiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRSYWlzZWQiO2RlZmF1bHQ6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ifX07WGVhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJYUyI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcyI7Y2FzZSAiUyI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTIjtjYXNlICJMIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwiO2Nhc2UgIlhMIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsIjtkZWZhdWx0OnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTSJ9fTsKWWVhPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57dmFyIGM9Xy5oSygpO18ubkUoKCk9PntiJiYoYSgpP2Muai5zZXQoYix2b2lkIDApOmMuai5kZWxldGUoYiksa0soYykpfSwib0dRY2ljIik7Xy5ZdSgoKT0+e2Muai5kZWxldGUoYik7a0soYyl9KX19O18udEs9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJuTzVkVGQiKTtyZXR1cm4gXy5ZSn07Xy5xSz1fLmNEKCgpPT5fLnRLKCksImFuaW1hdGVkQXNzZXRWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiYW5pbWF0ZWRBc3NldFZpZXdNb2RlbCIsIm5PNWRUZCIsXy50Syl9KTt2YXIgT2VhPXtkdXJhdGlvbjoxRTMsZWFzaW5nOiJlYXNlIixmaWxsOiJmb3J3YXJkcyJ9LHVLPV8uTChhPT57dmFyIGI9Xy51RSgiYW5pbWF0ZWQtcm9sbGluZy1jaGFyYWN0ZXIiKSxjPXZvaWQgMCxkPV8uTigoKT0+bEsoYS5KYz8uKCkpfHxsSyhhLnhlPy4oKSksdm9pZCAwLCJxU0REOWQiKSxbZSxmXT1fLkooMCx2b2lkIDAsIlNJZ0tEZCIpO18ub0YoKCk9PntpZih3aW5kb3cuUmVzaXplT2JzZXJ2ZXImJl8ueCgid2ViX2ZpeF9yb2xsaW5nX251bWJlcnNfem9vbV9zYWZhcmkiKSl7bGV0IGg9bmV3IF8uV3QoKCk9Pnt2YXIgbD1NYXRoLnJvdW5kKChiLnZhbHVlLnF1ZXJ5U2VsZWN0b3IoImRpdiIpPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ/PzApKjEwMCkvMTAwO2wmJmYobCl9LDUwMCksaz1uZXcgUmVzaXplT2JzZXJ2ZXIoKCk9PntoLnYoKX0pO2sub2JzZXJ2ZShiLnZhbHVlKTtfLll1KCgpPT57ay5kaXNjb25uZWN0KCk7aC5kaXNwb3NlKCl9KX19KTtfLm5FKCgpPT4Ke3ZhciBoPV8ueCgid2ViX2ZpeF9yb2xsaW5nX251bWJlcnNfem9vbV9zYWZhcmkiKT9lOmEuQmg7aWYoaCgpKXtjPy5jYW5jZWwoKTtpZihkKCkpe3ZhciBrPWEueGU/LigpP051bWJlcihhLnhlKCkpKzEwOmEuRWQoKT8wOjMwO2EueGI/LigpfHwoay09bUsoYS5KYz8uKCksYS54ZT8uKCksYS5FZCgpLGspKX1lbHNlIGlmKGs9YS5FZCgpPzA6MiwhYS54Yj8uKCkpe3ZhciBsPWEuRWQoKT8tMToxO2stPWx9Yi52YWx1ZS5zdHlsZS5tYXJnaW5Ub3A9YC0ke2sqaCgpfXB4YDthLnhiPy4oKT9jPVBlYShiLnZhbHVlLGEuSmM/LigpLGEueGU/LigpLGEuRWQoKSxrLGQoKSxoKCkpOmIudmFsdWUuc3R5bGUuZGlzcGxheT1hLkpjPy4oKT8iIjoibm9uZSJ9fSwiTko0Z0EiKTtyZXR1cm4gXy5LKCJhbmltYXRlZC1yb2xsaW5nLWNoYXJhY3RlciIse2VsOmIsY2xhc3M6ImFuaW1hdGVkUm9sbGluZ0NoYXJhY3Rlckhvc3QifSxfLksoXy5PLHtBOmQsdGhlbjooKT0+Xy5LKFplYSxudWxsKSxXOigpPT4KXy5LKCRlYSx7SmM6YS5KY30pfSkpfSwiZ2EiKTt1Sy5pZG9tQ29tcGF0PSEwO3ZhciBaZWE9Xy5MKCgpPT57dmFyIGE9W107Zm9yKGxldCBiPTE7YjwzMDtiKyspYS5wdXNoKF8uSygiZGl2IixudWxsLGIlMTApKTtyZXR1cm4gXy5LKF8uSUIsbnVsbCxfLksoImRpdiIsbnVsbCwiXHUwMGEwIiksYSxfLksoImRpdiIsbnVsbCwiXHUwMGEwIikpfSwiaGEiKSwkZWE9Xy5MKCh7SmM6YX0pPT5fLksoXy5JQixudWxsLF8uSygiZGl2IixudWxsLCJcdTAwYTAiKSxfLksoXy5PLHtBOigpPT4hYT8uKCl8fC9eW1xzXHhhMF0qJC8udGVzdChhPy4oKSksdGhlbjooKT0+Xy5LKCJkaXYiLG51bGwsIlx1MDBhMCIpLFc6KCk9Pl8uSygiZGl2IixudWxsLGEpfSksXy5LKCJkaXYiLG51bGwsIlx1MDBhMCIpKSwiaWEiKTt2YXIgdks9Xy5MKGE9Pnt2YXIgYj12b2lkIDAsYz12b2lkIDA7Xy5uRSgoKT0+e2I9YS5YYigpO2M9YS5udW1iZXJWYWx1ZT8uKCl9LCJyN3RxUWQiKTt2YXIgZD1fLk4oKCk9PntpZighYS5YYigpKXJldHVybltdO3ZhciBlPWEuUXA/LigpfHwhY3x8IWEubnVtYmVyVmFsdWU/LigpfHxjPGEubnVtYmVyVmFsdWUoKSxmPWEuWGIoKSxoPWEuZ2g/LigpP2EuaGVpZ2h0UHgoKSphLmdoKCk6YS5oZWlnaHRQeCgpLGs9ISFhLnhiPy4oKSxsPVtdLG09MCxuPTAscD0oYj9iLnJlcGxhY2UoL1xEL2csIiIpLmxlbmd0aDowKS0oZj9mLnJlcGxhY2UoL1xEL2csIiIpLmxlbmd0aDowKSxyPWI/Yi5zcGxpdCgvKFxkKS8pLmZpbHRlcihCb29sZWFuKTpbXTtmb3IoZj1mLnNwbGl0KC8oXGQpLykuZmlsdGVyKEJvb2xlYW4pO3A8MDspe3ZhciB0PWZbbl07bC5wdXNoKHtKYzp0LEVkOmUsQmg6aCx4YjprfSk7bisrO2xLKHQpJiZwKyt9Zm9yKDttPHA7KXQ9clttXSxsLnB1c2goe3hlOnQsRWQ6ZSwKQmg6aCx4YjprfSksbSsrLGxLKHQpfHxwKys7Zm9yKDtuPGYubGVuZ3RoOylwPWZbbl0sdD1yW21dLGxLKHApPT09bEsodCk/KG4rKyxtKyspOmxLKHApPyhtKysscD12b2lkIDApOmxLKHQpJiYobisrLHQ9dm9pZCAwKSxsLnB1c2goe0pjOnAseGU6dCxFZDplLEJoOmgseGI6a30pO3JldHVybiBsfSx2b2lkIDAsIndtbkhSIik7cmV0dXJuIF8uSygieXQtYW5pbWF0ZWQtcm9sbGluZy1udW1iZXIiLHtjbGFzczoiYW5pbWF0ZWRSb2xsaW5nTnVtYmVySG9zdCIsc3R5bGU6KCk9PmEuWGIoKT9bYGhlaWdodDogJHthLmdoPy4oKT9hLmhlaWdodFB4KCkqYS5naCgpOmEuaGVpZ2h0UHgoKX1weDtgLGBsaW5lLWhlaWdodDogJHthLmhlaWdodFB4KCl9cHg7YF0uam9pbigiICIpOiIiLGRpcjoibHRyIiwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sXy5LKF8uZ0cse3BhOmQsdGI6IklOREVYIn0sZT0+Xy5LKHVLLHtKYzooKT0+ZSgpLkpjLHhlOigpPT5lKCkueGUsQmg6KCk9PmUoKS5CaCxFZDooKT0+CmUoKS5FZCx4YjooKT0+ZSgpLnhifSkpKX0sImthIik7dksuaWRvbUNvbXBhdD0hMDt2YXIgYWZhPVsibW9ubyIsIm1vbm8taW52ZXJzZSIsIm92ZXJsYXkiXSxiZmE9WyJmaWxsZWQiXTt2YXIgd0s9e2N1cGNha2U6MS41LGRvbnV0OjEuNixlY2xhaXI6Mixmcm95bzoyLjIsZ2luZ2VyYnJlYWQ6Mi4zLGhvbmV5Y29tYjozLCJpY2UgY3JlYW0gc2FuZHdpY2giOjQsamVsbHliZWFuOjQuMSxraXRrYXQ6NC40LGxvbGxpcG9wOjUuMSxtYXJzaG1hbGxvdzo2LG5vdWdhdDo3LjF9LHhLO2E6e3ZhciB5Sz1fLmJjKCk7eUs9eUsudG9Mb3dlckNhc2UoKTtpZih5Sy5pbmRleE9mKCJhbmRyb2lkIikhPS0xKXt2YXIgeks9eUsubWF0Y2goL2FuZHJvaWRccyooXGQrKFwuXGQrKT8pW147fCldKls7KV0vKTtpZih6Syl7bGV0IGE9cGFyc2VGbG9hdCh6S1sxXSk7aWYoYTwxMDApe3hLPWE7YnJlYWsgYX19dmFyIEFLPXlLLm1hdGNoKCIoIitPYmplY3Qua2V5cyh3Sykuam9pbigifCIpKyIpIik7eEs9QUs/d0tbQUtbMF1dOjB9ZWxzZSB4Sz12b2lkIDB9Xy5CSz14Sz49MDt2YXIgQ0ssRks7e3ZhciBESz1fLmJjKCk7bGV0IGE9REsubWF0Y2goL1woKGlQYWR8aVBob25lfGlQb2QpKCBTaW11bGF0b3IpPzsvKTtpZighYXx8YS5sZW5ndGg8MilDSz12b2lkIDA7ZWxzZXt2YXIgRUs9REsubWF0Y2goL1woKGlQYWR8aVBob25lfGlQb2QpKCBTaW11bGF0b3IpPzsgKFU7ICk/Q1BVIChpUGhvbmUgKT9PUyAoXGQrX1xkKVtfIF0vKTtDSz1FSyYmRUsubGVuZ3RoPT09Nj9OdW1iZXIoRUtbNV0ucmVwbGFjZSgiXyIsIi4iKSk6MH19Rks9Q0s7Xy5HSz1GSz49MDt2YXIgVWVhPXt5dFN5c01lYXN1cmVtZW50UmVmZXJlbmNlOiJZVF9TWVNfTUVBU1VSRU1FTlRfUkVGRVJFTkNFX0lDT05fU0laRV9DT05ERU5TRUQifSxySz17eXRTeXNNZWFzdXJlbWVudFJlZmVyZW5jZToiWVRfU1lTX01FQVNVUkVNRU5UX1JFRkVSRU5DRV9JQ09OX1NJWkVfQ09NRk9SVEFCTEUifSxTZWE9e3l0U3lzTWVhc3VyZW1lbnRSZWZlcmVuY2U6IllUX1NZU19NRUFTVVJFTUVOVF9SRUZFUkVOQ0VfSUNPTl9TSVpFX01JTkkifSxUZWE9e3l0U3lzTWVhc3VyZW1lbnRSZWZlcmVuY2U6IllUX1NZU19NRUFTVVJFTUVOVF9SRUZFUkVOQ0VfSUNPTl9TSVpFX0NPTVBBQ1QifSxjZmE9Xy5MKGE9Pl8uSyhfLk8se0E6YS51Yyx0aGVuOmI9Pl8uSyhfLm5ILHt1YzpiLGRpc2FibGVkOmEuZGlzYWJsZWQsY2xhc3NOYW1lOmEuY2xhc3NOYW1lLHN0eWxlOmEuc3R5bGUsdGl0bGU6YS50aXRsZSxhcmlhTGFiZWw6YS5hcmlhTGFiZWwsSGU6YS5IZSxhcmlhQ3VycmVudDooKT0+YS50b2dnbGVhYmxlPy4oKSYmCmEudG9nZ2xlZD8uKCksYXJpYUV4cGFuZGVkOmEuYXJpYUV4cGFuZGVkLHJlZjphLnJlZixvbkhvdmVyOmEub25Ib3Zlcn0sYS5jaGlsZHJlbiksVzooKT0+Xy5LKCJidXR0b24iLHtlbDpfLnJGKGEucmVmKSwib246Y2xpY2siOmEub25DbGljaywib246bW91c2VlbnRlciI6YS5vbkhvdmVyLGNsYXNzOmEuY2xhc3NOYW1lLHRpdGxlOmEudGl0bGUsc3R5bGU6YS5zdHlsZSxkaXNhYmxlZDphLmRpc2FibGVkLCJhcmlhLXByZXNzZWQiOigpPT5hLnRvZ2dsZWFibGU/LigpPyEhYS50b2dnbGVkPy4oKTp2b2lkIDAsImFyaWEtbGFiZWwiOmEuYXJpYUxhYmVsLCJhcmlhLWRlc2NyaWJlZGJ5IjphLkhlLCJhcmlhLWRpc2FibGVkIjphLmppLCJhcmlhLWhpZGRlbiI6YS5hcmlhSGlkZGVuLCJhcmlhLWV4cGFuZGVkIjphLmFyaWFFeHBhbmRlZCx0YWJpbmRleDooKT0+YS50YWJJbmRleD8uKCk/PygoXy5Pa3x8Xy5yeigpKSYmXy54KCJ3ZWJfZW5hYmxlX3NhZmFyaV9idXR0b25fdGFiaW5kZXhfZml4Iik/CjA6dm9pZCAwKX0sYS5jaGlsZHJlbil9KSwibGEiKSxkZmE9Xy5MKCh7ZGF0YTphLElsOmIsSmw6YyxLbDpkLGljb25CdXR0b246ZSxpeDpmLFp6OmgsaWNvbjprLHNlY29uZGFyeUljb246bCxVQTptLEp5Om4samk6cCxkaXNhYmxlTGlnaHRTaGFwZTpyfSk9Pnt2YXIgdD1fLnkoKS5yZXNvbHZlKF8uSW4oXy5lSykpLHY9Xy5JRSh7Y29sb3I6KCk9PmEoKS5jdXN0b21Db2xvcnM/Lmljb25Db2xvcn0pO3JldHVybiBfLksoSEsse2NsYXNzTmFtZToiIixzdHlsZToiZGlzcGxheTogaW5oZXJpdDsganVzdGlmeS1jb250ZW50OiBjZW50ZXIifSxfLksoXy5PLHtkZWJ1Z0luc3RhbmNlOiJWNHoxVWMiLEE6KCk9PmsmJihiKCl8fGMoKXx8ZT8uKCkpLHRoZW46KCk9Pl8uSyhISyxudWxsLF8uSygiZGl2Iix7Y2xhc3M6ZixzdHlsZTp2LCJhcmlhLWhpZGRlbiI6InRydWUifSxrPy4oKSkpfSksXy5LKF8uTyx7ZGVidWdJbnN0YW5jZToib2szYnRiIixBOigpPT4oYSgpLmJ1dHRvblRleHR8fAphKCkuYWJ8fGEoKS5XYSkmJiFlPy4oKSx0aGVuOigpPT5fLksoSEssbnVsbCxfLksoSUsse2NsYXNzTmFtZTptLGljb25Qb3NpdGlvbjooKT0+YSgpLmljb25Qb3NpdGlvbix0ZXh0OigpPT5hKCkuYnV0dG9uVGV4dCxvbmVPZmZDdXN0b21UZXh0V3JhcDooKT0+YSgpLm9uZU9mZkN1c3RvbVRleHRXcmFwLFdhOigpPT5hKCkuV2EsYWI6KCk9PmEoKS5hYn0pKX0pLF8uSyhfLk8se2RlYnVnSW5zdGFuY2U6IkRPNVJ6IixBOmQsdGhlbjooKT0+Xy5LKEhLLG51bGwsXy5LKCJkaXYiLHtjbGFzczpmLHN0eWxlOnZ9LGs/LigpKSl9KSxfLksoXy5PLHtkZWJ1Z0luc3RhbmNlOiJibm9qU2MiLEE6Yyx0aGVuOigpPT5fLksoSEssbnVsbCxfLksoImRpdiIse2NsYXNzOmgsc3R5bGU6dn0sbD8uKCkpKX0pLF8uSyhfLk8se2RlYnVnSW5zdGFuY2U6IkhOM2thZCIsQTooKT0+IWEoKS5kaXNhYmxlZCYmISh0Py5XbyYmIXA/LigpKSx0aGVuOigpPT5fLksoXy5qSyx7bW9kZWw6KCk9Pnt2YXIgej0KYSgpO3JldHVybntjb2xvcjp6LnN0eWxlPT09Im92ZXJsYXktZGFyayI/NDp6LnN0eWxlPT09Im92ZXJsYXkiP3oudHlwZT09PSJmaWxsZWQiPzQ6Mzp6LnR5cGU9PT0iZmlsbGVkInx8ei5zdHlsZT09PSJjYWxsLXRvLWFjdGlvbi1pbnZlcnNlInx8ei5zdHlsZT09PSJtb25vLWludmVyc2UiPzI6MX19fSl9KSxfLksoXy5XLHtkYXRhOigpPT5hKCkubWlkZGxlZ3JvdW5kQXNzZXR9LHthbmltYXRlZEFzc2V0Vmlld01vZGVsOih7ZGF0YTp6fSk9Pl8uSyhfLnFLLHtkYXRhOnosY2xhc3NOYW1lOm4sc246ITB9KX0pLF8uSyhfLk8se0E6KCk9PnQ/Lkl1JiYhcD8uKCkmJiFyPy4oKSx0aGVuOigpPT5fLksoXy55RSx7Y29uZmlnOigpPT57dmFyIHo9YSgpLEU9ei5zdHlsZSxBPXoudHlwZSxGPV8ueSgpLnJlc29sdmUoXy5JbihfLmVLKSk7cmV0dXJue1ZhOlFlYShFLEEpLGprOkY/LlZvJiZBPT09InRvbmFsIixldjp6LmN1c3RvbUNvbG9ycz8uYmFja2dyb3VuZENvbG9yLGR2OnouY3VzdG9tQ29sb3JzPy5ib3JkZXJDb2xvciwKQ0I6Rj8uV299fX0pfSkpfSwibWEiKSxJSz1fLkwoYT0+e3ZhciBiPSgpPT5hLmljb25Qb3NpdGlvbj8uKCk9PT0iaWNvbi13aXRoLWxhYmVsInx8YS5vbmVPZmZDdXN0b21UZXh0V3JhcD8uKCk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6YS5jbGFzc05hbWUsImFyaWEtaGlkZGVuIjooKT0+YS5hcmlhSGlkZGVuPy4oKSYmKCEhYS5hYj8uKCl8fCEhYS5XYT8uKCkpfSxfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5hLmFiPy4oKX0sKCk9Pl8uSyh2Syx7WGI6KCk9PmEuYWIoKS5YYixudW1iZXJWYWx1ZTooKT0+YS5hYigpLm51bWJlclZhbHVlLGhlaWdodFB4OigpPT5hLmFiKCkuaGVpZ2h0UHgsZ2g6KCk9PmEuYWIoKS5naCx4YjooKT0+YS5hYigpLnhiLFFwOigpPT5hLmFiKCkuUXB9KSksXy5LKF8uQ0Use3doZW46KCk9PmEuV2E/LigpfSwoKT0+Xy5LKF8uVix7dGV4dDooKT0+KHsuLi5hLldhKCksbGluZUJyZWFrTW9kZTpiKCk/IkxJTkVfQlJFQUtfTU9ERV9CWV9XT1JEX1dSQVBQSU5HIjoKYS5XYSgpLmxpbmVCcmVha01vZGUsYWxpZ25tZW50OmIoKT8iVEVYVF9BTElHTk1FTlRfQ0VOVEVSIjphLldhKCkuYWxpZ25tZW50fSksdWI6ITAsbm9XcmFwOigpPT4hYigpfSkpLF8uSyhfLkNFLHt3aGVuOigpPT5hLmljb25Qb3NpdGlvbj8uKCk9PT0iaWNvbi13aXRoLWxhYmVsIiYmYS50ZXh0Py4oKX0sKCk9Pl8uSyhfLlYse3RleHQ6KCk9Pih7Y29udGVudDphLnRleHQoKSxsaW5lQnJlYWtNb2RlOiJMSU5FX0JSRUFLX01PREVfQllfV09SRF9XUkFQUElORyIsYWxpZ25tZW50OiJURVhUX0FMSUdOTUVOVF9DRU5URVIifSksdWI6ITAsbm9XcmFwOiExfSkpLF8uSyhfLkRFLG51bGwsKCk9PmEudGV4dCkpKX0sIm5hIiksZWZhPV8uTChhPT5fLksoXy5PLHtkZWJ1Z0luc3RhbmNlOiJrTTdTZ2MiLEE6YS5oYXNMYWJlbCx0aGVuOigpPT5fLksoImxhYmVsIix7Y2xhc3M6YS5jbGFzc05hbWV9LGEuY2hpbGRyZW4sYS50ZXh0Q29udGVudD8uKCkpLFc6KCk9PmEuY2hpbGRyZW59KSwib2EiKSwKSEs9Xy5MKGE9PmEuY2hpbGRyZW4sInBhIik7Xy5KSz1fLkwoKHtkYXRhOmEsaWNvbjpiLGljb25OYW1lOmMsR2U6ZCxzZWNvbmRhcnlJY29uOmUsUXI6ZixYSTpoLGFwOmt9KT0+e18ubUcoKTt2YXIge3NpemU6bCxzdHlsZTptLGRpc2FibGVkOm4sb25UYXA6cCxvaTpyLHVjOnQsY3VzdG9tQ29sb3JzOnYsc2VnbWVudGVkUG9zaXRpb246eix0b2dnbGVkOkUsdG9nZ2xlYWJsZTpBLGFjY2Vzc2liaWxpdHlMYWJlbDpGLG9uVG9nZ2xlOkMsaWNvblBvc2l0aW9uOkcsb25lT2ZmQ3VzdG9tVGV4dFdyYXA6RCxJZjpILEFwOlIsdG9vbHRpcFRleHQ6TSxEbjpTLGFyaWFIaWRkZW46WSxhcmlhRXhwYW5kZWQ6cGEsdGFiSW5kZXg6b2EsYnV0dG9uVGV4dDpVLFdhOmhhLGFiOm1hLG9uQ2xpY2tSYXRlTGltaXRNczp0YSxvbkhvdmVyOlQsbWlkZGxlZ3JvdW5kQXNzZXQ6YmEsZGlzYWJsZUxpZ2h0U2hhcGU6YWF9PW5LKGEpLHt0eXBlOk9hLHRuOkpiLElsOnphLEtsOkxiLEpsOmNjLEV3OmxjLEZ3OlZiLEd3OnRkLGljb25CdXR0b246QmUsCmppOmFkLHZ6Om5zLG14Ok1nLGFBOlpCfT1SZWEoYSxiLGUsYyxmLGgsZCksW2ZmYV09Xy5iSyhNLFMpLExUPXJiPT57cD8uKHJiKTtBKCkmJkM/LihyYil9LE1UPV8uTigoKT0+dGE/LigpLHZvaWQgMCwic2lLeXdiIiksZ2ZhPV8uTigoKT0+TVQoKT9OZWEoTFQsTVQoKSk6TFQsdm9pZCAwLCJ3RFRjTiIpLCRCPV8ueSgpLnJlc29sdmUoXy5JbihfLmVLKSk7Yj1fLk4oKCk9PmJhKCl8fCRCPy5JdSx2b2lkIDAsInpVUVJPZSIpO3ZhciBoZmE9WWVhKCgpPT57dmFyIHJiPW0oKSxhaT1PYSgpO3JldHVybiEhXy55KCkucmVzb2x2ZShfLkluKF8uZUspKT8uVm8mJmFmYS5pbmNsdWRlcyhyYikmJmJmYS5pbmNsdWRlcyhhaSl9KTtyZXR1cm4gXy5LKGVmYSx7Y2xhc3NOYW1lOl8uUCgieXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxIb3N0Iix7eXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxJc092ZXJsYXk6KCk9Pm0oKT09PSJvdmVybGF5Inx8bSgpPT09Im92ZXJsYXktZGFyayJ9KSxoYXNMYWJlbDp0ZCwKdGV4dENvbnRlbnQ6KCk9Pl8uSyhJSyx7dGV4dDpVLGNsYXNzTmFtZToieXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbCIsYXJpYUhpZGRlbjohMCxvbmVPZmZDdXN0b21UZXh0V3JhcDpELGljb25Qb3NpdGlvbjpHLFdhOmhhLGFiOm1hfSl9LF8uSyhjZmEse3VjOnQsY2xhc3NOYW1lOl8uUCgieXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdCIsKCk9PlZlYShPYSgpKSwoKT0+YWQoKT92b2lkIDA6V2VhKG0oKSksKCk9PlhlYShsKCkpLHt5dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZDphZCx5dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOkpiLHl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25UcmFpbGluZzpMYix5dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZzp6YSx5dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nOmNjLHl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmdOb1RleHQ6KCk9PmNjKCkmJiEoVSgpfHxoYSgpKSwKeXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbjooKT0+bGMoKXx8dGQoKSx5dFNwZWNCdXR0b25TaGFwZU5leHRJY29uT25seURlZmF1bHQ6VmIseXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHQ6cix5dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDooKT0+eigpPT09InN0YXJ0Iix5dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQ6KCk9PnooKT09PSJlbmQiLHl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJyaWRlU21hbGxTaXplSWNvbjpucyx5dFNwZWNCdXR0b25TaGFwZU5leHRPbmVPZmZDdXN0b21UZXh0V3JhcENvbnRhaW5lcjpELHl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVUZXh0RWxsaXBzaXM6SCx5dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVCYWNrZHJvcEZpbHRlckV4cGVyaW1lbnQ6KCk9Pnt2YXIgcmI7aWYocmI9IVIoKSkhKHJiPV8uR0smJkZLPj0xNCkmJihyYj1fLkJLKSYmKHJiPV8udS5uYXZpZ2F0b3I/LmRldmljZU1lbW9yeT49CjgpLHJiPXJiPyFfLngoIndlYl9kaXNhYmxlX2JhY2tkcm9wX2ZpbHRlciIpOiExO3JldHVybiByYn0seXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlOigpPT4hISRCPy5XbyYmIWFkKCkseXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlSWNvblNpemU6KCk9Pl8ueCgid2ViX2J1dHRvbl9pY29uX3NpemVfZXhwZXJpbWVudCIpLHl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmc6KCk9Pl8ueCgid2ViX2J1dHRvbl9tYWluc3RhZ2VfcGFkZGluZyIpfSksc3R5bGU6KCk9Pnt2YXIgcmI9digpO2lmKHJiKXt2YXIgYWk9cmIuY29sb3I7dmFyIE5UPXJiLmJhY2tncm91bmRDb2xvcjtyYj1yYi5ib3JkZXJDb2xvcjt2YXIgcHM9IiI7YWkmJihwcys9YGNvbG9yOiAke2FpfTtgKTtOVCYmKHBzKz1gYmFja2dyb3VuZC1jb2xvcjogJHtOVH07YCk7cmImJihwcys9YGJvcmRlci1jb2xvcjogJHtyYn07YCk7YWk9e3N0eWxlOnBzfX1lbHNlIGFpPQp7fTtyZXR1cm4gYWkuc3R5bGV9LG9uQ2xpY2s6cmI9PntnZmEoKShyYil9LG9uSG92ZXI6cmI9PntUPy4ocmIpfSxkaXNhYmxlZDpuLGFyaWFMYWJlbDpGLHRvZ2dsZWFibGU6QSx0b2dnbGVkOkUsdGl0bGU6KCk9PiFrPy4oKSYmTSgpP00oKToiIixqaTphZCxhcmlhSGlkZGVuOlksYXJpYUV4cGFuZGVkOnBhLHRhYkluZGV4Om9hLHJlZjpyYj0+eyRCPy5WbyYmaGZhKHJiKTtrPy4oKSYmZmZhKHJiKX19LF8uSyhkZmEse2RhdGE6YSxJbDp6YSxKbDpjYyxLbDpMYixpY29uQnV0dG9uOkJlLGljb246TWcsVUE6Xy5QKCJ5dFNwZWNCdXR0b25TaGFwZU5leHRCdXR0b25UZXh0Q29udGVudCIse3l0U3BlY0J1dHRvblNoYXBlTmV4dEVsZXZhdGVkQ29udGVudDpifSksaXg6Xy5QKCJ5dFNwZWNCdXR0b25TaGFwZU5leHRJY29uIix7eXRTcGVjQnV0dG9uU2hhcGVOZXh0RWxldmF0ZWRDb250ZW50OmJ9KSxaejpfLlAoInl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb24iLHt5dFNwZWNCdXR0b25TaGFwZU5leHRFbGV2YXRlZENvbnRlbnQ6Yn0pLApzZWNvbmRhcnlJY29uOlpCLEp5OiJ5dFNwZWNCdXR0b25TaGFwZU5leHRNaWRkbGVncm91bmRBc3NldCIsamk6YWQsZGlzYWJsZUxpZ2h0U2hhcGU6YWF9KSkpfSwicmEiKTtfLkpLLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7aWNvbjohMCxzZWNvbmRhcnlJY29uOiEwfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBMZGEsTWRhLE5kYSxPZGE7TGRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5WSC5UZSgpLmdldFN0YXRlKCk7cmV0dXJuIGI/YShjLC4uLmIpOmEoYyl9O18uWEg9ZnVuY3Rpb24oKXtpZihXSClyZXR1cm4gV0g7dmFyIFthLCxiXT1fLkooMCx2b2lkIDAsIk1CMUhiIik7Xy5WSC5UZSgpLnN1YnNjcmliZSgoKT0+e01kYShiKX0pO3JldHVybiBXSD1hfTtNZGE9ZnVuY3Rpb24oYSl7WUh8fChZSD0hMCxQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57YShiPT5iKzEpO1lIPSExfSkpfTtfLlpIPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uVkgucHcoKShhLGIpfTtfLmJJPW5ldyBfLlZzKCJTVEFURV9TVE9SRV9UT0tFTiIpO05kYT1uZXcgXy5WcygiU0VMRUNUX1RPS0VOIik7T2RhPW5ldyBfLlZzKCJESVNQQVRDSF9UT0tFTiIpO3ZhciBXSCxZSDtfLlZIPXtwdzooKT0+Xy55KCkucmVzb2x2ZShfLkluKE5kYSkpPz9MZGEsbXc6KCk9Pl8ueSgpLnJlc29sdmUoXy5JbihPZGEpKT8/Xy5WSC5UZSgpLmRpc3BhdGNoLmJpbmQoXy5WSC5UZSgpKSxUZTooKT0+Xy55KCkucmVzb2x2ZShfLmJJKX07WUg9ITE7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uY0k9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uTigoKT0+e18uWEgoKSgpO3JldHVybiBfLlpIKGEpfSx7ZGVidWdOYW1lOiJkOEI2MmMifSwiREVYa2hkIil9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgaWZhLGpmYSxPSyxOSyxuZmEsUkssb2ZhLHBmYSxUSyxxZmEscmZhLFNLLHNmYSx0ZmEsdWZhLHZmYTtpZmE9ZnVuY3Rpb24oYSxiKXtiLmZvckVhY2goYz0+e3ZhciBkPW51bGw7Yz9kPWMuYXBwbHkobnVsbCxhLmFyZ3MpOihjPUVycm9yKCJyZCIpLGMucGFyYW1zPWEuYWN0aW9uTmFtZSxfLlVpKGMpKTthLnJldHVyblZhbHVlLnB1c2goZCl9KX07amZhPWZ1bmN0aW9uKGEsYixjKXtiLmZvckVhY2goZD0+e3ZhciBlPV8uUkooZCk7ZSYmKGQ9bmV3IF8uT0ooZSwhMCxbZCxjLHZvaWQgMF0pLChlPWEuai5nZXQoZC5hY3Rpb25OYW1lKSkmJmlmYShkLGUpLGQuanx8ZC5yZXR1cm5WYWx1ZS5sZW5ndGghPT0wfHwoZD1uZXcgXy5YaigiVW5oYW5kbGVkIGFjdGlvbiIsZC5hY3Rpb25OYW1lKSxfLldpKGQpKSl9KX07Xy5LSz1mdW5jdGlvbihhKXtyZXR1cm4oYSY0Mjc4MTkwMDgwKT4+PjI0PT09MD9fLmlFKGEsIjEiKTpfLk5EKGEpfTsKXy5NSz1mdW5jdGlvbigpe0xLfHwoTEs9bmV3IGtmYSk7cmV0dXJuIExLfTtPSz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yy5hY3Rpb24sZT1jLmVsZW1lbnQ7ZSYmZCYmKGxmYS5pbmNsdWRlcyhiKXx8Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUJfUkVNSVgifHxhLkQmJmEuRC5BSihlKT9OSyhhLGIsYyk6YS52JiYoYS5vfHwoYS5vPW5ldyBXZWFrTWFwKSxkPWEudi5vYnNlcnZlKGUsKCk9PntOSyhhLGIsYyk7YS5vLmRlbGV0ZShlKX0se1ZiOiEwLHN0YXRlOiJ2aXNpYmxlIn0pLGEuby5zZXQoZSxkKSkpfTtfLlBLPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5CLmdldChiKTtpZihjKXt2YXIgZD1hLmouZ2V0KGMpO2QmJihkZWxldGUgZC5lbGVtZW50LGEuai5zZXQoYyxkKSk7YS5CLmRlbGV0ZShiKTthLnYmJmEubyYmKGM9YS5vLmdldChiKSkmJihhLnYucmYoYyksYS5vLmRlbGV0ZShiKSl9fTsKXy5RSz1mdW5jdGlvbihhLGIsYyl7Xy5QSyhhLGMpO3ZhciBkPWEuai5nZXQoYik7ZHx8KGQ9e30sYS5qLnNldChiLGQpKTtkLmVsZW1lbnQ9YzthLkIuc2V0KGMsYik7T0soYSxiLGQpfTtOSz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yy5hY3Rpb247KGM9Yy5lbGVtZW50KSYmZCYmKGpmYShhLkssW2RdLGMpLGEuai5kZWxldGUoYiksYS5CLmRlbGV0ZShjKSxhLlkuYWRkKGIpKX07Cm5mYT1mdW5jdGlvbihhLGIsYyl7aWYoYyYmYilzd2l0Y2goYyl7Y2FzZSAiQlVUVE9OX0VOVElUWV9TRUxFQ1RPUl9UWVBFX1JFTU9WRV9BRFNfQURfU1RBVEUiOnJldHVybihhPV8uSEgoYSxiKSk/e2lzSGlkZGVuOmEuYWRzU3RhdGU9PT0iQURTX1NUQVRFX05PTkUifHxhLmFkc1N0YXRlPT09IkFEU19TVEFURV9VTktOT1dOIn06e2lzSGlkZGVuOiEwfTtjYXNlICJCVVRUT05fRU5USVRZX1NFTEVDVE9SX1RZUEVfQ0hBVEJPVF9QRU5ESU5HX1JFU1BPTlNFIjpyZXR1cm57aXNIaWRkZW46ITEsaXNEaXNhYmxlZDohIV8ucUEoYS5lbnRpdGllcywieW91Y2hhdFBlbmRpbmdSZXNwb25zZUVudGl0eSIsYik/LmlzUGVuZGluZ1Jlc3BvbnNlfTtjYXNlICJCVVRUT05fRU5USVRZX1NFTEVDVE9SX1RZUEVfQk9PTEVBTl9ESVNBQkxFRCI6cmV0dXJue2lzSGlkZGVuOiExLGlzRGlzYWJsZWQ6ISFfLklIKGEsYik/LnZhbHVlfTtjYXNlICJCVVRUT05fRU5USVRZX1NFTEVDVE9SX1RZUEVfQVNLX1NUVURJT19DT05WRVJTQVRJT05fU1VNTUFSWSI6cmV0dXJuIGE9Cl8ucUEoYS5lbnRpdGllcywiYXNrU3R1ZGlvQ29udmVyc2F0aW9uU3VtbWFyeUVudGl0eSIsYik/LnN0YXRlLGE9PT0iQVNLX1NUVURJT19DT05WRVJTQVRJT05fU1VNTUFSWV9TVEFURV9QRU5ESU5HIj97aXNIaWRkZW46ITEsYXJpYURpc2FibGVkOiEwLGFyaWFCdXN5OiEwLGFjY2Vzc2liaWxpdHlMYWJlbDoiR2VuZXJhdGluZyBzdW1tYXJ5Li4uIixpY29uTmFtZTp2b2lkIDAsQWM6bWZhfTphPT09IkFTS19TVFVESU9fQ09OVkVSU0FUSU9OX1NVTU1BUllfU1RBVEVfVU5SRUFEInx8YT09PSJBU0tfU1RVRElPX0NPTlZFUlNBVElPTl9TVU1NQVJZX1NUQVRFX0ZBSUxFRCI/KGE9YT09PSJBU0tfU1RVRElPX0NPTlZFUlNBVElPTl9TVU1NQVJZX1NUQVRFX1VOUkVBRCIse2lzSGlkZGVuOiExLGFyaWFEaXNhYmxlZDohMCxhY2Nlc3NpYmlsaXR5TGFiZWw6YT8iVW5yZWFkIHN1bW1hcnkiOiJGYWlsZWQgdG8gZ2VuZXJhdGUgc3VtbWFyeSIsaWNvbk5hbWU6IllUSUNPTl9GSUxMX0RPVF9TMjQiLApBYzp2b2lkIDAsLi4uKGEmJntjdXN0b21Db2xvcnM6e2NvbG9yOiJ2YXIoLS15dC1zcGVjLWNhbGwtdG8tYWN0aW9uKSIsaWNvbkNvbG9yOiJ2YXIoLS15dC1zcGVjLWNhbGwtdG8tYWN0aW9uKSJ9fSl9KTp7aXNIaWRkZW46ITB9O2Nhc2UgIkJVVFRPTl9FTlRJVFlfU0VMRUNUT1JfVFlQRV9DT01NRVJDRV9UT0tFTl9CQUxBTkNFIjpyZXR1cm4gYT1fLnFBKGEuZW50aXRpZXMsImNvbW1lcmNlVG9rZW5CYWxhbmNlRW50aXR5IixiKSxhPy5zZXJ2ZXJUb2tlbkJhbGFuY2UhPW51bGw/KGE9TnVtYmVyKGEuc2VydmVyVG9rZW5CYWxhbmNlKSxhPWlzTmFOKGEpP3ZvaWQgMDpTdHJpbmcoYS8xRTYpLHtpc0hpZGRlbjohMSxXYTphP3tjb250ZW50OmF9OnZvaWQgMH0pOntpc0hpZGRlbjohMX07ZGVmYXVsdDpyZXR1cm57aXNIaWRkZW46ITF9fX07ClJLPWZ1bmN0aW9uKGEpe3JldHVybnt0ZXh0OmEudG9vbHRpcFRleHQ/PyIiLGxvY2F0aW9uOm9mYShhLnBsYWNlbWVudCksc3R5bGU6YS5zdHlsZSxob3RrZXk6YS5ob3RrZXl9fTtvZmE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIlRPT0xUSVBfVklFV19NT0RFTF9QTEFDRU1FTlRfQk9UVE9NIjpyZXR1cm4iYm90dG9tIjtjYXNlICJUT09MVElQX1ZJRVdfTU9ERUxfUExBQ0VNRU5UX1RPUCI6cmV0dXJuInRvcCI7Y2FzZSAiVE9PTFRJUF9WSUVXX01PREVMX1BMQUNFTUVOVF9MRUZUIjpyZXR1cm4ibGVmdCI7Y2FzZSAiVE9PTFRJUF9WSUVXX01PREVMX1BMQUNFTUVOVF9SSUdIVCI6cmV0dXJuInJpZ2h0IjtkZWZhdWx0OnJldHVybiJib3R0b20ifX07CnBmYT1mdW5jdGlvbihhLGIpe3ZhciBjPV8uUkQoYT8ub25UYXApLGQ9e307YyYmKGQuYko9KCk9PlNLKGEsYyxiPy52YWx1ZT8udmlzdWFsRWxlbWVudCkpO2Q9Xy5iRSh7Ymg6YS5vblRhcCxxZDohMCxBbzpkfSk7cmV0dXJuIGQ/LmhyZWY/ZDp2b2lkIDB9O1RLPWZ1bmN0aW9uKGEsYixjLGQsZSl7Yz17ckM6Y307Xy5kSyhhLHtmb3JtOntjdXJyZW50RGF0YTpjLHNvdXJjZURhdGE6YyxlbGVtZW50OmIsZXZlbnQ6ZH0sLi4uZX0pfTsKcWZhPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9dm9pZCAwO3JldHVybiBoPT57dmFyIGs9Xy5SRChjP2E/Lm9uRGlzYWJsZWRUYXA6YT8ub25UYXApO2lmKGspaWYoZj1mPz9iPy52YWx1ZSxfLngoIndlYl9idXR0b25fdm1fY2xpY2tfY2xpZW50X3ZlX2tpbGxzd2l0Y2giKSlUSyhrLGYsYSxoKTtlbHNle2xldCBsPVNLKGEsayxmPy52aXN1YWxFbGVtZW50KTtpZihlKXtUSyhrLGUsYSxoLHtjbGlja2VkVmlzdWFsRWxlbWVudDpsLGZvcm06e2VsZW1lbnQ6ZX19KTtyZXR1cm59VEsoayxmLGEsaCx7Y2xpY2tlZFZpc3VhbEVsZW1lbnQ6bH0pfWQmJmQoaCl9fTtyZmE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXZvaWQgMDtyZXR1cm4gZT0+e3ZhciBmPV8uUkQoYT8ub25Ib3Zlcik7ZiYmKGQ9ZD8/Yj8udmFsdWUsYz9USyhmLGMsYSxlLHtmb3JtOntlbGVtZW50OmN9fSk6VEsoZixkLGEsZSkpfX07ClNLPWZ1bmN0aW9uKGEsYixjKXtiPWI/LmNsaWNrVHJhY2tpbmdQYXJhbXM7YT1hPy5sb2dnaW5nRGlyZWN0aXZlcz8uY2xpZW50VmVTcGVjPy51aVR5cGU7aWYoYyYmYSYmIWIpcmV0dXJuIGN9OwpzZmE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX0NUQSI6cmV0dXJuImNhbGwtdG8tYWN0aW9uIjtjYXNlICJCVVRUT05fVklFV19NT0RFTF9TVFlMRV9NT05PIjpjYXNlICJCVVRUT05fVklFV19NT0RFTF9TVFlMRV9CUkFORCI6cmV0dXJuIm1vbm8iO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX09WRVJMQVkiOnJldHVybiJvdmVybGF5IjtjYXNlICJCVVRUT05fVklFV19NT0RFTF9TVFlMRV9PVkVSTEFZX0RBUksiOnJldHVybiJvdmVybGF5LWRhcmsiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX0JSQU5EX0dSQURJRU5UIjpyZXR1cm4iYnJhbmQtZ3JhZGllbnQiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX0JSQU5EX0FJIjpyZXR1cm4iZ2VuLWFpLWdyYWRpZW50IjtjYXNlICJCVVRUT05fVklFV19NT0RFTF9TVFlMRV9SQUlTRUQiOnJldHVybiJyYWlzZWQiO2RlZmF1bHQ6cmV0dXJuIm1vbm8ifX07CnRmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9GSUxMRUQiOnJldHVybiJmaWxsZWQiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1RZUEVfT1VUTElORSI6cmV0dXJuIm91dGxpbmUiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1RZUEVfVEVYVCI6cmV0dXJuInRleHQiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1RZUEVfVE9OQUwiOnJldHVybiJ0b25hbCI7ZGVmYXVsdDpyZXR1cm4idGV4dCJ9fTt1ZmE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUQVRFX0FDVElWRSI6cmV0dXJuImFjdGl2ZSI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU1RBVEVfSU5BQ1RJVkUiOnJldHVybiJkaXNhYmxlZCI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU1RBVEVfRElTQUJMRUQiOnJldHVybiJkaXNhYmxlZCI7ZGVmYXVsdDpyZXR1cm4iYWN0aXZlIn19Owp2ZmE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NJWkVfWFNNQUxMIjpyZXR1cm4iWFMiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NJWkVfQ09NUEFDVCI6cmV0dXJuIlMiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NJWkVfREVGQVVMVCI6cmV0dXJuIk0iO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NJWkVfTEFSR0UiOnJldHVybiJMIjtjYXNlICJCVVRUT05fVklFV19NT0RFTF9TSVpFX1hMQVJHRSI6cmV0dXJuIlhMIjtkZWZhdWx0OnJldHVybiJNIn19O3ZhciBsZmE9WyJicm93c2UtdmlkZW8tbWVudS1idXR0b24iLCJ1bmlmaWVkLXZlcmlmaWVkLWJhZGdlIiwidG9wYmFyLWd1aWRlLW1lbnUiXSxrZmE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLks9Xy5TSi5qYygpO3RoaXMuaj1uZXcgTWFwO3RoaXMuQj1uZXcgV2Vha01hcDt0aGlzLlk9bmV3IFNldH1kaXNwb3NlKCl7dGhpcy5EJiZfLmNmKHRoaXMuRCwieXQtdmlzaWJpbGl0eS1tb25pdG9yLXJlZnJlc2hlZCIsdGhpcy5JLCExLHRoaXMpO3RoaXMudiYmdGhpcy52LmRpc3Bvc2UoKX1JKCl7Zm9yKGxldCBbYSxiXW9mIHRoaXMuai5lbnRyaWVzKCkpT0sodGhpcyxhLGIpfX0sTEs7dmFyIG1mYT17YW5pbWF0ZWRBc3NldFZpZXdNb2RlbDp7Z2VuZXJpY0JlaGF2aW9yOnthdXRvcGxheTohMCxsb29wOiEwfSxsb3R0aWVBc3NldDp7dGhlbWVkVXJsOntsaWdodDoiaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20veW91dHViZS9pbWcvbG90dGllL3lvdWNoYXRfYW5pbWF0aW9ucy9wcm9ncmVzc19pbmRpY2F0b3Jfc29sb192MS5qc29uIixkYXJrOiJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9sb3R0aWUveW91Y2hhdF9hbmltYXRpb25zL3Byb2dyZXNzX2luZGljYXRvcl9zb2xvX3YxLmpzb24ifX19fTt2YXIgd2ZhPVsieW91LWNoYXQtZW50cnlwb2ludC1idXR0b24iXTsKXy5IRD1fLkwoKHtkYXRhOmEsY2xhc3NOYW1lOmIsc3R5bGU6YyxidXR0b25PdmVycmlkZXM6ZCxhYjplLG9uQ2xpY2s6Zix0YXJnZXQ6aH0pPT57dmFyIGs9Xy51RSgiYnV0dG9uLXZpZXctbW9kZWwiLEQ9PntELmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJ5dC1yZW5kZXJpZG9tLWZpbmlzaGVkIix7YnViYmxlczohMCxjYW5jZWxhYmxlOiExLGNvbXBvc2VkOiEwfSkpO3ZhciBIPWEoKS50YXJnZXRJZDtIJiZfLlFLKF8uTUsoKSxILEQpO3JldHVybigpPT57Xy5QSyhfLk1LKCksRCl9fSksbD1fLmNJKEQ9Pm5mYShELGEoKT8uZW50aXR5S2V5LGEoKT8uYnV0dG9uRW50aXR5U2VsZWN0b3JUeXBlKSksbT0oKT0+YSgpPy5lbnRpdHlLZXkmJmEoKT8uYnV0dG9uRW50aXR5U2VsZWN0b3JUeXBlP2woKTp2b2lkIDAsbj0oKT0+Xy54KCJXZWJGRUFsbFN0dWRpb0J5Q2hhbm5lbF9fd2ViX2J1dHRvbl92aWV3X21vZGVsX2VudGl0eV9vdmVycmlkZXMiKT9tKCk6dm9pZCAwLHA9CigpPT57dmFyIEQ9bigpO2lmKEQ/Lmljb25OYW1lIT09dm9pZCAwKXJldHVybiBELmljb25OYW1lO2lmKEQ/LkFjPT09dm9pZCAwKXJldHVybiBhKCk/Lmljb25OYW1lfHxhKCk/Lnl0SWNvbn0scj1fLnkoKS5yZXNvbHZlKF8uSW4oXy5rRikpPy4oKSx0PSgpPT57dmFyIEQ9ZD8uKCksSD1tKCksUj1uKCksTT1EO2EoKT8uYnV0dG9uRW50aXR5U2VsZWN0b3JUeXBlJiYoTT17Li4uRCxkaXNhYmxlZDohIUg/LmlzRGlzYWJsZWR8fCEhRD8uZGlzYWJsZWR9KTtEPWEoKTt2YXIgUz1NLFk9ZT8uKCkscGE9Uj8uYXJpYURpc2FibGVkfHxIPy5pc0Rpc2FibGVkfHxSPy5hcmlhQnVzeXx8TT8uZGlzYWJsZWQ/dm9pZCAwOmY7TT1oPy4oKTtpZihEKXt2YXIgb2E9dGZhKEQudHlwZSk7dmFyIFU9ISFELnRpdGxlfHwhIUQudGl0bGVGb3JtYXR0ZWQ7dmFyIGhhPSEhKEQuaWNvbk5hbWV8fEQuaWNvbkltYWdlfHxELnl0SWNvbnx8RC5sZWFkaW5nQXNzZXQpO1U9aGEmJiFVPyJpY29uLW9ubHkiOgpoYT9ELmljb25Qb3NpdGlvbj09PSJCVVRUT05fVklFV19NT0RFTF9JQ09OX1BPU0lUSU9OX0FCT1ZFIj8iaWNvbi13aXRoLWxhYmVsIjpELmljb25UcmFpbGluZ3x8RC5pY29uUG9zaXRpb249PT0iQlVUVE9OX1ZJRVdfTU9ERUxfSUNPTl9QT1NJVElPTl9UUkFJTElORyI/InRyYWlsaW5nIjoibGVhZGluZyI6dm9pZCAwO1U9PT0iaWNvbi1vbmx5LTQwIiYmKG9hPSJ0ZXh0Iik7aGE9Uz8uc3RhdGU/P3VmYShELnN0YXRlKTt2YXIgbWE9Uz8uZGlzYWJsZWQ/PyhELnN0YXRlPT09IkJVVFRPTl9WSUVXX01PREVMX1NUQVRFX0RJU0FCTEVEInx8RC5zdGF0ZT09PSJCVVRUT05fVklFV19NT0RFTF9TVEFURV9JTkFDVElWRSIpO18ueCgid2ViX2J1dHRvbl92bV9yZWZhY3Rvcl9kaXNhYmxlZCIpJiYobWE9Uz8uZGlzYWJsZWQ/P2hhPT09ImRpc2FibGVkIik7WT1ZJiZZLlhiJiYhaXNOYU4oTnVtYmVyKFkubnVtYmVyVmFsdWUpKT9ZOnZvaWQgMDt2YXIgdGE9RC50aXRsZSxUPUQudGl0bGVGb3JtYXR0ZWQsCmJhPUQuYWNjZXNzaWJpbGl0eVRleHQsYWE9c2ZhKEQuc3R5bGUpLE9hPXZmYShELmJ1dHRvblNpemUpO3BhPXFmYShELGssbWEscGEsTSk7dmFyIEpiPW1hJiYhRC5vbkRpc2FibGVkVGFwLHphPXBmYShELGspLExiPUQuY3VzdG9tRm9udENvbG9yLGNjPUQuY3VzdG9tQmFja2dyb3VuZENvbG9yO3ZhciBsYz1ELmN1c3RvbUJvcmRlckNvbG9yO2xldCB0ZD1ELmN1c3RvbURhcmtUaGVtZUZvbnRDb2xvcixCZT1ELmN1c3RvbURhcmtUaGVtZUJhY2tncm91bmRDb2xvcjt2YXIgVmI9RC5jdXN0b21EYXJrVGhlbWVCb3JkZXJDb2xvcjtMYj1yJiZ0ZD90ZDpMYjtjYz1yJiZCZT9CZTpjYztsYz1yJiZWYj9WYjpsYztsYz17Y29sb3I6TGI/Xy5ORChMYik6dm9pZCAwLGJhY2tncm91bmRDb2xvcjpjYz9fLk5EKGNjKTp2b2lkIDAsYm9yZGVyQ29sb3I6bGM/Xy5ORChsYyk6dm9pZCAwfTtWYj1fLkIoRC50b29sdGlwRGF0YSxfLmNLKTtjYz1fLkIoRC5kaXNhYmxlZFRvb2x0aXBEYXRhLF8uY0spOwpEPXtidXR0b25UZXh0OnRhLFdhOlQsYWI6WSxhY2Nlc3NpYmlsaXR5TGFiZWw6YmEsc3R5bGU6YWEsdHlwZTpvYSxzdGF0ZTpoYSxzaXplOk9hLGljb25Qb3NpdGlvbjpVLG9uVGFwOnBhLGRpc2FibGVkOkpiLHVjOnphLGN1c3RvbUNvbG9yczpsYyx0b29sdGlwVGV4dDpELnRvb2x0aXAsRG46bWEmJmNjP1JLKGNjKTpWYj9SSyhWYik6dm9pZCAwLG9uSG92ZXI6cmZhKEQsayxNKSxtaWRkbGVncm91bmRBc3NldDpELm1pZGRsZWdyb3VuZEFzc2V0LEFjOkQubGVhZGluZ0Fzc2V0LC4uLlN9fWVsc2UgRD17c3R5bGU6Im1vbm8iLHR5cGU6InRleHQiLHN0YXRlOiJhY3RpdmUiLHNpemU6Ik0ifTtELmZvY3VzZWQ9RigpO1I/LmFjY2Vzc2liaWxpdHlMYWJlbCE9PXZvaWQgMCYmKEQuYWNjZXNzaWJpbGl0eUxhYmVsPVIuYWNjZXNzaWJpbGl0eUxhYmVsKTtSPy5jdXN0b21Db2xvcnMhPT12b2lkIDAmJihELmN1c3RvbUNvbG9ycz1SLmN1c3RvbUNvbG9ycyk7Uj8uQWMhPT12b2lkIDA/KEQuQWM9ClIuQWMsRC5pY29uUG9zaXRpb249Imljb24tb25seSIpOlI/Lmljb25OYW1lIT09dm9pZCAwJiYoRC5BYz12b2lkIDAsRC5pY29uUG9zaXRpb249Imljb24tb25seSIpO0g/LldhJiYoRC5XYT1ILldhKTtyZXR1cm4gRH0sdj1fLlBIKCksej0oKT0+e3ZhciBEPXQoKTtyZXR1cm4gXy5vSyhELCEhcCgpfHwhIUQuQWMsdil9LFtFLEFdPV8uSighMSx2b2lkIDAsIlBwbk5BIiksRj1FO18ubkUoKCk9Pnt2YXIgRD1fLkIoYSgpPy5vblZpc2libGUsXy5PRCk7RCYmXy5hRShELHttZDohMH0pfSwiZWZldXkiKTt2YXIgQz0oKT0+e3ZhciBEPWEoKT8uaWNvbkltYWdlO3JldHVybiBEP3tzb3VyY2VzOltEXX06dm9pZCAwfSxHPUhUTUxFbGVtZW50LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSgicG9wb3ZlciIpO3JldHVybiBfLksoImJ1dHRvbi12aWV3LW1vZGVsIix7ZWw6ayxjbGFzczpfLlAoInl0U3BlY0J1dHRvblZpZXdNb2RlbEhvc3QiLGIsKCk9Pnt2YXIgRD1hKCk/LnRhcmdldElkOwppZihEKXJldHVybiB3ZmEuaW5jbHVkZXMoRCk/RDp2b2lkIDB9KSwib246Zm9jdXNpbiI6ZnVuY3Rpb24oKXt2YXIgRD1fLnkoKS5yZXNvbHZlKF8uSW4oXy5qSCkpO0QmJkEoRC5YZSgpKX0sIm9uOmZvY3Vzb3V0IjpmdW5jdGlvbigpe0EoITEpfSwiYXJpYS1kaXNhYmxlZCI6KCk9Pm4oKT8uYXJpYURpc2FibGVkPyJ0cnVlIjp2b2lkIDAsImFyaWEtYnVzeSI6KCk9Pm4oKT8uYXJpYUJ1c3k/InRydWUiOnZvaWQgMH0sXy5LKF8uTyx7QTooKT0+IShtKCk/LmlzSGlkZGVuPz8hMSksdGhlbjooKT0+Xy5LKF8uTyx7QTpDLHRoZW46RD0+Xy5LKF8uSksse2RhdGE6dCxpY29uOigpPT5fLksoXy5qRix7ZGF0YTpELGFsdDoiIixBYjp6LGRjOnosVGE6ITAsWWE6ITB9KSxhcDpHfSksVzooKT0+Xy5LKF8uSksse2RhdGE6dCxpY29uTmFtZTpwLEdlOigpPT4hIWM/LigpPy5hbmltYXRlSWNvbixhcDpHfSl9KX0pKX0sInRhIik7Xy5IRC5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e29uQ2xpY2s6ITB9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiRGx2RjFkIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uWUM9bmV3IF8uSSgiYWNjZXNzaWJpbGl0eUNvbnRleHQiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5zTD1uZXcgXy5JKCJhdmF0YXJWaWV3TW9kZWwiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5RRj1mdW5jdGlvbihhKXtpZihhKXt2YXIgYj1fLnkoKS5yZXNvbHZlKF8uSW4oXy5rRikpPy4oKSxjPWEuZGFya1RoZW1lSW1hZ2U/P2EuaW1hZ2U7cmV0dXJuIGI/YzphLmltYWdlfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uUkY9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJSYXE0Y2IiKTtyZXR1cm4gXy5JRH07Xy5TRj1fLmNEKCgpPT5fLlJGKCksImF2YXRhclZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJhdmF0YXJWaWV3TW9kZWwiLCJSYXE0Y2IiLF8uUkYpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uJEY9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJQelVkWmIiKTtyZXR1cm4gXy5FRH07Xy5hRz1fLmNEKCgpPT5fLiRGKCksImJhZGdlVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImJhZGdlVmlld01vZGVsIiwiUHpVZFpiIixfLiRGKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnVMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiV3FsY1ZiIik7cmV0dXJuIF8ueER9O18udkw9Xy5jRCgoKT0+Xy51TCgpLCJkZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiZGVzY3JpcHRpb25QcmV2aWV3Vmlld01vZGVsIiwiV3FsY1ZiIixfLnVMKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLndMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgidWhsTEdiIik7cmV0dXJuIF8ud0R9O18ueEw9Xy5jRCgoKT0+Xy53TCgpLCJmbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiZmxleGlibGVBY3Rpb25zVmlld01vZGVsIiwidWhsTEdiIixfLndMKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnlMPWZ1bmN0aW9uKCl7aWYoISgibWF0Y2hNZWRpYSJpbiB3aW5kb3cpKXJldHVybiBfLldpKEVycm9yKCJ0ZCIpKSwoKT0+MDt2YXIgYT13aW5kb3cubWF0Y2hNZWRpYSgiKG1heC13aWR0aDogNTI3LjlweCkiKSxiPXdpbmRvdy5tYXRjaE1lZGlhKCIobWluLXdpZHRoOiA1MjhweCkgYW5kIChtYXgtd2lkdGg6IDgzOS45cHgpIiksYz13aW5kb3cubWF0Y2hNZWRpYSgiKG1pbi13aWR0aDogODQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzLjlweCkiKSxkPXdpbmRvdy5tYXRjaE1lZGlhKCIobWluLXdpZHRoOiAxMDI0cHgpIiksW2UsZl09Xy5KKGEubWF0Y2hlcyx2b2lkIDAsIlRtSUtjYiIpLFtoLGtdPV8uSihiLm1hdGNoZXMsdm9pZCAwLCJaMGZUS2QiKSxbbCxtXT1fLkooYy5tYXRjaGVzLHZvaWQgMCwidzR4eTdiIiksW24scF09Xy5KKGQubWF0Y2hlcyx2b2lkIDAsIkRyYk5DIikscj1FPT57ZihFLm1hdGNoZXMpfSx0PUU9PntrKEUubWF0Y2hlcyl9LHY9RT0+e20oRS5tYXRjaGVzKX0sCno9RT0+e3AoRS5tYXRjaGVzKX07Xy5VSigoKT0+e2EuYWRkRXZlbnRMaXN0ZW5lcj8oYS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHIpLGIuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIix0KSxjLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsdiksZC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHopKTphLmFkZExpc3RlbmVyJiYoYS5hZGRMaXN0ZW5lcihyKSxiLmFkZExpc3RlbmVyKHQpLGMuYWRkTGlzdGVuZXIodiksZC5hZGRMaXN0ZW5lcih6KSk7Xy5ZdSgoKT0+e2EucmVtb3ZlRXZlbnRMaXN0ZW5lcj8oYS5yZW1vdmVFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHIpLGIucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2hhbmdlIix0KSxjLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNoYW5nZSIsdiksZC5yZW1vdmVFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHopKTphLnJlbW92ZUxpc3RlbmVyJiYoYS5yZW1vdmVMaXN0ZW5lcihyKSxiLnJlbW92ZUxpc3RlbmVyKHQpLGMucmVtb3ZlTGlzdGVuZXIodiksCmQucmVtb3ZlTGlzdGVuZXIoeikpfSl9KTtyZXR1cm4oKT0+ZSgpPzE6aCgpPzI6bCgpPzM6bigpPzQ6MH07Xy5BTD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Xy55KCkucmVzb2x2ZShfLkluKHpMKSksW2UsZl09Xy5KKGQsdm9pZCAwLCJ4R3NSUSIpO2R8fF8uWXQoekwsZik7cmV0dXJuIF8uTigoKT0+e3ZhciBoPWEoKTtyZXR1cm4gaCYmYigpP2UoKT8uKGgsYixjKTp2b2lkIDB9LHZvaWQgMCwiYnNvc2RkIil9O3ZhciB6TD1uZXcgXy5WcygiU0VNQU5USUNfVFlQT0dSQVBIWV9SRVNPTFZFUl9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlRIPWZ1bmN0aW9uKGEpe3JldHVybigpPT5fLkIoYSgpLF8uWUMpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEJMPWZ1bmN0aW9uKGEpe2lmKGEpcmV0dXJuIF8ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpP2EuZGFya1RoZW1lOmEubGlnaHRUaGVtZX0sQ0w9bmV3IF8uSSgiYmFkZ2VWaWV3TW9kZWwiKTt2YXIgQ2ZhPW5ldyBfLlZzKCJDT01NT05fTUFSS19WSUVXX01PREVMX1RPS0VOIik7dmFyIERmYTtfLkRMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiRnFIY0dlIik7cmV0dXJuIF8udEZ9O0RmYT1fLmNEKCgpPT5fLkRMKCksInNlY3Rpb25IZWFkZXJMYXlvdXQiKTtfLll0KF8uSkQsYT0+e2EuSigic2VjdGlvbkhlYWRlckxheW91dCIsIkZxSGNHZSIsXy5ETCl9KTtfLnZEPV8uTCgoe2NsYXNzTmFtZTphLGRhdGE6YixkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6YyxkaXNhYmxlVmVydGljYWxQYWRkaW5nOmQsVGk6ZSxLbjpmLGlzT3ZlcmxheTpoLEVzOmssZ0w6bCxpSjptfSk9Pnt2YXIgbj1fLlRIKCgpPT5iKCkucmVuZGVyZXJDb250ZXh0KSxwPV8ueUwoKSxyPV8uQUwoKCk9PmIoKS5oZWFkbGluZVR5cG9ncmFwaHlUb2tlbixwLHttYXhMaW5lczoyfSk7cD1fLkFMKCgpPT5iKCkuc3VidGl0bGVUeXBvZ3JhcGh5VG9rZW4scCk7dmFyIHQ9Xy5RSCgoKT0+YigpLmhvcml6b250YWxQYWRkaW5nKSx2PV8uUUgoKCk9PmIoKS50b3BQYWRkaW5nKSx6PV8uUUgoKCk9PmIoKS5ib3R0b21QYWRkaW5nKTtyZXR1cm4gXy5LKCJ5dC1zZWN0aW9uLWhlYWRlci12aWV3LW1vZGVsIix7Y2xhc3M6Xy5QKCJ5dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxIb3N0IixhKSxzdHlsZTpfLklFKHsiYmFja2dyb3VuZC1jb2xvciI6KCk9PkJMKGIoKS5iYWNrZ3JvdW5kQ29sb3IpPwpfLk5EKEJMKGIoKS5iYWNrZ3JvdW5kQ29sb3IpKTp2b2lkIDB9KX0sXy5LKERmYSx7YXJpYUxhYmVsOigpPT5uKCk/LmxhYmVsLEF3OiExLHRpdGxlOigpPT5fLksoXy5WLHt0ZXh0OigpPT5iKCkuaGVhZGxpbmUsWGE6ITB9KSxraDohMCxzdWJsYWJlbDooKT0+Xy5LKEVmYSx7ZGF0YTpifSksTHc6KCk9PiEhYigpLnN1YmxhYmVsfHwhIWIoKS5ib3R0b21CYWRnZXx8ISFiKCkuYm90dG9tQmFkZ2VzLHN1cGVybGFiZWw6KCk9Pl8uSyhGZmEse2RhdGE6Yn0pLE13OigpPT4hIWIoKS5zdXBlcmxhYmVsfHwhIWIoKS50b3BCYWRnZSxsZWFkaW5nSW1hZ2U6KCk9Pl8uSyhHZmEse2xlYWRpbmdBY2Nlc3Nvcnk6KCk9PmIoKS5sZWFkaW5nQWNjZXNzb3J5fSksSHc6KCk9PiEhYigpLmxlYWRpbmdBY2Nlc3NvcnksdHJhaWxpbmdBY3Rpb25zOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxUcmFpbGluZ0FjdGlvbnNDb250YWluZXIifSxfLksoXy5XLHtkYXRhOigpPT4KYigpLnRyYWlsaW5nQWN0aW9uc30se2ZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbDpfLnhMfSksXy5LKF8uTyx7QTptLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbENoZXZyb25zQ29udGFpbmVyIn0sXy5LKF8uZ0cse3BhOigpPT5sPy4oKXx8W119LEU9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbENoZXZyb24ifSxFKSkpfSkpLE53OigpPT5tPy4oKXx8ISFiKCkudHJhaWxpbmdBY3Rpb25zLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzooKT0+Yz8uKCl8fGIoKS5kaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmcsZGlzYWJsZVZlcnRpY2FsUGFkZGluZzooKT0+ZD8uKCl8fGIoKS5kaXNhYmxlVmVydGljYWxQYWRkaW5nLFRpOmUsS246Zixpc092ZXJsYXk6aCxyaDooKT0+ISFfLnNIKGIoKS5yZW5kZXJlckNvbnRleHQpLGhvdmVyRWZmZWN0RW5hYmxlZDooKT0+YigpLmhvdmVyRWZmZWN0RW5hYmxlZCxvbkNsaWNrOkU9Pgp7dmFyIEE9Xy5zSChiKCkucmVuZGVyZXJDb250ZXh0KTtBJiZfLmFFKEEse2Zvcm06e2VsZW1lbnQ6RS50YXJnZXQsZXZlbnQ6RX19KX0sYm90dG9tQWNjZXNzb3J5OigpPT5fLksoXy5XLHtkYXRhOigpPT5iKCkuYm90dG9tQWNjZXNzb3J5fSx7ZGVzY3JpcHRpb25QcmV2aWV3Vmlld01vZGVsOih7ZGF0YTpFfSk9Pl8uSyhfLnZMLHtkYXRhOkUsWGM6ITB9KSxjb21tb25NYXJrVmlld01vZGVsOih7ZGF0YTpFfSk9Pl8uSyhfLklCLG51bGwsXy55KCkucmVzb2x2ZShfLkluKENmYSkpPy4oe2RhdGE6RX0pKX0pLHp3OigpPT4hIWIoKS5ib3R0b21BY2Nlc3NvcnksRXM6ayxoZWFkbGluZVR5cG9ncmFwaHlUb2tlbjpyLHN1YnRpdGxlVHlwb2dyYXBoeVRva2VuOnAsanE6dCxmQjp2LEh1Onp9KSl9LCJ3YSIpOwp2YXIgR2ZhPV8uTCgoe2xlYWRpbmdBY2Nlc3Nvcnk6YX0pPT5fLksoXy5JQixudWxsLF8uSyhfLk8se0E6KCk9PmEoKS5pbWFnZT8/Xy5RRihhKCkudGhlbWVkSW1hZ2UpLHRoZW46Yj0+Xy5LKF8uakYse2RhdGE6YixhbHQ6IiIsVGE6ITAsWWE6ITB9KX0pLF8uSyhfLk8se0E6KCk9Pl8uQihhKCkuYXZhdGFyLF8uc0wpLHRoZW46Yj0+Xy5LKF8uU0Yse2RhdGE6Yn0pfSkpLCJ4YSIpLEVmYT1fLkwoKHtkYXRhOmF9KT0+Xy5LKF8uSUIsbnVsbCxfLksoInNwYW4iLHtjbGFzczpfLlAoe3l0U2VjdGlvbkhlYWRlclZpZXdNb2RlbEJhZGdlV2l0aExhYmVsOigpPT4oISFhKCkuYm90dG9tQmFkZ2VzfHwhIWEoKS5ib3R0b21CYWRnZSkmJiEhYSgpLnN1YmxhYmVsfSl9LF8uSyhfLk8se0E6KCk9Pl8uQihhKCkuYm90dG9tQmFkZ2UsQ0wpLHRoZW46Yj0+Xy5LKF8uYUcse2RhdGE6Yn0pfSksXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmJvdHRvbUJhZGdlc30se2JhZGdlVmlld01vZGVsOih7ZGF0YTpifSk9PgpfLksoXy5hRyx7ZGF0YTpiLGNsYXNzOl8uUCgieXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQmFkZ2VzIil9KX0pKSxfLksoXy5PLHtBOigpPT5hKCkuc3VibGFiZWwsdGhlbjpiPT5fLksoXy5WLHt0ZXh0OmJ9KX0pKSwieWEiKSxGZmE9Xy5MKCh7ZGF0YTphfSk9Pl8uSyhfLklCLG51bGwsXy5LKF8uTyx7QTooKT0+Xy5CKGEoKS50b3BCYWRnZSxDTCksdGhlbjpiPT5fLksoXy5hRyx7ZGF0YTpiLGNsYXNzOl8uUCh7eXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQmFkZ2VXaXRoTGFiZWw6KCk9PiEhYigpJiYhIWEoKS5zdXBlcmxhYmVsfSl9KX0pLF8uSyhfLk8se0E6KCk9PmEoKS5zdXBlcmxhYmVsLHRoZW46Yj0+Xy5LKF8uVix7dGV4dDpifSl9KSksInphIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoImN5Q1ZsZCIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgTkg7Tkg9ZnVuY3Rpb24oKXt9O18uT0g9ZnVuY3Rpb24oKXtyZXR1cm4iOiIrKEpkYS5qKyspLnRvU3RyaW5nKDM2KX07Xy53YShOSCk7TkgucHJvdG90eXBlLmo9MDt2YXIgSmRhPU5ILmpjKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uRkk9bmV3IF8uVnMoIlNVQk1JVF9BUElfU0VSVklDRV9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmtMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgib3NUdHhlIik7cmV0dXJuIF8uQUR9O18ubEw9Xy5jRCgoKT0+Xy5rTCgpLCJiYXNpY0NvbnRlbnRWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiYmFzaWNDb250ZW50Vmlld01vZGVsIiwib3NUdHhlIixfLmtMKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlRGPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiRGx2RjFkIik7cmV0dXJuIF8uSER9O18uVUY9Xy5jRCgoKT0+Xy5URigpLCJidXR0b25WaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiYnV0dG9uVmlld01vZGVsIiwiRGx2RjFkIixfLlRGKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLm1MPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiRnNvWHpjIik7cmV0dXJuIF8uekR9O18ubkw9Xy5jRCgoKT0+Xy5tTCgpLCJjb250ZW50TGlzdEl0ZW1WaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiY29udGVudExpc3RJdGVtVmlld01vZGVsIiwiRnNvWHpjIixfLm1MKX0pO18ub0w9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJwZTJvamIiKTtyZXR1cm4gXy5DRH07Xy5wTD1fLmNEKCgpPT5fLm9MKCksImxpc3RJdGVtVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImxpc3RJdGVtVmlld01vZGVsIiwicGUyb2piIixfLm9MKX0pO18ucUw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJVQU01bSIpO3JldHVybiBfLnlEfTtfLnJMPV8uY0QoKCk9Pl8ucUwoKSwibG9ja3VwVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImxvY2t1cFZpZXdNb2RlbCIsIlVBTTVtIixfLnFMKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkZMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiVk9VUDlkIik7cmV0dXJuIF8udUR9O18uR0w9Xy5jRCgoKT0+Xy5GTCgpLCJsaW5lYXJMYXlvdXRWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigibGluZWFyTGF5b3V0Vmlld01vZGVsIiwiVk9VUDlkIixfLkZMKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgS0ksYWVhLCRJLGFKLGJlYTtfLkdJPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT1iPyEwOmE/LmZvcm1JZD09PWI/LmZvcm1JZCYmYT8uZmllbGRJZD09PWI/LmZpZWxkSWR9O18uSEk9ZnVuY3Rpb24oYSl7cmV0dXJuIEVycm9yKCJuZGAiK2EucmVwbGFjZSgvXG5ccyovZywiICIpKX07Xy5JST1mdW5jdGlvbihhKXtyZXR1cm4gRXJyb3IoIm9kYCIrYS5yZXBsYWNlKC9cblxzKi9nLCIgIikpfTtfLkpJPWZ1bmN0aW9uKCl7cmV0dXJue25qOiExLGZiOiEwLHpkOiExLGlzU3VibWl0dGluZzohMSxjczowfX07S0k9ZnVuY3Rpb24oYSxiKXt2YXIgYz0hMDtmb3IobGV0IGQgb2YgT2JqZWN0LmtleXMoYSkpe2lmKGQ9PT0iZm9ybUlkIiljb250aW51ZTtsZXQgZT1hW2RdO2Uua2luZD09PTEmJihLSShlLnZhbHVlLGIpfHwoYz0hMSkpfWIoYS5mb3JtSWQpfHwoYz0hMSk7cmV0dXJuIGN9OwpfLk1JPWZ1bmN0aW9uKGEpe3ZhciBiPUxJLmdldChhKTtpZihiKXJldHVybiBiO2I9YS5yZXBsYWNlKC9fKFthLXpBLVowLTldKS9nLChjLGQpPT5kLnRvVXBwZXJDYXNlKCkpO0xJLnNldChhLGIpO3JldHVybiBifTtfLk9JPWZ1bmN0aW9uKCl7Tkk/LihhPT5hKzEpfTtfLlJJPWZ1bmN0aW9uKGEpe1BJP1BJKCk6KFtQSSwsTkldPV8uSigwLHZvaWQgMCwiVnhZMGZiIiksUEkoKSk7cmV0dXJuIF8uUUkuZ2V0KGEpfTtfLlNJPWZ1bmN0aW9uKGEsYil7aWYoYSl7dmFyIGM9Xy5SSShhKTtpZihjKXtpZihiJiZiIT09Yy5VaSl0aHJvdyBfLklJKGBGb3JtIHR5cGUgbWlzbWF0Y2ggZm9yIGZvcm1JZCAke2F9OiBwcm92aWRlZCBmb3JtVHlwZSAiJHtifSIgZG9lcyBub3QgbWF0Y2ggc3RvcmVkIGZvcm1UeXBlICIke2MuVWl9Ii5gKTtyZXR1cm4gYy5mb3JtfX19OwpfLlZJPWZ1bmN0aW9uKGEpe3ZhciBiPV8uUkkoYSk7aWYoIWIpdGhyb3cgXy5USShhKTtpZihiLlNwPT09MClyZXR1cm4gYi5mb3JtO2I9Yi5wZztpZighYil0aHJvdyBfLlVJKGEpO2E9Xy5TSShiLlZ6KTtpZighYSl0aHJvdyBfLkhJKGBGb3JtSWQgJHtiLlZ6fSBub3QgZm91bmQuYCk7cmV0dXJuIGF9O2FlYT1mdW5jdGlvbihhKXt0cnl7dmFyIGI9Xy5WSShhKX1jYXRjaChjKXtyZXR1cm4hMX0oYT1LSShiLGM9Pl8uUUkuZGVsZXRlKGMpKSkmJl8uT0koKTtyZXR1cm4gYX07Xy5XST1mdW5jdGlvbihhLGIpe2lmKGI9PT0iZm9ybUlkIil0aHJvdyBfLklJKCJGaWVsZCBpZCBjYW5ub3QgYmUgZm9ybUlkLiIpO2lmKGE9Xy5TSShhKSlyZXR1cm4gYj1fLk1JKGIpLGFbYl19O18uWEk9ZnVuY3Rpb24oYSl7aWYoYT1fLlJJKGEpKXJldHVybiBhLkRsfTsKXy5aST1mdW5jdGlvbihhKXt2YXIgYj1fLk4oKCk9Pl8uQnYoYSk/P3t9LHtlcXVhbHM6Xy5HSX0sIkxETkxiZCIpLGM9Xy5OKCgpPT57dmFyIHtmb3JtSWQ6ZCxmaWVsZElkOmV9PWIoKTtpZihkJiZlKXt2YXIgZjtpZihmPV8uV0koZCxlKSl7aWYoISgiZnVuY3Rpb24iPT10eXBlb2YgXy5ZSSYmZiBpbnN0YW5jZW9mIF8uWUkpKXRocm93IF8uSUkoYEZpZWxkICR7ZX0gaW4gZm9ybSAke2R9IGlzIG5vdCBhIFNjYWxhckZpZWxkLmApO31lbHNlIGY9dm9pZCAwO3JldHVybiBmfX0sdm9pZCAwLCJvOG8wMGQiKTtyZXR1cm4oKT0+YygpfTskST1mdW5jdGlvbihhLGIpe3ZhciBjPShjPV8uUkkoYSkpP2MuQ246dm9pZCAwO2lmKCFjKXRocm93IF8uSEkoYE1pc3NpbmcgdG9Gb3JtRGF0YSBmdW5jdGlvbiBmb3IgRm9ybUlkICR7YX0uYCk7cmV0dXJuIGMoYil9OwphSj1mdW5jdGlvbihhLGIpe3ZhciBjPShjPV8uUkkoYSkpP2MuQ2w6dm9pZCAwO2lmKCFjKXRocm93IF8uSEkoYE1pc3NpbmcgZm9ybURhdGFFeHRlbnNpb25GaWVsZCBmb3IgRm9ybUlkICR7YX0uYCk7cmV0dXJue1tjXTpifX07CmJlYT1hc3luYyBmdW5jdGlvbihhKXt2YXIgYj1fLlZJKGEpLGM9Xy5YSShhKTt2YXIgZD0oZD1fLlJJKGEpKT9kLnN1Ym1pdENvbmZpZzp2b2lkIDA7dmFyIGU9Xy55KCkucmVzb2x2ZShfLkluKF8uRkkpKSxmPV8uUkkoYSk7ZiYmKGYuWmQ9ey4uLmYuWmQsaXNTdWJtaXR0aW5nOiEwfSxfLk9JKCkpO3RyeXtpZihkJiZlKXtsZXQgaz0kSShhLGIpO3ZhciBoPWFKKGEsayk7bGV0IGw9YXdhaXQgZS5iaShkLnN1Ym1pdElkLGgse3N1Ym1pdEFjdGlvbjoiU1VCTUlUX0FDVElPTl9TVUJNSVNTSU9OIixhbGxGaWVsZHM6ITB9LGQucGFyYW1zLGQuY2xpY2tUcmFja2luZ1BhcmFtcyk7aWYobC5zdWJtaXRFcnJvcil0aHJvdyBiSihsLnN1Ym1pdEVycm9yKTthd2FpdCBjPy5IbT8uKGwpfWVsc2UgYXdhaXQgYz8ub25TdWJtaXQ/LihiKX1jYXRjaChrKXtyZXR1cm4gayBpbnN0YW5jZW9mIEVycm9yP1Byb21pc2UucmVqZWN0KGspOlByb21pc2UucmVqZWN0KGJKKGspKX1maW5hbGx5e2lmKGE9Cl8uUkkoYSkpYS5aZD17Li4uYS5aZCxpc1N1Ym1pdHRpbmc6ITEsY3M6YS5aZC5jcysxfSxfLk9JKCl9fTtfLmNKPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5OKCgpPT5fLkJ2KGEpPz8iIix2b2lkIDAsIkdSbXByIiksZD1fLk4oKCk9Pl8uU0koYygpLGIpLHZvaWQgMCwicGJUZUJiIiksZT1fLk4oKCk9Pnt2YXIgaD1jKCk7cmV0dXJuKGg9Xy5SSShoKSk/aC5aZDpfLkpJKCl9LHZvaWQgMCwidWN2NkxiIiksZj1fLk4oKCk9Pnt2YXIgaD1kKCk7aWYoIWgpcmV0dXJue2Zvcm1EYXRhOnZvaWQgMCxldzp2b2lkIDB9O2g9JEkoYygpLGgpO3JldHVybntmb3JtRGF0YTpoLGV3OmFKKGMoKSxoKX19LHZvaWQgMCwiaEg2MXFjIik7cmV0dXJue2Zvcm06KCk9PmQoKSxkYXRhOigpPT5mKCksc3RhdGU6KCk9PmUoKSxzdWJtaXQ6YXN5bmMoKT0+e2F3YWl0IGJlYShjKCkpfSxkaXNwb3NlOigpPT5hZWEoYygpKX19O18uZEo9U3ltYm9sKCJkZCIpO3ZhciBiSjtfLlRJPWE9Pl8uSEkoYEZvcm0gc2Vzc2lvbiBmb3IgRm9ybUlkICR7YX0gbm90IGZvdW5kLmApO18uVUk9YT0+Xy5ISShgTmVzdGVkIGZvcm0gYWNjZXNzb3IgZm9yIEZvcm1JZCAke2F9IG5vdCBmb3VuZC5gKTtiSj1hPT5fLklJKGBVbmtub3duIGVycm9yIGR1cmluZyBmb3JtIHN1Ym1pc3Npb246ICR7SlNPTi5zdHJpbmdpZnkoYSl9YCk7dmFyIExJPW5ldyBNYXA7dmFyIFBJLE5JO18uUUk9bmV3IE1hcDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEhmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiQ0FSRF9TVFlMRV9PVVRMSU5FIjpyZXR1cm4ieXRDYXJkVmlld01vZGVsT3V0bGluZSI7Y2FzZSAiQ0FSRF9TVFlMRV9UT05BTCI6cmV0dXJuInl0Q2FyZFZpZXdNb2RlbFRvbmFsIjtjYXNlICJDQVJEX1NUWUxFX0lOVkVSU0UiOnJldHVybiJ5dENhcmRWaWV3TW9kZWxJbnZlcnRlZCI7ZGVmYXVsdDpyZXR1cm4ieXRDYXJkVmlld01vZGVsUmFpc2VkIn19O3ZhciBITD1uZXcgXy5JKCJzZWN0aW9uSGVhZGVyVmlld01vZGVsIik7dmFyIElmYTtfLklMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiVmJYclVlIik7cmV0dXJuIF8uaEh9O0lmYT1fLmNEKCgpPT5fLklMKCksImNvbnZlcnNhdGlvblZpZGVvSWRlYUNhcmRWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiY29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbCIsIlZiWHJVZSIsXy5JTCl9KTt2YXIgSmZhO18uSkw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJwRVNsRGIiKTtyZXR1cm4gXy5lRn07SmZhPV8uY0QoKCk9Pl8uSkwoKSwidGhlbWVkSW1hZ2VWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigidGhlbWVkSW1hZ2VWaWV3TW9kZWwiLCJwRVNsRGIiLF8uSkwpfSk7dmFyIEtmYT1uZXcgXy5WcygiQVNLX1NUVURJT19DQVJEX1ZJRVdfTU9ERUxfVE9LRU4iKTt2YXIgTGZhPW5ldyBfLlZzKCJBU0tfU1RVRElPX1ZJREVPX0VESVRfUFJFVklFV19WSUVXX01PREVMX1RPS0VOIik7dmFyIE1mYT1uZXcgXy5WcygiQVVESUVOQ0VfT05MSU5FX0hFQVRNQVBfVklFV19NT0RFTF9UT0tFTiIpO3ZhciBOZmE9bmV3IF8uVnMoIkNPTU1FTlRTX0RJR0VTVF9DT05URU5UX1ZJRVdfTU9ERUxfVE9LRU4iKTt2YXIgT2ZhPW5ldyBfLlZzKCJQUklNRVRJTUVfT0ZGRVJJTkdfSU5fUkVWSUVXX0NBUkRfQ09OVEVOVF9WSUVXX01PREVMX1RPS0VOIik7dmFyIFBmYT1uZXcgXy5WcygiWVRDUF9GVU5ORUxfVklFV19NT0RFTF9UT0tFTiIpO3ZhciBRZmE7Xy5LTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInFWRGdCZCIpO3JldHVybiBfLmRGfTtRZmE9Xy5jRCgoKT0+Xy5LTCgpLCJjaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiY2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsIiwicVZEZ0JkIixfLktMKX0pO3ZhciBSZmE7Xy5MTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoImk2WG9tZSIpO3JldHVybiBfLlBGfTtSZmE9Xy5jRCgoKT0+Xy5MTCgpLCJyYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigicmFkaW9CdXR0b25JdGVtVmlld01vZGVsIiwiaTZYb21lIixfLkxMKX0pO3ZhciBTZmE7Xy5NTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoImJ6ajBqZCIpO3JldHVybiBfLnRMfTtTZmE9Xy5jRCgoKT0+Xy5NTCgpLCJpbmxpbmVFeHBhbmRlclZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJpbmxpbmVFeHBhbmRlclZpZXdNb2RlbCIsImJ6ajBqZCIsXy5NTCl9KTt2YXIgVGZhO18uTkw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJGaU5HT2MiKTtyZXR1cm4gXy5nSH07VGZhPV8uY0QoKCk9Pl8uTkwoKSwiZGlzbWlzc2libGVJdGVtIik7Xy5ZdChfLkpELGE9PnthLkooImRpc21pc3NpYmxlSXRlbSIsIkZpTkdPYyIsXy5OTCl9KTt2YXIgVWZhPW5ldyBfLlZzKCJDT05URU5UX1NFQ1RJT05fVklFV19NT0RFTF9UT0tFTiIpO3ZhciBWZmE7Xy5PTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInVSSWFDIik7cmV0dXJuIF8uQkh9O1ZmYT1fLmNEKCgpPT5fLk9MKCksImNoYW5uZWxBdHRyaWJ1dGlvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJjaGFubmVsQXR0cmlidXRpb25WaWV3TW9kZWwiLCJ1UklhQyIsXy5PTCl9KTt2YXIgUEw9Xy5MKGE9Pnt2YXIgYj1fLlFIKCgpPT5hLmRhdGEoKS50b3BDb250ZW50UGFkZGluZ1Rva2VuKSxjPV8uUUgoKCk9PmEuZGF0YSgpLmJvZHlDb250ZW50UGFkZGluZ1ZhbHVlcz8udG9wUGFkZGluZ1Rva2VufHxhLmRhdGEoKS5ib2R5Q29udGVudFBhZGRpbmdUb2tlbiksZD1fLlFIKCgpPT5hLmRhdGEoKS5ib2R5Q29udGVudFBhZGRpbmdWYWx1ZXM/LmJvdHRvbVBhZGRpbmdUb2tlbnx8YS5kYXRhKCkuYm9keUNvbnRlbnRQYWRkaW5nVG9rZW4pLGU9Xy5RSCgoKT0+YS5kYXRhKCkuYm9keUNvbnRlbnRQYWRkaW5nVmFsdWVzPy5ob3Jpem9udGFsUGFkZGluZ1Rva2VufHxhLmRhdGEoKS5ib2R5Q29udGVudFBhZGRpbmdUb2tlbiksZj0oKT0+YS5kYXRhKCkuYmFja2dyb3VuZCxoPSgpPT5hLmRhdGEoKS50cmFpbGluZ0FjdGlvbkxheW91dD09PSJDQVJEX1RSQUlMSU5HX0FDVElPTl9MQVlPVVRfT1ZFUkxBWSIsaz0oKT0+YS5kYXRhKCkudHJhaWxpbmdBY3Rpb25MYXlvdXQ9PT0KIkNBUkRfVFJBSUxJTkdfQUNUSU9OX0xBWU9VVF9JTkxJTkVfQ0VOVEVSIixsPV8ueSgpLnJlc29sdmUoXy5JbihVZmEpKSxtPV8ueSgpLnJlc29sdmUoXy5JbihLZmEpKSxuPV8ueSgpLnJlc29sdmUoXy5JbihMZmEpKSxwPV8ueSgpLnJlc29sdmUoXy5JbihOZmEpKSxyPV8ueSgpLnJlc29sdmUoXy5JbihNZmEpKSx0PV8ueSgpLnJlc29sdmUoXy5JbihQZmEpKSx2PV8ueSgpLnJlc29sdmUoXy5JbihPZmEpKSx6PSgpPT5hLmRhdGEoKS5jYXJkU3RhdGU/LmVuYWJsZW1lbnRTdGF0ZT09PSJDQVJEX0VOQUJMRU1FTlRfU1RBVEVfRElTQUJMRUQiLEU9KCk9PiF6KCkmJl8udEgoYS5kYXRhKCkucmVuZGVyZXJDb250ZXh0KSxBPSgpPT57aWYoYS5pc0V4cGFuZGVkPy4oKSE9PXZvaWQgMClyZXR1cm4gYS5pc0V4cGFuZGVkPy4oKTtzd2l0Y2goYS5kYXRhKCkuY2FyZFN0YXRlPy5leHBhbnNpb25TdGF0ZSl7Y2FzZSAiQ0FSRF9FWFBBTlNJT05fU1RBVEVfRVhQQU5ERUQiOnJldHVybiEwOwpjYXNlICJDQVJEX0VYUEFOU0lPTl9TVEFURV9DT0xMQVBTRUQiOnJldHVybiExO2RlZmF1bHQ6cmV0dXJuIGEuaXNTZWxlY3RlZD8uKCl9fTtyZXR1cm4gXy5LKCJ5dC1jYXJkLXZpZXctbW9kZWwiLHtjbGFzczpfLlAoInl0Q2FyZFZpZXdNb2RlbEhvc3QiLGEuY2xhc3NOYW1lKX0sXy5LKFRmYSx7Y29udGVudElkOigpPT5hLmRhdGEoKS5jb250ZW50SWR9LCgpPT5fLksoImRpdiIse2VsOl8uckYoXy51SCgoKT0+RSgpP2EuZGF0YSgpLnJlbmRlcmVyQ29udGV4dDp2b2lkIDAsdm9pZCAwLHZvaWQgMCxbIkEiLnRvU3RyaW5nKCksIkJVVFRPTiIudG9TdHJpbmcoKSwuLi4oXy54KCJXZWJGRUFsbFN0dWRpb0J5Q2hhbm5lbF9fZW5hYmxlX2FuYWx5dGljc19odWJfd2ViIik/WyJZVC1MSVNULUlURU0tVklFVy1NT0RFTCJdOltdKV0pKSxjbGFzczpfLlAoInl0Q2FyZFZpZXdNb2RlbENhcmRWaWV3TW9kZWxJbm5lciIse3l0Q2FyZFZpZXdNb2RlbENsaWNrYWJsZTpFfSwoKT0+SGZhKGEuZGF0YSgpLmNhcmRTdHlsZSksCnt5dENhcmRWaWV3TW9kZWxDYXJkU2VsZWN0ZWQ6KCk9PiEhYS5pc1NlbGVjdGVkPy4oKX0sKCk9PntpZihhLmlzU2VsZWN0ZWQ/LigpPT09dm9pZCAwKXthOntzd2l0Y2goYS5kYXRhKCkuY2FyZFN0YXRlPy5zZWxlY3Rpb25TdGF0ZSl7Y2FzZSAiQ0FSRF9TRUxFQ1RJT05fU1RBVEVfU0VMRUNURUQiOnZhciBGPSJ5dENhcmRWaWV3TW9kZWxTZWxlY3RlZCI7YnJlYWsgYX1GPXZvaWQgMH1yZXR1cm4gRn19KSxyb2xlOigpPT5FKCkmJiFfLkIoYS5kYXRhKCkudG9wQ29udGVudCxITCk/ImJ1dHRvbiI6dm9pZCAwLCJhcmlhLWRpc2FibGVkIjp6LHRhYmluZGV4OigpPT56KCk/LTE6RSgpJiYhXy5CKGEuZGF0YSgpLnRvcENvbnRlbnQsSEwpPzA6dm9pZCAwfSxfLksoXy5XLHtkYXRhOmYsd3JhcHBlcjpGPT5fLksoImRpdiIse2NsYXNzOiJ5dENhcmRWaWV3TW9kZWxCYWNrZ3JvdW5kV3JhcHBlciJ9LEYoKSl9LHtjaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWw6UWZhLHRoZW1lZEltYWdlVmlld01vZGVsOih7ZGF0YTpGfSk9PgpfLksoSmZhLHtkYXRhOkYsY2xhc3NOYW1lOiJ5dENhcmRWaWV3TW9kZWxCYWNrZ3JvdW5kIn0pfSksXy5LKCJkaXYiLHtjbGFzczoieXRDYXJkVmlld01vZGVsQ29udGVudFdyYXBwZXIifSxfLksoXy5PLHtBOigpPT4haCgpLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q2FyZFZpZXdNb2RlbFRvcENvbnRlbnRDb250YWluZXIifSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRDYXJkVmlld01vZGVsVG9wQ29udGVudCIse3l0Q2FyZFZpZXdNb2RlbFRvcENvbnRlbnRQYWRkaW5nOigpPT4hYS5kYXRhKCkuZGlzYWJsZVRvcENvbnRlbnRQYWRkaW5nJiZhLmRhdGEoKS50b3BDb250ZW50fSksc3R5bGU6Xy5JRSh7cGFkZGluZzpifSl9LF8uSyhfLlcse2RhdGE6KCk9PmEuZGF0YSgpLnRvcENvbnRlbnR9LHtjb250ZW50TGlzdEl0ZW1WaWV3TW9kZWw6Xy5uTCxiYXNpY0NvbnRlbnRWaWV3TW9kZWw6Xy5sTCxsaW5lYXJMYXlvdXRWaWV3TW9kZWw6Xy5HTCxsaXN0SXRlbVZpZXdNb2RlbDpfLnBMLApzZWN0aW9uSGVhZGVyVmlld01vZGVsOl8udkR9KSksXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9uIix7eXRDYXJkVmlld01vZGVsSW5saW5lQ2VudGVyVHJhaWxpbmdBY3Rpb246ayx5dENhcmRWaWV3TW9kZWxJbmxpbmVUcmFpbGluZ0FjdGlvbk1hcmdpbjooKT0+YS5kYXRhKCkudHJhaWxpbmdBY3Rpb259KX0sXy5LKF8uVyx7ZGF0YTooKT0+YS5kYXRhKCkudHJhaWxpbmdBY3Rpb259LHtidXR0b25WaWV3TW9kZWw6Xy5VRn0pKSl9KSxfLksoImRpdiIse2NsYXNzOl8uUCh7eXRDYXJkVmlld01vZGVsQm90dG9tQ29udGVudFBhZGRpbmc6KCk9PiFhLmRhdGEoKS5kaXNhYmxlQm9keUNvbnRlbnRQYWRkaW5nJiZhLmRhdGEoKS5ib2R5Q29udGVudH0pLHN0eWxlOl8uSUUoeyJwYWRkaW5nLXRvcCI6YywicGFkZGluZy1ib3R0b20iOmQsInBhZGRpbmctbGVmdCI6ZSwicGFkZGluZy1yaWdodCI6ZX0pfSxfLksoXy5XLHtkYXRhOigpPT4KYS5kYXRhKCkuYm9keUNvbnRlbnR9LHtiYXNpY0NvbnRlbnRWaWV3TW9kZWw6Xy5sTCxjaGFubmVsQXR0cmlidXRpb25WaWV3TW9kZWw6VmZhLGNvbnRlbnRJbnNwaXJhdGlvbkNvbnZlcnNhdGlvblZpZGVvSWRlYUNhcmRWaWV3TW9kZWw6SWZhLGNvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbDpfLm5MLGRlc2NyaXB0aW9uUHJldmlld1ZpZXdNb2RlbDpfLnZMLGlubGluZUV4cGFuZGVyVmlld01vZGVsOih7ZGF0YTpGfSk9Pl8uSyhTZmEse2RhdGE6Rixpc1NlbGVjdGVkOkF9KSxsaW5lYXJMYXlvdXRWaWV3TW9kZWw6Xy5HTCxsaXN0SXRlbVZpZXdNb2RlbDpfLnBMLGxvY2t1cFZpZXdNb2RlbDooe2RhdGE6Rn0pPT5fLksoXy5yTCx7ZGF0YTpGLHdxOiEwfSksLi4uKG0mJnthc2tTdHVkaW9DYXJkVmlld01vZGVsOm19KSwuLi4obiYme2Fza1N0dWRpb1ZpZGVvRWRpdFByZXZpZXdWaWV3TW9kZWw6bn0pLC4uLihyJiZ7YXVkaWVuY2VPbmxpbmVIZWF0bWFwVmlld01vZGVsOnJ9KSwuLi4ocCYmCntjb21tZW50c0RpZ2VzdENvbnRlbnRWaWV3TW9kZWw6cH0pLC4uLihsJiZ7Y29udGVudFNlY3Rpb25WaWV3TW9kZWw6bH0pLC4uLih2JiZ7cHJpbWV0aW1lT2ZmZXJpbmdJblJldmlld0NhcmRDb250ZW50Vmlld01vZGVsOnZ9KSwuLi4odCYme2Z1bm5lbFZpZXdNb2RlbDp0fSl9KSkpLF8uSyhfLk8se0E6KCk9PmgoKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dENhcmRWaWV3TW9kZWxPdmVybGF5VHJhaWxpbmdBY3Rpb24ifSxfLksoXy5XLHtkYXRhOigpPT5hLmRhdGEoKS50cmFpbGluZ0FjdGlvbn0se2J1dHRvblZpZXdNb2RlbDpfLlVGfSkpfSksXy5LKF8uTyx7QTp6LHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q2FyZFZpZXdNb2RlbERpc2FibGVkT3ZlcmxheSIsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9KX0pKSkpfSwiQWEiKTt2YXIgV2ZhPVsiQSIudG9TdHJpbmcoKSwiQlVUVE9OIi50b1N0cmluZygpXSxYZmE9Xy5MKGE9PntmdW5jdGlvbiBiKEgpe2UoKS5pc0Rpc2FibGVkfHwoZj9mKEgudGFyZ2V0LGUoKSxrPy4oKSk6QSghRSgpKSl9ZnVuY3Rpb24gYyhIKXtILmtleT09PSIgIiYmKEgucHJldmVudERlZmF1bHQoKSxILnRhcmdldC5jbGljaygpKX12YXIgZD1fLngoImVuYWJsZV9uYXRpdmVfaW5wdXRfc2VsZWN0YWJsZV9pdGVtIiksZT1hLmRhdGEsZj1hLm9uU2VsZWN0ZWQsaD1hLlNoLGs9YS5ncm91cE5hbWUsbD1hLmNsYXNzTmFtZSxtPWEucm9sZSxuPSJyYWRpbyIrXy5PSCgpLHA9Xy5RSCgoKT0+ZSgpLnZlcnRpY2FsUGFkZGluZ1Rva2VuKSxyPV8uUUgoKCk9PmUoKS5ob3Jpem9udGFsUGFkZGluZ1Rva2VuKSx0PSgpPT5lKCkuY29udGVudCxbdix6XT1fLkooITEsdm9pZCAwLCJVbTdGZ2MiKSxFPXYsQT16LEY9KCk9PiEhZSgpLmlzRGlzYWJsZWQsQz0oKT0+e2lmKGghPT12b2lkIDApe2xldCBIPQpoKCk7cmV0dXJuISghSHx8ZSgpLmtleSE9PUgpfXJldHVybiBFKCl9LEc9KCk9PmghPT12b2lkIDAmJmUoKS5iZWhhdmlvcj09PSJTRUxFQ1RBQkxFX0lURU1fQkVIQVZJT1JfRVhQQU5ERURfTk9UX1NFTEVDVEVEIj8hMTpDKCksRD0oKT0+e2lmKGghPT12b2lkIDAmJkMoKSlzd2l0Y2goZSgpLmJlaGF2aW9yKXtjYXNlICJTRUxFQ1RBQkxFX0lURU1fQkVIQVZJT1JfU0VMRUNURURfTk9UX0VYUEFOREVEIjpyZXR1cm4hMTtjYXNlICJTRUxFQ1RBQkxFX0lURU1fQkVIQVZJT1JfRVhQQU5ERURfTk9UX1NFTEVDVEVEIjpyZXR1cm4hMH19O3JldHVybiBkP18uSygieXQtc2VsZWN0YWJsZS1pdGVtLXZpZXctbW9kZWwiLHtzdHlsZTpfLklFKHsicGFkZGluZy10b3AiOnAsInBhZGRpbmctYm90dG9tIjpwLCJwYWRkaW5nLWxlZnQiOnIsInBhZGRpbmctcmlnaHQiOnJ9KSxjbGFzczpfLlAoInl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxIb3N0IixsLCJ5dFNlbGVjdGFibGVJdGVtVmlld01vZGVsQ29udGFpbmVyIiwKInl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxOYXRpdmVDb250YWluZXIiLHt5dFNlbGVjdGFibGVJdGVtVmlld01vZGVsRGlzYWJsZWQ6Rn0pLCJwcm9wOmNoZWNrZWQiOkd9LF8uSygiaW5wdXQiLHtpZDpuLHR5cGU6InJhZGlvIixuYW1lOmEuZ3JvdXBOYW1lLCJwcm9wOmNoZWNrZWQiOkcsZGlzYWJsZWQ6Riwib246Y2xpY2siOmIsIm9uOmtleWRvd24iOmMsY2xhc3M6Inl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxOYXRpdmVSYWRpb0J1dHRvbiJ9KSxfLksoImxhYmVsIix7Zm9yOm4sY2xhc3M6Inl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxOYXRpdmVMYWJlbCIsIm9uOmtleWRvd24iOmN9LF8uSyhfLlcse2RhdGE6dH0se2NhcmRWaWV3TW9kZWw6KHtkYXRhOkh9KT0+Xy5LKFBMLHtkYXRhOkgsaXNTZWxlY3RlZDpHLGlzRXhwYW5kZWQ6RH0pfSkpKTpfLksoInl0LXNlbGVjdGFibGUtaXRlbS12aWV3LW1vZGVsIix7c3R5bGU6Xy5JRSh7InBhZGRpbmctdG9wIjpwLCJwYWRkaW5nLWJvdHRvbSI6cCwKInBhZGRpbmctbGVmdCI6ciwicGFkZGluZy1yaWdodCI6cn0pLCJhcmlhLWNoZWNrZWQiOkcsY2xhc3M6Xy5QKCJ5dFNlbGVjdGFibGVJdGVtVmlld01vZGVsSG9zdCIsbCwieXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbENvbnRhaW5lciIse3l0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxEaXNhYmxlZDpGfSksIm9uOmNsaWNrIjpmdW5jdGlvbihIKXtpZighZSgpLmlzRGlzYWJsZWQpe3ZhciBSPUguY3VycmVudFRhcmdldDtpZihfLngoIndlYl9zZWxlY3RhYmxlX2l0ZW1fY2hpbGRfdGFwX2tpbGxfc3dpdGNoIikpUj0hMTtlbHNle3ZhciBNPV8ucUgoSCk7Uj1fLnJIKE0sUixXZmEpfVJ8fChmP2YoSC5jdXJyZW50VGFyZ2V0LGUoKSxrPy4oKSk6QSghRSgpKSl9fSwicHJvcDpjaGVja2VkIjpHLHJvbGU6bSwiYXJpYS1kaXNhYmxlZCI6Rix0YWJpbmRleDowfSxfLksoXy5XLHtkYXRhOnR9LHtjYXJkVmlld01vZGVsOih7ZGF0YTpIfSk9Pl8uSyhQTCx7ZGF0YTpILGlzU2VsZWN0ZWQ6RywKaXNFeHBhbmRlZDpEfSl9KSl9LCJCYSIpO18uRUw9Xy5MKGE9PntmdW5jdGlvbiBiKHosRSxBKXt2YXIgRj1jKCkuZm9ybUZpZWxkTWV0YWRhdGEmJm0oKSE9PXZvaWQgMD8zOmQoKT8yOjE7Rj09PTEmJkUua2V5IT1udWxsJiZ0KEUua2V5KTtGPT09MyYmRS5rZXkhPW51bGwmJm0oKT8udXBkYXRlVmFsdWUoRS5rZXkpO2U/Lih6LEUsQSl9dmFyIHtkYXRhOmMsV2I6ZCxvblNlbGVjdGVkOmUsU2g6Zixncm91cE5hbWU6aCxjbGFzc05hbWU6ayxuYTpsfT1fLkRDKGEse1diOiEwfSksbT1fLlpJKCgpPT5jKCkuZm9ybUZpZWxkTWV0YWRhdGEpLG49KCk9Pmg/LigpfHxjKCkua2V5LFtwLHJdPV8uQUMoKCk9PmMoKS5kZWZhdWx0U2VsZWN0ZWRLZXkpLHQ9cix2PSgpPT4oYygpLmZvcm1GaWVsZE1ldGFkYXRhJiZtKCkhPT12b2lkIDA/MzpkKCk/MjoxKT09PTM/bSgpPy52YWx1ZTpkKCk/Zj8uKCk6cCgpO3JldHVybiBfLksoInl0LXJhZGlvLWJ1dHRvbi1ncm91cC12aWV3LW1vZGVsIix7Y2xhc3M6Xy5QKCJ5dFJhZGlvQnV0dG9uR3JvdXBWaWV3TW9kZWxIb3N0IiwKayl9LF8uSygiZmllbGRzZXQiLHtjbGFzczoieXRSYWRpb0J1dHRvbkdyb3VwVmlld01vZGVsRmllbGRzZXQiLHJvbGU6InJhZGlvZ3JvdXAiLCJhcmlhLWludmFsaWQiOigpPT4hIW0oKT8uZXJyb3JzPy5bMF0sImFyaWEtZGVzY3JpYmVkYnkiOigpPT5tKCk/LmVycm9ycz8uWzBdP2BlcnJvci0ke2MoKS5rZXl9YDp2b2lkIDB9LF8uSyhfLlcse2RhdGE6KCk9PmMoKS5yYWRpb0J1dHRvbnN9LHtyYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWw6KHtkYXRhOnp9KT0+Xy5LKFJmYSx7ZGF0YTp6LG9uU2VsZWN0ZWQ6YixTaDp2LGdyb3VwTmFtZTpuLG5hOmx9KSxzZWxlY3RhYmxlSXRlbVZpZXdNb2RlbDooe2RhdGE6en0pPT5fLksoWGZhLHtkYXRhOnosb25TZWxlY3RlZDpiLFNoOnYsZ3JvdXBOYW1lOm4scm9sZToicmFkaW8ifSl9KSksXy5LKF8uTyx7QTooKT0+bSgpPy5lcnJvcnM/LlswXSx0aGVuOno9Pl8uSygiZGl2Iix7aWQ6KCk9PmBlcnJvci0ke2MoKS5rZXl9YCxjbGFzczoieXRSYWRpb0J1dHRvbkdyb3VwVmlld01vZGVsRXJyb3IifSwKKCk9PnooKS5tZXNzYWdlKX0pKX0sIkNhIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoImQyTFR4YiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkFFPV8uTCgoe25hbWU6YSxvbkNoYW5nZTpiLG9uQ2xpY2s6YyxjaGVja2VkOmQsWWU6ZSxoazpmLFlpOmgscWo6ayxuYTpsLFZjOm0sYXJpYUxhYmVsOm4sY2xhc3NOYW1lOnAsZGlzYWJsZWQ6cixob3Jpem9udGFsUGFkZGluZzp0LHZlcnRpY2FsUGFkZGluZzp2fSk9Pnt2YXIgej0icmFkaW8iK18uT0goKSxFPV8udUUoImlucHV0IiksQT1fLngoImVuYWJsZV9pb3Nfd2Vidmlld19yYWRpb19idXR0b25fcmVzcG9uc2l2ZW5lc3MiKSxbRixDXT1fLkooITEsdm9pZCAwLCJmTHJYNmQiKTtyZXR1cm4gXy5LKCJyYWRpby1zaGFwZSIse2NsYXNzOl8uUCgieXRSYWRpb1NoYXBlSG9zdCIscCl9LF8uSygiaW5wdXQiLHtlbDpFLGNsYXNzOl8uUCgieXRSYWRpb1NoYXBlSW5wdXQiLHt5dFJhZGlvU2hhcGVUYXBwYWJsZTooKT0+KCEhYnx8ISFjKSYmIXI/LigpfSksaWQ6eiwicHJvcDpjaGVja2VkIjpkLG5hbWU6YSx0eXBlOiJyYWRpbyIsZGlzYWJsZWQ6ciwib246Y2hhbmdlIjpmdW5jdGlvbihHKXtFLnZhbHVlLmNoZWNrZWQ9CiEhZD8uKCk7Yj8uKEcpO0cuc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjpjbGljayI6ZnVuY3Rpb24oRyl7Yz8uKEcpO0cuc3RvcFByb3BhZ2F0aW9uKCl9LCJhcmlhLWxhYmVsIjpuLCJvbjpmb2N1c2luIjpmdW5jdGlvbigpe18ueSgpLnJlc29sdmUoXy5JbihfLmpIKSk/LlhlKCkmJkMoITApfSwib246Zm9jdXNvdXQiOmZ1bmN0aW9uKCl7QyghMSl9fSksXy5LKCJsYWJlbCIse2NsYXNzOl8uUCgieXRSYWRpb1NoYXBlTGFiZWxDb250YWluZXIiLGsse3l0UmFkaW9TaGFwZUNvbXBhY3Q6bCx5dFJhZGlvU2hhcGVLZXlib2FyZEZvY3VzZWQ6Rix5dFJhZGlvU2hhcGVUYXBwYWJsZTooKT0+KCEhYnx8ISFjKSYmIXI/LigpLHl0UmFkaW9TaGFwZURpc2FibGVkOnJ9KSxmb3I6en0sXy5LKF8uTyx7QTooKT0+IWg/LigpLHRoZW46KCk9Pl8uSyhTSCx7Y2hlY2tlZDpkLGhrOmYsZ2c6ITAsVmM6bSxEczpBfSl9KSxfLksoXy5PLHtBOigpPT4hIWUsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0UmFkaW9TaGFwZUxhYmVsIiwKe3l0UmFkaW9TaGFwZUV2ZW50UGFzc3Rocm91Z2g6QX0pLCJhcmlhLWhpZGRlbiI6KCk9PiEhbj8uKCksc3R5bGU6Xy5JRSh7InBhZGRpbmctbGVmdCI6dCwicGFkZGluZy1yaWdodCI6dCwicGFkZGluZy10b3AiOnYsInBhZGRpbmctYm90dG9tIjp2fSl9LGU/LigpKX0pLF8uSyhfLk8se0E6aCx0aGVuOigpPT5fLksoU0gse2NoZWNrZWQ6ZCxoazpmLGdnOiExLFZjOm0sRHM6QX0pfSkpKX0sInciKTtfLkFFLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7b25DaGFuZ2U6ITAsb25DbGljazohMCxZZTohMH19Owp2YXIgU0g9Xy5MKCh7aGs6YSxWYzpiLERzOmN9KT0+e3ZhciBkPV8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpPyJDSVJDTEVfRlVMTCI6IkNJUkNMRSI7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFJhZGlvU2hhcGVSYWRpbyIsYix7eXRSYWRpb1NoYXBlQ2hlY2tJY29uOmEseXRSYWRpb1NoYXBlUmFkaW9EZWZhdWx0U3R5bGU6KCk9PiFiPy4oKSx5dFJhZGlvU2hhcGVFdmVudFBhc3N0aHJvdWdoOmN9KSwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sXy5LKF8uTUQse2ljb246KCk9PmE/LigpPyJDSEVDSyI6IkNJUkNMRSJ9KSxfLksoXy5NRCx7aWNvbjooKT0+YT8uKCk/IkNIRUNLIjpkLGFjdGl2ZTooKT0+IWE/LigpfSkpfSwieCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLldkKCJ6Q2tLQmMiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5WRj1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoImFjRnVWYyIpO3JldHVybiBfLkdEfTtfLldGPV8uY0QoKCk9Pl8uVkYoKSwiY29sbGVjdGlvblRodW1ibmFpbFZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJjb2xsZWN0aW9uVGh1bWJuYWlsVmlld01vZGVsIiwiYWNGdVZjIixfLlZGKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLllGPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiZjkwdENiIik7cmV0dXJuIF8uRkR9O18uWkY9Xy5jRCgoKT0+Xy5ZRigpLCJ0b2dnbGVCdXR0b25WaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigidG9nZ2xlQnV0dG9uVmlld01vZGVsIiwiZjkwdENiIixfLllGKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmJHPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiTFZpTU0iKTtyZXR1cm4gXy5ERH07Xy5jRz1fLmNEKCgpPT5fLmJHKCksInN1YnNjcmliZUJ1dHRvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJzdWJzY3JpYmVCdXR0b25WaWV3TW9kZWwiLCJMVmlNTSIsXy5iRyl9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGRHO18uZUc9ZnVuY3Rpb24oYSl7dmFyIGI9Xy55KCkucmVzb2x2ZShfLkluKGRHKSksW2MsZF09Xy5KKGIsdm9pZCAwLCJIZkRkSyIpO2J8fF8uWXQoZEcsZCk7cmV0dXJuIF8uTigoKT0+e3ZhciBlPWEoKTtyZXR1cm4gZT9jKCk/LihlKTp2b2lkIDB9LHZvaWQgMCwidjcwRTdiIil9O2RHPW5ldyBfLlZzKCJTRU1BTlRJQ19DT0xPUl9SRVNPTFZFUl9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmlIPW5ldyBfLlZzKCJIT1JJWk9OVEFMX0JBUl9WSUVXX01PREVMX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uTEg9YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBfLnkoKS5yZXNvbHZlKF8uSkgpO3JldHVybiBfLnkoKS5yZXNvbHZlKF8uS0gpKCl9O18uTUg9ZnVuY3Rpb24oKXtyZXR1cm4gXy55KCkucmVzb2x2ZShfLktIKSgpfTtuZXcgXy5jcztfLkpIPW5ldyBfLlZzKCJXQVRDSF9QTEFZRVJfUFJPTUlTRV9UT0tFTiIpO25ldyBfLmNzO18uS0g9bmV3IF8uVnMoIkdFVF9TSE9SVFNfUExBWUVSX0ZVTkNUSU9OX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVUg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYz0+e3ZhciBkPU9iamVjdC5rZXlzKGIpO18ubkUoKCk9PntpZihhPy4oKSl7Zm9yKGxldCBlIG9mIGQpYy5hZGRFdmVudExpc3RlbmVyKGUsYltlXSk7Xy5ZdSgoKT0+e2ZvcihsZXQgZSBvZiBkKWMucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLGJbZV0pfSl9fSwiYlhaR2ZlIil9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGRJLFBkYSxmSSxRZGEsaUksU2RhO2RJPWZ1bmN0aW9uKGEpe2lmKGEpc3dpdGNoKGEpe2Nhc2UgIkxJU1RfSVRFTV9JQ09OX0FDQ0VTU09SWV9TSVpFX1hTTUFMTCI6cmV0dXJuIDE2O2Nhc2UgIkxJU1RfSVRFTV9JQ09OX0FDQ0VTU09SWV9TSVpFX1NNQUxMIjpyZXR1cm4gMTg7Y2FzZSAiTElTVF9JVEVNX0lDT05fQUNDRVNTT1JZX1NJWkVfU1RBTkRBUkQiOnJldHVybiAyNDtjYXNlICJMSVNUX0lURU1fSUNPTl9BQ0NFU1NPUllfU0laRV9MQVJHRSI6cmV0dXJuIDM2O2Nhc2UgIkxJU1RfSVRFTV9JQ09OX0FDQ0VTU09SWV9TSVpFX1hMQVJHRSI6cmV0dXJuIDQ4O2RlZmF1bHQ6cmV0dXJuIDI0fX07ClBkYT1mdW5jdGlvbihhLGIpe2lmKCFhPy5lbnRpdHlTZWxlY3RvclR5cGV8fCFhPy5lbnRpdHlLZXkpcmV0dXJue307c3dpdGNoKGEuZW50aXR5U2VsZWN0b3JUeXBlKXtjYXNlICJMSVNUX0lURU1fVklFV19NT0RFTF9FTlRJVFlfU0VMRUNUT1JfVFlQRV9DQVBUSU9OX0xBTkdVQUdFX1NFTEVDVElPTl9URVhUIjpyZXR1cm4gYT1fLk1IKCk/LmdldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIpLGI9dHlwZW9mIGE/LnRyYW5zbGF0aW9uTGFuZ3VhZ2U9PT0ib2JqZWN0IiYmYS50cmFuc2xhdGlvbkxhbmd1YWdlPy5sYW5ndWFnZU5hbWV8fGE/LmRpc3BsYXlOYW1lfHwiIix7ZGF0YTp7Li4uKCEhYiYme3NlbGVjdGlvblRleHQ6e2NvbnRlbnQ6Yn19KSwuLi4oISFiJiZ7bGVhZGluZ0ltYWdlOntzb3VyY2VzOlt7Y2xpZW50UmVzb3VyY2U6e2ltYWdlTmFtZToiQ0xPU0VEX0NBUFRJT05fU0VMRUNURUQifX1dfX0pLGlzRGlzYWJsZWQ6dHlwZW9mIGE9PT0idW5kZWZpbmVkIn19O2Nhc2UgIkxJU1RfSVRFTV9WSUVXX01PREVMX0VOVElUWV9TRUxFQ1RPUl9UWVBFX0FVRElPX1RSQUNLX1NFTEVDVElPTl9URVhUIjpyZXR1cm4gYT0KXy5NSCgpPy5nZXRBdWRpb1RyYWNrKCl8fHZvaWQgMCxiPWE/LmdldExhbmd1YWdlSW5mbygpPy5nZXROYW1lKCkse2RhdGE6e3NlbGVjdGlvblRleHQ6e2NvbnRlbnQ6Yn0sLi4uKGImJiFhPy5nZXRMYW5ndWFnZUluZm8oKT8uZ2V0SXNEZWZhdWx0KCkmJntsZWFkaW5nSW1hZ2U6e3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOiJQRVJTT05fUkFEQVJfRklMTEVEIn19XX19KX19O2Nhc2UgIkxJU1RfSVRFTV9WSUVXX01PREVMX0VOVElUWV9TRUxFQ1RPUl9UWVBFX1BMQVlCQUNLX1NQRUVEX1NFTEVDVElPTl9URVhUIjpyZXR1cm4gYT1fLngoIndlYl9zaG9ydHNfcGxheWJhY2tfcmF0ZV9waWNrZXIiKSxfLmVJWyJjb3VudGVyZmFjdHVhbHMud2ViX3Nob3J0c19wbGF5YmFja19yYXRlX3BpY2tlciJdPVN0cmluZyhhKSxhPyhhPV8uTUgoKT8uZ2V0UGxheWJhY2tSYXRlKCksYj1fLk1IKCk/LmdldEF2YWlsYWJsZVBsYXliYWNrUmF0ZXMoKSxhPXtkYXRhOntzZWxlY3Rpb25UZXh0Ontjb250ZW50OmE9PT0KMT9fLmFBKCJQTEFZRVJfU1BFRURfTk9STUFMIix2b2lkIDAsIk5vcm1hbCIpOl8uYUEoIlBMQVlCQUNLX1NQRUVEX1giLHtzcGVlZF9yYXRlX3BsYWNlaG9sZGVyOmAke2E/LnRvRml4ZWQoMil9YH0pfSxpc0Rpc2FibGVkOiFiPy5sZW5ndGh9fSk6YT17fSxhO2Nhc2UgIkxJU1RfSVRFTV9WSUVXX01PREVMX0VOVElUWV9TRUxFQ1RPUl9UWVBFX1JFTU9WRV9BRFNfQURfU1RBVEUiOnJldHVybiBhPWE/LmVudGl0eUtleT8oYT1fLkhIKGIsYS5lbnRpdHlLZXkpKT97aXNIaWRkZW46YT8uYWRzU3RhdGUhPT0iQURTX1NUQVRFX1BMQVlJTkcifTp7aXNIaWRkZW46ITB9Ont9LGE7ZGVmYXVsdDpyZXR1cm57fX19O2ZJPWZ1bmN0aW9uKGEpe2lmKGEmJihhPWEuc3BsaXQoIjoiKSxhLmxlbmd0aD4xKSlyZXR1cm4gYVswXS5sZW5ndGg+MD9hWzBdOnZvaWQgMH07UWRhPWZ1bmN0aW9uKGEpe2lmKGEmJiFnSS5oYXMoYSkpe3ZhciBiPWZJKGEpO2ImJmdJLnNldChhLGIpfX07CmlJPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17Li4uaEkoKX07aWYoYiYmYz09PSJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX1JBRElPIil7bGV0IGU9ZkkoYSk7ZSYmZ0kuZm9yRWFjaCgoZixoKT0+e2Y9PT1lJiZoIT09YSYmKGRbaF09ITEpfSl9ZFthXT1iO1JkYShkKX07U2RhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZD0+e2lmKCFjPy4oKSl7dmFyIGU9Zj0+e18uckgoXy5xSChmKSxkLGIpfHxhKGYpfTtkLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixlKTtyZXR1cm4oKT0+e2QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLGUpfX19fTtfLmVJPXt9O18uakk9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJtbTJOMGMiKTtyZXR1cm4gXy56RX07Xy5rST1fLmNEKCgpPT5fLmpJKCksInN3aXRjaEJ1dHRvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJzd2l0Y2hCdXR0b25WaWV3TW9kZWwiLCJtbTJOMGMiLF8uakkpfSk7dmFyIG1JO18ubEk9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJoYjBXbWYiKTtyZXR1cm4gXy5YRn07bUk9Xy5jRCgoKT0+Xy5sSSgpLCJhY2NvdW50TGlua0J1dHRvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJhY2NvdW50TGlua0J1dHRvblZpZXdNb2RlbCIsImhiMFdtZiIsXy5sSSl9KTt2YXIgVGRhO18ubkk9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJoTmVsdmQiKTtyZXR1cm4gXy5hSX07VGRhPV8uY0QoKCk9Pl8ubkkoKSwibGlzdEl0ZW1MaWtlQ291bnRWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigibGlzdEl0ZW1MaWtlQ291bnRWaWV3TW9kZWwiLCJoTmVsdmQiLF8ubkkpfSk7dmFyIFVkYTtfLm9JPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgicjVDT0hmIik7cmV0dXJuIF8uJEh9O1VkYT1fLmNEKCgpPT5fLm9JKCksImxpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImxpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsIiwicjVDT0hmIixfLm9JKX0pO3ZhciBwST1fLkwoKHtkYXRhOmEsZ2c6YixjZTpjLGlzVG9nZ2xlZDpkLERnOmUsbmE6Zn0pPT57dmFyIGg9KCk9PmIoKT9hKCkubGVhZGluZ0ltYWdlOmEoKS50cmFpbGluZ0ltYWdlPz9fLlFGKGEoKS50aGVtZWRUcmFpbGluZ0ltYWdlKSxrPSgpPT57YTp7dmFyIHI9YSgpLmxpc3RJdGVtSWNvbkFmdGVyU2VsZWN0aW9uVGV4dDtpZighYz8uKCkpc3dpdGNoKHIpe2Nhc2UgIkxJU1RfSVRFTV9JQ09OX0FGVEVSX1NFTEVDVElPTl9URVhUX0VYUEFORF9NT1JFIjpyPSJleHBhbmRfbW9yZSI7YnJlYWsgYTtjYXNlICJMSVNUX0lURU1fSUNPTl9BRlRFUl9TRUxFQ1RJT05fVEVYVF9OT05FIjpicmVhaztkZWZhdWx0OnI9ImNoZXZyb25fcmlnaHQiO2JyZWFrIGF9cj12b2lkIDB9cmV0dXJuIHJ9LGw9Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsSW1hZ2VDb250YWluZXIiLHt5dExpc3RJdGVtVmlld01vZGVsTGVhZGluZzpiLHl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZzooKT0+IWIoKX0pLAptPV8uUCgieXRMaXN0SXRlbVZpZXdNb2RlbEFjY2Vzc29yeSIsInl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZSIpLG49Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsQWNjZXNzb3J5Iix7eXRMaXN0SXRlbVZpZXdNb2RlbExlYWRpbmc6Yix5dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmc6KCk9PiFiKCl9KSxwPV8uZUcoKCk9PmIoKT9hKCkubGVhZGluZ0ljb25Db2xvclRva2VuOmEoKS50cmFpbGluZ0ljb25Db2xvclRva2VuKTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+e3ZhciByPWEoKSx0PWIoKTtyZXR1cm4hISh0JiYoci5sZWFkaW5nSW1hZ2V8fHIubGVhZGluZ0FjY2Vzc29yeSl8fCF0JiYoci50cmFpbGluZ0ltYWdlfHxyLnRyYWlsaW5nQnV0dG9ufHxyLnRyYWlsaW5nQnV0dG9uc3x8ci50cmFpbGluZ0FjY2Vzc29yaWVzTGlzdHx8ci5zZWxlY3Rpb25UZXh0fHxyLnRoZW1lZFRyYWlsaW5nSW1hZ2V8fHIudHJhaWxpbmdJbWFnZUFjY2Vzc29yeVR5cGU9PT0iTElTVF9JVEVNX0lNQUdFX0FDQ0VTU09SWV9UWVBFX05FV19DT05URU5UX0lORElDQVRPUiJ8fApyLnRyYWlsaW5nTGFiZWwpKX0sdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOmgsdGhlbjpyPT5fLksoImRpdiIse2NsYXNzOmwsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LF8uSyhfLmpGLHtkYXRhOnIsYWx0OiIiLFRhOiEwLFlhOiEwLEFiOigpPT57dmFyIHQ9KGIoKT9hKCkubGVhZGluZ0ltYWdlQWNjZXNzb3J5VHlwZT09PSJMSVNUX0lURU1fSU1BR0VfQUNDRVNTT1JZX1RZUEVfSUNPTiI6YSgpLnRyYWlsaW5nSW1hZ2VBY2Nlc3NvcnlUeXBlPT09IkxJU1RfSVRFTV9JTUFHRV9BQ0NFU1NPUllfVFlQRV9JQ09OIik/YigpP2RJKGEoKS5sZWFkaW5nSWNvbkFjY2Vzc29yeVNpemUpOmRJKGEoKS50cmFpbGluZ0ljb25BY2Nlc3NvcnlTaXplKTp2b2lkIDA7cmV0dXJuIHR9LGNsYXNzTmFtZTptLGlzVG9nZ2xlZDooKT0+IWU/LigpJiZkPy4oKSxzdHlsZTpfLklFKHtjb2xvcjpwfSl9KSl9KSxfLksoXy5PLHtBOigpPT5iKCkmJmEoKS5sZWFkaW5nQWNjZXNzb3J5LHRoZW46KCk9PgpfLksoImRpdiIse2NsYXNzOmx9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5sZWFkaW5nQWNjZXNzb3J5fSx7YXZhdGFyVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLlNGLHtkYXRhOnIsZ2Q6bSxNazooKT0+Zj8uKCk/e3NpemU6ImV4dHJhLXNtYWxsIn06e3NpemU6Im1lZGl1bSJ9fSksY29sbGVjdGlvblRodW1ibmFpbFZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5XRix7ZGF0YTpyLG1heEhlaWdodDozNix3aWR0aDo1NixjZzohMH0pfSkpfSksXy5LKF8uTyx7QTooKT0+IWIoKSYmYSgpLnRyYWlsaW5nQnV0dG9uLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25Db250YWluZXIifSxfLksoXy5XLHtkYXRhOigpPT5hKCkudHJhaWxpbmdCdXR0b259LHtidXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uVUYse2RhdGE6cixjbGFzc05hbWU6bn0pfSkpfSksXy5LKF8uTyx7QTooKT0+IWIoKSYmYSgpLnRyYWlsaW5nQnV0dG9ucz8uYnV0dG9ucywKdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lciJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS50cmFpbGluZ0J1dHRvbnM/LmJ1dHRvbnN9LHtidXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uVUYse2RhdGE6cixjbGFzc05hbWU6bn0pLGFjY291bnRMaW5rQnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhtSSx7ZGF0YTpyLGNsYXNzTmFtZTpufSksc3dpdGNoQnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLmtJLHtkYXRhOnIsY2xhc3NOYW1lOm59KSxzdWJzY3JpYmVCdXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uY0cse2RhdGE6cixpc092ZXJsYXk6ITEsUWQ6ITEsY2xhc3NOYW1lOm59KSx0b2dnbGVCdXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uWkYse2RhdGE6cixjbGFzc05hbWU6bn0pfSkpfSksXy5LKF8uTyx7QTooKT0+IWIoKSYmYSgpLnRyYWlsaW5nQWNjZXNzb3JpZXNMaXN0Py50cmFpbGluZ0FjY2Vzc29yaWVzLAp0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dExpc3RJdGVtVmlld01vZGVsQnV0dG9uQ29udGFpbmVyIn0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLnRyYWlsaW5nQWNjZXNzb3JpZXNMaXN0Py50cmFpbGluZ0FjY2Vzc29yaWVzfSx7YnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLlVGLHtkYXRhOnIsY2xhc3NOYW1lOm59KSxhY2NvdW50TGlua0J1dHRvblZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksobUkse2RhdGE6cixjbGFzc05hbWU6bn0pLHN3aXRjaEJ1dHRvblZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5rSSx7ZGF0YTpyLGNsYXNzTmFtZTpufSksc3Vic2NyaWJlQnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLmNHLHtkYXRhOnIsaXNPdmVybGF5OiExLFFkOiExLGNsYXNzTmFtZTpufSksdG9nZ2xlQnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLlpGLHtkYXRhOnIsY2xhc3NOYW1lOm59KSxiYWRnZVZpZXdNb2RlbDooe2RhdGE6cn0pPT4KXy5LKF8uYUcse2RhdGE6cixjbGFzczpufSksbGlzdEl0ZW1MaWtlQ291bnRWaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKFRkYSx7ZGF0YTpyLGNsYXNzTmFtZTpufSksbGlzdEl0ZW1WaWV3Q291bnRWaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKFVkYSx7ZGF0YTpyLGNsYXNzTmFtZTpufSl9KSl9KSxfLksoXy5PLHtBOigpPT4hYigpJiYhIWEoKS5zZWxlY3Rpb25UZXh0LHRoZW46KCk9Pl8uSyhfLklCLG51bGwsXy5LKF8uVix7dGV4dDooKT0+YSgpLnNlbGVjdGlvblRleHQsY2xhc3NOYW1lOl8uUCgieXRMaXN0SXRlbVZpZXdNb2RlbFNlbGVjdGlvblRleHQiLCJ5dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdTZWxlY3Rpb25UZXh0Iil9KSxfLksoXy5PLHtBOmssdGhlbjpyPT5fLksoXy5NRCx7aWNvbjpyLGNsYXNzTmFtZToieXRMaXN0SXRlbVZpZXdNb2RlbENoZXZyb25JY29uIixhcmlhSGlkZGVuOiEwLHN0eWxlOl8uSUUoe2NvbG9yOnB9KX0pfSkpfSksXy5LKF8uTyx7QTooKT0+CiFiKCkmJmEoKS50cmFpbGluZ0ltYWdlQWNjZXNzb3J5VHlwZT09PSJMSVNUX0lURU1fSU1BR0VfQUNDRVNTT1JZX1RZUEVfTkVXX0NPTlRFTlRfSU5ESUNBVE9SIix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOmx9LF8uSygiZGl2Iix7Y2xhc3M6Inl0TGlzdEl0ZW1WaWV3TW9kZWxOZXdDb250ZW50SW5kaWNhdG9yIn0pKX0pLF8uSyhfLk8se0E6KCk9PiFiKCkmJmEoKS50cmFpbGluZ0xhYmVsLHRoZW46KCk9Pl8uSyhfLlYse3RleHQ6KCk9PmEoKS50cmFpbGluZ0xhYmVsLGNsYXNzTmFtZTpfLlAoInl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVsIiwieXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nIil9KX0pKX0pfSwieiIpO3ZhciBWZGE9Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgYj1fLnkoKS5yZXNvbHZlKF8uSW4oXy5pSCkpO3JldHVybiBfLksoImRpdiIse2NsYXNzOiJ5dExpc3RJdGVtVmlld01vZGVsQm90dG9tQWNjZXNzb3J5In0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmJvdHRvbUFjY2Vzc29yeX0sey4uLihiJiZ7aG9yaXpvbnRhbEJhclZpZXdNb2RlbDpifSl9KSl9LCJBIik7dmFyIHFJPV8uTChhPT57dmFyIGI9YS5kYXRhLGM9YS5jbGFzc05hbWUsZD1fLmVHKCgpPT5iKCkuaXNEaXNhYmxlZCYmYigpLmxhYmVsRGlzYWJsZWRDb2xvclRva2VuP2IoKS5sYWJlbERpc2FibGVkQ29sb3JUb2tlbjpiKCkubGFiZWxUZXh0Q29sb3JUb2tlbiksZT1fLmVHKCgpPT5iKCkuc3VwZXJMYWJlbENvbG9yVG9rZW4pO3JldHVybiBfLksoXy5PLHtBOigpPT5iKCkuc3VwZXJsYWJlbHx8YigpLnRpdGxlfHxiKCkuc3VidGl0bGV8fGIoKS5zdWJ0aXRsZUJhZGdlLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Y30sXy5LKF8uTyx7QTooKT0+YigpLnN1cGVybGFiZWwsdGhlbjpmPT5fLksoXy5WLHt0ZXh0OmYsY2xhc3NOYW1lOiJ5dExpc3RJdGVtVmlld01vZGVsU3VwZXJsYWJlbCIsc3R5bGU6Xy5JRSh7Y29sb3I6ZX0pfSl9KSxfLksoXy5PLHtBOigpPT5iKCkudGl0bGUsdGhlbjpmPT5fLksoImRpdiIse2NsYXNzOiJ5dExpc3RJdGVtVmlld01vZGVsVGl0bGVXcmFwcGVyIn0sCl8uSyhfLlYse3RleHQ6ZixjbGFzc05hbWU6Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsVGl0bGUiLHt5dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxlOigpPT5iKCkudGl0bGVNYXhMaW5lcz09PTF9KSxzdHlsZTpfLklFKHtjb2xvcjpkfSl9KSl9KSxfLksoXy5PLHtBOigpPT5iKCkuc3VidGl0bGVCYWRnZXx8YigpLnN1YnRpdGxlLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUNvbnRhaW5lciJ9LF8uSygiZGl2Iix7Y2xhc3M6Inl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUJhZGdlV3JhcHBlciJ9LF8uSyhfLlcse2RhdGE6KCk9PmIoKS5zdWJ0aXRsZUJhZGdlfSx7YmFkZ2VWaWV3TW9kZWw6KHtkYXRhOmZ9KT0+Xy5LKF8uYUcse2RhdGE6Zn0pfSkpLF8uSyhXZGEse2RhdGE6Yix5dzooKT0+ISFiKCkuc3VidGl0bGVCYWRnZX0pKX0pKX0pfSwiQiIpLFdkYT1fLkwoYT0+e3ZhciBiPV8uZUcoKCk9PmEuZGF0YSgpLnN1YkxhYmVsQ29sb3JUb2tlbik7CnJldHVybiBfLksoXy5PLHtBOigpPT5hLmRhdGEoKS5zdWJ0aXRsZSx0aGVuOmM9Pl8uSyhfLlYse3RleHQ6YyxjbGFzc05hbWU6Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsU3VidGl0bGUiLHt5dExpc3RJdGVtVmlld01vZGVsV2l0aEJhZGdlOmEueXd9KSxzdHlsZTpfLklFKHtjb2xvcjpifSl9KX0pfSwiQyIpO3ZhciBYZGE9Xy5MKCh7ZGF0YTphLGNlOmIsZnU6Yyxpc1RvZ2dsZWQ6ZCxkaXNhYmxlZDplLFh4OmYsbmE6aCxCYzprLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpsLGhvcml6b250YWxQYWRkaW5nOm0sWXg6bix1QjpwLG9uVGFwOnIsYXJpYUxhYmVsOnQsRGc6dn0pPT57dmFyIHo9KCk9PiEhYSgpLmlzRGlzYWJsZWR8fCEhZT8uKCksRT1fLmVHKCgpPT5hKCkudHJhaWxpbmdJY29uQ29sb3JUb2tlbik7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsTGF5b3V0V3JhcHBlciIse3l0TGlzdEl0ZW1WaWV3TW9kZWxDb250YWluZXI6KCk9PiFmPy4oKSx5dExpc3RJdGVtVmlld01vZGVsRGlzYWJsZWQ6eix5dExpc3RJdGVtVmlld01vZGVsSGFzU3VidGl0bGU6KCk9PiEhYSgpLnN1YnRpdGxlLHl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0OmgseXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlOm4seXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHk6Xy54KCJ3ZWJfZW5hYmxlX2xpc3RfaXRlbV9hY3Rpb25fdHlwb2dyYXBoeSIpLAp5dExpc3RJdGVtVmlld01vZGVsSW5Qb3B1cDprLHl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6KCk9Pmw/LigpJiYhZj8uKCkseXRMaXN0SXRlbVZpZXdNb2RlbE5vVHJhaWxpbmdUZXh0OigpPT4hYSgpLnNlbGVjdGlvblRleHQmJiFhKCkudHJhaWxpbmdMYWJlbH0sKCk9PnthOntzd2l0Y2goYSgpLmxheW91dFByaW9yaXR5KXtjYXNlICJMSVNUX0lURU1fTEFZT1VUX1BSSU9SSVRZX1RSQUlMSU5HIjp2YXIgQT0ieXRMaXN0SXRlbVZpZXdNb2RlbFByaW9yaXRpemVUcmFpbGluZyI7YnJlYWsgYX1BPXZvaWQgMH1yZXR1cm4gQX0pLHN0eWxlOl8uSUUoeyJwYWRkaW5nLWxlZnQiOm0sInBhZGRpbmctcmlnaHQiOm19KX0sXy5LKCJkaXYiLHtjbGFzczoieXRMaXN0SXRlbVZpZXdNb2RlbE1haW5Db250YWluZXIifSxfLksocEkse2RhdGE6YSxnZzohMCxjZTpiLGlzVG9nZ2xlZDpkLERnOnYsbmE6aH0pLF8uSyhfLk8se0E6cCx0aGVuOigpPT5fLksoXy5WQywKe2NvbW1hbmQ6KCk9Pl8uc0goYSgpLnJlbmRlcmVyQ29udGV4dCksb25DbGljazpyLGRpc2FibGVkOnosY2xhc3NOYW1lOl8uUCgieXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbk9yQW5jaG9yIiwieXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVyIiksdG9nZ2xlYWJsZTpkIT09dm9pZCAwLHRvZ2dsZWQ6ZCxhcmlhTGFiZWw6dH0sXy5LKHFJLHtkYXRhOmF9KSksVzooKT0+Xy5LKHFJLHtkYXRhOmEsY2xhc3NOYW1lOiJ5dExpc3RJdGVtVmlld01vZGVsVGV4dFdyYXBwZXIifSl9KSxfLksoXy5PLHtBOigpPT4hIWMsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nIixzdHlsZTpfLklFKHtjb2xvcjpFfSl9LGMmJl8uSyhjLG51bGwpKSxXOigpPT5fLksocEkse2RhdGE6YSxnZzohMSxjZTpiLGlzVG9nZ2xlZDpkLERnOnYsbmE6aH0pfSkpLF8uSyhfLk8se0E6KCk9PmEoKS5ib3R0b21BY2Nlc3NvcnksdGhlbjooKT0+Xy5LKFZkYSx7ZGF0YTphfSl9KSl9LAoiRCIpO3ZhciBbaEksUmRhXT1fLkooe30sdm9pZCAwLCJwZHJhRiIpLGdJPW5ldyBNYXA7dmFyIHNJPV8uTChhPT57dmFyIHtuYW1lOmIsb25DaGFuZ2U6YyxvbkNsaWNrOmQsY2hlY2tlZDplLFllOmYsWWk6aCxxajprLG5hOmwsVmM6bSxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6bixob3Jpem9udGFsUGFkZGluZzpwLGRpc2FibGVkOnIsYXJpYUxhYmVsOnR9PV8uREMoYSx7Y2hlY2tlZDohMSxkaXNhYmxlZDohMX0pO2E9ImNoZWNrYm94IitfLk9IKCk7cmV0dXJuIF8uSygiY2hlY2tib3gtc2hhcGUiLG51bGwsXy5LKCJsYWJlbCIse2NsYXNzOl8uUCgieXRDaGVja2JveFNoYXBlSG9zdCIsayx7eXRDaGVja2JveFNoYXBlSG9zdENvbXBhY3Q6bCx5dENoZWNrYm94U2hhcGVEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6bn0pLHN0eWxlOl8uSUUoeyJwYWRkaW5nLWxlZnQiOnAsInBhZGRpbmctcmlnaHQiOnB9KX0sXy5LKCJpbnB1dCIse2NsYXNzOiJ5dENoZWNrYm94U2hhcGVJbnB1dCIsaWQ6YSxjaGVja2VkOmUsbmFtZTpiLHR5cGU6ImNoZWNrYm94IixkaXNhYmxlZDpyLAoiYXJpYS1sYWJlbCI6dCwicHJvcDpjaGVja2VkIjplLCJvbjpjaGFuZ2UiOmZ1bmN0aW9uKHYpe2M/Lih2KTt2LnN0b3BQcm9wYWdhdGlvbigpfSwib246Y2xpY2siOmZ1bmN0aW9uKHYpe2Q/Lih2KTt2LnN0b3BQcm9wYWdhdGlvbigpfX0pLF8uSyhfLk8se0E6KCk9PiFoPy4oKSx0aGVuOigpPT5fLksockkse2dnOiEwLFZjOm19KX0pLF8uSyhfLk8se0E6KCk9PiEhZix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dENoZWNrYm94U2hhcGVMYWJlbCJ9LGY/LigpKX0pLF8uSyhfLk8se0E6aCx0aGVuOigpPT5fLksockkse2dnOiExLFZjOm19KX0pKSl9LCJFIik7c0kuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvbkNoYW5nZTohMCxvbkNsaWNrOiEwLFllOiEwfX07CnZhciByST1fLkwoKHtWYzphfSk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dENoZWNrYm94U2hhcGVDaGVja2JveCIsYSx7eXRDaGVja2JveFNoYXBlQ2hlY2tib3hEZWZhdWx0U3R5bGU6KCk9PiFhPy4oKX0pLCJhcmlhLWhpZGRlbiI6InRydWUifSxfLksoXy5NRCx7aWNvbjpfLngoImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiKT8ic3F1YXJlIjoiQk9YX0VNUFRZIn0pLF8uSyhfLk1ELHtpY29uOl8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpPyJjaGVja19zcXVhcmUiOiJCT1hfQ0hFQ0siLGFjdGl2ZTohMH0pKSwiRiIpO3ZhciB0ST1fLkwoKHtkYXRhOmEsSWE6YixuYTpjLG9uVGFwOmQseHM6ZSxjZTpmLGRpc2FibGVkOmgsQmM6ayxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6bCxpc092ZXJsYXk6bSxpc1RvZ2dsZWQ6bixhcmlhTGFiZWw6cCxhcmlhUHJlc3NlZDpyLERnOnQsYnA6dn0pPT57ZnVuY3Rpb24geihiYSl7YmEuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIGFhPWEoKS5lbnRpdHlLZXksT2E9RygpLmlzU2VsZWN0ZWQ7aWYoYWEmJk0oKSl7aWYoRygpLnNlbGVjdGlvblN0eWxlPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfUkFESU8iJiZPYSlyZXR1cm47aUkoYWEsIU9hLEcoKS5zZWxlY3Rpb25TdHlsZSl9ZD9kKGJhKTooYWE9Xy5zSChHKCkucmVuZGVyZXJDb250ZXh0KSxPYT1fLnkoKS5yZXNvbHZlKF8uVUQpLGFhJiZPYSYmT2EucmVzb2x2ZUNvbW1hbmQoYWEsYmEudGFyZ2V0P3tmb3JtOntlbGVtZW50OmJhLnRhcmdldCxzb3VyY2VEYXRhOmFhfX06dm9pZCAwKSl9dmFyIEU9IV8ueCgid2ViX2VuYWJsZV9raWxsc3dpdGNoX2Zvcl9zZWxlY3RhYmxlX2xpc3RfaXRlbV9vbl90YXBfZml4IiksCkE9IV8ueCgid2ViX2VuYWJsZV9raWxsc3dpdGNoX2Zvcl9za2lwX2NoaWxkX3RhZ3MiKSxGPV8uUUgoKCk9PmEoKS5ob3Jpem9udGFsUGFkZGluZ1Rva2VuKSxDPSgpPT5sPy4oKXx8YSgpLmRpc2FibGVIb3Jpem9udGFsUGFkZGluZyxHPV8uTigoKT0+e3ZhciBiYT1hKCksYWE9digpLE9hPWEoKT8uZW50aXR5U2VsZWN0b3JUeXBlP3suLi5iYSwuLi5hYS5kYXRhfTpiYTtPYS5zZWxlY3Rpb25TdHlsZT09PSJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX1JBRElPIiYmUWRhKE9hLmVudGl0eUtleSk7dmFyIEpiPU9hLmVudGl0eUtleTtiYT1KYj9oSSgpW0piXTp2b2lkIDA7YWE9ISFPYS5pc1NlbGVjdGVkO3ZhciB6YT1iYSE9PXZvaWQgMD9iYTphYTtKYiYmT2Euc2VsZWN0aW9uU3R5bGU9PT0iTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9SQURJTyImJmFhJiZiYT09PXZvaWQgMCYmcXVldWVNaWNyb3Rhc2soKCk9PntpSShKYiwhMCxPYS5zZWxlY3Rpb25TdHlsZSl9KTtyZXR1cm57Li4uT2EsCmlzU2VsZWN0ZWQ6emF9fSx2b2lkIDAsInZSa255IiksRD0oKT0+ISFHKCkuaXNEaXNhYmxlZHx8ISFoPy4oKSxIPV8uVEgoKCk9PkcoKS5yZW5kZXJlckNvbnRleHQpLFI9KCk9PnA/LigpfHxIKCk/LmxhYmVsLE09KCk9PiEoIUcoKS5zZWxlY3Rpb25TdHlsZXx8RygpLnNlbGVjdGlvblN0eWxlPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfVU5TUEVDSUZJRUQiKSxTPSgpPT4oXy50SChHKCkucmVuZGVyZXJDb250ZXh0KXx8ZCkmJiFNKCksWT0oKT0+Xy50SChHKCkucmVuZGVyZXJDb250ZXh0KXx8ISFkfHxNKCkscGE9Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsQ29udGFpbmVyIix7eXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlOlkseXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHk6Xy54KCJ3ZWJfZW5hYmxlX2xpc3RfaXRlbV9hY3Rpb25fdHlwb2dyYXBoeSIpLHl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0OmMseXRMaXN0SXRlbVZpZXdNb2RlbEluUG9wdXA6aywKeXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVIb3Jpem9udGFsUGFkZGluZzooKT0+Qz8uKCkmJk0oKX0pLG9hPV8uUCgieXRMaXN0SXRlbVZpZXdNb2RlbEltYWdlQ29udGFpbmVyIiwoKT0+RygpLmxlYWRpbmdJbWFnZXx8RygpLmxlYWRpbmdBY2Nlc3Nvcnk/Inl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZyI6Inl0TGlzdEl0ZW1WaWV3TW9kZWxMZWFkaW5nIiksW1UsaGFdPV8uSighMSx2b2lkIDAsImN1WTRtZiIpLG1hPSgpPT57dmFyIGJhO2lmKGJhPV8ueCgid2ViX2J1dHRvbl9vcl9hbmNob3JfbGlzdF9pdGVtIikmJlM/LigpKWJhPWEoKSxiYT0hKGJhLnRyYWlsaW5nTGFiZWx8fGJhLnNlbGVjdGlvblRleHQpO3JldHVybiBiYX0sdGE9KCk9Pl8uSyhYZGEse2RhdGE6RyxjZTpmLGZ1OmUsaXNUb2dnbGVkOm4sZGlzYWJsZWQ6aCxYeDpNLG5hOmMsQmM6ayxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6Qyxob3Jpem9udGFsUGFkZGluZzpGLFl4OlMsdUI6bWEsb25UYXA6ZCxhcmlhTGFiZWw6UiwKRGc6dH0pLFQ9KCk9PntpZihiPy4oKSl7bGV0IGJhPUcoKS5zZWxlY3Rpb25TdHlsZTtyZXR1cm4gYmE9PT0iTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9DSEVDS0JPWCI/Im1lbnVpdGVtY2hlY2tib3giOmJhPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfUkFESU8ifHxiYT09PSJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX0RFRkFVTFQiPyJtZW51aXRlbXJhZGlvIjoibWVudWl0ZW0ifXJldHVybiJsaXN0aXRlbSJ9O3JldHVybiBfLksoInl0LWxpc3QtaXRlbS12aWV3LW1vZGVsIix7ZWw6Xy5yRihfLnVIKCgpPT5EKCk/dm9pZCAwOkcoKS5yZW5kZXJlckNvbnRleHQsdm9pZCAwLHZvaWQgMCxfLngoIndlYl9idXR0b25fb3JfYW5jaG9yX2xpc3RfaXRlbSIpP1siQSIudG9TdHJpbmcoKSwiQlVUVE9OIi50b1N0cmluZygpXTpbXSksU2RhKGZ1bmN0aW9uKGJhKXtEKCl8fEUmJk0oKXx8KE0oKT96KGJhKTpkPy4oYmEpKX0sQT9bIkEiLnRvU3RyaW5nKCksIkJVVFRPTiIudG9TdHJpbmcoKV06CltdLCgpPT4hWSgpKSxfLlVIKCgpPT5TPy4oKSx7Zm9jdXNpbjpmdW5jdGlvbigpe18ueSgpLnJlc29sdmUoXy5JbihfLmpIKSk/LlhlKCkmJmhhKCEwKX0sZm9jdXNvdXQ6ZnVuY3Rpb24oKXtoYSghMSl9fSkpLGNsYXNzOl8uUCgieXRMaXN0SXRlbVZpZXdNb2RlbEhvc3QiLHt5dExpc3RJdGVtVmlld01vZGVsSXNPdmVybGF5Om0seXRMaXN0SXRlbVZpZXdNb2RlbEtleWJvYXJkRm9jdXNlZDpVLHl0TGlzdEl0ZW1WaWV3TW9kZWxIaWRkZW46KCk9PmEoKT8uZW50aXR5U2VsZWN0b3JUeXBlP3YoKS5pc0hpZGRlbjohMX0pLCJkYXRhLXRhcmdldC1pZCI6KCk9PkcoKS50YXJnZXRJZCxyb2xlOlQsdGFiaW5kZXg6KCk9Pnt2YXIgYmE9UygpO1koKTt2YXIgYWE9bWEoKSxPYT1EKCk7YmE9IWFhJiYoXy54KCJ3ZWJfZW5hYmxlX2tpbGxzd2l0Y2hfdGFiaW5kZXhfZml4Iik/ZHx8YmE6YmEpP09hPy0xOjA6dm9pZCAwO3JldHVybiBiYX0sIm9uOmtleWRvd24iOmZ1bmN0aW9uKGJhKXtpZighQXx8CiFbIkEiLnRvU3RyaW5nKCksIkJVVFRPTiIudG9TdHJpbmcoKV0uaW5jbHVkZXMoYmEudGFyZ2V0LnRhZ05hbWUpKWlmKGJhLmtleT09PSJFbnRlciJ8fE0oKSYmYmEua2V5PT09IiAiKWJhLnByZXZlbnREZWZhdWx0KCksRCgpfHwoRSYmTSgpP3ooYmEpOmJhLmN1cnJlbnRUYXJnZXQuY2xpY2soKSl9LCJhcmlhLWxhYmVsIjpSLCJhcmlhLWNoZWNrZWQiOigpPT57dmFyIGJhPVQoKTtyZXR1cm4gYmE9PT0ibWVudWl0ZW1jaGVja2JveCJ8fGJhPT09Im1lbnVpdGVtcmFkaW8iP0coKS5pc1NlbGVjdGVkOnZvaWQgMH0sImFyaWEtcHJlc3NlZCI6KCk9PmI/LigpfHxNKCk/dm9pZCAwOnI/LigpfSxfLksoXy5PLHtBOk0sdGhlbjooKT0+Xy5LKF8uRUUsbnVsbCxfLksoXy5DRSx7d2hlbjooKT0+RygpLnNlbGVjdGlvblN0eWxlPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfQ0hFQ0tCT1gifSwoKT0+Xy5LKHNJLHtZZTp0YSxuYTpjLGNoZWNrZWQ6KCk9PiEhRygpLmlzU2VsZWN0ZWQsCllpOigpPT4hKCFHKCkubGVhZGluZ0ltYWdlJiYhRygpLmxlYWRpbmdBY2Nlc3NvcnkpLHFqOnBhLFZjOm9hLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpDLGhvcml6b250YWxQYWRkaW5nOkYsb25DbGljazpFP3o6dm9pZCAwLGRpc2FibGVkOkQsYXJpYUxhYmVsOlJ9KSksXy5LKF8uQ0Use3doZW46KCk9PkcoKS5zZWxlY3Rpb25TdHlsZT09PSJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX1JBRElPIn0sKCk9Pl8uSyhfLkFFLHtZZTp0YSxuYTpjLGNoZWNrZWQ6KCk9PiEhRygpLmlzU2VsZWN0ZWQsWWk6KCk9PiEoIUcoKS5sZWFkaW5nSW1hZ2UmJiFHKCkubGVhZGluZ0FjY2Vzc29yeSkscWo6cGEsVmM6b2Esb25DbGljazpFP3o6dm9pZCAwLGRpc2FibGVkOkQsYXJpYUxhYmVsOlJ9KSksXy5LKF8uQ0Use3doZW46KCk9PkcoKS5zZWxlY3Rpb25TdHlsZT09PSJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX0RFRkFVTFQifSwoKT0+Xy5LKF8uQUUse1llOnRhLG5hOmMsY2hlY2tlZDooKT0+CiEhRygpLmlzU2VsZWN0ZWQsWWk6KCk9PiEoIUcoKS5sZWFkaW5nSW1hZ2UmJiFHKCkubGVhZGluZ0FjY2Vzc29yeSkscWo6cGEsVmM6b2EsaGs6ITAsb25DbGljazpFP3o6dm9pZCAwLGRpc2FibGVkOkQsYXJpYUxhYmVsOlJ9KSksXy5LKF8uREUsbnVsbCx0YSkpLFc6dGF9KSl9LCJHIiksWWRhPV8uTChhPT57dmFyIGI9Xy5jSShjPT5QZGEoYS5kYXRhKCksYykpO3JldHVybiBfLksodEksey4uLmEsYnA6Yn0pfSwiSCIpO18uQ0Q9Xy5MKGE9Pl8uSyhfLk8se0E6KCk9PiEhYS5kYXRhKCk/LmVudGl0eVNlbGVjdG9yVHlwZSx0aGVuOigpPT5fLksoWWRhLHsuLi5hfSksVzooKT0+Xy5LKHRJLHsuLi5hLGJwOigpPT4oe30pfSl9KSwiSSIpO18uQ0QuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvblRhcDohMCx4czohMH19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLldkKCJwZTJvamIiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5RTD1mdW5jdGlvbihhLGIpe2lmKGEmJmIpc3dpdGNoKGIpe2Nhc2UgIlNFTEVDVElPTl9UWVBFX0JPT0wiOnJldHVybiBhLmJvb2xWYWx1ZTtjYXNlICJTRUxFQ1RJT05fVFlQRV9JTlQiOnJldHVybiBhLmludFZhbHVlO2Nhc2UgIlNFTEVDVElPTl9UWVBFX1NUUklORyI6cmV0dXJuIGEuc3RyaW5nVmFsdWU7Y2FzZSAiU0VMRUNUSU9OX1RZUEVfUFJJVkFDWV9TVEFUVVMiOnJldHVybiBhLnByaXZhY3lTdGF0dXNWYWx1ZTtjYXNlICJTRUxFQ1RJT05fVFlQRV9USU1FX1BJQ0tFUl9GT1JNQVQiOnJldHVybiBhLnRpbWVQaWNrZXJGb3JtYXRWYWx1ZTtjYXNlICJTRUxFQ1RJT05fVFlQRV9FTkdBR0VNRU5UX1BFUk1JU1NJT04iOnJldHVybiBhLmVuZ2FnZW1lbnRQZXJtaXNzaW9uVmFsdWV9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5DST1mdW5jdGlvbihhKXtfLlZILm13KCkoYSl9O18uREk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLlhIKCk7cmV0dXJuIF8uTigoKT0+e2MoKTtyZXR1cm4gXy5aSChhLFtfLkJ2KGIpfHwiIl0pfSx7ZGVidWdOYW1lOiJMVVpzbGYifSwiWjEwNXQiKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uUkw9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5xQShhLmVudGl0aWVzLCJsaWtlU3RhdHVzRW50aXR5IixiKX07Xy5TTD1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsImxpa2VDb3VudEVudGl0eSIsYil9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgWWZhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uTigoKT0+Xy5CdihhKT8/e30se2VxdWFsczpfLkdJfSwielRVWlFjIiksYz1fLk4oKCk9Pnt2YXIge2Zvcm1JZDpkLGZpZWxkSWQ6ZX09YigpO2lmKGQmJmUpe2E6e2xldCBoPV8uU0koZCk7aWYoaCl7dmFyIGY9Xy5NSShlKTtpZihmPWhbZl0pe2lmKCEoImZ1bmN0aW9uIj09dHlwZW9mIF8uVEwmJmYgaW5zdGFuY2VvZiBfLlRMKSl0aHJvdyBfLklJKGBGaWVsZCAke2V9IGluIGZvcm0gJHtkfSBpcyBub3QgYSBTY2FsYXJMaXN0RmllbGQuYCk7YnJlYWsgYX19Zj12b2lkIDB9cmV0dXJuIGZ9fSx2b2lkIDAsIkUwS1NGZCIpO3JldHVybigpPT5jKCl9LFpmYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsInNlbGVjdGlvblZhbHVlTGlzdEVudGl0eSIsYil9LCRmYT1mdW5jdGlvbihhLGIpe2IuaW5jbHVkZXMoYSk/Yj1iLmZpbHRlcihjPT5jIT09YSk6Yi5wdXNoKGEpO3JldHVyblsuLi5iXX0sVUw9bmV3IF8uSSgiY2hlY2tib3hJdGVtVmlld01vZGVsIik7dmFyIGFnYT1fLkwoYT0+e3ZhciB7ZGF0YTpiLFdiOmMsc2VsZWN0ZWQ6ZCxvblRhcDplLGdyb3VwTmFtZTpmLGNsYXNzTmFtZTpoLG5hOmssZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOmwsTGk6bX09Xy5EQyhhLHtXYjohMSxzZWxlY3RlZDohMSxuYTohMSxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6ITEsTGk6ITF9KSxuPSgpPT5jKCk/MjpiKCkuZm9ybUZpZWxkTWV0YWRhdGEmJiFtKCk/MzoxO18uVUooKCk9PntuKCk9PT0yJiZiKCkuZGVmYXVsdFNlbGVjdGVkP18uR3AoRXJyb3IoInVkIikpOm4oKT09PTEmJmQoKT9fLkdwKEVycm9yKCJ2ZCIpKTpuKCk9PT0zJiZkKCkmJl8uR3AoRXJyb3IoIndkIikpfSk7dmFyIHA9Xy5aSSgoKT0+YigpLmZvcm1GaWVsZE1ldGFkYXRhKSxbcix0XT1fLkFDKCgpPT57aWYobigpPT09MSlyZXR1cm4gYigpLmRlZmF1bHRTZWxlY3RlZH0pO3JldHVybiBfLksoInl0LWNoZWNrYm94LWl0ZW0tdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXRDaGVja2JveEl0ZW1WaWV3TW9kZWxIb3N0IiwKaCl9LF8uSyhfLkNELHtkYXRhOigpPT57dmFyIHY9YigpLHo9bigpPT09Mz9wKCk/LnZhbHVlfHwhMTpuKCk9PT0xP3IoKTpkKCk7cmV0dXJue3RpdGxlOnYudGV4dCxzdWJ0aXRsZTp2LnN1YnRleHQsc3VwZXJsYWJlbDp2LnN1cGVybGFiZWwsaXNTZWxlY3RlZDohIXosaXNEaXNhYmxlZDp2LmlzRGlzYWJsZWQsc2VsZWN0aW9uU3R5bGU6IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfQ0hFQ0tCT1gifX0sb25UYXA6KCk9Pnt2YXIgdj0hKG4oKT09PTM/cCgpPy52YWx1ZTpuKCk9PT0xP3IoKTpkKCkpO24oKT09PTM/cCgpPy51cGRhdGVWYWx1ZSh2KTpuKCk9PT0xJiZ0KHYpO2U/Lih2LGIoKSxmPy4oKSl9LG5hOmssZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOmx9KSl9LCJEYSIpO18udEQ9Xy5MKCh7ZGF0YTphLFdiOmIsZEE6YyxnejpkLGdyb3VwTmFtZTplLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpmLG5hOmh9KT0+e3ZhciBrPV8uREkoWmZhLCgpPT5hKCkuaGlkZUl0ZW1zRW50aXR5S2V5KSxsPSgpPT5iPy4oKT8yOmEoKS5mb3JtRmllbGRNZXRhZGF0YT8zOjEsbT0oKT0+ZT8uKCl8fGEoKS5rZXk7Xy5VSigoKT0+e2woKT09PTImJmEoKS5kZWZhdWx0U2VsZWN0ZWRLZXlzP18uR3AoRXJyb3IoInhkIikpOmwoKT09PTEmJmM/LigpP18uR3AoRXJyb3IoInlkIikpOmwoKT09PTMmJihjPy4oKSE9PXZvaWQgMCYmXy5HcChFcnJvcigiemQiKSksYSgpLmRlZmF1bHRTZWxlY3RlZEtleXMmJl8uR3AoRXJyb3IoIkFkIikpKX0pO3ZhciBuPVlmYSgoKT0+YSgpLmZvcm1GaWVsZE1ldGFkYXRhKSxbcCxyXT1fLkFDKCgpPT57aWYobCgpPT09MSlyZXR1cm4gYSgpLmRlZmF1bHRTZWxlY3RlZEtleXN9KSx0PV8uWkkoKCk9Pih7Zm9ybUlkOmEoKS5zZWFyY2hRdWVyeUZpZWxkTWV0YWRhdGE/LmZvcm1JZHx8CiIiLGZpZWxkSWQ6YSgpLnNlYXJjaFF1ZXJ5RmllbGRNZXRhZGF0YT8uZmllbGRJZHx8IiJ9KSksdj1fLk4oKCk9Pnt2YXIgRT1hKCkuY2hlY2tib3hlc3x8W10sQT1rKCk7aWYoQT8udmFsdWVzJiZBLnZhbHVlcy5sZW5ndGg+MCl7bGV0IEM9QS50eXBlLEc9bmV3IFNldChBLnZhbHVlcy5tYXAoRD0+Xy5RTChELEMpKS5maWx0ZXIoRD0+RCE9PXZvaWQgMCkpO0U9RS5maWx0ZXIoRD0+e0Q9Xy5CKEQsVUwpO2lmKCFEPy52YWx1ZSlyZXR1cm4hMDtEPV8uUUwoRC52YWx1ZSxDKTtyZXR1cm4gRD09PXZvaWQgMHx8IUcuaGFzKEQpfSl9dmFyIEY9KHQoKT8udmFsdWV8fCIiKS50b0xvd2VyQ2FzZSgpO3JldHVybiBGP0UuZmlsdGVyKEM9PntDPV8uQihDLFVMKTtyZXR1cm4gQz8udGV4dD8uY29udGVudD9DLnRleHQuY29udGVudC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKEYpOiExfSk6RX0sdm9pZCAwLCJYNlk1TWMiKSx6PWFzeW5jKEUsQSxGKT0+e0U9W107bCgpPT09MSYmQS5rZXk/KEU9CiRmYShBLmtleSxwKCl8fFtdKSxyKEUpKTpsKCk9PT0zJiZBLmtleSYmKEU9bigpPy52YWx1ZXx8W10sRS5pbmNsdWRlcyhBLmtleSk/KEU9RS5pbmRleE9mKEEua2V5KSxFIT09LTEmJmF3YWl0IG4oKT8ucmVtb3ZlKEUpKTphd2FpdCBuKCk/LmFkZChBLmtleSksRT1uKCk/LnZhbHVlfHxbXSk7ZD8uKEEsRSxGKX07cmV0dXJuIF8uSygieXQtY2hlY2tib3gtZ3JvdXAtdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXRDaGVja2JveEdyb3VwVmlld01vZGVsSG9zdCIpfSxfLksoImZpZWxkc2V0Iix7Y2xhc3M6Xy5QKCJ5dENoZWNrYm94R3JvdXBWaWV3TW9kZWxGaWVsZHNldCIpfSxfLksoImRpdiIse3JvbGU6Imxpc3QifSxfLksoXy5XLHtkYXRhOnZ9LHtjaGVja2JveEl0ZW1WaWV3TW9kZWw6KHtkYXRhOkV9KT0+Xy5LKGFnYSx7ZGF0YTpFLFdiOiEwLHNlbGVjdGVkOigpPT57dmFyIEE9bCgpPT09Mj9jPy4oKXx8W106bCgpPT09Mz9uKCk/LnZhbHVlfHxbXTpwKCl8fFtdLEY9RSgpLmtleTsKcmV0dXJuIEY/QS5pbmNsdWRlcyhGKTohMX0sb25UYXA6eixncm91cE5hbWU6bSxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6ZixuYTpofSl9KSkpKX0sIkVhIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoInZEY2sxZCIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkpKPWZ1bmN0aW9uKGEsYil7aWYoIWEmJiFiKXJldHVybiJtZWRpdW0iO2E9TWF0aC5tYXgoYXx8MCxifHwwKTtyZXR1cm4gYT49MjU2PyJsYXJnZSI6YT49OTY/Im1lZGl1bSI6InNtYWxsIn07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBHZWE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMjpyZXR1cm4ieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UiO2Nhc2UgMzpyZXR1cm4ieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlT3ZlcmxheVRvdWNoUmVzcG9uc2UiO2Nhc2UgNDpyZXR1cm4ieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlT3ZlcmxheVRvdWNoUmVzcG9uc2VJbnZlcnNlIjtkZWZhdWx0OnJldHVybiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlIn19LEhlYT1mdW5jdGlvbihhLGIpe2lmKGIpcmV0dXJuInl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVTbWFsbCI7aWYoYSlzd2l0Y2goYSl7Y2FzZSAibGFyZ2UiOnJldHVybiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUaHVtYm5haWxTaXplTGFyZ2UiO2Nhc2UgIm1lZGl1bSI6cmV0dXJuInl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW0iO2RlZmF1bHQ6cmV0dXJuInl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVTbWFsbCJ9fSwKSWVhPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPW5ldyBBbmltYXRpb24obmV3IEtleWZyYW1lRWZmZWN0KGEsW3tvZmZzZXQ6MCxvcGFjaXR5Oi4xLGVhc2luZzoiY3ViaWMtYmV6aWVyKDAuMDUsIDAuMDAsIDAuMDAsIDEuMDApIn0se29mZnNldDoxLG9wYWNpdHk6MH1dLHtkdXJhdGlvbjo0MDB9KSxkb2N1bWVudC50aW1lbGluZSk7dGhpcy5vPW5ldyBBbmltYXRpb24obmV3IEtleWZyYW1lRWZmZWN0KGIsW3tvZmZzZXQ6MCxvcGFjaXR5Oi4yLGVhc2luZzoiY3ViaWMtYmV6aWVyKDAuMjAsIDAuMDAsIDAuNjAsIDEuMDApIn0se29mZnNldDoxLG9wYWNpdHk6MH1dLHtkdXJhdGlvbjo0MDB9KSxkb2N1bWVudC50aW1lbGluZSl9cGxheSgpe3RoaXMuai5wbGF5Py4oKTt0aGlzLm8ucGxheT8uKCl9Y2FuY2VsKCl7dGhpcy5qLmNhbmNlbD8uKCk7dGhpcy5vLmNhbmNlbD8uKCl9fTtfLlVDPV8uTCgoe21vZGVsOmEsVG06YixWbTpjLFVtOmQsUmI6ZX0pPT57ZnVuY3Rpb24gZigpe3YoKTtyKCExKX1mdW5jdGlvbiBoKCl7dD8uY2FuY2VsKCk7cighMCl9dmFyIGs9Xy51RSgieXQtdG91Y2gtZmVlZGJhY2stc2hhcGUiKSxsPV8udUUoImRpdiIpLG09Xy51RSgiZGl2IiksW24scF09Xy5BQygoKT0+Yz8uKCl8fGQ/LigpPyExOiEhYj8uKCl8fCExKSxyPXAsdD12b2lkIDAsdj0oKT0+eyF0JiZtLnZhbHVlJiZsLnZhbHVlJiZ0eXBlb2YgQW5pbWF0aW9uPT09ImZ1bmN0aW9uIiYmdHlwZW9mIEtleWZyYW1lRWZmZWN0PT09ImZ1bmN0aW9uIiYmKHQ9bmV3IEllYShtLnZhbHVlLGwudmFsdWUpKTt0Py5wbGF5KCl9O18ubkUoKCk9PntjPy4oKSYmdigpfSwiQ1kyUyIpO18ubkUoKCk9PntiPy4oKSYmdD8uY2FuY2VsKCl9LCJ2ZXFmNmIiKTtfLm5FKCgpPT57ZD8uKCkmJnQ/LmNhbmNlbCgpfSwiVFZyZkNjIik7Xy5ZdSgoKT0+e3QmJih0Py5jYW5jZWwoKSx0PXZvaWQgMCl9KTsKcmV0dXJuIF8uSygieXQtdG91Y2gtZmVlZGJhY2stc2hhcGUiLHtlbDprLGNsYXNzOl8uUCgieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlSG9zdCIsKCk9PkdlYShhKCkuY29sb3IpLCgpPT5IZWEoYSgpLnRodW1ibmFpbFNpemUsISFhKCkuaXNFeHRlbmRlZCkse3l0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZvY3VzZWQ6KCk9PiEhYSgpLmZvY3VzZWQmJiFhKCkuZGlzYWJsZWQseXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlQ2lyY3VsYXI6KCk9PiEhYSgpLmNpcmN1bGFyLHl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZURvd246bix5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUcmlnZ2VyRXZlbnRzOigpPT4hIWEoKS5tQix5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlcmVkOigpPT5lPy4oKX0pLHN0eWxlOl8uSUUoe21hcmdpbjooKT0+YSgpLm1hcmdpbj9gLSR7YSgpLm1hcmdpbn1weGA6dm9pZCAwLCJtYXJnaW4tdG9wIjooKT0+YSgpLnhwP2AtJHthKCkueHB9cHhgOnZvaWQgMH0pLCJvbjptb3VzZWRvd24iOmgsCiJvbjptb3VzZXVwIjpmLCJvbjpwb2ludGVybGVhdmUiOmZ1bmN0aW9uKCl7dD8uY2FuY2VsKCk7cighMSl9LCJvbjp0b3VjaHN0YXJ0IjpoLCJvbjp0b3VjaGVuZCI6ZiwiYXJpYS1oaWRkZW4iOiEwfSxfLksoXy5PLHtBOigpPT4hIWEoKS5ObCx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckVmZmVjdCIsc3R5bGU6Xy5JRSh7ImJvcmRlci1yYWRpdXMiOigpPT5hKCkuYm9yZGVyUmFkaXVzLGJhY2tncm91bmQ6KCk9Pnt7bGV0IEU9YSgpLk5sO2lmKEUpe3ZhciB6PVtdO2ZvcihsZXQgQSBvZiBFPy5saWdodGluZ1RlY2huaXF1ZXN8fFtdKXN3aXRjaChBKXtjYXNlIDI6ei5wdXNoKGBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAke0U/LnBhbGV0dGU/LmtleUxpZ2h0fSwgJHtFPy5wYWxldHRlPy5iYWNrZ3JvdW5kfSlgKX16LnB1c2goYSgpLk5sPy5wYWxldHRlPy5iYWNrZ3JvdW5kKTt6PXouam9pbigiLCAiKX1lbHNlIHo9dm9pZCAwfXJldHVybiB6fX0pfSl9KSwKXy5LKCJkaXYiLHtjbGFzczoieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tlIixzdHlsZTpfLklFKHsiYm9yZGVyLXJhZGl1cyI6KCk9PmEoKS5ib3JkZXJSYWRpdXMsImJvcmRlci1jb2xvciI6KCk9PmEoKS50cz8ucGFsZXR0ZT8uYmFja2dyb3VuZH0pLGVsOmx9KSxfLksoImRpdiIse2NsYXNzOiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVGaWxsIixzdHlsZTpfLklFKHsiYm9yZGVyLXJhZGl1cyI6KCk9PmEoKS5ib3JkZXJSYWRpdXMsImJhY2tncm91bmQtY29sb3IiOigpPT5hKCkudHM/LnBhbGV0dGU/LmJhY2tncm91bmR9KSxlbDptfSkpfSwiVCIpO18uVUMuaWRvbUNvbXBhdD0hMDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiT3RLU0plIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBPYWEsUGFhLFFhYTtPYWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz17fSxkPU9iamVjdC5rZXlzKGEpO2ZvcihsZXQgZSBvZiBkKWNbZV09YihlLGFbZV0pO3JldHVybiBjfTtQYWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdHlwZW9mIGEhPT0ib2JqZWN0Inx8YT09PW51bGw/ITE6T2JqZWN0LmtleXMoYikuZXZlcnkoYz0+YyBpbiBhKX07Xy5pQT1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKE9iamVjdC5rZXlzKGEpLm1hcChiPT5bYixiXSkpfTtRYWE9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBPYWEoYywoZCxlKT0+KGYsLi4uaCk9PlBhYShmLGEpP2UoZltiXSwuLi5oKTplKGYsLi4uaCkpfTtfLmpBPWZ1bmN0aW9uKGEpe3JldHVybihiLGMpPT5RYWEoYSxiLGMpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFRhYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEsInBsYXlsaXN0TG9vcFN0YXRlRW50aXR5IixiKT8/dm9pZCAwfSxVYWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5xQShhLCJ0b2dnbGVNZW51U2VydmljZUl0ZW1FbnRpdHkiLGIpPz92b2lkIDB9LHdBPV8uaUEoe2VudGl0aWVzOnt9fSk7Xy54QT1fLmpBKHdBKSh3QS5lbnRpdGllcyx7YkE6ZnVuY3Rpb24oYSxiKXtyZXR1cm4oXy5xQShhLCJzZnZBdWRpb0l0ZW1DdXJyZW50bHlQbGF5aW5nRW50aXR5IixiKT8/dm9pZCAwKT8uc2Z2QXVkaW9JdGVtUGxheWJhY2tTdGF0ZT8/dm9pZCAwfSx0SzpUYWEsZUI6VWFhfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uWkM9bmV3IF8uSSgibGlzdEl0ZW1WaWV3TW9kZWwiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIHZJO18udUk9ZnVuY3Rpb24oYSxiKXtpZihfLnRBPy5lbmNvZGVJbnRvKXtsZXQge3JlYWQ6ZCx3cml0dGVuOmV9PV8udEEuZW5jb2RlSW50byhhLGIpO3JldHVybiBkPGEubGVuZ3RoP2EubGVuZ3RoKjQ6ZX12YXIgYz0wO2ZvcihsZXQgZD0wO2Q8YS5sZW5ndGg7ZCsrKXtsZXQgZT1hLmNoYXJDb2RlQXQoZCk7ZTwxMjg/YltjKytdPWU6KGU8MjA0OD9iW2MrK109ZT4+NnwxOTI6KChlJjY0NTEyKT09PTU1Mjk2JiZkKzE8YS5sZW5ndGgmJihhLmNoYXJDb2RlQXQoZCsxKSY2NDUxMik9PT01NjMyMD8oZT02NTUzNisoKGUmMTAyMyk8PDEwKSsoYS5jaGFyQ29kZUF0KCsrZCkmMTAyMyksYltjKytdPWU+PjE4fDI0MCxiW2MrK109ZT4+MTImNjN8MTI4KTpiW2MrK109ZT4+MTJ8MjI0LGJbYysrXT1lPj42JjYzfDEyOCksYltjKytdPWUmNjN8MTI4KX1yZXR1cm4gY307CnZJPWZ1bmN0aW9uKGEsYixjKXtpZihiJiZjJiZjLmJ1ZmZlcj09PWIuZXhwb3J0cy5tZW1vcnkuYnVmZmVyKXtsZXQgZD1iLm1lbW9yeS5yZWFsbG9jKGMuYnl0ZU9mZnNldCxhKTtpZihkKXJldHVybiBuZXcgVWludDhBcnJheShiLmV4cG9ydHMubWVtb3J5LmJ1ZmZlcixkLGEpfWE9Yj9uZXcgVWludDhBcnJheShiLmV4cG9ydHMubWVtb3J5LmJ1ZmZlcixiLm1lbW9yeS5tYWxsb2MoYSksYSk6bmV3IFVpbnQ4QXJyYXkoYSk7YyYmYS5zZXQoYyk7cmV0dXJuIGF9O18ud0k9ZnVuY3Rpb24oYSxiKXtiPWEucG9zK2I7aWYoIShhLmJ1Zi5sZW5ndGg+PWIpKXtmb3IodmFyIGM9YS5idWYubGVuZ3RoKjI7YzxiOyljKj0yO2EuYnVmPXZJKGMsYS53YXNtLGEuYnVmLnN1YmFycmF5KDAsYS5wb3MpKTthLnZpZXc9bmV3IERhdGFWaWV3KGEuYnVmLmJ1ZmZlcixhLmJ1Zi5ieXRlT2Zmc2V0LGEuYnVmLmJ5dGVMZW5ndGgpfX07Cl8ueEk9ZnVuY3Rpb24oYSxiKXtpZihiPjI2ODQzNTQ1NSl7Xy53SShhLDQpO2xldCBjPWImMTA3Mzc0MTgyMztmb3IobGV0IGQ9MDtkPDQ7ZCsrKWEudmlldy5zZXRVaW50OChhLnBvcyxjJjEyN3wxMjgpLGM+Pj49NyxhLnBvcys9MTtiPU1hdGguZmxvb3IoYi8yNjg0MzU0NTYpfWZvcihfLndJKGEsNCk7Yj4xMjc7KWEudmlldy5zZXRVaW50OChhLnBvcyxiJjEyN3wxMjgpLGI+Pj49NyxhLnBvcys9MTthLnZpZXcuc2V0VWludDgoYS5wb3MsYik7YS5wb3MrPTF9OwpfLnpJPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IF8ueUk7aWYoXy50QSlhPV8udEEuZW5jb2RlKGEpO2Vsc2V7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoTWF0aC5jZWlsKGEubGVuZ3RoKjEuMikpLGU9Xy51SShhLGQpO2QubGVuZ3RoPGUmJihkPW5ldyBVaW50OEFycmF5KGUpLGU9Xy51SShhLGQpKTtkLmxlbmd0aD5lJiYoZD1kLnN1YmFycmF5KDAsZSkpO2E9ZH1hIT09dm9pZCAwJiYoXy54SShjLDE4KSxkPWEubGVuZ3RoLF8ueEkoYyxkKSxfLndJKGMsZCksYy5idWYuc2V0KGEsYy5wb3MpLGMucG9zKz1kKTthPV8udUFbYl07aWYodHlwZW9mIGE9PT0idW5kZWZpbmVkIil0aHJvdyBiPW5ldyBfLlhqKCJGYWlsZWQgdG8gcmVjb2duaXplIGVudGl0eSB0eXBlIix7bmFtZToiRW50aXR5S2V5SGVscGVyRXJyb3IiLGVudGl0eVR5cGU6Yn0pLF8uR3AoYiksYjthIT09dm9pZCAwJiYoXy54SShjLDMyKSxfLnhJKGMsYSkpO18ueEkoYyw0MCk7Xy54SShjLDEpO2I9bmV3IFVpbnQ4QXJyYXkoYy5idWYuYnVmZmVyLApjLmJ1Zi5ieXRlT2Zmc2V0LGMucG9zKTtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KF8uc2MoYiwwKSl9O18ueUk9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLndhc209dm9pZCAwO3RoaXMucG9zPTA7dGhpcy5qPVtdO3RoaXMuYnVmPXZJKDQwOTYpO3RoaXMudmlldz1uZXcgRGF0YVZpZXcodGhpcy5idWYuYnVmZmVyLHRoaXMuYnVmLmJ5dGVPZmZzZXQsdGhpcy5idWYuYnl0ZUxlbmd0aCl9fTtfLnpJKCIiLCJkb3dubG9hZHNQYWdlVmlld0NvbmZpZ3VyYXRpb25FbnRpdHkiKTtfLnpJKCJET1dOTE9BRFNfTElTVF9FTlRJVFlfSURfTUFOVUFMX0RPV05MT0FEUyIsIm1haW5Eb3dubG9hZHNMaXN0RW50aXR5Iik7Xy56SSgiRE9XTkxPQURTX0xJU1RfRU5USVRZX0lEX1NNQVJUX0RPV05MT0FEUyIsIm1haW5Eb3dubG9hZHNMaXN0RW50aXR5Iik7Xy56SSgiRE9XTkxPQURTX0xJU1RfRU5USVRZX0lEX1NNQVJUX0RPV05MT0FEUyIsInJlZnJlc2giKTtfLnpJKCJTTUFSVF9ET1dOTE9BRFNfRU5BQkxFRCIsInNldHRpbmdFbnRpdHkiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5BST1uZXcgXy5JKCJvZmZsaW5lUGxheWxpc3RFbmRwb2ludCIpO18uQkk9bmV3IF8uSSgib2ZmbGluZVZpZGVvRW5kcG9pbnQiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFpkYTtfLkVJPWZ1bmN0aW9uKGEsYixjLGQsZSl7YT1iP2Euc3dpdGNoT2ZmQ29tbWFuZDphLnN3aXRjaE9uQ29tbWFuZDtpZihkJiZlKVpkYShhLGMsZSk7ZWxzZSBfLmJFKHtiaDphfSk/Lm9uY2xpY2s/LihjKX07WmRhPWZ1bmN0aW9uKGEsYixjKXthPV8uYkUoe2JoOmEsQW86e0VpOntvblN1Y2Nlc3M6KCk9PntjKCExKX0sbno6KCk9PntjKCExKX19fX0pO2E/Lm9uY2xpY2smJihhLm9uY2xpY2soYiksYyghMCkpfTtfLiRkYT1uZXcgXy5JKCJzd2l0Y2hCdXR0b25WaWV3TW9kZWwiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGVKPWZ1bmN0aW9uKGEpe2lmKGEpcmV0dXJuIF8uQihhLF8uJGRhKX07Xy5mSj1fLkwoKHtkYXRhOmEsb25UYXA6YixrSzpjLG1LOmQsZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOmUsTGk6ZixuYTpofSk9PntmdW5jdGlvbiBrKEYpe2lmKCFGLm91KXtGLm91PSEwO3ZhciBDPWVKKEEoKSk7IUN8fEMuaXNEaXNhYmxlZHx8YSgpLmlnbm9yZVRhcFVudGlsQ29tbWFuZENvbXBsZXRlcyYmdigpfHwoYj8uKEYpLF8uRUkoQyxFKCksRixhKCkuaWdub3JlVGFwVW50aWxDb21tYW5kQ29tcGxldGVzLHopLChhKCkuZm9ybUZpZWxkTWV0YWRhdGEmJiFmPy4oKT8zOjEpPT09Mz9sKCk/LnVwZGF0ZVZhbHVlKCFFKCkpOnAoIUUoKSksYz8uKEUoKSkpfX12YXIgbD1fLlpJKCgpPT5hKCkuZm9ybUZpZWxkTWV0YWRhdGEpLFttLG5dPV8uQUMoKCk9PmVKKEEoKSk/LnN3aXRjaGVkT25CeURlZmF1bHR8fCExKSxwPW4sW3IsdF09Xy5KKCExLHZvaWQgMCwiT3ZrdWxlIiksdj1yLHo9dCxFPSgpPT4oYSgpLmZvcm1GaWVsZE1ldGFkYXRhJiYhZj8uKCk/MzoxKT09PTM/bCgpPy52YWx1ZXx8CiExOm0oKSxBPSgpPT57dmFyIEY7aWYoIShGPWEoKS5zd2l0Y2hCdXR0b24pKXt2YXIgQz1hKCk7Rj1kPy4oKTtDPXtzd2l0Y2hPbkNvbW1hbmQ6Qy5zd2l0Y2hPbkNvbW1hbmQsc3dpdGNoT2ZmQ29tbWFuZDpDLnN3aXRjaE9mZkNvbW1hbmQsc3dpdGNoZWRPbkJ5RGVmYXVsdDpDLnN3aXRjaGVkT25CeURlZmF1bHQsaXNEaXNhYmxlZDpDLmlzRGlzYWJsZWQsYTExeUxhYmVsU3dpdGNoZWRPbjpDLmExMXlMYWJlbFN3aXRjaGVkT24sYTExeUxhYmVsU3dpdGNoZWRPZmY6Qy5hMTF5TGFiZWxTd2l0Y2hlZE9mZn07RiE9PXZvaWQgMCYmKEMuaXNEaXNhYmxlZD1GKTtGPXtzd2l0Y2hCdXR0b25WaWV3TW9kZWw6Q319Qz1lSihGKTtpZighQylyZXR1cm4gRjt2YXIgRz1hKCkudGl0bGU/LmNvbnRlbnQ7cmV0dXJuIEc/e3N3aXRjaEJ1dHRvblZpZXdNb2RlbDp7Li4uQyxhMTF5TGFiZWxTd2l0Y2hlZE9uOkcsYTExeUxhYmVsU3dpdGNoZWRPZmY6R319OkZ9O3JldHVybiBfLksoInN3aXRjaC1saXN0LWl0ZW0tdmlldy1tb2RlbCIsCntjbGFzczoieXRTd2l0Y2hMaXN0SXRlbVZpZXdNb2RlbEhvc3QiLCJvbjpjbGljayI6a30sXy5LKF8uQ0Qse2RhdGE6KCk9Pih7dGl0bGU6YSgpLnRpdGxlLHN1YnRpdGxlOmEoKS5hdHRyaWJ1dGVkU3VidGl0bGUsbGVhZGluZ0ltYWdlOmEoKS5sZWFkaW5nSW1hZ2UsbGVhZGluZ0FjY2Vzc29yeTphKCkubGVhZGluZ0FjY2Vzc29yeSxpc0Rpc2FibGVkOmEoKS5pc0Rpc2FibGVkfSksaXNUb2dnbGVkOkUsRGc6ITAsbmE6aCx4czooKT0+Xy5LKF8uVyx7ZGF0YTpBfSx7c3dpdGNoQnV0dG9uVmlld01vZGVsOih7ZGF0YTpGfSk9Pl8uSyhfLmtJLHtkYXRhOkYscXI6RSxvblRhcDprfSl9KSxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6ZX0pKX0sIkoiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGNlYSxnSixkZWEsaEosaUosZWVhLGZlYSxnZWEsaGVhLGplYSxrZWEsbGVhLG1lYSxqSixrSixtSixuZWEsb2VhLHBlYSx0ZWEsdWVhLHFKLHJKLHNKLHdlYSx0SixpZWEsdUo7Y2VhPWZ1bmN0aW9uKGEsYj0yKXtfLnhJKGEsMTApO2Euai5wdXNoKGEucG9zKTthLmoucHVzaChiKTthLnBvcys9Yn07CmdKPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLnlJO2lmKGEhPT12b2lkIDApe2NlYShiLE1hdGguY2VpbChNYXRoLmxvZzIoYS5sZW5ndGgqNCsyKS83KSk7Xy53SShiLGEubGVuZ3RoKjEuMik7dmFyIGM9Xy51SShhLGIuYnVmLnN1YmFycmF5KGIucG9zKSk7Yi5wb3MrYz5iLmJ1Zi5sZW5ndGgmJihfLndJKGIsYyksYz1fLnVJKGEsYi5idWYuc3ViYXJyYXkoYi5wb3MpKSk7Yi5wb3MrPWM7YT1iLmoucG9wKCk7Yz1iLmoucG9wKCk7bGV0IGQ9Yi5wb3MtYy1hO2Zvcig7YS0tOyl7bGV0IGU9YT8xMjg6MDtiLnZpZXcuc2V0VWludDgoYysrLGQmMTI3fGUpO2Q+Pj03fX1iPW5ldyBVaW50OEFycmF5KGIuYnVmLmJ1ZmZlcixiLmJ1Zi5ieXRlT2Zmc2V0LGIucG9zKTtyZXR1cm4obmV3IFRleHREZWNvZGVyKCJ1dGYtOCIpKS5kZWNvZGUoYil9OwpkZWE9ZnVuY3Rpb24oYSxiKXtpZighYilyZXR1cm5bXTtiPV8uekkoYiwibWFpblBsYXlsaXN0RW50aXR5Iik7dmFyIGM9YS5tYWluUGxheWxpc3RFbnRpdHk/LltiXTtiPVtdO2lmKCFjPy52aWRlb3MpcmV0dXJuIGI7Zm9yKGxldCBkIG9mIGMudmlkZW9zKXtjPWE/Lm1haW5QbGF5bGlzdFZpZGVvRW50aXR5Py5bZF0/LnZpZGVvO2lmKCFjKWNvbnRpbnVlOyh7ZW50aXR5SWQ6Y309Xy5HSChjKSk7YyYmYi5wdXNoKGMpfXJldHVybiBifTtoSj1mdW5jdGlvbihhKXtyZXR1cm4iZG93bmxvYWRlZE11c2ljUGxheWxpc3RFbnRpdGllcyJpbiBhfTsKaUo9ZnVuY3Rpb24oYSl7dmFyIGI9YS5tdXNpY1BsYXlsaXN0RG93bmxvYWRNZXRhZGF0YUVudGl0eSxjPVtdO2lmKCFiKXJldHVybiBjO2ZvcihsZXQgaCBvZiBPYmplY3Qua2V5cyhiKSl7YTp7dmFyIGQ9YSxlPV8uR0goaCkuZW50aXR5SWQ7aWYoZSl7dmFyIGY9Xy5xQShkLCJtdXNpY1BsYXlsaXN0IixfLnpJKGUsIm11c2ljUGxheWxpc3QiKSk7ZD1fLnFBKGQsIm11c2ljUGxheWxpc3REb3dubG9hZE1ldGFkYXRhRW50aXR5IixfLnpJKGUsIm11c2ljUGxheWxpc3REb3dubG9hZE1ldGFkYXRhRW50aXR5IikpO2lmKGYmJmQpe2Y9e211c2ljUGxheWxpc3RFbnRpdHk6ZixtdXNpY1BsYXlsaXN0RG93bmxvYWRTdGF0ZUVudGl0eTpkfTticmVhayBhfX1mPXZvaWQgMH1kPU51bWJlcihiW2hdPy5hZGRlZFRpbWVzdGFtcE1pbGxpcyk7ZD1pc05hTihkKT8oMCxfLmVsKSgpOmQ7ZiE9PXZvaWQgMCYmYy5wdXNoKHtkb3dubG9hZGVkTXVzaWNQbGF5bGlzdEVudGl0aWVzOmYsYWRkZWRUaW1lc3RhbXBNaWxsaXM6ZH0pfXJldHVybiBjfTsKZWVhPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBTZXQ7Zm9yKGxldCBjIG9mIGEpaWYoIm11c2ljUGxheWxpc3RFbnRpdHkiaW4gYyYmIm11c2ljUGxheWxpc3REb3dubG9hZFN0YXRlRW50aXR5ImluIGMpZm9yKGxldCBkIG9mIGMubXVzaWNQbGF5bGlzdEVudGl0eS50cmFja3MpYi5hZGQoZCk7cmV0dXJuIGJ9OwpmZWE9ZnVuY3Rpb24oYSl7dmFyIGI9YS5tdXNpY1RyYWNrRG93bmxvYWRNZXRhZGF0YUVudGl0eSxjPVtdO2lmKCFiKXJldHVybltdO2ZvcihsZXQgbSBvZiBPYmplY3Qua2V5cyhiKSl7YTp7dmFyIGQ9YSxlPV8uR0gobSkuZW50aXR5SWQ7aWYoZSl7Yj1fLnFBKGQsIm11c2ljVHJhY2siLF8uekkoZSwibXVzaWNUcmFjayIpKTt2YXIgZj1fLnFBKGQsIm11c2ljQXJ0aXN0IixfLnpJKGUsIm11c2ljQXJ0aXN0IikpfHx7fTtiOnt2YXIgaD1lO2lmKGgpe2U9Xy5xQShkLCJwbGF5YmFja0RhdGEiLF8uekkoaCwicGxheWJhY2tEYXRhIikpPz9udWxsO3ZhciBrPV8ucUEoZCwidHJhbnNmZXIiLF8uekkoaCwidHJhbnNmZXIiKSk/P251bGwsbD1fLnFBKGQsIm9mZmxpbmVWaWRlb1N0cmVhbXMiLF8uekkoaCwib2ZmbGluZVZpZGVvU3RyZWFtcyIpKT8/bnVsbDtkPV8ucUEoZCwib2ZmbGluZVZpZGVvUG9saWN5IixfLnpJKGgsIm9mZmxpbmVWaWRlb1BvbGljeSIpKT8/bnVsbDtpZihlfHwKa3x8bHx8ZCl7ZD17cGxheWJhY2tEYXRhRW50aXR5OmUsdHJhbnNmZXJFbnRpdHk6ayxzdHJlYW1FbnRpdHk6bCxwb2xpY3lFbnRpdHk6ZH07YnJlYWsgYn19ZD12b2lkIDB9aWYoZCYmYiYmZil7Yj17bXVzaWNUcmFja0VudGl0eTpiLG11c2ljQXJ0aXN0RW50aXR5OmYsLi4uZH07YnJlYWsgYX19Yj12b2lkIDB9Zj1OdW1iZXIoXy5xQShhLCJtdXNpY1RyYWNrRG93bmxvYWRNZXRhZGF0YUVudGl0eSIsbSk/LmFkZGVkVGltZXN0YW1wTWlsbGlzKTtmPWlzTmFOKGYpPygwLF8uZWwpKCk6ZjtiIT09dm9pZCAwJiZjLnB1c2goe2Rvd25sb2FkZWRNdXNpY0VudGl0aWVzOmIsYWRkZWRUaW1lc3RhbXBNaWxsaXM6Zn0pfXJldHVybiBjfTsKZ2VhPWZ1bmN0aW9uKGEpe3ZhciBiPWZlYShhKS5zb3J0KChjLGQpPT5kLmFkZGVkVGltZXN0YW1wTWlsbGlzLWMuYWRkZWRUaW1lc3RhbXBNaWxsaXMpLm1hcChjPT4iZG93bmxvYWRlZE11c2ljRW50aXRpZXMiaW4gYz9jLmRvd25sb2FkZWRNdXNpY0VudGl0aWVzOmhKKGMpP2MuZG93bmxvYWRlZE11c2ljUGxheWxpc3RFbnRpdGllczp7fSk7YT1pSihhKS5zb3J0KChjLGQpPT5kLmFkZGVkVGltZXN0YW1wTWlsbGlzLWMuYWRkZWRUaW1lc3RhbXBNaWxsaXMpLm1hcChjPT4iZG93bmxvYWRlZE11c2ljRW50aXRpZXMiaW4gYz9jLmRvd25sb2FkZWRNdXNpY0VudGl0aWVzOmhKKGMpP2MuZG93bmxvYWRlZE11c2ljUGxheWxpc3RFbnRpdGllczp7fSk7cmV0dXJue2Rvd25sb2FkZWRNdXNpY0VudGl0aWVzOmIsZG93bmxvYWRlZE11c2ljUGxheWxpc3RFbnRpdGllczphfX07CmhlYT1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyBTZXQsZD1pSihhKS5tYXAoZT0+ZS5kb3dubG9hZGVkTXVzaWNQbGF5bGlzdEVudGl0aWVzKTtkPWVlYShkKTtmb3IobGV0IGUgb2YgZCkoe2VudGl0eUlkOmR9PV8uR0goZSkpLGQmJmMuYWRkKGQpOyh7ZG93bmxvYWRlZE11c2ljRW50aXRpZXM6YX09Z2VhKGEpKTtyZXR1cm4gYS5maWx0ZXIoZT0+e2lmKGUubXVzaWNUcmFja0VudGl0eT8udmlkZW9JZCl7ZT1lLm11c2ljVHJhY2tFbnRpdHk7dmFyIGY7aWYoZj1iPT09IlBQT00iPyEwOiFjLmhhcyhlLnZpZGVvSWQpKWI6c3dpdGNoKGU9ZS5tdXNpY1ZpZGVvVHlwZSxiKXtjYXNlICJQUFNFIjpmPWU9PT0iTVVTSUNfVklERU9fVFlQRV9QT0RDQVNUX0VQSVNPREUiO2JyZWFrIGI7ZGVmYXVsdDpmPWUhPT0iTVVTSUNfVklERU9fVFlQRV9QT0RDQVNUX0VQSVNPREUifWU9Zn1lbHNlIGU9ITE7cmV0dXJuIGV9KS5tYXAoZT0+ZS5tdXNpY1RyYWNrRW50aXR5Py52aWRlb0lkKX07CmplYT1mdW5jdGlvbihhLGIpe2lmKCFiKXJldHVybltdO2lmKE9iamVjdC52YWx1ZXMoaWVhKS5pbmNsdWRlcyhiKSlyZXR1cm4gaGVhKGEsYik7Yj1fLnpJKGIsIm11c2ljUGxheWxpc3QiKTtiPWEubXVzaWNQbGF5bGlzdD8uW2JdO2E9W107aWYoIWI/LnRyYWNrcylyZXR1cm4gYTtmb3IobGV0IGMgb2YgYi50cmFja3MpKHtlbnRpdHlJZDpifT1fLkdIKGMpKSxiJiZhLnB1c2goYik7cmV0dXJuIGF9OwprZWE9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFNldChhKTtpZihiLmhhcygiVFJBTlNGRVJfU1RBVEVfRkFJTEVEIikmJmIuc2l6ZT09PTEpcmV0dXJuIlRSQU5TRkVSX1NUQVRFX0ZBSUxFRCI7Yi5kZWxldGUoIlRSQU5TRkVSX1NUQVRFX0ZBSUxFRCIpO2lmKGIuaGFzKCJUUkFOU0ZFUl9TVEFURV9VTktOT1dOIikmJmIuc2l6ZT09PTEpcmV0dXJuIlRSQU5TRkVSX1NUQVRFX1BSRV9UUkFOU0ZFUiI7Yi5kZWxldGUoIlRSQU5TRkVSX1NUQVRFX1VOS05PV04iKTtpZihiLmhhcygiVFJBTlNGRVJfU1RBVEVfUFJFX1RSQU5TRkVSIikmJmIuc2l6ZT09PTF8fGIuc2l6ZT09PTApcmV0dXJuIlRSQU5TRkVSX1NUQVRFX1BSRV9UUkFOU0ZFUiI7YT1iLmhhcygiVFJBTlNGRVJfU1RBVEVfVFJBTlNGRVJSSU5HIik7Yj1iLmhhcygiVFJBTlNGRVJfU1RBVEVfVFJBTlNGRVJfSU5fUVVFVUUiKTtyZXR1cm4gYXx8Yj8iVFJBTlNGRVJfU1RBVEVfVFJBTlNGRVJSSU5HIjoiVFJBTlNGRVJfU1RBVEVfQ09NUExFVEUifTsKbGVhPWZ1bmN0aW9uKGEsYil7Yj1fLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpPT09IldFQl9SRU1JWCI/amVhKGEsYik6ZGVhKGEsYik7aWYoIWIubGVuZ3RoKXJldHVybiJUUkFOU0ZFUl9TVEFURV9VTktOT1dOIjtiPWIubWFwKGM9PntjPWM/KGM9Xy5xQShhLCJ0cmFuc2ZlciIsXy56SShjLCJ0cmFuc2ZlciIpKSk/Yy50cmFuc2ZlclN0YXRlPz8iVFJBTlNGRVJfU1RBVEVfVU5LTk9XTiI6IlRSQU5TRkVSX1NUQVRFX1VOS05PV04iOiJUUkFOU0ZFUl9TVEFURV9VTktOT1dOIjtyZXR1cm4gY30pO3JldHVybiBrZWEoYil9O21lYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsImRvd25sb2FkU3RhdHVzRW50aXR5IixfLnpJKGIsImRvd25sb2FkU3RhdHVzRW50aXR5IikpPy5kb3dubG9hZFN0YXRlPT09IkRPV05MT0FEX1NUQVRFX1VTRVJfREVMRVRFRCI/ITA6ITF9O2pKPWZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiBDU1MhPT0idW5kZWZpbmVkIiYmQ1NTLnN1cHBvcnRzPy4oInNlbGVjdG9yKDpoYXMoKikpIil9OwprSj1mdW5jdGlvbihhKXtyZXR1cm4gYS52aXNpYmlsaXR5IT09ImhpZGRlbiImJmEuZGlzcGxheSE9PSJub25lIn07bUo9ZnVuY3Rpb24oYSl7aWYoakooKXx8YS50YWdOYW1lIT09IkRFVEFJTFMiPyFhLm1hdGNoZXMobEopOmEucXVlcnlTZWxlY3Rvcigic3VtbWFyeSIpIT09bnVsbClyZXR1cm4tMTthPWEuZ2V0QXR0cmlidXRlKCJ0YWJpbmRleCIpfHwiMCI7cmV0dXJuIE51bWJlcihhKX07bmVhPWZ1bmN0aW9uKGEpe3JldHVybiBhLnNvbWUoYj0+bUooYik+MCl9O29lYT1mdW5jdGlvbihhKXtpZihhLnRleHRDb250ZW50fHxhLmFyaWFMYWJlbClyZXR1cm4hMDtpZihhIGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCl7aWYoIWEubGFiZWxzKXJldHVybiExO2ZvcihsZXQgYiBvZiBhLmxhYmVscylpZihiLnRleHRDb250ZW50KXJldHVybiEwfXJldHVybiExfTtwZWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuc29ydCgoYixjKT0+bUooYyktbUooYikpfTsKXy5uSj1mdW5jdGlvbihhKXthPUFycmF5LmZyb20oYS5xdWVyeVNlbGVjdG9yQWxsKGxKKSkuZmlsdGVyKGI9PihrSihiLnN0eWxlKT9rSih3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShiKSk6ITEpJiZvZWEoYikpO3JldHVybiBuZWEoYSk/cGVhKGEpOmF9Owp0ZWE9ZnVuY3Rpb24oYSxiLGMpe2lmKGIpcmV0dXJuW29KXTtzd2l0Y2goYSl7Y2FzZSAiVFJBTlNGRVJfU1RBVEVfVFJBTlNGRVJfSU5fUVVFVUUiOmNhc2UgIlRSQU5TRkVSX1NUQVRFX0NPTVBMRVRFIjpyZXR1cm5bcEpdO2Nhc2UgIlRSQU5TRkVSX1NUQVRFX1BSRV9UUkFOU0ZFUiI6Y2FzZSAiVFJBTlNGRVJfU1RBVEVfVFJBTlNGRVJSSU5HIjpyZXR1cm4gYz9bcEpdOltxZWEscEpdO2Nhc2UgIlRSQU5TRkVSX1NUQVRFX1BBVVNFRF9CWV9VU0VSIjpyZXR1cm5bcmVhLHBKXTtjYXNlICJUUkFOU0ZFUl9TVEFURV9GQUlMRUQiOmNhc2UgIlRSQU5TRkVSX1NUQVRFX1dBSVRJTkdfRk9SX1BMQVlFUl9SRVNQT05TRV9SRUZSRVNIIjpyZXR1cm5bc2VhLHBKXTtkZWZhdWx0OnJldHVybltvSl19fTsKdWVhPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0ZWEoYSxiLGQpLm1hcChlPT57dmFyIGY9ZS50ZXh0LGg9ZS5pY29uVHlwZSxrPWUuaWk7ZT1lLktoO2Y9Zj97Y29udGVudDpmfTp2b2lkIDA7aD1oJiZ7c291cmNlczpbe2NsaWVudFJlc291cmNlOntpbWFnZU5hbWU6aH19XX07dmFyIGw9Xy5xZChjKTtpZihsKXtsZXQgbT1fLkIobCxfLkJJKSxuPV8uQihsLF8uQUkpO20mJms/bS5hY3Rpb249azpuJiZlJiYobi5hY3Rpb249ZSl9cmV0dXJue3RpdGxlOmYsbGVhZGluZ0ltYWdlOmgscmVuZGVyZXJDb250ZXh0OmwmJntjb21tYW5kQ29udGV4dDp7b25UYXA6e2lubmVydHViZUNvbW1hbmQ6bH19fX19KX07cUo9ZnVuY3Rpb24oYSl7YT1fLnNIKGEucmVuZGVyZXJDb250ZXh0KTtyZXR1cm4gXy5CKGEsXy5CSSk/LnZpZGVvSWR9O3JKPWZ1bmN0aW9uKGEpe2E9Xy5zSChhLnJlbmRlcmVyQ29udGV4dCk7cmV0dXJuIF8uQihhLF8uQUkpPy5wbGF5bGlzdElkfTsKc0o9ZnVuY3Rpb24oYSl7YT1fLkIoYSxfLlpDKTtyZXR1cm4hIWEmJl8udEgoYS5yZW5kZXJlckNvbnRleHQpfTt3ZWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubGlzdEl0ZW1zPy5zb21lKGI9PntpZihzSihiKSlyZXR1cm4hMDtiPV8uQihiLHZlYSk7cmV0dXJuISFiJiYoXy50SChiLnJlbmRlcmVyQ29udGV4dCl8fHNKKGIuZGVmYXVsdExpc3RJdGVtKXx8c0ooYi50b2dnbGVkTGlzdEl0ZW0pKX0pfTt0Sj1mdW5jdGlvbihhLGIpe3ZhciBjPWEubGVuZ3RoO2FbYj09PS0xP2MtMTooYi0xK2MpJWNdPy5mb2N1cygpfTtpZWE9e2RDOiJQUEFEIixPQzoiUFBEUCIsTEY6IlBQT00iLHFHOiJQUFJDIix3RzoiUFBTRSIseEc6IlBQU1YifTt1Sj0iYVtocmVmXSBhW3RhYmluZGV4XSBhcmVhW2hyZWZdIGlmcmFtZSBbdGFiaW5kZXhdIFtjb250ZW50RWRpdGFibGVdIHN1bW1hcnkgaW5wdXQ6bm90KFtkaXNhYmxlZF0pIHNlbGVjdDpub3QoW2Rpc2FibGVkXSkgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pIGJ1dHRvbjpub3QoW2Rpc2FibGVkXSkgb2JqZWN0Om5vdChbZGlzYWJsZWRdKSIuc3BsaXQoIiAiKTsKakooKSYmdUoucHVzaCgiZGV0YWlsczpub3QoOmhhcyhzdW1tYXJ5KSkiKTt2YXIgbEo9dUouam9pbigiLCIpO3ZhciB2ZWE9bmV3IF8uSSgidG9nZ2xlYWJsZUxpc3RJdGVtVmlld01vZGVsIik7dmFyIHhlYT1fLkwoYT0+e3ZhciB7ZGF0YTpiLGNsYXNzTmFtZTpjLG5hOmQsSWE6ZSxCYzpmfT1fLkRDKGEse25hOiExLElhOiExLEJjOiExfSksaD1fLmNJKG49PnthOnt2YXIgcD1iKCkuZW50aXR5S2V5LHI9YigpLmVudGl0eVNlbGVjdG9yVHlwZTtpZihyKXN3aXRjaChyKXtjYXNlICJUT0dHTEVBQkxFX0xJU1RfSVRFTV9FTlRJVFlfU0VMRUNUT1JfVFlQRV9UT0dHTEVfTUVOVV9TRVJWSUNFX0lURU1fRU5USVRZIjppZighcClicmVhaztuPShuPV8ueEEuZUIobixwKSkmJm4uaXNUb2dnbGVkIT09dm9pZCAwP3tpc1RvZ2dsZWQ6bi5pc1RvZ2dsZWR9OnZvaWQgMDticmVhayBhO2RlZmF1bHQ6Xy5JcChuZXcgXy5YaigiRXJyb3I6IGVudGl0eVNlbGVjdG9yVHlwZSBkZWZpbmVkIGJ1dCBub3QgbWF0Y2hlZCBpbiBzZWxlY3Rvci4iLG4scikpfW49dm9pZCAwfXJldHVybiBufSksW2ssbF09Xy5BQygoKT0+aCgpPy5pc1RvZ2dsZWQhPT12b2lkIDA/aCgpPy5pc1RvZ2dsZWQ6YigpLmluaXRpYWxTdGF0ZT8uaXNUb2dnbGVkPz8KYigpLmluaXRpYWxJc1RvZ2dsZWQ/PyExKSxtPSgpPT57dmFyIG49aygpP2IoKS50b2dnbGVkTGlzdEl0ZW06YigpLmRlZmF1bHRMaXN0SXRlbTtyZXR1cm4gXy5CKF8uQihuLF8uWkMpPy5yZW5kZXJlckNvbnRleHQsXy5ZQyk/LmxhYmVsfTtyZXR1cm4gXy5LKCJ0b2dnbGVhYmxlLWxpc3QtaXRlbS12aWV3LW1vZGVsIix7ZWw6Xy5yRihfLnVIKCgpPT5iKCkucmVuZGVyZXJDb250ZXh0LHtvblRhcDoobixwKT0+e3AoKTtoKCk/LmlzVG9nZ2xlZCE9PXZvaWQgMHx8bCghaygpKX19KSksY2xhc3M6Xy5QKCJ0b2dnbGVhYmxlTGlzdEl0ZW1WaWV3TW9kZWxIb3N0IixjKX0sXy5LKF8uTyx7QTooKT0+e2lmKGsoKSl7dmFyIG49YigpLnRvZ2dsZWRMaXN0SXRlbTtuPV8uQihuLF8uWkMpfWVsc2Ugbj1iKCkuZGVmYXVsdExpc3RJdGVtLG49Xy5CKG4sXy5aQyk7cmV0dXJuIG59LHRoZW46bj0+Xy5LKF8uQ0Qse2RhdGE6bixpc1RvZ2dsZWQ6ayxuYTpkLElhOmUsQmM6ZixhcmlhTGFiZWw6bSwKYXJpYVByZXNzZWQ6a30pfSkpfSwiSyIpO3ZhciB5ZWE9Xy5hQSgiRE9XTkxPQUQiLHt9LCJEb3dubG9hZCIpLHplYT1fLmFBKCJERUxFVEVfRlJPTV9ET1dOTE9BRFMiLHt9LCJEZWxldGUgZnJvbSBkb3dubG9hZHMiKSxBZWE9Xy5hQSgiUkVUUlkiLHt9LCJSZXRyeSIpLEJlYT1fLmFBKCJQQVVTRV9ET1dOTE9BRElORyIse30sIlBhdXNlIGRvd25sb2FkaW5nIiksQ2VhPV8uYUEoIlJFU1VNRV9ET1dOTE9BRCIse30sIlJlc3VtZSBkb3dubG9hZCIpLG9KPXt0ZXh0OnllYSxpY29uVHlwZToiT0ZGTElORV9ET1dOTE9BRCIsaWk6IkFDVElPTl9BREQiLEtoOiJBQ1RJT05fQUREIn0scEo9e3RleHQ6emVhLGljb25UeXBlOiJERUxFVEUiLGlpOiJBQ1RJT05fUkVNT1ZFIixLaDoiQUNUSU9OX1JFTU9WRSJ9LHNlYT17dGV4dDpBZWEsaWNvblR5cGU6Ik9GRkxJTkVfRE9XTkxPQUQiLGlpOiJBQ1RJT05fUkVUUlkiLEtoOiJBQ1RJT05fUkVNT1ZFIn0scWVhPXt0ZXh0OkJlYSxpY29uVHlwZToiT0ZGTElORV9QQVVTRSIsaWk6IkFDVElPTl9QQVVTRSIsCktoOiJBQ1RJT05fUEFVU0UifSxyZWE9e3RleHQ6Q2VhLGljb25UeXBlOiJPRkZMSU5FX0RPV05MT0FEIixpaToiQUNUSU9OX1JFU1VNRSIsS2g6IkFDVElPTl9SRVNVTUUifTtfLkwoYT0+e3ZhciBiPV8uY0koaD0+e3ZhciBrPXFKKGEuZGF0YSgpKSxsPXJKKGEuZGF0YSgpKTtrPyhoPWguZW50aXRpZXMsaz8obD1fLnFBKGgsInRyYW5zZmVyIixfLnpJKGssInRyYW5zZmVyIikpKT9rPWwudHJhbnNmZXJTdGF0ZT8/IlRSQU5TRkVSX1NUQVRFX1VOS05PV04iOihsPV8ucUEoaCwib2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5IixfLnpJKGssIm9mZmxpbmVPcmNoZXN0cmF0aW9uQWN0aW9uV3JhcHBlckVudGl0eSIpKSxrPV8ucUEoaCwibWFpblZpZGVvRW50aXR5IixfLnpJKGssIm1haW5WaWRlb0VudGl0eSIpKSxrPWx8fGs/IlRSQU5TRkVSX1NUQVRFX1RSQU5TRkVSX0lOX1FVRVVFIjoiVFJBTlNGRVJfU1RBVEVfVU5LTk9XTiIpOms9IlRSQU5TRkVSX1NUQVRFX1VOS05PV04iKTprPWw/bGVhKGguZW50aXRpZXMsbCk6IlRSQU5TRkVSX1NUQVRFX1VOS05PV04iO3JldHVybiBrfSksYz1fLkRJKG1lYSwoKT0+cUooYS5kYXRhKCkpKSwKZD1fLmNJKGg9Pnt2YXIgaz1xSihhLmRhdGEoKSksbD1ySihhLmRhdGEoKSk7IWsmJmw/KGs9aC5lbnRpdGllcyxsPyhsPWdKKGwpLGs9Xy5xQShrLCJvZmZsaW5lYWJpbGl0eUVudGl0eSIsXy56SShsLCJvZmZsaW5lYWJpbGl0eUVudGl0eSIpKT8uYWRkVG9PZmZsaW5lQnV0dG9uU3RhdGU/PyJBRERfVE9fT0ZGTElORV9CVVRUT05fU1RBVEVfRU5BQkxFRCIpOms9IkFERF9UT19PRkZMSU5FX0JVVFRPTl9TVEFURV9ESVNBQkxFRCIpOihsPWguZW50aXRpZXMsaz8oaz1nSihrKSxrPV8ucUEobCwib2ZmbGluZWFiaWxpdHlFbnRpdHkiLF8uekkoaywib2ZmbGluZWFiaWxpdHlFbnRpdHkiKSk/LmFkZFRvT2ZmbGluZUJ1dHRvblN0YXRlPz8iQUREX1RPX09GRkxJTkVfQlVUVE9OX1NUQVRFX0VOQUJMRUQiKTprPSJBRERfVE9fT0ZGTElORV9CVVRUT05fU1RBVEVfRElTQUJMRUQiKTtyZXR1cm4ga30pLGU9KCk9PnVlYShiKCksYygpLF8uc0goYS5kYXRhKCkucmVuZGVyZXJDb250ZXh0KSwKISFySihhLmRhdGEoKSkpLGY9KCk9PmQoKSE9PSJBRERfVE9fT0ZGTElORV9CVVRUT05fU1RBVEVfRU5BQkxFRCI7cmV0dXJuIF8uSygieXQtZG93bmxvYWQtbGlzdC1pdGVtLXZpZXctbW9kZWwiLHtjbGFzczoieXREb3dubG9hZExpc3RJdGVtVmlld01vZGVsSG9zdCIsaGlkZGVuOmZ9LF8uSyhfLk8se0E6KCk9PiFmKCksdGhlbjooKT0+Xy5LKF8uTyx7QTplLHRoZW46aD0+Xy5LKF8uZ0cse3BhOmh9LGs9Pl8uSyhfLkNELHtkYXRhOmssbmE6YS5uYSxJYTphLklhLEJjOmEuQmMsZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOmEuZGlzYWJsZUhvcml6b250YWxQYWRkaW5nfSkpfSl9KSl9LCJMIikuaWRvbUNvbXBhdD0hMDtfLkJEPV8uTCgoe2RhdGE6YSxuYTpiLGNlOmMsQmM6ZCxpc092ZXJsYXk6ZSxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6Zn0pPT57dmFyIGg9KCk9PndlYShhKCkpJiZkPy4oKTtyZXR1cm4gXy5LKCJ5dC1saXN0LXZpZXctbW9kZWwiLHtjbGFzczpfLlAoInl0TGlzdFZpZXdNb2RlbEhvc3QiLHt5dExpc3RWaWV3TW9kZWxIb3N0S2Fpb3NTcGF0TmF2Ol8uZ3ImJmRvY3VtZW50LmJvZHkuaGFzQXR0cmlidXRlKCJzcGF0aWFsLW5hdmlnYXRpb24tZW5hYmxlZCIpJiZkb2N1bWVudC5ib2R5LmdldEF0dHJpYnV0ZSgic3BhdGlhbC1uYXZpZ2F0aW9uLWVuYWJsZWQiKT09PSJ0cnVlIn0pLHJvbGU6KCk9PmgoKT8ibWVudSI6Imxpc3QiLHN0eWxlOl8uSUUoeyJtYXgtaGVpZ2h0IjooKT0+e3ZhciBrPWEoKT8udmlzaWJsZUVsZW1lbnRDb3VudDtpZihrKXJldHVybmAkeyhrKy41KSo0MH1weGB9fSksIm9uOmtleWRvd24iOmZ1bmN0aW9uKGspe2lmKGQ/LigpJiZfLngoIndlYl9lbmFibGVfYXJyb3dfa2V5X25hdmlnYXRpb25faW5fZHJvcGRvd24iKSl7dmFyIGw9Cl8ubkooay5jdXJyZW50VGFyZ2V0KTtpZihsLmxlbmd0aCE9PTApe3ZhciBtPUFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwobCxkb2N1bWVudC5hY3RpdmVFbGVtZW50KTtzd2l0Y2goay5rZXkpe2Nhc2UgIkFycm93RG93biI6ay5wcmV2ZW50RGVmYXVsdCgpO2xbKG0rMSklbC5sZW5ndGhdPy5mb2N1cygpO2JyZWFrO2Nhc2UgIkFycm93VXAiOmsucHJldmVudERlZmF1bHQoKTt0SihsLG0pO2JyZWFrO2Nhc2UgIlRhYiI6ay5wcmV2ZW50RGVmYXVsdCgpLGsuc2hpZnRLZXk/dEoobCxtKTpsWyhtKzEpJWwubGVuZ3RoXT8uZm9jdXMoKX19fX19LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5saXN0SXRlbXN9LHtsaXN0SXRlbVZpZXdNb2RlbDooe2RhdGE6a30pPT5fLksoXy5DRCx7ZGF0YTprLElhOmgsbmE6YixjZTpjLEJjOmQsaXNPdmVybGF5OmUsZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOmZ9KSx0b2dnbGVhYmxlTGlzdEl0ZW1WaWV3TW9kZWw6KHtkYXRhOmt9KT0+Xy5LKHhlYSwKe2RhdGE6ayxJYTpoLG5hOmIsQmM6ZH0pLGRvd25sb2FkTGlzdEl0ZW1WaWV3TW9kZWw6KCk9Pl8uSyhfLklCLG51bGwpLHN3aXRjaExpc3RJdGVtVmlld01vZGVsOigpPT5fLksoXy5JQixudWxsKX0pKX0sIk0iKTtfLkJELmlkb21Db21wYXQ9ITA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoIkh4amxiYiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLktKPW5ldyBfLkkoImJ1dHRvblZpZXdNb2RlbCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnNEPV8uTChhPT57ZnVuY3Rpb24gYihuKXt2YXIgcD1jKCk7dmFyIHI9ZCgpO3IhPT12b2lkIDA/cD1yOihyPV8uQihwLnNlY29uZGFyeUJ1dHRvbixfLktKKSxwPV8uQihwLnByaW1hcnlCdXR0b24sXy5LSik/LmlzRnVsbFdpZHRoIT09ITF8fHImJnI/LmlzRnVsbFdpZHRoIT09ITE/MTozKTtyZXR1cm4gbj09PXB9dmFyIHtkYXRhOmMsdHlwZTpkLGRpc2FibGVQYWRkaW5nOmUsTmk6ZixYcTpofT1fLkRDKGEse3R5cGU6dm9pZCAwLGRpc2FibGVQYWRkaW5nOiExLE5pOiExfSksaz0oKT0+YygpLnN0YWNraW5nPT09IlBBTkVMX0ZPT1RFUl9TVEFDS0lOR19WRVJUSUNBTCIsbD0oKT0+KHtkaXNhYmxlZDpmKCksc3RhdGU6ZigpPyJkaXNhYmxlZCI6ImFjdGl2ZSJ9KSxtPSgpPT5jKCkubGVhZGluZ0xhYmVsfHxjKCkudHJhaWxpbmdMYWJlbDtyZXR1cm4gXy5LKCJ5dC1wYW5lbC1mb290ZXItdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXRQYW5lbEZvb3RlclZpZXdNb2RlbEhvc3QiLAp7eXRQYW5lbEZvb3RlclZpZXdNb2RlbEhpZGVEaXZpZGVyOigpPT5jKCkuc2hvdWxkSGlkZURpdmlkZXIseXRQYW5lbEZvb3RlclZpZXdNb2RlbERpc2FibGVQYWRkaW5nOmV9KX0sXy5LKF8uTyx7QTptLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFBhbmVsRm9vdGVyVmlld01vZGVsVGV4dFJvdyIse3l0UGFuZWxGb290ZXJWaWV3TW9kZWxSb3dCb3R0b21QYWRkaW5nOigpPT57dmFyIG49YygpO3JldHVybiEoIW4ubGVhZGluZ0xhYmVsJiYhbi50cmFpbGluZ0xhYmVsfHwhbi5wcmltYXJ5QnV0dG9uJiYhbi5zZWNvbmRhcnlCdXR0b24pfX0pfSxfLksoXy5WLHt0ZXh0OigpPT5jKCkubGVhZGluZ0xhYmVsLGNsYXNzTmFtZTpfLlAoe3l0UGFuZWxGb290ZXJWaWV3TW9kZWxUZXh0UGFkZGluZzptfSl9KSxfLksoXy5WLHt0ZXh0OigpPT5jKCkudHJhaWxpbmdMYWJlbH0pKX0pLF8uSyhfLk8se0E6ayx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uU3RhY2sifSwKXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0UGFuZWxGb290ZXJWaWV3TW9kZWxQcmltYXJ5QnV0dG9uIix7eXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblN0YWNrVG9wQnV0dG9uOigpPT5jKCkuc2Vjb25kYXJ5QnV0dG9ufSl9LF8uSyhfLlcse2RhdGE6KCk9PmMoKS5wcmltYXJ5QnV0dG9ufSx7YnV0dG9uVmlld01vZGVsOih7ZGF0YTpufSk9Pl8uSyhfLkhELHtkYXRhOm4sYnV0dG9uT3ZlcnJpZGVzOmwsb25DbGljazpofSl9KSksXy5LKF8uVyx7ZGF0YTooKT0+YygpLnNlY29uZGFyeUJ1dHRvbn0se2J1dHRvblZpZXdNb2RlbDpfLkhEfSkpfSksXy5LKF8uTyx7QTooKT0+IWsoKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvdyIse3l0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dUcmFpbGluZzooKT0+YigzKX0pfSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0xlZnRCdXR0b24iLAp7eXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0Z1bGxXaWR0aDooKT0+YigxKSx5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93SGlkZGVuOigpPT4hYygpLnNlY29uZGFyeUJ1dHRvbnx8YigwKSx5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93U2hyaW5rOigpPT5iKDIpfSl9LF8uSyhfLlcse2RhdGE6KCk9PmMoKS5zZWNvbmRhcnlCdXR0b259LHtidXR0b25WaWV3TW9kZWw6Xy5IRH0pKSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRQYW5lbEZvb3RlclZpZXdNb2RlbFByaW1hcnlCdXR0b24iLHt5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93RnVsbFdpZHRoOigpPT5iKDApfHxiKDEpLHl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dFeHBhbmQ6KCk9PmIoMil9KX0sXy5LKF8uVyx7ZGF0YTooKT0+YygpLnByaW1hcnlCdXR0b259LHtidXR0b25WaWV3TW9kZWw6KHtkYXRhOm59KT0+Xy5LKF8uSEQse2RhdGE6bixidXR0b25PdmVycmlkZXM6bCwKb25DbGljazpofSl9KSkpfSkpfSwiRmEiKTtfLnNELmlkb21Db21wYXQ9ITA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoImxQV2prYiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmVMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiakJpc2FmIik7cmV0dXJuIF8uVEN9O18uZkw9Xy5jRCgoKT0+Xy5lTCgpLCJiYWRnZVNoYXBlIik7Xy5ZdChfLkpELGE9PnthLkooImJhZGdlU2hhcGUiLCJqQmlzYWYiLF8uZUwpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciB5ZmE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMDpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlTnpSYXRpbmdHcmVlbkNpcmNsZSI7Y2FzZSAxOnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ1llbGxvd0NpcmNsZSI7Y2FzZSAyOnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ1JlZFNxdWFyZSI7Y2FzZSAzOnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsR3JlZW5TcXVhcmUiO2Nhc2UgNDpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbEJsdWVTcXVhcmUiO2Nhc2UgNTpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZUJsdWVTcXVhcmUiO2Nhc2UgNjpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbFllbGxvd1NxdWFyZSI7CmNhc2UgNzpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZVllbGxvd1NxdWFyZSI7Y2FzZSA4OnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsT3JhbmdlU3F1YXJlIjtjYXNlIDk6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VPcmFuZ2VTcXVhcmUiO2Nhc2UgMTA6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxSZWRTcXVhcmUiO2Nhc2UgMTE6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VSZWRTcXVhcmUiO2Nhc2UgMTI6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxCbGFja1NxdWFyZSI7Y2FzZSAxMzpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZUJsYWNrU3F1YXJlIn19LHpmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiQkFER0VfQ09NTUVSQ0UiOmNhc2UgIkJBREdFX01FTUJFUlNfT05MWSI6cmV0dXJuIDEwOwpjYXNlICJCQURHRV9ESVNDT1VOVCI6cmV0dXJuIDg7Y2FzZSAiQkFER0VfU1RBVFVTX05FVyI6cmV0dXJuIDEzO2Nhc2UgIkJBREdFX1BSRU1JVU0iOnJldHVybiA3O2Nhc2UgIkJBREdFX1BST01PVEVEIjpyZXR1cm4gNDtjYXNlICJCQURHRV9QUk9NT1RFRF9JTlZFUlRFRCI6cmV0dXJuIDU7Y2FzZSAiQkFER0VfTUVESUEiOnJldHVybiAxO2Nhc2UgIkJBREdFX1RJTUVMWSI6cmV0dXJuIDY7Y2FzZSAiQkFER0VfTElWRV9OT1ciOnJldHVybiAxOTtjYXNlICJCQURHRV9TVEFUVVNfQ09NUExFVEUiOnJldHVybiAxNDtjYXNlICJCQURHRV9TVEFUVVNfV0FSTklORyI6cmV0dXJuIDE1O2Nhc2UgIkJBREdFX1NUQVRVU19FUlJPUiI6cmV0dXJuIDE2O2Nhc2UgIkJBREdFX1NUQVRVU19ERUZBVUxUIjpyZXR1cm4gMTc7ZGVmYXVsdDpyZXR1cm4gMH19LEFmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiQkFER0VfTlpfUkFUSU5HX0dSRUVOX0NJUkNMRSI6cmV0dXJuIDA7Y2FzZSAiQkFER0VfTlpfUkFUSU5HX1lFTExPV19DSVJDTEUiOnJldHVybiAxOwpjYXNlICJCQURHRV9OWl9SQVRJTkdfUkVEX1NRVUFSRSI6cmV0dXJuIDI7Y2FzZSAiQkFER0VfQlJfUkFUSU5HX1NNQUxMX0dSRUVOX1NRVUFSRSI6cmV0dXJuIDM7Y2FzZSAiQkFER0VfQlJfUkFUSU5HX1NNQUxMX0JMVUVfU1FVQVJFIjpyZXR1cm4gNDtjYXNlICJCQURHRV9CUl9SQVRJTkdfTEFSR0VfQkxVRV9TUVVBUkUiOnJldHVybiA1O2Nhc2UgIkJBREdFX0JSX1JBVElOR19TTUFMTF9ZRUxMT1dfU1FVQVJFIjpyZXR1cm4gNjtjYXNlICJCQURHRV9CUl9SQVRJTkdfTEFSR0VfWUVMTE9XX1NRVUFSRSI6cmV0dXJuIDc7Y2FzZSAiQkFER0VfQlJfUkFUSU5HX1NNQUxMX09SQU5HRV9TUVVBUkUiOnJldHVybiA4O2Nhc2UgIkJBREdFX0JSX1JBVElOR19MQVJHRV9PUkFOR0VfU1FVQVJFIjpyZXR1cm4gOTtjYXNlICJCQURHRV9CUl9SQVRJTkdfU01BTExfUkVEX1NRVUFSRSI6cmV0dXJuIDEwO2Nhc2UgIkJBREdFX0JSX1JBVElOR19MQVJHRV9SRURfU1FVQVJFIjpyZXR1cm4gMTE7CmNhc2UgIkJBREdFX0JSX1JBVElOR19TTUFMTF9CTEFDS19TUVVBUkUiOnJldHVybiAxMjtjYXNlICJCQURHRV9CUl9SQVRJTkdfTEFSR0VfQkxBQ0tfU1FVQVJFIjpyZXR1cm4gMTN9fTt2YXIgQmZhPV8uTCgoe2RhdGE6YX0pPT5fLksoImJyLW56LWJhZGdlLXNoYXBlIix7Y2xhc3M6Xy5QKCgpPT55ZmEoYSgpLnVpKSkscm9sZTooKT0+YSgpLmFjY2Vzc2liaWxpdHlUZXh0PyJpbWciOnZvaWQgMCwiYXJpYS1sYWJlbCI6KCk9PmEoKS5hY2Nlc3NpYmlsaXR5VGV4dH0sKCk9PmEoKT8udGV4dCksInVhIik7Xy5FRD1fLkwoYT0+e3ZhciBiPSgpPT57dmFyIGM9YS5kYXRhKCk7aWYoYyl7dmFyIGQ9ISFhLnpMPy4oKSxlPWEub2c/LigpLGY9YS5Eaj8uKCksaD1hLmVwPy4oKSxrPWEucXg/LigpO2E6c3dpdGNoKGMuYmFkZ2VTdHlsZSl7Y2FzZSAiQkFER0VfT1ZFUkxBWSI6dmFyIGw9ITA7YnJlYWsgYTtkZWZhdWx0Omw9ITF9Yz17dHlwZTpkPzE4OnpmYShjLmJhZGdlU3R5bGUpLHVpOkFmYShjLmJhZGdlU3R5bGUpLHRleHQ6Yy5iYWRnZVRleHQsaWNvbjpjLmljb25OYW1lLGlzT3ZlcmxheTpsLG9nOmV8fF8ueCgid2ViX21vZGVybl9iYWRnZV92aWV3X21vZGVsIiksYWNjZXNzaWJpbGl0eVRleHQ6Yy5hY2Nlc3NpYmlsaXR5TGFiZWx8fF8uQihjLnJlbmRlcmVyQ29udGV4dCxfLllDKT8ubGFiZWwsRGo6ZixlcDpoLG9BOmssbnM6Xy5CKGMudG9vbHRpcE9uSG92ZXIsXy5jSyk/LnRvb2x0aXBUZXh0fX1lbHNlIGM9dm9pZCAwO3JldHVybiBjfTtyZXR1cm4gXy5LKCJ5dC1iYWRnZS12aWV3LW1vZGVsIiwKe2NsYXNzOl8uUCgieXRCYWRnZVZpZXdNb2RlbEhvc3QiLGEuY2xhc3MpfSxfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT4hIWIoKT8udWl9LCgpPT5fLksoQmZhLHtkYXRhOigpPT5iKCl9KSksXy5LKF8uQ0Use3doZW46KCk9PiEhYigpJiYhYigpLnVpfSwoKT0+Xy5LKF8uZkwse2RhdGE6KCk9PmIoKX0pKSkpfSwidmEiKTtfLkVELmlkb21Db21wYXQ9ITA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoIlB6VWRaYiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnZKPWZ1bmN0aW9uKGEsYixjLGQpe2R8fChkPXtidWJibGVzOiEwLGNhbmNlbGFibGU6ITEsY29tcG9zZWQ6ITB9KTtjIT09bnVsbCYmYyE9PXZvaWQgMCYmKGQuZGV0YWlsPWMpO3ZhciBlPW5ldyBDdXN0b21FdmVudChiLGQpO18uRUEoKCk9PnZvaWQgYS5kaXNwYXRjaEV2ZW50KGUpKTtyZXR1cm4gZX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uZEw9ZnVuY3Rpb24oKXt9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnJFPV8uTChhPT57dmFyIHtGSTpiLGZGOmMscEM6ZCxhc3NldFR5cGU6ZSxRZzpmLGtoOmgsdms6ayx6azpsLFB3Om0scWs6bixVbzpwLGJ1dHRvblN0eWxlOnIsRXo6dCxQcjp2LGNvbnRlbnRBbGlnbm1lbnQ6eixpc0Z1bGxzY3JlZW46RSxrcDpBLHdpZHRoOkYsbWF4SGVpZ2h0OkMsdXE6RyxudDpELHNxOkgsbHQ6Un09Xy5EQyhhLHtQdzowLFVvOjAsYnV0dG9uU3R5bGU6MCxjb250ZW50QWxpZ25tZW50OjAsbWF4SGVpZ2h0OjAsaXNGdWxsc2NyZWVuOiExLGtwOiExLGtoOiEwLHVxOiExLHNxOiExfSk7YT10PygpPT50KHtidXR0b25PdmVycmlkZXM6KCk9Pih7c3R5bGU6cj8uKCk9PT0xPyJjYWxsLXRvLWFjdGlvbiI6Im1vbm8iLHR5cGU6ImZpbGxlZCIsc3RhdGU6ImFjdGl2ZSIsc2l6ZToiTSJ9KSxjbGFzc05hbWU6Xy5QKHt5dFNwZWNEaWFsb2dMYXlvdXRCdXR0b246ITAseXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nQnV0dG9uc0lubGluZVN0cmV0Y2hlZDooKT0+cD8uKCk9PT0KMHx8cD8uKCk9PT0yfSl9KTp2b2lkIDA7dmFyIE09dj8oKT0+dih7YnV0dG9uT3ZlcnJpZGVzOntzdHlsZToibW9ubyIsdHlwZToib3V0bGluZSIsc3RhdGU6ImFjdGl2ZSIsc2l6ZToiTSJ9LGNsYXNzTmFtZTpfLlAoe3l0U3BlY0RpYWxvZ0xheW91dEJ1dHRvbjohMCx5dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zSW5saW5lU3RyZXRjaGVkOigpPT5wPy4oKT09PTB8fHA/LigpPT09Mn0pfSk6dm9pZCAwLFM9KCk9PighIWYmJmgoKXx8ISFrfHwhIWwpJiZtKCk9PT0wO3JldHVybiBfLksoImRpYWxvZy1sYXlvdXQiLHtlbDpfLnJGKGIsXy5kTCksY2xhc3M6Xy5QKHt5dFNwZWNEaWFsb2dMYXlvdXRIb3N0OiEwLHl0U3BlY0RpYWxvZ0xheW91dEZ1bGxzY3JlZW46RSx5dFNwZWNEaWFsb2dMYXlvdXRSZXNwb25zaXZlOigpPT4hRSgpJiYhQSgpLHl0U3BlY0RpYWxvZ0xheW91dEV4dGVuZGVkTWF4SGVpZ2h0OigpPT5DKCk9PT0xLHl0U3BlY0RpYWxvZ0xheW91dEFzc2V0SW5zZXQ6KCk9PgplPy4oKT09PTF9KSxzdHlsZTooKT0+Rj8uKCkhPT12b2lkIDA/YHdpZHRoOiAke0YoKX1weDtgOiIifSxjP18uSygiZGl2Iix7Y2xhc3M6Xy5QKHt5dFNwZWNEaWFsb2dMYXlvdXRJY29uOiEwLHl0U3BlY0RpYWxvZ0xheW91dEljb25BYm92ZU1lZGlhOigpPT4hIWQmJm0oKT09PTEseXRTcGVjRGlhbG9nTGF5b3V0SWNvbkNlbnRlckFsaWduOigpPT56KCk9PT0xfSl9LF8uSyhjLG51bGwpKTpudWxsLF8uSyhfLk8se0E6Ryx0aGVuOigpPT5EP18uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckNvbnRhaW5lciJ9LF8uSyhELG51bGwpKTpudWxsLFc6KCk9Pl8uSyhfLklCLG51bGwsXy5LKF8uTyx7QTpTLHRoZW46KCk9Pl8uSyhZUCx7Y29udGVudEFsaWdubWVudDp6LHZrOmssems6bCxRZzpmLGtoOmgsVGw6ISFkfSl9KSxkP18uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY0RpYWxvZ0xheW91dEFzc2V0In0sXy5LKGQse2NsYXNzTmFtZToieXRTcGVjRGlhbG9nTGF5b3V0QXNzZXRJdGVtIn0pKToKbnVsbCl9KSxfLksoImRpdiIse2NsYXNzOl8uUCh7eXRTcGVjRGlhbG9nTGF5b3V0Q29udGFpbmVyOigpPT4hQSgpLHl0U3BlY0RpYWxvZ0xheW91dENlbnRlckFsaWduOigpPT56Py4oKT09PTEseXRTcGVjRGlhbG9nTGF5b3V0VG9wUGFkZGluZzooKT0+IVMoKSYmIUEoKSYmIUcoKSYmIShmJiZoKCkmJiFEJiZtPy4oKT09PTEpfHwhIWQmJm0/LigpPT09MH0pfSxfLksoXy5PLHtBOigpPT5mJiZoKCkmJiFEJiZtPy4oKT09PTEsdGhlbjooKT0+Xy5LKFlQLHtjb250ZW50QWxpZ25tZW50Onosdms6ayx6azpsLFFnOmYsa2g6aCxUbDohMX0pfSksbj9fLksoImRpdiIse2NsYXNzOiJ5dFNwZWNEaWFsb2dMYXlvdXRDb250ZW50In0sXy5LKCJkaXYiLHtjbGFzczpfLlAoe3l0U3BlY0RpYWxvZ0xheW91dENvbnRlbnRJbm5lcjooKT0+IUEoKX0pfSxfLksobixudWxsKSkpOm51bGwsXy5LKF8uTyx7QTpILHRoZW46KCk9PlI/Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjRGlhbG9nTGF5b3V0Rm9vdGVyQ29udGFpbmVyIn0sCl8uSyhSLG51bGwpKTpudWxsfSksYXx8TT9fLksoUmlhLHthdzpfLlAoe3l0U3BlY0RpYWxvZ0xheW91dEZvb3RlckNvbnRhaW5lcjohMCx5dFNwZWNEaWFsb2dMYXlvdXRGb290ZXI6ITAseXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nQnV0dG9uc1N0YWNrZWQ6KCk9PnA/LigpPT09Mix5dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zSW5saW5lRW5kOigpPT5wPy4oKT09PTF9KSxZdDphLGN1Ok19KTpudWxsKSl9LCJQYiIpOwp2YXIgWVA9Xy5MKGE9Pnt2YXIge2NvbnRlbnRBbGlnbm1lbnQ6Yix2azpjLFFnOmQsa2g6ZSx6azpmLFRsOmgsRXY6a309Xy5EQyhhLHtUbDohMSxFdjohMH0pO3JldHVybiBfLksoImRpdiIse2NsYXNzOl8uUCh7eXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nSGVhZGVyQ29udGFpbmVyOiEwLHl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlcjohMCx5dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dIZWFkZXJBYm92ZUFzc2V0OmgseXRTcGVjRGlhbG9nTGF5b3V0Q2VudGVyQWxpZ246KCk9PmI/LigpPT09MSYmaygpfSl9LF8uSyhfLk8se0E6KCk9PmsoKSx0aGVuOigpPT5jP18uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY0RpYWxvZ0xheW91dExlYWRpbmdBY3Rpb25IZWFkZXIifSxfLksoYyxudWxsKSk6bnVsbH0pLGQ/Xy5LKF8uTyx7QTplLHRoZW46KCk9Pl8uSygiaDIiLHtjbGFzczoieXRTcGVjRGlhbG9nTGF5b3V0VGl0bGUifSxfLksoZCxudWxsKSl9KTpudWxsLGY/Xy5LKCJkaXYiLG51bGwsCl8uSyhmLG51bGwpKTpudWxsKX0sIlFiIiksUmlhPV8uTCgoe2F3OmEsWXQ6YixjdTpjfSk9Pl8uSygiZGl2Iix7Y2xhc3M6YX0sYz9fLksoYyxudWxsKTpudWxsLGI/Xy5LKGIsbnVsbCk6bnVsbCksIlJiIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoInZpVVdWIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYk09bmV3IF8uVnMoIkxPVFRJRV9MT0FERVJfVE9LRU4iKTtfLmNNPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6YixhbmltYXRpb25OYW1lOmMsYW5pbWF0aW9uUmVmOmQsR0k6ZX0pPT57dmFyIGY9Xy52RSgibG90dGllLWNvbXBvbmVudCIpLGg7Xy5ZdSgoKT0+dm9pZCBoPy5kZXN0cm95KCkpO3ZhciBrO18ubkUoKCk9Pnt2YXIgbD1fLkJ2KGMpO2lmKGwhPT1rKXtrPWw7dmFyIG09e2FuaW1hdGlvbk5hbWU6bCxhbmltYXRpb25SZWY6Xy5CdihkKSwuLi5fLkJ2KGEpfTt0cnl7Xy55KCkucmVzb2x2ZShfLmJNKSgpLnRoZW4obj0+e2g/LmRlc3Ryb3koKTt2YXIgcD1lPy4oKT8udmFsdWU/P2YudmFsdWUscj1tLmFuaW1hdGlvblJlZix0PW0ubGlzdGVuZXJzO249bi5sb2FkQW5pbWF0aW9uKHtjb250YWluZXI6cCxyZW5kZXJlclNldHRpbmdzOm0ucmVuZGVyZXJTZXR0aW5ncywuLi5tLmFuaW1hdGlvbkNvbmZpZ30pO3ImJihyLmxvdHRpZUVsPW4pO2lmKHQpZm9yKGxldCBbdix6XW9mIE9iamVjdC5lbnRyaWVzKHQpKXI9diwodD16KSYmbi5hZGRFdmVudExpc3RlbmVyKHIsCnQpO2g9bn0pfWNhdGNoKG4pe2w9IkxvdHRpZUNvbXBvbmVudCBlcnJvci4iLG4ubWVzc2FnZSYmKGwrPWAgT3JpZ2luYWwgZGVzY3JpcHRpb246ICR7bi5tZXNzYWdlfWApLF8uY3cobixsKSxfLklwKG4pLG0ubGlzdGVuZXJzPy5lcnJvciYmbS5saXN0ZW5lcnMuZXJyb3Iobil9fX0sInhPQ2s1Iik7cmV0dXJuIF8uSyhfLk8se0E6KCk9PiFlPy4oKSx0aGVuOigpPT5fLksoImxvdHRpZS1jb21wb25lbnQiLHtjbGFzczpfLlAoInl0TG90dGllQ29tcG9uZW50SG9zdCIsYiksZWw6Zn0pfSl9LCJLYSIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgYmdhO2JnYT1mdW5jdGlvbihhLGIsYyxkKXtmdW5jdGlvbiBlKGgsayl7aWYoYi52YWx1ZT09PWsmJiFiLmNhbmNlbGxlZCl7Zm9yKDthLmZpcnN0Q2hpbGQ7KWEucmVtb3ZlQ2hpbGQoYS5maXJzdENoaWxkKTthLmNsYXNzTGlzdC5hZGQoInl0U3BlY0ljb25TaGFwZUhvc3QiKTtoKGEsZCl9fXZhciBmPV8ueSgpLnJlc29sdmUoXy5YTCkucHkoYyk7dHlwZW9mIGY9PT0iZnVuY3Rpb24iPyhiLnZhbHVlPW51bGwsZShmLG51bGwpKTooYi52YWx1ZT1mLGYudGhlbihoPT57ZShoLGYpfSkpfTtfLlhMPW5ldyBfLlZzKCJJQ09OX01BTkFHRVJfVE9LRU4iKTtfLllMPV8uTChhPT57dmFyIGI9e3ZhbHVlOm51bGwsY2FuY2VsbGVkOiExfTtfLll1KCgpPT57Yi5jYW5jZWxsZWQ9ITB9KTt2YXIgYz1fLk4oYS5kYXRhLHtlcXVhbHM6KGQsZSk9PmQuaWNvbk5hbWU9PT1lLmljb25OYW1lJiZkLmljb25TdHlsZT09PWUuaWNvblN0eWxlJiZkLmljb25TaXplPT09ZS5pY29uU2l6ZSYmZC5seD09PWUubHgmJmQua3g9PT1lLmt4fSwiY2syNGpiIik7cmV0dXJuIF8uSygic3BhbiIse2NsYXNzOiJ5dC1pY29uLXNoYXBlIixlbDpfLnJGKGQ9PntfLm5FKCgpPT57dmFyIGU9YS5vcHRpb25zPy4oKSxmPWMoKTtiZ2EoZCxiLGYsZSl9LCJ2ODc4SmUiKX0pfSl9LCJIYSIpO18uWUwuaWRvbUNvbXBhdD0hMDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEVQPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDE4OmNhc2UgMTk6Y2FzZSAyMDpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX0sR2lhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDM6cmV0dXJuInl0QmFkZ2VTaGFwZUFkIjtjYXNlIDE6cmV0dXJuInl0QmFkZ2VTaGFwZU1lZGlhIjtjYXNlIDI6cmV0dXJuInl0QmFkZ2VTaGFwZU1lZGlhT3ZlcmxheSI7Y2FzZSA0OnJldHVybiJ5dEJhZGdlU2hhcGVQcm9tb3RlZCI7Y2FzZSA1OnJldHVybiJ5dEJhZGdlU2hhcGVQcm9tb3RlZEludmVydGVkIjtjYXNlIDY6cmV0dXJuInl0QmFkZ2VTaGFwZVRpbWVseSI7Y2FzZSA3OnJldHVybiJ5dEJhZGdlU2hhcGVQcmVtaXVtIjtjYXNlIDg6cmV0dXJuInl0QmFkZ2VTaGFwZVNhbGUiO2Nhc2UgOTpyZXR1cm4ieXRCYWRnZVNoYXBlTWVtYmVyc2hpcCI7Y2FzZSAxMDpyZXR1cm4ieXRCYWRnZVNoYXBlQ29tbWVyY2UiO2Nhc2UgMTI6cmV0dXJuInl0QmFkZ2VTaGFwZUxpdmUiO2Nhc2UgMTM6cmV0dXJuInl0QmFkZ2VTaGFwZVN0YXR1c05ldyI7CmNhc2UgMTQ6cmV0dXJuInl0QmFkZ2VTaGFwZVN0YXR1c0NvbXBsZXRlIjtjYXNlIDE1OnJldHVybiJ5dEJhZGdlU2hhcGVTdGF0dXNXYXJuaW5nIjtjYXNlIDE2OnJldHVybiJ5dEJhZGdlU2hhcGVTdGF0dXNFcnJvciI7Y2FzZSAxNzpyZXR1cm4ieXRCYWRnZVNoYXBlU3RhdHVzRGVmYXVsdCI7Y2FzZSAxODpyZXR1cm4gXy54KCJlbmFibGVfbG9ja3VwX3JlZGVzaWduIik/Inl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHRSZWRlc2lnbiI6Inl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHQiO2Nhc2UgMTk6cmV0dXJuInl0QmFkZ2VTaGFwZVRodW1ibmFpbExpdmUiO2Nhc2UgMjA6cmV0dXJuInl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWwiO2RlZmF1bHQ6cmV0dXJuInl0QmFkZ2VTaGFwZURlZmF1bHQifX07dmFyIEhpYT1uZXcgU2V0KFsiT1VUTElORV9CQUciXSk7Cl8uVEM9Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgYj0oKT0+e3ZhciBkPWEoKS5pY29uO2lmKGQpYTp7ZD1fLktEKGQpPy5pY29uTmFtZT8/ZDtsZXQgaD0ieW91dHViZV9maWxsIjtIaWEuaGFzKGQudG9VcHBlckNhc2UoKSkmJihoPSJ5b3V0dWJlX291dGxpbmUiKTtsZXQgaz1oPT09InlvdXR1YmVfZmlsbCI/InlvdXR1YmVfb3V0bGluZSI6InlvdXR1YmVfZmlsbCIsbD1fLnkoKS5yZXNvbHZlKF8uWEwpO3ZhciBlPVsxMiwyNF07Zm9yKGYgb2YgZSl7ZT17aWNvbk5hbWU6ZCxpY29uU3R5bGU6aCxpY29uU2l6ZTpmfTtsZXQgbT17aWNvbk5hbWU6ZCxpY29uU3R5bGU6ayxpY29uU2l6ZTpmfTtpZihsLmooZSkpe3ZhciBmPWU7YnJlYWsgYX1pZihsLmoobSkpe2Y9bTticmVhayBhfX1mPXZvaWQgMH1lbHNlIGY9dm9pZCAwO3JldHVybiBmfSxbY109Xy5iSygoKT0+YSgpLm5zKTtyZXR1cm4gXy5LKCJiYWRnZS1zaGFwZSIse2VsOl8uckYoZD0+e2MoZCl9KSxjbGFzczpfLlAoInl0QmFkZ2VTaGFwZUhvc3QiLAooKT0+R2lhKGEoKS50eXBlKSx7eXRCYWRnZVNoYXBlT3ZlcmxheTooKT0+YSgpLmlzT3ZlcmxheSx5dEJhZGdlU2hhcGVBZHNJbmNsdWRlRG90OigpPT5hKCkuQm8seXRCYWRnZVNoYXBlVGh1bWJuYWlsQmFkZ2U6KCk9PkVQKGEoKS50eXBlKSx5dEJhZGdlU2hhcGVUaHVtYm5haWxCYWRnZVJlZGVzaWduOigpPT5fLngoImVuYWJsZV9sb2NrdXBfcmVkZXNpZ24iKSYmRVAoYSgpLnR5cGUpLHl0QmFkZ2VTaGFwZVN0YXR1c0JhZGdlOigpPT57YTpzd2l0Y2goYSgpLnR5cGUpe2Nhc2UgMTM6Y2FzZSAxNDpjYXNlIDE1OmNhc2UgMTY6Y2FzZSAxNzp2YXIgZD0hMDticmVhayBhO2RlZmF1bHQ6ZD0hMX1yZXR1cm4gZH0seXRCYWRnZVNoYXBlTm9UZXh0OigpPT4hYSgpLnRleHQseXRCYWRnZVNoYXBlSXNFbXB0eTooKT0+IWEoKS50ZXh0JiYhYSgpLmljb24mJiFhKCkuYW5pbWF0aW9uLHl0QmFkZ2VTaGFwZU1vZGVybjooKT0+YSgpLm9nfHxfLngoIndlYl9tb2Rlcm5fYmFkZ2Vfc2hhcGUiKSwKeXRCYWRnZVNoYXBlVHlwb2dyYXBoeTooKT0+e2E6e3ZhciBkPWEoKTtpZihkLm9BKXN3aXRjaChkLnR5cGUpe2Nhc2UgMDpjYXNlIDE6Y2FzZSAxMDpkPSEwO2JyZWFrIGE7ZGVmYXVsdDpkPSExfWVsc2UgZD0hMX1yZXR1cm4hZH0seXRCYWRnZVNoYXBlTWVkaXVtRm9udEFkQmFkZ2U6KCk9PmEoKS5HeSx5dEJhZGdlU2hhcGVMYXJnZUZvbnRBZEJhZGdlOigpPT5hKCkuanl9KSxzdHlsZTpfLklFKHsiYmFja2dyb3VuZC1jb2xvciI6KCk9PmEoKS5jdXN0b21Db2xvcnM/LmJhY2tncm91bmRDb2xvcn0pLHJvbGU6KCk9PmEoKS5hY2Nlc3NpYmlsaXR5VGV4dD8iaW1nIjp2b2lkIDAsImFyaWEtbGFiZWwiOigpPT5hKCkuYWNjZXNzaWJpbGl0eVRleHR9LF8uSyhfLk8se0E6KCk9PmEoKS5hbmltYXRpb24sdGhlbjpkPT5fLksoXy5jTSx7Y2xhc3NOYW1lOiJ5dEJhZGdlU2hhcGVJY29uIixkYXRhOmQsYW5pbWF0aW9uTmFtZTooKT0+ZCgpLmFuaW1hdGlvbkNvbmZpZy5uYW1lfHwiIn0pfSksCl8uSyhfLk8se0E6KCk9PmIoKSYmIWEoKT8uYW5pbWF0aW9uLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0QmFkZ2VTaGFwZUljb24ifSxfLksoXy5ZTCx7ZGF0YTooKT0+YigpfSkpfSksXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0QmFkZ2VTaGFwZVRleHQiLHt5dEJhZGdlU2hhcGVUZXh0Q2xpcFRleHRPdmVyZmxvdzooKT0+YSgpLmVwLHl0QmFkZ2VTaGFwZVRleHRIYXNNdWx0aXBsZUJhZGdlc0luUm93OigpPT4oYSgpLkRqfHwwKT4xfSl9LCgpPT5hKCk/LnRleHQpKX0sInliIik7Xy5UQy5pZG9tQ29tcGF0PSEwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLldkKCJqQmlzYWYiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEJKO18ud0o9ZnVuY3Rpb24oYSxiLGMsZD0wKXsoZD1fLmlxKGQpKSYmXy5meChhLmNsaWVudCxkLGIsYyl9O18ueEo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmdldFNjcmVlbkxheWVyJiZiLmdldFNjcmVlbkxheWVyKCk7Yi52aXN1YWxFbGVtZW50P18ud0ooYSxiLnZpc3VhbEVsZW1lbnQsdm9pZCAwLGMpOihfLkR4KCksYj1fLlZpKF8uQngoKS5qKS5iaW5kKF8uQngoKSkoYiksYS5DZihiLHZvaWQgMCxjKSl9O18ueUo9ZnVuY3Rpb24oYSxiLGMpe18uVmkoXy5meCkodm9pZCAwLGEsYixjLHZvaWQgMCl9O18ueko9ZnVuY3Rpb24oYSxiPTApeyhiPV8uaXEoYikpJiZhJiZfLnlKKGIsXy5VdyhhKSl9O18uQUo9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5nRS5wdXNoKHtjb21tYW5kOmEsc291cmNlRGF0YTpiLGNvbW1hbmRDb250ZXh0OmR9KTtjJiZhLmNsaWNrVHJhY2tpbmdQYXJhbXMmJl8uekooYS5jbGlja1RyYWNraW5nUGFyYW1zKX07CkJKPWZ1bmN0aW9uKGEpe2lmKCFhPy5ydW5zKXJldHVybiEwO2ZvcihsZXQgYiBvZiBhLnJ1bnMpaWYoYi5icmFja2V0fHxiLmVycm9yVW5kZXJsaW5lfHxiLmRlZW1waGFzaXplfHxfLkIoYixfLlhjYSl8fF8uQihiLF8uWWNhKSlyZXR1cm4hMTtyZXR1cm4hMH07Xy5DSj1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLnNpbXBsZVRleHQ/YS5zaW1wbGVUZXh0OmEucnVucz9hLnJ1bnMubWFwKGI9PmIudGV4dCkuam9pbigiIik6IiI6IiJ9O18uREo9ZnVuY3Rpb24oYSl7aWYoYSlyZXR1cm4gYS5sYWJlbD9hLmxhYmVsOl8uREooYS5hY2Nlc3NpYmlsaXR5RGF0YSl9O18uRGVhPW5ldyBfLkkoInlwY09mZmVyc0VuZHBvaW50Iik7Xy5FZWE9bmV3IF8uSSgieXBjR2V0T2ZmZXJzRW5kcG9pbnQiKTtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGhlbWUtbWV0YSIpO2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAiKTtfLkZlYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGxheWVyIik7Xy5FSj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGxheWVyLWNvbnRhaW5lci1pZCIpO2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXItY29udHJvbC1jb250YWluZXIiKTtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGxheWVyLWVuZHNjcmVlbi1jb250YWluZXIiKTtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGxheWVyLXNob3J0cy1jb250YWluZXIiKTtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGxheWVyLWNpbmVtYXRpY3MtY29udGFpbmVyIik7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZ1bGwtc2NyZWVuLWNvbnRlbnQtaWQiKTtfLkZKPV8uS3koImluaXQiKTt2YXIgR0o7CkdKPV8uTCgoe3J1bjphLG1hOmJ9KT0+e3ZhciBjPSgpPT5hKCkubmF2aWdhdGlvbkVuZHBvaW50O3JldHVybiBfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5hKCkuYm9sZH0sKCk9Pnt2YXIgZD1fLk4oKCk9Pih7Li4uYSgpLGJvbGQ6dm9pZCAwfSksdm9pZCAwLCJTbFpsNiIpO3JldHVybiBfLksoInN0cm9uZyIse2NsYXNzOiJmb3JtYXR0ZWQtc3RyaW5nLWJvbGQifSxfLksoR0ose3J1bjpkLG1hOmJ9KSl9KSxfLksoXy5DRSx7d2hlbjooKT0+YSgpLmRlZW1waGFzaXplfSwoKT0+e3ZhciBkPV8uTigoKT0+KHsuLi5hKCksZGVlbXBoYXNpemU6dm9pZCAwfSksdm9pZCAwLCJ5SXh3ZGQiKTtyZXR1cm4gXy5LKCJzcGFuIix7Y2xhc3M6ImZvcm1hdHRlZC1zdHJpbmctZGVlbXBoYXNpemUifSxfLksoR0ose3J1bjpkLG1hOmJ9KSl9KSxfLksoXy5DRSx7d2hlbjooKT0+YSgpLml0YWxpY3N9LCgpPT57dmFyIGQ9Xy5OKCgpPT4oey4uLmEoKSxpdGFsaWNzOnZvaWQgMH0pLHZvaWQgMCwKIlFOWEhIYiIpO3JldHVybiBfLksoImVtIixudWxsLF8uSyhHSix7cnVuOmQsbWE6Yn0pKX0pLF8uSyhfLkNFLHt3aGVuOigpPT5hKCkudGV4dENvbG9yfSwoKT0+e3ZhciBkPV8uTigoKT0+KHsuLi5hKCksdGV4dENvbG9yOnZvaWQgMH0pLHZvaWQgMCwieEplRzNiIik7cmV0dXJuIF8uSygic3BhbiIse3N0eWxlOigpPT5gY29sb3I6ICR7Xy5KRShhKCkudGV4dENvbG9yKX1gfSxfLksoR0ose3J1bjpkLG1hOmJ9KSl9KSxfLksoXy5DRSx7d2hlbjooKT0+YSgpLnN0cmlrZXRocm91Z2h9LCgpPT57dmFyIGQ9Xy5OKCgpPT4oey4uLmEoKSxzdHJpa2V0aHJvdWdoOnZvaWQgMH0pLHZvaWQgMCwiWENSNmhkIik7cmV0dXJuIF8uSygicyIsbnVsbCxfLksoR0ose3J1bjpkLG1hOmJ9KSl9KSxfLksoXy5DRSx7d2hlbjooKT0+IWEoKS5uYXZpZ2F0aW9uRW5kcG9pbnR8fGIoKX0sKCk9Pl8uSyhfLklCLG51bGwsKCk9PmEoKS50ZXh0KSksXy5LKF8uREUsbnVsbCwoKT0+Xy5LKF8ubkgse2NvbW1hbmQ6YywKdGFiSW5kZXg6MH0sXy5LKF8uSUIsbnVsbCwoKT0+YSgpLnRleHQpKSkpfSwiTiIpOwpfLklKPV8uTCgoe2RhdGE6YSwuLi5ifSk9Pnt2YXIgYz0oKT0+Yi5tYT8uKCksZD0oKT0+Yi51Yj8uKCksZT0oKT0+Yi5JZD8uKCksZj0oKT0+Yi51c2VySW5wdXQ/LigpLGg9KCk9PmIuWGE/LigpLGs9KCk9PmIucmc/LigpPz8hMDtyZXR1cm4gXy5LKF8uRUUsbnVsbCxfLksoXy5DRSx7d2hlbjooKT0+IShhPy4oKSYmT2JqZWN0LmtleXMoYSgpKS5sZW5ndGgpfSwoKT0+bnVsbCksXy5LKF8uQ0Use3doZW46KCk9Pnt2YXIgbDtpZihsPUJKKGEoKSkpbD1hKCksbD0hIShsPy5jb250ZW50IT09dm9pZCAwP2w6Xy5BRihsKSkuY29udGVudDtyZXR1cm4gbH19LCgpPT5fLksoXy5WLHt0ZXh0OmEsYXJpYUxhYmVsOigpPT5fLkRKKGEoKS5hY2Nlc3NpYmlsaXR5Py5hY2Nlc3NpYmlsaXR5RGF0YSksWGE6aCxtYTpjLHViOmQscmc6ayxJZDplLHVzZXJJbnB1dDpmLFl1OiEwfSkpLF8uSyhfLkNFLHt3aGVuOigpPT5CSihhKCkpfSwoKT0+bnVsbCksXy5LKF8uQ0Use3doZW46KCk9Pnt2YXIgbDsKaWYoKGw9YT8uKCkmJk9iamVjdC5rZXlzKGEoKSkubGVuZ3RoKSYmIShsPWEoKS5hY2Nlc3NpYmlsaXR5KSlhOntsPWEoKTtpZihsLnJ1bnMpZm9yKGxldCBtIG9mIGwucnVucylpZihtLm5hdmlnYXRpb25FbmRwb2ludCl7bD0hMTticmVhayBhfWw9ITB9cmV0dXJuIGwmJmEoKS5ydW5zJiZhKCkucnVucy5sZW5ndGg+MX19LCgpPT5fLksoInNwYW4iLHsiYXJpYS1sYWJlbCI6KCk9Pl8uREooYSgpLmFjY2Vzc2liaWxpdHk/LmFjY2Vzc2liaWxpdHlEYXRhKSxjbGFzczoiZm9ybWF0dGVkLXN0cmluZy10ZXh0Iixyb2xlOiJ0ZXh0In0sXy5LKEhKLHtzaW1wbGVUZXh0OigpPT5hKCkuc2ltcGxlVGV4dCxydW5zOigpPT5hKCkucnVucyxtYTpjfSkpKSxfLksoXy5ERSxudWxsLCgpPT5fLksoSEose3NpbXBsZVRleHQ6KCk9PmEoKS5zaW1wbGVUZXh0LHJ1bnM6KCk9PmEoKS5ydW5zLG1hOmN9KSkpfSwiTyIpO18uSUouaWRvbUNvbXBhdD0hMDsKdmFyIEhKPV8uTCgoe3NpbXBsZVRleHQ6YSxydW5zOmIsbWE6Y30pPT5fLksoXy5PLHtBOigpPT5hJiZhKCksdGhlbjpkPT5kLFc6KCk9Pl8uSyhfLk8se0E6KCk9PmImJmIoKSx0aGVuOmQ9Pl8uSyhfLmdHLHtwYTpkLHRiOiJJTkRFWCJ9LGU9Pl8uSyhHSix7cnVuOmUsbWE6KCk9PiEhYz8uKCl9KSl9KX0pLCJQIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uTEo9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJaUUt4MSIpO3JldHVybiBfLlZDfTtfLk1KPV8uY0QoKCk9Pl8uTEooKSwiYnV0dG9uT3JBbmNob3IiKTtfLll0KF8uSkQsYT0+e2EuSigiYnV0dG9uT3JBbmNob3IiLCJaUUt4MSIsXy5MSil9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFlLO1lLPWE9PmI9PigpPT5iPy4oKSE9PXZvaWQgMD9TdHJpbmcoYigpKSthOnZvaWQgMDtfLlpLPVlLKCJweCIpO18ueGZhPVlLKCIlIik7Xy4kSz1ZSygicyIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmFMPWZ1bmN0aW9uKC4uLmEpe3ZhciBiPVtdO2ZvcihsZXQgYyBvZiBhKWlmKGMpaWYodHlwZW9mIGM9PT0ic3RyaW5nIiliLnB1c2goYyk7ZWxzZSBmb3IobGV0IFtkLGVdb2YgT2JqZWN0LmVudHJpZXMoYykpYT1kLGUmJmIucHVzaChhKTtyZXR1cm4gYi5qb2luKCIgIil9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmJMPW5ldyBfLlZzKCJQQU5FTF9DT05UUk9MTEVSX1RPS0VOIik7Xy5jTD1uZXcgXy5WcygiU0hFRVRfQ09OVFJPTExFUl9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmdMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgicjlLTWpiIik7cmV0dXJuIF8uJEN9O18uaEw9Xy5jRCgoKT0+Xy5nTCgpLCJ1cHNlbGxWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigidXBzZWxsVmlld01vZGVsIiwicjlLTWpiIixfLmdMKX0pO18uaUw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJWY0dTOCIpO3JldHVybiBfLkVDfTtfLmpMPV8uY0QoKCk9Pl8uaUwoKSwibWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooIm1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbCIsIlZjR1M4IixfLmlMKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlZMPW5ldyBfLkkoImJ1dHRvblJlbmRlcmVyIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV0w9ZnVuY3Rpb24oYSl7cmV0dXJue3J1bnM6W3t0ZXh0OmF9XX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlpMPV8uTChhPT57KHt3cmFwcGVyOmF9PV8uREMoYSx7d3JhcHBlcjohMX0pKTtyZXR1cm4gXy5LKF8uTyx7QTphLHRoZW46KCk9Pl8uSygieXQtc3Bpbm5lci1zaGFwZSIse2NsYXNzOiJ5dFNwaW5uZXJTaGFwZVdyYXBwZXIifSxfLksoImRpdiIse2NsYXNzOiJ5dFNwaW5uZXJTaGFwZVNwaW5uZXIifSkpLFc6KCk9Pl8uSygieXQtc3Bpbm5lci1zaGFwZSIse2NsYXNzOiJ5dFNwaW5uZXJTaGFwZVNwaW5uZXIifSl9KX0sIklhIik7Xy5aTC5pZG9tQ29tcGF0PSEwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLiRMPXtFbzohMSxscTohMSx2cDoiIix1cDoiIix3cjohMSxDcTohMX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYU09ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0wfHxhPT09MX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBlTSxjZ2EsZGdhLGZNLGdNLGlNLGpNLGVnYSxnZ2EsaWdhLGtnYSxtZ2Esb2dhLHBNLHBnYSxxZ2Esbk07Xy5kTT1mdW5jdGlvbihhKXtmb3IobGV0IGIgaW4gYSlyZXR1cm4gYn07ZU09ZnVuY3Rpb24oLi4uYSl7cmV0dXJuIGEubGVuZ3RoPT09MD9iPT5iOmEubGVuZ3RoPT09MT9hWzBdOmEucmVkdWNlKChiLGMpPT4oLi4uZCk9PmIoYyguLi5kKSkpfTtjZ2E9ZnVuY3Rpb24oKXt2YXIgYT1bXTtyZXR1cm4gYj0+KGMsZCk9PntjPWIoYyxkKTt2YXIgZT0oKT0+e3Rocm93IEVycm9yKCJRYiIpO30sZj17Z2V0U3RhdGU6Yy5nZXRTdGF0ZSxkaXNwYXRjaDooaCwuLi5rKT0+ZShoLC4uLmspfTtkPWEubWFwKGg9PmgoZikpO2U9ZU0oLi4uZCkoYy5kaXNwYXRjaCk7cmV0dXJuey4uLmMsZGlzcGF0Y2g6ZX19fTsKZGdhPWZ1bmN0aW9uKGEpe09iamVjdC5rZXlzKGEpLmZvckVhY2goYj0+e3ZhciBjPWFbYl07aWYodHlwZW9mIGModm9pZCAwLHt0eXBlOl8ubUF9KT09PSJ1bmRlZmluZWQiKXRocm93IEVycm9yKCJSYmAiK2IpO2lmKHR5cGVvZiBjKHZvaWQgMCx7dHlwZTpgQEByZWR1eC9QUk9CRV9VTktOT1dOX0FDVElPTiR7Xy5sQSgpfWB9KT09PSJ1bmRlZmluZWQiKXRocm93IEVycm9yKCJTYmAiK2IrImAiK18ubUEpO30pfTsKZk09ZnVuY3Rpb24oYSl7dmFyIGI9T2JqZWN0LmtleXMoYSksYz17fTtmb3IobGV0IGY9MDtmPGIubGVuZ3RoO2YrKyl7bGV0IGg9YltmXTt0eXBlb2YgYVtoXT09PSJmdW5jdGlvbiImJihjW2hdPWFbaF0pfXZhciBkPU9iamVjdC5rZXlzKGMpO3RyeXtkZ2EoYyl9Y2F0Y2goZil7dmFyIGU9Zn1yZXR1cm4gZnVuY3Rpb24oZj17fSxoKXtpZihlKXRocm93IGU7dmFyIGs9ITEsbD17fTtmb3IobGV0IG09MDttPGQubGVuZ3RoO20rKyl7bGV0IG49ZFttXSxwPWZbbl0scj0oMCxjW25dKShwLGgpO2lmKHR5cGVvZiByPT09InVuZGVmaW5lZCIpdGhyb3cgZj1oJiZoLnR5cGUsRXJyb3IoIlRiYCIrKGY/YCIke1N0cmluZyhmKX0iYDoiKHVua25vd24gdHlwZSkiKSsiYCIrbik7bFtuXT1yO2s9a3x8ciE9PXB9cmV0dXJuKGs9a3x8ZC5sZW5ndGghPT1PYmplY3Qua2V5cyhmKS5sZW5ndGgpP2w6Zn19OwpnTT1mdW5jdGlvbihhLGIsYyl7ZnVuY3Rpb24gZCgpe2lmKG4pdGhyb3cgRXJyb3IoIlViIik7cmV0dXJuIGt9ZnVuY3Rpb24gZShyKXtpZih0eXBlb2YgciE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoIlZiYCIrdHlwZW9mIHIpO2lmKG4pdGhyb3cgRXJyb3IoIldiIik7dmFyIHQ9ITA7bT09PWwmJihtPWwuc2xpY2UoKSk7bS5wdXNoKHIpO3JldHVybiBmdW5jdGlvbigpe2lmKHQpe2lmKG4pdGhyb3cgRXJyb3IoIlhiIik7dD0hMTttPT09bCYmKG09bC5zbGljZSgpKTt2YXIgdj1tLmluZGV4T2Yocik7bS5zcGxpY2UodiwxKTtsPW51bGx9fX1mdW5jdGlvbiBmKHIpe2lmKHR5cGVvZiByIT09Im9iamVjdCJ8fHI9PT1udWxsKXZhciB0PSExO2Vsc2V7Zm9yKHQ9cjtPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkhPT1udWxsOyl0PU9iamVjdC5nZXRQcm90b3R5cGVPZih0KTt0PU9iamVjdC5nZXRQcm90b3R5cGVPZihyKT09PXR9aWYoIXQpdGhyb3cgRXJyb3IoIlliYCIrdHlwZW9mIHIpOwppZih0eXBlb2Ygci50eXBlPT09InVuZGVmaW5lZCIpdGhyb3cgRXJyb3IoIlpiIik7aWYobil0aHJvdyBFcnJvcigiJGIiKTt0cnl7bj0hMCxrPWgoayxyKX1maW5hbGx5e249ITF9dD1sPW07Zm9yKGxldCB2PTA7djx0Lmxlbmd0aDt2KyspKDAsdFt2XSkoKTtyZXR1cm4gcn1pZih0eXBlb2YgYj09PSJmdW5jdGlvbiImJnR5cGVvZiBjPT09ImZ1bmN0aW9uInx8dHlwZW9mIGM9PT0iZnVuY3Rpb24iJiZ0eXBlb2YgYXJndW1lbnRzWzNdPT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiYWMiKTt0eXBlb2YgYj09PSJmdW5jdGlvbiImJnR5cGVvZiBjPT09InVuZGVmaW5lZCImJihjPWIsYj12b2lkIDApO2lmKHR5cGVvZiBjIT09InVuZGVmaW5lZCIpe2lmKHR5cGVvZiBjIT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiYmNgIit0eXBlb2YgYyk7cmV0dXJuIGMoZ00pKGEsYil9aWYodHlwZW9mIGEhPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKCJjY2AiK3R5cGVvZiBhKTt2YXIgaD1hLGs9CmIsbD1bXSxtPWwsbj0hMTtmKHt0eXBlOl8ubUF9KTt2YXIgcD17ZGlzcGF0Y2g6ZixzdWJzY3JpYmU6ZSxnZXRTdGF0ZTpkLHJlcGxhY2VSZWR1Y2VyOmZ1bmN0aW9uKHIpe2lmKHR5cGVvZiByIT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiZGNgIit0eXBlb2Ygcik7aD1yO2Yoe3R5cGU6Xy5SYWF9KTtyZXR1cm4gcH0sW18ubkFdOmZ1bmN0aW9uKCl7cmV0dXJue3N1YnNjcmliZShyKXtmdW5jdGlvbiB0KCl7ci5uZXh0JiZyLm5leHQoZCgpKX1pZih0eXBlb2YgciE9PSJvYmplY3QifHxyPT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJlY2AiK3R5cGVvZiByKTt0KCk7cmV0dXJue3Vuc3Vic2NyaWJlOmUodCl9fSxbXy5uQV0oKXtyZXR1cm4gdGhpc319fX07cmV0dXJuIHB9OwpfLmhNPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17Li4uYX07Zm9yKGxldCBlIG9mIE9iamVjdC5rZXlzKGIpKXtsZXQgZj1hW2VdLGg9YltlXTtpZihoPT09dm9pZCAwKWRlbGV0ZSBkW2VdO2Vsc2UgaWYoZj09PXZvaWQgMClkW2VdPWg7ZWxzZSBpZihBcnJheS5pc0FycmF5KGgpJiZBcnJheS5pc0FycmF5KGYpKWRbZV09Yz9bLi4uZiwuLi5oXTpoO2Vsc2UgaWYoIUFycmF5LmlzQXJyYXkoaCkmJl8uQWEoaCkmJiFBcnJheS5pc0FycmF5KGYpJiZfLkFhKGYpKWRbZV09Xy5oTShmLGgsYyk7ZWxzZSBpZih0eXBlb2YgaD09PXR5cGVvZiBmKWRbZV09aDtlbHNlIHJldHVybiBiPW5ldyBfLlhqKCJBdHRlbXB0ZWQgdG8gbWVyZ2UgZmllbGRzIG9mIGRpZmZlcmluZyB0eXBlcy4iLHtuYW1lOiJEZWVwTWVyZ2VFcnJvciIsa2V5OmUsSGo6Zix1cGRhdGVWYWx1ZTpofSksXy5HcChiKSxhfXJldHVybiBkfTsKaU09ZnVuY3Rpb24oYSxiLGMsZCl7aWYoZD09PXZvaWQgMCl7bGV0IHtbY106ZSwuLi5mfT1hW2JdfHx7fTtyZXR1cm57Li4uYSxbYl06Zn19cmV0dXJuey4uLmEsW2JdOnsuLi5hW2JdLFtjXTpkfX19O2pNPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YVtiXXx8e30saD1mW2NdO2lmKCFoJiYhXy54KCJ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlIikpcmV0dXJuIGE7ZD1fLmhNKGh8fHt9LGQsZT09PSJSRVBFQVRFRF9GSUVMRFNfTUVSR0VfT1BUSU9OX0FQUEVORCIpO3JldHVybnsuLi5hLFtiXTp7Li4uZixbY106ZH19fTsKZWdhPWZ1bmN0aW9uKGE9e30sYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiRU5USVRZX0xPQURFRCI6cmV0dXJuIGIucGF5bG9hZC5yZWR1Y2UoKGMsZCk9Pnt2YXIgZT1kLm9wdGlvbnM/LnBlcnNpc3RlbmNlT3B0aW9uO2lmKGUmJmUhPT0iRU5USVRZX1BFUlNJU1RFTkNFX09QVElPTl9VTktOT1dOIiYmZSE9PSJFTlRJVFlfUEVSU0lTVEVOQ0VfT1BUSU9OX0lOTUVNT1JZX0FORF9QRVJTSVNUIilyZXR1cm4gYztpZighZC5lbnRpdHlLZXkpcmV0dXJuIF8uR3AoRXJyb3IoImdjIikpLGM7aWYoZC50eXBlPT09IkVOVElUWV9NVVRBVElPTl9UWVBFX1JFUExBQ0UiKXtpZighZC5wYXlsb2FkKXJldHVybiBkPW5ldyBfLlhqKCJSRVBMQUNFIGVudGl0eSBtdXRhdGlvbiBpcyBtaXNzaW5nIGEgcGF5bG9hZCIse2VudGl0eUtleTpkLmVudGl0eUtleX0pLF8uR3AoZCksYzt2YXIgZj1fLmRNKGQucGF5bG9hZCk7cmV0dXJuIGlNKGMsZixkLmVudGl0eUtleSxkLnBheWxvYWRbZl0pfWlmKGQudHlwZT09PQoiRU5USVRZX01VVEFUSU9OX1RZUEVfREVMRVRFIil7YTp7ZD1kLmVudGl0eUtleTt0cnl7bGV0IGg9Xy5HSChkKS5lbnRpdHlUeXBlO2Y9aU0oYyxoLGQpO2JyZWFrIGF9Y2F0Y2goaCl7aWYoaCBpbnN0YW5jZW9mIEVycm9yKXtkPW5ldyBfLlhqKCJGYWlsZWQgdG8gZGVzZXJpYWxpemUgZW50aXR5IGtleSIse2VudGl0eUtleTpkLG9yaWdpbmFsTWVzc2FnZTpoLm1lc3NhZ2V9KTtfLkdwKGQpO2Y9YzticmVhayBhfXRocm93IGg7fWY9dm9pZCAwfXJldHVybiBmfWlmKGQudHlwZT09PSJFTlRJVFlfTVVUQVRJT05fVFlQRV9VUERBVEUiKXtpZighZC5wYXlsb2FkKXJldHVybiBkPW5ldyBfLlhqKCJVUERBVEUgZW50aXR5IG11dGF0aW9uIGlzIG1pc3NpbmcgYSBwYXlsb2FkIix7ZW50aXR5S2V5OmQuZW50aXR5S2V5fSksXy5HcChkKSxjO2Y9Xy5kTShkLnBheWxvYWQpO3JldHVybiBqTShjLGYsZC5lbnRpdHlLZXksZC5wYXlsb2FkW2ZdLGQuZmllbGRNYXNrPy5tZXJnZU9wdGlvbnM/LnJlcGVhdGVkRmllbGRzTWVyZ2VPcHRpb24pfXJldHVybiBjfSwKYSk7Y2FzZSAiUkVQTEFDRV9FTlRJVFkiOnJldHVybiBpTShhLGIucGF5bG9hZC5lbnRpdHlUeXBlLGIucGF5bG9hZC5rZXksYi5wYXlsb2FkLnhsKTtjYXNlICJSRVBMQUNFX0VOVElUSUVTIjpyZXR1cm4gT2JqZWN0LmtleXMoYi5wYXlsb2FkKS5yZWR1Y2UoKGMsZCk9Pnt2YXIgZT1iLnBheWxvYWRbZF07cmV0dXJuIE9iamVjdC5rZXlzKGUpLnJlZHVjZSgoZixoKT0+aU0oZixkLGgsZVtoXSksYyl9LGEpO2Nhc2UgIlVQREFURV9FTlRJVFkiOnJldHVybiBqTShhLGIucGF5bG9hZC5lbnRpdHlUeXBlLGIucGF5bG9hZC5rZXksYi5wYXlsb2FkLnhsLGIucGF5bG9hZC5JeSk7ZGVmYXVsdDpyZXR1cm4gYX19OwpfLmxNPWZ1bmN0aW9uKCl7aWYoXy5rTSlyZXR1cm4gXy5rTTtpZih3aW5kb3cubG90dGllKXJldHVybiBfLmtNPVByb21pc2UucmVzb2x2ZSh3aW5kb3cubG90dGllKTt2YXIgYT1fLmh3KF8udygiTE9UVElFX1VSTCIpKTtyZXR1cm4gYT9fLmtNPW5ldyBQcm9taXNlKChiLGMpPT57dmFyIGQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7ZC5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwoKT0+e2IobG90dGllKX0pO2QuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGU9Pnt2YXIgZj0iTG90dGllIGxpYnJhcnkgZmFpbGVkIHRvIGxvYWQuIjtlP2UubWVzc2FnZSYmKGYrPWAgT3JpZ2luYWwgZGVzY3JpcHRpb246ICR7ZS5tZXNzYWdlfWAsXy5jdyhlLGYpKTplPUVycm9yKGYpO18uSXAoZSk7YyhlKX0pO2Quc2V0QXR0cmlidXRlKCJhc3luYyIsIiIpO18ub2IoZCxhKTtkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGQpfSk6UHJvbWlzZS5yZWplY3QoRXJyb3IoIkJkIikpfTsKZ2dhPWZ1bmN0aW9uKGE9ZmdhLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9JU19CT1RUT01fU0hFRVRfT1BFTl9TVEFURSI6cmV0dXJuey4uLmEsamo6Yi5wYXlsb2FkfTtkZWZhdWx0OnJldHVybiBhfX07aWdhPWZ1bmN0aW9uKGE9aGdhLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9DSU5FTUFUSUNfU0VUVElOR19TVEFURSI6cmV0dXJuey4uLmEsaXNBbGxvd2VkOmIucGF5bG9hZH07ZGVmYXVsdDpyZXR1cm4gYX19OwprZ2E9ZnVuY3Rpb24oYT1qZ2EsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0VSUk9SX01FU1NBR0VfQ1JFQVRFX1BMQVlMSVNUX1NUQVRFIjpyZXR1cm57Li4uYSxlcnJvck1lc3NhZ2U6Yi5wYXlsb2FkfTtjYXNlICJTRVRfVElUTEVfQ1JFQVRFX1BMQVlMSVNUX1NUQVRFIjpyZXR1cm57Li4uYSx0aXRsZTpiLnBheWxvYWR9O2Nhc2UgIlNFVF9QUklWQUNZX0NSRUFURV9QTEFZTElTVF9TVEFURSI6cmV0dXJuey4uLmEscHJpdmFjeTpiLnBheWxvYWR9O2Nhc2UgIlNFVF9JU19ESVNBQkxFRF9DUkVBVEVfUExBWUxJU1RfU1RBVEUiOnJldHVybnsuLi5hLGlzRGlzYWJsZWQ6Yi5wYXlsb2FkfTtkZWZhdWx0OnJldHVybiBhfX07bWdhPWZ1bmN0aW9uKGE9bGdhLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9JU19EUkFXRVJfTEFZT1VUX09QRU5fU1RBVEUiOnJldHVybnsuLi5hLGpqOmIucGF5bG9hZH07ZGVmYXVsdDpyZXR1cm4gYX19OwpvZ2E9ZnVuY3Rpb24oYT1uZ2EsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX0ZVTExTQ1JFRU5fU1RBVEUiOnJldHVybnsuLi5hLGlzRnVsbHNjcmVlbjpiLnBheWxvYWR9O2Nhc2UgIlNFVF9OQVZJR0FUSU9OX0JVVFRPTiI6dmFyIGM9ey4uLmEubmF2aWdhdGlvbkJ1dHRvbnN9O2NbYi5wYXlsb2FkLnRhcmdldElkXT1iLnBheWxvYWQuYnV0dG9uO3JldHVybnsuLi5hLG5hdmlnYXRpb25CdXR0b25zOmN9O2Nhc2UgIlNFVF9UT1BfUEFORUxfSURfU1RBVEUiOnJldHVybnsuLi5hLHFzOmIucGF5bG9hZH07Y2FzZSAiU0VUX1NFQ09OREFSWV9IRUFERVIiOnJldHVybiBjPXsuLi5hLnNlY29uZGFyeUhlYWRlcn0sY1tiLnBheWxvYWQucGFuZWxJZF09Yi5wYXlsb2FkLnNlY29uZGFyeUhlYWRlcix7Li4uYSxzZWNvbmRhcnlIZWFkZXI6Y307ZGVmYXVsdDpyZXR1cm4gYX19O18ub009ZnVuY3Rpb24oKXttTXx8KG1NPW5ldyBuTSk7cmV0dXJuIG1NfTsKcE09ZnVuY3Rpb24oYSxiKXtiPWI/LkFzfHxfLnkoKS5yZXNvbHZlKF8uSW4oXy5rRikpPy4oKTtzd2l0Y2goYSl7Y2FzZSAiTElLRSI6YT1fLm9NKCkuZ2V0U3RhdGUoKTthPShhPV8ucUEoYS5lbnRpdGllcywibGlrZUJ1dHRvbkFuaW1hdGlvbkVudGl0eSIsIkVoeHNhV3RsWDJKMWRIUnZibDloYm1sdFlYUnBiMjVmWlc1MGFYUjVJTGNFS0FFJTNEIikpJiZhLmFuaW1hdGlvbkxpZ2h0VXJsJiZhLmFuaW1hdGlvbkRhcmtVcmw/e0VjOnthbmltYXRpb25Db25maWc6e25hbWU6Yj8iY3VzdG9tX2FuaW1hdGVkX2xpa2VfaWNvbl9kYXJrIjoiY3VzdG9tX2FuaW1hdGVkX2xpa2VfaWNvbiIscGF0aDpiP2EuYW5pbWF0aW9uRGFya1VybDphLmFuaW1hdGlvbkxpZ2h0VXJsLGxvb3A6ITEsYXV0b3BsYXk6ITEscmVuZGVyZXJTZXR0aW5nczp7dmlld0JveE9ubHk6ITAsY2xhc3NOYW1lOiJjdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29uIn19fSx0b3RhbEZyYW1lczoxMjAsemg6ITB9OnZvaWQgMDsKaWYoYSlyZXR1cm4gYTtiPWBhbmltYXRlZF9saWtlX2ljb25fJHtiPyJkYXJrIjoibGlnaHQifV92NWA7cmV0dXJue0VjOnthbmltYXRpb25Db25maWc6e25hbWU6YixwYXRoOmBodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9sb3R0aWUvYW5pbWF0ZWRfbGlrZV9pY29uLyR7Yn0uanNvbmAsbG9vcDohMSxhdXRvcGxheTohMSxyZW5kZXJlclNldHRpbmdzOnt2aWV3Qm94T25seTohMCxjbGFzc05hbWU6ImFuaW1hdGVkLWxpa2UtaWNvbiJ9fX0sdG90YWxGcmFtZXM6MTIwLHpoOiEwfTtjYXNlICJOT1RJRklDQVRJT05fQkVMTCI6cmV0dXJue0VjOnthbmltYXRpb25Db25maWc6e25hbWU6Yj8ibm90aWZpY2F0aW9uX2JlbGxfZGFyayI6Im5vdGlmaWNhdGlvbl9iZWxsX2xpZ2h0IixwYXRoOmBodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9sb3R0aWUvc3Vic2NyaWJlX2FjdGlvbi9zdWJzY3JpYmVfYWN0aW9uX2JlbGxfaWNvbl8ke2I/ImRhcmsiOiJsaWdodCJ9X3Y0Lmpzb25gLApsb29wOiExLGF1dG9wbGF5OiExLHJlbmRlcmVyU2V0dGluZ3M6e2NsYXNzTmFtZToiYW5pbWF0ZWQtc3Vic2NyaWJlLWljb24ifX19LHRvdGFsRnJhbWVzOjEyMCx6aDohMX19fTtwZ2E9ZnVuY3Rpb24oYSxiKXtfLmpmLnBiKGFzeW5jKCk9Pnt0cnl7YXdhaXQgXy5sTSgpO2xldCBjPWF3YWl0IChhd2FpdCBmZXRjaChhKSkuanNvbigpO3FNLnNldChhLGMpO3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2IoYyl9KX1jYXRjaChjKXtfLklwKGMpfX0pfTtxZ2E9ZnVuY3Rpb24oYSl7dmFyIGI9e2FuaW1hdGlvbkNvbmZpZzp7fSxsaXN0ZW5lcnM6e319LGM9KCk9PnthKCEwKX07Yi5saXN0ZW5lcnMuckk9YztiLmxpc3RlbmVycy5lcnJvcj1jO2IubGlzdGVuZXJzLnNJPSgpPT57YSghMSl9O3JldHVybiBifTsKbk09Y2xhc3N7Y29uc3RydWN0b3IoKXt2YXIgYT1mTSh7ZW5nYWdlbWVudFBhbmVsOm9nYSx0aTpnZ2EsZUk6aWdhLERwOm1nYSxtSTprZ2EsUUo6cmdhLEJLOnNnYSxDSzp0Z2EsLi4udWdhLC4uLnZnYX0pLGI9ZU0oY2dhKCkpO3RoaXMuc3RvcmU9Z00oYSx2b2lkIDAsYil9Z2V0U3RhdGUoKXtyZXR1cm4gdGhpcy5zdG9yZS5nZXRTdGF0ZSgpfWRpc3BhdGNoKGEpe3JldHVybiB0aGlzLnN0b3JlLmRpc3BhdGNoKGEpfXN1YnNjcmliZShhKXtyZXR1cm4gdGhpcy5zdG9yZS5zdWJzY3JpYmUoYSl9cmVwbGFjZVJlZHVjZXIoYSl7cmV0dXJuIHRoaXMuc3RvcmUucmVwbGFjZVJlZHVjZXIoYSl9W1N5bWJvbC5vYnNlcnZhYmxlXSgpe3JldHVybiB0aGlzLnN0b3JlW1N5bWJvbC5vYnNlcnZhYmxlXSgpfX07dmFyIHFNPW5ldyBNYXA7dmFyIHdnYT17SnA6bnVsbH07dmFyIHVnYT17VHI6ZnVuY3Rpb24oYT1fLiRMLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9TSEFSRURfQU5JTUFURURfVEhVTUJOQUlMX0VOQUJMRUQiOnJldHVybnsuLi5hLEVvOmIucGF5bG9hZH07Y2FzZSAiU0VUX1NIQVJFRF9JTkxJTkVfUFJFVklFV19FTkFCTEVEIjpyZXR1cm57Li4uYSxscTpiLnBheWxvYWR9O2Nhc2UgIlNFVF9TSEFSRURfQ1VSUkVOVF9QQUdFX1RZUEUiOnJldHVybnsuLi5hLHZwOmIucGF5bG9hZH07Y2FzZSAiU0VUX1NIQVJFRF9DVVJSRU5UX1BBR0VfU1VCX1RZUEUiOnJldHVybnsuLi5hLHVwOmIucGF5bG9hZH07Y2FzZSAiU0VUX1NIQVJFRF9QRVJTSVNURU5UX1BBTkVMX1ZJU0lCTEUiOnJldHVybnsuLi5hLHdyOmIucGF5bG9hZH07Y2FzZSAiU0VUX1NIQVJFRF9JU19TRUFSQ0hCT1hfSElEREVOIjpyZXR1cm57Li4uYSxDcTpiLnBheWxvYWR9O2RlZmF1bHQ6cmV0dXJuIGF9fSxhMTF5OmZNKHtKcDpmdW5jdGlvbihhPXdnYS5KcCxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfRVBIRU1FUkFMX0FDVElPTiI6cmV0dXJuIGIucGF5bG9hZDsKZGVmYXVsdDpyZXR1cm4gYX19fSksZW50aXRpZXM6ZnVuY3Rpb24oYT17fSxiKXtyZXR1cm4gZWdhKGEsYil9fTt2YXIgck09e1hsOiExLGZtOiExLGptOiExLHBsYXllclN0YXRlOi0xLGlzRnVsbHNjcmVlbjohMSxtajohMSxabDohMSxnbTohMSxUajoyLHhqOjB9O3ZhciB4Z2E9Zk0oe1hsOmZ1bmN0aW9uKGE9ck0uWGwsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX0RFU0tUT1BfU01BTExfV0lEVEgiOnJldHVybiBiLnBheWxvYWQuWGw7ZGVmYXVsdDpyZXR1cm4gYX19LGZtOmZ1bmN0aW9uKGE9ck0uZm0sYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX1NIT1JUU19BQ1RJVkUiOnJldHVybiBiLnBheWxvYWQuZm07ZGVmYXVsdDpyZXR1cm4gYX19LGptOmZ1bmN0aW9uKGE9ck0uam0sYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX1dBVENIX1dISUxFX01PREUiOnJldHVybiBiLnBheWxvYWQuam07ZGVmYXVsdDpyZXR1cm4gYX19LHBsYXllclN0YXRlOmZ1bmN0aW9uKGE9ck0ucGxheWVyU3RhdGUsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX1BMQVlFUl9TVEFURSI6cmV0dXJuIGIucGF5bG9hZC5wbGF5ZXJTdGF0ZTtkZWZhdWx0OnJldHVybiBhfX0saXNGdWxsc2NyZWVuOmZ1bmN0aW9uKGE9ck0uaXNGdWxsc2NyZWVuLApiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfRlVMTFNDUkVFTiI6cmV0dXJuIGIucGF5bG9hZC5pc0Z1bGxzY3JlZW47ZGVmYXVsdDpyZXR1cm4gYX19LG1qOmZ1bmN0aW9uKGE9ck0ubWosYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX1NNQUxMX1NDUkVFTl9TUVVFRVpFQkFDSyI6cmV0dXJuIGIucGF5bG9hZC5tajtkZWZhdWx0OnJldHVybiBhfX0sZ206ZnVuY3Rpb24oYT1yTS5nbSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfU0hPUlRTX1BJUF9BQ1RJVkUiOnJldHVybiBiLnBheWxvYWQuZ207ZGVmYXVsdDpyZXR1cm4gYX19LFpsOmZ1bmN0aW9uKGE9ck0uWmwsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX1BMQVlCQUNLX1NUQVJURUQiOnJldHVybiBiLnBheWxvYWQuWmw7ZGVmYXVsdDpyZXR1cm4gYX19LFRqOmZ1bmN0aW9uKGE9ck0uVGosYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX1NIT1JUU19MQVlPVVQiOnJldHVybiBiLnBheWxvYWQuVGo7CmRlZmF1bHQ6cmV0dXJuIGF9fSx4ajpmdW5jdGlvbihhPXJNLnhqLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9NRVRBUEFORUxfU1RZTEUiOnJldHVybiBiLnBheWxvYWQueGo7ZGVmYXVsdDpyZXR1cm4gYX19fSk7dmFyIGZnYT17amo6ITF9O3ZhciBoZ2E9e2lzQWxsb3dlZDohMX07dmFyIGpnYT17ZXJyb3JNZXNzYWdlOiIiLHRpdGxlOiIiLHByaXZhY3k6IiIsaXNEaXNhYmxlZDohMH07dmFyIGxnYT17amo6ITF9O3ZhciBuZ2E9e2lzRnVsbHNjcmVlbjohMSxxczp2b2lkIDAsbmF2aWdhdGlvbkJ1dHRvbnM6e30sc2Vjb25kYXJ5SGVhZGVyOnt9fTt2YXIgeWdhPXtyZXNwb25zZTp2b2lkIDB9O3ZhciByZ2E9KGE9eWdhLGIpPT57c3dpdGNoKGIudHlwZSl7Y2FzZSAiTE9DQVRJT05fQ09MTEVDVElPTl9SRVNQT05TRV9DSEFOR0UiOnJldHVybnsuLi5hLHJlc3BvbnNlOmIucGF5bG9hZH07ZGVmYXVsdDpyZXR1cm4gYX19O3ZhciB6Z2E9e25leHRDb21tYW5kOnZvaWQgMCxUeTohMSxidzp2b2lkIDAsUHg6ITF9O3ZhciBzZ2E9KGE9emdhLGIpPT57c3dpdGNoKGIudHlwZSl7Y2FzZSAiUkVQT1JUX0NIQU5ORUxfTkVYVF9ESVNBQkxFRF9DSEFOR0UiOnJldHVybnsuLi5hLFR5OmIucGF5bG9hZH07Y2FzZSAiUkVQT1JUX0NIQU5ORUxfTkVYVF9DT01NQU5EX0NIQU5HRSI6cmV0dXJuey4uLmEsbmV4dENvbW1hbmQ6Yi5wYXlsb2FkfTtjYXNlICJSRVBPUlRfQ0hBTk5FTF9NT0RBTF9GT09URVJfUkVOREVSRVJfU1VCTUlTU0lPTl9EQVRBX0NIQU5HRSI6cmV0dXJuey4uLmEsYnc6Yi5wYXlsb2FkfTtjYXNlICJSRVBPUlRfQ0hBTk5FTF9ORVhUX0lNUEVSU09OQVRJT05fVkFMSURJVFlfQ0hBTkdFIjpyZXR1cm57Li4uYSxQeDpiLnBheWxvYWR9O2RlZmF1bHQ6cmV0dXJuIGF9fTt2YXIgQWdhPXtVejp2b2lkIDAsVHo6dm9pZCAwfTt2YXIgdGdhPShhPUFnYSxiKT0+e3N3aXRjaChiLnR5cGUpe2Nhc2UgIlJFUE9SVF9GT1JNX01PREFMX1JFTkRFUkVSX0RBVEFfQ0hBTkdFIjpyZXR1cm57Li4uYSxVejpiLnBheWxvYWR9O2Nhc2UgIlJFUE9SVF9ERVRBSUxTX0ZPUk1fUkVOREVSRVJfREFUQV9DSEFOR0UiOnJldHVybnsuLi5hLFR6OmIucGF5bG9hZH07ZGVmYXVsdDpyZXR1cm4gYX19O3ZhciBCZ2E9e307dmFyIHNNPXtzaDohMSx3aDpfLngoIndlYl9wbGF5bGlzdF9wYW5lbF9kZWZhdWx0X2NvbGxhcHNlZCIpLHZnOltdLFppOiExfTt2YXIgQ2dhPWZNKHtzaDpmdW5jdGlvbihhPXNNLnNoLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIk1BSU5fQVBQX1NFVF9JU19MSVZFX0NIQVRfQ09MTEFQU0VEIjpyZXR1cm4gYi5wYXlsb2FkP2IucGF5bG9hZC5zaDphO2RlZmF1bHQ6cmV0dXJuIGF9fSx3aDpmdW5jdGlvbihhPXNNLndoLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIk1BSU5fQVBQX1NFVF9JU19QTEFZTElTVF9QQU5FTF9DT0xMQVBTRUQiOnJldHVybiBiLnBheWxvYWQud2g7ZGVmYXVsdDpyZXR1cm4gYX19LHZnOmZ1bmN0aW9uKGE9c00udmcsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiTUFJTl9BUFBfQUREX09QRU5fRU5HQUdFTUVOVF9QQU5FTCI6cmV0dXJuWy4uLmEsYi5wYXlsb2FkLnh6XTtjYXNlICJNQUlOX0FQUF9SRU1PVkVfT1BFTl9FTkdBR0VNRU5UX1BBTkVMIjpyZXR1cm4gYS5sZW5ndGg9PT0wP2E6YS5maWx0ZXIoYz0+YyE9PWIucGF5bG9hZC5vSyk7ZGVmYXVsdDpyZXR1cm4gYX19LFppOmZ1bmN0aW9uKGE9CnNNLlppLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIk1BSU5fQVBQX1NFVF9IQVNfUExBWUxJU1QiOnJldHVybiBiLnBheWxvYWQuWmk7ZGVmYXVsdDpyZXR1cm4gYX19fSk7dmFyIHZnYT17eEw6ZnVuY3Rpb24oYT1CZ2EsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX1RSQU5TQ1JJUFRJT05fU1RBVEUiOnJldHVybnsuLi5hLGpMOmIucGF5bG9hZH07Y2FzZSAiU0VUX09WRVJMQVlfU1RBVEUiOnJldHVybnsuLi5hLG92ZXJsYXk6Yi5wYXlsb2FkfTtjYXNlICJSRVNFVF9WT0lDRV9TRUFSQ0hfU1RBVEUiOnJldHVybnt9O2RlZmF1bHQ6cmV0dXJuIGF9fSxzaG9ydHM6eGdhLEFkOkNnYX07dmFyIG1NPXZvaWQgMDttTT1uZXcgbk07Xy50TT1fLkwoYT0+e3ZhciB7YW5pbWF0ZWRJY29uVHlwZTpiLGFjdGl2ZTpjLEhjOmQsYW5pbWF0aW9uUmVmOmUsSEE6ZixzaXplOmh9PV8uREMoYSx7SGM6dm9pZCAwLGFuaW1hdGlvblJlZjp7fSxzaXplOjI0fSksW2ssbF09Xy5KKHZvaWQgMCx2b2lkIDAsIlR2Z21DZSIpLG09KCk9PnBNKGIoKSxkPy4oKSk/LkVjLmFuaW1hdGlvbkNvbmZpZy5uYW1lPz8iIixuPSgpPT57aWYocE0oYigpLGQ/LigpKSl7dmFyIHtwYXRoOkF9PXBNKGIoKSxkPy4oKSkuRWMuYW5pbWF0aW9uQ29uZmlnO3JldHVybiBxTS5nZXQoQSl8fGsoKX19LFtwLHJdPV8uSighMSx2b2lkIDAsImpmMkR5YiIpLHQ9cWdhKHIpLHY9KCk9PnBNKGIoKSxkPy4oKSk/LkVjLmFuaW1hdGlvbkNvbmZpZz8ucmVuZGVyZXJTZXR0aW5ncz8uY2xhc3NOYW1lPz8iIix6PXZvaWQgMCxFPXZvaWQgMDtfLm5FKCgpPT57dmFyIEE9cE0oYigpLGQ/LigpKSxGPW0oKSxDPW4oKSxHPXAoKSxEPWMoKTtpZihBJiYoRSE9PUYmJihFPQpGLHo9RCxGPWUoKSx0LmFuaW1hdGlvbkNvbmZpZz1BLkVjLmFuaW1hdGlvbkNvbmZpZyx0LmFuaW1hdGlvblJlZj1GLEMmJih0LmFuaW1hdGlvbkNvbmZpZy5hbmltYXRpb25EYXRhPUMsdC5hbmltYXRpb25Db25maWcucGF0aD12b2lkIDApLEY9QS5FYy5hbmltYXRpb25Db25maWcucGF0aCwhcU0uZ2V0KEYpJiZBLnpoJiZGJiZwZ2EoRixsKSksIShHfHxBLnpoJiYhQykpKXtpZihDPSFlKCkubG90dGllRWwpRD8oRz1BLnRvdGFsRnJhbWVzLHQuYW5pbWF0aW9uQ29uZmlnLmluaXRpYWxTZWdtZW50PVtHLTEsR10pOnQuYW5pbWF0aW9uQ29uZmlnLmluaXRpYWxTZWdtZW50PXZvaWQgMDt6PT09RHx8Q3x8KEM9ZSgpLEQ/Qy5sb3R0aWVFbD8ucGxheVNlZ21lbnRzKFswLEEudG90YWxGcmFtZXNdLCEwKTpDLmxvdHRpZUVsPy5wbGF5U2VnbWVudHMoWzAsMV0sITApKTt6PUR9fSwiWEIxR1NiIik7cmV0dXJuIF8uSygiYW5pbWF0ZWQtaWNvbiIse2NsYXNzOiJ5dEFuaW1hdGVkSWNvbkhvc3QiLAoiZGF0YS1zaXplIjooKT0+aCgpfSxfLksoXy5PLHtBOigpPT4hKCFwTShiKCksZD8uKCkpPy5FYy5hbmltYXRpb25Db25maWcucGF0aHx8cE0oYigpLGQ/LigpKT8uemgmJiFuKCl8fHAoKSksdGhlbjooKT0+Xy5LKF8uY00se2RhdGE6dCxhbmltYXRpb25OYW1lOm0sY2xhc3NOYW1lOnYsYW5pbWF0aW9uUmVmOmV9KSxXOmZ9KSl9LCJNYSIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnVNPWZ1bmN0aW9uKGEpe3JldHVybiBfLnNFKCgpPT4oe3ZhbHVlOmF9KSl9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgeU0sek0sRGdhLEFNLEJNLENNLERNLEVNLEdNLEZnYSxJTSxHZ2EsTE0sSGdhLE1NLFJNLFNNLFRNLGJOLEtnYSxjTixlTixMZ2EsT2dhLE5nYSxNZ2EsaE4sUGdhLFJnYSxpTixqTixrTixTZ2EsVGdhLGxOLFVnYSxtTixuTixwTixWZ2EsV2dhLFhnYSxxTixhaGEsJGdhLHJOLFpnYSxZZ2EsZGhhLGNoYSxzTixiaGEsZmhhLHZOLFgsQU4sQ04sZ2hhLGloYSxoaGEsamhhLE1OLGxoYSxtaGEsUU4sbmhhLG9oYSxUTixxaGEsYU8scmhhLHNoYSx0aGEsdWhhLHZoYSx3aGEseGhhLEVnYSxGTSxITSxiTyx5aGEsT00sUU0sSWdhLEpnYSx6aGEsQWhhO18udk09ZnVuY3Rpb24oYSl7dmFyIGI9Xy4kdChhKTtyZXR1cm57W1N5bWJvbC5kaXNwb3NlXSgpe18uJHQoYil9fX07Xy54TT1mdW5jdGlvbigpe2lmKF8uWHooKSl7dmFyIGE9Xy5HaChgJHtfLlZqKCl9Ojp5dC1tYXctcGxheWVyYCk7aWYoYSlyZXR1cm4gbmV3IF8ud00oYSl9fTsKeU09ZnVuY3Rpb24oYSxiKXtmb3IoO2EubGVuZ3RoPmI7KWEucG9wKCl9O3pNPWZ1bmN0aW9uKGEpe2E9QXJyYXkoYSk7eU0oYSwwKTtyZXR1cm4gYX07RGdhPWZ1bmN0aW9uKGEsYixjLGQpeyhkW2JdfHxkW18uUkEuZGVmYXVsdF0pKGEsYixjKX07QU09ZnVuY3Rpb24oYSxiLGMpe2I9bmV3IEVnYShiLGMpO3JldHVybiBhLl9faW5jcmVtZW50YWxET01EYXRhPWJ9OwpCTT1mdW5jdGlvbihhLGIpe2lmKGEuX19pbmNyZW1lbnRhbERPTURhdGEpcmV0dXJuIGEuX19pbmNyZW1lbnRhbERPTURhdGE7dmFyIGM9YS5ub2RlVHlwZT09PTE/YS5sb2NhbE5hbWU6YS5ub2RlTmFtZSxkPWEubm9kZVR5cGU9PT0xP2EuZ2V0QXR0cmlidXRlKCJrZXkiKTpudWxsO2I9QU0oYSxjLGEubm9kZVR5cGU9PT0xP2R8fGI6bnVsbCk7aWYoYS5ub2RlVHlwZT09PTEmJihjPWEuYXR0cmlidXRlcyxkPWMubGVuZ3RoKSl7YT1iLmp8fChiLmo9ek0oZCoyKSk7Zm9yKGxldCBlPTAsZj0wO2U8ZDtlKz0xLGYrPTIpe2xldCBoPWNbZV0saz1oLnZhbHVlO2FbZl09aC5uYW1lO2FbZisxXT1rfX1yZXR1cm4gYn07Q009ZnVuY3Rpb24oKXtfLllBPV8uVkEoKX07CkRNPWZ1bmN0aW9uKGEsYil7Q00oKTt2YXIgYzthOntpZihjPV8uWUEpe2Rve2lmKGM9PT1udWxsKWJyZWFrO3ZhciBkPWMsZT1hLGY9YjtsZXQgaD1CTShkLGYpO2lmKCgwLF8uYkIpKGQsZSxoLm8sZixoLmtleSkpYnJlYWsgYX13aGlsZShiJiYoYz1jLm5leHRTaWJsaW5nKSl9Yz1udWxsfWN8fChhPT09IiN0ZXh0Ij8oYT1fLlpBLmNyZWF0ZVRleHROb2RlKCIiKSxBTShhLCIjdGV4dCIsbnVsbCkpOihjPV8uWkEsZD1fLlVBLHR5cGVvZiBhPT09ImZ1bmN0aW9uIj9jPW5ldyBhOmM9KGQ9YT09PSJzdmciPyJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI6YT09PSJtYXRoIj8iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI6ZD09bnVsbHx8Qk0oZCkubz09PSJmb3JlaWduT2JqZWN0Ij9udWxsOmQubmFtZXNwYWNlVVJJKT9jLmNyZWF0ZUVsZW1lbnROUyhkLGEpOmMuY3JlYXRlRWxlbWVudChhKSxBTShjLGEsYiksYT1jKSxfLldBLmNyZWF0ZWQucHVzaChhKSxjPQphKTthPWM7aWYoYSE9PV8uWUEpe2lmKF8uJEEuaW5kZXhPZihhKT49MClmb3IoYj1fLlVBLGM9YS5uZXh0U2libGluZyxkPV8uWUE7ZCE9PW51bGwmJmQhPT1hOyllPWQubmV4dFNpYmxpbmcsYi5pbnNlcnRCZWZvcmUoZCxjKSxkPWU7ZWxzZSBfLlVBLmluc2VydEJlZm9yZShhLF8uWUEpO18uWUE9YX19O0VNPWZ1bmN0aW9uKGEsYil7RE0oYSxiKTtfLlVBPV8uWUE7Xy5ZQT1udWxsO3JldHVybiBfLlVBfTtHTT1mdW5jdGlvbihhLGIsYyxkKXtGTS5wdXNoKERnYSk7Rk0ucHVzaChhKTtGTS5wdXNoKGIpO0ZNLnB1c2goYyk7Rk0ucHVzaChkKX07CkZnYT1mdW5jdGlvbihhPV8uSEMpe3ZhciBiPV8uVUEsYz1CTShiKSxkPV8uYUI7Yz1jLmp8fChjLmo9ek0oZC5sZW5ndGgpKTtmb3IodmFyIGU9IWMubGVuZ3RofHwhMSxmPTA7ZjxkLmxlbmd0aDtmKz0yKXt2YXIgaD1kW2ZdO2lmKGUpY1tmXT1oO2Vsc2UgaWYoY1tmXSE9PWgpYnJlYWs7bGV0IGw9ZFtmKzFdO2lmKGV8fGNbZisxXSE9PWwpY1tmKzFdPWwsR00oYixoLGwsYSl9aWYoZjxkLmxlbmd0aHx8ZjxjLmxlbmd0aCl7Zm9yKGY9ZT1mO2Y8Yy5sZW5ndGg7Zis9MilfLkpDW2NbZl1dPWNbZisxXTtmb3IoZj1lO2Y8ZC5sZW5ndGg7Zis9MillPWRbZl0saD1kW2YrMV0sXy5KQ1tlXSE9PWgmJkdNKGIsZSxoLGEpLGNbZl09ZSxjW2YrMV09aCxkZWxldGUgXy5KQ1tlXTt5TShjLGQubGVuZ3RoKTtmb3IodmFyIGsgaW4gXy5KQylHTShiLGssdm9pZCAwLGEpLGRlbGV0ZSBfLkpDW2tdfWE9SE07SE09Yj1GTS5sZW5ndGg7Zm9yKGs9YTtrPGI7ays9NSkoMCxGTVtrXSkoRk1baysxXSwKRk1baysyXSxGTVtrKzNdLEZNW2srNF0pO0hNPWE7eU0oRk0sYSk7eU0oZCwwKX07SU09ZnVuY3Rpb24oYSwuLi5iKXtETSgiI3RleHQiLG51bGwpO2I9Xy5ZQTt2YXIgYz1CTShiKTtpZihjLnRleHQhPT1hKXtjPWMudGV4dD1hO2ZvcihsZXQgZD0xO2Q8YXJndW1lbnRzLmxlbmd0aDtkKz0xKWM9KDAsYXJndW1lbnRzW2RdKShjKTtiLmRhdGEhPT1jJiYoYi5kYXRhPWMpfX07CkdnYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT1bXTthLl9kaXNwb3NlRWZmZWN0cz1fLnV2KCgpPT57Xy50digoKT0+e3ZhciBmPWMoKTtpZihmPT09bnVsbHx8Zj09PXZvaWQgMClmPSIiO2lmKF8ucUIoZil8fGY9PT1udWxsKWQ/PyhkPWRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCIiKSksZC5wYXJlbnROb2RlIT09YSYmKGQuX2lzU2lnbmFsVGV4dE5vZGU9ITAsYS5pbnNlcnRCZWZvcmUoZCxiKSksZC50ZXh0Q29udGVudD1TdHJpbmcoZik7ZWxzZSBpZihfLm9CKGYpKXtsZXQgaD1lLmxlbmd0aD4wP2VbZS5sZW5ndGgtMV0ubmV4dFNpYmxpbmc6Yjtmb3IobGV0IGsgb2YgZSlhLnJlbW92ZUNoaWxkKGspO2Y9Xy5wQihmKTtlPUFycmF5LmZyb20oZi5jaGlsZE5vZGVzKTtmb3IobGV0IGsgb2YgZSlhLmluc2VydEJlZm9yZShrLGgpfWVsc2UgdGhyb3cgRXJyb3IoIkFiYCIrKF8uTXU/Lm5hbWU/PyJ1bmtub3duIikrImAiK3R5cGVvZiBmKTt9LCJWdkRnQyIpfSxfLkt1LnJpfHwhIV8uWnQpfTsKXy5LTT1mdW5jdGlvbihhKXtpZighXy5KTSlyZXR1cm4hMTtmb3IobGV0IGIgb2YgT2JqZWN0LmtleXMoXy5KTSkpaWYoYS5oYXNPd25Qcm9wZXJ0eShiKSlyZXR1cm4hMDtyZXR1cm4hMX07TE09ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGgpe2lmKGEubGVuZ3RoPT09MSlyZXR1cm4gYVswXTt2YXIgYj17fTtfLndGKGIsXy5TRCx7Y29tbWFuZHM6YX0pO3JldHVybiBifX07SGdhPWZ1bmN0aW9uKGEpe3ZhciBiPUFycmF5LmlzQXJyYXkoYS5pdGVtcyk/YS5pdGVtczpBcnJheS5mcm9tKGEuaXRlbXMpO3JldHVybiBfLmZHKGIsYS5jaGlsZHJlbil9O01NPWZ1bmN0aW9uKGEpe2E9Xy5uSihhKTthLmxlbmd0aD4wJiZhWzBdLmZvY3VzKCl9O18uTk09ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWU9PnthLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixkKTtyZXR1cm4gYy5jYWxsKGEsZSl9O2EuYWRkRXZlbnRMaXN0ZW5lcihiLGQsdm9pZCAwKX07Cl8uUE09ZnVuY3Rpb24oYSl7T018fChPTT1fLkNkKCJBIikpO09NLmhyZWYhPT1hJiZfLkx5KE9NLGEpO3JldHVybiBPTX07Uk09ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIiI7aWYoUU1bYV0pcmV0dXJuIFFNW2FdO3ZhciBiPV8uUE0oYSkucGF0aG5hbWU7UU1bYV09Yi5zdGFydHNXaXRoKCIvIik/YjoiLyIrYjtyZXR1cm4gUU1bYV19OwpTTT1mdW5jdGlvbihhKXtyZXR1cm4gYT09PSIvIj8iaG9tZSI6YS5zdGFydHNXaXRoKCIvcmVzdWx0cyIpPyJzZWFyY2giOmEuc3RhcnRzV2l0aCgiL3dhdGNoIik/IndhdGNoIjphLnN0YXJ0c1dpdGgoIi9zaG9ydHMiKT8ic2hvcnRzIjphLnN0YXJ0c1dpdGgoIi9oYXNodGFnIik/Imhhc2h0YWciOmEuc3RhcnRzV2l0aCgiL2NyZWF0ZV9jaGFubmVsIik/ImNyZWF0ZV9jaGFubmVsIjphLnN0YXJ0c1dpdGgoIi9wb3N0LyIpPyJwb3N0IjphLnN0YXJ0c1dpdGgoIi9AIil8fGEuc3RhcnRzV2l0aCgiL3VzZXIvIil8fGEuc3RhcnRzV2l0aCgiL2NoYW5uZWwvIik/ImNoYW5uZWwiOmEuc3RhcnRzV2l0aCgiL2V4cGVyaW1lbnRzIik/ImV4cGVyaW1lbnRzIjphLnN0YXJ0c1dpdGgoIi9zcG9uc29yX2NoYW5uZWwiKT8ic3BvbnNvcnNoaXAiOmEuc3RhcnRzV2l0aCgiL3NlbGVjdF9zaXRlIik/InNldHRpbmdzIjphLnN0YXJ0c1dpdGgoIi9sb2NhdGUiKT8ibG9jYXRlIjphLnN0YXJ0c1dpdGgoIi9yZWRlZW0iKT8KInJlZGVlbSI6YS5zdGFydHNXaXRoKCIvbXVzaWNwcmVtaXVtIil8fGEuc3RhcnRzV2l0aCgiL3ByZW1pdW0iKXx8YS5zdGFydHNXaXRoKCIvcmVkIik/InByZW1pdW0iOmEuc3RhcnRzV2l0aCgiL3BhaWRfbWVtYmVyc2hpcHMiKT8icGFpZF9tZW1iZXJzaGlwcyI6YS5zdGFydHNXaXRoKCIvb29wcyIpPyJvb3BzIjphLnN0YXJ0c1dpdGgoIi9jbGlwIik/ImNsaXAiOl8uWEQ/LnJlc3BvbnNlPy5wYWdlPT09IjQwNCI/IjQwNCI6YS5zdGFydHNXaXRoKCIvZmVlZC9oaXN0b3J5Iik/Imhpc3RvcnkiOmEuc3RhcnRzV2l0aCgiL2ZlZWQvbGlicmFyeSIpPyJsaWJyYXJ5IjphLnN0YXJ0c1dpdGgoIi9mZWVkL3N1YnNjcmlwdGlvbnMiKT8ic3Vic2NyaXB0aW9ucyI6YS5zdGFydHNXaXRoKCIvZmVlZC90cmVuZGluZyIpPyJ0cmVuZGluZyI6YS5zdGFydHNXaXRoKCIvZmVlZC9uZXdzX2Rlc3RpbmF0aW9uIik/Im5ld3MiOmEuc3RhcnRzV2l0aCgiL3BsYXlsaXN0Iik/InBsYXlsaXN0IjphLnN0YXJ0c1dpdGgoIi9taW5vcl9tb21lbnQiKT8KIm1pbm9yX21vbWVudCI6YS5zdGFydHNXaXRoKCIvcGxheWFibGUvIil8fGEubWF0Y2goIl4vcGxheWFibGVzLyg/IXNhdmVkKS4iKT8ibWluaV9hcHAiOmEuc3RhcnRzV2l0aCgiL3BsYXlhYmxlcyIpPyJwbGF5YWJsZXMiOmEuc3RhcnRzV2l0aCgiL2NyZWF0ZS9saXZlL2pvaW4iKT8ib3Blbl9pbl9hcHAiOmEuc3RhcnRzV2l0aCgiL2ZlZWQvZXhwbG9yZSIpPyJleHBsb3JlIjoiYnJvd3NlIn07ClRNPWZ1bmN0aW9uKCl7dmFyIGE9Xy5YRD8ucmVzcG9uc2UsYj1hPy5lbmRwb2ludDtpZighYilyZXR1cm4gYT8ucGFnZT09PSJ3YXRjaCI/IndhdGNoIjpTTShSTSh3aW5kb3cubG9jYXRpb24uaHJlZikpO2E9Xy5CKGI/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8ud2ViUGFnZVR5cGU7dmFyIGM9ITE7aWYoYSYmIUlnYS5pbmNsdWRlcyhhKSlzd2l0Y2goYSl7Y2FzZSAiV0VCX1BBR0VfVFlQRV9TRUFSQ0giOnJldHVybiJzZWFyY2giO2Nhc2UgIldFQl9QQUdFX1RZUEVfU0hPUlRTIjpyZXR1cm4ic2hvcnRzIjtjYXNlICJXRUJfUEFHRV9UWVBFX0NIQU5ORUwiOnJldHVybiJjaGFubmVsIjtjYXNlICJXRUJfUEFHRV9UWVBFX1NFVFRJTkdTIjpyZXR1cm4ic2V0dGluZ3MiO2Nhc2UgIldFQl9QQUdFX1RZUEVfUExBWUxJU1QiOnJldHVybiJwbGF5bGlzdCI7Y2FzZSAiV0VCX1BBR0VfVFlQRV9PUEVOX0lOX0FQUCI6cmV0dXJuIm9wZW5faW5fYXBwIjtjYXNlICJXRUJfUEFHRV9UWVBFX01JTklfQVBQIjpyZXR1cm4ibWluaV9hcHAiOwpjYXNlICJXRUJfUEFHRV9UWVBFX1dBVENIIjpyZXR1cm4gXy5CKGI/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8udXJsJiZSTShfLkIoYi5jb21tYW5kTWV0YWRhdGEsXy56dykudXJsKS5zdGFydHNXaXRoKCIvY2xpcCIpPyJjbGlwIjoid2F0Y2giO2Nhc2UgIldFQl9QQUdFX1RZUEVfQlJPV1NFIjpyZXR1cm4oYj1fLkIoYixfLmNFKT8uYnJvd3NlSWQpP0pnYVtiXXx8ImJyb3dzZSI6ImJyb3dzZSI7ZGVmYXVsdDpjPSEwfWlmKF8uQihiLF8uRWVhKXx8Xy5CKGIsXy5EZWEpKXJldHVybiJzcG9uc29yc2hpcCI7dmFyIGQ9Uk0od2luZG93LmxvY2F0aW9uLmhyZWYpO2lmKGQuc3RhcnRzV2l0aCgiL2V4cGVyaW1lbnRzIikpcmV0dXJuImV4cGVyaW1lbnRzIjtpZihkLnN0YXJ0c1dpdGgoIi9jcmVhdGVfY2hhbm5lbCIpKXJldHVybiJjcmVhdGVfY2hhbm5lbCI7aWYoXy5CKGIsXy5WRCkmJmQuc3RhcnRzV2l0aCgiL3Nob3J0cyIpKXJldHVybiJzaG9ydHMiO2lmKF8uQihiLF8uVkQpJiYKZC5zdGFydHNXaXRoKCIvd2F0Y2giKSlyZXR1cm4id2F0Y2giO2MmJihiPW5ldyBfLlhqKCJVbnN1cHBvcnRlZCBtV2ViIHBhZ2UgdHlwZSIse3BhdGhuYW1lOmQsd2ViUGFnZVR5cGU6YX0pLF8uR3AoYikpO3JldHVybiJicm93c2UifTtfLlVNPWZ1bmN0aW9uKGEpe2E/LmhyZWY/YT0oYT1hLmhyZWYpP1NNKFJNKGE/YTp3aW5kb3cubG9jYXRpb24uaHJlZikpOlRNKCk6YT1hPy5wYWdlVHlwZTtyZXR1cm4gYXx8VE0oKX07Xy5WTT1mdW5jdGlvbihhKXtyZXR1cm4gXy5VTShhKT09PSJ3YXRjaCJ9O18uV009ZnVuY3Rpb24oKXtyZXR1cm4gXy5VTSgpPT09InNob3J0cyJ9O18uWE09ZnVuY3Rpb24oYSxiKXt3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoYSx7ZGV0YWlsOmJ9KSl9OwpfLlpNPWZ1bmN0aW9uKCl7Xy5ZTSYmXy5IcChuZXcgXy5YaihgVW5leHBlY3RlZCBjYWxsIHRvIHJlcXVlc3RCYWNrTmF2aWdhdGlvbiwgZnJhZ21lbnQ6ICR7d2luZG93LmxvY2F0aW9uLmhhc2h9YCkpO18uRko9bmV3IF8uQmYoYT0+e2Z1bmN0aW9uIGIoKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLGIpO3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixiKTthKCl9d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIixiKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsYil9KTtfLk5NKHdpbmRvdywicG9wc3RhdGUiLCgpPT57c2V0VGltZW91dCgoKT0+e30pfSk7aGlzdG9yeS5iYWNrKCk7cmV0dXJuIF8uRkp9OwpfLiRNPWZ1bmN0aW9uKGEsYj0hMSl7aWYoXy5ZTSl7dmFyIGM9d2luZG93LmxvY2F0aW9uO2E9Xy5kYihgIyR7YX1gKTthIT09dm9pZCAwJiZjLnJlcGxhY2UoYSl9ZWxzZSB3aW5kb3cubG9jYXRpb24uaGFzaD1hO2J8fF8ueCgibXdlYl9lbmFibGVfa2V0b19jb250ZW50Iil8fF8uWE0oInVwZGF0ZXVpIil9O18uYU49ZnVuY3Rpb24oYSl7aWYoYSYmYS5zaW1wbGVUZXh0KXJldHVybiBhLnNpbXBsZVRleHQ7dmFyIGI9IiI7aWYoYSYmYS5ydW5zKWZvcihsZXQgYz0wO2M8YS5ydW5zLmxlbmd0aDtjKyspYS5ydW5zW2NdLnRleHQmJihiKz1hLnJ1bnNbY10udGV4dCk7cmV0dXJuIGJ9O2JOPWZ1bmN0aW9uKGEpe3JldHVybiBfLmtBKHt0eXBlOiJTRVRfSVNfQk9UVE9NX1NIRUVUX09QRU5fU1RBVEUiLHBheWxvYWQ6YX0pfTsKS2dhPWZ1bmN0aW9uKGEpe2lmKGEmJmEuZm9jdXMpaWYoYSE9PWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpYS5mb2N1cygpO2Vsc2UgcmV0dXJuIGNOKGFzeW5jKCk9Pntkb2N1bWVudC5hY3RpdmVFbGVtZW50JiZkb2N1bWVudC5hY3RpdmVFbGVtZW50LmJsdXIoKTtyZXR1cm4gY04oKCk9PnthLmZvY3VzKCl9KX0pfTtfLmROPWZ1bmN0aW9uKGEpe3ZhciBiPTU7c2V0VGltZW91dChhc3luYygpPT57Zm9yKHZhciBjPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7KGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1jfHxkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09ZG9jdW1lbnQuYm9keSkmJmI+PTAmJmE7KXthd2FpdCBLZ2EoYSk7aWYoZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWEpYnJlYWs7YT1hLnBhcmVudEVsZW1lbnQ7LS1ifX0sMTUpfTtjTj1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IFByb21pc2UoYj0+e3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2IoYSgpKX0pfSl9OwplTj1mdW5jdGlvbihhKXtpZih0eXBlb2YgYS5jaGlsZHJlbj09PSJmdW5jdGlvbiIpcmV0dXJuIGEuY2hpbGRyZW4oKSxudWxsO2ZvcihsZXQgYiBvZiBhLmNoaWxkcmVuKWIoKTtyZXR1cm4gbnVsbH07Xy5mTj1mdW5jdGlvbihhLGIpe18uUnUoKCk9PkxnYShhLGIpKX07TGdhPWZ1bmN0aW9uKGEsYil7dmFyIGM9bnVsbDtfLmd2Kys7dHJ5e2M9KDAsXy5JQykoYSwoKT0+e18uZ04oYil9KSxfLklBKCExKX1jYXRjaChkKXt0aHJvdyBfLklBKCEwKSxkO31yZXR1cm4gYz09PW51bGw/YTpjfTsKXy5nTj1mdW5jdGlvbihhKXtpZihhIT09dm9pZCAwJiZhIT09bnVsbClpZihhIGluc3RhbmNlb2YgXy5kQylmb3IodmFyIGI9Xy5VQTtfLlZBKCkhPW51bGwmJl8ubkMgaW4gXy5WQSgpJiZiLmNvbnRhaW5zKF8uVkEoKSk7KUNNKCk7ZWxzZSBpZihBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYyBvZiBhKV8uZ04oYyk7ZWxzZSBpZihhIGluc3RhbmNlb2YgXy5TYSlJTShhLnRvU3RyaW5nKCkpO2Vsc2UgaWYoXy5pQihhKSl7aWYoXy5WQSgpIT09YSl0aHJvdyBFcnJvcigiRGJgIithLnRhZ05hbWUrImAiKyhfLk11Py5uYW1lPz8idW5rbm93biIpKTtDTSgpfWVsc2UgaWYoYz1hLGMhPW51bGwmJmMuR2k9PT1fLm1CfHxjIGluc3RhbmNlb2YgXy5mYnx8Xy5MQSgpKGMpKXtiPV8ucEIoYSk7Yj1BcnJheS5mcm9tKGIuY2hpbGROb2Rlcyk7Zm9yKHZhciBkIG9mIGIpXy5VQS5hcHBlbmRDaGlsZChkKSxDTSgpfWVsc2UgaWYoXy5YYShhKSYmKGE9YS50b1N0cmluZygpKSxkPXR5cGVvZiBhLApkPT09ImJvb2xlYW4ifHxkPT09Im51bWJlciJ8fGQ9PT0ic3RyaW5nIilJTShhKTtlbHNlIGlmKHR5cGVvZiBhPT09ImZ1bmN0aW9uIiliPV8uVUEsKGQ9Xy5WQSgpKSYmKGQuX2lzU2lnbmFsVGV4dE5vZGV8fGQuX2lzU2FmZU9yU2FuaXRpemVkSHRtbE5vZGUpfHxHZ2EoYixkLGEpLENNKCk7ZWxzZSBpZihhLnR5cGU9PT1IZ2EpXy5nTihhLnR5cGUoT2JqZWN0LmFzc2lnbih7fSxhLnByb3BzLHtjaGlsZHJlbjphLmNoaWxkcmVuWzBdfSkpKTtlbHNle2lmKHR5cGVvZiBhLnR5cGU9PT0ic3RyaW5nIil7YTp7YS5jZHx8RU0oYS50eXBlLGEucHJvcHMuaWRvbUtleSk7Yz1fLlVBO2ZvcihiIGluIGEucHJvcHMpaWYoYS5wcm9wc1tiXSE9PV8uS2JhKXtkPWEucHJvcHNbYl07bGV0IGU9Xy5hQjtlLnB1c2goYik7ZS5wdXNoKGQpfUZnYShfLkt1LmF0dHJpYnV0ZXMpO18uakMoYyxhLnByb3BzLCEwKTtpZigoYS5wcm9wcy5za2lwfHxhLnByb3BzLnNraXBjaGlsZHJlbikmJl8uVUEuaGFzQ2hpbGROb2RlcygpKV8uWUE9Cl8uVUEubGFzdENoaWxkO2Vsc2V7aWYoYS50eXBlPT09InN0eWxlIiYmXy5SQihhLmNoaWxkcmVuKT09PW51bGwpe18uWUE9Xy5VQS5sYXN0Q2hpbGQ7Yj12b2lkIDA7YnJlYWsgYX1fLmdOKGEuY2hpbGRyZW4pfV8uWEEoKTtfLllBPV8uVUE7Xy5VQT1fLlVBLnBhcmVudE5vZGU7YS5jZCYmKGEuY2Q9ITEpO18uQUIoYyxhLnByb3BzKTtiPWN9cmV0dXJuIGJ9aWYoYS50eXBlPT09Xy5JQilfLmdOKGEuY2hpbGRyZW4pO2Vsc2UgaWYoIU1nYShhKSl7Yj1hO3RyeXtOZ2EoYil9Y2F0Y2goZSl7Xy5LdS5oYW5kbGVFcnJvcj8uKC4uLl8uSkEoZSxiLnR5cGU/LlpjKSl9Yi5jZCYmKF8uWEEoKSxfLllBPV8uVUEsXy5VQT1fLlVBLnBhcmVudE5vZGUsYi5jZD0hMSl9fX07T2dhPWZ1bmN0aW9uKGEsYil7dmFyIGM7YS5wcm90b3R5cGU/Lm9jPT09dm9pZCAwP2M9bmV3IF8ubUMoYixhKTpjPW5ldyBhKGIpO2Muaj1hO2Mud289e25leHRTdGF0ZTpjLnN0YXRlLE14OiExfTtyZXR1cm4gY307Ck5nYT1mdW5jdGlvbihhKXt2YXIgYj1hLnR5cGUsYz1iLlpjO2lmKGI9PT1lTilhLnByb3BzLmNoaWxkcmVuPWEuY2hpbGRyZW4sYihhLnByb3BzKTtlbHNle2EuY2hpbGRyZW4ubGVuZ3RoPjAmJihhLnByb3BzLmNoaWxkcmVuPWEuY2hpbGRyZW4pO3ZhciBkOyhkPWEucHJvcHMpLmlkb21LZXl8fChkLmlkb21LZXk9Yik7dmFyIGU9ITE7aWYoYyl7dmFyIGY9RU0oYyxhLnByb3BzLmlkb21LZXkpO2EuY2Q9ITA7dmFyIGg9Zi5fX2luc3RhbmNlfWh8fChlPSEwLGg9T2dhKGIsYS5wcm9wcyksaC5wcm9wcz1udWxsLGYmJihmLl9faW5zdGFuY2U9aCxoLmVsPWYpKTsoe25leHRTdGF0ZTpjfT1oLndvPz97bmV4dFN0YXRlOmguc3RhdGUsTXg6ITF9KTtoLndvPXZvaWQgMDtiLmx3JiYoYz1iLmx3KGEucHJvcHMsYykpO3ZhciBrPWgucHJvcHMsbD1oLnN0YXRlO2gucHJvcHM9YS5wcm9wcztoLnN0YXRlPWM7Yz0oKT0+e3ZhciBtPWg7Xy5idy5TbyhtKTt2YXIgbj1tLm9jKG0ucHJvcHMpOwpuPyhtLnByb3BzLmlkb21LZXkmJihuLnByb3BzLmlkb21LZXk9bS5wcm9wcy5pZG9tS2V5KSxtPW4pOm09dm9pZCAwO2lmKG49bSluLmNkPWEuY2QsbT1fLmdOKG4pLGEuY2Q9bi5jZCxiLlpjfHwobT8oYi5aYz1tLnRhZ05hbWUudG9Mb3dlckNhc2UoKSxtLl9faW5zdGFuY2U9aCxoLmVsPW0pOmguWmY/Lmxlbmd0aCYmXy5LdS5oYW5kbGVFcnJvcj8uKC4uLl8uSkEoRXJyb3IoIkNkIikpKSk7ZT8oaC5KaSgpLF8uYncuSmkoaCkpOihoLktpKGssbCksXy5idy5LaShoLGssYS5wcm9wcykpO2guR2YoKTtfLmJ3LkdmKGgpfTsoZD1oLm8pP18uR0EoZCxjLGgucHJvcHMuZGVidWdJbnN0YW5jZSk6YygpfX07Ck1nYT1mdW5jdGlvbihhKXt2YXIgYj1hLnR5cGU7aWYoYi5wcm90b3R5cGU/Lm9jIT09dm9pZCAwfHxiPT09ZU58fGIuY29tcG9uZW50VHlwZT09PV8uS3YpcmV0dXJuITE7YS5wcm9wcy5jaGlsZHJlbj1hLmNoaWxkcmVuLmxlbmd0aD4xP2EuY2hpbGRyZW46YS5jaGlsZHJlblswXTt2YXIgYz1hLnByb3BzLmlkb21LZXk/P2EudHlwZTtpZihfLlZBKCkmJl8uVkEoKVtfLldCXT8ua2V5PT09Yyl7Yj1fLlZBKCk7Yz1iW18uV0JdO2lmKCFjKXRocm93IEVycm9yKCJDYmAiK2IudGFnTmFtZSk7Yy5xQj8uKGEucHJvcHMpO1BnYShjKTtyZXR1cm4hMH1pZihRZ2EuaGFzKGIubmFtZSkpdGhyb3cgRXJyb3IoIkJiYCIrYi5uYW1lKyJgIisoXy5NdT8ubmFtZT8/InVua25vd24iKSk7YS5wcm9wcy5qbj0hMDsoYj1fLkdBKGEudHlwZSwoKT0+Xy5nQyhhLnR5cGUsYS5wcm9wcyksYS5wcm9wcy5kZWJ1Z0luc3RhbmNlKSkmJlJnYShiKTtyZXR1cm4hMH07CmhOPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYj0wO2I8Xy5iQyhhKS5sZW5ndGg7YisrKUNNKCl9O1BnYT1mdW5jdGlvbihhKXt2YXIgYj1fLlZBKClbXy5XQl0/LnluO2lmKGIpaE4oYik7ZWxzZSBmb3IobGV0IGM9MDtjPGEuVXE7YysrKShiPV8uVkEoKVtfLldCXT8ueW4pP2hOKGIpOkNNKCl9O1JnYT1mdW5jdGlvbihhKXthPV8uR0IoYSk7YT1BcnJheS5pc0FycmF5KGEpP2E6W2FdO2ZvcihsZXQgYiBvZiBhKV8uVUEuaW5zZXJ0QmVmb3JlKGIsXy5WQSgpKSxDTSgpfTtpTj1mdW5jdGlvbihhLGIpe3JldHVybiBjPT57YSYmXy5kRShhKTtiJiZiKGMpfX07ak49ZnVuY3Rpb24oYSl7dmFyIGI9MjE7aWYoIWEpcmV0dXJuIGI7Yis9YS5oZWFkZXJUaXRsZT8yNzowO2IrPWEuaGVhZGVyVGl0bGUmJmEuaWg/NDowO3JldHVybiBiKz1hLmhlYWRlclRpdGxlJiZhLmhlYWRlclN1YnRpdGxlPzE2OjB9OwprTj1mdW5jdGlvbihhKXt2YXIgYj0wO2lmKCFhKXJldHVybiBiO2IrPWEuVWZ8fGEuVmY/NDg6MDtiKz1hLlBmfHxhLk1mPzMwOjA7cmV0dXJuIGIrPWEuVWZ8fGEuVmZ8fCFhLlBmJiYhYS5NZj8wOjEyfTsKU2dhPWZ1bmN0aW9uKGEse2tleTpiLHBheWxvYWQ6Y30pe2lmKGI9PT0iRHJhZyBTdGFydCIpcmV0dXJuey4uLmEsQ2M6ITEsVmU6Yy5jbGllbnRZfTtpZihiPT09IkRyYWcgTW92ZSIpe2I9TWF0aC5taW4oYy5UcCxjLmhxW2MuSGldKyhjLmZxPz9qTihjLmhlYWRlcikpLShjLk5wPz9rTihjLmZvb3RlcikpKTtsZXQgZD1NYXRoLm1heChjLm1wPy0xKihhLlZlLTI0KTowLGMuY2xpZW50WS1hLlZlKTtyZXR1cm57Li4uYSxPYjpkLEZjOk1hdGgubWluKGIsTWF0aC5tYXgoMCwoYS5QYz9iOmMucXApLWQpKX19cmV0dXJuIGI9PT0iU25hcCBUbyBGdWxsIFNjcmVlbiI/ey4uLmEsQ2M6ITEsT2I6MCxQYzohMCxGYzpjLm1heEhlaWdodH06Yj09PSJTbmFwIFRvIE5ldXRyYWwgUG9zaXRpb24iP3suLi5hLENjOiExLE9iOjAsUGM6ITEsRmM6Yy5tYXhIZWlnaHR9OmI9PT0iQ2xvc2UgU2hlZXQiP3suLi5hLENjOiEwLE9iOmMuY2xpZW50SGVpZ2h0LFBjOiExLEZjOmMubWF4SGVpZ2h0fTphfTsKVGdhPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLnRoLGM9YTtyZXR1cm57c3Vic2NyaWJlKGQpe2Iuc3Vic2NyaWJlKCJjaGFuZ2VkIixkKX0sZGlzcGF0Y2goZCxlKXtjPVNnYShjLHtrZXk6ZCxwYXlsb2FkOmV9KTtiLnB1Ymxpc2goImNoYW5nZWQiLGMpfX19O2xOPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57Yi5zdG9wUHJvcGFnYXRpb24oKTtyZXR1cm4gYT8uKGIpfX07VWdhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlIDA6cmV0dXJuInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0UHJpbWFyeUJ1dHRvbkRlZmF1bHQiO2Nhc2UgMTpyZXR1cm4ieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uVHJhaWxpbmdQYWlyIjtjYXNlIDI6cmV0dXJuInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0UHJpbWFyeUJ1dHRvblNwbGl0UGFpciI7Y2FzZSAzOnJldHVybiJ5dFNwZWNCb3R0b21TaGVldExheW91dFByaW1hcnlCdXR0b25QcmltYXJ5U3BsaXRQYWlyIn19O21OPWZ1bmN0aW9uKCl7Xy55KCkucmVzb2x2ZShfLmNMKS5KZSgpfTsKbk49ZnVuY3Rpb24oYSl7cmV0dXJue2hlYWRlclRpdGxlOmEuaGVhZGVyVGl0bGU/LigpLGhlYWRlclN1YnRpdGxlOmEuaGVhZGVyU3VidGl0bGU/LigpLFdmOmEuV2YsTmY6YS5OZixPZjphLk9mLFJlOmEuUmU/LigpLE1mOmEuTWY/LigpLFBmOmEuUGY/LigpLEhhOmEuSGE/LigpLHBmOmEucGY/LigpLEdrOmEuR2s/LigpLEdoOmEuR2gsZm9jdXNPbkNsb3NlOmEuZm9jdXNPbkNsb3NlPy4oKSxpc0Rpc2FibGVkOmEuaXNEaXNhYmxlZD8uKCksZGlzYWJsZWRDb21tYW5kOmEuZGlzYWJsZWRDb21tYW5kPy4oKSxVZTphLlVlLEdiOmEuR2IsU2U6YS5TZSxqaDphLmpoKCksWGk6YS5YaSgpLGhoOmEuaGgoKSxVZjphLlVmKCksVmY6YS5WZigpLGloOmEuaWgoKX19O3BOPWZ1bmN0aW9uKGEpe29OfHwob049Xy54TSgpKTtvTj8uc2V0KCJyZWNlbnQtY3VzdG9tLXNwZWVkIixTdHJpbmcoYSoxMDApKX07VmdhPWZ1bmN0aW9uKGEpe2E9YS50YXJnZXQudmFsdWVBc051bWJlcjtfLk1IKCk/LnNldFBsYXliYWNrUmF0ZShhKX07CldnYT1mdW5jdGlvbihhKXtwTihhLnRhcmdldC52YWx1ZUFzTnVtYmVyKX07WGdhPWZ1bmN0aW9uKGEpe18uTUgoKT8uc2V0UGxheWJhY2tSYXRlKGEpO3BOKGEpfTtxTj1mdW5jdGlvbihhKXtpZighYSlyZXR1cm57fTt2YXIgYj1hLmZvcmVncm91bmRUaXRsZUNvbG9yLGM9YS5iYWNrZ3JvdW5kQ29sb3I7YT1hLmJvcmRlckNvbG9yO3ZhciBkPSJ0ZXh0IjthP2Q9Im91dGxpbmUiOmMmJihkPSJmaWxsZWQiKTtyZXR1cm57dHlwZTpkLGN1c3RvbUNvbG9yczp7Y29sb3I6Yj9fLk5EKGIpOnZvaWQgMCxiYWNrZ3JvdW5kQ29sb3I6Yz9fLk5EKGMpOnZvaWQgMCxib3JkZXJDb2xvcjphP18uTkQoYSk6dm9pZCAwfX19OwphaGE9ZnVuY3Rpb24oe3JlbmRlcmVyOmEsSW06Yix3QTpjLFNjOmQsZHc6ZSxRZjpmLEJsOmgsaXNTdWJzY3JpYmU6az0hMSxDSjpsPSExLG9MOm09ITF9KXt2YXIgbj1ZZ2EoYSk7ayYmKG4uc3R5bGU9Im1vbm8iLG4udHlwZT0iZmlsbGVkIik7ZT0hYS5pY29ufHwhZSYmYS50ZXh0P2EuaWNvbj9hLmljb25Qb3NpdGlvbj09PSJCVVRUT05fSUNPTl9QT1NJVElPTl9UWVBFX1JJR0hUX09GX1RFWFQiPyJ0cmFpbGluZyI6ImxlYWRpbmciOnZvaWQgMDpmPyJpY29uLW9ubHkiOiJpY29uLW9ubHktNDAiO2U9PT0iaWNvbi1vbmx5LTQwIiYmKG4udHlwZT0idGV4dCIpO209ey4uLlpnYShhLG0pfTtsPSEhYS5pc1NlbGVjdGVkfHwhXy54KCJ3ZWJfcHJvcGFnYXRlX2lzX3ByZXNzZWRfa2lsbHN3aXRjaCIpJiYhIWw7Zj1hLmlzU2VsZWN0ZWQhPT12b2lkIDA7aD1oPT09dm9pZCAwP2EuaXNEaXNhYmxlZDpoO2s9YS50ZXh0P18uQUYoYS50ZXh0KTp2b2lkIDA7dmFyIHA9KHA9YS5hY2Nlc3NpYmlsaXR5RGF0YT8uYWNjZXNzaWJpbGl0eURhdGE/LmxhYmVsfHwKYS5hY2Nlc3NpYmlsaXR5Py5sYWJlbCk/cDpfLmFOKGEudGV4dCk7Yj0kZ2EoYSxiLGMpO2M9ck4oYSk7Yz8ubGVuZ3RoPyhjPV8uYkUoe2lubmVydHViZUNvbW1hbmQ6TE0oYykscWQ6ITB9KSxjPWM/LmhyZWY/Yzp2b2lkIDApOmM9dm9pZCAwO3JldHVybnsuLi5uLC4uLm0saWNvblBvc2l0aW9uOmUsLi4uZCxmb2N1c2VkOiExLHRvZ2dsZWQ6bCx0b2dnbGVhYmxlOmYsZGlzYWJsZWQ6aCxXYTprLGFjY2Vzc2liaWxpdHlMYWJlbDpwLG9uVGFwOmIsdWM6YywuLi5xTihhLmNvbG9yRGF0YT8uYmFzaWNDb2xvclBhbGV0dGVEYXRhKSxvbmVPZmZDdXN0b21UZXh0V3JhcDphLm9uZU9mZkN1c3RvbVRleHRXcmFwfX07JGdhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZD0+e3ZhciBlPXJOKGEpO2IoZSxkKTtpZighYylmb3IobGV0IGYgb2YgZSlfLmRLKGYpfX07CnJOPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO2EuY29tbWFuZCYmYi5wdXNoKGEuY29tbWFuZCk7YS5zZXJ2aWNlRW5kcG9pbnQmJmIucHVzaChhLnNlcnZpY2VFbmRwb2ludCk7YS5uYXZpZ2F0aW9uRW5kcG9pbnQmJmIucHVzaChhLm5hdmlnYXRpb25FbmRwb2ludCk7cmV0dXJuIGJ9O1pnYT1mdW5jdGlvbihhLGIpe2lmKGIpc3dpdGNoKGEuc2l6ZSl7Y2FzZSAiU0laRV9TTUFMTCI6cmV0dXJue3NpemU6IlMifTtjYXNlICJTSVpFX0xBUkdFIjpyZXR1cm57c2l6ZToiTCJ9O2Nhc2UgIlNJWkVfWExBUkdFIjpyZXR1cm57c2l6ZToiWEwifTtjYXNlICJTSVpFX1hTTUFMTCI6cmV0dXJue3NpemU6IlhTIn07ZGVmYXVsdDpyZXR1cm57c2l6ZToiTSJ9fXN3aXRjaChhLnN0eWxlKXtjYXNlICJTVFlMRV9DT01QQUNUX0dSQVkiOnJldHVybntzaXplOiJTIn07ZGVmYXVsdDpyZXR1cm57c2l6ZToiTSJ9fX07CllnYT1mdW5jdGlvbihhKXtzd2l0Y2goYS5zdHlsZSl7Y2FzZSAiU1RZTEVfVklTSUJMWV9ESVNBQkxFRCI6cmV0dXJue3N0eWxlOiJjYWxsLXRvLWFjdGlvbiIsdHlwZToidGV4dCIsc3RhdGU6ImRpc2FibGVkIn07Y2FzZSAiU1RZTEVfUFJJTUFSWSI6Y2FzZSAiU1RZTEVfUEFZTUVOVCI6Y2FzZSAiU1RZTEVfQ0FMTF9UT19BQ1RJT05fRklMTEVEIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9DQUxMX1RPX0FDVElPTl9UT05BTCI6cmV0dXJue3N0eWxlOiJjYWxsLXRvLWFjdGlvbiIsdHlwZToidG9uYWwiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9PVVRMSU5FIjpjYXNlICJTVFlMRV9TVUdHRVNUSVZFIjpjYXNlICJTVFlMRV9TVUdHRVNURURfQUNUSU9OIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJvdXRsaW5lIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfQkxVRV9URVhUIjpjYXNlICJTVFlMRV9BTEVSVF9JTkZPIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIiwKdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX09WRVJMQVkiOnJldHVybntzdHlsZToib3ZlcmxheSIsdHlwZToiZmlsbGVkIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfV0hJVEVfV0lUSF9CT1JERVIiOnJldHVybntzdHlsZToib3ZlcmxheSIsdHlwZToib3V0bGluZSIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0xJR0hUX1RFWFQiOnJldHVybntzdHlsZToib3ZlcmxheSIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX01PTk9fRklMTEVEX09WRVJMQVkiOnJldHVybntzdHlsZToib3ZlcmxheSIsdHlwZToiZmlsbGVkIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfTU9OT19UT05BTF9PVkVSTEFZIjpjYXNlICJTVFlMRV9EQVJLX09OX0JMQUNLIjpyZXR1cm57c3R5bGU6Im92ZXJsYXkiLHR5cGU6InRvbmFsIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfT1ZFUkxBWV9QUk9URUNURUQiOnJldHVybntzdHlsZToib3ZlcmxheS1kYXJrIiwKdHlwZToidG9uYWwiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9NT05PX0ZJTExFRCI6Y2FzZSAiU1RZTEVfREVTVFJVQ1RJVkUiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToiZmlsbGVkIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfREVGQVVMVCI6Y2FzZSAiU1RZTEVfQ09NUEFDVF9HUkFZIjpjYXNlICJTVFlMRV9NT05PX1RPTkFMIjpyZXR1cm57c3R5bGU6Im1vbm8iLHR5cGU6InRvbmFsIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfSU5BQ1RJVkVfT1VUTElORSI6Y2FzZSAiU1RZTEVfTU9OT19PVVRMSU5FIjpyZXR1cm57c3R5bGU6Im1vbm8iLHR5cGU6Im91dGxpbmUiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9CTFVFX1RFWFRfV0lUSF9JTlZFUlNFX1RIRU1FIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uLWludmVyc2UiLHR5cGU6InRleHQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9CUkFORF9HUkFESUVOVCI6cmV0dXJue3N0eWxlOiJicmFuZC1ncmFkaWVudCIsCnR5cGU6ImZpbGxlZCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0dFTkVSQVRJVkVfR1JBRElFTlQiOnJldHVybntzdHlsZToiZ2VuLWFpLWdyYWRpZW50Iix0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtkZWZhdWx0OnJldHVybntzdHlsZToibW9ubyIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSJ9fX07CmRoYT1mdW5jdGlvbih7cmVuZGVyZXI6YSxlbGVtZW50OmIsdG9nZ2xlZDpjLEltOmQsUnU6ZSxTYzpmLGR3OmgsUWY6ayxCbDpsLG5MOm0sYWI6bn0pe3ZhciBwPWJoYShhLGMpO2g9IWEuZGVmYXVsdEljb258fCFoJiZhLmRlZmF1bHRUZXh0P2EuZGVmYXVsdEljb24/ImxlYWRpbmciOnZvaWQgMDprPyJpY29uLW9ubHkiOiJpY29uLW9ubHktNDAiO2g9PT0iaWNvbi1vbmx5LTQwIiYmKHAudHlwZT0idGV4dCIpO2E6c3dpdGNoKGEuc3R5bGU/LnN0eWxlVHlwZSl7Y2FzZSAiU1RZTEVfQ09NUEFDVF9HUkFZIjprPXtzaXplOiJTIn07YnJlYWsgYTtkZWZhdWx0Oms9e3NpemU6Ik0ifX1rPXsuLi5rfTt2YXIgcj0ocj1jJiZhLnRvZ2dsZWRUZXh0fHxhLmRlZmF1bHRUZXh0KT9fLkFGKHIpOnZvaWQgMDttPyhtPV8uYU4oYyYmYS50b2dnbGVkVGV4dHx8YS5kZWZhdWx0VGV4dCkpJiZuJiYhaXNOYU4oTnVtYmVyKG4ubnVtYmVyVmFsdWUpKT8obi5YYj1tLGMmJihuLm51bWJlclZhbHVlKz0KMSkpOm49dm9pZCAwOm49dm9pZCAwO209KG09KGM/YS50b2dnbGVkQWNjZXNzaWJpbGl0eURhdGF8fGEudG9nZ2xlZFRleHQ/LmFjY2Vzc2liaWxpdHk6YS5hY2Nlc3NpYmlsaXR5RGF0YXx8YS5kZWZhdWx0VGV4dD8uYWNjZXNzaWJpbGl0eSk/LmFjY2Vzc2liaWxpdHlEYXRhPy5sYWJlbHx8YS5hY2Nlc3NpYmlsaXR5Py5sYWJlbCk/bTpfLmFOKGMmJmEudG9nZ2xlZFRleHR8fGEuZGVmYXVsdFRleHQpO2w9bD09PXZvaWQgMD9hLmlzRGlzYWJsZWQ6bDtiPWNoYShhLGMsZCxiLGUpO2Q9c04oYSxjKTtkPy5sZW5ndGg/KGQ9Xy5iRSh7aW5uZXJ0dWJlQ29tbWFuZDpMTShkKSxxZDohMH0pLGQ9ZD8uaHJlZj9kOnZvaWQgMCk6ZD12b2lkIDA7cmV0dXJuey4uLnAsLi4uayxpY29uUG9zaXRpb246aCwuLi5mLGZvY3VzZWQ6ITEsdG9nZ2xlZDohIWMsdG9nZ2xlYWJsZTohMCxXYTpyLGFiOm4sYWNjZXNzaWJpbGl0eUxhYmVsOm0sZGlzYWJsZWQ6bCxvblRhcDpiLHVjOmQsLi4ucU4oYS5jb2xvckRhdGE/LmJhc2ljQ29sb3JQYWxldHRlRGF0YSl9fTsKY2hhPWZ1bmN0aW9uKGEsYixjLGQsZT17fSl7cmV0dXJuIGY9Pnt2YXIgaD1hLmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZT9fLnV4KGEubG9nZ2luZ0RpcmVjdGl2ZXMuY2xpZW50VmVTcGVjLnVpVHlwZSk6dm9pZCAwO2UuY2xpY2tlZFZpc3VhbEVsZW1lbnR8fChlLmNsaWNrZWRWaXN1YWxFbGVtZW50PWgpO2g9c04oYSxiKTtjKGgsZik7Zm9yKGxldCBuIG9mIGgpe2g9bjt2YXIgaz1kLGw9ZixtPWU7bS5mb3JtP20uZm9ybS5ldmVudD1sOm0uZm9ybT17ZWxlbWVudDprLGV2ZW50Omx9O18uZEsoaCxtKX19fTsKc049ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtiPyhhLnRvZ2dsZWRDb21tYW5kJiZjLnB1c2goYS50b2dnbGVkQ29tbWFuZCksYS50b2dnbGVkU2VydmljZUVuZHBvaW50JiZjLnB1c2goYS50b2dnbGVkU2VydmljZUVuZHBvaW50KSk6KGEuZGVmYXVsdENvbW1hbmQmJmMucHVzaChhLmRlZmF1bHRDb21tYW5kKSxhLmRlZmF1bHRTZXJ2aWNlRW5kcG9pbnQmJmMucHVzaChhLmRlZmF1bHRTZXJ2aWNlRW5kcG9pbnQpLGEuZGVmYXVsdE5hdmlnYXRpb25FbmRwb2ludCYmYy5wdXNoKGEuZGVmYXVsdE5hdmlnYXRpb25FbmRwb2ludCkpO3JldHVybiBjfTsKYmhhPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS50b2dnbGVkU3R5bGV8fGEuc3R5bGU7c3dpdGNoKChiP2M6YS5zdHlsZSk/LnN0eWxlVHlwZSl7Y2FzZSAiU1RZTEVfVklTSUJMWV9ESVNBQkxFRCI6cmV0dXJue3N0eWxlOiJjYWxsLXRvLWFjdGlvbiIsdHlwZToidGV4dCIsc3RhdGU6ImRpc2FibGVkIn07Y2FzZSAiU1RZTEVfUFJJTUFSWSI6Y2FzZSAiU1RZTEVfUEFZTUVOVCI6cmV0dXJue3N0eWxlOiJjYWxsLXRvLWFjdGlvbiIsdHlwZToiZmlsbGVkIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfU1VHR0VTVElWRSI6cmV0dXJue3N0eWxlOiJjYWxsLXRvLWFjdGlvbiIsdHlwZToib3V0bGluZSIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0JMVUVfVEVYVCI6cmV0dXJue3N0eWxlOiJjYWxsLXRvLWFjdGlvbiIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0RFU1RSVUNUSVZFIjpjYXNlICJTVFlMRV9NT05PX0ZJTExFRCI6cmV0dXJue3N0eWxlOiJtb25vIiwKdHlwZToiZmlsbGVkIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfT1ZFUkxBWSI6cmV0dXJue3N0eWxlOiJvdmVybGF5Iix0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9MSUdIVF9URVhUIjpyZXR1cm57c3R5bGU6Im92ZXJsYXkiLHR5cGU6InRleHQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9NT05PX1RPTkFMX09WRVJMQVkiOnJldHVybntzdHlsZToib3ZlcmxheSIsdHlwZToidG9uYWwiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9ERUZBVUxUIjpjYXNlICJTVFlMRV9DT01QQUNUX0dSQVkiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToidG9uYWwiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9JTkFDVElWRV9PVVRMSU5FIjpyZXR1cm57c3R5bGU6Im1vbm8iLHR5cGU6Im91dGxpbmUiLHN0YXRlOiJhY3RpdmUifTtkZWZhdWx0OnJldHVybntzdHlsZToibW9ubyIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSJ9fX07Cl8udE49ZnVuY3Rpb24oYSl7cmV0dXJuIF8uSyhfLmdHLHtwYTooKT0+W2EuY29tcG9uZW50KCldfSxiPT5iPy4oKSl9O2ZoYT1mdW5jdGlvbihhLGIsYyl7aWYoYz09PW51bGx8fGM9PT12b2lkIDApcmV0dXJuIGM7dmFyIGQ9Xy5nQihhLnRhZ05hbWUudG9Mb3dlckNhc2UoKSxiLCgpPT57dGhyb3cgRXJyb3IoIm1jIik7fSk7aWYoZD09PW51bGwpcmV0dXJuIGM7ZD1laGFbZF07aWYoZC5oZT8uKGMpKXtpZihkLktkKXJldHVybiBkLktkKGMpO3Rocm93IEVycm9yKCJEZCIpO31yZXR1cm4gZC5wZD9kLnBkKGEudGFnTmFtZSxiLFN0cmluZyhjKSk6Y307Xy51Tj1mdW5jdGlvbihhKXtyZXR1cm4gYS5mb3JlZ3JvdW5kVGl0bGVDb2xvcj09PSJUSEVNRV9BVFRSSUJVVEVfVEVYVF9ESVNBQkxFRCJ8fGEuZm9yZWdyb3VuZEljb25Db2xvcj09PSJUSEVNRV9BVFRSSUJVVEVfSUNPTl9ESVNBQkxFRCJ9O3ZOPWZ1bmN0aW9uKGEpe2lmKGEmJl8uS00oYSkpcmV0dXJuIGF9OwpYPWZ1bmN0aW9uKGEsYil7KGI9Xy5hQShhLHt9LGIpKXx8Xy5XaShFcnJvcigiRWRgIithKSk7cmV0dXJuIGJ9O18ud049ZnVuY3Rpb24oYSl7cmV0dXJue3VybEVuZHBvaW50Ont1cmw6YX0sY29tbWFuZE1ldGFkYXRhOnt3ZWJDb21tYW5kTWV0YWRhdGE6e3VybDphfX19fTtfLnhOPWZ1bmN0aW9uKCl7cmV0dXJuIF8ub00oKS5nZXRTdGF0ZSgpLnRpPy5qan07Xy55Tj1mdW5jdGlvbihhKXtfLnkoKS5yZXNvbHZlKF8uY0wpLndnKHtRazphfSl9O18uek49ZnVuY3Rpb24oKXtfLnkoKS5yZXNvbHZlKF8uY0wpLkplKCl9O18uQk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1hPy5wYXJlbnRFbGVtZW50Py5jaGlsZHJlbjtpZihjKWZvcihsZXQgZD0wO2Q8Yy5sZW5ndGg7ZCsrKXtsZXQgZT1jW2RdO2NbZF0hPT1hJiYoYj9lLnNldEF0dHJpYnV0ZSgiaW5lcnQiLCJ0cnVlIik6ZS5yZW1vdmVBdHRyaWJ1dGUoImluZXJ0IiksQU4oZSxiKSl9fTsKQU49ZnVuY3Rpb24oYSxiKXtiPyhhLmhhc0F0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKSYmYS5zZXRBdHRyaWJ1dGUoImRhdGEtb2xkLWFyaWEtaGlkZGVuIixhLmdldEF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKSksYS5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwidHJ1ZSIpKTooYS5oYXNBdHRyaWJ1dGUoImRhdGEtb2xkLWFyaWEtaGlkZGVuIikmJihhLnNldEF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iLGEuZ2V0QXR0cmlidXRlKCJkYXRhLW9sZC1hcmlhLWhpZGRlbiIpKSxhLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1vbGQtYXJpYS1oaWRkZW4iKSksYS5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIikpfTtDTj1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcGxheWVyLWNvbnRhaW5lci1pZCIpO2ImJkFOKGIsYSl9OwpnaGE9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudDtyZXR1cm4oYT1hLnNjcm9sbGluZ0VsZW1lbnQ/YS5zY3JvbGxpbmdFbGVtZW50Ol8uY3J8fGEuY29tcGF0TW9kZSE9IkNTUzFDb21wYXQiP2EuYm9keXx8YS5kb2N1bWVudEVsZW1lbnQ6YS5kb2N1bWVudEVsZW1lbnQpJiZ0eXBlb2YgYS5zY3JvbGxUb3A9PT0ibnVtYmVyIj9hLnNjcm9sbFRvcDp0eXBlb2Ygd2luZG93LnBhZ2VZT2Zmc2V0PT09Im51bWJlciI/d2luZG93LnBhZ2VZT2Zmc2V0OjB9OwpfLkpOPWZ1bmN0aW9uKGEsYj1kb2N1bWVudC5hY3RpdmVFbGVtZW50LGM9ITEpe2EhPT1fLkROW18uRE4ubGVuZ3RoLTFdJiZfLkROLnB1c2goYSk7YiE9PWRvY3VtZW50LmJvZHk/RU4uc2V0KGEsYik6RU4uaGFzKGEpfHxFTi5zZXQoYSxudWxsKTtjP18uT0UoKCk9PntoaGEoYSxhLnF1ZXJ5U2VsZWN0b3IoImRpYWxvZyIpKX0pOl8uT0UoKCk9PnthPy5xdWVyeVNlbGVjdG9yKCJkaWFsb2ciKT8uZm9jdXMoKX0pO18uRE4ubGVuZ3RoPjF8fChGTj1naGEoKSxfLkJOKGEsITApLEdOJiZITiYmY2FuY2VsQW5pbWF0aW9uRnJhbWUoR04pLElOPXJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e18ueE4oKXx8KGRvY3VtZW50LmJvZHkuc2V0QXR0cmlidXRlKCJtb2RhbC1vcGVuLWJvZHkiLCIiKSxkb2N1bWVudC5ib2R5LnN0eWxlLnRvcD1gLSR7Rk59cHhgLHdpbmRvdy5zY3JvbGxUbygwLC1GTiksSU49bnVsbCl9KSl9OwppaGE9ZnVuY3Rpb24oYSl7cmV0dXJuIEFycmF5LmZyb20oYS5xdWVyeVNlbGVjdG9yQWxsKCdhLGlucHV0Om5vdChbZGlzYWJsZWRdKSxzZWxlY3Q6bm90KFtkaXNhYmxlZF0pLGJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6bm90KC5tb2RhbC1oaWRkZW4tYnV0dG9uKSxbdGFiaW5kZXg9IjAiXScpKS5maWx0ZXIoYj0+e2lmKGIudGV4dENvbnRlbnQpcmV0dXJuITA7aWYoYiBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpe2lmKCFiLmxhYmVscylyZXR1cm4hMTtmb3IobGV0IGMgb2YgYi5sYWJlbHMpaWYoYy50ZXh0Q29udGVudClyZXR1cm4hMH1yZXR1cm4hMX0pfTsKaGhhPWZ1bmN0aW9uKGEsYil7dmFyIGM9aWhhKGEpLGQ9Y1swXTtpZighZCYmYiliLmZvY3VzKCk7ZWxzZXt2YXIgZT1jW2MubGVuZ3RoLTFdO2lmKGQpe2QuZm9jdXMoKTtsZXQgZj1oPT57aC5rZXlDb2RlPT09MjcmJihhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLGYpLF8uS04oYSkpO2gua2V5Q29kZSE9PTM4JiZoLmtleUNvZGUhPT00MCYmaC5rZXlDb2RlIT09OXx8amhhKGQsZSl9O2EuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZil9fX07amhhPWZ1bmN0aW9uKGEsYil7aWYoIUxOKXtMTj0hMDt2YXIgYz1NTigpO2EucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYyxhKTtjLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLCgpPT57Yi5mb2N1cygpfSk7Yz1NTigpO2IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYyxiLm5leHRTaWJsaW5nKTtjLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLCgpPT57YS5mb2N1cygpfSl9fTsKTU49ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7YS5jbGFzc05hbWU9Im1vZGFsLWhpZGRlbi1idXR0b24iO2Euc2V0QXR0cmlidXRlKCJ0YWJpbmRleCIsIi0xIik7YS5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwidHJ1ZSIpO3JldHVybiBhfTsKXy5LTj1mdW5jdGlvbihhKXt2YXIgYj1FTi5nZXQoYSk7RU4uZGVsZXRlKGEpO2lmKGtoYSl7aWYoXy5CTihhLCExKSxfLldNKCkmJmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInl0bS1lbmdhZ2VtZW50LXBhbmVsIikmJkNOKCEwKSxfLnhiKF8uRE4sYSksXy5ETi5sZW5ndGghPT0wKXtiJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntfLmROKGIpfSk7cmV0dXJufX1lbHNle18ueGIoXy5ETixhKTtpZihfLkROLmxlbmd0aCE9PTApe2ImJnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e18uZE4oYil9KTtyZXR1cm59Xy5CTihhLCExKTtfLldNKCkmJmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInl0bS1lbmdhZ2VtZW50LXBhbmVsIikmJkNOKCEwKX1JTiYmSE4mJmNhbmNlbEFuaW1hdGlvbkZyYW1lKElOKTtHTj1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9Pntkb2N1bWVudC5ib2R5LnJlbW92ZUF0dHJpYnV0ZSgibW9kYWwtb3Blbi1ib2R5Iik7ZG9jdW1lbnQuYm9keS5zdHlsZS50b3A9CiIiO2ImJl8uZE4oYik7Xy5mcj9fLk9FKCgpPT57d2luZG93LnNjcm9sbFRvKDAsRk4pfSk6d2luZG93LnNjcm9sbFRvKDAsRk4pO0dOPW51bGx9KX07bGhhPWZ1bmN0aW9uKGEsYixjPV8uTk4pe2lmKGEpe3ZhciBkPV8ueSgpLnJlc29sdmUoXy5MeCk7ZD9fLkp4KGEse2RhdGE6YixvYnNlcnZlcjpkLE5iOmMsTmM6Xy5uRixlYjpfLm1GLGxheWVyOmEubGF5ZXJ9KTpfLklwKG5ldyBfLlhqKCJXYXJuaW5nOiBtb25pdG9yVmlzaWJpbGl0eSBjYWxsZWQgd2l0aCBudWxsIG9ic2VydmVyIixhLnRhZ05hbWUsYj8ubG9nZ2luZ0RpcmVjdGl2ZXMsYj8udHJhY2tpbmdQYXJhbXMpKX1lbHNlIF8uSXAobmV3IF8uWGooIldhcm5pbmc6IG1vbml0b3JWaXNpYmlsaXR5IGNhbGxlZCB3aXRoIG51bGwgZWxlbWVudCIsYj8ubG9nZ2luZ0RpcmVjdGl2ZXMsYj8udHJhY2tpbmdQYXJhbXMsYj8ucmVuZGVyZXJDb250ZXh0KSl9OwptaGE9ZnVuY3Rpb24oYSxiKXthJiZfLk9FKCgpPT57bGhhKGEsYixfLk5OKX0pfTtRTj1mdW5jdGlvbihhKXtyZXR1cm4gYT09PSJTSE9SVFNfTElLRSImJl8ueCgiZW5hYmxlX3Nob3J0c19oZWFydF9pY29uX2luX3Nob3J0c193YXRjaF9wYWdlIik/InNob3J0c190aHVtYnNfdXAiOl8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpJiZhJiZPTlthXT9PTlthXTphJiZQTlthXT9QTlthXTphfTtuaGE9ZnVuY3Rpb24oKXtpZihSTil7dmFyIGE9Xy55KCkucmVzb2x2ZShfLkluKFNOKSk7Uk49ITE7YT8udigpfX07b2hhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1iW2IubGVuZ3RoLTFdIT09IiQiO2M9ZmhhKGEsYixjKTtkP2FbYl09YzooZD1jPT1udWxsP251bGw6U3RyaW5nKGMpLF8uUUEoYSxiLnNsaWNlKDAsLTEpLGQpKX07ClROPWZ1bmN0aW9uKGEpe2lmKGEpe3ZhciBiPWEuY29tcG9uZW50O2ImJihiPy5ldmVudHM/LnB1Ymxpc2goIkRJU0NPTk5FQ1RFRCIpLGI/LmRLPy4oKSk7YS5MSD8uSGY/LigpO2ZvcihiPTA7YjxhLmNoaWxkTm9kZXMubGVuZ3RoO2IrKylUTihhLmNoaWxkTm9kZXNbYl0pfX07Xy5VTj1mdW5jdGlvbigpe3JldHVybiBfLkZKLnRoZW4oKCk9Pnt3aW5kb3cubG9jYXRpb24uaGFzaD09PSIjbWVudSImJihfLllNP18uJE0oIiIpOl8uWk0oKSk7cmV0dXJuIF8uRkp9KX07CnFoYT1mdW5jdGlvbihhKXt2YXIgYj17c3RhY2s6W10sZXJyb3I6dm9pZCAwLGhhc0Vycm9yOiExfTt0cnl7aWYoYS5pc0Rpc2FibGVkJiZhLmRpc2FibGVkQ29tbWFuZClfLkFKKGEuZGlzYWJsZWRDb21tYW5kLGEsITEpO2Vsc2V7Vk49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1lbnUiKTtWTnx8KFZOPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLFZOLmlkPSJtZW51Iixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKFZOKSk7d2luZG93LmxvY2F0aW9uLmhhc2ghPT0iI21lbnUiJiZfLiRNKCJtZW51Iik7Vk4uY2xhc3NOYW1lPWEuaXNGdWxsV2lkdGg/Im1lbnUtY29udGFpbmVyIG1lbnUtZnVsbC13aWR0aCI6Im1lbnUtY29udGFpbmVyIjthLmNsYXNzTmFtZSYmKFZOLmNsYXNzTmFtZSs9IiAiK2EuY2xhc3NOYW1lKTsic2Nyb2xsVG8iaW4gVk4mJlZOLnNjcm9sbFRvKDAsMCk7dmFyIGM9YS5GQXx8Xy5tRygpO18uVnooYixfLnZNKGEub3duZXImJiFhLm93bmVyLmlhPwphLm93bmVyOm51bGwpKTtfLngoIm13ZWJfYzNfbWVudV9zaWduYWxzX3JlbmRlciIpPyhwaGEoYSksV058fChXTj1fLnhGKFZOLCgpPT5fLksoXy5JQixudWxsLF8uSyhYTix7RGg6KCk9PllOKCl9LF8uSyhfLnROLHtjb21wb25lbnQ6KCk9Pnt2YXIgZD1ZTigpO2lmKGQpcmV0dXJuKCk9Pl8ucEcoY3x8e30sKCk9Pl8uSyhfLnROLHtjb21wb25lbnQ6KCk9PmQuY29udGVudH0pKX19KSksXy5LKF8uWk4se2xhYmVsOl8uJE4uQ0xPU0Usb25jbGljazpfLlVOfSkpLHtJazpfLlhDfSkpKTooXy5mTihWTixudWxsKSxfLmZOKFZOLF8uSyhfLklCLG51bGwsXy5LKFhOLHtEaDphfSxhLmNvbnRlbnQoKSksXy5LKF8uWk4se2xhYmVsOl8uJE4uQ0xPU0Usb25jbGljazpfLlVOfSkpKSk7YS5ybj09PXZvaWQgMCYmKGEucm49ITApO18uSk4oVk4sYS5mb2N1c09uQ2xvc2UsYS5ybil9fWNhdGNoKGQpe2IuZXJyb3I9ZCxiLmhhc0Vycm9yPSEwfWZpbmFsbHl7Xy5XeihiKX19OwphTz1mdW5jdGlvbigpe1ZOJiZ3aW5kb3cubG9jYXRpb24uaGFzaCE9PSIjbWVudSImJihfLktOKFZOKSxfLngoIm13ZWJfYzNfbWVudV9zaWduYWxzX3JlbmRlciIpPyhXTj8uKCksV049dm9pZCAwKTpUTihWTiksVk4uaXNDb25uZWN0ZWQmJmRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoVk4pLFZOPW51bGwpfTtyaGE9LyYvZztzaGE9LzwvZzt0aGE9Lz4vZzt1aGE9LyIvZzt2aGE9LycvZzt3aGE9L1x4MDAvZzt4aGE9L1tceDAwJjw+IiddLztfLndNPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1uZXcgXy56aChhKX1zZXQoYSxiLGMpe2M9YyE9PXZvaWQgMD9EYXRlLm5vdygpK2M6dm9pZCAwO3RoaXMuai5zZXQoYSxiLGMpfWdldChhKXtyZXR1cm4gdGhpcy5qLmdldChhKX1yZW1vdmUoYSl7dGhpcy5qLnJlbW92ZShhKX19O0VnYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaj1udWxsO3RoaXMubz1hO3RoaXMua2V5PWI7dGhpcy50ZXh0PXZvaWQgMH19O0ZNPVtdOwpITT0wO2JPPXsiKiI6e2FzeW5jOjEsZGlyOjAsbG9hZGluZzoyLHRhcmdldDozfX07eWhhPVt7YXV0bzohMCxsdHI6ITAscnRsOiEwfSx7YXN5bmM6ITB9LHtlYWdlcjohMCxsYXp5OiEwfSx7X3NlbGY6ITAsX2JsYW5rOiEwfV07T009bnVsbDtRTT17fTtJZ2E9IldFQl9QQUdFX1RZUEVfQUNDT1VOVFMgV0VCX1BBR0VfVFlQRV9XRUxDT01FIFdFQl9QQUdFX1RZUEVfQUNDT1VOVF9TRUxFQ1RPUiBXRUJfUEFHRV9UWVBFX1NJR05fSU5fSURFTlRJRklFUl9FTlRSWSBXRUJfUEFHRV9UWVBFX1NJR05fSU5fUEFTU1dPUkRfRU5UUlkgV0VCX1BBR0VfVFlQRV9TSUdOX0lOX0RFVklDRV9QUk9NUFRfQ0hBTExFTkdFIFdFQl9QQUdFX1RZUEVfUFJFTUlVTV9MSVRFX1VQU0VMTCBXRUJfUEFHRV9UWVBFX1VOS05PV04iLnNwbGl0KCIgIik7CkpnYT17RkV3aGF0X3RvX3dhdGNoOiJob21lIixGRWhhc2h0YWc6Imhhc2h0YWciLEZFdHJlbmRpbmc6InRyZW5kaW5nIixGRWhpc3Rvcnk6Imhpc3RvcnkiLFNQdW5saW1pdGVkOiJwcmVtaXVtIixGRW1lbWJlcnNoaXBzX2FuZF9wdXJjaGFzZXM6InBhaWRfbWVtYmVyc2hpcHMiLFNQcmVkZWVtX2NvZGU6InJlZGVlbSIsU1B2ZXJpZnlfbG9jYXRpb246ImxvY2F0ZSIsU1BtaW5vcl9tb21lbnQ6Im1pbm9yX21vbWVudCIsRkVtaW5pX2FwcF9jb250YWluZXI6Im1pbmlfYXBwIixGRW5ld3NfZGVzdGluYXRpb246Im5ld3MiLFNQb3Blbl9pbl9hcHA6Im9wZW5faW5fYXBwIixGRWV4cGxvcmU6ImV4cGxvcmUiLEZFc3Vic2NyaXB0aW9uczoic3Vic2NyaXB0aW9ucyIsRkVzZnZfYXVkaW9fcGl2b3Q6InNmdl9hdWRpb19waXZvdCIsRkVwbGF5bGlzdF9hZ2dyZWdhdGlvbjoicGxheWxpc3RfYWdncmVnYXRpb24ifTtfLllNPSExO3poYT17YUQ6InlvdXR1YmVfZmlsbCIsUkY6InlvdXR1YmVfb3V0bGluZSJ9OwpBaGE9e2pGOiJMSUtFIixFRjoiTk9USUZJQ0FUSU9OX0JFTEwifTtfLktCPV8ubEM7dmFyIFFnYT1uZXcgU2V0KFsiRm9yIiwiSWYiLCJNYXRjaCIsIldhdGNoIl0pLGNPPXtbXy5SQS5kZWZhdWx0XTooKT0+Xy56QixzdHlsZTooKT0+Xy56Qn07Zm9yKGxldCBhIGluIGNPKV8uS3UuYXR0cmlidXRlc1thXT1jT1thXShfLkt1LmF0dHJpYnV0ZXNbYV0pO18uQmhhPW5ldyBfLkkoInNpZ25JbkVuZHBvaW50Iik7Xy5kTz1uZXcgXy5JKCJsaWtlRW5kcG9pbnQiKTt2YXIgQ2hhPW5ldyBfLkkoImhvcml6b250YWxTbGlkZXJWaWV3TW9kZWwiKTt2YXIgRGhhPW5ldyBfLlZzKCJWSURFT19OT1RJQ0VTX1ZJRVdfTU9ERUxfVE9LRU4iKTt2YXIgRWhhPV8uTChhPT57ZnVuY3Rpb24gYihrKXt2YXIgbD1oKCktYS5zdGVwU2l6ZSgpO2QudmFsdWUudmFsdWVBc051bWJlcj1sO2QudmFsdWUuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0IikpO2QudmFsdWUuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImNoYW5nZSIpKTtrLnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGMoayl7dmFyIGw9aCgpK2Euc3RlcFNpemUoKTtkLnZhbHVlLnZhbHVlQXNOdW1iZXI9bDtkLnZhbHVlLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIpKTtkLnZhbHVlLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJjaGFuZ2UiKSk7ay5zdG9wUHJvcGFnYXRpb24oKX12YXIgZD1fLnVFKCJpbnB1dCIpLFtlLGZdPV8uQUMoKCk9PmEudmFsdWUoKT8/MCksaD1lO18ubkUoKCk9Pnt2YXIgaz1kLnZhbHVlO2sudmFsdWVBc051bWJlcj1oKCk7dmFyIGw9aCgpLG09YS5taW5WYWx1ZSgpLG49YS5SbCgpO2suc3R5bGUuc2V0UHJvcGVydHkoIi0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQiLApgJHsobC1tKS9uKjEwMH0lYCl9LCJqVDVDQ2YiKTtyZXR1cm4gXy5LKCJzbGlkZXItc2hhcGUiLHtjbGFzczpfLlAoInl0U2xpZGVyU2hhcGVIb3N0Iix7eXRTbGlkZXJTaGFwZVZlcnRpY2FsOigpPT5hLmlzVmVydGljYWwoKX0pfSxfLksoXy5PLHtBOmEuVWosdGhlbjooKT0+Xy5LKCJidXR0b24iLHtjbGFzczoieXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b24iLCJhcmlhLWxhYmVsIjphLmpsLGRpc2FibGVkOigpPT5oKCk9PT1hLm1pblZhbHVlKCksIm9uOmNsaWNrIjpifSxfLksoXy5VQyx7bW9kZWw6e2NpcmN1bGFyOiEwfX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9uSWNvbldyYXBwZXIifSxfLksoXy5NRCx7aWNvbjoiQkFSX0hPUklaT05UQUwiLGNsYXNzTmFtZToieXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b25JY29uIn0pKSl9KSxfLksoImlucHV0Iix7Y2xhc3M6KCk9PmEuaXNWZXJ0aWNhbCgpPyJ5dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXIiOgoieXRTbGlkZXJTaGFwZUhvc3RTbGlkZXIiLHR5cGU6InJhbmdlIixpZDoic2xpZGVyIixlbDpkLG1pbjphLm1pblZhbHVlLG1heDphLm1heFZhbHVlLCJhcmlhLWxhYmVsIjphLmFyaWFMYWJlbCwiYXJpYS12YWx1ZW1pbiI6YS5taW5WYWx1ZSwiYXJpYS12YWx1ZW1heCI6YS5tYXhWYWx1ZSwiYXJpYS12YWx1ZW5vdyI6aCwiYXJpYS12YWx1ZXRleHQiOigpPT5TdHJpbmcoaCgpKSx2YWx1ZTpoLHN0ZXA6YS5zdGVwU2l6ZSwib246aW5wdXQiOmZ1bmN0aW9uKGspe2EuUmM/LihrKTtmKE51bWJlcihkLnZhbHVlPy52YWx1ZT8/MCkpO2suc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjpjaGFuZ2UiOmZ1bmN0aW9uKGspe2Eub25DaGFuZ2U/LihrKTtrLnN0b3BQcm9wYWdhdGlvbigpfX0pLF8uSyhfLk8se0E6YS5Vaix0aGVuOigpPT5fLksoImJ1dHRvbiIse2NsYXNzOiJ5dFNsaWRlclNoYXBlSG9zdEluY3JlbWVudEJ1dHRvbiIsImFyaWEtbGFiZWwiOmEuUGwsZGlzYWJsZWQ6KCk9PmgoKT09PQphLm1heFZhbHVlKCksIm9uOmNsaWNrIjpjfSxfLksoXy5VQyx7bW9kZWw6e2NpcmN1bGFyOiEwfX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9uSWNvbldyYXBwZXIifSxfLksoXy5NRCx7aWNvbjoiQUREIixjbGFzc05hbWU6Inl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9uSWNvbiJ9KSkpfSkpfSwiT2EiKTt2YXIgRmhhPV8uTChhPT57dmFyIGI9KCk9Pnt2YXIgYztpZigoYz1hLmRhdGEoKSkmJmMubWF4VmFsdWUmJmMubWluVmFsdWUmJmMuc3RlcENvdW50KXt2YXIgZD1jLnZhbHVlRGVub21pbmF0b3I/PzEsZT0oYy5tYXhWYWx1ZS1jLm1pblZhbHVlKS9kO2M9e3ZhbHVlOihjLmluaXRpYWxWYWx1ZT8/Yy5taW5WYWx1ZSkvZCxhcmlhTGFiZWw6Xy5CKGMucmVuZGVyZXJDb250ZXh0LF8uWUMpPy5sYWJlbD8/IiIsbWluVmFsdWU6Yy5taW5WYWx1ZS9kLG1heFZhbHVlOmMubWF4VmFsdWUvZCxSbDplLHN0ZXBTaXplOmUvYy5zdGVwQ291bnQsb25DaGFuZ2U6aU4oYy5vblNsaWRlclZhbHVlU2V0Q29tbWFuZCxhLll5KSxSYzppTihjLm9uU2xpZGVyVG91Y2hDb21tYW5kLGEuZnopLFBsOl8uQihjLmluY3JlYXNlQnV0dG9uLF8uS0opPy5hY2Nlc3NpYmlsaXR5VGV4dD8/IiIsamw6Xy5CKGMuZGVjcmVhc2VCdXR0b24sXy5LSik/LmFjY2Vzc2liaWxpdHlUZXh0Pz8iIixpc1ZlcnRpY2FsOiExLApVajohIV8uQihjLmluY3JlYXNlQnV0dG9uLF8uS0opJiYhIV8uQihjLmRlY3JlYXNlQnV0dG9uLF8uS0opfX1lbHNlIGM9e307cmV0dXJuIGN9O3JldHVybiBfLksoImRpdiIse2NsYXNzOiJ5dEhvcml6b250YWxTbGlkZXJWaWV3TW9kZWxIb3N0In0sXy5LKEVoYSx7dmFsdWU6KCk9PmIoKS52YWx1ZSxhcmlhTGFiZWw6KCk9PmIoKS5hcmlhTGFiZWwsbWluVmFsdWU6KCk9PmIoKS5taW5WYWx1ZSxtYXhWYWx1ZTooKT0+YigpLm1heFZhbHVlLHN0ZXBTaXplOigpPT5iKCkuc3RlcFNpemUsUmw6KCk9PmIoKS5SbCxQbDooKT0+YigpLlBsLGpsOigpPT5iKCkuamwsaXNWZXJ0aWNhbDooKT0+YigpLmlzVmVydGljYWwsb25DaGFuZ2U6Yz0+e2IoKS5vbkNoYW5nZShjKX0sUmM6Yz0+e2IoKS5SYyhjKX0sVWo6KCk9PmIoKS5Van0pKX0sIlBhIik7dmFyIGVPPV8uTCgoe2RhdGE6YX0pPT5fLksoImRpdiIse2NsYXNzOiJ5dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGVXcmFwcGVyIn0sXy5LKF8uTyx7QTooKT0+YSgpLnRpdGxlLHRoZW46Yj0+Xy5LKCJoMiIse2NsYXNzOl8uUCgieXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxlSGVhZGVyIix7eXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxlSGVhZGVyTm9uSW50ZXJhY3RpdmU6IV8ueCgid2ViX3BhbmVsX2hlYWRlcl90aXRsZV9ub25faW50ZXJhY3RpdmVfa2lsbHN3aXRjaCIpfSl9LF8uSyhfLlYse3RleHQ6YixjbGFzc05hbWU6Inl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUaXRsZSJ9KSl9KSxfLksoXy5PLHtBOigpPT5hKCkuc3VidGl0bGUsdGhlbjpiPT5fLksoXy5WLHt0ZXh0OmIsY2xhc3NOYW1lOiJ5dFBhbmVsSGVhZGVyVmlld01vZGVsU3VidGl0bGUifSl9KSksIlFhIiksZk89Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgYj1fLlRIKCgpPT5hKCkucmVuZGVyZXJDb250ZXh0KTtyZXR1cm4gXy5LKCJ5dC1wYW5lbC1oZWFkZXItdmlldy1tb2RlbCIsCntjbGFzczpfLlAoInl0UGFuZWxIZWFkZXJWaWV3TW9kZWxIb3N0Iix7eXRQYW5lbEhlYWRlclZpZXdNb2RlbEhvc3RIaWRlRGl2aWRlcjooKT0+ISFhKCkuc2hvdWxkSGlkZURpdmlkZXIseXRQYW5lbEhlYWRlclZpZXdNb2RlbEhvc3RDb21wYWN0OigpPT4hIWEoKS5zdWJ0aXRsZX0pLCJhcmlhLWxhYmVsIjooKT0+YigpPy5sYWJlbH0sXy5LKF8uTyx7QTooKT0+Xy50SChhKCkucmVuZGVyZXJDb250ZXh0KSx0aGVuOigpPT5fLksoXy5NSix7Y2xhc3NOYW1lOiJ5dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uT3JBbmNob3IiLGNvbW1hbmQ6KCk9Pl8uc0goYSgpLnJlbmRlcmVyQ29udGV4dCksWnY6Inl0UGFuZWxIZWFkZXJWaWV3TW9kZWxCdXR0b25PckFuY2hvckZvY3VzZWQifSxfLksoZU8se2RhdGE6YX0pKSxXOigpPT5fLksoZU8se2RhdGE6YX0pfSksXy5LKCJkaXYiLHtjbGFzczoieXRQYW5lbEhlYWRlclZpZXdNb2RlbFRyYWlsaW5nQnV0dG9ucyJ9LF8uSyhfLlcse2RhdGE6KCk9PgphKCkudHJhaWxpbmdCdXR0b25zfSx7YnV0dG9uVmlld01vZGVsOih7ZGF0YTpjfSk9Pl8uSyhfLkhELHtkYXRhOmMsY2xhc3NOYW1lOiJ5dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uIn0pfSkpKX0sIlJhIik7Zk8uaWRvbUNvbXBhdD0hMDt2YXIgZ089Xy5MKGE9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFNwZWNCb3R0b21TaGVldExheW91dEhvc3QiLCJ5dFNwZWNCb3R0b21TaGVldExheW91dENvbnRhaW5lciIsInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIiksc3R5bGU6KCk9PmEuQ2MoKT9gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR7YS5PYigpfXB4KTt0cmFuc2l0aW9uOiAwLjJzYDoiIn0sYS5oZWFkZXI/LigpLF8uSygiZGl2Iix7aWQ6YS5IaSxjbGFzczoieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRDb250ZW50V3JhcHBlciIsc3R5bGU6Xy5JRSh7Im1heC1oZWlnaHQiOigwLF8uWkspKGEuRmMpfSksIm9uOnNjcm9sbCI6bE4oYS5qciksIm9uOnRvdWNobW92ZSI6bE4oKX0sXy5LKCJkaXYiLHtlbDpfLnJGKGEubnApLGNsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dEJvdHRvbVNoZWV0Q29udGVudCIsIm9uOmNsaWNrIjpmdW5jdGlvbihiKXthLnBmPy4oKT9iLnN0b3BQcm9wYWdhdGlvbigpOmEuWXEoYil9fSwKYS5ib2R5Py4oKSkpLGEuZm9vdGVyPy4oKSksIlNhIik7Z08uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntqcjohMCxucDohMCxZcTohMH19O3ZhciBoTz1fLkwoYT0+e3ZhciB7bGVhZGluZ0xhYmVsOmIsdHJhaWxpbmdMYWJlbDpjLFJlOmQscHJpbWFyeUJ1dHRvbjplLEl3OmYsc2Vjb25kYXJ5QnV0dG9uOmgsS3c6ayxPcDpsLEN3Om19PV8uREMoYSx7bGVhZGluZ0xhYmVsOnZvaWQgMCx0cmFpbGluZ0xhYmVsOnZvaWQgMCxSZTp2b2lkIDB9KSxuPSgpPT5iKCl8fGMoKXx8ZigpfHxrKCk7cmV0dXJuIF8uSyhfLk8se0E6bSx0aGVuOigpPT5fLksoXy5JQixudWxsLGw/LigpKSxXOigpPT5fLksoXy5PLHtBOm4sdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJXcmFwcGVyIn0sXy5LKF8uTyx7QTooKT0+YigpfHxjKCksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Rm9vdGVyTGFiZWxXcmFwcGVyIix7eXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJMYWJlbFdyYXBwZXJXaXRob3V0QnV0dG9uczooKT0+IWYoKX0pfSxfLksoXy5PLAp7QTpiLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TGVhZGluZ0xhYmVsIn0sYil9KSxfLksoXy5PLHtBOmMsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUcmFpbGluZ0xhYmVsIn0sYyl9KSl9KSxfLksoXy5PLHtBOigpPT5mKCl8fGsoKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJCdXR0b25XcmFwcGVyIix7eXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJCdXR0b25XcmFwcGVyTGFuZHNjYXBlQnV0dG9uV3JhcHBlcjpfLkJjYX0pfSxfLksoXy5PLHtBOigpPT5rKCkmJmQoKSE9PTAsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U2Vjb25kYXJ5QnV0dG9uIix7eXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b25UcmFpbGluZ1BhaXI6KCk9PmQoKT09PTEmJmsoKSwKeXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b25TcGxpdFBhaXI6KCk9PmQoKT09PTImJmsoKSx5dFNwZWNCb3R0b21TaGVldExheW91dFNlY29uZGFyeUJ1dHRvblByaW1hcnlTcGxpdFBhaXI6KCk9PmQoKT09PTMmJmYoKX0pfSxoPy4oKSl9KSxfLksoXy5PLHtBOmYsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0UHJpbWFyeUJ1dHRvbiIsKCk9PlVnYShkKCkpKX0sZT8uKCkpfSkpfSkpfSl9KX0sIlRhIik7aE8uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntwcmltYXJ5QnV0dG9uOiEwLHNlY29uZGFyeUJ1dHRvbjohMCxPcDohMH19O3ZhciBpTz1fLkwoYT0+e3ZhciB7dGl0bGU6YixzdWJ0aXRsZTpjLGdxOmQsRHc6ZSx4bzpmLHh3Omgsd3M6ayx2czpsLHVzOm0sUXE6bixPdzpwLGlzRHJhZ2dpbmc6cn09Xy5EQyhhLHt0aXRsZTp2b2lkIDAsc3VidGl0bGU6dm9pZCAwfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldyYXBwZXIiLHt5dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldyYXBwZXJJc0RyYWdnaW5nOnJ9KSxpZDpwLCJvbjp0b3VjaHN0YXJ0IjpsTihrKSwib246dG91Y2htb3ZlIjpsTihsKSwib246dG91Y2hlbmQiOmxOKG0pLCJvbjptb3VzZWRvd24iOmxOKG4pfSxfLksoImRpdiIse2NsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dERyYWdMaW5lIn0pLF8uSyhfLk8se0E6ZSx0aGVuOigpPT5fLksoXy5JQixudWxsLGQ/LigpKSxXOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCh7eXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXI6ITAsCnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV2l0aFRpdGxlOmJ9KX0sXy5LKCJkaXYiLHtjbGFzczoieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZVdyYXBwZXIifSxfLksoXy5PLHtBOmIsdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoImgyIix7Y2xhc3M6Inl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGUifSxiKSxfLksoXy5PLHtBOmMsdGhlbjooKT0+Xy5LKCJoMyIse2NsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxlIn0sYyl9KSl9KSksXy5LKF8uTyx7QTooKT0+YigpJiZoKCksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRBY3Rpb25IZWFkZXIifSxmPy4oKSl9KSl9KSl9LCJVYSIpO2lPLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7d3M6ITAsdnM6ITAsdXM6ITAsUXE6ITAseG86ITAsZ3E6ITAsaXNEcmFnZ2luZzohMH19O3ZhciBqTz1fLkwoYT0+e2Z1bmN0aW9uIGIoYWEpe2lmKCFZJiZ0eXBlb2YgTXV0YXRpb25PYnNlcnZlciE9PSJ1bmRlZmluZWQiKXt2YXIgT2E9e2NoaWxkTGlzdDohMH07Ik11dGF0aW9uT2JzZXJ2ZXIiaW4gd2luZG93JiYoWT1uZXcgTXV0YXRpb25PYnNlcnZlcihjLmJpbmQodm9pZCAwLGFhKSksWS5vYnNlcnZlKGFhLE9hKSl9fWZ1bmN0aW9uIGMoYWEpe3R5cGVvZiBZIT09InVuZGVmaW5lZCImJihwYVsiY29udGVudC13cmFwcGVyIl09PT12b2lkIDAmJihwYVsiY29udGVudC13cmFwcGVyIl09YWEuY2hpbGRyZW5bMF0uY2xpZW50SGVpZ2h0KSxHKHBhWyJjb250ZW50LXdyYXBwZXIiXSksIShDKCk+UigpKSYmQygpPjAmJk0oQygpKSl9ZnVuY3Rpb24gZCgpe0Uod2luZG93LmlubmVySGVpZ2h0KTshKEMoKT5SKCkpJiZDKCk+MCYmTShDKCkpO29hLlBjWzBdKCkmJkMoKT5SKCk/VSgpLmRpc3BhdGNoKCJTbmFwIFRvIEZ1bGwgU2NyZWVuIix7bWF4SGVpZ2h0OlMoKX0pOlUoKS5kaXNwYXRjaCgiU25hcCBUbyBOZXV0cmFsIFBvc2l0aW9uIiwKe21heEhlaWdodDpSKCl9KX1mdW5jdGlvbiBlKGFhKXtkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJzY3JvbGxCZWhhdmlvcj0ibm9uZSI7YWEucHJldmVudERlZmF1bHQoKTtVKCkuZGlzcGF0Y2goIkRyYWcgU3RhcnQiLHtjbGllbnRZOmFhLnRvdWNoZXNbMF0uY2xpZW50WX0pfWZ1bmN0aW9uIGYoYWEpe2FhLnByZXZlbnREZWZhdWx0KCk7VSgpLmRpc3BhdGNoKCJEcmFnIE1vdmUiLHtjbGllbnRZOmFhLnRvdWNoZXNbMF0uY2xpZW50WSxtcDpDKCk+UigpLFRwOlMoKSxxcDpSKCksaHE6cGEsSGk6ImNvbnRlbnQtd3JhcHBlciIsaGVhZGVyOm5OKGEpLGZvb3RlcjpuTihhKSxmcTpwYVsiYm90dG9tLXNoZWV0LWhlYWRlciJdLE5wOnBhWyJib3R0b20tc2hlZXQtZm9vdGVyIl19KX1mdW5jdGlvbiBoKGFhKXthYS5idXR0b249PT0wJiYoYWEucHJldmVudERlZmF1bHQoKSx0YSghMCksVSgpLmRpc3BhdGNoKCJEcmFnIFN0YXJ0Iix7Y2xpZW50WTphYS5jbGllbnRZfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsClQpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIixrKSl9ZnVuY3Rpb24gaygpe3RhKCExKTt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixUKTt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsayk7bSgpfWZ1bmN0aW9uIGwoKXtkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJzY3JvbGxCZWhhdmlvcj0iIjttKCl9ZnVuY3Rpb24gbSgpe29hLlBjWzBdKCk/b2EuT2JbMF0oKT49NjA/VSgpLmRpc3BhdGNoKCJTbmFwIFRvIE5ldXRyYWwgUG9zaXRpb24iLHttYXhIZWlnaHQ6UigpfSk6VSgpLmRpc3BhdGNoKCJTbmFwIFRvIEZ1bGwgU2NyZWVuIix7bWF4SGVpZ2h0OlMoKX0pOm9hLk9iWzBdKCk+PTYwP24oKTpvYS5PYlswXSgpPD0tNjAmJkMoKT5SKCk/VSgpLmRpc3BhdGNoKCJTbmFwIFRvIEZ1bGwgU2NyZWVuIix7bWF4SGVpZ2h0OlMoKX0pOlUoKS5kaXNwYXRjaCgiU25hcCBUbyBOZXV0cmFsIFBvc2l0aW9uIix7bWF4SGVpZ2h0OlIoKX0pfQpmdW5jdGlvbiBuKCl7VSgpLmRpc3BhdGNoKCJDbG9zZSBTaGVldCIse2NsaWVudEhlaWdodDp6KCksbWF4SGVpZ2h0OjB9KTtzZXRUaW1lb3V0KCgpPT57bU4oKX0sMjUwKX12YXIgcD1fLnVFKCJkaXYiKSxyPV8udUUoImRpdiIpLFt0LHZdPV8uSih3aW5kb3cuaW5uZXJIZWlnaHQsdm9pZCAwLCJDbU9zVSIpLHo9dCxFPXYsW0EsRl09Xy5KKDAsdm9pZCAwLCJwMEZsaGIiKSxDPUEsRz1GLFtELEhdPV8uQUMoKCk9Pnt2YXIgYWE9bk4oYSk7cmV0dXJuLjYqeigpLWpOKGFhKS1rTihhYSl9KSxSPUQsTT1ILFM9KCk9Pnt2YXIgYWE9bk4oYSksT2E9eigpLEpiPXBhWyJib3R0b20tc2hlZXQtaGVhZGVyIl0semE9cGFbImJvdHRvbS1zaGVldC1mb290ZXIiXTtyZXR1cm4gT2EtKGFhLmpoJiZKYiE9PXZvaWQgMD9KYjpqTihhYSkpLShhYS5oaCYmemEhPT12b2lkIDA/emE6a04oYWEpKS0yNC0yNH0sWT1udWxsLHBhPXt9LG9hPXtWZTpfLkooMCx2b2lkIDAsInN4ZEVTZCIpLE9iOl8uSigwLAp2b2lkIDAsIkdaenFlYiIpLENjOl8uSighMSx2b2lkIDAsInZKQnVwYyIpLFBjOl8uSighMSx2b2lkIDAsIlh5UkRwIiksRmM6Xy5BQyhSKX0sVT0oKCk9Pnt2YXIgYWE9bnVsbDtyZXR1cm4oKT0+e2lmKCFhYSl7bGV0IE9hPXtWZTpvYS5WZVswXSgpLE9iOm9hLk9iWzBdKCksQ2M6b2EuQ2NbMF0oKSxQYzpvYS5QY1swXSgpLEZjOm9hLkZjWzBdKCl9O2FhPVRnYShPYSl9cmV0dXJuIGFhfX0pKCk7Xy5VSigoKT0+e3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGQpO1UoKS5zdWJzY3JpYmUoYWE9PntvYS5WZVsxXShhYS5WZSk7b2EuT2JbMV0oYWEuT2IpO29hLkNjWzFdKGFhLkNjKTtvYS5QY1sxXShhYS5QYyk7b2EuRmNbMV0oYWEuRmMpfSk7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57cC52YWx1ZSYmKHBhWyJib3R0b20tc2hlZXQtaGVhZGVyIl09cC52YWx1ZS5jbGllbnRIZWlnaHQpO3IudmFsdWUmJihwYVsiYm90dG9tLXNoZWV0LWZvb3RlciJdPXIudmFsdWUuY2xpZW50SGVpZ2h0KX0pfSk7Cl8uWXUoKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixkKTt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixUKTt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsayk7WSYmKFkuZGlzY29ubmVjdCgpLFk9bnVsbCl9KTt2YXIgW2hhLG1hXT1fLkooITEsdm9pZCAwLCJLc2lUWWUiKSx0YT1tYSxUPWFhPT57VSgpLmRpc3BhdGNoKCJEcmFnIE1vdmUiLHtjbGllbnRZOmFhLmNsaWVudFksbXA6QygpPlIoKSxUcDpTKCkscXA6UigpLGhxOnBhLEhpOiJjb250ZW50LXdyYXBwZXIiLGhlYWRlcjpuTihhKSxmb290ZXI6bk4oYSksZnE6cGFbImJvdHRvbS1zaGVldC1oZWFkZXIiXSxOcDpwYVsiYm90dG9tLXNoZWV0LWZvb3RlciJdfSl9LGJhPV8uUCh7ImJvdHRvbS1zaGVldC1jb250ZW50LXdpdGhvdXQtaWNvbiI6KCk9PiFhLkhhPy4oKX0pO3JldHVybiBfLksoImJvdHRvbS1zaGVldC1sYXlvdXQiLG51bGwsXy5LKGdPLHtIaToiY29udGVudC13cmFwcGVyIiwKQ2M6KCk9Pm9hLkNjWzBdKCksT2I6KCk9Pm9hLk9iWzBdKCksRmM6KCk9Pm9hLkZjWzBdKCksSGE6YS5IYSxwZjphLnBmLGpyOigpPT57dmFyIGFhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJib3R0b20tc2hlZXQtaGVhZGVyIiksT2E9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRlbnQtd3JhcHBlciIpO2lmKGFhJiZPYSl7dmFyIEpiPXt5dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldyYXBwZXI6ITAseXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXJXcmFwcGVyQm90dG9tQm9yZGVyOiEwfTthYS5jbGFzc05hbWU9T2Euc2Nyb2xsVG9wPjE/Xy5hTChKYik6Inl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlciJ9fSxZcTptTixucDphYT0+e2IoYWEpO3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2MoYWEpfSl9LGhlYWRlcjooKT0+Xy5LKCJkaXYiLHtlbDpwfSxfLksoaU8se2lzRHJhZ2dpbmc6aGEsd3M6ZSx2czpmLHVzOmwsUXE6aCx0aXRsZTphLmhlYWRlclRpdGxlLApzdWJ0aXRsZTphLmhlYWRlclN1YnRpdGxlLE93OiJib3R0b20tc2hlZXQtaGVhZGVyIixncTphLlVlLER3OmEuamgseG86YS5XZix4dzphLmlofSkpLGZvb3RlcjooKT0+Xy5LKCJkaXYiLHtlbDpyfSxfLksoaE8se1JlOmEuUmUsbGVhZGluZ0xhYmVsOmEuTWYsdHJhaWxpbmdMYWJlbDphLlBmLHByaW1hcnlCdXR0b246YS5OZixJdzphLlVmLHNlY29uZGFyeUJ1dHRvbjphLk9mLEt3OmEuVmYsT3A6YS5TZSxDdzphLmhofSkpLGJvZHk6KCk9Pl8uSyhfLk8se0E6YS5YaSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOmJhfSxhLkdiPy4oKSl9KX0pKX0sIlZhIik7ak8uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntXZjohMCxVZTohMCxHYjohMCxTZTohMCxOZjohMCxPZjohMH19O18uTChhPT57dmFyIGI9Xy55KCkucmVzb2x2ZShfLmNMKTtyZXR1cm4gXy5LKCJ5dC1jb250ZXh0dWFsLXNoZWV0LWxheW91dCIse2NsYXNzOl8uUCgieXRDb250ZXh0dWFsU2hlZXRMYXlvdXRIb3N0Iix7eXRDb250ZXh0dWFsU2hlZXRMYXlvdXRBZGRQYWRkaW5nOmEucnUseXRDb250ZXh0dWFsU2hlZXRMYXlvdXRIb3N0T2xkTWluV2lkdGg6KCk9PiEhYS5oYXNIZWFkZXI/LigpfHwhIWEuQnc/LigpfHxfLngoImVuYWJsZV9jb250ZXh0dWFsX3NoZWV0X29sZF9taW5fd2lkdGhfa2lsbHN3aXRjaCIpfSksZWw6Xy5yRihfLmRMKSwib246Y2xpY2siOigpPT57YT8udks/LigpfHxiLkplKCl9fSxfLksoXy5PLHtBOigpPT4hIWEuaGVhZGVyLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q29udGV4dHVhbFNoZWV0TGF5b3V0SGVhZGVyQ29udGFpbmVyIn0sYS5oZWFkZXIoKSl9KSxfLksoXy5PLHtBOigpPT4hIWEuY29udGVudCx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dENvbnRleHR1YWxTaGVldExheW91dENvbnRlbnRDb250YWluZXIifSwKYS5jb250ZW50KCkpfSksXy5LKF8uTyx7QTooKT0+ISFhLmZvb3Rlcix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dENvbnRleHR1YWxTaGVldExheW91dEZvb3RlckNvbnRhaW5lciJ9LGEuZm9vdGVyKCkpfSkpfSwiV2EiKS5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e2hlYWRlcjohMCxjb250ZW50OiEwLGZvb3RlcjohMCxoYXNIZWFkZXI6ITAsZ0o6ITAsQnc6ITAscnU6ITB9fTt2YXIgR2hhPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6YixvbkNsaWNrOmN9KT0+Xy5LKCJ5dHctdmFyaWFibGUtc3BlZWQtY29udHJvbGxlci1zcGVlZC1idXR0b24tdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJTcGVlZEJ1dHRvblZpZXdNb2RlbEhvc3QiLGIpfSxfLksoXy5XLHtkYXRhOigpPT5hKCkucGxheWJhY2tTcGVlZEJ1dHRvbn0se2J1dHRvblZpZXdNb2RlbDooe2RhdGE6ZH0pPT5fLksoXy5IRCx7ZGF0YTpkLG9uQ2xpY2s6Y30pfSksXy5LKF8uVix7Y2xhc3NOYW1lOiJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclNwZWVkQnV0dG9uVmlld01vZGVsU3BlZWRMYWJlbCIsdGV4dDooKT0+YSgpLmJ1dHRvbkxhYmVsfSkpLCJYYSIpO3ZhciBvTjsKXy5rTz1fLkwoKHtkYXRhOmEscHo6Yj1WZ2Esb3o6Yz1XZ2EscXo6ZD1YZ2F9KT0+e3ZhciBbZSxmXT1fLkooMTAwLHZvaWQgMCwiZDBOS3liIiksW2gsa109Xy5KKCExLHZvaWQgMCwiWFh2Z2tiIiksbD1tPT57ZihtLnRhcmdldC52YWx1ZUFzTnVtYmVyKTtiPy4obSl9O18ubkUoKCk9PntpZihhKCkuc2xpZGVyKXt2YXIgbT1fLkIoYSgpLnNsaWRlcixDaGEpO20mJihtLmluaXRpYWxWYWx1ZSYmbS52YWx1ZURlbm9taW5hdG9yP2YobS5pbml0aWFsVmFsdWUvbS52YWx1ZURlbm9taW5hdG9yKTpmKDApKX19LCJSdkhEcmYiKTtyZXR1cm4gXy5LKCJ2YXJpYWJsZS1zcGVlZC1jb250cm9sbGVyLXZpZXctbW9kZWwiLHtjbGFzczoieXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxIb3N0In0sXy5LKCJkaXYiLHtjbGFzczoieXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxTcGVlZEluZGljYXRvckNvbnRhaW5lciJ9LF8uSyhfLk8se0E6KCk9PmUoKT4yLHRoZW46KCk9PgpfLksoImRpdiIse2NsYXNzOiJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFByZW1pdW1CYWRnZSJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5iYWRnZX0se2JhZGdlVmlld01vZGVsOih7ZGF0YTptfSk9Pl8uSyhfLkVELHtkYXRhOm19KX0pKX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsUGxheWJhY2tTcGVlZERpc3BsYXkiLCJhcmlhLWxpdmUiOiJwb2xpdGUiLCJhcmlhLWF0b21pYyI6InRydWUiLCJhcmlhLWJ1c3kiOmh9LCgpPT5fLmFBKCJQTEFZQkFDS19TUEVFRF9YIix7c3BlZWRfcmF0ZV9wbGFjZWhvbGRlcjpgJHtlKCkudG9GaXhlZCgyKX1gfSkpKSxfLksoImRpdiIse2NsYXNzOiJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFNsaWRlckNvbnRhaW5lciIsIm9uOmZvY3VzaW4iOmZ1bmN0aW9uKG0pe20udGFyZ2V0LnRhZ05hbWU9PT0iSU5QVVQiJiZrKCEwKX0sIm9uOmZvY3Vzb3V0IjpmdW5jdGlvbihtKXttLnRhcmdldC50YWdOYW1lPT09CiJJTlBVVCImJmsoITEpfX0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLnNsaWRlcn0se2hvcml6b250YWxTbGlkZXJWaWV3TW9kZWw6KHtkYXRhOm19KT0+Xy5LKEZoYSx7ZGF0YTooKT0+KHsuLi5tKCksaW5pdGlhbFZhbHVlOmUoKSoxMDB9KSxmejpsLFl5OmN9KX0pKSxfLksoImRpdiIse2NsYXNzOiJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lciJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5wbGF5YmFja1NwZWVkQnV0dG9uc30se3ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWw6KHtkYXRhOm19KT0+Xy5LKEdoYSx7ZGF0YTptLGNsYXNzTmFtZToieXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxQbGF5YmFja1NwZWVkQnV0dG9uIixvbkNsaWNrOigpPT57dmFyIG49bSgpPy5wbGF5YmFja1NwZWVkQnV0dG9uQ2VudGlWYWx1ZTtuJiYoZihuLzEwMCksZD8uKG4vMTAwKSl9fSl9KSkpfSwiWmEiKTt2YXIgSGhhPW5ldyBfLlZzKCJDT05URU5UX0ZFRURCQUNLX1ZJRVdfTU9ERUxfVE9LRU4iKTt2YXIgbE89Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgYj1fLnkoKS5yZXNvbHZlKF8uVUQpLGM9Xy5wSCh7TmI6KGYsaCk9PntfLngoInNoZWV0X2ZvY3VzX2ZpcnN0X2tpbGxzd2l0Y2giKXx8IWZ8fF8uekgoYT8uKCk/LnJlbmRlcmVyQ29udGV4dCl8fE1NKGgpfSxlYjp7VmI6ITEsc3RhdGU6InZpc2libGUifX0pLGQ9Xy55KCkucmVzb2x2ZShfLkluKEhoYSkpLGU9Xy55KCkucmVzb2x2ZShfLkluKERoYSkpO3JldHVybiBfLksoInl0LXNoZWV0LXZpZXctbW9kZWwiLHsib246bW91c2Vkb3duIjpmdW5jdGlvbihmKXtfLngoInNoZWV0X2ZvY3VzX2ZpcnN0X2tpbGxzd2l0Y2giKSYmZi5jdXJyZW50VGFyZ2V0IT09Zi50YXJnZXQmJmYucHJldmVudERlZmF1bHQoKX0sIm9uOmZvY3VzIjpmdW5jdGlvbihmKXtfLngoInNoZWV0X2ZvY3VzX2ZpcnN0X2tpbGxzd2l0Y2giKSYmTU0oZi5jdXJyZW50VGFyZ2V0KX0sIm9uOm1vdXNlbGVhdmUiOmZ1bmN0aW9uKCl7dmFyIGY9Xy56SChhPy4oKT8ucmVuZGVyZXJDb250ZXh0KTsKZiYmYi5yZXNvbHZlQ29tbWFuZChmKX0sY2xhc3M6Xy5QKCJ5dFNoZWV0Vmlld01vZGVsSG9zdCIse3l0U2hlZXRWaWV3TW9kZWxDb250ZXh0dWFsOiExLHl0U2hlZXRWaWV3TW9kZWxEaXNhYmxlQmFja2Ryb3BGaWx0ZXI6ITF9KSxlbDpfLnJGKGMpLHRhYmluZGV4Oi0xfSxfLksoXy5PLHtBOmEsdGhlbjpmPT5fLksoak8se1VlOigpPT5fLksoXy5XLHtkYXRhOigpPT5mKCkuaGVhZGVyfSx7cGFuZWxIZWFkZXJWaWV3TW9kZWw6Zk99KSxqaDohMCxpaDohMSxHYjooKT0+Xy5LKF8uVyx7ZGF0YTooKT0+ZigpLmNvbnRlbnR9LHtjaGVja2JveEdyb3VwVmlld01vZGVsOih7ZGF0YTpofSk9Pl8uSyhfLnRELHtkYXRhOmgsV2I6ITF9KSxyYWRpb0J1dHRvbkdyb3VwVmlld01vZGVsOih7ZGF0YTpofSk9Pl8uSyhfLkVMLHtkYXRhOmgsV2I6ITF9KSxsaXN0Vmlld01vZGVsOih7ZGF0YTpofSk9Pl8uSyhfLkJELHtkYXRhOmgsQmM6ITB9KSx2YXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbDpfLmtPLApsaW5lYXJMYXlvdXRWaWV3TW9kZWw6Xy5HTCx1cHNlbGxWaWV3TW9kZWw6Xy5oTCxtaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWw6Xy5qTCwuLi4oZSYme3ZpZGVvTm90aWNlc1ZpZXdNb2RlbDplfSksLi4uKGQmJntjb250ZW50RmVlZGJhY2tWaWV3TW9kZWw6KHtkYXRhOmh9KT0+Xy5LKGQse2RhdGE6aCxjbGFzc05hbWU6Inl0U2hlZXRWaWV3TW9kZWxQYWRkZWRDb250ZW50In0pfSl9KSxYaTohMCxTZTooKT0+Xy5LKF8uVyx7ZGF0YTooKT0+ZigpLmZvb3Rlcn0se3BhbmVsRm9vdGVyVmlld01vZGVsOl8uc0R9KSxoaDohMCxVZjohMSxWZjohMSxIYTohMH0pfSkpfSwiJGEiKTtsTy5pZG9tQ29tcGF0PSEwO18ubU89bmV3IF8uVnMoIklDT05fU0VUX1RPS0VOIik7Xy5uTz1uZXcgXy5WcygiSUNPTl9VUkxfUFJPVklERVJfVE9LRU4iKTtfLm9PPW5ldyBfLlZzKCJJQ09OX01BUF9GTl9UT0tFTiIpO3ZhciBTTj1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMuaj1hO3RoaXMubz1ifXYoKXt2YXIgYT0oXy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIik/SWhhOkpoYSk/P3RoaXMubztpZihhPy5sZW5ndGgpe2xldCBiPVtdO2E9KG5ldyBTZXQoYSkpLnZhbHVlcygpO2ZvcihsZXQgYyBvZiBhKWZvcihsZXQgZCBvZiBPYmplY3QudmFsdWVzKHpoYSkpYi5wdXNoKHtpY29uTmFtZTpjLGljb25TdHlsZTpkfSk7dGhpcy5qLnlhKGIpfWVsc2UgUHJvbWlzZS5yZXNvbHZlKCl9fTtTTltfLkxuXT1bXy5YTCxfLkluKG5ldyBfLlZzKCJQUkVGRVRDSF9JQ09OU19UT0tFTiIpKV07dmFyIEtoYT0vXig/IWphdmFzY3JpcHQ6KSg/OlthLXowLTkrLi1dKzp8W14mOlwvPyNdKig/OltcLz8jXXwkKSkvaSxlaGE9e1sxXTp7cGQ6bnVsbCxoZTpudWxsLEtkOm51bGx9LFsyXTp7cGQ6ZnVuY3Rpb24oYSxiLGMpe2E9Yzt4aGEudGVzdChhKSYmKGEuaW5kZXhPZigiJiIpIT0tMSYmKGE9YS5yZXBsYWNlKHJoYSwiJmFtcDsiKSksYS5pbmRleE9mKCI8IikhPS0xJiYoYT1hLnJlcGxhY2Uoc2hhLCImbHQ7IikpLGEuaW5kZXhPZigiPiIpIT0tMSYmKGE9YS5yZXBsYWNlKHRoYSwiJmd0OyIpKSxhLmluZGV4T2YoJyInKSE9LTEmJihhPWEucmVwbGFjZSh1aGEsIiZxdW90OyIpKSxhLmluZGV4T2YoIiciKSE9LTEmJihhPWEucmVwbGFjZSh2aGEsIiYjMzk7IikpLGEuaW5kZXhPZigiXHgwMCIpIT0tMSYmKGE9YS5yZXBsYWNlKHdoYSwiJiMwOyIpKSk7cmV0dXJuIGF9LGhlKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy5mYn0sS2Q6YT0+Xy55QShhKX0sWzNdOntwZDpmdW5jdGlvbihhLApiLGMpe3JldHVybiBLaGEudGVzdChjKT9jOl8uRnEudG9TdHJpbmcoKX0saGUoYSl7cmV0dXJuIF8uWGEoYSl9LEtkOmE9Pl8uWWEoYSl9LFs0XTp7cGQ6ZnVuY3Rpb24oKXtyZXR1cm4gXy5GcS50b1N0cmluZygpfSxoZShhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uU2F9LEtkOmE9Pl8uVWEoYSkudG9TdHJpbmcoKX0sWzVdOntwZDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIGN9LGhlKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifSxLZDphPT5hLnRvU3RyaW5nKCl9LFs3XTp7cGQ6ZnVuY3Rpb24oKXtyZXR1cm4iIC8qekNsb3N1cmV6Ki8gIn0saGUoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLmpifSxLZDphPT5fLmxiKGEpfSxbOF06e3BkKGEsYixjKXtjPVN0cmluZyhjKS50b0xvd2VyQ2FzZSgpO2E6e2xldCBkPW51bGw7KGE9Yk9bYV0pJiYoZD1hW2JdKTtpZih0eXBlb2YgZCE9PSJudW1iZXIiJiYoKGE9Yk9bIioiXSkmJihkPWFbYl0pLHR5cGVvZiBkIT09Im51bWJlciIpKXtiPQohMTticmVhayBhfWI9ITA9PT15aGFbZF1bU3RyaW5nKGMpLnRvTG93ZXJDYXNlKCldfXJldHVybiBiP2M6InpDbG9zdXJleiJ9LGhlOm51bGwsS2Q6bnVsbH0sWzEwXTp7cGQ6bnVsbCxoZTpudWxsLEtkOm51bGx9fTtfLnBPPV8uTCgoe2RhdGE6YSx0ZzpiLEhhOmMsaWNvbjpkLHByb2Nlc3NBbGxFbmRwb2ludHM6ZSxwcmV2ZW50RGVmYXVsdDpmLHN0b3BQcm9wYWdhdGlvbjpoLHdJOmssY2xhc3NOYW1lOmwsYnV0dG9uT3ZlcnJpZGVzOm0sUWY6bixpc1N1YnNjcmliZTpwLG9pOnIsQmw6dH0pPT57dmFyIHY9Xy5tRygpLHo9KEYsQyk9PntmPy4oKSYmQy5wcmV2ZW50RGVmYXVsdCgpO2g/LigpJiZDLnN0b3BQcm9wYWdhdGlvbigpO2lmKCFrPy4oKSl7Rj1hKCk7dmFyIEc9ISFlPy4oKTtpZighRi5faXNCdXN5KXtiJiZiKCk7dmFyIEQ9IUYubmF2aWdhdGlvbkVuZHBvaW50fHwhIV8uQihGLm5hdmlnYXRpb25FbmRwb2ludCxfLll6KXx8ISFfLkIoRi5uYXZpZ2F0aW9uRW5kcG9pbnQsXy5aeik7Rz8oRi50cmFja2luZ1BhcmFtcyYmRCYmXy56SihGLnRyYWNraW5nUGFyYW1zKSxGLnNlcnZpY2VFbmRwb2ludCYmXy5BSihGLnNlcnZpY2VFbmRwb2ludCxGLCExLHtldmVudDpDLEJkOnZ9KSxGLm5hdmlnYXRpb25FbmRwb2ludCYmCl8uQUooRi5uYXZpZ2F0aW9uRW5kcG9pbnQsRiwhMSx7ZXZlbnQ6QyxCZDp2fSksRi5jb21tYW5kJiZfLkFKKEYuY29tbWFuZCxGLCExLHtldmVudDpDLEJkOnZ9KSk6KEc9dk4oRi5zZXJ2aWNlRW5kcG9pbnQpfHx2TihGLm5hdmlnYXRpb25FbmRwb2ludCl8fHZOKEYuY29tbWFuZCkpJiZfLkFKKEcsRixELHtldmVudDpDLEJkOnZ9KX19fSxFPSgpPT57aWYoYz8uKCkhPT0hMSlyZXR1cm4gZD8uKCl8fGEoKS5pY29uPy5pY29uVHlwZX0sQT1fLk4oKCk9Pih7Li4uYWhhKHtyZW5kZXJlcjphKCksSW06eix3QTohMCxTYzptPy4oKSxWeTohMCxRZjpuPy4oKSxpc1N1YnNjcmliZTpwPy4oKXx8ITEsQmw6dD8uKCl9KSxvaTpyPy4oKX0pLHZvaWQgMCwiUGM0dDNiIik7cmV0dXJuIF8uSygieXRtLWJ1dHRvbi1yZW5kZXJlciIse2hpZGRlbjooKT0+IWEoKS50ZXh0JiYhXy5ESihhKCkuYWNjZXNzaWJpbGl0eURhdGF8fGEoKS5hY2Nlc3NpYmlsaXR5KSxjbGFzczpfLlAobCwoKT0+RT8uKCk/CmBpY29uLSR7RSgpLnRvTG93ZXJDYXNlKCl9YDp2b2lkIDAse2Rpc2FibGVkOigpPT5hKCkudGhlbWVkQmFzaWNDb2xvclBhbGV0dGUmJl8udU4oYSgpLnRoZW1lZEJhc2ljQ29sb3JQYWxldHRlKX0pfSxfLksoXy5KSyx7ZGF0YTpBLGljb25OYW1lOkV9KSl9LCJhYiIpO18ucE8uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvbkJ1dHRvbkNsaWNrQ2FsbGJhY2s6ITB9fTtfLnFPPV8uTCgoe2RhdGE6YSxRZjpiLHN0eWxlOmMsYnV0dG9uT3ZlcnJpZGVzOmQsY2xhc3NOYW1lOmUsc3RvcFByb3BhZ2F0aW9uOmYsUms6aCxIYzprLHN6Omx9KT0+e3ZhciBbbSxuXT1fLkFDKGEpLHA9KCk9Pnt2YXIgdD1tKCk7dmFyIHY9Yz8uKCk/LmFuaW1hdGVJY29uPT09InRydWUiLHo9dC50b2dnbGVkSWNvbiYmdC50b2dnbGVkSWNvbi5pY29uVHlwZSxFPXQuZGVmYXVsdEljb24mJnQuZGVmYXVsdEljb24uaWNvblR5cGU7dD12P0V8fG51bGw6dC5pc1RvZ2dsZWQmJnp8fEV8fG51bGw7dj1tKCk7cmV0dXJuKGM/LigpPy5hbmltYXRlSWNvbj09PSJ0cnVlIj90OnQ9PT0iTElLRSImJnYuaXNUb2dnbGVkPyJMSUtFX0ZJTExFRCI6dD09PSJESVNMSUtFIiYmdi5pc1RvZ2dsZWQ/IkRJU0xJS0VfRklMTEVEIjp0KT8/dm9pZCAwfSxyPSh0LHYpPT57aD9oKHQsdik6KGY/LigpJiZ2LnN0b3BQcm9wYWdhdGlvbigpLHQ9IW0oKS5pc1RvZ2dsZWQsbih7Li4ubSgpLGlzVG9nZ2xlZDp0fSksCmw/Lih0KSl9O3JldHVybiBfLksoInl0bS10b2dnbGUtYnV0dG9uLXJlbmRlcmVyIix7Y2xhc3M6ZX0sXy5LKF8uSksse2RhdGE6KCk9Pnt2YXIgdD1tKCksdj1tKCksej0hKHYuaXNUb2dnbGVkPyF2LnRvZ2dsZWRTZXJ2aWNlRW5kcG9pbnQ6IXYuZGVmYXVsdFNlcnZpY2VFbmRwb2ludCksRT12O3YuZGVmYXVsdE5hdmlnYXRpb25FbmRwb2ludCYmKEU9e30pO3JldHVybiBkaGEoe3JlbmRlcmVyOnQsSW06cixSdTpfLllEKEUse30seiksU2M6ZD8uKCksVnk6ITAsdG9nZ2xlZDohIW0oKS5pc1RvZ2dsZWQsUWY6Yj8uKCl9KX0saWNvbjooKT0+Xy5LKF8uTUQse2ljb246cCxHZTooKT0+ISFjPy4oKT8uYW5pbWF0ZUljb24sYWN0aXZlOigpPT5tKCkuaXNUb2dnbGVkLEhjOmt9KX0pKX0sImJiIik7Xy5xTy5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e1JrOiEwLHN6OiEwfX07Xy4kTj17S0I6WCgiQUNDT1VOVF9MQUJFTCIpLE1COlgoIkFDVF9PTl9USElTX0NPTU1FTlQiKSxOQjpYKCJBRERfVE9fRFJPUERPV05fTEFCRUwiKSxPQjpYKCJBRF9CQURHRV9ISU5UIiksUEI6WCgiQURfQkFER0VfVEVYVCIpLGNDOlgoIkFMTF9DSEFOTkVMU19MQUJFTCIpLGVDOlgoIkFNQklFTlRfTU9ERSIpLGZDOlgoIkFNQklFTlRfTU9ERV9PRkYiKSxnQzpYKCJBTUJJRU5UX01PREVfT04iKSxoQzpYKCJBTkRST0lEX0RFUFJFQ0FUSU9OX01FU1NBR0VfQk9EWSIpLGlDOlgoIkFORFJPSURfREVQUkVDQVRJT05fTUVTU0FHRV9IRUFERVIiKSxrQzpYKCJBUFBfVVBTRUxMX1NVQlRJVExFIiksbEM6WCgiQVBQX1VQU0VMTF9USVRMRSIpLE5zOlgoIkFVRElPX1RSQUNLIiwiQXVkaW8gVHJhY2siKSxuazpYKCJBVVRPTkFWX1RPR0dMRSIpLG1DOlgoIkFVVE9QTEFZX0lOX1RFTl9TRUNPTkRTIiksbkM6WCgiQVVUT1BMQVlfUEFVU0VEIiksb0M6WCgiQVVUT1BMQVlfUExBWV9OT1ciKSwKT3M6WCgiQVVUT1BMQVlfVVBfTkVYVF9JTiIpLFBzOlgoIkFVVE9fWk9PTSIsIkF1dG8gem9vbSIpLEJBQ0s6WCgiQkFDSyIpLHFDOlgoIkJSQU5ERURfU0lHTl9JTl9ESUFMT0dfREVTQ1JJUFRJT04iLCJBY2Nlc3MgYWxsIGZlYXR1cmVzIGFuZCBnZXQgYSBzZWFtbGVzcyBleHBlcmllbmNlIiksQ0FOQ0VMOlgoIkNBTkNFTCIpLHVDOlgoIkNIQU5ORUxfU1dJVENIRVJfTEFCRUwiKSxDTE9TRTpYKCJDTE9TRSIsImNsb3NlIiksUnM6WCgiQ0xPU0VEX0NBUFRJT05TX0RJU0FCTEVEIiksU3M6WCgiQ0xPU0VEX0NBUFRJT05TX09GRiIpLFRzOlgoIkNMT1NFRF9DQVBUSU9OU19PTiIpLFVzOlgoIkNMT1NFRF9DQVBUSU9OU19PTl9MQU5HVUFHRSIpLHhDOlgoIkNMT1NFX1NFQVJDSF9MQUJFTCIpLHlDOlgoIkNMT1NFX1NFVFRJTkdTX0xBQkVMIiksekM6WCgiQ09NTUVOVF9NT0RBTF9DT05URU5UIiksV3M6WCgiQ09ORklSTV9PSyIpLEFDOlgoIkNPTk5FQ1RfVE9fVEhFX0lOVEVSTkVUIiksClhzOlgoIkNPUElFRF9UT19DTElQQk9BUkQiKSxZczpYKCJDT1BZIiksVG46WCgiQ09QWV9ERUJVR19JTkZPIiksWnM6WCgiQ09QWV9FTUJFRF9DT0RFIiksQ0M6WCgiQ09QWV9MSU5LX0xBQkVMIiksYnQ6WCgiQ09QWV9WSURFT19VUkwiKSxmdDpYKCJDT1BZX1ZJREVPX1VSTF9BVF9DVVJSRU5UX1RJTUUiKSxEQzpYKCJDUkVBVEVfQ0hBTk5FTF9USVRMRSIpLElDOlgoIkRFTEVURV9GUk9NX0RPV05MT0FEUyIpLFhuOlgoIkRJQUxPRyIpLERPTkU6WCgiRE9ORSIpLE5DOlgoIkRPV05MT0FEIiksa3Q6WCgiRkFJTEVEX0NPUFlfRVJST1JfTUVTU0FHRSIpLGJEOlgoIkZMQUdfQ09ORklSTSIpLGNEOlgoIkZMQUdfQ09OVEVOVCIpLGREOlgoIkZMQUdfTEFCRUwiKSxlRDpYKCJGTEFHX1RJVExFIiksZkQ6WCgiRlVMTFNDUkVFTl9HRU5FUklDX0VSUk9SIiksVkU6WCgiR0lGVFMiLCJHaWZ0cyIpLFdFOlgoIkdPT0dMRV9DT01QQU5ZIiksbXQ6WCgiSElERV9QTEFZRVJfQ09OVFJPTFMiLAoiSGlkZSBwbGF5ZXIgY29udHJvbHMiKSxZRTpYKCJISURFX1BMQVlMSVNUX1ZJREVPUyIpLFpFOlgoIkhJREVfU0VBUkNIX0ZJTFRFUlNfTEFCRUwiKSxIT01FOlgoIkhPTUUiLCJIb21lIiksZEY6WCgiSU5WQUxJRF9SRVNQT05TRV9SRUNFSVZFRCIpLGdGOlgoIkxFQVZFX0FfQ09NTUVOVF9USVRMRSIsIkxlYXZlIGEgY29tbWVudD8iKSxoRjpYKCJMSUJSQVJZIiwiTGlicmFyeSIpLGtGOlgoIkxJU1RFTklORyIpLExPQURJTkc6WCgiTE9BRElORyIpLGxGOlgoIkxPTkdfUFJFU1NfTUlDX1RPX1NQRUFLIiwiTG9uZyBwcmVzcyBtaWNfaWNvbl9wbGFjZWhvbGRlciB0byBzcGVhayIpLHV0OlgoIkxPT1AiKSxvRjpYKCJNRU5VX0RFU0tUT1AiKSxwRjpYKCJNRU5VX0VYSVQiKSxxRjpYKCJNRU5VX0ZFRURCQUNLIiksckY6WCgiTUVOVV9IRUxQIiksc0Y6WCgiTUVOVV9JTVBSRVNTVU0iKSx2dDpYKCJNRU5VX1BMQVlFUl9TRVRUSU5HUyIpLHRGOlgoIk1FTlVfU0VUVElOR1MiKSx1RjpYKCJNRU5VX1NJR05fSU4iKSwKdkY6WCgiTUVOVV9USVRMRSIpLHdGOlgoIk1FTlVfWU9VUl9EQVRBIiksQUY6WCgiTU9SRV9JTkZPIiksd3Q6WCgiTU9SRV9PUFRJT05TIiksYm86WCgiTU9SRV9WSURFT1MiLCJNb3JlIHZpZGVvcyIpLHh0OlgoIk1PUkVfVklERU9TX0NMT1NFX0JVVFRPTl9BUklBX0xBQkVMIiwiSGlkZSBtb3JlIHZpZGVvcyIpLHp0OlgoIk1PUkVfVklERU9TX0ZST01fQ0hBTk5FTCIsIk1vcmUgdmlkZW9zIGZyb20gJGNoYW5uZWxfbmFtZV9wbGFjZWhvbGRlciIpLGVvOlgoIk1PUkVfVklERU9TX05FWFRfQlVUVE9OX0FSSUFfTEFCRUwiLCJOZXh0IHZpZGVvcyIpLGZvOlgoIk1PUkVfVklERU9TX1BSRVZJT1VTX0JVVFRPTl9BUklBX0xBQkVMIiwiUHJldmlvdXMgdmlkZW9zIiksQXQ6WCgiTVVURV9WT0xVTUUiKSxDRjpYKCJORVdfUExBWUxJU1QiKSxERjpYKCJORVhUX1ZJREVPIiksQ3Q6WCgiTk9USUZJQ0FUSU9OX0VSUk9SX01FU1NBR0UiKSxGRjpYKCJOT1RfRk9VTkRfQ1RBIiksR0Y6WCgiTk9UX0ZPVU5EX01FU1NBR0UiKSwKSEY6WCgiTk9UX0ZPVU5EX1RJVExFIiksSUY6WCgiTk9fRE9XTkxPQURTIiksSkY6WCgiTk9fTUlDX0lOUFVUIiksS0Y6WCgiT0ZGTElORV9DSEVDS19DT05ORUNUSU9OIiksRHQ6WCgiT09QU19NRVNTQUdFIiksTUY6WCgiT1BFTl9BUFAiKSxORjpYKCJPUEVOX1lPVVRVQkUiKSxPRjpYKCJPUEVOX1lPVVRVQkVfQVBQIiwiT3BlbiBZb3VUdWJlIGFwcCIpLFBBVVNFOlgoIlBBVVNFIiksVUY6WCgiUExBWSIpLEV0OlgoIlBMQVlFUl9DQVBUSU9OIiksRnQ6WCgiUExBWUVSX0NBUFRJT05fT0ZGIiksVkY6WCgiUExBWUVSX0NBUFRJT05fT04iKSxHdDpYKCJQTEFZRVJfRE9VQkxFX1NQRUVEX1VTRVJfRURVIiksV0Y6WCgiUExBWUVSX0RPVUJMRV9UQVBfVE9fU0VFSyIpLFhGOlgoIlBMQVlFUl9ET1VCTEVfVEFQX1RPX1NIT1dfT1JfSElERV9QTEFZRVJfQ09OVFJPTFMiKSxIdDpYKCJQTEFZRVJfRVhJVF9GVUxMU0NSRUVOIiksSXQ6WCgiUExBWUVSX0ZBU1RGT1JXQVJEX1NFQ09ORFMiKSwKSnQ6WCgiUExBWUVSX0ZVTExTQ1JFRU4iKSxsbzpYKCJQTEFZRVJfTElWRV9MQUJFTCIpLFlGOlgoIlBMQVlFUl9MSVZFX05PVyIpLFpGOlgoIlBMQVlFUl9NSU5JTUlaRSIpLEt0OlgoIlBMQVlFUl9ORVhUIiksTHQ6WCgiUExBWUVSX1BBVVNFIiksUGc6WCgiUExBWUVSX1BMQVkiKSxNdDpYKCJQTEFZRVJfUFJFVklPVVMiKSxhRzpYKCJQTEFZRVJfUFJPR1JFU1NfQkFSIiksTnQ6WCgiUExBWUVSX1FVQUxJVFkiKSxPdDpYKCJQTEFZRVJfUVVBTElUWV9BVVRPIiksUHQ6WCgiUExBWUVSX1JFUExBWSIpLFF0OlgoIlBMQVlFUl9SRVdJTkRfU0VDT05EUyIpLG1vOlgoIlBMQVlFUl9TUEVFRCIpLGJHOlgoIlBMQVlFUl9TUEVFRFVQX1VTRVJfRURVIiksUnQ6WCgiUExBWUVSX1NQRUVEX0RFQ1JFQVNFIiksU3Q6WCgiUExBWUVSX1NQRUVEX0lOQ1JFQVNFIiksbm86WCgiUExBWUVSX1NQRUVEX05PUk1BTCIpLFR0OlgoIlBMQVlFUl9TUEVFRF9SRUNFTlQiKSxVdDpYKCJQTEFZRVJfVElNRV9EVVJBVElPTiIpLApWdDpYKCJQTEFZRVJfVElNRV9FTEFQU0VEIiksY0c6WCgiUExBWUxJU1RfREVTQ1JJUFRJT05fSU5WQUxJRF9DSEFSQUNURVJTIiksZEc6WCgiUExBWUxJU1RfTUlYX0RFVEFJTEVEX0xPTkdfQllMSU5FIiksZUc6WCgiUExBWUxJU1RfTkFNRV9JTlZBTElEX0NIQVJBQ1RFUlMiKSxmRzpYKCJQTEFZTElTVF9OQU1FX01JU1NJTkciKSxnRzpYKCJQTEFZTElTVF9OQU1FX1RPT19MT05HIiksaEc6WCgiUExBWUxJU1RfUEFORUxfRU5EX09GX1BMQVlMSVNUIiksaUc6WCgiUExBWUxJU1RfUEFORUxfTkVYVCIpLGpHOlgoIlBMQVlMSVNUX1BBTkVMX1VOTElTVEVEX1BMQVlMSVNUIiksa0c6WCgiUExBWUxJU1RfVEVYVF9JTlBVVF9DSEFSX0NPVU5UIiksbEc6WCgiUExBWV9BTEwiKSxtRzpYKCJQTEVBU0VfRklYX0VSUk9SUyIpLFh0OlgoIlBSRU1JVU1fQkFER0VfTEFCRUwiLCJQcmVtaXVtIiksbkc6WCgiUFJFVklPVVNfVklERU8iKSxvRzpYKCJQUklWQUNZX1BPTElDWSIpLHJHOlgoIlJFTE9BRCIpLApzRzpYKCJSRVFVSVJFRF9MQUJFTCIpLHlHOlgoIlNBVkVfUExBWUxJU1QiKSxBRzpYKCJTQ1JVQl9TTElERV9VU0VSX0VEVSIpLENHOlgoIlNFQVJDSCIsIlNlYXJjaCIpLERHOlgoIlNFQVJDSF9BUFBFTkRfTEFCRUwiKSxFRzpYKCJTRUFSQ0hfQ0hBTk5FTCIpLEZHOlgoIlNFQVJDSF9DTEVBUl9MQUJFTCIpLEdHOlgoIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9BTEJVTV9OT19BUlRJU1QiLCJBbGJ1bSIpLEhHOlgoIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9NT1ZJRSIsIk1vdmllIiksSUc6WCgiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX1NPTkdfTk9fQVJUSVNUIiwiU29uZyIpLEpHOlgoIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9UVl9TSE9XIiwiVFYgU2hvdyIpLEtHOlgoIlNFQVJDSF9GSUxURVJTX0xBQkVMIiksTEc6WCgiU0VBUkNIX0xBQkVMIiksTUc6WCgiU0VBUkNIX1BQUF9QTEFDRUhPTERFUl9URVhUIiksTkc6WCgiU0VFS19TTElERVIiKSxPRzpYKCJTRVRUSU5HU19MQUJFTCIpLApQRzpYKCJTRVRUSU5HU19NSUNfUEVSTUlTU0lPTiIpLFNHOlgoIlNIT1JUU19UQUJfTEFCRUwiLCJTaG9ydHMiKSxURzpYKCJTSE9XX0xFU1MiKSxVRzpYKCJTSE9XX01PUkUiKSxadDpYKCJTSE9XX1BMQVlFUl9DT05UUk9MUyIsIlNob3cgcGxheWVyIGNvbnRyb2xzIiksVkc6WCgiU0hPV19QTEFZTElTVF9WSURFT1MiKSxXRzpYKCJTSE9XX1NFQVJDSF9GSUxURVJTX0xBQkVMIiksYXU6WCgiU0lHTl9JTl9MQUJFTCIpLFpHOlgoIlNJR05fSU5fT05fV0VCIikseWs6WCgiU1RBQkxFX1ZPTFVNRSIpLGpIOlgoIlNUQUJMRV9WT0xVTUVfT0ZGIiksa0g6WCgiU1RBQkxFX1ZPTFVNRV9PTiIpLGJ1OlgoIlNUQVRTX0ZPUl9ORVJEUyIpLGxIOlgoIlNVR0dFU1RJT05fRElTTUlTU0VEX0xBQkVMIiksbUg6WCgiU1VHR0VTVElPTl9ESVNNSVNTX0xBQkVMIiksbkg6WCgiU1VHR0VTVElPTl9ORVdfVklERU9TX1RFWFQiKSxvSDpYKCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9MQUJFTCIsCiJWaWV3IGltYWdlIHNvdXJjZSIpLHBIOlgoIlNVR0dFU1RJT05fVEhVTUJOQUlMX0xBQkVMIikscUg6WCgiVEVSTVNfT0ZfU0VSVklDRSIpLHJIOlgoIlRJTUVTVEFNUF9NSU5VVEVTIiksc0g6WCgiVElNRVNUQU1QX1NFQ09ORFMiKSx0SDpYKCJUT0dHTEVfT0ZGIiksdUg6WCgiVE9HR0xFX09OIiksdkg6WCgiVFJFTkRJTkciKSxkdTpYKCJUUk9VQkxFU0hPT1RfUExBWUJBQ0tfSVNTVUUiKSxldTpYKCJUUllfQUdBSU5fTEFURVIiKSx3SDpYKCJUUllfQUdBSU5fTUlDX1BFUk1JU1NJT04iKSx4SDpYKCJUVVJOX09GRl9BVVRPUExBWV9DT05GSVJNX0JVVFRPTl9USVRMRSIpLHlIOlgoIlRVUk5fT0ZGX0FVVE9QTEFZX0RJQUxPR19ERVNDUklQVElPTiIpLHpIOlgoIlRVUk5fT0ZGX0FVVE9QTEFZX0RJQUxPR19USVRMRSIpLGd1OlgoIlVOTVVURV9WT0xVTUUiKSxzbzpYKCJWSURFT19MSU5LX0xBQkVMIil9O18uTGhhPU9iamVjdC5mcmVlemU/T2JqZWN0LmZyZWV6ZShPYmplY3QuY3JlYXRlKG51bGwpKTp7fTtfLk5OPSgpPT57fTt3aW5kb3cucmVxdWVzdElkbGVDYWxsYmFjaz8uYmluZCh3aW5kb3cpO18uWk49Xy5MKGE9Pnt2YXIge2xhYmVsOmIsb25jbGljazpjLHNob3dTcGlubmVyOmQsdGk6ZSxlbmdhZ2VtZW50UGFuZWw6ZixLeDpoLERwOmsscmVsYXRpdmU6bCxvcGFjaXR5Om19PV8uREMoYSx7c2hvd1NwaW5uZXI6ITEsUks6ITEsdGk6ITEsZW5nYWdlbWVudFBhbmVsOiExLERwOiExLHJlbGF0aXZlOiExLEt4OiExLG9wYWNpdHk6dm9pZCAwfSk7cmV0dXJuIF8uSygieXR3LXNjcmltIix7Y2xhc3M6Xy5QKCJ5dFdlYlNjcmltSG9zdCIsInl0V2ViU2NyaW1Ib3N0TW9kZXJuT3ZlcmxheSIse3l0V2ViU2NyaW1Ib3N0Qm90dG9tU2hlZXQ6ZSx5dFdlYlNjcmltSG9zdEVuZ2FnZW1lbnRQYW5lbDooKT0+IWUoKSYmZigpLHl0V2ViU2NyaW1Ib3N0RHJhZ2dhYmxlRW5nYWdlbWVudFBhbmVsOigpPT4hZSgpJiZmKCkmJmgoKSx5dFdlYlNjcmltSG9zdERyYXdlckxheW91dDooKT0+IWUoKSYmIWYoKSYmaygpLHl0V2ViU2NyaW1Ib3N0UmVsYXRpdmU6bH0pLCJvbjpjbGljayI6Yywib246dG91Y2htb3ZlIjpmdW5jdGlvbihuKXtuLnByZXZlbnREZWZhdWx0KCk7Cm4uc3RvcFByb3BhZ2F0aW9uKCl9LHN0eWxlOigpPT5tKCkhPT12b2lkIDA/YGJhY2tncm91bmQ6cmdiYSgwLCAwLCAwLCAke20oKX0pO2A6IiJ9LF8uSyhfLk8se0E6ZCx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFdlYlNjcmltRGlhbG9nQ29udGFpbmVyIn0sXy5LKF8uWkwsbnVsbCkpfSksXy5LKCJidXR0b24iLHtjbGFzczoieXRXZWJTY3JpbUhpZGRlbkJ1dHRvbiIsImFyaWEtbGFiZWwiOmJ9KSl9LCJjYiIpO3ZhciBGTixFTixJTixHTixMTixITixraGE7Rk49MDtFTj1uZXcgTWFwO0lOPW51bGw7R049bnVsbDtMTj0hMTtfLkROPVtdO0hOPSFfLngoImNhbmNlbF9tb2RhbF9wZW5kaW5nX2FuaW1hdGlvbnNfa2lsbHN3aXRjaCIpO2toYT0hXy54KCJyZXNob3dfbmVzdGVkX21vZGFsX3NpYmxpbmdzX2tpbGxzd2l0Y2giKTt2YXIgck87Cl8uc089Xy5MKCh7dHE6YX0pPT57ZnVuY3Rpb24gYihHKXtpZigoYSgpJiZkb2N1bWVudC5mdWxsc2NyZWVuRWxlbWVudHx8IWEoKSYmIWRvY3VtZW50LmZ1bGxzY3JlZW5FbGVtZW50KSYmRyl7dmFyIEQ9Ry5RayxIPUcudmlld01vZGVsO2sudmFsdWU/RihHKTpEPy5pc0Rpc2FibGVkJiZEPy5kaXNhYmxlZENvbW1hbmQ/KENOKCEwKSxfLkFKKEQuZGlzYWJsZWRDb21tYW5kLGgudmFsdWUsITEpKTood2luZG93LmxvY2F0aW9uLmhhc2ghPT0iI2JvdHRvbS1zaGVldCImJl8uJE0oImJvdHRvbS1zaGVldCIsITApLGsudmFsdWU9ITAsZG9jdW1lbnQuYm9keS5zZXRBdHRyaWJ1dGUoImJvdHRvbS1zaGVldC1vcGVuIiwiIiksXy5vTSgpLmRpc3BhdGNoKGJOKCEwKSksck89Xy5tRygpLHAoRCksdihIKSxDTighMCksaC52YWx1ZXx8Xy5JcChFcnJvcigiRmQiKSksXy5KTihoLnZhbHVlLEQ/LmZvY3VzT25DbG9zZSwhMCkpfX1mdW5jdGlvbiBjKCl7ay52YWx1ZSYmKGsudmFsdWU9ITEsZG9jdW1lbnQuYm9keS5yZW1vdmVBdHRyaWJ1dGUoImJvdHRvbS1zaGVldC1vcGVuIiksCm4oKT8uR2g/LigpLHJPPXZvaWQgMCxwKHZvaWQgMCksdih2b2lkIDApLENOKCExKSxfLktOKGgudmFsdWUpLF8ub00oKS5kaXNwYXRjaChiTighMSkpKX1mdW5jdGlvbiBkKCl7ay52YWx1ZSYmd2luZG93LmxvY2F0aW9uLmhhc2ghPT0iI2JvdHRvbS1zaGVldCImJmMoKX1hc3luYyBmdW5jdGlvbiBlKCl7YXdhaXQgXy5GSjt3aW5kb3cubG9jYXRpb24uaGFzaD09PSIjYm90dG9tLXNoZWV0IiYmKGRvY3VtZW50LmZ1bGxzY3JlZW5FbGVtZW50fHxfLllNP18uJE0oIiIsITApOmF3YWl0IF8uWk0oKSxkKCkpO0EoKSYmKGIoQSgpKSxGKHZvaWQgMCkpfWZ1bmN0aW9uIGYoRyl7Xy56TigpO0cuc3RvcFByb3BhZ2F0aW9uKCl9dmFyIGg9Xy51RSgiYm90dG9tLXNoZWV0LWNvbnRhaW5lciIpLGs9Xy51TSghMSksW2wsbV09Xy5KKHZvaWQgMCx2b2lkIDAsInZXdVhrYiIpLG49bCxwPW0sW3IsdF09Xy5KKHZvaWQgMCx2b2lkIDAsIkJmUkFMYiIpLHY9dCxbeixFXT1fLkoodm9pZCAwLHZvaWQgMCwKInk3dE5sYyIpLEE9eixGPUUsQz0oKT0+ISghbigpJiYhcigpKTtfLlVKKCgpPT57d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLGQpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzdGF0ZS1uYXZpZ2F0ZXN0YXJ0IixjKTtfLnkoKS5yZXNvbHZlKF8uY0wpLlB6KHt3ZzpHPT57RyYmYih7dmlld01vZGVsOkcudmlld01vZGVsLFFrOkcuUWt9KX0sSmU6YXN5bmMoKT0+e2F3YWl0IGUoKX0sZG06YXN5bmMoKT0+ISFfLnhOKCksWHA6KCk9PmgudmFsdWUsb3c6Rz0+R30sYSgpKTtfLll1KCgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLGQpO3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJzdGF0ZS1uYXZpZ2F0ZXN0YXJ0IixjKX0pfSk7cmV0dXJuIF8uSygiYm90dG9tLXNoZWV0LWNvbnRhaW5lciIse2VsOmgscm9sZToiZGlhbG9nIixoaWRkZW46KCk9PiFDKCksImFyaWEtbW9kYWwiOiEwLCJhcmlhLWxhYmVsIjooKT0+bigpPy5oZWFkZXJUaXRsZT8KbigpLmhlYWRlclRpdGxlOl8uJE4uWG59LF8uSyhfLk8se0E6Qyx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhfLlpOLHtsYWJlbDpfLiROLkNMT1NFLG9uY2xpY2s6Xy56Tix0aTohMH0pLF8uSyhfLk8se0E6cix0aGVuOkc9Pl8uSyhsTyx7ZGF0YTpHfSksVzooKT0+Xy5LKF8uTyx7QTpuLHRoZW46Rz0+Xy5wRyhyT3x8e30sKCk9Pl8uSyhqTyx7SGE6KCk9PkcoKS5IYSxwZjooKT0+RygpLnBmLEdrOigpPT5HKCkuR2ssR2g6KCk9PkcoKS5HaCxmb2N1c09uQ2xvc2U6KCk9PkcoKS5mb2N1c09uQ2xvc2UsaXNEaXNhYmxlZDooKT0+RygpLmlzRGlzYWJsZWQsZGlzYWJsZWRDb21tYW5kOigpPT5HKCkuZGlzYWJsZWRDb21tYW5kLFVlOigpPT5fLksoXy50Tix7Y29tcG9uZW50OigpPT5HKCkuVWV9KSxqaDooKT0+ISFHKCkuVWUsR2I6KCk9Pl8uSyhfLnROLHtjb21wb25lbnQ6KCk9PkcoKS5HYn0pLFhpOigpPT4hIUcoKS5HYixTZTooKT0+Xy5LKF8udE4se2NvbXBvbmVudDooKT0+CkcoKS5TZX0pLGhoOigpPT4hIUcoKS5TZSxoZWFkZXJUaXRsZTooKT0+RygpLmhlYWRlclRpdGxlLGhlYWRlclN1YnRpdGxlOigpPT5HKCkuaGVhZGVyU3VidGl0bGUsV2Y6KCk9Pl8uSyhfLnROLHtjb21wb25lbnQ6KCk9PkcoKS5XZn0pLGloOigpPT4hIUcoKS5XZixOZjooKT0+Xy5LKF8udE4se2NvbXBvbmVudDooKT0+RygpLk5mfSksVWY6KCk9PiEhRygpLk5mLE9mOigpPT5fLksoXy50Tix7Y29tcG9uZW50OigpPT5HKCkuT2Z9KSxWZjooKT0+ISFHKCkuT2YsUmU6KCk9PkcoKS5SZSxNZjooKT0+RygpLk1mLFBmOigpPT5HKCkuUGZ9KSl9KX0pLF8uSygiYnV0dG9uIix7Y2xhc3M6ImNsb3NlLWJ1dHRvbiIsImFyaWEtbGFiZWwiOl8uJE4uQ0xPU0UsIm9uOmNsaWNrIjpmfSkpfSkpfSwiZGIiKTtfLnNPLmlkb21Db21wYXQ9ITA7Xy50Tz1fLkwoKHthcmlhTGFiZWw6YSxVSDpiLGFyaWFQcmVzc2VkOmMsYXJpYUV4cGFuZGVkOmQsYXJpYURpc2FibGVkOmUsY2xhc3NOYW1lOmYsY29udGVudDpoLGJxOmssaWQ6bCxuYW1lOm0sb25jbGljazpuLG9udG91Y2hzdGFydDpwLG9udG91Y2htb3ZlOnIsb250b3VjaGVuZDp0LGJ4OnZ9KT0+e3Y9Xy51RSgiYnV0dG9uIix2KTtyZXR1cm4gXy5LKCJidXR0b24iLHtpZDpsLGNsYXNzOl8uUCgiaWNvbi1idXR0b24iLGYpLGVsOnYsImFyaWEtbGFiZWwiOmEsImFyaWEtbGFiZWxsZWRieSI6YiwiYXJpYS1wcmVzc2VkIjpjLCJhcmlhLWV4cGFuZGVkIjpkLCJhcmlhLWhhc3BvcHVwIjprLCJhcmlhLWRpc2FibGVkIjplLCJvbjpjbGljayI6biwib246dG91Y2hzdGFydCI6bE4ocCksIm9uOnRvdWNobW92ZSI6bE4ociksIm9uOnRvdWNoZW5kIjpsTih0KX0sXy5LKF8uTyx7QTooKT0+ISFoLHRoZW46KCk9Pmg/LigpLFc6KCk9Pl8uSyhfLk1ELHtpY29uOm19KX0pKX0sImViIik7Cl8udE8uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntjb250ZW50OiEwLG9uY2xpY2s6ITAsb250b3VjaHN0YXJ0OiEwLG9udG91Y2htb3ZlOiEwLG9udG91Y2hlbmQ6ITAsYng6ITB9fTt2YXIgUk4sUE4sT047Uk49ITA7ClBOPXtBVkFUQVJfQ0lSQ0xFX0JMVUU6IkFWQVRBUl9MT0dHRURfT1VUIixCQUNLOiJBUlJPV19CQUNLIixCTE9DS19VU0VSOiJCTE9DSyIsQlJPQURDQVNUOiJwb2RjYXN0IixDQVBUSU9OUzoiQ0xPU0VEX0NBUFRJT04iLENIRUNLX0JMVUU6IkNIRUNLIixDSEVDS19DSVJDTEVfRklMTEVEOiJDSEVDS19DSVJDTEVfRklMTEVEIixDSEVDS19DSVJDTEVfVEhJQ0s6IkNIRUNLX0NJUkNMRV9PVVRMSU5FIixDT1VSU0U6ImxpZ2h0YnVsYiIsRElTTElLRV9DT01NRU5UOiJESVNMSUtFIixESVNMSUtFX0NPTU1FTlRfRklMTEVEOiJESVNMSUtFX0ZJTExFRCIsRElTTElLRV9TRUxFQ1RFRDoiRElTTElLRV9GSUxMRUQiLERJU01JU1NBTF9CTEFDSzoiRElTTUlTU0FMIixFWFBBTkRfTU9SRToiRVhQQU5EIixGQVNISU9OX0xPR086ImZhc2hpb24iLEdBTUlORzoiZ2FtaW5nIixHQU1JTkdfTE9HTzoiZ2FtaW5nIixHRUFSOiJTRVRUSU5HUyIsSEVMUDoiSEVMUF9PVVRMSU5FIixMSUtFX0NPTU1FTlQ6IkxJS0UiLApMSUtFX0NPTU1FTlRfRklMTEVEOiJMSUtFX0ZJTExFRCIsTElLRV9TRUxFQ1RFRDoiTElLRV9GSUxMRUQiLExJVkU6IlJBREFSX0xJVkUiLExPR086IllPVVRVQkUiLE1PUkVfQ0hFVlJPTjoiRVhQQU5EIixNT1JFX1ZFUlRfV0hJVEU6Ik1PUkVfVkVSVCIsTVVTSUM6ImF1ZGlvIixNVVNJQ19GSUxMRUQ6ImF1ZGlvX2ZpbGxlZCIsTkVXUzoibmV3cyIsT0ZGSUNJQUxfQVJUSVNUX0JBREdFOiJhdWRpbyIsUExBWUFCTEVTX0xPR086InRpY190YWNfdG9lIixQTEFZRVJfTkVYVDoiU0tJUF9ORVhUX0ZJTExFRCIsUExBWUVSX1BBVVNFOiJQQVVTRV9GSUxMRUQiLFBMQVlFUl9QTEFZOiJQTEFZX0FSUk9XX0ZJTExFRCIsUExBWUVSX1BSRVZJT1VTOiJTS0lQX1BSRVZJT1VTX0ZJTExFRCIsUExBWUVSX1JFUExBWToiUkVQTEFZIixQTEFZX0FMTDoiUExBWV9BUlJPV19GSUxMRUQiLFJFTU9WRToiRElTTUlTU0FMIixTSE9SVFNfRElTTElLRToic2hvcnRzX3RodW1ic19kb3duIixTSE9SVFNfTElLRToic2hvcnRzX3RodW1ic191cCIsClNQT05TT1JTSElQX1NUQVI6IlNQT05TT1JTSElQX1NUQVJfRklMTEVEIixUQUJfQUNDT1VOVDoiQVZBVEFSX0xPR0dFRF9PVVQiLFRBQl9UUkVORElORzoiZmlyZSIsVEFCX1RSRU5ESU5HX0ZJTExFRDoiZmlyZV9maWxsZWQiLFRSRU5ESU5HOiJmaXJlIixUUk9QSFk6InRyb3BoeSIsVk9MVU1FX0RPV05fT1VUTElORToiVk9MVU1FX0RPV04iLFZPTFVNRV9VUDoiVk9MVU1FX1VQX0ZJTExFRCIsVk9MVU1FX1VQX09VVExJTkU6IlZPTFVNRV9VUCIsWU9VVFVCRV9MT0dPOiJMT0dPX1dJVEhfVEVYVCIsWU9VVFVCRV9QUkVNSVVNX0xPR086IllPVVRVQkVfUFJFTUlVTV9MT0dPX1NIT1JUIixZT1VUVUJFX1NIT1JUU19GSUxMX05PX1RSSUFOR0xFX1JFRF8xNjoieW91dHViZV9zaG9ydHNfbm9fdHJpYW5nbGVfZmlsbGVkIixZT1VUVUJFX1NIT1JUU19GSUxMX05PX1RSSUFOR0xFX1dISVRFXzE2OiJ5b3V0dWJlX3Nob3J0c19ub190cmlhbmdsZV9maWxsZWQifTsKT049e0xPR086IkxPR08iLFBMQVlBQkxFU19MT0dPOiJwbGF5YWJsZXMiLFNIT1JUU19ESVNMSUtFOiJ0aHVtYl9kb3duIixTSE9SVFNfTElLRToidGh1bWJfdXAiLFRBQl9UUkVORElORzoidHJlbmRpbmciLFRBQl9UUkVORElOR19GSUxMRUQ6InRyZW5kaW5nX2ZpbGxlZCIsVFJFTkRJTkc6InRyZW5kaW5nIn07Cl8udU89Xy5MKCh7aWNvbjphLGFjdGl2ZTpiLGNsYXNzTmFtZTpjLHN0eWxlOmQseXA6ZSxoYzpmLHJvbGU6aCxHZTprLEhjOmwsYXJpYUhpZGRlbjptLGFyaWFFeHBhbmRlZDpuLGFyaWFMYWJlbDpwLGlkOnIsYWc6dCxzaXplOnZ9KT0+e25oYSgpO3ZhciB6PSgpPT5RTihhPy4oKSksRT1fLk4oKCk9PnthOnt2YXIgRj1RTihhPy4oKSksQz1iPy4oKTt2YXIgRz12Py4oKTtpZihGKXt2YXIgRD1fLnkoKS5yZXNvbHZlKF8uWEwpLEg9Ri50b0xvd2VyQ2FzZSgpO0Y9e2ljb25OYW1lOkgsaWNvblN0eWxlOkguZW5kc1dpdGgoIl9maWxsZWQiKXx8Ri5lbmRzV2l0aCgiX29uIil8fEM/InlvdXR1YmVfZmlsbCI6dm9pZCAwLGljb25TaXplOkd9O0M9RC5qKEYpOyFDJiZHJiYoRi5pY29uU2l6ZT12b2lkIDAsQz1ELmooRikpOyFDJiZILmVuZHNXaXRoKCJfZmlsbGVkIikmJihGLmljb25OYW1lPUguc3Vic3RyaW5nKDAsSC5sZW5ndGgtNyksQz1ELmooRikpO0N8fChGLmljb25TdHlsZT12b2lkIDAsCkM9RC5qKEYpKTtpZihDKXtHPUY7YnJlYWsgYX1fLklwKG5ldyBfLlhqKCJJY29uIG5vdCBzdXBwb3J0ZWQiLHtpY29uTmFtZTpGLmljb25OYW1lfSkpfUc9dm9pZCAwfXJldHVybiBHfSx2b2lkIDAsIk02WGtHYiIpLEE9KCk9Pih7aWNvbldpZHRoOiIxMDAlIixpY29uSGVpZ2h0OiIxMDAlIixhZzp0Py4oKX0pO3JldHVybiBfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5RTihhPy4oKSkmJms/LigpJiZiPy4oKSE9PXZvaWQgMCYmT2JqZWN0LnZhbHVlcyhBaGEpLmluY2x1ZGVzKFFOKGE/LigpKXx8IiIpfSwoKT0+Xy5LKF8udE0se2FuaW1hdGVkSWNvblR5cGU6eixhY3RpdmU6KCk9PiEhYj8uKCksSGM6bCxzaXplOnYsSEE6KCk9Pl8uSyhfLnVPLHtpY29uOmEsYWN0aXZlOmIsR2U6ITF9KX0pKSxfLksoXy5DRSx7d2hlbjooKT0+UU4oYT8uKCkpJiZFKCl9LCgpPT5fLksoImMzLWljb24iLHtjbGFzczpjLHN0eWxlOmQscm9sZTpoLCJkYXRhLXNlbGVjdGVkIjplLCJkYXRhLWRpc2FibGVkIjpmLAoiZmlsbC1pY29uIjooKT0+Yj8uKCk9PT0hMCxpZDpyLCJpY29uLXN0YXRlLW91dGxpbmUiOigpPT5iPy4oKT09PSExPyIiOnZvaWQgMCwiaWNvbi1zdGF0ZS1maWxsZWQiOigpPT5iPy4oKT09PSEwPyIiOnZvaWQgMCwiYXJpYS1oaWRkZW4iOm0sImFyaWEtZXhwYW5kZWQiOm4sImFyaWEtbGFiZWwiOnB9LF8uSyhfLllMLHtkYXRhOigpPT5FKCksb3B0aW9uczpBfSkpKSl9LCJmYiIpO18udU8uaWRvbUNvbXBhdD0hMDtfLkwoKHtuYW1lOmEsbGFiZWw6YixvbmNsaWNrOmMsYnE6ZCxyb2xlOmV9KT0+Xy5LKCJkaXYiLHtjbGFzczoiaWNvbi1idXR0b24iLHJvbGU6ZSwiYXJpYS1sYWJlbCI6YiwiYXJpYS1oYXNwb3B1cCI6ZCwib246Y2xpY2siOmN9LF8uSyhfLnVPLHtpY29uOmF9KSksImdiIikuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvbmNsaWNrOiEwfX07CnZhciBKaGE9ImFsaWduX2xlZnQgYXJyb3dfbGVmdCBmbGFnIGhvbWUgbG9nb193aXRoX3RleHQgbWVzc2FnZV9idWJibGVfYWxlcnQgbWljIG9wZW5fbmV3IG92ZXJmbG93X2hvcml6b250YWwgb3ZlcmZsb3dfdmVydGljYWwgcGxheV9jaXJjbGVfc2hvcnRzIHNlYXJjaCBzaG9ydHNfY29tbWVudCBzaG9ydHNfc2hhcmUgc2hvcnRzX3RodW1ic19kb3duIHNob3J0c190aHVtYnNfdXAgd2F2ZWZvcm0geF9tYXJrIHlvdXR1YmVfc2hvcnRzIHlvdXR1YmVfc2hvcnRzX2JyYW5kXzI0Ii5zcGxpdCgiICIpLEloYT0iYWxlcnRfYnViYmxlIGFycm93X2xlZnQgYXJyb3dfdXBfcmlnaHQgZmxhZyBob21lIGxvZ29fd2l0aF90ZXh0IG1pYyBvdmVyZmxvd19ob3Jpem9udGFsIG92ZXJmbG93X3ZlcnRpY2FsIHBsYXlfY2lyY2xlX3Nob3J0cyBzZWFyY2ggc2hhcmUgc2hvcnRzIHRleHRfYWxpZ25fbGVmdCB0ZXh0X2J1YmJsZSB0aHVtYl9kb3duIHRodW1iX3VwIHdhdmVmb3JtIHggeW91dHViZV9zaG9ydHNfYnJhbmRfMjQiLnNwbGl0KCIgIik7Xy52Tz1fLkwoYT0+e3ZhciB7aWNvblR5cGU6YixsYWJlbDpjLGFyaWFMYWJlbDpkLGFyaWFQcmVzc2VkOmUsZGlzYWJsZWQ6ZixvbmNsaWNrOmgsc3R5bGU6ayxWbDpsLExtOm0sT3g6bixiYXNpY0NvbG9yUGFsZXR0ZURhdGE6cCxkYXRhOnIsYXJpYUhpZGRlbjp0fT1fLkRDKGEse2ljb25UeXBlOiIiLFZsOiExLExtOiIiLE94OiExLGFyaWFIaWRkZW46ITF9KTtfLnVFKCJkaXYiLHY9PntyPy4oKSYmbWhhKHYscj8uKCkpfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJidXR0b24td2l0aC1pY29uIGJ1dHRvbi1yZW5kZXJlciBjb21wYWN0IixtKSxzdHlsZTooKT0+e3ZhciB2O2lmKHY9cD8uKCkpe3ZhciB6PSIiLEU7Zm9yKEUgaW4gdil7aWYoIXYuaGFzT3duUHJvcGVydHkoRSkpY29udGludWU7bGV0IEE9dltFXSxGPUUuaW5jbHVkZXMoImZvcmVncm91bmQiKT8iY29sb3IiOlN0cmluZyhFKS5yZXBsYWNlKC8oW0EtWl0pL2csIi0kMSIpLnRvTG93ZXJDYXNlKCk7QSYmCih6Kz1gJHtGfToke18uTkQoQSl9O2ApfXY9en1lbHNlIHY9dm9pZCAwO3JldHVybiB2Py50b1N0cmluZygpfSwiZGF0YS1zdHlsZSI6KCk9PnR5cGVvZiBrPy4oKT09PSJzdHJpbmciP2soKTprPy4oKT8uc3R5bGVUeXBlLCJkYXRhLWljb24tb25seSI6KCk9PiFjPy4oKSwiaXMtYnVzeSI6bCwiYXJpYS1idXN5IjpsLCJhcmlhLWhpZGRlbiI6dH0sXy5LKCJidXR0b24iLHtjbGFzczoiYnV0dG9uLXdpdGgtaWNvbi1idXR0b24iLCJvbjpjbGljayI6ZnVuY3Rpb24odil7aD8uKHYpO3Yuc3RvcFByb3BhZ2F0aW9uKCl9LGRpc2FibGVkOmYsImFyaWEtbGFiZWwiOigpPT5kPy4oKXx8IiIsImFyaWEtcHJlc3NlZCI6KCk9PmU/LigpPz92b2lkIDB9LF8uSygiZGl2Iix7Y2xhc3M6ImJ1dHRvbi13aXRoLWljb24taW5uZXIifSxfLksoXy5PLHtBOigpPT4hbj8uKCkmJmIoKSx0aGVuOigpPT5fLksoXy51Tyx7aWNvbjpiLGNsYXNzTmFtZToiYnV0dG9uLXJlbmRlcmVyLWljb24ifSl9KSxfLksoImRpdiIsCntjbGFzczoiYnV0dG9uLXJlbmRlcmVyLXRleHQifSxfLksoXy5PLHtBOmMsdGhlbjooKT0+Xy5LKF8uSUose2RhdGE6Y30pfSkpLF8uSyhfLk8se0E6KCk9Pm4oKSYmYigpLHRoZW46KCk9Pl8uSyhfLnVPLHtpY29uOmIsY2xhc3NOYW1lOiJidXR0b24tcmVuZGVyZXItaWNvbiJ9KX0pLF8uSyhfLk8se0E6bCx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJidXR0b24td2l0aC1pY29uLXNwaW5uZXIgc3Bpbm5lciJ9KX0pKSkpfSwiaWIiKTtfLkhDW18uUkFbImRlZmF1bHQiXV09b2hhOyhmdW5jdGlvbigpe3ZhciBhPV8uY0I7Xy5jQj1iPT57YT8uKGIpO18uT0UoKCk9Pntmb3IobGV0IGM9MDtjPGIubGVuZ3RoO2MrKylUTihiW2NdKX0pfX0pKCk7Xy53Tz1fLkwoKHtjaGlsZHJlbjphLG9uY2xpY2s6Yixyb2xlOmMsSHk6ZH0pPT57dmFyIGU9Xy51RSgiYnV0dG9uIik7Xy5VSigoKT0+e2Q/LihlLnZhbHVlKX0pO3JldHVybiBfLksoInl0bS1tZW51LWl0ZW0iLG51bGwsXy5LKCJidXR0b24iLHtjbGFzczoibWVudS1pdGVtLWJ1dHRvbiIsZWw6ZSwib246Y2xpY2siOmIscm9sZTpjfSxhKSl9LCJqYiIpO18ud08uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvbmNsaWNrOiEwLEh5OiEwfX07Xy5MKCh7dXJsOmEsbEs6YixjaGlsZHJlbjpjfSk9Pl8uSygieXRtLW1lbnUtaXRlbSIsbnVsbCxfLksoImEiLHtocmVmOmEsY2xhc3M6Im1lbnUtaXRlbS1idXR0b24iLHRhcmdldDooKT0+Yj8uKCk/Il9ibGFuayI6dm9pZCAwfSxjKSksImtiIikuaWRvbUNvbXBhdD0hMDsKXy5MKCh7Y29tbWFuZDphLGNoaWxkcmVuOmJ9KT0+Xy5LKCJ5dG0tbWVudS1pdGVtIixudWxsLF8uSyhfLm5ILHtjb21tYW5kOigpPT5hKCk/P3ZvaWQgMCxjbGFzc05hbWU6Im1lbnUtaXRlbS1idXR0b24ifSxiKSksImxiIikuaWRvbUNvbXBhdD0hMDt2YXIgVk4sV04sW1lOLHBoYV09Xy5KKG51bGwsdm9pZCAwLCJHQ0tnOGUiKSx4Tz1fLkwoKHtEaDphfSk9Pl8uSyhfLndPLG51bGwsXy5LKCJkaXYiLHtjbGFzczoibWVudS1jYW5jZWwtYnV0dG9uIn0sXy5LKF8uTUQse2ljb246KCk9PmEoKS5UZCxjbGFzc05hbWU6Im1lbnUtY2FuY2VsLWljb24ifSksKCk9PmEoKS5jYW5jZWxCdXR0b25MYWJlbCkpLCJtYiIpLFhOPV8uTCgoe0RoOmEsY2hpbGRyZW46Yn0pPT57dmFyIGM9Xy51RSgiZGl2IiwoKT0+e30pO3JldHVybiBfLksoImRpdiIse2VsOmMsY2xhc3M6Xy5QKCJtZW51LWNvbnRlbnQiLHsibWVudS1ib3R0b20iOigpPT5hKCkubnEsIm1lbnUtc2hvdy1pY29ucyI6KCk9PmEoKS5IYXx8YSgpLm5xfHxhKCkuaXNGdWxsV2lkdGgsInJvdW5kZWQtY29udGFpbmVyIjooKT0+IWEoKS5pc0Z1bGxXaWR0aH0pLCJvbjpjbGljayI6ZnVuY3Rpb24oKXthKCkuU3d8fGEoKS5FSXx8Xy5VTigpfSxyb2xlOigpPT5hKCkuaXNGdWxsV2lkdGg/CnZvaWQgMDoiZGlhbG9nIiwiYXJpYS1tb2RhbCI6KCk9PiFhKCkuaXNGdWxsV2lkdGgsImFyaWEtbGFiZWxsZWRieSI6KCk9PmEoKS5WSH0sYixfLksoXy5PLHtBOigpPT4hYSgpLlN3LHRoZW46KCk9Pl8uSyhfLk8se0E6KCk9PiEhYSgpLm5xLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6ImJvdHRvbS1tZW51LWNhbmNlbCJ9LF8uSyh4Tyx7RGg6YX0pKSxXOigpPT5fLksoeE8se0RoOmF9KX0pfSkpfSwibmIiKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGUtY2hhbmdlIixhTyk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLGFPKTt2YXIgeU87eU89Xy5MKGE9Pnt2YXIgYj1hLmNoaWxkcmVuLGM9Xy5adHx8dm9pZCAwLGQ9Xy5tRygpO3JldHVybiBfLksoInl0bS1tZW51IixudWxsLGIoe29uQ2xpY2s6ZT0+e2Euc3RvcFByb3BhZ2F0aW9uPy4oKSYmZS5zdG9wUHJvcGFnYXRpb24oKTthLnByZXZlbnREZWZhdWx0Py4oKSYmZS5wcmV2ZW50RGVmYXVsdCgpO3FoYSh7Y29udGVudDphLmNvbnRlbnQsY2FuY2VsQnV0dG9uTGFiZWw6YS5jYW5jZWxCdXR0b25MYWJlbD8uKCksVGQ6YS5UZD8uKCksY2xhc3NOYW1lOmEuZGY/LigpLGZvY3VzT25DbG9zZTplLmN1cnJlbnRUYXJnZXQsSGE6YS5IYT8uKCksaXNEaXNhYmxlZDphLmlzRGlzYWJsZWQ/LigpLGRpc2FibGVkQ29tbWFuZDphLmRpc2FibGVkQ29tbWFuZD8uKCksb3duZXI6YyxGQTpkfSl9fSkpfSwicGIiKTsKXy56Tz1fLkwoYT0+Xy5LKHlPLHsuLi5hLGNvbnRlbnQ6YS5jaGlsZHJlbn0sKHtvbkNsaWNrOmJ9KT0+Xy5LKF8uTyx7QTooKT0+YS5idXR0b25PdmVycmlkZXM/LigpLHRoZW46Yz0+Xy5LKF8uSksse2RhdGE6KCk9Pih7b25UYXA6YixpY29uUG9zaXRpb246Imljb24tb25seSIsc3R5bGU6Im1vbm8iLHR5cGU6InRleHQiLHNpemU6Ik0iLHN0YXRlOiJhY3RpdmUiLGFjY2Vzc2liaWxpdHlMYWJlbDphLmxhYmVsPy4oKSwuLi5jKCl9KSxpY29uTmFtZTphLmljb25UeXBlfSksVzooKT0+Xy5LKF8udE8se25hbWU6YS5pY29uVHlwZSxhcmlhTGFiZWw6YS5sYWJlbCxjbGFzc05hbWU6Xy5QKGEuRmgse3NtYWxsOmEubGJ9KSxvbmNsaWNrOmIsYnE6ITB9KX0pKSwicWIiKTtfLnpPLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7Y2hpbGRyZW46ITB9fTsKXy5NaGE9Xy5MKGE9Pl8uSyh5Tyx7Li4uYSxjb250ZW50OmEuY2hpbGRyZW59LCh7b25DbGljazpifSk9Pl8uSyhfLk8se0E6KCk9PmEuYnV0dG9uT3ZlcnJpZGVzPy4oKSx0aGVuOmM9Pl8uSyhfLkpLLHtkYXRhOigpPT4oe29uVGFwOmIsaWNvblBvc2l0aW9uOiJpY29uLXdpdGgtbGFiZWwiLHN0eWxlOiJtb25vIix0eXBlOiJ0ZXh0IixzaXplOiJNIixzdGF0ZToiYWN0aXZlIixhY2Nlc3NpYmlsaXR5TGFiZWw6YS5hcmlhTGFiZWw/LigpLFdhOmEubGFiZWw/LigpP18uQUYoYS5sYWJlbCgpKTp2b2lkIDAsLi4uYygpfSksaWNvbk5hbWU6YS5pY29uVHlwZX0pLFc6KCk9Pl8uSyhfLnZPLHtpY29uVHlwZTphLmljb25UeXBlLGxhYmVsOmEubGFiZWwsYXJpYUxhYmVsOmEuYXJpYUxhYmVsLGFyaWFQcmVzc2VkOiExLG9uY2xpY2s6YixzdHlsZTphLnN0eWxlLFZsOmEuVmwsTG06YS5hSX0pfSkpLCJyYiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgT2hhLFBoYSxCTyxRaGEsUmhhLENPLFNoYSxHTyxITyxWaGEsVWhhLFdoYSxYaGEsWWhhLFpoYSxhaWEsUE8sYmlhLGNpYSxkaWEsZWlhLGZpYSxoaWEsZ2lhLFdPLGlpYSxYTyxqaWEsa2lhLGVQLGhQLGxQLG1pYSxuaWEsa1AsalAsTmhhLFRoYTtPaGE9ZnVuY3Rpb24oYSl7Zm9yKGxldCBiIG9mIE9iamVjdC52YWx1ZXMoTmhhKSlpZihfLmlxKGIpPT09YSlyZXR1cm4hMDtyZXR1cm4hMX07ClBoYT1mdW5jdGlvbihhLGIsYyxkLGUsZixoLGssbCl7dmFyIG09KDAsXy5EdykoKTtmPW5ldyBfLlR3KHt2ZVR5cGU6Yix5b3V0dWJlRGF0YTpmLGpzcGJZb3V0dWJlRGF0YTp2b2lkIDB9KTtsPV8uV3coe2F1dG9tYXRlZExvZ0V2ZW50U291cmNlOmx9LG0pO2UmJihsLmN0dEF1dGhJbmZvPWUpO2U9e2NzbjptLHBhZ2VWZTpmLmdldEFzSnNvbigpfTtfLngoImV4cGVjdGF0aW9uX2xvZ2dpbmciKSYmayYmay5zY3JlZW5DcmVhdGVkTG9nZ2luZ0V4cGVjdGF0aW9ucyYmKGUuc2NyZWVuQ3JlYXRlZExvZ2dpbmdFeHBlY3RhdGlvbnM9ay5zY3JlZW5DcmVhdGVkTG9nZ2luZ0V4cGVjdGF0aW9ucyk7YyYmYy52aXN1YWxFbGVtZW50PyhlLmltcGxpY2l0R2VzdHVyZT17cGFyZW50Q3NuOmMuY2xpZW50U2NyZWVuTm9uY2UsZ2VzdHVyZWRWZTpjLnZpc3VhbEVsZW1lbnQuZ2V0QXNKc29uKCl9LGgmJihlLmltcGxpY2l0R2VzdHVyZS5nZXN0dXJlVHlwZT1oKSk6YyYmXy5JcChuZXcgXy5YaigibmV3U2NyZWVuKCkgcGFyZW50IGVsZW1lbnQgZG9lcyBub3QgaGF2ZSBhIFZFIC0gcm9vdFZlIiwKYikpO2QmJihlLmNsb25lQ3NuPWQpO2E/Xy5DcCgic2NyZWVuQ3JlYXRlZCIsZSxhLGwpOl8uRXAoInNjcmVlbkNyZWF0ZWQiLGUsbCk7Xy5zbShfLkN3LG5ldyBfLkJ3KG0pKTtfLkV3LmNsZWFyKCk7Xy5Gdy5jbGVhcigpO18uR3cuY2xlYXIoKTtyZXR1cm4gbX07Xy5BTz1mdW5jdGlvbihhLGIsYyxkLGUsZixoKXtfLnd4KGEsYixjLGUsaCl9O0JPPWZ1bmN0aW9uKGEsYil7YS5LLmhhcyhiKXx8YS5LLnNldChiLFtdKTtyZXR1cm4gYS5LLmdldChiKX07ClFoYT1mdW5jdGlvbihhLGIsYz0wKXtfLlZpKCgpPT57Yi50aGVuKGQ9PnthLmouaGFzKGMpJiZhLkImJmEuQigpO3ZhciBlPV8uaXEoYyksZj1fLlZ3KGMpO2lmKGUmJmYpe3ZhciBoPXthdXRvbWF0ZWRMb2dFdmVudFNvdXJjZTozfTtkPy5yZXNwb25zZT8udHJhY2tpbmdQYXJhbXMmJl8uYngoYS5jbGllbnQsZSxmLF8uVXcoZC5yZXNwb25zZS50cmFja2luZ1BhcmFtcyksITEsaCk7ZD8ucGxheWVyUmVzcG9uc2U/LnRyYWNraW5nUGFyYW1zJiZfLmJ4KGEuY2xpZW50LGUsZixfLlV3KGQucGxheWVyUmVzcG9uc2UudHJhY2tpbmdQYXJhbXMpLCExLGgpfX0pfSkoKX07UmhhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8YS5ELmxlbmd0aDtiKyspe3ZhciBjPWEuRFtiXTt0cnl7YygpfWNhdGNoKGQpe18uR3AoZCl9fWEuRC5sZW5ndGg9MDtmb3IoYj0wO2I8YS5VLmxlbmd0aDtiKyspe2M9YS5VW2JdO3RyeXtjKCl9Y2F0Y2goZCl7Xy5HcChkKX19fTsKQ089ZnVuY3Rpb24oYSxiLGMsZD17fSl7dmFyIGU9dm9pZCAwO2QubGF5ZXJ8fChkLmxheWVyPTApO2U9ZC5wYXJlbnRMYXllciE9PXZvaWQgMD9kLnBhcmVudExheWVyOmQubGF5ZXI7dmFyIGY9Xy5pcShlKTtlPV8uVncoZSk7dmFyIGg9Y3x8ZSxrO2gmJihkLnBhcmVudENzbiE9PXZvaWQgMD9rPXtjbGllbnRTY3JlZW5Ob25jZTpkLnBhcmVudENzbix2aXN1YWxFbGVtZW50Omh9OmYmJmYhPT0iVU5ERUZJTkVEX0NTTiImJihrPXtjbGllbnRTY3JlZW5Ob25jZTpmLHZpc3VhbEVsZW1lbnQ6aH0pKTt2YXIgbCxtPV8udygiRVZFTlRfSUQiKTtmPT09IlVOREVGSU5FRF9DU04iJiZtJiYobD17c2VydmxldERhdGE6e3NlcmlhbGl6ZWRTZXJ2bGV0RXZlbnRJZDptfX0pO18ueCgiY29tYmluZV92ZV9ncmFmdHMiKSYmZiYmXy5reChhLGYpO18ueCgibm9fY2xpZW50X3ZlX2F0dGFjaF91bmxlc3Nfc2hvd24iKSYmaCYmZiYmXy5jeChoLGYpO3RyeXt2YXIgbj1QaGEoYS5jbGllbnQsYixrLApkLnRwLGQuY3R0QXV0aEluZm8sbCxkLmltcGxpY2l0R2VzdHVyZVR5cGUsZC5sb2dnaW5nRXhwZWN0YXRpb25zLGQuYXV0b21hdGVkTG9nRXZlbnRTb3VyY2UpfWNhdGNoKHIpe18uY3cocix7R0s6Yixyb290VmU6ZSxxSzpjLG5JOmYscEs6ayx0cDpkLnRwfSk7Xy5HcChyKTtyZXR1cm59Xy5tcShuLGIsZC5sYXllcixkLmN0dEF1dGhJbmZvKTtmJiZmIT09IlVOREVGSU5FRF9DU04iJiZlJiYhT2hhKGYpJiYoXy52eChhLmNsaWVudCxmLGUsITApLGEuby5kZWxldGUoZikpO2I9Qk8oYSxkLmxheWVyfHwwKTtiLmxlbmd0aD4wJiYhYltiLmxlbmd0aC0xXS5jc24mJihiW2IubGVuZ3RoLTFdLmNzbj1ufHwiIik7Xy56cSh7Y2xpZW50U2NyZWVuTm9uY2U6bn0pO18uRHgoKTtfLlZpKF8uQngoKS5LKS5iaW5kKF8uQngoKSkoKTt2YXIgcD1fLlZ3KGQubGF5ZXIpO2YmJmYhPT0iVU5ERUZJTkVEX0NTTiImJnAmJl8ueCgibXVzaWNfd2ViX21hcmtfcm9vdF92aXNpYmxlIikmJl8uVmkoXy5BTykodm9pZCAwLApuLHAsdm9pZCAwLHZvaWQgMCx2b2lkIDApO2Euai5kZWxldGUoZC5sYXllcnx8MCk7YS5CPXZvaWQgMDthLmhhLmdldChkLmxheWVyKT8uZm9yRWFjaCgocix0KT0+e3I/Xy5peChhLHQscixkLmxheWVyKTpwJiZfLml4KGEsdCxwLGQubGF5ZXIpfSk7UmhhKGEpfTtTaGE9ZnVuY3Rpb24oYSxiLGMsZD17fSl7YS5qLmFkZChkLmxheWVyfHwwKTthLkI9KCk9PntDTyhhLGIsYyxkKTt2YXIgZT1fLlZ3KGQubGF5ZXIpO2lmKGUpe2xldCBmPV8uaXEoZC5sYXllcik7Zm9yKGxldCBoIG9mIGEuWSl7bGV0IGs9aFswXSxsPWhbMV18fGU7Zj9fLmp4KGEsayxsLGQubGF5ZXIsZik6Xy5peChhLGssbCxkLmxheWVyKX1mb3IobGV0IGggb2YgYS5NKV8ubXgoYSxoWzBdLGhbMV0pfX07Y3x8Xy5pcShkLmxheWVyKXx8YS5CKCk7aWYoZC5mbClmb3IobGV0IGUgb2YgZC5mbClRaGEoYSxlLGQubGF5ZXIpO2Vsc2UgXy5HcChFcnJvcigiTmIiKSl9OwpfLkRPPWZ1bmN0aW9uKGEsYixjLGQ9e30pe18uVmkoKCk9PntUaGEuaW5jbHVkZXMoYil8fChfLklwKG5ldyBfLlhqKCJjcmVhdGVDbGllbnRTY3JlZW4oKSBjYWxsZWQgd2l0aCBhIG5vbi1wYWdlIFZFIixiKSksYj04Mzc2OSk7aWYoIWQuaXNIaXN0b3J5TmF2aWdhdGlvbil7bGV0IGU9ZC5sYXllcnx8MDthLmdhLnNldChlLFtdKTtCTyhhLGUpLnB1c2goe3Jvb3RWZTpiLGtleTpkLmtleXx8IiJ9KX1hLlk9W107YS5NPVtdO2QuZmw/U2hhKGEsYixjLGQpOkNPKGEsYixjLGQpfSkoKX07Xy5FTz1mdW5jdGlvbihhLGIsYyxkKXtiPV8uZGIoYik7cmV0dXJuIGIhPT12b2lkIDA/YS5vcGVuKGIsYyxkKTpudWxsfTtfLkZPPWZ1bmN0aW9uKGEsYixjKXtjPWMhPW51bGw/Ij0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYykpOiIiO3JldHVybiBfLlNiKGEsYitjKX07R089ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5ReShfLmVkKGEsYikpPz8hMX07CkhPPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5XeChhLGIsXy54dyhjKSwhMSl9O18uSU89ZnVuY3Rpb24oYSxiKXt2YXIgYztfLnViKGEsZD0+e2M9YltkXTtyZXR1cm4hIWN9KTtyZXR1cm4gY307Xy5KTz1mdW5jdGlvbihhLGIsYz0wKXsoYz1fLmlxKGMpKSYmYSYmXy5WaShfLkFPKSh2b2lkIDAsYyxhLHZvaWQgMCxiLHZvaWQgMCl9O18uS089ZnVuY3Rpb24oKXtyZXR1cm4hIV8udygiTVdFQl9GSVJFRk9YX1lUX0xBVU5DSEVSIil9O18uTE89ZnVuY3Rpb24oKXtyZXR1cm4gXy5rTT9fLmtNOl8ubE0oKX07Xy5NTz1mdW5jdGlvbihhLGI9NSxjKXtpZihiIT09MCl7dmFyIGQ9dHlwZW9mIGE9PT0iZnVuY3Rpb24iP2EoKTpkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGEpO2Q/Yz8ucmw/Xy5kTihkKTpkLmZvY3VzKCk6c2V0VGltZW91dCgoKT0+e18uTU8oYSxiLTEsYyl9LDUwMCl9fTtWaGE9ZnVuY3Rpb24oKXt2YXIgYT1VaGEoKTtyZXR1cm4gSE8oYSw3LCEwKX07ClVoYT1mdW5jdGlvbigpe3ZhciBhPW5ldyBOTzthPUhPKGEsNSwhMCk7YT1ITyhhLDIsITApO2E9SE8oYSw0LCExKTthPUhPKGEsOCwhMCk7cmV0dXJuIEhPKGEsOSwhMCl9O1doYT1mdW5jdGlvbigpe3ZhciBhPVZoYSgpO3JldHVybiBITyhhLDEwLCEwKX07WGhhPWZ1bmN0aW9uKCl7dmFyIGE9V2hhKCk7cmV0dXJuIEhPKGEsMTIsITApfTtZaGE9ZnVuY3Rpb24oKXt2YXIgYT1YaGEoKTtyZXR1cm4gSE8oYSwxMywhMSl9O1poYT1mdW5jdGlvbigpe3ZhciBhPVloYSgpO3JldHVybiBITyhhLDE0LCEwKX07YWlhPWZ1bmN0aW9uKGEpe3JldHVybiAkaGEuc29tZShiPT5iLnRlc3QoYSkpfTsKUE89ZnVuY3Rpb24oYSxiKXt7dmFyIGM9YS5mb3JtQ29udGVudD8ubG9jYWxlO2xldCBkPWM/LnNwbGl0KCItIilbMF07Yz1jJiZPTy5pbmNsdWRlcyhjKT9jOmQmJk9PLmluY2x1ZGVzKGQpP2Q6dm9pZCAwfWM9KGM/PyJlbiIpLnJlcGxhY2VBbGwoIi0iLCJfIikudG9Mb3dlckNhc2UoKTthPWEuaW5pdGlhbGl6YXRpb25EYXRhPy51c2VOaWdodGx5UmVsZWFzZT8ibmlnaHRseSI6ImxpdmUiO3JldHVybiBiPy5nZXRFbmFibGVBbG9oYUJpbmFyeVNwbGl0Py4oKT8oMCxfLll4KWBodHRwczovL3d3dy5nc3RhdGljLmNvbS91c2Vydm9pY2UvZmVlZGJhY2svY2xpZW50L3dlYi8ke2F9L21haW5fbGlnaHRfYmluYXJ5LmpzYDooMCxfLll4KWBodHRwczovL3d3dy5nc3RhdGljLmNvbS91c2Vydm9pY2UvZmVlZGJhY2svY2xpZW50L3dlYi8ke2F9L21haW5fYmluYXJ5X18ke2N9LmpzYH07CmJpYT1mdW5jdGlvbihhLGIsYyxkKXtpZihRTyYmUk89PT1iKXJldHVybiBRTztSTz1iO3ZhciBlPVBPKGEsZCk7cmV0dXJuIFFPPWIuZmVlZGJhY2tWMkdsb2JhbE9iamVjdD9Qcm9taXNlLnJlc29sdmUoYi5mZWVkYmFja1YyR2xvYmFsT2JqZWN0KTpuZXcgUHJvbWlzZSgoZixoKT0+e3ZhciBrPV8uQ2QoIlNDUklQVCIpO18ub2IoayxlKTtrLm9ubG9hZD0oKT0+e2IuZmVlZGJhY2tWMkdsb2JhbE9iamVjdD9mKGIuZmVlZGJhY2tWMkdsb2JhbE9iamVjdCk6aChFcnJvcigiR2QiKSl9O2sub25lcnJvcj0oKT0+e2goRXJyb3IoIkhkYCIrZS50b1N0cmluZygpKSl9O2MuYm9keS5hcHBlbmRDaGlsZChrKX0pfTsKY2lhPWZ1bmN0aW9uKGEsYixjLGQpe2lmKFNPJiZUTz09PWIpcmV0dXJuIFNPO1RPPWI7dmFyIGU9UE8oYSxkKTtyZXR1cm4gU089Yi5mZWVkYmFja1YyR2xvYmFsT2JqZWN0P1Byb21pc2UucmVzb2x2ZShiLmZlZWRiYWNrVjJHbG9iYWxPYmplY3QpOm5ldyBQcm9taXNlKChmLGgpPT57dmFyIGs9Xy5DZCgiU0NSSVBUIik7Xy5vYihrLGUpO2sub25sb2FkPSgpPT57Yi5mZWVkYmFja1YyR2xvYmFsT2JqZWN0P2YoYi5mZWVkYmFja1YyR2xvYmFsT2JqZWN0KTpoKEVycm9yKCJHZCIpKX07ay5vbmVycm9yPSgpPT57aChFcnJvcigiSGRgIitlLnRvU3RyaW5nKCkpKX07Yy5ib2R5LmFwcGVuZENoaWxkKGspfSl9O2RpYT1hc3luYyBmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1EYXRlLm5vdygpO2E9YXdhaXQgKGF3YWl0IGJpYShhLGMsZCxiKSkuaW5pdGlhbGl6ZUZlZWRiYWNrQ2xpZW50QXN5bmMoYSxlLGIpO2EuaW5pdGlhdGVBbG9oYSgpO3JldHVybiBhfTsKZWlhPWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPURhdGUubm93KCk7YT1hd2FpdCAoYXdhaXQgY2lhKGEsYyxkLmRvY3VtZW50LGIpKS5pbml0aWFsaXplRmVlZGJhY2tDbGllbnRBc3luYyhhLGUsYixkKTthLmluaXRpYXRlQWxvaGEoKTtyZXR1cm4gYX07CmZpYT1hc3luYyBmdW5jdGlvbihhLGIsYyl7dmFyIGQ9Y3x8Xy51O2lmKGI/LmdldEVuYWJsZUFsb2hhQmluYXJ5U3BsaXQ/LigpKXtpZihkLmlzRm9ybU9wZW5lZCl0aHJvdyBuZXcgVU87ZC5pc0Zvcm1PcGVuZWQ9ITA7YS5jYWxsYmFja3M9YS5jYWxsYmFja3N8fHt9O2xldCBlPWEuY2FsbGJhY2tzLm9uQ2xvc2V8fCgoKT0+e30pO2EuY2FsbGJhY2tzLm9uQ2xvc2U9Zj0+e2QuaXNGb3JtT3BlbmVkPSExO2UoZil9O3RyeXtyZXR1cm4gZWlhKGEsYixkLGQpfWNhdGNoKGYpe3Rocm93IGQuaXNGb3JtT3BlbmVkPSExLGY7fX1lbHNle2lmKGQuaXNGb3JtT3BlbmVkKXRocm93IG5ldyBVTztkLmlzRm9ybU9wZW5lZD0hMDthLmNhbGxiYWNrcz1hLmNhbGxiYWNrc3x8e307bGV0IGU9YS5jYWxsYmFja3Mub25DbG9zZXx8KCgpPT57fSk7YS5jYWxsYmFja3Mub25DbG9zZT1mPT57ZC5pc0Zvcm1PcGVuZWQ9ITE7ZShmKX07dHJ5e3JldHVybiBkaWEoYSxiLGQsZC5kb2N1bWVudCl9Y2F0Y2goZil7dGhyb3cgZC5pc0Zvcm1PcGVuZWQ9CiExLGY7fX19O2hpYT1hc3luYyBmdW5jdGlvbihhLGIpe3JldHVybiBuZXcgUHJvbWlzZSgoYyxkKT0+e051bWJlci5pc0ludGVnZXIoTnVtYmVyKGEpKSYmTnVtYmVyKGEpPjA/KGQ9Z2lhKGI/PyIiKSsiL2Fsb2hhX2Zvcm1fcHJvcGVydGllcz9wcm9kdWN0SWQ9IithLF8ubHkoZCxlPT57ZT1lLnRhcmdldDt2YXIgZj1udWxsO3RyeXt2YXIgaD1KU09OLGs9aC5zdHJpbmdpZnk7aWYoZS5yYSl7dmFyIGw9ZS5yYS5yZXNwb25zZVRleHQ7bC5pbmRleE9mKCIpXX0nXG4iKT09MCYmKGw9bC5zdWJzdHJpbmcoNSkpO3ZhciBtPV8uRXYobCl9ZWxzZSBtPXZvaWQgMDtmPV8uWHgoVk8say5jYWxsKGgsbSkpfWNhdGNoKG4pe2s9bmV3IFZPLG09WmhhKCksbT1ITyhtLDE1LCEwKSxtPUhPKG0sMjAsITEpLG09SE8obSwyNSwhMSksbT1ITyhtLDI2LCExKSxmPV8uS3coaywxLG0pfWMoZil9LCJHRVQiLCIiLHt9LDJFMywhMCkpOmQoRXJyb3IoIklkYCIrYSkpfSl9OwpnaWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGFpYShhKT9hOiJodHRwczovL3d3dy5nb29nbGUuY29tL3Rvb2xzL2ZlZWRiYWNrIn07CldPPWZ1bmN0aW9uKGEsYixjLGQpe2EudGltZU9mU3RhcnRDYWxsPShuZXcgRGF0ZSkuZ2V0VGltZSgpO3ZhciBlPWN8fF8udSxmPWUuZG9jdW1lbnQsaD1hLm5vbmNlfHxfLmliKGUuZG9jdW1lbnQpO2gmJiFhLm5vbmNlJiYoYS5ub25jZT1oKTtpZihhLmZsb3c9PSJoZWxwIil7dmFyIGs9Xy5zYSgiZG9jdW1lbnQubG9jYXRpb24uaHJlZiIsZSk7IWEuaGVscENlbnRlckNvbnRleHQmJmsmJihhLmhlbHBDZW50ZXJDb250ZXh0PWsuc3Vic3RyaW5nKDAsMTIwMCkpO2s9ITA7aWYoYiYmSlNPTiYmSlNPTi5zdHJpbmdpZnkpe2xldCBsPUpTT04uc3RyaW5naWZ5KGIpOyhrPWwubGVuZ3RoPD0xMjAwKSYmKGEucHNkSnNvbj1sKX1rfHwoYj17aW52YWxpZFBzZDohMH0pfWI9W2EsYixjLGRdO2UuR09PR0xFX0ZFRURCQUNLX1NUQVJUX0FSR1VNRU5UUz1iO2M9YS5mZWVkYmFja1NlcnZlclVyaXx8Ii8vd3d3Lmdvb2dsZS5jb20vdG9vbHMvZmVlZGJhY2siO2lmKGQ9ZS5HT09HTEVfRkVFREJBQ0tfU1RBUlQpZC5hcHBseShlLApiKTtlbHNle2U9YysiL2xvYWQuanM/Ijtmb3IobGV0IGwgaW4gYSliPWFbbF0sYj09bnVsbHx8Xy5BYShiKXx8KGUrPWVuY29kZVVSSUNvbXBvbmVudChsKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpKyImIik7YT1fLnhkKGYpLmNyZWF0ZUVsZW1lbnQoIlNDUklQVCIpO2gmJmEuc2V0QXR0cmlidXRlKCJub25jZSIsaCk7Xy5vYihhLF8uVGEoZSkpO2YuYm9keS5hcHBlbmRDaGlsZChhKX19OwppaWE9YXN5bmMgZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9YS5mbG93PT09InN1Ym1pdCIsZj0hIV8uZHIsaD10eXBlb2Ygd2luZG93IT09InVuZGVmaW5lZCImJiEhKHdpbmRvdy5fX2thcm1hX198fHdpbmRvdy5qYXNtaW5lfHx3aW5kb3cubW9jaGF8fHdpbmRvdy5qZXN0KTtpZihlJiZoKVdPKGEsYixjLGQpO2Vsc2V7aD0oYXdhaXQgaGlhKGEucHJvZHVjdElkLGEuZmVlZGJhY2tTZXJ2ZXJVcmkpKT8udigpO2Y9IWZ8fGg/LmdldEVuYWJsZU13ZWIoKTt2YXIgaz0hYS50aW55Tm9Qb2ludGVyfHxoPy5nZXRFbmFibGVUaW55Tm9Qb2ludGVyKCk7Zj0hZSYmKCFofHxoLmdldEFsb2hhQXV0b0dhUm9sbG91dCgpJiZmJiZrKTtlPWUmJmg/LmdldEVuYWJsZUFsb2hhSGVhZGxlc3MoKSYmYS5yZXBvcnQ7Znx8ZT9hd2FpdCBYTyhhLGIsYyxoLGQpOldPKGEsYixjLGQpfX07ClhPPWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9Y3x8Xy51LGg9YS5zZXJ2ZXJFbnZpcm9ubWVudD09PSJERVYiO2M9Y3x8Xy51O2M9YS5ub25jZXx8Xy5pYihjLmRvY3VtZW50KTtoPXtpbnRlZ3JhdGlvbktleXM6e3Byb2R1Y3RJZDphLnByb2R1Y3RJZCxmZWVkYmFja0J1Y2tldDphLmJ1Y2tldCx0cmlnZ2VySWQ6YS50cmlnZ2VySWQsbWljcm9mZWVkYmFja1Njb3JlOmEubWljcm9mZWVkYmFja1Njb3JlfSxjYWxsYmFja3M6e29uQ2xvc2U6YS5jYWxsYmFjayxvbkxvYWQ6YS5vbkxvYWRDYWxsYmFja30sZm9ybUNvbnRlbnQ6e2xvY2FsZTphLmxvY2FsZSxkaXNhYmxlU2NyZWVuc2hvdDphLmRpc2FibGVTY3JlZW5zaG90dGluZyxwcm9kdWN0RGlzcGxheU5hbWU6dm9pZCAwLGFubm91bmNlbWVudDp2b2lkIDAsaXNzdWVDYXRlZ29yaWVzOnZvaWQgMCxpbmNsdWRlU2V2ZXJpdHlTZWxlY3Rpb246dm9pZCAwLGN1c3RvbUltYWdlU3JjOnZvaWQgMCx0aGFua1lvdU1lc3NhZ2U6dm9pZCAwLAp1c2VyRW1haWw6dm9pZCAwLGRlZmF1bHRGb3JtSW5wdXRWYWx1ZXM6dm9pZCAwLGRlZmF1bHRGb3JtSW5wdXRWYWx1ZXNTdHJpbmc6dm9pZCAwLGFidXNlTGluazphLmFidXNlTGluayxhZGRpdGlvbmFsRGF0YUNvbnNlbnQ6YS5hZGRpdGlvbmFsRGF0YUNvbnNlbnR9LGluaXRpYWxpemF0aW9uRGF0YTp7aXNMb2NhbFNlcnZlcjpoLG5vbmNlOmMsdXNlTmlnaHRseVJlbGVhc2U6aCxmZWVkYmFja0pzVXJsOnZvaWQgMCxmZWVkYmFja0Nzc1VybDp2b2lkIDAsZmVlZGJhY2tKc1VybFNlcmlhbGl6ZWQ6dm9pZCAwLGZlZWRiYWNrQ3NzVXJsU2VyaWFsaXplZDp2b2lkIDAsc3VibWlzc2lvblNlcnZlclVyaTphLmZlZWRiYWNrU2VydmVyVXJpLGNvbG9yU2NoZW1lOmEuY29sb3JTY2hlbWV9LGV4dHJhRGF0YTp7cHJvZHVjdFZlcnNpb246YS5wcm9kdWN0VmVyc2lvbixhdXRoVXNlcjphLmF1dGh1c2VyLGNvbmZpZ3VyYXRvcklkOmEuY29uZmlndXJhdG9ySWQsY3VzdG9tWkluZGV4OmEuY3VzdG9tWkluZGV4LAp0aW55Tm9Qb2ludGVyOmEudGlueU5vUG9pbnRlcixhbGxvd05vbkxvZ2dlZEluRmVlZGJhY2s6YS5hbGxvd05vbkxvZ2dlZEluRmVlZGJhY2ssZW5hYmxlQW5vbnltb3VzRmVlZGJhY2s6YS5lbmFibGVBbm9ueW1vdXNGZWVkYmFja319O2EucmVwb3J0JiYoaC5oZWFkbGVzc1JlcG9ydD1hLnJlcG9ydCk7YiYmKGE9bmV3IE1hcChPYmplY3QuZW50cmllcyhiKSksaC5leHRyYURhdGEucHJvZHVjdFNwZWNpZmljRGF0YT1hKTtlJiYoZT1uZXcgTWFwKE9iamVjdC5lbnRyaWVzKGUpKSxoLmV4dHJhRGF0YS5wcm9kdWN0U3BlY2lmaWNCaW5hcnlEYXRhPWUpO2F3YWl0IGZpYShoLGQsZil9OwpfLllPPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXtpZihhLmZsb3c9PT0iaGVscCIpe2xldCBlPWEuaGVscENlbnRlclBhdGgucmVwbGFjZSgvXlwvLywiIik7Xy5FTyhjfHx3aW5kb3csYGh0dHBzOi8vc3VwcG9ydC5nb29nbGUuY29tLyR7ZX1gKX1lbHNlIGlpYShhLGIsYyxkKS5jYXRjaChlPT57IWV8fGUgaW5zdGFuY2VvZiBVT3x8V08oYSxiLGMsZCl9KX1jYXRjaChlKXtYTyhhLGIsYyxudWxsLGQpLmNhdGNoKGY9PnshZnx8ZiBpbnN0YW5jZW9mIFVPfHxXTyhhLGIsYyxkKX0pfX07Xy5aTz1mdW5jdGlvbigpe3ZhciBhPV8uSU8oWyJmdWxsc2NyZWVuRWxlbWVudCIsIndlYmtpdEZ1bGxzY3JlZW5FbGVtZW50IiwibW96RnVsbFNjcmVlbkVsZW1lbnQiLCJtc0Z1bGxzY3JlZW5FbGVtZW50Il0sZG9jdW1lbnQpO3JldHVybiBhP2E6bnVsbH07Cl8uJE89ZnVuY3Rpb24oYSl7dmFyIGI9YS5nZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2tsaXN0Iix7aW5jbHVkZUFzcjohMH0pPz9bXTtyZXR1cm4gYj1qaWEoYixhKX07Xy5hUD1mdW5jdGlvbihhKXtyZXR1cm4gYS5nZXRPcHRpb24oImNhcHRpb25zIiwidHJhbnNsYXRpb25MYW5ndWFnZXMiLHtpbmNsdWRlQXNyOiEwfSl8fFtdfTtqaWE9ZnVuY3Rpb24oYSxiKXtiPV8uYVAoYik7aWYoIWI/Lmxlbmd0aClyZXR1cm4gYTt2YXIgYz1iLmZpbHRlcihkPT5kKTtiPWEuZmlsdGVyKGQ9PmQubGFuZ3VhZ2VDb2RlPy5zdGFydHNXaXRoKCJlbiIpKTtmb3IobGV0IGQgb2YgYylpZihiLmxlbmd0aCl7Yz1iWzBdO2xldCBlPXsuLi5jfTtjLmxhbmd1YWdlQ29kZSE9PWQubGFuZ3VhZ2VDb2RlJiYoZS5kaXNwbGF5TmFtZT1gJHtjLmxhbmd1YWdlTmFtZX0gPj4gJHtkLmxhbmd1YWdlTmFtZX1gLGUudHJhbnNsYXRpb25MYW5ndWFnZT1kLGEucHVzaChlKSl9cmV0dXJuIGF9OwpraWE9ZnVuY3Rpb24oKXtfLk1PKCdbYXJpYS1sYWJlbD0iWW91VHViZSJdJyw1LHtybDohMH0pfTtlUD1mdW5jdGlvbihhKXt2YXIgYj1iUDtiJiYoYT9jUD1fLnhGKGIsKCk9Pl8uSyhkUCxudWxsLF8uSyhfLnROLHtjb21wb25lbnQ6bGlhfSkpLHtJazpfLlhDfSk6KGNQPy4oKSxjUD1udWxsKSl9O2hQPWZ1bmN0aW9uKCl7Y1AmJihjUCgpLGNQPW51bGwpO2ZQKHZvaWQgMCk7Z1AoIm91dCIpO2JQJiYoYlAucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChiUCksYlA9bnVsbCl9O2xQPWZ1bmN0aW9uKCl7aVAubGVuZ3RoJiYoZ1AoIm91dCIpLHNldFRpbWVvdXQoKCk9PntpUC5zaGlmdCgpO2lQLmxlbmd0aD4wPyhoUCgpLGpQKCksa1AoKSk6KGVQKCksaFAoKSl9LDE5NSkpfTttaWE9ZnVuY3Rpb24oKXtfLk5NKHdpbmRvdywic3RhdGUtbmF2aWdhdGVlbmQiLCgpPT57c2V0VGltZW91dChraWEsMUUzKX0pfTsKbmlhPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImMzLXRvYXN0Iik7aWYoYil7bGV0IGM9Yi5xdWVyeVNlbGVjdG9yKCJidXR0b24iKTtjJiZfLk5NKGMsImZvY3VzIiwoKT0+e2NsZWFyVGltZW91dChtUCk7bVA9c2V0VGltZW91dChsUCxhKTtfLk5NKGMsImJsdXIiLCgpPT57Xy5PRShfLm5QKX0pfSl9fTtrUD1mdW5jdGlvbigpe2dQKCJpbiIpO3ZhciB7Y29udGVudDphLGR1cmF0aW9uTXM6Yn09aVAubGVuZ3RoP2lQWzBdOnt9O2ZQKGEpO2NQfHxlUChhKTttUD1zZXRUaW1lb3V0KCgpPT57bFAoKX0sMjI1KyhifHwwKSk7Xy5VTSgpPT09ImxpYnJhcnkiP21pYSgpOmIhPT12b2lkIDAmJm5pYShiKX07alA9ZnVuY3Rpb24oKXtiUHx8KGJQPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGJQLmlkPSJ0b2FzdHMiLChfLlpPKCl8fGRvY3VtZW50LmJvZHkpLmFwcGVuZENoaWxkKGJQKSxlUCgpKX07Cl8ucFA9ZnVuY3Rpb24oYSxiPW9QLGM9ITEpe2pQKCk7Yj1ifHxvUDtjJiZpUC5sZW5ndGg+MD8oY2xlYXJUaW1lb3V0KG1QKSxfLk9FKCgpPT57aVBbMF09e2NvbnRlbnQ6YSxkdXJhdGlvbk1zOmJ9O2tQKCl9KSk6KGlQLnB1c2goe2NvbnRlbnQ6YSxkdXJhdGlvbk1zOmJ9KSxpUC5sZW5ndGg9PT0xJiZfLk9FKGtQKSl9O18ublA9ZnVuY3Rpb24oKXtpUC5sZW5ndGg+MCYmKGNsZWFyVGltZW91dChtUCksbFAoKSl9O18ucVA9ZnVuY3Rpb24oYSl7Xy5YTSgibmF2aWdhdGUiLGEpfTtfLnJQPWZ1bmN0aW9uKCl7cmV0dXJuIF8ueCgibXdlYl9uZXdfZnVsbHNjcmVlbiIpPyEhXy5aTygpOiEhXy5aTygpfHx3aW5kb3cubG9jYXRpb24uaGFzaD09PSIjZmF1eGZ1bGxzY3JlZW4ifTsKXy5zUD1mdW5jdGlvbihhKXthPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEudG9TdHJpbmcoKSk7YS5mb2N1cygpO2Euc2V0U2VsZWN0aW9uUmFuZ2UoMCxhLnZhbHVlLmxlbmd0aCk7YT0hMTt0cnl7YT1kb2N1bWVudC5leGVjQ29tbWFuZCgiY29weSIpfWNhdGNoKGIpe31fLnBQKGE/KCk9Pm9pYTooKT0+cGlhKX07Xy50UD1mdW5jdGlvbigpe3JldHVybiEhXy53KCJJRF9UT0tFTiIpfTtOaGE9e0hDOjAsdkM6MSxCQzoyLHlGOjMsWG46NCxESDo1LEJGOjYsUUc6NyxwRzo4LHVHOjksVEY6MTAsbkY6MTEsMDoiREVGQVVMVCIsMToiQ0hBVCIsMjoiQ09OVkVSU0FUSU9OUyIsMzoiTUlOSVBMQVlFUiIsNDoiRElBTE9HIiw1OiJWT1oiLDY6Ik1VU0lDX1dBVENIX1RBQlMiLDc6IlNIQVJFIiw4OiJQVVNIX05PVElGSUNBVElPTlMiLDk6IlJJQ0hfR1JJRF9XQVRDSCIsMTA6IlBJQ1RVUkVfSU5fUElDVFVSRSIsMTE6Ik1FRElBX0NMSUVOVCJ9OwpUaGE9WzM2MTEsMjc2ODYsMjIxMDU4LDg1MDEzLDIzNDYyLDI0MTE4NywxNTc1NTcsNDIwMTYsMjY5MjYsNTEyMzYsNzkxNDgsNTAxNjAsNzc1MDQsMzEwMjgxLDE1MzU4Nyw4NzkwNywxODYzMCwxNzcwMTgsMTc3MDIzLDU0NDQ1LDMyMTY2NiwzMjYzNTMsMzI2MzU0LDgwOTM1LDE1MjE3MiwxODQ1NTMsMTA1Njc1LDE1MDcyMywzNzUyMSwxNDcyODUsNDc3ODYsMjMxMjU1LDIzMTI1NCwyMzEyNTgsMjMxMjU5LDk4MzQ5LDIzNzI5OSwxNjgyNzEsMTY4OTU0LDE2ODI3NywxNjgyNzMsMTY4MjcwLDEyMzY5NSwyNzIwMTgsMzM4NDk3LDIyNjk4NywyMjY5OTAsMjI2OTg4LDY4MjcsMjk0MzQsMjU1MDEwLDE3MTM4OCwyNDQxODksMjM2MjA4LDcyODIsMTI0NDQ4LDI5OTkwMywyOTk4OTcsMjk5OTA0LDI5OTkwMSwyOTk4OTksMjk5OTAyLDI5OTkwMCwyOTk4OTgsMTk2MDg4LDI1MDg5NywxOTgxMDQsMzIyNzYsMTk1MTE1LDE5NTExNCw3NjI3OCwyMDA2MzUsMjMwNTk0LDE0Nzg2OCwxNDc4NjksCjI3NjI0Myw5MzkxMSwyNzQxODgsMjc2NjUxLDMxMzY4MCwxMDY1MzEsMjU3MjM0LDI1MjU5OCwyNTI1OTcsMjUyNjAwLDI1MjU5OSwyNTI1OTYsMjI1MDMxLDE3Nzg0MywyNzI1OSwyNzI2MiwyNzI2MywyMTc1OSwyODM2NzAsMTYwODY2LDIwNDI0OSwyMjI5MDAsMjA0MjUwLDE4MDYyNiwxNzc5NTksMTc3OTU3LDE4MDYyOCwyMDU3MTYsMTk3ODc4LDI3Mzc2NiwxNzEyNDMsMTYwNzg5LDE3MTI0NCwxNzEyNDEsMTcxMjQ1LDE3MTI0MiwyMjU1NjAsMTgwNjI3LDE3Nzk2MCwyMzE1ODksMTc3OTU4LDE4MDYyOSwyMDU3MTcsMTk3ODc5LDE3NzU2NSwyMTI1NzMsMjEwNzA5LDk5NDQxMiwyMzA2ODQsMjI5ODAxLDIzMDY4NSwzMzQzMTAsMzM0MzExLDMzNDMxMiwxOTczMzcsMjA5MDEwLDE5NzMzNiwxOTczMzgsMTk4NjE4LDMwMDg4NCwxNzU0OTIsMTk4MDUyLDE5ODA1MSwxOTc4NTIsMTk3OTc2LDMxNzM3NywxNzU0OTMsMTc1NDk0LDE3NTQ5NSwxODkyNTQsMTc1NDk2LDE3NTQ5NywzODQwOCwKMTc1NDk4LDE3NTUwMywxNzU1MDQsMTc1NTA1LDE3NTUwNiwxNzU1MDcsMTc1NTA4LDgwNjM3LDY4NzI3LDIwNjkzMywyMDc5NDQsMjA2OTM0LDMwMzEyMywyMDY5MjksMjIxNTc1LDY4NzI4LDIyMTU3Niw4MDM1Myw4MDM1NiwzMDgwMzMsMjQ5MTA3LDE4MDYzNSw3NDYxMCw0NTcwNyw4Mzk2Miw4Mzk3MCw0NjcxMywxNjY1OTEsODk3MTEsNzQ2MTIsMjEzODA5LDE3OTYwNywyNDUwMDYsMTU1NzkyLDkzMjY1LDc0NjExLDEzMTM4MCwxMjg5NzksMTM5MzExLDEyODk3OCwxMzEzOTEsMTA1MzUwLDEzOTMxMiwzMzM2MzcsMTM0ODAwLDEzMTM5MiwxMTM1MzMsMjI5Mjk4LDkzMjUyLDk5MzU3LDk0NTIxLDExNDI1MiwxMTM1MzIsOTQ1MjIsOTQ1ODMsMjAyMzcxLDg4RTMsMTM5NTgwLDkzMjUzLDkzMjU0LDk0Mzg3LDk0Mzg4LDkzMjU1LDk3NDI0LDcyNTAyLDIxOTg2OCwyMTI5OTEsMTEwMTExLDc2MDE5LDExNzA5MiwxMTcwOTMsODk0MzEsMTkxODMxLDExMDQ2NiwyMzEzNDYsNzcyNDAsCjYwNTA4LDE4NjA5MSwxNDgxMjMsMTQ4MTI0LDEzNzQwMSwxMzc0MDIsMTM3MDQ2LDczMzkzLDI0Njc3NiwxMTM1MzQsMjc2MjAwLDkyMDk4LDEzMTM4MSw4NDUxNyw4Mzc1OSwzMDk1ODAsMjMwNjc2LDI0OTE4MywyMzA2NzksMjMwNjc4LDIzMDY3NywyMzA2ODEsMjMwNjgwLDE2MjcxMSwyMzUyMzQsMTYyNzEyLDgwMzU3LDk5NDQxMSwyNDMzMTUsMzEzNTA2LDMyMTk2NCw4NjExMyw3MjU5OCwxNjg0MTMsNzI3MzMsMTA3MzQ5LDEyNDI3NSwxMTgyMDMsMjAwNDEwLDEzMzI3NSwxNjAxNTcsMTUyNTY5LDE1NjY1MSwxMzMyNzQsMTYwMTU5LDE2MDE1OCwxMzMyNzIsMTMzMjczLDEzMzI3NiwxNDQ1MDcsMTQzMjQ3LDE3NTk5NCwxNTY2NTIsMTQzMjQ4LDE0MzI0OSwxNDMyNTAsMTQzMjUxLDE4OTg5MiwxODk4OTQsMTg5ODkzLDE1NjY1MywyMTQyMzYsMTQ0NDAxLDExNzQzMSwxMzM3OTcsMjI1MTM3LDI3MzkwNSwyMjI2MTIsMjIyNjEzLDE1Mzk2NCwyMDExMzMsMjAxMTM0LDIwMTEzNSwKMjAxMTM2LDIwMTEzNywxMjg1NzIsMjAwNDExLDIwMDQxMiwxOTAzMzcsMTMzNDA1LDExNzQyOSwxMTc0MzAsMTc3OTUwLDE3NDczNCwxNzc5NTEsMjAxMTM4LDIwMTEzOSwyMDExNDAsMjAxMTQxLDIwMTE0MiwxMTc0MzIsMTczOTk2LDE3Mzk5NSwxNzQ5NTMsMTczOTk0LDE3Mzk5NywxMjAwODAsMTE3MjU5LDE3ODU0NiwyOTc3NTIsMTk3ODkxLDE1NjY1NSwxNTY2NTQsMTIxNjkyLDIxMTQxNCwyMTE0MTEsMjExNDEyLDIxMTQxMywyMTE0MDMsMTg0ODQ2LDE4NTk5MywzMzUwNDgsMTQ1NjU2LDE1NjY1NiwxNDU2NTUsMTQ1NjUzLDE0NTY1NCwxNDU2NTcsMTMyOTcyLDEzMzA1MSwxMzM2NTgsMTMyOTcxLDMzNjcyOCw5NzYxNSwxODEyNjIsMTkwNzYyLDI1MDM0NCwyNTQwMjcsMTQzMzU5LDE0MzM1NiwxNDMzNjEsMTQzMzU4LDE0MzM2MCwxNDMzNTcsMTQyMzAzLDE0MzM1MywyODIxNTksMTcyODU5LDE0MzM1NCwxNDQ0NzksMTQzMzU1LDMxNDAyLDE4MTU5MCwxMzM2MjQsMTQ2NDc3LAoxMzM2MjMsMTMzNjIyLDEzMzYyMSwxOTI0MTgsODQ3NzQsMzA0Nzc2LDE5Nzk5MywyNDE0NjAsMTYwODAxLDE5Nzk5NSw5NTExNywxNzI3MjEsMTUwNDk3LDk4OTMwLDk4OTMxLDk4OTMyLDMzODU3MCwzMzg0NzQsMzM4NDc4LDMzODQ3MywxNTMzMjAsMTUzMzIxLDQzMzQ3LDMwNTI2OCwyNDkyOTUsMjEwMDE2LDIxMDAxNywyNjI2ODYsMjExODUxLDIxMTg1MiwzMDcyMTksMjExODUzLDMyNzgxMCwxMjk4ODksMTk3ODg4LDE5Nzg4OSwxNDkxMjMsMjIxOTU5LDIyMTYyNywyMjE5NTgsNDU0NzQsMTAwMzUyLDk4NDQzLDExNzk4NSwzMzM3MDgsNzQ2MTMsMTU1OTExLDc0NjE0LDY0NTAyLDEzNjAzMiw3NDYxNSw3NDYxNiwxMjIyMjQsNzQ2MTcsNzc4MjAsNzQ2MTgsMjYyOTg4LDI2Mjk4OSwyMjY5ODEsOTMyNzgsOTMyNzQsOTMyNzUsOTMyNzYsMjAwNjg4LDIwMDY4NiwyMDA2ODcsMTk5ODQxLDIyMTEwLDI5NDMzLDEzMzc5OCwxMzIyOTUsMjgxMzMyLDEyMDU0MSwyMjIxMTIsODIwNDcsCjExMzU1MCw3NTgzNiw3NTgzNywzMDM4ODIsMTkyNDA5LDIwMzIyMSw0MjM1Miw4NDUxMiw3NjA2NSw3NTk4OSwyMDU5MTEsMjA1OTEyLDI1MjY0OSwyMDU5MTMsMjUyNjUwLDI1MjY1MSw1MTg3OSwxNjYyMywzMjU5NCwyNzI0MCwzMzgxMDksMjkzMzI0LDMyNjMzLDc0ODU4LDMwNDE1MCwyOTcwNDUsMjc1MTk4LDI3MTg4NCwyMjI5MzIsMjc5MTE5LDMxMjU4MSwyNzE4ODYsMjEzOTE1LDI3NTE5OSwzMTA3NDgsMjI1MjE2LDI1MTI0NCwyNTgyNTEsMjE4Njc0LDI1MTI2NiwyNTgyNTAsMjUxMjY1LDMwMTY2MiwyNTEyNDUsMjcxODg1LDMxNTgxOCwxNTY5OTksMzk0NSwxNjk4OSw0NTUyMCwyNTQ4OCwyNTQ5MiwyNTQ5NCwyMzIxMTMsNTU3NjAsMTQwNTcsMTg0NTEsNTcyMDQsNTcyMDMsMTc4OTcsMTgxOTgsMTc4OTgsMTc5MDksNDM5ODAsMjIxMDUzLDE5NTUyOSwxODk2NjAsMzA4MDg4LDMwNjQ0OCwzMDY0NDcsMzA4MDg3LDMwODA4Niw0NjIyMCwxMTcyMSwxNDc5OTQsNDk5NTQsOTYzNjksCjM4NTQsMjE3NjQwLDE1MTYzMyw1NjI1MSwyMDUxOTIsMjE2Nzk3LDE1OTEwOCwxODE1NjgsMjM0Nzg5LDI1NjI0LDE1MjAzNiwxNjkwNiw5OTk5OSw2ODE3Miw0Nzk3Myw3Mjc3MywyNjk3MCwyNjk3MSw5NjgwNSwxNzc1MiwyODIxODEsMjc4OTI2LDczMjMzLDIwNTkyMywxMDk1MTIsMjIyNTYsMTQxMTUsMjI2OTYsMjM0NDA5LDIzNDQwOCw4OTI3OCw4OTI3NywxOTU3NDUsMTA5NTEzLDQzMjc4LDQzNDU5LDQzNDY0LDg5Mjc5LDQzNzE3LDU1NzY0LDIyMjU1LDE0NzkxMiw4OTI4MSw0MDk2Myw0MzI3Nyw0MzQ0Miw5MTgyNCwyODM4OTgsMTIwMTM3LDE4NjM1MCwxODYzNTEsMjU2NjkwLDI2NDM0OSwyNjQzNTEsMjY0MzUwLDI2NDM1MiwyMTEwMjYsMjUwODk2LDk2MzY3LDM2ODUwLDcyNjk0LDM3NDE0LDM2ODUxLDEyNDg2MywxMjEzNDMsNzM0OTEsNTQ0NzMsMTY2ODYxLDQzMzc1LDQ2Njc0LDMwMjYzMSwzMzE0NzMsMjQyNTI4LDE0MzgxNSwxMzkwOTUsMTQ0NDAyLDE0OTk2OCwxNDk5NjksCjMyNDczLDcyOTAxLDcyOTA2LDUwNjEyLDUwNjEzLDUwOTQyLDg0OTM4LDg0OTQzLDg0OTM5LDg0OTQxLDg0OTQ0LDg0OTQwLDg0OTQyLDM1NTg1LDUxOTI2LDc5OTgzLDE4OTIxLDU3ODkzLDQxMTgyLDEzNTczMiwzMzQyNCwyMjIwNywzNjIyOSwyMjIwNiwyMjIwNSw0NDc2MywzMzQyNyw2Nzc5MywyMjE4MiwzNzA5MSwzNDY1MCw1MDYxNywyMjI4NywyNTE0NCw5NzkxNywyMjAxMjIsNjIzOTcsMTUwODcxLDE1MDg3NCwxMjU1OTgsMTM3OTM1LDM2OTYxLDEwODAzNSwzMjM0OTMsMjc0MjYsMjc4NTcsMjc4NDYsMjc4NTQsNjk2OTIsNjE0MTEsMzkyOTksMzg2OTYsNjI1MjAsMzYzODIsMTA4NzAxLDE5MjY4MiwyNzk1MzEsNTA2NjMsMzYzODcsMTQ5MDgsMzc1MzMsMTA1NDQzLDYxNjM1LDYyMjc0LDE2MTY3MCwxMzM4MTgsMTgyMTE5LDY1NzAyLDY1NzAzLDY1NzAxLDMyMDQ2NCw3NjI1NiwyOTgxNTcsMjYzODQzLDMxNTIzNCwxOTYwNzUsMTk0NzY4LDI1MjIwMSwxOTQ3NjksMTkxODg1LAoyODE0ODAsMjMzNjM0LDI2NTgxMCwxOTQ3NzAsMjk2OTMzLDE5NTM1MCwzMjczODUsMzI0NTg2LDMwMTYwNywxOTUzNDksMTk0NzcxLDI5MzA0MSwzMDExMjEsMjkzMDQyLDI5MzA0MywzMDExMTYsMTY2MzgyLDM3NjcxLDQ5OTUzLDIyMDY2OSw2MDAwMDEsNjAwMDAyLDZFNSwzMzUxMzQsMjQ5MjI5LDIxMzc3NCwyMDQ1NzIsMTkxMzg5LDI3MjI1NCwyNzIyNTMsMjUzODMwLDI1MzgzMSwyNTM4MzIsMjcyMjUyLDI1MzgzMywyNTM4MzQsMjA0NTc0LDE5MTM5MCwxNzk1NTYsMjM4NTk2LDIxMjY2MSwxOTEzOTIsMTk3ODI2LDE5MTM5MywyMDQ1NzMsMzYyMTYsMjgyMzcsMjQxMjEyLDI3MjA0OSwxNzM3MTgsMzk1NTMsMTkyNTQ3LDI5MjIyLDMwNDg0NSwyNjEwNywyNDEyMTEsMzgwNTAsMjYxMDgsMjc1ODEwLDEyMDc0NSwyNjEwOSwyNjExMCw2Njg4MSwyODIzNiwxNDU4NiwyOTc2NzIsMTYwNTk4LDU3OTI5LDIyNjczNiw3NDcyMyw0NDA5OCwxNzM2ODksNDQwOTksMjM1MjgsNjE2OTksCjEzNDEwNCwxMzQxMDMsMTk4MzEzLDU5MTQ5LDE4MTAxMywyNzgzMDYsMjgyNDcyLDI3Nzg0OCwxNzMxOTEsMTczMTkyLDE3MzE5MywxMDE5NTEsMTcxNTAyLDE5NjA0MywxOTgzMDUsOTczNDYsMTE4MDUxLDk1MTAyLDY0ODgyLDExOTUwNSw2MzU5NSwyOTQxMTksMjU3MjY4LDYzMzQ5LDI4MTEyNywyNDA1NTMsOTUxMDEsNzUyNDAsMjcwMzksNjg4MjMsMjE1MzcsODM0NjQsNzU3MDcsMjUyOTA0LDE3MDIxNSwyMjMwMzMsODMxMTMsMTAxOTUyLDEwMTk1Myw3OTYxMCwxMjU3NTUsMjQ0MDIsMjQ0MDAsMzI5MjUsMTkzNDA2LDU3MTczLDE4MzM1MSwxNTY0MjEsMTIyNTAyLDE0NTI2OCwxMzg0ODAsNjQ0MjMsNjQ0MjQsMzM5ODYsMTAwODI4LDEyOTA4OSwyOTk1NDEsMjE0MDksMjgyMjE4LDI5OTUwNiwzMzM5NTYsMjk5NTQwLDI5OTUwNywyOTk1MDksMjk5NTM5LDI5OTUwOCwyOTk1MTAsMTg1NjEyLDIyMjgyNSwzMjMzMzEsMjQ1MzY2LDEzNTE1NSwxMzUxNTYsMTM1MTU3LDEzNTE1OCwKMTU4MjI1LDEzNTE1OSwxMzUxNjAsMTY3NjUxLDEzNTE2MSwxMzUxNjIsMTM1MTYzLDE1ODIyNiwxNTgyMjcsMTM1MTY0LDEzNTE2NSwxMzUxNjYsMTEwNzAsMTEwNzQsMTc4ODAsMjcwNTYwLDMwNzA5LDMwNzA3LDMwNzExLDMwNzEwLDMwNzA4LDE4NTIxMywxODUyNzMsMTQ2MTQzLDYzNjQ4LDYzNjQ5LDIyMTA1NiwyNjQ0OTAsMjExMTg5LDExMTA1OSwyMTExODgsNTc1NCwyNjQ0OTEsMjA0NDUsMjMzNDcxLDE1MTMwOCwzMTM3NTAsMTUxMTUyLDIyODA2NywxMzA5NzUsMTMwOTc2LDI0NzI0NCwyNzE2MjIsMjcxODEzLDI2MTIxMCwyMTA4MTUsMjk1MDY5LDI0NjEyNywzMTY4NTgsMjQ1MjU2LDI0NDk1MCwxOTE5MjUsMTY3NjM3LDIzNDU0NSwxOTcxOTYsMzAyNzM1LDIxNDI5NSwxMTAzODYsMjIxMDU0LDI3Mzk2MCwyODIxMTEsMzEyMjkwLDExMzc0NiwzMjU1OTMsMjY4ODg2LDY2NTU3LDE4MzIxNSwxNzMxMCwyODYzMSwyMDE5MzUsMjE1ODksMjQyMDM2LDIzODM1MSwxNjQ4MTcsCjE2ODAxMSwxNTQ5NDYsNjgwMTIsMTYyNjE3LDYwNDgwLDE4NDQzMSwxMzg2NjQsMjk0MDg5LDI0OTgyNywxOTRFMywxNDExMjEsMTY0NTAyLDMxNTcxLDE5NTAwMiwyMDY3OTMsMTQxOTc4LDIzMzk4NSwyNTA4OTUsMjU0MDUyLDI1NDA1MywyNTQwNTQsMjU0MDUxLDI1NDA1MCwyNTQwNTUsMTUwMTA1LDMwNDE2OSwxNTAxMDYsMTUwMTA3LDE1MDEwOCw3Njk4MCw0MTU3Nyw0NTQ2OSwzODY2OSwxMzc2OCwxMzc3NywxNDE4NDIsNjI5ODUsMjEzMTkwLDQ3MjQsMjIzMDUyLDU5MzY5LDQzOTI3LDQzOTI4LDEyOTI0LDE5Nzg1MywxMDAzNTUsNTYyMTksMjc2NjksMjA5OTI4LDEwMzM3LDIwMzY0OCwyMDM2NDksNDc4OTYsMzI2OTM3LDEyMjYyOSwxODYyMDQsMjIyODI0LDI3NTg2OSwzMTIyOTUsMjcxNjczLDI3NDYzNywzMTc0NjIsMTM5NzIzLDEzOTcyMiwxMjEyNTgsMjUzNzg5LDI1Mzc4NywyNTM3ODYsMjUzNzg4LDI1Mzc5MCwxMDc1OTgsMTI3OTkxLDk2NjM5LDEwNzUzNiwxMzAxNjksCjIxNjUyMiwyOTYzMTYsOTY2NjEsMTQ1MTg4LDMyMDQyOCwyMTM5MDQsMjY5MzQyLDk2NjU4LDExNjY0NiwxNTk0MjgsMTY4NjExLDE2ODYxMiwxMjExMjIsMjE5ODYyLDk2NjYwLDI4MjIwOCwxMjc3MzgsMTI3MDgzLDE1NTI4MSwxNjI5NTksMjIwODg2LDIyNzM1NiwyNDgwMDcsMTYzNTY2LDMwNzY0NiwxODY2NDEsMTQ3ODQyLDI3MzY0NiwyNzM2NDcsMjE3OTMyLDEwNDQ0Myw5NjY1OSwxNDc1OTUsMTA2NDQyLDI0NzE2MiwyMzE0OTMsMjEzNDI3LDI5NjgxMywyNDY1NzUsMTgyNDIzLDE2Mjc3NiwyMjg5MDgsMTM0ODQwLDYzNjY3LDYzNjY4LDYzNjY5LDEzMDY4NiwzMzcxNzIsMjQ4MzgxLDE0NzAzNiwyMzkwOTQsMjYyNzQzLDE4OTgxMCwyMzkwOTUsNzgzMTQsMTQ3Nzk5LDMwNTkxOSwzMDU5MjQsMjM3MTQ2LDE3NDA0OSwxNDg2NDksNTU3NjEsMTI3MDk4LDEzNDg0MSw5NjM2OCw2NzM3NCw0ODk5MiwxNDYxNzYsMTc2MTA1LDMyMzMyMSwzMjMzMjIsMjMzMDM1LDQ5OTU2LDI2NzY0NSwKMjc1NzgyLDE5MDE5MCwyMjU3MzksMzE5NjEsMjYzODgsMjM4MTEsNUU0LDEyNjI1MCw5NjM3MCwyMTA1NDksMzI5NDkwLDQ3MzU1LDQ3MzU2LDM3OTM1LDQ1NTIxLDMzMTUzNiwzMzE1MzQsMzMxNTM1LDMzMTUzMywyMTc2MCw4Mzc2OSw0OTk3Nyw0OTk3NCw5MzQ5Nyw5MzQ5OCwzNDMyNSwxNDA3NTksMTE1ODAzLDEyMzcwNywxMDAwODEsMzUzMDksMjM3NzA2LDY4MzE0LDI1NjAyLDEwMDMzOSwxNzA4NzMsMTQzNTE2LDI5OTI0NywxNzg5MjEsMjY4NTc0LDI1NDg4NCwyNTgyMzIsNTkwMTgsMTgyNDgsNTA2MjUsOTcyOSwzNzE2OCwzNzE2OSwyMTY2NywxNjc0OSwxODYzNSwzOTMwNSwxODA0NiwyMjEwNTcsMzAxODk3LDMwMTkwMCwyNjk5OTAsNTM5NjksODIxMyw5MzkyNiwyMjEwNTUsMjEwNTQyLDIxMjU1MiwxMDI4NTIsMTEwMDk5LDIyNjc4LDY5MDc2LDEzNzU3NSwxMzkyMjQsMTAwODU2LDIzNTc3MCwxNTQ0MzAsMjM1ODYxLDIwOTc1NywxNzczNiwzODMyLDE0NzExMSw1NTc1OSwKNjQwMzEsMjM0NzQ2LDkzMDQ0LDkzMDQ1LDI4MTMwMiwxNzA3MDEsMTcwNzAyLDE5NDc5NiwzNDM4OCwxNjc4NDEsMTcwNDE5LDE3NjU3LDE3NjU1LDM5NTc5LDM5NTc4LDE3MDQxMiw3NzQ0OCw4MTk2LDExMzU3LDY5ODc3LDgxOTcsMTY4NTAxLDE1NjUxMiwxNjE2MTMsMTU2NTA5LDIwODI3NCwxNjE2MTIsMTYxNjE0LDI2NzY5MiwyNjc4NTEsMjY3NTc3LDI3OTc1NSwyNjc2OTMsMjY3Njk0LDI2NzU3OCwyNjI4MDEsMzM0NDk2LDMzNTg0NCwyNzEyMTgsMjY2MTMxLDI2NjEzMiwyNjc5NzcsMjY3NTc5LDI2MjgwMCwyNjI3OTksMjYyODAyLDI2NzU4MCwyNjI3OTgsMjY3Njk1LDI2NzU4MSwyNzMyMzIsODIwMzldO3ZhciBOTz1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9Z2V0RW5hYmxlU3NFbmdpbmUoKXtyZXR1cm4gR08odGhpcywyKX1nZXRFbmFibGVBd3IoKXtyZXR1cm4gR08odGhpcywzKX1nZXRBbG9oYUF1dG9HYVJvbGxvdXQoKXtyZXR1cm4gR08odGhpcyw1KX1nZXRFbmFibGVDb25maWd1cmF0b3IoKXtyZXR1cm4gR08odGhpcyw2KX1nZXRFbmFibGVNd2ViKCl7cmV0dXJuIEdPKHRoaXMsNyl9Z2V0RW5hYmxlQ3RsQ29uc2VudENoZWNrYm94KCl7cmV0dXJuIEdPKHRoaXMsOCl9Z2V0RW5hYmxlSWZyYW1lKCl7cmV0dXJuIEdPKHRoaXMsOSl9Z2V0RW5hYmxlU2NyZWVuc2hvdE51ZGdlKCl7cmV0dXJuIEdPKHRoaXMsMTApfWdldEVuYWJsZVdlYlN0YXJ0dXBDb25maWdFbmRwb2ludCgpe3JldHVybiBHTyh0aGlzLDExKX1nZXRFbmFibGVKdW5rTnVkZ2UoKXtyZXR1cm4gR08odGhpcywxMil9Z2V0RW5hYmxlQ29uZmlndXJhdG9yTG9jYWxlKCl7cmV0dXJuIEdPKHRoaXMsCjEzKX1nZXRFbmFibGVUaW55Tm9Qb2ludGVyKCl7cmV0dXJuIEdPKHRoaXMsMTQpfWdldEVuYWJsZVN1cHBvcnRTZXNzaW9uTG9nZ2luZygpe3JldHVybiBHTyh0aGlzLDE1KX1nZXRFbmFibGVGaWxlVXBsb2FkRm9yU2NyZWVuc2hvdCgpe3JldHVybiBHTyh0aGlzLDE2KX1nZXRFbmFibGVEaXJlY3REZWZsZWN0aW9uRm9yU2luZ2xlQ2F0ZWdvcnkoKXtyZXR1cm4gR08odGhpcywxNyl9Z2V0RW5hYmxlSW1hZ2VTYW5pdGl6YXRpb24oKXtyZXR1cm4gR08odGhpcywxOCl9Z2V0RW5hYmxlQWxvaGFCaW5hcnlTcGxpdCgpe3JldHVybiBHTyh0aGlzLDE5KX1nZXRFbmFibGVEYkZlZWRiYWNrSW50ZW50cygpe3JldHVybiBHTyh0aGlzLDIwKX1nZXRFbmFibGVNYXJrTWFuZGF0b3J5RmllbGRzV2l0aFJlcXVpcmVkKCl7cmV0dXJuIEdPKHRoaXMsMjEpfWdldEVuYWJsZUZlZWRiYWNrQ2F0ZWdvcnlDdXN0b21VaSgpe3JldHVybiBHTyh0aGlzLDIyKX1nZXRFbmFibGVSZWFsdGltZUN0bCgpe3JldHVybiBHTyh0aGlzLAoyMyl9Z2V0RW5hYmxlQWxvaGFIZWFkbGVzcygpe3JldHVybiBHTyh0aGlzLDI0KX1nZXRVcGRhdGVGZWVkYmFja0NvbmZpcm1hdGlvbkNsYXJpdHkoKXtyZXR1cm4gR08odGhpcywyNSl9Z2V0RW5hYmxlVmlld0ZlZWRiYWNrUmVwb3J0c0xpbmsoKXtyZXR1cm4gR08odGhpcywyNil9fTt2YXIgVk89Y2xhc3MgZXh0ZW5kcyBfLk1ye2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpfXYoKXtyZXR1cm4gXy5OeCh0aGlzLE5PLDEpfX07dmFyICRoYT1bL2h0dHBzOlwvXC9zYW5kYm94XC5nb29nbGVcLmNvbVwvdG9vbHNcL2ZlZWRiYWNrLywvaHR0cHM6XC9cL2ZlZWRiYWNrLWZyb250ZW5kLXF1YWxbYS16MC05Ll0qXC5nb29nbGVcLmNvbVwvaW5hcHAvLC9odHRwczpcL1wvZmVlZGJhY2stZnJvbnRlbmQtcXVhbFthLXowLTkuXSpcLmdvb2dsZVwuY29tXC90b29sc1wvZmVlZGJhY2svLC9odHRwczpcL1wvLipcLmdvb2dsZXVzZXJjb250ZW50XC5jb21cL2luYXBwL107dmFyIE9PPSJhZiBhbSBhci1FRyBhci1KTyBhci1NQSBhci1TQSBhci1YQiBhciBheiBiZSBiZyBibiBicyBjYSBjcyBjeSBkYSBkZS1BVCBkZS1DSCBkZSBlbCBlbiBlbi1HQiBlbi1BVSBlbi1DQSBlbi1JRSBlbi1JTiBlbi1OWiBlbi1TRyBlbi1YQSBlbi1YQyBlbi1aQSBlcyBlcy00MTkgZXMtQVIgZXMtQk8gZXMtQ0wgZXMtQ08gZXMtQ1IgZXMtRE8gZXMtRUMgZXMtR1QgZXMtSE4gZXMtTVggZXMtTkkgZXMtUEEgZXMtUEUgZXMtUFIgZXMtUFkgZXMtU1YgZXMtVVMgZXMtVVkgZXMtVkUgZXQgZXUgZmEgZmkgZmlsIGZyLUNBIGZyLUNIIGZyIGdsIGdzdyBndSBoZSBoaSBociBodSBoeSBpZCBpbiBpcyBpdCBpdyBqYSBrYSBrayBrbSBrbiBrbyBreSBsbiBsbyBsdCBsdiBtayBtbCBtbiBtbyBtciBtcyBteSBuYiBuZSBubCBubyBwYSBwbCBwdCBwdC1CUiBwdC1QVCBybyBydSBzaSBzayBzbCBzcSBzci1MYXRuIHNyIHN2IHN3IHRhIHRlIHRoIHRsIHRyIHVrIHVyIHV6IHZpIHpoIHpoLUNOIHpoLUhLIHpoLVRXIHp1Ii5zcGxpdCgiICIpO3ZhciBVTz1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKCl7c3VwZXIoIkZvcm0gaXMgZWl0aGVyIGxvYWRpbmcgb3IgYWxyZWFkeSBvcGVuZWQiKTt0aGlzLm5hbWU9IkR1cGxpY2F0ZUZvcm1FcnJvciJ9fSxRTyxTTyxSTyxUTztfLnJhKCJ1c2VyZmVlZGJhY2suQ29sb3JTY2hlbWVzIix7aUY6MSxHQzoyfSk7Xy5yYSgidXNlcmZlZWRiYWNrLmFwaS5zdGFydEZlZWRiYWNrIixfLllPKTtfLnFpYT1uZXcgXy5JKCJuYXRpdmVBcHBEZWVwbGlua0VuZHBvaW50Iik7Xy5yaWE9TWF0aC5yYW5kb20oKTt2YXIgc2lhPW5ldyBfLlZzKCJTVEFUSUNfQVBQX1BST1BTX1RPS0VOIik7Xy52UD1uZXcgXy5WcygiVE9BU1RfT1BUSU9OUyIpO3ZhciBvUD1fLnNqKCJtd2ViX2MzX3RvYXN0X2R1cmF0aW9uX21zIiw1RTMpLGJQLGNQPW51bGwsW3dQLGdQXT1fLkooIm91dCIsdm9pZCAwLCJXY1pjZWUiKSxbbGlhLGZQXT1fLkoodm9pZCAwLHZvaWQgMCwiWFZ5eHhmIiksaVA9W10sbVAsZFA9Xy5MKGE9Pnt2YXIgYj1fLnkoKS5yZXNvbHZlKF8uSW4oXy52UCkpO3JldHVybiBfLksoImMzLXRvYXN0Iix7ZGlyOndQLHJvbGU6KCk9PndQKCk9PT0iaW4iPyJhbGVydCI6IiIsY2xhc3M6Xy5QKHsiaHVnLXRvYXN0IjohIWI/LlZ1LCJpbnZlcnNlLXRoZW1lIjohIWI/LkN4fSl9LGEuY2hpbGRyZW4pfSwic2IiKTtkUC5pZG9tQ29tcGF0PSEwO18udGlhPV8udXgoMzA3OTUzKTsoe01nOl8udWlhLGdrOl8ueFB9PV8uekcoYT0+YS5jaGFubmVsSWQpKTsoe01nOl8udmlhLGdrOl8ud2lhfT1fLnpHKGE9Pl8uQihhLm5vdGlmaWNhdGlvblByZWZlcmVuY2VUb2dnbGVCdXR0b24/LnRvZ2dsZUJ1dHRvblJlbmRlcmVyPy5kZWZhdWx0U2VydmljZUVuZHBvaW50LF8uQnkpPy5wYXJhbXMpKTtfLnlQPW5ldyBfLlZzKCJMQVlFUl9UT0tFTiIpO18uelA9Xy5MKCh7VW86YSxzdGF5T3Blbk9uQ2xpY2s6Yixpc1BlcnNpc3RlbnQ6YyxjaGlsZHJlbjpkfSk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKHsiZGlhbG9nLWZsZXgtYnV0dG9uIjooKT0+YT8uKCkhPT0xfSksIm9uOmNsaWNrIjpmdW5jdGlvbigpe2I/LigpfHxjPy4oKXx8Xy55KCkucmVzb2x2ZShfLnlQKS5sZCgpfSx0YWJpbmRleDooKT0+KGI/LigpfHxjPy4oKSx2b2lkIDApfSxkKSwidWIiKTtfLnpQLmlkb21Db21wYXQ9ITA7Xy5BUD1fLkwoKHtjaGlsZHJlbjphfSk9Pnt2YXIgYj1fLnkoKS5yZXNvbHZlKF8uSW4oc2lhKSk/LlVJO3JldHVybiBfLksoImRpdiIseyJhcmlhLWxpdmUiOiJwb2xpdGUiLHRhYmluZGV4OmI/MDp2b2lkIDB9LGEpfSwidmIiKTtfLkFQLmlkb21Db21wYXQ9ITA7Xy54aWE9Xy5zaigibXdlYl9pb3NfZnVsbHNjcmVlbl9wbGF5YmFja190cmFuc2l0aW9uX2RlbGF5X21zIil8fDUwMDtfLnlpYT1fLnNqKCJtd2ViX2lvc19mdWxsc2NyZWVuX3N5c3RlbV9wYXVzZV9lcGlsc29uX21zIil8fDM1MDt2YXIgb2lhPV8uJE4uWHMscGlhPV8uJE4ua3Q7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYVE9ZnVuY3Rpb24oYSxiKXtyZXR1cm57b3BlblBvcHVwQWN0aW9uOntwb3B1cFR5cGU6IlRPQVNUIixwb3B1cDp7bm90aWZpY2F0aW9uQWN0aW9uUmVuZGVyZXI6e3Jlc3BvbnNlVGV4dDphfX0sLi4uKGIhPT12b2lkIDA/e2R1cmF0aW9uSGludE1zOmJ9Ont9KX19fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy53bmE9bmV3IF8uSSgiZW50aXR5VXBkYXRlQ29tbWFuZCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLk5XPW5ldyBfLkkoInNob3dTaGVldENvbW1hbmQiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy54bmE9bmV3IF8uSSgibGlzdFZpZXdNb2RlbCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLk9XPW5ldyBfLlZzKCJTQ1JFRU5fTUFOQUdFUl9UT0tFTiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgeW5hO18uUFc9ZnVuY3Rpb24oYSl7cmV0dXJuIHluYVthXT8/IkVWRU5UX1NQQU5fVFlQRV9VTktOT1dOIn07CnluYT17Y2xpY2s6IkVWRU5UX1NQQU5fVFlQRV9DTElDSyIsZGJsY2xpY2s6IkVWRU5UX1NQQU5fVFlQRV9EQkxDTElDSyIsbW91c2Vkb3duOiJFVkVOVF9TUEFOX1RZUEVfTU9VU0VET1dOIixtb3VzZXVwOiJFVkVOVF9TUEFOX1RZUEVfTU9VU0VVUCIsbW91c2VvdmVyOiJFVkVOVF9TUEFOX1RZUEVfTU9VU0VPVkVSIixtb3VzZW91dDoiRVZFTlRfU1BBTl9UWVBFX01PVVNFT1VUIixtb3VzZWVudGVyOiJFVkVOVF9TUEFOX1RZUEVfTU9VU0VFTlRFUiIsbW91c2VsZWF2ZToiRVZFTlRfU1BBTl9UWVBFX01PVVNFTEVBVkUiLG1vdXNlbW92ZToiRVZFTlRfU1BBTl9UWVBFX01PVVNFTU9WRSIsY29udGV4dG1lbnU6IkVWRU5UX1NQQU5fVFlQRV9DT05URVhUTUVOVSIsa2V5ZG93bjoiRVZFTlRfU1BBTl9UWVBFX0tFWURPV04iLGtleXVwOiJFVkVOVF9TUEFOX1RZUEVfS0VZVVAiLGtleXByZXNzOiJFVkVOVF9TUEFOX1RZUEVfS0VZUFJFU1MiLHRvdWNoc3RhcnQ6IkVWRU5UX1NQQU5fVFlQRV9UT1VDSFNUQVJUIiwKdG91Y2hlbmQ6IkVWRU5UX1NQQU5fVFlQRV9UT1VDSEVORCIsdG91Y2htb3ZlOiJFVkVOVF9TUEFOX1RZUEVfVE9VQ0hNT1ZFIix0b3VjaGNhbmNlbDoiRVZFTlRfU1BBTl9UWVBFX1RPVUNIQ0FOQ0VMIixwb2ludGVyZG93bjoiRVZFTlRfU1BBTl9UWVBFX1BPSU5URVJET1dOIixwb2ludGVydXA6IkVWRU5UX1NQQU5fVFlQRV9QT0lOVEVSVVAiLHBvaW50ZXJtb3ZlOiJFVkVOVF9TUEFOX1RZUEVfUE9JTlRFUk1PVkUiLHBvaW50ZXJvdmVyOiJFVkVOVF9TUEFOX1RZUEVfUE9JTlRFUk9WRVIiLHBvaW50ZXJvdXQ6IkVWRU5UX1NQQU5fVFlQRV9QT0lOVEVST1VUIixwb2ludGVyZW50ZXI6IkVWRU5UX1NQQU5fVFlQRV9QT0lOVEVSRU5URVIiLHBvaW50ZXJsZWF2ZToiRVZFTlRfU1BBTl9UWVBFX1BPSU5URVJMRUFWRSIscG9pbnRlcmNhbmNlbDoiRVZFTlRfU1BBTl9UWVBFX1BPSU5URVJDQU5DRUwiLGdvdHBvaW50ZXJjYXB0dXJlOiJFVkVOVF9TUEFOX1RZUEVfR09UUE9JTlRFUkNBUFRVUkUiLApsb3N0cG9pbnRlcmNhcHR1cmU6IkVWRU5UX1NQQU5fVFlQRV9MT1NUUE9JTlRFUkNBUFRVUkUiLHN1Ym1pdDoiRVZFTlRfU1BBTl9UWVBFX1NVQk1JVCIsY2hhbmdlOiJFVkVOVF9TUEFOX1RZUEVfQ0hBTkdFIixpbnB1dDoiRVZFTlRfU1BBTl9UWVBFX0lOUFVUIixmb2N1czoiRVZFTlRfU1BBTl9UWVBFX0ZPQ1VTIixibHVyOiJFVkVOVF9TUEFOX1RZUEVfQkxVUiIscmVzZXQ6IkVWRU5UX1NQQU5fVFlQRV9SRVNFVCIsc2VsZWN0OiJFVkVOVF9TUEFOX1RZUEVfU0VMRUNUIixpbnZhbGlkOiJFVkVOVF9TUEFOX1RZUEVfSU5WQUxJRCIsbG9hZDoiRVZFTlRfU1BBTl9UWVBFX0xPQUQiLHVubG9hZDoiRVZFTlRfU1BBTl9UWVBFX1VOTE9BRCIsYmVmb3JldW5sb2FkOiJFVkVOVF9TUEFOX1RZUEVfQkVGT1JFVU5MT0FEIixkb21jb250ZW50bG9hZGVkOiJFVkVOVF9TUEFOX1RZUEVfRE9NQ09OVEVOVExPQURFRCIscmVzaXplOiJFVkVOVF9TUEFOX1RZUEVfUkVTSVpFIixzY3JvbGw6IkVWRU5UX1NQQU5fVFlQRV9TQ1JPTEwiLApwYWdlc2hvdzoiRVZFTlRfU1BBTl9UWVBFX1BBR0VTSE9XIixwYWdlaGlkZToiRVZFTlRfU1BBTl9UWVBFX1BBR0VISURFIixwbGF5OiJFVkVOVF9TUEFOX1RZUEVfUExBWSIscGF1c2U6IkVWRU5UX1NQQU5fVFlQRV9QQVVTRSIscGxheWluZzoiRVZFTlRfU1BBTl9UWVBFX1BMQVlJTkciLHdhaXRpbmc6IkVWRU5UX1NQQU5fVFlQRV9XQUlUSU5HIixzZWVraW5nOiJFVkVOVF9TUEFOX1RZUEVfU0VFS0lORyIsc2Vla2VkOiJFVkVOVF9TUEFOX1RZUEVfU0VFS0VEIixlbmRlZDoiRVZFTlRfU1BBTl9UWVBFX0VOREVEIix2b2x1bWVjaGFuZ2U6IkVWRU5UX1NQQU5fVFlQRV9WT0xVTUVDSEFOR0UiLHRpbWV1cGRhdGU6IkVWRU5UX1NQQU5fVFlQRV9USU1FVVBEQVRFIixyYXRlY2hhbmdlOiJFVkVOVF9TUEFOX1RZUEVfUkFURUNIQU5HRSIsZHJhZ3N0YXJ0OiJFVkVOVF9TUEFOX1RZUEVfRFJBR1NUQVJUIixkcmFnOiJFVkVOVF9TUEFOX1RZUEVfRFJBRyIsZHJhZ2VuZDoiRVZFTlRfU1BBTl9UWVBFX0RSQUdFTkQiLApkcmFnZW50ZXI6IkVWRU5UX1NQQU5fVFlQRV9EUkFHRU5URVIiLGRyYWdsZWF2ZToiRVZFTlRfU1BBTl9UWVBFX0RSQUdMRUFWRSIsZHJhZ292ZXI6IkVWRU5UX1NQQU5fVFlQRV9EUkFHT1ZFUiIsZHJvcDoiRVZFTlRfU1BBTl9UWVBFX0RST1AiLGFuaW1hdGlvbnN0YXJ0OiJFVkVOVF9TUEFOX1RZUEVfQU5JTUFUSU9OU1RBUlQiLGFuaW1hdGlvbmVuZDoiRVZFTlRfU1BBTl9UWVBFX0FOSU1BVElPTkVORCIsYW5pbWF0aW9uaXRlcmF0aW9uOiJFVkVOVF9TUEFOX1RZUEVfQU5JTUFUSU9OSVRFUkFUSU9OIix0cmFuc2l0aW9ucnVuOiJFVkVOVF9TUEFOX1RZUEVfVFJBTlNJVElPTlJVTiIsdHJhbnNpdGlvbnN0YXJ0OiJFVkVOVF9TUEFOX1RZUEVfVFJBTlNJVElPTlNUQVJUIix0cmFuc2l0aW9uZW5kOiJFVkVOVF9TUEFOX1RZUEVfVFJBTlNJVElPTkVORCIsdHJhbnNpdGlvbmNhbmNlbDoiRVZFTlRfU1BBTl9UWVBFX1RSQU5TSVRJT05DQU5DRUwifTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5RVz1uZXcgXy5JKCJzaG93RW5nYWdlbWVudFBhbmVsRW5kcG9pbnQiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKLyoKCk1hdGgudXVpZC5qcyAodjEuNCkKaHR0cDovL3d3dy5icm9vZmEuY29tCm1haWx0bzpyb2JlcnRAYnJvb2ZhLmNvbQpDb3B5cmlnaHQgKGMpIDIwMTAgUm9iZXJ0IEtpZWZmZXIKRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXMuCiovCnZhciB6bmEsUlcsQW5hLEJuYSxDbmEsRG5hLEVuYSxUVyxGbmEsVVcsR25hLEhuYSxWVyxJbmEsSm5hLFhXLFlXLFpXLCRXLExuYSxNbmEsYlgsaFgsTm5hLE9uYSxQbmEsalgsa1gsUm5hLG1YLFNuYSxvWCxwWCxVbmEsVm5hLG5YLFduYSxUbmEsbFgscVgsWW5hLGFvYSxib2EsY29hLGRvYSxlb2Esc1gsZm9hLGdvYSx0WCxob2EsdVgsdlgsaW9hLGtvYSx4WCxsb2EseVgsbm9hLG9vYSxwb2EscW9hLEJYLHJvYSxzb2EsQ1gsdG9hLHVvYSx2b2Esd29hLHhvYSx5b2Esem9hLEFvYSxCb2EsQ29hLEhYLElYLEZvYSxtb2EsS1gsSG9hLEpYLElvYSxKb2EsS29hLE1YLExvYSxOWCxNb2EsTm9hLE9vYSxQb2EsUW9hLFJvYSxTb2EsT1gsVG9hLFBYLFFYLFZvYSxVb2EsV29hLFhvYSxZb2EsWm9hLCRvYSxWWCxVWCxXWCwkWCxYWCxZWCxaWCxhWSxhcGEsYnBhLGNwYSxiWSxlWSxkWSxkcGEsZlksZXBhLGZwYSxncGEsaHBhLGdZLGpwYSxpcGEsbHBhLHBwYSxqWSxxcGEsa1ksbFksblksbVksCmlZLHJwYSxzcGEsdXBhLHBZLHdwYSxvWSxyWSxzWSx0WSx1WSx6cGEsQXBhLHdZLHhZLHlZLEFZLENwYSxCWSxEcGEsRFksRXBhLEZZLEhZLEZwYSxJWSxKWSxIcGEsS1ksTVksSXBhLEpwYSxMcGEsTXBhLE5wYSxQcGEsUnBhLFRwYSxVcGEsTlksV3BhLFZwYSxQWSxTWSxPWSxSWSxacGEsWXBhLGJxYSxkcWEsZXFhLGZxYSxncWEsV1ksaHFhLGlxYSxqcWEsa3FhLGxxYSxtcWEsY3FhLFZZLHRxYSxucWEselgsdXFhLFdXLERvYSxjWixLbmEseHFhLGRaLGVaLHlxYSx6cWEsQXFhLEJxYSxDcWEsRHFhLGFYLGZaLGdYLGNYLGRYLGVYLGZYLEVxYSxnWixoWixGcWEsaVosR3FhLEhxYSxpWCxqWixJcWEsUW5hLFhuYSxKcWEsWm5hLCRuYSxyWCxMcWEsam9hLFhZLGtaLE1xYSxxWSxBWDt6bmE9ZnVuY3Rpb24oYSxiKXtiPSgwLF8ueWcpKGIpO2I9Xy5FZihiLGIpO2Iudj0hMDtfLkpmKGEsYik7cmV0dXJuIGF9OwpSVz1mdW5jdGlvbihhLGIpe2E9YS53YXRjaEVuZHBvaW50U3VwcG9ydGVkQXV0aG9yaXphdGlvblRva2VuQ29uZmlnPy52aWRlb0F1dGhvcml6YXRpb25Ub2tlbj8uY3JlZGVudGlhbFRyYW5zZmVyVG9rZW5zfHxbXTtmb3IobGV0IGM9MDtjPGEubGVuZ3RoOysrYylpZihhW2NdLnNjb3BlPT09YilyZXR1cm4gYVtjXS50b2tlbnx8dm9pZCAwfTsKQW5hPWZ1bmN0aW9uKGEsYixjPXt9KXtfLlZpKCgpPT57dmFyIGQ9Xy5CKGI/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8ucm9vdFZlfHxfLkIoYj8uY29tbWFuZE1ldGFkYXRhLF8ubngpPy5zY3JlZW5WaXN1YWxFbGVtZW50Py51aVR5cGU7aWYoZCl7dmFyIGU9Xy5CKGI/LmNvbW1hbmRNZXRhZGF0YSxfLmVhYSk7aWYoZT8ucGFyZW50VHJhY2tpbmdQYXJhbXMpe3ZhciBmPV8uVXcoZS5wYXJlbnRUcmFja2luZ1BhcmFtcyk7aWYoZS5wYXJlbnRDc24pdmFyIGg9ZS5wYXJlbnRDc259ZWxzZSBjLmNsaWNrZWRWaXN1YWxFbGVtZW50P2Y9Yy5jbGlja2VkVmlzdWFsRWxlbWVudDpiLmNsaWNrVHJhY2tpbmdQYXJhbXMmJihmPV8uVXcoYi5jbGlja1RyYWNraW5nUGFyYW1zKSk7YTp7ZT1fLkIoYixfLkF3KTt2YXIgaz1fLkIoYixfLmRhYSk7aWYoZSl7aWYoaz1SVyhlLCJWSURFTyIpKXtlPXt0b2tlbjprLHZpZGVvSWQ6ZS52aWRlb0lkfTticmVhayBhfX1lbHNlIGlmKGsmJihlPVJXKGssCiJQTEFZTElTVCIpKSl7ZT17dG9rZW46ZSxwbGF5bGlzdElkOmsucGxheWxpc3RJZH07YnJlYWsgYX1lPXZvaWQgMH1jPXtjdHRBdXRoSW5mbzplLHBhcmVudENzbjpoLC4uLmN9O18ueCgiZXhwZWN0YXRpb25fbG9nZ2luZyIpJiYoYy5sb2dnaW5nRXhwZWN0YXRpb25zPV8uQihiPy5jb21tYW5kTWV0YWRhdGEsXy5ueCk/LmxvZ2dpbmdFeHBlY3RhdGlvbnN8fHZvaWQgMCk7Xy5ETyhhLGQsZixjKX1lbHNlIF8uSXAobmV3IF8uWGooIkVycm9yOiBUcnlpbmcgdG8gY3JlYXRlIGEgbmV3IHNjcmVlbiB3aXRob3V0IGEgcm9vdFZlVHlwZSIsYikpfSkoKX07Qm5hPWZ1bmN0aW9uKGEsYil7YT1gU0xJX05BTUVfWU9VVFVCRV9FTUJFRFNfV0VCX0ZVTExTQ1JFRU5fUkVRVUVTVF9TTElfJHthfWA7Xy5FeS5yZWdpc3Rlci5oYXMoYSk/Yj1fLkV5LnJlZ2lzdGVyLmdldChhKTooYj1iKCksXy5FeS5yZWdpc3Rlci5zZXQoYSxiKSk7cmV0dXJuIGJ9O0NuYT1mdW5jdGlvbih7c2VydmljZUlkOmF9KXtyZXR1cm4gYS5vfTsKRG5hPWZ1bmN0aW9uKCl7dmFyIGE9Xy5HeSxiPVtTV10sYz1iLm1hcChsPT5DbmEobCkpLGQ9Yi5tYXAobD0+YS5tYXBwaW5ncy5nZXQobC50b1N0cmluZygpKSkuZmlsdGVyKGw9PmwpO2lmKGQubGVuZ3RoPT09Yi5sZW5ndGgpcmV0dXJuIF8uS3koZC5tYXAoKGwsbSk9Pl8ubnkoYSxsLGJbbV0pKSk7dmFyIGU9Xy5WZCgpLmFmKGMpO2Q9Xy5JZihjLm1hcChsPT5lW2xdKSk7dmFyIGY9ZG9jdW1lbnQuaGlkZGVuLGg9LTEsaz1fLnNqKCJnZXRfYXN5bmNfdGltZW91dF9tcyIsLTEpO2s+LTEmJihoPXNldFRpbWVvdXQoKCk9PntfLklwKG5ldyBfLlhqKCJNb2R1bGUgdGltZW91dC4iLGMsZixkb2N1bWVudC5oaWRkZW4pKX0saykpO3JldHVybiB6bmEoZC50aGVuKCgpPT5iLm1hcChsPT5fLm55KGEsYS5tYXBwaW5ncy5nZXQobC50b1N0cmluZygpKSxsKSkpLktnKGw9Pntmb3IobGV0IG0gb2YgYS5qKW0obCk7dGhyb3cgbDt9KSwoKT0+e2NsZWFyVGltZW91dChoKX0pfTsKRW5hPWZ1bmN0aW9uKCl7cmV0dXJuIERuYSgpLnRoZW4oYT0+YVswXSl9O1RXPWZ1bmN0aW9uKGEsYil7YS5EZj1iO2ZvcihsZXQgYyBvZiBhLmRhdGEpYihjKTthLmRhdGE9W119O0ZuYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg8PTI/QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYSxiKTpBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhLGIsYyl9O1VXPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO2ZvcihsZXQgZD0wO2Q8YXJndW1lbnRzLmxlbmd0aDtkKyspe2xldCBlPWFyZ3VtZW50c1tkXTtpZihBcnJheS5pc0FycmF5KGUpKWZvcihsZXQgZj0wO2Y8ZS5sZW5ndGg7Zis9ODE5Mil7dmFyIGM9Rm5hKGUsZixmKzgxOTIpO2M9VVcuYXBwbHkobnVsbCxjKTtmb3IobGV0IGg9MDtoPGMubGVuZ3RoO2grKyliLnB1c2goY1toXSl9ZWxzZSBiLnB1c2goZSl9cmV0dXJuIGJ9OwpHbmE9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLkJmKGZ1bmN0aW9uKGIpe3ZhciBjPWEubGVuZ3RoLGQ9W107aWYoYyl7dmFyIGU9ZnVuY3Rpb24oaCxrLGwpe2MtLTtkW2hdPWs/e2Z1bGZpbGxlZDohMCx2YWx1ZTpsfTp7ZnVsZmlsbGVkOiExLHJlYXNvbjpsfTtjPT0wJiZiKGQpfTtmb3IobGV0IGg9MDtoPGEubGVuZ3RoO2grKyl7dmFyIGY9YVtoXTtfLkhmKGYsXy5EYShlLGgsITApLF8uRGEoZSxoLCExKSl9fWVsc2UgYihkKX0pfTtIbmE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5NeigiTE9HR0VEX0lOIixmdW5jdGlvbihjKXthLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpO18uTnooYil9KX07Vlc9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oKT0+e3ZhciBjPV8ueSgpO2MucmVzb2x2ZShfLkluKGEpKXx8Xy5KeihjLHtqYTphLFBhOmEsW18uTG5dOmJ9KTtyZXR1cm4gYy5yZXNvbHZlKGEpfX07CkluYT1mdW5jdGlvbihhKXtpZihXVz09PXZvaWQgMCl0aHJvdyBFcnJvcigic2IiKTtpZihXVylmb3IobGV0IFtiLGNdb2YgV1cpYShiLGMpO18uTnYuYWRkKGEpO1dXPXZvaWQgMH07Sm5hPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJjYW5hcnkiOnJldHVybiJDTElFTlRfQ0FOQVJZX1NUQVRFX0NBTkFSWSI7Y2FzZSAiY29udHJvbCI6cmV0dXJuIkNMSUVOVF9DQU5BUllfU1RBVEVfQ09OVFJPTCI7Y2FzZSAibm9uZSI6cmV0dXJuIkNMSUVOVF9DQU5BUllfU1RBVEVfTk9ORSI7ZGVmYXVsdDpyZXR1cm4iQ0xJRU5UX0NBTkFSWV9TVEFURV9VTktOT1dOIn19O1hXPWZ1bmN0aW9uKGEsYj0iIil7dmFyIGM9W107Zm9yKGxldCBkIGluIGEpe2lmKCFhLmhhc093blByb3BlcnR5KGQpKWNvbnRpbnVlO2xldCBlPWIhPT0iIj9iKyIuIitkOmQ7dHlwZW9mIGFbZF09PT0ib2JqZWN0Ij9jLnB1c2goLi4uWFcoYVtkXSxlKSk6Yy5wdXNoKFtlLGFbZF1dKX1jLnNvcnQoKTtyZXR1cm4gY307CllXPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO2ZvcihsZXQgYyBvZiBhLmV2ZW50cy52YWx1ZXMoKSliLnB1c2goYyk7cmV0dXJuIGJ9O1pXPWZ1bmN0aW9uKGEpe18uRnk9PW51bGwmJihfLkZ5PW5ldyBLbmEpO3ZhciBiPV8uRnk7dmFyIGM9Yi52O2EuZGltZW5zaW9ucz1hLmRpbWVuc2lvbnN8fHt9O2EuZGltZW5zaW9ucy5jc249Xy5pcSgpfHwiIjt2YXIgZD1YVyhhLmRpbWVuc2lvbnMpLmpvaW4oIjsiKTthLnJlY29yZHMhPW51bGwmJihjLmV2ZW50cy5oYXMoZCk/Yy5ldmVudHMuZ2V0KGQpLnJlY29yZHM/LnB1c2goLi4uYS5yZWNvcmRzKTpjLmV2ZW50cy5zZXQoZCxhKSk7Yi5qLmVuYWJsZWR8fGIuai5zdGFydCgpO2IubysrO2Iubz49MTAwJiZiLmZsdXNoKCl9OyRXPWZ1bmN0aW9uKGEpe2E9YS5rZXl8fGEuaWQ7aWYoIWEpdGhyb3cgRXJyb3IoImZjIik7cmV0dXJuIGF9OwpMbmE9ZnVuY3Rpb24oKXtpZihhWClyZXR1cm4gYVgoKTthWD1fLiRsKCJQZXJzaXN0ZW50RW50aXR5U3RvcmVEYiIse3NlOntFbnRpdHlTdG9yZTp7UGQ6MX0sRW50aXR5QXNzb2NpYXRpb25TdG9yZTp7UGQ6Mn19LHNoYXJlZDohMSx1cGdyYWRlKGEsYil7YigxKSYmXy5vbChfLmtsKGEsIkVudGl0eVN0b3JlIix7a2V5UGF0aDoia2V5In0pLCJlbnRpdHlUeXBlIiwiZW50aXR5VHlwZSIpO2IoMikmJihhPV8ua2woYSwiRW50aXR5QXNzb2NpYXRpb25TdG9yZSIse2tleVBhdGg6WyJwYXJlbnRFbnRpdHlLZXkiLCJjaGlsZEVudGl0eUtleSJdfSksXy5vbChhLCJieVBhcmVudEVudGl0eUtleSIsInBhcmVudEVudGl0eUtleSIpLF8ub2woYSwiYnlDaGlsZEVudGl0eUtleSIsImNoaWxkRW50aXR5S2V5IikpfSx2ZXJzaW9uOjN9KTtyZXR1cm4gYVgoKX07TW5hPWZ1bmN0aW9uKGEpe3JldHVybiBfLkNsKExuYSgpLGEpfTsKYlg9ZnVuY3Rpb24oYSl7cmV0dXJuIHdpbmRvdy5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KGEpOkFycmF5KGEpfTsKaFg9ZnVuY3Rpb24oYSl7dmFyIGI9YS5rZXksYz1hLmNvdW50ZXJbMF1eYlswXSxkPWEuY291bnRlclsxXV5iWzFdLGU9YS5jb3VudGVyWzJdXmJbMl0sZj1hLmNvdW50ZXJbM11eYlszXTtmb3IodmFyIGg9MztoPj0wJiYhKGEuY291bnRlcltoXT0tfmEuY291bnRlcltoXSk7aC0tKTtmb3IodmFyIGssbCxtPTQ7bTw0MDspaD1jWFtjPj4+MjRdXmRYW2Q+PjE2JjI1NV1eZVhbZT4+OCYyNTVdXmZYW2YmMjU1XV5iW20rK10saz1jWFtkPj4+MjRdXmRYW2U+PjE2JjI1NV1eZVhbZj4+OCYyNTVdXmZYW2MmMjU1XV5iW20rK10sbD1jWFtlPj4+MjRdXmRYW2Y+PjE2JjI1NV1eZVhbYz4+OCYyNTVdXmZYW2QmMjU1XV5iW20rK10sZj1jWFtmPj4+MjRdXmRYW2M+PjE2JjI1NV1eZVhbZD4+OCYyNTVdXmZYW2UmMjU1XV5iW20rK10sYz1oLGQ9ayxlPWw7YT1hLm87aD1iWzQwXTthWzBdPWdYW2M+Pj4yNF1eaD4+PjI0O2FbMV09Z1hbZD4+MTYmMjU1XV5oPj4xNiYyNTU7YVsyXT1nWFtlPj44JgoyNTVdXmg+PjgmMjU1O2FbM109Z1hbZiYyNTVdXmgmMjU1O2g9Yls0MV07YVs0XT1nWFtkPj4+MjRdXmg+Pj4yNDthWzVdPWdYW2U+PjE2JjI1NV1eaD4+MTYmMjU1O2FbNl09Z1hbZj4+OCYyNTVdXmg+PjgmMjU1O2FbN109Z1hbYyYyNTVdXmgmMjU1O2g9Yls0Ml07YVs4XT1nWFtlPj4+MjRdXmg+Pj4yNDthWzldPWdYW2Y+PjE2JjI1NV1eaD4+MTYmMjU1O2FbMTBdPWdYW2M+PjgmMjU1XV5oPj44JjI1NTthWzExXT1nWFtkJjI1NV1eaCYyNTU7aD1iWzQzXTthWzEyXT1nWFtmPj4+MjRdXmg+Pj4yNDthWzEzXT1nWFtjPj4xNiYyNTVdXmg+PjE2JjI1NTthWzE0XT1nWFtkPj44JjI1NV1eaD4+OCYyNTU7YVsxNV09Z1hbZSYyNTVdXmgmMjU1fTsKTm5hPWFzeW5jIGZ1bmN0aW9uKGEsYixjKXthLmp8fChhLmo9YXdhaXQgYS5vLmltcG9ydEtleSgicmF3IixhLnYse25hbWU6IkFFUy1DVFIifSwhMSxbImVuY3J5cHQiXSkpO2E9YXdhaXQgYS5vLmVuY3J5cHQoe25hbWU6IkFFUy1DVFIiLGNvdW50ZXI6YyxsZW5ndGg6MTI4fSxhLmosYik7cmV0dXJuIG5ldyBVaW50OEFycmF5KGEpfTtPbmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBFcnJvcj9uZXcgaVgoIlVOS05PV05fRU5DT0RFX0VSUk9SIix7b3JpZ2luYWxNZXNzYWdlOmEubWVzc2FnZX0pOm5ldyBpWCgiVU5LTk9XTl9FTkNPREVfRVJST1IiKX07UG5hPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgRXJyb3I/bmV3IGlYKCJVTktOT1dOX0RFQ09ERV9FUlJPUiIse29yaWdpbmFsTWVzc2FnZTphLm1lc3NhZ2V9KTpuZXcgaVgoIlVOS05PV05fREVDT0RFX0VSUk9SIil9OwpqWD1mdW5jdGlvbihhLGIpe2E9YSBpbnN0YW5jZW9mIGlYP2E6YihhKTtfLkdwKGEpO3Rocm93IGE7fTtrWD1mdW5jdGlvbihhKXthPShuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKS5zdWJhcnJheSgwLDE2KTt2YXIgYj1uZXcgVWludDhBcnJheSgxNik7Yi5zZXQoYSk7cmV0dXJuIGJ9O1JuYT1mdW5jdGlvbihhKXt2YXIgYj1RbmFbYV07aWYoYilyZXR1cm4gYjtfLklwKG5ldyBfLlhqKCJFbnRpdHkgbW9kZWwgbm90IGZvdW5kLiIse2VudGl0eVR5cGU6YX0pKX07bVg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbFgoYS5vLGIudmVyc2lvbikuZGVjb2RlKGIuZGF0YSxiLmtleSl9O1NuYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGEuai5vYmplY3RTdG9yZSgiRW50aXR5U3RvcmUiKS5nZXQoYikudGhlbihkPT57aWYoZCl7aWYoYyYmZC5lbnRpdHlUeXBlIT09Yyl0aHJvdyBFcnJvcigiaGMiKTtyZXR1cm4gbVgoYSxkKX19KX07Cm9YPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0kVyhiKTtyZXR1cm4gblgoYSxkKS50aGVuKCgpPT5UbmEoYSxiLGMpKX07cFg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEudltjXTtkfHwoZD1uZXcgU2V0LGEudltjXT1kKTtkLmFkZChiKX07ClVuYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9JFcoYiksZT1sWChhLm8sMSksZj17Li4uYn07cmV0dXJuIGEuai5vYmplY3RTdG9yZSgiRW50aXR5U3RvcmUiKS5nZXQoZCkudGhlbihoPT57aWYoaCl7aWYoaC5lbnRpdHlUeXBlIT09Yyl0aHJvdyBFcnJvcigiaGMiKTtmLmVudGl0eU1ldGFkYXRhfHwoaD1tWChhLGgpLGYuZW50aXR5TWV0YWRhdGE9aC5lbnRpdHlNZXRhZGF0YSl9fSkudGhlbigoKT0+e3ZhciBoPXtrZXk6ZCxlbnRpdHlUeXBlOmMsZGF0YTplLmVuY29kZShmLGQpLHZlcnNpb246MX07cmV0dXJuIF8uVmsuYWxsKFtfLmxsKGEuai5vYmplY3RTdG9yZSgiRW50aXR5U3RvcmUiKSxoKSxvWChhLGYsYyldKX0pLnRoZW4oKCk9PntwWChhLGQsYyk7cmV0dXJuIGR9KX07ClZuYT1mdW5jdGlvbihhLGIpe3ZhciBjPV8uR0goYikuZW50aXR5VHlwZTtyZXR1cm4gXy5Way5hbGwoW2Euai5vYmplY3RTdG9yZSgiRW50aXR5U3RvcmUiKS5kZWxldGUoYiksblgoYSxiKV0pLnRoZW4oKCk9PntwWChhLGIsYyl9KX07blg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5qLm9iamVjdFN0b3JlKCJFbnRpdHlBc3NvY2lhdGlvblN0b3JlIikuaW5kZXgoImJ5UGFyZW50RW50aXR5S2V5IikuZGVsZXRlKElEQktleVJhbmdlLm9ubHkoYikpfTsKV25hPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWxYKGEubywxKTtyZXR1cm4gU25hKGEsYixkKS50aGVuKGY9PntpZihmfHxfLngoIndlYl9lbmFibGVfZW50aXR5X3Vwc2VydF9vbl91cGRhdGUiKSl7Zj1fLmhNKGZ8fHt9LGMpO3ZhciBoPXtrZXk6YixlbnRpdHlUeXBlOmQsZGF0YTplLmVuY29kZShmLGIpLHZlcnNpb246MX07cmV0dXJuIF8uVmsuYWxsKFtfLmxsKGEuai5vYmplY3RTdG9yZSgiRW50aXR5U3RvcmUiKSxoKSxvWChhLGYsZCldKX19KS50aGVuKCgpPT57cFgoYSxiLGQpO3JldHVybiBifSl9OwpUbmE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSRXKGIpO2M9Um5hKGMpO2lmKCFjKXJldHVybiBfLlZrLnJlc29sdmUoW10pO2I9bmV3IGMoYik7YT1hLmoub2JqZWN0U3RvcmUoIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiKTtjPVtdO2ZvcihsZXQgZSBvZiBiLm8oKSljLnB1c2goXy5sbChhLHtwYXJlbnRFbnRpdHlLZXk6ZCxjaGlsZEVudGl0eUtleTplfSkpO3JldHVybiBfLlZrLmFsbChjKS50aGVuKGU9PmUubWFwKGY9PmZbMV0pKX07bFg9ZnVuY3Rpb24oYSxiPTApe2E9YS5qW2JdO2lmKCFhKXRocm93IGI9bmV3IGlYKCJJTlZBTElEX0VOQ09ERVJfVkVSU0lPTiIse0lwOmJ9KSxfLkdwKGIpLGI7cmV0dXJuIGF9O3FYPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjIG9mIGEub2JzZXJ2ZXJzKWMoYil9OwpZbmE9YXN5bmMgZnVuY3Rpb24oYSxiKXt2YXIgYz1hd2FpdCBNbmEoYS50b2tlbiksZDtjPWF3YWl0IF8uaWwoYyxbIkVudGl0eVN0b3JlIiwiRW50aXR5QXNzb2NpYXRpb25TdG9yZSJdLCJyZWFkd3JpdGUiLGU9PntkPW5ldyBYbmEoZSxhLmopO3JldHVybiBiKGQpfSk7aWYoZCl7bGV0IGU9ZC52O09iamVjdC5rZXlzKGUpLmxlbmd0aD4wJiYoYS5jaGFubmVsLnBvc3RNZXNzYWdlKGUpLHFYKGEsZSkpfXJldHVybiBjfTthb2E9YXN5bmMgZnVuY3Rpb24oKXt0cnl7bGV0IGI9YXdhaXQgXy5QbCgpO2lmKGImJl8uV2ooKSYmdHlwZW9mIF8udS5Ccm9hZGNhc3RDaGFubmVsIT09InVuZGVmaW5lZCIpe3ZhciBhPW5ldyBabmE7cmV0dXJuIG5ldyAkbmEoYixhKX19Y2F0Y2goYil7YiBpbnN0YW5jZW9mIEVycm9yJiZfLkdwKGIpfX07CmJvYT1mdW5jdGlvbihhKXthPWEub3B0aW9ucz8ucGVyc2lzdGVuY2VPcHRpb247cmV0dXJuIGE9PT0iRU5USVRZX1BFUlNJU1RFTkNFX09QVElPTl9QRVJTSVNUInx8YT09PSJFTlRJVFlfUEVSU0lTVEVOQ0VfT1BUSU9OX0lOTUVNT1JZX0FORF9QRVJTSVNUIn07CmNvYT1hc3luYyBmdW5jdGlvbihhKXtyWHx8KHJYPWFvYSgpKTt2YXIgYj1hd2FpdCByWDtiJiZhd2FpdCBZbmEoYixjPT57dmFyIGQ9e307Zm9yKGxldCBlIG9mIGEpe2lmKCFlLmVudGl0eUtleXx8IWJvYShlKSljb250aW51ZTtsZXQgZj1fLmRNKGUucGF5bG9hZCksaD12b2lkIDA7ZS50eXBlPT09IkVOVElUWV9NVVRBVElPTl9UWVBFX1JFUExBQ0UiJiYoaD0oKT0+VW5hKGMsZS5wYXlsb2FkW2ZdLGYpKTtlLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfREVMRVRFIiYmKGg9KCk9PlZuYShjLGUuZW50aXR5S2V5KSk7ZS50eXBlPT09IkVOVElUWV9NVVRBVElPTl9UWVBFX1VQREFURSImJihoPSgpPT5XbmEoYyxlLmVudGl0eUtleSxlLnBheWxvYWRbZl0sZikpO2gmJihkW2UuZW50aXR5S2V5XT1kW2UuZW50aXR5S2V5XT9kW2UuZW50aXR5S2V5XS50aGVuKGgpOmgoKSl9cmV0dXJuIF8uVmsuYWxsKE9iamVjdC52YWx1ZXMoZCkpfSl9Owpkb2E9YXN5bmMgZnVuY3Rpb24oYSxiKXshKGE9YS5tdXRhdGlvbnMpfHxhLmxlbmd0aDw9MHx8KGImJmIuZGlzcGF0Y2goXy5rQSh7dHlwZToiRU5USVRZX0xPQURFRCIscGF5bG9hZDphfSkpLGF3YWl0IGNvYShhKSxhLmxlbmd0aD0wKX07ZW9hPWZ1bmN0aW9uKGEpe3ZhciBiPV8udUMoKTtiLk9jPSEwO2Iuc2Vzc2lvbklkPWEuc2Vzc2lvbklkfHwiIjtiLmRoPWEuZGg7YS5XaCE9bnVsbCYmKGIuV2g9YS5XaCl9O3NYPWZ1bmN0aW9uKGEpe18udUMoKS5wcm9jZXNzb3JzLnB1c2goYSl9O2ZvYT1mdW5jdGlvbigpe18uVnAuc3Vic2NyaWJlKCJoYW5kbGVFcnJvciIsYT0+e3RyeXtmb3IobGV0IGIgaW4gXy5lSSl0cnl7bGV0IGM9Xy5lSVtiXTt0eXBlb2YgXy5lSVtiXT09PSJmdW5jdGlvbiImJihjPWMoKSk7YS5wYXJhbXNbYl09dHlwZW9mIF8uZUlbYl09PT0ib2JqZWN0Ij9KU09OLnN0cmluZ2lmeShjKTpTdHJpbmcoYyl9Y2F0Y2goYyl7Xy5JcChjKX19Y2F0Y2goYil7Xy5JcChiKX19KX07CmdvYT1mdW5jdGlvbigpe307dFg9ZnVuY3Rpb24oYSxiLGM9MCl7KGM9Xy5pcShjKSkmJmEmJl8ueUooYyxhLGIpfTtob2E9ZnVuY3Rpb24oYSl7cmV0dXJuIFVXKE9iamVjdC5rZXlzKGEpLm1hcChiPT5iPT09InBsYXlsaXN0RWRpdEVuZHBvaW50Ij9fLkIoYSxfLkF6KS5jbGllbnRBY3Rpb25zfHxbXTphW2JdLmFjdGlvbnN8fGFbYl0uY2xpZW50QWN0aW9uc3x8W10pKX07dVg9ZnVuY3Rpb24oYSl7YT1fLkIoYT8uY29tbWFuZE1ldGFkYXRhLF8uencpO3JldHVybiBhPy51cmw/YS51cmw6bnVsbH07dlg9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGMgb2YgYSlfLkFKKGMsYiwhMCl9Owppb2E9ZnVuY3Rpb24oKXtfLkpNPXdYO1RXKF8uZ0UsKHtjb21tYW5kOmEsc291cmNlRGF0YTpiLGNvbW1hbmRDb250ZXh0OmN9KT0+e18ueSgpLnJlc29sdmUoXy5VRCkucmVzb2x2ZUNvbW1hbmQoYSxfLllEKGIsYykpfHwoYT1uZXcgXy5YaigiQ29tbWFuZCBub3QgaGFuZGxlZCBieSBDb21tYW5kSGFuZGxlciIsT2JqZWN0LmtleXMoYSksYyksXy5HcChhKSl9KX07a29hPWZ1bmN0aW9uKCl7dmFyIGE9Xy5QRShqb2EpO3JldHVybiBhIT09dm9pZCAwP2E6Xy5SRTw9Mjk5fTt4WD1mdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50O3JldHVybiBfLnZiKFsiZnVsbHNjcmVlbmNoYW5nZSIsIndlYmtpdGZ1bGxzY3JlZW5jaGFuZ2UiLCJtb3pmdWxsc2NyZWVuY2hhbmdlIiwiTVNGdWxsc2NyZWVuQ2hhbmdlIl0sYj0+YG9uJHtiLnRvTG93ZXJDYXNlKCl9YGluIGEpfTsKbG9hPWZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQ7cmV0dXJuIF8udmIoWyJmdWxsc2NyZWVuZXJyb3IiLCJ3ZWJraXRmdWxsc2NyZWVuZXJyb3IiLCJtb3pmdWxsc2NyZWVuZXJyb3IiLCJNU0Z1bGxzY3JlZW5FcnJvciJdLGI9PmBvbiR7Yi50b0xvd2VyQ2FzZSgpfWBpbiBhKX07eVg9ZnVuY3Rpb24oYSxiLGMpe18ucmlhPF8uc2ooIndlYl9zbGlfbG9nX3dhcm5pbmdfc2FtcGxlX3NpemVfcmF0ZSIsLjAwMSkmJl8uSXAobmV3IF8uWGooYFtTTEldICIke2F9IiBlcnJvcmAse3NsaU5hbWU6YSxkaW1lbnNpb25zOmIsZGV0YWlsczpjfSkpfTsKbm9hPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe2N8fF8uSXAobmV3IF8uWGooIkZ1bGxzY3JlZW4gY2hhbmdlIHNsaSBjYWxsZWQgYmVmb3JlIHN0YXJ0LiIpKX12YXIgYj16WCxjPSExLGQ9e2p3Om1vYX0uancoImZ1bGxzY3JlZW5fcmVxdWVzdCIpLGU9bG9hKCl8fCJmdWxsc2NyZWVuZXJyb3IiO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKGUsZj0+e2EoKTtkLnpnKCJGQUlMVVJFIik7eVgoImZ1bGxzY3JlZW4gcmVxdWVzdCIsYigpLHtldmVudDpmfSk7Yz0hMX0pO2U9eFgoKXx8ImZ1bGxzY3JlZW5jaGFuZ2UiO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKGUsKCk9PnthKCk7ZC56ZygiU1VDQ0VTUyIpO2M9ITF9KTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZnVsbHNjcmVlbnJlcXVlc3QiLCgpPT57Yz0hMDtkLkRyKGIoKSl9KX07Cm9vYT1mdW5jdGlvbihhKXt2YXIgYj1hLmZhbGxiYWNrRW5kcG9pbnQsYz1hLnRpbWVvdXRNcztpZighXy54KCJtd2ViX2MzX25pdHJhdGVfY2xpZW50X29wZW5fYXBwX2ZhbGxiYWNrX2tzIikmJmEudXJsKXt2YXIgZD1fLlpiKGEudXJsLCJmZWF0dXJlIil8fCIiO2Q9ZC5zdGFydHNXaXRoKCJlMTVtXyIpfHxkLnN0YXJ0c1dpdGgoImUxZF8iKXx8ZC5zdGFydHNXaXRoKCJlM2RfIik7Xy5mciYmZCYmIWImJihhPWEudXJsLGEuc3RhcnRzV2l0aCgidm5kLnlvdXR1YmU6Ly8iKT9hPWEucmVwbGFjZSgidm5kLnlvdXR1YmU6Ly8iLCJodHRwczovLyIpOmEuc3RhcnRzV2l0aCgieW91dHViZTovLyIpJiYoYT1hLnJlcGxhY2UoInlvdXR1YmU6Ly8iLCJodHRwczovLyIpKSxfLlhiKGEsMCwicmVkaXJlY3RfYXBwX3N0b3JlX2lvcyIsYS5zZWFyY2goXy5ZYikpPj0wfHwoYT1fLkZPKGEsInJlZGlyZWN0X2FwcF9zdG9yZV9pb3MiLCIxIikpLGI9Xy53TihhKSwhY3x8Yzw9MCkmJihjPV8uc2ooIm13ZWJfZGVlcF9saW5rX2ZhbGxiYWNrX3RpbWVvdXRfbXMiLAozRTMpKX1yZXR1cm57ZmFsbGJhY2tFbmRwb2ludDpiLHRpbWVvdXRNczpjfX07cG9hPWZ1bmN0aW9uKGEsYil7Xy54KCJtd2ViX2FwcF9idXR0b25fbG9nX2tzIil8fHRYKF8udGlhKTtiLmV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTthPV8uQihhLF8ucWlhKTthPy51cmwmJih3aW5kb3cubG9jYXRpb249YS51cmwpO3ZhciB7ZmFsbGJhY2tFbmRwb2ludDpjLHRpbWVvdXRNczpkfT1hP29vYShhKTp7ZmFsbGJhY2tFbmRwb2ludDp2b2lkIDAsdGltZW91dE1zOnZvaWQgMH07QVg9PT12b2lkIDAmJmQmJmQ+MCYmKEFYPXNldFRpbWVvdXQoKCk9PntBWD12b2lkIDA7YyYmXy5BSihjLGIuc291cmNlRGF0YSwhMCl9LGQpLF8uTk0od2luZG93LCJ2aXNpYmlsaXR5Y2hhbmdlIiwoKT0+e0FYJiYod2luZG93LmNsZWFyVGltZW91dChBWCksQVg9dm9pZCAwKX0pKX07CnFvYT1mdW5jdGlvbihhKXt2YXIgYj14WCgpO2ImJndpbmRvdy5hZGRFdmVudExpc3RlbmVyKGIsKCk9Pnt2YXIgYz0hIV8uWk8oKTtjfHxfLk1PKCIueXR3UGxheWVyQm90dG9tQ29udHJvbHNGdWxsc2NyZWVuQnV0dG9uV3JhcHBlciAuZnVsbHNjcmVlbi1pY29uIC5idXR0b24iKTthLnNldEZhdXhGdWxsc2NyZWVuKGMpfSl9O0JYPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNnb29nbGUtZmVlZGJhY2siKTtiJiYoXy5CTihiLGEpLGEmJl8uTU8oKCk9PmIucXVlcnlTZWxlY3RvcigiaWZyYW1lIik/LmNvbnRlbnREb2N1bWVudD8ucXVlcnlTZWxlY3RvcigiLnV2RmVlZGJhY2tGb3JtZm9ybS1pbml0aWFsLWZvY3VzLWVsZW1lbnQsIC51dkZlZWRiYWNrUnNhZGlhbG9nZGlhbG9nIC5zY1NoYXJlZE1hdGVyaWFsYnV0dG9ucm9vdCIpLDUse3JsOiEwfSkpfTsKcm9hPWZ1bmN0aW9uKCl7dmFyIGE9Xy5YRC5yZXNwb25zZT8ucmVzcG9uc2U/LnJlc3BvbnNlQ29udGV4dD8uc2VydmljZVRyYWNraW5nUGFyYW1zPy5maWx0ZXIoYz0+Yy5zZXJ2aWNlPT09IkdGRUVEQkFDSyIpWzBdLnBhcmFtcz8uZmlsdGVyKGM9PmMua2V5PT09ImUiKVswXSxiPW5ldyBTZXQoXy53KCJGRVhQX0VYUEVSSU1FTlRTIixbXSkpOyhhPy52YWx1ZT8uc3BsaXQoIiwiKXx8W10pLmZvckVhY2goYz0+e2IuYWRkKE51bWJlcihjKSl9KTtyZXR1cm4gQXJyYXkuZnJvbShiKS5qb2luKCIsIil9Owpzb2E9ZnVuY3Rpb24oKXtyZXR1cm4gXy5XRCgoKT0+e3ZhciBhPV8uWEQucmVzcG9uc2U/LnJlc3BvbnNlPy5yZXNwb25zZUNvbnRleHQ/LnNlcnZpY2VUcmFja2luZ1BhcmFtcz8uZmlsdGVyKGM9PmMuc2VydmljZT09PSJHRkVFREJBQ0siKVswXS5wYXJhbXM/LmZpbHRlcihjPT5jLmtleT09PSJwcmVtaXVtX21lbWJlcnNoaXAiKVswXSxiPV8uWEQucmVzcG9uc2U/LnBsYXllclJlc3BvbnNlPy5yZXNwb25zZUNvbnRleHQ/LnNlcnZpY2VUcmFja2luZ1BhcmFtcz8uZmlsdGVyKGM9PmMuc2VydmljZT09PSJHRkVFREJBQ0siKVswXS5wYXJhbXM/LmZpbHRlcihjPT5jLmtleT09PSJwcmVtaXVtX21lbWJlcnNoaXAiKVswXTtyZXR1cm4gYT9hLnZhbHVlOmI/Yi52YWx1ZTpudWxsfSl9OwpDWD1mdW5jdGlvbihhKXsobmV3IF8uZnkoYS5vbGRVUkwpKS52PT09IiNmZWVkYmFjayImJndpbmRvdy5sb2NhdGlvbi5oYXNoIT09IiNmZWVkYmFjayImJihCWCghMSksKGE9d2luZG93LkdPT0dMRV9GRUVEQkFDS19ERVNUUk9ZX0ZVTkNUSU9OKSYmYSgpKX07dG9hPWZ1bmN0aW9uKCl7Xy5GSi50aGVuKCgpPT57d2luZG93LmxvY2F0aW9uLmhhc2g9PT0iI2ZlZWRiYWNrIiYmKF8uWU0/Xy4kTSgiIik6Xy5aTSgpKTtyZXR1cm4gXy5GSn0pfTt1b2E9ZnVuY3Rpb24oKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsQ1gpO3RvYSgpO0JYKCExKTtfLkVwKCJ1c2VyRmVlZGJhY2tFdmVudCIse30pfTt2b2E9ZnVuY3Rpb24oKXtyZXR1cm57cHJvZHVjdElkOiI3NzUyMiIsbG9jYWxlOl8udygiSFRNTF9MQU5HIiwiZW4iKSxhbGxvd05vbkxvZ2dlZEluRmVlZGJhY2s6ITAsYnVja2V0OiJDMyIsY2FsbGJhY2s6dW9hLG9uTG9hZENhbGxiYWNrOigpPT57QlgoITApfX19Owp3b2E9ZnVuY3Rpb24oYSl7dmFyIGI9dm9hKCksYz17Y2xpZW50QXBwVmVyc2lvbjpfLncoIkNMSUVOVF9BUFBfVkVSU0lPTiIsIiIpLGV4cGVyaW1lbnRzOnJvYSgpLGxvZ2dlZF9pbjpfLnRQKCksRGV2aWNlOl8uYmMoKSxwcmVtaXVtX21lbWJlcnNoaXA6c29hKCl9O18uVk0oKXx8Xy5XTSgpO2EmJmEuZm9yRWFjaChkPT57KGQ9ZC51c2VyRmVlZGJhY2tFbmRwb2ludFByb2R1Y3RTcGVjaWZpY1ZhbHVlRGF0YSkmJmQua2V5JiYoY1tkLmtleV09ZC52YWx1ZSl9KTtfLlVOKCkudGhlbigoKT0+e18uJE0oImZlZWRiYWNrIik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLENYKTtfLllPKGIsYyl9KX07eG9hPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBEWDtiLmFib3J0KGEpO3JldHVybiBiLnNpZ25hbH07CnlvYT1mdW5jdGlvbigpe2lmKHRoaXMuYWJvcnRlZCl0aHJvdyB0aGlzLnJlYXNvbj8/bmV3IERPTUV4Y2VwdGlvbigic2lnbmFsIGlzIGFib3J0ZWQgd2l0aG91dCByZWFzb24iLCJBYm9ydEVycm9yIik7fTt6b2E9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IERYO2ZvcihsZXQgYyBvZiBhKWlmKGMuYWJvcnRlZCl7Yi5hYm9ydChjLnJlYXNvbik7YnJlYWt9ZWxzZSBFWC5zZXQoYi5zaWduYWwsYiksRlguYWRkKGMsYi5zaWduYWwpO3JldHVybiBiLnNpZ25hbH07QW9hPWZ1bmN0aW9uKCl7Zm9yKGxldCBhIG9mIEZYLmdldCh0aGlzKSlFWC5nZXQoYSkuYWJvcnQodGhpcy5yZWFzb24pfTtCb2E9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IERYO3NldFRpbWVvdXQoKCk9PntiLmFib3J0KG5ldyBET01FeGNlcHRpb24oInNpZ25hbCB0aW1lZCBvdXQiLCJUaW1lb3V0RXJyb3IiKSl9LGEpO3JldHVybiBiLnNpZ25hbH07CkNvYT1mdW5jdGlvbigpe3ZhciBhPVtdLGI7dmFyIGM9Y3x8R1gubGVuZ3RoO2ZvcihiPTA7Yjw4O2IrKylhW2JdPUdYWzB8TWF0aC5yYW5kb20oKSpjXTtyZXR1cm4gYS5qb2luKCIiKX07SFg9ZnVuY3Rpb24oYSl7Zm9yKGxldCBbLGJdb2YgT2JqZWN0LmVudHJpZXMoRG9hKSl7bGV0IGM9YjtpZihjPT09IlNMSV9TVEFUVVNfIithKXJldHVybiBjfXJldHVybiJTTElfU1RBVFVTX1VOS05PV04ifTtJWD1mdW5jdGlvbihhLGIsYyl7Yj1IWChiKTtaVyh7ZGltZW5zaW9uczpjLHJlY29yZHM6W3tuYW1lOmEsc3RhdGU6IlNMSV9TVEFURV9FTkQiLHN0YXR1czpifV19KX07Rm9hPWZ1bmN0aW9uKGEpe3JldHVybiBCbmEoYSwoKT0+bmV3IEVvYShhKSl9O21vYT1mdW5jdGlvbihhKXtyZXR1cm4gRm9hKGEpfTtLWD1mdW5jdGlvbihhLGIpe0pYKGEsYCR7Yn0gd2FzIGNhbGxlZCBidXQgbm90IHNldGApfTtIb2E9ZnVuY3Rpb24oYSl7cmV0dXJuIEdvYS5pbmRleE9mKGEpPi0xfTsKSlg9ZnVuY3Rpb24oYSxiLGMpe2M9YyE9PXZvaWQgMD9PYmplY3Qua2V5cyhhKS5maWx0ZXIoYyk6T2JqZWN0LmtleXMoYSk7YT1uZXcgXy5YaihgW0NvbW1hbmQgSGFuZGxlcl0gJHtifWAse2ZpbHRlcmVkQ29tbWFuZE5hbWVzOmMsb3JpZ2luYWxDb21tYW5kOmF9KTtfLkdwKGEpfTtJb2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLkIoYSxfLk5KKTtpZihjJiYoYz1iW2Muc2lnbmFsXSkpcmV0dXJuIGMoKTtmb3IobGV0IGQgb2YgT2JqZWN0LmtleXMoYSkpaWYoYltkXSYmKGE9YltkXSkpcmV0dXJuIGEoKX07Sm9hPWZ1bmN0aW9uKGEsYixjPSExLGQ9ITEsZT1bXSl7TFguaW5zdGFuY2U9bmV3IExYKGEsYixjLGQsZSl9OwpLb2E9ZnVuY3Rpb24oYSl7aWYoIWEuRCYmXy53QygiY29tbWFuZCIpKXtsZXQgYj1hLnJlc29sdmVDb21tYW5kO2EucmVzb2x2ZUNvbW1hbmQ9ZnVuY3Rpb24oYyxkKXthOntmb3IoZSBpbiBjKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChjLGUpKXt2YXIgZT17Y29tbWFuZFR5cGU6ZX07YnJlYWsgYX1lPXt9fXJldHVybiBfLnlDKCJjb21tYW5kIixlLGIuYmluZCh0aGlzLGMsZCkpfTthLkQ9ITB9fTsKTVg9ZnVuY3Rpb24oYSxiLGMpeyFjPy5tZCYmYS5qJiYoYi5jbGlja1RyYWNraW5nUGFyYW1zPyhjPWM/LmZvcm0/LmVsZW1lbnQsYS5qLmNsaWNrQ29tbWFuZChiLG51bGwsYyYmYy5nZXRTY3JlZW5MYXllciYmYy5nZXRTY3JlZW5MYXllcigpKSk6Yi5jbGlja1RyYWNraW5nUGFyYW1zP2Euai5jbGlja0NvbW1hbmQoYik6IV8ueCgiZGlzYWJsZV9jbGlja2VkX3Zpc3VhbF9lbGVtZW50X2luX2NvbW1hbmRfaGFuZGxlciIpJiZjPy5jbGlja2VkVmlzdWFsRWxlbWVudCYmXy53SihhLmosYy5jbGlja2VkVmlzdWFsRWxlbWVudCkpfTsKTG9hPWZ1bmN0aW9uKGEsYixjKXtpZighYS5CKXJldHVybntoYW5kbGVkOiExfTt2YXIgZD1Jb2EoYixhLkIpO3JldHVybiBkPygoYS5LLnNvbWUoZT0+ISFfLkIoYixlKSl8fGM/LlBwfHwhYS5JKSYmTVgoYSxiLGMpLHtoYW5kbGVkOiEwLFprOihhc3luYygpPT57YXdhaXQgKGQgaW5zdGFuY2VvZiBQcm9taXNlP2F3YWl0IGQ6ZCkucmVzb2x2ZShiLGMpfSkoKX0pOntoYW5kbGVkOiExfX07Ck5YPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1Nb2EoYik7aWYoIWM/LlRLKXtsZXQgZj1Mb2EoYSxiLGMpO2lmKGYuaGFuZGxlZClyZXR1cm4gZn1pZihkKXJldHVybiBOb2EoYSxiLGMpO2lmKCFhLnYpcmV0dXJuIEpYKGIsIlVuaGFuZGxlZCBjb21tYW5kIGJ5IGJ1aWxkQ29tbWFuZFBheWxvYWQiKSx7aGFuZGxlZDohMX07dmFyIGU9YS52KGIsYyk7Yz8uRWkmJihlLkVpPWMuRWkpO2lmKGUudHlwZT09PTApe2lmKCFhLm5hdmlnYXRlKXJldHVybiBLWChiLCJuYXZpZ2F0ZSIpLHtoYW5kbGVkOiExfTtpZighXy5CKGUuY29tbWFuZD8uY29tbWFuZE1ldGFkYXRhLF8uencpPy51cmwpcmV0dXJuIEpYKGIsIlBhZ2UgcmVxdWVzdHMgbmVlZCB0byBzcGVjaWZ5IGEgdXJsIikse2hhbmRsZWQ6ITF9O2lmKE9vYShhLGUuY29tbWFuZCkpcmV0dXJue2hhbmRsZWQ6ITF9O18ueCgibG9nZ2luZ19hdm9pZF9ibG9ja2luZ19kdXJpbmdfbmF2aWdhdGlvbiIpJiZfLmlvKCkudHJhbnNpdGlvbigiYXBwbGljYXRpb25fbmF2aWdhdGluZyIpOwpiPWEubmF2aWdhdGUoZSl8fFtdO2Q9UHJvbWlzZS5yZXNvbHZlKEduYShiKS50aGVuKCgpPT57YS5vLmRlbGV0ZShlLmNvbW1hbmQpfSkpO2EuaiYmIWEuWSYmQW5hKGEuaixlLmNvbW1hbmQse2NsaWNrZWRWaXN1YWxFbGVtZW50OmM/LmNsaWNrZWRWaXN1YWxFbGVtZW50LGZsOmIsbGF5ZXI6ZS5sYXllcixhdXRvbWF0ZWRMb2dFdmVudFNvdXJjZTo0fSk7cmV0dXJue2hhbmRsZWQ6ITAsWms6ZH19aWYoZS50eXBlPT09MSlyZXR1cm4gS1goYiwiaGFuZGxlU2VydmljZVJlcXVlc3QiKSx7aGFuZGxlZDohMX07ZS50eXBlPT09MiYmS1goYiwic2VuZEFjdGlvbiIpO3JldHVybntoYW5kbGVkOiExfX07TW9hPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQihhLF8uenopPy5zaWduYWw9PT0iQ0xJRU5UX1NJR05BTCI7cmV0dXJuISFfLkIoYSxfLlNEKXx8Yn07Ck5vYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT1fLkIoYixfLlNEKTtlP2Q9ZT8uY29tbWFuZHN8fFtdOl8uQihiLF8uenopPy5zaWduYWw9PT0iQ0xJRU5UX1NJR05BTCImJihkPV8uQihiLF8uenopPy5hY3Rpb25zfHxbXSk7aWYoZCl7KGU9UG9hKGEsZCkpJiZNWChhLGIsYyk7Yj1bXTtmb3IobGV0IGYgb2YgZCl0cnl7ZD17Li4uY307ZSYmKGQubWQ9ITApO2xldCBoPU5YKGEsZixkKTtoLmhhbmRsZWQmJmIucHVzaChoLlprKX1jYXRjaChoKXtoIGluc3RhbmNlb2YgRXJyb3ImJl8uR3AoaCl9cmV0dXJue2hhbmRsZWQ6ITAsWms6UHJvbWlzZS5hbGxTZXR0bGVkKGIpLnRoZW4oKCk9Pnt9KX19SlgoYiwiQ291bGQgbm90IGhhbmRsZSB0aGUgbWV0YSBjb21tYW5kIik7cmV0dXJue2hhbmRsZWQ6ITF9fTtPb2E9ZnVuY3Rpb24oYSxiKXtpZihhLm8uaGFzKGIpKXJldHVybiEwO2Euby5hZGQoYik7cmV0dXJuITF9OwpQb2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5ldmVyeShjPT5hLk0uc29tZShkPT4hIV8uQihjLGQpKSl9O1FvYT1mdW5jdGlvbihhLGIpe2E9YS5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpO2lmKGEubGVuZ3RoKXJldHVybiBhPy5maW5kKGM9PmM/LmdldExhbmd1YWdlSW5mbygpPy5nZXRJZCgpPT09Yil9O1JvYT1mdW5jdGlvbihhLGIsYyl7YT1fLiRPKGEpO2lmKGEubGVuZ3RoKXJldHVybiBjP2EuZmluZChkPT5kLnRyYW5zbGF0aW9uTGFuZ3VhZ2U/ZC50cmFuc2xhdGlvbkxhbmd1YWdlLmxhbmd1YWdlQ29kZT09PWI6ITEpOmE/LmZpbmQoZD0+ZC5sYW5ndWFnZUNvZGU9PT1iKX07ClNvYT1mdW5jdGlvbihhKXt2YXIgYj1hLmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7aWYoYj8ubGVuZ3RoKXt2YXIgYz1hLmdldEF1ZGlvVHJhY2soKTthPXtsaXN0SXRlbXM6Wy4uLmIubWFwKGQ9Pih7bGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOntjb250ZW50OmQuZ2V0TGFuZ3VhZ2VJbmZvKCkuZ2V0TmFtZSgpfSxpc1NlbGVjdGVkOmQuZ2V0TGFuZ3VhZ2VJbmZvKCkuZ2V0SWQoKT09PWM/LmdldExhbmd1YWdlSW5mbygpLmdldElkKCksc2VsZWN0aW9uU3R5bGU6IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfREVGQVVMVCIscmVuZGVyZXJDb250ZXh0Ontjb21tYW5kQ29udGV4dDp7b25UYXA6e2lubmVydHViZUNvbW1hbmQ6e3NpZ25hbFNlcnZpY2VFbmRwb2ludDp7c2lnbmFsOiJDTElFTlRfU0lHTkFMIixhY3Rpb25zOlt7YXVkaW9UcmFja1NlbGVjdEFjdGlvbkNvbW1hbmQ6e2xhbmd1YWdlQ29kZTpkLmdldExhbmd1YWdlSW5mbygpLmdldElkKCl9fV19fX19fX19KSldLAp2aXNpYmxlRWxlbWVudENvdW50OjV9O3JldHVybntzaG93U2hlZXRDb21tYW5kOntwYW5lbExvYWRpbmdTdHJhdGVneTp7aW5saW5lQ29udGVudDp7c2hlZXRWaWV3TW9kZWw6e2hlYWRlcjp7cGFuZWxIZWFkZXJWaWV3TW9kZWw6e3RpdGxlOntjb250ZW50Ol8uYUEoIkFVRElPX1RSQUNLIix2b2lkIDAsIkF1ZGlvIFRyYWNrIil9fX0sY29udGVudDp7bGlzdFZpZXdNb2RlbDphfX19fX19fX07T1g9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuZ2V0T3B0aW9uKCJjYXB0aW9ucyIsInRyYWNrbGlzdCIse2luY2x1ZGVBc3I6ITB9KX07VG9hPWZ1bmN0aW9uKGEpe3ZhciBiPU9YKGEpO2lmKGI/Lmxlbmd0aClyZXR1cm4gYjthLmxvYWRNb2R1bGUoImNhcHRpb25zIik7cmV0dXJuIE9YKGEpfTsKUFg9ZnVuY3Rpb24oYSl7dmFyIGI9YS5nZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2siKTtpZihiKXJldHVybiBiO2EubG9hZE1vZHVsZSgiY2FwdGlvbnMiKTtyZXR1cm4gYS5nZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2siKX07UVg9ZnVuY3Rpb24oYSxiKXtyZXR1cm57cGFuZWxIZWFkZXJWaWV3TW9kZWw6e3RpdGxlOntjb250ZW50Ol8uYUEoYSx2b2lkIDAsYil9fX19OwpWb2E9ZnVuY3Rpb24oYSl7dmFyIGI9VG9hKGEpO2lmKGI/Lmxlbmd0aCl7dmFyIGM9UFgoYSk7YT17bGlzdEl0ZW1zOlt7bGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOntjb250ZW50Ol8uYUEoIlBMQVlFUl9DQVBUSU9OX09GRiIsdm9pZCAwLCJPZmYiKX0saXNTZWxlY3RlZDohYz8ubGFuZ3VhZ2VDb2RlLHNlbGVjdGlvblN0eWxlOiJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX0RFRkFVTFQiLHJlbmRlcmVyQ29udGV4dDp7Y29tbWFuZENvbnRleHQ6e29uVGFwOntpbm5lcnR1YmVDb21tYW5kOntzaWduYWxTZXJ2aWNlRW5kcG9pbnQ6e3NpZ25hbDoiQ0xJRU5UX1NJR05BTCIsYWN0aW9uczpbe2NhcHRpb25MYW5ndWFnZVNlbGVjdEFjdGlvbkNvbW1hbmQ6e2xhbmd1YWdlQ29kZToiIn19LHtoaWRlU2hlZXRDb21tYW5kOnt9fV19fX19fX19LC4uLmIubWFwKGQ9Pih7bGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOntjb250ZW50OmQuZGlzcGxheU5hbWV9LGlzU2VsZWN0ZWQ6ZC5kaXNwbGF5TmFtZT09PQpjPy5kaXNwbGF5TmFtZSxzZWxlY3Rpb25TdHlsZToiTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9ERUZBVUxUIixyZW5kZXJlckNvbnRleHQ6e2NvbW1hbmRDb250ZXh0OntvblRhcDp7aW5uZXJ0dWJlQ29tbWFuZDp7c2lnbmFsU2VydmljZUVuZHBvaW50OntzaWduYWw6IkNMSUVOVF9TSUdOQUwiLGFjdGlvbnM6W3tjYXB0aW9uTGFuZ3VhZ2VTZWxlY3RBY3Rpb25Db21tYW5kOntsYW5ndWFnZUNvZGU6ZC5sYW5ndWFnZUNvZGV9fSx7aGlkZVNoZWV0Q29tbWFuZDp7fX1dfX19fX19fSkpLHtsaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6e2NvbnRlbnQ6Xy5hQSgiQVVUT19UUkFOU0xBVEUiLHZvaWQgMCwiQXV0by10cmFuc2xhdGUiKX0saXNTZWxlY3RlZDohIWMudHJhbnNsYXRpb25MYW5ndWFnZSxzZWxlY3Rpb25TdHlsZToiTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9ERUZBVUxUIiwuLi4oISFjLnRyYW5zbGF0aW9uTGFuZ3VhZ2UmJntzZWxlY3Rpb25UZXh0Ontjb250ZW50OmM/LnRyYW5zbGF0aW9uTGFuZ3VhZ2U/Lmxhbmd1YWdlTmFtZXx8CiIifX0pLHJlbmRlcmVyQ29udGV4dDp7Y29tbWFuZENvbnRleHQ6e29uVGFwOntpbm5lcnR1YmVDb21tYW5kOntzaWduYWxTZXJ2aWNlRW5kcG9pbnQ6e3NpZ25hbDoiQ0xJRU5UX1NJR05BTCIsYWN0aW9uczpbVW9hKGEpXX19fX19fX1dLHZpc2libGVFbGVtZW50Q291bnQ6NX07cmV0dXJue3Nob3dTaGVldENvbW1hbmQ6e3BhbmVsTG9hZGluZ1N0cmF0ZWd5OntpbmxpbmVDb250ZW50OntzaGVldFZpZXdNb2RlbDp7aGVhZGVyOlFYKCJQTEFZRVJfQ0FQVElPTiIsIkNhcHRpb25zIiksY29udGVudDp7bGlzdFZpZXdNb2RlbDphfX19fX19fX07ClVvYT1mdW5jdGlvbihhKXt2YXIgYj1fLmFQKGEpO2lmKCFiPy5sZW5ndGgpdGhyb3cgRXJyb3IoImJlIik7dmFyIGM9UFgoYSk7YT17bGlzdEl0ZW1zOlsuLi5iLmZpbHRlcihkPT4hZC5sYW5ndWFnZUNvZGU/LnN0YXJ0c1dpdGgoImVuIikpLm1hcChkPT4oe2xpc3RJdGVtVmlld01vZGVsOnt0aXRsZTp7Y29udGVudDpkLmxhbmd1YWdlTmFtZXx8IiJ9LGlzU2VsZWN0ZWQ6ZC5sYW5ndWFnZU5hbWU9PT1jPy50cmFuc2xhdGlvbkxhbmd1YWdlPy5sYW5ndWFnZU5hbWUsc2VsZWN0aW9uU3R5bGU6IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfREVGQVVMVCIscmVuZGVyZXJDb250ZXh0Ontjb21tYW5kQ29udGV4dDp7b25UYXA6e2lubmVydHViZUNvbW1hbmQ6e3NpZ25hbFNlcnZpY2VFbmRwb2ludDp7c2lnbmFsOiJDTElFTlRfU0lHTkFMIixhY3Rpb25zOlt7Y2FwdGlvbkxhbmd1YWdlU2VsZWN0QWN0aW9uQ29tbWFuZDp7bGFuZ3VhZ2VDb2RlOmQubGFuZ3VhZ2VDb2RlLGlzQXV0b1RyYW5zbGF0ZWQ6ITB9fSwKe2hpZGVTaGVldENvbW1hbmQ6e319XX19fX19fX0pKV0sdmlzaWJsZUVsZW1lbnRDb3VudDo1fTtyZXR1cm57c2hvd1NoZWV0Q29tbWFuZDp7cGFuZWxMb2FkaW5nU3RyYXRlZ3k6e2lubGluZUNvbnRlbnQ6e3NoZWV0Vmlld01vZGVsOntoZWFkZXI6UVgoIkFVVE9fVFJBTlNMQVRFIiwiQXV0by10cmFuc2xhdGUiKSxjb250ZW50OntsaXN0Vmlld01vZGVsOmF9fX19fX19O1dvYT1mdW5jdGlvbihhKXt2YXIgYj1fLlZ3KCk7aWYoYil7dmFyIGM9e3dlYkNsaWVudENvbXBvbmVudHNEYXRhOntjb21wb25lbnRzOkFycmF5LmZyb20oYS5pZHMsZD0+KHtpZDpkfSkpfX07YS5pZHMuY2xlYXIoKTtfLmh4KCkudmlzdWFsRWxlbWVudFN0YXRlQ2hhbmdlZChiLGMpfX07ClhvYT1mdW5jdGlvbihhKXt2YXIgYj16WDthLmFkZEV2ZW50TGlzdGVuZXIoIm9uU3RhdGVDaGFuZ2UiLGM9PntpZihhKXt2YXIgZD1hLmdldFZpZGVvRGF0YSgpLnZpZGVvX2lkO2QhPT1SWCYmYz09PTEmJihSWD1kLFNYLm8oYigpKSxUWC5vKGIoKSkpfX0pO2EuYWRkRXZlbnRMaXN0ZW5lcigib25FcnJvciIsYz0+e1NYLmooYigpKTt5WCgicGxheWVyIGVycm9yIixiKCkse2Vycm9yQ29kZTpjfSl9KTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGxheWJhY2stdW5wbGF5YWJsZSIsYz0+e1RYLmooYigpKTt5WCgicGxheWVyIHVucGxheWFibGUiLGIoKSx7cmVhc29uOmMuZGV0YWlsPy5yZWFzb259KX0pfTtZb2E9YXN5bmMgZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmouZ2V0KGIpO2lmKGMpcmV0dXJuIGMucHJvbWlzZTtjPW5ldyBfLmNzO2Euai5zZXQoYixjKTtyZXR1cm4gYy5wcm9taXNlfTsKWm9hPWFzeW5jIGZ1bmN0aW9uKGEsYil7dmFyIGM9YS5PbS5nZXQoYik7cmV0dXJuIGM/YzpZb2EoYSxiKX07JG9hPWFzeW5jIGZ1bmN0aW9uKGEsYil7aWYoYS5wYW5lbExvYWRpbmdTdHJhdGVneT8ucmVxdWVzdFRlbXBsYXRlKXRyeXtsZXQgYz1hd2FpdCBhLm8uUWkoYik7aWYoYylyZXR1cm4gYy5jb250ZW50O18uR3AoRXJyb3IoImNlIikpfWNhdGNoKGMpe18uR3AoYyl9fTtWWD1mdW5jdGlvbihhLGIpe3JldHVybiBVWChhKT8ub3coYik/P2J9O1VYPWZ1bmN0aW9uKGEpe3JldHVybiBfLlpPKCkmJmEuTT9hLk06YS5jb250YWluZXJ9O1dYPWZ1bmN0aW9uKGEpe2EuWSYmKGNsZWFyVGltZW91dChhLlkpLGEuWT12b2lkIDApO2EuQiYmKGNsZWFyVGltZW91dChhLkIpLGEuQj12b2lkIDApfTsKJFg9YXN5bmMgZnVuY3Rpb24oYSxiLGMsZD1jKXt2YXIgZT17c3RhY2s6W10sZXJyb3I6dm9pZCAwLGhhc0Vycm9yOiExfTt0cnl7bGV0IGY9Xy5adCxoPWF3YWl0IGEuZG0oKTtfLlZ6KGUsXy52TShmKSk7aWYoaClpZihhLm8pe2lmKGEuY3VycmVudFRhcmdldD09PWMpcmV0dXJuO1hYKGEpO1lYKGEpO2F3YWl0IFVYKGEpPy5KZSgpfWVsc2UgaWYoIV8ueCgiZGVsYXlfc2hlZXRfb3Blbl9raWxsc3dpdGNoIikpe2lmKF8ueCgid2ViX2Nsb3NlX3NoZWV0X2lmX3NhbWVfdGFyZ2V0X2tpbGxzd2l0Y2giKSYmYyYmYS5jdXJyZW50VGFyZ2V0PT09Yyl7VVgoYSk/LkplKCk7cmV0dXJufWEudj17ZGF0YTpiLHRhcmdldDpWWChhLGMpfTtyZXR1cm59Yi52aWV3TW9kZWwmJihiPXt2aWV3TW9kZWw6Yi52aWV3TW9kZWwsVXI6Yi5VcixleHBhbmRUb0Z1bGxXaWR0aDpiLmV4cGFuZFRvRnVsbFdpZHRoLG9wZW5Ub1NpZGU6Yi5vcGVuVG9TaWRlfSk7VVgoYSk/LndnKGIsYyxkKTthLmN1cnJlbnRUYXJnZXQ9CmM7YS5vPyhhLkkoKSxhLmN1cnJlbnRUYXJnZXQ/LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGEuSSksYS5jdXJyZW50VGFyZ2V0Py5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixhLlopLFpYKGEpKTphLkQmJlpYKGEpfWNhdGNoKGYpe2UuZXJyb3I9ZixlLmhhc0Vycm9yPSEwfWZpbmFsbHl7Xy5XeihlKX19O1hYPWZ1bmN0aW9uKGEpe2EuY3VycmVudFRhcmdldD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsYS5JKTthLmN1cnJlbnRUYXJnZXQ/LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGEuWil9O1lYPWZ1bmN0aW9uKGEpe3ZhciBiPVVYKGEpPy5YcCgpO2I/LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGEuVSk7Yj8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsYS5LKX07ClpYPWZ1bmN0aW9uKGEpe3ZhciBiPVVYKGEpPy5YcCgpO2I/LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGEuVSk7Yj8uYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsYS5LKX07YVk9YXN5bmMgZnVuY3Rpb24oYSl7aWYoYS5vKXtpZihhLmopcmV0dXJuO1hYKGEpO1lYKGEpfWVsc2UgYS5EJiYoWVgoYSksYS5LKCkpO2F3YWl0IFVYKGEpPy5KZSgpO2EuY3VycmVudFRhcmdldD12b2lkIDA7YS5qPSExO2Eubz0hMTthLmhpZGVEZWxheU1zPTA7YS5zaG93RGVsYXlNcz0wO2EuRD0hMTthLnYmJiFfLngoImRlbGF5X3NoZWV0X29wZW5fa2lsbHN3aXRjaCIpJiYoYXdhaXQgYS53ZyhhLnYuZGF0YSxhLnYudGFyZ2V0KSxhLnY9dm9pZCAwKX07CmFwYT1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTA7cmV0dXJue2NsZWFyOmZ1bmN0aW9uKCl7Yz1iLmxlbmd0aD0wfSxwdXNoOmZ1bmN0aW9uKGQpe2JbY109ZDtjPShjKzEpJWF9LFp4OmZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBkPWIubGVuZ3RoO2ZvcihsZXQgZT0wO2U8ZDtlKyspeWllbGQgYlsoYytlKSVkXX0oKX19fTticGE9ZnVuY3Rpb24oYSl7YS55bHx8KGEueWw9W10pO3ZhciBiPWEueWwubWFwKF8uUFcpLGM9bmV3IFNldChiKSxkPWFwYShhLmJ1ZmZlclNpemUpO3JldHVybntmbHVzaDpmdW5jdGlvbigpe3ZhciBlPUFycmF5LmZyb20oZC5aeCgpKTtkLmNsZWFyKCk7ZT1lLm1hcChmPT4oe25hbWU6Zi5uYW1lLHRpbWVzdGFtcDpmLnN0YXJ0VGltZSxhdHRyaWJ1dGVzOmYuYXR0cmlidXRlc30pKTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9LEdtKGUpe2UubmFtZT09PSJldmVudCImJmMuaGFzKGUuYXR0cmlidXRlcy50eXBlKXx8ZC5wdXNoKGUpfX19OwpjcGE9ZnVuY3Rpb24oYSl7dmFyIHtmbHVzaDpiLEdtOmN9PWJwYShhKTtzWCh7R206Y30pO18uVnAuc3Vic2NyaWJlKCJoYW5kbGVFcnJvciIsZD0+e3RyeXtkLnBhcmFtcy5icmVhZGNydW1icz1iKCl9Y2F0Y2goZSl7Xy5HcChlLCJXQVJOSU5HIil9fSl9O2JZPWZ1bmN0aW9uKCl7Xy5Teigid2ViX3RyYWNpbmdfYWN0aW9uIik7Xy5Ueigid2ViX3RyYWNpbmdfYWN0aW9uIix7fSx2b2lkIDAsIkxBVEVOQ1lfQUNUSU9OX1dFQl9UUkFDSU5HIil9O2VZPWZ1bmN0aW9uKCl7aWYoY1kpcmV0dXJuIndlYl90cmFjaW5nX2FjdGlvbiI7ZFkoKTtzZXRJbnRlcnZhbChkWSw2RTUpO2NZPSEwO3JldHVybiJ3ZWJfdHJhY2luZ19hY3Rpb24ifTtkWT1mdW5jdGlvbigpe18uU3ooIndlYl90cmFjaW5nX2FjdGlvbiIpO18uVHooIndlYl90cmFjaW5nX2FjdGlvbiIse30sdm9pZCAwLCJMQVRFTkNZX0FDVElPTl9XRUJfVFJBQ0lORyIpfTsKZHBhPWZ1bmN0aW9uKGEsYj1lWSgpLGMpe3JldHVybigwLF8uY3QpKGEubmFtZSwoYS5lbmRUaW1lPz9hLnN0YXJ0VGltZSktYS5zdGFydFRpbWUsYS5zdGFydFRpbWUse3dlYlRyYWNpbmc6e1thLm5hbWVdOmEuYXR0cmlidXRlc319LGMsYix7c3BhblN0YXR1czphLnN0YXR1cyxyb290U3Bhbk5vbmNlOnZvaWQgMCxxdTp2b2lkIDB9KX07Zlk9ZnVuY3Rpb24oYSxiLGMsZCl7Yz1kcGEoYSxiLGMpO2lmKGEuY2hpbGRyZW4pZm9yKGxldCBlIG9mIGEuY2hpbGRyZW4pZlkoZSxiLGMsZHx8Yyl9OwplcGE9ZnVuY3Rpb24oYSl7dmFyIGI9Z29hLmJpbmQobnVsbCwieXQudGVsZW1ldHJ5X2V4dGVuc2lvbiIpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixjPT57Yy5kYXRhJiZ0eXBlb2YgYy5kYXRhPT09Im9iamVjdCImJihjPWMuZGF0YSxjLmZyb209PT0iZXh0ZW5zaW9uIiYmYy5hcHA9PT0ieXQudGVsZW1ldHJ5IiYmKGIoIlJlY2VpdmVkIG1lc3NhZ2UgZnJvbSBleHRlbnNpb24iLGMpLGEub25NZXNzYWdlKGMpKSl9KTtyZXR1cm4gZnVuY3Rpb24oYyxkKXtjPXthcHA6Inl0LnRlbGVtZXRyeSIsZnJvbToiYXBwIixrZXk6YyxwYXlsb2FkOmR9O2IoIlNlbmRpbmcgbWVzc2FnZSB0byBleHRlbnNpb24iLGMpO3dpbmRvdy5wb3N0TWVzc2FnZShjLCIqIil9fTsKZnBhPWZ1bmN0aW9uKCl7dmFyIGE9ZXBhKHtvbk1lc3NhZ2UoKXt9fSksYj1bXTtyZXR1cm57bHIoYyl7Yy5wYXJlbnRJZD09bnVsbCYmYi5wdXNoKGMpPT09MSYmc2V0VGltZW91dCgoKT0+e3ZhciBkPVsuLi5iXTtiLmxlbmd0aD0wO2EoInNwYW5zUmVwb3J0ZWQiLHtzcGFuczpkfSl9LDNFMyl9fX07Z3BhPWZ1bmN0aW9uKCl7dmFyIGE9d2luZG93LmZldGNoO3dpbmRvdy5mZXRjaD0oLi4uYik9Pnt2YXIgW2MsZD17fV09YixlPV8ueUMoImh0dHBFdmVudCIse21ldGhvZDpkLm1ldGhvZHx8IkdFVCIscGF0aDpnWShjKSx0eXBlOiJmZXRjaCJ9LHthY3RpdmU6ITF9KTtyZXR1cm4gYSguLi5iKS50aGVuKGY9PntlLkRlKHtzdGF0dXNDb2RlOmYuc3RhdHVzLHN0YXR1c1RleHQ6Zi5zdGF0dXNUZXh0fSk7ZS5lbmQoKTtyZXR1cm4gZn0pLmNhdGNoKGY9PntlLmVuZCgiU1BBTl9TVEFUVVNfRVJST1IiKTt0aHJvdyBmO30pfX07CmhwYT1mdW5jdGlvbigpe3ZhciBhPVhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZS5vcGVuLGI9WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlLnNlbmQ7WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlLm9wZW49ZnVuY3Rpb24oYyxkLGU9ITAsZixoKXt0aGlzLnY9e21ldGhvZDpjLHVybDpkLnRvU3RyaW5nKCl9O3RoaXMuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsKCk9Pnt2YXIgaz10aGlzLmo7az8uRGUoe3N0YXR1c0NvZGU6dGhpcy5zdGF0dXMscmVzcG9uc2VDb250ZW50TGVuZ3RoOnRoaXMucmVzcG9uc2VUZXh0Lmxlbmd0aH0pO2s/LmVuZCgpfSk7dGhpcy5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9Pnt2YXIgaz10aGlzLmo7az8uRGUoe3N0YXR1c0NvZGU6dGhpcy5zdGF0dXMsc3RhdHVzVGV4dDp0aGlzLnN0YXR1c1RleHR9KTtrPy5lbmQoIlNQQU5fU1RBVFVTX0VSUk9SIil9KTt0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IiwoKT0+e3ZhciBrPXRoaXMuajtrPy5EZSh7c3RhdHVzQ29kZTp0aGlzLnN0YXR1cywKYWJvcnRlZDohMH0pO2s/LmVuZCgpfSk7YS5hcHBseSh0aGlzLFtjLGQsZSxmLGhdKX07WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlLnNlbmQ9ZnVuY3Rpb24oYyl7dmFyIHttZXRob2Q6ZCx1cmw6ZX09dGhpcy52fHx7bWV0aG9kOiJOL0EiLHVybDoiTi9BIn07dGhpcy5qPV8ueUMoImh0dHBFdmVudCIse21ldGhvZDpkLHBhdGg6Z1koZSksdHlwZToieGhyIn0se2FjdGl2ZTohMX0pO2IuYXBwbHkodGhpcyxbY10pfX07Z1k9ZnVuY3Rpb24oYSl7dHJ5e2lmKGEgaW5zdGFuY2VvZiBVUkwpcmV0dXJuIGEucGF0aG5hbWU7YSBpbnN0YW5jZW9mIFJlcXVlc3QmJihhPWEudXJsKTtyZXR1cm4obmV3IFVSTChhLCJodHRwczovL3lvdXR1YmUuY29tIikpLnBhdGhuYW1lfWNhdGNoKGIpe3JldHVybiI8dW5hYmxlIHRvIHBhcnNlIHBhdGg+In19OwpqcGE9ZnVuY3Rpb24oKXt3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlUeXBlJiZ3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsKCk9Pnt0cnl7bGV0IGE9d2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUoIm5hdmlnYXRpb24iKTtpZihhLmxlbmd0aD4wKXtsZXQgYj1hWzBdLGM9d2luZG93LnBlcmZvcm1hbmNlLnRpbWVPcmlnaW47Xy55QygicGFnZUxvYWQiLHtuYXZpZ2F0aW9uVHlwZTppcGEoYi50eXBlKSx1bmxvYWRFdmVudFN0YXJ0Ok1hdGgucm91bmQoYi51bmxvYWRFdmVudFN0YXJ0KSx1bmxvYWRFdmVudEVuZDpNYXRoLnJvdW5kKGIudW5sb2FkRXZlbnRFbmQpLGRvbUludGVyYWN0aXZlOk1hdGgucm91bmQoYi5kb21JbnRlcmFjdGl2ZSksZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQ6TWF0aC5yb3VuZChiLmRvbUNvbnRlbnRMb2FkZWRFdmVudFN0YXJ0KSxkb21Db250ZW50TG9hZGVkRXZlbnRFbmQ6TWF0aC5yb3VuZChiLmRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZCksCmRvbUNvbXBsZXRlOk1hdGgucm91bmQoYi5kb21Db21wbGV0ZSksbG9hZEV2ZW50U3RhcnQ6TWF0aC5yb3VuZChiLmxvYWRFdmVudFN0YXJ0KSxsb2FkRXZlbnRFbmQ6TWF0aC5yb3VuZChiLmxvYWRFdmVudEVuZCkscmVkaXJlY3RDb3VudDpiLnJlZGlyZWN0Q291bnR9LHthY3RpdmU6ITEsc3RhcnRUaW1lOmMrYi5zdGFydFRpbWUsZW5kVGltZTpjK2IubG9hZEV2ZW50RW5kfSl9fWNhdGNoKGEpe319KX07CmlwYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAibmF2aWdhdGUiOnJldHVybiJQRVJGT1JNQU5DRV9OQVZJR0FUSU9OX1RJTUlOR19UWVBFX05BVklHQVRFIjtjYXNlICJyZWxvYWQiOnJldHVybiJQRVJGT1JNQU5DRV9OQVZJR0FUSU9OX1RJTUlOR19UWVBFX1JFTE9BRCI7Y2FzZSAiYmFja19mb3J3YXJkIjpyZXR1cm4iUEVSRk9STUFOQ0VfTkFWSUdBVElPTl9USU1JTkdfVFlQRV9CQUNLX0ZPUldBUkQiO2Nhc2UgInByZXJlbmRlciI6cmV0dXJuIlBFUkZPUk1BTkNFX05BVklHQVRJT05fVElNSU5HX1RZUEVfUFJFUkVOREVSIjtkZWZhdWx0OnJldHVybiJQRVJGT1JNQU5DRV9OQVZJR0FUSU9OX1RJTUlOR19UWVBFX1VOS05PV04ifX07CmxwYT1mdW5jdGlvbigpe0luYSgoYSxiKT0+e3ZhciBjPW5ldyBNYXAsZCxlPWVZKCk7Zm9yKGxldCBoIG9mIGEuc3BhbnMpe2lmKGgubWFya2VyKWNvbnRpbnVlO3ZhciBmPWIuZ2V0KGguaWQpPy5nZXQoXy5Pdik7bGV0IGs9Zj9rcGFbZi50eXBlXTp2b2lkIDA7aWYoIWZ8fGguZHVyYXRpb25Ncz09PXZvaWQgMHx8az09PXZvaWQgMCl7aC5wYXJlbnRJZCE9PXZvaWQgMCYmKGY9Yy5nZXQoaC5wYXJlbnRJZCksZiE9PXZvaWQgMCYmYy5zZXQoaC5pZCxmKSk7Y29udGludWV9bGV0IGw9YS5uSytoLnlLLG09aC5wYXJlbnRJZCE9PXZvaWQgMD9jLmdldChoLnBhcmVudElkKTp2b2lkIDAsbixwO3N3aXRjaChmLnR5cGUpe2Nhc2UgIlJlbmRlciI6Y2FzZSAiRWZmZWN0IjpjYXNlICJPbkluaXQiOmNhc2UgIlJlbmRlckVmZmVjdCI6cD1mLmxvY2F0aW9uO2JyZWFrO2Nhc2UgIkNyZWF0ZVJlYWN0aXZlQ29tcG9uZW50IjpuPWYuY29tcG9uZW50TmFtZTticmVhaztjYXNlICJDb21wdXRlZCI6bj0KZi5oSTtwPWYubG9jYXRpb247YnJlYWs7Y2FzZSAiU2lnbmFsVXBkYXRlIjpuPWYuU0t9aWYoZj0oMCxfLmN0KSgiY293X3NwYW4iLGguZHVyYXRpb25NcyxsLHt3ZWJUcmFjaW5nOntjb3dTcGFuOnt0eXBlOmssbmFtZTpuLGNvZGVMb2NhdGlvbjpwfX19LG0sZSx7cm9vdFNwYW5Ob25jZTpkfSkpYy5zZXQoaC5pZCxmKSxkPT09dm9pZCAwJiYoZD1mKX19KX07CnBwYT1mdW5jdGlvbigpe3ZhciBhPWhZLnZhbHVlLGI9e307Zm9yKGxldCBjIG9mIGEuSHYpYltjXT0hMDtlb2Eoe3Nlc3Npb25JZDpfLkZuKCksZGg6YixXaChjLGQsZSl7cmV0dXJuIG1wYT9jPT09InNob3J0VG9TaG9ydCJ8fGU/Lld6KCk/Lm5hbWU9PT0ic2hvcnRUb1Nob3J0IjohMH19KTtmb2EoKTtfLndDKCJwYWdlTG9hZCIpJiZqcGEoKTtfLndDKCJjb3dTcGFuIikmJmxwYSgpO18ud0MoImh0dHBFdmVudCIpJiYoZ3BhKCksaHBhKCkpO2EuUXYmJnNYKG5wYSk7YS5SdiYmc1goZnBhKCkpO2EuTXE+MCYmY3BhKHt5bDpvcGEsYnVmZmVyU2l6ZTphLk1xfSl9OwpqWT1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDB8fGEuZ2V0QXR0cmlidXRlKCJ2aWV3Qm94Iil8fGEuc2V0QXR0cmlidXRlKCJ2aWV3Qm94IixgMCAwICR7Yn0gJHtifWApO2Euc2V0QXR0cmlidXRlKCJmb2N1c2FibGUiLCJmYWxzZSIpO2Euc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsInRydWUiKTtiPV8ueCgia2lsbHN3aXRjaF9yZW1vdmVfaWNvbl9maWxsX2NvbG9yIik7YS5nZXRBdHRyaWJ1dGUoImZpbGwiKSE9PSJjdXJyZW50Y29sb3IiJiZhLmdldEF0dHJpYnV0ZSgiZmlsbCIpIT09ImN1cnJlbnRDb2xvciJ8fGJ8fGEucmVtb3ZlQXR0cmlidXRlKCJmaWxsIik7dHJ5e2Euc3R5bGUucG9pbnRlckV2ZW50cz0ibm9uZSIsYS5zdHlsZS5kaXNwbGF5PSJpbmhlcml0IixhLnN0eWxlLndpZHRoPSIxMDAlIixhLnN0eWxlLmhlaWdodD0iMTAwJSJ9Y2F0Y2goYyl7aVkoe2Vycm9yOmM/LnRvU3RyaW5nP2MudG9TdHJpbmcoKToiIn0pO3RyeXthLnN0eWxlLmNzc1RleHQ9InBvaW50ZXItZXZlbnRzOiBub25lOyBkaXNwbGF5OiBpbmhlcml0OyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyJ9Y2F0Y2goZCl7aVkoe2Vycm9yOmQ/LnRvU3RyaW5nPwpkLnRvU3RyaW5nKCk6IiJ9KX19cmV0dXJuIGF9OwpxcGE9ZnVuY3Rpb24oYSl7aWYoXy54KCJ3aWxfaWNvbnNfY2FjaGVfcHVyZ2Vfa2lsbHN3aXRjaCIpKXJldHVybiExO3RyeXt2YXIgYj1fLnUubG9jYWxTdG9yYWdlfWNhdGNoKGUpe3JldHVybiExfWlmKCFifHwhYS5CKXJldHVybiExO3ZhciBjPWU9Pnt0cnl7Yj8uc2V0SXRlbSgieXQtaWNvbnMtbGFzdC1wdXJnZWQiLGUudG9TdHJpbmcoKSl9Y2F0Y2goZil7aVkoe2Vycm9yOmY/LnRvU3RyaW5nP2YudG9TdHJpbmcoKToiIn0pfX0sZD1OdW1iZXIoYi5nZXRJdGVtKCJ5dC1pY29ucy1sYXN0LXB1cmdlZCIpKTtpZighZClyZXR1cm4gZD1uZXcgRGF0ZSxkPWQuc2V0RGF0ZShkLmdldERhdGUoKS1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOTArMSkpLGMoZCksITE7aWYoZnVuY3Rpb24oZSxmKXtlPW5ldyBEYXRlKGUpO2Y9bmV3IERhdGUoZik7cmV0dXJuIGYuZ2V0TW9udGgoKS1lLmdldE1vbnRoKCkrMTIqKGYuZ2V0RnVsbFllYXIoKS1lLmdldEZ1bGxZZWFyKCkpfShkLERhdGUubm93KCkpPAozKXJldHVybiExO3RyeXtyZXR1cm4gXy51LmNhY2hlcy5kZWxldGUoInl0LWljb25zIikudGhlbihlPT57ZSYmYyhEYXRlLm5vdygpKTtyZXR1cm4gZX0pLmNhdGNoKCgpPT4hMSkuZmluYWxseSgoKT0+e2EuSz0hMX0pfWNhdGNoKGUpe3JldHVybiBpWSh7ZXJyb3I6ZT8udG9TdHJpbmc/ZS50b1N0cmluZygpOiIifSksITF9fTsKa1k9YXN5bmMgZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnVybDtpZighcnBhKGMpKXRocm93IEVycm9yKCJkZSIpO3JldHVybiBzcGEoYSxjKS50aGVuKGQ9PmQuY2xvbmUoKS50ZXh0KCkpLnRoZW4oZD0+e3ZhciBlPV8uZ2IoZCk7ZD1iLnNpemU7dmFyIGY9Xy5DZCgiRElWIik7Xy56QShmLGUpO2lmKGYuZmlyc3RFbGVtZW50Q2hpbGQhPT12b2lkIDApZT1mLmZpcnN0RWxlbWVudENoaWxkO2Vsc2UgZm9yKGU9Zi5maXJzdENoaWxkO2UmJmUubm9kZVR5cGUhPTE7KWU9ZS5uZXh0U2libGluZztlPV8uRGQoZSk7ZD1qWShlLGQpO2EuRFtjXT1kLmNsb25lTm9kZSghMCk7ZGVsZXRlIGEuWVtjXTtyZXR1cm4gZH0pLmNhdGNoKCgpPT57fSl9OwpsWT1mdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4oZSxmKT0+e3ZhciBoPV8uQ2QoIkRJViIpLGs9e2ljb25XaWR0aDpgJHtiLnNpemV9cHhgLGljb25IZWlnaHQ6YCR7Yi5zaXplfXB4YCxqeDoiYmxvY2siLC4uLmYsaWNvbkNvbG9yOmY/Lmljb25Db2xvcj8/ImN1cnJlbnRjb2xvciJ9O2Y9ay5pY29uQ29sb3I7dmFyIGw9ay5hZztrPWB3aWR0aDogJHtrLmljb25XaWR0aH07IGhlaWdodDogJHtrLmljb25IZWlnaHR9OyBkaXNwbGF5OiAke2suanh9O2A7bCYmKGsrPWAgZmlsdGVyOiAke2x9O2ApO2M9PT0wJiYoays9YCBmaWxsOiAke2Z9O2ApO2M9PT0xJiYobD1iLnVybCxrKz1gIC13ZWJraXQtbWFzazogdXJsKCR7bH0pIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjsgbWFzazogdXJsKCR7bH0pIG5vLXJlcGVhdCBjZW50ZXIgLyBjb3ZlcjsgYmFja2dyb3VuZC1jb2xvcjogJHtmfWApO2IudnUmJmEuS2s9PT0icnRsIiYmKGsrPSIgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7IHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7Iik7Cmguc2V0QXR0cmlidXRlKCJzdHlsZSIsayk7Yz09PTAmJmQmJmguYXBwZW5kQ2hpbGQoZCk7ZS5hcHBlbmRDaGlsZChoKX19OwpuWT1mdW5jdGlvbihhLGIpe2lmKGIpe2EuY291bnRlcis9MTthPWBfeXQke2EuY291bnRlcn1gO2I9W2IsLi4uYi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpXTtmb3IobGV0IGMgb2YgYilpZihjLnRhZ05hbWU9PT0ic3R5bGUiJiZjLnRleHRDb250ZW50KWMudGV4dENvbnRlbnQ9bVkoYy50ZXh0Q29udGVudCxhLCEwKTtlbHNlIGZvcihsZXQgZCBvZiBjLmF0dHJpYnV0ZXMpe2QubmFtZT09PSJpZCImJihkLnZhbHVlKz1hKTtbIm1hc2siLCJmaWxsIiwiY2xpcC1wYXRoIl0uaW5jbHVkZXMoZC5uYW1lKSYmKGQudmFsdWU9bVkoZC52YWx1ZSxhKSk7aWYoZC5uYW1lPT09InN0eWxlIil7Yj1jLnN0eWxlO3RyeXtiLmNzc1RleHQ9bVkoYi5jc3NUZXh0LGEsITApfWNhdGNoKGUpe2lZKHtlcnJvcjplPy50b1N0cmluZz8uKCl8fCIiLGVsOmMub3V0ZXJIVE1MLHN0eWxlOiEhYixjc3NUZXh0OmI/LmNzc1RleHR9KX19ZC5uYW1lPT09InhsaW5rOmhyZWYiJiYoZC52YWx1ZT1kLnZhbHVlLnJlcGxhY2UoLyMoLiopLywKYCMkMSR7YX1gKSl9fX07bVk9ZnVuY3Rpb24oYSxiLGM9ITEpe3ZhciBkPS91cmxcKFsiJ10/IyguKj8pWyInXT9cKS87YyYmKGQ9L3VybFwoWyInXT8jKC4qPylbIiddP1wpL2cpO3JldHVybiBhLnJlcGxhY2UoZCxgdXJsKCMkMSR7Yn0pYCl9O2lZPWZ1bmN0aW9uKGEpe18uSXAobmV3IF8uWGooIkVycm9yIGluIEljb25NYW5hZ2VyIixhKSl9O3JwYT1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgdHBhKWlmKGEuc3RhcnRzV2l0aChiKSYmYS5lbmRzV2l0aCgiLnN2ZyIpKXJldHVybiEwO3JldHVybiExfTsKc3BhPWFzeW5jIGZ1bmN0aW9uKGEsYil7YS5RYSYmYXdhaXQgdXBhKGEpO3ZhciBjPWEuWVtiXTtpZighYyl7bGV0IGQ9YXN5bmMoKT0+e3ZhciBlPWEuQj9hLlp8fGF3YWl0IGEuVTp2b2lkIDA7cmV0dXJuIGEub2E/YS5nYShiLGUpLmNhdGNoKGEuaGEuYmluZChhLGIsZSkpOmEuaGEoYixlKS5jYXRjaChhLmdhLmJpbmQoYSxiLGUpKX07Yz1hLk1hP25ldyBQcm9taXNlKChlLGYpPT57Xy5ZaigoKT0+e2QoKS50aGVuKGUpLmNhdGNoKGYpfSwxMCl9KTpkKCk7YS5ZW2JdPWN9cmV0dXJuIGMuY2F0Y2goZD0+e2RlbGV0ZSBhLllbYl07aVkoe2Vycm9yOmQ/LnRvU3RyaW5nP2QudG9TdHJpbmcoKToiIix1cmw6Yn0pO3Rocm93IGQ7fSl9O3VwYT1mdW5jdGlvbihhKXt2YXIgYj1hLnY/LnByb21pc2U7Ynx8KGEudj1uZXcgXy5jcyxiPWEudi5wcm9taXNlLF8udS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PnthLnY/LnJlc29sdmUoKTthLnY9bnVsbH0pKTtyZXR1cm4gYn07CnBZPWFzeW5jIGZ1bmN0aW9uKGEsYil7aWYoYS5JPHZwYSlyZXR1cm4gYS5JKz0xLG9ZKGEsYikuZmluYWxseSgoKT0+ey0tYS5JO2lmKE9iamVjdC5rZXlzKGEubykubGVuZ3RoKXtsZXQgZD1PYmplY3Qua2V5cyhhLm8pWzBdLGU9YS5vW2RdO2RlbGV0ZSBhLm9bZF07ZS5yZXNvbHZlKHBZKGEsZCkpfX0pO3ZhciBjPW5ldyBfLmNzO2Eub1tiXT1jO3JldHVybiBjLnByb21pc2V9O3dwYT1hc3luYyBmdW5jdGlvbihhLGIsYyxkKXtkJiZuZXcgUHJvbWlzZShlPT57Xy5Zaihhc3luYygpPT57YS5vYSYmYXdhaXQgZC5tYXRjaChiKS5jYXRjaCgoKT0+e30pfHxhd2FpdCBkLnB1dChiLGMuY2xvbmUoKSkuY2F0Y2goZj0+e2lZKHtlcnJvcjpmPy50b1N0cmluZz9mLnRvU3RyaW5nKCk6IiIsdXJsOmJ9KX0pO2UoKX0sNTApfSl9OwpvWT1hc3luYyBmdW5jdGlvbihhLGIsYz0yKXtyZXR1cm4gXy51LmZldGNoKGIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIscHJpb3JpdHk6ImxvdyJ9KS50aGVuKGQ9PmQub2s/ZDpQcm9taXNlLnJlamVjdChFcnJvcigiZWVgIitkLnN0YXR1cysiYCIrZC5zdGF0dXNUZXh0KSkpLmNhdGNoKGQ9PntpZihjPjApcmV0dXJuIG9ZKGEsYixjLTEpO3Rocm93IGQ7fSl9OwpyWT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hW2IuaWNvbk5hbWVdfHxbXTthPXZvaWQgMDtmb3IobGV0IGggb2YgZSl7YTp7dmFyIGY9Yi5pY29uU2l6ZTtlPWIuaWNvblN0eWxlO2Y9IWZ8fGY9PT1oWzJdO2xldCBrPXFZW2hbMF1dO2lmKGQmJmQhPT1oWzFdfHwhZnx8ZSYmZSE9PWspe2U9ITE7YnJlYWsgYX1pZighYSl7ZT0hMDticmVhayBhfWU9cVlbaFswXV07ZT0hIWIuaWNvblN0eWxlfHxlPT09InlvdXR1YmVfb3V0bGluZSI7Zj1hLnZlcnNpb248PWhbMV07ZT0oISFiLmljb25TaXplfHxoWzJdPT09MjQpJiZlJiZmfWUmJihhPXtuYW1lOmIuaWNvbk5hbWUsc3R5bGU6cVlbaFswXV0sc2l6ZTpoWzJdLHZlcnNpb246aFsxXSx2dTohIWhbM10sdXJsOmMoYi5pY29uTmFtZSxoKX0pfXJldHVybiBhfTtzWT1mdW5jdGlvbihhLGIsYyxkPSExKXtyZXR1cm5gJHthfSR7cVlbY1swXV19JHtkPyJfZXhwZXJpbWVudGFsIjoiIn0vJHtifS92JHtjWzFdfS8ke2NbMl19cHguc3ZnYH07CnRZPWZ1bmN0aW9uKGEpe3JldHVybiBfLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpIT09IldFQl9SRU1JWCImJl8udygiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIikhPT0iV0VCX0NSRUFUT1IiPyJib29rbWFyayI6YX07dVk9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIil8fGI/eHBhW2EudG9VcHBlckNhc2UoKV06eXBhW2EudG9VcHBlckNhc2UoKV19O3pwYT1mdW5jdGlvbihhLGIpe3JldHVybiBzWSgiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kvIixhLGIpfTtBcGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gc1koImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pLyIsYSxiLCEwKX07d1k9ZnVuY3Rpb24oKXt2WS5pbnN0YW5jZXx8KHZZLmluc3RhbmNlPW5ldyB2WSk7cmV0dXJuIHZZLmluc3RhbmNlfTsKeFk9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQnBhLmhhcyhiKXx8Xy53KCJJU19IT01FUEFHRV9DT0xEIil8fF8udygiSVNfUkVTVUxUU19QQUdFX0NPTEQiKXx8Xy53KCJJU19XQVRDSF9QQUdFX0NPTEQiKT9hLnNpZ25hbHMuaW5kZXhPZihiKT49MDohMH07eVk9ZnVuY3Rpb24oYSl7dmFyIGI9ITE7cmV0dXJuKCk9PntifHwoYj0hMCxhKCkpfX07QVk9ZnVuY3Rpb24oYSxiLGMsZCxlKXtpZih6WS5oYXMoZCkpXy5DaygpLkdhKGIsYyxlKTtlbHNle2xldCBmPWEuai5nZXQoZCk7ZiYmXy5DaygpLkdhKCgpPT57eFkoYSxkKXx8KGYuaGc/Xy5DaygpLkdhKGIsYyk6Zi5Cbi5wdXNoKCgpPT57Xy5DaygpLkdhKGIsYyl9KSl9LGMsZSl9fTtDcGE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9KCk9PnthLldtKGIpfTtmb3IobGV0IGYgb2YgZClhLmFkZExpc3RlbmVyKGYsZSk7YS5qLnNldChiLHtzaWduYWxzOmMsVng6ITAsaXNJbml0aWFsaXplZDohMSxoZzohMSxCbjpbXX0pO0JZKGEsYil9OwpCWT1mdW5jdGlvbihhLGIpe2lmKCF4WShhLGIpKXt2YXIgYz1hLmouZ2V0KGIpO2lmKGMmJiFjLmhnKXt2YXIgZD0hMSxlPTAsZj0wO2ZvcihsZXQgaCBvZiBjLnNpZ25hbHMpe2xldCBrPSF4WShhLGgpO2lmKHpZLmhhcyhoKSlkPSEwO2Vsc2V7bGV0IGw9YS5qLmdldChoKTtsP2smJiFsLmhnJiYoZisrLGMuaXNJbml0aWFsaXplZHx8bC5Cbi5wdXNoKCgpPT57QlkoYSxiKX0pKTprJiZlKyt9fWMuaXNJbml0aWFsaXplZD0hMDtjLlZ4P2QmJihjLmhnPSEwKTplPT09MCYmZj09PTAmJihjLmhnPSEwKTtpZihjLmhnKWZvcihsZXQgaCBvZiBjLkJuKWgoKX19fTsKRHBhPWZ1bmN0aW9uKGEpe2E9YS5vcGVuUG9wdXBBY3Rpb258fGE7dmFyIGI9YS5wb3B1cFR5cGUsYz1hLnBvcHVwO3N3aXRjaChiKXtjYXNlICJUT0FTVCI6Zm9yKGxldCBkIGluIGMpYy5oYXNPd25Qcm9wZXJ0eShkKSYmXy5wUCgoKT0+Xy5LKF8uVyx7ZGF0YTooKT0+Y30se25vdGlmaWNhdGlvbkFjdGlvblJlbmRlcmVyOkNZfSksYS5kdXJhdGlvbkhpbnRNcyxhLnJldXNlUG9wdXApO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoImZlYCIrYik7fX07CkRZPWZ1bmN0aW9uKGEsYil7dmFyIGM9dVgoYSk7aWYoYyl7dmFyIGQ9dm9pZCAwLGU9Xy5CKGE/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KTtlJiZlLnJvb3RWZSYmKGQ9ZS5yb290VmUpO18ucVAoe2hyZWY6YyxwYXJhbXM6e2l0Y3Q6YS5jbGlja1RyYWNraW5nUGFyYW1zLGF1dG9uYXY6Yj8uYXV0b25hdn0sdGFyZ2V0Ol8uS08oKSYmXy5CKGEsXy5CaGEpPyJfYmxhbmsiOnZvaWQgMCxhazpkLGNsaWNrZWRWaXN1YWxFbGVtZW50OmIuY2xpY2tlZFZpc3VhbEVsZW1lbnQsaW1wbGljaXRHZXN0dXJlVHlwZTpiLmltcGxpY2l0R2VzdHVyZVR5cGUsZWxlbWVudDpiLmV2ZW50Py50YXJnZXQgaW5zdGFuY2VvZiBFbGVtZW50P2IuZXZlbnQudGFyZ2V0OnZvaWQgMCxlbmRwb2ludDphLHBhcmVudExheWVyOmIucGFyZW50TGF5ZXJ9KX19OwpFcGE9ZnVuY3Rpb24oYSxiKXtpZihfLngoImVtYmVkc19lbmFibGVfZW1jM2RzX3BmcCIpKWlmKEVZKXt2YXIgYz1fLkIoYSxfLkF3KSxkPWM/LnZpZGVvSWQsZT1jPy5wbGF5bGlzdElkO2R8fGU/KGE9e3ZpZGVvX2lkOmR9LGMmJihhLnBsYXllcl9wYXJhbXM9Yy5wbGF5ZXJQYXJhbXMpLGU/KGEubGlzdD1lLEVZLmxvYWRQbGF5bGlzdChhKSk6RVkubG9hZFZpZGVvQnlQbGF5ZXJWYXJzKGEpKTooYz1uZXcgXy5YaigiRW1jM2RzIFdhdGNoRW5kcG9pbnQgbWFsZm9ybWVkIix7Y29tbWFuZDpKU09OLnN0cmluZ2lmeShhKX0pLF8uR3AoYyksRFkoYSxiKSl9ZWxzZSBjPW5ldyBfLlhqKCJFbWMzZHMgV2F0Y2hFbmRwb2ludCByZXNvbHZlZCB3aXRob3V0IHBsYXllckFwaSIse2NvbW1hbmQ6SlNPTi5zdHJpbmdpZnkoYSl9KSxfLkdwKGMpLERZKGEsYik7ZWxzZSBEWShhLGIpfTtGWT1mdW5jdGlvbihhKXtyZXR1cm57cmVzb2x2ZTooYixjPXt9KT0+e2EoYixjLmZvcm18fHt9KTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCl9fX07CkhZPWZ1bmN0aW9uKGEsYil7R1kucHVzaCh7YWN0aW9uOmEsY29udGV4dDpifSl9O0ZwYT1mdW5jdGlvbigpe1RXKEdZLCh7YWN0aW9uOmEsY29udGV4dDpifSk9PntfLnkoKS5yZXNvbHZlKF8uVUQpLnJlc29sdmVDb21tYW5kKGEse2Zvcm06Yn0pfHxKWChhLCJBY3Rpb24gbm90IGhhbmRsZWQgYnkgQ29tbWFuZEhhbmRsZXIiLEhvYSl9KX07CklZPWZ1bmN0aW9uKGEsYixjKXtmb3IobGV0IGYgb2YgaG9hKGEpKUhZKGYsYyk7YT1iLmRhdGE/LmFjdGlvbnM/P1tdO2Zvcih2YXIgZCBvZiBhKUhZKGQsYyk7ZD1iLmRhdGE/LmNvbW1hbmRzPz9bXTtmb3IodmFyIGUgb2YgZClIWShlLGMpOyhlPWIuZGF0YT8uY29tbWFuZCkmJkhZKGUsYyk7dlgoYi5kYXRhPy5vblJlc3BvbnNlUmVjZWl2ZWRBY3Rpb25zPz9bXSxjLnNvdXJjZURhdGEpO3ZYKGIuZGF0YT8ub25SZXNwb25zZVJlY2VpdmVkQ29tbWFuZHM/P1tdLGMuc291cmNlRGF0YSk7dlgoYi5kYXRhPy5vblJlc3BvbnNlUmVjZWl2ZWRFbmRwb2ludHM/P1tdLGMuc291cmNlRGF0YSk7KGI9Yi5kYXRhPy51cGRhdGVGbG93Q29tbWFuZCkmJkhZKGIsYyl9OwpKWT1hc3luYyBmdW5jdGlvbihhLGI9Xy5MaGEpe3ZhciBjPWI7Xy5CKGEsXy5BeSl8fChjPU9iamVjdC5hc3NpZ24oe2NzbjpfLmlxKCl8fCIifSxiKSk7Yj1hd2FpdCBfLnkoKS5yZXNvbHZlKF8uSHkpKCk7aWYoYi5KdyhhKSlyZXR1cm4gYi5RaShhLGMpLnRoZW4oZD0+ZD8uZGF0YT9kLmRhdGE6ZCkudGhlbihkPT57dmFyIGU7KGU9ZD8uZGF0YT8udHJhY2tpbmdQYXJhbXMpJiZfLmx4KF8uaHgoKSxlKTtyZXR1cm57Y29kZTpkJiZkLmVycm9yPyJFUlJPUiI6IlNVQ0NFU1MiLGRhdGE6ZH19KTt0aHJvdyBuZXcgXy5Yaigibm8gcmVxdWVzdCBidWlsZGVyIGZvdW5kIixhKTt9O0hwYT1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LmtleXMoYSkuc29tZShiPT5iIGluIEdwYSl9OwpLWT1mdW5jdGlvbihhKXt2YXIgYj1hLmRhdGE/LmNvbnRlbnRzPy5bMF07aWYoIWJ8fCFIcGEoYikpcmV0dXJuIGE7Yj17b3BlblBvcHVwQWN0aW9uOntwb3B1cFR5cGU6IkRJQUxPRyIscG9wdXA6Yn19O2EuZGF0YS5hY3Rpb25zfHwoYS5kYXRhLmFjdGlvbnM9W10pO2EuZGF0YS5hY3Rpb25zLnB1c2goYik7cmV0dXJuIGF9OwpNWT1mdW5jdGlvbihhLGIsYyl7Xy5CKGEsXy5BeSkmJmEuY2xpY2tUcmFja2luZ1BhcmFtcyYmKExZPV8uVXcoYS5jbGlja1RyYWNraW5nUGFyYW1zKSk7cmV0dXJuIEpZKGEsYykudGhlbihkPT57aWYoXy5CKGEsXy5BeSk/LnJlcXVlc3Q9PT0iQ09OVElOVUFUSU9OX1JFUVVFU1RfVFlQRV9SRUVMX1dBVENIX1NFUVVFTkNFIil7dmFyIGU9ZC5kYXRhO2UmJiFlLm9uUmVzcG9uc2VSZWNlaXZlZEFjdGlvbnMmJihlLmVudHJpZXN8fGUucHJldkVudHJpZXMpJiYoZS5lbnRyaWVzPyhlLm9uUmVzcG9uc2VSZWNlaXZlZEFjdGlvbnM9W10sZS5vblJlc3BvbnNlUmVjZWl2ZWRBY3Rpb25zLnB1c2goe2FwcGVuZFJlZWxXYXRjaFNlcXVlbmNlQ29udGludWF0aW9uRW50cmllc0FjdGlvbjp7ZW50cmllczplLmVudHJpZXMsY29udGludWF0aW9uRW5kcG9pbnQ6ZS5jb250aW51YXRpb25FbmRwb2ludH19KSk6ZS5wcmV2RW50cmllcyYmKGUub25SZXNwb25zZVJlY2VpdmVkQWN0aW9ucz1bXSwKZS5vblJlc3BvbnNlUmVjZWl2ZWRBY3Rpb25zLnB1c2goe2FwcGVuZFJlZWxXYXRjaFNlcXVlbmNlQ29udGludWF0aW9uRW50cmllc0FjdGlvbjp7cHJldkVudHJpZXM6ZS5wcmV2RW50cmllcyxwcmV2Q29udGludWF0aW9uRW5kcG9pbnQ6ZS5wcmV2Q29udGludWF0aW9uRW5kcG9pbnR9fSkpKX1pZihfLkIoYSxfLlV6KXx8Xy5CKGEsXy5kTykpYi5jdXJyZW50RGF0YXx8KGIuY3VycmVudERhdGE9Xy5YRD8ucmVzcG9uc2U/P3t9KSxiLnNvdXJjZURhdGF8fChiLnNvdXJjZURhdGE9YSk7SVkoYSxLWShkKSxiKTtfLkIoYSxfLkF5KSYmZD8uZGF0YT8udHJhY2tpbmdQYXJhbXMmJl8ubHgoXy5oeCgpLGQuZGF0YS50cmFja2luZ1BhcmFtcyxMWSk7cmV0dXJuIGR9LGQ9Pnt2YXIgZT1PYmplY3Qua2V5cyhhKS5maWx0ZXIoZj0+Xy5NYShmLCJFbmRwb2ludCIpKVswXTtlJiYoZT1hW2VdLChlPWU/Lm9uRmFpbHVyZUFjdGlvbj8/ZT8ub25GYWlsdXJlQ29tbWFuZCkmJkhZKGUsYikpO3Rocm93IGQ7Cn0pfTtJcGE9ZnVuY3Rpb24oYSxiKXtfLkIoYSxfLmNFKT8ubmF2aWdhdGlvblR5cGU9PT0iQlJPV1NFX05BVklHQVRJT05fVFlQRV9TVEFZX09OX1BBR0UiP01ZKGEsYik6RFkoYSxiKX07SnBhPWZ1bmN0aW9uKGEsYil7aWYoYT0oXy5CKGEsXy5TRCl8fGEpLmNvbW1hbmRzKWZvcihsZXQgYyBvZiBhKV8uS00oYyk/Xy5BSihjLGIuc291cmNlRGF0YSwhMCxiKTpIWShjLGIpfTsKTHBhPWFzeW5jIGZ1bmN0aW9uKGEpe2E9Xy5CKGEsS3BhKTtpZihhPy50ZXh0JiZuYXZpZ2F0b3IuY2xpcGJvYXJkKXRyeXtpZihhd2FpdCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChhLnRleHQpLGEuc3VjY2Vzc0FjdGlvbnMmJmEuc3VjY2Vzc0FjdGlvbnMubGVuZ3RoIT09MClmb3IobGV0IGIgb2YgYS5zdWNjZXNzQWN0aW9ucylfLkFKKGIse30sITEpfWNhdGNoKGIpe2lmKGEuZmFpbHVyZUFjdGlvbnMmJmEuZmFpbHVyZUFjdGlvbnMubGVuZ3RoIT09MClmb3IobGV0IGMgb2YgYS5mYWlsdXJlQWN0aW9ucylfLkFKKGMse30sITEpfX07TXBhPWZ1bmN0aW9uKGEpeygwLF8ud2lhKSh7bm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbjp7dG9nZ2xlQnV0dG9uUmVuZGVyZXI6YS5zb3VyY2VEYXRhfX0sYj0+KHsuLi5iLG5vdGlmaWNhdGlvblByZWZlcmVuY2VUb2dnbGVCdXR0b246e3RvZ2dsZUJ1dHRvblJlbmRlcmVyOmEuc291cmNlRGF0YX19KSl9OwpOcGE9ZnVuY3Rpb24oYSxiKXtNWShhLGIpLnRoZW4oKCk9PntNcGEoYil9KX07UHBhPWZ1bmN0aW9uKGEpe18ucVAoe2hyZWY6Xy5LeihgdGVsOiR7Xy5CKGEsT3BhKS5waG9uZU51bWJlcn1gLFtfLkhxXSkudG9TdHJpbmcoKSxlbmRwb2ludDphfSl9O1JwYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIEpZKGEsYykudGhlbihkPT57SVkoYSxLWShkKSxiKTt2YXIgZT1fLldEKCgpPT5kLmRhdGEucmVkaXJlY3RFbmRwb2ludCk7ZSYmXy5BSihlLGQuZGF0YSwhMSl9LGQ9PntfLnBQKCgpPT5RcGEpO3Rocm93IGQ7fSl9O1RwYT1mdW5jdGlvbihhKXt2YXIgYj1fLkIoYSxTcGEpLGM9YHNtczoke2IucGhvbmVOdW1iZXJzJiZiLnBob25lTnVtYmVyc1swXX1gO2IubWVzc2FnZVRleHQmJihjKz1gPyZib2R5PSR7ZW5jb2RlVVJJKGIubWVzc2FnZVRleHQpfWApO18ucVAoe2hyZWY6Xy5LeihjLFtfLk9xXSkudG9TdHJpbmcoKSxlbmRwb2ludDphfSl9OwpVcGE9ZnVuY3Rpb24oKXtyZXR1cm4gd2luZG93LmxvY2F0aW9uLmhhc2g9PT0iI2RpYWxvZyJ9O05ZPWFzeW5jIGZ1bmN0aW9uKCl7YXdhaXQgXy5GSjtyZXR1cm4gbmV3IFByb21pc2UoYT0+e3ZhciBiPV8ueSgpLnJlc29sdmUoXy5JbihfLnlQKSk7Yj8ucnEoKSYmYi5sZCgpO3dpbmRvdy5sb2NhdGlvbi5oYXNoPT09IiNkaWFsb2ciP18uWU0/c2V0VGltZW91dCgoKT0+e18uJE0oIiIpO2EoKX0sMTAwKTpfLlpNKCkudGhlbigoKT0+e2EoKX0pOmEoKX0pfTsKV3BhPWZ1bmN0aW9uKGEsYixjLGQpe1ZwYShjKTtjPU9ZKGEpO3ZhciBlPW5hdmlnYXRvcixmPV8uZnImJl8udygiTVdFQl9JT1NfTkFUSVZFX1NIQVJFIiksaD17dXJsOmN9O2lmKCghXy5mcnx8ZikmJmUuc2hhcmUmJmMmJmUuY2FuU2hhcmUmJmUuY2FuU2hhcmUoaCkpe2xldCBrPV8uRXgoXy5oeCgpLHt2ZVR5cGU6OTc3MH0pLGw9e291dGJvdW5kQXBwRGF0YTp7b3V0Ym91bmRBcHA6IkRJUkVDVF9TWVNURU1fQUNUSVZJVFlfRElBTE9HIn0sc2hhcmluZ0RhdGE6e3NlcmlhbGl6ZWRTaGFyZUVudGl0eTpkfX07Xy5KTyhrLGwsNyk7ZS5zaGFyZShoKS50aGVuKCgpPT57dFgoayxsLDcpfSkuY2F0Y2gobT0+e20ubmFtZSE9PSJBYm9ydEVycm9yIiYmKF8uSXAobmV3IF8uWGooIlN5c3RlbSBTaGFyZSBQYW5lbCBmYWlsZWQgdG8gb3Blbi4iKSksUFkoYSxiKSl9KX1lbHNlIFBZKGEsYil9OwpWcGE9ZnVuY3Rpb24oYSl7aWYoYSl7dmFyIGI9Xy5oeCgpO18uRE8oYiwyMTc2MCx2b2lkIDAse2xheWVyOjcscGFyZW50TGF5ZXI6MH0pO18ubHgoYixhLHZvaWQgMCw3KX19O1BZPWZ1bmN0aW9uKGEsYil7dmFyIGM9T1koYSk7Xy5ncnx8Xy5URSgpfHxfLnJQKCk/Xy55KCkucmVzb2x2ZShfLnlQKS5vcGVuRGlhbG9nKHtVbjooKT0+Xy5LKFhwYSx7ZGF0YTphfSl9KTpfLnlOKHtoZWFkZXJUaXRsZToiU2hhcmUiLEdiOigpPT5fLksoImRpdiIse2NsYXNzOiJib3R0b20tc2hlZXQtc2hhcmUtaXRlbSJ9LF8uSyhfLk8se0E6KCk9PmMsdGhlbjpkPT5fLksoUVkse3Nob3J0VXJsOmQsdHJhY2tpbmdQYXJhbXM6UlkoYSl9KX0pLFNZKGEpPy5tYXAoZD0+ZD8uc2hhcmVUYXJnZXRSZW5kZXJlcj9fLksoVFkse2RhdGE6ZC5zaGFyZVRhcmdldFJlbmRlcmVyfSk6bnVsbCkpLEhhOiExLGZvY3VzT25DbG9zZTpiPy5ldmVudD8udGFyZ2V0fSl9OwpTWT1mdW5jdGlvbihhKXtpZihhLmNvbnRlbnRzJiZhLmNvbnRlbnRzWzBdKXJldHVybihhPWEuY29udGVudHNbMF0udGhpcmRQYXJ0eU5ldHdvcmtTZWN0aW9uPy5zaGFyZVRhcmdldENvbnRhaW5lcj8udGhpcmRQYXJ0eVNoYXJlVGFyZ2V0U2VjdGlvblJlbmRlcmVyPy5zaGFyZVRhcmdldHMpJiZhLmxlbmd0aD41P2Euc2xpY2UoMCw1KTphfTtPWT1mdW5jdGlvbihhKXtyZXR1cm4gYS5jb250ZW50cyYmYS5jb250ZW50c1swXT9fLkIoYS5jb250ZW50c1swXS50aGlyZFBhcnR5TmV0d29ya1NlY3Rpb24/LmNvcHlMaW5rQ29udGFpbmVyLFVZKT8uc2hvcnRVcmw6IiJ9O1JZPWZ1bmN0aW9uKGEpe3JldHVybiBfLkIoXy5CKGE/LmNvbnRlbnRzPy5bMF0udGhpcmRQYXJ0eU5ldHdvcmtTZWN0aW9uPy5jb3B5TGlua0NvbnRhaW5lcixVWSk/LmNvcHlCdXR0b24sXy5WTCk/LnRyYWNraW5nUGFyYW1zfTsKWnBhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5CKGEsXy5aeik/LnNoYXJlUGFuZWxUeXBlLGQ9Xy5CKGEsXy5aeik/LnNlcmlhbGl6ZWRTaGFyZUVudGl0eTtNWShhLGIpLnRoZW4oZT0+e1lwYShlLGIsYyxkKX0pfTtZcGE9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYS5jb2RlPT09IlNVQ0NFU1MiJiZhLmRhdGEpYT1hLmRhdGEsYS5jb250ZW50cyYmYS5jb250ZW50cy51bmlmaWVkU2hhcmVQYW5lbFJlbmRlcmVyJiZjPT09IlNIQVJFX1BBTkVMX1RZUEVfVU5JRklFRF9TSEFSRV9QQU5FTCImJldwYShhLmNvbnRlbnRzLnVuaWZpZWRTaGFyZVBhbmVsUmVuZGVyZXIse2V2ZW50OmI/LmV2ZW50fSxhLnRyYWNraW5nUGFyYW1zLGQpO2Vsc2V7Xy5nRj09PXZvaWQgMCYmKF8uZ0Y9a29hKCkpO2xldCBlPV8uZ0Y/JHBhOmFxYTtfLnBQKCgpPT5lKX19O2JxYT1mdW5jdGlvbihhKXthPWEucGFuZWxJZGVudGlmaWVyfHxhLmlkZW50aWZpZXI/LnRhZztpZighYSl0aHJvdyBFcnJvcigiZ2UiKTtyZXR1cm4gYX07CmRxYT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPV8uQihhLF8uUVcpO2lmKGMpe3ZhciBkPV8uV0QoKCk9PmI/LmV2ZW50Py5jdXJyZW50VGFyZ2V0fHxiPy5lbGVtZW50KSxlPWJxYShjKTt2YXIgZj1jP2MuZ2xvYmFsQ29uZmlndXJhdGlvbj8uaW5pdGlhbFN0YXRlfHxjLmVuZ2FnZW1lbnRQYW5lbDp2b2lkIDA7aWYoZSl7bGV0IGg9Xy55KCkucmVzb2x2ZShfLmJMKSxrPWF3YWl0IF8ueSgpLnJlc29sdmUoXy5IeSkoKTthd2FpdCBjcWEoaCx7aWRlbnRpZmllcjplLElqOmYsdGFyZ2V0OmR9KTtjLmdsb2JhbENvbmZpZ3VyYXRpb24mJihhPWF3YWl0IGsuUWkoYSksYXdhaXQgVlkoaCx7aWRlbnRpZmllcjplLElqOmE/LmNvbnRlbnQsdG46ITF9KSl9fX07CmVxYT1mdW5jdGlvbihhLGIpe2lmKGE9Xy5FTyh3aW5kb3csYSwibG9naW5Qb3B1cCIsIndpZHRoPTgwMCxoZWlnaHQ9NjAwLHJlc2l6YWJsZT15ZXMsc2Nyb2xsYmFycz15ZXMiKSlIbmEoKCk9PntiKCl9KSxhLm1vdmVUbygoc2NyZWVuLndpZHRoLTgwMCkvMiwoc2NyZWVuLmhlaWdodC02MDApLzIpfTtmcWE9ZnVuY3Rpb24oYSxiKXtfLktPKCk/KChiPXVYKGEpKSYmXy5FTyh3aW5kb3csYiksYS5jbGlja1RyYWNraW5nUGFyYW1zJiZfLnpKKGEuY2xpY2tUcmFja2luZ1BhcmFtcykpOl8udygiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iV0VCX0VNQkVEREVEX1BMQVlFUiI/KGE9dVgoYSkpJiZlcWEoYSwoKT0+e3dpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKX0pOkRZKGEsYil9OwpncWE9ZnVuY3Rpb24oYSl7aWYoYS5zb3VyY2VEYXRhLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyPy5jaGFubmVsSWQpKDAsXy54UCkoe2NoYW5uZWxJZDphLnNvdXJjZURhdGEuc3Vic2NyaWJlQnV0dG9uUmVuZGVyZXIuY2hhbm5lbElkfSxjPT4oey4uLmMsc3Vic2NyaWJlZDohYS5zb3VyY2VEYXRhLnN1YnNjcmliZUJ1dHRvblJlbmRlcmVyLnN1YnNjcmliZWR9KSk7ZWxzZXt2YXIgYj1fLkIoYS5zb3VyY2VEYXRhLnNlcnZpY2VFbmRwb2ludCxfLkR5KTtiJiYoMCxfLnhQKSh7Y2hhbm5lbElkOmIuY2hhbm5lbElkcz8uWzBdfSxjPT4oey4uLmMsc3Vic2NyaWJlZDohMX0pKX19O1dZPWZ1bmN0aW9uKGEsYixjKXtNWShhLGIsYykudGhlbigoKT0+e2dxYShiKX0pfTsKaHFhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5CKGEsXy5WRCksZD1jLnVybDtjPWMudGFyZ2V0PT09IlRBUkdFVF9ORVdfV0lORE9XIj8iX2JsYW5rIjoiIjt2YXIgZTthLmNsaWNrVHJhY2tpbmdQYXJhbXMmJihlPXtpdGN0OmEuY2xpY2tUcmFja2luZ1BhcmFtc30pO3ZhciBmPWI/LnNvdXJjZURhdGE/LnBhcmFtcz8udGltZXN0YW1wO2YmJihlPXsuLi5lLHRpbWVzdGFtcDpmfSk7Xy5xUCh7aHJlZjpkLHBhcmFtczplLHRhcmdldDpjLGVuZHBvaW50OmEsYWs6Xy5CKGE/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8ucm9vdFZlLGVsZW1lbnQ6Yi5ldmVudD8udGFyZ2V0fSl9O2lxYT1mdW5jdGlvbihhKXt3b2EoXy5CKGEsXy5mY2EpPy5hZGRpdGlvbmFsRGF0YXMpfTsKanFhPWZ1bmN0aW9uKGEpe3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJuYXZpZ2F0ZSIsYj0+e3ZhciBjPWIuZGV0YWlsO2MucGFyYW1zfHwoYy5wYXJhbXM9e30pO2I9Yy5wYXJhbXM7dmFyIGQ9Yi5pdGN0O2QmJihfLmh4KCkuQ2YoZCksZGVsZXRlIGIuaXRjdCk7Yj1jLmhyZWY7aWYoIVhZW2JdKXtkPSExO2lmKGIuc3RhcnRzV2l0aCgiaHR0cCIpfHxiLnN0YXJ0c1dpdGgoIi8vIikpe3ZhciBlPWI/Xy5QTShiKS5ob3N0bmFtZXx8d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lOiIiLGY9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lO2lmKGQ9ZSE9PWYpZT1lLnNwbGl0KCIuIikuc2xpY2UoLTIpLGY9Zi5zcGxpdCgiLiIpLnNsaWNlKC0yKSxlLmxlbmd0aCYmZi5sZW5ndGgmJihkPWUuam9pbigiLiIpIT09Zi5qb2luKCIuIikpfVhZW2JdPWR9ZD1YWVtiXTtpZihkKV8uRU8od2luZG93LGIpO2Vsc2V7ZD1hLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKTthOntpZighYS5nZXRWaWRlb0RhdGEoKS5pc0xpdmUpe2lmKChmPQpjLnBhcmFtcykmJmYudGltZXN0YW1wKXtmPWYudGltZXN0YW1wO2JyZWFrIGF9aWYoIV8ueCgiZW1iZWRzX2VtYzNkc19hbHdheXNfY3VydGltZV9rcyIpJiYoZj0vXmh0dHBzPzpcL1wvd3d3LnlvdXR1YmUuY29tXC93YXRjaFw/dj0oW0EtWmEtejAtOV8tXXsxMX0pLy5leGVjKGMuaHJlZik/LlsxXSkmJmY9PT1hLmdldFZpZGVvRGF0YSgpLnZpZGVvX2lkJiYoZj1hLmdldEN1cnJlbnRUaW1lKCksZj4wKSl7Zj1NYXRoLmZsb29yKGYpLnRvU3RyaW5nKCk7YnJlYWsgYX19Zj12b2lkIDB9ZT0oZT1jLmVsZW1lbnQpP18uVXgoZSk/P3ZvaWQgMDp2b2lkIDA7YTp7aWYoZSl7dmFyIGg9ZS5nZXRBc0pzb24oKTtlPWgudmVUeXBlO2g9aC50cmFja2luZ1BhcmFtcztpZihlKXtlPVN0cmluZyhlKTticmVhayBhfWlmKGgmJihlPV8uRW8oXy5DbyhoKSwyKSkpe2U9ZS50b1N0cmluZygpO2JyZWFrIGF9fWU9dm9pZCAwfWV8fChNYXRoLnJhbmRvbSgpPF8uc2ooImVtYmVkc19sb2dfd2FybmluZ19zYW1wbGVfc2l6ZV9yYXRlIiwKLjAwMSkmJl8uSXAobmV3IF8uWGooIlVzaW5nIGZhbGxiYWNrIFZFIGZvciBlbGVtZW50OiAiLHt0YWdOYW1lOmMuZWxlbWVudD8udGFnTmFtZSxjbGFzc0xpc3Q6Yy5lbGVtZW50Py5jbGFzc0xpc3QudG9TdHJpbmcoKSxkZXRhaWw6Y30pKSxlPSgyMTQyODMpLnRvU3RyaW5nKCkpO2M9e307ZC53aWRnZXRSZWZlcnJlciYmKGMuZW1iZWRzX3dpZGdldF9yZWZlcnJlcj1kLndpZGdldFJlZmVycmVyKTtkLmxvYWRlclVybCYmKGMuZW1iZWRzX3JlZmVycmluZ19ldXJpPWQubG9hZGVyVXJsLnN1YnN0cmluZygwLDEyOCkpO2QuaXNFbWJlZCYmZC5lbWJlZHNJZnJhbWVPcmlnaW5QYXJhbSYmKGMuZW1iZWRzX3JlZmVycmluZ19vcmlnaW49ZC5lbWJlZHNJZnJhbWVPcmlnaW5QYXJhbSk7ZC5pc0VtYmVkJiZkLmVtYmVkc0ZlYXR1cmUmJihjLmZlYXR1cmU9ZC5lbWJlZHNGZWF0dXJlKTtkPWU7Yj0obmV3IFVSTChiLCJodHRwczovL3d3dy55b3V0dWJlLmNvbSIpKS50b1N0cmluZygpO2YmJgooYj1fLmVqKGIse3RpbWVfY29udGludWU6Zn0pKTtpZihkKXtpZighXy5NaygiY29iYWx0Iikpe2Y9W107ZT0wO2ZvcihoPTA7aDxkLmxlbmd0aDtoKyspe2xldCBrPWQuY2hhckNvZGVBdChoKTtrPjI1NSYmKGZbZSsrXT1rJjI1NSxrPj49OCk7ZltlKytdPWt9ZD1fLnNjKGYsNCl9Yj1fLmVqKGIse3NvdXJjZV92ZV9wYXRoOmR9KX1jJiYoYj1fLmVqKGIsYykpO18uRU8od2luZG93LGIpfX0pfTsKa3FhPWZ1bmN0aW9uKCl7dmFyIGE9e307YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9maWxsL2Nsb3NlZF9jYXB0aW9uL3YxMS8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0zLjAxIDNDMyAzIDMgMyAzLjAxIDNMMyAyMWgxOFYzSDMuMDF6TTExIDExSDkuNXYtLjVoLTJ2M2gyVjEzSDExdjFjMCAuNTUtLjQ1IDEtMSAxSDdjLS41NSAwLTEtLjQ1LTEtMXYtNGMwLS41NS40NS0xIDEtMWgzYy41NSAwIDEgLjQ1IDEgMXYxem03IDBoLTEuNXYtLjVoLTJ2M2gyVjEzSDE4djFjMCAuNTUtLjQ1IDEtMSAxaC0zYy0uNTUgMC0xLS40NS0xLTF2LTRjMC0uNTUuNDUtMSAxLTFoM2MuNTUgMCAxIC40NSAxIDF2MXoifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfZmlsbF9leHBlcmltZW50YWwvY2xvc2VkX2NhcHRpb25zL3YzLzI0cHguc3ZnIl09Cl8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixmaWxsOiJjdXJyZW50Q29sb3IiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTIxIDNIM2EyIDIgMCAwMC0yIDJ2MTRhMiAyIDAgMDAyIDJoMThhMiAyIDAgMDAyLTJWNWEyIDIgMCAwMC0yLTJaTTkuMDM4IDguMDg5Yy42OTcuMTc4IDEuMjk0LjYwNiAxLjczNyAxLjE3NmExIDEgMCAwMS0xLjU3OCAxLjIyOGMtLjIxLS4yNy0uNDQ0LS40MTMtLjY1NC0uNDY3YS44Ni44NiAwIDAwLS42MzIuMDg1Yy0uMjIyLjExOS0uNDUzLjM0Mi0uNjMxLjY4NEEyLjY0IDIuNjQgMCAwMDcgMTJhMi42NCAyLjY0IDAgMDAuMjgxIDEuMjA1Yy4xNzcuMzQyLjQwOC41NjUuNjMuNjg0YS44Ni44NiAwIDAwLjYzMi4wODVjLjIwOS0uMDU0LjQ0NC0uMTk3LjY1NC0uNDY3YTEgMSAwIDAxMS41NzggMS4yMjhjLS40NDMuNTctMS4wNC45OTgtMS43MzcgMS4xNzZhMi44NiAyLjg2IDAgMDEtMi4wNjYtLjI1N2MtLjYzMS0uMzM2LTEuMTMxLS44ODEtMS40NjYtMS41MjZBNC42IDQuNiAwIDAxNSAxMmMtLjAwNC0uNzQuMTctMS40Ny41MDYtMi4xMjguMzM2LS42NDUuODM1LTEuMTkgMS40NjYtMS41MjZhMi44NiAyLjg2IDAgMDEyLjA2Ni0uMjU3Wm04IDBjLjY5Ny4xNzggMS4yOTQuNjA2IDEuNzM3IDEuMTc2YTEgMSAwIDAxLTEuNTc4IDEuMjI4Yy0uMjEtLjI3LS40NDQtLjQxMy0uNjU0LS40NjdhLjg2Ljg2IDAgMDAtLjYzMi4wODVjLS4yMjIuMTE5LS40NTMuMzQyLS42MzEuNjg0QTIuNjQgMi42NCAwIDAwMTUgMTJhMi42NCAyLjY0IDAgMDAuMjgxIDEuMjA1Yy4xNzcuMzQyLjQwOC41NjUuNjMuNjg0YS44Ni44NiAwIDAwLjYzMi4wODVjLjIwOS0uMDU0LjQ0NC0uMTk3LjY1NC0uNDY3YTEgMSAwIDAxMS41NzggMS4yMjhjLS40NDMuNTctMS4wNC45OTgtMS43MzcgMS4xNzZhMi44NiAyLjg2IDAgMDEtMi4wNjYtLjI1N2MtLjYzMS0uMzM2LTEuMTMxLS44ODEtMS40NjYtMS41MjZBNC42IDQuNiAwIDAxMTMgMTJjLS4wMDQtLjc0LjE3LTEuNDcuNTA2LTIuMTI4LjMzNi0uNjQ1LjgzNS0xLjE5IDEuNDY2LTEuNTI2YTIuODYgMi44NiAwIDAxMi4wNjYtLjI1N1oifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX2ZpbGwvcGF1c2UvdjkvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNOSAxOUg3VjVoMlptOC0xNGgtMnYxNGgyWiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9maWxsX2V4cGVyaW1lbnRhbC9wYXVzZS92OS8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixmaWxsOiJjdXJyZW50Q29sb3IiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTYuNSAzQTEuNSAxLjUgMCAwMDUgNC41djE1QTEuNSAxLjUgMCAwMDYuNSAyMWgyYTEuNSAxLjUgMCAwMDEuNS0xLjV2LTE1QTEuNSAxLjUgMCAwMDguNSAzaC0yWm05IDBBMS41IDEuNSAwIDAwMTQgNC41djE1YTEuNSAxLjUgMCAwMDEuNSAxLjVoMmExLjUgMS41IDAgMDAxLjUtMS41di0xNUExLjUgMS41IDAgMDAxNy41IDNoLTJaIn0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9maWxsL3BsYXlfYXJyb3cvdjcvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJtNyA0IDEyIDgtMTIgOFY0eiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9maWxsX2V4cGVyaW1lbnRhbC9wbGF5L3Y0LzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNNSA0LjYyM1YxOS4zOGExLjUgMS41IDAgMDAyLjI2IDEuMjlMMjIgMTIgNy4yNiAzLjMzQTEuNSAxLjUgMCAwMDUgNC42MjNaIn0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX2ZpbGwveW91dHViZV9sb2dvX2ljb24vdjYvMjRweC5zdmciXT0KXy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTIxLjU4IDcuMTlhMi41MSAyLjUxIDAgMDAtMS43Ny0xLjc3QzE4LjI1IDUgMTIgNSAxMiA1cy02LjI1IDAtNy44MS40MmEyLjUxIDIuNTEgMCAwMC0xLjc3IDEuNzdBMjUuODcgMjUuODcgMCAwMDIgMTJhMjUuODcgMjUuODcgMCAwMC40MiA0LjgxIDIuNTEgMi41MSAwIDAwMS43NyAxLjc3QzUuNzUgMTkgMTIgMTkgMTIgMTlzNi4yNSAwIDcuODEtLjQyYTIuNTEgMi41MSAwIDAwMS43Ny0xLjc3QTI1Ljg3IDI1Ljg3IDAgMDAyMiAxMmEyNS44NyAyNS44NyAwIDAwLS40Mi00Ljgxek0xMCAxNC42NXYtNS4zTDE1IDEyeiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9maWxsX2V4cGVyaW1lbnRhbC95b3V0dWJlL3YyLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLApmaWxsOiJjdXJyZW50Q29sb3IiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTEyIDVzLTYuMjQ5IDAtNy44MS40MmMtLjg2LjIzLTEuNTQuOTEtMS43NyAxLjc3QzIgOC43NSAyIDEyIDIgMTJzMCAzLjI1LjQyIDQuODFjLjIzLjg2LjkxIDEuNTQgMS43NyAxLjc3QzUuNzUxIDE5IDEyIDE5IDEyIDE5czYuMjQ5IDAgNy44MS0uNDJjLjg2LS4yMyAxLjU0LS45MSAxLjc3LTEuNzdDMjIgMTUuMjUgMjIgMTIgMjIgMTJzMC0zLjI1LS40Mi00LjgxYy0uMjMtLjg2LS45MS0xLjU0LTEuNzctMS43N0MxOC4yNDkgNSAxMiA1IDEyIDVabS0yIDEwVjlsNSAzLTUgM1oifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZS9hcnJvd19jaXJjbGUvdjYvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsImVuYWJsZS1iYWNrZ3JvdW5kIjoibmV3IDAgMCAyNCAyNCIsCmhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTIyIDEyYzAgNS41MS00LjQ5IDEwLTEwIDEwUzIgMTcuNTEgMiAxMmgxYzAgNC45NiA0LjA0IDkgOSA5czktNC4wNCA5LTktNC4wNC05LTktOUM4LjgxIDMgNS45MiA0LjY0IDQuMjggNy4zOGMtLjExLjE4LS4yMi4zNy0uMzEuNTZMMy45NCA4SDh2MUgxLjk2VjNoMXY0Ljc0Yy4wNC0uMDkuMDctLjE3LjExLS4yNS4xMS0uMjIuMjMtLjQyLjM1LS42M0M1LjIyIDMuODYgOC41MSAyIDEyIDJjNS41MSAwIDEwIDQuNDkgMTAgMTB6In0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL2Fycm93X2NvdW50ZXJjbG9ja3dpc2UvdjIvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLAp3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMyAyYTEgMSAwIDAwLTEgMXY2aDZhMSAxIDAgMDAwLTJINS43NTdhOCA4IDAgMTEtMS40ODUgNy4wNyAxIDEgMCAxMC0xLjkzMS41MTcgMTAuMDAyIDEwLjAwMiAwIDAwMTguMDkzIDIuNzgyQTkuOTk5IDkuOTk5IDAgMDA0IDZWM2ExIDEgMCAwMC0xLTFaIn0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUvYmVsbC92MTEvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsImVuYWJsZS1iYWNrZ3JvdW5kIjoibmV3IDAgMCAyNCAyNCIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTAgMjBoNGMwIDEuMS0uOSAyLTIgMnMtMi0uOS0yLTJ6bTEwLTIuNjVWMTlINHYtMS42NWwyLTEuODh2LTUuMTVDNiA3LjQgNy41NiA1LjEgMTAgNC4zNHYtLjM4YzAtMS40MiAxLjQ5LTIuNSAyLjk5LTEuNzYuNjUuMzIgMS4wMSAxLjAzIDEuMDEgMS43NnYuMzljMi40NC43NSA0IDMuMDYgNCA1Ljk4djUuMTVsMiAxLjg3em0tMSAuNDItMi0xLjg4di01LjQ3YzAtMi40Ny0xLjE5LTQuMzYtMy4xMy01LjEtMS4yNi0uNTMtMi42NC0uNS0zLjg0LjAzQzguMTUgNi4xMSA3IDcuOTkgNyAxMC40MnY1LjQ3bC0yIDEuODhWMThoMTR2LS4yM3oifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL2JlbGwvdjExLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTYgMTlhNCA0IDAgMTEtOCAwSDQuNzY1QzMuMjEgMTkgMi4yNSAxNy4zMDQgMy4wNSAxNS45N2wxLjgwNi0zLjAxQTEgMSAwIDAwNSAxMi40NDZWOGE3IDcgMCAwMTE0IDB2NC40NDZjMCAuMTgxLjA1LjM2LjE0Mi41MTVsMS44MDcgMy4wMWMuOCAxLjMzMy0uMTYxIDMuMDI5LTEuNzE2IDMuMDI5SDE2Wk0xMiAzYTUgNSAwIDAwLTUgNXY0LjQ0NmEzIDMgMCAwMS0uNDI4IDEuNTQzTDQuNzY1IDE3aDE0LjQ2OGwtMS44MDUtMy4wMUEzIDMgMCAwMTE3IDEyLjQ0NVY4YTUgNSAwIDAwLTUtNVptLTIgMTZhMiAyIDAgMTA0IDBoLTRaIn0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL2Nsb2NrL3YxMC8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xNC45NyAxNi45NSAxMCAxMy44N1Y3aDJ2NS43Nmw0LjAzIDIuNDktMS4wNiAxLjd6TTEyIDNjLTQuOTYgMC05IDQuMDQtOSA5czQuMDQgOSA5IDkgOS00LjA0IDktOS00LjA0LTktOS05bTAtMWM1LjUyIDAgMTAgNC40OCAxMCAxMHMtNC40OCAxMC0xMCAxMFMyIDE3LjUyIDIgMTIgNi40OCAyIDEyIDJ6In0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL2Nsb2NrL3YxMC8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixmaWxsOiJjdXJyZW50Q29sb3IiLApoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xMiAxQzUuOTI1IDEgMSA1LjkyNSAxIDEyczQuOTI1IDExIDExIDExIDExLTQuOTI1IDExLTExUzE4LjA3NSAxIDEyIDFabTAgMmE5IDkgMCAxMTAgMTguMDAxQTkgOSAwIDAxMTIgM1ptMCAzYTEgMSAwIDAwLTEgMXY1LjU2NWwuNDg1LjI5MiAzLjMzIDJhMSAxIDAgMDAxLjAzLTEuNzE0TDEzIDExLjQzNVY3YTEgMSAwIDAwLTEtMVoifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZS9jbG9zZWRfY2FwdGlvbi92MTEvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsImVuYWJsZS1iYWNrZ3JvdW5kIjoibmV3IDAgMCAyNCAyNCIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNNiAxNHYtNGMwLS41NS40NS0xIDEtMWgzYy41NSAwIDEgLjQ1IDEgMXYxSDkuNXYtLjVoLTJ2M2gyVjEzSDExdjFjMCAuNTUtLjQ1IDEtMSAxSDdjLS41NSAwLTEtLjQ1LTEtMXptOCAxaDNjLjU1IDAgMS0uNDUgMS0xdi0xaC0xLjV2LjVoLTJ2LTNoMnYuNUgxOHYtMWMwLS41NS0uNDUtMS0xLTFoLTNjLS41NSAwLTEgLjQ1LTEgMXY0YzAgLjU1LjQ1IDEgMSAxem02LTExSDR2MTZoMTZWNG0xLTF2MThIM1YzLjAxQzMgMyAzIDMgMy4wMSAzSDIxeiJ9KSk7CmFbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwvY2xvc2VkX2NhcHRpb25zL3YzLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMjEgM0gzYTIgMiAwIDAwLTIgMnYxNGEyIDIgMCAwMDIgMmgxOGEyIDIgMCAwMDItMlY1YTIgMiAwIDAwLTItMlpNMyAxOVY1aDE4djE0SDNaTTYuOTcyIDguMzQ2Yy0uNjMxLjMzNi0xLjEzMS44ODEtMS40NjYgMS41MjZBNC42IDQuNiAwIDAwNSAxMmMtLjAwNC43NC4xNyAxLjQ3LjUwNiAyLjEyOC4zMzYuNjQ1LjgzNSAxLjE5MSAxLjQ2NiAxLjUyNmEyLjg2IDIuODYgMCAwMDIuMDY2LjI1N2MuNjk3LS4xNzggMS4yOTQtLjYwNiAxLjczNy0xLjE3NmExIDEgMCAwMC0xLjU3OC0xLjIyOGMtLjIxLjI3LS40NDQuNDEzLS42NTQuNDY3YS44Ni44NiAwIDAxLS42MzItLjA4NWMtLjIyMi0uMTE5LS40NTMtLjM0Mi0uNjMxLS42ODRBMi42NCAyLjY0IDAgMDE3IDEyYTIuNiAyLjYgMCAwMS4yODEtMS4yMDVjLjE3Ny0uMzQyLjQwOC0uNTY1LjYzLS42ODRhLjg2Ljg2IDAgMDEuNjMyLS4wODVjLjIwOS4wNTQuNDQ0LjE5Ny42NTQuNDY3YTEgMSAwIDAwMS41NzgtMS4yMjhjLS40NDMtLjU3LTEuMDQtLjk5OC0xLjczNy0xLjE3NmEyLjg2IDIuODYgMCAwMC0yLjA2Ni4yNTdabTggMGMtLjYzMS4zMzYtMS4xMzEuODgxLTEuNDY2IDEuNTI2QTQuNiA0LjYgMCAwMDEzIDEyYy0uMDA0Ljc0LjE3IDEuNDcuNTA2IDIuMTI4LjMzNi42NDUuODM1IDEuMTkxIDEuNDY2IDEuNTI2YTIuODYgMi44NiAwIDAwMi4wNjYuMjU3Yy42OTctLjE3OCAxLjI5NC0uNjA2IDEuNzM3LTEuMTc2YTEgMSAwIDAwLTEuNTc4LTEuMjI4Yy0uMjEuMjctLjQ0NC40MTMtLjY1NC40NjdhLjg2Ljg2IDAgMDEtLjYzMi0uMDg1Yy0uMjIyLS4xMTktLjQ1My0uMzQyLS42MzEtLjY4NEEyLjY0IDIuNjQgMCAwMTE1IDEyYTIuNiAyLjYgMCAwMS4yODEtMS4yMDVjLjE3Ny0uMzQyLjQwOC0uNTY1LjYzLS42ODRhLjg2Ljg2IDAgMDEuNjMyLS4wODVjLjIwOS4wNTQuNDQ0LjE5Ny42NTQuNDY3YTEgMSAwIDAwMS41NzgtMS4yMjhjLS40NDMtLjU3LTEuMDQtLjk5OC0xLjczNy0xLjE3NmEyLjg2IDIuODYgMCAwMC0yLjA2Ni4yNTdaIn0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL2dlYXIvdjEwLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCJlbmFibGUtYmFja2dyb3VuZCI6Im5ldyAwIDAgMjQgMjQiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTEyIDkuNWMxLjM4IDAgMi41IDEuMTIgMi41IDIuNXMtMS4xMiAyLjUtMi41IDIuNS0yLjUtMS4xMi0yLjUtMi41IDEuMTItMi41IDIuNS0yLjVtMC0xYy0xLjkzIDAtMy41IDEuNTctMy41IDMuNXMxLjU3IDMuNSAzLjUgMy41IDMuNS0xLjU3IDMuNS0zLjUtMS41Ny0zLjUtMy41LTMuNXpNMTMuMjIgM2wuNTUgMi4yLjEzLjUxLjUuMThjLjYxLjIzIDEuMTkuNTYgMS43Mi45OGwuNC4zMi41LS4xNCAyLjE3LS42MiAxLjIyIDIuMTEtMS42MyAxLjU5LS4zNy4zNi4wOC41MWMuMDUuMzIuMDguNjQuMDguOThzLS4wMy42Ni0uMDguOThsLS4wOC41MS4zNy4zNiAxLjYzIDEuNTktMS4yMiAyLjExLTIuMTctLjYyLS41LS4xNC0uNC4zMmMtLjUzLjQzLTEuMTEuNzYtMS43Mi45OGwtLjUuMTgtLjEzLjUxLS41NSAyLjI0aC0yLjQ0bC0uNTUtMi4yLS4xMy0uNTEtLjUtLjE4Yy0uNi0uMjMtMS4xOC0uNTYtMS43Mi0uOTlsLS40LS4zMi0uNS4xNC0yLjE3LjYyLTEuMjEtMi4xMiAxLjYzLTEuNTkuMzctLjM2LS4wOC0uNTFjLS4wNS0uMzItLjA4LS42NS0uMDgtLjk4cy4wMy0uNjYuMDgtLjk4bC4wOC0uNTEtLjM3LS4zNkwzLjYgOC41NmwxLjIyLTIuMTEgMi4xNy42Mi41LjE0LjQtLjMyYy41My0uNDQgMS4xMS0uNzcgMS43Mi0uOTlsLjUtLjE4LjEzLS41MS41NC0yLjIxaDIuNDRNMTQgMmgtNGwtLjc0IDIuOTZjLS43My4yNy0xLjQuNjYtMiAxLjE0bC0yLjkyLS44My0yIDMuNDYgMi4xOSAyLjEzYy0uMDYuMzctLjA5Ljc1LS4wOSAxLjE0cy4wMy43Ny4wOSAxLjE0bC0yLjE5IDIuMTMgMiAzLjQ2IDIuOTItLjgzYy42LjQ4IDEuMjcuODcgMiAxLjE0TDEwIDIyaDRsLjc0LTIuOTZjLjczLS4yNyAxLjQtLjY2IDItMS4xNGwyLjkyLjgzIDItMy40Ni0yLjE5LTIuMTNjLjA2LS4zNy4wOS0uNzUuMDktMS4xNHMtLjAzLS43Ny0uMDktMS4xNGwyLjE5LTIuMTMtMi0zLjQ2LTIuOTIuODNjLS42LS40OC0xLjI3LS44Ny0yLTEuMTRMMTQgMnoifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL2dlYXIvdjEwLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTIuODQ0IDFoLTEuNjg3YTIgMiAwIDAwLTEuOTYyIDEuNjE2IDMgMyAwIDAxLTMuOTIgMi4yNjMgMiAyIDAgMDAtMi4zOC44OTFsLS44NDIgMS40NmEyIDIgMCAwMC40MTcgMi41MDcgMyAzIDAgMDEwIDQuNTI1IDIgMiAwIDAwLS40MTcgMi41MDdsLjg0MyAxLjQ2YTIgMiAwIDAwMi4zOC44OTIgMy4wMDEgMy4wMDEgMCAwMTMuOTE4IDIuMjYzQTIgMiAwIDAwMTEuMTU3IDIzaDEuNjg2YTIgMiAwIDAwMS45NjMtMS42MTUgMy4wMDIgMy4wMDIgMCAwMTMuOTItMi4yNjMgMiAyIDAgMDAyLjM4LS44OTJsLjg0Mi0xLjQ2YTIgMiAwIDAwLS40MTgtMi41MDcgMyAzIDAgMDEwLTQuNTI2IDIgMiAwIDAwLjQxOC0yLjUwOGwtLjg0My0xLjQ2YTIgMiAwIDAwLTIuMzgtLjg5MSAzIDMgMCAwMS0zLjkxOS0yLjI2M0EyIDIgMCAwMDEyLjg0NCAxWm0tMS43NjcgMi4zNDdhNiA2IDAgMDAuMDgtLjM0N2gxLjY4N2E0Ljk4IDQuOTggMCAwMDIuNDA3IDMuMzcgNC45OCA0Ljk4IDAgMDA0LjEyMi40bC44NDMgMS40NkE0Ljk4IDQuOTggMCAwMDE4LjUgMTJhNC45OCA0Ljk4IDAgMDAxLjcxNiAzLjc3bC0uODQzIDEuNDZhNC45OCA0Ljk4IDAgMDAtNC4xMjMuNEE0Ljk3OSA0Ljk3OSAwIDAwMTIuODQzIDIxaC0xLjY4NmE0Ljk4IDQuOTggMCAwMC0yLjQwOC0zLjM3MSA0Ljk5OSA0Ljk5OSAwIDAwLTQuMTItLjM5OWwtLjg0NC0xLjQ2QTQuOTc5IDQuOTc5IDAgMDA1LjUgMTJhNC45OCA0Ljk4IDAgMDAtMS43MTUtMy43N2wuODQyLTEuNDU5YTQuOTggNC45OCAwIDAwNC4xMjMtLjM5OSA0Ljk4MSA0Ljk4MSAwIDAwMi4zMjctMy4wMjVaTTE2IDEyYTQgNCAwIDExLTcuOTk5IDAgNCA0IDAgMDE4IDBabS00IDJhMiAyIDAgMTAwLTQgMiAyIDAgMDAwIDRaIn0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL2xpbmsvdjgvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTcuNzggMTZjMi4zNSAwIDQuMjYtMi4wMiA0LjI2LTQuNVMyMC4xMyA3IDE3Ljc4IDdIMTN2MWg0Ljc4YzEuOCAwIDMuMjYgMS41NyAzLjI2IDMuNVMxOS41OCAxNSAxNy43OCAxNUgxM3YxaDQuNzh6TTExIDE1SDYuMTljLTEuOCAwLTMuMjYtMS41Ny0zLjI2LTMuNVM0LjM5IDggNi4xOSA4SDExVjdINi4xOWMtMi4zNSAwLTQuMjYgMi4wMi00LjI2IDQuNVMzLjg0IDE2IDYuMTkgMTZIMTF2LTF6bTUtNEg4djFoOHYtMXoifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwvbGluay92OC8yNHB4LnN2ZyJdPV8uSygic3ZnIiwKe3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik05IDE4Yy4yMjYgMCAuNDQ4LS4wMTIuNjY3LS4wMzdBOC4wMDEgOC4wMDEgMCAwMTguMDcgMTZIN2E0IDQgMCAxMTAtOGgyYTQgNCAwIDAxNCA0IDIgMiAwIDAwMS42NjggMS45NzNBNS45OTkgNS45OTkgMCAwMDkgNkg3YTYgNiAwIDEwMCAxMmgyWm04IDBhNiA2IDAgMTAwLTEyaC0yYy0uMjI1IDAtLjQ0OC4wMTItLjY2Ny4wMzZBOCA4IDAgMDExNS45MyA4SDE3YTQgNCAwIDExMCA4aC0yYTQgNCAwIDAxLTQtNCAyIDIgMCAwMC0xLjY2OC0xLjk3M0E2IDYgMCAwMDE1IDE4aDJaIn0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUvc2hhcmUvdjEyLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLApoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xNSA1LjYzIDIwLjY2IDEyIDE1IDE4LjM3VjE0aC0xYy0zLjk2IDAtNy4xNCAxLTkuNzUgMy4wOSAxLjg0LTQuMDcgNS4xMS02LjQgOS44OS03LjFsLjg2LS4xM1Y1LjYzTTE0IDN2NkM2LjIyIDEwLjEzIDMuMTEgMTUuMzMgMiAyMWMyLjc4LTMuOTcgNi40NC02IDEyLTZ2Nmw4LTktOC05eiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lX2V4cGVyaW1lbnRhbC9zaGFyZS92MTIvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xMCAzLjE1OFY3LjUxYy01LjQyOC4yMjMtOC4yNyAzLjc1LTguODc1IDExLjE5OS0uMDQuNDg3LS4wNy45NzUtLjA5IDEuNDY0bC0uMDE0LjM5NWMtLjAxNC40NzMuNTc4LjY4NC44OC4zMi4zMDItLjM2OC42MS0uNzMuOTI1LTEuMDg2bC4yNDQtLjI3M2MxLjc5LTEuOTY3IDMtMi42NzcgNC45My0yLjkxN2ExOC4wMTEgMTguMDExIDAgMDEyLS4xMTJ2NC4zNDZhMSAxIDAgMDAxLjY0Ni43NjNsOS44MDUtOC4yOTcgMS41NS0xLjMxLTEuNTUtMS4zMS05LjgwNS04LjI5N0ExIDEgMCAwMDEwIDMuMTU4Wm0yIDYuMjd2LjAwMi00LjExNmw3LjkwNCA2LjY4OEwxMiAxOC42ODl2LTQuMjEybC0yLjAyMy4wMjRjLTEuOTM1LjAyMi0zLjU4Ny4xNy01LjE5NyAxLjAyNGE5IDkgMCAwMC0xLjM0OC44OTNjLjM1NS0xLjk0Ny45MTYtMy4zOSAxLjYzLTQuNDI1IDEuMDYyLTEuNTQxIDIuNjA3LTIuMzg1IDUuMDItMi40ODVMMTIgOS40MjhaIn0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL3ZvbHVtZV9vZmYvdjQvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJtMy4xNSAzLjg1IDQuMTcgNC4xN0w2LjE2IDlIM3Y2aDMuMTZMMTIgMTkuOTN2LTcuMjJsMi40NSAyLjQ1Yy0uMTUuMDctLjMuMTMtLjQ1LjE4djEuMDRjLjQzLS4xLjgzLS4yNyAxLjItLjQ4bDEuODEgMS44MWMtLjg4LjYyLTEuOSAxLjA0LTMuMDEgMS4ydjEuMDFjMS4zOS0uMTcgMi42Ni0uNzEgMy43My0xLjQ5bDIuNDIgMi40Mi43MS0uNzEtMTctMTctLjcxLjcxek0xMSAxMS43MXY2LjA3TDYuNTIgMTRINHYtNGgyLjUybDEuNS0xLjI3TDExIDExLjcxem0tLjY3LTQuOTItLjcxLS43MUwxMiA0LjA3djQuMzlsLTEtMVY2LjIybC0uNjcuNTd6TTE0IDguNjZWNy42MmMyIC40NiAzLjUgMi4yNCAzLjUgNC4zOCAwIC41OC0uMTMgMS4xMy0uMzMgMS42NGwtLjc5LS43OWMuMDctLjI3LjEyLS41NS4xMi0uODUgMC0xLjU4LTEuMDYtMi45LTIuNS0zLjM0em0wLTMuNThWNC4wN2MzLjk1LjQ5IDcgMy44NSA3IDcuOTMgMCAxLjU2LS40NiAzLjAxLTEuMjMgNC4yNGwtLjczLS43M2MuNjEtMS4wMy45Ni0yLjIzLjk2LTMuNTEgMC0zLjUyLTIuNjEtNi40My02LTYuOTJ6In0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lX2V4cGVyaW1lbnRhbC92b2x1bWVfbXV0ZS92Mi8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixmaWxsOiJjdXJyZW50Q29sb3IiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTExLjQ4NSAyLjE0MyAzLjkxMyA2LjY4N0E2IDYgMCAwMDEgMTEuODMydi4zMzhhNiA2IDAgMDAyLjkxMyA1LjE0NGw3LjU3MiA0LjU0M0ExIDEgMCAwMDEzIDIxVjNhMS4wMDEgMS4wMDEgMCAwMC0xLjUxNS0uODU3Wk00Ljk0MiA4LjQgMTEgNC43Njd2MTQuNDY2bC02LjA1OC0zLjYzNEE0IDQgMCAwMTMgMTIuMTY5di0uMzM4QTQgNCAwIDAxNC45NDIgOC40Wm0xNi4zNTEtLjEwOEwxOSAxMC41ODZsLTIuMjkzLTIuMjkzYTEgMSAwIDEwLTEuNDE0IDEuNDE0TDE3LjU4NiAxMmwtMi4yOTMgMi4yOTNhMSAxIDAgMTAxLjQxNCAxLjQxNEwxOSAxMy40MTRsMi4yOTMgMi4yOTNhMSAxIDAgMTAxLjQxNC0xLjQxNEwyMC40MTQgMTJsMi4yOTMtMi4yOTRhMSAxIDAgMTAtMS40MTQtMS40MTRaIn0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL3ZvbHVtZV9vbi92My8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xNy41IDEyYzAgMi4xNC0xLjUgMy45Mi0zLjUgNC4zOHYtMS4wNGMxLjQ0LS40MyAyLjUtMS43NiAyLjUtMy4zNCAwLTEuNTgtMS4wNi0yLjktMi41LTMuMzRWNy42MmMyIC40NiAzLjUgMi4yNCAzLjUgNC4zOHpNMTIgNC4wN3YxNS44Nkw2LjE2IDE1SDNWOWgzLjE2TDEyIDQuMDd6bS0xIDIuMTVMNi41MiAxMEg0djRoMi41MkwxMSAxNy43OFY2LjIyek0yMSAxMmMwIDQuMDgtMy4wNSA3LjQ0LTcgNy45M3YtMS4wMWMzLjM5LS40OSA2LTMuNCA2LTYuOTJzLTIuNjEtNi40My02LTYuOTJWNC4wN2MzLjk1LjQ5IDcgMy44NSA3IDcuOTN6In0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL3ZvbHVtZV9tYXgvdjIvMjRweC5zdmciXT0KXy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTEuNDg1IDIuMTQzIDMuOTEzIDYuNjg3QTYgNiAwIDAwMSAxMS44MzJ2LjMzOGE2IDYgMCAwMDIuOTEzIDUuMTQ0bDcuNTcyIDQuNTQzQTEgMSAwIDAwMTMgMjFWM2ExLjAwMSAxLjAwMSAwIDAwLTEuNTE1LS44NTdabTYuODggMi4wNzlhMSAxIDAgMDAtLjAwMSAxLjQxNCA5IDkgMCAwMTAgMTIuNzI4IDEgMSAwIDAwMS40MTQgMS40MTQgMTEgMTEgMCAwMDAtMTUuNTU2IDEgMSAwIDAwLTEuNDEzIDBaTTQuOTQxIDguNDAybC4wMDEtLjAwMkwxMSA0Ljc2N3YxNC40NjZsLTYuMDU4LTMuNjM1QTQgNCAwIDAxMyAxMi4xNjh2LS4zMzdhNCA0IDAgMDExLjk0MS0zLjQyOVpNMTUuNTM1IDcuMDVhMSAxIDAgMDAwIDEuNDE1IDUgNSAwIDAxMCA3LjA3IDEgMSAwIDAwMS40MTUgMS40MTUgNi45OTkgNi45OTkgMCAwMDAtOS45IDEgMSAwIDAwLTEuNDE1IDBaIn0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL3hfbWFyay92NC8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwiZW5hYmxlLWJhY2tncm91bmQiOiJuZXcgMCAwIDI0IDI0IixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Im0xMi43MSAxMiA4LjE1IDguMTUtLjcxLjcxTDEyIDEyLjcxbC04LjE1IDguMTUtLjcxLS43MUwxMS4yOSAxMiAzLjE1IDMuODVsLjcxLS43MUwxMiAxMS4yOWw4LjE1LTguMTUuNzEuNzFMMTIuNzEgMTJ6In0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL3gvdjExLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0IiwKd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTE3LjI5MyA1LjI5MyAxMiAxMC41ODYgNi43MDcgNS4yOTNhMSAxIDAgMTAtMS40MTQgMS40MTRMMTAuNTg2IDEybC01LjI5MyA1LjI5M2ExIDEgMCAwMDEuNDE0IDEuNDE0TDEyIDEzLjQxNGw1LjI5MyA1LjI5M2ExIDEgMCAwMDEuNDE0LTEuNDE0TDEzLjQxNCAxMmw1LjI5My01LjI5M2ExIDEgMCAxMC0xLjQxNC0xLjQxNFoifSkpO2FbImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIveW91dHViZV9maWxsL2VxdWFsaXplci92MS8yNHB4LnN2ZyJdPV8uSygic3ZnIix7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsdmlld0JveDoiLTQgLTQgMjQgMjQiLHZlcnNpb246IjEuMSIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwieG1sbnM6eGxpbmsiOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwieG1sbnM6eXQiOiJodHRwOi8vd3d3LnlvdXR1YmUuY29tIn0sXy5LKCJnIiwKe2lkOiJ5dG0tZXF1YWxpemVyLWljb24iLGZpbGw6IiNmZmYifSxfLksoInJlY3QiLHtjbGFzczoieXRtLWVxdWFsaXplci1iYXItbGVmdCIseDoiMSIseToiNyIsd2lkdGg6IjQiLGhlaWdodDoiOSJ9KSxfLksoInJlY3QiLHtjbGFzczoieXRtLWVxdWFsaXplci1iYXItbWlkZGxlIix4OiI2Iix5OiIyIix3aWR0aDoiNCIsaGVpZ2h0OiIxNCJ9KSxfLksoInJlY3QiLHtjbGFzczoieXRtLWVxdWFsaXplci1iYXItcmlnaHQiLHg6IjExIix5OiI0Iix3aWR0aDoiNCIsaGVpZ2h0OiIxMiJ9KSkpO2FbImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIveW91dHViZV9maWxsL3Nob3J0c190ZXh0X2xvZ28vdjIvNzJweC5zdmciXT1fLksoInN2ZyIse3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLHZpZXdCb3g6IjAgMCA3MiAyNCIsZmlsbDoibm9uZSIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwieG1sbnM6eGxpbmsiOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIn0sCl8uSygiZyIse3RyYW5zZm9ybToidHJhbnNsYXRlKDI0LCAyKSJ9LF8uSygicGF0aCIse2Q6Im0uNzMyMTcgMTMuNzg4NiAyLjU3NzMyLS4wNTE1Yy0uMDUxNTUgMi4zMTk1LjM2MDgyIDMuMDQxMiAxLjM0MDIxIDMuMDQxMi45NTM2MSAwIDEuMzQwMi0uNjE4NiAxLjM0MDItMS44ODE0IDAtMS44ODE1LS45NzkzOC0yLjgzNTEtMi4zNzExMy00LjA0NjRDMS40Nzk1OSA4Ljk5NDc5LjU1MTc1OCA3Ljk2Mzg2LjU1MTc1OCA1LjIzMTljMC0yLjYwMzA5IDEuMTU5NzkyLTQuMTQ5NDggNC4xNzUyNjItNC4xNDk0OCAyLjkxMjM3IDAgNC4xMjM3MSAxLjcwMTAzIDMuNzExMzMgNS4yMDYxOWwtMi41NzczMi4xNTQ2M2MuMDUxNTUtMi4zOTY5LS4yMDYxOC0zLjIyMTY0LTEuMjYyODgtMy4yMjE2NC0uOTc5MzggMC0xLjMxNDQ0LjY0NDMzLTEuMzE0NDQgMS44Mjk4OSAwIDEuNzc4MzUuNzQ3NDMgMi4zMTk1OSAyLjM0NTM3IDMuODQwMjEgMS45ODQ1MyAxLjg4MTQgMy4wOTI3OCAyLjk4OTcgMy4wOTI3OCA1LjU0MTIgMCAzLjI0NzUtMS4yNjI4OSA0LjQ4NDYtNC4yMDEwMyA0LjQ4NDYtMy4wNjcwMS4wMjU3LTQuMzA0MTI1LTEuNjIzNy0zLjc4ODY2LTUuMTI4OVpNOS42NzU1NC43NDc0MDVoMi44MzUwNlY0LjU4NzYxYzAgMS4xNTk3OS0uMDUxNiAxLjk1ODc2LS4xNTQ3IDIuOTM4MTRoLjA1MTZjLjU0MTItMS4xNTk3OSAxLjQ0MzMtMS43NTI1NyAyLjYwMzEtMS43NTI1NyAxLjc1MjYgMCAyLjUgMS4yMzcxMSAyLjUgMy4zNTA1MXY5LjUzNjExaC0yLjgzNTFWOS4zMjk4OGMwLTEuMDMwOTMtLjI1NzctMS41NDYzOS0uOTAyLTEuNTQ2MzktLjQ4OTcgMC0uOTI3OS4yODM1LTEuMjM3MS43OTg5N1YxOC42NTk4SDkuNzAxMzFWLjc0NzQwNWgtLjAyNTc3Wk0xOC42NzAzIDEzLjI3MzJ2LTEuODI5OWMwLTQuMDcyMTYgMS4xODU2LTUuNjQ0MzMgMy45OTQ4LTUuNjQ0MzMgMi44MDkzIDAgMy44NjYgMS42MjM3MSAzLjg2NiA1LjY0NDMzdjEuODI5OWMwIDMuOTY5MS0xLjAwNTIgNS41OTI4LTMuOTQzMyA1LjU5MjgtMi45ODk3IDAtMy45MTc1LTEuNjc1My0zLjkxNzUtNS41OTI4Wm01IDEuMDMwOXYtMy45NDMzYzAtMS43MjY3OC0uMjU3OC0yLjYwMzA3LTEuMDgyNS0yLjYwMzA3LS43OTkgMC0xLjA1NjcuODc2MjktMS4wNTY3IDIuNjAzMDd2My45NDMzYzAgMS44MDQxLjI1NzcgMi42Mjg5IDEuMDU2NyAyLjYyODkuODI0NyAwIDEuMDgyNS0uODI0OCAxLjA4MjUtMi42Mjg5Wk0yNy42NjUyIDYuMDMwODloMi4xOTA3bC4yNTc4IDIuNzMxOTZoLjEwM2MuMjgzNi0yLjAxMDMxIDEuMjExNC0zLjAxNTQ2IDIuMzk2OS0zLjAxNTQ2LjE1NDcgMCAuMzA5My4wMjU3Ny41MTU1LjA1MTU0bC0uMTU0NiAzLjI3MzJjLTEuMTg1Ni0uMjU3NzMtMi4xMzkyLS4wNTE1NS0yLjU3NzMuNzIxNjVWMTguNjM0aC0yLjczMlY2LjAzMDg5Wk0zNC44MDQ0IDE1LjY3MDFWOC4yNzMyaC0xLjAzMDlWNi4wNTY3aDEuMTU5OGwuMzYwOC0zLjczNzExaDIuMTEzNFY2LjA1NjdoMS45MzN2Mi4yMTY1aC0xLjgwNDF2Ni45ODQ1YzAgMS4xODU2LjE1NDYgMS40NDMzLjYxODUgMS40NDMzLjQxMjQgMCAuNzczMi0uMDUxNSAxLjEwODMtLjE4MDRsLjM2MDggMS44MDQxYy0uODUwNS40MTI0LTEuOTMzLjU0MTMtMi42MDMxLjU0MTMtMS44Mjk5LS4wMjU4LTIuMjE2NS0uOTc5NC0yLjIxNjUtMy4xOTU5Wk00MC4yNjgyIDE0LjgxOTZsMi4zOTY5LS4wNTE1Yy0uMTI4OSAxLjM5MTcuMzYwOCAyLjE5MDcgMS4yMTEzIDIuMTkwNy43MjE3IDAgMS4xMzQxLS40NjM5IDEuMTM0MS0xLjEwODMgMC0uODc2My0uNzk5LTEuNDY5LTIuMTY1LTIuNS0xLjYyMzctMS4yMzcxLTIuNjAzMS0yLjE2NDktMi42MDMxLTQuMjAxIDAtMi4yNDIyNyAxLjE4NTYtMy4zMjQ3NCAzLjYzNC0zLjMyNDc0IDIuNjAzMSAwIDMuNjM0MSAxLjI4ODY2IDMuNDI3OSA0LjM1NTY0bC0yLjM5NjkuMTAzMWMtLjAyNTgtMS45MDcxOS0uMjgzNS0yLjQ0ODQzLTEuMDgyNS0yLjQ0ODQzLS43NzMyIDAtMS4xMDgzLjM4NjYtMS4xMDgzIDEuMDgyNDcgMCAuOTc5MzguNTY3MSAxLjQ0MzI2IDEuNDk0OSAyLjExMzM2IDIuMjE2NSAxLjY0OTUgMy4yNDc0IDIuNDc0MyAzLjI0NzQgNC41MzYxIDAgMi4yNjgxLTEuMjg4NyAzLjQwMjEtMy43MzcxIDMuNDAyMS0yLjc4MzUtLjAyNTgtMy44MTQ0LTEuNTQ2NC0zLjQ1MzYtNC4xNDk1WiIsCmZpbGw6IiNmZmYifSkpLF8uSygiZyIse3RyYW5zZm9ybToidHJhbnNsYXRlKDAsIDApIn0sXy5LKCJwYXRoIix7ZDoiTTE4LjQ1IDguODUxYzEuOTA0LTEuMDY2IDIuNTQxLTMuNCAxLjQyMi01LjIxNC0xLjExOS0xLjgxNC0zLjU3LTIuNDItNS40NzUtMS4zNTVMNS41NSA3LjI0N2MtMS4yOS43MjItMi4wNDkgMi4wNjktMS45NjggMy40OTEuMDgxIDEuNDIzLjk4OSAyLjY4MyAyLjM1MyAzLjI2OGwuOTQyLjQwNC0xLjMyNy43NDJjLTEuOTA0IDEuMDY2LTIuNTQxIDMuNC0xLjQyMiA1LjIxNCAxLjExOSAxLjgxNCAzLjU3IDIuNDIxIDUuNDc1IDEuMzU1bDguODQ3LTQuOTY1YzEuMjktLjcyMiAyLjA0OS0yLjA2OCAxLjk2OC0zLjQ5LS4wODEtMS40MjMtLjk4OS0yLjY4NC0yLjM1My0zLjI2OWwtLjk0Mi0uNDAzIDEuMzI3LS43NDNaTTEwIDE0LjU2N2EuMjUuMjUgMCAwMC4zNzQuMjE3bDQuNDUtMi41NjdhLjI1LjI1IDAgMDAwLS40MzNsLTQuNDUtMi41NjdhLjI1LjI1IDAgMDAtLjM3NC4yMTZ2NS4xMzRaIiwKImZpbGwtcnVsZSI6ImV2ZW5vZGQiLGZpbGw6IiNmZmYifSkpKTthWyJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9pY29ucy9td2ViL3lvdXR1YmVfZmlsbC93YXRlcm1hcmsvdjIvMTEwcHguc3ZnIl09Xy5LKCJzdmciLHt3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIix2aWV3Qm94OiIwIDAgMTEwIDI2Iix2ZXJzaW9uOiIxLjEiLHhtbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsInhtbG5zOnhsaW5rIjoiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIsInhtbG5zOnl0IjoiaHR0cDovL3d3dy55b3V0dWJlLmNvbSJ9LF8uSygicGF0aCIse2lkOiJ5dHAtc3ZnLXdhdGVybWFyayIsZDoiTSAxNi42ODcwMDYsMC45OTk5ODUyNCBDIDEzLjU1MTA2OSwxLjAzMjc5NzIgNy4wMjQ1MTE0LDEuMTYyNDg1MiA0Ljk5OTUxMjYsMS42ODc0ODUyIGMgLTEuNDk5OTk5MSwwLjQgLTIuNTk5OTk4NCwxLjYgLTIuOTk5OTk4MiwzIC0wLjY5OTk5OTUsMi43IC0wLjY4NzQ5OTUsOC4zMTI0OTk4IC0wLjY4NzQ5OTUsOC4zMTI0OTk4IDAsMCAtMC4wMTI1LDUuNjEyNSAwLjY4NzQ5OTUsOC4zMTI1IDAuMzk5OTk5OCwxLjUgMS41OTk5OTkxLDIuNiAyLjk5OTk5ODIsMyAyLjY5OTk5ODQsMC43IDEzLjQwNjI0MjQsMC42ODc1IDEzLjQwNjI0MjQsMC42ODc1IDAsMCAxMC43MDYyNDMsMC4wMTI1IDEzLjQwNjI0MSwtMC42ODc1IDEuNSwtMC40IDIuNTk5OTk5LC0xLjYgMi45OTk5OTksLTMgMC42OTk5OTksLTIuNyAwLjY4NzQ5OSwtOC4zMTI1IDAuNjg3NDk5LC04LjMxMjUgMCwwIDAuMTEyNSwtNS42MTI0OTk4IC0wLjY4NzQ5OSwtOC4zMTI0OTk4IC0wLjQsLTEuNSAtMS41OTk5OTksLTIuNiAtMi45OTk5OTksLTMgQyAyOS4xMTE5OTgsMC45ODc0ODUyNCAxOC40MDU3NTUsMC45OTk5ODUyNCAxOC40MDU3NTUsMC45OTk5ODUyNCBjIDAsMCAtMC42NzM0MzcsLTAuMDEwOTM4IC0xLjcxODc0OSwwIHogbSA3Mi4yMTg3MDYsMC45MDYyNDk5NiAwLDIxLjI4MTI0OTggMi43ODEyNDgsMCAwLjMxMjUsLTEuMzc1IDAuMDkzNzUsMCBjIDAuMywwLjUgMC43MTg3NSwwLjg4NzUgMS4yMTg3NDksMS4xODc1IDAuNSwwLjMgMS4wODc1LDAuNDA2MjUgMS42ODc0OTksMC40MDYyNSAxLjEsMCAxLjk5OTk5OSwtMC40OTM3NSAyLjQ5OTk5OSwtMS41OTM3NSAwLjUsLTEuMSAwLjgxMjQ5OSwtMi43MDYyNSAwLjgxMjQ5OSwtNC45MDYyNSBsIDAsLTIuNDA2MjUgYyAwLC0xLjYgLTAuMTEyNSwtMi45MDYyNSAtMC4zMTI0OTksLTMuOTA2MjUgLTAuMiwtMC44OTk5OTk5IC0wLjUsLTEuNTkzNzQ5OSAtMSwtMi4wOTM3NDk5IC0wLjUsLTAuNCAtMS4xMDYyNDksLTAuNTkzNzQ5OSAtMS45MDYyNDksLTAuNTkzNzQ5OSAtMC41OTk5OTksMCAtMS4xODc0OTksMC4xOTk5OTk5IC0xLjY4NzQ5OSwwLjQ5OTk5OTkgLTAuNDk5OTk5LDAuMyAtMS4wMTg3NDksMC44MDYyNSAtMS4yMTg3NDksMS40MDYyNSBsIDAsLTcuOTA2MjQ5OSAtMy4yODEyNDgsMCB6IG0gLTQ5Ljk5OTk3LDAuNzgxMjUgMy45MDYyNDgsMTMuOTA2MjQ5OCAwLjE4NzUsNi43MTg3NSAzLjMxMjQ5OCwwIDAsLTYuNzE4NzUgMy44NzQ5OTcsLTEzLjkwNjI0OTggLTMuMzc0OTk4LDAgLTEuNDA2MjQ5LDYuMzEyNDk5OSBjIC0wLjQsMS44OTk5OTk5IC0wLjcxMjQ5OSwzLjE5OTk5OTkgLTAuODEyNDk5LDMuOTk5OTk5OSBsIC0wLjA5Mzc1LDAgYyAtMC4yLC0xLjEgLTAuNTEyNSwtMi40IC0wLjgxMjUsLTMuOTk5OTk5OSBsIC0xLjM3NDk5OSwtNi4zMTI0OTk5IC0zLjQwNjI0OCwwIHogbSAyOS41OTM3MzIsMCAwLDIuNzE4NzUgMy40MDYyNDgsMCAwLDE3LjkwNjI0OTggMy4yODEyNDgsMCAwLC0xNy45MDYyNDk4IDMuNDA2MjQ4LDAgYyAwLDAgMC4wMDYyLC0yLjcxODc1IC0wLjA5Mzc1LC0yLjcxODc1IGwgLTkuOTk5OTk0LDAgeiBtIC01My40OTk5NjcsNS4xMjUgOC45MDYyNDQsNS4xODc0OTk4IC04LjkwNjI0NCw1LjA5Mzc1IDAsLTEwLjI4MTI0OTggeiBtIDg5LjQwNjE5MywwLjA5Mzc1IGMgLTEuNywwIC0yLjg5Mzc1LDAuNTkzNzQ5OSAtMy41OTM3NSwxLjU5Mzc0OTkgLTAuNjk5OTksMC45OTk5OTk5IC0wLjk5OTk5NSwyLjYwNjI0OTkgLTAuOTk5OTk1LDQuOTA2MjQ5OSBsIDAsMi41OTM3NSBjIDAsMi4yIDAuMzAwMDA1LDMuOTA2MjUgMC45OTk5OTUsNC45MDYyNSAwLjcsMS4xIDEuOCwxLjU5Mzc1IDMuNSwxLjU5Mzc1IDEuNCwwIDIuMzg3NSwtMC4zIDMuMTg3NSwtMSAwLjcsLTAuNyAxLjA5Mzc1LC0xLjY5Mzc1IDEuMDkzNzUsLTMuMDkzNzUgbCAwLC0wLjUgLTIuOTA2MjUsLTAuMjE4NzUgYyAwLDEgLTAuMDgxMiwxLjYgLTAuMjgxMjUsMiAtMC4xLDAuNCAtMC41LDAuNjI1IC0xLDAuNjI1IC0wLjMsMCAtMC42MTI1LC0wLjExMjUgLTAuODEyNSwtMC4zMTI1IC0wLjIsLTAuMyAtMC4zMDYyNSwtMC41OTM3NSAtMC40MDYyNSwtMS4wOTM3NSAtMC4xLC0wLjUgLTAuMDkzNywtMS4yMTg3NSAtMC4wOTM3LC0yLjIxODc1IGwgMCwtMC43ODEyNSA1LjcxODc1LC0wLjA5Mzc1IDAsLTIuNjI1IGMgMCwtMS42IC0wLjEwNjI1LC0yLjc4NzUgLTAuNDA2MjUsLTMuNjg3NSAtMC4yLC0wLjg5OTk5OTkgLTAuNzEyNSwtMS41OTk5OTk5IC0xLjMxMjUsLTEuOTk5OTk5OSAtMC43LC0wLjQgLTEuNDg3NSwtMC41OTM3NDk5IC0yLjY4NzUsLTAuNTkzNzQ5OSB6IG0gLTUwLjQ5OTk2NywwLjA5Mzc1IGMgLTEuMDk5OTk5LDAgLTIuMDE4NzQ5LDAuMTg3NDk5OSAtMi43MTg3NDgsMC42ODc0OTk5IC0wLjcsMC40IC0xLjIsMS4xMjUgLTEuNDk5OTk5LDIuMTI0OTk5OSAtMC4zLDEgLTAuNSwyLjI3NSAtMC41LDMuODc1IGwgMCwyLjIxODc1IGMgMCwxLjUgMC4xMDYyNSwyLjc4MTI1IDAuNDA2MjUsMy43ODEyNSAwLjIsMC45IDAuNzA2MjQ5LDEuNjI1IDEuNDA2MjQ5LDIuMTI1IDAuNjk5OTk5LDAuNSAxLjcxMjQ5OSwwLjY4MTI1IDIuODEyNDk4LDAuNzgxMjUgMS4xOTk5OTksMCAyLjA4MTI0OSwtMC4yODc1IDIuNzgxMjQ5LC0wLjY4NzUgMC42OTk5OTksLTAuNCAxLjA5OTk5OSwtMS4wOTM3NSAxLjQ5OTk5OSwtMi4wOTM3NSAwLjM5OTk5OSwtMSAwLjQ5OTk5OSwtMi4zMDYyNSAwLjQ5OTk5OSwtMy45MDYyNSBsIDAsLTIuMjE4NzUgYyAwLC0xLjYgLTAuMiwtMi44NzUgLTAuNDk5OTk5LC0zLjg3NSAtMC4zLC0wLjg5OTk5OTkgLTAuOCwtMS42MjQ5OTk5IC0xLjQ5OTk5OSwtMi4xMjQ5OTk5IC0wLjcsLTAuNSAtMS41ODc1LC0wLjY4NzQ5OTkgLTIuNjg3NDk5LC0wLjY4NzQ5OTkgeiBtIDEyLjE4NzQ5MywwLjA5Mzc1IDAsMTEuOTA2MjQ5OCBjIC0wLjEsMC4zIC0wLjI5Mzc1LDAuNDg3NSAtMC41OTM3NSwwLjY4NzUgLTAuMiwwLjIgLTAuNTEyNSwwLjMxMjUgLTAuODEyNDk5LDAuMzEyNSAtMC4zLDAgLTAuNTg3NSwtMC4xMDYyNSAtMC42ODc1LC0wLjQwNjI1IC0wLjEsLTAuMyAtMC4xODc1LC0wLjcwNjI1IC0wLjE4NzUsLTEuNDA2MjUgbCAwLC0xMC45OTk5OTk4IC0zLjQwNjI0OCwwIDAsMTEuMjE4NzQ5OCBjIDAsMS40IDAuMTg3NSwyLjM5Mzc1IDAuNjg3NSwzLjA5Mzc1IDAuNDk5OTk5LDAuNyAxLjIxODc0OSwxIDIuMjE4NzQ4LDEgMS40LDAgMi40ODc0OTksLTAuNjkzNzUgMy4xODc0OTksLTIuMDkzNzUgbCAwLjA5Mzc1LDAgMC4zMTI1LDEuNzgxMjUgMi41OTM3NDksMCAwLC0xNC45OTk5OTk4IGMgMCwwIC0zLjQwNjI0OCwwLjAwNjIgLTMuNDA2MjQ4LC0wLjA5Mzc1IHogbSAxNy4zMTI0ODksMCAwLDExLjkwNjI0OTggYyAtMC4xLDAuMyAtMC4yOTM3NDksMC40ODc1IC0wLjU5Mzc0OSwwLjY4NzUgLTAuMiwwLjIgLTAuNTEyNSwwLjMxMjUgLTAuODEyNSwwLjMxMjUgLTAuMywwIC0wLjU4NzQ5OSwtMC4xMDYyNSAtMC42ODc0OTksLTAuNDA2MjUgLTAuMSwtMC4zIC0wLjIxODc1LC0wLjcwNjI1IC0wLjIxODc1LC0xLjQwNjI1IGwgMCwtMTAuOTk5OTk5OCAtMy40MDYyNDgsMCAwLDExLjIxODc0OTggYyAwLDEuNCAwLjIxODc1LDIuMzkzNzUgMC43MTg3NDksMy4wOTM3NSAwLjUsMC43IDEuMTg3NSwxIDIuMTg3NDk5LDEgMS4zOTk5OTksMCAyLjUxODc0OSwtMC42OTM3NSAzLjIxODc0OCwtMi4wOTM3NSBsIDAuMDkzNzUsMCAwLjI4MTI1LDEuNzgxMjUgMi42MjQ5OTgsMCAwLC0xNC45OTk5OTk4IGMgMCwwIC0zLjQwNjI0OCwwLjAwNjIgLTMuNDA2MjQ4LC0wLjA5Mzc1IHogbSAyMC45MDYyMzUsMi4wOTM3NDk4IGMgMC40LDAgMC41ODEyNSwwLjExMjUgMC43ODEyNSwwLjMxMjUgMC4yLDAuMyAwLjMwNjI1LDAuNTkzNzUgMC40MDYyNSwxLjA5Mzc1IDAuMSwwLjUgMC4wOTM3LDEuMjE4NzUgMC4wOTM3LDIuMjE4NzUgbCAwLDEuMDkzNzUgLTIuNSwwIDAsLTEuMDkzNzUgYyAwLC0xIC0wLjAwNiwtMS43MTg3NSAwLjA5MzcsLTIuMjE4NzUgMCwtMC40IDAuMTEyNSwtMC44IDAuMzEyNSwtMSAwLjIsLTAuMyAwLjUxMjUsLTAuNDA2MjUgMC44MTI1LC0wLjQwNjI1IHogbSAtNTAuNDk5OTY3LDAuMTI1IGMgMC41LDAgMC44LDAuMTg3NSAxLDAuNjg3NSAwLjE5OTk5OSwwLjUgMC4yODEyNDksMS4zMDYyNSAwLjI4MTI0OSwyLjQwNjI1IGwgMCw0LjY4NzUgYyAwLDEuMSAtMC4wODEyNSwxLjkwNjI1IC0wLjI4MTI0OSwyLjQwNjI1IC0wLjIsMC41IC0wLjUsMC42ODc1IC0xLDAuNjg3NSAtMC41LDAgLTAuNzk5OTk5LC0wLjE4NzUgLTAuOTk5OTk5LC0wLjY4NzUgLTAuMiwtMC41IC0wLjMxMjUsLTEuMzA2MjUgLTAuMzEyNSwtMi40MDYyNSBsIDAsLTQuNjg3NSBjIDAsLTEuMSAwLjExMjUsLTEuOTA2MjUgMC4zMTI1LC0yLjQwNjI1IDAuMiwtMC41IDAuNDk5OTk5LC0wLjY4NzUgMC45OTk5OTksLTAuNjg3NSB6IG0gMzkuNjg3NDc2LDAuMDkzNzUgYyAwLjMsMCAwLjYxMjUsMC4xMDYyNSAwLjgxMjUsMC40MDYyNSAwLjIsMC4zIDAuMjc1LDAuNjc1IDAuMzc1LDEuMzc1IDAuMSwwLjYgMC4xMjQ5OTksMS41MTg3NSAwLjEyNDk5OSwyLjcxODc1IGwgMC4wOTM3NSwxLjkwNjI1IGMgMCwxLjEgMC4wMDYyLDEuOTkzNzUgLTAuMDkzNzUsMi41OTM3NSAtMC4xLDAuNiAtMC4xOTk5OTksMS4wODEyNSAtMC40OTk5OTksMS4yODEyNSAtMC4yLDAuMyAtMC41MDYyNSwwLjQwNjI1IC0wLjkwNjI1LDAuNDA2MjUgLTAuMywwIC0wLjUxMjQ5OSwtMC4wODc1IC0wLjgxMjQ5OSwtMC4xODc1IC0wLjIsLTAuMSAtMC4zOTM3NSwtMC4yOTM3NSAtMC41OTM3NSwtMC41OTM3NSBsIDAsLTguNSBjIDAuMSwtMC40IDAuMjkzNzUsLTAuNyAwLjU5Mzc1LC0xIDAuMywtMC4zIDAuNjA2MjQ5LC0wLjQwNjI1IDAuOTA2MjQ5LC0wLjQwNjI1IHoiLApjbGFzczoieXRwLXN2Zy1maWxsIixmaWxsOiIjZmZmIn0pKTthWyJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9pY29ucy9td2ViL3lvdXR1YmVfZmlsbC95b3V0dWJlX3Nob3J0c19icmFuZF8yNC92Mi8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIix3aWR0aDoiMjQiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCJ9LF8uSygicGF0aCIse2Q6Im0xOS40NSwzLjg4YzEuMTIsMS44Mi40OCw0LjE1LTEuNDIsNS4yMmwtMS4zMi43NC45NC40MWMxLjM2LjU4LDIuMjcsMS44NSwyLjM1LDMuMjcuMDgsMS40My0uNjgsMi43Ny0xLjk3LDMuNDlsLTgsNC40N2MtMS45MSwxLjA2LTQuMzUuNDYtNS40OC0xLjM1LTEuMTItMS44Mi0uNDgtNC4xNSwxLjQyLTUuMjJsMS4zMy0uNzQtLjk0LS40MWMtMS4zNi0uNTgtMi4yNy0xLjg1LTIuMzUtMy4yNy0uMDgtMS40My42OC0yLjc3LDEuOTctMy40OWw4LTQuNDdjMS45MS0xLjA2LDQuMzUtLjQ2LDUuNDgsMS4zNVoiLApmaWxsOiIjZjAzIn0pLF8uSygicGF0aCIse2Q6Im0xMCwxNWw1LTMtNS0zdjZaIixmaWxsOiIjZmZmIn0pKTthWyJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9pY29ucy9td2ViL3lvdXR1YmVfZmlsbC95b3V0dWJlL3YyLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHZpZXdCb3g6IjAgMCA2NyA2MCIsZmlsbDoiIn0sXy5LKCJwYXRoIix7ZDoiTTYzIDE0Ljg3YTcuODg1IDcuODg1IDAgMDAtNS41Ni01LjU2QzUyLjU0IDggMzIuODggOCAzMi44OCA4UzEzLjIzIDggOC4zMiA5LjMxYy0yLjcuNzItNC44MyAyLjg1LTUuNTYgNS41NkMxLjQ1IDE5Ljc3IDEuNDUgMzAgMS40NSAzMHMwIDEwLjIzIDEuMzEgMTUuMTNjLjcyIDIuNyAyLjg1IDQuODMgNS41NiA1LjU2QzEzLjIzIDUyIDMyLjg4IDUyIDMyLjg4IDUyczE5LjY2IDAgMjQuNTYtMS4zMWMyLjctLjcyIDQuODMtMi44NSA1LjU2LTUuNTZDNjQuMzEgNDAuMjMgNjQuMzEgMzAgNjQuMzEgMzBzMC0xMC4yMy0xLjMxLTE1LjEzeiJ9KSwKXy5LKCJwYXRoIix7ZmlsbDoiI0ZGRiIsY2xhc3M6ImxvZ28tYXJyb3ciLGQ6Ik0yNi42IDM5LjQzTDQyLjkzIDMwIDI2LjYgMjAuNTd6In0pKTthWyJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9pY29ucy9td2ViL3lvdXR1YmVfb3V0bGluZS9mdWxsc2NyZWVuX2V4aXQvdjEvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsImVuYWJsZS1iYWNrZ3JvdW5kIjoibmV3IDAgMCAyNCAyNCIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTAsMTBINlY5aDNWNmgxVjEweiBNMTgsOWgtM1Y2aC0xdjRoNFY5eiBNMTUsMTVoM3YtMWgtNHY0aDFWMTV6IE0xMCwxNEg2djFoM3YzaDFWMTR6In0pKTthWyJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9pY29ucy9td2ViL3lvdXR1YmVfb3V0bGluZS9mdWxsc2NyZWVuL3YxLzI0cHguc3ZnIl09Cl8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwiZW5hYmxlLWJhY2tncm91bmQiOiJuZXcgMCAwIDI0IDI0IixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik03LDExSDZWNmg1djFIN1YxMXogTTE4LDZoLTV2MWg0djRoMVY2eiBNMTgsMTNoLTF2NGgtNHYxaDVWMTN6IE0xMSwxN0g3di00SDZ2NWg1VjE3eiJ9KSk7cmV0dXJuIGF9O2xxYT1mdW5jdGlvbigpe3JldHVybiBQcm9taXNlLnJlc29sdmUoRW5hKCkpfTttcWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gc1koImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIvIixhLGIpfTsKY3FhPWFzeW5jIGZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5pZGVudGlmaWVyLGQ9Yi5JaixlPWIuZXh0cmFzLGY9Yi50YXJnZXQsaD1iLlBtO2I9Yi5uQTtkJiZhd2FpdCBWWShhLHtpZGVudGlmaWVyOmMsSWo6ZCx0bjohMSxleHRyYXM6ZSxQbTpofSk7YXdhaXQgYS5pc1Zpc2libGUoYyl8fChhPWF3YWl0IFpvYShhLGMpLF8uWE0oImVuZ2FnZW1lbnQtcGFuZWwtcHVzaCIse2lkZW50aWZpZXI6Yyx3ejphLExKOmYsbkE6Yn0pLGMmJl8ub00oKS5kaXNwYXRjaChfLmtBKHt0eXBlOiJNQUlOX0FQUF9BRERfT1BFTl9FTkdBR0VNRU5UX1BBTkVMIixwYXlsb2FkOnt4ejpjfX0pKSl9O1ZZPWFzeW5jIGZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5pZGVudGlmaWVyLGQ9Yi5JajtiPWIuUG07YyYmKGQmJmEuT20uc2V0KGMsZCksXy5YTSgiZW5nYWdlbWVudC1wYW5lbC11cGRhdGUiLHtpZGVudGlmaWVyOmMsd3o6ZCxQbTpifSkpfTsKdHFhPWZ1bmN0aW9uKGEpe3ZhciBiPV8ueSgpO25xYSgpO18uSnooYix7amE6Xy5MeCxNYjpvcWF9KTtfLkp6KGIse2phOl8ubEYsTWI6Xy53KCJIVE1MX0RJUiIpPT09InJ0bCI/InJ0bCI6Imx0ciJ9KTtfLkp6KGIse2phOl8ua0YsTWI6KCk9PiEwfSk7Xy5KeihiLHtqYTpfLm1PLFBhOllZfSk7Xy5KeihiLHtqYTpfLlhMLFBhOlpZfSk7Xy5KeihiLHtqYTpfLm9PLE1iOmtxYX0pO18uSnooYix7amE6Xy5MRCxNYjpfLnVPfSk7Xy5KeihiLHtqYTpfLmNMLFBhOnBxYX0pO18uSnooYix7amE6Xy5iSSxXYzpfLm9NfSk7Xy5KeihiLHtqYTpfLnlQLE1iOm5ldyBxcWF9KTtfLkp6KGIse2phOl8udlAsTWI6e1Z1OiEwLEN4OiEwfX0pO18uSnooYix7amE6Xy5KSCxXYzooKT0+UHJvbWlzZS5yZXNvbHZlKGEpfSk7Xy5KeihiLHtqYTpfLktILFdjOigpPT4oKT0+YX0pO18uSnooYix7amE6JFksUGE6YVp9KTtfLkp6KGIse2phOl8uYkwsUGE6cnFhfSk7Xy5KeihiLHtqYTpfLk9XLFdjOl8uaHh9KTsKXy5KeihiLHtqYTpfLmJNLE1iOl8uTE99KTtpZihfLngoIndlYl9lbmFibGVfcmVuZGVyZXJfbG9nZ2VyIikpe2xldCBjPW5ldyBEWDtfLk5NKHdpbmRvdywibmF2aWdhdGUiLCgpPT57Yy5hYm9ydCgpfSk7Xy5KeihiLHtqYTpfLkNHLE1iOm5ldyBzcWEoYy5zaWduYWwpfSl9fTtucWE9ZnVuY3Rpb24oKXt2YXIgYT1fLnkoKSxiPWEucmVzb2x2ZShfLkl5KTtfLkd5Lm1hcHBpbmdzLnNldChTVy50b1N0cmluZygpLHt0eXBlOiJtYXBwaW5nIix2YWx1ZTpifSk7Xy5KeihhLHtqYTpfLkh5LE1iOmxxYX0pfTt6WD1mdW5jdGlvbigpe3ZhciBhPXt9LGI9Xy5WdygpO2ImJihhLmRlc3RpbmF0aW9uU2NyZWVuPWIuZ2V0QXNKc29uKCkudmVUeXBlfHx2b2lkIDApO2EubmF2VHlwZT0iU0xJX05BVl9UWVBFX0NPTEQiO2EuYWN0aW9uVHlwZT0iTEFURU5DWV9BQ1RJT05fRU1CRUQiO3JldHVybntuYXZpZ2F0aW9uOmF9fTsKdXFhPWZ1bmN0aW9uKGEsYj17fSl7cmV0dXJue3R5cGU6Mixjb21tYW5kOmEsZm9ybTpiLmZvcm19fTsKXy5iWj1mdW5jdGlvbihhKXtfLkFxKCJlcF9pbml0X2lqcyIpO3RxYShhKTt2YXIgYj1kb2N1bWVudC5ib2R5O2lmKCFiKXRocm93IEVycm9yKCJpZSIpO2I9bmV3IHZxYSh7cm9vdDpiLHBKOl8ueSgpfSk7Yi5pbnN0YWxsKHdxYSk7Yi50cmFuc2l0aW9uKCJpbml0aWFsaXplZCIpO18uQXEoImVwX2luaXRfaWplIik7Xy54KCJlbWJlZHNfdHJhY2luZ19rcyIpfHxwcGEoKTtfLllNPSEwOyhfLk1rKCJpZW1vYmlsZSIpfHxfLk1rKCJ3aW5kb3dzIHBob25lIikmJl8uTWsoImVkZ2UiKSkmJl8uTWsoIjsgdmlydHVhbCIpfHwoWG9hKGEpLG5vYSgpKTtxb2EoYSk7RVk9YTtqcWEoYSk7YT0hXy54KCJtd2ViX2NvbW1hbmRfaGFuZGxlcl9zY3JlZW5fbWFuYWdlcl9raWxsc3dpdGNoIik7Yj1bXy5RVyxfLlV6LF8uQ3ldO0pvYShfLngoIm13ZWJfY29tbWFuZF9oYW5kbGVyX2Rpc2FibGVfYnVpbGRfY29tbWFuZF9wYXlsb2FkX3N0dWIiKT91cWE6dm9pZCAwLGE/Xy5oeCgpOnZvaWQgMCxhLAphLGIpO18uSnooXy55KCkse2phOl8uVUQsTWI6TFguaW5zdGFuY2V9KTtpb2EoKTtGcGEoKX07V1c9W107RG9hPXtnSDoiU0xJX1NUQVRVU19VTktOT1dOIixlSDoiU0xJX1NUQVRVU19TVUNDRVNTIixjSDoiU0xJX1NUQVRVU19GQUlMVVJFIixmSDoiU0xJX1NUQVRVU19USU1FT1VUIixhSDoiU0xJX1NUQVRVU19BQk9SVEVEIixiSDoiU0xJX1NUQVRVU19DQU5DRUxMRUQiLGRIOiJTTElfU1RBVFVTX1JFSkVDVEVEIn07Y1o9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmV2ZW50cz1uZXcgTWFwfWNsZWFyKCl7dGhpcy5ldmVudHMuY2xlYXIoKX19OwpLbmE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLkQ9bmV3IHhxYTt0aGlzLnY9bmV3IGNaO3RoaXMuQj1uZXcgY1o7dGhpcy5vPTA7dGhpcy5mbHVzaEludGVydmFsPTNFNDt0aGlzLmo9bmV3IF8uankodGhpcy5mbHVzaEludGVydmFsKTt0aGlzLmoubGlzdGVuKCJ0aWNrIix0aGlzLmZsdXNoLCExLHRoaXMpfWZsdXNoKCl7aWYodGhpcy5vKXt2YXIgYT17bG9nZ2VkRXZlbnRzOllXKHRoaXMudiksdW5sb2dnZWRFdmVudHM6WVcodGhpcy5CKX07aWYoXy54KCJleHBvcnRfcGxheWVyX3ZlcnNpb25fdG9feXRjb25maWciKSl7dmFyIGI7KGI9Xy53KCJQTEFZRVJfQ0xJRU5UX1ZFUlNJT04iKSk/KGI9Yi5zcGxpdCgiLSIpWzBdLnJlcGxhY2UoL1wuL2csIiIpLGI9aXNOYU4oTnVtYmVyKGIpKT8iMCI6Yik6Yj0iIjt2YXIgYz1fLncoIlBMQVlFUl9DTElFTlRfVkVSU0lPTiIpO2lmKGMpe2M9Yy5zcGxpdCgiLSIpO2xldCBkPSIiO2MubGVuZ3RoPjEmJihkPWNbYy5sZW5ndGgtMV0pO2M9CkpuYShkLnN0YXJ0c1dpdGgoImNhbmFyeV9leHBlcmltZW50Iik/ImNhbmFyeSI6ZC5zdGFydHNXaXRoKCJjYW5hcnlfY29udHJvbCIpPyJjb250cm9sIjoibm9uZSIpfWVsc2UgYz0iQ0xJRU5UX0NBTkFSWV9TVEFURV9VTktOT1dOIjthLmRpbWVuc2lvbnM9e3BsYXllckNsaWVudFZlcnNpb246YixwbGF5ZXJDYW5hcnlTdGF0ZTpjfX10aGlzLkQuZmx1c2goYSk7dGhpcy52LmNsZWFyKCk7dGhpcy5CLmNsZWFyKCk7dGhpcy5vPTA7dGhpcy5qLmVuYWJsZWQmJnRoaXMuai5zdG9wKCl9fX07eHFhPWNsYXNze2ZsdXNoKGEsYil7Xy54KCJlbmFibGVfY2xpZW50X3NsaV9sb2dnaW5nIikmJl8uRXAoInNsaUV2ZW50QmF0Y2giLGEse3NlbmRJc29sYXRlZFBheWxvYWQ6ISFifSl9fTtkWj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX19OwplWj1jbGFzcyBleHRlbmRzIGRae2dldCBlbnRpdHlNZXRhZGF0YSgpe3JldHVybiB0aGlzLmouZW50aXR5TWV0YWRhdGF9c2V0IGVudGl0eU1ldGFkYXRhKGEpe3RoaXMuai5lbnRpdHlNZXRhZGF0YT1hfX07eXFhPWNsYXNzIGV4dGVuZHMgZFp7bygpe3ZhciBhPVtdO3RoaXMuai52aWRlbyYmYS5wdXNoKHRoaXMuai52aWRlbyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19fTt6cWE9Y2xhc3MgZXh0ZW5kcyBkWntvKCl7dmFyIGE9W107dGhpcy5qLnZpZGVvJiZhLnB1c2godGhpcy5qLnZpZGVvKTt0aGlzLmoucGxheWxpc3QmJmEucHVzaCh0aGlzLmoucGxheWxpc3QpO3RoaXMuai52aWRlb0l0ZW0mJmEucHVzaCh0aGlzLmoudmlkZW9JdGVtKTt0aGlzLmoucGxheWxpc3RJdGVtJiZhLnB1c2godGhpcy5qLnBsYXlsaXN0SXRlbSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19fTsKQXFhPWNsYXNzIGV4dGVuZHMgZFp7bygpe3ZhciBhPVtdO3RoaXMuai5sb2NhbEltYWdlRW50aXRpZXMmJmEucHVzaCguLi50aGlzLmoubG9jYWxJbWFnZUVudGl0aWVzKTt0aGlzLmoudmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHkmJmEucHVzaCh0aGlzLmoudmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHkpO3JldHVyblsuLi4obmV3IFNldChhKSldfX07QnFhPWNsYXNzIGV4dGVuZHMgZFp7bygpe3ZhciBhPVtdO3RoaXMuai5yZWNvbW1lbmRlZFZpZGVvTWV0YWRhdGEmJmEucHVzaCguLi4obmV3IEFxYSh0aGlzLmoucmVjb21tZW5kZWRWaWRlb01ldGFkYXRhKSkubygpKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX19O0NxYT1jbGFzcyBleHRlbmRzIGRae28oKXt2YXIgYT1bXTt0aGlzLmoucGxheWJhY2tQb3NpdGlvbiYmYS5wdXNoKHRoaXMuai5wbGF5YmFja1Bvc2l0aW9uKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX19OwpEcWE9Y2xhc3MgZXh0ZW5kcyBkWntvKCl7dmFyIGE9W107dGhpcy5qLmNyZWF0b3JFbnRpdHkmJmEucHVzaCh0aGlzLmouY3JlYXRvckVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19fTtmWj0hMTsKRXFhPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuY291bnRlcj1bMCwwLDAsMF07dGhpcy5vPW5ldyBVaW50OEFycmF5KDE2KTt0aGlzLmo9MTY7aWYoIWZaKXt2YXIgYixjPW5ldyBVaW50OEFycmF5KDI1NiksZD1uZXcgVWludDhBcnJheSgyNTYpO3ZhciBlPTE7Zm9yKGI9MDtiPDI1NjtiKyspY1tlXT1iLGRbYl09ZSxlXj1lPDwxXihlPj43JiYyODMpO2dYPW5ldyBVaW50OEFycmF5KDI1Nik7Y1g9YlgoMjU2KTtkWD1iWCgyNTYpO2VYPWJYKDI1Nik7Zlg9YlgoMjU2KTtmb3IobGV0IGg9MDtoPDI1NjtoKyspe2U9aD9kWzI1NV5jW2hdXTowO2VePWU8PDFeZTw8Ml5lPDwzXmU8PDQ7ZT1lJjI1NV5lPj4+OF45OTtnWFtoXT1lO2I9ZTw8MV4oZT4+NyYmMjgzKTt2YXIgZj1iXmU7Y1hbaF09Yjw8MjR8ZTw8MTZ8ZTw8OHxmO2RYW2hdPWY8PDI0fGNYW2hdPj4+ODtlWFtoXT1lPDwyNHxkWFtoXT4+Pjg7ZlhbaF09ZTw8MjR8ZVhbaF0+Pj44fWZaPQohMH1lPWJYKDQ0KTtmb3IoYz0wO2M8NDtjKyspZVtjXT1hWzQqY108PDI0fGFbNCpjKzFdPDwxNnxhWzQqYysyXTw8OHxhWzQqYyszXTtmb3IoZD0xO2M8NDQ7YysrKWE9ZVtjLTFdLGMlNHx8KGE9KGdYW2E+PjE2JjI1NV1eZCk8PDI0fGdYW2E+PjgmMjU1XTw8MTZ8Z1hbYSYyNTVdPDw4fGdYW2E+Pj4yNF0sZD1kPDwxXihkPj43JiYyODMpKSxlW2NdPWVbYy00XV5hO3RoaXMua2V5PWV9ZW5jcnlwdChhKXt2YXIgYj1hLmxlbmd0aDthPW5ldyBVaW50OEFycmF5KGEuYnVmZmVyLnNsaWNlKGEuYnl0ZU9mZnNldCxhLmJ5dGVPZmZzZXQrYikpO2Zvcih2YXIgYz10aGlzLm8sZD0wO2Q8YiYmdGhpcy5qPDE2OylhW2QrK11ePWNbdGhpcy5qKytdO2Zvcih2YXIgZT1iLShiLWQpJTE2O2Q8ZTspaFgodGhpcyksYVtkKytdXj1jWzBdLGFbZCsrXV49Y1sxXSxhW2QrK11ePWNbMl0sYVtkKytdXj1jWzNdLGFbZCsrXV49Y1s0XSxhW2QrK11ePWNbNV0sYVtkKytdXj1jWzZdLGFbZCsrXV49Y1s3XSwKYVtkKytdXj1jWzhdLGFbZCsrXV49Y1s5XSxhW2QrK11ePWNbMTBdLGFbZCsrXV49Y1sxMV0sYVtkKytdXj1jWzEyXSxhW2QrK11ePWNbMTNdLGFbZCsrXV49Y1sxNF0sYVtkKytdXj1jWzE1XTtpZihkPGIpZm9yKGhYKHRoaXMpLHRoaXMuaj0wO2Q8YjspYVtkKytdXj1jW3RoaXMuaisrXTtyZXR1cm4gYX19O2daPSExO0ZxYT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMudj1hO3RoaXMubz1ifWFzeW5jIGVuY3J5cHQoYSxiKXt0cnl7cmV0dXJuIGF3YWl0IE5uYSh0aGlzLGEsYil9Y2F0Y2goYyl7dGhyb3cgXy5JcChjKSxnWj0hMCxjO319fTsKaVo9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5vPWF9ZW5jcnlwdChhLGIpe3RoaXMuanx8KHRoaXMuaj1uZXcgRXFhKHRoaXMubykpO3ZhciBjPXRoaXMuajtmb3IobGV0IGQ9MDtkPDQ7ZCsrKWMuY291bnRlcltkXT1iW2QqNF08PDI0fGJbZCo0KzFdPDwxNnxiW2QqNCsyXTw8OHxiW2QqNCszXTtjLmo9MTY7cmV0dXJuIHRoaXMuai5lbmNyeXB0KGEpfWRlY3J5cHQoYSxiKXtyZXR1cm4gdGhpcy5lbmNyeXB0KGEsYil9fTsKR3FhPWNsYXNze2NvbnN0cnVjdG9yKGEpe2E6e2lmKCFnWiYmIV8uSmwpe2lmKGhaKXt2YXIgYj1oWjticmVhayBhfWhaPXdpbmRvdy5jcnlwdG8/LnN1YnRsZTtpZihoWj8uaW1wb3J0S2V5JiZoWj8uc2lnbiYmaFo/LmVuY3J5cHQpe2I9aFo7YnJlYWsgYX1oWj12b2lkIDB9Yj12b2lkIDB9YiYmKHRoaXMuaj1uZXcgRnFhKGEsYikpO3RoaXMubz1uZXcgaVooYSl9YXN5bmMgZW5jcnlwdChhLGIpe2lmKHRoaXMuail0cnl7cmV0dXJuIGF3YWl0IHRoaXMuai5lbmNyeXB0KGEsYil9Y2F0Y2goYyl7Xy5JcChjKSxnWj0hMCx0aGlzLmo9dm9pZCAwfXJldHVybiB0aGlzLm8uZW5jcnlwdChhLGIpfWRlY3J5cHQoYSxiKXtyZXR1cm4gdGhpcy5lbmNyeXB0KGEsYil9fTsKSHFhPXtJTlZBTElEX0VOQ09ERVJfVkVSU0lPTjoiSW52YWxpZCBlbmNvZGVyIHZlcnNpb24iLEtFWV9DUkVBVElPTl9GQUlMRUQ6IkZhaWxlZCB0byBjcmVhdGUgZW5jb2RlciBrZXkiLFVOS05PV05fREVDT0RFX0VSUk9SOiJGYWlsZWQgdG8gZGVjb2RlIFBFUyBkYXRhIixVTktOT1dOX0VOQ09ERV9FUlJPUjoiRmFpbGVkIHRvIGVuY29kZSBQRVMgZGF0YSIsV1JPTkdfREFUQV9UWVBFOiJFbmNvZGVyIGNhbm5vdCBwcm9jZXNzIHRoZSBkYXRhIHR5cGUifTtpWD1jbGFzcyBleHRlbmRzIF8uWGp7Y29uc3RydWN0b3IoYSxiPXt9KXtzdXBlcihIcWFbYV0se25hbWU6IlBFU0VuY29kZXJFcnJvciIsdHlwZTphLC4uLmJ9KTt0aGlzLnR5cGU9YTt0aGlzLmxldmVsPSJXQVJOSU5HIjtPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxpWC5wcm90b3R5cGUpfX07CmpaPWNsYXNze2VuY29kZShhLGIpe3RyeXtyZXR1cm4gdGhpcy52KGEsYil9Y2F0Y2goYyl7algoYyxPbmEpfX1kZWNvZGUoYSxiKXt0cnl7cmV0dXJuIHRoaXMubyhhLGIpfWNhdGNoKGMpe2pYKGMsUG5hKX19fTtJcWE9Y2xhc3MgZXh0ZW5kcyBqWntjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuaj1hfXYoYSxiKXtiPWtYKGIpO2E9KG5ldyBUZXh0RW5jb2RlcikuZW5jb2RlKEpTT04uc3RyaW5naWZ5KGEpKTtyZXR1cm4gdGhpcy5qLmVuY3J5cHQoYSxiKX1vKGEsYil7aWYoIShhIGluc3RhbmNlb2YgVWludDhBcnJheSkpdGhyb3cgbmV3IGlYKCJXUk9OR19EQVRBX1RZUEUiLHtJcDoxfSk7dmFyIGM9bmV3IFRleHREZWNvZGVyO2I9a1goYik7YT10aGlzLmouZGVjcnlwdChhLGIpO3JldHVybiBKU09OLnBhcnNlKGMuZGVjb2RlKGEpKX19OwpRbmE9e2FuaW1hdGlvbkVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJhbmltYXRpb25FbnRpdHkifX0sYWNjb3VudExpbmtTdGF0dXNFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iYWNjb3VudExpbmtTdGF0dXNFbnRpdHkifX0sYXNrU3R1ZGlvR2VuZXJhdGVkRGF0YUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJhc2tTdHVkaW9HZW5lcmF0ZWREYXRhRW50aXR5In19LGJvb2xlYW5FbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iYm9vbGVhbkVudGl0eSJ9fSxidXR0b25FbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iYnV0dG9uRW50aXR5In19LGNhcHRpb25UcmFjazpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjYXB0aW9uVHJhY2sifX0sCmNoYW5uZWxIYW5kbGU6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iY2hhbm5lbEhhbmRsZSJ9fSxjaGF0TG9hZGluZ1N0YXRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNoYXRMb2FkaW5nU3RhdGVFbnRpdHkifX0sYXNrU3R1ZGlvQ29udmVyc2F0aW9uU3VtbWFyeUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJhc2tTdHVkaW9Db252ZXJzYXRpb25TdW1tYXJ5RW50aXR5In19LGNoaXBFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iY2hpcEVudGl0eSJ9fSxjb21tZXJjZUFjcXVpc2l0aW9uQ2xpZW50UGF5bG9hZEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjb21tZXJjZUFjcXVpc2l0aW9uQ2xpZW50UGF5bG9hZEVudGl0eSJ9fSwKY29tbWVyY2VDYXJ0TGlzdEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjb21tZXJjZUNhcnRMaXN0RW50aXR5In19LGNvbW1lcmNlVG9rZW5CYWxhbmNlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNvbW1lcmNlVG9rZW5CYWxhbmNlRW50aXR5In19LGNvbXBvc2l0ZVNvdXJjZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjb21wb3NpdGVTb3VyY2VFbnRpdHkifX0sbXVsdGl2aWV3U3RhZ2luZ0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmouY29tcG9zaXRlU291cmNlS2V5cyYmYS5wdXNoKC4uLnRoaXMuai5jb21wb3NpdGVTb3VyY2VLZXlzKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdWx0aXZpZXdTdGFnaW5nRW50aXR5In19LGNvbnRleHROb3RlRmVlZEVudGl0eVBheWxvYWQ6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iY29udGV4dE5vdGVGZWVkRW50aXR5UGF5bG9hZCJ9fSwKY29udGV4dE5vdGVVc2VyUmF0aW5nRW50aXR5UGF5bG9hZDpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjb250ZXh0Tm90ZVVzZXJSYXRpbmdFbnRpdHlQYXlsb2FkIn19LGNvbnRpbnVhdGlvblRva2VuRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNvbnRpbnVhdGlvblRva2VuRW50aXR5In19LGRvd25sb2FkUXVhbGl0eVBpY2tlckVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJkb3dubG9hZFF1YWxpdHlQaWNrZXJFbnRpdHkifX0sZG93bmxvYWRzUGFnZVJlZnJlc2hUb2tlbkVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJkb3dubG9hZHNQYWdlUmVmcmVzaFRva2VuRW50aXR5In19LGRvd25sb2Fkc1BhZ2VWaWV3Q29uZmlndXJhdGlvbkVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJkb3dubG9hZHNQYWdlVmlld0NvbmZpZ3VyYXRpb25FbnRpdHkifX0sCmRvd25sb2FkU3RhdHVzRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImRvd25sb2FkU3RhdHVzRW50aXR5In19LGRpc21pc3NTdGF0ZTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJkaXNtaXNzU3RhdGUifX0sc2Z2QXVkaW9JdGVtQ3VycmVudGx5UGxheWluZ0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJzZnZBdWRpb0l0ZW1DdXJyZW50bHlQbGF5aW5nRW50aXR5In19LGVtb2ppRm91bnRhaW5EYXRhRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImVtb2ppRm91bnRhaW5EYXRhRW50aXR5In19LGVtb2ppQ3VzdG9taXphdGlvblNldEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJlbW9qaUN1c3RvbWl6YXRpb25TZXRFbnRpdHkifX0sCmZha2VDaGFubmVsOmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5hbHRlcm5hdGVDaGFubmVsJiZhLnB1c2godGhpcy5qLmFsdGVybmF0ZUNoYW5uZWwpO3RoaXMuai5hbHRlcm5hdGVDaGFubmVsTGlzdCYmYS5wdXNoKC4uLnRoaXMuai5hbHRlcm5hdGVDaGFubmVsTGlzdCk7dGhpcy5qLm9uZW9mQ2hhbm5lbEVudGl0eSYmYS5wdXNoKHRoaXMuai5vbmVvZkNoYW5uZWxFbnRpdHkpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuImZha2VDaGFubmVsIn19LGZha2VQbGF5bGlzdDpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmouZW50cnlDb2xsZWN0aW9uJiZhLnB1c2godGhpcy5qLmVudHJ5Q29sbGVjdGlvbik7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZmFrZVBsYXlsaXN0In19LGZha2VQbGF5bGlzdEVudHJ5Q29sbGVjdGlvbjpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT0KW107dGhpcy5qLnBhcmVudFBsYXlsaXN0JiZhLnB1c2godGhpcy5qLnBhcmVudFBsYXlsaXN0KTtpZih0aGlzLmouZW50cmllcylmb3IobGV0IGIgb2YgdGhpcy5qLmVudHJpZXMpYS5wdXNoKC4uLihuZXcgeXFhKGIpKS5vKCkpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuImZha2VQbGF5bGlzdEVudHJ5Q29sbGVjdGlvbiJ9fSxmYWtlVmlkZW86Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmRlc2NyaXB0aW9uRW50aXR5JiZhLnB1c2godGhpcy5qLmRlc2NyaXB0aW9uRW50aXR5KTt0aGlzLmouY3JlYXRvcnMmJmEucHVzaCguLi50aGlzLmouY3JlYXRvcnMpO3RoaXMuai50aGVCaWdnZXN0RmFuJiZhLnB1c2godGhpcy5qLnRoZUJpZ2dlc3RGYW4pO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuImZha2VWaWRlbyJ9fSxmYWtlVmlkZW9EZXNjcmlwdGlvbjpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJmYWtlVmlkZW9EZXNjcmlwdGlvbiJ9fSwKZmVhdHVyZWRQcm9kdWN0c0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJmZWF0dXJlZFByb2R1Y3RzRW50aXR5In19LHNhdmVkUHJvZHVjdHNTdGF0ZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJzYXZlZFByb2R1Y3RzU3RhdGVFbnRpdHkifX0sZmxvd1N0YXRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImZsb3dTdGF0ZUVudGl0eSJ9fSxpY29uQmFkZ2VFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iaWNvbkJhZGdlRW50aXR5In19LGludGVyc3RpdGlhbEludGVyYWN0aW9uU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iaW50ZXJzdGl0aWFsSW50ZXJhY3Rpb25TdGF0ZUVudGl0eSJ9fSxsaWtlQnV0dG9uQW5pbWF0aW9uRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImxpa2VCdXR0b25BbmltYXRpb25FbnRpdHkifX0sCmxpdmVDaGF0UG9sbFN0YXRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImxpdmVDaGF0UG9sbFN0YXRlRW50aXR5In19LGRhdGFGcmVzaG5lc3NFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZGF0YUZyZXNobmVzc0VudGl0eSJ9fSxsaXZlVmlld2VyTGVhZGVyYm9hcmRDaGF0RW50cnlQb2ludFN0YXRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImxpdmVWaWV3ZXJMZWFkZXJib2FyZENoYXRFbnRyeVBvaW50U3RhdGVFbnRpdHkifX0sbGl2ZVZpZXdlckxlYWRlcmJvYXJkUG9pbnRzRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImxpdmVWaWV3ZXJMZWFkZXJib2FyZFBvaW50c0VudGl0eSJ9fSxsaXZlUmVhY3Rpb25zRGF0YUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJsaXZlUmVhY3Rpb25zRGF0YUVudGl0eSJ9fSwKbG9nb0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJsb2dvRW50aXR5In19LG1hY3JvTWFya2VyRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1hY3JvTWFya2VyRW50aXR5In19LG1haW5Eb3dubG9hZHNMaWJyYXJ5RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5kb3dubG9hZHNMaXN0JiZhLnB1c2godGhpcy5qLmRvd25sb2Fkc0xpc3QpO3RoaXMuai5zbWFydERvd25sb2Fkc0xpc3QmJmEucHVzaCh0aGlzLmouc21hcnREb3dubG9hZHNMaXN0KTt0aGlzLmoucmVjb21tZW5kZWREb3dubG9hZHNMaXN0JiZhLnB1c2godGhpcy5qLnJlY29tbWVuZGVkRG93bmxvYWRzTGlzdCk7dGhpcy5qLnJlZnJlc2gmJmEucHVzaCh0aGlzLmoucmVmcmVzaCk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFpbkRvd25sb2Fkc0xpYnJhcnlFbnRpdHkifX0sCm1haW5Eb3dubG9hZHNMaXN0RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5yZWZyZXNoJiZhLnB1c2godGhpcy5qLnJlZnJlc2gpO2lmKHRoaXMuai5kb3dubG9hZHMpZm9yKGxldCBiIG9mIHRoaXMuai5kb3dubG9hZHMpYS5wdXNoKC4uLihuZXcgenFhKGIpKS5vKCkpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1haW5Eb3dubG9hZHNMaXN0RW50aXR5In19LG1haW5QbGF5bGlzdERvd25sb2FkU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmxvY2FsSW1hZ2VFbnRpdGllcyYmYS5wdXNoKC4uLnRoaXMuai5sb2NhbEltYWdlRW50aXRpZXMpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1haW5QbGF5bGlzdERvd25sb2FkU3RhdGVFbnRpdHkifX0sbWFpblBsYXlsaXN0RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5jaGFubmVsT3duZXImJgphLnB1c2godGhpcy5qLmNoYW5uZWxPd25lcik7dGhpcy5qLnZpZGVvcyYmYS5wdXNoKC4uLnRoaXMuai52aWRlb3MpO3RoaXMuai5jb2xsYWJvcmF0b3JDaGFubmVscyYmYS5wdXNoKC4uLnRoaXMuai5jb2xsYWJvcmF0b3JDaGFubmVscyk7dGhpcy5qLmRvd25sb2FkU3RhdGUmJmEucHVzaCh0aGlzLmouZG93bmxvYWRTdGF0ZSk7dGhpcy5qLnJlZnJlc2gmJmEucHVzaCh0aGlzLmoucmVmcmVzaCk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFpblBsYXlsaXN0RW50aXR5In19LG1haW5QbGF5bGlzdFZpZGVvRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai52aWRlbyYmYS5wdXNoKHRoaXMuai52aWRlbyk7dGhpcy5qLmNoYW5uZWxDb250cmlidXRvciYmYS5wdXNoKHRoaXMuai5jaGFubmVsQ29udHJpYnV0b3IpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1haW5QbGF5bGlzdFZpZGVvRW50aXR5In19LAptYWluVmlkZW9Eb3dubG9hZFN0YXRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5wbGF5YmFja0RhdGEmJmEucHVzaCh0aGlzLmoucGxheWJhY2tEYXRhKTt0aGlzLmoubG9jYWxJbWFnZUVudGl0aWVzJiZhLnB1c2goLi4udGhpcy5qLmxvY2FsSW1hZ2VFbnRpdGllcyk7dGhpcy5qLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5JiZhLnB1c2godGhpcy5qLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtYWluVmlkZW9Eb3dubG9hZFN0YXRlRW50aXR5In19LG1haW5WaWRlb0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoub3duZXImJmEucHVzaCh0aGlzLmoub3duZXIpO3RoaXMuai5kb3dubG9hZFN0YXRlJiZhLnB1c2godGhpcy5qLmRvd25sb2FkU3RhdGUpO3RoaXMuai51c2VyU3RhdGUmJmEucHVzaCguLi4obmV3IENxYSh0aGlzLmoudXNlclN0YXRlKSkubygpKTsKdGhpcy5qLmFkZGl0aW9uYWxNZXRhZGF0YSYmYS5wdXNoKC4uLihuZXcgQnFhKHRoaXMuai5hZGRpdGlvbmFsTWV0YWRhdGEpKS5vKCkpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1haW5WaWRlb0VudGl0eSJ9fSxtYXJrZXJzRW5nYWdlbWVudFBhbmVsU3luY0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtYXJrZXJzRW5nYWdlbWVudFBhbmVsU3luY0VudGl0eSJ9fSxtYXJrZXJzVmlzaWJpbGl0eU92ZXJyaWRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1hcmtlcnNWaXNpYmlsaXR5T3ZlcnJpZGVFbnRpdHkifX0sbXVzaWNBbGJ1bVJlbGVhc2VEZXRhaWw6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmFsYnVtUmVsZWFzZSYmYS5wdXNoKHRoaXMuai5hbGJ1bVJlbGVhc2UpO3RoaXMuai50cmFja3MmJmEucHVzaCguLi50aGlzLmoudHJhY2tzKTsKcmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNBbGJ1bVJlbGVhc2VEZXRhaWwifX0sbXVzaWNBbGJ1bVJlbGVhc2VEb3dubG9hZE1ldGFkYXRhRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai50cmFja0Rvd25sb2FkTWV0YWRhdGFzJiZhLnB1c2goLi4udGhpcy5qLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljQWxidW1SZWxlYXNlRG93bmxvYWRNZXRhZGF0YUVudGl0eSJ9fSxtdXNpY0FsYnVtUmVsZWFzZTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5JiZhLnB1c2godGhpcy5qLm11c2ljTGlicmFyeVN0YXR1c0VudGl0eSk7dGhpcy5qLnByaW1hcnlBcnRpc3RzJiZhLnB1c2goLi4udGhpcy5qLnByaW1hcnlBcnRpc3RzKTt0aGlzLmouZGV0YWlscyYmYS5wdXNoKHRoaXMuai5kZXRhaWxzKTsKdGhpcy5qLnVzZXJEZXRhaWxzJiZhLnB1c2godGhpcy5qLnVzZXJEZXRhaWxzKTt0aGlzLmoudHJhY2tzJiZhLnB1c2goLi4udGhpcy5qLnRyYWNrcyk7dGhpcy5qLnNoYXJlJiZhLnB1c2godGhpcy5qLnNoYXJlKTt0aGlzLmouZG93bmxvYWRNZXRhZGF0YSYmYS5wdXNoKHRoaXMuai5kb3dubG9hZE1ldGFkYXRhKTt0aGlzLmoucmVmcmVzaCYmYS5wdXNoKHRoaXMuai5yZWZyZXNoKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY0FsYnVtUmVsZWFzZSJ9fSxtdXNpY0FsYnVtUmVsZWFzZVVzZXJEZXRhaWw6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmFsYnVtUmVsZWFzZSYmYS5wdXNoKHRoaXMuai5hbGJ1bVJlbGVhc2UpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljQWxidW1SZWxlYXNlVXNlckRldGFpbCJ9fSxtdXNpY0FydGlzdERldGFpbDpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT0KW107dGhpcy5qLnBhcmVudEFydGlzdCYmYS5wdXNoKHRoaXMuai5wYXJlbnRBcnRpc3QpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljQXJ0aXN0RGV0YWlsIn19LG11c2ljQXJ0aXN0OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5kZXRhaWxzJiZhLnB1c2godGhpcy5qLmRldGFpbHMpO3RoaXMuai51c2VyRGV0YWlscyYmYS5wdXNoKHRoaXMuai51c2VyRGV0YWlscyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNBcnRpc3QifX0sbXVzaWNBcnRpc3RVc2VyRGV0YWlsOmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5wYXJlbnRBcnRpc3QmJmEucHVzaCh0aGlzLmoucGFyZW50QXJ0aXN0KTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY0FydGlzdFVzZXJEZXRhaWwifX0sbXVzaWNEb3dubG9hZHNMaWJyYXJ5RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPQpbXTt0aGlzLmouZG93bmxvYWRlZFRyYWNrcyYmYS5wdXNoKC4uLnRoaXMuai5kb3dubG9hZGVkVHJhY2tzKTt0aGlzLmouc21hcnREb3dubG9hZGVkVHJhY2tzJiZhLnB1c2goLi4udGhpcy5qLnNtYXJ0RG93bmxvYWRlZFRyYWNrcyk7dGhpcy5qLmRvd25sb2FkZWRFcGlzb2RlcyYmYS5wdXNoKC4uLnRoaXMuai5kb3dubG9hZGVkRXBpc29kZXMpO3RoaXMuai5kb3dubG9hZGVkQWxidW1SZWxlYXNlcyYmYS5wdXNoKC4uLnRoaXMuai5kb3dubG9hZGVkQWxidW1SZWxlYXNlcyk7dGhpcy5qLnNtYXJ0RG93bmxvYWRlZEFsYnVtUmVsZWFzZXMmJmEucHVzaCguLi50aGlzLmouc21hcnREb3dubG9hZGVkQWxidW1SZWxlYXNlcyk7dGhpcy5qLmRvd25sb2FkZWRQbGF5bGlzdHMmJmEucHVzaCguLi50aGlzLmouZG93bmxvYWRlZFBsYXlsaXN0cyk7dGhpcy5qLnNtYXJ0RG93bmxvYWRlZFBsYXlsaXN0cyYmYS5wdXNoKC4uLnRoaXMuai5zbWFydERvd25sb2FkZWRQbGF5bGlzdHMpO3RoaXMuai5tZXRhZGF0YU9ubHlUcmFja3MmJgphLnB1c2goLi4udGhpcy5qLm1ldGFkYXRhT25seVRyYWNrcyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNEb3dubG9hZHNMaWJyYXJ5RW50aXR5In19LG11c2ljTGlicmFyeUVkaXQ6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNMaWJyYXJ5RWRpdCJ9fSxtdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5In19LG11c2ljUGxheWxpc3Q6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnRyYWNrcyYmYS5wdXNoKC4uLnRoaXMuai50cmFja3MpO3RoaXMuai5yZWZyZXNoJiZhLnB1c2godGhpcy5qLnJlZnJlc2gpO3RoaXMuai5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkmJmEucHVzaCh0aGlzLmoubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5KTsKdGhpcy5qLmRldGFpbHMmJmEucHVzaCh0aGlzLmouZGV0YWlscyk7dGhpcy5qLmRvd25sb2FkTWV0YWRhdGEmJmEucHVzaCh0aGlzLmouZG93bmxvYWRNZXRhZGF0YSk7dGhpcy5qLnNpZGVsb2FkTWV0YWRhdGEmJmEucHVzaCh0aGlzLmouc2lkZWxvYWRNZXRhZGF0YSk7dGhpcy5qLnVzZXJEZXRhaWxzJiZhLnB1c2godGhpcy5qLnVzZXJEZXRhaWxzKTt0aGlzLmouZW50cnlDb2xsZWN0aW9uJiZhLnB1c2godGhpcy5qLmVudHJ5Q29sbGVjdGlvbik7dGhpcy5qLnNoYXJlJiZhLnB1c2godGhpcy5qLnNoYXJlKTt0aGlzLmoucG9kY2FzdFNob3dBZGRpdGlvbmFsTWV0YWRhdGEmJmEucHVzaCguLi4obmV3IERxYSh0aGlzLmoucG9kY2FzdFNob3dBZGRpdGlvbmFsTWV0YWRhdGEpKS5vKCkpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljUGxheWxpc3QifX0sbXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9CltdO3RoaXMuai50cmFja0Rvd25sb2FkTWV0YWRhdGFzJiZhLnB1c2goLi4udGhpcy5qLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljUGxheWxpc3REb3dubG9hZE1ldGFkYXRhRW50aXR5In19LG11c2ljU2hhcmU6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNTaGFyZSJ9fSxtdXNpY1RyYWNrRGV0YWlsOmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5wYXJlbnRUcmFjayYmYS5wdXNoKHRoaXMuai5wYXJlbnRUcmFjayk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNUcmFja0RldGFpbCJ9fSxtdXNpY1RyYWNrRG93bmxvYWRNZXRhZGF0YUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoucGxheWJhY2tEYXRhJiZhLnB1c2godGhpcy5qLnBsYXliYWNrRGF0YSk7CnRoaXMuai5sb2NhbEltYWdlRW50aXRpZXMmJmEucHVzaCguLi50aGlzLmoubG9jYWxJbWFnZUVudGl0aWVzKTt0aGlzLmoudmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHkmJmEucHVzaCh0aGlzLmoudmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHkpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljVHJhY2tEb3dubG9hZE1ldGFkYXRhRW50aXR5In19LG11c2ljVHJhY2s6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLm11c2ljTGlicmFyeVN0YXR1c0VudGl0eSYmYS5wdXNoKHRoaXMuai5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkpO3RoaXMuai5hcnRpc3RzJiZhLnB1c2goLi4udGhpcy5qLmFydGlzdHMpO3RoaXMuai5hdWRpb01vZGVWZXJzaW9uJiZhLnB1c2godGhpcy5qLmF1ZGlvTW9kZVZlcnNpb24pO3RoaXMuai52aWRlb01vZGVWZXJzaW9uJiZhLnB1c2godGhpcy5qLnZpZGVvTW9kZVZlcnNpb24pO3RoaXMuai51c2VyRGV0YWlscyYmCmEucHVzaCh0aGlzLmoudXNlckRldGFpbHMpO3RoaXMuai5kZXRhaWxzJiZhLnB1c2godGhpcy5qLmRldGFpbHMpO3RoaXMuai5hbGJ1bVJlbGVhc2UmJmEucHVzaCh0aGlzLmouYWxidW1SZWxlYXNlKTt0aGlzLmouc2hhcmUmJmEucHVzaCh0aGlzLmouc2hhcmUpO3RoaXMuai5saWJyYXJ5RWRpdCYmYS5wdXNoKHRoaXMuai5saWJyYXJ5RWRpdCk7dGhpcy5qLmRvd25sb2FkTWV0YWRhdGEmJmEucHVzaCh0aGlzLmouZG93bmxvYWRNZXRhZGF0YSk7dGhpcy5qLnBsYXliYWNrUG9zaXRpb24mJmEucHVzaCh0aGlzLmoucGxheWJhY2tQb3NpdGlvbik7dGhpcy5qLmx5cmljcyYmYS5wdXNoKHRoaXMuai5seXJpY3MpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljVHJhY2sifX0sbXVzaWNUcmFja1VzZXJEZXRhaWw6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnBhcmVudFRyYWNrJiZhLnB1c2godGhpcy5qLnBhcmVudFRyYWNrKTsKcmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNUcmFja1VzZXJEZXRhaWwifX0sb2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuIm9mZmxpbmVPcmNoZXN0cmF0aW9uQWN0aW9uV3JhcHBlckVudGl0eSJ9fSxvZmZsaW5lVmlkZW9Qb2xpY3k6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ib2ZmbGluZVZpZGVvUG9saWN5In19LG9mZmxpbmVWaWRlb1N0cmVhbXM6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ib2ZmbGluZVZpZGVvU3RyZWFtcyJ9fSxvZmZsaW5lYWJpbGl0eUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJvZmZsaW5lYWJpbGl0eUVudGl0eSJ9fSxvcmNoZXN0cmF0aW9uV2ViU2FtcGxpbmdFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9CltdO3RoaXMuai5mYWtlQ2hpbGRyZW4mJmEucHVzaCguLi50aGlzLmouZmFrZUNoaWxkcmVuKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJvcmNoZXN0cmF0aW9uV2ViU2FtcGxpbmdFbnRpdHkifX0scGFnZUhlYWRlckVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJwYWdlSGVhZGVyRW50aXR5In19LHBhcnR5R2FtZVBhbmVsRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInBhcnR5R2FtZVBhbmVsRW50aXR5In19LHNsaWRlckdhbWVQYW5lbEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJzbGlkZXJHYW1lUGFuZWxFbnRpdHkifX0scGRwU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4icGRwU3RhdGVFbnRpdHkifX0scGlubmVkUHJvZHVjdEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJwaW5uZWRQcm9kdWN0RW50aXR5In19LApwbGF5YmFja0RhdGE6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnRyYW5zZmVyJiZhLnB1c2godGhpcy5qLnRyYW5zZmVyKTt0aGlzLmouYWRzUGxheWJhY2tEYXRhJiZhLnB1c2goLi4udGhpcy5qLmFkc1BsYXliYWNrRGF0YSk7dGhpcy5qLmRybUxpY2Vuc2UmJmEucHVzaCh0aGlzLmouZHJtTGljZW5zZSk7dGhpcy5qLm9mZmxpbmVWaWRlb1BvbGljeSYmYS5wdXNoKHRoaXMuai5vZmZsaW5lVmlkZW9Qb2xpY3kpO3RoaXMuai52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSYmYS5wdXNoKHRoaXMuai52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4icGxheWJhY2tEYXRhIn19LHBsYXllclN0YXRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInBsYXllclN0YXRlRW50aXR5In19LHBsYXlsaXN0VGh1bWJuYWlsRWRpdHNFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4icGxheWxpc3RUaHVtYm5haWxFZGl0c0VudGl0eSJ9fSwKcXVhbnRpdHlJbmNyZW1lbnRlckVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJxdWFudGl0eUluY3JlbWVudGVyRW50aXR5In19LHJlZnJlc2g6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4icmVmcmVzaCJ9fSxzYXZlVG9QbGF5bGlzdExpc3RFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ic2F2ZVRvUGxheWxpc3RMaXN0RW50aXR5In19LHNlbGVjdGVkQ2hpcEluZGV4RW50aXR5UGF5bG9hZDpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJzZWxlY3RlZENoaXBJbmRleEVudGl0eVBheWxvYWQifX0sc2VsZWN0aW9uVmFsdWVMaXN0RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInNlbGVjdGlvblZhbHVlTGlzdEVudGl0eSJ9fSxzZXR0aW5nRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInNldHRpbmdFbnRpdHkifX0sCnN0cmluZ0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJzdHJpbmdFbnRpdHkifX0sc3VnZ2VzdGVkRmVlZGJhY2tDaGlwU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ic3VnZ2VzdGVkRmVlZGJhY2tDaGlwU3RhdGVFbnRpdHkifX0sdHJhbnNmZXI6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLm9mZmxpbmVWaWRlb1N0cmVhbXMmJmEucHVzaCguLi50aGlzLmoub2ZmbGluZVZpZGVvU3RyZWFtcyk7dGhpcy5qLmNhcHRpb25UcmFjayYmYS5wdXNoKC4uLnRoaXMuai5jYXB0aW9uVHJhY2spO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuInRyYW5zZmVyIn19LHRyZW5kaW5nT2ZmZXJFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4idHJlbmRpbmdPZmZlckVudGl0eSJ9fSwKdW5wbHVnZ2VkU2lkZXNoZWV0SGVhZGVyU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4idW5wbHVnZ2VkU2lkZXNoZWV0SGVhZGVyU3RhdGVFbnRpdHkifX0sdmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4idmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHkifX0sdmlkZW9PdmVydmlld0FzeW5jRGF0YUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ2aWRlb092ZXJ2aWV3QXN5bmNEYXRhRW50aXR5In19LHZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ2aWRlb1BsYXliYWNrUG9zaXRpb25FbnRpdHkifX0sdm90aW5nRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInZvdGluZ0VudGl0eSJ9fSwKeXRNYWluQ2hhbm5lbEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoudXNlckNoYW5uZWxEZXRhaWxzJiZhLnB1c2godGhpcy5qLnVzZXJDaGFubmVsRGV0YWlscyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ieXRNYWluQ2hhbm5lbEVudGl0eSJ9fSx5b3VjaGF0UGVuZGluZ1Jlc3BvbnNlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInlvdWNoYXRQZW5kaW5nUmVzcG9uc2VFbnRpdHkifX0seXRNYWluRG93bmxvYWRlZFZpZGVvRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai52aWRlbyYmYS5wdXNoKHRoaXMuai52aWRlbyk7dGhpcy5qLnBsYXliYWNrRGF0YSYmYS5wdXNoKHRoaXMuai5wbGF5YmFja0RhdGEpO3RoaXMuai5vZmZsaW5lVmlkZW9Qb2xpY3kmJmEucHVzaCh0aGlzLmoub2ZmbGluZVZpZGVvUG9saWN5KTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ5dE1haW5Eb3dubG9hZGVkVmlkZW9FbnRpdHkifX0sCnl0TWFpblZpZGVvRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5jaGFubmVsT3duZXImJmEucHVzaCh0aGlzLmouY2hhbm5lbE93bmVyKTt0aGlzLmoucGxheWJhY2tQb3NpdGlvbiYmYS5wdXNoKHRoaXMuai5wbGF5YmFja1Bvc2l0aW9uKTt0aGlzLmoubG9jYWxJbWFnZUVudGl0aWVzJiZhLnB1c2goLi4udGhpcy5qLmxvY2FsSW1hZ2VFbnRpdGllcyk7dGhpcy5qLmRvd25sb2FkU3RhdHVzJiZhLnB1c2godGhpcy5qLmRvd25sb2FkU3RhdHVzKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ5dE1haW5WaWRlb0VudGl0eSJ9fX07WG5hPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE7dGhpcy5vPWI7dGhpcy52PXt9fX07CkpxYT1jbGFzcyBleHRlbmRzIGpae3YoYSl7cmV0dXJuIGF9byhhKXtpZihhIGluc3RhbmNlb2YgVWludDhBcnJheSl0aHJvdyBuZXcgaVgoIldST05HX0RBVEFfVFlQRSIse0lwOjB9KTtyZXR1cm4gYX19O1puYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuaj17fTt0aGlzLmpbMF09bmV3IEpxYTtpZighXy54KCJhZXNfcGVzX2VuY29kZXJfa2lsbHN3aXRjaCIpKXt2YXIgYT10aGlzLmo7dHJ5e2xldCBkPV8uVmooKTt2YXIgYj1rWChkKTt2YXIgYz1uZXcgSXFhKG5ldyBpWihiKSxuZXcgR3FhKGIpKX1jYXRjaChkKXt0aHJvdyBhPWQgaW5zdGFuY2VvZiBFcnJvcj9uZXcgaVgoIktFWV9DUkVBVElPTl9GQUlMRUQiLHtvcmlnaW5hbE1lc3NhZ2U6ZC5tZXNzYWdlfSk6bmV3IGlYKCJLRVlfQ1JFQVRJT05fRkFJTEVEIiksXy5HcChhKSxhO31hWzFdPWN9fX07CiRuYT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMudG9rZW49YTt0aGlzLmo9Yjt0aGlzLm9ic2VydmVycz1bXTthPW5ldyBfLnUuQnJvYWRjYXN0Q2hhbm5lbChgUEVSU0lTVEVOVF9FTlRJVFlfU1RPUkVfU1lOQzoke18uVmooKX1gKTthLm9ubWVzc2FnZT10aGlzLm8uYmluZCh0aGlzKTt0aGlzLmNoYW5uZWw9YX1vYnNlcnZlKGEpe3RoaXMub2JzZXJ2ZXJzLnB1c2goYSk7cmV0dXJuKCk9Pnt2YXIgYj10aGlzLm9ic2VydmVycy5pbmRleE9mKGEpO2I+PTAmJnRoaXMub2JzZXJ2ZXJzLnNwbGljZShiLDEpfX1vKGEpe3FYKHRoaXMsYS5kYXRhKX1sYSgpe3RoaXMuY2hhbm5lbC5jbG9zZSgpfX07CkxxYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZhciBhPUtxYTt0aGlzLm9ic2VydmVycz1bXTt0aGlzLnZhbHVlPWF9c3Vic2NyaWJlKGEpe2lmKGEuZWohPW51bGwpdGhyb3cgRXJyb3IoIkZjIik7YS5laj10aGlzLm9ic2VydmVycy5sZW5ndGg7dGhpcy5vYnNlcnZlcnMucHVzaChhKTt0cnl7YSh0aGlzLnZhbHVlKX1jYXRjaChiKXt9cmV0dXJuKCk9Pnt2YXIgYj10aGlzLm9ic2VydmVyc1t0aGlzLm9ic2VydmVycy5sZW5ndGgtMV07dGhpcy5vYnNlcnZlcnNbYS5lal09YjtiLmVqPWEuZWo7dGhpcy5vYnNlcnZlcnMucG9wKCl9fXVwZGF0ZShhKXt0aGlzLnZhbHVlPWEodGhpcy52YWx1ZSk7dGhpcy5ub3RpZnkoKX1zZXQoYSl7dGhpcy52YWx1ZT1hO3RoaXMubm90aWZ5KCl9bm90aWZ5KCl7Zm9yKGxldCBhIG9mIHRoaXMub2JzZXJ2ZXJzKXRyeXthKHRoaXMudmFsdWUpfWNhdGNoKGIpe319fTsKam9hPXtsYW5kc2NhcGU6IihtYXgtd2lkdGg6IDI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIixwb3J0cmFpdDoiKG1heC13aWR0aDogMjk5cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSJ9O1hZPXt9O2taPWNsYXNze2NvbnN0cnVjdG9yKCl7aWYodGhpcy5jb25zdHJ1Y3Rvcj09PWtaKXRocm93IG5ldyBUeXBlRXJyb3IoInNkIik7fWRpc3Bvc2UoKXt9ZGlzY29ubmVjdCgpe31vYnNlcnZlKGEsYixjKXtyZXR1cm57ZWxlbWVudDphLG9wdGlvbjpjfX1yZigpe319OwpNcWE9Y2xhc3MgZXh0ZW5kcyBrWntjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7dGhpcy5pc0Nvbm5lY3RlZD0hMDt0aGlzLnY9ITE7dGhpcy5vYnNlcnZlcj1uZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIodGhpcy5CLmJpbmQodGhpcykse3Jvb3RNYXJnaW46Ii0wLjFweCJ9KTt0aGlzLm89bmV3IE1hcDt0aGlzLmo9bmV3IE1hcH1kaXNwb3NlKCl7dGhpcy5kaXNjb25uZWN0KCk7dGhpcy5qLmNsZWFyKCl9ZGlzY29ubmVjdChhPSExKXt0aGlzLmlzQ29ubmVjdGVkPSExO3RoaXMudj1hO3RoaXMub2JzZXJ2ZXIuZGlzY29ubmVjdCgpO2ZvcihsZXQgYiBvZiB0aGlzLm8udmFsdWVzKCkpYi5kaXNjb25uZWN0KCl9QihhKXtmb3IobGV0IGMgb2YgYSl7dmFyIGI9dGhpcy5qLmdldChjLnRhcmdldCk7aWYoIWIpY29udGludWU7YT1jLmlzSW50ZXJzZWN0aW5nO2ZvcihsZXQgW2QsZV1vZiBiKXtiPWQ7bGV0IGY9ZTtiJiYoYi5zdGF0ZT09PSJ2aXNpYmxlIiYmYXx8Yi5zdGF0ZT09PSJoaWRkZW4iJiYKIWEpJiYoZihjLnRhcmdldCxiLnN0YXRlKSxiLlZiJiZ0aGlzLnJmKHtlbGVtZW50OmMudGFyZ2V0LG9wdGlvbjpifSkpfX19RChhKXtmb3IobGV0IGIgb2YgYSlpZigoYT10aGlzLmouZ2V0KGIudGFyZ2V0KSkmJmIuaXNJbnRlcnNlY3RpbmcpZm9yKGxldCBbYyxkXW9mIGEpe2E9YztsZXQgZT1kO2EmJmEuc3RhdGU9PT0icHJlc2NhbiImJihlKGIudGFyZ2V0LGEuc3RhdGUpLGEuVmImJnRoaXMucmYoe2VsZW1lbnQ6Yi50YXJnZXQsb3B0aW9uOmF9KSl9fW9ic2VydmUoYSxiLGMpe3ZhciBkPShkPXRoaXMuai5nZXQoYSkpJiZkLmhhcyhjKT97ZWxlbWVudDphLG9wdGlvbjpjfTp2b2lkIDA7aWYoZClyZXR1cm4gZDtkPXtlbGVtZW50OmEsb3B0aW9uOmN9O3RoaXMuai5oYXMoYSl8fHRoaXMuai5zZXQoYSxuZXcgTWFwKTt2YXIgZT10aGlzLmouZ2V0KGEpO2UmJiFlLmhhcyhjKSYmZS5zZXQoYyxiKTt0aGlzLnZ8fChjLnN0YXRlPT09InByZXNjYW4iJiYoYj0wLGEuaGFzQXR0cmlidXRlKCJwcmVzY2FuLWhlaWdodCIpJiYKKGM9TnVtYmVyKGEuZ2V0QXR0cmlidXRlKCJwcmVzY2FuLWhlaWdodCIpKSxpc05hTihjKXx8KGI9YykpLHRoaXMuby5oYXMoYik/Yj10aGlzLm8uZ2V0KGIpOihjPWAtMC4xcHggLTAuMXB4ICR7Yn1weCAtMC4xcHhgLGM9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKHRoaXMuRC5iaW5kKHRoaXMpLHtyb290TWFyZ2luOmN9KSx0aGlzLm8uc2V0KGIsYyksYj1jKSxiLm9ic2VydmUoYSkpLHRoaXMub2JzZXJ2ZXIub2JzZXJ2ZShhKSk7cmV0dXJuIGR9cmYoYSl7dmFyIGI9dGhpcy5qLmdldChhLmVsZW1lbnQpO2lmKGImJmIuaGFzKGEub3B0aW9uKSl7Yi5kZWxldGUoYS5vcHRpb24pO2lmKGEmJmEub3B0aW9uLnN0YXRlPT09InByZXNjYW4iKWZvcihsZXQgYyBvZiB0aGlzLm8udmFsdWVzKCkpYy51bm9ic2VydmUoYS5lbGVtZW50KTtiLnNpemU9PT0wJiYodGhpcy5qLmRlbGV0ZShhLmVsZW1lbnQpLHRoaXMub2JzZXJ2ZXIudW5vYnNlcnZlKGEuZWxlbWVudCkpfX19OwpxWT1bInlvdXR1YmVfZmlsbCIsInlvdXR1YmVfb3V0bGluZSJdO0FYPXZvaWQgMDt2YXIgTnFhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMudmFsdWU9YX1kZXJlZigpe3JldHVybiB0aGlzLnZhbHVlfX0sT3FhPXR5cGVvZiBXZWFrUmVmPT09ImZ1bmN0aW9uIj9XZWFrUmVmOk5xYTt2YXIgRlg9bmV3IGNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hO3RoaXMubWFwPW5ldyBXZWFrTWFwfWFkZChhLGIpe3RoaXMubWFwLmhhcyhhKXx8KHRoaXMuaihhKSx0aGlzLm1hcC5zZXQoYSxbXSkpO3RoaXMubWFwLmdldChhKS5wdXNoKG5ldyBPcWEoYikpfWdldChhKXt2YXIgYj10aGlzO3JldHVybiBmdW5jdGlvbiooKXt2YXIgYz1iLm1hcC5nZXQoYSk7aWYoYyl7dmFyIGQ9MDtmb3IobGV0IGUgb2YgYyl7bGV0IGY9ZS5kZXJlZigpO2YmJihkKysseWllbGQgZil9aWYoMipkPGMubGVuZ3RoKXtkPTA7Zm9yKGxldCBlIG9mIGMpZS5kZXJlZigpJiYoY1tkKytdPWUpO2MubGVuZ3RoPWR9fX0oKX19KGE9PnthLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IixBb2Ese29uY2U6ITB9KX0pLEVYPW5ldyBXZWFrTWFwLERYPUFib3J0Q29udHJvbGxlcixsWj1BYm9ydFNpZ25hbDt0eXBlb2YgbFouYWJvcnQhPT0iZnVuY3Rpb24iJiYobFouYWJvcnQ9eG9hKTsKdHlwZW9mIGxaLnByb3RvdHlwZS50aHJvd0lmQWJvcnRlZCE9PSJmdW5jdGlvbiImJihsWi5wcm90b3R5cGUudGhyb3dJZkFib3J0ZWQ9eW9hKTt0eXBlb2YgbFouYW55IT09ImZ1bmN0aW9uIiYmKGxaLmFueT16b2EpO3R5cGVvZiBsWi50aW1lb3V0IT09ImZ1bmN0aW9uIiYmKGxaLnRpbWVvdXQ9Qm9hKTt2YXIgR1g9IjAxMjM0NTY3ODlBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Ii5zcGxpdCgiIik7dmFyIFVZPW5ldyBfLkkoImNvcHlMaW5rUmVuZGVyZXIiKTt2YXIgUHFhPW5ldyBfLkkoImF1ZGlvVHJhY2tTZWxlY3RBY3Rpb25Db21tYW5kIik7dmFyIFFxYT1uZXcgXy5JKCJjYXB0aW9uTGFuZ3VhZ2VTZWxlY3RBY3Rpb25Db21tYW5kIik7dmFyIFJxYT1uZXcgXy5JKCJzaG93QXVkaW9UcmFja1BpY2tlckFjdGlvbkNvbW1hbmQiKTt2YXIgU3FhPW5ldyBfLkkoInNob3dDYXB0aW9uTGFuZ3VhZ2VTZWxlY3RBY3Rpb25Db21tYW5kIik7dmFyIE9wYT1uZXcgXy5JKCJwaG9uZURpYWxlckVuZHBvaW50Iik7dmFyIFNwYT1uZXcgXy5JKCJzZW5kU21zRW5kcG9pbnQiKTt2YXIgS3BhPW5ldyBfLkkoImNvcHlUZXh0RW5kcG9pbnQiKTt2YXIgbVo9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5uYW1lPWF9byhhPXt9KXtJWCh0aGlzLm5hbWUsIlNVQ0NFU1MiLGEpfWooYT17fSl7SVgodGhpcy5uYW1lLCJGQUlMVVJFIixhKX19LEVvYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm5hbWU9IlNMSV9OQU1FX1lPVVRVQkVfRU1CRURTX1dFQl9GVUxMU0NSRUVOX1JFUVVFU1RfU0xJIjt0aGlzLnNsaUlkPWE7dGhpcy50aW1lb3V0TXM9M0U0O3RoaXMubz0iIjt0aGlzLnY9LTE7dGhpcy5qPSExO3RoaXMuZGltZW5zaW9ucz17fX1nZXRJZCgpe3JldHVybiB0aGlzLnNsaUlkfURyKGE9e30pe3RoaXMuanx8KHRoaXMuaj0hMCx0aGlzLmRpbWVuc2lvbnM9YSx0aGlzLm89Q29hKCksWlcoe2RpbWVuc2lvbnM6dGhpcy5kaW1lbnNpb25zLHJlY29yZHM6W3tuYW1lOnRoaXMubmFtZSxzdGF0ZToiU0xJX1NUQVRFX1NUQVJUIixzbGlJZDp0aGlzLm99XX0pLHRoaXMudGltZW91dE1zPjAmJih0aGlzLnY9c2V0VGltZW91dCgoKT0+Cnt0aGlzLnpnKCJUSU1FT1VUIil9LHRoaXMudGltZW91dE1zKSkpfXpnKGEpe3RoaXMuaiYmKHRoaXMudGltZW91dE1zPjAmJmNsZWFyVGltZW91dCh0aGlzLnYpLHRoaXMuaj0hMSxhPXtkaW1lbnNpb25zOnRoaXMuZGltZW5zaW9ucyxyZWNvcmRzOlt7bmFtZTp0aGlzLm5hbWUsc3RhdHVzOkhYKGEpLHN0YXRlOiJTTElfU1RBVEVfRU5EIixzbGlJZDp0aGlzLm99XX0sXy5FeS5yZWdpc3Rlci5kZWxldGUoYCR7dGhpcy5uYW1lfV8ke3RoaXMuc2xpSWR9YCksWlcoYSkpfX07dmFyIFNYPW5ldyBtWigiU0xJX05BTUVfWU9VVFVCRV9FTUJFRFNfV0VCX1BMQVlFUl9FUlJPUl9TTEkiKSxUWD1uZXcgbVooIlNMSV9OQU1FX1lPVVRVQkVfRU1CRURTX1dFQl9QTEFZRVJfVU5QTEFZQUJMRV9TTEkiKTt2YXIgR29hPVsiY2xpY2tUcmFja2luZ1BhcmFtcyIsImNvbW1hbmRNZXRhZGF0YSIsImxvZ2dpbmdVcmxzIiwiYnVpbGRDb21tYW5kUGF5bG9hZCJdO3ZhciBMWD1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYz0hMSxkPSExLGU9W10pe3ZhciBmPXdYO3RoaXMudj1hO3RoaXMubmF2aWdhdGU9dm9pZCAwO3RoaXMuaj1iO3RoaXMuWT1jO3RoaXMuST1kO3RoaXMuQj1mO3RoaXMuSz1lO3RoaXMuTT1bXTt0aGlzLm89bmV3IFNldDt0aGlzLkQ9ITE7S29hKHRoaXMpfXJlc29sdmVDb21tYW5kKGEsYil7cmV0dXJuIE5YKHRoaXMsYSxiKS5oYW5kbGVkfX07dmFyIG5aPW5ldyBfLlZzKCJFTlRJVFlfU1RBVEVfVE9LRU4iKTt2YXIgb1o9Y2xhc3N7YXN5bmMgcmVzb2x2ZShhLGIpe2F3YWl0IHRoaXMucmVzb2x2ZUNvbW1hbmQoYSxiKX19O3ZhciBwWj1jbGFzcyBleHRlbmRzIG9ae2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5zdG9yZT1hfWFzeW5jIHJlc29sdmVDb21tYW5kKGEpe2lmKGE9Xy5CKGEsXy53bmEpPy5lbnRpdHlCYXRjaFVwZGF0ZSlhPXsuLi5hLG11dGF0aW9uczpbLi4uKGEubXV0YXRpb25zfHxbXSldfSxhd2FpdCBkb2EoYSx0aGlzLnN0b3JlKX19O3BaW18uTG5dPVtuWl07dmFyICRZPW5ldyBfLlZzKCJQQU5FTF9MT0FESU5HX1NUUkFURUdZX1RPS0VOIik7dmFyIHFaPWNsYXNzIGV4dGVuZHMgb1p7Y29uc3RydWN0b3IoYSxiKXtzdXBlcigpO3RoaXMuY29udHJvbGxlcj1hO3RoaXMucGFuZWxMb2FkaW5nU3RyYXRlZ3k9Yn1hc3luYyByZXNvbHZlQ29tbWFuZChhLGIpe3ZhciBjPV8uQihhLF8uTlcpO2lmKGM/LnBhbmVsTG9hZGluZ1N0cmF0ZWd5KXt2YXIgZD1WWCh0aGlzLmNvbnRyb2xsZXIsYj8uZm9ybT8uZWxlbWVudCksZT1jLmNvbnRleHR1YWxTaGVldFByZXNlbnRhdGlvbkNvbmZpZz8ucG9zaXRpb24sZj1jLmNvbnRleHR1YWxTaGVldFByZXNlbnRhdGlvbkNvbmZpZz8uaG92ZXJDb25maWcsaD1jLmNvbnRleHR1YWxTaGVldFByZXNlbnRhdGlvbkNvbmZpZz8uZXhwYW5kVG9GdWxsV2lkdGgsaz1jLmNvbnRleHR1YWxTaGVldFByZXNlbnRhdGlvbkNvbmZpZz8ub3BlblRvU2lkZTthd2FpdCB0aGlzLnBhbmVsTG9hZGluZ1N0cmF0ZWd5LmV4ZWN1dGUoe2NvbW1hbmQ6YSxkYXRhOmMucGFuZWxMb2FkaW5nU3RyYXRlZ3ksZ246YXN5bmMgbD0+CntpZihsLnNoZWV0Vmlld01vZGVsKXtpZihmKXt2YXIgbT10aGlzLmNvbnRyb2xsZXI7bS5vPSEhZi5wcmV2ZW50Q2xvc2VXaGlsZUhvdmVyZWQ7bS5oaWRlRGVsYXlNcz1mLmhpZGVEZWxheU1zPz8wO20uc2hvd0RlbGF5TXM9Zi5zaG93RGVsYXlNcz8/MH1hd2FpdCB0aGlzLmNvbnRyb2xsZXIud2coe3ZpZXdNb2RlbDpsLnNoZWV0Vmlld01vZGVsLFVyOmUsZXhwYW5kVG9GdWxsV2lkdGg6aCxvcGVuVG9TaWRlOmt9LGQsYj8uZm9ybT8uZWxlbWVudCl9fSxidjp7bGF5ZXI6MH19KX19fTtxWltfLkxuXT1bXy5jTCwkWV07dmFyIFRxYT1jbGFzcyBleHRlbmRzIG9ae2NvbnN0cnVjdG9yKCl7c3VwZXIoKX1hc3luYyByZXNvbHZlQ29tbWFuZChhKXt2YXIgYj1fLkIoYSxQcWEpO2ImJihhPWF3YWl0IF8uTEgoKSkmJmE/LmlzUmVhZHk/LigpJiYoYj1Rb2EoYSxiPy5sYW5ndWFnZUNvZGUpKSYmYS5zZXRBdWRpb1RyYWNrKGIpfX07dmFyIHJaPWNsYXNzIGV4dGVuZHMgb1p7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmo9YX1hc3luYyByZXNvbHZlQ29tbWFuZChhKXt2YXIgYj1fLkIoYSxRcWEpO2lmKGImJihhPWF3YWl0IF8uTEgoKSkpe3ZhciBjPWI/Lmxhbmd1YWdlQ29kZTtiPWI/LmlzQXV0b1RyYW5zbGF0ZWQ7YS5nZXRWaWRlb0RhdGEmJl8uJE8oYSkubGVuZ3RoJiYoKGM9Um9hKGEsYyxiKSk/YS5zZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2siLGMpOihhLnNldE9wdGlvbigiY2FwdGlvbnMiLCJzdGlja3lMb2FkaW5nIix7fSksYS5zZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2siLHt9KSkpO2E9YS5pc1N1YnRpdGxlc09uKCk/Xy5hQSgiQ0FQVElPTl9PTl9UT0FTVCIsdm9pZCAwLCJTdWJ0aXRsZXMvQ0MgdHVybmVkIG9uIik6Xy5hQSgiQ0FQVElPTl9PRkZfVE9BU1QiLHZvaWQgMCwiU3VidGl0bGVzL0NDIHR1cm5lZCBvZmYiKTt0aGlzLmoucmVzb2x2ZUNvbW1hbmQoXy5hUShfLldMKGEpLDVFMykpfX19OwpyWltfLkxuXT1bXy5VRF07dmFyIHNaPWNsYXNzIGV4dGVuZHMgb1p7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmo9YX1hc3luYyByZXNvbHZlQ29tbWFuZChhLGIpe18uQihhLFJxYSkmJihhPWF3YWl0IF8uTEgoKSkmJihhPVNvYShhKSkmJnRoaXMuai5yZXNvbHZlQ29tbWFuZChhLGIpfX07c1pbXy5Mbl09W18uVURdO3ZhciB0Wj1jbGFzcyBleHRlbmRzIG9ae2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5qPWF9YXN5bmMgcmVzb2x2ZUNvbW1hbmQoYSxiKXtfLkIoYSxTcWEpJiYoYT1hd2FpdCBfLkxIKCkpJiYoKGE9Vm9hKGEpKT90aGlzLmoucmVzb2x2ZUNvbW1hbmQoYSxiKTooYj1fLmFBKCJDTE9TRURfQ0FQVElPTlNfRElTQUJMRUQiLHZvaWQgMCwiTm8gY2FwdGlvbnMgYXJlIGF2YWlsYWJsZSBmb3IgdGhpcyB2aWRlbyIpLHRoaXMuai5yZXNvbHZlQ29tbWFuZChfLmFRKF8uV0woYikpKSkpfX07dFpbXy5Mbl09W18uVURdO3ZhciBzcWE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5zaWduYWw9YTt0aGlzLmo9dGhpcy5vLmJpbmQodGhpcyk7dGhpcy5sb2dnaW5nRW5hYmxlZD0hMDt0aGlzLmlkcz1uZXcgU2V0O2EuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLHRoaXMuaik7dGhpcy5qb2JJZD1fLllqKHRoaXMuaiwxRTQpfXd5KGEpe3RoaXMubG9nZ2luZ0VuYWJsZWQmJiF0aGlzLmlkcy5oYXMoYSkmJnRoaXMuaWRzLmFkZChhKX1vKCl7dGhpcy5sb2dnaW5nRW5hYmxlZCYmKHRoaXMubG9nZ2luZ0VuYWJsZWQ9ITEsXy5qZi5BYSh0aGlzLmpvYklkKSx0aGlzLnNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCJhYm9ydCIsdGhpcy5qKSxXb2EodGhpcykpfX07dmFyIFJYO3ZhciBVcWE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLk9tPW5ldyBNYXA7dGhpcy5qPW5ldyBNYXB9T3ooYSxiKXtpZihhKXt0aGlzLk9tLnNldChhLGIpO3ZhciBjPXRoaXMuai5nZXQoYSk7YyYmKGMucmVzb2x2ZShiKSx0aGlzLmouZGVsZXRlKGEpKX19fTt2YXIgYVo9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLm89YTt0aGlzLnY9Yn1qKCl7aWYodGhpcy5wYW5lbExvYWRpbmdTdHJhdGVneSYmdGhpcy5wYW5lbExvYWRpbmdTdHJhdGVneS5pbmxpbmVDb250ZW50KXJldHVybiB0aGlzLnBhbmVsTG9hZGluZ1N0cmF0ZWd5LmlubGluZUNvbnRlbnR9YXN5bmMgZXhlY3V0ZShhKXt2YXIgYj1hLlRJLGM9YS5wYXJlbnRWZSxkPWEuYnYsZT1hLmduLGY9YS5jb21tYW5kO3RoaXMucGFuZWxMb2FkaW5nU3RyYXRlZ3k9YS5kYXRhOyhhPXRoaXMucGFuZWxMb2FkaW5nU3RyYXRlZ3k/LnNjcmVlblZlP3RoaXMucGFuZWxMb2FkaW5nU3RyYXRlZ3k/LnNjcmVlblZlOmIpJiZfLkRPKHRoaXMudixhLGMsZCk7KGM9dGhpcy5qKCkpJiZhd2FpdCBlKGMpO3RoaXMucGFuZWxMb2FkaW5nU3RyYXRlZ3k/LnJlcXVlc3RUZW1wbGF0ZSYmKGY9YXdhaXQgJG9hKHRoaXMsZikpJiZhd2FpdCBlKGYpfX07YVpbXy5Mbl09W18uSXksXy5PV107dmFyIHBxYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuaj10aGlzLm89ITE7dGhpcy5zaG93RGVsYXlNcz10aGlzLmhpZGVEZWxheU1zPTA7dGhpcy5EPSExO3RoaXMuST0oKT0+e3RoaXMuaj0hMH07dGhpcy5aPSgpPT57dGhpcy5qPSExfTt0aGlzLlU9KCk9Pnt0aGlzLmo9ITB9O3RoaXMuSz0oKT0+e3RoaXMuaj0hMX19UHooYSxiPSExKXtiP3RoaXMuTT1hOnRoaXMuY29udGFpbmVyPWF9YXN5bmMgd2coYSxiLGM9Yil7V1godGhpcyk7dGhpcy5zaG93RGVsYXlNcz90aGlzLlk9c2V0VGltZW91dChhc3luYygpPT57YXdhaXQgJFgodGhpcyxhLGIsYyl9LHRoaXMuc2hvd0RlbGF5TXMpOmF3YWl0ICRYKHRoaXMsYSxiLGMpfWFzeW5jIEplKCl7V1godGhpcyk7dGhpcy5oaWRlRGVsYXlNcz90aGlzLkI9c2V0VGltZW91dChhc3luYygpPT57YXdhaXQgYVkodGhpcyl9LHRoaXMuaGlkZURlbGF5TXMpOmF3YWl0IGFZKHRoaXMpfWFzeW5jIGRtKCl7cmV0dXJuIFVYKHRoaXMpPy5kbSgpPz8KITF9fTt2YXIgb3BhPVsidG91Y2htb3ZlIiwic2Nyb2xsIl07dmFyIHVaPSExO3ZhciBjWT0hMTt2YXIgbnBhPXtscihhKXthLnBhcmVudElkPT1udWxsJiYodVp8fChiWSgpLHNldEludGVydmFsKGJZLDZFNSksdVo9ITApLGZZKGEsIndlYl90cmFjaW5nX2FjdGlvbiIpKX19O3ZhciBoWSxLcWE9e2lMOl8ueCgid2ViX3RyYWNpbmdfYWxsX2NvbXBvbmVudHMiKSxRdjpfLngoIndlYl90cmFjaW5nX2V4cG9ydF90b19jc2kiKSxIdjpmdW5jdGlvbihhLGIpe2E9Xy5yaihhLGIpO3JldHVybiBBcnJheS5pc0FycmF5KGEpP18uSHcoYSxjPT5TdHJpbmcoY3x8IiIpKTpbU3RyaW5nKGF8fCIiKV19KCJ3ZWJfdHJhY2luZ19lbmFibGVkX3NwYW5zIiksUnY6Xy54KCJ3ZWJfdHJhY2luZ19leHBvcnRfdG9fZGV2dG9vbHMiKSxNcTpfLnNqKCJ0ZWxfbWF4X2JyZWFkY3J1bWJzIiwwKX07aFk9bmV3IExxYTt2YXIga3BhPXtSZW5kZXI6IkNPV19TUEFOX1RZUEVfUkVOREVSIixPbkluaXQ6IkNPV19TUEFOX1RZUEVfT05fSU5JVCIsRWZmZWN0OiJDT1dfU1BBTl9UWVBFX0VGRkVDVCIsQ29tcHV0ZWQ6IkNPV19TUEFOX1RZUEVfQ09NUFVURUQiLFNpZ25hbFVwZGF0ZToiQ09XX1NQQU5fVFlQRV9TSUdOQUxfVVBEQVRFIixSZW5kZXJFZmZlY3Q6IkNPV19TUEFOX1RZUEVfUkVOREVSX0VGRkVDVCIsQ3JlYXRlUmVhY3RpdmVDb21wb25lbnQ6IkNPV19TUEFOX1RZUEVfQ09NUE9ORU5UX1JFTkRFUiJ9O3ZhciBtcGE9Xy54KCJ3ZWJfc2hvcnRzX2VuYWJsZV90cmFjaW5nIik7dmFyIHRwYT1bImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20iLCJodHRwczovL3R2LnlvdXR1YmUuY29tIiwiaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20iLCJodHRwczovL3d3dy55b3V0dWJlLmNvbSJdLHZwYT1fLnNqKCJ3aWxfaWNvbl9tYXhfY29uY3VycmVudF9mZXRjaGVzIixJbmZpbml0eSksWlk9Y2xhc3N7Y29uc3RydWN0b3IoYSxiLGMpe3RoaXMuRmE9YTt0aGlzLktrPWI7dGhpcy5ZPXt9O3RoaXMuRD17fTt0aGlzLm89e307dGhpcy5JPXRoaXMuY291bnRlcj0wO3RoaXMuQj0hIV8udS5jYWNoZXM7dGhpcy5VPVByb21pc2UucmVzb2x2ZSh2b2lkIDApO3RoaXMuWj12b2lkIDA7dGhpcy52PW51bGw7dGhpcy5NPV8ueCgid2lsX2ljb25fdXNlX21hc2tfcmVuZGVyaW5nIik/MTowO3RoaXMub2E9Xy54KCJ3aWxfaWNvbl9uZXR3b3JrX2ZpcnN0Iik7dGhpcy5NYT1fLngoIndpbF9pY29uX3JlbmRlcl93aGVuX2lkbGUiKTt0aGlzLlFhPSFfLngoIndpbF9pY29uX2xvYWRfaW1tZWRpYXRlbHkiKTsKdGhpcy5LPSExO2E9KCk9Pnt0aGlzLkImJih0aGlzLlU9Xy51LmNhY2hlcy5vcGVuKCJ5dC1pY29ucyIpLnRoZW4oZD0+dGhpcy5aPWQpLmNhdGNoKCgpPT57dGhpcy5CPSExfSkpfTtjPWM/LigpfHx7fTtmb3IobGV0IFtkLGVdb2YgT2JqZWN0LmVudHJpZXMoYykpYz1kLGI9Xy5mQyhlKSxqWShiKSx0aGlzLkRbY109Yi5jbG9uZU5vZGUoITApO3RoaXMuSz1xcGEodGhpcyk7dGhpcy5LIGluc3RhbmNlb2YgUHJvbWlzZT90aGlzLksudGhlbihhKTphKCl9aihhKXtyZXR1cm4hIXRoaXMubWYoYSl9YXN5bmMgeWEoYSl7aWYoYS5sZW5ndGgpe3ZhciBiPVtdO2ZvcihsZXQgYyBvZiBhKShhPXRoaXMubWYoYykpJiYhdGhpcy5EW2EudXJsXSYmYi5wdXNoKGtZKHRoaXMsYSkudGhlbigoKT0+e30pLmNhdGNoKCgpPT57fSkpO1Byb21pc2UuYWxsKGIpfX1weShhKXt2YXIgYj10aGlzLm1mKGEpO3JldHVybiBiP3RoaXMuTT09PTE/bFkodGhpcyxiLHRoaXMuTSk6KGE9dGhpcy5EW2IudXJsXSk/CihhPWEuY2xvbmVOb2RlKCEwKSxuWSh0aGlzLGEpLGxZKHRoaXMsYix0aGlzLk0sYSkpOmtZKHRoaXMsYikudGhlbihjPT57dmFyIGQ9Yz8wOjE7blkodGhpcyxjKTtyZXR1cm4gbFkodGhpcyxiLGQsYyl9KTooXy5IcChuZXcgXy5YaigiSWNvbiBub3QgZm91bmQiLHtpY29uU2hhcGU6YX0pKSwoKT0+e30pfWFzeW5jIGdhKGEsYil7cmV0dXJuIHBZKHRoaXMsYSkudGhlbihjPT57d3BhKHRoaXMsYSxjLGIpO3JldHVybiBjfSl9YXN5bmMgaGEoYSxiKXtyZXR1cm4gYj9iLm1hdGNoKGEpLnRoZW4oYz0+YyYmYy5vaz9jOlByb21pc2UucmVqZWN0KCkpOlByb21pc2UucmVqZWN0KCl9bWYoYSl7cmV0dXJuIHRoaXMuRmEubWYoYSl9fTtaWVtfLkxuXT1bXy5tTyxfLmxGLF8uSW4oXy5vTyldO3ZhciB5cGE9e0FDQ0VTU19USU1FOiJjbG9jayIsQUNDT1VOVF9CT1g6Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUJfQ1JFQVRPUiI/InBlcnNvbl9ib3giOiJwZXJzb25fYWNjb3VudCIsQUNDT1VOVF9CT1hfQ0FJUk86InBlcnNvbl9hY2NvdW50X2NhaXJvIixBQ0NPVU5UX0NJUkNMRToicGVyc29uX2NpcmNsZSIsQUNDT1VOVF9DSVJDTEVfQ0FJUk86InBlcnNvbl9jaXJjbGVfY2Fpcm8iLEFDQ09VTlRfTElOS0VEOiJhY2NvdW50X2xpbmtfc3VjY2VzcyIsQUNDT1VOVF9VTkxJTktFRDoiYWNjb3VudF9saW5rIixBRERfRlJJRU5EOiJwZW9wbGUiLEFERF9NT0RFUkFUT1I6InNoaWVsZF9hZGQiLEFERF9UT19MSUJSQVJZOiJib29rbWFyayIsQUREX1RPX1BMQVlMSVNUOiJhZGQiLEFERF9UT19RVUVVRV9UQUlMOiJsaXN0X3F1ZXVlIixBRERfVE9fUkVNT1RFX1FVRVVFOiJsaXN0X211c2ljIixBRERfVE9fV0FUQ0hfTEFURVI6ImNsb2NrIixBRERfVklERU9fTElOSzoiZmlsbV9zdHJpcF9hZGQiLApBTEVSVF9XQVJOX1JFRDoiYWxlcnRfdHJpYW5nbGUiLEFSUk9XX0JBQ0s6ImFycm93X2xlZnQiLEFSUk9XX0RJQUdPTkFMX1VQX1JJR0hUX0ZJTExFRDoiYXJyb3dfZGlhZ29uYWxfdXBfcmlnaHQiLEFSUk9XX0RST1BfRE9XTjoiY2hldnJvbl9kb3duIixBUlJPV19EUk9QX1VQOiJjaGV2cm9uX3VwIixBUlJPV19GT1JXQVJEOiJhcnJvd19yaWdodCIsQVJUSVNUOiJwZXJzb25fbXVzaWMiLEFVRElPVFJBQ0s6ImF1ZGlvIixBVVRPX0FXRVNPTUU6InNwYXJrbGUiLEFWQVRBUl9BTk9OWU1PVVM6InBlcnNvbl9jaXJjbGUiLEFWQVRBUl9MT0dHRURfT1VUOiJwZXJzb25fY2lyY2xlIixCQUNLOiJhcnJvd19sZWZ0IixCQVJfQ0hBUlQ6ImJhcl9ncmFwaCIsQkxPQ0s6InNsYXNoX2NpcmNsZV9sZWZ0IixCTE9DS19VU0VSOiJzbGFzaF9jaXJjbGVfbGVmdCIsQk9PS01BUktfQk9SREVSOiJib29rbWFyayIsQlJFQUtJTkdfTkVXU19BTFRfMToiYXJ0aWNsZV9hbGVydCIsQlJPQURDQVNUX0NBSVJPOiJwb2RjYXN0X2NhaXJvIiwKQlVHX1JFUE9SVDoiYnVnIixDQU1FUkFfQUxUOiJjYW1lcmEiLENBTVBBSUdOOiJtZWdhcGhvbmUiLENBTkNFTDoieF9jaXJjbGUiLENBUFRJT05TOiJjbG9zZWRfY2FwdGlvbiIsQ0FTVF9PVVRMSU5FOiJjaHJvbWVjYXN0IixDSEFOTkVMX05PVElGSUNBVElPTl9QUkVGRVJFTkNFX09GRjoiYmVsbCIsQ0hBTk5FTF9OT1RJRklDQVRJT05fUFJFRkVSRU5DRV9PTjoiYmVsbF9vbiIsQ0hBVDoibWVzc2FnZV9idWJibGVfbGVmdCIsQ0hBVF9CVUJCTEU6Im1lc3NhZ2VfYnViYmxlX2VtcHR5IixDSEFUX1NQQVJLOiJzcGFya19tZXNzYWdlX2J1YmJsZV9sZWZ0IixDSEVDS19CT1hfT1VUTElORV9CTEFOSzoiYm94X2VtcHR5IixDSEVDS19DSVJDTEVfT1VUTElORToiY2hlY2tfY2lyY2xlIixDSEVDS19DSVJDTEVfVEhJQ0s6ImNoZWNrX2NpcmNsZSIsQ0xBUklGWToiYXJ0aWNsZV9jbGFyaWZ5IixDTE9TRURfQ0FQVElPTl9TRUxFQ1RFRDoiY2xvc2VkX2NhcHRpb24iLENMT1NFOiJ4X21hcmsiLApDTE9VRF9VUExPQUQ6ImNsb3VkX2Fycm93X3VwIixDT0xMQVBTRToiY2hldnJvbl91cCIsQ09MTEFQU0VfQ0FJUk86ImNoZXZyb25fdXBfY2Fpcm8iLENPTExFQ1RJT046ImxheWVycyIsQ09MT1JfTEVOUzoicGFsZXR0ZSIsQ09NTUVOVDoibWVzc2FnZV9idWJibGVfcmlnaHQiLENPTlNFTlRfU0hJRUxEOiJwZXJzb25fc2hpZWxkIixDT05URU5UX0NVVDoic2Npc3NvcnMiLENPTlRFTlRfQ1VUX0NBSVJPOiJzY2lzc29yc19jYWlybyIsQ09VUlNFOl8ueCgid2ViX2VuYWJsZV9jb3Vyc2VfaWNvbl91cGRhdGUiKT8iY3JlYXRvcl9hY2FkZW15IjoibGlnaHRidWxiIixDT1VSU0VfQ0FJUk86Xy54KCJ3ZWJfZW5hYmxlX2NvdXJzZV9pY29uX3VwZGF0ZSIpPyJjcmVhdG9yX2FjYWRlbXlfY2Fpcm8iOiJsaWdodGJ1bGJfY2Fpcm8iLENSRUFUSU9OX0xJVkU6InJhZGFyX2xpdmUiLENSRUFUSU9OX1BPU1Q6ImJveF9wZW5jaWwiLENSRUFUSU9OX1VQTE9BRDoibXlfdmlkZW9zIixDUkVBVElPTl9VUExPQURfUkVEOiJ1cGxvYWQiLApDUkVBVE9SX01FVEFEQVRBX01PTkVUSVpBVElPTjoiZG9sbGFyX3NpZ24iLENSRUFUT1JfTUVUQURBVEFfTU9ORVRJWkFUSU9OX09GRjoiZG9sbGFyX3NpZ25fb2ZmIixDUkVBVE9SX1NUVURJTzoieW91dHViZV9zdHVkaW8iLERBU0hCT0FSRDoiZ3JpZF9hc3ltbWV0cmljYWwiLERFTEVURToidHJhc2hfY2FuIixERUxFVEVfU1dFRVA6InRyYXNoX2NhbiIsREVTS1RPUDoibGFwdG9wIixESVNMSUtFOiJ0aHVtYl9kb3duIixESVNMSUtFX1NFTEVDVEVEOiJ0aHVtYl9kb3duIixESVNNSVNTQUw6InhfbWFyayIsRElTTUlTU19RVUVVRToibGlzdF9yZW1vdmUiLERPTkVfQUxMOiJjaGVja19kb3VibGUiLERPV05fQVJST1c6ImFycm93X2Rvd24iLERPX05PVF9ESVNUVVJCOiJzbGFzaF9jaXJjbGVfbGVmdCIsRFJBRlQ6InBhcGVyX2Nvcm5lcl9mb2xkZWQiLERSQUdfSEFORExFOiJiYXJzXzIiLEVESVQ6InBlbmNpbCIsRU1PSkk6ImZhY2VfdmVyeV9oYXBweSIsRU1PSklfRkxBR1M6ImZsYWciLApFTU9KSV9PQkpFQ1RTOiJsaWdodGJ1bGIiLEVNT0pJX1BFT1BMRToiZmFjZV92ZXJ5X2hhcHB5IixFTU9KSV9SRUNFTlQ6ImNsb2NrIixFTVBUWV9IRUFSVDoiaGVhcnQiLEVNUFRZX0xJS0U6InRodW1iX3VwIixFUlJPUl9CTEFDSzoiYWxlcnRfY2lyY2xlIixFUlJPUl9PVVRMSU5FOiJhbGVydF9jaXJjbGUiLEVYSVRfQVBQOiJhcnJvd19pbiIsRVhJVF9UT19BUFA6ImFycm93X2luIixFWFBBTkQ6ImNoZXZyb25fZG93biIsRVhQQU5EX0FMTDoiY2hldnJvbl9leHBhbmQiLEVYUEFORF9DQUlSTzoiY2hldnJvbl9kb3duX2NhaXJvIixFWFBBTkRfTEVTUzoiY2hldnJvbl91cCIsRVhQQU5EX01PUkU6ImNoZXZyb25fZG93biIsRVhQTE9SRToiY29tcGFzcyIsRVhQTE9SRV9ERVNUSU5BVElPTjoiY29tcGFzcyIsRVhURVJOQUxfTElOSzoib3Blbl9uZXciLEZBQl9VUExPQUQ6InVwbG9hZCIsRkFDRV9IQVBQWV9PVVRMSU5FOiJmYWNlX2hhcHB5IixGQUNUX0NIRUNLOiJhcnRpY2xlX2NoZWNrIiwKRkFTSElPTl9MT0dPOiJmYXNoaW9uIixGQVNISU9OX0xPR09fQ0FJUk86ImZhc2hpb25fY2Fpcm8iLEZBVk9SSVRFOiJoZWFydCIsRkVFREJBQ0s6Im1lc3NhZ2VfYnViYmxlX2FsZXJ0IixGRUVEQkFDS19DQUlSTzoibWVzc2FnZV9idWJibGVfYWxlcnRfY2Fpcm8iLEZJTExfQVJST1dfU09MSURfRE9XTl8xNjoiYXJyb3dfc29saWRfZG93biIsRklMTF9BUlJPV19TT0xJRF9VUF8xNjoiYXJyb3dfc29saWRfdXAiLEZJTExfRE9MTEFSX1NJR05fSEVBUlRfMTI6ImRvbGxhcl9zaWduX2hlYXJ0IixGSUxURVI6Im1lbnVfZmlsdGVyIixGSVJTVF9QQUdFOiJjaGV2cm9uX2ZpcnN0IixGTEFHOiJmbGFnIixGVUxMX0hFQVJUOiJoZWFydCIsR0FNRV9DT05TT0xFX0RQQUQ6ImdhbWVfY29uc29sZV9kcGFkIixHQU1FX0NPTlNPTEVfRkFDRV9CVVRUT05TOiJnYW1lX2NvbnNvbGVfZmFjZV9idXR0b25zIixHQU1JTkdfTE9HTzoiZ2FtaW5nIixHQU1JTkdfTE9HT19DQUlSTzoiZ2FtaW5nX2NhaXJvIiwKR09fVE9fUEFHRToiYXJyb3dfcmlnaHQiLEdST1VQUzoicGVvcGxlX2dyb3VwIixIQVBQWToiZmFjZV9oYXBweSIsSEVBTFRIX0FORF9TQUZFVFk6InNoaWVsZF9wbHVzIixIRUxQOiJxdWVzdGlvbl9jaXJjbGUiLEhFTFBfQ0FJUk86InF1ZXN0aW9uX2NpcmNsZV9jYWlybyIsSEVMUF9PVVRMSU5FOiJxdWVzdGlvbl9jaXJjbGUiLEhJREU6InNsYXNoX2NpcmNsZV9sZWZ0IixJTUFHRToiaW1hZ2UiLElORklOSVRZX0lDT046ImluZmluaXR5IixJTkZPOiJpbmZvX2NpcmNsZSIsSU5GT19PVVRMSU5FOiJpbmZvX2NpcmNsZSIsSU5TRVJUX0NIQVJUOiJiYXJfZ3JhcGhfYm94X3ZlcnRpY2FsIixJTlNFUlRfQ0hBUlRfT1VUTElORUQ6ImJhcl9ncmFwaF9ib3hfdmVydGljYWwiLElOU0VSVF9QSE9UTzoiaW1hZ2UiLEtFRVA6InBpbiIsS0VFUF9PRkY6InBpbl9vZmYiLEtFWUJPQVJEOiJrZXlib2FyZCIsS0VZQk9BUkRfQVJST1dfRE9XTjoiY2hldnJvbl9kb3duIixLRVlCT0FSRF9BUlJPV19VUDoiY2hldnJvbl91cCIsCktJRFNfQkxPQ0s6InNsYXNoX2NpcmNsZV9sZWZ0IixMQU5HVUFHRToiZ2xvYmUiLExBU1RfUEFHRToiY2hldnJvbl9sYXN0IixMQVVOQ0g6Im9wZW5fbmV3IixMRUFSTklORzoibGlnaHRidWxiIixMRUFSTklOR19DQUlSTzoibGlnaHRidWxiX2NhaXJvIixMSUJSQVJZX0FERDp0WSgibGlicmFyeV9hZGQiKSxMSUJSQVJZX09VVExJTkU6ImxpYnJhcnkiLExJQlJBUllfUkVNT1ZFOnRZKCksTElHSFRCVUxCX1NQQVJLX09VVExJTkU6ImxpZ2h0YnVsYl9zcGFyayIsTElLRVNfUExBWUxJU1Q6InRodW1iX3VwIixMSUtFU19QTEFZTElTVF9DQUlSTzoidGh1bWJfdXBfY2Fpcm8iLExJS0U6InRodW1iX3VwIixMSUtFX1NFTEVDVEVEOiJ0aHVtYl91cCIsTElWRToicmFkYXJfbGl2ZSIsTElWRV9DQUlSTzoicmFkYXJfbGl2ZV9jYWlybyIsTElWRV9VTkxJU1RFRDoibGluayIsTE9DQVRJT05fT046ImxvY2F0aW9uX3BvaW50IixMT0NBVElPTl9QSU46ImxvY2F0aW9uX3BvaW50IixMT09QOiJhcnJvd19yZXBlYXQiLApMT09QX0FDVElWRToiYXJyb3dfcmVwZWF0IixMT09QX09ORToiYXJyb3dfcmVwZWF0XzEiLExPT1BfT05FX0FDVElWRToiYXJyb3dfcmVwZWF0XzEiLE1FSDoiZmFjZV9tZWgiLE1FTUJFUlNfT05MWV9NT0RFX09GRjoibWVzc2FnZV9idWJibGVfbGVmdCIsTUVOVToiYmFyc18zIixNRVNTQUdFOiJtZXNzYWdlX2J1YmJsZV9sZWZ0IixNSUNST1BIT05FX09OOiJtaWMiLE1JWDoieW91dHViZV9taXgiLE1PTkVUSVpBVElPTl9PTjoiZG9sbGFyX3NpZ25fY2lyY2xlIixNT05FWV9GSUxMOiJkb2xsYXJfc2lnbl9jb250YWluZXIiLE1PTkVZX0ZJTExfSlBZOiJ5ZW5fc2lnbl9jb250YWluZXIiLE1PTkVZX0hFQVJUOiJkb2xsYXJfc2lnbl9oZWFydCIsTU9SRV9IT1JJWjoib3ZlcmZsb3dfaG9yaXpvbnRhbCIsTU9SRV9WRVJUOiJvdmVyZmxvd192ZXJ0aWNhbCIsTVVTSUM6ImF1ZGlvIixNVVNJQ19DQUlSTzoiYXVkaW9fY2Fpcm8iLE1VU0lDX05PVEVfU1lNQk9MOiJtdXNpYyIsTVVTSUNfU0hVRkZMRToiYXJyb3dfc2h1ZmZsZSIsCk1ZX0NIQU5ORUw6InBlcnNvbl9jaXJjbGUiLE1ZX0xPQ0FUSU9OOiJsb2NhdGlvbl9wb2ludCIsTkVXU19TVE9SWToibmV3cyIsTkVYVDoiY2hldnJvbl9yaWdodCIsTk9USUZJQ0FUSU9OUzoiYmVsbCIsTk9USUZJQ0FUSU9OU19BQ1RJVkU6ImJlbGxfb24iLE5PVElGSUNBVElPTlNfQ0FJUk86ImJlbGxfY2Fpcm8iLE5PVElGSUNBVElPTlNfRE9ORV9DSEVDS01BUks6ImNoZWNrIixOT1RJRklDQVRJT05TX0lOQk9YOiJiZWxsIixOT1RJRklDQVRJT05TX05PTkU6ImJlbGwiLE5PVElGSUNBVElPTlNfT0ZGOiJiZWxsX29mZiIsTk9UX0lOVEVSRVNURUQ6InNsYXNoX2NpcmNsZV9sZWZ0IixPRkZJQ0lBTF9BUlRJU1RfQkFER0U6ImF1ZGlvIixPRkZMSU5FX0NMT1VEOiJjbG91ZF9vZmYiLE9GRkxJTkVfRE9XTkxPQUQ6ImRvd25sb2FkIixPRkZMSU5FX0RPV05MT0FEX0NBSVJPOiJkb3dubG9hZF9jYWlybyIsT0ZGTElORV9QQVVTRToicGF1c2UiLE9QRU5fSU5fTkVXOiJvcGVuX25ldyIsCk9VVExJTkVfQURKVVNUOiJhZGp1c3QiLE9VVExJTkVfQVJST1dfU09MSURfRE9XTl8xNjoiYXJyb3dfc29saWRfZG93biIsT1VUTElORV9BUlJPV19TT0xJRF9VUF8xNjoiYXJyb3dfc29saWRfdXAiLE9VVExJTkVfQkFHOiJiYWciLE9VVExJTkVfQ0xPQ0tfSEFMRl9DSVJDTEU6ImNsb2NrX2hhbGZfY2lyY2xlIixPVVRMSU5FX01PQklMRV9ET1dOTE9BRDoibW9iaWxlX2Rvd25sb2FkIixPVVRMSU5FX09WRVJGTE9XX0hPUklaT05UQUxfMzI6Im92ZXJmbG93X2hvcml6b250YWwiLE9VVExJTkVfT1ZFUkZMT1dfVkVSVElDQUw6Im92ZXJmbG93X3ZlcnRpY2FsIixPVVRMSU5FX1lPVVRVQkVfSU1QUk9WRV9UVjoieW91dHViZV9pbXByb3ZlX3R2IixQQUlEOiJkb2xsYXJfc2lnbiIsUEFVU0VfT1VUTElORUQ6InBhdXNlIixQQVlNRU5UOiJjcmVkaXRfY2FyZCIsUEVSU09OX1JBREFSX0ZJTExFRDoicGVyc29uX3JhZGFyIixQSE9ORV9ET1dOTE9BRDoibW9iaWxlX2Rvd25sb2FkIixQTEFZQUJMRVNfTE9HTzoidGljX3RhY190b2UiLApQTEFZQUJMRVNfTE9HT19DQUlSTzoidGljX3RhY190b2VfY2Fpcm8iLFBMQVlMSVNUUzoibGlzdF9wbGF5X2Fycm93IixQTEFZTElTVFNfQ0FJUk86Imxpc3RfcGxheV9hcnJvd19jYWlybyIsUExBWUxJU1RfQUREOnRZKCJsaXN0X2FkZCIpLFBMQVlMSVNUX0FERF9DSEVDSzp0WSgibGlzdF9jaGVjayIpLFBMQVlMSVNUX1BMQVk6Imxpc3RfcGxheV9hcnJvdyIsUExBWV9BTEw6InBsYXlfYXJyb3ciLFBMQVlfQ0lSQ0xFOiJwbGF5X2Fycm93X2NpcmNsZSIsUExBWV9PVVRMSU5FRDoicGxheV9hcnJvd19jaXJjbGUiLFBSSVZBQ1lfSU5GTzoic2hpZWxkIixQUklWQUNZX1BSSVZBVEU6ImxvY2siLFBSSVZBQ1lfUFVCTElDOiJlYXJ0aCIsUFJJVkFDWV9VTkxJU1RFRDoibGluayIsUFJPTU9URToibWVnYXBob25lIixQVVJDSEFTRVM6InByaWNlX3RhZyIsUFVSQ0hBU0VfU1VQRVJfQ0hBVDoic3VwZXJfY2hhdCIsUFVSQ0hBU0VfU1VQRVJfU1RJQ0tFUjoic3VwZXJfc3RpY2tlciIsUVVFU1RJT05fQU5TV0VSOiJtZXNzYWdlX2J1YmJsZV9xdWVzdGlvbiIsClFVRVVFX1BMQVlfTEFTVDoibGlzdF9xdWV1ZV9sYXN0IixRVUVVRV9QTEFZX05FWFQ6Imxpc3RfcGxheV9hcnJvdyIsUkVNSVhfRklMTEVEOiJ5b3V0dWJlX3Nob3J0c19yZW1peCIsUkVNT1ZFOiJiYXJfY2lyY2xlIixSRU1PVkVfQ0lSQ0xFOiJiYXJfY2lyY2xlIixSRU1PVkVfQ0lSQ0xFX09VVExJTkU6ImJhcl9jaXJjbGUiLFJFTU9WRV9ET05FOiJjaGVja19kb3VibGVfb2ZmIixSRU1PVkVfRlJPTV9ISVNUT1JZOiJiYXJfY2lyY2xlIixSRU1PVkVfRlJPTV9QTEFZTElTVDoiYmFyX2NpcmNsZSIsUkVNT1ZFX01PREVSQVRPUjoic2hpZWxkX29mZiIsUkVQTEFZOiJhcnJvd19jaXJjbGUiLFJFUExBWV8xMDoic2tpcF9iYWNrXzEwIixSRVBPUlRfUFJPQkxFTToiYWxlcnRfdHJpYW5nbGUiLFNBRDoiZmFjZV9zYWQiLFNBVkVfUExBWUxJU1Q6ImJvb2ttYXJrIixTQ0hFRFVMRToiY2xvY2siLFNDSE9PTDoiY3JlYXRvcl9hY2FkZW15IixTQ1JFRU5fRlVMTFNDUkVFTjoic2NyZWVuX2Z1bGwiLApTRUFSQ0hfSElTVE9SWToiYXJyb3dfdGltZSIsU0VMTDoicHJpY2VfdGFnIixTRVRUSU5HUzoiZ2VhciIsU0VUVElOR1NfQ0FJUk86ImdlYXJfY2Fpcm8iLFNFVFRJTkdTX0xJR0hUOiJnZWFyIixTRVRUSU5HU19NQVRFUklBTDoiZ2VhciIsU0hBUkVfQVJST1c6InNoYXJlIixTSElFTERfV0lUSF9BVkFUQVI6InBlcnNvbl9zaGllbGQiLFNIT1BQSU5HX0JBRzoiYmFnIixTSE9QUElOR19CQUdfQ0FJUk86ImJhZ19jYWlybyIsU0hPUFBJTkdfQ0FSVDoiY2FydCIsU0hPUlRTX0NPTU1FTlQ6InlvdXR1YmVfc2hvcnRzX21lc3NhZ2VfYnViYmxlX3JpZ2h0IixTSE9SVFNfRElTTElLRToieW91dHViZV9zaG9ydHNfdGh1bWJfZG93biIsU0hPUlRTX0xJS0U6InlvdXR1YmVfc2hvcnRzX3RodW1iX3VwIixTSE9SVFNfU0hBUkU6InlvdXR1YmVfc2hvcnRzX3NoYXJlIixTSFVGRkxFOiJhcnJvd19zaHVmZmxlIixTTE9XX01PREVfT0ZGOiJtZXNzYWdlX2J1YmJsZV9sZWZ0IixTT0NJQUw6InBlb3BsZSIsClNPUlQ6Im1lbnVfc29ydCIsU1BBUktfTElHSFRCVUxCX09VVExJTkU6InNwYXJrX2xpZ2h0YnVsYiIsU1BFRURfMVg6IjF4IixTUEVFRF8xX1BPSU5UXzJYOiIxX3BvaW50XzJ4IixTUEVFRF8xX1BPSU5UXzVYOiIxX3BvaW50XzV4IixTUEVFRF8xX1BPSU5UXzhYOiIxX3BvaW50Xzh4IixTUEVFRF8yWDoiMngiLFNQRUVEX1BPSU5UXzJYOiJwb2ludF8yeCIsU1BFRURfUE9JTlRfOFg6InBvaW50Xzh4IixTUE9OU09SU0hJUF9TVEFSOiJzdGFyX2NpcmNsZSIsU1RBRkZfUElDSzoic3BvdGxpZ2h0IixTVEFSVF9EVlI6ImFkZCIsU1RBUl9CT1JERVI6InN0YXIiLFNUQVJfQ0lSQ0xFX1JJQkJPTl9PVVRMSU5FOiJzdGFyX2NpcmNsZV9yaWJib24iLFNUSUNLRVJfRU1PVElDT046ImZhY2VfaGFwcHkiLFNUT1BfRFZSOiJzdG9wIixTVUJTQ1JJQkU6InlvdXR1YmVfbG9nb19pY29uIixTVUJTQ1JJQkVfUExVUzoiYWRkX2NhaXJvIixTVUJTQ1JJUFRJT05fTUFOQUdFUjoiZ2VhciIsU1VQRVJWSVNPUl9BQ0NPVU5UOiJwZW9wbGUiLApTVVBFUl9DSEFUX0ZPUl9HT09EOiJoYW5kc19oZWFydCIsU1dBUF9IT1JJWjoiYXJyb3dfc3dhcF9ob3Jpem9udGFsIixTV0lUQ0hfQUNDT1VOVFM6InBlcnNvbl9hY2NvdW50IixUQUJfQUNDT1VOVDoicGVyc29uIixUQUJfQUNUSVZJVFk6ImJlbGwiLFRBQl9CT09LTUFSSzoiYm9va21hcmsiLFRBQl9FWFBMT1JFOiJjb21wYXNzIixUQUJfSE9NRToiaG9tZSIsVEFCX0hPTUVfQ0FJUk86ImhvbWVfY2Fpcm8iLFRBQl9JTkJPWDoibWFpbCIsVEFCX0xJS0VEOiJ0aHVtYl91cCIsVEFCX01VU0lDX1BSRU1JVU06InlvdXR1YmVfbXVzaWMiLFRBQl9TSE9SVFM6InlvdXR1YmVfc2hvcnRzIixUQUJfU0hPUlRTX0NBSVJPOiJ5b3V0dWJlX3Nob3J0c19jYWlybyIsVEFCX1NVQlNDUklQVElPTlM6InN1YnNjcmlwdGlvbnMiLFRBQl9TVUJTQ1JJUFRJT05TX0NBSVJPOiJzdWJzY3JpcHRpb25zX2NhaXJvIixUQUJfVFJFTkRJTkc6ImZpcmUiLFRJTUVSOiJzdG9wd2F0Y2giLFRSQUlMRVI6InlvdXR1YmVfb3JpZ2luYWxzIiwKVFJFTkRJTkc6ImZpcmUiLFRSRU5ESU5HX0NBSVJPOiJmaXJlX2NhaXJvIixUUkVORElOR19ET1dOOiJyYXRpbmdfZG93biIsVFJFTkRJTkdfVVA6InJhdGluZ191cCIsVFJPUEhZOiJ0cm9waHkiLFRST1BIWV9DRUxFQlJBVElPTlM6ImZpcmV3b3JrcyIsVFVORToiYWRqdXN0IixVTkJMT0NLX1VTRVI6ImJhcl9jaXJjbGUiLFVOTElNSVRFRDoieW91dHViZV9sb2dvX2ljb24iLFVOUExVR0dFRF9MSVZFX0dVSURFOiJyYWRhcl9saXZlIixVTlBMVUdHRURfU1BPUlRTOiJleWVfb2ZmIixVUExPQURTOiJsaWJyYXJ5IixVUF9BUlJPVzoiYXJyb3dfdXAiLFZFUlRJQ0FMX0FMSUdOX0JPVFRPTToiZG93bmxvYWQiLFZFUllfSEFQUFk6ImZhY2VfdmVyeV9oYXBweSIsVkVSWV9TQUQ6ImZhY2VfdmVyeV9zYWQiLFZJREVPR0FNRV9BU1NFVDoiZ2FtaW5nIixWSURFT1M6InBsYXlfYXJyb3dfY2lyY2xlIixWSURFT19DQUxMOiJ2aWRlb19jYW1lcmFfYWRkIixWSURFT19MSUJSQVJZX1dISVRFOiJsaWJyYXJ5IiwKVklERU9fWU9VVFVCRToieW91dHViZV9sb2dvX2ljb24iLFZJRVdfTElTVDoibGlzdF92aWV3IixWSUVXX0xJU1RfQ0FJUk86Imxpc3Rfdmlld19jYWlybyIsVklTSUJJTElUWToiZXllIixWSVNJQklMSVRZX09GRjoiZXllX29mZiIsVk9MVU1FX01VVEU6InZvbHVtZV9vZmYiLFZPTFVNRV9VUDoidm9sdW1lX29uIixXQUxMUEFQRVI6ImltYWdlIixXQVJOSU5HOiJhbGVydF90cmlhbmdsZSIsV0FUQ0hfSElTVE9SWToiYXJyb3dfdGltZSIsV0FUQ0hfSElTVE9SWV9DQUlSTzoiYXJyb3dfdGltZV9jYWlybyIsV0FUQ0hfTEFURVI6ImNsb2NrIixXQVRDSF9MQVRFUl9DQUlSTzoiY2xvY2tfY2Fpcm8iLFdBVENIX1JFTEFURURfTUlYOiJ5b3V0dWJlX21peCIsV0hBVF9UT19XQVRDSDoiaG9tZSIsWU9VVFVCRV9DUkVBVEVfUkVEX0xPR086InlvdXR1YmVfY3JlYXRlX2xvZ28iLFlPVVRVQkVfTVVTSUNfTU9OT0NIUk9NRToieW91dHViZV9tdXNpYyIsWU9VVFVCRV9NVVNJQ19NT05PQ0hST01FX0NBSVJPOiJ5b3V0dWJlX211c2ljX2NhaXJvIiwKWU9VVFVCRV9TSE9SVFNfRklMTF9OT19UUklBTkdMRV9SRURfMTY6InlvdXR1YmVfc2hvcnRzX25vX3RyaWFuZ2xlIixZT1VUVUJFX1NIT1JUU19GSUxMX05PX1RSSUFOR0xFX1dISVRFXzE2OiJ5b3V0dWJlX3Nob3J0c19ub190cmlhbmdsZSIsWU9VVFVCRV9TSE9SVFNfT1VUTElORV8yNDoieW91dHViZV9zaG9ydHMiLFlUX09VVExJTkVfTVVTSUNfMjQ6Im11c2ljIn07dmFyIHhwYT17QUNDRVNTX1RJTUU6ImNsb2NrIixBQ0NPVU5UX0JPWDoicGVyc29uX3NxdWFyZSIsQUNDT1VOVF9CT1hfQ0FJUk86InBlcnNvbl9zcXVhcmUiLEFDQ09VTlRfQ0lSQ0xFOiJwZXJzb25fY2lyY2xlIixBQ0NPVU5UX0NJUkNMRV9DQUlSTzoicGVyc29uX2NpcmNsZSIsQUNDT1VOVF9MSU5LRUQ6ImFjY291bnRfbGluayIsQUNDT1VOVF9VTkxJTktFRDoiYWNjb3VudF9saW5rIixBRERfQ0lSQ0xFOiJhZGRfY2lyY2xlIixBRERfQ0lSQ0xFX09VVExJTkU6ImFkZF9jaXJjbGUiLEFERF9GUklFTkQ6InBlcnNvbl9jaGlsZCIsQUREX01PREVSQVRPUjoic2hpZWxkX2FkZCIsQUREX1RPX0xJQlJBUlk6ImJvb2ttYXJrIixBRERfVE9fUExBWUxJU1Q6ImFkZCIsQUREX1RPX1FVRVVFX1RBSUw6InF1ZXVlIixBRERfVE9fUkVNT1RFX1FVRVVFOiJwbGF5bGlzdF9hdWRpbyIsQUREX1RPX1dBVENIX0xBVEVSOiJjbG9jayIsQUREX1ZJREVPX0xJTks6ImZpbG1fc3RyaXBfYWRkIixBRE1JTl9QQU5FTF9TRVRUSU5HUzoicGVyc29uX2dlYXIiLApBTEVSVF9XQVJOX1JFRDoiYWxlcnRfdHJpYW5nbGUiLEFMSUdOX0xFRlQ6InRleHRfYWxpZ25fbGVmdCIsQVJST1dTX0FMRVJUOiJhcnJvd19zcGxpdF9hbGVydCIsQVJST1dfQkFDSzoiYXJyb3dfbGVmdCIsQVJST1dfQ0lSQ0xFOiJhcnJvd19jb3VudGVyY2xvY2t3aXNlIixBUlJPV19DSVJDTEVfUExBWToicmVwbGF5IixBUlJPV19DSVJDTEVfUklHSFQ6ImFycm93X2Nsb2Nrd2lzZSIsQVJST1dfRElBR09OQUw6ImFycm93X3VwX2xlZnQiLEFSUk9XX0RJQUdPTkFMX1VQX1JJR0hUOiJhcnJvd191cF9yaWdodCIsQVJST1dfRFJPUF9ET1dOOiJ0cmlhbmdsZV9kb3duIixBUlJPV19EUk9QX1VQOiJ0cmlhbmdsZV91cCIsQVJST1dfRk9SV0FSRDoiYXJyb3dfcmlnaHQiLEFSUk9XX1BBVVNFOiJwYXVzZV9oaXN0b3J5IixBUlJPV19VTkRPOiJ1bmRvIixBUlRJQ0xFOiJ0ZXh0X3BhZ2UiLEFSVElDTEVfQUxFUlQ6InRleHRfcGFnZV9hbGVydCIsQVJUSUNMRV9DSEVDSzoidGV4dF9wYWdlX2NoZWNrIiwKQVJUSUNMRV9DTEFSSUZZOiJ0ZXh0X3BhZ2VfaW5mbyIsQVJUSVNUOiJwZXJzb25fYXVkaW8iLEFVRElPVFJBQ0s6ImF1ZGlvIixBVURJT19CQURHRToiYXVkaW9fYmFkZ2UiLEFVRElPX1NVUlJPVU5EOiJzdXJyb3VuZF9zb3VuZCIsQVVUT19BV0VTT01FOiJzcGFya2xlcyIsQVZBVEFSX0FOT05ZTU9VUzoicGVyc29uX2NpcmNsZSIsQVZBVEFSX0xPR0dFRF9PVVQ6InBlcnNvbl9jaXJjbGUiLEJBQ0s6ImFycm93X2xlZnQiLEJBUl9DSEFSVDoiY2hhcnRfYmFyIixCQVJfQ0lSQ0xFOiJtaW51c19jaXJjbGUiLEJBUl9IT1JJWk9OVEFMOiJtaW51cyIsQkxPQ0s6ImNpcmNsZV9zbGFzaCIsQkxPQ0tfVVNFUjoiY2lyY2xlX3NsYXNoIixCT09LTUFSS19CT1JERVI6ImJvb2ttYXJrIixCT1hfT1BFTl9DSEVDSzoicXVpeiIsQk9YX1BFTkNJTDoic3F1YXJlX3BlbmNpbCIsQk9YX1NUQUNLXzM6InNxdWFyZTNfc3RhY2siLEJSRUFLSU5HX05FV1NfQUxUXzE6InRleHRfcGFnZV9hbGVydCIsCkJST0FEQ0FTVDoicG9kY2FzdCIsQlJPQURDQVNUX0NBSVJPOiJwb2RjYXN0IixCVUdfUkVQT1JUOiJidWciLENBTUVSQV9BTFQ6ImNhbWVyYSIsQ0FNUEFJR046Im1lZ2FwaG9uZSIsQ0FOQ0VMOiJ4X2NpcmNsZSIsQ0FQVElPTlM6ImNsb3NlZF9jYXB0aW9ucyIsQ0FTVF9JQ09OOiJjaHJvbWVjYXN0IixDQVNUX09VVExJTkU6ImNocm9tZWNhc3QiLENIQU5ORUxfTk9USUZJQ0FUSU9OX1BSRUZFUkVOQ0VfT0ZGOiJiZWxsIixDSEFOTkVMX05PVElGSUNBVElPTl9QUkVGRVJFTkNFX09OOiJiZWxsX3dhdmVzIixDSEFUOiJ0ZXh0X2J1YmJsZSIsQ0hBVF9CVUJCTEU6ImJ1YmJsZSIsQ0hFQ0tfQk9YOiJjaGVja19zcXVhcmUiLENIRUNLX0JPWF9PVVRMSU5FX0JMQU5LOiJzcXVhcmUiLENIRUNLX0NJUkNMRV9GSUxMRUQ6ImNoZWNrX2NpcmNsZSIsQ0hFQ0tfQ0lSQ0xFX09VVExJTkU6ImNoZWNrX2NpcmNsZSIsQ0hFQ0tfQ0lSQ0xFX1RISUNLOiJjaGVja19jaXJjbGUiLENIRUNLX0RPVUJMRToiY2hlY2tfZG9uZSIsCkNIRUNLX0RPVUJMRV9PRkY6ImNoZWNrX2RvbmVfc2xhc2giLENIRVZST05fTEVGVDoiY2hldnJvbl9sZWZ0IixDSEVWUk9OX1JJR0hUOiJjaGV2cm9uX3JpZ2h0IixDSEVWUk9OX1JJR0hUX0NBSVJPOiJjaGV2cm9uX3JpZ2h0IixDSVJDTEVTX09WRVJMQVA6ImFjY291bnRfbGluayIsQ0xBUFBFUkJPQVJEX0NBSVJPOiJjbGFwcGVyYm9hcmQiLENMQVJJRlk6InRleHRfcGFnZV9pbmZvIixDTE9DS19BUlJPV1M6ImNsb2NrX3NwbGl0IixDTE9DS19BUlJPV1NfQUxFUlQ6ImNsb2NrX3NwbGl0X2FsZXJ0IixDTE9TRURfQ0FQVElPTjoiY2xvc2VkX2NhcHRpb25zIixDTE9TRURfQ0FQVElPTl9TRUxFQ1RFRDoiY2xvc2VkX2NhcHRpb25zIixDTE9TRToieCIsQ0xPVURfVVBMT0FEOiJjbG91ZF9hcnJvd191cCIsQ09MTEFQU0U6ImNoZXZyb25fdXAiLENPTExBUFNFX0NBSVJPOiJjaGV2cm9uX3VwIixDT0xMRUNUSU9OOiJzcXVhcmUzZF9zdGFjayIsQ09MT1JfTEVOUzoicGFpbnRfcGFsZXR0ZSIsCkNPTU1FTlQ6InRleHRfYnViYmxlIixDT05TRU5UX1NISUVMRDoicGVyc29uX3NoaWVsZCIsQ09OVEVOVF9DVVQ6InNjaXNzb3JzIixDT05URU5UX0NVVF9DQUlSTzoic2Npc3NvcnMiLENPVVJTRToiZ3JhZHVhdGlvbl9jYXAiLENPVVJTRV9DQUlSTzoiZ3JhZHVhdGlvbl9jYXAiLENSRUFUSU9OX0xJVkU6ImxpdmUiLENSRUFUSU9OX1BPU1Q6InNxdWFyZV9wZW5jaWwiLENSRUFUSU9OX1VQTE9BRDoidmlkZW8iLENSRUFUSU9OX1VQTE9BRF9SRUQ6InVwbG9hZCIsQ1JFQVRPUl9BQ0FERU1ZOiJncmFkdWF0aW9uX2NhcCIsQ1JFQVRPUl9NRVRBREFUQV9NT05FVElaQVRJT046ImRvbGxhcl9zaWduX2NpcmNsZSIsQ1JFQVRPUl9NRVRBREFUQV9NT05FVElaQVRJT05fT0ZGOiJkb2xsYXJfc2lnbl9jaXJjbGVfc2xhc2giLENSRUFUT1JfU1RVRElPOiJ5b3V0dWJlX3N0dWRpbyIsREFSS19USEVNRToidGhlbWUiLERFTEVURToidHJhc2hfY2FuIixERUxFVEVfU1dFRVA6InRyYXNoX2NhbiIsCkRFU0tUT1A6ImxhcHRvcCIsRElTTElLRToidGh1bWJfZG93biIsRElTTElLRV9TRUxFQ1RFRDoidGh1bWJfZG93biIsRElTTUlTU0FMOiJ4IixESVNNSVNTX1FVRVVFOiJwbGF5bGlzdF94IixET0dGT09EOiJwYXdwcmludCIsRE9MTEFSX1NJR046ImRvbGxhcl9zaWduX2NpcmNsZSIsRE9MTEFSX1NJR05fQ0lSQ0xFOiJkb2xsYXJfc2lnbl9jaXJjbGUiLERPTExBUl9TSUdOX0NPTlRBSU5FUjoiZG9sbGFyX3NpZ25fcmVjdGFuZ2xlIixET1dOX0FSUk9XOiJhcnJvd19kb3duIixET19OT1RfRElTVFVSQjoiY2lyY2xlX3NsYXNoIixEUkFGVDoiZG9jdW1lbnQiLERSQUdfSEFORExFOiJlcXVhbCIsRUFSVEg6Imdsb2JlIixFRElUOiJwZW5jaWwiLEVNT0pJOiJmYWNlX3ZlcnlfaGFwcHkiLEVNT0pJX0ZMQUdTOiJmbGFnIixFTU9KSV9PQkpFQ1RTOiJsaWdodGJ1bGIiLEVNT0pJX1BFT1BMRToiZmFjZV92ZXJ5X2hhcHB5IixFTU9KSV9SRUNFTlQ6ImNsb2NrIixFTVBUWV9IRUFSVDoiaGVhcnQiLApFTVBUWV9MSUtFOiJ0aHVtYl91cCIsRVJST1JfQkxBQ0s6ImFsZXJ0X2NpcmNsZSIsRVJST1JfT1VUTElORToiYWxlcnRfY2lyY2xlIixFUlJPUl9XSElURToiYWxlcnRfY2lyY2xlIixFWElUX0FQUDoiYXJyb3dfaW4iLEVYSVRfVE9fQVBQOiJhcnJvd19pbiIsRVhQQU5EOiJjaGV2cm9uX2Rvd24iLEVYUEFORF9BTEw6ImNoZXZyb25fZXhwYW5kIixFWFBBTkRfQ0FJUk86ImNoZXZyb25fZG93biIsRVhQQU5EX0xFU1M6ImNoZXZyb25fdXAiLEVYUEFORF9NT1JFOiJjaGV2cm9uX2Rvd24iLEVYUExPUkU6ImNvbXBhc3MiLEVYUExPUkVfREVTVElOQVRJT046ImNvbXBhc3MiLEVYVEVSTkFMX0xJTks6ImFycm93X3VwX3JpZ2h0IixFWUVfT0ZGOiJleWVfc2xhc2giLEZBQl9VUExPQUQ6InVwbG9hZCIsRkFDRV9IQVBQWV9PVVRMSU5FOiJmYWNlX2hhcHB5IixGQUNFX01FSDoiZmFjZV9uZXV0cmFsIixGQUNUX0NIRUNLOiJ0ZXh0X3BhZ2VfY2hlY2siLEZBU0hJT05fTE9HTzoiZmFzaGlvbiIsCkZBU0hJT05fTE9HT19DQUlSTzoiZmFzaGlvbiIsRkFWT1JJVEU6InRodW1iX3VwIixGRUVEQkFDSzoiYWxlcnRfYnViYmxlIixGRUVEQkFDS19DQUlSTzoiYWxlcnRfYnViYmxlIixGSUxMX0FSUk9XX1NPTElEX0RPV05fMTY6ImFycm93X3NvbGlkX2Rvd24iLEZJTExfQVJST1dfU09MSURfVVBfMTY6ImFycm93X3NvbGlkX3VwIixGSUxMX0RPTExBUl9TSUdOX0hFQVJUXzEyOiJkb2xsYXJfc2lnbl9oZWFydCIsRklSU1RfUEFHRToiY2hldnJvbl9sZWZ0X2VuZCIsRkxBR19DQUlSTzoiZmxhZyIsRkxBU0hfT0ZGOiJmbGFzaF9zbGFzaCIsRkxBU0hfT046ImZsYXNoIixGVUxMX0hFQVJUOiJoZWFydCIsR0FNSU5HX0xPR086ImdhbWluZyIsR0FNSU5HX0xPR09fQ0FJUk86ImdhbWluZyIsR09fVE9fUEFHRToiYXJyb3dfcmlnaHQiLEdSSURfQVNZTU1FVFJJQ0FMOiJkYXNoYm9hcmQiLEdST1VQUzoicGVyc29uMyIsSEFORF9TV0lQRV9MRUZUOiJnZXN0dXJlX3N3aXBlX2xlZnQiLEhBTkRfU1dJUEVfUklHSFQ6Imdlc3R1cmVfc3dpcGVfcmlnaHQiLApIQVBQWToiZmFjZV9oYXBweSIsSEVBTFRIX0FORF9TQUZFVFk6InNoaWVsZF9oZWFsdGgiLEhFQVJUX0JPWDoiaGVhcnRfY3ViZSIsSEVMUDoiaGVscF9jaXJjbGUiLEhFTFBfQ0FJUk86ImhlbHBfY2lyY2xlIixIRUxQX09VVExJTkU6ImhlbHBfY2lyY2xlIixISURFOiJjaXJjbGVfc2xhc2giLElOQ09HTklUT19DQUlSTzoiaW5jb2duaXRvIixJTkZJTklUWV9JQ09OOiJpbmZpbml0eSIsSU5GTzoiaW5mb19jaXJjbGUiLElORk9fT1VUTElORToiaW5mb19jaXJjbGUiLElOU0VSVF9DSEFSVDoiY2hhcnRfYmFyX3NxdWFyZSIsSU5TRVJUX0NIQVJUX09VVExJTkVEOiJjaGFydF9iYXJfc3F1YXJlIixJTlNFUlRfUEhPVE86ImltYWdlIixLRUVQOiJwaW4iLEtFRVBfT0ZGOiJwaW5fc2xhc2giLEtFWUJPQVJEOiJrZXlib2FyZCIsS0VZQk9BUkRfQVJST1dfRE9XTjoiY2hldnJvbl9kb3duIixLRVlCT0FSRF9BUlJPV19VUDoiY2hldnJvbl91cCIsS0lEU19CTE9DSzoiY2lyY2xlX3NsYXNoIiwKTEFOR1VBR0U6Imdsb2JlIixMQVNUX1BBR0U6ImNoZXZyb25fcmlnaHRfZW5kIixMQVVOQ0g6ImFycm93X3VwX3JpZ2h0IixMRUFSTklORzoibGlnaHRidWxiIixMRUFSTklOR19DQUlSTzoibGlnaHRidWxiIixMSUJSQVJZX0FERDoiYm9va21hcmsiLExJQlJBUllfSU1BR0U6ImltYWdlX3N0YWNrIixMSUJSQVJZX01VU0lDOiJhdWRpb19zcXVhcmVfc3RhY2siLExJQlJBUllfT1VUTElORToicGxheV9zcXVhcmVfc3RhY2siLExJQlJBUllfUkVNT1ZFOiJib29rbWFyayIsTElCUkFSWV9TQVZFRDoiY2hlY2tfc3F1YXJlX3N0YWNrIixMSUtFU19QTEFZTElTVDoidGh1bWJfdXAiLExJS0VTX1BMQVlMSVNUX0NBSVJPOiJ0aHVtYl91cCIsTElLRToidGh1bWJfdXAiLExJS0VfU0VMRUNURUQ6InRodW1iX3VwIixMSVNUX1FVRVVFOiJxdWV1ZSIsTElWRV9DQUlSTzoibGl2ZSIsTElWRV9VTkxJU1RFRDoibGluayIsTE9DQVRJT05fT046ImxvY2F0aW9uX3BpbiIsTE9DQVRJT05fUElOOiJsb2NhdGlvbl9waW4iLApMT0NBVElPTl9QT0lOVDoibG9jYXRpb25fcGluIixMT09QOiJyZXBlYXQiLExPT1BfQUNUSVZFOiJyZXBlYXQiLExPT1BfT05FOiJyZXBlYXQxIixMT09QX09ORV9BQ1RJVkU6InJlcGVhdDEiLE1FRVQ6Imdvb2dsZV9tZWV0IixNRUg6ImZhY2VfbmV1dHJhbCIsTUVNQkVSU0hJUFM6Im1lbWJlcnNoaXBzIixNRU1CRVJTX09OTFlfTU9ERV9PRkY6InRleHRfYnViYmxlIixNRU5VX0ZJTFRFUjoiZmlsdGVyIixNRVNTQUdFOiJ0ZXh0X2J1YmJsZSIsTUVTU0FHRV9CVUJCTEVfR0VBUjoiYnViYmxlX2dlYXIiLE1FU1NBR0VfQlVCQkxFX0xFRlQ6InRleHRfYnViYmxlIixNRVNTQUdFX0JVQkJMRV9MRUZUX0JPT1NUOiJidWJibGVfc3BhcmtsZXMiLE1FU1NBR0VfQlVCQkxFX09WRVJMQVA6ImJ1YmJsZV9zdGFjayIsTUVTU0FHRV9CVUJCTEVfUVVFU1RJT046ImhlbHBfYnViYmxlIixNSUNST1BIT05FX09OOiJtaWMiLE1PTkVUSVpBVElPTl9PTjoiZG9sbGFyX3NpZ25fY2lyY2xlIixNT05FWV9GSUxMOiJkb2xsYXJfc2lnbl9yZWN0YW5nbGUiLApNT05FWV9GSUxMX0pQWToieWVuX3NpZ25fcmVjdGFuZ2xlIixNT05FWV9IQU5EOiJkb2xsYXJfc2lnbl9jaXJjbGVfaGFuZCIsTU9ORVlfSEVBUlQ6ImRvbGxhcl9zaWduX2hlYXJ0IixNT09OX1o6InNsZWVwX3RpbWVyIixNT1JFX0hPUklaOiJvdmVyZmxvd19ob3Jpem9udGFsIixNT1JFX1ZFUlQ6Im92ZXJmbG93X3ZlcnRpY2FsIixNVVNJQzoiYXVkaW8iLE1VU0lDX0NBSVJPOiJhdWRpbyIsTVVTSUNfRVhQTElDSVRfQkFER0U6ImV4cGxpY2l0IixNVVNJQ19ORVdfUkVMRUFTRToiYXVkaW9fYmFkZ2UiLE1VU0lDX05PVEVfU1lNQk9MOiJhdWRpbyIsTVVTSUNfU0NJU1NPUlM6ImF1ZGlvX3NjaXNzb3JzIixNVVNJQ19TSFVGRkxFOiJzaHVmZmxlIixNWV9DSEFOTkVMOiJwZXJzb25fY2lyY2xlIixNWV9MT0NBVElPTjoibG9jYXRpb25fcGluIixNWV9WSURFT1M6InZpZGVvIixNWV9WSURFT1NfQ0FJUk86InZpZGVvIixORVdTX0NBSVJPOiJuZXdzIixORVdTX1NUT1JZOiJuZXdzIiwKTkVYVDoiY2hldnJvbl9yaWdodCIsTk9URV9BREQ6ImJ1YmJsZV9wZW5jaWwiLE5PVElGSUNBVElPTlM6ImJlbGwiLE5PVElGSUNBVElPTlNfQUNUSVZFOiJiZWxsX3dhdmVzIixOT1RJRklDQVRJT05TX0NBSVJPOiJiZWxsIixOT1RJRklDQVRJT05TX0RPTkVfQ0hFQ0tNQVJLOiJjaGVjayIsTk9USUZJQ0FUSU9OU19JTkJPWDoiYmVsbCIsTk9USUZJQ0FUSU9OU19OT05FOiJiZWxsIixOT1RJRklDQVRJT05TX09GRjoiYmVsbF9zbGFzaCIsTk9UX0lOVEVSRVNURUQ6ImNpcmNsZV9zbGFzaCIsT0ZGSUNJQUxfQVJUSVNUX0JBREdFOiJhdWRpbyIsT0ZGTElORV9DTE9VRDoiY2xvdWRfc2xhc2giLE9GRkxJTkVfRE9XTkxPQUQ6ImRvd25sb2FkIixPRkZMSU5FX0RPV05MT0FEX0NBSVJPOiJkb3dubG9hZCIsT0ZGTElORV9QQVVTRToicGF1c2UiLE9QRU5fSU5fTkVXOiJhcnJvd191cF9yaWdodCIsT1VUTElORV9BREpVU1Q6ImFkanVzdCIsT1VUTElORV9BUlJPV19TT0xJRF9ET1dOOiJhcnJvd19zb2xpZF9kb3duIiwKT1VUTElORV9BUlJPV19TT0xJRF9ET1dOXzE2OiJhcnJvd19zb2xpZF9kb3duIixPVVRMSU5FX0FSUk9XX1NPTElEX1VQOiJhcnJvd19zb2xpZF91cCIsT1VUTElORV9BUlJPV19TT0xJRF9VUF8xNjoiYXJyb3dfc29saWRfdXAiLE9VVExJTkVfQkFHOiJiYWciLE9VVExJTkVfQ0xPQ0tfSEFMRl9DSVJDTEU6ImNsb2NrX2hhbGZfZGFzaGVkIixPVVRMSU5FX01PQklMRV9ET1dOTE9BRDoibW9iaWxlX2Fycm93X2Rvd24iLE9VVExJTkVfT1ZFUkZMT1dfSE9SSVpPTlRBTF8zMjoib3ZlcmZsb3dfaG9yaXpvbnRhbCIsT1VUTElORV9PVkVSRkxPV19WRVJUSUNBTDoib3ZlcmZsb3dfdmVydGljYWwiLE9VVExJTkVfWU9VVFVCRV9JTVBST1ZFX1RWOiJzdGFyX3R2IixPVVRMSU5FX1lPVVRVQkVfU0hPUlRTX1BMVVM6InNob3J0c19hZGQiLFBBSUQ6ImRvbGxhcl9zaWduX2NpcmNsZSIsUEFVU0VfT1VUTElORUQ6InBhdXNlIixQQVlNRU5UOiJjcmVkaXRfY2FyZCIsUEVPUExFOiJwZXJzb25fY2hpbGQiLApQRU9QTEVfMjoicGVyc29uMl9yZWN0YW5nbGUiLFBFT1BMRV9BTFQ6InBlcnNvbjIiLFBFT1BMRV9HUk9VUDoicGVyc29uMyIsUEVPUExFX05PVEU6ImJ1YmJsZV9hc3RlcmlzayIsUEVSU09OXzI6InBlcnNvbjIiLFBFUlNPTl9BQ0NPVU5UOiJwZXJzb25fc3F1YXJlX3N0YWNrIixQRVJTT05fTUlOVVM6InBlcnNvbl94IixQRVJTT05fTVVTSUM6InBlcnNvbl9hdWRpbyIsUEVSU09OX1JBREFSOiJwZXJzb25fd2F2ZXMiLFBFUlNPTl9SQURBUl9GSUxMRUQ6InBlcnNvbl93YXZlcyIsUEVSU09OX1NFVFRJTkc6InBlcnNvbl9nZWFyIixQSE9ORUxJTks6InFyX2NvZGUiLFBIT05FOiJwaG9uZSIsUEhPTkVfRE9XTkxPQUQ6Im1vYmlsZV9hcnJvd19kb3duIixQSUNUVVJFX0lOX1BJQ1RVUkU6InBpY3R1cmVfaW5fcGljdHVyZSIsUExBWUFCTEVTX0xPR086InBsYXlhYmxlcyIsUExBWUFCTEVTX0xPR09fQ0FJUk86InBsYXlhYmxlcyIsUExBWUxJU1RTOiJwbGF5bGlzdCIsUExBWUxJU1RTX0NBSVJPOiJwbGF5bGlzdCIsClBMQVlMSVNUX0FERF9DSEVDSzoiYm9va21hcmsiLFBMQVlfQUxMOiJwbGF5IixQTEFZX0FSUk9XOiJwbGF5IixQTEFZX0FSUk9XX0NJUkNMRToicGxheV9jaXJjbGUiLFBMQVlfQVJST1dfSEFMRl9DSVJDTEU6InBsYXlfY2lyY2xlX2hhbGZfZGFzaGVkIixQTEFZX0FSUk9XX09VVExJTkVEOiJwbGF5IixQTEFZX0NJUkNMRToicGxheV9jaXJjbGUiLFBMQVlfT1VUTElORUQ6InBsYXlfY2lyY2xlIixQT0RDQVNUX0FERDoicG9kY2FzdF9hZGQiLFBPRENBU1RfQ0hFQ0s6InBvZGNhc3RfY2hlY2siLFBSSVZBQ1lfSU5GTzoic2hpZWxkX3giLFBSSVZBQ1lfUFJJVkFURToibG9jayIsUFJJVkFDWV9QVUJMSUM6Imdsb2JlIixQUklWQUNZX1VOTElTVEVEOiJsaW5rIixQUk9NT1RFOiJtZWdhcGhvbmUiLFBVUkNIQVNFUzoicHJpY2VfdGFnIixQVVJDSEFTRV9TVVBFUl9DSEFUOiJzdXBlcl9jaGF0IixQVVJDSEFTRV9TVVBFUl9TVElDS0VSOiJzdXBlcl9zdGlja2VyIixRVUVTVElPTl9BTlNXRVI6ImhlbHBfYnViYmxlIiwKUVVFU1RJT05fQ0lSQ0xFOiJoZWxwX2NpcmNsZSIsUVVFVUVfUExBWV9MQVNUOiJxdWV1ZV9sYXN0IixRVUVVRV9QTEFZX05FWFQ6InF1ZXVlX25leHQiLFFVT1RBVElPTl9NQVJLOiJxdW90ZSIsUkFEQVJfTElWRToibGl2ZSIsUkVNT1ZFOiJtaW51c19jaXJjbGUiLFJFTU9WRV9DSVJDTEU6Im1pbnVzX2NpcmNsZSIsUkVNT1ZFX0NJUkNMRV9PVVRMSU5FOiJtaW51c19jaXJjbGUiLFJFTU9WRV9GUk9NX0hJU1RPUlk6Im1pbnVzX2NpcmNsZSIsUkVNT1ZFX0ZST01fUExBWUxJU1Q6Im1pbnVzX2NpcmNsZSIsUkVNT1ZFX01PREVSQVRPUjoic2hpZWxkX3NsYXNoIixSRVBMQVk6ImFycm93X2NvdW50ZXJjbG9ja3dpc2UiLFJFUExBWV8xMDoic2tpcDEwX2JhY2siLFJFUExBWV9BUlJPVzoicmVwbGF5IixSRVBPUlRfUFJPQkxFTToiYWxlcnRfdHJpYW5nbGUiLFJTU19PRkY6InJzc19zbGFzaCIsU0FEOiJmYWNlX3NhZCIsU0FWRV9QTEFZTElTVDoiYm9va21hcmsiLFNDSEVEVUxFOiJjbG9jayIsClNDSE9PTDoiZ3JhZHVhdGlvbl9jYXAiLFNDUkVFTl9ERUZBVUxUOiJwbGF5ZXJfZGVmYXVsdCIsU0NSRUVOX0ZVTExTQ1JFRU46InBsYXllcl9mdWxsX2VudGVyIixTQ1JFRU5fTElHSFQ6ImFtYmllbnRfbW9kZSIsU0NSRUVOX1JPVEFUSU9OOiJyb3RhdGVfcG9ydHJhaXQiLFNDUkVFTl9TV0lUQ0g6InBsYXllcl9zd2l0Y2giLFNDUkVFTl9USEVBVFJFOiJwbGF5ZXJfdGhlYXRlciIsU0VBUkNIX0NBSVJPOiJzZWFyY2giLFNFQVJDSF9ISVNUT1JZOiJoaXN0b3J5IixTRUxMOiJwcmljZV90YWciLFNFVFRJTkdTOiJnZWFyIixTRVRUSU5HU19DQUlSTzoiZ2VhciIsU0VUVElOR1NfTElHSFQ6ImdlYXIiLFNFVFRJTkdTX01BVEVSSUFMOiJnZWFyIixTRVRUSU5HU19SRU1PVEU6InJlbW90ZV93YXZlcyIsU0hBUkU6InNoYXJlIixTSEFSRV9BUlJPVzoic2hhcmUiLFNIQVJFX0NBSVJPOiJzaGFyZSIsU0hJRUxEOiJzaGllbGRfeCIsU0hJRUxEX0VNUFRZOiJzaGllbGQiLFNISUVMRF9PRkY6InNoaWVsZF9zbGFzaCIsClNISUVMRF9XSVRIX0FWQVRBUjoicGVyc29uX3NoaWVsZCIsU0hPUFBJTkdfQkFHOiJiYWciLFNIT1BQSU5HX0JBR19DQUlSTzoiYmFnIixTSE9QUElOR19DQVJUOiJjYXJ0IixTSE9SVFNfQ09NTUVOVDoidGV4dF9idWJibGUiLFNIT1JUU19ESVNMSUtFOiJ0aHVtYl9kb3duIixTSE9SVFNfTElLRToidGh1bWJfdXAiLFNIT1JUU19TSEFSRToic2hhcmUiLFNLSVBfRk9SV0FSRF8zMDoic2tpcDMwX2ZvcndhcmQiLFNMQVNIX0NJUkNMRV9MRUZUOiJjaXJjbGVfc2xhc2giLFNMQVNIX0NJUkNMRV9SSUdIVDoiY2lyY2xlX3NsYXNoIixTTE9XX01PREU6ImJ1YmJsZV9zbG93IixTTE9XX01PREVfT0ZGOiJ0ZXh0X2J1YmJsZSIsU0xPV19NT1RJT05fVklERU86InBsYXlfY2lyY2xlX2hhbGZfZGFzaGVkIixTT0NJQUw6InBlcnNvbl9jaGlsZCIsU1BBUktMRToic3BhcmtsZXMiLFNQQVJLX0lNQUdFOiJpbWFnZV9zcGFyayIsU1BBUktfTElHSFRCVUxCX09VVExJTkU6InNwYXJrX2xpZ2h0YnVsYiIsClNQQVJLX1BFTkNJTDoicGVuY2lsX3NwYXJrIixTUEFSS19SQURBUjoic3Bhcmtfd2F2ZXMiLFNQQVJLX1ZJREVPOiJ2aWRlb19zcGFyayIsU1BFQUtFUl9HUk9VUDoic3BlYWtlcl9zdGFjayIsU1BFQUtFUl9PRkY6InNwZWFrZXJfc2xhc2giLFNQRUVEXzFYOiJuMXgiLFNQRUVEXzFfUE9JTlRfMlg6Im4xcG9pbnQyeCIsU1BFRURfMV9QT0lOVF81WDoibjFwb2ludDV4IixTUEVFRF8xX1BPSU5UXzhYOiJuMXBvaW50OHgiLFNQRUVEXzJYOiJuMngiLFNQT05TT1JTSElQX1NUQVI6InN0YXJfY2lyY2xlIixTUE9SVFM6ImJhc2tldGJhbGwiLFNQT1RMSUdIVDoic3BvdGxpZ2h0IixTVEFGRl9QSUNLOiJzcG90bGlnaHQiLFNUQVJUX0RWUjoiYWRkIixTVEFSX0JPUkRFUjoic3RhciIsU1RBUl9DSVJDTEVfUklCQk9OOiJtZW1iZXJzaGlwc19naWZ0IixTVEFSX0hBTEY6InN0YXJfZnVsbF9oYWxmIixTVEFSX1NIT09USU5HOiJoeXBlIixTVElDS0VSOiJzdGlja2VyIixTVElDS0VSX0VNT1RJQ09OOiJmYWNlX2hhcHB5IiwKU1RPUF9EVlI6InN0b3AiLFNVQlNDUklCRToieW91dHViZSIsU1VCU0NSSUJFX1BMVVM6ImFkZCIsU1VCU0NSSVBUSU9OX01BTkFHRVI6ImdlYXIiLFNVUEVSU1RBUjoic3VwZXJfc3RhciIsU1VQRVJWSVNPUl9BQ0NPVU5UOiJwZXJzb25fY2hpbGQiLFNVUEVSX0NIQVRfRk9SX0dPT0Q6ImhhbmRzX2hlYXJ0IixTV0FQX0hPUklaOiJhcnJvd19zd2FwX2hvcml6b250YWwiLFNXSVRDSF9BQ0NPVU5UUzoicGVyc29uX3NxdWFyZV9zdGFjayIsVEFCX0FDQ09VTlQ6InBlcnNvbiIsVEFCX0FDVElWSVRZOiJiZWxsIixUQUJfQk9PS01BUks6ImJvb2ttYXJrIixUQUJfRVhQTE9SRToiY29tcGFzcyIsVEFCX0hPTUU6ImhvbWUiLFRBQl9IT01FX0NBSVJPOiJob21lIixUQUJfSU5CT1g6Im1haWwiLFRBQl9MSUtFRDoidGh1bWJfdXAiLFRBQl9NVVNJQ19QUkVNSVVNOiJ5b3V0dWJlX211c2ljIixUQUJfU0hPUlRTOiJzaG9ydHMiLFRBQl9TSE9SVFNfQ0FJUk86InNob3J0cyIsVEFCX1NVQlNDUklQVElPTlM6InN1YnNjcmlwdGlvbnMiLApUQUJfU1VCU0NSSVBUSU9OU19DQUlSTzoic3Vic2NyaXB0aW9ucyIsVEFCX1RSRU5ESU5HOiJ0cmVuZGluZyIsVEFSR0VUOiJ0YXJnZXQiLFRBUkdFVF9BREQ6InRhcmdldF9hZGQiLFRFTVBMQVRFX0FERDoidGVtcGxhdGVfYWRkIixURVhUOiJmb250IixUSUNLRVRfU1RBUjoic3Rhcl90aWNrZXQiLFRJTUVSOiJzdG9wd2F0Y2giLFRSRU5ESU5HX0NBSVJPOiJ0cmVuZGluZyIsVFJFTkRJTkdfRE9XTjoiYXJyb3dfdHJlbmRfZG93biIsVFJFTkRJTkdfVVA6ImFycm93X3RyZW5kX3VwIixUUk9QSFlfQ0FJUk86InRyb3BoeSIsVFJPUEhZX0NFTEVCUkFUSU9OUzoiZmlyZXdvcmtzIixUUk9QSFlfU1RBUjoic3Rhcl90cm9waHkiLFRVTkU6ImFkanVzdCIsVFZfT0ZGOiJ0dl9zbGFzaCIsVU5CTE9DS19VU0VSOiJtaW51c19jaXJjbGUiLFVORkFWT1JJVEU6InRodW1iX2Rvd24iLFVOTElNSVRFRDoieW91dHViZSIsVU5QTFVHR0VEX0xJVkVfR1VJREU6ImxpdmUiLFVOUExVR0dFRF9TUE9SVFM6ImV5ZV9zbGFzaCIsClVQTE9BRFM6InBsYXlfc3F1YXJlX3N0YWNrIixVUF9BUlJPVzoiYXJyb3dfdXAiLFZFUlRJQ0FMX0FMSUdOX0JPVFRPTToiY2hldnJvbl9kb3duX2VuZCIsVkVSVElDQUxfQUxJR05fVE9QOiJjaGV2cm9uX3VwX2VuZCIsVkVSWV9IQVBQWToiZmFjZV92ZXJ5X2hhcHB5IixWRVJZX1NBRDoiZmFjZV92ZXJ5X3NhZCIsVklERU9TOiJwbGF5X2NpcmNsZSIsVklERU9fQ0FMTDoidmlkZW9fY2FtZXJhX2FkZCIsVklERU9fTElCUkFSWV9XSElURToicGxheV9zcXVhcmVfc3RhY2siLFZJREVPX1FVQUxJVFlfNEs6Im40ayIsVklERU9fUVVBTElUWV84SzoibjhrIixWSURFT19ZT1VUVUJFOiJ5b3V0dWJlIixWSUVXX0xJU1RfQ0FJUk86InZpZXdfbGlzdCIsVklFV19NT0RVTEU6InZpZXdfY29sdW1uM19yb3cyIixWSVNJQklMSVRZOiJleWUiLFZJU0lCSUxJVFlfT0ZGOiJleWVfc2xhc2giLFZPTFVNRV9ET1dOOiJ2b2x1bWVfbWluIixWT0xVTUVfTVVURToidm9sdW1lX211dGUiLFZPTFVNRV9PRkY6InZvbHVtZV9tdXRlIiwKVk9MVU1FX1NUQUJMRToic3RhYmxlX3ZvbHVtZSIsVk9MVU1FX1VQOiJ2b2x1bWVfbWF4IixXQUxMUEFQRVI6ImltYWdlIixXQVJOSU5HOiJhbGVydF90cmlhbmdsZSIsV0FUQ0hfSElTVE9SWToiaGlzdG9yeSIsV0FUQ0hfSElTVE9SWV9DQUlSTzoiaGlzdG9yeSIsV0FUQ0hfTEFURVI6ImNsb2NrIixXQVRDSF9MQVRFUl9DQUlSTzoiY2xvY2siLFdBVENIX1JFTEFURURfTUlYOiJtaXgiLFdIQVRfVE9fV0FUQ0g6ImhvbWUiLFlPVVRVQkVfQ1JFQVRFX1JFRF9MT0dPOiJ5b3V0dWJlX2NyZWF0ZV9sb2dvIixZT1VUVUJFX0xJTktFRF9UVjoidHZfbW9iaWxlIixZT1VUVUJFX01VU0lDX01PTk9DSFJPTUU6InlvdXR1YmVfbXVzaWMiLFlPVVRVQkVfTVVTSUNfTU9OT0NIUk9NRV9DQUlSTzoieW91dHViZV9tdXNpYyIsWU9VVFVCRV9TSE9SVFNfQVJST1dfRE9XTjoiYXJyb3dfZG93biIsWU9VVFVCRV9TSE9SVFNfQVJST1dfVVA6ImFycm93X3VwIixZT1VUVUJFX1NIT1JUU19GSUxMX05PX1RSSUFOR0xFX1JFRF8xNjoic2hvcnRzX2VtcHR5IiwKWU9VVFVCRV9TSE9SVFNfRklMTF9OT19UUklBTkdMRV9XSElURV8xNjoic2hvcnRzX2VtcHR5IixZT1VUVUJFX1NIT1JUU19PVVRMSU5FXzI0OiJzaG9ydHMiLFlPVVRVQkVfU0hPUlRTX09VVExJTkVfV0lUSF9URVhUXzI0OiJzaG9ydHNfdGV4dF9sb2dvIixZVF9PVVRMSU5FX01VU0lDXzI0OiJhdWRpbyJ9O3ZhciBWcWE9ezE1OltbMSwzLDI0XV0sIjFfcG9pbnRfMngiOltbMSwxLDI0XV0sIjFfcG9pbnRfNXgiOltbMSwxLDI0XV0sIjFfcG9pbnRfOHgiOltbMSwxLDI0XV0sIjF4IjpbWzEsMSwyNF1dLCIyX3BvaW50XzV4IjpbWzEsMSwyNF1dLCIyZCI6W1sxLDEsMjRdXSwiMngiOltbMSwzLDI0XV0sIjNkIjpbWzEsMSwyNF1dLCIzeCI6W1sxLDMsMjRdXSwiNGQiOltbMSwxLDI0XV0sIjRrIjpbWzAsMywyNF0sWzEsMywyNF1dLDYwOltbMSwzLDI0XV0sIjhrIjpbWzAsMiwyNF0sWzEsMiwyNF1dLGFjY2Vzc2liaWxpdHk6W1sxLDQsMjRdXSxhY2NvdW50X2xpbms6W1sxLDgsMjRdXSxhY2NvdW50X2xpbmtfZXJyb3I6W1sxLDYsMjRdXSxhY2NvdW50X2xpbmtfc29tZTpbWzAsNSwyNF1dLGFjY291bnRfbGlua19zdWNjZXNzOltbMCw1LDI0XV0sYWRkOltbMSw5LDE2XSxbMSw5LDI0XV0sYWRkX2NhaXJvOltbMCw0LDE2XSxbMCw0LDI0XSxbMSw0LDI0XV0sYWRkX2NpcmNsZTpbWzEsNiwyNF0sClsxLDYsMzZdXSxhZGRfaGFsZl9jaXJjbGU6W1sxLDIsMjRdXSxhZGp1c3Q6W1swLDksMjRdLFsxLDksMThdLFsxLDksMjRdXSxhaXJwbGFuZTpbWzAsNSwyNF0sWzEsNSwyMF0sWzEsNSwyNF1dLGFpcnBsYXk6W1sxLDYsMTZdLFsxLDYsMjRdXSxhaXJwbGF5X29mZjpbWzEsMSwyNF1dLGFsYnVtOltbMCw4LDI0XSxbMSw4LDI0XV0sYWxlcnRfY2lyY2xlOltbMCwxMSwyNF0sWzEsMTEsMTZdLFsxLDExLDI0XV0sYWxlcnRfdHJpYW5nbGU6W1swLDEwLDEyXSxbMCwxMCwyNF0sWzEsMTAsMjRdXSxhbGlnbl9jZW50ZXI6W1swLDYsMjRdLFsxLDYsMjRdXSxhbGlnbl9sZWZ0OltbMCw2LDI0XSxbMSw2LDI0XV0sYWxpZ25fcmlnaHQ6W1swLDYsMjRdLFsxLDYsMjRdXSxhcnJvd19jYXBzOltbMCwyLDI0XSxbMSwyLDI0XV0sYXJyb3dfY2lyY2xlOltbMSw2LDI0XSxbMSw2LDQ4XV0sYXJyb3dfY2lyY2xlX2Rhc2g6W1sxLDEsMjRdXSxhcnJvd19jaXJjbGVfcGxheTpbWzEsMSwyNF0sWzEsMSwKMzZdLFsxLDEsNDhdXSxhcnJvd19jaXJjbGVfcmlnaHQ6W1swLDMsMjRdLFsxLDMsMTJdLFsxLDMsMTZdLFsxLDMsMThdLFsxLDMsMjRdXSxhcnJvd19kaWFnb25hbDpbWzEsNSwyNF1dLGFycm93X2RpYWdvbmFsX2Rvd25fcmlnaHQ6W1swLDEsMTJdLFswLDEsMTZdLFswLDEsMThdLFswLDEsMjRdLFsxLDEsMTJdLFsxLDEsMTZdLFsxLDEsMThdLFsxLDEsMjRdXSxhcnJvd19kaWFnb25hbF91cF9yaWdodDpbWzAsMSwxMl0sWzAsMSwxNl0sWzAsMSwxOF0sWzAsMSwyNF0sWzEsMSwxMl0sWzEsMSwxNl0sWzEsMSwxOF0sWzEsMSwyNF1dLGFycm93X2Rvd246W1swLDMsMjRdLFsxLDMsMjRdXSxhcnJvd19kb3duX2NpcmNsZTpbWzAsNCwxMl0sWzAsNCwxNl0sWzAsNCwxOF0sWzAsNCwyNF1dLGFycm93X2ZsaXA6W1sxLDEwLDE2XSxbMSwxMCwxOF0sWzEsMTAsMjRdXSxhcnJvd19mbGlwX2RvbGxhcl9zaWduOltbMSwyLDI0XV0sYXJyb3dfaW46W1swLDgsMjRdLFsxLDgsMjRdXSxhcnJvd19sZWZ0OltbMSwKOCwyNCwhMF1dLGFycm93X2xlZnRfY2Fpcm86W1sxLDIsMjQsITBdXSxhcnJvd19tZXJnZTpbWzEsMiwyNF1dLGFycm93X291dDpbWzAsMiwyNF1dLGFycm93X3BhdXNlOltbMSwxLDI0XV0sYXJyb3dfcmVkbzpbWzEsMSwyNF1dLGFycm93X3JlbWl4OltbMSwxLDI0XV0sYXJyb3dfcmVwZWF0OltbMCw1LDI0XSxbMSw1LDI0XV0sYXJyb3dfcmVwZWF0XzE6W1swLDMsMjRdLFsxLDMsMjRdXSxhcnJvd19yaWdodDpbWzEsMywyNCwhMF1dLGFycm93X3NodWZmbGU6W1swLDUsMjRdLFsxLDUsMjRdXSxhcnJvd19za2lwX2ZvcndhcmQ6W1swLDEsMjRdLFsxLDEsMjRdXSxhcnJvd19zb2xpZF9kb3duOltbMCw0LDE2XSxbMCw0LDI0XSxbMSw0LDE2XSxbMSw0LDI0XV0sYXJyb3dfc29saWRfdXA6W1swLDQsMTZdLFswLDQsMjRdLFsxLDQsMTZdLFsxLDQsMjRdXSxhcnJvd19zcGxpdDpbWzAsMywyNF0sWzEsMywyNF1dLGFycm93X3N3YXBfaG9yaXpvbnRhbDpbWzAsNSwyNF0sWzEsNSwxOF0sClsxLDUsMjRdXSxhcnJvd190aW1lOltbMCw4LDI0XSxbMSw4LDI0XV0sYXJyb3dfdGltZV9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGFycm93X3RpbWVfZm9yd2FyZDpbWzEsMSwyNF1dLGFycm93X3VuZG86W1sxLDEsMjRdXSxhcnJvd191cDpbWzAsMywyNF0sWzEsMywyNF1dLGFycm93X3VwX2NpcmNsZTpbWzAsNCwxMl0sWzAsNCwxNl0sWzAsNCwxOF0sWzAsNCwyNF1dLGFycm93c19hbGVydDpbWzEsMSwyNF1dLGFydGljbGU6W1sxLDIsMjRdXSxhcnRpY2xlX2FsZXJ0OltbMSwyLDI0XV0sYXJ0aWNsZV9jaGVjazpbWzEsMiwyNF1dLGFydGljbGVfY2xhcmlmeTpbWzEsMiwyNF1dLGF1ZGlvOltbMCwxNCwxMl0sWzAsMTQsMTZdLFswLDE0LDE4XSxbMCwxNCwyNF0sWzEsMTQsMThdLFsxLDE0LDI0XV0sYXVkaW9fYmFkZ2U6W1swLDMsMTJdLFswLDMsMTZdLFswLDMsMjRdXSxhdWRpb19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGF1ZGlvX29mZjpbWzEsMiwyNF1dLGF1ZGlvX3N1cnJvdW5kOltbMCwKMSwyNF0sWzEsMSwyNF1dLGJhY2tncm91bmQ6W1sxLDEsMjRdXSxiYWNrc3BhY2U6W1swLDUsMjRdLFsxLDUsMjRdXSxiYWc6W1swLDcsMTJdLFswLDcsMThdLFswLDcsMjRdLFsxLDcsMThdLFsxLDcsMjRdXSxiYWdfYm9va21hcms6W1sxLDIsMjRdXSxiYWdfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxiYXJfY2lyY2xlOltbMSw0LDI0XV0sYmFyX2dyYXBoOltbMCwyLDI0XSxbMSwyLDI0XV0sYmFyX2dyYXBoX2JveF92ZXJ0aWNhbDpbWzAsNiwyNF0sWzEsNiwyNF1dLGJhcl9ob3Jpem9udGFsOltbMSwyLDE2XSxbMSwyLDI0XV0sYmFyc18yOltbMSw5LDE2XSxbMSw5LDI0XV0sYmFyc18zOltbMCwyLDI0XSxbMSwyLDI0XV0sYmVha2VyOltbMSwyLDI0XV0sYmVsbDpbWzAsMTEsMjRdLFsxLDExLDI0XV0sYmVsbF9jYWlybzpbWzAsMywyNF0sWzEsMywyNF1dLGJlbGxfb2ZmOltbMSw1LDI0XV0sYmVsbF9vZmZfY2Fpcm86W1sxLDIsMjRdXSxiZWxsX29uOltbMCw3LDI0XV0sYmVsbF9vbl9jYWlybzpbWzAsCjIsMjRdXSxibHVyOltbMSwyLDI0XV0sYm9vazpbWzEsMywyNF1dLGJvb2ttYXJrOltbMCwxMCwyNF0sWzEsMTAsMjRdXSxib29rbWFya19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGJveF8zZDpbWzAsMSwyNF0sWzEsMSwyNF1dLGJveF9iYXI6W1swLDMsMjRdXSxib3hfY2hlY2s6W1swLDYsMThdLFswLDYsMjRdLFswLDYsMzZdLFsxLDYsMjRdXSxib3hfY2hldnJvbl9yaWdodDpbWzEsMywyNF1dLGJveF9kYXNoZWRfdHJpYW5nbGU6W1sxLDMsMjRdXSxib3hfZW1wdHk6W1sxLDUsMjRdXSxib3hfb3Blbl9jaGVjazpbWzAsNCwyNF0sWzEsNCwxNl0sWzEsNCwyNF1dLGJveF9wZW5jaWw6W1sxLDMsMTZdLFsxLDMsMjRdXSxib3hfcGxhY2Vob2xkZXJfbGVmdDpbWzEsMSwyNF1dLGJveF9zZWFyY2g6W1sxLDEsMjRdXSxib3hfc3RhY2tfMzpbWzAsMSwyNF0sWzEsMSwyNF1dLGJveGVzXzI6W1sxLDMsMjRdXSxicmllZmNhc2U6W1sxLDIsMjRdXSxicmllZmNhc2Vfc2xhc2g6W1swLAozLDI0XV0sYnJpZ2h0bmVzczpbWzAsMywyNF0sWzEsMywyNF1dLGJyb2FkY2FzdDpbWzAsMywyNF0sWzEsMywxMl0sWzEsMywxNl0sWzEsMywxOF0sWzEsMywyNF0sWzEsMyw0OF1dLGJ1ZzpbWzAsNCwyNF0sWzEsNCwyNF1dLGJ1c2luZXNzOltbMSw0LDI0XV0sY2FibGU6W1sxLDIsMjRdXSxjYWxjdWxhdG9yOltbMCwzLDI0XSxbMSwzLDI0XV0sY2FsZW5kYXI6W1swLDQsMjRdLFsxLDQsMjRdXSxjYW1lcmE6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGNhbWVyYV9hdWRpbzpbWzEsNSwyNF1dLGNhbWVyYV9lZmZlY3RzOltbMSw0LDI0XV0sY2FtZXJhX2ZsaXA6W1sxLDQsMjRdXSxjYW1lcmFfaGFzaHRhZzpbWzEsNSwyNF1dLGNhbWVyYV9zd2l0Y2g6W1swLDMsMjRdLFsxLDMsMjRdXSxjYXJkOltbMCwzLDEyXSxbMCwzLDE2XSxbMCwzLDI0XV0sY2FydDpbWzAsNCwyNF0sWzEsNCwyNF1dLGNhcnRfc3Bhcms6W1sxLDEsMjRdXSxjYXQ6W1swLDMsMjRdLFsxLDMsMjRdXSxjZWxlYnJhdGlvbjpbWzEsCjIsMjRdXSxjaGVjazpbWzAsMTMsMTJdLFswLDEzLDE2XSxbMCwxMywyNF0sWzEsMTMsMTZdLFsxLDEzLDI0XV0sY2hlY2tfY2lyY2xlOltbMCwxMCwxOF0sWzAsMTAsMjRdLFsxLDEwLDI0XV0sY2hlY2tfZG91YmxlOltbMSwxLDI0XV0sY2hlY2tfZG91YmxlX29mZjpbWzEsMSwyNF1dLGNoZXZyb25fY29sbGFwc2U6W1sxLDMsMjRdXSxjaGV2cm9uX2Rvd246W1sxLDksMThdLFsxLDksMjRdXSxjaGV2cm9uX2Rvd25fY2Fpcm86W1sxLDIsMjRdXSxjaGV2cm9uX2Rvd25fY2lyY2xlOltbMCwzLDI0XV0sY2hldnJvbl9leHBhbmQ6W1sxLDUsMjRdXSxjaGV2cm9uX2ZpcnN0OltbMSwxLDI0XV0sY2hldnJvbl9sYXN0OltbMSwxLDI0XV0sY2hldnJvbl9sZWZ0OltbMSw5LDE2LCEwXSxbMSw5LDE4LCEwXSxbMSw5LDI0LCEwXV0sY2hldnJvbl9sZWZ0X2NpcmNsZTpbWzAsMywyNF1dLGNoZXZyb25fbGVmdF9pb3M6W1sxLDMsMjRdXSxjaGV2cm9uX2xlZnRfaW9zX2NhaXJvOltbMSwyLDI0XV0sCmNoZXZyb25fcmlnaHQ6W1swLDcsMTYsITBdLFswLDcsMTgsITBdLFswLDcsMjQsITBdLFsxLDcsMTYsITBdLFsxLDcsMTgsITBdLFsxLDcsMjQsITBdXSxjaGV2cm9uX3JpZ2h0X2NhaXJvOltbMSwyLDI0XV0sY2hldnJvbl9yaWdodF9jaXJjbGU6W1swLDMsMjRdXSxjaGV2cm9uX3JpZ2h0X2lvczpbWzEsMSwyNF1dLGNoZXZyb25fdXA6W1sxLDksMTZdLFsxLDksMThdLFsxLDksMjRdXSxjaGV2cm9uX3VwX2NhaXJvOltbMSwyLDI0XV0sY2hldnJvbl91cF9jaXJjbGU6W1swLDMsMjRdXSxjaHJvbWVjYXN0OltbMCwxMSwyNF0sWzEsMTEsMjRdXSxjaHJvbWVjYXN0X2FuaW1hdGVfZnJhbWVfMTpbWzEsNSwyNF1dLGNocm9tZWNhc3RfYW5pbWF0ZV9mcmFtZV8yOltbMSw1LDI0XV0sY2hyb21lY2FzdF9hbmltYXRlX2ZyYW1lXzM6W1sxLDUsMjRdXSxjaHJvbWVjYXN0X2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sY2hyb21lY2FzdF9tb2JpbGU6W1sxLDQsMjRdLFsxLDQsMzZdXSxjaHJvbWVjYXN0X3dhdmVmb3JtOltbMSwKMiwyNF1dLGNpcmNsZTpbWzAsOSwyNF0sWzEsOSwyNF1dLGNpcmNsZV9mdWxsOltbMCwzLDI0XV0sY2lyY2xlX2hhbGZfZnVsbDpbWzEsMSwyNF1dLGNpcmNsZXNfNjpbWzAsMSwyNF1dLGNpcmNsZXNfb3ZlcmxhcDpbWzAsMSwyNF0sWzEsMSwyNF1dLGNpcmNsZXNfb3ZlcmxhcF9jaGVjazpbWzAsMSwxNl0sWzAsMSwyNF1dLGNsYXBwZXJib2FyZDpbWzAsMywyNF0sWzEsMywyNF1dLGNsYXBwZXJib2FyZF9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGNsb2NrOltbMCwxMCwyNF0sWzEsMTAsMTZdLFsxLDEwLDI0XV0sY2xvY2tfYXJyb3dzOltbMSwxLDI0XV0sY2xvY2tfYXJyb3dzX2FsZXJ0OltbMSwxLDI0XV0sY2xvY2tfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxjbG9ja19oYWxmX2NpcmNsZTpbWzAsMSwyNF0sWzEsMSwyNF1dLGNsb3NlZF9jYXB0aW9uOltbMCwxMSwyNF0sWzEsMTEsMjRdXSxjbG91ZDpbWzEsMiwyNF1dLGNsb3VkX2Fycm93X2Rvd246W1sxLDMsMjRdXSxjbG91ZF9hcnJvd191cDpbWzAsCjYsMjRdLFsxLDYsMjRdXSxjbG91ZF9jaGVjazpbWzAsMywyNF0sWzEsMywyNF1dLGNsb3VkX2VsbGlwc2lzOltbMCwzLDI0XSxbMSwzLDI0XV0sY2xvdWRfb2ZmOltbMSwyLDI0XV0sY29kZTpbWzEsMiwyNF1dLGNvbXBhc3M6W1swLDksMjRdLFsxLDksMjRdXSxjb21wYXNzX2NhaXJvOltbMCwxLDI0XSxbMSwxLDI0XV0sY29udHJvbGxlcjpbWzAsMiwyNF0sWzEsMiwyNF1dLGNvcHk6W1sxLDMsMjRdXSxjb3B5cmlnaHQ6W1swLDQsMjRdLFsxLDQsMjRdXSxjcmVhdG9yX2FjYWRlbXk6W1swLDMsMTJdLFswLDMsMTZdLFswLDMsMjRdLFsxLDMsMjRdXSxjcmVhdG9yX2FjYWRlbXlfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxjcmVkaXRfY2FyZDpbWzEsNCwyNF1dLGNyb3A6W1sxLDQsMTZdLFsxLDQsMjRdXSxjcm9wX3JvdGF0ZTpbWzEsMiwyNF1dLGNyb3duOltbMCw1LDE2XSxbMCw1LDI0XSxbMSw1LDEyXSxbMSw1LDE2XSxbMSw1LDI0XV0sY3ViZV9zcGFyazpbWzEsMSwyNF1dLApjdXJ2ZV9zOltbMCwxLDI0XV0sZGFzaGJvYXJkX3BsdXM6W1sxLDEsMTZdLFsxLDEsMThdLFsxLDEsMjBdLFsxLDEsMjRdXSxkaWVfMzpbWzAsNSwyNF0sWzEsNSwyNF1dLGRpcmVjdGlvbnM6W1sxLDMsMjRdXSxkb2dmb29kOltbMSwxLDI0XV0sZG9sbGFyX3NpZ246W1swLDcsMjRdLFsxLDcsMjRdXSxkb2xsYXJfc2lnbl9jaXJjbGU6W1swLDEyLDE2XSxbMCwxMiwyNF0sWzEsMTIsMTZdLFsxLDEyLDI0XV0sZG9sbGFyX3NpZ25fY2lyY2xlX3BhdXNlOltbMSwyLDI0XV0sZG9sbGFyX3NpZ25fY2lyY2xlX3BsdXM6W1sxLDEsMjRdXSxkb2xsYXJfc2lnbl9jb250YWluZXI6W1sxLDcsMjRdXSxkb2xsYXJfc2lnbl9oZWFydDpbWzAsMjQsMTJdLFswLDI0LDI0XSxbMSwyNCwxNl0sWzEsMjQsMjRdXSxkb2xsYXJfc2lnbl9vZmY6W1sxLDMsMjRdXSxkb3Q6W1swLDIsMTJdLFswLDIsMjRdXSxkb3dubG9hZDpbWzAsMTEsMjRdLFsxLDExLDE2XSxbMSwxMSwyNF1dLGRvd25sb2FkX2NhaXJvOltbMCwKMiwyNF0sWzEsMiwyNF1dLGRvd25sb2FkZWQ6W1swLDgsMjRdXSxkb3dubG9hZGluZzpbWzEsNSwyNF1dLGRvd25sb2FkaW5nXzA6W1sxLDUsMjRdXSxkb3dubG9hZGluZ18xOltbMSw2LDI0XV0sZG93bmxvYWRpbmdfMjpbWzEsNiwyNF1dLGRvd25sb2FkaW5nXzM6W1sxLDYsMjRdXSxkb3dubG9hZGluZ180OltbMSw2LDI0XV0sZG93bmxvYWRpbmdfNTpbWzEsNywyNF1dLGRvd25sb2FkaW5nXzY6W1sxLDYsMjRdXSxkcml2ZV9hZGQ6W1sxLDIsMjRdXSxlYXJ0aDpbWzAsMTIsMjRdLFsxLDEyLDE2XSxbMSwxMiwxOF0sWzEsMTIsMjRdXSxleHBsaWNpdDpbWzAsNywxOF0sWzAsNywyNF0sWzEsNywyNF1dLGV5ZTpbWzAsNiwyNF0sWzEsNiwyNF1dLGV5ZV9vZmY6W1sxLDQsMjRdXSxleWVkcm9wcGVyOltbMSwyLDI0XV0sZmFjZV9hZGQ6W1sxLDEsMjRdXSxmYWNlX2Fycm93c19kaWFnb25hbDpbWzEsMSwyNF1dLGZhY2VfaGFwcHk6W1swLDEyLDI0XSxbMCwxMiwzNl0sWzEsMTIsMjRdLApbMSwxMiwzNl1dLGZhY2VfaW1hZ2U6W1sxLDIsMjRdXSxmYWNlX21laDpbWzAsMTAsMjRdLFswLDEwLDM2XSxbMSwxMCwyNF0sWzEsMTAsMzZdXSxmYWNlX21laF8yOltbMCw2LDI0XSxbMCw2LDM2XSxbMSw2LDI0XSxbMSw2LDM2XV0sZmFjZV9wYWludGJydXNoOltbMSwyLDI0XV0sZmFjZV9zYWQ6W1swLDEyLDI0XSxbMCwxMiwzNl0sWzEsMTIsMjRdLFsxLDEyLDM2XV0sZmFjZV91bmhhcHB5OltbMCwxMCwyNF0sWzAsMTAsMzZdLFsxLDEwLDI0XSxbMSwxMCwzNl1dLGZhY2VfdXBzZXQ6W1swLDEwLDI0XSxbMCwxMCwzNl0sWzEsMTAsMjRdLFsxLDEwLDM2XV0sZmFjZV92ZXJ5X2hhcHB5OltbMCwxMiwyNF0sWzAsMTIsMzZdLFsxLDEyLDI0XSxbMSwxMiwzNl1dLGZhY2VfdmVyeV9zYWQ6W1swLDEwLDI0XSxbMCwxMCwzNl0sWzEsMTAsMjRdLFsxLDEwLDM2XV0sZmFzaGlvbjpbWzAsNCwyNF0sWzEsNCwyNF1dLGZhc2hpb25fY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxmYXN0X2JhY2s6W1swLAozLDI0XSxbMSwzLDI0XV0sZmFzdF9mb3J3YXJkOltbMCw1LDI0XV0sZmlsbV9zdHJpcDpbWzAsNywyNF0sWzEsNywyNF1dLGZpbG1fc3RyaXBfYWRkOltbMSwyLDI0XV0sZmlsdGVyX2ZhY2U6W1swLDUsMjRdLFsxLDUsMjRdXSxmaWx0ZXJfcGhvdG86W1swLDgsMjRdLFsxLDgsMjRdXSxmaXJlOltbMCwxMCwxMl0sWzAsMTAsMjRdLFsxLDEwLDE2XSxbMSwxMCwyNF1dLGZpcmVfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxmaXJld29ya3M6W1sxLDMsMjRdXSxmbGFnOltbMCwxMCwyNF0sWzEsMTAsMjRdXSxmbGFnX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sZmxhc2hfYXV0bzpbWzAsMywyNF0sWzEsMywyNF1dLGZsYXNoX2NpcmNsZTpbWzAsNSwxOF0sWzAsNSwyNF0sWzEsNSwyNF1dLGZsYXNoX29mZjpbWzAsNSwyNF0sWzEsNSwyNF1dLGZsYXNoX29uOltbMCw1LDI0XSxbMSw1LDI0XV0sZmxpcF9ob3Jpem9udGFsOltbMSw0LDI0XV0sZmxpcF9ob3Jpem9udGFsX2Rhc2g6W1sxLAoxLDI0XV0sZmxpcF92ZXJ0aWNhbF9kYXNoOltbMSwxLDI0XV0sZm9sZGVyOltbMCw0LDE2XSxbMCw0LDI0XSxbMSw0LDI0XV0sZm9udF9zcXVhcmVfc3Bhcms6W1sxLDEsMTZdLFsxLDEsMjRdXSxmb290YmFsbDpbWzAsNCwyNF0sWzEsNCwyNF1dLGdhbWluZzpbWzAsMywyNF0sWzEsMywyNF1dLGdhbWluZ19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGdlYXI6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGdlYXJfY2Fpcm86W1swLDMsMjRdLFsxLDMsMjRdXSxnaG9zdDpbWzAsNSwyNF0sWzEsNSwyNF1dLGdpZjpbWzEsMywyNF1dLGdpZnQ6W1swLDMsMjRdLFsxLDMsMjRdXSxnbG9iZTpbWzAsNCwyNF0sWzAsNCwzNl0sWzEsNCwyNF0sWzEsNCwzNl1dLGdsb2JlX2ltYWdlOltbMCwzLDI0XSxbMCwzLDM2XSxbMSwzLDI0XSxbMSwzLDM2XV0sZ2xvdzpbWzEsMiwyNF1dLGdvb2dsZV9sZW5zOltbMSw0LDI0XV0sZ3JlYXRlcl90aGFuXzIwOltbMSwyLDI0XV0sZ3JpZF8yeDI6W1sxLDEsMjRdXSwKZ3JpZF8zX2J5XzM6W1swLDEsMjRdLFsxLDEsMjRdXSxncmlkX2FzeW1tZXRyaWNhbDpbWzAsMSwyNF0sWzEsMSwyNF1dLGhhbmQ6W1sxLDIsMjRdXSxoYW5kX2xvbmdfcHJlc3M6W1swLDMsMjRdLFsxLDMsMjRdXSxoYW5kX3BpbmNoX2luOltbMSwyLDI0XV0saGFuZF9zd2lwZV9sZWZ0OltbMSwxLDI0XV0saGFuZF9zd2lwZV9yaWdodDpbWzEsMiwyNF1dLGhhbmRfdGFwOltbMCwyLDI0XSxbMSwyLDI0XV0saGFuZF93YXZlOltbMSwyLDI0XV0saGFuZHNfaGVhcnQ6W1swLDMsMjRdLFsxLDMsMjRdXSxoYXNodGFnOltbMSwyLDE2XSxbMSwyLDE4XSxbMSwyLDIwXSxbMSwyLDI0XV0saGQ6W1swLDgsMjRdLFsxLDgsMjRdXSxoZWFkc2V0OltbMCw4LDI0XSxbMSw4LDI0XV0saGVhcnQ6W1swLDE5LDEzXSxbMCwxOSwyNF0sWzEsMTksMTZdLFsxLDE5LDI0XV0saGVhcnRfYm94OltbMSwxLDI0XV0saGVhcnRfY2lyY2xlOltbMSwyLDE2XSxbMSwyLDE4XSxbMSwyLDIwXSxbMSwyLDI0XV0sCmhlYXJ0X29mZjpbWzEsMiwyNF1dLGhpZXJhcmNoeTpbWzAsNCwyNF0sWzEsNCwyNF1dLGhpZ2hsaWdodHM6W1sxLDIsMjRdXSxob21lOltbMCwxMCwyNF0sWzEsMTAsMjRdXSxob21lX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0saG91cmdsYXNzOltbMSwzLDE2XSxbMSwzLDI0XV0saW1hZ2U6W1swLDgsMjRdLFsxLDgsMjRdXSxpbWFnZV9hZGQ6W1sxLDQsMjRdXSxpbWFnZV93YWxscGFwZXI6W1sxLDEsMjRdXSxpbmNvZ25pdG86W1swLDksMjRdLFsxLDksMjRdXSxpbmNvZ25pdG9fY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxpbmZpbml0ZTpbWzAsMiwyNF1dLGluZmluaXR5OltbMSwyLDI0XV0saW5mb19jaXJjbGU6W1sxLDExLDE2XSxbMSwxMSwxOF0sWzEsMTEsMjBdLFsxLDExLDI0XV0saW5mb19jaXJjbGVfc3Bhcms6W1sxLDIsMjRdXSxqb3VybmV5OltbMSwyLDI0XV0sa2V5OltbMSw1LDI0XV0sa2V5Ym9hcmQ6W1swLDQsMjRdLFsxLDQsMjRdXSxsYWJlbDpbWzAsNCwyNF0sClsxLDQsMjRdXSxsYXB0b3A6W1sxLDMsMjRdXSxsYXB0b3BfbW9iaWxlOltbMCw0LDI0XSxbMSw0LDI0XV0sbGF5ZXJzOltbMCwxLDI0XSxbMSwxLDI0XV0sbGVhZjpbWzEsMiwyNF1dLGxlbnM6W1sxLDEsMjRdXSxsZXNzX3RoYW5fNDpbWzEsMiwyNF1dLGxpYnJhcnk6W1swLDcsMjRdLFsxLDcsMjRdXSxsaWJyYXJ5X2FkZDpbWzEsNywxNl0sWzEsNywyNF1dLGxpYnJhcnlfaW1hZ2U6W1sxLDEsMjRdXSxsaWJyYXJ5X211c2ljOltbMCwzLDI0XSxbMSwzLDI0XV0sbGlicmFyeV9zYXZlZDpbWzAsNywyNF1dLGxpZ2h0YnVsYjpbWzAsNCwxMl0sWzAsNCwyNF0sWzEsNCwyNF1dLGxpZ2h0YnVsYl9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGxpZ2h0YnVsYl9zcGFyazpbWzEsMiwyNF1dLGxpbms6W1sxLDgsMThdLFsxLDgsMjRdXSxsaW5rX29mZjpbWzEsMSwyNF1dLGxpc3RfYWRkOltbMSw1LDI0XV0sbGlzdF9jaGVjazpbWzAsMiwyNF1dLGxpc3RfbXVzaWM6W1sxLDMsMjRdXSxsaXN0X3BlbmNpbDpbWzEsCjUsMjRdXSxsaXN0X3BsYXlfYXJyb3c6W1swLDgsMjRdLFsxLDgsMTJdLFsxLDgsMjRdXSxsaXN0X3BsYXlfYXJyb3dfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxsaXN0X3F1ZXVlOltbMSwxLDI0XV0sbGlzdF9xdWV1ZV9sYXN0OltbMCwzLDI0XSxbMSwzLDI0XV0sbGlzdF9xdWV1ZV9uZXh0OltbMSwxLDI0XV0sbGlzdF9yZW1vdmU6W1sxLDEsMjRdXSxsaXN0X3ZpZXc6W1sxLDIsMjRdXSxsaXN0X3ZpZXdfY2Fpcm86W1sxLDIsMjRdXSxsaXZlX21vYmlsZV9sYW5kc2NhcGVfb3JpZW50YXRpb246W1sxLDEsMjRdXSxsaXZlX3Bob3RvOltbMSwyLDI0XV0sbGl2ZV93YXZlczpbWzEsMiwxOF0sWzEsMiwyNF1dLGxvY2F0aW9uX3BvaW50OltbMCw2LDEyXSxbMCw2LDI0XSxbMSw2LDI0XV0sbG9jYXRpb25fcG9pbnRfb2ZmOltbMSwxLDI0XV0sbG9jazpbWzAsMTMsMTJdLFswLDEzLDI0XSxbMSwxMywxMl0sWzEsMTMsMTZdLFsxLDEzLDE4XSxbMSwxMywyNF1dLGxvY2tfb3BlbjpbWzEsCjQsMjRdXSxtYWdpY193YW5kOltbMCwzLDI0XSxbMSwzLDI0XV0sbWFpbDpbWzAsOSwyNF0sWzEsOSwyNF1dLG1hcDpbWzEsMywyNF1dLG1hdGhfYWRkOltbMCwzLDI0XV0sbWF0aF9hbmQ6W1swLDMsMjRdXSxtYXRoX2RpdmlkZTpbWzAsMywyNF1dLG1hdGhfZXF1YWxzOltbMCwzLDI0XV0sbWF0aF9lcXVhbHNfc2xhc2g6W1sxLDMsMjRdXSxtYXRoX2dyZWF0ZXJfdGhhbjpbWzAsMywyNF1dLG1hdGhfZ3JlYXRlcl90aGFuX29yX2VxdWFsOltbMSwxLDI0XV0sbWF0aF9sZXNzX3RoYW46W1swLDMsMjRdXSxtYXRoX2xlc3NfdGhhbl9vcl9lcXVhbDpbWzEsNCwyNF1dLG1hdGhfbXVsdGlwbHk6W1swLDMsMjRdXSxtYXRoX29yOltbMCwzLDI0XV0sbWF0aF9wZXJjZW50OltbMCwzLDI0XV0sbWF0aF9zdWJ0cmFjdDpbWzAsMywyNF1dLG1heGltaXplX2NhaXJvOltbMSwxLDI0XV0sbWVkYWw6W1sxLDIsMjRdXSxtZWRhbF9zdGFyOltbMSwyLDI0XV0sbWVldDpbWzEsMSwyNF1dLG1lZ2FwaG9uZTpbWzAsCjUsMjRdLFsxLDUsMjRdXSxtZW1iZXJzaGlwczpbWzAsOSwxMl0sWzAsOSwxNl0sWzAsOSwxOF0sWzAsOSwyNF0sWzEsOSwyNF1dLG1lbnRpb246W1sxLDUsMTZdLFsxLDUsMjRdXSxtZW51X2ZpbHRlcjpbWzAsMSwyNF0sWzEsMSwyNF1dLG1lbnVfc29ydDpbWzEsNCwyNF1dLG1lc3NhZ2VfYnViYmxlX2FsZXJ0OltbMCw2LDI0XSxbMSw2LDI0XV0sbWVzc2FnZV9idWJibGVfYWxlcnRfY2Fpcm86W1sxLDIsMjRdXSxtZXNzYWdlX2J1YmJsZV9lbXB0eTpbWzEsMSwyNF1dLG1lc3NhZ2VfYnViYmxlX2dlYXI6W1sxLDEsMjRdXSxtZXNzYWdlX2J1YmJsZV9sZWZ0OltbMCwxLDI0XSxbMSwxLDI0XV0sbWVzc2FnZV9idWJibGVfbGVmdF9ib29zdDpbWzEsMSwyNF1dLG1lc3NhZ2VfYnViYmxlX2xlZnRfb2ZmOltbMSwxLDE2XSxbMSwxLDI0XV0sbWVzc2FnZV9idWJibGVfb3ZlcmxhcDpbWzAsOCwyNF0sWzEsOCwyNF1dLG1lc3NhZ2VfYnViYmxlX3F1ZXN0aW9uOltbMCwyLDE2XSxbMCwyLAoyNF0sWzEsMiwxNl0sWzEsMiwyNF1dLG1lc3NhZ2VfYnViYmxlX3JpZ2h0OltbMCwxNCwyNF0sWzAsMTQsMzJdLFsxLDE0LDE2XSxbMSwxNCwyNF1dLG1lc3NhZ2VfYnViYmxlX3JpZ2h0X2NhcHRpb246W1sxLDEsMjRdXSxtaWM6W1swLDE0LDI0XSxbMSwxNCwyNF1dLG1pY19vZmY6W1sxLDIsMjRdXSxtaW5pcGxheWVyX2V4aXQ6W1sxLDEsMjRdXSxtb2JpbGU6W1swLDQsMjRdLFsxLDQsMjRdXSxtb2JpbGVfY2hlY2s6W1sxLDIsMjRdXSxtb2JpbGVfZG93bmxvYWQ6W1sxLDMsMjRdXSxtb2JpbGVfbGFuZHNjYXBlOltbMSwzLDI0XV0sbW9iaWxlX3NjcmVlbl9ob3Jpem9udGFsOltbMSwxLDI0XV0sbW9iaWxlX3NjcmVlbl92ZXJ0aWNhbDpbWzEsMSwyNF1dLG1vbmV5X2hhbmQ6W1sxLDIsMjRdXSxtb25pdG9yX2Rpc3BsYXk6W1swLDQsMTZdLFswLDQsMjRdLFsxLDQsMTZdLFsxLDQsMjRdXSxtb25pdG9yX2Rpc3BsYXlfb2ZmOltbMSwxLDI0XV0sbW9vbl96OltbMCwxLDI0XSxbMSwKMSwyNF1dLG1vdGlvbjpbWzEsMiwyNF1dLG1vdmU6W1sxLDQsMjRdXSxtdXNpYzpbWzAsNiwyNF0sWzEsNiwxNl0sWzEsNiwxOF0sWzEsNiwyNF1dLG11c2ljX29mZjpbWzEsMywyNF1dLG11c2ljX3NjaXNzb3JzOltbMSwzLDI0XV0sbXVzaWNfc2hhcGU6W1sxLDMsMjRdXSxtdXNpY192aWRlbzpbWzEsNCwyNF1dLG11c2ljX3ZpZGVvX29mZjpbWzEsMSwyNF1dLG15X3ZpZGVvczpbWzEsNiwyNF1dLG15X3ZpZGVvc19jYWlybzpbWzEsMiwyNF1dLG5ld3M6W1swLDMsMjRdLFsxLDMsMTJdLFsxLDMsMjRdXSxuZXdzX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sbm9kZV9sZWZ0OltbMSwyLDI0XV0sbm9kZV9yaWdodDpbWzEsMiwyNF1dLG5vdGU6W1swLDEsMTZdLFswLDEsMjRdLFsxLDEsMTZdLFsxLDEsMjRdXSxub3RlX2FkZDpbWzEsMSwxNl0sWzEsMSwyNF1dLG5vdGVfc3Bhcms6W1swLDIsMTZdLFswLDIsMjRdLFsxLDIsMTZdLFsxLDIsMjRdXSxvZG9tZXRlcjpbWzAsNCwyNF0sClsxLDQsMjRdXSxvcGVuX25ldzpbWzAsNywyNF0sWzEsNywxMl0sWzEsNywyNF1dLG92ZXJmbG93X2hvcml6b250YWw6W1sxLDYsMjRdLFsxLDYsMzJdXSxvdmVyZmxvd192ZXJ0aWNhbDpbWzEsMTMsMjRdXSxvdmVyZmxvd192ZXJ0aWNhbF9jYWlybzpbWzEsMSwyNF1dLHBhaW50X2J1Y2tldDpbWzEsMywyNF1dLHBhbGV0dGU6W1sxLDEsMjRdXSxwYW5lbHM6W1swLDIsMjRdLFsxLDIsMjRdXSxwYXBlcl9jb3JuZXJfZm9sZGVkOltbMCwyLDI0XSxbMSwyLDI0XV0scGFwZXJfb3Blbl9pbl9uZXc6W1swLDEsMjRdLFsxLDEsMjRdXSxwYXVzZTpbWzAsOSwyNF1dLHBhdXNlX2NpcmNsZTpbWzAsMiwxMl0sWzAsMiwxNl0sWzAsMiwyNF1dLHBkZjpbWzEsMiwyNF1dLHBlbmNpbDpbWzEsMTAsMTZdLFsxLDEwLDE4XSxbMSwxMCwyNF1dLHBlb3BsZTpbWzAsNiwxMl0sWzAsNiwyNF0sWzEsNiwyNF1dLHBlb3BsZV8yOltbMCwxLDI0XSxbMSwxLDI0XV0scGVvcGxlX2dyb3VwOltbMCw0LDI0XSwKWzEsNCwxNl0sWzEsNCwyNF1dLHBlb3BsZV9ub3RlOltbMCwxLDE4XSxbMCwxLDI0XSxbMSwxLDI0XV0scGVyc29uOltbMCw3LDEyXSxbMCw3LDEzXSxbMCw3LDE2XSxbMCw3LDI0XSxbMCw3LDQ4XSxbMSw3LDEzXSxbMSw3LDE2XSxbMSw3LDI0XV0scGVyc29uXzI6W1sxLDEsMjRdXSxwZXJzb25fYWNjb3VudDpbWzEsNiwyNF1dLHBlcnNvbl9hY2NvdW50X2NhaXJvOltbMSwxLDI0XV0scGVyc29uX2FkZDpbWzEsNywyNF1dLHBlcnNvbl9ib3g6W1sxLDUsMjRdXSxwZXJzb25fY2lyY2xlOltbMCwxMCwyNF0sWzEsMTAsMjRdXSxwZXJzb25fY2lyY2xlX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0scGVyc29uX2NpcmNsZV9zbGFzaDpbWzEsMiwyNF1dLHBlcnNvbl9taW51czpbWzAsMSwyNF0sWzEsMSwyNF1dLHBlcnNvbl9tdXNpYzpbWzAsNCwyNF0sWzEsNCwyNF1dLHBlcnNvbl9yYWRhcjpbWzAsNywxMl0sWzAsNywyNF0sWzEsNywxNl0sWzEsNywxOF0sWzEsNywyNF1dLHBlcnNvbl9zZXR0aW5nOltbMSwKNiwyNF1dLHBlcnNvbl9zaGllbGQ6W1sxLDgsMjRdXSxwZXJzb25fc3F1YXJlX3NwYXJrOltbMCwxLDI0XSxbMSwxLDI0XV0scGVyc29uX3dhdmVmb3JtOltbMSwyLDI0XV0scGhvbmU6W1swLDMsMjRdLFsxLDMsMjRdXSxwaWN0dXJlX2luX3BpY3R1cmU6W1swLDIsMjRdLFsxLDIsMjRdXSxwaWN0dXJlX2luX3BpY3R1cmVfY29tYmluZTpbWzEsMSwyNF1dLHBpbjpbWzAsNywxMl0sWzAsNywyNF0sWzEsNywxNl0sWzEsNywyNF1dLHBpbl9vZmY6W1sxLDEsMjRdXSxwbGF5X2Fycm93OltbMCw3LDI0XSxbMSw3LDI0XV0scGxheV9hcnJvd19jaXJjbGU6W1swLDIsMjRdLFsxLDIsMjRdXSxwbGF5X2Fycm93X2Rpc2FibGVkOltbMCwxLDEyXSxbMCwxLDI0XV0scGxheV9hcnJvd19oYWxmX2NpcmNsZTpbWzAsNSwyNF0sWzEsNSwyNF1dLHBvZGNhc3Q6W1swLDYsMjRdLFsxLDYsMTJdLFsxLDYsMTZdLFsxLDYsMThdLFsxLDYsMjRdXSxwb2RjYXN0X2FkZDpbWzAsMiwyNF0sWzEsMiwyNF1dLApwb2RjYXN0X2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0scG9kY2FzdF9jaGVjazpbWzAsMiwyNF1dLHBvaW50XzJ4OltbMSwxLDI0XV0scG9pbnRfM3g6W1sxLDMsMjRdXSxwb2ludF81eDpbWzEsMywyNF1dLHBvaW50Xzh4OltbMSwxLDI0XV0scG9sbDpbWzEsMTAsMTZdLFsxLDEwLDI0XSxbMSwxMCw0MF1dLHBvdW5kOltbMSwzLDI0XV0scHJlc2VudGF0aW9uOltbMSwzLDI0XV0scHJlc2VudGF0aW9uX3JlbW92ZTpbWzEsMSwyNF1dLHByaWNlX3RhZzpbWzAsOCwxMl0sWzAsOCwyNF0sWzEsOCwyNF1dLHByaWNlX3RhZ19oZWFydDpbWzEsMiwyNF1dLHFyX2NvZGU6W1sxLDMsMjRdXSxxdWVzdGlvbl9jaXJjbGU6W1sxLDUsMjRdXSxxdWVzdGlvbl9jaXJjbGVfY2Fpcm86W1sxLDIsMjRdXSxxdWVzdGlvbl9oZWFkOltbMSwyLDI0XV0scXVvdGF0aW9uX21hcms6W1swLDEsMjRdLFsxLDEsMjRdXSxxdW90YXRpb25fbWFya19vZmY6W1sxLDEsMjRdXSxyYWRhcl9saXZlOltbMCw3LDI0XSwKWzEsNywxMl0sWzEsNywxNl0sWzEsNywyNF1dLHJhZGFyX2xpdmVfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxyYXRpbmdfZG93bjpbWzEsMSwyNF1dLHJhdGluZ191cDpbWzEsNywxMl0sWzEsNywxNl0sWzEsNywyNF1dLHJlY29yZDpbWzAsMiwyNF1dLHJlbWl4OltbMSwyLDE2XSxbMSwyLDI0XV0scmVwbGF5X2Fycm93OltbMSwxLDI0XV0scm90YXRlXzkwOltbMSwxLDI0XV0scm90YXRlXzkwX2Nsb2Nrd2lzZTpbWzEsMiwyNF1dLHJzczpbWzEsMiwxNl0sWzEsMiwyNF1dLHJzc19vZmY6W1sxLDEsMTZdLFsxLDEsMjRdXSxydWJ5OltbMSwyLDEyXSxbMSwyLDE2XSxbMSwyLDE4XSxbMSwyLDI0XV0sc2FtcGxlczpbWzAsMiwyNF0sWzEsMiwyNF1dLHNhdHVyYXRpb246W1sxLDIsMjRdXSxzY2FsZTpbWzEsNCwyNF1dLHNjaXNzb3JzOltbMCw4LDEyXSxbMCw4LDI0XSxbMSw4LDI0XV0sc2Npc3NvcnNfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxzY2lzc29yc19jdXQ6W1sxLDQsCjE2XSxbMSw0LDE4XSxbMSw0LDI0XV0sc2NyZWVuX2RlZmF1bHQ6W1swLDEsMjRdLFswLDEsNDhdLFsxLDEsMjRdLFsxLDEsNDhdXSxzY3JlZW5fZnVsbDpbWzEsNywyNF1dLHNjcmVlbl9mdWxsX2NhaXJvOltbMSwxLDI0XV0sc2NyZWVuX2Z1bGxfZXhpdDpbWzEsNiwyNF1dLHNjcmVlbl9mdWxsX2V4aXRfY2Fpcm86W1sxLDEsMjRdXSxzY3JlZW5fZnVsbHNjcmVlbjpbWzAsMSwyNF0sWzAsMSw0OF0sWzEsMSwyNF0sWzEsMSw0OF1dLHNjcmVlbl9saWdodDpbWzEsMSwyNF1dLHNjcmVlbl9taW5pX3BsYXllcjpbWzAsMSwyNF0sWzAsMSw0OF0sWzEsMSwyNF0sWzEsMSw0OF1dLHNjcmVlbl9tdWx0aV92aWV3OltbMCwzLDI0XSxbMSwzLDI0XV0sc2NyZWVuX3JvdGF0aW9uOltbMSwyLDE4XSxbMSwyLDI0XV0sc2NyZWVuX3N3aXRjaDpbWzAsMSwyNF0sWzEsMSwyNF1dLHNjcmVlbl90aGVhdHJlOltbMCwxLDI0XSxbMCwxLDQ4XSxbMSwxLDI0XSxbMSwxLDQ4XV0sc2NyZWVuX3ZlcnRpY2FsOltbMSwKMSwyNF1dLHNjcmVlbl94OltbMSwyLDI0XV0sc2Q6W1swLDMsMjRdLFsxLDMsMjRdXSxzZWFyY2g6W1swLDE1LDI0XSxbMSwxNSwyNF1dLHNlYXJjaF9jYWlybzpbWzEsMiwyNF1dLHNlYXJjaF9zdXBlcnNjcmlwdDpbWzEsMSwyNF1dLHNlbmQ6W1swLDcsMTgsITBdLFswLDcsMjQsITBdLFsxLDcsMTgsITBdLFsxLDcsMjQsITBdXSxzZXR0aW5nc19yZW1vdGU6W1sxLDEsMjRdXSxzaGFkb3dfaGFyZDpbWzAsMywyNF1dLHNoYWRvd19zb2Z0OltbMCwzLDI0XV0sc2hhcGVzOltbMCwzLDI0XSxbMSwzLDI0XV0sc2hhcmU6W1swLDEyLDI0LCEwXSxbMCwxMiwzMiwhMF0sWzEsMTIsMTYsITBdLFsxLDEyLDI0LCEwXV0sc2hhcmVfY2Fpcm86W1sxLDIsMjRdXSxzaGFyZV9pb3M6W1sxLDIsMjRdXSxzaGFyZV9saW5rOltbMCwxLDI0XSxbMSwxLDI0XV0sc2hpZWxkOltbMSw2LDI0XV0sc2hpZWxkX2FkZDpbWzEsMiwyNF1dLHNoaWVsZF9jaGVjazpbWzEsMSwyNF1dLHNoaWVsZF9lbXB0eTpbWzAsCjEsMTZdLFswLDEsMThdLFswLDEsMjRdLFsxLDEsMTZdLFsxLDEsMThdLFsxLDEsMjRdXSxzaGllbGRfb2ZmOltbMSwxLDI0XV0sc2hpZWxkX292ZXJmbG93OltbMSwyLDI0XV0sc2hpZWxkX3BsdXM6W1sxLDEsMjRdXSxzaGllbGRfc2VhcmNoOltbMSwyLDI0XV0sc2hvcnRzX2xheW91dF9ib3R0b206W1sxLDEsMjRdXSxzaG9ydHNfbGF5b3V0X2NlbnRlcmVkX3NxdWFyZTpbWzEsMSwyNF1dLHNob3J0c19sYXlvdXRfZm9yZWdyb3VuZDpbWzEsMSwyNF1dLHNob3J0c19sYXlvdXRfbGFuZHNjYXBlX2JvdHRvbTpbWzEsMSwyNF1dLHNob3J0c19sYXlvdXRfbGFuZHNjYXBlX3RvcDpbWzEsMSwyNF1dLHNob3J0c19sYXlvdXRfbGVmdDpbWzEsMSwyNF1dLHNob3J0c19sYXlvdXRfcGlwOltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF9yaWdodDpbWzEsMSwyNF1dLHNob3J0c19sYXlvdXRfc2luZ2xlOltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF90b3A6W1sxLDEsMjRdXSxza2lwX2JhY2tfMTA6W1swLAoxLDI0XV0sc2tpcF9iYWNrXzE1OltbMCwxLDI0XV0sc2tpcF9iYWNrXzIwOltbMCwxLDI0XV0sc2tpcF9iYWNrXzMwOltbMCwxLDI0XV0sc2tpcF9iYWNrXzU6W1swLDEsMjRdXSxza2lwX2JhY2tfNjA6W1swLDEsMjRdXSxza2lwX2Rvd246W1swLDYsMjRdXSxza2lwX2ZvcndhcmRfMTA6W1swLDEsMjRdXSxza2lwX2ZvcndhcmRfMTU6W1swLDEsMjRdXSxza2lwX2ZvcndhcmRfMjA6W1swLDEsMjRdXSxza2lwX2ZvcndhcmRfMzA6W1swLDEsMjRdXSxza2lwX2ZvcndhcmRfNTpbWzAsMSwyNF1dLHNraXBfZm9yd2FyZF82MDpbWzAsMSwyNF1dLHNraXBfbmV4dDpbWzAsNywyNF1dLHNraXBfcHJldmlvdXM6W1swLDYsMjRdXSxza2lwX3VwOltbMCw2LDI0XV0sc2xhc2hfY2lyY2xlX2xlZnQ6W1sxLDcsMjRdXSxzbGFzaF9jaXJjbGVfcmlnaHQ6W1sxLDIsMjRdXSxzb2NjZXJfYmFsbDpbWzEsMywyNF1dLHNvY2Nlcl9jYXJkOltbMCwyLDEyXSxbMCwyLDE2XSxbMCwyLDI0XV0sc3BhY2ViYXI6W1sxLAoyLDI0XV0sc3Bhcms6W1swLDExLDEyXSxbMCwxMSwxNl0sWzAsMTEsMjRdLFsxLDExLDI0XV0sc3BhcmtfY2hhdDpbWzEsMSwxNl0sWzEsMSwyNF1dLHNwYXJrX2ltYWdlOltbMSwyLDI0XV0sc3BhcmtfbGlnaHRidWxiOltbMCwzLDI0XSxbMSwzLDI0XV0sc3BhcmtfbWVzc2FnZV9idWJibGU6W1sxLDQsMTZdLFsxLDQsMjRdXSxzcGFya19tZXNzYWdlX2J1YmJsZV9sZWZ0OltbMSwxLDI0XV0sc3BhcmtfbXVzaWM6W1sxLDIsMjRdXSxzcGFya19wZW5jaWw6W1sxLDIsMjRdXSxzcGFya19yYWRhcjpbWzAsMSwxMl0sWzAsMSwxNl0sWzAsMSwyNF0sWzEsMSwxMl0sWzEsMSwxNl0sWzEsMSwyNF1dLHNwYXJrX3RleHQ6W1sxLDEsMjRdXSxzcGFya192aWRlbzpbWzEsMiwyNF1dLHNwYXJrbGU6W1swLDQsMjRdLFsxLDQsMjRdXSxzcGVha2VyOltbMSwyLDI0XV0sc3BlYWtlcl9ncm91cDpbWzEsMSwyNF1dLHNwZWFrZXJfZ3JvdXBfb2ZmOltbMSwxLDI0XV0sc3BlYWtlcl9oZWFkc2V0OltbMSwKMiwyNF1dLHNwZWFrZXJfb2ZmOltbMSwxLDI0XV0sc3BsaXQ6W1sxLDQsMjRdXSxzcG9ydHM6W1swLDEsMjRdXSxzcG90bGlnaHQ6W1swLDMsMjRdLFsxLDMsMjRdXSxzdGFyOltbMCw2LDEyXSxbMCw2LDE2XSxbMCw2LDI0XSxbMSw2LDEyXSxbMSw2LDE2XSxbMSw2LDI0XV0sc3Rhcl9jaXJjbGU6W1swLDYsMTJdLFswLDYsMTZdLFswLDYsMThdLFswLDYsMjRdXSxzdGFyX2NpcmNsZV9yaWJib246W1swLDEsMTZdLFswLDEsMjBdLFswLDEsMjRdLFswLDEsMzZdLFsxLDEsMTZdLFsxLDEsMjBdLFsxLDEsMjRdLFsxLDEsMzZdXSxzdGFyX2hhbGY6W1swLDMsMTJdLFswLDMsMTZdLFswLDMsMjRdXSxzdGFyX3Nob290aW5nOltbMCwzLDI0XSxbMSwzLDI0XV0sc3RhdGlzdGljc19ncmFwaDpbWzEsMiwyNF1dLHN0aWNrZXI6W1sxLDMsMjRdXSxzdG9wOltbMCw2LDI0XSxbMCw2LDM2XV0sc3RvcHdhdGNoOltbMCw1LDE2XSxbMCw1LDI0XSxbMSw1LDE2XSxbMSw1LDI0XV0sc3RvcHdhdGNoXzEwOltbMCwKMSwyNF1dLHN0b3B3YXRjaF8zOltbMCwxLDI0XV0sc3Vic2NyaXB0aW9uczpbWzAsMTIsMjRdLFsxLDEyLDE4XSxbMSwxMiwyNF1dLHN1YnNjcmlwdGlvbnNfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxzdWJ0aXRsZXM6W1swLDUsMTJdLFswLDUsMjRdLFsxLDUsMjRdXSxzdXBlcl9jaGF0OltbMSw4LDE4XSxbMSw4LDI0XV0sc3VwZXJfc3RpY2tlcjpbWzAsOCwxNl0sWzAsOCwyNF0sWzEsOCwxNl0sWzEsOCwyNF1dLHN1cGVyX3N0b3JlOltbMSwzLDI0XV0sc3VwZXJzdGFyOltbMSwxLDI0XV0sdGFibGV0OltbMSwxLDI0XV0sdGFyZ2V0OltbMCwyLDI0XSxbMSwyLDE2XSxbMSwyLDI0XV0sdGFyZ2V0X2FkZDpbWzAsMiwyNF0sWzEsMiwxNl0sWzEsMiwyNF1dLHRlbXBsYXRlX2FkZDpbWzEsMywxNl0sWzEsMywyNF1dLHRlbXBsYXRlX3BsYXk6W1swLDMsMjRdLFsxLDMsMjRdXSx0ZXh0OltbMCw5LDI0XSxbMSw5LDE2XSxbMSw5LDE4XSxbMSw5LDI0XV0sdGV4dF9iZWxsX2NhaXJvOltbMSwKMSwxMl0sWzEsMSwxNl0sWzEsMSwxOF0sWzEsMSwyNF1dLHRleHRfYm9sZDpbWzEsMSwyNF1dLHRleHRfYm94OltbMSw1LDI0XV0sdGV4dF9pdGFsaWM6W1sxLDEsMjRdXSx0ZXh0X291dGxpbmU6W1sxLDIsMjRdXSx0ZXh0X3ByZXNldDpbWzEsMSwyNF1dLHRleHRfc2VyaWY6W1sxLDEsMjRdXSx0ZXh0X3NoYWRvdzpbWzEsMiwyNF1dLHRleHRfc3RyaWtldGhyb3VnaDpbWzEsMSwyNF1dLHRleHRfdW5kZXJsaW5lOltbMSwxLDI0XV0sdGhlbWVfc3dpdGNoOltbMCwxLDI0XSxbMSwxLDI0XV0sdGhlcm1vbWV0ZXI6W1sxLDIsMjRdXSx0aHVtYl9kb3duOltbMCwyNSwxNl0sWzAsMjUsMjRdLFswLDI1LDM2XSxbMSwyNSwxNl0sWzEsMjUsMjRdLFsxLDI1LDM2XV0sdGh1bWJfdXA6W1swLDI0LDE2XSxbMCwyNCwyNF0sWzAsMjQsMzZdLFsxLDI0LDE2XSxbMSwyNCwyNF0sWzEsMjQsMzZdXSx0aHVtYl91cF9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLHRodW1iX3VwX2Rvd246W1swLDQsCjI0XSxbMSw0LDI0XV0sdGljX3RhY190b2U6W1swLDQsMTJdLFswLDQsMjRdLFsxLDQsMTZdLFsxLDQsMjRdXSx0aWNfdGFjX3RvZV9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLHRpY2tldF9zdGFyOltbMSwxLDI0XV0sdGlsdDpbWzEsNCwyNF1dLHRpbWVfc3RhbXBfcGx1czpbWzEsMSwyNF1dLHRpbWVsaW5lOltbMSwzLDI0XV0sdG9vbGJveDpbWzEsNCwyNF1dLHRyYW5zY3JpcHQ6W1sxLDIsMTZdLFsxLDIsMjRdXSx0cmFuc2NyaXB0X3NlYXJjaDpbWzEsMSwxNl0sWzEsMSwyNF1dLHRyYW5zaXRpb246W1swLDUsMjRdLFsxLDUsMjRdXSx0cmFuc2xhdGU6W1sxLDQsMTZdLFsxLDQsMjRdXSx0cmFzaF9jYW46W1sxLDEwLDE2XSxbMSwxMCwxOF0sWzEsMTAsMjRdXSx0cmlhbmdsZV9kb3duOltbMSw4LDI0XV0sdHJpYW5nbGVfdGhyZWVfbGVmdDpbWzAsMSwyNF1dLHRyaWFuZ2xlX3RocmVlX3JpZ2h0OltbMCwxLDI0XV0sdHJvcGh5OltbMCwzLDI0XSxbMSwzLDI0XV0sdHJvcGh5X2NhaXJvOltbMCwKMiwyNF0sWzEsMiwyNF1dLHRyb3BoeV9zdGFyOltbMSwxLDI0XV0sdHJ1Y2s6W1swLDUsMjRdLFsxLDUsMjRdXSx0djpbWzAsOCwxMl0sWzAsOCwxNl0sWzAsOCwyNF0sWzEsOCwxNl0sWzEsOCwyNF1dLHR2X2Fycm93X2xlZnQ6W1sxLDIsMjRdXSx0dl9jaXJjbGU6W1swLDMsMjRdLFsxLDMsMjRdXSx0dl9kb2xsYXJfc2lnbjpbWzAsMSwyNF0sWzEsMSwyNF1dLHR2X29mZjpbWzEsMiwyNF1dLHR2X3F1ZXVlOltbMSw0LDI0XV0sdHZfcXVldWVfY2hldnJvbjpbWzEsMiwyNF1dLHVwbG9hZDpbWzEsNSwyNF1dLHVwbG9hZGluZzpbWzEsMSwyNF1dLHZhcmlhYmxlOltbMSw0LDI0XV0sdmVyaWZpZWRfY2lyY2xlOltbMSw0LDI0XV0sdmlkZW9fY2FtZXJhOltbMCw5LDI0XSxbMSw5LDI0XV0sdmlkZW9fY2FtZXJhX2FkZDpbWzEsMiwyNF1dLHZpZGVvX2NhbWVyYV9vZmY6W1sxLDEsMjRdXSx2aWRlb19saW5rOltbMSw1LDE2XSxbMSw1LDI0XV0sdmlkZW9fcmV2ZXJzZTpbWzEsMSwyNF1dLAp2aWRlb19zcGFyazpbWzEsMiwyNF1dLHZpZGVvX3N0aXRjaDpbWzEsMiwyNF1dLHZpZGVvX3dhdmVmb3JtOltbMSwxLDI0XV0sdm9sdW1lX2Rvd246W1swLDIsMjRdLFsxLDIsMjRdXSx2b2x1bWVfZmFkZTpbWzEsMiwyNF1dLHZvbHVtZV9vZmY6W1swLDQsMjRdLFsxLDQsMjRdXSx2b2x1bWVfb246W1swLDMsMjRdLFsxLDMsMjRdXSx2b2x1bWVfc3RhYmxlOltbMCwxLDI0XSxbMSwxLDI0XV0sdnI6W1swLDcsMjRdLFsxLDcsMjRdXSx3YXZlZm9ybTpbWzEsMywyNF1dLHdhdmVmb3JtX211c2ljOltbMCwyLDE4XSxbMCwyLDI0XSxbMCwyLDQ4XV0sd2F2ZWZvcm1fc3Bhcms6W1sxLDIsMjRdXSx3cmVuY2g6W1swLDMsMjRdLFsxLDMsMjRdXSx4OltbMSwxMSwxOF0sWzEsMTEsMjRdXSx4X2NhaXJvOltbMSwxLDI0XV0seF9jaXJjbGU6W1swLDksMjRdLFsxLDksMjRdXSx4X21hcms6W1sxLDQsMjBdLFsxLDQsMjRdXSx4X29jdGFnb246W1sxLDMsMjRdXSx5ZW5fc2lnbl9jb250YWluZXI6W1swLAoyLDI0XSxbMSwyLDI0XV0seW91dHViZV9pbXByb3ZlX3R2OltbMSwxLDI0XV0seW91dHViZV9raWRzOltbMCw1LDI0XSxbMSw1LDI0XV0seW91dHViZV9sYWJzOltbMCwxLDI0XV0seW91dHViZV9saW5rZWRfdHY6W1sxLDQsMjRdXSx5b3V0dWJlX2xvZ29faWNvbjpbWzAsNiwyNF0sWzEsNiwyNF1dLHlvdXR1YmVfbWl4OltbMSw1LDEyXSxbMSw1LDE2XSxbMSw1LDI0XV0seW91dHViZV9tdXNpYzpbWzAsNywyNF0sWzEsNywyNF1dLHlvdXR1YmVfbXVzaWNfY2Fpcm86W1sxLDIsMjRdXSx5b3V0dWJlX29yaWdpbmFsczpbWzAsNiwyNF0sWzEsNiwyNF1dLHlvdXR1YmVfc2hvcnRzOltbMCwxMSwxMl0sWzAsMTEsMjBdLFswLDExLDI0XSxbMSwxMSwyMF0sWzEsMTEsMjRdXSx5b3V0dWJlX3Nob3J0c19hcnJvd19kb3duOltbMSwxLDI0XV0seW91dHViZV9zaG9ydHNfYXJyb3dfbGVmdDpbWzEsMiwyNF1dLHlvdXR1YmVfc2hvcnRzX2Fycm93X3VwOltbMSwxLDI0XV0seW91dHViZV9zaG9ydHNfY2Fpcm86W1swLAoyLDI0XSxbMSwyLDI0XV0seW91dHViZV9zaG9ydHNfY2FtZXJhOltbMSwzLDI0XV0seW91dHViZV9zaG9ydHNfY2hldnJvbl9sZWZ0X2lvczpbWzEsMiwyNF1dLHlvdXR1YmVfc2hvcnRzX2dyZWVuX3NjcmVlbjpbWzAsMSwyNF0sWzEsMSwyNF1dLHlvdXR1YmVfc2hvcnRzX2hlYXJ0OltbMCwyLDI0XSxbMCwyLDMyXV0seW91dHViZV9zaG9ydHNfbWVzc2FnZV9idWJibGVfcmlnaHQ6W1swLDIsMjRdLFswLDIsMzJdXSx5b3V0dWJlX3Nob3J0c19ub190cmlhbmdsZTpbWzAsNCwxNl0sWzAsNCwyNF0sWzAsNCwzMl0sWzEsNCwxNl0sWzEsNCwyNF0sWzEsNCwzMl1dLHlvdXR1YmVfc2hvcnRzX292ZXJmbG93X3ZlcnRpY2FsOltbMSwyLDI0XV0seW91dHViZV9zaG9ydHNfcGx1czpbWzEsNSwxNl0sWzEsNSwyNF1dLHlvdXR1YmVfc2hvcnRzX3JlbWl4OltbMCwyLDI0XSxbMCwyLDMyXV0seW91dHViZV9zaG9ydHNfc2VhcmNoOltbMSwzLDI0XV0seW91dHViZV9zaG9ydHNfc2hhcmU6W1swLAoyLDI0XSxbMCwyLDMyXV0seW91dHViZV9zaG9ydHNfc3RpY2tlcjpbWzEsMSwxOF0sWzEsMSwyNF1dLHlvdXR1YmVfc2hvcnRzX3RodW1iX2Rvd246W1swLDIsMjRdLFswLDIsMzJdXSx5b3V0dWJlX3Nob3J0c190aHVtYl91cDpbWzAsMiwyNF0sWzAsMiwzMl1dLHlvdXR1YmVfc2hvcnRzX3dhdmVmb3JtOltbMSwyLDE4XSxbMSwyLDI0XV0seW91dHViZV9zdHVkaW86W1swLDgsMjRdLFsxLDgsMjRdXSx5b3V0dWJlX3R2OltbMCw4LDI0XSxbMSw4LDI0XV0sem9vbV9hdXRvOltbMCwyLDI0XSxbMSwyLDI0XV19O3ZhciBXcWE9e2FjY2Vzc2liaWxpdHk6W1swLDQsMjRdLFsxLDQsMjRdXSxhY2NvdW50X2xpbms6W1swLDgsMjRdLFsxLDgsMjRdXSxhY2NvdW50X2xpbmtfZXJyb3I6W1sxLDYsMjRdXSxhZGQ6W1sxLDksMThdLFsxLDksMjRdXSxhZGRfY2lyY2xlOltbMCw2LDE4XSxbMCw2LDI0XSxbMSw2LDI0XSxbMSw2LDM2XV0sYWRkX3NxdWFyZV9zdGFjazpbWzEsMSwyNF1dLGFkZF90djpbWzEsMSwyNF1dLGFkZF90dl9jaGV2cm9uX3JpZ2h0OltbMSwxLDI0XV0sYWRqdXN0OltbMCw5LDI0XSxbMSw5LDI0XV0sYWlycGxhbmU6W1swLDUsMjRdLFswLDUsNDhdLFsxLDUsMjRdXSxhaXJwbGF5OltbMSw2LDI0XV0sYWlycGxheV9zbGFzaDpbWzEsMSwyNF1dLGFsYnVtOltbMCw4LDI0XSxbMSw4LDE4XSxbMSw4LDI0XSxbMSw4LDQ4XV0sYWxlcnRfYnViYmxlOltbMSwyLDE4XSxbMSwyLDI0XV0sYWxlcnRfY2lyY2xlOltbMCwxMSwyNF0sWzEsMTEsMTJdLFsxLDExLDI0XSxbMSwxMSw0OF1dLGFsZXJ0X29jdGFnb246W1swLAoyLDI0XSxbMSwyLDI0XV0sYWxlcnRfdHJpYW5nbGU6W1swLDEwLDEyXSxbMCwxMCwyNF0sWzAsMTAsNDhdLFsxLDEwLDI0XV0sYW1iaWVudF9tb2RlOltbMSwxLDI0XV0sYW1wZXJzYW5kOltbMSwxLDI0XV0sYXBpOltbMCwyLDI0XSxbMSwyLDI0XV0sYXJjaGl2ZTpbWzEsMSwyNF1dLGFycm93X2FyY19mb3J3YXJkOltbMSwxLDI0XV0sYXJyb3dfY2xvY2t3aXNlOltbMSwxLDI0XV0sYXJyb3dfY291bnRlcmNsb2Nrd2lzZTpbWzEsMiwyNF0sWzEsMiw0OF1dLGFycm93X2NvdW50ZXJjbG9ja3dpc2VfZGFzaGVkOltbMSwxLDI0XV0sYXJyb3dfZG93bjpbWzEsMywyNF1dLGFycm93X2Rvd25fY2lyY2xlOltbMCw0LDI0XSxbMSw0LDI0XV0sYXJyb3dfZG93bl9jaXJjbGVfc2xhc2g6W1swLDEsMjRdLFsxLDEsMjRdXSxhcnJvd19kb3duX3JpZ2h0OltbMSwxLDI0XV0sYXJyb3dfZmxpcDpbWzEsMTAsMjRdXSxhcnJvd19pbjpbWzEsOCwxOF0sWzEsOCwyNF1dLGFycm93X2xlZnQ6W1sxLDgsCjI0LCEwXSxbMSw4LDM2LCEwXV0sYXJyb3dfbWVyZ2U6W1sxLDIsMjRdXSxhcnJvd19vdXQ6W1sxLDIsMjRdXSxhcnJvd19yaWdodDpbWzEsMywyNCwhMF1dLGFycm93X3JpZ2h0X3JlY3RhbmdsZTpbWzAsMiwyNF0sWzEsMiwyNF1dLGFycm93X3NvbGlkX2Rvd246W1swLDQsMThdLFswLDQsMjRdLFsxLDQsMThdLFsxLDQsMjRdXSxhcnJvd19zb2xpZF91cDpbWzAsNCwxOF0sWzAsNCwyNF0sWzEsNCwxOF0sWzEsNCwyNF1dLGFycm93X3NwbGl0OltbMSwzLDI0XV0sYXJyb3dfc3BsaXRfYWxlcnQ6W1sxLDEsMjRdXSxhcnJvd19zd2FwX2hvcml6b250YWw6W1sxLDUsMjRdXSxhcnJvd190cmVuZF9kb3duOltbMSwxLDI0XV0sYXJyb3dfdHJlbmRfdXA6W1sxLDIsMTJdLFsxLDIsMjRdXSxhcnJvd190dXJuX2Rvd25fcmlnaHQ6W1sxLDIsMThdLFsxLDIsMjRdXSxhcnJvd191cDpbWzEsMywyNF1dLGFycm93X3VwX2NpcmNsZTpbWzAsNCwyNF0sWzEsNCwyNF1dLGFycm93X3VwX2xlZnQ6W1sxLAoxLDI0XV0sYXJyb3dfdXBfcmVjdGFuZ2xlX3BvcnRyYWl0OltbMSwxLDI0XV0sYXJyb3dfdXBfcmlnaHQ6W1sxLDIsMThdLFsxLDIsMjRdLFsxLDIsMzZdXSxhc3BlY3RfcmF0aW9fdzE2X2g5OltbMSwxLDI0XV0sYXNwZWN0X3JhdGlvX3c5X2gxNjpbWzEsMSwyNF1dLGF1ZGlvOltbMCwxNCwxMl0sWzAsMTQsMThdLFswLDE0LDI0XSxbMSwxNCwxMl0sWzEsMTQsMThdLFsxLDE0LDI0XSxbMSwxNCw0OF1dLGF1ZGlvX2Fycm93X2ZsaXA6W1swLDIsMjRdLFsxLDIsMjRdXSxhdWRpb19iYWRnZTpbWzAsMywyNF0sWzEsMywyNF1dLGF1ZGlvX3NjaXNzb3JzOltbMSwxLDI0XV0sYXVkaW9fc2xhc2g6W1swLDIsMjRdLFsxLDIsMjRdXSxhdWRpb19zcGFyazpbWzEsMSwyNF1dLGF1ZGlvX3NxdWFyZV9zdGFjazpbWzAsMiwyNF0sWzEsMiwyNF1dLGF1ZGlvX3N0YWZmOltbMCwyLDI0XSxbMSwyLDI0XV0sYmFja3NwYWNlOltbMCw1LDI0XSxbMSw1LDI0XV0sYmFnOltbMCw3LDI0XSxbMSw3LDI0XV0sCmJhZ19ib29rbWFyazpbWzEsMiwyNF1dLGJhc2tldGJhbGw6W1swLDIsMjRdLFsxLDIsMjRdXSxiZWFrZXI6W1sxLDIsMjRdXSxiZWQ6W1swLDEsMjRdLFswLDEsNDhdLFsxLDEsMjRdLFsxLDEsNDhdXSxiZWxsOltbMCwxMSwyNF0sWzEsMTEsMjRdXSxiZWxsX3NsYXNoOltbMSwxLDI0XV0sYmVsbF93YXZlczpbWzAsMiwyNF0sWzEsMiwyNF1dLGJsdXI6W1sxLDIsMjRdXSxib29rOltbMCwzLDI0XSxbMSwzLDI0XV0sYm9va19hdWRpbzpbWzEsMSwyNF1dLGJvb2ttYXJrOltbMCwxMCwxOF0sWzAsMTAsMjRdLFsxLDEwLDE4XSxbMSwxMCwyNF1dLGJyaWVmY2FzZTpbWzEsMiwyNF1dLGJyaWVmY2FzZV9zbGFzaDpbWzAsMywyNF0sWzEsMywyNF1dLGJyaWdodG5lc3M6W1swLDMsMjRdLFsxLDMsMjRdXSxicm93c2VyOltbMCwyLDI0XSxbMSwyLDI0XV0sYnJvd3Nlcl9zbGFzaDpbWzEsMSwyNF1dLGJ1YmJsZTpbWzEsMSwyNF1dLGJ1YmJsZV9hc3RlcmlzazpbWzAsMiwyNF0sWzEsMiwyNF1dLApidWJibGVfZWxsaXBzaXM6W1sxLDEsMjRdXSxidWJibGVfZ2VhcjpbWzEsMSwyNF1dLGJ1YmJsZV9saXN0OltbMSwxLDI0XV0sYnViYmxlX3BlbmNpbDpbWzEsMSwyNF1dLGJ1YmJsZV9zbGFzaDpbWzAsMiwyNF0sWzEsMiwyNF1dLGJ1YmJsZV9zbG93OltbMCwyLDI0XSxbMCwyLDQ4XSxbMSwyLDI0XSxbMSwyLDQ4XV0sYnViYmxlX3NwYXJrOltbMSwxLDI0XV0sYnViYmxlX3NwYXJrbGVzOltbMSwxLDI0XV0sYnViYmxlX3N0YWNrOltbMCwyLDI0XSxbMSwyLDI0XV0sYnVnOltbMCw0LDE4XSxbMCw0LDI0XSxbMSw0LDI0XV0sYnVzaW5lc3M6W1swLDQsMjRdLFsxLDQsMjRdXSxjYWJsZTpbWzEsMiwyNF1dLGNhbGN1bGF0b3I6W1swLDMsMjRdLFsxLDMsMjRdXSxjYWxlbmRhcjpbWzAsNCwyNF0sWzEsNCwyNF1dLGNhbGVuZGFyX2V2ZW50OltbMCwyLDI0XSxbMSwyLDI0XV0sY2FsZW5kYXJfdG9kYXk6W1sxLDEsMjRdXSxjYW1lcmE6W1swLDEwLDI0XSxbMSwxMCwxOF0sWzEsMTAsMjRdXSwKY2FtZXJhX2F1ZGlvOltbMSw1LDI0XV0sY2FtZXJhX2ZsaXA6W1sxLDQsMjRdXSxjYW1lcmFfaGFzaHRhZzpbWzEsNSwyNF1dLGNhbWVyYV9zcGFya2xlczpbWzEsMSwyNF1dLGNhbWVyYV9zd2l0Y2g6W1swLDMsMjRdLFsxLDMsMjRdXSxjYXJkOltbMCwzLDI0XV0sY2FydDpbWzAsNCwyNF0sWzEsNCwyNF1dLGNhcnRfYWRkOltbMSwxLDI0XV0sY2FydF9zcGFyazpbWzEsMSwyNF1dLGNhdDpbWzAsMywyNF0sWzEsMywyNF1dLGNlbGVicmF0aW9uOltbMSwyLDI0XV0sY2hhcnRfYmFyOltbMSwyLDEyXSxbMSwyLDI0XV0sY2hhcnRfYmFyX3NlYXJjaDpbWzAsMiwyNF0sWzEsMiwyNF1dLGNoYXJ0X2Jhcl9zcXVhcmU6W1swLDMsMjRdLFsxLDMsMThdLFsxLDMsMjRdXSxjaGFydF9saW5lOltbMSwxLDI0XV0sY2hhcnRfcGllOltbMCwyLDI0XSxbMSwyLDI0XV0sY2hhcnRfc2NhdHRlcl9wbG90OltbMSwxLDI0XV0sY2hlY2s6W1sxLDEzLDEyXSxbMSwxMywxOF0sWzEsMTMsMjRdLFsxLDEzLAozNl1dLGNoZWNrX2NpcmNsZTpbWzAsMTAsMjRdLFsxLDEwLDI0XV0sY2hlY2tfZG9uZTpbWzEsMSwyNF1dLGNoZWNrX2RvbmVfc2xhc2g6W1sxLDEsMjRdXSxjaGVja19zaGllbGQ6W1sxLDEsMjRdXSxjaGVja19zcXVhcmU6W1swLDIsMjRdLFsxLDIsMjRdXSxjaGVja19zcXVhcmVfc3RhY2s6W1swLDEsMjRdXSxjaGV2cm9uX2NvbGxhcHNlOltbMSwzLDI0XV0sY2hldnJvbl9kb3duOltbMSw5LDE4XSxbMSw5LDI0XV0sY2hldnJvbl9kb3duX2NpcmNsZTpbWzAsMywyNF0sWzEsMywyNF1dLGNoZXZyb25fZG93bl9lbmQ6W1sxLDEsMjRdXSxjaGV2cm9uX2V4cGFuZDpbWzEsNSwyNF1dLGNoZXZyb25fbGVmdDpbWzEsOSwyNCwhMF1dLGNoZXZyb25fbGVmdF9jaXJjbGU6W1swLDMsMjRdLFsxLDMsMjRdXSxjaGV2cm9uX2xlZnRfZW5kOltbMSwxLDI0XV0sY2hldnJvbl9sZWZ0X2lvczpbWzEsMywyNF1dLGNoZXZyb25fcmlnaHQ6W1sxLDcsMTgsITBdLFsxLDcsMjQsITBdXSxjaGV2cm9uX3JpZ2h0X2NpcmNsZTpbWzAsCjMsMjRdLFsxLDMsMjRdXSxjaGV2cm9uX3JpZ2h0X2VuZDpbWzEsMSwyNF1dLGNoZXZyb25fcmlnaHRfc3F1YXJlOltbMSwxLDI0XV0sY2hldnJvbl91cDpbWzEsOSwxMl0sWzEsOSwyNF1dLGNoZXZyb25fdXBfY2lyY2xlOltbMCwzLDI0XSxbMSwzLDI0XV0sY2hldnJvbl91cF9lbmQ6W1sxLDEsMjRdXSxjaHJvbWVjYXN0OltbMCwxMSwyNF0sWzEsMTEsMThdLFsxLDExLDI0XSxbMSwxMSwzNl1dLGNocm9tZWNhc3RfbW9iaWxlOltbMSw0LDI0XSxbMSw0LDM2XV0sY2hyb21lY2FzdF93YXZlZm9ybTpbWzEsMiwyNF1dLGNpcmNsZTpbWzAsOSwyNF0sWzEsOSwyNF1dLGNpcmNsZV9mdWxsOltbMCwzLDI0XV0sY2lyY2xlX2Z1bGxfaGFsZjpbWzAsMSwyNF1dLGNpcmNsZV9oYWxmX2ZpbGxlZDpbWzEsMSwyNF1dLGNpcmNsZV9zbGFzaDpbWzAsNCwyNF0sWzEsNCwxOF0sWzEsNCwyNF0sWzEsNCw0OF1dLGNpcmNsZXM2OltbMSwxLDI0XV0sY2xhcHBlcmJvYXJkOltbMCwzLDI0XSxbMSwzLAoyNF1dLGNsYXBwZXJib2FyZF9zbGFzaDpbWzEsMSwyNF1dLGNsYXBwZXJib2FyZF9zcGFya2xlczpbWzAsMiwyNF0sWzEsMiwyNF1dLGNsb2NrOltbMCwxMCwyNF0sWzAsMTAsNDhdLFsxLDEwLDI0XV0sY2xvY2tfYXJyb3dfY2xvY2t3aXNlOltbMSwxLDI0XV0sY2xvY2tfaGFsZl9kYXNoZWQ6W1sxLDEsMjRdXSxjbG9ja19zcGxpdDpbWzAsMiwyNF0sWzEsMiwyNF1dLGNsb2NrX3NwbGl0X2FsZXJ0OltbMCwyLDI0XSxbMSwyLDI0XV0sY2xvc2VkX2NhcHRpb25zOltbMCwzLDI0XSxbMCwzLDQ4XSxbMSwzLDI0XSxbMSwzLDQ4XV0sY2xvdWQ6W1sxLDIsMjRdXSxjbG91ZF9hcnJvd19kb3duOltbMSwzLDI0XV0sY2xvdWRfYXJyb3dfdXA6W1swLDYsMjRdLFsxLDYsMThdLFsxLDYsMjRdXSxjbG91ZF9jaGVjazpbWzAsMywyNF0sWzEsMywyNF1dLGNsb3VkX2VsbGlwc2lzOltbMCwzLDI0XSxbMSwzLDI0XV0sY2xvdWRfc2xhc2g6W1sxLDIsMjRdLFsxLDIsNDhdXSxjbXNfYWxsb3dsaXN0OltbMCwKMiwyNF0sWzEsMiwyNF1dLGNvZGU6W1sxLDIsMjRdXSxjb21wYXJlOltbMSwyLDI0XV0sY29tcGFzczpbWzAsOSwyNF0sWzEsOSwyNF1dLGNvcHk6W1sxLDMsMjRdXSxjb3B5X3RvX2FsbDpbWzEsMSwyNF1dLGNvcHlyaWdodDpbWzAsNCwyNF0sWzEsNCwyNF1dLGNvcHlyaWdodF9zZWFyY2g6W1swLDIsMjRdLFsxLDIsMjRdXSxjb3Zlcl9jbGFpbTpbWzEsMSwyNF1dLGNyZWF0aXZlX2NvbW1vbnM6W1swLDIsMjRdLFsxLDIsMjRdXSxjcmVkaXRfY2FyZDpbWzAsNCwyNF0sWzEsNCwyNF1dLGNyb3A6W1sxLDQsMThdLFsxLDQsMjRdXSxjcm9wX3JvdGF0ZTpbWzEsMiwyNF1dLGNyb3NzaGFpcjpbWzEsMSwxOF0sWzEsMSwyNF1dLGNyb3duOltbMCw1LDE4XSxbMCw1LDI0XSxbMSw1LDI0XV0sY3N2OltbMCwyLDI0XSxbMSwyLDI0XV0sY3ViZTpbWzAsMiwyNF0sWzEsMiwyNF1dLGN1YmVfc3Bhcms6W1sxLDEsMjRdXSxjdXJzb3JfY2xpY2s6W1swLDIsMjRdLFsxLDIsMjRdXSxjdXJ2ZTpbWzEsCjEsMjRdXSxjdnA6W1swLDIsMjRdLFsxLDIsMjRdXSxkYW5jZV9zcGFyazpbWzAsMSwyNF1dLGRhc2hib2FyZDpbWzAsMiwyNF0sWzEsMiwyNF1dLGRhc2hib2FyZF9hZGQ6W1sxLDEsMjRdXSxkaWVfZmFjZTM6W1swLDIsMjRdLFsxLDIsMjRdXSxkaXJlY3Rpb25zOltbMSwzLDI0XV0sZGlzcGxheTpbWzAsMiwyNF0sWzEsMiwyNF1dLGRpc3BsYXlfc2xhc2g6W1sxLDEsMjRdXSxkaXZpZGU6W1sxLDEsMjRdXSxkb2N1bWVudDpbWzAsMiwyNF0sWzEsMiwyNF1dLGRvY3VtZW50X2Fycm93X3VwX3JpZ2h0OltbMCwyLDI0XSxbMSwyLDI0XV0sZG9sbGFyX3NpZ25fYXJyb3dfZmxpcDpbWzEsMSwyNF1dLGRvbGxhcl9zaWduX2NpcmNsZTpbWzAsMTIsMjRdLFsxLDEyLDEyXSxbMSwxMiwxOF0sWzEsMTIsMjRdXSxkb2xsYXJfc2lnbl9jaXJjbGVfYWRkOltbMSwxLDI0XV0sZG9sbGFyX3NpZ25fY2lyY2xlX2hhbmQ6W1sxLDEsMjRdXSxkb2xsYXJfc2lnbl9jaXJjbGVfcGF1c2U6W1sxLDIsMjRdXSwKZG9sbGFyX3NpZ25fY2lyY2xlX3NsYXNoOltbMSwyLDEyXSxbMSwyLDI0XV0sZG9sbGFyX3NpZ25faGVhcnQ6W1swLDI0LDEyXSxbMCwyNCwyNF0sWzEsMjQsMTJdLFsxLDI0LDI0XV0sZG9sbGFyX3NpZ25fcmVjdGFuZ2xlOltbMSwxLDI0XV0sZG9sbGFyX3NpZ25fdHY6W1swLDIsMjRdLFsxLDIsMjRdXSxkb3Q6W1swLDIsMTJdLFswLDIsMjRdXSxkb3dubG9hZDpbWzEsMTEsMThdLFsxLDExLDI0XV0sZHBhZDpbWzAsMiwyNF0sWzEsMiwyNF1dLGVtYmVkOltbMCwyLDI0XSxbMSwyLDI0XV0sZXF1YWw6W1sxLDIsMThdLFsxLDIsMjRdXSxlcXVhbF9zbGFzaDpbWzEsMSwyNF1dLGV4cGxpY2l0OltbMCw3LDI0XSxbMSw3LDI0XV0sZXllOltbMCw2LDI0XSxbMSw2LDI0XV0sZXllX3NsYXNoOltbMSwxLDI0XV0sZXllZHJvcHBlcjpbWzEsMiwyNF1dLGV5ZWdsYXNzZXM6W1sxLDEsMjRdXSxmYWNlX2FkZDpbWzEsMSwyNF1dLGZhY2VfaGFwcHk6W1swLDEyLDI0XSxbMCwxMiwzNl0sWzAsCjEyLDQ4XSxbMSwxMiwyNF0sWzEsMTIsMzZdXSxmYWNlX2ltYWdlOltbMSwyLDI0XV0sZmFjZV9tZWg6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGZhY2VfbmV1dHJhbDpbWzAsNCwyNF0sWzAsNCwzNl0sWzEsNCwyNF0sWzEsNCwzNl1dLGZhY2VfcGFpbnRicnVzaDpbWzEsMiwyNF1dLGZhY2Vfc2FkOltbMCwxMiwyNF0sWzAsMTIsMzZdLFsxLDEyLDI0XSxbMSwxMiwzNl1dLGZhY2Vfc2NhbGU6W1sxLDEsMjRdXSxmYWNlX3NwYXJrbGVzOltbMCwyLDI0XSxbMSwyLDI0XV0sZmFjZV91bmhhcHB5OltbMCwxMCwyNF0sWzAsMTAsMzZdLFsxLDEwLDI0XSxbMSwxMCwzNl1dLGZhY2VfdXBzZXQ6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGZhY2VfdmVyeV9oYXBweTpbWzAsMTIsMjRdLFswLDEyLDM2XSxbMSwxMiwyNF0sWzEsMTIsMzZdXSxmYWNlX3Zlcnlfc2FkOltbMCwxMCwyNF0sWzEsMTAsMjRdXSxmYXNoaW9uOltbMCw0LDI0XSxbMSw0LDI0XV0sZmFzdF9mb3J3YXJkOltbMCw1LDI0XSxbMSwKNSwyNF1dLGZhc3RfcmV3aW5kOltbMCwyLDI0XSxbMSwyLDI0XV0sZmlsbV9zdHJpcDpbWzAsNywyNF0sWzAsNyw0OF0sWzEsNywyNF1dLGZpbG1fc3RyaXBfYWRkOltbMSwyLDI0XV0sZmlsbV9zdHJpcF9hdWRpbzpbWzEsMSwyNF1dLGZpbHRlcjpbWzEsMSwyNF1dLGZpbHRlcl9hdWRpbzpbWzEsMSwyNF1dLGZpbHRlcl9waG90bzpbWzAsOCwyNF0sWzEsOCwyNF1dLGZpcmV3b3JrczpbWzEsMywyNF1dLGZsYWc6W1swLDEwLDI0XSxbMCwxMCw0OF0sWzEsMTAsMThdLFsxLDEwLDI0XSxbMSwxMCw0OF1dLGZsYXNoOltbMCwyLDI0XSxbMSwyLDI0XV0sZmxhc2hfYXV0bzpbWzAsMywyNF0sWzEsMywyNF1dLGZsYXNoX2NpcmNsZTpbWzAsNSwyNF0sWzEsNSwyNF1dLGZsYXNoX3NsYXNoOltbMCwyLDI0XSxbMSwyLDI0XV0sZmxpcF9ob3Jpem9udGFsOltbMSw0LDI0XV0sZmxpcF9ob3Jpem9udGFsX2hhbGZfZGFzaGVkOltbMSwxLDI0XV0sZmxpcF92ZXJ0aWNhbF9oYWxmX2Rhc2hlZDpbWzEsCjEsMjRdXSxmb2xkZXI6W1swLDQsMjRdLFsxLDQsMjRdXSxmb250OltbMSwxLDI0XV0sZm9udF9ib2xkOltbMSwxLDI0XV0sZm9udF9pdGFsaWM6W1sxLDEsMjRdXSxmb250X291dGxpbmU6W1sxLDEsMjRdXSxmb250X3ByZXNlbnQ6W1sxLDEsMjRdXSxmb250X3NlcmlmOltbMSwxLDI0XV0sZm9udF9zaGFkb3c6W1sxLDEsMjRdXSxmb250X3NwYXJrOltbMSwxLDI0XV0sZm9udF9zcXVhcmU6W1swLDIsMjRdLFsxLDIsMjRdXSxmb250X3NxdWFyZV9zcGFyazpbWzEsMSwxOF0sWzEsMSwyNF1dLGZvbnRfc3RyaWtldGhyb3VnaDpbWzEsMSwyNF1dLGZvbnRfc3R5bGU6W1sxLDIsMThdLFsxLDIsMjRdXSxmb250X3VuZGVybGluZTpbWzEsMSwyNF1dLGZvb3RiYWxsOltbMCw0LDI0XSxbMSw0LDI0XSxbMSw0LDM2XV0sZ2FtZV9jb250cm9sbGVyOltbMSwxLDI0XV0sZ2FtaW5nOltbMCwzLDI0XSxbMSwzLDI0XV0sZ2VhcjpbWzAsMTAsMjRdLFswLDEwLDQ4XSxbMSwxMCwxOF0sWzEsMTAsMjRdLApbMSwxMCw0OF1dLGdlc3R1cmVfbG9uZ19wcmVzczpbWzAsMiwyNF0sWzEsMiwyNF1dLGdlc3R1cmVfcGluY2hfaW46W1sxLDEsMjRdXSxnZXN0dXJlX3N3aXBlX2xlZnQ6W1sxLDEsMjRdXSxnZXN0dXJlX3N3aXBlX3JpZ2h0OltbMSwxLDI0XV0sZ2VzdHVyZV9zd2lwZV91cDpbWzEsMSwyNF1dLGdlc3R1cmVfdGFwOltbMCwyLDI0XSxbMSwyLDI0XV0sZ2hvc3Q6W1swLDUsMjRdLFsxLDUsMjRdXSxnaWY6W1swLDMsMThdLFswLDMsMjRdLFsxLDMsMThdLFsxLDMsMjRdXSxnaWZ0OltbMCwzLDI0XSxbMSwzLDI0XV0sZ2xvYmU6W1sxLDQsMjRdXSxnbG9iZV9pbWFnZTpbWzEsMywyNF1dLGdsb3c6W1sxLDIsMjRdXSxnb29nbGU6W1swLDEsMjRdXSxnb29nbGVfYmxvZ2dlcjpbWzAsMSwyNF1dLGdvb2dsZV9kcml2ZV9hZGQ6W1sxLDEsMjRdXSxnb29nbGVfbGVuczpbWzEsNCwyNF1dLGdvb2dsZV9tZWV0OltbMCwyLDI0XSxbMSwyLDI0XV0sZ29vZ2xlX3F1aWNrX3NoYXJlOltbMSwxLDI0XV0sCmdyYWR1YXRpb25fY2FwOltbMCwzLDE4XSxbMCwzLDI0XSxbMSwzLDI0XV0sZ3JlYXRlcl90aGFuOltbMSwxLDI0XV0sZ3JlYXRlcl90aGFuX24yMDpbWzEsMSwyNF1dLGdyZWF0ZXJfdGhhbl9vcl9lcXVhbF90bzpbWzEsMSwyNF1dLGhhbmQ6W1sxLDIsMjRdXSxoYW5kX3dhdmU6W1sxLDIsMjRdXSxoYW5kc19jbGFwOltbMSwxLDI0XV0saGFuZHNfaGVhcnQ6W1swLDMsMjRdLFsxLDMsMjRdXSxoYXNodGFnOltbMSwyLDI0XV0saGQ6W1swLDgsMjRdLFsxLDgsMjRdXSxoZWFkc2V0OltbMCw4LDI0XSxbMSw4LDI0XV0saGVhcmluZzpbWzAsMiwyNF0sWzEsMiwyNF1dLGhlYXJ0OltbMCwxOSwyNF0sWzEsMTksMThdLFsxLDE5LDI0XV0saGVhcnRfY2lyY2xlOltbMSwyLDI0XV0saGVhcnRfY3ViZTpbWzEsMSwyNF1dLGhlYXJ0X3NsYXNoOltbMSwxLDI0XV0saGVscF9idWJibGU6W1swLDIsMjRdLFsxLDIsMjRdXSxoZWxwX2NpcmNsZTpbWzEsMiwxOF0sWzEsMiwyNF1dLGhpZXJhcmNoeTpbWzAsCjQsMjRdLFsxLDQsMjRdXSxoaWdobGlnaHRzOltbMSwyLDI0XV0saGlzdG9yeTpbWzEsMSwyNF1dLGhvbWU6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGhvdXJnbGFzczpbWzEsMywxOF0sWzEsMywyNF1dLGh5cGU6W1swLDIsMjRdLFsxLDIsMjRdXSxpbWFnZTpbWzAsOCwyNF0sWzEsOCwyNF1dLGltYWdlX2FkZDpbWzAsNCwyNF0sWzEsNCwyNF1dLGltYWdlX2ZyYW1lOltbMSwxLDI0XV0saW1hZ2VfbGlzdDpbWzAsMiwyNF0sWzEsMiwyNF1dLGltYWdlX2xpc3Rfc2xhc2g6W1sxLDEsMjRdXSxpbWFnZV9zcGFyazpbWzEsMSwyNF1dLGltYWdlX3N0YWNrOltbMCwyLDI0XSxbMSwyLDI0XV0saW1hZ2Vfdmlld2ZpbmRlcjpbWzEsMSwyNF1dLGluY29nbml0bzpbWzAsOSwyNF0sWzEsOSwyNF1dLGluZmluaXR5OltbMSwyLDI0XV0saW5mb19jaXJjbGU6W1sxLDEwLDE4XSxbMSwxMCwyNF1dLGluZm9fY2lyY2xlX3NwYXJrOltbMSwxLDI0XV0samV3ZWw6W1sxLDEsMjRdXSxqb3VybmV5OltbMSwKMiwyNF1dLGtleTpbWzEsNSwyNF1dLGtleWJvYXJkOltbMCw0LDI0XSxbMSw0LDI0XV0sbGFiZWw6W1swLDQsMjRdLFsxLDQsMjRdXSxsYWJlbF9zbGFzaDpbWzAsMiwyNF0sWzEsMiwyNF1dLGxhcHRvcDpbWzEsMywyNF1dLGxhcHRvcF9tb2JpbGU6W1swLDQsMjRdLFsxLDQsMjRdXSxsYXlvdXRfYm90dG9tOltbMSwxLDI0XV0sbGF5b3V0X2ZvcmVncm91bmQ6W1sxLDEsMjRdXSxsYXlvdXRfZnVsbDpbWzEsMSwyNF1dLGxheW91dF9sZWZ0OltbMSwxLDI0XV0sbGF5b3V0X21pZGRsZTpbWzEsMSwyNF1dLGxheW91dF9waWN0dXJlX2luX3BpY3R1cmU6W1sxLDEsMjRdXSxsYXlvdXRfcmlnaHQ6W1sxLDEsMjRdXSxsYXlvdXRfdG9wOltbMSwxLDI0XV0sbGVhZjpbWzEsMiwyNF1dLGxlc3NfdGhhbjpbWzEsMSwyNF1dLGxlc3NfdGhhbl9uNDpbWzEsMSwyNF1dLGxlc3NfdGhhbl9vcl9lcXVhbF90bzpbWzEsMSwyNF1dLGxpY2Vuc2U6W1swLDIsMjRdLFsxLDIsMjRdXSxsaWNlbnNlX2FsZXJ0OltbMSwKMSwyNF1dLGxpY2Vuc2Vfc2VhcmNoOltbMSwxLDI0XV0sbGljZW5zZV9zbGFzaDpbWzEsMSwyNF1dLGxpZ2h0YnVsYjpbWzAsNCwyNF0sWzEsNCwyNF1dLGxpbms6W1sxLDgsMThdLFsxLDgsMjRdXSxsaW5rX3NsYXNoOltbMSwxLDI0XV0sbGl2ZTpbWzEsMywxMl0sWzEsMywyNF1dLGxpdmVfcGhvdG86W1sxLDIsMjRdXSxsaXZlX3dhdmVzOltbMSwyLDE4XSxbMSwyLDI0XV0sbG9jYXRpb25fcGluOltbMCwyLDI0XSxbMSwyLDI0XV0sbG9jYXRpb25fcGluX3NsYXNoOltbMSwxLDI0XV0sbG9jazpbWzAsMTMsMTJdLFswLDEzLDI0XSxbMSwxMywxOF0sWzEsMTMsMjRdLFsxLDEzLDQ4XV0sbG9ja19jbG9jazpbWzEsMSwyNF1dLGxvY2tfbjI6W1sxLDEsMjRdXSxsb2NrX29wZW46W1swLDQsMjRdLFsxLDQsMjRdXSxtYWdpY193YW5kOltbMCwzLDI0XSxbMSwzLDI0XV0sbWFpbDpbWzAsOSwyNF0sWzEsOSwyNF1dLG1hcDpbWzEsMywyNF1dLG1lZGFsOltbMSwyLDI0XV0sbWVkYWxfc3RhcjpbWzEsCjIsMjRdXSxtZWdhcGhvbmU6W1swLDUsMjRdLFsxLDUsMTJdLFsxLDUsMjRdXSxtZW1iZXJzaGlwczpbWzAsOSwyNF0sWzAsOSwzNl0sWzEsOSwyNF1dLG1lbWJlcnNoaXBzX2dpZnQ6W1sxLDEsMjRdXSxtZW50aW9uOltbMSw1LDI0XV0sbWVudTpbWzEsMSwyNF1dLG1pYzpbWzAsMTQsMThdLFswLDE0LDI0XSxbMCwxNCwzNl0sWzAsMTQsNDhdLFsxLDE0LDE4XSxbMSwxNCwyNF0sWzEsMTQsNDhdXSxtaWNfc2xhc2g6W1sxLDIsMjRdXSxtaWNfc3Bhcms6W1swLDEsMThdLFswLDEsMjRdLFsxLDEsMThdLFsxLDEsMjRdXSxtaW51czpbWzEsMiwxOF0sWzEsMiwyNF1dLG1pbnVzX2NpcmNsZTpbWzAsMywyNF0sWzEsMywxOF0sWzEsMywyNF1dLG1pbnVzX3NxdWFyZTpbWzAsMiwyNF0sWzEsMiwyNF1dLG1peDpbWzAsNCwyNF0sWzEsNCwxOF0sWzEsNCwyNF1dLG1vYmlsZTpbWzAsNCwyNF0sWzEsNCwyNF1dLG1vYmlsZV9hcnJvd19kb3duOltbMSwxLDI0XV0sbW9iaWxlX2Fycm93X2luOltbMSwKMSwyNF1dLG1vYmlsZV9hcnJvd19vdXQ6W1sxLDEsMjRdXSxtb2JpbGVfY2hlY2s6W1sxLDIsMjRdXSxtb2JpbGVfbGFuZHNjYXBlOltbMCwzLDI0XSxbMSwzLDI0XV0sbW90aW9uOltbMSwyLDI0XV0sbW92ZTpbWzEsNCwxOF0sWzEsNCwyNF1dLG11c2ljX3ZpZGVvOltbMCw0LDI0XSxbMSw0LDI0XV0sbXVzaWNfdmlkZW9fc2xhc2g6W1sxLDEsMjRdXSxuMTU6W1sxLDEsMjRdXSxuMXBvaW50Mng6W1sxLDEsMjRdXSxuMXBvaW50NXg6W1sxLDEsMjRdXSxuMXBvaW50OHg6W1sxLDEsMjRdXSxuMXg6W1sxLDEsMjRdXSxuMmQ6W1sxLDEsMjRdXSxuMnBvaW50NXg6W1sxLDEsMjRdXSxuMng6W1sxLDEsMjRdXSxuM2Q6W1sxLDEsMjRdXSxuM3g6W1sxLDEsMjRdXSxuNGQ6W1sxLDEsMjRdXSxuNGs6W1swLDEsMjRdLFsxLDEsMjRdXSxuNjA6W1sxLDEsMjRdXSxuOGs6W1swLDEsMjRdLFsxLDEsMjRdXSxuZXdfcmVsZWFzZTpbWzEsMSwyNF1dLG5ld3M6W1swLDMsMjRdLFsxLDMsMjRdXSxuZXdzX2FsZXJ0OltbMCwKMSwyNF1dLG5vZGVfbGVmdDpbWzEsMiwyNF1dLG5vZGVfcmlnaHQ6W1sxLDIsMjRdXSxub3RlOltbMCwxLDE4XSxbMCwxLDI0XSxbMSwxLDE4XSxbMSwxLDI0XV0sbm90ZV9zcGFyazpbWzAsMiwxOF0sWzAsMiwyNF0sWzEsMiwxOF0sWzEsMiwyNF1dLG9wZW5faW5fcGFuZWw6W1sxLDIsMjRdXSxvcmlnaW5hbHM6W1swLDEsMjRdLFsxLDEsMjRdXSxvdmVyZmxvd19ob3Jpem9udGFsOltbMSw2LDI0XSxbMSw2LDM2XV0sb3ZlcmZsb3dfdmVydGljYWw6W1sxLDEzLDE4XSxbMSwxMywyNF0sWzEsMTMsMzZdXSxwYWdlX3NlYXJjaDpbWzEsMSwyNF1dLHBhaW50X2J1Y2tldDpbWzEsMywyNF1dLHBhaW50X3BhbGV0dGU6W1sxLDEsMjRdXSxwYW5lbHM6W1swLDIsMjRdLFsxLDIsMjRdXSxwYXVzZTpbWzAsOSwyNF0sWzAsOSwzNl0sWzAsOSw0OF0sWzEsOSwyNF1dLHBhdXNlX2NpcmNsZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHBhdXNlX2hpc3Rvcnk6W1sxLDEsMjRdXSxwYXdwcmludDpbWzAsCjIsMjRdLFsxLDIsMjRdXSxwZGY6W1sxLDIsMjRdXSxwZW5jaWw6W1swLDEwLDI0XSxbMSwxMCwxOF0sWzEsMTAsMjRdXSxwZW5jaWxfc3Bhcms6W1sxLDEsMjRdXSxwZXJjZW50OltbMSwxLDI0XV0scGVyc29uOltbMCw3LDI0XSxbMSw3LDEyXSxbMSw3LDI0XV0scGVyc29uMjpbWzEsMSwyNF1dLHBlcnNvbjJfcmVjdGFuZ2xlOltbMCwxLDI0XSxbMSwxLDI0XV0scGVyc29uMzpbWzAsMiwyNF0sWzEsMiwxOF0sWzEsMiwyNF1dLHBlcnNvbl9hZGQ6W1swLDcsMjRdLFsxLDcsMThdLFsxLDcsMjRdXSxwZXJzb25fYXVkaW86W1swLDMsMjRdLFsxLDMsMThdLFsxLDMsMjRdLFsxLDMsNDhdXSxwZXJzb25fYmFja2dyb3VuZF9zcGFyazpbWzEsMSwyNF1dLHBlcnNvbl9jaGVjazpbWzEsMSwyNF1dLHBlcnNvbl9jaGlsZDpbWzAsMiwxMl0sWzAsMiwyNF0sWzEsMiwyNF1dLHBlcnNvbl9jaXJjbGU6W1swLDEwLDI0XSxbMSwxMCwyNF0sWzEsMTAsNDhdXSxwZXJzb25fY2lyY2xlX3NsYXNoOltbMSwKMiwyNF1dLHBlcnNvbl9nZWFyOltbMCwyLDI0XSxbMSwyLDI0XV0scGVyc29uX3NoaWVsZDpbWzEsNywyNF1dLHBlcnNvbl9zcXVhcmU6W1swLDIsMjRdLFsxLDIsMThdLFsxLDIsMjRdXSxwZXJzb25fc3F1YXJlX3NwYXJrOltbMCwxLDI0XSxbMSwxLDI0XV0scGVyc29uX3NxdWFyZV9zdGFjazpbWzAsMiwyNF0sWzEsMiwxOF0sWzEsMiwyNF1dLHBlcnNvbl92aWV3ZmluZGVyOltbMCwxLDI0XSxbMSwxLDI0XV0scGVyc29uX3dhdmVmb3JtOltbMSwyLDI0XV0scGVyc29uX3dhdmVzOltbMCwxLDI0XSxbMSwxLDI0XV0scGVyc29uX3g6W1sxLDEsMjRdXSxwaG9uZTpbWzAsMywyNF0sWzEsMywxMl0sWzEsMywyNF1dLHBpYW5vOltbMSwxLDI0XV0scGljdHVyZV9pbl9waWN0dXJlOltbMCwyLDI0XSxbMSwyLDI0XV0scGljdHVyZV9pbl9waWN0dXJlX3N0YWNrOltbMSwxLDI0XV0scGluOltbMCw3LDI0XSxbMSw3LDE4XSxbMSw3LDI0XV0scGluX3NsYXNoOltbMCwyLDI0XSxbMSwyLDE4XSwKWzEsMiwyNF1dLHBsYXk6W1swLDQsMThdLFswLDQsMjRdLFswLDQsMzZdLFswLDQsNDhdLFsxLDQsMjRdXSxwbGF5X2NpcmNsZTpbWzAsMiwyNF0sWzAsMiw0OF0sWzEsMiwyNF1dLHBsYXlfY2lyY2xlX2hhbGZfZGFzaGVkOltbMSwxLDI0XV0scGxheV9wYXVzZTpbWzAsMSwyNF0sWzEsMSwyNF1dLHBsYXlfc2xhc2g6W1swLDEsMjRdLFsxLDEsMjRdXSxwbGF5X3NxdWFyZV9oYWxmX2Rhc2hlZDpbWzEsMSwyNF1dLHBsYXlfc3F1YXJlX3N0YWNrOltbMCwxLDI0XSxbMSwxLDI0XV0scGxheWFibGVzOltbMCwyLDI0XSxbMSwyLDE4XSxbMSwyLDI0XV0scGxheWVyX2RlZmF1bHQ6W1swLDEsMjRdLFsxLDEsMjRdXSxwbGF5ZXJfZnVsbF9lbnRlcjpbWzEsMSwyNF1dLHBsYXllcl9mdWxsX2VudGVyX2FsdDpbWzEsMSwyNF1dLHBsYXllcl9mdWxsX2VudGVyX3BvcnRyYWl0OltbMSwyLDI0XV0scGxheWVyX2Z1bGxfZXhpdDpbWzEsMSwyNF1dLHBsYXllcl9mdWxsX2V4aXRfYWx0OltbMSwxLAoyNF1dLHBsYXllcl9taW5pX2VudGVyOltbMCwxLDI0XSxbMSwxLDI0XV0scGxheWVyX21pbmlfZXhpdDpbWzEsMSwyNF1dLHBsYXllcl9tdWx0aXZpZXc6W1swLDEsMjRdLFsxLDEsMjRdXSxwbGF5ZXJfc3dpdGNoOltbMCwxLDI0XSxbMSwxLDI0XV0scGxheWVyX3RoZWF0ZXI6W1swLDEsMjRdLFsxLDEsMjRdXSxwbGF5bGlzdDpbWzEsNSwxMl0sWzEsNSwxOF0sWzEsNSwyNF0sWzEsNSw0OF1dLHBsYXlsaXN0X2FkZDpbWzEsMywxOF0sWzEsMywyNF1dLHBsYXlsaXN0X2F1ZGlvOltbMCwzLDI0XSxbMSwzLDE4XSxbMSwzLDI0XSxbMSwzLDQ4XV0scGxheWxpc3RfYXVkaW9fc2xhc2g6W1sxLDEsMjRdXSxwbGF5bGlzdF9jaGVjazpbWzEsMSwyNF1dLHBsYXlsaXN0X3BlbmNpbDpbWzEsMiwyNF0sWzEsMiw0OF1dLHBsYXlsaXN0X3g6W1sxLDMsMThdLFsxLDMsMjRdXSxwb2RjYXN0OltbMCw2LDEyXSxbMCw2LDI0XSxbMSw2LDEyXSxbMSw2LDE4XSxbMSw2LDI0XSxbMSw2LDQ4XV0scG9kY2FzdF9hZGQ6W1swLAoyLDI0XSxbMSwyLDI0XV0scG9kY2FzdF9jaGVjazpbWzAsMiwyNF1dLHBvaW50Mng6W1sxLDEsMjRdXSxwb2ludDN4OltbMSwxLDI0XV0scG9pbnQ1eDpbWzEsMSwyNF1dLHBvaW50OHg6W1sxLDEsMjRdXSxwb2xsOltbMSwxMCwxOF0sWzEsMTAsMjRdLFsxLDEwLDM2XV0scG9zdDpbWzAsMiwxMl0sWzAsMiwxOF0sWzAsMiwyNF0sWzEsMiwxMl0sWzEsMiwxOF0sWzEsMiwyNF1dLHByZW1pdW06W1swLDEsMjRdLFsxLDEsMjRdXSxwcmVzZW50YXRpb246W1sxLDMsMjRdXSxwcmljZV90YWc6W1swLDgsMjRdLFswLDgsNDhdLFsxLDgsMjRdXSxwcmljZV90YWdfaGVhcnQ6W1sxLDIsMjRdXSxwcmljZV90YWdfcmVjdGFuZ2xlOltbMSwxLDI0XV0scXJfY29kZTpbWzEsMywyNF1dLHFyX2NvZGVfdmlld2ZpbmRlcjpbWzEsMSwyNF1dLHF1ZXN0aW9uX2hlYWQ6W1sxLDIsMjRdXSxxdWV1ZTpbWzEsMSwyNF1dLHF1ZXVlX2xhc3Q6W1sxLDEsMjRdXSxxdWV1ZV9uZXh0OltbMSwxLDI0XV0scXVpejpbWzAsCjEsMjRdLFsxLDEsMjRdXSxxdW90ZTpbWzAsMSwyNF0sWzEsMSwyNF1dLHF1b3RlX3NsYXNoOltbMCwxLDI0XSxbMSwxLDI0XV0scmVjb3JkOltbMCwyLDI0XV0scmVkbzpbWzEsMiwxOF0sWzEsMiwyNF1dLHJlbWl4OltbMSwyLDI0XV0scmVtaXhfc3BhcmtsZXM6W1sxLDEsMjRdXSxyZW1vdGVfd2F2ZXM6W1sxLDEsMjRdXSxyZXBlYXQ6W1swLDIsMjRdLFsxLDIsMjRdXSxyZXBlYXQxOltbMCwxLDI0XSxbMSwxLDI0XV0scmVwbGF5OltbMSwyLDI0XSxbMSwyLDM2XV0scm90YXRlX2Nsb2Nrd2lzZTpbWzEsMSwyNF1dLHJvdGF0ZV9jb3VudGVyY2xvY2t3aXNlOltbMSwxLDI0XV0scm90YXRlX2xhbmRzY2FwZTpbWzEsMiwxOF0sWzEsMiwyNF1dLHJvdGF0ZV9wb3J0cmFpdDpbWzEsMSwyNF1dLHJzczpbWzEsMiwyNF1dLHJzc19zbGFzaDpbWzEsMSwyNF1dLHJ1Ynk6W1sxLDIsMjRdXSxzYW1wbGVzOltbMCwyLDI0XSxbMSwyLDI0XV0sc2F0dXJhdGlvbjpbWzEsMiwyNF1dLHNjYWxlOltbMSwKNCwyNF1dLHNjaXNzb3JzOltbMCw4LDI0XSxbMSw4LDE4XSxbMSw4LDI0XV0sc2Npc3NvcnNfY3V0OltbMSw0LDI0XV0sc2NyaWJibGU6W1sxLDEsMjRdXSxzZDpbWzAsMywyNF0sWzEsMywyNF1dLHNlYXJjaDpbWzAsMTUsMjRdLFsxLDE1LDE4XSxbMSwxNSwyNF0sWzEsMTUsNDhdXSxzZWFyY2hfc2hpZWxkOltbMCwxLDI0XSxbMSwxLDI0XV0sc2VhcmNoX3NwYXJrOltbMSwzLDE4XSxbMSwzLDI0XV0sc2Vla19mb3J3YXJkOltbMCwxLDI0XV0sc2Vla19yZXdpbmQ6W1swLDEsMjRdXSxzZW5kOltbMCw3LDE4LCEwXSxbMCw3LDI0LCEwXSxbMSw3LDE4LCEwXSxbMSw3LDI0LCEwXV0sc2hhZG93OltbMSwxLDI0XV0sc2hhZG93X2hhcmQ6W1swLDMsMjRdLFsxLDMsMjRdXSxzaGFkb3dfc29mdDpbWzAsMywyNF0sWzEsMywyNF1dLHNoYXBlczpbWzAsMywyNF0sWzEsMywyNF1dLHNoYXJlOltbMCwxMiwyNCwhMF0sWzEsMTIsMTgsITBdLFsxLDEyLDI0LCEwXV0sc2hhcmVfYW5kcm9pZDpbWzAsCjIsMjRdLFsxLDIsMjRdXSxzaGFyZV9pb3M6W1sxLDIsMjRdXSxzaGFycGVuOltbMSwxLDI0XV0sc2hpZWxkOltbMCw2LDI0XSxbMSw2LDI0XV0sc2hpZWxkX2FkZDpbWzEsMiwyNF1dLHNoaWVsZF9oZWFsdGg6W1sxLDEsMjRdXSxzaGllbGRfb3ZlcmZsb3c6W1sxLDIsMjRdXSxzaGllbGRfc2xhc2g6W1sxLDEsMjRdXSxzaGllbGRfeDpbWzAsMywyNF0sWzEsMywxOF0sWzEsMywyNF1dLHNob3J0czpbWzAsMywxOF0sWzAsMywyNF0sWzEsMywyNF1dLHNob3J0c19hZGQ6W1sxLDEsMThdLFsxLDEsMjRdXSxzaG9ydHNfZW1wdHk6W1swLDMsMThdLFswLDMsMjRdLFsxLDMsMjRdXSxzaHVmZmxlOltbMCw0LDI0XSxbMSw0LDE4XSxbMSw0LDI0XV0sc2tpcDEwX2JhY2s6W1sxLDIsMjRdLFsxLDIsMzZdXSxza2lwMTBfZm9yd2FyZDpbWzEsMSwyNF1dLHNraXAxNV9iYWNrOltbMSwxLDI0XV0sc2tpcDE1X2ZvcndhcmQ6W1sxLDEsMjRdXSxza2lwMjBfYmFjazpbWzEsMSwyNF1dLHNraXAyMF9mb3J3YXJkOltbMSwKMSwyNF1dLHNraXAzMF9iYWNrOltbMSwxLDI0XV0sc2tpcDMwX2ZvcndhcmQ6W1sxLDIsMjRdLFsxLDIsMzZdXSxza2lwNV9iYWNrOltbMSwxLDI0XV0sc2tpcDVfZm9yd2FyZDpbWzEsMSwyNF1dLHNraXA2MF9iYWNrOltbMSwxLDI0XV0sc2tpcDYwX2ZvcndhcmQ6W1sxLDEsMjRdXSxza2lwX2Rvd246W1swLDYsMjRdLFsxLDYsMjRdXSxza2lwX25leHQ6W1swLDcsMTJdLFswLDcsMjRdLFswLDcsMzZdLFsxLDcsMjRdXSxza2lwX3ByZXZpb3VzOltbMCw2LDI0XSxbMCw2LDM2XSxbMSw2LDI0XV0sc2tpcF91cDpbWzAsNiwyNF0sWzEsNiwyNF1dLHNsYXNoX2ZvcndhcmQ6W1sxLDEsMjRdXSxzbGVlcF90aW1lcjpbWzAsMiwyNF0sWzEsMiwyNF1dLHNsaXA6W1sxLDEsMThdLFsxLDEsMjRdXSxzbm93Zmxha2U6W1sxLDEsMjRdXSxzb2NjZXJfYmFsbDpbWzEsMywyNF1dLHNvbmFyOltbMSwxLDI0XV0sc29ydDpbWzEsMywxMl0sWzEsMywxOF0sWzEsMywyNF1dLHNwYWNlYmFyOltbMSwyLAoyNF1dLHNwYXJrOltbMCwxMSwxMl0sWzAsMTEsMjRdLFsxLDExLDI0XV0sc3BhcmtfYnViYmxlX2NoYXQ6W1sxLDEsMjRdXSxzcGFya19saWdodGJ1bGI6W1swLDMsMjRdLFsxLDMsMjRdXSxzcGFya19zZWFyY2g6W1sxLDEsMjRdXSxzcGFya193YXZlczpbWzAsMiwyNF0sWzEsMiwyNF1dLHNwYXJrbGVzOltbMCwyLDI0XSxbMSwyLDI0XV0sc3BlYWtlcjpbWzEsMiwyNF1dLHNwZWFrZXJfaGVhZHNldDpbWzEsMiwyNF1dLHNwZWFrZXJfc2xhc2g6W1sxLDEsMjRdXSxzcGVha2VyX3N0YWNrOltbMSwxLDI0XV0sc3BlYWtlcl9zdGFja19zbGFzaDpbWzEsMSwyNF1dLHNwZWVkb21ldGVyOltbMCwyLDI0XSxbMSwyLDI0XV0sc3BsaWNlOltbMSwxLDI0XV0sc3BsaXQ6W1sxLDQsMjRdXSxzcG90bGlnaHQ6W1swLDMsMjRdLFsxLDMsMjRdXSxzcHJlYWRzaGVldDpbWzEsMSwyNF1dLHNxdWFyZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHNxdWFyZTNfc3RhY2s6W1swLDIsMjRdLFsxLDIsMjRdXSwKc3F1YXJlM2Rfc3RhY2s6W1swLDIsMjRdLFsxLDIsMjRdXSxzcXVhcmVfZ3JpZDJ4MjpbWzEsMSwyNF1dLHNxdWFyZV9ncmlkM3gzOltbMCwyLDI0XSxbMSwyLDI0XV0sc3F1YXJlX3BhaW50YnJ1c2g6W1sxLDEsMjRdXSxzcXVhcmVfcGVuY2lsOltbMCwzLDI0XSxbMSwzLDE4XSxbMSwzLDI0XV0sc3RhYmxlX3ZvbHVtZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHN0YXI6W1swLDYsMTJdLFswLDYsMjRdLFsxLDYsMTJdLFsxLDYsMjRdXSxzdGFyX2NpcmNsZTpbWzAsNiwxMl0sWzAsNiwxOF0sWzAsNiwyNF0sWzAsNiwzNl0sWzEsNiwyNF1dLHN0YXJfZnVsbF9oYWxmOltbMCwxLDEyXSxbMCwxLDI0XV0sc3Rhcl9oYWxmX2ZpbGxlZDpbWzEsMiwxMl0sWzEsMiwyNF1dLHN0YXJfdGlja2V0OltbMCwyLDI0XSxbMSwyLDI0XV0sc3Rhcl90cm9waHk6W1sxLDEsMjRdXSxzdGFyX3R2OltbMSwxLDI0XV0sc3RpY2tlcjpbWzEsMywxOF0sWzEsMywyNF1dLHN0b3A6W1swLDYsMjRdLFswLDYsMzZdLApbMSw2LDI0XV0sc3RvcF9jaXJjbGU6W1swLDIsMjRdLFsxLDIsMjRdXSxzdG9wd2F0Y2g6W1swLDUsMjRdLFsxLDUsMjRdXSxzdG9wd2F0Y2gxMDpbWzAsMSwyNF1dLHN0b3B3YXRjaDM6W1swLDEsMjRdXSxzdG9yYWdlOltbMCwyLDI0XSxbMSwyLDI0XV0sc3Vic2NyaXB0aW9uczpbWzAsMTIsMjRdLFsxLDEyLDI0XSxbMSwxMiw0OF1dLHN1YnRpdGxlczpbWzAsNSwyNF0sWzAsNSw0OF0sWzEsNSwyNF1dLHN1YnRpdGxlc19idWJibGU6W1sxLDEsMjRdXSxzdW06W1sxLDEsMjRdXSxzdXBlcl9jaGF0OltbMCw4LDI0XSxbMSw4LDI0XV0sc3VwZXJfc3RhcjpbWzEsMSwyNF1dLHN1cGVyX3N0aWNrZXI6W1swLDgsMjRdLFsxLDgsMjRdXSxzdXBlcl9zdG9yZTpbWzAsMywyNF0sWzEsMywyNF1dLHN1cHBvcnRfYWdlbnQ6W1sxLDEsMjRdXSxzdXJyb3VuZF9zb3VuZDpbWzAsMiwyNF0sWzEsMiwyNF1dLHRhYmxldF9sYW5kc2NhcGU6W1sxLDEsMjRdXSx0YXJnZXQ6W1sxLDIsMjRdXSx0YXJnZXRfYWRkOltbMSwKMiwyNF1dLHRlbXBsYXRlX2FkZDpbWzEsMywyNF1dLHRlbXBsYXRlX3BsYXk6W1swLDMsMjRdLFsxLDMsMjRdXSx0ZW1wbGF0ZV9wbGF5X3NwYXJrOltbMSwxLDI0XV0sdGV4dF9hbGlnbl9jZW50ZXI6W1swLDIsMjRdLFsxLDIsMjRdXSx0ZXh0X2FsaWduX2xlZnQ6W1swLDIsMjRdLFsxLDIsMjRdXSx0ZXh0X2FsaWduX3JpZ2h0OltbMCwyLDI0XSxbMSwyLDI0XV0sdGV4dF9idWJibGU6W1swLDQsMjRdLFsxLDQsMTJdLFsxLDQsMThdLFsxLDQsMjRdXSx0ZXh0X3BhZ2U6W1swLDIsMjRdLFsxLDIsMjRdXSx0ZXh0X3BhZ2VfYWxlcnQ6W1sxLDEsMjRdXSx0ZXh0X3BhZ2VfY2hlY2s6W1sxLDEsMjRdXSx0ZXh0X3BhZ2VfaW5mbzpbWzEsMSwyNF1dLHRleHRfc3Bhcms6W1sxLDEsMjRdXSx0ZXh0dXJlOltbMSwxLDI0XV0sdGhlYXRlcjpbWzEsMSwyNF1dLHRoZW1lOltbMCwyLDI0XSxbMSwyLDI0XV0sdGhlcm1vbWV0ZXI6W1sxLDIsMjRdXSx0aHVtYl9kb3duOltbMCwyNSwxOF0sWzAsCjI1LDI0XSxbMCwyNSwzNl0sWzAsMjUsNDhdLFsxLDI1LDE4XSxbMSwyNSwyNF0sWzEsMjUsMzZdLFsxLDI1LDQ4XV0sdGh1bWJfdXA6W1swLDI0LDEyXSxbMCwyNCwxOF0sWzAsMjQsMjRdLFswLDI0LDM2XSxbMCwyNCw0OF0sWzEsMjQsMTJdLFsxLDI0LDE4XSxbMSwyNCwyNF0sWzEsMjQsMzZdLFsxLDI0LDQ4XV0sdGh1bWJfdXBfZG93bjpbWzAsNCwyNF0sWzEsNCwyNF1dLHRpbHQ6W1sxLDQsMjRdXSx0aW1lbGluZTpbWzEsMywyNF1dLHRpbWVsaW5lX3NwYXJrOltbMSwxLDI0XV0sdGltZXN0YW1wX2FkZDpbWzEsMSwyNF1dLHRvb2xib3g6W1swLDQsMjRdLFsxLDQsMjRdXSx0cmFuc2NyaXB0OltbMSwyLDI0XV0sdHJhbnNpdGlvbjpbWzAsNSwyNF0sWzEsNSwyNF1dLHRyYW5zbGF0ZTpbWzEsNCwxOF0sWzEsNCwyNF1dLHRyYXNoX2NhbjpbWzAsMTAsMjRdLFsxLDEwLDE4XSxbMSwxMCwyNF1dLHRyZW5kaW5nOltbMCwyLDI0XSxbMSwyLDI0XV0sdHJpYW5nbGVfZG93bjpbWzAsOCwKMThdLFswLDgsMjRdLFsxLDgsMjRdXSx0cmlhbmdsZV91cDpbWzAsMywxOF0sWzAsMywyNF0sWzEsMywyNF1dLHRyb3BoeTpbWzAsMywyNF0sWzEsMywyNF1dLHRydWNrOltbMCw1LDI0XSxbMSw1LDI0XV0sdHY6W1swLDgsMjRdLFsxLDgsMjRdLFsxLDgsNDhdXSx0dl9hcnJvd19sZWZ0OltbMSwyLDI0XV0sdHZfY2lyY2xlOltbMCwzLDI0XSxbMSwzLDI0XV0sdHZfbW9iaWxlOltbMSwyLDI0XSxbMSwyLDM2XV0sdHZfc2xhc2g6W1sxLDEsMjRdXSx1bmFyY2hpdmU6W1sxLDEsMjRdXSx1bmRvOltbMSwyLDE4XSxbMSwyLDI0XV0sdXBsb2FkOltbMSw1LDI0XV0sdmFyaWFibGU6W1sxLDQsMjRdXSx2aWRlbzpbWzAsMywyNF0sWzEsMywxOF0sWzEsMywyNF1dLHZpZGVvX2NhbWVyYTpbWzAsOSwyNF0sWzAsOSw0OF0sWzEsOSwyNF0sWzEsOSw0OF1dLHZpZGVvX2NhbWVyYV9hZGQ6W1sxLDIsMjRdXSx2aWRlb19jYW1lcmFfc2xhc2g6W1sxLDEsMjRdXSx2aWRlb19saW5rOltbMSw1LDE4XSwKWzEsNSwyNF1dLHZpZGVvX3BvcnRyYWl0X3NwYXJrOltbMSwxLDI0XV0sdmlkZW9fcmV2ZXJzZTpbWzEsMSwyNF1dLHZpZGVvX3NsYXNoOltbMSwxLDEyXSxbMSwxLDE4XSxbMSwxLDI0XSxbMSwxLDM2XSxbMSwxLDQ4XV0sdmlkZW9fc3Bhcms6W1sxLDIsMjRdXSx2aWRlb19zdGFja19zcGFyazpbWzEsMSwxOF0sWzEsMSwyNF1dLHZpZGVvX3N0aXRjaDpbWzEsMiwyNF1dLHZpZGVvX3dhdmVmb3JtOltbMSwxLDI0XV0sdmlld19jb2x1bW4yOltbMSwxLDI0XV0sdmlld19jb2x1bW4zOltbMCwyLDI0XSxbMSwyLDI0XV0sdmlld19jb2x1bW4zX3JvdzI6W1swLDIsMjRdLFsxLDIsMjRdXSx2aWV3X2NvbXBhY3Q6W1swLDIsMjRdLFsxLDIsMjRdXSx2aWV3X2ZlZWQ6W1swLDIsMjRdLFsxLDIsMjRdXSx2aWV3X2xpc3Q6W1sxLDEsMjRdXSx2aWV3X3JvdzI6W1swLDIsMjRdLFsxLDIsMjRdXSx2aWV3X3RpbWVsaW5lOltbMSwxLDI0XV0sdmlld2ZpbmRlcjpbWzEsMSwxMl0sWzEsMSwxOF0sClsxLDEsMjRdXSx2aWduZXR0ZTpbWzEsMSwyNF1dLHZvbHVtZV9mYWRlOltbMSwyLDI0XV0sdm9sdW1lX21heDpbWzAsMiwyNF0sWzEsMiwyNF1dLHZvbHVtZV9taW46W1swLDIsMjRdLFsxLDIsMjRdXSx2b2x1bWVfbXV0ZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHZyOltbMCw3LDI0XSxbMSw3LDI0XV0sd2F0Y2g6W1sxLDEsMjRdXSx3YXRlcjpbWzEsMSwyNF1dLHdhdmVmb3JtOltbMSwzLDI0XSxbMSwzLDQ4XV0sd2F2ZWZvcm1fc3Bhcms6W1sxLDIsMjRdXSx3aWZpX3RldGhlcmluZzpbWzEsMSwyNF1dLHdyZW5jaDpbWzAsMywxOF0sWzAsMywyNF0sWzEsMywxOF0sWzEsMywyNF1dLHg6W1sxLDExLDE4XSxbMSwxMSwyNF0sWzEsMTEsMzZdXSx4X2NpcmNsZTpbWzAsOSwyNF0sWzEsOSwxOF0sWzEsOSwyNF1dLHhfb2N0YWdvbjpbWzEsMywxMl0sWzEsMywyNF1dLHhfcmVjdGFuZ2xlOltbMSwxLDI0XV0seWVuX3NpZ25fcmVjdGFuZ2xlOltbMCwyLDI0XSxbMSwyLDI0XV0seW91dHViZTpbWzAsCjIsMjRdLFsxLDIsMjRdXSx5b3V0dWJlX2tpZHM6W1swLDUsMjRdLFsxLDUsMjRdXSx5b3V0dWJlX2xhYnM6W1swLDEsMjRdXSx5b3V0dWJlX211c2ljOltbMCw3LDI0XSxbMSw3LDI0XV0seW91dHViZV9zaG9ydHM6W1swLDExLDI0XSxbMSwxMSwyNF1dLHlvdXR1YmVfc3R1ZGlvOltbMCw4LDI0XSxbMSw4LDI0XV0seW91dHViZV90djpbWzAsOCwyNF0sWzEsOCwyNF1dLHpvb21fYXV0bzpbWzEsMiwyNF1dLHpvb21faW46W1swLDIsMjRdLFsxLDIsMjRdXSx6b29tX291dDpbWzAsMiwyNF0sWzEsMiwyNF1dfTt2YXIgWHFhPXtWT0xVTUVfVVBfREVMSElfUExBWUVSX0ZJTExFRDoiVk9MVU1FX01BWCIsVk9MVU1FX09GRl9ERUxISV9QTEFZRVI6IlZPTFVNRV9NVVRFIixWT0xVTUVfRE9XTl9ERUxISV9QTEFZRVJfRklMTEVEOiJWT0xVTUVfTUlOIixDTE9TRURfQ0FQVElPTl9ERUxISV9QTEFZRVI6IkNBUFRJT05TIixDTE9TRURfQ0FQVElPTl9ERUxISV9QTEFZRVJfRklMTEVEOiJDQVBUSU9OUyIsU1VCVElUTEVTX0RFTEhJX1BMQVlFUjoiU1VCVElUTEVTIixTVUJUSVRMRVNfREVMSElfUExBWUVSX0ZJTExFRDoiU1VCVElUTEVTIixQTEFZRVJfRlVMTF9FTlRFUl9BTFQ6IlBMQVlFUl9GVUxMX0VOVEVSX0FMVCIsUExBWUVSX0ZVTExfRVhJVF9BTFQ6IlBMQVlFUl9GVUxMX0VYSVRfQUxUIixQQVVTRV9ERUxISV9QTEFZRVJfRklMTEVEOiJQQVVTRSIsUExBWV9BUlJPV19ERUxISV9QTEFZRVJfRklMTEVEOiJQTEFZX0FSUk9XIn0sdlo9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWF9bWYoYSwKYil7dmFyIGM9WHFhW2EuaWNvbk5hbWUudG9VcHBlckNhc2UoKV07YyYmKGEuaWNvbk5hbWU9Yyk7dmFyIGQ9YS5pY29uTmFtZTtkPWQucmVwbGFjZSgvLS9nLCJfIik7YT17Li4uYSxpY29uTmFtZTp1WShkLCEhYyl8fGQudG9Mb3dlckNhc2UoKX07cmV0dXJuIF8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpfHxjP3JZKFdxYSxhLHRoaXMuaj8ucnd8fEFwYSxiKTpyWShWcWEsYSx0aGlzLmo/LnJ3fHx6cGEsYil9fTt2WltfLkxuXT1bXy5JbihfLm5PKV07dmFyIEJwYT1uZXcgU2V0KFsiY2kiLCJjciIsImNhcm1sIl0pLHZZPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zaWduYWxzPVtdO3RoaXMuaj1uZXcgTWFwO3RoaXMuQj1uZXcgU2V0O3RoaXMubz1uZXcgTWFwO3RoaXMudj1uZXcgTWFwfVZxKGEpe2lmKGEubGVuZ3RoPjEpe3ZhciBiPVtdO2xldCBmPU9iamVjdC5jcmVhdGUobnVsbCk7Zm9yKHZhciBjIG9mIGEpZltjXXx8KGIucHVzaChjKSxmW2NdPSEwKTthPWJ9aWYoYS5sZW5ndGg9PT0xKXZhciBkPWFbMF07ZWxzZXtjPWE7Yj0iIjtjLnNvcnQoKTtmb3IoZSBvZiBjKWIrPWUrInwiO3ZhciBlPWI7aWYoIXRoaXMuai5nZXQoZSkpe2M9MDtiPVtdO2ZvcihkIG9mIGEpYysrLHhZKHRoaXMsZCl8fGIucHVzaChkKTtjPmIubGVuZ3RoP3RoaXMuc2lnbmFscy5wdXNoKGUpOkNwYSh0aGlzLGUsYSxiKX1kPWV9cmV0dXJuIGR9SGgoYSxiLGMsZCxlKXt4WSh0aGlzLGMpP18uQ2soKS5HYShhLGIsZCk6KGUmJihhPXlZKGEpLEFZKHRoaXMsCmEsYixjLGUpKSxlPXRoaXMuby5nZXQoYyksZXx8KHRoaXMuby5zZXQoYyxbXSksZT10aGlzLm8uZ2V0KGMpKSxlLnB1c2goe3hoOmEscHJpb3JpdHk6YixkZWxheTpkfSkpfWFkZExpc3RlbmVyKGEsYixjKXtjJiYoYj15WShiKSxBWSh0aGlzLGIsMCxhLGMpKTtjPXRoaXMudi5nZXQoYSk7Y3x8KHRoaXMudi5zZXQoYSxbXSksYz10aGlzLnYuZ2V0KGEpKTtjLnB1c2goYil9V20oYSl7aWYoIXhZKHRoaXMsYSkpe3RoaXMuQi5hZGQoYSk7dmFyIGI9dGhpcy5vLmdldChhKTtpZihiKXtmb3IobGV0IGMgb2YgYilfLkNrKCkuR2EoYy54aCxjLnByaW9yaXR5LGMuZGVsYXkpO3RoaXMuby5kZWxldGUoYSl9aWYoYj10aGlzLnYuZ2V0KGEpKXtmb3IobGV0IGMgb2YgYiljKCk7dGhpcy52LmRlbGV0ZShhKX10aGlzLnNpZ25hbHMucHVzaChhKTt0aGlzLkIuZGVsZXRlKGEpfX19O3ZZLnByb3RvdHlwZS5wcm9jZXNzU2lnbmFsPXZZLnByb3RvdHlwZS5XbTsKdlkucHJvdG90eXBlLnBhcmtPclNjaGVkdWxlSm9iPXZZLnByb3RvdHlwZS5IaDt2WS5wcm90b3R5cGUub25Bbnk9dlkucHJvdG90eXBlLlZxO18ucmEoInl0c2lnbmFscy5nZXRJbnN0YW5jZSIsd1kpO3ZZLnByb3RvdHlwZS5vbkFueT12WS5wcm90b3R5cGUuVnE7dlkucHJvdG90eXBlLnBhcmtPclNjaGVkdWxlSm9iPXZZLnByb3RvdHlwZS5IaDt2WS5wcm90b3R5cGUucHJvY2Vzc1NpZ25hbD12WS5wcm90b3R5cGUuV207dmFyIHpZPW5ldyBTZXQoWyJlb3AiLCJlb2NzIiwiZGwiLCJwY2wiXSk7dmFyIHZxYT1jbGFzcyBleHRlbmRzIF8uV3N7Y29uc3RydWN0b3IoYSl7dmFyIGI9e307c3VwZXIoInVuaW5pdGlhbGl6ZWQiKTt0aGlzLmVudj1hO3RoaXMudHJhbnNpdGlvbnM9W3tmcm9tOiJ1bmluaXRpYWxpemVkIix0bzoiaW5pdGlhbGl6ZWQiLGFjdGlvbjp0aGlzLmluaXR9LHtmcm9tOiJpbml0aWFsaXplZCIsdG86InJlbmRlcmluZyIsYWN0aW9uOnRoaXMuS30se2Zyb206InJlbmRlcmluZyIsdG86InJlbmRlcmVkIixhY3Rpb246dGhpcy5EfSx7ZnJvbToicmVuZGVyZWQiLHRvOiJhZnRlci1yZW5kZXItZGVmZXJyZWQiLGFjdGlvbjp0aGlzLm99XTtiLkZnIT09dm9pZCAwJiYodGhpcy5CLkZnPWIuRmcpfWFzeW5jIGluaXQoYSl7dGhpcy5CLkZnP2F3YWl0IGEodGhpcy5lbnYpOmEodGhpcy5lbnYpO3RoaXMuaiYmYXdhaXQgdGhpcy5qLm8ucHJvbWlzZTt3WSgpLkhoKCgpPT57dGhpcy50cmFuc2l0aW9uKCJyZW5kZXJpbmciKX0sMTAsImNpIil9YXN5bmMgSyhhKXt0aGlzLkIuRmc/CmF3YWl0IGEodGhpcy5lbnYpOmEodGhpcy5lbnYpO3RoaXMuaiYmYXdhaXQgdGhpcy5qLm8ucHJvbWlzZTt3WSgpLkhoKCgpPT57dGhpcy50cmFuc2l0aW9uKCJyZW5kZXJlZCIpfSwxMCwiY3IiKX1hc3luYyBEKGEpe3RoaXMuQi5GZz9hd2FpdCBhKHRoaXMuZW52KTphKHRoaXMuZW52KTt0aGlzLmomJmF3YWl0IHRoaXMuai5vLnByb21pc2U7d1koKS5IaCgoKT0+e3RoaXMudHJhbnNpdGlvbigiYWZ0ZXItcmVuZGVyLWRlZmVycmVkIil9LDEwLCJjYXJtbCIpfWFzeW5jIG8oYSl7YSh0aGlzLmVudil9fTt2YXIgd1o9ITEsd3FhPXtpbml0aWFsaXplZDp7cHJpb3JpdHk6MTAsY2FsbGJhY2s6ZnVuY3Rpb24oKXt3Wnx8KF8uZHcoe0dmOmE9PnthLmVsJiZfLnV5KGEuZWwsYS5wcm9wcyl9LEhmOmE9PntfLnN5KGEuZWwpfX0pLHdaPSEwKX19fTt2YXIgQ1k9Xy5MKCh7ZGF0YTphfSk9PntmdW5jdGlvbiBiKGYpe18ublAoKTtmLnN0b3BQcm9wYWdhdGlvbigpfXZhciBjPV8udkUoImRpdiIpLGQ9Xy54KCJ3ZWJfcmVtb3ZlX3NuYWNrYmFyX2FjdGlvbnMiKTtfLlVKKCgpPT57fSk7dmFyIGU9e2J1dHRvbk92ZXJyaWRlczp7c3R5bGU6ImNhbGwtdG8tYWN0aW9uLWludmVyc2UifX07cmV0dXJuIF8uSygieXRtLW5vdGlmaWNhdGlvbi1hY3Rpb24tcmVuZGVyZXIiLG51bGwsXy5LKCJkaXYiLHsiYXJpYS1saXZlIjpfLmZyPyJvZmYiOiJwb2xpdGUiLGNsYXNzOiJub3RpZmljYXRpb24tYWN0aW9uLXJlc3BvbnNlLXRleHQifSxfLksoXy5JSix7ZGF0YTooKT0+YSgpLnJlc3BvbnNlVGV4dH0pKSxfLksoXy5PLHtBOigpPT5hKCkuYWN0aW9uQnV0dG9uJiYhZCx0aGVuOigpPT5fLksoImRpdiIse2VsOmMsY2xhc3M6Im5vdGlmaWNhdGlvbi1hY3Rpb24tYnV0dG9uIiwib246Y2xpY2siOmJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5hY3Rpb25CdXR0b259LAp7YnV0dG9uUmVuZGVyZXI6KHtkYXRhOmZ9KT0+Xy5LKF8ucE8se2RhdGE6ZiwuLi5lfSksdG9nZ2xlQnV0dG9uUmVuZGVyZXI6KHtkYXRhOmZ9KT0+Xy5LKF8ucU8se2RhdGE6ZiwuLi5lfSl9KSl9KSl9LCJiZiIpO0NZLmlkb21Db21wYXQ9ITA7dmFyIEVZO3ZhciBHWT1uZXcgXy5lRTt2YXIgR3BhPXthZGRUb1BsYXlsaXN0UmVuZGVyZXI6ITB9O3ZhciBMWTt2YXIgUXBhPV8uJE4uQ3Q7dmFyIFRZPV8uTCgoe2RhdGE6YX0pPT57dmFyIGI9Xy51RSgieXRtLXNoYXJlLXRhcmdldC1yZW5kZXJlciIpO18uVUooKCk9PntiLnZhbHVlLmxheWVyPTd9KTt2YXIgYz0oKT0+Xy5CKGEoKS5uYXZpZ2F0aW9uRW5kcG9pbnQsXy5WRCk/LnVybCxkPSgpPT57YSgpO3JldHVybiExfTtyZXR1cm4gXy5LKCJ5dG0tc2hhcmUtdGFyZ2V0LXJlbmRlcmVyIix7ZWw6Yiwib246Y2xpY2siOmZ1bmN0aW9uKGUpe2Uuc3RvcFByb3BhZ2F0aW9uKCk7aWYoZCgpKXt2YXIgZj1jKCksaD1hKCkubmF2aWdhdGlvbkVuZHBvaW50Py5jbGlja1RyYWNraW5nUGFyYW1zO18uekooaCw3KTtuZXcgTW96QWN0aXZpdHkoe25hbWU6Im5ldyIsZGF0YTp7dHlwZToid2Vic21zL3NtcyIsYm9keTpmfX0pO05ZKCk7ZS5wcmV2ZW50RGVmYXVsdCgpO2Uuc3RvcFByb3BhZ2F0aW9uKCl9ZWxzZSBOWSgpfX0sXy5LKF8uTyx7QTpkLHRoZW46KCk9Pl8uSygiYSIse2hyZWY6YyxjbGFzczoic2hhcmUtdGFyZ2V0LWxpbmsifSwKXy5LKF8uSUose2RhdGE6KCk9PmEoKS50aXRsZX0pKSxXOigpPT5fLksoXy5uSCx7Y2xhc3NOYW1lOiJzaGFyZS10YXJnZXQtbGluayIsY29tbWFuZDooKT0+YSgpLm5hdmlnYXRpb25FbmRwb2ludCx0YXJnZXQ6Il9ibGFuayJ9LF8uSyhfLklKLHtkYXRhOigpPT5hKCkudGl0bGV9KSl9KSl9LCJjZiIpO1RZLmlkb21Db21wYXQ9ITA7dmFyIFlxYT1fLiROLkNBTkNFTCxYcGE9Xy5MKCh7ZGF0YTphfSk9PntmdW5jdGlvbiBiKGYpe3ZhciBoPV8ueSgpLnJlc29sdmUoXy55UCksaz1SWShhKCkpO2YucHJldmVudERlZmF1bHQoKTtrJiZfLnpKKGssNyk7Xy5zUChlKTtoPy5sZCgpO18uek4oKTtmLnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGMoZil7Xy55KCkucmVzb2x2ZShfLnlQKT8ubGQoKTtfLnpOKCk7Zi5zdG9wUHJvcGFnYXRpb24oKX12YXIgZD0oKT0+T1koYSgpKSxlPSJ1bmlmaWVkLXNoYXJlLXVybC1pbnB1dCIrXy5PSCgpO3JldHVybiBfLksoXy5yRSx7UWc6KCk9Pl8uSyhfLkFQLG51bGwsXy5LKF8uSUose2RhdGE6KCk9Pnt2YXIgZj1hKCkuaGVhZGVyPy5zaGFyZVBhbmVsSGVhZGVyUmVuZGVyZXI/LnRpdGxlPy5zaGFyZVBhbmVsVGl0bGVWMTVSZW5kZXJlcj8udGl0bGU7cmV0dXJuIGY/Zjp7c2ltcGxlVGV4dDoiU2hhcmUifX19KSkscWs6KCk9Pl8uSyhfLklCLG51bGwsXy5LKF8uTyx7QTooKT0+CiEwLHRoZW46KCk9Pl8uSygiaW5wdXQiLHt2YWx1ZTpkLCJzZWxlY3Rpb24tZW5kIjowLGNsYXNzOiJ1bmlmaWVkLXNoYXJlLXVybC1pbnB1dCIsaWQ6ZSwib246Y2xpY2siOmIsImFyaWEtbGFiZWwiOigpPT5gJHtfLiROLnNvfSAke09ZKGEoKSl9YCxyZWFkb25seTohMH0pfSksXy5LKF8uZ0cse3BhOigpPT5TWShhKCkpfHxbXX0sZj0+Xy5LKF8uTyx7QTooKT0+Zi5zaGFyZVRhcmdldFJlbmRlcmVyLHRoZW46aD0+Xy5LKFRZLHtkYXRhOmh9KX0pKSksUHI6KCk9Pl8uSyhfLnpQLG51bGwsXy5LKCJidXR0b24iLHtjbGFzczoiY29tcGFjdCIsIm9uOmNsaWNrIjpjfSxZcWEpKX0pfSwiZGYiKSxRWT1fLkwoKHtzaG9ydFVybDphLHRyYWNraW5nUGFyYW1zOmJ9KT0+e2Z1bmN0aW9uIGMoZSl7dmFyIGY9ZCxoPWI/LigpO2UucHJldmVudERlZmF1bHQoKTtoJiZfLnpKKGgsNyk7Xy5zUChmKTtOWSgpO18uek4oKTtlLnN0b3BQcm9wYWdhdGlvbigpfXZhciBkPSJ1bmlmaWVkLXNoYXJlLXVybC1pbnB1dCIrCl8uT0goKTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+ITAsdGhlbjooKT0+Xy5LKCJpbnB1dCIse2NsYXNzOiJ1bmlmaWVkLXNoYXJlLXVybC1pbnB1dCIsaWQ6ZCx2YWx1ZTphLHJlYWRvbmx5OiEwLCJhcmlhLWxhYmVsIjooKT0+YCR7Xy4kTi5zb30gJHthKCl9YCwib246Y2xpY2siOmMsInNlbGVjdGlvbi1lbmQiOjB9KX0pfSwiZWYiKTtRWS5pZG9tQ29tcGF0PSEwO3ZhciAkcGE9Xy4kTi5EdCxhcWE9Xy4kTi5ldTtfLnJhKCJ5dC5wdWJzdWIucHVibGlzaCIsXy5Peik7dmFyIHdYPXthdWRpb1RyYWNrU2VsZWN0QWN0aW9uQ29tbWFuZDpWVyhUcWEpLGJyb3dzZUVuZHBvaW50OigpPT5GWShJcGEpLGNhcHRpb25MYW5ndWFnZVNlbGVjdEFjdGlvbkNvbW1hbmQ6VlcoclopLGNvbW1hbmRFeGVjdXRvckNvbW1hbmQ6KCk9PkZZKEpwYSksY29weVRleHRFbmRwb2ludDooKT0+RlkoTHBhKSxlbnRpdHlVcGRhdGVDb21tYW5kOlZXKHBaLFtuWl0pLGZlZWRiYWNrRW5kcG9pbnQ6KCk9PkZZKE1ZKSxtb2RpZnlDaGFubmVsTm90aWZpY2F0aW9uUHJlZmVyZW5jZUVuZHBvaW50OigpPT5GWShOcGEpLG5hdGl2ZUFwcERlZXBsaW5rRW5kcG9pbnQ6KCk9PkZZKHBvYSksb3BlblBvcHVwQWN0aW9uOigpPT5GWShEcGEpLHBob25lRGlhbGVyRW5kcG9pbnQ6KCk9PkZZKFBwYSkscGxheWxpc3RFZGl0RW5kcG9pbnQ6KCk9PkZZKFJwYSksc2VuZFNtc0VuZHBvaW50OigpPT5GWShUcGEpLHNoYXJlRW50aXR5RW5kcG9pbnQ6KCk9PkZZKFpwYSksc2hvd0F1ZGlvVHJhY2tQaWNrZXJBY3Rpb25Db21tYW5kOlZXKHNaKSwKc2hvd0NhcHRpb25MYW5ndWFnZVNlbGVjdEFjdGlvbkNvbW1hbmQ6VlcodFopLHNob3dFbmdhZ2VtZW50UGFuZWxFbmRwb2ludDooKT0+RlkoZHFhKSxzaG93U2hlZXRDb21tYW5kOlZXKHFaLFtfLmNMLCRZXSksc2lnbkluRW5kcG9pbnQ6KCk9PkZZKGZxYSksc3Vic2NyaWJlRW5kcG9pbnQ6KCk9PkZZKFdZKSx1bmRvRmVlZGJhY2tFbmRwb2ludDooKT0+RlkoTVkpLHVuc3Vic2NyaWJlRW5kcG9pbnQ6KCk9PkZZKFdZKSx1cmxFbmRwb2ludDooKT0+RlkoaHFhKSx1c2VyRmVlZGJhY2tFbmRwb2ludDooKT0+RlkoaXFhKSx3YXRjaEVuZHBvaW50OigpPT5GWShFcGEpfTt2YXIgeFo9Xy5MKCh7Y2hpbGRyZW46YSxCcTpiLGlzRnVsbHNjcmVlbjpjLHN0eWxlOmQsYXJpYUxhYmVsOmV9KT0+e3ZhciBmPV8udUUoImRpYWxvZyIpO18uVUooKCk9Pnt2YXIgaD0oKT0+e30saz1mLnZhbHVlO2suYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGgsITApO18uWXUoKCk9PntrLnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIixoLCEwKX0pfSk7cmV0dXJuIF8uSygiZGlhbG9nIix7ZWw6ZixjbGFzczpfLlAoImRpYWxvZyIsIm1vZGVybi1kaWFsb2ctbGF5b3V0IiwibW9kZXJuLWRpYWxvZyIse3Njcm9sbGFibGU6YiwiZGlhbG9nLWZ1bGxzY3JlZW4iOmMsInJvdW5kZWQtY29udGFpbmVyIjooKT0+IWM/LigpfSkscm9sZToiZGlhbG9nIiwiYXJpYS1tb2RhbCI6ITAsc3R5bGU6ZCwiYXJpYS1sYWJlbCI6ZX0sYSl9LCJmZiIpO3haLmlkb21Db21wYXQ9ITA7dmFyIFpxYT1jbGFzc3t9O3ZhciBxcWE9Y2xhc3MgZXh0ZW5kcyBacWF7Y29uc3RydWN0b3IoKXt2YXIgYT17WWw6VXBhLFdrOk5ZfTtzdXBlcigpO3RoaXMubz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0aGlzLm8uaWQ9Imdsb2JhbC1sb2FkZXIiO2RvY3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKHRoaXMubyxkb2N1bWVudC5ib2R5LmZpcnN0Q2hpbGQpO3RoaXMuWWw9YT8uWWw7dGhpcy5Xaz1hPy5Xa31ycSgpe3JldHVybiEhdGhpcy5qfWFzeW5jIG9wZW5EaWFsb2coYSl7dmFyIGI9e3N0YWNrOltdLGVycm9yOnZvaWQgMCxoYXNFcnJvcjohMX07dHJ5e2xldCBjPV8uWnR8fHt9O3RoaXMuWWw/LigpJiZhd2FpdCB0aGlzLldrPy4oKTt0aGlzLnJxKCkmJnRoaXMubGQoKTtfLlZ6KGIsXy52TShjKSk7bGV0IGQ9YS5VbixlPWEuQnEsZj1hLmlzRnVsbHNjcmVlbixoPWEubkosaz1hLmlzUGVyc2lzdGVudCxsPWEuZm9jdXNPbkNsb3NlLG09YS5ybixuPWEuZksscD1hLnN0eWxlLHI9YS5hcmlhTGFiZWw7CnRoaXMuQj1hO3RoaXMudj10aGlzLmxkLmJpbmQodGhpcyk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInN0YXRlLWNoYW5nZSIsdGhpcy52KTt0aGlzLmo9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dGhpcy5qLmlkPSJkaWFsb2ctY29udGFpbmVyIjt0aGlzLmouY2xhc3NOYW1lPV8uYUwoImRpYWxvZy1jb250YWluZXIiLHtbImRpYWxvZy1mdWxsc2NyZWVuIl06Zn0pOyhfLlpPKCl8fGRvY3VtZW50LmJvZHkpLmFwcGVuZENoaWxkKHRoaXMuaik7Xy5mTih0aGlzLmosXy5LKF8uSUIsbnVsbCxfLksoeFose0JxOmUsaXNGdWxsc2NyZWVuOmYsc3R5bGU6cCxhcmlhTGFiZWw6cn0sXy5LKGQsbnVsbCkpLF8uSyhfLlpOLHtsYWJlbDoiZGlhbG9nIixvbmNsaWNrOigpPT57aHx8a3x8dGhpcy5sZCgpfX0pKSk7Xy5KTih0aGlzLmosbCxtKTtuPy4oKX1jYXRjaChjKXtiLmVycm9yPWMsYi5oYXNFcnJvcj0hMH1maW5hbGx5e18uV3ooYil9fWxkKCl7dGhpcy5qJiYodGhpcy5CLkdoPy4oKSwKdGhpcy5CPXZvaWQgMCx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigic3RhdGUtY2hhbmdlIix0aGlzLnYpLHRoaXMudj12b2lkIDAsXy5LTih0aGlzLmopLF8ucEModGhpcy5qKSx0aGlzLmoucmVtb3ZlKCksdGhpcy5qPXZvaWQgMCl9UXUoKXt0aGlzLm8uZmlyc3RDaGlsZCYmdGhpcy5vLnJlbW92ZUNoaWxkKHRoaXMuby5maXJzdENoaWxkKX19O3ZhciBTVz1uZXcgXy5DdCgiSW5uZXJUdWJlVHJhbnNwb3J0IiwiUnYzZTNkIik7bmV3IF8uQ3QoIlBhZ2VSZXF1ZXN0IiwiUnYzZTNkIik7dmFyICRxYT17YXV0b25hdl9vZmZfdG9nZ2xlX3NwYW5uZXI6W1swLDEsMzZdXSxhdXRvbmF2X29uX3RvZ2dsZV9zcGFubmVyOltbMCwxLDM2XV0sYXV0b25hdl9wbGF5X2NpcmNsZTpbWzAsMSwyMF1dLGF1dG9wbGF5OltbMCwyLDI0XV0sY3JlYXRvcl9zdHVkaW9fcmVkX2xvZ286W1swLDIsMjRdXSxlcXVhbGl6ZXI6W1swLDEsMjRdXSxmdWxsc2NyZWVuOltbMSwxLDI0XV0sZnVsbHNjcmVlbl9leGl0OltbMSwxLDI0XV0sZnVsbHNjcmVlbl9mcDpbWzEsMiwyNF1dLGdvb2dsZTpbWzAsMSwyNF1dLGdvb2dsZV9sb2dvOltbMCwyLDI0XV0saW5jb2duaXRvX2NpcmNsZTpbWzAsMSwyNF1dLGtpZHNfcmVkX2xvZ286W1swLDIsMjRdXSxsb2dvOltbMCwyLDY3XV0sbG9nb193aXRoX3RleHQ6W1swLDMsMjBdXSxsb2dvX3dpdGhfdGV4dF9tb25vY2hyb21lOltbMCwxLDIwXV0sbXVzaWNfcmVkX2xvZ286W1swLDIsMjRdXSxwYXVzZV9jaXJjbGU6W1swLDEsMjRdXSxwYXVzZV9vdXRsaW5lZDpbWzAsCjEsMjRdXSxwaXZvdF9saWJyYXJ5OltbMCwxLDI0XV0scGxheV9jaXJjbGVfc2hvcnRzOltbMCwyLDI0XV0scGxheWVyX2F1dG9wbGF5X25leHQ6W1swLDIsMjRdXSxwcmVtaXVtOltbMCwyLDI0XV0scHJlbWl1bV9zdGFuZGFsb25lOltbMCwyLDI0XV0scHJlbWl1bV9zdGFuZGFsb25lX2NhaXJvOltbMCwxLDI0XV0scmluZ29fbG9nbzpbWzAsMiwyNF1dLHNjcmVlbl9saWdodDpbWzEsMSwyNF1dLCJzaG9ydHMtaGVhcnQiOltbMCwxLDI0XSxbMSwxLDI0XV0sInNob3J0cy1oZWFydC1ncmFkaWVudCI6W1swLDEsMjRdLFsxLDEsMjRdXSxzaG9ydHNfY29tbWVudDpbWzAsMSwzMl1dLHNob3J0c19zaGFyZTpbWzAsMSwzMl1dLHNob3J0c190ZXh0X2xvZ286W1swLDIsNzJdXSxzaG9ydHNfdGh1bWJzX2Rvd246W1swLDEsMzJdXSxzaG9ydHNfdGh1bWJzX3VwOltbMCwxLDMyXV0sc3Bhcms6W1swLDEsMjRdLFsxLDEsMjRdXSxzcGFya19zZWFyY2g6W1swLDEsMjRdXSxzdWJkaXJlY3RvcnlfYXJyb3dfcmlnaHQ6W1sxLAoxLDI0XV0sdW5wbHVnZ2VkX3JlZF9sb2dvOltbMCwyLDI0XV0sdmlkZW9feW91dHViZTpbWzAsMSwyNF1dLHdhdGVybWFyazpbWzAsMiwxMTBdXSx5b3V0dWJlOltbMCwyLDI0XV0seW91dHViZV9jcmVhdGVfbG9nbzpbWzAsMSwyNF1dLHlvdXR1YmVfcHJlbWl1bV9sb2dvX3Nob3J0OltbMCwyLDIwXV0seW91dHViZV9wcmVtaXVtX2xvZ29fc2hvcnRfbW9ub2Nocm9tZTpbWzAsMSwyMF1dLHlvdXR1YmVfc2hvcnRzX2JyYW5kXzI0OltbMCwyLDI0XV0seW91dHViZV9zaG9ydHNfZmlsbF9ub190cmlhbmdsZV9yZWRfMTY6W1swLDEsMTZdXX07dmFyIHlaPW5ldyBNYXAoW1sicGxheV9jaXJjbGVfZmlsbGVkIiwiYXV0b25hdl9wbGF5X2NpcmNsZSJdLFsic2VhcmNoIiwic2VhcmNoX2NhaXJvIl0sWyJ0YWJfaG9tZSIsImhvbWVfY2Fpcm8iXSxbInRhYl9zaG9ydHMiLCJ5b3V0dWJlX3Nob3J0c19jYWlybyJdLFsiYWNjb3VudF9jaXJjbGUiLCJwZXJzb25fY2lyY2xlX2NhaXJvIl0sWyJwcmVtaXVtX3N0YW5kYWxvbmUiLCJwcmVtaXVtX3N0YW5kYWxvbmVfY2Fpcm8iXV0pLGFyYT1uZXcgU2V0KFsiYXVkaW9fYmFkZ2UiLCJwYXVzZSIsInBsYXlfYXJyb3ciXSksWVk9Y2xhc3MgZXh0ZW5kcyB2Wntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKTt0aGlzLm89YX1tZihhLGIpe3ZhciBjPXsuLi5hfTthLmljb25OYW1lLnRvTG93ZXJDYXNlKCk9PT0ic2hvcnRzX3RodW1ic191cCImJl8ueCgiZW5hYmxlX3Nob3J0c19oZWFydF9pY29uX2luX3Nob3J0c193YXRjaF9wYWdlIikmJihjLmljb25OYW1lPV8ueCgidXNlX3doaXRlX2ZpbGxlZF9oZWFydF9pY29uX2luX3Nob3J0c193YXRjaF9wYWdlIik/CiJzaG9ydHMtaGVhcnQiOiJzaG9ydHMtaGVhcnQtZ3JhZGllbnQiKTthcmEuaGFzKGEuaWNvbk5hbWUpJiYoYy5pY29uU3R5bGU9InlvdXR1YmVfZmlsbCIpO3laLmhhcyhhLmljb25OYW1lKSYmIV8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpJiYoYS5pY29uTmFtZT15Wi5nZXQoYS5pY29uTmFtZSkpO2EuaWNvbk5hbWU9PT0iYWNjb3VudF9saW5rZWQiJiYoYy5pY29uTmFtZT0iY2lyY2xlc19vdmVybGFwX2NoZWNrIixjLmljb25TdHlsZT0ieW91dHViZV9maWxsIik7YS5pY29uTmFtZT09PSJhY2NvdW50X3VubGlua2VkIiYmKGMuaWNvbk5hbWU9ImNpcmNsZXNfb3ZlcmxhcCIsYy5pY29uU3R5bGU9InlvdXR1YmVfb3V0bGluZSIpO18ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpJiYoYS5pY29uTmFtZT09PSJwbGF5bGlzdF9hZGQiJiYoYy5pY29uTmFtZT0iYm9va21hcmsiKSxhLmljb25OYW1lPT09ImNpcmNsZXNfb3ZlcmxhcF9jaGVjayJ8fGMuaWNvbk5hbWU9PT0iY2lyY2xlc19vdmVybGFwX2NoZWNrIikmJgooYy5pY29uTmFtZT0iYWNjb3VudF9saW5rIixjLmljb25TdHlsZT0ieW91dHViZV9maWxsIik7YT0oYT11WShjLmljb25OYW1lKSk/ey4uLmMsaWNvbk5hbWU6YX06YzthPV8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpJiZhLmljb25OYW1lPT09InlvdXR1YmUiP3ZvaWQgMDpyWSgkcWEsYSx0aGlzLm8/LmVKfHxtcWEsYik7cmV0dXJuIGE/YTpzdXBlci5tZihjLGIpfX07WVlbXy5Mbl09W18uSW4oXy5uTyldO3ZhciBycWE9Y2xhc3MgZXh0ZW5kcyBVcWF7aXNWaXNpYmxlKGEpe3ZhciBiPVByb21pc2UsYz1iLnJlc29sdmU7dmFyIGQ9Xy5vTSgpLmdldFN0YXRlKCkuZW5nYWdlbWVudFBhbmVsPy5xcztyZXR1cm4gYy5jYWxsKGIsYT09PWQpfX07dmFyIGJyYT1jbGFzcyBleHRlbmRzIGtae2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLm9ic2VydmVyPW5ldyBfLmZGKDAsYT0+e3RoaXMubG9nVmlzaWJpbGl0eShhKX0pfW9ic2VydmUoYSxiLGMpe2MuVmJ8fGMuc3RhdGUhPT0idmlzaWJsZSJ8fChjLlZiPSEwKTt2YXIgZD17ZWxlbWVudDphLG9wdGlvbjpjfTtpZighYy5WYnx8Yy5zdGF0ZSE9PSJ2aXNpYmxlIilyZXR1cm4gZDtpZih0eXBlb2YgYiE9PSJmdW5jdGlvbiIpcmV0dXJuIF8uV2koRXJyb3IoImhlYCIrdHlwZW9mIGIpKSxkO2EuX192aXNpYmlsaXR5Q2FsbGJhY2s9Yjt0aGlzLm9ic2VydmVyLm9ic2VydmUoYSk7cmV0dXJuIGR9bG9nVmlzaWJpbGl0eShhKXthLl9fdmlzaWJpbGl0eUNhbGxiYWNrJiZ0eXBlb2YgYS5fX3Zpc2liaWxpdHlDYWxsYmFjaz09PSJmdW5jdGlvbiImJmEuX192aXNpYmlsaXR5Q2FsbGJhY2soYSwidmlzaWJsZSIpfXJmKGEpe2RlbGV0ZSBhLmVsZW1lbnQuX192aXNpYmlsaXR5Q2FsbGJhY2s7CnRoaXMub2JzZXJ2ZXIudW5vYnNlcnZlKGEuZWxlbWVudCl9ZGlzcG9zZSgpe3RoaXMub2JzZXJ2ZXIuZGlzY29ubmVjdCgpfX07dmFyIG9xYT0iSW50ZXJzZWN0aW9uT2JzZXJ2ZXIiaW4gd2luZG93P25ldyBNcWE6bmV3IGJyYTtfLnVQPV8uYlo7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoIm1lSDlFYiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkJQPWZ1bmN0aW9uKGEsYj0hMSl7dmFyIGMsZD0oKT0+e3ZhciBlPV8uTEIoITApO18uZ3YrKzt0cnl7Yz1fLmJDKGEoKSksXy5JQSghMSl9Y2F0Y2goZil7dGhyb3cgXy5JQSghMCksXy5VdShmLDQpO31maW5hbGx5e18uTEIoZSl9fTtiPWJ8fF8uWnQ/Xy51dihkLGIpOl8uaXcoZCk7cmV0dXJuW2MsYl19O18uS0I9Xy5sQzsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIHppYSxBaWEsQmlhLEVpYSxDaWEsRGlhLEZpYTt6aWE9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQWEoYSkmJmEubm9kZVR5cGU9PTE/YS5nZXRBdHRyaWJ1dGUoImpzbmFtZSIpPT09ImNvRlN4ZSI6ITF9O0FpYT1mdW5jdGlvbihhLGIpe2IuaWR8fChiLmlkPSJvdyIrXy5mdyhiKSk7YS5zZXRBdHRyaWJ1dGUoImpzb3duZXIiLGIuaWQpO2EuX19vd25lcj1iO3ZhciBjPV8uZ3coYix6aWEpO2MmJihfLkdDLmhhcyhjKXx8Xy5HQy5zZXQoYyxbXSksXy5HQy5nZXQoYykucHVzaChhKSk7KGM9Xy5GQy5nZXQoYikpfHxfLkZDLnNldChiLGM9W10pO2MuaW5jbHVkZXMoYSl8fGMucHVzaChhKTtiLnNldEF0dHJpYnV0ZSgiX19JU19PV05FUiIsITApfTtCaWE9ZnVuY3Rpb24oKXt2YXIgYT1fLkNBKDEpO2E9Xy5jdShhLF8uTEMpO2lmKCEoXy5idShhKXx8YVtfLk12XSYmIWEudm8pKXJldHVybiBhLnZhbHVlfTsKRWlhPWZ1bmN0aW9uKCl7dmFyIGE9Xy5DQSgyKSxiPW5ldyBTZXQsYz0oKT0+e2IuZm9yRWFjaChkPT52b2lkIGQoKSk7Yi5jbGVhcigpfTtfLll1KGMpO3JldHVyblsoZCxlKT0+e3ZhciBmPV8uJHQoYSk7dHJ5e2xldCBoPUNpYShEaWEoZCksZSk7Yi5hZGQoaCk7cmV0dXJuKCk9PntoKCk7Yi5kZWxldGUoaCl9fWZpbmFsbHl7Xy4kdChmKX19LGNdfTtfLkNQPWZ1bmN0aW9uKHtjaGlsZHJlbjphLHJvb3Q6Yn0pe18ub0YoKCk9Pnt2YXIgW2NdPUVpYSgpO2M9YyhiLGEpO18uWXUoYyl9KTtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpfTtDaWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaWEoYSk7KGE9QmlhKCkpJiZBaWEoYyxhKTt2YXIgW2QsZV09Xy5CUChiLCEwKTtmb3IobGV0IGYgb2YgZCljLmFwcGVuZENoaWxkKGYpO18uVkIubG9nKGMpO3JldHVybigpPT57ZSgpO2MucGFyZW50Tm9kZT8ucmVtb3ZlQ2hpbGQoYyl9fTsKRGlhPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpe2E9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihhKTtpZighKDAsXy5wcikoYSkpdGhyb3cgRXJyb3IoInBgYCIrU3RyaW5nKGEpKTtyZXR1cm4gYX1pZihfLmpCKGEpKXJldHVybiBhO2lmKCFhLkNrJiYhYS5sdSl7dmFyIGI9YS5qdTtiPUVycm9yKCJVY2AiKyh0eXBlb2YgYj09PSJzeW1ib2wiP2IuZGVzY3JpcHRpb246YikpO2Eua3U9ITA7dGhyb3cgYjt9cmV0dXJuIGEudmFsdWV9O0ZpYT1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoYS5uYW1lc3BhY2VVUkksYS5uYW1lc3BhY2VVUkk9PT0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPyJnIjoiZGl2Iik7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoYil9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkRQPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5DQSgpLGQ9ZT0+e18ub0goYywoKT0+e2IoZSl9KX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoYSxkLHZvaWQgMCk7Xy5ZdSgoKT0+e3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKGEsZCx2b2lkIDApfSl9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgSWlhLEhQLEZQLEdQLEtpYSxNaWEsTGlhLExQO0lpYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsInN0cmluZ0VudGl0eSIsYil9OwpIUD1mdW5jdGlvbihhLGIsYyl7aWYoYSl7dmFyIGQ9YS5saWtlU3RhdHVzO3JldHVybiBiP3tzdHlsZTp7c3R5bGVUeXBlOiJTVFlMRV9URVhUIn0sdG9nZ2xlZFN0eWxlOntzdHlsZVR5cGU6IlNUWUxFX0RFRkFVTFRfQUNUSVZFIn0saXNUb2dnbGVkOmQ9PT0iTElLRSIsaXNEaXNhYmxlZDohYS5saWtlc0FsbG93ZWQsZGVmYXVsdEljb246e2ljb25UeXBlOmN9LGRlZmF1bHRUZXh0OmQ9PT0iTElLRSI/YS5saWtlQ291bnRXaXRoVW5saWtlVGV4dDphLmxpa2VDb3VudFRleHQsdG9nZ2xlZFRleHQ6ZD09PSJMSUtFIj9hLmxpa2VDb3VudFRleHQ6YS5saWtlQ291bnRXaXRoTGlrZVRleHQsZGVmYXVsdE5hdmlnYXRpb25FbmRwb2ludDpGUChhLCJMSUtFIiksZGVmYXVsdFNlcnZpY2VFbmRwb2ludDpHUChhLCJMSUtFIiksdG9nZ2xlZFNlcnZpY2VFbmRwb2ludDpHUChhLCJJTkRJRkZFUkVOVCIpLGRlZmF1bHRUb29sdGlwOl8uYU4oYS5saWtlQ291bnRUb29sdGlwVGV4dCksdG9nZ2xlZFRvb2x0aXA6Xy5hTihhLmxpa2VDb3VudFRvb2x0aXBUZXh0KSwKdGFyZ2V0SWQ6YS50YXJnZXRJZH06e3N0eWxlOntzdHlsZVR5cGU6IlNUWUxFX1RFWFQifSx0b2dnbGVkU3R5bGU6e3N0eWxlVHlwZToiU1RZTEVfREVGQVVMVF9BQ1RJVkUifSxpc1RvZ2dsZWQ6ZD09PSJESVNMSUtFIixpc0Rpc2FibGVkOiFhLmxpa2VzQWxsb3dlZCxkZWZhdWx0SWNvbjp7aWNvblR5cGU6Y30sZGVmYXVsdFRleHQ6ZD09PSJESVNMSUtFIj9hLmRpc2xpa2VDb3VudFdpdGhVbmRpc2xpa2VUZXh0OmEuZGlzbGlrZUNvdW50VGV4dCx0b2dnbGVkVGV4dDpkPT09IkRJU0xJS0UiP2EuZGlzbGlrZUNvdW50VGV4dDphLmRpc2xpa2VDb3VudFdpdGhEaXNsaWtlVGV4dCxkZWZhdWx0TmF2aWdhdGlvbkVuZHBvaW50OkZQKGEsIkRJU0xJS0UiKSxkZWZhdWx0U2VydmljZUVuZHBvaW50OkdQKGEsIkRJU0xJS0UiKSx0b2dnbGVkU2VydmljZUVuZHBvaW50OkdQKGEsIklORElGRkVSRU5UIiksZGVmYXVsdFRvb2x0aXA6Xy5hTihhLmRpc2xpa2VDb3VudFRvb2x0aXBUZXh0KSx0b2dnbGVkVG9vbHRpcDpfLmFOKGEuZGlzbGlrZUNvdW50VG9vbHRpcFRleHQpfX19OwpGUD1mdW5jdGlvbihhLGIpe2lmKGI9PT0iTElLRSIpcmV0dXJuIGEubGlrZUNvbW1hbmQ7aWYoYj09PSJESVNMSUtFIilyZXR1cm4gYS5kaXNsaWtlTmF2aWdhdGlvbkVuZHBvaW50fTtHUD1mdW5jdGlvbihhLGIpe3JldHVybiBhLnNlcnZpY2VFbmRwb2ludHM/LmZpbmQoYz0+Xy5CKGMsXy5kTyk/LnN0YXR1cz09PWIpfTtfLklQPWZ1bmN0aW9uKGEpe3JldHVybntjb250ZW50OmF9fTsKXy5KUD1mdW5jdGlvbihhLGIsYyl7Yj1jfHwoYj8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg/PzApKkppYTthPWEudGh1bWJuYWlscztpZighYSlyZXR1cm4iIjtjPTA7dmFyIGQ9TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIsZT0wLGY9LU51bWJlci5NQVhfU0FGRV9JTlRFR0VSO2ZvcihsZXQgaz0wO2s8YS5sZW5ndGg7aysrKXtsZXQgbD1hW2tdLndpZHRoLWI7bD49MCYmbDw9ZD8oYz1rLGQ9bCk6bDwwJiZsPmYmJihlPWssZj1sKX12YXIgaD1bXTthLmZvckVhY2goaz0+e2gucHVzaChrLnVybCl9KTtyZXR1cm4gZDwxMDB8fGQ8LWY/YVtjXS51cmw6YVtlXS51cmx9O0tpYT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uQmYoYj0+e18uT0UoKCk9PntiKGEpfSl9KX07TWlhPWZ1bmN0aW9uKGEpe2E9YS5tYXAoTGlhKTtyZXR1cm4gXy5JZihhKS50aGVuKEtpYSl9OwpMaWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuY29tcGxldGU/Xy5LeSgibG9hZCIpOm5ldyBfLkJmKGI9PntmdW5jdGlvbiBjKGQpe2EucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsYyk7YS5yZW1vdmVFdmVudExpc3RlbmVyKCJlcnJvciIsYyk7YihkLnR5cGUpfWEuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsYyk7YS5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsYyl9KX07TFA9ZnVuY3Rpb24oYSl7S1B8fE1pYShbYV0pLnRoZW4oKCk9PntpZighS1Ape3ZhciBiPSgwLF8uZWwpKCk7Xy5BcSgiZnRsIixiLHZvaWQgMCk7S1A9ITB9fSl9O18uTVA9bmV3IF8uSSgic3dpdGNoTGlzdEl0ZW1WaWV3TW9kZWwiKTtfLk5QPV8uTCgoKT0+e3ZhciBhPV8udygiUExBWUVSX1ZBUlMiKSxiPWEudXNlcl9kaXNwbGF5X25hbWUsYz1hLnVzZXJfZGlzcGxheV9pbWFnZSxkPWEudXNlcl9kaXNwbGF5X2NoYW5uZWxfaGFuZGxlLGU9ZCYmXy5JUChkKSxmPSgpPT5fLkIoe2xpc3RJdGVtVmlld01vZGVsOnt0aXRsZTpfLklQKGIpLGxlYWRpbmdBY2Nlc3Nvcnk6e2F2YXRhclZpZXdNb2RlbDp7aW1hZ2U6e3NvdXJjZXM6W3t1cmw6Y31dfX19LHN1YnRpdGxlOmV9fSxfLlpDKTtyZXR1cm4gXy5LKCJhY2NvdW50LWluZm8tbWVudS1pdGVtIix7Y2xhc3M6ImFjY291bnRJbmZvSG9zdCJ9LF8uSyhfLkNELHtkYXRhOmYsSWE6ITAsb25UYXA6KCk9PntkJiZfLkFKKF8ud04oYEAke2R9YCksZigpLCExKX19KSl9LCJ6YiIpO18uTlAuaWRvbUNvbXBhdD0hMDt2YXIge01nOk5pYX09Xy56RyhhPT5hLnRhcmdldD8udmlkZW9JZCk7dmFyIE9QPV8uTChhPT57dmFyIHtkYXRhOmIsYnV0dG9uT3ZlcnJpZGVzOmN9PV8uREMoYSx7YnV0dG9uT3ZlcnJpZGVzOnt9fSksW2QsZV09TmlhKGIpLGY9KCk9PkhQKGQoKSwhMCwiU0hPUlRTX0xJS0UiKSxoPSgpPT5IUChkKCksITEsIlNIT1JUU19ESVNMSUtFIiksaz0obCxtKT0+e20uc3RvcFByb3BhZ2F0aW9uKCk7Zm9yKGxldCBuIG9mIGwpKGw9Xy5CKG4sXy5kTykpJiZkJiZlKHsuLi5kKCksbGlrZVN0YXR1czpsLnN0YXR1c30pfTtyZXR1cm4gXy5LKCJ5dG0tbGlrZS1idXR0b24tcmVuZGVyZXIiLG51bGwsXy5LKF8uTyx7QTooKT0+ZCgpLmxpa2VTdGF0dXMmJiEhZigpJiYhIWgoKSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhfLnFPLHtkYXRhOmYsYnV0dG9uT3ZlcnJpZGVzOigpPT4oe3R5cGU6ZCgpLmxpa2VTdGF0dXM9PT0iTElLRSI/ImZpbGxlZCI6InRvbmFsIiwuLi5jKCl9KSxSazprfSksXy5LKF8uTyx7QTooKT0+IWQoKS5oaWRlRGlzbGlrZUJ1dHRvbix0aGVuOigpPT4KXy5LKF8ucU8se2RhdGE6aCxidXR0b25PdmVycmlkZXM6KCk9Pih7dHlwZTpkKCkubGlrZVN0YXR1cz09PSJESVNMSUtFIj8iZmlsbGVkIjoidG9uYWwiLC4uLmMoKX0pLFJrOmt9KX0pKX0pKX0sIkFiIik7T1AuaWRvbUNvbXBhdD0hMDt2YXIgUFA9Xy5MKCh7ZGF0YTphfSk9Pl8uSygieXRtLW1lbnUtbmF2aWdhdGlvbi1pdGVtLXJlbmRlcmVyIixudWxsLF8uSyhfLndPLHtvbmNsaWNrOmI9Pnt2YXIgYz1hKCk7Xy54TigpJiZfLnpOKCk7Xy5BSihjLm5hdmlnYXRpb25FbmRwb2ludCxjLCExKTtfLkIoYy5uYXZpZ2F0aW9uRW5kcG9pbnQ/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8uaWdub3JlTmF2aWdhdGlvbnx8Yi5zdG9wUHJvcGFnYXRpb24oKX0scm9sZTooKT0+YSgpLm5hdmlnYXRpb25FbmRwb2ludCYmXy5CKGEoKS5uYXZpZ2F0aW9uRW5kcG9pbnQsXy5WRCk/ImxpbmsiOnZvaWQgMH0sXy5LKF8uTUQse2ljb246KCk9PmEoKS5pY29uPy5pY29uVHlwZX0pLF8uSyhfLklKLHtkYXRhOigpPT5hKCkudGV4dH0pKSksIkJiIik7UFAuaWRvbUNvbXBhdD0hMDt2YXIgUVA9Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgYj1fLm1HKCk7cmV0dXJuIF8uSygieXRtLW1lbnUtc2VydmljZS1pdGVtLXJlbmRlcmVyIixudWxsLF8uSyhfLndPLHtvbmNsaWNrOigpPT57dmFyIGM9YSgpLGQ9Yy5zZXJ2aWNlRW5kcG9pbnQsZT1jLmNvbW1hbmQ7ZCYmXy5BSihkLGMsITAse0JkOmJ9KTtlJiZfLkFKKGUsYywhMCx7QmQ6Yn0pfX0sXy5LKF8uTyx7QTooKT0+YSgpLmljb24/Lmljb25UeXBlLHRoZW46KCk9Pl8uSyhfLk1ELHtpY29uOigpPT5hKCkuaWNvbj8uaWNvblR5cGV9KX0pLF8uSyhfLklKLHtkYXRhOigpPT5hKCkudGV4dCxtYTohMH0pKSl9LCJDYiIpO1FQLmlkb21Db21wYXQ9ITA7dmFyIFJQPV8uTCgoe2RhdGE6YSxCZDpifSk9Pnt2YXIgYz1fLkRJKElpYSwoKT0+YSgpPy50b2dnbGVNZW51U2VydmljZUl0ZW1FbnRpdHlLZXl8fCIiKSxkPSgpPT5hKCk/LnRvZ2dsZU1lbnVTZXJ2aWNlSXRlbUVudGl0eUtleT8hIWMoKT8udmFsdWU6YSgpPy5pc1RvZ2dsZWQsZT0oKT0+YygpP3tydW5zOlt7dGV4dDpjKCk/LnZhbHVlfHwiIn1dfTphKCk/LnRvZ2dsZWRTZWNvbmRhcnlUZXh0O3JldHVybiBfLksoInl0bS10b2dnbGUtbWVudS1zZXJ2aWNlLWl0ZW0tcmVuZGVyZXIiLG51bGwsXy5LKF8ud08se29uY2xpY2s6KCk9Pnt2YXIgZj1hKCksaD1iPy4oKSxrPWYuaXNUb2dnbGVkP2YudG9nZ2xlZFNlcnZpY2VFbmRwb2ludDpmLmRlZmF1bHRTZXJ2aWNlRW5kcG9pbnQ7ayYmKF8uQUooayxmLCEwLHtCZDpofSksZi50b2dnbGVNZW51U2VydmljZUl0ZW1FbnRpdHlLZXl8fChmLmlzVG9nZ2xlZD0hZi5pc1RvZ2dsZWQpKX19LF8uSyhfLk1ELHtpY29uOigpPT5kKCk/YSgpLnRvZ2dsZWRJY29uPy5pY29uVHlwZT8udG9TdHJpbmcoKToKYSgpLmRlZmF1bHRJY29uPy5pY29uVHlwZT8udG9TdHJpbmcoKSxhY3RpdmU6ZH0pLF8uSyhfLklKLHtkYXRhOigpPT5kKCk/YSgpLnRvZ2dsZWRUZXh0OmEoKS5kZWZhdWx0VGV4dH0pLF8uSyhfLk8se0E6KCk9PmEoKS5kZWZhdWx0U2Vjb25kYXJ5VGV4dHx8ZSgpLHRoZW46KCk9Pl8uSyhfLklKLHtkYXRhOigpPT5kKCk/ZSgpOmEoKS5kZWZhdWx0U2Vjb25kYXJ5VGV4dH0pfSkpKX0sIkRiIik7UlAuaWRvbUNvbXBhdD0hMDt2YXIgT2lhOwpfLlNQPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6YixUZDpjLEVoOmQsRmg6ZSxkZjpmLEhhOmgsdW46ayxzdG9wUHJvcGFnYXRpb246bCxwcmV2ZW50RGVmYXVsdDptLGxiOm4sYnV0dG9uT3ZlcnJpZGVzOnB9KT0+Xy5LKCJ5dG0tbWVudS1yZW5kZXJlciIse2NsYXNzOmJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS50b3BMZXZlbEJ1dHRvbnN9LHtidXR0b25SZW5kZXJlcjpfLnBPLG1lbnVTZXJ2aWNlSXRlbVJlbmRlcmVyOlFQLHRvZ2dsZUJ1dHRvblJlbmRlcmVyOl8ucU8sdG9nZ2xlTWVudVNlcnZpY2VJdGVtUmVuZGVyZXI6UlAsbGlzdEl0ZW1WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8ucEwse2RhdGE6cixJYTohMH0pLHN3aXRjaExpc3RJdGVtVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLmZKLHtkYXRhOnJ9KSxtZW51TmF2aWdhdGlvbkl0ZW1SZW5kZXJlcjpQUCxsaWtlQnV0dG9uUmVuZGVyZXI6T1B9KSxfLksoT2lhLHtkYXRhOmEsVGQ6YyxFaDpkLEZoOmUsZGY6ZiwKSGE6aCx1bjprLHN0b3BQcm9wYWdhdGlvbjpsLHByZXZlbnREZWZhdWx0Om0sbGI6bixidXR0b25PdmVycmlkZXM6cH0se21lbnVTZXJ2aWNlSXRlbVJlbmRlcmVyOlFQLG1lbnVOYXZpZ2F0aW9uSXRlbVJlbmRlcmVyOlBQLHRvZ2dsZU1lbnVTZXJ2aWNlSXRlbVJlbmRlcmVyOlJQLGxpc3RJdGVtVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLnBMLHtkYXRhOnIsSWE6ITB9KSxzd2l0Y2hMaXN0SXRlbVZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5mSix7ZGF0YTpyfSksbGlrZUJ1dHRvblJlbmRlcmVyOk9QLGJ1dHRvblJlbmRlcmVyOl8ucE8sYWNjb3VudEluZm9NZW51SXRlbTpfLk5QfSkpLCJFYiIpO18uU1AuaWRvbUNvbXBhdD0hMDsKT2lhPV8uTCgoe2RhdGE6YSxjaGlsZHJlbjpiLC4uLmN9KT0+Xy5LKF8uRUUsbnVsbCxfLksoXy5DRSx7d2hlbjooKT0+KCFhKCkuaXRlbXN8fCFhKCkuaXRlbXMubGVuZ3RoKSYmIShhKCkuaXNEaXNhYmxlZCYmYSgpLmRpc2FibGVkQ29tbWFuZCl9LCgpPT5udWxsKSxfLksoXy5DRSx7d2hlbjooKT0+Yy51bj8uKCl9LCgpPT5fLksoXy5NaGEse2ljb25UeXBlOigpPT5jLkVoPy4oKT8/Ik1PUkVfVkVSVCIsbGFiZWw6KCk9Pl8uV0woXy5ESihhKCkuYWNjZXNzaWJpbGl0eSk/PyIiKSxhcmlhTGFiZWw6KCk9Pl8uREooYSgpLmFjY2Vzc2liaWxpdHkpfHwiIixjYW5jZWxCdXR0b25MYWJlbDpfLiROLkNBTkNFTCxUZDooKT0+Yy5UZD8uKCksZGY6KCk9PmMuZGY/LigpLEhhOigpPT5jLkhhPy4oKSxzdG9wUHJvcGFnYXRpb246KCk9PmMuc3RvcFByb3BhZ2F0aW9uPy4oKSxwcmV2ZW50RGVmYXVsdDooKT0+Yy5wcmV2ZW50RGVmYXVsdD8uKCksYnV0dG9uT3ZlcnJpZGVzOigpPT5jLmJ1dHRvbk92ZXJyaWRlcz8uKCksCmlzRGlzYWJsZWQ6KCk9PmEoKS5pc0Rpc2FibGVkLGRpc2FibGVkQ29tbWFuZDooKT0+YSgpLmRpc2FibGVkQ29tbWFuZH0sKCk9Pl8uSyhfLlcse2RhdGE6KCk9PmEoKS5pdGVtc30sYikpKSxfLksoXy5ERSxudWxsLCgpPT5fLksoXy56Tyx7aWNvblR5cGU6KCk9PmMuRWg/LigpPz8iTU9SRV9WRVJUIixsYWJlbDooKT0+Xy5ESihhKCkuYWNjZXNzaWJpbGl0eSl8fCIiLGNhbmNlbEJ1dHRvbkxhYmVsOl8uJE4uQ0FOQ0VMLFRkOigpPT5jLlRkPy4oKSxGaDooKT0+Yy5GaD8uKCksZGY6KCk9PmMuZGY/LigpLEhhOigpPT5jLkhhPy4oKSxzdG9wUHJvcGFnYXRpb246KCk9PmMuc3RvcFByb3BhZ2F0aW9uPy4oKSxwcmV2ZW50RGVmYXVsdDooKT0+Yy5wcmV2ZW50RGVmYXVsdD8uKCksbGI6KCk9PmMubGI/LigpLGJ1dHRvbk92ZXJyaWRlczooKT0+Yy5idXR0b25PdmVycmlkZXM/LigpLGlzRGlzYWJsZWQ6KCk9PmEoKS5pc0Rpc2FibGVkLGRpc2FibGVkQ29tbWFuZDooKT0+YSgpLmRpc2FibGVkQ29tbWFuZH0sCigpPT5fLksoXy5XLHtkYXRhOigpPT5hKCkuaXRlbXN9LGIpKSkpLCJGYiIpO18uVFA9Xy5MKGE9Pl8uSyhfLk8se0E6KCk9PmEuZGF0YSgpLml0ZW1zPy5sZW5ndGh8fGEuZGF0YSgpLmlzRGlzYWJsZWQmJmEuZGF0YSgpLmRpc2FibGVkQ29tbWFuZCx0aGVuOigpPT5fLksoUGlhLHsuLi5hfSl9KSwiR2IiKTtfLlRQLmlkb21Db21wYXQ9ITA7CnZhciBQaWE9Xy5MKGE9Pnt2YXIge2RhdGE6YixjbGFzc05hbWU6YyxFaDpkLHNob3dJY29uOmUsYnV0dG9uU2l6ZTpmLGJ1dHRvbk92ZXJyaWRlczpofT1fLkRDKGEse3Nob3dJY29uOiExLGJ1dHRvbk92ZXJyaWRlczp7fSxidXR0b25TaXplOiJMIixFaDoiTU9SRV9WRVJUIn0pLGs9Xy5adDtyZXR1cm4gXy5LKCJ5dG0tYm90dG9tLXNoZWV0LXJlbmRlcmVyIix7Y2xhc3M6Y30sXy5LKF8uSksse2RhdGE6KCk9Pnt2YXIgbD17R2I6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6ImJvdHRvbS1zaGVldC1tZWRpYS1tZW51LWl0ZW0ifSxfLksoXy5XLHtkYXRhOigpPT5iKCkuaXRlbXN9LHttZW51U2VydmljZUl0ZW1SZW5kZXJlcjpRUCxtZW51TmF2aWdhdGlvbkl0ZW1SZW5kZXJlcjpQUCx0b2dnbGVNZW51U2VydmljZUl0ZW1SZW5kZXJlcjpSUCxsaXN0SXRlbVZpZXdNb2RlbDooe2RhdGE6bX0pPT5fLksoXy5wTCx7ZGF0YTptLElhOiEwfSksc3dpdGNoTGlzdEl0ZW1WaWV3TW9kZWw6KHtkYXRhOm19KT0+Cl8uSyhfLmZKLHtkYXRhOm19KSxsaWtlQnV0dG9uUmVuZGVyZXI6T1AsYnV0dG9uUmVuZGVyZXI6Xy5wTyxhY2NvdW50SW5mb01lbnVJdGVtOl8uTlB9KSksSGE6ZSgpLGlzRGlzYWJsZWQ6YigpLmlzRGlzYWJsZWQsZGlzYWJsZWRDb21tYW5kOmIoKS5kaXNhYmxlZENvbW1hbmR9O3JldHVybntzdHlsZToibW9ubyIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSIsc2l6ZTpmKCksaWNvblBvc2l0aW9uOiJpY29uLW9ubHkiLGFjY2Vzc2liaWxpdHlMYWJlbDpfLkRKKGIoKT8uYWNjZXNzaWJpbGl0eSl8fCIiLG9uVGFwOm09Pnt2YXIgbj17c3RhY2s6W10sZXJyb3I6dm9pZCAwLGhhc0Vycm9yOiExfTt0cnl7Xy54SihfLmh4KCkse2RhdGE6YigpfSksbC5mb2N1c09uQ2xvc2U9bS5jdXJyZW50VGFyZ2V0LF8uV00oKSYmbS5zdG9wUHJvcGFnYXRpb24oKSxfLlZ6KG4sXy52TShrKSksXy55TihsKX1jYXRjaChwKXtuLmVycm9yPXAsbi5oYXNFcnJvcj0hMH1maW5hbGx5e18uV3oobil9fSwKLi4uaCgpfX0saWNvbk5hbWU6KCk9PmQoKX0pKX0sIkhiIik7dmFyIEppYT1fLnUuZGV2aWNlUGl4ZWxSYXRpb3x8Mjt2YXIgS1A9ITE7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInN0YXRlLW5hdmlnYXRlZW5kIiwoKT0+e0tQPSExfSk7Cl8uVVA9Xy5MKGE9Pnt2YXIge3RodW1ibmFpbERldGFpbHM6YixjbGFzc05hbWU6YyxhbHQ6ZCxhcmlhTGFiZWw6ZSxNZDpmLFRiOmgsaGM6ayxhcmlhSGlkZGVuOmwsWWE6bSxUYTpufT1fLkRDKGEse1RiOiEwLHRodW1ibmFpbERldGFpbHM6dm9pZCAwLGNsYXNzTmFtZTp2b2lkIDAsYWx0OnZvaWQgMCxhcmlhTGFiZWw6dm9pZCAwLE1kOnZvaWQgMCxoYzp2b2lkIDAsYXJpYUhpZGRlbjp2b2lkIDAsWWE6dm9pZCAwLFRhOnZvaWQgMH0pLHA9Xy52RSgiaW1nIiksW3IsdF09Xy5BQyhiKTtfLlVKKCgpPT57dmFyIHY9ey4uLmIoKX07dCh2KX0pO18ubkUoKCk9PntpZihwLnZhbHVlKXtsZXQgdj1wLnZhbHVlO0xQKHYpO2xldCB6PWIoKTt6JiYodi5zcmM9Xy5KUCh6LHYsZigpKSl9fSwibjdrYzRjIik7cmV0dXJuIF8uSyhfLk8se0E6KCk9PmIoKSYmKGQoKXx8ZSgpfHxjKCl8fGsoKXx8bCgpKSx0aGVuOigpPT5fLksoXy5qRix7ZGF0YTooKT0+cigpLGNsYXNzTmFtZTpjLGFsdDooKT0+CmQoKXx8ZSgpfHwiIixjb250ZW50TW9kZToiQ09OVEVOVF9NT0RFX1NDQUxFX0FTUEVDVF9GSUxMIixoYzprLGFyaWFIaWRkZW46bCxjYWxsYmFjazpMUCxUYjpoLFlhOm0sVGE6bn0pLFc6KCk9Pl8uSyhfLk8se0E6aCx0aGVuOigpPT5fLksoXy5oRix7ZGF0YTpiLGNvbmZpZzooKT0+KHtjbGFzc05hbWU6YygpLGFsdDpkKCl8fGUoKXx8IiIsaGM6aygpLGFyaWFIaWRkZW46bCgpLFlhOm0oKSxUYTpuKCl9KSxHbDp7U2c6KHYseik9PntMUCh6KTtyZXR1cm4gdj9fLkpQKHYseixmKCkpOiIifX0sbGF6eTohMH0pLFc6KCk9Pl8uSygiaW1nIix7ZWw6cCxhbHQ6ZCwiYXJpYS1sYWJlbCI6ZSxjbGFzczpjLCJkYXRhLWRpc2FibGVkIjprLCJhcmlhLWhpZGRlbiI6bH0pfSl9KX0sIktiIik7Xy5VUC5pZG9tQ29tcGF0PSEwO18uVlA9Xy5MKGE9Pl8uSygieXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVyIix7Y2xhc3M6YS5jbGFzc05hbWUsInRodW1ibmFpbC1zaXplIjphLnRodW1ibmFpbFNpemUsImRhdGEtc3R5bGUiOigpPT5hLmRhdGE/LigpLnN0eWxlLCJhcmlhLWhpZGRlbiI6YS5hcmlhSGlkZGVuLCJkYXRhLXR5cGUiOigpPT5hLmRhdGE/LigpLnR5cGU/LnJlcGxhY2UoIlRIVU1CTkFJTF9PVkVSTEFZX1RJTUVfU1RBVFVTX1RZUEVfIiwiIil9LF8uSyhfLlRDLHtkYXRhOigpPT4oe3R5cGU6YS5kYXRhKCkuc3R5bGU9PT0iTElWRSI/MTk6MTgsdGV4dDpfLkNKKGEuZGF0YSgpLnRleHQpLGljb246YS5kYXRhKCkuaWNvbj8uaWNvblR5cGV8fGEuZGF0YSgpLnl0SWNvbixxTDphLmRhdGEoKS5zdHlsZT09PSJTSE9SVFMifSl9KSksIkxiIik7dmFyIFFpYTtfLldQPV8uTChhPT57dmFyIHtkZXRhaWxzOmIsb3ZlcmxheTpjLFRiOmQsaGo6ZSxNZDpmfT1fLkRDKGEse2RldGFpbHM6dm9pZCAwLFRiOiEwLGhqOiExfSksaD1fLlAoInZpZGVvLXRodW1ibmFpbC1pbWciLHsiY3VzdG9tLXRodW1ibmFpbCI6ZX0pO3JldHVybiBfLksoXy5JQixudWxsLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ2aWRlby10aHVtYm5haWwtaW1nIiwidmlkZW8tdGh1bWJuYWlsLWJnIil9KSxfLksoXy5PLHtBOmUsdGhlbjooKT0+Xy5LKFFpYSx7ZGV0YWlsczpiLGNsYXNzTmFtZTpoLFRiOmQsTWQ6Zn0pfSksXy5LKF8uVVAse3RodW1ibmFpbERldGFpbHM6YixjbGFzc05hbWU6aCxUYjpkLE1kOmYsYWx0OiIifSksXy5LKCJkaXYiLHtjbGFzczoidmlkZW8tcHJldmlldy1zaGltIn0pLGM/LigpKX0sIk1iIik7ClFpYT1fLkwoKHtkZXRhaWxzOmEsY2xhc3NOYW1lOmIsVGI6YyxNZDpkfSk9Pl8uSygiZGl2Iix7Y2xhc3M6ImN1c3RvbS10aHVtYm5haWwtYmFja2dyb3VuZC1jb250YWluZXIiLHN0eWxlOigpPT57aWYoYT8uKCkuc2FtcGxlZFRodW1ibmFpbENvbG9yKXt2YXIge3JlZDplLGdyZWVuOmYsYmx1ZTpofT1hKCkuc2FtcGxlZFRodW1ibmFpbENvbG9yO3JldHVybmBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR7ZX0sJHtmfSwke2h9LDEpO2B9fX0sXy5LKF8uVVAse3RodW1ibmFpbERldGFpbHM6YSxjbGFzc05hbWU6YixhbHQ6IiIsTWQ6ZCxUYjpjfSkpLCJOYiIpO18uWFA9Xy5MKGE9Pnt2YXIge3RodW1ibmFpbERldGFpbHM6YixvdmVybGF5OmMsTWQ6ZCxjbGFzc05hbWU6ZSxUYjpmLGhqOmgsaG06a309Xy5EQyhhLHtUYjohMCxoajohMSx0aHVtYm5haWxEZXRhaWxzOnZvaWQgMH0pO3JldHVybiBfLksoInl0bS1jb21wYWN0LXRodW1ibmFpbCIse2NsYXNzOl8uUCgidmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0IiwidmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0LXJvdW5kZWQiLGUseyJvcmlnaW5hbC1hc3BlY3QtcmF0aW8iOigpPT5iKCk/LmlzT3JpZ2luYWxBc3BlY3RSYXRpbyxzdGFja2VkOmt9KX0sXy5LKF8uV1Ase2RldGFpbHM6YixvdmVybGF5OmMsTWQ6ZCxUYjpmLGhqOmh9KSl9LCJPYiIpO18uWFAuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvdmVybGF5OiEwfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uWlA9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuc2hvcnRzLlRqfTtfLiRQPWZ1bmN0aW9uKGEpe3JldHVybiBhLnNob3J0cy54an07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYlE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJwZXZ0dmMiKTtyZXR1cm4gXy5yRH07Xy5jUT1fLmNEKCgpPT5fLmJRKCksImRpc2xpa2VCdXR0b25WaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiZGlzbGlrZUJ1dHRvblZpZXdNb2RlbCIsInBldnR2YyIsXy5iUSl9KTtfLmRRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiaXpqbVAiKTtyZXR1cm4gXy5xRH07Xy5lUT1fLmNEKCgpPT5fLmRRKCksImxpa2VCdXR0b25WaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigibGlrZUJ1dHRvblZpZXdNb2RlbCIsIml6am1QIixfLmRRKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmZRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiQVQ4TFRlIik7cmV0dXJuIF8ucER9O18uZ1E9Xy5jRCgoKT0+Xy5mUSgpLCJvdmVybGF5UHJvZHVjdFN0aWNrZXIiKTtfLll0KF8uSkQsYT0+e2EuSigib3ZlcmxheVByb2R1Y3RTdGlja2VyIiwiQVQ4TFRlIixfLmZRKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgU2lhO18uaFE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJYZVJYQmQiKTtyZXR1cm4gXy5jRn07U2lhPV8uY0QoKCk9Pl8uaFEoKSwicmVlbFNvdW5kTWV0YWRhdGFWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigicmVlbFNvdW5kTWV0YWRhdGFWaWV3TW9kZWwiLCJYZVJYQmQiLF8uaFEpfSk7Xy5pUT1fLkwoKHtkYXRhOmEsY2xhc3NOYW1lOmJ9KT0+e3ZhciBjPV8udUUoInBpdm90LWJ1dHRvbi12aWV3LW1vZGVsIik7Xy5VSigoKT0+e2EoKT8uYmFja2dyb3VuZENvbG9yJiZjLnZhbHVlLnNldEF0dHJpYnV0ZSgiZGF0YS1iYWNrZ3JvdW5kLWNvbG9yIixTdHJpbmcoYSgpLmJhY2tncm91bmRDb2xvcikpfSk7cmV0dXJuIF8uSygicGl2b3QtYnV0dG9uLXZpZXctbW9kZWwiLHtlbDpjLGNsYXNzOl8uUCgieXR3UGl2b3RCdXR0b25WaWV3TW9kZWxIb3N0IixiKX0sXy5LKF8ubkgse2NvbW1hbmQ6KCk9Pnt2YXIgZD1hKCk7ZD1kLm9uQ2xpY2tDb21tYW5kP18uUkQoZC5vbkNsaWNrQ29tbWFuZCk6ZC5jb250ZW50RGVzY3JpcHRpb24/Xy5hUShfLldMKGQuY29udGVudERlc2NyaXB0aW9uKSk6dm9pZCAwO3JldHVybiBkfSxhcmlhTGFiZWw6KCk9PmEoKS5jb250ZW50RGVzY3JpcHRpb259LF8uSyhfLk8se0E6KCk9PmEoKS50aHVtYm5haWwsdGhlbjpkPT5fLksoXy5qRix7ZGF0YTpkLAphbHQ6IiIsY2xhc3NOYW1lOiJ5dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3RJbWFnZSJ9KSxXOigpPT5fLksoXy5PLHtBOigpPT5hKCkuaWNvbix0aGVuOmQ9Pl8uSyhfLk1ELHtpY29uOigpPT5kKCkuaWNvblR5cGUsY2xhc3NOYW1lOiJ5dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3RJY29uIn0pfSl9KSkpfSwiU2IiKTtfLmpRPV8uTCgoe2RhdGE6YSxBZjpifSk9Pnt2YXIgYz0oKT0+Inl0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0TW9iaWxlQWN0aW9uQnV0dG9uIjtyZXR1cm4gXy5LKCJyZWVsLWFjdGlvbi1iYXItdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3QiLHt5dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZTooKT0+ITAseXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3REZXNrdG9wOigpPT4hMX0pfSxfLksoXy5XLHtkYXRhOigpPT5hKCkuYnV0dG9uVmlld01vZGVsc30se2J1dHRvblZpZXdNb2RlbDooe2RhdGE6ZH0pPT5fLksoXy5VRix7Y2xhc3NOYW1lOmMsZGF0YTpkLGJ1dHRvbk92ZXJyaWRlczpifSksbGlrZUJ1dHRvblZpZXdNb2RlbDooe2RhdGE6ZH0pPT5fLksoXy5lUSx7Y2xhc3NOYW1lOmMsZGF0YTpkLEFmOmJ9KSxkaXNsaWtlQnV0dG9uVmlld01vZGVsOih7ZGF0YTpkfSk9Pl8uSyhfLmNRLHtjbGFzc05hbWU6YywKZGF0YTpkLEFmOmJ9KSx0b2dnbGVCdXR0b25WaWV3TW9kZWw6KHtkYXRhOmR9KT0+Xy5LKF8uWkYse2NsYXNzTmFtZTpjLGRhdGE6ZCx3aTpifSkscGl2b3RCdXR0b25WaWV3TW9kZWw6KHtkYXRhOmR9KT0+Xy5LKF8uaVEse2NsYXNzTmFtZTpjLGRhdGE6ZH0pfSkpfSwiVGIiKTt2YXIgVGlhO18ua1E9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJzNjQ5aiIpO3JldHVybiBfLm1IfTtUaWE9Xy5jRCgoKT0+Xy5rUSgpLCJwbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooInBsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWwiLCJzNjQ5aiIsXy5rUSl9KTt2YXIgVWlhO18ubFE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJ1U3hkbmIiKTtyZXR1cm4gXy5mSH07VWlhPV8uY0QoKCk9Pl8ubFEoKSwicmVlbENhcm91c2VsVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooInJlZWxDYXJvdXNlbFZpZXdNb2RlbCIsInVTeGRuYiIsXy5sUSl9KTt2YXIgVmlhO18ubVE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJXZmY2QmQiKTtyZXR1cm4gXy5lSH07VmlhPV8uY0QoKCk9Pl8ubVEoKSwicmVlbENoYW5uZWxCYXJWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigicmVlbENoYW5uZWxCYXJWaWV3TW9kZWwiLCJXZmY2QmQiLF8ubVEpfSk7dmFyIFdpYTtfLm5RPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiVTNtenNkIik7cmV0dXJuIF8ubEh9O1dpYT1fLmNEKCgpPT5fLm5RKCksInJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigicmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbCIsIlUzbXpzZCIsXy5uUSl9KTt2YXIgWGlhO18ub1E9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJ5UDBKQmQiKTtyZXR1cm4gXy5iRn07WGlhPV8uY0QoKCk9Pl8ub1EoKSwic2hvcnRzRGlzY2xvc3VyZXNWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigic2hvcnRzRGlzY2xvc3VyZXNWaWV3TW9kZWwiLCJ5UDBKQmQiLF8ub1EpfSk7dmFyIFlpYTtfLnBRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiUnFhSnNkIik7cmV0dXJuIF8uWEp9O1lpYT1fLmNEKCgpPT5fLnBRKCksInNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJzaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWwiLCJScWFKc2QiLF8ucFEpfSk7dmFyIFppYTtfLnFRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiRTNIZWJjIik7cmV0dXJuIF8uYUZ9O1ppYT1fLmNEKCgpPT5fLnFRKCksInNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigic2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbCIsIkUzSGViYyIsXy5xUSl9KTtfLnJRPV8uTCgoe2RhdGE6YX0pPT5fLksoInl0LXJlZWwtbWV0YXBhbmVsLXZpZXctbW9kZWwiLHtjbGFzczoieXRSZWVsTWV0YXBhbmVsVmlld01vZGVsSG9zdCJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5tZXRhZGF0YUl0ZW1zfSx7YmFkZ2VWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRSZWVsTWV0YXBhbmVsVmlld01vZGVsTWV0YXBhbmVsSXRlbSJ9LF8uSyhfLmFHLHtkYXRhOmJ9KSkscGxheWVyRGlzY2xvc3VyZVZpZXdNb2RlbDooe2RhdGE6Yn0pPT5fLksoImRpdiIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtIn0sXy5LKFRpYSx7ZGF0YTpifSkpLHByb2R1Y3RTdGlja2VyVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoXy5nUSx7ZGF0YTooKT0+YigpLnN0aWNrZXJ9KSkscmVlbENhcm91c2VsVmlld01vZGVsOih7ZGF0YTpifSk9PgpfLksoImRpdiIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtIn0sXy5LKFVpYSx7ZGF0YTpifSkpLHJlZWxDaGFubmVsQmFyVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoVmlhLHtkYXRhOmJ9KSkscmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbDooe2RhdGE6Yn0pPT5fLksoImRpdiIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtIn0sXy5LKFdpYSx7ZGF0YTpifSkpLHJlZWxTb3VuZE1ldGFkYXRhVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoU2lhLHtkYXRhOmJ9KSksc2hvcnRzRGlzY2xvc3VyZXNWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRSZWVsTWV0YXBhbmVsVmlld01vZGVsTWV0YXBhbmVsSXRlbSJ9LApfLksoWGlhLHtkYXRhOmJ9KSksc2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoWWlhLHtkYXRhOmJ9KSksc2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbDooe2RhdGE6Yn0pPT5fLksoImRpdiIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtIn0sXy5LKFppYSx7ZGF0YTpifSkpLHRvZ2dsZUJ1dHRvblZpZXdNb2RlbDooe2RhdGE6Yn0pPT5fLksoImRpdiIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtIn0sXy5LKF8uWkYse2RhdGE6Yn0pKX0pKSwiVWIiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5zUT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoImZLRThxZCIpO3JldHVybiBfLm9EfTtfLiRpYT1fLmNEKCgpPT5fLnNRKCksImRpYWxvZ1ZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJkaWFsb2dWaWV3TW9kZWwiLCJmS0U4cWQiLF8uc1EpfSk7Xy50UT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIlJaZWtKIik7cmV0dXJuIF8uU0N9O18uYWphPV8uY0QoKCk9Pl8udFEoKSwic21hcnRpbWF0aW9ucyIpO18uWXQoXy5KRCxhPT57YS5KKCJzbWFydGltYXRpb25zIiwiUlpla0oiLF8udFEpfSk7Xy51UT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInNET1RHZSIpO3JldHVybiBfLm5EfTtfLmJqYT1fLmNEKCgpPT5fLnVRKCksInJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooInJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsIiwic0RPVEdlIixfLnVRKX0pO18udlE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJlY3VQQWMiKTtyZXR1cm4gXy5tRH07Xy5jamE9Xy5jRCgoKT0+Xy52USgpLCJwbGF5ZXJPdmVybGF5SW50ZXJhY3Rpb24iKTtfLll0KF8uSkQsYT0+e2EuSigicGxheWVyT3ZlcmxheUludGVyYWN0aW9uIiwiZWN1UEFjIixfLnZRKX0pO18ud1E9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJGUWRJSmUiKTtyZXR1cm4gXy5sRH07Xy5kamE9Xy5jRCgoKT0+Xy53USgpLCJzdGlja2Vyc0xheWVyIik7Xy5ZdChfLkpELGE9PnthLkooInN0aWNrZXJzTGF5ZXIiLCJGUWRJSmUiLF8ud1EpfSk7Xy54UT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIm43ZW8yIik7cmV0dXJuIF8ua0R9O18uZWphPV8uY0QoKCk9Pl8ueFEoKSwiaW50ZXJzdGl0aWFsVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImludGVyc3RpdGlhbFZpZXdNb2RlbCIsIm43ZW8yIixfLnhRKX0pO18ueVE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJOdWlsdWUiKTtyZXR1cm4gXy5qRH07Xy5mamE9Xy5jRCgoKT0+Xy55USgpLCJ2aWRlb1dpdGhDb250ZXh0UmVuZGVyZXIiKTtfLll0KF8uSkQsYT0+e2EuSigidmlkZW9XaXRoQ29udGV4dFJlbmRlcmVyIiwiTnVpbHVlIixfLnlRKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkFRPV8uTCgoe09vOmEsUnA6YixjaGlsZHJlbjpjLFBuOmQsZGlzYWJsZUFuaW1hdGlvbjplfSk9Pnt2YXIgZj0oKT0+IWU/LigpO3JldHVybiBfLksoInl0LWFuaW1hdGVkLWFjdGlvbiIse2NsYXNzOl8uUCgieXRBbmltYXRlZEFjdGlvbkhvc3QiLGQpfSxfLksoImRpdiIse2NsYXNzOiJ5dEFuaW1hdGVkQWN0aW9uQ29udGVudFdpdGhCYWNrZ3JvdW5kIn0sXy5LKF8uTyx7QTpmLHRoZW46KCk9Pl8uSyh6USx7UG46Inl0QW5pbWF0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29udGFpbmVyIix5eToieXRBbmltYXRlZEFjdGlvbkJhY2tncm91bmQiLEVjOigpPT4oe2FuaW1hdGlvblJlZjphPy4oKSxhbmltYXRpb25Db25maWc6e25hbWU6ImFuaW1hdGVkLWFjdGlvbnMtYmFja2dyb3VuZCIsYXV0b3BsYXk6ITEsbG9vcDohMSxwYXRoOmBodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9sb3R0aWUvc3Vic2NyaWJlX2FjdGlvbi9zdWJzY3JpYmVfYWN0aW9uX2NvbnRhaW5lcl8ke18ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpPz8KITE/ImRhcmsiOiJsaWdodCJ9X3Y1Lmpzb25gfX0pfSl9KSxjKSxfLksoXy5PLHtBOmYsdGhlbjooKT0+Xy5LKHpRLHtFYzooKT0+KHthbmltYXRpb25SZWY6Yj8uKCksYW5pbWF0aW9uQ29uZmlnOntuYW1lOiJhbmltYXRlZC1hY3Rpb25zLWZvcmVncm91bmQiLGF1dG9wbGF5OiExLGxvb3A6ITEscGF0aDpgaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20veW91dHViZS9pbWcvbG90dGllL3N1YnNjcmliZV9hY3Rpb24vc3Vic2NyaWJlX2FjdGlvbl9zcGFya2xlc18ke18ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpPz8hMT8iZGFyayI6ImxpZ2h0In1fdjQuanNvbmB9fSl9KX0pKX0sIlZiIik7Xy5BUS5pZG9tQ29tcGF0PSEwOwp2YXIgelE9Xy5MKCh7UG46YSx5eTpiLEVjOmN9KT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0QW5pbWF0ZWRBY3Rpb25Mb3R0aWUiLGEpLCJhcmlhLWhpZGRlbiI6InRydWUifSxfLksoXy5jTSx7Y2xhc3NOYW1lOmIsZGF0YTpjLGFuaW1hdGlvbk5hbWU6KCk9PmMoKS5hbmltYXRpb25Db25maWcubmFtZX0pKSwiV2IiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5CUT1mdW5jdGlvbigpe3JldHVybntsb3R0aWVFbDp2b2lkIDB9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5DUT1mdW5jdGlvbihhLGIpe18ubkUoKCk9Pnt2YXIgYz1hKCk7Xy5FQSgoKT0+dm9pZCBiKGMpKX0sImNLUjlzZiIpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGdqYSxEUSxFUSxGUSxoamEsaWphLGpqYSxHUSxIUSxramEsSVEsbGphLEpRLEtRLExRLE1RLE5RLE9RLG1qYSxQUSxRUSxSUSxuamEsU1Esb2phLFRRLFVRLHBqYSxWUSxXUSxYUSxaUSxxamEscmphLCRRLGFSLHNqYSx0amEsdWphLGJSLGNSLHZqYSx3amEseGphLGhSLGZSLG1SLG5SLG9SLHBSLGdSLHRSLHVSLGtSLHZSLGxSLHpqYSxBamEselIsQVIsQlIsRWphLERSLEhSLEZqYSxHamEsSGphLElqYSxJUixKUixKamEsTFIsTGphLE1qYSxNUixRamEsUGphLFJqYSxPamEsTlIsTmphLFBSLE9SLFVqYSxXamEsUlIsWGphLFNSLGRTLGVTLGZTLGdTLGRrYSxpa2EsaVMsa2thLGpTLGtTLG9rYSxwUyxxa2EscmthLHFTLHNrYSx0a2EsclMsc1MsdFMsdVMsd1MseFMsdlMseVMselMsQVMsQlMsRVMsRlMsQ1MsR1MsemthLEpTLEhTLENrYSxMUyxNUyxOUyxQUyxJUyxGa2EsU1MsR2thLFVTLFdTLFhTLEhrYSxZUyxaUywkUyxjVCxiVCxJa2EsZFQsSmthLEtrYSxMa2EsTWthLGdULApmVCxoVCxrVCxsVCxOa2EsbVQsalQsaVQsblQsb1QscFQsT2thLHJULFBrYSxRa2EsdFQsUmthLHZULFNrYSxUa2Esc1QsVWthLFZrYSxXa2EsWGthLFlrYSx4VCx1VCxxVCx3VCx5VCx6VCxBVCxCVCxDVCxEVCwka2EsRVQsSFQsSVQsRlQsY2xhLGJsYSxKVCxLVCxPVCxQVCxlbGEsUVQsVFQsUlQsZmxhLGhsYSxnbGEsaWxhLFdULFhULGpsYSxaVCxrbGEsYVUsYlUsY1UsbGxhLGhVLG5sYSxvbGEsaVUsalUsbFUsbVUsblUsb1UscFUscGxhLHFVLHFsYSxyVSxybGEsc1UsdVUsc2xhLHVsYSx3VSxJVSx4VSxLVSxKVSx2bGEsd2xhLHhsYSx6bGEsTFUseWxhLE9VLE1VLEJsYSxDbGEsRGxhLFBVLEVsYSxGbGEsR2xhLEhsYSxJbGEsSmxhLEtsYSxMbGEsTWxhLE5sYSxRVSxSVSxTVSxVVSxQbGEsWFUsWVUsUWxhLFJsYSxaVSxTbGEsJFUsVWxhLGFWLFRsYTtnamE9ZnVuY3Rpb24oKXtyZXR1cm4hIV8uWk8oKX07CkRRPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgoYSxiKSxjKX07RVE9ZnVuY3Rpb24oYSxiKXtpZighYilyZXR1cm4gbnVsbDt2YXIgYz1iP1N0cmluZyhiKS50b1VwcGVyQ2FzZSgpOm51bGw7cmV0dXJuIF8uZ3coYSxmdW5jdGlvbihkKXtyZXR1cm4oIWN8fGQubm9kZU5hbWU9PWMpJiYhMH0sITApfTtGUT1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLmxlZnQ9YTt0aGlzLnRvcD1iO3RoaXMud2lkdGg9Yzt0aGlzLmhlaWdodD1kfTtoamE9ZnVuY3Rpb24oYSxiKXtiP18uU3QoYSwieXRQbGF5ZXJDb250cm9sc0NvbnRhaW5lclJlbmRlcmVkIik6Xy5UdChhLCJ5dFBsYXllckNvbnRyb2xzQ29udGFpbmVyUmVuZGVyZWQiKX07CmlqYT1mdW5jdGlvbigpe18uVmkoKCk9PntpZighXy5CcSgiZnRsIikpe3ZhciBhPV8ucG8oKTtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntzZXRUaW1lb3V0KCgpPT57YSE9PV8ucG8oKXx8Xy5CcSgiZnRsIil8fF8uQXEoImZ0bCIsdm9pZCAwLHZvaWQgMCl9LDApfSl9fSkoKX07amphPWZ1bmN0aW9uKCl7aWYoXy5YeigpKXt2YXIgYT1fLkdoKCJwZnAtbWF3LXBsYXllciIpO2lmKGEpcmV0dXJuIG5ldyBfLndNKGEpfX07R1E9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQ2woKDAsXy5TYWEpKCksYSl9OwpIUT1mdW5jdGlvbigpe2lmKF8ueCgiZW5hYmxlX2F1dG9tb3RpdmVfZm9ybV9mYWN0b3JfY2hlY2siKSlyZXR1cm4gXy53KCJJTk5FUlRVQkVfQ09OVEVYVCIse30pLmNsaWVudD8uY2xpZW50Rm9ybUZhY3Rvcj09PSJBVVRPTU9USVZFX0ZPUk1fRkFDVE9SIjt2YXIgYT1fLncoIklOTkVSVFVCRV9DT05URVhUIix7fSk7cmV0dXJuIGEuY2xpZW50Py5vc05hbWUmJmEuY2xpZW50Lm9zTmFtZT09PSJBbmRyb2lkIEF1dG9tb3RpdmUifTtramE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5xQShhLmVudGl0aWVzLCJkaXNtaXNzU3RhdGUiLGIpfTtJUT1mdW5jdGlvbigpe3JldHVybiBfLlVNKCk9PT0iaGFzaHRhZyJ9O2xqYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsImxvZ29FbnRpdHkiLGIpfTsKSlE9ZnVuY3Rpb24oKXtyZXR1cm4gYT0+e3ZhciBiPV8uTEIoITEpO3RyeXtsZXQgYz1hLmNoaWxkcmVuO18uVUE/Yz9fLmdOKF8uSyhfLnNPLGEsYykpOl8uZ04oXy5LKF8uc08sYSkpOl8uSXAobmV3IF8uWGooImtldG9Ub0MzIGNhbGxlZCBvdXRzaWRlIG9mIGEgcGF0Y2giLHt0YWdOYW1lOl8uc08uWmN9KSl9ZmluYWxseXtfLkxCKGIpfX19OwpLUT1mdW5jdGlvbihhLGIpe2lmKGEucmVxdWVzdEZ1bGxzY3JlZW4pYT1hLnJlcXVlc3RGdWxsc2NyZWVuKGIpO2Vsc2UgaWYoYS53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbilhPWEud2Via2l0UmVxdWVzdEZ1bGxzY3JlZW4oKTtlbHNlIGlmKGEubW96UmVxdWVzdEZ1bGxTY3JlZW4pYT1hLm1velJlcXVlc3RGdWxsU2NyZWVuKCk7ZWxzZSBpZihhLm1zUmVxdWVzdEZ1bGxzY3JlZW4pYT1hLm1zUmVxdWVzdEZ1bGxzY3JlZW4oKTtlbHNlIGlmKGEud2Via2l0RW50ZXJGdWxsc2NyZWVuKWE9YS53ZWJraXRFbnRlckZ1bGxzY3JlZW4oKTtlbHNlIHJldHVybiBQcm9taXNlLnJlamVjdChFcnJvcigiSmQiKSk7cmV0dXJuIGEgaW5zdGFuY2VvZiBQcm9taXNlP2E6UHJvbWlzZS5yZXNvbHZlKCl9OwpMUT1mdW5jdGlvbigpe3JldHVybiEhXy5JTyhbImZ1bGxzY3JlZW5FbmFibGVkIiwid2Via2l0RnVsbHNjcmVlbkVuYWJsZWQiLCJtb3pGdWxsU2NyZWVuRW5hYmxlZCIsIm1zRnVsbHNjcmVlbkVuYWJsZWQiXSxkb2N1bWVudCl9O01RPWZ1bmN0aW9uKGEpe3ZhciBiO0xRKCk/Xy5aTygpPT1hJiYoYj1kb2N1bWVudCk6Yj1hO2lmKGImJihhPV8uSU8oWyJleGl0RnVsbHNjcmVlbiIsIndlYmtpdEV4aXRGdWxsc2NyZWVuIiwibW96Q2FuY2VsRnVsbFNjcmVlbiIsIm1zRXhpdEZ1bGxzY3JlZW4iXSxiKSkpe2EuY2FsbChiKWluc3RhbmNlb2YgUHJvbWlzZXx8UHJvbWlzZS5yZXNvbHZlKCk7cmV0dXJufVByb21pc2UucmVzb2x2ZSgpfTtOUT1mdW5jdGlvbihhKXtyZXR1cm4gYS5nZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2siKX07T1E9ZnVuY3Rpb24oYSl7cmV0dXJuKGE9TlEoYSkpPyEhYS5kaXNwbGF5TmFtZTohMX07Cm1qYT1mdW5jdGlvbihhKXtyZXR1cm4gXy52YihhLGI9PmIubGFuZ3VhZ2VDb2RlPT09ImVuIil9O1BRPWZ1bmN0aW9uKGEpe2lmKCFhLmdldE9wdGlvbnMoImNhcHRpb25zIikpcmV0dXJuIiI7YT1fLiRPKGEpO2lmKCFhLmxlbmd0aClyZXR1cm4iIjt2YXIgYj1tamEoYSk7cmV0dXJuIGI/Yi5kaXNwbGF5TmFtZXx8IiI6YVswXS5kaXNwbGF5TmFtZXx8IiJ9OwpRUT1mdW5jdGlvbihhLGIsYyl7aWYoT1EoYSkpXy54KCJtd2ViX2VuYWJsZV9wbGF5ZXJfY2FwdGlvbnNfcGVyc2lzdGVuY2Vfc3RhdGVfbWFjaGluZSIpP2Euc2V0T3B0aW9uKCJjYXB0aW9ucyIsInN0aWNreUxvYWRpbmciLHt1c2VySW5pdGlhdGVkOmN9KTphLnNldE9wdGlvbigiY2FwdGlvbnMiLCJzdGlja3lMb2FkaW5nIix7fSksYS5zZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2siLHt9KTtlbHNle2xldCBkPV8udmIoXy4kTyhhKSxlPT5lLmRpc3BsYXlOYW1lPT09Yik7YS5zZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2siLGQpO18ueCgibXdlYl9lbmFibGVfcGxheWVyX2NhcHRpb25zX3BlcnNpc3RlbmNlX3N0YXRlX21hY2hpbmUiKSYmYS5zZXRPcHRpb24oImNhcHRpb25zIiwic3RpY2t5TG9hZGluZyIse3VzZXJJbml0aWF0ZWQ6Y30pfX07UlE9ZnVuY3Rpb24oKXt3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImZ1bGxzY3JlZW5yZXF1ZXN0IikpfTsKbmphPWZ1bmN0aW9uKGEpe3ZhciBbYl09KDAsXy51aWEpKGEpLFtjXT0oMCxfLnZpYSkoYSk7cmV0dXJuW18uTigoKT0+e3ZhciBkPXsuLi5iKCl9O2Qubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbiYmKGQubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbj17Li4uYygpLm5vdGlmaWNhdGlvblByZWZlcmVuY2VUb2dnbGVCdXR0b259KTtyZXR1cm4gZH0sdm9pZCAwLCJ1dlM4N2IiKV19O1NRPWZ1bmN0aW9uKGEpe01RKGF8fGRvY3VtZW50LmJvZHkpfTsKb2phPWZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigidmlkZW8iKTthJiYoUlEoKSxLUShhKS5jYXRjaChiPT57aWYoYj8ubWVzc2FnZT8uaW5jbHVkZXMoIkZ1bGxzY3JlZW4gaXMgbm90IHN1cHBvcnRlZCIpfHxiPy5tZXNzYWdlPy5pbmNsdWRlcygiRnVsbHNjcmVlbiBlcnJvciIpfHxiPy5tZXNzYWdlPy5pbmNsdWRlcygiZnVsbHNjcmVlbiBlcnJvciIpKV8uV2koYik7ZWxzZSB0aHJvdyBiO30pKX07VFE9ZnVuY3Rpb24oYSxiKXtfLlpPKCk/KFJRKCksU1EoYikpOkxRKCk/KFJRKCksYj1LUShifHxkb2N1bWVudC5ib2R5LHtuYXZpZ2F0aW9uVUk6ImhpZGUifSksYT8uZHMmJmI/LmNhdGNoKCgpPT5udWxsKSk6b2phKCl9OwpVUT1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4gMDt2YXIgYj1hLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCksYz1hLmdldFZpZGVvRGF0YSgpO3JldHVybiBjJiZjLmlzTGl2ZT8oYT1hLmdldFByb2dyZXNzU3RhdGUoYiksYS5zZWVrYWJsZUVuZC1hLnNlZWthYmxlU3RhcnQpOmEuZ2V0RHVyYXRpb24oYil9O3BqYT1mdW5jdGlvbihhLGIsYyl7YXx8Xy5PRSgoKT0+e2I/LnByZXZpb3VzVmlkZW8oYyl9KX07VlE9ZnVuY3Rpb24oYSl7dmFyIGI9YS5nZXRQbGF5ZXJTdGF0ZSgpO2lmKGI9PT0yKXJldHVybiEwO2lmKGIhPT0zKXJldHVybiExO2E9YS5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpO3JldHVybiFhLmlzQnVmZmVyaW5nJiYhYS5pc1Vuc3RhcnRlZCYmIWEuaXNQbGF5aW5nJiZhLmlzUGF1c2VkfTsKV1E9ZnVuY3Rpb24oYSl7dmFyIGI9YS5nZXRQbGF5ZXJTdGF0ZSgpO2lmKGI9PT0xKXJldHVybiBhLnBhdXNlVmlkZW8oKSwiUExBWUVSX1BBVVNFIjtpZihiPT09LTEpYS5wbGF5VmlkZW8oKTtlbHNlIGlmKGI9PT0yfHxWUShhKSlyZXR1cm4gYS5wbGF5VmlkZW8oKSwiUExBWUVSX1BMQVkifTtYUT1mdW5jdGlvbihhKXthPWEmJmEuZ2V0UGxheWxpc3RJbmRleCYmYS5nZXRQbGF5bGlzdEluZGV4KCk+PTA7cmV0dXJuISFfLlpiKHdpbmRvdy5sb2NhdGlvbi5ocmVmLCJsaXN0Iil8fCEhYX07WlE9ZnVuY3Rpb24oYSl7WVE9YX07cWphPWZ1bmN0aW9uKGEpe3ZhciBiPVlRO2I/KGE9YS50aW1lU3RhbXAsYj1iLnRpbWVTdGFtcCxiPWlzTmFOKGEpfHxpc05hTihiKT8hMTpNYXRoLmFicyhhLWIpPD1fLnlpYSk6Yj0hMTtyZXR1cm4gYn07CnJqYT1mdW5jdGlvbihhKXt2YXIgYj1hLnRhcmdldDtpZihiKXt2YXIgYz0hYi5wYXVzZWQ7KHFqYShhKXx8YykmJnNldFRpbWVvdXQoKCk9PntiLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBhdXNlIixaUSk7ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlPT09InZpc2libGUiJiZfLlZNKCl9LF8ueGlhKX19OyRRPWZ1bmN0aW9uKCl7Xy54KCJtd2ViX25ld19mdWxsc2NyZWVuIik/U1EoXy5FSik6Xy5FSiYmKE1RKF8uRUopLF8ueCgibXdlYl9uZXdfZnVsbHNjcmVlbl9yZXNpemUiKXx8Xy5YTSgicmVzaXplIikpfTsKYVI9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJ2aWRlbyIpO2EmJihfLmZyJiZfLngoIm13ZWJfaW9zX2Z1bGxzY3JlZW5fcGxheWJhY2tfdHJhbnNpdGlvbiIpJiYoYS5hZGRFdmVudExpc3RlbmVyKCJwYXVzZSIsWlEpLF8uTk0oYSwid2Via2l0ZW5kZnVsbHNjcmVlbiIscmphKSksXy5YTSgiZnVsbHNjcmVlbnJlcXVlc3QiKSxLUShhKS5jYXRjaChiPT57aWYoYj8ubWVzc2FnZT8uaW5jbHVkZXMoIkZ1bGxzY3JlZW4gaXMgbm90IHN1cHBvcnRlZCIpfHxiPy5tZXNzYWdlPy5pbmNsdWRlcygiRnVsbHNjcmVlbiBlcnJvciIpfHxiPy5tZXNzYWdlPy5pbmNsdWRlcygiZnVsbHNjcmVlbiBlcnJvciIpKV8uV2koYik7ZWxzZSB0aHJvdyBiO30pKX07c2phPWZ1bmN0aW9uKCl7dmFyIGE9d2luZG93LnNjcmVlbi5vcmllbnRhdGlvbjtpZihhPy5sb2NrJiYhXy5NRSgpJiYhXy5URSgpKXRyeXthLmxvY2soImxhbmRzY2FwZSIpLmNhdGNoKCgpPT57fSl9Y2F0Y2goYil7fX07CnRqYT1mdW5jdGlvbihhKXtfLlhNKCJmdWxsc2NyZWVucmVxdWVzdCIpO3ZhciBiPUtRKF8uRUose25hdmlnYXRpb25VSToiaGlkZSJ9KTthfHxzamEoKTtfLngoIm13ZWJfbmV3X2Z1bGxzY3JlZW5fcmVzaXplIil8fF8uWE0oInJlc2l6ZSIpO3JldHVybiBifTsKdWphPWZ1bmN0aW9uKGEpe2RvY3VtZW50LmJvZHkuZ2V0QXR0cmlidXRlKCJmdWxsc2NyZWVuLXJlamVjdGVkIik9PT0idHJ1ZSImJmRvY3VtZW50LmJvZHkucmVtb3ZlQXR0cmlidXRlKCJmdWxsc2NyZWVuLXJlamVjdGVkIik7aWYoXy54KCJtd2ViX25ld19mdWxsc2NyZWVuIikpVFEoYSxfLkVKKTtlbHNle3ZhciBiPV8uclAoKSxjO18uZnI/Yz1hUigpOkxRKCk/Yj8kUSgpOmM9dGphKGE/LnpJKTpfLngoIm13ZWJfbmF0aXZlX2NvbnRyb2xfaW5fZmF1eF9mdWxsc2NyZWVuX3NoYXJlZCIpP2M9YVIoKTpfLlhNKCJwbGF5ZXItZnVsbHNjcmVlbi10b2dnbGVkIix7aXNDdXJyZW50bHlGdWxsc2NyZWVuOmJ9KTtjPy5jYXRjaChkPT57aWYoZD8ubWVzc2FnZT8uaW5jbHVkZXMoIkZ1bGxzY3JlZW4gaXMgbm90IHN1cHBvcnRlZCIpfHxkPy5tZXNzYWdlPy5pbmNsdWRlcygiRnVsbHNjcmVlbiBlcnJvciIpfHxkPy5tZXNzYWdlPy5pbmNsdWRlcygiZnVsbHNjcmVlbiBlcnJvciIpKWRvY3VtZW50LmJvZHkuc2V0QXR0cmlidXRlKCJmdWxsc2NyZWVuLXJlamVjdGVkIiwKInRydWUiKSxfLlhNKCJwbGF5ZXItZnVsbHNjcmVlbi10b2dnbGVkIix7aXNDdXJyZW50bHlGdWxsc2NyZWVuOmJ9KX0pO2E/LmRzJiZjPy5jYXRjaCgoKT0+bnVsbCl9fTtiUj1mdW5jdGlvbihhKXtyZXR1cm57bGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOmEudGl0bGUsc2VsZWN0aW9uVGV4dDphLnNlbGVjdGlvblRleHQsbGVhZGluZ0ltYWdlOntzb3VyY2VzOlt7Y2xpZW50UmVzb3VyY2U6e2ltYWdlTmFtZTphLmljb25UeXBlfX1dfSxpc0Rpc2FibGVkOmEuaXNEaXNhYmxlZCxpc1NlbGVjdGVkOmEuaXNTZWxlY3RlZCxzZWxlY3Rpb25TdHlsZTphLnNlbGVjdGlvblN0eWxlfX19OwpjUj1mdW5jdGlvbihhKXtyZXR1cm57c3dpdGNoTGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOmEudGl0bGUsbGVhZGluZ0ltYWdlOntzb3VyY2VzOlt7Y2xpZW50UmVzb3VyY2U6e2ltYWdlTmFtZTphLmljb25UeXBlfX1dfSxzd2l0Y2hlZE9uQnlEZWZhdWx0OmEua2wsYTExeUxhYmVsU3dpdGNoZWRPbjphLkVrLGExMXlMYWJlbFN3aXRjaGVkT2ZmOmEuRGssaXNEaXNhYmxlZDphLmlzRGlzYWJsZWR9fX07dmphPWZ1bmN0aW9uKGEpe3JldHVybiBhLnNob3J0cy5pc0Z1bGxzY3JlZW59O3dqYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5zaG9ydHMubWp9Owp4amE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmxlbmd0aDtzd2l0Y2goYyl7Y2FzZSAwOnJldHVybiIiO2Nhc2UgMTpyZXR1cm4gU3RyaW5nKGJbMF0pO2Nhc2UgMjpyZXR1cm4gYS5ELnJlcGxhY2UoInswfSIsU3RyaW5nKGJbMF0pKS5yZXBsYWNlKCJ7MX0iLFN0cmluZyhiWzFdKSl9dmFyIGQ9YS5CLnJlcGxhY2UoInswfSIsU3RyaW5nKGJbMF0pKS5yZXBsYWNlKCJ7MX0iLFN0cmluZyhiWzFdKSk7Zm9yKGxldCBlPTI7ZTxjLTE7KytlKWQ9YS52LnJlcGxhY2UoInswfSIsZCkucmVwbGFjZSgiezF9IixTdHJpbmcoYltlXSkpO3JldHVybiBhLm8ucmVwbGFjZSgiezB9IixkKS5yZXBsYWNlKCJ7MX0iLFN0cmluZyhiW2MtMV0pKX07CmhSPWZ1bmN0aW9uKCl7dGhpcy5LPW51bGw7dGhpcy5WZD10aGlzLk1hPXRoaXMuUWE9ITE7dGhpcy5aPTQwO3RoaXMubz0xO3RoaXMuaGE9MDt0aGlzLmo9Mzt0aGlzLnlhPXRoaXMuQj0wO3RoaXMuRWI9ITE7dGhpcy5nYT10aGlzLk09IiI7dGhpcy5EPWRSLmFvO3RoaXMuVT0iIjt0aGlzLnY9MTt0aGlzLlk9ITE7dGhpcy5JPVtdO3RoaXMuRmE9dGhpcy5mYz0hMTt0aGlzLm9hPTA7aWYoZVIpZlIodGhpcyk7ZWxzZXt0aGlzLks9bnVsbDt2YXIgYT1kUi5ndDtsZXQgZT1bMF07dGhpcy5NPWdSKHRoaXMsYSxlKTt2YXIgYj1lWzBdO2xldCBmPS0xLGg9MDt2YXIgYz0wLGQ9MDtsZXQgaz0tMSxsPWEubGVuZ3RoO2ZvcihsZXQgbT0hMDtlWzBdPGwmJm07ZVswXSsrKXN3aXRjaChhLmNoYXJBdChlWzBdKSl7Y2FzZSAiIyI6Yz4wP2QrKzpoKys7az49MCYmZjwwJiZrKys7YnJlYWs7Y2FzZSAiMCI6aWYoZD4wKXRocm93IEVycm9yKCJWZGAiK2EpO2MrKztrPj0wJiZmPDAmJmsrKzticmVhazsKY2FzZSAiLCI6az4wJiZ0aGlzLkkucHVzaChrKTtrPTA7YnJlYWs7Y2FzZSAiLiI6aWYoZj49MCl0aHJvdyBFcnJvcigiV2RgIithKTtmPWgrYytkO2JyZWFrO2Nhc2UgIkUiOmlmKHRoaXMuRmEpdGhyb3cgRXJyb3IoIlhkYCIrYSk7dGhpcy5GYT0hMDt0aGlzLnlhPTA7ZVswXSsxPGwmJmEuY2hhckF0KGVbMF0rMSk9PSIrIiYmKGVbMF0rKyx0aGlzLkViPSEwKTtmb3IoO2VbMF0rMTxsJiZhLmNoYXJBdChlWzBdKzEpPT0iMCI7KWVbMF0rKyx0aGlzLnlhKys7aWYoaCtjPDF8fHRoaXMueWE8MSl0aHJvdyBFcnJvcigiWWRgIithKTttPSExO2JyZWFrO2RlZmF1bHQ6ZVswXS0tLG09ITF9Yz09MCYmaD4wJiZmPj0wJiYoYz1mLGM9PTAmJmMrKyxkPWgtYyxoPWMtMSxjPTEpO2lmKGY8MCYmZD4wfHxmPj0wJiYoZjxofHxmPmgrYyl8fGs9PTApdGhyb3cgRXJyb3IoIlpkYCIrYSk7ZD1oK2MrZDt0aGlzLmo9Zj49MD9kLWY6MDtmPj0wJiYodGhpcy5CPWgrYy1mLHRoaXMuQjwwJiYodGhpcy5CPQowKSk7dGhpcy5vPShmPj0wP2Y6ZCktaDt0aGlzLkZhJiYodGhpcy5aPWgrdGhpcy5vLHRoaXMuaj09MCYmdGhpcy5vPT0wJiYodGhpcy5vPTEpKTt0aGlzLkkucHVzaChNYXRoLm1heCgwLGspKTt0aGlzLmZjPWY9PTB8fGY9PWQ7Yj1lWzBdLWI7dGhpcy5nYT1nUih0aGlzLGEsZSk7ZVswXTxhLmxlbmd0aCYmYS5jaGFyQXQoZVswXSk9PSI7Ij8oZVswXSsrLHRoaXMudiE9MSYmKHRoaXMuWT0hMCksdGhpcy5EPWdSKHRoaXMsYSxlKSxlWzBdKz1iLHRoaXMuVT1nUih0aGlzLGEsZSkpOih0aGlzLkQrPXRoaXMuTSx0aGlzLlUrPXRoaXMuZ2EpfX07CmZSPWZ1bmN0aW9uKGEpe3ZhciBiPXtub3RhdGlvbjoic3RhbmRhcmQiLG1pbmltdW1JbnRlZ2VyRGlnaXRzOk1hdGgubWluKDIxLE1hdGgubWF4KDEsYS5vKSl9O2EuRWImJihiLnNpZ25EaXNwbGF5PSJhbHdheXMiKTthLlFhPyhiLm1pbmltdW1TaWduaWZpY2FudERpZ2l0cz0xLGIubWF4aW11bVNpZ25pZmljYW50RGlnaXRzPU1hdGgubWF4KDEsTWF0aC5taW4oMjEsYS5oYSkpKTphLk1hJiYoYi5taW5pbXVtRnJhY3Rpb25EaWdpdHM9TWF0aC5tYXgoMCxhLkIpLGIubWF4aW11bUZyYWN0aW9uRGlnaXRzPU1hdGgubWluKDIwLE1hdGgubWF4KDAsYS5qKSkpO2Iuc3R5bGU9ImRlY2ltYWwiO3RyeXtsZXQgYzsoYz0iZW4tVVMiLnJlcGxhY2UoIl8iLCItIikpJiZjIGluIGlSJiYoYi5udW1iZXJpbmdTeXN0ZW09aVJbY10pO2EuSz1uZXcgSW50bC5OdW1iZXJGb3JtYXQoYyxiKX1jYXRjaChjKXt0aHJvdyBhLks9bnVsbCxFcnJvcigiUmRgIitjKTt9alI9YS5WZD1hLlFhPWEuTWE9ITF9OwptUj1mdW5jdGlvbihhLGIpe3ZhciBjPWtSKGIsYS5qKTthLmhhPjAmJihjPWxSKGMsYS5oYSxhLmopKTtjPU1hdGgucm91bmQoYyk7aWYoaXNGaW5pdGUoYykpe3ZhciBkPU1hdGguZmxvb3Ioa1IoYywtYS5qKSk7Yz1NYXRoLmZsb29yKGMta1IoZCxhLmopKTtpZihjPDB8fGM+PWtSKDEsYS5qKSlkPU1hdGgucm91bmQoYiksYz0wfWVsc2UgZD1iLGM9MDtyZXR1cm57aW50VmFsdWU6ZCxodzpjfX07Cm5SPWZ1bmN0aW9uKGEsYixjLGQpe2lmKGEuQj5hLmopdGhyb3cgRXJyb3IoIlNkIik7ZHx8KGQ9W10pO2I9bVIoYSxiKTt2YXIgZT1iLmludFZhbHVlLGY9Yi5odyxoPWEuQj4wfHxmPjB8fCExO2I9YS5CO2gmJihiPWEuQik7Zm9yKHZhciBrPSIiLGw9ZTtsPjFFMjA7KWs9IjAiK2ssbD1NYXRoLnJvdW5kKGtSKGwsLTEpKTtrPWwrazt2YXIgbT1kUi5WbjtsPWRSLkJrLmNvZGVQb2ludEF0KDApO3ZhciBuPWsubGVuZ3RoLHA9MDtpZihlPjB8fGM+MCl7Zm9yKGU9bjtlPGM7ZSsrKWQucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludChsKSk7aWYoYS5JLmxlbmd0aD49Milmb3IoYz0xO2M8YS5JLmxlbmd0aDtjKyspcCs9YS5JW2NdO2M9bi1wO2lmKGM+MCl7ZT1hLkk7cD1uPTA7dmFyIHI9ZFIucmssdD1rLmxlbmd0aDtmb3IobGV0IHo9MDt6PHQ7eisrKWlmKGQucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludChsK051bWJlcihrLmNoYXJBdCh6KSkpKSx0LXo+MSl7dmFyIHY9ZVtwXTtpZih6PApjKXtsZXQgRT1jLXo7KHY9PT0xfHx2PjAmJkUldj09PTEpJiZkLnB1c2gocil9ZWxzZSBwPGUubGVuZ3RoJiYoej09PWM/cCs9MTp2PT09ei1jLW4rMSYmKGQucHVzaChyKSxuKz12LHArPTEpKX19ZWxzZXtjPWs7az1hLkk7ZT1kUi5yazt2PWMubGVuZ3RoO3I9W107Zm9yKG49ay5sZW5ndGgtMTtuPj0wJiZ2PjA7bi0tKXtwPWtbbl07Zm9yKHQ9MDt0PHAmJnYtdC0xPj0wO3QrKylyLnB1c2goU3RyaW5nLmZyb21Db2RlUG9pbnQobCtOdW1iZXIoYy5jaGFyQXQodi10LTEpKSkpO3YtPXA7dj4wJiZyLnB1c2goZSl9ZC5wdXNoLmFwcGx5KGQsci5yZXZlcnNlKCkpfX1lbHNlIGh8fGQucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludChsKSk7KGEuZmN8fGgpJiZkLnB1c2gobSk7Zj1TdHJpbmcoZik7aD1mLnNwbGl0KCJlKyIpO2gubGVuZ3RoPT0yJiYoZj1TdHJpbmcobFIocGFyc2VGbG9hdChoWzBdKSxhLmhhLDEpKSxmPWYucmVwbGFjZSgiLiIsIiIpLGYrPSIwIi5yZXBlYXQocGFyc2VJbnQoaFsxXSwKMTApLWYubGVuZ3RoKzEpKTthLmorMT5mLmxlbmd0aCYmKGY9IjEiKyIwIi5yZXBlYXQoYS5qLWYubGVuZ3RoKStmKTtmb3IoYT1mLmxlbmd0aDtmLmNoYXJBdChhLTEpPT0iMCImJmE+YisxOylhLS07Zm9yKGI9MTtiPGE7YisrKWQucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludChsK051bWJlcihmLmNoYXJBdChiKSkpKX07b1I9ZnVuY3Rpb24oYSxiLGMpe2MucHVzaChkUi5Zbik7YjwwPyhiPS1iLGMucHVzaChkUi5hbykpOmEuRWImJmMucHVzaChkUi5XdCk7Yj0iIitiO3ZhciBkPWRSLkJrO2ZvcihsZXQgZT1iLmxlbmd0aDtlPGEueWE7ZSsrKWMucHVzaChkKTthPWQuY29kZVBvaW50QXQoMCkteWphO2ZvcihkPTA7ZDxiLmxlbmd0aDtkKyspYy5wdXNoKFN0cmluZy5mcm9tQ29kZVBvaW50KGErYi5jb2RlUG9pbnRBdChkKSkpfTsKcFI9ZnVuY3Rpb24oYSl7YT1hLmNvZGVQb2ludEF0KDApO2lmKDQ4PD1hJiZhPDU4KXJldHVybiBhLTQ4O3ZhciBiPWRSLkJrLmNvZGVQb2ludEF0KDApO3JldHVybiBiPD1hJiZhPGIrMTA/YS1iOi0xfTsKZ1I9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0iIixlPSExLGY9Yi5sZW5ndGg7Y1swXTxmO2NbMF0rKyl7dmFyIGg9Yi5jaGFyQXQoY1swXSk7aWYoaD09IiciKWNbMF0rMTxmJiZiLmNoYXJBdChjWzBdKzEpPT0iJyI/KGNbMF0rKyxkKz0iJyIpOmU9IWU7ZWxzZSBpZihlKWQrPWg7ZWxzZSBzd2l0Y2goaCl7Y2FzZSAiIyI6Y2FzZSAiMCI6Y2FzZSAiLCI6Y2FzZSAiLiI6Y2FzZSAiOyI6cmV0dXJuIGQ7Y2FzZSAiXHUwMGE0IjpjWzBdKzE8ZiYmYi5jaGFyQXQoY1swXSsxKT09Ilx1MDBhNCI/KGNbMF0rKyxkKz1kUi5Xbik6KGg9ZFIuV24sZCs9aCBpbiBxUj9xUltoXVsxXTpoKTticmVhaztjYXNlICIlIjppZighYS5ZJiZhLnYhPTEpdGhyb3cgRXJyb3IoIlRkIik7aWYoYS5ZJiZhLnYhPTEwMCl0aHJvdyBFcnJvcigiVWQiKTthLnY9MTAwO2EuWT0hMTtkKz1kUi5qbzticmVhaztjYXNlICJcdTIwMzAiOmlmKCFhLlkmJmEudiE9MSl0aHJvdyBFcnJvcigiVGQiKTtpZihhLlkmJgphLnYhPTFFMyl0aHJvdyBFcnJvcigiVWQiKTthLnY9MUUzO2EuWT0hMTtkKz1kUi5rbzticmVhaztkZWZhdWx0OmQrPWh9fXJldHVybiBkfTt0Uj1mdW5jdGlvbihhLGIpe2E9YS5vYT09MT9yUi5TbjpyUi5WczthPT1udWxsJiYoYT1yUi5Tbik7aWYoYjwzKXJldHVybiBzUjtiPU1hdGgubWluKDE0LGIpO3ZhciBjPWFba1IoMSxiKV07Zm9yKC0tYjshYyYmYj49MzspYz1hW2tSKDEsYildLGItLTtpZighYylyZXR1cm4gc1I7Yz1jLm90aGVyO3ZhciBkPWE9IiIsZT1jLmluZGV4T2YoIjsiKTtlPj0wJiYoYz1jLnN1YnN0cmluZygwLGUpLGU9Yy5zdWJzdHJpbmcoZSsxKSkmJihkPS8oW14wXSopKDArKSguKikvLmV4ZWMoZSksYT1kWzFdLGQ9ZFszXSk7cmV0dXJuIGMmJmMhPSIwIj8oYz0vKFteMF0qKSgwKykoLiopLy5leGVjKGMpKT97cGw6YisxLShjWzJdLmxlbmd0aC0xKSx3bTphLHhtOmQscHJlZml4OmNbMV0sc3VmZml4OmNbM119OnNSOnNSfTsKdVI9ZnVuY3Rpb24oYSl7aWYoIWlzRmluaXRlKGEpKXJldHVybiBhPjA/YTowO2Zvcih2YXIgYj0wOyhhLz0xMCk+PTE7KWIrKztyZXR1cm4gYn07a1I9ZnVuY3Rpb24oYSxiKXtpZighYXx8IWlzRmluaXRlKGEpfHxiPT0wKXJldHVybiBhO2E9U3RyaW5nKGEpLnNwbGl0KCJlIik7cmV0dXJuIHBhcnNlRmxvYXQoYVswXSsiZSIrKHBhcnNlSW50KGFbMV18fDAsMTApK2IpKX07dlI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYSYmaXNGaW5pdGUoYSk/a1IoTWF0aC5yb3VuZChrUihhLGIpKSwtYik6YX07bFI9ZnVuY3Rpb24oYSxiLGMpe2lmKCFhKXJldHVybiBhO2I9Yi11UihhKS0xO3JldHVybiBiPC1jP3ZSKGEsLWMpOnZSKGEsYil9O3pqYT1mdW5jdGlvbihhKXtyZXR1cm4gYSUxMD09MSYmYSUxMDAhPTExPyJvbmUiOmElMTA9PTImJmElMTAwIT0xMj8idHdvIjphJTEwPT0zJiZhJTEwMCE9MTM/ImZldyI6Im90aGVyIn07CkFqYT1mdW5jdGlvbihhLGIpe3ZhciBjPWF8MDtpZih2b2lkIDA9PT1iKXtiPU1hdGg7dmFyIGQ9Yi5taW47bGV0IGU9YSsiIixmPWUuaW5kZXhPZigiLiIpO2I9ZC5jYWxsKGIsZj09PS0xPzA6ZS5sZW5ndGgtZi0xLDMpfWQ9TWF0aC5wb3coMTAsYik7YT17RkI6YixmOihhKmR8MCklZH07cmV0dXJuIGM9PTEmJmEuRkI9PTA/Im9uZSI6Im90aGVyIn07elI9ZnVuY3Rpb24oYSl7dGhpcy52PWE7dGhpcy5vPXRoaXMuaj10aGlzLkQ9bnVsbDthPWRSO3ZhciBiPXJSO2lmKHdSIT09YXx8eFIhPT1iKXdSPWEseFI9Yix5Uj1uZXcgaFI7dGhpcy5LPXlSfTsKQVI9ZnVuY3Rpb24oYSxiLGMsZCxlKXtmb3IobGV0IHA9MDtwPGIubGVuZ3RoO3ArKyl7dmFyIGY9dm9pZCAwO3N3aXRjaChiW3BdLnR5cGUpe2Nhc2UgNDplLnB1c2goYltwXS52YWx1ZSk7YnJlYWs7Y2FzZSAzOmY9YltwXS52YWx1ZTt2YXIgaD1hLGs9ZSxsPWNbZl07bD09PXZvaWQgMD9rLnB1c2goIlVuZGVmaW5lZCBwYXJhbWV0ZXIgLSAiK2YpOihoLmoucHVzaChsKSxrLnB1c2goaC5CKGguaikpKTticmVhaztjYXNlIDI6Zj1iW3BdLnZhbHVlO2g9YTtrPWM7bD1kO3ZhciBtPWUsbj1mLnNpO2tbbl09PT12b2lkIDA/bS5wdXNoKCJVbmRlZmluZWQgcGFyYW1ldGVyIC0gIituKToobj1mW2tbbl1dLG49PT12b2lkIDAmJihuPWYub3RoZXIpLEFSKGgsbixrLGwsbSkpO2JyZWFrO2Nhc2UgMDpmPWJbcF0udmFsdWU7QlIoYSxmLGMsQ1IsZCxlKTticmVhaztjYXNlIDE6Zj1iW3BdLnZhbHVlLEJSKGEsZixjLEJqYSxkLGUpfX19OwpCUj1mdW5jdGlvbihhLGIsYyxkLGUsZil7dmFyIGg9Yi5zaSxrPWIuR28sbD0rY1toXTtpc05hTihsKT9mLnB1c2goIlVuZGVmaW5lZCBvciBpbnZhbGlkIHBhcmFtZXRlciAtICIraCk6KGs9bC1rLGg9YltjW2hdXSxoPT09dm9pZCAwJiYoZD1kKE1hdGguYWJzKGspKSxoPWJbZF0saD09PXZvaWQgMCYmKGg9Yi5vdGhlcikpLGI9W10sQVIoYSxoLGMsZSxiKSxjPWIuam9pbigiIiksZT9mLnB1c2goYyk6KGE9YS5LLmZvcm1hdChrKSxmLnB1c2goYy5yZXBsYWNlKC8jL2csYSkpKSl9O0VqYT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuRCxkPWEuQi5iaW5kKGEpO2I9Yi5yZXBsYWNlKENqYSxmdW5jdGlvbigpe2MucHVzaCgiJyIpO3JldHVybiBkKGMpfSk7cmV0dXJuIGI9Yi5yZXBsYWNlKERqYSxmdW5jdGlvbihlLGYpe2MucHVzaChmKTtyZXR1cm4gZChjKX0pfTsKRFI9ZnVuY3Rpb24oYSl7dmFyIGI9MCxjPVtdLGQ9W10sZT0vW3t9XS9nO2UubGFzdEluZGV4PTA7Zm9yKHZhciBmO2Y9ZS5leGVjKGEpOyl7bGV0IGg9Zi5pbmRleDtmWzBdPT0ifSI/KGMucG9wKCksYy5sZW5ndGg9PTAmJihmPXt0eXBlOjF9LGYudmFsdWU9YS5zdWJzdHJpbmcoYixoKSxkLnB1c2goZiksYj1oKzEpKTooYy5sZW5ndGg9PTAmJihiPWEuc3Vic3RyaW5nKGIsaCksYiE9IiImJmQucHVzaCh7dHlwZTowLHZhbHVlOmJ9KSxiPWgrMSksYy5wdXNoKCJ7IikpfWE9YS5zdWJzdHJpbmcoYik7YSE9IiImJmQucHVzaCh7dHlwZTowLHZhbHVlOmF9KTtyZXR1cm4gZH07CkhSPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107Yj1EUihiKTtmb3IobGV0IGU9MDtlPGIubGVuZ3RoO2UrKyl7bGV0IGY9e307aWYoMD09YltlXS50eXBlKWYudHlwZT00LGYudmFsdWU9YltlXS52YWx1ZTtlbHNlIGlmKDE9PWJbZV0udHlwZSl7dmFyIGQ9YltlXS52YWx1ZTtzd2l0Y2goRVIudGVzdChkKT8wOkZSLnRlc3QoZCk/MTpHUi50ZXN0KGQpPzI6L15ccypcdytccyovLnRlc3QoZCk/Mzo1KXtjYXNlIDI6Zi50eXBlPTI7Zi52YWx1ZT1GamEoYSxiW2VdLnZhbHVlKTticmVhaztjYXNlIDA6Zi50eXBlPTA7Zi52YWx1ZT1HamEoYSxiW2VdLnZhbHVlKTticmVhaztjYXNlIDE6Zi50eXBlPTE7Zi52YWx1ZT1IamEoYSxiW2VdLnZhbHVlKTticmVhaztjYXNlIDM6Zi50eXBlPTMsZi52YWx1ZT1iW2VdLnZhbHVlfX1jLnB1c2goZil9cmV0dXJuIGN9OwpGamE9ZnVuY3Rpb24oYSxiKXt2YXIgYz0iIjtiPWIucmVwbGFjZShHUixmdW5jdGlvbihmLGgpe2M9aDtyZXR1cm4iIn0pO3ZhciBkPXt9O2Quc2k9YztiPURSKGIpO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7KXtsZXQgZj1iW2VdLnZhbHVlO2UrKztsZXQgaDsxPT1iW2VdLnR5cGUmJihoPUhSKGEsYltlXS52YWx1ZSkpO2RbZi5yZXBsYWNlKC9ccy9nLCIiKV09aDtlKyt9cmV0dXJuIGR9O0dqYT1mdW5jdGlvbihhLGIpe3ZhciBjPSIiLGQ9MDtiPWIucmVwbGFjZShFUixmdW5jdGlvbihoLGssbCl7Yz1rO2wmJihkPXBhcnNlSW50KGwsMTApKTtyZXR1cm4iIn0pO3ZhciBlPXt9O2Uuc2k9YztlLkdvPWQ7Yj1EUihiKTtmb3IodmFyIGY9MDtmPGIubGVuZ3RoOyl7bGV0IGg9YltmXS52YWx1ZTtmKys7bGV0IGs7MT09YltmXS50eXBlJiYoaz1IUihhLGJbZl0udmFsdWUpKTtlW2gucmVwbGFjZSgvXHMqKD86PSk/KFx3KylccyovLCIkMSIpXT1rO2YrK31yZXR1cm4gZX07CkhqYT1mdW5jdGlvbihhLGIpe3ZhciBjPSIiO2I9Yi5yZXBsYWNlKEZSLGZ1bmN0aW9uKGYsaCl7Yz1oO3JldHVybiIifSk7dmFyIGQ9e307ZC5zaT1jO2QuR289MDtiPURSKGIpO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7KXtsZXQgZj1iW2VdLnZhbHVlO2UrKztsZXQgaDsxPT1iW2VdLnR5cGUmJihoPUhSKGEsYltlXS52YWx1ZSkpO2RbZi5yZXBsYWNlKC9ccyooPzo9KT8oXHcrKVxzKi8sIiQxIildPWg7ZSsrfXJldHVybiBkfTtJamE9ZnVuY3Rpb24oYSxiKXtzd2l0Y2goYil7ZGVmYXVsdDpjYXNlICJ5ZWFycyI6cmV0dXJuIGEuai5ZRUFSO2Nhc2UgIm1vbnRocyI6cmV0dXJuIGEuai5NT05USDtjYXNlICJ3ZWVrcyI6cmV0dXJuIGEuai5XRUVLO2Nhc2UgImRheXMiOnJldHVybiBhLmouREFZO2Nhc2UgImhvdXJzIjpyZXR1cm4gYS5qLkhPVVI7Y2FzZSAibWludXRlcyI6cmV0dXJuIGEuai5NSU5VVEU7Y2FzZSAic2Vjb25kcyI6cmV0dXJuIGEuai5TRUNPTkR9fTsKSVI9ZnVuY3Rpb24oYSxiLGMpe2E9SWphKGEsYyk7cmV0dXJuKGE9YS5MT05HIT12b2lkIDA/YS5MT05HOmEuTkFSUk9XIT12b2lkIDA/YS5OQVJST1c6YS5TSE9SVCk/KG5ldyB6Uigie0RVUkFUSU9OX1ZBTFVFLHBsdXJhbCwiK2ErIn0iKSkuZm9ybWF0KHtEVVJBVElPTl9WQUxVRTpifSk6IiJ9O0pSPWZ1bmN0aW9uKCl7Xy5IeigpO3JldHVybiFfLkN6KDE0MSkmJl8udygiQVVUT05BVl9PRkZfQllfREVGQVVMVCIpPyExOiFfLkN6KDE0MCl9O0pqYT1mdW5jdGlvbigpe2lmKCFLUil7dmFyIGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3BsYXllci5za2VsZXRvbiIpO2EmJihfLkRkKGEpLEtSPSEwKX19O0xSPWZ1bmN0aW9uKGEsYixjLGQ9ITEpe2I9bmV3IEtqYShifHxhLGN8fGEpO3JldHVybnt4OmEueCtMamEoYixkKSouMix5OmEueStNamEoYixkKSouMn19O0xqYT1mdW5jdGlvbihhLGI9ITEpe3JldHVybiBiP2EuaiotMTphLmp9OwpNamE9ZnVuY3Rpb24oYSxiPSExKXtyZXR1cm4gYj9hLm8qLTE6YS5vfTtNUj1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4hMTt2YXIgYj1hLmVycm9yU2NyZWVuPy5wbGF5ZXJMZWdhY3lEZXNrdG9wWXBjVHJhaWxlclJlbmRlcmVyPz9hLmVycm9yU2NyZWVuPy55cGNUcmFpbGVyUmVuZGVyZXI7cmV0dXJuIShhLnN0YXR1cyE9PSJPSyImJmEuc3RhdHVzIT09IkxJVkVfU1RSRUFNX09GRkxJTkUiKXx8ISFifTsKUWphPWZ1bmN0aW9uKHtyZW5kZXJlcjphLHN1YnNjcmliZWQ6Yixpc092ZXJsYXk6YyxzdG9wUHJvcGFnYXRpb246ZH0pe3ZhciBlPU5qYShhLGIpO2MmJihlLnN0eWxlPSJvdmVybGF5Iik7YTpzd2l0Y2goYS5zdHlsZT8uc3R5bGVUeXBlKXtjYXNlICJDT01QQUNUX0dSQVkiOmNhc2UgIkNPTVBBQ1RfUkVEIjpjPXtzaXplOiJTIn07YnJlYWsgYTtkZWZhdWx0OmM9e3NpemU6Ik0ifX1jPXsuLi5jfTt2YXIgZj1PamEoYSxiKTt2YXIgaD0oaD1iP2Euc3Vic2NyaWJlZEJ1dHRvblRleHQ6YS51bnN1YnNjcmliZWRCdXR0b25UZXh0KT9fLkFGKGgpOnZvaWQgMDtyZXR1cm57Li4uZSwuLi5jLGZvY3VzZWQ6ITEsdG9nZ2xlZDpiLGFjY2Vzc2liaWxpdHlMYWJlbDpmLFdhOmgsb25UYXA6UGphKGEsYixkKX19OwpQamE9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57dmFyIGU9UmphKGEsYik7aWYoZSl7bGV0IGY9e3N1YnNjcmliZUJ1dHRvblJlbmRlcmVyOmF9O18uZEsoZSx7Zm9ybTp7Y3VycmVudERhdGE6Zixzb3VyY2VEYXRhOmYsZXZlbnQ6ZH19KX1jJiZkLnN0b3BQcm9wYWdhdGlvbigpfX07UmphPWZ1bmN0aW9uKGEsYil7aWYoYS5zaWduSW5FbmRwb2ludCYmIV8ueCgid2ViX3N1YnNjcmliZV9zaWduX2luX2VuZHBvaW50X2tpbGxzd2l0Y2giKSlyZXR1cm4gYS5zaWduSW5FbmRwb2ludDtpZihiKXtpZihhLnNlcnZpY2VFbmRwb2ludHMpcmV0dXJuIGEuc2VydmljZUVuZHBvaW50c1sxXTtpZihhLm9uVW5zdWJzY3JpYmVFbmRwb2ludHMpcmV0dXJuIGEub25VbnN1YnNjcmliZUVuZHBvaW50c1swXX1lbHNle2lmKGEuc2VydmljZUVuZHBvaW50cylyZXR1cm4gYS5zZXJ2aWNlRW5kcG9pbnRzWzBdO2lmKGEub25TdWJzY3JpYmVFbmRwb2ludHMpcmV0dXJuIGEub25TdWJzY3JpYmVFbmRwb2ludHNbMF19fTsKT2phPWZ1bmN0aW9uKGEsYil7Yj1iP2EudW5zdWJzY3JpYmVBY2Nlc3NpYmlsaXR5Py5hY2Nlc3NpYmlsaXR5RGF0YT8ubGFiZWw6YS5zdWJzY3JpYmVBY2Nlc3NpYmlsaXR5Py5hY2Nlc3NpYmlsaXR5RGF0YT8ubGFiZWw7cmV0dXJuIGEubG9uZ1N1YnNjcmliZXJDb3VudFRleHQ/W2IsXy5hTihhLmxvbmdTdWJzY3JpYmVyQ291bnRUZXh0KV0uZmlsdGVyKGM9PmMpLmpvaW4oIiAiKTpifTtOUj1mdW5jdGlvbihhLGIpe3JldHVybiBifHxhPy5pc0NoYW5uZWxEZWxlZ2F0ZT8iZGlzYWJsZWQiOiJhY3RpdmUifTsKTmphPWZ1bmN0aW9uKGEsYil7c3dpdGNoKGEuc3R5bGU/LnN0eWxlVHlwZSl7Y2FzZSAiQ09NUEFDVF9HUkFZIjpyZXR1cm57c3R5bGU6Im1vbm8iLHR5cGU6InRvbmFsIixzdGF0ZTpOUihhKX07Y2FzZSAiTUVESVVNX0dSQVkiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToidG9uYWwiLHN0YXRlOk5SKGEpfTtjYXNlICJWSVNJQkxZX0RJU0FCTEVEIjpyZXR1cm57c3R5bGU6Im1vbm8iLHR5cGU6InRleHQiLHN0YXRlOk5SKGEsITApfTtjYXNlICJPVkVSTEFZIjpyZXR1cm4gYj97c3R5bGU6Im92ZXJsYXkiLHR5cGU6InRvbmFsIixzdGF0ZTpOUihhKX06e3N0eWxlOiJvdmVybGF5Iix0eXBlOiJmaWxsZWQiLHN0YXRlOk5SKGEpfTtkZWZhdWx0OnJldHVybiBiP3tzdHlsZToibW9ubyIsdHlwZToidG9uYWwiLHN0YXRlOk5SKGEpfTp7c3R5bGU6Im1vbm8iLHR5cGU6ImZpbGxlZCIsc3RhdGU6TlIoYSl9fX07ClBSPWZ1bmN0aW9uKGEpe3ZhciBiPWEuaG91cnN8fDA7dmFyIGM9YS5taW51dGVzfHwwLGQ9YS5zZWNvbmRzfHwwO2I9ZCtjKjYwK2IqMzYwMCsoYS5kYXlzfHwwKSo4NjQwMCsoYS53ZWVrc3x8MCkqNjA0ODAwKyhhLm1vbnRoc3x8MCkqMjYyOTgwMCsoYS55ZWFyc3x8MCkqMzE1NTc2MDA7Yjw9MD9iPXtob3VyczowLG1pbnV0ZXM6MCxzZWNvbmRzOjB9OihhPWIsYj1NYXRoLmZsb29yKGEvMzYwMCksYSU9MzYwMCxjPU1hdGguZmxvb3IoYS82MCksZD1NYXRoLmZsb29yKGElNjApLGI9e2hvdXJzOmIsbWludXRlczpjLHNlY29uZHM6ZH0pO3ZhciB7aG91cnM6ZT0wLG1pbnV0ZXM6Zj0wLHNlY29uZHM6aD0wfT1iO2I9W107aWYoZT4wKXtjPU9SKCkuZm9ybWF0KHtob3VyczplfSk7aWYoISJiZSBiZyBlcyBldCBodSBpdCBrYSBsdiBwbCBwdC1QVCBzbCBzcSIuc3BsaXQoIiAiKS5pbmNsdWRlcyhaKXx8ZT45OTk5KXthPWMucmVwbGFjZTtkPWUudG9TdHJpbmcoKTt2YXIgaz0obmV3IEludGwuTnVtYmVyRm9ybWF0KCJlbi11LW51LWxhdG4iKSkuZm9ybWF0KGUpOwp2YXIgbD1bImZyIl07bGV0IG09ImF6IGJzIGNhIGRhIGRlIGVsIGVzIGV1IGdsIGhyIGlkIGlzIGl0IGttIGxvIG1rIG5sIHB0LUJSIHJvIHNsIHNyIHNyLUxhdG4gdHIgdmkiLnNwbGl0KCIgIik7az0iYWYgYmUgYmcgY3MgZXQgZmkgZnItQ0EgaHUgaHkga2Ega2sga3kgbHQgbHYgbm8gcGwgcHQtUFQgcnUgc2sgc3Egc3YgdWsgdXoiLnNwbGl0KCIgIikuaW5jbHVkZXMoWik/ay5yZXBsYWNlKCIsIiwiXHUwMGEwIik6bC5pbmNsdWRlcyhaKT9rLnJlcGxhY2UoIiwiLCJcdTIwMmYiKTptLmluY2x1ZGVzKFopP2sucmVwbGFjZSgiLCIsIi4iKTprO2M9YS5jYWxsKGMsZCxrKTtaPT09ImttIiYmKGM9Yy5yZXBsYWNlKCIuIiwiLCIpKX1iLnB1c2goYyl9Zj4wJiZiLnB1c2goT1IoKS5mb3JtYXQoe21pbnV0ZXM6Zn0pKTsoaD4wfHxlPT09MCYmZj09PTApJiZiLnB1c2goT1IoKS5mb3JtYXQoe3NlY29uZHM6aH0pKTtjPSJiZSBndSBqYSBrayBrbSBrbyBtbiBydSB0ciB1eiB6aC1ISyB6aC1UVyIuc3BsaXQoIiAiKTsKYT1aPT0iYW0iPyJ7MH1cdTEzNjMgIjpaPT0iZmEiPyJ7MH1cdTA2MGNcdTIwMGYgIjpaPT0ibXkiPyJ7MH0gLSAiOlo9PSJ0aCI/InswfSAiOlo9PSJ1ciI/InswfVx1MDYwYyAiOlo9PSJhciJ8fFo9PSJhci1YQiI/InswfSBcdTA2NDgiOlo9PSJqYSJ8fFo9PSJ6aC1DTiJ8fFo9PSJ6aC1ISyJ8fFo9PSJ6aC1UVyI/InswfVx1MzAwMSI6InswfSwgIjtkPVo9PSJhbSI/Ilx1MTM2MyAiOlo9PSJmYSI/Ilx1MDYwY1x1MjAwZiAiOlo9PSJteSI/IiAtICI6Wj09InRoIj8iICI6Wj09InVyIj8iXHUwNjBjICI6Wj09ImFyInx8Wj09ImFyLVhCIj8iIFx1MDY0OCI6Wj09ImphInx8Wj09InpoLUNOInx8Wj09InpoLUhLInx8Wj09InpoLVRXIj8iXHUzMDAxIjoiLCAiO2s9Wj09ImFtIj8iIFx1MTJhNVx1MTI5MyB7MH0iOlo9PSJhcyI/IiBcdTA5ODZcdTA5ZjBcdTA5YzEgezB9IjpaPT0iYXoiPyIgdlx1MDI1OSB7MH0iOlo9PSJibiI/IiBcdTA5OGZcdTA5YWNcdTA5ODIgezB9IjpaPT0iY3MiPwoiIGFcdTAwYTB7MH0iOlo9PSJkZSI/IiB1bmQgezB9IjpaPT0iZWwiPyIgXHUwM2JhXHUwM2IxXHUwM2I5IHswfSI6Wj09ImV1Ij8iIGV0YSB7MH0iOlo9PSJmYSI/Ilx1MDYwYyBcdTA2NDggezB9IjpaPT0iZmlsIj8iLCBhdCB7MH0iOlo9PSJndSI/IiBcdTBhODVcdTBhYThcdTBhYzcgezB9IjpaPT0iaGkiPyIsIFx1MDkxNFx1MDkzMCB7MH0iOlo9PSJodSI/IiBcdTAwZTlzIHswfSI6Wj09Imh5Ij8iIFx1MDU4NyB7MH0iOlo9PSJpZCI/IiwgZGFuIHswfSI6Wj09Iml3Ij8iIFx1MDVkNS17MH0iOlo9PSJqYSI/Ilx1MzAwMXswfSI6Wj09ImthIj8iIFx1MTBkM1x1MTBkMCB7MH0iOlo9PSJrbSI/IiBcdTE3OTNcdTE3YjdcdTE3ODQgezB9IjpaPT0ia24iPyIsIFx1MGNhZVx1MGNhNFx1MGNjZFx1MGNhNFx1MGNjMSB7MH0iOlo9PSJrbyI/IiBcdWJjMGYgezB9IjpaPT0ia3kiPyIgXHUwNDM2XHUwNDMwXHUwNDNkXHUwNDMwIHswfSI6Wj09Imx0Ij8iIGlyIHswfSI6Wj09Imx2Ij8KIiB1biB7MH0iOlo9PSJtciI/IiBcdTA5MDZcdTA5MjNcdTA5M2YgezB9IjpaPT0ibXMiPyIgZGFuIHswfSI6Wj09Im15Ij8iXHUxMDE0XHUxMDNlXHUxMDA0XHUxMDM3XHUxMDNhIHswfSI6Wj09Im5lIj8iIFx1MDkzMCB7MH0iOlo9PSJvciI/IiwgXHUwYjEzIHswfSI6Wj09InBhIj8iIFx1MGEwNVx1MGEyNFx1MGE0NyB7MH0iOlo9PSJybyI/IiBcdTAyMTlpIHswfSI6Wj09InNpIj8iLCBcdTBkYzNcdTBkYzQgezB9IjpaPT0ic2siPyIgYSB7MH0iOlo9PSJzbCI/IiBpbiB7MH0iOlo9PSJzcSI/IiBkaGUgezB9IjpaPT0ic3YiPyIgb2NoIHswfSI6Wj09InN3Ij8iIG5hIHswfSI6Wj09InRhIj8iIFx1MGJhZVx1MGJiMVx1MGJjZFx1MGJiMVx1MGJjMVx1MGJhZVx1MGJjZCB7MH0iOlo9PSJ0ZSI/IiBcdTBjMmVcdTBjMzBcdTBjM2ZcdTBjMmZcdTBjNDEgezB9IjpaPT0idGgiPyIgXHUwZTQxXHUwZTI1XHUwZTMwezB9IjpaPT0idHIiPyIgdmUgezB9IjpaPT0idXIiPyJcdTA2MGMgXHUwNjI3XHUwNjQ4XHUwNjMxIHswfSI6Clo9PSJ1eiI/IiB2YSB7MH0iOlo9PSJ2aSI/IiB2XHUwMGUwIHswfSI6Wj09InpoLUhLIj8iXHU1M2NhezB9IjpaPT0ienUiPyIsIG5lLXswfSI6Wj09ImFmInx8Wj09Im5sIj8iIGVuIHswfSI6Wj09ImFyInx8Wj09ImFyLVhCIj8iIFx1MDY0OHswfSI6Wj09ImJlInx8Wj09InVrIj8iIFx1MDQ1NiB7MH0iOlo9PSJlbi1HQiJ8fFo9PSJlbi1JTiI/IiBhbmQgezB9IjpaPT0iZW4ifHxaPT0iZW4tWEEiPyIsIGFuZCB7MH0iOlo9PSJldCJ8fFo9PSJmaSI/IiBqYSB7MH0iOlo9PSJmciJ8fFo9PSJmci1DQSI/IiBldCB7MH0iOlo9PSJ6aC1DTiJ8fFo9PSJ6aC1UVyI/Ilx1NTQ4Y3swfSI6Wj09ImRhInx8Wj09ImlzInx8Wj09Im5vIj8iIG9nIHswfSI6Wj09ImVzInx8Wj09ImVzLTQxOSJ8fFo9PSJlcy1VUyI/IiB5IHswfSI6Wj09ImJnInx8Wj09Im1rInx8Wj09InJ1Inx8Wj09InNyIj8iIFx1MDQzOCB7MH0iOlo9PSJnbCJ8fFo9PSJpdCJ8fFo9PSJwdC1CUiJ8fFo9PSJwdC1QVCI/IiBlIHswfSI6Clo9PSJrayJ8fFo9PSJsbyJ8fFo9PSJtbCJ8fFo9PSJtbiI/IiwgezB9IjoiIGkgezB9IjtsPVo9PSJhbSI/InswfSBcdTEyYTVcdTEyOTMgezF9IjpaPT0iYXMiPyJ7MH0gXHUwOTg2XHUwOWYwXHUwOWMxIHsxfSI6Wj09ImF6Ij8iezB9IHZcdTAyNTkgezF9IjpaPT0iYm4iPyJ7MH0gXHUwOThmXHUwOWFjXHUwOTgyIHsxfSI6Wj09ImRlIj8iezB9IHVuZCB7MX0iOlo9PSJlbCI/InswfSBcdTAzYmFcdTAzYjFcdTAzYjkgezF9IjpaPT0iZXUiPyJ7MH0gZXRhIHsxfSI6Wj09ImZhIj8iezB9IFx1MDY0OCB7MX0iOlo9PSJmaWwiPyJ7MH0gYXQgezF9IjpaPT0iZ3UiPyJ7MH0gXHUwYTg1XHUwYWE4XHUwYWM3IHsxfSI6Wj09ImhpIj8iezB9IFx1MDkxNFx1MDkzMCB7MX0iOlo9PSJodSI/InswfSBcdTAwZTlzIHsxfSI6Wj09Imh5Ij8iezB9IFx1MDU4NyB7MX0iOlo9PSJpdyI/InswfSBcdTA1ZDUtezF9IjpaPT0iamEiPyJ7MH1cdTMwMDF7MX0iOlo9PSJrYSI/InswfSBcdTEwZDNcdTEwZDAgezF9IjoKWj09ImtrIj8iezB9IFx1MDQzNlx1MDRkOVx1MDQzZFx1MDQzNSB7MX0iOlo9PSJrbSI/InswfSBcdTE3OTNcdTE3YjdcdTE3ODRcdTIwMGJ7MX0iOlo9PSJrbiI/InswfSBcdTBjYWVcdTBjYTRcdTBjY2RcdTBjYTRcdTBjYzEgezF9IjpaPT0ia28iPyJ7MH0gXHViYzBmIHsxfSI6Wj09Imt5Ij8iezB9IFx1MDQzNlx1MDQzMFx1MDQzZFx1MDQzMCB7MX0iOlo9PSJsbyI/InswfSBcdTBlYzFcdTBlYTVcdTBlYjAgezF9IjpaPT0ibHQiPyJ7MH0gaXIgezF9IjpaPT0ibHYiPyJ7MH0gdW4gezF9IjpaPT0ibXIiPyJ7MH0gXHUwOTA2XHUwOTIzXHUwOTNmIHsxfSI6Wj09Im15Ij8iezB9XHUxMDE0XHUxMDNlXHUxMDA0XHUxMDM3XHUxMDNhIHsxfSI6Wj09Im5lIj8iezB9IFx1MDkzMCB7MX0iOlo9PSJvciI/InswfSBcdTBiMTMgezF9IjpaPT0icGEiPyJ7MH0gXHUwYTA1XHUwYTI0XHUwYTQ3IHsxfSI6Wj09InJvIj8iezB9IFx1MDIxOWkgezF9IjpaPT0ic2kiPyJ7MH0gXHUwZGMzXHUwZGM0IHsxfSI6Clo9PSJzbCI/InswfSBpbiB7MX0iOlo9PSJzcSI/InswfSBkaGUgezF9IjpaPT0ic3YiPyJ7MH0gb2NoIHsxfSI6Wj09InN3Ij8iezB9IG5hIHsxfSI6Wj09InRhIj8iezB9IFx1MGJhZVx1MGJiMVx1MGJjZFx1MGJiMVx1MGJjMVx1MGJhZVx1MGJjZCB7MX0iOlo9PSJ0ZSI/InswfSBcdTBjMmVcdTBjMzBcdTBjM2ZcdTBjMmZcdTBjNDEgezF9IjpaPT0idGgiPyJ7MH1cdTBlNDFcdTBlMjVcdTBlMzB7MX0iOlo9PSJ0ciI/InswfSB2ZSB7MX0iOlo9PSJ1ciI/InswfSBcdTA2MjdcdTA2NDhcdTA2MzEgezF9IjpaPT0idXoiPyJ7MH0gdmEgezF9IjpaPT0idmkiPyJ7MH0gdlx1MDBlMCB7MX0iOlo9PSJ6aC1ISyI/InswfVx1NTNjYXsxfSI6Wj09Inp1Ij8iezB9IG5lLXsxfSI6Wj09ImFmInx8Wj09Im5sIj8iezB9IGVuIHsxfSI6Wj09ImFyInx8Wj09ImFyLVhCIj8iezB9IFx1MDY0OHsxfSI6Wj09ImJlInx8Wj09InVrIj8iezB9IFx1MDQ1NiB7MX0iOlo9PSJjcyJ8fFo9PSJzayI/InswfSBhXHUwMGEwezF9IjoKWj09ImV0Inx8Wj09ImZpIj8iezB9IGphIHsxfSI6Wj09ImZyInx8Wj09ImZyLUNBIj8iezB9IGV0IHsxfSI6Wj09ImlkInx8Wj09Im1zIj8iezB9IGRhbiB7MX0iOlo9PSJtbCJ8fFo9PSJtbiI/InswfSwgezF9IjpaPT0iemgtQ04ifHxaPT0iemgtVFciPyJ7MH1cdTU0OGN7MX0iOlo9PSJkYSJ8fFo9PSJpcyJ8fFo9PSJubyI/InswfSBvZyB7MX0iOlo9PSJlcyJ8fFo9PSJlcy00MTkifHxaPT0iZXMtVVMiPyJ7MH0geSB7MX0iOlo9PSJiZyJ8fFo9PSJtayJ8fFo9PSJydSJ8fFo9PSJzciI/InswfSBcdTA0MzggezF9IjpaPT0iZW4ifHxaPT0iZW4tR0IifHxaPT0iZW4tSU4ifHxaPT0iZW4tWEEiPyJ7MH0gYW5kIHsxfSI6Wj09ImdsInx8Wj09Iml0Inx8Wj09InB0LUJSInx8Wj09InB0LVBUIj8iezB9IGUgezF9IjoiezB9IGkgezF9IjtaPT09InNxIj8oaz1rLnJlcGxhY2UoImRoZSIsImUiKSxsPWwucmVwbGFjZSgiZGhlIiwiZSIpKTpaPT09InRoIj8oZD1kLnJlcGxhY2UoInswfSIsCiIgezB9IiksbD1sLnJlcGxhY2UoInswfSIsInswfSAiKSxsPWwucmVwbGFjZSgiezF9IiwiIHsxfSIpKTpaPT09Im5lIj9kPSIsIjpaPT09InpoLUNOIj9kPSIiOmMuaW5jbHVkZXMoWikmJihkPSIgIik7cmV0dXJuIGIubGVuZ3RoPDI/Yi5qb2luKCIiKToiYW0gYXIgYmcgYnMgY2EgY3MgZGEgZXMgZXMtNDE5IGVzLVVTIGV1IGZhIGZpIGZyLUNBIGZyIGdsIGd1IGhpIGhyIGh1IGh5IGlzIGl0IGx0IGx2IG1rIG15IG5vIG5sIHBsIHB0LUJSIHB0LVBUIHJvIHNpIHNsIHNxIHNyLUxhdG4gc3Igc3cgdGggdWsiLnNwbGl0KCIgIikuaW5jbHVkZXMoWik/Yi5sZW5ndGg9PT0yP2wucmVwbGFjZSgiezB9IixiWzBdKS5yZXBsYWNlKCJ7MX0iLGJbMV0pOmEucmVwbGFjZSgiezB9IixiWzBdKStiLnNsaWNlKDEsLTEpLmpvaW4oZCkray5yZXBsYWNlKCJ7MH0iLGJbYi5sZW5ndGgtMV0pOmIuam9pbihkKX07T1I9ZnVuY3Rpb24oKXtRUnx8KENSPVNqYSxRUj1uZXcgVGphKTtyZXR1cm4gUVJ9OwpVamE9ZnVuY3Rpb24oKXtKUSgpKHt0cTohMH0pO0pRKCkoe3RxOiExfSl9O1dqYT1mdW5jdGlvbihhKXt2YXIgYj1fLldEKCgpPT5hLmdldERlYnVnVGV4dCghMCkpO2ImJl8ueSgpLnJlc29sdmUoXy55UCkub3BlbkRpYWxvZyh7VW46KCk9Pl8uSyhWamEse2Z2OmJ9KX0pfTtSUj1mdW5jdGlvbihhLGIpe2lmKGIpYT1hLmdldFZpZGVvVXJsKCk7ZWxzZXthPWEuZ2V0UGxheWVyUmVzcG9uc2UoKS52aWRlb0RldGFpbHM/LnZpZGVvSWQ7aWYoIWEpcmV0dXJuO2E9YGh0dHBzOi8veW91dHUuYmUvJHthfWB9YSYmd2luZG93Lm5hdmlnYXRvcj8uY2xpcGJvYXJkJiZ3aW5kb3cubmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoYSl9OwpYamE9ZnVuY3Rpb24oYSxiLGMsZCl7Xy55Tih7R2I6KCk9Pl8uSyhfLklCLG51bGwsU1IoYSxiKSxfLksoXy5PLHtBOigpPT5kJiZjLHRoZW46KCk9Pl8uSyhUUix7SDphLHRhOmN9KX0pLF8uSyhVUix7SDphfSksXy5LKFZSLHtIOmF9KSxfLksoV1Ise0g6YX0pLF8uSyhZUix7SDphfSksXy5LKFpSLHtIOmF9KSxfLksoJFIse0g6YX0pLF8uSyhhUyx7SDphfSksXy5LKGJTLHtIOmF9KSksSGE6ITB9KX07U1I9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5LKF8uTyx7QTooKT0+Xy50UCgpLHRoZW46KCk9Pl8uSyhfLk5QLG51bGwpLFc6KCk9Pl8uSyhfLk8se0E6KCk9PiFiLHRoZW46KCk9Pl8uSyhjUyx7SDphfSl9KX0pfTtkUz1mdW5jdGlvbihhLGIpe18ueU4oe0diOmIsSGE6ITB9KTthLnN0b3BQcm9wYWdhdGlvbigpfTtlUz1mdW5jdGlvbihhKXthPWEuZ2V0QXZhaWxhYmxlUGxheWJhY2tSYXRlcygpO3JldHVybiBhW2EubGVuZ3RoLTFdPjJ9O2ZTPWZ1bmN0aW9uKGEpe3JldHVybntidXR0b25WaWV3TW9kZWw6e2FjY2Vzc2liaWxpdHlUZXh0OmF9fX07CmdTPWZ1bmN0aW9uKGEsYil7Yj1hPT09MTAwP1lqYTphPT09Yj9aamE6dm9pZCAwO3JldHVybnt2YXJpYWJsZVNwZWVkQ29udHJvbGxlclNwZWVkQnV0dG9uVmlld01vZGVsOntwbGF5YmFja1NwZWVkQnV0dG9uOntidXR0b25WaWV3TW9kZWw6e3RpdGxlOmAke2EvMTAwfXhgLHN0eWxlOiJCVVRUT05fVklFV19NT0RFTF9TVFlMRV9NT05PIix0eXBlOiJCVVRUT05fVklFV19NT0RFTF9UWVBFX1RPTkFMIixidXR0b25TaXplOiJCVVRUT05fVklFV19NT0RFTF9TSVpFX0NPTVBBQ1QiLGljb25UcmFpbGluZzohMH19LGJ1dHRvbkxhYmVsOntjb250ZW50OmJ9LHBsYXliYWNrU3BlZWRCdXR0b25DZW50aVZhbHVlOmF9fX07CmRrYT1mdW5jdGlvbihhKXtpZihhPy5pc1JlYWR5Py4oKSl7dmFyIGI9YS5nZXRQbGF5YmFja1JhdGUoKTtpZihiKXtoU3x8KGhTPV8ueE0oKSk7dmFyIGM9ZVMoYSk/JGphOmFrYTtpZighaFM/LmdldCgicmVjZW50LWN1c3RvbS1zcGVlZCIpfHxiIT09MSlyZXR1cm4gYy5tYXAoZT0+Z1MoZSkpO3ZhciBkPU51bWJlcihoUy5nZXQoInJlY2VudC1jdXN0b20tc3BlZWQiKSk7aWYoYy5pbmNsdWRlcyhkKSlyZXR1cm4gYy5tYXAoZT0+Z1MoZSxkKSk7YT1lUyhhKT9ia2Euc2xpY2UoKTpja2Euc2xpY2UoKTthLnB1c2goZCk7YS5zb3J0KChlLGYpPT5lLWYpO3JldHVybiBhLm1hcChlPT5nUyhlLGQpKX19fTsKaWthPWZ1bmN0aW9uKGEpe2lmKGE/LmlzUmVhZHk/LigpKXt2YXIgYj1hLmdldFBsYXliYWNrUmF0ZSgpLGM9YS5nZXRBdmFpbGFibGVQbGF5YmFja1JhdGVzKCk7aWYoYiYmYyl7dmFyIGQ9Y1tjLmxlbmd0aC0xXSoxMDA7Yz1jWzBdKjEwMDtiPXtob3Jpem9udGFsU2xpZGVyVmlld01vZGVsOnttYXhWYWx1ZTpkLG1pblZhbHVlOmMsaW5pdGlhbFZhbHVlOmIqMTAwLHN0ZXBDb3VudDooZC1jKS81LHZhbHVlRGVub21pbmF0b3I6MTAwLGluY3JlYXNlQnV0dG9uOmZTKGVrYSksZGVjcmVhc2VCdXR0b246ZlMoZmthKSxyZW5kZXJlckNvbnRleHQ6e2FjY2Vzc2liaWxpdHlDb250ZXh0OntsYWJlbDpna2F9fX19O2E9ZGthKGEpO3JldHVybnt2YXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbDp7c2xpZGVyOmIscGxheWJhY2tTcGVlZEJ1dHRvbnM6YSxiYWRnZTp7YmFkZ2VWaWV3TW9kZWw6e2JhZGdlVGV4dDoiUCIsYmFkZ2VTdHlsZToiQkFER0VfUFJFTUlVTSIsYWNjZXNzaWJpbGl0eUxhYmVsOmhrYX19fX19fX07CmlTPWZ1bmN0aW9uKGEpe2hTfHwoaFM9Xy54TSgpKTtoUyYmaFMuc2V0KCJyZWNlbnQtY3VzdG9tLXNwZWVkIixTdHJpbmcoYSoxMDApKX07a2thPWZ1bmN0aW9uKGEpe3ZhciBiPWlrYShhKSxjPV8uQihiLGprYSk7YyYmXy55Tih7SGE6ITAscGY6ITAsR2I6KCk9Pl8uSyhfLmtPLHtkYXRhOmMscHo6ZD0+e2Euc2V0UGxheWJhY2tSYXRlKGQudGFyZ2V0LnZhbHVlQXNOdW1iZXIpfSxvejpkPT57aVMoZC50YXJnZXQudmFsdWVBc051bWJlcil9LHF6OmQ9PnthLnNldFBsYXliYWNrUmF0ZShkKTtkIT09MSYmaVMoZCk7Xy56TigpfX0pfSl9O2pTPWZ1bmN0aW9uKGEpe3JldHVybihhPWxrYVthXSk/YCR7YX1wYDpta2F9O2tTPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5XRCgoKT0+YS5nZXRQbGF5YmFja1F1YWxpdHkoKSksZD1fLldEKCgpPT5hLmdldFByZWZlcnJlZFF1YWxpdHkoKSksZT1qUyhiKTtiPT09ImF1dG8iJiZkPT09ImF1dG8iJiYoZSs9YCAoJHtqUyhjKX0pYCk7cmV0dXJuIGV9Owpva2E9ZnVuY3Rpb24oYSl7Xy55Tih7R2I6KCk9Pl8uSyhua2Ese0g6YX0pLEhhOiEwfSl9O3BTPWZ1bmN0aW9uKGEsYixjLGQsZSl7ZFMoYSwoKT0+Xy5LKF8uSUIsbnVsbCxfLksobFMse0g6Yn0pLF8uSyhtUyx7SDpifSksXy5LKHBrYSx7SDpifSksXy5LKF8uTyx7QTooKT0+Yi5nZXRBdmFpbGFibGVBdWRpb1RyYWNrcygpPy5sZW5ndGgsdGhlbjooKT0+Xy5LKG5TLHtIOmJ9KX0pLF8uSyhvUyx7SDpiLG9oOmMsdGE6ZCx0QTplfSkpKX07cWthPWZ1bmN0aW9uKGEsYixjKXtkUyhhLCgpPT5fLksoXy5JQixudWxsLFNSKGIsYykpKX07CnJrYT1mdW5jdGlvbihhKXtfLm5QKCk7aWYoYS54YylpZihhLmNhcHRpb25zRW5hYmxlZClxUyhfLiROLlNzKTtlbHNle3ZhciBiPWEuSDtpZihiKXtpZihhPVBRKGIpLGI9TlEoYikpYjp7aWYoYi50cmFuc2xhdGlvbkxhbmd1YWdlJiYoYT1iLnRyYW5zbGF0aW9uTGFuZ3VhZ2U/Yi50cmFuc2xhdGlvbkxhbmd1YWdlPy5sYW5ndWFnZU5hbWV8fCIiOiIiKSlicmVhayBiO2E9Yi5kaXNwbGF5TmFtZX19ZWxzZSBhPSIiO3FTKGE/Xy4kTi5Vcy5yZXBsYWNlKCJsYW5ndWFnZV9wbGFjZWhvbGRlciIsYSk6Xy4kTi5Ucyl9ZWxzZSBxUyhfLiROLlJzKX07cVM9ZnVuY3Rpb24oYSl7Xy5wUCgoKT0+YSl9O3NrYT1mdW5jdGlvbihhLGIpe3ZhciBjPXJTKGEpO2E9YS5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCk7YT17Li4uc1MoYSksRWU6ITB9O3JldHVybnt0YTpjLGJhOmEsVGM6ZG9jdW1lbnQuYm9keSxHYzpifX07CnRrYT1mdW5jdGlvbihhLGIpe3ZhciBjPWpqYSgpLGQ9ey4uLnJTKGEpLFNqOmY9Pnt2YXIgaD0hdFMoKSxrPWEuaXNSZWFkeT8uKCkmJiEhYS5nZXRXYXRjaE5leHRSZXNwb25zZSgpPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5hdXRvcGxheTtwUyhmLGEsaCxkLGspfSxkZTooKT0+e3ZhciBmPWM/LmdldCgiYXV0b25hdl9lbmFibGVkIik7cmV0dXJuIGY9PT12b2lkIDB8fGY9PT0idHJ1ZSJ9LFJqOihmLGgpPT57aCYmYz8uc2V0KCJhdXRvbmF2X2VuYWJsZWQiLFN0cmluZyhmKSl9LFVsOigpPT5jPy5nZXQoImF1dG9uYXZfZW5hYmxlZCIpIT09dm9pZCAwfSxlPWEuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpO2U9ey4uLnNTKGUpLHZ2OjM1MCx6djohMCxNbDo0RTMsaGlkZVZpZGVvSW5mbzplLmhpZGVJbmZvfTtyZXR1cm57dGE6ZCxiYTplLFRjOmRvY3VtZW50LmJvZHksR2M6Yn19OwpyUz1mdW5jdGlvbihhKXt2YXIgYj1hLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKSxjPWdqYSxkPVRRLGU9U1E7aWYoYj8uZW1iZWRzSG9zdEZsYWdzPy5hbGxvd1NldEZhdXhGdWxsc2NyZWVuJiZiPy5leHRlcm5hbEZ1bGxzY3JlZW4pe2xldCBmPW5ldyB1a2EoYSk7Yz0oKT0+Zi5pc0Z1bGxzY3JlZW4oKTtkPSgpPT57Zi50b2dnbGVGdWxsc2NyZWVuKCl9O2U9KCk9PntmLmV4aXRGdWxsc2NyZWVuKCl9fXJldHVybntTajpmPT57dmFyIGg9IXRTKCk7YT8uZ2V0U2l6ZSgpPy53aWR0aDwzMjA/cWthKGYsYSxoKTpwUyhmLGEsaCl9LHFBOnJrYSxpc0Z1bGxzY3JlZW46Yyx0b2dnbGVGdWxsc2NyZWVuOmQsZXhpdEZ1bGxzY3JlZW46ZSxkZTooKT0+ITEsUmo6KCk9Pnt9LFVsOigpPT4hMX19OwpzUz1mdW5jdGlvbihhKXtyZXR1cm57RWU6ITAsTWk6ITAsTWw6Xy54KCJlbWJlZHNfZW5hYmxlX2RlbGF5X2NvbnRyb2xzX2hpZGUiKT80RTM6dm9pZCAwLGlxOmEuZGlzYWJsZUZ1bGxzY3JlZW4sbmg6YS5jb250cm9sc1R5cGU9PT0wLG9oOiF0UygpLGhpZGVWaWRlb0luZm86YS5oaWRlSW5mbyYmYS5lbWJlZHNIb3N0RmxhZ3M/Lm9wdE91dEFwaURlcHJlY2F0aW9uLHVqOiEwLER6OiFfLngoImVtYmVkc19lbWMzZHNfcHJlc2VydmVfZnVsbHNjcmVlbl9rcyIpLHpyOiEwLHJBOiEwLFpoOiEwLHZuOiEwLFpBOiFfLngoImVtYmVkc19lbWMzZHNfZnRsX2tzIiksdm9sdW1lQ29udHJvbFR5cGU6Xy54KCJlbWJlZHNfZGVza3RvcF9lbmFibGVfdm9sdW1lX3NsaWRlciIpJiZ3aW5kb3cubWF0Y2hNZWRpYSgiKGFueS1wb2ludGVyOiBmaW5lKSIpLm1hdGNoZXM/InZvbHVtZS1zbGlkZXIiOiJtdXRlLWJ1dHRvbiJ9fTsKdFM9ZnVuY3Rpb24oKXtyZXR1cm4gXy50UCgpfHxfLnF6KCkmJiFfLncoIlBMQVlFUl9WQVJTIik/LnByaXZlbWJlZCYmIShfLmVyJiZfLk1rKCJ2ZXJzaW9uLyIpKSYmIV8ucnooKX07dVM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEucGxheWVyU3RhdGU9PT0wfTt3Uz1mdW5jdGlvbihhKXtyZXR1cm4gYS52aWRlb0R1cmF0aW9uP3ZTKGEpP0RRKGEuQ2EvYS52aWRlb0R1cmF0aW9uLDAsMSk6RFEoKGEudmF8fDApL2EudmlkZW9EdXJhdGlvbiwwLDEpOjB9O3hTPWZ1bmN0aW9uKGEpe3JldHVybiBhLnZpZGVvRHVyYXRpb24/YS5pc0RyYWdnaW5nfHx2UyhhKT9EUShhLkNhL2EudmlkZW9EdXJhdGlvbiwwLDEpOkRRKChhLnZhfHwwKS9hLnZpZGVvRHVyYXRpb24sMCwxKTowfTt2Uz1mdW5jdGlvbihhKXtyZXR1cm4gYS5LYj4xJiZhLkpkIT09MH07CnlTPWZ1bmN0aW9uKGEpe3JldHVybihfLngoIndlYl9lbmFibGVfZGlic19pbXBsZW1lbnRhdGlvbiIpfHxfLngoIm13ZWJfZW5hYmxlX2RpYnNfaW1wbGVtZW50YXRpb24iKSkmJmEuSD8uZ2V0VmlkZW9EYXRhKGEucGxheWVyVHlwZSk/LmlzU2Vla2FibGV8fGEucGxheWVyVHlwZT09PTE/ITE6YS5iYT8uWmg/IWEuSD8uZ2V0UGxheWVyU3RhdGVPYmplY3QoYS5wbGF5ZXJUeXBlKS5pc0RvbVBhdXNlZDohMH07elM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQihhPy5hdXRvbmF2VG9nZ2xlLHZrYSl9O0FTPWZ1bmN0aW9uKGEpe3JldHVybiBhPy5jb250ZW50cz8uc2luZ2xlQ29sdW1uV2F0Y2hOZXh0UmVzdWx0cz8uYXV0b3BsYXk/LmF1dG9wbGF5fTtCUz1mdW5jdGlvbihhKXtyZXR1cm4gYT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8uYXV0b3BsYXk/LnBsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyfTsKRVM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQihDUyhhKT8ucGxheWVyQmFyLERTKX07RlM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQihhPy5tYXJrZXJzTWFwPy5maW5kKGI9PmIua2V5PT09IkhFQVRTRUVLRVIiKT8udmFsdWU/LmhlYXRtYXAsd2thKX07Q1M9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQihhPy5kZWNvcmF0ZWRQbGF5ZXJCYXJSZW5kZXJlcix4a2EpfTtHUz1mdW5jdGlvbihhKXtyZXR1cm4gXy5CKENTKGEpPy5wbGF5aGVhZCx5a2EpfTt6a2E9ZnVuY3Rpb24oYSl7cmV0dXJuISFhPy5tYXJrZXJzTWFwPy5maW5kKGI9PlsiREVTQ1JJUFRJT05fQ0hBUFRFUlMiLCJBVVRPX0NIQVBURVJTIl0uaW5jbHVkZXMoYi5rZXkpKX07SlM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gSFMoYSxiKXx8SVMoYSk/ITE6IWEuaXNEcmFnZ2luZyYmIXZTKGEpJiYhYS5zYiYmYS5MZiE9PSJvbiJ9OwpIUz1mdW5jdGlvbihhLGIpe3JldHVybiFhLmF1dG9uYXZFbmFibGVkfHxhLnhmfHwhYnx8YS5yY3x8YS5pc1BsYXlsaXN0JiZiPy5zZXRzPy5bMF0uYXV0b3BsYXlWaWRlbz8hMTp1UyhhKX07Q2thPWZ1bmN0aW9uKGEsYil7Yj1iPy5hY3Rpb25CYXJCdXR0b25zO3JldHVybiBfLkIoXy5CKGE/LnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LmZ1bGxzY3JlZW5FbmdhZ2VtZW50LEFrYSk/LmFjdGlvbkJhcixCa2EpPy5hY3Rpb25CYXJCdXR0b25zfHxifHxbXX07TFM9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQihfLkIoYT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8uZnVsbHNjcmVlblF1aWNrQWN0aW9uc0JhcixLUyk/LmZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludCxEa2EpfTsKTVM9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/LnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LmVuZFNjcmVlbj8ud2F0Y2hOZXh0RW5kU2NyZWVuUmVuZGVyZXI/LnJlc3VsdHN8fFtdfTtOUz1mdW5jdGlvbihhLGIpe3JldHVybiBhP2EudmlkZW9EZXRhaWxzPy5lbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNSZW5kZXJlcjpfLkIoYj8udmlkZW9EZXRhaWxzLEVrYSl9O1BTPWZ1bmN0aW9uKGEsYil7Yj1fLkIoYj8uZW1iZWRQcmV2aWV3Py50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI/LmluZm9QYW5lbCxPUyk7cmV0dXJuIF8uQihhPy5pbmZvUGFuZWwsT1MpfHxifTtJUz1mdW5jdGlvbihhKXtyZXR1cm4gYS5OYT8hMDphLkpmIT09MH07CkZrYT1mdW5jdGlvbih7ZWxlbWVudDphLHZlVHlwZTpiLExBOmM9bnVsbCxlbGVtZW50SW5kZXg6ZD0wLGNsaWVudFlvdVR1YmVEYXRhOmV9KXt2YXIgZj1fLmlxKCk7ZiE9PVFTJiYoUlMuY2xlYXIoKSxRUz1mKTtpZihhLnZpc3VhbEVsZW1lbnQmJlJTLmhhcyhhLnZpc3VhbEVsZW1lbnQpKXJldHVybiBudWxsO2lmKGMmJlJTLmhhcyhjKSlyZXR1cm4gYS52aXN1YWxFbGVtZW50PWMsbnVsbDtiPV8uRXgoXy5oeCgpLHt2ZVR5cGU6YixlbGVtZW50SW5kZXg6ZCxjbGllbnRZb3VUdWJlRGF0YTplfSk7aWYoIWIpcmV0dXJuIG51bGw7YS52aXN1YWxFbGVtZW50PWI7UlMuYWRkKGIpO3JldHVybiBifTsKU1M9ZnVuY3Rpb24oYSxiLGM9bnVsbCxkPV8uTk4sZT1udWxsLGYsaCl7dmFyIGs9KCk9PntpZihiKXtjIGluc3RhbmNlb2YgRnVuY3Rpb24mJihjPWMoKSk7dmFyIGw9RmthKHtlbGVtZW50OmIsdmVUeXBlOmEsTEE6YyxjbGllbnRZb3VUdWJlRGF0YTpmfSk7bCYmKF8uSngoYix7ZGF0YTplLG9ic2VydmVyOl8ueSgpLnJlc29sdmUoXy5MeCksTmM6Xy5uRixlYjpfLm1GLGxheWVyOmIubGF5ZXJ9KSxkKGwpKX19O2g/aygpOl8uT0UoKCk9PntrKCl9KX07R2thPWZ1bmN0aW9uKGEpe1NTKDExMjM5NCxhLCgpPT5UUyxiPT57VFM9Yn0pfTsKVVM9ZnVuY3Rpb24oYSl7dmFyIGI9VFMsYz1fLmlxKDApO2lmKGMmJmIpe3ZhciBkPU1hdGgucm91bmQoYS52YSoxRTMpO2E9TWF0aC5yb3VuZChhLkNhKjFFMyk7ZD4yKiozMS0xfHxhPjIqKjMxLTF8fF8uVmkoXy5leCkodm9pZCAwLGMsYiwiSU5URVJBQ1RJT05fTE9HR0lOR19HRVNUVVJFX1RZUEVfR0VORVJJQ19DTElDSyIse3NlZWtEYXRhOntzdGFydE1lZGlhVGltZU1zOlN0cmluZyhkKSxlbmRNZWRpYVRpbWVNczpTdHJpbmcoYSksc2Vla1NvdXJjZToiU0VFS19TT1VSQ0VfU0xJREVfT05fU0NSVUJCRVJfQkFSIn19LHZvaWQgMCl9fTtXUz1mdW5jdGlvbihhLGIsYyl7U1MoYixhLCgpPT5WU1tiXSxkPT57VlNbYl09ZDtfLkpPKGQpfSx2b2lkIDAsdm9pZCAwLGMpfTtYUz1mdW5jdGlvbihhKXsoYT1WU1thXSkmJl8ud0ooXy5oeCgpLGEpfTtIa2E9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5WdygwKSxjPV8uaXEoMCk7YyYmYiYmYSYmXy5WaShfLmJ4KSh2b2lkIDAsYyxiLGEpfTsKWVM9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5pcSgwKTtiJiZhJiZfLnlKKGIsYSl9O1pTPWZ1bmN0aW9uKGEpe3ZhciBiPV8uaXEoMCk7YiYmYSYmXy5WaShfLkFPKSh2b2lkIDAsYixhLHZvaWQgMCx2b2lkIDAsdm9pZCAwKX07JFM9ZnVuY3Rpb24oYSxiKXtpZighYS5iYT8uWmh8fCFhLkgpcmV0dXJuITE7YT1hLkguZ2V0UGxheWVyU3RhdGVPYmplY3QoKTtyZXR1cm4gYS5pc0Vycm9yfHxiJiYhTVIoYik/ITE6YS5pc0N1ZWR8fGEuaXNEb21QYXVzZWR9O2NUPWZ1bmN0aW9uKGEsYil7YVQmJiFiPy5JY3x8YS5wbGF5ZXJTdGF0ZT09PTJ8fGEucGxheWVyU3RhdGU9PT0tMXx8dVMoYSl8fGEucGxheWVyU3RhdGU9PT01fHwoYj8uSWMmJmJUKCksYVQ9c2V0VGltZW91dCgoKT0+e2EuUyh7ZWE6ITF9KX0sYS5iYT8uTWw/PzJFMykpfTtiVD1mdW5jdGlvbigpe2FUJiYoY2xlYXJUaW1lb3V0KGFUKSxhVD12b2lkIDApfTtJa2E9ZnVuY3Rpb24oYSl7YVQ9YX07CmRUPWZ1bmN0aW9uKGEpe3JldHVybntpc0xpdmU6ITEsaXNMaXZlRHZyRW5hYmxlZDohMCxpc1BsYXlsaXN0OiExLHBsYXllclR5cGU6MSx5cTohMSx2aWRlb0lkOnZvaWQgMCxjYXB0aW9uc0VuYWJsZWQ6ITEseGM6ITEsdm9sdW1lOjAscmM6ITAsSmY6MCxSeDohMSxzYjohMSxXZDohMSxOYTohMSxpc0Z1bGxzY3JlZW46ITEsS2I6MCx5aDowLEpkOjAseGY6ITEsYXV0b25hdkVuYWJsZWQ6ITEsemY6ITEseWY6MCxZaDohMSxpc0RyYWdnaW5nOiExLENhOjAsUWM6ITEsZGo6MCxRbTowLHBsYXllclN0YXRlOmE/LmdldFBsYXllclN0YXRlKCk/Py0xLHZpZGVvRHVyYXRpb246MCx2YTowLE9uOiExLGplOnZvaWQgMCxwbGF5YmFja1JhdGU6MSxlYTohMSx5YjohMSxnZTohMSxMZjoib2ZmIixacjowLExwOjAsWXY6MH19O0prYT1mdW5jdGlvbihhKXthVCYmYlQoKTtJa2Eoc2V0VGltZW91dCgoKT0+e2EuUyh7ZWE6ITEseWI6ITF9KX0sMkUzKSl9OwpLa2E9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCksYz1iLkg/LmdldFBsYXllclN0YXRlKCk7IWN8fGM9PT1iLnBsYXllclN0YXRlfHxjIT09MSYmYyE9PTJ8fChjJiYoYz09PTI/Yi5lYT8oYi5TKHt5YjohMX0pLGJUKCkpOmIuUyh7ZWE6ITAseWI6ITF9KTpjPT09MSYmYi5lYSYmIWIuaXNEcmFnZ2luZyYmKGIueWI/SmthKGIpOmIuUyh7ZWE6ITEseWI6ITF9KSkpLGIuUyh7cGxheWVyU3RhdGU6Y30pKX19O0xrYT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e3ZhciBjPWEoKSxkPWMuSCxlPWQ/LmdldFZpZGVvRGF0YSgpLnZpZGVvX2lkO2UhPT1jLnZpZGVvSWQmJmI/LnR5cGU9PT0ibmV3ZGF0YSImJihiPWQ/LmdldER1cmF0aW9uKGI/LnBsYXllcnR5cGUpLGJUKCksYy5TKHt2aWRlb0R1cmF0aW9uOmIsdmE6MCx2aWRlb0lkOmUsZWE6ITEseWI6ITF9KSl9fTsKTWthPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57dmFyIGM9YSgpLGQ9Yy5IO2lmKGQpe3ZhciBlPWQuZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKTtfLngoIndlYl9zaG9ydHNfdXNlX3Byb2dyZXNzX3N0YXRlX2Zvcl9nYXBsZXNzIik/KGQ9ZC5nZXRQcm9ncmVzc1N0YXRlKGUpLGQ9ZC5zZWVrYWJsZUVuZC1kLnNlZWthYmxlU3RhcnQpOmQ9ZC5nZXREdXJhdGlvbihlKTtjLlMoe3ZhOmIsdmlkZW9EdXJhdGlvbjpkfSl9fX07Z1Q9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm5bXTthPWEubWFya2Vyc01hcD8uZmluZChjPT5bIkRFU0NSSVBUSU9OX0NIQVBURVJTIiwiQVVUT19DSEFQVEVSUyJdLmluY2x1ZGVzKGMua2V5KSk/LnZhbHVlPy5jaGFwdGVyc3x8W107KGEubGVuZ3RoPT09MD8wOl8uQihhWzBdLGVUKT8udGltZVJhbmdlU3RhcnRNaWxsaXMhPT0wKSYmIWI/Lm54JiYoYT1bZlQoKSwuLi5hXSk7cmV0dXJuIGF9O2ZUPWZ1bmN0aW9uKCl7cmV0dXJue2NoYXB0ZXJSZW5kZXJlcjp7dGltZVJhbmdlU3RhcnRNaWxsaXM6MH19fTsKaFQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/YS50aW1lUmFuZ2VTdGFydE1pbGxpc3x8MDowfTtrVD1mdW5jdGlvbihhLGIpe3JldHVybiBnVChiKS5maW5kKChjLGQsZSk9PmlUKGpUKGEpLGUsZCkuTGQ9PT0iYWN0aXZlIil9O2xUPWZ1bmN0aW9uKGEsYil7aWYoYS5pc0RyYWdnaW5nJiZiKXJldHVybiBhPU5rYShhLGIpLGE9PT0tMT9mVCgpOmdUKGIpW2FdfTtOa2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5pc0RyYWdnaW5nJiZiP2dUKGIse254OiEwfSkuZmluZEluZGV4KChjLGQsZSk9PmlUKGpUKGEpLGUsZCkuQmcpOi0xfTttVD1mdW5jdGlvbihhKXthPV8uQihhLGVUKTthPy5vbkFjdGl2ZUNvbW1hbmQmJl8uYUUoYS5vbkFjdGl2ZUNvbW1hbmQpfTtqVD1mdW5jdGlvbihhKXtyZXR1cm57Li4uYSx2aWRlb0R1cmF0aW9uOmEudmlkZW9EdXJhdGlvbioxRTMsdmE6YS52YSoxRTMsQ2E6YS5DYSoxRTN9fTsKaVQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWhUKF8uQihiW2NdLGVUKSk7Yj1oVChfLkIoYltjKzFdLGVUKSl8fGEudmlkZW9EdXJhdGlvbjtjPWEuaXNEcmFnZ2luZzt2YXIgZTtpZihlPWEuaXNEcmFnZ2luZyllPWEuQ2EsZT1lIT09bnVsbCYmZT49ZCYmZTxiO3ZhciBmPWEudmE7cmV0dXJuIGYhPT1udWxsJiZmPj1kJiZmPGI/e0xkOiJhY3RpdmUiLGJtOmMsQmc6ZX06YS52YTxkP3tMZDoicGVuZGluZyIsYm06YyxCZzplfTp7TGQ6InNlZW4iLGJtOmMsQmc6ZX19O25UPWZ1bmN0aW9uKGEsYixjKXtpZihpVChhLGIsYykuTGQhPT0iYWN0aXZlIilyZXR1cm4gMDt2YXIgZD1oVChfLkIoYltjXSxlVCkpO3JldHVybihhLnZhLWQpLygoaFQoXy5CKGJbYysxXSxlVCkpfHxhLnZpZGVvRHVyYXRpb24pLWQpfTtvVD1mdW5jdGlvbihhLGI9MCl7cmV0dXJuIGEuTGQ9PT0ic2VlbiJ8fGI+MH07CnBUPWZ1bmN0aW9uKGEsYixjKXtiPWEvYi5acjtjPWdUKGMpO2lmKCFjLmxlbmd0aClyZXR1cm4tYio3Mjt2YXIgZD0wO2ZvcihsZXQgZSBvZiBjKWlmKGhUKF8uQihlLGVUKSkvMUUzPGEpZCsrO2Vsc2UgYnJlYWs7cmV0dXJuLShiKjcyKS1kKjU2fTtPa2E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57dmFyIGU9YigpLGY9YygpO2EuQigpO2Quc3RvcFByb3BhZ2F0aW9uKCk7ZD1xVChhLGUsZC5jbGllbnRYKSplLnZpZGVvRHVyYXRpb247ZS5TKHt2YTpkfSk7ZS5wbGF5ZXJTdGF0ZT09PTJ8fGYuRm4/LigpO2EuRC52KGQsZSw3KX19O3JUPWZ1bmN0aW9uKGEpe2E9YS50b3VjaGVzWzBdO3JldHVybnt4OmEuY2xpZW50WCx5OmEuY2xpZW50WX19O1BrYT1mdW5jdGlvbihhLGIpe3JldHVybiBjPT57dmFyIGQ9clQoYyksZT1iKCk7YS5zdGFydFBvc2l0aW9ufHwoYS5zdGFydFBvc2l0aW9uPWQsYS5CKCksYS5qPWUuZWEsYy5zdG9wUHJvcGFnYXRpb24oKSl9fTsKUWthPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGM9Pnt2YXIgZD17eDpjLmNsaWVudFgseTpjLmNsaWVudFl9LGU9YigpO2Euc3RhcnRQb3NpdGlvbnx8KGEuc3RhcnRQb3NpdGlvbj1kLGEuQigpLGEuaj1lLmVhLGMuc3RvcFByb3BhZ2F0aW9uKCkpfX07CnRUPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXthLnN0YXJ0UG9zaXRpb24mJihmJiZlLmlqJiZhLnN0YXJ0UG9zaXRpb24mJiFhLm8mJk1hdGguYWJzKGMueS1hLnN0YXJ0UG9zaXRpb24ueSk+TWF0aC5hYnMoYy54LWEuc3RhcnRQb3NpdGlvbi54KT9zVChhLGQsZSk6KGIucHJldmVudERlZmF1bHQoKSxiLnN0b3BQcm9wYWdhdGlvbigpLGQudmlkZW9EdXJhdGlvbiYmKGEuc3RhcnRQb3NpdGlvbiYmIWEubyYmKGEubz1NYXRoLmFicyhjLngtYS5zdGFydFBvc2l0aW9uLngpPj0xKSxlLktmJiYoYS5zdGFydFBvc2l0aW9uJiYoYS52PS0oYy55LWEuc3RhcnRQb3NpdGlvbi55KT49NjApLCFhLnN0YXJ0UG9zaXRpb258fGMueT49YS5zdGFydFBvc2l0aW9uLnl8fChkLlMoe0xmOiJkcmFnZ2luZyIsTHA6cFQoZC5DYSxkLGUuUmEpfSksYS5VKGQuQ2EpLGEuWihhLnN0YXJ0UG9zaXRpb24ueSxjLnksZCkpKSxhLm8mJihiPXFUKGEsZCxjLngpLGEudiYmKGQuSD8ucGF1c2VWaWRlbygpLGQuUyh7TGY6Im9uIiwKWXY6ZC5DYSxMcDpwVChiKmQudmlkZW9EdXJhdGlvbixkLGUuUmEpfSkpLGUuS2YmJighZS5LZnx8YS5LKGQpPDY4KXx8KGQuaXNEcmFnZ2luZ3x8ZC50YS5rej8uKCksZC5TKHtDYTpiKmQudmlkZW9EdXJhdGlvbixlYTohMCxpc0RyYWdnaW5nOiEwLHliOmEuan0pKSxlLllvPy4oKSkpKSl9O1JrYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9Pnt2YXIgZT1iKCksZj1jKCk7dFQoYSxkLHJUKGQpLGUsZiwhMCk7aWYoZi5vblRvdWNoTW92ZSlmLm9uVG91Y2hNb3ZlKGUpfX07dlQ9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYi5idXR0b25zIT09MSl7aWYoYi5tb3ZlbWVudFh8fGIubW92ZW1lbnRZKWIucHJldmVudERlZmF1bHQoKSxiLnN0b3BQcm9wYWdhdGlvbigpLGE9cVQoYSxjLGIuY2xpZW50WCksYy5RY3x8Yy50YS5rej8uKCksYy5TKHtRYzohMCxkajphKmMudmlkZW9EdXJhdGlvbn0pfWVsc2UgdVQoYyksdFQoYSxiLHt4OmIuY2xpZW50WCx5OmIuY2xpZW50WX0sYyxkLCExKX07ClNrYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9Pnt2VChhLGQsYigpLGMoKSl9fTtUa2E9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCk7dVQoYil9fTtzVD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1jLktmJiZiLkxmIT09Im9mZiI7Yi5pc0RyYWdnaW5nfHxlPyhkPXtpc0RyYWdnaW5nOiExLHZhOmIuQ2EsZWE6YS5qfSxjLktmJiZiLkxmIT09Im9uIiYmKGEuTSgpLGQuTGY9Im9mZiIpLFVTKGIpLGIuUyhkKSxhLkQudihiLkNhLGIsNyksYy5JbiYmYi5yYyYmYi5IPy51bk11dGUoKSx3VChhKSk6KF8ueCgibWF3cGNfdG91Y2hfZW5kX2hhbmRsZXJfYnVnX2ZpeF9raWxsc3dpdGNoIik/Yi5TKHtlYTohYi5lYX0pOmIuUyh7ZWE6ITB9KSxjLkZuPy4oKSx3VChhKSxfLngoIm1hd3BjX3RvdWNoX2VuZF9oYW5kbGVyX2J1Z19maXhfa2lsbHN3aXRjaCIpfHxkPy5zdG9wUHJvcGFnYXRpb24oKSl9OwpVa2E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57dmFyIGU9YigpLGY9YygpO3NUKGEsZSxmLGQpO2lmKGYub25Ub3VjaEVuZClmLm9uVG91Y2hFbmQoZSl9fTtWa2E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57dmFyIGU9YigpLGY9YygpO3NUKGEsZSxmLGQpO2lmKGYub25Ub3VjaEVuZClmLm9uVG91Y2hFbmQoZSl9fTtXa2E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57c1QoYSxiKCksYygpLGQpfX07WGthPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57Yi5rZXlDb2RlPT09Mzl8fGIua2V5Q29kZT09PTM4P2EoKT8uSD8uc2Vla0J5KDUsdm9pZCAwLHZvaWQgMCw3Mik6KGIua2V5Q29kZT09PTM3fHxiLmtleUNvZGU9PT00MCkmJmEoKT8uSD8uc2Vla0J5KC01LHZvaWQgMCx2b2lkIDAsNzEpfX07WWthPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZD0+eyFjKCkuZGlzYWJsZVNjcnViYmluZyYmYS5zdGFydFBvc2l0aW9uJiZ2VChhLGQsYigpLGMoKSl9fTsKeFQ9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57aWYoIWMoKS5kaXNhYmxlU2NydWJiaW5nKWlmKGEuc3RhcnRQb3NpdGlvbil7dmFyIGU9YigpLGY9YygpO3NUKGEsYigpLGMoKSxkKTtpZihmLm9uVG91Y2hFbmQpZi5vblRvdWNoRW5kKGUpfWVsc2UgYigpLlMoe2lzRHJhZ2dpbmc6ITF9KX19O3VUPWZ1bmN0aW9uKGEpe2EuUWMmJmEuUyh7UWM6ITEsZGo6MH0pfTtxVD1mdW5jdGlvbihhLGIsYyl7YT1hLkkoYik7cmV0dXJuIERRKDAsKGMtYS5sZWZ0KS9hLndpZHRoLDEpfTt3VD1mdW5jdGlvbihhKXthLnN0YXJ0UG9zaXRpb249bnVsbDthLm89ITE7YS52PSExO2Euaj0hMX07eVQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/YS53aWR0aC9hLmNvbHVtbnM6MH07elQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/YS5oZWlnaHQvYS5yb3dzOjB9O0FUPWZ1bmN0aW9uKGEpe3JldHVybiBhLlFjP2EuZGo6YS5DYX07CkJUPWZ1bmN0aW9uKGEsYil7YT1hLkNhKjFFMztyZXR1cm4gYT49Yi52aXNpYmxlVGltZVJhbmdlU3RhcnRNaWxsaXMmJmE8PWIudmlzaWJsZVRpbWVSYW5nZUVuZE1pbGxpc307Q1Q9ZnVuY3Rpb24oYSl7aWYoYT09PXZvaWQgMHx8TnVtYmVyLmlzTmFOKGEpKXJldHVybiItLTotLSI7dmFyIGI9TWF0aC5hYnMoTWF0aC5mbG9vcihhKSksYz1NYXRoLmZsb29yKGIvODY0MDApLGQ9TWF0aC5mbG9vcihiJTg2NDAwLzM2MDApLGU9TWF0aC5mbG9vcihiJTM2MDAvNjApO2I9TWF0aC5mbG9vcihiJTYwKTt2YXIgZj0iIjtjPjAmJihmKz1gJHtjfTpgLGQ8MTAmJihmKz0iMCIpKTtpZihjPjB8fGQ+MClmKz1gJHtkfTpgLGU8MTAmJihmKz0iMCIpO2YrPWAke2V9OmA7YjwxMCYmKGYrPSIwIik7Zis9YjtyZXR1cm4gYT49MD9mOmAtJHtmfWB9OwpEVD1mdW5jdGlvbihhLGIpe3JldHVybigpPT57dmFyIGM9QVQoYSgpKTt2YXIgZD1iKCk7dmFyIGU9YSgpLkg7aWYoZSYmZS5nZXROdW1iZXJPZlN0b3J5Ym9hcmRMZXZlbHMoKSE9PTApe3ZhciBmPWUuZ2V0U3Rvcnlib2FyZEZyYW1lSW5kZXgoYywxKTtmIT09LTE/ZD1lLmdldFN0b3J5Ym9hcmRGcmFtZShmLDEpOihjPWUuZ2V0U3Rvcnlib2FyZEZyYW1lSW5kZXgoYywwKSxlPWUuZ2V0U3Rvcnlib2FyZEZyYW1lKGMsMCksZCYmZSYmKGUuaGVpZ2h0Kj0zLGUud2lkdGgqPTMpLGQ9ZSl9ZWxzZSBkPW51bGw7aWYoIWQpcmV0dXJuIG51bGw7YigpJiYoZC53aWR0aD05MCpkLmNvbHVtbnMsZC5oZWlnaHQ9MTYwKmQucm93cyk7cmV0dXJuIGR9fTsKJGthPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiBhLk5hfHxhLmlzTGl2ZT9kOmI+MT9FVChkKTpzZXRUaW1lb3V0KCgpPT57YygpO25hdmlnYXRvcj8udmlicmF0ZSYmbmF2aWdhdG9yLnZpYnJhdGUoWmthKX0sXy5zaigic3BlZWRtYXN0ZXJfdG91Y2hfYWN0aXZhdGlvbl9tcyIsNTAwKSl9O0VUPWZ1bmN0aW9uKGEpe2EhPT12b2lkIDAmJmNsZWFyVGltZW91dChhKX07CkhUPWZ1bmN0aW9uKGEsYil7YS5OYXx8YS5pc0xpdmV8fChiPjEmJkZUKGEpLGRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCgicHJldmVudC1oaWdobGlnaHRzIiksR1Q9c2V0VGltZW91dCgoKT0+e2EuSD8ucGxheVZpZGVvKCk7YlQoKTthLlMoe3NiOiEwLGVhOiEwfSk7dmFyIGM9Xy5zaigic3BlZWRtYXN0ZXJfcGxheWJhY2tfcmF0ZSIsMiksZD1hLkg7ZD8uc2V0UGxheWJhY2tSYXRlPy4oYyk7Xy54KCJtd2ViX2xvbmdfcHJlc3Nfc3BlZWR1cF92aWJyYXRpb24iKSYmZD8uZ2V0UGxheWJhY2tSYXRlKCk9PT1jJiZuYXZpZ2F0b3I/LnZpYnJhdGUmJm5hdmlnYXRvci52aWJyYXRlKGFsYSl9LF8uc2ooInNwZWVkbWFzdGVyX3RvdWNoX2FjdGl2YXRpb25fbXMiLDUwMCkpKX07CklUPWZ1bmN0aW9uKGEsYixjKXtjLnNiJiZhLnByZXZlbnREZWZhdWx0KCk7YT1iLmxrO2I9Yi5PZDtNYXRoLnNxcnQoYSphK2IqYik+Xy5zaigic3BlZWRtYXN0ZXJfY2FuY2VsbGF0aW9uX21vdmVtZW50X2RwIiwxMCkmJiFjLnNiJiZGVChjKX07RlQ9ZnVuY3Rpb24oYSl7ZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCJwcmV2ZW50LWhpZ2hsaWdodHMiKTtHVCYmY2xlYXJUaW1lb3V0KEdUKTthLnNiJiYoYS5TKHtzYjohMSxlYTp1UyhhKX0pLGE9YS5ILHR5cGVvZiBhPy5zZXRQbGF5YmFja1JhdGU9PT0iZnVuY3Rpb24iP2Euc2V0UGxheWJhY2tSYXRlKDEpOl8uV2koRXJyb3IoIiRkIikpKX07CmNsYT1mdW5jdGlvbihhLGIsYyl7aWYoYiYmYSl7dmFyIGQ9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihiPWJsYShiLGQud2lkdGgsZC5oZWlnaHQpKWM/LlpBJiYoYz1uZXcgSW1hZ2UsYy5vbmxvYWQ9KCk9PntpamEoKX0sYy5zcmM9YixfLkl6KCJmdHIiKSksYS5zdHlsZS5iYWNrZ3JvdW5kSW1hZ2U9YHVybCgke2J9KWB9fTtibGE9ZnVuY3Rpb24oYSxiLGMpe2lmKChhPWEudGh1bWJuYWlscykmJmEubGVuZ3RoIT09MCl7dmFyIGQ9d2luZG93LmRldmljZVBpeGVsUmF0aW8+MT93aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbzoxO2IqPWQ7Yyo9ZDtpZihiPjY0MHx8Yz40ODApcmV0dXJuIGEuYXQoLTEpLnVybDtpZihiPjMyMHx8Yz4xODApe3ZhciBlO2Q9Yj1jPXZvaWQgMDtmb3IoZSBvZiBhKSFkJiZlLndpZHRoPj0zMjA/ZD1lLnVybDohYiYmZS53aWR0aD49NDgwP2I9ZS51cmw6IWMmJmUud2lkdGg+PTY0MCYmKGM9ZS51cmwpO2lmKGU9Y3x8Ynx8ZClyZXR1cm4gZX1yZXR1cm4gYVswXS51cmx9fTsKSlQ9ZnVuY3Rpb24oYSl7KGE9YT8uaGVhZGVyPy5wbGF5bGlzdEhlYWRlclJlbmRlcmVyKT8oYT1fLkIoYS5jaW5lbWF0aWNDb250YWluZXIsZGxhKT8uYmFja2dyb3VuZEltYWdlQ29uZmlnPy50aHVtYm5haWw/LnRodW1ibmFpbHMsYT1hPy5sZW5ndGg/YVthLmxlbmd0aC0xXS51cmw6dm9pZCAwLGE9IWEpOmE9ITE7cmV0dXJuIGF9O0tUPWZ1bmN0aW9uKGEpe2E9YXx8Xy5YRD8ucmVzcG9uc2U/LnJlc3BvbnNlO3JldHVybiBhPy5oZWFkZXI/LnBhZ2VIZWFkZXJSZW5kZXJlcn07T1Q9ZnVuY3Rpb24oKXt2YXIgYT1fLlhEPy5yZXNwb25zZT8ucmVzcG9uc2U7cmV0dXJuISFLVCgpPy50aXRsZUFuaW1hdGlvbnx8SlQoYSl9OwpQVD1mdW5jdGlvbigpe3ZhciBhPV8uWEQ/LnJlc3BvbnNlPy5yZXNwb25zZSxiPUtUKGEpO2lmKGIpYT1iLnRvcEJhckFuaW1hdGlvbj8hMDohMTtlbHNle2lmKGI9WFEoKSYmIV8uVk0oKSliPV8uWmIod2luZG93LmxvY2F0aW9uLmhyZWYsImxpc3QiKSxiPSEoYj8uc3RhcnRzV2l0aCgiRUwiKXx8Yj8uc3RhcnRzV2l0aCgiU0MiKSk7YT1iJiYhSlQoYSl9cmV0dXJuIGF9OwplbGE9ZnVuY3Rpb24oKXtpZihfLncoIk1XRUJfU1RJQ0tZX1BMQVlFUiIsITEpJiZRVCgpJiZ3aW5kb3cubG9jYXRpb24uaGFzaCE9PSIjc2VhcmNoaW5nIiYmXy5VTSgpIT09InNlYXJjaCIpe3ZhciBhPXdpbmRvdy5zY3JvbGxZLGI7KGI9Xy5WTSgpKXx8KGI9Xy5VTSgpPT09ImNsaXAiKTtpZihiKSFfLlRFKCkmJiFIUSgpfHwoXy5GZWEub2Zmc2V0SGVpZ2h0PndpbmRvdy5pbm5lckhlaWdodCouNj9fLlR0KF8uRUosInN0aWNreS1wbGF5ZXIiKTpfLlN0KF8uRUosInN0aWNreS1wbGF5ZXIiKSksUlQoImluIiksU1Q9YTtlbHNle2I9U1Q+YTt2YXIgYz1hPj00OCxkPWE8MTI2O1NUPWE7Yj8oYz9SVCgiZmlsbGVkIik6UlQoImluIiksSVEoKSYmZD9UVCgiZmlsdGVyLWNoaXAtYmFyLXN0YXRpYyIpOlRUKCJmaWx0ZXItY2hpcC1iYXItaW4iKSk6Yz9QVCgpfHxPVCgpP1JUKCJmaWxsZWQiKTooUlQoIm91dCIpLElRKCkmJmQ/VFQoImZpbHRlci1jaGlwLWJhci1zdGF0aWMiKTpUVCgiZmlsdGVyLWNoaXAtYmFyLW91dCIpKToKKFJUKCJpbiIpLElRKCk/VFQoImZpbHRlci1jaGlwLWJhci1zdGF0aWMiKTpUVCgiZmlsdGVyLWNoaXAtYmFyLWluIikpfX12YXIgZTtfLlZNKCkmJihlPVFUKCkpIT1udWxsJiYoYT1lLnNldEF0dHJpYnV0ZSxiPV8uTUUoKT8xOjI0LF8uRE4ubGVuZ3RoPjAmJiFfLnhOKCk/KGM9TnVtYmVyKGRvY3VtZW50LmJvZHkuc3R5bGUudG9wLnJlcGxhY2UoLyhweCl8LS9nLCIiKSksYj0haXNOYU4oYykmJmM8Yik6Yj1TVDxiLGEuY2FsbChlLCJhbWJpZW50LXRvcGJhciIsYi50b1N0cmluZygpKSl9O1FUPWZ1bmN0aW9uKCl7cmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJoZWFkZXItYmFyIi50b1N0cmluZygpKX07ClRUPWZ1bmN0aW9uKGEpe3ZhciBiPV8uVU0oKT09PSJob21lInx8SVEoKT9kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsdGVyLWNoaXAtYmFyIi50b1N0cmluZygpKTpudWxsO2ImJihfLlR0KGIsImZpbHRlci1jaGlwLWJhci1zdGF0aWMiKSxfLlR0KGIsImZpbHRlci1jaGlwLWJhci1pbiIpLF8uVHQoYiwiZmlsdGVyLWNoaXAtYmFyLW91dCIpLF8uU3QoYixhKSl9OwpSVD1mdW5jdGlvbihhKXt2YXIgYj1RVCgpO2lmKGIpe2xldCBjPV8uYUwoe1sic3RpY2t5LXBsYXllciJdOl8udygiTVdFQl9TVElDS1lfUExBWUVSIiwhMSksWyJpcy1hdXRvbW90aXZlIl06SFEoKX0pO18uV00oKT9jPV8uYUwoYywidG9wYmFyLXRyYW5zcGFyZW50LWJhY2tncm91bmQiLCJzaG9ydHMtdG9wYmFyIik6UFQoKT9jPV8uYUwoYywidG9wYmFyLXRyYW5zcGFyZW50LWJhY2tncm91bmQiKTpPVCgpJiYoYz1fLmFMKGMsInRvcGJhci10cmFuc3BhcmVudC10aXRsZSIpKTtiLmNsYXNzTmFtZT1fLmFMKGEsYyl9fTtmbGE9ZnVuY3Rpb24oKXtyZXR1cm4gVVR9O2hsYT1mdW5jdGlvbihhLGIpe2ImJihWVD0hMCk7YT1VVD1hO2I9SlIoKTthIT09YiYmKGI9Xy5IeigpLF8uRHooMTQxLCEwKSxfLkR6KDE0MCwhYSksYi5zYXZlKCkpO2dsYSgpfTtnbGE9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KCgpPT57Xy5YTSgicGxheWVyLWF1dG9uYXYtcGF1c2UiLHtwYXVzZWQ6ITF9KX0pfTsKaWxhPWZ1bmN0aW9uKCl7cmV0dXJuIFZUfTtXVD1mdW5jdGlvbihhLGIpe3JldHVybiBfLk1FKCk/YiYmYT8udmlkZW9EdXJhdGlvbj4zMDpiJiYhYS5lYX07WFQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYiYmYS5lYSYmIV8uTUUoKX07amxhPWFzeW5jIGZ1bmN0aW9uKGEsYil7aWYoYj1iPz9hd2FpdCBfLkxIKCkpYi51bk11dGUoITApLGIuc2V0Vm9sdW1lKGEsITApfTtaVD1mdW5jdGlvbihhLGIpe2EmJihhLnZhbHVlPWAke2J9YCxhLnN0eWxlLnNldFByb3BlcnR5KCItLWdyYWRpZW50LXBlcmNlbnQiLGAke2J9JWApKX07a2xhPWZ1bmN0aW9uKGEpe3JldHVybiBfLngoInBsYXllcl9jb250cm9sc191c2VfcGxheWVyX2FwaV9jb250ZXh0Iik/Xy5rRygkVCk6YX07YVU9ZnVuY3Rpb24oYSl7cmV0dXJuYGh0dHBzOi8vbS55b3V0dWJlLmNvbS9zdGF0aWMvbG90dGllLyR7YX0uanNvbmB9OwpiVT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiYW5pbWF0ZWRfbGlrZV9pY29uIjpyZXR1cm57bmFtZToiYW5pbWF0ZWRfbGlrZV9pY29uX3YyX2RhcmsiLHBhdGg6YVUoImFuaW1hdGVkX2xpa2VfaWNvbl92Ml9kYXJrIiksbG9vcDohMSxhdXRvcGxheTohMSxyZW5kZXJlclNldHRpbmdzOnt2aWV3Qm94T25seTohMCxjbGFzc05hbWU6ImFuaW1hdGVkLWxpa2UtaWNvbiJ9fTtjYXNlICJsaWtlXzI0MGRwX2FuaW1hdGlvbl92MiI6Y2FzZSAibGlrZV90YXBfZmVlZGJhY2tfc2hvcnRzX2hlYXJ0IjpjYXNlICJwYXVzZV85NmRwX2FuaW1hdGlvbiI6Y2FzZSAicGxheV85NmRwX2FuaW1hdGlvbiI6Y2FzZSAic2Vla185NmRwX2FuaW1hdGlvbiI6cmV0dXJue25hbWU6YSxwYXRoOmFVKGEpLGxvb3A6ITEsYXV0b3BsYXk6ITF9O2RlZmF1bHQ6cmV0dXJue25hbWU6IiIscGF0aDoiIn19fTsKY1U9ZnVuY3Rpb24oYSl7Xy5MTygpLnRoZW4oYj0+e2Iuc3RvcCgibGlrZV8yNDBkcF9hbmltYXRpb25fdjIiKTtiLnN0b3AoImxpa2VfdGFwX2ZlZWRiYWNrX3Nob3J0c19oZWFydCIpO2Iuc3RvcCgicGxheV85NmRwX2FuaW1hdGlvbiIpO2Iuc3RvcCgicGF1c2VfOTZkcF9hbmltYXRpb24iKTtiLnBsYXkoYSl9KX07CmxsYT1mdW5jdGlvbihhKXt2YXIgYj1fLkh6KCk7SFEoKXx8YS5xdnx8YS5zdXBwcmVzc0FmdGVyQ2xvc2luZyYmTnVtYmVyKGIuZ2V0KCJzdXBwcmVzc19hcHBfdXBzZWxsIikpJiYhXy54KCJtd2ViX2FwcF91cHNlbGxfYnV0dG9uIil8fChkVXx8KGRVPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGRvY3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKGRVLGRvY3VtZW50LmJvZHkuZmlyc3RDaGlsZCkpLF8uSk4oZFUsbnVsbCwhMCksYSE9PWVVJiYoZlU/LigpLGZVPV8ueEYoZFUsKCk9PntfLm9GKCgpPT57Xy5NTygiLll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVySG9zdCAuWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDb250ZW50cyIpfSk7cmV0dXJuIF8uSyhfLklCLG51bGwsXy5LKCJkaXYiLHtjbGFzczoiWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJTY3JpbUNvbnRhaW5lciJ9LF8uSyhfLlpOLHtsYWJlbDpfLiROLkNMT1NFfSkpLF8uSygiZGl2Iix7Y2xhc3M6Ill0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyT3ZlcmxheUNvbnRhaW5lciJ9LApfLksoZ1Use2RhdGE6YX0pKSl9LCJkZCIpKSxlVT1hKX07aFU9ZnVuY3Rpb24oKXtyZXR1cm57c3R5bGU6Im92ZXJsYXktZGFyayIsaWNvblBvc2l0aW9uOiJpY29uLXdpdGgtbGFiZWwiLHNpemU6IkwiLHNpemU6IlMiLHR5cGU6InRleHQiLHN0eWxlOiJvdmVybGF5In19O25sYT1mdW5jdGlvbihhKXt2YXIgYj1fLkIoYS5zaG9wcGluZ1Vwc2VsbCxtbGEpO2ImJlByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntsbGEoYil9KX07b2xhPWZ1bmN0aW9uKGEpe2E/LmxvZ2dpbmdEaXJlY3RpdmVzPy50cmFja2luZ1BhcmFtcyYmXy5seChfLmh4KCksYS5sb2dnaW5nRGlyZWN0aXZlcy50cmFja2luZ1BhcmFtcyl9O2lVPWZ1bmN0aW9uKGEpe3JldHVybiBhfHxfLlZNKCl8fF8uVU0oKT09PSJob21lIn07alU9ZnVuY3Rpb24oYSxiKXtpZihiKXtpZihhJiZiLmRhcmtUaGVtZUxvZ28/Lmljb24/Lmljb25UeXBlKXJldHVybiBiLmRhcmtUaGVtZUxvZ28uaWNvbi5pY29uVHlwZTtpZihiLmxpZ2h0VGhlbWVMb2dvPy5pY29uPy5pY29uVHlwZSlyZXR1cm4gYi5saWdodFRoZW1lTG9nby5pY29uLmljb25UeXBlfX07CmxVPWZ1bmN0aW9uKGEpe3ZhciBiPWEuSDtiJiYoa1U9KGE9a1UpPygoYj1OUShiKSk/Yi5kaXNwbGF5TmFtZXx8IiI6bnVsbCl8fGE6UFEoYikpO3JldHVybiBrVX07bVU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYSgpLnBsYXllclN0YXRlPT09MCYmISFiJiYhYSgpLnhmJiZhKCkuYXV0b25hdkVuYWJsZWR9O25VPWZ1bmN0aW9uKGEsYil7Yj1NUyhiKTtyZXR1cm4gYSgpLnBsYXllclN0YXRlPT09MCYmYi5sZW5ndGg+MH07b1U9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuSD8uaXNSZWFkeT8uKCkmJmEuSD8uaXNBdExpdmVIZWFkKCl9O3BVPWZ1bmN0aW9uKCl7cmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXItY29udHJvbC1vdmVybGF5Iil9O3BsYT1mdW5jdGlvbihhKXthIT09LTEmJl8ueCgicGxheWVyX2NvbnRyb2xzX2xvZ19jcmVhdGlvbl9lbmFibGVkIikmJnBVKCkmJihfLkFxKCJwY3VfY3MiLGEpLF8uQXEoInBjdV9jZSIpKX07CnFVPWZ1bmN0aW9uKGEpe2lmKCFhfHxhLmdldFZpZGVvRGF0YSlyZXR1cm4gYX07cWxhPWZ1bmN0aW9uKGEsYil7Zm9yKGxldCBjIG9mIE9iamVjdC5rZXlzKGEpKWlmKGFbY10hPT1iW2NdKXJldHVybiExO3JldHVybiEwfTtyVT1mdW5jdGlvbigpe3JldHVybiBfLncoIk1XRUJfU1VQUE9SVFNfRE9VQkxFX1RBUF9UT19TRUVLIil9O3JsYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPGIvMz8tMTphPjIqYi8zPzE6MH07c1U9ZnVuY3Rpb24oYSxiLGMpe3JVKCkmJnZTKHsuLi5jLEpkOmIsS2I6YX0pJiYoKGE9Yy5IKSYmYS5zZWVrQnkoTWF0aC5zaWduKGIpKjEwLHZvaWQgMCx2b2lkIDAsNCksYy5wbGF5ZXJTdGF0ZT09PTJ8fGMuSD8ucGF1c2VWaWRlbygpLGI9PT0tMT9YUygyODIzOSk6WFMoMjgyNDApKX07CnVVPWZ1bmN0aW9uKGEsYil7clUoKSYmKGNsZWFyVGltZW91dCh0VSksdFU9c2V0VGltZW91dCgoKT0+e3ZhciBjPXtLYjowLEpkOjAseWg6MH07aWYodlMoYSkpe3ZhciBkPXVTKGEpfHxhLkNhPj1hLnZpZGVvRHVyYXRpb247Yy5lYT1hLnBsYXllclN0YXRlPT09Mnx8YS5wbGF5ZXJTdGF0ZT09PTN8fGQ7Yy52YT1hLkNhO2MueWI9ITE7YS5IPy5pc1JlYWR5Py4oKSYmKGEuSC5zZWVrVG8oYS5DYSksZD17Li4uYSwuLi5jfSwoZC5pc0xpdmV8fGQudmE8ZC52aWRlb0R1cmF0aW9uKSYmZC5PbiYmZC5IPy5nZXRQbGF5ZXJTdGF0ZSgpIT09MSYmZC5IPy5wbGF5VmlkZW8oKSl9ZWxzZSBhLktiPT09MSYmYj8uKCk7YS5TKGMpO2NsZWFyVGltZW91dCh0VSl9LGEuYmE/LnZ2Pz82MDApKX07c2xhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHJVKCkmJmIhPT0wP2EuSmQhPT1iPzE6KDAsXy5lbCkoKS1hLnloPjM1MD9hLktiOmEuS2IrMTowfTsKdWxhPWFzeW5jIGZ1bmN0aW9uKCl7dmFyIGE9YXdhaXQgdlUuamMoKTthJiYoYT1hd2FpdCBhLmdldCgiYXV0by16b29tLWVuYWJsZWQiKSx0bGEodHlwZW9mIGE9PT0iYm9vbGVhbiI/YTohMCkpfTt3VT1mdW5jdGlvbihhKXt2YXIgYj1hLnRvdWNoZXNbMF0sYz1hLnRvdWNoZXNbMV07YT1iLnBhZ2VYLWMucGFnZVg7Yj1iLnBhZ2VZLWMucGFnZVk7cmV0dXJuIE1hdGguc3FydChhKmErYipiKX07CklVPWZ1bmN0aW9uKGEsYil7eFUoYSkmJihhLnN0b3BQcm9wYWdhdGlvbigpLGE9eVUtelUsQVV8fChhPTApLEZUKGIpLF8ueCgid2ViX2VuYWJsZV9zbWFydF96b29tIikmJihCVT0wLENVKCkmJkRVKCExKSksYi5iYT8uTWl8fChiLk5hfHxiLldkfHxiLnNifHxfLlRFKCl8fF8uTUUoKSYmIWIuaXNGdWxsc2NyZWVufHwoYi5pc0Z1bGxzY3JlZW4mJihhKj0tMSksKGE8LTEwMHx8TWF0aC5hYnMoYSk+MTAwJiZiLmlzRnVsbHNjcmVlbikmJmIudGEudG9nZ2xlRnVsbHNjcmVlbih7ZHM6ITB9KSxFVSYmT2JqZWN0LmFzc2lnbihFVS5zdHlsZSx7dHJhbnNmb3JtOiJzY2FsZSgxKSIsdHJhbnNpdGlvbjoiMC4ycyBlYXNlIn0pKSxiLldkJiYoKGE9TWF0aC5hYnMoYi5KZik+NTA/IWIuTmE6Yi5OYSl8fGNUKGIpLGIuUyh7V2Q6ITEsTmE6YSxKZjowfSkpKSxGVT0oMCxfLmVsKSgpLHlVPUdVPXpVPUhVPTAsQVU9ITEpfTsKeFU9ZnVuY3Rpb24oYSl7dmFyIGI9W2EudGFyZ2V0Py5nZXRBdHRyaWJ1dGUoImlkIiksLi4uKGEudGFyZ2V0Py5jbGFzc0xpc3R8fFtdKV07cmV0dXJuISEicGxheWVyLWNvbnRyb2wtb3ZlcmxheSBwbGF5ZXItY29udHJvbHMtbWlkZGxlIHBsYXllci1jb250cm9scy1ib3R0b20gZnVsbHNjcmVlbi1jb250cm9scyBwbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZCB0b3AtZnVsbC1zY3JlZW4tY29udHJvbHMiLnNwbGl0KCIgIikuZmluZChjPT5iLmZpbmQoZD0+ZD09PWMpKX07CktVPWZ1bmN0aW9uKGEsYil7aWYoYi5OYSlKVShhKSYmYi5TKHtOYTohMX0pO2Vsc2UgaWYoYi5wbGF5ZXJTdGF0ZSE9PS0xJiZiLnBsYXllclN0YXRlIT09NSlpZihKVShhKSl7dmFyIGM9V1EoYi5IKTtiLlMoe2VhOiEwLHliOiEwLGplOmN9KX1lbHNle3ZhciBkPXJsYShhLmNsaWVudFgsYi5UYy5vZmZzZXRXaWR0aCk7Yz1zbGEoYixkKTt2YXIgZT1jPmIuS2I7bGV0IGY9Yi5DYTtlJiYoZj1jPDI/Yi52YTpEUShiLkNhKyhkPT09LTE/LTE6MSkqMTAsMCxiLnZpZGVvRHVyYXRpb24pLHNVKGMsZCxiKSk7IWIuZWEmJmM8PTE/Y1QoYix7SWM6ITB9KTpiVCgpO2E9Yi5iYT8uenYmJmIuZWEmJiFKVShhKTtkPXtlYTp2bGEoey4uLmIsS2I6Y30pfHxhLFloOiExLEpkOmQsQ2E6ZixLYjpjLHliOiEwLHloOigwLF8uZWwpKCl9O2U/dVUoey4uLmIsS2I6YyxDYTpmfSxhPygpPT57aWYoYi5IPy5pc1JlYWR5Py4oKSl7bGV0IGg9V1EoYi5IKTtiLlMoe2plOmh9KX19OnZvaWQgMCk6YSYmYi5IJiYKKGU9V1EoYi5IKSxiLlMoe2plOmV9KSk7Yz09PTEmJihkLk9uPWIucGxheWVyU3RhdGU9PT0xfHxiLnBsYXllclN0YXRlPT09Myk7Yi5TKGQpfX07SlU9ZnVuY3Rpb24oYSl7cmV0dXJuIV8ueCgibXdlYl9pb3NfZGV0ZWN0X2Zha2VfY2xpY2tfa2lsbHN3aXRjaCIpJiZfLkdLJiZGVT4wJiYoMCxfLmVsKSgpLUZVPDEwMD8hMTp0eXBlb2YgUG9pbnRlckV2ZW50IT09InVuZGVmaW5lZCImJmEgaW5zdGFuY2VvZiBQb2ludGVyRXZlbnQmJmEucG9pbnRlclR5cGU9PT0ibW91c2UifTt2bGE9ZnVuY3Rpb24oYSl7cmV0dXJuIHVTKGEpfHxhLnBsYXllclN0YXRlPT09M3x8YS5LYj4xPyEwOiFhLmVhfTt3bGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCksYz17dm9sdW1lOmIuSD8uZ2V0Vm9sdW1lKCk/PzAscmM6ISFiLkg/LmlzTXV0ZWQoKX07Yi5TKGMpfX07CnhsYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e3ZhciBiPWEoKSxjPWIuSDtpZihjKXt2YXIgZD17eGM6ISFjLmdldE9wdGlvbnMoImNhcHRpb25zIil9O2QueGMmJihkLmNhcHRpb25zRW5hYmxlZD1PUShjKSk7Yi5TKGQpfX19Owp6bGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pnt2YXIgYz1hKCksZD1jLkg7aWYoZCYmIWQuaXNLZXlib2FyZERpc2FibGVkPy4oKSYmIXlsYShiLnRhcmdldCxiKSl7c3dpdGNoKGIuY29kZSl7Y2FzZSAiU3BhY2UiOmNhc2UgIktleUsiOmQ9V1EoZCk7Yy5TKHtlYTohMCxqZTpkfSk7YnJlYWs7Y2FzZSAiQXJyb3dMZWZ0IjpjYXNlICJLZXlKIjpMVShjLC0xKTticmVhaztjYXNlICJBcnJvd1JpZ2h0IjpjYXNlICJLZXlMIjpMVShjLDEpO2JyZWFrO2Nhc2UgIktleU0iOmMucmM/ZC51bk11dGUoKTpkLm11dGUoKTtjLlMoe2VhOiEwfSk7YnJlYWs7Y2FzZSAiS2V5RiI6UlEoKTtkLnRvZ2dsZUZ1bGxzY3JlZW4oKTtjLlMoe2VhOiEwfSk7Yi5zdG9wUHJvcGFnYXRpb24oKTticmVhaztjYXNlICJLZXlDIjpjLnhjJiZRUShkLGxVKGMpKTtjLlMoe2VhOiEwfSk7YnJlYWs7ZGVmYXVsdDpyZXR1cm59Yi5wcmV2ZW50RGVmYXVsdCgpO2Iuc3RvcFByb3BhZ2F0aW9uKCl9fX07CkxVPWZ1bmN0aW9uKGEsYil7aWYoXy54KCJtd2ViX2tleWJvYXJkX3NlZWtfb3ZlcmxheV9raWxsc3dpdGNoIikpYS5IPy5zZWVrQnkoMTAqKGI9PT0tMT8tMToxKSksYS5TKHtlYTohMH0pO2Vsc2V7dmFyIGM9YS5LYixkPWEuSmQsZT0oMCxfLmVsKSgpLGY9ZS1hLnloO2M9ZCE9PWJ8fGY+MzUwPzI6YysxO2Q9Yj09PS0xPy0xOjE7ZD1jPT09Mj8oYS52YXx8MCkrZCoxMDphLkNhK2QqMTA7ZD1EUShkLDAsYS52aWRlb0R1cmF0aW9uKTtlPXtlYTohMCxZaDohMSxKZDpiLENhOmQsS2I6Yyx5YjohMCx5aDplfTtjPT09MiYmKGUuT249YS5wbGF5ZXJTdGF0ZT09PTF8fGEucGxheWVyU3RhdGU9PT0zKTtzVShjLGIsey4uLmEsLi4uZX0pO3VVKHsuLi5hLC4uLmV9KTthLlMoZSl9fTsKeWxhPWZ1bmN0aW9uKGEsYil7aWYoYi5jdHJsS2V5fHxiLmFsdEtleXx8Yi5tZXRhS2V5KXJldHVybiEwO3ZhciBjPWEudGFnTmFtZTtyZXR1cm4gYz09PSJJTlBVVCJ8fGM9PT0iVEVYVEFSRUEifHxjPT09IlNFTEVDVCJ8fGIua2V5PT09IlRhYiJ8fGIuY29kZT09PSJTcGFjZSImJihjPT09IkJVVFRPTiJ8fGM9PT0iQSJ8fChhPWEuZ2V0QXR0cmlidXRlKCJyb2xlIikpJiYoYT09PSJidXR0b24ifHxhPT09Im9wdGlvbiJ8fGEuc3RhcnRzV2l0aCgibWVudWl0ZW0iKSkpPyEwOiExfTsKT1U9ZnVuY3Rpb24oYSxiKXt2YXIgYz17Li4uYSgpLHBsYXllclN0YXRlOjB9LGQ9QVMoYigpPy53YXRjaE5leHRSZXNwb25zZSksZT1CUyhiKCk/LndhdGNoTmV4dFJlc3BvbnNlKTtIUyhjLGQpJiYoTVUoYSksYy5TKHt5ZjohZT8uY291bnREb3duU2Vjc3x8ZS5jb3VudERvd25TZWNzPD0wPzEwOmUuY291bnREb3duU2Vjc30pLGM9d2luZG93LnNldEludGVydmFsKCgpPT57dmFyIGY9YSgpO2lmKGYueWYhPT0xKWYuUyh7eWY6Zi55Zi0xfSk7ZWxzZXtNVShhKTtmPWIoKT8ud2F0Y2hOZXh0UmVzcG9uc2U7Zj1BUyhmKTtsZXQgaD1mPy5zZXRzPy5bMF0uYXV0b3BsYXlWaWRlbztoJiZfLkFKKGgsZiwhMSx7YXV0b25hdjoiMSJ9KX19LDFFMyksXy54KCJtd2ViX3BsYXllcl91bmlmaWNhdGlvbl9zdGF0ZV9yZWZhY3Rvcl9raWxsc3dpdGNoIik/TlU9YzphKCkuUyh7Rms6Y30pKX07Ck1VPWZ1bmN0aW9uKGEpeyFfLngoIm13ZWJfcGxheWVyX3VuaWZpY2F0aW9uX3N0YXRlX3JlZmFjdG9yX2tpbGxzd2l0Y2giKSYmYT8oYT1hKCksYS5GayE9PXZvaWQgMCYmKGNsZWFySW50ZXJ2YWwoYS5GayksYS5TKHtGazp2b2lkIDB9KSkpOk5VJiYoY2xlYXJJbnRlcnZhbChOVSksTlU9dm9pZCAwKX07CkJsYT1mdW5jdGlvbihhLGIpe3JldHVybiBjPT57dmFyIGQ9YSgpLGU9e3hmOiExfTtlLnBsYXllclN0YXRlPWM7ZC5IJiZWUShkLkgpJiYoZS5wbGF5ZXJTdGF0ZT0yKTtjPT09MSYmKGQuSD8ubG9hZE1vZHVsZSgiY2FwdGlvbnMiKSxfLngoIm13ZWJfYmV0dGVyX2NhcHRpb25zX3BsYWNlbWVudCIpJiZkLkg/LnNldFN1YnRpdGxlc1RhcmdldENvbnRhaW5lcklkKCJjYXB0aW9ucy1nYWxvcmUtY29udGFpbmVyIikpO2M9PT0wJiYoZC5IPy51bmxvYWRNb2R1bGUoImNhcHRpb25zIiksXy54KCJtd2ViX2JldHRlcl9jYXB0aW9uc19wbGFjZW1lbnQiKSYmZC5IPy5jbGVhclN1YnRpdGxlc1RhcmdldENvbnRhaW5lcklkKCkpO2lmKGUucGxheWVyU3RhdGU9PT0tMSllLmVhPSEwO2Vsc2UgaWYoZS5wbGF5ZXJTdGF0ZT09PTUpZS5lYT0hMDtlbHNlIGlmKGUucGxheWVyU3RhdGU9PT0zKWUuZWE9ITAsYlQoKTtlbHNlIGlmKGUucGxheWVyU3RhdGU9PT0xKWQuc2J8fGQueXF8fChkLnliPwpjVCh7Li4uZCwuLi5lfSk6ZS5lYT0hMSk7ZWxzZSBpZihlLnBsYXllclN0YXRlPT09MiliVCgpO2Vsc2UgaWYoZS5wbGF5ZXJTdGF0ZT09PTApe2UuZWE9ITA7YlQoKTtjPWEoKTt2YXIgZj1iKCk/LndhdGNoTmV4dFJlc3BvbnNlO2lmKGY9Xy5CKGY/LmNvbnRlbnRzPy5zaW5nbGVDb2x1bW5XYXRjaE5leHRSZXN1bHRzPy5hdXRvcGxheT8uYXV0b3BsYXk/LmF1dG9wbGF5RXhwbGljaXRDaG9pY2VEaWFsb2dSZW5kZXJlcixBbGEpKWYuZGlzYWJsZUJ1dHRvblN0eWxlT3ZlcnJpZGVzPSEwOyFjLnRhLlVsKCkmJmYmJihjLnRhLmV4aXRGdWxsc2NyZWVuKCksXy5BSih7b3BlblBvcHVwQWN0aW9uOntwb3B1cDp7Y29uZmlybURpYWxvZ1JlbmRlcmVyOmZ9LHBvcHVwVHlwZToiRElBTE9HIn19LHt9LCExKSk7ZC5hdXRvbmF2RW5hYmxlZCYmKE9VKGEsYiksXy5NTygiI3BsYXllci1lbmRzY3JlZW4gLnl0d1BsYXllckVuZHNjcmVlblRvcFBhbmVsIGJ1dHRvbiIsNSx7cmw6ITB9KSl9ZC5TKGUpfX07CkNsYT1mdW5jdGlvbihhKXtQVSgoKT0+YSkoKX07RGxhPWZ1bmN0aW9uKGEpe3JldHVybigpPT57dmFyIGI9YSgpLGM9Yi5IO2MmJlZRKGMpJiZiLlMoe3BsYXllclN0YXRlOjJ9KX19OwpQVT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e3ZhciBjPWEoKTt2YXIgZD1jLkg7dmFyIGU9ZD8uZ2V0VmlkZW9EYXRhKCksZj1lPy5pc0xpdmV8fCExLGg9ZT8udmlkZW9faWQ7ZT1lPy5hbGxvd0xpdmVEdnI/PyEwO2Y9e3ZpZGVvRHVyYXRpb246VVEoZHx8dm9pZCAwKSxpc0xpdmU6Zix2aWRlb0lkOmgsaXNMaXZlRHZyRW5hYmxlZDplfTtmLnZpZGVvSWQhPT1jLnZpZGVvSWQmJihmPXsuLi5kVChkKSwuLi5mfSk7Yj8ucGxheWVydHlwZSYmKGYucGxheWVyVHlwZT1iLnBsYXllcnR5cGUpO2QmJihmLnhjPSEhZC5nZXRPcHRpb25zKCJjYXB0aW9ucyIpLGI9ZixoPShoPWQuZ2V0U3Rvcnlib2FyZExldmVsKGQuZ2V0TnVtYmVyT2ZTdG9yeWJvYXJkTGV2ZWxzKCktMSk/LmludGVydmFsTXMpP2gvMUUzOnZvaWQgMCxiLlpyPWgsZi54YyYmKGYuY2FwdGlvbnNFbmFibGVkPU9RKGQpKSk7Zi5yYz0hIWQ/LmlzTXV0ZWQoKTtkPWY7ZC5hdXRvbmF2RW5hYmxlZD1jLnRhLmRlKCk7ZC5pc1BsYXlsaXN0PQpYUSgpO2MuYmE/Lk1sIT09dm9pZCAwJiYoZC55Yj0hMCk7ZC5pc0Z1bGxzY3JlZW49Yy5pc0Z1bGxzY3JlZW47ZC5wbGF5ZXJTdGF0ZT09PTMmJihkLmVhPSEwKTtkLnBsYXllclN0YXRlPT09LTEmJihkLmVhPSEwKTtiPWMuR2M7eVMoey4uLmMsLi4uZH0pP2ImJihiLnN0eWxlLmRpc3BsYXk9Im5vbmUiKTpiJiYoYi5zdHlsZS5kaXNwbGF5PSIiKTtNVShhKTtjLlMoZCl9fTsKRWxhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGM9Pnt2YXIgZD1hKCksZT1iKCksZj1kLkg7aWYoZil7ZC52aWRlb0lkPT09dm9pZCAwJiZDbGEoZCk7aWYoZSYmYyE9PXZvaWQgMCl7dmFyIGg9ey4uLmQsdmE6Y307KGU9RVMoZS5wbGF5ZXJPdmVybGF5UmVuZGVyZXIpKSYmIWguaXNEcmFnZ2luZyYmKGg9a1QoaCxlKSxtVChoKSl9aD1mLmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk7Yz17dmE6Y3x8MCxRbTpmLmdldFZpZGVvTG9hZGVkRnJhY3Rpb24oKSxwbGF5ZXJUeXBlOmh9O3VTKGQpJiYoYy52YT1kLnZpZGVvRHVyYXRpb24pO2QuaXNMaXZlJiYoaD1mLmdldFByb2dyZXNzU3RhdGUoaCksYy52YS09aC5zZWVrYWJsZVN0YXJ0LGMudmlkZW9EdXJhdGlvbj1VUShmKSk7eVMoZCkmJmRlbGV0ZSBjLnZhO2Y9Yzt5Uyh7Li4uZCwuLi5mfSkmJihjPWQuR2MpJiYoYy5zdHlsZS5kaXNwbGF5PSJub25lIik7ZC5TKGYpfX19OwpGbGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9PnthKCkuUyh7ZWE6ITEscmM6ITF9KX19O0dsYT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e2EoKS5TKHtpc0Z1bGxzY3JlZW46Yi5mdWxsc2NyZWVuLE5hOiExfSl9fTtIbGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCksYz1iLkg7Yi5TKHtpc0Z1bGxzY3JlZW46Yi50YS5pc0Z1bGxzY3JlZW4oKSxjYXB0aW9uc0VuYWJsZWQ6Yz9PUShjKTpiLmNhcHRpb25zRW5hYmxlZH0pfX07SWxhPWZ1bmN0aW9uKGEpe3JldHVybigpPT57dmFyIGI9YSgpO18uVk0oe2hyZWY6d2luZG93LmxvY2F0aW9uLmhyZWZ9KXx8Yi5TKHtpc0Z1bGxzY3JlZW46ITF9KX19OwpKbGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCk7WzkwLDI3MF0uaW5jbHVkZXMoTWF0aC5hYnMod2luZG93Lm9yaWVudGF0aW9uP3dpbmRvdy5vcmllbnRhdGlvbjp3aW5kb3cuc2NyZWVuPy5vcmllbnRhdGlvbj8uYW5nbGU/d2luZG93LnNjcmVlbi5vcmllbnRhdGlvbi5hbmdsZTowKSk/ZG9jdW1lbnQuYm9keS5zZXRBdHRyaWJ1dGUoImxhbmRzY2FwZSIsInRydWUiKTpkb2N1bWVudC5ib2R5LnJlbW92ZUF0dHJpYnV0ZSgibGFuZHNjYXBlIik7Yi5OYSYmYi5TKHtOYTohMX0pfX07S2xhPWZ1bmN0aW9uKGEpe3JldHVybigpPT57dmFyIGI9YSgpO2IudGEuZXhpdEZ1bGxzY3JlZW4oKTtiLlMoe2lzRnVsbHNjcmVlbjohMX0pfX07TGxhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGM9Pnt2YXIgZD1hKCk7Yy5kZXRhaWw/LnBhdXNlZD8oTVUoYSksZC56Znx8ZC5TKHt6ZjohMH0pKToodVMoZCkmJk9VKGEsYiksZC56ZiYmZC5TKHt6ZjohMX0pKX19OwpNbGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCksYz1iLnRhLmRlKCk7Y3x8TVUoYSk7Yi5TKHthdXRvbmF2RW5hYmxlZDpjfSl9fTtObGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGI9PnthKCkuUyh7Ung6ISFifSl9fTtRVT1mdW5jdGlvbihhKXtNVShhLnByb3BzKTthLnByb3BzKCkuUyh7eGY6ITB9KX07UlU9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5XRCgoKT0+YS5zZXRzWzBdLnByZXZpb3VzQnV0dG9uVmlkZW8pLGM9Xy5XRCgoKT0+YS5zZXRzWzBdLm5leHRCdXR0b25WaWRlbyk7cmV0dXJue1VhOmIsbmV4dDpjfX07U1U9ZnVuY3Rpb24oYSxiKXtiPWIoKT8ucnVucz8uWzBdLm5hdmlnYXRpb25FbmRwb2ludDt2YXIgYz1fLkIoYixfLlZEKT8udXJsO2EoKS5IPy5pc0VtYmVkc1Nob3J0c01vZGU/LigpJiZjJiZjLmluY2x1ZGVzKCIvd2F0Y2g/dj0iKSYmKF8uQihiLF8uVkQpLnVybD1jLnJlcGxhY2UoIi93YXRjaD92PSIsIi9zaG9ydHMvIikpO3JldHVybiBifTsKVVU9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSIiLGU9IiI7c3dpdGNoKGEpe2Nhc2UgLTE6Y2FzZSAwOmQ9Yj8iVk9MVU1FX09GRiI6Yz8iVk9MVU1FX09GRl9ERUxISV9QTEFZRVIiOiJWT0xVTUVfT0ZGX0ZJTExFRCI7ZT1PbGE7YnJlYWs7Y2FzZSAxOmQ9Yj8iVk9MVU1FX1VQX09VVExJTkUiOmM/IlZPTFVNRV9VUF9ERUxISV9QTEFZRVJfRklMTEVEIjoiVk9MVU1FX1VQX0ZJTExFRCI7ZT1UVTticmVhaztjYXNlIDI6ZD1iPyJWT0xVTUVfRE9XTl9PVVRMSU5FIjpjPyJWT0xVTUVfRE9XTl9ERUxISV9QTEFZRVJfRklMTEVEIjoiVk9MVU1FX0RPV05fRklMTEVEIjtlPVRVO2JyZWFrO2RlZmF1bHQ6Xy5lYihhLHZvaWQgMCl9cmV0dXJue2ljb25OYW1lOmQsYXJpYUxhYmVsOmV9fTsKUGxhPWZ1bmN0aW9uKGEsYil7dHlwZW9mIFZVPT09Im51bWJlciImJmNsZWFyVGltZW91dChWVSk7VlU9c2V0VGltZW91dCgoKT0+e2EuUyh7WWg6ITF9KTtWVT12b2lkIDB9LF8uQihiLmVuYWJsZWRFZHVDb21tYW5kLFdVKT8uZHVyYXRpb25Nc3x8NEUzKX07WFU9ZnVuY3Rpb24oYSxiLGMpe2EuUyh7YXV0b25hdkVuYWJsZWQ6YixZaDpjfSk7YS50YS5SaihiLGMpfTtZVT1mdW5jdGlvbihhKXtyZXR1cm4gXy5JRSh7ZGlzcGxheTooKT0+YSgpPyIiOiJub25lIn0pfTtRbGE9ZnVuY3Rpb24oYSl7aWYoXy54KCJlbmFibGVfY3VzdG9tX3NjcnViYmVyX3YyIikmJmEpcmV0dXJue3BsYXloZWFkSW1hZ2U6YS5wbGF5aGVhZEltYWdlLHBsYXloZWFkUmV3aW5kSW1hZ2U6YS5wbGF5aGVhZFJld2luZEltYWdlLHBsYXloZWFkRmFzdEZvcndhcmRJbWFnZTphLnBsYXloZWFkRmFzdEZvcndhcmRJbWFnZX19OwpSbGE9ZnVuY3Rpb24oYSl7YT1hPy5nZXRQbGF5ZXJTdGF0ZU9iamVjdD8uKCk7cmV0dXJuKGE/LmlzQ3VlZHx8YT8uaXNVbnN0YXJ0ZWQpJiYhYT8uaXNFcnJvcn07WlU9ZnVuY3Rpb24oYSl7YS5mb3JFYWNoKGI9PntiKCl9KTthLmxlbmd0aD0wfTtTbGE9ZnVuY3Rpb24oYSl7dmFyIGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Yi5pZD0icGxheWVyLWNvbnRyb2xzIjtiLmNsYXNzTGlzdC5hZGQoInl0UGxheWVyQ29udHJvbHNDb250YWluZXJIb3N0Iik7dmFyIFtjLGRdPV8uSih7fSx2b2lkIDAsImJqSklsZCIpO2EuYWRkRXZlbnRMaXN0ZW5lcigib25WaWRlb0RhdGFDaGFuZ2UiLCgpPT57JFUoYSxiLGMsZCl9KTthLmFkZEV2ZW50TGlzdGVuZXIoIm9uUmVhZHkiLCgpPT57JFUoYSxiLGMsZCl9KTtyZXR1cm4gYn07CiRVPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVRsYShhKTtkKGUpO2hqYShiLCFhLmdldFBsYXllclN0YXRlT2JqZWN0KCk/LmlzRXJyb3J8fCEhYVYoZSkpO2IuaGFzQ2hpbGROb2RlcygpfHxfLnhGKGIsKCk9PlVsYShhLGIsYyksIiRlIil9OwpVbGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPV8uTigoKT0+YVYoYygpKSx2b2lkIDAsImRXNThiZCIpLGU9Xy51RihrPT57aWYoIV8ueCgiZW1iZWRzX2VuYWJsZV9lbWMzZHNfcGZwIikpcmV0dXJuITE7dmFyIGw9YygpO3JldHVybihsPWwuamI/LmVtYmVkZGVkUGxheWVyQ29uZmlnPy5lbWJlZGRlZFBsYXllck1vZGU/P2wucGxheWVyUmVzcG9uc2U/LnBsYXllckNvbmZpZz8uZW1iZWRkZWRQbGF5ZXJDb25maWc/LmVtYmVkZGVkUGxheWVyTW9kZSk/bD09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRlAiOmt9LHtpbml0aWFsOiExfSksZj1fLnVGKGs9PntpZighXy54KCJlbWJlZHNfZW5hYmxlX2VtYzNkc19wZmwiKSlyZXR1cm4hMTt2YXIgbD1jKCk7cmV0dXJuKGw9bC5qYj8uZW1iZWRkZWRQbGF5ZXJDb25maWc/LmVtYmVkZGVkUGxheWVyTW9kZT8/bC5wbGF5ZXJSZXNwb25zZT8ucGxheWVyQ29uZmlnPy5lbWJlZGRlZFBsYXllckNvbmZpZz8uZW1iZWRkZWRQbGF5ZXJNb2RlKT8KbD09PSJFTUJFRERFRF9QTEFZRVJfTU9ERV9QRkwiOmt9LHtpbml0aWFsOiExfSksaD1fLk4oKCk9PntpZighXy54KCJlbWJlZHNfZW5hYmxlX3Nob3J0cyIpfHxfLngoImVtYmVkc19lbmFibGVfc2hvcnRzX2NvdW50ZXJmYWN0dWFsIikpcmV0dXJuITE7dmFyIGs9YygpLlBoPy5lbmRwb2ludDtyZXR1cm4hKCFrfHwhXy5CKGssXy5URCkpfSx2b2lkIDAsIldxZ0pyYiIpO18ubkUoKCk9PntfLngoImVtYmVkc19lbmFibGVfc2hvcnRzIikmJihfLngoImVtYmVkc19lbmFibGVfc2hvcnRzX2NvdW50ZXJmYWN0dWFsIil8fChlKCl8fGYoKXx8IWgoKT9hLnNldExvb3BWaWRlbyghMSk6YS5zZXRMb29wVmlkZW8oITApKSl9LCJaZ1V3Z2UiKTtyZXR1cm4gXy5LKF8uRUUsbnVsbCxfLksoXy5DRSx7d2hlbjooKT0+ZCgpfSwoKT0+Xy5LKGJWLHtkYXRhOigpPT5kKCl9KSksXy5LKF8uQ0Use3doZW46ZX0sKCk9Pl8uSyhWbGEse0g6YSxjb250ZXh0OnRrYShhLGIpLGRhdGE6Y30pKSxfLksoXy5DRSwKe3doZW46Zn0sKCk9Pnt2YXIgaz1yUyhhKSxsPWEuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpO2w9ey4uLnNTKGwpLFh3OiEwLFl3OiEwfTtyZXR1cm4gXy5LKGNWLHtjb250ZXh0Ont0YTprLGJhOmwsVGM6ZG9jdW1lbnQuYm9keSxHYzpifSxkYXRhOmN9KX0pLF8uSyhfLkNFLHt3aGVuOmh9LCgpPT5fLksoV2xhLHtyZWVsSXRlbVdhdGNoUmVzcG9uc2U6KCk9PmMoKS5yZWVsSXRlbVdhdGNoUmVzcG9uc2UsamI6KCk9PmMoKS5qYixQaDooKT0+YygpLlBoLEg6KCk9PmEsY29udGV4dDpza2EoYSxiKX0pKSxfLksoXy5ERSxudWxsLCgpPT57dmFyIGs9clMoYSksbD1zUyhhLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKSk7cmV0dXJuIF8uSyhjVix7Y29udGV4dDp7dGE6ayxiYTpsLFRjOmRvY3VtZW50LmJvZHksR2M6Yn0sZGF0YTpjfSl9KSl9OwphVj1mdW5jdGlvbihhKXtyZXR1cm4gYS5qYj8ucHJldmlld1BsYXlhYmlsaXR5U3RhdHVzPy5lcnJvclNjcmVlbj8ucGxheWVySW50ZXJzdGl0aWFsUmVuZGVyZXJ8fGEucGxheWVyUmVzcG9uc2U/LnBsYXlhYmlsaXR5U3RhdHVzPy5lcnJvclNjcmVlbj8ucGxheWVySW50ZXJzdGl0aWFsUmVuZGVyZXJ9O1RsYT1mdW5jdGlvbihhKXt2YXIgYj1hLmdldFBsYXllclJlc3BvbnNlKCksYz1hLmdldFdhdGNoTmV4dFJlc3BvbnNlKCksZD1hLmdldFJlZWxJdGVtV2F0Y2hSZXNwb25zZSgpLGU9YS5nZXRFbWJlZGRlZFBsYXllclJlc3BvbnNlKCksZj1hLmdldFJlc29sdmVVcmxSZXNwb25zZSgpO3JldHVybntwbGF5ZXJPdmVybGF5UmVuZGVyZXI6Yz8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcixwbGF5ZXJSZXNwb25zZTpiLFBoOmYsd2F0Y2hOZXh0UmVzcG9uc2U6YyxyZWVsSXRlbVdhdGNoUmVzcG9uc2U6ZCxqYjplLEg6YX19OwpfLmRWPWZ1bmN0aW9uKGEpe18uQXEoImVwX2luaXRfcnMiKTt2YXIgYj1kb2N1bWVudC5ib2R5O2E9U2xhKGEpO2IuYXBwZW5kQ2hpbGQoYSk7YT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTthLmlkPSJib3R0b20tc2hlZXQtd3JhcHBlciI7KDAsXy5JQykoYSxVamEpO2IuYXBwZW5kQ2hpbGQoYSk7Xy5BcSgiZXBfaW5pdF9yZSIpfTtfLmc9RlEucHJvdG90eXBlO18uZy5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgRlEodGhpcy5sZWZ0LHRoaXMudG9wLHRoaXMud2lkdGgsdGhpcy5oZWlnaHQpfTsKXy5nLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBfLmVWJiZhIGluc3RhbmNlb2YgXy5lVj9hLng+PXRoaXMubGVmdCYmYS54PD10aGlzLmxlZnQrdGhpcy53aWR0aCYmYS55Pj10aGlzLnRvcCYmYS55PD10aGlzLnRvcCt0aGlzLmhlaWdodDp0aGlzLmxlZnQ8PWEubGVmdCYmdGhpcy5sZWZ0K3RoaXMud2lkdGg+PWEubGVmdCthLndpZHRoJiZ0aGlzLnRvcDw9YS50b3AmJnRoaXMudG9wK3RoaXMuaGVpZ2h0Pj1hLnRvcCthLmhlaWdodH07Xy5nLmdldFNpemU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IF8ubmQodGhpcy53aWR0aCx0aGlzLmhlaWdodCl9O18uZy5jZWlsPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGguY2VpbCh0aGlzLmxlZnQpO3RoaXMudG9wPU1hdGguY2VpbCh0aGlzLnRvcCk7dGhpcy53aWR0aD1NYXRoLmNlaWwodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5jZWlsKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Cl8uZy5mbG9vcj1mdW5jdGlvbigpe3RoaXMubGVmdD1NYXRoLmZsb29yKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5mbG9vcih0aGlzLnRvcCk7dGhpcy53aWR0aD1NYXRoLmZsb29yKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGguZmxvb3IodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLmcucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5yb3VuZCh0aGlzLmxlZnQpO3RoaXMudG9wPU1hdGgucm91bmQodGhpcy50b3ApO3RoaXMud2lkdGg9TWF0aC5yb3VuZCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLnJvdW5kKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5nLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIpeyJmdW5jdGlvbiI9PXR5cGVvZiBfLmVWJiZhIGluc3RhbmNlb2YgXy5lVj8odGhpcy5sZWZ0Kz1hLngsdGhpcy50b3ArPWEueSk6KHRoaXMubGVmdCs9YSx0eXBlb2YgYj09PSJudW1iZXIiJiYodGhpcy50b3ArPWIpKTtyZXR1cm4gdGhpc307Cl8uZy5zY2FsZT1mdW5jdGlvbihhLGIpe2I9dHlwZW9mIGI9PT0ibnVtYmVyIj9iOmE7dGhpcy5sZWZ0Kj1hO3RoaXMud2lkdGgqPWE7dGhpcy50b3AqPWI7dGhpcy5oZWlnaHQqPWI7cmV0dXJuIHRoaXN9Owp2YXIgdlU9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy50b2tlbj1hfXN0YXRpYyBhc3luYyBqYygpe3JldHVybiBuZXcgUHJvbWlzZShhPT57Xy5QbCgpLnRoZW4oYj0+e2I/KHZVLmluc3RhbmNlfHwodlUuaW5zdGFuY2U9bmV3IHZVKGIpKSxhKHZVLmluc3RhbmNlKSk6YSh2b2lkIDApfSl9KX1hc3luYyBnZXQoYSl7aWYoYT1hd2FpdCAoYXdhaXQgR1EodGhpcy50b2tlbikpLmdldCgicHJlZnMiLGEpKXt2YXIgYj0oMCxfLmVsKSgpO3JldHVybiBhLmV4cGlyYXRpb25UaW1lc3RhbXBNczw9Yj92b2lkIDA6YS52YWx1ZX19YXN5bmMgc2V0KGEsYixjPTMxNTM2RTMpe3ZhciBkPSgwLF8uZWwpKCk7YT17a2V5OmEsdmFsdWU6YixleHBpcmF0aW9uVGltZXN0YW1wTXM6ZCtjKjFFM307Yj1hd2FpdCBHUSh0aGlzLnRva2VuKTthd2FpdCBfLm1sKGIsInByZWZzIixhKX1hc3luYyByZW1vdmUoYSl7YXdhaXQgKGF3YWl0IEdRKHRoaXMudG9rZW4pKS5kZWxldGUoInByZWZzIixhKX19LFlRPQpudWxsLGZWPXtTbjp7MUUzOntvdGhlcjoiMEsifSwxRTQ6e290aGVyOiIwMEsifSwxRTU6e290aGVyOiIwMDBLIn0sMUU2OntvdGhlcjoiME0ifSwxRTc6e290aGVyOiIwME0ifSwxRTg6e290aGVyOiIwMDBNIn0sMUU5OntvdGhlcjoiMEIifSwxRTEwOntvdGhlcjoiMDBCIn0sMUUxMTp7b3RoZXI6IjAwMEIifSwxRTEyOntvdGhlcjoiMFQifSwxRTEzOntvdGhlcjoiMDBUIn0sMUUxNDp7b3RoZXI6IjAwMFQifX0sVnM6ezFFMzp7b3RoZXI6IjAgdGhvdXNhbmQifSwxRTQ6e290aGVyOiIwMCB0aG91c2FuZCJ9LDFFNTp7b3RoZXI6IjAwMCB0aG91c2FuZCJ9LDFFNjp7b3RoZXI6IjAgbWlsbGlvbiJ9LDFFNzp7b3RoZXI6IjAwIG1pbGxpb24ifSwxRTg6e290aGVyOiIwMDAgbWlsbGlvbiJ9LDFFOTp7b3RoZXI6IjAgYmlsbGlvbiJ9LDFFMTA6e290aGVyOiIwMCBiaWxsaW9uIn0sMUUxMTp7b3RoZXI6IjAwMCBiaWxsaW9uIn0sMUUxMjp7b3RoZXI6IjAgdHJpbGxpb24ifSwxRTEzOntvdGhlcjoiMDAgdHJpbGxpb24ifSwKMUUxNDp7b3RoZXI6IjAwMCB0cmlsbGlvbiJ9fX0sclI9ZlY7clI9ZlY7dmFyIHFSPXtBRUQ6WzIsImRoIiwiXHUwNjJmLlx1MDYyNS4iXSxBTEw6WzAsIkxlayIsIkxlayJdLEFVRDpbMiwiJCIsIkFVJCJdLEJEVDpbMiwiXHUwOWYzIiwiVGsiXSxCR046WzIsImxldiIsImxldiJdLEJSTDpbMiwiUiQiLCJSJCJdLENBRDpbMiwiJCIsIkMkIl0sQ0RGOlsyLCJGckNEIiwiQ0RGIl0sQ0hGOlsyLCJDSEYiLCJDSEYiXSxDTFA6WzAsIiQiLCJDTCQiXSxDTlk6WzIsIlx1MDBhNSIsIlJNQlx1MDBhNSJdLENPUDpbMzIsIiQiLCJDT0wkIl0sQ1JDOlswLCJcdTIwYTEiLCJDUlx1MjBhMSJdLENaSzpbNTAsIktcdTAxMGQiLCJLXHUwMTBkIl0sREtLOls1MCwia3IuIiwia3IuIl0sRE9QOlsyLCJSRCQiLCJSRCQiXSxFR1A6WzIsIlx1MDBhMyIsIkxFIl0sRVRCOlsyLCJCaXJyIiwiQmlyciJdLEVVUjpbMiwiXHUyMGFjIiwiXHUyMGFjIl0sR0JQOlsyLCJcdTAwYTMiLCJHQlx1MDBhMyJdLEhLRDpbMiwiJCIsIkhLJCJdLEhSSzpbMiwia24iLCJrbiJdLEhVRjpbMzQsCiJGdCIsIkZ0Il0sSURSOlswLCJScCIsIlJwIl0sSUxTOlszNCwiXHUyMGFhIiwiSUxcdTIwYWEiXSxJTlI6WzIsIlx1MjBiOSIsIlJzIl0sSVJSOlswLCJSaWFsIiwiSVJSIl0sSVNLOlswLCJrciIsImtyIl0sSk1EOlsyLCIkIiwiSkEkIl0sSlBZOlswLCJcdTAwYTUiLCJKUFx1MDBhNSJdLEtSVzpbMCwiXHUyMGE5IiwiS1JcdTIwYTkiXSxMS1I6WzIsIlJzIiwiU0xScyJdLExUTDpbMiwiTHQiLCJMdCJdLE1OVDpbMCwiXHUyMGFlIiwiTU5cdTIwYWUiXSxNVlI6WzIsIlJmIiwiTVZSIl0sTVhOOlsyLCIkIiwiTWV4JCJdLE1ZUjpbMiwiUk0iLCJSTSJdLE5PSzpbNTAsImtyIiwiTk9rciJdLFBBQjpbMiwiQi8uIiwiQi8uIl0sUEVOOlsyLCJTLy4iLCJTLy4iXSxQSFA6WzIsIlx1MjBiMSIsIlBIUCJdLFBLUjpbMCwiUnMiLCJQS1JzLiJdLFBMTjpbNTAsInpcdTAxNDIiLCJ6XHUwMTQyIl0sUk9OOlsyLCJST04iLCJST04iXSxSU0Q6WzAsImRpbiIsIlJTRCJdLFJVQjpbNTAsIlx1MjBiZCIsCiJSVUIiXSxTQVI6WzIsIlNBUiIsIlNBUiJdLFNFSzpbNTAsImtyIiwia3IiXSxTR0Q6WzIsIiQiLCJTJCJdLFRIQjpbMiwiXHUwZTNmIiwiVEhCIl0sVFJZOlsyLCJcdTIwYmEiLCJUUlkiXSxUV0Q6WzIsIiQiLCJOVCQiXSxUWlM6WzAsIlRTaCIsIlRTaCJdLFVBSDpbMiwiXHUwNDMzXHUwNDQwXHUwNDNkLiIsIlVBSCJdLFVTRDpbMiwiJCIsIlVTJCJdLFVZVTpbMiwiJCIsIiRVIl0sVk5EOls0OCwiXHUyMGFiIiwiVk5cdTIwYWIiXSxZRVI6WzAsIlJpYWwiLCJSaWFsIl0sWkFSOlsyLCJSIiwiWkFSIl19O3ZhciBnVjsKZ1Y9e0RBWTp7TE9ORzoib25leyMgZGF5fW90aGVyeyMgZGF5c30iLFNIT1JUOiJvbmV7IyBkYXl9b3RoZXJ7IyBkYXlzfSIsTkFSUk9XOiJvbmV7I2R9b3RoZXJ7I2R9In0sSE9VUjp7TE9ORzoib25leyMgaG91cn1vdGhlcnsjIGhvdXJzfSIsU0hPUlQ6Im9uZXsjIGhyfW90aGVyeyMgaHJ9IixOQVJST1c6Im9uZXsjaH1vdGhlcnsjaH0ifSxNSU5VVEU6e0xPTkc6Im9uZXsjIG1pbnV0ZX1vdGhlcnsjIG1pbnV0ZXN9IixTSE9SVDoib25leyMgbWlufW90aGVyeyMgbWlufSIsTkFSUk9XOiJvbmV7I219b3RoZXJ7I219In0sTU9OVEg6e0xPTkc6Im9uZXsjIG1vbnRofW90aGVyeyMgbW9udGhzfSIsU0hPUlQ6Im9uZXsjIG10aH1vdGhlcnsjIG10aHN9IixOQVJST1c6Im9uZXsjbX1vdGhlcnsjbX0ifSxTRUNPTkQ6e0xPTkc6Im9uZXsjIHNlY29uZH1vdGhlcnsjIHNlY29uZHN9IixTSE9SVDoib25leyMgc2VjfW90aGVyeyMgc2VjfSIsTkFSUk9XOiJvbmV7I3N9b3RoZXJ7I3N9In0sV0VFSzp7TE9ORzoib25leyMgd2Vla31vdGhlcnsjIHdlZWtzfSIsClNIT1JUOiJvbmV7IyB3a31vdGhlcnsjIHdrc30iLE5BUlJPVzoib25leyN3fW90aGVyeyN3fSJ9LFlFQVI6e0xPTkc6Im9uZXsjIHllYXJ9b3RoZXJ7IyB5ZWFyc30iLFNIT1JUOiJvbmV7IyB5cn1vdGhlcnsjIHlyc30iLE5BUlJPVzoib25leyN5fW90aGVyeyN5fSJ9fTt2YXIgaFY9e0NlOlsiezB9LCB7MX0iLCJ7MH0sIHsxfSIsInswfSwgezF9Il0sUm46WyJ7MH0gYW5kIHsxfSIsInswfSAmIHsxfSIsInswfSwgezF9Il0sbWs6WyJ7MH0sIGFuZCB7MX0iLCJ7MH0sICYgezF9IiwiezB9LCB7MX0iXSxpbzpbInswfSBvciB7MX0iLCJ7MH0gb3IgezF9IiwiezB9IG9yIHsxfSJdLHhrOlsiezB9LCBvciB7MX0iLCJ7MH0sIG9yIHsxfSIsInswfSwgb3IgezF9Il0scm86WyJ7MH0sIHsxfSIsInswfSwgezF9IiwiezB9IHsxfSJdLHFvOlsiezB9LCB7MX0iLCJ7MH0sIHsxfSIsInswfSB7MX0iXSxBazpbInswfSwgezF9IiwiezB9LCB7MX0iLCJ7MH0gezF9Il19OwpoVj17Q2U6WyJ7MH0sIHsxfSIsInswfSwgezF9IiwiezB9LCB7MX0iXSxSbjpbInswfSBhbmQgezF9IiwiezB9ICYgezF9IiwiezB9LCB7MX0iXSxtazpbInswfSwgYW5kIHsxfSIsInswfSwgJiB7MX0iLCJ7MH0sIHsxfSJdLGlvOlsiezB9IG9yIHsxfSIsInswfSBvciB7MX0iLCJ7MH0gb3IgezF9Il0seGs6WyJ7MH0sIG9yIHsxfSIsInswfSwgb3IgezF9IiwiezB9LCBvciB7MX0iXSxybzpbInswfSwgezF9IiwiezB9LCB7MX0iLCJ7MH0gezF9Il0scW86WyJ7MH0sIHsxfSIsInswfSwgezF9IiwiezB9IHsxfSJdLEFrOlsiezB9LCB7MX0iLCJ7MH0sIHsxfSIsInswfSB7MX0iXX07dmFyIFhsYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZhciBhPXt0eXBlOiJ1bml0IixzdHlsZToibmFycm93In07dGhpcy5JPWEmJmEudHlwZT9hLnR5cGU6ImNvbmp1bmN0aW9uIjt0aGlzLks9YSYmYS5zdHlsZT9hLnN0eWxlOiJsb25nIjt0aGlzLmo9aFY7YT0wO3N3aXRjaCh0aGlzLkspe2Nhc2UgInNob3J0IjphPTE7YnJlYWs7Y2FzZSAibmFycm93IjphPTJ9c3dpdGNoKHRoaXMuSSl7Y2FzZSAiY29uanVuY3Rpb24iOnRoaXMuQj10aGlzLmouQ2VbYV07dGhpcy5EPSh0aGlzLmouUm58fHRoaXMuai5taylbYV07dGhpcy52PSh0aGlzLmouakN8fHRoaXMuai5DZSlbYV07dGhpcy5vPXRoaXMuai5ta1thXTticmVhaztjYXNlICJkaXNqdW5jdGlvbiI6dGhpcy5CPSh0aGlzLmouUUZ8fHRoaXMuai5DZSlbYV07dGhpcy5EPSh0aGlzLmouaW98fHRoaXMuai54aylbYV07dGhpcy52PSh0aGlzLmouUEZ8fHRoaXMuai5DZSlbYV07dGhpcy5vPXRoaXMuai54a1thXTticmVhaztjYXNlICJ1bml0Ijp0aGlzLkI9Cih0aGlzLmoucm98fHRoaXMuai5DZSlbYV0sdGhpcy5EPSh0aGlzLmouQUh8fHRoaXMuai5BaylbYV0sdGhpcy52PSh0aGlzLmoucW98fHRoaXMuai5DZSlbYV0sdGhpcy5vPXRoaXMuai5Ba1thXX19Zm9ybWF0KGEpe3JldHVybiB4amEodGhpcyxhKX19O3ZhciBpUj17YXI6ImxhdG4iLCJhci1FRyI6ImFyYWIiLGJuOiJiZW5nIixmYToiYXJhYmV4dCIsbXI6ImRldmEiLG15OiJteW1yIixuZToiZGV2YSJ9O3ZhciBpVj17Vm46Ii4iLHJrOiIsIixqbzoiJSIsQms6IjAiLFd0OiIrIixhbzoiLSIsWW46IkUiLGtvOiJcdTIwMzAiLHNrOiJcdTIyMWUiLEJ0OiJOYU4iLGd0OiIjLCMjMC4jIyMiLHpHOiIjRTAiLFNGOiIjLCMjMCUiLEZDOiJcdTAwYTQjLCMjMC4wMCIsV246IlVTRCJ9LGRSPWlWO2RSPWlWO3ZhciBlUj1JbnRsLk51bWJlckZvcm1hdC5zdXBwb3J0ZWRMb2NhbGVzT2YoWyJlbi1VUyIucmVwbGFjZSgiXyIsIi0iKV0pLmxlbmd0aD4wLGpSPSExOwpoUi5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24oYSxiKXtiPWJ8fFswXTtpZih0aGlzLm9hIT09MCl0aHJvdyBFcnJvcigiT2QiKTthPWEucmVwbGFjZSgvIHxcdTIwMmYvZywiXHUwMGEwIik7dmFyIGM9YS5pbmRleE9mKHRoaXMuTSxiWzBdKT09YlswXSxkPWEuaW5kZXhPZih0aGlzLkQsYlswXSk9PWJbMF07YyYmZCYmKHRoaXMuTS5sZW5ndGg+dGhpcy5ELmxlbmd0aD9kPSExOnRoaXMuTS5sZW5ndGg8dGhpcy5ELmxlbmd0aCYmKGM9ITEpKTtjP2JbMF0rPXRoaXMuTS5sZW5ndGg6ZCYmKGJbMF0rPXRoaXMuRC5sZW5ndGgpO2lmKGEuaW5kZXhPZihkUi5zayxiWzBdKT09YlswXSl7YlswXSs9ZFIuc2subGVuZ3RoO3ZhciBlPUluZmluaXR5fWVsc2V7ZT1hO2xldCBmPSExLGg9ITEsaz0hMSxsPS0xLG09MSxuPWRSLlZuLHA9ZFIucmsscj1kUi5ZbjtpZih0aGlzLm9hIT0wKXRocm93IEVycm9yKCJQZCIpO3A9cC5yZXBsYWNlKC9cdTIwMmYvZywiXHUwMGEwIik7bGV0IHQ9IiI7Zm9yKDtiWzBdPAplLmxlbmd0aDtiWzBdKyspe2xldCB2PWUuY2hhckF0KGJbMF0pLHo9cFIodik7aWYoej49MCYmejw9OSl0Kz16LGs9ITA7ZWxzZSBpZih2PT1uLmNoYXJBdCgwKSl7aWYoZnx8aClicmVhazt0Kz0iLiI7Zj0hMH1lbHNlIGlmKHY9PXAuY2hhckF0KDApJiYoIlx1MDBhMCIhPXAuY2hhckF0KDApfHxiWzBdKzE8ZS5sZW5ndGgmJnBSKGUuY2hhckF0KGJbMF0rMSkpPj0wKSl7aWYoZnx8aClicmVha31lbHNlIGlmKHY9PXIuY2hhckF0KDApKXtpZihoKWJyZWFrO3QrPSJFIjtoPSEwO2w9YlswXX1lbHNlIGlmKHY9PSIrInx8dj09Ii0iKXtpZihrJiZsIT1iWzBdLTEpYnJlYWs7dCs9dn1lbHNlIGlmKHRoaXMudj09MSYmdj09ZFIuam8uY2hhckF0KDApKXtpZihtIT0xKWJyZWFrO209MTAwO2lmKGspe2JbMF0rKzticmVha319ZWxzZSBpZih0aGlzLnY9PTEmJnY9PWRSLmtvLmNoYXJBdCgwKSl7aWYobSE9MSlicmVhazttPTFFMztpZihrKXtiWzBdKys7YnJlYWt9fWVsc2UgYnJlYWt9dGhpcy52IT0KMSYmKG09dGhpcy52KTtlPXBhcnNlRmxvYXQodCkvbX1pZihjKXtpZihhLmluZGV4T2YodGhpcy5nYSxiWzBdKSE9YlswXSlyZXR1cm4gTmFOO2JbMF0rPXRoaXMuZ2EubGVuZ3RofWVsc2UgaWYoZCl7aWYoYS5pbmRleE9mKHRoaXMuVSxiWzBdKSE9YlswXSlyZXR1cm4gTmFOO2JbMF0rPXRoaXMuVS5sZW5ndGh9cmV0dXJuIGQ/LWU6ZX07CmhSLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oYSl7aWYodGhpcy5CPnRoaXMuail0aHJvdyBFcnJvcigiU2QiKTtpZihlUiYmdGhpcy5LKXsodGhpcy5LLmZvcm1hdD09bnVsbHx8dGhpcy5RYXx8dGhpcy5NYXx8dGhpcy5WZHx8alIpJiZmUih0aGlzKTtpZihNYXRoLmFicyhhKTwxJiZ0aGlzLmhhPnRoaXMuail7dmFyIGI9TWF0aC5wb3coMTAsdGhpcy5qKTthPU1hdGgucm91bmQoTWF0aC5hYnMoYSkqYikqTWF0aC5zaWduKGEpL2J9dGhpcy5LLnJlc29sdmVkT3B0aW9ucygpO3JldHVybiB0aGlzLksuZm9ybWF0KGEpfWlmKGlzTmFOKGEpKXJldHVybiBkUi5CdDtiPVtdO3ZhciBjPWE7aWYodGhpcy5vYT09MCljPXNSO2Vsc2V7Yz1NYXRoLmFicyhjKTt2YXIgZD10Uih0aGlzLGM8PTE/MDp1UihjKSkucGw7Yz10Uih0aGlzLGQrdVIobVIodGhpcyxrUihjLC1kKSkuaW50VmFsdWUpKX1hPWtSKGEsLWMucGwpOyhkPWE8MHx8YT09MCYmMS9hPDApP2Mud20/Yi5wdXNoKGMud20pOgooYi5wdXNoKGMucHJlZml4KSxiLnB1c2godGhpcy5EKSk6KGIucHVzaChjLnByZWZpeCksYi5wdXNoKHRoaXMuTSkpO2lmKGlzRmluaXRlKGEpKWlmKGEqPWQ/LTE6MSxhKj10aGlzLnYsdGhpcy5GYSl7dmFyIGU9YTtpZihlPT0wKW5SKHRoaXMsZSx0aGlzLm8sYiksb1IodGhpcywwLGIpO2Vsc2V7dmFyIGY9TWF0aC5mbG9vcihNYXRoLmxvZyhlKS9NYXRoLmxvZygxMCkrMkUtMTUpO2U9a1IoZSwtZik7dmFyIGg9dGhpcy5vO3RoaXMuWj4xJiZ0aGlzLlo+dGhpcy5vPyhoPWYldGhpcy5aLGg8MCYmKGg9dGhpcy5aK2gpLGU9a1IoZSxoKSxmLT1oLGg9MSk6dGhpcy5vPDE/KGYrKyxlPWtSKGUsLTEpKTooZi09dGhpcy5vLTEsZT1rUihlLHRoaXMuby0xKSk7blIodGhpcyxlLGgsYik7b1IodGhpcyxmLGIpfX1lbHNlIG5SKHRoaXMsYSx0aGlzLm8sYik7ZWxzZSBiLnB1c2goZFIuc2spO2Q/Yy54bT9iLnB1c2goYy54bSk6KGlzRmluaXRlKGEpJiZiLnB1c2goYy5zdWZmaXgpLGIucHVzaCh0aGlzLlUpKToKKGlzRmluaXRlKGEpJiZiLnB1c2goYy5zdWZmaXgpLGIucHVzaCh0aGlzLmdhKSk7cmV0dXJuIGIuam9pbigiIil9O3ZhciB5amE9IjAiLmNvZGVQb2ludEF0KDApLHNSPXtwbDowLHdtOiIiLHhtOiIiLHByZWZpeDoiIixzdWZmaXg6IiJ9O3ZhciBqVixCamE9alY9alY9emphO3ZhciBrVixDUj1rVj1rVj1BamE7dmFyIHdSPW51bGwseFI9bnVsbCx5Uj1udWxsLERqYT1SZWdFeHAoIicoW3t9I10uKj8pJyIsImciKSxDamE9UmVnRXhwKCInJyIsImciKTt6Ui5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKGEpe2lmKHRoaXMudil7dGhpcy5EPVtdO3ZhciBiPUVqYSh0aGlzLHRoaXMudik7dGhpcy5vPUhSKHRoaXMsYik7dGhpcy52PW51bGx9aWYodGhpcy5vJiZ0aGlzLm8ubGVuZ3RoIT0wKWZvcih0aGlzLmo9Xy55Yih0aGlzLkQpLGI9W10sQVIodGhpcyx0aGlzLm8sYSwhMSxiKSxhPWIuam9pbigiIik7dGhpcy5qLmxlbmd0aD4wOylhPWEucmVwbGFjZSh0aGlzLkIodGhpcy5qKSxTdHJpbmcodGhpcy5qLnBvcCgpKS5yZXBsYWNlKCIkIiwiJCQkJCIpKTtlbHNlIGE9IiI7cmV0dXJuIGF9O3ZhciBFUj0vXlxzKihcdyspXHMqLFxzKnBsdXJhbFxzKiwoPzpccypvZmZzZXQ6KFxkKykpPy8sRlI9L15ccyooXHcrKVxzKixccypzZWxlY3RvcmRpbmFsXHMqLC8sR1I9L15ccyooXHcrKVxzKixccypzZWxlY3RccyosLzsKelIucHJvdG90eXBlLkI9ZnVuY3Rpb24oYSl7cmV0dXJuIlx1ZmRkZl8iKyhhLmxlbmd0aC0xKS50b1N0cmluZygxMCkrIl8ifTt2YXIgVGphPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPVlsYXx8Z1Z9Zm9ybWF0KGEpe3ZhciBiPVtdLGM9YS55ZWFycyxkPWEubW9udGhzLGU9YS53ZWVrcyxmPWEuZGF5cyxoPWEuaG91cnMsaz1hLm1pbnV0ZXM7YT1hLnNlY29uZHM7YyE9bnVsbCYmYi5wdXNoKElSKHRoaXMsYywieWVhcnMiKSk7ZCE9bnVsbCYmYi5wdXNoKElSKHRoaXMsZCwibW9udGhzIikpO2UhPW51bGwmJmIucHVzaChJUih0aGlzLGUsIndlZWtzIikpO2YhPW51bGwmJmIucHVzaChJUih0aGlzLGYsImRheXMiKSk7aCE9bnVsbCYmYi5wdXNoKElSKHRoaXMsaCwiaG91cnMiKSk7ayE9bnVsbCYmYi5wdXNoKElSKHRoaXMsaywibWludXRlcyIpKTthIT1udWxsJiZiLnB1c2goSVIodGhpcyxhLCJzZWNvbmRzIikpO3JldHVybihuZXcgWGxhKS5mb3JtYXQoYil9fTsvKgoKIE1JVCBMaWNlbnNlCgogQ29weXJpZ2h0IChjKSAyMDE3IEFsZXhhbmRlciBSZWFyZG9uCgogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weQogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvIGRlYWwKIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMKIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGwKIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcwogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKCiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuCgogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLAogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKIFNPRlRXQVJFCiovCnZhciBabGE9KGEsYik9PntpZihhLmxlbmd0aCE9PWIubGVuZ3RoKXJldHVybiExO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7KytjKWlmKGFbY10hPT1iW2NdKXJldHVybiExO3JldHVybiEwfTt2YXIgbFY9bmV3IF8uSSgid2F0Y2hPbllvdXR1YmVCdXR0b25WaWV3TW9kZWwiKTt2YXIgRWthPW5ldyBfLkkoImVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc1JlbmRlcmVyIiksbVY9bmV3IF8uSSgiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzQ29sbGFwc2VkUmVuZGVyZXIiKSxuVj1uZXcgXy5JKCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNFeHBhbmRlZFJlbmRlcmVyIik7dmFyIE9TPW5ldyBfLkkoImVtYmVkc0luZm9QYW5lbFJlbmRlcmVyIik7dmFyICRsYT1uZXcgXy5JKCJtb2JpbGVUb3BiYXJSZW5kZXJlciIpO3ZhciBhbWE9bmV3IF8uSSgiY2FsbFRvQWN0aW9uQnV0dG9uVmlld01vZGVsIik7dmFyIGJtYT1uZXcgXy5JKCJpbnRlcnN0aXRpYWxWaWV3TW9kZWwiKTt2YXIgZGxhPW5ldyBfLkkoImNpbmVtYXRpY0NvbnRhaW5lclJlbmRlcmVyIik7dmFyIGprYT1uZXcgXy5JKCJ2YXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbCIpO3ZhciBEa2E9bmV3IF8uSSgiZnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsIik7dmFyIG9WPW5ldyBfLkkoInBsYXllck11dGVkQXV0b3BsYXlPdmVybGF5UmVuZGVyZXIiKSxwVj1uZXcgXy5JKCJwbGF5ZXJNdXRlZEF1dG9wbGF5RW5kU2NyZWVuUmVuZGVyZXIiKTt2YXIgS1M9bmV3IF8uSSgicXVpY2tBY3Rpb25zVmlld01vZGVsIik7dmFyIGNtYT1uZXcgXy5JKCJyZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbCIpO3ZhciBBbGE9bmV3IF8uSSgiY29uZmlybURpYWxvZ1JlbmRlcmVyIik7dmFyIG1sYT1uZXcgXy5JKCJib3R0b21TaGVldE92ZXJsYXlSZW5kZXJlciIpO3ZhciBkbWE9bmV3IF8uSSgiZGlhbG9nSGVhZGVyVmlld01vZGVsIik7dmFyIGVtYT1uZXcgXy5JKCJkaWFsb2dWaWV3TW9kZWwiKTt2YXIgV1U9bmV3IF8uSSgicGxheWVyVG9hc3RDb21tYW5kIik7dmFyIHZrYT1uZXcgXy5JKCJhdXRvcGxheVN3aXRjaEJ1dHRvblJlbmRlcmVyIik7dmFyIHhrYT1uZXcgXy5JKCJkZWNvcmF0ZWRQbGF5ZXJCYXJSZW5kZXJlciIpLERTPW5ldyBfLkkoIm11bHRpTWFya2Vyc1BsYXllckJhclJlbmRlcmVyIiksZVQ9bmV3IF8uSSgiY2hhcHRlclJlbmRlcmVyIik7dmFyIHlrYT1uZXcgXy5JKCJkZWNvcmF0ZWRQbGF5aGVhZFJlbmRlcmVyIik7dmFyIEFrYT1uZXcgXy5JKCJmdWxsc2NyZWVuRW5nYWdlbWVudE92ZXJsYXlSZW5kZXJlciIpLEJrYT1uZXcgXy5JKCJmdWxsc2NyZWVuRW5nYWdlbWVudEFjdGlvbkJhclJlbmRlcmVyIiksZm1hPW5ldyBfLkkoImZ1bGxzY3JlZW5FbmdhZ2VtZW50QWN0aW9uQmFyU2F2ZUJ1dHRvblJlbmRlcmVyIik7dmFyIGdtYT1uZXcgXy5JKCJoZWF0TWFya2VyUmVuZGVyZXIiKTt2YXIgd2thPW5ldyBfLkkoImhlYXRtYXBSZW5kZXJlciIpO3ZhciBxVj1uZXcgXy5JKCJ0aW1lZE1hcmtlckRlY29yYXRpb25SZW5kZXJlciIpO3ZhciBobWE9WyJlbi1DQSIsImVuIiwiZXMtTVgiLCJmci1DQSJdO3ZhciByVjtyVj17YnJvd3NlRW5kcG9pbnQ6e2Jyb3dzZUlkOiJGRXdoYXRfdG9fd2F0Y2gifSxjb21tYW5kTWV0YWRhdGE6e3dlYkNvbW1hbmRNZXRhZGF0YTp7dXJsOiIvIixyb290VmU6Mzg1NCx3ZWJQYWdlVHlwZToiV0VCX1BBR0VfVFlQRV9CUk9XU0UifX19O3ZhciBLUj0hMTt2YXIgS2phPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5vPXRoaXMuaj0wO3RoaXMuaj1iLngtYS54O3RoaXMubz1iLnktYS55fX07dmFyICRUPV8uZ3Uodm9pZCAwLCJCREVxSmIiKTt2YXIgc1Y9d2luZG93LFo9c1YuR0h8fCJlbi1VUyIsU2phPXNWLkhIfHxDUixZbGE9c1YuRkh8fGdWO3ZhciBRUjt2YXIgdWthPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuSD1hfXRvZ2dsZUZ1bGxzY3JlZW4oKXt0aGlzLkgudG9nZ2xlRnVsbHNjcmVlbigpfWV4aXRGdWxsc2NyZWVuKCl7dGhpcy5pc0Z1bGxzY3JlZW4oKSYmdGhpcy50b2dnbGVGdWxsc2NyZWVuKCl9aXNGdWxsc2NyZWVuKCl7cmV0dXJuIHRoaXMuSC5pc0Z1bGxzY3JlZW4oKX19O3ZhciBUUj1fLkwoKHt0YTphfSk9Pl8uSyhfLmZKLHtkYXRhOigpPT57dmFyIGI9Y1Ioe3RpdGxlOl8uSVAoXy4kTi5uayksa2w6YSgpLmRlKCksaWNvblR5cGU6IkFVVE9QTEFZIixFazpfLiROLm5rLERrOl8uJE4ubmt9KTtyZXR1cm4gXy5CKGIsXy5NUCl9LG9uVGFwOmZ1bmN0aW9uKGIpe3ZhciBjPSFhKCkuZGUoKTthKCkuUmooYywhMCk7Yi5zdG9wUHJvcGFnYXRpb24oKTtfLlhNKCJwZnAtYXV0b25hdi11cGRhdGUiLHthdXRvbmF2RW5hYmxlZDpjfSl9fSksIlliIik7VFIuaWRvbUNvbXBhdD0hMDt2YXIgaW1hPV8uJE4uYXUsY1M9Xy5MKCgpPT57dmFyIGE9KCk9Pl8uQihiUih7dGl0bGU6Xy5JUChpbWEpLGljb25UeXBlOiJQRVJTT05fQ0lSQ0xFIn0pLF8uWkMpO3JldHVybiBfLksoXy5DRCx7ZGF0YTphLElhOiEwLG9uVGFwOigpPT57dmFyIGI9Xy5LTygpP18uRk8oIi8veW91dHViZS5jb20vc2lnbmluIiwibmV4dCIsIi9zaWduaW4/YWN0aW9uX2Nsb3NlX3RhYj10cnVlIik6Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUJfRU1CRURERURfUExBWUVSIj9fLkZPKCIvL3lvdXR1YmUuY29tL3NpZ25pbiIsIm5leHQiLCIvcG9zdF9sb2dpbiIpOl8uRk8oIi8veW91dHViZS5jb20vc2lnbmluIiwibmV4dCIsbG9jYXRpb24ucGF0aG5hbWUrbG9jYXRpb24uc2VhcmNoKTtfLkFKKHtzaWduSW5FbmRwb2ludDp7fSxjb21tYW5kTWV0YWRhdGE6e3dlYkNvbW1hbmRNZXRhZGF0YTp7dXJsOmJ9fX0sYSgpLCExKX19KX0sIlpiIik7Y1MuaWRvbUNvbXBhdD0hMDt2YXIgam1hPV8uJE4uV3Msa21hPV8uJE4uWXMsbG1hPV8uJE4uVG4sVmphPV8uTCgoe2Z2OmF9KT0+e3ZhciBiPSJjb3B5LWRlYnVnLWluZm8tdGV4dGFyZWEiK18uT0goKTtyZXR1cm4gXy5LKF8uckUse1FnOigpPT5fLksoXy5BUCxudWxsLGxtYSkscWs6KCk9Pl8uSygidGV4dGFyZWEiLHtjbGFzczoiY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mbyIsaWQ6Yn0sYSksRXo6KCk9Pl8uSyhfLnpQLG51bGwsXy5LKF8uSksse2RhdGE6e2J1dHRvblRleHQ6am1hLHN0eWxlOiJtb25vIix0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIixzaXplOiJNIixvblRhcDooKT0+e18ueSgpLnJlc29sdmUoXy55UCkubGQoKX19fSkpLFByOigpPT5fLksoXy56UCxudWxsLF8uSyhfLkpLLHtkYXRhOntidXR0b25UZXh0OmttYSxzdHlsZToibW9ubyIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSIsc2l6ZToiTSIsb25UYXA6KCk9PntfLnNQKGIpO18ueSgpLnJlc29sdmUoXy55UCkubGQoKX19fSkpfSl9LAoiJGIiKTt2YXIgbW1hPV8uJE4uVG4sJFI9Xy5MKCh7SDphfSk9Pl8uSyhfLkNELHtkYXRhOigpPT5fLkIoYlIoe3RpdGxlOl8uSVAobW1hKSxpY29uVHlwZToiQlVHX1JFUE9SVCJ9KSxfLlpDKSxJYTohMCxvblRhcDooKT0+e1dqYShhKCkpfX0pLCJhYyIpOyRSLmlkb21Db21wYXQ9ITA7dmFyIG5tYT1fLiROLlpzLFpSPV8uTCgoe0g6YX0pPT5fLksoXy5DRCx7ZGF0YTooKT0+Xy5CKGJSKHt0aXRsZTpfLklQKG5tYSksaWNvblR5cGU6IkNPREUifSksXy5aQyksSWE6ITAsb25UYXA6KCk9Pnt2YXIgYj1hKCkuZ2V0VmlkZW9FbWJlZENvZGUoKTtiJiZiJiZ3aW5kb3cubmF2aWdhdG9yPy5jbGlwYm9hcmQmJndpbmRvdy5uYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChiKX19KSwiYmMiKTtaUi5pZG9tQ29tcGF0PSEwO3ZhciBvbWE9Xy4kTi5idCxwbWE9Xy4kTi5mdCxXUj1fLkwoKHtIOmF9KT0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pl8uQihiUih7dGl0bGU6Xy5JUChvbWEpLGljb25UeXBlOiJMSU5LIn0pLF8uWkMpLElhOiEwLG9uVGFwOigpPT57UlIoYSgpLCExKX19KSwiY2MiKTtXUi5pZG9tQ29tcGF0PSEwO3ZhciBZUj1fLkwoKHtIOmF9KT0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pl8uQihiUih7dGl0bGU6Xy5JUChwbWEpLGljb25UeXBlOiJMSU5LIn0pLF8uWkMpLElhOiEwLG9uVGFwOigpPT57UlIoYSgpLCEwKX19KSwiZGMiKTtZUi5pZG9tQ29tcGF0PSEwO3ZhciB0Vj1fLiROLnV0LFZSPV8uTCgoe0g6YX0pPT5fLksoXy5mSix7ZGF0YTooKT0+e3ZhciBiPWNSKHt0aXRsZTpfLklQKHRWKSxrbDphKCkuZ2V0TG9vcFZpZGVvKCksRWs6dFYsRGs6dFYsaWNvblR5cGU6IkxPT1AifSk7cmV0dXJuIF8uQihiLF8uTVApfSxvblRhcDpiPT57YSgpLnNldExvb3BWaWRlbyghYSgpLmdldExvb3BWaWRlbygpKTtiLnN0b3BQcm9wYWdhdGlvbigpfX0pLCJlYyIpO1ZSLmlkb21Db21wYXQ9ITA7dmFyIFVSPV8uTCgoe0g6YX0pPT5fLksoInN0YWJsZS12b2x1bWUtdG9nZ2xlIix7Y2xhc3M6InN0YWJsZVZvbHVtZVRvZ2dsZUhvc3QifSxfLksoXy5mSix7ZGF0YTooKT0+Xy5CKGNSKHt0aXRsZTpfLklQKF8uJE4ueWspLGtsOmEoKS5oYXNEcmNBdWRpb1RyYWNrKCkmJmEoKS5nZXREcmNVc2VyUHJlZmVyZW5jZSgpPT09MSxpY29uVHlwZToiVk9MVU1FX1NUQUJMRSIsRWs6Xy4kTi55ayxEazpfLiROLnlrLGlzRGlzYWJsZWQ6IWEoKS5oYXNEcmNBdWRpb1RyYWNrKCl9KSxfLk1QKSxvblRhcDpmdW5jdGlvbihiKXthKCkuc2V0RHJjVXNlclByZWZlcmVuY2UoYSgpLmhhc0RyY0F1ZGlvVHJhY2soKSYmYSgpLmdldERyY1VzZXJQcmVmZXJlbmNlKCk9PT0xPzA6MSk7Yi5zdG9wUHJvcGFnYXRpb24oKX19KSksImZjIik7VVIuaWRvbUNvbXBhdD0hMDt2YXIgcW1hPV8uJE4uYnUsYlM9Xy5MKCh7SDphfSk9Pnt2YXIgYj0oKT0+Xy5CKGJSKHt0aXRsZTpfLklQKHFtYSksaWNvblR5cGU6IklORk8ifSksXy5aQyk7cmV0dXJuIF8uSyhfLk8se0E6KCk9PiEhYSgpLmdldFZpZGVvRGF0YSx0aGVuOigpPT5fLksoXy5DRCx7ZGF0YTpiLElhOiEwLG9uVGFwOigpPT57dmFyIGM9YSgpOyFjLmdldFZpZGVvRGF0YXx8KGMuaXNWaWRlb0luZm9WaXNpYmxlKCk/Yy5oaWRlVmlkZW9JbmZvKCk6Yy5zaG93VmlkZW9JbmZvKCkpfX0pfSl9LCJnYyIpO2JTLmlkb21Db21wYXQ9ITA7dmFyIHJtYT1fLiROLmR1LGFTPV8uTCgoe0g6YX0pPT5fLksoXy5DRCx7ZGF0YTooKT0+Xy5CKGJSKHt0aXRsZTpfLklQKHJtYSksaWNvblR5cGU6IlFVRVNUSU9OX0NJUkNMRSJ9KSxfLlpDKSxJYTohMCxvblRhcDooKT0+e2EoKS5yZXBvcnRQbGF5YmFja0lzc3VlJiYoYSgpLnJlcG9ydFBsYXliYWNrSXNzdWUoKSxfLnFQKHtocmVmOiJodHRwczovL3N1cHBvcnQuZ29vZ2xlLmNvbS95b3V0dWJlLz9wPXJlcG9ydF9wbGF5YmFjayJ9KSl9fSksImhjIik7YVMuaWRvbUNvbXBhdD0hMDt2YXIgc21hPV8uJE4ud3Qsb1M9Xy5MKCh7SDphLG9oOmIsdGE6Yyx0QTpkfSk9Pl8uSyhfLkNELHtkYXRhOigpPT5fLkIoYlIoe3RpdGxlOl8uSVAoc21hKSxpY29uVHlwZToiT1VUTElORV9PVkVSRkxPV19IT1JJWk9OVEFMXzMyIn0pLF8uWkMpLElhOiEwLG9uVGFwOigpPT57WGphKGEoKSxiKCksYz8uKCksZD8uKCkpfX0pLCJpYyIpO29TLmlkb21Db21wYXQ9ITA7dmFyIGdrYT1fLiROLm1vLFlqYT1fLiROLm5vLFpqYT1fLiROLlR0LGZrYT1fLiROLlJ0LGVrYT1fLiROLlN0LGhrYT1fLiROLlh0LGFrYT1bNTAsMTAwLDEyNSwxNTAsMTc1LDIwMF0sJGphPVsxMDAsMTI1LDE1MCwxNzUsMjAwLDMwMF0sY2thPVs1MCwxMDAsMTI1LDE1MCwyMDBdLGJrYT1bMTAwLDEyNSwxNTAsMjAwLDMwMF0saFM7dmFyIHRtYT1fLiROLm1vLHVtYT1fLiROLm5vLG1TPV8uTCgoe0g6YX0pPT57dmFyIGI9KCk9Pnt2YXIgZD1hKCk/LmdldFBsYXliYWNrUmF0ZSgpLGU9Xy5hQSgiUExBWUJBQ0tfU1BFRURfWCIse3NwZWVkX3JhdGVfcGxhY2Vob2xkZXI6YCR7ZH1gfSk7cmV0dXJuIF8uQihiUih7dGl0bGU6Xy5JUCh0bWEpLHNlbGVjdGlvblRleHQ6Xy5JUChkPT09MT91bWE6ZSksaWNvblR5cGU6IlBMQVlfQVJST1dfSEFMRl9DSVJDTEUifSksXy5aQyl9LGM9KCk9Pntra2EoYSgpKX07cmV0dXJuIF8uSyhfLk8se0E6KCk9PiEhYSgpPy5nZXRQbGF5YmFja1JhdGUoKSx0aGVuOigpPT5fLksoXy5DRCx7ZGF0YTpiLElhOiEwLG9uVGFwOmN9KX0pfSwiamMiKTttUy5pZG9tQ29tcGF0PSEwO3ZhciB2bWE9Xy4kTi5OcyxuUz1fLkwoKCk9Pl8uSyhfLkNELHtkYXRhOigpPT5fLkIoe2xpc3RJdGVtVmlld01vZGVsOnt0aXRsZTpfLklQKHZtYSksbGlzdEl0ZW1JY29uQWZ0ZXJTZWxlY3Rpb25UZXh0OiJMSVNUX0lURU1fSUNPTl9BRlRFUl9TRUxFQ1RJT05fVEVYVF9ERUZBVUxUIixsZWFkaW5nSW1hZ2U6e3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOiJQRVJTT05fUkFEQVIifX1dfSxlbnRpdHlLZXk6IkVpb3ZlVzkxZEhWaVpTOWhjSEF2Y0d4aGVXVnlYMkYxWkdsdlgzUnlZV05yWDJWdWRHbDBlVjlyWlhrZ19nSW9BUSUzRCUzRCIsZW50aXR5U2VsZWN0b3JUeXBlOiJMSVNUX0lURU1fVklFV19NT0RFTF9FTlRJVFlfU0VMRUNUT1JfVFlQRV9BVURJT19UUkFDS19TRUxFQ1RJT05fVEVYVCIscmVuZGVyZXJDb250ZXh0Ontjb21tYW5kQ29udGV4dDp7b25UYXA6e2lubmVydHViZUNvbW1hbmQ6e2NvbW1hbmRFeGVjdXRvckNvbW1hbmQ6e2NvbW1hbmRzOlt7c2hvd0F1ZGlvVHJhY2tQaWNrZXJBY3Rpb25Db21tYW5kOnt9fV19fX19fX19LApfLlpDKSxJYTohMH0pLCJrYyIpO25TLmlkb21Db21wYXQ9ITA7dmFyIHdtYT1fLiROLkV0LHhtYT1fLiROLkZ0LHBrYT1fLkwoKHtIOmF9KT0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pnt2YXIgYj1hKCk/LmdldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIpLGM9dHlwZW9mIGI/LnRyYW5zbGF0aW9uTGFuZ3VhZ2U9PT0ib2JqZWN0IiYmYi50cmFuc2xhdGlvbkxhbmd1YWdlPy5sYW5ndWFnZU5hbWV8fGI/LmRpc3BsYXlOYW1lfHwiIjtyZXR1cm4gXy5CKHtsaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6Xy5JUCh3bWEpLGxpc3RJdGVtSWNvbkFmdGVyU2VsZWN0aW9uVGV4dDoiTElTVF9JVEVNX0lDT05fQUZURVJfU0VMRUNUSU9OX1RFWFRfREVGQVVMVCIsc2VsZWN0aW9uVGV4dDp7Y29udGVudDpjP2M6eG1hfSxsZWFkaW5nSW1hZ2U6e3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOmM/IkNMT1NFRF9DQVBUSU9OX1NFTEVDVEVEIjoiQ0xPU0VEX0NBUFRJT04ifX1dfSxlbnRpdHlLZXk6IkVpOHZlVzkxZEhWaVpTOWhjSEF2Y0d4aGVXVnlYMk5oY0hScGIyNWZiR0Z1WjNWaFoyVmZaVzUwYVhSNVgydGxlU0QtQWlnQiIsCmVudGl0eVNlbGVjdG9yVHlwZToiTElTVF9JVEVNX1ZJRVdfTU9ERUxfRU5USVRZX1NFTEVDVE9SX1RZUEVfQ0FQVElPTl9MQU5HVUFHRV9TRUxFQ1RJT05fVEVYVCIscmVuZGVyZXJDb250ZXh0Ontjb21tYW5kQ29udGV4dDp7b25UYXA6e2lubmVydHViZUNvbW1hbmQ6e2NvbW1hbmRFeGVjdXRvckNvbW1hbmQ6e2NvbW1hbmRzOlt7c2hvd0NhcHRpb25MYW5ndWFnZVNlbGVjdEFjdGlvbkNvbW1hbmQ6e319XX19fX19LGlzRGlzYWJsZWQ6dHlwZW9mIGI9PT0idW5kZWZpbmVkIn19LF8uWkMpfSxJYTohMH0pLCJsYyIpO3ZhciBsa2E9e2F1dG86MCx0aW55OjE0NCxsaWdodDoxNDQsc21hbGw6MjQwLG1lZGl1bTozNjAsbGFyZ2U6NDgwLGhkNzIwOjcyMCxoZDEwODA6MTA4MCxoZDE0NDA6MTQ0MCxoZDIxNjA6MjE2MCxoZDI4ODA6Mjg4MCxoaWdocmVzOjQzMjB9O3ZhciB5bWE9Xy4kTi5OdCxta2E9Xy4kTi5PdCxsUz1fLkwoKHtIOmF9KT0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pnt2YXIgYj1iUih7dGl0bGU6Xy5JUCh5bWEpLHNlbGVjdGlvblRleHQ6Xy5JUChrUyhhKCksYSgpLmdldFBsYXliYWNrUXVhbGl0eSgpKSksaWNvblR5cGU6Ik9VVExJTkVfQURKVVNUIn0pO3JldHVybiBfLkIoYixfLlpDKX0sSWE6ITAsb25UYXA6KCk9PnthKCkuZ2V0QXZhaWxhYmxlUXVhbGl0eUxldmVscygpJiZva2EoYSgpKX19KSwibWMiKTtsUy5pZG9tQ29tcGF0PSEwOwp2YXIgbmthPV8uTCgoe0g6YX0pPT5fLksoXy5nRyx7cGE6KCk9PmEoKS5nZXRBdmFpbGFibGVRdWFsaXR5TGV2ZWxzKCksdGI6IklOREVYIn0sYj0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pnt2YXIgYz1iKCksZD1hKCkuZ2V0UHJlZmVycmVkUXVhbGl0eSgpO2M9YlIoe3RpdGxlOl8uSVAoa1MoYSgpLGMpKSxpY29uVHlwZTpjPT09ZD8iQ0hFQ0siOnZvaWQgMH0pO3JldHVybiBfLkIoYyxfLlpDKX0sSWE6ITAsb25UYXA6KCk9Pnt2YXIgYz1iKCk7YSgpLnNldFBsYXliYWNrUXVhbGl0eVJhbmdlKGMsYyl9fSkpLCJuYyIpO3ZhciBSUz1uZXcgU2V0LFFTPW51bGw7dmFyIFRTPW51bGwsVlM9e307dmFyIHVWPV8uTChhPT57dmFyIGI9Xy52RSgiYnV0dG9uIixkPT57ZCYmV1MoZCwyODU3MiwhXy54KCJlbWJlZHNfY3VlZF9vdmVybGF5X3ZlX2tzIikpfSksYz0oKT0+YS5HKCkuSD8uaXNFbWJlZHNTaG9ydHNNb2RlPy4oKTtyZXR1cm4gXy5LKCJjdWVkLW92ZXJsYXkiLHtjbGFzczpfLlAoInl0bUN1ZWRPdmVybGF5SG9zdCIse3l0bUN1ZWRPdmVybGF5SGlkZGVuOigpPT4hJFMoYS5HKCksYS5wbGF5YWJpbGl0eVN0YXR1cz8uKCkpfSksIm9uOmNsaWNrIjpmdW5jdGlvbihkKXtiLnZhbHVlJiYoWFMoMjg1NzIpLGEuRygpLmJhPy51aiYmXy5ETyhfLmh4KCksMjcyNDAsXy5LLnZpc3VhbEVsZW1lbnQpLGEuSD8uKCkucGxheVZpZGVvKCkpO2Quc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5PLHtBOigpPT4hYS5HKCkuYmE/LmhpZGVWaWRlb0luZm8mJiF1UyhhLkcoKSksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtQ3VlZE92ZXJsYXlHcmFkaWVudCJ9KX0pLF8uSygiYnV0dG9uIiwKe2NsYXNzOl8uUCgieXRtQ3VlZE92ZXJsYXlQbGF5QnV0dG9uIix7eXRtQ3VlZE92ZXJsYXlTaG9ydHM6Y30pLGVsOmIsImFyaWEtbGFiZWwiOl8uJE4uUGcsdGl0bGU6Xy4kTi5QZ30sXy5LKF8uTUQse2ljb246KCk9PmMoKT8iWU9VVFVCRV9TSE9SVFNfQlJBTkRfMjQiOiJMT0dPIixjbGFzc05hbWU6Inl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24ifSkpKX0sIm9jIik7dVYuaWRvbUNvbXBhdD0hMDt2YXIgYVQ7dmFyIEFtYT1fLkwoKHtKejphLG11bHRpTWFya2Vyc1BsYXllckJhclJlbmRlcmVyOmIscHJvZ3Jlc3NCYXJXaWR0aDpjLHByb2dyZXNzQ29sb3I6ZH0pPT57dmFyIGU9KCk9PmdUKGIoKSksZj0oKT0+alQoYSgpKSxoPSgpPT5jKCkqKGEoKS52YS9hKCkudmlkZW9EdXJhdGlvbik7cmV0dXJuIF8uSygieXQtY2hhcHRlcmVkLXByb2dyZXNzLWJhci1saW5lIix7Y2xhc3M6Inl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJIb3N0In0sXy5LKF8uZ0cse3BhOmV9LChrLGwpPT5fLksoem1hLHtOeTpmLGNoYXB0ZXJzOmUsaW5kZXg6bCxDejpoLHByb2dyZXNzQ29sb3I6ZCxEdTooKT0+e3ZhciBtPWpUKGEoKSksbj1nVChiKCkpLHA9bCgpLHI9aCgpO3JldHVybihtLnZhLWhUKF8uQihuW3BdLGVUKSkpL20udmEqcn19KSkpfSwicGMiKSx6bWE9Xy5MKCh7Tnk6YSxjaGFwdGVyczpiLGluZGV4OmMsQ3o6ZCxEdTplLHByb2dyZXNzQ29sb3I6Zn0pPT57dmFyIGg9Xy5QKCJ5dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyQ2hhcHRlciIsCnt5dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyQ2hhcHRlcklzU2NydWJiaW5nOigpPT5rKCkuYm0seXRDaGFwdGVyZWRQcm9ncmVzc0JhckhvdmVyZWRNYWNyb01hcmtlcjooKT0+aygpLkJnLHl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyU2VlbjooKT0+aygpLkxkPT09InNlZW4ifSksaz0oKT0+aVQoYSgpLGIoKSxjKCkpLGw9KCk9Pnt2YXIgbT1mPy4oKTtyZXR1cm4gbSE9PXZvaWQgMD9fLkpFKG0pOnZvaWQgMH07cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6aCxzdHlsZTpfLklFKHt3aWR0aDooKT0+e3ZhciBtPWEoKSxuPWIoKSxwPWMoKSxyPV8uQihuW3BdLGVUKTtuPV8uQihuW3ArMV0sZVQpO3JldHVybmAkeyhuP2hUKG4pLWhUKHIpOm0udmlkZW9EdXJhdGlvbi1oVChyKSkvbS52aWRlb0R1cmF0aW9uKjEwMH0lYH0sImJhY2tncm91bmQtY29sb3IiOigpPT57YTp7dmFyIG09aygpO3N3aXRjaChtLkxkKXtjYXNlICJwZW5kaW5nIjptPQptLkJnPyJ3aGl0ZSI6InJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSkiO2JyZWFrIGE7Y2FzZSAiYWN0aXZlIjptPW0uQmc/IndoaXRlIjoicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KSI7YnJlYWsgYTtkZWZhdWx0Om09IiJ9fXJldHVybmAke219YH0sImJhY2tncm91bmQtc2l6ZSI6KCk9PmAke29UKGsoKSk/ZCgpOiIifXB4YCwiYmFja2dyb3VuZC1wb3NpdGlvbi14IjooKT0+YCR7b1QoaygpKT9lKCk6IiJ9cHhgLGJhY2tncm91bmQ6KCk9PmsoKS5MZD09PSJzZWVuIj9sKCk6dm9pZCAwfSl9LF8uSygiZGl2Iix7Y2xhc3M6Inl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJMb2FkZWQiLHN0eWxlOigpPT57dmFyIG09YSgpLG49YigpLHA9YygpO2lmKGlUKG0sbixwKS5MZD09PSJzZWVuIil2YXIgcj0wO2Vsc2Ugcj1oVChfLkIobltwXSxlVCkpLG49aFQoXy5CKG5bcCsxXSxlVCkpfHxtLnZpZGVvRHVyYXRpb24sbT1tLnZpZGVvRHVyYXRpb24qbS5RbSxyPW48PQptPzE6cj49bT8wOihtLXIpLyhuLXIpO3JldHVybmB3aWR0aDogJHtyKjEwMH0lYH19KSxfLksoImRpdiIse2NsYXNzOiJ5dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyRmlsbCIsc3R5bGU6Xy5JRSh7d2lkdGg6KCk9PmAke25UKGEoKSxiKCksYygpKSoxMDB9JWAsImJhY2tncm91bmQtc2l6ZSI6KCk9PmAke29UKGsoKSxuVChhKCksYigpLGMoKSkpP2QoKToiIn1weGAsImJhY2tncm91bmQtcG9zaXRpb24teCI6KCk9PmAke29UKGsoKSxuVChhKCksYigpLGMoKSkpP2UoKToiIn1weGAsYmFja2dyb3VuZDpsfSl9KSl9LCJxYyIpO3ZhciB2Vj1fLkwoKHtMYjphLGNvbmZpZzpifSk9Pnt2YXIgYz0oKT0+e3ZhciBkPShiKCkuU2k/Lk11Pz8wKSoxMDAsZT0oYigpLlNpPy5MdT8/MCkqMTAwLGY9ZS1kO3JldHVybiBmPjAmJmY8MTA/KGY9KDEwLWYpLzIsZC1mPj0wJiZlK2Y8MTAwP1tkLWYsZStmXTpkLWY8MD9bMCwxMF06WzkwLDEwMF0pOltkLGVdfTtyZXR1cm4gXy5LKCJ5dC1mb2N1c2VkLWNoYXB0ZXItcHJvZ3Jlc3MtYmFyLWxpbmUiLHtjbGFzczoieXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZUhvc3QifSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZSIse3l0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmVSb3VuZGVkOigpPT5iKCkuWHoseXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0OigpPT5iKCkucG9zaXRpb249PT0yfSl9LF8uSygiZGl2IiwKe2NsYXNzOiJ5dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJCYWNrZ3JvdW5kIixzdHlsZTooKT0+YHdpZHRoOiAke2MoKVsxXS1jKClbMF19JTsgbGVmdDogJHtjKClbMF19JWB9LF8uSygiZGl2Iix7Y2xhc3M6Inl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhclBsYXllZCIsc3R5bGU6KCk9Pnt2YXIgZD1iKCkuU2k/Lk11Pz8wLGU9YigpLlNpPy5MdT8/MCxmPXdTKGEoKSk7cmV0dXJuYHdpZHRoOiAke2Y8ZD8wOmY+ZXx8ZT09PWQ/MTAwOihmLWQpLyhlLWQpKjEwMH0lO2B9fSkpKSl9LCJyYyIpO3ZWLmlkb21Db21wYXQ9ITA7dmFyIEJtYT0oKGEsYj1abGEpPT57dmFyIGMsZD1bXSxlLGY9ITE7cmV0dXJuIGZ1bmN0aW9uKC4uLmgpe2lmKGYmJmM9PT10aGlzJiZiKGgsZCkpcmV0dXJuIGU7ZT1hLmFwcGx5KHRoaXMsaCk7Zj0hMDtjPXRoaXM7ZD1oO3JldHVybiBlfX0pKGE9Pnt2YXIge21pbkhlaWdodERwOmI9MCxtYXhIZWlnaHREcDpjPTYwLGhlYXRNYXJrZXJzOmR9PWEsZT0xRTMvZC5sZW5ndGg7YT1bXTthLnB1c2goe3g6MCx5OjEwMH0pO2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgaD0oZisuNSkqZSxrPTEwMC1EUSgoXy5CKGRbZl0sZ21hKT8uaGVhdE1hcmtlckludGVuc2l0eVNjb3JlTm9ybWFsaXplZHx8MCkqMTAwLGIvMzIxKjEwMCxjLzMyMSoxMDApO2YhPT0wfHxhLnB1c2goe3g6MCx5Omt9KTthLnB1c2goe3g6aCx5Omt9KTtmPT09ZC5sZW5ndGgtMSYmYS5wdXNoKHt4OjFFMyx5Omt9KX1hLnB1c2goe3g6MUUzLHk6MTAwfSk7ZT0iIjtmb3IoZj0wO2Y8YS5sZW5ndGg7ZisrKXtoPQphW2ZdO2lmKGY9PT0wKWg9YE0gJHtoLngudG9GaXhlZCgxKX0sJHtoLnkudG9GaXhlZCgxKX1gO2Vsc2V7az1MUihhW2YtMV0sYVtmLTJdLGgpO2xldCBsPUxSKGgsYVtmLTFdLGFbZisxXSwhMCk7aD1gICR7YEMgJHtrLngudG9GaXhlZCgxKX0sJHtrLnkudG9GaXhlZCgxKX0gJHtsLngudG9GaXhlZCgxKX0sJHtsLnkudG9GaXhlZCgxKX0gJHtoLngudG9GaXhlZCgxKX0sJHtoLnkudG9GaXhlZCgxKX1gfWB9ZSs9aH1yZXR1cm4gZX0pO3ZhciBDbWE9Xy5MKCh7TGI6YSxjb25maWc6YixoaWdoQ29udHJhc3Q6Y30pPT57Yz1fLlAoInl0SGVhdFNlZWtlckhvc3QiLHt5dEhlYXRTZWVrZXJIaWdoQ29udHJhc3Q6Y30pO3JldHVybiBfLksoInl0LXByb2dyZXNzLWJhci1oZWF0c2Vla2VyIix7Y2xhc3M6YyxzdHlsZTooKT0+YGhlaWdodDogMzIwcHg7IGRpc3BsYXk6ICR7YSgpLmlzRHJhZ2dpbmcmJkZTKGIoKS5SYSk/LmhlYXRNYXJrZXJzPyJibG9jayI6Im5vbmUifWB9LF8uSyhfLk8se0E6KCk9PkZTKGIoKS5SYSksdGhlbjpkPT5fLksoXy5PLHtBOigpPT5kKCkuaGVhdE1hcmtlcnMsdGhlbjooKT0+Xy5LKCJzdmciLHt3aWR0aDoiMTAwJSIsaGVpZ2h0OiIzMjBweCIsdmlld0JveDoiMCAwIDEwMDAgMTAwIixwcmVzZXJ2ZUFzcGVjdFJhdGlvOiJub25lIn0sXy5LKCJwYXRoIix7ZDooKT0+Qm1hKGQoKSl9KSksZGVidWdJbnN0YW5jZToiR2ppMFNlIn0pLGRlYnVnSW5zdGFuY2U6ImlWVFh3ZiJ9KSl9LCJzYyIpO3ZhciB3Vj1fLkwoKHtMYjphLGNvbmZpZzpifSk9Pnt2YXIgYz1fLlAoInl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5lIix7eXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmVSb3VuZGVkOigpPT5iKCkuWHoseXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmVCb3R0b21JbnNldDooKT0+YigpLnBvc2l0aW9uPT09Mn0pO3JldHVybiBfLksoInl0LXByb2dyZXNzLWJhci1saW5lIix7Y2xhc3M6Inl0UHJvZ3Jlc3NCYXJMaW5lSG9zdCJ9LF8uSygiZGl2Iix7Y2xhc3M6Y30sXy5LKCJkaXYiLHtjbGFzczoieXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckJhY2tncm91bmQifSksXy5LKCJkaXYiLHtjbGFzczoieXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxvYWRlZCIsc3R5bGU6KCk9PmB3aWR0aDogJHthKCkuUW0qMTAwfSVgfSksXy5LKCJkaXYiLHtjbGFzczoieXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckhvdmVyZWQiLHN0eWxlOigpPT57dmFyIGQ9CmEoKTtyZXR1cm5gd2lkdGg6ICR7KGQudmlkZW9EdXJhdGlvbj9EUShkLmRqL2QudmlkZW9EdXJhdGlvbiwwLDEpOjApKjEwMH0lYH19KSxfLksoImRpdiIse2NsYXNzOiJ5dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVkIixzdHlsZTpfLklFKHt3aWR0aDooKT0+YCR7d1MoYSgpKSoxMDB9JWAsYmFja2dyb3VuZDooKT0+YigpLnByb2dyZXNzQ29sb3IhPT12b2lkIDA/Xy5KRShiKCkucHJvZ3Jlc3NDb2xvcik6dm9pZCAwfSl9KSkpfSwidGMiKTt3Vi5pZG9tQ29tcGF0PSEwO3ZhciB4Vj1fLkwoKHtMYjphLGhmOmIsQng6YyxXdzpkfSk9Pnt2YXIgZT1fLlAoInl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWREb3QiLHt5dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkRG90TGFyZ2U6KCk9PmEoKS5pc0RyYWdnaW5nLHl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWREb3RIaWRlOigpPT4hYSgpLmlzRHJhZ2dpbmcmJmQoKX0pO3JldHVybiBfLksoInl0LXByb2dyZXNzLWJhci1wbGF5aGVhZCIse2NsYXNzOiJ5dFByb2dyZXNzQmFyUGxheWhlYWRIb3N0IixzdHlsZTpfLklFKHsibWFyZ2luLWxlZnQiOigpPT5gJHt4UyhhKCkpKjEwMH0lYCx0cmFuc2Zvcm06KCk9PmI/LigpPy5wbGF5aGVhZEltYWdlP2B0cmFuc2xhdGVYKC0ke2MoKT94UyhhKCkpKjIwOjEwfXB4KWA6YHRyYW5zbGF0ZVgoLSR7YygpP3hTKGEoKSkqMTI6Nn1weClgfSl9LF8uSyhfLk8se0E6KCk9PmI/LigpPy5wbGF5aGVhZEltYWdlLAp0aGVuOmY9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkQ3VzdG9tIix7eXRQcm9ncmVzc0JhclBsYXloZWFkUHJvZ3Jlc3NCYXJQbGF5aGVhZEN1c3RvbUxhcmdlOigpPT5hKCkuaXNEcmFnZ2luZyx5dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkQ3VzdG9tSGlkZTooKT0+IWEoKS5pc0RyYWdnaW5nJiZkKCl9KSxzdHlsZTpfLklFKHsidHJhbnNmb3JtLW9yaWdpbiI6KCk9PmAke2MoKT94UyhhKCkpKjIwOjEwfXB4IGNlbnRlcmB9KX0sXy5LKF8uakYse2RhdGE6ZixhbHQ6IiIsImFyaWEtaGlkZGVuIjoidHJ1ZSIsVGI6ITF9KSksVzooKT0+Xy5LKCJkaXYiLHtjbGFzczplLHN0eWxlOl8uSUUoeyJ0cmFuc2Zvcm0tb3JpZ2luIjooKT0+YCR7YygpP3hTKGEoKSkqMTI6Nn1weCBjZW50ZXJgfSl9KX0pKX0sInVjIik7eFYuaWRvbUNvbXBhdD0hMDt2YXIgRG1hPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQsZSxmKXt0aGlzLkk9YTt0aGlzLkI9Yjt0aGlzLks9Yzt0aGlzLlU9ZDt0aGlzLlo9ZTt0aGlzLk09Zjt0aGlzLnN0YXJ0UG9zaXRpb249bnVsbDt0aGlzLmo9dGhpcy52PXRoaXMubz0hMTt0aGlzLkQ9bmV3IF8uV3QodGhpcy5ZLDEwMCx0aGlzKX1ZKGEsYixjKXtpZihiPWIuSCl7aWYoYi5nZXRWaWRlb0RhdGEoKT8uaXNMaXZlKXtsZXQgZD10aGlzLmdldFByb2dyZXNzU3RhdGUoYik7YSs9ZD8uc2Vla2FibGVTdGFydHx8MH1iLnNlZWtUbyhhLHZvaWQgMCx2b2lkIDAsdm9pZCAwLGMpfX1nZXRQcm9ncmVzc1N0YXRlKGEpe3ZhciBiPWE/LmdldFByZXNlbnRpbmdQbGF5ZXJUeXBlKCk7cmV0dXJuIGE/LmdldFByb2dyZXNzU3RhdGUoYil9fTt2YXIgRm1hPV8uTCgoe0xiOmEsY29uZmlnOmIsWm06YyxSYTpkfSk9Pnt2YXIgZT1EVChhLCgpPT5iKCkuSWIpLGY9KCk9PiFhKCkuUWMmJiFiKCkuSWIsaD1fLlAoInl0UGxheWVyU3Rvcnlib2FyZEhvc3QiLCJ5dFBsYXllclN0b3J5Ym9hcmRIb3N0QmlnYm9hcmQiLHt5dFBsYXllclN0b3J5Ym9hcmRIb3N0TXdlYlNob3J0czooKT0+YigpLkliJiYhMH0pO3JldHVybiBfLksoInl0LXBsYXllci1zdG9yeWJvYXJkIixudWxsLF8uSyhfLk8se0E6KCk9PmEoKS5pc0RyYWdnaW5nfHxhKCkuUWMsdGhlbjooKT0+Xy5LKF8uTyx7QTplLHRoZW46KCk9Pl8uSyhfLk8se0E6Zix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOmgsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LF8uSyh5Vix7cHJvcHM6YSxjb25maWc6YixlZTohMCxSYTpkfSkpLFc6KCk9Pl8uSyhFbWEse3Byb3BzOmEsZnJhbWU6ZSxjb25maWc6YixabTpjLFJhOmR9KX0pfSl9KSl9LCJ2YyIpLEdtYT1fLkwoKHtMYjphLEliOmJ9KT0+Cnt2YXIgYz1EVChhLGIpO3JldHVybiBfLksoInl0LXBsYXllci1iaWctc3Rvcnlib2FyZCIse2NsYXNzOiJ5dFBsYXllclN0b3J5Ym9hcmRCaWdib2FyZFdyYXBwZXIifSxfLksoXy5PLHtBOigpPT5hKCkuaXNEcmFnZ2luZ3x8YSgpLlFjLHRoZW46KCk9Pl8uSyhfLk8se0E6Yyx0aGVuOigpPT5fLksoelYse2ZyYW1lOmMscHJvcHM6YSxlZTohMH0pfSl9KSl9LCJ3YyIpLEVtYT1fLkwoKHtwcm9wczphLGZyYW1lOmIsY29uZmlnOmMsWm06ZCxSYTplfSk9Pnt2YXIgZj1fLlAoInl0UGxheWVyU3Rvcnlib2FyZEhvc3QiLHt5dFBsYXllclN0b3J5Ym9hcmRIb3N0TXdlYlNob3J0czooKT0+YygpLkliJiYhMCx5dFBsYXllclN0b3J5Ym9hcmRIb3N0SW5saW5lUGxheWVyOigpPT5jKCkueHEseXRQbGF5ZXJTdG9yeWJvYXJkSG9zdEZhZGVJbjooKT0+YygpLnVzZUZhZGVJbkFuaW1hdGlvbn0pLGg9KCk9PntpZighXy54KCJlbmFibGVfd2ViX3dhdGNoX25leHRfaW1wX2NsaWVudCIpfHwhYygpLnhxKXJldHVybiAxOwp2YXIgaz1hKCkuSD8uZ2V0U2l6ZSgpPy5oZWlnaHQ/PzA7cmV0dXJuIGs+MCYmazwxNjA/ay8xNjA6MX07cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6ZiwiYXJpYS1oaWRkZW4iOiJ0cnVlIixzdHlsZTpfLklFKCgpPT57dmFyIGs9YSgpLGw9eVQoYigpKSpoKCksbT1kKCk7az1BVChrKS9rLnZpZGVvRHVyYXRpb247dmFyIG49bSprLHA9bC8yKzY7bD1tLShsLzIrNik7cmV0dXJue2xlZnQ6YCR7bjw9cD9wL20qMTAwOm4+PWw/bC9tKjEwMDprKjEwMH0lYCwiLS1zdG9yeWJvYXJkLXNjYWxlIjpgJHtoKCl9YH19KX0sXy5LKF8uTyx7QTooKT0+e3ZhciBrPWEoKTtyZXR1cm4hKGMoKS5JYiYmay52aWRlb0R1cmF0aW9uPDE1KX0sdGhlbjooKT0+Xy5LKHpWLHtmcmFtZTpiLHByb3BzOmEsZWU6ITEsekE6aH0pfSksXy5LKHlWLHtwcm9wczphLGNvbmZpZzpjLGVlOiExLFJhOmV9KSl9LCJ4YyIpLHpWPV8uTCgoe2ZyYW1lOmEscHJvcHM6YixlZTpjLHpBOmR9KT0+e3ZhciBlPSgpPT5iKCkuSD8uZ2V0VmlkZW9Db250ZW50UmVjdCgpPz8Ke3dpZHRoOjAsaGVpZ2h0OjB9LGY9Xy5QKHt5dFBsYXllclN0b3J5Ym9hcmRCaWdib2FyZEltYWdlV3JhcHBlcjpjLHl0UGxheWVyU3Rvcnlib2FyZFN0b3J5Ym9hcmRJbWFnZVdyYXBwZXI6KCk9PiFjKCl9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpmLHN0eWxlOl8uSUUoKCk9Pih7d2lkdGg6YCR7YygpP2UoKS53aWR0aDp5VChhKCkpKihkPy4oKT8/MSl9cHhgLGhlaWdodDpgJHtjKCk/ZSgpLmhlaWdodDp6VChhKCkpKihkPy4oKT8/MSl9cHhgfSkpfSxfLksoSG1hLHtmcmFtZTphLFBBOigpPT55VChhKCkpLE5BOigpPT56VChhKCkpLE9BOigpPT57dmFyIGg9eVQoYSgpKTtyZXR1cm4gaD4wPyhjKCk/ZSgpLndpZHRoOnlUKGEoKSkqKGQ/LigpPz8xKSkvaDoxfX0pKX0sInljIiksSG1hPV8uTCgoe2ZyYW1lOmEsUEE6YixOQTpjLE9BOmR9KT0+Xy5LKCJpbWciLHtzcmM6KCk9PmEoKT8udXJsPz8iIixjbGFzczoieXRQbGF5ZXJTdG9yeWJvYXJkU3Rvcnlib2FyZEltYWdlIixhbHQ6InByZXZpZXctaW1hZ2UiLApzdHlsZTpfLklFKCgpPT57dmFyIGU9YSgpPz97cm93OjAsY29sdW1uOjAsd2lkdGg6MCxoZWlnaHQ6MH0sZj1iKCksaD1jKCksaz1kKCkse2xlZnQ6bCx0b3A6bX09e2xlZnQ6LWUuY29sdW1uKmYqayx0b3A6LWUucm93Kmgqa307cmV0dXJue2xlZnQ6YCR7bH1weGAsdG9wOmAke219cHhgLHdpZHRoOmAke2Uud2lkdGgqa31weGAsaGVpZ2h0OmAke2UuaGVpZ2h0Kmt9cHhgfX0pfSksInpjIikseVY9Xy5MKCh7cHJvcHM6YSxjb25maWc6YixlZTpjLFJhOmR9KT0+e3ZhciBlPV8uUCgieXRQbGF5ZXJTdG9yeWJvYXJkTWV0YWRhdGEiLHt5dFBsYXllclN0b3J5Ym9hcmRNZXRhZGF0YUJpZ2JvYXJkOmN9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczplfSxfLksoXy5PLHtBOmMsdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoQVYse3Byb3BzOmEsY29uZmlnOmJ9KSxfLksoXy5PLHtBOigpPT57YTp7dmFyIGY9YSgpO3ZhciBoPWIoKSxrPWQoKTtpZihoPy5SZyYmXy5CKGg/LlJnLGVUKT8udGl0bGUpZj0KITA7ZWxzZXtmb3IobGV0IGwgb2YgRlMoayk/LmhlYXRNYXJrZXJzRGVjb3JhdGlvbnM/P1tdKXtmPShoPV8uQihsLHFWKSkmJkJUKGYsaCk7YnJlYWsgYX1mPSExfX1yZXR1cm4gZn0sdGhlbjooKT0+Xy5LKEJWLHtwcm9wczphLGNvbmZpZzpiLGVlOiEwLFJhOmR9KX0pKSxXOigpPT5fLksoXy5JQixudWxsLF8uSyhCVix7cHJvcHM6YSxjb25maWc6YixlZTohMCxSYTpkfSksXy5LKEFWLHtwcm9wczphLGNvbmZpZzpifSkpfSkpfSwiQWMiKSxBVj1fLkwoKHtwcm9wczphLGNvbmZpZzpifSk9Pnt2YXIgYz1fLlAoInl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcCIse3l0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcFNob3J0czooKT0+YigpLkliLHl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcElzSG92ZXJpbmc6KCk9PmEoKS5RY3x8YigpLkliJiYhMX0pO3JldHVybiBfLksoImRpdiIse2NsYXNzOmN9LF8uSyhfLklCLG51bGwsKCk9PkNUKEFUKGEoKSkpKSl9LCJCYyIpLEJWPV8uTCgoe3Byb3BzOmEsCmNvbmZpZzpiLGVlOmMsUmE6ZH0pPT57Yz1fLlAoInl0UGxheWVyU3Rvcnlib2FyZFRpdGxlIix7eXRQbGF5ZXJTdG9yeWJvYXJkVGl0bGVCaWdib2FyZDpjfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Y30sXy5LKF8uTyx7QTooKT0+IWIoKS5JYix0aGVuOigpPT5fLksoSW1hLHtwcm9wczphLFJnOigpPT5iKCkuUmcsUmE6ZH0pfSkpfSwiQ2MiKSxJbWE9Xy5MKCh7cHJvcHM6YSxSZzpiLFJhOmN9KT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5nRyx7cGE6KCk9Pnt2YXIgZD1jKCk7cmV0dXJuIEZTKGQpPy5oZWF0TWFya2Vyc0RlY29yYXRpb25zPz9bXX0sdGI6IklOREVYIn0sZD0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOigpPT5fLkIoZCgpLHFWKSYmQlQoYSgpLF8uQihkKCkscVYpKSx0aGVuOigpPT5fLksoSm1hLHtjQjooKT0+Xy5CKGQoKSxxVil9KX0pKSksXy5LKF8uTyx7QTooKT0+YigpJiZfLkIoYigpLGVUKT8udGl0bGUsdGhlbjpkPT5fLksoXy5WLHt0ZXh0OmQscmc6ITB9KX0pKSwKIkRjIiksSm1hPV8uTCgoe2NCOmF9KT0+Xy5LKF8uSUIsbnVsbCxfLksoImRpdiIse2NsYXNzOiJ5dFBsYXllclN0b3J5Ym9hcmRUaW1lZE1hcmtlckljb25XcmFwcGVyIn0sXy5LKF8uTUQse2ljb246KCk9PmEoKS5pY29uLGNsYXNzTmFtZToieXRQbGF5ZXJTdG9yeWJvYXJkVGltZWRNYXJrZXJJY29uIn0pKSxfLksoXy5WLHt0ZXh0OigpPT5hKCkubGFiZWwscmc6ITB9KSksIkVjIik7dmFyIENWPV8uTCgoe0xiOmEsaGY6Yixjb25maWc6Y30pPT57dmFyIGQ9Xy51RSgieXQtcHJvZ3Jlc3MtYmFyIiksZT1fLnVFKCJkaXYiKSxmPV8udUUoImRpdiIpLFtoLGtdPV8uSih7d2lkdGg6MCxsZWZ0OjB9LHZvaWQgMCwiZDFic2JmIiksbD0oKT0+e2YudmFsdWUmJmsoZi52YWx1ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSl9LG09KCk9PntoKCkud2lkdGg8PTAmJmwoKTtyZXR1cm4gaCgpfTtfLkRQKCJyZXNpemUiLGwpO3ZhciBuPW5ldyBEbWEobSwoKT0+e30sKCk9PjAsKCk9Pnt9LCgpPT57fSwoKT0+e30pLHA9KCk9PmEoKSxbcix0XT1fLkooITEsdm9pZCAwLCJjVnNUSyIpO18uRFAoIm1vdXNlbW92ZSIsWWthKG4scCxjKSk7Xy5EUCgibW91c2V1cCIseFQobixwLGMpKTt2YXIgdjtfLlVKKCgpPT57R2thKGUudmFsdWUpO3QoITEpO2woKTt4VChuLHAsYykoKTtjKCkuaWomJih2PW5ldyBSZXNpemVPYnNlcnZlcihsKSx2Lm9ic2VydmUoZi52YWx1ZSkpO18uWXUoKCk9Pgp7dj8uZGlzY29ubmVjdCgpfSl9KTt2YXIgej1fLlAoInl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0IiwoKT0+YygpLmNsYXNzTmFtZSx7eXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RSZWFkT25seTooKT0+YygpLmRpc2FibGVTY3J1YmJpbmcseXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RIaWRkZW46KCk9PmMoKS5rSiYmIXIoKSx5dFBsYXllclByb2dyZXNzQmFySG9zdExvd2VyUGxheWVyOigpPT5jKCkucG9zaXRpb249PT0wLHl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0Qm90dG9tRWRnZTooKT0+YygpLnBvc2l0aW9uPT09MSx5dFBsYXllclByb2dyZXNzQmFySG9zdEJvdHRvbUluc2V0OigpPT5jKCkucG9zaXRpb249PT0yLHl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0Q3VzdG9tOigpPT5jKCkucG9zaXRpb249PT0zfSksRT1fLlAoInl0UGxheWVyUHJvZ3Jlc3NCYXJCYWNrZ3JvdW5kIix7eXRQbGF5ZXJQcm9ncmVzc0JhckJhY2tncm91bmRIaWRlOigpPT5jKCkucG9zaXRpb249PT0yJiYhcigpJiYKIWEoKS5pc0RyYWdnaW5nfSksQT1fLlAoInl0UGxheWVyUHJvZ3Jlc3NCYXJEcmFnQ29udGFpbmVyIix7eXRQbGF5ZXJQcm9ncmVzc0JhckRyYWdDb250YWluZXJCb3R0b21FZGdlOigpPT5jKCkucG9zaXRpb249PT0xfSksRj1fLlAoInl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0JhciIse3l0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0Jhckluc2V0OigpPT5jKCkucG9zaXRpb249PT0yLHl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0Jhckluc2V0TWluaW1pemVkOigpPT5jKCkucG9zaXRpb249PT0yJiYhcigpJiYhYSgpLmlzRHJhZ2dpbmd9KSxDPSgpPT5NYXRoLmZsb29yKHdTKGEoKSkqMTAwKTtyZXR1cm4gXy5LKCJ5dC1wcm9ncmVzcy1iYXIiLHtlbDpkLGNsYXNzOnp9LF8uSyhfLk8se0E6KCk9PmMoKS5wb3NpdGlvbj09PTIsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpFfSl9KSxfLksoImRpdiIse2VsOmUsIm9uOmNsaWNrIjpmdW5jdGlvbihHKXsoYygpLkRJfHx0eXBlb2YgUG9pbnRlckV2ZW50IT09CiJ1bmRlZmluZWQiJiZHIGluc3RhbmNlb2YgUG9pbnRlckV2ZW50JiZHLnBvaW50ZXJUeXBlPT09Im1vdXNlIikmJk9rYShuLHAsYykoRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnRvdWNoc3RhcnQiOmZ1bmN0aW9uKEcpe1BrYShuLHApKEcpO0cuc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjp0b3VjaG1vdmUiOmZ1bmN0aW9uKEcpe1JrYShuLHAsYykoRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOm1vdXNlZW50ZXIiOmZ1bmN0aW9uKCl7dCghMCk7YygpLnBvc2l0aW9uPT09Mj9zZXRUaW1lb3V0KCgpPT57bCgpfSwxMDApOmwoKX0sIm9uOm1vdXNlZG93biI6ZnVuY3Rpb24oRyl7UWthKG4scCkoRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOm1vdXNlbGVhdmUiOmZ1bmN0aW9uKCl7dCghMSk7VGthKHApKCl9LCJvbjptb3VzZW1vdmUiOmZ1bmN0aW9uKEcpe1NrYShuLHAsYykoRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOm1vdXNldXAiOmZ1bmN0aW9uKEcpe1ZrYShuLApwLGMpKEcpO3IoKSYmYSgpLlMoe1FjOiEwfSk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnRvdWNoZW5kIjpmdW5jdGlvbihHKXtVa2EobixwLGMpKEcpO0cuc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjp0b3VjaGNhbmNlbCI6ZnVuY3Rpb24oRyl7V2thKG4scCxjKShHKTtHLnN0b3BQcm9wYWdhdGlvbigpfSwib246a2V5ZG93biI6ZnVuY3Rpb24oRyl7WGthKHApKEcpO0cuc3RvcFByb3BhZ2F0aW9uKCl9LGNsYXNzOkEscm9sZToic2xpZGVyIiwiYXJpYS12YWx1ZW5vdyI6QywiYXJpYS12YWx1ZXRleHQiOigpPT5gJHtDKCl9JWAsImFyaWEtdmFsdWVtaW4iOigpPT4wLCJhcmlhLXZhbHVlbWF4IjooKT0+MTAwLGRyYWdnYWJsZToiZmFsc2UiLHRhYmluZGV4OjAsImFyaWEtbGFiZWwiOl8uYUEoIlNFRUtfU0xJREVSIil9LF8uSygiZGl2Iix7ZWw6ZixjbGFzczpGfSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRQbGF5ZXJQcm9ncmVzc0JhckhlYXRzZWVrZXJDb250YWluZXIiLHt5dFBsYXllclByb2dyZXNzQmFySGVhdHNlZWtlckNvbnRhaW5lckluc2V0OigpPT4KYygpLnBvc2l0aW9uPT09Mn0pfSxfLksoQ21hLHtMYjphLGNvbmZpZzpjLGhpZ2hDb250cmFzdDooKT0+ISFjKCkuaWomJmMoKS5wb3NpdGlvbiE9PTJ9KSksXy5LKF8uTyx7QTooKT0+YygpLlJhJiZ6a2EoYygpLlJhKSx0aGVuOigpPT5fLksoQW1hLHtKejphLG11bHRpTWFya2Vyc1BsYXllckJhclJlbmRlcmVyOigpPT5jKCkuUmEscHJvZ3Jlc3NCYXJXaWR0aDooKT0+aCgpLndpZHRoLHByb2dyZXNzQ29sb3I6KCk9PmMoKS5wcm9ncmVzc0NvbG9yfSksVzooKT0+Xy5LKF8uTyx7QTooKT0+YygpLlNpLHRoZW46KCk9Pl8uSyh2Vix7TGI6YSxjb25maWc6Y30pLFc6KCk9Pl8uSyh3Vix7TGI6YSxjb25maWc6Y30pfSl9KSxfLksoeFYse0xiOmEsaGY6KCk9Pl8ueCgiZW5hYmxlX2N1c3RvbV9zY3J1YmJlcl92MiIpP2MoKS5oZjpiPy4oKSxCeDooKT0+YygpLnBvc2l0aW9uIT09MixXdzooKT0+YygpLnhyPT09MSYmIXIoKXx8YygpLnhyPT09Mn0pKSksXy5LKEZtYSx7TGI6YSxjb25maWc6KCk9Pgooe1JnOmxUKGEoKSxjKCkuUmEpLGRKOigpPT5tKCkud2lkdGgsSWI6ISFjKCkuSWIseHE6ISFjKCkuaWosdXNlRmFkZUluQW5pbWF0aW9uOiEhYygpLmlqfSksWm06KCk9PmgoKS53aWR0aCxSYTooKT0+YygpLlJhfSkpfSwiRmMiKTtDVi5pZG9tQ29tcGF0PSEwO3ZhciBEVj1fLkwoYT0+e3ZhciBiPSgpPT57dmFyIGQ9YS5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LigpO2lmKGQpcmV0dXJuIHpTKGQpfSxjPSgpPT57dmFyIGQ9YigpO2lmKGQpe3ZhciBlPWEuSm8oKS5hdXRvbmF2RW5hYmxlZDtyZXR1cm4gXy5hTihlP18uQihkLmVuYWJsZWRFZHVDb21tYW5kLFdVKT8udGV4dDpfLkIoZC5kaXNhYmxlZEVkdUNvbW1hbmQsV1UpPy50ZXh0KX19O3JldHVybiBfLksoXy5PLHtBOigpPT5hLkpvKCkuWWgmJiEhYigpLHRoZW46KCk9Pl8uSygiYXV0b25hdi10b29sdGlwIix7Y2xhc3M6Inl0d0F1dG9uYXZUb29sdGlwSG9zdCIscm9sZToiYWxlcnQifSxfLksoInNwYW4iLHsiYXJpYS1sYWJlbCI6Yyxyb2xlOiJ0ZXh0In0sYykpfSl9LCJHYyIpO0RWLmlkb21Db21wYXQ9ITA7dmFyIEVWPV8uTChhPT57dmFyIGI9Xy52RSgic3BlZWRtYXN0ZXItdG9vbHRpcCIpLGM9Xy5OKCgpPT5hLkcoKS5zYix2b2lkIDAsIkVzVFJsYyIpO18ubkUoKCk9PntpZihjKCkmJmIudmFsdWUpe2xldCBkPW51bGw7U1MoMTczMDQwLGIudmFsdWUsZCxlPT57ZD1lfSl9fSwiQXZwR0lmIik7cmV0dXJuIF8uSyhfLk8se0E6Yyx0aGVuOigpPT5fLksoInNwZWVkbWFzdGVyLXRvb2x0aXAiLHtlbDpiLGNsYXNzOiJ5dHdTcGVlZG1hc3RlclRvb2x0aXBIb3N0In0sXy5LKCJkaXYiLHtjbGFzczoieXR3U3BlZWRtYXN0ZXJUb29sdGlwTGFiZWwifSxfLiROLkd0KSxfLksoXy5NRCx7aWNvbjoiRkFTVF9GT1JXQVJEIixhY3RpdmU6ITAsY2xhc3NOYW1lOiJ5dHdTcGVlZG1hc3RlclRvb2x0aXBJY29uIn0pKX0pfSwiSWMiKTtFVi5pZG9tQ29tcGF0PSEwO3ZhciBGVj1fLkwoYT0+Xy5LKCJwbGF5ZXItdXNlci1lZHUtdG9vbHRpcCIse2NsYXNzOiJ5dHdQbGF5ZXJVc2VyRWR1VG9vbHRpcEhvc3QifSxfLksoRFYse0pvOmEuRyxwbGF5ZXJPdmVybGF5UmVuZGVyZXI6YS5wbGF5ZXJPdmVybGF5UmVuZGVyZXJ9KSxfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJVc2VyRWR1VG9vbHRpcFRvb2x0aXBDb250YWluZXIifSxfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJVc2VyRWR1VG9vbHRpcFRvb2x0aXBXcmFwcGVyIn0sXy5LKEVWLHtHOmEuR30pKSkpLCJKYyIpO0ZWLmlkb21Db21wYXQ9ITA7dmFyIFprYT1bMCwxLDIwLDIxXTt2YXIgYWxhPVswLDEsMjAsMjFdLEdUPXZvaWQgMDt2YXIgS21hPV8uTCgoe3VkOmEsRXI6Yn0pPT57ZnVuY3Rpb24gYyhwKXtwLnRvdWNoZXM/LlswXSYmKHA9cC50b3VjaGVzWzBdLGsoe3g6cC5wYWdlWCx5OnAucGFnZVl9KSl9ZnVuY3Rpb24gZChwKXt2YXIgcj1oKCk7aWYoIXJ8fCFwLnRvdWNoZXM/LlswXSlyZXR1cm4gbnVsbDtwPXAudG91Y2hlc1swXTtyZXR1cm57bGs6cC5wYWdlWC1yLngsT2Q6cC5wYWdlWS1yLnl9fXZhciBbZSxmXT1fLkoobnVsbCx2b2lkIDAsIkFoMzBnIiksaD1lLGs9ZixbbCxtXT1fLkoodm9pZCAwLHZvaWQgMCwiUW83NmhkIik7Xy5ZdSgoKT0+e0ZUKGEoKSk7bShFVChsKCkpKX0pO3ZhciBuPXtHYjooKT0+Xy5LKCJkaXYiLG51bGwsXy5LKF8uVyx7ZGF0YTooKT0+Yj8uKCk/Lm1lbnVSZW5kZXJlcj8uaXRlbXN8fFtdfSx7bGlzdEl0ZW1WaWV3TW9kZWw6KHtkYXRhOnB9KT0+Xy5LKF8ucEwse2RhdGE6cCxJYTohMH0pLHN3aXRjaExpc3RJdGVtVmlld01vZGVsOl8uZkp9KSksSGE6ITB9O3JldHVybiBfLksoInl0bS1zaG9ydHMtZ2VzdHVyZS1vdmVybGF5LWNvbnRyb2xzIiwKe2NsYXNzOiJ5dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzR2VzdHVyZU92ZXJsYXkifSxfLksoRlYse0c6YX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNHZXN0dXJlQ29udGFpbmVyIn0sXy5LKCJkaXYiLHtjbGFzczoieXRtU2hvcnRzR2VzdHVyZU92ZXJsYXlDb250cm9sc1NwZWVkbWFzdGVyR2VzdHVyZUFyZWEiLCJvbjp0b3VjaHN0YXJ0IjpwPT57YyhwKTtIVChhKCkscC50b3VjaGVzLmxlbmd0aCl9LCJvbjp0b3VjaG1vdmUiOnA9Pnt2YXIgcj1kKHApO3ImJklUKHAscixhKCkpfSwib246dG91Y2hlbmQiOigpPT57RlQoYSgpKTtrKG51bGwpfSwib246dG91Y2hjYW5jZWwiOigpPT57RlQoYSgpKTtrKG51bGwpfX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNNZW51R2VzdHVyZUFyZWEiLCJvbjp0b3VjaHN0YXJ0IjpwPT57YyhwKTttKCRrYShhKCkscC50b3VjaGVzLmxlbmd0aCwKKCk9PntfLnlOKG4pfSxsKCkpKX0sIm9uOnRvdWNobW92ZSI6cD0+e3ZhciByPWQocCk7aWYocil7cD1sKCk7dmFyIHQ9ci5saztyPXIuT2Q7cD1NYXRoLnNxcnQodCp0K3Iqcik+Xy5zaigic3BlZWRtYXN0ZXJfY2FuY2VsbGF0aW9uX21vdmVtZW50X2RwIiwxMCk/RVQocCk6cDttKHApfX0sIm9uOnRvdWNoZW5kIjooKT0+e20oRVQobCgpKSk7ayhudWxsKX0sIm9uOnRvdWNoY2FuY2VsIjooKT0+e20oRVQobCgpKSk7ayhudWxsKX19KSxfLksoImRpdiIse2NsYXNzOiJ5dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzU3BlZWRtYXN0ZXJHZXN0dXJlQXJlYSIsIm9uOnRvdWNoc3RhcnQiOnA9PntjKHApO0hUKGEoKSxwLnRvdWNoZXMubGVuZ3RoKX0sIm9uOnRvdWNobW92ZSI6cD0+e3ZhciByPWQocCk7ciYmSVQocCxyLGEoKSl9LCJvbjp0b3VjaGVuZCI6KCk9PntGVChhKCkpO2sobnVsbCl9LCJvbjp0b3VjaGNhbmNlbCI6KCk9PntGVChhKCkpO2sobnVsbCl9fSkpKX0sIktjIik7dmFyIEdWPV8uTChhPT57dmFyIGI9Xy51RSgiZGl2IiksYz1fLk4oKCk9PmEudGh1bWJuYWlsRGV0YWlscz8uKCksdm9pZCAwLCJFODhVR2QiKSxkPV8uTigoKT0+YS5HKCkuYmEsdm9pZCAwLCJYdEdBbWUiKTtfLm5FKCgpPT57Y2xhKGIudmFsdWUsYygpLGQoKSl9LCJ5QWtpaWMiKTtyZXR1cm4gXy5LKCJ2aWRlby1jb3ZlciIse2NsYXNzOl8uUCgieXRtVmlkZW9Db3Zlckhvc3QiLHtlbmRlZDooKT0+dVMoYS5HKCkpLGhpZGRlbjooKT0+e3ZhciBlPWEuRygpO3JldHVybiEoJFMoZSl8fHVTKGUpKX19KX0sXy5LKCJkaXYiLHtjbGFzczoieXRtVmlkZW9Db3ZlclRodW1ibmFpbCIsZWw6Yn0pKX0sIk1jIik7R1YuaWRvbUNvbXBhdD0hMDtuZXcgXy5XdChlbGEsMjAwKTt2YXIgU1Q9MDt2YXIgVVQ9SlIoKSxWVD0hMTtuZXcgXy5DdCgicGxheWVyU2V0dGluZ3NNZW51IiwiTnhkM3VmIik7dmFyIExtYT1fLkwoKHtnZjphLEV4OmIscmVlbFBsYXllclNjcnViYmVyUmVuZGVyZXI6Y30pPT57dmFyIGQ9Xy5QKCJ5dE13ZWJTaG9ydHNQbGF5ZXJDb250cm9sc0hvc3QiLHt5dE13ZWJTaG9ydHNQbGF5ZXJDb250cm9sc0hvc3RJc1NjcnViYmFibGVNb2RlOigpPT5YVChhKCksYigpKX0se3l0TXdlYlNob3J0c1BsYXllckNvbnRyb2xzSG9zdEhpZGVQcm9ncmVzc0JhcjooKT0+V1QoYSgpLGIoKSkmJmEoKS52aWRlb0R1cmF0aW9uPD0zMH0pO3JldHVybiBfLksoImRpdiIse2NsYXNzOmR9LF8uSyhDVix7TGI6YSxjb25maWc6KCk9Pnt2YXIgZT17SWI6ITAscG9zaXRpb246MyxkaXNhYmxlU2NydWJiaW5nOiFYVChhKCksYigpKSxJbjohMSx4cjpYVChhKCksYigpKT8wOjEsb25Ub3VjaE1vdmU6KCk9PnthKCkuZ2V8fChhKCkuUyh7Z2U6ITB9KSx3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInVwZGF0ZS1zaG9ydHMtb3ZlcmxheS12aXNpYmlsaXR5Iix7YnViYmxlczohMCwKZGV0YWlsOntnZTohMH19KSkpfSxvblRvdWNoRW5kOmg9PntVUyhoKTthKCkuUyh7Z2U6ITF9KTt3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInVwZGF0ZS1zaG9ydHMtb3ZlcmxheS12aXNpYmlsaXR5Iix7YnViYmxlczohMCxkZXRhaWw6e2dlOiExfX0pKX19LGY9Yz8uKCk7cmV0dXJuIGY/LnBsYXloZWFkSW1hZ2U/ey4uLmUsaGY6e3BsYXloZWFkSW1hZ2U6Zi5wbGF5aGVhZEltYWdlfX06ZX19KSl9LCJRYyIpLE1tYT1fLkwoKHtIOmEsY29udGV4dDpiLHJlZWxQbGF5ZXJTY3J1YmJlclJlbmRlcmVyOmMsRXI6ZH0pPT57dmFyIFtlLGZdPV8uSighMSx2b2lkIDAsIlFjWlNnZCIpLFtoLGtdPV8uSighMSx2b2lkIDAsImNudHpyZiIpLFtsLG1dPV8uSighMSx2b2lkIDAsIlNUSWFlYiIpLFtuLHBdPV8uSighMSx2b2lkIDAsIkN3WGZiYyIpLFtyLHRdPV8uSigwLHZvaWQgMCwiczVLTE1iIiksW3Ysel09Xy5KKDAsdm9pZCAwLCJnamxxTmMiKSxbRSxBXT1fLkooMCwKdm9pZCAwLCJHVWNpWmUiKSxbRixDXT1fLkooIiIsdm9pZCAwLCJ4R0llOCIpLFtHLERdPV8uSighMSx2b2lkIDAsIkZwNUQ0YiIpLEg9Xy5OKCgpPT57dmFyIHBhPXtlYTplKCksZ2U6aCgpLHliOmwoKSxpc0RyYWdnaW5nOm4oKSx2aWRlb0R1cmF0aW9uOnYoKSx2YTpFKCksdmlkZW9JZDpGKCksQ2E6cigpLHNiOkcoKX07cmV0dXJuey4uLmRUKCksLi4ucGEsLi4uKGI/LigpPz97fSksUzpvYT0+e29hLmVhIT09dm9pZCAwJiZmKG9hLmVhKTtvYS5nZSE9PXZvaWQgMCYmayhvYS5nZSk7b2EueWIhPT12b2lkIDAmJm0ob2EueWIpO29hLmlzRHJhZ2dpbmchPT12b2lkIDAmJnAob2EuaXNEcmFnZ2luZyk7b2EuQ2EhPT12b2lkIDAmJnQob2EuQ2EpO29hLnZpZGVvRHVyYXRpb24hPT12b2lkIDAmJnoob2EudmlkZW9EdXJhdGlvbik7b2EudmEhPT12b2lkIDAmJkEob2EudmEpO29hLnZpZGVvSWQhPT12b2lkIDAmJkMob2EudmlkZW9JZCk7b2Euc2IhPT12b2lkIDAmJkQob2Euc2IpfSx0YTp7aXNGdWxsc2NyZWVuOl8uclAsCnRvZ2dsZUZ1bGxzY3JlZW46dWphLGV4aXRGdWxsc2NyZWVuOiRRLGRlOmZsYSxSajpobGEsVWw6aWxhfSxIOmEoKX19LHZvaWQgMCwiVXljTVNiIiksUj1Na2EoSCksTT1Ma2EoSCksUz1La2EoSCksWT0oKT0+e307Xy5vRigoKT0+e3ZhciBwYT1hKCk7cGEmJihwYS5hZGRFdmVudExpc3RlbmVyKCJvblZpZGVvUHJvZ3Jlc3MiLFIpLHBhLmFkZEV2ZW50TGlzdGVuZXIoIm9uVmlkZW9EYXRhQ2hhbmdlIixNKSxwYS5hZGRFdmVudExpc3RlbmVyKCJvblN0YXRlQ2hhbmdlIixTKSl9KTtfLll1KCgpPT57dmFyIHBhPWEoKTtwYSYmcGE/LmlzUmVhZHk/LigpJiYocGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25WaWRlb1Byb2dyZXNzIixSKSxwYS5yZW1vdmVFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsTSkscGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25TdGF0ZUNoYW5nZSIsUykpfSk7cmV0dXJuIF8uSygieXQtbXdlYi1zaG9ydHMtcGxheWVyLWNvbnRyb2xzIix7Y2xhc3M6Xy5QKHtQcm9ncmVzc0JhclNob3dpbmc6KCk9PgpYVChIKCksITApfSl9LF8uSyhfLk8se0E6KCk9PkgoKS5iYT8uWmgsdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoR1Yse0c6SCx0aHVtYm5haWxEZXRhaWxzOll9KSxfLksodVYse0c6SCxIOmF9KSl9KSxfLksoXy5PLHtBOigpPT57dmFyIHBhPUgoKTtyZXR1cm4gWFQocGEsITApfHxXVChwYSwhMCl9LHRoZW46KCk9Pl8uSyhMbWEse2dmOkgsRXg6KCk9PiEwLHJlZWxQbGF5ZXJTY3J1YmJlclJlbmRlcmVyOmN9KX0pLF8uSyhfLk8se0E6KCk9Pl8ueCgibXdlYl9zaG9ydHNfZW5hYmxlX2xvbmdfcHJlc3Nfc3BlZWR1cCIpLHRoZW46KCk9Pl8uSyhfLkNQLHtyb290OiIjZ2VzdHVyZS1sYXllciJ9LCgpPT5fLksoS21hLHt1ZDpILEVyOmR9KSl9KSl9LCJTYyIpO3ZhciBIVj1fLkwoYT0+e2Z1bmN0aW9uIGIoVSl7VSE9PTB8fHIoKT9VPjUwJiYocigpfHwhRSgpKT8odCghMSksQSghMCkpOlU8PTUwJiYocigpfHxFKCkpJiYodCghMSksQSghMSkpOnQoITApfWFzeW5jIGZ1bmN0aW9uIGMoVSxoYSl7KFU9ZSgpPz9hd2FpdCBfLkxIKCkpJiYoaGE/VS51bk11dGUoITApOlUubXV0ZSghMCkpfWFzeW5jIGZ1bmN0aW9uIGQoVSl7dmFyIGhhPWUoKT8/YXdhaXQgXy5MSCgpLG1hPTUwO2hhJiYobWE9aGEuZ2V0Vm9sdW1lKCksaGEuaXNNdXRlZCgpP1pUKFUsMCk6WlQoVSxtYSkpO0cobWEpfXZhciBlPWtsYShhLkgpLGY9Xy51RSgidm9sdW1lLWNvbnRyb2xzIiksaD1fLnVFKCJidXR0b24iKSxrPV8udkUoImlucHV0IiksW2wsbV09Xy5KKCExLHZvaWQgMCwic01jTGxiIiksW24scF09Xy5KKCExLHZvaWQgMCwiZ29OcHYiKSxyPW4sdD1wLFt2LHpdPV8uSighMCx2b2lkIDAsImtBVDk1IiksRT12LEE9eixbRixDXT1fLkooNTAsdm9pZCAwLCJxNXFEMmMiKSwKRz1DLEQ9Xy5OKCgpPT57dmFyIFU9cigpO3JldHVybiBfLngoIndlYl9zaG9ydHNfa2V5Ym9hcmRfZW5hYmxlX211dGVfc2hvcnRjdXQiKT9VP18uYUEoIlBMQVlFUl9MQUJFTF9VTk1VVEUiLHZvaWQgMCwiVW5tdXRlIChtKSIpOl8uYUEoIlBMQVlFUl9MQUJFTF9NVVRFIix2b2lkIDAsIk11dGUgKG0pIik6VT9fLmFBKCJVTk1VVEVfVk9MVU1FIix2b2lkIDAsIlVubXV0ZSIpOl8uYUEoIk1VVEVfVk9MVU1FIix2b2lkIDAsIk11dGUiKX0sdm9pZCAwLCJsUjFzR2MiKSxIPV8uTigoKT0+e3ZhciBVPXIoKSxoYT1FKCk7cmV0dXJue3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOlU/IlZPTFVNRV9PRkZfRklMTEVEIjpoYT8iVk9MVU1FX1VQX0ZJTExFRCI6IlZPTFVNRV9ET1dOX0ZJTExFRCJ9fV19fSx2b2lkIDAsIlNJcWtlYyIpLFI9Xy5OKCgpPT57dmFyIFU9RigpO3JldHVybiByKCk/YCR7VX0lIHZvbHVtZSBtdXRlZGA6YCR7VX0lIHZvbHVtZWB9LHZvaWQgMCwiVGZIUDBkIiksCk09Xy5OKCgpPT5hLm9yaWVudGF0aW9uKCk9PT0idmVydGljYWxfZG93biIsdm9pZCAwLCJaN0YzdWIiKSxTPV8uTigoKT0+TSgpPyJ2ZXJ0aWNhbCI6Imhvcml6b250YWwiLHZvaWQgMCwic1YyTXBiIiksWT1fLk4oKCk9PmEuRHY/LigpPz8hMSx2b2lkIDAsInpvdlVMZSIpLHBhPV8uTigoKT0+YS5DcD8uKCk/PyExLHZvaWQgMCwicEVVaHFlIik7Xy5VSigoKT0+e2Z1bmN0aW9uIFUoKXttKCEwKX1mdW5jdGlvbiBoYSgpe20oITEpfWsmJmsudmFsdWUmJihrLnZhbHVlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixVKSxrLnZhbHVlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3Vzb3V0IixoYSksZChrLnZhbHVlKS50aGVuKCgpPT57YihOdW1iZXIoay52YWx1ZT8udmFsdWU/PzApKX0pKTtoJiZoLnZhbHVlJiYoV1MoaC52YWx1ZSwyODY2MiksaC52YWx1ZS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsVSksaC52YWx1ZS5hZGRFdmVudExpc3RlbmVyKCJmb2N1c291dCIsaGEpKTtfLll1KCgpPT4Ke2s/LnZhbHVlPy5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsVSk7az8udmFsdWU/LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3Vzb3V0IixoYSk7aD8udmFsdWU/LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIixVKTtoPy52YWx1ZT8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXNvdXQiLGhhKX0pfSk7dmFyIG9hPVU9PntVPVUubXV0ZWQ/MDpVLnZvbHVtZTtHKFUpO2IoVSk7ay52YWx1ZSYmWlQoay52YWx1ZSxVKX07Xy5uRSgoKT0+e3ZhciBVPWUoKTtVJiYoVS5hZGRFdmVudExpc3RlbmVyKCJvblZvbHVtZUNoYW5nZSIsb2EpLF8uWXUoKCk9PntVLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uVm9sdW1lQ2hhbmdlIixvYSl9KSl9LCJ4aDNHWmMiKTtyZXR1cm4gXy5LKCJ2b2x1bWUtY29udHJvbHMiLHtjbGFzczpfLlAoInl0ZFZvbHVtZUNvbnRyb2xzSG9zdCIse3l0ZFZvbHVtZUNvbnRyb2xzRGlzYWJsZVNsaWRlcjpwYX0sYS5jbGFzc05hbWUpLGVsOmZ9LF8uSygiZGl2IiwKeyJvbjpwb2ludGVybGVhdmUiOmZ1bmN0aW9uKCl7bSghMSl9LGNsYXNzOl8uUCgieXRkVm9sdW1lQ29udHJvbHNWb2x1bWVDb250cm9sc0NvbnRhaW5lciIse3l0ZFZvbHVtZUNvbnRyb2xzVm9sdW1lQ29udHJvbHNDb250YWluZXJWZXJ0aWNhbDpNLHl0ZFZvbHVtZUNvbnRyb2xzVm9sdW1lQ29udHJvbHNDb250YWluZXJFeHBhbmRlZDooKT0+bCgpfSl9LF8uSyhfLk8se0E6KCk9PiFhLmJqPy4oKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRkVm9sdW1lQ29udHJvbHNCYWNrZ3JvdW5kU2NyaW0iLHt5dGRWb2x1bWVDb250cm9sc0JhY2tncm91bmRTY3JpbUV4cGFuZGVkOmwseXRkVm9sdW1lQ29udHJvbHNCYWNrZ3JvdW5kU2NyaW1FeHBhbmRlZEhvdmVyU3RhdGU6KCk9PmwoKSYmWSgpfSl9KX0pLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKHt5dGRWb2x1bWVDb250cm9sc011dGVJY29uQnV0dG9uQ29udGFpbmVyOk19KX0sXy5LKCJidXR0b24iLHsiYXJpYS1sYWJlbCI6RCwKdGl0bGU6RCxlbDpoLCJvbjpjbGljayI6ZnVuY3Rpb24oVSl7WFMoMjg2NjIpO2smJmsudmFsdWUmJmMoay52YWx1ZSxyKCkpO1Uuc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjpwb2ludGVyZW50ZXIiOmZ1bmN0aW9uKCl7bSghMCl9LGNsYXNzOiJ5dGRWb2x1bWVDb250cm9sc011dGVJY29uQnV0dG9uIn0sSD9fLksoXy5qRix7ZGF0YTpILGFsdDpELGNsYXNzTmFtZToieXRkVm9sdW1lQ29udHJvbHNNdXRlSWNvbiJ9KTpudWxsKSksXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyIix7eXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJFeHBhbmRlZDpsLHl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyVmVydGljYWw6TSx5dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lclZlcnRpY2FsRG93bjpNLHl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyVmVydGljYWxFeHBhbmRlZDooKT0+bCgpJiZNKCkseXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJEaXNhYmxlU2xpZGVyOnBhLAp5dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lcldpdGhTY3JpbTooKT0+IWEuYmo/LigpfSksIm9uOmNsaWNrIjpmdW5jdGlvbihVKXtVLnN0b3BQcm9wYWdhdGlvbigpfX0sXy5LKCJpbnB1dCIse2RpcjoibHRyIiwiYXJpYS1sYWJlbCI6Xy5hQSgiVk9MVU1FIiksdGl0bGU6Xy5hQSgiVk9MVU1FIiksZWw6aywib246aW5wdXQiOmZ1bmN0aW9uKFUpe2smJmsudmFsdWUmJmpsYShOdW1iZXIoay52YWx1ZT8udmFsdWU/PzApLGUoKSk7VS5zdG9wUHJvcGFnYXRpb24oKX0sdHlwZToicmFuZ2UiLGNsYXNzOiJ5dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlciIsaWQ6InZvbHVtZS1pbnB1dCIscm9sZToic2xpZGVyIiwiYXJpYS12YWx1ZW5vdyI6RiwiYXJpYS12YWx1ZXRleHQiOlIsImFyaWEtdmFsdWVtaW4iOjAsImFyaWEtdmFsdWVtYXgiOjEwMCwiYXJpYS1vcmllbnRhdGlvbiI6U30pKSkpfSwiVWMiKTt2YXIgTm1hPV8uTChhPT57dmFyIGI9KCk9Pnt2YXIgYz1hLkcoKSxkPWMuSD8uZ2V0U2l6ZT8uKCk/LndpZHRoO3JldHVybihjLmJhPy5FZXx8Xy54KCJtd2ViX2VuYWJsZV9wb3J0cmFpdF9mdWxsc2NyZWVuX2FjdGlvbnMiKSkmJiEhZCYmZDw0MjB9O3JldHVybiBfLksoInl0bS1mdWxsc2NyZWVuLXJlbGF0ZWQtdmlkZW9zLWVudHJ5LXBvaW50LXZpZXctbW9kZWwiLHtjbGFzczpfLlAoInl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEhvc3QiLHt5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaXRsZUhpZGRlbjpifSl9LF8uSygiYnV0dG9uIix7Y2xhc3M6Xy5QKCJ5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxCdXR0b24iLHt5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTaW5nbGVUaHVtYm5haWw6Xy54KCJtd2ViX2VuYWJsZV9wb3J0cmFpdF9mdWxsc2NyZWVuX2FjdGlvbnMiKX0pLAoib246Y2xpY2siOmZ1bmN0aW9uKGMpe2EuRygpLlMoe05hOiEwfSk7Xy5NTygiLmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb24gLm1lZGlhLWl0ZW0taW5mbyBhIik7YlQoKTtjLnN0b3BQcm9wYWdhdGlvbigpfSwiYXJpYS1sYWJlbCI6KCk9PmEuZGF0YSgpLnRpdGxlPy5jb250ZW50Pz8iIn0sXy5LKF8uTyx7QTooKT0+IWIoKSx0aGVuOigpPT5fLksoXy5WLHt0ZXh0OigpPT5hLmRhdGEoKS50aXRsZX0pfSksXy5LKF8uTyx7QTooKT0+YS5kYXRhKCkuaW1hZ2VGcm9udCx0aGVuOmM9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFRodW1ibmFpbFN0YWNrIn0sXy5LKF8uTyx7QTooKT0+IV8ueCgibXdlYl9lbmFibGVfcG9ydHJhaXRfZnVsbHNjcmVlbl9hY3Rpb25zIil8fCEhYS5kYXRhKCkuaW1hZ2VCYWNrLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxGYWRlZFRodW1ibmFpbCIsCiJ5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTbWFsbEZhZGVkVGh1bWJuYWlsIil9KX0pLF8uSyhfLk8se0E6KCk9PiFfLngoIm13ZWJfZW5hYmxlX3BvcnRyYWl0X2Z1bGxzY3JlZW5fYWN0aW9ucyIpfHwhIWEuZGF0YSgpLmltYWdlTWlkZGxlLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxGYWRlZFRodW1ibmFpbCIsInl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbExhcmdlRmFkZWRUaHVtYm5haWwiKX0pfSksXy5LKCJkaXYiLHtjbGFzczoieXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsQ29udGFpbmVyIn0sXy5LKF8uakYse2RhdGE6YyxhbHQ6IiIsY2xhc3NOYW1lOiJ5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWwiLGFyaWFIaWRkZW46ITAsCllhOiEwfSkpKX0pKSl9LCJWYyIpO3ZhciBJVj1fLkwoKHtkYXRhOmEsY2xhc3NOYW1lOmIsYnV0dG9uT3ZlcnJpZGVzOmN9KT0+Xy5LKCJ5dG0tc2xpbS1tZXRhZGF0YS1idXR0b24tcmVuZGVyZXIiLHtjbGFzczoieXRtU2xpbU1ldGFkYXRhQnV0dG9uUmVuZGVyZXJIb3N0In0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmJ1dHRvbn0se2J1dHRvblJlbmRlcmVyOih7ZGF0YTpkfSk9Pl8uSyhfLnBPLHtkYXRhOmQsY2xhc3NOYW1lOmIsYnV0dG9uT3ZlcnJpZGVzOmN9KX0pKSwiV2MiKTtJVi5pZG9tQ29tcGF0PSEwO3ZhciBKVj1fLkwoKHtkYXRhOmEsY2xhc3NOYW1lOmIsYnV0dG9uT3ZlcnJpZGVzOmMsSGM6ZH0pPT57dmFyIGU9Xy5ESShfLlJMLCgpPT5hKCkubGlrZVN0YXR1c0VudGl0eUtleXx8IiIpLGY9KCk9Pl8udFAoKSYmYSgpLmlzTGlrZSYmYSgpLmJ1dHRvbj8udG9nZ2xlQnV0dG9uUmVuZGVyZXI/e3N0eWxlOiJtb25vIn06Yz8uKCksaD0oKT0+Xy50UCgpJiZhKCkuaXNMaWtlJiZhKCkuYnV0dG9uPy50b2dnbGVCdXR0b25SZW5kZXJlcj97YW5pbWF0ZUljb246InRydWUifTp2b2lkIDA7cmV0dXJuIF8uSygieXRtLXNsaW0tbWV0YWRhdGEtdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlciIse2NsYXNzOmJ9LF8uSyhfLk8se0E6KCk9Pnt2YXIgaz1hKCkuYnV0dG9uPy50b2dnbGVCdXR0b25SZW5kZXJlcjtpZihrJiZhKCkubGlrZVN0YXR1c0VudGl0eUtleSl7bGV0IGw9YSgpLmlzTGlrZT9lKCk/Lmxpa2VTdGF0dXM9PT0iTElLRSI6ZSgpPy5saWtlU3RhdHVzPT09IkRJU0xJS0UiO3JldHVybnsuLi5rLAppc1RvZ2dsZWQ6bH19cmV0dXJuIGt9LHRoZW46az0+Xy5LKF8ucU8se2RhdGE6ayxzdHlsZTpoLGNsYXNzTmFtZTpiLGJ1dHRvbk92ZXJyaWRlczpmLEhjOmR9KX0pKX0sIlhjIik7SlYuaWRvbUNvbXBhdD0hMDt2YXIgS1Y9Xy5MKGE9PntmdW5jdGlvbiBiKHIpe3ZhciB0PWMoKTt0LmJhPy5Eenx8Xy50UCgpfHx0LmlzRnVsbHNjcmVlbiYmdC50YS50b2dnbGVGdWxsc2NyZWVuKCk7ci5zdG9wUHJvcGFnYXRpb24oKX12YXIgYz1hLkcsZD0oKT0+YS5HKCkuSD8uZ2V0U2l6ZT8uKCk/LndpZHRoLGU9Xy5OKCgpPT4hIWEuRygpLkg/LmlzRW1iZWRzU2hvcnRzTW9kZT8uKCksdm9pZCAwLCJ3c0hEWiIpLGY9Xy5QKHsicGxheWVyLWNvbnRyb2xzLWhpZGUiOigpPT4hKCFJUyhhLkcoKSl8fGEuRygpLmJhPy5FZSYmIWEuRygpLk5hKX0pLGg9YS53YXRjaE5leHRSZXNwb25zZSxrPWEudGh1bWJuYWlsUHJldmlld1JlbmRlcmVyLGw9YS5wbGF5ZXJNdXRlZEF1dG9wbGF5T3ZlcmxheVJlbmRlcmVyLG09KCk9Pnt2YXIgcj1Da2EoaD8uKCksaz8uKCkpO3JldHVybiBlKCl8fGEuRygpLmJhPy5vaD9yLmZpbHRlcih0PT5fLkIodCxmbWEpPyExOl8uQih0LF8uVkwpPy5pY29uPy5pY29uVHlwZSE9PSJBRERfVE9fV0FUQ0hfTEFURVIiKToKcn0sbj0oKT0+e3ZhciByPWg/LigpLHQ9az8uKCksdj1sPy4oKSx6PSRTKGEuRygpKTt2YXIgRT1lKCk7aWYodilFPXY/LnlvdXR1YmVXYXRlcm1hcms7ZWxzZSBpZih0PV8uQih0Py5xdWlja0FjdGlvbnNCYXIsS1MpPy53YXRjaE9uWW91dHViZUJ1dHRvbix2PV8uQihyPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5mdWxsc2NyZWVuUXVpY2tBY3Rpb25zQmFyLEtTKT8ud2F0Y2hPbllvdXR1YmVCdXR0b24scj1fLkIodHx8dixsVik/LndhdGNoT25ZdExhYmVsQnV0dG9uLHQ9Xy5CKHR8fHYsbFYpPy55dExvZ29Pbmx5QnV0dG9uLHopRT1yO2Vsc2V7aWYoRSl0cnl7bGV0IEE9dC5idXR0b25WaWV3TW9kZWwsRj1BLnRpdGxlRm9ybWF0dGVkLmF0dGFjaG1lbnRSdW5zWzBdLmVsZW1lbnQ7Ri50eXBlLmltYWdlVHlwZS5pbWFnZS5zb3VyY2VzWzBdLmNsaWVudFJlc291cmNlLmltYWdlTmFtZT0ic2hvcnRzX3RleHRfbG9nbyI7Ri5wcm9wZXJ0aWVzLmxheW91dFByb3BlcnRpZXMuaGVpZ2h0LnZhbHVlPQoyNDtGLnByb3BlcnRpZXMubGF5b3V0UHJvcGVydGllcy53aWR0aC52YWx1ZT03Mjt6PUE/Lm9uVGFwPy5pbm5lcnR1YmVDb21tYW5kPy51cmxFbmRwb2ludD8udXJsO2lmKEUmJnomJnouaW5jbHVkZXMoIi93YXRjaD92PSIpKXtsZXQgQz16LnJlcGxhY2UoIi93YXRjaD92PSIsIi9zaG9ydHMvIik7QS5vblRhcC5pbm5lcnR1YmVDb21tYW5kLnVybEVuZHBvaW50LnVybD1DfX1jYXRjaChBKXt9RT10fXJldHVybiBFfSxwPXtjbGFzc05hbWU6ImNpcmNsZS1idXR0b25zIixidXR0b25PdmVycmlkZXM6e3N0eWxlOiJvdmVybGF5In19O3JldHVybiBfLksoInBsYXllci1mdWxsc2NyZWVuLWFjdGlvbi1tZW51Iix7Y2xhc3M6Inl0d1BsYXllckZ1bGxzY3JlZW5BY3Rpb25NZW51SG9zdCJ9LF8uSygiZGl2Iix7Y2xhc3M6Zn0sXy5LKCJkaXYiLHtjbGFzczoiZnVsbHNjcmVlbi1hY3Rpb24tbWVudSIsIm9uOmNsaWNrIjpmdW5jdGlvbihyKXt2YXIgdD1jKCk7Y1QodCx7SWM6ITB9KTtyLnN0b3BQcm9wYWdhdGlvbigpOwpyLnN0b3BQcm9wYWdhdGlvbigpfX0sXy5LKF8uTyx7QTooKT0+IShhLkcoKS5iYT8uaGlkZVZpZGVvSW5mb3x8YS5HKCkuYmE/Lll3fHxkKCkmJmQoKTwzMjApLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJhY3Rpb24tbWVudS1lbmdhZ2VtZW50LWJ1dHRvbnMtd3JhcHBlciIsIm5vLWxhYmVsLWV4cCIpLCJvbjpjbGljayI6Yn0sXy5LKF8uVyx7ZGF0YTptfSx7YnV0dG9uUmVuZGVyZXI6KHtkYXRhOnJ9KT0+Xy5LKF8ucE8se2RhdGE6ciwuLi5wfSksc2xpbU1ldGFkYXRhVG9nZ2xlQnV0dG9uUmVuZGVyZXI6KHtkYXRhOnJ9KT0+Xy5LKEpWLHtkYXRhOnIsY2xhc3NOYW1lOl8uUChwLmNsYXNzTmFtZSx7Imxpa2UtYnV0dG9uLW5vLWxhYmVsLWV4cCI6KCk9PnIoKS5pc0xpa2V9KSxIYzooKT0+cigpLmlzTGlrZT97QXM6ITB9OnZvaWQgMCxidXR0b25PdmVycmlkZXM6KCk9PnIoKS5pc0xpa2U/dm9pZCAwOnAuYnV0dG9uT3ZlcnJpZGVzfSksc2xpbU1ldGFkYXRhQnV0dG9uUmVuZGVyZXI6KHtkYXRhOnJ9KT0+Cl8uSyhJVix7ZGF0YTpyLC4uLnB9KSxmdWxsc2NyZWVuRW5nYWdlbWVudEFjdGlvbkJhclNhdmVCdXR0b25SZW5kZXJlcjooe2RhdGE6cn0pPT5fLksoSVYse2RhdGE6ciwuLi5wfSksYnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLkhELHtkYXRhOnIsY2xhc3NOYW1lOiJ5dHdQbGF5ZXJGdWxsc2NyZWVuQWN0aW9uTWVudUNpcmNsZUJ1dHRvbnMiLGJ1dHRvbk92ZXJyaWRlczp7aWNvblBvc2l0aW9uOiJpY29uLW9ubHktNDAifX0pLHRvZ2dsZUJ1dHRvblJlbmRlcmVyOih7ZGF0YTpyfSk9Pl8uSyhfLnFPLHtkYXRhOnIsLi4ucH0pfSkpfSksXy5LKCJkaXYiLHtjbGFzczoicXVpY2stYWN0aW9ucy13cmFwcGVyIn0sXy5LKF8uTyx7QTooKT0+IWEuRygpLmJhPy5YdyYmISRTKGEuRygpKSYmIShkKCkmJmQoKTwzMjApJiYhZSgpJiZMUyhhLndhdGNoTmV4dFJlc3BvbnNlPy4oKSksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoiZnVsbHNjcmVlbi13YXRjaC1uZXh0LWVudHJ5cG9pbnQtd3JhcHBlciJ9LApfLksoTm1hLHtkYXRhOigpPT5MUyhhLndhdGNoTmV4dFJlc3BvbnNlPy4oKSksRzpjfSkpfSksXy5LKF8uTyx7QTooKT0+JFMoYS5HKCkpJiYoZSgpfHxkKCkmJmQoKTwzMjApPyExOiEwLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6IndhdGNoLW9uLXlvdXR1YmUtYnV0dG9uLXdyYXBwZXIifSxfLksoXy5XLHtkYXRhOm59LHtidXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uSEQse2RhdGE6cixjbGFzc05hbWU6IndhdGNoLW9uLXlvdXR1YmUtYnV0dG9uIixidXR0b25PdmVycmlkZXM6KCk9Pnt2YXIgdD1yKCk7cmV0dXJue3NpemU6IkwiLGRpc2FibGVkOiFfLkIoXy5CKHQ/Lm9uVGFwLF8uT0QpLF8uVkQpfX19KSxidXR0b25SZW5kZXJlcjpfLnBPLHRvZ2dsZUJ1dHRvblJlbmRlcmVyOl8ucU99KSl9KSkpKSl9LCJZYyIpO0tWLmlkb21Db21wYXQ9ITA7dmFyIExWPV8uTChhPT57dmFyIGI9KCk9Pnt2YXIgbT1hLnBsYXllck11dGVkQXV0b3BsYXlPdmVybGF5UmVuZGVyZXI/LigpO3JldHVybiBfLkIobT8uZW5kU2NyZWVuLHBWKT8uY29udGludWVXYXRjaGluZ30sYz0oKT0+e3ZhciBtPWEucGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlcj8uKCk7cmV0dXJuIF8uQihtPy5lbmRTY3JlZW4scFYpPy5icmFuZGluZ0ljb259LFtkLGVdPV8uSighMSx2b2lkIDAsIkVlWFhCYyIpLGYsaD0oKT0+e2NsZWFyVGltZW91dChmKTtlKCExKTtmPXNldFRpbWVvdXQoKCk9PntlKCEwKX0sNEUzKX0saz0oKT0+e3ZhciBtPWEuRygpLkg/LmdldFZpZGVvRGF0YSgpPy52aWRlb19pZDttJiZhLkcoKS5IPy5jdWVWaWRlb0J5SWQobSl9LGw9KCk9Pnt2YXIgbT1fLlV3KGEucGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlcj8uKCkudHJhY2tpbmdQYXJhbXMpO20mJl8uSk8obSl9O18uVUooKCk9PntoKCk7YS5HKCkuSD8uYWRkRXZlbnRMaXN0ZW5lcigib25NdXRlZEF1dG9wbGF5U3RhcnRzIiwKaCk7YS5HKCkuSD8uYWRkRXZlbnRMaXN0ZW5lcigib25BdXRvcGxheUJsb2NrZWQiLGspO2EuRygpLkg/LmFkZEV2ZW50TGlzdGVuZXIoIm9uVmlkZW9EYXRhQ2hhbmdlIixsKX0pO18uWXUoKCk9PntjbGVhclRpbWVvdXQoZik7YS5HKCkuSD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25NdXRlZEF1dG9wbGF5U3RhcnRzIixoKTthLkcoKS5IPy5yZW1vdmVFdmVudExpc3RlbmVyKCJvbkF1dG9wbGF5QmxvY2tlZCIsayk7YS5HKCkuSD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25WaWRlb0RhdGFDaGFuZ2UiLGwpfSk7cmV0dXJuIF8uSygieXRtLW11dGVkLWF1dG9wbGF5LW92ZXJsYXkiLHtjbGFzczoieXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlIb3N0Iiwib246Y2xpY2siOmZ1bmN0aW9uKG0pe3ZhciBuPWEuRz8uKCkuSCxwPW4/LmdldFZpZGVvRGF0YSgpPy52aWRlb19pZCxyPW4/LmdldEN1cnJlbnRUaW1lKCk7cCYmciYmKG4/LnVuTXV0ZSgpLG4/LmxvYWRWaWRlb0J5SWQocCxyKSk7Cm0uc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5PLHtBOigpPT51UyhhLkcoKSksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlCYWNrZ3JvdW5kIn0sXy5LKCJkaXYiLG51bGwsXy5LKF8uVyx7ZGF0YTpifSx7YnV0dG9uVmlld01vZGVsOl8uSER9KSksXy5LKCJkaXYiLHtjbGFzczoieXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlCcmFuZGluZ0ljb24ifSxfLksoXy5PLHtBOmMsdGhlbjptPT5fLksoXy5qRix7ZGF0YTptLGFsdDoiWW91VHViZSBMb2dvIn0pfSkpKSxXOigpPT5fLksoImRpdiIsbnVsbCxfLksoImRpdiIse2NsYXNzOl8uUCgieXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlBY3Rpb25NZW51Iix7eXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlIaWRlQWN0aW9uTWVudTpkfSl9LF8uSyhLVix7RzphLkcscGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlcjphLnBsYXllck11dGVkQXV0b3BsYXlPdmVybGF5UmVuZGVyZXJ9KSksXy5LKCJkaXYiLAp7Y2xhc3M6Inl0bU11dGVkQXV0b3BsYXlPdmVybGF5RXF1YWxpemVyIn0sXy5LKF8uTUQse2ljb246ImVxdWFsaXplciJ9KSkpfSkpfSwiWmMiKTtMVi5pZG9tQ29tcGF0PSEwO3ZhciBPbWE9Xy5MKCh7Rng6YSxhbmltYXRpb246Yn0pPT57dmFyIGM9Xy51RSgiZGl2IiksW2QsZV09Xy5KKCExLHZvaWQgMCwidGkwMm8iKSxmPTAsaD1fLngoIm13ZWJfZW5hYmxlX3Nob3J0c19oZWFydF9uZXdfZG91YmxlX3RhcCIpPyJsaWtlX3RhcF9mZWVkYmFja19zaG9ydHNfaGVhcnQiOiJsaWtlXzI0MGRwX2FuaW1hdGlvbl92MiI7Xy5uRSgoKT0+e2UoITApO18uamYuQWEoZik7Zj1fLllqKCgpPT57ZSghMSl9LDJFMyk7dmFyIGs9Yj8uKCk/Lm5hbWU7aWYoaz09PWgpe2NVKGgpO2s9Yj8uKCk/Lng7dmFyIGw9Yj8uKCk/Lnk7bGV0IG09Yy52YWx1ZTttJiYoayE9PXZvaWQgMCYmbCE9PXZvaWQgMD8obS5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLG0uc3R5bGUubGVmdD1gJHtrfXB4YCxtLnN0eWxlLnRvcD1gJHtsfXB4YCxtLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKC01MCUsIC01MCUpIik6KG0uc3R5bGUucG9zaXRpb249IiIsbS5zdHlsZS5sZWZ0PSIiLG0uc3R5bGUudG9wPQoiIixtLnN0eWxlLnRyYW5zZm9ybT0iIikpfWVsc2V7aWYobD1jLnZhbHVlKWwuc3R5bGUucG9zaXRpb249IiIsbC5zdHlsZS5sZWZ0PSIiLGwuc3R5bGUudG9wPSIiLGwuc3R5bGUudHJhbnNmb3JtPSIiO2s9PT0icGxheV85NmRwX2FuaW1hdGlvbiI/Y1UoInBsYXlfOTZkcF9hbmltYXRpb24iKTprPT09InBhdXNlXzk2ZHBfYW5pbWF0aW9uIiYmY1UoInBhdXNlXzk2ZHBfYW5pbWF0aW9uIil9fSwiRUNKVWRkIik7cmV0dXJuIF8uSygic2hvcnRzLXRvdWNoLWZlZWRiYWNrIix7Y2xhc3M6Xy5QKCJ5dFNob3J0c1RvdWNoRmVlZGJhY2tIb3N0Iix7eXRTaG9ydHNUb3VjaEZlZWRiYWNrSGlkZGVuOigpPT4hZCgpfSl9LF8uSyhfLk8se0E6YSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFNob3J0c1RvdWNoRmVlZGJhY2tUb3VjaEZlZWRiYWNrIn0sXy5LKCJkaXYiLHtlbDpjLGNsYXNzOiJ5dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9uV3JhcHBlciIsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LApfLksoXy5jTSx7YW5pbWF0aW9uTmFtZTooKT0+aCxkYXRhOnthbmltYXRpb25Db25maWc6YlUoaCl9LGNsYXNzTmFtZToieXRTaG9ydHNUb3VjaEZlZWRiYWNrTGlrZUFuaW1hdGlvbiJ9KSkpfSksXy5LKCJkaXYiLHtjbGFzczoieXRTaG9ydHNUb3VjaEZlZWRiYWNrVG91Y2hGZWVkYmFjayJ9LF8uSyhfLmNNLHthbmltYXRpb25OYW1lOigpPT4icGxheV85NmRwX2FuaW1hdGlvbiIsZGF0YTp7YW5pbWF0aW9uQ29uZmlnOmJVKCJwbGF5Xzk2ZHBfYW5pbWF0aW9uIil9LGNsYXNzTmFtZToieXRTaG9ydHNUb3VjaEZlZWRiYWNrUGxheVBhdXNlQW5pbWF0aW9uIn0pKSxfLksoImRpdiIse2NsYXNzOiJ5dFNob3J0c1RvdWNoRmVlZGJhY2tUb3VjaEZlZWRiYWNrIn0sXy5LKF8uY00se2FuaW1hdGlvbk5hbWU6KCk9PiJwYXVzZV85NmRwX2FuaW1hdGlvbiIsZGF0YTp7YW5pbWF0aW9uQ29uZmlnOmJVKCJwYXVzZV85NmRwX2FuaW1hdGlvbiIpfSxjbGFzc05hbWU6Inl0U2hvcnRzVG91Y2hGZWVkYmFja1BsYXlQYXVzZUFuaW1hdGlvbiJ9KSkpfSwKImFkIik7dmFyIGRVPXZvaWQgMCxlVT12b2lkIDAsZlUsZ1U9Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgW2IsY109Xy5KKDAsdm9pZCAwLCJWZnY1OCIpLFtkLGVdPV8uSigwLHZvaWQgMCwiZ0dDTjlkIiksW2YsaF09Xy5KKCExLHZvaWQgMCwiblNhTGgiKTtyZXR1cm4gXy5LKCJ5dG0tYm90dG9tLXNoZWV0LW92ZXJsYXktcmVuZGVyZXIiLHtjbGFzczoiWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJIb3N0In0sXy5LKCJkaXYiLHtjbGFzczoiWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDb250YWluZXIiLHN0eWxlOigpPT57dmFyIGs9YigpLGw9ZCgpLG09ZigpO2s9YHRyYW5zZm9ybTogdHJhbnNsYXRlWSgke01hdGgubWF4KDAsTWF0aC5yb3VuZChsLWspKX1weCk7YDttJiYoays9InRyYW5zaXRpb246IDAuMnM7Iik7cmV0dXJuIGt9LCJvbjp0b3VjaHN0YXJ0IjpmdW5jdGlvbihrKXtkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJzY3JvbGxCZWhhdmlvcj0ibm9uZSI7YyhrLnRvdWNoZXNbMF0uY2xpZW50WSk7Cmsuc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjp0b3VjaG1vdmUiOmZ1bmN0aW9uKGspe2Uoay50b3VjaGVzWzBdLmNsaWVudFkpO2suc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjp0b3VjaGVuZCI6ZnVuY3Rpb24oayl7ZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyc2Nyb2xsQmVoYXZpb3I9IiI7d2luZG93LnNjcmVlbi5hdmFpbEhlaWdodC1kKCk8PTMwMD8oaCghMCksZSh3aW5kb3cuc2NyZWVuLmF2YWlsSGVpZ2h0KSxzZXRUaW1lb3V0KCgpPT57aWYoZFUhPW51bGwpe3ZhciBsPV8uSHooKTtsLnNldCgic3VwcHJlc3NfYXBwX3Vwc2VsbCIsMSk7bC5zYXZlKCk7ZVUmJihlVS5xdj0hMCxlVT12b2lkIDApO18uS04oZFUpO2RvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZFUpO2RVPXZvaWQgMDtmVT8uKCk7ZlU9dm9pZCAwO18ueSgpLnJlc29sdmUoXy55UCkuUXUoKX19LDI1MCkpOihoKCEwKSxlKDApKTtrLnN0b3BQcm9wYWdhdGlvbigpfX0sXy5LKCJkaXYiLHtjbGFzczoiWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJIZWFkZXIiLApzdHlsZTooKT0+YSgpLmJhY2tncm91bmRJbWFnZT9gYmFja2dyb3VuZC1pbWFnZTogdXJsKCR7YSgpLmJhY2tncm91bmRJbWFnZX0pO2A6dm9pZCAwfSxfLksoImRpdiIse2NsYXNzOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckRyYWdIYW5kbGUifSksXy5LKF8uTUQse2ljb246KCk9PmEoKS5jZW50cmFsSWNvbj8uaWNvblR5cGUsY2xhc3NOYW1lOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNlbnRyYWxJY29uIn0pLF8uSyhfLlcse2RhdGE6KCk9PmEoKS5jbG9zZUJ1dHRvbn0se2J1dHRvblJlbmRlcmVyOih7ZGF0YTprfSk9Pl8uSyhfLnBPLHtkYXRhOmssY2xhc3NOYW1lOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNsb3NlIixwcmV2ZW50RGVmYXVsdDohMCxRZjohMH0pfSkpLF8uSygiZGl2Iix7Y2xhc3M6Ill0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ29udGVudHMifSxfLksoImRpdiIse2NsYXNzOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlclRpdGxlIn0sCl8uSyhfLklKLHtkYXRhOigpPT5hKCkudGl0bGV9KSksXy5LKCJkaXYiLHtjbGFzczoiWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJTdWJ0aXRsZSJ9LF8uSyhfLklKLHtkYXRhOigpPT5hKCkuc3VidGl0bGV9KSksXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmJ1dHRvbnN9LHtidXR0b25SZW5kZXJlcjpfLnBPfSkpKSl9LCJiZCIpO2dVLmlkb21Db21wYXQ9ITA7dmFyIE1WPV8uTCgoe2RhdGE6YSxzdG9wUHJvcGFnYXRpb246Yn0pPT5fLksoInl0bS1mb3JjZWQtbXV0ZS1tZXNzYWdlLXJlbmRlcmVyIixudWxsLF8uSyhfLnZPLHtpY29uVHlwZTpfLngoImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiKT8iYXVkaW9fc2xhc2giOiJhdWRpb19vZmYiLGFyaWFMYWJlbDooKT0+Xy5hTihhKCkuZm9yY2VkTXV0ZU1lc3NhZ2VUZXh0KSxvbmNsaWNrOmM9PntiPy4oKSYmYy5zdG9wUHJvcGFnYXRpb24oKTtjPWEoKTtfLkIoYy5oZWxwQnV0dG9uLF8uVkwpPy5uYXZpZ2F0aW9uRW5kcG9pbnQmJl8uQUooXy5CKGMuaGVscEJ1dHRvbixfLlZMKT8ubmF2aWdhdGlvbkVuZHBvaW50LGMsITApfSxMbToieXRtLWZvcmNlZC1tdXRlLW1lc3NhZ2UifSkpLCJlZCIpO01WLmlkb21Db21wYXQ9ITA7dmFyIE5WPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6YixHSjpjfSk9Pnt2YXIgZD1fLnkoKS5yZXNvbHZlKF8uSW4oXy5rRikpPy4oKTtyZXR1cm4gXy5LKCJ5dG0taW5mby1wYW5lbC1jb250ZW50LXJlbmRlcmVyIix7Y2xhc3M6Xy5QKGIsInl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3QiLHt5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0SXNXYXRjaEluZm9QYW5lbDpjLHl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RDaW5lbWF0aWNCYWNrZ3JvdW5kOigpPT5kJiZjPy4oKX0pLCJ5dG0taW5mby1wYW5lbC1jb250ZW50LXRydW5jYXRlLXBhcmFncmFwaHMiOigpPT4hIWEoKS50cnVuY2F0ZVBhcmFncmFwaHN8fHZvaWQgMCwieXRtLWluZm8tcGFuZWwtY29udGVudC1oYXMtbWVudSI6KCk9PiEhYSgpLm1lbnV8fHZvaWQgMCwiZGF0YS1iYWNrZ3JvdW5kIjooKT0+YSgpLmJhY2tncm91bmR9LF8uSyhfLm5ILHtjb21tYW5kOigpPT5hKCkuc291cmNlRW5kcG9pbnQsCmNsYXNzTmFtZToieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyRW5kcG9pbnQifSxfLksoUG1hLHtkYXRhOmF9KSksXy5LKF8uVyx7ZGF0YTooKT0+YSgpLm1lbnV9LHttZW51UmVuZGVyZXI6KHtkYXRhOmV9KT0+Xy5LKF8uU1Ase2RhdGE6ZSxjbGFzc05hbWU6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlck1lbnUifSl9KSl9LCJmZCIpLFBtYT1fLkwoKHtkYXRhOmF9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyV3JhcHBlciIsImRhdGEtaGFzLWljb24iOigpPT4hIWEoKS5pY29ufSxfLksoXy5PLHtBOigpPT5hKCkuc291cmNlQXRUb3AmJmEoKS5zb3VyY2UsdGhlbjooKT0+Xy5LKE9WLHtkYXRhOmF9KX0pLF8uSyhfLk8se0E6KCk9PmEoKS50aXRsZSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaXRsZUNvbnRhaW5lciJ9LF8uSyhfLklKLHtkYXRhOigpPT5hKCkudGl0bGV9KSxfLksoXy5NRCwKe2ljb246KCk9PmEoKS5pbmxpbmVMaW5rSWNvbj8uaWNvblR5cGUsY2xhc3NOYW1lOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJMaW5rSWNvbiJ9KSl9KSxfLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJCb2R5In0sXy5LKCJkaXYiLHtjbGFzczoieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyVGV4dCJ9LF8uSyhfLk8se0E6KCk9PiFhKCkuc291cmNlQXRUb3AmJmEoKS5zb3VyY2UsdGhlbjooKT0+Xy5LKE9WLHtkYXRhOmF9KX0pLF8uSyhfLmdHLHtwYTooKT0+YSgpLnBhcmFncmFwaHN8fFtdfSwoYixjKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyUGFyYWdyYXBoIn0sXy5LKF8uSUose2RhdGE6Yn0pLF8uSyhfLk8se0E6KCk9PmMoKT09PWEoKS5wYXJhZ3JhcGhzLmxlbmd0aC0xJiZhKCkuaW5saW5lU291cmNlLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcklubGluZVNvdXJjZSJ9LApfLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJJbmxpbmVTb3VyY2VUZXh0In0sXy5LKF8uSUose2RhdGE6KCk9PmEoKS5pbmxpbmVTb3VyY2V9KSksXy5LKF8uTUQse2ljb246KCk9PmEoKS5pbmxpbmVMaW5rSWNvbj8uaWNvblR5cGUsY2xhc3NOYW1lOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJMaW5rSWNvbiJ9KSl9KSkpKSxfLksoXy5PLHtBOigpPT5hKCkuaWNvbix0aGVuOmI9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhlYWRlclJpZ2h0SXRlbXMifSxfLksoXy5NRCx7aWNvbjooKT0+YigpLmljb25UeXBlLGNsYXNzTmFtZToieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySGVhZGVySWNvbiJ9KSxfLksoXy5JSix7ZGF0YTooKT0+YSgpLnRpdGxlfSkpfSksXy5LKF8uTyx7QTooKT0+YSgpLnRodW1ibmFpbCx0aGVuOmI9Pl8uSyhfLlVQLHt0aHVtYm5haWxEZXRhaWxzOmIsY2xhc3NOYW1lOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaHVtYm5haWwiLAphbHQ6IiIsWWE6Xy54KCJjM19wcmVzZXJ2ZV9kaW1lbnNpb25zX2tzIik/dm9pZCAwOiEwLFRhOl8ueCgiYzNfcHJlc2VydmVfZGltZW5zaW9uc19rcyIpP3ZvaWQgMDohMH0pfSkpKSwiZ2QiKSxPVj1fLkwoKHtkYXRhOmF9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyTWV0YWRhdGEifSxfLksoXy5PLHtBOigpPT5hKCkuc291cmNlLHRoZW46Yj0+Xy5LKF8uSUose2RhdGE6Yn0pfSksXy5LKF8uTyx7QTooKT0+YSgpLnB1Ymxpc2hlZFRpbWVUZXh0LHRoZW46Yj0+Xy5LKCJkaXYiLHtjbGFzczoieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyUHVibGlzaFRpbWUifSwiXHUyMDIyICIsXy5LKF8uSUose2RhdGE6Yn0pKX0pKSwiaGQiKTtOVi5pZG9tQ29tcGF0PSEwO3ZhciBQVj1fLkwoKHtkYXRhOmF9KT0+Xy5LKCJ5dG0taW5mby1wYW5lbC1jb250YWluZXItcmVuZGVyZXIiLHtiYWNrZ3JvdW5kOigpPT5hKCkuYmFja2dyb3VuZH0sXy5LKF8uTyx7QTooKT0+YSgpLnRpdGxlLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXIifSxfLksoImRpdiIse2NsYXNzOiJ5dG0taW5mby1wYW5lbC1jb250YWluZXItaGVhZGVyLWxlZnQtaXRlbXMifSxfLksoXy5NRCx7aWNvbjooKT0+YSgpLmljb24/Lmljb25UeXBlLGNsYXNzTmFtZToieXRtLWluZm8tcGFuZWwtY29udGFpbmVyLWhlYWRlci1pY29uIn0pLF8uSyhfLklKLHtkYXRhOigpPT5hKCkudGl0bGV9KSksXy5LKF8uVyx7ZGF0YTooKT0+YSgpLm1lbnV9LHttZW51UmVuZGVyZXI6KHtkYXRhOmJ9KT0+Xy5LKF8uU1Ase2RhdGE6YixjbGFzc05hbWU6Inl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXItbWVudSJ9KX0pKX0pLF8uSyhfLlcse2RhdGE6KCk9PgphKCkuY29udGVudH0se2luZm9QYW5lbENvbnRlbnRSZW5kZXJlcjpOVn0pKSwiaWQiKTtQVi5pZG9tQ29tcGF0PSEwO3ZhciBSVj1fLkwoKHtkYXRhOmEsaXNBY3RpdmU6YixISjpjLGNsYXNzTmFtZTpkfSk9Pnt2YXIgZT1fLmNJKF8uWlApLGY9Xy5jSSh3amEpLGg9Xy5jSSh2amEpLGs7Xy5uRSgoKT0+e2I/LigpJiZhKCk/LnRyYWNraW5nUGFyYW1zJiZhKCkudHJhY2tpbmdQYXJhbXMhPT1rJiZfLmlxKCkhPT1rJiYoXy5seChfLmh4KCksYSgpLnRyYWNraW5nUGFyYW1zKSxrPV8uaXEoKSl9LCJMUmVTbGIiKTtfLlVKKCgpPT57bmxhKGEoKSl9KTtyZXR1cm4gXy5LKCJ5dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlciIse2NsYXNzOmQsImRhdGEtaXMtYWN0aXZlIjpifHx2b2lkIDAsImRhdGEtaGFzLWluZm8tcGFuZWwiOigpPT57dmFyIGw9YSgpLG09Xy5CKGwucGxheWVyT3ZlcmxheSxjbWEpO3JldHVybiEhbC5pbmZvUGFuZWx8fCEhbT8uaW5mb1BhbmVsfHx2b2lkIDB9LCJleHRyYWN0LW92ZXJsYXkiOigpPT5lKCk9PT0xfHx2b2lkIDAsImV4dHJhY3QtYWN0aW9uLWJhciI6KCk9Pl8uYU0oZSgpKXx8CnZvaWQgMCwic21hbGxlci1zY3JlZW4tc3F1ZWV6ZWJhY2siOigpPT5mKCl8fHZvaWQgMCwiaXMtZnVsbHNjcmVlbiI6KCk9PmgoKXx8dm9pZCAwLCJpcy13ZWIiOigpPT5jPy4oKXx8dm9pZCAwfSxfLksoXy5PLHtBOigpPT5hKCkucGxheWVyT3ZlcmxheSx0aGVuOmw9Pl8uSyhfLklCLG51bGwsXy5LKF8uTyx7QTooKT0+ITAsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoicmVlbC1wbGF5ZXItb3ZlcmxheS10b3AtYmFyIn0sXy5LKFFWLHtkYXRhOmF9KSl9KSxfLksoXy5XLHtkYXRhOmx9LHtyZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbDpfLmJqYX0pKSxXOigpPT5fLksoXy5JQixudWxsLF8uSygiZGl2Iix7Y2xhc3M6InJlZWwtcGxheWVyLW92ZXJsYXktbWFpbi1jb250ZW50In0sXy5LKCJkaXYiLHtjbGFzczoicmVlbC1wbGF5ZXItb3ZlcmxheS1tZXRhZGF0YSJ9LF8uSyhRbWEse2RhdGE6YX0pKSxudWxsLF8uSyhSbWEse2RhdGE6YX0pKSxfLksoU21hLHtkYXRhOmF9KSl9KSwKXy5LKFRtYSx7ZGF0YTphfSkpfSwia2QiKTtSVi5pZG9tQ29tcGF0PSEwOwp2YXIgUW1hPV8uTCgoe2RhdGE6YX0pPT5fLksoXy5XLHtkYXRhOigpPT5hKCkubWV0YXBhbmVsfSx7cmVlbE1ldGFwYW5lbFZpZXdNb2RlbDpfLnJRfSksImxkIiksU21hPV8uTCgoe2RhdGE6YX0pPT5fLksoImRpdiIse2NsYXNzOiJyZWVsLXBsYXllci1vdmVybGF5LWluZm8tcGFuZWwifSxfLksoXy5XLHtkYXRhOigpPT5hKCkuaW5mb1BhbmVsfSx7aW5mb1BhbmVsQ29udGFpbmVyUmVuZGVyZXI6UFZ9KSksIm1kIiksUm1hPV8uTCgoe2RhdGE6YX0pPT5fLksoImRpdiIse2NsYXNzOiJyZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMifSxfLksoUVYse2RhdGE6YX0pLF8uSyhVbWEse2RhdGE6YX0pLF8uSyhfLlcse2RhdGE6KCk9PmEoKS5waXZvdEJ1dHRvbn0se3Bpdm90QnV0dG9uVmlld01vZGVsOl8uaVF9KSxfLksoXy5XLHtkYXRhOigpPT5hKCkuZm9yY2VkTXV0ZU1lc3NhZ2VSZW5kZXJlcn0se2ZvcmNlZE11dGVNZXNzYWdlUmVuZGVyZXI6KHtkYXRhOmJ9KT0+Xy5LKE1WLHtkYXRhOmIsCnN0b3BQcm9wYWdhdGlvbjohMH0pfSkpLCJuZCIpLFFWPV8uTCgoe2RhdGE6YX0pPT5fLksoXy5PLHtBOigpPT4hXy5URSgpLHRoZW46KCk9Pl8uSyhfLlcse2RhdGE6KCk9PmEoKS5tZW51fSx7bWVudVJlbmRlcmVyOih7ZGF0YTpifSk9Pl8uSyhfLlRQLHtkYXRhOmIsc2hvd0ljb246ITAsYnV0dG9uT3ZlcnJpZGVzOmhVKCl9KX0pLFc6KCk9Pl8uSyhfLk8se0E6KCk9Pl8uVEUoKSx0aGVuOigpPT5fLksoXy5XLHtkYXRhOigpPT5hKCkubWVudX0se21lbnVSZW5kZXJlcjooe2RhdGE6Yn0pPT5fLksoXy5TUCx7ZGF0YTpiLGRmOiJyZWVsLXBsYXllci1vdmVybGF5LW92ZXJmbG93LW1lbnUiLEhhOiExLHVuOiExLHN0b3BQcm9wYWdhdGlvbjohMCxidXR0b25PdmVycmlkZXM6aFUoKX0pfSl9KX0pLCJxZCIpLFVtYT1fLkwoKHtkYXRhOmF9KT0+Xy5LKF8uVyx7ZGF0YTooKT0+YSgpLmJ1dHRvbkJhcn0se3JlZWxBY3Rpb25CYXJWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Xy5LKF8ualEse2RhdGE6YiwKQWY6e2ljb25Qb3NpdGlvbjoiaWNvbi13aXRoLWxhYmVsIixzaXplOiJTIix0eXBlOiJ0ZXh0IixzdHlsZToib3ZlcmxheSJ9fSl9KSwicmQiKSxUbWE9Xy5MKCh7ZGF0YTphfSk9Pl8uSygiZGl2Iix7Y2xhc3M6InN0aWNrZXItbGF5ZXIifSxfLksoXy5PLHtBOigpPT4hIWEoKS52aWRlb0ludGVyYWN0aW9ucyYmXy54KCJtd2ViX2VuYWJsZV9zaG9ydHNfc3RpY2tlcnMiKSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhfLmdHLHtwYTooKT0+YSgpLnZpZGVvSW50ZXJhY3Rpb25zPy5pbnRlcmFjdGlvbnN8fFtdfSxiPT5fLksoXy5jamEse2RhdGE6Yn0pKSxfLksoXy5XLHtkYXRhOigpPT5hKCk/LnZpZGVvSW50ZXJhY3Rpb25zPy5lbGVtZW50c0ludGVyYWN0aW9uc0xheWVyfSx7c3RpY2tlcnNMYXllclJlbmRlcmVyOl8uZGphfSkpfSkpLCJzZCIpO3ZhciBTVj1fLkwoKHtkYXRhOmEsWWY6YixjajpjLHZCOmQsSXI6ZSxlaDpmfSk9PntmdW5jdGlvbiBoKHApe24ubG90dGllRWwmJm4ubG90dGllRWwuaXNQYXVzZWQmJm4ubG90dGllRWwuZ29Ub0FuZFBsYXkoMCk7cC5zdG9wUHJvcGFnYXRpb24oKX1fLlVKKCgpPT57dmFyIHA9b2xhLmJpbmQodm9pZCAwLGEoKSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInN0YXRlLW5hdmlnYXRlZW5kIixwKTtfLll1KCgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInN0YXRlLW5hdmlnYXRlZW5kIixwKX0pfSk7dmFyIGs9KCk9Pnt2YXIgcD1hKCk7cmV0dXJuIGQ/LigpP3AuZGFya1RoZW1lTG9nbz8ubG90dGllQW5pbWF0aW9uPy51cmw6cC5saWdodFRoZW1lTG9nbz8ubG90dGllQW5pbWF0aW9uPy51cmx9LGw9KCk9PmEoKS5hY2Nlc3NpYmlsaXR5RGF0YT8uYWNjZXNzaWJpbGl0eURhdGE/LmxhYmVsfHxfLmFOKGEoKS50b29sdGlwVGV4dCl8fCIiLG09KCk9PmQ/LigpPyJsb2dvLWVudGl0eS1sb3R0aWUtYW5pbWF0aW9uLWRhcmsiOgoibG9nby1lbnRpdHktbG90dGllLWFuaW1hdGlvbi1saWdodCIsbj17fTtyZXR1cm4gXy5LKCJ5dG0tbG9nby1lbnRpdHkiLHtjbGFzczoieXRtTG9nb0VudGl0eUhvc3QifSxlPy4oKSxfLksoXy5PLHtBOigpPT4hZSYmYj8uKCkhPT12b2lkIDAmJmM/LigpIT09dm9pZCAwJiZkPy4oKSE9PXZvaWQgMCx0aGVuOigpPT5fLksoXy5PLHtBOmssdGhlbjooKT0+Xy5LKCJkaXYiLHtpZDpjLGNsYXNzOiJ5dG1Mb2dvRW50aXR5Q29udGFpbmVyIiwib246Y2xpY2siOmh9LF8uSyhfLmNNLHtjbGFzc05hbWU6Xy5QKGIsInl0bUxvZ29FbnRpdHlMb2dvIiksZGF0YTooKT0+KHthbmltYXRpb25Db25maWc6e3BhdGg6aygpLGF1dG9wbGF5OiEwLGxvb3A6ITEscmVuZGVyZXJTZXR0aW5nczp7dmlld0JveE9ubHk6ITB9fSxsaXN0ZW5lcnM6e2RhdGFfZmFpbGVkOmYsZXJyb3I6Zn19KSxhbmltYXRpb25SZWY6bixhbmltYXRpb25OYW1lOm19KSksVzooKT0+Xy5LKFZtYSx7Y2xhc3NOYW1lOiJ5dG1Mb2dvRW50aXR5Q29udGFpbmVyIiwKWWY6YixpZDooKT0+Yz8uKCk/PyIiLERBOnA9Pnt2YXIgcj1hKCksdD0hIWQ/LigpO3JldHVybiB0JiZyLmRhcmtUaGVtZUxvZ28/LnRodW1ibmFpbD9fLkpQKHIuZGFya1RoZW1lTG9nby50aHVtYm5haWwscHx8dm9pZCAwKTohdCYmci5saWdodFRoZW1lTG9nbz8udGh1bWJuYWlsP18uSlAoci5saWdodFRoZW1lTG9nby50aHVtYm5haWwscHx8dm9pZCAwKToiIn0sYWx0VGV4dDpsLGVoOmZ9KX0pfSkpfSwidGQiKTtTVi5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e0lyOiEwLGVoOiEwfX07CnZhciBWbWE9Xy5MKCh7Y2xhc3NOYW1lOmEsWWY6YixpZDpjLERBOmQsYWx0VGV4dDplLGVoOmZ9KT0+e3ZhciBoPV8udUUoImRpdiIpLGs9Xy51RSgiaW1nIik7Xy5VSigoKT0+e2sudmFsdWUuc3JjPWQoaC52YWx1ZSl9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczphLGVsOmh9LF8uSygiaW1nIix7ZWw6aywib246ZXJyb3IiOmZ1bmN0aW9uKGwpe2Y/LigpO2wuc3RvcFByb3BhZ2F0aW9uKCl9LGlkOmMsY2xhc3M6Xy5QKGIsInl0bUxvZ29FbnRpdHlMb2dvIiksYWx0OmV9KSl9LCJ1ZCIpO3ZhciBVVj1fLkwoKHt0b3BiYXJMb2dvUmVuZGVyZXI6YSxWajpiLFdqOmMsWGo6ZCx1bTplLGljb25PdmVycmlkZTpmLGh6OmgsYWs6a30pPT57ZnVuY3Rpb24gbCgpe3QoITApfXZhciBtPV8uREkobGphLCgpPT5hPy4oKT8ub3ZlcnJpZGVFbnRpdHlLZXl8fF8uVk0oKT8iRWdaMGIzQmlZWElnOVFFb0FRJTNEJTNEIjoiIiksbj0oKT0+YT8uKCk/Lmljb25JbWFnZT8uaWNvblR5cGUsW3Ascl09Xy5KKCExLHZvaWQgMCwiWmFQUGxiIiksdD1yLHY9Xy55KCkucmVzb2x2ZShfLkluKF8ua0YpKSx6PShfLlZNKCl8fHY/LigpKT8/ITEsRT1udWxsLEE9Xy51RSgiYnV0dG9uIik7Xy5VSihmdW5jdGlvbigpeyhtPy4oKT8/dm9pZCAwKXx8U1MoMTIwODEsQS52YWx1ZSxFLEY9PntFPUZ9LG51bGwpfSk7cmV0dXJuIF8uSygieXRtLWhvbWUtbG9nbyIsbnVsbCxfLksoImJ1dHRvbiIse2VsOkEsImFyaWEtbGFiZWwiOigpPT5fLkNKKGE/LigpPy50b29sdGlwVGV4dCk/Xy5DSihhPy4oKT8udG9vbHRpcFRleHQpOgoiWW91VHViZSIscm9sZToibGluayIsY2xhc3M6Xy5QKHsibG9nby1pbi1wbGF5ZXItZW5kcG9pbnQiOmMsIm1vYmlsZS10b3BiYXItaGVhZGVyLWVuZHBvaW50IjooKT0+IWMoKX0pLGtleTooKT0+bT8uKCk/P3ZvaWQgMD8ieW9vZGxlIjoibG9nbyIsIm9uOmNsaWNrIjpmdW5jdGlvbihGKXt2YXIgQz1hPy4oKT8uZW5kcG9pbnQ/P3JWLEc9bT8uKCk/P3ZvaWQgMCxEPSIvIjtHPyhDPUcub25UYXBDb21tYW5kfHxDLEQ9Xy5CKEcub25UYXBDb21tYW5kPy5jb21tYW5kTWV0YWRhdGEsXy56dyk/LnVybHx8RCk6RD1fLkIoQz8uY29tbWFuZE1ldGFkYXRhLF8uencpPy51cmx8fEQ7dmFyIEg9az8uKCk/PzM4NTQsUj1GLmN1cnJlbnRUYXJnZXQ7RyYmKFIuZGF0YT1HKTtoPy4oRik7Xy5xUCh7aHJlZjpELGFrOkgsZWxlbWVudDpSLHB1c2hTdGF0ZTohMCxlbmRwb2ludDpDfSk7Ri5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLk8se0E6KCk9PiFwKCkmJihtPy4oKT8/dm9pZCAwKSYmaVUoYigpKSYmCmpVKHosbT8uKCk/P3ZvaWQgMCksdGhlbjooKT0+Xy5LKFNWLHtkYXRhOigpPT5tPy4oKT8/dm9pZCAwLElyOigpPT5fLksoVFYse1ZqOmIsV2o6YyxYajpkLFlmOiJtb2JpbGUtdG9wYmFyLWxvZ28iLGNqOiJob21lLWljb24iLHVtOmUsaWNvbk92ZXJyaWRlOmYscnM6bn0pLGVoOmx9KX0pLF8uSyhfLk8se0E6KCk9PiFwKCkmJihtPy4oKT8/dm9pZCAwKSYmaVUoYigpKSYmIWpVKHosbT8uKCk/P3ZvaWQgMCksdGhlbjooKT0+Xy5LKFNWLHtkYXRhOigpPT5tPy4oKT8/dm9pZCAwLFlmOiJtb2JpbGUtdG9wYmFyLWxvZ28iLGNqOiJob21lLWljb24iLHZCOnosZWg6bH0pfSksXy5LKF8uTyx7QTooKT0+ISghcCgpJiYobT8uKCk/P3ZvaWQgMCkmJmlVKGIoKSkpLHRoZW46KCk9Pl8uSyhUVix7Vmo6YixXajpjLFhqOmQsWWY6Im1vYmlsZS10b3BiYXItbG9nbyIsY2o6ImhvbWUtaWNvbiIsdW06ZSxpY29uT3ZlcnJpZGU6ZixyczpufSl9KSkpfSwidmQiKTtVVi5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e2h6OiEwfX07CnZhciBUVj1fLkwoKHtWajphLFdqOmIsWGo6YyxZZjpkLGNqOmUsdW06ZixpY29uT3ZlcnJpZGU6aCxyczprfSk9Pnt2YXIgbD0oKT0+YSgpP2g/LigpfHwiTE9HT19XSVRIX1RFWFQiOmM/LigpP2s/LigpOiJMT0dPIjtyZXR1cm4gXy5LKF8uTUQse2ljb246KCk9Pnt2YXIgbT1sKCk7Zj8uKCkmJmE/LigpJiYobSs9Il9NT05PQ0hST01FIik7cmV0dXJuIG19LGNsYXNzTmFtZTpfLlAoKCk9PmIoKT8ibG9nby1pbi1wbGF5ZXIiOmQoKSx7ImZ1bGwtbG9nbyI6YSwiZnVsbC1sb2dvLXJlZCI6KCk9PmEoKSYmbCgpPT09IllPVVRVQkVfUFJFTUlVTV9MT0dPX1NIT1JUIiwic2hvcnRzLWxvZ28iOmMsbW9ub2Nocm9tYXRpYzpmfSksaWQ6ZX0pfSwid2QiKTt2YXIgV21hPV8uTChhPT5fLksoXy5JQixudWxsLF8uSyhPbWEse0Z4OiExLGFuaW1hdGlvbjphLmFuaW1hdGlvbn0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0U2hvcnRzRW1iZWRzVG9wYmFyQ29udGFpbmVyIn0sXy5LKFVWLHt0b3BiYXJMb2dvUmVuZGVyZXI6YS54eSxWajohMSxXajohMCxYajohMCxhazoxMzQ4NDB9KSxfLksoXy5PLHtBOmEucmVlbEl0ZW1XYXRjaFJlc3BvbnNlLHRoZW46KCk9Pl8uSyhIVix7b3JpZW50YXRpb246InZlcnRpY2FsX2Rvd24iLEg6YS5ILENwOiEwLGNsYXNzTmFtZToieXRTaG9ydHNFbWJlZHNWb2x1bWVDb250cm9scyIsYmo6ITB9KX0pKSxfLksoXy5PLHtBOmEub3ZlcmxheSx0aGVuOmI9Pl8uSyhSVix7ZGF0YTooKT0+e3ZhciBjPWIoKTtpZihfLnRQKCkpe3ZhciBkPWMubWVudT8ubWVudVJlbmRlcmVyO2M9ZD8uaXRlbXM/ey4uLmMsbWVudTp7Li4uYy5tZW51LG1lbnVSZW5kZXJlcjp7Li4uZCxpdGVtczpbe2FjY291bnRJbmZvTWVudUl0ZW06ITB9LAouLi5kLml0ZW1zXX19fTpjfXJldHVybiBjfSxjbGFzc05hbWU6Inl0U2hvcnRzRW1iZWRzUmVlbFBsYXllck92ZXJsYXlSZW5kZXJlciJ9KX0pLF8uSyhNbWEse0g6YS5ILGNvbnRleHQ6YS5jb250ZXh0fSkpLCJ4ZCIpLFdsYT1fLkwoYT0+e3ZhciB7SDpiLHJlZWxJdGVtV2F0Y2hSZXNwb25zZTpjLGpiOmQsUGg6ZSxjb250ZXh0OmZ9PV8uREMoYSx7SDp2b2lkIDAscmVlbEl0ZW1XYXRjaFJlc3BvbnNlOnZvaWQgMCxqYjp2b2lkIDAsUGg6dm9pZCAwfSksW2gsa109Xy5KKHZvaWQgMCx2b2lkIDAsIkNQU3pJZSIpLFtsLG1dPV8uSih2b2lkIDAsdm9pZCAwLCJJSTRIQ2QiKTtfLm9GKCgpPT57dmFyIEE9Yj8uKCk7QT8uaXNSZWFkeSgpJiZtKEEuZ2V0UGxheWVyU3RhdGUoKSl9KTt2YXIgbj1BPT57Yj8uKCkmJm0oQSl9O18ubkUoKCk9Pnt2YXIgQT1iPy4oKTtBJiYoQS5hZGRFdmVudExpc3RlbmVyKCJvblN0YXRlQ2hhbmdlIixuKSxfLll1KCgpPT57QS5yZW1vdmVFdmVudExpc3RlbmVyKCJvblN0YXRlQ2hhbmdlIiwKbil9KSl9LCJDN0Q1OWQiKTtfLm5FKCgpPT57dmFyIEE9YygpO2lmKEEpe2xldCBGPV8ueSgpLnJlc29sdmUoXy5iTCk7Zm9yKGxldCBDIG9mIEEuZW5nYWdlbWVudFBhbmVsc3x8W10pKEE9Qy5lbmdhZ2VtZW50UGFuZWxTZWN0aW9uTGlzdFJlbmRlcmVyKSYmRi5PeihBLmlkZW50aWZpZXI/LnRhZ3x8QS50YXJnZXRJZHx8QS5wYW5lbElkZW50aWZpZXIsQyl9fSwiUWRTZVRiIik7Xy5uRSgoKT0+e2Z1bmN0aW9uIEEoKXtpZihDKXtsZXQgRz1DLmdldE9wdGlvbnM/LigiY2FwdGlvbnMiKTtHJiZHLmxlbmd0aD4wJiZDPy51cGRhdGVTdWJ0aXRsZXNVc2VyU2V0dGluZ3M/Lih7Zm9udFNpemVJbmNyZW1lbnQ6Mn0sITEpfX12YXIgRj1iPy4oKTtpZihGKXt2YXIgQz1GO0EoKTtDLmFkZEV2ZW50TGlzdGVuZXIoIm9uQ2FwdGlvbnNNb2R1bGVBdmFpbGFibGUiLEEpO18uWXUoKCk9PntDLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uQ2FwdGlvbnNNb2R1bGVBdmFpbGFibGUiLEEpfSl9fSwibDhXMXZiIik7CnZhciBwPV8uTigoKT0+YygpPy5vdmVybGF5Py5yZWVsUGxheWVyT3ZlcmxheVJlbmRlcmVyfHxkKCk/LmVtYmVkUHJldmlldz8ucmVlbFBsYXllck92ZXJsYXlSZW5kZXJlcix2b2lkIDAsInplaFlZYiIpLHI9Xy5OKCgpPT57dmFyIEE7KEE9Xy5CKGMoKT8udG9wYmFyLCRsYSk/LnRvcGJhckxvZ28/LnRvcGJhckxvZ29SZW5kZXJlcil8fChBPWUoKT8uZW5kcG9pbnQsQT0oQT0oQSYmXy5CKEEsXy5URCkpPy52aWRlb0lkKT9gaHR0cHM6Ly93d3cueW91dHViZS5jb20vc2hvcnRzLyR7QX1gOiJodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMiLEE9e2ljb25JbWFnZTp7aWNvblR5cGU6IllPVVRVQkVfU0hPUlRTX09VVExJTkVfV0lUSF9URVhUXzI0In0sdG9vbHRpcFRleHQ6e3J1bnM6W3t0ZXh0OiJZb3VUdWJlIFNob3J0cyJ9XX0sZW5kcG9pbnQ6e2NvbW1hbmRNZXRhZGF0YTp7d2ViQ29tbWFuZE1ldGFkYXRhOnt1cmw6QSx3ZWJQYWdlVHlwZToiV0VCX1BBR0VfVFlQRV9TSE9SVFMiLApyb290VmU6MzgzMn19LHVybEVuZHBvaW50Ont1cmw6QSx0YXJnZXQ6IlRBUkdFVF9ORVdfV0lORE9XIn19fSk7cmV0dXJuIEF9LHZvaWQgMCwiTk4yNzJjIik7YT1fLk4oKCk9PntpZihsKCk9PT01KXt2YXIgQT1lKCk/LmVuZHBvaW50O2lmKEEmJihBPV8uQihBLF8uVEQpPy50aHVtYm5haWw/LnRodW1ibmFpbHM/LlswXT8udXJsKSlyZXR1cm4gXy5JRSh7ImJhY2tncm91bmQtc2l6ZSI6ImNvdmVyIiwiYmFja2dyb3VuZC1wb3NpdGlvbiI6ImNlbnRlciIsImJhY2tncm91bmQtcmVwZWF0Ijoibm8tcmVwZWF0IiwiYmFja2dyb3VuZC1pbWFnZSI6YCR7ImxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC40KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxNjBweCksXG4gICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNCkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgOTZweCkifSwgdXJsKCR7QX0pYH0pKCl9fSx2b2lkIDAsImkxNkZEZSIpOwp2YXIgdD1fLk4oKCk9PmIoKT8/dm9pZCAwLHZvaWQgMCwiVWZZdEZmIiksdj1fLk4oKCk9PnQoKT8uaXNNdXRlZEJ5RW1iZWRzTXV0ZWRBdXRvcGxheT8uKCksdm9pZCAwLCJsS2NBbWQiKSx6PV8uTigoKT0+KHt0YTpmKCkudGEsVGM6ZigpLlRjLEdjOmYoKS5HYyxiYTpmKCkuYmEsSDp0KCkscGxheWVyU3RhdGU6bCgpPz8tMSxTOigpPT57fX0pLHZvaWQgMCwiZTZsU2llIiksRT1fLk4oKCk9Pnt2YXIgQT10KCk/LmdldFBsYXllclJlc3BvbnNlPy4oKTtyZXR1cm4gQT9fLkIoQT8ub3ZlcmxheT8ucGxheWVyQ29udHJvbHNPdmVybGF5UmVuZGVyZXI/Lm11dGVkQXV0b3BsYXksb1YpOnZvaWQgMH0sdm9pZCAwLCJER1RTbmQiKTtyZXR1cm4gXy5LKF8ubkcse0VmOltfLm9HKCRULHQpXX0sXy5LKCJzaG9ydHMtZW1iZWRzIix7Y2xhc3M6Inl0U2hvcnRzRW1iZWRzSG9zdCIsIm9uOmNsaWNrIjpmdW5jdGlvbihBKXtBLnN0b3BQcm9wYWdhdGlvbigpO2lmKCFFUShBLnRhcmdldCwiQSIpJiYKIUVRKEEudGFyZ2V0LCJCVVRUT04iKSYmKEE9YigpKSYmQS5pc1JlYWR5KCkpaWYoQS5pc011dGVkQnlFbWJlZHNNdXRlZEF1dG9wbGF5KCkpe3ZhciBGPUEuZ2V0VmlkZW9EYXRhKCk/LnZpZGVvX2lkLEM9QS5nZXRDdXJyZW50VGltZSgpO0YmJihBLnVuTXV0ZSgpLEEubG9hZFZpZGVvQnlJZChGLEMpKX1lbHNlIEY9QS5nZXRQbGF5ZXJTdGF0ZSgpPT09MSxDPUEuaXNNdXRlZEJ5TXV0ZWRBdXRvcGxheSgpLEYmJkM/QS51bk11dGUoKTooRj1BLmdldFBsYXllclN0YXRlKCk9PT0xLEM9QS5pc011dGVkQnlNdXRlZEF1dG9wbGF5KCksRiYmIUM/KEEucGF1c2VWaWRlbygpLGsoe25hbWU6InBhdXNlXzk2ZHBfYW5pbWF0aW9uIn0pKTpGfHwoQyYmQS51bk11dGUoKSxBLnBsYXlWaWRlbygpLGsoe25hbWU6InBsYXlfOTZkcF9hbmltYXRpb24ifSkpKX0sc3R5bGU6YX0sXy5LKF8uTyx7QTooKT0+digpLHRoZW46KCk9Pl8uSyhMVix7Rzp6LHBsYXllck11dGVkQXV0b3BsYXlPdmVybGF5UmVuZGVyZXI6RX0pLApXOigpPT5fLksoV21hLHthbmltYXRpb246aCx4eTpyLHJlZWxJdGVtV2F0Y2hSZXNwb25zZTpjLEg6dCxvdmVybGF5OnAsY29udGV4dDpmfSl9KSkpfSwiQ2QiKTt2YXIgYlY9Xy5MKCh7ZGF0YTphfSk9PntKamEoKTtyZXR1cm4gXy5LKCJ5dC1wbGF5ZXItaW50ZXJzdGl0aWFsLXJlbmRlcmVyIix7Y2xhc3M6InBsYXllckludGVyc3RpdGlhbFJlbmRlcmVySG9zdCIscm9sZToiZGlhbG9nIiwiYXJpYS1sYWJlbCI6KCk9Pnt2YXIgYjthOntpZihiPWEoKS5jb250ZW50KXt2YXIgYz1fLkIoYixibWEpO2lmKGM/LnRpdGxlPy5jb250ZW50KXtiPWMudGl0bGUuY29udGVudDticmVhayBhfWI9Xy5CKGIsZW1hKTtiPWI/LmhlYWRlciYmXy5CKGIuaGVhZGVyLGRtYSk7aWYoYj8uaGVhZGxpbmU/LmNvbnRlbnQpe2I9Yi5oZWFkbGluZS5jb250ZW50O2JyZWFrIGF9fWI9dm9pZCAwfXJldHVybiBifSx0YWJpbmRleDotMSxlbDpfLnJGKGI9PnZvaWQgYj8uZm9jdXMoKSl9LF8uSygiZGl2Iix7Y2xhc3M6InBsYXllckludGVyc3RpdGlhbFJlbmRlcmVyU2NyaW0ifSxfLksoXy5XLHtkYXRhOigpPT5hKCkuY29udGVudH0se2ludGVyc3RpdGlhbFZpZXdNb2RlbDpfLmVqYSwKZGlhbG9nVmlld01vZGVsOl8uJGlhfSkpKX0sIkRkIik7YlYuaWRvbUNvbXBhdD0hMDt2YXIgVlY9Xy5MKCh7Z2Y6YSxJYjpifSk9Pl8uSygieXQtYmlnYm9hcmQiLG51bGwsXy5LKF8uTyx7QTooKT0+YSgpLmlzRHJhZ2dpbmcsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRCaWdib2FyZFN0b3J5Ym9hcmRIb3N0In0sXy5LKEdtYSx7TGI6YSxJYjpifSkpfSkpLCJFZCIpO1ZWLmlkb21Db21wYXQ9ITA7dmFyIFdWPV8uTChhPT57dmFyIGI9YS5HO2E9Xy5OKCgpPT5iKCkuZWE/Xy4kTi5tdDpfLiROLlp0LHZvaWQgMCwieGlkenVkIik7cmV0dXJuIF8uSygiYnV0dG9uIix7Im9uOmNsaWNrIjpmdW5jdGlvbihjKXt2YXIgZD17ZWE6IWIoKS5lYSx5cTohMH07YigpLlMoZCk7Yy5zdG9wUHJvcGFnYXRpb24oKX0saWQ6InBsYXllci1jb250cm9scy1hMTF5LXRvZ2dsZSIsY2xhc3M6Inl0bUExMXlTdHlsZXNIaWRkZW5CdXR0b24iLCJhcmlhLWxhYmVsIjphfSl9LCJGZCIpO3ZhciBYVj1fLkwoYT0+e2Z1bmN0aW9uIGIoaCl7WFMoYS5GZCgpPT09LTE/MTQxOTAyOjE0MTkwMyk7dmFyIGs9Yz8uKCksbD1hLkZkKCk7az8uc2Vla0J5KGwqMTAsdm9pZCAwLHZvaWQgMCxsPT09LTE/ODM6ODIpO2guc3RvcFByb3BhZ2F0aW9uKCl9dmFyIGM9Xy5rRygkVCksZD0oKT0+YS5GZCgpPT09LTE/Xy4kTi5RdC5yZXBsYWNlKCIkc2Vjb25kc19wbGFjZWhvbGRlciIsKDEwKS50b1N0cmluZygpKTpfLiROLkl0LnJlcGxhY2UoIiRzZWNvbmRzX3BsYWNlaG9sZGVyIiwoMTApLnRvU3RyaW5nKCkpLGU9Xy5OKCgpPT57dmFyIGg9YS5HKCk7cmV0dXJuIF8ueCgibXdlYl9wY19saXZlX2R2cl9rcyIpPyEwOiEoaC5pc0xpdmUmJiFoLmlzTGl2ZUR2ckVuYWJsZWQpfSx2b2lkIDAsIkthcklLYyIpLGY9Xy51RSgiYnV0dG9uIixoPT57V1MoaCxhLkZkKCk9PT0tMT8xNDE5MDI6MTQxOTAzKX0pO3JldHVybiBfLksoXy5PLHtBOmUsdGhlbjooKT0+Xy5LKCJidXR0b24iLHsiYXJpYS1sYWJlbCI6ZCwKY2xhc3M6Xy5QKGEuY2xhc3NOYW1lLCJ5dG1BMTF5U3R5bGVzSGlkZGVuQnV0dG9uIiwicGxheWVyLWNvbnRyb2wtc2Vlay1pY29uLWExMXkiKSxzdHlsZTpfLklFKHtsZWZ0OigpPT5hLkZkKCk9PT0tMT8iMCI6InVuc2V0IixyaWdodDooKT0+YS5GZCgpPT09MT8iMCI6InVuc2V0In0pLGVsOmYsIm9uOmNsaWNrIjpifSl9KX0sIkdkIik7dmFyIFlWPV8uTChhPT57dmFyIHtVZDpiLG9uY2xpY2s6YywuLi5kfT1hO2E9Xy51RSgiZGl2IixlPT57V1MoZSxiKCkpfSk7cmV0dXJuIF8uSygiZGl2Iix7ZWw6YX0sXy5LKF8udE8sey4uLmQsb25jbGljazplPT57WFMoYigpKTtjPy4oZSl9fSkpfSwiSGQiKTt2YXIgWlY9Xy5MKGE9Pnt2YXIgYj1fLngoImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiKT8icGxheWVyX2Z1bGxfZW50ZXJfYWx0IjoiRlVMTFNDUkVFTiIsYz1fLngoImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiKT8icGxheWVyX2Z1bGxfZXhpdF9hbHQiOiJGVUxMU0NSRUVOX0VYSVQiLGQ9KCk9PmEuRygpLmlzRnVsbHNjcmVlbj9jOmI7cmV0dXJuIF8uSyhZVix7bmFtZTpkLGFyaWFMYWJlbDooKT0+YS5HKCkuaXNGdWxsc2NyZWVuP18uJE4uSHQ6Xy4kTi5KdCxjb250ZW50OigpPT5fLksoImRpdiIse2NsYXNzOiJwbGF5ZXItYm90dG9tLWNvbnRyb2xzLWZ1bGxzY3JlZW4taWNvbi12aXNpYmxlLWFyZWEifSxfLksoXy5NRCx7aWNvbjpkfSkpLGNsYXNzTmFtZToiZnVsbHNjcmVlbi1pY29uIixVZDoxMzkxMTcsb25jbGljazplPT57YS5HKCkudGEudG9nZ2xlRnVsbHNjcmVlbigpO2Uuc3RvcFByb3BhZ2F0aW9uKCl9fSl9LCJJZCIpO3ZhciAkVj1fLkwoYT0+e3ZhciBiPV8ua0coJFQpO3JldHVybiBfLksoWVYse25hbWU6KCk9PmEuRygpLnBsYXllclN0YXRlPT09MXx8YS55cyYmYS5HKCkucGxheWVyU3RhdGU9PT0zPyJQQVVTRV9GSUxMRUQiOiJQTEFZX0FSUk9XX0ZJTExFRCIsYXJpYUxhYmVsOigpPT5hLkcoKS5wbGF5ZXJTdGF0ZT09PTF8fGEueXMmJmEuRygpLnBsYXllclN0YXRlPT09Mz9fLiROLkx0Ol8uJE4uUGcsY2xhc3NOYW1lOiJwbGF5ZXItY29udHJvbC1wbGF5LXBhdXNlLWljb24iLFVkOjM2ODQyLG9uY2xpY2s6Yz0+e3ZhciBkPWEuRygpLGU9Yj8uKCk7ZSYmKGU9V1EoZSksZC5TKHtqZTplfSkpO2Muc3RvcFByb3BhZ2F0aW9uKCl9fSl9LCJKZCIpO3ZhciBhVz1fLkwoYT0+e3ZhciBiPV8ua0coJFQpO3JldHVybiBfLksoWVYse25hbWU6IlBMQVlFUl9SRVBMQVkiLGFyaWFMYWJlbDpfLiROLlB0LGNsYXNzTmFtZToiZW5kc2NyZWVuLXJlcGxheS1idXR0b24iLFVkOjU2Mzg2LG9uY2xpY2s6Yz0+e3ZhciBkPWEuRygpLGU9Yj8uKCk7ZSYmKGQucmMmJmU/LnVuTXV0ZSgpLGUucGxheVZpZGVvKCkpO2Muc3RvcFByb3BhZ2F0aW9uKCl9fSl9LCJLZCIpO3ZhciBiVz1fLkwoYT0+Xy5LKFlWLHtuYW1lOiJHRUFSIixhcmlhTGFiZWw6Xy4kTi52dCxjbGFzc05hbWU6Xy5QKCJwbGF5ZXItc2V0dGluZ3MtaWNvbiIsYS5jbGFzc05hbWUpLFVkOjI4NjYzLG9uY2xpY2s6Yj0+e2EuRygpLnRhLlNqKGIpfX0pLCJMZCIpO3ZhciBjVz1fLkwoYT0+e3ZhciB7S3U6YixvbkNsaWNrOmMsYXJpYUxhYmVsOmQsYXJpYVByZXNzZWQ6ZSxpc092ZXJsYXk6Zn09Xy5EQyhhLHtpc092ZXJsYXk6ITF9KTthPV8udUUoImJ1dHRvbiIsaD0+e1dTKGgsMTI3Mjk5KX0pO3JldHVybiBfLksoInl0bS1jbG9zZWQtY2FwdGlvbmluZy1idXR0b24iLHtjbGFzczpfLlAoInl0bUNsb3NlZENhcHRpb25pbmdCdXR0b25Ib3N0Iix7eXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbkljb25EaXNhYmxlZE92ZXJsYXk6KCk9PmIoKT09PS0xJiZmKCkseXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbkljb25EaXNhYmxlZDooKT0+YigpPT09LTEmJiFmKCl9KX0sXy5LKCJidXR0b24iLHtlbDphLGNsYXNzOiJ5dG1DbG9zZWRDYXB0aW9uaW5nQnV0dG9uQnV0dG9uIix0aXRsZTpkLCJhcmlhLWxhYmVsIjpkLCJhcmlhLXByZXNzZWQiOmUsImFyaWEtZGlzYWJsZWQiOigpPT5iKCk9PT0tMT8idHJ1ZSI6dm9pZCAwLCJvbjpjbGljayI6ZnVuY3Rpb24oaCl7WFMoMTI3Mjk5KTsKYz8uKGgpO2guc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5NRCx7aWNvbjooKT0+e3ZhciBoPSIiO2lmKF8ueCgibXdlYl9sb2NhbGl6ZWRfY2NfaWNvbiIpKXt2YXIgaz1fLkh6KCkuZ2V0KCJobCIpO2s9IWt8fGhtYS5pbmNsdWRlcyhrKT8iQ0xPU0VEX0NBUFRJT04iOiJTVUJUSVRMRVMifWVsc2Ugaz0iQ0xPU0VEX0NBUFRJT04iO3ZhciBsPWIoKTtzd2l0Y2gobCl7Y2FzZSAtMTpjYXNlIDA6aD1rO2JyZWFrO2Nhc2UgMTpoPWsrIl9GSUxMRUQiO2JyZWFrO2RlZmF1bHQ6Xy5lYihsLHZvaWQgMCl9cmV0dXJuIGh9LGNsYXNzTmFtZTpfLlAoe3l0bUNsb3NlZENhcHRpb25pbmdCdXR0b25ZdEljb25PdmVybGF5OmZ9KX0pKSl9LCJNZCIpO2NXLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7b25DbGljazohMH19O3ZhciBrVT0iIjt2YXIgZFc9Xy5MKGE9Pnt2YXIgYj1hLmdmLGM9YS5zTCxkPWEuV3EsZT1hLmNsYXNzTmFtZSxmPWEuVnIsaD1wPT57dmFyIHI9YigpLHQ9Yz8uKCksdj1mKCk7ci54YyYmKHQ/ci5IPy50b2dnbGVTdWJ0aXRsZXModik6KHQ9ci5IKSYmUVEodCxsVShyKSx2KSk7Xy54KCJ3ZWJfZGVsZXRlX3NuYWNrYmFycyIpfHxyLnRhLnFBPy4ocik7ZD8uKHApfSxrPV8uTigoKT0+e3ZhciBwPWIoKSxyPS0xO3AueGMmJihyPXAuY2FwdGlvbnNFbmFibGVkPzE6MCk7cmV0dXJuIHJ9LHZvaWQgMCwiSE1vMnJjIiksbD1fLk4oKCk9Pnt2YXIgcD1iKCk7cmV0dXJuIHAueGM/Xy5hQShwLmNhcHRpb25zRW5hYmxlZD8iQ0xPU0VEX0NBUFRJT05TX09OIjoiQ0xPU0VEX0NBUFRJT05TX09GRiIpOl8uYUEoIkNMT1NFRF9DQVBUSU9OU19ESVNBQkxFRCIpfSx2b2lkIDAsIldRNTFZZSIpLG09Xy5OKCgpPT57dmFyIHA9YigpO3A9cC54Yz9wLmNhcHRpb25zRW5hYmxlZDp2b2lkIDA7cmV0dXJuIHB9LHZvaWQgMCwKIkkwTFR1YiIpLG49Xy5OKCgpPT5iKCkueGMsdm9pZCAwLCJMdmVPV2UiKTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+Xy54KCJtd2ViX3BsYXllcl9oaWRlX3VuYXZhaWxhYmxlX3N1YnRpdGxlc19idXR0b24iKT9uKCk6ITAsdGhlbjooKT0+Xy5LKCJ5dC1jbG9zZWQtY2FwdGlvbnMtdG9nZ2xlLWJ1dHRvbiIse2NsYXNzOmV9LF8uSyhjVyx7S3U6ayxhcmlhTGFiZWw6bCxhcmlhUHJlc3NlZDptLG9uQ2xpY2s6aCxpc092ZXJsYXk6ITB9KSl9KX0sIk5kIik7dmFyIGVXPV8uTCgoe0lBOmEsZGF0YTpiLGNoaWxkcmVuOmN9KT0+e2Z1bmN0aW9uIGQoKXthPy4oKXx8cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57Zi52YWx1ZSYmKGgudmFsdWUuc3R5bGUud2lkdGg9YCR7Zi52YWx1ZS5vZmZzZXRXaWR0aH1weGApfSl9dmFyIGU9dm9pZCAwLGY9Xy51RSgiZGl2IiksaD1fLnVFKCJkaXYiKSxrPV8uQlEoKSxsPV8uQlEoKTtfLm5FKCgpPT57ZCgpOyFlJiZiKCkuc3Vic2NyaWJlZCYmKGsubG90dGllRWw/LmdvVG9BbmRQbGF5KDApLGwubG90dGllRWw/LmdvVG9BbmRQbGF5KDApKTtlPSEhYigpLnN1YnNjcmliZWR9LCJNTTBqQWYiKTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczoieXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25Ib3N0In0sXy5LKF8uQVEse09vOmssUnA6bH0sXy5LKCJkaXYiLHtlbDpoLGNsYXNzOl8uUCgieXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25Db250ZW50Q29udGFpbmVyIix7eXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25TdGF0aWNXaWR0aDphLAp5dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkNhbkFuaW1hdGU6KCk9PmIoKS5zdWJzY3JpYmVkfSl9LF8uSygiZGl2Iix7ZWw6ZixjbGFzczoieXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25GbGV4Q29udGFpbmVyIn0sYykpKSl9LCJQZCIpO2VXLmlkb21Db21wYXQ9ITA7dmFyIGZXPV8uTCgoe2RhdGE6YSxidXR0b25PdmVycmlkZXM6Yn0pPT57dmFyIFtjXT1uamEoYSk7cmV0dXJuIF8uSygieXRtLXN1YnNjcmliZS1idXR0b24tcmVuZGVyZXIiLHtjbGFzczpfLlAoeyJpcy1zdWJzY3JpYmVkIjooKT0+YygpLnN1YnNjcmliZWQsImlzLW5vdC1zdWJzY3JpYmVkIjooKT0+IWMoKS5zdWJzY3JpYmVkLGRpc2FibGVkOigpPT57dmFyIGQ7aWYoZD0hIWMoKS50aGVtZSl7ZD0hIWMoKS5zdWJzY3JpYmVkO3ZhciBlPWMoKS50aGVtZTtkPWQ/ISFlLnN1YnNjcmliZWRDb2xvclBhbGV0dGUmJl8udU4oZS5zdWJzY3JpYmVkQ29sb3JQYWxldHRlKTohIWUudW5zdWJzY3JpYmVkQ29sb3JQYWxldHRlJiZfLnVOKGUudW5zdWJzY3JpYmVkQ29sb3JQYWxldHRlKX1yZXR1cm4gZH19KX0sXy5LKF8uYWphLHtzZXR0aW5nczooKT0+KHt1bmlxdWVJZDoic3Vic2NyaWJlIixmazpjKCkudGltZWRBbmltYXRpb25EYXRhPy5hbmltYXRpb25UaW1pbmd8fFtdLFhkOihjKCkudGltZWRBbmltYXRpb25EYXRhPy5hbmltYXRpb25UaW1pbmd8fApbXSkubGVuZ3RoPjAsZW5hYmxlZDohYygpLnN1YnNjcmliZWQmJihjKCkudGltZWRBbmltYXRpb25EYXRhPy5hbmltYXRpb25UaW1pbmd8fFtdKS5sZW5ndGg+MH0pfSxfLksoWG1hLHtkYXRhOmMsYnV0dG9uT3ZlcnJpZGVzOmJ9KSkpfSwiUWQiKTtmVy5pZG9tQ29tcGF0PSEwOwp2YXIgWG1hPV8uTCgoe2RhdGE6YSxidXR0b25PdmVycmlkZXM6Yn0pPT57dmFyIGM9KCk9PiEoIWEoKS5zdWJzY3JpYmVkfHwhYSgpLm5vdGlmaWNhdGlvblByZWZlcmVuY2VUb2dnbGVCdXR0b24pLGQ9Xy5OKCgpPT4oey4uLlFqYSh7cmVuZGVyZXI6YSgpLHN1YnNjcmliZWQ6ISFhKCkuc3Vic2NyaWJlZCxpc092ZXJsYXk6Xy5XTSgpPyEwOiExLHN0b3BQcm9wYWdhdGlvbjohMH0pLGRpc2FibGVkOiFhKCkuZW5hYmxlZCwuLi4oYj8uKCl8fHt9KX0pLHZvaWQgMCwieW9DZGNlIik7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Im1vZGVybi1zdWJzY3JpYmUtYnV0dG9uLWNvbnRhaW5lciJ9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJub3RpZmljYXRpb24tYmVsbC1jb250YWluZXIiLHtoaWRkZW46KCk9PiFjKCl9KX0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLm5vdGlmaWNhdGlvblByZWZlcmVuY2VUb2dnbGVCdXR0b259LHt0b2dnbGVCdXR0b25SZW5kZXJlcjooe2RhdGE6ZX0pPT5fLksoXy5xTywKe2RhdGE6ZSxidXR0b25PdmVycmlkZXM6e3N0eWxlOiJvdmVybGF5In0sY2xhc3NOYW1lOl8uUCgibm90aWZpY2F0aW9uLWJlbGwiLHtoaWRkZW46KCk9PiFjKCl9KX0pfSkpLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJtb2Rlcm4tc3Vic2NyaWJlLWJ1dHRvbiIseyJ3aXRoLW5vdGlmaWNhdGlvbi1iZWxsIjpjfSl9LF8uSyhfLk8se0E6KCk9PiFfLldNKCksdGhlbjooKT0+e3ZhciBlPV8uVU0oKT09PSJjaGFubmVsIjtyZXR1cm4gXy5LKGVXLHtkYXRhOmEsSUE6ZX0sXy5LKF8uSksse2RhdGE6ZH0pKX0sVzooKT0+Xy5LKF8uSksse2RhdGE6ZH0pfSksXy5LKCJkaXYiLHtjbGFzczoic3Vic2NyaWJlLWJ1dHRvbi1jb3VudCJ9LF8uSyhfLklKLHtkYXRhOigpPT5hKCkuc3Vic2NyaWJlckNvdW50VGV4dH0pKSkpfSwiUmQiKTt2YXIgZ1c9Xy5MKCh7ZW5kc2NyZWVuRWxlbWVudFJlbmRlcmVyOmEsaXNBY3RpdmU6YixYaDpjfSk9PntmdW5jdGlvbiBkKCl7Xy5BSihhKCkuZW5kcG9pbnQsYSgpLCEwKX12YXIgZT0oKT0+YSgpLnN0eWxlPT09IkNIQU5ORUwiLGY9Xy5QKCJ5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlsIix7eXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFJvdW5kOmV9KSxoPSgpPT5OdW1iZXIoYSgpLmxlZnQpK051bWJlcihhKCkud2lkdGgvMik8LjUsaz1fLlAoInl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Iix7eXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlSaWdodDpoLHl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TGVmdDooKT0+IWgoKSx5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVJpZ2h0QWN0aXZlOigpPT5iKCkmJmgoKSx5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUxlZnRBY3RpdmU6KCk9PgpiKCkmJiFoKCl9KSxsPSgpPT5hKCkudGl0bGUsbT0oKT0+YSgpLmhvdmVyY2FyZEJ1dHRvbixuPSgpPT5hKCkubWV0YWRhdGEscD0oKT0+YSgpLmNhbGxUb0FjdGlvbixyPV8uUCh7eXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YVdlYnNpdGU6KCk9PiFlKCkseXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWw6ZX0pO2M9Xy5QKCJ5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50U2NyaW0iLHt5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50U2NyaW1DaGFubmVsOmUseXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFNjcmltQWN0aXZlOmN9KTt2YXIgdD1fLlAoInl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRIb3N0Iix7eXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudEhvc3RBY3RpdmU6Yn0pO3JldHVybiBfLksoImV4cGFuZGluZy1lbmRzY3JlZW4tZWxlbWVudCIse2NsYXNzOnR9LF8uSygiZGl2Iix7Y2xhc3M6Y30pLApfLksoImRpdiIse2NsYXNzOmt9LF8uSygiZGl2Iix7Y2xhc3M6Inl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudCJ9LF8uSyhfLk8se0E6bCx0aGVuOigpPT5fLksoXy5WLHt0ZXh0OmwsY2xhc3NOYW1lOiJ5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVRpdGxlIn0pfSksXy5LKF8uTyx7QTptLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5QnV0dG9uIn0sXy5LKF8uVyx7ZGF0YTptfSx7c3Vic2NyaWJlQnV0dG9uUmVuZGVyZXI6Zld9KSl9KSxfLksoXy5PLHtBOm4sdGhlbjooKT0+Xy5LKF8uVix7Y2xhc3NOYW1lOnIsdGV4dDpufSl9KSxfLksoXy5PLHtBOigpPT4hZSgpJiZhKCkuY2FsbFRvQWN0aW9uLHRoZW46KCk9Pl8uSygiZGl2Iix7Im9uOmNsaWNrIjpkLHN0eWxlOiJkaXNwbGF5OiBjb250ZW50cyJ9LF8uSyhfLlYse2NsYXNzTmFtZToieXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDYWxsVG9BY3Rpb24iLAp0ZXh0OnB9KSl9KSkpLF8uSygiZGl2Iix7Im9uOmNsaWNrIjpkfSxfLksoXy5VUCx7dGh1bWJuYWlsRGV0YWlsczooKT0+YSgpLmltYWdlLGNsYXNzTmFtZTpmfSkpKX0sIlNkIik7Z1cuaWRvbUNvbXBhdD0hMDt2YXIgaFc9Xy5MKCh7ZW5kc2NyZWVuRWxlbWVudFJlbmRlcmVyOmEsaXNBY3RpdmU6YixYaDpjfSk9Pnt2YXIgZD0oKT0+YSgpLnRpdGxlLGU9KCk9PmEoKS50aHVtYm5haWxPdmVybGF5cyxmPSgpPT5hKCkucGxheWxpc3RMZW5ndGg7Yj1fLlAoInl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRIb3N0Iix7eXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudEhvc3RBY3RpdmU6Yn0pO2M9Xy5QKCJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50U2NyaW0iLHt5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50U2NyaW1BY3RpdmU6Y30pO3JldHVybiBfLksoInRodW1ibmFpbC1lbmRzY3JlZW4tZWxlbWVudCIse2NsYXNzOmIsIm9uOmNsaWNrIjpmdW5jdGlvbigpe18uQUooYSgpLmVuZHBvaW50LGEoKSwhMCl9fSxfLksoImRpdiIse2NsYXNzOmN9KSxfLksoXy5PLHtBOmQsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRvcE92ZXJsYXkifSwKXy5LKCJkaXYiLHtjbGFzczoieXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRvcEdyYWRpZW50In0pLF8uSyhfLlYse3RleHQ6ZCxjbGFzc05hbWU6Inl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWxUaXRsZSIsdWI6ITAsbWE6ITB9KSl9KSxfLksoXy5VUCx7dGh1bWJuYWlsRGV0YWlsczooKT0+YSgpLmltYWdlLGNsYXNzTmFtZToieXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbCJ9KSxfLksoXy5PLHtBOmUsdGhlbjooKT0+Xy5LKF8uVyx7ZGF0YTplfSx7dGh1bWJuYWlsT3ZlcmxheVRpbWVTdGF0dXNSZW5kZXJlcjooe2RhdGE6aH0pPT5fLksoXy5WUCx7ZGF0YTpoLGNsYXNzTmFtZToieXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMifSl9KX0pLF8uSyhfLk8se0E6Zix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGhPdmVybGF5In0sXy5LKF8uTUQsCntpY29uOiJQTEFZTElTVFNfQ0FJUk8iLGNsYXNzTmFtZToieXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFBsYXlsaXN0SWNvbiJ9KSxfLksoXy5WLHt0ZXh0OmYsY2xhc3NOYW1lOiJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGgiLHViOiEwLG5vV3JhcDohMCxtYTohMH0pKX0pKX0sIlRkIik7aFcuaWRvbUNvbXBhdD0hMDt2YXIgaVc9WzM0Niw0MjYsNDcwLDUwNiw1NzAsNjQwLDg1MywxMjgwLDE5MjBdLGpXPVsieXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nU21hbGwiLCJ5dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdNZWRpdW0iLCJ5dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdMYXJnZSJdLGxXPV8uTCgoe2VuZHNjcmVlblJlbmRlcmVyOmEsRzpifSk9Pnt2YXIgW2MsZF09Xy5KKG5ldyBGUSgwLDAsMCwwKSx2b2lkIDAsInV1dU1LYyIpLFtlLGZdPV8uSihuZXcgXy5uZCgwLDApLHZvaWQgMCwicHlhaWpiIiksW2gsa109Xy5KKCIiLHZvaWQgMCwiTUszaUFmIiksW2wsbV09Xy5KKCExLHZvaWQgMCwiZU1PZmliIiksbj1fLk4oKCk9PmIoKS5ILHZvaWQgMCwicEY2ODRiIikscD1fLk4oKCk9Pl8uVXcoYSgpLnRyYWNraW5nUGFyYW1zKSx2b2lkIDAsImpib1BGZiIpLHI9KCk9Pnt2YXIgQT1uKCk/LmdldFZpZGVvQ29udGVudFJlY3QoKTtBJiZBLndpZHRoPjAmJkEuaGVpZ2h0PjAmJmQobmV3IEZRKEEubGVmdCwKQS50b3AsQS53aWR0aCxBLmhlaWdodCkpOyhBPW4oKT8uZ2V0U2l6ZSgpKSYmQS53aWR0aD4wJiZBLmhlaWdodD4wJiZmKG5ldyBfLm5kKEEud2lkdGgsQS5oZWlnaHQpKX0sdD1BPT57QT09PSJ5dG0tY2UtaW4tZW5kc2NyZWVuIiYmKG0oITApLFpTKHAoKSkpfSx2PUE9PntBPT09Inl0bS1jZS1pbi1lbmRzY3JlZW4iJiZtKCExKX07Xy5VSigoKT0+e3IoKTtIa2EocCgpKTtuKCk/LmFkZEV2ZW50TGlzdGVuZXIoIm9uQ3VlUmFuZ2VFbnRlciIsdCk7bigpPy5hZGRFdmVudExpc3RlbmVyKCJvbkN1ZVJhbmdlRXhpdCIsdik7bigpPy5hZGRDdWVSYW5nZSgieXRtLWNlLWluLWVuZHNjcmVlbiIsTnVtYmVyKGEoKS5zdGFydE1zKS8xRTMsTnVtYmVyKDB4N2ZmZmZmZmZmZmZmZikvMUUzKTtfLll1KCgpPT57YigpLkg/LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uQ3VlUmFuZ2VFbnRlciIsdCk7YigpLkg/LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uQ3VlUmFuZ2VFbnRlciIsdik7bigpPy5yZW1vdmVDdWVSYW5nZSgieXRtLWNlLWluLWVuZHNjcmVlbiIpfSl9KTsKXy5EUCgicmVzaXplIixyKTt2YXIgej1fLlAoInl0bUNyZWF0b3JFbmRzY3JlZW5Ib3N0IiwoKT0+e3ZhciBBPWMoKS53aWR0aCxGPTAsQz0tMTtmb3IobGV0IEc9MDtHPGlXLmxlbmd0aDtHKyspe2xldCBEPU1hdGguYWJzKEEtaVdbR10pO2lmKEM9PT0tMXx8Rj49RClDPUcsRj1EfXJldHVybmB5dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZSR7aVdbQ119YH0se3l0bUNyZWF0b3JFbmRzY3JlZW5JbkN1ZVJhbmdlOmx9KSxFPV8uUCgieXRtQ3JlYXRvckVuZHNjcmVlblNjcmltIix7eXRtQ3JlYXRvckVuZHNjcmVlblNjcmltVmlzaWJsZTooKT0+aCgpfSk7cmV0dXJuIF8uSygiY3JlYXRvci1lbmRzY3JlZW4iLHtjbGFzczp6fSxfLksoImRpdiIse2NsYXNzOkUsc3R5bGU6Xy5JRSh7d2lkdGg6KDAsXy5aSykoKCk9PmUoKS53aWR0aCksaGVpZ2h0OigwLF8uWkspKCgpPT5lKCkuaGVpZ2h0KX0pfSksXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmVsZW1lbnRzfSx7ZW5kc2NyZWVuRWxlbWVudFJlbmRlcmVyOih7ZGF0YTpBfSk9PgpfLksoa1cse2RhdGE6QSxHQjpjLGlzQWN0aXZlOigpPT5oKCk9PT1BKCkuaWQsWGg6KCk9PiEhaCgpJiZoKCkhPT1BKCkuaWQsZUE6ayxIOm59KX0pKX0sIlVkIik7bFcuaWRvbUNvbXBhdD0hMDsKdmFyIGtXPV8uTCgoe2RhdGE6YSxHQjpiLGlzQWN0aXZlOmMsWGg6ZCxlQTplLEg6Zn0pPT57dmFyIFtoLGtdPV8uSighMSx2b2lkIDAsIktXWUpJZSIpLGw9Xy5OKCgpPT5fLlV3KGEoKS50cmFja2luZ1BhcmFtcyksdm9pZCAwLCJVeHB5VWIiKSxtPXQ9Pnt0LnN1YnN0cmluZygxNSk9PT1hKCkuaWQmJihrKCEwKSxaUyhsKCkpKX0sbj10PT57dC5zdWJzdHJpbmcoMTUpPT09YSgpLmlkJiZrKCExKX07Xy5VSigoKT0+e2Y/LigpLmFkZEV2ZW50TGlzdGVuZXIoIm9uQ3VlUmFuZ2VFbnRlciIsbSk7Zj8uKCkuYWRkRXZlbnRMaXN0ZW5lcigib25DdWVSYW5nZUV4aXQiLG4pO3ZhciB0PWB5dG0tY2UtZWxlbWVudC0ke2EoKS5pZH1gO2Y/LigpLmFkZEN1ZVJhbmdlKHQsTnVtYmVyKGEoKS5zdGFydE1zKS8xRTMsTnVtYmVyKGEoKS5lbmRNcykvMUUzKTtfLll1KCgpPT57Zj8uKCkucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25DdWVSYW5nZUVudGVyIixtKTtmPy4oKS5yZW1vdmVFdmVudExpc3RlbmVyKCJvbkN1ZVJhbmdlRW50ZXIiLApuKTtmPy4oKS5yZW1vdmVDdWVSYW5nZSh0KX0pfSk7dmFyIHA9KCk9PmIoKS5jbG9uZSgpLnNjYWxlKGEoKS53aWR0aCxhKCkud2lkdGgqYigpLmdldFNpemUoKS5hc3BlY3RSYXRpbygpL2EoKS5hc3BlY3RSYXRpbykudHJhbnNsYXRlKGEoKS5sZWZ0KmIoKS53aWR0aC1iKCkubGVmdCooYSgpLndpZHRoLTEpLGEoKS50b3AqYigpLmhlaWdodC1iKCkudG9wKihhKCkud2lkdGgqYigpLmdldFNpemUoKS5hc3BlY3RSYXRpbygpL2EoKS5hc3BlY3RSYXRpby0xKSkscj1fLlAoInl0bUNyZWF0b3JFbmRzY3JlZW5FbGVtZW50Iix7eXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRWaXNpYmxlOigpPT5oKCl9LCgpPT5wKCkud2lkdGg+MjU2fHxwKCkuaGVpZ2h0PjI1Nj9qV1syXTpwKCkud2lkdGg+OTZ8fHAoKS5oZWlnaHQ+OTY/aldbMV06aldbMF0pO3JldHVybiBfLksoImRpdiIse2NsYXNzOnIsc3R5bGU6Xy5JRSh7d2lkdGg6KDAsXy5aSykoKCk9PnAoKS53aWR0aCksaGVpZ2h0OigwLF8uWkspKCgpPT4KcCgpLmhlaWdodCksdG9wOigwLF8uWkspKCgpPT5wKCkudG9wKSxsZWZ0Ol8ueSgpLnJlc29sdmUoXy5sRik9PT0ibHRyIj8oMCxfLlpLKSgoKT0+cCgpLmxlZnQpOiJhdXRvIixyaWdodDpfLnkoKS5yZXNvbHZlKF8ubEYpPT09InJ0bCI/KDAsXy5aSykoKCk9PihmPy4oKS5nZXRTaXplKCk/LndpZHRoPz8wKS1wKCkubGVmdC1wKCkud2lkdGgpOiJhdXRvIn0pLCJvbjptb3VzZW92ZXIiOmZ1bmN0aW9uKHQpe2UoYSgpLmlkKTt0LnN0b3BQcm9wYWdhdGlvbigpfSwib246bW91c2VvdXQiOmZ1bmN0aW9uKHQpe2UoIiIpO3Quc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjpmb2N1c2luIjpmdW5jdGlvbih0KXtzZXRUaW1lb3V0KCgpPT57ZShhKCkuaWQpfSwwKTt0LnN0b3BQcm9wYWdhdGlvbigpfSwib246Zm9jdXNvdXQiOmZ1bmN0aW9uKHQpe2UoIiIpO3Quc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjp0b3VjaHN0YXJ0IjpmdW5jdGlvbih0KXtlKGEoKS5pZCk7WVMobCgpKTt0LnN0b3BQcm9wYWdhdGlvbigpfSwKIm9uOmNsaWNrIjpmdW5jdGlvbih0KXtZUyhsKCkpO3Quc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5hKCkuc3R5bGU9PT0iVklERU8ifHxhKCkuc3R5bGU9PT0iUExBWUxJU1QifSwoKT0+Xy5LKGhXLHtlbmRzY3JlZW5FbGVtZW50UmVuZGVyZXI6YSxpc0FjdGl2ZTpjLFhoOmR9KSksXy5LKF8uQ0Use3doZW46KCk9PmEoKS5zdHlsZT09PSJDSEFOTkVMInx8YSgpLnN0eWxlPT09IldFQlNJVEUifSwoKT0+Xy5LKGdXLHtlbmRzY3JlZW5FbGVtZW50UmVuZGVyZXI6YSxpc0FjdGl2ZTpjLFhoOmR9KSkpKX0sIlZkIik7a1cuaWRvbUNvbXBhdD0hMDt2YXIgWW1hPV8uTChhPT57ZnVuY3Rpb24gYih6KXt2YXIgRT1mKCk/Lm5leHRCdXR0b24/LmJ1dHRvblJlbmRlcmVyPy5uYXZpZ2F0aW9uRW5kcG9pbnQsQT1mKCk/LnZpZGVvSWQ7RSYmIXo/Xy55KCkucmVzb2x2ZShfLlVEKS5yZXNvbHZlQ29tbWFuZChFKTpBJiZhLkgoKT8ubG9hZFZpZGVvQnlQbGF5ZXJWYXJzKHt2aWRlb0lkOkEsYXV0b25hdjp6LGF1dG9wbGF5Onp9KX1mdW5jdGlvbiBjKHope1hTKDExNTEzMCk7YighMSk7ei5zdG9wUHJvcGFnYXRpb24oKX12YXIgW2QsZV09Xy5KKDAsdm9pZCAwLCJZYkRNZmIiKSxmPV8uTigoKT0+QlMoYS53YXRjaE5leHRSZXNwb25zZT8uKCkpLHZvaWQgMCwiSGFGS01iIiksaD1hLkcsaz1fLk4oKCk9PmgoKS55Zix2b2lkIDAsInNZZ256ZSIpLGw9Xy5OKCgpPT5oKCkuemYsdm9pZCAwLCJkeUN2S2YiKSxtPV8uTigoKT0+bVUoYS5HLGYoKSksdm9pZCAwLCJDWkZvTWIiKSxuPV8udkUoImJ1dHRvbiIsej0+e3omJldTKHosMTE1MTMwKX0pLApwPV8udkUoImRpdiIsej0+e3omJldTKHosMTE1MTI5KX0pO18ubkUoKCk9Pnt2YXIgej1tKCksRT1sKCksQT1rKCksRj1hLkgoKSxDPWYoKTtpZih6KXt6PUM/LmNvdW50RG93blNlY3N8fDEwO3ZhciBHPXoqMUUzO2lmKEUmJkE+MCllKE1hdGgubWF4KDAsKHotQSkveikpO2Vsc2V7dmFyIEQ9KDAsXy5lbCkoKSxIPSgpPT57dmFyIE09KDAsXy5lbCkoKS1EO009TWF0aC5taW4oTS9HLDEpO2UoTSk7TT49MT8od2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKFIpLEY/LmlzUmVhZHk/LigpJiZiKCEwKSk6Uj13aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKEgpfTt2YXIgUj13aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKEgpO18uWXUoKCk9Pnt3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUoUil9KX19ZWxzZSBlKDApfSwiR1NPdHdiIik7dmFyIHI9KCk9PntYUygxMTUxMjkpO2EuRygpLlMoe3hmOiEwfSl9LHQ9Xy5OKCgpPT5gJHstMjExKihkKCkrMSl9YCx2b2lkIDAsIlY1c213ZCIpLAp2PSgpPT5mKCk/LmJhY2tncm91bmQ7cmV0dXJuIF8uSygicGZwLWF1dG9uYXYiLHtjbGFzczpfLlAoInl0UGZwQXV0b25hdkhvc3QiLGEuY2xhc3NOYW1lLHt5dFBmcEF1dG9uYXZWaXNpYmxlOm19KSwib246Y2xpY2siOmZ1bmN0aW9uKHope3ouc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5PLHtBOm0sdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoR1Yse0c6YS5HLHRodW1ibmFpbERldGFpbHM6dn0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQXV0b25hdlNjcmltIn0sXy5LKCJkaXYiLHtjbGFzczoieXRQZnBBdXRvbmF2SGVhZGVyIn0sXy5LKF8uVix7dGV4dDooKT0+ZigpPy50aXRsZSxtYTohMH0pKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEF1dG9uYXZUaXRsZSJ9LF8uSyhfLlYse3RleHQ6KCk9PmYoKT8udmlkZW9UaXRsZSxtYTohMH0pKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEF1dG9uYXZCeWxpbmUifSxfLksoXy5WLHt0ZXh0OigpPT5mKCk/LmJ5bGluZSxtYTohMH0pKSwKXy5LKCJidXR0b24iLHtjbGFzczoieXRQZnBBdXRvbmF2UGxheUJ1dHRvbiIsIm9uOmNsaWNrIjpjLGVsOm4sImFyaWEtbGFiZWwiOigpPT5mKCk/Lm5leHRCdXR0b24/LmJ1dHRvblJlbmRlcmVyPy5hY2Nlc3NpYmlsaXR5Py5sYWJlbH0sXy5LKCJzdmciLHtjbGFzczoieXRQZnBBdXRvbmF2UmluZyIsdmlld0JveDoiMCAwIDcyIDcyIn0sXy5LKCJjaXJjbGUiLHtjeDoiMzYiLGN5OiIzNiIscjoiMzEuNSIsZmlsbDoid2hpdGUiLCJmaWxsLW9wYWNpdHkiOiIwLjMifSksXy5LKCJjaXJjbGUiLHtjeDoiLTM2IixjeToiMzYiLHI6IjMzLjUiLHN0cm9rZToid2hpdGUiLCJzdHJva2Utd2lkdGgiOiI0IixmaWxsOiJub25lIix0cmFuc2Zvcm06InJvdGF0ZSgtOTApIiwic3Ryb2tlLWRhc2hhcnJheSI6IjIxMSIsc3R5bGU6Xy5JRSh7InN0cm9rZS1kYXNob2Zmc2V0Ijp0fSl9KSksXy5LKF8uTUQse2ljb246IlBMQVlFUl9QTEFZIixjbGFzc05hbWU6Inl0UGZwQXV0b25hdlBsYXlJY29uIn0pKSwKXy5LKF8uVyx7ZGF0YTooKT0+ZigpPy5jYW5jZWxCdXR0b259LHtidXR0b25SZW5kZXJlcjooe2RhdGE6en0pPT5fLksoImRpdiIse2VsOnAsY2xhc3M6Inl0UGZwQXV0b25hdkNhbmNlbEJ1dHRvbiJ9LF8uSyhfLnBPLHtkYXRhOnosdGc6cixzdG9wUHJvcGFnYXRpb246ITAsYnV0dG9uT3ZlcnJpZGVzOntzdHlsZToib3ZlcmxheSJ9fSkpfSkpKX0pKX0sIlhkIik7dmFyIG1XPV8uTChhPT5fLksoInBmcC1lbmRzY3JlZW4tdmlkZW8tcmVuZGVyZXIiLHtjbGFzczpfLlAoInl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckhvc3QiLGEuY2xhc3NOYW1lKX0sXy5LKF8ubkgse2NvbW1hbmQ6KCk9PmEuZGF0YSgpLm5hdmlnYXRpb25FbmRwb2ludCxhcmlhTGFiZWw6KCk9Pl8uYU4oYS5kYXRhKCkudGl0bGUpfSxfLksoXy5VUCx7dGh1bWJuYWlsRGV0YWlsczooKT0+YS5kYXRhKCkudGh1bWJuYWlsLGNsYXNzTmFtZToieXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyVGh1bWJuYWlsIn0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXkifSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJPdmVybGF5VGl0bGVCeWxpbmUifSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJUaXRsZSJ9LF8uSyhfLlYse3RleHQ6KCk9PmEuZGF0YSgpLnRpdGxlLAptYTohMCx5YzohMH0pKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJCeWxpbmUifSxfLksoXy5WLHt0ZXh0OigpPT5hLmRhdGEoKS5zaG9ydEJ5bGluZVRleHQsbWE6ITAseWM6ITB9KSxfLksoXy5PLHtBOigpPT5hLmRhdGEoKS5zaG9ydFZpZXdDb3VudFRleHQsdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCwiIFx1MjAyMiAiLF8uSyhfLlYse3RleHQ6KCk9PmEuZGF0YSgpLnNob3J0Vmlld0NvdW50VGV4dCxtYTohMH0pKX0pKSksXy5LKCJkaXYiLHtjbGFzczoieXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyRHVyYXRpb24ifSxfLksoXy5WLHt0ZXh0OigpPT5hLmRhdGEoKS5sZW5ndGhUZXh0LG1hOiEwfSkpKSkpLCJZZCIpO3ZhciBabWE9Xy5MKGE9PntmdW5jdGlvbiBiKEQpe0Quc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gYyhEKXt0KCExKTtELnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGQoRCl7dCghMCk7RD8uc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gZSgpe0coKX1mdW5jdGlvbiBmKEQpe3ZhciBIPUYudmFsdWU7SCYmKEguc2Nyb2xsVG8oe2xlZnQ6SC5zY3JvbGxMZWZ0LUguY2xpZW50V2lkdGgqLjgsYmVoYXZpb3I6InNtb290aCJ9KSxELnN0b3BQcm9wYWdhdGlvbigpKX1mdW5jdGlvbiBoKEQpe3ZhciBIPUYudmFsdWU7SCYmKEguc2Nyb2xsVG8oe2xlZnQ6SC5zY3JvbGxMZWZ0K0guY2xpZW50V2lkdGgqLjgsYmVoYXZpb3I6InNtb290aCJ9KSxELnN0b3BQcm9wYWdhdGlvbigpKX12YXIgaz1fLk4oKCk9PmEuVWMoKS53YXRjaE5leHRSZXNwb25zZSx2b2lkIDAsIldYNlJCZSIpLGw9Xy5OKCgpPT5NUyhrKCkpLmZpbHRlcihEPT5ELmVuZFNjcmVlblZpZGVvUmVuZGVyZXIpLHZvaWQgMCwKIlZWVWRyYyIpLG09Xy5OKCgpPT57dmFyIEQ9YS5VYygpLnBsYXllclJlc3BvbnNlPy5lbmRzY3JlZW4/LmVuZHNjcmVlblJlbmRlcmVyPy5zdGFydE1zO0Q9RD8rRDp2b2lkIDA7cmV0dXJuIGEuRygpLnBsYXllclN0YXRlPT09MiYmbD8uKCk/Lmxlbmd0aD4wJiYoIUR8fGEuRygpLnZhKjFFMzxEKX0sdm9pZCAwLCJwUVNRS2IiKSxuPV8uTigoKT0+YS5VYygpLnBsYXllclJlc3BvbnNlPy52aWRlb0RldGFpbHM/LnZpZGVvSWQsdm9pZCAwLCJ5UWJOMWUiKSxbcCxyXT1fLkFDKCgpPT57bigpO3JldHVybiExfSksdD1yLFt2LHpdPV8uSighMSx2b2lkIDAsInFRUjczYiIpLFtFLEFdPV8uSighMSx2b2lkIDAsInZjYTNJZCIpLEY9Xy52RSgiZGl2IiksQz1fLk4oKCk9PmEuVWMoKS5wbGF5ZXJSZXNwb25zZT8udmlkZW9EZXRhaWxzPy5hdXRob3I/PyIiLHZvaWQgMCwib0pFMHNkIiksRz0oKT0+e3ZhciBEPUYudmFsdWU7RCYmKHooRC5zY3JvbGxMZWZ0PjEpLEEoRC5zY3JvbGxMZWZ0PApELnNjcm9sbFdpZHRoLUQuY2xpZW50V2lkdGgtMSkpfTtfLm5FKCgpPT57cCgpO20oKSYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57RygpfSl9LCJ0QTExN2QiKTtyZXR1cm4gXy5LKCJwZnAtbW9yZS12aWRlb3MiLHtjbGFzczpfLlAoInl0UGZwTW9yZVZpZGVvc0hvc3QiLGEuY2xhc3NOYW1lKX0sXy5LKF8uTyx7QTooKT0+bSgpJiYhcCgpLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwTW9yZVZpZGVvc092ZXJsYXkiLCJvbjpjbGljayI6Yn0sXy5LKCJkaXYiLHtjbGFzczoieXRQZnBNb3JlVmlkZW9zSGVhZGVyIn0sXy5LKCJoMyIse2NsYXNzOiJ5dFBmcE1vcmVWaWRlb3NUaXRsZSJ9LCgpPT5fLiROLnp0LnJlcGxhY2UoIiRjaGFubmVsX25hbWVfcGxhY2Vob2xkZXIiLEMoKSkpLF8uSygiYnV0dG9uIix7Y2xhc3M6Inl0UGZwTW9yZVZpZGVvc0Nsb3NlQnV0dG9uIiwib246Y2xpY2siOmQsImFyaWEtbGFiZWwiOl8uJE4ueHR9LF8uSyhfLk1ELHtpY29uOiJDTE9TRSIsCmNsYXNzTmFtZToieXRQZnBNb3JlVmlkZW9zQ2xvc2VJY29uIn0pKSksXy5LKCJkaXYiLHtjbGFzczoieXRQZnBNb3JlVmlkZW9zVmlkZW9MaXN0Q29udGFpbmVyIn0sXy5LKF8uTyx7QTp2LHRoZW46KCk9Pl8uSygiYnV0dG9uIix7Y2xhc3M6Inl0UGZwTW9yZVZpZGVvc1BhZGRsZUxlZnQiLCJvbjpjbGljayI6ZiwiYXJpYS1sYWJlbCI6Xy4kTi5mb30sXy5LKF8uTUQse2ljb246IkNIRVZST05fTEVGVCIsY2xhc3NOYW1lOiJ5dFBmcE1vcmVWaWRlb3NQYWRkbGVJY29uIn0pKX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwTW9yZVZpZGVvc1ZpZGVvTGlzdCIsZWw6Riwib246c2Nyb2xsIjplfSxfLksoXy5XLHtkYXRhOmwsSGs6ITB9LHtlbmRTY3JlZW5WaWRlb1JlbmRlcmVyOih7ZGF0YTpEfSk9Pl8uSyhtVyx7ZGF0YTpELGNsYXNzTmFtZToieXRQZnBNb3JlVmlkZW9zVmlkZW9JdGVtIn0pfSkpLF8uSyhfLk8se0E6RSx0aGVuOigpPT5fLksoImJ1dHRvbiIse2NsYXNzOiJ5dFBmcE1vcmVWaWRlb3NQYWRkbGVSaWdodCIsCiJvbjpjbGljayI6aCwiYXJpYS1sYWJlbCI6Xy4kTi5lb30sXy5LKF8uTUQse2ljb246IkNIRVZST05fUklHSFQiLGNsYXNzTmFtZToieXRQZnBNb3JlVmlkZW9zUGFkZGxlSWNvbiJ9KSl9KSkpfSksXy5LKF8uTyx7QTooKT0+bSgpJiZwKCksdGhlbjooKT0+Xy5LKCJidXR0b24iLHtjbGFzczoieXRQZnBNb3JlVmlkZW9zTW9yZVZpZGVvc0J1dHRvbiIsIm9uOmNsaWNrIjpjLCJhcmlhLWxhYmVsIjpfLiROLmJvfSxfLiROLmJvKX0pKX0sIiRkIik7dmFyICRtYT1fLkwoYT0+Xy5LKCJwZnAtZW5kc2NyZWVuLXBsYXlsaXN0LXJlbmRlcmVyIix7Y2xhc3M6Xy5QKCJ5dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJIb3N0IixhLmNsYXNzTmFtZSl9LF8uSyhfLm5ILHtjb21tYW5kOigpPT5hLmRhdGEoKS5uYXZpZ2F0aW9uRW5kcG9pbnQsYXJpYUxhYmVsOigpPT5fLmFOKGEuZGF0YSgpLnRpdGxlKX0sXy5LKF8uVVAse3RodW1ibmFpbERldGFpbHM6KCk9PmEuZGF0YSgpLnRodW1ibmFpbCxjbGFzc05hbWU6Inl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlclRodW1ibmFpbCJ9KSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5In0sXy5LKCJkaXYiLHtjbGFzczoieXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyT3ZlcmxheVRpdGxlIn0sXy5LKCJkaXYiLHtjbGFzczoieXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyVGl0bGUifSxfLksoXy5WLHt0ZXh0OigpPT5hLmRhdGEoKS50aXRsZSwKbWE6ITB9KSkpKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJCb3R0b21PdmVybGF5In0sXy5LKF8uTUQse2ljb246IlBMQVlMSVNUUyIsY2xhc3NOYW1lOiJ5dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJJY29uIn0pLF8uSyhfLlYse3RleHQ6KCk9PmEuZGF0YSgpLnZpZGVvQ291bnRUZXh0LHljOiEwfSkpKSksImFlIik7dmFyIGFuYT1fLkwoYT0+e2Z1bmN0aW9uIGIoRil7Ri5zdG9wUHJvcGFnYXRpb24oKTtGPXooKS5sZW5ndGg7bSgobCgpLXIoKStGKnIoKSklRil9ZnVuY3Rpb24gYyhGKXtGLnN0b3BQcm9wYWdhdGlvbigpO0Y9eigpLmxlbmd0aDttKChsKCkrcigpKSVGKX12YXIgZD1fLnZFKCJkaXYiKSxbZSxmXT1fLkooW10sdm9pZCAwLCJFclVRSWUiKSxbaCxrXT1fLkooMCx2b2lkIDAsIldNZVlvZCIpLGw9aCxtPWssW24scF09Xy5KKDAsdm9pZCAwLCJPelBTa2UiKSxyPW4sW3QsLHZdPV8uSigwLHZvaWQgMCwibENUbXBlIik7Xy5EUCgicmVzaXplIiwoKT0+e3YoRj0+RisxKX0pO3ZhciB6PV8uTigoKT0+TVMoYS53YXRjaE5leHRSZXNwb25zZT8uKCkpLHZvaWQgMCwicnkyRFQiKSxFPV8uTigoKT0+blUoYS5HLGEud2F0Y2hOZXh0UmVzcG9uc2U/LigpKSx2b2lkIDAsIkZoVVpyIiksQT1fLk4oKCk9PnIoKSYmeigpLmxlbmd0aD5yKCksdm9pZCAwLCJVd0VjNWIiKTtfLm5FKCgpPT57dCgpOwp2YXIgRj16KCksQz1sKCk7aWYoRSgpJiZkLnZhbHVlKWlmKEYubGVuZ3RoKXt2YXIgRz1kLnZhbHVlLEQ9Ry5jbGllbnRXaWR0aDtHPUcuY2xpZW50SGVpZ2h0O2xldCBUPUYubGVuZ3RoO2Zvcih2YXIgSD0yLFI9MixNPU1hdGgubWF4KEQvOTYsMiksUz1NYXRoLm1heChHLzU0LDIpLFk9KFQtMSkqNDtZPjAmJihIPE18fFI8Uyk7KXt2YXIgcGE9SC8yLG9hPVIvMixVPUg8PU0tMiYmWT49b2EqNCxoYT1SPD1TLTImJlk+PXBhKjQ7aWYoKHBhKzEpL29hKm5XLyhEL0cpPkQvRy8ocGEvKG9hKzEpKm5XKSYmaGEpWS09cGEqNCxSKz0yO2Vsc2UgaWYoVSlZLT1vYSo0LEgrPTI7ZWxzZSBpZihoYSlZLT1wYSo0LFIrPTI7ZWxzZSBicmVha31sZXQge2NvbHVtbkNvdW50OmJhLFl6OmFhLFJ6Ok9hfT17Y29sdW1uQ291bnQ6SCxZejpSLFJ6Oll9O0g9ITE7T2E+PTEyJiZUKjQtT2E8PTYmJihhYT49NHx8YmE+PTQpJiYoSD0hMCk7Uj1iYSo5NjtNPWFhKjU0O1M9TWF0aC5taW4oUi9NPEQvRz8KRy9NOkQvUiwyKTtSPU1hdGguZmxvb3IoTWF0aC5taW4oRCxSKlMpKTtNPU1hdGguZmxvb3IoTWF0aC5taW4oRyxNKlMpKTtsZXQge1NBOkpiLFJBOnphfT17U0E6UixSQTpNfTtSPUpiKzQ7TT16YSs0O1M9MDtZPVtdO2ZvcihwYT0wO3BhPGJhO3BhKyspZm9yKG9hPTA7b2E8YWE7b2ErKylpZihVPTAsSCYmcGE+PWJhLTImJm9hPj1hYS0yP1U9MTpvYSUyPT09MCYmcGElMj09PTAmJihVPTIpLGhhPVMlVCxVIT09MCl7bGV0IExiPU1hdGguZmxvb3IoTSpvYS9hYSksY2M9TWF0aC5mbG9vcihSKnBhL2JhKTtZLnB1c2goe2RhdGE6RlsoaGErQyklVF0sbGVmdDpjYysoRC1KYikvMix0b3A6TGIrKEctemEpLzIsd2lkdGg6TWF0aC5mbG9vcihSKihwYStVKS9iYSktY2MtNCxoZWlnaHQ6TWF0aC5mbG9vcihNKihvYStVKS9hYSktTGItNH0pO1MrK312YXIge1N5Om1hLGluZGV4OnRhfT17U3k6WSxpbmRleDpTfTtmKG1hKTtwKHRhKX1lbHNlIGYoW10pfSwid2VZNEIiKTtyZXR1cm4gXy5LKCJwZnAtdmlkZW8td2FsbC1lbmRzY3JlZW4iLAp7Y2xhc3M6Xy5QKCJ5dFBmcFZpZGVvV2FsbEVuZHNjcmVlbkhvc3QiLGEuY2xhc3NOYW1lLHt5dFBmcFZpZGVvV2FsbEVuZHNjcmVlblZpc2libGU6RSx5dFBmcFZpZGVvV2FsbEVuZHNjcmVlbklzT2JzY3VyZWQ6YS5VeH0pLCJvbjpjbGljayI6ZnVuY3Rpb24oRil7Ri5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLk8se0E6RSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFBmcFZpZGVvV2FsbEVuZHNjcmVlblZpZGVvTGlzdENvbnRhaW5lciJ9LF8uSyhfLk8se0EsdGhlbjooKT0+Xy5LKCJidXR0b24iLHtjbGFzczoieXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVMZWZ0Iiwib246Y2xpY2siOmIsImFyaWEtbGFiZWwiOl8uJE4uZm99LF8uSyhfLk1ELHtpY29uOiJDSEVWUk9OX0xFRlQiLGNsYXNzTmFtZToieXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVJY29uIn0pKX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlkZW9MaXN0IiwKZWw6ZH0sXy5LKF8uZ0cse3BhOmV9LEY9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlkZW9JdGVtIixzdHlsZTpfLklFKHt0b3A6KDAsXy5aSykoKCk9PkYudG9wKSxsZWZ0OigwLF8uWkspKCgpPT5GLmxlZnQpLHdpZHRoOigwLF8uWkspKCgpPT5GLndpZHRoKSxoZWlnaHQ6KDAsXy5aSykoKCk9PkYuaGVpZ2h0KX0pfSxfLksoXy5XLHtkYXRhOigpPT5GLmRhdGF9LHtlbmRTY3JlZW5WaWRlb1JlbmRlcmVyOm1XLGVuZFNjcmVlblBsYXlsaXN0UmVuZGVyZXI6JG1hfSkpKSksXy5LKF8uTyx7QSx0aGVuOigpPT5fLksoImJ1dHRvbiIse2NsYXNzOiJ5dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZVJpZ2h0Iiwib246Y2xpY2siOmMsImFyaWEtbGFiZWwiOl8uJE4uZW99LF8uSyhfLk1ELHtpY29uOiJDSEVWUk9OX1JJR0hUIixjbGFzc05hbWU6Inl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuUGFkZGxlSWNvbiJ9KSl9KSl9KSl9LCJjZSIpLG5XPTk2LzU0O3ZhciBvVz1fLkwoKHtqZTphfSk9Pnt2YXIgYj1fLk4oKCk9PmEoKSx2b2lkIDAsIkVUZ2U3ZCIpLFtjLCxkXT1fLkooMCx2b2lkIDAsIlpDQklzIik7Xy5uRSgoKT0+e2IoKSYmZChlPT5lKzEpfSwiS3NYM3JmIik7cmV0dXJuIF8uSygicGxheWVyLWFjdGlvbi1pbmRpY2F0b3IiLHtjbGFzczoieXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckhvc3QifSxfLksoXy5nRyx7cGE6KCk9PmIoKT9bYygpXTpbXX0sKCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UGxheWVyQ29udHJvbHNQbGF5ZXJBY3Rpb25JbmRpY2F0b3JBY3Rpb24ifSxfLksoXy5NRCx7aWNvbjpiLGNsYXNzTmFtZToieXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckljb24ifSkpKSl9LCJlZSIpO29XLmlkb21Db21wYXQ9ITA7dmFyIHBXPV8uTCgoe0c6YSxTbTpiLHBsYXllck92ZXJsYXlSZW5kZXJlcjpjLFZ3OmQsY2xhc3NOYW1lOmV9KT0+e3ZhciBmPSgpPT5fLkIoYj8uKCk/LnBsYXllckJhckFjdGlvbkJ1dHRvbixfLlZMKTtyZXR1cm4gXy5LKCJwbGF5ZXItdGltZS1kaXNwbGF5Iix7Y2xhc3M6Xy5QKCJ5dHdQbGF5ZXJUaW1lRGlzcGxheUhvc3QiLGUpfSxfLksoImRpdiIse2NsYXNzOl8uUCgieXR3UGxheWVyVGltZURpc3BsYXlUaW1lQ2h1bmtzIix7eXR3UGxheWVyVGltZURpc3BsYXlQaWxsOigpPT4hZD8uKCkseXR3UGxheWVyVGltZURpc3BsYXlMaXZlRG90OigpPT5hKCkuaXNMaXZlLHl0d1BsYXllclRpbWVEaXNwbGF5TGl2ZUhlYWQ6KCk9Pm9VKGEoKSl9KSwib246Y2xpY2siOmZ1bmN0aW9uKGgpe2lmKGEoKS5pc0xpdmUmJiFvVShhKCkpKXthKCkuSD8uc2Vla1RvKEluZmluaXR5KTt2YXIgaz1VUShhKCkuSCk7ayYmYSgpLlMoe3ZpZGVvRHVyYXRpb246a30pfWguc3RvcFByb3BhZ2F0aW9uKCl9fSwKXy5LKCJkaXYiLHtkaXI6Imx0ciJ9LF8uSyhibmEse0c6YSxwbGF5ZXJPdmVybGF5UmVuZGVyZXI6Y30pLF8uSyhfLk8se0E6KCk9PiFvVShhKCkpLHRoZW46KCk9Pl8uSyhjbmEse0c6YX0pfSkpKSxfLksoXy5PLHtBOigpPT57dmFyIGg9Xy5CKGI/LigpPy5wbGF5ZXJCYXIsRFMpP18uQihrVChhKCksXy5CKGI/LigpPy5wbGF5ZXJCYXIsRFMpKSxlVCk/LnRpdGxlOnZvaWQgMCxrPWYoKT8udGV4dDtyZXR1cm4gaD8/a30sdGhlbjpoPT5fLksoZG5hLHt0aXRsZTpoLGJ1dHRvbjpmLEc6YX0pfSkpfSwiZmUiKSxibmE9Xy5MKCh7RzphLHBsYXllck92ZXJsYXlSZW5kZXJlcjpifSk9Pnt2YXIgYz0oKT0+YSgpLmlzTGl2ZT9fLiROLmxvOkNUKGEoKS52YSk7cmV0dXJuIF8uSygic3BhbiIse2NsYXNzOiJ5dHdQbGF5ZXJUaW1lRGlzcGxheVRpbWVFbGFwc2VkIn0sXy5LKCJzcGFuIix7ImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LF8uSyhfLk8se0E6KCk9PmI/LigpPy5saXZlSW5kaWNhdG9yVGV4dCwKdGhlbjpkPT5fLksoXy5WLHt0ZXh0OmR9KSxXOigpPT5fLksoXy5JQixudWxsLGMpfSkpLF8uSygic3BhbiIse2NsYXNzOiJ5dHdQbGF5ZXJUaW1lRGlzcGxheVNjcmVlblJlYWRlck9ubHkifSwoKT0+e2lmKGEoKS5pc0xpdmUpcmV0dXJuIF8uJE4ubG87dmFyIGQ9UFIoe3NlY29uZHM6YSgpLnZhfSk7cmV0dXJuYCR7Xy4kTi5WdH0gJHtkfWB9KSl9LCJnZSIpLGNuYT1fLkwoKHtHOmF9KT0+e3ZhciBiPSgpPT57aWYob1UoYSgpKSl2YXIgYz0wO2Vsc2V7Yz1NYXRoO3ZhciBkPWMucm91bmQsZT1hKCk7Yz1kLmNhbGwoYyxlLmlzRHJhZ2dpbmc/ZS5DYTplLnZhKS1NYXRoLnJvdW5kKFVRKGEoKS5IKSl9cmV0dXJuIGN9O3JldHVybiBfLksoXy5JQixudWxsLF8uSygic3BhbiIse2NsYXNzOiJ5dHdQbGF5ZXJUaW1lRGlzcGxheVRpbWVTZWNvbmQifSksXy5LKCJzcGFuIix7Y2xhc3M6Inl0d1BsYXllclRpbWVEaXNwbGF5VGltZURlbGltaXRlciIsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LAoiLyIpLF8uSygic3BhbiIse2NsYXNzOl8uUCgieXR3UGxheWVyVGltZURpc3BsYXlUaW1lU2Vjb25kIiwieXR3UGxheWVyVGltZURpc3BsYXlUaW1lRHVyYXRpb24iKX0sXy5LKCJzcGFuIix7ImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LCgpPT5hKCkuaXNMaXZlP0NUKGIoKSk6Q1QoYSgpLnZpZGVvRHVyYXRpb24pKSxfLksoInNwYW4iLHtjbGFzczoieXR3UGxheWVyVGltZURpc3BsYXlTY3JlZW5SZWFkZXJPbmx5In0sKCk9PntpZihhKCkuaXNMaXZlKXJldHVybiBDVChiKCkpO3ZhciBjPVBSKHtzZWNvbmRzOmEoKS52aWRlb0R1cmF0aW9ufSk7cmV0dXJuYCR7Xy4kTi5VdH0gJHtjfWB9KSkpfSwiaGUiKSxkbmE9Xy5MKCh7dGl0bGU6YSxidXR0b246YixHOmN9KT0+e2Z1bmN0aW9uIGQoZil7Yj8uKCk/LmNvbW1hbmQmJihfLkFKKGIoKS5jb21tYW5kLHt9LCExKSxmLnN0b3BQcm9wYWdhdGlvbigpKX12YXIgZT1fLk4oKCk9PmMoKS5iYT8uRWUsdm9pZCAwLCJqZzJPTWMiKTtyZXR1cm4gXy5LKF8uTywKe0E6Yix0aGVuOmY9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllclRpbWVEaXNwbGF5UGxheWVyQmFyQWN0aW9uQ29udGFpbmVyIn0sXy5LKCJidXR0b24iLHtjbGFzczpfLlAoInl0d1BsYXllclRpbWVEaXNwbGF5UGlsbCIsInl0d1BsYXllclRpbWVEaXNwbGF5UGxheWVyQmFyQnV0dG9uIiksIm9uOmNsaWNrIjpkLCJhcmlhLWxhYmVsIjooKT0+Xy5hTihmKCkudGV4dCl9LF8uSyhfLlYse3RleHQ6YSx5YzohMH0pLF8uSyhfLk8se0E6KCk9PiEoXy54KCJtd2ViX3VzZV9vbmx5X2NoYXB0ZXJfdGl0bGVfaW5fZnVsbHNjcmVlbiIpJiZjKCkuaXNGdWxsc2NyZWVuKSx0aGVuOigpPT5fLksoXy5NRCx7aWNvbjoiQ0hFVlJPTl9SSUdIVF9DQUlSTyIsY2xhc3NOYW1lOiJ5dHdQbGF5ZXJUaW1lRGlzcGxheUNoZXZyb24ifSl9KSkpLFc6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dHdQbGF5ZXJUaW1lRGlzcGxheUNoYXB0ZXJUZXh0Iix7eXR3UGxheWVyVGltZURpc3BsYXlGdWxsc2NyZWVuQ29udHJvbHNBbHdheXNPbjplfSl9LApfLksoXy5WLHt0ZXh0OmEseWM6ITB9KSl9KX0sImllIik7dmFyIHFXPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjLGQpe3RoaXMuZ249YTt0aGlzLmxpc3RlbmVycz1bXTt0aGlzLmNvbnRleHQ9Yjt0aGlzLm89ZDt0aGlzLnY9cVUodGhpcy5VYz8uSCk7dGhpcy5EPXRoaXMuUy5iaW5kKHRoaXMpO3RoaXMuc3RhdGU9ey4uLmRUKCksLi4uY307YT10aGlzLnVkKCk7W3RoaXMuQix0aGlzLmpdPV8uSihhLHZvaWQgMCwicDNOd3EiKX1TKGEpe2lmKCFxbGEoYSx0aGlzLnN0YXRlKSl7dGhpcy5zdGF0ZT17Li4udGhpcy5zdGF0ZSwuLi5hfTthPV8ueCgicGxheWVyX2NvbnRyb2xzX2xvZ19jcmVhdGlvbl9lbmFibGVkIik7dmFyIGI9LTE7YSYmIXBVKCkmJihiPSgwLF8uZWwpKCkpO2EmJl8uQXEoInBjdV9zIik7dGhpcy5qJiZ0aGlzLmoodGhpcy51ZCgpKTthJiYoXy5BcSgicGN1X3NlIiksXy5BcSgicGN1X3JzIikpO3RoaXMuZ24odGhpcy51ZCgpKTthJiYoXy5BcSgicGN1X3JlIikscGxhKGIpLF8uamYuR2EoKCk9PntfLkFxKCJwY3VfYXAiKX0sCjgpKX19dWQoKXt2YXIgYT10aGlzLm8/cVUodGhpcy5vKCkpOnFVKHRoaXMuVWM/LkgpO3JldHVybnsuLi50aGlzLnN0YXRlLFM6dGhpcy5ELEg6YSx0YTp0aGlzLmNvbnRleHQudGEsVGM6dGhpcy5jb250ZXh0LlRjLEdjOnRoaXMuY29udGV4dC5HYyxiYTp0aGlzLmNvbnRleHQuYmF9fWdldERhdGEoKXtyZXR1cm4gdGhpcy5VY319O3ZhciByVz1fLkwoYT0+e2Z1bmN0aW9uIGIoWSl7TT1ILmFuaW1hdGUoW3tvZmZzZXQ6MCxlYXNpbmc6ImN1YmljLWJlemllcigwLjIwLCAwLjAwLCAwLjYwLCAxLjAwKSIsb3BhY2l0eTpZfSx7b2Zmc2V0OjEsb3BhY2l0eToxfV0se2R1cmF0aW9uOjIwMCxmaWxsOiJmb3J3YXJkcyJ9KTtNLmFkZEV2ZW50TGlzdGVuZXIoImZpbmlzaCIsKCk9PntNPXZvaWQgMDtlKCk7Rj0ibGluZ2VyaW5nIn0pfWZ1bmN0aW9uIGMoWSxwYT0hMSxvYT0hMSl7dmFyIFU9W107VS5wdXNoKHtvZmZzZXQ6MCx0cmFuc2Zvcm06YHRyYW5zbGF0ZVgoJHtDPT09LTE/MjA6LTIwfXB4KWAsb3BhY2l0eTpwYT8iMCI6IjEifSk7cGEmJlUucHVzaCh7b2Zmc2V0Oi41LG9wYWNpdHk6IjEifSk7VS5wdXNoKHtvZmZzZXQ6MSx0cmFuc2Zvcm06InRyYW5zbGF0ZVgoMCkiLG9wYWNpdHk6IjEifSk7cGE9WS5hbmltYXRlKFUse2R1cmF0aW9uOjQwMCxlYXNpbmc6ImN1YmljLWJlemllcigwLjA1LCAwLjAwLCAwLjAwLCAxLjAwKSJ9KTsKWT1ZLnF1ZXJ5U2VsZWN0b3IoInBhdGgiKTtVPVtdO3ZhciBoYT17b2Zmc2V0OjAsZDpDPT09LTE/J3BhdGgoIk0gMTggNCBMIDE4IDE2IEwgMTggMjgiKSc6J3BhdGgoIk0gNCA0IEwgNCAxNiBMIDQgMjgiKSd9O29hJiYoaGEuZmlsdGVyPSJkcm9wLXNoYWRvdygwIDAgMC41cHggcmdiYSgwLCAwLCAwLCAwLjgpKSIpO1UucHVzaChoYSk7b2EmJlUucHVzaCh7b2Zmc2V0Oi44LGZpbHRlcjoiZHJvcC1zaGFkb3coMCAwIDAuNXB4IHJnYmEoMCwgMCwgMCwgMC44KSkifSk7aGE9e29mZnNldDoxLGQ6Qz09PS0xPydwYXRoKCJNIDE4IDQgTCA2IDE2IEwgMTggMjgiKSc6J3BhdGgoIk0gNCA0IEwgMTYgMTYgTCA0IDI4IiknfTtvYSYmKGhhLmZpbHRlcj0iZHJvcC1zaGFkb3coMCAwIDAuNXB4IHJnYmEoMCwgMCwgMCwgMCkpIik7VS5wdXNoKGhhKTtZLmFuaW1hdGUoVSx7ZHVyYXRpb246MzMzLGVhc2luZzoiY3ViaWMtYmV6aWVyKDAuMDUsIDAuMDAsIDAuMDAsIDEuMDApIixmaWxsOiJmb3J3YXJkcyJ9KTsKcmV0dXJuIHBhfWZ1bmN0aW9uIGQoKXt2YXIgWT1ILnF1ZXJ5U2VsZWN0b3IoIi55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93UGVyc2lzdGVudCIpLmNsb25lTm9kZSghMCk7WS5jbGFzc0xpc3QuYWRkKCJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93QWRkaXRpb25hbCIpO1kuY2xhc3NMaXN0LnJlbW92ZSgieXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd1BlcnNpc3RlbnQiKTtILmFwcGVuZENoaWxkKFkpO2MoWSwhMCwhMCkuYWRkRXZlbnRMaXN0ZW5lcigiZmluaXNoIiwoKT0+e1kucmVtb3ZlKCl9KX1mdW5jdGlvbiBlKCl7Y2xlYXJUaW1lb3V0KFIpO1I9c2V0VGltZW91dCgoKT0+e2YoKX0sXy5zaigid2ViX3BsYXllcl9zZWVrX292ZXJsYXlfbGluZ2VyX2R1cmF0aW9uIiwzMDApKX1mdW5jdGlvbiBmKFk9MSxwYT0hMCl7TT1ILmFuaW1hdGUoW3tvZmZzZXQ6MCxvcGFjaXR5Oll9LHtvZmZzZXQ6MSxvcGFjaXR5OjB9XSx7ZHVyYXRpb246MjAwLGZpbGw6ImZvcndhcmRzIixlYXNpbmc6ImN1YmljLWJlemllcigwLjIwLCAwLjAwLCAwLjYwLCAxLjAwKSJ9KTsKcGEmJihNLmFkZEV2ZW50TGlzdGVuZXIoImZpbmlzaCIsKCk9PntTPy4oKTtNPXZvaWQgMDtrKCk7QSghMSl9KSxGPSJmYWRpbmctb3V0Iil9ZnVuY3Rpb24gaCgpe2lmKCFNKXJldHVybiAwO3ZhciBZPU51bWJlcihnZXRDb21wdXRlZFN0eWxlKEgpLm9wYWNpdHkpO00uY2FuY2VsKCk7TT12b2lkIDA7cmV0dXJuIFl9ZnVuY3Rpb24gaygpe0Y9ImhpZGRlbiI7SD1DPXZvaWQgMDtjbGVhclRpbWVvdXQoUil9dmFyIGw9Xy5OKCgpPT5hLkcoKS5KZCx2b2lkIDAsInBkbG1ZYiIpLG09Xy5OKCgpPT5hLkcoKS5LYix2b2lkIDAsImFQUzlKIiksbj1fLk4oKCk9PmEuRygpLkgsdm9pZCAwLCJ4dkJybGYiKSxbcCxyXT1fLkooIiIsdm9pZCAwLCJWSnVnemQiKSxbdCx2XT1fLkooIiIsdm9pZCAwLCJZU0tTT2QiKSxbeixFXT1fLkooITEsdm9pZCAwLCJPc21pbmMiKSxBPUUsRj0iaGlkZGVuIixDLEcsRCxILFI9MCxNLFM7Xy5uRSgoKT0+e2lmKEVsZW1lbnQucHJvdG90eXBlLmFuaW1hdGUpe3ZhciBZPQpsKCk7aWYoIShtKCk8PTF8fFk9PT0wKSl7QSghMCk7aWYoQyYmWSE9PUMpe2xldCBwYT0xO00mJihwYT1oKCkpO2YocGEsITEpO2soKX1DPVk7SD1DPT09LTE/RzpEO2lmKEcmJkQpaWYoWT1uKCksWT1ZPy5pc1JlYWR5Py4oKT9ZLmdldEN1cnJlbnRUaW1lKCk6MCxZPUM9PT0tMSYmWTw9MTA/MTA6KG0oKS0xKSoxMCxZPWAke0M9PT0tMT8iXHUyMjEyIjoiKyJ9ICR7WX1gLEM9PT0tMT9yKFkpOnYoWSksRj09PSJoaWRkZW4ifHxGPT09ImZhZGluZy1vdXQiKVk9MCxGPT09ImZhZGluZy1vdXQiJiYoWT1oKCksZCgpKSxiKFkpLEYhPT0iZmFkaW5nLW91dCImJmMoSC5xdWVyeVNlbGVjdG9yKCIueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd1BlcnNpc3RlbnQiKSksRj0iZmFkaW5nLWluIjtlbHNlIGlmKEY9PT0iZmFkaW5nLWluInx8Rj09PSJsaW5nZXJpbmciKUgucXVlcnlTZWxlY3RvcigiLnl0d1BsYXllclNlZWtPdmVybGF5RHVyYXRpb24iKS5hbmltYXRlKFt7b2Zmc2V0OjAsZWFzaW5nOiJjdWJpYy1iZXppZXIoMC4yMCwgMC4wMCwgMC42MCwgMS4wMCkiLAp0cmFuc2Zvcm06InNjYWxlKDEpIn0se29mZnNldDouNjQsZWFzaW5nOiJjdWJpYy1iZXppZXIoMC4yMCwgMC4wMCwgMC42MCwgMS4wMCkiLHRyYW5zZm9ybTpgc2NhbGUoJHtfLnNqKCJ3ZWJfcGxheWVyX3NlZWtfb3ZlcmxheV9kdXJhdGlvbl9idW1wX3NjYWxlIil8fC45fSlgfSx7b2Zmc2V0OjEsdHJhbnNmb3JtOiJzY2FsZSgxKSJ9XSx7ZHVyYXRpb246MTg0fSksZCgpLEY9PT0ibGluZ2VyaW5nIiYmZSgpfX19LCJoem55RCIpO18uWXUoKCk9PntoKCk7aygpfSk7cmV0dXJuIF8uSygieXR3LXBsYXllci1zZWVrLW92ZXJsYXkiLHtjbGFzczoieXR3UGxheWVyU2Vla092ZXJsYXlIb3N0IixzdHlsZTpfLklFKHtkaXNwbGF5OigpPT56KCk/ImJsb2NrIjoibm9uZSJ9KX0sXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uIiwieXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25CYWNrIiksZWw6Xy5yRihZPT57Rz1ZfSl9LF8uSygiZGl2IiwKe2NsYXNzOl8uUCgieXR3UGxheWVyU2Vla092ZXJsYXlBcnJvdyIsInl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQZXJzaXN0ZW50Iil9LF8uSygic3ZnIix7dmlld0JveDoiMCAwIDIyIDMyIix3aWR0aDoiMjIiLGhlaWdodDoiMjQiLGNsYXNzOiJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93U3ZnIn0sXy5LKCJwYXRoIix7Y2xhc3M6Inl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQYXRoIixkOiJNIDE4IDQgTCA2IDE2IEwgMTggMjgiLHN0cm9rZToid2hpdGUiLCJzdHJva2Utd2lkdGgiOiI0Iiwic3Ryb2tlLWxpbmVjYXAiOiJyb3VuZCIsZmlsbDoibm9uZSJ9KSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllclNlZWtPdmVybGF5RHVyYXRpb24ifSxwKSksXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uIiwieXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25Gb3J3YXJkIiksZWw6Xy5yRihZPT57RD1ZfSl9LF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllclNlZWtPdmVybGF5RHVyYXRpb24ifSwKdCksXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0d1BsYXllclNlZWtPdmVybGF5QXJyb3ciLCJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93UGVyc2lzdGVudCIpfSxfLksoInN2ZyIse3ZpZXdCb3g6IjAgMCAyMiAzMiIsd2lkdGg6IjIyIixoZWlnaHQ6IjI0IixjbGFzczoieXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd1N2ZyJ9LF8uSygicGF0aCIse2NsYXNzOiJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93UGF0aCIsZDoiTSA0IDQgTCAxNiAxNiBMIDQgMjgiLHN0cm9rZToid2hpdGUiLCJzdHJva2Utd2lkdGgiOiI0Iiwic3Ryb2tlLWxpbmVjYXAiOiJyb3VuZCIsZmlsbDoibm9uZSJ9KSkpKSl9LCJrZSIpO3ZhciB0VTt2YXIgW2VuYSxzV109Xy5KKCExLHZvaWQgMCwiR05XM1MiKSxbQ1UsRFVdPV8uSighMSx2b2lkIDAsIkdBRWtKIiksW3RXLHRsYV09Xy5KKHZvaWQgMCx2b2lkIDAsIk9WUDFlZSIpO3ZhciBCVT0wO3ZhciBFVT12b2lkIDA7dmFyIHpVPTAsSFU9MCxHVT0wLHlVPTAsQVU9ITEsRlU9MDt2YXIgTlU7dmFyIHVXPVt7cmVnaXN0ZXI6YT0+e3ZhciBiPXdsYShhKTthKCkuSD8uYWRkRXZlbnRMaXN0ZW5lcigib25Wb2x1bWVDaGFuZ2UiLGIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjphPT57dmFyIGI9eGxhKGEpO2E9YSgpLkg7YT8uYWRkRXZlbnRMaXN0ZW5lcigiY2FwdGlvbnNjaGFuZ2VkIixiKTthPy5hZGRFdmVudExpc3RlbmVyKCJjYXB0aW9uc3NldHRpbmdzY2hhbmdlZCIsYik7YT8uYWRkRXZlbnRMaXN0ZW5lcigib25DYXB0aW9uc1RyYWNrTGlzdENoYW5nZWQiLGIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjooYSxiKT0+e2I9QmxhKGEsYik7YSgpLkg/LmFkZEV2ZW50TGlzdGVuZXIoIm9uU3RhdGVDaGFuZ2UiLGIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjphPT57dmFyIGI9RGxhKGEpO2EoKS5IPy5hZGRFdmVudExpc3RlbmVyKCJTRUVLX0NPTVBMRVRFIixiKTtyZXR1cm4oKT0+e319fSx7cmVnaXN0ZXI6YT0+e3ZhciBiPVBVKGEpO2EoKS5IPy5hZGRFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsCmIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjooYSxiKT0+e2I9RWxhKGEsYik7YSgpPy5IPy5hZGRFdmVudExpc3RlbmVyKCJvblZpZGVvUHJvZ3Jlc3MiLGIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjphPT57dmFyIGI9RmxhKGEpO2EoKS5IPy5hZGRFdmVudExpc3RlbmVyKCJvbk11dGVkQXV0b3BsYXlDaGFuZ2UiLGIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjphPT57dmFyIGI9SGxhKGEpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixiKTtyZXR1cm4oKT0+e3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixiKX19fSx7cmVnaXN0ZXI6YT0+e3ZhciBiPUlsYShhKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLGIpO3JldHVybigpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIixiKX19fSx7cmVnaXN0ZXI6YT0+e3ZhciBiPUdsYShhKTthKCkuSD8uYWRkRXZlbnRMaXN0ZW5lcigib25GdWxsc2NyZWVuQ2hhbmdlIiwKYik7cmV0dXJuKCk9Pnt9fX0se3JlZ2lzdGVyOmE9Pnt2YXIgYj1KbGEoYSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIixiKTtyZXR1cm4oKT0+e3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsYil9fX0se3JlZ2lzdGVyOmE9Pnt2YXIgYj1LbGEoYSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImZ1bGxzY3JlZW5lcnJvciIsYik7cmV0dXJuKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZnVsbHNjcmVlbmVycm9yIixiKX19fSx7cmVnaXN0ZXI6KGEsYik9Pnt2YXIgYz1MbGEoYSxiKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGxheWVyLWF1dG9uYXYtcGF1c2UiLGMpO3JldHVybigpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBsYXllci1hdXRvbmF2LXBhdXNlIixjKX19fSx7cmVnaXN0ZXI6YT0+e3ZhciBiPU1sYShhKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYXV0b25hdi10b2dnbGUtY2xpY2siLApiKTtyZXR1cm4oKT0+e3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJhdXRvbmF2LXRvZ2dsZS1jbGljayIsYil9fX0se3JlZ2lzdGVyOmE9Pnt2YXIgYj1ObGEoYSk7YSgpLkg/LmFkZEV2ZW50TGlzdGVuZXIoIm9uTG9vcFJhbmdlQ2hhbmdlIixiKTtyZXR1cm4oKT0+e319fSx7cmVnaXN0ZXI6YT0+e2lmKCFfLngoImVuYWJsZV9td2ViX2tleWJvYXJkX3Nob3J0Y3V0cyIpKXJldHVybigpPT57fTt2YXIgYj16bGEoYSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGIpO3JldHVybigpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLGIpfX19XTt2YXIgVmxhPV8uTChhPT57dmFyIGI9Xy5OKCgpPT5hLkgoKSx2b2lkIDAsInE4V3NLZiIpLGM9Xy5OKCgpPT5hLmRhdGEoKSx2b2lkIDAsIms2VWVWIiksZD1fLk4oKCk9Pnt2YXIgQz1hLmNvbnRleHQoKTtyZXR1cm4gbmV3IHFXKCgpPT57fSxDLHthdXRvbmF2RW5hYmxlZDpDLnRhLmRlKCksZWE6ITB9LGIpfSx2b2lkIDAsIk9BeElKYiIpLGU9Xy5OKCgpPT4oMCxkKCkuQikoKSx2b2lkIDAsIlV1MVJpIiksZj1fLk4oKCk9Pnt2YXIgQz1lKCk7cmV0dXJuIF8ueCgibXdlYl9wY19saXZlX2R2cl9rcyIpPyExOkMuaXNMaXZlJiYhQy5pc0xpdmVEdnJFbmFibGVkfSx2b2lkIDAsImN0VWczZCIpLGg9Xy5OKCgpPT57dmFyIEM9ZigpO3JldHVybiByVSgpJiYhQ30sdm9pZCAwLCJuSmRrMGMiKSxrPV8uTigoKT0+YygpLnBsYXllclJlc3BvbnNlPy5wbGF5YWJpbGl0eVN0YXR1c3x8YygpLmpiPy5wcmV2aWV3UGxheWFiaWxpdHlTdGF0dXMsdm9pZCAwLCJCVlhDOSIpLGw9Xy5OKCgpPT4KZSgpLmJhPy5aaCYmJFMoZSgpLGsoKSksdm9pZCAwLCJNSHZId2YiKSxtPV8uTigoKT0+blUoZSxjKCkud2F0Y2hOZXh0UmVzcG9uc2UpLHZvaWQgMCwiY3R4VXMiKSxuPV8uTigoKT0+bVUoZSxCUyhjKCkud2F0Y2hOZXh0UmVzcG9uc2UpKSx2b2lkIDAsIkdMa0JVIikscD1fLk4oKCk9Pnt2YXIgQz1sKCksRz1tKCksRD1uKCksSD1lKCkucGxheWVyU3RhdGU7cmV0dXJuIEM/ITA6R3x8RD8hMTpIPT09MH0sdm9pZCAwLCJYRUV2QiIpLHI9Xy52RSgiYnV0dG9uIixDPT57QyYmV1MoQywyODU3MiwhXy54KCJlbWJlZHNfY3VlZF9vdmVybGF5X3ZlX2tzIikpfSksdD1fLk4oKCk9Pnt2YXIgQz1jKCk7cmV0dXJuKEM9Xy5CKE5TKEMud2F0Y2hOZXh0UmVzcG9uc2U/LnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIsQy5qYj8uZW1iZWRQcmV2aWV3Py50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXIpPy5jb2xsYXBzZWRSZW5kZXJlcixtVik/LnRpdGxlKT9fLmFOKEMpOnZvaWQgMH0sCnZvaWQgMCwiZ3NHV3kiKSx2PV8udUYoQz0+e3ZhciBHPWUoKSxEPWMoKSxIPXQoKTtyZXR1cm4gRy5iYT8uaGlkZVZpZGVvSW5mbz8hMTpELndhdGNoTmV4dFJlc3BvbnNlfHxELmpiP0ghPT12b2lkIDA6Q30se2luaXRpYWw6ITB9KSx6PV8uTigoKT0+ZSgpLmVhLHZvaWQgMCwiVFI5S0dkIiksRT1fLnVGKEM9Pnt2YXIgRz1jKCk7cmV0dXJuKEcucGxheWVyUmVzcG9uc2U/Lm92ZXJsYXk/LnBsYXllckNvbnRyb2xzT3ZlcmxheVJlbmRlcmVyfHxHLmpiPy5lbWJlZFByZXZpZXc/LnRodW1ibmFpbFByZXZpZXdSZW5kZXJlcik/LmNvbnRyb2xCZ0h0bWw/P0N9LHtpbml0aWFsOnZvaWQgMH0pLEE9W107Xy5uRSgoKT0+e1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntBLmZvckVhY2goQz0+dm9pZCBDKCkpO0EubGVuZ3RoPTA7dVcuZm9yRWFjaChDPT57QS5wdXNoKEMucmVnaXN0ZXIoKCk9PmQoKS51ZCgpLCgpPT5jKCkpKX0pfSl9LCJZMnFZN2IiKTtfLm5FKCgpPT57dmFyIEM9ZCgpLApHPWMoKTtDLlVjPUc7dmFyIEQ9Qy52PT09Ry5IO0Mudj1xVShHLkgpO0R8fEMuaiYmQy5qKEMudWQoKSl9LCJhMTc4UmQiKTt2YXIgRj1DPT57Qz1DLmRldGFpbC5hdXRvbmF2RW5hYmxlZDt2YXIgRz17YXV0b25hdkVuYWJsZWQ6Q307QyYmKEcueGY9ITApO2UoKS5TKEcpfTtfLm9GKCgpPT57d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBmcC1hdXRvbmF2LXVwZGF0ZSIsRil9KTtfLll1KCgpPT57QS5mb3JFYWNoKEM9PnZvaWQgQygpKTtBLmxlbmd0aD0wO3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJwZnAtYXV0b25hdi11cGRhdGUiLEYpfSk7cmV0dXJuIF8uSyhfLm5HLHtFZjpbXy5vRygkVCxiKV19LF8uSygicGZwLWNvbnRyb2xzIix7Y2xhc3M6Inl0UGZwQ29udHJvbHNIb3N0Iiwib246Y29udGV4dG1lbnUiOmZ1bmN0aW9uKEMpe2EuY29udGV4dCgpLnRhLlNqPy4oQyk7Qy5wcmV2ZW50RGVmYXVsdCgpfX0sXy5LKEdWLHtHOmUsdGh1bWJuYWlsRGV0YWlsczooKT0+e3ZhciBDPQpjKCk7cmV0dXJuIEMuamI/LmVtYmVkUHJldmlldz8udGh1bWJuYWlsUHJldmlld1JlbmRlcmVyPy5kZWZhdWx0VGh1bWJuYWlsfHxDLnBsYXllclJlc3BvbnNlPy52aWRlb0RldGFpbHM/LnRodW1ibmFpbH19KSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcENvbnRyb2xzQ3JlYXRvckVuZHNjcmVlbkNvbnRhaW5lciIsIm9uOmNsaWNrIjpmdW5jdGlvbihDKXtDLnN0b3BQcm9wYWdhdGlvbigpfX0sXy5LKF8uTyx7QTooKT0+YygpLnBsYXllclJlc3BvbnNlPy5lbmRzY3JlZW4/LmVuZHNjcmVlblJlbmRlcmVyLHRoZW46KCk9Pl8uSyhsVyx7ZW5kc2NyZWVuUmVuZGVyZXI6KCk9PmMoKS5wbGF5ZXJSZXNwb25zZT8uZW5kc2NyZWVuPy5lbmRzY3JlZW5SZW5kZXJlcixHOmV9KX0pKSxfLksoImRpdiIse2lkOiJwbGF5ZXItY29udHJvbC1vdmVybGF5IixjbGFzczpfLlAoInl0UGZwQ29udHJvbHNPdmVybGF5Iix7eXRQZnBDb250cm9sc0ZhZGVJbjp6fSksIm9uOmNsaWNrIjpmdW5jdGlvbihDKXtwKCk/CihYUygyODU3MiksZSgpLmJhPy51aiYmXy5ETyhfLmh4KCksMjcyNDAsQy5jdXJyZW50VGFyZ2V0LnZpc3VhbEVsZW1lbnQpLGIoKS5wbGF5VmlkZW8oKSk6S1UoQyxlKCkpfSwib246cG9pbnRlcm1vdmUiOmZ1bmN0aW9uKEMpe0MucG9pbnRlclR5cGU9PT0ibW91c2UiJiYoZSgpLlMoe2VhOiEwfSksY1QoZSgpLHtJYzohMH0pKX19LF8uSyhfLk8se0E6dix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFBmcENvbnRyb2xzR3JhZGllbnRUb3AifSxfLksoXy5PLHtBOnQsdGhlbjooKT0+Xy5LKCJoMiIse2NsYXNzOiJ5dFBmcENvbnRyb2xzVmlkZW9UaXRsZSJ9LHQpfSkpfSksXy5LKG9XLHtqZTooKT0+ZSgpLmplfSksXy5LKF8uTyx7QTpwLHRoZW46KCk9Pl8uSygiYnV0dG9uIix7Y2xhc3M6Inl0UGZwQ29udHJvbHNMYXJnZVBsYXlCdXR0b24iLGVsOnIsImFyaWEtbGFiZWwiOl8uJE4uUGcsdGl0bGU6Xy4kTi5QZ30sXy5LKCJzdmciLHtoZWlnaHQ6IjEwMCUiLHZlcnNpb246IjEuMSIsCnZpZXdCb3g6IjAgMCA2MCA2MCIsd2lkdGg6IjEwMCUifSxfLksoInBhdGgiLHtjbGFzczoieXRQZnBDb250cm9sc0xhcmdlUGxheUJ1dHRvbkljb25CZyIsZDoiTTMwLDBBMzAsMzAsMCwxLDAsNjAsMzAsMzAsMzAsMCwwLDAsMzAsMFoiLGZpbGw6KCk9PkUoKT8/IiMxZjFmMWYifSksXy5LKCJwYXRoIix7ZDoiTTIxLDQxLjY1VjE4TDQzLjcsMjkuODVaIixmaWxsOiIjZmZmIn0pKSl9KSxfLksoWm1hLHtHOmUsVWM6Y30pLF8uSyhhbmEse0c6ZSx3YXRjaE5leHRSZXNwb25zZTooKT0+YygpLndhdGNoTmV4dFJlc3BvbnNlLFV4Om4sY2xhc3NOYW1lOiJ5dFBmcENvbnRyb2xzVmlkZW9XYWxsRW5kc2NyZWVuIn0pLF8uSyhZbWEse0g6YixHOmUsd2F0Y2hOZXh0UmVzcG9uc2U6KCk9PmMoKS53YXRjaE5leHRSZXNwb25zZSxjbGFzc05hbWU6Inl0UGZwQ29udHJvbHNBdXRvbmF2In0pLF8uSyhfLk8se0E6KCk9PiFsKCksdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoV1Yse0c6ZX0pLApfLksoVlYse2dmOmUsSWI6ITF9KSxfLksoWFYse0c6ZSxGZDotMSxjbGFzc05hbWU6Inl0UGZwQ29udHJvbHNIaWRkZW5TZWVrQnV0dG9uIn0pLF8uSyhYVix7RzplLEZkOjEsY2xhc3NOYW1lOiJ5dFBmcENvbnRyb2xzSGlkZGVuU2Vla0J1dHRvbiJ9KSxfLksoXy5PLHtBOmgsdGhlbjooKT0+Xy5LKHJXLHtHOmV9KX0pLF8uSyhmbmEse0g6YixHOmUsVWM6YyxGejpFLGRpc2FibGVTY3J1YmJpbmc6Zn0pKX0pKSkpfSwib2UiKSxmbmE9Xy5MKCh7SDphLEc6YixVYzpjLEZ6OmQsZGlzYWJsZVNjcnViYmluZzplfSk9PntmdW5jdGlvbiBmKHIpe3Iuc3RvcFByb3BhZ2F0aW9uKCl9dmFyIGg9Xy5OKCgpPT4hYigpLmJhPy5uaCx2b2lkIDAsInBGdERYYiIpLGs9Xy5OKCgpPT4hYigpLmJhPy5pcSx2b2lkIDAsInY0WDVzZSIpLGw9Xy5OKCgpPT5jKCkucGxheWVyT3ZlcmxheVJlbmRlcmVyLHZvaWQgMCwiakxoaFdjIiksbT1fLk4oKCk9PkdTKGwoKSksdm9pZCAwLCJzNjd4U2IiKSxuPV8uTigoKT0+CkVTKGwoKSksdm9pZCAwLCJwQ2lhdSIpLHA9Xy5OKCgpPT4hYigpLmJhPy56cix2b2lkIDAsInN2dXhCIik7cmV0dXJuIF8uSyhfLk8se0E6aCx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQ29udHJvbHNQcm9ncmVzc0JhckNvbnRhaW5lciJ9LF8uSyhDVix7TGI6YixoZjptLGNvbmZpZzooKT0+KHtwb3NpdGlvbjoxLEtmOiExLEluOnAoKSxSYTpuKCksZGlzYWJsZVNjcnViYmluZzplKCksWW86KCk9PntiVCgpfSxGbjooKT0+e2NUKGIoKSx7SWM6ITB9KX19KX0pKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcENvbnRyb2xzQm90dG9tQmFyIixzdHlsZTpfLklFKHsiYmFja2dyb3VuZC1jb2xvciI6ZH0pLCJvbjpjbGljayI6Zn0sXy5LKCJkaXYiLHtjbGFzczoieXRQZnBDb250cm9sc0xlZnRDb250cm9scyJ9LF8uSyhfLk8se0E6KCk9PmIoKS5wbGF5ZXJTdGF0ZT09PTAsdGhlbjooKT0+Xy5LKGFXLHtHOmJ9KSxXOigpPT5fLksoJFYse0c6Yix5czohMH0pfSksCl8uSyhIVix7b3JpZW50YXRpb246Imhvcml6b250YWxfcmlnaHQiLEg6YSxEdjohMCxDcDpfLkJLfHxfLkdLLGJqOiEwLGNsYXNzTmFtZToieXRQZnBDb250cm9sc1ZvbHVtZUNvbnRyb2xzIn0pLF8uSyhwVyx7RzpiLHBsYXllck92ZXJsYXlSZW5kZXJlcjpsLFZ3OiEwLGNsYXNzTmFtZToieXRQZnBDb250cm9sc1RpbWVEaXNwbGF5In0pKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcENvbnRyb2xzUmlnaHRDb250cm9scyJ9LF8uSyhkVyx7Z2Y6YixWcjohMCxjbGFzc05hbWU6Inl0UGZwQ29udHJvbHNDYXB0aW9uc0J1dHRvbiJ9KSxfLksoYlcse0c6YixjbGFzc05hbWU6Inl0UGZwQ29udHJvbHNTZXR0aW5nc0J1dHRvbiJ9KSxfLksoXy5PLHtBOmssdGhlbjooKT0+Xy5LKFpWLHtHOmJ9KX0pKSkpfSl9LCJwZSIpO3ZhciBnbmE9Xy5MKCh7ZGF0YTphfSk9Pl8uSygieXQtZW1iZWRzLWluZm8tcGFuZWwtZGV0YWlscy12aWV3LW1vZGVsIix7Y2xhc3M6Inl0RW1iZWRzSW5mb1BhbmVsRGV0YWlsc1ZpZXdNb2RlbEhvc3QifSxfLksoXy5WLHtjbGFzc05hbWU6Inl0RW1iZWRzSW5mb1BhbmVsRGV0YWlsc1ZpZXdNb2RlbEJvZHlUZXh0Iix0ZXh0OigpPT5hKCkuYm9keVRleHR9KSxfLksoXy5nRyx7cGE6KCk9PmEoKS5jdGFCdXR0b25zfHxbXX0sYj0+KGI9KGI9Xy5CKGIsYW1hKSk/Xy5CKHtsaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6e2NvbnRlbnQ6Yi5ib2R5VGV4dD8uY29udGVudH0sbGVhZGluZ0ltYWdlOntzb3VyY2VzOlt7Y2xpZW50UmVzb3VyY2U6e2ltYWdlTmFtZTpiPy5pY29uPy5pY29uVHlwZX19XX0scmVuZGVyZXJDb250ZXh0Ontjb21tYW5kQ29udGV4dDp7b25UYXA6Yj8ub25UYXB9fX19LF8uWkMpOnZvaWQgMCk/Xy5LKF8uQ0Qse2RhdGE6Yn0pOm51bGwpKSwicWUiKTt2YXIgaG5hPV8uTCgoe2RhdGE6YSxvbkNsaWNrOmJ9KT0+Xy5LKCJ5dC1lbWJlZHMtaW5mby1wYW5lbC1vdmVydmlldy12aWV3LW1vZGVsIixudWxsLF8uSygiYnV0dG9uIix7Im9uOmNsaWNrIjpiLGNsYXNzOiJ5dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckJ1dHRvbiJ9LF8uSyhfLk8se0E6KCk9PmEoKS5oZWFkZXJJY29uPy5pY29uVHlwZSx0aGVuOigpPT5fLksoInNwYW4iLG51bGwsXy5LKF8uTUQse2ljb246KCk9PmEoKS5oZWFkZXJJY29uPy5pY29uVHlwZX0pKX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVyVGV4dCJ9LF8uSyhfLlYse3RleHQ6KCk9PmEoKS50aXRsZX0pLF8uSyhfLlYse3RleHQ6KCk9Pih7Y29udGVudDphKCkudGl0bGUmJmEoKS5ib2R5VGV4dD8iIFx1MjAyMiAiOiIifSl9KSxfLksoXy5WLHt0ZXh0OigpPT5hKCkuYm9keVRleHR9KSkpKSwicmUiKTt2YXIgdlc9Xy5MKCh7ZGF0YTphLHByb3BzOmJ9KT0+e2Z1bmN0aW9uIGMoZCl7dmFyIGU9YSgpLmluZm9QYW5lbERldGFpbHNWaWV3TW9kZWw7aWYoZSl7dmFyIGY9e307ZS50aXRsZT8uY29udGVudCYmKGYuaGVhZGVyVGl0bGU9ZS50aXRsZS5jb250ZW50KTtfLnlOKHsuLi5mLEdiOigpPT5fLksoZ25hLHtkYXRhOmV9KSxIYTohMH0pfWQuc3RvcFByb3BhZ2F0aW9uKCl9cmV0dXJuIF8uSygieXRtLWVtYmVkcy1pbmZvLXBhbmVsLXJlbmRlcmVyIix7Y2xhc3M6Xy5QKCJ5dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckhvc3QiLHt5dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckhvc3RBdXRvaGlkZTooKT0+YigpLnBsYXllclN0YXRlPT09MSx5dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckhvc3RUb3BDb250cm9sc1N0YWNrZWRJblBvcnRyYWl0OigpPT4hJFMoYigpKSYmIWIoKS5iYT8uaGlkZVZpZGVvSW5mbyYmIWIoKS5iYT8ubmh9KSxzdHlsZTpfLklFKHsiYW5pbWF0aW9uLWRlbGF5IjooKT0+CmAke2EoKS5kdXJhdGlvbk1zfHwxRTR9bXNgfSl9LF8uSyhfLk8se0E6KCk9PmEoKS5pbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbCx0aGVuOmQ9Pl8uSyhobmEse2RhdGE6ZCxvbkNsaWNrOmN9KX0pKX0sInNlIik7dlcuaWRvbUNvbXBhdD0hMDt2YXIgd1c9Xy5MKCh7RzphfSk9Pnt2YXIgW2IsY109Xy5KKCJoaWRkZW4iLHZvaWQgMCwiU0JoYkhlIiksZCxlLFtmLGhdPV8uSighMSx2b2lkIDAsIkhnN3huZiIpLFtrLGxdPV8uSighMSx2b2lkIDAsIm5LSGxaZSIpO18uVUooKCk9Pnt0VygpPT09dm9pZCAwJiZ1bGEoKTtlPXNldFRpbWVvdXQoKCk9Pnt0VygpJiZtKCEwKTtsKCEwKX0sMkUzKX0pO18uWXUoKCk9PnttKCExKTtjbGVhclRpbWVvdXQoZSk7Y2xlYXJUaW1lb3V0KGQpfSk7Xy5uRSgoKT0+e0NVKCkmJmYoKSYmKG0oITEpLHNXKCEwKSk7IXRXKCkmJmYoKSYmbSghMSk7dFcoKSYmIWVuYSgpJiYhZigpJiZrKCkmJm0oITApfSwiVkNGQkliIik7dmFyIG09bj0+e2gobik7YSgpLkg/LnNldEF1dG9jcm9wRW5hYmxlZChuKTtjbGVhclRpbWVvdXQoZCk7bj8oYygidmlzaWJsZSIpLGQ9c2V0VGltZW91dCgoKT0+e2MoIiIpfSwzRTMpKTooYygiIiksZD1zZXRUaW1lb3V0KCgpPT57YygiaGlkZGVuIil9LDNFMykpfTtyZXR1cm4gXy5LKCJkaXYiLAp7Y2xhc3M6Xy5QKCJ5dEF1dG9jcm9wQnV0dG9uSG9zdCIse3l0QXV0b2Nyb3BCdXR0b25WaXNpYmxlOigpPT5iKCk9PT0idmlzaWJsZSIseXRBdXRvY3JvcEJ1dHRvbkhpZGRlbjooKT0+YigpPT09ImhpZGRlbiJ9KX0sXy5LKF8uTyx7QTpmLHRoZW46KCk9Pl8uSyhfLnBPLHtkYXRhOntzdHlsZToiU1RZTEVfTElHSFRfVEVYVCIsc2l6ZToiU0laRV9ERUZBVUxUIix0ZXh0OntydW5zOlt7dGV4dDpfLiROLlBzfV19fSxjbGFzc05hbWU6Inl0QXV0b2Nyb3BCdXR0b25BdXRvQ3JvcEJ1dHRvbiIscHJldmVudERlZmF1bHQ6ITAsc3RvcFByb3BhZ2F0aW9uOiEwLHRnOigpPT57bSghZigpKTtzVyghZigpKX19KSxXOigpPT5fLksoXy5wTyx7ZGF0YTp7c3R5bGU6IlNUWUxFX0xJR0hUX1RFWFQiLHNpemU6IlNJWkVfREVGQVVMVCIsdGV4dDp7cnVuczpbe3RleHQ6IjEwMCUifV19fSxjbGFzc05hbWU6Inl0QXV0b2Nyb3BCdXR0b25BdXRvQ3JvcEJ1dHRvbiIscHJldmVudERlZmF1bHQ6ITAsCnN0b3BQcm9wYWdhdGlvbjohMCx0ZzooKT0+e20oIWYoKSk7c1coIWYoKSl9fSl9KSl9LCJ1ZSIpO3dXLmlkb21Db21wYXQ9ITA7dmFyIHhXPV8uTCgoe2RhdGE6YSxGZTpifSk9Pl8uSygieXRtLWVuZHNjcmVlbi12aWRlby1yZW5kZXJlciIsbnVsbCxfLksoXy5mamEse2RhdGE6KCk9Pih7dGh1bWJuYWlsOmEoKS50aHVtYm5haWwsdGh1bWJuYWlsT3ZlcmxheXM6YSgpLnRodW1ibmFpbE92ZXJsYXlzLHZpZGVvSWQ6YSgpLnZpZGVvSWQsbGVuZ3RoVGV4dDphKCkubGVuZ3RoVGV4dCxwdWJsaXNoZWRUaW1lVGV4dDphKCkucHVibGlzaGVkVGltZVRleHQsbmF2aWdhdGlvbkVuZHBvaW50OmEoKS5uYXZpZ2F0aW9uRW5kcG9pbnQsaGVhZGxpbmU6YSgpLnRpdGxlfSksRmU6Yn0pKSwidmUiKTt4Vy5pZG9tQ29tcGF0PSEwO3ZhciB6Vz1fLkwoKHt3YXRjaE5leHRSZXNwb25zZTphfSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0RnVsbHNjcmVlblZpZGVvUmVjb21tZW5kYXRpb25zSG9zdCIsaWRvbUtleToiZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlciJ9LF8uSyhfLmdHLHtwYTooKT0+TVMoYT8uKCkpfSxiPT5fLksoeVcse3ZpZGVvOmJ9KSkpLCJ3ZSIpO3pXLmlkb21Db21wYXQ9ITA7dmFyIHlXPV8uTCgoe3ZpZGVvOmF9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNSZWNvbW1lbmRhdGlvbiJ9LF8uSyhfLlcse2RhdGE6YX0se2VuZFNjcmVlblZpZGVvUmVuZGVyZXI6KHtkYXRhOmJ9KT0+Xy5LKHhXLHtkYXRhOmIsRmU6ITB9KX0pKSwieGUiKTt5Vy5pZG9tQ29tcGF0PSEwO3ZhciBCVz1fLkwoYT0+Xy5LKCJwbGF5ZXItZnVsbHNjcmVlbi10b3AtY29udHJvbHMiLHtjbGFzczoieXR3UGxheWVyRnVsbHNjcmVlblRvcENvbnRyb2xzSG9zdCIsc3R5bGU6Xy5JRSh7dmlzaWJpbGl0eTooKT0+YS5HKCkuTmE/InZpc2libGUiOiJoaWRkZW4ifSl9LF8uSygiaDIiLHtjbGFzczoieXR3UGxheWVyRnVsbHNjcmVlblRvcENvbnRyb2xzRnVsbHNjcmVlbkNvbnRyb2xzVmlkZW9UaXRsZSJ9LF8uSyhfLk8se0E6KCk9PmEud2F0Y2hOZXh0UmVzcG9uc2U/LigpPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy52aWRlb0RldGFpbHM/LnBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNSZW5kZXJlcj8udGl0bGUsdGhlbjpiPT5fLksoXy5WLHt0ZXh0OmJ9KX0pKSxfLksoQVcse0c6YS5HfSkpLCJ5ZSIpO0JXLmlkb21Db21wYXQ9ITA7CnZhciBBVz1fLkwoKHtHOmF9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyRnVsbHNjcmVlblRvcENvbnRyb2xzRnVsbHNjcmVlbkNsb3NlQnV0dG9uV3JhcHBlciJ9LF8uSyhfLnBPLHtkYXRhOntzdHlsZToiU1RZTEVfTElHSFRfVEVYVCIsc2l6ZToiU0laRV9ERUZBVUxUIixpY29uOntpY29uVHlwZToiQ0xPU0UifSxhY2Nlc3NpYmlsaXR5OntsYWJlbDoiQ2xvc2UifSxhY2Nlc3NpYmlsaXR5RGF0YTp7YWNjZXNzaWJpbGl0eURhdGE6e2xhYmVsOiJDbG9zZSJ9fX0scHJldmVudERlZmF1bHQ6ITAsc3RvcFByb3BhZ2F0aW9uOiEwLHRnOigpPT57YSgpLlMoe05hOiExfSk7Xy5NTygiLmZ1bGxzY3JlZW4tbW9yZS12aWRlb3MtZW5kcG9pbnQiKTtjVChhKCkpfX0pKSwiemUiKTtBVy5pZG9tQ29tcGF0PSEwO3ZhciBDVz1fLkwoYT0+e3ZhciBiPSgpPT5hLkcoKS5pc0Z1bGxzY3JlZW58fGEuRygpLmJhPy5FZSxjPSgpPT57dmFyIGY9YS5HKCk7cmV0dXJuIF8uYUwoImZ1bGxzY3JlZW4tY29udHJvbHMiLHtleHBhbmRlZDpmLk5hLCJzdHlsZS1yZWNvbW1lbmRhdGlvbnMtaW4tcG9ydHJhaXQiOmYuYmE/LkVlfHxfLngoIm13ZWJfZW5hYmxlX3BvcnRyYWl0X2Z1bGxzY3JlZW5fYWN0aW9ucyIpfSl9LGQ9KCk9Pnt2YXIgZj1hLkcoKTtyZXR1cm5gCiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgke2YuSmZ9cHgpOwogICAgICB0cmFuc2l0aW9uOiAke2YuV2Q/Im5vbmUiOiJ0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3R0b20gMC4ycyBlYXNlIn07CiAgICAgIHZpc2liaWxpdHk6ICR7Zi5KZnx8Zi5OYT8idmlzaWJsZSI6ImluaGVyaXQifTsKICAgICAgcG9pbnRlci1ldmVudHM6ICAke2YuTmE/ImFsbCI6Im5vbmUifTsKICAgIGB9LGU9KCk9Pl8ueCgid2ViX2VuYWJsZV9zbWFydF96b29tIikmJmEuYXV0b2Nyb3BDb25maWc/LigpO3JldHVybiBfLksoInBsYXllci1mdWxsc2NyZWVuLWNvbnRyb2xzIix7aGlkZGVuOiFiLGNsYXNzOiJ5dHdQbGF5ZXJGdWxsc2NyZWVuQ29udHJvbHNIb3N0In0sXy5LKF8uTyx7QTpiLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsXy5LKEJXLHtHOmEuRyx3YXRjaE5leHRSZXNwb25zZTphLndhdGNoTmV4dFJlc3BvbnNlfSksXy5LKF8uTyx7QTplLHRoZW46KCk9Pl8uSyh3Vyx7RzphLkd9KX0pLF8uSyhLVix7RzphLkcsd2F0Y2hOZXh0UmVzcG9uc2U6YS53YXRjaE5leHRSZXNwb25zZSx0aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI6YS50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXJ9KSxfLksoImRpdiIse2NsYXNzOmMsc3R5bGU6ZH0sXy5LKHpXLHt3YXRjaE5leHRSZXNwb25zZTphLndhdGNoTmV4dFJlc3BvbnNlfSkpKX0pKX0sIkFlIik7Q1cuaWRvbUNvbXBhdD0hMDt2YXIgRFc9Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgYj1fLnVFKCJ5dG0tcGFpZC1jb250ZW50LW92ZXJsYXktcmVuZGVyZXIiKTtyZXR1cm4gXy5LKCJ5dG0tcGFpZC1jb250ZW50LW92ZXJsYXktcmVuZGVyZXIiLHtjbGFzczoieXRtUGFpZENvbnRlbnRPdmVybGF5SG9zdCIsZWw6Yiwib246YW5pbWF0aW9uZW5kIjpmdW5jdGlvbihjKXtiLnZhbHVlLmNsYXNzTGlzdC5hZGQoInl0bVBhaWRDb250ZW50T3ZlcmxheUhpZGRlbiIpO2Muc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5uSCx7Y29tbWFuZDooKT0+YSgpLm5hdmlnYXRpb25FbmRwb2ludCxjbGFzc05hbWU6Inl0bVBhaWRDb250ZW50T3ZlcmxheUxpbmsifSxfLksoXy5PLHtBOigpPT5hKCkuaWNvbj8uaWNvblR5cGUsdGhlbjooKT0+Xy5LKCJzcGFuIixudWxsLF8uSyhfLk1ELHtpY29uOigpPT5hKCkuaWNvbj8uaWNvblR5cGV9KSl9KSxfLksoImRpdiIse2NsYXNzOiJ5dG1QYWlkQ29udGVudE92ZXJsYXlUZXh0In0sXy5LKF8uViwKe3RleHQ6KCk9PmEoKS50ZXh0fSkpLF8uSyhfLk8se0E6KCk9PmEoKS5uYXZpZ2F0aW9uRW5kcG9pbnQsdGhlbjooKT0+Xy5LKF8uTUQse2ljb246IkNIRVZST05fUklHSFQifSl9KSkpfSwiQmUiKTtEVy5pZG9tQ29tcGF0PSEwO3ZhciBFVz1fLkwoYT0+e3ZhciBiPSgpPT5hLkcoKS5IPy5nZXRTaXplPy4oKT8ud2lkdGg7cmV0dXJuIF8uSygicGxheWVyLWJvdHRvbS1jb250cm9scyIse2NsYXNzOl8uUCgieXR3UGxheWVyQm90dG9tQ29udHJvbHNIb3N0Iix7ImRlbGhpLXBsYXllciI6Xy54KCJtd2ViX3dhdGNoX2RlbGhpX3BsYXllciIpfSl9LF8uSygiZGl2Iix7Y2xhc3M6InBsYXllci1jb250cm9scy1ib3R0b20gcGxheWVyLWNvbnRyb2xzLWJvdHRvbS1sZWZ0In0sXy5LKF8uTyx7QTooKT0+IShiKCkmJmIoKTwzMjApLHRoZW46KCk9Pl8uSyhwVyx7RzphLkcsU206YS5TbSxwbGF5ZXJPdmVybGF5UmVuZGVyZXI6YS5wbGF5ZXJPdmVybGF5UmVuZGVyZXJ9KX0pKSxfLksoImRpdiIse2NsYXNzOl8uUCgicGxheWVyLWNvbnRyb2xzLWJvdHRvbSIsInBsYXllci1jb250cm9scy1ib3R0b20tcmlnaHQiKX0sXy5LKF8uTyx7QTooKT0+IShhLkcoKS5iYT8uaXF8fGIoKSYmYigpPDI0MCksdGhlbjooKT0+Xy5LKCJkaXYiLAp7Y2xhc3M6Inl0d1BsYXllckJvdHRvbUNvbnRyb2xzRnVsbHNjcmVlbkJ1dHRvbldyYXBwZXIifSxfLksoWlYse0c6YS5HfSkpfSkpKX0sIkNlIik7RVcuaWRvbUNvbXBhdD0hMDt2YXIgRlc9Xy5MKGE9Pnt2YXIge0c6Yix3YXRjaE5leHRSZXNwb25zZTpjfT1fLkRDKGEse3dhdGNoTmV4dFJlc3BvbnNlOnZvaWQgMH0pO3JldHVybiBfLksoXy5PLHtBOigpPT5IUyhiKCksQVMoYygpKSksdGhlbjooKT0+Xy5LKCJwbGF5ZXItZW5kc2NyZWVuIix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlbkhvc3QifSxfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJFbmRzY3JlZW5Db250YWluZXIifSxfLksoImRpdiIse2lkOiJwbGF5ZXItZW5kc2NyZWVuIixjbGFzczoieXR3UGxheWVyRW5kc2NyZWVuUGxheWVyRW5kc2NyZWVuIiwiZGF0YS1oYXMtdGltZXItY291bnRkb3duIjohMH0sXy5LKGluYSx7cHJvcHM6YixwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjooKT0+QlMoYygpKX0pLF8uSyhqbmEse3Byb3BzOmIscGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6KCk9PkJTKGMoKSl9KSxfLksoa25hLHtwcm9wczpiLHBsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOigpPT4KQlMoYygpKX0pKSkpfSl9LCJEZSIpO0ZXLmlkb21Db21wYXQ9ITA7CnZhciBpbmE9Xy5MKGE9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlblRvcFBhbmVsIn0sXy5LKGxuYSx7Li4uYX0pLF8uSyhtbmEsey4uLmF9KSksIkVlIiksbG5hPV8uTChhPT57dmFyIHtwcm9wczpiLHBsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOmN9PV8uREMoYSx7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6dm9pZCAwfSksW2QsZV09Xy4kTi5Pcy5zcGxpdCgic2Vjb25kc19wbGFjZWhvbGRlciIpO3JldHVybiBfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJFbmRzY3JlZW5IZWFkZXIiLHJvbGU6InRleHQifSxfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5iKCkuemYmJmMoKX0sKCk9Pl8uSyhfLlYse3RleHQ6KCk9PmMoKT8ucGF1c2VUZXh0fSkpLF8uSyhfLkRFLG51bGwsKCk9Pl8uSygic3BhbiIse2lkOiJ1cG5leHQtaW4tbWVzc2FnZSJ9LGQsXy5LKG5uYSx7Li4uYX0pLGUpKSkpfSwiRmUiKSxubmE9Xy5MKGE9Pnt2YXIgYj0KYS5wcm9wcztyZXR1cm4gXy5LKCJzcGFuIix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlbkNvdW50ZG93bk51bWJlciIsImFyaWEtaGlkZGVuIjohMH0sKCk9PmIoKS55Zil9LCJHZSIpLG1uYT1fLkwoYT0+e3ZhciB7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6Yn09Xy5EQyhhLHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjp2b2lkIDB9KTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+YigpPy5jbG9zZUJ1dHRvbix0aGVuOmM9Pl8uSyhfLlcse2RhdGE6Y30se3RodW1ibmFpbE92ZXJsYXlUaW1lU3RhdHVzUmVuZGVyZXI6KHtkYXRhOmR9KT0+Xy5LKF8uVlAse2RhdGE6ZH0pLGJ1dHRvblJlbmRlcmVyOih7ZGF0YTpkfSk9Pl8uSyhfLnBPLHtkYXRhOmQsdGc6KCk9PntRVShhKX0sYnV0dG9uT3ZlcnJpZGVzOntzdHlsZToib3ZlcmxheSJ9fSl9KX0pfSwiSGUiKSxqbmE9Xy5MKGE9Pnt2YXIge3BsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOmJ9PV8uREMoYSx7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6dm9pZCAwfSk7CnJldHVybiBfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJFbmRzY3JlZW5Db3VudGRvd25Db250YWluZXIifSxfLksoXy5uSCx7Y29tbWFuZDooKT0+YigpPy5uZXh0QnV0dG9uPy5idXR0b25SZW5kZXJlcj8ubmF2aWdhdGlvbkVuZHBvaW50LGNsYXNzTmFtZToieXR3UGxheWVyRW5kc2NyZWVuQ3VlZFZpZGVvQ29udGFpbmVyIixhcmlhTGFiZWw6KCk9Pl8uREooYigpPy52aWRlb1RpdGxlPy5hY2Nlc3NpYmlsaXR5KX0sXy5LKG9uYSx7Li4uYX0pLF8uSyhwbmEsey4uLmF9KSkpfSwiSWUiKSxvbmE9Xy5MKGE9Pnt2YXIge3BsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOmJ9PV8uREMoYSx7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6dm9pZCAwfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlbkN1ZWRUaHVtYm5haWxPdmVybGF5In0sXy5LKF8uWFAse3RodW1ibmFpbERldGFpbHM6KCk9PmIoKT8uYmFja2dyb3VuZCxNZDp2b2lkIDAsVGI6ITEsCmNsYXNzTmFtZToieXR3UGxheWVyRW5kc2NyZWVuVGh1bWJuYWlsQ29udGFpbmVyIn0pLF8uSyhfLlcse2RhdGE6KCk9PmIoKT8udGh1bWJuYWlsT3ZlcmxheXN9LHt0aHVtYm5haWxPdmVybGF5VGltZVN0YXR1c1JlbmRlcmVyOih7ZGF0YTpjfSk9Pl8uSyhfLlZQLHtkYXRhOmMsY2xhc3NOYW1lOiJ5dHdQbGF5ZXJFbmRzY3JlZW5UaHVtYm5haWxPdmVybGF5cyIsYXJpYUhpZGRlbjohMH0pfSkpfSwiSmUiKSxwbmE9Xy5MKGE9Pnt2YXIge3BsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOmJ9PV8uREMoYSx7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6dm9pZCAwfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlblZpZGVvSW5mbyIsImFyaWEtaGlkZGVuIjohMH0sXy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyRW5kc2NyZWVuVmlkZW9UaXRsZSJ9LF8uSyhfLlYse3RleHQ6KCk9PmIoKT8udmlkZW9UaXRsZX0pKSxfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb0F1dGhvciJ9LApfLksoXy5WLHt0ZXh0OigpPT5iKCk/LmJ5bGluZSxtYTohMH0pKSl9LCJLZSIpLGtuYT1fLkwoYT0+e3ZhciB7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6Yn09Xy5EQyhhLHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjp2b2lkIDB9KSxjPXtzdHlsZToib3ZlcmxheSJ9O3JldHVybiBfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJFbmRzY3JlZW5CdXR0b25Db250YWluZXIifSxfLksoXy5XLHtkYXRhOigpPT5iKCk/LmNhbmNlbEJ1dHRvbn0se2J1dHRvblJlbmRlcmVyOih7ZGF0YTpkfSk9Pl8uSyhfLnBPLHtkYXRhOmQsY2xhc3NOYW1lOiJ5dHdQbGF5ZXJFbmRzY3JlZW5BY3Rpb25CdXR0b24iLHRnOigpPT57UVUoYSl9LGJ1dHRvbk92ZXJyaWRlczpjfSl9KSxfLksoXy5XLHtkYXRhOigpPT5iKCk/Lm5leHRCdXR0b259LHtidXR0b25SZW5kZXJlcjooe2RhdGE6ZH0pPT5fLksoXy5wTyx7ZGF0YTpkLGNsYXNzTmFtZToieXR3UGxheWVyRW5kc2NyZWVuQWN0aW9uQnV0dG9uIiwKYnV0dG9uT3ZlcnJpZGVzOmN9KX0pKX0sIkxlIik7dmFyIEdXPV8uTChhPT57dmFyIGI9Xy5rRygkVCksYz1fLlAoInl0d1BsYXllck1pZGRsZUNvbnRyb2xzSG9zdCIsInBsYXllci1jb250cm9scy1taWRkbGUiLHsicHJldmVudC1jb250cm9scy1jb2xsaXNpb24iOigpPT57dmFyIGg9Yj8uKCk7aWYoIWg/LmlzUmVhZHk/LigpKXJldHVybiExO2g9aD8uZ2V0U2l6ZSgpPy5oZWlnaHQ7aD0hIWgmJmg8Mjc1O3ZhciBrPWEuRygpLmJhPy52b2x1bWVDb250cm9sVHlwZT09PSJ2b2x1bWUtc2xpZGVyIjtyZXR1cm4gaHx8a319KSxkPSgpPT57dmFyIGg9YS5HKCk7cmV0dXJuIGgucGxheWVyU3RhdGU9PT0zfHxoLnBsYXllclN0YXRlPT09LTF9LGU9KCk9Pnt2YXIgaD1hLkcoKTt2YXIgaz1iPy4oKTtYUShrKXx8IWs/LmlzUmVhZHk/LigpP2s9ITE6aD8uYmE/LnZuP2s9ITA6KGg9ay5nZXRWaWRlb0RhdGEoKSxrPSFoLmlzTGlzdGVkfHxoLnlwY1ByZXZpZXd8fGguaXNMaXZlfHx0eXBlb2Ygay5nZXRMb29wUmFuZ2U9PT0iZnVuY3Rpb24iJiYKay5nZXRMb29wUmFuZ2UoKT8hMDohMSk7cmV0dXJuIWt9LGY9Xy5QKCJwbGF5ZXItY29udHJvbHMtbWlkZGxlLWNvcmUtYnV0dG9ucyIseyJzY3JlZW5yZWFkZXItc2FmZS1oaWRlLW1pZGRsZS1idXR0b25zIjpkfSk7cmV0dXJuIF8uSygicGxheWVyLW1pZGRsZS1jb250cm9scyIse2NsYXNzOmN9LF8uSyhfLk8se0E6ZCx0aGVuOigpPT5fLksocW5hLG51bGwpfSksXy5LKCJkaXYiLHtjbGFzczpmfSxfLksoXy5PLHtBOmUsdGhlbjooKT0+Xy5LKHJuYSx7RzphLkcsd2F0Y2hOZXh0UmVzcG9uc2U6YS53YXRjaE5leHRSZXNwb25zZX0pfSksXy5LKFhWLHtGZDotMSxHOmEuRyxjbGFzc05hbWU6Inl0d1BsYXllck1pZGRsZUNvbnRyb2xzQTExeVNlZWtCdXR0b24ifSksXy5LKF8uTyx7QTooKT0+e3ZhciBoPWEuRygpO3JldHVybiF1UyhoKX0sdGhlbjooKT0+Xy5LKCRWLHtHOmEuR30pLFc6KCk9Pl8uSyhhVyx7RzphLkd9KX0pLF8uSyhYVix7RmQ6MSxHOmEuRyxjbGFzc05hbWU6Inl0d1BsYXllck1pZGRsZUNvbnRyb2xzQTExeVNlZWtCdXR0b24ifSksCl8uSyhfLk8se0E6ZSx0aGVuOigpPT5fLksoc25hLHtHOmEuRyx3YXRjaE5leHRSZXNwb25zZTphLndhdGNoTmV4dFJlc3BvbnNlfSl9KSkpfSwiTWUiKTtHVy5pZG9tQ29tcGF0PSEwOwp2YXIgcW5hPV8uTCgoKT0+Xy5LKCJkaXYiLHtjbGFzczoicGxheWVyLWNvbnRyb2xzLXNwaW5uZXIifSxfLksoImRpdiIse2NsYXNzOiJzcGlubmVyIn0pKSwiTmUiKSxybmE9Xy5MKGE9Pnt2YXIgYj1fLmtHKCRUKSxjPSgpPT4hYS5HKCkuYmE/LnZuO3JldHVybiBfLksoWVYse25hbWU6IlBMQVlFUl9QUkVWSU9VUyIsYXJpYUxhYmVsOl8uJE4uTXQsYXJpYURpc2FibGVkOmMsY2xhc3NOYW1lOl8uUCgicGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtYnV0dG9uIix7Imljb24tZGlzYWJsZSI6Y30pLFVkOjM2ODQwLGNvbnRlbnQ6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6InBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LXZpc2libGUtYXJlYSJ9LF8uSyhfLk1ELHtpY29uOiJQTEFZRVJfUFJFVklPVVMifSkpLG9uY2xpY2s6KCk9Pnt2YXIgZD1hLkcoKSxlPWI/LigpO2QucmMmJmU/LnVuTXV0ZSgpO3ZhciBmPWEud2F0Y2hOZXh0UmVzcG9uc2U/LigpLGg9QVMoZik7CmlmKFhRKGUpJiZmJiZoKXtpZihkPVJVKGgpLlVhKV8uJEQoZCksXy5BSihkLHt9LCExKX1lbHNlIGY9YS5HKCkuYmE/LnZuLHBqYShjKCksZSxmKSxkLmJhPy51aiYmXy5ETyhfLmh4KCksMjcyNDApfX0pfSwiT2UiKSxzbmE9Xy5MKGE9Pnt2YXIgYj1fLmtHKCRUKSxjPSgpPT57dmFyIGQ9Yj8uKCk7aWYoIWQ/LmlzUmVhZHk/LigpKXJldHVybiEwO3ZhciBlPWQ/LmdldFBsYXlsaXN0KCk7ZD1kPy5nZXRQbGF5bGlzdEluZGV4KCk7dmFyIGY9ITE7ZSYmZCE9PXZvaWQgMCYmKGY9ZD49ZS5sZW5ndGgtMSk7cmV0dXJuIGZ9O3JldHVybiBfLksoWVYse25hbWU6IlBMQVlFUl9ORVhUIixhcmlhTGFiZWw6Xy4kTi5LdCxhcmlhRGlzYWJsZWQ6YyxVZDozNjg0MSxjb250ZW50OigpPT5fLksoImRpdiIse2NsYXNzOiJwbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC12aXNpYmxlLWFyZWEifSxfLksoXy5NRCx7aWNvbjoiUExBWUVSX05FWFQifSkpLGNsYXNzTmFtZTpfLlAoInBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LWJ1dHRvbiIsCnsiaWNvbi1kaXNhYmxlIjpjfSksb25jbGljazooKT0+e3ZhciBkPWEuRygpLGU9Yj8uKCk7ZC5yYyYmZT8udW5NdXRlKCk7dmFyIGY9YS53YXRjaE5leHRSZXNwb25zZT8uKCksaD1BUyhmKTtpZihYUShlKSYmZiYmaCl7aWYoZD1SVShoKS5uZXh0KV8uJEQoZCksXy5BSihkLHt9LCExKX1lbHNlIGMoKXx8KGU/Lm5leHRWaWRlbygpLGQuYmE/LnVqJiZfLkRPKF8uaHgoKSwyNzI0MCkpfX0pfSwiUGUiKTt2YXIgSFc9Xy5MKCh7dmlkZW9EZXRhaWxzOmEsRzpifSk9PntmdW5jdGlvbiBjKFQpe0MoKTtULnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGQoVCl7RygpO1Quc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gZShUKXtDKCk7VC5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBmKFQpe0U/LnZhbHVlPy5jb250YWlucyhULnRhcmdldCl8fEcoKTtULnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGgoVCl7VC5wcmV2ZW50RGVmYXVsdCgpO1hTKDIzODUxKTt2YXIgYmE9U1UoYixEKTtpZihiYSl7dmFyIGFhPWIoKT8uSD8uZ2V0Q3VycmVudFRpbWUoKTtfLkFKKGJhLHtwYXJhbXM6e3RpbWVzdGFtcDphYT9NYXRoLmZsb29yKGFhKS50b1N0cmluZygpOnZvaWQgMH19LCExLHtldmVudDpUfSl9VC5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBrKFQpe1UoVCk7VC5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBsKFQpe1QucHJldmVudERlZmF1bHQoKTt6KCl8fEYoKSYmRigpPDMyMD8KVShUKTpDKCk7VC5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBtKFQpe1QucHJldmVudERlZmF1bHQoKTtHKDI1MDApO1Quc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gbihUKXtHKDI1MDApO1Quc3RvcFByb3BhZ2F0aW9uKCl9dmFyIFtwLHJdPV8uSighMSx2b2lkIDAsImlaTVFtZiIpLFt0LHZdPV8uSighMSx2b2lkIDAsIkNoaEgwYiIpLHo9dCxFPV8udkUoImRpdiIpLEEsRj0oKT0+YigpLkg/LmdldFNpemU/LigpPy53aWR0aCxDPSgpPT57RigpJiZGKCk8MzIwfHwocighMCksQSYmY2xlYXJUaW1lb3V0KEEpLHooKXx8KGJUKCksdighMCkpKX0sRz0oVD01MDApPT57RigpJiZGKCk8MzIwfHwocighMSksQT1zZXRUaW1lb3V0KCgpPT57IXAoKSYmeigpJiYodighMSksY1QoYigpLHtJYzohMH0pKX0sVCkpfSxEPSgpPT5fLkIoYT8uKCkuY29sbGFwc2VkUmVuZGVyZXIsbVYpPy50aXRsZSxIPSgpPT5hPy4oKS5jaGFubmVsVGh1bWJuYWlsRW5kcG9pbnQsUj0oKT0+YT8uKCkuY2hhbm5lbFRodW1ibmFpbCwKTT0oKT0+Xy5CKGE/LigpLmV4cGFuZGVkUmVuZGVyZXIsblYpPy50aXRsZT8/KF8ueCgiZW1iZWRzX3ZpZF9kZXRhaWxzX2ZhbGxiYWNrX2NoYW5uZWxfbmFtZV9rcyIpP3ZvaWQgMDpfLkIoYT8uKCkuY29sbGFwc2VkUmVuZGVyZXIsbVYpPy5zdWJ0aXRsZSksUz0oKT0+Xy5CKGE/LigpLmV4cGFuZGVkUmVuZGVyZXIsblYpPy5zdWJ0aXRsZSxZPSgpPT5fLkIoYT8uKCkuZXhwYW5kZWRSZW5kZXJlcixuVik/LnN1YnNjcmliZUJ1dHRvbixwYT1fLk4oKCk9Pl8uQihTVShiLEQpLF8uVkQpPy51cmwsdm9pZCAwLCJ5VEhOaiIpLG9hPV8uTigoKT0+Xy5CKGE/LigpLmNoYW5uZWxUaHVtYm5haWxFbmRwb2ludCxfLlZEKT8udXJsLHZvaWQgMCwicHdsM0ljIiksVT1UPT57VC5wcmV2ZW50RGVmYXVsdCgpO2lmKGE/LigpLmNoYW5uZWxUaHVtYm5haWxFbmRwb2ludCYmYT8uKCkpe3ZhciBiYT1hPy4oKS5jaGFubmVsVGh1bWJuYWlsRW5kcG9pbnQ7WFMoMzY5MjUpO18uQUooYmEse30sITEsCntldmVudDpUfSl9fSxoYT1fLlAoInl0bVZpZGVvSW5mb1ZpZGVvVGl0bGVDb250YWluZXIiLHt5dG1WaWRlb0luZm9Mb2dvRW5hYmxlZDooKT0+ISFhPy4oKS5jaGFubmVsVGh1bWJuYWlsfSksbWE9Xy5QKCJ5dG1WaWRlb0luZm9PdmVybGF5Iix7eXRtVmlkZW9JbmZvRXhwYW5kZWQ6KCk9PnooKX0pLHRhPSgpPT4hIV8uQihhPy4oKS5leHBhbmRlZFJlbmRlcmVyLG5WKT8uc3Vic2NyaWJlQnV0dG9uJiYhYigpLmJhPy5vaDtyZXR1cm4gXy5LKCJlbWJlZGRlZC1wbGF5ZXItdmlkZW8tZGV0YWlscyIse2NsYXNzOiJ5dG1WaWRlb0luZm9Ib3N0In0sXy5LKCJkaXYiLHtjbGFzczoieXRtVmlkZW9JbmZvVmlkZW9EZXRhaWxzQ29udGFpbmVyIn0sXy5LKCJkaXYiLHtjbGFzczpoYX0sXy5LKF8uTyx7QTpELHRoZW46KCk9Pl8uSyhfLk8se0E6cGEsdGhlbjooKT0+Xy5LKCJhIix7Im9uOmNsaWNrIjpoLGNsYXNzOiJ5dG1WaWRlb0luZm9WaWRlb1RpdGxlIixlbDpfLnJGKFQ9PntXUyhULAoyMzg1MSl9KSxocmVmOnBhfSxfLksoXy5WLHt0ZXh0OkQsY2xhc3NOYW1lOl8uUCgieXRtVmlkZW9JbmZvTGluayIpLHViOiEwLG5vV3JhcDohMCxtYTohMH0pKSxXOigpPT5fLksoInNwYW4iLHtjbGFzczoieXRtVmlkZW9JbmZvVmlkZW9UaXRsZSJ9LF8uSyhfLlYse3RleHQ6RCx1YjohMCxub1dyYXA6ITAsbWE6ITB9KSl9KX0pLF8uSyhfLk8se0E6Xy54KCJlbWJlZHNfdmlkX2RldGFpbHNfZmFsbGJhY2tfY2hhbm5lbF9uYW1lX2tzIik/SDpNLHRoZW46KCk9Pl8uSyhfLk8se0E6b2EsdGhlbjooKT0+Xy5LKCJhIix7Im9uOmNsaWNrIjprLGNsYXNzOiJ5dG1WaWRlb0luZm9DaGFubmVsVGl0bGUiLGhyZWY6b2F9LF8uSyhfLlYse3RleHQ6TSxjbGFzc05hbWU6Xy5QKCJ5dG1WaWRlb0luZm9MaW5rIikseWM6ITAsdWI6ITAsbm9XcmFwOiEwLG1hOiEwfSkpLFc6KCk9Pl8uSygic3BhbiIse2NsYXNzOiJ5dG1WaWRlb0luZm9DaGFubmVsVGl0bGUifSxfLksoXy5WLHt0ZXh0Ok0seWM6ITAsCnViOiEwLG5vV3JhcDohMCxtYTohMH0pKX0pfSkpLF8uSyhfLk8se0E6Uix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dG1WaWRlb0luZm9DaGFubmVsQ29udGFpbmVyIixlbDpFLCJvbjpmb2N1c2luIjplLCJvbjpmb2N1c291dCI6Ziwib246bW91c2VvdmVyIjpjLCJvbjptb3VzZW91dCI6ZH0sXy5LKCJidXR0b24iLHsib246dG91Y2hzdGFydCI6bCwib246dG91Y2hlbmQiOm0sIm9uOmNsaWNrIjprLGNsYXNzOl8uUCgieXRtVmlkZW9JbmZvTGluayIsInl0bVZpZGVvSW5mb0NoYW5uZWxBdmF0YXIiKSxlbDpfLnJGKFQ9PntXUyhULDM2OTI1KX0pfSxfLksoXy5VUCx7dGh1bWJuYWlsRGV0YWlsczpSLGNsYXNzTmFtZToieXRtVmlkZW9JbmZvQ2hhbm5lbExvZ28iLGFsdDoidGh1bWJuYWlsLWltYWdlIn0pKSxfLksoImRpdiIse2NsYXNzOm1hLCJvbjp0b3VjaHN0YXJ0IjpDLCJvbjp0b3VjaGVuZCI6bn0sXy5LKCJkaXYiLHtjbGFzczoieXRtVmlkZW9JbmZvQ2hhbm5lbEluZm8iLApyb2xlOiJ0ZXh0In0sXy5LKF8uVix7dGV4dDpNLGNsYXNzTmFtZToieXRtVmlkZW9JbmZvRmx5b3V0Q2hhbm5lbFRpdGxlIix5YzohMCx1YjohMCxub1dyYXA6ITAsbWE6ITB9KSxfLksoXy5WLHt0ZXh0OlMsY2xhc3NOYW1lOiJ5dG1WaWRlb0luZm9GbHlvdXRDaGFubmVsU3VidGl0bGUiLHljOiEwLHViOiEwLG5vV3JhcDohMCxtYTohMH0pKSxfLksoXy5PLHtBOnRhLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bVZpZGVvSW5mb1N1YnNjcmliZUJ1dHRvbiJ9LF8uSyhfLlcse2RhdGE6WX0se3N1YnNjcmliZUJ1dHRvblJlbmRlcmVyOmZXfSkpfSkpKX0pKSl9LCJRZSIpO0hXLmlkb21Db21wYXQ9ITA7dmFyIFRVPV8uJE4uQXQsT2xhPV8uJE4uZ3UsdG5hPV8uTCgoe1F5OmEsb25DbGljazpiLEpuOmMsQnM6ZH0pPT57dmFyIGU9Xy51RSgiYnV0dG9uIixoPT57V1MoaCwyODY2Mil9KSxmPSgpPT5VVShhKCksYz8uKCksZD8uKCkpLmFyaWFMYWJlbDtyZXR1cm4gXy5LKCJ5dG0tbXV0ZS1idXR0b24iLHtjbGFzczoieXRtTXV0ZUJ1dHRvbkhvc3QifSxfLksoImJ1dHRvbiIse2VsOmUsY2xhc3M6Inl0bU11dGVCdXR0b25CdXR0b24iLHRpdGxlOmYsImFyaWEtbGFiZWwiOmYsIm9uOmNsaWNrIjpmdW5jdGlvbihoKXtYUygyODY2Mik7Yj8uKGgpO2guc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoInNwYW4iLG51bGwsXy5LKF8uTUQse2ljb246KCk9PlVVKGEoKSxjPy4oKSxkPy4oKSkuaWNvbk5hbWV9KSkpKX0sIlJlIik7dmFyIElXPV8uTCgoe0hCOmEsV3E6YixKbjpjLEJzOmQsY2xhc3NOYW1lOmV9KT0+Xy5LKCJ5dC1tdXRlLXRvZ2dsZS1idXR0b24iLHtjbGFzczplfSxfLksodG5hLHtReTooKT0+e3ZhciBmPWEoKTtyZXR1cm4gZi5yY3x8Zi52b2x1bWU9PT0wPzA6Zi52b2x1bWU+NTA/MToyfSxvbkNsaWNrOmY9Pnt2YXIgaD1hKCkuSDtoJiYoaC5pc011dGVkKCk/aC51bk11dGUoKTpoLm11dGUoITEpKTtiPy4oZil9LEpuOigpPT4hIWM/LigpLEJzOigpPT4hIWQ/LigpfSkpLCJTZSIpO0lXLmlkb21Db21wYXQ9ITA7dmFyIFZVO3ZhciB1bmE9Xy5MKCh7ZW5hYmxlZDphLGFyaWFMYWJlbDpiLG9uQ2xpY2s6Y30pPT5fLksoImJ1dHRvbiIseyJhcmlhLWxhYmVsIjpiLCJhcmlhLXByZXNzZWQiOmEsIm9uOmNsaWNrIjpmdW5jdGlvbihkKXtjPy4oZCk7ZC5zdG9wUHJvcGFnYXRpb24oKX0sY2xhc3M6Inl0d0F1dG9uYXZUb2dnbGVCdXR0b25Ib3N0In0sXy5LKF8uTUQse2ljb246KCk9PmEoKT8iQVVUT05BVl9PTl9UT0dHTEVfU1BBTk5FUiI6IkFVVE9OQVZfT0ZGX1RPR0dMRV9TUEFOTkVSIixjbGFzc05hbWU6KCk9PmEoKT8ieXR3QXV0b25hdlRvZ2dsZUJ1dHRvblNwYW5uZXJJY29uT24iOiJ5dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PZmYifSksXy5LKF8uTUQse2ljb246KCk9PmEoKT8iUExBWV9DSVJDTEVfRklMTEVEIjoiUEFVU0VfQ0lSQ0xFX0ZJTExFRCIsY2xhc3NOYW1lOigpPT5hKCk/Inl0d0F1dG9uYXZUb2dnbGVCdXR0b25QbGF5SWNvbiI6Inl0d0F1dG9uYXZUb2dnbGVCdXR0b25QYXVzZUljb24ifSkpLAoiVGUiKTt2YXIgSlc9Xy5MKCh7RzphLEN1OmJ9KT0+e18uQ1EoYixlPT57ZSYmZS5lbmFibGVkIT09dm9pZCAwJiZlLmVuYWJsZWQhPT1hKCkuYXV0b25hdkVuYWJsZWQmJlhVKGEoKSxlLmVuYWJsZWQsITEpfSk7dmFyIGM9Xy5OKCgpPT5hKCkuYXV0b25hdkVuYWJsZWQ/Xy5ESihiKCkuZW5hYmxlZEFjY2Vzc2liaWxpdHlEYXRhKTpfLkRKKGIoKS5kaXNhYmxlZEFjY2Vzc2liaWxpdHlEYXRhKSx2b2lkIDAsIlE5Z3Z6YyIpLGQ9Xy5OKCgpPT5hKCkuYXV0b25hdkVuYWJsZWQsdm9pZCAwLCJJUUNaa2YiKTtyZXR1cm4gXy5LKCJwbGF5ZXItYXV0b25hdi10b2dnbGUiLHtjbGFzczoieXR3UGxheWVyQXV0b25hdlRvZ2dsZUhvc3QifSxfLksodW5hLHtlbmFibGVkOmQsYXJpYUxhYmVsOmMsb25DbGljazplPT57dmFyIGY9YSgpLGg9Zi5hdXRvbmF2RW5hYmxlZDtYVShmLCFmLmF1dG9uYXZFbmFibGVkLCEwKTt2YXIgaz1iKCk7IWgmJmsub25FbmFibGVkQ29tbWFuZD9fLkFKKGsub25FbmFibGVkQ29tbWFuZCwKaywhMCk6aCYmay5vbkRpc2FibGVkQ29tbWFuZCYmXy5BSihrLm9uRGlzYWJsZWRDb21tYW5kLGssITApO1BsYShmLGIoKSk7dVMoZil8fGNUKGYse0ljOiEwfSk7ZS5zdG9wUHJvcGFnYXRpb24oKX19KSl9LCJVZSIpO0pXLmlkb21Db21wYXQ9ITA7dmFyIExXPV8uTChhPT57dmFyIGI9KCk9Pk5TKGEucGxheWVyT3ZlcmxheVJlbmRlcmVyPy4oKSxhLnRodW1ibmFpbFByZXZpZXdSZW5kZXJlcj8uKCkpLGM9KCk9PmIoKSYmIWEuRygpLmJhPy5oaWRlVmlkZW9JbmZvO3JldHVybiBfLksoInBsYXllci10b3AtY29udHJvbHMiLHtjbGFzczoieXR3UGxheWVyVG9wQ29udHJvbHNIb3N0In0sXy5LKCJkaXYiLHtjbGFzczpfLlAoInBsYXllci1jb250cm9scy10b3AiLHt5dHdQbGF5ZXJUb3BDb250cm9sc0NvbnRhaW5lcldpdGhFbWJlZGRlZFZpZGVvRGV0YWlsczpjfSksIm9uOmNsaWNrIjpmdW5jdGlvbihkKXtkLnN0b3BQcm9wYWdhdGlvbigpfX0sXy5LKF8uTyx7QTpjLHRoZW46KCk9Pl8uSyhIVyx7dmlkZW9EZXRhaWxzOmIsRzphLkd9KX0pLF8uSyhfLk8se0E6KCk9PiFhLkcoKS5iYT8ubmgmJiEkUyhhLkcoKSksdGhlbjooKT0+Xy5LKF8uTyx7QTpjLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dHdQbGF5ZXJUb3BDb250cm9sc1BsYXllckNvbnRyb2xzVG9wUmlnaHQiLAoicGxheWVyLWNvbnRyb2xzLXRvcC1yaWdodCIse3l0d1BsYXllclRvcENvbnRyb2xzQ29udGFpbmVyV2l0aEVtYmVkZGVkVmlkZW9EZXRhaWxzUGxheWVyQ29udHJvbHNUb3BSaWdodDpjfSl9LF8uSyhLVyx7RzphLkcscGxheWVyT3ZlcmxheVJlbmRlcmVyOmEucGxheWVyT3ZlcmxheVJlbmRlcmVyfSkpLFc6KCk9Pl8uSyhLVyx7RzphLkcscGxheWVyT3ZlcmxheVJlbmRlcmVyOmEucGxheWVyT3ZlcmxheVJlbmRlcmVyfSl9KX0pKSl9LCJWZSIpO0xXLmlkb21Db21wYXQ9ITA7CnZhciB2bmE9KGEsYik9Pl8uSyhkVyx7Z2Y6YSxWcjohMCxXcTpifSksS1c9Xy5MKCh7RzphLHBsYXllck92ZXJsYXlSZW5kZXJlcjpifSk9Pnt2YXIgYz0oKT0+YSgpLkg7cmV0dXJuIF8uSyhfLklCLG51bGwsXy5LKF8uRUUsbnVsbCxfLksoXy5DRSx7d2hlbjooKT0+YSgpLmJhPy52b2x1bWVDb250cm9sVHlwZT09PSJ2b2x1bWUtc2xpZGVyIn0sKCk9Pl8uSyhIVix7b3JpZW50YXRpb246InZlcnRpY2FsX2Rvd24iLGJqOiEwLEg6Y30pKSxfLksoXy5DRSx7d2hlbjooKT0+e3ZhciBkPWEoKS5IPy5nZXRTaXplKCksZT1kPy53aWR0aCYmZC53aWR0aD49MjUwO2Q9ZD8uaGVpZ2h0JiZkLmhlaWdodD49MjAwO3JldHVybiBhKCkuYmE/LnZvbHVtZUNvbnRyb2xUeXBlPT09Im11dGUtYnV0dG9uIiYmZSYmZH19LCgpPT5fLksoSVcse0hCOmEsSm46ITB9KSksXy5LKF8uREUsbnVsbCwoKT0+Xy5LKF8uSUIsbnVsbCkpKSxfLksoXy5PLHtBOigpPT4hIXpTKGI/LigpKSx0aGVuOigpPT5fLksoSlcsCntHOmEsQ3U6KCk9PnpTKGI/LigpKX0pfSksdm5hKGEsZnVuY3Rpb24oKXtjVChhKCkse0ljOiEwfSl9KSxfLksoXy5PLHtBOigpPT57dmFyIGQ9YSgpLkg/LmdldFNpemUoKTtkPWQ/LndpZHRoJiZkLndpZHRoPj0zMjB8fCFhKCkuYmE/Lm9oO3JldHVybiEhYSgpLnRhLlNqJiZkfSx0aGVuOigpPT5fLksoYlcse0c6YX0pfSkpfSwiV2UiKTtLVy5pZG9tQ29tcGF0PSEwO3ZhciBNVz1fLkwoYT0+e2Z1bmN0aW9uIGIoVCl7VC5wb2ludGVyVHlwZT09PSJtb3VzZSImJihsKCkuUyh7ZWE6ITB9KSxjVChsKCkse0ljOiEwfSkpfWZ1bmN0aW9uIGMoVCl7S1UoVCxsKCkpfWZ1bmN0aW9uIGQoVCl7dmFyIGJhPWwoKTtpZih4VShUKSl7VC5zdG9wUHJvcGFnYXRpb24oKTt2YXIgYWE9VC50b3VjaGVzWzBdO0hVPWFhLnBhZ2VYO3pVPWFhLnBhZ2VZO18ueCgid2ViX2VuYWJsZV9zbWFydF96b29tIikmJlQudG91Y2hlcy5sZW5ndGg9PT0yJiYoQlU9d1UoVCkpO0hUKGJhLFQudG91Y2hlcy5sZW5ndGgpO2JhLmJhPy5NaXx8YmEuTmF8fGJhLldkfHxiYS5zYnx8Xy5URSgpfHwoRVU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vdmllX3BsYXllciIpKSYmT2JqZWN0LmFzc2lnbihFVS5zdHlsZSx7dHJhbnNpdGlvbjoiIix0cmFuc2Zvcm1PcmlnaW46IiJ9KX19ZnVuY3Rpb24gZShUKXt2YXIgYmE9bCgpO2lmKHhVKFQpKXtULnN0b3BQcm9wYWdhdGlvbigpO3ZhciBhYT0KVC50b3VjaGVzWzBdO0FVPSEwO0dVPWFhLnBhZ2VYO3lVPWFhLnBhZ2VZO2FhPXtsazpHVS1IVSxPZDp5VS16VX07YWEuT2Q9PT0wJiZhYS5saz09PTB8fF8uTUUoKSYmIWJhLmlzRnVsbHNjcmVlbnx8YmEuYmE/Lk1pfHxULnByZXZlbnREZWZhdWx0KCk7SVQoVCxhYSxiYSk7Xy54KCJ3ZWJfZW5hYmxlX3NtYXJ0X3pvb20iKSYmVC50b3VjaGVzLmxlbmd0aD09PTImJkJVIT09MCYmTWF0aC5hYnMod1UoVCktQlUpPjEwJiZEVSghMCk7IWJhLmJhPy5NaSYmKGJhLk5hfHxiYS5XZHx8YmEuc2J8fF8uVEUoKXx8Xy5NRSgpJiYhYmEuaXNGdWxsc2NyZWVufHwoYmEuUyh7ZWE6ITF9KSxUPWFhLk9kLGJhLmlzRnVsbHNjcmVlbiYmKFQqPS0xKSwhYmEuaXNGdWxsc2NyZWVuJiZUPjAmJihUPTApLFQ8LTEwMCYmKFQ9LTEwMCksYmEuaXNGdWxsc2NyZWVuP0VVJiZPYmplY3QuYXNzaWduKEVVLnN0eWxlLHt0cmFuc2Zvcm06YHNjYWxlKCR7MS0uMDUqTWF0aC5taW4oNCpNYXRoLmFicyhULy0xMDApLAoxKX0pIHRyYW5zbGF0ZVkoJHstVH1weClgfSk6RVUmJk9iamVjdC5hc3NpZ24oRVUuc3R5bGUse3RyYW5zZm9ybTpgc2NhbGUoJHsxKy4yNSpNYXRoLmFicyhULy0xMDApfSlgLHRyYW5zZm9ybU9yaWdpbjoiYm90dG9tIGNlbnRlciJ9KSksIWJhLmlzRnVsbHNjcmVlbnx8YmEuaXNEcmFnZ2luZ3x8YmEuc2J8fCFfLk1FKCkmJiFfLlRFKCk/MDpiYS5XZHx8KGJhLk5hP0RRKGFhLk9kLDAsMjE1KTpEUShhYS5PZCwtMjE1LDApKSE9PTApJiYoYlQoKSxiYS5TKHtXZDohMCxlYTohMCxKZjpiYS5OYT9EUShhYS5PZCwwLDIxNSk6RFEoYWEuT2QsLTIxNSwwKX0pKX19ZnVuY3Rpb24gZihUKXtJVShULGwoKSxtKCkpfWZ1bmN0aW9uIGgoVCl7SVUoVCxsKCksbSgpKX1mdW5jdGlvbiBrKFQpe1Quc3RvcFByb3BhZ2F0aW9uKCl9dmFyIHtHOmwsZGF0YTptfT1fLkRDKGEse2RhdGE6dm9pZCAwfSksbj1fLk4oKCk9PmwoKS5ILHZvaWQgMCwiWjdIOXJlIik7YT1fLk4oKCk9PmwoKS5lYSx2b2lkIDAsCiJkcmhxN2QiKTt2YXIgcD1fLk4oKCk9PmwoKS5zYix2b2lkIDAsInZzdFlFZSIpLHI9Xy5OKCgpPT5sKCkuYmE/LkVlLHZvaWQgMCwiTGJGd0piIiksdD1fLk4oKCk9PmwoKS5LYj4oXy54KCJtd2ViX3BsYXllcl90YXBwaW5nX3RocmVzaG9sZF9raWxsc3dpdGNoIik/ODowKSx2b2lkIDAsImU0anFNZCIpLHY9Xy5OKCgpPT5sKCkuSmQhPT0wLHZvaWQgMCwicHFnRDVlIiksej1fLk4oKCk9PmwoKS5iYT8uWmgsdm9pZCAwLCJ0bVFkZyIpLEU9KCk9Pm0oKT8ucGxheWVyUmVzcG9uc2U/LnBsYXlhYmlsaXR5U3RhdHVzLEE9Xy5OKCgpPT4kUyhsKCksbSgpPy5wbGF5ZXJSZXNwb25zZT8ucGxheWFiaWxpdHlTdGF0dXMpLHZvaWQgMCwiWGE5cXhmIiksRj1fLk4oKCk9PiFsKCkuYmE/LnpyLHZvaWQgMCwibUZPbHQiKSxDPV8uTigoKT0+e3ZhciBUPWwoKTtyZXR1cm4gXy54KCJtd2ViX3BjX2xpdmVfZHZyX2tzIik/ITE6VC5pc0xpdmUmJiFULmlzTGl2ZUR2ckVuYWJsZWR9LHZvaWQgMCwKIkQxaTY3IiksRz1fLk4oKCk9Pnt2YXIgVD1DKCk7cmV0dXJuIHJVKCkmJiFUfSx2b2lkIDAsInZRemltZSIpLEQ9Xy5OKCgpPT50KCkmJnYoKSx2b2lkIDAsIkJlR3A3IiksSD1fLlAoIm5ldy1jb250cm9scyIsImJpZ2JhciIsIm1lZGl1bS1tb2RpZmljYXRpb24iLCJhbmltYXRpb24tZW5hYmxlZCIsImVuYWJsZS1mdWxsc2NyZWVuLWNvbnRyb2xzIiwiZnMtd2F0Y2gtc3lzdGVtIix7ZmFkZWluOmEsImJhY2tncm91bmQtaGlkZGVuIjpwLCJmdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiI6ciwiZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMtZm9yLXBvcnRyYWl0IjpfLngoIm13ZWJfZW5hYmxlX3BvcnRyYWl0X2Z1bGxzY3JlZW5fYWN0aW9ucyIpfSksUj0oKT0+bT8uKCk/LndhdGNoTmV4dFJlc3BvbnNlLE09KCk9Pm0/LigpPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIsUz0oKT0+bSgpPy5qYj8uZW1iZWRQcmV2aWV3Py50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXIsWT0oKT0+CkdTKG0/LigpPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIpLHBhPSgpPT5tKCk/LmpiPy5lbWJlZFByZXZpZXc/LnRodW1ibmFpbFByZXZpZXdSZW5kZXJlcj8uZGVmYXVsdFRodW1ibmFpbHx8bSgpPy5wbGF5ZXJSZXNwb25zZT8udmlkZW9EZXRhaWxzPy50aHVtYm5haWwsb2E9KCk9Pm0oKT8ucGxheWVyUmVzcG9uc2U/LnBsYXllckNvbmZpZz8uYXV0b2Nyb3BDb25maWcsVT0oKT0+bSgpPy5wbGF5ZXJSZXNwb25zZT8uZW5kc2NyZWVuPy5lbmRzY3JlZW5SZW5kZXJlciYmbigpLGhhPSgpPT57dmFyIFQ7aWYoVD1QUyhtKCk/LnBsYXllck92ZXJsYXlSZW5kZXJlcixtKCk/LmpiKSl7VD1sKCk7dmFyIGJhPW4oKSxhYT1QUyhtKCk/LnBsYXllck92ZXJsYXlSZW5kZXJlcixtKCk/LmpiKTtpZihhYSYmYWEuaW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWwmJihhYS5pbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbC50aXRsZXx8YWEuaW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWwuYm9keVRleHQpJiYKYmEmJmJhLmdldFBsYXllclN0YXRlT2JqZWN0JiZiYS5nZXRQbGF5ZXJTaXplJiYhXy5ESShramEsYWEuaW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWwuZGlzbWlzc1N0YXRlRW50aXR5S2V5KSgpPy5pc0Rpc21pc3NlZCl7YWE9YmEuZ2V0UGxheWVyU3RhdGVPYmplY3QoKT8uaXNFcnJvcjtpZihhYT0hdVMoVCkmJiFhYSlhYT1iYS5nZXRQbGF5ZXJTaXplKCksYmE9YWEud2lkdGg8MzYwLGFhPWFhLmhlaWdodDwzMjAsYWE9ISgoVC5wbGF5ZXJTdGF0ZT09PS0xfHxULnBsYXllclN0YXRlPT09NSkmJmJhJiZhYSk7VD1hYX1lbHNlIFQ9ITF9cmV0dXJuIFR9LG1hPSgpPT57dmFyIFQ9bSgpPy5wbGF5ZXJSZXNwb25zZTtyZXR1cm4gXy5CKFQ/Lm92ZXJsYXk/LnBsYXllckNvbnRyb2xzT3ZlcmxheVJlbmRlcmVyPy5tdXRlZEF1dG9wbGF5LG9WKX0sdGE9KCk9Pm0oKT8uSD8uaXNNdXRlZEJ5RW1iZWRzTXV0ZWRBdXRvcGxheT8uKCk7cmV0dXJuIF8uSygieXRtLXdhdGNoLXBsYXllci1jb250cm9scyIsCntjbGFzczoieXRtV2F0Y2hQbGF5ZXJDb250cm9sc0hvc3QifSxfLksoXy5PLHtBOigpPT57dmFyIFQ9bCgpLGJhPW0oKT8ucGxheWVyUmVzcG9uc2U/LnBsYXlhYmlsaXR5U3RhdHVzO3JldHVybiBfLngoIm13ZWJfaGlkZV9jb250cm9sc19mb3JfdW5wbGF5YWJsZV92aWRlb19rcyIpfHwhYmF8fE1SKGJhKXx8VC5pc0Z1bGxzY3JlZW4/KHlTKFQpfHxULnBsYXllclN0YXRlPT09LTF8fFQucGxheWVyU3RhdGU9PT01fHxULnJjJiYhVC5iYT8uckE/ITE6dVMoVCk/ITA6VC5wbGF5ZXJTdGF0ZT09PTF8fFQucGxheWVyU3RhdGU9PT0zfHxULnBsYXllclN0YXRlPT09Mil8fFQucmMmJnVTKFQpfHwkUyhULGJhKTohMX0sdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOnosdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoR1Yse0c6bCx0aHVtYm5haWxEZXRhaWxzOnBhfSksXy5LKHVWLHtHOmwsSDpuLHBsYXlhYmlsaXR5U3RhdHVzOkV9KSl9KSxfLksoXy5PLHtBOmhhLHRoZW46KCk9PgpfLksodlcse2RhdGE6KCk9PlBTKG0oKT8ucGxheWVyT3ZlcmxheVJlbmRlcmVyLG0oKT8uamIpLHByb3BzOmx9KX0pLF8uSyhfLk8se0E6dGEsdGhlbjooKT0+Xy5LKExWLHtHOmwscGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlcjptYX0pfSksXy5LKF8uTyx7QTooKT0+IXRhKCksdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoV1Yse0c6bH0pLF8uSyhfLk8se0E6KCk9Pl8ueCgibXdlYl9iZXR0ZXJfY2FwdGlvbnNfcGxhY2VtZW50IiksdGhlbjooKT0+Xy5LKCJkaXYiLHtpZDoiY2FwdGlvbnMtZ2Fsb3JlLWNvbnRhaW5lciJ9KX0pLF8uSygiZGl2Iix7aWQ6InBsYXllci1jb250cm9sLW92ZXJsYXkiLGNsYXNzOkgsIm9uOmNsaWNrIjpjLCJvbjpwb2ludGVybW92ZSI6Yiwib246dG91Y2hzdGFydCI6ZCwib246dG91Y2htb3ZlIjplLCJvbjp0b3VjaGVuZCI6Ziwib246dG91Y2hjYW5jZWwiOmh9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJwbGF5ZXItY29udHJvbHMtY29udGVudCIsCnsicG9pbnRlci1ldmVudHMtb2ZmIjpEfSl9LF8uSygiZGl2Iix7Y2xhc3M6InBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kLWNvbnRhaW5lciJ9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJwbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZCIseyJmdWxsc2NyZWVuLXJlY3MtZXhwYW5kZWQiOigpPT5JUyhsKCkpfSksIm9uOnRvdWNoc3RhcnQiOmQsIm9uOnRvdWNobW92ZSI6ZSwib246dG91Y2hlbmQiOmYsIm9uOnRvdWNoY2FuY2VsIjpofSksXy5LKCJkaXYiLHtjbGFzczoieXRtV2F0Y2hQbGF5ZXJDb250cm9sc0JhY2tncm91bmRBY3Rpb25JdGVtcyIsIm9uOmNsaWNrIjprfSxfLksoXy5PLHtBOigpPT57dmFyIFQ7aWYoVD0hQSgpKVQ9bSgpPy5wbGF5ZXJSZXNwb25zZT8ucGFpZENvbnRlbnRPdmVybGF5Py5wYWlkQ29udGVudE92ZXJsYXlSZW5kZXJlcjtyZXR1cm4gVH0sdGhlbjooKT0+Xy5LKERXLHtkYXRhOigpPT5tKCk/LnBsYXllclJlc3BvbnNlPy5wYWlkQ29udGVudE92ZXJsYXk/LnBhaWRDb250ZW50T3ZlcmxheVJlbmRlcmVyfSl9KSwKXy5LKF8uTyx7QTpVLHRoZW46KCk9Pl8uSyhsVyx7ZW5kc2NyZWVuUmVuZGVyZXI6KCk9Pm0oKT8ucGxheWVyUmVzcG9uc2U/LmVuZHNjcmVlbj8uZW5kc2NyZWVuUmVuZGVyZXIsRzpsfSl9KSkpLF8uSyhfLk8se0E6KCk9PiFBKCksdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOkcsdGhlbjooKT0+Xy5LKHJXLHtHOmx9KX0pLF8uSyhGVix7RzpsLHBsYXllck92ZXJsYXlSZW5kZXJlcjpNfSksXy5LKFZWLHtnZjpsLEliOiExfSkpfSksXy5LKCJkaXYiLHtzdHlsZTpZVSgoKT0+SlMobCgpLEFTKG0/LigpPy53YXRjaE5leHRSZXNwb25zZSkpKX0sXy5LKExXLHtHOmwscGxheWVyT3ZlcmxheVJlbmRlcmVyOk0sdGh1bWJuYWlsUHJldmlld1JlbmRlcmVyOlN9KSxfLksoXy5PLHtBOigpPT4hQSgpLHRoZW46KCk9Pl8uSyhHVyx7RzpsLHdhdGNoTmV4dFJlc3BvbnNlOlJ9KX0pKSxfLksoXy5PLHtBOigpPT4hQSgpLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsXy5LKCJkaXYiLAp7c3R5bGU6WVUoKCk9Pnt2YXIgVD1sKCksYmE9QVMobT8uKCk/LndhdGNoTmV4dFJlc3BvbnNlKTtyZXR1cm4gSFMoVCxiYSl8fFQuYmE/Lm5oPyExOlQuaXNMaXZlfHxKUyhUKX0pfSxfLksoRVcse0c6bCxTbTooKT0+Q1MobT8uKCk/LnBsYXllck92ZXJsYXlSZW5kZXJlcikscGxheWVyT3ZlcmxheVJlbmRlcmVyOk19KSksXy5LKCJkaXYiLHtzdHlsZTpZVSgoKT0+e3ZhciBUPWwoKTtyZXR1cm4gVC5iYT8ubmg/ITE6IUlTKFQpfSl9LF8uSyhDVix7TGI6bCxoZjpZLGNvbmZpZzooKT0+KHtjbGFzc05hbWU6IndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFyIixwb3NpdGlvbjowLEluOkYoKSxSYTpFUyhtPy4oKT8ucGxheWVyT3ZlcmxheVJlbmRlcmVyKSxLZjohMSxkaXNhYmxlU2NydWJiaW5nOkMoKSxvblRvdWNoTW92ZTooKT0+e3ZhciBUPWwoKSxiYT1FUyhtPy4oKT8ucGxheWVyT3ZlcmxheVJlbmRlcmVyKTtiYSYmKFQ9bFQoVCxiYSksbVQoVCkpfSxZbzooKT0+e2JUKCl9LEZuOigpPT4Ke2NUKGwoKSx7SWM6ITB9KX0scHJvZ3Jlc3NDb2xvcjpfLngoImVuYWJsZV9jdXN0b21fc2NydWJiZXJfdjIiKT9DUyhtPy4oKT8ucGxheWVyT3ZlcmxheVJlbmRlcmVyKT8ucHJvZ3Jlc3NDb2xvcjp2b2lkIDAsaGY6UWxhKEdTKG0/LigpPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIpKX0pfSkpLF8uSyhGVyx7RzpsLHdhdGNoTmV4dFJlc3BvbnNlOlJ9KSl9KSxfLksoQ1cse0c6bCx3YXRjaE5leHRSZXNwb25zZTpSLHRodW1ibmFpbFByZXZpZXdSZW5kZXJlcjpTLGF1dG9jcm9wQ29uZmlnOm9hfSkpKSl9KSl9KSl9LCJYZSIpO01XLmlkb21Db21wYXQ9ITA7dmFyIGNWPV8uTChhPT57dmFyIGI9Xy5OKCgpPT5hLmRhdGEoKS5ILHZvaWQgMCwiRHVmbU0iKSxjPV8uTigoKT0+bmV3IHFXKCgpPT57fSx7dGE6YS5jb250ZXh0KCkudGEsVGM6YS5jb250ZXh0KCkuVGMsR2M6YS5jb250ZXh0KCkuR2MsYmE6YS5jb250ZXh0KCkuYmF9LHthdXRvbmF2RW5hYmxlZDphLmNvbnRleHQoKS50YS5kZSgpLGVhOlJsYShiKCkpfSxiKSx2b2lkIDAsImpQeDhkZSIpLGQ9W107Xy5uRSgoKT0+e2IoKSYmUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e1pVKGQpO3VXLmZvckVhY2goZT0+e2QucHVzaChlLnJlZ2lzdGVyKCgpPT5jKCkudWQoKSwoKT0+YS5kYXRhKCkpKX0pfSl9LCJIdVlNSmIiKTtfLll1KCgpPT57TVUoKCk9PmMoKS51ZCgpKTtiVCgpO2EuY29udGV4dCgpLnRhLmV4aXRGdWxsc2NyZWVuPy4oKTtaVShkKX0pO3JldHVybiBfLksoXy5uRyx7RWY6W18ub0coJFQsYildfSxfLksoInl0bS1jdXN0b20tY29udHJvbCIse2NsYXNzOiJ5dG1DdXN0b21Db250cm9sSG9zdCJ9LApfLksoTVcse0c6KCk9PigwLGMoKS5CKSgpLGRhdGE6YS5kYXRhfSkpKX0sIlplIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uelo9ZnVuY3Rpb24oYSl7Xy5iWihhKTtfLmRWKGEpfTtfLnp5PV8uelo7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoInI3OERyYiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF9iYXNlKTsKLy8gR29vZ2xlIEluYy4K"}},"time_used":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":10,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/img-bg2.jpg","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.437Z","timestamp":1785159268437,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/img-bg2.jpg HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"5b4f-66136805-27dfc2e8eb2f1f0d;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 23375\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":23375,"size_decoded":23703,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=0], baseline, precision 8, 1349x411, components 3","md5":"06b8147c459e51104a2c604f7a18fef1","sha1":"a51ae645d1a8f9ee30287ffd0992a23e5d696391","sha256":"2810fd3da2a86365d7bcd60adadd3fe3c4adf192f2034ce9036952810658ac09","sha512":"469586a3b0de8dbc4ede621e563ed4642ea88c0a9891eac2d9e1f4c524bcd892ec22ee64fdbeb7e0b4ddce9b648f68ae1190ca548259c2231c17850f85bc7890","ssdeep":"384:juyq/vh2ktIMOxaxJoeUv2A8c0wD+Td9BFszpXK5mt7fhzqvPNHdXTG:jjqXWWtUvz8clA98Rl7fhEN1TG","tlshash":"0fa28ee4eb74676ee910607355b3ebc748762ad4bc41c4b339e32334081a5815eae9ed","first_seen":"2026-07-27T07:08:39.388146Z","last_seen":"2026-07-27T13:35:41.747808Z","times_seen":3,"resource_available":false,"data":"/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMraHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjEzMkU3QzEzMUI4RDExRUM5RUI5QkQyNDQyRDExNTk2IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjEzMkU3QzE0MUI4RDExRUM5RUI5QkQyNDQyRDExNTk2Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTMyRTdDMTExQjhEMTFFQzlFQjlCRDI0NDJEMTE1OTYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTMyRTdDMTIxQjhEMTFFQzlFQjlCRDI0NDJEMTE1OTYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAGBAQEBQQGBQUGCQYFBgkLCAYG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"}},"time_used":22,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.276Z","timestamp":1785159269276,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/en.58667.d15fc4b5c631bb5ece8d.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-6bea\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8bbfde5a7befbdefd850a76940d42bc4\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"]}],"data":{"size":27626,"size_decoded":6249,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (3069)","md5":"c37495f6ca72950f28ad5a6a79a0bab4","sha1":"b23429fd2dea7f2557a8a68545083949759c3ad4","sha256":"b4511e0c850bde295127e6af14148f016b9aea35ea705cdf3106a5a1edbd93b8","sha512":"ddee6e0c9cd60676d9195e2fb635982af76e72cf188acf0f42ba7ac648dbd5acc579a186a2c51fb5ac9d5e758c5289ab285ea4e80694b19f70a1715a5707b77c","ssdeep":"384:L+x0EMPsBRgXD2PTmdN2/5dQ1tHSJm/BtU:L7E2NJuJmI","tlshash":"2cc2c007cd96b099f3f6e24e0eb4d50c2cb453495270d702be868e289ae5ee69d2f315","first_seen":"2026-05-05T10:36:04.872376Z","last_seen":"2026-07-30T06:08:06.349039Z","times_seen":4429,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s1ODY2N10sezI1ODY2NyhvKXtvLmV4cG9ydHM9T2JqZWN0LmNyZWF0ZShudWxsKSxvLmV4cG9ydHNbIiNBQVBMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXBwbGUgSW5jIl0sby5leHBvcnRzWyIjQU1FWDpTQ0hPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2Nod2FiIFNob3J0LVRlcm0gVS5TLiBUcmVhc3VyeSBFVEYiXSxvLmV4cG9ydHNbIiNBTUVYOlNIWUctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaGFyZXMgMC01IFlFQVIgSGlnaCBZaWVsZCBDb3Jwb3JhdGUgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNBU1g6WEFGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBBbGwgQXVzdHJhbGlhbiA1MCBJbmRleCJdLG8uZXhwb3J0c1siI0FTWDpYQVQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQVNYIEFsbCBBdXN0cmFsaWFuIDIwMCBJbmRleCJdLG8uZXhwb3J0c1siI0FTWDpYSk8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQVNYIDIwMCBJbmRleCJdLG8uZXhwb3J0c1siI0FVRENBRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyL0NhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0FVRENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gU3dpc3MgRnJhbmMiXSxvLmV4cG9ydHNbIiNBVURKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0FVRE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjQVVEUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBSdXNzaWFuIFJ1YmxlIl0sby5leHBvcnRzWyIjQVVEVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JDQkE6SU1WLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIE1FUlZBTCBJbmRleCJdLG8uZXhwb3J0c1siI0JDSEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gQ2FzaCAvIEV1cm8iXSxvLmV4cG9ydHNbIiNCQ0hVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIENhc2ggLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JFTEVYOkJFTEVYMTUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCRUxFWCAxNSBJbmRleCJdLG8uZXhwb3J0c1siI0JJU1Q6WFUxMDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCSVNUIDEwMCBJbmRleCJdLG8uZXhwb3J0c1siI0JJVE1FWDpYQlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gVS5TLiBEb2xsYXIgSW5kZXgiXSxvLmV4cG9ydHNbIiNCTUU6SUJDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSUJFWCAzNSBJbmRleCJdLG8uZXhwb3J0c1siI0JNRkJPVkVTUEE6SUJPVi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJvdmVzcGEgSW5kZXgiXSxvLmV4cG9ydHNbIiNCTUZCT1ZFU1BBOklCUkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJQnJhc2lsIEluZGV4Il0sby5leHBvcnRzWyIjQk1GQk9WRVNQQTpJQlhMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJhemlsIDUwIEluZGV4Il0sby5leHBvcnRzWyIjQk1WOkNULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgU1gyMCBSVCJdLG8uZXhwb3J0c1siI0JNVjpGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRm9yZCBNb3RvciBDb21wYW55Il0sby5leHBvcnRzWyIjQk1WOk1FLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0JNViBJUEMgSW5kZXgiXSxvLmV4cG9ydHNbIiNCUkxKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWxpYW4gUmVhbCAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0JTRTpJVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJVEkgTHRkIl0sby5leHBvcnRzWyIjQlNFOlNFTlNFWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCBCU0UgU2Vuc2V4IEluZGV4Il0sby5leHBvcnRzWyIjQlRDQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjQlRDQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0JUQ0NOWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBDaGluZXNlIFl1YW4iXSxvLmV4cG9ydHNbIiNCVENFVVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gRXVybyJdLG8uZXhwb3J0c1siI0JUQ0dCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBCcml0aXNoIFBvdW5kIl0sby5leHBvcnRzWyIjQlRDSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0JUQ0tSVy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjQlRDUExOLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFBvbGlzaCBabG90eSJdLG8uZXhwb3J0c1siI0JUQ1JVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBSdXNzaWFuIFJ1YmxlIl0sby5leHBvcnRzWyIjQlRDVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFRoYWkgQmFodCJdLG8uZXhwb3J0c1siI0JUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0JUR1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gR29sZCAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjQlZMOlNQQkxQR1BULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIC8gQlZMIFBlcnUgR2VuZXJhbCBJbmRleCAoUEVOKSJdLG8uZXhwb3J0c1siI0JWU1Atc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWwgQm92ZXNwYSBJbmRleCJdLApvLmV4cG9ydHNbIiNDQURKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNDQURVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0NCT0U6T0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDEwMCBJbmRleCJdLG8uZXhwb3J0c1siI0NCT0U6VklYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVm9sYXRpbGl0eSBTJlAgNTAwIEluZGV4Il0sby5leHBvcnRzWyIjQ0JPVDpaQjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVC1Cb25kIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb3JuIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpNMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTb3liZWFuIE1lYWwgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6Wk4xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIjEwIFllYXIgVC1Ob3RlIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UOlpPMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPYXQgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIjMwIERheSBGZWRlcmFsIEZ1bmRzIEludGVyZXN0IFJhdGUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJpY2UgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlMxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNveWJlYW4gRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NCT1Q6WlcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIldoZWF0IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UX01JTkk6WEsxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNveWJlYW4gTWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ0JPVF9NSU5JOlhXMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJXaGVhdCBNaW5pIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDQk9UX01JTkk6WU0xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBEb3cgSm9uZXMgKCQ1KSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ0hGSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgRnJhbmMgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNDSEZVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTd2lzcyBGcmFuYyAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjQ01FOkJUQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiBDTUUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRTpDQjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnV0dGVyIEZ1dHVyZXMtQ2FzaCAoQ29udGludW91czogQ3VycmVudCBjb250cmFjdCBpbiBmcm9udCkiXSxvLmV4cG9ydHNbIiNDTUU6R0YxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZlZWRlciBDYXR0bGUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRTpIRTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGVhbiBIb2dzIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDTUU6TEUxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdmUgQ2F0dGxlIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDTUVfTUlOSTpFNzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBFLW1pbmkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRV9NSU5JOkVTMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEUtbWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ01FX01JTkk6SjcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiBFLW1pbmkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NNRV9NSU5JOk5RMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOQVNEQVEgMTAwIEUtbWluaSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ01FX01JTkk6UlRZMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFLU1pbmkgUnVzc2VsbCAyMDAwIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpBRVAxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFsdW1pbml1bSBFdXJvcGVhbiBQcmVtaXVtIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpBVVAxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFsdW1pbnVtIE1XIFUuUy4gVHJhbnNhY3Rpb24gUHJlbWl1bSBQbGF0dHMgKDI1TVQpIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNDT01FWDpHQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVg6SEcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvcHBlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVg6U0kxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNpbHZlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIENvcHBlciBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRSTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2lsdmVyIChNaW5pKSBGdXR1cmVzIl0sby5leHBvcnRzWyIjQ09NRVhfTUlOSTpRTzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCAoTWluaSkgRnV0dXJlcyJdLG8uZXhwb3J0c1siI0NPUFBFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29wcGVyIl0sby5leHBvcnRzWyIjQ09STlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29ybiJdLG8uZXhwb3J0c1siI0NPVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ290dG9uIl0sby5leHBvcnRzWyIjQ1JZUFRPQ0FQOlRPVEFMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ3J5cHRvIFRvdGFsIE1hcmtldCBDYXAsICQiXSxvLmV4cG9ydHNbIiNERk06REZNR0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJERk0gSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tcG9zaXRlIEF2ZXJhZ2UgSW5kZXgiXSwKby5leHBvcnRzWyIjREo6REpDSUFHQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggQWdyaWN1bHR1cmUgQ2FwcGVkIENvbXBvbmVudCJdLG8uZXhwb3J0c1siI0RKOkRKQ0lDQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggQ29jb2EiXSxvLmV4cG9ydHNbIiNESjpESkNJRU4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEVuZXJneSJdLG8uZXhwb3J0c1siI0RKOkRKQ0lHQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggR29sZCJdLG8uZXhwb3J0c1siI0RKOkRKQ0lHUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggR3JhaW5zIl0sby5leHBvcnRzWyIjREo6REpDSUlLLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBOaWNrZWwiXSxvLmV4cG9ydHNbIiNESjpESkNJS0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IENvZmZlZSJdLG8uZXhwb3J0c1siI0RKOkRKQ0lTQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggU3VnYXIiXSxvLmV4cG9ydHNbIiNESjpESkNJU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IFNpbHZlciJdLG8uZXhwb3J0c1siI0RKOkRKSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgVHJhbnNwb3J0YXRpb24gQXZlcmFnZSBJbmRleCJdLG8uZXhwb3J0c1siI0RKOkRKVS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBVdGlsaXR5IEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNESjpESlVTQ0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgVS5TLiBDb2FsIEluZGV4Il0sby5leHBvcnRzWyIjRUdYOkVHWDMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRUdYIDMwIEluZGV4Il0sby5leHBvcnRzWyIjRVRDQlRDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gQ2xhc3NpYyAvIEJpdGNvaW4iXSxvLmV4cG9ydHNbIiNFVENFVVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSBDbGFzc2ljIC8gRXVybyJdLG8uZXhwb3J0c1siI0VUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIENsYXNzaWMgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI0VUSEJUQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gQml0Y29pbiJdLG8uZXhwb3J0c1siI0VUSEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gRXVybyJdLG8uZXhwb3J0c1siI0VUSEdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gQnJpdGlzaCBQb3VuZCJdLG8uZXhwb3J0c1siI0VUSEpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gSmFwYW5lc2UgWWVuIl0sby5leHBvcnRzWyIjRVRIS1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjRVRIVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBUaGFpIEJhaHQiXSxvLmV4cG9ydHNbIiNFVEhVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjRVVCVU5ELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBCdW5kIl0sby5leHBvcnRzWyIjRVVSQVVELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjRVVSQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjRVVSQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0VVUkNIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBTd2lzcyBGcmFuYyJdLG8uZXhwb3J0c1siI0VVUkdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBCcml0aXNoIFBvdW5kIl0sby5leHBvcnRzWyIjRVVSSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0VVUk5PSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBOb3J3ZWdpYW4gS3JvbmUiXSxvLmV4cG9ydHNbIiNFVVJOWkQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjRVVST05FWFQ6QUVYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQUVYIEluZGV4Il0sby5leHBvcnRzWyIjRVVST05FWFQ6QkVMMjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCRUwgMjAgSW5kZXgiXSxvLmV4cG9ydHNbIiNFVVJPTkVYVDpQWDEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDQUMgNDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNFVVJSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI0VVUlJVQl9UT00tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gUnVzc2lhbiBSdWJsZSBUT00iXSxvLmV4cG9ydHNbIiNFVVJTRUstc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gU3dlZGlzaCBLcm9uYSJdLG8uZXhwb3J0c1siI0VVUlRSWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBUdXJraXNoIExpcmEiXSxvLmV4cG9ydHNbIiNFVVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNFVVNUWDUwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBTdG94eCA1MCBJbmRleCJdLG8uZXhwb3J0c1siI0ZPUkVYQ09NOlVTMjAwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIFNtYWxsIENhcCAyMDAwIl0sCm8uZXhwb3J0c1siI0ZSQTQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0FDIDQwIEluZGV4Il0sby5leHBvcnRzWyIjRlJFRDpHRFAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHcm9zcyBEb21lc3RpYyBQcm9kdWN0LCAxIERlY2ltYWwiXSxvLmV4cG9ydHNbIiNGUkVEOlBPUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRvdGFsIFBvcHVsYXRpb246IEFsbCBBZ2VzIEluY2x1ZGluZyBBcm1lZCBGb3JjZXMgT3ZlcnNlYXMiXSxvLmV4cG9ydHNbIiNGUkVEOlVOUkFURS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNpdmlsaWFuIFVuZW1wbG95bWVudCBSYXRlIl0sby5leHBvcnRzWyIjRlRTRU1ZWDpGQk1LTENJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRlRTRSBCdXJzYSBNYWxheXNpYSBLTENJIEluZGV4Il0sby5leHBvcnRzWyIjRldCOktUMS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIktleSBUcm9uaWMgQ29y0YAuIl0sby5leHBvcnRzWyIjRlg6QVVTMjAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBJbmRleCJdLG8uZXhwb3J0c1siI0ZYOlVTMzAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgSW5kdXN0cmlhbCBBdmVyYWdlIEluZGV4Il0sby5leHBvcnRzWyIjR0JQQVVELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjR0JQQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIENhbmFkaWFuIERvbGxhciJdLG8uZXhwb3J0c1siI0dCUENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBTd2lzcyBGcmFuYyJdLG8uZXhwb3J0c1siI0dCUEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBFdXJvIl0sby5leHBvcnRzWyIjR0JQSlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEphcGFuZXNlIFllbiJdLG8uZXhwb3J0c1siI0dCUE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxvLmV4cG9ydHNbIiNHQlBQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gUG9saXNoIFpsb3R5Il0sby5leHBvcnRzWyIjR0JQUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIFJ1c3NpYW4gUnVibGUiXSxvLmV4cG9ydHNbIiNHQlBVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNHRVIzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRBWCBJbmRleCJdLG8uZXhwb3J0c1siI0dPT0ctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQyJdLG8uZXhwb3J0c1siI0dPT0dMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxwaGFiZXQgSW5jIChHb29nbGUpIENsYXNzIEEiXSxvLmV4cG9ydHNbIiNHUFc6QUNHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWNhdXRvZ2F6Il0sby5leHBvcnRzWyIjR1BXOldJRzIwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiV0lHMjAgSW5kZXgiXSxvLmV4cG9ydHNbIiNIU0k6SFNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGFuZyBTZW5nIEluZGV4Il0sby5leHBvcnRzWyIjSUNFVVM6RFgxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNJRFg6Q09NUE9TSVRFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSURYIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOkhTQ0Utc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJIYW5nIFNlbmcgQ2hpbmEgRW50ZXJwcmlzZXMgSW5kZXgiXSxvLmV4cG9ydHNbIiNJTkRFWDpKS1NFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFrYXJ0YSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNJTkRFWDpLTFNFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnVyc2EgTWFsYXlzaWEgS0xDSSBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOk1JQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQiBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOk1PWTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sby5leHBvcnRzWyIjSU5ERVg6U1RJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU1RJIEluZGV4Il0sby5leHBvcnRzWyIjSU5ERVg6VFdJSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBXZWlnaHRlZCBJbmRleCJdLG8uZXhwb3J0c1siI0lOREVYOlhMWTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaGFuZ2hhaSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNJT1RVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJT1RBIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNKUE4yMjUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiAyMjUgSW5kZXgiXSxvLmV4cG9ydHNbIiNKUFlLUlctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbmVzZSBZZW4gLyBTb3V0aCBLb3JlYW4gV29uIl0sby5leHBvcnRzWyIjSlBZUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI0pQWVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjTEtPSC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxVS09JTCJdLG8uZXhwb3J0c1siI0xTRTpTQ0hPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2Nob2xpdW0gR3JvdXAgUGxjIE9yZCAxUCJdLG8uZXhwb3J0c1siI0xUQ0JSTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdGVjb2luIC8gQnJhemlsaWFuIFJlYWwiXSxvLmV4cG9ydHNbIiNMVENCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaXRlY29pbiAvIEJpdGNvaW4iXSxvLmV4cG9ydHNbIiNMVENVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaXRlY29pbiAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjTFVOQVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkx1bmEgLyBVLlMuIERvbGxhciJdLApvLmV4cG9ydHNbIiNNT0VYOkJSMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmVudCBPaWwgRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6R0FaUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdBWlBST00iXSxvLmV4cG9ydHNbIiNNT0VYOklNT0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTU9FWCBSdXNzaWEgSW5kZXgiXSxvLmV4cG9ydHNbIiNNT0VYOk1HTlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNQUdOSVQiXSxvLmV4cG9ydHNbIiNNT0VYOk1JQ0VYSU5ERVhDRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1PRVggUnVzc2lhIEluZGV4Il0sby5leHBvcnRzWyIjTU9FWDpNWDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTUlDRVggSW5kZXggRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6TVgyIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQ0VYIEluZGV4IEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNNT0VYOlJJMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSVFMgSW5kZXggRnV0dXJlcyJdLG8uZXhwb3J0c1siI01PRVg6UlRTSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJUUyBJbmRleCJdLG8uZXhwb3J0c1siI01PRVg6UlVBTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVuaXRlZCBDb21wYW55IFJVU0FMIFBMQyJdLG8uZXhwb3J0c1siI01PRVg6U0JFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNCRVJCQU5LIl0sby5leHBvcnRzWyIjTU9FWDpWVEJSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVlRCIl0sby5leHBvcnRzWyIjTVNGVC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1pY3Jvc29mdCBDb3JwLiJdLG8uZXhwb3J0c1siI05BUzEwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIDEwMCBDYXNoIENGRCJdLG8uZXhwb3J0c1siI05BU0RBUTpBTUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBZHZhbmNlZCBNaWNybyBEZXZpY2VzIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpHT09HLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxwaGFiZXQgSW5jIChHb29nbGUpIENsYXNzIEMiXSxvLmV4cG9ydHNbIiNOQVNEQVE6R09PR0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQSJdLG8uZXhwb3J0c1siI05BU0RBUTpIR1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQSExYIEhvdXNpbmcgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROklFRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgNy0xMCBZZWFyIFRyZWFzdXJ5IEJvbmQgRVRGIl0sby5leHBvcnRzWyIjTkFTREFROklFSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgMy03IFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNOQVNEQVE6SVRJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXRlcmlzIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpJWElDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmFzZGFxIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI05BU0RBUTpMQ0lELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTHVjaWQgR3JvdXAsIEluYy4iXSxvLmV4cG9ydHNbIiNOQVNEQVE6TEUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMYW5kcycgRW5kIEluYyJdLG8uZXhwb3J0c1siI05BU0RBUTpORFgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXNkYXEgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROk9TWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggT2lsIFNlcnZpY2UgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROlNIWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgMS0zIFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxvLmV4cG9ydHNbIiNOQVNEQVE6U09YLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUGhpbGFkZWxwaGlhIFNlbWljb25kdWN0b3IgSW5kZXgiXSxvLmV4cG9ydHNbIiNOQVNEQVE6VExULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyAyMCsgWWVhciBUcmVhc3VyeSBCb25kIEVURiJdLG8uZXhwb3J0c1siI05BU0RBUTpVVFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQSExYIFV0aWxpdHkgU2VjdG9yIEluZGV4Il0sby5leHBvcnRzWyIjTkFTREFROlhBVS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggR29sZCBhbmQgU2lsdmVyIFNlY3RvciBJbmRleCJdLG8uZXhwb3J0c1siI05BU0RBUTpaUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlpzY2FsZXIgSW5jIl0sby5leHBvcnRzWyIjTkVPVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTkVPIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNOR0FTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmF0dXJhbCBHYXMgKEhlbnJ5IEh1YikiXSxvLmV4cG9ydHNbIiNOS1ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiAyMjUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOU0U6SVRJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kaWFuIFRlbGVwaG9uZSBJbmR1c3RyaWVzIExpbWl0ZWQiXSxvLmV4cG9ydHNbIiNOU0U6TklGVFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOaWZ0eSA1MCBJbmRleCJdLG8uZXhwb3J0c1siI05ZTUVYOkFFWjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTlkgRXRoYW5vbCBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6Q0oxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvY29hIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWU1FWDpDTDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGlnaHQgQ3J1ZGUgT2lsIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWU1FWDpITzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTlkgSGFyYm9yIFVMU0QgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOktUMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb2ZmZWUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOk5HMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXR1cmFsIEdhcyBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6UEExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBhbGxhZGl1bSBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVg6UEwxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBsYXRpbnVtIEZ1dHVyZXMiXSwKby5leHBvcnRzWyIjTllNRVg6UkIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJCT0IgR2Fzb2xpbmUgRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYOlRUMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDb3R0b24gRnV0dXJlcyJdLG8uZXhwb3J0c1siI05ZTUVYX01JTkk6UUcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBOYXR1cmFsIEdhcyBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVhfTUlOSTpRTTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIExpZ2h0IENydWRlIE9pbCBGdXR1cmVzIl0sby5leHBvcnRzWyIjTllNRVhfTUlOSTpRVTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIEdhc29saW5lIEZ1dHVyZXMiXSxvLmV4cG9ydHNbIiNOWVNFOkJBQkEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbGliYWJhIEdyb3VwIEhvbGRpbmdzIEx0ZC4iXSxvLmV4cG9ydHNbIiNOWVNFOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGT1JEIE1UUiBDTyBERUwiXSxvLmV4cG9ydHNbIiNOWVNFOkhFLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGF3YWlpYW4gRWxlY3RyaWMgSW5kdXN0cmllcyJdLG8uZXhwb3J0c1siI05ZU0U6TllBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWVNFOlBCUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBFVFJPTEVPIEJSQVNJTEVJUk8gU0EgUEVUUk9CUiJdLG8uZXhwb3J0c1siI05ZU0U6WEFYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQU1FWCBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWVNFOlhNSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ZU0UgQVJDQSBNYWpvciBNYXJrZXQgSW5kZXgiXSxvLmV4cG9ydHNbIiNOWkRKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxvLmV4cG9ydHNbIiNOWkRVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI05aWDpBTExDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL05aWCBBbGwgSW5kZXggKENhcGl0YWwgSW5kZXgpIl0sby5leHBvcnRzWyIjTlpYOk5aNTBHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIC8gTlpYIDUwIEluZGV4IEdyb3NzIl0sby5leHBvcnRzWyIjT0FOREE6TkFUR0FTVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBOYXR1cmFsIEdhcyJdLG8uZXhwb3J0c1siI09BTkRBOlNQWDUwMFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNPQU5EQTpYQ1VVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENvcHBlciAoVVMkIC8gbGIpIl0sby5leHBvcnRzWyIjT01YQ09QOk9NWEMyNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBDb3BlbmhhZ2VuIDI1IEluZGV4Il0sby5leHBvcnRzWyIjT01YQ09QOlNDSE8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTY2hvdXcgJiBDbyBBL1MiXSxvLmV4cG9ydHNbIiNPTVhIRVg6T01YSDI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIEhlbHNpbmtpIDI1IEluZGV4Il0sby5leHBvcnRzWyIjT01YUlNFOk9NWFJHSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBSaWdhIEdyb3NzIEluZGV4Il0sby5leHBvcnRzWyIjT01YU1RPOk9NWFMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk9NWCBTdG9ja2hvbG0gMzAgSW5kZXgiXSxvLmV4cG9ydHNbIiNPTVhUU0U6T01YVEdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFRhbGxpbm4gR3Jvc3MgSW5kZXgiXSxvLmV4cG9ydHNbIiNPTVhWU0U6T01YVkdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFZpbG5pdXMgR3Jvc3MgSW5kZXgiXSxvLmV4cG9ydHNbIiNPVEM6SUhSTUYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJc2hhcmVzIE1TQ0kgSmFwYW4gU0hTIl0sby5leHBvcnRzWyIjUVNFOkdOUkktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJRRSBJbmRleCJdLG8uZXhwb3J0c1siI1JUUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NpYW4gUlRTIEluZGV4Il0sby5leHBvcnRzWyIjUlVTU0VMTDpSVUEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSdXNzZWxsIDMwMDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNSVVNTRUxMOlJVSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NlbGwgMTAwMCBJbmRleCJdLG8uZXhwb3J0c1siI1JVU1NFTEw6UlVULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUnVzc2VsbCAyMDAwIEluZGV4Il0sby5leHBvcnRzWyIjU0VUOkdDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR2xvYmFsIENvbm5lY3Rpb25zIFB1YmxpYyBDb21wYW55Il0sby5leHBvcnRzWyIjU0lYOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGb3JkIE1vdG9yIENvbXBhbnkiXSxvLmV4cG9ydHNbIiNTSVg6U01JLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgTWFya2V0IEluZGV4Il0sby5leHBvcnRzWyIjU09MVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU29sYW5hIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNTT1lCTlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gU295YmVhbnMiXSxvLmV4cG9ydHNbIiNTUDpPRVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjU1A6U1BHU0NJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIEdvbGRtYW4gU2FjaHMgQ29tbW9kaXR5IEluZGV4Il0sby5leHBvcnRzWyIjU1A6U1BYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBJbmRleCJdLG8uZXhwb3J0c1siI1NQOlNWWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgVmFsdWUgSW5kZXgiXSxvLmV4cG9ydHNbIiNTUFg1MDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEluZGV4Il0sby5leHBvcnRzWyIjU1VHQVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFN1Z2FyIl0sCm8uZXhwb3J0c1siI1NaU0U6Mzk5MDAxLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2hlbnpoZW4gQ29tcG9uZW50IEluZGV4Il0sby5leHBvcnRzWyIjVEFEQVdVTDoyMzcwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWlkZGxlIEVhc3QgU3BlY2lhbGl6ZWQgQ2FibGVzIENvLiJdLG8uZXhwb3J0c1siI1RBREFXVUw6VEFTSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhZGF3dWwgQWxsIFNoYXJlcyBJbmRleCJdLG8uZXhwb3J0c1siI1RBU0U6VEEzNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRBLTM1IEluZGV4Il0sby5leHBvcnRzWyIjVFNYOlRTWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUC9UU1ggQ29tcG9zaXRlIEluZGV4Il0sby5leHBvcnRzWyIjVFNYOlRYNjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvVFNYIDYwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkFVMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpBVTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkFYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkJYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgQ3VycmVuY3kgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6Q0ExMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNhbmFkaWFuIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOkNBMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpDQUM0MC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNBQyA0MCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpDTjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpDTjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNoaW5hIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6Q1hZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkRFMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHZXJtYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpERTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdlcm1hbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkRFVTMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiREFYIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkRKSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6RFhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6RVMxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNwYWluIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6RVMxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTcGFpbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkVVQlVORC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gQnVuZCJdLG8uZXhwb3J0c1siI1RWQzpFWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOkZSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGcmFuY2UgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpGUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZyYW5jZSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOkZUTUlCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWlsYW5vIEl0YWxpYSBCb3JzYSBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpHQjAyLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgR292ZXJubWVudCBCb25kcyAyIFlSIl0sby5leHBvcnRzWyIjVFZDOkdCMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOkdCMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpHT0xELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBHb2xkIChVUyQgLyBPWikiXSxvLmV4cG9ydHNbIiNUVkM6SFNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSGFuZyBTZW5nIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOklCRVgzNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklCRVggMzUgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6SUQwMy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZG9uZXNpYSBHb3Zlcm5tZW50IEJvbmRzIDMgWVIiXSxvLmV4cG9ydHNbIiNUVkM6SUQxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZG9uZXNpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOklEMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kb25lc2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6SU4xMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZGlhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6SU4xMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJbmRpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOklUMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJdGFseSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOklUMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXRhbHkgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLApvLmV4cG9ydHNbIiNUVkM6SVhJQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIENvbXBvc2l0ZSBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpKUDEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpKUDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6SlhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOktPU1BJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgQ29tcG9zaXRlIFN0b2NrIFByaWNlIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOktSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJLb3JlYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOktSMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpNWTEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTWFsYXlzaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpNWTEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1hbGF5c2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6TkRYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOk5JMjI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW4gMjI1IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOk5MMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXRoZXJsYW5kcyBHb3Zlcm5tZW50IEJvbmRzLCAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpOTDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldGhlcmxhbmRzIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6TllBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBDb21wb3NpdGUgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6TloxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldyBaZWFsYW5kIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOk5aMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV3IFplYWxhbmQgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpQQUxMQURJVU0tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFBhbGxhZGl1bSAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlBMMDVZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9sYW5kIEdvdmVybm1lbnQgQm9uZHMgNSBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpQTDEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBvbGFuZCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOlBMQVRJTlVNLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBQbGF0aW51bSAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlBUMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQb3J0dWdhbCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sby5leHBvcnRzWyIjVFZDOlBUMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9ydHVnYWwgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpTQTQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU291dGggQWZyaWNhIFRvcCA0MCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpTSUxWRVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFNpbHZlciAoVVMkIC8gT1opIl0sby5leHBvcnRzWyIjVFZDOlNQWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNUVkM6U1NNSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIE1hcmtldCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpTVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTdHJhaXRzIFRpbWVzIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlNYNUUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlNYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIEZyYW5jIEN1cnJlbmN5IEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlRSMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUdXJrZXkgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpUUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlR1cmtleSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sby5leHBvcnRzWyIjVFZDOlVLT0lMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBCcmVudCBDcnVkZSBPaWwiXSxvLmV4cG9ydHNbIiNUVkM6VUtYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVUsgMTAwIEluZGV4Il0sby5leHBvcnRzWyIjVFZDOlVTMDItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIiXSxvLmV4cG9ydHNbIiNUVkM6VVMwMlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6VVMwNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgNSBZUiJdLG8uZXhwb3J0c1siI1RWQzpVUzA1WS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgNSBZUiBZaWVsZCJdLG8uZXhwb3J0c1siI1RWQzpVUzEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLG8uZXhwb3J0c1siI1RWQzpVUzEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxvLmV4cG9ydHNbIiNUVkM6VVMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMzAgWVIiXSxvLmV4cG9ydHNbIiNUVkM6VVNPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFdUSSBDcnVkZSBPaWwiXSwKby5leHBvcnRzWyIjVFZDOlZJWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlZvbGF0aWxpdHkgUyZQIDUwMCBJbmRleCJdLG8uZXhwb3J0c1siI1RWQzpaWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBEb2xsYXIgQ3VycmVuY3kgSW5kZXgiXSxvLmV4cG9ydHNbIiNUV0lJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVGFpd2FuIFdlaWdodGVkIEluZGV4Il0sby5leHBvcnRzWyIjVFdTRTpUQUlFWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBDYXBpdGFsaXphdGlvbiBXZWlnaHRlZCBTdG9jayBJbmRleCJdLG8uZXhwb3J0c1siI1RXVFItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUd2l0dGVyIEluYyJdLG8uZXhwb3J0c1siI1VLMTAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRlRTRSAxMDAgSW5kZXgiXSxvLmV4cG9ydHNbIiNVS09JTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ3J1ZGUgT2lsIChCcmVudCkiXSxvLmV4cG9ydHNbIiNVTklVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVbmlzd2FwIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSBJbmRleCJdLG8uZXhwb3J0c1siI1VTREFVRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gQXVzdHJhbGlhbiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RCUkwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEJyYXppbGlhbiBSZWFsIl0sby5leHBvcnRzWyIjVVNEQ0FELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBDYW5hZGlhbiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RDSEYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFN3aXNzIEZyYW5jIl0sby5leHBvcnRzWyIjVVNEQ05ZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBDaGluZXNlIFl1YW4iXSxvLmV4cG9ydHNbIiNVU0RES0stc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIERhbmlzaCBLcm9uZSJdLG8uZXhwb3J0c1siI1VTREVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gRXVybyJdLG8uZXhwb3J0c1siI1VTREdCUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUG91bmQgU3RlcmxpbmciXSxvLmV4cG9ydHNbIiNVU0RIS0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEhvbmcgS29uZyBEb2xsYXIiXSxvLmV4cG9ydHNbIiNVU0RIVUYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEh1bmdhcmlhbiBGb3JpbnQiXSxvLmV4cG9ydHNbIiNVU0RJRFItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFJ1cGlhaCJdLG8uZXhwb3J0c1siI1VTRElMUy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSXNyYWVsaSBTaGVrZWwiXSxvLmV4cG9ydHNbIiNVU0RJTlItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEluZGlhbiBSdXBlZSJdLG8uZXhwb3J0c1siI1VTREpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSmFwYW5lc2UgWWVuIl0sby5leHBvcnRzWyIjVVNES1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTb3V0aCBLb3JlYW4iXSxvLmV4cG9ydHNbIiNVU0RNWE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIE1leGljYW4gUGVzbyJdLG8uZXhwb3J0c1siI1VTRE5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gTmV3IFplYWxhbmQgRG9sbGFyIl0sby5leHBvcnRzWyIjVVNEUEhQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBQaGlsaXBwaW5lIHBlc28iXSxvLmV4cG9ydHNbIiNVU0RQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFBvbGlzaCBabG90eSJdLG8uZXhwb3J0c1siI1VTRFJVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUnVzc2lhbiBSdWJsZSJdLG8uZXhwb3J0c1siI1VTRFJVQl9UT00tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFJ1c3NpYW4gUnVibGUgVE9NIl0sby5leHBvcnRzWyIjVVNEU0VLLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTd2VkaXNoIEtyb25hIl0sby5leHBvcnRzWyIjVVNEU0dELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTaW5nYXBvcmUgRG9sbGFyIl0sby5leHBvcnRzWyIjVVNEVEhCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBUaGFpIEJhaHQiXSxvLmV4cG9ydHNbIiNVU0RUUlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFR1cmtpc2ggTGlyYSJdLG8uZXhwb3J0c1siI1VTRFpBUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gU291dGggQWZyaWNhbiBSYW5kIl0sby5leHBvcnRzWyIjVVNPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENydWRlIE9pbCAoV1RJKSJdLG8uZXhwb3J0c1siI1dIRUFUVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBXaGVhdCJdLG8uZXhwb3J0c1siI1hBR1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNpbHZlciAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjWEFVVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR29sZCBTcG90IC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNYQlRDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gQ2FuYWRpYW4gRG9sbGFyIl0sby5leHBvcnRzWyIjWEVUUjpEQVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEQVggSW5kZXgiXSxvLmV4cG9ydHNbIiNYTVJVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNb25lcm8gLyBVLlMuIERvbGxhciJdLG8uZXhwb3J0c1siI1hQRFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gUGFsbGFkaXVtIl0sCm8uZXhwb3J0c1siI1hQVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBsYXRpbnVtIC8gVS5TLiBEb2xsYXIiXSxvLmV4cG9ydHNbIiNYUlBCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJYUlAgLyBCaXRjb2luIl0sby5leHBvcnRzWyIjWFJQRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWFJQIC8gRXVybyJdLG8uZXhwb3J0c1siI1hSUFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlhSUCAvIFUuUy4gRG9sbGFyIl0sby5leHBvcnRzWyIjWkVDVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWmNhc2ggLyBVLlMuIERvbGxhciJdfX1dKTs="}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/main-B-VHc1K4.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.27","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:35.075Z","timestamp":1785159275075,"http_version":"HTTP/2","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":"1857279285.rsc.cdn77.org","organization":""},"issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validity":{"start":"Thu, 04 Jun 2026 14:34:45 GMT","end":"Wed, 02 Sep 2026 14:34:44 GMT"},"fingerprint":{"sha1":"92:5D:A0:17:13:91:72:7B:B6:8C:6A:7D:A9:55:7F:C8:A9:47:11:99","sha256":"0E:FC:E3:4D:AD:32:B2:11:05:DC:E3:CD:CC:9E:10:DC:C5:2D:9E:1C:D7:C1:9C:00:92:15:43:C5:B7:0B:3A:D6"}}},"request":{"raw":"GET /assets/main-B-VHc1K4.js HTTP/1.1\r\nHost: widget-v3.smartsuppcdn.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\nOrigin: https://walmartfundholdings.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: 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 13:34:35 GMT\r\ncontent-type: application/javascript\r\naccess-control-allow-origin: *\r\ncache-control: max-age=31536000, public, immutable\r\netag: W/\"6a670743-3f99\"\r\nexpires: Tue, 27 Jul 2027 07:27:08 GMT\r\nlast-modified: Mon, 27 Jul 2026 07:22:43 GMT\r\nx-77-nzt: k3CEBrUFW1fhT/sRuvlaEbx2f5l6AKmPgNR69XH1UoedWwDu9OaNThsP8scN81n1C/RQr8M\r\nx-77-nzt-ray: fdb54123451bfdfe6b5e676a5246c304\r\nx-77-cache: HIT\r\nx-77-age: 22015\r\nvary: Accept-Encoding\r\ncontent-encoding: gzip\r\nserver: CDN77-Turbo\r\nx-77-pop: stockholmSE\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"CDN77","description":"CDN77 is a content delivery network (CDN).","website":"https://www.cdn77.com","common_platform_enumeration":"","icon":"CDN77.png","categories":["CDN"]}],"data":{"size":16281,"size_decoded":6834,"mime_type":"application/javascript","magic":"Java source, ASCII text, with very long lines (15873)","md5":"44df6240c839beea4111582dddf02793","sha1":"4b4dd2241d5ff95eba46fb8893058404630825cd","sha256":"a4019ee0c737ef5d214e80e5a87a5a6e839ff2cf4e286cdad9ed6ff397eba250","sha512":"2f30c45b38eeb4a1900f295893fa30362dce2af015cb8eac6b997795ff4b72db55a92d8d38bb7a8cc8f529c612906aa9d2a2a41539c6a67052ae569733ff7e02","ssdeep":"384:Xrgi5RFMkSjJOE/0BW2rvZZ795P6nrnBOVmPCRkXQbpaIF2x:XEizlSjJOEiWYPR5P6rnBOVmycQbpaIi","tlshash":"6c72d7742700783f712f489e15ade546b232c29dd693892d8b2fec0976c5cc0a8b37b9","first_seen":"2026-07-27T07:28:16.135673Z","last_seen":"2026-07-29T06:17:50.042235Z","times_seen":1081,"resource_available":true,"data":"Y29uc3QgX192aXRlX19tYXBEZXBzPShpLG09X192aXRlX19tYXBEZXBzLGQ9KG0uZnx8KG0uZj1bd2luZG93LnBhcmVudC5zbWFydHN1cHAuZ2V0QXNzZXRVcmwoImFzc2V0cy9XaWRnZXRNZXNzZW5nZXItRDFpVlkzTGouanMiKSx3aW5kb3cucGFyZW50LnNtYXJ0c3VwcC5nZXRBc3NldFVybCgiYXNzZXRzL3NoYXJlZC1rYjF5cUhhQS5qcyIpLHdpbmRvdy5wYXJlbnQuc21hcnRzdXBwLmdldEFzc2V0VXJsKCJhc3NldHMvV2lkZ2V0TWVzc2VuZ2VySW5wdXQtREhyNXVId2QuanMiKSx3aW5kb3cucGFyZW50LnNtYXJ0c3VwcC5nZXRBc3NldFVybCgiYXNzZXRzL1dpZGdldFBvcHVwLUJBMWpjSG51LmpzIildKSkpPT5pLm1hcChpPT5kW2ldKTsKaW1wb3J0e0EgYXMgZSxBaSBhcyB0LEFyIGFzIG4sQXQgYXMgcixCIGFzIGksQmkgYXMgYSxDIGFzIG8sQ2kgYXMgcyxEIGFzIGMsRGkgYXMgbCxFIGFzIHUsRWkgYXMgZCxHaSBhcyBmLEdyIGFzIHAsSGkgYXMgbSxIbiBhcyBoLEhyIGFzIGcsSSBhcyBfLElpIGFzIHYsSiBhcyB5LEppIGFzIGIsS2kgYXMgeCxLciBhcyBTLExpIGFzIEMsTSBhcyBlZSxOIGFzIHRlLE5pIGFzIHcsTyBhcyBuZSxPciBhcyByZSxQaSBhcyBpZSxQciBhcyBhZSxQdCBhcyBvZSxSIGFzIHNlLFMgYXMgY2UsU2kgYXMgbGUsVCBhcyB1ZSxUaSBhcyBULFVpIGFzIGRlLFVyIGFzIEUsVmkgYXMgRCxXaSBhcyBmZSxXbiBhcyBwZSxXdCBhcyBtZSxYaSBhcyBPLFhyIGFzIGssWHQgYXMgaGUsWSBhcyBnZSxZaSBhcyBBLFluIGFzIGosWXIgYXMgX2UsWmkgYXMgTSxaciBhcyB2ZSxfIGFzIHllLGEgYXMgYmUsYWEgYXMgTixiIGFzIHhlLGJpIGFzIFAsY2EgYXMgRixkIGFzIFNlLGRpIGFzIENlLGR0IGFzIHdlLGVhIGFzIFRlLGVpIGFzIEksZiBhcyBFZSxmaSBhcyBMLGggYXMgRGUsaGkgYXMgUixpIGFzIHosaWEgYXMgQixqIGFzIE9lLGppIGFzIFYsam4gYXMga2Usa2kgYXMgQWUsa3IgYXMgamUsbCBhcyBNZSxsYSBhcyBOZSxsaSBhcyBILG0gYXMgUGUsbWkgYXMgRmUsbiBhcyBJZSxuYSBhcyBMZSxvIGFzIFUsb2kgYXMgVyxvciBhcyBHLHBpIGFzIEsscSBhcyBSZSxxbiBhcyB6ZSxyIGFzIHEscyBhcyBCZSx0IGFzIFZlLHRhIGFzIEhlLHRpIGFzIEosdSBhcyBVZSx1aSBhcyBZLHcgYXMgWCx3aSBhcyBaLHggYXMgV2UseGkgYXMgR2UseSBhcyBLZSx5aSBhcyBxZX1mcm9tIi4vc2hhcmVkLWtiMXlxSGFBLmpzIjt2YXIgSmU9ZChgPGRpdj48IT48L2Rpdj5gKTtmdW5jdGlvbiBZZShlLHQpe04odCwhMCk7bGV0IG49eChudWxsKSxyPWAke1MoKS5TTUFSVFNVUFBfQVVUT0NSRUFURT09PSExP2cod2luZG93KS5pZDpgc21hcnRzdXBwYH0td2lkZ2V0LWNvbnRhaW5lcmA7aygoKT0+e3cobikmJnAoKS5ib2R5LmFwcGVuZENoaWxkKHcobikpfSksX2UoKCk9PntwKCkuZ2V0RWxlbWVudEJ5SWQocik/LnJlbW92ZSgpfSk7dmFyIGk9SmUoKTtSKGEoaSksKCk9PnQuY2hpbGRyZW4/P05lKSxGKGkpLEooaSxlPT5mKG4sZSksKCk9PncobikpLHYoKCk9PlcoaSxgaWRgLHIpKSxaKGUsaSksQigpfXZhciBYZT1kKGA8aWZyYW1lIGFsbG93ZnVsbHNjcmVlbj0iIiBzY3JvbGxpbmc9Im5vIj48L2lmcmFtZT5gKTtmdW5jdGlvbiBRKGUsdCl7Tih0LCEwKTtsZXQgbj0oKT0+TShjLGAkdGhlbWVDb2xvcmAsciksW3IsaV09TygpLGE9eCh2b2lkIDApLG89eChudWxsKSxsO0MoKCk9Pnt3KG8pJiZ1KHcobykpfSksQygoKT0+e3cobykmJmQobigpKX0pO2xldCB1PWFzeW5jIGU9PntsJiZhd2FpdCBzKGwpLGUmJnQuY29tcG9uZW50JiYobD1HZSh0LmNvbXBvbmVudCx7dGFyZ2V0OmUuYm9keX0pKX0sZD1lPT57dyhvKSYmbmUodyhvKSxlKX0scD1lPT57aWYoIXcobykpcmV0dXJuO2xldCB0PXcobykuY3JlYXRlRWxlbWVudChgc3R5bGVgKTtyZXR1cm4gdC50ZXh0Q29udGVudD1lLHcobykuaGVhZC5hcHBlbmRDaGlsZCh0KSx0fSxtPSgpPT57Zm9yKGxldCBlIG9mIHdpbmRvdy5kb2N1bWVudC5zdHlsZVNoZWV0cyl7bGV0IHQ9YGA7dHJ5e3Q9Wy4uLmUuY3NzUnVsZXNdLm1hcChlPT5lLmNzc1RleHQpLmpvaW4oYGApfWNhdGNoe2NvbnRpbnVlfWlmKCFwKHQpKXJldHVybn19LGg9KCk9PnshdyhhKXx8IXcoYSkuY29udGVudERvY3VtZW50fHwoZihvLHcoYSkuY29udGVudERvY3VtZW50LCEwKSxtKCkpfTtrKGFzeW5jKCk9Pnthd2FpdCBpZSgpLHcoYSk/LmNvbnRlbnREb2N1bWVudCYmdyhhKS5jb250ZW50RG9jdW1lbnQucmVhZHlTdGF0ZT09PWBjb21wbGV0ZWAmJncoYSkuY29udGVudERvY3VtZW50LmRlZmF1bHRWaWV3P2goKTp3KGEpPy5hZGRFdmVudExpc3RlbmVyKGBsb2FkYCxoKX0pLF9lKGFzeW5jKCk9Pnt3KGEpJiZ3KGEpLnJlbW92ZUV2ZW50TGlzdGVuZXIoYGxvYWRgLGgpLGwmJmF3YWl0IHMobCl9KTt2YXIgZz1YZSgpO0ooZyxlPT5mKGEsZSksKCk9PncoYSkpLHYoKCk9PntXKGcsYGlkYCx0LmlkKSxXKGcsYHRpdGxlYCx0LnRpdGxlKSxIKGcsdC5mcmFtZVN0eWxlKX0pLFooZSxnKSxCKCksaSgpfXZhciBaZT1sKGA8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDY0IDY0IiBmaWxsPSJjdXJyZW50Q29sb3IiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiPjxwYXRoIGQ9Ik02My4xMTMsMTguNTF2LS4xNkM2MC4zMjMsNy4wNSw0NC41ODIsMywzMS45NzIsM1MzLjU4Miw3LC43OTIsMTguNWE2Ni4yMiw2Ni4yMiwwLDAsMCwwLDIwLjQ2YzEuMTgsNC43NCw1LjA1LDguNjMsMTEuMzYsMTEuNDFsLTQsNUEzLjQ3LDMuNDcsMCwwLDAsMTAuODgyLDYxYTMuMzksMy4zOSwwLDAsMCwxLjQ0LS4zMUwyNi44NjIsNTRjMS43OS4xOCwzLjQ5LjI3LDUuMDcuMjcsMTEuMDQuMDQsMjguNDEtNC4wNCwzMS4xOC0xNS40M2E2MC4zMyw2MC4zMywwLDAsMCwwLTIwLjMzWiI+PC9wYXRoPjwvc3ZnPmApO2Z1bmN0aW9uIFFlKGUsdCl7bGV0IG49dmUodCxgaWNvblNpemVgLDMsMTYpO3ZhciByPVplKCk7digoKT0+e1cocixgd2lkdGhgLG4oKSksVyhyLGBoZWlnaHRgLG4oKSl9KSxaKGUscil9ZnVuY3Rpb24gJGUoZSx0KXtOKHQsITApO2xldCBuPXgoITEpO2soKCk9PntmKG4sITApfSk7dmFyIHI9VCgpLGk9RChyKSxhPWU9Pnt2YXIgbj1UKCk7UihEKG4pLCgpPT50LmNoaWxkcmVuPz9OZSksWihlLG4pfTtQKGksZT0+e3cobikmJmUoYSl9KSxaKGUsciksQigpfXZhciBldD1kKGA8ZGl2IGNsYXNzPSJ0cmFuc2Zvcm0gdHJhbnNpdGlvbi10cmFuc2Zvcm0gZHVyYXRpb24tMzAwIGdyb3VwLWhvdmVyOnNjYWxlLTExNSI+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gdHQoZSl7JGUoZSx7Y2hpbGRyZW46KGUsdCk9Pnt2YXIgbj1ldCgpO1FlKGEobikse2ljb25TaXplOjI0fSksRihuKSxLKDMsbiwoKT0+QmUsKCk9Pih7ZGVsYXk6MjAwLGR1cmF0aW9uOjMwMCxzdGFydDouNixvcGFjaXR5Oi44fSkpLFooZSxuKX0sJCRzbG90czp7ZGVmYXVsdDohMH19KX12YXIgbnQ9ZChgPGRpdiBjbGFzcz0icC0xIj48ZGl2IGNsYXNzPSJmbGV4LWNlbnRlciB3LTEyIGgtMTIgYmctd2hpdGUgYmctb3BhY2l0eS0xMCByb3VuZGVkLWZ1bGwiPjwhPjwvZGl2PjwvZGl2PmApO2Z1bmN0aW9uIHJ0KGUpe3ZhciB0PW50KCksbj1hKHQpO3R0KGEobikse30pLEYobiksRih0KSxaKGUsdCl9dmFyIGl0PWQoYDxkaXYgY2xhc3M9ImZsZXgiPjxkaXYgY2xhc3M9ImZsZXgtY2VudGVyIHdoaXRlc3BhY2Utbm93cmFwIHBsLTQgcHItMSI+IDwvZGl2PiA8IT48L2Rpdj5gKTtmdW5jdGlvbiBhdChlLHQpe04odCwhMSk7bGV0IG49KCk9Pk0oaixgJHRgLHIpLFtyLGldPU8oKSxvPWZlKCk7aygoKT0+e2xldCBlPU1hdGguY2VpbCh3KG8pLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKTtVZS5zZXQoZSl9KSxJKCk7dmFyIHM9aXQoKSxjPWEocyksbD1hKGMsITApO0YoYykscnQobShjLDIpLHt9KSxGKHMpLEoocyxlPT5mKG8sZSksKCk9PncobykpLHYoZT0+e1coYyxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0QnV0dG9uVGV4dCksbGUobCxlKX0sWygpPT5uKCkoYGJ1dHRvbi5ncmVldGluZ2ApXSksWihlLHMpLEIoKSxpKCl9dmFyIG90PWQoYDxkaXYgaWQ9IndpZGdldC1vbmxpbmUtYmFkZ2UiIGNsYXNzPSJhYnNvbHV0ZSBsZWZ0LTAgYm90dG9tLTAgdy0yIGgtMiBwLTEuNSBiZy1ncmVlbi00MDAgcm91bmRlZC1mdWxsIGJvcmRlci0yIGJvcmRlci13aGl0ZSI+PC9kaXY+YCk7ZnVuY3Rpb24gc3QoZSx0KXtOKHQsITEpO2xldCBuPSgpPT5NKGtlLGAkaXNXaWRnZXRPbmxpbmVgLHIpLFtyLGldPU8oKTtJKCk7dmFyIGE9VCgpLG89RChhKSxzPWU9Pnt2YXIgdD1vdCgpO3YoKCk9PlcodCxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0T25saW5lQmFkZ2UpKSxLKDMsdCwoKT0+QmUpLFooZSx0KX07UChvLGU9PntuKCkmJmUocyl9KSxaKGUsYSksQigpLGkoKX12YXIgY3Q9ZChgPGRpdiBpZD0id2lkZ2V0LXVucmVhZC1tZXNzYWdlcy1iYWRnZSIgY2xhc3M9ImFic29sdXRlIHJpZ2h0LTAgdG9wLTAgbWluLXctNSBoLTUgZmxleC1jZW50ZXIgcHgtMSB0ZXh0LXdoaXRlIGJnLXJlZC02MDAgdGV4dC14cyByb3VuZGVkLWZ1bGwgc2hhZG93Ij4gPC9kaXY+YCk7ZnVuY3Rpb24gbHQoZSx0KXtOKHQsITApO2xldCBuPSgpPT5NKGhlLGAkdW5yZWFkTWVzc2FnZXNDb3VudGAsciksW3IsaV09TygpLG89QSgoKT0+bigpPjApO3ZhciBzPVQoKSxjPUQocyksbD1lPT57dmFyIHQ9Y3QoKSxyPWEodCwhMCk7Rih0KSx2KCgpPT57Vyh0LGBkYXRhLXRlc3RpZGAsRy53aWRnZXRVbnJlYWRNZXNzYWdlc0JhZGdlKSxsZShyLG4oKT45OT9gOTkrYDpuKCkpfSksSygzLHQsKCk9PkJlKSxaKGUsdCl9O1AoYyxlPT57dyhvKSYmZShsKX0pLFooZSxzKSxCKCksaSgpfXZhciB1dD1kKGA8ZGl2IGNsYXNzPSJoLWZ1bGwgdy1mdWxsIGZpeGVkIGZsZXgganVzdGlmeS1lbmQgYm9yZGVyLXJvdW5kZWQtZnVsbCI+PGRpdiByb2xlPSJidXR0b24iIGNsYXNzPSJncm91cCBmbGV4LWNlbnRlciB3LWZ1bGwgYmctcHJpbWFyeS1ncmFkaWVudCBiZy1wcmltYXJ5LWdyYWRpZW50LWhvdmVyIHRleHQtcHJpbWFyeS1jb250ZW50IHJvdW5kZWQtZnVsbCBvdmVyZmxvdy1oaWRkZW4gY3Vyc29yLXBvaW50ZXIgY29udGVudC1mb2N1cy1zZWNvbmRhcnkiPjwhPiA8IT48L2Rpdj4gPCE+PC9kaXY+YCk7ZnVuY3Rpb24gZHQoZSxuKXtOKG4sITEpO2xldCBpPSgpPT5NKGosYCR0YCxzKSxvPSgpPT5NKERlLGAkaXNXaWRnZXRCdXR0b25CdWJibGVgLHMpLFtzLGNdPU8oKTtJKCk7dmFyIGw9dXQoKSx1PWEobCk7Vyh1LGB0YWJpbmRleGAsMCk7dmFyIGQ9YSh1KSxmPWU9Pnt0dChlLHt9KX0scD1lPT57YXQoZSx7fSl9O1AoZCxlPT57bygpP2UoZik6ZShwLC0xKX0pLHN0KG0oZCwyKSx7fSksRih1KSxsdChtKHUsMikse30pLEYobCksdihlPT57Vyh1LGBhcmlhLWxhYmVsYCxlKSxXKHUsYGRhdGEtdGVzdGlkYCxHLndpZGdldEJ1dHRvbil9LFsoKT0+aSgpKGBhcmlhTGFiZWwub3BlbkNoYXRgKV0pLHQoYGNsaWNrYCx1LCgpPT5zZSgpKSxWKGBrZXlwcmVzc2AsdSxlPT5lLmtleT09PXIuRW50ZXImJnNlKCkpLFooZSxsKSxCKCksYygpfUFlKFtgY2xpY2tgXSk7dmFyIGZ0PWQoYDxkaXY+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gcHQoZSx0KXtOKHQsITApO2xldCBuPSgpPT5NKFNlLGAkYnV0dG9uRnJhbWVXaWR0aGAscykscj0oKT0+TSh0ZSxgJHNob3VsZFJlbmRlckJ1dHRvbkZyYW1lYCxzKSxpPSgpPT5NKERlLGAkaXNXaWRnZXRCdXR0b25CdWJibGVgLHMpLG89KCk9Pk0oaixgJHRgLHMpLFtzLGNdPU8oKSxsPXgodm9pZCAwKSxkPWU9Pnt3KGwpJiYodyhsKS5zdHlsZS53aWR0aD1gJHtlfXB4YCl9LHt3aWRnZXRCbG9ja2luZ09wdGlvbnM6cH09RS5nZXRPcHRpb25zKCk7QygoKT0+e3cobCkmJmQobigpKX0pO3ZhciBtPVQoKSxoPUQobSksZz1lPT57dmFyIHQ9ZnQoKTtsZXQgbjtxZShhKHQpLCgpPT5pKCl8fG8oKSxlPT57e2xldCB0PUEoWCk7UShlLHtnZXQgY29tcG9uZW50KCl7cmV0dXJuIGR0fSxnZXQgaWQoKXtyZXR1cm4gRy53aWRnZXRCdXR0b25GcmFtZX0sdGl0bGU6YFNtYXJ0c3VwcCB3aWRnZXQgYnV0dG9uYCxnZXQgZnJhbWVTdHlsZSgpe3JldHVybiB3KHQpfX0pfX0pLEYodCksSih0LGU9PmYobCxlKSwoKT0+dyhsKSksTCh0LGU9PktlPy4oZSkpLHYoZT0+e249SCh0LGBib3JkZXItcmFkaXVzOiA5OTk5cHg7IGJveC1zaGFkb3c6IHJnYigwIDAgMCAvIDYlKSAwcHggMXB4IDZweCwgcmdiKDAgMCAwIC8gJHtwPy5saW1pdFNoYWRvdz9gMjAlKSAwcHggMnB4IDEycHhgOmAxMiUpIDBweCAycHggMzJweGB9OyBjb2xvci1zY2hlbWU6IG5vcm1hbDtgLG4sZSksVyh0LGBkYXRhLXRlc3RpZGAsRy53aWRnZXRCdXR0b25GcmFtZSl9LFsoKT0+KHtoZWlnaHQ6dSg1Nil9KV0pLEsoMSx0LCgpPT5VLCgpPT4oe3k6MjAsZGVsYXk6MTUwLGR1cmF0aW9uOjMwMH0pKSxLKDIsdCwoKT0+YmUsKCk9Pih7ZHVyYXRpb246MjUwfSkpLFooZSx0KX07UChoLGU9PntyKCkmJmUoZyl9KSxaKGUsbSksQigpLGMoKX12YXIgJD1mdW5jdGlvbihlKXtyZXR1cm4gZVtlLkluaXRpYWxpemVkPTBdPWBJbml0aWFsaXplZGAsZVtlLkxvYWRpbmc9MV09YExvYWRpbmdgLGVbZS5TdWNjZXNzPTJdPWBTdWNjZXNzYCxlW2UuRXJyb3I9M109YEVycm9yYCxlfSh7fSksbXQ9bmV3IE1hcCxodD1hc3luYyBlPT57bGV0IHQ9KGF3YWl0IGUoKSkuZGVmYXVsdDtyZXR1cm4gbXQuc2V0KGUsdCksdH07ZnVuY3Rpb24gZ3QoZSx0KXtOKHQsITApO2xldCBuPXZlKHQsYGRlbGF5YCwzLDIwMCkscj14KGRlKCQuSW5pdGlhbGl6ZWQpKSxpPXgodm9pZCAwKSxhPXgodm9pZCAwKSxvPXgodm9pZCAwKSxzPUEoKCk9PncoaSkpLGM9KCk9Pnt3aW5kb3cuY2xlYXJUaW1lb3V0KHcobykpfSxsPWFzeW5jKCk9PntjKCksZihhLHZvaWQgMCksZihpLHZvaWQgMCksbigpPjA/KGYociwkLkluaXRpYWxpemVkLCEwKSxmKG8sd2luZG93LnNldFRpbWVvdXQoKCk9PntmKHIsJC5Mb2FkaW5nLCEwKX0sbigpKSwhMCkpOmYociwkLkxvYWRpbmcsITApO3RyeXtmKGksYXdhaXQgaHQodC5sb2FkZXIpLCEwKSxmKHIsJC5TdWNjZXNzLCEwKX1jYXRjaChlKXtpZihmKHIsJC5FcnJvciwhMCksZSBpbnN0YW5jZW9mIEVycm9yKWYoYSxlLCEwKTtlbHNlIHRocm93IGV9YygpfTttdC5oYXModC5sb2FkZXIpPyhmKHIsJC5TdWNjZXNzLCEwKSxmKGksbXQuZ2V0KHQubG9hZGVyKSwhMCkpOmsoKCk9PntsKCl9KTt2YXIgdT1UKCksZD1EKHUpLHA9ZT0+e3ZhciBuPVQoKTtSKEQobiksKCk9PnQuZXJyb3IsKCk9Pih7ZXJyb3I6dyhhKX0pKSxaKGUsbil9LG09ZT0+e3ZhciBuPVQoKTtSKEQobiksKCk9PnQubG9hZGluZyksWihlLG4pfSxoPWU9Pnt2YXIgdD1UKCk7RmUoRCh0KSwoKT0+dyhzKSwoZSx0KT0+e3QoZSx7fSl9KSxaKGUsdCl9O1AoZCxlPT57dyhyKT09PSQuRXJyb3ImJnQuZXJyb3I/ZShwKTp3KHIpPT09JC5Mb2FkaW5nP2UobSwxKTp3KHIpPT09JC5TdWNjZXNzJiZlKGgsMil9KSxaKGUsdSksQigpfXZhciBfdD0oKT0+YWUoKCk9PmltcG9ydChgLi9XaWRnZXRNZXNzZW5nZXItRDFpVlkzTGouanNgKSxfX3ZpdGVfX21hcERlcHMoWzAsMSwyXSksaW1wb3J0Lm1ldGEudXJsKSx2dD1lPT57dmFyIHQ9YnQoKSxuPWEodCkscj1hKG4pO3EoYShyKSx7c2l6ZTozMn0pLEYocik7dmFyIGk9bShyLDIpLG89YShpKTtxKG8se3NpemU6MzJ9KTt2YXIgcz1tKG8sMik7cShzLHtzaXplOjMyfSkscShtKHMsMikse3NpemU6MzJ9KSxGKGkpLEYobik7dmFyIGM9bShuLDIpLGw9YShjKTtxKGEobCkse3NpemU6NDR9KSxGKGwpO3ZhciB1PW0obCwyKSxkPWEodSk7eihkLHtoZWlnaHQ6MjAsd2lkdGg6MjcwfSkseihtKGQsMikse2hlaWdodDoyMCx3aWR0aDoxMjJ9KSxGKHUpLEYoYyk7dmFyIGY9bShjLDIpLHA9YShmKTtxKGEocCkse3NpemU6Mjh9KSxGKHApO3ZhciBoPW0ocCwyKTt6KGEoaCkse2hlaWdodDoxMTIsd2lkdGg6Mjk1LHJvdW5kZWRTdHlsZTpgcm91bmRlZC02YH0pLEYoaCksRihmKTt2YXIgZz1tKGYsMiksXz1hKGcpO3ooXyx7aGVpZ2h0OjMyLHdpZHRoOjI5NX0pO3ZhciB2PW0oXywyKTt6KHYse2hlaWdodDozMix3aWR0aDoxNDh9KSx6KG0odiwyKSx7aGVpZ2h0OjMyLHdpZHRoOjIyNH0pLEYoZyksRih0KSxaKGUsdCl9LHl0PShlLHQpPT57bGV0IG49KCk9PnQ/LigpLmVycm9yO3ZhciByPXh0KCksaT1tKGEociksMiksbz1hKGksITApO0YoaSksRihyKSx2KCgpPT5sZShvLG4oKSkpLFooZSxyKX0sYnQ9ZChgPGRpdiBjbGFzcz0iaC1mdWxsIHAtMiBiZy13aGl0ZSIgaWQ9IlRPRE8gdGVzdCI+PGRpdiBjbGFzcz0iZmxleCBqdXN0aWZ5LWJldHdlZW4iPjxkaXYgY2xhc3M9ImZsZXgiPjwhPjwvZGl2PiA8ZGl2IGNsYXNzPSJmbGV4IHNwYWNlLXgtMiI+PCE+IDwhPiA8IT48L2Rpdj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleCBtdC0yIj48ZGl2IGNsYXNzPSJmbGV4IG1sLTEgbXItMiI+PCE+PC9kaXY+IDxkaXYgY2xhc3M9ImZsZXgtYm90dG9tIHNwYWNlLXktMiI+PCE+IDwhPjwvZGl2PjwvZGl2PiA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWJhc2VsaW5lIG10LTgiPjxkaXYgY2xhc3M9ImZsZXggbWwtMSBtci0yIj48IT48L2Rpdj4gPGRpdiBjbGFzcz0ic3BhY2UteS0yIj48IT48L2Rpdj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleCBmbGV4LWNvbCBpdGVtcy1lbmQgc3BhY2UteS01IG10LTggbXItMSI+PCE+IDwhPiA8IT48L2Rpdj48L2Rpdj5gKSx4dD1kKGA8ZGl2IGNsYXNzPSJoLWZ1bGwgcC00IGJnLXdoaXRlIHRleHQtcmVkLTUwMCI+PGRpdiBjbGFzcz0idGV4dC1sZyBmb250LWJvbGQiPkZhaWxlZCB0byBsb2FkIHdpZGdldDwvZGl2PiA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIj4gPC9kaXY+PC9kaXY+YCk7ZnVuY3Rpb24gU3QoZSl7Z3QoZSx7Z2V0IGxvYWRlcigpe3JldHVybiBfdH0sZGVsYXk6MCxnZXQgZXJyb3IoKXtyZXR1cm4geXR9LGdldCBsb2FkaW5nKCl7cmV0dXJuIHZ0fX0pfXZhciBDdD1kKGA8ZGl2PjwhPjwvZGl2PmApO2Z1bmN0aW9uIHd0KGUsdCl7Tih0LCEwKTtsZXQgcj0oKT0+TShqZSxgJGlzRnVsbFNjcmVlbkVuYWJsZWRgLGwpLG89KCk9Pk0oUGUsYCRpc01lc3NlbmdlckZyYW1lRXhwYW5kZWRgLGwpLHM9KCk9Pk0obixgJGlzTW9iaWxlRGV2aWNlYCxsKSxjPSgpPT5NKGksYCRzaG91bGRSZW5kZXJNZXNzZW5nZXJGcmFtZWAsbCksW2wsZF09TygpLG09eCh2b2lkIDApLGc9YE1vYmlsZVdpZGdldE1lc3Nlbmdlck9wZW5gLF89KGUsdCk9PntpZighdyhtKSlyZXR1cm47bGV0e3dpZGdldEJsb2NraW5nT3B0aW9uczpufT1FLmdldE9wdGlvbnMoKSx7d2lkdGg6cixoZWlnaHQ6aX09dWUoZSx0KTt3KG0pLnN0eWxlLm1heEhlaWdodD1oKGkpP2k6dShpKSx3KG0pLnN0eWxlLndpZHRoPWgocik/cjp1KHIpLHcobSkuc3R5bGUuaGVpZ2h0PWV8fG4/LmhlYWRsZXNzTW9kZT9gMTAwJWA6YGNhbGMoMTAwJSAtIDQwcHgpYH07QygoKT0+e3cobSkmJl8ocigpLG8oKSl9KTtsZXQgeT14KCExKTtDKCgpPT57aWYocygpKXtpZihjKCkmJiF3KHkpKXtsZXQgZT1wKCkuY3JlYXRlRWxlbWVudChgc3R5bGVgKTtlLnRleHRDb250ZW50PWAqIHtvdmVyZmxvdzogaGlkZGVufWAsZS5jbGFzc05hbWU9ZyxwKCkuaGVhZC5hcHBlbmRDaGlsZChlKSxmKHksITApfWlmKCFjKCkmJncoeSkpe2xldCBlPXAoKS5oZWFkLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoZyk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspcCgpLmhlYWQucmVtb3ZlQ2hpbGQoZVt0XSk7Zih5LCExKX19fSk7dmFyIGI9VCgpLFM9RChiKSxlZT1lPT57dmFyIHQ9Q3QoKTtIKHQsYGAse30se3RyYW5zaXRpb246YG1heC1oZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQsIHdpZHRoIDI1MG1zIGVhc2UtaW4tb3V0YCxvdmVyZmxvdzpgaGlkZGVuYH0pO3ZhciBuPWEodCk7e2xldCBlPUEoWCk7UShuLHtnZXQgY29tcG9uZW50KCl7cmV0dXJuIFN0fSxnZXQgaWQoKXtyZXR1cm4gRy53aWRnZXRNZXNzZW5nZXJGcmFtZX0sdGl0bGU6YFNtYXJ0c3VwcCB3aWRnZXQgbWVzc2VuZ2VyYCxnZXQgZnJhbWVTdHlsZSgpe3JldHVybiB3KGUpfX0pfUYodCksTCh0LChlLHQpPT54ZT8uKGUsdCksciksSih0LGU9PmYobSxlKSwoKT0+dyhtKSksdigoKT0+Vyh0LGBkYXRhLXRlc3RpZGAsRy53aWRnZXRNZXNzZW5nZXJGcmFtZSkpLEsoMSx0LCgpPT5VLCgpPT4oe3k6MjAsZHVyYXRpb246MjAwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246MTUwfSkpLFooZSx0KX07UChTLGU9PntjKCkmJmUoZWUpfSksWihlLGIpLEIoKSxkKCl9dmFyIFR0PSgpPT5hZSgoKT0+aW1wb3J0KGAuL1dpZGdldFBvcHVwLUJBMWpjSG51LmpzYCksX192aXRlX19tYXBEZXBzKFszLDEsMl0pLGltcG9ydC5tZXRhLnVybCksRXQ9ZT0+e3ZhciB0PUR0KCksbj1hKHQpO3Eobix7c2l6ZTo0NH0pO3ZhciByPW0obiwyKSxpPWEocik7eihpLHtoZWlnaHQ6MjAsd2lkdGg6MjcwfSk7dmFyIG89bShpLDIpO3oobyx7aGVpZ2h0OjIwLHdpZHRoOjI3MH0pLHoobShvLDIpLHtoZWlnaHQ6MjAsd2lkdGg6MTIyfSksRihyKSxGKHQpLFooZSx0KX0sRHQ9ZChgPGRpdiBjbGFzcz0iaC1mdWxsIHAtMiBiZy13aGl0ZSI+PCE+IDxkaXYgY2xhc3M9Im10LTQgc3BhY2UteS0yIj48IT4gPCE+IDwhPjwvZGl2PjwvZGl2PmApO2Z1bmN0aW9uIE90KGUpe2d0KGUse2dldCBsb2FkZXIoKXtyZXR1cm4gVHR9LGRlbGF5OjAsZ2V0IGxvYWRpbmcoKXtyZXR1cm4gRXR9fSl9dmFyIGt0PWQoYDxkaXY+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gQXQoZSx0KXtOKHQsITApO2xldCBuPSgpPT5NKHllLGAkcG9wdXBGcmFtZUhlaWdodGAsbykscj0oKT0+TShFZSxgJGhhc1BvcHVwRnJhbWVIb3ZlcmAsbyksaT0oKT0+TShPZSxgJHNob3VsZFJlbmRlclBvcHVwRnJhbWVgLG8pLFtvLHNdPU8oKSxjPXgodm9pZCAwKSxsPWU9Pnt3KGMpJiYodyhjKS5zdHlsZS5tYXhIZWlnaHQ9YCR7ZX1weGApfSx7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOmR9PUUuZ2V0T3B0aW9ucygpO0MoKCk9Pnt3KGMpJiZsKG4oKSl9KTtsZXQgcD1BKCgpPT5yKCk/LjI4Oi4xNik7dmFyIG09VCgpLGg9RChtKSxnPWU9Pnt2YXIgdD1rdCgpO2xldCBuO3ZhciByPWEodCk7e2xldCBlPUEoWCk7UShyLHtnZXQgY29tcG9uZW50KCl7cmV0dXJuIE90fSxnZXQgaWQoKXtyZXR1cm4gRy53aWRnZXRQb3B1cEZyYW1lfSx0aXRsZTpgU21hcnRzdXBwIHdpZGdldCBwb3B1cGAsZ2V0IGZyYW1lU3R5bGUoKXtyZXR1cm4gdyhlKX19KX1GKHQpLEoodCxlPT5mKGMsZSksKCk9PncoYykpLEwodCxlPT5jZT8uKGUpKSx2KGU9PntuPUgodCxgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MHB4KTsgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2UtaW4tb3V0LCBtYXgtaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0YCxuLGUpLFcodCxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0UG9wdXBGcmFtZSl9LFsoKT0+KHt3aWR0aDp1KDMwMCksImJvcmRlci1yYWRpdXMiOnUoMjApLG92ZXJmbG93OmBoaWRkZW5gLCJib3gtc2hhZG93IjpgcmdiYSgwLCAwLCAwLCAke2Q/LmxpbWl0U2hhZG93P2AwLjIpIDBweCAzcHggMTJweGA6YCR7dyhwKX0pIDBweCAzcHggMTZweGB9YH0pXSksSygxLHQsKCk9PlUsKCk9Pih7eToyMCxkZWxheTozMDAsZHVyYXRpb246NDAwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246NDAwfSkpLFooZSx0KX07UChoLGU9PntpKCkmJmUoZyl9KSxaKGUsbSksQigpLHMoKX12YXIganQ9ZChgPGRpdiBjbGFzcz0iZmxleCBwLTIiPjxkaXY+PC9kaXY+IDxkaXY+PC9kaXY+IDxkaXY+PC9kaXY+PC9kaXY+YCk7ZnVuY3Rpb24gTXQoZSx0KXtsZXQgbj12ZSh0LGBzaXplYCwzLGBtZGApLHI9dmUodCxgY29sb3JgLDMsYGJsYWNrYCksaT1BKCgpPT50Lml0ZXJhdGlvbnM/P2BpbmZpbml0ZWApO3ZhciBvPWp0KCkscz1hKG8pO2xldCBjO3ZhciBsPW0ocywyKTtsZXQgdTt2YXIgZD1tKGwsMik7bGV0IGY7RihvKSx2KCgpPT57WShzLDEsYHR5cGluZy1pbmRpY2F0b3IgJHtuKCl9IGluZGljYXRvci1jb2xvci0ke3IoKX0gYW5pbWF0ZS10eXBpbmdgLGBzdmVsdGUtczQweGdrYCksYz1IKHMsYGAsYyx7ImFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQiOncoaSl9KSxZKGwsMSxgdHlwaW5nLWluZGljYXRvciAke24oKX0gaW5kaWNhdG9yLWNvbG9yLSR7cigpfSB0eXBpbmctaW5kaWNhdG9yLXNlY29uZCBhbmltYXRlLXR5cGluZ2AsYHN2ZWx0ZS1zNDB4Z2tgKSx1PUgobCxgYCx1LHsiYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCI6dyhpKX0pLFkoZCwxLGB0eXBpbmctaW5kaWNhdG9yICR7bigpfSBpbmRpY2F0b3ItY29sb3ItJHtyKCl9IHR5cGluZy1pbmRpY2F0b3ItdGhpcmQgYW5pbWF0ZS10eXBpbmdgLGBzdmVsdGUtczQweGdrYCksZj1IKGQsYGAsZix7ImFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQiOncoaSl9KX0pLFooZSxvKX12YXIgTnQ9ZChgPGRpdiBjbGFzcz0iZmxleC1jZW50ZXIgaC1mdWxsIGJnLXdoaXRlIHJvdW5kZWQtbGciPjwhPjwvZGl2PmApO2Z1bmN0aW9uIFB0KGUpe3ZhciB0PU50KCk7TXQoYSh0KSx7aXRlcmF0aW9uczoyfSksRih0KSxaKGUsdCl9dmFyIEZ0PWQoYDxkaXY+PCE+PC9kaXY+YCk7ZnVuY3Rpb24gSXQoZSx0KXtOKHQsITEpO2xldCBuPSgpPT5NKGVlLGAkc2hvdWxkUmVuZGVyVHlwaW5nRnJhbWVgLHIpLFtyLGldPU8oKSx7d2lkZ2V0QmxvY2tpbmdPcHRpb25zOnN9PUUuZ2V0T3B0aW9ucygpO0koKTt2YXIgYz1UKCksbD1EKGMpLGQ9ZT0+e3ZhciB0PUZ0KCk7bGV0IG47dmFyIHI9YSh0KTt7bGV0IGU9YihYKTtRKHIse2dldCBjb21wb25lbnQoKXtyZXR1cm4gUHR9LGdldCBpZCgpe3JldHVybiBHLndpZGdldFR5cGluZ0ZyYW1lfSx0aXRsZTpgU21hcnRzdXBwIHdpZGdldCB0eXBpbmdgLGdldCBmcmFtZVN0eWxlKCl7cmV0dXJuIHcoZSl9fSl9Rih0KSxMKHQsZT0+bz8uKGUpKSx2KGU9PntuPUgodCxgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjIpICR7cz8ubGltaXRTaGFkb3c/YDBweCAzcHggMTJweGA6YDBweCAzcHggMTZweGB9OyBib3JkZXItcmFkaXVzOiAyNHB4O2AsbixlKSxXKHQsYGRhdGEtdGVzdGlkYCxHLndpZGdldFR5cGluZ0ZyYW1lKX0sWygpPT4oe2hlaWdodDp1KDQwKSx3aWR0aDp1KDcwKSxvdmVyZmxvdzpgaGlkZGVuYH0pXSksSygxLHQsKCk9PlUsKCk9Pih7eToyMCxkZWxheTozMDAsZHVyYXRpb246NDAwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246MjUwfSkpLFooZSx0KX07UChsLGU9PntuKCkmJmUoZCl9KSxaKGUsYyksQigpLGkoKX12YXIgTHQ9TGUobnVsbCksUnQ9VGUoW0x0XSwoW2VdKT0+ISFlKSx6dD1kKGA8aW1nIGNsYXNzPSJtLWF1dG8gbWF4LWgtZnVsbCBtYXgtdy1mdWxsIHNlbGVjdC1ub25lIGJnLWJsYWNrIiB3aWR0aD0iYXV0byIgaGVpZ2h0PSJhdXRvIi8+YCksQnQ9ZChgPHZpZGVvIGNvbnRyb2xzPSIiIGNsYXNzPSJtLWF1dG8gbWF4LWgtZnVsbCBtYXgtdy1mdWxsIGJnLWJsYWNrIG9iamVjdC1jb250YWluIj48dHJhY2sga2luZD0iY2FwdGlvbnMiLz4gPHNvdXJjZS8+PC92aWRlbz5gLDIpLFZ0PWQoYDxkaXYgY2xhc3M9InctZnVsbCBoLWZ1bGwgZmxleCBmbGV4LWNvbCI+PGRpdiBjbGFzcz0iZmxleC1zaHJpbmsgZmxleCBmbGV4LXJvdyB3LWZ1bGwgYmctYmxhY2sgdGV4dC13aGl0ZSI+PGRpdiBjbGFzcz0iZmxleC1ncm93IGZsZXggaXRlbXMtY2VudGVyIHRleHQtbWQgcHgtNCBvdmVyZmxvdy1oaWRkZW4iPjxzcGFuIGNsYXNzPSJ3aGl0ZXNwYWNlLW5vd3JhcCB0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlbiI+IDwvc3Bhbj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleC1zaHJpbmsiPjwhPjwvZGl2PjwvZGl2PiA8ZGl2PjwhPjwvZGl2PjwvZGl2PmApO2Z1bmN0aW9uIEh0KGUsbil7TihuLCEwKTtsZXQgcj0oKT0+TShyZSxgJGlzRGVza3RvcGAscyksaT0oKT0+TShMdCxgJHByZXZpZXdlZE1lZGlhYCxzKSxvPSgpPT5NKGosYCR0YCxzKSxbcyxjXT1PKCksbD1BKHIpLHU9ZT0+e2U9PT1gb3ZlcmxheWAmJiF3KGwpfHxMdC5zZXQobnVsbCl9O3ZhciBkPVZ0KCksZj1hKGQpLHA9YShmKSxoPWEocCksZz1hKGgsITApO0YoaCksRihwKTt2YXIgXz1tKHAsMikseT1hKF8pO3tsZXQgZT1BKCgpPT5vKCkoYHRvb2x0aXAuY2xvc2VgKSk7VmUoeSx7b25DbGljazooKT0+dShgYnV0dG9uYCksZ2V0IGljb24oKXtyZXR1cm4gSWV9LGdldCBpY29uRGVzY3JpcHRpb24oKXtyZXR1cm4gdyhlKX0saWNvblNjYWxlOiEwLHNpemU6YHhsYH0pfUYoXyksRihmKTt2YXIgYj1tKGYsMikseD1hKGIpLFM9ZT0+e3ZhciBuPXp0KCk7digoKT0+e1cobixgc3JjYCxpKCk/LmF0dGFjaG1lbnQudXJsKSxXKG4sYGFsdGAsaSgpPy5hdHRhY2htZW50LmZpbGVOYW1lKX0pLHQoYGNsaWNrYCxuLGU9PmUuc3RvcFByb3BhZ2F0aW9uKCkpLFYoYGtleXByZXNzYCxuLCgpPT57fSksWihlLG4pfSxDPWU9Pnt2YXIgbj1CdCgpO24uYXV0b3BsYXk9ITAsbi5sb29wPSEwO3ZhciByPW0oYShuKSwyKTtGKG4pLHYoKCk9Plcocixgc3JjYCxpKCkuYXR0YWNobWVudC51cmwpKSx0KGBjbGlja2AsbixlPT5lLnN0b3BQcm9wYWdhdGlvbigpKSxWKGBrZXlwcmVzc2AsbiwoKT0+e30pLFooZSxuKX07UCh4LGU9PntpKCk/LnR5cGU9PT13ZS5JbWFnZT9lKFMpOmkoKT8udHlwZT09PXdlLlZpZGVvJiZlKEMsMSl9KSxGKGIpLEYoZCksdigoKT0+e2xlKGcsaSgpPy5hdHRhY2htZW50LmZpbGVOYW1lKSxZKGIsMSxDZShbYHJlbGF0aXZlIG92ZXJmbG93LWhpZGRlbiBmbGV4LWdyb3cgZmxleCBpdGVtcy1jZW50ZXIgYmctYmxhY2svODAgei0xMGAscigpP2BwLThgOmBwLTRgXSkpfSksdChgY2xpY2tgLGIsKCk9PnUoYG92ZXJsYXlgKSksVihga2V5cHJlc3NgLGIsKCk9Pnt9KSxLKDEsZCwoKT0+VSwoKT0+KHt5OjIwLGRlbGF5OjMwMCxkdXJhdGlvbjo0MDB9KSksSygyLGQsKCk9PlUsKCk9Pih7eToxMCxkdXJhdGlvbjoyNTB9KSksWihlLGQpLEIoKSxjKCl9QWUoW2BjbGlja2BdKTt2YXIgVXQ9ZChgPGRpdj48IT48L2Rpdj5gKTtmdW5jdGlvbiBXdChlLHQpe04odCwhMSk7bGV0IG49KCk9Pk0oUnQsYCRzaG91bGRSZW5kZXJNZWRpYVByZXZpZXdgLHIpLFtyLGldPU8oKTtJKCk7dmFyIG89VCgpLHM9RChvKSxjPWU9Pnt2YXIgdD1VdCgpO0godCxgYCx7fSx7dHJhbnNpdGlvbjpgbWF4LWhlaWdodCAyNTBtcyBlYXNlLWluLW91dCwgd2lkdGggMjUwbXMgZWFzZS1pbi1vdXRgfSk7dmFyIG49YSh0KTt7bGV0IGU9YigoKT0+WChlPT57ZS5zdHlsZS5wb3NpdGlvbj1gZml4ZWRgfSkpO1Eobix7Z2V0IGNvbXBvbmVudCgpe3JldHVybiBIdH0sZ2V0IGlkKCl7cmV0dXJuIEcud2lkZ2V0SW1hZ2VQcmV2aWV3fSx0aXRsZTpgU21hcnRzdXBwIHdpZGdldCBpbWFnZSBwcmV2aWV3YCxnZXQgZnJhbWVTdHlsZSgpe3JldHVybiB3KGUpfX0pfUYodCksTCh0LGU9PldlPy4oZSkpLHYoKCk9PlcodCxgZGF0YS10ZXN0aWRgLEcud2lkZ2V0SW1hZ2VQcmV2aWV3KSksSygxLHQsKCk9PlUsKCk9Pih7eToyMCxkZWxheToxMDAsZHVyYXRpb246MjUwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246MjUwfSkpLFooZSx0KX07UChzLGU9PntuKCkmJmUoYyl9KSxaKGUsbyksQigpLGkoKX12YXIgR3Q9ZChgPCE+IDwhPiA8IT4gPCE+IDwhPmAsMSk7ZnVuY3Rpb24gS3QodCxyKXtOKHIsITApO2xldCBpPSgpPT5NKG1lLGAkbGFzdFVucmVhZE1lc3NhZ2VgLG8pLGE9KCk9Pk0oXyxgJGlzTWVzc2VuZ2VyRnJhbWVPcGVuYCxvKSxbbyxzXT1PKCk7aygoKT0+eyhhc3luYygpPT57YXdhaXQgemUoKSxhd2FpdCBwZS5pbml0Q2xpZW50KCl9KSgpfSksQygoKT0+e2koKSYmIWEoKSYmZSgpfSksZ2UoUygpKSxIZShuKSYmeShTKCkpLFllKHQse2NoaWxkcmVuOihlLHQpPT57dmFyIG49R3QoKSxyPUQobik7SXQocix7fSk7dmFyIGk9bShyLDIpO0F0KGkse30pO3ZhciBhPW0oaSwyKTtwdChhLHt9KTt2YXIgbz1tKGEsMik7d3Qobyx7fSksV3QobShvLDIpLHt9KSxaKGUsbil9LCQkc2xvdHM6e2RlZmF1bHQ6ITB9fSksQigpLHMoKX12YXIgcXQ9Zyh3aW5kb3cpO0UuaW5pdChxdC5vcHRpb25zKSxxdC5pbnN0YWxsQXBpKE1lKSxjLnNldFRoZW1lQ29sb3IocXQub3B0aW9ucyksUmUoKSxvZSgpLEdlKEt0LHt0YXJnZXQ6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYGFwcGApfSk7ZXhwb3J0e010IGFzIG4sTHQgYXMgdH07Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPW1haW4tQi1WSGMxSzQuanMubWFw"}},"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":"translate.yandex.net/website-widget/v1/widget.js?widgetId=ytWidget\u0026pageLang=en\u0026widgetTheme=light\u0026autoMode=true","fqdn":"translate.yandex.net","domain":"yandex.net","tld":"net"},"ip":{"addr":"213.180.204.194","port":443,"asn":13238,"as":"YANDEX LLC","country":"Russia","country_code":"RU"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.909Z","timestamp":1785159267909,"http_version":"HTTP/2","security_state":"","security_info":null,"request":{"raw":"GET /website-widget/v1/widget.js?widgetId=ytWidget\u0026pageLang=en\u0026widgetTheme=light\u0026autoMode=true HTTP/1.1\r\nHost: translate.yandex.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://walmartfundholdings.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 429 \r\nset-cookie: _yasc=7KIkGfrTkC9lusQR2ZGLk3dv+sTU/hG7KHyUW6xDNrUJgRaNcLBDAtPbjyUmudJfaLA=; domain=.yandex.net; path=/; expires=Thu, 24 Jul 2036 13:34:28 GMT; SameSite=None; Secure\nbh=YOS8ndMGahfcyuH/CJLYobEDn8/14QzlyPCOA5S2Ag==; Expires=Tue, 31 Aug 2027 13:34:28 GMT; SameSite=None; Secure\r\naccept-ch: Sec-CH-UA-Full-Version-List, Sec-CH-UA-Platform-Version, Sec-CH-UA-Arch, Sec-CH-UA-Model, Sec-CH-UA-Bitness\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"429","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"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":"s2.coinmarketcap.com/static/img/coins/64x64/11419.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.630Z","timestamp":1785159268630,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/11419.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1176\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 03:37:24 GMT\r\nlast-modified: Fri, 10 Jul 2026 07:52:55 GMT\r\netag: \"39ab3ac48aa1693b8a5aef2412aadae4\"\r\nx-amz-server-side-encryption: AES256\r\ncache-control: public, max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 35825\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: hfj9XRbXfi1NAX2SQu9_ZHLaJokULnYp3y0_G94DAFC-S8MR1ZsKNA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":1176,"size_decoded":1731,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"39ab3ac48aa1693b8a5aef2412aadae4","sha1":"fc0e587e8aca14afd2ecc7950111fdd1d7c97a3c","sha256":"f356723070d7f2a47075c065b9585f5cbbbe2a8eaa090c73e60aab31259c877b","sha512":"5ba8f010481a41b1151310cd650ff6c29420b432930114400c6fb1d0d8b707f082a002f43d5e0f862a302a5643db75ac1587d67338083bbf1e1a3e47284a7e3e","ssdeep":"","tlshash":"e22106a3eb5a2ee2c87c4d382d472406a4bb1cec70e06e16e132c29c78d280ca8b0120","first_seen":"2026-07-10T15:09:07.671192Z","last_seen":"2026-07-29T06:14:00.326081Z","times_seen":966,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAEX0lEQVR4Xu2YT0gUURzHpVN1qENFdKxbIbszu1lU9AeqWxYR0SWiLp06BEHH2EjIqGMoRbU7syrmQcsIQyL6R2V/KKIsDY1SzC3toPNnd3T39Xu7as5vxp2ZnZ0/ynzgi7jz5r33fe/3+82bqagICAgICAgIKAUmLlaxvHie4aQm+NsO6nBJ7XTMMIwdSYhRPC/HYeICAxN4xnAi8YNYXnoa4YQQnqcjhDnhKAyaxpPwgdJ0bni+ZYVJCntZTpzUGdwXys8N5ojnXRbYW+OrYIBfeFC/ic5xE0dW4PnbhuGE23gwv4rlhGY8f1tEeLGa4cUcHsi3grlGOHEf9lES0RayHDod0AzisCCUyf42mUST2msmNbi5YXQZ9mMZ6KhOp3PHVfMyQyiJTxOaaxZUh/1YIpKUt0MnWZ2OHRXd/c8j2fwCjMo5sqlB28akstQD9mWKXXGyGApft06njuvQXZnk8vYLnH6U1rQxKzgbfKFesD9D4Lh5AXfmluIQ9rN5+GNS08aKqBfsryjsTSEMNyq4IzcEkyW/pdn7T4gC2bCzWdK0tSCFTQph7FOXWIwsgnN+l04nrujUw7TK/DQXuxRNW4vqot6wXw3wYnFG52bX1NE/ib3n6YaiiNtaFfWG/aqoupVex/DSOL7RDVXB8/7skwzJFIq/LpdfK2RLo41UAG8hXl6LfReIxRbBCapTc5PDOnJPJo3dE2REVuf9XAgKIXe+TZATD+R8vcD9GSohdFKv2H4FFIljmsYOaXeLRK68UUjP3yLbbYKBsRyp/6CQ6lZZM0YxsUn5mMp8tGlsJez+H9zQCV19r5AJe741ZCF4WnvNnxjhoDVCPc8sAOTGJdzIKd3vUz/jy8XHP9aKJMtJtTMLAP98wQ2cUqHYpcnTgUnbkUB3/t1wlsReZMi2JmvFkXr+HwEJoRc3cEN7pmrB11FrK/FzKvf3tVozrZbU838BPHrjm63D7XI+j4vxGKLmeEeaREqp/kjhhFg/swDwzr0GfhzEjbzQ22H9aBgScmUxPqXByiayemYBKGxDZgNcSOk0dlXnnhe+A2Cuf7R9FJ5WinpVmZ8mxGcqaQOdm1zTVjjpiSgT6BHpQJu1Z/0cSlGP2LeKjT5YhPY+9fvAh9/WHnFzKEW9Yb+6hPhxTxfhZKf6jbDmVUbTxqJS1BP2WRQvIyEKxe6XUHg3oN8Cdtj7FmB+5zFe1oQbUPQoD77b+hpknPNGeBUJ9LW3tiuTf3HC10yq9J3HeF0TSpD1nDfCq0goQeXbeYyXNcGk7Oe8ET6OBOd2HuPDmlD+nDfCR5Hg3s5jfFATnM95IzyMBO92HuNBTXA/541wMRL8s/MYF2qC9zlvhIOR4N+dxzhQE/yX80aUMRLmz85jylAT/J/zRtiIhPm785gSasL8y3kjLETCwtl5jImaMP9z3ogikbBwdx4T4cfXM7zYN8t8P/0Nt1vQRK8NLQ1z0kGqLS1kCb4eEBAQ4Ab/ACidG3skOUS6AAAAAElFTkSuQmCC"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/3552.4c5535183b7a0330a89d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.289Z","timestamp":1785159269289,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/3552.4c5535183b7a0330a89d.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a608293-2fa2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:42:59 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/22/2026 11:01:37\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 47ad7e2704751498ed6fbdef6a8b0016\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"]}],"data":{"size":12194,"size_decoded":4814,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3071)","md5":"8cb7d12d58618d9e9433db7cf169e678","sha1":"dd2e2830dd9f4f8c3e4000fb90c94712f7315f67","sha256":"e54bba4bdf7867aec664fc0c023a4e77650464bb7e2e1a2d80ef75500363cd92","sha512":"9c9ce4a19d03df706a0fb6495901a15dd961b87797e48e43669a130ec51d4d3788fcd9e251dd54f1560134509553e5c7a1cc17249ad1f6f562d104b6b10d9a66","ssdeep":"192:ETCSGJXJ6h4GX8tWKEN7Nbj61RO2g6OQLgwF8TEz5XnC/x6/v60KjBHAH4yiFbBw:EmSGehtqWNN7Nbj61ROQLRF8TkVNjaAj","tlshash":"ab42b53d719358a8666780e980390b7ba6283980a58741bcfb78dccf46cddd46277f38","first_seen":"2026-07-22T11:33:41.980937Z","last_seen":"2026-07-28T07:05:00.655129Z","times_seen":1853,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szNTUyXSx7NDUwMjk1KHQpe3QuZXhwb3J0cz17fX0sNDYyMzUodCl7dC5leHBvcnRzPXt9fSw5NzMxMTkodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7cXVvdGVUaWNrZXJGb3JtYXRDaGFuZ2U6KCk9Pm59KTt2YXIgaT1zKDc1NTYyNyksYT1zKDk4NDM3Nik7dmFyIG89cygyMTYxMSk7ZnVuY3Rpb24gbih0LGUscyl7Y29uc3Qgbj0oMCxvLnRvTnVtYmVyT3JVbmRlZmluZWQpKHQpO2lmKCJlY29ub21pYyI9PT1lPy50eXBlJiYwPT09bnx8dm9pZCAwPT09bilyZXR1cm47Y29uc3QgbD1zPy5jdXN0b21QcmljZUZvcm1hdHRlcnx8InZvbHVtZSI9PT1lLmZvcm1hdCYmbmV3IGEuVm9sdW1lRm9ybWF0dGVyKHtwcmVjaXNpb246Mn0pfHxuZXcgaS5QcmljZUZvcm1hdHRlcih7cHJpY2VTY2FsZTplLnByaWNlc2NhbGV8fDEwMCxtaW5Nb3ZlOmUubWlubW92fHwxLGZyYWN0aW9uYWw6ZS5mcmFjdGlvbmFsLG1pbk1vdmUyOmUubWlubW92ZTJ9KSxyPXZvaWQgMCE9PXM/LnNpZ25Qb3NpdGl2ZUNoYW5nZT9zLnNpZ25Qb3NpdGl2ZUNoYW5nZTpzPy5zaWduUG9zaXRpdmU7cmV0dXJuKCh0LGU9ITApPT5lP2AoJHt0fSlgOnQpKGwuZm9ybWF0KG4se3NpZ25Qb3NpdGl2ZTpyLHNpZ25OZWdhdGl2ZTpzPy5zaWduTmVnYXRpdmV9KSxzPy5jaGFuZ2VJbkJyYWNrZXRzKX19LDYwMjg3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3F1b3RlVGlja2VyRm9ybWF0Q3VycmVuY3k6KCk9PmF9KTt2YXIgaT1zKDE4NTI3MSk7ZnVuY3Rpb24gYSh0KXtzd2l0Y2godCl7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtjYXNlIlBDVERZIjpyZXR1cm4gaS50KG51bGwse2NvbnRleHQ6Il9tYXhfbGVuXzkifSxzKDQ0NTA1KSk7Y2FzZSJQQ1RQQVIiOnJldHVybiBpLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNDY4NDYwKSk7ZGVmYXVsdDpyZXR1cm4gdH19Nzg2NzYwKHQsZSxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0KXtyZXR1cm4ibWN4X2ZyZWUiPT09dH1mdW5jdGlvbiBhKHQpe3JldHVybiEhdCYmKGkodC5zeW1ib2xuYW1lKXx8InBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZpKHQudmFsdWVzPy5hbHRlcm5hdGl2ZSkpfXMuZChlLHtpc01jeFF1b3RlRGF0YTooKT0+YX0pfSwxMDE3MTIodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3JldHVybiB0LmVuZHNXaXRoKCJfZGx5Iil9ZnVuY3Rpb24gYSh0KXtyZXR1cm4hIXQmJighKHZvaWQgMD09PXQuc3ltYm9sbmFtZXx8IWkodC5zeW1ib2xuYW1lKSl8fEJvb2xlYW4oInBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZ0LnZhbHVlcyYmdm9pZCAwIT09dC52YWx1ZXMuYWx0ZXJuYXRpdmUmJmkodC52YWx1ZXMuYWx0ZXJuYXRpdmUpKSl9cy5kKGUse2lzU2ZRdW90ZURhdGE6KCk9PmF9KX0sMjAyNDYwKHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse0Fic3RyYWN0SW5kaWNhdG9yOigpPT5sfSk7dmFyIGk9cygyMjEwNjEpLGE9cygxNTAxNTApLG89cygxNTk1MTMpO3MoMzQ0Nzg1KTtjb25zdCBuPSgwLGkuZ2V0TG9nZ2VyKSgiR1VJLkJsb2Nrcy5BYnN0cmFjdEluZGljYXRvciIpO2NsYXNzIGx7Y29uc3RydWN0b3IodCl7dGhpcy5fY2xhc3NTdWZmaXg9IiIsdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJhYnN0cmFjdC1pbmRpY2F0b3IiLHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9zaG93VG9vbHRpcD0hMCx0aGlzLl9zdWJzY3JpYmVkPSExLHRoaXMuX3Rvb2x0aXBUeXBlPSJjdXN0b20iLHRoaXMuX2xhc3RUb29sdGlwVGV4dD0iIix0aGlzLl9xdW90ZVNlc3Npb249dC5xdW90ZVNlc3Npb259Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy5fdmFsdWV9Z2V0VG9vbHRpcFRleHQoKXtyZXR1cm4gdGhpcy5fbGFiZWxNYXBbdGhpcy5fdmFsdWVdfHwiIn1nZXRMYWJlbCgpe3JldHVybiB0aGlzLl9sYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIifWdldEVsZW1lbnQoKXtyZXR1cm4gdGhpcy5fZWx9dXBkYXRlKHQsZSl7dGhpcy5fdXBkYXRlVmFsdWUodCxlKSx0aGlzLl9yZW5kZXIoKX1zZXRUb29sdGlwRW5hYmxlZCh0PSExKXt0aGlzLl9zaG93VG9vbHRpcCE9PXQmJih0aGlzLl9zaG93VG9vbHRpcD10LHRoaXMuX3JlbmRlclRvb2x0aXAoKSl9ZW5hYmxlU2hvcnRNb2RlKCl7ITAhPT10aGlzLl9zaG9ydE1vZGUmJih0aGlzLl9zaG9ydE1vZGU9ITAsdGhpcy5fcmVuZGVyKCkpfWRpc2FibGVTaG9ydE1vZGUoKXshMSE9PXRoaXMuX3Nob3J0TW9kZSYmKHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9yZW5kZXIoKSl9aXNTaG9ydE1vZGVFbmFibGVkKCl7cmV0dXJuIHRoaXMuX3Nob3J0TW9kZX1zdGFydCgpeyF0aGlzLl9zdWJzY3JpYmVkJiZ0aGlzLl9zeW1ib2xOYW1lJiYodGhpcy5fcXVvdGVTZXNzaW9ufHwodGhpcy5fcXVvdGVTZXNzaW9uPSgwLG8uZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSksdGhpcy5fcXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUsdGhpcy51cGRhdGUuYmluZCh0aGlzKSksdGhpcy5fc3Vic2NyaWJlZD0hMCl9c3RvcCgpe3RoaXMuX3N1YnNjcmliZWQmJnRoaXMuX3F1b3RlU2Vzc2lvbiYmdGhpcy5fc3ltYm9sTmFtZSYmKHRoaXMuX3F1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfXNldFNlc3Npb25TdGF0dXNJY29uKHQpe3RoaXMuX3Nlc3Npb25TdGF0dXNJY29uIT09dCYmKHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQsdGhpcy5fcmVuZGVyKCkpfV9pbml0KHQpe3RoaXMuX2VsPXQuZWw/dC5lbDpkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZWwuaW5uZXJIVE1MPSIiLHRoaXMuX2NsYXNzTWFwPXQuY2xhc3NNYXAsdGhpcy5faWNvbkNsYXNzTWFwPXQuaWNvbkNsYXNzTWFwLHRoaXMuX2xhYmVsTWFwPXQubGFiZWxNYXAsCnRoaXMuX3Nob3dUb29sdGlwPXQuc2hvd1Rvb2x0aXAsdGhpcy5fY2xhc3NTdWZmaXg9dC5jbGFzc1N1ZmZpeCx0aGlzLl9zeW1ib2xOYW1lPXQuc3ltYm9sLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQuc2Vzc2lvblN0YXR1c0ljb24sdGhpcy5fb25WYWx1ZUNoYW5nZT10Lm9uVmFsdWVDaGFuZ2UsdC50b29sdGlwVHlwZSYmKHRoaXMuX3Rvb2x0aXBUeXBlPXQudG9vbHRpcFR5cGUpLHRoaXMuX3F1b3RlU2Vzc2lvbkdVSUQ9KDAsYS5ndWlkKSgpLCEwPT09dC5zaG9ydCYmdGhpcy5lbmFibGVTaG9ydE1vZGUoKSx0LmRhdGEmJnRoaXMuX3VwZGF0ZVZhbHVlKHQuZGF0YSl9X2NsZWFyQ2xhc3Nlcygpe09iamVjdC52YWx1ZXModGhpcy5fY2xhc3NNYXApLm1hcCgodD0+e3RoaXMuX2VsLmNsYXNzTGlzdC5yZW1vdmUoYCR7dH1gKSx0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKGAke3R9JHt0aGlzLl9jbGFzc1N1ZmZpeH1gKX0pKX1fcmVuZGVyKCl7dGhpcy5fcmVuZGVyQ2xhc3NlcygpLHRoaXMuX3JlbmRlclRvb2x0aXAoKSx0aGlzLl9yZW5kZXJMYWJlbCgpfV9yZW5kZXJMYWJlbCgpe3RoaXMuX2VsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fdXBkYXRlVmFsdWUodCxlKXtjb25zdCBzPXRoaXMuX2dldFZhbHVlRnJvbURhdGEodCk7KGV8fHMhPT10aGlzLl92YWx1ZSkmJih0aGlzLl92YWx1ZT1zLHRoaXMuX29uVmFsdWVDaGFuZ2U/Lih0aGlzLl92YWx1ZSkpfV9yZW5kZXJDbGFzc2VzKCl7Y29uc3QgdD10aGlzLl9lbC5jbGFzc0xpc3Q7dC5hZGQodGhpcy5fY29tcG9uZW50Q2xhc3MsdGhpcy5fY29tcG9uZW50Q2xhc3MrdGhpcy5fY2xhc3NTdWZmaXgpO2NvbnN0IGU9dGhpcy5fY2xhc3NNYXBbdGhpcy5fdmFsdWVdO2Zvcihjb25zdCBzIGluIHRoaXMuX2NsYXNzTWFwKXtjb25zdCBpPXRoaXMuX2NsYXNzTWFwW3NdO2kmJihpPT09ZT8odC5hZGQoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5hZGQoaSsiX193aXRoSWNvbiIpKToodC5yZW1vdmUoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5yZW1vdmUoaSsiX193aXRoSWNvbiIpKSl9IWUmJnRoaXMuX3ZhbHVlJiZuLmxvZ1dhcm4oYG5vIGNsYXNzTmFtZSBmb3Igc3RhdHVzICR7dGhpcy5fdmFsdWV9YCl9X3JlbmRlclRvb2x0aXAoKXtjb25zdCB0PXRoaXMuX3Nob3dUb29sdGlwP3RoaXMuZ2V0VG9vbHRpcFRleHQoKToiIjt0IT09dGhpcy5fbGFzdFRvb2x0aXBUZXh0JiYodGhpcy5fbGFzdFRvb2x0aXBUZXh0PXQsdGhpcy5fZWwuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdCksImN1c3RvbSI9PT10aGlzLl90b29sdGlwVHlwZSYmdGhpcy5fZWwuY2xhc3NMaXN0LnRvZ2dsZSgiYXBwbHktY29tbW9uLXRvb2x0aXAiLHRoaXMuX3Nob3dUb29sdGlwKSl9X2dldFF1b3RlU2Vzc2lvbklkKCl7cmV0dXJuYCR7dGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4fS4ke3RoaXMuX3F1b3RlU2Vzc2lvbkdVSUR9YH19fSwzMDY5MCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtEYXRhTW9kZUluZGljYXRvcjooKT0+ZH0pO3ZhciBpLGE9cygxODUyNzEpLG89KHMoODI5MTgwKSxzKDQ1MDI5NSkscygyMDI0NjApKTshZnVuY3Rpb24odCl7dC5EZWxheWVkPSJkZWxheWVkIix0LkRlbGF5ZWRTdHJlYW1pbmc9ImRlbGF5ZWRfc3RyZWFtaW5nIix0LkVuZE9mRGF5PSJlbmRvZmRheSIsdC5TbmFwc2hvdD0ic25hcHNob3QiLHQuUmVhbHRpbWU9InJlYWx0aW1lIix0LkNvbm5lY3Rpbmc9ImNvbm5lY3RpbmciLHQuTG9hZGluZz0ibG9hZGluZyIsdC5JbnZhbGlkPSJpbnZhbGlkIix0LkZvcmJpZGRlbj0iZm9yYmlkZGVuIix0LlN0cmVhbWluZz0ic3RyZWFtaW5nIn0oaXx8KGk9e30pKTtjb25zdCBuPXtjb25uZWN0aW5nOiJ0di1kYXRhLW1vZGUtLWNvbm5lY3RpbmciLGRlbGF5ZWQ6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZGVsYXllZF9zdHJlYW1pbmc6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZW5kb2ZkYXk6InR2LWRhdGEtbW9kZS0tZW5kb2ZkYXkiLGZvcmJpZGRlbjoidHYtZGF0YS1tb2RlLS1mb3JiaWRkZW4iLHJlYWx0aW1lOiJ0di1kYXRhLW1vZGUtLXJlYWx0aW1lIixzbmFwc2hvdDoidHYtZGF0YS1tb2RlLS1zbmFwc2hvdCIsbG9hZGluZzoidHYtZGF0YS1tb2RlLS1sb2FkaW5nIixyZXBsYXk6InR2LWRhdGEtbW9kZS0tcmVwbGF5In07ZnVuY3Rpb24gbCgpe3JldHVybntjb25uZWN0aW5nOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfY29ubmVjdGluZ19sZXR0ZXIifSxzKDg1OTk5NCkpLGRlbGF5ZWQ6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX2xldHRlciJ9LHMoODkyMzYzKSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX3N0cmVhbWluZ19sZXR0ZXIifSxzKDM5NDUwMSkpLGVuZG9mZGF5OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfZW5kX29mX2RheV9sZXR0ZXIifSxzKDU3MDkzOSkpLGZvcmJpZGRlbjphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX2ZvcmJpZGRlbl9sZXR0ZXIifSxzKDM5NDkyMSkpLHJlYWx0aW1lOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfcmVhbHRpbWVfbGV0dGVyIn0scyg4NjY0NCkpLHNuYXBzaG90OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfc25hcHNob3RfbGV0dGVyIn0scygyNTczMjYpKSxsb2FkaW5nOiIiLHJlcGxheTphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX3JlcGxheV9sZXR0ZXIifSxzKDc1NjQ1NykpfX1jb25zdCByPXtzdHJlYW1pbmc6InJlYWx0aW1lIn07Y2xhc3MgZCBleHRlbmRzIG8uQWJzdHJhY3RJbmRpY2F0b3J7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJkYXRhLW1vZGUtaW5kaWNhdG9yIix0aGlzLl9jb21wb25lbnRDbGFzcz0idHYtZGF0YS1tb2RlIix0aGlzLl9pbml0KHQpfWdldExhYmVsKCl7cmV0dXJuITA9PT10aGlzLl9zaG9ydE1vZGU/dGhpcy5fc2hvcnRMYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIiOnN1cGVyLmdldExhYmVsKCl9CnNldE1vZGUodCxlKXt0aGlzLnVwZGF0ZSh7dmFsdWVzOnt1cGRhdGVfbW9kZTp0LHVwZGF0ZV9tb2RlX3NlY29uZHM6ZX19KX1oaWRlKCl7dGhpcy5fZWwuY2xhc3NMaXN0LmFkZCgiaS1oaWRkZW4iKX1zaG93KCl7dGhpcy5fZWwuY2xhc3NMaXN0LnJlbW92ZSgiaS1oaWRkZW4iKX1nZXRUb29sdGlwVGV4dCgpe2xldCB0PSIiO2NvbnN0IGU9dGhpcy5nZXRWYWx1ZSgpO2lmKCIiPT09ZSlyZXR1cm4gdDtzd2l0Y2goZSl7Y2FzZSJkZWxheWVkIjp0PWEudChudWxsLHZvaWQgMCxzKDc5MDUyNCkpO2JyZWFrO2Nhc2UiZGVsYXllZF9zdHJlYW1pbmciOnQ9YS50KG51bGwsdm9pZCAwLHMoODE0NjEpKTticmVhaztkZWZhdWx0OnQ9dGhpcy5fbGFiZWxNYXBbZV18fHR9cmV0dXJuWyJkZWxheWVkIiwiZGVsYXllZF9zdHJlYW1pbmciXS5pbmNsdWRlcyhlKSYmKHQ9dC5mb3JtYXQoe251bWJlcjpTdHJpbmcoTWF0aC5yb3VuZCh0aGlzLl9tb2RlSW50ZXJ2YWwvNjApKX0pKSx0fV9pbml0KHQ9e30pe2NvbnN0IGU9T2JqZWN0LmFzc2lnbih7fSx7Y2xhc3NNYXA6bixjbGFzc1N1ZmZpeDoiIixkYXRhOnt2YWx1ZXM6e3VwZGF0ZV9tb2RlOiJjb25uZWN0aW5nIn19LGxhYmVsTWFwOntjb25uZWN0aW5nOmEudChudWxsLHZvaWQgMCxzKDE5NDE5NCkpLGRlbGF5ZWQ6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZW5kb2ZkYXk6YS50KG51bGwsdm9pZCAwLHMoNjAxNzY0KSksZm9yYmlkZGVuOmEudChudWxsLHZvaWQgMCxzKDMyODMxMykpLHJlYWx0aW1lOmEudChudWxsLHZvaWQgMCxzKDg4MzkyOCkpLHNuYXBzaG90OmEudChudWxsLHZvaWQgMCxzKDU2MjM5NSkpLGxvYWRpbmc6IiIscmVwbGF5OmEudChudWxsLHZvaWQgMCxzKDk3NzI3KSl9LG1vZGVJbnRlcnZhbDo2MDAsc2hvcnQ6ITEsc2hvcnRMYWJlbE1hcDpsKCksc2hvd1Rvb2x0aXA6ITAsdG9vbHRpcFR5cGU6ImN1c3RvbSJ9LHQpO3RoaXMuX21vZGVJbnRlcnZhbD1lLm1vZGVJbnRlcnZhbHx8NjAwLHRoaXMuX3Nob3J0TGFiZWxNYXA9ZS5zaG9ydExhYmVsTWFwfHxsKCksc3VwZXIuX2luaXQoZSksdGhpcy5fcmVuZGVyKCl9X2dldFZhbHVlRnJvbURhdGEodCl7bGV0IGU7cmV0dXJuIGU9dm9pZCAwIT09dC52YWx1ZXMmJnZvaWQgMCE9PXQudmFsdWVzLnVwZGF0ZV9tb2RlP3QudmFsdWVzLnVwZGF0ZV9tb2RlOnRoaXMuZ2V0VmFsdWUoKSxyW2VdfHxlfV91cGRhdGVWYWx1ZSh0LGUpe3ZvaWQgMCE9PXQudmFsdWVzJiZ2b2lkIDAhPT10LnZhbHVlcy51cGRhdGVfbW9kZV9zZWNvbmRzJiYodGhpcy5fbW9kZUludGVydmFsPXQudmFsdWVzLnVwZGF0ZV9tb2RlX3NlY29uZHMpLHN1cGVyLl91cGRhdGVWYWx1ZSh0LGUpfX19LDU2MzkxOCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtNYXJrZXRTdGF0dXNJbmRpY2F0b3I6KCk9Pmx9KTt2YXIgaT1zKDE4NTI3MSksYT1zKDIwMjQ2MCk7cyg0NjIzNSk7Y29uc3Qgbz17aW52YWxpZDoidHYtbWFya2V0LXN0YXR1cy0taW52YWxpZCIsbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQiLG91dF9vZl9zZXNzaW9uOiJ0di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbiIscG9zdF9tYXJrZXQ6InR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0IixwcmVfbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1wcmUtbWFya2V0IixuaWdodDoidHYtbWFya2V0LXN0YXR1cy0tbmlnaHQiLGxvYWRpbmc6InR2LW1hcmtldC1zdGF0dXMtLWxvYWRpbmciLGhvbGlkYXk6InR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXkiLHJlcGxheToidHYtbWFya2V0LXN0YXR1cy0tcmVwbGF5IixkZWxpc3RlZDoidHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQifSxuPXtpbnZhbGlkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1pbnZhbGlkIixtYXJrZXQ6InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW1hcmtldCIsb3V0X29mX3Nlc3Npb246InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW91dC1vZi1zZXNzaW9uIixwb3N0X21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcG9zdC1tYXJrZXQiLG5pZ2h0OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1uaWdodCIscHJlX21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcHJlLW1hcmtldCIsbG9hZGluZzoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tbG9hZGluZyIsaG9saWRheToidHYtbWFya2V0LXN0YXR1c19faWNvbi0taG9saWRheSIscmVwbGF5OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1yZXBsYXkiLGRlbGlzdGVkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1kZWxpc3RlZCJ9O2NsYXNzIGwgZXh0ZW5kcyBhLkFic3RyYWN0SW5kaWNhdG9ye2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXMuX3F1b3RlU2Vzc2lvblByZWZpeD0ibWFya2V0LXN0YXR1cy1pbmRpY2F0b3IiLHRoaXMuX2NvbXBvbmVudENsYXNzPSJ0di1tYXJrZXQtc3RhdHVzIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2luaXQodCl9c2V0U3RhdHVzKHQsZSl7Y29uc3Qgcz17dmFsdWVzOntjdXJyZW50X3Nlc3Npb246ImRlbGlzdGVkIj09PXRoaXMuZ2V0VmFsdWUoKT8iZGVsaXN0ZWQiOnR9fTt0aGlzLnVwZGF0ZShzLGUpfWdldFRvb2x0aXBUZXh0KCl7bGV0IHQ9c3VwZXIuZ2V0VG9vbHRpcFRleHQoKTtyZXR1cm4iIj09PXR8fCIiIT09dGhpcy5fZXh0cmFUaXRsZSYmKHQ9YCR7dH0sICR7dGhpcy5fZXh0cmFUaXRsZX1gKSx0fXNldEV4dHJhVGl0bGUodCl7dGhpcy5fZXh0cmFUaXRsZT10fXJlc2V0KCl7dGhpcy5fY2xlYXJDbGFzc2VzKCksdGhpcy5fbGFiZWxFbC50ZXh0Q29udGVudD0iIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2VsLnNldEF0dHJpYnV0ZSgidGl0bGUiLCIiKSx0aGlzLl92YWx1ZT0iIn1lbmFibGVTaG9ydE1vZGUodD0hMCl7dm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpLHN1cGVyLmVuYWJsZVNob3J0TW9kZSgpfWRpc2FibGVTaG9ydE1vZGUoKXsKdm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpLHN1cGVyLmRpc2FibGVTaG9ydE1vZGUoKX1fcmVuZGVyTGFiZWwoKXt0aGlzLl9sYWJlbEVsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fZ2V0VmFsdWVGcm9tRGF0YSh0KXtyZXR1cm4gdC52YWx1ZXM/LnR5cGVzcGVjcz8uaW5jbHVkZXMoImRpc2NvbnRpbnVlZCIpPyJkZWxpc3RlZCI6dm9pZCAwIT09dC52YWx1ZXM/LmN1cnJlbnRfc2Vzc2lvbj90LnZhbHVlcy5jdXJyZW50X3Nlc3Npb246dGhpcy5nZXRWYWx1ZSgpfV9yZW5kZXIoKXt0aGlzLl9yZW5kZXJMYWJlbEVsZW1lbnQoKSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbj90aGlzLl9yZW5kZXJJY29uRWxlbWVudCgpOnRoaXMuX3JlbmRlckRvdEVsZW1lbnQoKSxzdXBlci5fcmVuZGVyKCl9X2luaXQodCl7Y29uc3QgZT1PYmplY3QuYXNzaWduKHt9LGZ1bmN0aW9uKCl7Y29uc3QgdD17aW52YWxpZDppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoNjM4NDA1KSksbWFya2V0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg3MDI3ODgpKSxvdXRfb2Zfc2Vzc2lvbjppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoOTE0NTcyKSkscG9zdF9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDg2NzQ1NSkpLHByZV9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDkxODg0MikpLGxvYWRpbmc6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDI3NDQxNSkpLGhvbGlkYXk6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDY4NTEwNCkpLGRlbGlzdGVkOmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg1NTIxNSkpLG5pZ2h0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg4OTc1OTEpKSxyZXBsYXk6IiJ9O3JldHVybntjbGFzc01hcDpvLGljb25DbGFzc01hcDpuLGNsYXNzU3VmZml4OiIiLGRhdGE6e30sZXh0cmFUaXRsZToiIixsYWJlbE1hcDp0LHNob3J0OiExLHNob3dUb29sdGlwOiEwLHRvb2x0aXBUeXBlOiJjdXN0b20ifX0oKSx0KTtzdXBlci5faW5pdChlKSx0aGlzLnNldEV4dHJhVGl0bGUoZS5leHRyYVRpdGxlKSx0aGlzLl9yZW5kZXIoKX1fcmVuZGVyTGFiZWxFbGVtZW50KCl7dm9pZCAwPT09dGhpcy5fbGFiZWxFbCYmKHRoaXMuX2xhYmVsRWw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpLHRoaXMuX2xhYmVsRWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2xhYmVsYCksdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKGAke3RoaXMuX2NvbXBvbmVudENsYXNzfV9fbGFiZWwke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2xhYmVsRWwpKX1fcmVuZGVyRG90RWxlbWVudCgpe3RoaXMuX2VsLmNvbnRhaW5zKHRoaXMuX2ljb25FbCkmJnRoaXMuX2VsLnJlbW92ZUNoaWxkKHRoaXMuX2ljb25FbCksdm9pZCAwPT09dGhpcy5fZG90RWwmJih0aGlzLl9kb3RFbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZG90RWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2RvdGApLHRoaXMuX2RvdEVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19kb3Qke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2RvdEVsKSl9X3JlbmRlckljb25FbGVtZW50KCl7dGhpcy5fZWwuY29udGFpbnModGhpcy5fZG90RWwpJiZ0aGlzLl9lbC5yZW1vdmVDaGlsZCh0aGlzLl9kb3RFbCksdm9pZCAwPT09dGhpcy5faWNvbkVsJiZ0aGlzLl92YWx1ZSYmKHRoaXMuX2ljb25FbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uYCksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uJHt0aGlzLl9jbGFzc1N1ZmZpeH1gKSx0aGlzLl9lbC5hcHBlbmRDaGlsZCh0aGlzLl9pY29uRWwpKX19fSw4OTE3NzgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UHJpY2VDb2xvcmVyOigpPT5pfSk7dmFyIGksYT1zKDIxODgxNCksbz1zKDUwNTU2KTshZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSh0LGUpe3JldHVybiAwPT09dD9lJiZ2b2lkIDAhPT1lLm5ldXRyYWw/ZS5uZXV0cmFsOmEuY29sb3IuYmxhY2s3MDp0PjA/ZSYmdm9pZCAwIT09ZS51cD9lLnVwOm8uY29sb3JzUGFsZXR0ZVsiY29sb3Itc3VjY2VzcyJdOmUmJnZvaWQgMCE9PWUuZG93bj9lLmRvd246by5jb2xvcnNQYWxldHRlWyJjb2xvci1kYW5nZXIiXX10LmZvcm1hdFNpZ249ZSx0LmZvcm1hdERpZmY9ZnVuY3Rpb24odCxzKXtyZXR1cm4gZShzLXQpfSx0LmRvbURpZmZlcmVuY2U9ZnVuY3Rpb24odCxlLHM9MCxpPSIiLGE9IiIpe2Z1bmN0aW9uIG8odCl7Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPXQsZX1jb25zdCBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKCFzKXJldHVybiBuLmFwcGVuZENoaWxkKG8odCkpLG47Y29uc3QgbD10KyIiLHI9ZSsiIjtsZXQgZD1udWxsO2lmKGwubGVuZ3RoPT09ci5sZW5ndGgpe2ZvcihsZXQgdD0wO3Q8bC5sZW5ndGg7dCsrKWlmKGwuY2hhckF0KHQpIT09ci5jaGFyQXQodCkpe2Q9dDticmVha319ZWxzZSBkPU51bWJlcigiMCIpO2lmKG51bGw9PT1kKXJldHVybiBuLmFwcGVuZENoaWxkKG8obCkpLG47Y29uc3QgXz1vKGwuc3Vic3RyaW5nKDAsZCkpLHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiB1LmNsYXNzTmFtZT1zPDA/aTphLHUuYXBwZW5kQ2hpbGQobyhsLnN1YnN0cmluZyhkKSkpLG4uYXBwZW5kQ2hpbGQoXyksbi5hcHBlbmRDaGlsZCh1KSxufX0oaXx8KGk9e30pKX19XSk7"}},"time_used":3,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/start-ico1.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.941Z","timestamp":1785159267941,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/start-ico1.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"b10-66136805-3d63cfb216c5bd32;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2832\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2832,"size_decoded":3157,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"9cc30e51d9085386bb96b7c1b91f8ebc","sha1":"f22204bc5a084e1c283caa78a615b8d3ed040448","sha256":"33107123b6ce69d5b611c84973fa53525ac1d9231321b93334599e061ffc5bf9","sha512":"ff5b58152715244931664c469ab023bca5fef5884bb954d9b0da0daf4bbc251c8924666125fff7b7357a656f25c2a3b65107c12b17aab7ceac8db3ecbb7d05f2","ssdeep":"","tlshash":"df512a014b34d412829ee96100ebcd27e3468fd3d6a8a015268fccfb0f98259d85e287","first_seen":"2026-07-27T07:08:39.263827Z","last_seen":"2026-07-27T13:35:41.574687Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NzQ5NzI2QTIxQkEzMTFFQzg1RjFDQ0FEOTFBNDY2NzciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzQ5NzI2QTMxQkEzMTFFQzg1RjFDQ0FEOTFBNDY2NzciPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NDk3MjZBMDFCQTMxMUVDODVGMUNDQUQ5MUE0NjY3NyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NDk3MjZBMTFCQTMxMUVDODVGMUNDQUQ5MUE0NjY3NyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsihgZoAAAeESURBVHja7Jp5bBRV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"}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":38,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/pay-ico1.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.976Z","timestamp":1785159267976,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/pay-ico1.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"ef2-66136805-fb40d654f9600164;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3826\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3826,"size_decoded":4151,"mime_type":"image/png","magic":"PNG image data, 162 x 41, 8-bit/color RGBA, non-interlaced","md5":"2f464cf4cd77ae041f3ddb8978052ca8","sha1":"8b76394bb9c5fb833dcc6308c0b44363dd1ef607","sha256":"3338c41e83d1d11a414b460205f63e89752f1ba08cfe713c89c260463484afca","sha512":"e9c2bad33ce2cf3edb12e9ebfc07b1189d638974fd29f06f76c2f1a5e5340d9095a93b98ec2572563581d6ed2a8f7e2c0e7ea2bebc17d3b5dcdade529b756c79","ssdeep":"","tlshash":"3a816dab9701b8056e19daf215df88699e0f0dc0ebd4a773a5cada07611149f60634e3","first_seen":"2026-03-30T05:38:35.878589Z","last_seen":"2026-07-27T13:35:41.677596Z","times_seen":4,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAKIAAAApCAYAAAC2hfIAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QjAxQkRBQzcxQjhGMTFFQ0IzRUNFQUJERUM5QjJFQzgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QjAxQkRBQzgxQjhGMTFFQ0IzRUNFQUJERUM5QjJFQzgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCMDFCREFDNTFCOEYxMUVDQjNFQ0VBQkRFQzlCMkVDOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCMDFCREFDNjFCOEYxMUVDQjNFQ0VBQkRFQzlCMkVDOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PrhYk3sAAAtmSURBVHja7F17cFxV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"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.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\u0026sparkline=0\u0026pref_coin_id=1505","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":"fetch","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.466Z","timestamp":1785159268466,"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 /api/v1/widget?top=50\u0026sparkline=0\u0026pref_coin_id=1505 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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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":"HTTP/3 200 \r\nage: 213\r\ncache-control: public, max-age=120, s-maxage=300, stale-while-revalidate=600\r\ncdn-cache-control: public, s-maxage=60, stale-while-revalidate=300\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/json\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\netag: W/\"PlNTCLYIYxnMX477q+fZDhoEtvc=\"\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: DENY\r\nx-matched-path: /api/v1/widget\r\nx-vercel-cache: HIT\r\nx-vercel-id: arn1::iad1::7gvpm-1785159268476-55cc174a65ff\r\nx-xss-protection: 1; mode=block\r\ncf-cache-status: DYNAMIC\r\npriority: u=4,i=?0\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=f15UCiOg4r83tUhg7TJbn0CVT4ShZYnIptsP1XvHr6bb513QTR4vTNdbod40%2B0%2BOL%2BX7Dv%2FOJcfP159gexHPZpJ4Au0lJyejnBOhMx7bEfu5t16n1i%2FWz1e%2BevxT\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncf-ray: a21c0593e95256a3-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":22261,"size_decoded":7552,"mime_type":"application/json","magic":"JSON text data","md5":"ebaed679bc1059747935ffabc9f54cdc","sha1":"3e535308b6086319cc5f8efbabe7d90e1a04b6f7","sha256":"ede194078c8cfa7c1ce10393d81b5b8d4068853fdd1afaa3b2b89cd21fb7d449","sha512":"a8ea0ae455b81eceab2a88f7745c88748639ce96f398d214d0b7f898f1a7a1456bf30921324f1969a4e2d077a29fbd712a9ac076bbacfb1b59dabb1fb277f34b","ssdeep":"192:rWTsz1fEFiNRGLhY8qJ0Zy11MkajCyfygPZLZ8Ag6uk8:rWTszlnNRGLhY8M1ufx6QDKk8","tlshash":"96a20e4709305cdbc67002b879a77b6c582e66ca8cee9d4bc1dd8e9e04686f7131af4d","first_seen":"2026-07-27T13:32:01.689998Z","last_seen":"2026-07-27T13:35:41.61407Z","times_seen":3,"resource_available":false,"data":"eyJkYXRhIjpbeyJpZCI6MSwic2x1ZyI6ImJpdGNvaW4iLCJzeW1ib2wiOiJCVEMiLCJuYW1lIjoiQml0Y29pbiIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzEucG5nIiwicHJpY2VfdXNkIjo2NDg5NS4zODYyOTU1MDE2OTYsIm1hcmtldF9jYXAiOjEzMDE5MzAzOTYyMjAuMzMzMywidm9sdW1lXzI0aCI6MjE3NDYyMTQwNjIuMjMxMzU4LCJyYW5rIjoxLCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMTIwMDc0ODksInBlcmNlbnRfY2hhbmdlXzI0aCI6MC43NDk2Mzg3NywicGVyY2VudF9jaGFuZ2VfN2QiOjAuNjQ0NDUzNzcsImNpcmN1bGF0aW5nX3N1cHBseSI6MjAwNjE5ODcsInRvdGFsX3N1cHBseSI6MjAwNjE5ODcsIm1heF9zdXBwbHkiOjIxMDAwMDAwLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjEwMjcsInNsdWciOiJldGhlcmV1bSIsInN5bWJvbCI6IkVUSCIsIm5hbWUiOiJFdGhlcmV1bSIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzEwMjcucG5nIiwicHJpY2VfdXNkIjoxOTUxLjMwOTM2OTgzNjc3MTgsIm1hcmtldF9jYXAiOjIzNTQ4OTE1ODExNi43NjA0LCJ2b2x1bWVfMjRoIjoxMTA2ODg5OTYyNC42MzE2ODcsInJhbmsiOjIsInBlcmNlbnRfY2hhbmdlXzFoIjowLjIxNjY1MTI4LCJwZXJjZW50X2NoYW5nZV8yNGgiOjMuNDk4MTg1MDYsInBlcmNlbnRfY2hhbmdlXzdkIjo0LjQ2NjA3OTg4LCJjaXJjdWxhdGluZ19zdXBwbHkiOjEyMDY4MjYzNS44NTMxMDM3MSwidG90YWxfc3VwcGx5IjoxMjA2ODI2MzUuODUzMTAzNzEsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6ODI1LCJzbHVnIjoidGV0aGVyIiwic3ltYm9sIjoiVVNEVCIsIm5hbWUiOiJUZXRoZXIgVVNEdCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzgyNS5wbmciLCJwcmljZV91c2QiOjAuOTk5MDA1NTY5NjE2NzI0NCwibWFya2V0X2NhcCI6MTgzOTQzNjIwNzU5LjY1NTE4LCJ2b2x1bWVfMjRoIjo0OTA5NjkxOTY4NS45MDAwOCwicmFuayI6MywicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjAxMjkwMTg5LCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAyMjQ1NDcyLCJwZXJjZW50X2NoYW5nZV83ZCI6MC4wMDcwMTA5NCwiY2lyY3VsYXRpbmdfc3VwcGx5IjoxODQxMjY3MjE5NjYuMzUxNDcsInRvdGFsX3N1cHBseSI6MTg5MTA2NzI0MDE4LjYzOTYsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MTgzOSwic2x1ZyI6ImJuYiIsInN5bWJvbCI6IkJOQiIsIm5hbWUiOiJCTkIiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8xODM5LnBuZyIsInByaWNlX3VzZCI6NTcyLjkwOTk1MzM4NzM1OTksIm1hcmtldF9jYXAiOjc2MjkxOTEzMzgwLjgwMzQ0LCJ2b2x1bWVfMjRoIjo4ODM2MjA5NjYuMTE1MzYxMSwicmFuayI6NCwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMTk5MjcwOTYsInBlcmNlbnRfY2hhbmdlXzI0aCI6MC40NjY2NTk0NiwicGVyY2VudF9jaGFuZ2VfN2QiOjAuODcyNjQ4MiwiY2lyY3VsYXRpbmdfc3VwcGx5IjoxMzMxNjU2MjcuMzksInRvdGFsX3N1cHBseSI6MTMzMTY1NjI3LjM5LCJtYXhfc3VwcGx5IjoxMzMxNjU2MjguNDUsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MzQwOCwic2x1ZyI6InVzZC1jb2luIiwic3ltYm9sIjoiVVNEQyIsIm5hbWUiOiJVU0RDIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMzQwOC5wbmciLCJwcmljZV91c2QiOjAuOTk5ODgwNTM4ODEzODU4MSwibWFya2V0X2NhcCI6NzI1MDI0NDM2MDQuNzIwOSwidm9sdW1lXzI0aCI6ODY5MjU3NjMyMi4wMDEyNywicmFuayI6NSwicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjAwMTE5MDIyLCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAxMDQ5NzU0LCJwZXJjZW50X2NoYW5nZV83ZCI6LTAuMDAwOTUwMDIsImNpcmN1bGF0aW5nX3N1cHBseSI6NzI1MTExMDU4NjcuNDM2MjgsInRvdGFsX3N1cHBseSI6NzI1MTExMDU4NjcuNDM2MjgsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6NTIsInNsdWciOiJ4cnAiLCJzeW1ib2wiOiJYUlAiLCJuYW1lIjoiWFJQIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvNTIucG5nIiwicHJpY2VfdXNkIjoxLjEwMTk0MzE3MTU5OTgxOTEsIm1hcmtldF9jYXAiOjY4OTA4MTEyMDI4LjYwNjcyLCJ2b2x1bWVfMjRoIjo4MTc5MjYxNDYuOTkzNjMyNiwicmFuayI6NiwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMTAyNzAxMjYsInBlcmNlbnRfY2hhbmdlXzI0aCI6MC40NjU0OTEzMSwicGVyY2VudF9jaGFuZ2VfN2QiOjAuNDQ3MDQ1MjgsImNpcmN1bGF0aW5nX3N1cHBseSI6NjI1MzMyNzE5NTUsInRvdGFsX3N1cHBseSI6OTk5ODU2MzU3MDcsIm1heF9zdXBwbHkiOjEwMDAwMDAwMDAwMCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjo1NDI2LCJzbHVnIjoic29sYW5hIiwic3ltYm9sIjoiU09MIiwibmFtZSI6IlNvbGFuYSIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzU0MjYucG5nIiwicHJpY2VfdXNkIjo3Ni40NzYyNzYwMjQ1MTk5MiwibWFya2V0X2NhcCI6NDQ1OTI5MjQ5NjguODEwNzYsInZvbHVtZV8yNGgiOjE0MjMyNzA2NzQuMzE1MDIxLCJyYW5rIjo3LCJwZXJjZW50X2NoYW5nZV8xaCI6MC4wNjk3NDU5NSwicGVyY2VudF9jaGFuZ2VfMjRoIjoyLjE0NjY0MzU3LCJwZXJjZW50X2NoYW5nZV83ZCI6LTAuMTU2ODUzNjIsImNpcmN1bGF0aW5nX3N1cHBseSI6NTgzMDk0ODc5LjcwNTA5MDgsInRvdGFsX3N1cHBseSI6NjMxMTIyODUxLjczNzU0NzQsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MTk1OCwic2x1ZyI6InRyb24iLCJzeW1ib2wiOiJUUlgiLCJuYW1lIjoiVFJPTiIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzE5NTgucG5nIiwicHJpY2VfdXNkIjowLjMzMDQ5MzcxODA4MjE2MTEsIm1hcmtldF9jYXAiOjMxMzU4NjA0ODk3LjU3NTg2Nywidm9sdW1lXzI0aCI6MzM0ODI3MTkyLjk1NDUyMTgsInJhbmsiOjgsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4wMTMwMDcyNywicGVyY2VudF9jaGFuZ2VfMjRoIjotMC41ODk4MTg4LCJwZXJjZW50X2NoYW5nZV83ZCI6MS40NzQ0MDg0NywiY2lyY3VsYXRpbmdfc3VwcGx5Ijo5NDg4NDExNzg1Ny4yMTE2OSwidG90YWxfc3VwcGx5Ijo5NDg4NDExOTkwNi41MDI1OCwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjozMjE5Niwic2x1ZyI6Imh5cGVybGlxdWlkIiwic3ltYm9sIjoiSFlQRSIsIm5hbWUiOiJIeXBlcmxpcXVpZCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzMyMTk2LnBuZyIsInByaWNlX3VzZCI6NTkuNDA3NTg4MDc4NDkxMDk1LCJtYXJrZXRfY2FwIjoxNTAxMTI3NDM2NC4xOTc4MTUsInZvbHVtZV8yNGgiOjI3MjIzMzUwMi4xOTA3MjcyLCJyYW5rIjo5LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMjk4MDk0NTgsInBlcmNlbnRfY2hhbmdlXzI0aCI6MS4yMzc1OTI1MSwicGVyY2VudF9jaGFuZ2VfN2QiOi0yLjU3ODQ3OTI1LCJjaXJjdWxhdGluZ19zdXBwbHkiOjI1MjY4Mjc3Ny41NjY0Njk1OCwidG90YWxfc3VwcGx5Ijo5NTMwMzkzNDUuNzIwMzI0NCwibWF4X3N1cHBseSI6OTUzMDQwMTI5LjU5ODYwMzEsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6NzQsInNsdWciOiJkb2dlY29pbiIsInN5bWJvbCI6IkRPR0UiLCJuYW1lIjoiRG9nZWNvaW4iLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC83NC5wbmciLCJwcmljZV91c2QiOjAuMDcyNTUxMzA2OTc1NTg3MDgsIm1hcmtldF9jYXAiOjExMjYzMTM1OTc0LjQxMTMwOCwidm9sdW1lXzI0aCI6NDg4ODEwNjg3LjIyMTU5Mjk2LCJyYW5rIjoxMCwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMTE0MjUzNTYsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTAuNjA2OTYzOTcsInBlcmNlbnRfY2hhbmdlXzdkIjowLjIzMDg4ODM5LCJjaXJjdWxhdGluZ19zdXBwbHkiOjE1NTI0MzczNjM4My43MDUxNCwidG90YWxfc3VwcGx5IjoxNTUyNDM3MzYzODMuNzA1MTQsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6Mzk1Nywic2x1ZyI6InVudXMtc2VkLWxlbyIsInN5bWJvbCI6IkxFTyIsIm5hbWUiOiJVTlVTIFNFRCBMRU8iLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8zOTU3LnBuZyIsInByaWNlX3VzZCI6OS43MDIzNDAyMjY0MTkxMjgsIm1hcmtldF9jYXAiOjg5MjcyMDA3NzIuNzU4NzU1LCJ2b2x1bWVfMjRoIjoxNzc0NTUuMDIyNjYxNjcsInJhbmsiOjExLCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDMwMTQxMywicGVyY2VudF9jaGFuZ2VfMjRoIjotMC4xMjQzMDc2NywicGVyY2VudF9jaGFuZ2VfN2QiOjAuMzAzODg4MjQsImNpcmN1bGF0aW5nX3N1cHBseSI6OTIwMTA3OTkwLjksInRvdGFsX3N1cHBseSI6OTg1MjM5NTA0LCJtYXhfc3VwcGx5IjpudWxsLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjE0MzcsInNsdWciOiJ6Y2FzaCIsInN5bWJvbCI6IlpFQyIsIm5hbWUiOiJaY2FzaCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzE0MzcucG5nIiwicHJpY2VfdXNkIjo1MDEuMjM2NTc3ODM5NTU2OTYsIm1hcmtldF9jYXAiOjg0MTY1NzQ3MjkuMzk1OTQ4LCJ2b2x1bWVfMjRoIjozNDkwNDI0NTAuNjMyNTM1NzYsInJhbmsiOjEyLCJwZXJjZW50X2NoYW5nZV8xaCI6MC4zMjI1NTA3NywicGVyY2VudF9jaGFuZ2VfMjRoIjoyLjA0MTAzNTU4LCJwZXJjZW50X2NoYW5nZV83ZCI6LTYuMTU3OTgxNzksImNpcmN1bGF0aW5nX3N1cHBseSI6MTY3OTE2MjEuMTY1NTQ0OCwidG90YWxfc3VwcGx5IjoxNjc5MTYyMS4xNjU1NDQ4LCJtYXhfc3VwcGx5IjoyMTAwMDAwMCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjozMjgsInNsdWciOiJtb25lcm8iLCJzeW1ib2wiOiJYTVIiLCJuYW1lIjoiTW9uZXJvIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMzI4LnBuZyIsInByaWNlX3VzZCI6MzQ4LjQwMDkyMjUxNDcyOTY0LCJtYXJrZXRfY2FwIjo2NTQ0MTYzMDU2LjM5NzY2Miwidm9sdW1lXzI0aCI6ODI3MDQwMDkuOTc1Mjg2MjIsInJhbmsiOjEzLCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuNzc5NTA3NzIsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTMuOTA1MjU4MDQsInBlcmNlbnRfY2hhbmdlXzdkIjozLjc4MzE0MTYyLCJjaXJjdWxhdGluZ19zdXBwbHkiOjE4NzgzNDI2LjMxNTc1ODM2LCJ0b3RhbF9zdXBwbHkiOjE4NzgzNDI2LjMxNTc1ODM2LCJtYXhfc3VwcGx5IjpudWxsLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjE5NzUsInNsdWciOiJjaGFpbmxpbmsiLCJzeW1ib2wiOiJMSU5LIiwibmFtZSI6IkNoYWlubGluayIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzE5NzUucG5nIiwicHJpY2VfdXNkIjo4LjcyMDIxMjc5OTc0MjY1LCJtYXJrZXRfY2FwIjo2NTIzNTkwOTM3LjU4NjE3MSwidm9sdW1lXzI0aCI6MjY4NTA4MjcyLjg0Njg2MTksInJhbmsiOjE0LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMTU4OTkxMTIsInBlcmNlbnRfY2hhbmdlXzI0aCI6My4yMDY0OTk2LCJwZXJjZW50X2NoYW5nZV83ZCI6My4yNzM1MDkxOSwiY2lyY3VsYXRpbmdfc3VwcGx5Ijo3NDgwOTk5NzAuNDI0ODg0LCJ0b3RhbF9zdXBwbHkiOjEwMDAwMDAwMDAsIm1heF9zdXBwbHkiOjEwMDAwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6NTEyLCJzbHVnIjoic3RlbGxhciIsInN5bWJvbCI6IlhMTSIsIm5hbWUiOiJTdGVsbGFyIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvNTEyLnBuZyIsInByaWNlX3VzZCI6MC4xODA0OTkxOTgwOTQ5OTk0OCwibWFya2V0X2NhcCI6NjE3MjI5MTU3OS4xNDk3MSwidm9sdW1lXzI0aCI6OTQ5MzY3NzUuODQ5NzE2NCwicmFuayI6MTUsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4yMTM1MjgxMiwicGVyY2VudF9jaGFuZ2VfMjRoIjoxLjQwMjQ1NTUsInBlcmNlbnRfY2hhbmdlXzdkIjotMy4zNDA3NDkwOCwiY2lyY3VsYXRpbmdfc3VwcGx5IjozNDE5NTY3MzEzNC43OTc3NDUsInRvdGFsX3N1cHBseSI6NTAwMDE3ODY4MzkuOTEyNDc2LCJtYXhfc3VwcGx5Ijo1MDAwMTgwNjgxMiwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjoyMDEwLCJzbHVnIjoiY2FyZGFubyIsInN5bWJvbCI6IkFEQSIsIm5hbWUiOiJDYXJkYW5vIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMjAxMC5wbmciLCJwcmljZV91c2QiOjAuMTYzMjcwNDMwNzkwNjQ3OTMsIm1hcmtldF9jYXAiOjU5NTc3MjE1OTYuNTAwMDYyLCJ2b2x1bWVfMjRoIjoxNjYwOTc2MjEuOTgxNDIxMDUsInJhbmsiOjE2LCJwZXJjZW50X2NoYW5nZV8xaCI6MC4wNjEyOTk1MiwicGVyY2VudF9jaGFuZ2VfMjRoIjotMC43NTAxMjc4MiwicGVyY2VudF9jaGFuZ2VfN2QiOi0wLjI2NzY2NjQxLCJjaXJjdWxhdGluZ19zdXBwbHkiOjM2NDg5ODk5NDExLjk3MTg5LCJ0b3RhbF9zdXBwbHkiOjQ0OTkzMjAyNjUyLjM4NjU2NiwibWF4X3N1cHBseSI6NDUwMDAwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MzcyNjMsInNsdWciOiJjYW50b24tbmV0d29yayIsInN5bWJvbCI6IkNDIiwibmFtZSI6IkNhbnRvbiIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzM3MjYzLnBuZyIsInByaWNlX3VzZCI6MC4xMjI1Njc0MDAxNTEwMTkxNSwibWFya2V0X2NhcCI6NDgwMDUwMzYwNy4yNjY4NDk1LCJ2b2x1bWVfMjRoIjoxMDc5NDE5NS4wMzA3MDIzNywicmFuayI6MTcsInBlcmNlbnRfY2hhbmdlXzFoIjotMC42MjMwMDcyNiwicGVyY2VudF9jaGFuZ2VfMjRoIjotMC40NzgwOTQ5NSwicGVyY2VudF9jaGFuZ2VfN2QiOi0wLjQyMTk1Mjk1LCJjaXJjdWxhdGluZ19zdXBwbHkiOjM5MTY2MjM1MDc4LjQzMDMsInRvdGFsX3N1cHBseSI6MzkxNjYyMzUwNzguNDMwMywibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjo0OTQzLCJzbHVnIjoibXVsdGktY29sbGF0ZXJhbC1kYWkiLCJzeW1ib2wiOiJEQUkiLCJuYW1lIjoiRGFpIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvNDk0My5wbmciLCJwcmljZV91c2QiOjAuOTk5NzY1MTY5NDc3NDg1OCwibWFya2V0X2NhcCI6NDYwOTMzMDI2OS43ODEyNjQsInZvbHVtZV8yNGgiOjI1ODE5MTgyLjUwMzkxNzcyLCJyYW5rIjoxOCwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMDAxNTQzOTMsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTAuMDAyMzAyMDEsInBlcmNlbnRfY2hhbmdlXzdkIjotMC4wMDE3ODAxMywiY2lyY3VsYXRpbmdfc3VwcGx5Ijo0NjEwNDEyOTM1LjQ1OTkwNSwidG90YWxfc3VwcGx5Ijo0NjEwNDEyOTM1LjQ1OTkwNSwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjoxODMxLCJzbHVnIjoiYml0Y29pbi1jYXNoIiwic3ltYm9sIjoiQkNIIiwibmFtZSI6IkJpdGNvaW4gQ2FzaCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzE4MzEucG5nIiwicHJpY2VfdXNkIjoyMTguMzM4Mjc4MTMwNDg0MzUsIm1hcmtldF9jYXAiOjQzODEzODgwODYuNDgwMzU3LCJ2b2x1bWVfMjRoIjoxMTQ3ODExODEuNTc4MjQxNjksInJhbmsiOjE5LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDQ0MjI4NSwicGVyY2VudF9jaGFuZ2VfMjRoIjozLjUyMDE0MTkxLCJwZXJjZW50X2NoYW5nZV83ZCI6MS44MzY2MzgzMSwiY2lyY3VsYXRpbmdfc3VwcGx5IjoyMDA2Njk3MS44NzUsInRvdGFsX3N1cHBseSI6MjAwNjY5NzEuODc1LCJtYXhfc3VwcGx5IjoyMTAwMDAwMCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjozNjE0OCwic2x1ZyI6InVzZDEiLCJzeW1ib2wiOiJVU0QxIiwibmFtZSI6IldvcmxkIExpYmVydHkgRmluYW5jaWFsIFVTRCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzM2MTQ4LnBuZyIsInByaWNlX3VzZCI6MC45OTg3MjY4NzM4MjU5OTIsIm1hcmtldF9jYXAiOjQwOTMyNzQwNTEuMTYyMjUsInZvbHVtZV8yNGgiOjY5ODk3MTI3Ny41MDA0NDM5LCJyYW5rIjoyMCwicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjAwMjE5NTY4LCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAxNzkxMTY1LCJwZXJjZW50X2NoYW5nZV83ZCI6LTAuMDE1MjgzNjIsImNpcmN1bGF0aW5nX3N1cHBseSI6NDA5ODQ5MTk0OC41MzU4OTI1LCJ0b3RhbF9zdXBwbHkiOjQwOTg0OTE5NDguNTM1ODkyNSwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjoxMTQxOSwic2x1ZyI6ImdyYW0iLCJzeW1ib2wiOiJHUkFNIiwibmFtZSI6IkdyYW0gKHByZXYuIFRvbmNvaW4pIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMTE0MTkucG5nIiwicHJpY2VfdXNkIjoxLjQ5NDE2NjkzOTMwNDcyNzcsIm1hcmtldF9jYXAiOjQwODY1NDcwNTguMzIwNzAwNiwidm9sdW1lXzI0aCI6MzU2OTMxNjEuMDcyNDUyMDYsInJhbmsiOjIxLCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDMyMzY1MDYsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTEuMDI5Nzg1NzMsInBlcmNlbnRfY2hhbmdlXzdkIjo0LjkzODkyNzQxLCJjaXJjdWxhdGluZ19zdXBwbHkiOjI3MzUwMDAzMjAuNzk1NjYxLCJ0b3RhbF9zdXBwbHkiOjUyMjEzNjE4MjQuODY1NDk5LCJtYXhfc3VwcGx5IjpudWxsLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjI5NDcwLCJzbHVnIjoiZXRoZW5hLXVzZGUiLCJzeW1ib2wiOiJVU0RFIiwibmFtZSI6IkV0aGVuYSBVU0RlIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMjk0NzAucG5nIiwicHJpY2VfdXNkIjowLjk5OTc4NzkwMTQyNzQ1NiwibWFya2V0X2NhcCI6Mzk1NjY0NjU0Ni4xMzMwOTUsInZvbHVtZV8yNGgiOjQ5OTg0NzAxLjI2MjcwNDI1LCJyYW5rIjoyMiwicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjAwMzQzODk1LCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAxNDU5Mjg1LCJwZXJjZW50X2NoYW5nZV83ZCI6MC4wMTM3OTc4MSwiY2lyY3VsYXRpbmdfc3VwcGx5IjozOTU3NDg1OTIzLjI0ODI3ODYsInRvdGFsX3N1cHBseSI6Mzk1NzQ4NTkyMy4yNDgyNzg2LCJtYXhfc3VwcGx5IjpudWxsLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjIsInNsdWciOiJsaXRlY29pbiIsInN5bWJvbCI6IkxUQyIsIm5hbWUiOiJMaXRlY29pbiIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzIucG5nIiwicHJpY2VfdXNkIjo0Ni45ODc4ODQxNTQwMzQ5LCJtYXJrZXRfY2FwIjozNjM4Mjk1MjU3LjIwNTY1OSwidm9sdW1lXzI0aCI6MjM4NzUzNjgyLjQwNTczNjY4LCJyYW5rIjoyMywicGVyY2VudF9jaGFuZ2VfMWgiOjAuMjkwMjQ4MywicGVyY2VudF9jaGFuZ2VfMjRoIjotMC40OTA2ODM5OCwicGVyY2VudF9jaGFuZ2VfN2QiOjAuNDE1NzMwNDgsImNpcmN1bGF0aW5nX3N1cHBseSI6Nzc0MzA0OTcuNzI3NDI4MiwidG90YWxfc3VwcGx5Ijo4NDAwMDAwMCwibWF4X3N1cHBseSI6ODQwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MzM3OTMsInNsdWciOiJnbG9iYWwtZG9sbGFyLXVzZGciLCJzeW1ib2wiOiJVU0RHIiwibmFtZSI6Ikdsb2JhbCBEb2xsYXIiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8zMzc5My5wbmciLCJwcmljZV91c2QiOjAuOTk5NzQ5NzI0MDQ3ODM3NSwibWFya2V0X2NhcCI6MzI3ODIxMzk4NS42NjAxMiwidm9sdW1lXzI0aCI6MTU1Mjg1ODUyLjAwNzAyNzUsInJhbmsiOjI0LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDMwNDkzMDcsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTAuMDI1NTkyMDYsInBlcmNlbnRfY2hhbmdlXzdkIjotMC4wMTEzNTYxMSwiY2lyY3VsYXRpbmdfc3VwcGx5IjozMjc5MDM0NjQ5LjE3OTExNywidG90YWxfc3VwcGx5IjozMjc5MDM0NjQ5LjE3OTExNywibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjo0NjQyLCJzbHVnIjoiaGVkZXJhIiwic3ltYm9sIjoiSEJBUiIsIm5hbWUiOiJIZWRlcmEiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC80NjQyLnBuZyIsInByaWNlX3VzZCI6MC4wNjkyMDY3NDcxMDQzMTY3NiwibWFya2V0X2NhcCI6MzAzMDYzOTMyMy43MTQxNzYsInZvbHVtZV8yNGgiOjMzMDI0MTEwLjU2NDQyODUyLCJyYW5rIjoyNSwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMjgyMjI0MzMsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTAuOTI1MDQzNjMsInBlcmNlbnRfY2hhbmdlXzdkIjo0LjUwODA4NDQ3LCJjaXJjdWxhdGluZ19zdXBwbHkiOjQzNzkxMDk2MjUxLjcyODYxNSwidG90YWxfc3VwcGx5Ijo1MDAwMDAwMDAwMCwibWF4X3N1cHBseSI6NTAwMDAwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6NTk5NCwic2x1ZyI6InNoaWJhLWludSIsInN5bWJvbCI6IlNISUIiLCJuYW1lIjoiU2hpYmEgSW51IiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvNTk5NC5wbmciLCJwcmljZV91c2QiOjAuMDAwMDA0OTg2NTkxMjM0ODQ3MTQsIm1hcmtldF9jYXAiOjI5MzgzMDA4MzYuMDA2MDQxLCJ2b2x1bWVfMjRoIjozMDUwOTkxODUuOTg5NDg2NCwicmFuayI6MjYsInBlcmNlbnRfY2hhbmdlXzFoIjowLjMwOTI3MTkzLCJwZXJjZW50X2NoYW5nZV8yNGgiOi0zLjQwODUxNDk1LCJwZXJjZW50X2NoYW5nZV83ZCI6MTguNDUwNjY2NjgsImNpcmN1bGF0aW5nX3N1cHBseSI6NTg5MjQwMzY0MzMzOTk2LjIsInRvdGFsX3N1cHBseSI6NTg5NDk3MDcwNDkyMzgwLjUsIm1heF9zdXBwbHkiOjU4OTU1MjY5NTMzMzY4Mywic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjoyMDk0Nywic2x1ZyI6InN1aSIsInN5bWJvbCI6IlNVSSIsIm5hbWUiOiJTdWkiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8yMDk0Ny5wbmciLCJwcmljZV91c2QiOjAuNzEzMTA3MzI2Njg4MDc3NCwibWFya2V0X2NhcCI6Mjg4OTc0OTEyNi40NDUyNzk2LCJ2b2x1bWVfMjRoIjoxNDU1MzgxMjAuNTU0MDkwOSwicmFuayI6MjcsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4wNzYyNzcxLCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjQxNjUyNTEzLCJwZXJjZW50X2NoYW5nZV83ZCI6LTUuMzMwNzEwMzQsImNpcmN1bGF0aW5nX3N1cHBseSI6NDA1MjMzNDA4NS4zNDIwOTksInRvdGFsX3N1cHBseSI6MTAwMDAwMDAwMDAsIm1heF9zdXBwbHkiOjEwMDAwMDAwMDAwLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjU4MDUsInNsdWciOiJhdmFsYW5jaGUiLCJzeW1ib2wiOiJBVkFYIiwibmFtZSI6IkF2YWxhbmNoZSIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzU4MDUucG5nIiwicHJpY2VfdXNkIjo2LjYxMzA4MTUzMTExMDE1MjUsIm1hcmtldF9jYXAiOjI4NTUzNDMxODIuMTEyMjMsInZvbHVtZV8yNGgiOjIxMTg3MTMwMy4wMDIyNTIwNCwicmFuayI6MjgsInBlcmNlbnRfY2hhbmdlXzFoIjotMC43NjA4ODQzNiwicGVyY2VudF9jaGFuZ2VfMjRoIjotMC45MjAzMDQyNSwicGVyY2VudF9jaGFuZ2VfN2QiOjAuNzYzODQ5NSwiY2lyY3VsYXRpbmdfc3VwcGx5Ijo0MzE3NzE5NjEuMTc3MjExOSwidG90YWxfc3VwcGx5Ijo0NjM0NDEwNjEuMTc3MjExOSwibWF4X3N1cHBseSI6NzE1NzQ4NzE5LCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjM2MzUsInNsdWciOiJjcm9ub3MiLCJzeW1ib2wiOiJDUk8iLCJuYW1lIjoiQ3Jvbm9zIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMzYzNS5wbmciLCJwcmljZV91c2QiOjAuMDU2ODkyMzcyMzE0MzIyMzMsIm1hcmtldF9jYXAiOjI2ODk5NjYwNTUuNDcwMTc3Nywidm9sdW1lXzI0aCI6NjYyMDE1OC4yMTkxMDE4NCwicmFuayI6MjksInBlcmNlbnRfY2hhbmdlXzFoIjotMC4xODE5NDA1NywicGVyY2VudF9jaGFuZ2VfMjRoIjowLjM5NzU3NjQxLCJwZXJjZW50X2NoYW5nZV83ZCI6LTEuMTYzMTk3NjQsImNpcmN1bGF0aW5nX3N1cHBseSI6NDcyODE2NjQ0MTMuNzg5ODYsInRvdGFsX3N1cHBseSI6OTg4MTUwMDI4NjkuMDE4NDgsIm1heF9zdXBwbHkiOjEwMDAwMDAwMDAwMCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjoyNzc3Miwic2x1ZyI6InBheXBhbC11c2QiLCJzeW1ib2wiOiJQWVVTRCIsIm5hbWUiOiJQYXlQYWwgVVNEIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMjc3NzIucG5nIiwicHJpY2VfdXNkIjowLjk5OTU1MTU4Nzk1OTQ1MTgsIm1hcmtldF9jYXAiOjI2NzQ5NDE4MTAuMjUxNTQsInZvbHVtZV8yNGgiOjM1MjQ0MTU5Ljk5NzMwNDI0LCJyYW5rIjozMCwicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjAwNTA1NTk2LCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAxMjQxMDIsInBlcmNlbnRfY2hhbmdlXzdkIjotMC4wMDYzMTczOCwiY2lyY3VsYXRpbmdfc3VwcGx5IjoyNjc2MTQxODI0LjQ2Nzg0NiwidG90YWxfc3VwcGx5IjoyNjc2MTQxODI0LjQ2Nzg0NiwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjo1MTc2LCJzbHVnIjoidGV0aGVyLWdvbGQiLCJzeW1ib2wiOiJYQVVUIiwibmFtZSI6IlRldGhlciBHb2xkIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvNTE3Ni5wbmciLCJwcmljZV91c2QiOjQwNjkuNzE0OTY0NTM1MjE0NywibWFya2V0X2NhcCI6MjQ5NDAxNzYxNy44MTg2MTQsInZvbHVtZV8yNGgiOjE3NDYxOTMyNC41OTM2MDU1NSwicmFuayI6MzEsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4wMzM3NjcxMywicGVyY2VudF9jaGFuZ2VfMjRoIjowLjQ1NjQyODMsInBlcmNlbnRfY2hhbmdlXzdkIjoxLjU3MDA5MTMxLCJjaXJjdWxhdGluZ19zdXBwbHkiOjYxMjgyMy42NTk1MzIsInRvdGFsX3N1cHBseSI6NzA3NzQ3LjA4OSwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjo3MDgzLCJzbHVnIjoidW5pc3dhcCIsInN5bWJvbCI6IlVOSSIsIm5hbWUiOiJVbmlzd2FwIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvNzA4My5wbmciLCJwcmljZV91c2QiOjMuODY5NjUxNTU1ODM5ODU4LCJtYXJrZXRfY2FwIjoyNDE5MDI1ODQxLjE2NTMzODUsInZvbHVtZV8yNGgiOjE3NDM0Mjc0OS4wNDcwMzI4NiwicmFuayI6MzIsInBlcmNlbnRfY2hhbmdlXzFoIjowLjY0NjMxNzIzLCJwZXJjZW50X2NoYW5nZV8yNGgiOjAuMjMwOTEzNTYsInBlcmNlbnRfY2hhbmdlXzdkIjoxMC44NDMwNDY0OSwiY2lyY3VsYXRpbmdfc3VwcGx5Ijo2MjUxMjc1NjEuNTUzODc3NSwidG90YWxfc3VwcGx5Ijo4OTIyNjI0MjAuMDMyOTQ3OSwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjo2NTM1LCJzbHVnIjoibmVhci1wcm90b2NvbCIsInN5bWJvbCI6Ik5FQVIiLCJuYW1lIjoiTkVBUiBQcm90b2NvbCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzY1MzUucG5nIiwicHJpY2VfdXNkIjoxLjgxODU4NTQ5MjIwNTkyNzcsIm1hcmtldF9jYXAiOjIzNjc3NjU5NDAuMDMwMzU2NCwidm9sdW1lXzI0aCI6MTA3OTYwNzI5LjkyMjE1OTE3LCJyYW5rIjozMywicGVyY2VudF9jaGFuZ2VfMWgiOi0wLjI5MDA1ODg1LCJwZXJjZW50X2NoYW5nZV8yNGgiOjEuNTE3OTE3MDgsInBlcmNlbnRfY2hhbmdlXzdkIjotNy4zODkyNTE0NiwiY2lyY3VsYXRpbmdfc3VwcGx5IjoxMzAxOTgyMjAwLCJ0b3RhbF9zdXBwbHkiOjEzMDE5ODIyMDAsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MjI5NzQsInNsdWciOiJiaXR0ZW5zb3IiLCJzeW1ib2wiOiJUQU8iLCJuYW1lIjoiQml0dGVuc29yIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMjI5NzQucG5nIiwicHJpY2VfdXNkIjoxOTcuNjAyNzcxODY0MTYxMiwibWFya2V0X2NhcCI6MjIwNjg5MTk0OS41NDU0OTIsInZvbHVtZV8yNGgiOjg4NjEzNTkxLjIxOTA4OTU4LCJyYW5rIjozNCwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMTE0ODc2MTEsInBlcmNlbnRfY2hhbmdlXzI0aCI6MC43NTQ1MTkwMywicGVyY2VudF9jaGFuZ2VfN2QiOjEuNjk2OTE3OCwiY2lyY3VsYXRpbmdfc3VwcGx5IjoxMTE2ODMyNC44NjA2NTgyNSwidG90YWxfc3VwcGx5IjoyMTAwMDAwMCwibWF4X3N1cHBseSI6MjEwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MjExNTksInNsdWciOiJvbmRvLWZpbmFuY2UiLCJzeW1ib2wiOiJPTkRPIiwibmFtZSI6Ik9uZG8iLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8yMTE1OS5wbmciLCJwcmljZV91c2QiOjAuNDA4MzYyOTc2MzA5MDc2OCwibWFya2V0X2NhcCI6MTk4ODQ1NDM1NS42NDE5MjI3LCJ2b2x1bWVfMjRoIjoxNDIzNDQ2NzAuMDEzMzE1ODYsInJhbmsiOjM1LCJwZXJjZW50X2NoYW5nZV8xaCI6MC40MzcwNTI5MSwicGVyY2VudF9jaGFuZ2VfMjRoIjo2LjIwNDEzOTU0LCJwZXJjZW50X2NoYW5nZV83ZCI6MTcuMjExMzA4MzUsImNpcmN1bGF0aW5nX3N1cHBseSI6NDg2OTMzMDY0NywidG90YWxfc3VwcGx5IjoxMDAwMDAwMDAwMCwibWF4X3N1cHBseSI6MTAwMDAwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6NDcwNSwic2x1ZyI6InBheC1nb2xkIiwic3ltYm9sIjoiUEFYRyIsIm5hbWUiOiJQQVggR29sZCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzQ3MDUucG5nIiwicHJpY2VfdXNkIjo0MDc0LjMxNTM2NjgzOTU0MywibWFya2V0X2NhcCI6MTgxMjUyMDk0NC43NTgwMzMsInZvbHVtZV8yNGgiOjEwMjk3NjY0MS40NzAzMzA3NywicmFuayI6MzYsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4wODU4MzU5MSwicGVyY2VudF9jaGFuZ2VfMjRoIjowLjQ2NzcyNzQ2LCJwZXJjZW50X2NoYW5nZV83ZCI6MS43NjE0OTc5NywiY2lyY3VsYXRpbmdfc3VwcGx5Ijo0NDQ4NjUuMTU2ODU4LCJ0b3RhbF9zdXBwbHkiOjQ0NDg2NS4xNTY4NTgsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6Mzg5Nywic2x1ZyI6Im9rYiIsInN5bWJvbCI6Ik9LQiIsIm5hbWUiOiJPS0IiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8zODk3LnBuZyIsInByaWNlX3VzZCI6ODYuMjI1NTQyOTIzOTAxMzYsIm1hcmtldF9jYXAiOjE4MTA3MzY0MDEuNDAxOTI4Nywidm9sdW1lXzI0aCI6MjYzMzU1MDQuMzc4OTgyMzUsInJhbmsiOjM3LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDgyNTQyNCwicGVyY2VudF9jaGFuZ2VfMjRoIjoyLjA2ODk1MzQ0LCJwZXJjZW50X2NoYW5nZV83ZCI6Ni44NTQ1MDM5MywiY2lyY3VsYXRpbmdfc3VwcGx5IjoyMTAwMDAwMCwidG90YWxfc3VwcGx5IjoyMTAwMDAwMCwibWF4X3N1cHBseSI6MjEwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MzMyNTEsInNsdWciOiJ3b3JsZC1saWJlcnR5LWZpbmFuY2lhbC13bGZpIiwic3ltYm9sIjoiV0xGSSIsIm5hbWUiOiJXb3JsZCBMaWJlcnR5IEZpbmFuY2lhbCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzMzMjUxLnBuZyIsInByaWNlX3VzZCI6MC4wNTQ4MzQ5NjQxMzQyNDY1MiwibWFya2V0X2NhcCI6MTc0MjM2ODUzNy42MDk0ODUsInZvbHVtZV8yNGgiOjMwOTA1MzAzLjI0MDA3MTMsInJhbmsiOjM4LCJwZXJjZW50X2NoYW5nZV8xaCI6MC4zOTQ0NDAzMSwicGVyY2VudF9jaGFuZ2VfMjRoIjotMC41MTMwMTEzNiwicGVyY2VudF9jaGFuZ2VfN2QiOi0zLjU5MDE0NTA5LCJjaXJjdWxhdGluZ19zdXBwbHkiOjMxNzc0NzcyOTk2LCJ0b3RhbF9zdXBwbHkiOjEwMDAwMDAwMDAwMCwibWF4X3N1cHBseSI6MTAwMDAwMDAwMDAwLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjM2MzQxLCJzbHVnIjoiYXN0ZXIiLCJzeW1ib2wiOiJBU1RFUiIsIm5hbWUiOiJBc3RlciIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzM2MzQxLnBuZyIsInByaWNlX3VzZCI6MC42MjQ2NTYxMDg4ODUwODk3LCJtYXJrZXRfY2FwIjoxNjg2NTg5NjY4LjM1MDc4Niwidm9sdW1lXzI0aCI6NDQ5MjY2NTEuOTQ3MDIyMTksInJhbmsiOjM5LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMTY2NDIwNTgsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTAuMDM1NDU5MjcsInBlcmNlbnRfY2hhbmdlXzdkIjowLjcwNTY0NjEsImNpcmN1bGF0aW5nX3N1cHBseSI6MjcwMDAyOTA5NC45ODY0ODE3LCJ0b3RhbF9zdXBwbHkiOjc4MTM5ODQzNjAuNjA2NzI5LCJtYXhfc3VwcGx5Ijo4MDAwMDAwMDAwLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjM1NDkxLCJzbHVnIjoibWVtZWNvcmUiLCJzeW1ib2wiOiJNIiwibmFtZSI6Ik1lbWVDb3JlIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMzU0OTEucG5nIiwicHJpY2VfdXNkIjoxLjIxMDEwNzQxMDc5OTMzNzMsIm1hcmtldF9jYXAiOjE2MDc3NzM5OTAuMzEzOTA2Miwidm9sdW1lXzI0aCI6MTc0MDg4MjkuMjg5NjAwNzIsInJhbmsiOjQwLCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMzkxODg4MzUsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTUuMTkxOTU0NTksInBlcmNlbnRfY2hhbmdlXzdkIjotMS45MTA4NDY2OSwiY2lyY3VsYXRpbmdfc3VwcGx5IjoxMzI4NjIwODk0LjI4MjM0MywidG90YWxfc3VwcGx5Ijo1Mzk1OTM3NjY2Ljc4OTU2OCwibWF4X3N1cHBseSI6MTAwMDAwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MzQzODcsInNsdWciOiJyaXBwbGUtdXNkIiwic3ltYm9sIjoiUkxVU0QiLCJuYW1lIjoiUmlwcGxlIFVTRCIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzM0Mzg3LnBuZyIsInByaWNlX3VzZCI6MC45OTk2ODI0Mjk4MTQzMzM4LCJtYXJrZXRfY2FwIjoxNTkxNTc5MzE2LjA0ODQ5NDYsInZvbHVtZV8yNGgiOjExMzE5NDQxOS4yMDc0MTY0NywicmFuayI6NDEsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4wMjUyNDk3NCwicGVyY2VudF9jaGFuZ2VfMjRoIjotMC4wMzc2NDMyNCwicGVyY2VudF9jaGFuZ2VfN2QiOjAuMDI2NzA1ODIsImNpcmN1bGF0aW5nX3N1cHBseSI6MTU5MjA4NDkxNC43NTA0NjgzLCJ0b3RhbF9zdXBwbHkiOjE1OTIwODQ5MTQuNzUwNDY4MywibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjo3Mjc4LCJzbHVnIjoiYWF2ZSIsInN5bWJvbCI6IkFBVkUiLCJuYW1lIjoiQWF2ZSIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzcyNzgucG5nIiwicHJpY2VfdXNkIjoxMDAuMzA4MTAzNjk5MTQyMDgsIm1hcmtldF9jYXAiOjE1NDY1Mjk1NTQuODQwNjM1OCwidm9sdW1lXzI0aCI6MzAxNTU2NTkyLjk2MzE0MSwicmFuayI6NDIsInBlcmNlbnRfY2hhbmdlXzFoIjotMC4yMTAyMTgwNiwicGVyY2VudF9jaGFuZ2VfMjRoIjo0LjUzNjg0NjYsInBlcmNlbnRfY2hhbmdlXzdkIjoxMS4wOTExMTIyNCwiY2lyY3VsYXRpbmdfc3VwcGx5IjoxNTQxNzc5Mi43NTg1OTEwOCwidG90YWxfc3VwcGx5IjoxNjAwMDAwMCwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfSx7ImlkIjoxOTg5MSwic2x1ZyI6InVzZGQiLCJzeW1ib2wiOiJVU0REIiwibmFtZSI6IlVTREQiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC8xOTg5MS5wbmciLCJwcmljZV91c2QiOjAuOTk4OTMyMDk5MjQ2NDY5MiwibWFya2V0X2NhcCI6MTU0NjQ4MDEwNy4yMTgyODk5LCJ2b2x1bWVfMjRoIjoxMTcwMzYzNTEuMDQ3NzQwNDcsInJhbmsiOjQzLCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDE0NDI2LCJwZXJjZW50X2NoYW5nZV8yNGgiOi0wLjAxNjk2NTEzLCJwZXJjZW50X2NoYW5nZV83ZCI6LTAuMDAzNzAxMzUsImNpcmN1bGF0aW5nX3N1cHBseSI6MTU0ODEzMzM2MCwidG90YWxfc3VwcGx5IjoxNTQ4MTMzMzYwLCJtYXhfc3VwcGx5IjpudWxsLCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjY2MzYsInNsdWciOiJwb2xrYWRvdC1uZXciLCJzeW1ib2wiOiJET1QiLCJuYW1lIjoiUG9sa2Fkb3QiLCJpbWFnZSI6Imh0dHBzOi8vczIuY29pbm1hcmtldGNhcC5jb20vc3RhdGljL2ltZy9jb2lucy82NHg2NC82NjM2LnBuZyIsInByaWNlX3VzZCI6MC44MDU3NjI4MDQ1MTc1MzUyLCJtYXJrZXRfY2FwIjoxMzY1OTUwOTc4LjA0MjcxNjcsInZvbHVtZV8yNGgiOjUxNTQ0MDU4Ljg1OTkyMTg2LCJyYW5rIjo0NCwicGVyY2VudF9jaGFuZ2VfMWgiOjAuMTA5MjIxOCwicGVyY2VudF9jaGFuZ2VfMjRoIjotMi4xODMzNDMxMSwicGVyY2VudF9jaGFuZ2VfN2QiOi0wLjc1MDY2NTYyLCJjaXJjdWxhdGluZ19zdXBwbHkiOjE2OTUyMjcxNDQuMjQ3MDAyNCwidG90YWxfc3VwcGx5IjoxNjk1MjI3MTQ0LjI0NzAwMjQsIm1heF9zdXBwbHkiOjIxMDAwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MjcwNzUsInNsdWciOiJtYW50bGUiLCJzeW1ib2wiOiJNTlQiLCJuYW1lIjoiTWFudGxlIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMjcwNzUucG5nIiwicHJpY2VfdXNkIjowLjQxMjA4NzQxNzE3MjkzMjQ2LCJtYXJrZXRfY2FwIjoxMzYwODMzOTYyLjg0NDI5MDMsInZvbHVtZV8yNGgiOjIyNjAwNTg1LjMxNjg4ODUsInJhbmsiOjQ1LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMDI5NTI2MjUsInBlcmNlbnRfY2hhbmdlXzI0aCI6LTAuMjM0MzU2MywicGVyY2VudF9jaGFuZ2VfN2QiOi0yLjkzNzQ4NTY3LCJjaXJjdWxhdGluZ19zdXBwbHkiOjMzMDIyOTQzODIuNTM2ODQsInRvdGFsX3N1cHBseSI6NjIxOTMxNjc5NC44ODk5OTksIm1heF9zdXBwbHkiOjYyMTkzMTY3OTUsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MzMwMzgsInNsdWciOiJza3kiLCJzeW1ib2wiOiJTS1kiLCJuYW1lIjoiU2t5IiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMzMwMzgucG5nIiwicHJpY2VfdXNkIjowLjA1NzA4MTU1NDI3MDU0Nzk3LCJtYXJrZXRfY2FwIjoxMzMzMTMxMjQ1LjQ2NzU2OCwidm9sdW1lXzI0aCI6MTY3NTcyNDQuMjg4MDQxMTEsInJhbmsiOjQ2LCJwZXJjZW50X2NoYW5nZV8xaCI6LTAuMTQyNDIwMjksInBlcmNlbnRfY2hhbmdlXzI0aCI6LTEuMjEwODc2MTQsInBlcmNlbnRfY2hhbmdlXzdkIjotNS41MTI5MSwiY2lyY3VsYXRpbmdfc3VwcGx5IjoyMzM1NDg1MTg4Ni45ODU0MiwidG90YWxfc3VwcGx5IjoyMzQ2MjY2NTE0Ny4zNjU5NjcsIm1heF9zdXBwbHkiOjIzNDYyNjY1MTQ3LCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjM4ODM3LCJzbHVnIjoiYXVkaWVyYSIsInN5bWJvbCI6IkJFQVQiLCJuYW1lIjoiQXVkaWVyYSIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzM4ODM3LnBuZyIsInByaWNlX3VzZCI6NC4yNTM2NzA1NDMzMDg0MDEsIm1hcmtldF9jYXAiOjEzMTU1MTg1MDcuMTkxMzk4LCJ2b2x1bWVfMjRoIjozNjI0NDI1Ni40NDY2OTkwOCwicmFuayI6NDcsInBlcmNlbnRfY2hhbmdlXzFoIjoxLjg0NDA5MzM2LCJwZXJjZW50X2NoYW5nZV8yNGgiOjIxLjM3MTI3NTAzLCJwZXJjZW50X2NoYW5nZV83ZCI6NjguNDYxNDQ3NzYsImNpcmN1bGF0aW5nX3N1cHBseSI6MzA5MjY2NjY2LCJ0b3RhbF9zdXBwbHkiOjEwMDAwMDAwMDAsIm1heF9zdXBwbHkiOjEwMDAwMDAwMDAsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MTM1MDIsInNsdWciOiJ3b3JsZGNvaW4tb3JnIiwic3ltYm9sIjoiV0xEIiwibmFtZSI6IldvcmxkY29pbiIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0LzEzNTAyLnBuZyIsInByaWNlX3VzZCI6MC4zNDU4NzY1NjE4ODI3MjgzNiwibWFya2V0X2NhcCI6MTI5ODc2NjA4MC4wMjYwMDUzLCJ2b2x1bWVfMjRoIjoxODM1MzkxOTAuNTgxMDkxMjUsInJhbmsiOjQ4LCJwZXJjZW50X2NoYW5nZV8xaCI6MC4zMTMwNTg2OCwicGVyY2VudF9jaGFuZ2VfMjRoIjozLjg5MDY0MDY5LCJwZXJjZW50X2NoYW5nZV83ZCI6LTUuNDcwMDE0NzQsImNpcmN1bGF0aW5nX3N1cHBseSI6Mzc1NDk5ODgxNS4wNTgwNzMsInRvdGFsX3N1cHBseSI6MTAwMDAwMDAwMDAsIm1heF9zdXBwbHkiOm51bGwsInNwYXJrbGluZV83ZCI6bnVsbH0seyJpZCI6MjQ0NzgsInNsdWciOiJwZXBlIiwic3ltYm9sIjoiUEVQRSIsIm5hbWUiOiJQZXBlIiwiaW1hZ2UiOiJodHRwczovL3MyLmNvaW5tYXJrZXRjYXAuY29tL3N0YXRpYy9pbWcvY29pbnMvNjR4NjQvMjQ0NzgucG5nIiwicHJpY2VfdXNkIjowLjAwMDAwMjk3MzgwMTM5Nzg5NzMzMjQsIm1hcmtldF9jYXAiOjEyMzA0NzcwMTMuMzQ5MTYxMSwidm9sdW1lXzI0aCI6MjU1NzQ0NjM0LjY0NTE4OTQ2LCJyYW5rIjo0OSwicGVyY2VudF9jaGFuZ2VfMWgiOjEuMDMxMTIyMTksInBlcmNlbnRfY2hhbmdlXzI0aCI6MC4yOTg2OTk0NiwicGVyY2VudF9jaGFuZ2VfN2QiOjIuNDY0MjA1NDEsImNpcmN1bGF0aW5nX3N1cHBseSI6NDEzNzcyNDI0MTUwMTc1Ljk0LCJ0b3RhbF9zdXBwbHkiOjQxMzc3MjQyNDE1MDE3NS45NCwibWF4X3N1cHBseSI6NDEzNzcyNDI0MTUwMTc1Ljk0LCJzcGFya2xpbmVfN2QiOm51bGx9LHsiaWQiOjg5MTYsInNsdWciOiJpbnRlcm5ldC1jb21wdXRlciIsInN5bWJvbCI6IklDUCIsIm5hbWUiOiJJbnRlcm5ldCBDb21wdXRlciIsImltYWdlIjoiaHR0cHM6Ly9zMi5jb2lubWFya2V0Y2FwLmNvbS9zdGF0aWMvaW1nL2NvaW5zLzY0eDY0Lzg5MTYucG5nIiwicHJpY2VfdXNkIjoyLjE4MzQ2MDU1Mjk0MzY4NTIsIm1hcmtldF9jYXAiOjEyMTIyODA4NjQuMzA2MjUwOCwidm9sdW1lXzI0aCI6Mjk4MjIzMzQuNjczMDE2NjMsInJhbmsiOjUwLCJwZXJjZW50X2NoYW5nZV8xaCI6MC4yNzM2MTM4MywicGVyY2VudF9jaGFuZ2VfMjRoIjoxLjE1NTgyNjE5LCJwZXJjZW50X2NoYW5nZV83ZCI6MS40NjMxNjcxNSwiY2lyY3VsYXRpbmdfc3VwcGx5Ijo1NTUyMTA3OTIuNjQzNzYyMSwidG90YWxfc3VwcGx5Ijo1NTUyMTA3OTIuNjQzNzYyMSwibWF4X3N1cHBseSI6bnVsbCwic3BhcmtsaW5lXzdkIjpudWxsfV0sImN1cnJlbmN5Ijp7ImNvZGUiOiJVU0QiLCJzeW1ib2wiOiIkIiwicmF0ZSI6MX0sImVycm9yIjpudWxsfQ=="}},"time_used":30,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":30,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/27075.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.666Z","timestamp":1785159268666,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/27075.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 3758\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Wed, 10 Dec 2025 14:00:00 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 02:29:46 GMT\r\ncache-control: public, max-age=86400\r\netag: \"f4b079b22916727f331f5367b109d9f3\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 39883\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: EPhbI3wxWao4PRFLPlJh1yd3HVbRmKdDo_YzWCh566rOOt6KQTdpdQ==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":3758,"size_decoded":4330,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"f4b079b22916727f331f5367b109d9f3","sha1":"92bd082ede184da6675d5bb9775f5a117e54c7e0","sha256":"c518e614a3cb5f346f27e7bfb08aa84ba8ef8ab16d388ea2473e4c982ed430de","sha512":"c749679577caca715e4a4d1d16b7ea694843bf1748f7145ddc1598fb1def27447caadbfa8ae0c32dcdc055b05e04ae3dabaa85a0f17b7c9af2983ca293e2d9ef","ssdeep":"","tlshash":"10717b8de85bccd88407baf040bf942932ce497a4d21831f324b3a598f1270963fa31a","first_seen":"2026-03-04T08:47:10.842758Z","last_seen":"2026-07-29T06:14:00.302091Z","times_seen":1340,"resource_available":false,"data":"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"}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/youtubei/v1/log_event?alt=json","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://www.youtube.com/embed/6jePbqXJhe8","date":"2026-07-27T13:34:32.278Z","timestamp":1785159272278,"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":"POST /youtubei/v1/log_event?alt=json 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\nX-Goog-Request-Time: 1785159272259\r\nContent-Type: application/json\r\nX-Goog-Visitor-Id: CgtteWRBNmFNMEs0SSjkvJ3TBjIoCgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXmLfAgrcAjIwLllUPWNJX2ZMMU9jYV82RldLSDFEaFI3ZlB4eHE0VHVscGFJZGdUZ2cyRHZEbzlsS3hPcWUxT0hUZE1IeEMxRVUzZElpMnZLcGppdTdEWFZ3YzJ5eDh1Rmktck53NVkySFJCUVpBSERxWk5uSXRSR0hqZlpNQlVEQWZoOUNRTldRVTR4RGNnZUZlU3lnZTNDTDhOMDE3WE9IRWVORUJ0UV9zQ1dqVEJWTngxOUVndW1FZDhvNHNDSVNhclRKRzlGcFdkYjdtQlNoYm5hUDhiamVRR2tMQkt6SGUzZTJzQXVEQmtZd0ZJdGxlSVhYcjMtWkVQOUFhcThWbUx3RzRjQWJ2aWdBM1kzUmFzMkJQWmY3aG9JNVA4SUtmdDgyeGx3THk4WklnRVk2eXluM2JqMXl6WmRXUHRhV1V2Z1Z6RE9qelQ4d2lCcDM2WWZtNzZnTGhHTExYckxHZw%3D%3D\r\nX-Goog-Event-Time: 1785159272259\r\nX-YouTube-Client-Name: 56\r\nX-YouTube-Client-Version: 2.20260724.01.00\r\nX-YouTube-Device: cbr=Firefox\u0026cbrver=134.0\u0026ceng=Gecko\u0026cengver=134.0\u0026cos=Windows\u0026cosver=10.0\u0026cplatform=DESKTOP\r\nX-YouTube-Page-CL: 953206010\r\nX-YouTube-Page-Label: youtube.embeds.web_20260724_01_RC00\r\nX-YouTube-Utc-Offset: 0\r\nX-YouTube-Time-Zone: UTC\r\nX-YouTube-Ad-Signals: dt=1785159269187\u0026flash=0\u0026frm=2\u0026u_tz\u0026u_his=2\u0026u_h=1024\u0026u_w=1280\u0026u_ah=1024\u0026u_aw=1280\u0026u_cd=24\u0026bc=31\u0026bih=-12245933\u0026biw=-12245933\u0026brdim=0%2C0%2C0%2C0%2C1280%2C0%2C1280%2C1024%2C360%2C315\u0026vis=1\u0026wgl=true\u0026ca_type=image\r\nContent-Length: 12890\r\nSec-Fetch-Storage-Access: none\r\nOrigin: https://www.youtube.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.com/embed/6jePbqXJhe8\r\nCookie: __Secure-YNID=20.YT=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; YSC=KVevwPvGbos; __Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; VISITOR_INFO1_LIVE=mydA6aM0K4I; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%3D%3D\r\nSec-Fetch-Dest: empty\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":"POST","post_data":{"size":12890,"data":"{\"context\":{\"client\":{\"hl\":\"en\",\"gl\":\"NO\",\"clientName\":56,\"clientVersion\":\"2.20260724.01.00\",\"configInfo\":{\"appInstallData\":\"COS8ndMGEIOHuCIQvoTRHBD299EcEJbv0RwQgc3OHBCS8tEcEInk0RwQhuGAExCfz4ATEN68zhwQvYqwBRDg6tEcEL2ZsAUQvbauBRDK-4ATELjkzhwQtviAExDG_IATEOn40RwQvKTQHBAAEJ3QsAUQnYa4IhDxtNAcEMGP0BwQ-fLRHBD2q7AFEJmNsQUQi_fPHBDgt9EcEPyyzhwQtqTRHBDa984cEMzfrgUQyfaAExCJsM4cEIiQ0RwQh6zOHBC58NEcELCGzxwQ-MSAExCOkNEcEIuHuCIQpKnRHBDv3tEcEK7WzxwQ1faAExDEjNAcEPTp0RwQ7M3QHCpsQ0FNU1RSVk8tWnEtRExpVUVwUUNuQTc1RlhLTUZLalZEOGdERE5NTjJBYmtCcWdHb0xycEN6S2dyQVFEa0s0RC15YTI1QWJraFJmUXpBYkVrZ1hMUGNVbjJkVUYzU3ptUnRXdTd4N2JCaDBIMAA%3D\"},\"userAgent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\",\"browserName\":\"Firefox\",\"browserVersion\":\"134.0\",\"osName\":\"Windows\",\"osVersion\":\"10.0\",\"platform\":\"DESKTOP\",\"windowWidthPoints\":360,\"windowHeightPoints\":315},\"thirdParty\":{\"embedUrl\":\"https://walmartfundholdings.com/\"}},\"events\":[{\"eventTimeMs\":1785159269195,\"latencyActionTicked\":{\"tickName\":\"mm_is\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269197,\"latencyActionTicked\":{\"tickName\":\"mm_ie\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269201,\"latencyActionTicked\":{\"tickName\":\"ep_init_cus\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269201,\"latencyActionTicked\":{\"tickName\":\"ep_init_eps\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269202,\"latencyActionTicked\":{\"tickName\":\"ep_init_epe\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269202,\"latencyActionTicked\":{\"tickName\":\"ep_init_cue\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269389,\"latencyActionTicked\":{\"tickName\":\"pe\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269390,\"latencyActionTicked\":{\"tickName\":\"ep_init_wes\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268509,\"latencyActionTicked\":{\"tickName\":\"srt\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268378,\"latencyActionBaselined\":{\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268417,\"latencyActionTicked\":{\"tickName\":\"nreqs\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268509,\"latencyActionTicked\":{\"tickName\":\"nress\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268522,\"latencyActionTicked\":{\"tickName\":\"nrese\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268381,\"latencyActionTicked\":{\"tickName\":\"ndnss\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268384,\"latencyActionTicked\":{\"tickName\":\"ndnse\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268384,\"latencyActionTicked\":{\"tickName\":\"ntcps\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268417,\"latencyActionTicked\":{\"tickName\":\"ntcpe\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268394,\"latencyActionTicked\":{\"tickName\":\"nstcps\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268417,\"latencyActionTicked\":{\"tickName\":\"ntcpe\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268606,\"latencyActionTicked\":{\"tickName\":\"wffs\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269005,\"latencyActionTicked\":{\"tickName\":\"wffe\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268595,\"latencyActionTicked\":{\"tickName\":\"rsf_pj\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268878,\"latencyActionTicked\":{\"tickName\":\"rse_pj\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268594,\"latencyActionTicked\":{\"tickName\":\"rsf_pc\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268853,\"latencyActionTicked\":{\"tickName\":\"rse_pc\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268595,\"latencyActionTicked\":{\"tickName\":\"rsf_ecj\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268868,\"latencyActionTicked\":{\"tickName\":\"rse_ecj\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268595,\"latencyActionTicked\":{\"tickName\":\"rsf_ecc\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159268848,\"latencyActionTicked\":{\"tickName\":\"rse_ecc\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269395,\"latencyActionInfo\":{\"isNavigation\":true,\"actionType\":\"LATENCY_ACTION_VIDEO_PREVIEW\",\"httpProtocol\":\"h2\",\"transportProtocol\":\"tcp\",\"isVisible\":true,\"loadType\":\"cold\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269186,\"latencyActionTicked\":{\"tickName\":\"rses_dpj\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269400,\"latencyActionTicked\":{\"tickName\":\"ep_init_wee\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269402,\"latencyActionInfo\":{\"serverTimeMs\":72,\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785159269433,\"screenCreated\":{\"csn\":\"pBurY9SUahwvdpVw\",\"pageVe\":{\"veType\":16623,\"youtubeData\":{\"servletData\":{\"serializedServletEventId\":\"ZF5naouRGsWOjNgPvPDAyAU\"}}}},\"context\":{\"lastActivityMs\":\"17\"}},{\"eventTimeMs\":1785159269433,\"latencyActionInfo\":{\"clientScreenNonce\":\"pBurY9SUahwvdpVw\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"17\"}},{\"eventTimeMs\":1785159269434,\"screenCreated\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"pageVe\":{\"veType\":32594},\"implicitGesture\":{\"parentCsn\":\"pBurY9SUahwvdpVw\",\"gesturedVe\":{\"veType\":16623},\"gestureType\":\"INTERACTION_LOGGING_GESTURE_TYPE_AUTOMATED\"}},\"context\":{\"lastActivityMs\":\"18\"}},{\"eventTimeMs\":1785159269434,\"visualElementHidden\":{\"csn\":\"pBurY9SUahwvdpVw\",\"ve\":{\"veType\":16623},\"eventType\":16},\"context\":{\"lastActivityMs\":\"18\"}},{\"eventTimeMs\":1785159269434,\"latencyActionInfo\":{\"clientScreenNonce\":\"l5pZJVv7xIQ0nIhl\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"18\"}},{\"eventTimeMs\":1785159269434,\"visualElementAttached\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"trackingParams\":\"CAAQru4BIhMI5vvAwPzylQMVU99PCB1rSiOPygEEDIgX1A==\"}]},\"context\":{\"lastActivityMs\":\"19\"}},{\"eventTimeMs\":1785159269436,\"latencyActionTicked\":{\"tickName\":\"qoes\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"21\"}},{\"eventTimeMs\":1785159269436,\"latencyActionTicked\":{\"tickName\":\"fs\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"21\"}},{\"eventTimeMs\":1785159269463,\"latencyActionInfo\":{\"clientPlaybackNonce\":\"9NQ5Dlz2pj7mE9ne\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"47\"}},{\"eventTimeMs\":1785159269465,\"latencyActionTicked\":{\"tickName\":\"ep_init_pr\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"49\"}},{\"eventTimeMs\":1785159269583,\"latencyActionTicked\":{\"tickName\":\"ep_init_ijs\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"167\"}},{\"eventTimeMs\":1785159269584,\"latencyActionTicked\":{\"tickName\":\"ep_init_ije\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"168\"}},{\"eventTimeMs\":1785159269585,\"latencyActionTicked\":{\"tickName\":\"ep_init_rs\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"169\"}},{\"eventTimeMs\":1785159269590,\"latencyActionTicked\":{\"tickName\":\"ep_init_re\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"174\"}},{\"eventTimeMs\":1785159269613,\"visualElementAttached\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":28572,\"veCounter\":2,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"197\"}},{\"eventTimeMs\":1785159269613,\"visualElementShown\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"ve\":{\"veType\":28572,\"veCounter\":2,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"197\"}},{\"eventTimeMs\":1785159269655,\"latencyActionTicked\":{\"tickName\":\"ftr\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"239\"}},{\"eventTimeMs\":1785159269663,\"foregroundHeartbeatScreenAssociated\":{\"clientDocumentNonce\":\"62HhOMEHphPBatJ8\",\"clientScreenNonce\":\"pBurY9SUahwvdpVw\"},\"context\":{\"lastActivityMs\":\"247\"}},{\"eventTimeMs\":1785159269663,\"foregroundHeartbeatScreenAssociated\":{\"clientDocumentNonce\":\"62HhOMEHphPBatJ8\",\"clientScreenNonce\":\"l5pZJVv7xIQ0nIhl\"},\"context\":{\"lastActivityMs\":\"247\"}},{\"eventTimeMs\":1785159269663,\"latencyActionTicked\":{\"tickName\":\"ol\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"247\"}},{\"eventTimeMs\":1785159269663,\"latencyActionTicked\":{\"tickName\":\"ol\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"247\"}},{\"eventTimeMs\":1785159269901,\"latencyActionTicked\":{\"tickName\":\"pot_ist\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"486\"}},{\"eventTimeMs\":1785159270158,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWMSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIRCgMKAW8KBgoEYUdJZhICCAEiEQoDCgF0CgYKBGFHSWYSAggBIhEKAwoBaAoGCgRhR0lmEgIIDA==\"},\"context\":{\"lastActivityMs\":\"741\"}},{\"eventTimeMs\":1785159270159,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWwSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAADxAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAJkAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACZAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAACEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAIQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAADVAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAIEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAkQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACZAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAADAVEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAkQCIYCgMKAXQKBgoEYUdJZhIJEQAAAAAAwGtA\"},\"context\":{\"lastActivityMs\":\"743\"}},{\"eventTimeMs\":1785159270258,\"latencyActionTicked\":{\"tickName\":\"pot_if\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"842\"}},{\"eventTimeMs\":1785159270258,\"latencyActionTicked\":{\"tickName\":\"pot_cms\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"842\"}},{\"eventTimeMs\":1785159270259,\"latencyActionTicked\":{\"tickName\":\"pot_cmf\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"843\"}},{\"eventTimeMs\":1785159271160,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChYvY2xpZW50X3N0cmVhbXovYmcvZnJzEhAKDgoIYm90Z3VhcmQSAjUzGgJtayITCgYKBGFHSWYSCREAAAAAAISbQA==\"},\"context\":{\"lastActivityMs\":\"1744\"}},{\"eventTimeMs\":1785159271161,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWMSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIRCgMKAW4KBgoEYUdJZhICCAEiEQoDCgFtCgYKBGFHSWYSAggB\"},\"context\":{\"lastActivityMs\":\"1744\"}},{\"eventTimeMs\":1785159271161,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWwSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIYCgMKAW4KBgoEYUdJZhIJEQAAAAAAACxAIhgKAwoBaQoGCgRhR0lmEgkRAAAAAAAAAAAiGAoDCgFvCgYKBGFHSWYSCREAAAAAADB2QCIYCgMKAWMKBgoEYUdJZhIJEQAAAAAAAAAAIhgKAwoBQwoGCgRhR0lmEgkRAAAAAAAA8D8iGAoDCgF4CgYKBGFHSWYSCREAAAAAAAAAACIYCgMKAW0KBgoEYUdJZhIJEQAAAAAAAPA/\"},\"context\":{\"lastActivityMs\":\"1745\"}},{\"eventTimeMs\":1785159271601,\"visualElementAttached\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":23851,\"veCounter\":3,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"2184\"}},{\"eventTimeMs\":1785159271601,\"visualElementShown\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"ve\":{\"veType\":23851,\"veCounter\":3,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"2185\"}},{\"eventTimeMs\":1785159271601,\"visualElementAttached\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":36925,\"veCounter\":4,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"2185\"}},{\"eventTimeMs\":1785159271601,\"visualElementShown\":{\"csn\":\"l5pZJVv7xIQ0nIhl\",\"ve\":{\"veType\":36925,\"veCounter\":4,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"2185\"}},{\"eventTimeMs\":1785159271601,\"latencyActionTicked\":{\"tickName\":\"ftl\",\"clientActionNonce\":\"mlwDRvETbUxVJwS_\"},\"context\":{\"lastActivityMs\":\"2186\"}}],\"serializedClientEventId\":{\"serializedEventId\":\"ZF5naouRGsWOjNgPvPDAyAU\",\"clientCounter\":\"576\"}}"}},"response":{"raw":"HTTP/3 200 \r\ncontent-type: application/json; charset=UTF-8\r\nvary: Origin, X-Origin, Referer\r\ncontent-encoding: br\r\ndate: Mon, 27 Jul 2026 13:34:32 GMT\r\nserver: scaffolding on HTTPServer2\r\ncontent-length: 31\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\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":28,"size_decoded":381,"mime_type":"application/json; charset=UTF-8","magic":"JSON text data","md5":"5e1fa6fd9abd549a576f3f24b1d3c8d4","sha1":"d5335d7f7d33be6a0b663f03b2df4df2521c4a87","sha256":"d7d5e54ad1e33d7ab49c664323ced79cb9723ff15e9764cd0edc3e15208e8336","sha512":"96e6938256b8e5924210f8e8e54a85d783fa2c01d5fbe5d2a8df7655fed9ef8be73c7cd8bf042c3c84302134b7418711397eece32f081eb7e824a519cc06b4e3","ssdeep":"","tlshash":"1c800038a8200b22232000ea202888322ac8c8203200ca28830200280cc0a0000a2282","first_seen":"2023-04-05T04:40:08Z","last_seen":"2026-07-30T06:07:43.523563Z","times_seen":282566,"resource_available":false,"data":"ewogICJyZXNwb25zZUNvbnRleHQiOiB7fQp9Cg=="}},"time_used":67,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":67,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/pay-ico2.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.979Z","timestamp":1785159267979,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/pay-ico2.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"e3b-66136805-35b4f641518e4414;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3643\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3643,"size_decoded":3968,"mime_type":"image/png","magic":"PNG image data, 162 x 41, 8-bit/color RGBA, non-interlaced","md5":"0cb275cb3001aef60204d9a7f076e31f","sha1":"73aa4afb59d93a9d2168fdfb9edc85cdc7614305","sha256":"c4131c40a0c6d906093f4ee5da39a11a360a3236e4fc8d2c5641ad20a364d78e","sha512":"af9b1f7e63c13b4c437447ccba8d22e7fb298654c472f56ff50234b7020eacd9a54c90e3874e609d670ab5bf0e7a39e5915b80764a2616e2986262b1ddf9b326","ssdeep":"","tlshash":"9f713cc9fc75a403e199f6921ee160428e7fc4c46430f41a72d98408afb87bf1916ee7","first_seen":"2026-03-30T05:38:35.810258Z","last_seen":"2026-07-27T13:35:41.69303Z","times_seen":4,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAKIAAAApCAYAAAC2hfIAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QjVCMERDMEExQjhGMTFFQzlDMUNBRkVGRjNGMjZBOUUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QjVCMERDMEIxQjhGMTFFQzlDMUNBRkVGRjNGMjZBOUUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCNUIwREMwODFCOEYxMUVDOUMxQ0FGRUZGM0YyNkE5RSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCNUIwREMwOTFCOEYxMUVDOUMxQ0FGRUZGM0YyNkE5RSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsS/gkQAAAqvSURBVHja7FwJbFRF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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"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":"walmartfundholdings.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":"142.250.178.72","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.457Z","timestamp":1785159268457,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.google-analytics.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:33 GMT","end":"Mon, 21 Sep 2026 08:37:32 GMT"},"fingerprint":{"sha1":"85:82:80:E9:F0:BC:08:B5:D8:5D:91:B4:E5:D3:DB:B1:A7:2F:E3:F3","sha256":"E3:94:E9:DA:2C:F1:36:09:33:63:D3:69:08:E7:E6:91:8D:F3:61:7F:0F:D0:5F:8E:B6:E9:D7:F3:DD:10:3C:DC"}}},"request":{"raw":"GET /gtag/js?id=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":"HTTP/2 200 \r\ncontent-type: application/javascript; charset=UTF-8\r\naccess-control-allow-origin: *\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Cache-Control\r\ncontent-encoding: zstd\r\nvary: Accept-Encoding\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nexpires: Mon, 27 Jul 2026 13:34:28 GMT\r\ncache-control: private, max-age=900\r\nstrict-transport-security: max-age=31536000; includeSubDomains\r\ncross-origin-resource-policy: cross-origin\r\nserver: Google Tag Manager\r\ncontent-length: 166346\r\nx-xss-protection: 0\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}],"data":{"size":488553,"size_decoded":166950,"mime_type":"application/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (6033)","md5":"2ca987f27dbee6434faaa87c0bb3775e","sha1":"1514e49aadd900d255d2b68832184a9475dbbd4c","sha256":"9ecf53ae7638eb4eae44692512062b0efde9485d80d3c4e073b71d8449325bed","sha512":"d1370434890d0efd043b9d565d6ce4a6f3b6f3fe8cd770692c994332b0792a035e68789e2d02c8f2387d5cc9003c3d1f5437f9566096b888338511cf11387ea2","ssdeep":"6144:/yH5RU0jIWXbP69FMxmRknhqsScPmfxNf3EjUxVGaZoXzRYGg:/85C1WLP69VwqxVZOvg","tlshash":"17a4f8cdb3d674225396f478903f018ba57b29e2b44cc899f189cce42e7465a8267f7c","first_seen":"2026-07-27T07:02:55.664103Z","last_seen":"2026-07-27T14:57:18.250575Z","times_seen":250,"resource_available":true,"data":"Ci8vIENvcHlyaWdodCAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKKGZ1bmN0aW9uKCl7Cgp2YXIgZGF0YSA9IHsKInJlc291cmNlIjogewogICJ2ZXJzaW9uIjoiMSIsCiAgCiAgIm1hY3JvcyI6W3siZnVuY3Rpb24iOiJfX2UifSx7ImZ1bmN0aW9uIjoiX19jIiwidnRwX3ZhbHVlIjoiZ29vZ2xlLm5vIn0seyJmdW5jdGlvbiI6Il9fYyIsInZ0cF92YWx1ZSI6MH1dLAogICJ0YWdzIjpbeyJmdW5jdGlvbiI6Il9fb2d0XzFwX2RhdGFfdjIiLCJwcmlvcml0eSI6MTMsInZ0cF9pc0F1dG9FbmFibGVkIjp0cnVlLCJ2dHBfYXV0b1Bob25lRW5hYmxlZCI6dHJ1ZSwidnRwX2F1dG9Db2xsZWN0RXhjbHVzaW9uU2VsZWN0b3JzIjpbImxpc3QiLFsibWFwIiwiZXhjbHVzaW9uU2VsZWN0b3IiLCIiXV0sInZ0cF9pc0VuYWJsZWQiOnRydWUsInZ0cF9hdXRvQWRkcmVzc0VuYWJsZWQiOnRydWUsInZ0cF9hdXRvRW1haWxFbmFibGVkIjp0cnVlLCJ2dHBfaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIjp0cnVlLCJ0YWdfaWQiOjR9LHsiZnVuY3Rpb24iOiJfX2NjZF9nYV9maXJzdCIsInByaW9yaXR5IjoxMiwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTh9LHsiZnVuY3Rpb24iOiJfX3NldF9wcm9kdWN0X3NldHRpbmdzIiwicHJpb3JpdHkiOjExLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidnRwX2ZvcmVpZ25UbGRNYWNyb1Jlc3VsdCI6WyJtYWNybyIsMV0sInZ0cF9pc0NoaW5hVmlwUmVnaW9uTWFjcm9SZXN1bHQiOlsibWFjcm8iLDJdLCJ0YWdfaWQiOjE3fSx7ImZ1bmN0aW9uIjoiX19jY2RfZ2FfcmVnc2NvcGUiLCJwcmlvcml0eSI6MTAsInZ0cF9zZXR0aW5nc1RhYmxlIjpbImxpc3QiLFsibWFwIiwicmVkYWN0RmllbGRHcm91cCIsIkRFVklDRV9BTkRfR0VPIiwiZGlzYWxsb3dBbGxSZWdpb25zIixmYWxzZSwiZGlzYWxsb3dlZFJlZ2lvbnMiLCIiXSxbIm1hcCIsInJlZGFjdEZpZWxkR3JvdXAiLCJHT09HTEVfU0lHTkFMUyIsImRpc2FsbG93QWxsUmVnaW9ucyIsdHJ1ZSwiZGlzYWxsb3dlZFJlZ2lvbnMiLCIiXV0sInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVY4NFhQOFdHWFkiLCJ0YWdfaWQiOjE2fSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fZG93bmxvYWQiLCJwcmlvcml0eSI6OSwidnRwX2luY2x1ZGVQYXJhbXMiOnRydWUsInZ0cF9pbnN0YW5jZURlc3RpbmF0aW9uSWQiOiJHLVY4NFhQOFdHWFkiLCJ0YWdfaWQiOjE1fSx7ImZ1bmN0aW9uIjoiX19jY2RfZW1fZm9ybSIsInByaW9yaXR5Ijo4LCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTR9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9vdXRib3VuZF9jbGljayIsInByaW9yaXR5Ijo3LCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTN9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9wYWdlX3ZpZXciLCJwcmlvcml0eSI6NiwidnRwX2hpc3RvcnlFdmVudHMiOnRydWUsInZ0cF9pbmNsdWRlUGFyYW1zIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidGFnX2lkIjoxMn0seyJmdW5jdGlvbiI6Il9fY2NkX2VtX3Njcm9sbCIsInByaW9yaXR5Ijo1LCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTF9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV9zaXRlX3NlYXJjaCIsInByaW9yaXR5Ijo0LCJ2dHBfc2VhcmNoUXVlcnlQYXJhbXMiOiJxLHMsc2VhcmNoLHF1ZXJ5LGtleXdvcmQiLCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6MTB9LHsiZnVuY3Rpb24iOiJfX2NjZF9lbV92aWRlbyIsInByaW9yaXR5IjozLCJ2dHBfaW5jbHVkZVBhcmFtcyI6dHJ1ZSwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6OX0seyJmdW5jdGlvbiI6Il9fY2NkX2NvbnZlcnNpb25fbWFya2luZyIsInByaW9yaXR5IjoyLCJ2dHBfY29udmVyc2lvblJ1bGVzIjpbImxpc3QiLFsibWFwIiwibWF0Y2hpbmdSdWxlcyIsIntcInR5cGVcIjo1LFwiYXJnc1wiOlt7XCJzdHJpbmdWYWx1ZVwiOlwiY2xvc2VfY29udmVydF9sZWFkXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il0sWyJtYXAiLCJtYXRjaGluZ1J1bGVzIiwie1widHlwZVwiOjUsXCJhcmdzXCI6W3tcInN0cmluZ1ZhbHVlXCI6XCJxdWFsaWZ5X2xlYWRcIn0se1wiY29udGV4dFZhbHVlXCI6e1wibmFtZXNwYWNlVHlwZVwiOjEsXCJrZXlQYXJ0c1wiOltcImV2ZW50TmFtZVwiXX19XX0iXSxbIm1hcCIsIm1hdGNoaW5nUnVsZXMiLCJ7XCJ0eXBlXCI6NSxcImFyZ3NcIjpbe1wic3RyaW5nVmFsdWVcIjpcInB1cmNoYXNlXCJ9LHtcImNvbnRleHRWYWx1ZVwiOntcIm5hbWVzcGFjZVR5cGVcIjoxLFwia2V5UGFydHNcIjpbXCJldmVudE5hbWVcIl19fV19Il1dLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidGFnX2lkIjo4fSx7ImZ1bmN0aW9uIjoiX19jY2RfYXV0b19yZWRhY3QiLCJwcmlvcml0eSI6MSwidnRwX3JlZGFjdEVtYWlsIjp0cnVlLCJ2dHBfaW5zdGFuY2VEZXN0aW5hdGlvbklkIjoiRy1WODRYUDhXR1hZIiwidGFnX2lkIjo3fSx7ImZ1bmN0aW9uIjoiX19nY3QiLCJ2dHBfdHJhY2tpbmdJZCI6IkctVjg0WFA4V0dYWSIsInZ0cF9zZXNzaW9uRHVyYXRpb24iOjAsInRhZ19pZCI6MX0seyJmdW5jdGlvbiI6Il9fY2NkX2dhX2xhc3QiLCJwcmlvcml0eSI6MCwidnRwX2luc3RhbmNlRGVzdGluYXRpb25JZCI6IkctVjg0WFA4V0dYWSIsInRhZ19pZCI6Nn1dLAogICJwcmVkaWNhdGVzIjpbeyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmpzIn0seyJmdW5jdGlvbiI6Il9lcSIsImFyZzAiOlsibWFjcm8iLDBdLCJhcmcxIjoiZ3RtLmluaXQifV0sCiAgInJ1bGVzIjpbW1siaWYiLDBdLFsiYWRkIiwxM11dLFtbImlmIiwxXSxbImFkZCIsMCwxNCwxMiwxMSwxMCw5LDgsNyw2LDUsNCwzLDIsMV1dXQp9LAoicnVudGltZSI6WyBbNTAsIl9fYyIsWzQ2LCJhIl0sWzM2LFsxNyxbMTUsImEiXSwidmFsdWUiXV1dCiAsWzUwLCJfX2NjZF9hdXRvX3JlZGFjdCIsWzQ2LCJhIl0sWzUwLCJ2IixbNDYsImFGIl0sWzM2LFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJ1Il0sIlxcJDEiXV1dXSxbNTAsInciLFs0NiwiYUYiXSxbNTIsImFHIixbMzAsWyJjIixbMTUsImFGIl1dLFsxNSwiYUYiXV1dLFs1MiwiYUgiLFs3XV0sWzY1LCJhSSIsWzIsWzE1LCJhRyJdLCJzcGxpdCIsWzcsIiJdXSxbNDYsWzUzLFs1MiwiYUoiLFs3LFsidiIsWzE1LCJhSSJdXV1dLFs1MiwiYUsiLFsiZCIsWzE1LCJhSSJdXV0sWzIyLFsxMixbMTUsImFLIl0sWzQ1XV0sWzQ2LFs1MyxbMzYsWyJkIixbInYiLFsxNSwiYUYiXV1dXV1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbMTUsImFJIl1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbMTUsImFLIl1dXSxbMjIsWzIxLFsxNSwiYUkiXSxbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXSxbNDYsWzUzLFsyLFsxNSwiYUoiXSwicHVzaCIsWzcsWyJkIixbMixbMTUsImFJIl0sInRvTG93ZXJDYXNlIixbN11dXV1dXV0sWzQ2LFsyMixbMjEsWzE1LCJhSSJdLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dLFs0NixbNTMsWzIsWzE1LCJhSiJdLCJwdXNoIixbNyxbImQiLFsyLFsxNSwiYUkiXSwidG9VcHBlckNhc2UiLFs3XV1dXV1dXV1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImFKIl0sImxlbmd0aCJdLDFdLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMCxbMCwiKD86IixbMixbMTUsImFKIl0sImpvaW4iLFs3LCJ8Il1dXSwiKSJdXV1dXSxbNDYsWzUzLFsyLFsxNSwiYUgiXSwicHVzaCIsWzcsWzE2LFsxNSwiYUoiXSwwXV1dXV1dXV1dLFszNixbMixbMTUsImFIIl0sImpvaW4iLFs3LCIiXV1dXSxbNTAsIngiLFs0NiwiYUYiLCJhRyIsImFIIl0sWzUyLCJhSSIsWyJ6IixbMTUsImFGIl0sWzE1LCJhSCJdXV0sWzIyLFsyOCxbMTUsImFJIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjgsWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFs0MSwiYUoiXSxbMywiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNjUsImFLIixbMTUsImFHIl0sWzQ2LFs1MyxbNTIsImFMIixbNyxbInYiLFsxNSwiYUsiXV0sWyJ3IixbMTUsImFLIl1dXV0sWzY1LCJhTSIsWzE1LCJhTCJdLFs0NixbNTMsWzUyLCJhTiIsWzMwLFsxNixbMTUsInQiXSxbMTUsImFNIl1dLFs0MyxbMTUsInQiXSxbMTUsImFNIl0sWyJiIixbMCxbMCwiKFs/Jl0iLFsxNSwiYU0iXV0sIj0pKFteJl0qKSJdLCJnaSJdXV1dLFszLCJhSiIsWzIsWzE1LCJhSiJdLCJyZXBsYWNlIixbNyxbMTUsImFOIl0sWzAsIiQxIixbMTUsInIiXV1dXV1dXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sWzE3LFsxNSwiYUkiXSwic2VhcmNoIl1dLFs0NixbMzYsWzE1LCJhRiJdXV1dLFsyMixbMjAsWzE2LFsxNSwiYUoiXSwwXSwiJiJdLFs0NixbMywiYUoiLFsyLFsxNSwiYUoiXSwic3Vic3RyaW5nIixbNywxXV1dXV0sWzIyLFsyMSxbMTYsWzE1LCJhSiJdLDBdLCI/Il0sWzQ2LFszLCJhSiIsWzAsIj8iLFsxNSwiYUoiXV1dXV0sWzIyLFsyMCxbMTUsImFKIl0sIj8iXSxbNDYsWzMsImFKIiwiIl1dXSxbNDMsWzE1LCJhSSJdLCJzZWFyY2giLFsxNSwiYUoiXV0sWzM2LFsiYUEiLFsxNSwiYUkiXSxbMTUsImFIIl1dXV0sWzUwLCJ6IixbNDYsImFGIiwiYUciXSxbMjIsWzIwLFsxNSwiYUciXSxbMTcsWzE1LCJzIl0sIlBBVEgiXV0sWzQ2LFs1MyxbMywiYUYiLFswLFsxNSwieSJdLFsxNSwiYUYiXV1dXV1dLFszNixbImYiLFsxNSwiYUYiXV1dXSxbNTAsImFBIixbNDYsImFGIiwiYUciXSxbNDEsImFIIl0sWzMsImFIIiwiIl0sWzIyLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJVUkwiXV0sWzQ2LFs1MyxbNDEsImFJIl0sWzMsImFJIiwiIl0sWzIyLFszMCxbMTcsWzE1LCJhRiJdLCJ1c2VybmFtZSJdLFsxNyxbMTUsImFGIl0sInBhc3N3b3JkIl1dLFs0NixbNTMsWzMsImFJIixbMCxbMTUsImFJIl0sWzAsWzAsWzAsWzE3LFsxNSwiYUYiXSwidXNlcm5hbWUiXSxbMzksWzE3LFsxNSwiYUYiXSwicGFzc3dvcmQiXSwiOiIsIiJdXSxbMTcsWzE1LCJhRiJdLCJwYXNzd29yZCJdXSwiQCJdXV1dXV0sWzMsImFIIixbMCxbMCxbMCxbMTcsWzE1LCJhRiJdLCJwcm90b2NvbCJdLCIvLyJdLFsxNSwiYUkiXV0sWzE3LFsxNSwiYUYiXSwiaG9zdCJdXV1dXV0sWzM2LFswLFswLFswLFsxNSwiYUgiXSxbMTcsWzE1LCJhRiJdLCJwYXRobmFtZSJdXSxbMTcsWzE1LCJhRiJdLCJzZWFyY2giXV0sWzE3LFsxNSwiYUYiXSwiaGFzaCJdXV1dLFs1MCwiYUIiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLFsyLFsxNSwiYUYiXSwicmVwbGFjZSIsWzcsWzE1LCJuIl0sWzE1LCJyIl1dXV0sWzIyLFszMCxbMjAsWzE1LCJhRyJdLFsxNyxbMTUsInMiXSwiVVJMIl1dLFsyMCxbMTUsImFHIl0sWzE3LFsxNSwicyJdLCJQQVRIIl1dXSxbNDYsWzUzLFs1MiwiYUkiLFsieiIsWzE1LCJhSCJdLFsxNSwiYUciXV1dLFsyMixbMjAsWzE1LCJhSSJdLFs0NF1dLFs0NixbMzYsWzE1LCJhSCJdXV1dLFs1MiwiYUoiLFsxNyxbMTUsImFJIl0sInNlYXJjaCJdXSxbNTIsImFLIixbMixbMTUsImFKIl0sInJlcGxhY2UiLFs3LFsxNSwibyJdLFsxNSwiciJdXV1dLFsyMixbMjAsWzE1LCJhSiJdLFsxNSwiYUsiXV0sWzQ2LFszNixbMTUsImFIIl1dXV0sWzQzLFsxNSwiYUkiXSwic2VhcmNoIixbMTUsImFLIl1dLFszLCJhSCIsWyJhQSIsWzE1LCJhSSJdLFsxNSwiYUciXV1dXV1dLFszNixbMTUsImFIIl1dXSxbNTAsImFDIixbNDYsImFGIl0sWzIyLFsyMCxbMTUsImFGIl0sWzE1LCJxIl1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiUEFUSCJdXV1dLFs0NixbMjIsWzIxLFsyLFsxNSwicCJdLCJpbmRleE9mIixbNyxbMTUsImFGIl1dXSxbMjcsMV1dLFs0NixbNTMsWzM2LFsxNyxbMTUsInMiXSwiVVJMIl1dXV0sWzQ2LFs1MyxbMzYsWzE3LFsxNSwicyJdLCJURVhUIl1dXV1dXV1dLFs1MCwiYUQiLFs0NiwiYUYiLCJhRyJdLFs0MSwiYUgiXSxbMywiYUgiLGZhbHNlXSxbNTIsImFJIixbImUiLFsxNSwiYUYiXV1dLFszOCxbMTUsImFJIl0sWzQ2LCJzdHJpbmciLCJhcnJheSIsIm9iamVjdCJdLFs0NixbNSxbNDYsWzUyLCJhSiIsWyJhQiIsWzE1LCJhRiJdLFsxNSwiYUciXV1dLFsyMixbMjEsWzE1LCJhRiJdLFsxNSwiYUoiXV0sWzQ2LFs1MyxbMzYsWzE1LCJhSiJdXV1dXSxbNF1dXSxbNSxbNDYsWzUzLFs0MSwiYUsiXSxbMywiYUsiLDBdLFs2MyxbNywiYUsiXSxbMjMsWzE1LCJhSyJdLFsxNyxbMTUsImFGIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJhSyJdLFszLCJhSyIsWzAsWzE1LCJhSyJdLDFdXV0sWzQ2LFs1MyxbNTIsImFMIixbImFEIixbMTYsWzE1LCJhRiJdLFsxNSwiYUsiXV0sWzE3LFsxNSwicyJdLCJURVhUIl1dXSxbMjIsWzIxLFsxNSwiYUwiXSxbNDRdXSxbNDYsWzUzLFs0MyxbMTUsImFGIl0sWzE1LCJhSyJdLFsxNSwiYUwiXV0sWzMsImFIIix0cnVlXV1dXV1dXV0sWzRdXV0sWzUsWzQ2LFs1NCwiYUsiLFsxNSwiYUYiXSxbNDYsWzUzLFs1MiwiYUwiLFsiYUQiLFsxNixbMTUsImFGIl0sWzE1LCJhSyJdXSxbMTcsWzE1LCJzIl0sIlRFWFQiXV1dLFsyMixbMjEsWzE1LCJhTCJdLFs0NF1dLFs0NixbNTMsWzQzLFsxNSwiYUYiXSxbMTUsImFLIl0sWzE1LCJhTCJdXSxbMywiYUgiLHRydWVdXV1dXV1dLFs0XV1dXV0sWzM2LFszOSxbMTUsImFIIl0sWzE1LCJhRiJdLFs0NF1dXV0sWzUwLCJhRSIsWzQ2LCJhRiIsImFHIl0sWzUyLCJhSCIsWzMwLFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQUMiXV1dLFs3XV1dLFsyMixbMjAsWzIsWzE1LCJhSCJdLCJpbmRleE9mIixbNyxbMTUsImFHIl1dXSxbMjcsMV1dLFs0NixbNTMsWzIsWzE1LCJhSCJdLCJwdXNoIixbNyxbMTUsImFHIl1dXV1dXSxbMixbMTUsImFGIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJoIl0sIkFDIl0sWzE1LCJhSCJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuY3JlYXRlUmVnZXgiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJkZWNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJlbmNvZGVVcmlDb21wb25lbnQiXV0sWzUyLCJlIixbInJlcXVpcmUiLCJnZXRUeXBlIl1dLFs1MiwiZiIsWyJyZXF1aXJlIiwicGFyc2VVcmwiXV0sWzUyLCJnIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiaCIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImkiLFsxNSwiX19tb2R1bGVfZ29sZEV2ZW50VXNhZ2VJZCJdXSxbNTIsImoiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFs1MiwiayIsWzE3LFsxNSwiYSJdLCJyZWRhY3RFbWFpbCJdXSxbNTIsImwiLFsxNyxbMTUsImEiXSwicmVkYWN0UXVlcnlQYXJhbXMiXV0sWzUyLCJtIixbMzksWzE1LCJsIl0sWzIsWzE1LCJsIl0sInNwbGl0IixbNywiLCJdXSxbN11dXSxbMjIsWzEsWzI4LFsxNyxbMTUsIm0iXSwibGVuZ3RoIl1dLFsyOCxbMTUsImsiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFs1MiwibiIsWyJiIiwiW0EtWjAtOS5fJSstXStAW0EtWjAtOS4tXStcXC5bQS1aXXsyLH0iLCJnaSJdXSxbNTIsIm8iLFsiYiIsWzAsIihbQS1aMC05Ll8tXXwlMjV8JTJCKSslNDBbQS1aMC05Li1dIiwiK1xcLltBLVpdezIsfSJdLCJnaSJdXSxbNTIsInAiLFs3LCJwYWdlX2xvY2F0aW9uIiwicGFnZV9yZWZlcnJlciIsInBhZ2VfcGF0aCIsImxpbmtfdXJsIiwidmlkZW9fdXJsIiwiZm9ybV9kZXN0aW5hdGlvbiJdXSxbNTIsInEiLCJwYWdlX3BhdGgiXSxbNTIsInIiLCIocmVkYWN0ZWQpIl0sWzUyLCJzIixbOCwiVEVYVCIsMCwiVVJMIiwxLCJQQVRIIiwyXV0sWzUyLCJ0IixbOF1dLFs1MiwidSIsWyJiIiwiKFtcXFxcXiQufD8qKygpe31dfFxcW3xcXFspIiwiZyJdXSxbNTIsInkiLCJodHRwOi8vLiJdLFsiZyIsWzE1LCJqIl0sWzUxLCIiLFs3LCJhRiJdLFsyMixbMTUsImsiXSxbNDYsWzUzLFs1MiwiYUciLFsyLFsxNSwiYUYiXSwiZ2V0SGl0S2V5cyIsWzddXV0sWzY1LCJhSCIsWzE1LCJhRyJdLFs0NixbNTMsWzIyLFsyMCxbMTUsImFIIl0sIl9zc3RfcGFyYW1ldGVycyJdLFs0NixbNl1dXSxbNTIsImFJIixbMixbMTUsImFGIl0sImdldEhpdERhdGEiLFs3LFsxNSwiYUgiXV1dXSxbMjIsWzI4LFsxNSwiYUkiXV0sWzQ2LFs2XV1dLFs1MiwiYUoiLFsiYUMiLFsxNSwiYUgiXV1dLFs1MiwiYUsiLFsiYUQiLFsxNSwiYUkiXSxbMTUsImFKIl1dXSxbMjIsWzIxLFsxNSwiYUsiXSxbNDRdXSxbNDYsWzUzLFsyLFsxNSwiYUYiXSwic2V0SGl0RGF0YSIsWzcsWzE1LCJhSCJdLFsxNSwiYUsiXV1dLFsiYUUiLFsxNSwiYUYiXSxbMzksWzIsWzE1LCJhRiJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiaCJdLCJCTyJdXV0sWzE3LFsxNSwiaSJdLCJXIl0sWzE3LFsxNSwiaSJdLCJPIl1dXV1dXV1dXV1dXSxbMjIsWzE3LFsxNSwibSJdLCJsZW5ndGgiXSxbNDYsWzUzLFs2NSwiYUciLFsxNSwicCJdLFs0NixbNTMsWzUyLCJhSCIsWzIsWzE1LCJhRiJdLCJnZXRIaXREYXRhIixbNyxbMTUsImFHIl1dXV0sWzIyLFsyOCxbMTUsImFIIl1dLFs0NixbNl1dXSxbNTIsImFJIixbMzksWzIwLFsxNSwiYUciXSxbMTUsInEiXV0sWzE3LFsxNSwicyJdLCJQQVRIIl0sWzE3LFsxNSwicyJdLCJVUkwiXV1dLFs1MiwiYUoiLFsieCIsWzE1LCJhSCJdLFsxNSwibSJdLFsxNSwiYUkiXV1dLFsyMixbMjEsWzE1LCJhSiJdLFsxNSwiYUgiXV0sWzQ2LFs1MyxbMixbMTUsImFGIl0sInNldEhpdERhdGEiLFs3LFsxNSwiYUciXSxbMTUsImFKIl1dXSxbImFFIixbMTUsImFGIl0sWzM5LFsyLFsxNSwiYUYiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImgiXSwiQk8iXV1dLFsxNyxbMTUsImkiXSwiWCJdLFsxNyxbMTUsImkiXSwiUCJdXV1dXV1dXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIixbNDYsImEiXSxbMjIsWzMwLFsyOCxbMTcsWzE1LCJhIl0sImNvbnZlcnNpb25SdWxlcyJdXSxbMjAsWzE3LFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sImxlbmd0aCJdLDBdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlQcmVIaXQiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJmIiwiZmlyc3RfdmlzaXQiXSxbNTIsImciLCJzZXNzaW9uX3N0YXJ0Il0sWzQxLCJoIl0sWzQxLCJpIl0sWyJkIixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdLFs1MSwiIixbNywiaiJdLFs1MiwiayIsWzgsInByZUhpdCIsWzE1LCJqIl1dXSxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiUCJdLHRydWVdXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImsiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVYiXSx0cnVlXV0sWzRdXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQVoiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImgiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJmIl1dXSxbMywiaCIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImgiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkEiXSx0cnVlXV0sWzRdXV1dXV1dXV1dLFsyMixbMixbMTUsImoiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQkwiXV1dLFs0NixbNTMsWzIyLFsyOCxbMTUsImkiXV0sWzQ2LFs1MyxbNTIsImwiLFsiYiIsWzE1LCJqIl0sWzgsIm9taXRIaXREYXRhIix0cnVlLCJvbWl0TWV0YWRhdGEiLHRydWVdXV0sWzIsWzE1LCJsIl0sInNldEV2ZW50TmFtZSIsWzcsWzE1LCJnIl1dXSxbMywiaSIsWzgsInByZUhpdCIsWzE1LCJsIl1dXV1dXSxbNjUsImwiLFsxNyxbMTUsImEiXSwiY29udmVyc2lvblJ1bGVzIl0sWzQ2LFs1MyxbMjIsWyJjIixbMTcsWzE1LCJsIl0sIm1hdGNoaW5nUnVsZXMiXSxbMTUsImkiXV0sWzQ2LFs1MyxbMixbMTUsImoiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImUiXSwiQk0iXSx0cnVlXV0sWzRdXV1dXV1dXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXQogLFs1MCwiX19jY2RfZW1fZG93bmxvYWQiLFs0NiwiYSJdLFs1MCwicSIsWzQ2LCJ2Il0sWzM2LFsxLFsxNSwidiJdLFsyMSxbMixbMixbMTUsInYiXSwidG9Mb3dlckNhc2UiLFs3XV0sIm1hdGNoIixbNyxbMTUsInAiXV1dLFs0NV1dXV1dLFs1MCwiciIsWzQ2LCJ2Il0sWzUyLCJ3IixbMixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl0sInNwbGl0IixbNywiLiJdXV0sWzUyLCJ4IixbMzksWzE4LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sMV0sWzE2LFsxNSwidyJdLFszNyxbMTcsWzE1LCJ3Il0sImxlbmd0aCJdLDFdXSwiIl1dLFszNixbMTYsWzIsWzE1LCJ4Il0sInNwbGl0IixbNywiLyJdXSwwXV1dLFs1MCwicyIsWzQ2LCJ2Il0sWzM2LFszOSxbMTIsWzIsWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLCJzdWJzdHJpbmciLFs3LDAsMV1dLCIvIl0sWzE3LFsxNSwidiJdLCJwYXRobmFtZSJdLFswLCIvIixbMTcsWzE1LCJ2Il0sInBhdGhuYW1lIl1dXV1dLFs1MCwidCIsWzQ2LCJ2Il0sWzQxLCJ3Il0sWzMsInciLCIiXSxbMjIsWzEsWzE1LCJ2Il0sWzE3LFsxNSwidiJdLCJocmVmIl1dLFs0NixbNTMsWzQxLCJ4Il0sWzMsIngiLFsyLFsxNyxbMTUsInYiXSwiaHJlZiJdLCJpbmRleE9mIixbNywiIyJdXV0sWzMsInciLFszOSxbMjMsWzE1LCJ4Il0sMF0sWzE3LFsxNSwidiJdLCJocmVmIl0sWzIsWzE3LFsxNSwidiJdLCJocmVmIl0sInN1YnN0cmluZyIsWzcsMCxbMTUsIngiXV1dXV1dXV0sWzM2LFsxNSwidyJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbURvd25sb2FkQWN0aXZpdHkiXV0sWzUyLCJmIixbMTcsWzE1LCJkIl0sIkEiXV0sWzUyLCJnIiwiZmlsZV9kb3dubG9hZCJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwibiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsIm8iLFsyLFsxNSwibCJdLCJBIixbNywiZG93bmxvYWQiXV1dLFs1MiwicCIsWzAsIl4ocGRmfHhsc3g/fGRvY3g/fHR4dHxydGZ8Y3N2fGV4ZXxrZXl8cHAoc3x0fHR4KXw3enxwa2d8cmFyfGd6fHppcHxhdml8IiwibW92fG1wNHxtcGU/Z3x3bXZ8bWlkaT98bXAzfHdhdnx3bWEpJCJdXSxbNTIsInUiLFsiayIsWzgsImNoZWNrVmFsaWRhdGlvbiIsdHJ1ZV1dXSxbMjIsWzI4LFsxNSwidSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImMiXSwic2V0SXRlbSIsWzcsWzE1LCJoIl0sdHJ1ZV1dLFsiaiIsImd0bS5saW5rQ2xpY2siLFs1MSwiIixbNywidiIsInciXSxbInciXSxbNTIsIngiLFs4LCJldmVudElkIixbMTYsWzE1LCJ2Il0sImd0bS51bmlxdWVFdmVudElkIl0sImRlZmVycmFibGUiLHRydWVdXSxbNTIsInkiLFsxNixbMTUsInYiXSwiZ3RtLmVsZW1lbnRVcmwiXV0sWzUyLCJ6IixbIm0iLFsxNSwieSJdXV0sWzIyLFsyOCxbMTUsInoiXV0sWzQ2LFszNl1dXSxbNTIsImFBIixbInIiLFsxNSwieiJdXV0sWzIyLFsyOCxbInEiLFsxNSwiYUEiXV1dLFs0NixbNTMsWzM2XV1dXSxbNTIsImFCIixbOCwibGlua19pZCIsWzE2LFsxNSwidiJdLCJndG0uZWxlbWVudElkIl0sImxpbmtfdXJsIixbInQiLFsxNSwieiJdXSwibGlua190ZXh0IixbMTYsWzE1LCJ2Il0sImd0bS5lbGVtZW50VGV4dCJdLCJmaWxlX25hbWUiLFsicyIsWzE1LCJ6Il1dLCJmaWxlX2V4dGVuc2lvbiIsWzE1LCJhQSJdXV0sWzIsWzE1LCJsIl0sIkIiLFs3LFsxNSwieCJdXV0sWyJuIixbMTUsIm8iXSxbMTUsImciXSxbMTUsImFCIl0sWzE1LCJ4Il1dXSxbMTUsInUiXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX2Zvcm0iLFs0NiwiYSJdLFs1MCwieCIsWzQ2LCJhTCJdLFs1MiwiYU0iLFszMCxbMTYsWzE1LCJhTCJdLFsxNSwiciJdXSxbOF1dXSxbNDMsWzE1LCJhTSJdLCJldmVudF91c2FnZSIsWzcsWzE3LFsxNSwiZyJdLCJIIl1dXSxbNDMsWzE1LCJhTCJdLFsxNSwiciJdLFsxNSwiYU0iXV1dLFs1MCwieSIsWzQ2LCJhTCIsImFNIl0sWzUyLCJhTiIsWzMwLFsxNixbMTUsImFMIl0sWzE1LCJyIl1dLFs4XV1dLFsyMixbMTYsWzE1LCJhTSJdLCJndG0uZm9ybUNhbmNlbGVkIl0sWzQ2LFs1MyxbNDMsWzE1LCJhTiJdLFsxNyxbMTUsImkiXSwiQUoiXSx0cnVlXV1dXSxbMixbMTUsInUiXSwiQiIsWzcsWzE1LCJhTCJdLFsxNSwiYU4iXV1dXSxbNTAsInoiLFs0NiwiYUwiLCJhTSIsImFOIl0sWzUyLCJhTyIsWzIsWzE1LCJ3Il0sImZpbHRlciIsWzcsWzUxLCIiLFs3LCJhUSJdLFszNixbMjAsWzIsWzE1LCJhUSJdLCJpbmRleE9mIixbNywiQVctIl1dLDBdXV1dXV0sWzIyLFsxOCxbMTcsWzE1LCJhTyJdLCJsZW5ndGgiXSwwXSxbNDYsWzUzLFsidiIsWzE1LCJhTyJdLFsxNSwiYUwiXSxbMTUsImFNIl0sWzE1LCJhTiJdXV1dXSxbNTIsImFQIixbMixbMTUsInciXSwiZmlsdGVyIixbNyxbNTEsIiIsWzcsImFRIl0sWzM2LFsyMSxbMixbMTUsImFRIl0sImluZGV4T2YiLFs3LCJBVy0iXV0sMF1dXV1dXSxbMjIsWzE4LFsxNyxbMTUsImFQIl0sImxlbmd0aCJdLDBdLFs0NixbNTMsWzQzLFsxNSwiYU4iXSwiZGVmZXJyYWJsZSIsdHJ1ZV0sWyJ2IixbMTUsImFQIl0sWzE1LCJhTCJdLFsxNSwiYU0iXSxbMTUsImFOIl1dXV1dXSxbNTAsImFLIixbNDZdLFs1MiwiYUwiLFsibSIsWyJsIiwwLDIuMTQ3NDgzNjQ3RTldXV0sWzQxLCJhTSJdLFszLCJhTSIsMF0sWzM2LFs1MSwiIixbNywiYU4iXSxbMjIsWzIwLFsxNSwiYU4iXSxbMTUsInMiXV0sWzQ2LFs1MyxbMywiYU0iLFsiayJdXSxbMzYsWzAsWyJtIixbMTUsImFNIl1dLFsxNSwiYUwiXV1dXV0sWzQ2LFsyMixbMjAsWzE1LCJhTiJdLFsxNSwibyJdXSxbNDYsWzUzLFsyMixbMjAsWzE1LCJhTSJdLDBdLFs0NixbNTMsWzM2LFswLFsibSIsWyJrIl1dLFsxNSwiYUwiXV1dXV1dLFs1MiwiYU8iLFsiayJdXSxbMjIsWzIzLFszNyxbMTUsImFPIl0sWzE1LCJhTSJdXSwyMDBdLFs0NixbNTMsWzUyLCJhUCIsWzE1LCJhTSJdXSxbMywiYU0iLDBdLFszNixbMCxbIm0iLFsxNSwiYVAiXV0sWzE1LCJhTCJdXV1dXV0sWzMsImFNIiwwXSxbMzYsWzAsWyJtIixbMTUsImFPIl1dLFsxNSwiYUwiXV1dXV1dXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiYyIsWzE1LCJfX21vZHVsZV9jY2RFbUZvcm1BY3Rpdml0eSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2dvbGRFdmVudFVzYWdlSWQiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImoiLFsxNSwiX19tb2R1bGVfYWR3b3Jkc0hpdFR5cGUiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJnZXRUaW1lc3RhbXBNaWxsaXMiXV0sWzUyLCJsIixbInJlcXVpcmUiLCJnZW5lcmF0ZVJhbmRvbSJdXSxbNTIsIm0iLFsicmVxdWlyZSIsIm1ha2VTdHJpbmciXV0sWzUyLCJuIixbMTcsWzE1LCJoIl0sIkIiXV0sWzUyLCJvIiwiZm9ybV9zdWJtaXQiXSxbNTIsInAiLCJmb3JtX3N0YXJ0Il0sWzUyLCJxIiwiaXNSZWdpc3RlcmVkIl0sWzUyLCJyIiwiZXZlbnRNZXRhZGF0YSJdLFs1MiwicyIsImNsaWNrIl0sWzUyLCJ0IixbMTcsWzE1LCJhIl0sImluc3RhbmNlRGVzdGluYXRpb25JZCJdXSxbMjIsWyJkIixbMTUsInQiXSxbMTUsIm4iXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sIkEiLFs3LFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE3LFsxNSwiYSJdLCJza2lwVmFsaWRhdGlvbiJdLFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdXV0sWzIyLFsyLFsxNSwiZiJdLCJnZXRJdGVtIixbNyxbMTUsInEiXV1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNyxbMTUsInEiXSx0cnVlXV0sWzUyLCJ1IixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJ2IixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwidyIsWzIsWzE1LCJ1Il0sIkEiLFs3LCJmb3JtIl1dXSxbNTIsImFBIixbOF1dLFs1MiwiYUIiLFs1MSwiIixbNywiYUwiLCJhTSJdLFsyMixbMTUsImFNIl0sWzQ2LFsiYU0iXV1dLFs1MiwiYU4iLFsxNixbMTUsImFMIl0sImd0bS5lbGVtZW50SWQiXV0sWzIyLFsxNixbMTUsImFBIl0sWzE1LCJhTiJdXSxbNDYsWzM2XV1dLFs0MyxbMTUsImFBIl0sWzE1LCJhTiJdLHRydWVdLFs1MiwiYU8iLFs4LCJmb3JtX2lkIixbMTUsImFOIl0sImZvcm1fbmFtZSIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdLCJmb3JtX2Rlc3RpbmF0aW9uIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudFVybCJdLCJmb3JtX2xlbmd0aCIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTGVuZ3RoIl0sImZpcnN0X2ZpZWxkX2lkIixbMTYsWzE1LCJhTCJdLCJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZElkIl0sImZpcnN0X2ZpZWxkX25hbWUiLFsxNixbMTUsImFMIl0sImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkTmFtZSJdLCJmaXJzdF9maWVsZF90eXBlIixbMTYsWzE1LCJhTCJdLCJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZFR5cGUiXSwiZmlyc3RfZmllbGRfcG9zaXRpb24iLFsxNixbMTUsImFMIl0sImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkUG9zaXRpb24iXV1dLFs1MiwiYVAiLFs4LCJldmVudElkIixbMTYsWzE1LCJhTCJdLCJndG0udW5pcXVlRXZlbnRJZCJdXV0sWyJ4IixbMTUsImFQIl1dLFsieSIsWzE1LCJhUCJdLFsxNSwiYUwiXV0sWzQzLFsxNixbMTUsImFQIl0sWzE1LCJyIl1dLFsxNyxbMTUsImkiXSwiQUEiXSwiZm9ybV9zdGFydCJdLFsieiIsWzE1LCJwIl0sWzE1LCJhTyJdLFsxNSwiYVAiXV1dXSxbNTIsImFDIixbImFLIl1dLFs1MiwiYUQiLFs1MSwiIixbNywiYUwiLCJhTSJdLFs1MiwiYU4iLFsiYUMiLFsxNSwibyJdXV0sWyJhQiIsWzE1LCJhTCJdLFs0NF1dLFs1MiwiYU8iLFs4LCJmb3JtX2lkIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudElkIl0sImZvcm1fbmFtZSIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdLCJmb3JtX2Rlc3RpbmF0aW9uIixbMTYsWzE1LCJhTCJdLCJndG0uZWxlbWVudFVybCJdLCJmb3JtX2xlbmd0aCIsWzE2LFsxNSwiYUwiXSwiZ3RtLmludGVyYWN0ZWRGb3JtTGVuZ3RoIl0sImZvcm1fc3VibWl0X3RleHQiLFsxNixbMTUsImFMIl0sImd0bS5mb3JtU3VibWl0RWxlbWVudFRleHQiXV1dLFs0MyxbMTUsImFPIl0sImV2ZW50X2NhbGxiYWNrIixbMTUsImFNIl1dLFs1MiwiYVAiLFs4LCJldmVudElkIixbMTYsWzE1LCJhTCJdLCJndG0udW5pcXVlRXZlbnRJZCJdXV0sWyJ4IixbMTUsImFQIl1dLFsieSIsWzE1LCJhUCJdLFsxNSwiYUwiXV0sWzQzLFsxNixbMTUsImFQIl0sWzE1LCJyIl1dLFsxNyxbMTUsImkiXSwiQUEiXSwiZm9ybV9zdWJtaXQiXSxbNDMsWzE2LFsxNSwiYVAiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJTIl0sWzE1LCJhTiJdXSxbInoiLFsxNSwibyJdLFsxNSwiYU8iXSxbMTUsImFQIl1dXV0sWzUyLCJhRSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuYWRkRGF0YUxheWVyRXZlbnRMaXN0ZW5lciJdXSxbNTIsImFGIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1TdWJtaXQiXV0sWzUyLCJhRyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Gb3JtSW50ZXJhY3Rpb24iXV0sWzUyLCJhSCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayJdXSxbNTIsImFJIixbImFHIl1dLFsyMixbMjgsWzE1LCJhSSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbImFFIiwiZ3RtLmZvcm1JbnRlcmFjdCIsWzE1LCJhQiJdLFsxNSwiYUkiXV0sWzUyLCJhSiIsWyJhRiIsWzgsImNoZWNrVmFsaWRhdGlvbiIsZmFsc2UsIndhaXRGb3JUYWdzIixmYWxzZV1dXSxbMjIsWzI4LFsxNSwiYUoiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWyJhRSIsImd0bS5mb3JtU3VibWl0IixbMTUsImFEIl0sWzE1LCJhSiJdXSxbMjIsWyJlIixbMTcsWzE1LCJiIl0sIkNQIl1dLFs0NixbNTMsWzUyLCJhTCIsWyJhSCIsWzgsInVzZVYyRXZlbnROYW1lIix0cnVlLCJjc3NTZWxlY3RvciIsWzAsWzAsWzAsWzAsWzAsWzAsWzAsImZvcm0gYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sICIsImZvcm0gYnV0dG9uOm5vdChbdHlwZV0pLCJdLCJmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sICJdLCJmb3JtIGlucHV0W3R5cGU9XCJpbWFnZVwiXSwgIl0sImJ1dHRvbltmb3JtXVt0eXBlPVwic3VibWl0XCJdLCAiXSwiYnV0dG9uW2Zvcm1dOm5vdChbdHlwZV0pLCAiXSwiaW5wdXRbdHlwZT1cInN1Ym1pdFwiXVtmb3JtXSwgIl0sImlucHV0W3R5cGU9XCJpbWFnZVwiXVtmb3JtXSJdXV1dLFs1MCwiYU0iLFs0NiwiYU4iLCJhTyJdLFs1MiwiYVAiLFs4LCJldmVudF9jYWxsYmFjayIsWzE1LCJhTyJdXV0sWzUyLCJhUSIsWzgsImV2ZW50SWQiLFsxNixbMTUsImFOIl0sImd0bS51bmlxdWVFdmVudElkIl1dXSxbIngiLFsxNSwiYVEiXV0sWyJ5IixbMTUsImFRIl0sWzE1LCJhTiJdXSxbNDMsWzE2LFsxNSwiYVEiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJBUiJdLFsxNyxbMTUsImoiXSwiSyJdXSxbNDMsWzE2LFsxNSwiYVEiXSxbMTUsInIiXV0sWzE3LFsxNSwiaSJdLCJBQSJdLCJjbGljayJdLFs0MyxbMTYsWzE1LCJhUSJdLFsxNSwiciJdXSxbMTcsWzE1LCJpIl0sIlMiXSxbImFDIixbMTUsInMiXV1dLFsieiIsWzE1LCJvIl0sWzE1LCJhUCJdLFsxNSwiYVEiXV1dLFsiYUUiLCJndG0uY2xpY2stdjIiLFsxNSwiYU0iXSxbMTUsImFMIl1dXV1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9vdXRib3VuZF9jbGljayIsWzQ2LCJhIl0sWzUwLCJyIixbNDYsInciXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2LFs0NF1dXV0sWzQxLCJ4Il0sWzMsIngiLCIiXSxbMjIsWzEsWzE1LCJ3Il0sWzE3LFsxNSwidyJdLCJocmVmIl1dLFs0NixbNTMsWzQxLCJ5Il0sWzMsInkiLFsyLFsxNyxbMTUsInciXSwiaHJlZiJdLCJpbmRleE9mIixbNywiIyJdXV0sWzMsIngiLFszOSxbMjMsWzE1LCJ5Il0sMF0sWzE3LFsxNSwidyJdLCJocmVmIl0sWzIsWzE3LFsxNSwidyJdLCJocmVmIl0sInN1YnN0cmluZyIsWzcsMCxbMTUsInkiXV1dXV1dXV0sWzM2LFsxNSwieCJdXV0sWzUwLCJzIixbNDYsInciXSxbMjIsWzI4LFsxNSwidyJdXSxbNDYsWzM2LFs0NF1dXV0sWzQxLCJ4Il0sWzMsIngiLFsxNyxbMTUsInciXSwiaG9zdG5hbWUiXV0sWzUyLCJ5IixbMixbMTUsIngiXSwibWF0Y2giLFs3LCJed3d3XFxkKlxcLiJdXV0sWzIyLFsxLFsxNSwieSJdLFsxNixbMTUsInkiXSwwXV0sWzQ2LFszLCJ4IixbMixbMTUsIngiXSwic3Vic3RyaW5nIixbNyxbMTcsWzE2LFsxNSwieSJdLDBdLCJsZW5ndGgiXV1dXV1dLFszNixbMTUsIngiXV1dLFs1MCwidCIsWzQ2LCJ3Il0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbNTIsIngiLFsyLFsxNyxbMTUsInciXSwiaG9zdG5hbWUiXSwidG9Mb3dlckNhc2UiLFs3XV1dLFsyMixbMjgsWzE1LCJ4Il1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNDEsInkiXSxbMywieSIsWzIsWyJzIixbIm8iLFsibiJdXV0sInRvTG93ZXJDYXNlIixbN11dXSxbNDEsInoiXSxbMywieiIsWzM3LFsxNyxbMTUsIngiXSwibGVuZ3RoIl0sWzE3LFsxNSwieSJdLCJsZW5ndGgiXV1dLFsyMixbMSxbMTgsWzE1LCJ6Il0sMF0sWzI5LFsyLFsxNSwieSJdLCJjaGFyQXQiLFs3LDBdXSwiLiJdXSxbNDYsWzUzLFszMixbMTUsInoiXSxbMywieiIsWzM3LFsxNSwieiJdLDFdXV0sWzMsInkiLFswLCIuIixbMTUsInkiXV1dXV1dLFsyMixbMSxbMTksWzE1LCJ6Il0sMF0sWzEyLFsyLFsxNSwieCJdLCJpbmRleE9mIixbNyxbMTUsInkiXSxbMTUsInoiXV1dLFsxNSwieiJdXV0sWzQ2LFs1MyxbMzYsZmFsc2VdXV1dLFszNix0cnVlXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJ0ZW1wbGF0ZVN0b3JhZ2UiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9jY2RFbU91dGJvdW5kQ2xpY2tBY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRCJdXSxbNTIsImciLCJjbGljayJdLFs1MiwiaCIsImlzUmVnaXN0ZXJlZCJdLFs1MiwiaSIsWzE3LFsxNSwiYSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXV0sWzIyLFsiYiIsWzE1LCJpIl0sWzE1LCJmIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXSxbMzZdXV1dLFsyLFsxNSwiZSJdLCJBIixbNyxbMTUsImkiXSxbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXV1dLFsyMixbMixbMTUsImMiXSwiZ2V0SXRlbSIsWzcsWzE1LCJoIl1dXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImoiLFsicmVxdWlyZSIsImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkxpbmtDbGljayJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZW5oYW5jZWRNZWFzdXJlbWVudCJdXSxbNTIsIm0iLFsicmVxdWlyZSIsImludGVybmFsLmdldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsIm4iLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsIm8iLFsicmVxdWlyZSIsInBhcnNlVXJsIl1dLFs1MiwicCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsInEiLFsyLFsxNSwibCJdLCJBIixbNywib3V0Ym91bmRfY2xpY2siXV1dLFs1MiwidSIsWyJtIixbMTUsImkiXSwiY3Jvc3NfZG9tYWluX2NvbmRpdGlvbnMiXV0sWzUyLCJ2IixbImsiLFs4LCJhZmZpbGlhdGVEb21haW5zIixbMTUsInUiXSwiY2hlY2tWYWxpZGF0aW9uIix0cnVlLCJ3YWl0Rm9yVGFncyIsZmFsc2VdXV0sWzIyLFsyOCxbMTUsInYiXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25GYWlsdXJlIixbN11dLFszNl1dXV0sWzIsWzE1LCJjIl0sInNldEl0ZW0iLFs3LFsxNSwiaCJdLHRydWVdXSxbImoiLCJndG0ubGlua0NsaWNrIixbNTEsIiIsWzcsInciLCJ4Il0sWzUyLCJ5IixbIm8iLFsxNixbMTUsInciXSwiZ3RtLmVsZW1lbnRVcmwiXV1dLFsyMixbMjgsWyJ0IixbMTUsInkiXV1dLFs0NixbNTMsWyJ4Il0sWzM2XV1dXSxbNTIsInoiLFs4LCJsaW5rX2lkIixbMTYsWzE1LCJ3Il0sImd0bS5lbGVtZW50SWQiXSwibGlua19jbGFzc2VzIixbMTYsWzE1LCJ3Il0sImd0bS5lbGVtZW50Q2xhc3NlcyJdLCJsaW5rX3VybCIsWyJyIixbMTUsInkiXV0sImxpbmtfZG9tYWluIixbInMiLFsxNSwieSJdXSwib3V0Ym91bmQiLHRydWVdXSxbNDMsWzE1LCJ6Il0sImV2ZW50X2NhbGxiYWNrIixbMTUsIngiXV0sWzUyLCJhQSIsWzgsImV2ZW50SWQiLFsxNixbMTUsInciXSwiZ3RtLnVuaXF1ZUV2ZW50SWQiXSwiZGVmZXJyYWJsZSIsdHJ1ZV1dLFsyLFsxNSwibCJdLCJCIixbNyxbMTUsImFBIl1dXSxbInAiLFsxNSwicSJdLFsxNSwiZyJdLFsxNSwieiJdLFsxNSwiYUEiXV1dLFsxNSwidiJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZW1fcGFnZV92aWV3IixbNDYsImEiXSxbMjIsWzI4LFsxNyxbMTUsImEiXSwiaGlzdG9yeUV2ZW50cyJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciJdXSxbNTIsImQiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfY2NkRW1QYWdlVmlld0FjdGl2aXR5Il1dLFs1MiwiZiIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImciLFsxNyxbMTUsImYiXSwiQyJdXSxbNTIsImgiLCJwYWdlX3ZpZXciXSxbNTIsImkiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImoiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiaiJdLFsxNSwiZyJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJqIl1dXSxbMjIsWzIsWzE1LCJkIl0sImdldEl0ZW0iLFs3LFsxNSwiaSJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJrIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwibCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25IaXN0b3J5Q2hhbmdlIl1dLFs1MiwibSIsWzE1LCJfX21vZHVsZV9lbmhhbmNlZE1lYXN1cmVtZW50Il1dLFs1MiwibiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2VuZEd0YWdFdmVudCJdXSxbNTIsIm8iLFsyLFsxNSwibSJdLCJBIixbNywicGFnZV92aWV3Il1dXSxbNTIsInAiLFs4LCJpbnRlcnZhbCIsMTAwMCwidXNlVjJFdmVudE5hbWUiLHRydWVdXSxbNTIsInEiLFsibCIsWzE1LCJwIl1dXSxbMjIsWzI4LFsxNSwicSJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PbkZhaWx1cmUiLFs3XV0sWzM2XV1dXSxbMixbMTUsImQiXSwic2V0SXRlbSIsWzcsWzE1LCJpIl0sdHJ1ZV1dLFsiayIsImd0bS5oaXN0b3J5Q2hhbmdlLXYyIixbNTEsIiIsWzcsInIiLCJzIl0sWyJzIl0sWzUyLCJ0IixbMTYsWzE1LCJyIl0sImd0bS5vbGRVcmwiXV0sWzIyLFsyMCxbMTYsWzE1LCJyIl0sImd0bS5uZXdVcmwiXSxbMTUsInQiXV0sWzQ2LFszNl1dXSxbNTIsInUiLFsxNixbMTUsInIiXSwiZ3RtLmhpc3RvcnlDaGFuZ2VTb3VyY2UiXV0sWzIyLFsxLFsxLFsyMSxbMTUsInUiXSwicHVzaFN0YXRlIl0sWzIxLFsxNSwidSJdLCJwb3BzdGF0ZSJdXSxbMjEsWzE1LCJ1Il0sInJlcGxhY2VTdGF0ZSJdXSxbNDYsWzUzLFszNl1dXV0sWzUyLCJ2IixbOF1dLFsyMixbMTcsWzE1LCJhIl0sImluY2x1ZGVQYXJhbXMiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwicGFnZV9sb2NhdGlvbiIsWzE2LFsxNSwiciJdLCJndG0ubmV3VXJsIl1dLFs0MyxbMTUsInYiXSwicGFnZV9yZWZlcnJlciIsWzE1LCJ0Il1dXV1dLFs1MiwidyIsWzgsImV2ZW50SWQiLFsxNixbMTUsInIiXSwiZ3RtLnVuaXF1ZUV2ZW50SWQiXV1dLFsyMixbMjEsWzE3LFsxNSwiYSJdLCJkZWZlclBhZ2VWaWV3Il0sZmFsc2VdLFs0NixbNTMsWzQzLFsxNSwidyJdLCJkZWZlcnJhYmxlIix0cnVlXV1dXSxbMixbMTUsIm0iXSwiQiIsWzcsWzE1LCJ3Il1dXSxbIm4iLFsxNSwibyJdLFsxNSwiaCJdLFsxNSwidiJdLFsxNSwidyJdXV0sWzE1LCJxIl1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9zY3JvbGwiLFs0NiwiYSJdLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwidGVtcGxhdGVTdG9yYWdlIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfY2NkRW1TY3JvbGxBY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRSJdXSxbNTIsImciLCJzY3JvbGwiXSxbNTIsImgiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImkiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJpIl0sWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl1dXSxbMjIsWzIsWzE1LCJjIl0sImdldEl0ZW0iLFs3LFsxNSwiaCJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25TY3JvbGwiXV0sWzUyLCJsIixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwibiIsWzIsWzE1LCJsIl0sIkEiLFs3LCJzY3JvbGwiXV1dLFs1MiwibyIsWyJrIixbOCwidmVydGljYWxUaHJlc2hvbGRVbml0cyIsIlBFUkNFTlQiLCJ2ZXJ0aWNhbFRocmVzaG9sZHMiLDkwXV1dLFsyMixbMjgsWzE1LCJvIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbMzZdXV1dLFsyLFsxNSwiYyJdLCJzZXRJdGVtIixbNyxbMTUsImgiXSx0cnVlXV0sWyJqIiwiZ3RtLnNjcm9sbERlcHRoIixbNTEsIiIsWzcsInAiLCJxIl0sWyJxIl0sWzUyLCJyIixbOCwiZXZlbnRJZCIsWzE2LFsxNSwicCJdLCJndG0udW5pcXVlRXZlbnRJZCJdLCJkZWZlcnJhYmxlIix0cnVlXV0sWzUyLCJzIixbOCwicGVyY2VudF9zY3JvbGxlZCIsWzE2LFsxNSwicCJdLCJndG0uc2Nyb2xsVGhyZXNob2xkIl1dXSxbMixbMTUsImwiXSwiQiIsWzcsWzE1LCJyIl1dXSxbIm0iLFsxNSwibiJdLFsxNSwiZyJdLFsxNSwicyJdLFsxNSwiciJdXV0sWzE1LCJvIl1dLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV1dCiAsWzUwLCJfX2NjZF9lbV9zaXRlX3NlYXJjaCIsWzQ2LCJhIl0sWzUyLCJiIixbInJlcXVpcmUiLCJnZXRRdWVyeVBhcmFtZXRlcnMiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiZ2V0Q29udGFpbmVyVmVyc2lvbiJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIl1dLFs1MiwiZyIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImgiLFsxNSwiX19tb2R1bGVfY2NkRW1TaXRlU2VhcmNoQWN0aXZpdHkiXV0sWzUyLCJpIixbMixbMTUsImgiXSwiQSIsWzcsWzE3LFsxNSwiYSJdLCJzZWFyY2hRdWVyeVBhcmFtcyJdLFsxNSwiYiJdXV1dLFs1MiwiaiIsWzMwLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzE3LFsiZCJdLCJjb250YWluZXJJZCJdXV0sWzUyLCJrIixbOCwiZGVmZXJyYWJsZSIsdHJ1ZSwiZXZlbnRJZCIsWzE3LFsxNSwiYSJdLCJndG1FdmVudElkIl0sImV2ZW50TWV0YWRhdGEiLFs4LCJlbV9ldmVudCIsdHJ1ZV1dXSxbMjIsWzE1LCJpIl0sWzQ2LFs1MyxbNTIsImwiLFszOSxbMjgsWzI4LFsxNyxbMTUsImEiXSwiaW5jbHVkZVBhcmFtcyJdXV0sWzIsWzE1LCJoIl0sIkIiLFs3LFsxNSwiaSJdLFsxNyxbMTUsImEiXSwiYWRkaXRpb25hbFF1ZXJ5UGFyYW1zIl0sWzE1LCJiIl1dXSxbOF1dXSxbNDMsWzE3LFsxNSwiayJdLCJldmVudE1ldGFkYXRhIl0sWzE3LFsxNSwiZyJdLCJaIl0sImEiXSxbImMiLFsxNSwiaiJdLCJ2aWV3X3NlYXJjaF9yZXN1bHRzIixbMTUsImwiXSxbMTUsImsiXV1dXV0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2VtX3ZpZGVvIixbNDYsImEiXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2NjZEVtVmlkZW9BY3Rpdml0eSJdXSxbNTIsImYiLFsxNyxbMTUsImQiXSwiRiJdXSxbNTIsImciLCJ2aWRlb19zdGFydCJdLFs1MiwiaCIsInZpZGVvX3Byb2dyZXNzIl0sWzUyLCJpIiwidmlkZW9fY29tcGxldGUiXSxbNTIsImoiLCJpc1JlZ2lzdGVyZWQiXSxbNTIsImsiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl1dLFsyMixbImIiLFsxNSwiayJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbMixbMTUsImUiXSwiQSIsWzcsWzE1LCJrIl0sWzE3LFsxNSwiYSJdLCJpbmNsdWRlUGFyYW1zIl1dXSxbMjIsWzIsWzE1LCJjIl0sImdldEl0ZW0iLFs3LFsxNSwiaiJdXV0sWzQ2LFs1MyxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dLFszNl1dXV0sWzUyLCJsIixbInJlcXVpcmUiLCJpbnRlcm5hbC5hZGREYXRhTGF5ZXJFdmVudExpc3RlbmVyIl1dLFs1MiwibSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Zb3VUdWJlQWN0aXZpdHkiXV0sWzUyLCJuIixbMTUsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiXV0sWzUyLCJvIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZW5kR3RhZ0V2ZW50Il1dLFs1MiwicCIsWzIsWzE1LCJuIl0sIkEiLFs3LCJ2aWRlbyJdXV0sWzUyLCJxIixbIm0iLFs4LCJjYXB0dXJlQ29tcGxldGUiLHRydWUsImNhcHR1cmVTdGFydCIsdHJ1ZSwicHJvZ3Jlc3NUaHJlc2hvbGRzUGVyY2VudCIsWzcsMTAsMjUsNTAsNzVdXV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNTMsWzIsWzE1LCJhIl0sImd0bU9uRmFpbHVyZSIsWzddXSxbMzZdXV1dLFsyLFsxNSwiYyJdLCJzZXRJdGVtIixbNyxbMTUsImoiXSx0cnVlXV0sWyJsIiwiZ3RtLnZpZGVvIixbNTEsIiIsWzcsInIiLCJzIl0sWyJzIl0sWzUyLCJ0IixbMTYsWzE1LCJyIl0sImd0bS52aWRlb1N0YXR1cyJdXSxbNDEsInUiXSxbMjIsWzIwLFsxNSwidCJdLCJzdGFydCJdLFs0NixbNTMsWzMsInUiLFsxNSwiZyJdXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLCJwcm9ncmVzcyJdLFs0NixbNTMsWzMsInUiLFsxNSwiaCJdXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLCJjb21wbGV0ZSJdLFs0NixbNTMsWzMsInUiLFsxNSwiaSJdXV1dLFs0NixbNTMsWzM2XV1dXV1dXV0sWzUyLCJ2IixbOCwidmlkZW9fY3VycmVudF90aW1lIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb0N1cnJlbnRUaW1lIl0sInZpZGVvX2R1cmF0aW9uIixbMTYsWzE1LCJyIl0sImd0bS52aWRlb0R1cmF0aW9uIl0sInZpZGVvX3BlcmNlbnQiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvUGVyY2VudCJdLCJ2aWRlb19wcm92aWRlciIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9Qcm92aWRlciJdLCJ2aWRlb190aXRsZSIsWzE2LFsxNSwiciJdLCJndG0udmlkZW9UaXRsZSJdLCJ2aWRlb191cmwiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvVXJsIl0sInZpc2libGUiLFsxNixbMTUsInIiXSwiZ3RtLnZpZGVvVmlzaWJsZSJdXV0sWzUyLCJ3IixbOCwiZXZlbnRJZCIsWzE2LFsxNSwiciJdLCJndG0udW5pcXVlRXZlbnRJZCJdLCJkZWZlcnJhYmxlIix0cnVlXV0sWzIsWzE1LCJuIl0sIkIiLFs3LFsxNSwidyJdXV0sWyJvIixbMTUsInAiXSxbMTUsInUiXSxbMTUsInYiXSxbMTUsInciXV1dLFsxNSwicSJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfZmlyc3QiLFs0NiwiYSJdLFs1MCwiZSIsWzQ2LCJmIl0sWzIsWzE1LCJjIl0sIkEiLFs3LFsxNSwiZiJdXV0sWzIsWzE1LCJkIl0sIkEiLFs3LFsxNSwiZiJdXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfdGFza1BsYXRmb3JtRGV0ZWN0aW9uIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV90YXNrU2V0VGVzdEhpdFBhcmFtcyJdXSxbImIiLFsxNyxbMTUsImEiXSwiaW5zdGFuY2VEZXN0aW5hdGlvbklkIl0sWzUxLCIiLFs3LCJmIl0sWyJlIixbMTUsImYiXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19jY2RfZ2FfbGFzdCIsWzQ2LCJhIl0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTAsIl9fY2NkX2dhX3JlZ3Njb3BlIixbNDYsImEiXSxbNTIsImIiLFsxNSwiX19tb2R1bGVfY2NkR2FSZWdpb25TY29wZWRTZXR0aW5ncyJdXSxbNTIsImMiLFsyLFsxNSwiYiJdLCJCIixbNyxbMTUsImEiXV1dXSxbMixbMTUsImIiXSwiQSIsWzcsWzE1LCJhIl0sWzE1LCJjIl1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19lIixbNDYsImEiXSxbMzYsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFsicmVxdWlyZSIsImludGVybmFsLmdldEV2ZW50RGF0YSJdXSxbIiQwIiwiZXZlbnQiXV1dXQogLFs1MCwiX19nY3QiLFs0NiwiYSJdLFs1MCwiZyIsWzQ2LCJtIl0sWzUyLCJuIixbN11dLFs2NSwibyIsWzE1LCJtIl0sWzQ2LFs1MyxbNTIsInAiLFsiYiIsWzE1LCJvIl1dXSxbMjIsWzIxLFsxNSwicCJdLFs0NV1dLFs0NixbMixbMTUsIm4iXSwicHVzaCIsWzcsWzE1LCJwIl1dXV1dXV1dLFszNixbMTUsIm4iXV1dLFs1MCwiaCIsWzQ2LCJtIl0sWzUyLCJuIixbMTcsWzE1LCJtIl0sImxpbmtlciJdXSxbMjIsWzEsWzE1LCJuIl0sWzE2LFsxNSwibiJdLCJkb21haW5zIl1dLFs0NixbNTMsWzQzLFsxNSwibiJdLCJkb21haW5zIixbImciLFsxNixbMTUsIm4iXSwiZG9tYWlucyJdXV1dXV0sWzM2LFsxNSwibiJdXV0sWzUwLCJpIixbNDYsIm0iXSxbNTIsIm4iLFsxNyxbMTUsIm0iXSwicmVmZXJyYWxFeGNsdXNpb25EZWZpbml0aW9uIl1dLFsyMixbMSxbMTUsIm4iXSxbMTYsWzE1LCJuIl0sImluY2x1ZGVfY29uZGl0aW9ucyJdXSxbNDYsWzUzLFs0MyxbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIixbImciLFsxNixbMTUsIm4iXSwiaW5jbHVkZV9jb25kaXRpb25zIl1dXV1dXSxbMzYsWzE1LCJuIl1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNyZWF0ZVJlZ2V4Il1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImQiLFsicmVxdWlyZSIsImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIl1dLFs1MiwiZSIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJEZXN0aW5hdGlvbiJdXSxbNTIsImYiLFsicmVxdWlyZSIsInRlbXBsYXRlU3RvcmFnZSJdXSxbNTIsImoiLFszMCxbMixbMTUsImYiXSwiZ2V0SXRlbSIsWzcsInJlZ2V4Il1dLFsiYiIsIlsuKitcXC0/XiR7fSgpfFtcXF1cXFxcXSIsImciXV1dLFsyLFsxNSwiZiJdLCJzZXRJdGVtIixbNywicmVnZXgiLFsxNSwiaiJdXV0sWzUyLCJrIixbOF1dLFs1MiwibCIsWzE3LFsxNSwiYSJdLCJzZXNzaW9uRHVyYXRpb24iXV0sWzIyLFsxOCxbMTUsImwiXSwwXSxbNDYsWzUzLFs0MyxbMTUsImsiXSwic2Vzc2lvbl9kdXJhdGlvbiIsWzE1LCJsIl1dXV1dLFs0MyxbMTUsImsiXSwiZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZXZlbnRTZXR0aW5ncyJdXSxbNDMsWzE1LCJrIl0sImR5bmFtaWNfZXZlbnRfc2V0dGluZ3MiLFsxNyxbMTUsImEiXSwiZHluYW1pY0V2ZW50U2V0dGluZ3MiXV0sWzQzLFsxNSwiayJdLCJnb29nbGVfc2lnbmFscyIsWzIwLFsxNyxbMTUsImEiXSwiZ29vZ2xlU2lnbmFscyJdLDFdXSxbNDMsWzE1LCJrIl0sImdvb2dsZV90bGQiLFsxNyxbMTUsImEiXSwiZm9yZWlnblRsZCJdXSxbNDMsWzE1LCJrIl0sImdhX3Jlc3RyaWN0X2RvbWFpbiIsWzIwLFsxNyxbMTUsImEiXSwicmVzdHJpY3REb21haW4iXSwxXV0sWzQzLFsxNSwiayJdLCJpbnRlcm5hbF90cmFmZmljX3Jlc3VsdHMiLFsxNyxbMTUsImEiXSwiaW50ZXJuYWxUcmFmZmljUmVzdWx0cyJdXSxbNDMsWzE1LCJrIl0sImxpbmtlciIsWyJoIixbMTUsImEiXV1dLFs0MyxbMTUsImsiXSwicmVmZXJyYWxfZXhjbHVzaW9uX2RlZmluaXRpb24iLFsiaSIsWzE1LCJhIl1dXSxbImQiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdLFsxNSwiayJdXSxbImUiLFsxNyxbMTUsImEiXSwidHJhY2tpbmdJZCJdXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19vZ3RfMXBfZGF0YV92MiIsWzQ2LCJhIl0sWzUwLCJwIixbNDYsInIiLCJzIiwidCIsInUiXSxbMjIsWzIwLFsxNixbMTUsInMiXSwidHlwZSJdLFsxNSwidCJdXSxbNDYsWzUzLFsyMixbMjgsWzE1LCJyIl1dLFs0NixbNTMsWzMsInIiLFs4XV1dXV0sWzIyLFsyOCxbMTYsWzE1LCJyIl0sWzE1LCJ0Il1dXSxbNDYsWzUzLFs0MyxbMTUsInIiXSxbMTUsInQiXSxbMTYsWzE1LCJzIl0sInVzZXJEYXRhIl1dLFs1MiwidiIsWzgsIm1vZGUiLCJhIl1dLFsyMixbMTYsWzE1LCJzIl0sInRhZ05hbWUiXSxbNDYsWzUzLFs0MyxbMTUsInYiXSwibG9jYXRpb24iLFsxNixbMTUsInMiXSwidGFnTmFtZSJdXV1dXSxbMjIsWzE2LFsxNSwicyJdLCJxdWVyeVNlbGVjdG9yIl0sWzQ2LFs1MyxbNDMsWzE1LCJ2Il0sInNlbGVjdG9yIixbMTYsWzE1LCJzIl0sInF1ZXJ5U2VsZWN0b3IiXV1dXV0sWzQzLFsxNSwidSJdLFsxNSwidCJdLFsxNSwidiJdXV1dXV1dXSxbMzYsWzE1LCJyIl1dXSxbNTAsInEiLFs0NiwiciIsInMiLCJ0Il0sWzIyLFsyOCxbMTYsWzE1LCJhIl0sWzE1LCJ0Il1dXSxbNDYsWzM2XV1dLFs0MyxbMTUsInIiXSxbMTUsInMiXSxbOCwidmFsdWUiLFsxNixbMTUsImEiXSxbMTUsInQiXV1dXV0sWzIyLFsyOCxbMTcsWzE1LCJhIl0sImlzRW5hYmxlZCJdXSxbNDYsWzUzLFsyLFsxNSwiYSJdLCJndG1PblN1Y2Nlc3MiLFs3XV0sWzM2XV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyJdXSxbNTIsImUiLFsxNSwiX19tb2R1bGVfZmVhdHVyZXMiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImciLFsicmVxdWlyZSIsImludGVybmFsLmRldGVjdFVzZXJQcm92aWRlZERhdGEiXV0sWzUyLCJoIixbInJlcXVpcmUiLCJxdWVyeVBlcm1pc3Npb24iXV0sWzUyLCJpIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJqIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiayIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImwiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsIm0iLFsiYyIsWzE3LFsxNSwiZSJdLCJBVCJdXV0sWzUyLCJuIixbMzAsWyJmIl0sWzddXV0sWzUyLCJvIixbOCwiZW5hYmxlX2NvZGUiLHRydWVdXSxbMjIsWzE3LFsxNSwiYSJdLCJpc0F1dG9FbmFibGVkIl0sWzQ2LFs1MyxbNTIsInIiLFs3XV0sWzIyLFsxLFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzQ2LFs1MyxbNTMsWzQxLCJ1Il0sWzMsInUiLDBdLFs2MyxbNywidSJdLFsyMyxbMTUsInUiXSxbMTcsWzE3LFsxNSwiYSJdLCJhdXRvQ29sbGVjdEV4Y2x1c2lvblNlbGVjdG9ycyJdLCJsZW5ndGgiXV0sWzMzLFsxNSwidSJdLFszLCJ1IixbMCxbMTUsInUiXSwxXV1dLFs0NixbNTMsWzUyLCJ2IixbMTcsWzE2LFsxNyxbMTUsImEiXSwiYXV0b0NvbGxlY3RFeGNsdXNpb25TZWxlY3RvcnMiXSxbMTUsInUiXV0sImV4Y2x1c2lvblNlbGVjdG9yIl1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFsyLFsxNSwiciJdLCJwdXNoIixbNyxbMTUsInYiXV1dXV1dXV1dXV1dXSxbNTIsInMiLFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl1dLFs1MiwidCIsWzM5LFsxNyxbMTUsImEiXSwiaXNBdXRvQ29sbGVjdFBpaUVuYWJsZWRGbGFnIl0sWzE3LFsxNSwiYSJdLCJhdXRvRW1haWxFbmFibGVkIl0sdHJ1ZV1dLFs0MyxbMTUsIm8iXSwiYXV0b19kZXRlY3QiLFs4LCJlbWFpbCIsWzE1LCJ0Il0sInBob25lIixbMSxbMTUsInMiXSxbMTcsWzE1LCJhIl0sImF1dG9QaG9uZUVuYWJsZWQiXV0sImFkZHJlc3MiLFsxLFsxNSwicyJdLFsxNyxbMTUsImEiXSwiYXV0b0FkZHJlc3NFbmFibGVkIl1dLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIixbMTUsInIiXV1dXV1dLFsyMixbMTcsWzE1LCJhIl0sImlzTWFudWFsRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJyIixbOF1dLFsyMixbMTcsWzE1LCJhIl0sIm1hbnVhbEVtYWlsRW5hYmxlZCJdLFs0NixbNTMsWyJxIixbMTUsInIiXSwiZW1haWwiLCJlbWFpbFZhbHVlIl1dXV0sWzIyLFsxNyxbMTUsImEiXSwibWFudWFsUGhvbmVFbmFibGVkIl0sWzQ2LFs1MyxbInEiLFsxNSwiciJdLCJwaG9uZSIsInBob25lVmFsdWUiXV1dXSxbMjIsWzE3LFsxNSwiYSJdLCJtYW51YWxBZGRyZXNzRW5hYmxlZCJdLFs0NixbNTMsWzUyLCJzIixbOF1dLFsicSIsWzE1LCJzIl0sImZpcnN0X25hbWUiLCJmaXJzdE5hbWVWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImxhc3RfbmFtZSIsImxhc3ROYW1lVmFsdWUiXSxbInEiLFsxNSwicyJdLCJzdHJlZXQiLCJzdHJlZXRWYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNpdHkiLCJjaXR5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJyZWdpb24iLCJyZWdpb25WYWx1ZSJdLFsicSIsWzE1LCJzIl0sImNvdW50cnkiLCJjb3VudHJ5VmFsdWUiXSxbInEiLFsxNSwicyJdLCJwb3N0YWxfY29kZSIsInBvc3RhbENvZGVWYWx1ZSJdLFs0MyxbMTUsInIiXSwibmFtZV9hbmRfYWRkcmVzcyIsWzcsWzE1LCJzIl1dXV1dXSxbNDMsWzE1LCJvIl0sInNlbGVjdG9ycyIsWzE1LCJyIl1dXV1dLFs2NSwiciIsWzE1LCJuIl0sWzQ2LFs1MyxbImkiLFsxNSwiciJdLCJ1c2VyX2RhdGFfc2V0dGluZ3MiLFsxNSwibyJdXSxbNTIsInMiLFsxNixbMTUsIm8iXSwiYXV0b19kZXRlY3QiXV0sWzIyLFsyOCxbMTUsInMiXV0sWzQ2LFs1MyxbNl1dXV0sWzUyLCJ0IixbNTEsIiIsWzcsInUiXSxbNTIsInYiLFsyLFsxNSwidSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWCJdXV1dLFsyMixbMTUsInYiXSxbNDYsWzUzLFszNixbMTUsInYiXV1dXV0sWzUyLCJ3IixbImMiLFsxNyxbMTUsImUiXSwiQlYiXV1dLFs1MiwieCIsWyJjIixbMTcsWzE1LCJlIl0sIkNJIl1dXSxbNDEsInkiXSxbMjIsWyJoIiwiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iXSxbNDYsWzUzLFszLCJ5IixbImciLFs4LCJleGNsdWRlRWxlbWVudFNlbGVjdG9ycyIsWzE2LFsxNSwicyJdLCJleGNsdWRlX2VsZW1lbnRfc2VsZWN0b3JzIl0sImZpZWxkRmlsdGVycyIsWzgsImVtYWlsIixbMTYsWzE1LCJzIl0sImVtYWlsIl0sInBob25lIixbMTYsWzE1LCJzIl0sInBob25lIl0sImFkZHJlc3MiLFsxNixbMTUsInMiXSwiYWRkcmVzcyJdXSwiaW5jbHVkZVNlbGVjdG9yIixbMTUsInciXSwicmVhZEZyb21EYXRhTGF5ZXIiLFsxNSwieCJdXV1dXV1dLFs1MiwieiIsWzEsWzE1LCJ5Il0sWzE2LFsxNSwieSJdLCJlbGVtZW50cyJdXV0sWzUyLCJhQSIsWzhdXSxbNTIsImFCIixbOF1dLFsyMixbMSxbMTUsInoiXSxbMTgsWzE3LFsxNSwieiJdLCJsZW5ndGgiXSwwXV0sWzQ2LFs1MyxbNDEsImFDIl0sWzQxLCJhRCJdLFszLCJhRCIsWzhdXSxbNTMsWzQxLCJhRSJdLFszLCJhRSIsMF0sWzYzLFs3LCJhRSJdLFsyMyxbMTUsImFFIl0sWzE3LFsxNSwieiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiYUUiXSxbMywiYUUiLFswLFsxNSwiYUUiXSwxXV1dLFs0NixbNTMsWzUyLCJhRiIsWzE2LFsxNSwieiJdLFsxNSwiYUUiXV1dLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwiZW1haWwiLFsxNSwiYUIiXV0sWzIyLFsiYyIsWzE3LFsxNSwiZSJdLCJCTyJdXSxbNDYsWzUzLFsicCIsWzE1LCJhQSJdLFsxNSwiYUYiXSwicGhvbmVfbnVtYmVyIixbMTUsImFCIl1dLFszLCJhQyIsWyJwIixbMTUsImFDIl0sWzE1LCJhRiJdLCJmaXJzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwibGFzdF9uYW1lIixbMTUsImFEIl1dXSxbMywiYUMiLFsicCIsWzE1LCJhQyJdLFsxNSwiYUYiXSwiY291bnRyeSIsWzE1LCJhRCJdXV0sWzMsImFDIixbInAiLFsxNSwiYUMiXSxbMTUsImFGIl0sInBvc3RhbF9jb2RlIixbMTUsImFEIl1dXV1dXV1dXV0sWzIyLFsxLFsxNSwiYUMiXSxbMjgsWzE2LFsxNSwiYUEiXSwiYWRkcmVzcyJdXV0sWzQ2LFs1MyxbNDMsWzE1LCJhQSJdLCJhZGRyZXNzIixbMTUsImFDIl1dLFsyMixbMTUsIm0iXSxbNDYsWzUzLFs0MyxbMTYsWzE1LCJhQSJdLCJhZGRyZXNzIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUQiXV1dXV1dXV1dXV0sWzIyLFsxLFsxNSwieSJdLFsxNSwieCJdXSxbNDYsWzUzLFs1MiwiYUMiLFsxNixbMTUsInkiXSwiZGF0YUxheWVyU2VhcmNoVGltZSJdXSxbNTIsImFEIixbMTYsWzE1LCJ5Il0sImRhdGFMYXllclNlYXJjaENvdW50Il1dLFsyLFsxNSwidSJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImwiXSwiRlQiXSxbOCwiZGxzdCIsWzE1LCJhQyJdLCJkbHNjIixbMTUsImFEIl1dXV1dXV0sWzIyLFsxNSwibSJdLFs0NixbNTMsWzIyLFszMCxbMTYsWzE1LCJhQSJdLCJlbWFpbCJdLFsxNixbMTUsImFBIl0sInBob25lX251bWJlciJdXSxbNDYsWzUzLFs0MyxbMTUsImFBIl0sIl90YWdfbWV0YWRhdGEiLFsxNSwiYUIiXV1dXV1dXV0sWzIsWzE1LCJ1Il0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJrIl0sIkNYIl0sWzE1LCJhQSJdXV0sWzM2LFsxNSwiYUEiXV1dXSxbImoiLFsxNSwiciJdLFs1MSwiIixbNywidSJdLFsyLFsxNSwidSJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiayJdLCJDWSJdLFsxNSwidCJdXV1dXV1dXSxbMixbMTUsImEiXSwiZ3RtT25TdWNjZXNzIixbN11dXQogLFs1MCwiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIsWzQ2LCJhIl0sWzIsWzE1LCJhIl0sImd0bU9uU3VjY2VzcyIsWzddXV0KICxbNTIsIl9fbW9kdWxlX2Fkd29yZHNIaXRUeXBlIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiY29udmVyc2lvbiJdLFs1MiwiYyIsImZsb29kbGlnaHQiXSxbNTIsImQiLCJnYV9jb252ZXJzaW9uIl0sWzUyLCJlIiwicGFnZV92aWV3Il0sWzUyLCJmIiwicmVtYXJrZXRpbmciXSxbNTIsImciLCJ1c2VyX2RhdGFfbGVhZCJdLFs1MiwiaCIsInVzZXJfZGF0YV93ZWIiXSxbMzYsWzgsIkQiLFsxNSwiYiJdLCJFIixbMTUsImMiXSwiRiIsWzE1LCJkIl0sIkgiLFsxNSwiZSJdLCJJIixbMTUsImYiXSwiSiIsWzE1LCJnIl0sIksiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZ3RhZ1NjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFkX3BlcnNvbmFsaXphdGlvbiJdLFs1MiwiYyIsImFkX3N0b3JhZ2UiXSxbNTIsImQiLCJhZF91c2VyX2RhdGEiXSxbNTIsImUiLCJjb25zZW50X3VwZGF0ZWQiXSxbNTIsImYiLCJhcHBfcmVtb3ZlIl0sWzUyLCJnIiwiYXBwX3N0b3JlX3JlZnVuZCJdLFs1MiwiaCIsImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY2FuY2VsIl0sWzUyLCJpIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9jb252ZXJ0Il0sWzUyLCJqIiwiYXBwX3N0b3JlX3N1YnNjcmlwdGlvbl9yZW5ldyJdLFs1MiwiayIsImNvbnZlcnNpb24iXSxbNTIsImwiLCJwdXJjaGFzZSJdLFs1MiwibSIsImZpcnN0X29wZW4iXSxbNTIsIm4iLCJmaXJzdF92aXNpdCJdLFs1MiwibyIsImd0YWcuY29uZmlnIl0sWzUyLCJwIiwiaW5fYXBwX3B1cmNoYXNlIl0sWzUyLCJxIiwicGFnZV92aWV3Il0sWzUyLCJyIiwic2Vzc2lvbl9zdGFydCJdLFs1MiwicyIsInVzZXJfZW5nYWdlbWVudCJdLFs1MiwidCIsImFkc19kYXRhX3JlZGFjdGlvbiJdLFs1MiwidSIsImFsbG93X2FkX3BlcnNvbmFsaXphdGlvbl9zaWduYWxzIl0sWzUyLCJ2IiwiYWxsb3dfY3VzdG9tX3NjcmlwdHMiXSxbNTIsInciLCJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyJdLFs1MiwieCIsImFsbG93X2dvb2dsZV9zaWduYWxzIl0sWzUyLCJ5IiwiYXVpZCJdLFs1MiwieiIsImF3X3JlbWFya2V0aW5nX29ubHkiXSxbNTIsImFBIiwiZGlzY291bnQiXSxbNTIsImFCIiwiYXdfZmVlZF9jb3VudHJ5Il0sWzUyLCJhQyIsImF3X2ZlZWRfbGFuZ3VhZ2UiXSxbNTIsImFEIiwiaXRlbXMiXSxbNTIsImFFIiwiYXdfbWVyY2hhbnRfaWQiXSxbNTIsImFGIiwiYXdfYmFza2V0X3R5cGUiXSxbNTIsImFHIiwiY2xpZW50X2lkIl0sWzUyLCJhSCIsImNvbnZlcnNpb25fY29va2llX3ByZWZpeCJdLFs1MiwiYUkiLCJjb252ZXJzaW9uX2lkIl0sWzUyLCJhSiIsImNvbnZlcnNpb25fbGlua2VyIl0sWzUyLCJhSyIsImNvbnZlcnNpb25fYXBpIl0sWzUyLCJhTCIsImNvb2tpZV9kZXByZWNhdGlvbiJdLFs1MiwiYU0iLCJjb29raWVfZXhwaXJlcyJdLFs1MiwiYU4iLCJjb29raWVfcHJlZml4Il0sWzUyLCJhTyIsImNvb2tpZV91cGRhdGUiXSxbNTIsImFQIiwiY291bnRyeSJdLFs1MiwiYVEiLCJjdXJyZW5jeSJdLFs1MiwiYVIiLCJjdXN0b21lcl9saWZldGltZV92YWx1ZSJdLFs1MiwiYVMiLCJjdXN0b21lcl90eXBlIl0sWzUyLCJhVCIsImRlYnVnX21vZGUiXSxbNTIsImFVIiwic2hpcHBpbmciXSxbNTIsImFWIiwiZW5nYWdlbWVudF90aW1lX21zZWMiXSxbNTIsImFXIiwiZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGUiXSxbNTIsImFYIiwiZXZlbnRfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiYVkiLCJldmVudF9pZCJdLFs1MiwiYVoiLCJldmVudCJdLFs1MiwiYkEiLCJfJmFlIl0sWzUyLCJiQiIsImV2ZW50X3RpbWVvdXQiXSxbNTIsImJDIiwiZXh0X2NsaWVudF9pZCJdLFs1MiwiYkQiLCJmaXJzdF9wYXJ0eV9jb2xsZWN0aW9uIl0sWzUyLCJiRSIsIm1hdGNoX2lkIl0sWzUyLCJiRiIsImdkcHJfYXBwbGllcyJdLFs1MiwiYkciLCJfZ3RfbWV0YWRhdGEiXSxbNTIsImJIIiwiZ29vZ2xlX2FuYWx5c2lzX3BhcmFtcyJdLFs1MiwiYkkiLCJfZ29vZ2xlX25nIl0sWzUyLCJiSiIsIl9vbm8iXSxbNTIsImJLIiwiZ3BwX3NpZCJdLFs1MiwiYkwiLCJncHBfc3RyaW5nIl0sWzUyLCJiTSIsImdzYV9leHBlcmltZW50X2lkIl0sWzUyLCJiTiIsImd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSJdLFs1MiwiYk8iLCJpZnJhbWVfc3RhdGUiXSxbNTIsImJQIiwiaWdub3JlX3JlZmVycmVyIl0sWzUyLCJiUSIsImlzX3Bhc3N0aHJvdWdoIl0sWzUyLCJiUiIsImxhbmd1YWdlIl0sWzUyLCJiUyIsIm1lcmNoYW50X2ZlZWRfbGFiZWwiXSxbNTIsImJUIiwibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSJdLFs1MiwiYlUiLCJtZXJjaGFudF9pZCJdLFs1MiwiYlYiLCJuZXdfY3VzdG9tZXIiXSxbNTIsImJXIiwicGFnZV9ob3N0bmFtZSJdLFs1MiwiYlgiLCJwYWdlX3BhdGgiXSxbNTIsImJZIiwicGFnZV9yZWZlcnJlciJdLFs1MiwiYloiLCJwYWdlX3RpdGxlIl0sWzUyLCJjQSIsIl9wbGF0aW51bV9yZXF1ZXN0X3N0YXR1cyJdLFs1MiwiY0IiLCJxdWFudGl0eSJdLFs1MiwiY0MiLCJyZXN0cmljdGVkX2RhdGFfcHJvY2Vzc2luZyJdLFs1MiwiY0QiLCJzY3JlZW5fcmVzb2x1dGlvbiJdLFs1MiwiY0UiLCJzZW5kX3BhZ2VfdmlldyJdLFs1MiwiY0YiLCJzZXJ2ZXJfY29udGFpbmVyXzNwX2VucmljaG1lbnQiXSxbNTIsImNHIiwic2VydmVyX2NvbnRhaW5lcl91cmwiXSxbNTIsImNIIiwic2Vzc2lvbl9kdXJhdGlvbiJdLFs1MiwiY0kiLCJzZXNzaW9uX2VuZ2FnZWRfdGltZSJdLFs1MiwiY0oiLCJzZXNzaW9uX2lkIl0sWzUyLCJjSyIsIl9zaGFyZWRfdXNlcl9pZCJdLFs1MiwiY0wiLCJkZWxpdmVyeV9wb3N0YWxfY29kZSJdLFs1MiwiY00iLCJ0ZXN0b25seSJdLFs1MiwiY04iLCJ0b3Btb3N0X3VybCJdLFs1MiwiY08iLCJ0cmFuc2FjdGlvbl9pZCJdLFs1MiwiY1AiLCJ0cmFuc2FjdGlvbl9pZF9zb3VyY2UiXSxbNTIsImNRIiwidHJhbnNwb3J0X3VybCJdLFs1MiwiY1IiLCJ1cGRhdGUiXSxbNTIsImNTIiwiX3VzZXJfYWdlbnRfYXJjaGl0ZWN0dXJlIl0sWzUyLCJjVCIsIl91c2VyX2FnZW50X2JpdG5lc3MiXSxbNTIsImNVIiwiX3VzZXJfYWdlbnRfZnVsbF92ZXJzaW9uX2xpc3QiXSxbNTIsImNWIiwiX3VzZXJfYWdlbnRfbW9iaWxlIl0sWzUyLCJjVyIsIl91c2VyX2FnZW50X21vZGVsIl0sWzUyLCJjWCIsIl91c2VyX2FnZW50X3BsYXRmb3JtIl0sWzUyLCJjWSIsIl91c2VyX2FnZW50X3BsYXRmb3JtX3ZlcnNpb24iXSxbNTIsImNaIiwiX3VzZXJfYWdlbnRfd293NjQiXSxbNTIsImRBIiwidXNlcl9kYXRhIl0sWzUyLCJkQiIsInVzZXJfZGF0YV9hdXRvX2xhdGVuY3kiXSxbNTIsImRDIiwidXNlcl9kYXRhX2F1dG9fbWV0YSJdLFs1MiwiZEQiLCJ1c2VyX2RhdGFfYXV0b19tdWx0aSJdLFs1MiwiZEUiLCJ1c2VyX2RhdGFfYXV0b19zZWxlY3RvcnMiXSxbNTIsImRGIiwidXNlcl9kYXRhX2F1dG9fc3RhdHVzIl0sWzUyLCJkRyIsInVzZXJfZGF0YV9tb2RlIl0sWzUyLCJkSCIsInVzZXJfaWQiXSxbNTIsImRJIiwidXNlcl9wcm9wZXJ0aWVzIl0sWzUyLCJkSiIsInVzX3ByaXZhY3lfc3RyaW5nIl0sWzUyLCJkSyIsInZhbHVlIl0sWzUyLCJkTCIsIl9mcG1fcGFyYW1ldGVycyJdLFs1MiwiZE0iLCJfaG9zdF9uYW1lIl0sWzUyLCJkTiIsIl9pbl9wYWdlX2NvbW1hbmQiXSxbNTIsImRPIiwiX21lYXN1cmVtZW50X3R5cGUiXSxbNTIsImRQIiwibm9uX3BlcnNvbmFsaXplZF9hZHMiXSxbNTIsImRRIiwiY29udmVyc2lvbl9sYWJlbCJdLFs1MiwiZFIiLCJwYWdlX2xvY2F0aW9uIl0sWzUyLCJkUyIsIl9leHRyYWN0ZWRfZGF0YSJdLFs1MiwiZFQiLCJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyJdLFs1MiwiZFUiLCJ0Y19wcml2YWN5X3N0cmluZyJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJDIixbMTUsImQiXSwiRiIsWzE1LCJlIl0sIkkiLFsxNSwiZiJdLCJKIixbMTUsImciXSwiSyIsWzE1LCJoIl0sIkwiLFsxNSwiaSJdLCJNIixbMTUsImoiXSwiTyIsWzE1LCJrIl0sIkFBIixbMTUsImwiXSwiQUYiLFsxNSwibSJdLCJBRyIsWzE1LCJuIl0sIkFIIixbMTUsIm8iXSwiQUoiLFsxNSwicCJdLCJBSyIsWzE1LCJxIl0sIkFNIixbMTUsInIiXSwiQVEiLFsxNSwicyJdLCJCQyIsWzE1LCJ0Il0sIkJKIixbMTUsInUiXSwiQksiLFsxNSwidiJdLCJCTSIsWzE1LCJ3Il0sIkJOIixbMTUsIngiXSwiQlQiLFsxNSwieSJdLCJCWCIsWzE1LCJ6Il0sIkJZIixbMTUsImFBIl0sIkJaIixbMTUsImFCIl0sIkNBIixbMTUsImFDIl0sIkNCIixbMTUsImFEIl0sIkNDIixbMTUsImFFIl0sIkNEIixbMTUsImFGIl0sIkNMIixbMTUsImFHIl0sIkNRIixbMTUsImFIIl0sIkNSIixbMTUsImFJIl0sIktHIixbMTUsImRRIl0sIkNTIixbMTUsImFKIl0sIkNVIixbMTUsImFLIl0sIkNXIixbMTUsImFMIl0sIkNZIixbMTUsImFNIl0sIkRDIixbMTUsImFOIl0sIkREIixbMTUsImFPIl0sIkRFIixbMTUsImFQIl0sIkRGIixbMTUsImFRIl0sIkRHIixbMTUsImFSIl0sIkRIIixbMTUsImFTIl0sIkROIixbMTUsImFUIl0sIkVBIixbMTUsImFVIl0sIkVDIixbMTUsImFWIl0sIkVHIixbMTUsImFXIl0sIkVKIixbMTUsImFYIl0sIkVLIixbMTUsImFZIl0sIkVOIixbMTUsImFaIl0sIkVPIixbMTUsImJBIl0sIkVRIixbMTUsImJCIl0sIktJIixbMTUsImRTIl0sIkVVIixbMTUsImJDIl0sIkVXIixbMTUsImJEIl0sIkZFIixbMTUsImJFIl0sIkZPIixbMTUsImJGIl0sIkZQIixbMTUsImJHIl0sIktKIixbMTUsImRUIl0sIkZUIixbMTUsImJIIl0sIkZVIixbMTUsImJJIl0sIkZWIixbMTUsImJKIl0sIkZZIixbMTUsImJLIl0sIkZaIixbMTUsImJMIl0sIkdCIixbMTUsImJNIl0sIkdDIixbMTUsImJOIl0sIkdFIixbMTUsImJPIl0sIkdGIixbMTUsImJQIl0sIkdLIixbMTUsImJRIl0sIkdNIixbMTUsImJSIl0sIkdUIixbMTUsImJTIl0sIkdVIixbMTUsImJUIl0sIkdWIixbMTUsImJVIl0sIkdaIixbMTUsImJWIl0sIkhDIixbMTUsImJXIl0sIktIIixbMTUsImRSIl0sIkhEIixbMTUsImJYIl0sIkhFIixbMTUsImJZIl0sIkhGIixbMTUsImJaIl0sIkhOIixbMTUsImNBIl0sIkhQIixbMTUsImNCIl0sIkhUIixbMTUsImNDIl0sIkhYIixbMTUsImNEIl0sIklBIixbMTUsImNFIl0sIklDIixbMTUsImNGIl0sIklEIixbMTUsImNHIl0sIklGIixbMTUsImNIIl0sIklIIixbMTUsImNJIl0sIklJIixbMTUsImNKIl0sIklLIixbMTUsImNLIl0sIklMIixbMTUsImNMIl0sIktLIixbMTUsImRVIl0sIklQIixbMTUsImNNIl0sIklSIixbMTUsImNOIl0sIklVIixbMTUsImNPIl0sIklWIixbMTUsImNQIl0sIklXIixbMTUsImNRIl0sIklZIixbMTUsImNSIl0sIkpCIixbMTUsImNTIl0sIkpDIixbMTUsImNUIl0sIkpEIixbMTUsImNVIl0sIkpFIixbMTUsImNWIl0sIkpGIixbMTUsImNXIl0sIkpHIixbMTUsImNYIl0sIkpIIixbMTUsImNZIl0sIkpJIixbMTUsImNaIl0sIkpKIixbMTUsImRBIl0sIkpLIixbMTUsImRCIl0sIkpMIixbMTUsImRDIl0sIkpNIixbMTUsImREIl0sIkpOIixbMTUsImRFIl0sIkpPIixbMTUsImRGIl0sIkpQIixbMTUsImRHIl0sIkpSIixbMTUsImRIIl0sIkpTIixbMTUsImRJIl0sIkpVIixbMTUsImRKIl0sIkpWIixbMTUsImRLIl0sIkpYIixbMTUsImRMIl0sIkpZIixbMTUsImRNIl0sIkpaIixbMTUsImROIl0sIktDIixbMTUsImRPIl0sIktEIixbMTUsImRQIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImFib3J0X3dpdGhvdXRfZmFpbCJdLFs1MiwiYyIsImFjY2VwdF9ieV9kZWZhdWx0Il0sWzUyLCJkIiwiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIl0sWzUyLCJlIiwiY29uc2VudF9zdGF0ZSJdLFs1MiwiZiIsImNvbnNlbnRfdXBkYXRlZCJdLFs1MiwiZyIsImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiXSxbNTIsImgiLCJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIl0sWzUyLCJpIiwiY29va2llX29wdGlvbnMiXSxbNTIsImoiLCJkZWR1cGVfaWQiXSxbNTIsImsiLCJlbV9ldmVudCJdLFs1MiwibCIsImV2ZW50X3Byb3ZlbmFuY2UiXSxbNTIsIm0iLCJldmVudF9zb3VyY2UiXSxbNTIsIm4iLCJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiXSxbNTIsIm8iLCJldmVudF91c2FnZSJdLFs1MiwicCIsImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyJdLFs1MiwicSIsImZvcm1fZXZlbnRfY2FuY2VsZWQiXSxbNTIsInIiLCJnYTRfY29sbGVjdGlvbl9zdWJkb21haW4iXSxbNTIsInMiLCJndG1fZXh0cmFjdGVkX2RhdGEiXSxbNTIsInQiLCJoYW5kbGVfaW50ZXJuYWxseSJdLFs1MiwidSIsImhhc19nYV9jb252ZXJzaW9uX2NvbnNlbnRzIl0sWzUyLCJ2IiwiaGl0X3R5cGUiXSxbNTIsInciLCJoaXRfdHlwZV9vdmVycmlkZSJdLFs1MiwieCIsImlnbm9yZV9kdXBlX2NvbmZpZyJdLFs1MiwieSIsImlzX2NvbnZlcnNpb24iXSxbNTIsInoiLCJpc19leHRlcm5hbF9ldmVudCJdLFs1MiwiYUEiLCJpc19maXJzdF92aXNpdCJdLFs1MiwiYUIiLCJpc19maXJzdF92aXNpdF9jb252ZXJzaW9uIl0sWzUyLCJhQyIsImlzX2ZwbV9lbmNyeXB0aW9uIl0sWzUyLCJhRCIsImlzX2ZwbV9zcGxpdCJdLFs1MiwiYUUiLCJpc19nY3BfYnJvd3NlciJdLFs1MiwiYUYiLCJpc19nb29nbGVfbWVhc3VyZW1lbnRfYWxsb3dlZCJdLFs1MiwiYUciLCJpc19zZXJ2ZXJfc2lkZV9kZXN0aW5hdGlvbiJdLFs1MiwiYUgiLCJpc19zZXNzaW9uX3N0YXJ0Il0sWzUyLCJhSSIsImlzX3Nlc3Npb25fc3RhcnRfY29udmVyc2lvbiJdLFs1MiwiYUoiLCJpc19zZ3RtX2dhX2Fkc19jb252ZXJzaW9uX3N0dWR5X2NvbnRyb2xfZ3JvdXAiXSxbNTIsImFLIiwiaXNfc2d0bV9wcmVoaXQiXSxbNTIsImFMIiwiaXNfc3BsaXRfY29udmVyc2lvbiJdLFs1MiwiYU0iLCJpc19zeW4iXSxbNTIsImFOIiwiaXNfdGVzdF9ldmVudCJdLFs1MiwiYU8iLCJwcmVoaXRfZm9yX3JldHJ5Il0sWzUyLCJhUCIsInJlZGFjdF9hZHNfZGF0YSJdLFs1MiwiYVEiLCJyZWRhY3RfY2xpY2tfaWRzIl0sWzUyLCJhUiIsInNlbmRfY2NtX3BhcmFsbGVsX3BpbmciXSxbNTIsImFTIiwic2VuZF91c2VyX2RhdGFfaGl0Il0sWzUyLCJhVCIsInNwZWN1bGF0aXZlIl0sWzUyLCJhVSIsInN5bl9vcl9tb2QiXSxbNTIsImFWIiwidHJhbnNpZW50X2Vjc2lkIl0sWzUyLCJhVyIsInVzZXJfZGF0YSJdLFs1MiwiYVgiLCJ1c2VyX2RhdGFfZnJvbV9hdXRvbWF0aWMiXSxbNTIsImFZIiwidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciJdLFs1MiwiYVoiLCJ1c2VyX2RhdGFfZnJvbV9jb2RlIl0sWzUyLCJiQSIsInVzZXJfZGF0YV9mcm9tX21hbnVhbCJdLFszNixbOCwiQSIsWzE1LCJiIl0sIkIiLFsxNSwiYyJdLCJGIixbMTUsImQiXSwiTSIsWzE1LCJlIl0sIk4iLFsxNSwiZiJdLCJPIixbMTUsImciXSwiUCIsWzE1LCJoIl0sIlEiLFsxNSwiaSJdLCJTIixbMTUsImoiXSwiVCIsWzE1LCJrIl0sIloiLFsxNSwibCJdLCJBQSIsWzE1LCJtIl0sIkFCIixbMTUsIm4iXSwiQUMiLFsxNSwibyJdLCJBRCIsWzE1LCJwIl0sIkFKIixbMTUsInEiXSwiQUsiLFsxNSwiciJdLCJBTiIsWzE1LCJzIl0sIkFPIixbMTUsInQiXSwiQVAiLFsxNSwidSJdLCJBUSIsWzE1LCJ2Il0sIkFSIixbMTUsInciXSwiQVMiLFsxNSwieCJdLCJBViIsWzE1LCJ5Il0sIkFZIixbMTUsInoiXSwiQVoiLFsxNSwiYUEiXSwiQkEiLFsxNSwiYUIiXSwiQkMiLFsxNSwiYUMiXSwiQkQiLFsxNSwiYUQiXSwiQkUiLFsxNSwiYUUiXSwiQkYiLFsxNSwiYUYiXSwiQksiLFsxNSwiYUciXSwiQkwiLFsxNSwiYUgiXSwiQk0iLFsxNSwiYUkiXSwiQk4iLFsxNSwiYUoiXSwiQk8iLFsxNSwiYUsiXSwiQlEiLFsxNSwiYUwiXSwiQlIiLFsxNSwiYU0iXSwiQlMiLFsxNSwiYU4iXSwiQlkiLFsxNSwiYU8iXSwiQ0IiLFsxNSwiYVAiXSwiQ0MiLFsxNSwiYVEiXSwiQ0UiLFsxNSwiYVIiXSwiQ04iLFsxNSwiYVMiXSwiQ1EiLFsxNSwiYVQiXSwiQ1QiLFsxNSwiYVUiXSwiQ1UiLFsxNSwiYVYiXSwiQ1ciLFsxNSwiYVciXSwiQ1giLFsxNSwiYVgiXSwiQ1kiLFsxNSwiYVkiXSwiQ1oiLFsxNSwiYVoiXSwiREEiLFsxNSwiYkEiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2ZlYXR1cmVGbGFncyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsNDVdLFs1MiwiYyIsNDZdLFs1MiwiZCIsNDddLFs1MiwiZSIsMTc0XSxbNTIsImYiLDI3Nl0sWzM2LFs4LCJGIixbMTUsImIiXSwiRyIsWzE1LCJjIl0sIkgiLFsxNSwiZCJdLCJWIixbMTUsImUiXSwiQUQiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZWNUeXBlcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MiwiYiIsImZzcmMiXSxbNTIsImMiLCJmZWlkIl0sWzUyLCJkIiwiMCJdLFs1MiwiZSIsIjEiXSxbNTIsImYiLCIyIl0sWzUyLCJnIiwiMyJdLFs1MiwiaCIsIjQiXSxbMzYsWzgsIkIiLFsxNSwiYyJdLCJGIixbMTUsImciXSwiRCIsWzE1LCJlIl0sIkUiLFsxNSwiZiJdLCJDIixbMTUsImQiXSwiRyIsWzE1LCJoIl0sIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfZmVhdHVyZXMiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDQyNV0sWzUyLCJjIiw0MzVdLFs1MiwiZCIsNDg4XSxbNTIsImUiLDQ4OV0sWzUyLCJmIiw0OThdLFs1MiwiZyIsNTAzXSxbNTIsImgiLDUwNF0sWzUyLCJpIiw1MDZdLFs1MiwiaiIsNTIzXSxbNTIsImsiLDUzMl0sWzUyLCJsIiw1NTNdLFs1MiwibSIsNTY4XSxbNTIsIm4iLDU3N10sWzUyLCJvIiw1ODFdLFs1MiwicCIsNTgzXSxbNTIsInEiLDU5Ml0sWzUyLCJyIiw1OTRdLFs1MiwicyIsNTk5XSxbMzYsWzgsIkFWIixbMTUsImsiXSwiQUQiLFsxNSwiZCJdLCJDSSIsWzE1LCJxIl0sIkJWIixbMTUsIm4iXSwiQk8iLFsxNSwibSJdLCJDSyIsWzE1LCJyIl0sIkNQIixbMTUsInMiXSwiQU0iLFsxNSwiZyJdLCJCWiIsWzE1LCJvIl0sIkFUIixbMTUsImoiXSwiQUUiLFsxNSwiZSJdLCJBTiIsWzE1LCJoIl0sIkwiLFsxNSwiYyJdLCJCQyIsWzE1LCJsIl0sIkFPIixbMTUsImkiXSwiQ0IiLFsxNSwicCJdLCJBSSIsWzE1LCJmIl0sIkkiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLCJjb29raWVfZGVwcmVjYXRpb25fbGFiZWwiXSxbNTIsImMiLCJwbGQiXSxbNTIsImQiLCJzaGFyZWRfdXNlcl9pZCJdLFs1MiwiZSIsInNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCJdLFs1MiwiZiIsInNoYXJlZF91c2VyX2lkX3NvdXJjZSJdLFszNixbOCwiQiIsWzE1LCJiIl0sIk4iLFsxNSwiYyJdLCJTIixbMTUsImQiXSwiVCIsWzE1LCJlIl0sIlUiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1TY2hlbWEiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTIsImIiLDFdLFs1MiwiYyIsMl0sWzUyLCJkIiwzXSxbNTIsImUiLDRdLFs1MiwiZiIsNV0sWzUyLCJnIiw2XSxbMzYsWzgsIkEiLFsxNSwiYiJdLCJGIixbMTUsImciXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJEIixbMTUsImUiXSwiRSIsWzE1LCJmIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9nb2xkRXZlbnRVc2FnZUlkIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwxXSxbNTIsImMiLDJdLFs1MiwiZCIsNV0sWzUyLCJlIiw2XSxbNTIsImYiLDddLFs1MiwiZyIsOF0sWzUyLCJoIiw5XSxbNTIsImkiLDExXSxbNTIsImoiLDE1XSxbNTIsImsiLDE2XSxbNTIsImwiLDIwXSxbNTIsIm0iLDIxXSxbNTIsIm4iLDIzXSxbNTIsIm8iLDI0XSxbNTIsInAiLDI3XSxbNTIsInEiLDQwXSxbNTIsInIiLDQxXSxbMzYsWzgsIk8iLFsxNSwiaiJdLCJXIixbMTUsIm4iXSwiUCIsWzE1LCJrIl0sIlgiLFsxNSwibyJdLCJLIixbMTUsImkiXSwiQSIsWzE1LCJiIl0sIlQiLFsxNSwibCJdLCJFIixbMTUsImQiXSwiRiIsWzE1LCJlIl0sIkIiLFsxNSwiYyJdLCJIIixbMTUsImciXSwiQU4iLFsxNSwicSJdLCJJIixbMTUsImgiXSwiRyIsWzE1LCJmIl0sIlUiLFsxNSwibSJdLCJBTyIsWzE1LCJyIl0sIkFBIixbMTUsInAiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUyLCJiIiwiYWVfYmxvY2tfZG93bmxvYWRzIl0sWzUyLCJjIiwiYWVfYmxvY2tfZm9ybSJdLFs1MiwiZCIsImFlX2Jsb2NrX2hpc3RvcnkiXSxbNTIsImUiLCJhZV9ibG9ja19vdXRib3VuZF9jbGljayJdLFs1MiwiZiIsImFlX2Jsb2NrX3Njcm9sbCJdLFs1MiwiZyIsImFlX2Jsb2NrX3ZpZGVvIl0sWzM2LFs4LCJBIixbMTUsImIiXSwiQiIsWzE1LCJjIl0sIkMiLFsxNSwiZCJdLCJEIixbMTUsImUiXSwiRSIsWzE1LCJmIl0sIkYiLFsxNSwiZyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1TaXRlU2VhcmNoQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImIiLFs0NiwiZCIsImUiXSxbNTIsImYiLFsyLFszMCxbMTUsImQiXSwiIl0sInNwbGl0IixbNywiLCJdXV0sWzUzLFs0MSwiZyJdLFszLCJnIiwwXSxbNjMsWzcsImciXSxbMjMsWzE1LCJnIl0sWzE3LFsxNSwiZiJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiZyJdLFszLCJnIixbMCxbMTUsImciXSwxXV1dLFs0NixbNTMsWzUyLCJoIixbImUiLFsyLFsxNixbMTUsImYiXSxbMTUsImciXV0sInRyaW0iLFs3XV1dXSxbMjIsWzIxLFsxNSwiaCJdLFs0NF1dLFs0NixbNTMsWzM2LFsxNSwiaCJdXV1dXV1dXV1dLFs1MCwiYyIsWzQ2LCJkIiwiZSIsImYiXSxbNTIsImciLFs4LCJzZWFyY2hfdGVybSIsWzE1LCJkIl1dXSxbNTIsImgiLFsyLFszMCxbMTUsImUiXSwiIl0sInNwbGl0IixbNywiLCJdXV0sWzUzLFs0MSwiaSJdLFszLCJpIiwwXSxbNjMsWzcsImkiXSxbMjMsWzE1LCJpIl0sWzE3LFsxNSwiaCJdLCJsZW5ndGgiXV0sWzMzLFsxNSwiaSJdLFszLCJpIixbMCxbMTUsImkiXSwxXV1dLFs0NixbNTMsWzUyLCJqIixbMixbMTYsWzE1LCJoIl0sWzE1LCJpIl1dLCJ0cmltIixbN11dXSxbNTIsImsiLFsiZiIsWzE1LCJqIl1dXSxbMjIsWzIxLFsxNSwiayJdLFs0NF1dLFs0NixbNTMsWzQzLFsxNSwiZyJdLFswLCJxXyIsWzE1LCJqIl1dLFsxNSwiayJdXV1dXV1dXV0sWzM2LFsxNSwiZyJdXV0sWzM2LFs4LCJCIixbMTUsImMiXSwiQSIsWzE1LCJiIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9hY3Rpdml0aWVzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJiIixbNDYsImMiLCJkIl0sWzM2LFszOSxbMTUsImQiXSxbImQiLFsxNSwiYyJdXSxbMTUsImMiXV1dXSxbMzYsWzgsIkEiLFsxNSwiYiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfcGxhdGZvcm1EZXRlY3Rpb24iLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm8iLFs0Nl0sWzY4LCJ3IixbNTMsWzIyLFsxLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiQUkiXV1dLFsyOCxbImUiLFsxNyxbMTUsImgiXSwiSSJdXV1dLFs0NixbNTMsWzM2LFs3XV1dXV0sWzUyLCJ3IixbImIiLFsxNyxbMTUsImciXSwiTiJdXV0sWzIyLFsibiIsWzE1LCJ3Il1dLFs0NixbNTMsWzM2LFsxNSwidyJdXV1dXSxbNTIsIngiLFs3XV0sWzIyLFsicCJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJBIl1dXV1dLFsyMixbInEiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiQiJdXV1dXSxbMjIsWyJyIl0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkYiXV1dXV0sWzIyLFsidSJdLFs0NixbMixbMTUsIngiXSwicHVzaCIsWzcsWzE3LFsxNSwiaiJdLCJEIl1dXV1dLFsyMixbInMiXSxbNDYsWzIsWzE1LCJ4Il0sInB1c2giLFs3LFsxNyxbMTUsImoiXSwiRSJdXV1dXSxbMjIsWyJ0Il0sWzQ2LFsyLFsxNSwieCJdLCJwdXNoIixbNyxbMTcsWzE1LCJqIl0sIkMiXV1dXV0sWzIyLFsibCJdLFs0NixbNTMsWyJmIixbMTcsWzE1LCJnIl0sIk4iXSxbMTUsIngiXSx0cnVlXV1dXSxbMzYsWzE1LCJ4Il1dXSxbNDZdXSxbMzYsWzddXV0sWzUwLCJwIixbNDZdLFs2OCwidyIsWzUzLFszNixbMjgsWzI4LFsiYyIsInNjcmlwdFtkYXRhLXJlcXVpcmVtb2R1bGVePVwibWFnZS9cIl0iXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJxIixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWyJtIiwiWVhOelpYUnpMbk54ZFdGeVpYTndZV05sTG1OdmJTOD0iXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjXj1cIi8vIixbMTUsInciXV0sIlwiXSJdXV1dXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJyIixbNDZdLFsyMixbMjgsWyJlIixbMTcsWzE1LCJoIl0sIkkiXV1dLFs0NixbNTMsWzM2LGZhbHNlXV1dXSxbNjgsInciLFs1MyxbNTIsInciLFsibSIsImMyaHZjR2xtZVM1amIyMD0iXV0sWzUyLCJ4IixbIm0iLCJjMmh2Y0dsbWVXTmtiaTVqYjIwPSJdXSxbMjIsWzMwLFsyOCxbMTUsInciXV0sWzI4LFsxNSwieCJdXV0sWzQ2LFszNixmYWxzZV1dXSxbMzYsWzI4LFsyOCxbImMiLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLFswLCJzY3JpcHRbc3JjKj1cImNkbi4iLFsxNSwidyJdXSwiXCJdLCJdLCJtZXRhW3Byb3BlcnR5PVwib2c6aW1hZ2VcIl1bY29udGVudCo9XCJjZG4uIl0sWzE1LCJ3Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cImNkbi4iXSxbMTUsInciXV0sIlwiXSwiXSwibGlua1tyZWw9XCJwcmVjb25uZWN0XCJdW2hyZWYqPVwiZm9udHMuIl0sWzE1LCJ4Il1dLCJcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cIml0ZXJhYmxlLXNob3BpZnlcIl0sIl0sImxpbmtbcmVsPVwicHJlY29ubmVjdFwiXVtocmVmKj1cInYuIl0sWzE1LCJ3Il1dLCJcIl0iXV1dXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwicyIsWzQ2XSxbNjgsInciLFs1MyxbNTIsInciLFsiZCIsInByb3RvY29sIl1dLFs1MiwieCIsWyJkIiwiaG9zdCJdXSxbNTIsInkiLFszOSxbMSxbMTUsInciXSxbMTUsIngiXV0sWzAsWzAsWzAsWzAsIltzcmNePVwiIixbMTUsInciXV0sIjovLyJdLFsxNSwieCJdXSwiL3dwLWNvbnRlbnRcIl0sIl0sIiJdXSxbNTIsInoiLFsibSIsIkxuZHZjbVJ3Y21WemN5NWpiMjA9Il1dLFs1MiwiYUEiLFsibSIsIkx5OXpMbmN1YjNKbiJdXSxbMjIsWzMwLFsyOCxbMTUsInoiXV0sWzI4LFsxNSwiYUEiXV1dLFs0NixbMzYsZmFsc2VdXV0sWzM2LFszMCxbInYiLFsxNSwieCJdLFsxNSwieiJdXSxbMjgsWzI4LFsiYyIsWzAsWzAsWzAsWzAsWzE1LCJ5Il0sIm1ldGFbbmFtZT1cImdlbmVyYXRvclwiXVtjb250ZW50Xj1cIldvcmRQcmVzcyBcIl0sIl0sImxpbmtbcmVsPVwiZG5zLXByZWZldGNoXCJdW2hyZWY9XCIiXSxbMTUsImFBIl1dLCJcIl0iXV1dXV1dXSxbNDZdXSxbMzYsZmFsc2VdXSxbNTAsInQiLFs0Nl0sWzY4LCJ3IixbNTMsWzUyLCJ3IixbMjgsWzI4LFsiYyIsWzAsIltjbGFzcyo9XCJ3b29jb21tZXJjZVwiXSwiLCJtZXRhW25hbWU9XCJnZW5lcmF0b3JcIl1bY29udGVudF49XCJXb29Db21tZXJjZSBcIl0iXV1dXV0sWzIyLFsxNSwidyJdLFs0NixbNTNdXV0sWzM2LFsxNSwidyJdXV0sWzQ2XV0sWzM2LGZhbHNlXV0sWzUwLCJ1IixbNDZdLFs2OCwidyIsWzUzLFs1MiwidyIsWzI4LFsyOCxbImMiLFswLFswLCJzY3JpcHRbc3JjKj1cIndvb2NvbW1lcmNlXCJdLCIsImxpbmtbaHJlZio9XCJ3b29jb21tZXJjZVwiXSwiXSwiW2NsYXNzfD1cIndvb2NvbW1lcmNlXCJdIl1dXV1dLFsyMixbMTUsInciXSxbNDYsWzUzXV1dLFszNixbMTUsInciXV1dLFs0Nl1dLFszNixmYWxzZV1dLFs1MCwidiIsWzQ2LCJ3IiwieCJdLFszNixbMSxbMTksWzE3LFsxNSwidyJdLCJsZW5ndGgiXSxbMTcsWzE1LCJ4Il0sImxlbmd0aCJdXSxbMjAsWzIsWzE1LCJ3Il0sInN1YnN0cmluZyIsWzcsWzM3LFsxNyxbMTUsInciXSwibGVuZ3RoIl0sWzE3LFsxNSwieCJdLCJsZW5ndGgiXV0sWzE3LFsxNSwidyJdLCJsZW5ndGgiXV1dLFsxNSwieCJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciJdXSxbNTIsImQiLFsicmVxdWlyZSIsImdldFVybCJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRJbkNyb3NzQ29udGFpbmVyRGF0YSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfY3Jvc3NDb250YWluZXJTY2hlbWEiXV0sWzUyLCJoIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaSIsWzE1LCJfX21vZHVsZV9mZWF0dXJlRmxhZ3MiXV0sWzUyLCJqIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtU2NoZW1hIl1dLFs1MiwiayIsWyJyZXF1aXJlIiwiZ2V0VHlwZSJdXSxbNTIsImwiLFsicmVxdWlyZSIsImludGVybmFsLmlzRG9tUmVhZHkiXV0sWzUyLCJtIixbInJlcXVpcmUiLCJmcm9tQmFzZTY0Il1dLFs1MiwibiIsWzUxLCIiLFs3LCJ3Il0sWzM2LFsyMCxbImsiLFsxNSwidyJdXSwiYXJyYXkiXV1dXSxbMzYsWzgsIkEiLFsxNSwibyJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1Eb3dubG9hZEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfaWQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfdXJsIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJsaW5rX3RleHQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImZpbGVfbmFtZSIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywiZmlsZV9leHRlbnNpb24iLFs0NF1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNyxbMTUsImUiXSwiQSJdXSxbNTIsImciLCJmaWxlX2Rvd25sb2FkIl0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2VuaGFuY2VkTWVhc3VyZW1lbnQiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsImUiLFs0NiwiZyJdLFs1MiwiaCIsWyJiIl1dLFs1MiwiaSIsWzddXSxbNTMsWzQxLCJqIl0sWzMsImoiLDBdLFs2MyxbNywiaiJdLFsyMyxbMTUsImoiXSxbMTcsWzE1LCJoIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJqIl0sWzMsImoiLFswLFsxNSwiaiJdLDFdXV0sWzQ2LFs1MyxbNTIsImsiLFsxNixbMTUsImgiXSxbMTUsImoiXV1dLFsyMixbImQiLFsxNSwiZyJdLFsxNSwiayJdXSxbNDYsWzUzLFsyLFsxNSwiaSJdLCJwdXNoIixbNyxbMTUsImsiXV1dXV1dXV1dXSxbMzYsWzE1LCJpIl1dXSxbNTAsImYiLFs0NiwiZyIsImgiXSxbNTIsImkiLFszMCxbMTUsImgiXSxbOF1dXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJUIl0sdHJ1ZV0sWzQzLFsxNSwiaSJdLFsxNyxbMTUsImMiXSwiQ1EiXSx0cnVlXSxbNDMsWzE1LCJpIl0sWzE3LFsxNSwiYyJdLCJaIl0sImEiXSxbNDMsWzE1LCJnIl0sImV2ZW50TWV0YWRhdGEiLFsxNSwiaSJdXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXREZXN0aW5hdGlvbklkcyJdXSxbNTIsImMiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5jbGFpbURlc3RpbmF0aW9uIl1dLFszNixbOCwiQSIsWzE1LCJlIl0sIkIiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1Gb3JtQWN0aXZpdHkiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbNTEsIiIsWzddLFs1MCwiYSIsWzQ2XSxbNTAsIm4iLFs0NiwibyIsInAiLCJxIl0sWzUyLCJyIixbMjAsWzIsWzE1LCJvIl0sImluZGV4T2YiLFs3LCJBVy0iXV0sMF1dLFsyMixbMjAsWzE1LCJwIl0sWzQ0XV0sWzQ2LFs1MyxbMywicCIsWzE1LCJyIl1dXV1dLFsiYyIsWzE1LCJvIl0sWzUxLCIiLFs3LCJzIl0sWzUyLCJ0IixbMixbMTUsInMiXSwiZ2V0RXZlbnROYW1lIixbN11dXSxbNTIsInUiLFszMCxbMjAsWzE1LCJ0Il0sWzE1LCJsIl1dLFsyMCxbMTUsInQiXSxbMTUsImsiXV1dXSxbMjIsWzMwLFsyOCxbMTUsInUiXV0sWzI4LFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJUIl1dXV1dLFs0NixbNTMsWzM2XV1dXSxbMjIsWyJiIixbMTUsIm8iXSxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMjIsWzEsWzI4LFsxNSwicCJdXSxbMixbMTUsInMiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQUoiXV1dXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFs1MiwidiIsWzIsWzE1LCJzIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIkFBIl1dXV0sWzIyLFsxLFsyOCxbMTUsInIiXV0sWzIwLFsxNSwidiJdLFsxNSwibSJdXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMjIsWzI4LFsiaCIsWzE3LFsxNSwiaSJdLCJCWiJdXV0sWzQ2LFs1MyxbMjIsWzIwLFsxNSwidiJdLFsxNSwibSJdXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJhYm9ydCIsWzddXSxbMzZdXV0sWzQ2LFsyMixbMjAsWzE1LCJ2Il0sWzE1LCJrIl1dLFs0NixbNTMsWzIsWzE1LCJzIl0sInNldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlMiXSxbNDRdXV1dXV1dXV1dXSxbMixbMTUsInMiXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQ1EiXSxmYWxzZV1dLFsyMixbMSxbMTUsInYiXSxbMTUsInIiXV0sWzQ2LFs1MyxbNDEsInciXSxbMywidyIsWzE3LFsxNSwiZyJdLCJDIl1dLFs0MSwieCJdLFsyMixbMjAsWzE1LCJ2Il0sWzE1LCJsIl1dLFs0NixbNTMsWzMsInciLFsxNyxbMTUsImciXSwiRCJdXV1dLFs0NixbMjIsWzIwLFsxNSwidiJdLFsxNSwiayJdXSxbNDYsWzUzLFszLCJ3IixbMTcsWzE1LCJnIl0sIkUiXV0sWzMsIngiLFsyLFsxNSwicyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJTIl1dXV1dXSxbNDYsWzIyLFsyMCxbMTUsInYiXSxbMTUsIm0iXV0sWzQ2LFs1MyxbMywidyIsWzE3LFsxNSwiZyJdLCJGIl1dLFszLCJ4IixbMixbMTUsInMiXSwiZ2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiUyJdXV1dXV1dXV1dXSxbNTIsInkiLFs4XV0sWzQzLFsxNSwieSJdLFsxNyxbMTUsImciXSwiQSJdLFsxNSwidyJdXSxbMjIsWzE1LCJ4Il0sWzQ2LFs1MyxbNDMsWzE1LCJ5Il0sWzE3LFsxNSwiZyJdLCJCIl0sWzE1LCJ4Il1dXV1dLFsyLFsxNSwicyJdLCJtZXJnZUhpdERhdGFGb3JLZXkiLFs3LFsxNyxbMTUsImYiXSwiRlQiXSxbMTUsInkiXV1dXV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNTMsWzIsWzE1LCJzIl0sInNldEhpdERhdGEiLFs3LCJmb3JtX2lkIixbNDRdXV0sWzIsWzE1LCJzIl0sInNldEhpdERhdGEiLFs3LCJmb3JtX25hbWUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fZGVzdGluYXRpb24iLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fbGVuZ3RoIixbNDRdXV0sWzIyLFsyMCxbMTUsInQiXSxbMTUsImsiXV0sWzQ2LFs1MyxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZvcm1fc3VibWl0X3RleHQiLFs0NF1dXV1dLFs0NixbMjIsWzIwLFsxNSwidCJdLFsxNSwibCJdXSxbNDYsWzUzLFsyLFsxNSwicyJdLCJzZXRIaXREYXRhIixbNywiZmlyc3RfZmllbGRfaWQiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX25hbWUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX3R5cGUiLFs0NF1dXSxbMixbMTUsInMiXSwic2V0SGl0RGF0YSIsWzcsImZpcnN0X2ZpZWxkX3Bvc2l0aW9uIixbNDRdXV1dXV1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfZWNUeXBlcyJdXSxbNTIsImgiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJpIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiaiIsWzE3LFsxNSwiZSJdLCJCIl1dLFs1MiwiayIsImZvcm1fc3VibWl0Il0sWzUyLCJsIiwiZm9ybV9zdGFydCJdLFs1MiwibSIsImNsaWNrIl0sWzM2LFs4LCJBIixbMTUsIm4iXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtT3V0Ym91bmRDbGlja0FjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfaWQiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfY2xhc3NlcyIsWzQ0XV1dLFsyLFsxNSwiayJdLCJzZXRIaXREYXRhIixbNywibGlua191cmwiLFs0NF1dXSxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsImxpbmtfZG9tYWluIixbNDRdXV0sWzIsWzE1LCJrIl0sInNldEhpdERhdGEiLFs3LCJvdXRib3VuZCIsWzQ0XV1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZiIsWzE3LFsxNSwiZSJdLCJEIl1dLFs1MiwiZyIsImNsaWNrIl0sWzM2LFs4LCJBIixbMTUsImgiXV1dXSxbMzYsWyJhIl1dXV0sWyIkMCJdXV0KICxbNTIsIl9fbW9kdWxlX2NjZEVtUGFnZVZpZXdBY3Rpdml0eSIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJrIl0sWyJjIixbMTUsImsiXSxbNTEsIiIsWzcsImwiXSxbMjIsWzMwLFsyMSxbMixbMTUsImwiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiaSJdXSxbMjgsWzIsWzE1LCJsIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiayJdLFsxNSwiaCJdXSxbNDYsWzUzLFsyLFsxNSwibCJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyMixbMjgsWzIsWzE1LCJsIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJlIl0sIkJPIl1dXV0sWzQ2LFs1MyxbImQiLFsxNSwiayJdLFsxNyxbMTUsImYiXSwiSEUiXSxbMixbMTUsImwiXSwiZ2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiZiJdLCJIRSJdXV1dXV1dLFsyLFsxNSwibCJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJDUSJdLGZhbHNlXV1dXV0sWzUyLCJiIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiXV0sWzUyLCJjIixbInJlcXVpcmUiLCJpbnRlcm5hbC5yZWdpc3RlckNjZENhbGxiYWNrIl1dLFs1MiwiZCIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuc2V0UmVtb3RlQ29uZmlnUGFyYW1ldGVyIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbNTIsImYiLFsxNSwiX19tb2R1bGVfZ3RhZ1NjaGVtYSJdXSxbNTIsImciLFsxNSwiX19tb2R1bGVfYXV0b0V2ZW50QmxvY2tTY2hlbWEiXV0sWzUyLCJoIixbMTcsWzE1LCJnIl0sIkMiXV0sWzUyLCJpIixbMTcsWzE1LCJmIl0sIkFLIl1dLFszNixbOCwiQSIsWzE1LCJqIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV9jY2RFbVNjcm9sbEFjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJoIixbNDYsImkiLCJqIl0sWyJjIixbMTUsImkiXSxbNTEsIiIsWzcsImsiXSxbMjIsWzMwLFsyMSxbMixbMTUsImsiXSwiZ2V0RXZlbnROYW1lIixbN11dLFsxNSwiZyJdXSxbMjgsWzIsWzE1LCJrIl0sImdldE1ldGFkYXRhIixbNyxbMTcsWzE1LCJkIl0sIlQiXV1dXV0sWzQ2LFs1MyxbMzZdXV1dLFsyMixbImIiLFsxNSwiaSJdLFsxNSwiZiJdXSxbNDYsWzUzLFsyLFsxNSwiayJdLCJhYm9ydCIsWzddXSxbMzZdXV1dLFsyLFsxNSwiayJdLCJzZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJDUSJdLGZhbHNlXV0sWzIyLFsyOCxbMTUsImoiXV0sWzQ2LFs1MyxbMixbMTUsImsiXSwic2V0SGl0RGF0YSIsWzcsInBlcmNlbnRfc2Nyb2xsZWQiLFs0NF1dXV1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmdldFByb2R1Y3RTZXR0aW5nc1BhcmFtZXRlciJdXSxbNTIsImMiLFsicmVxdWlyZSIsImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siXV0sWzUyLCJkIixbMTUsIl9fbW9kdWxlX21ldGFkYXRhU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9hdXRvRXZlbnRCbG9ja1NjaGVtYSJdXSxbNTIsImYiLFsxNyxbMTUsImUiXSwiRSJdXSxbNTIsImciLCJzY3JvbGwiXSxbMzYsWzgsIkEiLFsxNSwiaCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkRW1WaWRlb0FjdGl2aXR5IixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJqIixbNDYsImsiLCJsIl0sWyJjIixbMTUsImsiXSxbNTEsIiIsWzcsIm0iXSxbNTIsIm4iLFsyLFsxNSwibSJdLCJnZXRFdmVudE5hbWUiLFs3XV1dLFs1MiwibyIsWzMwLFszMCxbMjAsWzE1LCJuIl0sWzE1LCJnIl1dLFsyMCxbMTUsIm4iXSxbMTUsImgiXV1dLFsyMCxbMTUsIm4iXSxbMTUsImkiXV1dXSxbMjIsWzMwLFsyOCxbMTUsIm8iXV0sWzI4LFsyLFsxNSwibSJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJUIl1dXV1dLFs0NixbNTMsWzM2XV1dXSxbMjIsWyJiIixbMTUsImsiXSxbMTUsImYiXV0sWzQ2LFs1MyxbMixbMTUsIm0iXSwiYWJvcnQiLFs3XV0sWzM2XV1dXSxbMixbMTUsIm0iXSwic2V0TWV0YWRhdGEiLFs3LFsxNyxbMTUsImQiXSwiQ1EiXSxmYWxzZV1dLFsyMixbMjgsWzE1LCJsIl1dLFs0NixbNTMsWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19jdXJyZW50X3RpbWUiLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX2R1cmF0aW9uIixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19wZXJjZW50IixbNDRdXV0sWzIsWzE1LCJtIl0sInNldEhpdERhdGEiLFs3LCJ2aWRlb19wcm92aWRlciIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlkZW9fdGl0bGUiLFs0NF1dXSxbMixbMTUsIm0iXSwic2V0SGl0RGF0YSIsWzcsInZpZGVvX3VybCIsWzQ0XV1dLFsyLFsxNSwibSJdLCJzZXRIaXREYXRhIixbNywidmlzaWJsZSIsWzQ0XV1dXV1dXV1dLFs1MiwiYiIsWyJyZXF1aXJlIiwiaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIl1dLFs1MiwiYyIsWyJyZXF1aXJlIiwiaW50ZXJuYWwucmVnaXN0ZXJDY2RDYWxsYmFjayJdXSxbNTIsImQiLFsxNSwiX19tb2R1bGVfbWV0YWRhdGFTY2hlbWEiXV0sWzUyLCJlIixbMTUsIl9fbW9kdWxlX2F1dG9FdmVudEJsb2NrU2NoZW1hIl1dLFs1MiwiZiIsWzE3LFsxNSwiZSJdLCJGIl1dLFs1MiwiZyIsInZpZGVvX3N0YXJ0Il0sWzUyLCJoIiwidmlkZW9fcHJvZ3Jlc3MiXSxbNTIsImkiLCJ2aWRlb19jb21wbGV0ZSJdLFszNixbOCwiQSIsWzE1LCJqIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAsWzUyLCJfX21vZHVsZV90YXNrU2V0VGVzdEhpdFBhcmFtcyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiZiIsWzQ2LCJnIl0sWzIyLFsyLFsxNSwiZyJdLCJnZXRNZXRhZGF0YSIsWzcsWzE3LFsxNSwiZSJdLCJCUyJdXV0sWzQ2LFs1MyxbMixbMTUsImciXSwic2V0SGl0RGF0YSIsWzcsWzE3LFsxNSwiZCJdLCJJUCJdLCIxIl1dXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsImludGVybmFsLmlzRmVhdHVyZUVuYWJsZWQiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX2ZlYXR1cmVzIl1dLFs1MiwiZCIsWzE1LCJfX21vZHVsZV9ndGFnU2NoZW1hIl1dLFs1MiwiZSIsWzE1LCJfX21vZHVsZV9tZXRhZGF0YVNjaGVtYSJdXSxbMzYsWzgsIkEiLFsxNSwiZiJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfY2NkR2FSZWdpb25TY29wZWRTZXR0aW5ncyIsWzEzLFs0MSwiJDAiXSxbMywiJDAiLFs1MSwiIixbN10sWzUwLCJhIixbNDZdLFs1MCwiaiIsWzQ2LCJtIiwibiIsIm8iXSxbNTAsInQiLFs0NiwidiJdLFs1MiwidyIsWzE2LFsxNSwiaSJdLFsxNSwidiJdXV0sWzIyLFsyOCxbMTUsInciXV0sWzQ2LFszNl1dXSxbNTMsWzQxLCJ4Il0sWzMsIngiLDBdLFs2MyxbNywieCJdLFsyMyxbMTUsIngiXSxbMTcsWzE1LCJ3Il0sImxlbmd0aCJdXSxbMzMsWzE1LCJ4Il0sWzMsIngiLFswLFsxNSwieCJdLDFdXV0sWzQ2LFs1MyxbNTIsInkiLFsxNixbMTUsInciXSxbMTUsIngiXV1dLFsicSIsWzE1LCJwIl0sWzE3LFsxNSwieSJdLCJuYW1lIl0sWzE3LFsxNSwieSJdLCJ2YWx1ZSJdXV1dXV1dLFs1MCwidSIsWzQ2LCJ2Il0sWzIyLFszMCxbMjgsWzE1LCJyIl1dLFsyMSxbMTcsWzE1LCJyIl0sImxlbmd0aCJdLDJdXSxbNDYsWzUzLFszNixmYWxzZV1dXV0sWzQxLCJ3Il0sWzMsInciLFsxNixbMTUsInYiXSxbMTUsInMiXV1dLFsyMixbMjAsWzE1LCJ3Il0sWzQ0XV0sWzQ2LFs1MyxbMywidyIsWzE2LFsxNSwidiJdLFsxNSwiciJdXV1dXV0sWzM2LFsyOCxbMjgsWzE1LCJ3Il1dXV1dLFsyMixbMjgsWzE1LCJuIl1dLFs0NixbMzZdXV0sWzUyLCJwIixbMzAsWzE3LFsxNSwibSJdLCJpbnN0YW5jZURlc3RpbmF0aW9uSWQiXSxbMTcsWyJjIl0sImNvbnRhaW5lcklkIl1dXSxbNTIsInEiLFsiaCIsWzE1LCJmIl0sWzE1LCJvIl1dXSxbNTIsInIiLFsxMyxbNDEsIiQwIl0sWzMsIiQwIixbImgiLFsxNSwiZCJdLFsxNSwibyJdXV0sWyIkMCJdXV0sWzUyLCJzIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWyJoIixbMTUsImUiXSxbMTUsIm8iXV1dLFsiJDAiXV1dLFs1MyxbNDEsInYiXSxbMywidiIsMF0sWzYzLFs3LCJ2Il0sWzIzLFsxNSwidiJdLFsxNyxbMTUsIm4iXSwibGVuZ3RoIl1dLFszMyxbMTUsInYiXSxbMywidiIsWzAsWzE1LCJ2Il0sMV1dXSxbNDYsWzUzLFs1MiwidyIsWzE2LFsxNSwibiJdLFsxNSwidiJdXV0sWzIyLFszMCxbMTcsWzE1LCJ3Il0sImRpc2FsbG93QWxsUmVnaW9ucyJdLFsidSIsWzE3LFsxNSwidyJdLCJkaXNhbGxvd2VkUmVnaW9ucyJdXV0sWzQ2LFs1MyxbInQiLFsxNyxbMTUsInciXSwicmVkYWN0RmllbGRHcm91cCJdXV1dXV1dXV1dLFs1MCwiayIsWzQ2LCJtIl0sWzUyLCJuIixbOF1dLFsyMixbMjgsWzE1LCJtIl1dLFs0NixbMzYsWzE1LCJuIl1dXV0sWzUyLCJvIixbMixbMTUsIm0iXSwic3BsaXQiLFs3LCIsIl1dXSxbNTMsWzQxLCJwIl0sWzMsInAiLDBdLFs2MyxbNywicCJdLFsyMyxbMTUsInAiXSxbMTcsWzE1LCJvIl0sImxlbmd0aCJdXSxbMzMsWzE1LCJwIl0sWzMsInAiLFswLFsxNSwicCJdLDFdXV0sWzQ2LFs1MyxbNTIsInEiLFsyLFsxNixbMTUsIm8iXSxbMTUsInAiXV0sInRyaW0iLFs3XV1dLFsyMixbMjgsWzE1LCJxIl1dLFs0NixbNl1dXSxbNTIsInIiLFsyLFsxNSwicSJdLCJzcGxpdCIsWzcsIi0iXV1dLFs1MiwicyIsWzE2LFsxNSwiciJdLDBdXSxbNTIsInQiLFszOSxbMjAsWzE3LFsxNSwiciJdLCJsZW5ndGgiXSwyXSxbMTUsInEiXSxbNDRdXV0sWzIyLFszMCxbMjgsWzE1LCJzIl1dLFsyMSxbMTcsWzE1LCJzIl0sImxlbmd0aCJdLDJdXSxbNDYsWzUzLFs2XV1dXSxbMjIsWzEsWzIxLFsxNSwidCJdLFs0NF1dLFszMCxbMjMsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSw0XSxbMTgsWzE3LFsxNSwidCJdLCJsZW5ndGgiXSw2XV1dLFs0NixbNTMsWzZdXV1dLFs0MyxbMTUsIm4iXSxbMTUsInEiXSx0cnVlXV1dXV0sWzM2LFsxNSwibiJdXV0sWzUwLCJsIixbNDYsIm0iXSxbMjIsWzI4LFsxNyxbMTUsIm0iXSwic2V0dGluZ3NUYWJsZSJdXSxbNDYsWzM2LFs3XV1dXSxbNTIsIm4iLFs4XV0sWzUzLFs0MSwibyJdLFszLCJvIiwwXSxbNjMsWzcsIm8iXSxbMjMsWzE1LCJvIl0sWzE3LFsxNyxbMTUsIm0iXSwic2V0dGluZ3NUYWJsZSJdLCJsZW5ndGgiXV0sWzMzLFsxNSwibyJdLFszLCJvIixbMCxbMTUsIm8iXSwxXV1dLFs0NixbNTMsWzUyLCJwIixbMTYsWzE3LFsxNSwibSJdLCJzZXR0aW5nc1RhYmxlIl0sWzE1LCJvIl1dXSxbNTIsInEiLFsxNyxbMTUsInAiXSwicmVkYWN0RmllbGRHcm91cCJdXSxbMjIsWzI4LFsxNixbMTUsImkiXSxbMTUsInEiXV1dLFs0NixbNl1dXSxbNDMsWzE1LCJuIl0sWzE1LCJxIl0sWzgsInJlZGFjdEZpZWxkR3JvdXAiLFsxNSwicSJdLCJkaXNhbGxvd0FsbFJlZ2lvbnMiLGZhbHNlLCJkaXNhbGxvd2VkUmVnaW9ucyIsWzhdXV0sWzUyLCJyIixbMTYsWzE1LCJuIl0sWzE1LCJxIl1dXSxbMjIsWzE3LFsxNSwicCJdLCJkaXNhbGxvd0FsbFJlZ2lvbnMiXSxbNDYsWzUzLFs0MyxbMTUsInIiXSwiZGlzYWxsb3dBbGxSZWdpb25zIix0cnVlXSxbNl1dXV0sWzQzLFsxNSwiciJdLCJkaXNhbGxvd2VkUmVnaW9ucyIsWyJrIixbMTcsWzE1LCJwIl0sImRpc2FsbG93ZWRSZWdpb25zIl1dXV1dXV0sWzM2LFsyLFsxNSwiYiJdLCJ2YWx1ZXMiLFs3LFsxNSwibiJdXV1dXSxbNTIsImIiLFsicmVxdWlyZSIsIk9iamVjdCJdXSxbNTIsImMiLFsicmVxdWlyZSIsImdldENvbnRhaW5lclZlcnNpb24iXV0sWzUyLCJkIixbInJlcXVpcmUiLCJpbnRlcm5hbC5nZXRDb3VudHJ5Q29kZSJdXSxbNTIsImUiLFsicmVxdWlyZSIsImludGVybmFsLmdldFJlZ2lvbkNvZGUiXV0sWzUyLCJmIixbInJlcXVpcmUiLCJpbnRlcm5hbC5zZXRSZW1vdGVDb25maWdQYXJhbWV0ZXIiXV0sWzUyLCJnIixbMTUsIl9fbW9kdWxlX2FjdGl2aXRpZXMiXV0sWzUyLCJoIixbMTcsWzE1LCJnIl0sIkEiXV0sWzUyLCJpIixbOCwiR09PR0xFX1NJR05BTFMiLFs3LFs4LCJuYW1lIiwiYWxsb3dfZ29vZ2xlX3NpZ25hbHMiLCJ2YWx1ZSIsZmFsc2VdXSwiREVWSUNFX0FORF9HRU8iLFs3LFs4LCJuYW1lIiwiZ2VvX2dyYW51bGFyaXR5IiwidmFsdWUiLHRydWVdLFs4LCJuYW1lIiwicmVkYWN0X2RldmljZV9pbmZvIiwidmFsdWUiLHRydWVdXV1dLFszNixbOCwiQSIsWzE1LCJqIl0sIkIiLFsxNSwibCJdXV1dLFszNixbImEiXV1dXSxbIiQwIl1dXQogLFs1MiwiX19tb2R1bGVfdGFza1BsYXRmb3JtRGV0ZWN0aW9uIixbMTMsWzQxLCIkMCJdLFszLCIkMCIsWzUxLCIiLFs3XSxbNTAsImEiLFs0Nl0sWzUwLCJkIixbNDYsImUiXSxbNTIsImYiLFsyLFsxNSwiYyJdLCJBIixbN11dXSxbMjIsWzEsWzE1LCJmIl0sWzE4LFsxNyxbMTUsImYiXSwibGVuZ3RoIl0sMF1dLFs0NixbNTMsWzIsWzE1LCJlIl0sIm1lcmdlSGl0RGF0YUZvcktleSIsWzcsWzE3LFsxNSwiYiJdLCJGVCJdLFs4LCJwbGYiLFsyLFsxNSwiZiJdLCJqb2luIixbNywiLiJdXV1dXV1dXV0sWzUyLCJiIixbMTUsIl9fbW9kdWxlX2d0YWdTY2hlbWEiXV0sWzUyLCJjIixbMTUsIl9fbW9kdWxlX3BsYXRmb3JtRGV0ZWN0aW9uIl1dLFszNixbOCwiQSIsWzE1LCJkIl1dXV0sWzM2LFsiYSJdXV1dLFsiJDAiXV1dCiAKXQosImVudGl0aWVzIjp7CiJfX2MiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfYXV0b19yZWRhY3QiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX2Rvd25sb2FkIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX2Zvcm0iOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KLAoiX19jY2RfZW1fcGFnZV92aWV3Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2VtX3Njcm9sbCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9lbV92aWRlbyI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9maXJzdCI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2NjZF9nYV9sYXN0Ijp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fY2NkX2dhX3JlZ3Njb3BlIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fZSI6eyIyIjp0cnVlLCI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX2djdCI6eyI1Ijp0cnVlLCI2Ijp0cnVlfQosCiJfX29ndF8xcF9kYXRhX3YyIjp7IjIiOnRydWUsIjUiOnRydWUsIjYiOnRydWV9CiwKIl9fc2V0X3Byb2R1Y3Rfc2V0dGluZ3MiOnsiMiI6dHJ1ZSwiNSI6dHJ1ZSwiNiI6dHJ1ZX0KCgp9CiwiYmxvYiI6eyIxIjoiMSIsIjEwIjoiRy1WODRYUDhXR1hZfEdULVROR1hSNlE4IiwiMTEiOnRydWUsIjE0IjoiNjdtMCIsIjE1IjoiMCIsIjE2IjoiQ2hFSThJT2Mwd1lRZ09tc2t2dWx4S3FSQVJJZEFMMlBZWmFzNEo1RE8vLzVIc2p6aTJxK1ZKU0NtVXAzTTJJUTZkWWFBckRPIiwiMTciOiIiLCIxOSI6ImRhdGFMYXllciIsIjIiOnRydWUsIjIwIjoiIiwiMjEiOiJ3d3cuZ29vZ2xldGFnbWFuYWdlci5jb20iLCIyMiI6ImV5SXdJam9pVGs4aUxDSXhJam9pVGs4dE1ETWlMQ0l5SWpwbVlXeHpaU3dpTXlJNkltZHZiMmRzWlM1dWJ5SXNJalFpT2lKeVpXZHBiMjR4SWl3aU5TSTZabUZzYzJVc0lqWWlPblJ5ZFdVc0lqY2lPaUpoWkY5emRHOXlZV2RsZkdGdVlXeDVkR2xqYzE5emRHOXlZV2RsZkdGa1gzVnpaWEpmWkdGMFlYeGhaRjl3WlhKemIyNWhiR2w2WVhScGIyNGlMQ0k1SWpwMGNuVmxmUSIsIjIzIjoiZ29vZ2xlLnRhZ21hbmFnZXIuZGVidWd1aTIucXVldWUiLCIyNCI6InRhZ2Fzc2lzdGFudC5nb29nbGUuY29tIiwiMjciOjAuMDA1LCIzIjoid3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIiwiMzAiOiJOTyIsIjMxIjoiTk8tMDMiLCIzMiI6ZmFsc2UsIjMzIjoicmVnaW9uMSIsIjM0IjoiRy1WODRYUDhXR1hZIiwiMzUiOiJHIiwiMzYiOiJodHRwczovL2Fkc2VydmljZS5nb29nbGUuY29tL3BhZ2VhZC9yZWdjbGsiLCIzNyI6Il9fVEFHR1lfSU5TVEFMTEVEIiwiMzgiOiJjY3QuZ29vZ2xlIiwiMzkiOiJnb29nVGFnZ3lSZWZlcnJlciIsIjQwIjoiaHR0cHM6Ly9jY3QuZ29vZ2xlL3RhZ2d5L2FnZW50LmpzIiwiNDEiOiJnb29nbGUudGFnbWFuYWdlci50YS5wcm9kcXVldWUiLCI0MiI6MC4wMSwiNDMiOiJ7XCJrZXlzXCI6W3tcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCS2x5VFgyanlvYnBRQ21mVXlCYmhCeVFIazlaMkhkTjVsSHhwQkF0SUtHTWNtencwZ0UrZWJsWUNtbTFHYTdiWWVUZHlkb0ptZTZJcGFTb0NVMElVVW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiZGVlNGIzNTEtYjBmNS00YzI3LWE4YzgtZWQ2NjA0NzdhNDRjXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRHRZQlJuUEJTMWc2bWVYTzFyUTVhNTJCNUZibmg3REM1anF2MDJpeEpzc24wazFKOXJjSENhVmMvenpSc25zSEJ6U29GS3M2SjhwSDdDY25RUDNFanc9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiYWQxOTNiMmEtNGE5MC00YzFhLWI3OWUtZGUzN2FjMzkxYmQyXCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCTVowVU11ZEFlNFBvYWZTVHBVeFB0SWtmQmVDTWJGQlh2dHlSWXZITENTUS9FVXZFSnNtc1Y0dDZOQi9CRVZwcUwzSHY4Z05TUWg3SytTVW9vZjI1YW89XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDhjNGVmZTEtZmRkMC00MzZhLWFjOGYtOTIzZjExOTE4Nzg3XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCRmZsdlVsK3hwSGFGVkNJWU8xS1BMeGt2K0FqZGw0ZDhydnJYaEk2emZwbmJCRHFJNTFERGt0SEhiM1pXSVM1N29EaDBLaXI5QXVDT29uMk1PeE5WOVk9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiNDMyYmMyNzAtOTllYS00MjIwLWI1NjItZTJjNWFlNzdkNGQ5XCJ9LHtcImhwa2VQdWJsaWNLZXlcIjp7XCJwYXJhbXNcIjp7XCJhZWFkXCI6XCJBRVNfMTI4X0dDTVwiLFwia2RmXCI6XCJIS0RGX1NIQTI1NlwiLFwia2VtXCI6XCJESEtFTV9QMjU2X0hLREZfU0hBMjU2XCJ9LFwicHVibGljS2V5XCI6XCJCQVE4VGt5NERMV09KYkhPSGJWWURiUVpFZkVlbGI0RlRCOEVZTVFlUlFpTDFtMUx0QWQwcjN6ZXlMamdaMy9XMjRSOFZmYjIyelkyaXg2Vy9UZkNqakE9XCIsXCJ2ZXJzaW9uXCI6MH0sXCJpZFwiOlwiMDUwYTZlMTEtMzhhYi00ZjgwLTg5Y2ItN2IzMTliOTcwNGMwXCJ9XX0iLCI0NCI6IjExODg5NzkyMH4xMTg4OTc5MzAiLCI0NSI6dHJ1ZSwiNDYiOnsiMSI6IjEwMDAiLCIxMCI6IjY2dTAiLCIxMSI6IjY2ZzAiLCIxNCI6IjEwMDAiLCIxNiI6IlVTLUNPflVTLUNUflVTLU1UflVTLU5FflVTLU5IflVTLVRYflVTLU1OflVTLU5KflVTLU1EflVTLU9SflVTLURFIiwiMTciOiJVUy1DT35VUy1DVH5VUy1NVH5VUy1ORX5VUy1OSH5VUy1UWH5VUy1NTn5VUy1OSn5VUy1NRH5VUy1PUn5VUy1ERSIsIjIiOiI5IiwiMjAiOiI1MDAwIiwiMjEiOiI1MDAwIiwiMjIiOiI0LjQuMCIsIjIzIjoiMC4wLjAiLCIyNSI6IjEiLCIyNiI6IjQwMDAiLCIyNyI6IjEwMCIsIjMiOiI1IiwiNCI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhfGFkX3BlcnNvbmFsaXphdGlvbiIsIjQ0IjoiMTUwMDAiLCI0OCI6IjMwMDAwIiwiNSI6ImFkX3N0b3JhZ2V8YW5hbHl0aWNzX3N0b3JhZ2V8YWRfdXNlcl9kYXRhIiwiNiI6IjEiLCI2MSI6IjEwMDAiLCI2MiI6IkE2T05IUlk3L2J2QnJvK0lNWmQvYTZMTmpuN1NTdjk5OVNrTi9oRkFFOUw2dk1yMzRkTmdmZFNWZFltdjRVK05IWmcxc3hkMzhSdGNpUnBSVXRJUlBnUUFBQUNDZXlKdmNtbG5hVzRpT2lKb2RIUndjem92TDNkM2R5NW5iMjluYkdWMFlXZHRZVzVoWjJWeUxtTnZiVG8wTkRNaUxDSm1aV0YwZFhKbElqb2lVMmhoY21Wa1YyOXlhMlZ5UlhoMFpXNWtaV1JNYVdabGRHbHRaU0lzSW1WNGNHbHllU0k2TVRjM05qY3lPVFl3TUN3aWFYTlVhR2x5WkZCaGNuUjVJanAwY25WbGZRPT0iLCI2MyI6IjEwMDAiLCI2NiI6IjEwMCIsIjciOiIxMCJ9LCI0OCI6dHJ1ZSwiNSI6IkctVjg0WFA4V0dYWSIsIjU1IjpbIkctVjg0WFA4V0dYWSJdLCI1NiI6W3siMSI6NDAzLCIzIjowLjUsIjQiOjExNTkzODQ2NSwiNSI6MTE1OTM4NDY2LCI2IjowLCI3IjoyfSx7IjEiOjQwNCwiMyI6MC41LCI0IjoxMTU5Mzg0NjgsIjUiOjExNTkzODQ2OSwiNiI6MCwiNyI6MX0seyIxIjo2MDIsIjMiOjAuMDEsIjQiOjEyMDEyNDQ1NSwiNSI6MTIwMTI0NDUzLCI2IjoxMjAxMjQ0NTQsIjciOjN9LHsiMSI6NTY5LCIyIjp0cnVlfSx7IjEiOjQ3NSwiMiI6dHJ1ZX0seyIxIjo1MDIsIjIiOnRydWV9LHsiMSI6NTc3LCIyIjp0cnVlfSx7IjEiOjU2OCwiMyI6MC4wMSwiNCI6MTE5NzkxNzQ5LCI1IjoxMTk3OTE3NDgsIjYiOjAsIjciOjF9LHsiMSI6NDkwLCIyIjp0cnVlfSx7IjEiOjQ5MSwiMyI6MC4wMSwiNCI6MTE4MDEyMDA3LCI1IjoxMTgwMTIwMDgsIjYiOjExODAxMjAwOSwiNyI6MX0seyIxIjo0ODAsIjIiOnRydWV9LHsiMSI6NTk0LCIzIjowLjAxLCI0IjoxMTk3OTM5NzQsIjUiOjExOTc5Mzk3MiwiNiI6MTE5NzkzOTczLCI3IjoxfSx7IjEiOjU5OSwiMiI6dHJ1ZX0seyIxIjo1ODAsIjMiOjAuMSwiNCI6MTE5NTI3MDIwLCI1IjoxMTk1MjcwMTksIjYiOjAsIjciOjF9LHsiMSI6NTIzLCIyIjp0cnVlfSx7IjEiOjU4MSwiMyI6MC4wMSwiNCI6MTE5OTQ4ODU0LCI1IjoxMTk5NDg4NTIsIjYiOjExOTk0ODg1MywiNyI6M30seyIxIjo1NTUsIjMiOjAuMDEsIjQiOjExOTI1OTYwNiwiNSI6MTE5MjU5NjA1LCI2IjowLCI3IjoyfSx7IjEiOjUwNCwiMiI6dHJ1ZX0seyIxIjo0NjIsIjMiOjAuMDUsIjQiOjExODgwNjUyNCwiNSI6MTE4ODA2NTI1LCI2IjoxMTg4MDY1MjYsIjciOjF9LHsiMSI6NDEzLCIyIjp0cnVlfSx7IjEiOjU5MywiMiI6dHJ1ZX0seyIxIjo1MDYsIjIiOnRydWV9LHsiMSI6NTAwLCIyIjp0cnVlfSx7IjEiOjU2MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMywiNSI6MTE5NDA0NzAyLCI2IjowLCI3IjoxfSx7IjEiOjQ4MSwiMyI6MC4wMDEsIjQiOjExOTQwNDcwMSwiNSI6MTE5NDA0NzAwLCI2IjowLCI3IjoxfSx7IjEiOjQ1MCwiMyI6MC4wMSwiNCI6MTE3MjI3NzE0LCI1IjoxMTcyMjc3MTUsIjYiOjExNzIyNzcxNiwiNyI6M30seyIxIjo1ODMsIjMiOjAuNSwiNCI6MTE5ODk2ODAzLCI1IjoxMTk4OTY4MDIsIjYiOjAsIjciOjF9LHsiMSI6NDU4LCIyIjp0cnVlfSx7IjEiOjU4MiwiMyI6MC4wMSwiNCI6MTE5MzgxNjY0LCI1IjoxMTkzODE2NjIsIjYiOjExOTM4MTY2MywiNyI6MX0seyIxIjo1NzAsIjIiOnRydWV9LHsiMSI6NDk4LCIzIjowLjIsIjQiOjExNTYxNjk4NSwiNSI6MTE1NjE2OTg2LCI2IjowLCI3IjoxfSx7IjEiOjU5NSwiMiI6dHJ1ZX0seyIxIjo1ODksIjMiOjAuMDEsIjQiOjEyMDA4NDIxNSwiNSI6MTIwMDg0MjE0LCI2IjowLCI3IjoxfSx7IjEiOjQ5NSwiMyI6MC4wNSwiNCI6MTE4MTMxODEwLCI1IjoxMTgxMzE4MDgsIjYiOjExODEzMTgwOSwiNyI6M30seyIxIjo1ODcsIjMiOjAuMSwiNCI6MTE5NzMyMTcxLCI1IjoxMTk3MzIxNzAsIjYiOjAsIjciOjN9LHsiMSI6NTg0LCIyIjp0cnVlfSx7IjEiOjU2NCwiMyI6MC4wMDAxLCI0IjoxMTkyMDUzMTcsIjUiOjExOTIwNTMxNSwiNiI6MTE5MjA1MzE2LCI3IjoxfSx7IjEiOjU1NywiMiI6dHJ1ZX0seyIxIjo0MjcsIjMiOjAuMSwiNCI6MTE5NzI0MzIyLCI1IjoxMTk3MjQzMjAsIjYiOjExOTcyNDMyMSwiNyI6Mn0seyIxIjo1NzYsIjMiOjAuMDEsIjQiOjExOTMxNzgxMCwiNSI6MTE5MzE3ODExLCI2IjoxMTkzMTgxNzcsIjciOjN9LHsiMSI6NTczLCIyIjp0cnVlfSx7IjEiOjQ5OSwiMiI6dHJ1ZX0seyIxIjo1MTYsIjMiOjAuMSwiNCI6MTE4Mzk1MzM1LCI1IjoxMTgzOTUzMzMsIjYiOjExODM5NTMzNCwiNyI6MX0seyIxIjo1MjQsIjIiOnRydWV9XSwiNTkiOlsiRy1WODRYUDhXR1hZIl0sIjYiOiIyNTAwOTM2MDIiLCI2MiI6dHJ1ZSwiNjMiOjAuMDA1fQosInBlcm1pc3Npb25zIjp7CiJfX2MiOnt9CiwKIl9fY2NkX2F1dG9fcmVkYWN0Ijp7fQosCiJfX2NjZF9jb252ZXJzaW9uX21hcmtpbmciOnt9CiwKIl9fY2NkX2VtX2Rvd25sb2FkIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLmxpbmtDbGljayJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9fQosCiJfX2NjZF9lbV9mb3JtIjp7ImFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlIjp7fSwibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0uZm9ybUludGVyYWN0IiwiZ3RtLmZvcm1TdWJtaXQiLCJndG0uY2xpY2stdjIiXX0sImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9LCJkZXRlY3RfY2xpY2tfZXZlbnRzIjp7fSwiZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siOnsiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6ImFueSIsInF1ZXJpZXNBbGxvd2VkIjoiYW55In0sImxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLmxpbmtDbGljayJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiOnsiYWxsb3dXYWl0Rm9yVGFncyI6IiJ9fQosCiJfX2NjZF9lbV9wYWdlX3ZpZXciOnsibGlzdGVuX2RhdGFfbGF5ZXIiOnsiYWNjZXNzVHlwZSI6InNwZWNpZmljIiwiYWxsb3dlZEV2ZW50cyI6WyJndG0uaGlzdG9yeUNoYW5nZS12MiJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fc2Nyb2xsIjp7Imxpc3Rlbl9kYXRhX2xheWVyIjp7ImFjY2Vzc1R5cGUiOiJzcGVjaWZpYyIsImFsbG93ZWRFdmVudHMiOlsiZ3RtLnNjcm9sbERlcHRoIl19LCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSI6e30sImRldGVjdF9zY3JvbGxfZXZlbnRzIjp7fX0KLAoiX19jY2RfZW1fc2l0ZV9zZWFyY2giOnsiZ2V0X3VybCI6eyJ1cmxQYXJ0cyI6ImFueSIsInF1ZXJpZXNBbGxvd2VkIjoiYW55In0sInJlYWRfY29udGFpbmVyX2RhdGEiOnt9fQosCiJfX2NjZF9lbV92aWRlbyI6eyJsaXN0ZW5fZGF0YV9sYXllciI6eyJhY2Nlc3NUeXBlIjoic3BlY2lmaWMiLCJhbGxvd2VkRXZlbnRzIjpbImd0bS52aWRlbyJdfSwiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9LCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiOnsiYWxsb3dGaXhNaXNzaW5nSmF2YVNjcmlwdEFwaSI6ZmFsc2V9fQosCiJfX2NjZF9nYV9maXJzdCI6eyJyZWFkX2RvbV9lbGVtZW50cyI6eyJhbGxvd2VkQ3NzU2VsZWN0b3JzIjoiYW55In0sImdldF91cmwiOnsidXJsUGFydHMiOiJzcGVjaWZpYyIsInByb3RvY29sIjp0cnVlLCJob3N0Ijp0cnVlfX0KLAoiX19jY2RfZ2FfbGFzdCI6e30KLAoiX19jY2RfZ2FfcmVnc2NvcGUiOnsicmVhZF9jb250YWluZXJfZGF0YSI6e319CiwKIl9fZSI6eyJyZWFkX2V2ZW50X2RhdGEiOnsiZXZlbnREYXRhQWNjZXNzIjoic3BlY2lmaWMiLCJrZXlQYXR0ZXJucyI6WyJldmVudCJdfX0KLAoiX19nY3QiOnsiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiOnt9fQosCiJfX29ndF8xcF9kYXRhX3YyIjp7ImRldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEiOnsibGltaXREYXRhU291cmNlcyI6dHJ1ZSwiYWxsb3dBdXRvRGF0YVNvdXJjZXMiOnRydWUsImFsbG93TWFudWFsRGF0YVNvdXJjZXMiOmZhbHNlLCJhbGxvd0NvZGVEYXRhU291cmNlcyI6ZmFsc2V9fQosCiJfX3NldF9wcm9kdWN0X3NldHRpbmdzIjp7fQoKCn0KCgoKLCJzZWN1cml0eV9ncm91cHMiOnsKImdvb2dsZSI6WwoiX19jIgosCiJfX2NjZF9hdXRvX3JlZGFjdCIKLAoiX19jY2RfY29udmVyc2lvbl9tYXJraW5nIgosCiJfX2NjZF9lbV9kb3dubG9hZCIKLAoiX19jY2RfZW1fZm9ybSIKLAoiX19jY2RfZW1fb3V0Ym91bmRfY2xpY2siCiwKIl9fY2NkX2VtX3BhZ2VfdmlldyIKLAoiX19jY2RfZW1fc2Nyb2xsIgosCiJfX2NjZF9lbV9zaXRlX3NlYXJjaCIKLAoiX19jY2RfZW1fdmlkZW8iCiwKIl9fY2NkX2dhX2ZpcnN0IgosCiJfX2NjZF9nYV9sYXN0IgosCiJfX2NjZF9nYV9yZWdzY29wZSIKLAoiX19lIgosCiJfX2djdCIKLAoiX19vZ3RfMXBfZGF0YV92MiIKLAoiX19zZXRfcHJvZHVjdF9zZXR0aW5ncyIKCl0KCgp9CgoKCgoKfTsKCgoKCnZhciBrLGFhPXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O2IucHJvdG90eXBlPWE7cmV0dXJuIG5ldyBifSxiYT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PSJmdW5jdGlvbiI/T2JqZWN0LmRlZmluZVByb3BlcnR5OmZ1bmN0aW9uKGEsYixjKXtpZihhPT1BcnJheS5wcm90b3R5cGV8fGE9PU9iamVjdC5wcm90b3R5cGUpcmV0dXJuIGE7YVtiXT1jLnZhbHVlO3JldHVybiBhfSxjYT1mdW5jdGlvbihhKXtmb3IodmFyIGI9WyJvYmplY3QiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLCJvYmplY3QiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csIm9iamVjdCI9PXR5cGVvZiBzZWxmJiZzZWxmLCJvYmplY3QiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdLGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkJiZkLk1hdGg9PU1hdGgpcmV0dXJuIGR9dGhyb3cgRXJyb3IoIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3QiKTsKfSxoYT1jYSh0aGlzKSxpYT10eXBlb2YgU3ltYm9sPT09ImZ1bmN0aW9uIiYmdHlwZW9mIFN5bWJvbCgieCIpPT09InN5bWJvbCIsa2E9e30sbGE9e30sbmE9ZnVuY3Rpb24oYSxiLGMpe2lmKCFjfHxhIT1udWxsKXt2YXIgZD1sYVtiXTtpZihkPT1udWxsKXJldHVybiBhW2JdO3ZhciBlPWFbZF07cmV0dXJuIGUhPT12b2lkIDA/ZTphW2JdfX0sb2E9ZnVuY3Rpb24oYSxiLGMpe2lmKGIpYTp7dmFyIGQ9YS5zcGxpdCgiLiIpLGU9ZC5sZW5ndGg9PT0xLGY9ZFswXSxnOyFlJiZmIGluIGthP2c9a2E6Zz1oYTtmb3IodmFyIGg9MDtoPGQubGVuZ3RoLTE7aCsrKXt2YXIgbD1kW2hdO2lmKCEobCBpbiBnKSlicmVhayBhO2c9Z1tsXX12YXIgbj1kW2QubGVuZ3RoLTFdLHA9aWEmJmM9PT0iZXM2Ij9nW25dOm51bGwscT1iKHApO2lmKHEhPW51bGwpaWYoZSliYShrYSxuLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cX0pO2Vsc2UgaWYocSE9PXApe2lmKGxhW25dPT09dm9pZCAwKXt2YXIgcj0KTWF0aC5yYW5kb20oKSoxRTk+Pj4wO2xhW25dPWlhP2hhLlN5bWJvbChuKToiJGpzY3AkIityKyIkIitufWJhKGcsbGFbbl0se2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpxfSl9fX0scGE7aWYoaWEmJnR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpcGE9T2JqZWN0LnNldFByb3RvdHlwZU9mO2Vsc2V7dmFyIHJhO2E6e3ZhciB0YT17YTohMH0sdWE9e307dHJ5e3VhLl9fcHJvdG9fXz10YTtyYT11YS5hO2JyZWFrIGF9Y2F0Y2goYSl7fXJhPSExfXBhPXJhP2Z1bmN0aW9uKGEsYil7YS5fX3Byb3RvX189YjtpZihhLl9fcHJvdG9fXyE9PWIpdGhyb3cgbmV3IFR5cGVFcnJvcihhKyIgaXMgbm90IGV4dGVuc2libGUiKTtyZXR1cm4gYX06bnVsbH0KdmFyIHZhPXBhLHdhPWZ1bmN0aW9uKGEsYil7YS5wcm90b3R5cGU9YWEoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYodmEpdmEoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPSJwcm90b3R5cGUiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLkZ0PWIucHJvdG90eXBlfSx4YT1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX0sbT1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6eGEoYSl9Owp0aHJvdyBFcnJvcihTdHJpbmcoYSkrIiBpcyBub3QgYW4gaXRlcmFibGUgb3IgQXJyYXlMaWtlIik7fSx5YT1mdW5jdGlvbihhKXtmb3IodmFyIGIsYz1bXTshKGI9YS5uZXh0KCkpLmRvbmU7KWMucHVzaChiLnZhbHVlKTtyZXR1cm4gY30sdz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEFycmF5P2E6eWEobShhKSl9LEFhPWZ1bmN0aW9uKGEpe3JldHVybiB6YShhLGEpfSx6YT1mdW5jdGlvbihhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9LEJhPWlhJiZ0eXBlb2YgbmEoT2JqZWN0LCJhc3NpZ24iKT09ImZ1bmN0aW9uIj9uYShPYmplY3QsImFzc2lnbiIpOmZ1bmN0aW9uKGEsYil7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJObyBudWxsaXNoIGFyZyIpO2E9T2JqZWN0KGEpO2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTsKaWYoZClmb3IodmFyIGUgaW4gZClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxlKSYmKGFbZV09ZFtlXSl9cmV0dXJuIGF9O29hKCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8QmF9LCJlczYiKTt2YXIgQ2E9ZnVuY3Rpb24oYSl7aWYoIShhIGluc3RhbmNlb2YgT2JqZWN0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJJdGVyYXRvciByZXN1bHQgIithKyIgaXMgbm90IGFuIG9iamVjdCIpO30sRGE9ZnVuY3Rpb24oKXt0aGlzLmZhPSExO3RoaXMuUj1udWxsO3RoaXMuamE9dm9pZCAwO3RoaXMuSD0xO3RoaXMuTj10aGlzLlo9MDt0aGlzLkxhPXRoaXMuSz1udWxsfSxFYT1mdW5jdGlvbihhKXtpZihhLmZhKXRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmciKTthLmZhPSEwfTtEYS5wcm90b3R5cGUueWE9ZnVuY3Rpb24oYSl7dGhpcy5qYT1hfTsKdmFyIEdhPWZ1bmN0aW9uKGEsYil7YS5LPXthbzpiLGlzRXhjZXB0aW9uOiEwfTthLkg9YS5afHxhLk59O0RhLnByb3RvdHlwZS5nZXROZXh0QWRkcmVzc0pzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O0RhLnByb3RvdHlwZS5nZXRZaWVsZFJlc3VsdEpzYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmphfTtEYS5wcm90b3R5cGUucmV0dXJuPWZ1bmN0aW9uKGEpe3RoaXMuSz17cmV0dXJuOmF9O3RoaXMuSD10aGlzLk59O0RhLnByb3RvdHlwZVsicmV0dXJuIl09RGEucHJvdG90eXBlLnJldHVybjtEYS5wcm90b3R5cGUuQWo9ZnVuY3Rpb24oYSl7dGhpcy5LPXtuZDphfTt0aGlzLkg9dGhpcy5OfTtEYS5wcm90b3R5cGUuanVtcFRocm91Z2hGaW5hbGx5QmxvY2tzPURhLnByb3RvdHlwZS5BajtEYS5wcm90b3R5cGUuYWM9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9YjtyZXR1cm57dmFsdWU6YX19O0RhLnByb3RvdHlwZS55aWVsZD1EYS5wcm90b3R5cGUuYWM7CkRhLnByb3RvdHlwZS54cz1mdW5jdGlvbihhLGIpe3ZhciBjPW0oYSksZD1jLm5leHQoKTtDYShkKTtpZihkLmRvbmUpdGhpcy5qYT1kLnZhbHVlLHRoaXMuSD1iO2Vsc2UgcmV0dXJuIHRoaXMuUj1jLHRoaXMuYWMoZC52YWx1ZSxiKX07RGEucHJvdG90eXBlLnlpZWxkQWxsPURhLnByb3RvdHlwZS54cztEYS5wcm90b3R5cGUubmQ9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O0RhLnByb3RvdHlwZS5qdW1wVG89RGEucHJvdG90eXBlLm5kO0RhLnByb3RvdHlwZS5Eaj1mdW5jdGlvbigpe3RoaXMuSD0wfTtEYS5wcm90b3R5cGUuanVtcFRvRW5kPURhLnByb3RvdHlwZS5EajtEYS5wcm90b3R5cGUuTmo9ZnVuY3Rpb24oYSxiKXt0aGlzLlo9YTtiIT12b2lkIDAmJih0aGlzLk49Yil9O0RhLnByb3RvdHlwZS5zZXRDYXRjaEZpbmFsbHlCbG9ja3M9RGEucHJvdG90eXBlLk5qO0RhLnByb3RvdHlwZS52Zz1mdW5jdGlvbihhKXt0aGlzLlo9MDt0aGlzLk49YXx8MH07CkRhLnByb3RvdHlwZS5zZXRGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLnZnO0RhLnByb3RvdHlwZS5Jaj1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuWj1ifHwwfTtEYS5wcm90b3R5cGUubGVhdmVUcnlCbG9jaz1EYS5wcm90b3R5cGUuSWo7RGEucHJvdG90eXBlLlBoPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfHwwO3ZhciBiPXRoaXMuSy5hbzt0aGlzLks9bnVsbDtyZXR1cm4gYn07RGEucHJvdG90eXBlLmVudGVyQ2F0Y2hCbG9jaz1EYS5wcm90b3R5cGUuUGg7RGEucHJvdG90eXBlLmtkPWZ1bmN0aW9uKGEsYixjKXtjP3RoaXMuTGFbY109dGhpcy5LOnRoaXMuTGE9W3RoaXMuS107dGhpcy5aPWF8fDA7dGhpcy5OPWJ8fDB9O0RhLnByb3RvdHlwZS5lbnRlckZpbmFsbHlCbG9jaz1EYS5wcm90b3R5cGUua2Q7CkRhLnByb3RvdHlwZS5oZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTGEuc3BsaWNlKGJ8fDApWzBdLGQ9dGhpcy5LPXRoaXMuS3x8YztkP2QuaXNFeGNlcHRpb24/dGhpcy5IPXRoaXMuWnx8dGhpcy5OOmQubmQhPXZvaWQgMCYmdGhpcy5OPGQubmQ/KHRoaXMuSD1kLm5kLHRoaXMuSz1udWxsKTp0aGlzLkg9dGhpcy5OOnRoaXMuSD1hfTtEYS5wcm90b3R5cGUubGVhdmVGaW5hbGx5QmxvY2s9RGEucHJvdG90eXBlLmhlO0RhLnByb3RvdHlwZS5mZT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IEhhKGEpfTtEYS5wcm90b3R5cGUuZm9ySW49RGEucHJvdG90eXBlLmZlO3ZhciBIYT1mdW5jdGlvbihhKXt0aGlzLks9YTt0aGlzLkg9W107Zm9yKHZhciBiIGluIGEpdGhpcy5ILnB1c2goYik7dGhpcy5ILnJldmVyc2UoKX07SGEucHJvdG90eXBlLmhvPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLkgubGVuZ3RoPjA7KXt2YXIgYT10aGlzLkgucG9wKCk7aWYoYSBpbiB0aGlzLkspcmV0dXJuIGF9cmV0dXJuIG51bGx9OwpIYS5wcm90b3R5cGUuZ2V0TmV4dD1IYS5wcm90b3R5cGUuaG87CnZhciBJYT1mdW5jdGlvbihhKXt0aGlzLkg9bmV3IERhO3RoaXMuSz1hfSxMYT1mdW5jdGlvbihhLGIpe0VhKGEuSCk7dmFyIGM9YS5ILlI7aWYoYylyZXR1cm4gSmEoYSwicmV0dXJuImluIGM/Y1sicmV0dXJuIl06ZnVuY3Rpb24oZCl7cmV0dXJue3ZhbHVlOmQsZG9uZTohMH19LGIsYS5ILnJldHVybik7YS5ILnJldHVybihiKTtyZXR1cm4gS2EoYSl9LEphPWZ1bmN0aW9uKGEsYixjLGQpe3RyeXt2YXIgZT1iLmNhbGwoYS5ILlIsYyk7Q2EoZSk7aWYoIWUuZG9uZSlyZXR1cm4gYS5ILmZhPSExLGU7dmFyIGY9ZS52YWx1ZX1jYXRjaChnKXtyZXR1cm4gYS5ILlI9bnVsbCxHYShhLkgsZyksS2EoYSl9YS5ILlI9bnVsbDtkLmNhbGwoYS5ILGYpO3JldHVybiBLYShhKX0sS2E9ZnVuY3Rpb24oYSl7Zm9yKDthLkguSDspdHJ5e3ZhciBiPWEuSyhhLkgpO2lmKGIpcmV0dXJuIGEuSC5mYT0hMSx7dmFsdWU6Yi52YWx1ZSxkb25lOiExfX1jYXRjaChkKXthLkguamE9dm9pZCAwLEdhKGEuSCwKZCl9YS5ILmZhPSExO2lmKGEuSC5LKXt2YXIgYz1hLkguSzthLkguSz1udWxsO2lmKGMuaXNFeGNlcHRpb24pdGhyb3cgYy5hbztyZXR1cm57dmFsdWU6Yy5yZXR1cm4sZG9uZTohMH19cmV0dXJue3ZhbHVlOnZvaWQgMCxkb25lOiEwfX0sTWE9ZnVuY3Rpb24oYSl7dGhpcy5uZXh0PWZ1bmN0aW9uKGIpe3ZhciBjO0VhKGEuSCk7YS5ILlI/Yz1KYShhLGEuSC5SLm5leHQsYixhLkgueWEpOihhLkgueWEoYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMudGhyb3c9ZnVuY3Rpb24oYil7dmFyIGM7RWEoYS5IKTthLkguUj9jPUphKGEsYS5ILlJbInRocm93Il0sYixhLkgueWEpOihHYShhLkgsYiksYz1LYShhKSk7cmV0dXJuIGN9O3RoaXMucmV0dXJuPWZ1bmN0aW9uKGIpe3JldHVybiBMYShhLGIpfTt0aGlzW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc319LE5hPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IE1hKG5ldyBJYShiKSk7dmEmJmEucHJvdG90eXBlJiZ2YShjLAphLnByb3RvdHlwZSk7cmV0dXJuIGN9LE9hPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9LFFhPWZ1bmN0aW9uKGEpe3JldHVybiBhfTsvKgoKIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgUmE9dGhpc3x8c2VsZixTYT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXt9Yy5wcm90b3R5cGU9Yi5wcm90b3R5cGU7YS5GdD1iLnByb3RvdHlwZTthLnByb3RvdHlwZT1uZXcgYzthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2EubnY9ZnVuY3Rpb24oZCxlLGYpe2Zvcih2YXIgZz1BcnJheShhcmd1bWVudHMubGVuZ3RoLTIpLGg9MjtoPGFyZ3VtZW50cy5sZW5ndGg7aCsrKWdbaC0yXT1hcmd1bWVudHNbaF07cmV0dXJuIGIucHJvdG90eXBlW2VdLmFwcGx5KGQsZyl9fTt2YXIgVGE9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YTt0aGlzLmRhdGE9Yn07dmFyIFVhPWZ1bmN0aW9uKCl7dGhpcy5tYXA9e307dGhpcy5IPXt9fTtVYS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcFsiZHVzdC4iK2FdfTtVYS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9ImR1c3QuIithO3RoaXMuSC5oYXNPd25Qcm9wZXJ0eShjKXx8KHRoaXMubWFwW2NdPWIpfTtVYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eSgiZHVzdC4iK2EpfTtVYS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe3ZhciBiPSJkdXN0LiIrYTt0aGlzLkguaGFzT3duUHJvcGVydHkoYil8fGRlbGV0ZSB0aGlzLm1hcFtiXX07CnZhciBWYT1mdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYS5tYXApaWYoYS5tYXAuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO3N3aXRjaChiKXtjYXNlIDE6Yy5wdXNoKGUpO2JyZWFrO2Nhc2UgMjpjLnB1c2goYS5tYXBbZF0pO2JyZWFrO2Nhc2UgMzpjLnB1c2goW2UsYS5tYXBbZF1dKX19cmV0dXJuIGN9O1VhLnByb3RvdHlwZS5GYT1mdW5jdGlvbigpe3JldHVybiBWYSh0aGlzLDEpfTtVYS5wcm90b3R5cGUuaGM9ZnVuY3Rpb24oKXtyZXR1cm4gVmEodGhpcywyKX07VWEucHJvdG90eXBlLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIFZhKHRoaXMsMyl9O3ZhciBXYT1mdW5jdGlvbigpe307V2EucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7fTt2YXIgWGE9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9O3RoaXMucHJlZml4PSJndG0uIn07az1YYS5wcm90b3R5cGU7ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLnZhbHVlW3RoaXMucHJlZml4K1N0cmluZyhhKV09Yn07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVbdGhpcy5wcmVmaXgrU3RyaW5nKGEpXX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWUuaGFzT3duUHJvcGVydHkodGhpcy5wcmVmaXgrU3RyaW5nKGEpKX07ay5kZWxldGU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5wcmVmaXgrU3RyaW5nKGEpO3JldHVybiB0aGlzLnZhbHVlLmhhc093blByb3BlcnR5KGIpPyhkZWxldGUgdGhpcy52YWx1ZVtiXSwhMCk6ITF9O2suY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLnZhbHVlPXt9fTsKay52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3JldHVybiBmdW5jdGlvbiBjKCl7dmFyIGQsZSxmO3JldHVybiBOYShjLGZ1bmN0aW9uKGcpe3N3aXRjaChnLkgpe2Nhc2UgMTpnLnZnKDIpLGU9Zy5mZShhLnZhbHVlKTtjYXNlIDQ6aWYoKGQ9ZS5obygpKT09bnVsbCl7Zy5uZCgyKTticmVha31pZighYS52YWx1ZS5oYXNPd25Qcm9wZXJ0eShkKSl7Zy5uZCg0KTticmVha31mPVFhO3JldHVybiBnLmFjKGEudmFsdWVbZF0sOCk7Y2FzZSA4OmYoZy5qYSk7Zy5uZCg0KTticmVhaztjYXNlIDI6Zy5rZCgpLGcuaGUoMCl9fSl9KCl9O2hhLk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKFhhLnByb3RvdHlwZSx7c2l6ZTp7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5rZXlzKHRoaXMudmFsdWUpLmxlbmd0aH19fSk7CmZ1bmN0aW9uIFlhKCl7dHJ5e2lmKE1hcClyZXR1cm4gbmV3IE1hcH1jYXRjaChhKXt9cmV0dXJuIG5ldyBYYX07dmFyIFphPWZ1bmN0aW9uKCl7dGhpcy52YWx1ZXM9W119O1phLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7dGhpcy52YWx1ZXMuaW5kZXhPZihhKT09PS0xJiZ0aGlzLnZhbHVlcy5wdXNoKGEpfTtaYS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnZhbHVlcy5pbmRleE9mKGEpPi0xfTt2YXIgJGE9ZnVuY3Rpb24oYSxiKXt0aGlzLmZhPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLlI9dGhpcy5LPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuTj1mdW5jdGlvbihkLGUsZil7cmV0dXJuIGQuYXBwbHkoZSxmKX07dGhpcy5IPVlhKCk7dmFyIGM7YTp7dHJ5e2lmKFNldCl7Yz1uZXcgU2V0O2JyZWFrIGF9fWNhdGNoKGQpe31jPW5ldyBaYX10aGlzLlo9Y307JGEucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhLGIpe2FiKHRoaXMsYSxiLCExKX07JGEucHJvdG90eXBlLlFoPWZ1bmN0aW9uKGEsYil7YWIodGhpcyxhLGIsITApfTt2YXIgYWI9ZnVuY3Rpb24oYSxiLGMsZCl7YS5IYnx8YS5aLmhhcyhiKXx8KGQmJmEuWi5hZGQoYiksYS5ILnNldChiLGMpKX07az0kYS5wcm90b3R5cGU7Cmsuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLkguaGFzKGEpJiZ0aGlzLnBhcmVudCYmdGhpcy5wYXJlbnQuaGFzKGEpP3RoaXMucGFyZW50LnNldChhLGIpOnRoaXMuWi5oYXMoYSl8fHRoaXMuSC5zZXQoYSxiKSl9O2suZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkguaGFzKGEpP3RoaXMuSC5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLkguaGFzKGEpfHwhKCF0aGlzLnBhcmVudHx8IXRoaXMucGFyZW50LmhhcyhhKSl9O2sud2I9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgJGEodGhpcy5mYSx0aGlzKTt0aGlzLksmJmEuUWIodGhpcy5LKTthLnNkKHRoaXMuTik7YS51ZSh0aGlzLlIpO3JldHVybiBhfTtrLmplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmF9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5LPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTsKay5zZD1mdW5jdGlvbihhKXt0aGlzLk49YX07ay5Qaj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk59O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkhiPSEwfTtrLnVlPWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLnhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUn07dmFyIGJiPWZ1bmN0aW9uKGEsYixjKXt2YXIgZDtkPUVycm9yLmNhbGwodGhpcyxhLm1lc3NhZ2UpO3RoaXMubWVzc2FnZT1kLm1lc3NhZ2U7InN0YWNrImluIGQmJih0aGlzLnN0YWNrPWQuc3RhY2spO3RoaXMudm89YTt0aGlzLlNuPWM9PT12b2lkIDA/ITE6Yzt0aGlzLks9W107dGhpcy5IPWJ9O3dhKGJiLEVycm9yKTt2YXIgY2I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBiYj9hOm5ldyBiYihhLHZvaWQgMCwhMCl9O3ZhciBkYj1ZYSgpO2Z1bmN0aW9uIGViKGEsYil7Zm9yKHZhciBjLGQ9bShiKSxlPWQubmV4dCgpOyFlLmRvbmUmJiEoYz1mYihhLGUudmFsdWUpLGMgaW5zdGFuY2VvZiBUYSk7ZT1kLm5leHQoKSk7cmV0dXJuIGN9ZnVuY3Rpb24gZmIoYSxiKXt0cnl7dmFyIGM9YlswXSxkPWIuc2xpY2UoMSksZT1TdHJpbmcoYyksZj1kYi5oYXMoZSk/ZGIuZ2V0KGUpOmEuZ2V0KGUpO2lmKCFmfHx0eXBlb2YgZi5pbnZva2UhPT0iZnVuY3Rpb24iKXRocm93IGNiKEVycm9yKCJBdHRlbXB0aW5nIHRvIGV4ZWN1dGUgbm9uLWZ1bmN0aW9uICIrYlswXSsiLiIpKTtyZXR1cm4gZi5hcHBseShhLGQpfWNhdGNoKGgpe3ZhciBnPWEuZm8oKTtnJiZnKGgsYi5jb250ZXh0P3tpZDpiWzBdLGxpbmU6Yi5jb250ZXh0LmxpbmV9Om51bGwpO3Rocm93IGg7fX07dmFyIGdiPWZ1bmN0aW9uKCl7dGhpcy5LPW5ldyBXYTt0aGlzLkg9bmV3ICRhKHRoaXMuSyl9O2s9Z2IucHJvdG90eXBlO2suamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LfTtrLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07ay5zZD1mdW5jdGlvbihhKXt0aGlzLkguc2QoYSl9O2suZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5yayhbYV0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpfTtrLnJrPWZ1bmN0aW9uKCl7Zm9yKHZhciBhLGI9bShPYS5hcHBseSgwLGFyZ3VtZW50cykpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWE9ZmIodGhpcy5ILGMudmFsdWUpO3JldHVybiBhfTtrLkpxPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKSxjPXRoaXMuSC53YigpO2MudWUoYSk7Zm9yKHZhciBkLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkPWZiKGMsZi52YWx1ZSk7cmV0dXJuIGR9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07dmFyIGhiPWZ1bmN0aW9uKGEsYil7dGhpcy5SPWE7dGhpcy5wYXJlbnQ9Yjt0aGlzLk49dGhpcy5IPXZvaWQgMDt0aGlzLkhiPSExO3RoaXMuSz1mdW5jdGlvbihjLGQsZSl7cmV0dXJuIGMuYXBwbHkoZCxlKX07dGhpcy52YWx1ZXM9bmV3IFVhfTtoYi5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7amIodGhpcyxhLGIsITEpfTtoYi5wcm90b3R5cGUuUWg9ZnVuY3Rpb24oYSxiKXtqYih0aGlzLGEsYiwhMCl9O3ZhciBqYj1mdW5jdGlvbihhLGIsYyxkKXtpZighYS5IYilpZihkKXt2YXIgZT1hLnZhbHVlcztlLnNldChiLGMpO2UuSFsiZHVzdC4iK2JdPSEwfWVsc2UgYS52YWx1ZXMuc2V0KGIsYyl9O2s9aGIucHJvdG90eXBlO2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5IYnx8KCF0aGlzLnZhbHVlcy5oYXMoYSkmJnRoaXMucGFyZW50JiZ0aGlzLnBhcmVudC5oYXMoYSk/dGhpcy5wYXJlbnQuc2V0KGEsYik6dGhpcy52YWx1ZXMuc2V0KGEsYikpfTsKay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWVzLmhhcyhhKT90aGlzLnZhbHVlcy5nZXQoYSk6dGhpcy5wYXJlbnQ/dGhpcy5wYXJlbnQuZ2V0KGEpOnZvaWQgMH07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuISF0aGlzLnZhbHVlcy5oYXMoYSl8fCEoIXRoaXMucGFyZW50fHwhdGhpcy5wYXJlbnQuaGFzKGEpKX07ay53Yj1mdW5jdGlvbigpe3ZhciBhPW5ldyBoYih0aGlzLlIsdGhpcyk7dGhpcy5IJiZhLlFiKHRoaXMuSCk7YS5zZCh0aGlzLkspO2EudWUodGhpcy5OKTtyZXR1cm4gYX07ay5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJ9O2suUWI9ZnVuY3Rpb24oYSl7dGhpcy5IPWF9O2suZm89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5IfTtrLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSz1hfTtrLlBqPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuS307ay5aYT1mdW5jdGlvbigpe3RoaXMuSGI9ITB9O2sudWU9ZnVuY3Rpb24oYSl7dGhpcy5OPWF9O2sueGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OfTt2YXIga2I9ZnVuY3Rpb24oKXt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhfTtrPWtiLnByb3RvdHlwZTtrLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5nZXQoYSl9O2suc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy5OYXx8dGhpcy5sYS5zZXQoYSxiKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuaGFzKGEpfTtrLnJlbW92ZT1mdW5jdGlvbihhKXt0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5GYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLkZhKCl9O2suaGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5oYygpfTtrLmZjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuZmMoKX07ay5aYT1mdW5jdGlvbigpe3RoaXMuTmE9ITB9O2suSGI9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OYX07ZnVuY3Rpb24gbGIoKXtmb3IodmFyIGE9bWIsYj17fSxjPTA7YzxhLmxlbmd0aDsrK2MpYlthW2NdXT1jO3JldHVybiBifWZ1bmN0aW9uIG5iKCl7dmFyIGE9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjthKz1hLnRvTG93ZXJDYXNlKCkrIjAxMjM0NTY3ODktXyI7cmV0dXJuIGErIi4ifXZhciBtYixvYjtmdW5jdGlvbiBwYihhKXttYj1tYnx8bmIoKTtvYj1vYnx8bGIoKTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7Yys9Myl7dmFyIGQ9YysxPGEubGVuZ3RoLGU9YysyPGEubGVuZ3RoLGY9YS5jaGFyQ29kZUF0KGMpLGc9ZD9hLmNoYXJDb2RlQXQoYysxKTowLGg9ZT9hLmNoYXJDb2RlQXQoYysyKTowLGw9Zj4+MixuPShmJjMpPDw0fGc+PjQscD0oZyYxNSk8PDJ8aD4+NixxPWgmNjM7ZXx8KHE9NjQsZHx8KHA9NjQpKTtiLnB1c2gobWJbbF0sbWJbbl0sbWJbcF0sbWJbcV0pfXJldHVybiBiLmpvaW4oIiIpfQpmdW5jdGlvbiBxYihhKXtmdW5jdGlvbiBiKGwpe2Zvcig7ZDxhLmxlbmd0aDspe3ZhciBuPWEuY2hhckF0KGQrKykscD1vYltuXTtpZihwIT1udWxsKXJldHVybiBwO2lmKCEvXltcc1x4YTBdKiQvLnRlc3QobikpdGhyb3cgRXJyb3IoIlVua25vd24gYmFzZTY0IGVuY29kaW5nIGF0IGNoYXI6ICIrbik7fXJldHVybiBsfW1iPW1ifHxuYigpO29iPW9ifHxsYigpO2Zvcih2YXIgYz0iIixkPTA7Oyl7dmFyIGU9YigtMSksZj1iKDApLGc9Yig2NCksaD1iKDY0KTtpZihoPT09NjQmJmU9PT0tMSlyZXR1cm4gYztjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGU8PDJ8Zj4+NCk7ZyE9PTY0JiYoYys9U3RyaW5nLmZyb21DaGFyQ29kZShmPDw0JjI0MHxnPj4yKSxoIT09NjQmJihjKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGc8PDYmMTkyfGgpKSl9fTt2YXIgcmI9e307ZnVuY3Rpb24gc2IoYSxiKXt2YXIgYz1yYlthXTtjfHwoYz1yYlthXT1bXSk7Y1tiXT0hMH1mdW5jdGlvbiB0Yigpe2RlbGV0ZSByYi5HQTRfRVZFTlR9ZnVuY3Rpb24gdWIoKXt2YXIgYT12Yi5ILnNsaWNlKCk7cmIuR1RBR19FVkVOVF9GRUFUVVJFX0NIQU5ORUw9YX1mdW5jdGlvbiB3YihhKXtmb3IodmFyIGI9W10sYz0wLGQ9MDtkPGEubGVuZ3RoO2QrKylkJTg9PT0wJiZkPjAmJihiLnB1c2goU3RyaW5nLmZyb21DaGFyQ29kZShjKSksYz0wKSxhW2RdJiYoY3w9MTw8ZCU4KTtjPjAmJmIucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGMpKTtyZXR1cm4gcGIoYi5qb2luKCIiKSkucmVwbGFjZSgvXC4rJC8sIiIpfTtmdW5jdGlvbiB4Yigpe31mdW5jdGlvbiB5YihhKXtyZXR1cm4gdHlwZW9mIGE9PT0iZnVuY3Rpb24ifWZ1bmN0aW9uIHpiKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIEFiKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIiJiYhaXNOYU4oYSl9ZnVuY3Rpb24gQmIoYSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTpbYV19ZnVuY3Rpb24gQ2IoYSxiKXtpZihhJiZBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmIoYVtjXSkpcmV0dXJuIGFbY119ZnVuY3Rpb24gRGIoYSxiKXtpZighQWIoYSl8fCFBYihiKXx8YT5iKWE9MCxiPTIxNDc0ODM2NDc7cmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSooYi1hKzEpK2EpfQpmdW5jdGlvbiBFYihhLGIpe2Zvcih2YXIgYz1uZXcgRmIsZD0wO2Q8YS5sZW5ndGg7ZCsrKWMuc2V0KGFbZF0sITApO2Zvcih2YXIgZT0wO2U8Yi5sZW5ndGg7ZSsrKWlmKGMuZ2V0KGJbZV0pKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEdiKGEsYil7Zm9yKHZhciBjIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYykmJmIoYyxhW2NdKX1mdW5jdGlvbiBIYihhKXtyZXR1cm4hIWEmJihPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoYSk9PT0iW29iamVjdCBBcmd1bWVudHNdInx8T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsImNhbGxlZSIpKX1mdW5jdGlvbiBJYihhKXtyZXR1cm4gTWF0aC5yb3VuZChOdW1iZXIoYSkpfHwwfWZ1bmN0aW9uIEpiKGEpe3JldHVybiJmYWxzZSI9PT1TdHJpbmcoYSkudG9Mb3dlckNhc2UoKT8hMTohIWF9CmZ1bmN0aW9uIEtiKGEpe3ZhciBiPVtdO2lmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKFN0cmluZyhhW2NdKSk7cmV0dXJuIGJ9ZnVuY3Rpb24gTGIoYSl7cmV0dXJuIGE/YS5yZXBsYWNlKC9eXHMrfFxzKyQvZywiIik6IiJ9ZnVuY3Rpb24gTWIoKXtyZXR1cm4gbmV3IERhdGUoRGF0ZS5ub3coKSl9ZnVuY3Rpb24gTmIoKXtyZXR1cm4gTWIoKS5nZXRUaW1lKCl9dmFyIEZiPWZ1bmN0aW9uKCl7dGhpcy5wcmVmaXg9Imd0bS4iO3RoaXMudmFsdWVzPXt9fTtGYi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGEsYil7dGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV09Yn07RmIucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXNbdGhpcy5wcmVmaXgrYV19O0ZiLnByb3RvdHlwZS5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nZXQoYSkhPT12b2lkIDB9OwpmdW5jdGlvbiBPYihhLGIsYyl7cmV0dXJuIGEmJmEuaGFzT3duUHJvcGVydHkoYik/YVtiXTpjfWZ1bmN0aW9uIFBiKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPXZvaWQgMDt0cnl7YygpfWNhdGNoKGQpe319fX1mdW5jdGlvbiBRYihhLGIpe2Zvcih2YXIgYyBpbiBiKWIuaGFzT3duUHJvcGVydHkoYykmJihhW2NdPWJbY10pfWZ1bmN0aW9uIFJiKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyljLnB1c2goYVtkXSksYy5wdXNoLmFwcGx5KGMsYlthW2RdXXx8W10pO3JldHVybiBjfWZ1bmN0aW9uIFNiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoMCxiLmxlbmd0aCk9PT1ifWZ1bmN0aW9uIFRiKGEsYil7cmV0dXJuIGEubGVuZ3RoPj1iLmxlbmd0aCYmYS5zdWJzdHJpbmcoYS5sZW5ndGgtYi5sZW5ndGgsYS5sZW5ndGgpPT09Yn0KZnVuY3Rpb24gVWIoYSxiLGMpe2M9Y3x8W107Zm9yKHZhciBkPWEsZT0wO2U8Yi5sZW5ndGgtMTtlKyspe2lmKCFkLmhhc093blByb3BlcnR5KGJbZV0pKXJldHVybjtkPWRbYltlXV07aWYoYy5pbmRleE9mKGQpPj0wKXJldHVybn1yZXR1cm4gZH1mdW5jdGlvbiBWYihhLGIpe2Zvcih2YXIgYz17fSxkPWMsZT1hLnNwbGl0KCIuIiksZj0wO2Y8ZS5sZW5ndGgtMTtmKyspZD1kW2VbZl1dPXt9O2RbZVtlLmxlbmd0aC0xXV09YjtyZXR1cm4gY312YXIgV2I9L15cd3sxLDl9JC87ZnVuY3Rpb24gWWIoYSxiKXthPWF8fHt9O2I9Ynx8IiwiO3ZhciBjPVtdO0diKGEsZnVuY3Rpb24oZCxlKXtXYi50ZXN0KGQpJiZlJiZjLnB1c2goZCl9KTtyZXR1cm4gYy5qb2luKGIpfQpmdW5jdGlvbiBaYihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hLmNoYXJDb2RlQXQoYyk7ZDwxMjg/Yi5wdXNoKGQpOmQ8MjA0OD9iLnB1c2goMTkyfGQ+PjYsMTI4fGQmNjMpOmQ8NTUyOTZ8fGQ+PTU3MzQ0P2IucHVzaCgyMjR8ZD4+MTIsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpOihkPTY1NTM2KygoZCYxMDIzKTw8MTB8YS5jaGFyQ29kZUF0KCsrYykmMTAyMyksYi5wdXNoKDI0MHxkPj4xOCwxMjh8ZD4+MTImNjMsMTI4fGQ+PjYmNjMsMTI4fGQmNjMpKX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYil9ZnVuY3Rpb24gJGIoYSl7aWYoIWEpcmV0dXJuIGE7dmFyIGI9YTt0cnl7Yj1kZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goZCl7fXZhciBjPWIuc3BsaXQoIiwiKTtyZXR1cm4gYy5sZW5ndGg9PT0yJiZjWzBdPT09Y1sxXT9jWzBdOmF9CmZ1bmN0aW9uIGFjKGEsYixjKXtmdW5jdGlvbiBkKG4pe3ZhciBwPW4uc3BsaXQoIj0iKVswXTtpZihhLmluZGV4T2YocCk8MClyZXR1cm4gbjtpZihjIT09dm9pZCAwKXJldHVybiBwKyI9IitjfWZ1bmN0aW9uIGUobil7cmV0dXJuIG4uc3BsaXQoIiYiKS5tYXAoZCkuZmlsdGVyKGZ1bmN0aW9uKHApe3JldHVybiBwIT09dm9pZCAwfSkuam9pbigiJiIpfXZhciBmPWIuaHJlZi5zcGxpdCgvWz8jXS8pWzBdLGc9Yi5zZWFyY2gsaD1iLmhhc2g7Z1swXT09PSI/IiYmKGc9Zy5zdWJzdHJpbmcoMSkpO2hbMF09PT0iIyImJihoPWguc3Vic3RyaW5nKDEpKTtnPWUoZyk7aD1lKGgpO2chPT0iIiYmKGc9Ij8iK2cpO2ghPT0iIiYmKGg9IiMiK2gpO3ZhciBsPSIiK2YrZytoO2xbbC5sZW5ndGgtMV09PT0iLyImJihsPWwuc3Vic3RyaW5nKDAsbC5sZW5ndGgtMSkpO3JldHVybiBsfQpmdW5jdGlvbiBiYyhhKXtmb3IodmFyIGI9MDtiPDM7KytiKXRyeXt2YXIgYz1kZWNvZGVVUklDb21wb25lbnQoYSkucmVwbGFjZSgvXCsvZywiICIpO2lmKGM9PT1hKWJyZWFrO2E9Y31jYXRjaChkKXtyZXR1cm4iIn1yZXR1cm4gYX1mdW5jdGlvbiBjYygpe3ZhciBhPUEsYjthOnt2YXIgYz1hLmNyeXB0b3x8YS5tc0NyeXB0bztpZihjJiZjLmdldFJhbmRvbVZhbHVlcyl0cnl7dmFyIGQ9bmV3IFVpbnQ4QXJyYXkoMjUpO2MuZ2V0UmFuZG9tVmFsdWVzKGQpO2I9YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx3KGQpKSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89KyQvLCIiKTticmVhayBhfWNhdGNoKGUpe31iPXZvaWQgMH1yZXR1cm4gYn07LyoKCiBDb3B5cmlnaHQgR29vZ2xlIExMQwogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIGRjPWdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLGVjO2Z1bmN0aW9uIGZjKCl7dmFyIGE9bnVsbDtpZighZGMpcmV0dXJuIGE7dHJ5e3ZhciBiPWZ1bmN0aW9uKGMpe3JldHVybiBjfTthPWRjLmNyZWF0ZVBvbGljeSgiZ29vZyNodG1sIix7Y3JlYXRlSFRNTDpiLGNyZWF0ZVNjcmlwdDpiLGNyZWF0ZVNjcmlwdFVSTDpifSl9Y2F0Y2goYyl7fXJldHVybiBhfWZ1bmN0aW9uIGhjKCl7ZWM9PT12b2lkIDAmJihlYz1mYygpKTtyZXR1cm4gZWN9O3ZhciBpYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07aWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07ZnVuY3Rpb24gamMoYSl7dmFyIGI9YSxjPWhjKCksZD1jP2MuY3JlYXRlU2NyaXB0VVJMKGIpOmI7cmV0dXJuIG5ldyBpYyhkKX1mdW5jdGlvbiBrYyhhKXtpZihhIGluc3RhbmNlb2YgaWMpcmV0dXJuIGEuSDt0aHJvdyBFcnJvcigiIik7fTt2YXIgbGM9QWEoWyIiXSksbWM9emEoWyJceDAwIl0sWyJcXDAiXSksbmM9emEoWyJcbiJdLFsiXFxuIl0pLG9jPXphKFsiXHgwMCJdLFsiXFx1MDAwMCJdKTtmdW5jdGlvbiBwYyhhKXtyZXR1cm4gYS50b1N0cmluZygpLmluZGV4T2YoImAiKT09PS0xfXBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKGxjKX0pfHxwYyhmdW5jdGlvbihhKXtyZXR1cm4gYShtYyl9KXx8cGMoZnVuY3Rpb24oYSl7cmV0dXJuIGEobmMpfSl8fHBjKGZ1bmN0aW9uKGEpe3JldHVybiBhKG9jKX0pO3ZhciBxYz1mdW5jdGlvbihhKXt0aGlzLkg9YX07cWMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSH07dmFyIHJjPWZ1bmN0aW9uKGEpe3RoaXMuSnM9YX07ZnVuY3Rpb24gc2MoYSl7cmV0dXJuIG5ldyByYyhmdW5jdGlvbihiKXtyZXR1cm4gYi5zdWJzdHIoMCxhLmxlbmd0aCsxKS50b0xvd2VyQ2FzZSgpPT09YSsiOiJ9KX12YXIgdGM9W3NjKCJkYXRhIiksc2MoImh0dHAiKSxzYygiaHR0cHMiKSxzYygibWFpbHRvIiksc2MoImZ0cCIpLG5ldyByYyhmdW5jdGlvbihhKXtyZXR1cm4vXlteOl0qKFsvPyNdfCQpLy50ZXN0KGEpfSldO2Z1bmN0aW9uIHVjKGEpe3ZhciBiO2I9Yj09PXZvaWQgMD90YzpiO2lmKGEgaW5zdGFuY2VvZiBxYylyZXR1cm4gYTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoOysrYyl7dmFyIGQ9YltjXTtpZihkIGluc3RhbmNlb2YgcmMmJmQuSnMoYSkpcmV0dXJuIG5ldyBxYyhhKX19dmFyIHZjPS9eXHMqKD8hamF2YXNjcmlwdDopKD86W1x3Ky4tXSs6fFteOi8/I10qKD86Wy8/I118JCkpL2k7CmZ1bmN0aW9uIHdjKGEpe3ZhciBiO2lmKGEgaW5zdGFuY2VvZiBxYylpZihhIGluc3RhbmNlb2YgcWMpYj1hLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7ZWxzZSBiPXZjLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGJ9O2Z1bmN0aW9uIHhjKGEsYil7dmFyIGM9d2MoYik7YyE9PXZvaWQgMCYmKGEuYWN0aW9uPWMpfTtmdW5jdGlvbiB5YyhhLGIpe3Rocm93IEVycm9yKGI9PT12b2lkIDA/InVuZXhwZWN0ZWQgdmFsdWUgIithKyIhIjpiKTt9O3ZhciB6Yz1mdW5jdGlvbihhKXt0aGlzLkg9YX07emMucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCsiIn07dmFyIEJjPWZ1bmN0aW9uKCl7dGhpcy5IPUFjWzBdLnRvTG93ZXJDYXNlKCl9O0JjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLkh9O2Z1bmN0aW9uIENjKGEsYil7dmFyIGM9W25ldyBCY107aWYoYy5sZW5ndGg9PT0wKXRocm93IEVycm9yKCIiKTt2YXIgZD1jLm1hcChmdW5jdGlvbihmKXt2YXIgZztpZihmIGluc3RhbmNlb2YgQmMpZz1mLkg7ZWxzZSB0aHJvdyBFcnJvcigiIik7cmV0dXJuIGd9KSxlPWIudG9Mb3dlckNhc2UoKTtpZihkLmV2ZXJ5KGZ1bmN0aW9uKGYpe3JldHVybiBlLmluZGV4T2YoZikhPT0wfSkpdGhyb3cgRXJyb3IoJ0F0dHJpYnV0ZSAiJytiKyciIGRvZXMgbm90IG1hdGNoIGFueSBvZiB0aGUgYWxsb3dlZCBwcmVmaXhlcy4nKTthLnNldEF0dHJpYnV0ZShiLCJ0cnVlIil9O3ZhciBEYz1BcnJheS5wcm90b3R5cGUuaW5kZXhPZj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIHR5cGVvZiBiIT09InN0cmluZyJ8fGIubGVuZ3RoIT0xPy0xOmEuaW5kZXhPZihiLDApO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGMgaW4gYSYmYVtjXT09PWIpcmV0dXJuIGM7cmV0dXJuLTF9OyJBUlRJQ0xFIFNFQ1RJT04gTkFWIEFTSURFIEgxIEgyIEgzIEg0IEg1IEg2IEhFQURFUiBGT09URVIgQUREUkVTUyBQIEhSIFBSRSBCTE9DS1FVT1RFIE9MIFVMIExIIExJIERMIERUIEREIEZJR1VSRSBGSUdDQVBUSU9OIE1BSU4gRElWIEVNIFNUUk9ORyBTTUFMTCBTIENJVEUgUSBERk4gQUJCUiBSVUJZIFJCIFJUIFJUQyBSUCBEQVRBIFRJTUUgQ09ERSBWQVIgU0FNUCBLQkQgU1VCIFNVUCBJIEIgVSBNQVJLIEJESSBCRE8gU1BBTiBCUiBXQlIgTk9CUiBJTlMgREVMIFBJQ1RVUkUgUEFSQU0gVFJBQ0sgTUFQIFRBQkxFIENBUFRJT04gQ09MR1JPVVAgQ09MIFRCT0RZIFRIRUFEIFRGT09UIFRSIFREIFRIIFNFTEVDVCBEQVRBTElTVCBPUFRHUk9VUCBPUFRJT04gT1VUUFVUIFBST0dSRVNTIE1FVEVSIEZJRUxEU0VUIExFR0VORCBERVRBSUxTIFNVTU1BUlkgTUVOVSBESUFMT0cgU0xPVCBDQU5WQVMgRk9OVCBDRU5URVIgQUNST05ZTSBCQVNFRk9OVCBCSUcgRElSIEhHUk9VUCBTVFJJS0UgVFQiLnNwbGl0KCIgIikuY29uY2F0KFsiQlVUVE9OIiwKIklOUFVUIl0pO2Z1bmN0aW9uIEVjKGEpe3JldHVybiBhPT09bnVsbD8ibnVsbCI6YT09PXZvaWQgMD8idW5kZWZpbmVkIjphfTt2YXIgQT13aW5kb3csRmM9W10sR2M9d2luZG93Lmhpc3RvcnksQj1kb2N1bWVudCxIYz1uYXZpZ2F0b3I7ZnVuY3Rpb24gSWMoKXt2YXIgYTt0cnl7YT1IYy5zZXJ2aWNlV29ya2VyfWNhdGNoKGIpe3JldHVybn1yZXR1cm4gYX12YXIgSmM9Qi5jdXJyZW50U2NyaXB0LEtjPUpjJiZKYy5zcmM7ZnVuY3Rpb24gTWMoYSxiKXt2YXIgYz1BLGQ9Y1thXTtjW2FdPWQ9PT12b2lkIDA/YjpkO3JldHVybiBjW2FdfWZ1bmN0aW9uIE5jKGEpe3JldHVybihIYy51c2VyQWdlbnR8fCIiKS5pbmRleE9mKGEpIT09LTF9ZnVuY3Rpb24gT2MoKXtyZXR1cm4gTmMoIkZpcmVmb3giKXx8TmMoIkZ4aU9TIil9ZnVuY3Rpb24gUGMoKXtyZXR1cm4oTmMoIkdTQSIpfHxOYygiR29vZ2xlQXBwIikpJiYoTmMoImlQaG9uZSIpfHxOYygiaVBhZCIpKX1mdW5jdGlvbiBRYygpe3JldHVybiBOYygiRWRnLyIpfHxOYygiRWRnQS8iKXx8TmMoIkVkZ2lPUy8iKX0KdmFyIFJjPXthc3luYzoxLG5vbmNlOjEsb25lcnJvcjoxLG9ubG9hZDoxLHNyYzoxLHR5cGU6MX0sU2M9e2hlaWdodDoxLG9ubG9hZDoxLHNyYzoxLHN0eWxlOjEsd2lkdGg6MX07ZnVuY3Rpb24gVGMoYSxiLGMpe2ImJkdiKGIsZnVuY3Rpb24oZCxlKXtkPWQudG9Mb3dlckNhc2UoKTtjLmhhc093blByb3BlcnR5KGQpfHxhLnNldEF0dHJpYnV0ZShkLGUpfSl9CmZ1bmN0aW9uIFVjKGEsYixjLGQsZSl7dmFyIGY9Qi5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtUYyhmLGQsUmMpO2YudHlwZT0idGV4dC9qYXZhc2NyaXB0IjtmLmFzeW5jPWQmJmQuYXN5bmM9PT0hMT8hMTohMDt2YXIgZztnPWpjKEVjKGEpKTtmLnNyYz1rYyhnKTt2YXIgaCxsPWYub3duZXJEb2N1bWVudDtsPWw9PT12b2lkIDA/ZG9jdW1lbnQ6bDt2YXIgbixwLHE9KHA9KG49bCkucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOnAuY2FsbChuLCJzY3JpcHRbbm9uY2VdIik7KGg9cT09bnVsbD8iIjpxLm5vbmNlfHxxLmdldEF0dHJpYnV0ZSgibm9uY2UiKXx8IiIpJiZmLnNldEF0dHJpYnV0ZSgibm9uY2UiLGgpO2ImJihmLm9ubG9hZD1iKTtjJiYoZi5vbmVycm9yPWMpO2U/ZS5hcHBlbmRDaGlsZChmKTpWYy5CcyhmKTtyZXR1cm4gZn0KZnVuY3Rpb24gV2MoKXtpZihLYyl7dmFyIGE9S2MudG9Mb3dlckNhc2UoKTtpZihhLmluZGV4T2YoImh0dHBzOi8vIik9PT0wKXJldHVybiAyO2lmKGEuaW5kZXhPZigiaHR0cDovLyIpPT09MClyZXR1cm4gM31yZXR1cm4gMX1mdW5jdGlvbiBYYyhhLGIsYyxkLGUsZil7Zj1mPT09dm9pZCAwPyEwOmY7dmFyIGc9ZSxoPSExO2d8fChnPUIuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksaD0hMCk7VGMoZyxjLFNjKTtkJiZHYihkLGZ1bmN0aW9uKG4scCl7Zy5kYXRhc2V0W25dPXB9KTtmJiYoZy5oZWlnaHQ9IjAiLGcud2lkdGg9IjAiLGcuc3R5bGUuZGlzcGxheT0ibm9uZSIsZy5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iKTthIT09dm9pZCAwJiYoZy5zcmM9YSk7aWYoaCl7dmFyIGw9Qi5ib2R5JiZCLmJvZHkubGFzdENoaWxkfHxCLmJvZHl8fEIuaGVhZDtsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGcsbCl9YiYmKGcub25sb2FkPWIpO3JldHVybiBnfQpmdW5jdGlvbiBaYygpe3JldHVybiBWYy5Fci5hcHBseShWYyx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfWZ1bmN0aW9uICRjKGEsYixjLGQpe2EuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKGIsYywhIWQpfWZ1bmN0aW9uIGFkKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMsITEpfWZ1bmN0aW9uIGJkKGEpe0Euc2V0VGltZW91dChhLDApfWZ1bmN0aW9uIGNkKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpLGQsZT0oZD1BKS5zZXRJbnRlcnZhbC5hcHBseShkLFthLGJdLmNvbmNhdCh3KGMpKSk7RmMucHVzaChlKTtyZXR1cm4gZX0KZnVuY3Rpb24gZGQoYSl7dmFyIGI9QTt5YihiLnF1ZXVlTWljcm90YXNrKT9iLnF1ZXVlTWljcm90YXNrKGEpOnliKGIuUHJvbWlzZSkmJmIuUHJvbWlzZS5yZXNvbHZlP2IuUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe2EoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk6YmQoYSl9ZnVuY3Rpb24gZWQoYSxiKXtyZXR1cm4gYSYmYiYmYS5hdHRyaWJ1dGVzJiZhLmF0dHJpYnV0ZXNbYl0/YS5hdHRyaWJ1dGVzW2JdLnZhbHVlOm51bGx9ZnVuY3Rpb24gZmQoYSl7dmFyIGI9YS5pbm5lclRleHR8fGEudGV4dENvbnRlbnR8fCIiO2ImJmIhPT0iICImJihiPWIucmVwbGFjZSgvXltcc1x4YTBdKy9nLCIiKSxiPWIucmVwbGFjZSgvW1xzXHhhMF0rJC9nLCIiKSk7YiYmKGI9Yi5yZXBsYWNlKC8oXHhhMCt8XHN7Mix9fFxufFxyXHQpL2csIiAiKSk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGdkKGEpe3ZhciBiPUIuY3JlYXRlRWxlbWVudCgiZGl2IiksYz1iLGQsZT1FYygiQTxkaXY+IithKyI8L2Rpdj4iKSxmPWhjKCksZz1mP2YuY3JlYXRlSFRNTChlKTplO2Q9bmV3IHpjKGcpO2lmKGMubm9kZVR5cGU9PT0xJiYvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYy50YWdOYW1lKSl0aHJvdyBFcnJvcigiIik7dmFyIGg7aWYoZCBpbnN0YW5jZW9mIHpjKWg9ZC5IO2Vsc2UgdGhyb3cgRXJyb3IoIiIpO2MuaW5uZXJIVE1MPWg7Yj1iLmxhc3RDaGlsZDtmb3IodmFyIGw9W107YiYmYi5maXJzdENoaWxkOylsLnB1c2goYi5yZW1vdmVDaGlsZChiLmZpcnN0Q2hpbGQpKTtyZXR1cm4gbH0KZnVuY3Rpb24gaGQoYSxiLGMpe2M9Y3x8MTAwO2Zvcih2YXIgZD17fSxlPTA7ZTxiLmxlbmd0aDtlKyspZFtiW2VdXT0hMDtmb3IodmFyIGY9YSxnPTA7ZiYmZzw9YztnKyspe2lmKGRbU3RyaW5nKGYudGFnTmFtZSkudG9Mb3dlckNhc2UoKV0pcmV0dXJuIGY7Zj1mLnBhcmVudEVsZW1lbnR9cmV0dXJuIG51bGx9ZnVuY3Rpb24gaWQoYSxiLGMpe3ZhciBkO3RyeXtkPUhjLnNlbmRCZWFjb24mJkhjLnNlbmRCZWFjb24oYSl9Y2F0Y2goZSl7c2IoIlRBR0dJTkciLDE1KX1kP2I9PW51bGx8fGIoKTpaYyhhLGIsYyl9ZnVuY3Rpb24gamQoYSxiKXt0cnl7aWYoSGMuc2VuZEJlYWNvbiE9PXZvaWQgMClyZXR1cm4gSGMuc2VuZEJlYWNvbihhLGIpfWNhdGNoKGMpe3NiKCJUQUdHSU5HIiwxNSl9cmV0dXJuITF9ZnVuY3Rpb24ga2QoKXtyZXR1cm4gSGMuc2VuZEJlYWNvbiE9PXZvaWQgMH0KdmFyIGxkPXtjYWNoZToibm8tc3RvcmUiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixrZWVwYWxpdmU6ITAsbWV0aG9kOiJQT1NUIixtb2RlOiJuby1jb3JzIixyZWRpcmVjdDoiZm9sbG93In07CmZ1bmN0aW9uIG1kKGEsYixjLGQsZSl7aWYobmQoKSl7dmFyIGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxsZCk7YiYmKGYuYm9keT1iKTtjJiYoYy5hdHRyaWJ1dGlvblJlcG9ydGluZyYmKGYuYXR0cmlidXRpb25SZXBvcnRpbmc9Yy5hdHRyaWJ1dGlvblJlcG9ydGluZyksYy5icm93c2luZ1RvcGljcyE9PXZvaWQgMCYmKGYuYnJvd3NpbmdUb3BpY3M9Yy5icm93c2luZ1RvcGljcyksYy5jcmVkZW50aWFscyYmKGYuY3JlZGVudGlhbHM9Yy5jcmVkZW50aWFscyksYy5rZWVwYWxpdmUhPT12b2lkIDAmJihmLmtlZXBhbGl2ZT1jLmtlZXBhbGl2ZSksYy5tZXRob2QmJihmLm1ldGhvZD1jLm1ldGhvZCksYy5tb2RlJiYoZi5tb2RlPWMubW9kZSkpO3RyeXt2YXIgZz1BLmZldGNoKGEsZik7aWYoZylyZXR1cm4gZy50aGVuKGZ1bmN0aW9uKGwpe2wmJihsLm9rfHxsLnN0YXR1cz09PTApP2Q9PW51bGx8fGQoKTplPT1udWxsfHxlKCl9KS5jYXRjaChmdW5jdGlvbigpe2U9PQpudWxsfHxlKCl9KSwhMH1jYXRjaChsKXt9fWlmKChjPT1udWxsPzA6Yy5RZyl8fChjPT1udWxsPzA6Yy5jcmVkZW50aWFscykmJmMuY3JlZGVudGlhbHMhPT0iaW5jbHVkZSIpcmV0dXJuIGU9PW51bGx8fGUoKSwhMTtpZihiKXt2YXIgaD1qZChhLGIpO2g/ZD09bnVsbHx8ZCgpOmU9PW51bGx8fGUoKTtyZXR1cm4gaH1WYy53dChhLGQsZSk7cmV0dXJuITB9ZnVuY3Rpb24gbmQoKXtyZXR1cm4geWIoQS5mZXRjaCl9ZnVuY3Rpb24gb2QoYSxiKXt2YXIgYz1hW2JdO2MmJnR5cGVvZiBjLmFuaW1WYWw9PT0ic3RyaW5nIiYmKGM9Yy5hbmltVmFsKTtyZXR1cm4gY31mdW5jdGlvbiBwZCgpe3ZhciBhPUEucGVyZm9ybWFuY2U7aWYoYSYmeWIoYS5ub3cpKXJldHVybiBhLm5vdygpfQpmdW5jdGlvbiBxZCgpe3ZhciBhLGI9QS5wZXJmb3JtYW5jZTtpZihiJiZiLmdldEVudHJpZXNCeVR5cGUpdHJ5e3ZhciBjPWIuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpO2MmJmMubGVuZ3RoPjAmJihhPWNbMF0udHlwZSl9Y2F0Y2goZCl7cmV0dXJuImUifWlmKCFhKXJldHVybiJ1Ijtzd2l0Y2goYSl7Y2FzZSAibmF2aWdhdGUiOnJldHVybiJuIjtjYXNlICJiYWNrX2ZvcndhcmQiOnJldHVybiJoIjtjYXNlICJyZWxvYWQiOnJldHVybiJyIjtjYXNlICJwcmVyZW5kZXIiOnJldHVybiJwIjtkZWZhdWx0OnJldHVybiJ4In19ZnVuY3Rpb24gcmQoKXtyZXR1cm4gQS5wZXJmb3JtYW5jZXx8dm9pZCAwfWZ1bmN0aW9uIHNkKCl7dmFyIGE9QS53ZWJQaXhlbHNNYW5hZ2VyO3JldHVybiBhP2EuY3JlYXRlU2hvcGlmeUV4dGVuZCE9PXZvaWQgMDohMX0KdmFyIFZjPXtFcjpmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1uZXcgSW1hZ2UoMSwxKTtUYyhlLGQse30pO2Uub25sb2FkPWZ1bmN0aW9uKCl7ZS5vbmxvYWQ9bnVsbDtiJiZiKCl9O2Uub25lcnJvcj1mdW5jdGlvbigpe2Uub25lcnJvcj1udWxsO2MmJmMoKX07ZS5zcmM9YTtyZXR1cm4gZX0sQnM6ZnVuY3Rpb24oYSl7dmFyIGI9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF18fEIuYm9keXx8Qi5oZWFkO2IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSxiKX0sd3Q6aWR9O2Z1bmN0aW9uIHRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdWQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKT09PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gdmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiB3ZChhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO3JldHVybiBTdHJpbmcoYykuaW5kZXhPZihTdHJpbmcoZCkpPi0xfWZ1bmN0aW9uIHhkKGEsYil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYSkpLGQ9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYikpO3JldHVybiBjLnN1YnN0cmluZygwLGQubGVuZ3RoKT09PWR9CmZ1bmN0aW9uIHlkKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYik7c3dpdGNoKGMpe2Nhc2UgInBhZ2VMb2NhdGlvbiI6dmFyIGU9QS5sb2NhdGlvbi5ocmVmO2QgaW5zdGFuY2VvZiBrYiYmZC5nZXQoInN0cmlwUHJvdG9jb2wiKSYmKGU9ZS5yZXBsYWNlKC9eaHR0cHM/OlwvXC8vLCIiKSk7cmV0dXJuIGV9fTsvKgogalF1ZXJ5IChjKSAyMDA1LCAyMDEyIGpRdWVyeSBGb3VuZGF0aW9uLCBJbmMuIGpxdWVyeS5vcmcvbGljZW5zZS4KKi8KdmFyIHpkPS9cW29iamVjdCAoQm9vbGVhbnxOdW1iZXJ8U3RyaW5nfEZ1bmN0aW9ufEFycmF5fERhdGV8UmVnRXhwKVxdLyxBZD1mdW5jdGlvbihhKXtpZihhPT1udWxsKXJldHVybiBTdHJpbmcoYSk7dmFyIGI9emQuZXhlYyhPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoT2JqZWN0KGEpKSk7cmV0dXJuIGI/YlsxXS50b0xvd2VyQ2FzZSgpOiJvYmplY3QifSxCZD1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoT2JqZWN0KGEpLGIpfSxDZD1mdW5jdGlvbihhKXtpZighYXx8QWQoYSkhPSJvYmplY3QifHxhLm5vZGVUeXBlfHxhPT1hLndpbmRvdylyZXR1cm4hMTt0cnl7aWYoYS5jb25zdHJ1Y3RvciYmIUJkKGEsImNvbnN0cnVjdG9yIikmJiFCZChhLmNvbnN0cnVjdG9yLnByb3RvdHlwZSwiaXNQcm90b3R5cGVPZiIpKXJldHVybiExfWNhdGNoKGMpe3JldHVybiExfWZvcih2YXIgYiBpbiBhKTtyZXR1cm4gYj09PXZvaWQgMHx8CkJkKGEsYil9LEVkPWZ1bmN0aW9uKGEsYil7dmFyIGM9Ynx8KEFkKGEpPT0iYXJyYXkiP1tdOnt9KSxkO2ZvcihkIGluIGEpaWYoQmQoYSxkKSl7dmFyIGU9YVtkXTtBZChlKT09ImFycmF5Ij8oQWQoY1tkXSkhPSJhcnJheSImJihjW2RdPVtdKSxjW2RdPUVkKGUsY1tkXSkpOkNkKGUpPyhDZChjW2RdKXx8KGNbZF09e30pLGNbZF09RWQoZSxjW2RdKSk6Y1tkXT1lfXJldHVybiBjfTtmdW5jdGlvbiBGZChhKXtyZXR1cm4gdHlwZW9mIGE9PT0ibnVtYmVyIiYmYT49MCYmaXNGaW5pdGUoYSkmJmElMT09PTB8fHR5cGVvZiBhPT09InN0cmluZyImJmFbMF0hPT0iLSImJmE9PT0iIitwYXJzZUludChhKX07dmFyIEdkPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphO3RoaXMubGE9bmV3IFVhO3RoaXMudmFsdWVzPVtdO3RoaXMuTmE9ITE7Zm9yKHZhciBiIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShiKSYmKEZkKGIpP3RoaXMudmFsdWVzW051bWJlcihiKV09YVtOdW1iZXIoYildOnRoaXMubGEuc2V0KGIsYVtiXSkpfTtrPUdkLnByb3RvdHlwZTtrLnRvU3RyaW5nPWZ1bmN0aW9uKGEpe2lmKGEmJmEuaW5kZXhPZih0aGlzKT49MClyZXR1cm4iIjtmb3IodmFyIGI9W10sYz0wO2M8dGhpcy52YWx1ZXMubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy52YWx1ZXNbY107ZD09PW51bGx8fGQ9PT12b2lkIDA/Yi5wdXNoKCIiKTpkIGluc3RhbmNlb2YgR2Q/KGE9YXx8W10sYS5wdXNoKHRoaXMpLGIucHVzaChkLnRvU3RyaW5nKGEpKSxhLnBvcCgpKTpiLnB1c2goU3RyaW5nKGQpKX1yZXR1cm4gYi5qb2luKCIsIil9OwprLnNldD1mdW5jdGlvbihhLGIpe2lmKCF0aGlzLk5hKWlmKGE9PT0ibGVuZ3RoIil7aWYoIUZkKGIpKXRocm93IGNiKEVycm9yKCJSYW5nZUVycm9yOiBMZW5ndGggcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGludGVnZXIuIikpO3RoaXMudmFsdWVzLmxlbmd0aD1OdW1iZXIoYil9ZWxzZSBGZChhKT90aGlzLnZhbHVlc1tOdW1iZXIoYSldPWI6dGhpcy5sYS5zZXQoYSxiKX07ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT0ibGVuZ3RoIj90aGlzLmxlbmd0aCgpOkZkKGEpP3RoaXMudmFsdWVzW051bWJlcihhKV06dGhpcy5sYS5nZXQoYSl9O2subGVuZ3RoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLmxlbmd0aH07ay5GYT1mdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmxhLkZhKCksYj0wO2I8dGhpcy52YWx1ZXMubGVuZ3RoO2IrKyl0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShiKSYmYS5wdXNoKFN0cmluZyhiKSk7cmV0dXJuIGF9OwprLmhjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuaGMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2godGhpcy52YWx1ZXNbYl0pO3JldHVybiBhfTtrLmZjPWZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMubGEuZmMoKSxiPTA7Yjx0aGlzLnZhbHVlcy5sZW5ndGg7YisrKXRoaXMudmFsdWVzLmhhc093blByb3BlcnR5KGIpJiZhLnB1c2goW1N0cmluZyhiKSx0aGlzLnZhbHVlc1tiXV0pO3JldHVybiBhfTtrLnJlbW92ZT1mdW5jdGlvbihhKXtGZChhKT9kZWxldGUgdGhpcy52YWx1ZXNbTnVtYmVyKGEpXTp0aGlzLk5hfHx0aGlzLmxhLnJlbW92ZShhKX07ay5wb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMucG9wKCl9O2sucHVzaD1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlcy5wdXNoLmFwcGx5KHRoaXMudmFsdWVzLHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSl9O2suc2hpZnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZXMuc2hpZnQoKX07Cmsuc3BsaWNlPWZ1bmN0aW9uKGEsYil7dmFyIGM9T2EuYXBwbHkoMixhcmd1bWVudHMpO3JldHVybiBiPT09dm9pZCAwJiZjLmxlbmd0aD09PTA/bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZShhKSk6bmV3IEdkKHRoaXMudmFsdWVzLnNwbGljZS5hcHBseSh0aGlzLnZhbHVlcyxbYSxifHwwXS5jb25jYXQodyhjKSkpKX07ay51bnNoaWZ0PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWVzLnVuc2hpZnQuYXBwbHkodGhpcy52YWx1ZXMsdyhPYS5hcHBseSgwLGFyZ3VtZW50cykpKX07ay5oYXM9ZnVuY3Rpb24oYSl7cmV0dXJuIEZkKGEpJiZ0aGlzLnZhbHVlcy5oYXNPd25Qcm9wZXJ0eShhKXx8dGhpcy5sYS5oYXMoYSl9O2suWmE9ZnVuY3Rpb24oKXt0aGlzLk5hPSEwO09iamVjdC5mcmVlemUodGhpcy52YWx1ZXMpfTtrLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9OwpmdW5jdGlvbiBIZChhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGgoKTtjKyspYS5oYXMoYykmJihiW2NdPWEuZ2V0KGMpKTtyZXR1cm4gYn07dmFyIElkPWZ1bmN0aW9uKGEsYil7dGhpcy5mdW5jdGlvbk5hbWU9YTt0aGlzLmllPWI7dGhpcy5sYT1uZXcgVWE7dGhpcy5OYT0hMX07az1JZC5wcm90b3R5cGU7ay50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmZ1bmN0aW9uTmFtZX07ay5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZnVuY3Rpb25OYW1lfTtrLmdldEtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEdkKHRoaXMuRmEoKSl9O2suaW52b2tlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmllLmNhbGwuYXBwbHkodGhpcy5pZSxbbmV3IEpkKHRoaXMsYSldLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKX07ay5hcHBseT1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmllLmFwcGx5KG5ldyBKZCh0aGlzLGEpLGIpfTtrLk5jPWZ1bmN0aW9uKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTt0cnl7cmV0dXJuIHRoaXMuaW52b2tlLmFwcGx5KHRoaXMsW2FdLmNvbmNhdCh3KGIpKSl9Y2F0Y2goYyl7fX07CmsuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmdldChhKX07ay5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLk5hfHx0aGlzLmxhLnNldChhLGIpfTtrLmhhcz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5sYS5oYXMoYSl9O2sucmVtb3ZlPWZ1bmN0aW9uKGEpe3RoaXMuTmF8fHRoaXMubGEucmVtb3ZlKGEpfTtrLkZhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuRmEoKX07ay5oYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmhjKCl9O2suZmM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5mYygpfTtrLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07ay5IYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk5hfTt2YXIgS2Q9ZnVuY3Rpb24oYSxiKXtJZC5jYWxsKHRoaXMsYSxiKX07d2EoS2QsSWQpO3ZhciBMZD1mdW5jdGlvbihhLGIpe0lkLmNhbGwodGhpcyxhLGIpfTt3YShMZCxJZCk7dmFyIEpkPWZ1bmN0aW9uKGEsYil7dGhpcy5pZT1hO3RoaXMuVD1ifTsKSmQucHJvdG90eXBlLmV2YWx1YXRlPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuVDtyZXR1cm4gQXJyYXkuaXNBcnJheShhKT9mYihiLGEpOmF9O0pkLnByb3RvdHlwZS5nZXROYW1lPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWUuZ2V0TmFtZSgpfTtKZC5wcm90b3R5cGUuamU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ULmplKCl9O3ZhciBNZD1mdW5jdGlvbigpe3RoaXMubWFwPW5ldyBNYXB9O01kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLm1hcC5zZXQoYSxiKX07TWQucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5tYXAuZ2V0KGEpfTt2YXIgTmQ9ZnVuY3Rpb24oKXt0aGlzLmtleXM9W107dGhpcy52YWx1ZXM9W119O05kLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmtleXMucHVzaChhKTt0aGlzLnZhbHVlcy5wdXNoKGIpfTtOZC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMua2V5cy5pbmRleE9mKGEpO2lmKGI+LTEpcmV0dXJuIHRoaXMudmFsdWVzW2JdfTtmdW5jdGlvbiBPZCgpe3RyeXtyZXR1cm4gTWFwP25ldyBNZDpuZXcgTmR9Y2F0Y2goYSl7cmV0dXJuIG5ldyBOZH19O3ZhciBQZD1mdW5jdGlvbihhKXtpZihhIGluc3RhbmNlb2YgUGQpcmV0dXJuIGE7dmFyIGI7YTppZihhPT12b2lkIDB8fEFycmF5LmlzQXJyYXkoYSl8fENkKGEpKWI9ITA7ZWxzZXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgImJvb2xlYW4iOmNhc2UgIm51bWJlciI6Y2FzZSAic3RyaW5nIjpjYXNlICJmdW5jdGlvbiI6Yj0hMDticmVhayBhfWI9ITF9aWYoYil0aHJvdyBFcnJvcigiVHlwZSBvZiBnaXZlbiB2YWx1ZSBoYXMgYW4gZXF1aXZhbGVudCBQaXhpZSB0eXBlLiIpO3RoaXMudmFsdWU9YX07UGQucHJvdG90eXBlLmdldFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O1BkLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcodGhpcy52YWx1ZSl9O3ZhciBTZD1mdW5jdGlvbihhKXt0aGlzLnByb21pc2U9YTt0aGlzLk5hPSExO3RoaXMubGE9bmV3IFVhO3RoaXMubGEuc2V0KCJ0aGVuIixSZCh0aGlzKSk7dGhpcy5sYS5zZXQoImNhdGNoIixSZCh0aGlzLCEwKSk7dGhpcy5sYS5zZXQoImZpbmFsbHkiLFJkKHRoaXMsITEsITApKX07az1TZC5wcm90b3R5cGU7ay5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMubGEuZ2V0KGEpfTtrLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTmF8fHRoaXMubGEuc2V0KGEsYil9O2suaGFzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmxhLmhhcyhhKX07ay5yZW1vdmU9ZnVuY3Rpb24oYSl7dGhpcy5OYXx8dGhpcy5sYS5yZW1vdmUoYSl9O2suRmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5sYS5GYSgpfTtrLmhjPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGEuaGMoKX07ay5mYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmxhLmZjKCl9Owp2YXIgUmQ9ZnVuY3Rpb24oYSxiLGMpe2I9Yj09PXZvaWQgMD8hMTpiO2M9Yz09PXZvaWQgMD8hMTpjO3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oZCxlKXtiJiYoZT1kLGQ9dm9pZCAwKTtjJiYoZT1kKTtkIGluc3RhbmNlb2YgS2R8fChkPXZvaWQgMCk7ZSBpbnN0YW5jZW9mIEtkfHwoZT12b2lkIDApO3ZhciBmPXRoaXMuVC53YigpLGc9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RyeXtyZXR1cm4gYz8obC5pbnZva2UoZiksYS5wcm9taXNlKTpsLmludm9rZShmLG4pfWNhdGNoKHApe3JldHVybiBQcm9taXNlLnJlamVjdChwIGluc3RhbmNlb2YgRXJyb3I/bmV3IFBkKHApOlN0cmluZyhwKSl9fX0saD1hLnByb21pc2UudGhlbihkJiZnKGQpLGUmJmcoZSkpO3JldHVybiBuZXcgU2QoaCl9KX07U2QucHJvdG90eXBlLlphPWZ1bmN0aW9uKCl7dGhpcy5OYT0hMH07U2QucHJvdG90eXBlLkhiPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuTmF9O2Z1bmN0aW9uIFRkKGEsYixjKXt2YXIgZD1PZCgpLGU9ZnVuY3Rpb24oZyxoKXtmb3IodmFyIGw9Zy5GYSgpLG49MDtuPGwubGVuZ3RoO24rKyloW2xbbl1dPWYoZy5nZXQobFtuXSkpfSxmPWZ1bmN0aW9uKGcpe2lmKGc9PT1udWxsfHxnPT09dm9pZCAwKXJldHVybiBnO3ZhciBoPWQuZ2V0KGcpO2lmKGgpcmV0dXJuIGg7aWYoZyBpbnN0YW5jZW9mIEdkKXt2YXIgbD1bXTtkLnNldChnLGwpO2Zvcih2YXIgbj1nLkZhKCkscD0wO3A8bi5sZW5ndGg7cCsrKWxbbltwXV09ZihnLmdldChuW3BdKSk7cmV0dXJuIGx9aWYoZyBpbnN0YW5jZW9mIFNkKXJldHVybiBnLnByb21pc2UudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gVGQodSxiLDEpfSxmdW5jdGlvbih1KXtyZXR1cm4gUHJvbWlzZS5yZWplY3QoVGQodSxiLDEpKX0pO2lmKGcgaW5zdGFuY2VvZiBrYil7dmFyIHE9e307ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9aWYoZyBpbnN0YW5jZW9mIEtkKXt2YXIgcj1mdW5jdGlvbigpe2Zvcih2YXIgdT0KW10sdj0wO3Y8YXJndW1lbnRzLmxlbmd0aDt2KyspdVt2XT1VZChhcmd1bWVudHNbdl0sYixjKTt2YXIgeD1uZXcgaGIoYj9iLmplKCk6bmV3IFdhKTtiJiZ4LnVlKGIueGIoKSk7cmV0dXJuIGYoZy5hcHBseSh4LHUpKX07ZC5zZXQoZyxyKTtlKGcscik7cmV0dXJuIHJ9dmFyIHQ9ITE7c3dpdGNoKGMpe2Nhc2UgMTp0PSEwO2JyZWFrO2Nhc2UgMjp0PSExO2JyZWFrO2Nhc2UgMzp0PSExO2JyZWFrO2RlZmF1bHQ6fWlmKGcgaW5zdGFuY2VvZiBQZCYmdClyZXR1cm4gZy5nZXRWYWx1ZSgpO3N3aXRjaCh0eXBlb2YgZyl7Y2FzZSAiYm9vbGVhbiI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmNhc2UgInVuZGVmaW5lZCI6cmV0dXJuIGc7Y2FzZSAib2JqZWN0IjppZihnPT09Cm51bGwpcmV0dXJuIG51bGx9fTtyZXR1cm4gZihhKX0KZnVuY3Rpb24gVWQoYSxiLGMpe3ZhciBkPU9kKCksZT1mdW5jdGlvbihnLGgpe2Zvcih2YXIgbCBpbiBnKWcuaGFzT3duUHJvcGVydHkobCkmJmguc2V0KGwsZihnW2xdKSl9LGY9ZnVuY3Rpb24oZyl7dmFyIGg9ZC5nZXQoZyk7aWYoaClyZXR1cm4gaDtpZihBcnJheS5pc0FycmF5KGcpfHxIYihnKSl7dmFyIGw9bmV3IEdkO2Quc2V0KGcsbCk7Zm9yKHZhciBuIGluIGcpZy5oYXNPd25Qcm9wZXJ0eShuKSYmbC5zZXQobixmKGdbbl0pKTtyZXR1cm4gbH1pZihDZChnKSl7dmFyIHA9bmV3IGtiO2Quc2V0KGcscCk7ZShnLHApO3JldHVybiBwfWlmKHR5cGVvZiBnPT09ImZ1bmN0aW9uIil7dmFyIHE9bmV3IEtkKCIiLGZ1bmN0aW9uKCl7Zm9yKHZhciB1PU9hLmFwcGx5KDAsYXJndW1lbnRzKSx2PVtdLHg9MDt4PHUubGVuZ3RoO3grKyl2W3hdPVRkKHRoaXMuZXZhbHVhdGUodVt4XSksYixjKTtyZXR1cm4gZih0aGlzLlQuUGooKShnLGcsdikpfSk7ZC5zZXQoZyxxKTtlKGcscSk7cmV0dXJuIHF9dmFyIHI9dHlwZW9mIGc7aWYoZz09PW51bGx8fHI9PT0ic3RyaW5nInx8cj09PSJudW1iZXIifHxyPT09ImJvb2xlYW4iKXJldHVybiBnO3ZhciB0PSExO3N3aXRjaChjKXtjYXNlIDE6dD0hMDticmVhaztjYXNlIDI6dD0hMTticmVhaztkZWZhdWx0On1pZihnIT09dm9pZCAwJiZ0KXJldHVybiBuZXcgUGQoZyl9O3JldHVybiBmKGEpfTt2YXIgVmQ9e3N1cHBvcnRlZE1ldGhvZHM6ImNvbmNhdCBldmVyeSBmaWx0ZXIgZm9yRWFjaCBoYXNPd25Qcm9wZXJ0eSBpbmRleE9mIGpvaW4gbGFzdEluZGV4T2YgbWFwIHBvcCBwdXNoIHJlZHVjZSByZWR1Y2VSaWdodCByZXZlcnNlIHNoaWZ0IHNsaWNlIHNvbWUgc29ydCBzcGxpY2UgdW5zaGlmdCB0b1N0cmluZyIuc3BsaXQoIiAiKSxjb25jYXQ6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPVtdLGM9MDtjPHRoaXMubGVuZ3RoKCk7YysrKWIucHVzaCh0aGlzLmdldChjKSk7Zm9yKHZhciBkPTE7ZDxhcmd1bWVudHMubGVuZ3RoO2QrKylpZihhcmd1bWVudHNbZF1pbnN0YW5jZW9mIEdkKWZvcih2YXIgZT1hcmd1bWVudHNbZF0sZj0wO2Y8ZS5sZW5ndGgoKTtmKyspYi5wdXNoKGUuZ2V0KGYpKTtlbHNlIGIucHVzaChhcmd1bWVudHNbZF0pO3JldHVybiBuZXcgR2QoYil9LGV2ZXJ5OmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD0wO2Q8dGhpcy5sZW5ndGgoKSYmCmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJiFiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcykpcmV0dXJuITE7cmV0dXJuITB9LGZpbHRlcjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9W10sZT0wO2U8dGhpcy5sZW5ndGgoKSYmZTxjO2UrKyl0aGlzLmhhcyhlKSYmYi5pbnZva2UoYSx0aGlzLmdldChlKSxlLHRoaXMpJiZkLnB1c2godGhpcy5nZXQoZSkpO3JldHVybiBuZXcgR2QoZCl9LGZvckVhY2g6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9dGhpcy5sZW5ndGgoKSxkPTA7ZDx0aGlzLmxlbmd0aCgpJiZkPGM7ZCsrKXRoaXMuaGFzKGQpJiZiLmludm9rZShhLHRoaXMuZ2V0KGQpLGQsdGhpcyl9LGhhc093blByb3BlcnR5OmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaGFzKGIpfSxpbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9Yz09PXZvaWQgMD8wOk51bWJlcihjKTtlPDAmJihlPU1hdGgubWF4KGQrZSwwKSk7Zm9yKHZhciBmPQplO2Y8ZDtmKyspaWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sam9pbjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDx0aGlzLmxlbmd0aCgpO2QrKyljLnB1c2godGhpcy5nZXQoZCkpO3JldHVybiBjLmpvaW4oYil9LGxhc3RJbmRleE9mOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGU9ZC0xO2MhPT12b2lkIDAmJihlPWM8MD9kK2M6TWF0aC5taW4oYyxlKSk7Zm9yKHZhciBmPWU7Zj49MDtmLS0paWYodGhpcy5oYXMoZikmJnRoaXMuZ2V0KGYpPT09YilyZXR1cm4gZjtyZXR1cm4tMX0sbWFwOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPXRoaXMubGVuZ3RoKCksZD1bXSxlPTA7ZTx0aGlzLmxlbmd0aCgpJiZlPGM7ZSsrKXRoaXMuaGFzKGUpJiYoZFtlXT1iLmludm9rZShhLHRoaXMuZ2V0KGUpLGUsdGhpcykpO3JldHVybiBuZXcgR2QoZCl9LHBvcDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnBvcCgpfSxwdXNoOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnB1c2guYXBwbHkodGhpcywKdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX0scmVkdWNlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLmxlbmd0aCgpLGUsZj0wO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlIG9uIExpc3Qgd2l0aCBubyBlbGVtZW50cy4iKSk7Zm9yKHZhciBnPTA7ZzxkO2crKylpZih0aGlzLmhhcyhnKSl7ZT10aGlzLmdldChnKTtmPWcrMTticmVha31pZihnPT09ZCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBSZWR1Y2Ugb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aDxkO2grKyl0aGlzLmhhcyhoKSYmKGU9Yi5pbnZva2UoYSxlLHRoaXMuZ2V0KGgpLGgsdGhpcykpO3JldHVybiBlfSxyZWR1Y2VSaWdodDpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5sZW5ndGgoKSxlLGY9ZC0xO2lmKGMhPT12b2lkIDApZT1jO2Vsc2V7aWYoZD09PTApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTsKZm9yKHZhciBnPTE7Zzw9ZDtnKyspaWYodGhpcy5oYXMoZC1nKSl7ZT10aGlzLmdldChkLWcpO2Y9ZC0oZysxKTticmVha31pZihnPmQpdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogUmVkdWNlUmlnaHQgb24gTGlzdCB3aXRoIG5vIGVsZW1lbnRzLiIpKTt9Zm9yKHZhciBoPWY7aD49MDtoLS0pdGhpcy5oYXMoaCkmJihlPWIuaW52b2tlKGEsZSx0aGlzLmdldChoKSxoLHRoaXMpKTtyZXR1cm4gZX0scmV2ZXJzZTpmdW5jdGlvbigpe2Zvcih2YXIgYT1IZCh0aGlzKSxiPWEubGVuZ3RoLTEsYz0wO2I+PTA7Yi0tLGMrKylhLmhhc093blByb3BlcnR5KGIpP3RoaXMuc2V0KGMsYVtiXSk6dGhpcy5yZW1vdmUoYyk7cmV0dXJuIHRoaXN9LHNoaWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc2hpZnQoKX0sc2xpY2U6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMubGVuZ3RoKCk7Yj09PXZvaWQgMCYmKGI9MCk7Yj1iPDA/TWF0aC5tYXgoZCtiLDApOk1hdGgubWluKGIsZCk7Yz1jPT09CnZvaWQgMD9kOmM8MD9NYXRoLm1heChkK2MsMCk6TWF0aC5taW4oYyxkKTtjPU1hdGgubWF4KGIsYyk7Zm9yKHZhciBlPVtdLGY9YjtmPGM7ZisrKWUucHVzaCh0aGlzLmdldChmKSk7cmV0dXJuIG5ldyBHZChlKX0sc29tZTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLmxlbmd0aCgpLGQ9MDtkPHRoaXMubGVuZ3RoKCkmJmQ8YztkKyspaWYodGhpcy5oYXMoZCkmJmIuaW52b2tlKGEsdGhpcy5nZXQoZCksZCx0aGlzKSlyZXR1cm4hMDtyZXR1cm4hMX0sc29ydDpmdW5jdGlvbihhLGIpe3ZhciBjPUhkKHRoaXMpO2I9PT12b2lkIDA/Yy5zb3J0KCk6Yy5zb3J0KGZ1bmN0aW9uKGUsZil7cmV0dXJuIE51bWJlcihiLmludm9rZShhLGUsZikpfSk7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspYy5oYXNPd25Qcm9wZXJ0eShkKT90aGlzLnNldChkLGNbZF0pOnRoaXMucmVtb3ZlKGQpO3JldHVybiB0aGlzfSxzcGxpY2U6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB0aGlzLnNwbGljZS5hcHBseSh0aGlzLApbYixjXS5jb25jYXQodyhPYS5hcHBseSgzLGFyZ3VtZW50cykpKSl9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudG9TdHJpbmcoKX0sdW5zaGlmdDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy51bnNoaWZ0LmFwcGx5KHRoaXMsdyhPYS5hcHBseSgxLGFyZ3VtZW50cykpKX19O3ZhciBXZD17Y2hhckF0OjEsY29uY2F0OjEsaW5kZXhPZjoxLGxhc3RJbmRleE9mOjEsbWF0Y2g6MSxyZXBsYWNlOjEsc2VhcmNoOjEsc2xpY2U6MSxzcGxpdDoxLHN1YnN0cmluZzoxLHRvTG93ZXJDYXNlOjEsdG9Mb2NhbGVMb3dlckNhc2U6MSx0b1N0cmluZzoxLHRvVXBwZXJDYXNlOjEsdG9Mb2NhbGVVcHBlckNhc2U6MSx0cmltOjF9LFhkPW5ldyBUYSgiYnJlYWsiKSxZZD1uZXcgVGEoImNvbnRpbnVlIik7ZnVuY3Rpb24gWmQoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSt0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uICRkKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkmJnRoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyk7aWYoIShmIGluc3RhbmNlb2YgR2QpKXRocm93IEVycm9yKCJFcnJvcjogTm9uLUxpc3QgYXJndW1lbnQgZ2l2ZW4gdG8gQXBwbHkgaW5zdHJ1Y3Rpb24uIik7aWYoZD09PW51bGx8fGQ9PT12b2lkIDApdGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogQ2FuJ3QgcmVhZCBwcm9wZXJ0eSAiK2UrIiBvZiAiK2QrIi4iKSk7dmFyIGc9dHlwZW9mIGQ9PT0ibnVtYmVyIjtpZih0eXBlb2YgZD09PSJib29sZWFuInx8Zyl7aWYoZT09PSJ0b1N0cmluZyIpe2lmKGcmJmYubGVuZ3RoKCkpe3ZhciBoPVRkKGYuZ2V0KDApKTt0cnl7cmV0dXJuIGQudG9TdHJpbmcoaCl9Y2F0Y2godSl7fX1yZXR1cm4gZC50b1N0cmluZygpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZCsiLiIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uLiIpKTt9aWYodHlwZW9mIGQ9PT0KInN0cmluZyIpe2lmKFdkLmhhc093blByb3BlcnR5KGUpKXt2YXIgbD1UZChmLHZvaWQgMCwxKTtyZXR1cm4gVWQoZFtlXS5hcHBseShkLGwpLHRoaXMuVCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKGQgaW5zdGFuY2VvZiBHZCl7aWYoZC5oYXMoZSkpe3ZhciBuPWQuZ2V0KFN0cmluZyhlKSk7aWYobiBpbnN0YW5jZW9mIEtkKXt2YXIgcD1IZChmKTtyZXR1cm4gbi5hcHBseSh0aGlzLlQscCl9dGhyb3cgY2IoRXJyb3IoIlR5cGVFcnJvcjogIitlKyIgaXMgbm90IGEgZnVuY3Rpb24iKSk7fWlmKFZkLnN1cHBvcnRlZE1ldGhvZHMuaW5kZXhPZihlKT49MCl7dmFyIHE9SGQoZik7cmV0dXJuIFZkW2VdLmNhbGwuYXBwbHkoVmRbZV0sW2QsdGhpcy5UXS5jb25jYXQodyhxKSkpfX1pZihkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkKXtpZihkLmhhcyhlKSl7dmFyIHI9ZC5nZXQoZSk7CmlmKHIgaW5zdGFuY2VvZiBLZCl7dmFyIHQ9SGQoZik7cmV0dXJuIHIuYXBwbHkodGhpcy5ULHQpfXRocm93IGNiKEVycm9yKCJUeXBlRXJyb3I6ICIrZSsiIGlzIG5vdCBhIGZ1bmN0aW9uIikpO31pZihlPT09InRvU3RyaW5nIilyZXR1cm4gZCBpbnN0YW5jZW9mIEtkP2QuZ2V0TmFtZSgpOmQudG9TdHJpbmcoKTtpZihlPT09Imhhc093blByb3BlcnR5IilyZXR1cm4gZC5oYXMoZi5nZXQoMCkpfWlmKGQgaW5zdGFuY2VvZiBQZCYmZT09PSJ0b1N0cmluZyIpcmV0dXJuIGQudG9TdHJpbmcoKTt0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBPYmplY3QgaGFzIG5vICciK2UrIicgcHJvcGVydHkuIikpO30KZnVuY3Rpb24gYmUoYSxiKXthPXRoaXMuZXZhbHVhdGUoYSk7aWYodHlwZW9mIGEhPT0ic3RyaW5nIil0aHJvdyBFcnJvcigiSW52YWxpZCBrZXkgbmFtZSBnaXZlbiBmb3IgYXNzaWdubWVudC4iKTt2YXIgYz10aGlzLlQ7aWYoIWMuaGFzKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFzc2lnbiB0byB1bmRlZmluZWQgdmFsdWUgIitiKTt2YXIgZD10aGlzLmV2YWx1YXRlKGIpO2Muc2V0KGEsZCk7cmV0dXJuIGR9ZnVuY3Rpb24gY2UoKXt2YXIgYT1PYS5hcHBseSgwLGFyZ3VtZW50cyksYj10aGlzLlQud2IoKSxjPWViKGIsYSk7aWYoYyBpbnN0YW5jZW9mIFRhKXJldHVybiBjfWZ1bmN0aW9uIGRlKCl7cmV0dXJuIFhkfWZ1bmN0aW9uIGVlKGEpe2Zvcih2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShiW2NdKTtpZihkIGluc3RhbmNlb2YgVGEpcmV0dXJuIGR9fQpmdW5jdGlvbiBmZSgpe2Zvcih2YXIgYT10aGlzLlQsYj0wO2I8YXJndW1lbnRzLmxlbmd0aC0xO2IrPTIpe3ZhciBjPWFyZ3VtZW50c1tiXTtpZih0eXBlb2YgYz09PSJzdHJpbmciKXt2YXIgZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLlFoKGMsZCl9fX1mdW5jdGlvbiBnZSgpe3JldHVybiBZZH1mdW5jdGlvbiBoZShhLGIpe3JldHVybiBuZXcgVGEoYSx0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBpZShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2Q9bmV3IEdkO2Zvcih2YXIgZT10aGlzLmV2YWx1YXRlKGIpLGY9MDtmPGUubGVuZ3RoO2YrKylkLnB1c2goZVtmXSk7dmFyIGc9WzUxLGEsZF0uY29uY2F0KHcoYykpO3RoaXMuVC5hZGQoYSx0aGlzLmV2YWx1YXRlKGcpKX1mdW5jdGlvbiBqZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpL3RoaXMuZXZhbHVhdGUoYil9CmZ1bmN0aW9uIGtlKGEsYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShhKSxkPXRoaXMuZXZhbHVhdGUoYiksZT1jIGluc3RhbmNlb2YgUGQsZj1kIGluc3RhbmNlb2YgUGQ7cmV0dXJuIGV8fGY/ZSYmZj9jLmdldFZhbHVlKCk9PT1kLmdldFZhbHVlKCk6ITE6Yz09ZH1mdW5jdGlvbiBsZSgpe2Zvcih2YXIgYSxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKylhPXRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKTtyZXR1cm4gYX1mdW5jdGlvbiBtZShhLGIsYyxkKXtmb3IodmFyIGU9MDtlPGIoKTtlKyspe3ZhciBmPWEoYyhlKSksZz1lYihmLGQpO2lmKGcgaW5zdGFuY2VvZiBUYSl7aWYoZy50eXBlPT09ImJyZWFrIilicmVhaztpZihnLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gZ319fQpmdW5jdGlvbiBuZShhLGIsYyl7aWYodHlwZW9mIGI9PT0ic3RyaW5nIilyZXR1cm4gbWUoYSxmdW5jdGlvbigpe3JldHVybiBiLmxlbmd0aH0sZnVuY3Rpb24oZil7cmV0dXJuIGZ9LGMpO2lmKGIgaW5zdGFuY2VvZiBrYnx8YiBpbnN0YW5jZW9mIFNkfHxiIGluc3RhbmNlb2YgR2R8fGIgaW5zdGFuY2VvZiBLZCl7dmFyIGQ9Yi5GYSgpLGU9ZC5sZW5ndGg7cmV0dXJuIG1lKGEsZnVuY3Rpb24oKXtyZXR1cm4gZX0sZnVuY3Rpb24oZil7cmV0dXJuIGRbZl19LGMpfX1mdW5jdGlvbiBvZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXtnLnNldChkLGgpO3JldHVybiBnfSxlLGYpfQpmdW5jdGlvbiBwZShhLGIsYyl7dmFyIGQ9dGhpcy5ldmFsdWF0ZShhKSxlPXRoaXMuZXZhbHVhdGUoYiksZj10aGlzLmV2YWx1YXRlKGMpLGc9dGhpcy5UO3JldHVybiBuZShmdW5jdGlvbihoKXt2YXIgbD1nLndiKCk7bC5RaChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHFlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIG5lKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLmFkZChkLGgpO3JldHVybiBsfSxlLGYpfWZ1bmN0aW9uIHJlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe2cuc2V0KGQsaCk7cmV0dXJuIGd9LGUsZil9CmZ1bmN0aW9uIHRlKGEsYixjKXt2YXIgZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKSxmPXRoaXMuZXZhbHVhdGUoYyksZz10aGlzLlQ7cmV0dXJuIHNlKGZ1bmN0aW9uKGgpe3ZhciBsPWcud2IoKTtsLlFoKGQsaCk7cmV0dXJuIGx9LGUsZil9ZnVuY3Rpb24gdWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKSxnPXRoaXMuVDtyZXR1cm4gc2UoZnVuY3Rpb24oaCl7dmFyIGw9Zy53YigpO2wuYWRkKGQsaCk7cmV0dXJuIGx9LGUsZil9CmZ1bmN0aW9uIHNlKGEsYixjKXtpZih0eXBlb2YgYj09PSJzdHJpbmciKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RofSxmdW5jdGlvbihkKXtyZXR1cm4gYltkXX0sYyk7aWYoYiBpbnN0YW5jZW9mIEdkKXJldHVybiBtZShhLGZ1bmN0aW9uKCl7cmV0dXJuIGIubGVuZ3RoKCl9LGZ1bmN0aW9uKGQpe3JldHVybiBiLmdldChkKX0sYyk7dGhyb3cgY2IoRXJyb3IoIlRoZSB2YWx1ZSBpcyBub3QgaXRlcmFibGUuIikpO30KZnVuY3Rpb24gdmUoYSxiLGMsZCl7ZnVuY3Rpb24gZShxLHIpe2Zvcih2YXIgdD0wO3Q8Zi5sZW5ndGgoKTt0Kyspe3ZhciB1PWYuZ2V0KHQpO3IuYWRkKHUscS5nZXQodSkpfX12YXIgZj10aGlzLmV2YWx1YXRlKGEpO2lmKCEoZiBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiVHlwZUVycm9yOiBOb24tTGlzdCBhcmd1bWVudCBnaXZlbiB0byBGb3JMZXQgaW5zdHJ1Y3Rpb24uIik7dmFyIGc9dGhpcy5ULGg9dGhpcy5ldmFsdWF0ZShkKSxsPWcud2IoKTtmb3IoZShnLGwpO2ZiKGwsYik7KXt2YXIgbj1lYihsLGgpO2lmKG4gaW5zdGFuY2VvZiBUYSl7aWYobi50eXBlPT09ImJyZWFrIilicmVhaztpZihuLnR5cGU9PT0icmV0dXJuIilyZXR1cm4gbn12YXIgcD1nLndiKCk7ZShsLHApO2ZiKHAsYyk7bD1wfX0KZnVuY3Rpb24gd2UoYSxiKXt2YXIgYz1PYS5hcHBseSgyLGFyZ3VtZW50cyksZD10aGlzLlQsZT10aGlzLmV2YWx1YXRlKGIpO2lmKCEoZSBpbnN0YW5jZW9mIEdkKSl0aHJvdyBFcnJvcigiRXJyb3I6IG5vbi1MaXN0IHZhbHVlIGdpdmVuIGZvciBGbiBhcmd1bWVudCBuYW1lcy4iKTtyZXR1cm4gbmV3IEtkKGEsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz1kLndiKCk7Zy54YigpPT09dm9pZCAwJiZnLnVlKHRoaXMuVC54YigpKTtmb3IodmFyIGg9W10sbD0wO2w8Zi5sZW5ndGg7bCsrKXt2YXIgbj10aGlzLmV2YWx1YXRlKGZbbF0pO2hbbF09bn1mb3IodmFyIHA9ZS5nZXQoImxlbmd0aCIpLHE9MDtxPHA7cSsrKXE8aC5sZW5ndGg/Zy5hZGQoZS5nZXQocSksaFtxXSk6Zy5hZGQoZS5nZXQocSksdm9pZCAwKTtnLmFkZCgiYXJndW1lbnRzIixuZXcgR2QoaCkpO3ZhciByPWViKGcsYyk7aWYociBpbnN0YW5jZW9mIFRhKXJldHVybiByLnR5cGU9PT0KInJldHVybiI/ci5kYXRhOnJ9fSgpKX1mdW5jdGlvbiB4ZShhKXt2YXIgYj10aGlzLmV2YWx1YXRlKGEpLGM9dGhpcy5UO2lmKHllJiYhYy5oYXMoYikpdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKGIrIiBpcyBub3QgZGVmaW5lZC4iKTtyZXR1cm4gYy5nZXQoYil9CmZ1bmN0aW9uIHplKGEsYil7dmFyIGMsZD10aGlzLmV2YWx1YXRlKGEpLGU9dGhpcy5ldmFsdWF0ZShiKTtpZihkPT09dm9pZCAwfHxkPT09bnVsbCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW5ub3QgcmVhZCBwcm9wZXJ0aWVzIG9mICIrZCsiIChyZWFkaW5nICciK2UrIicpIikpO2lmKGQgaW5zdGFuY2VvZiBrYnx8ZCBpbnN0YW5jZW9mIFNkfHxkIGluc3RhbmNlb2YgR2R8fGQgaW5zdGFuY2VvZiBLZCljPWQuZ2V0KGUpO2Vsc2UgaWYodHlwZW9mIGQ9PT0ic3RyaW5nIillPT09Imxlbmd0aCI/Yz1kLmxlbmd0aDpGZChlKSYmKGM9ZFtlXSk7ZWxzZSBpZihkIGluc3RhbmNlb2YgUGQpcmV0dXJuO3JldHVybiBjfWZ1bmN0aW9uIEFlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk+dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBCZShhLGIpe3JldHVybiB0aGlzLmV2YWx1YXRlKGEpPj10aGlzLmV2YWx1YXRlKGIpfQpmdW5jdGlvbiBDZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSksZD10aGlzLmV2YWx1YXRlKGIpO2MgaW5zdGFuY2VvZiBQZCYmKGM9Yy5nZXRWYWx1ZSgpKTtkIGluc3RhbmNlb2YgUGQmJihkPWQuZ2V0VmFsdWUoKSk7cmV0dXJuIGM9PT1kfWZ1bmN0aW9uIERlKGEsYil7cmV0dXJuIUNlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIEVlKGEsYixjKXt2YXIgZD1bXTt0aGlzLmV2YWx1YXRlKGEpP2Q9dGhpcy5ldmFsdWF0ZShiKTpjJiYoZD10aGlzLmV2YWx1YXRlKGMpKTt2YXIgZT1lYih0aGlzLlQsZCk7aWYoZSBpbnN0YW5jZW9mIFRhKXJldHVybiBlfXZhciB5ZT0hMTsKZnVuY3Rpb24gRmUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKTx0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIEdlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk8PXRoaXMuZXZhbHVhdGUoYil9ZnVuY3Rpb24gSGUoKXtmb3IodmFyIGE9bmV3IEdkLGI9MDtiPGFyZ3VtZW50cy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiXSk7YS5wdXNoKGMpfXJldHVybiBhfWZ1bmN0aW9uIEllKCl7Zm9yKHZhciBhPW5ldyBrYixiPTA7Yjxhcmd1bWVudHMubGVuZ3RoLTE7Yis9Mil7dmFyIGM9U3RyaW5nKHRoaXMuZXZhbHVhdGUoYXJndW1lbnRzW2JdKSksZD10aGlzLmV2YWx1YXRlKGFyZ3VtZW50c1tiKzFdKTthLnNldChjLGQpfXJldHVybiBhfWZ1bmN0aW9uIEplKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSkldGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gS2UoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKSp0aGlzLmV2YWx1YXRlKGIpfWZ1bmN0aW9uIExlKGEpe3JldHVybi10aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE1lKGEpe3JldHVybiF0aGlzLmV2YWx1YXRlKGEpfWZ1bmN0aW9uIE5lKGEsYil7cmV0dXJuIWtlLmNhbGwodGhpcyxhLGIpfWZ1bmN0aW9uIE9lKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gUGUoYSxiKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKXx8dGhpcy5ldmFsdWF0ZShiKX1mdW5jdGlvbiBRZShhLGIpe3ZhciBjPXRoaXMuZXZhbHVhdGUoYSk7dGhpcy5ldmFsdWF0ZShiKTtyZXR1cm4gY31mdW5jdGlvbiBSZShhKXtyZXR1cm4gdGhpcy5ldmFsdWF0ZShhKX1mdW5jdGlvbiBTZSgpe3JldHVybiBPYS5hcHBseSgwLGFyZ3VtZW50cyl9ZnVuY3Rpb24gVGUoYSl7cmV0dXJuIG5ldyBUYSgicmV0dXJuIix0aGlzLmV2YWx1YXRlKGEpKX0KZnVuY3Rpb24gVWUoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZihkPT09bnVsbHx8ZD09PXZvaWQgMCl0aHJvdyBjYihFcnJvcigiVHlwZUVycm9yOiBDYW4ndCBzZXQgcHJvcGVydHkgIitlKyIgb2YgIitkKyIuIikpOyhkIGluc3RhbmNlb2YgS2R8fGQgaW5zdGFuY2VvZiBHZHx8ZCBpbnN0YW5jZW9mIGtiKSYmZC5zZXQoU3RyaW5nKGUpLGYpO3JldHVybiBmfWZ1bmN0aW9uIFZlKGEsYil7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSktdGhpcy5ldmFsdWF0ZShiKX0KZnVuY3Rpb24gV2UoYSxiLGMpe3ZhciBkPXRoaXMuZXZhbHVhdGUoYSksZT10aGlzLmV2YWx1YXRlKGIpLGY9dGhpcy5ldmFsdWF0ZShjKTtpZighQXJyYXkuaXNBcnJheShlKXx8IUFycmF5LmlzQXJyYXkoZikpdGhyb3cgRXJyb3IoIkVycm9yOiBNYWxmb3JtZWQgc3dpdGNoIGluc3RydWN0aW9uLiIpO2Zvcih2YXIgZyxoPSExLGw9MDtsPGUubGVuZ3RoO2wrKylpZihofHxkPT09dGhpcy5ldmFsdWF0ZShlW2xdKSlpZihnPXRoaXMuZXZhbHVhdGUoZltsXSksZyBpbnN0YW5jZW9mIFRhKXt2YXIgbj1nLnR5cGU7aWYobj09PSJicmVhayIpcmV0dXJuO2lmKG49PT0icmV0dXJuInx8bj09PSJjb250aW51ZSIpcmV0dXJuIGd9ZWxzZSBoPSEwO2lmKGYubGVuZ3RoPT09ZS5sZW5ndGgrMSYmKGc9dGhpcy5ldmFsdWF0ZShmW2YubGVuZ3RoLTFdKSxnIGluc3RhbmNlb2YgVGEmJihnLnR5cGU9PT0icmV0dXJuInx8Zy50eXBlPT09ImNvbnRpbnVlIikpKXJldHVybiBnfQpmdW5jdGlvbiBYZShhLGIsYyl7cmV0dXJuIHRoaXMuZXZhbHVhdGUoYSk/dGhpcy5ldmFsdWF0ZShiKTp0aGlzLmV2YWx1YXRlKGMpfWZ1bmN0aW9uIFllKGEpe3ZhciBiPXRoaXMuZXZhbHVhdGUoYSk7cmV0dXJuIGIgaW5zdGFuY2VvZiBLZD8iZnVuY3Rpb24iOnR5cGVvZiBifWZ1bmN0aW9uIFplKCl7Zm9yKHZhciBhPXRoaXMuVCxiPTA7Yjxhcmd1bWVudHMubGVuZ3RoO2IrKyl7dmFyIGM9YXJndW1lbnRzW2JdO3R5cGVvZiBjIT09InN0cmluZyJ8fGEuYWRkKGMsdm9pZCAwKX19CmZ1bmN0aW9uICRlKGEsYixjLGQpe3ZhciBlPXRoaXMuZXZhbHVhdGUoZCk7aWYodGhpcy5ldmFsdWF0ZShjKSl7dmFyIGY9ZWIodGhpcy5ULGUpO2lmKGYgaW5zdGFuY2VvZiBUYSl7aWYoZi50eXBlPT09ImJyZWFrIilyZXR1cm47aWYoZi50eXBlPT09InJldHVybiIpcmV0dXJuIGZ9fWZvcig7dGhpcy5ldmFsdWF0ZShhKTspe3ZhciBnPWViKHRoaXMuVCxlKTtpZihnIGluc3RhbmNlb2YgVGEpe2lmKGcudHlwZT09PSJicmVhayIpYnJlYWs7aWYoZy50eXBlPT09InJldHVybiIpcmV0dXJuIGd9dGhpcy5ldmFsdWF0ZShiKX19ZnVuY3Rpb24gYWYoYSl7cmV0dXJufk51bWJlcih0aGlzLmV2YWx1YXRlKGEpKX1mdW5jdGlvbiBiZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk8PE51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBjZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSk+Pk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX0KZnVuY3Rpb24gZGYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpPj4+TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGVmKGEsYil7cmV0dXJuIE51bWJlcih0aGlzLmV2YWx1YXRlKGEpKSZOdW1iZXIodGhpcy5ldmFsdWF0ZShiKSl9ZnVuY3Rpb24gZmYoYSxiKXtyZXR1cm4gTnVtYmVyKHRoaXMuZXZhbHVhdGUoYSkpXk51bWJlcih0aGlzLmV2YWx1YXRlKGIpKX1mdW5jdGlvbiBnZihhLGIpe3JldHVybiBOdW1iZXIodGhpcy5ldmFsdWF0ZShhKSl8TnVtYmVyKHRoaXMuZXZhbHVhdGUoYikpfWZ1bmN0aW9uIGhmKCl7fQpmdW5jdGlvbiBrZihhLGIsYyl7dHJ5e3ZhciBkPXRoaXMuZXZhbHVhdGUoYik7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfWNhdGNoKGgpe2lmKCEoaCBpbnN0YW5jZW9mIGJiJiZoLlNuKSl0aHJvdyBoO3ZhciBlPXRoaXMuVC53YigpO2EhPT0iIiYmKGggaW5zdGFuY2VvZiBiYiYmKGg9aC52byksZS5hZGQoYSxuZXcgUGQoaCkpKTt2YXIgZj10aGlzLmV2YWx1YXRlKGMpLGc9ZWIoZSxmKTtpZihnIGluc3RhbmNlb2YgVGEpcmV0dXJuIGd9fWZ1bmN0aW9uIGxmKGEsYil7dmFyIGMsZDt0cnl7ZD10aGlzLmV2YWx1YXRlKGEpfWNhdGNoKGYpe2lmKCEoZiBpbnN0YW5jZW9mIGJiJiZmLlNuKSl0aHJvdyBmO2M9Zn12YXIgZT10aGlzLmV2YWx1YXRlKGIpO2lmKGUgaW5zdGFuY2VvZiBUYSlyZXR1cm4gZTtpZihjKXRocm93IGM7aWYoZCBpbnN0YW5jZW9mIFRhKXJldHVybiBkfTt2YXIgbmY9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IGdiO21mKHRoaXMpfTtuZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5ILnJrKGEpfTt2YXIgbWY9ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYyxkKXt2YXIgZT1uZXcgTGQoU3RyaW5nKGMpLGQpO2UuWmEoKTt2YXIgZj1TdHJpbmcoYyk7YS5ILkguc2V0KGYsZSk7ZGIuc2V0KGYsZSl9O2IoIm1hcCIsSWUpO2IoImFuZCIsdGQpO2IoImNvbnRhaW5zIix3ZCk7YigiZXF1YWxzIix1ZCk7Yigib3IiLHZkKTtiKCJzdGFydHNXaXRoIix4ZCk7YigidmFyaWFibGUiLHlkKX07bmYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07dmFyIHBmPWZ1bmN0aW9uKCl7dGhpcy5LPSExO3RoaXMuSD1uZXcgZ2I7b2YodGhpcyk7dGhpcy5LPSEwfTtwZi5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXtyZXR1cm4gcWYodGhpcy5ILnJrKGEpKX07dmFyIHJmPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gcWYoYS5ILkpxKGIsYykpfTtwZi5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXt0aGlzLkguWmEoKX07CnZhciBvZj1mdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihjLGQpe3ZhciBlPVN0cmluZyhjKSxmPW5ldyBMZChlLGQpO2YuWmEoKTthLkguSC5zZXQoZSxmKTtkYi5zZXQoZSxmKX07YigwLFpkKTtiKDEsJGQpO2IoMixhZSk7YigzLGJlKTtiKDU2LGVmKTtiKDU3LGJmKTtiKDU4LGFmKTtiKDU5LGdmKTtiKDYwLGNmKTtiKDYxLGRmKTtiKDYyLGZmKTtiKDUzLGNlKTtiKDQsZGUpO2IoNSxlZSk7Yig2OCxrZik7Yig1MixmZSk7Yig2LGdlKTtiKDQ5LGhlKTtiKDcsSGUpO2IoOCxJZSk7Yig5LGVlKTtiKDUwLGllKTtiKDEwLGplKTtiKDEyLGtlKTtiKDEzLGxlKTtiKDY3LGxmKTtiKDUxLHdlKTtiKDQ3LG9lKTtiKDU0LHBlKTtiKDU1LHFlKTtiKDYzLHZlKTtiKDY0LHJlKTtiKDY1LHRlKTtiKDY2LHVlKTtiKDE1LHhlKTtiKDE2LHplKTtiKDE3LHplKTtiKDE4LEFlKTtiKDE5LEJlKTtiKDIwLENlKTtiKDIxLERlKTtiKDIyLEVlKTtiKDIzLEZlKTtiKDI0LEdlKTtiKDI1LEplKTtiKDI2LApLZSk7YigyNyxMZSk7YigyOCxNZSk7YigyOSxOZSk7Yig0NSxPZSk7YigzMCxQZSk7YigzMixRZSk7YigzMyxRZSk7YigzNCxSZSk7YigzNSxSZSk7Yig0NixTZSk7YigzNixUZSk7Yig0MyxVZSk7YigzNyxWZSk7YigzOCxXZSk7YigzOSxYZSk7Yig0MCxZZSk7Yig0NCxoZik7Yig0MSxaZSk7Yig0MiwkZSl9O3BmLnByb3RvdHlwZS5qZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguamUoKX07cGYucHJvdG90eXBlLlFiPWZ1bmN0aW9uKGEpe3RoaXMuSC5RYihhKX07cGYucHJvdG90eXBlLnNkPWZ1bmN0aW9uKGEpe3RoaXMuSC5zZChhKX07CmZ1bmN0aW9uIHFmKGEpe2lmKGEgaW5zdGFuY2VvZiBUYXx8YSBpbnN0YW5jZW9mIEtkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgUGR8fGE9PT1udWxsfHxhPT09dm9pZCAwfHx0eXBlb2YgYT09PSJzdHJpbmcifHx0eXBlb2YgYT09PSJudW1iZXIifHx0eXBlb2YgYT09PSJib29sZWFuIilyZXR1cm4gYX07dmFyIHNmPWZ1bmN0aW9uKGEpe3RoaXMubWVzc2FnZT1hfTtmdW5jdGlvbiB0ZihhKXthLnF2PSEwO3JldHVybiBhfTt2YXIgdWY9dGYoZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09Im51bWJlciJ9KSx2Zj10ZihmdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT0ic3RyaW5nIn0pLHdmPXRmKGZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn0pO2Z1bmN0aW9uIHhmKGEpe3ZhciBiPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIlthXTtyZXR1cm4gYj09PXZvaWQgMD9uZXcgc2YoIlZhbHVlICIrYSsiIGNhbiBub3QgYmUgZW5jb2RlZCBpbiB3ZWItc2FmZSBiYXNlNjQgZGljdGlvbmFyeS4iKTpifTtmdW5jdGlvbiB5ZihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiIxIjtjYXNlIDI6Y2FzZSA0OnJldHVybiIwIjtkZWZhdWx0OnJldHVybiItIn19O3ZhciB6Zj0vXlsxLTlhLXpBLVpfLV1bMS05YS1jXVsxLTlhLXZdXGQkLztmdW5jdGlvbiBBZihhLGIpe2Zvcih2YXIgYz0iIixkPSEwO2E+Nzspe3ZhciBlPWEmMzE7YT4+PTU7ZD9kPSExOmV8PTMyO2M9IiIreGYoZSkrY31hPDw9MjtkfHwoYXw9MzIpO3JldHVybiBjPSIiK3hmKGF8YikrY31mdW5jdGlvbiBCZihhLGIpe3JldHVybiBiPT09dm9pZCAwfHxiPT09MD8iIjoiIitBZihhLDEpK3hmKGIpfQpmdW5jdGlvbiBDZihhLGIpe3ZhciBjO3ZhciBkPWEuaGksZT1hLmJrO2Q9PT12b2lkIDA/Yz0iIjooZXx8KGU9MCksYz0iIitBZigxLDEpK3hmKGQ8PDJ8ZSkpO3ZhciBmPSI0IitjK0JmKDIsYS5xciksZyxoPWEuSW87Zz1oJiZ6Zi50ZXN0KGgpPyIiK0FmKDMsMikraDoiIjt2YXIgbDt2YXIgbj1hLmN0aWQ7aWYobiYmYil7dmFyIHA9QWYoNSwzKSxxPW4uc3BsaXQoIi0iKSxyPXFbMF0udG9VcHBlckNhc2UoKTtpZihyIT09IkdUTSImJnIhPT0iT1BUIilsPSIiO2Vsc2V7dmFyIHQ9cVsxXTtsPSIiK3AreGYoMSt0Lmxlbmd0aCkrKGEuTHN8fDApK3R9fWVsc2UgbD0iIjt2YXIgdT1hLmNhbm9uaWNhbElkLHY9YS5tYyx4PWEuenYseT1mK2crQmYoNCxhLkRvKStsK0JmKDYsYS5EdCkrKHU/IiIrQWYoNywzKSt4Zih1Lmxlbmd0aCkrdToiIikrKHY/IiIrQWYoOCwzKSt4Zih2Lmxlbmd0aCkrdjoiIikrKHg/IiIrQWYoOSwzKSt4Zih4Lmxlbmd0aCkreDoiIiksejt2YXIgQz1hLnpyO0M9CkM9PT12b2lkIDA/e306Qztmb3IodmFyIEQ9W10sST1tKE9iamVjdC5rZXlzKEMpKSxHPUkubmV4dCgpOyFHLmRvbmU7Rz1JLm5leHQoKSl7dmFyIE49Ry52YWx1ZTtEW051bWJlcihOKV09Q1tOXX1pZihELmxlbmd0aCl7dmFyIFM9QWYoMTAsMyksVztpZihELmxlbmd0aD09PTApVz14ZigwKTtlbHNle2Zvcih2YXIgZWE9W10samE9MCxmYT0hMSxzYT0wO3NhPEQubGVuZ3RoO3NhKyspe2ZhPSEwO3ZhciBkYT1zYSU2O0Rbc2FdJiYoamF8PTE8PGRhKTtkYT09PTUmJihlYS5wdXNoKHhmKGphKSksamE9MCxmYT0hMSl9ZmEmJmVhLnB1c2goeGYoamEpKTtXPWVhLmpvaW4oIiIpfXZhciBtYT1XO3o9IiIrUyt4ZihtYS5sZW5ndGgpK21hfWVsc2Ugej0iIjt2YXIgUGE9YS5VcyxGYT1hLm50O3JldHVybiB5K3orKFBhPyIiK0FmKDExLDMpK3hmKFBhLmxlbmd0aCkrUGE6IiIpKyhGYT8iIitBZigxMywzKSt4ZihGYS5sZW5ndGgpK0ZhOiIiKStCZigxNCxhLkV0KStCZigxNSxhLnJ2KStCZigxNiwKYS5Bdil9O2Z1bmN0aW9uIERmKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZTwxMjg/YltjKytdPWU6KGU8MjA0OD9iW2MrK109ZT4+NnwxOTI6KChlJjY0NTEyKT09NTUyOTYmJmQrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChkKzEpJjY0NTEyKT09NTYzMjA/KGU9NjU1MzYrKChlJjEwMjMpPDwxMCkrKGEuY2hhckNvZGVBdCgrK2QpJjEwMjMpLGJbYysrXT1lPj4xOHwyNDAsYltjKytdPWU+PjEyJjYzfDEyOCk6YltjKytdPWU+PjEyfDIyNCxiW2MrK109ZT4+NiY2M3wxMjgpLGJbYysrXT1lJjYzfDEyOCl9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVmKGEsYil7Zm9yKHZhciBjPXFiKGIpLGQ9bmV3IFVpbnQ4QXJyYXkoYy5sZW5ndGgpLGU9MDtlPGMubGVuZ3RoO2UrKylkW2VdPWMuY2hhckNvZGVBdChlKTtpZihkLmxlbmd0aCE9PTMyKXRocm93IEVycm9yKCJLZXkgaXMgbm90IDMyIGJ5dGVzLiIpO3JldHVybiBGZihhLGQpfWZ1bmN0aW9uIEZmKGEsYil7aWYoYT09PSIiKXJldHVybiIiO3ZhciBjPVpiKGEpLGQ9Yi5zbGljZSgtMiksZT1bXS5jb25jYXQodyhkKSx3KGMpKS5tYXAoZnVuY3Rpb24oZyxoKXtyZXR1cm4gZ15iW2glYi5sZW5ndGhdfSksZj1uZXcgVWludDhBcnJheShbXS5jb25jYXQodyhlKSx3KGQpKSk7cmV0dXJuIHBiKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLHcoZikpKS5yZXBsYWNlKC9cLiskLywiIil9O3ZhciBHZj1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYil7cmV0dXJue3RvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9fX1yZXR1cm57Y3A6YSgiY29uc2VudCIpLFprOmEoImNvbnZlcnRfY2FzZV90byIpLGFsOmEoImNvbnZlcnRfZmFsc2VfdG8iKSxibDphKCJjb252ZXJ0X251bGxfdG8iKSxlcDphKCJjb252ZXJ0X3RvX2Jvb2xlYW4iKSxhaDphKCJjb252ZXJ0X3RvX251bWJlciIpLGZsOmEoImNvbnZlcnRfdHJ1ZV90byIpLGlsOmEoImNvbnZlcnRfdW5kZWZpbmVkX3RvIiksWXQ6YSgiZGVidWdfbW9kZV9tZXRhZGF0YSIpLFliOmEoImZ1bmN0aW9uIiksUm06YSgiaW5zdGFuY2VfbmFtZSIpLE5xOmEoImxpdmVfb25seSIpLE9xOmEoIm1hbHdhcmVfZGlzYWJsZWQiKSxNRVRBREFUQTphKCJtZXRhZGF0YSIpLFJxOmEoIm9yaWdpbmFsX2FjdGl2aXR5X2lkIiksVHU6YSgib3JpZ2luYWxfdmVuZG9yX3RlbXBsYXRlX2lkIiksU3U6YSgib25jZV9vbl9sb2FkIiksUXE6YSgib25jZV9wZXJfZXZlbnQiKSwKa246YSgib25jZV9wZXJfbG9hZCIpLFZ1OmEoInByaW9yaXR5X292ZXJyaWRlIiksWXU6YSgicmVzcGVjdGVkX2NvbnNlbnRfdHlwZXMiKSx0bjphKCJzZXR1cF90YWdzIikseWo6YSgidGFnX2lkIiksRG46YSgidGVhcmRvd25fdGFncyIpLHBsOmEoImRpc2FibGVkX2luX2dvb2dsZV9tb2RlIiksRnE6YSgiZ2VuZXJhdGVkX3RhZ2dpbmdfbWV0YWRhdGEiKX19KCk7ZnVuY3Rpb24gSGYoYSxiKXt2YXIgYz17fTtjW0dmLlliXT0iX18iK2E7Zm9yKHZhciBkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbInZ0cF8iK2RdPWJbZF0pO3JldHVybiBjfTtmdW5jdGlvbiBJZihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjLGQ7cmV0dXJuKChjPWRhdGEpPT1udWxsPzA6KGQ9Yy5ibG9iKT09bnVsbD8wOmQuaGFzT3duUHJvcGVydHkoYSkpPyEhZGF0YS5ibG9iW2FdOmJ9ZnVuY3Rpb24gRShhKXt2YXIgYjtiPWI9PT12b2lkIDA/IiI6Yjt2YXIgYyxkO3JldHVybigoYz1kYXRhKT09bnVsbD8wOihkPWMuYmxvYik9PW51bGw/MDpkLmhhc093blByb3BlcnR5KGEpKT9TdHJpbmcoZGF0YS5ibG9iW2FdKTpifWZ1bmN0aW9uIEpmKGEpe3ZhciBiLGM7cmV0dXJuKChiPWRhdGEpPT1udWxsPzA6KGM9Yi5ibG9iKT09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihkYXRhLmJsb2JbYV0pOjB9ZnVuY3Rpb24gS2YoYSl7dmFyIGI7Yj1iPT09dm9pZCAwP1tdOmI7dmFyIGMsZCxlPShjPWRhdGEpPT1udWxsP3ZvaWQgMDooZD1jLmJsb2IpPT1udWxsP3ZvaWQgMDpkW2FdO3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6Yn0KZnVuY3Rpb24gTGYoYSl7dmFyIGI7Yj1iPT09dm9pZCAwPyIiOmI7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP1N0cmluZyhjW2FdKTpifWZ1bmN0aW9uIE5mKGEsYil7dmFyIGM9TWYoNDYpO3JldHVybiBjJiYoYz09bnVsbD8wOmMuaGFzT3duUHJvcGVydHkoYSkpP051bWJlcihjW2FdKTpifWZ1bmN0aW9uIE1mKGEpe3ZhciBiLGM7cmV0dXJuKGI9ZGF0YSk9PW51bGw/dm9pZCAwOihjPWIuYmxvYik9PW51bGw/dm9pZCAwOmNbYV19O3ZhciBPZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7ZD1FcnJvci5jYWxsKHRoaXMsYyk7dGhpcy5tZXNzYWdlPWQubWVzc2FnZTsic3RhY2siaW4gZCYmKHRoaXMuc3RhY2s9ZC5zdGFjayk7dGhpcy5wZXJtaXNzaW9uSWQ9YTt0aGlzLnBhcmFtZXRlcnM9Yjt0aGlzLm5hbWU9IlBlcm1pc3Npb25FcnJvciJ9O3dhKE9mLEVycm9yKTtPZi5wcm90b3R5cGUuZ2V0TWVzc2FnZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1lc3NhZ2V9O2Z1bmN0aW9uIFBmKGEsYil7aWYoQXJyYXkuaXNBcnJheShhKSl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGEsImNvbnRleHQiLHt2YWx1ZTp7bGluZTpiWzBdfX0pO2Zvcih2YXIgYz0xO2M8YS5sZW5ndGg7YysrKVBmKGFbY10sYltjXSl9fTtmdW5jdGlvbiBRZigpe3JldHVybiBmdW5jdGlvbihhLGIpe3ZhciBjO3ZhciBkPVJmO2EgaW5zdGFuY2VvZiBiYj8oYS5IPWQsYz1hKTpjPW5ldyBiYihhLGQpO3ZhciBlPWM7YiYmZS5LLnB1c2goYik7dGhyb3cgZTt9fWZ1bmN0aW9uIFJmKGEpe2lmKCFhLmxlbmd0aClyZXR1cm4gYTthLnB1c2goe2lkOiJtYWluIixsaW5lOjB9KTtmb3IodmFyIGI9YS5sZW5ndGgtMTtiPjA7Yi0tKUFiKGFbYl0uaWQpJiZhLnNwbGljZShiKyssMSk7Zm9yKHZhciBjPWEubGVuZ3RoLTE7Yz4wO2MtLSlhW2NdLmxpbmU9YVtjLTFdLmxpbmU7YS5zcGxpY2UoMCwxKTtyZXR1cm4gYX07dmFyIFNmPVJlZ0V4cCgiW14wLTlcXC4rLV0iLCJnIiksVGY9UmVnRXhwKCJbXjAtOVxcLCstXSIsImciKSxVZj1SZWdFeHAoIlteMC05Ky1dIiwiZyIpOwpmdW5jdGlvbiBWZihhLGIpe2lmKHR5cGVvZiBhPT09Im51bWJlciIpcmV0dXJuIGE7dmFyIGM9U3RyaW5nKGEpLGQ7aWYoYj09PSJBVVRPTUFUSUMiKXt2YXIgZT0oYy5tYXRjaCgvXC4vZyl8fFtdKS5sZW5ndGgsZj0oYy5tYXRjaCgvLC9nKXx8W10pLmxlbmd0aCxnPSJOT05FIjtpZihlPjAmJmY+MCl7dmFyIGg9Yy5sYXN0SW5kZXhPZigiLiIpPmMubGFzdEluZGV4T2YoIiwiKTtoJiZlPT09MT9nPSJQRVJJT0QiOmh8fGYhPT0xfHwoZz0iQ09NTUEiKX1lbHNlIGU9PT0xP2c9KGMuc3BsaXQoIi4iKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJQRVJJT0QiOiJOT05FIjpmPT09MSYmKGc9KGMuc3BsaXQoIiwiKVsxXS5tYXRjaCgvWzAtOV0vZyl8fFtdKS5sZW5ndGghPT0zPyJDT01NQSI6Ik5PTkUiKTtkPWd9ZWxzZSBkPWI9PT0iQ09NTUEiPyJDT01NQSI6IlBFUklPRCI7dmFyIGwsbjtkPT09IlBFUklPRCI/KGw9Ii4iLG49U2YpOmQ9PT0iQ09NTUEiPyhsPSIsIiwKbj1UZik6KGw9IiIsbj1VZik7dmFyIHA9Yy5yZXBsYWNlKG4sIiIpO2lmKGwhPT0iIiYmcC5zcGxpdChsKS5sZW5ndGg+MilyZXR1cm4gYTt2YXIgcT1wLnJlcGxhY2UoLywvZywiLiIpO2lmKHE9PT0iIilyZXR1cm4gYTt2YXIgcj1OdW1iZXIocSk7cmV0dXJuIGlzTmFOKHIpP2E6cn07dmFyIFdmPVtdLFhmPXt9O2Z1bmN0aW9uIFlmKGEpe3JldHVybiBXZlthXT09PXZvaWQgMD8hMTpXZlthXX07dmFyIFpmPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSwkZj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7KGQ9YS5IKVtiXSE9bnVsbHx8KGRbYl09W10pO2EuSFtiXS5wdXNoKGZ1bmN0aW9uKCl7cmV0dXJuIGMuYXBwbHkobnVsbCx3KE9hLmFwcGx5KDAsYXJndW1lbnRzKSkpfSl9O2Z1bmN0aW9uIGFnKGEsYixjLGQpe2lmKGEpZm9yKHZhciBlPTA7ZTxhLmxlbmd0aDtlKyspe3ZhciBmPXZvaWQgMCxnPSJBIHBvbGljeSBmdW5jdGlvbiBkZW5pZWQgdGhlIHBlcm1pc3Npb24gcmVxdWVzdCI7dHJ5e2Y9YVtlXShiLGMsZCksZys9Ii4ifWNhdGNoKGgpe2c9dHlwZW9mIGg9PT0ic3RyaW5nIj9nKygiOiAiK2gpOmggaW5zdGFuY2VvZiBFcnJvcj9nKygiOiAiK2gubWVzc2FnZSk6ZysiLiJ9aWYoIWYpdGhyb3cgbmV3IE9mKGMsZCxnKTt9fQpmdW5jdGlvbiBiZyhhLGIpe3ZhciBjPWNnKGRnLkgsYixmdW5jdGlvbigpe3JldHVybnt9fSk7dHJ5e3JldHVybiBjKGEpLCEwfWNhdGNoKGQpe3JldHVybiExfX1mdW5jdGlvbiBjZyhhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe2lmKGQpe3ZhciBlPWEuSFtkXSxmPWEuSC5hbGw7aWYoZXx8Zil7dmFyIGc9Yy5hcHBseSh2b2lkIDAsW2RdLmNvbmNhdCh3KE9hLmFwcGx5KDEsYXJndW1lbnRzKSkpKTthZyhlLGIsZCxnKTthZyhmLGIsZCxnKX19fX07dmFyIGdnPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSz17fTt0aGlzLkg9bmV3IFpmO3ZhciBlPXt9LGY9e30sZz1jZyh0aGlzLkgsYSxmdW5jdGlvbihoKXtyZXR1cm4gaCYmZVtoXT9lW2hdLmFwcGx5KHZvaWQgMCxbaF0uY29uY2F0KHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSkpOnt9fSk7R2IoYixmdW5jdGlvbihoLGwpe2Z1bmN0aW9uIG4ocSl7dmFyIHI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKCFwW3FdKXRocm93IGVnKHEse30sIlRoZSByZXF1ZXN0ZWQgYWRkaXRpb25hbCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO2cuYXBwbHkobnVsbCxbcV0uY29uY2F0KHcocikpKX12YXIgcD17fTtHYihsLGZ1bmN0aW9uKHEscil7dmFyIHQ9ZmcocSxyLGMpO3BbcV09dC5hc3NlcnQ7ZVtxXXx8KGVbcV09dC5hYSk7dC5PbiYmIWZbcV0mJihmW3FdPXQuT24pfSk7ZC5LW2hdPWZ1bmN0aW9uKHEscil7dmFyIHQ9cFtxXTtpZighdCl0aHJvdyBlZyhxLAp7fSwiVGhlIHJlcXVlc3RlZCBwZXJtaXNzaW9uICIrcSsiIGlzIG5vdCBjb25maWd1cmVkLiIpO3ZhciB1PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTt0LmFwcGx5KHZvaWQgMCx1KTtnLmFwcGx5KHZvaWQgMCx1KTt2YXIgdj1mW3FdO3YmJnYuYXBwbHkobnVsbCxbbl0uY29uY2F0KHcodS5zbGljZSgxKSkpKX19KX0saGc9ZnVuY3Rpb24oYSl7cmV0dXJuIGRnLktbYV18fGZ1bmN0aW9uKCl7fX07CmZ1bmN0aW9uIGZnKGEsYixjKXt0cnl7dmFyIGQ9Y1siX18iK2FdO2lmKCFkKXRocm93IEVycm9yKCJObyBmdW5jdGlvbiBmb3VuZCBmb3IgcGVybWlzc2lvbjogIithKyIuIik7dmFyIGU9SGYoYSxiKTtlLnZ0cF9wZXJtaXNzaW9uTmFtZT1hO2UudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcj1lZztkZWxldGUgZVtHZi5ZYl07cmV0dXJuIGQoZSl9Y2F0Y2goZil7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihnKXt0aHJvdyBuZXcgT2YoZyx7fSwiUGVybWlzc2lvbiAiK2crIiBpcyB1bmtub3duLiIpO30sYWE6ZnVuY3Rpb24oKXt0aHJvdyBuZXcgT2YoYSx7fSwiUGVybWlzc2lvbiAiK2ErIiBpcyB1bmtub3duLiIpO319fX1mdW5jdGlvbiBlZyhhLGIsYyl7cmV0dXJuIG5ldyBPZihhLGIsYyl9O3ZhciBpZz1FKDUpLGpnPUUoMjApLGtnPUUoMSksbGc9ITE7dmFyIG1nPXt9O21nLlBvPUlmKDI5KTttZy5Lcj1JZigyOCk7ZnVuY3Rpb24gbmcoYSl7dmFyIGI9MSxjLGQsZTtpZihhKWZvcihiPTAsZD1hLmxlbmd0aC0xO2Q+PTA7ZC0tKWU9YS5jaGFyQ29kZUF0KGQpLGI9KGI8PDYmMjY4NDM1NDU1KStlKyhlPDwxNCksYz1iJjI2NjMzODMwNCxiPWMhPT0wP2JeYz4+MjE6YjtyZXR1cm4gYn07dmFyIG9nPWZ1bmN0aW9uKGEpe3RoaXMuY2FjaGU9YX07b2cucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXt2YXIgYj1uZyhhKSxjPXRoaXMuY2FjaGUuZ2V0KGIpO2lmKCFjKXJldHVybntwcm9taXNlOnZvaWQgMCxLajowfTtpZihEYXRlLm5vdygpPj1jLnRpbWVzdGFtcCs5RTUpcmV0dXJuIHRoaXMuY2FjaGUuZGVsZXRlKGIpLHtwcm9taXNlOnZvaWQgMCxLajozfTt2YXIgZD1jLnJlc29sdmVkVmFsdWU/MjoxO3JldHVybntwcm9taXNlOmMucmVzb2x2ZWRWYWx1ZT9Qcm9taXNlLnJlc29sdmUoYy5yZXNvbHZlZFZhbHVlKTpjLnByb21pc2UsS2o6ZH19O29nLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz17cHJvbWlzZTpiLHJlc29sdmVkVmFsdWU6dm9pZCAwLHRpbWVzdGFtcDpEYXRlLm5vdygpfTt0aGlzLmNhY2hlLnNldChuZyhhKSxjKTtiLnRoZW4oZnVuY3Rpb24oZCl7Yy5yZXNvbHZlZFZhbHVlPWR9KX07ZnVuY3Rpb24gcGcoYSl7c3dpdGNoKGEpe2Nhc2UgMDpicmVhaztjYXNlIDk6cmV0dXJuImU0IjtjYXNlIDY6cmV0dXJuImU1IjtjYXNlIDE0OnJldHVybiJlNiI7ZGVmYXVsdDpyZXR1cm4iZTcifX07dmFyIEY9e0Q6e1hhOiJhZF9wZXJzb25hbGl6YXRpb24iLGthOiJhZF9zdG9yYWdlIixtYToiYWRfdXNlcl9kYXRhIixyYToiYW5hbHl0aWNzX3N0b3JhZ2UiLG5jOiJyZWdpb24iLHNhOiJjb25zZW50X3VwZGF0ZWQiLFlnOiJ3YWl0X2Zvcl91cGRhdGUiLGVoOiJlbmRwb2ludF90eXBlIixxcDoiYXBwX3JlbW92ZSIscnA6ImFwcF9zdG9yZV9yZWZ1bmQiLHRwOiJhcHBfc3RvcmVfc3Vic2NyaXB0aW9uX2NhbmNlbCIsdXA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fY29udmVydCIsdnA6ImFwcF9zdG9yZV9zdWJzY3JpcHRpb25fcmVuZXciLHdwOiJjb25zZW50X3VwZGF0ZSIseHA6ImNvbnZlcnNpb24iLHZsOiJhZGRfcGF5bWVudF9pbmZvIix3bDoiYWRkX3NoaXBwaW5nX2luZm8iLHhlOiJhZGRfdG9fY2FydCIseWU6InJlbW92ZV9mcm9tX2NhcnQiLHhsOiJ2aWV3X2NhcnQiLEFkOiJiZWdpbl9jaGVja291dCIsZXU6ImdlbmVyYXRlX2xlYWQiLHplOiJzZWxlY3RfaXRlbSIsb2M6InZpZXdfaXRlbV9saXN0IiwKUWM6InNlbGVjdF9wcm9tb3Rpb24iLHFjOiJ2aWV3X3Byb21vdGlvbiIsSWI6InB1cmNoYXNlIixBZToicmVmdW5kIixyYzoidmlld19pdGVtIix5bDoiYWRkX3RvX3dpc2hsaXN0Iix5cDoiZXhjZXB0aW9uIix6cDoiZmlyc3Rfb3BlbiIsQXA6ImZpcnN0X3Zpc2l0Iix3YToiZ3RhZy5jb25maWciLEpiOiJndGFnLmdldCIsQnA6ImluX2FwcF9wdXJjaGFzZSIsc2M6InBhZ2VfdmlldyIsQ3A6InNjcmVlbl92aWV3IixEcDoic2Vzc2lvbl9zdGFydCIsRXA6InNvdXJjZV91cGRhdGUiLEZwOiJ0aW1pbmdfY29tcGxldGUiLEdwOiJ0cmFja19zb2NpYWwiLHlmOiJ1c2VyX2VuZ2FnZW1lbnQiLEhwOiJ1c2VyX2lkX3VwZGF0ZSIsZmg6ImJyYWlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLGdoOiJicmFpZF9zdG9yYWdlX3NvdXJjZSIsQmQ6ImdjbGlkX2xpbmtfZGVjb3JhdGlvbl9zb3VyY2UiLENkOiJnY2xpZF9zdG9yYWdlX3NvdXJjZSIsU2I6ImdjbGdiIixsYjoiZ2NsaWQiLHpsOiJnY2xpZF9sZW4iLApCZToiZ2NsZ3MiLENlOiJnY2xscCIsRGU6ImdjbHN0IixtYjoiYWRzX2RhdGFfcmVkYWN0aW9uIix6ZjoiZ2FkX3NvdXJjZSIsQWY6ImdhZF9zb3VyY2Vfc3JjIixEZDoiZ2NsaWRfdXJsIixBbDoiZ2Nsc3JjIixCZjoiZ2JyYWlkIixFZToid2JyYWlkIixSYzoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uX3NpZ25hbHMiLHJpOiJhbGxvd19jdXN0b21fc2NyaXB0cyIsaGg6ImFsbG93X2Rpc3BsYXlfZmVhdHVyZXMiLHNpOiJhbGxvd19lbmhhbmNlZF9jb252ZXJzaW9ucyIsU2M6ImFsbG93X2dvb2dsZV9zaWduYWxzIix1aToiYWxsb3dfaW50ZXJlc3RfZ3JvdXBzIixJcDoiYXBwX2lkIixKcDoiYXBwX2luc3RhbGxlcl9pZCIsS3A6ImFwcF9uYW1lIixMcDoiYXBwX3ZlcnNpb24iLEVkOiJhdWlkIixmdToiYXV0b19kZXRlY3Rpb25fZW5hYmxlZCIsQmw6ImF1dG9fZXZlbnQiLENsOiJhd19yZW1hcmtldGluZyIsaWg6ImF3X3JlbWFya2V0aW5nX29ubHkiLENmOiJkaXNjb3VudCIsRGY6ImF3X2ZlZWRfY291bnRyeSIsCkVmOiJhd19mZWVkX2xhbmd1YWdlIixIYToiaXRlbXMiLEZmOiJhd19tZXJjaGFudF9pZCIsd2k6ImF3X2Jhc2tldF90eXBlIixHZjoiY2FtcGFpZ25fY29udGVudCIsSGY6ImNhbXBhaWduX2lkIixJZjoiY2FtcGFpZ25fbWVkaXVtIixKZjoiY2FtcGFpZ25fbmFtZSIsS2Y6ImNhbXBhaWduIixMZjoiY2FtcGFpZ25fc291cmNlIixNZjoiY2FtcGFpZ25fdGVybSIsS2I6ImNsaWVudF9pZCIsRGw6InJuZCIseGk6ImNvbnNlbnRfdXBkYXRlX3R5cGUiLE1wOiJjb250ZW50X2dyb3VwIixOcDoiY29udGVudF90eXBlIixGZDoiY29udmVyc2lvbl9jb29raWVfcHJlZml4Iix5aToiY29udmVyc2lvbl9pZCIsdWM6ImNvbnZlcnNpb25fbGlua2VyIixIZDoiY29udmVyc2lvbl9saW5rZXJfZGlzYWJsZWQiLEZlOiJjb252ZXJzaW9uX2FwaSIsemk6Il8mcmNiIixqaDoiY29va2llX2RlcHJlY2F0aW9uIixMYjoiY29va2llX2RvbWFpbiIsQ2I6ImNvb2tpZV9leHBpcmVzIixUYjoiY29va2llX2ZsYWdzIiwKSWQ6ImNvb2tpZV9uYW1lIix2YzoiY29va2llX3BhdGgiLG5iOiJjb29raWVfcHJlZml4IixKZDoiY29va2llX3VwZGF0ZSIsVGM6ImNvdW50cnkiLGViOiJjdXJyZW5jeSIsR2U6ImN1c3RvbWVyX2xpZmV0aW1lX3ZhbHVlIixraDoiY3VzdG9tZXJfdHlwZSIsSGU6ImN1c3RvbV9tYXAiLEFpOiJnY2xkY19saW5rX2RlY29yYXRpb25fc291cmNlIixCaToiZ2NsZGNfc3RvcmFnZV9zb3VyY2UiLE5mOiJnY2xkYyIsS2Q6ImRjbGlkIixFbDoiZGVidWdfbW9kZSIsT2E6ImRldmVsb3Blcl9pZCIsT3A6ImRpc2FibGVfbWVyY2hhbnRfcmVwb3J0ZWRfcHVyY2hhc2VzIixVYzoiZGNfY3VzdG9tX3BhcmFtcyIsUHA6ImRjX25hdHVyYWxfc2VhcmNoIixRcDoiZHluYW1pY19ldmVudF9zZXR0aW5ncyIsRmw6ImFmZmlsaWF0aW9uIixtaDoiY2hlY2tvdXRfb3B0aW9uIixDaToiY2hlY2tvdXRfc3RlcCIsR2w6ImNvdXBvbiIsT2Y6Iml0ZW1fbGlzdF9uYW1lIixEaToibGlzdF9uYW1lIixScDoicHJvbW90aW9ucyIsCkxkOiJzaGlwcGluZyIsSGw6InRheCIsbmg6ImVuZ2FnZW1lbnRfdGltZV9tc2VjIixvaDoiZW5oYW5jZWRfY2xpZW50X2lkIixTcDoiZW5oYW5jZWRfY29udmVyc2lvbnMiLGd1OiJlbmhhbmNlZF9jb252ZXJzaW9uc19hdXRvbWF0aWNfc2V0dGluZ3MiLEllOiJlc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZSIsUGY6ImV2ZW50X2NhbGxiYWNrIixUcDoiZXZlbnRfY2F0ZWdvcnkiLFZjOiJldmVudF9kZXZlbG9wZXJfaWRfc3RyaW5nIixNZDoiZXZlbnRfaWQiLEVpOiJfZXZlbnRfam9pbl9pZCIsVXA6ImV2ZW50X2xhYmVsIixVYjoiZXZlbnQiLElsOiJfJmFlIixGaToiZXZlbnRfc2V0dGluZ3MiLHBoOiJldmVudF90aW1lb3V0IixWcDoiZGVzY3JpcHRpb24iLFdwOiJmYXRhbCIsWHA6ImV4cGVyaW1lbnRzIixOZDoiZXh0X2NsaWVudF9pZCIsR2k6ImZpcmViYXNlX2lkIixRZjoiZmlyc3RfcGFydHlfY29sbGVjdGlvbiIsUmY6Il94XzIwIixWYjoiX3hfMTkiLFlwOiJmbGlnaHRfZXJyb3JfY29kZSIsClpwOiJmbGlnaHRfZXJyb3JfbWVzc2FnZSIsSGk6ImZsX2FjdGl2aXR5X2NhdGVnb3J5IixJaToiZmxfYWN0aXZpdHlfZ3JvdXAiLHFoOiJmbF9hZHZlcnRpc2VyX2lkIixKaToibWF0Y2hfaWQiLEpsOiJmbF9yYW5kb21fbnVtYmVyIixLbDoidHJhbiIsTGw6InUiLHJoOiJnYWNfZ2NsaWQiLEplOiJnYWNfd2JyYWlkIixNbDoiZ2FjX3dicmFpZF9tdWx0aXBsZV9jb252ZXJzaW9ucyIsYXE6ImdhX3Jlc3RyaWN0X2RvbWFpbiIsTmw6ImdhX3RlbXBfY2xpZW50X2lkIixicToiZ2FfdGVtcF9lY2lkIixLZToiZ2Rwcl9hcHBsaWVzIixzaDoiX2d0X21ldGFkYXRhIixPbDoiZ2VvX2dyYW51bGFyaXR5IixTZjoidmFsdWVfY2FsbGJhY2siLFRmOiJ2YWx1ZV9rZXkiLFRhOiJnb29nbGVfYW5hbHlzaXNfcGFyYW1zIixMZToiX2dvb2dsZV9uZyIsY3E6Il9vbm8iLFVmOiJnb29nbGVfc2lnbmFscyIsZnE6Imdvb2dsZV90bGQiLHRoOiJncHBfc2lkIix1aDoiZ3BwX3N0cmluZyIsT2Q6Imdyb3VwcyIsClBsOiJnc2FfZXhwZXJpbWVudF9pZCIsVmY6Imd0YWdfZXZlbnRfZmVhdHVyZV91c2FnZSIsUWw6Imd0bV91cCIsTWU6ImlmcmFtZV9zdGF0ZSIsV2Y6Imlnbm9yZV9yZWZlcnJlciIsUmw6ImludGVybmFsX3RyYWZmaWNfcmVzdWx0cyIsU2w6Il9pc19mcG0iLFljOiJpc19sZWdhY3lfY29udmVydGVkIixaYzoiaXNfbGVnYWN5X2xvYWRlZCIsS2k6ImlzX3Bhc3N0aHJvdWdoIixQZDoiX2xwcyIsdGI6Imxhbmd1YWdlIixMaToibGVnYWN5X2RldmVsb3Blcl9pZF9zdHJpbmciLERiOiJsaW5rZXIiLFhmOiJhY2NlcHRfaW5jb21pbmciLHdjOiJkZWNvcmF0ZV9mb3JtcyIsQWE6ImRvbWFpbnMiLGFkOiJ1cmxfcG9zaXRpb24iLFFkOiJtZXJjaGFudF9mZWVkX2xhYmVsIixSZDoibWVyY2hhbnRfZmVlZF9sYW5ndWFnZSIsU2Q6Im1lcmNoYW50X2lkIixUbDoibWV0aG9kIixncToibmFtZSIsVWw6Im5hdmlnYXRpb25fdHlwZSIsTmU6Im5ld19jdXN0b21lciIsTWk6Im5vbl9pbnRlcmFjdGlvbiIsCmhxOiJvcHRpbWl6ZV9pZCIsVmw6InBhZ2VfaG9zdG5hbWUiLFlmOiJwYWdlX3BhdGgiLFVhOiJwYWdlX3JlZmVycmVyIixNYjoicGFnZV90aXRsZSIsaXE6InBhc3NlbmdlcnMiLFdsOiJwaG9uZV9jb252ZXJzaW9uX2NhbGxiYWNrIixqcToicGhvbmVfY29udmVyc2lvbl9jb3VudHJ5X2NvZGUiLFhsOiJwaG9uZV9jb252ZXJzaW9uX2Nzc19jbGFzcyIsa3E6InBob25lX2NvbnZlcnNpb25faWRzIixZbDoicGhvbmVfY29udmVyc2lvbl9udW1iZXIiLFpsOiJwaG9uZV9jb252ZXJzaW9uX29wdGlvbnMiLGxxOiJfcGxhdGludW1fcmVxdWVzdF9zdGF0dXMiLG1xOiJfcHJvdGVjdGVkX2F1ZGllbmNlX2VuYWJsZWQiLHdoOiJxdWFudGl0eSIseGg6InJlZGFjdF9kZXZpY2VfaW5mbyIsYW06InJlZmVycmFsX2V4Y2x1c2lvbl9kZWZpbml0aW9uIixodToiX3JlcXVlc3Rfc3RhcnRfdGltZSIsV2I6InJlc3RyaWN0ZWRfZGF0YV9wcm9jZXNzaW5nIixucToicmV0b2tlbiIsb3E6InNhbXBsZV9yYXRlIiwKTmk6InNjcmVlbl9uYW1lIixiZDoic2NyZWVuX3Jlc29sdXRpb24iLGJtOiJfc2NyaXB0X3NvdXJjZSIscHE6InNlYXJjaF90ZXJtIixUZDoic2VuZF9wYWdlX3ZpZXciLFhiOiJzZW5kX3RvIixPaToic2VydmVyX2NvbnRhaW5lcl8zcF9lbnJpY2htZW50IixkZDoic2VydmVyX2NvbnRhaW5lcl91cmwiLHFxOiJzZXNzaW9uX2F0dHJpYnV0ZXNfZW5jb2RlZCIseWg6InNlc3Npb25fZHVyYXRpb24iLHpoOiJzZXNzaW9uX2VuZ2FnZWQiLFBpOiJzZXNzaW9uX2VuZ2FnZWRfdGltZSIseGM6InNlc3Npb25faWQiLEFoOiJzZXNzaW9uX251bWJlciIsWmY6Il9zaGFyZWRfdXNlcl9pZCIsVWQ6ImRlbGl2ZXJ5X3Bvc3RhbF9jb2RlIixpdToiX3RhZ19maXJpbmdfZGVsYXkiLGp1OiJfdGFnX2ZpcmluZ190aW1lIixrdToidGVtcG9yYXJ5X2NsaWVudF9pZCIsUWk6InRlc3Rvbmx5IixycToiX3RpbWV6b25lIixQZToidG9wbW9zdF91cmwiLFFlOiJ0cmFja2luZ19pZCIsUmk6InRyYWZmaWNfdHlwZSIsClBhOiJ0cmFuc2FjdGlvbl9pZCIsZG06InRyYW5zYWN0aW9uX2lkX3NvdXJjZSIseWM6InRyYW5zcG9ydF91cmwiLHNxOiJ0cmlwX3R5cGUiLFZkOiJ1cGRhdGUiLHpjOiJ1cmxfcGFzc3Rocm91Z2giLGZtOiJ1cHRncyIsY2c6Il91c2VyX2FnZW50X2FyY2hpdGVjdHVyZSIsZGc6Il91c2VyX2FnZW50X2JpdG5lc3MiLGVnOiJfdXNlcl9hZ2VudF9mdWxsX3ZlcnNpb25fbGlzdCIsZmc6Il91c2VyX2FnZW50X21vYmlsZSIsZ2c6Il91c2VyX2FnZW50X21vZGVsIixoZzoiX3VzZXJfYWdlbnRfcGxhdGZvcm0iLGlnOiJfdXNlcl9hZ2VudF9wbGF0Zm9ybV92ZXJzaW9uIixqZzoiX3VzZXJfYWdlbnRfd293NjQiLEFjOiJ1c2VyX2RhdGEiLGdtOiJ1c2VyX2RhdGFfYXV0b19sYXRlbmN5IixobToidXNlcl9kYXRhX2F1dG9fbWV0YSIsaW06InVzZXJfZGF0YV9hdXRvX211bHRpIixqbToidXNlcl9kYXRhX2F1dG9fc2VsZWN0b3JzIixrbToidXNlcl9kYXRhX2F1dG9fc3RhdHVzIixCYzoidXNlcl9kYXRhX21vZGUiLApsbToidXNlcl9kYXRhX3NldHRpbmdzIixmYjoidXNlcl9pZCIsV2Q6InVzZXJfcHJvcGVydGllcyIsb206Il91c2VyX3JlZ2lvbiIsa2c6InVzX3ByaXZhY3lfc3RyaW5nIixRYToidmFsdWUiLHFtOiJ3YnJhaWRfbXVsdGlwbGVfY29udmVyc2lvbnMiLGVkOiJfZnBtX3BhcmFtZXRlcnMiLFdpOiJfaG9zdF9uYW1lIixWbToiX2luX3BhZ2VfY29tbWFuZCIsWWk6Il9pcF9vdmVycmlkZSIsWm06Il9pc19wYXNzdGhyb3VnaF9jaWQiLEpoOiJfbWVhc3VyZW1lbnRfdHlwZSIsZGU6Im5vbl9wZXJzb25hbGl6ZWRfYWRzIixvajoiX3NzdF9wYXJhbWV0ZXJzIixZcToic2d0bV9nZW9fdXNlcl9jb3VudHJ5IixHZDoiY29udmVyc2lvbl9sYWJlbCIsemE6InBhZ2VfbG9jYXRpb24iLFdjOiJfZXh0cmFjdGVkX2RhdGEiLFhjOiJnbG9iYWxfZGV2ZWxvcGVyX2lkX3N0cmluZyIsT2U6InRjX3ByaXZhY3lfc3RyaW5nIn19O3ZhciBIPXtKOntTbzoiYWJvcnRfd2l0aG91dF9mYWlsIixraToiYWNjZXB0X2J5X2RlZmF1bHQiLEJrOiJhZGRfdGFnX3RpbWluZyIsRGs6ImFkc19jb25zZW50X2dyYW50ZWQiLHZkOiJhZHNfZXZlbnRfcGFnZV92aWV3Iix3ZDoiYWxsb3dfYWRfcGVyc29uYWxpemF0aW9uIixRdDoiYXV0b19ldmVudCIsS2s6ImJhdGNoX29uX25hdmlnYXRpb24iLFhnOiJiaXNjb3R0aV9qb2luX2lkIixQazoiY2xpZW50X2lkX3NvdXJjZSIsdWY6ImNvbnNlbnRfZXZlbnRfaWQiLHZmOiJjb25zZW50X3ByaW9yaXR5X2lkIixTdDoiY29uc2VudF9zdGF0ZSIsc2E6ImNvbnNlbnRfdXBkYXRlZCIsd2Y6ImNvbnZlcnNpb25fbGlua2VyX2VuYWJsZWQiLFR0OiJjb252ZXJzaW9uX21hcmtpbmdfY2FsbGVkIixHYToiY29va2llX29wdGlvbnMiLG9sOiJkY19yYW5kb20iLFp0OiJkZWR1cGVfaWQiLFBjOiJlbV9ldmVudCIsYnU6ImVuZHBvaW50X2Zvcl9kZWJ1ZyIsdGw6ImVuaGFuY2VkX2NsaWVudF9pZF9zb3VyY2UiLApwcDoiZW5oYW5jZWRfbWF0Y2hfcmVzdWx0IixybToiZXVpZF9sb2dnZWRfaW5fc3RhdGUiLGxnOiJldWlkX21vZGVfZW5hYmxlZCIsdHE6ImV2ZW50X3Byb3ZlbmFuY2UiLG11OiJldmVudF9zb3VyY2UiLEViOiJldmVudF9zdGFydF90aW1lc3RhbXBfbXMiLHdtOiJldmVudF91c2FnZSIsQ2g6ImV4dHJhX3RhZ19leHBlcmltZW50X2lkcyIscHU6ImFkZF9wYXJhbWV0ZXIiLFVpOiJjb3VudGluZ19tZXRob2QiLERoOiJzZW5kX2FzX2lmcmFtZSIscXU6InBhcmFtZXRlcl9vcmRlciIsRWg6InBhcnNlZF90YXJnZXQiLHN1OiJmb3JtX2V2ZW50X2NhbmNlbGVkIixBcToiZ2E0X2NvbGxlY3Rpb25fc3ViZG9tYWluIixWaToiZ2E0X3JlcXVlc3RfZmxhZ3MiLE5tOiJnYnJhaWRfY29va2llX21hcmtlZCIsUW06Imd0bV9leHRyYWN0ZWRfZGF0YSIsQ2M6ImhhbmRsZV9pbnRlcm5hbGx5Iix1dToiaGFzX2dhX2NvbnZlcnNpb25fY29uc2VudHMiLGRhOiJoaXRfdHlwZSIsRGM6ImhpdF90eXBlX292ZXJyaWRlIiwKSHE6Imlnbm9yZV9kdXBlX2NvbmZpZyIsT3U6ImlzX2NvbmZpZ19jb21tYW5kIixHaDoiaXNfY29uc2VudF91cGRhdGUiLG1nOiJpc19jb252ZXJzaW9uIixXbToiaXNfZWNvbW1lcmNlIixYbToiaXNfZWNfY21fc3BsaXQiLGFlOiJpc19leHRlcm5hbF9ldmVudCIsbmc6ImlzX2ZpcnN0X3Zpc2l0IixZbToiaXNfZmlyc3RfdmlzaXRfY29udmVyc2lvbiIsWmk6ImlzX2ZsX2ZhbGxiYWNrX2NvbnZlcnNpb25fZmxvd19hbGxvd2VkIixmZDoiaXNfZnBtX2VuY3J5cHRpb24iLGFqOiJpc19mcG1fc3BsaXQiLG9iOiJpc19nY3BfYnJvd3NlciIsYmo6ImlzX2dvb2dsZV9tZWFzdXJlbWVudF9hbGxvd2VkIixjajoiaXNfZ29vZ2xlX3NpZ25hbHNfZW5hYmxlZCIsYmU6ImlzX21lcmNoYW50X2NlbnRlciIsSGg6ImlzX25ld190b19zaXRlIixFYzoiaXNfcGVyc29uYWxpemF0aW9uIixkajoiaXNfc2VydmVyX3NpZGVfZGVzdGluYXRpb24iLFRlOiJpc19zZXNzaW9uX3N0YXJ0IixibjoiaXNfc2Vzc2lvbl9zdGFydF9jb252ZXJzaW9uIiwKUHU6ImlzX3NndG1fZ2FfYWRzX2NvbnZlcnNpb25fc3R1ZHlfY29udHJvbF9ncm91cCIsUXU6ImlzX3NndG1fcHJlaGl0IixkbjoiaXNfc2d0bV9zZXJ2aWNlX3dvcmtlciIsSWg6ImlzX3NwbGl0X2NvbnZlcnNpb24iLElxOiJpc19zeW4iLEZjOiJpc190ZXN0X2V2ZW50IixvZzoiam9pbl9pZCIsZWo6ImpvaW5fZWxhcHNlZCIscGc6ImpvaW5fdGltZXJfc2VjIixnbjoibG9jYWxfc3RvcmFnZV9hd19jb252ZXJzaW9uX2NvdW50ZXJzIixXZToidHVubmVsX3VwZGF0ZWQiLFV1OiJwcmVoaXRfZm9yX3JldHJ5IixXdToicHJvbWlzZXMiLFh1OiJyZWNvcmRfYXdfbGF0ZW5jeSIsWGU6InJlZGFjdF9hZHNfZGF0YSIsWWU6InJlZGFjdF9jbGlja19pZHMiLHBuOiJyZW1hcmtldGluZ19vbmx5Iixsajoic2VuZF9jY21fcGFyYWxsZWxfcGluZyIsaGQ6InNlbmRfZG91YmxlY2xpY2tfam9pbiIsTWg6InNlbmRfZnBtX2dlb19qb2luIixOaDoic2VuZF9mcG1fZ29vZ2xlX2pvaW4iLFp1OiJzZW5kX2NjbV9wYXJhbGxlbF90ZXN0X3BpbmciLApybjoic2VuZF9nb29nbGVfbWVhc3VyZW1lbnQiLHJnOiJzZW5kX3RsZF9qb2luIixzZzoic2VuZF90b19kZXN0aW5hdGlvbnMiLG1qOiJzZW5kX3RvX3RhcmdldHMiLHNuOiJzZW5kX3VzZXJfZGF0YV9oaXQiLHBqOiJzZXJ2aWNlX3dvcmtlcl9jb250ZXh0IixOYjoic291cmNlX2Nhbm9uaWNhbF9pZCIsSmE6InNwZWN1bGF0aXZlIix5bjoic3BlY3VsYXRpdmVfaW5fbWVzc2FnZSIsQW46InN1cHByZXNzX3NjcmlwdF9sb2FkIixCbjoic3luX29yX21vZCIsemo6InRyYW5zaWVudF9lY3NpZCIsdGc6InRyYW5zbWlzc2lvbl90eXBlIixZYToidXNlcl9kYXRhIixndjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljIixodjoidXNlcl9kYXRhX2Zyb21fYXV0b21hdGljX2dldHRlciIsR246InVzZXJfZGF0YV9mcm9tX2NvZGUiLGlyOiJ1c2VyX2RhdGFfZnJvbV9tYW51YWwiLGp2OiJ1c2VyX2RhdGFfbW9kZSIsdWc6InVzZXJfaWRfdXBkYXRlZCJ9fTsKdmFyIHRnPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM9MDtHYihhLGZ1bmN0aW9uKGUsZil7aWYoZiE9bnVsbCl7dmFyIGc9KCIiK2YpLnJlcGxhY2UoL34vZywifn4iKTtpZihxZy5oYXNPd25Qcm9wZXJ0eShlKSliW3FnW2VdXT1nO2Vsc2UgaWYocmcuaGFzT3duUHJvcGVydHkoZSkpe3ZhciBoPXJnW2VdO2IuaGFzT3duUHJvcGVydHkoaCl8fChiW2hdPWcpfWVsc2UgaWYoZT09PSJjYXRlZ29yeSIpZm9yKHZhciBsPWcuc3BsaXQoIi8iLDUpLG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIHA9YixxPXNnW25dLHI9bFtuXTtwLmhhc093blByb3BlcnR5KHEpfHwocFtxXT1yKX1lbHNlIGlmKGM8Mjcpe3ZhciB0PVN0cmluZy5mcm9tQ2hhckNvZGUoYzwxMD80OCtjOjY1K2MtMTApO2JbImsiK3RdPSgiIitTdHJpbmcoZSkpLnJlcGxhY2UoL34vZywifn4iKTtiWyJ2Iit0XT1nO2MrK319fSk7dmFyIGQ9W107R2IoYixmdW5jdGlvbihlLGYpe2QucHVzaCgiIitlK2YpfSk7cmV0dXJuIGQuam9pbigifiIpfSwKcWc9e2l0ZW1faWQ6ImlkIixpdGVtX25hbWU6Im5tIixpdGVtX2JyYW5kOiJiciIsaXRlbV9jYXRlZ29yeToiY2EiLGl0ZW1fY2F0ZWdvcnkyOiJjMiIsaXRlbV9jYXRlZ29yeTM6ImMzIixpdGVtX2NhdGVnb3J5NDoiYzQiLGl0ZW1fY2F0ZWdvcnk1OiJjNSIsaXRlbV92YXJpYW50OiJ2YSIscHJpY2U6InByIixxdWFudGl0eToicXQiLGNvdXBvbjoiY3AiLGl0ZW1fbGlzdF9uYW1lOiJsbiIsaW5kZXg6ImxwIixpdGVtX2xpc3RfaWQ6ImxpIixkaXNjb3VudDoiZHMiLGFmZmlsaWF0aW9uOiJhZiIscHJvbW90aW9uX2lkOiJwaSIscHJvbW90aW9uX25hbWU6InBuIixjcmVhdGl2ZV9uYW1lOiJjbiIsY3JlYXRpdmVfc2xvdDoiY3MiLGxvY2F0aW9uX2lkOiJsbyJ9LHJnPXtpZDoiaWQiLG5hbWU6Im5tIixicmFuZDoiYnIiLHZhcmlhbnQ6InZhIixsaXN0X25hbWU6ImxuIixsaXN0X3Bvc2l0aW9uOiJscCIsbGlzdDoibG4iLHBvc2l0aW9uOiJscCIsY3JlYXRpdmU6ImNuIn0sc2c9WyJjYSIsCiJjMiIsImMzIiwiYzQiLCJjNSJdO3ZhciB1Zz1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhkKSkpfSk7cmV0dXJuIGIuam9pbigiJiIpfSx2Zz1mdW5jdGlvbihhLGIsYyxkLGUsZixnLGgpe3RoaXMuYmFzZVVybD1iO3RoaXMuZW5kcG9pbnQ9Yzt0aGlzLmRlc3RpbmF0aW9uSWQ9Zjt0aGlzLmV2ZW50SWQ9Zzt0aGlzLnByaW9yaXR5SWQ9aDt0aGlzLkJhPWEuQmE7dGhpcy52ZT1hLnZlO3RoaXMuTGo9YS5Majt0aGlzLk49ZDt0aGlzLks9dWcoYS5CYSk7dGhpcy5IPXVnKGEuTGopO3RoaXMuUj10aGlzLkgubGVuZ3RoO2lmKGUmJnRoaXMuUj4xNjM4NCl0aHJvdyBFcnJvcigiRVZFTlRfVE9PX0xBUkdFIik7fTsKdmFyIHdnPWZ1bmN0aW9uKCl7dGhpcy5ldmVudHM9W107dGhpcy5IPSIiO3RoaXMuQmE9e307dGhpcy5iYXNlVXJsPSIiO3RoaXMuTj0wO3RoaXMuSz0xO3RoaXMuZW5kcG9pbnQ9MH07d2cucHJvdG90eXBlLmFkZD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5SKGEpPyh0aGlzLmV2ZW50cy5wdXNoKGEpLHRoaXMuSD1hLkssdGhpcy5CYT1hLkJhLHRoaXMuYmFzZVVybD1hLmJhc2VVcmwsdGhpcy5OKz1hLlIsdGhpcy5LPWEuTix0aGlzLmVuZHBvaW50PWEuZW5kcG9pbnQsdGhpcy5kZXN0aW5hdGlvbklkPWEuZGVzdGluYXRpb25JZCx0aGlzLlo9YS5ldmVudElkLHRoaXMuZmE9YS5wcmlvcml0eUlkLCEwKTohMX07d2cucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZXZlbnRzLmxlbmd0aD90aGlzLmV2ZW50cy5sZW5ndGg+PTIwfHxhLlIrdGhpcy5OPj0xNjM4ND8hMTp0aGlzLmJhc2VVcmw9PT1hLmJhc2VVcmwmJnRoaXMuSz09PWEuTiYmdGhpcy5qYShhKTohMH07CndnLnByb3RvdHlwZS5qYT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5IPT09YS5LfTt2YXIgSj17VTp7a3A6MSxtcDoyLEVuOjMsbm46NCxxbDo1LHJsOjYsRXE6NyxucDo4LERxOjksanA6MTAsaHA6MTEseG46MTIsdm46MTMsTms6MTQsVW86MTUsV286MTYsaG46MTcsc2w6MTgsZm46MTksbHA6MjAsUHE6MjEsYXA6MjIsVm86MjMsWG86MjQsbmw6MjUsTGs6MjYsZXI6MjcsSm06MjgsVW06MjksVG06MzAsU206MzEsTW06MzIsS206MzMsTG06MzQsR206MzUsRm06MzYsSG06MzcsSW06MzgsQnE6MzksQ3E6NDAsVXE6NDF9fTtKLlVbSi5VLmtwXT0iQ1JFQVRFX0VWRU5UX1NPVVJDRSI7Si5VW0ouVS5tcF09IkVESVRfRVZFTlQiO0ouVVtKLlUuRW5dPSJUUkFGRklDX1RZUEUiO0ouVVtKLlUubm5dPSJSRUZFUlJBTF9FWENMVVNJT04iO0ouVVtKLlUucWxdPSJFQ09NTUVSQ0VfRlJPTV9HVE1fVEFHIjtKLlVbSi5VLnJsXT0iRUNPTU1FUkNFX0ZST01fR1RNX1VBX1NDSEVNQSI7Si5VW0ouVS5FcV09IkdBX1NFTkQiO0ouVVtKLlUubnBdPSJFTV9GT1JNIjsKSi5VW0ouVS5EcV09IkdBX0dBTV9MSU5LIjtKLlVbSi5VLmpwXT0iQ1JFQVRFX0VWRU5UX0FVVE9fUEFHRV9QQVRIIjtKLlVbSi5VLmhwXT0iQ1JFQVRFRF9FVkVOVCI7Si5VW0ouVS54bl09IlNJREVMT0FERUQiO0ouVVtKLlUudm5dPSJTR1RNX0xFR0FDWV9DT05GSUdVUkFUSU9OIjtKLlVbSi5VLk5rXT0iQ0NEX0VNX0VWRU5UIjtKLlVbSi5VLlVvXT0iQVVUT19SRURBQ1RfRU1BSUwiO0ouVVtKLlUuV29dPSJBVVRPX1JFREFDVF9RVUVSWV9QQVJBTSI7Si5VW0ouVS5obl09Ik1VTFRJUExFX1BBR0VWSUVXX0ZST01fQ09ORklHIjtKLlVbSi5VLnNsXT0iRU1fRVZFTlRfU0VOVF9CRUZPUkVfQ09ORklHIjtKLlVbSi5VLmZuXT0iTE9BREVEX1ZJQV9DU1RfT1JfU0lERUxPQURJTkciO0ouVVtKLlUubHBdPSJERUNPREVEX1BBUkFNX01BVENIIjtKLlVbSi5VLlBxXT0iTk9OX0RFQ09ERURfUEFSQU1fTUFUQ0giO0ouVVtKLlUuYXBdPSJDQ0RfRVZFTlRfU0dUTSI7CkouVVtKLlUuVm9dPSJBVVRPX1JFREFDVF9FTUFJTF9TR1RNIjtKLlVbSi5VLlhvXT0iQVVUT19SRURBQ1RfUVVFUllfUEFSQU1fU0dUTSI7Si5VW0ouVS5ubF09IkRBSUxZX0xJTUlUX1JFQUNIRUQiO0ouVVtKLlUuTGtdPSJCVVJTVF9MSU1JVF9SRUFDSEVEIjtKLlVbSi5VLmVyXT0iU0hBUkVEX1VTRVJfSURfU0VUX0FGVEVSX1JFUVVFU1QiO0ouVVtKLlUuSm1dPSJHQTRfTVVMVElQTEVfU0VTU0lPTl9DT09LSUVTIjtKLlVbSi5VLlVtXT0iSU5WQUxJRF9HQTRfU0VTU0lPTl9DT1VOVCI7Si5VW0ouVS5UbV09IklOVkFMSURfR0E0X0xBU1RfRVZFTlRfVElNRVNUQU1QIjtKLlVbSi5VLlNtXT0iSU5WQUxJRF9HQTRfSk9JTl9USU1FUiI7Si5VW0ouVS5NbV09IkdBNF9TVEFMRV9TRVNTSU9OX0NPT0tJRV9TRUxFQ1RFRCI7Si5VW0ouVS5LbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzFfUkVBRCI7Si5VW0ouVS5MbV09IkdBNF9TRVNTSU9OX0NPT0tJRV9HUzJfUkVBRCI7CkouVVtKLlUuR21dPSJHQTRfRExfUEFSQU1fUkVDT1ZFUllfQVZBSUxBQkxFIjtKLlVbSi5VLkZtXT0iR0E0X0RMX1BBUkFNX1JFQ09WRVJZX0FQUExJRUQiO0ouVVtKLlUuSG1dPSJHQTRfR09PR0xFX01FQVNVUkVNRU5UX0FMTE9XRUQiO0ouVVtKLlUuSW1dPSJHQTRfR09PR0xFX1NJR05BTFNfRU5BQkxFRCI7Si5VW0ouVS5CcV09IkdBNF9GQUxMQkFDS19SRVFVRVNUIjtKLlVbSi5VLkNxXT0iR0FfQURTX0xJTktfQkVGT1JFX0NPTlZFUlNJT05fTUFSS0lORyI7Si5VW0ouVS5VcV09IlBMQVRJTlVNX0VMSUdJQkxFIjt2YXIgeGc9e30seWc9KHhnLnVhYT0hMCx4Zy51YWI9ITAseGcudWFmdmw9ITAseGcudWFtYj0hMCx4Zy51YW09ITAseGcudWFwPSEwLHhnLnVhcHY9ITAseGcudWF3PSEwLHhnKTsKdmFyIEJnPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5ldmVudHM7aWYoYy5sZW5ndGg9PT0xKXJldHVybiB6ZyhjWzBdLGIpO3ZhciBkPVtdO2EuSCYmZC5wdXNoKGEuSCk7Zm9yKHZhciBlPXt9LGY9MDtmPGMubGVuZ3RoO2YrKylHYihjW2ZdLnZlLGZ1bmN0aW9uKHQsdSl7dSE9bnVsbCYmKGVbdF09ZVt0XXx8e30sZVt0XVtTdHJpbmcodSldPWVbdF1bU3RyaW5nKHUpXSsxfHwxKX0pO3ZhciBnPXt9O0diKGUsZnVuY3Rpb24odCx1KXt2YXIgdix4PS0xLHk9MDtHYih1LGZ1bmN0aW9uKHosQyl7eSs9Qzt2YXIgRD0oei5sZW5ndGgrdC5sZW5ndGgrMikqKEMtMSk7RD54JiYodj16LHg9RCl9KTt5PT09Yy5sZW5ndGgmJihnW3RdPXYpfSk7QWcoZyxkKTtiJiZkLnB1c2goIl9zPSIrYik7Zm9yKHZhciBoPWQuam9pbigiJiIpLGw9W10sbj17fSxwPTA7cDxjLmxlbmd0aDtuPXtmazp2b2lkIDB9LHArKyl7dmFyIHE9W107bi5maz17fTtHYihjW3BdLnZlLGZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbih1LAp2KXtnW3VdIT09IiIrdiYmKHQuZmtbdV09dil9fShuKSk7Y1twXS5IJiZxLnB1c2goY1twXS5IKTtBZyhuLmZrLHEpO2wucHVzaChxLmpvaW4oIiYiKSl9dmFyIHI9bC5qb2luKCJcclxuIik7cmV0dXJue3BhcmFtczpoLGJvZHk6cn19LHpnPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107YS5LJiZjLnB1c2goYS5LKTtiJiZjLnB1c2goIl9zPSIrYik7QWcoYS52ZSxjKTt2YXIgZD0hMTthLkgmJihjLnB1c2goYS5IKSxkPSEwKTt2YXIgZT1jLmpvaW4oIiYiKSxmPSIiLGc9ZS5sZW5ndGgrYS5iYXNlVXJsLmxlbmd0aCsxO2QmJmc+MjA0OCYmKGY9Yy5wb3AoKSxlPWMuam9pbigiJiIpKTtyZXR1cm57cGFyYW1zOmUsYm9keTpmfX0sQWc9ZnVuY3Rpb24oYSxiKXtHYihhLGZ1bmN0aW9uKGMsZCl7ZCE9bnVsbCYmYi5wdXNoKGVuY29kZVVSSUNvbXBvbmVudChjKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGQpKX0pfTsKdmFyIEVnPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWEsZT1iW2NdO2lmKCFDZy5leGVjKGUpKXRocm93IEVycm9yKCJJbnZhbGlkIGtleSB3aWxkY2FyZCIpO3ZhciBmPWUuaW5kZXhPZigiLioiKSxnPWYhPT0tMSYmZj09PWUubGVuZ3RoLTIsaD1nP2Uuc2xpY2UoMCxlLmxlbmd0aC0yKTplLGw7YTppZihkLmxlbmd0aD09PTApbD0hMTtlbHNle2Zvcih2YXIgbj1kLnNwbGl0KCIuIikscD0wO3A8bi5sZW5ndGg7cCsrKWlmKCFEZy5leGVjKG5bcF0pKXtsPSExO2JyZWFrIGF9bD0hMH1pZighbHx8aC5sZW5ndGg+ZC5sZW5ndGh8fCFnJiZkLmxlbmd0aCE9PWUubGVuZ3RoPzA6Zz9TYihkLGgpJiYoZD09PWh8fGQuY2hhckF0KGgubGVuZ3RoKT09PSIuIik6ZD09PWgpcmV0dXJuITB9cmV0dXJuITF9LERnPS9eW2EteiRfXVtcdy0kXSokL2ksQ2c9L14oPzpbYS16XyRdW2Etei1fJDAtOV0qXC4pKlthLXpfJF1bYS16LV8kMC05XSooPzpcLlwqKT8kL2k7CnZhciBGZz1bIm1hdGNoZXMiLCJ3ZWJraXRNYXRjaGVzU2VsZWN0b3IiLCJtb3pNYXRjaGVzU2VsZWN0b3IiLCJtc01hdGNoZXNTZWxlY3RvciIsIm9NYXRjaGVzU2VsZWN0b3IiXTtmdW5jdGlvbiBHZyhhLGIpe2lmKCFhKXJldHVybiExO3RyeXtmb3IodmFyIGM9MDtjPEZnLmxlbmd0aDtjKyspe3ZhciBkPUZnW2NdO2lmKGFbZF0hPW51bGwpcmV0dXJuIGFbZF0oYil9fWNhdGNoKGUpe31yZXR1cm4hMX1mdW5jdGlvbiBIZyhhLGIpe3ZhciBjPVN0cmluZyhhKSxkPVN0cmluZyhiKSxlPWMubGVuZ3RoLWQubGVuZ3RoO3JldHVybiBlPj0wJiZjLmluZGV4T2YoZCxlKT09PWV9ZnVuY3Rpb24gSWcoYSxiKXtyZXR1cm4gU3RyaW5nKGEpLnNwbGl0KCIsIikuaW5kZXhPZihTdHJpbmcoYikpPj0wfQpmdW5jdGlvbiBKZyhhLGIsYyxkKXt2YXIgZT1jPyJpIjp2b2lkIDA7dHJ5e3ZhciBmPVN0cmluZyhiKStTdHJpbmcoZSksZz1kPT1udWxsP3ZvaWQgMDpkLmdldChmKTtnfHwoZz1uZXcgUmVnRXhwKGIsZSksZD09bnVsbHx8ZC5zZXQoZixnKSk7cmV0dXJuIGcudGVzdChhKX1jYXRjaChoKXtyZXR1cm4hMX19ZnVuY3Rpb24gS2coYSxiKXtyZXR1cm4gU3RyaW5nKGEpLmluZGV4T2YoU3RyaW5nKGIpKT49MH1mdW5jdGlvbiBMZyhhLGIpe3JldHVybiBTdHJpbmcoYSk9PT1TdHJpbmcoYil9ZnVuY3Rpb24gTWcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPj1OdW1iZXIoYil9ZnVuY3Rpb24gTmcoYSxiKXtyZXR1cm4gTnVtYmVyKGEpPD1OdW1iZXIoYil9ZnVuY3Rpb24gT2coYSxiKXtyZXR1cm4gTnVtYmVyKGEpPk51bWJlcihiKX1mdW5jdGlvbiBQZyhhLGIpe3JldHVybiBOdW1iZXIoYSk8TnVtYmVyKGIpfQpmdW5jdGlvbiBRZyhhLGIpe3JldHVybiBTYihTdHJpbmcoYSksU3RyaW5nKGIpKX07ZnVuY3Rpb24gWGcoYSl7dmFyIGI9YS5zZWFyY2g7cmV0dXJuIGEucHJvdG9jb2wrIi8vIithLmhvc3RuYW1lK2EucGF0aG5hbWUrKGI/YisiJnJpY2hzc3Rzc2UiOiI/cmljaHNzdHNzZSIpfTt2YXIgWWc9ZnVuY3Rpb24oKXt0aGlzLlI9IiJ9LCRnPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9Yi5mYWxsYmFja191cmwsZD1iLmZhbGxiYWNrX3VybF9tZXRob2Q7aWYoYyYmZCl7dmFyIGU9e307WmcoYSwoZVtkXT1bY10sZS5vcHRpb25zPXt9LGUpKX19fSxhaD1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShhKSlmb3IodmFyIGQ9bShhKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTt0eXBlb2YgZj09PSJzdHJpbmciJiZjKGYsYil9fSxaZz1mdW5jdGlvbihhLGIpe2lmKGIpZm9yKHZhciBjPUNkKGIub3B0aW9ucyk/Yi5vcHRpb25zOnt9LGQ9bShPYmplY3Qua2V5cyhiKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1iW2ZdO3N3aXRjaChmKXtjYXNlICJzZW5kX3BpeGVsIjphaChnLGMsZnVuY3Rpb24oaCxsKXtyZXR1cm4gdm9pZCBhLksoaCxsKX0pO2JyZWFrO2Nhc2UgImZldGNoIjphaChnLApjLGZ1bmN0aW9uKGgsbCl7cmV0dXJuIHZvaWQgYS5IKGgsbCl9KX19fTt2YXIgYmg9L14oW2Etel1bYS16MC05XSopOighfFw/KShcKnxzdHJpbmd8Ym9vbGVhbnxudW1iZXJ8Rm58UGl4aWVNYXB8TGlzdHxPcGFxdWVWYWx1ZSkkL2ksY2g9e0ZuOiJmdW5jdGlvbiIsUGl4aWVNYXA6Ik9iamVjdCIsTGlzdDoiQXJyYXkifTsKZnVuY3Rpb24gZGgoYSxiKXtmb3IodmFyIGM9WyJpbnB1dDohKiJdLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9YmguZXhlYyhjW2RdKTtpZighZSl0aHJvdyBFcnJvcigiSW50ZXJuYWwgRXJyb3IgaW4gIithKTt2YXIgZj1lWzFdLGc9ZVsyXT09PSIhIixoPWVbM10sbD1iW2RdO2lmKGw9PW51bGwpe2lmKGcpdGhyb3cgRXJyb3IoIkVycm9yIGluICIrYSsiLiBSZXF1aXJlZCBhcmd1bWVudCAiK2YrIiBub3Qgc3VwcGxpZWQuIik7fWVsc2UgaWYoaCE9PSIqIil7dmFyIG49dHlwZW9mIGw7bCBpbnN0YW5jZW9mIEtkP249IkZuIjpsIGluc3RhbmNlb2YgR2Q/bj0iTGlzdCI6bCBpbnN0YW5jZW9mIGtiP249IlBpeGllTWFwIjpsIGluc3RhbmNlb2YgU2Q/bj0iUGl4aWVQcm9taXNlIjpsIGluc3RhbmNlb2YgUGQmJihuPSJPcGFxdWVWYWx1ZSIpO2lmKG4hPT1oKXRocm93IEVycm9yKCJFcnJvciBpbiAiK2ErIi4gQXJndW1lbnQgIitmKyIgaGFzIHR5cGUgIisoKGNoW25dfHxuKSsiLCB3aGljaCBkb2VzIG5vdCBtYXRjaCByZXF1aXJlZCB0eXBlICIpKwooKGNoW2hdfHxoKSsiLiIpKTt9fX1mdW5jdGlvbiBLKGEsYixjKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2cgaW5zdGFuY2VvZiBLZD9kLnB1c2goImZ1bmN0aW9uIik6ZyBpbnN0YW5jZW9mIEdkP2QucHVzaCgiQXJyYXkiKTpnIGluc3RhbmNlb2Yga2I/ZC5wdXNoKCJPYmplY3QiKTpnIGluc3RhbmNlb2YgU2Q/ZC5wdXNoKCJQcm9taXNlIik6ZyBpbnN0YW5jZW9mIFBkP2QucHVzaCgiT3BhcXVlVmFsdWUiKTpkLnB1c2godHlwZW9mIGcpfXJldHVybiBFcnJvcigiQXJndW1lbnQgZXJyb3IgaW4gIithKyIuIEV4cGVjdGVkIGFyZ3VtZW50IHR5cGVzIFsiKyhiLmpvaW4oIiwiKSsiXSwgYnV0IHJlY2VpdmVkIFsiKSsoZC5qb2luKCIsIikrIl0uIikpfWZ1bmN0aW9uIGVoKGEpe3JldHVybiBhIGluc3RhbmNlb2Yga2J9ZnVuY3Rpb24gZmgoYSl7cmV0dXJuIGVoKGEpfHxhPT09bnVsbHx8Z2goYSl9CmZ1bmN0aW9uIGhoKGEpe3JldHVybiBhIGluc3RhbmNlb2YgS2R9ZnVuY3Rpb24gaWgoYSl7cmV0dXJuIGhoKGEpfHxhPT09bnVsbHx8Z2goYSl9ZnVuY3Rpb24gamgoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBHZH1mdW5jdGlvbiBraChhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFBkfWZ1bmN0aW9uIGxoKGEpe3JldHVybiB0eXBlb2YgYT09PSJzdHJpbmcifWZ1bmN0aW9uIG1oKGEpe3JldHVybiBsaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIG5oKGEpe3JldHVybiB0eXBlb2YgYT09PSJib29sZWFuIn1mdW5jdGlvbiBvaChhKXtyZXR1cm4gbmgoYSl8fGdoKGEpfWZ1bmN0aW9uIHBoKGEpe3JldHVybiBuaChhKXx8YT09PW51bGx8fGdoKGEpfWZ1bmN0aW9uIHFoKGEpe3JldHVybiB0eXBlb2YgYT09PSJudW1iZXIifWZ1bmN0aW9uIGdoKGEpe3JldHVybiBhPT09dm9pZCAwfTtmdW5jdGlvbiByaChhKXtyZXR1cm4iIithfQpmdW5jdGlvbiBzaChhLGIpe3ZhciBjPVtdO3JldHVybiBjfTtmdW5jdGlvbiB0aChhLGIpe3ZhciBjPW5ldyBLZChhLGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKSxlPTA7ZTxkLmxlbmd0aDtlKyspZFtlXT10aGlzLmV2YWx1YXRlKGRbZV0pO3RyeXtyZXR1cm4gYi5hcHBseSh0aGlzLGQpfWNhdGNoKGcpe3Rocm93IGNiKGcpO319KTtjLlphKCk7cmV0dXJuIGN9CmZ1bmN0aW9uIHVoKGEsYil7dmFyIGM9bmV3IGtiLGQ7Zm9yKGQgaW4gYilpZihiLmhhc093blByb3BlcnR5KGQpKXt2YXIgZT1iW2RdO3liKGUpP2Muc2V0KGQsdGgoYSsiXyIrZCxlKSk6Q2QoZSk/Yy5zZXQoZCx1aChhKyJfIitkLGUpKTooQWIoZSl8fHpiKGUpfHx0eXBlb2YgZT09PSJib29sZWFuIikmJmMuc2V0KGQsZSl9Yy5aYSgpO3JldHVybiBjfTtmdW5jdGlvbiB3aChhLGIpe2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydEFwaVN1YmplY3QiLApjKX07ZnVuY3Rpb24geGgoYSxiKXtpZighbWgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIFNkKXRocm93IEVycm9yKCJBcmd1bWVudCBhY3R1YWwgY2Fubm90IGhhdmUgdHlwZSBQcm9taXNlLiBBc3NlcnRpb25zIG9uIGFzeW5jaHJvbm91cyBjb2RlIGFyZW4ndCBzdXBwb3J0ZWQuIik7dmFyIGM9e30sZD1uZXcga2I7cmV0dXJuIGQ9dWgoIkFzc2VydFRoYXRTdWJqZWN0IixjKX07ZnVuY3Rpb24geWgoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBiPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxjPVtdLGQ9dGhpcy5ULGU9MDtlPGIubGVuZ3RoOysrZSljLnB1c2goVGQoYltlXSxkKSk7cmV0dXJuIFVkKGEuYXBwbHkobnVsbCxjKSl9fWZ1bmN0aW9uIHpoKCl7Zm9yKHZhciBhPU1hdGgsYj1BaCxjPXt9LGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTthLmhhc093blByb3BlcnR5KGUpJiYoY1tlXT15aChhW2VdLmJpbmQoYSkpKX1yZXR1cm4gY307ZnVuY3Rpb24gQmgoYSl7cmV0dXJuIGEhPW51bGwmJlNiKGEsIl9fY3Z0XyIpfTtmdW5jdGlvbiBDaChhKXt2YXIgYjtyZXR1cm4gYn07ZnVuY3Rpb24gRGgoYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3RyeXtiPWRlY29kZVVSSUNvbXBvbmVudChhKX1jYXRjaChjKXt9cmV0dXJuIGJ9O2Z1bmN0aW9uIEVoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJKGEpfWNhdGNoKGIpe319O2Z1bmN0aW9uIEZoKGEpe3RyeXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhhKSl9Y2F0Y2goYil7fX07ZnVuY3Rpb24gR2goYSxiKXt2YXIgYz0hMTt2YXIgZD1KU09OLnBhcnNlKGEpO2lmKCFkKXRocm93IEVycm9yKCJJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBzdHJpbmcgd2FzIGdpdmVuLiIpO2M9SGgoZCxiKTtyZXR1cm4gY30KdmFyIEloPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspe2lmKGE9PT12b2lkIDApcmV0dXJuO2E9YVtiW2NdXX1yZXR1cm4gYX0sSmg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnByZUhpdDtpZihjKXt2YXIgZD1hWzBdO3N3aXRjaChkKXtjYXNlICJoaXREYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRIaXREYXRhKGFbMV0pLGEuc2xpY2UoMikpO2Nhc2UgIm1ldGFkYXRhIjpyZXR1cm4gYS5sZW5ndGg8Mj92b2lkIDA6SWgoYy5nZXRNZXRhZGF0YShhWzFdKSxhLnNsaWNlKDIpKTtjYXNlICJldmVudE5hbWUiOnJldHVybiBjLmdldEV2ZW50TmFtZSgpO2Nhc2UgImRlc3RpbmF0aW9uSWQiOnJldHVybiBjLmdldERlc3RpbmF0aW9uSWQoKTtkZWZhdWx0OnRocm93IEVycm9yKGQrIiBpcyBub3QgYSB2YWxpZCBmaWVsZCB0aGF0IGNhbiBiZSBhY2Nlc3NlZFxuICAgICAgICAgICAgICAgICAgICAgIGZyb20gUHJlSGl0IGRhdGEuIik7fX19LApLaD1mdW5jdGlvbihhLGIpe2lmKGEpe2lmKGEuY29udGV4dFZhbHVlIT09dm9pZCAwKXt2YXIgYzthOnt2YXIgZD1hLmNvbnRleHRWYWx1ZSxlPWQua2V5UGFydHM7aWYoZSYmZS5sZW5ndGghPT0wKXt2YXIgZj1kLm5hbWVzcGFjZVR5cGU7c3dpdGNoKGYpe2Nhc2UgMTpjPUpoKGUsYik7YnJlYWsgYTtjYXNlIDI6dmFyIGc9Yi5tYWNybztjPWc/Z1tlWzBdXTp2b2lkIDA7YnJlYWsgYTtkZWZhdWx0OnRocm93IEVycm9yKCJVbmtub3duIE5hbWVzcGFjZSBUeXBlIHVzZWQ6ICIrZik7fX1jPXZvaWQgMH1yZXR1cm4gY31pZihhLmJvb2xlYW5FeHByZXNzaW9uVmFsdWUhPT12b2lkIDApcmV0dXJuIEhoKGEuYm9vbGVhbkV4cHJlc3Npb25WYWx1ZSxiKTtpZihhLmJvb2xlYW5WYWx1ZSE9PXZvaWQgMClyZXR1cm4hIWEuYm9vbGVhblZhbHVlO2lmKGEuc3RyaW5nVmFsdWUhPT12b2lkIDApcmV0dXJuIFN0cmluZyhhLnN0cmluZ1ZhbHVlKTtpZihhLmludGVnZXJWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuaW50ZWdlclZhbHVlKTsKaWYoYS5kb3VibGVWYWx1ZSE9PXZvaWQgMClyZXR1cm4gTnVtYmVyKGEuZG91YmxlVmFsdWUpO3Rocm93IEVycm9yKCJVbmtub3duIGZpZWxkIHVzZWQgZm9yIHZhcmlhYmxlIG9mIHR5cGUgRXhwcmVzc2lvblZhbHVlOiIrYSk7fX0sSGg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmFyZ3M7aWYoIUFycmF5LmlzQXJyYXkoYyl8fGMubGVuZ3RoPT09MCl0aHJvdyBFcnJvcignSW52YWxpZCBib29sZWFuIGV4cHJlc3Npb24gZm9ybWF0LiBFeHBlY3RlZCAiYXJncyI6JytjKyIgcHJvcGVydHkgdG9cbiAgICAgICAgIGJlIG5vbi1lbXB0eSBhcnJheS4iKTt2YXIgZD1mdW5jdGlvbihnKXtyZXR1cm4gS2goZyxiKX07c3dpdGNoKGEudHlwZSl7Y2FzZSAxOmZvcih2YXIgZT0wO2U8Yy5sZW5ndGg7ZSsrKWlmKGQoY1tlXSkpcmV0dXJuITA7cmV0dXJuITE7Y2FzZSAyOmZvcih2YXIgZj0wO2Y8Yy5sZW5ndGg7ZisrKWlmKCFkKGNbZl0pKXJldHVybiExO3JldHVybiBjLmxlbmd0aD4wO2Nhc2UgMzpyZXR1cm4hZChjWzBdKTsKY2FzZSA0OnJldHVybiBKZyhkKGNbMF0pLGQoY1sxXSksITEsYi5yZWdleENhY2hlKTtjYXNlIDU6cmV0dXJuIExnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA2OnJldHVybiBRZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgNzpyZXR1cm4gSGcoZChjWzBdKSxkKGNbMV0pKTtjYXNlIDg6cmV0dXJuIEtnKGQoY1swXSksZChjWzFdKSk7Y2FzZSA5OnJldHVybiBQZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTA6cmV0dXJuIE5nKGQoY1swXSksZChjWzFdKSk7Y2FzZSAxMTpyZXR1cm4gT2coZChjWzBdKSxkKGNbMV0pKTtjYXNlIDEyOnJldHVybiBNZyhkKGNbMF0pLGQoY1sxXSkpO2Nhc2UgMTM6cmV0dXJuIElnKGQoY1swXSksU3RyaW5nKGQoY1sxXSkpKTtkZWZhdWx0OnRocm93IEVycm9yKCdJbnZhbGlkIGJvb2xlYW4gZXhwcmVzc2lvbiBmb3JtYXQuIEV4cGVjdGVkICJ0eXBlIiBwcm9wZXJ0eSB0b2JlIGEgcG9zaXRpdmUgaW50ZWdlciB3aGljaCBpcyBsZXNzIHRoYW4gMTQuJyk7fX07CmZ1bmN0aW9uIExoKGEpe2lmKCFtaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7fTtmdW5jdGlvbiBNaChhKXt2YXIgYj1UZChhKTtyZXR1cm4gbmcoYj8iIitiOiIiKX07ZnVuY3Rpb24gTmgoYSxiKXtpZighcWgoYSl8fCFxaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsibnVtYmVyIiwibnVtYmVyIl0sYXJndW1lbnRzKTtyZXR1cm4gRGIoYSxiKX07ZnVuY3Rpb24gT2goKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX07ZnVuY3Rpb24gUGgoYSl7aWYoYT09PW51bGwpcmV0dXJuIm51bGwiO2lmKGEgaW5zdGFuY2VvZiBHZClyZXR1cm4iYXJyYXkiO2lmKGEgaW5zdGFuY2VvZiBLZClyZXR1cm4iZnVuY3Rpb24iO2lmKGEgaW5zdGFuY2VvZiBQZCl7dmFyIGI9YS5nZXRWYWx1ZSgpO2lmKChiPT1udWxsP3ZvaWQgMDpiLmNvbnN0cnVjdG9yKT09PXZvaWQgMHx8Yi5jb25zdHJ1Y3Rvci5uYW1lPT09dm9pZCAwKXt2YXIgYz1TdHJpbmcoYik7cmV0dXJuIGMuc3Vic3RyaW5nKDgsYy5sZW5ndGgtMSl9cmV0dXJuIFN0cmluZyhiLmNvbnN0cnVjdG9yLm5hbWUpfXJldHVybiB0eXBlb2YgYX07ZnVuY3Rpb24gUWgoYSl7ZnVuY3Rpb24gYihjKXtyZXR1cm4gZnVuY3Rpb24oZCl7dHJ5e3JldHVybiBjKGQpfWNhdGNoKGUpeyhsZ3x8bWcuUG8pJiZhLmNhbGwodGhpcyxlLm1lc3NhZ2UpfX19cmV0dXJue3BhcnNlOmIoZnVuY3Rpb24oYyl7cmV0dXJuIFVkKEpTT04ucGFyc2UoYykpfSksc3RyaW5naWZ5OmIoZnVuY3Rpb24oYyl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KFRkKGMpKX0pLHB1YmxpY05hbWU6IkpTT04ifX07ZnVuY3Rpb24gUmgoYSl7cmV0dXJuIEliKFRkKGEsdGhpcy5UKSl9O2Z1bmN0aW9uIFNoKGEpe3JldHVybiBOdW1iZXIoVGQoYSx0aGlzLlQpKX07ZnVuY3Rpb24gVGgoYSl7cmV0dXJuIGE9PT1udWxsPyJudWxsIjphPT09dm9pZCAwPyJ1bmRlZmluZWQiOmEudG9TdHJpbmcoKX07ZnVuY3Rpb24gVWgoYSxiLGMpe3ZhciBkPW51bGwsZT0hMTtyZXR1cm4gZT9kOm51bGx9O3ZhciBBaD0iZmxvb3IgY2VpbCByb3VuZCBtYXggbWluIGFicyBwb3cgc3FydCIuc3BsaXQoIiAiKTtmdW5jdGlvbiBWaCgpe3ZhciBhPXt9O3JldHVybntXcjpmdW5jdGlvbihiKXtyZXR1cm4gYS5oYXNPd25Qcm9wZXJ0eShiKT9hW2JdOnZvaWQgMH0sS286ZnVuY3Rpb24oYixjKXthW2JdPWN9LHJlc2V0OmZ1bmN0aW9uKCl7YT17fX19fWZ1bmN0aW9uIFdoKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIEtkLnByb3RvdHlwZS5pbnZva2UuYXBwbHkoYSxbYl0uY29uY2F0KHcoT2EuYXBwbHkoMCxhcmd1bWVudHMpKSkpfX0KZnVuY3Rpb24gWGgoYSxiKXtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7fQpmdW5jdGlvbiBZaChhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJQaXhpZU1hcCJdLGFyZ3VtZW50cyk7fTt2YXIgWmg9e307dmFyICRoPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYjtpZihhIGluc3RhbmNlb2YgR2QpZm9yKHZhciBjPWEuRmEoKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF07YS5oYXMoZSkmJmIuc2V0KGUsYS5nZXQoZSkpfWVsc2UgaWYoYSBpbnN0YW5jZW9mIEtkKWZvcih2YXIgZj1hLkZhKCksZz0wO2c8Zi5sZW5ndGg7ZysrKXt2YXIgaD1mW2ddO2Iuc2V0KGgsYS5nZXQoaCkpfWVsc2UgZm9yKHZhciBsPTA7bDxhLmxlbmd0aDtsKyspYi5zZXQobCxhW2xdKTtyZXR1cm4gYn07ClpoLmtleXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5GYSgpKTtyZXR1cm4gbmV3IEdkfTsKWmgudmFsdWVzPWZ1bmN0aW9uKGEpe2RoKHRoaXMuZ2V0TmFtZSgpLGFyZ3VtZW50cyk7aWYoYSBpbnN0YW5jZW9mIEdkfHxhIGluc3RhbmNlb2YgS2R8fHR5cGVvZiBhPT09InN0cmluZyIpYT0kaChhKTtpZihhIGluc3RhbmNlb2Yga2J8fGEgaW5zdGFuY2VvZiBTZClyZXR1cm4gbmV3IEdkKGEuaGMoKSk7cmV0dXJuIG5ldyBHZH07ClpoLmVudHJpZXM9ZnVuY3Rpb24oYSl7ZGgodGhpcy5nZXROYW1lKCksYXJndW1lbnRzKTtpZihhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZHx8dHlwZW9mIGE9PT0ic3RyaW5nIilhPSRoKGEpO2lmKGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkKXJldHVybiBuZXcgR2QoYS5mYygpLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gbmV3IEdkKGIpfSkpO3JldHVybiBuZXcgR2R9OwpaaC5mcmVlemU9ZnVuY3Rpb24oYSl7KGEgaW5zdGFuY2VvZiBrYnx8YSBpbnN0YW5jZW9mIFNkfHxhIGluc3RhbmNlb2YgR2R8fGEgaW5zdGFuY2VvZiBLZCkmJmEuWmEoKTtyZXR1cm4gYX07WmguZGVsZXRlPWZ1bmN0aW9uKGEsYil7aWYoYSBpbnN0YW5jZW9mIGtiJiYhYS5IYigpKXJldHVybiBhLnJlbW92ZShiKSwhMDtyZXR1cm4hMX07ZnVuY3Rpb24gTChhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkPWEuVC54YigpO2lmKCFkKXRocm93IEVycm9yKCJNaXNzaW5nIHByb2dyYW0gc3RhdGUuIik7aWYoZC5pdCl7dHJ5e2QuUm4uYXBwbHkobnVsbCxbYl0uY29uY2F0KHcoYykpKX1jYXRjaChlKXt0aHJvdyBzYigiVEFHR0lORyIsMjEpLGU7fXJldHVybn1kLlJuLmFwcGx5KG51bGwsW2JdLmNvbmNhdCh3KGMpKSl9O3ZhciBhaT1mdW5jdGlvbigpe3RoaXMuSz17fTt0aGlzLkg9e307dGhpcy5OPSEwO307YWkucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuY29udGFpbnMoYSk/dGhpcy5LW2FdOnZvaWQgMDtyZXR1cm4gY307YWkucHJvdG90eXBlLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLksuaGFzT3duUHJvcGVydHkoYSl9OwphaS5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYixjKXtpZih0aGlzLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZih0aGlzLkguaGFzT3duUHJvcGVydHkoYSkpdGhyb3cgRXJyb3IoIkF0dGVtcHRpbmcgdG8gYWRkIGFuIEFQSSB3aXRoIGFuIGV4aXN0aW5nIHByaXZhdGUgQVBJIG5hbWU6ICIrYSsiLiIpO3RoaXMuS1thXT1jP3ZvaWQgMDp5YihiKT90aChhLGIpOnVoKGEsYil9O2Z1bmN0aW9uIGJpKGEsYil7dmFyIGM9dm9pZCAwO3JldHVybiBjfTtmdW5jdGlvbiBjaSgpe3ZhciBhPXt9OwpyZXR1cm4gYX07dmFyIGRpPXt9LGVpPShkaVtGLkQuc2FdPSJnY3UiLGRpW0YuRC5laF09ImVwdCIsZGlbRi5ELlNiXT0iZ2NsZ2IiLGRpW0YuRC5sYl09ImdjbGF3IixkaVtGLkQuemxdPSJnY2xpZF9sZW4iLGRpW0YuRC5CZV09ImdjbGdzIixkaVtGLkQuQ2VdPSJnY2xscCIsZGlbRi5ELkRlXT0iZ2Nsc3QiLGRpW0YuRC5FZF09ImF1aWQiLGRpW0YuRC5CbF09ImFlIixkaVtGLkQuQ2ZdPSJkc2NudCIsZGlbRi5ELkRmXT0iZmNudHIiLGRpW0YuRC5FZl09ImZsbmciLGRpW0YuRC5GZl09Im1pZCIsZGlbRi5ELndpXT0iYnR0eXBlIixkaVtGLkQuS2JdPSJnYWNpZCIsZGlbRi5ELkdkXT0ibGFiZWwiLGRpW0YuRC5GZV09ImNhcGkiLGRpW0YuRC5qaF09InBzY2RsIixkaVtGLkQuZWJdPSJjdXJyZW5jeV9jb2RlIixkaVtGLkQuR2VdPSJ2ZGx0diIsZGlbRi5ELmtoXT0iY2xvY3QiLGRpW0YuRC5FbF09Il9kYmciLGRpW0YuRC5JZV09Im9lZGVsZCIsZGlbRi5ELlZjXT0iZWRpZCIsZGlbRi5ELk1kXT0iZXZuaWQiLApkaVtGLkQuRWldPSJldmppZCIsZGlbRi5ELk5kXT0iZXhjaWQiLGRpW0YuRC5yaF09ImdhYyIsZGlbRi5ELkplXT0iZ2FjZ2IiLGRpW0YuRC5NbF09ImdhY21jb3YiLGRpW0YuRC5LZV09ImdkcHIiLGRpW0YuRC5YY109ImdkaWQiLGRpW0YuRC5MZV09Il9uZyIsZGlbRi5ELmNxXT0iX29ubyIsZGlbRi5ELnRoXT0iZ3BwX3NpZCIsZGlbRi5ELnVoXT0iZ3BwIixkaVtGLkQuUGxdPSJnc2FleHAiLGRpW0YuRC5WZl09Il90dSIsZGlbRi5ELk1lXT0iZnJtIixkaVtGLkQuS2ldPSJndG1fdXAiLGRpW0YuRC5QZF09ImxwcyIsZGlbRi5ELkxpXT0iZGlkIixkaVtGLkQuUWRdPSJmY250ciIsZGlbRi5ELlJkXT0iZmxuZyIsZGlbRi5ELlNkXT0ibWlkIixkaVtGLkQuTmVdPXZvaWQgMCxkaVtGLkQuTWJdPSJ0aWJhIixkaVtGLkQuV2JdPSJyZHAiLGRpW0YuRC54Y109ImVjc2lkIixkaVtGLkQuWmZdPSJnYV91aWQiLGRpW0YuRC5VZF09ImRlbG9wYyIsZGlbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IiwKZGlbRi5ELlBhXT0ib2lkIixkaVtGLkQuZG1dPSJvaWRzcmMiLGRpW0YuRC5mbV09InVwdGdzIixkaVtGLkQuY2ddPSJ1YWEiLGRpW0YuRC5kZ109InVhYiIsZGlbRi5ELmVnXT0idWFmdmwiLGRpW0YuRC5mZ109InVhbWIiLGRpW0YuRC5nZ109InVhbSIsZGlbRi5ELmhnXT0idWFwIixkaVtGLkQuaWddPSJ1YXB2IixkaVtGLkQuamddPSJ1YXciLGRpW0YuRC5nbV09ImVjX2xhdCIsZGlbRi5ELmhtXT0iZWNfbWV0YSIsZGlbRi5ELmltXT0iZWNfbSIsZGlbRi5ELmptXT0iZWNfc2VsIixkaVtGLkQua21dPSJlY19zIixkaVtGLkQuQmNdPSJlY19tb2RlIixkaVtGLkQuZmJdPSJ1c2VySWQiLGRpW0YuRC5rZ109InVzX3ByaXZhY3kiLGRpW0YuRC5RYV09InZhbHVlIixkaVtGLkQucW1dPSJtY292IixkaVtGLkQuV2ldPSJobiIsZGlbRi5ELlZtXT0iZ3RtX2VlIixkaVtGLkQuWWldPSJ1aXAiLGRpW0YuRC5KaF09Im10IixkaVtGLkQuZGVdPSJucGEiLGRpW0YuRC5ZcV09InNnX3VjIixkaVtGLkQueWldPQpudWxsLGRpW0YuRC5iZF09bnVsbCxkaVtGLkQudGJdPW51bGwsZGlbRi5ELkhhXT1udWxsLGRpW0YuRC56YV09bnVsbCxkaVtGLkQuVWFdPW51bGwsZGlbRi5ELlBlXT1udWxsLGRpW0YuRC5lZF09bnVsbCxkaVtGLkQuc2hdPW51bGwsZGlbRi5ELkJkXT1udWxsLGRpW0YuRC5DZF09bnVsbCxkaVtGLkQuZmhdPW51bGwsZGlbRi5ELmdoXT1udWxsLGRpW0YuRC5UYV09bnVsbCxkaVtGLkQuV2NdPW51bGwsZGkpO2Z1bmN0aW9uIGZpKGEsYil7aWYoYSl7dmFyIGM9YS5zcGxpdCgieCIpO2MubGVuZ3RoPT09MiYmKGdpKGIsInVfdyIsY1swXSksZ2koYiwidV9oIixjWzFdKSl9fWZ1bmN0aW9uIGhpKGEpe3ZhciBiPWlpO2I9Yj09PXZvaWQgMD9qaTpiO3JldHVybiBraShsaShhLGIpKX1mdW5jdGlvbiBraShhKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4hIWJ9KS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIigiK1ttaShiLnZhbHVlKSxtaShiLnF1YW50aXR5KSxtaShiLml0ZW1faWQpLG1pKGIuc3RhcnRfZGF0ZSksbWkoYi5lbmRfZGF0ZSldLmpvaW4oIioiKSsiKSJ9KS5qb2luKCIiKX0KZnVuY3Rpb24gbGkoYSxiKXtyZXR1cm4oYXx8W10pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4hIWN9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJue2l0ZW1faWQ6YihjKSxxdWFudGl0eTpjLnF1YW50aXR5LHZhbHVlOmMucHJpY2Usc3RhcnRfZGF0ZTpjLnN0YXJ0X2RhdGUsZW5kX2RhdGU6Yy5lbmRfZGF0ZX19KX1mdW5jdGlvbiBqaShhKXtyZXR1cm5bYS5pdGVtX2lkLGEuaWQsYS5pdGVtX25hbWVdLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIhPW51bGx9KX1mdW5jdGlvbiBuaShhKXtpZihhJiZhLmxlbmd0aClyZXR1cm4gYS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuZXN0aW1hdGVkX2RlbGl2ZXJ5X2RhdGU/Yi5lc3RpbWF0ZWRfZGVsaXZlcnlfZGF0ZToiIn0pLmpvaW4oIiwiKX1mdW5jdGlvbiBnaShhLGIsYyl7Yz09PXZvaWQgMHx8Yz09PW51bGx8fGM9PT0iIiYmIXlnW2JdfHwoYVtiXT1jKX0KZnVuY3Rpb24gbWkoYSl7cmV0dXJuIHR5cGVvZiBhIT09Im51bWJlciImJnR5cGVvZiBhIT09InN0cmluZyI/IiI6YS50b1N0cmluZygpfTtmdW5jdGlvbiBvaSgpe3RoaXMuYmxvY2tTaXplPS0xfTtmdW5jdGlvbiBwaShhLGIpe3RoaXMuYmxvY2tTaXplPS0xO3RoaXMuYmxvY2tTaXplPTY0O3RoaXMuTj1SYS5VaW50OEFycmF5P25ldyBVaW50OEFycmF5KHRoaXMuYmxvY2tTaXplKTpBcnJheSh0aGlzLmJsb2NrU2l6ZSk7dGhpcy5SPXRoaXMuSz0wO3RoaXMuSD1bXTt0aGlzLmZhPWE7dGhpcy5aPWI7dGhpcy5qYT1SYS5JbnQzMkFycmF5P25ldyBJbnQzMkFycmF5KDY0KTpBcnJheSg2NCk7cWk9PT12b2lkIDAmJihSYS5JbnQzMkFycmF5P3FpPW5ldyBJbnQzMkFycmF5KHJpKTpxaT1yaSk7dGhpcy5yZXNldCgpfVNhKHBpLG9pKTtmb3IodmFyIHNpPVtdLHRpPTA7dGk8NjM7dGkrKylzaVt0aV09MDt2YXIgdWk9W10uY29uY2F0KDEyOCxzaSk7CnBpLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuUj10aGlzLks9MDt2YXIgYTtpZihSYS5JbnQzMkFycmF5KWE9bmV3IEludDMyQXJyYXkodGhpcy5aKTtlbHNle3ZhciBiPXRoaXMuWixjPWIubGVuZ3RoO2lmKGM+MCl7Zm9yKHZhciBkPUFycmF5KGMpLGU9MDtlPGM7ZSsrKWRbZV09YltlXTthPWR9ZWxzZSBhPVtdfXRoaXMuSD1hfTsKdmFyIHZpPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1hLk4sYz1hLmphLGQ9MCxlPTA7ZTxiLmxlbmd0aDspY1tkKytdPWJbZV08PDI0fGJbZSsxXTw8MTZ8YltlKzJdPDw4fGJbZSszXSxlPWQqNDtmb3IodmFyIGY9MTY7Zjw2NDtmKyspe3ZhciBnPWNbZi0xNV18MCxoPWNbZi0yXXwwO2NbZl09KChjW2YtMTZdfDApKygoZz4+Pjd8Zzw8MjUpXihnPj4+MTh8Zzw8MTQpXmc+Pj4zKXwwKSsoKGNbZi03XXwwKSsoKGg+Pj4xN3xoPDwxNSleKGg+Pj4xOXxoPDwxMyleaD4+PjEwKXwwKXwwfWZvcih2YXIgbD1hLkhbMF18MCxuPWEuSFsxXXwwLHA9YS5IWzJdfDAscT1hLkhbM118MCxyPWEuSFs0XXwwLHQ9YS5IWzVdfDAsdT1hLkhbNl18MCx2PWEuSFs3XXwwLHg9MDt4PDY0O3grKyl7dmFyIHk9KChsPj4+MnxsPDwzMCleKGw+Pj4xM3xsPDwxOSleKGw+Pj4yMnxsPDwxMCkpKyhsJm5ebCZwXm4mcCl8MCx6PSh2Kygocj4+PjZ8cjw8MjYpXihyPj4+MTF8cjw8MjEpXihyPj4+MjV8cjw8NykpfAowKSsoKChyJnRefnImdSkrKHFpW3hdfDApfDApKyhjW3hdfDApfDApfDA7dj11O3U9dDt0PXI7cj1xK3p8MDtxPXA7cD1uO249bDtsPXoreXwwfWEuSFswXT1hLkhbMF0rbHwwO2EuSFsxXT1hLkhbMV0rbnwwO2EuSFsyXT1hLkhbMl0rcHwwO2EuSFszXT1hLkhbM10rcXwwO2EuSFs0XT1hLkhbNF0rcnwwO2EuSFs1XT1hLkhbNV0rdHwwO2EuSFs2XT1hLkhbNl0rdXwwO2EuSFs3XT1hLkhbN10rdnwwfTsKcGkucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihhLGIpe2I9PT12b2lkIDAmJihiPWEubGVuZ3RoKTt2YXIgYz0wLGQ9dGhpcy5LO2lmKHR5cGVvZiBhPT09InN0cmluZyIpZm9yKDtjPGI7KXRoaXMuTltkKytdPWEuY2hhckNvZGVBdChjKyspLGQ9PXRoaXMuYmxvY2tTaXplJiYodmkodGhpcyksZD0wKTtlbHNle3ZhciBlLGY9dHlwZW9mIGE7ZT1mIT0ib2JqZWN0Ij9mOmE/QXJyYXkuaXNBcnJheShhKT8iYXJyYXkiOmY6Im51bGwiO2lmKGU9PSJhcnJheSJ8fGU9PSJvYmplY3QiJiZ0eXBlb2YgYS5sZW5ndGg9PSJudW1iZXIiKWZvcig7YzxiOyl7dmFyIGc9YVtjKytdO2lmKCEoIm51bWJlciI9PXR5cGVvZiBnJiYwPD1nJiYyNTU+PWcmJmc9PShnfDApKSl0aHJvdyBFcnJvcigibWVzc2FnZSBtdXN0IGJlIGEgYnl0ZSBhcnJheSIpO3RoaXMuTltkKytdPWc7ZD09dGhpcy5ibG9ja1NpemUmJih2aSh0aGlzKSxkPTApfWVsc2UgdGhyb3cgRXJyb3IoIm1lc3NhZ2UgbXVzdCBiZSBzdHJpbmcgb3IgYXJyYXkiKTsKfXRoaXMuSz1kO3RoaXMuUis9Yn07cGkucHJvdG90eXBlLmRpZ2VzdD1mdW5jdGlvbigpe3ZhciBhPVtdLGI9dGhpcy5SKjg7dGhpcy5LPDU2P3RoaXMudXBkYXRlKHVpLDU2LXRoaXMuSyk6dGhpcy51cGRhdGUodWksdGhpcy5ibG9ja1NpemUtKHRoaXMuSy01NikpO2Zvcih2YXIgYz02MztjPj01NjtjLS0pdGhpcy5OW2NdPWImMjU1LGIvPTI1Njt2aSh0aGlzKTtmb3IodmFyIGQ9MCxlPTA7ZTx0aGlzLmZhO2UrKylmb3IodmFyIGY9MjQ7Zj49MDtmLT04KWFbZCsrXT10aGlzLkhbZV0+PmYmMjU1O3JldHVybiBhfTsKdmFyIHJpPVsxMTE2MzUyNDA4LDE4OTk0NDc0NDEsMzA0OTMyMzQ3MSwzOTIxMDA5NTczLDk2MTk4NzE2MywxNTA4OTcwOTkzLDI0NTM2MzU3NDgsMjg3MDc2MzIyMSwzNjI0MzgxMDgwLDMxMDU5ODQwMSw2MDcyMjUyNzgsMTQyNjg4MTk4NywxOTI1MDc4Mzg4LDIxNjIwNzgyMDYsMjYxNDg4ODEwMywzMjQ4MjIyNTgwLDM4MzUzOTA0MDEsNDAyMjIyNDc3NCwyNjQzNDcwNzgsNjA0ODA3NjI4LDc3MDI1NTk4MywxMjQ5MTUwMTIyLDE1NTUwODE2OTIsMTk5NjA2NDk4NiwyNTU0MjIwODgyLDI4MjE4MzQzNDksMjk1Mjk5NjgwOCwzMjEwMzEzNjcxLDMzMzY1NzE4OTEsMzU4NDUyODcxMSwxMTM5MjY5OTMsMzM4MjQxODk1LDY2NjMwNzIwNSw3NzM1Mjk5MTIsMTI5NDc1NzM3MiwxMzk2MTgyMjkxLDE2OTUxODM3MDAsMTk4NjY2MTA1MSwyMTc3MDI2MzUwLDI0NTY5NTYwMzcsMjczMDQ4NTkyMSwyODIwMzAyNDExLDMyNTk3MzA4MDAsMzM0NTc2NDc3MSwzNTE2MDY1ODE3LDM2MDAzNTI4MDQsCjQwOTQ1NzE5MDksMjc1NDIzMzQ0LDQzMDIyNzczNCw1MDY5NDg2MTYsNjU5MDYwNTU2LDg4Mzk5Nzg3Nyw5NTgxMzk1NzEsMTMyMjgyMjIxOCwxNTM3MDAyMDYzLDE3NDc4NzM3NzksMTk1NTU2MjIyMiwyMDI0MTA0ODE1LDIyMjc3MzA0NTIsMjM2MTg1MjQyNCwyNDI4NDM2NDc0LDI3NTY3MzQxODcsMzIwNDAzMTQ3OSwzMzI5MzI1Mjk4XSxxaTtmdW5jdGlvbiB3aSgpe3BpLmNhbGwodGhpcyw4LHhpKX1TYSh3aSxwaSk7dmFyIHhpPVsxNzc5MDMzNzAzLDMxNDQxMzQyNzcsMTAxMzkwNDI0MiwyNzczNDgwNzYyLDEzNTk4OTMxMTksMjYwMDgyMjkyNCw1Mjg3MzQ2MzUsMTU0MTQ1OTIyNV07dmFyIHlpPS9eWzAtOUEtRmEtZl17NjR9JC87ZnVuY3Rpb24gemkoYSl7dHJ5e3JldHVybihuZXcgVGV4dEVuY29kZXIpLmVuY29kZShhKX1jYXRjaChiKXtyZXR1cm4gWmIoYSl9fWZ1bmN0aW9uIEFpKGEpe3ZhciBiPUE7aWYoYT09PSIifHxhPT09ImUwIilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEpO3ZhciBjO2lmKChjPWIuY3J5cHRvKT09bnVsbD8wOmMuc3VidGxlKXtpZih5aS50ZXN0KGEpKXJldHVybiBQcm9taXNlLnJlc29sdmUoYSk7dHJ5e3ZhciBkPXppKGEpO3JldHVybiBiLmNyeXB0by5zdWJ0bGUuZGlnZXN0KCJTSEEtMjU2IixkKS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBCaShlLGIpfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4iZTIifSl9Y2F0Y2goZSl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSgiZTIiKX19ZWxzZSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJlMSIpfQpmdW5jdGlvbiBDaShhKXt0cnl7dmFyIGI9bmV3IHdpO2IudXBkYXRlKHppKGEpKTtyZXR1cm4gYi5kaWdlc3QoKX1jYXRjaChjKXtyZXR1cm4iZTIifX1mdW5jdGlvbiBEaShhKXt2YXIgYj1BO2lmKGE9PT0iInx8YT09PSJlMCJ8fHlpLnRlc3QoYSkpcmV0dXJuIGE7dmFyIGM9Q2koYSk7aWYoYz09PSJlMiIpcmV0dXJuImUyIjt0cnl7cmV0dXJuIEJpKGMsYil9Y2F0Y2goZCl7cmV0dXJuImUyIn19ZnVuY3Rpb24gQmkoYSxiKXt2YXIgYz1BcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGEpKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoZCl9KS5qb2luKCIiKTtyZXR1cm4gYi5idG9hKGMpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIil9O2Z1bmN0aW9uIEVpKCl7Zm9yKHZhciBhPSExLGI9ITEsYz0wO2E9PT1iOylpZihhPURiKDAsMSk9PT0wLGI9RGIoMCwxKT09PTAsYysrLGM+MzApcmV0dXJuO3JldHVybiBhfXZhciBHaT17c2s6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBGaS5zayhhLGIsYyl9fSxIaT1mdW5jdGlvbigpe3RoaXMuc3R1ZGllcz17fTt0aGlzLkg9RWl9OwpIaS5wcm90b3R5cGUuc2s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXRoaXMuc3R1ZGllc1tiXTtpZighKChjPT09dm9pZCAwP0RiKDAsOTk5OSk6YyUxRTQpPGQucHJvYmFiaWxpdHkqKGQuY29udHJvbElkMj80OjIpKjFFNCkpcmV0dXJuIGE7YTp7dmFyIGU9ZC5zdHVkeUlkLGY9ZC5leHBlcmltZW50SWQsZz1kLmNvbnRyb2xJZCxoPWQuY29udHJvbElkMjtpZighKChhLmV4cHx8e30pW2ZdfHwoYS5leHB8fHt9KVtnXXx8aCYmKGEuZXhwfHx7fSlbaF0pKXt2YXIgbD1jIT09dm9pZCAwP2MlMj09PTA6dGhpcy5IKCk7aWYobCE9PXZvaWQgMCl7dmFyIG49bD8wOjE7aWYoaCl7dmFyIHA9YyE9PXZvaWQgMD8oYz4+MSklMj09PTA6dGhpcy5IKCk7aWYocD09PXZvaWQgMClicmVhayBhO258PShwPzA6MSk8PDF9bj09PTA/SWkoYSxmLGUpOm49PT0xP0lpKGEsZyxlKTpuPT09MiYmSWkoYSxoLGUpfX19cmV0dXJuIGF9Owp2YXIgS2k9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdP0ppKGMsYil8fCEhKGEuZXhwfHx7fSlbYy5zdHVkaWVzW2JdLmV4cGVyaW1lbnRJZF06ITF9LExpPWZ1bmN0aW9uKGEsYil7dmFyIGM9Rmk7cmV0dXJuIGMuc3R1ZGllc1tiXSYmYy5zdHVkaWVzW2JdLmNvbnRyb2xJZCYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkXTohMX0sTWk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1GaTtyZXR1cm4gYy5zdHVkaWVzW2JdJiZjLnN0dWRpZXNbYl0uY29udHJvbElkMiYmIUppKGMsYik/ISEoYS5leHB8fHt9KVtjLnN0dWRpZXNbYl0uY29udHJvbElkMl06ITF9LE5pPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEuZXhwfHx7fSxkPW0oT2JqZWN0LmtleXMoYykubWFwKE51bWJlcikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2lmKGNbZl09PT1iKXJldHVybiBmfX0sSmk9ZnVuY3Rpb24oYSwKYil7cmV0dXJuISFhLnN0dWRpZXNbYl0uYWN0aXZlfHxhLnN0dWRpZXNbYl0ucHJvYmFiaWxpdHk+LjV9LElpPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLmV4cHx8e307ZFtiXT1jO2EuZXhwPWR9LEZpPW5ldyBIaTt2YXIgaWo9ZnVuY3Rpb24oKXt0aGlzLkg9QS5nb29nbGVfdGFnX21hbmFnZXI9QS5nb29nbGVfdGFnX21hbmFnZXJ8fHt9fSxqajtmdW5jdGlvbiBraihhLGIpe2xqKCk7dmFyIGM9amo7cmV0dXJuIGMuSFthXT1jLkhbYV18fGIoKX1mdW5jdGlvbiBtaihhKXtsaigpO3JldHVybiBqai5IW2FdfWZ1bmN0aW9uIG5qKGEsYil7bGooKTtqai5IW2FdPWJ9ZnVuY3Rpb24gb2ooYSl7dmFyIGI9RSg1KTtsaigpO3ZhciBjPWpqO2MuSFtiXT1jLkhbYl18fGF9ZnVuY3Rpb24gcGooKXt2YXIgYT1FKDE5KTtsaigpO3ZhciBiPWpqO3JldHVybiBiLkhbYV09Yi5IW2FdfHx7fX1mdW5jdGlvbiBxaigpe3ZhciBhPUUoMTkpO2xqKCk7cmV0dXJuIGpqLkhbYV19ZnVuY3Rpb24gcmooKXtsaigpO3ZhciBhPWpqLGI9YS5ILnNlcXVlbmNlfHwxO2EuSC5zZXF1ZW5jZT1iKzE7cmV0dXJuIGJ9ZnVuY3Rpb24gbGooKXtqanx8KGpqPW5ldyBpail9O3ZhciBzaj1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAxOnJldHVybiAwO2Nhc2UgNDkxOnJldHVybiAxMjtjYXNlIDQ4MDpyZXR1cm4gMTE7Y2FzZSA0OTk6cmV0dXJuIDEwO2Nhc2UgNTAwOnJldHVybiA2O2Nhc2UgNDIxOnJldHVybiA5O2Nhc2UgNTYxOnJldHVybiAxNztjYXNlIDQ4MjpyZXR1cm4gMTU7Y2FzZSA1NzA6cmV0dXJuIDE5O2Nhc2UgNDk1OnJldHVybiAxMztjYXNlIDUxNDpyZXR1cm4gMTY7Y2FzZSA1NzM6cmV0dXJuIDE4O2Nhc2UgMjM1OnJldHVybiA4O2Nhc2UgNTM6cmV0dXJuIDE7Y2FzZSA1NDpyZXR1cm4gMjtjYXNlIDUyOnJldHVybiA0O2Nhc2UgNzU6cmV0dXJuIDN9fSx0aj1mdW5jdGlvbihhLGIpe2EuTltiXT0hMDt2YXIgYz1zaihiKTtjIT09dm9pZCAwJiYoV2ZbY109ITApfSxNPWZ1bmN0aW9uKGEpe3JldHVybiEhdWouTlthXX0sdWo9bmV3IGZ1bmN0aW9uKCl7dGhpcy5OPVtdO3RoaXMuSz1bXTt0aGlzLkg9W107CnRqKHRoaXMsMTMyKTt2YXIgYT1OZig2LDZFNCk7WGZbMV09YTt2YXIgYj1OZig3LDEpO1hmWzNdPWI7dmFyIGM9TmYoMzUsNTApO1hmWzJdPWM7dmFyIGQ9TmYoNjksMTc3NjQ0ODkyMCk7WGZbNF09ZDsKdGoodGhpcyw0MzUpO3RqKHRoaXMsMTQxKTsKfTt2YXIgdmo9ZnVuY3Rpb24oKXt0aGlzLkg9bmV3IFNldDt0aGlzLks9bmV3IFNldH0seGo9ZnVuY3Rpb24oYSl7dmFyIGI9d2ouSDthPWE9PT12b2lkIDA/W106YTt2YXIgYz1bXS5jb25jYXQodyhiLkgpKS5jb25jYXQoW10uY29uY2F0KHcoYi5LKSkpLmNvbmNhdChhKTtjLnNvcnQoZnVuY3Rpb24oZCxlKXtyZXR1cm4gZC1lfSk7cmV0dXJuIGN9LHlqPWZ1bmN0aW9uKCl7dmFyIGE9W10uY29uY2F0KHcod2ouSC5IKSk7YS5zb3J0KGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGItY30pO3JldHVybiBhfSx6aj1mdW5jdGlvbigpe3ZhciBhPXdqLkgsYj1FKDQ0KTthLkg9bmV3IFNldDtpZihiIT09IiIpZm9yKHZhciBjPW0oYi5zcGxpdCgifiIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9TnVtYmVyKGQudmFsdWUpO2lzTmFOKGUpfHxhLkguYWRkKGUpfX07dmFyIEFqPXt9LEJqPXtfX2NsOjEsX19lY2w6MSxfX2VobDoxLF9fZXZsOjEsX19mYWw6MSxfX2ZpbDoxLF9fZnNsOjEsX19obDoxLF9famVsOjEsX19sY2w6MSxfX3NkbDoxLF9fdGw6MSxfX3l0bDoxfSxDaj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHtfX3BhdXNlZDoxLF9fdGc6MX0sQmopLERqLEVqPSExO0RqPUVqO3ZhciBGaj0iIjtBai5xaj1Gajt2YXIgd2o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPW5ldyB2an07dmFyIEdqPS86WzAtOV0rJC8sSGo9L15cZCtcLmZsc1wuZG91YmxlY2xpY2tcLm5ldCQvO2Z1bmN0aW9uIElqKGEsYixjLGQpe3ZhciBlPUpqKGEsISFkLGIpLGYsZztyZXR1cm4gYz8oZz1lW2JdKSE9bnVsbD9nOltdOihmPWVbYl0pPT1udWxsP3ZvaWQgMDpmWzBdfWZ1bmN0aW9uIEpqKGEsYixjKXtmb3IodmFyIGQ9e30sZT1tKGEuc3BsaXQoIiYiKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPW0oZi52YWx1ZS5zcGxpdCgiPSIpKSxoPWcubmV4dCgpLnZhbHVlLGw9eWEoZyksbj1kZWNvZGVVUklDb21wb25lbnQoaC5yZXBsYWNlKC9cKy9nLCIgIikpO2lmKGM9PT12b2lkIDB8fG49PT1jKXt2YXIgcD1sLmpvaW4oIj0iKTtkW25dfHwoZFtuXT1bXSk7ZFtuXS5wdXNoKGI/cDpkZWNvZGVVUklDb21wb25lbnQocC5yZXBsYWNlKC9cKy9nLCIgIikpKX19cmV0dXJuIGR9CmZ1bmN0aW9uIEtqKGEpe3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEpfWNhdGNoKGIpe319ZnVuY3Rpb24gTGooYSxiLGMsZCxlKXtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7aWYoYj09PSJwcm90b2NvbCJ8fGI9PT0icG9ydCIpYS5wcm90b2NvbD1NaihhLnByb3RvY29sKXx8TWooQS5sb2NhdGlvbi5wcm90b2NvbCk7Yj09PSJwb3J0Ij9hLnBvcnQ9U3RyaW5nKE51bWJlcihhLmhvc3RuYW1lP2EucG9ydDpBLmxvY2F0aW9uLnBvcnQpfHwoYS5wcm90b2NvbD09PSJodHRwIj84MDphLnByb3RvY29sPT09Imh0dHBzIj80NDM6IiIpKTpiPT09Imhvc3QiJiYoYS5ob3N0bmFtZT0oYS5ob3N0bmFtZXx8QS5sb2NhdGlvbi5ob3N0bmFtZSkucmVwbGFjZShHaiwiIikudG9Mb3dlckNhc2UoKSk7cmV0dXJuIE5qKGEsYixjLGQsZSl9CmZ1bmN0aW9uIE5qKGEsYixjLGQsZSl7dmFyIGYsZz1NaihhLnByb3RvY29sKTtiJiYoYj1TdHJpbmcoYikudG9Mb3dlckNhc2UoKSk7c3dpdGNoKGIpe2Nhc2UgInVybF9ub19mcmFnbWVudCI6Zj1PaihhKTticmVhaztjYXNlICJwcm90b2NvbCI6Zj1nO2JyZWFrO2Nhc2UgImhvc3QiOmY9YS5ob3N0bmFtZS5yZXBsYWNlKEdqLCIiKS50b0xvd2VyQ2FzZSgpO2lmKGMpe3ZhciBoPS9ed3d3XGQqXC4vLmV4ZWMoZik7aCYmaFswXSYmKGY9Zi5zdWJzdHJpbmcoaFswXS5sZW5ndGgpKX1icmVhaztjYXNlICJwb3J0IjpmPVN0cmluZyhOdW1iZXIoYS5wb3J0KXx8KGc9PT0iaHR0cCI/ODA6Zz09PSJodHRwcyI/NDQzOiIiKSk7YnJlYWs7Y2FzZSAicGF0aCI6YS5wYXRobmFtZXx8YS5ob3N0bmFtZXx8c2IoIlRBR0dJTkciLDEpO2Y9YS5wYXRobmFtZS5zdWJzdHJpbmcoMCwxKT09PSIvIj9hLnBhdGhuYW1lOiIvIithLnBhdGhuYW1lO3ZhciBsPWYuc3BsaXQoIi8iKTsoZHx8W10pLmluZGV4T2YobFtsLmxlbmd0aC0KMV0pPj0wJiYobFtsLmxlbmd0aC0xXT0iIik7Zj1sLmpvaW4oIi8iKTticmVhaztjYXNlICJxdWVyeSI6Zj1hLnNlYXJjaC5yZXBsYWNlKCI/IiwiIik7ZSYmKGY9SWooZixlLCExKSk7YnJlYWs7Y2FzZSAiZXh0ZW5zaW9uIjp2YXIgbj1hLnBhdGhuYW1lLnNwbGl0KCIuIik7Zj1uLmxlbmd0aD4xP25bbi5sZW5ndGgtMV06IiI7Zj1mLnNwbGl0KCIvIilbMF07YnJlYWs7Y2FzZSAiZnJhZ21lbnQiOmY9YS5oYXNoLnJlcGxhY2UoIiMiLCIiKTticmVhaztkZWZhdWx0OmY9YSYmYS5ocmVmfXJldHVybiBmfWZ1bmN0aW9uIE1qKGEpe3JldHVybiBhP2EucmVwbGFjZSgiOiIsIiIpLnRvTG93ZXJDYXNlKCk6IiJ9ZnVuY3Rpb24gT2ooYSl7dmFyIGI9IiI7aWYoYSYmYS5ocmVmKXt2YXIgYz1hLmhyZWYuaW5kZXhPZigiIyIpO2I9YzwwP2EuaHJlZjphLmhyZWYuc3Vic3RyaW5nKDAsYyl9cmV0dXJuIGJ9dmFyIFBqPXt9LFFqPTA7CmZ1bmN0aW9uIFJqKGEpe3ZhciBiPVBqW2FdO2lmKCFiKXt2YXIgYz1CLmNyZWF0ZUVsZW1lbnQoImEiKTthJiYoYy5ocmVmPWEpO3ZhciBkPWMucGF0aG5hbWU7ZFswXSE9PSIvIiYmKGF8fHNiKCJUQUdHSU5HIiwxKSxkPSIvIitkKTt2YXIgZT1jLmhvc3RuYW1lLnJlcGxhY2UoR2osIiIpO2I9e2hyZWY6Yy5ocmVmLHByb3RvY29sOmMucHJvdG9jb2wsaG9zdDpjLmhvc3QsaG9zdG5hbWU6ZSxwYXRobmFtZTpkLHNlYXJjaDpjLnNlYXJjaCxoYXNoOmMuaGFzaCxwb3J0OmMucG9ydH07UWo8NSYmKFBqW2FdPWIsUWorKyl9cmV0dXJuIGJ9ZnVuY3Rpb24gU2ooYSxiLGMpe3ZhciBkPVJqKGEpO3JldHVybiBhYyhiLGQsYyl9CmZ1bmN0aW9uIFRqKGEpe3ZhciBiPVJqKEEubG9jYXRpb24uaHJlZiksYz1MaihiLCJob3N0IiwhMSk7aWYoYyYmYy5tYXRjaChIaikpe3ZhciBkPUxqKGIsInBhdGgiKTtpZihkKXt2YXIgZT1kLnNwbGl0KGErIj0iKTtpZihlLmxlbmd0aD4xKXJldHVybiBlWzFdLnNwbGl0KCI7IilbMF0uc3BsaXQoIj8iKVswXX19fTt2YXIgVWo9eyJodHRwczovL3d3dy5nb29nbGUuY29tIjoiL2ciLCJodHRwczovL3d3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSI6Ii9hcyIsImh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iOiIvZ3MifSxWaj1bIi9hcy9kL2NjbS9jb252ZXJzaW9uIiwiL2cvZC9jY20vY29udmVyc2lvbiIsIi9ncy9jY20vY29udmVyc2lvbiIsIi9kL2NjbS9mb3JtLWRhdGEiXTtmdW5jdGlvbiBXaigpe3JldHVybiBJZig0Nyk/SmYoNTQpIT09MTohMX1mdW5jdGlvbiBYaigpe3ZhciBhPUUoMTgpLGI9YS5sZW5ndGg7cmV0dXJuIGFbYi0xXT09PSIvIj9hLnN1YnN0cmluZygwLGItMSk6YX0KZnVuY3Rpb24gWWooYSxiKXtpZihhKXt2YXIgYz0iIithO2MuaW5kZXhPZigiaHR0cDovLyIpIT09MCYmYy5pbmRleE9mKCJodHRwczovLyIpIT09MCYmKGM9Imh0dHBzOi8vIitjKTtjW2MubGVuZ3RoLTFdPT09Ii8iJiYoYz1jLnN1YnN0cmluZygwLGMubGVuZ3RoLTEpKTtyZXR1cm4gUmooIiIrYytiKS5ocmVmfX1mdW5jdGlvbiBaaihhKXtpZihhaygpKXJldHVybiBZaihhLCIvYW5hbHl0aWNzLmpzIil9ZnVuY3Rpb24gYmsoYSl7cmV0dXJuIGE9PT0yfHxhPT09M31mdW5jdGlvbiBjayhhKXtyZXR1cm4gTSg1ODgpJiZhPT09M31mdW5jdGlvbiBhaygpe3JldHVybiBXaigpfHxJZig1MCl9ZnVuY3Rpb24gZGsoKXtyZXR1cm4hIUFqLnFqJiZBai5xai5zcGxpdCgiQEAiKS5qb2luKCIiKSE9PSJTR1RNX1RPS0VOIn0KZnVuY3Rpb24gZWsoYSl7Zm9yKHZhciBiPW0oW0YuRC5kZCxGLkQueWNdKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9TyhhLGMudmFsdWUpO2lmKGQpcmV0dXJuIGR9fWZ1bmN0aW9uIGZrKGEsYixjKXtjPWM9PT12b2lkIDA/IiI6YztpZighV2ooKSlyZXR1cm4gYTt2YXIgZD1iP1VqW2FdfHwiIjoiIjtkPT09Ii9ncyImJihjPSIiKTtyZXR1cm4iIitYaigpK2QrY31mdW5jdGlvbiBnayhhKXtpZihXaigpKWZvcih2YXIgYj1tKFZqKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihTYihhLCIiK1hqKCkrZCkpcmV0dXJuIjo6In19CmZ1bmN0aW9uIGhrKCl7dmFyIGE9QTtpZighYSlyZXR1cm4hMTt0cnl7aWYoYT09PWEudG9wKXJldHVybiExO3ZhciBiPWEubG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGIuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIvIikhPT0tMSYmVGIoYiwiL3N3X2lmcmFtZS5odG1sIil9Y2F0Y2goYyl7cmV0dXJuITF9fTt2YXIgaWs9L2d0YWdbLlwvXWpzLyxqaz0vZ3RtWy5cL11qcy8sbGs9ZnVuY3Rpb24oYSl7dmFyIGI9a2s7aWYoKGEuc2NyaXB0Q29udGFpbmVySWR8fCIiKS5pbmRleE9mKCJHVE0tIik+PTApe3ZhciBjO2E6e3ZhciBkLGU9KGQ9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6ZC5zcmM7aWYoZSl7Zm9yKHZhciBmPUlmKDQ3KSxnPVJqKGUpLGg9Zj9nLnBhdGhuYW1lOiIiK2cuaG9zdG5hbWUrZy5wYXRobmFtZSxsPUIuc2NyaXB0cyxuPSIiLHA9MDtwPGwubGVuZ3RoOysrcCl7dmFyIHE9bFtwXTtpZighKHEuaW5uZXJIVE1MLmxlbmd0aD09PTB8fCFmJiZxLmlubmVySFRNTC5pbmRleE9mKGEuc2NyaXB0Q29udGFpbmVySWR8fCJTSE9VTERfTk9UX0JFX1NFVCIpPDB8fHEuaW5uZXJIVE1MLmluZGV4T2YoaCk8MCkpe2lmKHEuaW5uZXJIVE1MLmluZGV4T2YoIihmdW5jdGlvbih3LGQscyxsLGkpIik+PTApe2M9U3RyaW5nKHApO2JyZWFrIGF9bj1TdHJpbmcocCl9fWlmKG4pe2M9Cm47YnJlYWsgYX19Yz12b2lkIDB9dmFyIHI9YztpZihyKXJldHVybiBiLkg9ITAscn12YXIgdD1bXS5zbGljZS5jYWxsKEIuc2NyaXB0cyk7cmV0dXJuIGEuc2NyaXB0RWxlbWVudD9TdHJpbmcodC5pbmRleE9mKGEuc2NyaXB0RWxlbWVudCkpOiItMSJ9LG1rPWZ1bmN0aW9uKGEpe2lmKGtrLkgpcmV0dXJuIjEiO3ZhciBiLGM9KGI9YS5zY3JpcHRFbGVtZW50KT09bnVsbD92b2lkIDA6Yi5zcmM7aWYoYyl7aWYoaWsudGVzdChjKSlyZXR1cm4iMyI7aWYoamsudGVzdChjKSlyZXR1cm4iMiJ9cmV0dXJuIjAifSxraz1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O2Z1bmN0aW9uIFAoYSl7c2IoIkdUTSIsYSl9O2Z1bmN0aW9uIG5rKGEpe3ZhciBiPW9rKCkuZGVzdGluYXRpb25BcnJheVthXSxjPW9rKCkuZGVzdGluYXRpb25bYV07cmV0dXJuIGImJmIubGVuZ3RoPjA/YlswXTpjfWZ1bmN0aW9uIHBrKGEsYil7dmFyIGM9b2soKTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO0NiKGMucGVuZGluZyxmdW5jdGlvbihkKXtyZXR1cm4gZC50YXJnZXQuY3RpZD09PWEuY3RpZCYmZC50YXJnZXQuaXNEZXN0aW5hdGlvbj09PWEuaXNEZXN0aW5hdGlvbn0pfHxjLnBlbmRpbmcucHVzaCh7dGFyZ2V0OmEsb25Mb2FkOmJ9KX1mdW5jdGlvbiBxaygpe3ZhciBhPUEuZ29vZ2xlX3RhZ3NfZmlyc3RfcGFydHk7QXJyYXkuaXNBcnJheShhKXx8KGE9W10pO2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpYltkLnZhbHVlXT0hMDtyZXR1cm4gT2JqZWN0LmZyZWV6ZShiKX0KdmFyIHJrPWZ1bmN0aW9uKCl7dGhpcy5jb250YWluZXI9e307dGhpcy5kZXN0aW5hdGlvbj17fTt0aGlzLmRlc3RpbmF0aW9uQXJyYXk9e307dGhpcy5jYW5vbmljYWw9e307dGhpcy5wZW5kaW5nPVtdO3RoaXMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz17fTt0aGlzLmluamVjdGVkRmlyc3RQYXJ0eUNvbnRhaW5lcnM9cWsoKX07CmZ1bmN0aW9uIG9rKCl7dmFyIGE9TWMoImdvb2dsZV90YWdfZGF0YSIse30pLGI9YS50aWRyO2ImJnR5cGVvZiBiPT09Im9iamVjdCJ8fChiPW5ldyByayxhLnRpZHI9Yik7dmFyIGM9YjtjLmNvbnRhaW5lcnx8KGMuY29udGFpbmVyPXt9KTtjLmRlc3RpbmF0aW9ufHwoYy5kZXN0aW5hdGlvbj17fSk7Yy5kZXN0aW5hdGlvbkFycmF5fHwoYy5kZXN0aW5hdGlvbkFycmF5PXt9KTtjLmNhbm9uaWNhbHx8KGMuY2Fub25pY2FsPXt9KTtjLnBlbmRpbmd8fChjLnBlbmRpbmc9W10pO2MuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc3x8KGMuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVycz1xaygpKTtyZXR1cm4gY307ZnVuY3Rpb24gc2soKXtyZXR1cm4gSWYoNykmJnRrKCkuc29tZShmdW5jdGlvbihhKXtyZXR1cm4gYT09PUUoNSl9KX1mdW5jdGlvbiB1aygpe3ZhciBhO3JldHVybihhPUtmKDU1KSkhPW51bGw/YTpbXX1mdW5jdGlvbiB2aygpe3JldHVybiBFKDYpfHwiXyIrRSg1KX1mdW5jdGlvbiB3aygpe3ZhciBhPUUoMTApO3JldHVybiBhP2Euc3BsaXQoInwiKTpbRSg1KV19ZnVuY3Rpb24gdGsoKXt2YXIgYT1LZig1OSk7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT09InN0cmluZyJ9KS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIuaW5kZXhPZigiR1RNLSIpIT09MH0pOltdfWZ1bmN0aW9uIHhrKCl7dmFyIGE9eWsoemsoKSksYj1hJiZhLnBhcmVudDtpZihiKXJldHVybiB5ayhiKX0KZnVuY3Rpb24gQWsoKXt2YXIgYT15ayh6aygpKTtpZihhKXtmb3IoO2EucGFyZW50Oyl7dmFyIGI9eWsoYS5wYXJlbnQpO2lmKCFiKWJyZWFrO2E9Yn1yZXR1cm4gYX19ZnVuY3Rpb24geWsoYSl7dmFyIGI9b2soKTtyZXR1cm4gYS5pc0Rlc3RpbmF0aW9uP25rKGEuY3RpZCk6Yi5jb250YWluZXJbYS5jdGlkXX1mdW5jdGlvbiBCaygpe3ZhciBhPW9rKCk7aWYoYS5wZW5kaW5nKXtmb3IodmFyIGIsYz1bXSxkPSExLGU9d2soKSxmPXRrKCksZz17fSxoPTA7aDxhLnBlbmRpbmcubGVuZ3RoO2c9e1JnOnZvaWQgMH0saCsrKWcuUmc9YS5wZW5kaW5nW2hdLENiKGcuUmcudGFyZ2V0LmlzRGVzdGluYXRpb24/ZjplLGZ1bmN0aW9uKGwpe3JldHVybiBmdW5jdGlvbihuKXtyZXR1cm4gbj09PWwuUmcudGFyZ2V0LmN0aWR9fShnKSk/ZHx8KGI9Zy5SZy5vbkxvYWQsZD0hMCk6Yy5wdXNoKGcuUmcpO2EucGVuZGluZz1jO2lmKGIpdHJ5e2IodmsoKSl9Y2F0Y2gobCl7fX19CmZ1bmN0aW9uIENrKCl7Zm9yKHZhciBhPUUoNSksYj13aygpLGM9dGsoKSxkPXVrKCksZT1mdW5jdGlvbihxLHIpe3ZhciB0PXtjYW5vbmljYWxDb250YWluZXJJZDpFKDYpLHNjcmlwdENvbnRhaW5lcklkOmEsc3RhdGU6Mixjb250YWluZXJzOmIuc2xpY2UoKSxkZXN0aW5hdGlvbnM6Yy5zbGljZSgpfTtKYyYmKHQuc2NyaXB0RWxlbWVudD1KYyk7S2MmJih0LnNjcmlwdFNvdXJjZT1LYyk7eGsoKT09PXZvaWQgMCYmKHQuaHRtbExvYWRPcmRlcj1sayh0KSx0LmxvYWRTY3JpcHRUeXBlPW1rKHQpKTt2YXIgdSx2O3N3aXRjaChyKXtjYXNlIDA6dT1mdW5jdGlvbih6KXtmLmNvbnRhaW5lcltxXT16fTt2PWYuY29udGFpbmVyW3FdO2JyZWFrO2Nhc2UgMTp1PWZ1bmN0aW9uKHope2YuZGVzdGluYXRpb25BcnJheVtxXT1mLmRlc3RpbmF0aW9uQXJyYXlbcV18fFtdO2YuZGVzdGluYXRpb25BcnJheVtxXS51bnNoaWZ0KHopfTt2YXIgeCx5PSgoeD1mLmRlc3RpbmF0aW9uQXJyYXlbcV0pPT0KbnVsbD92b2lkIDA6eFswXSl8fGYuZGVzdGluYXRpb25bcV07IXl8fHkuc3RhdGUhPT0wJiZ5LnN0YXRlIT09MXx8KHY9eSk7YnJlYWs7Y2FzZSAyOnU9ZnVuY3Rpb24oeil7Zi5kZXN0aW5hdGlvbkFycmF5W3FdPWYuZGVzdGluYXRpb25BcnJheVtxXXx8W107Zi5kZXN0aW5hdGlvbkFycmF5W3FdLnB1c2goeil9LHY9dm9pZCAwfXUmJih2Pyh2LnN0YXRlPT09MCYmUCg5MyksbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx2LHQpKTp1KHQpKX0sZj1vaygpLGc9bShiKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSllKGgudmFsdWUsMCk7Zm9yKHZhciBsPW0oYyksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7ZC5pbmNsdWRlcyhwKT9lKHAsMSk6ZShwLDIpfWYuY2Fub25pY2FsW3ZrKCldPXt9O0JrKCl9ZnVuY3Rpb24gRGsoKXt2YXIgYT12aygpO3JldHVybiEhb2soKS5jYW5vbmljYWxbYV19CmZ1bmN0aW9uIEVrKGEpe3JldHVybiEhb2soKS5jb250YWluZXJbYV19ZnVuY3Rpb24gRmsoKXt2YXIgYT16aygpLGI9eWsoYSk7cmV0dXJuIGImJmIuY29udGV4dH1mdW5jdGlvbiBHayhhKXt2YXIgYj1uayhhKTtyZXR1cm4gYj9iLnN0YXRlIT09MDohMX1mdW5jdGlvbiB6aygpe3JldHVybntjdGlkOkUoNSksaXNEZXN0aW5hdGlvbjpJZig3KX19ZnVuY3Rpb24gSGsoYSxiLGMpe3ZhciBkPXprKCksZT1vaygpLmNvbnRhaW5lclthXTtlJiZlLnN0YXRlIT09M3x8KG9rKCkuY29udGFpbmVyW2FdPXtzdGF0ZToxLGNvbnRleHQ6YixwYXJlbnQ6ZH0scGsoe2N0aWQ6YSxpc0Rlc3RpbmF0aW9uOiExfSxjKSl9ZnVuY3Rpb24gSWsoYSxiLGMpe3ZhciBkPW9rKCksZT1uayhhKTtlP2Uuc3RhdGU9MTooZT17Y29udGV4dDpiLHN0YXRlOjEscGFyZW50OnprKCl9LGQuZGVzdGluYXRpb25BcnJheVthXT1bZV0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sYyl9CmZ1bmN0aW9uIEprKGEsYixjLGQpe3ZhciBlPW9rKCksZj1uayhhKTtmP2Yuc3RhdGU9MDooZj17c3RhdGU6MCx0cmFuc3BvcnRVcmw6Yixjb250ZXh0OmMscGFyZW50OnprKCl9LGUuZGVzdGluYXRpb25BcnJheVthXT1bZl0pO3BrKHtjdGlkOmEsaXNEZXN0aW5hdGlvbjohMH0sZCk7UCg5MSl9ZnVuY3Rpb24gS2soKXt2YXIgYT1vaygpLmNvbnRhaW5lcixiO2ZvcihiIGluIGEpaWYoYS5oYXNPd25Qcm9wZXJ0eShiKSYmYVtiXS5zdGF0ZT09PTEpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gTGsoKXt2YXIgYT17fTtHYihvaygpLmRlc3RpbmF0aW9uLGZ1bmN0aW9uKGIsYyl7KGM9PW51bGw/dm9pZCAwOmMuc3RhdGUpPT09MCYmKGFbYl09Yyl9KTtHYihvaygpLmRlc3RpbmF0aW9uQXJyYXksZnVuY3Rpb24oYixjKXt2YXIgZD1jWzBdOyhkPT1udWxsP3ZvaWQgMDpkLnN0YXRlKT09PTAmJihhW2JdPWQpfSk7cmV0dXJuIGF9CmZ1bmN0aW9uIE1rKGEpe3JldHVybiEhKGEmJmEucGFyZW50JiZhLmNvbnRleHQmJmEuY29udGV4dC5zb3VyY2U9PT0xJiZhLnBhcmVudC5jdGlkLmluZGV4T2YoIkdUTS0iKSE9PTApfWZ1bmN0aW9uIE5rKCl7Zm9yKHZhciBhPW9rKCksYj1tKHdrKCkpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWlmKGEuaW5qZWN0ZWRGaXJzdFBhcnR5Q29udGFpbmVyc1tjLnZhbHVlXSlyZXR1cm4hMDtyZXR1cm4hMX07dmFyIE9rPWZ1bmN0aW9uKCl7fTtPay5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4idW5kZWZpbmVkIn07dmFyIFBrPW5ldyBPazt2YXIgWGs9ZnVuY3Rpb24oKXt0aGlzLnN0b3JhZ2U9WWEoKX07WGsucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIpfTtYay5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnN0b3JhZ2UuZ2V0KFN0cmluZyhhKSl9O3ZhciBZaztmdW5jdGlvbiBaayhhLGIpe1lrfHwoWWs9bmV3IFhrKTtZay5zZXQoYSxiKX1mdW5jdGlvbiAkayhhKXtZa3x8KFlrPW5ldyBYayk7cmV0dXJuIFlrLmdldChhKX1mdW5jdGlvbiBhbChhLGIpe1lrfHwoWWs9bmV3IFhrKTt2YXIgYz1ZaztjLnN0b3JhZ2UuaGFzKFN0cmluZyhhKSl8fGMuc3RvcmFnZS5zZXQoU3RyaW5nKGEpLGIoKSk7cmV0dXJuIGMuc3RvcmFnZS5nZXQoU3RyaW5nKGEpKX07ZnVuY3Rpb24gYmwoYSxiKXtmdW5jdGlvbiBjKGcpe3ZhciBoPVJqKGcpLGw9TGooaCwicHJvdG9jb2wiKSxuPUxqKGgsImhvc3QiLCEwKSxwPUxqKGgsInBvcnQiKSxxPUxqKGgsInBhdGgiKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1wvJC8sIiIpO2lmKGw9PT12b2lkIDB8fGw9PT0iaHR0cCImJnA9PT0iODAifHxsPT09Imh0dHBzIiYmcD09PSI0NDMiKWw9IndlYiIscD0iZGVmYXVsdCI7cmV0dXJuW2wsbixwLHFdfWZvcih2YXIgZD1jKFN0cmluZyhhKSksZT1jKFN0cmluZyhiKSksZj0wO2Y8ZC5sZW5ndGg7ZisrKWlmKGRbZl0hPT1lW2ZdKXJldHVybiExO3JldHVybiEwfWZ1bmN0aW9uIGNsKGEpe3JldHVybiBkbChhKT8xOjB9CmZ1bmN0aW9uIGRsKGEpe3ZhciBiPWEuYXJnMCxjPWEuYXJnMTtpZihhLmFueV9vZiYmQXJyYXkuaXNBcnJheShjKSl7Zm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPUVkKGEse30pO0VkKHthcmcxOmNbZF0sYW55X29mOnZvaWQgMH0sZSk7aWYoY2woZSkpcmV0dXJuITB9cmV0dXJuITF9c3dpdGNoKGFbImZ1bmN0aW9uIl0pe2Nhc2UgIl9jbiI6cmV0dXJuIEtnKGIsYyk7Y2FzZSAiX2NzcyI6cmV0dXJuIEdnKGIsYyk7Y2FzZSAiX2V3IjpyZXR1cm4gSGcoYixjKTtjYXNlICJfZXEiOnJldHVybiBMZyhiLGMpO2Nhc2UgIl9nZSI6cmV0dXJuIE1nKGIsYyk7Y2FzZSAiX2d0IjpyZXR1cm4gT2coYixjKTtjYXNlICJfbGMiOnJldHVybiBJZyhiLGMpO2Nhc2UgIl9sZSI6cmV0dXJuIE5nKGIsYyk7Y2FzZSAiX2x0IjpyZXR1cm4gUGcoYixjKTtjYXNlICJfcmUiOnJldHVybiBKZyhiLGMsYS5pZ25vcmVfY2FzZSxhbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSk7Y2FzZSAiX3N3IjpyZXR1cm4gUWcoYiwKYyk7Y2FzZSAiX3VtIjpyZXR1cm4gYmwoYixjKX1yZXR1cm4hMX07ZnVuY3Rpb24gZWwoYSxiLGMsZCxlKXtpZihBcnJheS5pc0FycmF5KGEpKXt2YXIgZjtzd2l0Y2goYVswXSl7Y2FzZSAiZnVuY3Rpb25faWQiOnJldHVybiBhWzFdO2Nhc2UgImxpc3QiOmY9W107Zm9yKHZhciBnPTE7ZzxhLmxlbmd0aDtnKyspZi5wdXNoKGVsKGFbZ10sYixjLGQsZSkpO3JldHVybiBmO2Nhc2UgIm1hY3JvIjp2YXIgaD1kW2FbMV1dO3JldHVybiBoP2guZXZhbHVhdGUoYixlKTp2b2lkIDA7Y2FzZSAibWFwIjpmPXt9O2Zvcih2YXIgbD0xO2w8YS5sZW5ndGg7bCs9MilmW2VsKGFbbF0sYixjLGQsZSldPWVsKGFbbCsxXSxiLGMsZCxlKTtyZXR1cm4gZjtjYXNlICJ0ZW1wbGF0ZSI6Zj1bXTtmb3IodmFyIG49ITEscD0xO3A8YS5sZW5ndGg7cCsrKXt2YXIgcT1lbChhW3BdLGIsYyxkLGUpO2YucHVzaChxKX1yZXR1cm4gZi5qb2luKCIiKTtjYXNlICJlc2NhcGUiOmY9ZWwoYVsxXSxiLGMsZCxlKTtmPVN0cmluZyhmKTtmb3IodmFyIHk9Mjt5PGEubGVuZ3RoO3krKylVaVthW3ldXSYmKGY9VWlbYVt5XV0oZikpO3JldHVybiBmO2Nhc2UgInRhZyI6dmFyIHo9YVsxXTtpZighY1t6XSl0aHJvdyBFcnJvcigiVW5hYmxlIHRvIHJlc29sdmUgdGFnIHJlZmVyZW5jZSAiKwp6KyIuIik7cmV0dXJue2JvOmFbMl0saW5kZXg6en07Y2FzZSAiemIiOnZhciBDPXt9LEQ9KENbR2YuWWJdPWFbMV0sQy5hcmcwPWVsKGFbMl0sYixjLGQsZSksQy5hcmcxPWVsKGFbM10sYixjLGQsZSksQy5pZ25vcmVfY2FzZT1lbChhWzVdLGIsYyxkLGUpLEMpLEk9Y2woRCksRz0hIWFbNF07cmV0dXJuIEd8fEkhPT0yP0chPT0oST09PTEpOm51bGw7ZGVmYXVsdDp0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBleHBhbmQgdW5rbm93biBWYWx1ZSB0eXBlOiAiK2FbMF0rIi4iKTt9fXJldHVybiBhfTtmdW5jdGlvbiBmbChhKXtyZXR1cm4gYSYmYS5pbmRleE9mKCJwZW5kaW5nOiIpPT09MD9nbChhLnN1YnN0cig4KSk6ITF9ZnVuY3Rpb24gZ2woYSl7aWYoYT09bnVsbHx8YS5sZW5ndGg9PT0wKXJldHVybiExO3ZhciBiPU51bWJlcihhKSxjPU5iKCk7cmV0dXJuIGI8YyszRTUmJmI+Yy05RTV9O3ZhciBobD0hMSxpbD0hMSxqbD0hMSxrbD0wLGxsPSExLG1sPXZvaWQgMCxubD1bXTtmdW5jdGlvbiBvbChhKXtpZihrbD09PTApbGwmJm5sJiYobmwubGVuZ3RoPj0xMDAmJm5sLnNoaWZ0KCksbmwucHVzaChhKSk7ZWxzZSBpZihwbCgpKXt2YXIgYj1FKDQxKSxjPU1jKGIsW10pO2MubGVuZ3RoPj01MCYmYy5zaGlmdCgpO2MucHVzaChhKX19ZnVuY3Rpb24gcWwoKXtpbHx8KHJsKCksc2woa2wpKX1mdW5jdGlvbiBzbChhKXtpZighaWx8fGtsPT09MiYmYT09PTEpaWYoaWw9ITAsamwmJihhZChCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwpLGpsPSExKSxtbCE9PXZvaWQgMCYmKEEuY2xlYXJUaW1lb3V0KG1sKSxtbD12b2lkIDApLGtsPWEsYT09PTEpe3ZhciBiPW5sO25sPXZvaWQgMDtiPT1udWxsfHxiLmZvckVhY2goZnVuY3Rpb24oYyl7b2woYyl9KX19CmZ1bmN0aW9uIHJsKCl7dmFyIGE9Qi5kb2N1bWVudEVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLXRhZy1hc3Npc3RhbnQtcHJvZC1wcmVzZW50Iik7Z2woYSk/a2w9MTohZmwoYSl8fGhsfHxqbD9rbD0yOihqbD0hMCwkYyhCLCJUQVByb2REZWJ1Z1NpZ25hbCIscWwsITEpLG1sPUEuc2V0VGltZW91dChmdW5jdGlvbigpe2lsfHwocmwoKSxzbChrbCkpO2hsPSEwfSwyMDApKX1mdW5jdGlvbiBwbCgpe2lmKCFsbClyZXR1cm4hMTtzd2l0Y2goa2wpe2Nhc2UgMTpjYXNlIDA6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2RlZmF1bHQ6cmV0dXJuITF9fTtmdW5jdGlvbiB0bCgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KTtyZXR1cm4gYS5pY3M9YS5pY3N8fG5ldyB1bH12YXIgdWw9ZnVuY3Rpb24oKXt0aGlzLmVudHJpZXM9e307dGhpcy53YWl0UGVyaW9kVGltZWRPdXQ9dGhpcy53YXNTZXRMYXRlPXRoaXMuYWNjZXNzZWRBbnk9dGhpcy5hY2Nlc3NlZERlZmF1bHQ9dGhpcy51c2VkSW1wbGljaXQ9dGhpcy51c2VkVXBkYXRlPXRoaXMudXNlZERlZmF1bHQ9dGhpcy51c2VkRGVjbGFyZT10aGlzLmFjdGl2ZT0hMTt0aGlzLkg9W119Owp1bC5wcm90b3R5cGUuZGVmYXVsdD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHwhdGhpcy5hY2Nlc3NlZERlZmF1bHQmJiF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWREZWZhdWx0PXRoaXMuYWN0aXZlPSEwO3NiKCJUQUdHSU5HIiwxOSk7Yj09bnVsbD9zYigiVEFHR0lORyIsMTgpOnZsKHRoaXMsYSxiPT09ImdyYW50ZWQiLGMsZCxlLGYsZyl9O3VsLnByb3RvdHlwZS53YWl0Rm9yVXBkYXRlPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoO2QrKyl2bCh0aGlzLGFbZF0sdm9pZCAwLHZvaWQgMCwiIiwiIixiLGMpfTsKdmFyIHZsPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9YS5lbnRyaWVzLG49bFtiXXx8e30scD1uLnJlZ2lvbixxPWQmJnpiKGQpP2QudG9VcHBlckNhc2UoKTp2b2lkIDA7ZT1lLnRvVXBwZXJDYXNlKCk7Zj1mLnRvVXBwZXJDYXNlKCk7aWYoZT09PSIifHxxPT09Znx8KHE9PT1lP3AhPT1mOiFxJiYhcCkpe3ZhciByPSEhKGcmJmc+MCYmbi51cGRhdGU9PT12b2lkIDApLHQ9e3JlZ2lvbjpxLGRlY2xhcmVfcmVnaW9uOm4uZGVjbGFyZV9yZWdpb24saW1wbGljaXQ6bi5pbXBsaWNpdCxkZWZhdWx0OmMhPT12b2lkIDA/YzpuLmRlZmF1bHQsZGVjbGFyZTpuLmRlY2xhcmUsdXBkYXRlOm4udXBkYXRlLHF1aWV0OnJ9O2lmKGUhPT0iInx8bi5kZWZhdWx0IT09ITEpbFtiXT10O3ImJkEuc2V0VGltZW91dChmdW5jdGlvbigpe2xbYl09PT10JiZ0LnF1aWV0JiYoc2IoIlRBR0dJTkciLDIpLGEud2FpdFBlcmlvZFRpbWVkT3V0PSEwLGEuY2xlYXJUaW1lb3V0KGIsdm9pZCAwLGgpLAphLm5vdGlmeUxpc3RlbmVycygpKX0sZyl9fTtrPXVsLnByb3RvdHlwZTtrLmNsZWFyVGltZW91dD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W2FdLGU9Yy5kZWxlZ2F0ZWRDb25zZW50VHlwZXMsZjtmb3IoZiBpbiBlKWUuaGFzT3duUHJvcGVydHkoZikmJmVbZl09PT1hJiZkLnB1c2goZik7dmFyIGc9dGhpcy5lbnRyaWVzW2FdfHx7fSxoPXRoaXMuZ2V0Q29uc2VudFN0YXRlKGEsYyk7aWYoZy5xdWlldCl7Zy5xdWlldD0hMTtmb3IodmFyIGw9bShkKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl3bCh0aGlzLG4udmFsdWUpfWVsc2UgaWYoYiE9PXZvaWQgMCYmaCE9PWIpZm9yKHZhciBwPW0oZCkscT1wLm5leHQoKTshcS5kb25lO3E9cC5uZXh0KCkpd2wodGhpcyxxLnZhbHVlKX07CmsudXBkYXRlPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnVzZWREZWZhdWx0fHx0aGlzLnVzZWREZWNsYXJlfHx0aGlzLnVzZWRVcGRhdGV8fCF0aGlzLmFjY2Vzc2VkQW55fHwodGhpcy53YXNTZXRMYXRlPSEwKTt0aGlzLnVzZWRVcGRhdGU9dGhpcy5hY3RpdmU9ITA7aWYoYiE9bnVsbCl7dmFyIGQ9dGhpcy5nZXRDb25zZW50U3RhdGUoYSxjKSxlPXRoaXMuZW50cmllczsoZVthXT1lW2FdfHx7fSkudXBkYXRlPWI9PT0iZ3JhbnRlZCI7dGhpcy5jbGVhclRpbWVvdXQoYSxkLGMpfX07CmsuZGVjbGFyZT1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMudXNlZERlY2xhcmU9dGhpcy5hY3RpdmU9ITA7dmFyIGY9dGhpcy5lbnRyaWVzLGc9ZlthXXx8e30saD1nLmRlY2xhcmVfcmVnaW9uLGw9YyYmemIoYyk/Yy50b1VwcGVyQ2FzZSgpOnZvaWQgMDtkPWQudG9VcHBlckNhc2UoKTtlPWUudG9VcHBlckNhc2UoKTtpZihkPT09IiJ8fGw9PT1lfHwobD09PWQ/aCE9PWU6IWwmJiFoKSl7dmFyIG49e3JlZ2lvbjpnLnJlZ2lvbixkZWNsYXJlX3JlZ2lvbjpsLGRlY2xhcmU6Yj09PSJncmFudGVkIixpbXBsaWNpdDpnLmltcGxpY2l0LGRlZmF1bHQ6Zy5kZWZhdWx0LHVwZGF0ZTpnLnVwZGF0ZSxxdWlldDpnLnF1aWV0fTtpZihkIT09IiJ8fGcuZGVjbGFyZSE9PSExKWZbYV09bn19OwprLmltcGxpY2l0PWZ1bmN0aW9uKGEsYil7dGhpcy51c2VkSW1wbGljaXQ9ITA7dmFyIGM9dGhpcy5lbnRyaWVzLGQ9Y1thXT1jW2FdfHx7fTtkLmltcGxpY2l0IT09ITEmJihkLmltcGxpY2l0PWI9PT0iZ3JhbnRlZCIpfTsKay5nZXRDb25zZW50U3RhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmVudHJpZXMsZD1jW2FdfHx7fSxlPWQudXBkYXRlO2lmKGUhPT12b2lkIDApcmV0dXJuIGU/MToyO2lmKGIudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXt2YXIgZj1iLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2FdO2lmKGY9PT0zKXJldHVybiAxO2lmKGY9PT0yKXJldHVybiAyfWVsc2UgaWYoZT1kLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYj09bnVsbD8wOmIuZGVsZWdhdGVkQ29uc2VudFR5cGVzLmhhc093blByb3BlcnR5KGEpKXt2YXIgZz1iLmRlbGVnYXRlZENvbnNlbnRUeXBlc1thXSxoPWNbZ118fHt9O2U9aC51cGRhdGU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7aWYoYi51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHMpe3ZhciBsPWIuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbZ107aWYobD09PTMpcmV0dXJuIDE7aWYobD09PTIpcmV0dXJuIDJ9ZWxzZSBpZihlPQpoLmRlZmF1bHQsZSE9PXZvaWQgMClyZXR1cm4gZT8xOjJ9ZT1kLmRlY2xhcmU7aWYoZSE9PXZvaWQgMClyZXR1cm4gZT8xOjI7ZT1kLmltcGxpY2l0O3JldHVybiBlIT09dm9pZCAwP2U/Mzo0OjB9O2suYWRkTGlzdGVuZXI9ZnVuY3Rpb24oYSxiKXt0aGlzLkgucHVzaCh7Y29uc2VudFR5cGVzOmEsaWU6Yn0pfTt2YXIgd2w9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9MDtjPGEuSC5sZW5ndGg7KytjKXt2YXIgZD1hLkhbY107QXJyYXkuaXNBcnJheShkLmNvbnNlbnRUeXBlcykmJmQuY29uc2VudFR5cGVzLmluZGV4T2YoYikhPT0tMSYmKGQueG89ITApfX07dWwucHJvdG90eXBlLm5vdGlmeUxpc3RlbmVycz1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8dGhpcy5ILmxlbmd0aDsrK2Mpe3ZhciBkPXRoaXMuSFtjXTtpZihkLnhvKXtkLnhvPSExO3RyeXtkLmllKHtjb25zZW50RXZlbnRJZDphLGNvbnNlbnRQcmlvcml0eUlkOmJ9KX1jYXRjaChlKXt9fX19O3ZhciB4bD0hMSx5bD0hMSx6bD17fSxBbD17ZGVsZWdhdGVkQ29uc2VudFR5cGVzOnt9LGNvcmVQbGF0Zm9ybVNlcnZpY2VzOnt9LHVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlczohMSxzZWxlY3RlZEFsbENvcmVQbGF0Zm9ybVNlcnZpY2VzOiExLGNvbnRhaW5lclNjb3BlZERlZmF1bHRzOih6bC5hZF9zdG9yYWdlPTEsemwuYW5hbHl0aWNzX3N0b3JhZ2U9MSx6bC5hZF91c2VyX2RhdGE9MSx6bC5hZF9wZXJzb25hbGl6YXRpb249MSx6bCksdXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzOiExfTtmdW5jdGlvbiBCbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuKHpiKGEpP1thXTphKS5ldmVyeShmdW5jdGlvbihjKXtzd2l0Y2goYi5nZXRDb25zZW50U3RhdGUoYyxBbCkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOmNhc2UgNDpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiEwfX0pfQpmdW5jdGlvbiBDbChhKXt2YXIgYj10bCgpO2IuYWNjZXNzZWRBbnk9ITA7cmV0dXJuIGIuZ2V0Q29uc2VudFN0YXRlKGEsQWwpfWZ1bmN0aW9uIERsKGEpe3ZhciBiPXRsKCk7Yi5hY2Nlc3NlZEFueT0hMDtyZXR1cm4hKGIuZW50cmllc1thXXx8e30pLnF1aWV0fWZ1bmN0aW9uIEVsKCl7aWYoIVlmKDUpKXJldHVybiExO3ZhciBhPXRsKCk7YS5hY2Nlc3NlZEFueT0hMDtpZihhLmFjdGl2ZSlyZXR1cm4hMDtpZighQWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzKXJldHVybiExO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaWYoQWwuY29udGFpbmVyU2NvcGVkRGVmYXVsdHNbYy52YWx1ZV0hPT0xKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEZsKGEsYil7dGwoKS5hZGRMaXN0ZW5lcihhLGIpfQpmdW5jdGlvbiBHbChhLGIpe3RsKCkubm90aWZ5TGlzdGVuZXJzKGEsYil9ZnVuY3Rpb24gSGwoYSxiKXtpZihiLmV2ZXJ5KERsKSlhKHt9KTtlbHNle3ZhciBjPSExO0ZsKGIsZnVuY3Rpb24oZCl7IWMmJmIuZXZlcnkoRGwpJiYoYz0hMCxhKGQpKX0pfX0KZnVuY3Rpb24gSWwoYSxiKXt2YXIgYz16YihiKT9bYl06YixkPXt9LGU9ZnVuY3Rpb24oKXtyZXR1cm4gYy5maWx0ZXIoZnVuY3Rpb24oaCl7cmV0dXJuIEJsKGgpJiYhZFtoXX0pfSxmPWUoKTtpZihmLmxlbmd0aCE9PWMubGVuZ3RoKXt2YXIgZz1mdW5jdGlvbihoKXtmb3IodmFyIGw9bShoKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSlkW24udmFsdWVdPSEwfTtnKGYpO0ZsKGMsZnVuY3Rpb24oaCl7ZnVuY3Rpb24gbChxKXtxLmxlbmd0aCE9PTAmJihnKHEpLGguY29uc2VudFR5cGVzPXEsYShoKSl9dmFyIG49ZSgpO2lmKG4ubGVuZ3RoIT09MCl7dmFyIHA9T2JqZWN0LmtleXMoZCkubGVuZ3RoO24ubGVuZ3RoK3A+PWMubGVuZ3RoP2wobik6QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bChlKCkpfSw1MDApfX0pfX07dmFyIEpsPSExO2Z1bmN0aW9uIEtsKGEsYil7dmFyIGM9d2soKSxkPXRrKCk7RSgyNik7dmFyIGU9SWYoNDcpPzA6SWYoNTApPzE6MyxmPVhqKCk7aWYocGwoKSl7dmFyIGc9TGwoIklOSVQiKTtnLmNvbnRhaW5lckxvYWRTb3VyY2U9YSE9bnVsbD9hOjA7YiYmKGcucGFyZW50VGFyZ2V0UmVmZXJlbmNlPWIpO2cuYWxpYXNlcz1jO2cuZGVzdGluYXRpb25zPWQ7ZSE9PXZvaWQgMCYmKGcuZ3RnPXtzb3VyY2U6ZSxtUGF0aDpmIT1udWxsP2Y6IiJ9KTtvbChnKX19CmZ1bmN0aW9uIE1sKGEpe3ZhciBiLGMsZCxlO2I9YS50YXJnZXRJZDtjPWEucmVxdWVzdDtkPWEucWI7ZT1hLmlzQmF0Y2hlZDt2YXIgZjtpZihmPXBsKCkpe3ZhciBnO2E6c3dpdGNoKGMuZW5kcG9pbnQpe2Nhc2UgNjg6Y2FzZSA2OTpjYXNlIDE5OmNhc2UgNjI6Y2FzZSA0NzpnPSEwO2JyZWFrIGE7ZGVmYXVsdDpnPSExfWY9IWd9aWYoZil7dmFyIGg9TGwoIkdUQUdfSElUIix7ZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTtoLnRhcmdldD1iO2gudXJsPWMudXJsO2MucG9zdEJvZHkmJihoLnBvc3RCb2R5PWMucG9zdEJvZHkpO2gucGFyYW1ldGVyRW5jb2Rpbmc9Yy5wYXJhbWV0ZXJFbmNvZGluZztoLmVuZHBvaW50PWMuZW5kcG9pbnQ7ZSE9PXZvaWQgMCYmKGguaXNCYXRjaGVkPWUpO29sKGgpfX1mdW5jdGlvbiBObChhKXtwbCgpJiZNbChhKCkpfQpmdW5jdGlvbiBMbChhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2IuZ3JvdXBJZD1PbDt2YXIgYyxkPWIsZT1QbCxmPXtwdWJsaWNJZDpRbH07ZC5ldmVudElkIT1udWxsJiYoZi5ldmVudElkPWQuZXZlbnRJZCk7ZC5wcmlvcml0eUlkIT1udWxsJiYoZi5wcmlvcml0eUlkPWQucHJpb3JpdHlJZCk7ZC5ldmVudE5hbWUmJihmLmV2ZW50TmFtZT1kLmV2ZW50TmFtZSk7ZC5ncm91cElkJiYoZi5ncm91cElkPWQuZ3JvdXBJZCk7ZC50YWdOYW1lJiYoZi50YWdOYW1lPWQudGFnTmFtZSk7Yz17Y29udGFpbmVyUHJvZHVjdDoiR1RNIixrZXk6Zix2ZXJzaW9uOmUsbWVzc2FnZVR5cGU6YX07Yy5jb250YWluZXJQcm9kdWN0PUpsPyJPR1QiOiJHVE0iO2Mua2V5LnRhcmdldFJlZj1SbDtyZXR1cm4gY312YXIgUWw9IiIsUGw9IiIsUmw9e2N0aWQ6IiIsaXNEZXN0aW5hdGlvbjohMX0sT2w7CmZ1bmN0aW9uIFNsKGEpe3ZhciBiPUUoNSksYz1JZig0NSksZD1zaygpLGU9RSg2KSxmPUUoMSk7RSgyMyk7a2w9MDtsbD0hMDtybCgpO09sPWE7UWw9YjtQbD1mO0psPWM7Umw9e2N0aWQ6Yixpc0Rlc3RpbmF0aW9uOmQsY2Fub25pY2FsSWQ6ZX19O2Z1bmN0aW9uIFRsKGEsYixjLGQpe2lmKHBsKCkpe3ZhciBlPWIuTTtNbCh7dGFyZ2V0SWQ6ZHx8W2IudGFyZ2V0LmRlc3RpbmF0aW9uSWRdLHJlcXVlc3Q6e3VybDphLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6Y30scWI6e2V2ZW50SWQ6ZS5ldmVudElkLHByaW9yaXR5SWQ6ZS5wcmlvcml0eUlkfSxGajp7ZXZlbnRJZDpRKGIsSC5KLnVmKSxwcmlvcml0eUlkOlEoYixILkoudmYpfX0pfX07ZnVuY3Rpb24gVWwoYSxiLGMpe3ZhciBkPSJodHRwczovLyIrYStiO3JldHVybiBjP2Z1bmN0aW9uKCl7cmV0dXJuIFdqKCk/WGooKStjK2I6ZH06ZnVuY3Rpb24oKXtyZXR1cm4gZH19O3ZhciBWbD17fSxXbD0oVmxbMjJdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvYXMvZCIpLFZsWzYwXT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvY2NtL2NvbnZlcnNpb24iLCIvZ3MiKSxWbFsyM109VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9jb252ZXJzaW9uIiwiL2cvZCIpLFZsKTt2YXIgWGw9e30sWWw9KFhsWzVdPVVsKCJ3d3cuZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iKSxYbFs2XT1VbCgicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvcGFnZWFkL2NvbnZlcnNpb24iLCIvZ3MiKSxYbFs4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs2Nl09VWwoInd3dy5nb29nbGUuY29tIiwiL3BhZ2VhZC91Y29udmVyc2lvbiIpLFhsWzYzXT1VbCgid3d3Lmdvb2dsZWFkc2VydmljZXMuY29tIiwiL3BhZ2VhZC9jb252ZXJzaW9uIiksWGxbNjRdPVVsKCJwYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbSIsIi9wYWdlYWQvY29udmVyc2lvbiIsIi9ncyIpLFhsWzY1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkLzFwLWNvbnZlcnNpb24iKSxYbFs3NF09ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2FzL3AvYyJ9LFhsKTt2YXIgWmw9e30sJGw9KFpsWzQ1XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvY2NtL2NvbGxlY3QiKSxabFs0Nl09VWwoInBhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tIiwiL2NjbS9jb2xsZWN0IiwiL2dzIiksWmxbNjldPVVsKCJhZC5kb3VibGVjbGljay5uZXQiLCIvY2NtL3MvY29sbGVjdCIpLFpsWzU4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcGFnZWFkL3NldF9wYXJ0aXRpb25lZF9jb29raWUiKSxabFs1N109VWwoInd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSIsIi9wYWdlYWQvc2V0X3BhcnRpdGlvbmVkX2Nvb2tpZSIpLFpsKTt2YXIgYW09e30sYm09KGFtWzldPVVsKCJnb29nbGVhZHMuZy5kb3VibGVjbGljay5uZXQiLCIvcGFnZWFkL3ZpZXd0aHJvdWdoY29udmVyc2lvbiIpLGFtWzY4XT1VbCgid3d3Lmdvb2dsZS5jb20iLCIvcm1rdC9jb2xsZWN0IiksYW0pO3ZhciBjbT17fSxkbT0oY21bMTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVsyMV09VWwoInd3dy5nb29nbGUuY29tIiwiL2NjbS9mb3JtLWRhdGEiLCIvZCIpLGNtWzcyXT1VbCgiZ29vZ2xlLmNvbSIsIi9wYWdlYWQvZm9ybS1kYXRhIiwiL2QiKSxjbVs3M109VWwoImdvb2dsZS5jb20iLCIvY2NtL2Zvcm0tZGF0YSIsIi9kIiksY20pO3ZhciBlbT17fSxmbT0oZW1bNTFdPVVsKCJ3d3cuZ29vZ2xlLmNvbSIsIi90cmF2ZWwvZmxpZ2h0cy9jbGljay9jb252ZXJzaW9uIiksZW0pO3ZhciBnbT17fSxobT0oZ21bMV09ZnVuY3Rpb24oKXtyZXR1cm4iaHR0cHM6Ly9hZC5kb3VibGVjbGljay5uZXQvYWN0aXZpdHk7In0sZ21bMl09ZnVuY3Rpb24oKXtyZXR1cm4oV2ooKT9YaigpOiJodHRwczovL2FkZS5nb29nbGVzeW5kaWNhdGlvbi5jb20iKSsiL2RkbS9hY3Rpdml0eSIrKE0oNDY3KT8iOyI6Ii8iKX0sZ21bM109ZnVuY3Rpb24oYSl7cmV0dXJuImh0dHBzOi8vIithLmxyKyIuZmxzLmRvdWJsZWNsaWNrLm5ldC9hY3Rpdml0eWk7In0sZ20pO2Z1bmN0aW9uIGltKGEpe3NiKCJIRUFMVEgiLGEpfTt2YXIgam09e2JhOntQdDoiYXdfdXNlcl9kYXRhX2NhY2hlIixvaToiY29va2llX2RlcHJlY2F0aW9uX2xhYmVsIixiaDoiZGlhZ25vc3RpY3NfcGFnZV9pZCIsb3A6ImVtZW1vIixkdToiZW1fcmVnaXN0cnkiLFNpOiJlYWIiLHJ1OiJmbF91c2VyX2RhdGFfY2FjaGUiLHR1OiJnYTRfdXNlcl9kYXRhX2NhY2hlIixMdToiaWRjX3B2X2NsYWltIixTZToiaXBfZ2VvX2RhdGFfY2FjaGUiLFhpOiJpcF9nZW9fZmV0Y2hfaW5fcHJvZ3Jlc3MiLGpuOiJuYl9kYXRhIixUcToicGFnZV9leHBlcmltZW50X2lkcyIsbG46InBsZCIsVmU6InB0X2RhdGEiLG1uOiJwdF9saXN0ZW5lcl9zZXQiLGtqOiJyZXRyeV9jb250YWluZXJzIixPaDoic2VydmljZV93b3JrZXJfZW5kcG9pbnQiLFpxOiJzaGFyZWRfdXNlcl9pZCIsYXI6InNoYXJlZF91c2VyX2lkX3JlcXVlc3RlZCIsc2o6InNoYXJlZF91c2VyX2lkX3NvdXJjZSIsYnY6ImF3aCIsaHI6InVuaXZlcnNhbF9jbGFpbV9yZWdpc3RyeSJ9fTt2YXIga209ZnVuY3Rpb24oYSl7cmV0dXJuIHRmKGZ1bmN0aW9uKGIpe2Zvcih2YXIgYyBpbiBhKWlmKGI9PT1hW2NdJiYhL15bMC05XSskLy50ZXN0KGMpKXJldHVybiEwO3JldHVybiExfSl9KGptLmJhKTsKZnVuY3Rpb24gbG0oYSxiKXtiPWI9PT12b2lkIDA/ITE6YjtpZihrbShhKSl7dmFyIGMsZCxlPShkPShjPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSkueGNkKSE9bnVsbD9kOmMueGNkPXt9O2lmKGVbYV0pcmV0dXJuIGVbYV07aWYoYil7dmFyIGY9dm9pZCAwLGc9MSxoPXt9LGw9e3NldDpmdW5jdGlvbihuKXtmPW47bC5ub3RpZnkoKX0sZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGZ9LHN1YnNjcmliZTpmdW5jdGlvbihuKXtoW1N0cmluZyhnKV09bjtyZXR1cm4gZysrfSx1bnN1YnNjcmliZTpmdW5jdGlvbihuKXt2YXIgcD1TdHJpbmcobik7cmV0dXJuIGguaGFzT3duUHJvcGVydHkocCk/KGRlbGV0ZSBoW3BdLCEwKTohMX0sbm90aWZ5OmZ1bmN0aW9uKCl7Zm9yKHZhciBuPW0oT2JqZWN0LmtleXMoaCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3RyeXtoW3FdKGEsZil9Y2F0Y2gocil7fX19fTtyZXR1cm4gZVthXT1sfX19CmZ1bmN0aW9uIG1tKGEsYil7dmFyIGM9bG0oYSwhMCk7YyYmYy5zZXQoYil9ZnVuY3Rpb24gbm0oYSl7dmFyIGI7cmV0dXJuKGI9bG0oYSkpPT1udWxsP3ZvaWQgMDpiLmdldCgpfWZ1bmN0aW9uIG9tKGEsYil7dmFyIGM9bG0oYSk7aWYoIWMpe2M9bG0oYSwhMCk7aWYoIWMpcmV0dXJuO2Muc2V0KGIpfXJldHVybiBjLmdldCgpfWZ1bmN0aW9uIHBtKGEsYil7aWYodHlwZW9mIGI9PT0iZnVuY3Rpb24iKXt2YXIgYztyZXR1cm4oYz1sbShhLCEwKSk9PW51bGw/dm9pZCAwOmMuc3Vic2NyaWJlKGIpfX1mdW5jdGlvbiBxbShhLGIpe3ZhciBjPWxtKGEpO3JldHVybiBjP2MudW5zdWJzY3JpYmUoYik6ITF9O3ZhciBzbT1mdW5jdGlvbigpe3RoaXMuSD17fTt0aGlzLks9ITF9O3NtLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dGhpcy5LfHwodGhpcy5IPXRtKCksdGhpcy5IWyIwIl0mJm9tKGptLmJhLlNlLEpTT04uc3RyaW5naWZ5KHRoaXMuSCkpKX07CnZhciB4bT1mdW5jdGlvbigpe3ZhciBhPXVtLGI9dm0sYz12b2lkIDAsZD1mdW5jdGlvbigpe2MhPT12b2lkIDAmJnFtKGptLmJhLlNlLGMpO3RyeXt2YXIgZj1ubShqbS5iYS5TZSk7Yi5IPUpTT04ucGFyc2UoZil9Y2F0Y2goZyl7UCgxMjMpLGltKDIpLGIuSD17fX1iLks9ITA7YSgpfSxlPW5tKGptLmJhLlNlKTtlP2QoZSk6KGM9cG0oam0uYmEuU2UsZCksd20oKSl9LHdtPWZ1bmN0aW9uKCl7aWYoIW5tKGptLmJhLlhpKSl7bW0oam0uYmEuWGksITApO3ZhciBhPWZ1bmN0aW9uKGIpe21tKGptLmJhLlNlLGJ8fCJ7fSIpO21tKGptLmJhLlhpLCExKX07dHJ5e0EuZmV0Y2goImh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vY2NtL2dlbyIse21ldGhvZDoiR0VUIixjYWNoZToibm8tc3RvcmUiLG1vZGU6ImNvcnMiLGNyZWRlbnRpYWxzOiJvbWl0In0pLnRoZW4oZnVuY3Rpb24oYil7Yi5vaz9iLnRleHQoKS50aGVuKGZ1bmN0aW9uKGMpe2EoYyl9LGZ1bmN0aW9uKCl7YSgpfSk6YSgpfSxmdW5jdGlvbigpe2EoKX0pfWNhdGNoKGIpe2EoKX19fSwKdG09ZnVuY3Rpb24oKXt2YXIgYT1FKDIyKTt0cnl7cmV0dXJuIEpTT04ucGFyc2UocWIoYSkpfWNhdGNoKGIpe3JldHVybiBQKDEyMyksaW0oMikse319fSx5bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIwIl18fCIifSx6bT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyIxIl18fCIifSxBbT1mdW5jdGlvbigpe3ZhciBhPXZtLGI9ITE7Yj0hIWEuSFsiMiJdO3JldHVybiBifSxCbT1mdW5jdGlvbigpe3JldHVybiB2bS5IWyI2Il0hPT0hMX0sQ209ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSExO2I9ISFhLkhbIjkiXTtyZXR1cm4gYn0sRG09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyI0Il18fCIiOwpyZXR1cm4gYn0sRW09ZnVuY3Rpb24oKXt2YXIgYT12bSxiPSIiO2I9YS5IWyIzIl18fCIiO3JldHVybiBifSx2bT1uZXcgc207ZnVuY3Rpb24gRm0oYSl7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuImh0dHBzOi8vIisoRG0oKXx8Ind3dyIpKyIuZ29vZ2xlLWFuYWx5dGljcy5jb20vIithfWZ1bmN0aW9uIEdtKGEpe2E9YT09PXZvaWQgMD8iZy9jb2xsZWN0IjphO3ZhciBiPURtKCk7cmV0dXJuImh0dHBzOi8vIisoYj9iKyIuIjoiIikrImFuYWx5dGljcy5nb29nbGUuY29tLyIrYX12YXIgSG09e30sSW09KEhtWzE3XT1mdW5jdGlvbigpe3JldHVybiBXaigpJiYhRG0oKT9YaigpKyIvYWcvZy9jIjpHbSgpfSxIbVsxNl09ZnVuY3Rpb24oKXtyZXR1cm4gV2ooKSYmIURtKCk/WGooKSsiL2dhL2cvYyI6Rm0oKX0sSG1bNjddPWZ1bmN0aW9uKCl7dmFyIGE7YT1hPT09dm9pZCAwPyJnL2NvbGxlY3QiOmE7cmV0dXJuIERtKCk/IiI6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vIithfSxIbSk7ZnVuY3Rpb24gSm0oYSxiLGMpe3ZhciBkPVVsKGIsIi9tZWFzdXJlbWVudC9jb252ZXJzaW9uIixjKTtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gRG0oKT9hKCJtZWFzdXJlbWVudC9jb252ZXJzaW9uIik6ZCgpfX12YXIgS209e30sTG09KEttWzU1XT1KbShGbSwicGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20iLCIvZ3MiKSxLbVs1NF09Sm0oR20sInd3dy5nb29nbGUuY29tIiwiL2ciKSxLbSk7dmFyIE1tPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sV2wsWWwsJGwsYm0sZG0sZm0saG0sTG0sSW0pO2Z1bmN0aW9uIE5tKGEsYil7dmFyIGM9T2JqZWN0LmtleXMoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBiW2RdIT1udWxsfSkubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkKyI9IitiW2RdfSkuam9pbigiJiIpO3JldHVybiBNbVthXSh2b2lkIDApKyI/IitjfTt2YXIgT209e30sUG09KE9tLnRkcD0xLE9tLmV4cD0xLE9tLmd0bT0xLE9tLnBpZD0xLE9tLmRsPTEsT20uc2VxPTEsT20udD0xLE9tLnY9MSxPbSksUm09ZnVuY3Rpb24oKXt2YXIgYT1RbTtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGEuSFtiXX0pfSxTbT1mdW5jdGlvbihhLGIsYyl7aWYoYS5IW2JdPT09dm9pZCAwfHwoYz09PXZvaWQgMD8wOmMpKWEuSFtiXT0hMH0sVG09ZnVuY3Rpb24oYSl7YS5mb3JFYWNoKGZ1bmN0aW9uKGIpe1BtW2JdfHwoUW0uSFtiXT0hMSl9KX0sUW09bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuSz17fX07ZnVuY3Rpb24gVW0oYSxiLGMpe3ZhciBkPWM9PT12b2lkIDA/ITA6YyxlPVFtO2UuS1thXT1iOyhkPT09dm9pZCAwfHxkKSYmU20oZSxhKX1mdW5jdGlvbiBWbShhLGIpe1NtKFFtLGEsYj09PXZvaWQgMD8hMTpiKX07ZnVuY3Rpb24gV20oYSl7dmFyIGI9MDthLkdjLmZvckVhY2goZnVuY3Rpb24oYyl7Ynw9MTw8Y30pO3JldHVybiBifWZ1bmN0aW9uIFhtKCl7cmV0dXJue3RvdGFsOjAsamI6MCxHYzpuZXcgU2V0LGxmOnt9fX1mdW5jdGlvbiBZbShhLGIsYyxkKXt2YXIgZT1PYmplY3Qua2V5cyhhLm5mKS5zb3J0KGZ1bmN0aW9uKGYsZyl7cmV0dXJuIE51bWJlcihmKS1OdW1iZXIoZyl9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuW2YsYihhLm5mW2ZdKV19KS5maWx0ZXIoZnVuY3Rpb24oZil7cmV0dXJuIGZbMV0hPT12b2lkIDB9KS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuam9pbihjKX0pLmpvaW4oZCk7cmV0dXJuIGU/ZTp2b2lkIDB9CmZ1bmN0aW9uIFptKGEsYil7dmFyIGMsZCxlO2M9Yz09PXZvaWQgMD8iXyI6YztkPWQ9PT12b2lkIDA/IjsiOmQ7ZT1lPT09dm9pZCAwPyJ+IjplO2Zvcih2YXIgZj1bXSxnPW0oT2JqZWN0LmtleXMoYS5sZikuc29ydCgpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPVltKGEubGZbbF0sYixjLGQpO2lmKG4pe3ZhciBwPXZvaWQgMDtmLnB1c2goIiIrKChwPWwpIT1udWxsP3A6IiIpK2Qrbil9fXJldHVybiBmLmxlbmd0aD9mLmpvaW4oZSk6dm9pZCAwfQpmdW5jdGlvbiAkbShhKXthLmpiPTA7YS5HYy5jbGVhcigpO2Zvcih2YXIgYj1tKE9iamVjdC5rZXlzKGEubGYpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9YS5sZltjLnZhbHVlXTtkLmpiPTA7ZC5HYy5jbGVhcigpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGQubmYpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9ZC5uZltmLnZhbHVlXTtnLmpiPTA7Zy5HYy5jbGVhcigpfX19CmZ1bmN0aW9uIGFuKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPzE6ZDthLnRvdGFsKz1kO2EuamIrPWQ7dmFyIGYsZz1iPT09dm9pZCAwPyIiOmI7Zj1hLmxmW2ddfHwoYS5sZltnXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXQsbmY6e319KTtmLnRvdGFsKz1kO2YuamIrPWQ7dmFyIGgsbD1TdHJpbmcoYyk7aD1mLm5mW2xdfHwoZi5uZltsXT17dG90YWw6MCxqYjowLEdjOm5ldyBTZXR9KTtoLnRvdGFsKz1kO2guamIrPWQ7ZSE9PXZvaWQgMCYmKGEuR2MuYWRkKGUpLGYuR2MuYWRkKGUpLGguR2MuYWRkKGUpKX07dmFyIGJuPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCl9O2JuLnByb3RvdHlwZS5pbmNyZW1lbnQ9ZnVuY3Rpb24oYSxiKXthbih0aGlzLkgsYSxiKX07dmFyIGNuPW5ldyBibjtmdW5jdGlvbiBkbihhKXt2YXIgYj1TdHJpbmcoYVtHZi5ZYl18fCIiKS5yZXBsYWNlKC9fL2csIiIpO3JldHVybiBTYihiLCJjdnQiKT8iY3Z0IjpifXZhciBlbj1BLmxvY2F0aW9uLnNlYXJjaC5pbmRleE9mKCI/Z3RtX2xhdGVuY3k9Iik+PTB8fEEubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoIiZndG1fbGF0ZW5jeT0iKT49MDt2YXIgZ249ZnVuY3Rpb24oKXt2YXIgYT1mbjtyZXR1cm4gTSg2MDMpJiZJZig2NSwhMSkmJiFhLlp9LGZuPW5ldyBmdW5jdGlvbihhKXt0aGlzLlI9YSgpO3ZhciBiPUpmKDI3KTt0aGlzLk49ZW58fHRoaXMuUjxiO3ZhciBjPUpmKDQyKTt0aGlzLlo9ZW58fHRoaXMuUj49MS1jO3ZhciBkPU0oNjAzKSYmSWYoNjUsITEpO3RoaXMuSz10aGlzLlp8fGQ7dmFyIGU9SmYoMjcpLGY9SmYoNjMpO3RoaXMuSD1lbnx8Zj09PTF8fHRoaXMuUj49ZSYmdGhpcy5SPGUrZn0oZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKX0pO3ZhciBobj1mdW5jdGlvbigpe3RoaXMuSD17fX07aG4ucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGEsYixjKXtpZihmbi5LKXt2YXIgZD1qbihiLGMpO2lmKGQpe3ZhciBlLGY9YjtmPT09NCYmKGY9NSk7dmFyIGc9dGhpcy5IW2ZdO2d8fChnPXRoaXMuSFtmXT17fSk7ZT1nO3ZhciBoPWVbZF07aHx8KGg9ZVtkXT1bXSk7aC5wdXNoKG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSkpO2NuLmluY3JlbWVudChhLmRlc3RpbmF0aW9uSWQsYS5lbmRwb2ludCk7YS5lbmRwb2ludCE9PTU2JiZhLmVuZHBvaW50IT09NjEmJlZtKCJtZGUiLCEwKX19fTsKdmFyIG1uPWZ1bmN0aW9uKGEsYil7dmFyIGM9a24sZD1qbihhLGIpO2lmKGQpe3ZhciBlPWxuKGMsYSk7aWYoZSl7dmFyIGY9ZVtkXTtmJiYoZVtkXT1mLmZpbHRlcihmdW5jdGlvbihnKXtyZXR1cm4hZy5Fb30pKX19fSxsbj1mdW5jdGlvbihhLGIpe2I9PT00JiYoYj01KTtyZXR1cm4gYS5IW2JdfSxqbj1mdW5jdGlvbihhLGIpe3ZhciBjPWI7aWYoYlswXT09PSIvIil7dmFyIGQ7Yz0oKGQ9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmQub3JpZ2luKStifXRyeXt2YXIgZT1uZXcgVVJMKGMpO3JldHVybiBhPT09Mj9lLm9yaWdpbjplLm9yaWdpbitlLnBhdGhuYW1lfWNhdGNoKGYpe319LGtuPW5ldyBobjsKZnVuY3Rpb24gbm4oYSl7c3dpdGNoKGEpe2Nhc2UgInNjcmlwdC1zcmMiOnJldHVybiA0O2Nhc2UgInNjcmlwdC1zcmMtZWxlbSI6cmV0dXJuIDU7Y2FzZSAiZnJhbWUtc3JjIjpyZXR1cm4gMjtjYXNlICJjb25uZWN0LXNyYyI6cmV0dXJuIDE7Y2FzZSAiaW1nLXNyYyI6cmV0dXJuIDN9fTtmdW5jdGlvbiBvbihhLGIsYyl7dmFyIGQsZT1hLkdvb2dsZWJRaENzTztlfHwoZT17fSxhLkdvb2dsZWJRaENzTz1lKTtkPWU7aWYoZFtiXSlyZXR1cm4hMTtkW2JdPVtdO2RbYl1bMF09YztyZXR1cm4hMH07dmFyIHBuLHFuO2E6e2Zvcih2YXIgcm49WyJDTE9TVVJFX0ZMQUdTIl0sc249UmEsdG49MDt0bjxybi5sZW5ndGg7dG4rKylpZihzbj1zbltyblt0bl1dLHNuPT1udWxsKXtxbj1udWxsO2JyZWFrIGF9cW49c259dmFyIHVuPXFuJiZxbls2MTA0MDEzMDFdO3BuPXVuIT1udWxsP3VuOiExO2Z1bmN0aW9uIHZuKCl7dmFyIGE9UmEubmF2aWdhdG9yO2lmKGEpe3ZhciBiPWEudXNlckFnZW50O2lmKGIpcmV0dXJuIGJ9cmV0dXJuIiJ9dmFyIHduLHhuPVJhLm5hdmlnYXRvcjt3bj14bj94bi51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7ZnVuY3Rpb24geW4oYSl7aWYoIXBufHwhd24pcmV0dXJuITE7Zm9yKHZhciBiPTA7Yjx3bi5icmFuZHMubGVuZ3RoO2IrKyl7dmFyIGM9d24uYnJhbmRzW2JdLmJyYW5kO2lmKGMmJmMuaW5kZXhPZihhKSE9LTEpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gem4oYSl7cmV0dXJuIHZuKCkuaW5kZXhPZihhKSE9LTF9O2Z1bmN0aW9uIEFuKCl7cmV0dXJuIHBuPyEhd24mJnduLmJyYW5kcy5sZW5ndGg+MDohMX1mdW5jdGlvbiBCbigpe3JldHVybiBBbigpPyExOnpuKCJPcGVyYSIpfWZ1bmN0aW9uIENuKCl7cmV0dXJuIHpuKCJGaXJlZm94Iil8fHpuKCJGeGlPUyIpfWZ1bmN0aW9uIERuKCl7cmV0dXJuIEFuKCk/eW4oIkNocm9taXVtIik6KHpuKCJDaHJvbWUiKXx8em4oIkNyaU9TIikpJiYhKEFuKCk/MDp6bigiRWRnZSIpKXx8em4oIlNpbGsiKX07ZnVuY3Rpb24gRW4oKXtyZXR1cm4gcG4/ISF3biYmISF3bi5wbGF0Zm9ybTohMX1mdW5jdGlvbiBGbigpe3JldHVybiB6bigiaVBob25lIikmJiF6bigiaVBvZCIpJiYhem4oImlQYWQiKX1mdW5jdGlvbiBHbigpe0ZuKCl8fHpuKCJpUGFkIil8fHpuKCJpUG9kIil9O3ZhciBIbj1mdW5jdGlvbihhKXtIblsiICJdKGEpO3JldHVybiBhfTtIblsiICJdPWZ1bmN0aW9uKCl7fTtCbigpO0FuKCl8fHpuKCJUcmlkZW50Iil8fHpuKCJNU0lFIik7em4oIkVkZ2UiKTshem4oIkdlY2tvIil8fHZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpfHx6bigiVHJpZGVudCIpfHx6bigiTVNJRSIpfHx6bigiRWRnZSIpO3ZuKCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSE9LTEmJiF6bigiRWRnZSIpJiZ6bigiTW9iaWxlIik7RW4oKXx8em4oIk1hY2ludG9zaCIpO0VuKCl8fHpuKCJXaW5kb3dzIik7KEVuKCk/d24ucGxhdGZvcm09PT0iTGludXgiOnpuKCJMaW51eCIpKXx8RW4oKXx8em4oIkNyT1MiKTtFbigpfHx6bigiQW5kcm9pZCIpO0ZuKCk7em4oImlQYWQiKTt6bigiaVBvZCIpO0duKCk7dm4oKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImthaW9zIik7Q24oKTtGbigpfHx6bigiaVBvZCIpO3puKCJpUGFkIik7IXpuKCJBbmRyb2lkIil8fERuKCl8fENuKCl8fEJuKCl8fHpuKCJTaWxrIik7RG4oKTshem4oIlNhZmFyaSIpfHxEbigpfHwoQW4oKT8wOnpuKCJDb2FzdCIpKXx8Qm4oKXx8KEFuKCk/MDp6bigiRWRnZSIpKXx8KEFuKCk/eW4oIk1pY3Jvc29mdCBFZGdlIik6em4oIkVkZy8iKSl8fChBbigpP3luKCJPcGVyYSIpOnpuKCJPUFIiKSl8fENuKCl8fHpuKCJTaWxrIil8fHpuKCJBbmRyb2lkIil8fEduKCk7dmFyIEluPXt9LEpuPW51bGw7CmZ1bmN0aW9uIEtuKGEpe2Zvcih2YXIgYj1bXSxjPTAsZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hLmNoYXJDb2RlQXQoZCk7ZT4yNTUmJihiW2MrK109ZSYyNTUsZT4+PTgpO2JbYysrXT1lfXZhciBmPTQ7Zj09PXZvaWQgMCYmKGY9MCk7aWYoIUpuKXtKbj17fTtmb3IodmFyIGc9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ii5zcGxpdCgiIiksaD1bIisvPSIsIisvIiwiLV89IiwiLV8uIiwiLV8iXSxsPTA7bDw1O2wrKyl7dmFyIG49Zy5jb25jYXQoaFtsXS5zcGxpdCgiIikpO0luW2xdPW47Zm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07Sm5bcV09PT12b2lkIDAmJihKbltxXT1wKX19fWZvcih2YXIgcj1JbltmXSx0PUFycmF5KE1hdGguZmxvb3IoYi5sZW5ndGgvMykpLHU9cls2NF18fCIiLHY9MCx4PTA7djxiLmxlbmd0aC0yO3YrPTMpe3ZhciB5PWJbdl0sej1iW3YrMV0sQz1iW3YrMl0sCkQ9clt5Pj4yXSxJPXJbKHkmMyk8PDR8ej4+NF0sRz1yWyh6JjE1KTw8MnxDPj42XSxOPXJbQyY2M107dFt4KytdPSIiK0QrSStHK059dmFyIFM9MCxXPXU7c3dpdGNoKGIubGVuZ3RoLXYpe2Nhc2UgMjpTPWJbdisxXSxXPXJbKFMmMTUpPDwyXXx8dTtjYXNlIDE6dmFyIGVhPWJbdl07dFt4XT0iIityW2VhPj4yXStyWyhlYSYzKTw8NHxTPj40XStXK3V9cmV0dXJuIHQuam9pbigiIil9O3ZhciBMbj1mdW5jdGlvbihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEucmVwbGFjZSgvXCsvZywiICIpKX07dmFyIE1uPVJlZ0V4cCgiXig/OihbXjovPyMuXSspOik/KD86Ly8oPzooW15cXFxcLz8jXSopQCk/KFteXFxcXC8/I10qPykoPzo6KFswLTldKykpPyg/PVtcXFxcLz8jXXwkKSk/KFtePyNdKyk/KD86XFw/KFteI10qKSk/KD86IyhbXFxzXFxTXSopKT8kIik7ZnVuY3Rpb24gTm4oYSxiLGMsZCl7Zm9yKHZhciBlPWIsZj1jLmxlbmd0aDsoZT1hLmluZGV4T2YoYyxlKSk+PTAmJmU8ZDspe3ZhciBnPWEuY2hhckNvZGVBdChlLTEpO2lmKGc9PTM4fHxnPT02Myl7dmFyIGg9YS5jaGFyQ29kZUF0KGUrZik7aWYoIWh8fGg9PTYxfHxoPT0zOHx8aD09MzUpcmV0dXJuIGV9ZSs9ZisxfXJldHVybi0xfXZhciBPbj0vI3wkLzsKZnVuY3Rpb24gUG4oYSxiKXt2YXIgYz1hLnNlYXJjaChPbiksZD1ObihhLDAsYixjKTtpZihkPDApcmV0dXJuIG51bGw7dmFyIGU9YS5pbmRleE9mKCImIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gTG4oYS5zbGljZShkLGUhPT0tMT9lOjApKX12YXIgUW49L1s/Jl0oJHwjKS87CmZ1bmN0aW9uIFJuKGEsYixjKXtmb3IodmFyIGQsZT1hLnNlYXJjaChPbiksZj0wLGcsaD1bXTsoZz1ObihhLGYsYixlKSk+PTA7KWgucHVzaChhLnN1YnN0cmluZyhmLGcpKSxmPU1hdGgubWluKGEuaW5kZXhPZigiJiIsZykrMXx8ZSxlKTtoLnB1c2goYS5zbGljZShmKSk7ZD1oLmpvaW4oIiIpLnJlcGxhY2UoUW4sIiQxIik7dmFyIGwsbj1jIT1udWxsPyI9IitlbmNvZGVVUklDb21wb25lbnQoU3RyaW5nKGMpKToiIjt2YXIgcD1iK247aWYocCl7dmFyIHEscj1kLmluZGV4T2YoIiMiKTtyPDAmJihyPWQubGVuZ3RoKTt2YXIgdD1kLmluZGV4T2YoIj8iKSx1O3Q8MHx8dD5yPyh0PXIsdT0iIik6dT1kLnN1YnN0cmluZyh0KzEscik7cT1bZC5zbGljZSgwLHQpLHUsZC5zbGljZShyKV07dmFyIHY9cVsxXTtxWzFdPXA/dj92KyImIitwOnA6djtsPXFbMF0rKHFbMV0/Ij8iK3FbMV06IiIpK3FbMl19ZWxzZSBsPWQ7cmV0dXJuIGx9O2Z1bmN0aW9uIFNuKGEsYixjLGQsZSxmLGcsaCl7dmFyIGw9UG4oYywiZm10Iik7aWYoZCl7dmFyIG49UG4oYywicmFuZG9tIikscD1QbihjLCJsYWJlbCIpfHwiIjtpZighbilyZXR1cm47dmFyIHE9S24oTG4ocCkrIjoiK0xuKG4pKTtpZighb24oYSxxLGQpKXJldHVybn1sJiZOdW1iZXIobCkhPT00PyhjPVJuKGMsInJmbXQiLGwpLGM9Um4oYywiZm10Iiw0KSk6bHx8KGM9Um4oYywiZm10Iiw0KSk7VWMoYyxmdW5jdGlvbigpe2c9PW51bGx8fFRuKGcpO2g9PW51bGx8fFVuKGgsYyk7YS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzJiZkJiYoYS5nb29nbGVfbm9GdXJ0aGVyUmVkaXJlY3RzPW51bGwsZCgpKX0sZnVuY3Rpb24oKXtnPT1udWxsfHxUbihnKTtoPT1udWxsfHxVbihoLGMpO2U9PW51bGx8fGUoKX0sZixiLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXS5wYXJlbnRFbGVtZW50fHx2b2lkIDApO3JldHVybiBjfTtmdW5jdGlvbiBWbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwxLGJbMF0pO2lkLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gV24oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gamQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBYbihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSwzLGJbMF0pO1pjLmFwcGx5KG51bGwsdyhiKSl9ZnVuY3Rpb24gWW4oYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2tuLnJlZ2lzdGVyKGEsMSxiWzBdKTtyZXR1cm4gbWQuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBabihhKXt2YXIgYj1PYS5hcHBseSgxLGFyZ3VtZW50cyk7a24ucmVnaXN0ZXIoYSw1LGJbMF0pO1VjLmFwcGx5KG51bGwsdyhiKSl9CmZ1bmN0aW9uICRuKGEpe3ZhciBiPU9hLmFwcGx5KDEsYXJndW1lbnRzKTtiWzBdJiZrbi5yZWdpc3RlcihhLDIsYlswXSk7WGMuYXBwbHkobnVsbCx3KGIpKX1mdW5jdGlvbiBhbyhhKXt2YXIgYj1Tbi5hcHBseShudWxsLHcoT2EuYXBwbHkoMSxhcmd1bWVudHMpKSk7YiYma24ucmVnaXN0ZXIoYSw0LGIpO3JldHVybiBifTt2YXIgYm89e01hOntSZTowLFVlOjEsTGg6Mn19O2JvLk1hW2JvLk1hLlJlXT0iRlVMTF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLlVlXT0iTElNSVRFRF9UUkFOU01JU1NJT04iO2JvLk1hW2JvLk1hLkxoXT0iTk9fVFJBTlNNSVNTSU9OIjt2YXIgY289e2lhOntnZDowLGNiOjEseGQ6MixaYjozfX07Y28uaWFbY28uaWEuZ2RdPSJOT19RVUVVRSI7Y28uaWFbY28uaWEuY2JdPSJBRFMiO2NvLmlhW2NvLmlhLnhkXT0iQU5BTFlUSUNTIjtjby5pYVtjby5pYS5aYl09Ik1PTklUT1JJTkciO3ZhciBlbz1mdW5jdGlvbihhLGIpe3RoaXMuSD1hO3RoaXMuY29uc2VudFR5cGVzPWJ9O2VvLnByb3RvdHlwZS5pc0NvbnNlbnRHcmFudGVkPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuSCl7Y2FzZSAwOnJldHVybiB0aGlzLmNvbnNlbnRUeXBlcy5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gQmwoYSl9KTtjYXNlIDE6cmV0dXJuIHRoaXMuY29uc2VudFR5cGVzLnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIEJsKGEpfSk7ZGVmYXVsdDp5Yyh0aGlzLkgsImNvbnNlbnRzUmVxdWlyZWQgaGFkIGFuIHVua25vd24gdHlwZSIpfX07CnZhciBmbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT17fTt0aGlzLkg9KGFbY28uaWEuZ2RdPWJvLk1hLlJlLGFbY28uaWEuY2JdPWJvLk1hLlJlLGFbY28uaWEueGRdPWJvLk1hLlJlLGFbY28uaWEuWmJdPWJvLk1hLlJlLGEpO3ZhciBiPXt9O3RoaXMuSz0oYltjby5pYS5nZF09bmV3IGVvKDAsW10pLGJbY28uaWEuY2JdPW5ldyBlbygwLFsiYWRfc3RvcmFnZSJdKSxiW2NvLmlhLnhkXT1uZXcgZW8oMCxbImFuYWx5dGljc19zdG9yYWdlIl0pLGJbY28uaWEuWmJdPW5ldyBlbygxLFsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl0pLGIpfTt2YXIgaG89ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczt0aGlzLnR5cGU9YTt0aGlzLkg9W107RmwoZm8uS1thXS5jb25zZW50VHlwZXMsZnVuY3Rpb24oKXtnbyhiKXx8Yi5mbHVzaCgpfSl9O2hvLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgYT1tKHRoaXMuSCksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpe3ZhciBjPWIudmFsdWU7YygpfXRoaXMuSD1bXX07dmFyIGdvPWZ1bmN0aW9uKGEpe3JldHVybiBmby5IW2EudHlwZV09PT1iby5NYS5MaCYmIWZvLktbYS50eXBlXS5pc0NvbnNlbnRHcmFudGVkKCl9LGlvPWZ1bmN0aW9uKGEsYil7Z28oYSk/YS5ILnB1c2goYik6YigpfSxqbz1mdW5jdGlvbigpe3RoaXMuSD1uZXcgTWFwfSxsbz1mdW5jdGlvbihhKXt2YXIgYj1rbztiLkguaGFzKGEpfHxiLkguc2V0KGEsbmV3IGhvKGEpKTtyZXR1cm4gYi5ILmdldChhKX07am8ucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5ILmNsZWFyKCl9Owp2YXIga289bmV3IGpvO3ZhciBtbz1bImZpbiIsImZzIiwibWNjIiwibmNjIl0sbm89ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwPyExOmE7dmFyIGI9Um0oKSxjPVFtLkssZD1iLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4gY1tlXSE9PXZvaWQgMCYmKGF8fCFtby5pbmNsdWRlcyhlKSl9KTtUbShkKTtyZXR1cm4gZC5tYXAoZnVuY3Rpb24oZSl7dmFyIGY9Y1tlXTt0eXBlb2YgZj09PSJmdW5jdGlvbiImJihmPWYoKSk7cmV0dXJuIGY/IiYiK2UrIj0iK2Y6IiJ9KS5qb2luKCIiKSsiJno9MCJ9LG9vPWZ1bmN0aW9uKGEpe3ZhciBiPSJodHRwczovLyIrRSgyMSksYz0iL3RkP2lkPSIrRSg1KTtyZXR1cm4iIitmayhiKStjK2F9LHBvPWZ1bmN0aW9uKGEsYixjKXtiPWI9PT12b2lkIDA/ITE6YjtjPWM9PT12b2lkIDA/ITE6YztpZigkaygyNikmJmZuLksmJkUoNSkmJihjfHwhZ24oKSkpe3ZhciBkPWxvKGNvLmlhLlpiKTtpZihnbyhkKSlhLkh8fChhLkg9ITAsaW8oZCxmdW5jdGlvbigpe3JldHVybiBwbyhhKX0pKTsKZWxzZXtiJiZVbSgiZmluIiwiMSIpO3ZhciBlPW5vKGIpLGY9b28oZSksZz17ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjYxfTtiP1luKGcsZix2b2lkIDAse1FnOiEwfSx2b2lkIDAsZnVuY3Rpb24oKXtaYyhmKyImaW1nPTEiKX0pOlhuKGcsZik7YS5IPSExO3FvKGUpfX19LHFvPWZ1bmN0aW9uKGEpe2lmKEtjJiYoU2IoS2MsImh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tLyIpfHxJZig0NykpJiYhKGEuaW5kZXhPZigiJmNzcD0iKTwwJiZhLmluZGV4T2YoIiZtZGU9Iik8MCkpe3ZhciBiO2E6e3RyeXtpZihLYyl7Yj1uZXcgVVJMKEtjKTticmVhayBhfX1jYXRjaChjKXt9Yj12b2lkIDB9YiYmVWMoIiIrS2MrKEtjLmluZGV4T2YoIj8iKT49MD8iJiI6Ij8iKSsiaXNfdGQ9MSIrYSl9fSxybz1mdW5jdGlvbihhKXtSbSgpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIVBtW2JdfSkmJnBvKGEsITApfSxzbz1uZXcgZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSD0hMTsKJGMoQSwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7cm8oYSl9KX07ZnVuY3Rpb24gdG8oYSxiKXtwbyhzbyxhPT09dm9pZCAwPyExOmEsYj09PXZvaWQgMD8hMTpiKX07dmFyIHVvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIiwiYWRfdXNlcl9kYXRhIiwiYWRfcGVyc29uYWxpemF0aW9uIl0sdm89W0YuRC5kZCxGLkQueWMsRi5ELlFmLEYuRC5LYixGLkQueGMsRi5ELmZiLEYuRC5EYixGLkQubmIsRi5ELkxiLEYuRC52Y10seW89ZnVuY3Rpb24oKXt2YXIgYT13bzshYS5SJiZhLkgmJih1by5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBBbC5jb250YWluZXJTY29wZWREZWZhdWx0c1tiXSE9PTF9KXx8eG8oIm1iYyIpKTthLlI9ITB9LHhvPWZ1bmN0aW9uKGEpe2ZuLksmJihVbShhLCIxIiksdG8oKSl9LHpvPWZ1bmN0aW9uKGEsYil7dmFyIGM9d287aWYoIWMuTltiXSYmKGMuTltiXT0hMCxjLktbYl0pKWZvcih2YXIgZD1tKHZvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlpZihPKGEsZS52YWx1ZSkpe3hvKCJlcmMiKTticmVha319LHdvPW5ldyBmdW5jdGlvbigpe3RoaXMuUj10aGlzLkg9ITE7dGhpcy5OPXt9O3RoaXMuSz17fX07dmFyIEFvPXt9LEJvPU9iamVjdC5mcmVlemUoKEFvW0YuRC5SY109MSxBb1tGLkQuaGhdPTEsQW9bRi5ELnNpXT0xLEFvW0YuRC5TY109MSxBb1tGLkQuSGFdPTEsQW9bRi5ELkxiXT0xLEFvW0YuRC5DYl09MSxBb1tGLkQuVGJdPTEsQW9bRi5ELklkXT0xLEFvW0YuRC52Y109MSxBb1tGLkQubmJdPTEsQW9bRi5ELkpkXT0xLEFvW0YuRC5IZV09MSxBb1tGLkQuT2FdPTEsQW9bRi5ELlFwXT0xLEFvW0YuRC5QZl09MSxBb1tGLkQuRmldPTEsQW9bRi5ELnBoXT0xLEFvW0YuRC5XY109MSxBb1tGLkQuUWZdPTEsQW9bRi5ELmFxXT0xLEFvW0YuRC5UYV09MSxBb1tGLkQuVWZdPTEsQW9bRi5ELmZxXT0xLEFvW0YuRC5PZF09MSxBb1tGLkQuUmxdPTEsQW9bRi5ELlljXT0xLEFvW0YuRC5aY109MSxBb1tGLkQuRGJdPTEsQW9bRi5ELmFtXT0xLEFvW0YuRC5XYl09MSxBb1tGLkQuVGRdPTEsQW9bRi5ELlhiXT0xLEFvW0YuRC5PaV09MSxBb1tGLkQuZGRdPTEsQW9bRi5ELnloXT0xLEFvW0YuRC5QaV09CjEsQW9bRi5ELlVkXT0xLEFvW0YuRC55Y109MSxBb1tGLkQuVmRdPTEsQW9bRi5ELmxtXT0xLEFvW0YuRC5XZF09MSxBb1tGLkQuZWRdPTEsQW9bRi5ELm9qXT0xLEFvKSk7T2JqZWN0LmZyZWV6ZShbRi5ELnphLEYuRC5VYSxGLkQuTWIsRi5ELnRiLEYuRC5OaSxGLkQuZmIsRi5ELkdpLEYuRC5NcF0pOwp2YXIgQ289e30sRG89T2JqZWN0LmZyZWV6ZSgoQ29bRi5ELnFwXT0xLENvW0YuRC5ycF09MSxDb1tGLkQudHBdPTEsQ29bRi5ELnVwXT0xLENvW0YuRC52cF09MSxDb1tGLkQuenBdPTEsQ29bRi5ELkFwXT0xLENvW0YuRC5CcF09MSxDb1tGLkQuRHBdPTEsQ29bRi5ELnlmXT0xLENvKSksRW89e30sRm89T2JqZWN0LmZyZWV6ZSgoRW9bRi5ELnZsXT0xLEVvW0YuRC53bF09MSxFb1tGLkQueGVdPTEsRW9bRi5ELnllXT0xLEVvW0YuRC54bF09MSxFb1tGLkQuQWRdPTEsRW9bRi5ELnplXT0xLEVvW0YuRC5vY109MSxFb1tGLkQuUWNdPTEsRW9bRi5ELnFjXT0xLEVvW0YuRC5JYl09MSxFb1tGLkQuQWVdPTEsRW9bRi5ELnJjXT0xLEVvW0YuRC55bF09MSxFbykpLEdvPU9iamVjdC5mcmVlemUoW0YuRC5SYyxGLkQuU2MsRi5ELkpkLEYuRC5RZixGLkQuV2YsRi5ELlRkLEYuRC5PaSxGLkQuVmRdKSxIbz1PYmplY3QuZnJlZXplKFtdLmNvbmNhdCh3KEdvKSkpLElvPU9iamVjdC5mcmVlemUoW0YuRC5DYiwKRi5ELnBoLEYuRC55aCxGLkQuUGksRi5ELm5oXSksSm89T2JqZWN0LmZyZWV6ZShbXS5jb25jYXQodyhJbykpKSxLbz17fSxMbz0oS29bRi5ELmthXT0iMSIsS29bRi5ELnJhXT0iMiIsS29bRi5ELm1hXT0iMyIsS29bRi5ELlhhXT0iNCIsS28pLE1vPXt9LE5vPU9iamVjdC5mcmVlemUoKE1vLnNlYXJjaD0icyIsTW8ueW91dHViZT0ieSIsTW8ucGxheXN0b3JlPSJwIixNby5zaG9wcGluZz0iaCIsTW8uYWRzPSJhIixNby5tYXBzPSJtIixNbykpO2Z1bmN0aW9uIE9vKGEpe3JldHVybiB0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbD97fTphfWZ1bmN0aW9uIFBvKGEpe3JldHVybiBhPT09dm9pZCAwfHxhPT09bnVsbD8iIjp0eXBlb2YgYT09PSJvYmplY3QiP2EudG9TdHJpbmcoKTpTdHJpbmcoYSl9ZnVuY3Rpb24gUW8oYSl7aWYoYSE9PXZvaWQgMCYmYSE9PW51bGwpcmV0dXJuIFBvKGEpfTt2YXIgUm89W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV07ZnVuY3Rpb24gU28oYSl7Zm9yKHZhciBiPW0oYVtGLkQubmNdfHxbIiJdKSxjPWIubmV4dCgpLGQ9e307IWMuZG9uZTtkPXtyZWdpb246dm9pZCAwfSxjPWIubmV4dCgpKWQucmVnaW9uPWMudmFsdWUsR2IoYSxmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oZixnKXtpZihmIT09Ri5ELm5jKXt2YXIgaD1QbyhnKSxsPWUucmVnaW9uLG49eW0oKSxwPXptKCk7eWw9ITA7eGwmJnNiKCJUQUdHSU5HIiwyMCk7dGwoKS5kZWNsYXJlKGYsaCxsLG4scCl9fX0oZCkpfQpmdW5jdGlvbiBUbyhhKXt5bygpO3ZhciBiPWFsKDE3LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxjPWFsKDE2LGZ1bmN0aW9uKCl7cmV0dXJuITF9KTshYiYmYyYmeG8oImNyYyIpO1prKDE3LCEwKTt2YXIgZD1hW0YuRC5ZZ107ZCYmUCg0MSk7dmFyIGU9YVtGLkQubmNdO2U/UCg0MCk6ZT1bIiJdO2Zvcih2YXIgZj1tKGUpLGc9Zi5uZXh0KCksaD17fTshZy5kb25lO2g9e0JvOnZvaWQgMH0sZz1mLm5leHQoKSloLkJvPWcudmFsdWUsR2IoYSxmdW5jdGlvbihsKXtyZXR1cm4gZnVuY3Rpb24obixwKXtpZihuIT09Ri5ELm5jJiZuIT09Ri5ELllnKXt2YXIgcT1RbyhwKSxyPWwuQm8sdD1OdW1iZXIoZCksdT15bSgpLHY9em0oKTt0PXQ9PT12b2lkIDA/MDp0O3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkuZGVmYXVsdChuLHEscix1LHYsdCxBbCl9fX0oaCkpfQpmdW5jdGlvbiBVbyhhKXtBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM9ITA7dmFyIGI9YVtGLkQubmNdO2lmKGIpe3ZhciBjPUFycmF5LmlzQXJyYXkoYik/YjpbYl07aWYoIWMuaW5jbHVkZXMoem0oKSkmJiFjLmluY2x1ZGVzKHltKCkpKXJldHVybn1HYihhLGZ1bmN0aW9uKGQsZSl7c3dpdGNoKGQpe2Nhc2UgImFkX3N0b3JhZ2UiOmNhc2UgImFuYWx5dGljc19zdG9yYWdlIjpjYXNlICJhZF91c2VyX2RhdGEiOmNhc2UgImFkX3BlcnNvbmFsaXphdGlvbiI6YnJlYWs7ZGVmYXVsdDpyZXR1cm59QWwudXNlZENvbnRhaW5lclNjb3BlZERlZmF1bHRzPSEwO0FsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzW2RdPWU9PT0iZ3JhbnRlZCI/MzoyfSl9CmZ1bmN0aW9uIFZvKGEsYil7eW8oKTtaaygxNiwhMCk7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPVBvKGQpO3hsPSEwO3lsJiZzYigiVEFHR0lORyIsMjApO3RsKCkudXBkYXRlKGMsZSxBbCl9KTtHbChiLmV2ZW50SWQsYi5wcmlvcml0eUlkKX1mdW5jdGlvbiBXbyhhKXthLmhhc093blByb3BlcnR5KCJhbGwiKSYmKEFsLnNlbGVjdGVkQWxsQ29yZVBsYXRmb3JtU2VydmljZXM9ITAsR2IoTm8sZnVuY3Rpb24oYil7QWwuY29yZVBsYXRmb3JtU2VydmljZXNbYl09YS5hbGw9PT0iZ3JhbnRlZCI7QWwudXNlZENvcmVQbGF0Zm9ybVNlcnZpY2VzPSEwfSkpO0diKGEsZnVuY3Rpb24oYixjKXtiIT09ImFsbCImJihBbC5jb3JlUGxhdGZvcm1TZXJ2aWNlc1tiXT1jPT09ImdyYW50ZWQiLEFsLnVzZWRDb3JlUGxhdGZvcm1TZXJ2aWNlcz0hMCl9KX0KZnVuY3Rpb24gWG8oYSl7QXJyYXkuaXNBcnJheShhKXx8KGE9W2FdKTtyZXR1cm4gYS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiBZbygpe3ZhciBhPVpvO0FycmF5LmlzQXJyYXkoYSl8fChhPVthXSk7cmV0dXJuIGEuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gQmwoYil9KX1mdW5jdGlvbiAkbyhhLGIpe0ZsKGEsYil9ZnVuY3Rpb24gYXAoYSxiKXtJbChhLGIpfWZ1bmN0aW9uIGJwKGEsYil7SGwoYSxiKX1mdW5jdGlvbiBjcCgpe3ZhciBhPVtGLkQua2EsRi5ELlhhLEYuRC5tYV07dGwoKS53YWl0Rm9yVXBkYXRlKGEsNTAwLEFsKX1mdW5jdGlvbiBkcChhKXtmb3IodmFyIGI9bShhKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTt0bCgpLmNsZWFyVGltZW91dChkLHZvaWQgMCxBbCl9R2woKX0KZnVuY3Rpb24gZXAoYSl7Zm9yKHZhciBiPXt9LGM9bShhLnNwbGl0KCJ8IikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWJbZC52YWx1ZV09ITA7cmV0dXJuIGJ9O3ZhciBmcD1PYmplY3QuZnJlZXplKFtGLkQua2EsRi5ELm1hXSk7CnZhciBocD1mdW5jdGlvbihhKXtmb3IodmFyIGI9e30sYz1tKE9iamVjdC5rZXlzKGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtiW2dwW2VdfHxlXT1hW2VdfXJldHVybiBifSxpcD1mdW5jdGlvbihhKXtyZXR1cm4hIVEoYSxILkoudmQpJiZSKGEsRi5ELlBkKT09PSIxIiYmUihhLEYuRC5IZCkhPT0iMSImJlhvKGZwKX0sanA9ZnVuY3Rpb24oYSxiKXtpZighaXAoYSkpcmV0dXJuITE7dmFyIGM9UWMoKXx8T2MoKT81ODo1NyxkPU5tKGMsaHAoYikpO1RsKGQsYSxjKTtZbih7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKyImZm10PTgiLHZvaWQgMCx7UWc6ITAsbWV0aG9kOiJHRVQifSxmdW5jdGlvbigpe30sZnVuY3Rpb24oKXtaYyhkKyImZm10PTMiKX0pO3JldHVybiEwfSxrcD17fSxncD0oa3AuZGw9InVybCIsa3AuZHI9CiJyZWYiLGtwLnVpZD0idXNlcklkIixrcCk7dmFyIGxwPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZD1mdW5jdGlvbihlKXtiW2VdIT1udWxsJiZiW2VdIT09IiImJihjW2VdPWJbZV0pfTtNKDQ3NCkmJmQoIl9nc2lkIik7UihhLEYuRC5IZCkhPT0iMSImJihkKCJnY2xpZCIpLGQoImdjbHNyYyIpLGQoImF1aWQiKSxkKCJkY2xpZCIpKTtpZihPYmplY3Qua2V5cyhjKS5sZW5ndGgpcmV0dXJuIGQoImd0bSIpLGN9Owp2YXIgbXA9e30sbnA9KG1wW0YuRC5zYV09ImdjdSIsbXBbRi5ELlNiXT0iZ2NsZ2IiLG1wW0YuRC5sYl09ImdjbGF3IixtcFtGLkQuemZdPSJnYWRfc291cmNlIixtcFtGLkQuQWZdPSJnYWRfc291cmNlX3NyYyIsbXBbRi5ELkRkXT0iZ2NsaWQiLG1wW0YuRC5BbF09ImdjbHNyYyIsbXBbRi5ELkJmXT0iZ2JyYWlkIixtcFtGLkQuRWVdPSJ3YnJhaWQiLG1wW0YuRC5FZF09ImF1aWQiLG1wW0YuRC5CbF09ImFlIixtcFtGLkQuSGFdPW51bGwsbXBbRi5ELkRsXT0icm5kIixtcFtGLkQuSGRdPSJuY2wiLG1wW0YuRC5OZl09ImdjbGRjIixtcFtGLkQuS2RdPSJkY2xpZCIsbXBbRi5ELlZjXT0iZWRpZCIsbXBbRi5ELlViXT0iZW4iLG1wW0YuRC5LZV09ImdkcHIiLG1wW0YuRC5YY109ImdkaWQiLG1wW0YuRC5UYV09bnVsbCxtcFtGLkQuTGVdPSJfbmciLG1wW0YuRC50aF09ImdwcF9zaWQiLG1wW0YuRC51aF09ImdwcCIsbXBbRi5ELlZmXT0iX3R1IixtcFtGLkQuUWxdPSJndG1fdXAiLG1wW0YuRC5NZV09CiJmcm0iLG1wW0YuRC5QZF09ImxwcyIsbXBbRi5ELkxpXT0iZGlkIixtcFtGLkQuVWxdPSJuYXZ0IixtcFtGLkQuemFdPSJkbCIsbXBbRi5ELlVhXT0iZHIiLG1wW0YuRC5NYl09ImR0IixtcFtGLkQuYm1dPSJzY3JzcmMiLG1wW0YuRC5aZl09ImdhX3VpZCIsbXBbRi5ELk9lXT0iZ2Rwcl9jb25zZW50IixtcFtGLkQuUWldPSJ0ZXN0b25seSIsbXBbRi5ELnJxXT0idV90eiIsbXBbRi5ELlBlXT0idG9wIixtcFtGLkQuUWVdPSJ0aWQiLG1wW0YuRC5mYl09InVpZCIsbXBbRi5ELmtnXT0idXNfcHJpdmFjeSIsbXBbRi5ELmVkXT1udWxsLG1wW0YuRC5kZV09Im5wYSIsbXApO2Z1bmN0aW9uIG9wKGEsYil7aWYoYiE9bnVsbCYmYiE9PSIiKXt2YXIgYz1iPT09ITA/IjEiOmI9PT0hMT8iMCI6ZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhiKSk7aWYoU2IoYSwiXyYiKSlyZXR1cm57a2V5OmEuc3Vic3RyaW5nKDIpLHZhbHVlOmN9O3ZhciBkPW5wW2FdO2lmKGQhPT1udWxsKXJldHVybiBkP3trZXk6ZCx2YWx1ZTpjfTp7a2V5OkFiKGIpPyJlcG4uIithOiJlcC4iK2EsdmFsdWU6Y319fTtmdW5jdGlvbiBwcChhKXthPWE9PT12b2lkIDA/W106YTtyZXR1cm4geGooYSkuam9pbigifiIpfTtmdW5jdGlvbiBxcCgpe3ZhciBhPVtdLGI9TnVtYmVyKCcnKXx8MCxjPU51bWJlcignJyl8fDA7Y3x8KGM9Yi8xMDApO3ZhciBkPWZ1bmN0aW9uKCl7dmFyIHQ9ITE7cmV0dXJuIHR9KCk7YS5wdXNoKHt1azoyMjgsc3R1ZHlJZDoyMjgsZXhwZXJpbWVudElkOjEwNTE3NzE1NCxjb250cm9sSWQ6MTA1MTc3MTU1LGNvbnRyb2xJZDI6MTA1MjU1MjQ1LHByb2JhYmlsaXR5OmMsYWN0aXZlOmQsWmU6MH0pO3ZhciBlPU51bWJlcignJyl8fAowLGY9TnVtYmVyKCcnKXx8MDtmfHwoZj1lLzEwMCk7dmFyIGc9ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjIzNSxzdHVkeUlkOjIzNSxleHBlcmltZW50SWQ6MTA1MzU3MTUwLGNvbnRyb2xJZDoxMDUzNTcxNTEsY29udHJvbElkMjowLHByb2JhYmlsaXR5OmYsYWN0aXZlOmcsWmU6MX0pO3ZhciBoPU51bWJlcignJyl8fDAsbD1OdW1iZXIoJycpfHwKMDtsfHwobD1oLzEwMCk7dmFyIG49ZnVuY3Rpb24oKXt2YXIgdD0hMTtyZXR1cm4gdH0oKTthLnB1c2goe3VrOjI2NixzdHVkeUlkOjI2NixleHBlcmltZW50SWQ6MTE1NzE4NTI5LGNvbnRyb2xJZDoxMTU3MTg1MzAsY29udHJvbElkMjoxMTU3MTg1MzEscHJvYmFiaWxpdHk6bCxhY3RpdmU6bixaZTowfSk7dmFyIHA9TnVtYmVyKCcnKXx8MCxxPU51bWJlcignJyl8fAowO3F8fChxPXAvMTAwKTt2YXIgcj1mdW5jdGlvbigpe3ZhciB0PSExO3JldHVybiB0fSgpO2EucHVzaCh7dWs6MjY3LHN0dWR5SWQ6MjY3LGV4cGVyaW1lbnRJZDoxMTU3MTg1MjYsY29udHJvbElkOjExNTcxODUyNyxjb250cm9sSWQyOjExNTcxODUyOCxwcm9iYWJpbGl0eTpxLGFjdGl2ZTpyLFplOjB9KTtyZXR1cm4gYX07dmFyIHJwPWZ1bmN0aW9uKCl7dGhpcy5LPXt9O3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5SPW5ldyBTZXR9LHhwPWZ1bmN0aW9uKGEsYil7dmFyIGM9YixkPWI9YS5OW2Muc3R1ZHlJZF0/bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLHthY3RpdmU6ITB9KTpjLGU9Rmk7ZC5jb250cm9sSWQyJiZkLnByb2JhYmlsaXR5PD0uMjV8fChkPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sZCx7Y29udHJvbElkMjowfSkpO2Uuc3R1ZGllc1tkLnN0dWR5SWRdPWQ7Yi5mb2N1c2VkJiYoYS5LW2Iuc3R1ZHlJZF09ITApO2lmKGIuWmU9PT0xKXt2YXIgZj1iLnN0dWR5SWQ7c3AoYSx0cCgpLGYpO3VwKGEsZik/dGoodWosZik6dnAoYSxmKT91ai5LW2ZdPSEwOndwKGEsZikmJih1ai5IW2ZdPSEwKX1lbHNlIGlmKGIuWmU9PT0wKXt2YXIgZz1iLnN0dWR5SWQ7c3AoYSxhLkgsZyk7dXAoYSxnKT90aih1aixnKTp2cChhLGcpP3VqLktbZ109ITA6d3AoYSxnKSYmCih1ai5IW2ddPSEwKX19LHNwPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPUZpO2lmKGUuc3R1ZGllc1tjXSl7dmFyIGY9ZS5zdHVkaWVzW2NdLGc9Zi5leHBlcmltZW50SWQsaD1mLnByb2JhYmlsaXR5O2lmKCEoYi5zdHVkaWVzfHx7fSlbY10pe3ZhciBsPWIuc3R1ZGllc3x8e307bFtjXT0hMDtiLnN0dWRpZXM9bDtpZighZS5zdHVkaWVzW2NdLmFjdGl2ZSlpZihlLnN0dWRpZXNbY10ucHJvYmFiaWxpdHk+LjUpSWkoYixnLGMpO2Vsc2UgaWYoIShoPD0wfHxoPjEpKXt2YXIgbj12b2lkIDA7aWYoZCl7dmFyIHA9Q2koZCsifiIrYyk7aWYocD09PSJlMiIpbj0tMTtlbHNle2Zvcih2YXIgcT1uZXcgVWludDhBcnJheShwKSxyPUJpZ0ludCgwKSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpcj1yPDxCaWdJbnQoOCl8QmlnSW50KHUudmFsdWUpO249TnVtYmVyKHIlQmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSl9fUdpLnNrKGIsYyxuKX19fWlmKCFhLktbY10pe3ZhciB2PQpOaShiLGMpO3YmJndqLkguSy5hZGQodil9fSx0cD1mdW5jdGlvbigpe3JldHVybiBvbShqbS5iYS5UcSx7fSl9LHVwPWZ1bmN0aW9uKGEsYil7dmFyIGM9dHAoKTtyZXR1cm4gS2koYyxiKXx8S2koYS5ILGIpfSx2cD1mdW5jdGlvbihhLGIpe3ZhciBjPXRwKCk7cmV0dXJuIExpKGMsYil8fExpKGEuSCxiKX0sd3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz10cCgpO3JldHVybiBNaShjLGIpfHxNaShhLkgsYil9LHlwOwpmdW5jdGlvbiB6cCgpe2lmKCF5cCl7dmFyIGE9eXA9bmV3IHJwLGIsYyxkPSgoYj1BKT09bnVsbD92b2lkIDA6KGM9Yi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmMuaGFzaCl8fCIiO2lmKGRbMF09PT0iIyImJmRbMV09PT0iXyImJmRbMl09PT0idCImJmRbM109PT0iZSImJmRbNF09PT0iPSIpe3ZhciBlPWQuc3Vic3RyaW5nKDUpO2lmKGUpZm9yKHZhciBmPW0oZS5zcGxpdCgifiIpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9TnVtYmVyKGcudmFsdWUpO2gmJihhLk5baF09ITAsdGoodWosaCkpfX1mb3IodmFyIGw9bShxcCgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl4cChhLG4udmFsdWUpO2Zvcih2YXIgcD1bXSxxPW0oTWYoNTYpfHxbXSkscj1xLm5leHQoKTshci5kb25lO3I9cS5uZXh0KCkpe3ZhciB0PXIudmFsdWUsdT17c3R1ZHlJZDp0WzFdLGFjdGl2ZTohIXRbMl0scHJvYmFiaWxpdHk6dFszXXx8MCxleHBlcmltZW50SWQ6dFs0XXx8CjAsY29udHJvbElkOnRbNV18fDAsY29udHJvbElkMjp0WzZdfHwwfSx2PTA7c3dpdGNoKHRbN10pe2Nhc2UgMjp2PTE7YnJlYWs7Y2FzZSAzOnY9MjticmVhaztjYXNlIDE6Y2FzZSA0OmNhc2UgNTpjYXNlIDA6dj0wfXZhciB4O2E6c3dpdGNoKHUuc3R1ZHlJZCl7Y2FzZSA1Njc6Y2FzZSA0NjI6eD0hMDticmVhayBhO2RlZmF1bHQ6eD0hMX12YXIgeT1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHUse1plOnYsZm9jdXNlZDp4fSk7KHkuYWN0aXZlfHx5LnByb2JhYmlsaXR5Pi41JiZ5LmV4cGVyaW1lbnRJZHx8eS5leHBlcmltZW50SWQmJnkuY29udHJvbElkKSYmcC5wdXNoKHkpfWZvcih2YXIgej1tKHApLEM9ei5uZXh0KCk7IUMuZG9uZTtDPXoubmV4dCgpKXhwKGEsQy52YWx1ZSl9fQpmdW5jdGlvbiBBcChhLGIpe3pwKCk7dmFyIGM9eXA7c3AoYyx0cCgpLGEsYik7dXAoYyxhKT90aih1aixhKTp2cChjLGEpP3VqLktbYV09ITA6d3AoYyxhKSYmKHVqLkhbYV09ITApfWZ1bmN0aW9uIEJwKCl7enAoKTt2YXIgYT15cCxiPXVwKGEsNTY3KTtpZihhLktbNTY3XSl7dmFyIGMsZD10cCgpOyhjPU5pKGQsNTY3KXx8TmkoYS5ILDU2NykpJiZhLlIuYWRkKGMpfXJldHVybiBifWZ1bmN0aW9uIENwKGEpe3pwKCk7dmFyIGI9bmV3IFNldCh5cC5SKTtpZihhKWZvcih2YXIgYz1RKGEsSC5KLkNoKXx8W10sZD1tKGMpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWIuYWRkKGUudmFsdWUpO3JldHVybiBwcChbXS5jb25jYXQodyhiKSkpfTtmdW5jdGlvbiBEcChhKXt2YXIgYj1hLmxvY2F0aW9uLmhyZWY7aWYoYT09PWEudG9wKXJldHVybnt1cmw6YixJczohMH07dmFyIGM9ITEsZD1hLmRvY3VtZW50O2QmJmQucmVmZXJyZXImJihiPWQucmVmZXJyZXIsYS5wYXJlbnQ9PT1hLnRvcCYmKGM9ITApKTt2YXIgZT1hLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucztpZihlKXt2YXIgZj1lW2UubGVuZ3RoLTFdLGc7ZiYmKChnPWIpPT1udWxsP3ZvaWQgMDpnLmluZGV4T2YoZikpPT09LTEmJihjPSExLGI9Zil9cmV0dXJue3VybDpiLElzOmN9fWZ1bmN0aW9uIEVwKGEpe3RyeXt2YXIgYjtpZihiPSEhYSYmYS5sb2NhdGlvbi5ocmVmIT1udWxsKWE6e3RyeXtIbihhLmZvbyk7Yj0hMDticmVhayBhfWNhdGNoKGMpe31iPSExfXJldHVybiBifWNhdGNoKGMpe3JldHVybiExfX1mdW5jdGlvbiBGcCgpe2Zvcih2YXIgYT1BLGI9YTthJiZhIT09YS5wYXJlbnQ7KWE9YS5wYXJlbnQsRXAoYSkmJihiPWEpO3JldHVybiBifTt2YXIgR3A9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbigpe307Yy5wcm90b3R5cGU9YS5wcm90b3R5cGU7dmFyIGQ9bmV3IGM7YS5hcHBseShkLEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKSk7cmV0dXJuIGR9LEhwPWZ1bmN0aW9uKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPW51bGw7YygpfX19O2Z1bmN0aW9uIElwKGEsYil7aWYoYSlmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihhW2NdLGMsYSl9O2Z1bmN0aW9uIEpwKGEpe3ZhciBiPWEuc3BsaXQoL1s/I10vKSxjPS9bP10vLnRlc3QoYSk/Ij8iK2JbMV06IiI7cmV0dXJue3prOmJbMF0scGFyYW1zOmMsZnJhZ21lbnQ6L1sjXS8udGVzdChhKT8iIyIrKGM/YlsyXTpiWzFdKToiIn19ZnVuY3Rpb24gS3AoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpO2lmKGIubGVuZ3RoPT09MClyZXR1cm4gamMoYVswXSk7Zm9yKHZhciBjPWFbMF0sZD0wO2Q8Yi5sZW5ndGg7ZCsrKWMrPWVuY29kZVVSSUNvbXBvbmVudChiW2RdKSthW2QrMV07cmV0dXJuIGpjKGMpfQpmdW5jdGlvbiBMcChhLGIsYyxkKXtmdW5jdGlvbiBlKGcsaCl7ZyE9bnVsbCYmKEFycmF5LmlzQXJyYXkoZyk/Zy5mb3JFYWNoKGZ1bmN0aW9uKGwpe3JldHVybiBlKGwsaCl9KTooYis9ZitlbmNvZGVVUklDb21wb25lbnQoaCkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChnKSxmPSImIikpfXZhciBmPWIubGVuZ3RoPyImIjoiPyI7ZC5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQ9T2JqZWN0LmVudHJpZXMoZCkpO0FycmF5LmlzQXJyYXkoZCk/ZC5mb3JFYWNoKGZ1bmN0aW9uKGcpe3JldHVybiBlKGdbMV0sZ1swXSl9KTpkLmZvckVhY2goZSk7cmV0dXJuIGpjKGErYitjKX1mdW5jdGlvbiBNcChhLGIpe3ZhciBjPUpwKGtjKGEpLnRvU3RyaW5nKCkpLGQ9Yy56ay5zbGljZSgtMSk9PT0iLyI/IiI6Ii8iLGU9Yy56aytkK2VuY29kZVVSSUNvbXBvbmVudChiKTtyZXR1cm4gamMoZStjLnBhcmFtcytjLmZyYWdtZW50KX07dmFyIE5wPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEsZD0wO2Q8NTA7KytkKXt2YXIgZTt0cnl7ZT0hKCFjLmZyYW1lc3x8IWMuZnJhbWVzW2JdKX1jYXRjaChoKXtlPSExfWlmKGUpcmV0dXJuIGM7dmFyIGY7YTp7dHJ5e3ZhciBnPWMucGFyZW50O2lmKGcmJmchPT1jKXtmPWc7YnJlYWsgYX19Y2F0Y2goaCl7fWY9bnVsbH1pZighKGM9ZikpYnJlYWt9cmV0dXJuIG51bGx9LE9wPWZ1bmN0aW9uKGEpe3ZhciBiPUE7aWYoYi50b3A9PWIpcmV0dXJuIDA7aWYoYT09PXZvaWQgMD8wOmEpe3ZhciBjPWIubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zO2lmKGMpcmV0dXJuIGNbYy5sZW5ndGgtMV09PWIubG9jYXRpb24ub3JpZ2luPzE6Mn1yZXR1cm4gRXAoYi50b3ApPzE6Mn0sUHA9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7cmV0dXJuIGEuY3JlYXRlRWxlbWVudCgiaW1nIil9O2Z1bmN0aW9uIFFwKGEpe2Zvcih2YXIgYj1bXSxjPUIuY29va2llLnNwbGl0KCI7IiksZD1uZXcgUmVnRXhwKCJeXFxzKiIrKGF8fCJfZ2FjIikrIl8oVUEtXFxkKy1cXGQrKT1cXHMqKC4rPylcXHMqJCIpLGU9MDtlPGMubGVuZ3RoO2UrKyl7dmFyIGY9Y1tlXS5tYXRjaChkKTtmJiZiLnB1c2goe3VkOmZbMV0sdmFsdWU6ZlsyXSx0aW1lc3RhbXA6TnVtYmVyKGZbMl0uc3BsaXQoIi4iKVsxXSl8fDB9KX1iLnNvcnQoZnVuY3Rpb24oZyxoKXtyZXR1cm4gaC50aW1lc3RhbXAtZy50aW1lc3RhbXB9KTtyZXR1cm4gYn0KZnVuY3Rpb24gUnAoYSxiKXt2YXIgYz1RcChhKSxkPXt9O2lmKCFjfHwhYy5sZW5ndGgpcmV0dXJuIGQ7Zm9yKHZhciBlPTA7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV0udmFsdWUuc3BsaXQoIi4iKTtpZighKGZbMF0hPT0iMSJ8fGImJmYubGVuZ3RoPDN8fCFiJiZmLmxlbmd0aCE9PTMpJiZOdW1iZXIoZlsxXSkpe2RbY1tlXS51ZF18fChkW2NbZV0udWRdPVtdKTt2YXIgZz17dmVyc2lvbjpmWzBdLHRpbWVzdGFtcDpOdW1iZXIoZlsxXSkqMUUzLGdjbGlkOmZbMl19O2ImJmYubGVuZ3RoPjMmJihnLmxhYmVscz1mLnNsaWNlKDMpKTtkW2NbZV0udWRdLnB1c2goZyl9fXJldHVybiBkfTtmdW5jdGlvbiBTcChhKXtyZXR1cm4gYS5vcmlnaW4hPT0ibnVsbCJ9O3ZhciBUcD17fSxVcD0oVHAuaz17bmE6L15bXHctXSskL30sVHAuYj17bmE6L15bXHctXSskLyxuazohMH0sVHAuaT17bmE6L15bMS05XVxkKiQvfSxUcC5oPXtuYTovXlxkKyQvfSxUcC50PXtuYTovXlsxLTldXGQqJC99LFRwLmQ9e25hOi9eW0EtWmEtejAtOV8tXSskL30sVHAuaj17bmE6L15cZCskL30sVHAudT17bmE6L15bMS05XVxkKiQvfSxUcC5sPXtuYTovXlswMV0kL30sVHAubz17bmE6L15bMS05XVxkKiQvfSxUcC5nPXtuYTovXlswMV0kL30sVHAucz17bmE6L14uKyQvfSxUcC5tPXtuYTovXlswMV0kL30sVHApO3ZhciBWcD17fSxacD0oVnBbNV09e2ppOnsyOldwfSxaajoiMiIsUmg6WyJrIiwiaSIsImIiLCJ1Il19LFZwWzRdPXtqaTp7MjpXcCxHQ0w6WHB9LFpqOiIyIixSaDpbImsiLCJpIiwiYiIsIm0iXX0sVnBbMl09e2ppOntHUzI6V3AsR1MxOllwfSxaajoiR1MyIixSaDoic29ndGpsaGQiLnNwbGl0KCIiKX0sVnApO2Z1bmN0aW9uICRwKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXt2YXIgZT1hLnNwbGl0KCIuIilbMF07Yz09bnVsbHx8YyhlKTtpZihlKXt2YXIgZj1kLmppW2VdO2lmKGYpcmV0dXJuIGYoYSxiKX19fQpmdW5jdGlvbiBXcChhLGIpe3ZhciBjPWEuc3BsaXQoIi4iKTtpZihjLmxlbmd0aD09PTMpe3ZhciBkPWNbMl07aWYoZC5pbmRleE9mKCIkIik9PT0tMSYmZC5pbmRleE9mKCIlMjQiKSE9PS0xKXRyeXtkPWRlY29kZVVSSUNvbXBvbmVudChkKX1jYXRjaCh0KXt9dmFyIGU9e30sZj1acFtiXTtpZihmKXtmb3IodmFyIGc9Zi5SaCxoPW0oZC5zcGxpdCgiJCIpKSxsPWgubmV4dCgpOyFsLmRvbmU7bD1oLm5leHQoKSl7dmFyIG49bC52YWx1ZSxwPW5bMF07aWYoZy5pbmRleE9mKHApIT09LTEpdHJ5e3ZhciBxPWRlY29kZVVSSUNvbXBvbmVudChuLnN1YnN0cmluZygxKSkscj1VcFtwXTtyJiYoci5uaz8oZVtwXT1lW3BdfHxbXSxlW3BdLnB1c2gocSkpOmVbcF09cSl9Y2F0Y2godCl7fX1yZXR1cm4gZX19fWZ1bmN0aW9uIGFxKGEsYixjKXt2YXIgZD1acFtiXTtpZihkKXJldHVybltkLlpqLGN8fCIxIixicShhLGIpXS5qb2luKCIuIil9CmZ1bmN0aW9uIGJxKGEsYil7dmFyIGM9WnBbYl07aWYoYyl7Zm9yKHZhciBkPVtdLGU9bShjLlJoKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPVVwW2ddO2lmKGgpe3ZhciBsPWFbZ107aWYobCE9PXZvaWQgMClpZihoLm5rJiZBcnJheS5pc0FycmF5KGwpKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKWQucHVzaChlbmNvZGVVUklDb21wb25lbnQoIiIrZytwLnZhbHVlKSk7ZWxzZSBkLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCIiK2crbCkpfX1yZXR1cm4gZC5qb2luKCIkIil9fWZ1bmN0aW9uIFhwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKTtiLnNoaWZ0KCk7dmFyIGM9Yi5zaGlmdCgpLGQ9Yi5zaGlmdCgpLGU9e307cmV0dXJuIGUuaz1kLGUuaT1jLGUuYj1iLGV9CmZ1bmN0aW9uIFlwKGEpe3ZhciBiPWEuc3BsaXQoIi4iKS5zbGljZSgyKTtpZighKGIubGVuZ3RoPDV8fGIubGVuZ3RoPjcpKXt2YXIgYz17fTtyZXR1cm4gYy5zPWJbMF0sYy5vPWJbMV0sYy5nPWJbMl0sYy50PWJbM10sYy5qPWJbNF0sYy5sPWJbNV0sYy5oPWJbNl0sY319O2Z1bmN0aW9uIGNxKGEsYixjLGQpe3ZhciBlO3JldHVybihlPWRxKGZ1bmN0aW9uKGYpe3JldHVybiBmPT09YX0sYixjLGQpW2FdKSE9bnVsbD9lOltdfWZ1bmN0aW9uIGRxKGEsYixjLGQpe3ZhciBlO2lmKGVxKGQpKXtmb3IodmFyIGY9e30sZz1TdHJpbmcoYnx8ZnEoKSkuc3BsaXQoIjsiKSxoPTA7aDxnLmxlbmd0aDtoKyspe3ZhciBsPWdbaF0uc3BsaXQoIj0iKSxuPWxbMF0udHJpbSgpO2lmKG4mJmEobikpe3ZhciBwPWwuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtwJiZjJiYocD1kZWNvZGVVUklDb21wb25lbnQocCkpO3ZhciBxPXZvaWQgMCxyPXZvaWQgMDsoKHE9Zilbcj1uXXx8KHFbcl09W10pKS5wdXNoKHApfX1lPWZ9ZWxzZSBlPXt9O3JldHVybiBlfQpmdW5jdGlvbiBncShhLGIsYyxkLGUpe2lmKGVxKGUpKXt2YXIgZj1ocShhLGQsZSk7aWYoZi5sZW5ndGg9PT0xKXJldHVybiBmWzBdO2lmKGYubGVuZ3RoIT09MCl7Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLkpyfSxiKTtpZihmLmxlbmd0aD09PTEpcmV0dXJuIGZbMF07Zj1pcShmLGZ1bmN0aW9uKGcpe3JldHVybiBnLldzfSxjKTtyZXR1cm4gZlswXX19fWZ1bmN0aW9uIGpxKGEsYixjLGQpe3ZhciBlPWZxKCksZj1BO1NwKGYpJiYoZi5kb2N1bWVudC5jb29raWU9YSk7dmFyIGc9ZnEoKTtyZXR1cm4gZSE9PWd8fGMhPT12b2lkIDAmJmNxKGIsZywhMSxkKS5pbmRleE9mKGMpPj0wfQpmdW5jdGlvbiBrcShhLGIsYyxkKXtmdW5jdGlvbiBlKHgseSx6KXtpZih6PT1udWxsKXJldHVybiBkZWxldGUgaFt5XSx4O2hbeV09ejtyZXR1cm4geCsiOyAiK3krIj0iK3p9ZnVuY3Rpb24gZih4LHkpe2lmKHk9PW51bGwpcmV0dXJuIHg7aFt5XT0hMDtyZXR1cm4geCsiOyAiK3l9aWYoIWVxKGMuTWMpKXJldHVybiAyO3ZhciBnO2I9PW51bGw/Zz1hKyI9ZGVsZXRlZDsgZXhwaXJlcz0iKyhuZXcgRGF0ZSgwKSkudG9VVENTdHJpbmcoKTooYy5lbmNvZGUmJihiPWVuY29kZVVSSUNvbXBvbmVudChiKSksYj1scShiKSxnPWErIj0iK2IpO3ZhciBoPXt9O2c9ZShnLCJwYXRoIixjLnBhdGgpO3ZhciBsO2MuZXhwaXJlcyBpbnN0YW5jZW9mIERhdGU/bD1jLmV4cGlyZXMudG9VVENTdHJpbmcoKTpjLmV4cGlyZXMhPW51bGwmJihsPSIiK2MuZXhwaXJlcyk7Zz1lKGcsImV4cGlyZXMiLGwpO2c9ZShnLCJtYXgtYWdlIixjLk9zKTtnPWUoZywic2FtZXNpdGUiLGMucnQpO2Muc2VjdXJlJiYKKGc9ZihnLCJzZWN1cmUiKSk7dmFyIG49Yy5kb21haW47aWYobiYmbi50b0xvd2VyQ2FzZSgpPT09ImF1dG8iKXtmb3IodmFyIHA9bXEoKSxxPXZvaWQgMCxyPSExLHQ9MDt0PHAubGVuZ3RoOysrdCl7dmFyIHU9cFt0XSE9PSJub25lIj9wW3RdOnZvaWQgMCx2PWUoZywiZG9tYWluIix1KTt2PWYodixjLmZsYWdzKTt0cnl7ZCYmZChhLGgpfWNhdGNoKHgpe3E9eDtjb250aW51ZX1yPSEwO2lmKCFucSh1LGMucGF0aCkmJmpxKHYsYSxiLGMuTWMpKXJldHVybiAwfWlmKHEmJiFyKXRocm93IHE7cmV0dXJuIDF9biYmbi50b0xvd2VyQ2FzZSgpIT09Im5vbmUiJiYoZz1lKGcsImRvbWFpbiIsbikpO2c9ZihnLGMuZmxhZ3MpO2QmJmQoYSxoKTtyZXR1cm4gbnEobixjLnBhdGgpPzE6anEoZyxhLGIsYy5NYyk/MDoxfWZ1bmN0aW9uIG9xKGEsYixjKXtjLnBhdGg9PW51bGwmJihjLnBhdGg9Ii8iKTtjLmRvbWFpbnx8KGMuZG9tYWluPSJhdXRvIik7cmV0dXJuIGtxKGEsYixjKX0KZnVuY3Rpb24gaXEoYSxiLGMpe2Zvcih2YXIgZD1bXSxlPVtdLGYsZz0wO2c8YS5sZW5ndGg7ZysrKXt2YXIgaD1hW2ddLGw9YihoKTtsPT09Yz9kLnB1c2goaCk6Zj09PXZvaWQgMHx8bDxmPyhlPVtoXSxmPWwpOmw9PT1mJiZlLnB1c2goaCl9cmV0dXJuIGQubGVuZ3RoPjA/ZDplfWZ1bmN0aW9uIGhxKGEsYixjKXtmb3IodmFyIGQ9W10sZT1jcShhLHZvaWQgMCx2b2lkIDAsYyksZj0wO2Y8ZS5sZW5ndGg7ZisrKXt2YXIgZz1lW2ZdLnNwbGl0KCIuIiksaD1nLnNoaWZ0KCk7aWYoIWJ8fCFofHxiLmluZGV4T2YoaCkhPT0tMSl7dmFyIGw9Zy5zaGlmdCgpO2lmKGwpe3ZhciBuPWwuc3BsaXQoIi0iKTtkLnB1c2goe0JyOmVbZl0sQ3I6Zy5qb2luKCIuIiksSnI6TnVtYmVyKG5bMF0pfHwxLFdzOk51bWJlcihuWzFdKXx8MX0pfX19cmV0dXJuIGR9ZnVuY3Rpb24gbHEoYSl7YSYmYS5sZW5ndGg+MTIwMCYmKGE9YS5zdWJzdHJpbmcoMCwxMjAwKSk7cmV0dXJuIGF9CnZhciBwcT0vXih3d3dcLik/Z29vZ2xlKFwuY29tPyk/KFwuW2Etel17Mn0pPyQvLHFxPS8oXnxcLilkb3VibGVjbGlja1wubmV0JC9pO2Z1bmN0aW9uIG5xKGEsYil7cmV0dXJuIGEhPT12b2lkIDAmJihxcS50ZXN0KEEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWUpfHxiPT09Ii8iJiZwcS50ZXN0KGEpKX1mdW5jdGlvbiBycShhKXtpZighYSlyZXR1cm4gMTt2YXIgYj1hO1lmKDQpJiZhPT09Im5vbmUiJiYoYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lKTtiPWIuaW5kZXhPZigiLiIpPT09MD9iLnN1YnN0cmluZygxKTpiO3JldHVybiBiLnNwbGl0KCIuIikubGVuZ3RofWZ1bmN0aW9uIHNxKGEpe2lmKCFhfHxhPT09Ii8iKXJldHVybiAxO2FbMF0hPT0iLyImJihhPSIvIithKTthW2EubGVuZ3RoLTFdIT09Ii8iJiYoYSs9Ii8iKTtyZXR1cm4gYS5zcGxpdCgiLyIpLmxlbmd0aC0xfQpmdW5jdGlvbiB0cShhLGIpe3ZhciBjPSIiK3JxKGEpLGQ9c3EoYik7ZD4xJiYoYys9Ii0iK2QpO3JldHVybiBjfQp2YXIgZnE9ZnVuY3Rpb24oKXt2YXIgYT1BO3JldHVybiBTcChhKT9hLmRvY3VtZW50LmNvb2tpZToiIn0sZXE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJllmKDUpPyhBcnJheS5pc0FycmF5KGEpP2E6W2FdKS5ldmVyeShmdW5jdGlvbihiKXtyZXR1cm4gRGwoYikmJkJsKGIpfSk6ITB9LG1xPWZ1bmN0aW9uKCl7dmFyIGE9W10sYj1BLmRvY3VtZW50LmxvY2F0aW9uLmhvc3RuYW1lLnNwbGl0KCIuIik7aWYoYi5sZW5ndGg9PT00KXt2YXIgYz1iW2IubGVuZ3RoLTFdO2lmKE51bWJlcihjKS50b1N0cmluZygpPT09YylyZXR1cm5bIm5vbmUiXX1mb3IodmFyIGQ9Yi5sZW5ndGgtMjtkPj0wO2QtLSlhLnB1c2goYi5zbGljZShkKS5qb2luKCIuIikpO3ZhciBlPUEuZG9jdW1lbnQubG9jYXRpb24uaG9zdG5hbWU7cXEudGVzdChlKXx8cHEudGVzdChlKXx8YS5wdXNoKCJub25lIik7cmV0dXJuIGF9O2Z1bmN0aW9uIHVxKGEsYixjLGQpe3ZhciBlLGY9TnVtYmVyKGEucGQhPW51bGw/YS5wZDp2b2lkIDApO2YhPT0wJiYoZT1uZXcgRGF0ZSgoYnx8TmIoKSkrMUUzKihmfHw3Nzc2RTMpKSk7cmV0dXJue3BhdGg6YS5wYXRoLGRvbWFpbjphLmRvbWFpbixmbGFnczphLmZsYWdzLGVuY29kZTohIWMsZXhwaXJlczplLE1jOmR9fTt2YXIgdnE9bmV3IE1hcChbWzUsImFkX3N0b3JhZ2UiXSxbNCxbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXV0sWzIsImFuYWx5dGljc19zdG9yYWdlIl1dKTtmdW5jdGlvbiB3cShhLGIsYyl7aWYoWnBbYl0pe2Zvcih2YXIgZD1bXSxlPWNxKGEsdm9pZCAwLHZvaWQgMCx2cS5nZXQoYikpLGY9bShlKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9JHAoZy52YWx1ZSxiLGMpO2gmJmQucHVzaCh4cShoKSl9cmV0dXJuIGR9fQpmdW5jdGlvbiB5cShhKXt2YXIgYj16cTtpZihacFsyXSl7Zm9yKHZhciBjPXt9LGQ9ZHEoYSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSksZT1PYmplY3Qua2V5cyhkKS5zb3J0KCksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9bShkW2hdKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9JHAobi52YWx1ZSwyLGIpO3AmJihjW2hdfHwoY1toXT1bXSksY1toXS5wdXNoKHhxKHApKSl9cmV0dXJuIGN9fWZ1bmN0aW9uIEFxKGEsYixjLGQsZSl7ZD1kfHx7fTt2YXIgZj10cShkLmRvbWFpbixkLnBhdGgpLGc9YXEoYixjLGYpO2lmKCFnKXJldHVybiAxO3ZhciBoPXVxKGQsZSx2b2lkIDAsdnEuZ2V0KGMpKTtyZXR1cm4gb3EoYSxnLGgpfWZ1bmN0aW9uIEJxKGEsYil7dmFyIGM9Yi5uYTtyZXR1cm4gdHlwZW9mIGM9PT0iZnVuY3Rpb24iP2MoYSk6Yy50ZXN0KGEpfQpmdW5jdGlvbiB4cShhKXtmb3IodmFyIGI9bShPYmplY3Qua2V5cyhhKSksYz1iLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17QWc6dm9pZCAwfSxjPWIubmV4dCgpKXt2YXIgZT1jLnZhbHVlLGY9YVtlXTtkLkFnPVVwW2VdO2QuQWc/ZC5BZy5uaz9hW2VdPUFycmF5LmlzQXJyYXkoZik/Zi5maWx0ZXIoZnVuY3Rpb24oZyl7cmV0dXJuIGZ1bmN0aW9uKGgpe3JldHVybiBCcShoLGcuQWcpfX0oZCkpOnZvaWQgMDp0eXBlb2YgZj09PSJzdHJpbmciJiZCcShmLGQuQWcpfHwoYVtlXT12b2lkIDApOmFbZV09dm9pZCAwfXJldHVybiBhfTt2YXIgQ3E7ZnVuY3Rpb24gRHEoKXtmdW5jdGlvbiBhKGcpe2MoZy50YXJnZXR8fGcuc3JjRWxlbWVudHx8e30pfWZ1bmN0aW9uIGIoZyl7ZChnLnRhcmdldHx8Zy5zcmNFbGVtZW50fHx7fSl9dmFyIGM9RXEsZD1GcSxlPUdxKCk7aWYoIWUuaW5pdCl7JGMoQiwibW91c2Vkb3duIixhKTskYyhCLCJrZXl1cCIsYSk7JGMoQiwic3VibWl0IixiKTt2YXIgZj1IVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdDtIVE1MRm9ybUVsZW1lbnQucHJvdG90eXBlLnN1Ym1pdD1mdW5jdGlvbigpe2QodGhpcyk7Zi5jYWxsKHRoaXMpfTtlLmluaXQ9ITB9fWZ1bmN0aW9uIEhxKGEsYixjLGQsZSl7dmFyIGY9e2NhbGxiYWNrOmEsZG9tYWluczpiLGZyYWdtZW50OmM9PT0yLHBsYWNlbWVudDpjLGZvcm1zOmQsc2FtZUhvc3Q6ZX07R3EoKS5kZWNvcmF0b3JzLnB1c2goZil9CmZ1bmN0aW9uIElxKGEsYixjKXtmb3IodmFyIGQ9R3EoKS5kZWNvcmF0b3JzLGU9e30sZj0wO2Y8ZC5sZW5ndGg7KytmKXt2YXIgZz1kW2ZdLGg7aWYoaD0hY3x8Zy5mb3JtcylhOnt2YXIgbD1nLmRvbWFpbnMsbj1hLHA9ISFnLnNhbWVIb3N0O2lmKGwmJihwfHxuIT09Qi5sb2NhdGlvbi5ob3N0bmFtZSkpZm9yKHZhciBxPTA7cTxsLmxlbmd0aDtxKyspaWYobFtxXWluc3RhbmNlb2YgUmVnRXhwKXtpZihsW3FdLnRlc3Qobikpe2g9ITA7YnJlYWsgYX19ZWxzZSBpZihuLmluZGV4T2YobFtxXSk+PTB8fHAmJmxbcV0uaW5kZXhPZihuKT49MCl7aD0hMDticmVhayBhfWg9ITF9aWYoaCl7dmFyIHI9Zy5wbGFjZW1lbnQ7cj09PXZvaWQgMCYmKHI9Zy5mcmFnbWVudD8yOjEpO3I9PT1iJiZRYihlLGcuY2FsbGJhY2soKSl9fXJldHVybiBlfQpmdW5jdGlvbiBHcSgpe3ZhciBhPU1jKCJnb29nbGVfdGFnX2RhdGEiLHt9KSxiPWEuZ2w7YiYmYi5kZWNvcmF0b3JzfHwoYj17ZGVjb3JhdG9yczpbXX0sYS5nbD1iKTtyZXR1cm4gYn07dmFyIEpxPS8oLio/KVwqKC4qPylcKiguKikvLEtxPS9eaHR0cHM/OlwvXC8oW15cL10qPylcLj9jZG5cLmFtcHByb2plY3RcLm9yZ1wvPyguKikvLExxPS9eKD86d3d3XC58bVwufGFtcFwuKSsvLE1xPS8oW14/I10rKShcP1teI10qKT8oIy4qKT8vO2Z1bmN0aW9uIE5xKGEpe3ZhciBiPU1xLmV4ZWMoYSk7aWYoYilyZXR1cm57aGs6YlsxXSxxdWVyeTpiWzJdLGZyYWdtZW50OmJbM119fWZ1bmN0aW9uIE9xKGEpe3JldHVybiBuZXcgUmVnRXhwKCIoLio/KShefCYpIithKyI9KFteJl0qKSY/KC4qKSIpfQpmdW5jdGlvbiBQcShhLGIpe3ZhciBjPVtIYy51c2VyQWdlbnQsKG5ldyBEYXRlKS5nZXRUaW1lem9uZU9mZnNldCgpLEhjLnVzZXJMYW5ndWFnZXx8SGMubGFuZ3VhZ2UsTWF0aC5mbG9vcihOYigpLzYwLzFFMyktKGI9PT12b2lkIDA/MDpiKSxhXS5qb2luKCIqIiksZDtpZighKGQ9Q3EpKXtmb3IodmFyIGU9QXJyYXkoMjU2KSxmPTA7ZjwyNTY7ZisrKXtmb3IodmFyIGc9ZixoPTA7aDw4O2grKylnPWcmMT9nPj4+MV4zOTg4MjkyMzg0Omc+Pj4xO2VbZl09Z31kPWV9Q3E9ZDtmb3IodmFyIGw9NDI5NDk2NzI5NSxuPTA7bjxjLmxlbmd0aDtuKyspbD1sPj4+OF5DcVsobF5jLmNoYXJDb2RlQXQobikpJjI1NV07cmV0dXJuKChsXi0xKT4+PjApLnRvU3RyaW5nKDM2KX0KZnVuY3Rpb24gUXEoYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPVJqKEEubG9jYXRpb24uaHJlZiksZD1jLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZT1JaihkLCJfZ2wiLCExLCEwKXx8IiI7Yi5xdWVyeT1ScShlKXx8e307dmFyIGY9TGooYywiZnJhZ21lbnQiKSxnO3ZhciBoPS0xO2lmKFNiKGYsIl9nbD0iKSloPTQ7ZWxzZXt2YXIgbD1mLmluZGV4T2YoIiZfZ2w9Iik7bD4wJiYoaD1sKzMrMil9aWYoaDwwKWc9dm9pZCAwO2Vsc2V7dmFyIG49Zi5pbmRleE9mKCImIixoKTtnPW48MD9mLnN1YnN0cmluZyhoKTpmLnN1YnN0cmluZyhoLG4pfWIuZnJhZ21lbnQ9UnEoZ3x8IiIpfHx7fTthJiZTcShjLGQsZil9fWZ1bmN0aW9uIFRxKGEsYil7dmFyIGM9T3EoYSkuZXhlYyhiKSxkPWI7aWYoYyl7dmFyIGU9Y1syXSxmPWNbNF07ZD1jWzFdO2YmJihkPWQrZStmKX1yZXR1cm4gZH0KZnVuY3Rpb24gU3EoYSxiLGMpe2Z1bmN0aW9uIGQoZyxoKXt2YXIgbD1UcSgiX2dsIixnKTtsLmxlbmd0aCYmKGw9aCtsKTtyZXR1cm4gbH1pZihHYyYmR2MucmVwbGFjZVN0YXRlKXt2YXIgZT1PcSgiX2dsIik7aWYoZS50ZXN0KGIpfHxlLnRlc3QoYykpe3ZhciBmPUxqKGEsInBhdGgiKTtiPWQoYiwiPyIpO2M9ZChjLCIjIik7R2MucmVwbGFjZVN0YXRlKHt9LCIiLCIiK2YrYitjKX19fWZ1bmN0aW9uIFVxKGEsYil7dmFyIGM9UXEoISFiKSxkPUdxKCk7ZC5kYXRhfHwoZC5kYXRhPXtxdWVyeTp7fSxmcmFnbWVudDp7fX0sYyhkLmRhdGEpKTt2YXIgZT17fSxmPWQuZGF0YTtmJiYoUWIoZSxmLnF1ZXJ5KSxhJiZRYihlLGYuZnJhZ21lbnQpKTtyZXR1cm4gZX0KdmFyIFJxPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1WcShhLDMpO2lmKGIhPT12b2lkIDApe2Zvcih2YXIgYz17fSxkPWI/Yi5zcGxpdCgiKiIpOltdLGU9MDtlKzE8ZC5sZW5ndGg7ZSs9Mil7dmFyIGY9ZFtlXSxnPXFiKGRbZSsxXSk7Y1tmXT1nfXNiKCJUQUdHSU5HIiw2KTtyZXR1cm4gY319Y2F0Y2goaCl7c2IoIlRBR0dJTkciLDgpfX07ZnVuY3Rpb24gVnEoYSxiKXtpZihhKXt2YXIgYzthOntmb3IodmFyIGQ9YSxlPTA7ZTwzOysrZSl7dmFyIGY9SnEuZXhlYyhkKTtpZihmKXtjPWY7YnJlYWsgYX1kPUtqKGQpfHwiIn1jPXZvaWQgMH12YXIgZz1jO2lmKGcmJmdbMV09PT0iMSIpe3ZhciBoPWdbM10sbDthOntmb3IodmFyIG49Z1syXSxwPTA7cDxiOysrcClpZihuPT09UHEoaCxwKSl7bD0hMDticmVhayBhfWw9ITF9aWYobClyZXR1cm4gaDtzYigiVEFHR0lORyIsNyl9fX0KZnVuY3Rpb24gV3EoYSxiLGMsZCxlKXtmdW5jdGlvbiBmKHApe3A9VHEoYSxwKTt2YXIgcT1wLmNoYXJBdChwLmxlbmd0aC0xKTtwJiZxIT09IiYiJiYocCs9IiYiKTtyZXR1cm4gcCtufWQ9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD8hMTplO3ZhciBnPU5xKGMpO2lmKCFnKXJldHVybiIiO3ZhciBoPWcucXVlcnl8fCIiLGw9Zy5mcmFnbWVudHx8IiIsbj1hKyI9IitiO2Q/bC5zdWJzdHJpbmcoMSkubGVuZ3RoIT09MCYmZXx8KGw9IiMiK2YobC5zdWJzdHJpbmcoMSkpKTpoPSI/IitmKGguc3Vic3RyaW5nKDEpKTtyZXR1cm4iIitnLmhrK2grbH0KZnVuY3Rpb24gWHEoYSxiKXtmdW5jdGlvbiBjKG4scCxxKXt2YXIgcjthOntmb3IodmFyIHQgaW4gbilpZihuLmhhc093blByb3BlcnR5KHQpKXtyPSEwO2JyZWFrIGF9cj0hMX1pZihyKXt2YXIgdSx2PVtdLHg7Zm9yKHggaW4gbilpZihuLmhhc093blByb3BlcnR5KHgpKXt2YXIgeT1uW3hdO3khPT12b2lkIDAmJnk9PT15JiZ5IT09bnVsbCYmeS50b1N0cmluZygpIT09IltvYmplY3QgT2JqZWN0XSImJih2LnB1c2goeCksdi5wdXNoKHBiKFN0cmluZyh5KSkpKX12YXIgej12LmpvaW4oIioiKTt1PVsiMSIsUHEoeiksel0uam9pbigiKiIpO2Q/KFlmKDMpfHxZZigxKXx8IXApJiZZcSgiX2dsIix1LGEscCxxKTpacSgiX2dsIix1LGEscCxxKX19dmFyIGQ9KGEudGFnTmFtZXx8IiIpLnRvVXBwZXJDYXNlKCk9PT0iRk9STSIsZT1JcShiLDEsZCksZj1JcShiLDIsZCksZz1JcShiLDQsZCksaD1JcShiLDMsZCk7YyhlLCExLCExKTtjKGYsITAsITEpO1lmKDEpJiZjKGcsITAsITApO2Zvcih2YXIgbCBpbiBoKWguaGFzT3duUHJvcGVydHkobCkmJgokcShsLGhbbF0sYSl9ZnVuY3Rpb24gJHEoYSxiLGMpe2MudGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09ImEiP1pxKGEsYixjKTpjLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PSJmb3JtIiYmWXEoYSxiLGMpfWZ1bmN0aW9uIFpxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7dmFyIGY7aWYoZj1jLmhyZWYpe3ZhciBnO2lmKCEoZz1kKSl7dmFyIGg9QS5sb2NhdGlvbi5ocmVmLGw9TnEoYy5ocmVmKSxuPU5xKGgpO2c9IShsJiZuJiZsLmhrPT09bi5oayYmbC5xdWVyeT09PW4ucXVlcnkmJmwuZnJhZ21lbnQpfWY9Z31pZihmKXt2YXIgcD1XcShhLGIsYy5ocmVmLGQsZSk7dmMudGVzdChwKSYmKGMuaHJlZj1wKX19CmZ1bmN0aW9uIFlxKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwPyExOmU7aWYoYyl7dmFyIGY9Yy5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpfHwiIjtpZihmKXt2YXIgZz0oYy5tZXRob2R8fCIiKS50b0xvd2VyQ2FzZSgpO2lmKGchPT0iZ2V0Inx8ZCl7aWYoZz09PSJnZXQifHxnPT09InBvc3QiKXt2YXIgaD1XcShhLGIsZixkLGUpO3ZjLnRlc3QoaCkmJihjLmFjdGlvbj1oKX19ZWxzZXtmb3IodmFyIGw9Yy5jaGlsZE5vZGVzfHxbXSxuPSExLHA9MDtwPGwubGVuZ3RoO3ArKyl7dmFyIHE9bFtwXTtpZihxLm5hbWU9PT1hKXtxLnNldEF0dHJpYnV0ZSgidmFsdWUiLGIpO249ITA7YnJlYWt9fWlmKCFuKXt2YXIgcj1CLmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7ci5zZXRBdHRyaWJ1dGUoInR5cGUiLCJoaWRkZW4iKTtyLnNldEF0dHJpYnV0ZSgibmFtZSIsYSk7ci5zZXRBdHRyaWJ1dGUoInZhbHVlIixiKTtjLmFwcGVuZENoaWxkKHIpfX19fX0KZnVuY3Rpb24gRXEoYSl7dHJ5e3ZhciBiO2E6e2Zvcih2YXIgYz1hLGQ9MTAwO2MmJmQ+MDspe2lmKGMuaHJlZiYmYy5ub2RlTmFtZS5tYXRjaCgvXmEoPzpyZWEpPyQvaSkpe2I9YzticmVhayBhfWM9Yy5wYXJlbnROb2RlO2QtLX1iPW51bGx9dmFyIGU9YjtpZihlKXt2YXIgZj1lLnByb3RvY29sO2YhPT0iaHR0cDoiJiZmIT09Imh0dHBzOiJ8fFhxKGUsZS5ob3N0bmFtZSl9fWNhdGNoKGcpe319ZnVuY3Rpb24gRnEoYSl7dHJ5e3ZhciBiPWEuZ2V0QXR0cmlidXRlKCJhY3Rpb24iKTtpZihiKXt2YXIgYz1MaihSaihiKSwiaG9zdCIpO1hxKGEsYyl9fWNhdGNoKGQpe319ZnVuY3Rpb24gYXIoYSxiLGMsZCl7RHEoKTt2YXIgZT1jPT09ImZyYWdtZW50Ij8yOjE7ZD0hIWQ7SHEoYSxiLGUsZCwhMSk7ZT09PTImJnNiKCJUQUdHSU5HIiwyMyk7ZCYmc2IoIlRBR0dJTkciLDI0KX0KZnVuY3Rpb24gYnIoYSxiKXtEcSgpO0hxKGEsW05qKEEubG9jYXRpb24sImhvc3QiLCEwKV0sYiwhMCwhMCl9ZnVuY3Rpb24gY3IoKXt2YXIgYT1CLmxvY2F0aW9uLmhvc3RuYW1lLGI9S3EuZXhlYyhCLnJlZmVycmVyKTtpZighYilyZXR1cm4hMTt2YXIgYz1iWzJdLGQ9YlsxXSxlPSIiO2lmKGMpe3ZhciBmPWMuc3BsaXQoIi8iKSxnPWZbMV07ZT1nPT09InMiP0tqKGZbMl0pfHwiIjpLaihnKXx8IiJ9ZWxzZSBpZihkKXtpZihkLmluZGV4T2YoInhuLS0iKT09PTApcmV0dXJuITE7ZT1kLnJlcGxhY2UoLy0vZywiLiIpLnJlcGxhY2UoL1wuXC4vZywiLSIpfXZhciBoPWEucmVwbGFjZShMcSwiIiksbD1lLnJlcGxhY2UoTHEsIiIpO3JldHVybiBoPT09bHx8VGIoaCwiLiIrbCl9ZnVuY3Rpb24gZHIoYSxiKXtyZXR1cm4gYT09PSExPyExOmF8fGJ8fGNyKCl9O3ZhciBlcj1mdW5jdGlvbihhKXt0aGlzLnZhbHVlPTA7dGhpcy52YWx1ZT1hPT09dm9pZCAwPzA6YX07ZXIucHJvdG90eXBlLnNldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZXw9MTw8YX07dmFyIGZyPWZ1bmN0aW9uKGEsYil7Yjw9MHx8KGEudmFsdWV8PTE8PGItMSl9O2VyLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX07ZXIucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKGEpe3RoaXMudmFsdWUmPX4oMTw8YSl9O2VyLnByb3RvdHlwZS5jbGVhckFsbD1mdW5jdGlvbigpe3RoaXMudmFsdWU9MH07ZXIucHJvdG90eXBlLmVxdWFscz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZT09PWEudmFsdWV9O2Z1bmN0aW9uIGdyKGEpe2lmKGEpdHJ5e3JldHVybiBuZXcgVWludDhBcnJheShhdG9iKGEucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIikpLnNwbGl0KCIiKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuY2hhckNvZGVBdCgwKX0pKX1jYXRjaChiKXt9fWZ1bmN0aW9uIGhyKGEsYil7dmFyIGM9MCxkPTAsZSxmPWI7ZG97aWYoZj49YS5sZW5ndGgpcmV0dXJuO2U9YVtmKytdO2N8PShlJjEyNyk8PGQ7ZCs9N313aGlsZShlJjEyOCk7cmV0dXJuW2MsZl19O2Z1bmN0aW9uIGlyKCl7dmFyIGE9U3RyaW5nLGI9QS5sb2NhdGlvbi5ob3N0bmFtZSxjPUEubG9jYXRpb24ucGF0aG5hbWUsZD1iPWJjKGIpO2Quc3BsaXQoIi4iKS5sZW5ndGg+MiYmKGQ9ZC5yZXBsYWNlKC9eKHd3d1swLTldKnx3ZWJ8ZnRwfHdhcHxob21lfG18d3xhbXB8bW9iaWxlKVwuLywiIikpO2I9ZDtjPWJjKGMpO3ZhciBlPWMuc3BsaXQoIjsiKVswXTtlPWUucmVwbGFjZSgvXC8oYXJ8c2xwfHdlYnxpbmRleCk/XC8/JC8sIiIpO3JldHVybiBhKG5nKCgiIitiK2UpLnRvTG93ZXJDYXNlKCkpKX07dmFyIGpyPVsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdO2Z1bmN0aW9uIGtyKGEsYil7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMiksMTA7aWYoYj09PW51bGx8fGI9PT12b2lkIDB8fGI9PT0iIilyZXR1cm4gc2IoIlRBR0dJTkciLDMzKSwxMTt2YXIgYz1scighMSk7aWYoYy5lcnJvciE9PTApcmV0dXJuIHNiKCJUQUdHSU5HIiwzNCksYy5lcnJvcjtpZighYy52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDM1KSwyO2MudmFsdWVbYV09Yjt2YXIgZD1tcihjKTtkIT09MCYmc2IoIlRBR0dJTkciLDM2KTtyZXR1cm4gZH0KZnVuY3Rpb24gbnIoYSl7aWYoIWEpcmV0dXJuIHNiKCJUQUdHSU5HIiwyNykse2Vycm9yOjEwfTt2YXIgYj1scigpO2lmKGIuZXJyb3IhPT0wKXJldHVybiBzYigiVEFHR0lORyIsMjkpLGI7aWYoIWIudmFsdWUpcmV0dXJuIHNiKCJUQUdHSU5HIiwzMCkse2Vycm9yOjJ9O2lmKCEoYSBpbiBiLnZhbHVlKSlyZXR1cm4gc2IoIlRBR0dJTkciLDMxKSx7dmFsdWU6dm9pZCAwLGVycm9yOjE1fTt2YXIgYz1iLnZhbHVlW2FdO3JldHVybiBjPT09bnVsbHx8Yz09PXZvaWQgMHx8Yz09PSIiPyhzYigiVEFHR0lORyIsMjgpLHt2YWx1ZTp2b2lkIDAsZXJyb3I6MTF9KTp7dmFsdWU6YyxlcnJvcjowfX0KZnVuY3Rpb24gb3IoYSl7aWYoYSl7dmFyIGI9bHIoITEpO2IuZXJyb3IhPT0wP3NiKCJUQUdHSU5HIiwzOCk6Yi52YWx1ZT9hIGluIGIudmFsdWU/KGRlbGV0ZSBiLnZhbHVlW2FdLG1yKGIpIT09MCYmc2IoIlRBR0dJTkciLDQxKSk6c2IoIlRBR0dJTkciLDQwKTpzYigiVEFHR0lORyIsMzkpfWVsc2Ugc2IoIlRBR0dJTkciLDM3KX0KZnVuY3Rpb24gbHIoYSl7YT1hPT09dm9pZCAwPyEwOmE7aWYoIUJsKGpyKSlyZXR1cm4gc2IoIlRBR0dJTkciLDQzKSx7ZXJyb3I6M307dHJ5e2lmKCFBLmxvY2FsU3RvcmFnZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQ0KSx7ZXJyb3I6MX19Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0NSkse2Vycm9yOjE0fX12YXIgYj17c2NoZW1hOiJnY2wiLHZlcnNpb246MX0sYz12b2lkIDA7dHJ5e2M9QS5sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgiX2djbF9scyIpfWNhdGNoKGYpe3JldHVybiBzYigiVEFHR0lORyIsNDYpLHtlcnJvcjoxM319dHJ5e2lmKGMpe3ZhciBkPUpTT04ucGFyc2UoYyk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0IiliPWQ7ZWxzZSByZXR1cm4gc2IoIlRBR0dJTkciLDQ3KSx7ZXJyb3I6MTJ9fX1jYXRjaChmKXtyZXR1cm4gc2IoIlRBR0dJTkciLDQ4KSx7ZXJyb3I6OH19aWYoYi5zY2hlbWEhPT0iZ2NsIilyZXR1cm4gc2IoIlRBR0dJTkciLDQ5KSx7ZXJyb3I6NH07CmlmKGIudmVyc2lvbiE9PTEpcmV0dXJuIHNiKCJUQUdHSU5HIiw1MCkse2Vycm9yOjV9O3RyeXt2YXIgZT1wcihiKTthJiZlJiZtcih7dmFsdWU6YixlcnJvcjowfSl9Y2F0Y2goZil7cmV0dXJuIHNiKCJUQUdHSU5HIiw0OCkse2Vycm9yOjh9fXJldHVybnt2YWx1ZTpiLGVycm9yOjB9fQpmdW5jdGlvbiBwcihhKXtpZighYXx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZigiZXhwaXJlcyJpbiBhJiYidmFsdWUiaW4gYSl7dmFyIGI7dHlwZW9mIGEuZXhwaXJlcz09PSJudW1iZXIiP2I9YS5leHBpcmVzOmI9dHlwZW9mIGEuZXhwaXJlcz09PSJzdHJpbmciP051bWJlcihhLmV4cGlyZXMpOk5hTjtpZihpc05hTihiKXx8IShEYXRlLm5vdygpPD1iKSlyZXR1cm4gYS52YWx1ZT1udWxsLGEuZXJyb3I9OSxzYigiVEFHR0lORyIsNTQpLCEwfWVsc2V7Zm9yKHZhciBjPSExLGQ9bShPYmplY3Qua2V5cyhhKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpYz1wcihhW2UudmFsdWVdKXx8YztyZXR1cm4gY31yZXR1cm4hMX0KZnVuY3Rpb24gbXIoYSl7aWYoYS5lcnJvcilyZXR1cm4gYS5lcnJvcjtpZighYS52YWx1ZSlyZXR1cm4gc2IoIlRBR0dJTkciLDQyKSwyO3ZhciBiPWEudmFsdWUsYzt0cnl7Yz1KU09OLnN0cmluZ2lmeShiKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUyKSw2fXRyeXtBLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJfZ2NsX2xzIixjKX1jYXRjaChkKXtyZXR1cm4gc2IoIlRBR0dJTkciLDUzKSw3fXJldHVybiAwfTt2YXIgcXI9e30scnI9KHFyLmdjbGlkPSEwLHFyLmRjbGlkPSEwLHFyLmdicmFpZD0hMCxxci53YnJhaWQ9ITAscXIpLHNyPS9eXHcrJC8sdHI9L15bXHctXSskLyx1cj17fSx2cj0odXIuYXc9IkZQR0NMQVciLHVyKSx3cj17fSx4cj0od3IuYWc9Il9hZyIsd3IuZ2I9Il9nYiIsd3IuYXc9Il9hdyIsd3IuZGM9Il9kYyIsd3IuZ2Y9Il9nZiIsd3IuaGE9Il9oYSIsd3IuZ3A9Il9ncCIsd3IuZ3M9Il9ncyIsd3IpLHlyPS9eKD86d3d3XC4pP2dvb2dsZSg/OlwuY29tPyk/KD86XC5bYS16XXsyfXQ/KT8kLyx6cj0vXnd3d1wuZ29vZ2xlYWRzZXJ2aWNlc1wuY29tJC87ZnVuY3Rpb24gQXIoKXtyZXR1cm5bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXX1mdW5jdGlvbiBCcihhKXtyZXR1cm4hWWYoNSl8fEJsKGEpfWZ1bmN0aW9uIENyKGEsYil7ZnVuY3Rpb24gYygpe3ZhciBkPUJyKGIpO2QmJmEoKTtyZXR1cm4gZH1IbChmdW5jdGlvbigpe2MoKXx8SWwoYyxiKX0sYil9CmZ1bmN0aW9uIERyKGEpe3JldHVybiBFcihhKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGIuZ2NsaWR9KX1mdW5jdGlvbiBGcihhKXtyZXR1cm4gR3IoYSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSkubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLmdjbGlkfSl9ZnVuY3Rpb24gR3IoYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1IcihhLnByZWZpeCksZD1JcigiZ2IiLGMpLGU9SXIoImFnIixjKTtpZighZXx8IWQpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24obCl7cmV0dXJuIGZ1bmN0aW9uKG4pe24uemc9bDtyZXR1cm4gbn19LGc9RXIoZCxiKS5tYXAoZigiZ2IiKSksaD1KcihlKS5tYXAoZigiYWciKSk7cmV0dXJuIGcuY29uY2F0KGgpLnNvcnQoZnVuY3Rpb24obCxuKXtyZXR1cm4gbi50aW1lc3RhbXAtbC50aW1lc3RhbXB9KX0KZnVuY3Rpb24gS3IoYSxiLGMsZCxlKXt2YXIgZj1DYihhLGZ1bmN0aW9uKGcpe3JldHVybiBnLmdjbGlkPT09Yn0pO2Y/KGYudGltZXN0YW1wPGMmJihmLnRpbWVzdGFtcD1jLGYub2Q9ZSksZi5sYWJlbHM9THIoZi5sYWJlbHN8fFtdLGR8fFtdKSk6YS5wdXNoKHt2ZXJzaW9uOiIyIixnY2xpZDpiLHRpbWVzdGFtcDpjLGxhYmVsczpkLG9kOmV9KX1mdW5jdGlvbiBNcihhKXtmb3IodmFyIGI9d3EoYSw1KXx8W10sYz1bXSxkPW0oYiksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWUsZz1mLGg9TnIoZik7aCYmS3IoYyxnLmssaCxnLmJ8fFtdLGYudSl9cmV0dXJuIGMuc29ydChmdW5jdGlvbihsLG4pe3JldHVybiBuLnRpbWVzdGFtcC1sLnRpbWVzdGFtcH0pfQpmdW5jdGlvbiBFcihhLGIpe2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBjPVtdO09yKGMsYSwxKTtpZihiKWlmKFRiKGEsIl9hdyIpKXt2YXIgZD1QcigpO2QmJihkLm9kPXZvaWQgMCxkLm9hPWQub2F8fFsyXSxRcihjLGQpKTtPcihjLCJnY2xfYXciLDIpfWVsc2UgVGIoYSwiX2diIikmJllmKDYpJiZPcihjLCJnY2xfZ2IiLDIpO2Muc29ydChmdW5jdGlvbihlLGYpe3JldHVybiBmLnRpbWVzdGFtcC1lLnRpbWVzdGFtcH0pO3JldHVybiBScihjKX1mdW5jdGlvbiBTcihhLGIpe2Zvcih2YXIgYz1bXSxkPW0oYSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Yy5pbmNsdWRlcyhmKXx8Yy5wdXNoKGYpfWZvcih2YXIgZz1tKGIpLGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKXt2YXIgbD1oLnZhbHVlO2MuaW5jbHVkZXMobCl8fGMucHVzaChsKX1yZXR1cm4gY30KZnVuY3Rpb24gUXIoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2Zvcih2YXIgZCxlLGY9bShhKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtpZihoLmdjbGlkPT09Yi5nY2xpZCl7ZD1oO2JyZWFrfWgucWEmJmIucWEmJmgucWEuZXF1YWxzKGIucWEpJiYoZT1oKX1pZihkKXt2YXIgbCxuLHA9KGw9ZC5xYSkhPW51bGw/bDpuZXcgZXIscT0obj1iLnFhKSE9bnVsbD9uOm5ldyBlcjtwLnZhbHVlfD1xLnZhbHVlO2QucWE9cDtkLnRpbWVzdGFtcDxiLnRpbWVzdGFtcCYmKGQudGltZXN0YW1wPWIudGltZXN0YW1wLGQub2Q9Yi5vZCk7ZC5sYWJlbHM9U3IoZC5sYWJlbHN8fFtdLGIubGFiZWxzfHxbXSk7ZC5vYT1TcihkLm9hfHxbXSxiLm9hfHxbXSl9ZWxzZSBjJiZlP25hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3QsZSxiKTphLnB1c2goYil9CmZ1bmN0aW9uIFRyKGEpe2lmKCFhKXJldHVybiBuZXcgZXI7dmFyIGI9bmV3IGVyO2lmKGE9PT0xKXJldHVybiBmcihiLDIpLGZyKGIsMyksYjtmcihiLGEpO3JldHVybiBifQpmdW5jdGlvbiBQcigpe3ZhciBhPW5yKCJnY2xpZCIpO2lmKCFhfHxhLmVycm9yfHwhYS52YWx1ZXx8dHlwZW9mIGEudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYj1hLnZhbHVlO3RyeXtpZighKCJ2YWx1ZSJpbiBiJiZiLnZhbHVlKXx8dHlwZW9mIGIudmFsdWUhPT0ib2JqZWN0IilyZXR1cm4gbnVsbDt2YXIgYz1iLnZhbHVlLGQ9Yy52YWx1ZTtpZighZHx8IWQubWF0Y2godHIpKXJldHVybiBudWxsO3ZhciBlPWMubGlua0RlY29yYXRpb25Tb3VyY2UsZj1jLmxpbmtEZWNvcmF0aW9uU291cmNlcyxnPW5ldyBlcjt0eXBlb2YgZT09PSJudW1iZXIiP2c9VHIoZSk6dHlwZW9mIGY9PT0ibnVtYmVyIiYmKGcudmFsdWU9Zik7cmV0dXJue3ZlcnNpb246IiIsZ2NsaWQ6ZCx0aW1lc3RhbXA6TnVtYmVyKGMuY3JlYXRpb25UaW1lTXMpfHwwLGxhYmVsczpbXSxxYTpnLG9hOlsyXX19Y2F0Y2goaCl7cmV0dXJuIG51bGx9fQpmdW5jdGlvbiBVcihhKXt2YXIgYj1ucihhKTtpZihiLmVycm9yIT09MClyZXR1cm4gbnVsbDt0cnl7cmV0dXJuIGIudmFsdWUucmVkdWNlKGZ1bmN0aW9uKGMsZCl7aWYoIWQudmFsdWV8fHR5cGVvZiBkLnZhbHVlIT09Im9iamVjdCIpcmV0dXJuIGM7dmFyIGU9ZC52YWx1ZSxmPWUudmFsdWU7aWYoIWZ8fCFmLm1hdGNoKHRyKSlyZXR1cm4gYzt2YXIgZz1uZXcgZXIsaD1lLmxpbmtEZWNvcmF0aW9uU291cmNlczt0eXBlb2YgaD09PSJudW1iZXIiJiYoZy52YWx1ZT1oKTt2YXIgbDtjLnB1c2goe3ZlcnNpb246IiIsZ2NsaWQ6Zix0aW1lc3RhbXA6TnVtYmVyKGUuY3JlYXRpb25UaW1lTXMpfHwwLGV4cGlyZXM6TnVtYmVyKGQuZXhwaXJlcyl8fDAsbGFiZWxzOihsPWUubGFiZWxzKSE9bnVsbD9sOltdLHFhOmcsb2E6WzJdfSk7cmV0dXJuIGN9LFtdKX1jYXRjaChjKXtyZXR1cm4gbnVsbH19CmZ1bmN0aW9uIE9yKGEsYixjKXtpZihjPT09MSlmb3IodmFyIGQ9Y3EoYixCLmNvb2tpZSx2b2lkIDAsQXIoKSksZT1tKGQpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1WcihmLnZhbHVlLnNwbGl0KCIuIikpLGg9Zy5sZW5ndGg9PT0wP251bGw6e3ZlcnNpb246Z1swXSxnY2xpZDpnWzJdLHRpbWVzdGFtcDooTnVtYmVyKGdbMV0pfHwwKSoxRTMsbGFiZWxzOmcuc2xpY2UoMyl9O2ghPW51bGwmJihoLm9kPXZvaWQgMCxoLnFhPW5ldyBlcixoLm9hPVtjXSxRcihhLGgpKX1lbHNlIGlmKGM9PT0yKXt2YXIgbD1VcihiKTtpZihsKWZvcih2YXIgbj1tKGwpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3Eub2Q9dm9pZCAwO3Eub2E9cS5vYTtRcihhLHEpfX19CmZ1bmN0aW9uIFpyKGEpe3ZhciBiPUVyKGEpLGM9VXIoImdjbF9kYyIpO2lmKGMpZm9yKHZhciBkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPWUudmFsdWU7Zi5vZD12b2lkIDA7Zi5vYT1mLm9hfHxbMl07UXIoYixmKX1iLnNvcnQoZnVuY3Rpb24oZyxoKXt2YXIgbD1nLm9hJiZnLm9hLmluY2x1ZGVzKDEpLG49aC5vYSYmaC5vYS5pbmNsdWRlcygxKTtyZXR1cm4gbCYmIW4/LTE6IWwmJm4/MTpoLnRpbWVzdGFtcC1nLnRpbWVzdGFtcH0pO3JldHVybiBScihiKX1mdW5jdGlvbiBKcihhKXtyZXR1cm4gTXIoYSkubWFwKGZ1bmN0aW9uKGIpe2IucWE9bmV3IGVyO2Iub2E9WzFdO3JldHVybiBifSl9CmZ1bmN0aW9uIExyKGEsYil7aWYoIWEubGVuZ3RoKXJldHVybiBiO2lmKCFiLmxlbmd0aClyZXR1cm4gYTt2YXIgYz17fTtyZXR1cm4gYS5jb25jYXQoYikuZmlsdGVyKGZ1bmN0aW9uKGQpe3JldHVybiBjLmhhc093blByb3BlcnR5KGQpPyExOmNbZF09ITB9KX1mdW5jdGlvbiBIcihhKXtyZXR1cm4gYSYmdHlwZW9mIGE9PT0ic3RyaW5nIiYmYS5tYXRjaChzcik/YToiX2djbCJ9ZnVuY3Rpb24gJHIoYSxiKXtpZihhKXt2YXIgYz17dmFsdWU6YSxxYTpuZXcgZXJ9O2ZyKGMucWEsYik7cmV0dXJuIGN9fQpmdW5jdGlvbiBhcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpO2lmKGImJighZnx8IWUpKXt2YXIgZz1kLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Z8fChmPSRyKElqKGcsImdjbGlkIiwhMSksMykpO2V8fChlPUlqKGcsImdjbHNyYyIsITEpKX1yZXR1cm4gZiYmKGU9PT12b2lkIDB8fGU9PT0iYXcifHxlPT09ImF3LmRzInx8WWYoOCkmJmU9PT0iYXcuZHYiKT9bZl06W119CmZ1bmN0aW9uIGJzKGEsYil7dmFyIGM9UmooYSksZD1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xpZCIpLGU9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2Nsc3JjIiksZj1MaihjLCJxdWVyeSIsITEsdm9pZCAwLCJ3YnJhaWQiKTtmPSRiKGYpO3ZhciBnPUxqKGMsInF1ZXJ5IiwhMSx2b2lkIDAsImdicmFpZCIpLGg9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpLGw9TGooYywicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKTtpZihiJiYhKGQmJmUmJmYmJmcpKXt2YXIgbj1jLmhhc2gucmVwbGFjZSgiIyIsIiIpO2Q9ZHx8SWoobiwiZ2NsaWQiLCExKTtlPWV8fElqKG4sImdjbHNyYyIsITEpO2Y9Znx8SWoobiwid2JyYWlkIiwhMSk7Zz1nfHxJaihuLCJnYnJhaWQiLCExKTtoPWh8fElqKG4sImdhZF9zb3VyY2UiLCExKX1yZXR1cm4gY3MoZCxlLGwsZixnLGgpfQpmdW5jdGlvbiBkcyhhLGIsYyl7dmFyIGQ9UmooYSksZT1MaihkLCJxdWVyeSIsITEsdm9pZCAwLCJnY2xzcmMiKSxmPSRyKExqKGQsInF1ZXJ5IiwhMSx2b2lkIDAsImdjbGlkIiksYz80OjIpLGc9JHIoTGooZCwicXVlcnkiLCExLHZvaWQgMCwiZGNsaWQiKSxjPzQ6Mik7aWYoYiYmKCFlfHwhZikpe3ZhciBoPWQuaGFzaC5yZXBsYWNlKCIjIiwiIik7Znx8KGY9JHIoSWooaCwiZ2NsaWQiLCExKSwzKSk7ZXx8KGU9SWooaCwiZ2Nsc3JjIiwhMSkpfXJldHVybiBmJiZlJiYoZT09PSJhdy5kcyJ8fGU9PT0iYXcuZHYifHxlPT09IjNwLmRzInx8ZT09PSJkcyIpP1tmXTpnP1tnXTpbXX1mdW5jdGlvbiBlcygpe3JldHVybiBicyhBLmxvY2F0aW9uLmhyZWYsITApfQpmdW5jdGlvbiBjcyhhLGIsYyxkLGUsZil7dmFyIGc9e30saD1mdW5jdGlvbihsLG4pe2dbbl18fChnW25dPVtdKTtnW25dLnB1c2gobCl9O2cuZ2NsaWQ9YTtnLmdjbHNyYz1iO2cuZGNsaWQ9YztpZihhIT09dm9pZCAwJiZhLm1hdGNoKHRyKSlzd2l0Y2goYil7Y2FzZSB2b2lkIDA6aChhLCJhdyIpO2JyZWFrO2Nhc2UgImF3LmRzIjpoKGEsImF3Iik7aChhLCJkYyIpO2JyZWFrO2Nhc2UgImF3LmR2IjpZZig4KSYmKGgoYSwiYXciKSxoKGEsImRjIikpO2JyZWFrO2Nhc2UgImRzIjpoKGEsImRjIik7YnJlYWs7Y2FzZSAiM3AuZHMiOmgoYSwiZGMiKTticmVhaztjYXNlICJnZiI6aChhLCJnZiIpO2JyZWFrO2Nhc2UgImhhIjpoKGEsImhhIil9YyYmaChjLCJkYyIpO2QhPT12b2lkIDAmJnRyLnRlc3QoZCkmJihnLndicmFpZD1kLGgoZCwiZ2IiKSk7ZSE9PXZvaWQgMCYmdHIudGVzdChlKSYmKGcuZ2JyYWlkPWUsaChlLCJhZyIpKTtmIT09dm9pZCAwJiZ0ci50ZXN0KGYpJiYoZy5nYWRfc291cmNlPQpmLGgoZiwiZ3MiKSk7cmV0dXJuIGd9ZnVuY3Rpb24gZnMoKXtmb3IodmFyIGE9ZXMoKSxiPSEwLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpaWYoYVtkLnZhbHVlXSE9PXZvaWQgMCl7Yj0hMTticmVha31iJiYoYT1icyhBLmRvY3VtZW50LnJlZmVycmVyLCExKSxhLmdhZF9zb3VyY2U9dm9pZCAwKTtyZXR1cm4gYX1mdW5jdGlvbiBncyhhKXt2YXIgYj1mcygpO2hzKGIsITEsYSl9CmZ1bmN0aW9uIGlzKGEpe3ZhciBiPWFzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7Yi5sZW5ndGh8fChiPWFzKEEuZG9jdW1lbnQucmVmZXJyZXIsITEsITApKTthPWF8fHt9O2pzKGEpO2lmKGIubGVuZ3RoKXt2YXIgYz1iWzBdLGQ9TmIoKSxlPXVxKGEsZCwhMCksZj1BcigpLGc9ZnVuY3Rpb24oKXtCcihmKSYmZS5leHBpcmVzIT09dm9pZCAwJiZrcigiZ2NsaWQiLHt2YWx1ZTp7dmFsdWU6Yy52YWx1ZSxjcmVhdGlvblRpbWVNczpkLGxpbmtEZWNvcmF0aW9uU291cmNlczpjLnFhLmdldCgpfSxleHBpcmVzOk51bWJlcihlLmV4cGlyZXMpfSl9O0hsKGZ1bmN0aW9uKCl7ZygpO0JyKGYpfHxJbChnLGYpfSxmKX19CmZ1bmN0aW9uIGpzKGEpe3ZhciBiPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjtpZih5ci50ZXN0KGIpfHx6ci50ZXN0KGIpfHxrcygpKXt2YXIgYzthOntmb3IodmFyIGQ9UmooQS5sb2NhdGlvbi5ocmVmKSxlPUpqKExqKGQsInF1ZXJ5IikpLGY9bShPYmplY3Qua2V5cyhlKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7aWYoIXJyW2hdKXt2YXIgbD1lW2hdWzBdfHwiIixuO2lmKCFsfHxsLmxlbmd0aDw1MHx8bC5sZW5ndGg+MjAwKW49ITE7ZWxzZXt2YXIgcD1ncihsKSxxO2lmKHApYzp7dmFyIHI9cDtpZihyJiZyLmxlbmd0aCE9PTApe3ZhciB0PTA7dHJ5e2Zvcih2YXIgdT0xMDt0PHIubGVuZ3RoJiYhKHUtLTw9MCk7KXt2YXIgdj1ocihyLHQpO2lmKHY9PT12b2lkIDApYnJlYWs7dmFyIHg9bSh2KSx5PXgubmV4dCgpLnZhbHVlLHo9eC5uZXh0KCkudmFsdWUsQz15LEQ9eixJPUMmNztpZihDPj4zPT09MTYzODIpe2lmKEkhPT0KMClicmVhazt2YXIgRz1ocihyLEQpO2lmKEc9PT12b2lkIDApYnJlYWs7cT1tKEcpLm5leHQoKS52YWx1ZT09PTE7YnJlYWsgY312YXIgTjtkOnt2YXIgUz12b2lkIDAsVz1yLGVhPUQ7c3dpdGNoKEkpe2Nhc2UgMDpOPShTPWhyKFcsZWEpKT09bnVsbD92b2lkIDA6U1sxXTticmVhayBkO2Nhc2UgMTpOPWVhKzg7YnJlYWsgZDtjYXNlIDI6dmFyIGphPWhyKFcsZWEpO2lmKGphPT09dm9pZCAwKWJyZWFrO3ZhciBmYT1tKGphKSxzYT1mYS5uZXh0KCkudmFsdWU7Tj1mYS5uZXh0KCkudmFsdWUrc2E7YnJlYWsgZDtjYXNlIDU6Tj1lYSs0O2JyZWFrIGR9Tj12b2lkIDB9aWYoTj09PXZvaWQgMHx8Tj5yLmxlbmd0aHx8Tjw9dClicmVhazt0PU59fWNhdGNoKG1hKXt9fXE9ITF9ZWxzZSBxPSExO249cX1pZihuKXtjPWw7YnJlYWsgYX19fWM9dm9pZCAwfXZhciBkYT1jO2RhJiZscygiZ2NsX2F3IixkYSw3LGEpfX0KZnVuY3Rpb24gbHMoYSxiLGMsZCl7bXMoYSxbe3ZlcnNpb246IiIsZ2NsaWQ6Yix0aW1lc3RhbXA6TmIoKSxxYTpUcihjKX1dLGQpfQpmdW5jdGlvbiBtcyhhLGIsYyl7Yz1jfHx7fTt2YXIgZD1BcigpLGU9ZnVuY3Rpb24oKXtpZihCcihkKSYmYi5sZW5ndGg+MCl7dmFyIGY9VXIoYSl8fFtdO2IuZm9yRWFjaChmdW5jdGlvbihnKXt2YXIgaD11cShjLGcudGltZXN0YW1wLCEwKTtoLmV4cGlyZXMhPT12b2lkIDAmJlFyKGYse3ZlcnNpb246IiIsZ2NsaWQ6Zy5nY2xpZCx0aW1lc3RhbXA6Zy50aW1lc3RhbXAsZXhwaXJlczpOdW1iZXIoaC5leHBpcmVzKSxxYTpnLnFhLGxhYmVsczpnLmxhYmVsc30sITApfSk7Zi5sZW5ndGgmJmtyKGEsZi5tYXAoZnVuY3Rpb24oZyl7dmFyIGg9e3ZhbHVlOmcuZ2NsaWQsY3JlYXRpb25UaW1lTXM6Zy50aW1lc3RhbXAsbGlua0RlY29yYXRpb25Tb3VyY2VzOmcucWE/Zy5xYS5nZXQoKTowfSxsO2lmKChsPWcubGFiZWxzKT09bnVsbD8wOmwubGVuZ3RoKWgubGFiZWxzPWcubGFiZWxzO3JldHVybnt2YWx1ZTpoLGV4cGlyZXM6TnVtYmVyKGcuZXhwaXJlcyl9fSkpfX07SGwoZnVuY3Rpb24oKXtCcihkKT8KZSgpOklsKGUsZCl9LGQpfQpmdW5jdGlvbiBocyhhLGIsYyxkLGUpe2M9Y3x8e307ZT1lfHxbXTt2YXIgZj1IcihjLnByZWZpeCksZz1kfHxOYigpLGg9TWF0aC5yb3VuZChnLzFFMyksbD1BcigpLG49ITEscD0hMSxxPVlmKDkpLHI9ZnVuY3Rpb24oKXtpZihCcihsKSl7dmFyIHQ9dXEoYyxnLCEwKTt0Lk1jPWw7Zm9yKHZhciB1PWZ1bmN0aW9uKFcsZWEpe3ZhciBqYT1JcihXLGYpO2phJiYob3EoamEsZWEsdCksVyE9PSJnYiImJihuPSEwKSl9LHY9ZnVuY3Rpb24oVyl7dmFyIGVhPVsiR0NMIixoLFddO2UubGVuZ3RoPjAmJmVhLnB1c2goZS5qb2luKCIuIikpO3JldHVybiBlYS5qb2luKCIuIil9LHg9bShbImF3IiwiZGMiLCJnZiIsImhhIiwiZ3AiXSkseT14Lm5leHQoKTsheS5kb25lO3k9eC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7YVt6XSYmdSh6LHYoYVt6XVswXSkpfWlmKCghbnx8cSkmJmEuZ2Ipe3ZhciBDPWEuZ2JbMF0sRD1JcigiZ2IiLGYpOyFiJiZFcihEKS5zb21lKGZ1bmN0aW9uKFcpe3JldHVybiBXLmdjbGlkPT09QyYmClcubGFiZWxzJiZXLmxhYmVscy5sZW5ndGg+MH0pfHx1KCJnYiIsdihDKSl9fWlmKCFwJiZhLmdicmFpZCYmQnIoImFkX3N0b3JhZ2UiKSYmKHA9ITAsIW58fHEpKXt2YXIgST1hLmdicmFpZCxHPUlyKCJhZyIsZik7aWYoYnx8IUpyKEcpLnNvbWUoZnVuY3Rpb24oVyl7cmV0dXJuIFcuZ2NsaWQ9PT1JJiZXLmxhYmVscyYmVy5sYWJlbHMubGVuZ3RoPjB9KSl7dmFyIE49e30sUz0oTi5rPUksTi5pPSIiK2gsTi5iPWUsTik7QXEoRyxTLDUsYyxnKX19bnMoYSxmLGcsYyl9O0hsKGZ1bmN0aW9uKCl7cigpO0JyKGwpfHxJbChyLGwpfSxsKX0KZnVuY3Rpb24gbnMoYSxiLGMsZCl7aWYoYS5nYWRfc291cmNlIT09dm9pZCAwJiZCcigiYWRfc3RvcmFnZSIpKXt2YXIgZT1xZCgpO2lmKGUhPT0iciImJmUhPT0iaCIpe3ZhciBmPWEuZ2FkX3NvdXJjZSxnPUlyKCJncyIsYik7aWYoZyl7dmFyIGg9TWF0aC5mbG9vcigoTmIoKS0ocGQoKXx8MCkpLzFFMyksbCxuPWlyKCkscD17fTtsPShwLms9ZixwLmk9IiIraCxwLnU9bixwKTtBcShnLGwsNSxkLGMpfX19fWZ1bmN0aW9uIG9zKGEsYixjKXtmb3IodmFyIGQ9d3EoYixjKSxlPTA7ZTxkLmxlbmd0aDsrK2UpaWYoTnIoZFtlXSk+YSlyZXR1cm4hMDtyZXR1cm4hMX0KZnVuY3Rpb24gcHMoYSl7dmFyIGI9cXMsYz1ycyhhLnByZWZpeCk7Q3IoZnVuY3Rpb24oKXtmb3IodmFyIGQ9SHIoYS5wcmVmaXgpLGU9bShiKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZSxoPWNbZ107aWYoaCl7dmFyIGw9TWF0aC5taW4oc3MoaCksTmIoKSksbj11cShhLGwsITApO24uTWM9QXIoKTt2YXIgcD1JcihnLGQpO3AmJm9xKHAsaCxuKX19dmFyIHE9VXEoITApO2hzKGNzKHEuZ2NsaWQscS5nY2xzcmMpLCExLGEpfSxBcigpKX0KZnVuY3Rpb24gcnMoYSl7dmFyIGI9VXEoITApLGM9SHIoYSksZD17fSxlO2ZvcihlIGluIHhyKWlmKHhyLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1lLGc9SXIoZixjKTtpZihnIT09dm9pZCAwKXt2YXIgaD1iW2ddO2lmKGgpe3ZhciBsPXNzKGgpLG47YTp7Zm9yKHZhciBwPU1hdGgubWluKGwsTmIoKSl8fE5iKCkscT1jcShnLEIuY29va2llLHZvaWQgMCxBcigpKSxyPTA7cjxxLmxlbmd0aDsrK3IpaWYoc3MocVtyXSk+cCl7bj0hMDticmVhayBhfW49ITF9bnx8KGRbZl09aCl9fX1yZXR1cm4gZH0KZnVuY3Rpb24gdHMoYSl7dmFyIGI9WyJhZyJdLGM9VXEoITApLGQ9SHIoYS5wcmVmaXgpO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoZil7dmFyIGc9Y1tmXTtpZihnKXt2YXIgaD0kcChnLDUpO2lmKGgpe3ZhciBsPU5yKGgpO2x8fChsPU5iKCkpO2lmKG9zKGwsZiw1KSlicmVhaztoLmk9IiIrTWF0aC5yb3VuZChsLzFFMyk7QXEoZixoLDUsYSxsKX19fX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiBJcihhLGIpe3ZhciBjPXhyW2FdO2lmKGMhPT12b2lkIDApcmV0dXJuIGIrY31mdW5jdGlvbiBzcyhhKXtyZXR1cm4gVnIoYS5zcGxpdCgiLiIpKS5sZW5ndGghPT0wPyhOdW1iZXIoYS5zcGxpdCgiLiIpWzFdKXx8MCkqMUUzOjB9ZnVuY3Rpb24gTnIoYSl7cmV0dXJuIGE/KE51bWJlcihhLmkpfHwwKSoxRTM6MH0KZnVuY3Rpb24gVnIoYSl7cmV0dXJuIGEubGVuZ3RoPDN8fGFbMF0hPT0iR0NMIiYmYVswXSE9PSIxInx8IS9eXGQrJC8udGVzdChhWzFdKXx8IXRyLnRlc3QoYVsyXSk/W106YX1mdW5jdGlvbiB1cyhhLGIsYyxkKXt2YXIgZT1xcztpZihBcnJheS5pc0FycmF5KGEpJiZTcChBKSl7dmFyIGY9SHIoZCksZz1mdW5jdGlvbigpe2Zvcih2YXIgaD17fSxsPTA7bDxlLmxlbmd0aDsrK2wpe3ZhciBuPUlyKGVbbF0sZik7aWYobil7dmFyIHA9Y3EobixCLmNvb2tpZSx2b2lkIDAsQXIoKSk7cC5sZW5ndGgmJihoW25dPXAuc29ydCgpW3AubGVuZ3RoLTFdKX19cmV0dXJuIGh9O0NyKGZ1bmN0aW9uKCl7YXIoZyxhLGIsYyl9LEFyKCkpfX0KZnVuY3Rpb24gdnMoYSxiLGMpe3ZhciBkPXFzO2lmKFlmKDEzKSYmQXJyYXkuaXNBcnJheShhKSYmU3AoQSkpe3ZhciBlPWZ1bmN0aW9uKCl7Zm9yKHZhciBmPXt9LGc9MDtnPGQubGVuZ3RoOysrZyl7dmFyIGg9dnJbZFtnXV07aWYoaCl7dmFyIGw9Y3EoaCxCLmNvb2tpZSx2b2lkIDAsQXIoKSk7aWYobC5sZW5ndGgpe2Zvcih2YXIgbj12b2lkIDAscD0wLHE9bShsKSxyPXEubmV4dCgpOyFyLmRvbmU7cj1xLm5leHQoKSl7dmFyIHQ9ci52YWx1ZSx1PSRwKHQsNCk7aWYodSYmKHUubT09PSIxInx8WWYoMTYpKSl7dmFyIHY9TnIodSk7dj49cCYmKHA9dixuPXQpfX1uJiYoZltoXT1uKX19fXJldHVybiBmfTtDcihmdW5jdGlvbigpe2FyKGUsYSxiLGMpfSxBcigpKX19CmZ1bmN0aW9uIHdzKGEsYixjLGQpe2lmKEFycmF5LmlzQXJyYXkoYSkmJlNwKEEpKXt2YXIgZT1bImFnIl0sZj1IcihkKSxnPWZ1bmN0aW9uKCl7Zm9yKHZhciBoPXt9LGw9MDtsPGUubGVuZ3RoOysrbCl7dmFyIG49SXIoZVtsXSxmKTtpZighbilyZXR1cm57fTt2YXIgcD13cShuLDUpO2lmKHAubGVuZ3RoKXt2YXIgcT1wLnNvcnQoZnVuY3Rpb24ocix0KXtyZXR1cm4gTnIodCktTnIocil9KVswXTtoW25dPWFxKHEsNSl9fXJldHVybiBofTtDcihmdW5jdGlvbigpe2FyKGcsYSxiLGMpfSxbImFkX3N0b3JhZ2UiXSl9fWZ1bmN0aW9uIFJyKGEpe3JldHVybiBhLmZpbHRlcihmdW5jdGlvbihiKXtyZXR1cm4gdHIudGVzdChiLmdjbGlkKX0pfQpmdW5jdGlvbiB4cyhhLGIpe2lmKFNwKEEpKXtmb3IodmFyIGM9SHIoYi5wcmVmaXgpLGQ9e30sZT0wO2U8YS5sZW5ndGg7ZSsrKXhyW2FbZV1dJiYoZFthW2VdXT14clthW2VdXSk7Q3IoZnVuY3Rpb24oKXtHYihkLGZ1bmN0aW9uKGYsZyl7dmFyIGg9Y3EoYytnLEIuY29va2llLHZvaWQgMCxBcigpKTtoLnNvcnQoZnVuY3Rpb24odCx1KXtyZXR1cm4gc3ModSktc3ModCl9KTtpZihoLmxlbmd0aCl7dmFyIGw9aFswXSxuPXNzKGwpLHA9VnIobC5zcGxpdCgiLiIpKS5sZW5ndGghPT0wP2wuc3BsaXQoIi4iKS5zbGljZSgzKTpbXSxxPXt9LHI7cj1WcihsLnNwbGl0KCIuIikpLmxlbmd0aCE9PTA/bC5zcGxpdCgiLiIpWzJdOnZvaWQgMDtxW2ZdPVtyXTtocyhxLCEwLGIsbixwKX19KX0sQXIoKSl9fQpmdW5jdGlvbiB5cyhhKXt2YXIgYj1bImFnIl0sYz1bImdicmFpZCJdO0NyKGZ1bmN0aW9uKCl7Zm9yKHZhciBkPUhyKGEucHJlZml4KSxlPTA7ZTxiLmxlbmd0aDsrK2Upe3ZhciBmPUlyKGJbZV0sZCk7aWYoIWYpYnJlYWs7dmFyIGc9d3EoZiw1KTtpZihnLmxlbmd0aCl7dmFyIGg9Zy5zb3J0KGZ1bmN0aW9uKHEscil7cmV0dXJuIE5yKHIpLU5yKHEpfSlbMF0sbD1OcihoKSxuPWguYixwPXt9O3BbY1tlXV09aC5rO2hzKHAsITAsYSxsLG4pfX19LFsiYWRfc3RvcmFnZSJdKX1mdW5jdGlvbiB6cyhhLGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7KytjKWlmKGFbYltjXV0pcmV0dXJuITA7cmV0dXJuITF9CmZ1bmN0aW9uIEFzKGEpe2Z1bmN0aW9uIGIoaCxsLG4pe24mJihoW2xdPW4pfWlmKEVsKCkpe3ZhciBjPWVzKCksZDthLmluY2x1ZGVzKCJnYWRfc291cmNlIikmJihkPWMuZ2FkX3NvdXJjZSE9PXZvaWQgMD9jLmdhZF9zb3VyY2U6VXEoITEpLl9ncyk7aWYoenMoYyxhKXx8ZCl7dmFyIGU9e307YihlLCJnY2xpZCIsYy5nY2xpZCk7YihlLCJkY2xpZCIsYy5kY2xpZCk7YihlLCJnY2xzcmMiLGMuZ2Nsc3JjKTtiKGUsIndicmFpZCIsYy53YnJhaWQpO2IoZSwiZ2JyYWlkIixjLmdicmFpZCk7YnIoZnVuY3Rpb24oKXtyZXR1cm4gZX0sMyk7dmFyIGY9e30sZz0oZi5fdXA9IjEiLGYpO2IoZywiX2dzIixkKTticihmdW5jdGlvbigpe3JldHVybiBnfSwxKX19fWZ1bmN0aW9uIGtzKCl7dmFyIGE9UmooQS5sb2NhdGlvbi5ocmVmKTtyZXR1cm4gTGooYSwicXVlcnkiLCExLHZvaWQgMCwiZ2FkX3NvdXJjZSIpfQpmdW5jdGlvbiBCcyhhKXtpZighWWYoMSkpcmV0dXJuIG51bGw7dmFyIGI9VXEoITApLmdhZF9zb3VyY2U7aWYoYiE9bnVsbClyZXR1cm4gQS5sb2NhdGlvbi5oYXNoPSIiLGI7aWYoWWYoMikpe2I9a3MoKTtpZihiIT1udWxsKXJldHVybiBiO3ZhciBjPWVzKCk7aWYoenMoYyxhKSlyZXR1cm4iMCJ9cmV0dXJuIG51bGx9ZnVuY3Rpb24gQ3MoYSl7dmFyIGI9QnMoYSk7YiE9bnVsbCYmYnIoZnVuY3Rpb24oKXt2YXIgYz17fTtyZXR1cm4gYy5nYWRfc291cmNlPWIsY30sNCl9CmZ1bmN0aW9uIERzKGEsYixjKXt2YXIgZD1bXTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGQ7Zm9yKHZhciBlPXt9LGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXSxoPWcuemc/Zy56ZzoiZ2NsIjtpZigoZy5sYWJlbHN8fFtdKS5pbmRleE9mKGMpPT09LTEpe2EucHVzaCgwKTt2YXIgbD0hMSxuPXZvaWQgMDtpZigobj1nLm9hKT09bnVsbD8wOm4uaW5jbHVkZXMoMikpbD0hMDt2YXIgcD12b2lkIDA7KChwPWcub2EpPT1udWxsPzA6cC5pbmNsdWRlcygxKSkmJiFlW2hdJiYobD0hMCxlW2hdPSEwKTtsJiZkLnB1c2goZyl9ZWxzZXthLnB1c2goMSk7dmFyIHE9dm9pZCAwO2lmKChxPWcub2EpPT1udWxsPzA6cS5pbmNsdWRlcygxKSllW2hdPSEwfX1yZXR1cm4gZH0KZnVuY3Rpb24gRXMoYSxiLGMsZCxlKXtlPWU9PT12b2lkIDA/ITE6ZTt2YXIgZj1bXTtjPWN8fHt9O2lmKCFCcihBcigpKSlyZXR1cm4gZjt2YXIgZz1FcihhLGUpLGg9RHMoZixnLGIpO2lmKGgubGVuZ3RoJiYhZCl7Zm9yKHZhciBsPVtdLG49ITEscD1tKGgpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlLHQ9cix1PXQudmVyc2lvbix2PXQuZ2NsaWQseD10LnRpbWVzdGFtcCx5PXQub2Esej0odC5sYWJlbHN8fFtdKS5jb25jYXQoW2JdKSxDPXZvaWQgMDtpZigoKEM9eSk9PW51bGw/MDpDLmluY2x1ZGVzKDEpKSYmIW4pe3ZhciBEPVt1LE1hdGgucm91bmQoeC8xRTMpLHZdLmNvbmNhdCh6KS5qb2luKCIuIiksST11cShjLHgsITApO0kuTWM9QXIoKTtvcShhLEQsSSk7bj0hMH12YXIgRz12b2lkIDA7ZSYmKChHPXkpPT1udWxsPzA6Ry5pbmNsdWRlcygyKSkmJmwucHVzaChuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHIse2xhYmVsczp6fSkpfWwubGVuZ3RoJiYKbXMoImdjbF9nYiIsbCxjKX1yZXR1cm4gZn0KZnVuY3Rpb24gRnMoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3ZhciBkPVtdO2I9Ynx8e307dmFyIGU9R3IoYixjKSxmPURzKGQsZSxhKTtpZihmLmxlbmd0aCl7Zm9yKHZhciBnPVtdLGg9e30sbD1tKGYpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlLHE9SHIoYi5wcmVmaXgpLHI9SXIocC56ZyxxKTtpZighcilyZXR1cm4gZDt2YXIgdD1wLHU9dC52ZXJzaW9uLHY9dC5nY2xpZCx4PXQudGltZXN0YW1wLHk9dC5vYSx6PU1hdGgucm91bmQoeC8xRTMpLEM9THIodC5sYWJlbHN8fFtdLFthXSksRD12b2lkIDA7aWYoKEQ9eSk9PW51bGw/MDpELmluY2x1ZGVzKDEpKWlmKHAuemc9PT0iYWciJiYhaC5hZyl7dmFyIEk9e30sRz0oSS5rPXYsSS5pPSIiK3osSS5iPUMsSSk7QXEocixHLDUsYix4KTtoLmFnPSEwfWVsc2UgaWYocC56Zz09PSJnYiImJiFoLmdiKXt2YXIgTj1bdSx6LHZdLmNvbmNhdChDKS5qb2luKCIuIiksUz11cShiLHgsITApO1MuTWM9CkFyKCk7b3EocixOLFMpO2guZ2I9ITB9dmFyIFc9dm9pZCAwO2MmJigoVz15KT09bnVsbD8wOlcuaW5jbHVkZXMoMikpJiZnLnB1c2gobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxwLHtsYWJlbHM6Q30pKX1nLmxlbmd0aCYmbXMoImdjbF9nYiIsZyxiKX1yZXR1cm4gZH1mdW5jdGlvbiBHcyhhLGIpe3ZhciBjPUhyKGIpLGQ9SXIoYSxjKTtpZighZClyZXR1cm4gMDt2YXIgZTtlPWE9PT0iYWciP0pyKGQpOkVyKGQpO2Zvcih2YXIgZj0wLGc9MDtnPGUubGVuZ3RoO2crKylmPU1hdGgubWF4KGYsZVtnXS50aW1lc3RhbXApO3JldHVybiBmfWZ1bmN0aW9uIEhzKGEpe2Zvcih2YXIgYj0wLGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZm9yKHZhciBlPWFbZC52YWx1ZV0sZj0wO2Y8ZS5sZW5ndGg7ZisrKWI9TWF0aC5tYXgoYixOdW1iZXIoZVtmXS50aW1lc3RhbXApKTtyZXR1cm4gYn0KZnVuY3Rpb24gSXMoYSl7dmFyIGI9TWF0aC5tYXgoR3MoImF3IixhKSxIcyhCcihBcigpKT9ScCgpOnt9KSksYz1NYXRoLm1heChHcygiZ2IiLGEpLEhzKEJyKEFyKCkpP1JwKCJfZ2FjX2diIiwhMCk6e30pKTtjPU1hdGgubWF4KGMsR3MoImFnIixhKSk7cmV0dXJuIGM+Yn07dmFyIEpzPVJlZ0V4cCgiXlVBLVxcZCstXFxkKyUzQVtcXHctXSsoPzolMkNbXFx3LV0rKSooPzolM0JVQS1cXGQrLVxcZCslM0FbXFx3LV0rKD86JTJDW1xcdy1dKykqKSokIiksS3M9L15+P1tcdy1dKyg/Olwufj9bXHctXSspKiQvLExzPS9eXGQrXC5mbHNcLmRvdWJsZWNsaWNrXC5uZXQkLyxNcz0vO2dhYz0oW147P10rKS8sTnM9LztnYWNnYj0oW147P10rKS87CmZ1bmN0aW9uIE9zKGEsYil7aWYoTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpKXt2YXIgYz1CLmxvY2F0aW9uLmhyZWYubWF0Y2goYik7cmV0dXJuIGMmJmMubGVuZ3RoPT09MiYmY1sxXS5tYXRjaChKcyk/S2ooY1sxXSl8fCIiOiIifWZvcih2YXIgZD1bXSxlPW0oT2JqZWN0LmtleXMoYSkpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXtmb3IodmFyIGc9Zi52YWx1ZSxoPVtdLGw9YVtnXSxuPTA7bjxsLmxlbmd0aDtuKyspaC5wdXNoKGxbbl0uZ2NsaWQpO2QucHVzaChnKyI6IitoLmpvaW4oIiwiKSl9cmV0dXJuIGQubGVuZ3RoPjA/ZC5qb2luKCI7Iik6IiJ9CmZ1bmN0aW9uIFBzKGEsYixjKXtmb3IodmFyIGQ9QnIoQXIoKSk/UnAoIl9nYWNfZ2IiLCEwKTp7fSxlPVtdLGY9ITEsZz1tKE9iamVjdC5rZXlzKGQpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZSxuPUVzKCJfZ2FjX2diXyIrbCxhLGIsYyk7Zj1mfHxuLmxlbmd0aCE9PTAmJm4uc29tZShmdW5jdGlvbihwKXtyZXR1cm4gcD09PTF9KTtlLnB1c2gobCsiOiIrbi5qb2luKCIsIikpfXJldHVybntScjpmP2Uuam9pbigiOyIpOiIiLFFyOk9zKGQsTnMpfX1mdW5jdGlvbiBRcyhhKXt2YXIgYj1CLmxvY2F0aW9uLmhyZWYubWF0Y2gobmV3IFJlZ0V4cCgiOyIrYSsiPShbXjs/XSspIikpO3JldHVybiBiJiZiLmxlbmd0aD09PTImJmJbMV0ubWF0Y2goS3MpP2JbMV06dm9pZCAwfQpmdW5jdGlvbiBScyhhKXt2YXIgYj17fSxjLGQsZTtMcy50ZXN0KEIubG9jYXRpb24uaG9zdCkmJihjPVFzKCJnY2xncyIpLGQ9UXMoImdjbHN0IiksZT1RcygiZ2NsbHAiKSk7aWYoYyYmZCYmZSliLkVnPWMsYi5XaD1kLGIuVWg9ZTtlbHNle3ZhciBmPU5iKCksZz1NcigoYXx8Il9nY2wiKSsiX2dzIiksaD1nLm1hcChmdW5jdGlvbihwKXtyZXR1cm4gcC5nY2xpZH0pLGw9Zy5tYXAoZnVuY3Rpb24ocCl7cmV0dXJuIGYtcC50aW1lc3RhbXB9KSxuPWcubWFwKGZ1bmN0aW9uKHApe3JldHVybiBwLm9kfSk7aC5sZW5ndGg+MCYmbC5sZW5ndGg+MCYmbi5sZW5ndGg+MCYmKGIuRWc9aC5qb2luKCIuIiksYi5XaD1sLmpvaW4oIi4iKSxiLlVoPW4uam9pbigiLiIpKX1yZXR1cm4gYn0KZnVuY3Rpb24gU3MoYSxiKXt2YXIgYz1hLnNwbGl0KCIuIiksZD1iP2Iuc3BsaXQoIi4iKTpbXSxlPWQubGVuZ3RoPT09Yy5sZW5ndGg/ZDp2b2lkIDA7cmV0dXJuIGMubWFwKGZ1bmN0aW9uKGYsZyl7dmFyIGg9e2djbGlkOmZ9O2lmKGUpe3ZhciBsPWVbZ10uc3BsaXQoIl8iKTtpZihsLmxlbmd0aD09PTIpe2gucWE9bmV3IGVyKE51bWJlcihsWzBdKSk7dmFyIG47dmFyIHA9TnVtYmVyKGxbMV0pO2lmKHA9PT0wKW49WzBdO2Vsc2V7dmFyIHE9W107cCYxJiZxLnB1c2goMSk7cCYyJiZxLnB1c2goMik7cCY0JiZxLnB1c2goMyk7cCY4JiZxLnB1c2goNCk7cCYxNiYmcS5wdXNoKDUpO249cX1oLm9hPW59fXJldHVybiBofSl9CmZ1bmN0aW9uIFRzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2lmKExzLnRlc3QoQi5sb2NhdGlvbi5ob3N0KSl7dmFyIGU9UXMoYyk7aWYoZSl7aWYoWWYoMTcpKXt2YXIgZj1RcyhjKyJfc3JjIik7cmV0dXJuIFNzKGUsZil9aWYoZCl7dmFyIGc9bmV3IGVyO2ZyKGcsMik7ZnIoZywzKTtyZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpnLG9hOlsxXX19KX1yZXR1cm4gZS5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihyKXtyZXR1cm57Z2NsaWQ6cixxYTpuZXcgZXIsb2E6WzFdfX0pfX1lbHNle2lmKGI9PT0iZ2NsaWQiKXtmb3IodmFyIGg9RXIoKGF8fCJfZ2NsIikrIl9hdyIsZCksbD1OdW1iZXIoWGZbNF09PT12b2lkIDA/MDpYZls0XSksbj1tKFVzKCkpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT1wLnZhbHVlO3EudGltZXN0YW1wPmwmJlFyKGgscSl9cmV0dXJuIGh9aWYoYj09PSJ3YnJhaWQiKXJldHVybiBFcigoYXx8CiJfZ2NsIikrIl9nYiIsZCk7aWYoYj09PSJicmFpZHMiKXJldHVybiBHcih7cHJlZml4OmF9LGQpfXJldHVybltdfWZ1bmN0aW9uIFVzKCl7cmV0dXJuKHdxKHZyLmF3LDQpfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLm09PT0iMSJ9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJue2djbGlkOmEuayx0aW1lc3RhbXA6TnVtYmVyKGEuaSksdmVyc2lvbjoiIixvYTpbNV19fSl9ZnVuY3Rpb24gVnMoYSl7Zm9yKHZhciBiPTAsYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO2U+MCYmKGJ8PTE8PGUtMSl9cmV0dXJuIGIudG9TdHJpbmcoKX1mdW5jdGlvbiBXcyhhKXtyZXR1cm4gTHMudGVzdChCLmxvY2F0aW9uLmhvc3QpPyEoUXMoImdjbGF3Iil8fFFzKCJnYWMiKSk6SXMoYSl9CmZ1bmN0aW9uIFhzKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlO2U9Yz9GcyhhLGIsZCk6RXMoKGImJmIucHJlZml4fHwiX2djbCIpKyJfZ2IiLGEsYix2b2lkIDAsZCk7cmV0dXJuIGUubGVuZ3RoPT09MHx8ZS5ldmVyeShmdW5jdGlvbihmKXtyZXR1cm4gZj09PTB9KT8iIjplLmpvaW4oIi4iKX07CnZhciBZcz1mdW5jdGlvbihhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1raigiYWRzX3BhZ2V2aWV3IixmdW5jdGlvbigpe3JldHVybnt9fSk7aWYoY1thXSlyZXR1cm4hMTtifHwoY1thXT0hMCk7cmV0dXJuITB9LFpzPWZ1bmN0aW9uKGEpe3JldHVybiBTaihhLCJnY2xpZCBkY2xpZCBnYnJhaWQgd2JyYWlkIGdjbGF3IGdjbGRjIGdjbGhhIGdjbGdmIGdjbGdiIF9nbCIuc3BsaXQoIiAiKSwiMCIpfSxhdD1mdW5jdGlvbigpe3ZhciBhPVJqKEEubG9jYXRpb24uaHJlZiksYj12b2lkIDAsYz12b2lkIDAsZD1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfc291cmNlIiksZT1MaihhLCJxdWVyeSIsITEsdm9pZCAwLCJnYWRfY2FtcGFpZ25pZCIpLGYsZz1hLmhhc2gucmVwbGFjZSgiIyIsIiIpLm1hdGNoKCRzKTtmPWc/Z1sxXTp2b2lkIDA7ZCYmZj8oYj1kLGM9MSk6ZD8oYj1kLGM9Mik6ZiYmKGI9ZixjPTMpO3JldHVybntEZzpiLFNyOmMsVGg6ZX19LGJ0PWZ1bmN0aW9uKGEpe3ZhciBiPQpPcCghMSk9PT0xP0EudG9wLmxvY2F0aW9uLmhyZWY6QS5sb2NhdGlvbi5ocmVmO3JldHVybiBhKGIpfSxjdD1mdW5jdGlvbihhKXt2YXIgYj1bXTtHYihhLGZ1bmN0aW9uKGMsZCl7ZD1ScihkKTtmb3IodmFyIGU9W10sZj0wO2Y8ZC5sZW5ndGg7ZisrKWUucHVzaChkW2ZdLmdjbGlkKTtlLmxlbmd0aCYmYi5wdXNoKGMrIjoiK2Uuam9pbigiLCIpKX0pO3JldHVybiBiLmpvaW4oIjsiKX0sZXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWR0KGEpO2lmKGQpcmV0dXJuIGQ7dmFyIGU9SHIoYik7aWYoZT09PSJfZ2NsIil7dmFyIGY9IVhvKGZwKSYmYyxnPVtdO2E9PT0iYXciP2c9YXMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKTphPT09ImRjIiYmKGc9ZHMoQS5sb2NhdGlvbi5ocmVmLCEwLCExKSk7aWYoZy5sZW5ndGg+MClyZXR1cm4gZj9be3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsZ2NsaWQ6IjAifV06Zy5tYXAoZnVuY3Rpb24obCl7cmV0dXJue3ZlcnNpb246IkdDTCIsdGltZXN0YW1wOjAsCmdjbGlkOmwudmFsdWUscWE6bC5xYSxvYTpbMV19fSl9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9hPT09ImF3Ij9FcihoLE0oNTYyKSk6WnIoaCk6W119LGR0PWZ1bmN0aW9uKGEpe3ZhciBiPVRqKCJnY2wiK2EpLGM9YT09PSJkYyJ8fGE9PT0iYXciP1RqKCJnY2wiK2ErIl9zcmMiKTp2b2lkIDA7aWYoYilyZXR1cm4gU3MoYixjKX0sZnQ9ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PT0iYXcifHxhPT09ImRjInx8YT09PSJnYiIpe3ZhciBkPVRqKCJnY2wiK2EpO2lmKGQpcmV0dXJuIGQuc3BsaXQoIi4iKX12YXIgZT1IcihiKTtpZihlPT09Il9nY2wiKXt2YXIgZj0hWG8oZnApJiZjLGc7Zz1lcygpW2FdfHxbXTtpZihnLmxlbmd0aD4wKXJldHVybiBmP1siMCJdOmd9dmFyIGg9SXIoYSxlKTtyZXR1cm4gaD9EcihoKTpbXX0sZ3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKCFSKGEsYil8fCFSKGEsYykpcmV0dXJuIiI7dmFyIGQ9UihhLGIpLnNwbGl0KCIuIiksZT1SKGEsYykuc3BsaXQoIi4iKTtyZXR1cm4gZC5sZW5ndGgmJgplLmxlbmd0aCYmZC5sZW5ndGg9PT1lLmxlbmd0aCYmZFswXSYmZVswXT9kLm1hcChmdW5jdGlvbihmLGcpe3JldHVybiBmKyJfIitlW2ddfSkuam9pbigiLiIpOiIifSwkcz0vXmdhZF9zb3VyY2VbXz1dKFxkKykkLztmdW5jdGlvbiBodChhLGIsYyl7dmFyIGQ9UihhLEYuRC5UYSk7aWYoZCYmdHlwZW9mIGQ9PT0ib2JqZWN0Iilmb3IodmFyIGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWUsaD1kW2ddO2lmKGghPT12b2lkIDApe2g9PT1udWxsJiYoaD0iIik7dmFyIGw9ImdhcC4iK2csbj1TdHJpbmcoaCk7Yz9jKGwsbik6YltsXT1ufX19O3ZhciBpdD0hMSxqdD1bXTtmdW5jdGlvbiBrdCgpe2lmKCFpdCl7aXQ9ITA7Zm9yKHZhciBhPWp0Lmxlbmd0aC0xO2E+PTA7YS0tKWp0W2FdKCk7anQ9W119fTtmdW5jdGlvbiBsdChhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtmdW5jdGlvbiBtdChhLGIsYyl7cmV0dXJuIHR5cGVvZiBhLmFkZEV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iPyhhLmFkZEV2ZW50TGlzdGVuZXIoYixjLCExKSwhMCk6ITF9ZnVuY3Rpb24gbnQoYSxiLGMpe3R5cGVvZiBhLnJlbW92ZUV2ZW50TGlzdGVuZXI9PT0iZnVuY3Rpb24iJiZhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjLCExKX07ZnVuY3Rpb24gb3QoYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHN8fChhLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cz1bXSk7dmFyIGU9UHAoYS5kb2N1bWVudCk7aWYoYyl7dmFyIGY9ZnVuY3Rpb24oKXtpZihjKXt2YXIgZz1hLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cyxoPURjKGcsZSk7aD49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGcsaCwxKX1udChlLCJsb2FkIixmKTtudChlLCJlcnJvciIsZil9O210KGUsImxvYWQiLGYpO210KGUsImVycm9yIixmKX1kJiYoZS5hdHRyaWJ1dGlvblNyYz0iIik7ZS5zcmM9YjthLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cy5wdXNoKGUpfQpmdW5jdGlvbiBwdChhKXt2YXIgYjtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz0iaHR0cHM6Ly9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvZ2VuXzIwND9pZD10Y2ZlIjtJcChhLGZ1bmN0aW9uKGQsZSl7aWYoZHx8ZD09PTApYys9IiYiK2UrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoZCkpfSk7cXQoYyxiKX0KZnVuY3Rpb24gcXQoYSxiKXt2YXIgYz13aW5kb3csZDtiPWI9PT12b2lkIDA/ITE6YjtkPWQ9PT12b2lkIDA/ITE6ZDtpZihjLmZldGNoKXt2YXIgZT17a2VlcGFsaXZlOiEwLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixyZWRpcmVjdDoiZm9sbG93IixtZXRob2Q6ImdldCIsbW9kZToibm8tY29ycyJ9O2QmJihlLm1vZGU9ImNvcnMiLCJzZXRBdHRyaWJ1dGlvblJlcG9ydGluZyJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU/ZS5hdHRyaWJ1dGlvblJlcG9ydGluZz17ZXZlbnRTb3VyY2VFbGlnaWJsZToidHJ1ZSIsdHJpZ2dlckVsaWdpYmxlOiJmYWxzZSJ9OmUuaGVhZGVycz17IkF0dHJpYnV0aW9uLVJlcG9ydGluZy1FbGlnaWJsZSI6ImV2ZW50LXNvdXJjZSJ9KTtjLmZldGNoKGEsZSl9ZWxzZSBvdChjLGEsYj09PXZvaWQgMD8hMTpiLGQ9PT12b2lkIDA/ITE6ZCl9O2Z1bmN0aW9uIHJ0KCl7dGhpcy5mYT10aGlzLmZhO3RoaXMuUj10aGlzLlJ9cnQucHJvdG90eXBlLmZhPSExO3J0LnByb3RvdHlwZS5kaXNwb3NlPWZ1bmN0aW9uKCl7dGhpcy5mYXx8KHRoaXMuZmE9ITAsdGhpcy5OKCkpfTtydC5wcm90b3R5cGVbU3ltYm9sLmRpc3Bvc2VdPWZ1bmN0aW9uKCl7dGhpcy5kaXNwb3NlKCl9O3J0LnByb3RvdHlwZS5hZGRPbkRpc3Bvc2VDYWxsYmFjaz1mdW5jdGlvbihhLGIpe3RoaXMuZmE/YiE9PXZvaWQgMD9hLmNhbGwoYik6YSgpOih0aGlzLlJ8fCh0aGlzLlI9W10pLGImJihhPWEuYmluZChiKSksdGhpcy5SLnB1c2goYSkpfTtydC5wcm90b3R5cGUuTj1mdW5jdGlvbigpe2lmKHRoaXMuUilmb3IoO3RoaXMuUi5sZW5ndGg7KXRoaXMuUi5zaGlmdCgpKCl9O2Z1bmN0aW9uIHN0KGEpe2EuYWRkdGxDb25zZW50PT09dm9pZCAwfHx2ZihhLmFkZHRsQ29uc2VudCl8fChhLmFkZHRsQ29uc2VudD12b2lkIDApO2EuZ2RwckFwcGxpZXM9PT12b2lkIDB8fHdmKGEuZ2RwckFwcGxpZXMpfHwoYS5nZHByQXBwbGllcz12b2lkIDApO3JldHVybiBhLnRjU3RyaW5nIT09dm9pZCAwJiYhdmYoYS50Y1N0cmluZyl8fGEubGlzdGVuZXJJZCE9PXZvaWQgMCYmIXVmKGEubGlzdGVuZXJJZCk/MjphLmNtcFN0YXR1cyYmYS5jbXBTdGF0dXMhPT0iZXJyb3IiPzA6M312YXIgdHQ9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306YjtydC5jYWxsKHRoaXMpO3RoaXMuSD1udWxsO3RoaXMuamE9e307dGhpcy55YT0wO3RoaXMuWj1udWxsO3RoaXMuSz1hO3ZhciBjO3RoaXMudGltZW91dE1zPShjPWIudGltZW91dE1zKSE9bnVsbD9jOjUwMDt2YXIgZDt0aGlzLkVqPShkPWIuRWopIT1udWxsP2Q6ITF9O3dhKHR0LHJ0KTsKdHQucHJvdG90eXBlLk49ZnVuY3Rpb24oKXt0aGlzLmphPXt9O3RoaXMuWiYmKG50KHRoaXMuSywibWVzc2FnZSIsdGhpcy5aKSxkZWxldGUgdGhpcy5aKTtkZWxldGUgdGhpcy5qYTtkZWxldGUgdGhpcy5LO2RlbGV0ZSB0aGlzLkg7cnQucHJvdG90eXBlLk4uY2FsbCh0aGlzKX07dmFyIHZ0PWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS5LLl9fdGNmYXBpPT09ImZ1bmN0aW9uInx8dXQoYSkhPW51bGx9Owp0dC5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9e2ludGVybmFsQmxvY2tPbkVycm9yczp0aGlzLkVqfSxkPUhwKGZ1bmN0aW9uKCl7YShjKX0pLGU9MDt0aGlzLnRpbWVvdXRNcyE9PS0xJiYoZT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSI7Yy5pbnRlcm5hbEVycm9yU3RhdGU9MTtkKCl9LHRoaXMudGltZW91dE1zKSk7dmFyIGY9ZnVuY3Rpb24oZyxoKXtjbGVhclRpbWVvdXQoZSk7Zz8oYz1nLGMuaW50ZXJuYWxFcnJvclN0YXRlPXN0KGMpLGMuaW50ZXJuYWxCbG9ja09uRXJyb3JzPWIuRWosaCYmYy5pbnRlcm5hbEVycm9yU3RhdGU9PT0wfHwoYy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsaHx8KGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpKSk6KGMudGNTdHJpbmc9InRjdW5hdmFpbGFibGUiLGMuaW50ZXJuYWxFcnJvclN0YXRlPTMpO2EoYyl9O3RyeXt3dCh0aGlzLCJhZGRFdmVudExpc3RlbmVyIiwKZil9Y2F0Y2goZyl7Yy50Y1N0cmluZz0idGN1bmF2YWlsYWJsZSIsYy5pbnRlcm5hbEVycm9yU3RhdGU9MyxlJiYoY2xlYXJUaW1lb3V0KGUpLGU9MCksZCgpfX07dHQucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7YSYmYS5saXN0ZW5lcklkJiZ3dCh0aGlzLCJyZW1vdmVFdmVudExpc3RlbmVyIixudWxsLGEubGlzdGVuZXJJZCl9Owp2YXIgenQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2Q9ZD09PXZvaWQgMD8iNzU1IjpkO3ZhciBlO2E6e2lmKGEucHVibGlzaGVyJiZhLnB1Ymxpc2hlci5yZXN0cmljdGlvbnMpe3ZhciBmPWEucHVibGlzaGVyLnJlc3RyaWN0aW9uc1tiXTtpZihmIT09dm9pZCAwKXtlPWZbZD09PXZvaWQgMD8iNzU1IjpkXTticmVhayBhfX1lPXZvaWQgMH12YXIgZz1lO2lmKGc9PT0wKXJldHVybiExO3ZhciBoPWM7Yz09PTI/KGg9MCxnPT09MiYmKGg9MSkpOmM9PT0zJiYoaD0xLGc9PT0xJiYoaD0wKSk7dmFyIGw7aWYoaD09PTApaWYoYS5wdXJwb3NlJiZhLnZlbmRvcil7dmFyIG49eHQoYS52ZW5kb3IuY29uc2VudHMsZD09PXZvaWQgMD8iNzU1IjpkKTtsPW4mJmI9PT0iMSImJmEucHVycG9zZU9uZVRyZWF0bWVudCYmYS5wdWJsaXNoZXJDQz09PSJDSCI/ITA6biYmeHQoYS5wdXJwb3NlLmNvbnNlbnRzLGIpfWVsc2UgbD0hMDtlbHNlIGw9aD09PTE/YS5wdXJwb3NlJiZhLnZlbmRvcj94dChhLnB1cnBvc2UubGVnaXRpbWF0ZUludGVyZXN0cywKYikmJnh0KGEudmVuZG9yLmxlZ2l0aW1hdGVJbnRlcmVzdHMsZD09PXZvaWQgMD8iNzU1IjpkKTohMDohMDtyZXR1cm4gbH0seHQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hKCFhfHwhYVtiXSl9LHd0PWZ1bmN0aW9uKGEsYixjLGQpe2N8fChjPWZ1bmN0aW9uKCl7fSk7dmFyIGU9YS5LO2lmKHR5cGVvZiBlLl9fdGNmYXBpPT09ImZ1bmN0aW9uIil7dmFyIGY9ZS5fX3RjZmFwaTtmKGIsMixjLGQpfWVsc2UgaWYodXQoYSkpe0F0KGEpO3ZhciBnPSsrYS55YTthLmphW2ddPWM7aWYoYS5IKXt2YXIgaD17fTthLkgucG9zdE1lc3NhZ2UoKGguX190Y2ZhcGlDYWxsPXtjb21tYW5kOmIsdmVyc2lvbjoyLGNhbGxJZDpnLHBhcmFtZXRlcjpkfSxoKSwiKiIpfX1lbHNlIGMoe30sITEpfSx1dD1mdW5jdGlvbihhKXtpZihhLkgpcmV0dXJuIGEuSDthLkg9TnAoYS5LLCJfX3RjZmFwaUxvY2F0b3IiKTtyZXR1cm4gYS5IfSxBdD1mdW5jdGlvbihhKXtpZighYS5aKXt2YXIgYj1mdW5jdGlvbihjKXtpZihjLnNvdXJjZT09PQphLkgpdHJ5e3ZhciBkO2Q9KHZmKGMuZGF0YSk/SlNPTi5wYXJzZShjLmRhdGEpOmMuZGF0YSkuX190Y2ZhcGlSZXR1cm47YS5qYVtkLmNhbGxJZF0oZC5yZXR1cm5WYWx1ZSxkLnN1Y2Nlc3MpfWNhdGNoKGUpe319O2EuWj1iO210KGEuSywibWVzc2FnZSIsYil9fSxCdD1mdW5jdGlvbihhKXtpZihhLmdkcHJBcHBsaWVzPT09ITEpcmV0dXJuITA7YS5pbnRlcm5hbEVycm9yU3RhdGU9PT12b2lkIDAmJihhLmludGVybmFsRXJyb3JTdGF0ZT1zdChhKSk7cmV0dXJuIGEuY21wU3RhdHVzPT09ImVycm9yInx8YS5pbnRlcm5hbEVycm9yU3RhdGUhPT0wP2EuaW50ZXJuYWxCbG9ja09uRXJyb3JzPyhwdCh7ZTpTdHJpbmcoYS5pbnRlcm5hbEVycm9yU3RhdGUpfSksITEpOiEwOmEuY21wU3RhdHVzIT09ImxvYWRlZCJ8fGEuZXZlbnRTdGF0dXMhPT0idGNsb2FkZWQiJiZhLmV2ZW50U3RhdHVzIT09InVzZXJhY3Rpb25jb21wbGV0ZSI/ITE6ITB9O3ZhciBDdD17MTowLDM6MCw0OjAsNzozLDk6MywxMDozfTtmdW5jdGlvbiBEdCgpe3JldHVybiBraigidGNmIixmdW5jdGlvbigpe3JldHVybnt9fSl9dmFyIEV0PWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyB0dChBLHt0aW1lb3V0TXM6LTF9KX07CmZ1bmN0aW9uIEZ0KCl7dmFyIGE9RHQoKSxiPUV0KCk7dnQoYikmJiFHdCgpJiYhSHQoKSYmUCgxMjQpO2lmKCFhLmFjdGl2ZSYmdnQoYikpe0d0KCkmJihhLmFjdGl2ZT0hMCxhLnB1cnBvc2VzPXt9LGEuY21wSWQ9MCxhLnRjZlBvbGljeVZlcnNpb249MCx0bCgpLmFjdGl2ZT0hMCxhLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIik7Y3AoKTt0cnl7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGMpe2lmKGMuaW50ZXJuYWxFcnJvclN0YXRlIT09MClJdChhKSxkcChbRi5ELmthLEYuRC5YYSxGLkQubWFdKSx0bCgpLmFjdGl2ZT0hMDtlbHNlIGlmKGEuZ2RwckFwcGxpZXM9Yy5nZHByQXBwbGllcyxhLmNtcElkPWMuY21wSWQsYS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9Yy5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGUsSHQoKSYmKGEuYWN0aXZlPSEwKSwhSnQoYyl8fEd0KCl8fEh0KCkpe2EudGNmUG9saWN5VmVyc2lvbj1jLnRjZlBvbGljeVZlcnNpb247dmFyIGQ7aWYoYy5nZHByQXBwbGllcz09PQohMSl7dmFyIGU9e30sZjtmb3IoZiBpbiBDdClDdC5oYXNPd25Qcm9wZXJ0eShmKSYmKGVbZl09ITApO2Q9ZTtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoYyl9ZWxzZSBpZihKdChjKSl7dmFyIGc9e30saDtmb3IoaCBpbiBDdClpZihDdC5oYXNPd25Qcm9wZXJ0eShoKSlpZihoPT09IjEiKXt2YXIgbCxuPWMscD17VXI6ITB9O3A9cD09PXZvaWQgMD97fTpwO2w9QnQobik/bi5nZHByQXBwbGllcz09PSExPyEwOm4udGNTdHJpbmc9PT0idGN1bmF2YWlsYWJsZSI/IXAuaWRwY0FwcGxpZXM6KHAuaWRwY0FwcGxpZXN8fG4uZ2RwckFwcGxpZXMhPT12b2lkIDB8fHAuVXIpJiYocC5pZHBjQXBwbGllc3x8dmYobi50Y1N0cmluZykmJm4udGNTdHJpbmcubGVuZ3RoKT96dChuLCIxIiwwKTohMDohMTtnWyIxIl09bH1lbHNlIGdbaF09enQoYyxoLEN0W2hdKTtkPWd9aWYoZCl7YS50Y1N0cmluZz1jLnRjU3RyaW5nfHwidGNlbXB0eSI7YS5wdXJwb3Nlcz1kO3ZhciBxPXt9LHI9KHFbRi5ELmthXT0KYS5wdXJwb3Nlc1siMSJdPyJncmFudGVkIjoiZGVuaWVkIixxKTthLmdkcHJBcHBsaWVzIT09ITA/KGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pLHRsKCkuYWN0aXZlPSEwKToocltGLkQuWGFdPWEucHVycG9zZXNbIjMiXSYmYS5wdXJwb3Nlc1siNCJdPyJncmFudGVkIjoiZGVuaWVkIix0eXBlb2YgYS50Y2ZQb2xpY3lWZXJzaW9uPT09Im51bWJlciImJmEudGNmUG9saWN5VmVyc2lvbj49ND9yW0YuRC5tYV09YS5wdXJwb3Nlc1siMSJdJiZhLnB1cnBvc2VzWyI3Il0/ImdyYW50ZWQiOiJkZW5pZWQiOmRwKFtGLkQubWFdKSxWbyhyLHtldmVudElkOjB9LHtnZHByQXBwbGllczphP2EuZ2RwckFwcGxpZXM6dm9pZCAwLHRjU3RyaW5nOkt0KCl8fCIifSkpfX1lbHNlIGRwKFtGLkQua2EsRi5ELlhhLEYuRC5tYV0pfSl9Y2F0Y2goYyl7SXQoYSksZHAoW0YuRC5rYSxGLkQuWGEsRi5ELm1hXSksdGwoKS5hY3RpdmU9ITB9fX0KZnVuY3Rpb24gSXQoYSl7YS50eXBlPSJlIjthLnRjU3RyaW5nPSJ0Y3VuYXZhaWxhYmxlIn1mdW5jdGlvbiBKdChhKXtyZXR1cm4gYS5ldmVudFN0YXR1cz09PSJ0Y2xvYWRlZCJ8fGEuZXZlbnRTdGF0dXM9PT0idXNlcmFjdGlvbmNvbXBsZXRlInx8YS5ldmVudFN0YXR1cz09PSJjbXB1aXNob3duIn1mdW5jdGlvbiBHdCgpe3JldHVybiBBLmd0YWdfZW5hYmxlX3RjZl9zdXBwb3J0PT09ITB9ZnVuY3Rpb24gSHQoKXtyZXR1cm4gRHQoKS5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU9PT0hMH1mdW5jdGlvbiBLdCgpe3ZhciBhPUR0KCk7aWYoYS5hY3RpdmUpcmV0dXJuIGEudGNTdHJpbmd9ZnVuY3Rpb24gTHQoKXt2YXIgYT1EdCgpO2lmKGEuYWN0aXZlJiZhLmdkcHJBcHBsaWVzIT09dm9pZCAwKXJldHVybiBhLmdkcHJBcHBsaWVzPyIxIjoiMCJ9CmZ1bmN0aW9uIE10KGEpe2lmKCFDdC5oYXNPd25Qcm9wZXJ0eShTdHJpbmcoYSkpKXJldHVybiEwO3ZhciBiPUR0KCk7cmV0dXJuIGIuYWN0aXZlJiZiLnB1cnBvc2VzPyEhYi5wdXJwb3Nlc1tTdHJpbmcoYSldOiEwfTt2YXIgTnQ9W0YuRC5rYSxGLkQucmEsRi5ELm1hLEYuRC5YYV0sT3Q9e30sUHQ9KE90W0YuRC5rYV09MSxPdFtGLkQucmFdPTIsT3QpO2Z1bmN0aW9uIFF0KGEpe2lmKGE9PT12b2lkIDApcmV0dXJuIDA7c3dpdGNoKE8oYSxGLkQuUmMpKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICExOnJldHVybiAzO2RlZmF1bHQ6cmV0dXJuIDJ9fWZ1bmN0aW9uIFJ0KCl7cmV0dXJuKE0oMTgzKT9MZigxNikuc3BsaXQoIn4iKTpMZigxNykuc3BsaXQoIn4iKSkuaW5kZXhPZih6bSgpKSE9PS0xJiZIYy5nbG9iYWxQcml2YWN5Q29udHJvbD09PSEwfWZ1bmN0aW9uIFN0KGEpe2lmKFJ0KCkpcmV0dXJuITE7dmFyIGI9UXQoYSk7aWYoYj09PTMpcmV0dXJuITE7c3dpdGNoKENsKEYuRC5YYSkpe2Nhc2UgMTpjYXNlIDM6cmV0dXJuITA7Y2FzZSAyOnJldHVybiExO2Nhc2UgNDpyZXR1cm4gYj09PTI7Y2FzZSAwOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fQpmdW5jdGlvbiBUdCgpe3JldHVybiBFbCgpfHwhQmwoRi5ELmthKXx8IUJsKEYuRC5yYSl9ZnVuY3Rpb24gVXQoKXt2YXIgYT17fSxiO2ZvcihiIGluIFB0KVB0Lmhhc093blByb3BlcnR5KGIpJiYoYVtQdFtiXV09Q2woYikpO3JldHVybiJHMSIreWYoYVsxXXx8MCkreWYoYVsyXXx8MCl9dmFyIFZ0PXt9LFd0PShWdFtGLkQua2FdPTAsVnRbRi5ELnJhXT0xLFZ0W0YuRC5tYV09MixWdFtGLkQuWGFdPTMsVnQpO2Z1bmN0aW9uIFh0KGEpe3N3aXRjaChhKXtjYXNlIHZvaWQgMDpyZXR1cm4gMTtjYXNlICEwOnJldHVybiAzO2Nhc2UgITE6cmV0dXJuIDI7ZGVmYXVsdDpyZXR1cm4gMH19CmZ1bmN0aW9uIFl0KGEpe2Zvcih2YXIgYj0iMSIsYz0wO2M8TnQubGVuZ3RoO2MrKyl7dmFyIGQ9YixlLGY9TnRbY10sZz1BbC5kZWxlZ2F0ZWRDb25zZW50VHlwZXNbZl07ZT1nPT09dm9pZCAwPzA6V3QuaGFzT3duUHJvcGVydHkoZyk/MTJ8V3RbZ106ODt2YXIgaD10bCgpO2guYWNjZXNzZWRBbnk9ITA7dmFyIGw9aC5lbnRyaWVzW2ZdfHx7fTtlPWU8PDJ8WHQobC5pbXBsaWNpdCk7Yj1kKygiIisiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbZV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW1h0KGwuZGVjbGFyZSk8PDR8WHQobC5kZWZhdWx0KTw8MnxYdChsLnVwZGF0ZSldKX12YXIgbj1iLHA9KFJ0KCk/MTowKTw8MyxxPShFbCgpPzE6MCk8PDIscj1RdChhKTtiPW4rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW3B8CnF8cl07cmV0dXJuIGIrPSIiKyIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fIltBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9zdG9yYWdlPDw0fEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFuYWx5dGljc19zdG9yYWdlPDwyfEFsLmNvbnRhaW5lclNjb3BlZERlZmF1bHRzLmFkX3VzZXJfZGF0YV0rIjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iWyhBbC51c2VkQ29udGFpbmVyU2NvcGVkRGVmYXVsdHM/MTowKTw8MnxBbC5jb250YWluZXJTY29wZWREZWZhdWx0cy5hZF9wZXJzb25hbGl6YXRpb25dfWZ1bmN0aW9uIFp0KCl7cmV0dXJuIEJsKEYuRC5tYSk/ImEiOiItIn1mdW5jdGlvbiAkdCgpe3JldHVybiBCbSgpfHwoR3QoKXx8SHQoKSkmJkx0KCk9PT0iMSI/IjEiOiIwIn0KZnVuY3Rpb24gYXUoKXtyZXR1cm4oQm0oKT8hMDohKCFHdCgpJiYhSHQoKSkmJkx0KCk9PT0iMSIpfHwhQmwoRi5ELm1hKX0KZnVuY3Rpb24gYnUoKXt2YXIgYT0iMCIsYj0iMCIsYzt2YXIgZD1EdCgpO2M9ZC5hY3RpdmU/ZC5jbXBJZDp2b2lkIDA7dHlwZW9mIGM9PT0ibnVtYmVyIiYmYz49MCYmYzw9NDA5NSYmKGE9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2M+PjYmNjNdLGI9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2MmNjNdKTt2YXIgZT0iMCIsZjt2YXIgZz1EdCgpO2Y9Zy5hY3RpdmU/Zy50Y2ZQb2xpY3lWZXJzaW9uOnZvaWQgMDt0eXBlb2YgZj09PSJudW1iZXIiJiZmPj0wJiZmPD02MyYmKGU9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8iW2ZdKTt2YXIgaD0wO0JtKCkmJihofD0xKTtMdCgpPT09IjEiJiYoaHw9Mik7R3QoKSYmKGh8PTQpO3ZhciBsO3ZhciBuPUR0KCk7bD1uLmVuYWJsZUFkdmVydGlzZXJDb25zZW50TW9kZSE9PQp2b2lkIDA/bi5lbmFibGVBZHZlcnRpc2VyQ29uc2VudE1vZGU/IjEiOiIwIjp2b2lkIDA7bD09PSIxIiYmKGh8PTgpO3RsKCkud2FpdFBlcmlvZFRpbWVkT3V0JiYoaHw9MTYpO3JldHVybiIxIithK2IrZSsiMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotXyJbaF19O3ZhciBjdT17VUE6MSxBVzoyLERDOjMsRzo0LEdGOjUsR1Q6MTIsR1RNOjE0LEhBOjYsTUM6N307CmZ1bmN0aW9uIGR1KGEpe2E9YT09PXZvaWQgMD97fTphO3ZhciBiPUUoNSkuc3BsaXQoIi0iKVswXS50b1VwcGVyQ2FzZSgpLGMsZD17Y3RpZDpFKDUpLERvOkpmKDE1KSxJbzpFKDE0KSxMczpJZig3KT8yOjEsRHQ6YS5wZixjYW5vbmljYWxJZDpFKDYpLG50OihjPUFrKCkpPT1udWxsP3ZvaWQgMDpjLmNhbm9uaWNhbENvbnRhaW5lcklkLEV0OmEuVGc9PT12b2lkIDA/dm9pZCAwOmEuVGc/MTA6MTJ9O2QuY2Fub25pY2FsSWQhPT1hLm1jJiYoZC5tYz1hLm1jKTt2YXIgZT14aygpO2QuVXM9ZT9lLmNhbm9uaWNhbENvbnRhaW5lcklkOnZvaWQgMDtJZig0NSk/KGQuaGk9Y3VbYl0sZC5oaXx8KGQuaGk9MCkpOmQuaGk9RGo/MTM6MTA7SWYoNDcpPyhkLmJrPTAsZC5xcj0yKTpJZig1MCk/ZC5iaz0xOmQuYms9Mzt2YXIgZj1hLGc9ezY6ITF9O0pmKDU0KT09PTI/Z1s3XT0hMDpKZig1NCk9PT0xJiYoZ1syXT0hMCk7aWYoS2Mpe3ZhciBoPUxqKFJqKEtjKSwiaG9zdCIpO2gmJihnWzhdPQpoLm1hdGNoKC9eKHd3d1wuKT9nb29nbGV0YWdtYW5hZ2VyXC5jb20kLyk9PT1udWxsKX12YXIgbDtnWzldPShsPWYuZWYpIT1udWxsP2w6ITE7dmFyIG49RmsoKSxwO2dbMTBdPShwPW49PW51bGw/dm9pZCAwOm4uZnJvbUNvbnRhaW5lckV4ZWN1dGlvbikhPW51bGw/cDohMTtkLnpyPWc7cmV0dXJuIENmKGQsYS5Qbil9Owp2YXIgZnU9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9bShldShhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWUsZj1SKGEsZSksZz1RKGEsSC5KLlllKTtNKDU4OSkmJmcmJihlPT09Ri5ELnphfHxlPT09Ri5ELlVhfHxlPT09Ri5ELlBlKSYmdHlwZW9mIGY9PT0ic3RyaW5nIiYmKGY9WnMoZikpO3ZhciBoPW9wKGUsZik7aCYmKCFnfHxlIT09Ri5ELkRkJiZlIT09Ri5ELktkJiZlIT09Ri5ELkVlJiZlIT09Ri5ELkJmfHwoaC52YWx1ZT0iMCIpLE0oNTA0KSYmKGU9PT1GLkQuTWQ/aC5rZXk9ImV2bmlkIjplPT09Ri5ELk5kJiYoaC5rZXk9ImV4Y2lkIikpLGJbaC5rZXldPWgudmFsdWUpfWIuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxUZzphLk0uaXNHdG1FdmVudCxlZjpRKGEsSC5KLkNjKX0pO1R0KCkmJihiLmdjcz1iLmdjc3x8VXQoKSk7Yi5nY2Q9Yi5nY2R8fFl0KGEuTSk7YXUoKSYmKGIuZG1hX2Nwcz1adCgpKTtiLmRtYT0kdCgpO3Z0KEV0KCkpJiYKKGIudGNmZD1idSgpKTt2YXIgbD1DcChhKTtsJiYoYi50YWdfZXhwPWwpO2lmKFEoYSxILkouQmspKXtiLnRmdD1TdHJpbmcoTmIoKSk7dmFyIG49cGQoKTtuIT09dm9pZCAwJiYoYi50ZmQ9U3RyaW5nKE1hdGgucm91bmQobikpKX1iLmFwdmU9IjEiO2IuYXB2Zj1uZCgpPyJmIjoibmYiO2ZvLkhbY28uaWEuY2JdIT09Ym8uTWEuVWV8fGZvLktbY28uaWEuY2JdLmlzQ29uc2VudEdyYW50ZWQoKXx8KGIubGltaXRlZF9hZHM9IjEiKTt2YXIgcD1RKGEsSC5KLlhnKTtNKDQ3NCkmJnAhPW51bGwmJnAhPT0iIiYmKGIuX2dzaWQ9cCk7aHQoYSxiLGZ1bmN0aW9uKHEscil7YltxXT1lbmNvZGVVUklDb21wb25lbnQocil9KTtyZXR1cm4gYn07dmFyIGd1PWZ1bmN0aW9uKGEsYixjLGQsZSl7dGhpcy5lbmRwb2ludD1hO3RoaXMuZmE9Yzt0aGlzLmphPWQ7dGhpcy5wYXJhbWV0ZXJFbmNvZGluZz1lO3RoaXMuWj1iLnNsaWNlKCl9O2d1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKCl7cmV0dXJuIFhvKHRoaXMuWil9O2d1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtndS5wcm90b3R5cGUuUj1mdW5jdGlvbigpe3ZhciBhPU1tW3RoaXMuZW5kcG9pbnRdKHZvaWQgMCk7cmV0dXJuIFNiKGEsImh0dHBzOi8vIik/YS5zdWJzdHJpbmcoOCk6U2IoYSwiaHR0cDovLyIpP2Euc3Vic3RyaW5nKDcpOmF9O3ZhciBodT1mdW5jdGlvbihhLGIpe3RoaXMubWV0aG9kTmFtZT1hO3RoaXMuUj1ifTtodS5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuaXNTdXBwb3J0ZWQoKSlpZigoYz09bnVsbD92b2lkIDA6Yy5ib2R5KT09PXZvaWQgMHx8dGhpcy5IKCkpdHJ5e3RoaXMuSyhhLGIsYyl9Y2F0Y2goZCl7YS5yZChkKX1lbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgZG9lcyBub3Qgc3VwcG9ydCBhIHJlcXVlc3QgYm9keS4iKTtlbHNlIGEucmQoIlJlcXVlc3QgbWV0aG9kICIrdGhpcy5tZXRob2ROYW1lKyIgaXMgbm90IHN1cHBvcnRlZC4iKX07dmFyIGl1PWZ1bmN0aW9uKCl7aHUuY2FsbCh0aGlzLCJJbWFnZVBpeGVsIiwzKX07d2EoaXUsaHUpO2l1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiEwfTtpdS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiExfTsKaXUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe1pjKGIsZnVuY3Rpb24oKXthLmpmKCl9LGZ1bmN0aW9uKCl7YS5vbkZhaWx1cmUodm9pZCAwKX0sYz09bnVsbD92b2lkIDA6Yy5hZil9O3ZhciBqdT1mdW5jdGlvbigpe2h1LmNhbGwodGhpcywiU2VuZEJlYWNvbiIsMSl9O3dhKGp1LGh1KTtqdS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4ga2QoKX07anUucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07anUucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiLGMpe2pkKGIsYz09bnVsbD92b2lkIDA6Yy5ib2R5KT9hLmpmKCk6YS5yZCh2b2lkIDApfTt2YXIga3U9ZnVuY3Rpb24oKXtodS5jYWxsKHRoaXMsIkZldGNoIiwxKX07d2Eoa3UsaHUpO2t1LnByb3RvdHlwZS5pc1N1cHBvcnRlZD1mdW5jdGlvbigpe3JldHVybiB5YihBLmZldGNoKX07a3UucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4hMH07Cmt1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtBLmZldGNoKGIsYz09bnVsbD92b2lkIDA6Yy5HYikudGhlbihmdW5jdGlvbihkKXtpZihkLm9rKWEucGUoZCk7ZWxzZSBpZihkLnN0YXR1cz09PTApYS5qZigpO2Vsc2UgYS5vbkZhaWx1cmUoIkZldGNoIGZhaWxlZCB3aXRoIHN0YXR1cyBjb2RlICIrZC5zdGF0dXMrIi4iKX0pLmNhdGNoKGZ1bmN0aW9uKGQpe2EucmQoZCl9KX07dmFyIGx1PW5ldyBpdSxtdT1uZXcganUsbnU9bmV3IGt1O3ZhciBvdT1mdW5jdGlvbigpe307b3UucHJvdG90eXBlLks9ZnVuY3Rpb24oKXtyZXR1cm5bXX07CnZhciBwdT1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9bImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXTpiO2d1LmNhbGwodGhpcyxhLGIsMSwhMCwyKX07d2EocHUsZ3UpO3B1LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe2lmKHRoaXMuWi5sZW5ndGgpe3ZhciBiPVEoYSxILkouRGspO2lmKGIhPT12b2lkIDApcmV0dXJuIGJ9cmV0dXJuIGd1LnByb3RvdHlwZS5LLmNhbGwodGhpcyxhKX07cHUucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdShhKTthLnRhcmdldC5kZXN0aW5hdGlvbklkJiYoYy50aWQ9YS50YXJnZXQuZGVzdGluYXRpb25JZCk7Yi5tZXRob2QgaW5zdGFuY2VvZiBrdT9jLmZtdD0iOCI6Yi5tZXRob2QgaW5zdGFuY2VvZiBqdT9jLmZtdD0iNSI6Yi5tZXRob2QgaW5zdGFuY2VvZiBpdSYmKGMuZm10PSIzIik7cmV0dXJuIGN9O3B1LnByb3RvdHlwZS55YT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuTihhLGIpO3JldHVybiI/IitPYmplY3Qua2V5cyhjKS5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQrCiI9IitjW2RdfSkuam9pbigiJiIpfTtwdS5wcm90b3R5cGUuSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy55YShhLGIpLGU9e307aWYoYi5tZXRob2QgaW5zdGFuY2VvZiBrdSl7ZS5HYj1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGxkKTtpZih0aGlzLmVuZHBvaW50PT09NTh8fHRoaXMuZW5kcG9pbnQ9PT01NyllLkdiLm1ldGhvZD0iR0VUIjt0aGlzLmVuZHBvaW50IT09NDV8fHF1LksoYSl8fChlLkdiLmNyZWRlbnRpYWxzPSJvbWl0IixkKz0iJmdhcC51Y2ZiPTEiKX1jKGQsZSl9O3ZhciBxdT1uZXcgcHUoNDUpLHJ1PW5ldyBwdSg0NSxbXSksc3U9bmV3IHB1KDQ2LFtdKSx0dT1mdW5jdGlvbigpe3B1LmNhbGwodGhpcyw2OSl9O3dhKHR1LHB1KTt0dS5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oYSl7dmFyIGI9TSg0NzQpJiYoISFSKGEsIl9nc2lkIil8fCEhUShhLEguSi5YZykpLGM9UihhLEYuRC5IZCkhPT0iMSImJighIVIoYSwiZ2NsaWQiKXx8CiEhUihhLCJkY2xpZCIpfHwhIVIoYSwiZ2Nsc3JjIil8fCEhUihhLCJhdWlkIikpO3JldHVybiBifHxjfTt0dS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1KGEpLGQ9bHAoYSxjKXx8e307T2JqZWN0LmtleXMoZCkubGVuZ3RoPjAmJihiLm1ldGhvZCBpbnN0YW5jZW9mIGt1P2QuZm10PSI4IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGp1P2QuZm10PSI1IjpiLm1ldGhvZCBpbnN0YW5jZW9mIGl1JiYoZC5mbXQ9IjMiKSk7cmV0dXJuIGR9O3ZhciB1dT1uZXcgdHUsdnU9ZnVuY3Rpb24oKXtwdS5jYWxsKHRoaXMsNDUpfTt3YSh2dSxwdSk7dnUucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtyZXR1cm4gWGooKSsiL2cvZC9jY20vY29sbGVjdCJ9O3Z1LnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9cHUucHJvdG90eXBlLk4uY2FsbCh0aGlzLGEsYik7Y1siZ2FwLjFwZmIiXT0iMSI7cmV0dXJuIGN9O3ZhciB3dT1mdW5jdGlvbihhKXtwdS5jYWxsKHRoaXMsYSxbImFkX3N0b3JhZ2UiLAoiYWRfdXNlcl9kYXRhIl0pfTt3YSh3dSxwdSk7d3UucHJvdG90eXBlLk49ZnVuY3Rpb24oYSxiKXt2YXIgYz1wdS5wcm90b3R5cGUuTi5jYWxsKHRoaXMsYSxiKTtyZXR1cm4gaHAoYyl9O3ZhciB4dT1uZXcgd3UoNTgpLHl1PW5ldyB3dSg1NyksenU9ZnVuY3Rpb24oKXt9O3dhKHp1LG91KTt6dS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXt2YXIgYj1xdS5LKGEpLGM9Yj9xdTpzdSxkPVt7ZW5kcG9pbnQ6YyxtZXRob2Q6bmQoKT9udTptdX0se2VuZHBvaW50OmMsbWV0aG9kOmx1fV07Yj9NKDUxNykmJklmKDQ3KSYmZC5wdXNoKHtlbmRwb2ludDpuZXcgdnUsbWV0aG9kOm51fSk6TSg2MDApJiZkLnB1c2goe2VuZHBvaW50OnJ1LG1ldGhvZDpudX0pO3JldHVybiBkfTt6dS5wcm90b3R5cGUuSz1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPSEhUShhLEguSi52ZCksZD1SKGEsRi5ELlBkKT09PSIxIixlPVIoYSxGLkQuSGQpPT09IjEiLGY9cXUuSyhhKSxnPWMmJmQmJiFlJiZmO2lmKGcpe3ZhciBoPQpRYygpfHxPYygpP3h1Onl1O2IucHVzaChbe2VuZHBvaW50OmgsbWV0aG9kOm51fSx7ZW5kcG9pbnQ6aCxtZXRob2Q6bHV9XSl9ZiYmKGd8fFEoYSxILkouaGQpKSYmYi5wdXNoKFt7ZW5kcG9pbnQ6dXUsbWV0aG9kOm5kKCk/bnU6bHV9XSk7cmV0dXJuIGJ9O3ZhciBBdT1uZXcgenU7dmFyIFQ9e1c6e0prOjEsbmo6MixGazozLG1sOjQsR2s6NSx5ZDo2LGtsOjcsTXE6OCxxbjo5LEhrOjEwLElrOjExLEZoOjEyLERtOjEzLEFtOjE0LENtOjE1LHptOjE2LEJtOjE3LHltOjE4LFRvOjE5LHhxOjIwLHlxOjIxLGZqOjIyLHVuOjI0LE9tOjI1LFNrOjI2LFRrOjI3LFJrOjI4LFVrOjI5LHJqOjMwLE9rOjMxLFpvOjMyfX07VC5XW1QuVy5Ka109IkFMTE9XX0lOVEVSRVNUX0dST1VQUyI7VC5XW1QuVy5ual09IlNFUlZFUl9DT05UQUlORVJfVVJMIjtULldbVC5XLkZrXT0iQURTX0RBVEFfUkVEQUNUSU9OIjtULldbVC5XLm1sXT0iQ1VTVE9NRVJfTElGRVRJTUVfVkFMVUUiO1QuV1tULlcuR2tdPSJBTExPV19DVVNUT01fU0NSSVBUUyI7VC5XW1QuVy55ZF09IkFOWV9DT09LSUVfUEFSQU1TIjtULldbVC5XLmtsXT0iQ09PS0lFX0VYUElSRVMiO1QuV1tULlcuTXFdPSJMRUdBQ1lfRU5IQU5DRURfQ09OVkVSU0lPTl9KU19WQVJJQUJMRSI7VC5XW1QuVy5xbl09IlJFU1RSSUNURURfREFUQV9QUk9DRVNTSU5HIjsKVC5XW1QuVy5Ia109IkFMTE9XX0RJU1BMQVlfRkVBVFVSRVMiO1QuV1tULlcuSWtdPSJBTExPV19HT09HTEVfU0lHTkFMUyI7VC5XW1QuVy5GaF09IkdFTkVSQVRFRF9UUkFOU0FDVElPTl9JRCI7VC5XW1QuVy5EbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOS05PV04iO1QuV1tULlcuQW1dPSJGTE9PRExJR0hUX0NPVU5USU5HX01FVEhPRF9TVEFOREFSRCI7VC5XW1QuVy5DbV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1VOSVFVRSI7VC5XW1QuVy56bV09IkZMT09ETElHSFRfQ09VTlRJTkdfTUVUSE9EX1BFUl9TRVNTSU9OIjtULldbVC5XLkJtXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfVFJBTlNBQ1RJT05TIjtULldbVC5XLnltXT0iRkxPT0RMSUdIVF9DT1VOVElOR19NRVRIT0RfSVRFTVNfU09MRCI7VC5XW1QuVy5Ub109IkFEU19PR1RfVjFfVVNBR0UiO1QuV1tULlcueHFdPSJGT1JNX0lOVEVSQUNUSU9OX1BFUk1JU1NJT05fREVOSUVEIjsKVC5XW1QuVy55cV09IkZPUk1fU1VCTUlUX1BFUk1JU1NJT05fREVOSUVEIjtULldbVC5XLmZqXT0iTUlDUk9UQVNLX05PVF9TVVBQT1JURUQiO1QuV1tULlcudW5dPSJTRVRfRU5DUllQVEVEX0RBVEFfVE9fQ0FDSEUiO1QuV1tULlcuT21dPSJHRVRfRU5DUllQVEVEX0RBVEFfRlJPTV9DQUNIRSI7VC5XW1QuVy5Ta109IkNPTkZJR19ERVRFQ1RFRF9XSVRIX05PX1BBUkFNIjtULldbVC5XLlRrXT0iQ09ORklHX0RFVEVDVEVEX1dJVEhfUEFSQU0iO1QuV1tULlcuUmtdPSJDT05GSUdfQ09OU0VOVF9TRVRfQkVGT1JFIjtULldbVC5XLlVrXT0iQ09ORklHX1NFVF9VU0VEX0JFRk9SRSI7VC5XW1QuVy5yal09IlNIQURPV19ET01fQVVUT19QSUkiO1QuV1tULlcuT2tdPSJDQ0RfVVNFUl9EQVRBX1dFQl9PTl9DT05GSUciO1QuV1tULlcuWm9dPSJCTEVOREVEX1VTRVJfREFUQSI7dmFyIEJ1PXt9LEN1PShCdVtGLkQudWldPVQuVy5KayxCdVtGLkQuZGRdPVQuVy5uaixCdVtGLkQueWNdPVQuVy5uaixCdVtGLkQubWJdPVQuVy5GayxCdVtGLkQuR2VdPVQuVy5tbCxCdVtGLkQucmldPVQuVy5HayxCdVtGLkQuSmRdPVQuVy55ZCxCdVtGLkQubmJdPVQuVy55ZCxCdVtGLkQuTGJdPVQuVy55ZCxCdVtGLkQuSWRdPVQuVy55ZCxCdVtGLkQudmNdPVQuVy55ZCxCdVtGLkQuVGJdPVQuVy55ZCxCdVtGLkQuQ2JdPVQuVy5rbCxCdVtGLkQuV2JdPVQuVy5xbixCdVtGLkQuaGhdPVQuVy5IayxCdVtGLkQuU2NdPVQuVy5JayxCdSksRHU9e30sRXU9KER1LnVua25vd249VC5XLkRtLER1LnN0YW5kYXJkPVQuVy5BbSxEdS51bmlxdWU9VC5XLkNtLER1LnBlcl9zZXNzaW9uPVQuVy56bSxEdS50cmFuc2FjdGlvbnM9VC5XLkJtLER1Lml0ZW1zX3NvbGQ9VC5XLnltLER1KTt2YXIgRnU9ZnVuY3Rpb24oYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO3NiKCJHVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTCIsYik7YyYmKGEuSFtiXT0hMCl9LHZiPW5ldyBmdW5jdGlvbigpe3RoaXMuSD1bXX07ZnVuY3Rpb24gR3UoYSl7RnUodmIsYSwhMSl9ZnVuY3Rpb24gSHUoYSxiKXt2YXIgYz1iPT09dm9pZCAwPyExOmIsZD12YjtjPWM9PT12b2lkIDA/ITE6Yztmb3IodmFyIGU9T2JqZWN0LmtleXMoYSksZj1tKE9iamVjdC5rZXlzKEN1KSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5pbmNsdWRlcyhoKSYmRnUoZCxDdVtoXSxjKX19O2Z1bmN0aW9uIEl1KGEsYil7YT9hLnRoZW4oYik6Yih2b2lkIDApfWZ1bmN0aW9uIEp1KGEpe3JldHVybiBQcm9taXNlLmFsbFNldHRsZWQoYSkudGhlbihmdW5jdGlvbihiKXtyZXR1cm4gYi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIGMuc3RhdHVzPT09ImZ1bGZpbGxlZCJ9KS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIGMudmFsdWV9KX0pfWZ1bmN0aW9uIEt1KCl7dmFyIGEsYjtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2E9YztiPWR9KSxyZXNvbHZlOmEscmVqZWN0OmJ9fTtmdW5jdGlvbiBMdShhLGIsYyxkLGUsZil7dmFyIGc9Yy5zbGljZSgpLGg7ZD09bnVsbHx8KGg9ZC51dik9PW51bGx8fGguY2FsbChkLGEsYixjLGUpO3ZhciBsPUt1KCksbj1sLnByb21pc2UscD1sLnJlc29sdmUscT1bXSxyPWZ1bmN0aW9uKCl7cChxKTt2YXIgdTtkPT1udWxsfHwodT1kLlJzKT09bnVsbHx8dS5jYWxsKGQsYSxiLGMsZSxxKX0sdD1mdW5jdGlvbigpe3ZhciB1PWcuc2hpZnQoKTt1P3UubWV0aG9kLmlzU3VwcG9ydGVkKCk/TXUoYSxiLHUuZW5kcG9pbnQsZCxxLHUubWV0aG9kLGUsZix0LHIpOnQoKTpyKCl9O3QoKTtyZXR1cm4gbn0KZnVuY3Rpb24gTXUoYSxiLGMsZCxlLGYsZyxoLGwsbil7dmFyIHA9Yy5SKGEpLHE9e3RrOmIsZW5kcG9pbnQ6Yyxpc1ByaW1hcnk6ZyxzYjp2b2lkIDAscGs6ZixqdDp7fX0scj0hMSx0PWZ1bmN0aW9uKHosQyl7aWYocilQKDE4Nyk7ZWxzZSBpZihyPSEwLCF1KXt2YXIgRD1DfHx7fSxJPUQuYm9keSxHPUQuR2IsTj1ELmFmO0M9T2JqZWN0LmZyZWV6ZShuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LEk/e2JvZHk6SX06e30sRz97R2I6R306e30sTj97YWY6Tn06e30pKTtpZihJJiYhZi5IKCkpeCgpLGwoKTtlbHNle3ZhciBTPU51KHopLFc9cFswXT09PSIvIj8iIitwK1M6Imh0dHBzOi8vIitwK1M7cS5zYj1XO3EuanQ9Qzt2YXIgZWE7ZD09bnVsbHx8KGVhPWQuU3MpPT1udWxsfHxlYS5jYWxsKGQsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHEpKTt2YXIgamE9e2Rlc3RpbmF0aW9uSWQ6YS50YXJnZXQuZGVzdGluYXRpb25JZCxlbmRwb2ludDpjLmVuZHBvaW50LApldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9O2YuUj09PXZvaWQgMHx8Yy5mYSE9PTImJihjLmZhIT09MXx8ZS5sZW5ndGgpfHxrbi5yZWdpc3RlcihqYSxmLlIsVyk7dmFyIGZhPWZ1bmN0aW9uKGRhLG1hKXt4KCk7aWYocS5zdGF0dXMhPT12b2lkIDApcmV0dXJuIFAoMTkyKSwhMTtxLnN0YXR1cz1kYTtlLnB1c2gocSk7dmFyIFBhO2Q9PW51bGx8fChQYT1kLnVvKT09bnVsbHx8UGEuY2FsbChkLGEsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxxKSxtYSk7cmV0dXJuITB9LHNhPXtGbzpqYSxyZDpmdW5jdGlvbigpe2ZhKDIpJiZsKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2ZhKDMpJiZsKCl9LHBlOmZ1bmN0aW9uKGRhKXtmYShkYS5zdGF0dXM9PT0wPzE6ZGEub2s/MDozLGRhKSYmbigpfSxqZjpmdW5jdGlvbigpe2ZhKDEpJiZuKCl9fTtPdShjLGEsVyxTLEkpO2Yuc2VuZFJlcXVlc3Qoc2EsVyxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LAp7fSxJJiZ7Ym9keTpJfSxHJiZ7R2I6R30sTiYme2FmOk59KSl9fX0sdT0hMSx2LHg9ZnVuY3Rpb24oKXt2IT09dm9pZCAwJiYoQS5jbGVhclRpbWVvdXQodiksdj12b2lkIDApfTtNKDU3NCkmJih2PUEuc2V0VGltZW91dChmdW5jdGlvbigpe3Y9dm9pZCAwO3U9ITA7aWYocS5zdGF0dXM9PT12b2lkIDApe3Euc3RhdHVzPTQ7cS5zYj09PXZvaWQgMCYmKHEuc2I9IltmYWlsZWQgdG8gYnVpbGRdICIrcCk7ZS5wdXNoKHEpO3ZhciB6O2Q9PW51bGx8fCh6PWQudW8pPT1udWxsfHx6LmNhbGwoZCxhLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30scSksdm9pZCAwKTtsKCl9fSw1RTMpKTt2YXIgeT17SWM6cCxtZXRob2Q6Zix5djplLGlzUHJpbWFyeTpnLEN0Omh9O3RyeXtjLkgoYSx5LHQpfWNhdGNoKHope3goKSxQKDE4OCksbCgpfX0KZnVuY3Rpb24gT3UoYSxiLGMsZCxlKXtpZihhLmphKXt2YXIgZj1iLnRhcmdldC5kZXN0aW5hdGlvbklkLGc9YS5lbmRwb2ludDtpZihnPT09NDV8fGc9PT00Nnx8Zz09PTY5fHxnPT09NTh8fGc9PT01Nyl7dmFyIGg9L1s/Jl10aWRzPShbXiZdKykvLmV4ZWMoZCk7Zj1oP2RlY29kZVVSSUNvbXBvbmVudChoWzFdKS5zcGxpdCgifiIpOltmXX1NbCh7dGFyZ2V0SWQ6ZixyZXF1ZXN0Om5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30se3VybDpjLHBhcmFtZXRlckVuY29kaW5nOmEucGFyYW1ldGVyRW5jb2RpbmcsZW5kcG9pbnQ6YS5lbmRwb2ludH0sZT97cG9zdEJvZHk6ZX06e30pLHFiOntldmVudElkOmIuTS5ldmVudElkLHByaW9yaXR5SWQ6Yi5NLnByaW9yaXR5SWR9LEZqOntldmVudElkOlEoYixILkoudWYpLHByaW9yaXR5SWQ6UShiLEguSi52Zil9fSl9fQpmdW5jdGlvbiBOdShhKXtyZXR1cm4gYSYmYSE9PSI/Ij9hWzBdIT09Ij8iPyI/Ii5jb25jYXQoYSk6YToiIn07ZnVuY3Rpb24gUHUoYSxiLGMsZCxlKXt2YXIgZjtlPT1udWxsfHwoZj1lLnZ2KT09bnVsbHx8Zi5jYWxsKGUsYSxiKTtpZighYy5sZW5ndGgpe3ZhciBnO2U9PW51bGx8fChnPWUuVHMpPT1udWxsfHxnLmNhbGwoZSxhLGIsW10pO3JldHVybiBQcm9taXNlLnJlc29sdmUoW10pfXZhciBoPVtdLGw9e3RrOmIsbWs6YyxqazpkfTtoLnB1c2goTHUoYSxiLGMsZSwhMCxsKSk7Zm9yKHZhciBuPW0oZCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpaC5wdXNoKEx1KGEsYixwLnZhbHVlLGUsITEsbCkpO3JldHVybiBKdShoKS50aGVuKGZ1bmN0aW9uKHEpe2Zvcih2YXIgcj1bXSx0PW0ocSksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpci5wdXNoLmFwcGx5KHIsdyh1LnZhbHVlKSk7dmFyIHY7ZT09bnVsbHx8KHY9ZS5Ucyk9PW51bGx8fHYuY2FsbChlLGEsYixyKTtyZXR1cm4gcn0pfTtmdW5jdGlvbiBRdShhLGIpe3ZhciBjPU9hLmFwcGx5KDIsYXJndW1lbnRzKSxkO2I9PW51bGx8fChkPWIud3YpPT1udWxsfHxkLmNhbGwoYixhLGMpO2Zvcih2YXIgZT1bXSxmPW0oYyksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpZS5wdXNoKFJ1KGEsZy52YWx1ZSkpO2Zvcih2YXIgaD1bXSxsPW0oZSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aC5wdXNoKFB1KGEscC50ayxwLm1rLHAuamssYikpfUp1KGgpLnRoZW4oZnVuY3Rpb24ocSl7Zm9yKHZhciByPVtdLHQ9bShxKSx1PXQubmV4dCgpOyF1LmRvbmU7dT10Lm5leHQoKSlyLnB1c2guYXBwbHkocix3KHUudmFsdWUpKTt2YXIgdjtiPT1udWxsfHwodj1iLlFzKT09bnVsbHx8di5jYWxsKGIsYSxjLHIpfSl9CmZ1bmN0aW9uIFJ1KGEsYil7dmFyIGM9ZnVuY3Rpb24oZil7cmV0dXJuIGYubWV0aG9kLmlzU3VwcG9ydGVkKCkmJmYuZW5kcG9pbnQuaXNTdXBwb3J0ZWQoYSkmJmYuZW5kcG9pbnQuSyhhKX0sZD0oYi5IKGEpfHxbXSkuZmlsdGVyKGMpLGU9W107ZC5sZW5ndGgmJihlPShiLksoYSl8fFtdKS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGYuZmlsdGVyKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmLmxlbmd0aD4wfSkpO3JldHVybnt0azpiLG1rOmQsams6ZX19Owp2YXIgU3U9ZnVuY3Rpb24oYSxiKXtpZihNKDUxNykmJklmKDQ3KSYmYT09PTQ1KXJldHVybiBYaigpKyIvZy9kL2NjbS9jb2xsZWN0PyIrYi5zcGxpdCgiPyIpWzFdKyImZ2FwLjFwZmI9MSJ9LFd1PWZ1bmN0aW9uKCl7dmFyIGE9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGEubGVuZ3RoKXtmb3IodmFyIGI9e30sYz1tKGEpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlLGY9VHUoZS5rZSwiYXB2YyIpLGc9VHUoZS5rZSwidGZ0IiksaD1UdShlLmtlLCJ0ZmQiKSxsPVR1KGUua2UsInRpZCIpLG49Tm0oZS5lbmRwb2ludCxlLmtlKSxwPWJbbl09YltuXXx8e3hrOltdLFpoOltdfTtwLlpoLnB1c2goZSk7bD8ocC54ay5wdXNoKGwpLHAudWR8fChwLnVkPWwpKTpwLnhrLnB1c2goIiIpO2Y9PT0iMSImJihwLlFuPSEwKTtpZihnfHxoKXAuTm49ITB9YS5sZW5ndGg9MDtmb3IodmFyIHE9bShPYmplY3Qua2V5cyhiKSkscj1xLm5leHQoKSx0PXt9OyFyLmRvbmU7dD0Ke3lrOnZvaWQgMH0scj1xLm5leHQoKSl7dmFyIHU9ci52YWx1ZSx2PWJbdV07dC55az12LnhrO3ZhciB4PXQueWsuZmlsdGVyKGZ1bmN0aW9uKEQpe3JldHVybiBmdW5jdGlvbihJLEcpe3JldHVybiBELnlrLmluZGV4T2YoSSk9PT1HfX0odCkpLmZpbHRlcihmdW5jdGlvbihEKXtyZXR1cm4hIUR9KTtpZihNKDQyNykpe3ZhciB5PVV1KHYseCk7UXUoeSx2b2lkIDAsQXUpfWVsc2V7dmFyIHo9dSsiJmFwdmM9Iisodi5Rbj8iMSI6IjAiKTt4Lmxlbmd0aCYmKHorPSImdGlkcz0iK3guam9pbigifiIpKTt2LnVkJiYoeis9IiZ0aWQ9Iit2LnVkKTtpZih2Lk5uKXt6Kz0iJnRmdD0iK1N0cmluZyhOYigpKTt2YXIgQz1wZCgpO0MhPT12b2lkIDAmJih6Kz0iJnRmZD0iK1N0cmluZyhNYXRoLnJvdW5kKEMpKSl9VnUodi5aaFswXS5ldmVudCx6LHYuWmhbMF0uZW5kcG9pbnQseC5sZW5ndGg/eDpbIiJdKX19fX0sVHU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hW2JdO2lmKGMhPT12b2lkIDApcmV0dXJuIGRlbGV0ZSBhW2JdLApjfSxWdT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT17ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmMsZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxmPWZ1bmN0aW9uKGwsbil7dmFyIHA9YitYdShsKTtUbChwLGEsYyxkKTtyZXR1cm4gbihwKX07aWYobmQoKSl7dmFyIGc9ZnVuY3Rpb24oKXt9LGg9U3UoYyxiKTtoIT09dm9pZCAwJiYoZz1mdW5jdGlvbigpe1luKGUsaCtYdSg4KSx2b2lkIDAse1FnOiEwfSl9KTtmKDgsZnVuY3Rpb24obCl7WW4oZSxsLHZvaWQgMCx7UWc6ITB9LGZ1bmN0aW9uKCl7fSxmdW5jdGlvbigpe1pjKGIrWHUoMyksZnVuY3Rpb24oKXt9LGcpfSl9KX1lbHNlIGYoNSxmdW5jdGlvbihsKXtyZXR1cm4gV24oZSxsKX0pfHxaYyhiK1h1KDMpKX0sVXU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLlpoWzBdLGQ9eyJfJmFwdmMiOmEuUW4/IjEiOiIwIn07Yi5sZW5ndGg+MCYmKGRbIl8mdGlkcyJdPQpiLmpvaW4oIn4iKSk7aWYoYS5Obil7ZFsiXyZ0ZnQiXT1TdHJpbmcoTmIoKSk7dmFyIGU9cGQoKTtlIT09dm9pZCAwJiYoZFsiXyZ0ZmQiXT1TdHJpbmcoTWF0aC5yb3VuZChlKSkpfXJldHVybiBZdShjLmV2ZW50LGEudWR8fCIiLGQpfSxZdT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxhLnRhcmdldCx7ZGVzdGluYXRpb25JZDpifSksZT1adShhLHt0YXJnZXQ6ZH0pO2J8fFUoZSxGLkQuUWUpO2Zvcih2YXIgZj1tKE9iamVjdC5rZXlzKGMpKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZTtVKGUsaCxjW2hdKX1yZXR1cm4gZX0sWHU9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgODpjYXNlIDM6Y2FzZSA1OnJldHVybiImZm10PSIrYTtkZWZhdWx0OnJldHVybiIifX0sJHU9ZnVuY3Rpb24oYSxiKXthPVp1KGEpO1YoYSxILkouRGssWG8oZnApKTtUdCgpJiZVKGEsIl8mZ2NzIixVdCgpKTsKVShhLCJfJmdjZCIsWXQoYS5NKSk7dmFyIGM9WG8oZnApPzQ1OjQ2LGQ9ZnVuY3Rpb24oKXt2YXIgZj1iLnRpZDtpZihNKDQyNykpe3ZhciBnPVl1KGEsZixiKTtRdShnLHZvaWQgMCxBdSl9ZWxzZXt2YXIgaD1ObShjLGIpO1Z1KGEsaCxjLFtmXSl9fTtpZih5YihBLnF1ZXVlTWljcm90YXNrKSl7dmFyIGU9YWwoMzAsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGUubGVuZ3RoPT09MCl0cnl7QS5xdWV1ZU1pY3JvdGFzayhXdSl9Y2F0Y2goZil7R3UoVC5XLmZqKTtkKCk7cmV0dXJufWI9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxiKTtlLnB1c2goe2V2ZW50OmEsa2U6YixlbmRwb2ludDpjfSl9ZWxzZSBHdShULlcuZmopLGQoKX07dmFyIFg9e1Y6e01rOiJjYWxsX2NvbnZlcnNpb24iLHpkOiJjY21fY29udmVyc2lvbiIsUWs6ImNvbW1vbl9hdyIseGE6ImNvbnZlcnNpb24iLHdxOiJmbG9vZGxpZ2h0IixZZDoiZ2FfY29udmVyc2lvbiIsWmQ6ImdjcF9yZW1hcmtldGluZyIsS2E6InBhZ2VfdmlldyIsdWI6InJlbWFya2V0aW5nIixPYjoidXNlcl9kYXRhX2xlYWQiLEZiOiJ1c2VyX2RhdGFfd2ViIn19O2Z1bmN0aW9uIGJ2KGEsYil7YiYmR2IoYixmdW5jdGlvbihjLGQpe3R5cGVvZiBkIT09Im9iamVjdCImJmQhPT12b2lkIDAmJihhWyIxcC4iK2NdPVN0cmluZyhkKSl9KX07dmFyIG12PXtOZzoidmFsdWUiLHBiOiJjb252ZXJzaW9uQ291bnQiLE9nOjF9LG52PXtOZzoidGltZW91dHMiLHBiOiJ0aW1lb3V0cyIsT2c6MH0sb3Y9e05nOiJlb3BDb3VudCIscGI6ImVuZE9mUGFnZUNvdW50IixPZzowfSxwdj17Tmc6ImVycm9ycyIscGI6ImVycm9ycyIsT2c6MH0scXY9W212LG52LHB2LG92XTtmdW5jdGlvbiBydihhLGIpe2I9Yj09PXZvaWQgMD8xOmI7aWYoIXN2KGEpKXJldHVybnt9O3ZhciBjPXR2KHF2KSxkPWNbYS5wYl07aWYoZD09PXZvaWQgMHx8ZD09PS0xKXJldHVybiBjO3ZhciBlPXt9LGY9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxjLChlW2EucGJdPWQrYixlKSk7cmV0dXJuIHV2KGYpP2Y6Y30KZnVuY3Rpb24gdHYoYSl7dmFyIGI7YTp7dmFyIGM9bnIoImdjbF9jdHIiKTtpZihjLmVycm9yPT09MCYmYy52YWx1ZSYmdHlwZW9mIGMudmFsdWU9PT0ib2JqZWN0Iil7dmFyIGQ9Yy52YWx1ZTt0cnl7Yj0idmFsdWUiaW4gZCYmdHlwZW9mIGQudmFsdWU9PT0ib2JqZWN0Ij9kLnZhbHVlOnZvaWQgMDticmVhayBhfWNhdGNoKHApe319Yj12b2lkIDB9Zm9yKHZhciBlPWIsZj17fSxnPW0oYSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWU7aWYoZSYmc3YobCkpe3ZhciBuPWVbbC5OZ107bj09PXZvaWQgMHx8TnVtYmVyLmlzTmFOKG4pP2ZbbC5wYl09LTE6ZltsLnBiXT1OdW1iZXIobil9ZWxzZSBmW2wucGJdPS0xfXJldHVybiBmfQpmdW5jdGlvbiB1dihhLGIpe2I9Ynx8e307Zm9yKHZhciBjPU5iKCksZD11cShiLGMsITApLGU9e30sZj1tKHF2KSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSl7dmFyIGg9Zy52YWx1ZSxsPWFbaC5wYl07bCE9PXZvaWQgMCYmbCE9PS0xJiYoZVtoLk5nXT1sKX1lLmNyZWF0aW9uVGltZU1zPWM7cmV0dXJuIGtyKCJnY2xfY3RyIix7dmFsdWU6ZSxleHBpcmVzOk51bWJlcihkLmV4cGlyZXMpfSk9PT0wPyEwOiExfWZ1bmN0aW9uIHN2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuZnR8fFlmKGEuZnQpOiExfWZ1bmN0aW9uIHZ2KGEpe3JldHVybiBCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSk/IWEuQXN8fFlmKGEuQXMpOiExfTtmdW5jdGlvbiB3digpe2lmKHh2KCkpe3ZhciBhPW5yKCJsYXN0X2NvbnZzIik7aWYoYS5lcnJvcj09PTAmJmEudmFsdWUmJnR5cGVvZiBhLnZhbHVlPT09Im9iamVjdCIpe3ZhciBiPWEudmFsdWU7aWYoYi52YWx1ZSYmQXJyYXkuaXNBcnJheShiLnZhbHVlKSl7dmFyIGM9Yi52YWx1ZTtpZighKGMubGVuZ3RoPjEpKXtmb3IodmFyIGQ9W10sZT1tKGMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlO2lmKHR5cGVvZiBnIT09Im9iamVjdCJ8fGc9PT1udWxsfHx0eXBlb2YgZy5yYW5kb20hPT0ibnVtYmVyInx8dHlwZW9mIGcubGFiZWwhPT0ic3RyaW5nInx8Zy5sYWJlbC5sZW5ndGg+MjAwKXJldHVybjtkLnB1c2goe3JhbmRvbTpnLnJhbmRvbSxsYWJlbDpnLmxhYmVsfSl9cmV0dXJuIGR9fX19fQpmdW5jdGlvbiB5dihhLGIpeyF4digpfHxhLmxlbmd0aD4xfHxhLmxlbmd0aD09PTEmJmFbMF0ubGFiZWwubGVuZ3RoPjIwMHx8KGI9Ynx8e30sa3IoImxhc3RfY29udnMiLHt2YWx1ZTphLGV4cGlyZXM6TnVtYmVyKHVxKGIpLmV4cGlyZXMpfSkpfWZ1bmN0aW9uIHh2KCl7cmV0dXJuIEJsKFsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdKSYmWWYoMTEpfTtmdW5jdGlvbiB6dihhKXt2YXIgYj1NYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0Nyk7cmV0dXJuIGE/U3RyaW5nKGJebmcoYSkmMjE0NzQ4MzY0Nyk6U3RyaW5nKGIpfWZ1bmN0aW9uIEF2KGEpe3JldHVyblt6dihhKSxNYXRoLnJvdW5kKE5iKCkvMUUzKV0uam9pbigiLiIpfWZ1bmN0aW9uIEJ2KGEsYixjLGQsZSl7dmFyIGY9cnEoYiksZztyZXR1cm4oZz1ncShhLGYsc3EoYyksZCxlKSk9PW51bGw/dm9pZCAwOmcuQ3J9O3ZhciBDdj1bIjEiXSxEdj17fSxFdj17fTtmdW5jdGlvbiBGdihhKXtyZXR1cm4gRXZbR3YoYSldfWZ1bmN0aW9uIEh2KGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM9R3YoYS5wcmVmaXgpO2lmKER2W2NdKUl2KGEpLEp2KGEpO2Vsc2UgaWYoS3YoYyxhLnBhdGgsYS5kb21haW4pKXt2YXIgZD1GdihhLnByZWZpeCl8fHtpZDp2b2lkIDAsa2M6dm9pZCAwfTtiJiZMdihhLGQpO0l2KGEpO0p2KGEpfWVsc2V7dmFyIGU9VGooImF1aWRkYyIpO2lmKGUpc2IoIlRBR0dJTkciLDE3KSxEdltjXT1lO2Vsc2UgaWYoYil7dmFyIGY9R3YoYS5wcmVmaXgpLGc9QXYoKTtNdihmLGcsYSk7S3YoYyxhLnBhdGgsYS5kb21haW4pO0l2KGEsITApO0p2KGEsITApfX19CmZ1bmN0aW9uIEl2KGEsYil7KGI9PT12b2lkIDA/MDpiKSYmc3YobXYpJiZvcigiZ2NsX2N0ciIpO2lmKHZ2KG12KSYmdHYoW212XSlbbXYucGJdPT09LTEpe2Zvcih2YXIgYz17fSxkPShjW212LnBiXT0wLGMpLGU9bShxdiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7ZyE9PW12JiZ2dihnKSYmKGRbZy5wYl09MCl9dXYoZCxhKX19ZnVuY3Rpb24gSnYoYSxiKXsoYj09PXZvaWQgMD8wOmIpJiZ4digpJiZvcigibGFzdF9jb252cyIpOyFCbChbImFkX3N0b3JhZ2UiLCJhZF91c2VyX2RhdGEiXSl8fCFZZigxMil8fHd2KCl8fHl2KFtdLGEpfQpmdW5jdGlvbiBMdihhLGIpe3ZhciBjPUd2KGEucHJlZml4KSxkPUR2W2NdO2lmKGQpe3ZhciBlPWQuc3BsaXQoIi4iKTtpZihlLmxlbmd0aD09PTIpe3ZhciBmPU51bWJlcihlWzFdKXx8MDtpZihmKXt2YXIgZz1kO1lmKDE5KSYmYi5maT9nPWQrIi4iKyhiLnNlc3Npb25JZHx8Ii0uLSIpKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSsiLiIrYi5maSsiLiIrKGIuTGM/Yi5MYzpNYXRoLmZsb29yKE5iKCkvMUUzKSk6Yi5zZXNzaW9uSWQmJihnPWQrIi4iK2Iuc2Vzc2lvbklkKyIuIisoYi5rYz9iLmtjOk1hdGguZmxvb3IoTmIoKS8xRTMpKSk7TXYoYyxnLGEsZioxRTMpfX19fWZ1bmN0aW9uIE12KGEsYixjLGQpe3ZhciBlO2U9WyIxIix0cShjLmRvbWFpbixjLnBhdGgpLGJdLmpvaW4oIi4iKTt2YXIgZj11cShjLGQpO2YuTWM9TnYoKTtvcShhLGUsZil9CmZ1bmN0aW9uIEt2KGEsYixjKXt2YXIgZD1CdihhLGIsYyxDdixOdigpKTtpZighZClyZXR1cm4hMTtPdihhLGQpO3JldHVybiEwfWZ1bmN0aW9uIE92KGEsYil7dmFyIGM9Yi5zcGxpdCgiLiIpO2lmKGMubGVuZ3RoPT09MylFdlthXT17c2Vzc2lvbklkOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2Vsc2UgaWYoYy5sZW5ndGg+PTImJihEdlthXT1jWzBdKyIuIitjWzFdLGMuc2hpZnQoKSxjLnNoaWZ0KCksYy5sZW5ndGg+PTMpKXt2YXIgZD17c2Vzc2lvbklkOmNbMF09PT0iLSI/dm9pZCAwOmNbMF0rIi4iK2NbMV0sa2M6TnVtYmVyKGNbMl0pfHwwLExjOjB9O2lmKFlmKDE5KSYmYy5sZW5ndGg+PTYpe3ZhciBlPWNbM10rIi4iK2NbNF0sZj1OdW1iZXIoY1s1XSl8fDA7ZSYmZiE9PTAmJihkLmZpPWUsZC5MYz1mKX1FdlthXT1kfX1mdW5jdGlvbiBHdihhKXtyZXR1cm4oYXx8Il9nY2wiKSsiX2F1In0KZnVuY3Rpb24gUHYoYSl7ZnVuY3Rpb24gYigpe0JsKGMpJiZhKCl9dmFyIGM9TnYoKTtIbChmdW5jdGlvbigpe2IoKTtCbChjKXx8SWwoYixjKX0sYyl9ZnVuY3Rpb24gUXYoYSl7dmFyIGI9VXEoITApLGM9R3YoYS5wcmVmaXgpO1B2KGZ1bmN0aW9uKCl7dmFyIGQ9YltjXTtpZihkKXtPdihjLGQpO3ZhciBlPU51bWJlcihEdltjXS5zcGxpdCgiLiIpWzFdKSoxRTM7aWYoZSl7c2IoIlRBR0dJTkciLDE2KTt2YXIgZj11cShhLGUpO2YuTWM9TnYoKTt2YXIgZz1bIjEiLHRxKGEuZG9tYWluLGEucGF0aCksZF0uam9pbigiLiIpO29xKGMsZyxmKX19fSl9ZnVuY3Rpb24gUnYoYSxiLGMsZCxlKXtlPWV8fHt9O3ZhciBmPWZ1bmN0aW9uKCl7dmFyIGc9e30saD1CdihhLGUucGF0aCxlLmRvbWFpbixDdixOdigpKTtoJiYoZ1thXT1oKTtyZXR1cm4gZ307UHYoZnVuY3Rpb24oKXthcihmLGIsYyxkKX0pfQpmdW5jdGlvbiBOdigpe3JldHVyblsiYWRfc3RvcmFnZSIsImFkX3VzZXJfZGF0YSJdfTt2YXIgVnY9ImVtYWlsIGVtYWlsX2FkZHJlc3Mgc2hhMjU2X2VtYWlsX2FkZHJlc3MgcGhvbmVfbnVtYmVyIHNoYTI1Nl9waG9uZV9udW1iZXIgZmlyc3RfbmFtZSBsYXN0X25hbWUiLnNwbGl0KCIgIiksV3Y9ImZpcnN0X25hbWUgc2hhMjU2X2ZpcnN0X25hbWUgbGFzdF9uYW1lIHNoYTI1Nl9sYXN0X25hbWUgc3RyZWV0IHNoYTI1Nl9zdHJlZXQgY2l0eSByZWdpb24gY291bnRyeSBwb3N0YWxfY29kZSIuc3BsaXQoIiAiKTtmdW5jdGlvbiBYdihhLGIpe2lmKCFiLl90YWdfbWV0YWRhdGEpe2Zvcih2YXIgYz17fSxkPTAsZT0wO2U8YS5sZW5ndGg7ZSsrKWQrPVl2KGFbZV0sYixjKT8xOjA7ZD4wJiYoYi5fdGFnX21ldGFkYXRhPWMpfX0KZnVuY3Rpb24gWXYoYSxiLGMpe3ZhciBkPWJbYV07aWYoZD09PXZvaWQgMHx8ZD09PW51bGwpcmV0dXJuITE7Y1thXT1BcnJheS5pc0FycmF5KGQpP2QubWFwKGZ1bmN0aW9uKCl7cmV0dXJue21vZGU6ImMifX0pOnttb2RlOiJjIn07cmV0dXJuITB9ZnVuY3Rpb24gWnYoYSl7aWYoTSg1MjMpJiZhKXtYdihWdixhKTtmb3IodmFyIGI9QmIoYS5hZGRyZXNzKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY107ZCYmWHYoV3YsZCl9dmFyIGU9YS5ob21lX2FkZHJlc3M7ZSYmWHYoV3YsZSl9fQpmdW5jdGlvbiAkdihhLGIsYyl7ZnVuY3Rpb24gZChmLGcpe2c9U3RyaW5nKGcpLnN1YnN0cmluZygwLDEwMCk7ZS5wdXNoKCIiK2YrZW5jb2RlVVJJQ29tcG9uZW50KGcpKX1pZighYylyZXR1cm4iIjt2YXIgZT1bXTtkKCJpIixTdHJpbmcoYSkpO2QoImYiLGIpO2MubW9kZSYmZCgibSIsYy5tb2RlKTtjLmlzUHJlSGFzaGVkJiZkKCJwIiwiMSIpO2MucmF3TGVuZ3RoJiZkKCJyIixTdHJpbmcoYy5yYXdMZW5ndGgpKTtjLm5vcm1hbGl6ZWRMZW5ndGgmJmQoIm4iLFN0cmluZyhjLm5vcm1hbGl6ZWRMZW5ndGgpKTtjLmxvY2F0aW9uJiZkKCJsIixjLmxvY2F0aW9uKTtjLnNlbGVjdG9yJiZkKCJzIixjLnNlbGVjdG9yKTtyZXR1cm4gZS5qb2luKCIuIil9O3ZhciBhdz12b2lkIDA7ZnVuY3Rpb24gYncoKXtpZighYXcpe3ZhciBhPW9tKGptLmJhLm9wLG5ldyBNYXApO2F3PW5ldyBvZyhhKX1yZXR1cm4gYXd9Owp2YXIgY3c9ZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJuIGE7Zm9yKHZhciBiPXt9LGM9bShPYmplY3Qua2V5cyhhKSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7ZSE9PSJhZGRyZXNzIiYmZSE9PSJwaG9uZV9udW1iZXIiJiZlIT09InNoYTI1Nl9waG9uZV9udW1iZXIiJiYoYltlXT1hW2VdKX1yZXR1cm4gYn0sZnc9ZnVuY3Rpb24oYSl7dmFyIGI9TSg1MjMpLGM9WyJ0di4xIl0sZD1bInR2ZC4xIl0sZT1kdyhhKTtpZihlKXJldHVybiBjLnB1c2goZSkse2hhc1VwZDohMSxPbzpjLmpvaW4oIn4iKSxZbjpjLmpvaW4oIn4iKSxlbmNyeXB0aW9uS2V5U3RyaW5nOnZvaWQgMCxpaTp7fSxtZXRhZGF0YVBhcmFtOmI/ZC5qb2luKCJ+Iik6dm9pZCAwfTt2YXIgZj17fSxnPTA7dmFyIGg9MCxsPWV3KGEsZnVuY3Rpb24ocSxyLHQpe2grKzt2YXIgdT1xLnZhbHVlLHY7CmlmKHQpe3ZhciB4PXIrIl9fIitnKys7dj0iJHt1c2VyRGF0YS4iK3grInxzaGEyNTZ9IjtmW3hdPXV9ZWxzZSB2PWVuY29kZVVSSUNvbXBvbmVudChlbmNvZGVVUklDb21wb25lbnQodSkpO3EuaW5kZXghPT12b2lkIDAmJihyKz1xLmluZGV4KTtjLnB1c2gocisiLiIrdik7aWYoYil7dmFyIHk9JHYoaCxyLHEubWV0YWRhdGEpO3kmJmQucHVzaCh5KX19KS5oYXNVcGQsbj1kLmpvaW4oIn4iKTt2YXIgcD1jLmpvaW4oIn4iKTtyZXR1cm57aGFzVXBkOmwsT286cCxpaTp7dXNlckRhdGE6Zn0sWW46InR2LjF+JHsiKyhwKyJ8IisoTSg1NTUpPyJlbmNyeXB0X3dpdGhfbWVtbyI6ImVuY3J5cHQiKSsifSIpLGVuY3J5cHRpb25LZXlTdHJpbmc6RSg0MyksbWV0YWRhdGFQYXJhbTpiP246dm9pZCAwfX0saHc9ZnVuY3Rpb24oYSl7aWYoIShhIT1udWxsJiZPYmplY3Qua2V5cyhhKS5sZW5ndGg+MCkpcmV0dXJuITE7CnZhciBiPWd3KGEpO3JldHVybiBldyhiLGZ1bmN0aW9uKCl7fSkuaGFzVXBkfSxldz1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD9mdW5jdGlvbigpe306Yjtmb3IodmFyIGM9ITEsZD0hMSxlPW0oYSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7aWYoZy52YWx1ZSl7dmFyIGg9aXdbZy5uYW1lXTtpZihoKXt2YXIgbD1qdyhnKTtsJiYoYz0hMCk7ZD0hMDtiKGcsaCxsKX19fXJldHVybntoYXNVcGQ6ZCxoYXNVcGRUb0hhc2g6Y319LGp3PWZ1bmN0aW9uKGEpe3ZhciBiPWt3KGEubmFtZSksYz0vXmVcZCskLy50ZXN0KGEudmFsdWUpLGQ7aWYoZD1iJiYhYyl7dmFyIGU9YS52YWx1ZTtkPSEobHcudGVzdChlKXx8eWkudGVzdChlKSl9cmV0dXJuIGR9LGt3PWZ1bmN0aW9uKGEpe3JldHVybiBtdy5pbmRleE9mKGEpIT09LTF9LHN3PWZ1bmN0aW9uKGEsYixjKXtpZih5YihBLlByb21pc2UpKXRyeXt2YXIgZD0hMTt2YXIgZT1ndyhhLGQpLGY9bncoZSkudGhlbihmdW5jdGlvbihoKXt2YXIgbD1oLnliLG49bC5maWx0ZXIoZnVuY3Rpb24ocSl7cmV0dXJuIVNiKHEubmFtZSwicmF3Iil9KSxwPW93KHt5YjpufSk7cmV0dXJue3Jlc3VsdDp7cGFyYW06cC5wYXJhbSxoYXNVcGRUb0hhc2g6cC5oYXNVcGRUb0hhc2gsaGFzVXBkOnAuaGFzVXBkLGhhZEVycm9yOnAuaGFkRXJyb3IsbWV0YWRhdGFQYXJhbTpwLm1ldGFkYXRhUGFyYW19LHliOmx9fSk7cmV0dXJuIGYudGhlbihmdW5jdGlvbihoKXtyZXR1cm4gaC5yZXN1bHR9KX1jYXRjaChoKXt9fSxxdz1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9LG93PWZ1bmN0aW9uKGEpe3ZhciBiPU0oNTIzKSxjPWEueWIsZD1bInR2LjEiXSxlPVsidHZkLjEiXSxmPWR3KGMpO2lmKGYpcmV0dXJuIGQucHVzaChmKSx7cGFyYW06ZC5qb2luKCJ+IiksaGFzVXBkVG9IYXNoOiExLGhhc1VwZDohMSxoYWRFcnJvcjohMCxtZXRhZGF0YVBhcmFtOmI/ZS5qb2luKCJ+Iik6dm9pZCAwfTt2YXIgZz1jLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4hancocSl9KSxoPTAsbD1ldyhnLGZ1bmN0aW9uKHEscil7aCsrO3ZhciB0PXEudmFsdWUsdT1xLmluZGV4O3UhPT12b2lkIDAmJihyKz11KTtkLnB1c2gocisiLiIrdCk7aWYoYil7dmFyIHY9JHYoaCxyLHEubWV0YWRhdGEpO3YmJmUucHVzaCh2KX19KSxuPWwuaGFzVXBkVG9IYXNoLHA9bC5oYXNVcGQ7cmV0dXJue3BhcmFtOmVuY29kZVVSSUNvbXBvbmVudChkLmpvaW4oIn4iKSksCmhhc1VwZFRvSGFzaDpuLGhhc1VwZDpwLGhhZEVycm9yOiExLG1ldGFkYXRhUGFyYW06Yj9lLmpvaW4oIn4iKTp2b2lkIDB9fSxkdz1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTEmJmFbMF0ubmFtZT09PSJlcnJvcl9jb2RlIilyZXR1cm4gaXcuZXJyb3JfY29kZSsiLiIrYVswXS52YWx1ZX0scHc9ZnVuY3Rpb24oYSl7aWYoYS5sZW5ndGg9PT0xJiZhWzBdLm5hbWU9PT0iZXJyb3JfY29kZSIpcmV0dXJuITE7Zm9yKHZhciBiPW0oYSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWU7aWYoaXdbZC5uYW1lXSYmZC52YWx1ZSlyZXR1cm4hMH1yZXR1cm4hMX0sZ3c9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1bXTtpZihBLmxvY2F0aW9uLnByb3RvY29sIT09Imh0dHBzOiIpcmV0dXJuIGMucHVzaCh7bmFtZToiZXJyb3JfY29kZSIsdmFsdWU6ImUzIixpbmRleDp2b2lkIDB9KSxjO3ZhciBkPWMucHVzaCxlPWQuYXBwbHksZj1bXSwKZz1mLmNvbmNhdCxoLGw9YS5fdGFnX21ldGFkYXRhfHx7fTtoPVtdLmNvbmNhdCh3KHR3KHtuYW1lOiJlbWFpbCIscmF3OmEuZW1haWwsU2E6YS5zaGEyNTZfZW1haWxfYWRkcmVzcyxhYjpsLmVtYWlsLG1kOmwuc2hhMjU2X2VtYWlsX2FkZHJlc3N9LHV3KSksdyh0dyh7bmFtZToicGhvbmVfbnVtYmVyIixyYXc6YS5waG9uZV9udW1iZXIsU2E6YS5zaGEyNTZfcGhvbmVfbnVtYmVyLGFiOmwucGhvbmVfbnVtYmVyLG1kOmwuc2hhMjU2X3Bob25lX251bWJlcn0sdncpKSk7dmFyIG49dyhoKSxwLHE9YS5fdGFnX21ldGFkYXRhfHx7fSxyPWEuaG9tZV9hZGRyZXNzfHx7fSx0PXIuX3RhZ19tZXRhZGF0YXx8e307cD1bXS5jb25jYXQodyh0dyh7bmFtZToiZmlyc3RfbmFtZSIscmF3OmEuZmlyc3RfbmFtZSxTYTphLnNoYTI1Nl9maXJzdF9uYW1lLGFiOnEuZmlyc3RfbmFtZSxtZDpxLnNoYTI1Nl9maXJzdF9uYW1lfSx3dyh4dykpKSx3KHR3KHtuYW1lOiJsYXN0X25hbWUiLHJhdzphLmxhc3RfbmFtZSwKU2E6YS5zaGEyNTZfbGFzdF9uYW1lLGFiOnEubGFzdF9uYW1lLG1kOnEuc2hhMjU2X2xhc3RfbmFtZX0sd3coeHcpKSksdyh0dyh7bmFtZToic3RyZWV0IixyYXc6ci5zdHJlZXQsU2E6ci5zaGEyNTZfc3RyZWV0LGFiOnQuc3RyZWV0LG1kOnQuc2hhMjU2X3N0cmVldH0sd3coeXcpKSksdyh0dyh7bmFtZToiY2l0eSIscmF3OnIuY2l0eSxhYjp0LmNpdHl9LHd3KHl3KSkpLHcodHcoe25hbWU6InBvc3RhbF9jb2RlIixyYXc6ci5wb3N0YWxfY29kZSxhYjp0LnBvc3RhbF9jb2RlfSx3dyh6dykpKSx3KHR3KHtuYW1lOiJyZWdpb24iLHJhdzpyLnJlZ2lvbixhYjp0LnJlZ2lvbn0sd3coeXcpKSksdyh0dyh7bmFtZToiY291bnRyeSIscmF3OnIuY291bnRyeSxhYjp0LmNvdW50cnl9LHd3KHp3KSkpKTtmb3IodmFyIHU9dyhwKSx2PVtdLHg9QmIoYS5hZGRyZXNzfHx7fSkseT0wO3k8eC5sZW5ndGg7eSsrKXtmb3IodmFyIHo9eFt5XSxDPXouX3RhZ19tZXRhZGF0YXx8e30sRD1bXS5jb25jYXQodyh0dyh7bmFtZToiZmlyc3RfbmFtZSIsCnJhdzp6LmZpcnN0X25hbWUsU2E6ei5zaGEyNTZfZmlyc3RfbmFtZSxhYjpDLmZpcnN0X25hbWUsbWQ6Qy5zaGEyNTZfZmlyc3RfbmFtZX0seHcpKSx3KHR3KHtuYW1lOiJsYXN0X25hbWUiLHJhdzp6Lmxhc3RfbmFtZSxTYTp6LnNoYTI1Nl9sYXN0X25hbWUsYWI6Qy5sYXN0X25hbWUsbWQ6Qy5zaGEyNTZfbGFzdF9uYW1lfSx4dykpLHcodHcoe25hbWU6InN0cmVldCIscmF3Onouc3RyZWV0LFNhOnouc2hhMjU2X3N0cmVldCxhYjpDLnN0cmVldCxtZDpDLnNoYTI1Nl9zdHJlZXR9LHl3KSksdyh0dyh7bmFtZToiY2l0eSIscmF3OnouY2l0eSxhYjpDLmNpdHl9LHl3KSksdyh0dyh7bmFtZToicG9zdGFsX2NvZGUiLHJhdzp6LnBvc3RhbF9jb2RlLGFiOkMucG9zdGFsX2NvZGV9LHp3KSksdyh0dyh7bmFtZToicmVnaW9uIixyYXc6ei5yZWdpb24sYWI6Qy5yZWdpb259LHl3KSksdyh0dyh7bmFtZToiY291bnRyeSIscmF3OnouY291bnRyeSxhYjpDLmNvdW50cnl9LHp3KSkpLEk9MDtJPApELmxlbmd0aDtJKyspRFtJXS5pbmRleD15O3YucHVzaC5hcHBseSh2LHcoRCkpfWUuY2FsbChkLGMsZy5jYWxsKGYsbix1LHcodikpKTtpZihiJiZCcCgpKXt2YXIgRz1jLnB1c2gsTj1HLmFwcGx5LFM9W107Uy5wdXNoLmFwcGx5KFMsW10uY29uY2F0KHcoQXcoe25hbWU6InJhd19lbWFpbCIscmF3OmEuZW1haWwsU2E6YS5zaGEyNTZfZW1haWxfYWRkcmVzc30pKSx3KEF3KHtuYW1lOiJyYXdfcGhvbmVfbnVtYmVyIixyYXc6YS5waG9uZV9udW1iZXIsU2E6YS5zaGEyNTZfcGhvbmVfbnVtYmVyfSkpKSk7Zm9yKHZhciBXPUJiKGEuYWRkcmVzc3x8e30pLGVhPTA7ZWE8Vy5sZW5ndGg7ZWErKyl7dmFyIGphPVdbZWFdO1MucHVzaC5hcHBseShTLFtdLmNvbmNhdCh3KEF3KHtuYW1lOiJyYXdfZmlyc3RfbmFtZSIscmF3OmphLmZpcnN0X25hbWUsU2E6amEuc2hhMjU2X2ZpcnN0X25hbWV9LGVhKSksdyhBdyh7bmFtZToicmF3X2xhc3RfbmFtZSIscmF3OmphLmxhc3RfbmFtZSxTYTpqYS5zaGEyNTZfbGFzdF9uYW1lfSwKZWEpKSx3KEF3KHtuYW1lOiJyYXdfc3RyZWV0IixyYXc6amEuc3RyZWV0LFNhOmphLnNoYTI1Nl9zdHJlZXR9LGVhKSkpKX1pZihhLmZpcnN0X25hbWV8fGEuaG9tZV9hZGRyZXNzKXtTLnB1c2guYXBwbHkoUyxbXS5jb25jYXQodyhBdyh7bmFtZToicmF3X2ZpcnN0X25hbWUiLHJhdzphLmZpcnN0X25hbWUsU2E6YS5zaGEyNTZfZmlyc3RfbmFtZX0pKSx3KEF3KHtuYW1lOiJyYXdfbGFzdF9uYW1lIixyYXc6YS5sYXN0X25hbWUsU2E6YS5zaGEyNTZfbGFzdF9uYW1lfSkpKSk7dmFyIGZhPWEuaG9tZV9hZGRyZXNzfHx7fTtTLnB1c2guYXBwbHkoUyx3KEF3KHtuYW1lOiJyYXdfc3RyZWV0IixyYXc6ZmEuc3RyZWV0LFNhOmZhLnNoYTI1Nl9zdHJlZXR9KSkpfU4uY2FsbChHLGMsdyhTKSl9cmV0dXJuIGN9LHd3PWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtQKDY0KTtyZXR1cm4gYShiKX19LEF3PWZ1bmN0aW9uKGEsYil7dmFyIGM9W107aWYoYS5TYSlyZXR1cm4gYztmb3IodmFyIGQ9CkJiKGEucmF3KSxlPTA7ZTxkLmxlbmd0aDsrK2Upe3ZhciBmPUJ3KGRbZV0pO2lmKGYmJiF5aS50ZXN0KGYpKWlmKC9eZVxkKyQvLnRlc3QoZikpYy5wdXNoKHtuYW1lOmEubmFtZSx2YWx1ZTpmLGluZGV4OmJ9KTtlbHNle3ZhciBnPWMsaD1nLnB1c2gsbD1hLm5hbWUsbjt2YXIgcD1BO3RyeXtuPUJpKEFycmF5LmZyb20oWmIoZikpLHApfWNhdGNoKHEpe249ImUwIn1oLmNhbGwoZyx7bmFtZTpsLHZhbHVlOm4saW5kZXg6Yn0pfX1yZXR1cm4gY30sdHc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXSxkPU0oNTIzKSxlPWEucmF3LGY9ZD9hLmFiOnZvaWQgMDtDdyhlLCExKTthLlNhJiYoZSYmUCg5MCksZT1hLlNhLGY9ZD9hLm1kOnZvaWQgMCxDdyhlLCEwKSk7Zm9yKHZhciBnPUJiKGUpLGg9QmIoZiksbD0wO2w8Zy5sZW5ndGg7KytsKXt2YXIgbjt2YXIgcD1hLm5hbWUscT1iLHI9aFtsXSx0PUJ3KGdbbF0pO2lmKHQhPT0iIilpZih5aS50ZXN0KHQpKXtyJiYoci5pc1ByZUhhc2hlZD0hMCk7CnZhciB1PXtuYW1lOnAsdmFsdWU6dCxpbmRleDp2b2lkIDB9O3ImJih1Lm1ldGFkYXRhPXIpO249dX1lbHNle3ZhciB2PXEodCkseD17bmFtZTpwLHZhbHVlOnYsaW5kZXg6dm9pZCAwfTtyJiYoeC5tZXRhZGF0YT1yLHYmJihyLnJhd0xlbmd0aD1TdHJpbmcodCkubGVuZ3RoLHIubm9ybWFsaXplZExlbmd0aD12Lmxlbmd0aCkpO249eH1lbHNlIG49dm9pZCAwO3ZhciB5PW47eSYmYy5wdXNoKHkpfXJldHVybiBjfSxDdz1mdW5jdGlvbihhLGIpe2lmKHpiKGEpfHxBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgYz1CYihhKSxkPTA7ZDxjLmxlbmd0aDsrK2Qpe3ZhciBlPUJ3KGNbZF0pLGY9eWkudGVzdChlKTtiJiYhZiYmUCg4OSk7IWImJmYmJlAoODgpfX0sRHc9ZnVuY3Rpb24oYSl7dmFyIGI9YT9ndyhhKTpbXTtyZXR1cm4gb3coe3liOmJ9KX0sRXc9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEhPW51bGwmJk9iamVjdC5rZXlzKGEpLmxlbmd0aD4wJiZ5YihBLlByb21pc2UpP2d3KGEpLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGIudmFsdWUmJgprdyhiLm5hbWUpJiYheWkudGVzdChiLnZhbHVlKX0pOiExfSxCdz1mdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbD8iIjp6YihhKT9MYihTdHJpbmcoYSkpOiJlMCJ9LHp3PWZ1bmN0aW9uKGEpe3JldHVybiBhLnJlcGxhY2UoRncsIiIpfSx4dz1mdW5jdGlvbihhKXtyZXR1cm4geXcoYS5yZXBsYWNlKC9ccy9nLCIiKSl9LHl3PWZ1bmN0aW9uKGEpe3JldHVybiBMYihhLnJlcGxhY2UoR3csIiIpLnRvTG93ZXJDYXNlKCkpfSx2dz1mdW5jdGlvbihhKXthPWEucmVwbGFjZSgvW1xzLSgpLy5dL2csIiIpO2EuY2hhckF0KDApIT09IisiJiYoYT0iKyIrYSk7cmV0dXJuKE0oNTk3KT9IdzpJdykudGVzdChhKT9hOiJlMCJ9LHV3PWZ1bmN0aW9uKGEpe3ZhciBiPWEudG9Mb3dlckNhc2UoKS5zcGxpdCgiQCIpO2lmKGIubGVuZ3RoPT09Mil7dmFyIGM9YlswXTsvXihnbWFpbHxnb29nbGVtYWlsKVwuLy50ZXN0KGJbMV0pJiYoYz1jLnJlcGxhY2UoL1wuL2csIiIpKTtjPWMrIkAiK2JbMV07aWYoSncudGVzdChjKSlyZXR1cm4gY31yZXR1cm4iZTAifSwKS3c9ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBhLmZvckVhY2goZnVuY3Rpb24oYil7Yi52YWx1ZSYma3coYi5uYW1lKSYmKGIudmFsdWU9RGkoYi52YWx1ZSkpfSkse3liOmF9fWNhdGNoKGIpe3JldHVybnt5YjpbXX19fSxudz1mdW5jdGlvbihhKXtyZXR1cm4gYS5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiLnZhbHVlJiZrdyhiLm5hbWUpfSk/eWIoQS5Qcm9taXNlKT9Qcm9taXNlLmFsbChhLm1hcChmdW5jdGlvbihiKXtyZXR1cm4gYi52YWx1ZSYma3coYi5uYW1lKT9BaShiLnZhbHVlKS50aGVuKGZ1bmN0aW9uKGMpe2IudmFsdWU9Y30pOlByb21pc2UucmVzb2x2ZSgpfSkpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm57eWI6YX19KS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt5YjpbXX19KTp7dGhlbjpmdW5jdGlvbihiKXtiKHt5YjpbXX0pfX06UHJvbWlzZS5yZXNvbHZlKHt5YjphfSl9LEd3PS9bMC05YH4hQCMkJV4mKigpX1wtKz06Ozw+LC4/fC9cXFtcXV0vZyxKdz0vXlxTK0BcUytcLlxTKyQvLApJdz0vXlwrXGR7MTAsMTV9JC8sSHc9L15cK1xkezcsMTV9JC8sRnc9L1sufl0vZyxsdz0vXlswLTlBLVphLXpfLV17NDN9JC8sTHc9WyJyZW0iLCJycG4iLCJyZm4iLCJybG4iLCJyc2EiXSxNdz17fSxpdz0oTXcuZW1haWw9ImVtIixNdy5waG9uZV9udW1iZXI9InBuIixNdy5maXJzdF9uYW1lPSJmbiIsTXcubGFzdF9uYW1lPSJsbiIsTXcuc3RyZWV0PSJzYSIsTXcuY2l0eT0iY3QiLE13LnJlZ2lvbj0icmciLE13LmNvdW50cnk9ImNvIixNdy5wb3N0YWxfY29kZT0icGMiLE13LmVycm9yX2NvZGU9ImVjIixNdy5yYXdfZW1haWw9InJlbSIsTXcucmF3X3Bob25lX251bWJlcj0icnBuIixNdy5yYXdfZmlyc3RfbmFtZT0icmZuIixNdy5yYXdfbGFzdF9uYW1lPSJybG4iLE13LnJhd19zdHJlZXQ9InJzYSIsTXcpO3ZhciBtdz1PYmplY3QuZnJlZXplKFsiZW1haWwiLAoicGhvbmVfbnVtYmVyIiwiZmlyc3RfbmFtZSIsImxhc3RfbmFtZSIsInN0cmVldCJdKTt2YXIgbXg9T2JqZWN0LmZyZWV6ZSh7YXR0cmlidXRpb25zcmM6IiJ9KSxueD1PYmplY3QuZnJlZXplKHtldmVudFNvdXJjZUVsaWdpYmxlOiExLHRyaWdnZXJFbGlnaWJsZTohMH0pO2Z1bmN0aW9uIG94KCl7dmFyIGE9WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlO3JldHVybiBhJiZ5YihhLnNldEF0dHJpYnV0aW9uUmVwb3J0aW5nKX07dmFyIHB4PU9iamVjdC5mcmVlemUoe2NhY2hlOiJuby1zdG9yZSIsY3JlZGVudGlhbHM6ImluY2x1ZGUiLG1ldGhvZDoiR0VUIixrZWVwYWxpdmU6ITAscmVkaXJlY3Q6ImZvbGxvdyJ9KTsKZnVuY3Rpb24gcXgoYSxiLGMsZCxlLGYpe2lmKCF5YihBLmZldGNoKSlyZXR1cm4gZj09bnVsbHx8Zih2b2lkIDAsdm9pZCAwKSwhMTt2YXIgZz1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LHB4KTtiJiYoZy5ib2R5PWIsZy5tZXRob2Q9IlBPU1QiKTtuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGcsZCk7QS5mZXRjaChhLGcpLnRoZW4oZnVuY3Rpb24oaCl7aWYoaC5vayl7aWYoaC5ib2R5KXt2YXIgbD1oLmJvZHkuZ2V0UmVhZGVyKCksbj1uZXcgVGV4dERlY29kZXI7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHApe2Z1bmN0aW9uIHEoKXtsLnJlYWQoKS50aGVuKGZ1bmN0aW9uKHIpe3ZhciB0O3Q9ci5kb25lO3ZhciB1PW4uZGVjb2RlKHIudmFsdWUse3N0cmVhbTohdH0pO3U9Yy5SK3U7Zm9yKHZhciB2PXUuaW5kZXhPZigiXG5cbiIpO3YhPT0tMTspe3ZhciB4PVpnLHk7YTp7dmFyIHo9bSh1LnN1YnN0cmluZygwLHYpLnNwbGl0KCJcbiIpKSxDPQp6Lm5leHQoKS52YWx1ZSxEPXoubmV4dCgpLnZhbHVlO2lmKFNiKEMsImV2ZW50OiBtZXNzYWdlIikmJlNiKEQsImRhdGE6ICIpKXt2YXIgST1ELnN1YnN0cmluZyg2KTt0cnl7eT1KU09OLnBhcnNlKEkpO2JyZWFrIGF9Y2F0Y2goRyl7fX15PXZvaWQgMH14KGMseSk7dT11LnN1YnN0cmluZyh2KzIpO3Y9dS5pbmRleE9mKCJcblxuIil9Yy5SPXU7dD8oZT09bnVsbHx8ZShoKSxwKCkpOnEoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZT09bnVsbHx8ZShoKTtwKCl9KX1xKCl9KX1lPT1udWxsfHxlKGgpfWVsc2UgZj09bnVsbHx8ZihoLHZvaWQgMCl9KS5jYXRjaChmdW5jdGlvbihoKXtmPT1udWxsfHxmKHZvaWQgMCxoKX0pO3JldHVybiEwfTt2YXIgcng9ZnVuY3Rpb24oYSl7aHUuY2FsbCh0aGlzLCJGZXRjaFJpY2hSZXNwb25zZSIsMSk7dGhpcy5OPWF9O3dhKHJ4LGh1KTtyeC5wcm90b3R5cGUuaXNTdXBwb3J0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4geWIoQS5mZXRjaCl9O3J4LnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuITB9O3J4LnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjKXtxeChiLGM9PW51bGw/dm9pZCAwOmMuYm9keSx0aGlzLk4sYz09bnVsbD92b2lkIDA6Yy5HYixhLnBlLGZ1bmN0aW9uKGQsZSl7YS5vbkZhaWx1cmUoZSl9KX07dmFyIEN4PWZ1bmN0aW9uKCl7WWcuYXBwbHkodGhpcyxhcmd1bWVudHMpfTt3YShDeCxZZyk7Q3gucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXtaYyhhLHZvaWQgMCwkZyh0aGlzLGIpLGIuYXR0cmlidXRpb25fcmVwb3J0aW5nJiZveCgpP214Ont9KX07Q3gucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmF0dHJpYnV0aW9uX3JlcG9ydGluZyYmb3goKT97YXR0cmlidXRpb25SZXBvcnRpbmc6bnh9Ont9LGQ9JGcodGhpcyxiKTtiLnByb2Nlc3NfcmVzcG9uc2U/cXgoYSx2b2lkIDAsdGhpcyxjLHZvaWQgMCxkKTptZChhLHZvaWQgMCxjLHZvaWQgMCxkKX07dmFyIFF4PWZ1bmN0aW9uKGEsYil7dGhpcy5IPWE7dGhpcy50aW1lb3V0TXM9Yjt0aGlzLlJiPXZvaWQgMH0sUng9ZnVuY3Rpb24oYSl7YS5SYnx8KGEuUmI9c2V0VGltZW91dChmdW5jdGlvbigpe2EuSCgpO2EuUmI9dm9pZCAwfSxhLnRpbWVvdXRNcykpfSxUbj1mdW5jdGlvbihhKXthLlJiJiYoY2xlYXJUaW1lb3V0KGEuUmIpLGEuUmI9dm9pZCAwKX07dmFyIFN4PWZ1bmN0aW9uKCl7dmFyIGE9TmYoNjYsMCk7dGhpcy5LPVtdO3RoaXMuUj1hO3RoaXMuSD1ZYSgpfSxVeD1mdW5jdGlvbihhKXt2YXIgYj1UeDtiLksucHVzaChhKTtiLk58fChiLk49ZnVuY3Rpb24oKXtmb3IodmFyIGM9bShiLkspLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKXt2YXIgZT1kLnZhbHVlO3RyeXtlKCl9Y2F0Y2gobCl7fX1mb3IodmFyIGY9bShiLkgudmFsdWVzKCkpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD12b2lkIDA7KGg9Zy52YWx1ZS53ZSk9PW51bGx8fFRuKGgpfWIuSC5jbGVhcigpfSwkYyhBLCJwYWdlaGlkZSIsYi5OKSl9LFZ4PWZ1bmN0aW9uKGEpe3ZhciBiPWEubWF0Y2goTW4pWzNdfHxudWxsLGM9KGI/ZGVjb2RlVVJJKGIpOmIpfHwiIixkPVBuKGEsImxhYmVsIil8fCIiLGU9UG4oYSwicmFuZG9tIil8fCIiO3JldHVybiBjKyI6IitMbihkKSsiOiIrTG4oZSl9LFd4PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1UeCwKZT1WeChhKTtpZighKGQuSC5oYXMoZSl8fGQuSC5zaXplPj1kLlIpKXt2YXIgZj17fTtiJiZiPjAmJmMmJihmLndlPW5ldyBReChjLGIpKTtkLkguc2V0KGUsZik7dmFyIGc7KGc9Zi53ZSk9PW51bGx8fFJ4KGcpfX0sVW49ZnVuY3Rpb24oYSxiKXt2YXIgYz1WeChiKSxkLGU7KGQ9YS5ILmdldChjKSk9PW51bGx8fChlPWQud2UpPT1udWxsfHxUbihlKTthLkguZGVsZXRlKGMpfTtTeC5wcm90b3R5cGUuZ2V0U2l6ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkguc2l6ZX07dmFyIGRnO2Z1bmN0aW9uIGh5KGEsYil7dmFyIGM7KGM9ZGcpPT1udWxsfHwkZihjLkgsYSxiKX07dmFyIGl5PUFhKFsiLyJdKSxqeT1mdW5jdGlvbihhKXt0aGlzLkg9YTt0aGlzLmZhaWx1cmVUeXBlPXZvaWQgMH07ankucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXt0cnl7dmFyIGQ9dGhpcy5ILmFjdGl2ZTtkPyhkLnBvc3RNZXNzYWdlKHt0eXBlOjEsY29tbWFuZDphfSksYih7ZGF0YToiIn0pKTpjKHtmYWlsdXJlVHlwZToxMyxkYXRhOiIifSl9Y2F0Y2goZSl7Yyh7ZmFpbHVyZVR5cGU6MTEsZGF0YTplLm1lc3NhZ2V9KX19O3ZhciBreT1mdW5jdGlvbihhLGIpe3RoaXMuZmFpbHVyZVR5cGU9YTt0aGlzLkg9Yn07a3kucHJvdG90eXBlLmlvPWZ1bmN0aW9uKGEsYixjKXtjKHtmYWlsdXJlVHlwZTp0aGlzLmZhaWx1cmVUeXBlLGRhdGE6ImYiK3RoaXMuZmFpbHVyZVR5cGUrKCJ0IisoKG5ldyBEYXRlKS5nZXRUaW1lKCktdGhpcy5IKSl9KX07CnZhciBueT1mdW5jdGlvbihhKXt2YXIgYj10aGlzO3RoaXMuaW5pdFRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dGhpcy5IPW5ldyBreSgxNSx0aGlzLmluaXRUaW1lKTt2YXIgYz1uZXcgUHJvbWlzZShmdW5jdGlvbihlKXtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlKCl9LDIwKX0pLGQ9bHkoYSkudGhlbihmdW5jdGlvbihlKXtiLkg9bmV3IGp5KGUpO215KGIsZSl9KS5jYXRjaChmdW5jdGlvbigpe2IuSD1uZXcga3koNCxiLmluaXRUaW1lKX0pO3RoaXMuSz1Qcm9taXNlLnJhY2UoW2MsZF0pfSxteT1mdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGQpe2QmJmQuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGVjaGFuZ2UiLGZ1bmN0aW9uKCl7aWYoZC5zdGF0ZT09PSJyZWR1bmRhbnQiKXt2YXIgZT1iLmFjdGl2ZTtlJiZlLnN0YXRlIT09InJlZHVuZGFudCJ8fChhLkg9bmV3IGt5KDEwLGEuaW5pdFRpbWUpKX19KX07YyhiLmFjdGl2ZSk7YyhiLndhaXRpbmcpO2MoYi5pbnN0YWxsaW5nKTsKYi5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGVmb3VuZCIsZnVuY3Rpb24oKXtjKGIuaW5zdGFsbGluZyl9KX07bnkucHJvdG90eXBlLmRlbGVnYXRlPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzO3RoaXMuSy50aGVuKGZ1bmN0aW9uKCl7ZC5ILmlvKGEsYixjKX0pfTtueS5wcm90b3R5cGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gMn07CnZhciBseT1mdW5jdGlvbihhKXt2YXIgYixjPUxmKDExKTtjPUxmKDEwKTtiPWM7dmFyIGQ9e3Njb3BlOihUYihhLmhyZWYsIi8iKT9hLmhyZWYuc2xpY2UoMCwtMSk6YS5ocmVmKSsiL18vc2VydmljZV93b3JrZXIifTtiJiYoZC51cGRhdGVWaWFDYWNoZT0iYWxsIik7dmFyIGUsZj1veShhLGIpLGc9bmV3IE1hcChbWyJwYXRoIixhLnBhdGhuYW1lXV0pLGg9SnAoa2MoZikudG9TdHJpbmcoKSk7ZT1McChoLnprLGgucGFyYW1zLGguZnJhZ21lbnQsZyk7dmFyIGw9SWMoKSxuPWtjKGUpO3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLGQpfWNhdGNoKHApe3RyeXtyZXR1cm4gbC5yZWdpc3RlcihuLnRvU3RyaW5nKCksZCl9Y2F0Y2gocSl7cmV0dXJuIFByb21pc2UucmVqZWN0KHEpfX19OwpmdW5jdGlvbiBveShhLGIpe2Zvcih2YXIgYz1LcChpeSksZD1hLnBhdGhuYW1lLnNwbGl0KCIvIikuZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBoLmxlbmd0aD4wfSksZT1bXS5jb25jYXQodyhkKSxbIl8iLCJzZXJ2aWNlX3dvcmtlciIsYiwic3cuanMiXSksZj1tKGUpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWM9TXAoYyxnLnZhbHVlKTtyZXR1cm4gY307ZnVuY3Rpb24gcHkoYSl7dmFyIGI9bm0oam0uYmEuT2gpLGM9Yj09bnVsbD92b2lkIDA6YlthXTtjfHxhIT09ImxpdGUifHwoYz1iPT1udWxsP3ZvaWQgMDpiLmZ1bGwpO3JldHVybiBjfXZhciBxeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9cHkoImZ1bGwiKTtkP2QuZGVsZWdhdGUoYSxiLGMpOmMoe2ZhaWx1cmVUeXBlOjE2fSl9O2Z1bmN0aW9uIHJ5KGEsYixjLGQsZSl7cXkoe2NvbW1hbmRUeXBlOjAscGFyYW1zOnt1cmw6YSxtZXRob2Q6MSx0ZW1wbGF0ZXM6Yixib2R5OiIiLHByb2Nlc3NSZXNwb25zZTohMSxlbmNyeXB0aW9uS2V5U3RyaW5nOmUsc29SZWZlcnJlcjpBLmxvY2F0aW9uLmhyZWZ9fSxjLGZ1bmN0aW9uKGYpe2QoZi5mYWlsdXJlVHlwZSxmLmRhdGEpfSl9O3ZhciBEeT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPTA7dGhpcy5LPSExO00oNDYyKSYmVW0oImZzIixmdW5jdGlvbigpe3JldHVybiBhLkg+MCYmYS5IPDU/U3RyaW5nKGEuSCk6dm9pZCAwfSwhMSl9LEV5O2Z1bmN0aW9uIEZ5KGEsYil7RXl8fChFeT1uZXcgRHkpO3ZhciBjPUV5O00oNDYyKSYmZm4uSyYmKGI9PT0iZ3RtLmZvcm1TdWJtaXQifHxiPT09ImZvcm1fc3VibWl0IiYmSWYoNDUpKSYmKGE9PT0xfHxjLkspJiYoYy5LPSEwLGMuSD1hLGEhPT01P1ZtKCJmcyIpOlFtLkguZnM9ITEpfTt2YXIgR3k9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5kYSk9PT1YLlYuS2Epe3ZhciBiPWZ1KGEpO2lmKCFNKDQyNykmJihqcChhLGIpfHxRKGEsSC5KLmhkKSkmJlhvKGZwKSl7dmFyIGM9bHAoYSxiKTtpZihjKXt2YXIgZD1ObSg2OSxjKTtUbChkLGEsNjkpO1luKHtkZXN0aW5hdGlvbklkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQsZW5kcG9pbnQ6NjksZXZlbnRJZDphLk0uZXZlbnRJZCxwcmlvcml0eUlkOmEuTS5wcmlvcml0eUlkfSxkKX19dmFyIGU9eWIoYS5NLm9uU3VjY2Vzcyk/YS5NLm9uU3VjY2Vzczp4YjskdShhLGIpO2UoKX19O3ZhciBIeT17WDp7V3E6MCxFazoxLFpnOjIsWGs6MyxtaTo0LFZrOjUsV2s6NixZazo3LG5pOjgsdG06OSxzbToxMCxUaToxMSx2bToxMixCaDoxMyxFbToxNCxpajoxNSxTcToxNixqZDoxNyx1ajoxOCx2ajoxOSx3ajoyMCxDbjoyMSx4ajoyMn19O0h5LlhbSHkuWC5XcV09IlJFU0VSVkVEX1pFUk8iO0h5LlhbSHkuWC5Fa109IkFEU19DT05WRVJTSU9OX0hJVCI7SHkuWFtIeS5YLlpnXT0iQ09OVEFJTkVSX0VYRUNVVEVfU1RBUlQiO0h5LlhbSHkuWC5Ya109IkNPTlRBSU5FUl9TRVRVUF9FTkQiO0h5LlhbSHkuWC5taV09IkNPTlRBSU5FUl9TRVRVUF9TVEFSVCI7SHkuWFtIeS5YLlZrXT0iQ09OVEFJTkVSX0JMT0NLSU5HX0VORCI7SHkuWFtIeS5YLldrXT0iQ09OVEFJTkVSX0VYRUNVVEVfRU5EIjtIeS5YW0h5LlguWWtdPSJDT05UQUlORVJfWUlFTERfRU5EIjtIeS5YW0h5LlgubmldPSJDT05UQUlORVJfWUlFTERfU1RBUlQiO0h5LlhbSHkuWC50bV09IkVWRU5UX0VYRUNVVEVfRU5EIjsKSHkuWFtIeS5YLnNtXT0iRVZFTlRfRVZBTFVBVElPTl9FTkQiO0h5LlhbSHkuWC5UaV09IkVWRU5UX0VWQUxVQVRJT05fU1RBUlQiO0h5LlhbSHkuWC52bV09IkVWRU5UX1NFVFVQX0VORCI7SHkuWFtIeS5YLkJoXT0iRVZFTlRfU0VUVVBfU1RBUlQiO0h5LlhbSHkuWC5FbV09IkdBNF9DT05WRVJTSU9OX0hJVCI7SHkuWFtIeS5YLmlqXT0iUEFHRV9MT0FEIjtIeS5YW0h5LlguU3FdPSJQQUdFVklFVyI7SHkuWFtIeS5YLmpkXT0iU05JUFBFVF9MT0FEIjtIeS5YW0h5LlgudWpdPSJUQUdfQ0FMTEJBQ0tfRVJST1IiO0h5LlhbSHkuWC52al09IlRBR19DQUxMQkFDS19GQUlMVVJFIjtIeS5YW0h5Llgud2pdPSJUQUdfQ0FMTEJBQ0tfU1VDQ0VTUyI7SHkuWFtIeS5YLkNuXT0iVEFHX0VYRUNVVEVfRU5EIjtIeS5YW0h5LlgueGpdPSJUQUdfRVhFQ1VURV9TVEFSVCI7dmFyIEl5PXt9O0l5Llg9SHkuWDt2YXIgSnk9e1J1OiJMIixYcToiUyIsa3Y6IlkiLFJ0OiJCIixudToiRSIsTnU6IkkiLGZ2OiJUQyIsdnU6IkhUQyIsb3U6IkYiLE11OiJDIn0sS3k9e1hxOiJTIixsdToiViIsYXU6IkUiLGR2OiJ0YWcifSxMeT17fSxNeT0oTHlbSXkuWC52al09IjYiLEx5W0l5Llgud2pdPSI1IixMeVtJeS5YLnVqXT0iNyIsTHkpO2Z1bmN0aW9uIE55KGEpe3ZhciBiPUUoNSksYz1OdW1iZXIoYS5ldmVudElkKSxkPU51bWJlcihhLnRhZ0lkKTtyZXR1cm4oU2IoYiwiR1RNLSIpP2I6IkdUTS0iK2IpKyI6IisoQWIoYyk/YysiOiI6IiIpKyhBYihkKT9kKyI6IjoiIikrYS5zdGFnZX07ZnVuY3Rpb24gT3koKXt2YXIgYT1yZCgpO3JldHVybiEhKGEmJmEubWFyayBpbnN0YW5jZW9mIEZ1bmN0aW9uJiZhLm1lYXN1cmUgaW5zdGFuY2VvZiBGdW5jdGlvbiYmYS5jbGVhck1lYXN1cmVzIGluc3RhbmNlb2YgRnVuY3Rpb24mJmEuY2xlYXJNYXJrcyBpbnN0YW5jZW9mIEZ1bmN0aW9uKX07dmFyIFB5PWZ1bmN0aW9uKCl7dGhpcy5IPXt9fSxReTtmdW5jdGlvbiBSeSgpe1F5fHwoUXk9bmV3IFB5KTtyZXR1cm4gUXl9ZnVuY3Rpb24gU3koYSl7dmFyIGI9UnkoKSxjPU55KGEpO3JldHVybiBiLkhbY119ZnVuY3Rpb24gVHkoYSxiKXt2YXIgYzthOnt2YXIgZD1SeSgpO2lmKE95KCkpe3ZhciBlPU55KGEpLGYsZztpZihmPShnPXJkKCkpPT1udWxsP3ZvaWQgMDpnLm1hcmsoZSxiKSl7Yz1kLkhbZV09ZjticmVhayBhfX1jPXZvaWQgMH1yZXR1cm4gY307ZnVuY3Rpb24gVXkoYSxiKXtpZihPeSgpKXthLmVudHJ5PU55KGEpO3ZhciBjPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYSk7Yy5zdGFnZT1iO2RlbGV0ZSBjLnNlbnQ7dmFyIGQ9U3koYj09PUl5LlguamQ/e3N0YWdlOkl5LlguamR9OmMpLGU9U3koYSk7aWYoZCYmZSYmIShkLnN0YXJ0VGltZT5lLnN0YXJ0VGltZSkpe2Muc3RhZ2U9YisiOiIrYS5zdGFnZTt2YXIgZj1OeShjKSxnPXtzdGFydDpkLm5hbWUsZW5kOmUubmFtZX0saCxsO3JldHVybihsPShoPXJkKCkpPT1udWxsP3ZvaWQgMDpoLm1lYXN1cmUoZixnKSk9PW51bGw/dm9pZCAwOmwuZHVyYXRpb259fX07dmFyIFd5PWZ1bmN0aW9uKCl7dmFyIGE9NTtWeS5Sbz4wJiYoYT1WeS5Sbyk7dGhpcy5LPWE7dGhpcy5IPTA7dGhpcy5OPVtdfSxYeT1mdW5jdGlvbihhKXtyZXR1cm4gYS5IPGEuSz8hMTpOYigpLWEuTlthLkglYS5LXTwxRTN9LFl5PWZ1bmN0aW9uKGEpe3ZhciBiPWEuSCsrJWEuSzthLk5bYl09TmIoKX07dmFyIFZ5PXtSbzpOZigzLDApfSwkeT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy55YT1bXTt0aGlzLkg9dm9pZCAwO3RoaXMuWj17fTt0aGlzLks9dm9pZCAwO3RoaXMuamE9bmV3IFd5O3RoaXMuTGE9MUUzO3RoaXMuUj10aGlzLk49ITE7dGhpcy5mYT1EYigpO1p5KHRoaXMsZnVuY3Rpb24oKXt2YXIgYj1bWyJ2IiwiMyJdLFsidCIsInQiXSxbInBpZCIsU3RyaW5nKGEuZmEpXV0sYz1kdSgpO2MmJmIucHVzaChbImd0bSIsY10pO3JldHVybiBifSk7Y2QoZnVuY3Rpb24oKXthLmZhPURiKCl9LDg2NEU1KX0sWnk9ZnVuY3Rpb24oYSxiKXthLnlhLnB1c2goYil9LGF6PWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLkg7aWYoZD09PXZvaWQgMClpZihjKWQ9cmooKTtlbHNlIHJldHVybiIiO2Zvcih2YXIgZT1bZmsoImh0dHBzOi8vIitFKDIxKSksIi9hIiwiP2lkPSIrRSg1KV0sZj1tKGEueWEpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWZvcih2YXIgaD1nLnZhbHVlLGw9Cmgoe2V2ZW50SWQ6ZCx0ZjohIWJ9KSxuPW0obCkscD1uLm5leHQoKTshcC5kb25lO3A9bi5uZXh0KCkpe3ZhciBxPW0ocC52YWx1ZSkscj1xLm5leHQoKS52YWx1ZSx0PXEubmV4dCgpLnZhbHVlO2UucHVzaCgiJiIrcisiPSIrdCl9ZS5wdXNoKCImej0wIik7cmV0dXJuIGUuam9pbigiIil9LGJ6PWZ1bmN0aW9uKGEpe2lmKCRrKDI2KSYmKGEuSyYmKEEuY2xlYXJUaW1lb3V0KGEuSyksYS5LPXZvaWQgMCksYS5IIT09dm9pZCAwJiZhLlIpKXt2YXIgYj1sbyhjby5pYS5aYik7aWYoZ28oYikpYS5OfHwoYS5OPSEwLGlvKGIsZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCBieihhKX0pKTtlbHNlIGlmKGEuWlthLkhdfHxYeShhLmphKXx8YS5MYS0tPD0wKVAoMSksYS5aW2EuSF09ITA7ZWxzZXtZeShhLmphKTt2YXIgYz1heihhLCEwKTtYbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6YS5IfSxjKTthLlI9ITE7YS5OPSExfX19LGN6PWZ1bmN0aW9uKGEpe2EuS3x8KGEuSz0KQS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYnooYSl9LDUwMCkpfSxlej1mdW5jdGlvbihhKXt2YXIgYj1kejtiLlpbYV18fChhIT09Yi5IJiYoYnooYiksYi5IPWEpLGIuUj0hMCxjeihiKSxheihiKS5sZW5ndGg+PTIwMjImJmJ6KGIpKX0sZHo7ZnVuY3Rpb24gZnooYSl7Z3ooKTtaeShkeixhKX1mdW5jdGlvbiBoeigpe3ZhciBhO2E9YT09PXZvaWQgMD8hMTphO2d6KCk7dmFyIGI9YSxjPWR6O2I9Yj09PXZvaWQgMD8hMTpiO2lmKGZuLk4mJiRrKDI2KSl7dmFyIGQ9YXooYywhMCwhMCk7Yj9Wbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6Yy5IfSxkKTpYbih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2LGV2ZW50SWQ6Yy5IfSxkKX19ZnVuY3Rpb24gZ3ooKXtkenx8KGR6PW5ldyAkeSl9O2Z1bmN0aW9uIGl6KCl7ZnVuY3Rpb24gYShjLGQpe3ZhciBlPXdiKHJiW2RdfHxbXSk7ZSYmYi5wdXNoKFtjLGVdKX12YXIgYj1bXTthKCJ1IiwiR1RNIik7YSgidXQiLCJUQUdHSU5HIik7YSgiaCIsIkhFQUxUSCIpO3JldHVybiBifTt2YXIgano9Imh0dHBzOi8vIitFKDIxKSxrej1mdW5jdGlvbigpe3RoaXMuTj0hMTt0aGlzLlI9W107dGhpcy5aPVtdO3RoaXMuSD17VEM6MCxIVEM6MH07dGhpcy5LPXt9fSxsej1mdW5jdGlvbihhLGIsYyxkKXthLktbYl18fChhLktbYl09e30pO2EuS1tiXVtjXT1kfSxvej1mdW5jdGlvbihhKXt2YXIgYj0iIixjPSIiLGQ9bXooKTtBYihkKSYmKGEuSC5JPU1hdGguZmxvb3IoZCkpO2M9bnooYS5ILEp5KS50b1N0cmluZygpO2Zvcih2YXIgZT1tKE9iamVjdC5rZXlzKGEuSykpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXt2YXIgZz1mLnZhbHVlLGg9YS5LW2ddLm5hbWUsbD0iIixuPW56KGEuS1tnXSxLeSk7biYmKGw9aCsiLiIrbi50b1N0cmluZygpLGIrPSJ+IitsKX12YXIgcD0ifkFXQ1QiK2EuUi5qb2luKCIuIikscT0ifkdBIithLlouam9pbigiLiIpLHI9IiZjY2lkPSIrdmsoKS50b1N0cmluZygpKyImY2lkPSIrRSg1KS50b1N0cmluZygpKyImbD0iK2MrYisoYS5SLmxlbmd0aD8KcDoiIikrKGEuWi5sZW5ndGg/cToiIik7aWYoTSgyMTQpKXt2YXIgdCx1PSh0PXJkKCkpPT1udWxsP3ZvaWQgMDp0LmdldEVudHJpZXNCeU5hbWUoS2MpLm1hcChmdW5jdGlvbih2KXtyZXR1cm4gU3RyaW5nKHYuZHVyYXRpb24pfSkuam9pbigiLiIpO3UmJihyKz0iflNTIit1KX1yZXR1cm4gcn0scHo9ZnVuY3Rpb24oYSxiKXtpZighYi5zdGFnZXx8YS5OfHwhT3koKXx8U3koYikpcmV0dXJuITE7dmFyIGMsZD0oYz1yZCgpKT09bnVsbD92b2lkIDA6Yy50aW1lT3JpZ2luO2lmKCFBYihkKSlhLk49ITA7ZWxzZSBpZihBYigkaygyNSkpJiYhU3koe3N0YWdlOkl5LlguamR9KSYmIWEuTiYmT3koKSl0cnl7dmFyIGU9TnVtYmVyKCRrKDI1KSk7VHkoe3N0YWdlOkl5LlguamR9LHtzdGFydFRpbWU6TWF0aC5tYXgoZS1kLDApfSk7VHkoe3N0YWdlOkl5LlguaWp9LHtzdGFydFRpbWU6MH0pO3ZhciBmPVV5KHtzdGFnZTpJeS5YLmpkfSxJeS5YLmlqKTtmJiYoYS5ILkw9TWF0aC5mbG9vcihmKSl9Y2F0Y2goZyl7YS5OPQohMH1pZihhLk4pcmV0dXJuITE7dHJ5e2lmKCFUeShiKSlyZXR1cm4hMX1jYXRjaChnKXtyZXR1cm4gYS5OPSEwLCExfXJldHVybiEwfSxxej1mdW5jdGlvbihhLGIsYyl7aWYocHooYSxiKSl0cnl7dmFyIGQ9VXkoYixjKTtpZihkKXJldHVybiBNYXRoLmZsb29yKGQpfWNhdGNoKGUpe2EuTj0hMH19LHN6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKTtweihhLHtzdGFnZTpJeS5YLm1pfSl9LHR6PWZ1bmN0aW9uKCl7dmFyIGE9cnooKSxiPXF6KGEse3N0YWdlOkl5LlguWGt9LEl5LlgubWkpO2IhPT12b2lkIDAmJihhLkguUz1iKX0sdXo9ZnVuY3Rpb24oKXt2YXIgYT1yeigpO3B6KGEse3N0YWdlOkl5Llgubml9KX0sdno9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yeigpO3B6KGMse3N0YWdlOkl5LlguQmgsZXZlbnRJZDphfSk7Yy5LW2FdJiZjLktbYV0ubmFtZXx8bHooYyxhLCJuYW1lIixTYihiLCJndG0uIik/YjoiKiIpfSx3ej1mdW5jdGlvbihhKXt2YXIgYj1yeigpLGM9cXooYix7c3RhZ2U6SXkuWC52bSwKZXZlbnRJZDphfSxJeS5YLkJoKTtjIT09dm9pZCAwJiZseihiLGEsIlMiLGMpfSx5ej1mdW5jdGlvbihhLGIpe3ZhciBjPXJ6KCksZD1xeihjLHtzdGFnZTpJeS5YLnRtLGV2ZW50SWQ6YX0sSXkuWC5CaCk7ZCE9PXZvaWQgMCYmbHooYyxhLCJFIixkKTtpZihiPT09Imd0bS5sb2FkIil7dmFyIGU9cXooYyx7c3RhZ2U6SXkuWC5Xa30sSXkuWC5aZyk7ZSE9PXZvaWQgMCYmKGMuSC5FPWUpO2lvKGxvKGNvLmlhLlpiKSxmdW5jdGlvbigpe2lmKCFjLk4mJk95KCkmJkUoNSkpe3ZhciBmPXh6KCk7ZiE9PXZvaWQgMCYmKGMuSC5GPU1hdGguZmxvb3IoZikpO3RyeXtmb3IodmFyIGc9aXooe2V2ZW50SWQ6MCx0ZjohMX0pLGg9W10sbD1tKGcpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1tKG4udmFsdWUpLHE9cC5uZXh0KCkudmFsdWUscj1wLm5leHQoKS52YWx1ZTtoLnB1c2goIiYiK3ErIj0iK3IpfXZhciB0PUNwKCksdT1bW2ZrKGp6KSwiL2E/dj0zJnQ9bCIsIiZwaWQ9IisKRGIoKS50b1N0cmluZygpLCImcnY9IitFKDE0KSx0PyImdGFnX2V4cD0iK3Q6IiIsaC5qb2luKCIiKV0uam9pbigiIiksIiZndG09IixkdSgpLG96KGMpXS5qb2luKCIiKTtpZih1Lmxlbmd0aD4yMDIyKXt2YXIgdj1NYXRoLm1heCh1Lmxhc3RJbmRleE9mKCIuVFMiLDIwMjIpLHUubGFzdEluZGV4T2YoIn4iLDIwMjIpKTt1PXUuc2xpY2UoMCx2KX1Ybih7ZGVzdGluYXRpb25JZDpFKDUpLGVuZHBvaW50OjU2fSx1KX1jYXRjaCh4KXt9fX0pfX0seno7ZnVuY3Rpb24gcnooKXt6enx8KHp6PW5ldyBreik7cmV0dXJuIHp6fWZ1bmN0aW9uIG16KCl7dHJ5e3ZhciBhO3JldHVybigoYT1yZCgpKT09bnVsbD92b2lkIDA6YS5nZXRFbnRyaWVzQnlUeXBlKCJuYXZpZ2F0aW9uIilbMF0pLmRvbUludGVyYWN0aXZlfWNhdGNoKGIpe319CmZ1bmN0aW9uIG56KGEsYil7cmV0dXJuIE9iamVjdC5rZXlzKGIpLm1hcChmdW5jdGlvbihjKXtyZXR1cm4gYltjXX0pLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4gYVtjXSE9PXZvaWQgMH0pLm1hcChmdW5jdGlvbihjKXtyZXR1cm4oIiIrKGM9PT0idGFnIj8iIjpjKSkuY29uY2F0KGFbY10udG9TdHJpbmcoKSl9KS5qb2luKCIuIil9ZnVuY3Rpb24gQXooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5LlguRW0sZXZlbnRJZDphfSxJeS5YLmpkKTtjIT09dm9pZCAwJiZiLloucHVzaChjKX1mdW5jdGlvbiBCeihhKXt2YXIgYj1yeigpLGM9cXooYix7c3RhZ2U6SXkuWC5FayxldmVudElkOmF9LEl5LlguamQpO2MhPT12b2lkIDAmJmIuUi5wdXNoKGMpfWZ1bmN0aW9uIEN6KGEpe3ZhciBiPXJ6KCk7cHooYix7c3RhZ2U6SXkuWC5UaSxldmVudElkOmF9KX0KZnVuY3Rpb24gRHooYSl7dmFyIGI9cnooKSxjPXF6KGIse3N0YWdlOkl5Llguc20sZXZlbnRJZDphfSxJeS5YLlRpKTtjIT09dm9pZCAwJiZseihiLGEsIlYiLGMpfWZ1bmN0aW9uIHh6KCl7dHJ5e3ZhciBhLGI7cmV0dXJuKGI9KGE9cmQoKSk9PW51bGw/dm9pZCAwOmEuZ2V0RW50cmllc0J5VHlwZSgicGFpbnQiKS5maW5kKGZ1bmN0aW9uKGMpe3JldHVybiBjLm5hbWU9PT0iZmlyc3QtY29udGVudGZ1bC1wYWludCJ9KSk9PW51bGw/dm9pZCAwOmIuc3RhcnRUaW1lfWNhdGNoKGMpe319ZnVuY3Rpb24gRXooYSxiKXt2YXIgYz1yeigpO3B6KGMse3N0YWdlOkl5LlgueGosZXZlbnRJZDphLmlkLHRhZ0lkOk51bWJlcihiW0dmLnlqXSl9KX0KZnVuY3Rpb24gRnooYSxiLGMpe3ZhciBkPXJ6KCksZT1kbihiKSxmPU51bWJlcihiW0dmLnlqXSksZz1xeihkLHtzdGFnZTpjLGV2ZW50SWQ6YS5pZCx0YWdJZDpmfSxJeS5YLnhqKTtpZihnIT09dm9pZCAwJiZkLktbYS5pZF0pe3ZhciBoPWQuS1thLmlkXS50YWd8fCIiLGwsbj0obD1NeVtjXSkhPW51bGw/bDoiMSIscD1uZXcgUmVnRXhwKCJUU1xcZCIrZSsiLlRJIitmKSxxPSJUUyIrbitlKyIuVEkiK2YrIi5URSIrZztoLnNlYXJjaChwKT49MD9uIT09IjEiJiZseihkLGEuaWQsInRhZyIsaC5yZXBsYWNlKHAscS5yZXBsYWNlKCIuVEUiK2csIiIpKSk6KGx6KGQsYS5pZCwidGFnIiwoaD9oKyIuIjoiIikrcSksZT09PSJodG1sIiYmKGQuSC5IVEMrPTEpLGQuSC5UQys9MSl9fTt2YXIgS3o9e2dqOnticDoiMSIsdXE6IjIiLFZxOiIzIn19Owp2YXIgTHo9e30sTXo9T2JqZWN0LmZyZWV6ZSgoTHpbRi5ELmZoXT0xLEx6W0YuRC5naF09MSxMeltGLkQuQmRdPTEsTHpbRi5ELkNkXT0xLEx6W0YuRC5SY109MSxMeltGLkQuc2ldPTEsTHpbRi5ELnVpXT0xLEx6W0YuRC5DbF09MSxMeltGLkQuaWhdPTEsTHpbRi5ELkNmXT0xLEx6W0YuRC5EZl09MSxMeltGLkQuRWZdPTEsTHpbRi5ELkhhXT0xLEx6W0YuRC5GZl09MSxMeltGLkQuRmRdPTEsTHpbRi5ELnVjXT0xLEx6W0YuRC5IZF09MSxMeltGLkQuTGJdPTEsTHpbRi5ELkNiXT0xLEx6W0YuRC5UYl09MSxMeltGLkQubmJdPTEsTHpbRi5ELmViXT0xLEx6W0YuRC5HZV09MSxMeltGLkQua2hdPTEsTHpbRi5ELk9hXT0xLEx6W0YuRC5PcF09MSxMeltGLkQuU3BdPTEsTHpbRi5ELkllXT0xLEx6W0YuRC5HaV09MSxMeltGLkQuUWZdPTEsTHpbRi5ELlRhXT0xLEx6W0YuRC5ZY109MSxMeltGLkQuWmNdPTEsTHpbRi5ELnRiXT0xLEx6W0YuRC5RZF09MSxMeltGLkQuUmRdPTEsTHpbRi5ELlNkXT0KMSxMeltGLkQuTmVdPTEsTHpbRi5ELnphXT0xLEx6W0YuRC5VYV09MSxMeltGLkQuV2xdPTEsTHpbRi5ELlhsXT0xLEx6W0YuRC5ZbF09MSxMeltGLkQuWmxdPTEsTHpbRi5ELldiXT0xLEx6W0YuRC5UZF09MSxMeltGLkQuWGJdPTEsTHpbRi5ELmRkXT0xLEx6W0YuRC5VZF09MSxMeltGLkQuUWVdPTEsTHpbRi5ELlBhXT0xLEx6W0YuRC55Y109MSxMeltGLkQuVmRdPTEsTHpbRi5ELnpjXT0xLEx6W0YuRC5BY109MSxMeltGLkQuZmJdPTEsTHpbRi5ELlFhXT0xLEx6KSksTno9e30sT3o9KE56W0YuRC5VY109MSxOeltGLkQuUHBdPTEsTnpbRi5ELkhlXT0xLE56W0YuRC5yaV09MSxOei5vcmVmPTEsTnopO3ZhciBQeixRejsKZnVuY3Rpb24gUnooYSxiKXt2YXIgYz1hW0dmLlliXSxkPWImJmIuZXZlbnQ7aWYoIWMpdGhyb3cgRXJyb3IoIkVycm9yOiBObyBmdW5jdGlvbiBuYW1lIGdpdmVuIGZvciBmdW5jdGlvbiBjYWxsLiIpO3ZhciBlPVF6W2NdLGY9e30sZztmb3IoZyBpbiBhKWEuaGFzT3duUHJvcGVydHkoZykmJihTYihnLCJ2dHBfIik/ZltlIT09dm9pZCAwP2c6Zy5zdWJzdHJpbmcoNCldPWFbZ106Zz09PUdmLkZxLnRvU3RyaW5nKCkmJihmW2UhPT12b2lkIDA/InZ0cF9ndG1HZW5lcmF0ZWRUYWdnaW5nTWV0YWRhdGEiOmddPWFbZ10pKTtJZig2MSkmJmUmJihmLnZ0cF9leHRyYUV4cGVyaW1lbnRJZHM9ITApO2UmJmQmJmQuY2FjaGVkTW9kZWxWYWx1ZXMmJihmLnZ0cF9ndG1DYWNoZWRWYWx1ZXM9ZC5jYWNoZWRNb2RlbFZhbHVlcyk7YiYmZSYmKGYudnRwX2d0bUVudGl0eUluZGV4PWIuaW5kZXgsZi52dHBfZ3RtRW50aXR5TmFtZT1iLm5hbWUpO3JldHVybiBlIT09dm9pZCAwP2UoZik6UHooYyxmLApiKX12YXIgVHo9ZnVuY3Rpb24oKXt2YXIgYT1TejtpZihNKDU4NSkmJmZuLkspe3ZhciBiPUUoNSkuaW5kZXhPZigiR1RNLSIpPT09MCYmSWYoNjIpLGMsZD0oKGM9RmsoKSk9PW51bGw/dm9pZCAwOmMuc291cmNlKT09PTE7YiYmIWR8fGEuSHx8KGEuSD0hMCxVbSgiYWJsIiwiMSIpLHRvKCkpfX0sU3o9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPSExfTt2YXIgVXo9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5IPWE7dGhpcy5pbmRleD1iO3RoaXMudGFncz1jO3RoaXMubWFjcm9zPWQ7dGhpcy5uYW1lPVN0cmluZyh0aGlzLkhbR2YuUm1dfHwiIil9OwpVei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiKXtpZighYlt0aGlzLmluZGV4XSYmIWEuaXNCbG9ja2VkKHRoaXMuSCkpe2JbdGhpcy5pbmRleF09ITA7dGhpcy5IW0dmLnBsLnRvU3RyaW5nKCldJiZUeigpO3ZhciBjPXRoaXMubmFtZSxkO3RyeXt2YXIgZT17fSxmO2ZvcihmIGluIHRoaXMuSCl0aGlzLkguaGFzT3duUHJvcGVydHkoZikmJihlW2ZdPWVsKHRoaXMuSFtmXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxiKSk7ZS52dHBfZ3RtRXZlbnRJZD1hLmlkO2EucHJpb3JpdHlJZCYmKGUudnRwX2d0bVByaW9yaXR5SWQ9YS5wcmlvcml0eUlkKTt2YXIgZz1kPVJ6KGUse2V2ZW50OmEsaW5kZXg6dGhpcy5pbmRleCx0eXBlOjIsbmFtZTpjfSk7ZVtHZi5aa10mJnR5cGVvZiBnPT09InN0cmluZyImJihnPWVbR2YuWmtdPT09MT9nLnRvTG93ZXJDYXNlKCk6Zy50b1VwcGVyQ2FzZSgpKTtlLmhhc093blByb3BlcnR5KEdmLmFoKSYmKGc9WWYoMTgpP2VbR2YuYWhdPT09MT8KVmYoZywiUEVSSU9EIik6ZVtHZi5haF09PT0yP1ZmKGcsIkNPTU1BIik6VmYoZywiQVVUT01BVElDIik6ZVtHZi5haF09PT0xP1ZmKGcsIlBFUklPRCIpOlZmKGcsIkNPTU1BIikpO2UuaGFzT3duUHJvcGVydHkoR2YuYmwpJiZnPT09bnVsbCYmKGc9ZVtHZi5ibF0pO2UuaGFzT3duUHJvcGVydHkoR2YuaWwpJiZnPT09dm9pZCAwJiYoZz1lW0dmLmlsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5lcCkmJihnPUpiKGcpKTtlLmhhc093blByb3BlcnR5KEdmLmZsKSYmZz09PSEwJiYoZz1lW0dmLmZsXSk7ZS5oYXNPd25Qcm9wZXJ0eShHZi5hbCkmJmc9PT0hMSYmKGc9ZVtHZi5hbF0pO2Q9Z31jYXRjaChoKXthLmxvZ01hY3JvRXJyb3ImJmEubG9nTWFjcm9FcnJvcihoLE51bWJlcih0aGlzLmluZGV4KSxjKSxkPSExfWJbdGhpcy5pbmRleF09ITE7cmV0dXJuIGR9fTtVei5wcm90b3R5cGUuRmc9ZnVuY3Rpb24oKXtyZXR1cm4gbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSx0aGlzLkgpfTt2YXIgVno9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuSD1hO3RoaXMudGFncz1iO3RoaXMubWFjcm9zPWN9O1Z6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIpe3RyeXtmb3IodmFyIGM9e30sZD1tKE9iamVjdC5rZXlzKHRoaXMuSCkpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKXt2YXIgZj1lLnZhbHVlO2NbZl09Zj09PSJmdW5jdGlvbiI/dGhpcy5IW2ZdOmVsKHRoaXMuSFtmXSxhLHRoaXMudGFncyx0aGlzLm1hY3JvcyxiKX1yZXR1cm4gY2woYyl9Y2F0Y2goZyl7SlNPTi5zdHJpbmdpZnkodGhpcy5IKX1yZXR1cm4gMn07VnoucHJvdG90eXBlLkZnPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sdGhpcy5IKX07dmFyIFd6PWZ1bmN0aW9uKGEsYil7dGhpcy5pbmRleD1iO3RoaXMuTj1bXTt0aGlzLlI9W107dGhpcy5LPVtdO3RoaXMuSD1bXTt0aGlzLm5hbWU9IiI7Zm9yKHZhciBjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPW0oZC52YWx1ZSksZj1lLm5leHQoKS52YWx1ZSxnPXlhKGUpLGg9ZixsPWc7aD09PSJpZiI/dGhpcy5OPWw6aD09PSJ1bmxlc3MiP3RoaXMuUj1sOmg9PT0iYWRkIj90aGlzLks9bDpoPT09ImJsb2NrIj90aGlzLkg9bDpoPT09InJ1bGVOYW1lIiYmKHRoaXMubmFtZT1sWzBdKX19OwpXei5wcm90b3R5cGUuZXZhbHVhdGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1Yeih0aGlzLGIpLGQ9W10sZT1bXTtjPyhkLnB1c2guYXBwbHkoZCx3KHRoaXMuSykpLGUucHVzaC5hcHBseShlLHcodGhpcy5IKSkpOmM9PT1udWxsJiZlLnB1c2guYXBwbHkoZSx3KHRoaXMuSCkpO3JldHVybntmaXJpbmdUYWdzOmQsYmxvY2tpbmdUYWdzOmV9fTsKdmFyIFh6PWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPW0oYS5OKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9YihkLnZhbHVlKTtpZihlPT09MClyZXR1cm4hMTtpZihlPT09MilyZXR1cm4gbnVsbH1mb3IodmFyIGY9bShhLlIpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXt2YXIgaD1iKGcudmFsdWUpO2lmKGg9PT0yKXJldHVybiBudWxsO2lmKGg9PT0xKXJldHVybiExfXJldHVybiEwfTtXei5wcm90b3R5cGUuZ2V0TmFtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5hbWV9O3ZhciBZej1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLklhPWE7dGhpcy5pbmRleD1iO3RoaXMudGFncz1jO3RoaXMubWFjcm9zPWQ7dGhpcy5PPVN0cmluZyh0aGlzLklhW0dmLlliXSk7dGhpcy5uYW1lPVN0cmluZyh0aGlzLklhW0dmLlJtXXx8IiIpO3RoaXMudGFnSWQ9TnVtYmVyKHRoaXMuSWFbR2YueWpdKX07Cll6LnByb3RvdHlwZS5ldmFsdWF0ZT1mdW5jdGlvbihhLGIsYyl7Yz1jPT09dm9pZCAwP3t9OmM7dmFyIGQsZT1jO2U9ZT09PXZvaWQgMD97fTplO3ZhciBmPXt9LGc7Zm9yKGcgaW4gdGhpcy5JYSl0aGlzLklhLmhhc093blByb3BlcnR5KGcpJiYoZltnXT1lbCh0aGlzLklhW2ddLGEsdGhpcy50YWdzLHRoaXMubWFjcm9zLFtdKSk7ZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGYsZSk7ZC52dHBfZ3RtVGFnSWQ9dGhpcy50YWdJZDt0aGlzLklhW0dmLnBsLnRvU3RyaW5nKCldJiZUeigpO1J6KGQse2V2ZW50OmEsaW5kZXg6dGhpcy5pbmRleCx0eXBlOjEsbmFtZTp0aGlzLm5hbWV9KX07WXoucHJvdG90eXBlLkZnPWZ1bmN0aW9uKCl7cmV0dXJuIG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sdGhpcy5JYSl9Owp2YXIgWno9ZnVuY3Rpb24oYSxiKXtpZihhLklhW0dmLnRuXSlyZXR1cm4gZWwoYS5JYVtHZi50bl0sYixhLnRhZ3MsYS5tYWNyb3MsW10pfSwkej1mdW5jdGlvbihhLGIpe2lmKGEuSWFbR2YuRG5dKXJldHVybiBlbChhLklhW0dmLkRuXSxiLGEudGFncyxhLm1hY3JvcyxbXSl9LGFBPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5JYVtHZi5jcF07aWYoYylyZXR1cm4gZWwoYyxiLGEudGFncyxhLm1hY3JvcyxbXSl9O1l6LnByb3RvdHlwZS5nZXRNZXRhZGF0YT1mdW5jdGlvbihhKXtyZXR1cm4gZWwodGhpcy5JYVtHZi5NRVRBREFUQV0sYSx0aGlzLnRhZ3MsdGhpcy5tYWNyb3MsW10pfTtZei5wcm90b3R5cGUuZ2V0TmFtZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm5hbWV9O3ZhciBiQT1mdW5jdGlvbigpe3RoaXMubWFjcm9zPVtdO3RoaXMucnVsZXM9W107dGhpcy5wcmVkaWNhdGVzPVtdO3RoaXMudGFncz1bXTt0aGlzLnZrPVtdfTtiQS5wcm90b3R5cGUuZ2V0UnVsZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ydWxlc307dmFyIGNBPW5ldyBiQTtmdW5jdGlvbiBkQShhLGIsYyxkKXt2YXIgZT1XYygpLGY7aWYoZT09PTEpYTp7dmFyIGc9RSgzKTtnPWcudG9Mb3dlckNhc2UoKTtmb3IodmFyIGg9Imh0dHBzOi8vIitnLGw9Imh0dHA6Ly8iK2csbj0xLHA9Qi5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IikscT0wO3E8cC5sZW5ndGgmJnE8MTAwO3ErKyl7dmFyIHI9cFtxXS5zcmM7aWYocil7cj1yLnRvTG93ZXJDYXNlKCk7aWYoci5pbmRleE9mKGwpPT09MCl7Zj0zO2JyZWFrIGF9bj09PTEmJnIuaW5kZXhPZihoKT09PTAmJihuPTIpfX1mPW59ZWxzZSBmPWU7cmV0dXJuKGY9PT0yfHxkfHwiaHR0cDoiIT09QS5sb2NhdGlvbi5wcm90b2NvbD9hOmIpK2N9O3ZhciBlQT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5LPXt9O3RoaXMuSD17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGEuSylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYS5LLGQpJiZjLnB1c2goZCsifiIrYS5LW2RdKTt2YXIgZT1bXSxmO2ZvcihmIGluIGEuSClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYS5ILGYpJiZlLnB1c2goZisifiIrYS5IW2ZdKTtiLnRmJiYoYS5LPXt9LGEuSD17fSk7dmFyIGc9W107Yy5sZW5ndGg+MCYmZy5wdXNoKFsiYmNzIixjLmpvaW4oIi4iKV0pO2UubGVuZ3RoPjAmJmcucHVzaChbImJldCIsZS5qb2luKCIuIildKTtyZXR1cm4gZ30pfSxmQTtmdW5jdGlvbiBnQSgpe2ZBfHwoZkE9bmV3IGVBKX07ZnVuY3Rpb24gaEEoYSxiLGMsZCxlKXtpZighRWsoYSkpe2QubG9hZEV4cGVyaW1lbnRzPXlqKCk7SGsoYSxkLGUpO3ZhciBmPWlBKGEpLGc9ZnVuY3Rpb24oKXtvaygpLmNvbnRhaW5lclthXSYmKG9rKCkuY29udGFpbmVyW2FdLnN0YXRlPTMpO2pBKCl9LGg9e2Rlc3RpbmF0aW9uSWQ6YSxlbmRwb2ludDowfTtpZihXaigpKXt2YXIgbD1YaigpLG49bCsiLyIra0EoZixhKTtabihoLG4sdm9pZCAwLGZ1bmN0aW9uKCl7bEEoYSxuLGwrIi8iK2YsaCxnKX0pfWVsc2V7dmFyIHA9U2IoYSwiR1RNLSIpLHE9ZGsoKSxyPWM/Ii9ndGFnL2pzIjoiL2d0bS5qcyIsdD1tQShiLHIrZixhKTtpZighdCl7dmFyIHU9RSgzKStyO3EmJktjJiZwJiYodT1LYy5yZXBsYWNlKC9eKD86aHR0cHM/OlwvXC8pPy9pLCIiKS5zcGxpdCgvWz8jXS8pWzBdKTt0PWRBKCJodHRwczovLyIsImh0dHA6Ly8iLHUrZil9Wm4oaCx0LHZvaWQgMCxnKX19fQpmdW5jdGlvbiBqQSgpe0trKCl8fEdiKExrKCksZnVuY3Rpb24oYSxiKXtuQShhLGIudHJhbnNwb3J0VXJsLGIuY29udGV4dCk7UCg5Mil9KX1mdW5jdGlvbiBuQShhLGIsYyxkKXtpZighR2soYSkpaWYoYy5sb2FkRXhwZXJpbWVudHN8fChjLmxvYWRFeHBlcmltZW50cz15aigpKSxLaygpKUprKGEsYixjLGQpO2Vsc2V7SWsoYSxjLGQpO3ZhciBlPXtkZXN0aW5hdGlvbklkOmEsZW5kcG9pbnQ6MH07aWYoV2ooKSl7dmFyIGY9WGooKSxnPSJndGQiK2lBKGEsITApLGg9ZisiLyIra0EoZyxhKTtabihlLGgsdm9pZCAwLGZ1bmN0aW9uKCl7bEEoYSxoLGYrIi8iK2csZSl9KX1lbHNle3ZhciBsPSIvZ3RhZy9kZXN0aW5hdGlvbiIraUEoYSwhMCksbj1tQShiLGwsYSk7bnx8KG49ZEEoImh0dHBzOi8vIiwiaHR0cDovLyIsRSgzKStsKSk7Wm4oZSxuKX19fQpmdW5jdGlvbiBsQShhLGIsYyxkLGUpe2lmKE0oNDEzKSl7Z0EoKTt2YXIgZj1mQTtpZihmbi5OKXt2YXIgZz1BLnBlcmZvcm1hbmNlLGg9LTE7aWYoZyYmZy5nZXRFbnRyaWVzQnlUeXBlKXt2YXIgbD1SaihiKS5ocmVmLG49Zy5nZXRFbnRyaWVzQnlOYW1lKGwpLnBvcCgpO2lmKCFuKWZvcih2YXIgcD1nLmdldEVudHJpZXNCeVR5cGUoInJlc291cmNlIikscT0wO3E8cC5sZW5ndGg7cSsrKXt2YXIgcj1wW3FdO2lmKHIubmFtZSYmci5uYW1lLmluZGV4T2YoYikhPT0tMSl7bj1yO2JyZWFrfX1uJiZuLnJlc3BvbnNlU3RhdHVzIT09dm9pZCAwJiYoaD1uLnJlc3BvbnNlU3RhdHVzKX1mLktbYV09aH1QKDE5MCk7dmFyIHQ9bm0oam0uYmEua2opfHx7fTt0W2FdPSEwO21tKGptLmJhLmtqLHQpO3ZhciB1PWMrKGMuaW5kZXhPZigiPyIpPT09LTE/Ij9mPTEiOiImZj0xIik7ZT9abihkLHUsdm9pZCAwLGUpOlpuKGQsdSl9ZWxzZSBlJiZlKCl9CmZ1bmN0aW9uIGlBKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9Ij9pZD0iK2VuY29kZVVSSUNvbXBvbmVudChhKSxkPUUoMTkpO2QhPT0iZGF0YUxheWVyIiYmKGMrPSImbD0iK2QpO3ZhciBlPVNiKGEsIkdUTS0iKTtpZighZXx8YiljKz0iJmN4PWMiO2UmJklmKDYyKSYmKGMrPSImZ29vZ2xlX29ubHk9dHJ1ZSIpO3ZhciBmPWMsZyxoPXtEbzpKZigxNSksSW86RSgxNCl9O2c9Q2YoaCk7Yz1mKygiJmd0bT0iK2cpO2RrKCkmJihjKz0iJnNpZ249IitBai5xaik7dmFyIGw9YyxuPUpmKDU0KTtpZihuPT09MSl7bCs9IiZmcHM9ZmMiO3ZhciBwPUUoNjApO3AmJihsKz0iJmdkZXY9IitwKX1lbHNlIG49PT0yJiYobCs9IiZmcHM9ZmUiKTtyZXR1cm4gbH0KZnVuY3Rpb24ga0EoYSxiKXtpZighTSg0MTMpfHwhWGooKSlyZXR1cm4gYTt2YXIgYz1FKDU4KTtpZighYylyZXR1cm4gUCgxODIpLGE7dHJ5e3ZhciBkPU5iKCksZT1FZihhLGMpLGY9TmIoKS1kO2dBKCk7dmFyIGc9ZkE7Zm4uTiYmKGcuSFtiXT1mKTtyZXR1cm4gZX1jYXRjaChoKXtyZXR1cm4gUCgxODMpLGF9fWZ1bmN0aW9uIG1BKGEsYixjKXtpZihhaygpJiZhKXt2YXIgZD1FKDU4KSxlPVhqKCk7aWYoZCYmZSl0cnl7dmFyIGY9TmIoKTtiPWUrIi8iK0VmKGIsZCk7dmFyIGc9TmIoKS1mO2dBKCk7dmFyIGg9ZkE7Zm4uTiYmKGguSFtjXT1nKX1jYXRjaChsKXtQKDE4Myl9cmV0dXJuIFlqKGEsYil9fTt2YXIgcEE9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuSz1uZXcgRmI7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLlI9e25hbWU6RSgxOSksc2V0OmZ1bmN0aW9uKGIsYyl7RWQoVmIoYixjKSxhLkgpO29BKGEpfSxnZXQ6ZnVuY3Rpb24oYil7cmV0dXJuIGEuZ2V0KGIsMil9LHJlc2V0OmZ1bmN0aW9uKCl7YS5LPW5ldyBGYjthLkg9e307b0EoYSl9fX07cEEucHJvdG90eXBlLmdldD1mdW5jdGlvbihhLGIpe3JldHVybiBiIT0yP3RoaXMuSy5nZXQoYSk6cUEodGhpcyxhKX07dmFyIHFBPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1iLnNwbGl0KCIuIik7Yz1jfHxbXTtmb3IodmFyIGU9YS5ILGY9MDtmPGQubGVuZ3RoO2YrKyl7aWYoZT09PW51bGwpcmV0dXJuITE7aWYoZT09PXZvaWQgMClicmVhaztlPWVbZFtmXV07aWYoYy5pbmRleE9mKGUpIT09LTEpcmV0dXJufXJldHVybiBlfTsKcEEucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMuTi5oYXNPd25Qcm9wZXJ0eShhKXx8KHRoaXMuSy5zZXQoYSxiKSxFZChWYihhLGIpLHRoaXMuSCksb0EodGhpcykpfTt2YXIgc0E9ZnVuY3Rpb24oKXtmb3IodmFyIGE9WyJndG0uYWxsb3dsaXN0IiwiZ3RtLmJsb2NrbGlzdCIsImd0bS53aGl0ZWxpc3QiLCJndG0uYmxhY2tsaXN0IiwidGFnVHlwZUJsYWNrbGlzdCJdLGI9ckEsYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLGU9Yi5nZXQoZCwxKTtpZihBcnJheS5pc0FycmF5KGUpfHxDZChlKSllPUVkKGUsbnVsbCk7Yi5OW2RdPWV9fSxvQT1mdW5jdGlvbihhLGIpe0diKGEuTixmdW5jdGlvbihjLGQpe2EuSy5zZXQoYyxkKTtFZChWYihjKSxhLkgpO0VkKFZiKGMsZCksYS5IKTtiJiZkZWxldGUgYS5OW2NdfSl9LHJBPW5ldyBwQSx0QT1yQS5SO2Z1bmN0aW9uIHVBKGEsYil7cmV0dXJuIHJBLmdldChhLGIpfQpmdW5jdGlvbiB2QShhLGIpe3ZhciBjPWI9PT12b2lkIDA/MjpiLGQ9ckEsZSxmPShjPT09dm9pZCAwPzI6YykhPT0xP3FBKGQsYSk6ZC5LLmdldChhKTtBZChmKT09PSJhcnJheSJ8fEFkKGYpPT09Im9iamVjdCI/ZT1FZChmLG51bGwpOmU9ZjtyZXR1cm4gZX07dmFyIHdBPW5ldyBSZWdFeHAoL14oLipcLik/KGdvb2dsZXx5b3V0dWJlfGJsb2dnZXJ8d2l0aGdvb2dsZSkoXC5jb20/KT8oXC5bYS16XXsyfSk/XC4/JC8pLHhBPXtjbDpbImVjbCJdLGN1c3RvbVBpeGVsczpbIm5vbkdvb2dsZVBpeGVscyJdLGVjbDpbImNsIl0sZWhsOlsiaGwiXSxnYWF3YzpbImdvb2d0YWciXSxobDpbImVobCJdLGh0bWw6WyJjdXN0b21TY3JpcHRzIiwiY3VzdG9tUGl4ZWxzIiwibm9uR29vZ2xlUGl4ZWxzIiwibm9uR29vZ2xlU2NyaXB0cyIsIm5vbkdvb2dsZUlmcmFtZXMiXSxjdXN0b21TY3JpcHRzOlsiaHRtbCIsImN1c3RvbVBpeGVscyIsIm5vbkdvb2dsZVBpeGVscyIsIm5vbkdvb2dsZVNjcmlwdHMiLCJub25Hb29nbGVJZnJhbWVzIl0sbm9uR29vZ2xlUGl4ZWxzOltdLG5vbkdvb2dsZVNjcmlwdHM6WyJub25Hb29nbGVQaXhlbHMiXSxub25Hb29nbGVJZnJhbWVzOlsibm9uR29vZ2xlUGl4ZWxzIl19LHlBPXtjbDpbImVjbCJdLGN1c3RvbVBpeGVsczpbImN1c3RvbVNjcmlwdHMiLAoiaHRtbCJdLGVjbDpbImNsIl0sZWhsOlsiaGwiXSxnYWF3YzpbImdvb2d0YWciXSxobDpbImVobCJdLGh0bWw6WyJjdXN0b21TY3JpcHRzIl0sY3VzdG9tU2NyaXB0czpbImh0bWwiXSxub25Hb29nbGVQaXhlbHM6WyJjdXN0b21QaXhlbHMiLCJjdXN0b21TY3JpcHRzIiwiaHRtbCIsIm5vbkdvb2dsZVNjcmlwdHMiLCJub25Hb29nbGVJZnJhbWVzIl0sbm9uR29vZ2xlU2NyaXB0czpbImN1c3RvbVNjcmlwdHMiLCJodG1sIl0sbm9uR29vZ2xlSWZyYW1lczpbImN1c3RvbVNjcmlwdHMiLCJodG1sIiwibm9uR29vZ2xlU2NyaXB0cyJdfSx6QT0iZ29vZ2xlIGN1c3RvbVBpeGVscyBjdXN0b21TY3JpcHRzIGh0bWwgbm9uR29vZ2xlUGl4ZWxzIG5vbkdvb2dsZVNjcmlwdHMgbm9uR29vZ2xlSWZyYW1lcyIuc3BsaXQoIiAiKTsKZnVuY3Rpb24gQUEoKXt2YXIgYT11QSgiZ3RtLmFsbG93bGlzdCIpfHx1QSgiZ3RtLndoaXRlbGlzdCIpO2EmJlAoOSk7SWYoNjIpJiYoYT12b2lkIDApO0JBKCkmJihJZig2Mik/UCgxMTYpOihQKDExNyksSWYoNDgpJiYoYT1bXSx3aW5kb3cuY29uc29sZSYmd2luZG93LmNvbnNvbGUubG9nJiZ3aW5kb3cuY29uc29sZS5sb2coIkdUTSBibG9ja2VkLiBTZWUgZ28vMTM2ODc3MjguIikpKSk7dmFyIGI9YSYmUmIoS2IoYSkseEEpLGM9dUEoImd0bS5ibG9ja2xpc3QiKXx8dUEoImd0bS5ibGFja2xpc3QiKTtjfHwoYz11QSgidGFnVHlwZUJsYWNrbGlzdCIpKSYmUCgzKTtjP1AoOCk6Yz1bXTtCQSgpJiYoYz1LYihjKSxjLnB1c2goIm5vbkdvb2dsZVBpeGVscyIsIm5vbkdvb2dsZVNjcmlwdHMiLCJzYW5kYm94ZWRTY3JpcHRzIikpO0tiKGMpLmluZGV4T2YoImdvb2dsZSIpPj0wJiZQKDIpO3ZhciBkPWMmJlJiKEtiKGMpLHlBKSxlPXt9O3JldHVybiBmdW5jdGlvbihmKXt2YXIgZz1mJiYKZltHZi5ZYl07aWYoIWd8fHR5cGVvZiBnIT09InN0cmluZyIpcmV0dXJuITA7Zz1nLnJlcGxhY2UoL15fKi8sIiIpO2lmKGVbZ10hPT12b2lkIDApcmV0dXJuIGVbZ107dmFyIGg9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pW2ddfHxbXSxsPSEwO2EmJihsPWwmJkNBKGcsaCxiKSk7dmFyIG49ITE7YyYmKG49REEoZyxoLGQpKTt2YXIgcD0hbHx8bjshcCYmKGguaW5kZXhPZigic2FuZGJveGVkU2NyaXB0cyIpPT09LTF8fGImJmIuaW5kZXhPZigic2FuZGJveGVkU2NyaXB0cyIpIT09LTE/MDpFYihkLHpBKSkmJihwPSEwKTtyZXR1cm4gZVtnXT1wfX1mdW5jdGlvbiBDQShhLGIsYyl7aWYoYy5pbmRleE9mKGEpPDApaWYoYiYmYi5sZW5ndGg+MClmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7aWYoYy5pbmRleE9mKGJbZF0pPDApcmV0dXJuIFAoMTEpLCExfWVsc2UgcmV0dXJuITE7cmV0dXJuITB9CmZ1bmN0aW9uIERBKGEsYixjKXt2YXIgZD1jLmluZGV4T2YoYSk+PTA7aWYoZClyZXR1cm4gZDt2YXIgZT1FYihjLGJ8fFtdKTtlJiZQKDEwKTtyZXR1cm4gZX1mdW5jdGlvbiBCQSgpe3JldHVybiB3QS50ZXN0KEEubG9jYXRpb24mJkEubG9jYXRpb24uaG9zdG5hbWUpfTtmdW5jdGlvbiBFQShhKXtmb3IodmFyIGI9W10sYz1bXSxkPUZBKGEpLGU9bShjQS5nZXRSdWxlcygpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7Zm9yKHZhciBnPWYudmFsdWUuZXZhbHVhdGUoYSxkKSxoPWcuZmlyaW5nVGFncyxsPWcuYmxvY2tpbmdUYWdzLG49MDtuPGgubGVuZ3RoO24rKyliW2hbbl1dPSEwO2Zvcih2YXIgcD0wO3A8bC5sZW5ndGg7cCsrKWNbbFtwXV09ITB9Zm9yKHZhciBxPVtdLHI9MDtyPGNBLnRhZ3MubGVuZ3RoO3IrKyliW3JdJiYhY1tyXSYmKHFbcl09ITApO3JldHVybiBxfWZ1bmN0aW9uIEZBKGEpe3ZhciBiPVtdO3JldHVybiBmdW5jdGlvbihjKXtiW2NdPT09dm9pZCAwJiYoYltjXT1jQS5wcmVkaWNhdGVzW2NdLmV2YWx1YXRlKGEsW10pKTtyZXR1cm4gYltjXX19O3ZhciBHQT1mdW5jdGlvbigpe3RoaXMuSz0wO3RoaXMuSD17fX07R0EucHJvdG90eXBlLmFkZExpc3RlbmVyPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0rK3RoaXMuSzt0aGlzLkhbYV09dGhpcy5IW2FdfHx7fTt0aGlzLkhbYV1bU3RyaW5nKGQpXT17bGlzdGVuZXI6YixyZjpjfTtyZXR1cm4gZH07R0EucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5IW2FdLGQ9U3RyaW5nKGIpO2lmKCFjfHwhY1tkXSlyZXR1cm4hMTtkZWxldGUgY1tkXTtyZXR1cm4hMH07dmFyIElBPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107R2IoSEEuSFthXSxmdW5jdGlvbihkLGUpe2MuaW5kZXhPZihlLmxpc3RlbmVyKTwwJiYoZS5yZj09PXZvaWQgMHx8Yi5pbmRleE9mKGUucmYpPj0wKSYmYy5wdXNoKGUubGlzdGVuZXIpfSk7cmV0dXJuIGN9O2Z1bmN0aW9uIEpBKGEsYixjKXtyZXR1cm57ZW50aXR5VHlwZTphLGluZGV4SW5PcmlnaW5Db250YWluZXI6YixuYW1lSW5PcmlnaW5Db250YWluZXI6YyxvcmlnaW5Db250YWluZXJJZDpFKDUpLG9yaWdpbkNJZDp2aygpfX07ZnVuY3Rpb24gS0EoYSxiKXtpZihkYXRhLmVudGl0aWVzKXt2YXIgYz1kYXRhLmVudGl0aWVzW2FdO2lmKGMpcmV0dXJuIGNbYl19fTt2YXIgTUE9ZnVuY3Rpb24oYSxiKXt0aGlzLkg9ITE7dGhpcy5SPVtdO3RoaXMuZXZlbnREYXRhPXt0YWdzOltdfTt0aGlzLlo9ITE7dGhpcy5LPXRoaXMuTj0wO0xBKHRoaXMsYSxiKX0sTkE9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoQ2ouaGFzT3duUHJvcGVydHkoYil8fGI9PT0iX196b25lIilyZXR1cm4tMTt2YXIgZT17fTtDZChkKSYmKGU9RWQoZCxlKSk7ZS5pZD1jO2Uuc3RhdHVzPSJ0aW1lb3V0IjtyZXR1cm4gYS5ldmVudERhdGEudGFncy5wdXNoKGUpLTF9LE9BPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWEuZXZlbnREYXRhLnRhZ3NbYl07ZSYmKGUuc3RhdHVzPWMsZS5leGVjdXRpb25UaW1lPWQpfSxQQT1mdW5jdGlvbihhKXtpZighYS5IKXtmb3IodmFyIGI9YS5SLGM9MDtjPGIubGVuZ3RoO2MrKyliW2NdKCk7YS5IPSEwO2EuUi5sZW5ndGg9MH19LExBPWZ1bmN0aW9uKGEsYixjKXtiIT09dm9pZCAwJiZhLndnKGIpO2MmJkEuc2V0VGltZW91dChmdW5jdGlvbigpe1BBKGEpfSwKTnVtYmVyKGMpKX07TUEucHJvdG90eXBlLndnPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1QYihmdW5jdGlvbigpe2JkKGZ1bmN0aW9uKCl7YShFKDUpLGIuZXZlbnREYXRhKX0pfSk7dGhpcy5IP2MoKTp0aGlzLlIucHVzaChjKX07dmFyIFFBPWZ1bmN0aW9uKGEpe2EuTisrO3JldHVybiBQYihmdW5jdGlvbigpe2EuSysrO2EuWiYmYS5LPj1hLk4mJlBBKGEpfSl9LFJBPWZ1bmN0aW9uKGEpe2EuWj0hMDthLks+PWEuTiYmUEEoYSl9O2Z1bmN0aW9uIFNBKCl7cmV0dXJuIEFbVEEoKV19CmZ1bmN0aW9uIFRBKCl7cmV0dXJuIEEuR29vZ2xlQW5hbHl0aWNzT2JqZWN0fHwiZ2EifXZhciBXQT1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9e319O2Z1bmN0aW9uIFhBKCl7YTp7dmFyIGE9RSg1KTt9fQpmdW5jdGlvbiBZQShhLGIpe3JldHVybiBmdW5jdGlvbigpe3ZhciBjPVNBKCksZD1jJiZjLmdldEJ5TmFtZSYmYy5nZXRCeU5hbWUoYSk7aWYoZCl7dmFyIGU9ZC5nZXQoInNlbmRIaXRUYXNrIik7ZC5zZXQoInNlbmRIaXRUYXNrIixmdW5jdGlvbihmKXt2YXIgZz1mLmdldCgiaGl0UGF5bG9hZCIpLGg9Zi5nZXQoImhpdENhbGxiYWNrIiksbD1nLmluZGV4T2YoIiZ0aWQ9IitiKTwwO2wmJihmLnNldCgiaGl0UGF5bG9hZCIsZy5yZXBsYWNlKC8mdGlkPVVBLVswLTldKy1bMC05XSsvLCImdGlkPSIrYiksITApLGYuc2V0KCJoaXRDYWxsYmFjayIsdm9pZCAwLCEwKSk7ZShmKTtsJiYoZi5zZXQoImhpdFBheWxvYWQiLGcsITApLGYuc2V0KCJoaXRDYWxsYmFjayIsaCwhMCksZi5zZXQoIl94XzE5Iix2b2lkIDAsITApLGUoZikpfSl9fX07dmFyIGFCPVsiZXMiLCIxIl0sYkI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuZXZlbnREYXRhPXt9O3RoaXMuSD17fTtmeihmdW5jdGlvbihiKXt2YXIgYzt2YXIgZD1iLmV2ZW50SWQsZT1iLnRmO2lmKGEuZXZlbnREYXRhW2RdKXt2YXIgZj1bXTthLkhbZF18fGYucHVzaChhQik7Zi5wdXNoLmFwcGx5KGYsdyhhLmV2ZW50RGF0YVtkXSkpO2UmJihhLkhbZF09ITApO2M9Zn1lbHNlIGM9W107cmV0dXJuIGN9KX0sY0I7ZnVuY3Rpb24gZEIoYSxiKXt2YXIgYztpZigoYz1jQikhPW51bGwmJmZuLk4pe3ZhciBkPWMuZXZlbnREYXRhLGU7ZT1iLm1hdGNoKC9eKGd0bXxndGFnKVwuLyk/ZW5jb2RlVVJJQ29tcG9uZW50KGIpOiIqIjtkW2FdPVtbImUiLGVdLFsiZWlkIixTdHJpbmcoYSldXTtneigpO2V6KGEpfX07dmFyIGVCPWZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9e307dGhpcy5LPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPWIuZXZlbnRJZCxkPWIudGYsZT1bXSxmPWEuSFtjXXx8W107Zi5sZW5ndGgmJmUucHVzaChbInRyIixmLmpvaW4oIi4iKV0pO3ZhciBnPWEuS1tjXXx8W107Zy5sZW5ndGgmJmUucHVzaChbInRpIixnLmpvaW4oIi4iKV0pO2QmJihkZWxldGUgYS5IW2NdLGRlbGV0ZSBhLktbY10pO3JldHVybiBlfSl9LGZCOwpmdW5jdGlvbiBnQihhLGIsYyl7ZkJ8fChmQj1uZXcgZUIpO3ZhciBkPWZCO2lmKGZuLk4mJmIpe3ZhciBlPWRuKGIpO2QuSFthXT1kLkhbYV18fFtdO2QuSFthXS5wdXNoKGMrZSk7dmFyIGY9YltHZi5ZYl07aWYoIWYpdGhyb3cgRXJyb3IoIkVycm9yOiBObyBmdW5jdGlvbiBuYW1lIGdpdmVuIGZvciBmdW5jdGlvbiBjYWxsLiIpO3ZhciBnPShReltmXT8iMSI6IjIiKStlO2QuS1thXT1kLktbYV18fFtdO2QuS1thXS5wdXNoKGcpO2d6KCk7ZXooYSl9fTtmdW5jdGlvbiBoQihhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aUIoKS5hZGRSZXN0cmljdGlvbigwLGEsYixjKX1mdW5jdGlvbiBqQigpe3ZhciBhPXZrKCk7cmV0dXJuIGlCKCkuZ2V0UmVzdHJpY3Rpb25zKDAsYSl9ZnVuY3Rpb24ga0IoYSxiLGMpe2M9Yz09PXZvaWQgMD8hMTpjO2lCKCkuYWRkUmVzdHJpY3Rpb24oMSxhLGIsYyl9ZnVuY3Rpb24gbEIoKXt2YXIgYT12aygpO3JldHVybiBpQigpLmdldFJlc3RyaWN0aW9ucygxLGEpfXZhciBtQj1mdW5jdGlvbigpe3RoaXMuY29udGFpbmVyPXt9O3RoaXMuSD17fX0sbkI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmNvbnRhaW5lcltiXTtjfHwoYz17X2VudGl0eTp7aW50ZXJuYWw6W10sZXh0ZXJuYWw6W119LF9ldmVudDp7aW50ZXJuYWw6W10sZXh0ZXJuYWw6W119fSxhLmNvbnRhaW5lcltiXT1jKTtyZXR1cm4gY307Cm1CLnByb3RvdHlwZS5hZGRSZXN0cmljdGlvbj1mdW5jdGlvbihhLGIsYyxkKXtkPWQ9PT12b2lkIDA/ITE6ZDtpZighZHx8IXRoaXMuSFtiXSl7dmFyIGU9bkIodGhpcyxiKTthPT09MD9kP2UuX2VudGl0eS5leHRlcm5hbC5wdXNoKGMpOmUuX2VudGl0eS5pbnRlcm5hbC5wdXNoKGMpOmE9PT0xJiYoZD9lLl9ldmVudC5leHRlcm5hbC5wdXNoKGMpOmUuX2V2ZW50LmludGVybmFsLnB1c2goYykpfX07Cm1CLnByb3RvdHlwZS5nZXRSZXN0cmljdGlvbnM9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uQih0aGlzLGIpO2lmKGE9PT0wKXt2YXIgZCxlO3JldHVybltdLmNvbmNhdCh3KChjPT1udWxsP3ZvaWQgMDooZD1jLl9lbnRpdHkpPT1udWxsP3ZvaWQgMDpkLmludGVybmFsKXx8W10pLHcoKGM9PW51bGw/dm9pZCAwOihlPWMuX2VudGl0eSk9PW51bGw/dm9pZCAwOmUuZXh0ZXJuYWwpfHxbXSkpfWlmKGE9PT0xKXt2YXIgZixnO3JldHVybltdLmNvbmNhdCh3KChjPT1udWxsP3ZvaWQgMDooZj1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmYuaW50ZXJuYWwpfHxbXSksdygoYz09bnVsbD92b2lkIDA6KGc9Yy5fZXZlbnQpPT1udWxsP3ZvaWQgMDpnLmV4dGVybmFsKXx8W10pKX1yZXR1cm5bXX07Cm1CLnByb3RvdHlwZS5nZXRFeHRlcm5hbFJlc3RyaWN0aW9ucz1mdW5jdGlvbihhLGIpe3ZhciBjPW5CKHRoaXMsYiksZCxlO3JldHVybiBhPT09MD8oYz09bnVsbD92b2lkIDA6KGQ9Yy5fZW50aXR5KT09bnVsbD92b2lkIDA6ZC5leHRlcm5hbCl8fFtdOihjPT1udWxsP3ZvaWQgMDooZT1jLl9ldmVudCk9PW51bGw/dm9pZCAwOmUuZXh0ZXJuYWwpfHxbXX07bUIucHJvdG90eXBlLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zPWZ1bmN0aW9uKGEpe3ZhciBiPW5CKHRoaXMsYSk7Yi5fZXZlbnQmJihiLl9ldmVudC5leHRlcm5hbD1bXSk7Yi5fZW50aXR5JiYoYi5fZW50aXR5LmV4dGVybmFsPVtdKTt0aGlzLkhbYV09ITB9O2Z1bmN0aW9uIGlCKCl7cmV0dXJuIGtqKCJyIixmdW5jdGlvbigpe3JldHVybiBuZXcgbUJ9KX07ZnVuY3Rpb24gb0IoYSxiLGMsZCl7dmFyIGU9Y0EudGFnc1thXSxmPXBCKGEsYixjLGQpO2lmKCFmKXJldHVybiBudWxsO3ZhciBnPVp6KGUsYyk7aWYoZyYmZy5sZW5ndGgpe3ZhciBoPWdbMF07Zj1vQihoLmluZGV4LHtvblN1Y2Nlc3M6ZixvbkZhaWx1cmU6aC5ibz09PTE/Yi50ZXJtaW5hdGU6Zix0ZXJtaW5hdGU6Yi50ZXJtaW5hdGV9LGMsZCl9cmV0dXJuIGZ9CmZ1bmN0aW9uIHBCKGEsYixjLGQpe2Z1bmN0aW9uIGUoKXtmdW5jdGlvbiB5KCl7aW0oMyk7dmFyIFM9TmIoKS1OO0pBKDEsYSxmLmdldE5hbWUoKSk7Z0IoYy5pZCxnLCI3Iik7T0EoYy5sZCxELCJleGNlcHRpb24iLFMpO2ZuLkgmJkZ6KGMsZyxJeS5YLnVqKTtJfHwoST0hMCxsKCkpfWlmKGYuSWFbR2YuT3FdKWwoKTtlbHNle3ZhciB6PWFBKGYsYyk7aWYoeiE9bnVsbClmb3IodmFyIEM9MDtDPHoubGVuZ3RoO0MrKylpZighWG8oeltDXSkpe2woKTtyZXR1cm59dmFyIEQ9TkEoYy5sZCxmLk8sZi50YWdJZCxmLmdldE1ldGFkYXRhKGMpKSxJPSExLEc9e3Z0cF9ndG1PblN1Y2Nlc3M6ZnVuY3Rpb24oKXtpZighSSl7ST0hMDt2YXIgUz1OYigpLU47Z0IoYy5pZCxnLCI1Iik7T0EoYy5sZCxELCJzdWNjZXNzIixTKTtmbi5IJiZGeihjLGcsSXkuWC53aik7aCgpfX0sdnRwX2d0bU9uRmFpbHVyZTpmdW5jdGlvbigpe2lmKCFJKXtJPSEwO3ZhciBTPU5iKCktTjtnQihjLmlkLGcsIjYiKTsKT0EoYy5sZCxELCJmYWlsdXJlIixTKTtmbi5IJiZGeihjLGcsSXkuWC52aik7bCgpfX19O0cudnRwX2d0bUV2ZW50SWQ9Yy5pZDtjLnByaW9yaXR5SWQmJihHLnZ0cF9ndG1Qcmlvcml0eUlkPWMucHJpb3JpdHlJZCk7Z0IoYy5pZCxnLCIxIik7Zm4uSCYmRXooYyxnKTt2YXIgTj1OYigpO3RyeXtmLmV2YWx1YXRlKGMsZCxHKX1jYXRjaChTKXt5KFMpfWZuLkgmJkZ6KGMsZyxJeS5YLkNuKX19dmFyIGY9Y0EudGFnc1thXSxnPWYuRmcoKSxoPWIub25TdWNjZXNzLGw9Yi5vbkZhaWx1cmUsbj1iLnRlcm1pbmF0ZTtpZihjLmlzQmxvY2tlZChnKSlyZXR1cm4gbnVsbDt2YXIgcD0keihmLGMpO2lmKHAmJnAubGVuZ3RoKXt2YXIgcT1wWzBdLHI9b0IocS5pbmRleCx7b25TdWNjZXNzOmgsb25GYWlsdXJlOmwsdGVybWluYXRlOm59LGMsZCk7aWYoIXIpcmV0dXJuIG51bGw7aD1yO2w9cS5ibz09PTI/bjpyfWlmKGYuSWFbR2Yua25dfHxmLklhW0dmLlFxXSl7dmFyIHQ9Zi5JYVtHZi5rbl0/CmNBLnZrOmMudmssdT1oLHY9bDtpZighdFthXSl7dmFyIHg9cUIoYSx0LFBiKGUpKTtoPXgub25TdWNjZXNzO2w9eC5vbkZhaWx1cmV9cmV0dXJuIGZ1bmN0aW9uKCl7dFthXSh1LHYpfX1yZXR1cm4gZX1mdW5jdGlvbiBxQihhLGIsYyl7dmFyIGQ9W10sZT1bXTtiW2FdPXJCKGQsZSxjKTtyZXR1cm57b25TdWNjZXNzOmZ1bmN0aW9uKCl7YlthXT1zQjtmb3IodmFyIGY9MDtmPGQubGVuZ3RoO2YrKylkW2ZdKCl9LG9uRmFpbHVyZTpmdW5jdGlvbigpe2JbYV09dEI7Zm9yKHZhciBmPTA7ZjxlLmxlbmd0aDtmKyspZVtmXSgpfX19ZnVuY3Rpb24gckIoYSxiLGMpe3JldHVybiBmdW5jdGlvbihkLGUpe2EucHVzaChkKTtiLnB1c2goZSk7YygpfX1mdW5jdGlvbiBzQihhKXthKCl9ZnVuY3Rpb24gdEIoYSxiKXtiKCl9O3ZhciB3Qj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxjQS50YWdzLmxlbmd0aDtkKyspaWYoYVtkXSl7dmFyIGU9Y0EudGFnc1tkXTt2YXIgZj1RQShiLmxkKTt0cnl7dmFyIGc9b0IoZCx7b25TdWNjZXNzOmYsb25GYWlsdXJlOmYsdGVybWluYXRlOmZ9LGIsZCk7aWYoZyl7dmFyIGg9UXpbZS5PXTtjLnB1c2goe05vOmQscHJpb3JpdHlPdmVycmlkZTooaD9oLnByaW9yaXR5T3ZlcnJpZGV8fDA6MCl8fEtBKGUuTywxKXx8MCxleGVjdXRlOmd9KX1lbHNlIHVCKGQsYiksZigpfWNhdGNoKG4pe2YoKX19Yy5zb3J0KHZCKTtmb3IodmFyIGw9MDtsPGMubGVuZ3RoO2wrKyljW2xdLmV4ZWN1dGUoKTtyZXR1cm4gYy5sZW5ndGg+MH07CmZ1bmN0aW9uIHhCKGEsYil7aWYoIUhBKXJldHVybiExO3ZhciBjPWFbImd0bS50cmlnZ2VycyJdJiZTdHJpbmcoYVsiZ3RtLnRyaWdnZXJzIl0pLGQ9SUEoYS5ldmVudCxjP1N0cmluZyhjKS5zcGxpdCgiLCIpOltdKTtpZighZC5sZW5ndGgpcmV0dXJuITE7Zm9yKHZhciBlPTA7ZTxkLmxlbmd0aDsrK2Upe3ZhciBmPVFBKGIpO3RyeXtkW2VdKGEsZil9Y2F0Y2goZyl7ZigpfX1yZXR1cm4hMH1mdW5jdGlvbiB2QihhLGIpe3ZhciBjLGQ9Yi5wcmlvcml0eU92ZXJyaWRlLGU9YS5wcmlvcml0eU92ZXJyaWRlO2M9ZD5lPzE6ZDxlPy0xOjA7dmFyIGY7aWYoYyE9PTApZj1jO2Vsc2V7dmFyIGc9YS5ObyxoPWIuTm87Zj1nPmg/MTpnPGg/LTE6MH1yZXR1cm4gZn0KZnVuY3Rpb24gdUIoYSxiKXtpZihmbi5OKXt2YXIgYz1mdW5jdGlvbihkKXt2YXIgZT1iLmlzQmxvY2tlZChjQS50YWdzW2RdLkZnKCkpPyIzIjoiNCIsZj1aeihjQS50YWdzW2RdLGIpO2YmJmYubGVuZ3RoJiZjKGZbMF0uaW5kZXgpO2dCKGIuaWQsY0EudGFnc1tkXS5GZygpLGUpO3ZhciBnPSR6KGNBLnRhZ3NbZF0sYik7ZyYmZy5sZW5ndGgmJmMoZ1swXS5pbmRleCl9O2MoYSl9fXZhciBIQTtmdW5jdGlvbiB5Qigpe0hBfHwoSEE9bmV3IEdBKTtyZXR1cm4gSEF9CmZ1bmN0aW9uIHpCKGEpe3ZhciBiPWFbImd0bS51bmlxdWVFdmVudElkIl0sYz1hWyJndG0ucHJpb3JpdHlJZCJdLGQ9YVsiZ3RtLnByaW9yaXR5UXVldWUiXSxlPWEuZXZlbnQ7Zm4uSCYmdnooYixlKTtpZihlPT09Imd0bS5qcyIpe2lmKCRrKDEzKSlyZXR1cm4hMTtaaygxMywhMCl9dmFyIGY9ITEsZz1sQigpLGg9RWQoYSxudWxsKTtpZighZy5ldmVyeShmdW5jdGlvbih1KXtyZXR1cm4gdSh7b3JpZ2luYWxFdmVudERhdGE6aH0pfSkpe2lmKGUhPT0iZ3RtLmpzIiYmZSE9PSJndG0uaW5pdCImJmUhPT0iZ3RtLmluaXRfY29uc2VudCIpcmV0dXJuITE7Zj0hMH1kQihiLGUpO3ZhciBsPWEuZXZlbnRDYWxsYmFjayxuPWEuZXZlbnRUaW1lb3V0LHA9e2lkOmIscHJpb3JpdHlJZDpjLHByaW9yaXR5UXVldWU6ZCxuYW1lOmUsaXNCbG9ja2VkOkFCKGgsZiksdms6W10sbG9nTWFjcm9FcnJvcjpmdW5jdGlvbih1LHYseCl7UCg2KTtpbSg0KTtKQSgyLHYseCl9LGNhY2hlZE1vZGVsVmFsdWVzOkJCKCksCmxkOm5ldyBNQShmdW5jdGlvbigpe2ZuLkgmJnl6KGIsZSk7RnkoNSxlKTtsJiZsLmFwcGx5KGwsQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDApKX0sbiksb3JpZ2luYWxFdmVudERhdGE6aH07Zm4uSCYmQ3oocC5pZCk7dmFyIHE9RUEocCk7Zm4uSCYmRHoocC5pZCk7RnkoMixlKTtjQS5nZXRSdWxlcygpO2YmJihxPUNCKHEpKTtmbi5IJiZ3eihiKTt2YXIgcj13QihxLHApO3ImJkZ5KDQsZSk7dmFyIHQ9eEIoYSxwLmxkKTtSQShwLmxkKTtlIT09Imd0bS5qcyImJmUhPT0iZ3RtLnN5bmMifHxYQSgpO3JldHVybiBEQihxLHIpfHx0fQpmdW5jdGlvbiBCQigpe3ZhciBhPXt9O2EuZXZlbnQ9dkEoImV2ZW50IiwxKTthLmVjb21tZXJjZT12QSgiZWNvbW1lcmNlIiwxKTthLmd0bT12QSgiZ3RtIik7YS5ldmVudE1vZGVsPXZBKCJldmVudE1vZGVsIik7cmV0dXJuIGF9CmZ1bmN0aW9uIEFCKGEsYil7dmFyIGM9QUEoKTtyZXR1cm4gZnVuY3Rpb24oZCl7dmFyIGU9YyhkKTtpZihlKXJldHVybiEwO3ZhciBmPWQmJmRbR2YuWWJdO2lmKCFmfHx0eXBlb2YgZiE9PSJzdHJpbmciKXJldHVybiEwO2Y9Zi5yZXBsYWNlKC9eXyovLCIiKTt2YXIgZz1qQigpLGg9YTtiJiYoaD1FZChhLG51bGwpLGhbImd0bS51bmlxdWVFdmVudElkIl09TnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO2Zvcih2YXIgbD0hMSxuPWFsKDI3LGZ1bmN0aW9uKCl7cmV0dXJue319KVtmXXx8W10scD1tKGcpLHE9cC5uZXh0KCk7IXEuZG9uZTtxPXAubmV4dCgpKXt2YXIgcj1xLnZhbHVlO3RyeXtyKHtlbnRpdHlJZDpmLHNlY3VyaXR5R3JvdXBzOm4sb3JpZ2luYWxFdmVudERhdGE6aH0pfHwobD0hMCl9Y2F0Y2godCl7bD0hMH19cmV0dXJuIGx8fGV9fQpmdW5jdGlvbiBDQihhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10pe3ZhciBkPWNBLnRhZ3NbY10uTztpZihCaltkXXx8Y0EudGFnc1tjXS5JYVtHZi5ScV0hPT12b2lkIDB8fEtBKGQsMikpYltjXT0hMH1yZXR1cm4gYn1mdW5jdGlvbiBEQihhLGIpe2lmKCFiKXJldHVybiBiO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGFbY10mJmNBLnRhZ3NbY10mJiFDaltjQS50YWdzW2NdLk9dKXJldHVybiEwO3JldHVybiExfTt2YXIgRUI9TmYoNjEsMUUzKSxGQj1OZig2OCwyRTMpLFpvPVsiYWRfc3RvcmFnZSIsImFuYWx5dGljc19zdG9yYWdlIl07ZnVuY3Rpb24gR0IoYSxiKXtpZihhKXt2YXIgYz1raigiZ3RoIixmdW5jdGlvbigpe3JldHVybnt9fSksZDthIT09Mnx8KChkPUhCKCkpPT1udWxsP3ZvaWQgMDpkLnN0YXR1cykhPT0zfHxiIT09dm9pZCAwJiZiPD1GQnx8KGE9MyxjLmRsPWI/TWF0aC5mbG9vcihiLzFFMyk6dm9pZCAwKTtjLnM9YTtJQihjKX19ZnVuY3Rpb24gSUIoYSl7aWYoYS5zKXt2YXIgYj1mdW5jdGlvbigpe3ZhciBjPXtzdGF0dXM6YS5zLGV4cGlyZXM6RGF0ZS5ub3coKSs4NjRFNX07YS5kbCE9PXZvaWQgMCYmKGMuZGVsYXk9YS5kbCk7a3IoImd0Z19sb2FkX3N0YXR1cyIsYyl9O2JwKGZ1bmN0aW9uKCl7aWYoWW8oKSliKCk7ZWxzZSBmb3IodmFyIGM9UGIoYiksZD1tKFpvKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSlJbChjLGUudmFsdWUpfSxabyl9fQpmdW5jdGlvbiBKQigpe3ZhciBhPUtCKCEwKTtyZXR1cm4gYT8oTEIoYS5zdGF0dXMsYS5kZWxheSksITEpOiEwfWZ1bmN0aW9uIEtCKGEpe2E9YT09PXZvaWQgMD8hMTphO2lmKGFrKCkpe3ZhciBiPW5yKCJndGdfbG9hZF9zdGF0dXMiKSxjPWIudmFsdWUsZD1hJiZBYihjPT1udWxsP3ZvaWQgMDpjLmV4cGlyZXMpJiYoYz09bnVsbD92b2lkIDA6Yy5leHBpcmVzKTxEYXRlLm5vdygpKzM2RTU7aWYoYi5lcnJvcj09PTAmJkFiKGM9PW51bGw/dm9pZCAwOmMuc3RhdHVzKSYmIWQpe3ZhciBlPXtzdGF0dXM6Yy5zdGF0dXN9OyhjPT1udWxsP3ZvaWQgMDpjLmRlbGF5KSE9PXZvaWQgMCYmKGUuZGVsYXk9Yy5kZWxheSk7cmV0dXJuIGV9cmV0dXJuIEhCKCl9fWZ1bmN0aW9uIExCKGEsYil7dmFyIGM9a2ooImd0aCIsZnVuY3Rpb24oKXtyZXR1cm57fX0pO2Mucz1hO2IhPT12b2lkIDAmJihjLmRsPWIpfQpmdW5jdGlvbiBIQigpe3ZhciBhPW1qKCJndGgiKTtpZihhIT1udWxsJiZhLnMpe3ZhciBiPXtzdGF0dXM6YS5zfTthLmRsIT09dm9pZCAwJiYoYi5kZWxheT1hLmRsKTtyZXR1cm4gYn19ZnVuY3Rpb24gTUIoKXt2YXIgYTsoKGE9SEIoKSk9PW51bGw/dm9pZCAwOmEuc3RhdHVzKT09PTEmJkdCKDMpfWZ1bmN0aW9uIE5CKCl7aWYoSkIoKSl7dmFyIGE9RGF0ZS5ub3coKTtuaigiZ3RoIix7bDpmdW5jdGlvbigpe0dCKDIsRGF0ZS5ub3coKS1hKX0sczoxfSk7dmFyIGI9RSg1KSxjPVNiKGIsIkdUTS0iKT8iL2d0bS5qcyI6Ii9ndGFnL2pzIixkPSJodHRwczovLyIrRSgzKStjKyI/aWQ9IitiKyImZ3RnX2hlYWx0aD0xIjtVYyhkLE1CLE1CKTtBLnNldFRpbWVvdXQoTUIsRUIpfX07ZnVuY3Rpb24gT0IoKXt5QigpLmFkZExpc3RlbmVyKCJndG0uaW5pdCIsZnVuY3Rpb24oYSxiKXtaaygyNiwhMCk7TSg1NTYpJiZhaygpJiYhSWYoNDUpJiYoZm8uSFtjby5pYS5aYl09Ym8uTWEuTGgpO2lmKGFrKCkpe3ZhciBjO2M9bG8oY28uaWEuWmIpO2dvKGMpP2lvKGMsTkIpOk5CKCl9dG8oITEsITApO2IoKX0pfTtmdW5jdGlvbiBQQigpe2lmKG1qKCJwc2NkbCIpIT09dm9pZCAwKW5tKGptLmJhLm9pKT09PXZvaWQgMCYmbW0oam0uYmEub2ksbWooInBzY2RsIikpO2Vsc2V7dmFyIGE9ZnVuY3Rpb24oYyl7bmooInBzY2RsIixjKTttbShqbS5iYS5vaSxjKX0sYj1mdW5jdGlvbigpe2EoImVycm9yIil9O3RyeXtIYy5jb29raWVEZXByZWNhdGlvbkxhYmVsPyhhKCJwZW5kaW5nIiksSGMuY29va2llRGVwcmVjYXRpb25MYWJlbC5nZXRWYWx1ZSgpLnRoZW4oYSkuY2F0Y2goYikpOmEoIm5vYXBpIil9Y2F0Y2goYyl7YihjKX19fTt2YXIgUkI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMucmVhZHk9ITE7dGhpcy5LPTA7dGhpcy5IPVtdO3ZhciBiPUE7aWYoQi5yZWFkeVN0YXRlPT09ImludGVyYWN0aXZlIiYmIUIuY3JlYXRlRXZlbnRPYmplY3R8fEIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIpdGhpcy5vblJlYWR5KCk7ZWxzZXskYyhCLCJET01Db250ZW50TG9hZGVkIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KTskYyhCLCJyZWFkeXN0YXRlY2hhbmdlIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KTtpZihCLmNyZWF0ZUV2ZW50T2JqZWN0JiZCLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbCl7dmFyIGM9ITA7dHJ5e2M9IWIuZnJhbWVFbGVtZW50fWNhdGNoKGQpe31jJiZRQih0aGlzKX0kYyhiLCJsb2FkIixmdW5jdGlvbihkKXtyZXR1cm4gdm9pZCBhLm9uUmVhZHkoZCl9KX19O1JCLnByb3RvdHlwZS5pc1JlYWR5PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmVhZHl9OwpSQi5wcm90b3R5cGUub25SZWFkeT1mdW5jdGlvbihhKXtpZighdGhpcy5yZWFkeSl7dmFyIGI9Qi5jcmVhdGVFdmVudE9iamVjdCxjPUIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIsZD1CLnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUiO2lmKCFhfHxhLnR5cGUhPT0icmVhZHlzdGF0ZWNoYW5nZSJ8fGN8fCFiJiZkKXt0aGlzLnJlYWR5PSEwO2Zvcih2YXIgZT0wO2U8dGhpcy5ILmxlbmd0aDtlKyspYmQodGhpcy5IW2VdKX10aGlzLkgucHVzaD1mdW5jdGlvbigpe2Zvcih2YXIgZj1PYS5hcHBseSgwLGFyZ3VtZW50cyksZz0wO2c8Zi5sZW5ndGg7ZysrKWJkKGZbZ10pO3JldHVybiAwfX19Owp2YXIgUUI9ZnVuY3Rpb24oYSl7aWYoIWEucmVhZHkmJmEuSzwxNDApe2EuSysrO3RyeXt2YXIgYixjOyhjPShiPUIuZG9jdW1lbnRFbGVtZW50KS5kb1Njcm9sbCk9PW51bGx8fGMuY2FsbChiLCJsZWZ0Iik7YS5vblJlYWR5KCl9Y2F0Y2goZCl7QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgUUIoYSl9LDUwKX19fSxTQjtmdW5jdGlvbiBUQigpe1NCfHwoU0I9bmV3IFJCKX1mdW5jdGlvbiBVQigpe1RCKCk7dmFyIGE7cmV0dXJuKGE9U0IpPT1udWxsP3ZvaWQgMDphLmlzUmVhZHkoKX1mdW5jdGlvbiBWQihhKXtUQigpO3ZhciBiOyhiPVNCKSE9bnVsbCYmKGIucmVhZHk/YmQoYSk6Yi5ILnB1c2goYSkpfTt2YXIgWEI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVdCLGU7aWYoKGU9ZC5IKT09bnVsbHx8IWUuT3Ipe3ZhciBmPU9iamVjdC5rZXlzKGIpLmxlbmd0aD4wPzI6MSxnLGgsbD0oYz09bnVsbD92b2lkIDA6KGg9Yy5vcmlnaW5hdGluZ0VudGl0eSk9PW51bGw/dm9pZCAwOmgub3JpZ2luQ29udGFpbmVySWQpfHwiIjtnPWw/U2IobCwiR1RNLSIpPzM6MjoxO2lmKCFhKWQuSD17dHlwZTpmLHNvdXJjZTpnLHBhcmFtczpifTtlbHNlIGlmKGQuSCl7UCgxODQpO3ZhciBuPSExO2QuSC5zb3VyY2U9PT1nfHxkLkguc291cmNlIT09MyYmZyE9PTN8fChVbSgiaWRjcyIsIjEiKSxuPSEwKTtkLkgudHlwZSE9PTImJmYhPT0yfHxQKDE4Nik7dmFyIHA7aWYocD1kLkgudHlwZT09PTImJmY9PT0yKWE6e3ZhciBxPWQuSC5wYXJhbXMscj1PYmplY3Qua2V5cyhxKSx0PU9iamVjdC5rZXlzKGIpO2lmKHIubGVuZ3RoIT09dC5sZW5ndGgpcD0hMDtlbHNle2Zvcih2YXIgdT1tKHIpLHY9dS5uZXh0KCk7IXYuZG9uZTt2PQp1Lm5leHQoKSl7dmFyIHg9di52YWx1ZTtpZighYi5oYXNPd25Qcm9wZXJ0eSh4KXx8cVt4XSE9PWJbeF0pe3A9ITA7YnJlYWsgYX19cD0hMX19cCYmKFVtKCJpZGNjIiwiMSIpLG49ITApO24mJih0bygpLGQuSC5Pcj0hMCl9fX0sV0I9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXZvaWQgMH07dmFyIFpCPWZ1bmN0aW9uKGEpe3ZhciBiPVlCOyghZm4uS3x8U2IoRSg1KSwiR1RNLSIpPzA6YT09PXZvaWQgMCkmJmIuSD09PTAmJihVbSgibWNjIiwiMSIpLGIuSD0xKX0sWUI9bmV3IGZ1bmN0aW9uKCl7dmFyIGE9dGhpczt0aGlzLkg9MDtVbSgibmNjIixmdW5jdGlvbigpe2lmKElmKDQ1KSYmYS5IIT09MilyZXR1cm4iMSJ9KX07dmFyICRCPS9eKD86QVd8REN8R3xHRnxHVHxIQXxNQ3xVQSkkLyxhQz0vXHMvOwpmdW5jdGlvbiBiQyhhLGIpe2lmKHpiKGEpKXthPUxiKGEpO3ZhciBjPWEuaW5kZXhPZigiLSIpO2lmKCEoYzwwKSl7dmFyIGQ9YS5zdWJzdHJpbmcoMCxjKTtpZigkQi50ZXN0KGQpKXt2YXIgZT1hLnN1YnN0cmluZyhjKzEpLGY7aWYoYil7dmFyIGc9ZnVuY3Rpb24obil7dmFyIHA9bi5pbmRleE9mKCIvIik7cmV0dXJuIHA8MD9bbl06W24uc3Vic3RyaW5nKDAscCksbi5zdWJzdHJpbmcocCsxKV19O2Y9ZyhlKTtpZihkPT09IkRDIiYmZi5sZW5ndGg9PT0yKXt2YXIgaD1nKGZbMV0pO2gubGVuZ3RoPT09MiYmKGZbMV09aFswXSxmLnB1c2goaFsxXSkpfX1lbHNle2Y9ZS5zcGxpdCgiLyIpO2Zvcih2YXIgbD0wO2w8Zi5sZW5ndGg7bCsrKWlmKCFmW2xdfHxhQy50ZXN0KGZbbF0pJiYoZCE9PSJBVyJ8fGwhPT0xKSlyZXR1cm59cmV0dXJue2lkOmEscHJlZml4OmQsZGVzdGluYXRpb25JZDpkKyItIitmWzBdLGlkczpmLEpjOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaWQhPT10aGlzLmRlc3RpbmF0aW9uSWR9fX19fX0KZnVuY3Rpb24gY0MoYSxiKXtmb3IodmFyIGM9e30sZD0wO2Q8YS5sZW5ndGg7KytkKXt2YXIgZT1iQyhhW2RdLGIpO2UmJihjW2UuaWRdPWUpfXZhciBmPVtdLGc7Zm9yKGcgaW4gYylpZihjLmhhc093blByb3BlcnR5KGcpKXt2YXIgaD1jW2ddO2gucHJlZml4PT09IkFXIiYmaC5pZHNbZENbMV1dJiZmLnB1c2goaC5kZXN0aW5hdGlvbklkKX1mb3IodmFyIGw9MDtsPGYubGVuZ3RoOysrbClkZWxldGUgY1tmW2xdXTtmb3IodmFyIG49W10scD1tKE9iamVjdC5rZXlzKGMpKSxxPXAubmV4dCgpOyFxLmRvbmU7cT1wLm5leHQoKSluLnB1c2goY1txLnZhbHVlXSk7cmV0dXJuIG59dmFyIGVDPXt9LGRDPShlQ1swXT0wLGVDWzFdPTEsZUNbMl09MixlQ1szXT0wLGVDWzRdPTEsZUNbNV09MCxlQ1s2XT0wLGVDWzddPTAsZUMpO3ZhciBmQz17aW5pdGlhbGl6ZWQ6MTEsY29tcGxldGU6MTIsaW50ZXJhY3RpdmU6MTN9LGdDPXt9LGhDPU9iamVjdC5mcmVlemUoKGdDW0YuRC5UZF09ITAsZ0MpKSxpQz1mdW5jdGlvbigpe3RoaXMuUj1OZigzNCw1MDApO3RoaXMuSD17fTt0aGlzLk49e307dGhpcy5LPXZvaWQgMH0sakM9ZnVuY3Rpb24oYSxiLGMpe2lmKGMubGVuZ3RoJiZmbi5LKXt2YXIgZDsoZD1hLkgpW2JdIT1udWxsfHwoZFtiXT1bXSk7dmFyIGU7KGU9YS5OKVtiXSE9bnVsbHx8KGVbYl09W10pO3ZhciBmPWMuZmlsdGVyKGZ1bmN0aW9uKGcpe3JldHVybiFhLk5bYl0uaW5jbHVkZXMoZyl9KTthLkhbYl0ucHVzaC5hcHBseShhLkhbYl0sdyhmKSk7YS5OW2JdLnB1c2guYXBwbHkoYS5OW2JdLHcoZikpOyFhLksmJmYubGVuZ3RoPjAmJihWbSgidGRjIiwhMCksYS5LPUEuc2V0VGltZW91dChmdW5jdGlvbigpe3RvKCk7YS5IPXt9O2EuSz12b2lkIDB9LGEuUikpfX07CmlDLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztVbSgidGRjIixmdW5jdGlvbigpe2EuSyYmKEEuY2xlYXJUaW1lb3V0KGEuSyksYS5LPXZvaWQgMCk7dmFyIGI9W10sYztmb3IoYyBpbiBhLkgpYS5ILmhhc093blByb3BlcnR5KGMpJiZiLnB1c2goYysiKiIrYS5IW2NdLmpvaW4oIi4iKSk7cmV0dXJuIGIubGVuZ3RoP2Iuam9pbigiISIpOnZvaWQgMH0sITEpfTsKdmFyIGtDPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZDtmb3IoZCBpbiBiKWIuaGFzT3duUHJvcGVydHkoZCkmJihjW2RdPSEwKTtmb3IodmFyIGUgaW4gYSlhLmhhc093blByb3BlcnR5KGUpJiYoY1tlXT0hMCk7cmV0dXJuIGN9LGxDPWZ1bmN0aW9uKGEsYixjLGQsZSl7ZD1kPT09dm9pZCAwP3t9OmQ7ZT1lPT09dm9pZCAwPyIiOmU7aWYoYj09PWMpcmV0dXJuW107dmFyIGY9ZnVuY3Rpb24odCx1KXt2YXIgdjtBZCh1KT09PSJvYmplY3QiP3Y9dVt0XTpBZCh1KT09PSJhcnJheSImJih2PXVbdF0pO3JldHVybiB2PT09dm9pZCAwP2hDW3RdOnZ9LGc9a0MoYixjKSxoO2ZvcihoIGluIGcpaWYoZy5oYXNPd25Qcm9wZXJ0eShoKSYmaCE9PUYuRC5YYil7dmFyIGw9KGU/ZSsiLiI6IiIpK2gsbj1mKGgsYikscD1mKGgsYykscT1BZChuKT09PSJvYmplY3QifHxBZChuKT09PSJhcnJheSIscj1BZChwKT09PSJvYmplY3QifHxBZChwKT09PSJhcnJheSI7aWYocSYmcilsQyhhLG4scCxkLGwpOwplbHNlIGlmKHF8fHJ8fG4hPT1wKWRbbF09ITB9cmV0dXJuIE9iamVjdC5rZXlzKGQpfSxtQz1uZXcgaUM7dmFyIG5DPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSz1OYigpO3RoaXMuSD1iO3RoaXMuYXJncz1jO3RoaXMubWVzc2FnZUNvbnRleHQ9ZDt0aGlzLnR5cGU9YX0sb0M9ZnVuY3Rpb24oKXt0aGlzLldhPXt9O3RoaXMuaWI9e307dGhpcy5LPXt9O3RoaXMuTj1udWxsO3RoaXMuaGI9e307dGhpcy5IPSExO3RoaXMuc3RhdHVzPTF9O2Z1bmN0aW9uIHBDKGEsYil7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg9PT0xP3FDKCJzZXQiLGEpOnFDKCJzZXQiLGEsYil9ZnVuY3Rpb24gckMoYSxiKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD09PTE/cUMoImNvbmZpZyIsYSk6cUMoImNvbmZpZyIsYSxiKX1mdW5jdGlvbiBzQyhhLGIsYyl7Yz1jfHx7fTtjW0YuRC5YYl09YTtyZXR1cm4gcUMoImV2ZW50IixiLGMpfWZ1bmN0aW9uIHFDKCl7cmV0dXJuIGFyZ3VtZW50c307dmFyIHRDPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcsaCxsLG4scCxxLHIpe3RoaXMuZXZlbnRJZD1hO3RoaXMucHJpb3JpdHlJZD1iO3RoaXMucHJpb3JpdHlRdWV1ZT1jO3RoaXMuRWE9ZDt0aGlzLldhPWU7dGhpcy5oYj1mO3RoaXMuSGM9Zzt0aGlzLkJnPWg7dGhpcy5pYj1sO3RoaXMuZXZlbnRNZXRhZGF0YT1uO3RoaXMub25TdWNjZXNzPXA7dGhpcy5vbkZhaWx1cmU9cTt0aGlzLmlzR3RtRXZlbnQ9cn0sdUM9ZnVuY3Rpb24oYSl7dmFyIGI9e29uU3VjY2Vzczp4YixvbkZhaWx1cmU6eGJ9O2I9Yj09PXZvaWQgMD97fTpiO3ZhciBjLGQsZSxmLGcsaCxsLG4scCxxLHIsdCx1LHYseCx5LHosQyxELEksRyxOLFMsVyxlYSxqYTtyZXR1cm4gbmV3IHRDKCh2PShjPWIpPT1udWxsP3ZvaWQgMDpjLmV2ZW50SWQpIT1udWxsP3Y6YS5ldmVudElkLCh4PShkPWIpPT1udWxsP3ZvaWQgMDpkLnByaW9yaXR5SWQpIT1udWxsP3g6YS5wcmlvcml0eUlkLCh5PShlPWIpPT1udWxsP3ZvaWQgMDplLnByaW9yaXR5UXVldWUpIT0KbnVsbD95OmEucHJpb3JpdHlRdWV1ZSwoej0oZj1iKT09bnVsbD92b2lkIDA6Zi5FYSkhPW51bGw/ejphLkVhLChDPShnPWIpPT1udWxsP3ZvaWQgMDpnLldhKSE9bnVsbD9DOmEuV2EsKEQ9KGg9Yik9PW51bGw/dm9pZCAwOmguaGIpIT1udWxsP0Q6YS5oYiwoST0obD1iKT09bnVsbD92b2lkIDA6bC5IYykhPW51bGw/STphLkhjLChHPShuPWIpPT1udWxsP3ZvaWQgMDpuLkJnKSE9bnVsbD9HOmEuQmcsKE49KHA9Yik9PW51bGw/dm9pZCAwOnAuaWIpIT1udWxsP046YS5pYiwoUz0ocT1iKT09bnVsbD92b2lkIDA6cS5ldmVudE1ldGFkYXRhKSE9bnVsbD9TOmEuZXZlbnRNZXRhZGF0YSwoVz0ocj1iKT09bnVsbD92b2lkIDA6ci5vblN1Y2Nlc3MpIT1udWxsP1c6YS5vblN1Y2Nlc3MsKGVhPSh0PWIpPT1udWxsP3ZvaWQgMDp0Lm9uRmFpbHVyZSkhPW51bGw/ZWE6YS5vbkZhaWx1cmUsKGphPSh1PWIpPT1udWxsP3ZvaWQgMDp1LmlzR3RtRXZlbnQpIT1udWxsP2phOmEuaXNHdG1FdmVudCl9LAp2Qz1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO3N3aXRjaChiKXtjYXNlIDM6Yy5wdXNoKGEuRWEpO2MucHVzaChhLldhKTtjLnB1c2goYS5oYik7Yy5wdXNoKGEuSGMpO2MucHVzaChhLmliKTticmVhaztjYXNlIDI6Yy5wdXNoKGEuRWEpO2JyZWFrO2Nhc2UgMTpjLnB1c2goYS5XYSk7Yy5wdXNoKGEuaGIpO2MucHVzaChhLkhjKTtjLnB1c2goYS5pYik7YnJlYWs7Y2FzZSA0OmMucHVzaChhLkVhKSxjLnB1c2goYS5XYSksYy5wdXNoKGEuaGIpLGMucHVzaChhLkhjKX1yZXR1cm4gY30sTz1mdW5jdGlvbihhLGIsYyxkKXtmb3IodmFyIGU9bSh2QyhhLGQ9PT12b2lkIDA/MzpkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7aWYoZ1tiXSE9PXZvaWQgMClyZXR1cm4gZ1tiXX1yZXR1cm4gY30sd0M9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9dkMoYSw0KSxkPW0oYyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpZm9yKHZhciBmPU9iamVjdC5rZXlzKGUudmFsdWUpLApnPW0oZiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpYltoLnZhbHVlXT0xO3JldHVybiBPYmplY3Qua2V5cyhiKX07dEMucHJvdG90eXBlLmdldE1lcmdlZFZhbHVlcz1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPzM6Yjt2YXIgZD17fSxlPSExLGY9ZnVuY3Rpb24obil7Q2QobikmJkdiKG4sZnVuY3Rpb24ocCxxKXtlPSEwO2RbcF09cX0pfTtjJiZmKGMpO3ZhciBnPXZDKHRoaXMsYik7Zy5yZXZlcnNlKCk7Zm9yKHZhciBoPW0oZyksbD1oLm5leHQoKTshbC5kb25lO2w9aC5uZXh0KCkpZihsLnZhbHVlW2FdKTtyZXR1cm4gZT9kOnZvaWQgMH07CnZhciB4Qz1mdW5jdGlvbihhKXtmb3IodmFyIGI9W0YuRC5LZixGLkQuR2YsRi5ELkhmLEYuRC5JZixGLkQuSmYsRi5ELkxmLEYuRC5NZl0sYz12QyhhLDMpLGQ9bShjKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7Zm9yKHZhciBmPWUudmFsdWUsZz17fSxoPSExLGw9bShiKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtmW3BdIT09dm9pZCAwJiYoZ1twXT1mW3BdLGg9ITApfXZhciBxPWg/Zzp2b2lkIDA7aWYocSlyZXR1cm4gcX1yZXR1cm57fX0seUM9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuZXZlbnRJZD1hO3RoaXMucHJpb3JpdHlJZD1iO3RoaXMucHJpb3JpdHlRdWV1ZT1jO3RoaXMuRWE9e307dGhpcy5XYT17fTt0aGlzLmhiPXt9O3RoaXMuSGM9e307dGhpcy5CZz17fTt0aGlzLmliPXt9O3RoaXMuZXZlbnRNZXRhZGF0YT17fTt0aGlzLmlzR3RtRXZlbnQ9ITE7dGhpcy5vblN1Y2Nlc3M9ZnVuY3Rpb24oKXt9O3RoaXMub25GYWlsdXJlPQpmdW5jdGlvbigpe319LHpDPWZ1bmN0aW9uKGEsYil7YS5FYT1iO3JldHVybiBhfSxBQz1mdW5jdGlvbihhLGIpe2EuV2E9YjtyZXR1cm4gYX0sQkM9ZnVuY3Rpb24oYSxiKXthLmhiPWI7cmV0dXJuIGF9LENDPWZ1bmN0aW9uKGEsYil7YS5IYz1iO3JldHVybiBhfSxEQz1mdW5jdGlvbihhLGIpe2EuQmc9YjtyZXR1cm4gYX0sRUM9ZnVuY3Rpb24oYSxiKXthLmliPWI7cmV0dXJuIGF9LEZDPWZ1bmN0aW9uKGEsYil7YS5ldmVudE1ldGFkYXRhPWJ8fHt9O3JldHVybiBhfSxHQz1mdW5jdGlvbihhLGIpe2Eub25TdWNjZXNzPWI7cmV0dXJuIGF9LEhDPWZ1bmN0aW9uKGEsYil7YS5vbkZhaWx1cmU9YjtyZXR1cm4gYX0sSUM9ZnVuY3Rpb24oYSxiKXthLmlzR3RtRXZlbnQ9YjtyZXR1cm4gYX0sSkM9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyB0QyhhLmV2ZW50SWQsYS5wcmlvcml0eUlkLGEucHJpb3JpdHlRdWV1ZSxhLkVhLGEuV2EsYS5oYixhLkhjLGEuQmcsYS5pYixhLmV2ZW50TWV0YWRhdGEsCmEub25TdWNjZXNzLGEub25GYWlsdXJlLGEuaXNHdG1FdmVudCl9O2Z1bmN0aW9uIEtDKGEsYil7R2IoYSxmdW5jdGlvbihjKXt2YXIgZDtpZihkPWMuY2hhckF0KDApPT09Il8iKXt2YXIgZTthOnN3aXRjaChjKXtjYXNlIEYuRC5WYjpjYXNlIEYuRC5SZjpjYXNlIEYuRC5zaDplPSEwO2JyZWFrIGE7ZGVmYXVsdDplPSExfWQ9IWV9ZCYmKGImJmIoYyksZGVsZXRlIGFbY10pfSl9O3ZhciBMQz1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O2Z6KGZ1bmN0aW9uKGIpe3ZhciBjPWIuZXZlbnRJZCxkPWIudGYsZT1bXSxmPWEuSFtjXXx8W107Zi5sZW5ndGgmJmUucHVzaChbImVwciIsZi5qb2luKCIuIildKTtkJiZkZWxldGUgYS5IW2NdO3JldHVybiBlfSl9LE5DPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1NQztmbi5OJiZhIT09dm9pZCAwJiYoZC5IW2FdPWQuSFthXXx8W10sZC5IW2FdLnB1c2goYytiKSxneigpLGV6KGEpKX0sTUM7ZnVuY3Rpb24gT0MoKXtNQ3x8KE1DPW5ldyBMQyl9O3ZhciBQQz1mdW5jdGlvbigpe3RoaXMuZGVzdGluYXRpb25zPXt9O3RoaXMuSD17fTt0aGlzLmNvbW1hbmRzPVtdfSxRQz1mdW5jdGlvbihhLGIpe3JldHVybiBhLmRlc3RpbmF0aW9uc1tiLmRlc3RpbmF0aW9uSWRdPWEuZGVzdGluYXRpb25zW2IuZGVzdGluYXRpb25JZF18fG5ldyBvQ30sUkM9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoZC5IKXt2YXIgZT1RQyhhLGQuSCksZj1lLk47aWYoZil7dmFyIGc9RWQoYyxudWxsKSxoPUVkKGUuV2FbZC5ILmRlc3RpbmF0aW9uSWRdLG51bGwpLGw9RWQoZS5oYixudWxsKSxuPUVkKGUuaWIsbnVsbCkscD1FZChhLkgsbnVsbCkscT17fTtpZihmbi5OKXRyeXtxPUVkKHJBLkgsbnVsbCl9Y2F0Y2goeCl7UCg3Mil9dmFyIHI9ZC5ILnByZWZpeCx0PWZ1bmN0aW9uKHgpe3ZhciB5PWQubWVzc2FnZUNvbnRleHQuZXZlbnRJZDtPQygpO05DKHkscix4KX0sdT1KQyhJQyhIQyhHQyhGQyhEQyhDQyhFQyhCQyhBQyh6QyhuZXcgeUMoZC5tZXNzYWdlQ29udGV4dC5ldmVudElkLApkLm1lc3NhZ2VDb250ZXh0LnByaW9yaXR5SWQsZC5tZXNzYWdlQ29udGV4dC5wcmlvcml0eVF1ZXVlKSxnKSxoKSxsKSxuKSxwKSxxKSxkLm1lc3NhZ2VDb250ZXh0LmV2ZW50TWV0YWRhdGEpLGZ1bmN0aW9uKCl7aWYodCl7dmFyIHg9dDt0PXZvaWQgMDt4KCIyIik7aWYoZC5tZXNzYWdlQ29udGV4dC5vblN1Y2Nlc3MpZC5tZXNzYWdlQ29udGV4dC5vblN1Y2Nlc3MoKX19KSxmdW5jdGlvbigpe2lmKHQpe3ZhciB4PXQ7dD12b2lkIDA7eCgiMyIpO2lmKGQubWVzc2FnZUNvbnRleHQub25GYWlsdXJlKWQubWVzc2FnZUNvbnRleHQub25GYWlsdXJlKCl9fSksISFkLm1lc3NhZ2VDb250ZXh0LmlzR3RtRXZlbnQpKSx2PWZ1bmN0aW9uKCl7dHJ5e3ZhciB4PWQubWVzc2FnZUNvbnRleHQuZXZlbnRJZDtPQygpO05DKHgsciwiMSIpO3ZhciB5PWQuSC5pZCx6PW1DO2lmKGZuLksmJmI9PT1GLkQud2Epe3ZhciBDLEQ9KEM9YkMoeSkpPT1udWxsP3ZvaWQgMDpDLmlkcztpZighKEQmJkQubGVuZ3RoPgoxKSl7dmFyIEk9dS5FYVtGLkQuWGJdO2lmKCFJfHxJPT09eSl7dmFyIEcsTj1NYygiZ29vZ2xlX3RhZ19kYXRhIix7fSk7Ti50ZHx8KE4udGQ9e30pO0c9Ti50ZDt2YXIgUz1FZCh1LkhjLG51bGwpO0VkKHUuRWEsUyk7dmFyIFc9W10sZWE7Zm9yKGVhIGluIEcpRy5oYXNPd25Qcm9wZXJ0eShlYSkmJmxDKHosR1tlYV0sUykubGVuZ3RoJiZXLnB1c2goZWEpO1cubGVuZ3RoJiYoakMoeix5LFcpLHNiKCJUQUdHSU5HIixmQ1tCLnJlYWR5U3RhdGVdfHwxNCkpO0dbeV09U319fWYoZC5ILmlkLGIsZC5LLHUpfWNhdGNoKGZhKXt2YXIgamE9ZC5tZXNzYWdlQ29udGV4dC5ldmVudElkO09DKCk7TkMoamEsciwiNCIpfX07Yj09PSJndGFnLmdldCI/digpOmlvKGUuUix2KX19fSxTQz1mdW5jdGlvbihhLGIpe2lmKGIudHlwZSE9PSJyZXF1aXJlIil7dmFyIGM9dm9pZCAwO2IudHlwZT09PSJldmVudCImJihjPWIuYXJnc1sxXSk7aWYoYi5IKWZvcih2YXIgZD1RQyhhLGIuSCkuS1tiLnR5cGVdfHwKW10sZT0wO2U8ZC5sZW5ndGg7ZSsrKWRbZV0oYyk7ZWxzZSBmb3IodmFyIGYgaW4gYS5kZXN0aW5hdGlvbnMpaWYoYS5kZXN0aW5hdGlvbnMuaGFzT3duUHJvcGVydHkoZikpe3ZhciBnPWEuZGVzdGluYXRpb25zW2ZdO2lmKGcmJmcuSylmb3IodmFyIGg9Zy5LW2IudHlwZV18fFtdLGw9MDtsPGgubGVuZ3RoO2wrKyloW2xdKGMpfX19O1BDLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1RQyh0aGlzLGEpO2Uuc3RhdHVzIT09MyYmKGUuTj1iLGUuc3RhdHVzPTMsZS5SPWxvKGMpLFRDKHRoaXMsYSxkfHx7fSksdGhpcy5mbHVzaCgpKX07ClBDLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKGEsYixjLGQpe2MhPT12b2lkIDAmJihRQyh0aGlzLGMpLnN0YXR1cz09PTEmJihRQyh0aGlzLGMpLnN0YXR1cz0yLHRoaXMucHVzaCgicmVxdWlyZSIsW3t9XSxjLHt9KSksUUModGhpcyxjKS5IJiYoZC5kZWZlcnJhYmxlPSExKSxkLmV2ZW50TWV0YWRhdGF8fChkLmV2ZW50TWV0YWRhdGE9e30pLGQuZXZlbnRNZXRhZGF0YVtILkouc2ddfHwoZC5ldmVudE1ldGFkYXRhW0guSi5zZ109W2MuZGVzdGluYXRpb25JZF0pLGQuZXZlbnRNZXRhZGF0YVtILkoubWpdfHwoZC5ldmVudE1ldGFkYXRhW0guSi5tal09W2MuaWRdKSk7dGhpcy5jb21tYW5kcy5wdXNoKG5ldyBuQyhhLGMsYixkKSk7ZC5kZWZlcnJhYmxlfHx0aGlzLmZsdXNoKCl9OwpQQy5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXRoaXMsYz1bXSxkPSExLGU9e307dGhpcy5jb21tYW5kcy5sZW5ndGg7ZT17Wm46dm9pZCAwfSl7dmFyIGY9dGhpcy5jb21tYW5kc1swXSxnPWYuSDtpZihmLm1lc3NhZ2VDb250ZXh0LmRlZmVycmFibGUpIWd8fFFDKHRoaXMsZykuSD8oZi5tZXNzYWdlQ29udGV4dC5kZWZlcnJhYmxlPSExLHRoaXMuY29tbWFuZHMucHVzaChmKSk6Yy5wdXNoKGYpLHRoaXMuY29tbWFuZHMuc2hpZnQoKTtlbHNle3N3aXRjaChmLnR5cGUpe2Nhc2UgInJlcXVpcmUiOmlmKFFDKHRoaXMsZykuc3RhdHVzIT09MyYmIWEpe3RoaXMuY29tbWFuZHMucHVzaC5hcHBseSh0aGlzLmNvbW1hbmRzLGMpO3JldHVybn1icmVhaztjYXNlICJzZXQiOnZhciBoPWYuYXJnc1swXTtLQyhoKTtVQyhoKTtHYihoLGZ1bmN0aW9uKHgseSl7RWQoVmIoeCx5KSxiLkgpfSk7SHUoaCwhMCk7YnJlYWs7Y2FzZSAiZXZlbnQiOmUuWm49Zi5hcmdzWzFdO3ZhciBsPQpWQyhmLmFyZ3NbMF0sZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oKXt9fShlKSksbj1sW0YuRC5YYl07biYmbiE9PWcuaWR8fEh1KGwpO1JDKHRoaXMsZS5abixsLGYpO2JyZWFrO2Nhc2UgImdldCI6dmFyIHA9e30scT0ocFtGLkQuVGZdPWYuYXJnc1swXSxwW0YuRC5TZl09Zi5hcmdzWzFdLHApO1JDKHRoaXMsRi5ELkpiLHEsZik7YnJlYWs7Y2FzZSAiY29udGFpbmVyX2NvbmZpZyI6dmFyIHI9UUModGhpcyxnKSx0PVZDKGYuYXJnc1swXSxmdW5jdGlvbigpe30pO0h1KHQsITApO3IuSD0hMDtFZCh0LHIuaGIpO2Q9ITA7YnJlYWs7Y2FzZSAiZGVzdGluYXRpb25fY29uZmlnIjp2YXIgdT1RQyh0aGlzLGcpLHY9VkMoZi5hcmdzWzBdLGZ1bmN0aW9uKCl7fSk7SHUodiwhMCk7dS5XYVtnLmlkXXx8KHUuV2FbZy5pZF09e30pO3UuSD0hMDtFZCh2LHUuV2FbZy5pZF0pO2Q9ITA7YnJlYWs7Y2FzZSAicmVzZXRfY29udGFpbmVyX2NvbmZpZyI6UUModGhpcyxnKS5oYj17fTticmVhazsKY2FzZSAicmVzZXRfdGFyZ2V0X2NvbmZpZyI6UUModGhpcyxnKS5XYVtnLmlkXT17fX10aGlzLmNvbW1hbmRzLnNoaWZ0KCk7U0ModGhpcyxmKX19dGhpcy5jb21tYW5kcy5wdXNoLmFwcGx5KHRoaXMuY29tbWFuZHMsYyk7ZCYmdGhpcy5mbHVzaCgpfTt2YXIgVEM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPUVkKGMsbnVsbCk7RWQoUUMoYSxiKS5pYixkKTtRQyhhLGIpLmliPWR9O2Z1bmN0aW9uIFZDKGEsYil7dmFyIGM9e307R2IoYSxmdW5jdGlvbihkLGUpe0VkKFZiKGQsZSksYyl9KTtLQyhjLGIpO1VDKGMpO3JldHVybiBjfQpmdW5jdGlvbiBVQyhhKXtpZihNKDYwMSkmJkJBKCkpe2Zvcih2YXIgYj0hMSxjPW0obmV3IFNldChbRi5ELnljLEYuRC5kZF0pKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTthW2VdIT09dm9pZCAwJiYoYj0hMCxkZWxldGUgYVtlXSl9YiYmIWFsKDM1LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSYmKFprKDM1LCEwKSx3aW5kb3cuY29uc29sZSYmd2luZG93LmNvbnNvbGUubG9nJiZ3aW5kb3cuY29uc29sZS5sb2coIkdvb2dsZSBUYWcgTWFuYWdlcjogU2VydmVyLXNpZGUgR1RNIHBhcmFtZXRlcnMgKHRyYW5zcG9ydF91cmwvc2VydmVyX2NvbnRhaW5lcl91cmwpIGFyZSBub3QgcGVybWl0dGVkIG9uIHRoaXMgZG9tYWluIGFuZCBoYXZlIGJlZW4gaWdub3JlZC4iKSxQKDE5NykpfX07dmFyIFdDPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBQQzt0aGlzLks9ITF9O1dDLnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbigpe3RoaXMuSC5mbHVzaCgpfTt2YXIgWEM7ZnVuY3Rpb24gWUMoKXtYQ3x8KFhDPW5ldyBXQyk7cmV0dXJuIFhDfWZ1bmN0aW9uIFpDKGEsYixjLGQpe3ZhciBlPVlDKCksZj1iQyhjLGQuaXNHdG1FdmVudCk7ZiYmKGUuSyYmKGQuZGVmZXJyYWJsZT0hMCksZS5ILnB1c2goImV2ZW50IixbYixhXSxmLGQpKX1mdW5jdGlvbiAkQyhhLGIsYyxkKXt2YXIgZT1ZQygpLGY9YkMoYyxkLmlzR3RtRXZlbnQpO2YmJmUuSC5wdXNoKCJnZXQiLFthLGJdLGYsZCl9ZnVuY3Rpb24gYUQoYSxiLGMpe3ZhciBkPVlDKCksZT1iQyhhLGMuaXNHdG1FdmVudCk7ZSYmZC5ILnB1c2goImNvbnRhaW5lcl9jb25maWciLFtiXSxlLGMpfQpmdW5jdGlvbiBiRChhLGIsYyl7dmFyIGQ9WUMoKSxlPWJDKGEsYy5pc0d0bUV2ZW50KTtlJiZkLkgucHVzaCgiZGVzdGluYXRpb25fY29uZmlnIixbYl0sZSxjKX1mdW5jdGlvbiBjRChhKXt2YXIgYj1ZQygpLGM9YkMoYSwhMCk7YyYmYi5ILnB1c2goInJlc2V0X2NvbnRhaW5lcl9jb25maWciLFtdLGMse30pfWZ1bmN0aW9uIGREKGEpe3ZhciBiPVlDKCksYz1iQyhhLCEwKTtjJiZiLkgucHVzaCgicmVzZXRfdGFyZ2V0X2NvbmZpZyIsW10sYyx7fSl9ZnVuY3Rpb24gZUQoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO3JldHVybiBjP1FDKGIuSCxjKS5pYjp7fX1mdW5jdGlvbiBmRChhKXtyZXR1cm4gWUMoKS5ILkhbYV19ZnVuY3Rpb24gZ0QoYSl7dmFyIGI9WUMoKSxjPWJDKGEsITApO3JldHVybiBjP1FDKGIuSCxjKS5IOiExfTtmdW5jdGlvbiBoRChhLGIpe2EuaGFzT3duUHJvcGVydHkoImd0bS51bmlxdWVFdmVudElkIil8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLCJndG0udW5pcXVlRXZlbnRJZCIse3ZhbHVlOnJqKCl9KTtiLmV2ZW50SWQ9YVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXTtiLnByaW9yaXR5SWQ9YVsiZ3RtLnByaW9yaXR5SWQiXTtyZXR1cm57ZXZlbnRJZDpiLmV2ZW50SWQscHJpb3JpdHlJZDpiLnByaW9yaXR5SWR9fWZ1bmN0aW9uIGlEKGEpe2Zvcih2YXIgYj1tKFtGLkQuZGQsRi5ELnljXSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWUsZT1hJiZhW2RdfHxmRChkKTtpZihlKXJldHVybiBlfX1mdW5jdGlvbiBqRChhKXtyZXR1cm4hYS5pc0d0bUV2ZW50fHxhLmV2ZW50TWV0YWRhdGEmJmEuZXZlbnRNZXRhZGF0YVtILkouQ2NdJiZhLmV2ZW50TWV0YWRhdGFbSC5KLk5iXSE9PXZrKCk/ITE6ITB9O3ZhciBrRD1uZXcgZnVuY3Rpb24oKXt0aGlzLkg9ITF9O3ZhciBsRD1mdW5jdGlvbigpe3RoaXMubWVzc2FnZXM9W107dGhpcy5IPVtdfTtsRC5wcm90b3R5cGUuZW5xdWV1ZT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dGhpcy5tZXNzYWdlcy5sZW5ndGgrMTthWyJndG0udW5pcXVlRXZlbnRJZCJdPWI7YVsiZ3RtLnByaW9yaXR5SWQiXT1kO3ZhciBlPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyx7ZXZlbnRJZDpiLHByaW9yaXR5SWQ6ZCxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOiEwfSk7aWYoTSg1OTUpKXt2YXIgZj1jLnByaW9yaXR5UXVldWU/W10uY29uY2F0KHcoYy5wcmlvcml0eVF1ZXVlKSxbZF0pOltkXTthWyJndG0ucHJpb3JpdHlRdWV1ZSJdPWY7ZS5wcmlvcml0eVF1ZXVlPWZ9dmFyIGc9e21lc3NhZ2U6YSxub3RCZWZvcmVFdmVudElkOmIscHJpb3JpdHlJZDpkLG1lc3NhZ2VDb250ZXh0OmV9O3RoaXMubWVzc2FnZXMucHVzaChnKTtmb3IodmFyIGg9MDtoPHRoaXMuSC5sZW5ndGg7aCsrKXRyeXt0aGlzLkhbaF0oZyl9Y2F0Y2gobCl7fX07CmxELnByb3RvdHlwZS5saXN0ZW49ZnVuY3Rpb24oYSl7dGhpcy5ILnB1c2goYSl9O2xELnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtmb3IodmFyIGE9e30sYj0wO2I8dGhpcy5tZXNzYWdlcy5sZW5ndGg7YisrKXt2YXIgYz10aGlzLm1lc3NhZ2VzW2JdLGQ9YVtjLm5vdEJlZm9yZUV2ZW50SWRdO2R8fChkPVtdLGFbYy5ub3RCZWZvcmVFdmVudElkXT1kKTtkLnB1c2goYyl9cmV0dXJuIGF9O2xELnByb3RvdHlwZS5wcnVuZT1mdW5jdGlvbihhKXtmb3IodmFyIGI9W10sYz1bXSxkPTA7ZDx0aGlzLm1lc3NhZ2VzLmxlbmd0aDtkKyspe3ZhciBlPXRoaXMubWVzc2FnZXNbZF07ZS5ub3RCZWZvcmVFdmVudElkPT09YT9iLnB1c2goZSk6Yy5wdXNoKGUpfXRoaXMubWVzc2FnZXM9YztyZXR1cm4gYn07CmZ1bmN0aW9uIG1EKGEsYixjKXtjLmV2ZW50TWV0YWRhdGE9Yy5ldmVudE1ldGFkYXRhfHx7fTtjLmV2ZW50TWV0YWRhdGFbSC5KLk5iXT1NKDU1MCk/dmsoKTpFKDYpO25EKCkuZW5xdWV1ZShhLGIsYyl9ZnVuY3Rpb24gbkQoKXtyZXR1cm4ga2ooIm1iIixmdW5jdGlvbigpe3JldHVybiBuZXcgbER9KX07dmFyIHBEPWZ1bmN0aW9uKGEsYil7dmFyIGM9b0Q7Yj1TdHJpbmcoYikuc3BsaXQoIiwiKTtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9Yy5OW2JbZF1dfHxbXTtjLk5bYltkXV09ZTtlLmluZGV4T2YoYSk8MCYmZS5wdXNoKGEpfX0scUQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9b0QsZD1bXSxlPVtdLGY9e30sZz0wO2c8YS5sZW5ndGg7Zj17bGs6dm9pZCAwLFFqOnZvaWQgMCxSajp2b2lkIDB9LGcrKyl7dmFyIGg9YVtnXTtpZihoLmluZGV4T2YoIi0iKT49MCl7aWYoZi5saz1iQyhoLGIpLGYubGspe3ZhciBsPXRrKCk7Q2IobCxmdW5jdGlvbih4KXtyZXR1cm4gZnVuY3Rpb24oeSl7cmV0dXJuIHgubGsuZGVzdGluYXRpb25JZD09PXl9fShmKSk/ZC5wdXNoKGgpOmUucHVzaChoKX19ZWxzZXtpZihNKDU1MCkpe3ZhciBuPWMuS1toXXx8W107Zi5Saj17fTtuLmZvckVhY2goZnVuY3Rpb24oeCl7cmV0dXJuIGZ1bmN0aW9uKHkpe3guUmpbeV09ITB9fShmKSk7Zm9yKHZhciBwPQp0aygpLHE9MDtxPHAubGVuZ3RoO3ErKylmLlJqW3BbcV1dJiZkLnB1c2gocFtxXSl9ZWxzZXt2YXIgcj1jLkhbaF18fFtdO2YuUWo9e307ci5mb3JFYWNoKGZ1bmN0aW9uKHgpe3JldHVybiBmdW5jdGlvbih5KXt4LlFqW3ldPSEwfX0oZikpO2Zvcih2YXIgdD13aygpLHU9MDt1PHQubGVuZ3RoO3UrKylpZihmLlFqW3RbdV1dKXtkPWQuY29uY2F0KHRrKCkpO2JyZWFrfX12YXIgdj1jLk5baF18fFtdO3YubGVuZ3RoJiYoZD1kLmNvbmNhdCh2KSl9fXJldHVybntlazpkLFBzOmV9fSxyRD1mdW5jdGlvbihhKXtHYihvRC5ILGZ1bmN0aW9uKGIsYyl7dmFyIGQ9Yy5pbmRleE9mKGEpO2Q+PTAmJmMuc3BsaWNlKGQsMSl9KX0sc0Q9ZnVuY3Rpb24oYSl7R2Iob0QuSyxmdW5jdGlvbihiLGMpe3ZhciBkPWMuaW5kZXhPZihhKTtkPj0wJiZjLnNwbGljZShkLDEpfSl9LHREPWZ1bmN0aW9uKGEpe0diKG9ELk4sZnVuY3Rpb24oYixjKXt2YXIgZD1jLmluZGV4T2YoYSk7ZD49MCYmYy5zcGxpY2UoZCwKMSl9KX0sb0Q9bmV3IGZ1bmN0aW9uKCl7dGhpcy5IPXt9O3RoaXMuTj17fTt0aGlzLks9e319O2Z1bmN0aW9uIHVEKGEsYixjKXt2YXIgZD1FZChhLG51bGwpO2QuZXZlbnRJZD12b2lkIDA7ZC5pbmhlcml0UGFyZW50Q29uZmlnPXZvaWQgMDtPYmplY3Qua2V5cyhiKS5zb21lKGZ1bmN0aW9uKGYpe3JldHVybiBiW2ZdIT09dm9pZCAwfSkmJlAoMTM2KTt2YXIgZT1FZChiLG51bGwpO0VkKGMsZSk7bUQockMod2soKVswXSxlKSxhLmV2ZW50SWQsZCl9CmZ1bmN0aW9uIHZEKGEsYixjLGQpe3ZhciBlPXt9LGY9KGVbRi5ELlViXT1GLkQud2EsZVsiZ3RtLmNvbmZpZ0NvbnRhaW5lcklkIl09YS5pZCxlWyJndG0uY29uZmlnUGFyYW1ldGVycyJdPWIsZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1kLmV2ZW50SWQsZSk7Yy5wcmlvcml0eVF1ZXVlJiYoZlsiZ3RtLnByaW9yaXR5UXVldWUiXT1jLnByaW9yaXR5UXVldWUpO2MuZXZlbnRNZXRhZGF0YSYmKGZbImd0bS5ldmVudE1ldGFkYXRhIl09Yy5ldmVudE1ldGFkYXRhKTthLkpjKCkmJihmWyJndG0uY29uZmlnQ29udGFpbmVySWQiXT13aygpWzBdLGZbImd0bS5vcmlnaW5hbENvbmZpZ1RhcmdldElkIl09YS5pZCk7cmV0dXJuIGZ9ZnVuY3Rpb24gd0QoYSxiLGMpe2lmKElmKDExKSYmIWMmJiFhW0YuRC5WZF0pe3ZhciBkPWFsKDEwLGZ1bmN0aW9uKCl7cmV0dXJuITF9KTtaaygxMCwhMCk7WEIoZCxhLGIpO2lmKGQpcmV0dXJuITB9cmV0dXJuITF9O2Z1bmN0aW9uIHhEKGEsYil7dmFyIGM9e30sZD0oYy5ldmVudD1hLGMpO2ImJihkLmV2ZW50TW9kZWw9RWQoYixudWxsKSxiW0YuRC5QZl0mJihkLmV2ZW50Q2FsbGJhY2s9YltGLkQuUGZdKSxiW0YuRC5waF0mJihkLmV2ZW50VGltZW91dD1iW0YuRC5waF0pKTtyZXR1cm4gZH0KZnVuY3Rpb24geUQoYSxiKXt2YXIgYz1hJiZhW0YuRC5YYl07Yz09PXZvaWQgMCYmKGM9dUEoRi5ELlhiLDIpLGM9PT12b2lkIDAmJihjPSJkZWZhdWx0IikpO2lmKHpiKGMpfHxBcnJheS5pc0FycmF5KGMpKXt2YXIgZDtkPWIuaXNHdG1FdmVudD96YihjKT9bY106YzpjLnRvU3RyaW5nKCkucmVwbGFjZSgvXHMrL2csIiIpLnNwbGl0KCIsIik7dmFyIGU9cUQoZCxiLmlzR3RtRXZlbnQpLGY9ZS5layxnPWUuUHM7aWYoZy5sZW5ndGgpZm9yKHZhciBoPWlEKGEpLGw9MDtsPGcubGVuZ3RoO2wrKyl7dmFyIG49YkMoZ1tsXSxiLmlzR3RtRXZlbnQpO2lmKG4pe3ZhciBwPW4uZGVzdGluYXRpb25JZCxxPXZvaWQgMDsoKHE9bmsobi5kZXN0aW5hdGlvbklkKSk9PW51bGw/dm9pZCAwOnEuc3RhdGUpPT09MHx8bkEocCxoLHtzb3VyY2U6Myxmcm9tQ29udGFpbmVyRXhlY3V0aW9uOmIuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbn0pfX12YXIgcj1mLmNvbmNhdChnKTtyZXR1cm57ZWs6Y0MoZixiLmlzR3RtRXZlbnQpLAptcjpjQyhyLGIuaXNHdG1FdmVudCl9fX07dmFyIHpEPXt9LEFEPSh6RC5jb25maWc9ZnVuY3Rpb24oYSxiKXt2YXIgYz1oRChhLGIpLGQ7YTp7aWYoIShhLmxlbmd0aDwyKSYmemIoYVsxXSkpe3ZhciBlPXt9O2lmKGEubGVuZ3RoPjIpe2lmKGFbMl0hPT12b2lkIDAmJiFDZChhWzJdKXx8YS5sZW5ndGg+Myl7ZD12b2lkIDA7YnJlYWsgYX1lPWFbMl19dmFyIGY9YkMoYVsxXSxiLmlzR3RtRXZlbnQpO2lmKGYpe2Q9e3RhcmdldDpmLHBhcmFtczplfTticmVhayBhfX1kPXZvaWQgMH12YXIgZz1kO2lmKGcpe3ZhciBoPWcudGFyZ2V0LGw9Zy5wYXJhbXMsbjthOntpZighSWYoNykpe3ZhciBwPXlrKHprKCkpO2lmKE1rKHApKXt2YXIgcT1wLnBhcmVudCxyPXEuaXNEZXN0aW5hdGlvbjtuPXtWczp5ayhxKSxNczpyfTticmVhayBhfX1uPXZvaWQgMH12YXIgdD1uLHU9dD09bnVsbD92b2lkIDA6dC5Wcyx2PXQ9PW51bGw/dm9pZCAwOnQuTXM7ZEIoYy5ldmVudElkLCJndGFnLmNvbmZpZyIpO3ZhciB4LHk9aC5kZXN0aW5hdGlvbklkOwppZihoLkpjKCk/dGsoKS5pbmRleE9mKHkpIT09LTE6d2soKS5pbmRleE9mKHkpIT09LTEpYTp7aWYodSYmKFAoMTI4KSx2JiZQKDEzMCksYi5pbmhlcml0UGFyZW50Q29uZmlnKSl7dmFyIHo7dmFyIEM9JGsoMTIpO2lmKEMpdUQoYixDLGwpLHo9ITE7ZWxzZXt2YXIgRD0kaygxMSk7IWxbRi5ELlZkXSYmKE0oNTUwKXx8SWYoMTEpKSYmRHx8WmsoMTEsRWQobCxudWxsKSk7ej0hMH16JiZ1LmNvbnRhaW5lcnMmJnUuY29udGFpbmVycy5qb2luKCIsIik7eD12b2lkIDA7YnJlYWsgYX12YXIgST0hSWYoNDUpLEc9IVNiKGguaWQsIkdUTS0iKTtJJiZHJiYoT2JqZWN0LmtleXMobCkubGVuZ3RoPT09MD9HdShULlcuU2spOkd1KFQuVy5UayksRWwoKSYmR3UoVC5XLlJrKSwkaygzMSkmJkd1KFQuVy5VaykpO3ZhciBOPVlCO2ZuLksmJihOLkg9PT0xJiYoUW0uSC5tY2M9ITEpLE4uSD0yKTtpZihNKDU1MCl8fCF3RChsLGIsaC5KYygpKSl7a0QuSHx8UCg0Myk7aWYoIU0oNTUwKSl7aWYoIWIubm9UYXJnZXRHcm91cCl7dmFyIFM9CmguaWQ7aWYoaC5KYygpKXREKFMpLHBEKFMsbFtGLkQuT2RdfHwiZGVmYXVsdCIpO2Vsc2V7ckQoUyk7dmFyIFc9bFtGLkQuT2RdfHwiZGVmYXVsdCIsZWE9b0Q7Vz1XLnRvU3RyaW5nKCkuc3BsaXQoIiwiKTtmb3IodmFyIGphPTA7amE8Vy5sZW5ndGg7amErKyl7dmFyIGZhPWVhLkhbV1tqYV1dfHxbXTtlYS5IW1dbamFdXT1mYTtmYS5pbmRleE9mKFMpPDAmJmZhLnB1c2goUyl9fX1kZWxldGUgbFtGLkQuT2RdfXZhciBzYT1iLmV2ZW50TWV0YWRhdGF8fHt9O3NhLmhhc093blByb3BlcnR5KEguSi5hZSl8fChzYVtILkouYWVdPSFiLmZyb21Db250YWluZXJFeGVjdXRpb24pO2IuZXZlbnRNZXRhZGF0YT1zYTtkZWxldGUgbFtGLkQuUGZdO2lmKE0oNTUwKSl7eD12RChoLGwsYixjKTticmVhayBhfXZhciBkYT0hIWxbRi5ELlZkXTtkZWxldGUgbFtGLkQuVmRdO3ZhciBtYT10aygpLFBhPWNELEZhPWFEO2guSmMoKSYmKG1hPVtoLmlkXSxQYT1kRCxGYT1iRCk7Zm9yKHZhciBxYT0wO3FhPAptYS5sZW5ndGg7cWErKyl7ZGF8fFBhKG1hW3FhXSk7dmFyIGliPWdEKG1hW3FhXSk7RmEobWFbcWFdLEVkKGwsbnVsbCksRWQoYixudWxsKSk7aWImJmRhfHxaQyhGLkQud2EsRWQobCxudWxsKSxtYVtxYV0sRWQoYixudWxsKSl9fXg9dm9pZCAwfWVsc2UgYTp7aWYoIWIuaW5oZXJpdFBhcmVudENvbmZpZyYmIWxbRi5ELlpjXSl7dmFyIFhiPWlEKGwpLExjPWguZGVzdGluYXRpb25JZDtpZihoLkpjKCkpbkEoTGMsWGIse3NvdXJjZToyLGZyb21Db250YWluZXJFeGVjdXRpb246Yi5mcm9tQ29udGFpbmVyRXhlY3V0aW9ufSk7ZWxzZSBpZih1IT09dm9pZCAwJiZ1LmNvbnRhaW5lcnMuaW5kZXhPZihMYykhPT0tMSl7dmFyIFFkPSRrKDExKSxZYz0kaygxMik7UWQ/dUQoYixsLFFkKTpZY3x8WmsoMTIsRWQobCxudWxsKSl9ZWxzZSBpZihoQShMYyxYYiwhMCx7c291cmNlOjIsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KSxNKDU1MCkpe3g9dkQoaCwKbCxiLGMpO2JyZWFrIGF9fXg9dm9pZCAwfXJldHVybiB4fX0sekQuY29uc2VudD1mdW5jdGlvbihhLGIpe2lmKGEubGVuZ3RoPT09Myl7UCgzOSk7dmFyIGM9aEQoYSxiKSxkPWFbMV0sZT17fSxmPU9vKGFbMl0pLGc7Zm9yKGcgaW4gZilpZihmLmhhc093blByb3BlcnR5KGcpKXt2YXIgaD1mW2ddO2VbZ109Zz09PUYuRC5ZZz9BcnJheS5pc0FycmF5KGgpP05hTjpOdW1iZXIoaCk6Zz09PUYuRC5uYz8oQXJyYXkuaXNBcnJheShoKT9oOltoXSkubWFwKFBvKTpRbyhoKX1iLmZyb21Db250YWluZXJFeGVjdXRpb258fChlW0YuRC5tYV0mJlAoMTM5KSxlW0YuRC5YYV0mJlAoMTQwKSk7ZD09PSJkZWZhdWx0Ij9UbyhlKTpkPT09InVwZGF0ZSI/Vm8oZSxjKTpkPT09ImRlY2xhcmUiJiZiLmZyb21Db250YWluZXJFeGVjdXRpb24mJlNvKGUpfX0sekQuY29udGFpbmVyX2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZDZChhWzJdKSl7dmFyIGM9CmFbMl0sZD1iQyhhWzFdLCEwKTtkJiZhRChkLmRlc3RpbmF0aW9uSWQsYyxFZChiLG51bGwpKX19LHpELmRlc3RpbmF0aW9uX2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZDZChhWzJdKSl7dmFyIGM9YVsyXSxkPWJDKGFbMV0sITApO2lmKGQpe2lmKE0oNTUwKSl7aWYoIWIubm9UYXJnZXRHcm91cCl7dmFyIGU9ZC5pZDtpZihkLkpjKCkpdEQoZSkscEQoZSxjW0YuRC5PZF18fCJkZWZhdWx0Iik7ZWxzZXtzRChlKTt2YXIgZj1jW0YuRC5PZF18fCJkZWZhdWx0IixnPW9EO2Y9U3RyaW5nKGYpLnNwbGl0KCIsIik7Zm9yKHZhciBoPTA7aDxmLmxlbmd0aDtoKyspe3ZhciBsPWcuS1tmW2hdXXx8W107Zy5LW2ZbaF1dPWw7bC5pbmRleE9mKGUpPDAmJmwucHVzaChlKX19fWRlbGV0ZSBjW0YuRC5PZF19YkQoZC5pZCxjLEVkKGIsbnVsbCkpfX19LHpELmV2ZW50PWZ1bmN0aW9uKGEsYil7dmFyIGM9YVsxXTtpZighKGEubGVuZ3RoPDIpJiYKemIoYykpe3ZhciBkPXZvaWQgMDtpZihhLmxlbmd0aD4yKXtpZighQ2QoYVsyXSkmJmFbMl0hPT12b2lkIDB8fGEubGVuZ3RoPjMpcmV0dXJuO2Q9YVsyXX12YXIgZT14RChjLGQpLGY9aEQoYSxiKSxnPWYuZXZlbnRJZCxoPWYucHJpb3JpdHlJZDtlWyJndG0udW5pcXVlRXZlbnRJZCJdPWc7aCYmKGVbImd0bS5wcmlvcml0eUlkIl09aCk7Yi5wcmlvcml0eVF1ZXVlJiYoZVsiZ3RtLnByaW9yaXR5UXVldWUiXT1iLnByaW9yaXR5UXVldWUpO2lmKGM9PT0ib3B0aW1pemUuY2FsbGJhY2siKXJldHVybiBlLmV2ZW50TW9kZWw9ZS5ldmVudE1vZGVsfHx7fSxlO3ZhciBsPXlEKGQsYik7aWYobCl7Zm9yKHZhciBuPWwuZWsscD1sLm1yLHE9cC5tYXAoZnVuY3Rpb24oTil7cmV0dXJuIE4uaWR9KSxyPXAubWFwKGZ1bmN0aW9uKE4pe3JldHVybiBOLmRlc3RpbmF0aW9uSWR9KSx0PW4ubWFwKGZ1bmN0aW9uKE4pe3JldHVybiBOLmlkfSksdT1tKHRrKCkpLHY9dS5uZXh0KCk7IXYuZG9uZTt2PQp1Lm5leHQoKSl7dmFyIHg9di52YWx1ZTtyLmluZGV4T2YoeCk8MCYmdC5wdXNoKHgpfWRCKGcsYyk7Zm9yKHZhciB5PW0odCksej15Lm5leHQoKTshei5kb25lO3o9eS5uZXh0KCkpe3ZhciBDPXoudmFsdWUsRD1FZChiLG51bGwpLEk9RWQoZCxudWxsKTtkZWxldGUgSVtGLkQuUGZdO3ZhciBHPUQuZXZlbnRNZXRhZGF0YXx8e307Ry5oYXNPd25Qcm9wZXJ0eShILkouYWUpfHwoR1tILkouYWVdPSFELmZyb21Db250YWluZXJFeGVjdXRpb24pO0dbSC5KLm1qXT1xLnNsaWNlKCk7R1tILkouc2ddPXIuc2xpY2UoKTtELmV2ZW50TWV0YWRhdGE9RztaQyhjLEksQyxEKX1lLmV2ZW50TW9kZWw9ZS5ldmVudE1vZGVsfHx7fTtxLmxlbmd0aD4wP2UuZXZlbnRNb2RlbFtGLkQuWGJdPXEuam9pbigiLCIpOmRlbGV0ZSBlLmV2ZW50TW9kZWxbRi5ELlhiXTtrRC5IfHxQKDQzKTtiLm5vR3RtRXZlbnQ9PT12b2lkIDAmJmIuZXZlbnRNZXRhZGF0YSYmYi5ldmVudE1ldGFkYXRhW0guSi5Cbl0mJihiLm5vR3RtRXZlbnQ9CiEwKTtlLmV2ZW50TW9kZWxbRi5ELlljXSYmKGIubm9HdG1FdmVudD0hMCk7cmV0dXJuIGIubm9HdG1FdmVudD92b2lkIDA6ZX19fSx6RC5nZXQ9ZnVuY3Rpb24oYSxiKXtQKDUzKTtpZihhLmxlbmd0aD09PTQmJnpiKGFbMV0pJiZ6YihhWzJdKSYmeWIoYVszXSkpe3ZhciBjPWJDKGFbMV0sYi5pc0d0bUV2ZW50KSxkPVN0cmluZyhhWzJdKSxlPWFbM107aWYoYyl7a0QuSHx8UCg0Myk7dmFyIGY9aUQoKTtpZihDYih0aygpLGZ1bmN0aW9uKGgpe3JldHVybiBjLmRlc3RpbmF0aW9uSWQ9PT1ofSkpe2hEKGEsYik7dmFyIGc9e307RWQoKGdbRi5ELlRmXT1kLGdbRi5ELlNmXT1lLGcpLG51bGwpOyRDKGQsZnVuY3Rpb24oaCl7YmQoZnVuY3Rpb24oKXtlKGgpfSl9LGMuaWQsYil9ZWxzZSBuQShjLmRlc3RpbmF0aW9uSWQsZix7c291cmNlOjQsZnJvbUNvbnRhaW5lckV4ZWN1dGlvbjpiLmZyb21Db250YWluZXJFeGVjdXRpb259KX19fSx6RC5qcz1mdW5jdGlvbihhLGIpe3ZhciBjO2lmKGEubGVuZ3RoPT09CjImJmFbMV0uZ2V0VGltZSl7a0QuSD0hMDt2YXIgZD1oRChhLGIpLGU9ZC5ldmVudElkLGY9ZC5wcmlvcml0eUlkLGc9e307Yz0oZy5ldmVudD0iZ3RtLmpzIixnWyJndG0uc3RhcnQiXT1hWzFdLmdldFRpbWUoKSxnWyJndG0udW5pcXVlRXZlbnRJZCJdPWUsZ1siZ3RtLnByaW9yaXR5SWQiXT1mLGcpfWVsc2UgYz12b2lkIDA7cmV0dXJuIGN9LHpELnBvbGljeT1mdW5jdGlvbihhKXtpZihhLmxlbmd0aD09PTMmJnpiKGFbMV0pJiZ5YihhWzJdKSl7aWYoaHkoYVsxXSxhWzJdKSxQKDc0KSxhWzFdPT09ImFsbCIpe1AoNzUpO3ZhciBiPSExO3RyeXtiPWFbMl0oRSg1KSwidW5rbm93biIse30pfWNhdGNoKGMpe31ifHxQKDc2KX19ZWxzZSBQKDczKX0sekQucmVzZXRfdGFyZ2V0X2NvbmZpZz1mdW5jdGlvbihhLGIpe2lmKGpEKGIpJiZhLmxlbmd0aD09PTImJnpiKGFbMV0pKXt2YXIgYz1iQyhhWzFdLCEwKTtjJiZkRChjLmlkKX19LHpELnNldD1mdW5jdGlvbihhLGIpe3ZhciBjPXZvaWQgMDsKYS5sZW5ndGg9PT0yJiZDZChhWzFdKT9jPUVkKGFbMV0sbnVsbCk6YS5sZW5ndGg9PT0zJiZ6YihhWzFdKSYmKGM9e30sQ2QoYVsyXSl8fEFycmF5LmlzQXJyYXkoYVsyXSk/Y1thWzFdXT1FZChhWzJdLG51bGwpOmNbYVsxXV09YVsyXSk7aWYoYyl7WmsoMzEsITApO3ZhciBkPWhEKGEsYiksZT1kLmV2ZW50SWQsZj1kLnByaW9yaXR5SWQ7RWQoYyxudWxsKTtFKDUpO3ZhciBnPUVkKGMsbnVsbCk7WUMoKS5ILnB1c2goInNldCIsW2ddLHZvaWQgMCxiKTtjWyJndG0udW5pcXVlRXZlbnRJZCJdPWU7ZiYmKGNbImd0bS5wcmlvcml0eUlkIl09Zik7ZGVsZXRlIGMuZXZlbnQ7Yi5vdmVyd3JpdGVNb2RlbEZpZWxkcz0hMDtyZXR1cm4gY319LHpEKSxCRD17fSxDRD0oQkQucG9saWN5PSEwLEJEKTt2YXIgRUQ9ZnVuY3Rpb24oYSl7aWYoREQoYSkpcmV0dXJuIGE7dGhpcy52YWx1ZT1hfTtFRC5wcm90b3R5cGUuZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9O3ZhciBERD1mdW5jdGlvbihhKXtyZXR1cm4hYXx8QWQoYSkhPT0ib2JqZWN0Inx8Q2QoYSk/ITE6ImdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZSJpbiBhfTtFRC5wcm90b3R5cGUuZ2V0VW50cnVzdGVkTWVzc2FnZVZhbHVlPUVELnByb3RvdHlwZS5nZXRVbnRydXN0ZWRNZXNzYWdlVmFsdWU7dmFyIEZEPXtCYjoiMSIsZWU6IjIiLFhkOiIzIixjZToiNCIseGY6IjUiLHFnOiI2IixLaDoiNyIsdGo6IjgiLGxpOiI5IixqajoiMTAifTsKdmFyIEdEPWZ1bmN0aW9uKGEsYil7aWYoYSl7dmFyIGM9YS50cmltKCkucmVwbGFjZUFsbCgvXHMrL2csIiIpLnJlcGxhY2VBbGwoLyhcZHsyLH0pXC4vZywiJDEiKS5yZXBsYWNlQWxsKC8tL2csIiIpLnJlcGxhY2VBbGwoL1woKFxkKylcKS9nLCIkMSIpO2lmKGImJmMubWF0Y2goL15cKz9cZHszLDR9JC8pKXJldHVybiBjO2MuY2hhckF0KDApIT09IisiJiYoYz0iKyIrYyk7aWYoYy5tYXRjaChuZXcgUmVnRXhwKCJeXFwrXFxkeyIrKE0oNTk3KT83OjEwKSsiLDE1fSQiKSkpcmV0dXJuIGN9fSxJRD1mdW5jdGlvbihhKXtpZihhKXt2YXIgYj1hLnRyaW0oKTtpZihIRC50ZXN0KGIpKXJldHVybiBiLnRvTG93ZXJDYXNlKCkucmVwbGFjZUFsbCgvWy0gXSsvZywiIil9fSxNRD1mdW5jdGlvbihhKXt2YXIgYj1KRChLRCkoYSk7aWYoYiYmIUxEKGIpKXJldHVybiBifSxMRD1mdW5jdGlvbihhKXtpZighQS5sb2NhdGlvbilyZXR1cm4hMTt2YXIgYj1OaihBLmxvY2F0aW9uLCJob3N0IiwhMCksCmM7aWYoTSg2MDIpKWE6e2Zvcih2YXIgZD1iLnNwbGl0KCIuIiksZT1hLnRvTG93ZXJDYXNlKCksZj0wO2Y8ZC5sZW5ndGgtMTtmKyspe3ZhciBnPWQuc2xpY2UoZikuam9pbigiLiIpO2lmKGUubWF0Y2goIkAiK2crIiQiKSl7Yz0hMDticmVhayBhfX1jPSExfWVsc2UgYz1hLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihiKT49MDtyZXR1cm4gY30sSkQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBjPWIubWF0Y2goYSk7cmV0dXJuIGM/Y1swXS50cmltKCkudG9Mb3dlckNhc2UoKTp2b2lkIDB9fSxLRD0vW0EtWjAtOS5fJSstXStAW0EtWjAtOS4tXStcLltBLVpdezIsfS9pLE5EPUpEKC9eKFteXHgwMC1ceDQwXHg1Yi1ceDYwXHg3Yi1ceGZmXXxbLi1dfFxzKSskLyksSEQ9UmVnRXhwKCJeKD86W0EtWl17MSwyfVxcZFtBLVpcXGRdP1sgLV0/XFxkW0EtWl17Mn18W0EtWl1cXGRbQS1aXVsgLV0/XFxkW0EtWl1cXGR8XFxkezR9ID9bQS1aXXsyfXxbQS1aXVxcZHs0fVtBLVpdezN9fFxcZHs1fSg/Oi1cXGR7NH0pP3xcXGR7NX0tXFxkezN9fFxcZHs0fS1cXGR7M318XFxkezN9LVxcZHs0fXxcXGR7Mn0tXFxkezN9fFxcZHszfSA/XFxkezJ9fFxcZHs0LDd9KSQiLAoiaSIpLE9EPUpEKC9eKFteXHgwMC1ceDQwXHg1Yi1ceDYwXHg3Yi1ceGZmXXxbLi1dfFxzfFxkKSskLyk7CnZhciBQRD1mdW5jdGlvbigpe3ZhciBhPVN0cmluZyhhbCgzMyxmdW5jdGlvbigpe3JldHVybiAwfSkpO2EuaW5kZXhPZigiLiIpIT09LTEmJihhPWEuc3Vic3RyaW5nKDAsYS5pbmRleE9mKCIuIikrMykpO3ZhciBiPWFsKDM0LGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTtyZXR1cm57dnQ6TnVtYmVyKGEpLHN0OmJ9fSxRRD1mdW5jdGlvbigpe3JldHVybiBhbCgzMixmdW5jdGlvbigpe3JldHVybiBuZXcgTWFwfSl9LFNEPWZ1bmN0aW9uKGEpe3ZhciBiPXBkKCl8fDAsYz1bRkQuQmJdO00oNTY4KSYmYy5wdXNoKEZELmVlLEZELlhkLEZELmNlLEZELnhmLEZELnFnLEZELnRqLEZELmxpLEZELmpqKTtmb3IodmFyIGQ9UkQoYSxuZXcgU2V0KGMpKSxlPWFsKDMyLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KSxmPW0oZCksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe3ZhciBoPWcudmFsdWU7ZS5zZXQoaC5EYSxoKX12YXIgbD0ocGQoKXx8MCktYixuPWFsKDMzLGZ1bmN0aW9uKCl7cmV0dXJuIDB9KTsKWmsoMzMsbitsKTt2YXIgcD1hbCgzNCxmdW5jdGlvbigpe3JldHVybiAwfSk7WmsoMzQscCsxKX0sUkQ9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9TmYoMzYsMiksZD1bXSxlPVt7b286YSxkZXB0aDowfV07ZS5sZW5ndGg+MDspZm9yKHZhciBmPWUuc2hpZnQoKSxnPWYub28saD1mLmRlcHRoLGw9bShPYmplY3Qua2V5cyhnKSksbj1sLm5leHQoKTshbi5kb25lO249bC5uZXh0KCkpe3ZhciBwPW4udmFsdWU7aWYoIVRELmhhcyhwKSl7dmFyIHE9Z1twXTtpZihxKWlmKENkKHEpKWgrMTw9YyYmZS5wdXNoKHtvbzpxLGRlcHRoOmgrMX0pO2Vsc2V7Zm9yKHZhciByPW0oYiksdD1yLm5leHQoKTshdC5kb25lO3Q9ci5uZXh0KCkpe3ZhciB1PXQudmFsdWUsdj1VRFt1XTtpZih2JiZ2LktjLnRlc3QocCkpe3ZhciB4PXYubmEoU3RyaW5nKHEpKTtpZih4KXtkLnB1c2goe0NhOngsRGE6dX0pO2IuZGVsZXRlKHUpO2JyZWFrfX19aWYoYi5zaXplPT09MClyZXR1cm4gZH19fXJldHVybiBkfSxURD0KbmV3IFNldChbIml0ZW1zIiwiZWNvbW1lcmNlIl0pLFZEPVJlZ0V4cCgicGhvbmUiLCJpIiksV0Q9UmVnRXhwKCJmaXJzdF8/bmFtZSIsImkiKSxYRD1SZWdFeHAoImxhc3RfP25hbWUiLCJpIiksWUQ9UmVnRXhwKCJjb3VudHJ5IiwiaSIpLFpEPVJlZ0V4cCgicG9zdHx6aXAiLCJpIiksJEQ9UmVnRXhwKCJhZGRyZXNzfHN0cmVldCIsImkiKSxhRT1SZWdFeHAoImNpdHkiLCJpIiksYkU9UmVnRXhwKCJyZWdpb258c3RhdGV8cHJvdmluY2UiLCJpIiksY0U9e30sVUQ9KGNFW0ZELkJiXT17S2M6UmVnRXhwKCJlbWFpbCIsImkiKSxuYTpNRH0sY0VbRkQuZWVdPXtLYzpWRCxuYTpmdW5jdGlvbihhKXtyZXR1cm4gR0QoYSwhMSl9fSxjRVtGRC5YZF09e0tjOldELG5hOk5EfSxjRVtGRC5jZV09e0tjOlhELG5hOk5EfSxjRVtGRC50al09e0tjOiRELG5hOk9EfSxjRVtGRC5saV09e0tjOmFFLG5hOk5EfSxjRVtGRC5qal09e0tjOmJFLG5hOk5EfSxjRVtGRC5xZ109e0tjOlpELG5hOklEfSxjRVtGRC54Zl09CntLYzpZRCxuYTpORH0sY0UpO3ZhciBkRT1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5sb2FkZWQ9ITE7dGhpcy5IPVtdO2lmKEIucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSIpdGhpcy5vbkxvYWQoKTtlbHNlICRjKEEsImxvYWQiLGZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgYS5vbkxvYWQoKX0pfTtkRS5wcm90b3R5cGUub25Mb2FkPWZ1bmN0aW9uKCl7aWYoIXRoaXMubG9hZGVkKXt0aGlzLmxvYWRlZD0hMDtmb3IodmFyIGE9MDthPHRoaXMuSC5sZW5ndGg7YSsrKWJkKHRoaXMuSFthXSl9fTt2YXIgZkU9ZnVuY3Rpb24oYSl7dmFyIGI9ZUU7Yi5sb2FkZWQ/YmQoYSk6Yi5ILnB1c2goYSl9LGVFPW5ldyBkRTt2YXIgZ0U9ZnVuY3Rpb24oKXt0aGlzLlo9MDt0aGlzLks9e307dGhpcy5IPVtdO3RoaXMuTj1bXTt0aGlzLmZhPXRoaXMuUj10aGlzLmphPSExfSxpRT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9aEU7YS5ldmVudENhbGxiYWNrPWI7YyYmKGEuZXZlbnRUaW1lb3V0PWMpO3JldHVybiBkLnB1c2goYSl9LGpFPWZ1bmN0aW9uKGEsYil7aWYoIUFiKGIpfHxiPDApYj0wO3ZhciBjPXFqKCksZD0wLGU9ITEsZj12b2lkIDA7Zj1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlfHwoZT0hMCxhKCkpO2Y9dm9pZCAwfSxiKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZz1jP2Muc3Vic2NyaWJlcnM6MTsrK2Q9PT1nJiYoZiYmKEEuY2xlYXJUaW1lb3V0KGYpLGY9dm9pZCAwKSxlfHwoYSgpLGU9ITApKX19LGxFPWZ1bmN0aW9uKGEpe3ZhciBiO2lmKGEuTi5sZW5ndGgpYj1hLk4uc2hpZnQoKTtlbHNlIGlmKGEuSC5sZW5ndGgpYj1hLkguc2hpZnQoKTtlbHNlIHJldHVybjt2YXIgYzt2YXIgZD1iO2lmKGEuamF8fAoha0UoZC5tZXNzYWdlKSljPWQ7ZWxzZXthLmphPSEwO3ZhciBlPWQubWVzc2FnZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXSxmLGc7dHlwZW9mIGU9PT0ibnVtYmVyIj8oZj1lLTIsZz1lLTEpOihmPXJqKCksZz1yaigpLGQubWVzc2FnZVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1yaigpKTt2YXIgaD17fSxsPXttZXNzYWdlOihoLmV2ZW50PSJndG0uaW5pdF9jb25zZW50IixoWyJndG0udW5pcXVlRXZlbnRJZCJdPWYsaCksbWVzc2FnZUNvbnRleHQ6e2V2ZW50SWQ6Zn19LG49e30scD17bWVzc2FnZToobi5ldmVudD0iZ3RtLmluaXQiLG5bImd0bS51bmlxdWVFdmVudElkIl09ZyxuKSxtZXNzYWdlQ29udGV4dDp7ZXZlbnRJZDpnfX07YS5ILnVuc2hpZnQocCxkKTtjPWx9cmV0dXJuIGN9LG9FPWZ1bmN0aW9uKGEpe2EuZmF8fFAoMTk2KTtmb3IodmFyIGI9ITEsYzshYS5SJiYoYz1sRShhKSk7KXthLlI9ITA7dmFyIGQ9ckE7ZGVsZXRlIGQuSC5ldmVudE1vZGVsO29BKGQpO3ZhciBlPWMsZj0KZS5tZXNzYWdlLGc9ZS5tZXNzYWdlQ29udGV4dDtpZihmPT1udWxsKWEuUj0hMTtlbHNle2cuZnJvbUNvbnRhaW5lckV4ZWN1dGlvbiYmc0EoKTt0cnl7aWYoeWIoZikpdHJ5e2YuY2FsbCh0QSl9Y2F0Y2goUyl7fWVsc2UgaWYoQXJyYXkuaXNBcnJheShmKSl7aWYoemIoZlswXSkpe3ZhciBoPWZbMF0uc3BsaXQoIi4iKSxsPWgucG9wKCksbj1mLnNsaWNlKDEpLHA9dUEoaC5qb2luKCIuIiksMik7aWYocCE9bnVsbCl0cnl7cFtsXS5hcHBseShwLG4pfWNhdGNoKFMpe319fWVsc2V7dmFyIHE9dm9pZCAwO2lmKEhiKGYpKWE6e2lmKGYubGVuZ3RoJiZ6YihmWzBdKSl7dmFyIHI9QURbZlswXV07aWYociYmKCFnLmZyb21Db250YWluZXJFeGVjdXRpb258fCFDRFtmWzBdXSkpe3E9cihmLGcpO2JyZWFrIGF9fXE9dm9pZCAwfWVsc2UgcT1mO2lmKHEpe3ZhciB0O2Zvcih2YXIgdT1xLHY9dS5fY2xlYXJ8fGcub3ZlcndyaXRlTW9kZWxGaWVsZHMseD1tKE9iamVjdC5rZXlzKHUpKSx5PXgubmV4dCgpOyF5LmRvbmU7eT0KeC5uZXh0KCkpe3ZhciB6PXkudmFsdWU7eiE9PSJfY2xlYXIiJiYodiYmckEuc2V0KHosdm9pZCAwKSxyQS5zZXQoeix1W3pdKSl9TSg1OTIpJiZTRCh1KTskaygyNSl8fFprKDI1LHVbImd0bS5zdGFydCJdKTt2YXIgQz11WyJndG0udW5pcXVlRXZlbnRJZCJdO3UuZXZlbnQ/KHR5cGVvZiBDIT09Im51bWJlciImJihDPXJqKCksdVsiZ3RtLnVuaXF1ZUV2ZW50SWQiXT1DLHJBLnNldCgiZ3RtLnVuaXF1ZUV2ZW50SWQiLEMpKSx0PXpCKHUpKTp0PSExO2I9dHx8Yn19fWZpbmFsbHl7Zy5mcm9tQ29udGFpbmVyRXhlY3V0aW9uJiZvQShyQSwhMCk7dmFyIEQ9ZlsiZ3RtLnVuaXF1ZUV2ZW50SWQiXTtpZih0eXBlb2YgRD09PSJudW1iZXIiKXtmb3IodmFyIEk9YSxHPUkuS1tTdHJpbmcoRCldfHxbXSxOPTA7TjxHLmxlbmd0aDtOKyspSS5OLnB1c2gobUUoR1tOXSkpO0cubGVuZ3RoJiZJLk4uc29ydChuRSk7ZGVsZXRlIEkuS1tTdHJpbmcoRCldO0Q+YS5aJiYoYS5aPUQpfWEuUj0hMX19fXJldHVybiFifSwKcEU9ZnVuY3Rpb24oKXt2YXIgYT1oRTthLmZhJiZQKDE5NSk7YS5mYT0hMDtpZihmbi5IKXt2YXIgYj0hSWYoNTEpLGM9cnooKTtweihjLHtzdGFnZTpJeS5YLlpnfSk7aWYoYil7dmFyIGQ9cXooYyx7c3RhZ2U6SXkuWC5Za30sSXkuWC5uaSk7ZCE9PXZvaWQgMCYmKGMuSC5ZPWQpfXZhciBlPWEuSC5sZW5ndGg7cnooKS5ILkM9ZX1vRShhKTtpZihmbi5IKXt2YXIgZj1yeigpLGc9cXooZix7c3RhZ2U6SXkuWC5Wa30sSXkuWC5aZyk7ZyE9PXZvaWQgMCYmKGYuSC5CPWcpfXRyeXt2YXIgaD1BW0UoMTkpXSxsPUUoNSksbj1oLmhpZGU7aWYobiYmbltsXSE9PXZvaWQgMCYmbi5lbmQpe25bbF09ITE7dmFyIHA9ITAscTtmb3IocSBpbiBuKWlmKG4uaGFzT3duUHJvcGVydHkocSkmJm5bcV09PT0hMCl7cD0hMTticmVha31wJiYobi5lbmQoKSxuLmVuZD1udWxsKX19Y2F0Y2gocil7RSg1KX19LHFFPWZ1bmN0aW9uKGEsYil7aWYoYS5aPGIubm90QmVmb3JlRXZlbnRJZCl7dmFyIGM9U3RyaW5nKGIubm90QmVmb3JlRXZlbnRJZCk7CmEuS1tjXT1hLktbY118fFtdO2EuS1tjXS5wdXNoKGIpfWVsc2V7YS5OLnB1c2gobUUoYikpO2EuTi5zb3J0KG5FKTt2YXIgZD1mdW5jdGlvbigpe2EuUnx8b0UoYSl9O00oNTgwKT9kZChkKTpiZChkKX19OwpnRS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoaCl7dmFyIGw9e307aWYoREQoaCkpe3ZhciBuPWg7aD1ERChuKT9uLmdldFVudHJ1c3RlZE1lc3NhZ2VWYWx1ZSgpOnZvaWQgMDtsLmZyb21Db250YWluZXJFeGVjdXRpb249ITB9cmV0dXJue21lc3NhZ2U6aCxtZXNzYWdlQ29udGV4dDpsfX12YXIgYj10aGlzLGM9TWMoRSgxOSksW10pLGQ9cGooKTtkLnBydW5lZD09PSEwJiZQKDgzKTt0aGlzLks9bkQoKS5nZXQoKTtuRCgpLmxpc3RlbihmdW5jdGlvbihoKXtxRShiLGgpfSk7ZC5zdWJzY3JpYmVycz0oZC5zdWJzY3JpYmVyc3x8MCkrMTt2YXIgZT1jLnB1c2gsZj10aGlzO2MucHVzaD1mdW5jdGlvbigpe3ZhciBoO2xqKCk7aWYoamouSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFPjApe2g9W107Zm9yKHZhciBsPTA7bDxhcmd1bWVudHMubGVuZ3RoO2wrKyloW2xdPW5ldyBFRChhcmd1bWVudHNbbF0pfWVsc2UgaD1bXS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKTsKdmFyIG49aC5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIGEodCl9KTtmLkgucHVzaC5hcHBseShmLkgsbik7dmFyIHA9ZS5hcHBseShjLGgpLHE9TWF0aC5tYXgoMTAwLE5mKDEsMzAwKSk7aWYodGhpcy5sZW5ndGg+cSlmb3IoUCg0KSxkLnBydW5lZD0hMDt0aGlzLmxlbmd0aD5xOyl0aGlzLnNoaWZ0KCk7dmFyIHI9dHlwZW9mIHAhPT0iYm9vbGVhbiJ8fHA7cmV0dXJuIG9FKGYpJiZyfTt2YXIgZz1jLnNsaWNlKDApLm1hcChmdW5jdGlvbihoKXtyZXR1cm4gYShoKX0pO3RoaXMuSC5wdXNoLmFwcGx5KHRoaXMuSCxnKTtJZig1MSl8fChmbi5IJiZ1eigpLGJkKHJFKSk7VkIoZnVuY3Rpb24oKXtpZighZC5ndG1Eb20pe2QuZ3RtRG9tPSEwO3ZhciBoPXt9O2MucHVzaCgoaC5ldmVudD0iZ3RtLmRvbSIsaCkpfX0pO2ZFKGZ1bmN0aW9uKCl7aWYoIWQuZ3RtTG9hZCl7ZC5ndG1Mb2FkPSEwO3ZhciBoPXt9O2MucHVzaCgoaC5ldmVudD0iZ3RtLmxvYWQiLGgpKX19KX07CmdFLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKGEpe3JldHVybiBBW0UoMTkpXS5wdXNoKGEpfTt2YXIgaEU9bmV3IGdFO2Z1bmN0aW9uIG5FKGEsYil7dmFyIGM9YS5tZXNzYWdlQ29udGV4dCxkPWIubWVzc2FnZUNvbnRleHQ7aWYoYy5ldmVudElkIT09ZC5ldmVudElkKXJldHVybiBjLmV2ZW50SWQtZC5ldmVudElkO2lmKCFNKDU5NSkpcmV0dXJuIGMucHJpb3JpdHlJZC1kLnByaW9yaXR5SWQ7dmFyIGUsZixnO2E6e2Zvcih2YXIgaD0oZT1jLnByaW9yaXR5UXVldWUpIT1udWxsP2U6W2MucHJpb3JpdHlJZF0sbD0oZj1kLnByaW9yaXR5UXVldWUpIT1udWxsP2Y6W2QucHJpb3JpdHlJZF0sbj1NYXRoLm1pbihoLmxlbmd0aCxsLmxlbmd0aCkscD0wO3A8bjtwKyspaWYoaFtwXSE9PWxbcF0pe2c9aFtwXS1sW3BdO2JyZWFrIGF9Zz1oLmxlbmd0aC1sLmxlbmd0aH1yZXR1cm4gZ30KZnVuY3Rpb24ga0UoYSl7aWYoYT09bnVsbHx8dHlwZW9mIGEhPT0ib2JqZWN0IilyZXR1cm4hMTtpZihhLmV2ZW50KXJldHVybiEwO2lmKEhiKGEpKXt2YXIgYj1hWzBdO2lmKGI9PT0iY29uZmlnInx8Yj09PSJldmVudCJ8fGI9PT0ianMifHxiPT09ImdldCIpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gbUUoYSl7cmV0dXJue21lc3NhZ2U6YS5tZXNzYWdlLG1lc3NhZ2VDb250ZXh0OmEubWVzc2FnZUNvbnRleHR9fWZ1bmN0aW9uIHNFKGEsYixjKXtyZXR1cm4gaUUoYSxiLGMpfWZ1bmN0aW9uIHRFKGEsYil7cmV0dXJuIGpFKGEsYil9ZnVuY3Rpb24gckUoKXtwRSgpfWZ1bmN0aW9uIHVFKGEpe3JldHVybiBoRS5wdXNoKGEpfTt2YXIgdkU9ZnVuY3Rpb24oKXt9O3ZFLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKCl7dmFyIGEsYj1SaihBLmxvY2F0aW9uLmhyZWYpOyhhPWIuaG9zdG5hbWUrYi5wYXRobmFtZSkmJlVtKCJkbCIsZW5jb2RlVVJJQ29tcG9uZW50KGEpKTt2YXIgYzt2YXIgZD1FKDUpO2lmKGQpe3ZhciBlPUlmKDcpPzE6MCxmPUZrKCksZz1mJiZmLmZyb21Db250YWluZXJFeGVjdXRpb24/MTowLGg9ZiYmZi5zb3VyY2V8fDAsbD1FKDYpO2M9ZCsiOyIrbCsiOyIrZysiOyIraCsiOyIrZX1lbHNlIGM9dm9pZCAwO3ZhciBuPWM7biYmVW0oInRkcCIsbik7dmFyIHA9T3AoITApO3AhPT12b2lkIDAmJlVtKCJmcm0iLFN0cmluZyhwKSl9O3ZhciB3RT1uZXcgdkU7dmFyIHhFPWZ1bmN0aW9uKCl7dGhpcy5IPVhtKCk7dGhpcy5LPXZvaWQgMH0seUU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gWm0oYSxmdW5jdGlvbihjKXtyZXR1cm4gYy5qYj4wP2I/Yy5qYisiXyIrV20oYyk6U3RyaW5nKGMuamIpOnZvaWQgMH0pfTsKeEUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO2lmKHBsKCl8fGZuLkspVW0oImNzcCIsZnVuY3Rpb24oKXt2YXIgYj15RShhLkgsITApOyRtKGEuSCk7cmV0dXJuIGJ9LCExKSxVbSgibWRlIixmdW5jdGlvbigpe3ZhciBiPWNuLkgsYz15RShiLCExKTskbShiKTtyZXR1cm4gY30sITEpLEEuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLGZ1bmN0aW9uKGIpe2lmKGIuZGlzcG9zaXRpb249PT0iZW5mb3JjZSIpe1AoMTc5KTt2YXIgYz1ubihiLmVmZmVjdGl2ZURpcmVjdGl2ZSk7aWYoYyl7dmFyIGQ7YTp7dmFyIGU9Yi5ibG9ja2VkVVJJLGY9a247aWYoZm4uSyYmZSl7dmFyIGc9am4oYyxlKTtpZihnKXt2YXIgaDtkPShoPWxuKGYsYykpPT1udWxsP3ZvaWQgMDpoW2ddO2JyZWFrIGF9fWQ9dm9pZCAwfXZhciBsPWQ7aWYobCl7dmFyIG47YTp7dHJ5e3ZhciBwPW5ldyBVUkwoYi5ibG9ja2VkVVJJKSxxPXAucGF0aG5hbWUuaW5kZXhPZigiOyIpOwpuPXE+PTA/cC5vcmlnaW4rcC5wYXRobmFtZS5zdWJzdHJpbmcoMCxxKTpwLm9yaWdpbitwLnBhdGhuYW1lO2JyZWFrIGF9Y2F0Y2goRCl7fW49dm9pZCAwfXZhciByPW47aWYocil7Zm9yKHZhciB0PW0obCksdT10Lm5leHQoKTshdS5kb25lO3U9dC5uZXh0KCkpe3ZhciB2PXUudmFsdWU7aWYoIXYuRW8pe3YuRW89ITA7dmFyIHg9e2V2ZW50SWQ6di5ldmVudElkLHByaW9yaXR5SWQ6di5wcmlvcml0eUlkfTtpZihwbCgpKXt2YXIgeT14LHo9e3R5cGU6MSxibG9ja2VkVXJsOnIsZW5kcG9pbnQ6di5lbmRwb2ludCx2aW9sYXRpb246Yi5lZmZlY3RpdmVEaXJlY3RpdmV9O2lmKHBsKCkpe3ZhciBDPUxsKCJUQUdfRElBR05PU1RJQ1MiLHtldmVudElkOnk9PW51bGw/dm9pZCAwOnkuZXZlbnRJZCxwcmlvcml0eUlkOnk9PW51bGw/dm9pZCAwOnkucHJpb3JpdHlJZH0pO0MudGFnRGlhZ25vc3RpY3M9ejtvbChDKX19ekUoYSx2LmRlc3RpbmF0aW9uSWQsdi5lbmRwb2ludCxjKX19bW4oYywKYi5ibG9ja2VkVVJJKX19fX19KX07dmFyIHpFPWZ1bmN0aW9uKGEsYixjLGQpe2FuKGEuSCxiLGMsMSxkKTtWbSgiY3NwIiwhMCk7Vm0oIm1kZSIsITApO2MhPT02MSYmYyE9PTU2JiZhLks9PT12b2lkIDAmJihhLks9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS5ILmpiPjAmJnRvKCExKTthLks9dm9pZCAwfSw1MDApKX0sQUU9bmV3IHhFO3ZhciBCRT1mdW5jdGlvbigpe3RoaXMuc2VxdWVuY2VOdW1iZXI9MH07QkUucHJvdG90eXBlLmJpbmQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO0NFKHRoaXMpO0lmKDY1KSYmVW0oIm10YmwiLCIxIik7VW0oInYiLCIzIik7VW0oInQiLCJ0Iik7VW0oInBpZCIsZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKG5tKGptLmJhLmJoKSl9KTtVbSgiZ3RtIixmdW5jdGlvbigpe3JldHVybiBkdSgpfSk7VW0oInNlcSIsZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKCsrYS5zZXF1ZW5jZU51bWJlcil9KTtVbSgiZXhwIixmdW5jdGlvbigpe3JldHVybiBDcCgpfSl9O3ZhciBDRT1mdW5jdGlvbihhKXtpZihubShqbS5iYS5iaCk9PT12b2lkIDApe3ZhciBiPWZ1bmN0aW9uKCl7bW0oam0uYmEuYmgsRGIoKSk7YS5zZXF1ZW5jZU51bWJlcj0wfTtiKCk7Y2QoYiw4NjRFNSl9ZWxzZSBwbShqbS5iYS5iaCxmdW5jdGlvbigpe2Euc2VxdWVuY2VOdW1iZXI9MH0pO2Euc2VxdWVuY2VOdW1iZXI9MH0sREU9bmV3IEJFO2Z1bmN0aW9uIEVFKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBBW2FdfX0KdmFyIEZFPXt9LEdFPShGRVsxNF09ZnVuY3Rpb24oKXt2YXIgYTtyZXR1cm4oYT1BLmNyeXB0byk9PW51bGw/dm9pZCAwOmEuZ2V0UmFuZG9tVmFsdWVzfSxGRVsxNV09ZnVuY3Rpb24oKXt2YXIgYSxiO3JldHVybihhPUEuY3J5cHRvKT09bnVsbD92b2lkIDA6KGI9YS5zdWJ0bGUpPT1udWxsP3ZvaWQgMDpiLmRpZ2VzdH0sRkVbMV09RUUoImZldGNoIiksRkVbNl09RUUoIk1hcCIpLEZFWzJdPWZ1bmN0aW9uKCl7cmV0dXJuIE1hdGgucmFuZG9tfSxGRVs4XT1mdW5jdGlvbigpe3JldHVybiBuYShPYmplY3QsImFzc2lnbiIpfSxGRVs5XT1mdW5jdGlvbigpe3JldHVybiBPYmplY3QuZW50cmllc30sRkVbMTBdPWZ1bmN0aW9uKCl7cmV0dXJuIE9iamVjdC5mcm9tRW50cmllc30sRkVbNV09RUUoIlByb21pc2UiKSxGRVsxM109RUUoIlJlZ0V4cCIpLEZFWzNdPWZ1bmN0aW9uKCl7cmV0dXJuIEhjLnNlbmRCZWFjb259LEZFWzddPUVFKCJTZXQiKSxGRVsxMl09ZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nLnByb3RvdHlwZS5lbmRzV2l0aH0sCkZFWzExXT1mdW5jdGlvbigpe3JldHVybiBTdHJpbmcucHJvdG90eXBlLnN0YXJ0c1dpdGh9LEZFWzRdPUVFKCJYTUxIdHRwUmVxdWVzdCIpLEZFKSxIRT17fSxJRT0oSEVbMTVdPSEwLEhFKTt2YXIgTkU9L14oaHR0cHM/Oik/XC9cLy87CgpmdW5jdGlvbiBoRigpe307ZnVuY3Rpb24gaUYoKXtJZig2MikmJihoeSgiZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzIixmdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuKChkPWMub3B0aW9ucyk9PW51bGw/dm9pZCAwOmQud2FpdEZvclRhZ3MpIT09ITB9KSxoeSgiZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLndhaXRGb3JUYWdzKSE9PSEwfSksaHkoImRldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cyIsZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybigoZD1jLm9wdGlvbnMpPT1udWxsP3ZvaWQgMDpkLmZpeE1pc3NpbmdBcGkpIT09ITB9KSl9O3ZhciBqRj1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O2pGLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuSD10aGlzLmdwcFN0cmluZz12b2lkIDB9O3ZhciBrRj1uZXcgakY7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtsdCh7R3U6MCxGdToxLEN1OjIseHU6MyxEdTo0LHl1OjUsRXU6NixBdTo3LEJ1Ojgsd3U6OSx6dToxMCxIdToxMX0pLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gTnVtYmVyKGEpfSk7bHQoe0p1OjAsS3U6MSxJdToyfSkubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBOdW1iZXIoYSl9KTt2YXIgbEY9ZnVuY3Rpb24oYSxiLGMsZCl7cnQuY2FsbCh0aGlzKTt0aGlzLmZlPWI7dGhpcy5rZD1jO3RoaXMuYWM9ZDt0aGlzLkxhPW5ldyBNYXA7dGhpcy5oZT0wO3RoaXMuamE9bmV3IE1hcDt0aGlzLnlhPW5ldyBNYXA7dGhpcy5aPXZvaWQgMDt0aGlzLks9YX07d2EobEYscnQpO2xGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMuSDt0aGlzLkxhLmNsZWFyKCk7dGhpcy5qYS5jbGVhcigpO3RoaXMueWEuY2xlYXIoKTt0aGlzLlomJihudCh0aGlzLkssIm1lc3NhZ2UiLHRoaXMuWiksZGVsZXRlIHRoaXMuWik7ZGVsZXRlIHRoaXMuSztkZWxldGUgdGhpcy5hYztydC5wcm90b3R5cGUuTi5jYWxsKHRoaXMpfTsKdmFyIG1GPWZ1bmN0aW9uKGEpe2lmKGEuSClyZXR1cm4gYS5IO2Eua2QmJmEua2QoYS5LKT9hLkg9YS5LOmEuSD1OcChhLkssYS5mZSk7dmFyIGI7cmV0dXJuKGI9YS5IKSE9bnVsbD9iOm51bGx9LG9GPWZ1bmN0aW9uKGEsYixjKXtpZihtRihhKSlpZihhLkg9PT1hLkspe3ZhciBkPWEuTGEuZ2V0KGIpO2QmJmQoYS5ILGMpfWVsc2V7dmFyIGU9YS5qYS5nZXQoYik7aWYoZSYmZS5kayl7bkYoYSk7dmFyIGY9KythLmhlO2EueWEuc2V0KGYse3BlOmUucGUsSXI6ZS5ubyhjKSxwZXJzaXN0ZW50OmI9PT0iYWRkRXZlbnRMaXN0ZW5lciJ9KTthLkgucG9zdE1lc3NhZ2UoZS5kayhjLGYpLCIqIil9fX0sbkY9ZnVuY3Rpb24oYSl7YS5afHwoYS5aPWZ1bmN0aW9uKGIpe2lmKGIuc291cmNlPT09YS5IKXRyeXt2YXIgYztjPWEuYWM/YS5hYyhiKTp2b2lkIDA7aWYoYyl7dmFyIGQ9Yy5ZcyxlPWEueWEuZ2V0KGQpO2lmKGUpe2UucGVyc2lzdGVudHx8YS55YS5kZWxldGUoZCk7dmFyIGY7KGY9CmUucGUpPT1udWxsfHxmLmNhbGwoZSxlLklyLGMucGF5bG9hZCl9fX1jYXRjaChnKXt9fSxtdChhLkssIm1lc3NhZ2UiLGEuWikpfTt2YXIgcEY9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmxpc3RlbmVyLGQ9KDAsYS5fX2dwcCkoImFkZEV2ZW50TGlzdGVuZXIiLGMpO2QmJmMoZCwhMCl9LHFGPWZ1bmN0aW9uKGEsYil7KDAsYS5fX2dwcCkoInJlbW92ZUV2ZW50TGlzdGVuZXIiLGIubGlzdGVuZXIsYi5saXN0ZW5lcklkKX0sckY9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoiYWRkRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIn0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuO2EoYy5yZXR1cm5WYWx1ZSxjLnN1Y2Nlc3MpfX0sc0Y9e25vOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxkazpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDoicmVtb3ZlRXZlbnRMaXN0ZW5lciIsdmVyc2lvbjoiMS4xIiwKcGFyYW1ldGVyOmEubGlzdGVuZXJJZH0sY30scGU6ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLl9fZ3BwUmV0dXJuLGQ9Yy5yZXR1cm5WYWx1ZS5kYXRhO2E9PW51bGx8fGEoZCxjLnN1Y2Nlc3MpfX07ZnVuY3Rpb24gdEYoYSl7dmFyIGI9e307dmYoYS5kYXRhKT9iPUpTT04ucGFyc2UoYS5kYXRhKTpiPWEuZGF0YTtyZXR1cm57cGF5bG9hZDpiLFlzOmIuX19ncHBSZXR1cm4uY2FsbElkfX0KdmFyIHVGPWZ1bmN0aW9uKGEsYil7dmFyIGM7Yz0oYj09PXZvaWQgMD97fTpiKS50aW1lb3V0TXM7cnQuY2FsbCh0aGlzKTt0aGlzLmNhbGxlcj1uZXcgbEYoYSwiX19ncHBMb2NhdG9yIixmdW5jdGlvbihkKXtyZXR1cm4gdHlwZW9mIGQuX19ncHA9PT0iZnVuY3Rpb24ifSx0Rik7dGhpcy5jYWxsZXIuTGEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixwRik7dGhpcy5jYWxsZXIuamEuc2V0KCJhZGRFdmVudExpc3RlbmVyIixyRik7dGhpcy5jYWxsZXIuTGEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixxRik7dGhpcy5jYWxsZXIuamEuc2V0KCJyZW1vdmVFdmVudExpc3RlbmVyIixzRik7dGhpcy50aW1lb3V0TXM9YyE9bnVsbD9jOjUwMH07d2EodUYscnQpO3VGLnByb3RvdHlwZS5OPWZ1bmN0aW9uKCl7dGhpcy5jYWxsZXIuZGlzcG9zZSgpO3J0LnByb3RvdHlwZS5OLmNhbGwodGhpcyl9Owp1Ri5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9SHAoZnVuY3Rpb24oKXthKHZGLCEwKX0pLGQ9dGhpcy50aW1lb3V0TXM9PT0tMT92b2lkIDA6c2V0VGltZW91dChmdW5jdGlvbigpe2MoKX0sdGhpcy50aW1lb3V0TXMpO29GKHRoaXMuY2FsbGVyLCJhZGRFdmVudExpc3RlbmVyIix7bGlzdGVuZXI6ZnVuY3Rpb24oZSxmKXtjbGVhclRpbWVvdXQoZCk7dHJ5e3ZhciBnO3ZhciBoOygoaD1lLnBpbmdEYXRhKT09bnVsbD92b2lkIDA6aC5ncHBWZXJzaW9uKT09PXZvaWQgMHx8ZS5waW5nRGF0YS5ncHBWZXJzaW9uPT09IjEifHxlLnBpbmdEYXRhLmdwcFZlcnNpb249PT0iMS4wIj8oYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjEsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0lTX0RFUFJFQ0FURURfU1BFQyIsCmFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pOkFycmF5LmlzQXJyYXkoZS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMpP2c9ZTooYi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCksZz17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjIsZ3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX0VYUEVDVEVEX0FQUExJQ0FUSU9OX1NFQ1RJT05fQVJSQVkiLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX0pO2EoZyxmKX1jYXRjaChsKXtpZihlPT1udWxsPzA6ZS5saXN0ZW5lcklkKXRyeXtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKX1jYXRjaChuKXthKHdGLCEwKTtyZXR1cm59YSh4RiwhMCl9fX0pfTsKdUYucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7b0YodGhpcy5jYWxsZXIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLHtsaXN0ZW5lcjpmdW5jdGlvbigpe30sbGlzdGVuZXJJZDphfSl9Owp2YXIgeEY9e2V2ZW50TmFtZToic2lnbmFsU3RhdHVzIixkYXRhOiJyZWFkeSIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToyLGdwcFN0cmluZzoiR1BQX0VSUk9SX1NUUklOR19VTkFWQUlMQUJMRSIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9LHZGPXtldmVudE5hbWU6InNpZ25hbFN0YXR1cyIsZGF0YToicmVhZHkiLHBpbmdEYXRhOntncHBTdHJpbmc6IkdQUF9FUlJPUl9TVFJJTkdfTElTVEVORVJfUkVHSVNUUkFUSU9OX1RJTUVPVVQiLGludGVybmFsRXJyb3JTdGF0ZToyLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfSx3Rj17ZXZlbnROYW1lOiJzaWduYWxTdGF0dXMiLGRhdGE6InJlYWR5IixwaW5nRGF0YTp7Z3BwU3RyaW5nOiJHUFBfRVJST1JfU1RSSU5HX1JFTU9WRV9FVkVOVF9MSVNURU5FUl9FUlJPUiIsaW50ZXJuYWxFcnJvclN0YXRlOjIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9O2Z1bmN0aW9uIHlGKGEpe3ZhciBiO2lmKCEoYj1hLnBpbmdEYXRhLnNpZ25hbFN0YXR1cz09PSJyZWFkeSIpKXt2YXIgYz1hLnBpbmdEYXRhLmFwcGxpY2FibGVTZWN0aW9ucztiPSFjfHxjLmxlbmd0aD09PTEmJmNbMF09PT0tMX1pZihiKXtrRi5ncHBTdHJpbmc9YS5waW5nRGF0YS5ncHBTdHJpbmc7dmFyIGQ9YS5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMuam9pbigiLCIpO2tGLkg9ZH19ZnVuY3Rpb24gekYoKXt0cnl7dmFyIGE9bmV3IHVGKEEse3RpbWVvdXRNczotMX0pO21GKGEuY2FsbGVyKSYmYS5hZGRFdmVudExpc3RlbmVyKHlGKX1jYXRjaChiKXt9fTtmdW5jdGlvbiBBRigpe3ZhciBhPVtbImN2IixFKDEpXSxbInJ2IixFKDE0KV0sWyJ0YyIsY0EudGFncy5maWx0ZXIoZnVuY3Rpb24oZCl7cmV0dXJuIGR9KS5sZW5ndGhdXSxiPUpmKDE1KTtiJiZhLnB1c2goWyJ4IixiXSk7dmFyIGM9Q3AoKTtjJiZhLnB1c2goWyJ0YWdfZXhwIixjXSk7cmV0dXJuIGF9O3ZhciBCRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPXt9O3RoaXMuSz17fTtmeihmdW5jdGlvbihiKXt2YXIgYz1iLmV2ZW50SWQsZD1iLnRmLGU9W10sZj1hLkhbY118fFtdO2YubGVuZ3RoJiZlLnB1c2goWyJoZiIsZi5qb2luKCIuIildKTt2YXIgZz1hLktbY118fFtdO2cubGVuZ3RoJiZlLnB1c2goWyJodCIsZy5qb2luKCIuIildKTtkJiYoZGVsZXRlIGEuSFtjXSxkZWxldGUgYS5LW2NdKTtyZXR1cm4gZX0pfSxDRj1mdW5jdGlvbigpe3ZhciBhPTA7cmV0dXJuIGZ1bmN0aW9uKGIpe3N3aXRjaChiKXtjYXNlIDE6YXw9MTticmVhaztjYXNlIDI6YXw9MjticmVhaztjYXNlIDM6YXw9NH1yZXR1cm4gYX19LERGO3ZhciBFRj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5IPSIiO2ZuLk4mJk0oNTE2KSYmZnooZnVuY3Rpb24oKXt2YXIgYj1bXTthLkgmJmIucHVzaChbInBzZCIsYS5IXSk7cmV0dXJuIGJ9KX0sRkY7ZnVuY3Rpb24gR0YoKXtyZXR1cm4hMX0KZnVuY3Rpb24gSEYoKXt2YXIgYT17fTtyZXR1cm4gZnVuY3Rpb24oYixjLGQpe319O2Z1bmN0aW9uIElGKCl7dmFyIGE9SkY7cmV0dXJuIGZ1bmN0aW9uKGIsYyxkKXt2YXIgZT1kJiZkLmV2ZW50O0tGKGMpO3ZhciBmPUJoKGIpP3ZvaWQgMDoxLGc9bmV3IGtiO0diKGMsZnVuY3Rpb24ocix0KXt2YXIgdT1VZCh0LHZvaWQgMCxmKTt1PT09dm9pZCAwJiZ0IT09dm9pZCAwJiZQKDQ0KTtnLnNldChyLHUpfSk7YS5RYihRZigpKTt2YXIgaD17Um46aGcoYiksZXZlbnRJZDplPT1udWxsP3ZvaWQgMDplLmlkLHByaW9yaXR5SWQ6ZSE9PXZvaWQgMD9lLnByaW9yaXR5SWQ6dm9pZCAwLHByaW9yaXR5UXVldWU6ZSE9PXZvaWQgMD9lLnByaW9yaXR5UXVldWU6dm9pZCAwLHdnOmUhPT12b2lkIDA/ZnVuY3Rpb24ocil7ZS5sZC53ZyhyKX06dm9pZCAwLFBiOmZ1bmN0aW9uKCl7cmV0dXJuIGJ9LGxvZzpmdW5jdGlvbigpe30sTnI6e2luZGV4OmQ9PW51bGw/dm9pZCAwOmQuaW5kZXgsdHlwZTpkPT1udWxsP3ZvaWQgMDpkLnR5cGUsbmFtZTpkPT1udWxsP3ZvaWQgMDpkLm5hbWV9LAppdDohIUtBKGIsMyksb3JpZ2luYWxFdmVudERhdGE6ZT09bnVsbD92b2lkIDA6ZS5vcmlnaW5hbEV2ZW50RGF0YX07ZSYmZS5jYWNoZWRNb2RlbFZhbHVlcyYmKGguY2FjaGVkTW9kZWxWYWx1ZXM9e2d0bTplLmNhY2hlZE1vZGVsVmFsdWVzLmd0bSxlY29tbWVyY2U6ZS5jYWNoZWRNb2RlbFZhbHVlcy5lY29tbWVyY2V9KTtpZihHRigpKXt2YXIgbD1IRigpLG4scDtoLkFiPXt3azpbXSx5Zzp7fSxqYzpmdW5jdGlvbihyLHQsdSl7dD09PTEmJihuPXIpO3Q9PT03JiYocD11KTtsKHIsdCx1KX0sZWk6VmgoKX07aC5sb2c9ZnVuY3Rpb24ocil7dmFyIHQ9T2EuYXBwbHkoMSxhcmd1bWVudHMpO24mJmwobiw0LHtsZXZlbDpyLHNvdXJjZTpwLG1lc3NhZ2U6dH0pfX0KdmFyIHE9cmYoYSxoLFtiLGddKTthLlFiKCk7cSBpbnN0YW5jZW9mIFRhJiYocS50eXBlPT09InJldHVybiI/cT1xLmRhdGE6cT12b2lkIDApO3JldHVybiBUZChxLHZvaWQgMCxmKX19ZnVuY3Rpb24gS0YoYSl7dmFyIGI9YS5ndG1PblN1Y2Nlc3MsYz1hLmd0bU9uRmFpbHVyZTt5YihiKSYmKGEuZ3RtT25TdWNjZXNzPWZ1bmN0aW9uKCl7YmQoYil9KTt5YihjKSYmKGEuZ3RtT25GYWlsdXJlPWZ1bmN0aW9uKCl7YmQoYyl9KX07dmFyIE1GPWZ1bmN0aW9uKGEpe1YoYSxILkoudGcsY28uaWEuY2IpfTtmdW5jdGlvbiBORigpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjApfTt2YXIgT0Y9W0YuRC56aV0ubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnNsaWNlKDIpfSk7dmFyIFBGPWZ1bmN0aW9uKGEpe1UoYSxGLkQuemksYWwoOCxORikpfTtmdW5jdGlvbiBRRihhKXt9UUYuUD0iaW50ZXJuYWwuYWRkQWRzQ2xpY2tJZHMiO2Z1bmN0aW9uIFJGKGEsYil7dmFyIGM9dGhpczt9UkYucHVibGljTmFtZT0iYWRkQ29uc2VudExpc3RlbmVyIjt2YXIgU0Y9ITE7ZnVuY3Rpb24gVEYoYSl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2IpaWYoU0YpdHJ5e2FbYl0oKX1jYXRjaChjKXtQKDc3KX1lbHNlIGFbYl0oKX1mdW5jdGlvbiBVRihhLGIsYyl7dmFyIGQ9dGhpcyxlO2lmKCFsaChhKXx8IWhoKGIpfHwhbWgoYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImZ1bmN0aW9uIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChkLCJsaXN0ZW5fZGF0YV9sYXllciIsYSl9XSk7ZT15QigpLmFkZExpc3RlbmVyKGEsVGQoYix2b2lkIDAsMSksYz09PW51bGw/dm9pZCAwOmMpO3JldHVybiBlfVVGLlA9ImludGVybmFsLmFkZERhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFZGKGEsYixjKXt9VkYucHVibGljTmFtZT0iYWRkRG9jdW1lbnRFdmVudExpc3RlbmVyIjtmdW5jdGlvbiBXRihhLGIsYyxkKXt9V0YucHVibGljTmFtZT0iYWRkRWxlbWVudEV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIFhGKGEpe3JldHVybiBhLlQueGIoKX07ZnVuY3Rpb24gWUYoYSl7fVlGLnB1YmxpY05hbWU9ImFkZEV2ZW50Q2FsbGJhY2siOwp2YXIgWkY9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyI/YTpTdHJpbmcocmooKSl9LGJHPWZ1bmN0aW9uKGEsYil7JEYoYSwiaW5pdCIsITEpfHwoYUcoYSwiaW5pdCIsITApLGIoKSl9LCRGPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jRyhhKTtyZXR1cm4gT2IoZCxiLGMpfSxkRz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1jRyhhKSxmPU9iKGUsYixkKSxnPWMoZik7cmV0dXJuIGVbYl09Z30sYUc9ZnVuY3Rpb24oYSxiLGMpe2NHKGEpW2JdPWN9LGNHPWZ1bmN0aW9uKGEpe3ZhciBiPWtqKCJhdXRvRXZlbnRzU2V0dGluZ3MiLGZ1bmN0aW9uKCl7cmV0dXJue319KTtiLmhhc093blByb3BlcnR5KGEpfHwoYlthXT17fSk7cmV0dXJuIGJbYV19LGVHPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD17ZXZlbnQ6YiwiZ3RtLmVsZW1lbnQiOmEsImd0bS5lbGVtZW50Q2xhc3NlcyI6b2QoYSwiY2xhc3NOYW1lIiksImd0bS5lbGVtZW50SWQiOmEuZm9yfHxlZChhLCJpZCIpfHwKIiIsImd0bS5lbGVtZW50VGFyZ2V0IjphLmZvcm1UYXJnZXR8fG9kKGEsInRhcmdldCIpfHwiIn07YyYmKGRbImd0bS50cmlnZ2VycyJdPWMuam9pbigiLCIpKTtkWyJndG0uZWxlbWVudFVybCJdPShhLmF0dHJpYnV0ZXMmJmEuYXR0cmlidXRlcy5mb3JtYWN0aW9uP2EuZm9ybUFjdGlvbjoiIil8fGEuYWN0aW9ufHxvZChhLCJocmVmIil8fGEuc3JjfHxhLmNvZGV8fGEuY29kZWJhc2V8fCIiO3JldHVybiBkfTt2YXIgaEc9ZnVuY3Rpb24oYSxiLGMpe2lmKCFhLmVsZW1lbnRzKXJldHVybiAwO2Zvcih2YXIgZD1iLmRhdGFzZXRbY10sZT0wLGY9MTtlPGEuZWxlbWVudHMubGVuZ3RoO2UrKyl7dmFyIGc9YS5lbGVtZW50c1tlXSxoPWcudGFnTmFtZS50b0xvd2VyQ2FzZSgpO2lmKCEoZkcuaW5kZXhPZihoKTwwfHxoPT09ImlucHV0IiYmZ0cuaW5kZXhPZihnLnR5cGUudG9Mb3dlckNhc2UoKSk+PTApKXtpZihnLmRhdGFzZXRbY109PT1kKXJldHVybiBmO2YrK319cmV0dXJuIDB9LGZHPVsiaW5wdXQiLCJzZWxlY3QiLCJ0ZXh0YXJlYSJdLGdHPVsiYnV0dG9uIiwiaGlkZGVuIiwiaW1hZ2UiLCJyZXNldCIsInN1Ym1pdCJdOwpmdW5jdGlvbiBpRyhhKXtpZihhLmZvcm0pe3ZhciBiO3JldHVybigoYj1hLmZvcm0pPT1udWxsPzA6Yi50YWdOYW1lKT9hLmZvcm06Qi5nZXRFbGVtZW50QnlJZChhLmZvcm0pfXJldHVybiBoZChhLFsiZm9ybSJdLDEwMCl9OwpmdW5jdGlvbiBtRyhhKXt9bUcuUD0iaW50ZXJuYWwuYWRkRm9ybUFiYW5kb25tZW50TGlzdGVuZXIiO2Z1bmN0aW9uIG5HKGEsYixjLGQpe30KbkcuUD0iaW50ZXJuYWwuYWRkRm9ybURhdGEiOwpmdW5jdGlvbiBzRyhhKXt9c0cuUD0iaW50ZXJuYWwuYWRkR2FTZW5kTGlzdGVuZXIiO2Z1bmN0aW9uIHRHKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPWEuTnI7cmV0dXJuIEpBKGIudHlwZSxiLmluZGV4LGIubmFtZSl9ZnVuY3Rpb24gdUcoYSl7aWYoIWEpcmV0dXJue307dmFyIGI9e29yaWdpbmF0aW5nRW50aXR5OnRHKGEpfTthLnByaW9yaXR5UXVldWUmJihiLnByaW9yaXR5UXVldWU9YS5wcmlvcml0eVF1ZXVlKTtyZXR1cm4gYn07ZnVuY3Rpb24gQ0coYSl7dmFyIGI9bWooInpvbmVzIik7cmV0dXJuIGI/Yi5nZXRJc0FsbG93ZWRGbih3aygpLGEpOmZ1bmN0aW9uKCl7cmV0dXJuITB9fWZ1bmN0aW9uIERHKCl7dmFyIGE9bWooInpvbmVzIik7YSYmYS51bnJlZ2lzdGVyQ2hpbGQod2soKSl9CmZ1bmN0aW9uIEVHKCl7a0IodmsoKSxmdW5jdGlvbihhKXt2YXIgYj1hLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdLGM9bWooInpvbmVzIik7cmV0dXJuIGM/Yy5pc0FjdGl2ZSh3aygpLGIpOiEwfSk7aEIodmsoKSxmdW5jdGlvbihhKXt2YXIgYixjO2I9YS5lbnRpdHlJZDtjPWEuc2VjdXJpdHlHcm91cHM7cmV0dXJuIENHKE51bWJlcihhLm9yaWdpbmFsRXZlbnREYXRhWyJndG0udW5pcXVlRXZlbnRJZCJdKSkoYixjKX0pfTt2YXIgRkc9ZnVuY3Rpb24oYSxiKXt0aGlzLnRhZ0lkPWE7dGhpcy5jYW5vbmljYWxJZD1ifTsKZnVuY3Rpb24gR0coYSxiKXt2YXIgYz10aGlzO3JldHVybiBhfUdHLlA9ImludGVybmFsLmxvYWRHb29nbGVUYWciO2Z1bmN0aW9uIEhHKGEpe3JldHVybiBuZXcgS2QoIiIsZnVuY3Rpb24oYil7dmFyIGM9dGhpcy5ldmFsdWF0ZShiKTtpZihjIGluc3RhbmNlb2YgS2QpcmV0dXJuIG5ldyBLZCgiIixmdW5jdGlvbigpe3ZhciBkPU9hLmFwcGx5KDAsYXJndW1lbnRzKSxlPXRoaXMsZj1FZChYRih0aGlzKSxudWxsKTtmLmV2ZW50SWQ9YS5ldmVudElkO2YucHJpb3JpdHlJZD1hLnByaW9yaXR5SWQ7Zi5vcmlnaW5hbEV2ZW50RGF0YT1hLm9yaWdpbmFsRXZlbnREYXRhO3ZhciBnPWQubWFwKGZ1bmN0aW9uKGwpe3JldHVybiBlLmV2YWx1YXRlKGwpfSksaD10aGlzLlQud2IoKTtoLnVlKGYpO3JldHVybiBjLk5jLmFwcGx5KGMsW2hdLmNvbmNhdCh3KGcpKSl9KX0pfTtmdW5jdGlvbiBJRyhhLGIsYyl7dmFyIGQ9dGhpczt9SUcuUD0iaW50ZXJuYWwuYWRkR29vZ2xlVGFnUmVzdHJpY3Rpb24iOwpmdW5jdGlvbiBQRyhhLGIpe31QRy5QPSJpbnRlcm5hbC5hZGRIaXN0b3J5Q2hhbmdlTGlzdGVuZXIiO2Z1bmN0aW9uIFFHKGEsYixjKXt9UUcucHVibGljTmFtZT0iYWRkV2luZG93RXZlbnRMaXN0ZW5lciI7ZnVuY3Rpb24gUkcoYSxiKXtyZXR1cm4hMH1SRy5wdWJsaWNOYW1lPSJhbGlhc0luV2luZG93IjtmdW5jdGlvbiBTRyhhLGIsYyl7fVNHLlA9ImludGVybmFsLmFwcGVuZFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gVEcoYSl7dmFyIGI7cmV0dXJuIGJ9ClRHLnB1YmxpY05hbWU9ImNhbGxJbldpbmRvdyI7ZnVuY3Rpb24gVUcoYSl7fVVHLnB1YmxpY05hbWU9ImNhbGxMYXRlciI7ZnVuY3Rpb24gVkcoYSl7fVZHLlA9ImNhbGxPbkRvbVJlYWR5IjtmdW5jdGlvbiBXRyhhKXt9V0cuUD0iY2FsbE9uV2luZG93TG9hZCI7dmFyIFlHPWZ1bmN0aW9uKGEsYil7dmFyIGM9bm0oWEcpfHx7fSxkPWNbYV18fHt9O2lmKGRbYl0pcmV0dXJuITE7dmFyIGU9bmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxkKTtlW2JdPSEwO3ZhciBmPW5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyk7ZlthXT1lO21tKFhHLGYpO3JldHVybiEwfSxYRz1qbS5iYS5ocjtmdW5jdGlvbiBaRyhhLGIpe2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPVlHKGEsYik7cmV0dXJuIGN9WkcuUD0iaW50ZXJuYWwuY2xhaW1EZXN0aW5hdGlvbiI7ZnVuY3Rpb24gJEcoYSxiKXt2YXIgYztyZXR1cm4gY30kRy5QPSJpbnRlcm5hbC5jb21wdXRlR3RtUGFyYW1ldGVyIjtmdW5jdGlvbiBhSChhLGIpe3ZhciBjPXRoaXM7fWFILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZUZpcnN0VHJ5IjtmdW5jdGlvbiBiSChhLGIpe3ZhciBjPXRoaXM7fWJILlA9ImludGVybmFsLmNvbnNlbnRTY2hlZHVsZVJldHJ5IjtmdW5jdGlvbiBjSChhKXt2YXIgYjtpZighbGgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyJdLGFyZ3VtZW50cyk7dmFyIGM9YTtpZigha20oYykpdGhyb3cgRXJyb3IoImNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIHJlcXVpcmVzIHZhbGlkIENyb3NzQ29udGFpbmVyU2NoZW1hIGtleS4iKTt2YXIgZD1ubShjKTtiPVVkKGQsdGhpcy5ULDEpO3JldHVybiBifWNILlA9ImludGVybmFsLmNvcHlGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBkSChhLGIpe3ZhciBjO3ZhciBlPVVkKGMsdGhpcy5ULEJoKFhGKHRoaXMpLlBiKCkpPzI6MSk7ZT09PXZvaWQgMCYmYyE9PXZvaWQgMCYmUCg0NSk7cmV0dXJuIGV9ZEgucHVibGljTmFtZT0iY29weUZyb21EYXRhTGF5ZXIiOwpmdW5jdGlvbiBlSChhKXt2YXIgYj12b2lkIDA7cmV0dXJuIGJ9ZUguUD0iaW50ZXJuYWwuY29weUZyb21EYXRhTGF5ZXJDYWNoZSI7ZnVuY3Rpb24gZkgoYSl7dmFyIGI7cmV0dXJuIGJ9ZkgucHVibGljTmFtZT0iY29weUZyb21XaW5kb3ciO2Z1bmN0aW9uIGdIKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYix0aGlzLlQsMSl9Z0guUD0iaW50ZXJuYWwuY29weUtleUZyb21XaW5kb3ciO3ZhciBoSD1mdW5jdGlvbihhKXtyZXR1cm4gYT09PWNvLmlhLmNiJiZmby5IW2FdPT09Ym8uTWEuVWUmJiFYbyhGLkQua2EpfTt2YXIgaUg9ZnVuY3Rpb24oKXtyZXR1cm4iMCJ9LGpIPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09InN0cmluZyIpcmV0dXJuIiI7dmFyIGI9WyJnY2xpZCIsImRjbGlkIiwid2JyYWlkIiwiX2dsIl07TSgxMDIpJiZiLnB1c2goImdicmFpZCIpO3JldHVybiBTaihhLGIsIjAiKX07dmFyIGtIPXt9LGxIPXt9LG1IPXt9LG5IPXt9LG9IPXt9LHBIPXt9LHFIPXt9LHJIPXt9LHNIPXt9LHRIPXt9LHVIPXt9LHZIPXt9LHdIPXt9LHhIPXt9LHlIPXt9LHpIPXt9LEFIPXt9LEJIPXt9LENIPXt9LERIPXt9LEVIPXt9LEZIPXt9LEdIPXt9LEhIPXt9LElIPXt9LEpIPXt9LEtIPShKSFtGLkQuZmJdPShrSFsyXT1baEhdLGtIKSxKSFtGLkQuWmZdPShsSFsyXT1baEhdLGxIKSxKSFtGLkQuSmldPShtSFsyXT1baEhdLG1IKSxKSFtGLkQuZ21dPShuSFsyXT1baEhdLG5IKSxKSFtGLkQuaG1dPShvSFsyXT1baEhdLG9IKSxKSFtGLkQuaW1dPShwSFsyXT1baEhdLHBIKSxKSFtGLkQuam1dPShxSFsyXT1baEhdLHFIKSxKSFtGLkQua21dPShySFsyXT1baEhdLHJIKSxKSFtGLkQuQmNdPShzSFsyXT1baEhdLHNIKSxKSFtGLkQuY2ddPSh0SFsyXT1baEhdLHRIKSxKSFtGLkQuZGddPSh1SFsyXT1baEhdLHVIKSxKSFtGLkQuZWddPSh2SFsyXT1baEhdLHZIKSxKSFtGLkQuZmddPSh3SFsyXT0KW2hIXSx3SCksSkhbRi5ELmdnXT0oeEhbMl09W2hIXSx4SCksSkhbRi5ELmhnXT0oeUhbMl09W2hIXSx5SCksSkhbRi5ELmlnXT0oekhbMl09W2hIXSx6SCksSkhbRi5ELmpnXT0oQUhbMl09W2hIXSxBSCksSkhbRi5ELmxiXT0oQkhbMV09W2hIXSxCSCksSkhbRi5ELkRkXT0oQ0hbMV09W2hIXSxDSCksSkhbRi5ELktkXT0oREhbMV09W2hIXSxESCksSkhbRi5ELkVlXT0oRUhbMV09W2hIXSxFSCksSkhbRi5ELkJmXT0oRkhbMV09W2Z1bmN0aW9uKGEpe3JldHVybiBNKDEwMikmJmhIKGEpfV0sRkgpLEpIW0YuRC5VY109KEdIWzFdPVtoSF0sR0gpLEpIW0YuRC56YV09KEhIWzFdPVtoSF0sSEgpLEpIW0YuRC5VYV09KElIWzFdPVtoSF0sSUgpLEpIKSxMSD17fSxNSD0oTEhbRi5ELmxiXT1pSCxMSFtGLkQuRGRdPWlILExIW0YuRC5LZF09aUgsTEhbRi5ELkVlXT1pSCxMSFtGLkQuQmZdPWlILExIW0YuRC5VY109ZnVuY3Rpb24oYSl7aWYoIUNkKGEpKXJldHVybnt9O3ZhciBiPUVkKGEsCm51bGwpO2RlbGV0ZSBiLm1hdGNoX2lkO3JldHVybiBifSxMSFtGLkQuemFdPWpILExIW0YuRC5VYV09akgsTEgpLE5IPXt9LE9IPXt9LFBIPShPSFtILkouWWFdPShOSFsyXT1baEhdLE5IKSxPSCksUUg9e307dmFyIFJIPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMuSD1hO3RoaXMuTj1iO3RoaXMuUj1jO3RoaXMuWj1kfTtSSC5wcm90b3R5cGUuZ2V0VmFsdWU9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP2NvLmlhLmdkOmE7aWYoIXRoaXMuTi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSkpcmV0dXJuIHRoaXMuUi5zb21lKGZ1bmN0aW9uKGIpe3JldHVybiBiKGEpfSk/dGhpcy5aKHRoaXMuSCk6dGhpcy5IfTtSSC5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiBBZCh0aGlzLkgpPT09ImFycmF5Inx8Q2QodGhpcy5IKT9FZCh0aGlzLkgsbnVsbCk6dGhpcy5IfTsKdmFyIFNIPWZ1bmN0aW9uKCl7fSxUSD1mdW5jdGlvbihhLGIpe3RoaXMuY29uZGl0aW9ucz1hO3RoaXMuSD1ifSxVSD1mdW5jdGlvbihhLGIsYyl7dmFyIGQsZT0oKGQ9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZFsyXSl8fFtdLGYsZz0oKGY9YS5jb25kaXRpb25zW2JdKT09bnVsbD92b2lkIDA6ZlsxXSl8fFtdO3JldHVybiBuZXcgUkgoYyxlLGcsYS5IW2JdfHxTSCl9LFZILFdIO3ZhciBZSD1mdW5jdGlvbihhKXthLks9ITA7YS5IPSExO2lmKElmKDUyKSl7aWYoTSg1MTYpJiZYSCgpKXt2YXIgYjthLnNldHRpbmdzPShiPWRhdGEucHJvZHVjdFNldHRpbmdzKSE9bnVsbD9iOnt9O2EuSD0hMH1lbHNle3ZhciBjO2Euc2V0dGluZ3M9KGM9cHJvZHVjdFNldHRpbmdzKSE9bnVsbD9jOnt9fXByb2R1Y3RTZXR0aW5ncz12b2lkIDA7ZGF0YS5wcm9kdWN0U2V0dGluZ3M9dm9pZCAwO3ZhciBkOyhkPUZGKSE9bnVsbCYmZm4uTiYmTSg1MTYpJiYoZC5IPWEuSD8iMSI6IjAiKX19LCRIPWZ1bmN0aW9uKGEpe3ZhciBiPVpIO2IuS3x8WUgoYik7cmV0dXJuIGIuc2V0dGluZ3NbYV19LFpIPW5ldyBmdW5jdGlvbigpe3RoaXMuc2V0dGluZ3M9e307dGhpcy5LPXRoaXMuSD0hMX07CmZ1bmN0aW9uIFhIKCl7aWYoIWRhdGEucHJvZHVjdFNldHRpbmdzJiYhcHJvZHVjdFNldHRpbmdzKXJldHVybiEwO2lmKCFkYXRhLnByb2R1Y3RTZXR0aW5nc3x8IXByb2R1Y3RTZXR0aW5nc3x8T2JqZWN0LmtleXMoZGF0YS5wcm9kdWN0U2V0dGluZ3MpLmxlbmd0aCE9PU9iamVjdC5rZXlzKHByb2R1Y3RTZXR0aW5ncykubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgYSBpbiBwcm9kdWN0U2V0dGluZ3MpaWYoIWRhdGEucHJvZHVjdFNldHRpbmdzLmhhc093blByb3BlcnR5KGEpfHxkYXRhLnByb2R1Y3RTZXR0aW5nc1thXS5wcmVBdXRvUGlpIT09cHJvZHVjdFNldHRpbmdzW2FdLnByZUF1dG9QaWkpcmV0dXJuITE7cmV0dXJuITB9O3ZhciBhST1mdW5jdGlvbihhLGIsYyl7dGhpcy5ldmVudE5hbWU9Yjt0aGlzLk09Yzt0aGlzLkg9e307dGhpcy5pc0Fib3J0ZWQ9ITE7dGhpcy50YXJnZXQ9YTt0aGlzLm1ldGFkYXRhPXt9O2Zvcih2YXIgZD1jLmV2ZW50TWV0YWRhdGF8fHt9LGU9bShPYmplY3Qua2V5cyhkKSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpe3ZhciBnPWYudmFsdWU7Vih0aGlzLGcsZFtnXSl9fSxSPWZ1bmN0aW9uKGEsYil7dmFyIGMsZDtyZXR1cm4oYz1hLkhbYl0pPT1udWxsP3ZvaWQgMDooZD1jLmdldFZhbHVlKT09bnVsbD92b2lkIDA6ZC5jYWxsKGMsUShhLEguSi50ZykpfSxldT1mdW5jdGlvbihhKXtyZXR1cm4gT2JqZWN0LmtleXMoYS5IKX0sVT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5ILGU7Yz09PXZvaWQgMD9lPXZvaWQgMDooVkghPW51bGx8fChWSD1uZXcgVEgoS0gsTUgpKSxlPVVIKFZILGIsYykpO2RbYl09ZX07CmFJLnByb3RvdHlwZS5tZXJnZUhpdERhdGFGb3JLZXk9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGU7Yz0oZD10aGlzLkhbYV0pPT1udWxsP3ZvaWQgMDooZT1kLkspPT1udWxsP3ZvaWQgMDplLmNhbGwoZCk7aWYoIWMpcmV0dXJuIFUodGhpcyxhLGIpLCEwO2lmKCFDZChjKSlyZXR1cm4hMTtVKHRoaXMsYSxuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LGMsYikpO3JldHVybiEwfTt2YXIgYkk9ZnVuY3Rpb24oYSxiKXtiPWI9PT12b2lkIDA/e306Yjtmb3IodmFyIGM9bShPYmplY3Qua2V5cyhhLkgpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEuSFtlXSk9PW51bGw/dm9pZCAwOihoPShnPWYpLkspPT1udWxsP3ZvaWQgMDpoLmNhbGwoZyl9cmV0dXJuIGJ9OwphSS5wcm90b3R5cGUuY29weVRvSGl0RGF0YT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Tyh0aGlzLk0sYSk7ZD09PXZvaWQgMCYmKGQ9Yik7aWYoemIoZCkmJmMhPT12b2lkIDApdHJ5e2Q9YyhkKX1jYXRjaChlKXt9ZCE9PXZvaWQgMCYmVSh0aGlzLGEsZCl9Owp2YXIgUT1mdW5jdGlvbihhLGIpe3ZhciBjPWEubWV0YWRhdGFbYl07aWYoYj09PUguSi50Zyl7dmFyIGQ7cmV0dXJuIGM9PW51bGw/dm9pZCAwOihkPWMuSyk9PW51bGw/dm9pZCAwOmQuY2FsbChjKX12YXIgZTtyZXR1cm4gYz09bnVsbD92b2lkIDA6KGU9Yy5nZXRWYWx1ZSk9PW51bGw/dm9pZCAwOmUuY2FsbChjLFEoYSxILkoudGcpKX0sVj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5tZXRhZGF0YSxlO2M9PT12b2lkIDA/ZT1jOihXSCE9bnVsbHx8KFdIPW5ldyBUSChQSCxRSCkpLGU9VUgoV0gsYixjKSk7ZFtiXT1lfSxjST1mdW5jdGlvbihhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2Zvcih2YXIgYz1tKE9iamVjdC5rZXlzKGEubWV0YWRhdGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZSxmPXZvaWQgMCxnPXZvaWQgMCxoPXZvaWQgMDtiW2VdPShmPWEubWV0YWRhdGFbZV0pPT1udWxsP3ZvaWQgMDooaD0oZz1mKS5LKT09bnVsbD92b2lkIDA6CmguY2FsbChnKX1yZXR1cm4gYn0sZEk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSRIKGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO3JldHVybiBkJiZkW2JdIT09dm9pZCAwP2RbYl06Y30sWnU9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9bmV3IGFJKChiPT1udWxsP3ZvaWQgMDpiLnRhcmdldCl8fGEudGFyZ2V0LChiPT1udWxsP3ZvaWQgMDpiLmV2ZW50TmFtZSl8fGEuZXZlbnROYW1lLChiPT1udWxsP3ZvaWQgMDpiLk0pfHxhLk0pLGQ9YkkoYSksZT1tKE9iamVjdC5rZXlzKGQpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9Zi52YWx1ZTtVKGMsZyxkW2ddKX1mb3IodmFyIGg9Y0koYSksbD1tKE9iamVjdC5rZXlzKGgpKSxuPWwubmV4dCgpOyFuLmRvbmU7bj1sLm5leHQoKSl7dmFyIHA9bi52YWx1ZTtWKGMscCxoW3BdKX1jLmlzQWJvcnRlZD1hLmlzQWJvcnRlZDtyZXR1cm4gY30sZUk9ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLGM9Yi5ldmVudElkLGQ9Yi5wcmlvcml0eUlkOwpyZXR1cm4gZD9jKyJfIitkOlN0cmluZyhjKX07YUkucHJvdG90eXBlLmFjY2VwdD1mdW5jdGlvbigpe3ZhciBhPW9tKGptLmJhLlNpLHt9KSxiPWVJKHRoaXMpLGM9dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZDthW2JdfHwoYVtiXT17fSk7YVtiXVtjXT12aygpO3ZhciBkPWptLmJhLlNpO2lmKGttKGQpKXt2YXIgZTsoZT1sbShkKSk9PW51bGx8fGUubm90aWZ5KCl9fTthSS5wcm90b3R5cGUuY2FuQmVBY2NlcHRlZD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5TaSk7aWYoIWIpcmV0dXJuITA7dmFyIGM9YltlSSh0aGlzKV07aWYoIWMpcmV0dXJuITA7dmFyIGQ9Y1thIT1udWxsP2E6dGhpcy50YXJnZXQuZGVzdGluYXRpb25JZF07cmV0dXJuIGQ9PT12b2lkIDB8fGQ9PT12aygpfTtmdW5jdGlvbiBmSShhKXtyZXR1cm57Z2V0RGVzdGluYXRpb25JZDpmdW5jdGlvbigpe3JldHVybiBhLnRhcmdldC5kZXN0aW5hdGlvbklkfSxnZXRFdmVudE5hbWU6ZnVuY3Rpb24oKXtyZXR1cm4gYS5ldmVudE5hbWV9LHNldEV2ZW50TmFtZTpmdW5jdGlvbihiKXthLmV2ZW50TmFtZT1ifSxnZXRIaXREYXRhOmZ1bmN0aW9uKGIpe3JldHVybiBSKGEsYil9LHNldEhpdERhdGE6ZnVuY3Rpb24oYixjKXtVKGEsYixjKX0sc2V0SGl0RGF0YUlmTm90RGVmaW5lZDpmdW5jdGlvbihiLGMpe1IoYSxiKT09PXZvaWQgMCYmVShhLGIsYyl9LGNvcHlUb0hpdERhdGE6ZnVuY3Rpb24oYixjKXthLmNvcHlUb0hpdERhdGEoYixjKX0sZ2V0TWV0YWRhdGE6ZnVuY3Rpb24oYil7cmV0dXJuIFEoYSxiKX0sc2V0TWV0YWRhdGE6ZnVuY3Rpb24oYixjKXtWKGEsYixjKX0saXNBYm9ydGVkOmZ1bmN0aW9uKCl7cmV0dXJuIGEuaXNBYm9ydGVkfSxhYm9ydDpmdW5jdGlvbigpe2EuaXNBYm9ydGVkPSEwfSwKZ2V0RnJvbUV2ZW50Q29udGV4dDpmdW5jdGlvbihiKXtyZXR1cm4gTyhhLk0sYil9LHJiOmZ1bmN0aW9uKCl7cmV0dXJuIGF9LGdldEhpdEtleXM6ZnVuY3Rpb24oKXtyZXR1cm4gZXUoYSl9LGdldE1lcmdlZFZhbHVlczpmdW5jdGlvbihiKXtyZXR1cm4gYS5NLmdldE1lcmdlZFZhbHVlcyhiLDMpfSxtZXJnZUhpdERhdGFGb3JLZXk6ZnVuY3Rpb24oYixjKXtyZXR1cm4gQ2QoYyk/YS5tZXJnZUhpdERhdGFGb3JLZXkoYixjKTohMX0sYWNjZXB0OmZ1bmN0aW9uKCl7YS5hY2NlcHQoKX0sY2FuQmVBY2NlcHRlZDpmdW5jdGlvbihiKXtyZXR1cm4gYS5jYW5CZUFjY2VwdGVkKGIpfX19O2Z1bmN0aW9uIGdJKGEsYil7dmFyIGM7aWYoIWVoKGEpfHwhZmgoYikpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsIk9iamVjdHx1bmRlZmluZWQiXSxhcmd1bWVudHMpO3ZhciBkPVRkKGIpfHx7fSxlPVRkKGEsdGhpcy5ULDEpLnJiKCksZj1lLk07ZC5vbWl0RXZlbnRDb250ZXh0JiYoZj1KQyhuZXcgeUMoZS5NLmV2ZW50SWQsZS5NLnByaW9yaXR5SWQpKSk7dmFyIGc9bmV3IGFJKGUudGFyZ2V0LGUuZXZlbnROYW1lLGYpO2lmKCFkLm9taXRIaXREYXRhKWZvcih2YXIgaD1iSShlKSxsPW0oT2JqZWN0LmtleXMoaCkpLG49bC5uZXh0KCk7IW4uZG9uZTtuPWwubmV4dCgpKXt2YXIgcD1uLnZhbHVlO1UoZyxwLGhbcF0pfWlmKGQub21pdE1ldGFkYXRhKWcubWV0YWRhdGE9e307ZWxzZSBmb3IodmFyIHE9Y0koZSkscj1tKE9iamVjdC5rZXlzKHEpKSx0PXIubmV4dCgpOyF0LmRvbmU7dD0Kci5uZXh0KCkpe3ZhciB1PXQudmFsdWU7VihnLHUscVt1XSl9Zy5pc0Fib3J0ZWQ9ZS5pc0Fib3J0ZWQ7Yz1VZChmSShnKSx0aGlzLlQsMSk7cmV0dXJuIGN9Z0kuUD0iaW50ZXJuYWwuY29weVByZUhpdCI7ZnVuY3Rpb24gaEkoYSxiKXt2YXIgYz1udWxsO3JldHVybiBVZChjLHRoaXMuVCwyKX1oSS5wdWJsaWNOYW1lPSJjcmVhdGVBcmd1bWVudHNRdWV1ZSI7ZnVuY3Rpb24gaUkoYSl7cmV0dXJuIFVkKGZ1bmN0aW9uKGMpe3ZhciBkPVNBKCk7aWYodHlwZW9mIGM9PT0iZnVuY3Rpb24iKWQoZnVuY3Rpb24oKXtjKGZ1bmN0aW9uKGYsZyxoKXt2YXIgbD0KU0EoKSxuPWwmJmwuZ2V0QnlOYW1lJiZsLmdldEJ5TmFtZShmKTtyZXR1cm4obmV3IEEuZ2FwbHVnaW5zLkxpbmtlcihuKSkuZGVjb3JhdGUoZyxoKX0pfSk7ZWxzZSBpZihBcnJheS5pc0FycmF5KGMpKXt2YXIgZT1TdHJpbmcoY1swXSkuc3BsaXQoIi4iKTtiW2UubGVuZ3RoPT09MT9lWzBdOmVbMV1dJiZkLmFwcGx5KG51bGwsYyl9ZWxzZSBpZihjPT09ImlzTG9hZGVkIilyZXR1cm4hIWQubG9hZGVkfSx0aGlzLlQsMSl9aUkuUD0iaW50ZXJuYWwuY3JlYXRlR2FDb21tYW5kUXVldWUiO2Z1bmN0aW9uIGpJKGEpe3JldHVybiBVZChmdW5jdGlvbigpe2lmKCF5YihlLnB1c2gpKXRocm93IEVycm9yKCJPYmplY3QgYXQgIithKyIgaW4gd2luZG93IGlzIG5vdCBhbiBhcnJheS4iKTtlLnB1c2guYXBwbHkoZSxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpfSx0aGlzLlQsCkJoKFhGKHRoaXMpLlBiKCkpPzI6MSl9akkucHVibGljTmFtZT0iY3JlYXRlUXVldWUiO2Z1bmN0aW9uIGtJKGEsYil7dmFyIGM9bnVsbDtpZighbGgoYSl8fCFtaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nfHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dHJ5e3ZhciBkPShifHwiIikuc3BsaXQoIiIpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4iaWciLmluZGV4T2YoZSk+PTB9KS5qb2luKCIiKTtjPW5ldyBQZChuZXcgUmVnRXhwKGEsZCkpfWNhdGNoKGUpe31yZXR1cm4gY31rSS5QPSJpbnRlcm5hbC5jcmVhdGVSZWdleCI7ZnVuY3Rpb24gbEkoYSl7fWxJLlA9ImludGVybmFsLmRlY2xhcmVDb25zZW50U3RhdGUiO2Z1bmN0aW9uIG1JKGEpe3ZhciBiPSIiO3JldHVybiBifW1JLlA9ImludGVybmFsLmRlY29kZVVybEh0bWxFbnRpdGllcyI7ZnVuY3Rpb24gbkkoYSxiLGMpe3ZhciBkO3JldHVybiBkfW5JLlA9ImludGVybmFsLmRlY29yYXRlVXJsV2l0aEdhQ29va2llcyI7ZnVuY3Rpb24gb0koKXt9b0kuUD0iaW50ZXJuYWwuZGVmZXJDdXN0b21FdmVudHMiO2Z1bmN0aW9uIHBJKGEsYil7dHJ5e3JldHVybiBhLmNsb3Nlc3QoYil9Y2F0Y2goYyl7cmV0dXJuIG51bGx9fTtmdW5jdGlvbiBxSSgpe3ZhciBhPUEuc2NyZWVuO3JldHVybnt3aWR0aDphP2Eud2lkdGg6MCxoZWlnaHQ6YT9hLmhlaWdodDowfX0KZnVuY3Rpb24gckkoYSl7aWYoQi5oaWRkZW4pcmV0dXJuITA7dmFyIGI9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihiLnRvcD09PWIuYm90dG9tfHxiLmxlZnQ9PT1iLnJpZ2h0fHwhQS5nZXRDb21wdXRlZFN0eWxlKXJldHVybiEwO3ZhciBjPUEuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpO2lmKGMudmlzaWJpbGl0eT09PSJoaWRkZW4iKXJldHVybiEwO2Zvcih2YXIgZD1hLGU9YztkOyl7aWYoZS5kaXNwbGF5PT09Im5vbmUiKXJldHVybiEwO3ZhciBmPWUub3BhY2l0eSxnPWUuZmlsdGVyO2lmKGcpe3ZhciBoPWcuaW5kZXhPZigib3BhY2l0eSgiKTtoPj0wJiYoZz1nLnN1YnN0cmluZyhoKzgsZy5pbmRleE9mKCIpIixoKSksZy5jaGFyQXQoZy5sZW5ndGgtMSk9PT0iJSImJihnPWcuc3Vic3RyaW5nKDAsZy5sZW5ndGgtMSkpLGY9U3RyaW5nKE1hdGgubWluKE51bWJlcihnKSxOdW1iZXIoZikpKSl9aWYoZiE9PXZvaWQgMCYmTnVtYmVyKGYpPD0wKXJldHVybiEwOyhkPWQucGFyZW50RWxlbWVudCkmJgooZT1BLmdldENvbXB1dGVkU3R5bGUoZCxudWxsKSl9cmV0dXJuITF9CnZhciB0ST1mdW5jdGlvbihhKXt2YXIgYj1zSSgpLGM9Yi5oZWlnaHQsZD1iLndpZHRoLGU9YS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxmPWUuYm90dG9tLWUudG9wLGc9ZS5yaWdodC1lLmxlZnQ7cmV0dXJuIGYmJmc/KDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS5sZWZ0LDApK01hdGgubWF4KGUucmlnaHQtZCwwKSkvZywxKSkqKDEtTWF0aC5taW4oKE1hdGgubWF4KDAtZS50b3AsMCkrTWF0aC5tYXgoZS5ib3R0b20tYywwKSkvZiwxKSk6MH0sc0k9ZnVuY3Rpb24oKXt2YXIgYT1CLmJvZHksYj1CLmRvY3VtZW50RWxlbWVudHx8YSYmYS5wYXJlbnRFbGVtZW50LGMsZDtpZihCLmNvbXBhdE1vZGUmJkIuY29tcGF0TW9kZSE9PSJCYWNrQ29tcGF0IiljPWI/Yi5jbGllbnRIZWlnaHQ6MCxkPWI/Yi5jbGllbnRXaWR0aDowO2Vsc2V7dmFyIGU9ZnVuY3Rpb24oZixnKXtyZXR1cm4gZiYmZz9NYXRoLm1pbihmLGcpOk1hdGgubWF4KGYsZyl9O2M9ZShiP2IuY2xpZW50SGVpZ2h0OjAsYT8KYS5jbGllbnRIZWlnaHQ6MCk7ZD1lKGI/Yi5jbGllbnRXaWR0aDowLGE/YS5jbGllbnRXaWR0aDowKX1yZXR1cm57d2lkdGg6ZCxoZWlnaHQ6Y319O3ZhciB2ST1mdW5jdGlvbihhKXtpZih1SSl7dmFyIGI9YWwoMjQsZnVuY3Rpb24oKXtyZXR1cm5bXX0pO2lmKGE+PTAmJmE8Yi5sZW5ndGgmJmJbYV0pe3ZhciBjOyhjPWJbYV0pPT1udWxsfHxjLmRpc2Nvbm5lY3QoKTtiW2FdPXZvaWQgMH19ZWxzZSBBLmNsZWFySW50ZXJ2YWwoYSl9LHlJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGMubGVuZ3RoO2QrKyljW2RdPjE/Y1tkXT0xOmNbZF08MCYmKGNbZF09MCk7aWYodUkpe3ZhciBlPSExO2JkKGZ1bmN0aW9uKCl7ZXx8d0koYSxiLGMpKCl9KTtyZXR1cm4geEkoZnVuY3Rpb24oZil7ZT0hMDtmb3IodmFyIGc9e0hnOjB9O2cuSGc8Zi5sZW5ndGg7Zz17SGc6Zy5IZ30sZy5IZysrKWJkKGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbigpe2EoZltoLkhnXSl9fShnKSl9LApiLGMpfXJldHVybiBjZCh3SShhLGIsYyksMUUzKX0sd0k9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoaCxsKXt2YXIgbj17dG9wOjAsYm90dG9tOjAscmlnaHQ6MCxsZWZ0OjAsd2lkdGg6MCxoZWlnaHQ6MH0scD17Ym91bmRpbmdDbGllbnRSZWN0OmguZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaW50ZXJzZWN0aW9uUmF0aW86bCxpbnRlcnNlY3Rpb25SZWN0Om4saXNJbnRlcnNlY3Rpbmc6bD4wLHJvb3RCb3VuZHM6bix0YXJnZXQ6aCx0aW1lOk5iKCl9O2JkKGZ1bmN0aW9uKCl7YShwKX0pfWZvcih2YXIgZT1bXSxmPVtdLGc9MDtnPGIubGVuZ3RoO2crKyllLnB1c2goMCksZi5wdXNoKC0xKTtjLnNvcnQoZnVuY3Rpb24oaCxsKXtyZXR1cm4gaC1sfSk7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBoPTA7aDxiLmxlbmd0aDtoKyspe3ZhciBsPXRJKGJbaF0pO2lmKGw+ZVtoXSlmb3IoO2ZbaF08Yy5sZW5ndGgtMSYmbD49Y1tmW2hdKzFdOylkKGJbaF0sbCksZltoXSsrO2Vsc2UgaWYobDwKZVtoXSlmb3IoO2ZbaF0+PTAmJmw8PWNbZltoXV07KWQoYltoXSxsKSxmW2hdLS07ZVtoXT1sfX19LHhJPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9bmV3IEEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoYSx7dGhyZXNob2xkOmN9KSxlPTA7ZTxiLmxlbmd0aDtlKyspZC5vYnNlcnZlKGJbZV0pO2Zvcih2YXIgZj1hbCgyNCxmdW5jdGlvbigpe3JldHVybltdfSksZz0wO2c8Zi5sZW5ndGg7ZysrKWlmKCFmW2ddKXJldHVybiBmW2ddPWQsZztyZXR1cm4gZi5wdXNoKGQpLTF9LHVJPSEoIUEuSW50ZXJzZWN0aW9uT2JzZXJ2ZXJ8fCFBLkludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpOwp2YXIgSkk9ZnVuY3Rpb24oYSl7dmFyIGIsYz0oYj1hPT1udWxsP3ZvaWQgMDphLmluY2x1ZGVTZWxlY3RvcikhPW51bGw/YjohMCxkLGU9KGQ9YT09bnVsbD92b2lkIDA6YS5pbmNsdWRlVmlzaWJpbGl0eSkhPW51bGw/ZDohMCxmLGc9KGY9YT09bnVsbD92b2lkIDA6YS5zZWxlY3RNdWx0aXBsZUVsZW1lbnRzKSE9bnVsbD9mOiExLGg9KGE9PW51bGw/dm9pZCAwOmEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMpfHxbXSxsPShhPT1udWxsP3ZvaWQgMDphLmZpZWxkRmlsdGVycyl8fHtlbWFpbDohMCxwaG9uZTohMSxhZGRyZXNzOiExfSxuPWFsKDYsZnVuY3Rpb24oKXtyZXR1cm57fX0pLHA9ekkoe2luY2x1ZGVTZWxlY3RvcjpjLGluY2x1ZGVWaXNpYmlsaXR5OmUsZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM6aCxmaWVsZEZpbHRlcnM6bH0pLHE9bltwXTtpZihxJiZOYigpLXEudGltZXN0YW1wPDIwMCl7dmFyIHI9cS5yZXN1bHQsdDsoci5lbGVtZW50cy5zb21lKGZ1bmN0aW9uKHFhKXtyZXR1cm4gcWEuZGl9KXx8CigodD1yLmdpKT09bnVsbD8wOnQuZGkpKSYmR3UoVC5XLnJqKTtyZXR1cm4gcn12YXIgdT1BSSgpLHY9dS5zdGF0dXMseD1bXSx5LHosQz1bXTtpZihNKDU2OCkpe3ZhciBEPUJJKGwpLEk9Q0kodS5lbGVtZW50cyxEKSxHPURJKEkpLE49RUkoRyxoKSxTPUZJKE4pO3k9Uy5maWx0ZXIoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5EYT09PUZELkJifSlbMF07Zm9yKHZhciBXPVtdLGVhPXtJZzowfTtlYS5JZzxELmxlbmd0aDtlYT17SWc6ZWEuSWd9LGVhLklnKyspe3ZhciBqYT1OLmZpbHRlcihmdW5jdGlvbihxYSl7cmV0dXJuIGZ1bmN0aW9uKGliKXtyZXR1cm4gaWIuRGE9PT1EW3FhLklnXX19KGVhKSk7amEubGVuZ3RoPjEwJiYodj0iMyIsamE9amEuc2xpY2UoMCwxMCkpO1c9Vy5jb25jYXQoamEpfU49VzshZyYmUyYmKE49Uyk7Zm9yKHZhciBmYT0wO2ZhPE4ubGVuZ3RoO2ZhKyspe3ZhciBzYT1OW2ZhXTtzYS5EYSE9PUZELktoJiZDLnB1c2goR0koc2EsYyxlKSl9fWVsc2V7aWYobC5lbWFpbCl7dmFyIGRhPQpISSh1LmVsZW1lbnRzKTt4PUVJKGRhLGgpO3k9SUkoeCk7ZGEubGVuZ3RoPjEwJiYodj0iMyIpfSFnJiZ5JiYoeD1beV0pO2Zvcih2YXIgbWE9MDttYTx4Lmxlbmd0aDttYSsrKUMucHVzaChHSSh4W21hXSxjLGUpKTtDPUMuc2xpY2UoMCwxMCl9eSYmKHo9R0koeSxjLGUpKTt2YXIgUGE9e2VsZW1lbnRzOkMsZ2k6eixzdGF0dXM6dn07bltwXT17dGltZXN0YW1wOk5iKCkscmVzdWx0OlBhfTt2YXIgRmE7KFBhLmVsZW1lbnRzLnNvbWUoZnVuY3Rpb24ocWEpe3JldHVybiBxYS5kaX0pfHwoKEZhPVBhLmdpKT09bnVsbD8wOkZhLmRpKSkmJkd1KFQuVy5yaik7cmV0dXJuIFBhfSxEST1mdW5jdGlvbihhKXt2YXIgYj1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELktofSksYz1hLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5EYT09PUZELlhkfSk7aWYoYS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5jZX0pLmxlbmd0aD09PTAmJmMubGVuZ3RoPT09CjApZm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF0sZj1lLkNhLnNwbGl0KCIgIik7Zi5sZW5ndGg+MSYmYS5wdXNoKHtDYTpmWzBdLERhOkZELlhkLGVsZW1lbnQ6ZS5lbGVtZW50LE9jOmUuT2N9LHtDYTpmLnNsaWNlKDEpLmpvaW4oIiAiKSxEYTpGRC5jZSxlbGVtZW50OmUuZWxlbWVudCxPYzplLk9jfSl9Zm9yKHZhciBnLGg9MCxsLG49ZnVuY3Rpb24odSl7cmV0dXJuIHUuRGE9PT1GRC5lZSYmdS5DYS5sZW5ndGg+PTMmJnUuQ2EubGVuZ3RoPD00fSxwPTA7cDxhLmxlbmd0aDtwKyspe3ZhciBxPWFbcF07aWYobihxKSYmZyYmcS5lbGVtZW50LnBhcmVudEVsZW1lbnQ9PT1nJiZoPDMpe2lmKGgrPTEsbCs9cS5DYSxoPT09Myl7dmFyIHI9cC1oKzE7aWYobD1LSVtGRC5lZV0ubmEobCkpYVtyXS5DYT1sfX1lbHNlIGlmKGg9MCxsPSIiLGc9dm9pZCAwLG4ocSkpe2grKztsPXEuQ2E7dmFyIHQ9dm9pZCAwO2c9KHQ9cS5lbGVtZW50LnBhcmVudEVsZW1lbnQpIT1udWxsPwp0OnZvaWQgMH19cmV0dXJuIGEuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiFuKHUpfSl9LE9JPWZ1bmN0aW9uKGEsYil7aWYoYS52YWx1ZSYmTEkuaW5kZXhPZigoYS50eXBlfHwidGV4dCIpLnRvTG93ZXJDYXNlKCkpIT09LTEpe3ZhciBjPWEuYXV0b2NvbXBsZXRlO2lmKGMpZm9yKHZhciBkPWMuc3BsaXQoIiAiKSxlPTA7ZTxkLmxlbmd0aDtlKyspe3ZhciBmPU1JKGEudmFsdWUsYixkW2VdKTtpZihmKXJldHVybiBmfXZhciBnLGg9W2EubmFtZSxhLmlkLChnPWEuYXJpYUxhYmVsKSE9bnVsbD9nOnZvaWQgMCxhLnBsYWNlaG9sZGVyXSxsPWEucGFyZW50RWxlbWVudDtsJiZsLnRhZ05hbWU9PT0iTEFCRUwiJiZoLnB1c2gobC5pbm5lclRleHQpO3ZhciBuPWEucHJldmlvdXNFbGVtZW50U2libGluZztuJiZuLnRhZ05hbWU9PT0iTEFCRUwiJiYhbi5odG1sRm9yJiZoLnB1c2gobi5pbm5lclRleHQpO2lmKGEuaWQpe3ZhciBwPVtdO3RyeXtwPWRvY3VtZW50LmJvZHkucXVlcnlTZWxlY3RvckFsbCgnbGFiZWxbZm9yPSInKwphLmlkKyciXScpfWNhdGNoKEQpe31mb3IodmFyIHE9MDtxPHAubGVuZ3RoO3ErKyloLnB1c2gocFtxXS5pbm5lclRleHQpfWg9aC5maWx0ZXIoZnVuY3Rpb24oRCl7cmV0dXJuIEQmJkQudHJpbSgpfSk7Zm9yKHZhciByLHQ9MCx1PTA7dTxoLmxlbmd0aDt1Kyspe3ZhciB2PU5JKGEsYixoW3VdKTtpZih2KXt2YXIgeD12LHk9eC5DYSx6PXguRGEsQz14LlhzO0M+dCYmKHQ9QyxyPXtDYTp5LERhOnp9KX19cmV0dXJuIHJ9fSxOST1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07aWYoS0lbZV0ubmUpe3ZhciBmPUtJW2VdLm5lLmV4ZWMoYy50cmltKCkpO2lmKGYpe3ZhciBnPWEsaD1bXSxsPWcudmFsdWUudHJpbSgpO2wmJmgucHVzaChsKTtpZihnLnRhZ05hbWU9PT0iU0VMRUNUIil0cnl7dmFyIG49Zy5xdWVyeVNlbGVjdG9yKCdbdmFsdWU9IicrZy52YWx1ZSsnIl0nKSxwPW4mJm4uaW5uZXJUZXh0LnRyaW0oKTtwJiZoLnB1c2gocCl9Y2F0Y2godSl7fWZvcih2YXIgcT0KaCxyPXZvaWQgMCx0PTA7dDxxLmxlbmd0aCYmIXI7dCsrKXI9S0lbZV0ubmEocVt0XSk7aWYocilyZXR1cm57RGE6ZSxDYTpyLFhzOmZbMF0ubGVuZ3RoL2MudHJpbSgpLmxlbmd0aH19fX19LE1JPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTtpZihLSVtlXS5hdXRvY29tcGxldGUmJktJW2VdLmF1dG9jb21wbGV0ZS5pbmRleE9mKGMpPj0wKXt2YXIgZj1LSVtlXS5uYShhLnRyaW0oKSk7aWYoZilyZXR1cm57RGE6ZSxDYTpmfX19fSxCST1mdW5jdGlvbihhKXt2YXIgYj1bXTthLmVtYWlsJiZiLnB1c2goRkQuQmIpO2EucGhvbmUmJmIucHVzaChGRC5lZSk7YS5hZGRyZXNzJiZiLnB1c2goRkQuWGQsRkQuY2UsRkQueGYsRkQucWcsRkQuS2gpO3JldHVybiBifSxDST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF0sZj1lLmVsZW1lbnQsZz1lLk9jLGg7YTp7dmFyIGw9ZixuPWIsCnA9bC5pbm5lckhUTUw7UEkuaW5kZXhPZihsLnRhZ05hbWUpPj0wJiYocD1sLnZhbHVlfHxwKTtpZihwKXt2YXIgcTtiOntmb3IodmFyIHI9cCx0PW4sdT0wO3U8dC5sZW5ndGg7dSsrKXt2YXIgdj10W3VdO2lmKCFLSVt2XS5tZSl7dmFyIHg9S0lbdl0ubmEoci50cmltKCkpO2lmKHgpe3E9e0RhOnYsQ2E6eH07YnJlYWsgYn19fXE9dm9pZCAwfWlmKHEpe2g9cTticmVhayBhfWlmKFBJLmluZGV4T2YobC50YWdOYW1lKSE9PS0xKXtoPU9JKGwsbik7YnJlYWsgYX19aD12b2lkIDB9dmFyIHk9aDtpZih5KXt2YXIgej15O2MucHVzaCh7Q2E6ei5DYSxEYTp6LkRhLGVsZW1lbnQ6ZixPYzpnfSl9fXJldHVybiBjfSxGST1mdW5jdGlvbihhKXt2YXIgYj1bXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIGI7dmFyIGM9e30sZDtmb3IoZCBpbiBGRClpZihjPXtWZzpjLlZnfSxjLlZnPWQsRkQuaGFzT3duUHJvcGVydHkoYy5WZykpe3ZhciBlPWEuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmdW5jdGlvbihnKXtyZXR1cm4gZy5EYT09PQpGRFtmLlZnXX19KGMpKTtlLmxlbmd0aCE9PTAmJihGRFtjLlZnXT09PUZELkJiJiYoZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiFSSS50ZXN0KGYuQ2EpfSksZT1RSShlLGZ1bmN0aW9uKGYpe3JldHVybiBmLmVsZW1lbnQudGFnTmFtZS50b1VwcGVyQ2FzZSgpPT09IklOUFVUIn0pLGU9UUkoZSxmdW5jdGlvbihmKXtyZXR1cm4hckkoZi5lbGVtZW50KX0pKSxiLnB1c2goZVswXSkpfXJldHVybiBifSxHST1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5lbGVtZW50LGU9YS5PYyxmPXtDYTphLkNhLHR5cGU6YS5EYSx0YWdOYW1lOmQudGFnTmFtZX07aWYoYil7dmFyIGcsaD1TSShkKTtpZihnPShlP2UrInwiK2g6aCkuc2xpY2UoMCxUSSkpZi5xdWVyeVNlbGVjdG9yPWd9YyYmKGYuaXNWaXNpYmxlPSFySShkKSk7ZSYmKGYuZGk9ITApO3JldHVybiBmfSx6ST1mdW5jdGlvbihhKXt2YXIgYixjLGQsZTtiPWEuaW5jbHVkZVNlbGVjdG9yO2M9YS5pbmNsdWRlVmlzaWJpbGl0eTtkPWEuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnM7CmU9YS5maWVsZEZpbHRlcnM7dmFyIGY9ISFiKyIuIishIWM7ZC5sZW5ndGgmJihmKz0iLiIrZC5qb2luKCIuIikpO3JldHVybiBmKz0iLiIrZS5lbWFpbCsiLiIrZS5waG9uZSsiLiIrZS5hZGRyZXNzfSxJST1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCE9PTApe3ZhciBiO2I9UUkoYSxmdW5jdGlvbihjKXtyZXR1cm4hUkkudGVzdChjLkNhKX0pO2I9UUkoYixmdW5jdGlvbihjKXtyZXR1cm4gYy5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCJ9KTtiPVFJKGIsZnVuY3Rpb24oYyl7cmV0dXJuIXJJKGMuZWxlbWVudCl9KTtyZXR1cm4gYlswXX19LEVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyl7Zm9yKHZhciBlPSEwLGY9MDtmPGIubGVuZ3RoO2YrKyl7dmFyIGc9YltmXTtpZihnJiZwSShhW2RdLmVsZW1lbnQsZykpe2U9ITE7YnJlYWt9fWFbZF0uRGE9PT1GRC5CYiYmTSg2MDIpJiYoUkkudGVzdChhW2RdLkNhKXx8YVtkXS5lbGVtZW50LnRhZ05hbWUudG9VcHBlckNhc2UoKT09PQoiQSImJmFbZF0uZWxlbWVudC5oYXNBdHRyaWJ1dGUoImhyZWYiKSYmYVtkXS5lbGVtZW50LmdldEF0dHJpYnV0ZSgiaHJlZiIpLmluZGV4T2YoIm1haWx0bzoiKSE9PS0xP2U9ITE6YVtkXS5lbGVtZW50LmNsb3Nlc3QoImZvb3RlciIpIT09bnVsbCYmKGU9ITEpKTtlJiZjLnB1c2goYVtkXSl9cmV0dXJuIGN9LFFJPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg8PTEpcmV0dXJuIGE7dmFyIGM9YS5maWx0ZXIoYik7cmV0dXJuIGMubGVuZ3RoPT09MD9hOmN9LFNJPWZ1bmN0aW9uKGEpe2lmKGE9PT1CLmJvZHkpcmV0dXJuImJvZHkiO2lmKGEuaWQpcmV0dXJuIiMiK2EuaWQ7dmFyIGI9YS5wYXJlbnRFbGVtZW50O2lmKGIpe3ZhciBjPVNJKGIpLGQ9VUkoYSxiKSxlPVZJKGEpKyI6bnRoLWNoaWxkKCIrZCsiKSI7cmV0dXJuIGM/YysiPiIrZTplfXZhciBmPWEucGFyZW50Tm9kZTtpZihmIGluc3RhbmNlb2YgU2hhZG93Um9vdCl7dmFyIGc9VUkoYSxmKTtyZXR1cm4gVkkoYSkrIjpudGgtY2hpbGQoIisKZysiKSJ9cmV0dXJuIGEudGFnTmFtZT9hLnRhZ05hbWUudG9Mb3dlckNhc2UoKToiIn0sVkk9ZnVuY3Rpb24oYSl7aWYoYS5jbGFzc0xpc3QmJmEuY2xhc3NMaXN0Lmxlbmd0aD4wKXt2YXIgYj1BcnJheS5mcm9tKGEuY2xhc3NMaXN0LGZ1bmN0aW9uKGMpe3JldHVybiBDU1MuZXNjYXBlKGMpfSkuZmlsdGVyKGZ1bmN0aW9uKGMpe3JldHVybiBjLmxlbmd0aD4wfSk7aWYoYi5sZW5ndGg+MClyZXR1cm4iLiIrYi5qb2luKCIuIil9cmV0dXJuIiJ9LFVJPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWIuY2hpbGRyZW4sZD0wO2Q8Yy5sZW5ndGg7ZCsrKWlmKGNbZF09PT1hKXJldHVybiBkKzE7cmV0dXJuIDF9LEhJPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10sZT1kLmVsZW1lbnQsZj1kLk9jLGc9ZS50ZXh0Q29udGVudDtlLnRhZ05hbWUudG9VcHBlckNhc2UoKT09PSJJTlBVVCImJmUudmFsdWUmJihnPWUudmFsdWUpO2lmKGcpe3ZhciBoPQpnLm1hdGNoKEtEKTtpZihoKXt2YXIgbD1oWzBdO0xEKGwpfHxiLnB1c2goe2VsZW1lbnQ6ZSxDYTpsLERhOkZELkJiLE9jOmZ9KX19fXJldHVybiBifSxBST1mdW5jdGlvbigpe3ZhciBhPVtdLGI9Qi5ib2R5O2lmKCFiKXJldHVybntlbGVtZW50czphLHN0YXR1czoiNCJ9O3ZhciBjPVdJKGIsMCwiIixhKTtyZXR1cm57ZWxlbWVudHM6YSxzdGF0dXM6Y319LFdJPWZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZT1hLnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSxmPWUubGVuZ3RoPjFFND8iMiI6IjEiLGc9MDtnPE1hdGgubWluKGUubGVuZ3RoLDFFNCk7ZysrKXt2YXIgaD1lW2ddO2lmKCEoWEkuaW5kZXhPZihoLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApJiZoLmNoaWxkcmVuIGluc3RhbmNlb2YgSFRNTENvbGxlY3Rpb24pe3ZhciBsPSExO2lmKE0oNTgyKSYmaC5zaGFkb3dSb290JiZiPDEpe3ZhciBuPVNJKGgpO1dJKGguc2hhZG93Um9vdCxiKzEsYz9jKyJ8IituOm4sZCk9PT0iMiImJgooZj0iMiIpO2w9ITB9dmFyIHA9ITE7aWYoIWwpZm9yKHZhciBxPTA7cTxNYXRoLm1pbihoLmNoaWxkRWxlbWVudENvdW50LDFFNCk7cSsrKWlmKCEoWUkuaW5kZXhPZihoLmNoaWxkcmVuW3FdLnRhZ05hbWUudG9VcHBlckNhc2UoKSk+PTApKXtwPSEwO2JyZWFrfSghcCYmIWx8fE0oNTY4KSYmUEkuaW5kZXhPZihoLnRhZ05hbWUpIT09LTEpJiZkLnB1c2goe2VsZW1lbnQ6aCxPYzpiPjA/Yzp2b2lkIDB9KX19cmV0dXJuIGZ9LFJJPS9zdXBwb3J0fG5vcmVwbHkvaSxYST0iU0NSSVBUIFNUWUxFIElNRyBTVkcgUEFUSCBCUiBOT1NDUklQVCBURVhUQVJFQSIuc3BsaXQoIiAiKSxZST1bIkJSIl0sVEk9TmYoNzAsNTApLFBJPVsiSU5QVVQiLCJTRUxFQ1QiXSxMST0idGV4dCB0ZWwgc2VhcmNoIG51bWJlciBoaWRkZW4gZW1haWwgc2VsZWN0LW9uZSIuc3BsaXQoIiAiKSxaST1SZWdFeHAoInBob25lfG1vYmlsZXxjb250YWN0Lj9udW1iZXJ8dGVsZWZvbm51bW1lcnx0ZWxlZm9ub3x0ZWxcdTAwZTlmb25vfHRlbGZpeGV8XHU5NmZiXHU4YTcxfHRlbGVmb25lfHRlbGVtb3ZlbHxcdTA0NDJcdTA0MzVcdTA0M2JcdTA0MzVcdTA0NDRcdTA0M2VcdTA0M2R8XHUwOTJlXHUwOTRiXHUwOTJjXHUwOTNlXHUwOTA3XHUwOTMyfFx1NzUzNVx1OGJkZHxcdTYyNGJcdTY3M2FcdTUzZjd8XHUwZDJlXHUwZDRhXHUwZDJjXHUwZDQ4XHUwZDMyXHUwZDRkXHUyMDBkfChefFstX10pdGVsWy1fXT8oXFxkKykqKFxcWy4qXFxdKSokfCg/Olx1YzgwNFx1ZDY1NHxcdWQ1NzhcdWI0ZGNcdWQzZjB8XHVkNzM0XHViMzAwXHVkM2YwfFx1ZDczNFx1YjMwMFx1YzgwNFx1ZDY1NCkoPzouP1x1YmM4OFx1ZDYzOCk/fChcXGJ8X3xcXCopdGVsZWZvbihcXGJ8X3xcXCopfHRlbGVwb258cG9uc2VsfChub21vcnxub1xcLj8pLj8oaHB8aGFuZHBob25lKSIsCiJpIiksJEk9UmVnRXhwKCJebmFtZXxmdWxsLj9uYW1lfHlvdXIuP25hbWV8Y3VzdG9tZXIuP25hbWV8YmlsbC4/bmFtZXxzaGlwLj9uYW1lfG5hbWUuKmZpcnN0LipsYXN0fGZpcnN0YW5kbGFzdG5hbWV8Y29udGFjdC4/KG5hbWV8cGVyc29uKXxub21icmUuKnkuKmFwZWxsaWRvc3xebm9tKD8hW2EtekEtWl0pfFx1MzA0YVx1NTQwZFx1NTI0ZHxcdTZjMGZcdTU0MGR8Xm5vbWV8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2NDZcdTA2MjdcdTA2NDUuKlx1MDYyZVx1MDYyN1x1MDY0Nlx1MDY0OFx1MDYyN1x1MDYyZlx1MDZhZlx1MDZjY3xcdTU5ZDNcXHMqXHU1NDBkfFx1MDQzYVx1MDQzZVx1MDQzZFx1MDQ0Mlx1MDQzMFx1MDQzYVx1MDQ0Mlx1MDQzZFx1MDQzZVx1MDQzNS4/XHUwNDNiXHUwNDM4XHUwNDQ2XHUwNDNlfChcXGJ8X3xcXCopYWRbXHUwMTMxXT8gc295YWRbXHUwMTMxXT8oXFxifF98XFwqKXxcdWMxMzFcdWJhODV8bmFtYS4/KGxlbmdrYXB8cGVuZXJpbWF8a2FtdSkiLAoiaSIpLGFKPVJlZ0V4cCgiZmlyc3QuKm5hbWV8aW5pdGlhbHN8Zm5hbWV8Zmlyc3QkfGdpdmVuLipuYW1lfHZvcm5hbWV8bm9tYnJlfGZvcmVuYW1lfHByXHUwMGU5bm9tfHByZW5vbXxcdTU0MGR8bm9tZXxcdTA0MThcdTA0M2NcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1fFx1Yzc3NFx1Yjk4NHxcdTBkMmFcdTBkNDdcdTBkMzBcdTBkNGR8KFxcYnxffFxcKikoaXNpbXxhZHxhZChpfFx1MDEzMXxpbml6fFx1MDEzMW5cdTAxMzF6KT8pKFxcYnxffFxcKil8XHUwOTI4XHUwOTNlXHUwOTJlfG5hbWEgZGVwYW4iLCJpIiksYko9UmVnRXhwKCJsYXN0LipuYW1lfGxuYW1lfHN1cm5hbWUoPyFcXGQpfGxhc3QkfHNlY29uZG5hbWV8ZmFtaWx5LipuYW1lfG5hY2huYW1lfGFwZWxsaWRvcz98ZmFtaWxsZXxebm9tKD8hW2EtekEtWl0pfGNvZ25vbWV8XHU1OWQzfGFwZWxpZG9zfHN1cmVuYW1lfHNvYnJlbm9tZXxcdTA0MjRcdTA0MzBcdTA0M2NcdTA0MzhcdTA0M2JcdTA0MzhcdTA0NGZ8XHUwNjQ2XHUwNjI3XHUwNjQ1LipcdTA2MmVcdTA2MjdcdTA2NDZcdTA2NDhcdTA2MjdcdTA2MmZcdTA2YWZcdTA2Y2N8XHUwOTA5XHUwOTJhXHUwOTI4XHUwOTNlXHUwOTJlfFx1MGQyZVx1MGQzMVx1MGQ0MVx1MGQyYVx1MGQ0N1x1MGQzMFx1MGQ0ZHwoXFxifF98XFwqKShzb3lpc2ltfHNveWFkKGl8XHUwMTMxfGluaXp8XHUwMTMxblx1MDEzMXopPykoXFxifF98XFwqKXxcXGJcdWMxMzEoPzpbXlx1YmE4NV18XFxiKXxuYW1hIGJlbGFrYW5nIiwKImkiKSxjSj1SZWdFeHAoImNvdW50cnl8Y291bnRyaWVzfHBhXHUwMGVkc3xwYWlzfChcXGJ8XylsYW5kKFxcYnxfKSg/IS4qKG1hcmsuKikpfChefFteKFx1NTE2NXxcdTUxZmEpXSlcdTU2ZmR8XHU1NmZkXHU1YmI2fFx1YWQ2ZFx1YWMwMHxcdWIwOThcdWI3N2N8KFxcYnxfKShcdTAwZmNsa2V8dWxjZXx1bGtlKShcXGJ8Xyl8XHUwNmE5XHUwNjM0XHUwNjQ4XHUwNjMxfG5lZ2FyYSIsImkiKSxkSj1SZWdFeHAoIihefFteLl0pemlwfHBvc3RhbHxwb3N0Lipjb2RlfHBjb2RlfHBpbi4/Y29kZXxwb3N0bGVpdHphaGx8XFxiY3BcXGJ8XFxiY2RwXFxifFxcYmNhcFxcYnxcdTkwZjVcdTRmYmZcdTc1NmFcdTUzZjd8Y29kaWdvfGNvZHBvc3xcXGJjZXBcXGJ8XHUwNDFmXHUwNDNlXHUwNDQ3XHUwNDQyXHUwNDNlXHUwNDMyXHUwNDRiXHUwNDM5Lj9cdTA0MThcdTA0M2RcdTA0MzRcdTA0MzVcdTA0M2FcdTA0NDF8XHUwOTJhXHUwOTNmXHUwOTI4Lj9cdTA5MTVcdTA5NGJcdTA5MjF8XHUwZDJhXHUwZDNmXHUwZDI4XHUwZDRkXHUyMDBkXHUwZDE1XHUwZDRiXHUwZDIxXHUwZDRkfFx1OTBhZVx1NjUzZlx1N2YxNlx1NzgwMXxcdTkwYWVcdTdmMTZ8XHU5MGY1XHU5MDVlXHU1MzQwXHU4NjVmfChcXGJ8Xylwb3N0YSBrb2R1KFxcYnxfKXxcdWM2YjBcdWQzYjguP1x1YmM4OFx1ZDYzOHxrb2RlLj9wb3MiLAoiaSIpLGVKPXt9LEtJPShlSltGRC5CYl09e21lOiExLG5hOk1EfSxlSltGRC5lZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbInRlbCIsInRlbC1uYXRpb25hbCIsInRlbC1sb2NhbCJdLG5lOlpJLG5hOmZ1bmN0aW9uKGEpe3JldHVybiBHRChhLCEwKX19LGVKW0ZELktoXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsibmFtZSIsImNjLW5hbWUiXSxuZTokSSxuYTpORH0sZUpbRkQuWGRdPXttZTohMCxhdXRvY29tcGxldGU6WyJnaXZlbi1uYW1lIiwiY2MtZ2l2ZW4tbmFtZSJdLG5lOmFKLG5hOk5EfSxlSltGRC5jZV09e21lOiEwLGF1dG9jb21wbGV0ZTpbImZhbWlseS1uYW1lIiwiY2MtZmFtaWx5LW5hbWUiXSxuZTpiSixuYTpORH0sZUpbRkQueGZdPXttZTohMCxhdXRvY29tcGxldGU6WyJjb3VudHJ5IiwiY291bnRyeS1uYW1lIl0sbmU6Y0osbmE6TkR9LGVKW0ZELnFnXT17bWU6ITAsYXV0b2NvbXBsZXRlOlsicG9zdGFsLWNvZGUiXSxuZTpkSixuYTpJRH0sZUopO2Z1bmN0aW9uIGZKKGEpe3ZhciBiO0wodGhpcywiZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSIsImF1dG8iKTt2YXIgYz1UZChhKXx8e30sZD1KSSh7aW5jbHVkZVNlbGVjdG9yOiEhYy5pbmNsdWRlU2VsZWN0b3IsaW5jbHVkZVZpc2liaWxpdHk6ISFjLmluY2x1ZGVWaXNpYmlsaXR5LGV4Y2x1ZGVFbGVtZW50U2VsZWN0b3JzOmMuZXhjbHVkZUVsZW1lbnRTZWxlY3RvcnMsZmllbGRGaWx0ZXJzOmMuZmllbGRGaWx0ZXJzLHNlbGVjdE11bHRpcGxlRWxlbWVudHM6ISFjLnNlbGVjdE11bHRpcGxlRWxlbWVudHN9KTtiPW5ldyBrYjt2YXIgZT1uZXcgR2Q7Yi5zZXQoImVsZW1lbnRzIixlKTtmb3IodmFyIGY9ZC5lbGVtZW50cyxnPTA7ZzxmLmxlbmd0aDtnKyspZS5wdXNoKGdKKGZbZ10pKTtkLmdpIT09dm9pZCAwJiZiLnNldCgicHJlZmVycmVkRW1haWxFbGVtZW50IiwKZ0ooZC5naSkpO2Iuc2V0KCJzdGF0dXMiLGQuc3RhdHVzKTtpZihjLnJlYWRGcm9tRGF0YUxheWVyKXtoSihlLGMpO3ZhciBoPVBEKCksbD1oLnN0O2Iuc2V0KCJkYXRhTGF5ZXJTZWFyY2hUaW1lIixoLnZ0KTtiLnNldCgiZGF0YUxheWVyU2VhcmNoQ291bnQiLGwpfXJldHVybiBifQp2YXIgaUo9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgRkQuQmI6cmV0dXJuImVtYWlsIjtjYXNlIEZELmVlOnJldHVybiJwaG9uZV9udW1iZXIiO2Nhc2UgRkQuWGQ6cmV0dXJuImZpcnN0X25hbWUiO2Nhc2UgRkQuY2U6cmV0dXJuImxhc3RfbmFtZSI7Y2FzZSBGRC50ajpyZXR1cm4ic3RyZWV0IjtjYXNlIEZELmxpOnJldHVybiJjaXR5IjtjYXNlIEZELmpqOnJldHVybiJyZWdpb24iO2Nhc2UgRkQucWc6cmV0dXJuInBvc3RhbF9jb2RlIjtjYXNlIEZELnhmOnJldHVybiJjb3VudHJ5In19LGpKPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBrYixjPWlKKGEuRGEpO2MhPT12b2lkIDAmJmIuc2V0KCJ0eXBlIixjKTtiLnNldCgidXNlckRhdGEiLGEuQ2EpO2Iuc2V0KCJ0YWdOYW1lIiwiRExZUiIpO3JldHVybiBifSxoSj1mdW5jdGlvbihhLGIpe3ZhciBjPVFEKCk7aWYoTSg1NjgpKWZvcih2YXIgZD1uZXcgU2V0KGEuaGMoKS5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHIuZ2V0KCJ0eXBlIil9KSksCmU9bShjKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl7dmFyIGc9bShmLnZhbHVlKSxoPWcubmV4dCgpLnZhbHVlLGw9Zy5uZXh0KCkudmFsdWUsbj1oLHA9bDtpZihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHMpYS5wdXNoKGpKKHApKTtlbHNle3ZhciBxPWlKKG4pO3EmJiFkLmhhcyhxKSYmYS5wdXNoKGpKKHApKX19ZWxzZSBjLmhhcyhGRC5CYikmJihiLnNlbGVjdE11bHRpcGxlRWxlbWVudHN8fGEubGVuZ3RoKCk9PT0wKSYmYS5wdXNoKGpKKGMuZ2V0KEZELkJiKSkpfSxnSj1mdW5jdGlvbihhKXt2YXIgYj1uZXcga2I7Yi5zZXQoInVzZXJEYXRhIixhLkNhKTtiLnNldCgidGFnTmFtZSIsYS50YWdOYW1lKTthLnF1ZXJ5U2VsZWN0b3IhPT12b2lkIDAmJmIuc2V0KCJxdWVyeVNlbGVjdG9yIixhLnF1ZXJ5U2VsZWN0b3IpO2EuaXNWaXNpYmxlIT09dm9pZCAwJiZiLnNldCgiaXNWaXNpYmxlIixhLmlzVmlzaWJsZSk7aWYoTSg1NjgpKXt2YXIgYz1pSihhLnR5cGUpO2MhPT0Kdm9pZCAwJiZiLnNldCgidHlwZSIsYyl9ZWxzZSBzd2l0Y2goYS50eXBlKXtjYXNlIEZELkJiOmIuc2V0KCJ0eXBlIiwiZW1haWwiKX1yZXR1cm4gYn07ZkouUD0iaW50ZXJuYWwuZGV0ZWN0VXNlclByb3ZpZGVkRGF0YSI7CnZhciBrSj1mdW5jdGlvbihhKXt2YXIgYj1oZChhLFsiYnV0dG9uIiwiaW5wdXQiXSw1MCk7aWYoIWIpcmV0dXJuIG51bGw7dmFyIGM9U3RyaW5nKGIudGFnTmFtZSkudG9Mb3dlckNhc2UoKTtpZihjPT09ImJ1dHRvbiIpcmV0dXJuIGI7aWYoYz09PSJpbnB1dCIpe3ZhciBkPWVkKGIsInR5cGUiKTtpZihkPT09ImJ1dHRvbiJ8fGQ9PT0ic3VibWl0Inx8ZD09PSJpbWFnZSJ8fGQ9PT0iZmlsZSJ8fGQ9PT0icmVzZXQiKXJldHVybiBifXJldHVybiBudWxsfSxsSj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Yy50YXJnZXQ7aWYoZCl7dmFyIGU9JEYoYSwiaW5kaXZpZHVhbEVsZW1lbnRJZHMiLFtdKTtpZihlLmxlbmd0aD4wKXt2YXIgZj1lRyhkLGIsZSk7dUUoZil9dmFyIGc9ITEsaD0kRihhLCJjb21tb25CdXR0b25JZHMiLFtdKTtpZihoLmxlbmd0aD4wKXt2YXIgbD1rSihkKTtpZihsKXt2YXIgbj1lRyhsLGIsaCk7dUUobik7Zz0hMH19dmFyIHA9JEYoYSwic2VsZWN0b3JUb1RyaWdnZXJJZHMiLAp7fSkscTtmb3IocSBpbiBwKWlmKHAuaGFzT3duUHJvcGVydHkocSkpe3ZhciByPWc/cFtxXS5maWx0ZXIoZnVuY3Rpb24odil7cmV0dXJuIGguaW5kZXhPZih2KT09PS0xfSk6cFtxXTtpZihyLmxlbmd0aCE9PTApe3ZhciB0PXBJKGQscSk7aWYodCl7dmFyIHU9ZUcodCxiLHIpO3VFKHUpfX19fX07CmZ1bmN0aW9uIG1KKGEsYil7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgYz1hP1RkKGEpOnt9LGQ9SmIoYy5tYXRjaENvbW1vbkJ1dHRvbnMpLGU9ISFjLmNzc1NlbGVjdG9yLGY9WkYoYik7TCh0aGlzLCJkZXRlY3RfY2xpY2tfZXZlbnRzIixjLm1hdGNoQ29tbW9uQnV0dG9ucyxjLmNzc1NlbGVjdG9yKTt2YXIgZz1jLnVzZVYyRXZlbnROYW1lPyJndG0uY2xpY2stdjIiOiJndG0uY2xpY2siLGg9Yy51c2VWMkV2ZW50TmFtZT8iZWNsIjoiY2wiLGw9ZnVuY3Rpb24ocCl7cC5wdXNoKGYpO3JldHVybiBwfTtpZihlfHxkKXtpZihkJiZkRyhoLCJjb21tb25CdXR0b25JZHMiLGwsW10pLGUpe3ZhciBuPUxiKFN0cmluZyhjLmNzc1NlbGVjdG9yKSk7ZEcoaCwic2VsZWN0b3JUb1RyaWdnZXJJZHMiLApmdW5jdGlvbihwKXtwLmhhc093blByb3BlcnR5KG4pfHwocFtuXT1bXSk7bChwW25dKTtyZXR1cm4gcH0se30pfX1lbHNlIGRHKGgsImluZGl2aWR1YWxFbGVtZW50SWRzIixsLFtdKTtiRyhoLGZ1bmN0aW9uKCl7JGMoQiwiY2xpY2siLGZ1bmN0aW9uKHApe2xKKGgsZyxwKX0sITApfSk7cmV0dXJuIGZ9bUouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25DbGljayI7CnZhciBuSj1mdW5jdGlvbigpe3RoaXMuSD1bXTt0aGlzLk49ISFBLk11dGF0aW9uT2JzZXJ2ZXJ9O25KLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7aWYodGhpcy5ILmxlbmd0aD09PTApe3ZhciBjPWZ1bmN0aW9uKCl7dmFyIGQ9Qi5ib2R5O2lmKGQpaWYoYi5OKShuZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbigpe2Zvcih2YXIgZj0wO2Y8Yi5ILmxlbmd0aDtmKyspYmQoYi5IW2ZdKX0pKS5vYnNlcnZlKGQse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSk7ZWxzZXt2YXIgZT0hMTskYyhkLCJET01Ob2RlSW5zZXJ0ZWQiLGZ1bmN0aW9uKCl7ZXx8KGU9ITAsYmQoZnVuY3Rpb24oKXtlPSExO2Zvcih2YXIgZj0wO2Y8Yi5ILmxlbmd0aDtmKyspYmQoYi5IW2ZdKX0pKX0pfX07Qi5ib2R5P2MoKTpiZChjKX10aGlzLkgucHVzaChhKX07bkoucHJvdG90eXBlLlI9ZnVuY3Rpb24oYSl7aWYodGhpcy5IKWZvcih2YXIgYj0wO2I8dGhpcy5ILmxlbmd0aDtiKyspdGhpcy5IW2JdPT09CmEmJnRoaXMuSC5zcGxpY2UoYiwxKX07dmFyIG9KPW5ldyBuSjsKZnVuY3Rpb24gdEooYSxiKXtyZXR1cm4gcH10Si5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkVsZW1lbnRWaXNpYmlsaXR5IjtmdW5jdGlvbiB1Sigpe311Si5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkVycm9yIjsKdmFyIHdKPWZ1bmN0aW9uKGEsYil7R2IoYSxmdW5jdGlvbihjLGQpe3ZhciBlPWJbY107ZSYmR2IoZCxmdW5jdGlvbihmLGcpe3ZKKGcsZSl9KX0pfSx6Sj1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt2YXIgaD0iIitiO2lmKGNbaF0pY1toXS5wdXNoKGEpO2Vsc2V7dmFyIGw9W2FdO2NbaF09bDt2YXIgbj1kW2hdO258fChuPXt9LGRbaF09bik7ZS5wdXNoKGZ1bmN0aW9uKHApe3ZhciBxPXAudGFyZ2V0O2lmKHEpe3ZhciByPWlHKHEpO2lmKHIpe3ZhciB0PXhKKHIsImd0bUZvcm1JbnRlcmFjdElkIixmKSx1PXhKKHEsImd0bUZvcm1JbnRlcmFjdEZpZWxkSWQiLGcpO2lmKHQhPT1udWxsJiZ1IT09bnVsbCl7dmFyIHY9blt0XTt2Pyh2LlJiJiYoQS5jbGVhclRpbWVvdXQodi5SYiksdi5kZi5nZXRBdHRyaWJ1dGUoImRhdGEtZ3RtLWZvcm0taW50ZXJhY3QtZmllbGQtaWQiKSE9PXUmJnZKKHYsbCkpLHYuZGY9cSx5Sih2LGwsYikpOihuW3RdPXtmb3JtOnIsZGY6cSxzZXF1ZW5jZU51bWJlcjowLApSYjpudWxsfSx5SihuW3RdLGwsYikpfX19fSl9fSx2Sj1mdW5jdGlvbihhLGIpe3ZhciBjPWEuZm9ybSxkPWEuZGYsZT1lRyhjLCJndG0uZm9ybUludGVyYWN0IixiKSxmPWMuYWN0aW9uO2YmJmYudGFnTmFtZSYmKGY9Yy5jbG9uZU5vZGUoITEpLmFjdGlvbik7ZVsiZ3RtLmVsZW1lbnRVcmwiXT1mO2VbImd0bS5pbnRlcmFjdGVkRm9ybU5hbWUiXT1jLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsP2MuZ2V0QXR0cmlidXRlKCJuYW1lIik6dm9pZCAwO2VbImd0bS5pbnRlcmFjdGVkRm9ybUxlbmd0aCJdPWMubGVuZ3RoO2VbImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkIl09ZDtlWyJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZElkIl09ZC5pZDtlWyJndG0uaW50ZXJhY3RlZEZvcm1GaWVsZE5hbWUiXT1kLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsP2QuZ2V0QXR0cmlidXRlKCJuYW1lIik6dm9pZCAwO2VbImd0bS5pbnRlcmFjdGVkRm9ybUZpZWxkUG9zaXRpb24iXT1oRyhjLGQsImd0bUZvcm1JbnRlcmFjdEZpZWxkSWQiKTsKZVsiZ3RtLmludGVyYWN0ZWRGb3JtRmllbGRUeXBlIl09ZC5nZXRBdHRyaWJ1dGUoInR5cGUiKSE9bnVsbD9kLmdldEF0dHJpYnV0ZSgidHlwZSIpOnZvaWQgMDtlWyJndG0uaW50ZXJhY3RTZXF1ZW5jZU51bWJlciJdPWEuc2VxdWVuY2VOdW1iZXI7dUUoZSk7YS5zZXF1ZW5jZU51bWJlcisrO2EuUmI9bnVsbH0seUo9ZnVuY3Rpb24oYSxiLGMpe2M/YS5SYj1BLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2SihhLGIpfSxjKTp2SihhLGIpfSx4Sj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7dHJ5e2lmKGQ9YS5kYXRhc2V0W2JdKXJldHVybiBkO2Q9U3RyaW5nKGMoKSk7YS5kYXRhc2V0W2JdPWR9Y2F0Y2goZSl7ZD1udWxsfXJldHVybiBkfTsKZnVuY3Rpb24gQUooYSxiKXt2YXIgYz10aGlzO2lmKCFmaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0fHVuZGVmaW5lZCIsImFueSJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHMiKX1dKTt2YXIgZD1aRihiKSxlPWEmJk51bWJlcihhLmdldCgiaW50ZXJ2YWwiKSk7ZT4wJiZpc0Zpbml0ZShlKXx8KGU9MCk7aWYoJEYoImZpbCIsImluaXQiLCExKSl7dmFyIGY9JEYoImZpbCIsInJlZyIpO2lmKGYpZihkLGUpO2Vsc2UgdGhyb3cgRXJyb3IoIkZhaWxlZCB0byByZWdpc3RlciB0cmlnZ2VyOiAiK2QpO31lbHNle3ZhciBnPXt9LGg9W10sbD17fSxuPTAscD1mdW5jdGlvbigpe3JldHVybiBuKyt9LHE9MCxyPWZ1bmN0aW9uKCl7cmV0dXJuIHErK307JGMoQiwiY2hhbmdlIiwKZnVuY3Rpb24odCl7Zm9yKHZhciB1PTA7dTxoLmxlbmd0aDt1KyspaFt1XSh0KX0pOyRjKEEsInBhZ2VoaWRlIixmdW5jdGlvbigpe3dKKGwsZyl9KTt6SihkLGUsZyxsLGgscCxyKTthRygiZmlsIiwicmVnIixmdW5jdGlvbih0LHUpe3pKKHQsdSxnLGwsaCxwLHIpfSk7YUcoImZpbCIsImluaXQiLCEwKX1yZXR1cm4gZH1BSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkZvcm1JbnRlcmFjdGlvbiI7CnZhciBCSj1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSRGKCJmc2wiLGM/Im52Lm13dCI6Im13dCIsMCksZztnPWM/JEYoImZzbCIsIm52LmlkcyIsW10pOiRGKCJmc2wiLCJpZHMiLFtdKTtpZighZy5sZW5ndGgpcmV0dXJuITA7dmFyIGg9ZUcoYSwiZ3RtLmZvcm1TdWJtaXQiLGcpLGw9YS5hY3Rpb247bCYmbC50YWdOYW1lJiYobD1hLmNsb25lTm9kZSghMSkuYWN0aW9uKTtQKDEyMSk7aWYobD09PSJodHRwczovL3d3dy5mYWNlYm9vay5jb20vdHIvIilyZXR1cm4gUCgxMjIpLCEwO2hbImd0bS5lbGVtZW50VXJsIl09bDtoWyJndG0uZm9ybUNhbmNlbGVkIl09YzthLmdldEF0dHJpYnV0ZSgibmFtZSIpIT1udWxsJiYoaFsiZ3RtLmludGVyYWN0ZWRGb3JtTmFtZSJdPWEuZ2V0QXR0cmlidXRlKCJuYW1lIikpO2UmJihoWyJndG0uZm9ybVN1Ym1pdEVsZW1lbnQiXT1lLGhbImd0bS5mb3JtU3VibWl0RWxlbWVudFRleHQiXT1lLnZhbHVlKTtpZihkJiZmKXtpZighc0UoaCxqRShiLApmKSxmKSlyZXR1cm4hMX1lbHNlIEZ5KDEsImd0bS5mb3JtU3VibWl0Iiksc0UoaCxmdW5jdGlvbigpe30sZnx8MkUzKTtyZXR1cm4hMH0sQ0o9ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPWZ1bmN0aW9uKGMpe3JldHVybiBDYihhLGZ1bmN0aW9uKGQpe3JldHVybiBkLmZvcm09PT1jfSl9O3JldHVybntzdG9yZTpmdW5jdGlvbihjLGQpe3ZhciBlPWIoYyk7ZT9lLmJ1dHRvbj1kOmEucHVzaCh7Zm9ybTpjLGJ1dHRvbjpkfSl9LGdldDpmdW5jdGlvbihjKXt2YXIgZD1iKGMpO2lmKGQpcmV0dXJuIGQuYnV0dG9ufX19LERKPWZ1bmN0aW9uKGEpe3ZhciBiPWEudGFyZ2V0O3JldHVybiBiJiZiIT09Il9zZWxmIiYmYiE9PSJfcGFyZW50IiYmYiE9PSJfdG9wIj8hMTohMH0sRUo9ZnVuY3Rpb24oKXt2YXIgYT1DSigpLGI9SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ7JGMoQiwiY2xpY2siLGZ1bmN0aW9uKGMpe3ZhciBkPWMudGFyZ2V0O2lmKGQpe3ZhciBlPWhkKGQsWyJidXR0b24iLAoiaW5wdXQiXSwxMDApO2lmKGUmJihlLnR5cGU9PT0ic3VibWl0Inx8ZS50eXBlPT09ImltYWdlIikmJmUubmFtZSYmZWQoZSwidmFsdWUiKSl7dmFyIGY9aUcoZSk7ZiYmYS5zdG9yZShmLGUpfX19LCExKTskYyhCLCJzdWJtaXQiLGZ1bmN0aW9uKGMpe3ZhciBkPWMudGFyZ2V0O2lmKCFkKXJldHVybiBjLnJldHVyblZhbHVlO3ZhciBlPWMuZGVmYXVsdFByZXZlbnRlZHx8Yy5yZXR1cm5WYWx1ZT09PSExLGY9REooZCkmJiFlLGc9YS5nZXQoZCksaD0hMDtpZihCSihkLGZ1bmN0aW9uKCl7aWYoaCl7dmFyIGw9bnVsbCxuPXt9O2cmJihsPUIuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxsLnR5cGU9ImhpZGRlbiIsbC5uYW1lPWcubmFtZSxsLnZhbHVlPWcudmFsdWUsZC5hcHBlbmRDaGlsZChsKSxnLmhhc0F0dHJpYnV0ZSgiZm9ybWFjdGlvbiIpJiYobi5hY3Rpb249ZC5nZXRBdHRyaWJ1dGUoImFjdGlvbiIpLHhjKGQsZy5nZXRBdHRyaWJ1dGUoImZvcm1hY3Rpb24iKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtZW5jdHlwZSIpJiYKKG4uZW5jdHlwZT1kLmdldEF0dHJpYnV0ZSgiZW5jdHlwZSIpLGQuc2V0QXR0cmlidXRlKCJlbmN0eXBlIixnLmdldEF0dHJpYnV0ZSgiZm9ybWVuY3R5cGUiKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtbWV0aG9kIikmJihuLm1ldGhvZD1kLmdldEF0dHJpYnV0ZSgibWV0aG9kIiksZC5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsZy5nZXRBdHRyaWJ1dGUoImZvcm1tZXRob2QiKSkpLGcuaGFzQXR0cmlidXRlKCJmb3JtdmFsaWRhdGUiKSYmKG4udmFsaWRhdGU9ZC5nZXRBdHRyaWJ1dGUoInZhbGlkYXRlIiksZC5zZXRBdHRyaWJ1dGUoInZhbGlkYXRlIixnLmdldEF0dHJpYnV0ZSgiZm9ybXZhbGlkYXRlIikpKSxnLmhhc0F0dHJpYnV0ZSgiZm9ybXRhcmdldCIpJiYobi50YXJnZXQ9ZC5nZXRBdHRyaWJ1dGUoInRhcmdldCIpLGQuc2V0QXR0cmlidXRlKCJ0YXJnZXQiLGcuZ2V0QXR0cmlidXRlKCJmb3JtdGFyZ2V0IikpKSk7Yi5jYWxsKGQpO2wmJihkLnJlbW92ZUNoaWxkKGwpLG4uaGFzT3duUHJvcGVydHkoImFjdGlvbiIpJiYKeGMoZCxuLmFjdGlvbiksbi5oYXNPd25Qcm9wZXJ0eSgiZW5jdHlwZSIpJiZkLnNldEF0dHJpYnV0ZSgiZW5jdHlwZSIsbi5lbmN0eXBlKSxuLmhhc093blByb3BlcnR5KCJtZXRob2QiKSYmZC5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsbi5tZXRob2QpLG4uaGFzT3duUHJvcGVydHkoInZhbGlkYXRlIikmJmQuc2V0QXR0cmlidXRlKCJ2YWxpZGF0ZSIsbi52YWxpZGF0ZSksbi5oYXNPd25Qcm9wZXJ0eSgidGFyZ2V0IikmJmQuc2V0QXR0cmlidXRlKCJ0YXJnZXQiLG4udGFyZ2V0KSl9fSxlLGYsZykpaD0hMTtlbHNlIHJldHVybiBlfHwoYy5wcmV2ZW50RGVmYXVsdCYmYy5wcmV2ZW50RGVmYXVsdCgpLGMucmV0dXJuVmFsdWU9ITEpLCExO3JldHVybiBjLnJldHVyblZhbHVlfSwhMSk7SFRNTEZvcm1FbGVtZW50LnByb3RvdHlwZS5zdWJtaXQ9ZnVuY3Rpb24oKXt2YXIgYz10aGlzLGQ9ITA7QkooYyxmdW5jdGlvbigpe2QmJmIuY2FsbChjKX0sITEsREooYykpJiYoYi5jYWxsKGMpLGQ9CiExKX19OwpmdW5jdGlvbiBGSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTt2YXIgZD1hJiZhLmdldCgid2FpdEZvclRhZ3MiKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHMiLHt3YWl0Rm9yVGFnczohIWR9KX1dKTt2YXIgZT1hJiZhLmdldCgiY2hlY2tWYWxpZGF0aW9uIiksZj1aRihiKTtpZihkKXt2YXIgZz1OdW1iZXIoYS5nZXQoIndhaXRGb3JUYWdzVGltZW91dCIpKTtnPjAmJmlzRmluaXRlKGcpfHwoZz0yRTMpO3ZhciBoPWZ1bmN0aW9uKG4pe3JldHVybiBNYXRoLm1heChnLG4pfTtkRygiZnNsIiwibXd0IixoLDApO2V8fGRHKCJmc2wiLCJudi5td3QiLGgsMCl9dmFyIGw9ZnVuY3Rpb24obil7bi5wdXNoKGYpOwpyZXR1cm4gbn07ZEcoImZzbCIsImlkcyIsbCxbXSk7ZXx8ZEcoImZzbCIsIm52LmlkcyIsbCxbXSk7JEYoImZzbCIsImluaXQiLCExKXx8KEVKKCksYUcoImZzbCIsImluaXQiLCEwKSk7cmV0dXJuIGZ9RkouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25Gb3JtU3VibWl0IjsKZnVuY3Rpb24gS0ooKXt2YXIgYT10aGlzO31LSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkdhU2VuZCI7CnZhciBNSj1mdW5jdGlvbihhLGIsYyxkKXtjPWM9PT12b2lkIDA/e306YztkPWQ9PT12b2lkIDA/W106ZDt2YXIgZT0iIitiO2lmKGNbZV0pY1tlXS5wdXNoKGEpO2Vsc2V7dmFyIGY9W2FdO2NbZV09Zjt2YXIgZz1MSigiZ3RtLmhpc3RvcnlDaGFuZ2UtdjIiKSxoPS0xO2QucHVzaChmdW5jdGlvbihsKXtoPj0wJiZBLmNsZWFyVGltZW91dChoKTtiP2g9QS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZyhsLGYpO2g9LTF9LGIpOmcobCxmKX0pfX0sTEo9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5ocmVmLGM9e3NvdXJjZTpudWxsLHN0YXRlOkEuaGlzdG9yeS5zdGF0ZXx8bnVsbCx1cmw6T2ooUmooYikpLGtiOkxqKFJqKGIpLCJmcmFnbWVudCIpfTtyZXR1cm4gZnVuY3Rpb24oZCxlKXt2YXIgZj1jLGc9e307Z1tmLnNvdXJjZV09ITA7Z1tkLnNvdXJjZV09ITA7aWYoIWcucG9wc3RhdGV8fCFnLmhhc2hjaGFuZ2V8fGYua2IhPT1kLmtiKXt2YXIgaD17ZXZlbnQ6YSwiZ3RtLmhpc3RvcnlDaGFuZ2VTb3VyY2UiOmQuc291cmNlLAoiZ3RtLm9sZFVybEZyYWdtZW50IjpjLmtiLCJndG0ubmV3VXJsRnJhZ21lbnQiOmQua2IsImd0bS5vbGRIaXN0b3J5U3RhdGUiOmMuc3RhdGUsImd0bS5uZXdIaXN0b3J5U3RhdGUiOmQuc3RhdGUsImd0bS5vbGRVcmwiOmMudXJsLCJndG0ubmV3VXJsIjpkLnVybH07ZSYmKGhbImd0bS50cmlnZ2VycyJdPWUuam9pbigiLCIpKTtjPWQ7dUUoaCl9fX0sTko9ZnVuY3Rpb24oYSxiKXt2YXIgYz1BLmhpc3RvcnksZD1jW2FdO2lmKHliKGQpKXRyeXtjW2FdPWZ1bmN0aW9uKGUsZixnKXtkLmFwcGx5KGMsW10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCkpO3ZhciBoPUEubG9jYXRpb24uaHJlZjtiKHtzb3VyY2U6YSxzdGF0ZTplLHVybDpPaihSaihoKSksa2I6TGooUmooaCksImZyYWdtZW50Iil9KX19Y2F0Y2goZSl7fX0sUEo9ZnVuY3Rpb24oYSl7QS5hZGRFdmVudExpc3RlbmVyKCJwb3BzdGF0ZSIsZnVuY3Rpb24oYil7dmFyIGM9T0ooYik7YSh7c291cmNlOiJwb3BzdGF0ZSIsc3RhdGU6Yi5zdGF0ZSwKdXJsOk9qKFJqKGMpKSxrYjpMaihSaihjKSwiZnJhZ21lbnQiKX0pfSl9LFFKPWZ1bmN0aW9uKGEpe0EuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsZnVuY3Rpb24oYil7dmFyIGM9T0ooYik7YSh7c291cmNlOiJoYXNoY2hhbmdlIixzdGF0ZTpudWxsLHVybDpPaihSaihjKSksa2I6TGooUmooYyksImZyYWdtZW50Iil9KX0pfSxPSj1mdW5jdGlvbihhKXt2YXIgYixjO3JldHVybigoYj1hLnRhcmdldCk9PW51bGw/dm9pZCAwOihjPWIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpjLmhyZWYpfHxBLmxvY2F0aW9uLmhyZWZ9OwpmdW5jdGlvbiBSSihhLGIpe3ZhciBjPXRoaXM7aWYoIWZoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3R8dW5kZWZpbmVkIiwiYW55Il0sYXJndW1lbnRzKTtURihbZnVuY3Rpb24oKXtMKGMsImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiKX1dKTt2YXIgZD1hJiZhLmdldCgidXNlVjJFdmVudE5hbWUiKT8iZWhsIjoiaGwiLGU9TnVtYmVyKGEmJmEuZ2V0KCJpbnRlcnZhbCIpKTtlPjAmJmlzRmluaXRlKGUpfHwoZT0wKTt2YXIgZjtpZighJEYoZCwiaW5pdCIsITEpKXt2YXIgZz17fSxoPVtdLGw7ZD09PSJlaGwiPyhsPWZ1bmN0aW9uKHApe2Zvcih2YXIgcT0wO3E8aC5sZW5ndGg7cSsrKWhbcV0ocCl9LGY9WkYoYiksTUooZixlLGcsaCksYUcoZCwicmVnIixmdW5jdGlvbihwLHEpe01KKHAscSxnLGgpfSkpOmw9TEooImd0bS5oaXN0b3J5Q2hhbmdlIik7ClFKKGwpO1BKKGwpO05KKCJwdXNoU3RhdGUiLGwpO05KKCJyZXBsYWNlU3RhdGUiLGwpO2FHKGQsImluaXQiLCEwKX1lbHNlIGlmKGQ9PT0iZWhsIil7dmFyIG49JEYoZCwicmVnIik7biYmKGY9WkYoYiksbihmLGUpKX1kPT09ImhsIiYmKGY9dm9pZCAwKTtyZXR1cm4gZn1SSi5QPSJpbnRlcm5hbC5lbmFibGVBdXRvRXZlbnRPbkhpc3RvcnlDaGFuZ2UiO3ZhciBTSj1bImh0dHA6Ly8iLCJodHRwczovLyIsImphdmFzY3JpcHQ6IiwiZmlsZTovLyJdOwp2YXIgVEo9ZnVuY3Rpb24oYSxiKXtpZihhLndoaWNoPT09Mnx8YS5jdHJsS2V5fHxhLnNoaWZ0S2V5fHxhLmFsdEtleXx8YS5tZXRhS2V5KXJldHVybiExO3ZhciBjPW9kKGIsImhyZWYiKTtpZihjLmluZGV4T2YoIjoiKSE9PS0xJiYhU0ouc29tZShmdW5jdGlvbihoKXtyZXR1cm4gU2IoYyxoKX0pKXJldHVybiExO3ZhciBkPWMuaW5kZXhPZigiIyIpLGU9b2QoYiwidGFyZ2V0Iik7aWYoZSYmZSE9PSJfc2VsZiImJmUhPT0iX3BhcmVudCImJmUhPT0iX3RvcCJ8fGQ9PT0wKXJldHVybiExO2lmKGQ+MCl7dmFyIGY9T2ooUmooYykpLGc9T2ooUmooQS5sb2NhdGlvbi5ocmVmKSk7cmV0dXJuIGYhPT1nfXJldHVybiEwfSxVSj1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1MaihSaigoYi5hdHRyaWJ1dGVzJiZiLmF0dHJpYnV0ZXMuZm9ybWFjdGlvbj9iLmZvcm1BY3Rpb246IiIpfHxiLmFjdGlvbnx8b2QoYiwiaHJlZiIpfHxiLnNyY3x8Yi5jb2RlfHxiLmNvZGViYXNlfHwiIiksImhvc3QiKSwKZD0wO2Q8YS5sZW5ndGg7ZCsrKXRyeXtpZigobmV3IFJlZ0V4cChhW2RdKSkudGVzdChjKSlyZXR1cm4hMX1jYXRjaChlKXt9cmV0dXJuITB9LFZKPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShjKXt2YXIgZD1jLnRhcmdldDtpZihkJiZjLndoaWNoIT09MyYmIShjLkh8fGMudGltZVN0YW1wJiZjLnRpbWVTdGFtcD09PWIpKXtiPWMudGltZVN0YW1wO2Q9aGQoZCxbImEiLCJhcmVhIl0sMTAwKTtpZighZClyZXR1cm4gYy5yZXR1cm5WYWx1ZTt2YXIgZT1jLmRlZmF1bHRQcmV2ZW50ZWR8fGMucmV0dXJuVmFsdWU9PT0hMSxmPSRGKCJsY2wiLGU/Im52Lm13dCI6Im13dCIsMCksZztnPWU/JEYoImxjbCIsIm52LmlkcyIsW10pOiRGKCJsY2wiLCJpZHMiLFtdKTtmb3IodmFyIGg9W10sbD0wO2w8Zy5sZW5ndGg7bCsrKXt2YXIgbj1nW2xdLHA9JEYoImxjbCIsImFmZi5tYXAiLHt9KVtuXTtwJiYhVUoocCxkKXx8aC5wdXNoKG4pfWlmKGgubGVuZ3RoKXt2YXIgcT1USihjLGQpLHI9ZUcoZCwiZ3RtLmxpbmtDbGljayIsCmgpO3JbImd0bS5lbGVtZW50VGV4dCJdPWZkKGQpO3JbImd0bS53aWxsT3BlbkluTmV3V2luZG93Il09IXE7aWYocSYmIWUmJmYmJmQuaHJlZil7dmFyIHQ9ISFDYihTdHJpbmcob2QoZCwicmVsIil8fCIiKS5zcGxpdCgiICIpLGZ1bmN0aW9uKHkpe3JldHVybiB5LnRvTG93ZXJDYXNlKCk9PT0ibm9yZWZlcnJlciJ9KSx1PUFbKG9kKGQsInRhcmdldCIpfHwiX3NlbGYiKS5zdWJzdHJpbmcoMSldLHY9ITAseD10RShmdW5jdGlvbigpe3ZhciB5O2lmKHk9diYmdSl7dmFyIHo7YTppZih0KXt2YXIgQzt0cnl7Qz1uZXcgTW91c2VFdmVudChjLnR5cGUse2J1YmJsZXM6ITB9KX1jYXRjaChEKXtpZighQi5jcmVhdGVFdmVudCl7ej0hMTticmVhayBhfUM9Qi5jcmVhdGVFdmVudCgiTW91c2VFdmVudHMiKTtDLmluaXRFdmVudChjLnR5cGUsITAsITApfUMuSD0hMDtjLnRhcmdldC5kaXNwYXRjaEV2ZW50KEMpO3o9ITB9ZWxzZSB6PSExO3k9IXp9eSYmKHUubG9jYXRpb24uaHJlZj1vZChkLAoiaHJlZiIpKX0sZik7aWYoaUUocix4LGYpKXY9ITE7ZWxzZSByZXR1cm4gYy5wcmV2ZW50RGVmYXVsdCYmYy5wcmV2ZW50RGVmYXVsdCgpLGMucmV0dXJuVmFsdWU9ITF9ZWxzZSBzRShyLGZ1bmN0aW9uKCl7fSxmfHwyRTMpO3JldHVybiEwfX19dmFyIGI9MDskYyhCLCJjbGljayIsYSwhMSk7JGMoQiwiYXV4Y2xpY2siLGEsITEpfTsKZnVuY3Rpb24gV0ooYSxiKXt2YXIgYz10aGlzO2lmKCFmaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0fHVuZGVmaW5lZCIsImFueSJdLGFyZ3VtZW50cyk7dmFyIGQ9VGQoYSk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfbGlua19jbGlja19ldmVudHMiLGQpfV0pO3ZhciBlPWQmJiEhZC53YWl0Rm9yVGFncyxmPWQmJiEhZC5jaGVja1ZhbGlkYXRpb24sZz1kP2QuYWZmaWxpYXRlRG9tYWluczp2b2lkIDAsaD1aRihiKTtpZihlKXt2YXIgbD1OdW1iZXIoZC53YWl0Rm9yVGFnc1RpbWVvdXQpO2w+MCYmaXNGaW5pdGUobCl8fChsPTJFMyk7dmFyIG49ZnVuY3Rpb24ocSl7cmV0dXJuIE1hdGgubWF4KGwscSl9O2RHKCJsY2wiLCJtd3QiLG4sMCk7Znx8ZEcoImxjbCIsIm52Lm13dCIsbiwwKX12YXIgcD1mdW5jdGlvbihxKXtxLnB1c2goaCk7CnJldHVybiBxfTtkRygibGNsIiwiaWRzIixwLFtdKTtmfHxkRygibGNsIiwibnYuaWRzIixwLFtdKTtnJiZkRygibGNsIiwiYWZmLm1hcCIsZnVuY3Rpb24ocSl7cVtoXT1nO3JldHVybiBxfSx7fSk7JEYoImxjbCIsImluaXQiLCExKXx8KFZKKCksYUcoImxjbCIsImluaXQiLCEwKSk7cmV0dXJuIGh9V0ouUD0iaW50ZXJuYWwuZW5hYmxlQXV0b0V2ZW50T25MaW5rQ2xpY2siOwp2YXIgWEo9ZnVuY3Rpb24oYSl7cmV0dXJuICRGKCJzZGwiLGEse30pfSxZSj1mdW5jdGlvbihhLGIsYyl7aWYoYil7dmFyIGQ9QXJyYXkuaXNBcnJheShhKT9hOlthXTtkRygic2RsIixjLGZ1bmN0aW9uKGUpe2Zvcih2YXIgZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgZz1TdHJpbmcoZFtmXSk7ZS5oYXNPd25Qcm9wZXJ0eShnKXx8KGVbZ109W10pO2VbZ10ucHVzaChiKX1yZXR1cm4gZX0se30pfX0sYUs9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7WkooYSxiKTskSihjLCEwKX1yZXR1cm4gY30sYks9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7aD9nPUEuc2V0VGltZW91dChjLGUpOihnPTAsWkooYSxiKSwkSihkKSk7aD0hMX1mdW5jdGlvbiBkKCl7ZiYmYigpO2c/aD0hMDooZz1BLnNldFRpbWVvdXQoYyxlKSxhRygic2RsIiwicGVuZGluZyIsITApKX12YXIgZT0yNTAsZj0hMTtCLnNjcm9sbGluZ0VsZW1lbnQmJkIuZG9jdW1lbnRFbGVtZW50JiYoZT01MCxmPSEwKTt2YXIgZz0KMCxoPSExO3JldHVybiBkfSwkSj1mdW5jdGlvbihhLGIpeyRGKCJzZGwiLCJpbml0IiwhMSkmJiFjSygpJiYoYj9hZChBLCJzY3JvbGxlbmQiLGEpOmFkKEEsInNjcm9sbCIsYSksYWQoQSwicmVzaXplIixhKSxhRygic2RsIiwiaW5pdCIsITEpKX0sWko9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iKCksZD1jLmRlcHRoWCxlPWMuZGVwdGhZLGY9ZC9hLnNjcm9sbFdpZHRoKjEwMCxnPWUvYS5zY3JvbGxIZWlnaHQqMTAwO2RLKGQsImhvcml6LnBpeCIsIlBJWEVMUyIsImhvcml6b250YWwiKTtkSyhmLCJob3Jpei5wY3QiLCJQRVJDRU5UIiwiaG9yaXpvbnRhbCIpO2RLKGUsInZlcnQucGl4IiwiUElYRUxTIiwidmVydGljYWwiKTtkSyhnLCJ2ZXJ0LnBjdCIsIlBFUkNFTlQiLCJ2ZXJ0aWNhbCIpO2FHKCJzZGwiLCJwZW5kaW5nIiwhMSl9LGRLPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPVhKKGIpLGY9e30sZztmb3IoZyBpbiBlKWlmKGY9e3FmOmYucWZ9LGYucWY9ZyxlLmhhc093blByb3BlcnR5KGYucWYpKXt2YXIgaD0KTnVtYmVyKGYucWYpO2lmKCEoYTxoKSl7dmFyIGw9e307dUUoKGwuZXZlbnQ9Imd0bS5zY3JvbGxEZXB0aCIsbFsiZ3RtLnNjcm9sbFRocmVzaG9sZCJdPWgsbFsiZ3RtLnNjcm9sbFVuaXRzIl09Yy50b0xvd2VyQ2FzZSgpLGxbImd0bS5zY3JvbGxEaXJlY3Rpb24iXT1kLGxbImd0bS50cmlnZ2VycyJdPWVbZi5xZl0uam9pbigiLCIpLGwpKTtkRygic2RsIixiLGZ1bmN0aW9uKG4pe3JldHVybiBmdW5jdGlvbihwKXtkZWxldGUgcFtuLnFmXTtyZXR1cm4gcH19KGYpLHt9KX19fSxmSz1mdW5jdGlvbigpe3ZhciBhPWRHKCJzZGwiLCJzY3IiLGZ1bmN0aW9uKGMpe2N8fChjPUIuc2Nyb2xsaW5nRWxlbWVudHx8Qi5ib2R5JiZCLmJvZHkucGFyZW50Tm9kZSk7cmV0dXJuIGN9LG51bGwpLGI9ZEcoInNkbCIsImRlcHRoIixmdW5jdGlvbihjKXtjfHwoYz1lSyhhKSk7cmV0dXJuIGN9KTtyZXR1cm57c2Nyb2xsaW5nRWxlbWVudDphLHZyOmJ9fSxlSz1mdW5jdGlvbihhKXt2YXIgYj0wLGM9CjA7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGQ9c0koKSxlPWQuaGVpZ2h0O2I9TWF0aC5tYXgoYS5zY3JvbGxMZWZ0K2Qud2lkdGgsYik7Yz1NYXRoLm1heChhLnNjcm9sbFRvcCtlLGMpO3JldHVybntkZXB0aFg6YixkZXB0aFk6Y319fSxjSz1mdW5jdGlvbigpe3JldHVybiEhKE9iamVjdC5rZXlzKFhKKCJob3Jpei5waXgiKSkubGVuZ3RofHxPYmplY3Qua2V5cyhYSigiaG9yaXoucGN0IikpLmxlbmd0aHx8T2JqZWN0LmtleXMoWEooInZlcnQucGl4IikpLmxlbmd0aHx8T2JqZWN0LmtleXMoWEooInZlcnQucGN0IikpLmxlbmd0aCl9OwpmdW5jdGlvbiBnSyhhLGIpe3ZhciBjPXRoaXM7aWYoIWVoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJPYmplY3QiLCJhbnkiXSxhcmd1bWVudHMpO1RGKFtmdW5jdGlvbigpe0woYywiZGV0ZWN0X3Njcm9sbF9ldmVudHMiKX1dKTt2YXIgZD1mSygpLGU9ZC5zY3JvbGxpbmdFbGVtZW50LGY9ZC52cjtpZighZSlyZXR1cm47dmFyIGc9WkYoYiksaD1UZChhKTtzd2l0Y2goaC5ob3Jpem9udGFsVGhyZXNob2xkVW5pdHMpe2Nhc2UgIlBJWEVMUyI6WUooaC5ob3Jpem9udGFsVGhyZXNob2xkcyxnLCJob3Jpei5waXgiKTticmVhaztjYXNlICJQRVJDRU5UIjpZSihoLmhvcml6b250YWxUaHJlc2hvbGRzLGcsImhvcml6LnBjdCIpfXN3aXRjaChoLnZlcnRpY2FsVGhyZXNob2xkVW5pdHMpe2Nhc2UgIlBJWEVMUyI6WUooaC52ZXJ0aWNhbFRocmVzaG9sZHMsCmcsInZlcnQucGl4Iik7YnJlYWs7Y2FzZSAiUEVSQ0VOVCI6WUooaC52ZXJ0aWNhbFRocmVzaG9sZHMsZywidmVydC5wY3QiKX0kRigic2RsIiwiaW5pdCIsITEpPyRGKCJzZGwiLCJwZW5kaW5nIiwhMSl8fGJkKGZ1bmN0aW9uKCl7WkooZSxmKX0pOihhRygic2RsIiwiaW5pdCIsITApLGFHKCJzZGwiLCJwZW5kaW5nIiwhMCksYmQoZnVuY3Rpb24oKXtaSihlLGYpO2lmKGNLKCkpe3ZhciBsPWJLKGUsZik7Im9uc2Nyb2xsZW5kImluIEE/KGw9YUsoZSxmKSwkYyhBLCJzY3JvbGxlbmQiLGwpKTokYyhBLCJzY3JvbGwiLGwpOyRjKEEsInJlc2l6ZSIsbCl9ZWxzZSBhRygic2RsIiwiaW5pdCIsITEpfSkpO3JldHVybiBnfWdLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uU2Nyb2xsIjtmdW5jdGlvbiBoSyhhKXtyZXR1cm4gZnVuY3Rpb24oKXtpZihhLmxpbWl0JiZhLmdrPj1hLmxpbWl0KWEuYWkmJkEuY2xlYXJJbnRlcnZhbChhLmFpKTtlbHNle2EuZ2srKzt2YXIgYj1OYigpO3VFKHtldmVudDphLmV2ZW50TmFtZSwiZ3RtLnRpbWVySWQiOmEuYWksImd0bS50aW1lckV2ZW50TnVtYmVyIjphLmdrLCJndG0udGltZXJJbnRlcnZhbCI6YS5pbnRlcnZhbCwiZ3RtLnRpbWVyTGltaXQiOmEubGltaXQsImd0bS50aW1lclN0YXJ0VGltZSI6YS5NbywiZ3RtLnRpbWVyQ3VycmVudFRpbWUiOmIsImd0bS50aW1lckVsYXBzZWRUaW1lIjpiLWEuTW8sImd0bS50cmlnZ2VycyI6YS5MdH0pfX19CmZ1bmN0aW9uIGlLKGEsYil7CnJldHVybiBmfWlLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uVGltZXIiOwp2YXIgaks9ZnVuY3Rpb24oYSxiLGMpe2Z1bmN0aW9uIGQoKXt2YXIgZz1hKCk7Zis9ZT8oTmIoKS1lKSpnLnBsYXliYWNrUmF0ZS8xRTM6MDtlPU5iKCl9dmFyIGU9MCxmPTA7cmV0dXJue2NyZWF0ZUV2ZW50OmZ1bmN0aW9uKGcsaCxsKXt2YXIgbj1hKCkscD1uLlduLHE9bD9NYXRoLnJvdW5kKGwpOmg/TWF0aC5yb3VuZChuLlduKmgpOk1hdGgucm91bmQobi5Hcikscj1oIT09dm9pZCAwP01hdGgucm91bmQoaCoxMDApOnA8PTA/MDpNYXRoLnJvdW5kKHEvcCoxMDApLHQ9Qi5oaWRkZW4/ITE6dEkoYyk+PS41O2QoKTt2YXIgdT12b2lkIDA7YiE9PXZvaWQgMCYmKHU9W2JdKTt2YXIgdj1lRyhjLCJndG0udmlkZW8iLHUpO3ZbImd0bS52aWRlb1Byb3ZpZGVyIl09InlvdXR1YmUiO3ZbImd0bS52aWRlb1N0YXR1cyJdPWc7dlsiZ3RtLnZpZGVvVXJsIl09bi51cmw7dlsiZ3RtLnZpZGVvVGl0bGUiXT1uLnRpdGxlO3ZbImd0bS52aWRlb0R1cmF0aW9uIl09TWF0aC5yb3VuZChwKTt2WyJndG0udmlkZW9DdXJyZW50VGltZSJdPQpNYXRoLnJvdW5kKHEpO3ZbImd0bS52aWRlb0VsYXBzZWRUaW1lIl09TWF0aC5yb3VuZChmKTt2WyJndG0udmlkZW9QZXJjZW50Il09cjt2WyJndG0udmlkZW9WaXNpYmxlIl09dDtyZXR1cm4gdn0sbXQ6ZnVuY3Rpb24oKXtlPU5iKCl9LEJqOmZ1bmN0aW9uKCl7ZCgpfX19O3ZhciBBYz1BYShbImRhdGEtZ3RtLXl0LWluc3BlY3RlZC0iXSksa0s9WyJ3d3cueW91dHViZS5jb20iLCJ3d3cueW91dHViZS1ub2Nvb2tpZS5jb20iXSxsSzsKdmFyIG1LPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hLm1hcChmdW5jdGlvbihnKXtyZXR1cm57dGU6ZyxKbzpnLHdvOnZvaWQgMH19KTtpZighYi5sZW5ndGgpcmV0dXJuIGQ7dmFyIGU9Yi5tYXAoZnVuY3Rpb24oZyl7cmV0dXJue3RlOmcqYyxKbzp2b2lkIDAsd286Z319KTtpZighZC5sZW5ndGgpcmV0dXJuIGU7dmFyIGY9ZC5jb25jYXQoZSk7Zi5zb3J0KGZ1bmN0aW9uKGcsaCl7cmV0dXJuIGcudGUtaC50ZX0pO3JldHVybiBmfSxuSz1mdW5jdGlvbihhKXthPWE9PT12b2lkIDA/W106YTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWFbY108MHx8Yi5wdXNoKGFbY10pO2Iuc29ydChmdW5jdGlvbihkLGUpe3JldHVybiBkLWV9KTtyZXR1cm4gYn0sb0s9ZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwP1tdOmE7Zm9yKHZhciBiPVtdLGM9MDtjPGEubGVuZ3RoO2MrKylhW2NdPjEwMHx8YVtjXTwwfHwoYltjXT1hW2NdLzEwMCk7Yi5zb3J0KGZ1bmN0aW9uKGQsZSl7cmV0dXJuIGQtCmV9KTtyZXR1cm4gYn0scEs9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkO2Z1bmN0aW9uIGUoKXt0PWpLKGZ1bmN0aW9uKCl7cmV0dXJue3VybDp4LHRpdGxlOnksV246dixHcjphLmdldEN1cnJlbnRUaW1lKCkscGxheWJhY2tSYXRlOnp9fSxiLnJmLGEuZ2V0SWZyYW1lKCkpO3Y9MDt5PXg9IiI7ej0xO3JldHVybiBmfWZ1bmN0aW9uIGYoRyl7c3dpdGNoKEcpe2Nhc2UgMTp2PU1hdGgucm91bmQoYS5nZXREdXJhdGlvbigpKTt4PWEuZ2V0VmlkZW9VcmwoKTtpZihhLmdldFZpZGVvRGF0YSl7dmFyIE49YS5nZXRWaWRlb0RhdGEoKTt5PU4/Ti50aXRsZToiIn16PWEuZ2V0UGxheWJhY2tSYXRlKCk7Yi55cj91RSh0LmNyZWF0ZUV2ZW50KCJzdGFydCIpKTp0LkJqKCk7dT1tSyhiLmV0LGIuY3QsYS5nZXREdXJhdGlvbigpKTtyZXR1cm4gZyhHKTtkZWZhdWx0OnJldHVybiBmfX1mdW5jdGlvbiBnKCl7Qz1hLmdldEN1cnJlbnRUaW1lKCk7RD1NYigpLmdldFRpbWUoKTt0Lm10KCk7cigpO3JldHVybiBofQpmdW5jdGlvbiBoKEcpe3ZhciBOO3N3aXRjaChHKXtjYXNlIDA6cmV0dXJuIG4oRyk7Y2FzZSAyOk49InBhdXNlIjtjYXNlIDM6dmFyIFM9YS5nZXRDdXJyZW50VGltZSgpLUM7Tj1NYXRoLmFicygoTWIoKS5nZXRUaW1lKCktRCkvMUUzKnotUyk+MT8ic2VlayI6Tnx8ImJ1ZmZlcmluZyI7YS5nZXRDdXJyZW50VGltZSgpJiYoYi54cj91RSh0LmNyZWF0ZUV2ZW50KE4pKTp0LkJqKCkpO3EoKTtyZXR1cm4gbDtjYXNlIC0xOnJldHVybiBlKEcpO2RlZmF1bHQ6cmV0dXJuIGh9fWZ1bmN0aW9uIGwoRyl7c3dpdGNoKEcpe2Nhc2UgMDpyZXR1cm4gbihHKTtjYXNlIDE6cmV0dXJuIGcoRyk7Y2FzZSAtMTpyZXR1cm4gZShHKTtkZWZhdWx0OnJldHVybiBsfX1mdW5jdGlvbiBuKCl7Zm9yKDtkOyl7dmFyIEc9YztBLmNsZWFyVGltZW91dChkKTtHKCl9Yi53ciYmdUUodC5jcmVhdGVFdmVudCgiY29tcGxldGUiLDEpKTtyZXR1cm4gZSgtMSl9ZnVuY3Rpb24gcCgpe31mdW5jdGlvbiBxKCl7ZCYmCihBLmNsZWFyVGltZW91dChkKSxkPTAsYz1wKX1mdW5jdGlvbiByKCl7aWYodS5sZW5ndGgmJnohPT0wKXt2YXIgRz0tMSxOO2Rve049dVswXTtpZihOLnRlPmEuZ2V0RHVyYXRpb24oKSlyZXR1cm47Rz0oTi50ZS1hLmdldEN1cnJlbnRUaW1lKCkpL3o7aWYoRzwwJiYodS5zaGlmdCgpLHUubGVuZ3RoPT09MCkpcmV0dXJufXdoaWxlKEc8MCk7Yz1mdW5jdGlvbigpe2Q9MDtjPXA7dS5sZW5ndGg+MCYmdVswXS50ZT09PU4udGUmJih1LnNoaWZ0KCksdUUodC5jcmVhdGVFdmVudCgicHJvZ3Jlc3MiLE4ud28sTi5KbykpKTtyKCl9O2Q9QS5zZXRUaW1lb3V0KGMsRyoxRTMpfX12YXIgdCx1PVtdLHYseCx5LHosQyxELEk9ZSgtMSk7ZD0wO2M9cDtyZXR1cm57b25TdGF0ZUNoYW5nZTpmdW5jdGlvbihHKXtJPUkoRyl9LG9uUGxheWJhY2tSYXRlQ2hhbmdlOmZ1bmN0aW9uKEcpe0M9YS5nZXRDdXJyZW50VGltZSgpO0Q9TWIoKS5nZXRUaW1lKCk7dC5CaigpO3o9RztxKCk7cigpfX19LHJLPQpmdW5jdGlvbihhKXtiZChmdW5jdGlvbigpe2Z1bmN0aW9uIGIoKXtmb3IodmFyIGQ9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaWZyYW1lIiksZT1kLmxlbmd0aCxmPTA7ZjxlO2YrKylxSyhkW2ZdLGEpfXZhciBjPUI7YigpO29KLksoYil9KX0scUs9ZnVuY3Rpb24oYSxiKXtpZighYS5nZXRBdHRyaWJ1dGUoImRhdGEtZ3RtLXl0LWluc3BlY3RlZC0iK2IucmYpJiYoQ2MoYSwiZGF0YS1ndG0teXQtaW5zcGVjdGVkLSIrYi5yZiksc0soYSxiLmNvKSkpe2EuaWR8fChhLmlkPXRLKCkpO3ZhciBjPUEuWVQsZD1jLmdldChhLmlkKTtkfHwoZD1uZXcgYy5QbGF5ZXIoYS5pZCkpO3ZhciBlPXBLKGQsYiksZj17fSxnO2ZvcihnIGluIGUpZj17TWc6Zi5NZ30sZi5NZz1nLGUuaGFzT3duUHJvcGVydHkoZi5NZykmJmQuYWRkRXZlbnRMaXN0ZW5lcihmLk1nLGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbihsKXtyZXR1cm4gZVtoLk1nXShsLmRhdGEpfX0oZikpfX0sc0s9ZnVuY3Rpb24oYSwKYil7dmFyIGM9YS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKHVLKGMsImVtYmVkLyIpKXtpZihjLmluZGV4T2YoImVuYWJsZWpzYXBpPTEiKT4wKXJldHVybiEwO2lmKGIpe3ZhciBkO3ZhciBlPWMuaW5kZXhPZigiPyIpIT09LTE/IiYiOiI/IjtjLmluZGV4T2YoIm9yaWdpbj0iKT4tMT9kPWMrZSsiZW5hYmxlanNhcGk9MSI6KGxLfHwobEs9Qi5sb2NhdGlvbi5wcm90b2NvbCsiLy8iK0IubG9jYXRpb24uaG9zdG5hbWUsQi5sb2NhdGlvbi5wb3J0JiYobEsrPSI6IitCLmxvY2F0aW9uLnBvcnQpKSxkPWMrZSsiZW5hYmxlanNhcGk9MSZvcmlnaW49IitlbmNvZGVVUklDb21wb25lbnQobEspKTt2YXIgZjtmPWpjKGQpO2Euc3JjPWtjKGYpLnRvU3RyaW5nKCk7cmV0dXJuITB9fXJldHVybiExfSx1Sz1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybiExO2Zvcih2YXIgYz0wO2M8a0subGVuZ3RoO2MrKylpZihhLmluZGV4T2YoIi8vIitrS1tjXSsiLyIrYik+PTApcmV0dXJuITA7cmV0dXJuITF9LAp0Sz1mdW5jdGlvbigpe3ZhciBhPSIiK01hdGgucm91bmQoTWF0aC5yYW5kb20oKSoxRTkpO3JldHVybiBCLmdldEVsZW1lbnRCeUlkKGEpP3RLKCk6YX07CmZ1bmN0aW9uIHZLKGEsYil7dmFyIGM9dGhpczt2YXIgZD1mdW5jdGlvbigpe3JLKHEpfTtpZighZWgoYSkpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbIk9iamVjdCIsImFueSJdLGFyZ3VtZW50cyk7VEYoW2Z1bmN0aW9uKCl7TChjLCJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiLHtmaXhNaXNzaW5nQXBpOiEhYS5nZXQoImZpeE1pc3NpbmdBcGkiKX0pfV0pO3ZhciBlPVpGKGIpLGY9ISFhLmdldCgiY2FwdHVyZVN0YXJ0IiksZz0hIWEuZ2V0KCJjYXB0dXJlQ29tcGxldGUiKSxoPSEhYS5nZXQoImNhcHR1cmVQYXVzZSIpLGw9b0soVGQoYS5nZXQoInByb2dyZXNzVGhyZXNob2xkc1BlcmNlbnQiKSkpLG49bksoVGQoYS5nZXQoInByb2dyZXNzVGhyZXNob2xkc1RpbWVJblNlY29uZHMiKSkpLHA9ISFhLmdldCgiZml4TWlzc2luZ0FwaSIpOwppZighKGZ8fGd8fGh8fGwubGVuZ3RofHxuLmxlbmd0aCkpcmV0dXJuO3ZhciBxPXt5cjpmLHdyOmcseHI6aCxjdDpsLGV0Om4sY286cCxyZjplfSxyPUEuWVQ7aWYocilyZXR1cm4gci5yZWFkeSYmci5yZWFkeShkKSxlO3ZhciB0PUEsdT10Lm9uWW91VHViZUlmcmFtZUFQSVJlYWR5O3Qub25Zb3VUdWJlSWZyYW1lQVBJUmVhZHk9ZnVuY3Rpb24oKXt1JiZ1KCk7ZCgpfTtiZChmdW5jdGlvbigpe2Zvcih2YXIgdj1CLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSx4PXYubGVuZ3RoLHk9MDt5PHg7eSsrKXt2YXIgej12W3ldLmdldEF0dHJpYnV0ZSgic3JjIik7aWYodUsoeiwiaWZyYW1lX2FwaSIpfHx1Syh6LCJwbGF5ZXJfYXBpIikpcmV0dXJuIGV9Zm9yKHZhciBDPUIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImlmcmFtZSIpLEQ9Qy5sZW5ndGgsST1hbCg1LGZ1bmN0aW9uKCl7cmV0dXJuITF9KSxHPTA7RzxEO0crKylpZighSSYmc0soQ1tHXSxxLmNvKSlyZXR1cm4gVWMoImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2lmcmFtZV9hcGkiKSwKWmsoNSwhMCksZX0pO3JldHVybiBlfXZLLlA9ImludGVybmFsLmVuYWJsZUF1dG9FdmVudE9uWW91VHViZUFjdGl2aXR5IjtmdW5jdGlvbiB3SyhhLGIpe2lmKCFsaChhKXx8IWZoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3R8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTt2YXIgYz1iP1RkKGIpOnt9O2MucmVnZXhDYWNoZT1hbCgzLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBNYXB9KTtyZXR1cm4gR2goYSxjKX13Sy5QPSJpbnRlcm5hbC5ldmFsdWF0ZUJvb2xlYW5FeHByZXNzaW9uIjtmdW5jdGlvbiB4SyhhKXt2YXIgYj0hMTtyZXR1cm4gYn14Sy5QPSJpbnRlcm5hbC5ldmFsdWF0ZU1hdGNoaW5nUnVsZXMiO3ZhciB5Sz1uZXcgTWFwKFtbImF3Iiw0XV0pO2Z1bmN0aW9uIHpLKGEpe3ZhciBiPXZyW2FdLGM9eUsuZ2V0KGEpO3JldHVybiBjPyh3cShiLGMpfHxbXSkuc29tZShmdW5jdGlvbihkKXtyZXR1cm4gZC5tPT09IjAifHxkLm09PT12b2lkIDB9KTohMX0KZnVuY3Rpb24gQUsoYSxiKXtpZihNKDQ5NSkpe2Zvcih2YXIgYz1uZXcgTWFwLGQ9bSh5SyksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpe3ZhciBmPW0oZS52YWx1ZSksZz1mLm5leHQoKS52YWx1ZSxoPWYubmV4dCgpLnZhbHVlLGw9ZyxuPWFbbF0scD1BcnJheS5pc0FycmF5KG4pP25bMF06bjtpZihwIT09dm9pZCAwKXt2YXIgcT17fSxyPShxLms9cCxxLmk9U3RyaW5nKE1hdGguZmxvb3IoRGF0ZS5ub3coKS8xRTMpKSxxLmI9W10scS5tPSIxIixxKSx0PWFxKHIsaCk7dCYmKHpLKGwpfHxjLnNldChsLHQpKX19aWYoYy5zaXplKXt2YXIgdSx2PVtdLHg9Yi5wYXRofHwiLyI7di5wdXNoKGVuY29kZVVSSUNvbXBvbmVudCgicCIpKyI9IitlbmNvZGVVUklDb21wb25lbnQoeCkpO2IuQXImJnYucHVzaChlbmNvZGVVUklDb21wb25lbnQoImNlIikrIj0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYi5BcikpKTt2YXIgeT1iLmRvbWFpbiYmYi5kb21haW4hPT0iYXV0byI/CmIuZG9tYWluOiJhdXRvOiIrQS5sb2NhdGlvbi5ob3N0bmFtZTt2LnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KCJkIikrIj0iK2VuY29kZVVSSUNvbXBvbmVudCh5KSk7Zm9yKHZhciB6PW0oYyksQz16Lm5leHQoKTshQy5kb25lO0M9ei5uZXh0KCkpe3ZhciBEPW0oQy52YWx1ZSksST1ELm5leHQoKS52YWx1ZSxHPUQubmV4dCgpLnZhbHVlO3YucHVzaChlbmNvZGVVUklDb21wb25lbnQoSSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChHKSl9dT0iXy9zZXRfY29va2llPyIrdi5qb2luKCImIik7dmFyIE4sUz1FKDU4KTtOPUVmKHUsUyk7dmFyIFc9WGooKSsiLyIrTjttZChXKX19fTtmdW5jdGlvbiBCSyhhKXtyZXR1cm4iQ1dWV2ViVmlld01lc3NhZ2UiaW4gYX1mdW5jdGlvbiBDSyhhKXt2YXIgYj1BLGM9Yi53ZWJraXQ7ZGVsZXRlIGIud2Via2l0O2EoYi53ZWJraXQpO2Iud2Via2l0PWN9ZnVuY3Rpb24gREsoYSxiKXt2YXIgYz17YWN0aW9uOiJnY2xfc2V0dXAifTtpZihCSyhhLm1lc3NhZ2VIYW5kbGVycykpcmV0dXJuIGEubWVzc2FnZUhhbmRsZXJzLkNXVldlYlZpZXdNZXNzYWdlLnBvc3RNZXNzYWdlKHtjb21tYW5kOmIscGF5bG9hZDpjfSksITA7dmFyIGQ9YS5tZXNzYWdlSGFuZGxlcnNbYl07cmV0dXJuIGQ/KGQucG9zdE1lc3NhZ2UoYyksITApOiExfTt2YXIgRUs9e30sRks9KEVLLmF3Yj17bm90Rm91bmQ6MTc4fSxFSy55dGI9e25vdEZvdW5kOjE5NH0sRUspO2Z1bmN0aW9uIEdLKGEpe3ZhciBiLGM9KGI9RktbYV0pPT1udWxsP3ZvaWQgMDpiLm5vdEZvdW5kO2MmJlAoYyl9CmZ1bmN0aW9uIEhLKGEpe2lmKCFubShqbS5iYS5qbikmJiJ3ZWJraXQiaW4gQSYmQS53ZWJraXQubWVzc2FnZUhhbmRsZXJzKXt2YXIgYj1mdW5jdGlvbigpe3RyeXtDSyhmdW5jdGlvbihjKXtpZihjKXt2YXIgZDtkPUJLKGMubWVzc2FnZUhhbmRsZXJzKXx8ImF3YiJpbiBjLm1lc3NhZ2VIYW5kbGVycz97Y29tbWFuZDoiYXdiIixzb3VyY2U6NX06KEJLKGMubWVzc2FnZUhhbmRsZXJzKXx8Inl0YiJpbiBjLm1lc3NhZ2VIYW5kbGVycykmJk0oNDk5KT97Y29tbWFuZDoieXRiIixzb3VyY2U6OH06dm9pZCAwO2QmJihtbShqbS5iYS5qbixmdW5jdGlvbihlKXt2YXIgZj1kLnNvdXJjZTtlLmdjbGlkJiZscygiZ2NsX2F3IixlLmdjbGlkLGYsYSk7ZS53YnJhaWQmJmxzKCJnY2xfZ2IiLGUud2JyYWlkLGYsYSl9KSxESyhjLGQuY29tbWFuZCl8fEdLKGQuY29tbWFuZCkpfX0pfWNhdGNoKGMpe1AoMTkzKX19O0hsKGZ1bmN0aW9uKCl7QnIoZnApP2IoKTpJbChiLGZwKX0sZnApfX07dmFyIElLPVsiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbSIsImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tIiwiaHR0cHM6Ly9tLnlvdXR1YmUuY29tIl07ZnVuY3Rpb24gSksoYSl7cmV0dXJuIGEuZGF0YS5hY3Rpb24hPT0iZ2NsX3RyYW5zZmVyIj8oUCgxNzMpLCEwKTphLmRhdGEuZ2FkU291cmNlP2EuZGF0YS5nY2xpZD8hMTooUCgxODEpLCEwKTooUCgxODApLCEwKX0KZnVuY3Rpb24gS0soYSxiKXtpZighYXx8TShhKSl7aWYobm0oam0uYmEuVmUpKXJldHVybiBQKDE3Niksam0uYmEuVmU7aWYobm0oam0uYmEubW4pKXJldHVybiBQKDE3MCksam0uYmEuVmU7dmFyIGM9RnAoKTtpZighYylQKDE3MSk7ZWxzZSBpZihjLm9wZW5lcil7dmFyIGQ9ZnVuY3Rpb24oZyl7aWYoIUlLLmluY2x1ZGVzKGcub3JpZ2luKSlQKDE3Mik7ZWxzZSBpZighSksoZykpe3ZhciBoPXtnYWRTb3VyY2U6Zy5kYXRhLmdhZFNvdXJjZX07aC5nY2xpZD1nLmRhdGEuZ2NsaWQ7bW0oam0uYmEuVmUsaCk7YiYmZy5kYXRhLmdjbGlkJiZscygiZ2NsX2F3IixTdHJpbmcoZy5kYXRhLmdjbGlkKSw2LGIpO3ZhciBsOyhsPWcuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKT09bnVsbHx8bC5jYWxsKGcpO250KGMsIm1lc3NhZ2UiLGQpfX07aWYobXQoYywibWVzc2FnZSIsZCkpe21tKGptLmJhLm1uLCEwKTtmb3IodmFyIGU9bShJSyksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpYy5vcGVuZXIucG9zdE1lc3NhZ2Uoe2FjdGlvbjoiZ2NsX3NldHVwIn0sCmYudmFsdWUpO1AoMTc0KTtyZXR1cm4gam0uYmEuVmV9UCgxNzUpfX19Owp2YXIgTEs9ZnVuY3Rpb24oYSl7dmFyIGI9e3ByZWZpeDpPKGEuTSxGLkQuRmQpfHxPKGEuTSxGLkQubmIpLGRvbWFpbjpPKGEuTSxGLkQuTGIpLHBkOk8oYS5NLEYuRC5DYiksZmxhZ3M6TyhhLk0sRi5ELlRiKX07YS5NLmlzR3RtRXZlbnQmJihiLnBhdGg9TyhhLk0sRi5ELnZjKSk7cmV0dXJuIGJ9LE1LPWZ1bmN0aW9uKGEsYil7aWYoIVEoYSxILkouV2UpKXt2YXIgYz1LSygxMTkpO2lmKGMpe3ZhciBkPW5tKGMpLGU9ZnVuY3Rpb24oZyl7VihhLEguSi5XZSwhMCk7dmFyIGg9UihhLEYuRC56ZiksbD1SKGEsRi5ELkFmKTtVKGEsRi5ELnpmLFN0cmluZyhnLmdhZFNvdXJjZSkpO1UoYSxGLkQuQWYsNik7VihhLEguSi5zYSk7VihhLEguSi51Zyk7VShhLEYuRC5zYSk7YigpO1UoYSxGLkQuemYsaCk7VShhLEYuRC5BZixsKTtWKGEsSC5KLldlLCExKX07aWYoZCllKGQpO2Vsc2V7dmFyIGY9dm9pZCAwO2Y9cG0oYyxmdW5jdGlvbihnLGgpe2UoaCk7cW0oYyxmKX0pfX19fSxQSz1mdW5jdGlvbihhKXt2YXIgYiwKYyxkLGU7Yj1hLlRuO2M9YS5tbztkPWEuUW87ZT1hLlVuO2lmKGIpe2lmKGRyKGNbRi5ELlhmXSwhIWNbRi5ELkFhXSkpe2lmKFdqKCkmJkJyKEFyKCkpKXtmb3IodmFyIGY9VXEoITApLGc9e30saD1tKE9iamVjdC5rZXlzKHZyKSksbD1oLm5leHQoKTshbC5kb25lO2w9aC5uZXh0KCkpe3ZhciBuPWwudmFsdWUscD12cltuXSxxPWZbcF07aWYocSl7dmFyIHI9JHAocSw0KTtyJiYob3MoTWF0aC5taW4oTnIociksTmIoKSl8fE5iKCkscCw0KXx8KGdbbl09cSkpfX1mb3IodmFyIHQ9e30sdT1tKE9iamVjdC5rZXlzKGcpKSx2PXUubmV4dCgpOyF2LmRvbmU7dj11Lm5leHQoKSl7dmFyIHg9di52YWx1ZSx5PWdbeF07aWYoeSE9PXZvaWQgMCl7dmFyIHo9JHAoeSw0KTt6JiZ6Lm09PT0iMSImJih0W3hdPXouayl9fUFLKHQsZSl9cHMoZSk7dHMoZSk7UXYoZSl9aWYoT3AoKSE9PTIpe2dzKGUpO2lzKGUpO2lmKFlmKDE1KSl7dmFyIEM9ZSxEPWRzKEEubG9jYXRpb24uaHJlZiwhMCwhMSk7CkQubGVuZ3RofHwoRD1kcyhBLmRvY3VtZW50LnJlZmVycmVyLCExLCEwKSk7aWYoRC5sZW5ndGgpe0M9Q3x8e307dmFyIEk9RFswXTtJLnZhbHVlJiZtcygiZ2NsX2RjIixbe3ZlcnNpb246IiIsZ2NsaWQ6SS52YWx1ZSx0aW1lc3RhbXA6TmIoKSxxYTpJLnFhfV0sQyl9fUhLKGUpO0tLKHZvaWQgMCxlKX1lbHNlIGdzKGUpO2lmKFdqKCkmJkJyKEFyKCkpKXt2YXIgRz1mcygpO0FLKEcsZSl9eHMocXMsZSk7eXMoZSl9Y1tGLkQuQWFdJiYodnMoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSksdXMoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlLnByZWZpeCksd3MoY1tGLkQuQWFdLGNbRi5ELmFkXSwhIWNbRi5ELndjXSxlLnByZWZpeCksUnYoR3YoZS5wcmVmaXgpLGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZSksUnYoIkZQQVUiLGNbRi5ELkFhXSxjW0YuRC5hZF0sISFjW0YuRC53Y10sZSkpO2QmJkFzKE5LKTtDcyhPSyl9LHFzPVsiYXciLCJkYyIsCiJnYiJdLE9LPVsiYXciLCJkYyIsImdiIiwiYWciXSxOSz1bImF3IiwiZGMiLCJnYiIsImFnIiwiZ2FkX3NvdXJjZSJdO2Z1bmN0aW9uIFZLKCl7cmV0dXJuIE10KDcpJiZNdCg5KSYmTXQoMTApfTt2YXIgV0s9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXt9O2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5vaiwoZFtiXT1jLGQpKX0sWEs9ZnVuY3Rpb24oYSxiKXt2YXIgYz1kSShhLEYuRC5GaSxhLk0uaWJbRi5ELkZpXSk7aWYoYyYmY1tifHxhLmV2ZW50TmFtZV0hPT12b2lkIDApcmV0dXJuIGNbYnx8YS5ldmVudE5hbWVdfSxZSz1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLllhKTtpZihDZChiKSlyZXR1cm4gYn0sWks9ZnVuY3Rpb24oYSl7aWYoUShhLEguSi5iZSl8fCFlayhhLk0pKXJldHVybiAxO2lmKCFPKGEuTSxGLkQuZGQpKXt2YXIgYj1PKGEuTSxGLkQuUWYpO2lmKGIhPT0hMCYmYiE9PSJ0cnVlIilyZXR1cm4gMX12YXIgYz1PKGEuTSxGLkQuT2kpO3JldHVybiBjPT09ITF8fGM9PT0iZmFsc2UiPzM6Mn07CnZhciBhTD1mdW5jdGlvbihhLGIpe2EmJigkSygic2lkIixhLnRhcmdldElkLGIpLCRLKCJjYyIsYS5jbGllbnRDb3VudCxiKSwkSygidGwiLGEudG90YWxMaWZlTXMsYiksJEsoImhjIixhLmhlYXJ0YmVhdENvdW50LGIpLCRLKCJjbCIsYS5jbGllbnRMaWZlTXMsYikpfSwkSz1mdW5jdGlvbihhLGIsYyl7YiE9bnVsbCYmYy5wdXNoKGErIj0iK2IpfSxiTD1mdW5jdGlvbigpe3ZhciBhPUIucmVmZXJyZXI7aWYoYSl7dmFyIGI7cmV0dXJuIExqKFJqKGEpLCJob3N0Iik9PT0oKGI9QS5sb2NhdGlvbik9PW51bGw/dm9pZCAwOmIuaG9zdCk/MToyfXJldHVybiAwfSxkTD1mdW5jdGlvbigpe3RoaXMuamE9Y0w7dGhpcy5OPTA7dGhpcy55YT1OZig1Nyw1KTt0aGlzLlI9TmYoNTgsNTApO3RoaXMuZmE9RGIoKTt0aGlzLkxhPSJodHRwczovLyIrRSgyMSkrIi9hPyJ9O2RMLnByb3RvdHlwZS5LPWZ1bmN0aW9uKGEsYixjLGQpewp2YXIgZT1iTCgpLGYsZz1bXTtmPUE9PT1BLnRvcCYmZSE9PTAmJmI/KGI9PW51bGw/dm9pZCAwOmIuY2xpZW50Q291bnQpPjE/ZT09PTI/MToyOmU9PT0yPzA6Mzo0O2EmJiRLKCJzaSIsYS5KZyxnKTskSygibSIsMCxnKTskSygiaXNzIixmLGcpOyRLKCJpZiIsYyxnKTthTChiLGcpO2QmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGQuc3Vic3RyaW5nKDAsdGhpcy5SKSksZyk7dGhpcy5aKGcpO307ZEwucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1bXTskSygibSIsMSxmKTskSygicyIsYSxmKTskSygicG8iLGJMKCksZik7YiYmKCRLKCJzdCIsYi5zdGF0ZSxmKSwkSygic2kiLGIuSmcsZiksJEsoInNtIixiLlVnLGYpKTthTChjLGYpOyRLKCJjIixkLGYpO2UmJiRLKCJmbSIsZW5jb2RlVVJJQ29tcG9uZW50KGUuc3Vic3RyaW5nKDAsCnRoaXMuUikpLGYpO3RoaXMuWihmKTt9O2RMLnByb3RvdHlwZS5aPWZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD9bXTphOyFmbi5OfHx0aGlzLk4+PXRoaXMueWF8fCgkSygicGlkIix0aGlzLmZhLGEpLCRLKCJiYyIsKyt0aGlzLk4sYSksYS51bnNoaWZ0KCJjdGlkPSIrRSg1KSsiJnQ9cyIpLHRoaXMuamEoIiIrdGhpcy5MYSthLmpvaW4oIiYiKSkpfTtmdW5jdGlvbiBlTChhKXtyZXR1cm4gYS5wZXJmb3JtYW5jZSYmYS5wZXJmb3JtYW5jZS5ub3coKXx8RGF0ZS5ub3coKX0KdmFyIGZMPWZ1bmN0aW9uKGEsYil7dmFyIGM9QSxkPU5mKDUzLDUwMCksZT1OZig1NCw1RTMpLGY9TmYoOCwyMCksZz1OZig1NSw1RTMpLGg7dmFyIGw9ZnVuY3Rpb24obixwLHEpe3E9cT09PXZvaWQgMD97cW86ZnVuY3Rpb24oKXt9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbigpe30sb25GYWlsdXJlOmZ1bmN0aW9uKCl7fX06cTt0aGlzLklqPW47dGhpcy5IPXA7dGhpcy5OPXE7dGhpcy5mYT10aGlzLmphPXRoaXMuaGVhcnRiZWF0Q291bnQ9dGhpcy5Eaj0wO3RoaXMuZmU9ITE7dGhpcy5LPXt9O3RoaXMuaWQ9U3RyaW5nKE1hdGguZmxvb3IoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIqTWF0aC5yYW5kb20oKSkpO3RoaXMuc3RhdGU9MDt0aGlzLkpnPWVMKHRoaXMuSCk7dGhpcy5VZz1lTCh0aGlzLkgpO3RoaXMuWj0xMH07bC5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbigpe3RoaXMuUigxKTsKdGhpcy5MYSgpfTtsLnByb3RvdHlwZS5nZXRTdGF0ZT1mdW5jdGlvbigpe3JldHVybntzdGF0ZTp0aGlzLnN0YXRlLEpnOk1hdGgucm91bmQoZUwodGhpcy5IKS10aGlzLkpnKSxVZzpNYXRoLnJvdW5kKGVMKHRoaXMuSCktdGhpcy5VZyl9fTtsLnByb3RvdHlwZS5SPWZ1bmN0aW9uKG4pe3RoaXMuc3RhdGUhPT1uJiYodGhpcy5zdGF0ZT1uLHRoaXMuVWc9ZUwodGhpcy5IKSl9O2wucHJvdG90eXBlLnZnPWZ1bmN0aW9uKCl7cmV0dXJuIFN0cmluZyh0aGlzLkRqKyspfTtsLnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3ZhciBuPXRoaXM7dGhpcy5oZWFydGJlYXRDb3VudCsrO3RoaXMueWEoe3R5cGU6MCxjbGllbnRJZDp0aGlzLmlkLHJlcXVlc3RJZDp0aGlzLnZnKCksbWF4RGVsYXk6dGhpcy5oZSgpfSxmdW5jdGlvbihwKXtpZihwLnR5cGU9PT0wKXt2YXIgcTtpZigoKHE9cC5mYWlsdXJlKT09bnVsbD92b2lkIDA6cS5mYWlsdXJlVHlwZSkhPW51bGwpaWYocC5zdGF0cyYmKG4uc3RhdHM9CnAuc3RhdHMpLG4uZmErKyxwLmlzRGVhZHx8bi5mYT5mKXt2YXIgcj1wLmlzRGVhZCYmcC5mYWlsdXJlLmZhaWx1cmVUeXBlO24uWj1yfHwxMDtuLlIoNCk7bi5BaigpO3ZhciB0LHU7KHU9KHQ9bi5OKS5wbyk9PW51bGx8fHUuY2FsbCh0LHtmYWlsdXJlVHlwZTpyfHwxMCxkYXRhOnAuZmFpbHVyZS5kYXRhfSl9ZWxzZSBuLlIoMyksbi5QaCgpO2Vsc2V7aWYobi5oZWFydGJlYXRDb3VudD5wLnN0YXRzLmhlYXJ0YmVhdENvdW50K2Ype24uaGVhcnRiZWF0Q291bnQ9cC5zdGF0cy5oZWFydGJlYXRDb3VudDt2YXIgdix4Oyh4PSh2PW4uTikub25GYWlsdXJlKT09bnVsbHx8eC5jYWxsKHYse2ZhaWx1cmVUeXBlOjEzfSl9bi5zdGF0cz1wLnN0YXRzO3ZhciB5PW4uc3RhdGU7bi5SKDIpO2lmKHkhPT0yKWlmKG4uZmUpe3ZhciB6LEM7KEM9KHo9bi5OKS5zbyk9PW51bGx8fEMuY2FsbCh6KX1lbHNle24uZmU9ITA7dmFyIEQsSTsoST0oRD1uLk4pLnFvKT09bnVsbHx8SS5jYWxsKEQpfW4uZmE9CjA7bi5OaigpO24uUGgoKX19fSl9O2wucHJvdG90eXBlLmhlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuc3RhdGU9PT0yP2U6ZH07bC5wcm90b3R5cGUuUGg9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO3RoaXMuSC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5MYSgpfSxNYXRoLm1heCgwLHRoaXMuaGUoKS0oZUwodGhpcy5IKS10aGlzLmphKSkpfTtsLnByb3RvdHlwZS5rcj1mdW5jdGlvbihuLHAscSl7dmFyIHI9dGhpczt0aGlzLnlhKHt0eXBlOjEsY2xpZW50SWQ6dGhpcy5pZCxyZXF1ZXN0SWQ6dGhpcy52ZygpLGNvbW1hbmQ6bn0sZnVuY3Rpb24odCl7aWYodC50eXBlPT09MSlpZih0LnJlc3VsdClwKHQucmVzdWx0KTtlbHNle3ZhciB1LHYseCx5PXtmYWlsdXJlVHlwZTooeD0odT10LmZhaWx1cmUpPT1udWxsP3ZvaWQgMDp1LmZhaWx1cmVUeXBlKSE9bnVsbD94OjEyLGRhdGE6KHY9dC5mYWlsdXJlKT09bnVsbD92b2lkIDA6di5kYXRhfSx6LEM7KEM9KHo9ci5OKS5vbkZhaWx1cmUpPT0KbnVsbHx8Qy5jYWxsKHoseSk7cSh5KX19KX07bC5wcm90b3R5cGUueWE9ZnVuY3Rpb24obixwKXt2YXIgcT10aGlzO2lmKHRoaXMuc3RhdGU9PT00KW4uZmFpbHVyZT17ZmFpbHVyZVR5cGU6dGhpcy5afSxwKG4pO2Vsc2V7dmFyIHI9dGhpcy5zdGF0ZSE9PTImJm4udHlwZSE9PTAsdD1uLnJlcXVlc3RJZCx1LHY9dGhpcy5ILnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgeT1xLktbdF07eSYmKGltKDYpLHEua2QoeSw3KSl9LCh1PW4ubWF4RGVsYXkpIT1udWxsP3U6ZykseD17cmVxdWVzdDpuLEhvOnAsem86cixOczp2fTt0aGlzLktbdF09eDtyfHx0aGlzLnNlbmRSZXF1ZXN0KHgpfX07bC5wcm90b3R5cGUuc2VuZFJlcXVlc3Q9ZnVuY3Rpb24obil7dGhpcy5qYT1lTCh0aGlzLkgpO24uem89ITE7dGhpcy5JaihuLnJlcXVlc3QpfTtsLnByb3RvdHlwZS5Oaj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXt2YXIgcT0KdGhpcy5LW3AudmFsdWVdO3Euem8mJnRoaXMuc2VuZFJlcXVlc3QocSl9fTtsLnByb3RvdHlwZS5Baj1mdW5jdGlvbigpe2Zvcih2YXIgbj1tKE9iamVjdC5rZXlzKHRoaXMuSykpLHA9bi5uZXh0KCk7IXAuZG9uZTtwPW4ubmV4dCgpKXRoaXMua2QodGhpcy5LW3AudmFsdWVdLHRoaXMuWil9O2wucHJvdG90eXBlLmtkPWZ1bmN0aW9uKG4scCl7dGhpcy5hYyhuKTt2YXIgcT1uLnJlcXVlc3Q7cS5mYWlsdXJlPXtmYWlsdXJlVHlwZTpwfTtuLkhvKHEpfTtsLnByb3RvdHlwZS5hYz1mdW5jdGlvbihuKXtkZWxldGUgdGhpcy5LW24ucmVxdWVzdC5yZXF1ZXN0SWRdO3RoaXMuSC5jbGVhclRpbWVvdXQobi5Ocyl9O2wucHJvdG90eXBlLmtzPWZ1bmN0aW9uKG4pe3RoaXMuamE9ZUwodGhpcy5IKTt2YXIgcD10aGlzLktbbi5yZXF1ZXN0SWRdO2lmKHApdGhpcy5hYyhwKSxwLkhvKG4pO2Vsc2V7dmFyIHEscjsocj0ocT10aGlzLk4pLm9uRmFpbHVyZSk9PW51bGx8fHIuY2FsbChxLHtmYWlsdXJlVHlwZToxNH0pfX07Cmg9bmV3IGwoYSxjLGIpO3JldHVybiBofTsKdmFyIGdMPWZ1bmN0aW9uKCl7cmV0dXJuIGFsKDE4LGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBkTH0pfSxjTD1mdW5jdGlvbihhKXtpbyhsbyhjby5pYS5aYiksZnVuY3Rpb24oKXtaYyhhKX0pfSxoTD1mdW5jdGlvbihhKXt2YXIgYj1hLnN1YnN0cmluZygwLGEuaW5kZXhPZigiL18vc2VydmljZV93b3JrZXIiKSk7cmV0dXJuIiYxcD0xIisoYj8iJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQoYik6IiIpfSxpTD1mdW5jdGlvbihhKXt2YXIgYj1BLmxvY2F0aW9uLm9yaWdpbjtpZighYilyZXR1cm4gbnVsbDsoTSg0MzIpP1dqKCk6V2ooKSYmIWEpJiYoYT0iIitiK1hqKCkrIi9fL3NlcnZpY2Vfd29ya2VyIik7dmFyIGM9YSxkLGU9TGYoMTEpO2U9TGYoMTApO2Q9ZTtjPyhjLmNoYXJBdChjLmxlbmd0aC0xKSE9PSIvIiYmCihjKz0iLyIpLGE9YytkKTphPSJodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9zdGF0aWMvc2VydmljZV93b3JrZXIvIitkKyIvIjt2YXIgZjt0cnl7Zj1uZXcgVVJMKGEpfWNhdGNoKGcpe3JldHVybiBudWxsfXJldHVybiBmLnByb3RvY29sIT09Imh0dHBzOiI/bnVsbDpmfSxqTD1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5PaCk7cmV0dXJuIGImJmJbYV19LGtMPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dGhpcy5LPWdMKCk7dGhpcy5aPXRoaXMuUj0hMTt0aGlzLmZhPW51bGw7dGhpcy5pbml0VGltZT1NYXRoLnJvdW5kKE5iKCkpO3RoaXMuSD0xNTt0aGlzLk49dGhpcy5GcihhKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtiLmluaXRpYWxpemUoKX0sMUUzKTtiZChmdW5jdGlvbigpe2IuenMoYSl9KX07az1rTC5wcm90b3R5cGU7ay5kZWxlZ2F0ZT1mdW5jdGlvbihhLGIsYyl7dGhpcy5nZXRTdGF0ZSgpIT09Mj8odGhpcy5LLkgodGhpcy5ILHtzdGF0ZTp0aGlzLmdldFN0YXRlKCksCkpnOnRoaXMuaW5pdFRpbWUsVWc6TWF0aC5yb3VuZChOYigpKS10aGlzLmluaXRUaW1lfSx2b2lkIDAsYS5jb21tYW5kVHlwZSksYyh7ZmFpbHVyZVR5cGU6dGhpcy5IfSkpOnRoaXMuTi5rcihhLGIsYyl9O2suZ2V0U3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5OLmdldFN0YXRlKCkuc3RhdGV9O2suenM9ZnVuY3Rpb24oYSl7dmFyIGI9QS5sb2NhdGlvbi5vcmlnaW4sYz10aGlzLGQ9WGMoKTt0cnl7dmFyIGU9ZC5jb250ZW50RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIiksZj1hLnBhdGhuYW1lLGc9ZltmLmxlbmd0aC0xXT09PSIvIj9hLnRvU3RyaW5nKCk6YS50b1N0cmluZygpKyIvIixoPWEub3JpZ2luIT09Imh0dHBzOi8vd3d3Lmdvb2dsZXRhZ21hbmFnZXIuY29tIj9oTChmKToiIixsO00oMTMzKSYmKGw9e3NhbmRib3g6ImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMifSk7WGMoZysic3dfaWZyYW1lLmh0bWw/b3JpZ2luPSIrZW5jb2RlVVJJQ29tcG9uZW50KGIpKwpoLHZvaWQgMCxsLHZvaWQgMCxlKTt2YXIgbj1mdW5jdGlvbigpe2QuY29udGVudERvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSk7ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbigpe2MuZmE9ZS5jb250ZW50V2luZG93O2QuY29udGVudFdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixmdW5jdGlvbihwKXtwLm9yaWdpbj09PWEub3JpZ2luJiZjLk4ua3MocC5kYXRhKX0pO2MuaW5pdGlhbGl6ZSgpfSl9O2QuY29udGVudERvY3VtZW50LnJlYWR5U3RhdGU9PT0iY29tcGxldGUiP24oKTpkLmNvbnRlbnRXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtuKCl9KX1jYXRjaChwKXtkLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZCksdGhpcy5IPTExLHRoaXMuSy5LKHZvaWQgMCx2b2lkIDAsdGhpcy5ILHAudG9TdHJpbmcoKSl9fTtrLkZyPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1mTChmdW5jdGlvbihkKXt2YXIgZTsoZT1iLmZhKT09Cm51bGx8fGUucG9zdE1lc3NhZ2UoZCxhLm9yaWdpbil9LHtxbzpmdW5jdGlvbigpe2IuUj0hMDtiLksuSyhjLmdldFN0YXRlKCksYy5zdGF0cyl9LHNvOmZ1bmN0aW9uKCl7fSxwbzpmdW5jdGlvbihkKXtiLlI/KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDEwLGIuSy5IKGIuSCxjLmdldFN0YXRlKCksYy5zdGF0cyx2b2lkIDAsZD09bnVsbD92b2lkIDA6ZC5kYXRhKSk6KGIuSD0oZD09bnVsbD92b2lkIDA6ZC5mYWlsdXJlVHlwZSl8fDQsYi5LLksoYy5nZXRTdGF0ZSgpLGMuc3RhdHMsYi5ILGQ9PW51bGw/dm9pZCAwOmQuZGF0YSkpfSxvbkZhaWx1cmU6ZnVuY3Rpb24oZCl7Yi5IPWQuZmFpbHVyZVR5cGU7Yi5LLkgoYi5ILGMuZ2V0U3RhdGUoKSxjLnN0YXRzLGQuY29tbWFuZCxkLmRhdGEpfX0pO3JldHVybiBjfTtrLmluaXRpYWxpemU9ZnVuY3Rpb24oKXt0aGlzLlp8fHRoaXMuTi5pbml0KCk7dGhpcy5aPSEwfTsKdmFyIGxMPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlO2lmKChlPWpMKGEpKT09bnVsbHx8IWUuZGVsZWdhdGUpe3ZhciBmPUljKCk/MTY6NjtnTCgpLkgoZix2b2lkIDAsdm9pZCAwLGIuY29tbWFuZFR5cGUpO2Qoe2ZhaWx1cmVUeXBlOmZ9KTtyZXR1cm59akwoYSkuZGVsZWdhdGUoYixjLGQpO307CmZ1bmN0aW9uIG1MKGEsYixjLGQpe3ZhciBlPWlMKGEpO2lmKGU9PT1udWxsKXtkKCJfaXNfc3c9ZiIrKEljKCk/MTY6NikrInRlIik7cmV0dXJufXZhciBmPWI/MTowLGc9TWF0aC5yb3VuZChOYigpKSxoLGw9KGg9akwoZS5vcmlnaW4pKT09bnVsbD92b2lkIDA6aC5pbml0VGltZSxuPWw/Zy1sOnZvaWQgMCxwO00oNDMyKT9wPVdqKCk/dm9pZCAwOkEubG9jYXRpb24uaHJlZjpwPUEubG9jYXRpb24uaHJlZjtsTChlLm9yaWdpbix7Y29tbWFuZFR5cGU6MCxwYXJhbXM6e3VybDphLG1ldGhvZDpmLHRlbXBsYXRlczpjLGJvZHk6Ynx8IiIscHJvY2Vzc1Jlc3BvbnNlOiEwLHNpbmNlSW5pdDpuLGF0dHJpYnV0aW9uUmVwb3J0aW5nOiEwLHJlZmVyZXI6cCxzdHJpY3Q6TSg1ODQpfX0sZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKHEpe3ZhciByPSJfaXNfc3c9ZiIrcS5mYWlsdXJlVHlwZSx0LHU9KHQ9akwoZS5vcmlnaW4pKT09Cm51bGw/dm9pZCAwOnQuZ2V0U3RhdGUoKTt1IT09dm9pZCAwJiYocis9InMiK3UpO2Qobj9yKygidCIrbik6cisidGUiKX0pO307ZnVuY3Rpb24gbkwoYSl7aWYoSWYoNDcpJiZkSShhLCJjY2RfYWRkXzFwX2RhdGEiLCExKSYmV2ooKSl7dmFyIGI9YS5NO2lmKEljKCkmJmJnKCJpbnRlcm5hbF9zd19hbGxvd2VkIiwiIikpe3ZhciBjPWVrKGIpLGQ9V2ooKT9YaigpOnZvaWQgMCxlO2U9ZD97cGF0aDpkLGVvOiJmdWxsIn06Yz97cGF0aDpjLGVvOiJsaXRlIn06dm9pZCAwO2lmKGUpe3ZhciBmPWUuZW8sZz1uZXcgVVJMKGUucGF0aCxBLmxvY2F0aW9uLm9yaWdpbik7aWYoZy5vcmlnaW49PT1BLmxvY2F0aW9uLm9yaWdpbiYmcHkoZik9PT12b2lkIDApe3ZhciBoPW9tKGptLmJhLk9oLHt9KTtoW2ZdfHwoaFtmXT1uZXcgbnkoZykpfX19fX07ZnVuY3Rpb24gc0woKXt2YXIgYTthPWE9PT12b2lkIDA/ZG9jdW1lbnQ6YTt2YXIgYjtyZXR1cm4hKChiPWEuZmVhdHVyZVBvbGljeSk9PW51bGx8fCFiLmFsbG93ZWRGZWF0dXJlcygpLmluY2x1ZGVzKCJhdHRyaWJ1dGlvbi1yZXBvcnRpbmciKSl9O2Z1bmN0aW9uIHdMKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO3ZhciBlPUZwKCksZj1EcChlKTtpZihmLnVybClpZihkKXt2YXIgZz1jKGYudXJsKTtiIT09ZyYmVShhLEYuRC5QZSxnKX1lbHNle3ZhciBoPWYudXJsO2IhPT1oJiZVKGEsRi5ELlBlLGMoaCkpfX07CnZhciB4TD1mdW5jdGlvbihhKXtpZihhIT1udWxsKXt2YXIgYj1TdHJpbmcoYSkuc3Vic3RyaW5nKDAsNTEyKSxjPWIuaW5kZXhPZigiIyIpO3JldHVybiBjPT09LTE/YjpiLnN1YnN0cmluZygwLGMpfXJldHVybiIifSx5TD1mdW5jdGlvbigpe3ZhciBhPUIudGl0bGU7aWYoYT09PXZvaWQgMHx8YT09PSIiKXJldHVybiIiO2E9ZW5jb2RlVVJJQ29tcG9uZW50KGEpO2Zvcih2YXIgYj0yNTY7Yj4wJiZLaihhLnN1YnN0cmluZygwLGIpKT09PXZvaWQgMDspYi0tO3JldHVybiBLaihhLnN1YnN0cmluZygwLGIpKXx8IiJ9O2Z1bmN0aW9uIEFMKGEpe1YoYSxILkouSmEsITApO1YoYSxILkouRWIsTmIoKSk7VihhLEguSi55bixhLk0uZXZlbnRNZXRhZGF0YVtILkouSmFdKX07dmFyIFNMPWZ1bmN0aW9uKGEpe3ZhciBiPVhvKEYuRC5rYSk/bWooInBzY2RsIik6ImRlbmllZCI7YiE9bnVsbCYmVShhLEYuRC5qaCxiKX07dmFyIFRMPW5ldyBmdW5jdGlvbigpe3RoaXMuSD17fX07dmFyIFVMPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5NO2lmKGI9PT12b2lkIDA/MDpiKXt2YXIgZD1jLmdldE1lcmdlZFZhbHVlcyhGLkQuT2EpO1liKGQpJiZVKGEsRi5ELkxpLFliKGQpKX12YXIgZT1PbyhmRChGLkQuT2EpKSxmPWMuZ2V0TWVyZ2VkVmFsdWVzKEYuRC5PYSwxLGUpLGc9Yy5nZXRNZXJnZWRWYWx1ZXMoRi5ELk9hLDIpLGg9WWIobmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxmLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sVEwuSCkpLCIuIiksbD1ZYihnLCIuIik7aCYmVShhLEYuRC5YYyxoKTtsJiZVKGEsRi5ELlZjLGwpfTt2YXIgVkw9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi50cSk7YiYmVShhLEYuRC5JbCxiKX07ZnVuY3Rpb24gV0woYSl7dmFyIGI9S0IoITEpO2lmKGIhPW51bGwmJmIuc3RhdHVzKXt2YXIgYz17Z3RiOmIuc3RhdHVzfTtiLmRlbGF5JiYoYy5ndGJkPWIuZGVsYXkpO2EubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxjKX19O3ZhciBYTD1mdW5jdGlvbihhKXt6bSgpPT09IlVTLUNPIiYmVShhLEYuRC5MZSwxKX07dmFyIFlMPXtSYTp7Q2s6MSx6bjoyLEhuOjMsSW46NCxKbjo1LHduOjZ9fTtZTC5SYVtZTC5SYS5Da109IkFET0JFX0NPTU1FUkNFIjtZTC5SYVtZTC5SYS56bl09IlNRVUFSRVNQQUNFIjtZTC5SYVtZTC5SYS5Ibl09IldPT19DT01NRVJDRSI7WUwuUmFbWUwuUmEuSW5dPSJXT09fQ09NTUVSQ0VfTEVHQUNZIjtZTC5SYVtZTC5SYS5Kbl09IldPUkRfUFJFU1MiO1lMLlJhW1lMLlJhLnduXT0iU0hPUElGWSI7ZnVuY3Rpb24gWkwoYSl7dmFyIGI9QTtyZXR1cm4gS2ooYi5lc2NhcGUoYi5hdG9iKGEpKSl9CmZ1bmN0aW9uICRMKCl7dHJ5e2lmKCFNKDQ5OCkmJiFNKDQyNSkpcmV0dXJuW107dmFyIGE9bm0oam0uYmEubG4pO2lmKEFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGE7dmFyIGI9W10sYzthOnt0cnl7Yz0hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W2RhdGEtcmVxdWlyZW1vZHVsZV49Im1hZ2UvIl0nKTticmVhayBhfWNhdGNoKHkpe31jPSExfWMmJmIucHVzaChZTC5SYS5Dayk7dmFyIGQ7YTp7dHJ5e3ZhciBlPVpMKCJZWE56WlhSekxuTnhkV0Z5WlhOd1lXTmxMbU52YlM4PSIpO2Q9ZT8hIUIucXVlcnlTZWxlY3Rvcignc2NyaXB0W3NyY149Ii8vJytlKyciXScpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fWQ9ITF9ZCYmYi5wdXNoKFlMLlJhLnpuKTt2YXIgZjthOntpZihNKDQyNSkpdHJ5e3ZhciBnPVpMKCJjMmh2Y0dsbWVTNWpiMjA9IiksaD1aTCgiYzJodmNHbG1lV05rYmk1amIyMD0iKTtmPWcmJmg/ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJjZG4uJytnKyciXSxtZXRhW3Byb3BlcnR5PSJvZzppbWFnZSJdW2NvbnRlbnQqPSJjZG4uJysKKGcrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9ImNkbi4nKSsoZysnIl0sbGlua1tyZWw9InByZWNvbm5lY3QiXVtocmVmKj0iZm9udHMuJykrKGgrJyJdLGxpbmtbcmVsPSJwcmVjb25uZWN0Il1baHJlZio9Iml0ZXJhYmxlLXNob3BpZnkiXSxsaW5rW3JlbD0icHJlY29ubmVjdCJdW2hyZWYqPSJ2LicpKyhnKyciXScpKTohMTticmVhayBhfWNhdGNoKHkpe31mPSExfWYmJmIucHVzaChZTC5SYS53bik7dmFyIGw7YTp7dHJ5e2w9ISFCLnF1ZXJ5U2VsZWN0b3IoJ3NjcmlwdFtzcmMqPSJ3b29jb21tZXJjZSJdLGxpbmtbaHJlZio9Indvb2NvbW1lcmNlIl0sW2NsYXNzfD0id29vY29tbWVyY2UiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fWw9ITF9bCYmYi5wdXNoKFlMLlJhLkluKTt2YXIgbjthOnt0cnl7dmFyIHAscT0oKHA9Qi5sb2NhdGlvbik9PW51bGw/dm9pZCAwOnAuaG9zdG5hbWUpfHwiIixyLHQ9KChyPUIubG9jYXRpb24pPT1udWxsP3ZvaWQgMDpyLm9yaWdpbil8fAoiIix1PVpMKCJMbmR2Y21Sd2NtVnpjeTVqYjIwPSIpLHY9WkwoIkx5OXpMbmN1YjNKbiIpO249dSYmdj9UYihxLHUpfHwhIUIucXVlcnlTZWxlY3RvcignW3NyY149IicrdCsnL3dwLWNvbnRlbnQiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb3JkUHJlc3MgIl0sbGlua1tyZWw9ImRucy1wcmVmZXRjaCJdW2hyZWY9IicrKHYrJyJdJykpOiExO2JyZWFrIGF9Y2F0Y2goeSl7fW49ITF9biYmYi5wdXNoKFlMLlJhLkpuKTt2YXIgeDthOnt0cnl7eD0hIUIucXVlcnlTZWxlY3RvcignW2NsYXNzKj0id29vY29tbWVyY2UiXSxtZXRhW25hbWU9ImdlbmVyYXRvciJdW2NvbnRlbnRePSJXb29Db21tZXJjZSAiXScpO2JyZWFrIGF9Y2F0Y2goeSl7fXg9ITF9eCYmYi5wdXNoKFlMLlJhLkhuKTtVQigpJiZtbShqbS5iYS5sbixiKTtyZXR1cm4gYn1jYXRjaCh5KXt9cmV0dXJuW119O2Z1bmN0aW9uIHdNKGEpe2lmKE0oNDI1KSYmUShhLEguSi5GYykpe3ZhciBiPU5mKDY3LDE1MDApLGM9YS5tZXJnZUhpdERhdGFGb3JLZXksZD1GLkQuVGEsZT17fTtjLmNhbGwoYSxkLGUpfX07dmFyIHhNPSJwbGF0Zm9ybSBwbGF0Zm9ybVZlcnNpb24gYXJjaGl0ZWN0dXJlIG1vZGVsIHVhRnVsbFZlcnNpb24gYml0bmVzcyBmdWxsVmVyc2lvbkxpc3Qgd293NjQiLnNwbGl0KCIgIik7ZnVuY3Rpb24geU0oYSl7dmFyIGI7cmV0dXJuKGI9YS5nb29nbGVfdGFnX2RhdGEpIT1udWxsP2I6YS5nb29nbGVfdGFnX2RhdGE9e319ZnVuY3Rpb24gek0oYSl7dmFyIGIsYztyZXR1cm4oYz0oYj1hLmdvb2dsZV90YWdfZGF0YSk9PW51bGw/dm9pZCAwOmIudWFjaF9wcm9taXNlKSE9bnVsbD9jOm51bGx9ZnVuY3Rpb24gQU0oYSl7dmFyIGIsYztyZXR1cm4gdHlwZW9mKChiPWEubmF2aWdhdG9yKT09bnVsbD92b2lkIDA6KGM9Yi51c2VyQWdlbnREYXRhKT09bnVsbD92b2lkIDA6Yy5nZXRIaWdoRW50cm9weVZhbHVlcyk9PT0iZnVuY3Rpb24ifQpmdW5jdGlvbiBCTShhKXtpZighQU0oYSkpcmV0dXJuIG51bGw7dmFyIGI9eU0oYSk7aWYoYi51YWNoX3Byb21pc2UpcmV0dXJuIGIudWFjaF9wcm9taXNlO3ZhciBjPWEubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuZ2V0SGlnaEVudHJvcHlWYWx1ZXMoeE0pLnRoZW4oZnVuY3Rpb24oZCl7Yi51YWNoIT1udWxsfHwoYi51YWNoPWQpO3JldHVybiBkfSk7cmV0dXJuIGIudWFjaF9wcm9taXNlPWN9Owp2YXIgQ009ZnVuY3Rpb24oKXt0aGlzLndpbmRvdz1BO3RoaXMuTj1OYn07Q00ucHJvdG90eXBlLlI9ZnVuY3Rpb24oKXtpZihBTSh0aGlzLndpbmRvdykmJih0aGlzLlo9dGhpcy5OKCksIXpNKHRoaXMud2luZG93KSkpe3ZhciBhPUJNKHRoaXMud2luZG93KTthJiZhLnRoZW4oZnVuY3Rpb24oKXtQKDk1KX0pLmNhdGNoKGZ1bmN0aW9uKCl7UCg5Nil9KX19O0NNLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy53aW5kb3cuZ29vZ2xlX3RhZ19kYXRhLGI7aWYoYSE9bnVsbCYmYS51YWNoKXt2YXIgYz1hLnVhY2gsZD1uYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGMpO2MuZnVsbFZlcnNpb25MaXN0JiYoZC5mdWxsVmVyc2lvbkxpc3Q9Yy5mdWxsVmVyc2lvbkxpc3Quc2xpY2UoMCkpO2I9ZH1lbHNlIGI9bnVsbDtyZXR1cm4gYn07Q00ucHJvdG90eXBlLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPTAsYz10aGlzLGQ9ZnVuY3Rpb24oaCxsKXt0cnl7YShoLGwpfWNhdGNoKG4pe319LAplPXRoaXMuSCgpO2lmKGUpZChlKTtlbHNle3ZhciBmPXpNKHRoaXMud2luZG93KTtpZihmKXtiPU1hdGgubWluKE1hdGgubWF4KGlzRmluaXRlKGIpP2I6MCwwKSwxRTMpO3ZhciBnPXRoaXMud2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtkLktnfHwoZC5LZz0hMCxQKDEwNiksZChudWxsLEVycm9yKCJUaW1lb3V0IikpKX0sYik7Zi50aGVuKGZ1bmN0aW9uKGgpe2QuS2d8fChkLktnPSEwLFAoMTA0KSxjLndpbmRvdy5jbGVhclRpbWVvdXQoZyksZChoKSl9KS5jYXRjaChmdW5jdGlvbihoKXtkLktnfHwoZC5LZz0hMCxQKDEwNSksYy53aW5kb3cuY2xlYXJUaW1lb3V0KGcpLGQobnVsbCxoKSl9KX1lbHNlIGQobnVsbCl9fTtDTS5wcm90b3R5cGUuSz1mdW5jdGlvbigpe3JldHVybiB0aGlzLlohPT12b2lkIDB9O3ZhciBETT1mdW5jdGlvbigpe3ZhciBhO2E9YT09PXZvaWQgMD9BOmE7cmV0dXJuIEFNKGEpfSxFTT1mdW5jdGlvbihhKXt2YXIgYj17fTtiW0YuRC5jZ109YS5hcmNoaXRlY3R1cmU7CmJbRi5ELmRnXT1hLmJpdG5lc3M7YS5mdWxsVmVyc2lvbkxpc3QmJihiW0YuRC5lZ109YS5mdWxsVmVyc2lvbkxpc3QubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoYy5icmFuZHx8IiIpKyI7IitlbmNvZGVVUklDb21wb25lbnQoYy52ZXJzaW9ufHwiIil9KS5qb2luKCJ8IikpO2JbRi5ELmZnXT1hLm1vYmlsZT8iMSI6IjAiO2JbRi5ELmdnXT1hLm1vZGVsO2JbRi5ELmhnXT1hLnBsYXRmb3JtO2JbRi5ELmlnXT1hLnBsYXRmb3JtVmVyc2lvbjtiW0YuRC5qZ109YS53b3c2ND8iMSI6IjAiO3JldHVybiBifSxGTT1uZXcgQ007dmFyIEdNPWZ1bmN0aW9uKGEpe2lmKCFETSgpKVAoODcpO2Vsc2UgaWYoRk0uSygpKXtQKDg1KTt2YXIgYj1GTS5IKCk7aWYoYil7aWYoYilmb3IodmFyIGM9RU0oYiksZD1tKE9iamVjdC5rZXlzKGMpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtVKGEsZixjW2ZdKX19ZWxzZSBQKDg2KX19O2Z1bmN0aW9uIEhNKGEsYil7Yj1iPT09dm9pZCAwPyExOmI7dmFyIGM9UShhLEguSi5zZyksZD1kSShhLCJjdXN0b21fZXZlbnRfYWNjZXB0X3J1bGVzIiwhMSkmJiFiO2lmKGMpe3ZhciBlPWMuaW5kZXhPZihhLnRhcmdldC5kZXN0aW5hdGlvbklkKT49MCxmPSEwO1EoYSxILkouQ2MpJiYoZj1RKGEsSC5KLk5iKT09PXZrKCkpO2UmJmY/VihhLEguSi5raSwhMCk6KFYoYSxILkoua2ksITEpLGR8fChhLmlzQWJvcnRlZD0hMCkpO2lmKGEuY2FuQmVBY2NlcHRlZCgpKXt2YXIgZz11aygpLmluZGV4T2YoYS50YXJnZXQuZGVzdGluYXRpb25JZCk+PTAsaD0hMTtpZighZyl7dmFyIGwsbj0obD1uayhhLnRhcmdldC5kZXN0aW5hdGlvbklkKSk9PW51bGw/dm9pZCAwOmwuY2Fub25pY2FsQ29udGFpbmVySWQ7biYmKGg9dmsoKT09PW4pfWd8fGg/UShhLEguSi5raSkmJmEuYWNjZXB0KCk6YS5pc0Fib3J0ZWQ9ITB9ZWxzZSBhLmlzQWJvcnRlZD0hMH19O3ZhciBJTT1mdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuWmMpLGM9TyhhLk0sRi5ELlljKTtiJiYhYz8oYS5ldmVudE5hbWUhPT1GLkQud2EmJmEuZXZlbnROYW1lIT09Ri5ELnlmJiZQKDEzMSksYS5pc0Fib3J0ZWQ9ITApOiFiJiZjJiYoUCgxMzIpLGEuaXNBYm9ydGVkPSEwKX07dmFyIEpNPWZ1bmN0aW9uKGEpe2lmKGEuZXZlbnROYW1lPT09Ri5ELndhKXt2YXIgYj1JZigxMSksYz1RKGEsSC5KLkhxKTshKCFNKDU1MCkmJmJ8fGMpfHxhLnRhcmdldC5KYygpfHxZRygiaWRjX2NvbmZpZ19wdiIsYS50YXJnZXQuZGVzdGluYXRpb25JZCl8fChhLmlzQWJvcnRlZD0hMCl9fTt2YXIgTE09ZnVuY3Rpb24oYSxiKXtLTS5OKGEsYil9LE1NPWZ1bmN0aW9uKCl7dGhpcy5IPXt9fTtNTS5wcm90b3R5cGUuTj1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuSFthXTtjfHwoYz10aGlzLkhbYV09W10pO2MucHVzaChiKX07TU0ucHJvdG90eXBlLks9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5IW2EudGFyZ2V0LmRlc3RpbmF0aW9uSWRdO2lmKCFhLmlzQWJvcnRlZCYmYilmb3IodmFyIGM9ZkkoYSksZD0wO2Q8Yi5sZW5ndGg7KytkKXt0cnl7YltkXShjKX1jYXRjaChlKXthLmlzQWJvcnRlZD0hMH1pZihhLmlzQWJvcnRlZClicmVha319O3ZhciBLTT1uZXcgTU07dmFyIE5NPWZ1bmN0aW9uKGEpe0tNLksoYSk7fTt2YXIgT009ZnVuY3Rpb24oYSl7YSYmKEFwKDQ5NSxhKSxBcCg1NjcsYSksQXAoNDUwLGEpLEFwKDQ0MyxhKSxBcCg1ODcsYSksQXAoNTc2LGEpLEFwKDU3MCxhKSxBcCg1ODEsYSksQXAoNjAyLGEpKX0sUE09ZnVuY3Rpb24oYSl7aWYoUShhLEguSi53ZikmJlhvKGZwKSl7dmFyIGI9UShhLEguSi5HYSksYz1RKGEsSC5KLmRhKSE9PVguVi51YiYmUShhLEguSi5kYSkhPT1YLlYuT2ImJlEoYSxILkouZGEpIT09WC5WLkZiJiZhLmV2ZW50TmFtZSE9PUYuRC5KYjtIdihiLGMpO3ZhciBkPUR2W0d2KGIucHJlZml4KV07T00oZCk7VShhLEYuRC5FZCxkKX19O2Z1bmN0aW9uIFFNKCl7cmV0dXJuIGtqKCJkZWR1cGVfZ2NsaWQiLGZ1bmN0aW9uKCl7cmV0dXJuIEF2KCl9KX07dmFyIFJNPS9eKHd3d1wuKT9nb29nbGUoXC5jb20/KT8oXC5bYS16XXsyfXQ/KT8kLyxTTT0vXnd3dy5nb29nbGVhZHNlcnZpY2VzLmNvbSQvO2Z1bmN0aW9uIFRNKGEpe2F8fChhPVVNKCkpO3JldHVybiBhLk50PyExOmEubnN8fGEucXN8fGEudnN8fGEucnN8fGEuRGd8fGEuVGh8fGEuVHJ8fGEuVmg9PT0iYXcuZHMifHxNKDIzNSkmJmEuVmg9PT0iYXcuZHYifHxhLllyPyEwOiExfQpmdW5jdGlvbiBVTSgpe3ZhciBhPXt9LGI9VXEoITApO2EuTnQ9ISFiLl91cDt2YXIgYz1lcygpLGQ9YXQoKTthLm5zPWMuYXchPT12b2lkIDA7YS5xcz1jLmRjIT09dm9pZCAwO2EudnM9Yy53YnJhaWQhPT12b2lkIDA7YS5ycz1jLmdicmFpZCE9PXZvaWQgMDthLlZoPXR5cGVvZiBjLmdjbHNyYz09PSJzdHJpbmciP2MuZ2Nsc3JjOnZvaWQgMDthLkRnPWQuRGc7YS5UaD1kLlRoO3ZhciBlPUIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIjthLllyPVJNLnRlc3QoZSk7YS5Ucj1TTS50ZXN0KGUpO3JldHVybiBhfTtmdW5jdGlvbiBWTSgpe3ZhciBhPUEuX191c3BhcGk7aWYoeWIoYSkpe3ZhciBiPSIiO3RyeXthKCJnZXRVU1BEYXRhIiwxLGZ1bmN0aW9uKGMsZCl7aWYoZCYmYyl7dmFyIGU9Yy51c3BTdHJpbmc7ZSYmUmVnRXhwKCJeW1xcZGEtekEtWi1dezEsMjB9JCIpLnRlc3QoZSkmJihiPWUpfX0pfWNhdGNoKGMpe31yZXR1cm4gYn19Owp2YXIgV009ZnVuY3Rpb24oYSl7dmFyIGI9WG8oZnApO1YoYSxILkouWWUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExJiYhYik7dmFyIGM9UShhLEguSi5kaiksZD1PKGEuTSxGLkQudWMpIT09ITEsZT1MSyhhKTtkfHxVKGEsRi5ELkhkLCIxIik7dmFyIGY9SHIoZS5wcmVmaXgpLGc9UShhLEguSi5zYSl8fFEoYSxILkoudWcpfHxRKGEsSC5KLldlKTtjfHxnfHxVKGEsIl8mYXB2YyIsIjAiKTthLk0uaXNHdG1FdmVudCYmVShhLEYuRC5JbCwiZyIpO1UoYSxGLkQuRWQpO1UoYSxGLkQuTWIpO2lmKGImJihVKGEsRi5ELk1iLHlMKCkpLGQpKXtIdihlKTt2YXIgaD1EdltHdihlLnByZWZpeCldO1UoYSxGLkQuRWQsaCk7T00oaCl9aWYoYS5ldmVudE5hbWU9PT1GLkQud2EmJiFnKXt2YXIgbD1PKGEuTSxGLkQuemMpLG49TyhhLk0sRi5ELkRiKXx8e307UEsoe1RuOmQsbW86bixRbzpsLFVuOmV9KTshYyYmWXMoZikmJihWKGEsSC5KLnZkLCEwKSxVKGEsIl8mYXB2YyIsCiIxIikpfWlmKGMpYS5pc0Fib3J0ZWQ9ITA7ZWxzZXthLnRhcmdldC5kZXN0aW5hdGlvbklkJiZVKGEsRi5ELlFlLGEudGFyZ2V0LmRlc3RpbmF0aW9uSWQpO1UoYSxGLkQuVWIsYS5ldmVudE5hbWUpO2EuZXZlbnROYW1lPT09Ri5ELndhJiZVKGEsRi5ELlViLEYuRC5zYyk7aWYoUShhLEguSi5zYSkpVShhLEYuRC5VYixGLkQud3ApLFUoYSxGLkQuc2EsIjEiKTtlbHNlIGlmKFEoYSxILkoudWcpKVUoYSxGLkQuVWIsRi5ELkhwKTtlbHNlIGlmKFEoYSxILkouV2UpKVUoYSxGLkQuVWIsRi5ELkVwKTtlbHNle3ZhciBwPWVzKCk7VShhLEYuRC5EZCxwLmdjbGlkKTtVKGEsRi5ELktkLHAuZGNsaWQpO1UoYSxGLkQuQWwscC5nY2xzcmMpO2lmKCFSKGEsRi5ELkRkKSYmIVIoYSxGLkQuS2QpfHxNKDQyMSkpVShhLEYuRC5FZSxwLndicmFpZCksVShhLEYuRC5CZixwLmdicmFpZCk7dmFyIHE9TSg1ODkpLHI9ZnVuY3Rpb24oZmEpe3JldHVybiBmYS5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpfSwKdD0hIU8oYS5NLEYuRC56YSksdT1xP3Q/ZnVuY3Rpb24oZmEpe3JldHVybiB4TChyKGZhKSl9OmZ1bmN0aW9uKGZhKXtyZXR1cm4geEwoZmEucmVwbGFjZSgvIy4qJC8sIiIpKX06cix2PWJ0KHUpO1UoYSxGLkQuemEsdik7dmFyIHg9ISFPKGEuTSxGLkQuVWEpLHk9Qi5yZWZlcnJlcjtVKGEsRi5ELlVhLHE/eD9yKHkpOnkucmVwbGFjZSgvIy4qJC8sIiIpOkIucmVmZXJyZXI/TGooUmooQi5yZWZlcnJlciksImhvc3QiKToiIik7d0woYSx2LHUsITApO2lmKEtjKXt2YXIgej1MaihSaihLYyksImhvc3QiKTt6JiZVKGEsRi5ELmJtLHopfWlmKCFRKGEsSC5KLldlKSl7dmFyIEM9YXQoKTtVKGEsRi5ELnpmLEMuRGcpO1UoYSxGLkQuQWYsQy5Tcil9dmFyIEQ9VU0oKTtUTShEKSYmVShhLEYuRC5QZCwiMSIpO1UoYSxGLkQuRGwsUU0oKSk7VXEoITEpLl91cD09PSIxIiYmVShhLEYuRC5RbCwiMSIpfXdvLkg9ITA7VShhLEYuRC5TYik7VShhLEYuRC5sYik7aWYoTSg0MjEpKXt2YXIgST1GcihlKTsKSS5sZW5ndGg+MCYmVShhLEYuRC5TYixJLmpvaW4oIi4iKSk7dmFyIEc9RHIoZisiX2F3Iik7Ry5sZW5ndGg+MCYmVShhLEYuRC5sYixHLmpvaW4oIi4iKSl9ZWxzZSBpZighUihhLEYuRC5EZCkmJiFSKGEsRi5ELktkKSYmV3MoZikpe3ZhciBOPUZyKGUpO04ubGVuZ3RoPjAmJlUoYSxGLkQuU2IsTi5qb2luKCIuIikpfWVsc2UgaWYoIVIoYSxGLkQuRWUpJiZiKXt2YXIgUz1EcihmKyJfYXciKTtTLmxlbmd0aD4wJiZVKGEsRi5ELmxiLFMuam9pbigiLiIpKX1VKGEsRi5ELlVsLHFkKCkpO2EuTS5pc0d0bUV2ZW50JiYoYS5NLkVhW0YuRC5SY109ZkQoRi5ELlJjKSk7U3QoYS5NKT9VKGEsRi5ELmRlLCExKTpVKGEsRi5ELmRlLCEwKTtWKGEsSC5KLkJrLCEwKTt2YXIgVz1WTSgpO1chPT12b2lkIDAmJlUoYSxGLkQua2csV3x8ImVycm9yIik7dmFyIGVhPUx0KCk7ZWEmJlUoYSxGLkQuS2UsZWEpO3ZhciBqYT1LdCgpO2phJiZVKGEsRi5ELk9lLGphKTtRKGEsSC5KLlBjKXx8VihhLEguSi5KYSwKITEpfX07CnZhciBYTT1mdW5jdGlvbihhLGIsYyl7Yj1iPT09dm9pZCAwPyEwOmI7Yz1jPT09dm9pZCAwP3t9OmM7aWYoYS5ldmVudE5hbWU9PT1GLkQuSmImJiFhLk0uaXNHdG1FdmVudCl7dmFyIGQ9TyhhLk0sRi5ELlNmKTtpZih0eXBlb2YgZD09PSJmdW5jdGlvbiImJiFRKGEsSC5KLnNhKSl7dmFyIGU9U3RyaW5nKE8oYS5NLEYuRC5UZikpLGY9ZTtjW2VdJiYoZj1jW2VdKTt2YXIgZz1SKGEsZil8fE8oYS5NLGUpO2lmKGIpe2lmKHR5cGVvZiBkPT09ImZ1bmN0aW9uIilpZihlPT09Ri5ELmxiJiZnIT09dm9pZCAwKXt2YXIgaD1nLnNwbGl0KCIuIik7aC5sZW5ndGg9PT0wP2Qodm9pZCAwKTpoLmxlbmd0aD09PTE/ZChoWzBdKTpkKGgpfWVsc2UgaWYoZT09PUYuRC5xcSYmTSgyNTgpKXt2YXIgbCxuPXt9O1hvKGZwKSYmKG4uYXVpZD1SKGEsRi5ELkVkKSk7dmFyIHA9VU0oKTtpZihUTShwKSluLmdhZF9zb3VyY2U9cC5EZyxuLmdhZF9jYW1wYWlnbmlkPXAuVGgsbi5zZXNzaW9uX3N0YXJ0X3RpbWVfdXNlYz0KKERhdGUubm93KCkqMUUzKS50b1N0cmluZygpLG4ubGFuZGluZ19wYWdlX3VybD1BLmxvY2F0aW9uLmhyZWYsbi5sYW5kaW5nX3BhZ2VfcmVmZXJyZXI9Qi5yZWZlcnJlcixuLmxhbmRpbmdfcGFnZV91c2VyX2FnZW50PUhjLnVzZXJBZ2VudDtlbHNle3ZhciBxPVEoYSxILkouR2EpO24uZ2FkX3NvdXJjZT1ScyhxLnByZWZpeCkuRWd9bD1idG9hKEpTT04uc3RyaW5naWZ5KG4pKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0rJC8sIiIpO2QobCl9ZWxzZSBkKGcpfWVsc2UgZChnKX1hLmlzQWJvcnRlZD0hMH19O3ZhciBZTT1mdW5jdGlvbihhKXtpZihNKDQyNSkmJlEoYSxILkouRmMpKXtmb3IodmFyIGI9WyJfJmFwdmMiLCJ0aWRzIixGLkQuVGEsRi5ELlFpLEYuRC5VYixGLkQuUWUsRi5ELlZjLEYuRC5YY10sYz1tKGV1KGEpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGU9ZC52YWx1ZTtpZihlPT09Ri5ELnphKXt2YXIgZj1SKGEsZSk7ZiYmKGY9Zi5yZXBsYWNlKC9bXD8jXS4qJC8sIiIpKTtVKGEsZSxmKX1lbHNlIGIuaW5jbHVkZXMoZSl8fFUoYSxlKX1WKGEsSC5KLlhnKTtWKGEsSC5KLmhkKX19O2Z1bmN0aW9uIFpNKGEpe2lmKGZuLkspaWYod28uSD0hMCxhLmV2ZW50TmFtZT09PUYuRC53YSl6byhhLk0sYS50YXJnZXQuaWQpO2Vsc2V7UShhLEguSi5QYyl8fCh3by5LW2EudGFyZ2V0LmlkXT0hMCk7dmFyIGI9UShhLEguSi5OYik7WkIoYil9fTt2YXIgJE09ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj1iPT09dm9pZCAwP3t9OmI7Yz1mLlNqPT09dm9pZCAwPyExOmYuU2o7ZD1mLk1qPT09dm9pZCAwPyExOmYuTWo7ZT1mLmtvPT09dm9pZCAwPyExOmYua287ZHx8KGEuTS5pc0d0bUV2ZW50P1EoYSxILkouZGEpIT09WC5WLnhhJiZhLmV2ZW50TmFtZSYmVShhLEYuRC5VYixhLmV2ZW50TmFtZSk6VShhLEYuRC5VYixhLmV2ZW50TmFtZSkpO0diKGEuTS5FYSxmdW5jdGlvbihnLGgpe016W2ddfHxjJiZCb1tnXXx8ZSYmT3pbZ118fFUoYSxnLGgpfSl9O3ZhciBhTj1mdW5jdGlvbihhKXtmb3IodmFyIGI9bShbRi5ELlBhLEYuRC5RYSxGLkQuZWIsRi5ELk5lLEYuRC5HZSxGLkQuVWQsRi5ELkllLEYuRC5UYyxGLkQuTGQsRi5ELmtoLEYuRC5GZixGLkQuRGYsRi5ELkVmLEYuRC5DZixGLkQud2ksRi5ELlNkLEYuRC5RZCxGLkQuUmQsRi5ELnRiXSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYS5jb3B5VG9IaXREYXRhKGMudmFsdWUpfTtmdW5jdGlvbiBiTihhLGIpe3JldHVybiBrcigiZ3NpZF9kYyIse3ZhbHVlOntqb2luSWQ6YSxsYXN0Sm9pbmVkVGltZU1zOmJ9LGV4cGlyZXM6YiszRTV9KT09PTA/ITA6ITF9Owp2YXIgY049ZnVuY3Rpb24oYSl7aWYoWG8oZnApKXt2YXIgYjthOnt2YXIgYz1ucigiZ3NpZF9kYyIpO2lmKGMuZXJyb3I9PT0wJiZjLnZhbHVlJiZ0eXBlb2YgYy52YWx1ZT09PSJvYmplY3QiKXt2YXIgZD1jLnZhbHVlO2lmKGQudmFsdWUmJnR5cGVvZiBkLnZhbHVlPT09Im9iamVjdCIpe3ZhciBlPWQudmFsdWU7aWYoZS5qb2luSWQmJmUubGFzdEpvaW5lZFRpbWVNcyYmdHlwZW9mIGUuam9pbklkPT09InN0cmluZyImJnR5cGVvZiBlLmxhc3RKb2luZWRUaW1lTXM9PT0ibnVtYmVyIil7Yj1lO2JyZWFrIGF9fX1iPXZvaWQgMH12YXIgZj1iLGc9Zj09bnVsbD92b2lkIDA6Zi5qb2luSWQsaD1OYigpO2lmKCFmfHwhZ3x8Zi5sYXN0Sm9pbmVkVGltZU1zPGgtM0U1KXt2YXIgbD1jYygpO2c9bCYmYk4obCxOYigpKT9sOnZvaWQgMDtnJiZWKGEsSC5KLmhkLCEwKX1lbHNlIGcmJmYubGFzdEpvaW5lZFRpbWVNczxoLTZFNCYmYk4oZi5qb2luSWQsaCkmJlYoYSxILkouaGQsITApO2cmJk0oNDc0KSYmClYoYSxILkouWGcsZyl9fTt2YXIgZE49ZnVuY3Rpb24oYSl7VihhLEguSi53ZixPKGEuTSxGLkQudWMpIT09ITEpO1YoYSxILkouR2EsTEsoYSkpO1YoYSxILkouWGUsTyhhLk0sRi5ELm1iKSE9bnVsbCYmTyhhLk0sRi5ELm1iKSE9PSExKTtWKGEsSC5KLndkLFN0KGEuTSkpfTt2YXIgZU49e3pxOntVdDoiY2QiLGZwOiJjZSIsVnQ6ImNmIixXdDoiY3BmIixYdDoiY3UifX07dmFyIGZOPWZ1bmN0aW9uKGEpe3ZhciBiPWVOLnpxLmZwLGM9TyhhLk0sRi5ELkNiKTtSKGEsRi5ELmVkKXx8VShhLEYuRC5lZCx7fSk7UihhLEYuRC5lZClbYl09Y307ZnVuY3Rpb24gZ04oYSxiKXtiPWI9PT12b2lkIDA/ITA6Yjt2YXIgYz13YihyYi5HVEFHX0VWRU5UX0ZFQVRVUkVfQ0hBTk5FTHx8W10pO2MmJihVKGEsRi5ELlZmLGMpLGImJnViKCkpfTt2YXIgaE49ZnVuY3Rpb24oYSl7dmFyIGI9YS5NLmdldE1lcmdlZFZhbHVlcyhGLkQuVGEpO2ImJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSxiKX07dmFyIGlOPWZ1bmN0aW9uKGEpe3ZhciBiPU9wKCExKTtVKGEsRi5ELk1lLGIpfTt2YXIgak49ZnVuY3Rpb24oYSl7UShhLEguSi53ZCk/VShhLEYuRC5kZSwiMCIpOlUoYSxGLkQuZGUsIjEiKX07dmFyIGtOPWZ1bmN0aW9uKGEsYil7aWYoYj09PXZvaWQgMHx8Yil7dmFyIGM9Vk0oKTtjIT09dm9pZCAwJiZVKGEsRi5ELmtnLGN8fCJlcnJvciIpfXZhciBkPUx0KCk7ZCYmVShhLEYuRC5LZSxkKTt2YXIgZT1LdCgpO2UmJlUoYSxGLkQuT2UsZSl9O3ZhciBsTj1mdW5jdGlvbihhKXt2YXIgYj1ubShqbS5iYS5raiksYz1FKDUpO2ImJmJbY10mJmEubWVyZ2VIaXREYXRhRm9yS2V5KEYuRC5UYSx7cmV0cnk6IjEifSl9O3ZhciBtTj1mdW5jdGlvbihhKXtVcSghMSkuX3VwPT09IjEiJiZVKGEsRi5ELktpLCIxIil9Owp2YXIgbk49ZnVuY3Rpb24oYSxiLGMpe2lmKGEhPT12b2lkIDApcmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YS5tYXAoZnVuY3Rpb24oKXtyZXR1cm57bW9kZToibSIsbG9jYXRpb246YixzZWxlY3RvcjpjfX0pOnttb2RlOiJtIixsb2NhdGlvbjpiLHNlbGVjdG9yOmN9fSxvTj1mdW5jdGlvbihhLGIsYyxkKXtpZighYylyZXR1cm4hMTtmb3IodmFyIGU9U3RyaW5nKGMudmFsdWUpLGYsZz12b2lkIDAsaD1lLnJlcGxhY2UoL1xbIj8nPy9nLCIuIikucmVwbGFjZSgvIj8nP1xdL2csIiIpLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKHUpe3JldHVybiB1LnRyaW0oKX0pLmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdSYmIVNiKHUsIiMiKSYmIVNiKHUsIi4iKX0pLGw9MDtsPGgubGVuZ3RoO2wrKyl7dmFyIG49aFtsXTtpZihTYihuLCJkYXRhTGF5ZXIuIikpZj11QShuLnN1YnN0cmluZygxMCkpLGc9bk4oZiwiZCIsbik7ZWxzZXt2YXIgcD1uLnNwbGl0KCIuIik7Zj1BW3Auc2hpZnQoKV07CmZvcih2YXIgcT0wO3E8cC5sZW5ndGg7cSsrKWY9ZiYmZltwW3FdXTtnPW5OKGYsImoiLG4pfWlmKGYhPT12b2lkIDApYnJlYWt9aWYoZj09PXZvaWQgMCl0cnl7dmFyIHI9Qi5xdWVyeVNlbGVjdG9yQWxsKGUpO2lmKHImJnIubGVuZ3RoPjApe2Y9W107Zm9yKHZhciB0PTA7dDxyLmxlbmd0aCYmdDwoYj09PSJlbWFpbCJ8fGI9PT0icGhvbmVfbnVtYmVyIj81OjEpO3QrKylmLnB1c2goZmQoclt0XSl8fExiKHJbdF0udmFsdWUpKTtmPWYubGVuZ3RoPT09MT9mWzBdOmY7Zz1uTihmLCJjIixlKX19Y2F0Y2godSl7UCgxNDkpfXJldHVybiBmPyhhW2JdPWYsZCYmZyYmKGRbYl09ZyksITApOiExfTsKdmFyIHBOPWZ1bmN0aW9uKGEpe2lmKGRJKGEsImNjZF9hZGRfMXBfZGF0YSIsITEpJiZYbyhmcCkpe3ZhciBiPWEuTS5pYltGLkQubG1dO2lmKENkKGIpJiZiLmVuYWJsZV9jb2RlKXt2YXIgYz1PKGEuTSxGLkQuQWMpO2lmKGM9PT1udWxsKVYoYSxILkouR24sbnVsbCk7ZWxzZSBpZihiLmVuYWJsZV9jb2RlJiZDZChjKSYmKFp2KGMpLFYoYSxILkouR24sYykpLENkKGIuc2VsZWN0b3JzKSl7dmFyIGQ9SC5KLmlyLGU7dmFyIGY9Yi5zZWxlY3RvcnMsZz1NKDUyMyk7Zz1nPT09dm9pZCAwPyExOmc7aWYoZil7dmFyIGg9e30sbD0hMSxuPXt9O2w9b04oaCwiZW1haWwiLGYuZW1haWwsbil8fGw7bD1vTihoLCJwaG9uZV9udW1iZXIiLGYucGhvbmUsbil8fGw7aC5hZGRyZXNzPVtdO2Zvcih2YXIgcD1mLm5hbWVfYW5kX2FkZHJlc3N8fFtdLHE9MDtxPHAubGVuZ3RoO3ErKyl7dmFyIHI9e30sdD17fTtsPW9OKHIsImZpcnN0X25hbWUiLHBbcV0uZmlyc3RfbmFtZSx0KXx8bDtsPW9OKHIsCiJsYXN0X25hbWUiLHBbcV0ubGFzdF9uYW1lLHQpfHxsO2w9b04ociwic3RyZWV0IixwW3FdLnN0cmVldCx0KXx8bDtsPW9OKHIsImNpdHkiLHBbcV0uY2l0eSx0KXx8bDtsPW9OKHIsInJlZ2lvbiIscFtxXS5yZWdpb24sdCl8fGw7bD1vTihyLCJjb3VudHJ5IixwW3FdLmNvdW50cnksdCl8fGw7bD1vTihyLCJwb3N0YWxfY29kZSIscFtxXS5wb3N0YWxfY29kZSx0KXx8bDtoLmFkZHJlc3MucHVzaChyKTtnJiYoci5fdGFnX21ldGFkYXRhPXQpfWcmJihoLl90YWdfbWV0YWRhdGE9bik7ZT1sP2g6dm9pZCAwfWVsc2UgZT12b2lkIDA7VihhLGQsZSl9fX19O2Z1bmN0aW9uIEZPKGEsYixjLGQpe31GTy5QPSJpbnRlcm5hbC5leGVjdXRlRXZlbnRQcm9jZXNzb3IiO2Z1bmN0aW9uIEdPKGEpe3ZhciBiO3JldHVybiBVZChiLHRoaXMuVCwxKX1HTy5QPSJpbnRlcm5hbC5leGVjdXRlSmF2YXNjcmlwdFN0cmluZyI7ZnVuY3Rpb24gSE8oYSl7dmFyIGI7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBjPUE7dHJ5e2I9S2ooYy5lc2NhcGUoYy5hdG9iKGEpKSl9Y2F0Y2goZCl7cmV0dXJufXJldHVybiBifTtmdW5jdGlvbiBJTyhhKXt2YXIgYj0iIjtyZXR1cm4gYn1JTy5QPSJpbnRlcm5hbC5nZW5lcmF0ZUNsaWVudElkIjtmdW5jdGlvbiBKTyhhKXt2YXIgYj17fTtyZXR1cm4gVWQoYil9Sk8uUD0iaW50ZXJuYWwuZ2V0QWRzQ29va2llV3JpdGluZ09wdGlvbnMiO2Z1bmN0aW9uIEtPKGEsYil7dmFyIGM9ITE7cmV0dXJuIGN9S08uUD0iaW50ZXJuYWwuZ2V0QWxsb3dBZFBlcnNvbmFsaXphdGlvbiI7ZnVuY3Rpb24gTE8oKXt2YXIgYTtyZXR1cm4gYX1MTy5QPSJpbnRlcm5hbC5nZXRBbmRSZXNldEV2ZW50VXNhZ2UiO2Z1bmN0aW9uIE1PKGEsYil7Yj1iPT09dm9pZCAwPyEwOmI7dmFyIGM7cmV0dXJuIGN9TU8uUD0iaW50ZXJuYWwuZ2V0QXVpZCI7ZnVuY3Rpb24gTk8oKXt2YXIgYT1bXTtyZXR1cm4gVWQoYSl9Tk8uUD0iaW50ZXJuYWwuZ2V0Q29udGFpbmVySWRzIjtmdW5jdGlvbiBPTygpe3ZhciBhPW5ldyBrYjtMKHRoaXMsInJlYWRfY29udGFpbmVyX2RhdGEiKSxhLnNldCgiY29udGFpbmVySWQiLGlnKSxhLnNldCgidmVyc2lvbiIsa2cpLGEuc2V0KCJlbnZpcm9ubWVudE5hbWUiLGpnKSxhLnNldCgiZGVidWdNb2RlIixsZyksYS5zZXQoInByZXZpZXdNb2RlIixtZy5QbyksYS5zZXQoImVudmlyb25tZW50TW9kZSIsbWcuS3IpLGEuc2V0KCJmaXJzdFBhcnR5U2VydmluZyIsYWsoKSksYS5zZXQoImNvbnRhaW5lclVybCIsS2MpLGEuc2V0KCJpc0dvb2dsZU9ubHlNb2RlIixJZig2MikpLGEuWmEoKTtyZXR1cm4gYX1PTy5wdWJsaWNOYW1lPSJnZXRDb250YWluZXJWZXJzaW9uIjtmdW5jdGlvbiBQTyhhLGIpe2I9Yj09PXZvaWQgMD8hMDpiO3ZhciBjO3JldHVybiBjfVBPLnB1YmxpY05hbWU9ImdldENvb2tpZVZhbHVlcyI7ZnVuY3Rpb24gUU8oKXt2YXIgYT0iIjtyZXR1cm4gYX1RTy5QPSJpbnRlcm5hbC5nZXRDb3JlUGxhdGZvcm1TZXJ2aWNlc1BhcmFtIjtmdW5jdGlvbiBSTygpe3JldHVybiB5bSgpfVJPLlA9ImludGVybmFsLmdldENvdW50cnlDb2RlIjtmdW5jdGlvbiBTTygpe3ZhciBhPVtdO2E9dGsoKTtyZXR1cm4gVWQoYSl9U08uUD0iaW50ZXJuYWwuZ2V0RGVzdGluYXRpb25JZHMiO2Z1bmN0aW9uIFRPKGEpe3ZhciBiPW5ldyBrYjtyZXR1cm4gYn1UTy5QPSJpbnRlcm5hbC5nZXREZXZlbG9wZXJJZHMiO2Z1bmN0aW9uIFVPKGEpe3ZhciBiO3JldHVybiBifVVPLlA9ImludGVybmFsLmdldEVjc2lkQ29va2llVmFsdWUiO2Z1bmN0aW9uIFZPKGEsYil7dmFyIGM9bnVsbDtyZXR1cm4gY31WTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50QXR0cmlidXRlIjtmdW5jdGlvbiBXTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVdPLlA9ImludGVybmFsLmdldEVsZW1lbnRCeUlkIjtmdW5jdGlvbiBYTyhhKXt2YXIgYj0iIjtyZXR1cm4gYn1YTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50SW5uZXJUZXh0IjtmdW5jdGlvbiBZTyhhKXt2YXIgYj1udWxsO3JldHVybiBifVlPLlA9ImludGVybmFsLmdldEVsZW1lbnRQYXJlbnQiO2Z1bmN0aW9uIFpPKGEpe3ZhciBiPW51bGw7cmV0dXJuIGJ9Wk8uUD0iaW50ZXJuYWwuZ2V0RWxlbWVudFByZXZpb3VzU2libGluZyI7ZnVuY3Rpb24gJE8oYSxiKXt2YXIgYz1udWxsO3JldHVybiBVZChjKX0kTy5QPSJpbnRlcm5hbC5nZXRFbGVtZW50UHJvcGVydHkiO2Z1bmN0aW9uIGFQKGEpe3ZhciBiO3JldHVybiBifWFQLlA9ImludGVybmFsLmdldEVsZW1lbnRWYWx1ZSI7ZnVuY3Rpb24gYlAoYSl7dmFyIGI9MDtyZXR1cm4gYn1iUC5QPSJpbnRlcm5hbC5nZXRFbGVtZW50VmlzaWJpbGl0eVJhdGlvIjtmdW5jdGlvbiBjUChhKXt2YXIgYj1udWxsO3JldHVybiBifWNQLlA9ImludGVybmFsLmdldEVsZW1lbnRzQnlDc3NTZWxlY3RvciI7CmZ1bmN0aW9uIGRQKGEpe3ZhciBiO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtMKHRoaXMsInJlYWRfZXZlbnRfZGF0YSIsYSk7dmFyIGM7YTp7dmFyIGQ9YSxlPVhGKHRoaXMpLm9yaWdpbmFsRXZlbnREYXRhO2lmKGUpe2Zvcih2YXIgZj1lLGc9e30saD17fSxsPXt9LG49W10scD1kLnNwbGl0KCJcXFxcIikscT0wO3E8cC5sZW5ndGg7cSsrKXtmb3IodmFyIHI9cFtxXS5zcGxpdCgiXFwuIiksdD0wO3Q8ci5sZW5ndGg7dCsrKXtmb3IodmFyIHU9clt0XS5zcGxpdCgiLiIpLHY9MDt2PHUubGVuZ3RoO3YrKyluLnB1c2godVt2XSksdiE9PXUubGVuZ3RoLTEmJm4ucHVzaChsKTt0IT09ci5sZW5ndGgtMSYmbi5wdXNoKGgpfXEhPT1wLmxlbmd0aC0xJiZuLnB1c2goZyl9Zm9yKHZhciB4PVtdLHk9IiIsej1tKG4pLEM9ei5uZXh0KCk7IUMuZG9uZTtDPQp6Lm5leHQoKSl7dmFyIEQ9Qy52YWx1ZTtEPT09bD8oeC5wdXNoKHkpLHk9IiIpOnk9RD09PWc/eSsiXFwiOkQ9PT1oP3krIi4iOnkrRH15JiZ4LnB1c2goeSk7Zm9yKHZhciBJPW0oeCksRz1JLm5leHQoKTshRy5kb25lO0c9SS5uZXh0KCkpe2lmKGY9PW51bGwpe2M9dm9pZCAwO2JyZWFrIGF9Zj1mW0cudmFsdWVdfWM9Zn1lbHNlIGM9dm9pZCAwfWI9VWQoYyx0aGlzLlQsMSk7cmV0dXJuIGJ9ZFAuUD0iaW50ZXJuYWwuZ2V0RXZlbnREYXRhIjtmdW5jdGlvbiBlUChhKXt2YXIgYj1udWxsO2lmKCFsaChhKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIl0sYXJndW1lbnRzKTtMKHRoaXMsInJlYWRfZG9tX2VsZW1lbnRzIiwiY3NzIixhKTt0cnl7dmFyIGM9Qi5xdWVyeVNlbGVjdG9yKGEpO2MmJihiPW5ldyBQZChjKSl9Y2F0Y2goZCl7cmV0dXJuIG51bGx9cmV0dXJuIGJ9ZVAuUD0iaW50ZXJuYWwuZ2V0Rmlyc3RFbGVtZW50QnlDc3NTZWxlY3RvciI7ZnVuY3Rpb24gZlAoKXt2YXIgYTtyZXR1cm4gYX1mUC5QPSJpbnRlcm5hbC5nZXRHc2FFeHBlcmltZW50SWQiO2Z1bmN0aW9uIGdQKCl7cmV0dXJuIG5ldyBQZChQayl9Z1AuUD0iaW50ZXJuYWwuZ2V0SHRtbElkIjtmdW5jdGlvbiBoUCgpe3ZhciBhO3JldHVybiBhfWhQLlA9ImludGVybmFsLmdldElmcmFtaW5nU3RhdGUiO2Z1bmN0aW9uIGlQKGEsYil7dmFyIGM9e307cmV0dXJuIFVkKGMpfWlQLlA9ImludGVybmFsLmdldExpbmtlclZhbHVlRnJvbUxvY2F0aW9uIjtmdW5jdGlvbiBqUCgpe3ZhciBhPW5ldyBrYjtyZXR1cm4gYX1qUC5QPSJpbnRlcm5hbC5nZXRQcml2YWN5U3RyaW5ncyI7ZnVuY3Rpb24ga1AoYSxiKXt2YXIgYztpZighbGgoYSl8fCFsaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwic3RyaW5nIl0sYXJndW1lbnRzKTt2YXIgZD0kSChhKXx8e307Yz1VZChkW2JdLHRoaXMuVCk7cmV0dXJuIGN9a1AuUD0iaW50ZXJuYWwuZ2V0UHJvZHVjdFNldHRpbmdzUGFyYW1ldGVyIjtmdW5jdGlvbiBsUChhLGIpe3ZhciBjO2lmKCFsaChhKXx8IXBoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJib29sZWFufHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7TCh0aGlzLCJnZXRfdXJsIiwicXVlcnkiLGEpO3ZhciBkPUxqKFJqKEEubG9jYXRpb24uaHJlZiksInF1ZXJ5IiksZT1JaihkLGEsYik7Yz1VZChlLHRoaXMuVCk7cmV0dXJuIGN9bFAucHVibGljTmFtZT0iZ2V0UXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBtUChhLGIpe3ZhciBjO3JldHVybiBjfW1QLnB1YmxpY05hbWU9ImdldFJlZmVycmVyUXVlcnlQYXJhbWV0ZXJzIjtmdW5jdGlvbiBuUChhKXt2YXIgYj0iIjtyZXR1cm4gYn1uUC5wdWJsaWNOYW1lPSJnZXRSZWZlcnJlclVybCI7ZnVuY3Rpb24gb1AoKXtyZXR1cm4gem0oKX1vUC5QPSJpbnRlcm5hbC5nZXRSZWdpb25Db2RlIjtmdW5jdGlvbiBwUChhLGIpe3ZhciBjO2lmKCFsaChhKXx8IWxoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJzdHJpbmciXSxhcmd1bWVudHMpO3ZhciBkPWVEKGEpO2M9VWQoZFtiXSx0aGlzLlQpO3JldHVybiBjfXBQLlA9ImludGVybmFsLmdldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gcVAoYSxiKXt2YXIgYz1udWxsOwpyZXR1cm4gY31xUC5QPSJpbnRlcm5hbC5nZXRTY29wZWRFbGVtZW50c0J5Q3NzU2VsZWN0b3IiO2Z1bmN0aW9uIHJQKCl7dmFyIGE9bmV3IGtiO2Euc2V0KCJ3aWR0aCIsMCk7YS5zZXQoImhlaWdodCIsMCk7cmV0dXJuIGF9clAuUD0iaW50ZXJuYWwuZ2V0U2NyZWVuRGltZW5zaW9ucyI7ZnVuY3Rpb24gc1AoKXt2YXIgYT0iIjtyZXR1cm4gYX1zUC5QPSJpbnRlcm5hbC5nZXRUb3BTYW1lRG9tYWluVXJsIjtmdW5jdGlvbiB0UCgpe3ZhciBhPSIiO3JldHVybiBhfXRQLlA9ImludGVybmFsLmdldFRvcFdpbmRvd1VybCI7ZnVuY3Rpb24gdVAoYSl7dmFyIGI9IiI7aWYoIW1oKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmd8dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtMKHRoaXMsImdldF91cmwiLGEpO2I9TGooUmooQS5sb2NhdGlvbi5ocmVmKSxhKTtyZXR1cm4gYn11UC5wdWJsaWNOYW1lPSJnZXRVcmwiO2Z1bmN0aW9uIHZQKCl7TCh0aGlzLCJnZXRfdXNlcl9hZ2VudCIpO3JldHVybiBIYy51c2VyQWdlbnR9dlAucHVibGljTmFtZT0iZ2V0VXNlckFnZW50Ijt2UC5QPSJpbnRlcm5hbC5nZXRVc2VyQWdlbnQiO2Z1bmN0aW9uIHdQKCl7dmFyIGE7cmV0dXJuIGE/VWQoRU0oYSkpOmF9d1AuUD0iaW50ZXJuYWwuZ2V0VXNlckFnZW50Q2xpZW50SGludHMiO3ZhciB5UD1mdW5jdGlvbihhKXt2YXIgYj1hLmV2ZW50TmFtZT09PUYuRC5zYyYmRWwoKSYmYmsoWksoYSkpLGM9UShhLEguSi5kbiksZD1RKGEsSC5KLktrKSxlPVEoYSxILkoubWcpLGY9UShhLEguSi5UZSksZz1RKGEsSC5KLkZjKSxoPVEoYSxILkouaGQpLGw9UShhLEguSi5yZyksbj1RKGEsSC5KLk1oKSxwPVEoYSxILkouTmgpLHE9ISFZSyhhKXx8ISFRKGEsSC5KLnBwKTtyZXR1cm4hKCFuZCgpJiYha2QoKXx8ZXx8cXx8Znx8Z3x8aHx8bHx8cHx8bnx8Ynx8Y3x8IWQmJnhQKCkpfSx4UD1mdW5jdGlvbigpe3JldHVybiBhbCg5LGZ1bmN0aW9uKCl7cmV0dXJuITF9KX07ZnVuY3Rpb24gelAoKXt2YXIgYT1BO3JldHVybiBhLmdhR2xvYmFsPWEuZ2FHbG9iYWx8fHt9fWZ1bmN0aW9uIEFQKGEsYil7dmFyIGM9elAoKTtpZihjLnZpZD09PXZvaWQgMHx8YiYmIWMuZnJvbV9jb29raWUpYy52aWQ9YSxjLmZyb21fY29va2llPWJ9O3ZhciBCUD1bIkdBMSJdOwp2YXIgQ1A9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVEoYSxILkouUGspO2lmKGQ9PT12b2lkIDB8fGM8PWQpVShhLEYuRC5LYixiKSxWKGEsSC5KLlBrLGMpfSxFUD1mdW5jdGlvbihhLGIpe3ZhciBjPVIoYSxGLkQuS2IpO2lmKE8oYS5NLEYuRC5aYykmJk8oYS5NLEYuRC5ZYyl8fGImJmM9PT1iKXJldHVybiBjO2lmKGMpe2M9IiIrYztpZighRFAoYyxhKSlyZXR1cm4gUCgzMSksYS5pc0Fib3J0ZWQ9ITAsIiI7QVAoYyxYbyhGLkQucmEpKTtyZXR1cm4gY31QKDMyKTthLmlzQWJvcnRlZD0hMDtyZXR1cm4iIn0sRlA9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5HYSksYz1iLnByZWZpeCsiX2dhIixkPUJ2KGIucHJlZml4KyJfZ2EiLGIuZG9tYWluLGIucGF0aCxCUCxGLkQucmEpO2lmKCFkKXt2YXIgZT1TdHJpbmcoTyhhLk0sRi5ELklkLCIiKSk7ZSYmZSE9PWMmJihkPUJ2KGUsYi5kb21haW4sYi5wYXRoLEJQLEYuRC5yYSkpfXJldHVybiBkfSxEUD1mdW5jdGlvbihhLGIpe3ZhciBjOwp2YXIgZD1RKGIsSC5KLkdhKSxlPWQucHJlZml4KyJfZ2EiLGY9dXEoZCx2b2lkIDAsdm9pZCAwLEYuRC5yYSk7aWYoTyhiLk0sRi5ELkpkKT09PSExJiZGUChiKT09PWEpYz0hMDtlbHNle3ZhciBnO2c9W0JQWzBdLHRxKGQuZG9tYWluLGQucGF0aCksYV0uam9pbigiLiIpO2M9b3EoZSxnLGYpIT09MX1yZXR1cm4gY307CnZhciBHUD1mdW5jdGlvbihhKXt2YXIgYj0wLGM9MDtyZXR1cm57c3RhcnQ6ZnVuY3Rpb24oKXtiPU5iKCl9LHN0b3A6ZnVuY3Rpb24oKXtjPXRoaXMuZ2V0KCl9LGdldDpmdW5jdGlvbigpe3ZhciBkPTA7YS5WaigpJiYoZD1OYigpLWIpO3JldHVybiBkK2N9fX0sSFA9ZnVuY3Rpb24oKXt0aGlzLkg9dm9pZCAwO3RoaXMuSz0wO3RoaXMuaXNBY3RpdmU9dGhpcy5pc1Zpc2libGU9dGhpcy5OPSExO3RoaXMuWj10aGlzLlI9dm9pZCAwfTtrPUhQLnByb3RvdHlwZTtrLktxPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7aWYoIXRoaXMuSCl7dGhpcy5OPUIuaGFzRm9jdXMoKTt0aGlzLmlzVmlzaWJsZT0hQi5oaWRkZW47dGhpcy5pc0FjdGl2ZT0hMDt2YXIgYz1mdW5jdGlvbihlLGYsZyl7JGMoZSxmLGZ1bmN0aW9uKGgpe2IuSC5zdG9wKCk7ZyhoKTtiLlZqKCkmJmIuSC5zdGFydCgpfSl9LGQ9QTtjKGQsImZvY3VzIixmdW5jdGlvbigpe2IuTj0hMH0pO2MoZCwiYmx1ciIsZnVuY3Rpb24oKXtiLk49CiExfSk7YyhkLCJwYWdlc2hvdyIsZnVuY3Rpb24oZSl7Yi5pc0FjdGl2ZT0hMDtlLnBlcnNpc3RlZCYmUCg1Nik7Yi5aJiZiLlooKX0pO2MoZCwicGFnZWhpZGUiLGZ1bmN0aW9uKCl7Yi5pc0FjdGl2ZT0hMTtiLlImJmIuUigpfSk7YyhCLCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2IuaXNWaXNpYmxlPSFCLmhpZGRlbn0pO2JrKFpLKGEpKSYmIU9jKCkmJmMoZCwiYmVmb3JldW5sb2FkIixmdW5jdGlvbigpe1prKDksITApfSk7dGhpcy5xayghMCk7dGhpcy5LPTB9fTtrLnFrPWZ1bmN0aW9uKGEpe2lmKChhPT09dm9pZCAwPzA6YSl8fHRoaXMuSCl0aGlzLksrPXRoaXMuWWgoKSx0aGlzLkg9R1AodGhpcyksdGhpcy5WaigpJiZ0aGlzLkguc3RhcnQoKX07ay5LdD1mdW5jdGlvbihhKXt2YXIgYj10aGlzLlloKCk7Yj4wJiZVKGEsRi5ELm5oLGIpfTtrLmxzPWZ1bmN0aW9uKGEpe1UoYSxGLkQubmgpO3RoaXMucWsoKTt0aGlzLks9MH07ay5Waj1mdW5jdGlvbigpe3JldHVybiB0aGlzLk4mJgp0aGlzLmlzVmlzaWJsZSYmdGhpcy5pc0FjdGl2ZX07ay5Ycj1mdW5jdGlvbigpe3JldHVybiB0aGlzLksrdGhpcy5ZaCgpfTtrLlloPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuSCYmdGhpcy5ILmdldCgpfHwwfTtrLmh0PWZ1bmN0aW9uKGEpe3RoaXMuUj1hfTtrLkNvPWZ1bmN0aW9uKGEpe3RoaXMuWj1hfTt2YXIgSVA9ZnVuY3Rpb24oYSl7c2IoIkdBNF9FVkVOVCIsYSl9O3ZhciBKUD1mdW5jdGlvbihhKXt2YXIgYixjPVEoYSxILkoud20pO2lmKEFycmF5LmlzQXJyYXkoYykpZm9yKHZhciBkPTA7ZDxjLmxlbmd0aDtkKyspSVAoY1tkXSk7KGI9d2IocmIuR0E0X0VWRU5UfHxbXSkpJiZVKGEsIl9ldSIsYil9Owp2YXIgTVA9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFJlZ0V4cCgiXiIrKCgoYT09bnVsbD92b2lkIDA6YS5wcmVmaXgpfHwiIikrIl9nYV9cXHcrJCIpKSxjPXlxKGZ1bmN0aW9uKHApe3JldHVybiBiLnRlc3QocCl9KSxkPXt9LGU7Zm9yKGUgaW4gYylpZihjLmhhc093blByb3BlcnR5KGUpKXt2YXIgZj1LUChjW2VdKTtpZihmKXt2YXIgZz1icShmLDIpO2lmKGcpe3ZhciBoPUxQKGcpO2lmKGgpe3ZhciBsPXZvaWQgMCxuPSgoKGw9YSk9PW51bGw/dm9pZCAwOmwucHJlZml4KXx8IiIpLmxlbmd0aCs0O2RbIkctIitlLnN1YnN0cmluZyhuKV09aH19fX1yZXR1cm4gZH0sTlA9ZnVuY3Rpb24oYSl7aWYoYSl7dmFyIGI7YTp7dmFyIGM9KFNiKGEsInMiKSYmYS5pbmRleE9mKCIuIik9PT0tMT8iR1MyIjoiR1MxIikrIi4xLiIrYTt0cnl7Yj0kcChjLDIpO2JyZWFrIGF9Y2F0Y2goZCl7fWI9dm9pZCAwfXJldHVybiBifX0sS1A9ZnVuY3Rpb24oYSl7aWYoYSYmYS5sZW5ndGghPT0wKXtmb3IodmFyIGIsCmM9LUluZmluaXR5LGQ9bShhKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtpZihmLnQhPT12b2lkIDApe3ZhciBnPU51bWJlcihmLnQpOyFpc05hTihnKSYmZz5jJiYoYz1nLGI9Zil9fXJldHVybiBifX0senE9ZnVuY3Rpb24oYSl7YSYmKGE9PT0iR1MxIj9JUChKLlUuS20pOmE9PT0iR1MyIiYmSVAoSi5VLkxtKSl9LExQPWZ1bmN0aW9uKGEpe3ZhciBiPU5QKGEpO2lmKGIpe3ZhciBjPU51bWJlcihiLm8pLGQ9TnVtYmVyKGIudCksZT1OdW1iZXIoYi5qfHwwKTtjfHxJUChKLlUuVW0pO2R8fElQKEouVS5UbSk7aXNOYU4oZSkmJklQKEouVS5TbSk7aWYoYyYmZCYmIWlzTmFOKGUpKXt2YXIgZj1iLmgsZz1mJiZmIT09IjAiP1N0cmluZyhmKTp2b2lkIDAsaD1iLmQ/U3RyaW5nKGIuZCk6dm9pZCAwLGw9e307cmV0dXJuIGwucz1TdHJpbmcoYi5zKSxsLm89YyxsLmc9ISFOdW1iZXIoYi5nKSxsLnQ9ZCxsLmQ9aCxsLmo9ZSxsLmw9Yi5sPT09IjEiLApsLmg9ZyxsfX19Owp2YXIgUFA9ZnVuY3Rpb24oYSxiLGMpe2lmKCFiKXJldHVybiBhO2lmKCFhKXJldHVybiBiO3ZhciBkPUxQKGEpO2lmKCFkKXJldHVybiBiO3ZhciBlLGY9SWIoKGU9TyhjLk0sRi5ELnloKSkhPW51bGw/ZTozMCksZz1RKGMsSC5KLkViKTtpZighKE1hdGguZmxvb3IoZy8xRTMpPmQudCtmKjYwKSlyZXR1cm4gYTt2YXIgaD1MUChiKTtpZighaClyZXR1cm4gYTtoLm89ZC5vKzE7dmFyIGw7cmV0dXJuKGw9T1AoaCkpIT1udWxsP2w6Yn0sUlA9ZnVuY3Rpb24oYSxiKXt2YXIgYz1RKGIsSC5KLkdhKSxkPVFQKGIsYyksZT1OUChhKTtpZighZSlyZXR1cm4hMTt2YXIgZj11cShjfHx7fSx2b2lkIDAsdm9pZCAwLHZxLmdldCgyKSk7b3EoZCx2b2lkIDAsZik7cmV0dXJuIEFxKGQsZSwyLGMpIT09MX0sU1A9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5HYSksYzt2YXIgZD1RUChhLGIpLGU7Yjp7dmFyIGY9enEsZz1acFsyXTtpZihnKXt2YXIgaCxsPXJxKGIuZG9tYWluKSxuPXNxKGIucGF0aCksCnA9T2JqZWN0LmtleXMoZy5qaSkscT12cS5nZXQoMikscjtpZihoPShyPWdxKGQsbCxuLHAscSkpPT1udWxsP3ZvaWQgMDpyLkJyKXt2YXIgdD0kcChoLDIsZik7ZT10P3hxKHQpOnZvaWQgMDticmVhayBifX1lPXZvaWQgMH1pZihlKXt2YXIgdT13cShkLDIsenEpO2lmKHUmJnUubGVuZ3RoPjEpe0lQKEouVS5KbSk7dmFyIHY9S1AodSk7diYmdi50IT09ZS50JiYoSVAoSi5VLk1tKSxlPXYpfWM9YnEoZSwyKX1lbHNlIGM9dm9pZCAwO3JldHVybiBjfSxUUD1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLkViKSxjPXt9O2Mucz1SKGEsRi5ELnhjKTtjLm89UihhLEYuRC5BaCk7dmFyIGQ7ZD1SKGEsRi5ELnpoKTt2YXIgZT0oYy5nPWQsYy50PU1hdGguZmxvb3IoYi8xRTMpLGMuZD1RKGEsSC5KLm9nKSxjLmo9UShhLEguSi5wZyl8fDAsYy5sPSEhUShhLEguSi5ybSksYy5oPVIoYSxGLkQub2gpLGMpO3JldHVybiBPUChlKX0sT1A9ZnVuY3Rpb24oYSl7aWYoYS5zJiZhLm8pe3ZhciBiPQp7fSxjPShiLnM9YS5zLGIubz1TdHJpbmcoYS5vKSxiLmc9SWIoYS5nKT8iMSI6IjAiLGIudD1TdHJpbmcoYS50KSxiLmo9U3RyaW5nKGEuaiksYi5sPWEubD8iMSI6IjAiLGIuaD1hLmh8fCIwIixiLmQ9YS5kLGIpO3JldHVybiBicShjLDIpfX0sUVA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5wcmVmaXgrIl9nYV8iK2EudGFyZ2V0Lmlkc1tkQ1s2XV19Owp2YXIgVVA9ZnVuY3Rpb24oKXtyZXR1cm4gYWwoMixmdW5jdGlvbigpe3JldHVybiExfSl9LFZQPWZ1bmN0aW9uKGEpe3ZhciBiPU8oYS5NLEYuRC5EYiksYz1hLk0uaWJbRi5ELkRiXTtpZihjPT09YilyZXR1cm4gYzt2YXIgZD1FZChiLG51bGwpO2MmJmNbRi5ELkFhXSYmKGRbRi5ELkFhXT0oZFtGLkQuQWFdfHxbXSkuY29uY2F0KGNbRi5ELkFhXSkpO3JldHVybiBkfSxXUD1mdW5jdGlvbihhLGIpe3ZhciBjPVVxKCEwKTtyZXR1cm4gYy5fdXAhPT0iMSI/e306e2NsaWVudElkOmNbYV0semI6Y1tiXX19LFhQPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1VcSghMCksZT1kW2JdO2UmJihDUChhLGUsMiksRFAoZSxhKSk7dmFyIGY9ZFtjXTtmJiZSUChmLGEpO3JldHVybntjbGllbnRJZDplLHpiOmZ9fSxZUD1mdW5jdGlvbigpe3ZhciBhPU5qKEEubG9jYXRpb24sImhvc3QiKSxiPU5qKFJqKEIucmVmZXJyZXIpLCJob3N0Iik7cmV0dXJuIGEmJmI/YT09PWJ8fGEuaW5kZXhPZigiLiIrYik+PQowfHxiLmluZGV4T2YoIi4iK2EpPj0wPyEwOiExOiExfSxaUD1mdW5jdGlvbihhKXtpZighTyhhLk0sRi5ELnpjKSlyZXR1cm57fTt2YXIgYj1RKGEsSC5KLkdhKSxjPWIucHJlZml4KyJfZ2EiLGQ9UVAoYSxiKTticihmdW5jdGlvbigpe3ZhciBlO2lmKFhvKCJhbmFseXRpY3Nfc3RvcmFnZSIpKWU9e307ZWxzZXt2YXIgZj17X3VwOiIxIn0sZztnPVIoYSxGLkQuS2IpO2U9KGZbY109ZyxmW2RdPVRQKGEpLGYpfXJldHVybiBlfSwxKTtyZXR1cm4hWG8oImFuYWx5dGljc19zdG9yYWdlIikmJllQKCk/V1AoYyxkKTp7fX0sJFA9ZnVuY3Rpb24oYSl7dmFyIGI9VlAoYSl8fHt9LGM9UShhLEguSi5HYSksZD1jLnByZWZpeCsiX2dhIixlPVFQKGEsYyksZj17fTtkcihiW0YuRC5YZl0sISFiW0YuRC5BYV0pJiYoZj1YUChhLGQsZSksZi5jbGllbnRJZCYmZi56YiYmWmsoMiwhMCkpO2JbRi5ELkFhXSYmYXIoZnVuY3Rpb24oKXt2YXIgZz17fSxoPUZQKGEpO2gmJihnW2RdPWgpO3ZhciBsPVNQKGEpOwpsJiYoZ1tlXT1sKTt2YXIgbj1jcSgiRlBMQyIsdm9pZCAwLHZvaWQgMCxGLkQucmEpO24ubGVuZ3RoJiYoZy5fZnBsYz1uWzBdKTtyZXR1cm4gZ30sYltGLkQuQWFdLGJbRi5ELmFkXSwhIWJbRi5ELndjXSk7cmV0dXJuIGZ9O3ZhciBhUT1mdW5jdGlvbihhKXtpZighUShhLEguSi5iZSkmJmVrKGEuTSkpe3ZhciBiPVZQKGEpfHx7fSxjPShkcihiW0YuRC5YZl0sISFiW0YuRC5BYV0pP1VxKCEwKS5fZnBsYzp2b2lkIDApfHwoY3EoIkZQTEMiLHZvaWQgMCx2b2lkIDAsRi5ELnJhKS5sZW5ndGg+MD92b2lkIDA6IjAiKTtVKGEsIl9mcGxjIixjKX19O2Z1bmN0aW9uIGJRKGEpeyhiayhaSyhhKSl8fFdqKCkpJiZVKGEsRi5ELm9tLHptKCl8fHltKCkpOyFiayhaSyhhKSkmJldqKCkmJlUoYSxGLkQuWWksIjo6Iil9ZnVuY3Rpb24gY1EoYSl7V2ooKSYmKGJrKFpLKGEpKXx8RG0oKXx8VShhLEYuRC5TbCwhMCkpfTt2YXIgZVE9ZnVuY3Rpb24oYSxiKXtraigiZ3JsIixmdW5jdGlvbigpe3JldHVybiBkUSgpfSkoYil8fChQKDM1KSxhLmlzQWJvcnRlZD0hMCl9LGRRPWZ1bmN0aW9uKCl7dmFyIGE9TmIoKSxiPWErODY0RTUsYz0yMCxkPTVFMztyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIGY9TmIoKTtmPj1iJiYoYj1mKzg2NEU1LGQ9NUUzKTtjPU1hdGgubWluKGMrKGYtYSkvMUUzKjUsMjApO2E9Zjt2YXIgZz0hMTtkPDF8fGM8MXx8KGc9ITAsZC0tLGMtLSk7ZSYmKGUuSHI9ZCxlLnVyPWMpO3JldHVybiBnfX07CnZhciBmUT1mdW5jdGlvbihhKXt2YXIgYj1SKGEsRi5ELlVhKTtyZXR1cm4gTGooUmooYiksImhvc3QiLCEwKX0sZ1E9ZnVuY3Rpb24oYSl7aWYoTyhhLk0sRi5ELldmKSE9PXZvaWQgMClhLmNvcHlUb0hpdERhdGEoRi5ELldmKTtlbHNle3ZhciBiPU8oYS5NLEYuRC5hbSksYyxkO2E6e2lmKFVQKCkpe3ZhciBlPVZQKGEpfHx7fTtpZihlJiZlW0YuRC5BYV0pZm9yKHZhciBmPWZRKGEpLGc9ZVtGLkQuQWFdLGg9MDtoPGcubGVuZ3RoO2grKylpZihnW2hdaW5zdGFuY2VvZiBSZWdFeHApe2lmKGdbaF0udGVzdChmKSl7ZD0hMDticmVhayBhfX1lbHNlIGlmKGYuaW5kZXhPZihnW2hdKT49MCl7ZD0hMDticmVhayBhfX1kPSExfWlmKCEoYz1kKSl7dmFyIGw7aWYobD1iKWE6e2Zvcih2YXIgbj1iLmluY2x1ZGVfY29uZGl0aW9uc3x8W10scD1mUShhKSxxPTA7cTxuLmxlbmd0aDtxKyspaWYobltxXS50ZXN0KHApKXtsPSEwO2JyZWFrIGF9bD0hMX1jPWx9YyYmKFUoYSxGLkQuV2YsIjEiKSwKSVAoSi5VLm5uKSl9fTtmdW5jdGlvbiBoUShhLGIsYyxkKXt2YXIgZTtpZigobmQoKXx8a2QoKSkmJlhqKCkmJlhqKCkhPT0iLyIpe3ZhciBmPVJqKGEpO2U9SWYoNTApJiZkJiZUYihmLnBhdGhuYW1lLCIvZy9jb2xsZWN0Iik/MjooZHx8IVdqKCl8fERtKCk/MDpUYihmLnBhdGhuYW1lLCIvZ2EvZy9jIil8fFRiKGYucGF0aG5hbWUsIi9hZy9nL2MiKSk/MTowfWVsc2UgZT0wO3N3aXRjaChlKXtjYXNlIDI6dmFyIGc7aWYoTSg1NDYpKXt2YXIgaD1UYihhLCIvZy9jb2xsZWN0Iik/YS5zdWJzdHJpbmcoMCxhLmxlbmd0aC0xMCk6YSxsPWlRKCksbj1oK2wscD1qUSgiL2cvY29sbGVjdCIsYixjKTtnPXtJYzpuLGtmOiIiLGJvZHk6cH19ZWxzZSBnPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gZztjYXNlIDE6dmFyIHE7aWYoTSg1NDcpKXt2YXIgcj1pUSgpLHQ9YS5pbmRleE9mKHIpLHU9YS5zdWJzdHJpbmcoMCx0KStyLHY9alEoYS5zdWJzdHJpbmcodCtyLmxlbmd0aC0xKSxiLGMpO3E9e0ljOnUsa2Y6IiIsCmJvZHk6dn19ZWxzZSBxPXtJYzphLGtmOmIsYm9keTpjfTtyZXR1cm4gcTtkZWZhdWx0OnJldHVybntJYzphLGtmOmIsYm9keTpjfX19ZnVuY3Rpb24gaVEoKXt2YXIgYT1YaigpO2lmKCFhKXJldHVybiIiO1NiKGEsIi8iKXx8KGE9Ii8iK2EpO1RiKGEsIi8iKXx8KGErPSIvIik7cmV0dXJuIGF9ZnVuY3Rpb24galEoYSxiLGMpe3ZhciBkPVthXTtiJiZkLnB1c2goIj8iLGIpO2MmJmQucHVzaCgiXHJcbiIsYyk7cmV0dXJuIGQuam9pbigiIil9Owp2YXIga1E9ZnVuY3Rpb24oYSxiKXtUdCgpJiYoYS5nY3M9VXQoKSxRKGIsSC5KLkdoKSYmKGEuZ2N1PSIxIikpO2EuZ2NkPVl0KGIuTSk7YS5ucGE9UShiLEguSi53ZCk/IjAiOiIxIjt6bSgpPT09IlVTLUNPIiYmKGEuX25nPSIxIil9LGxRPWZ1bmN0aW9uKGEpe2lmKFEoYSxILkouYmUpKXJldHVybnt1cmw6ZmsoImh0dHBzOi8vd3d3Lm1lcmNoYW50LWNlbnRlci1hbmFseXRpY3MuZ29vZyIsdm9pZCAwLCIiKSsiL21jL2NvbGxlY3QiLGVuZHBvaW50OjIwfTt2YXIgYj1ZaihlayhhLk0pLCIvZy9jb2xsZWN0Iik7aWYoYilyZXR1cm57dXJsOmIsZW5kcG9pbnQ6MTZ9O3ZhciBjO2M9UShhLEguSi5ybikmJiFRKGEsSC5KLkZjKT8xNzoxNjtyZXR1cm57dXJsOk1tW2NdKHZvaWQgMCksZW5kcG9pbnQ6Y319LG1RPXt9O21RW0YuRC5LYl09ImNpZCI7bVFbRi5ELnhpXT0iZ2N1dCI7bVFbRi5ELkZlXT0iYXJlIjttUVtGLkQuamhdPSJwc2NkbCI7bVFbRi5ELk5kXT0iZXhjaWQiO21RW0YuRC5HaV09CiJfZmlkIjttUVtGLkQuT2xdPSJfZ2VvIjttUVtGLkQuWGNdPSJnZGlkIjttUVtGLkQuTGVdPSJfbmciO21RW0YuRC5NZV09ImZybSI7bVFbRi5ELldmXT0iaXIiO21RW0YuRC5TbF09ImZwIjttUVtGLkQudGJdPSJ1bCI7bVFbRi5ELk1pXT0ibmkiO21RW0YuRC5tcV09InBhZSI7bVFbRi5ELnhoXT0iX3JkaSI7bVFbRi5ELmJkXT0ic3IiO21RW0YuRC5RaV09InRlc3Rvbmx5IjttUVtGLkQuUWVdPSJ0aWQiO21RW0YuRC5SaV09InR0IjttUVtGLkQuQmNdPSJlY19tb2RlIjttUVtGLkQuWm1dPSJndG1fdXAiO21RW0YuRC5jZ109InVhYSI7bVFbRi5ELmRnXT0idWFiIjttUVtGLkQuZWddPSJ1YWZ2bCI7bVFbRi5ELmZnXT0idWFtYiI7bVFbRi5ELmdnXT0idWFtIjsKbVFbRi5ELmhnXT0idWFwIjttUVtGLkQuaWddPSJ1YXB2IjttUVtGLkQuamddPSJ1YXciO21RW0YuRC5vbV09InVyIjttUVtGLkQuWWldPSJfdWlwIjttUVtGLkQubHFdPSJfcHJzIjttUVtGLkQuUGRdPSJscHMiO21RW0YuRC5CZV09ImdjbGdzIjttUVtGLkQuRGVdPSJnY2xzdCI7bVFbRi5ELkNlXT0iZ2NsbHAiO3ZhciBuUT17fTtuUVtGLkQuR2ZdPSJjYyI7blFbRi5ELkhmXT0iY2kiO25RW0YuRC5JZl09ImNtIjtuUVtGLkQuSmZdPSJjbiI7blFbRi5ELkxmXT0iY3MiO25RW0YuRC5NZl09ImNrIjtuUVtGLkQuZWJdPSJjdSI7blFbRi5ELlZmXT0iX3R1IjtuUVtGLkQuemFdPSJkbCI7blFbRi5ELllmXT0iZHAiO25RW0YuRC5VYV09ImRyIjtuUVtGLkQuTWJdPSJkdCI7blFbRi5ELnpoXT0ic2VnIjtuUVtGLkQueGNdPQoic2lkIjtuUVtGLkQuQWhdPSJzY3QiO25RW0YuRC5mYl09InVpZCI7dmFyIG9RPXt9O29RW0YuRC5uaF09Il9ldCI7b1FbRi5ELlZjXT0iZWRpZCI7b1FbRi5ELk1kXT0iZXZuaWQiO00oOTQpJiYob1EuX2V1PSJfZXUiKTt2YXIgcFE9e307cFFbRi5ELkdmXT0iY2MiO3BRW0YuRC5IZl09ImNpIjtwUVtGLkQuSWZdPSJjbSI7cFFbRi5ELkpmXT0iY24iO3BRW0YuRC5MZl09ImNzIjtwUVtGLkQuTWZdPSJjayI7dmFyIHFRPXt9LHJRPShxUVtGLkQuQWNdPTEscVEpLHNRPWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKGRhLG1hKXtpZihtYSE9PXZvaWQgMCYmIUJvLmhhc093blByb3BlcnR5KGRhKSl7bWE9PT1udWxsJiYobWE9IiIpO3ZhciBQYTt2YXIgRmE9bWE7ZGEhPT1GLkQub2g/UGE9ITE6UShhLEguSi5sZyl8fGJrKFpLKGEpKT8oZS5lY2lkPUZhLFBhPSEwKTpQYT12b2lkIDA7aWYoIVBhKXt2YXIgcWE9bWE7bWE9PT0hMCYmKHFhPSIxIik7bWE9PT0hMSYmKHFhPSIwIik7cWE9ClN0cmluZyhxYSk7dmFyIGliO2lmKGRhIT09Ri5ELk5kJiZkYSE9PUYuRC5NZHx8TSg1MDQpKWlmKG1RW2RhXSlpYj1tUVtkYV0sdltpYl09cWE7ZWxzZSBpZihuUVtkYV0paWI9blFbZGFdLGdbaWJdPXFhO2Vsc2UgaWYob1FbZGFdKWliPW9RW2RhXSxmW2liXT1xYTtlbHNlIGlmKFNiKGRhLCJfJiIpKWliPWRhLnN1YnN0cmluZygyKSx2W2liXT1xYTtlbHNlIGlmKGRhLmNoYXJBdCgwKT09PSJfIil2W2RhXT1xYTtlbHNle3ZhciBYYjtwUVtkYV0/WGI9ITA6ZGEhPT1GLkQuS2Y/WGI9ITE6KHR5cGVvZiBtYSE9PSJvYmplY3QiJiZ1KGRhLG1hKSxYYj0hMCk7WGJ8fHUoZGEsbWEpfWVsc2UgdShkYSxtYSl9fX12YXIgZT17fSxmPXt9LGc9e307ZS52PSIyIjtlLnRpZD1hLnRhcmdldC5kZXN0aW5hdGlvbklkO2UuZ3RtPWR1KHttYzpRKGEsSC5KLk5iKSxlZjpRKGEsSC5KLkNjKX0pO2UuX3A9JGsoMjUpO2MmJihjLmhhc1VwZHx8Yy5oYWRFcnJvcikmJihlLmVtPWMucGFyYW0pO1EoYSwKSC5KLnJnKSYmKGUuX2dhej0xKTtrUShlLGEpO2F1KCkmJihlLmRtYV9jcHM9WnQoKSk7ZS5kbWE9JHQoKTt2dChFdCgpKSYmKGUudGNmZD1idSgpKTt2YXIgaD1DcChhKTtoJiYoZy50YWdfZXhwPWgpO3ZhciBsPVIoYSxGLkQuWGMpO2wmJihlLmdkaWQ9bCk7Zi5lbj1TdHJpbmcoYS5ldmVudE5hbWUpO2lmKFEoYSxILkoubmcpKXt2YXIgbj1RKGEsSC5KLlltKTtmLl9mdj1uPzI6MX1RKGEsSC5KLkhoKSYmKGYuX25zaT0xKTtpZihRKGEsSC5KLlRlKSl7dmFyIHA9UShhLEguSi5ibik7Zi5fc3M9cD8yOjF9UShhLEguSi5tZykmJihmLl9jPTEpO1EoYSxILkouYWUpJiYoZi5fZWU9MSk7aWYoUShhLEguSi5XbSkpe3ZhciBxPVIoYSxGLkQuSGEpfHxPKGEuTSxGLkQuSGEpO2lmKEFycmF5LmlzQXJyYXkocSkpZm9yKHZhciByPTA7cjxxLmxlbmd0aCYmcjwyMDA7cisrKWZbInByIisocisxKV09dGcocVtyXSl9dmFyIHQ9UihhLEYuRC5WYyk7dCYmKGYuZWRpZD10KTtodChhLGYpO2Zvcih2YXIgdT0KZnVuY3Rpb24oZGEsbWEpe2lmKHR5cGVvZiBtYSE9PSJvYmplY3QifHwhclFbZGFdKXt2YXIgUGE9ImVwLiIrZGEsRmE9ImVwbi4iK2RhO2RhPUFiKG1hKT9GYTpQYTt2YXIgcWE9QWIobWEpP1BhOkZhO2YuaGFzT3duUHJvcGVydHkocWEpJiZkZWxldGUgZltxYV07ZltkYV09U3RyaW5nKG1hKX19LHY9e30seD1tKGV1KGEpKSx5PXgubmV4dCgpOyF5LmRvbmU7eT14Lm5leHQoKSl7dmFyIHo9eS52YWx1ZTtkKHosUihhLHopKX1mb3IodmFyIEM9bShPYmplY3Qua2V5cyh2KS5zb3J0KCkpLEQ9Qy5uZXh0KCk7IUQuZG9uZTtEPUMubmV4dCgpKXt2YXIgST1ELnZhbHVlO2VbSV09dltJXX0oZnVuY3Rpb24oZGEpe2JrKFpLKGEpKSYmdHlwZW9mIGRhPT09Im9iamVjdCImJkdiKGRhfHx7fSxmdW5jdGlvbihtYSxQYSl7dHlwZW9mIFBhIT09Im9iamVjdCImJihlWyJzc3QuIittYV09U3RyaW5nKFBhKSl9KX0pKFIoYSxGLkQub2opKTtidihlLFIoYSxGLkQuZWQpKTt2YXIgRz1SKGEsRi5ELldkKXx8Cnt9O0diKEcsZnVuY3Rpb24oZGEsbWEpe21hIT09dm9pZCAwJiYoKG1hPT09bnVsbCYmKG1hPSIiKSxkYSE9PUYuRC5mYnx8Zy51aWQpP2JbZGFdIT09bWEmJihmWyhBYihtYSk/InVwbi4iOiJ1cC4iKStTdHJpbmcoZGEpXT1TdHJpbmcobWEpLGJbZGFdPW1hKTpnLnVpZD1TdHJpbmcobWEpKX0pO2lmKFdqKCkmJiFEbSgpJiYhYmsoWksoYSkpKXt2YXIgTj1RKGEsSC5KLm9nKTtOP2UuX2dzaWQ9TjplLm5qaWQ9IjEifXZhciBTPVEoYSxILkouVmkpOyhTPT1udWxsP3ZvaWQgMDpTLnZhbHVlKT4wJiYoZS5nYWY9Uy5nZXQoKSk7dmFyIFc9UihhLEYuRC5XYyk7aWYoVylmb3IodmFyIGVhPW0oT2JqZWN0LmtleXMoVykpLGphPWVhLm5leHQoKTshamEuZG9uZTtqYT1lYS5uZXh0KCkpe3ZhciBmYT1qYS52YWx1ZTtmWyJleHQuIitmYV09V1tmYV18fCIifXZhciBzYT1sUShhKTt2Zy5jYWxsKHRoaXMse0JhOmUsdmU6ZyxMajpmfSxzYS51cmwsc2EuZW5kcG9pbnQsWksoYSksdm9pZCAwLAphLnRhcmdldC5kZXN0aW5hdGlvbklkLGEuTS5ldmVudElkLGEuTS5wcmlvcml0eUlkKX07d2Eoc1EsdmcpOwp2YXIgdFE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5yZXBsYWNlKC9cJFx7KFteXH1dKylcfS9nLGZ1bmN0aW9uKGMsZCl7cmV0dXJuIGJbZF18fGN9KX0sdVE9ZnVuY3Rpb24oYSl7dmFyIGI9e30sYz0iIixkPWEucGF0aG5hbWUuaW5kZXhPZigiL2cvY29sbGVjdCIpO2Q+PTAmJihjPWEucGF0aG5hbWUuc3Vic3RyaW5nKDAsZCkpO2IudHJhbnNwb3J0X3VybD1hLnByb3RvY29sKyIvLyIrYS5ob3N0bmFtZStjO3ZhciBlO3RyeXtlPWVuY29kZVVSSUNvbXBvbmVudChjfHwiLyIpfWNhdGNoKGYpe2U9ZW5jb2RlVVJJQ29tcG9uZW50KCIvIil9Yi5lbmNvZGVkX3BhdGg9ZTtyZXR1cm4gYn0sdlE9ZnVuY3Rpb24oYSxiKXtpZighTSg1NDYpKXJldHVybnt1cmw6YSxib2R5OmJ9O3ZhciBjPW0oYS5zcGxpdCgiPyIpKSxkPWMubmV4dCgpLnZhbHVlLGU9Yy5uZXh0KCkudmFsdWUsZj1oUShkLGV8fCIiLGJ8fCIiLCEwKSxnPWYuSWMsaD1mLmtmO2E9aCE9PSIiP2crIj8iK2g6ZztiPWYuYm9keTsKcmV0dXJue3VybDphLGJvZHk6Yn19LHhRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1SaihiKSxlPXVRKGQpLGY9dlEoWGcoZCksYyksZz1mdW5jdGlvbihoKXtxeChmLnVybCxmLmJvZHksbmV3IHdRKGUsaCkpJiZhJiZrbi5yZWdpc3RlcihhLDEsZi51cmwpfTshTSgxMzIpfHxOYygiOyB3diIpfHxOYygiRkJBTiIpfHxOYygiRkJBViIpfHxQYygpP2coKTptTChmLnVybCxmLmJvZHksZSxnKX0sd1E9ZnVuY3Rpb24oYSxiKXtDeC5jYWxsKHRoaXMpO3RoaXMudGVtcGxhdGVzPWE7dGhpcy5OPWJ9O3dhKHdRLEN4KTt3US5wcm90b3R5cGUuWj1mdW5jdGlvbihhKXt2YXIgYj10UShhLHRoaXMudGVtcGxhdGVzKTtyZXR1cm4gdGhpcy5OP2IucmVwbGFjZSgiX2lzX3N3PTAiLHRoaXMuTik6Yn07d1EucHJvdG90eXBlLks9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLlooYSk7Q3gucHJvdG90eXBlLksuY2FsbCh0aGlzLGMsYil9O3dRLnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEsYil7dmFyIGM9CnRoaXMuWihhKTtDeC5wcm90b3R5cGUuSC5jYWxsKHRoaXMsYyxiKX07CnZhciB5UT1mdW5jdGlvbihhKXtyZXR1cm4hU2IoYSxGbSgpKSYmIVNiKGEsR20oKSl9LEFRPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtpZighbmQoKSlyZXR1cm4gelEoYSxiLGMsZCksITA7WW4oYyxiIT09IiI/YSsiPyIrYjphLGQsbmEoT2JqZWN0LCJhc3NpZ24iKS5jYWxsKE9iamVjdCx7fSxlfHx7fSx7UWc6ITB9KSx2b2lkIDAsZil8fHpRKGEsYixjLGQpO3JldHVybiEwfSx6UT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iIT09IiI/YSsiPyIrYjphO2Q/V24oYyxlLGQpOlZuKGMsZSl9LENRPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9YixnPXBkKCk7ZyE9PXZvaWQgMCYmKGYrPSImdGZkPSIrTWF0aC5yb3VuZChnKSk7Yj1mO3ZhciBoPWErIj8iK2I7aWYoIWJrKGQpfHxjayhkKXx8eFAoKSl7dmFyIGw9aFEoYSxiLGMsYmsoZCkpO2E9bC5JYztiPWwua2Y7Yz1sLmJvZHk7QVEoYSxiLGUsYyx2b2lkIDAsQlEoYSxiLGUsYykpfHx6UShhLGIsZSxjKX1lbHNlIHhRKGUsaCxjKTsKYmsoZCkmJk0oNTY0KSYmbmQoKSYmVGIoYSwiL2cvY29sbGVjdCIpJiZBLmZldGNoKGEuc3Vic3RyaW5nKDAsYS5sZW5ndGgtMTApLHttZXRob2Q6IlBPU1QiLGJvZHk6IkNqQU9BVHdjQ0JnTyIsY3JlZGVudGlhbHM6Im9taXQifSl9LEJRPWZ1bmN0aW9uKGEsYixjLGQpe2lmKCF5UShhKSl7dmFyIGU9TW1bNjddKHZvaWQgMCk7aWYoZSlyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZjt2YXIgZz1iLnJlcGxhY2UoL15cPy8sIiIpLGg9TnVtYmVyKElqKGcsImdhZiIsITEpKSxsPTA7TnVtYmVyLmlzSW50ZWdlcihoKSYmKGw9aCk7dmFyIG49bmV3IGVyKGwpO2ZyKG4sMSk7aWYobi52YWx1ZSE9PTApe3ZhciBwLHE9bi5nZXQoKSxyPVJlZ0V4cCgiKF58Wz8mXSlnYWY9W14mXSooJnwkKSIpO3A9ci50ZXN0KGcpP2cucmVwbGFjZShyLCIkMWdhZj0iK3ErIiQyIik6Zy5pbmRleE9mKCI/Iik+PTA/ZysiJmdhZj0iK3E6Z1swXT09PSIvInx8Zy5pbmRleE9mKCI6Ly8iKT49MD9nKyI/Z2FmPSIrCnE6Zy5sZW5ndGg+MD9nKyImZ2FmPSIrcToiZ2FmPSIrcTtmPWIuaW5kZXhPZigiPyIpPT09MD8iPyIrcDpwfWVsc2UgZj12b2lkIDA7QVEoZSxmfHxiLG5hKE9iamVjdCwiYXNzaWduIikuY2FsbChPYmplY3Qse30sYyx7ZW5kcG9pbnQ6Njd9KSxkLGMuZW5kcG9pbnQ9PT0xNz92b2lkIDA6e2NyZWRlbnRpYWxzOiJvbWl0In0pfX19LERRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bXSxlPWZ1bmN0aW9uKGgpe2QucHVzaChoKyI9IitlbmNvZGVVUklDb21wb25lbnQoIiIrYS5CYVtoXSkpfTtkLnB1c2goInY9MiIpO2UoIl9nc2lkIik7ZSgiZ3RtIik7YS5CYS5fZ2VvJiZlKCJfZ2VvIik7dmFyIGY9Imh0dHBzOi8ve2dhNENvbGxlY3Rpb25TdWJkb21haW4ufWdvb2dsZS1hbmFseXRpY3MuY29tL2cvcy9jb2xsZWN0Ii5yZXBsYWNlKCJ7Z2E0Q29sbGVjdGlvblN1YmRvbWFpbi59IiwoYnx8Ind3dyIpKyIuIiksZz1kLmpvaW4oIiYiKTt6UShmLGcse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwKIiIsZW5kcG9pbnQ6NjIsZXZlbnRJZDphLmV2ZW50SWQscHJpb3JpdHlJZDphLnByaW9yaXR5SWR9KTtNbCh7dGFyZ2V0SWQ6U3RyaW5nKGEuQmEudGlkKSxyZXF1ZXN0Ont1cmw6ZisiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLGVuZHBvaW50OjYyfSxxYjpjfSl9LEVRPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0iaHR0cHM6Ly97Z2E0Q29sbGVjdGlvblN1YmRvbWFpbi59YW5hbHl0aWNzLmdvb2dsZS5jb20vZy9zL2NvbGxlY3QiLnJlcGxhY2UoIntnYTRDb2xsZWN0aW9uU3ViZG9tYWluLn0iLGI/YisiLiI6IiIpLGU9W10sZj1mdW5jdGlvbihoKXtlLnB1c2goaCsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KCIiK2EuQmFbaF0pKX07ZigiX2dzaWQiKTtmKCJndG0iKTthLkJhLl9nZW8mJmYoIl9nZW8iKTt2YXIgZz1lLmpvaW4oIiYiKTt6UShkLGcse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDoxOCxldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0pOwpNbCh7dGFyZ2V0SWQ6U3RyaW5nKGEuQmEudGlkKSxyZXF1ZXN0Ont1cmw6ZCsiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLGVuZHBvaW50OjE4fSxxYjpjfSl9LEZRPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtjJiZiLnB1c2goInRhZ19leHA9IitjKTtiLnB1c2goIno9IitEYigpKTtpZighZSl7dmFyIGc9ZCYmU2IoZCwiZ29vZ2xlLiIpJiZkIT09Imdvb2dsZS5jb20iPyJodHRwczovL3d3dy4lL2Fkcy9nYS1hdWRpZW5jZXM/dj0xJnQ9c3Imc2xmX3JkPTEmX3I9NCYiLnJlcGxhY2UoIiUiLGQpOnZvaWQgMDtpZihnKXt2YXIgaD1nK2Iuam9pbigiJiIpO1huKHtkZXN0aW5hdGlvbklkOmEuZGVzdGluYXRpb25JZHx8IiIsZW5kcG9pbnQ6NDcsZXZlbnRJZDphLmV2ZW50SWQscHJpb3JpdHlJZDphLnByaW9yaXR5SWR9LGgpO01sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDpoLHBhcmFtZXRlckVuY29kaW5nOjIsZW5kcG9pbnQ6NDd9LHFiOmZ9KX19fSxHUT0KZnVuY3Rpb24oYSxiLGMsZCl7YyYmYi5wdXNoKCJ0YWdfZXhwPSIrYyk7elEoImh0dHBzOi8vc3RhdHMuZy5kb3VibGVjbGljay5uZXQvZy9jb2xsZWN0Iiwidj0yJiIrYi5qb2luKCImIikse2Rlc3RpbmF0aW9uSWQ6YS5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDoxOSxldmVudElkOmEuZXZlbnRJZCxwcmlvcml0eUlkOmEucHJpb3JpdHlJZH0pO01sKHt0YXJnZXRJZDpTdHJpbmcoYS5CYS50aWQpLHJlcXVlc3Q6e3VybDoiaHR0cHM6Ly9zdGF0cy5nLmRvdWJsZWNsaWNrLm5ldC9nL2NvbGxlY3Q/dj0yJiIrYi5qb2luKCImIikscGFyYW1ldGVyRW5jb2Rpbmc6MixlbmRwb2ludDoxOX0scWI6ZH0pfSxIUT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGModil7cS5wdXNoKHYrIj0iK2VuY29kZVVSSUNvbXBvbmVudCgiIithLkJhW3ZdKSl9dmFyIGQ9Yi54dCxlPWIuQnQsZj1iLkF0LGc9Yi56dCxoPWIuWnIsbD1iLkNzLG49Yi5QcixwPWIuR3Q7aWYoZHx8ZXx8Znx8Zyl7dmFyIHE9CltdO2EuQmEuX25nJiZjKCJfbmciKTthLkJhLm5ncyYmYygibmdzIik7YS5CYS5pYnQmJmMoImlidCIpO2MoInRpZCIpO2MoImNpZCIpO2MoImd0bSIpO2Zvcih2YXIgcj1tKE9GKSx0PXIubmV4dCgpOyF0LmRvbmU7dD1yLm5leHQoKSl7dmFyIHU9dC52YWx1ZTthLkJhW3VdIT1udWxsJiZjKHUpfXEucHVzaCgiYWlwPTEiKTthLnZlLnVpZCYmcS5wdXNoKCJ1aWQ9IitlbmNvZGVVUklDb21wb25lbnQoIiIrYS52ZS51aWQpKTtjKCJkbWEiKTthLkJhLmRtYV9jcHMhPW51bGwmJmMoImRtYV9jcHMiKTthLkJhLmdjcyE9bnVsbCYmYygiZ2NzIik7YygiZ2NkIik7YS5CYS5ucGEhPW51bGwmJmMoIm5wYSIpO2EuQmEuZnJtIT1udWxsJiZjKCJmcm0iKTtkJiZHUShhLHEuc2xpY2UoKSxwLGIucWIpO2UmJkZRKGEscS5zbGljZSgpLHAsaCxsLGIucWIpO2YmJkVRKGEsbixiLnFiKTtnJiZEUShhLG4sYi5xYil9fSxJUT1mdW5jdGlvbigpe3RoaXMuUj0xO3RoaXMuWj17fTt0aGlzLks9LTE7dGhpcy5IPQpuZXcgd2d9O0lRLnByb3RvdHlwZS5OPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcyxkPW5ldyBzUShhLHRoaXMuWixiKSxlPXtldmVudElkOmEuTS5ldmVudElkLHByaW9yaXR5SWQ6YS5NLnByaW9yaXR5SWR9LGY9eVAoYSksZyxoO2YmJnRoaXMuSC5SKGQpfHx0aGlzLmZsdXNoKCk7dmFyIGw9ZiYmdGhpcy5ILmFkZChkKTtpZihsKXtpZih0aGlzLks8MCl7dmFyIG49QSxwPW4uc2V0VGltZW91dCxxO2JrKFpLKGEpKT9KUT8oSlE9ITEscT1LUSk6cT1MUTpxPTVFMzt0aGlzLks9cC5jYWxsKG4sZnVuY3Rpb24oKXtjLmZsdXNoKCl9LHEpfX1lbHNle3ZhciByPXpnKGQsdGhpcy5SKyspLHQ9ci5wYXJhbXMsdT1yLmJvZHk7Zz10O2g9dTtGeSgzLGEuZXZlbnROYW1lKTtDUShkLmJhc2VVcmwsdCx1LGQuTix7ZGVzdGluYXRpb25JZDphLnRhcmdldC5kZXN0aW5hdGlvbklkLGVuZHBvaW50OmQuZW5kcG9pbnQsZXZlbnRJZDpkLmV2ZW50SWQscHJpb3JpdHlJZDpkLnByaW9yaXR5SWR9KTsKdmFyIHY9UShhLEguSi5oZCkseD1RKGEsSC5KLnJnKSx5PVEoYSxILkouTmgpLHo9UShhLEguSi5NaCksQz1PKGEuTSxGLkQudWkpIT09ITEsRD1TdChhLk0pLEk9e3h0OnYsQnQ6eCxBdDp5LHp0OnosWnI6RW0oKSxtdjpDLGx2OkQsQ3M6QW0oKSxxYjplLE06YS5NLFByOkRtKCksR3Q6Q3AoYSl9O0hRKGQsSSl9Zm4uSCYmQXooYS5NLmV2ZW50SWQpO05sKGZ1bmN0aW9uKCl7aWYobCl7dmFyIEc9emcoZCksTj1HLmJvZHk7Zz1HLnBhcmFtcztoPU59cmV0dXJue3RhcmdldElkOmEudGFyZ2V0LmRlc3RpbmF0aW9uSWQscmVxdWVzdDp7dXJsOmQuYmFzZVVybCsiPyIrZyxwYXJhbWV0ZXJFbmNvZGluZzoyLHBvc3RCb2R5OmgsZW5kcG9pbnQ6ZC5lbmRwb2ludH0scWI6ZSxpc0JhdGNoZWQ6ITF9fSl9O0lRLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSl7WUsoYSkmJiF4UCgpP3RoaXMuZmEoYSk6dGhpcy5OKGEpfTtJUS5wcm90b3R5cGUuZmx1c2g9ZnVuY3Rpb24oKXtpZih0aGlzLkguZXZlbnRzLmxlbmd0aCl7dmFyIGE9CkJnKHRoaXMuSCx0aGlzLlIrKyk7Q1EodGhpcy5ILmJhc2VVcmwsYS5wYXJhbXMsYS5ib2R5LHRoaXMuSC5LLHtkZXN0aW5hdGlvbklkOnRoaXMuSC5kZXN0aW5hdGlvbklkfHwiIixlbmRwb2ludDp0aGlzLkguZW5kcG9pbnQsZXZlbnRJZDp0aGlzLkguWixwcmlvcml0eUlkOnRoaXMuSC5mYX0pO3RoaXMuSD1uZXcgd2c7dGhpcy5LPj0wJiYoQS5jbGVhclRpbWVvdXQodGhpcy5LKSx0aGlzLks9LTEpfX07SVEucHJvdG90eXBlLmZhPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1ZSyhhKTtNKDU2OCkmJiFNKDU4NikmJlIoYSxGLkQuQmMpPT09ImEiJiYoYz1jdyhjKSk7aWYoRXcoYykpe3ZhciBkPXN3KGMpO2Q/ZC50aGVuKGZ1bmN0aW9uKGYpe2IuTihhLGYpfSxmdW5jdGlvbigpe2IuTihhKX0pOnRoaXMuTihhKX1lbHNle3ZhciBlPUR3KGMpO3RoaXMuTihhLGUpfX07dmFyIEtRPU5mKDI0LDUwMCksTFE9TmYoNTYsNUUzKSxKUT0hMDt2YXIgTVE9ZnVuY3Rpb24oYSl7dmFyIGI9U3QoYS5NKTtPKGEuTSxGLkQuV2IpPT09ITAmJihiPSExKTtWKGEsSC5KLndkLGIpfTsKdmFyIE5RPWZ1bmN0aW9uKGEsYixjKXtjPT09dm9pZCAwJiYoYz17fSk7aWYoYj09bnVsbClyZXR1cm4gYztpZih0eXBlb2YgYj09PSJvYmplY3QiKWZvcih2YXIgZD1tKE9iamVjdC5rZXlzKGIpKSxlPWQubmV4dCgpOyFlLmRvbmU7ZT1kLm5leHQoKSl7dmFyIGY9ZS52YWx1ZTtOUShhKyIuIitmLGJbZl0sYyl9ZWxzZSBjW2FdPWI7cmV0dXJuIGN9LE9RPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj17fSxjPW0oYSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBlPWQudmFsdWU7YltlXT0hIVhvKGUpfXJldHVybiBifSxRUT1mdW5jdGlvbihhLGIpe3ZhciBjPVBRLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hWG8oZSl9KTtpZihjLmxlbmd0aCl7dmFyIGQ9T1EoYyk7JG8oYyxmdW5jdGlvbigpe2Zvcih2YXIgZT1PUShjKSxmPVtdLGc9bShjKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7dmFyIGw9aC52YWx1ZTshZFtsXSYmZVtsXSYmZi5wdXNoKGwpO2VbbF0mJgooZFtsXT0hMCl9aWYoZi5sZW5ndGgpe1YoYixILkouR2gsITApO3ZhciBuPWYubWFwKGZ1bmN0aW9uKHApe3JldHVybiBMb1twXX0pLmpvaW4oIi4iKTtuJiZXSyhiLCJnY3V0IixuKTtNUShiKTthKGIpfX0pfX0sUlE9ZnVuY3Rpb24oYSl7UihhLEYuRC5XYykmJiFiayhaSyhhKSkmJlUoYSxGLkQuV2MpfSxTUT1mdW5jdGlvbihhKXtiayhaSyhhKSkmJldLKGEsIm5hdnQiLHFkKCkpfSxUUT1mdW5jdGlvbihhKXtiayhaSyhhKSkmJldLKGEsImxwYyIsaXIoKSl9LFVRPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9TyhhLk0sRi5ELldiKSxjO2I9PT0hMCYmKGM9IjEiKTtiPT09ITEmJihjPSIwIik7YyYmV0soYSwicmRwIixjKX19LFZRPWZ1bmN0aW9uKGEsYil7aWYoYmsoWksoYikpKXt2YXIgYz1RKGIsSC5KLm1nKTsoYi5ldmVudE5hbWU9PT0icGFnZV92aWV3Inx8YykmJlFRKGEsYil9fSxXUT1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkmJmEuZXZlbnROYW1lPT09Ri5ELnlmJiYKUShhLEguSi5HaCkpe3ZhciBiPVIoYSxGLkQueGkpO2ImJihXSyhhLCJnY3V0IixiKSxXSyhhLCJzeW4iLDEpKX19LFhRPWZ1bmN0aW9uKGEsYixjKXtpZihhPT09YilyZXR1cm4gV2ooKSYmU2IoYysiLyIsWGooKSsiLyIpPyI3IjoiMSI7aWYoVGIoYSwiLiIrYikpcmV0dXJuIjIiO2lmKFRiKGIsIi4iK2EpKXJldHVybiIzIjt2YXIgZD1hLnNwbGl0KCIuIiksZT1iLnNwbGl0KCIuIiksZj1mdW5jdGlvbihnKXtpZihkLmxlbmd0aDxnfHxlLmxlbmd0aDxnKXJldHVybiExO2Zvcih2YXIgaD0xO2g8PWc7aCsrKWlmKGRbZC5sZW5ndGgtaF0hPT1lW2UubGVuZ3RoLWhdKXJldHVybiExO3JldHVybiEwfTtyZXR1cm4gZigzKT8iNiI6ZigyKT8iNSI6IjQifSxZUT1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkpe3ZhciBiPWVrKGEuTSk7aWYoYil7dmFyIGM9WWooYiwiLyIpLGQ9UmooYyksZT1OaihkLCJob3N0IiksZj1OaihBLmxvY2F0aW9uLCJob3N0Iik7aWYoZSYmZil7dmFyIGc9TmooZCwKInBhdGgiKTthLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEse3NzdGQ6WFEoZSxmLGcpfSl9fX19LFpRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmVihhLEguSi5KYSwhMSl9LCRRPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmKFEoYSxILkouSmEpJiZXSyhhLCJzcCIsMSksUShhLEguSi5JcSkmJldLKGEsInN5biIsMSksUShhLEguSi5QYykmJihXSyhhLCJlbV9ldmVudCIsMSksV0soYSwic3AiLDEpKSl9LGFSPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9JGsoMjUpO2ImJldLKGEsInRmdCIsTnVtYmVyKGIpKX19LGJSPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZSl7dmFyIGY9TlEoRi5ELkFjLGUpO0diKGYsZnVuY3Rpb24oZyxoKXtVKGEsZyxoKX0pfWlmKGJrKFpLKGEpKSl7dmFyIGM9ZEkoYSwiY2NkX2FkZF8xcF9kYXRhIiwhMSk/MTowO1dLKGEsInVkZSIsYyk7dmFyIGQ9TyhhLk0sRi5ELkFjKTtkIT09dm9pZCAwPyhadihkKSxiKGQpLFUoYSxGLkQuQmMsImMiKSk6CmIoUShhLEguSi5ZYSkpO1YoYSxILkouWWEpfX0sY1I9ZnVuY3Rpb24oYSl7aWYoYmsoWksoYSkpKXt2YXIgYj1WTSgpO2ImJldLKGEsInVzX3ByaXZhY3kiLGIpO3ZhciBjPUx0KCk7YyYmV0soYSwiZ2RwciIsYyk7dmFyIGQ9S3QoKTtkJiZXSyhhLCJnZHByX2NvbnNlbnQiLGQpO3ZhciBlPWtGLmdwcFN0cmluZztlJiZXSyhhLCJncHAiLGUpO3ZhciBmPWtGLkg7ZiYmV0soYSwiZ3BwX3NpZCIsZil9fSxkUj1mdW5jdGlvbihhKXtiayhaSyhhKSkmJkVsKCkmJk8oYS5NLEYuRC5tYikmJldLKGEsImFkciIsMSl9LGVSPWZ1bmN0aW9uKGEpe2lmKGJrKFpLKGEpKSl7dmFyIGI9RG0oKTtiJiZXSyhhLCJnY3N1YiIsYil9fSxmUj1mdW5jdGlvbihhKXtpZihiayhaSyhhKSkpe08oYS5NLEYuRC5TYyx2b2lkIDAsNCk9PT0hMSYmV0soYSwibmdzIiwxKTtBbSgpJiZXSyhhLCJnYV9yZCIsMSk7VksoKXx8V0soYSwibmdzdCIsMSk7dmFyIGI9RW0oKTtiJiZXSyhhLCJldGxkIixiKX19LGdSPQpmdW5jdGlvbihhKXt9LGhSPWZ1bmN0aW9uKGEpe2JrKFpLKGEpKSYmRWwoKSYmV0soYSwicm5kIixRTSgpKX0sUFE9W0YuRC5rYSxGLkQubWEsRi5ELlhhXTsKdmFyIGlSPWZ1bmN0aW9uKGEsYil7dmFyIGM7YTp7aWYoIVEoYSxILkouRmMpKXt2YXIgZD1UUChhKTtpZihkKXtpZihSUChkLGEpKXtjPWQ7YnJlYWsgYX1QKDI1KTthLmlzQWJvcnRlZD0hMH19Yz12b2lkIDB9dmFyIGU9YztyZXR1cm57Y2xpZW50SWQ6RVAoYSxiKSx6YjplfX0salI9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1RbyhPKGEuTSxGLkQuS2IpKTtpZihPKGEuTSxGLkQuWmMpJiZPKGEuTSxGLkQuWWMpKWY/Q1AoYSxmLDEpOihQKDEyNyksYS5pc0Fib3J0ZWQ9ITApO2Vsc2V7dmFyIGc9Zj8xOjg7VihhLEguSi5IaCwhMSk7Znx8KGY9RlAoYSksZz0zKTtmfHwoZj1iLGc9NSk7aWYoIWYpe3ZhciBoPVhvKEYuRC5yYSksbD16UCgpO2Y9IWwuZnJvbV9jb29raWV8fGg/bC52aWQ6dm9pZCAwO2c9Nn1mP2Y9IiIrZjooZj1BdigpLGc9NyxWKGEsSC5KLm5nLCEwKSxWKGEsSC5KLkhoLCEwKSk7Q1AoYSxmLGcpfVIoYSxGLkQuS2IpO2lmKCFRKGEsSC5KLkZjKSl7dmFyIG49ClEoYSxILkouRWIpLHA9TWF0aC5mbG9vcihuLzFFMykscT12b2lkIDA7UShhLEguSi5IaCl8fChxPVNQKGEpfHxjKTt2YXIgcj1JYihPKGEuTSxGLkQueWgsMzApKTtyPU1hdGgubWluKDQ3NSxyKTtyPU1hdGgubWF4KDUscik7dmFyIHQ9SWIoTyhhLk0sRi5ELlBpLDFFNCkpLHU9TFAocSk7VihhLEguSi5uZywhMSk7VihhLEguSi5UZSwhMSk7VihhLEguSi5wZywwKTt1JiZ1LmomJlYoYSxILkoucGcsTWF0aC5tYXgoMCx1LmotTWF0aC5tYXgoMCxwLXUudCkpKTt2YXIgdj0hMTtpZighdSl7VihhLEguSi5uZywhMCk7dj0hMDt2YXIgeD17fTt1PSh4LnM9U3RyaW5nKHApLHgubz0xLHguZz0hMSx4LnQ9cCx4Lmw9ITEseC5oPXZvaWQgMCx4KX1wPnUudCtyKjYwJiYodj0hMCx1LnM9U3RyaW5nKHApLHUubysrLHUuZz0hMSx1Lmg9dm9pZCAwKTtpZih2KVYoYSxILkouVGUsITApLGQubHMoYSk7ZWxzZSBpZihkLlhyKCk+dHx8YS5ldmVudE5hbWU9PT1GLkQuc2MpdS5nPSEwO1EoYSxILkoubGcpPwpPKGEuTSxGLkQuZmIpP3UubD0hMDp1Lmw9ITE6dS5sPSExO3ZhciB5PXUuaDtpZihRKGEsSC5KLmxnKXx8YmsoWksoYSkpKXt2YXIgej1PKGEuTSxGLkQub2gpLEM9ej8xOjg7enx8KHo9eSxDPTQpO3p8fCh6PXp2KCksQz03KTt2YXIgRD16LnRvU3RyaW5nKCksST1DLEc9UShhLEguSi50bCk7aWYoRz09PXZvaWQgMHx8STw9RylVKGEsRi5ELm9oLEQpLFYoYSxILkoudGwsSSl9ZT8oYS5jb3B5VG9IaXREYXRhKEYuRC54Yyx1LnMpLGEuY29weVRvSGl0RGF0YShGLkQuQWgsdS5vKSxhLmNvcHlUb0hpdERhdGEoRi5ELnpoLHUuZz8xOjApKTooVShhLEYuRC54Yyx1LnMpLFUoYSxGLkQuQWgsdS5vKSxVKGEsRi5ELnpoLHUuZz8xOjApKTtWKGEsSC5KLnJtLHUubD8xOjApO1dqKCkmJlYoYSxILkoub2csdS5kfHxjYygpKX19Owp2YXIga1I9ZnVuY3Rpb24oYSl7dmFyIGI9YS5pbmRleE9mKCI/IiksYz1iPT09LTE/YTphLnN1YnN0cmluZygwLGIpLGQ9S2ooYyk7ZCYmKGM9ZCk7cmV0dXJuIGI9PT0tMT9jOiIiK2MrYS5zdWJzdHJpbmcoYil9LGxSPWZ1bmN0aW9uKGEpe2lmKCFPKGEuTSxGLkQuWWMpfHwhTyhhLk0sRi5ELlpjKSl7dmFyIGI9YS5jb3B5VG9IaXREYXRhLGM9Ri5ELnphLGQ9IiIsZT1CLmxvY2F0aW9uO2lmKGUpe3ZhciBmPWUucGF0aG5hbWV8fCIiO2YuY2hhckF0KDApIT09Ii8iJiYoZj0iLyIrZik7dmFyIGc9ZS5zZWFyY2h8fCIiO2lmKGdbMF09PT0iPyIpZm9yKHZhciBoPWcuc3Vic3RyaW5nKDEpLnNwbGl0KCImIiksbD0wO2w8aC5sZW5ndGg7KytsKXt2YXIgbj1oW2xdLnNwbGl0KCI9Iik7biYmbi5sZW5ndGg9PT0yJiZuWzBdPT09IndicmFpZCImJihnPWcucmVwbGFjZSgvKFs/Jl0pd2JyYWlkPVteJl0rLywiJDF3YnJhaWQ9IiskYihuWzFdKSkpfWQ9ZS5wcm90b2NvbCsiLy8iK2UuaG9zdG5hbWUrCmYrZ31iLmNhbGwoYSxjLGQsa1IpO3ZhciBwPWEuY29weVRvSGl0RGF0YSxxPUYuRC5VYSxyPXVBKCJndG0uZ3RhZ1JlZmVycmVyLiIrYS50YXJnZXQuZGVzdGluYXRpb25JZCksdD1CLnJlZmVycmVyO3AuY2FsbChhLHEsKHI/IiIrcjp0KXx8dm9pZCAwLGtSKTthLmNvcHlUb0hpdERhdGEoRi5ELk1iLEIudGl0bGUpO2EuY29weVRvSGl0RGF0YShGLkQudGIsKEhjLmxhbmd1YWdlfHwiIikudG9Mb3dlckNhc2UoKSk7dmFyIHU9cUkoKTthLmNvcHlUb0hpdERhdGEoRi5ELmJkLHUud2lkdGgrIngiK3UuaGVpZ2h0KTthLmNvcHlUb0hpdERhdGEoRi5ELllmLHZvaWQgMCxrUik7VE0oKSYmYS5jb3B5VG9IaXREYXRhKEYuRC5QZCwiMSIpfX07dmFyIG5SPWZ1bmN0aW9uKGEpe3ZhciBiPXhDKGEuTSksYz1mdW5jdGlvbihkLGUpe21SW2RdJiZVKGEsZCxlKX07Q2QoYltGLkQuS2ZdKT9HYihiW0YuRC5LZl0sZnVuY3Rpb24oZCxlKXtjKChGLkQuS2YrIl8iK2QpLnRvTG93ZXJDYXNlKCksZSl9KTpHYihiLGMpfSxvUj17fSxtUj0ob1JbRi5ELkdmXT0xLG9SW0YuRC5IZl09MSxvUltGLkQuSWZdPTEsb1JbRi5ELkpmXT0xLG9SW0YuRC5MZl09MSxvUltGLkQuTWZdPTEsb1IpO3ZhciBwUj1mdW5jdGlvbihhKXtpZighYmsoWksoYSkpJiZRKGEsSC5KLm1nKSYmWG8oRi5ELmthKSYmZEkoYSwiZ2E0X2Fkc19saW5rZWQiLCExKSl7dmFyIGI9TEsoYSksYz1IcihiLnByZWZpeCksZD1ScyhjKTtVKGEsRi5ELkJlLGQuRWcpO1UoYSxGLkQuRGUsZC5XaCk7VShhLEYuRC5DZSxkLlVoKX19O3ZhciBxUj1mdW5jdGlvbihhKXt2YXIgYj1PKGEuTSxGLkQuWmMpO2ImJklQKEouVS54bik7UShhLEguSi5QYykmJklQKEouVS5Oayk7dmFyIGM9eWsoemsoKSk7KGJ8fE1rKGMpfHxjJiZjLnBhcmVudCYmYy5jb250ZXh0JiZjLmNvbnRleHQuc291cmNlPT09NSkmJklQKEouVS5mbik7UShhLEguSi5jaikmJklQKEouVS5JbSk7UShhLEguSi5iaikmJklQKEouVS5IbSl9O3ZhciByUj1mdW5jdGlvbihhKXt2YXIgYj1RKGEsSC5KLlZpKXx8bmV3IGVyO1EoYSxILkouYmopJiZRKGEsSC5KLmNqKSYmZnIoYiwyKTtWKGEsSC5KLlZpLGIpfTtmdW5jdGlvbiBzUihhKXthLmNvcHlUb0hpdERhdGEoRi5ELmZiKTt2YXIgYj1PKGEuTSxGLkQuV2QpO2ImJihLQyhiLGZ1bmN0aW9uKCl7fSksVShhLEYuRC5XZCxiKSl9O3ZhciB1Uj1mdW5jdGlvbihhKXtpZih0Ui5Nci5yZXBsYWNlKC9ccysvZywiIikuc3BsaXQoIiwiKS5pbmRleE9mKGEuZXZlbnROYW1lKT49MClhLmlzQWJvcnRlZD0hMDtlbHNle3ZhciBiPVhLKGEpO2ImJmIuYmxhY2tsaXN0ZWQmJihhLmlzQWJvcnRlZD0hMCl9fSx0Uj17TXI6TGYoMzEpfTtmdW5jdGlvbiB2UihhKXt2YXIgYj1mdW5jdGlvbihjKXtyZXR1cm4hIWMmJmMuY29udmVyc2lvbn07VihhLEguSi5tZyxiKFhLKGEpKSk7UShhLEguSi5uZykmJlYoYSxILkouWW0sYihYSyhhLCJmaXJzdF92aXNpdCIpKSk7UShhLEguSi5UZSkmJlYoYSxILkouYm4sYihYSyhhLCJzZXNzaW9uX3N0YXJ0IikpKX07dmFyIHdSPWZ1bmN0aW9uKGEpe0ZvLmhhc093blByb3BlcnR5KGEuZXZlbnROYW1lKSYmKFYoYSxILkouV20sITApLGEuY29weVRvSGl0RGF0YShGLkQuSGEpLGEuY29weVRvSGl0RGF0YShGLkQuZWIpKX07dmFyIHhSPWZ1bmN0aW9uKGEpe1EoYSxILkouYmUpP1YoYSxILkoubGcsITEpOmRJKGEsImNjZF9hZGRfZWNfc3RpdGNoaW5nIiwhMSkmJlYoYSxILkoubGcsITApfTt2YXIgeVI9ZnVuY3Rpb24oYSl7dmFyIGI9UShhLEguSi5wZyk7Yj1ifHwwO3ZhciBjPSEhUShhLEguSi5zYSksZD1iPT09MHx8YztWKGEsSC5KLmVqLGQpO2QmJlYoYSxILkoucGcsNjApfTt2YXIgQVI9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXt9LGM9U3RyaW5nKHpSLmNvb2tpZSkuc3BsaXQoIjsiKSxkPTA7ZDxjLmxlbmd0aDtkKyspe3ZhciBlPWNbZF0uc3BsaXQoIj0iKSxmPWVbMF0udHJpbSgpO2lmKGYmJmEoZikpe3ZhciBnPWUuc2xpY2UoMSkuam9pbigiPSIpLnRyaW0oKTtnJiYoZz1kZWNvZGVVUklDb21wb25lbnQoZykpO3ZhciBoPXZvaWQgMCxsPXZvaWQgMDsoKGg9YilbbD1mXXx8KGhbbF09W10pKS5wdXNoKGcpfX1yZXR1cm4gYn07dmFyIEJSPXdpbmRvdyx6Uj1kb2N1bWVudCxDUj1mdW5jdGlvbihhKXt2YXIgYj1CUi5fZ2FVc2VyUHJlZnM7aWYoYiYmYi5pb28mJmIuaW9vKCl8fHpSLmRvY3VtZW50RWxlbWVudC5oYXNBdHRyaWJ1dGUoImRhdGEtZ29vZ2xlLWFuYWx5dGljcy1vcHQtb3V0Iil8fGEmJkJSWyJnYS1kaXNhYmxlLSIrYV09PT0hMClyZXR1cm4hMDt0cnl7dmFyIGM9QlIuZXh0ZXJuYWw7aWYoYyYmYy5fZ2FVc2VyUHJlZnMmJmMuX2dhVXNlclByZWZzPT0ib28iKXJldHVybiEwfWNhdGNoKGYpe31mb3IodmFyIGQ9QVIoZnVuY3Rpb24oZil7cmV0dXJuIGY9PT0iQU1QX1RPS0VOIn0pLkFNUF9UT0tFTnx8W10sZT0wO2U8ZC5sZW5ndGg7ZSsrKWlmKGRbZV09PSIkT1BUX09VVCIpcmV0dXJuITA7cmV0dXJuIHpSLmdldEVsZW1lbnRCeUlkKCJfX2dhT3B0T3V0RXh0ZW5zaW9uIik/ITA6ITF9O3ZhciBEUj1mdW5jdGlvbihhKXtpZihDUihhLnRhcmdldC5kZXN0aW5hdGlvbklkKSlQKDI4KSxhLmlzQWJvcnRlZD0hMDtlbHNle3ZhciBiPXhrKCk7aWYoYiYmQXJyYXkuaXNBcnJheShiLmRlc3RpbmF0aW9ucykpZm9yKHZhciBjPTA7YzxiLmRlc3RpbmF0aW9ucy5sZW5ndGg7YysrKWlmKENSKGIuZGVzdGluYXRpb25zW2NdKSl7UCgxMjUpO2EuaXNBYm9ydGVkPSEwO2JyZWFrfX19O3ZhciBFUj1mdW5jdGlvbihhKXt2YXIgYj1CLmxvY2F0aW9uLnByb3RvY29sO2IhPT0iaHR0cDoiJiZiIT09Imh0dHBzOiImJihQKDI5KSxhLmlzQWJvcnRlZD0hMCl9O3ZhciBGUj1mdW5jdGlvbihhKXtIYyYmSGMubG9hZFB1cnBvc2U9PT0icHJldmlldyImJihQKDMwKSxhLmlzQWJvcnRlZD0hMCl9O3ZhciBHUj1mdW5jdGlvbihhLGIpe2IuVGomJihWKGEsSC5KLnNhLCEwKSxiLlRqPSExLFdqKCkmJlYoYSxILkoub2csY2MoKSkpfTt2YXIgSFI9ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihjLGQpe0JvW2NdfHxkPT09dm9pZCAwfHxVKGEsYyxkKX1NKDU1MCkmJkdiKGEuTS5XYSxiKTtHYihhLk0uaGIsYik7R2IoYS5NLkVhLGIpfTt2YXIgSVI9ZnVuY3Rpb24oYSl7YS5ldmVudE5hbWU9PT1GLkQud2EmJihPKGEuTSxGLkQuVGQsITApPyhhLk0uRWFbRi5ELk9hXSYmKE0oNTUwKSYmKGEuTS5XYVtGLkQuT2FdPWEuTS5FYVtGLkQuT2FdKSxhLk0uaGJbRi5ELk9hXT1hLk0uRWFbRi5ELk9hXSxhLk0uRWFbRi5ELk9hXT12b2lkIDAsVShhLEYuRC5PYSkpLGEuZXZlbnROYW1lPUYuRC5zYyk6YS5pc0Fib3J0ZWQ9ITApfTsKdmFyIEpSPWZ1bmN0aW9uKGEpe2lmKE0oMTMyKSl7dmFyIGI9WksoYSk7aWYoYmsoYikpaWYoY2soYikpY2soWksoYSkpJiZhLm1lcmdlSGl0RGF0YUZvcktleShGLkQuVGEseyIzcGQiOiIxIn0pO2Vsc2UgaWYoIShOYygiOyB3diIpfHxOYygiRkJBTiIpfHxOYygiRkJBViIpfHxQYygpKSYmWG8oRi5ELnJhKSl7VihhLEguSi5kbiwhMCk7YmsoWksoYSkpJiZXSyhhLCJzd19leHAiLDEpO2E6e2lmKCFNKDEzMil8fCFiayhaSyhhKSl8fGNrKFpLKGEpKSlicmVhayBhO2I6e3ZhciBjPXtvdDpZaihlayhhLk0pLCIvXy9zZXJ2aWNlX3dvcmtlciIpfSxkO2Q9KGM9PT12b2lkIDA/e306Yykub3Q7dmFyIGU9aUwoZCk7aWYoZT09PW51bGx8fCFiZygiaW50ZXJuYWxfc3dfYWxsb3dlZCIsIiIpfHxqTChlLm9yaWdpbikpYnJlYWsgYjsKaWYoIUljKCkpe2dMKCkuSyh2b2lkIDAsdm9pZCAwLDYpO2JyZWFrIGJ9dmFyIGY9bmV3IGtMKGUpO29tKGptLmJhLk9oLHt9KVtlLm9yaWdpbl09Zjt9fX19fTt2YXIgTFI9ZnVuY3Rpb24oYSl7YS5jb3B5VG9IaXREYXRhKEYuRC5PbCk7TyhhLk0sRi5ELnhoKSYmKFUoYSxGLkQueGgsITApLGJrKFpLKGEpKXx8S1IoYSkpfSxLUj1mdW5jdGlvbihhKXt2YXIgYj1GLkQuYmQsYztjfHwoYz1mdW5jdGlvbigpe30pO1IoYSxiKSE9PXZvaWQgMCYmVShhLGIsYyhSKGEsYikpKX07dmFyIE1SPSJnY2xpZCBkY2xpZCBnY2xzcmMgd2JyYWlkIGdicmFpZCBnYWRfc291cmNlIGdhZF9jYW1wYWlnbmlkIHV0bV9zb3VyY2UgdXRtX21lZGl1bSB1dG1fY2FtcGFpZ24gdXRtX3Rlcm0gdXRtX2NvbnRlbnQgdXRtX2lkIi5zcGxpdCgiICIpO2Z1bmN0aW9uIE5SKCl7dmFyIGE9Qi5sb2NhdGlvbixiLGM9YT09bnVsbD92b2lkIDA6KGI9YS5zZWFyY2gpPT1udWxsP3ZvaWQgMDpiLnJlcGxhY2UoIj8iLCIiKSxkO2lmKGMpe2Zvcih2YXIgZT1bXSxmPUpqKGMsITApLGc9bShNUiksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe3ZhciBsPWgudmFsdWUsbj1mW2xdO2lmKG4pZm9yKHZhciBwPTA7cDxuLmxlbmd0aDtwKyspe3ZhciBxPW5bcF07cSE9PXZvaWQgMCYmZS5wdXNoKHtuYW1lOmwsdmFsdWU6cX0pfX1kPWV9ZWxzZSBkPVtdO3JldHVybiBkfTt2YXIgT1I9ZnVuY3Rpb24oYSl7dmFyIGI9TSgyNjYpLGM9TSgyNjcpO2lmKGJ8fGMpe3ZhciBkPVIoYSxGLkQuemEpO2lmKGQmJmQuaW5kZXhPZigiPyIpPT09LTEpe3ZhciBlPU5SKCk7aWYoZS5sZW5ndGghPT0wJiYoYiYmSVAoSi5VLkdtKSxjKSl7SVAoSi5VLkZtKTt2YXIgZj1lLm1hcChmdW5jdGlvbihnKXtyZXR1cm4gZy5uYW1lKyI9IitnLnZhbHVlfSkuam9pbigiJiIpO1UoYSxGLkQuemEsZCsiPyIrZil9fX19O3ZhciBQUj1bRi5ELnJhLEYuRC5rYV0sUVI9W0YuRC5yYSxGLkQua2EsRi5ELm1hXTsKZnVuY3Rpb24gUlIoYSl7dmFyIGIsYz1NKDUwNikmJiFkSShhLCJjY2RfZ2FfYWRzX2lkc19vcHRfb3V0IiwhMSksZD0hIWRJKGEsImdvb2dsZV9uZyIsITEpLGU9WG8oYz9kP1FSOmZwOlBSKSxmO2Y9ZEkoYSxGLkQuVWYsTyhhLk0sRi5ELlVmKSl8fCEhZEkoYSwiZ29vZ2xlX25nIiwhMSk7Yj17aGY6YyxFczpkLEdvOmUsZmY6ZixMZzohIWRJKGEsImdhNF9hZHNfbGlua2VkIiwhMSksYmk6QW0oKSxHajohVksoKSxGczpiayhaSyhhKSksRHM6ISFRKGEsSC5KLmJlKSxHczohIVEoYSxILkouVGUpLHVzOiEhTyhhLk0sRi5ELk5sKSxLczohIVEoYSxILkouZWopLHhnOk8oYS5NLEYuRC5TYyksbnI6TyhhLk0sRi5ELlNjLHZvaWQgMCw0KSxIczohIVEoYSxILkouRmMpfTtWKGEsSC5KLmNqLGIuZmYpO1YoYSxILkouYmosU1IoYikpO2IuaGYmJiFiLmZmJiZiLkxnJiZTUihiKSYmVShhLCJfJmlidCIsIjEiKTtTUihiKSYmYi5HbyYmKGIuaGY/Yi54ZyE9PSExfHxiLkxnOjEpJiZWKGEsCkguSi5ybiwhMCk7Yi5FcyYmIWIuYmkmJlUoYSxGLkQuTGUsMSk7KGIuaGY/Yi54ZzpiLm5yKT09PSExJiZVKGEsIl8mbmdzIiwiMSIpO1YoYSxILkouaGQsVFIoYikmJihiLkdzfHxiLnVzKSk7VihhLEguSi5yZyxUUihiKSYmYi5LcyYmIWIuYmkpfWZ1bmN0aW9uIFNSKGEpe3JldHVybiBhLmhmPyhhLkxnfHxhLmZmKSYmIWEuYmkmJiFhLkdqOmEuZmYmJmEueGchPT0hMSYmIWEuR2omJiFhLmJpfWZ1bmN0aW9uIFRSKGEpe2lmKGEuSHMpcmV0dXJuITE7aWYoYS5oZil7aWYoIWEuZmYmJiFhLkxnKXJldHVybiExfWVsc2UgaWYoIWEuZmYpcmV0dXJuITE7cmV0dXJuIGEuRnN8fGEuRHN8fGEuR2p8fChhLmhmP2EueGc9PT0hMSYmIWEuTGc6YS54Zz09PSExKXx8IWEuR28/ITE6ITB9O3ZhciBVUj1mdW5jdGlvbihhKXtzTCgpJiZVKGEsRi5ELkZlLCIxIil9O3ZhciBWUj1mdW5jdGlvbihhKXt2YXIgYj17cHJlZml4OlN0cmluZyhPKGEuTSxGLkQubmIsIiIpKSxwYXRoOlN0cmluZyhPKGEuTSxGLkQudmMsIi8iKSksZmxhZ3M6U3RyaW5nKE8oYS5NLEYuRC5UYiwiIikpLGRvbWFpbjpTdHJpbmcoTyhhLk0sRi5ELkxiLCJhdXRvIikpLHBkOk51bWJlcihPKGEuTSxGLkQuQ2IsNjMwNzJFMykpfTtWKGEsSC5KLkdhLGIpfTt2YXIgV1I9ZnVuY3Rpb24oYSl7aWYoTSg0MzUpfHxNKDU1Mykpe3ZhciBiPURtKCk7YiYmVihhLEguSi5BcSxiKX19O3ZhciBZUj1mdW5jdGlvbihhKXthLmNvcHlUb0hpdERhdGEoRi5ELlJpKTtmb3IodmFyIGI9TyhhLk0sRi5ELlJsKXx8W10sYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD1iW2NdO2lmKGQucnVsZV9yZXN1bHQpe2EuY29weVRvSGl0RGF0YShGLkQuUmksZC50cmFmZmljX3R5cGUpO0lQKEouVS5Fbik7YnJlYWt9fX07dmFyIFpSPWZ1bmN0aW9uKGEpe2lmKGRJKGEsImdhNF9hZHNfbGlua2VkIiwhMSkmJmEuZXZlbnROYW1lPT09Ri5ELndhKXt2YXIgYj1PKGEuTSxGLkQudWMpIT09ITE7aWYoYil7dmFyIGM9TEsoYSk7Yy5wZCYmKGMucGQ9TWF0aC5taW4oYy5wZCw3Nzc2RTMpKTtQSyh7VG46YixtbzpPbyhPKGEuTSxGLkQuRGIpKSxRbzohIU8oYS5NLEYuRC56YyksVW46Y30pfX19O3ZhciAkUj1mdW5jdGlvbihhKXtWKGEsSC5KLk1oLCExKTtWKGEsSC5KLk5oLCExKTtpZighRG0oKSYmV2ooKSYmIWJrKFpLKGEpKSYmIVEoYSxILkouYmUpJiZRKGEsSC5KLmVqKSl7dmFyIGI9UShhLEguSi5yZyk7UShhLEguSi5vZykmJihiP1YoYSxILkouTmgsITApOlYoYSxILkouTWgsITApKX19O3ZhciBhUz1mdW5jdGlvbihhKXtPKGEuTSxGLkQuemMpJiYoWG8oRi5ELnJhKXx8TyhhLk0sRi5ELktiKXx8VShhLEYuRC5abSwhMCkpO3ZhciBiO3ZhciBjO2M9Yz09PXZvaWQgMD8zOmM7dmFyIGQ9QS5sb2NhdGlvbi5ocmVmO2lmKGQpe3ZhciBlPVJqKGQpLnNlYXJjaC5yZXBsYWNlKCI/IiwiIiksZj1JaihlLCJfZ2wiLCExLCEwKXx8IiI7Yj1mP1ZxKGYsYykhPT12b2lkIDA6ITF9ZWxzZSBiPSExO2ImJmJrKFpLKGEpKSYmV0soYSwiZ2x2IiwxKTtpZihhLmV2ZW50TmFtZSE9PUYuRC53YSlyZXR1cm57fTtPKGEuTSxGLkQuemMpJiZBcyhbImF3IiwiZGMiXSk7Q3MoWyJhdyIsImRjIl0pO3ZhciBnPSRQKGEpLGg9WlAoYSk7cmV0dXJuIE9iamVjdC5rZXlzKGcpLmxlbmd0aD9nOmh9O3ZhciBiUz1mdW5jdGlvbihhKXt2YXIgYj0hMDtiPWI9PT12b2lkIDA/ITE6YjtpZihNKDQyNSkmJiEocGwoKXx8YiYmUShhLEguSi5kail8fGEuZXZlbnROYW1lIT09Ri5ELndhfHxRKGEsSC5KLkZjKSkpe3ZhciBjPXt9LGQ9e30sZT17ZXZlbnRNZXRhZGF0YTpuYShPYmplY3QsImFzc2lnbiIpLmNhbGwoT2JqZWN0LHt9LGEuTS5ldmVudE1ldGFkYXRhLChjW0guSi5GY109ITAsYyksYj97fTooZFtILkouRGNdPVguVi5LYSxkKSksbm9HdG1FdmVudDohMH0sZj1zQyhhLnRhcmdldC5kZXN0aW5hdGlvbklkLCJzdHJ1Y3R1cmVkX2RhdGEiLGEuTS5FYSk7bUQoZixhLk0uZXZlbnRJZCxlKX19Owp2YXIgZFM9ZnVuY3Rpb24oYSl7cmV0dXJuIWF8fGNTLnRlc3QoYSl8fERvLmhhc093blByb3BlcnR5KGEpfSxjUz0vXihffGdhX3xnb29nbGVffGd0YWdcLnxmaXJlYmFzZV8pLiokLyxlUz1mdW5jdGlvbihhKXt0aGlzLnlhPWE7dGhpcy5IPXRoaXMuemI9dGhpcy5jbGllbnRJZD12b2lkIDA7dGhpcy5qYT10aGlzLlI9ITE7dGhpcy5MYT0wO3RoaXMuTj0hMTt0aGlzLlo9e1RqOiExfTt0aGlzLmZhPW5ldyBJUTt0aGlzLks9bmV3IEhQfTtrPWVTLnByb3RvdHlwZTtrLlpzPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLGU9YkModGhpcy55YSk7aWYoZSlpZihjLmV2ZW50TWV0YWRhdGFbSC5KLmFlXSYmYS5jaGFyQXQoMCk9PT0iXyIpYy5vbkZhaWx1cmUoKTtlbHNle2EhPT1GLkQud2EmJmEhPT1GLkQuSmImJmRTKGEpJiZQKDU4KTt2YXIgZj1uZXcgYUkoZSxhLGMpO1YoZixILkouRWIsYik7dmFyIGc9W0YuRC5yYV0saD1iayhaSyhmKSk7VihmLEguSi5kaixoKTtpZihkSShmLEYuRC5VZiwKTyhmLk0sRi5ELlVmKSl8fGgpZy5wdXNoKEYuRC5rYSksZy5wdXNoKEYuRC5tYSk7Rk0uZmEoZnVuY3Rpb24oKXticChmdW5jdGlvbigpe2QuYnQoZil9LGcpfSl9ZWxzZSBjLm9uRmFpbHVyZSgpfTtrLmJ0PWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dHJ5e0hNKGEpO2lmKGEuaXNBYm9ydGVkKXt0YigpO3JldHVybn1KTShhKTtEUihhKTt1UihhKTtFUihhKTtGUihhKTtJTShhKTt2YXIgYz17fTtlUShhLGMpO2lmKGEuaXNBYm9ydGVkKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59dGhpcy5IPWE7dmFyIGQ9Yy51cjtjLkhyPT09MCYmSVAoSi5VLm5sKTtkPT09MCYmSVAoSi5VLkxrKTtaTShhKTtWKGEsSC5KLnRnLGNvLmlhLnhkKTtWUihhKTtIUihhKTt0aGlzLkxxKGEpO3RoaXMuSy5LdChhKTtVKGEsRi5ELnppLGFsKDgsTkYpKTt4UihhKTtwTihhKTtaUihhKTtNUShhKTt0aGlzLkFvKGFTKGEpKTtiUyhhKTt2YXIgZT1hLmV2ZW50TmFtZT09PUYuRC53YTtlJiYodGhpcy5OPQohMCk7SVIoYSk7ZSYmIWEuaXNBYm9ydGVkJiZ0aGlzLkxhKys+MCYmSVAoSi5VLmhuKTtVTChhKTtqUihhLHRoaXMuY2xpZW50SWQsdGhpcy56Yix0aGlzLkssIXRoaXMuamEpO25SKGEpO2xSKGEpO09SKGEpO1hMKGEpO0dSKGEsdGhpcy5aKTt5UihhKTt2UihhKTt3UihhKTtZUihhKTthUShhKTtnUShhKTt3TShhKTtoUihhKTtZUShhKTtnUihhKTtmUihhKTtlUihhKTtkUihhKTtjUihhKTthUihhKTskUShhKTtXUShhKTtVUShhKTtUUShhKTtTUShhKTtiUShhKTtjUShhKTtPKGEuTSxGLkQueGgpJiYhYmsoWksoYSkpfHxHTShhKTtVUihhKTtXUihhKTtpTihhKTtWTChhKTtTTChhKTtsTihhKTtoTihhKTtYTShhLCExKTtzUihhKTtSUihhKTskUihhKTtOTShhKTtyUihhKTtwUihhKTtiUihhKTtaUShhKTtSUShhKTtxUihhKTshdGhpcy5OJiZRKGEsSC5KLlBjKSYmSVAoSi5VLnNsKTtKUChhKTtpZihNKDU3NSkpe2lmKGEuaXNBYm9ydGVkKXtpZighUShhLEguSi5TbykpYS5NLm9uRmFpbHVyZSgpOwp0YigpO3JldHVybn1pZihRKGEsSC5KLkphKSl7YS5NLm9uRmFpbHVyZSgpO3RiKCk7cmV0dXJufX1lbHNlIGlmKFEoYSxILkouSmEpfHxhLmlzQWJvcnRlZCl7YS5NLm9uRmFpbHVyZSgpO3RiKCk7cmV0dXJufXRoaXMuQW8oaVIoYSx0aGlzLmNsaWVudElkKSk7dGhpcy5qYT0hMDt0aGlzLkh0KGEpO0pSKGEpO1ZRKGZ1bmN0aW9uKGYpe2IuTW4oZil9LGEpO3RoaXMuSy5xaygpO0xSKGEpO2dOKGEpO1dMKGEpO1lNKGEpO2lmKGEuaXNBYm9ydGVkKXthLk0ub25GYWlsdXJlKCk7dGIoKTtyZXR1cm59dGhpcy5NbihhKTthLk0ub25TdWNjZXNzKCl9Y2F0Y2goZil7YS5NLm9uRmFpbHVyZSgpfXRiKCl9O2suTW49ZnVuY3Rpb24oYSl7dGhpcy5mYS5hZGQoYSl9O2suQW89ZnVuY3Rpb24oYSl7dmFyIGI9YS5jbGllbnRJZCxjPWEuemI7YiYmYyYmKHRoaXMuY2xpZW50SWQ9Yix0aGlzLnpiPWMpfTtrLmZsdXNoPWZ1bmN0aW9uKCl7dGhpcy5mYS5mbHVzaCgpfTtrLkh0PWZ1bmN0aW9uKGEpe3ZhciBiPQp0aGlzO2lmKCF0aGlzLlIpe3ZhciBjPVhvKEYuRC5tYSksZD1YbyhGLkQucmEpOyRvKFtGLkQubWEsRi5ELnJhLEYuRC5rYV0sZnVuY3Rpb24oZSl7dmFyIGY7Zj0oZT09PXZvaWQgMD97fTplKS5jb25zZW50RXZlbnRJZDt2YXIgZz1YbyhGLkQubWEpLGg9WG8oRi5ELnJhKSxsPSExLG49e30scD17fTtpZihkIT09aCYmYi5IJiZiLnpiJiZiLmNsaWVudElkKXt2YXIgcT1iLmNsaWVudElkLHI7dmFyIHQ9TFAoYi56Yik7cj10P3QuaDp2b2lkIDA7aWYoaCl7dmFyIHU9RlAoYi5IKTtpZih1KXtiLmNsaWVudElkPXU7dmFyIHY9U1AoYi5IKTt2JiYoYi56Yj1QUCh2LGIuemIsYi5IKSl9ZWxzZSBEUChiLmNsaWVudElkLGIuSCksQVAoYi5jbGllbnRJZCwhMCk7UlAoYi56YixiLkgpO2w9ITA7bltGLkQuTmxdPXE7ciYmKG5bRi5ELmJxXT1yKX1lbHNlIGIuemI9dm9pZCAwLGIuY2xpZW50SWQ9dm9pZCAwLEEuZ2FHbG9iYWw9e319ZyYmIWMmJihsPSEwLHBbSC5KLkdoXT0hMCxuW0YuRC54aV09CkxvW0YuRC5tYV0pO2lmKGwpe3ZhciB4PXNDKGIueWEsRi5ELnlmLG4pO21EKHgsZiE9bnVsbD9mOmEuTS5ldmVudElkLHtldmVudE1ldGFkYXRhOnB9KX1kPWg7Yz1nO2IuWi5Uaj0hMH0pO3RoaXMuUj0hMH19O2suTHE9ZnVuY3Rpb24oYSl7YS5ldmVudE5hbWUhPT1GLkQuSmImJnRoaXMuSy5LcShhKX07dmFyIGdTPWZ1bmN0aW9uKGEpe2lmKCFmUyhhKSl7dmFyIGI9ITEsYz1mdW5jdGlvbigpeyFiJiZmUyhhKSYmKGI9ITAsYWQoQiwidmlzaWJpbGl0eWNoYW5nZSIsYyksYWQoQiwicHJlcmVuZGVyaW5nY2hhbmdlIixjKSxQKDU1KSl9OyRjKEIsInZpc2liaWxpdHljaGFuZ2UiLGMpOyRjKEIsInByZXJlbmRlcmluZ2NoYW5nZSIsYyk7UCg1NCl9fSxmUz1mdW5jdGlvbihhKXtpZigicHJlcmVuZGVyaW5nImluIEI/Qi5wcmVyZW5kZXJpbmc6Qi52aXNpYmlsaXR5U3RhdGU9PT0icHJlcmVuZGVyIilyZXR1cm4hMTthKCk7cmV0dXJuITB9O2Z1bmN0aW9uIGhTKGEpe2dTKGZ1bmN0aW9uKCl7dmFyIGI9YkMoYSk7aWYoYil7dmFyIGM9aVMoYiksZD1jby5pYS54ZCxlPVlDKCksZj1iQyhhLCEwKTtmJiZlLkgucmVnaXN0ZXIoZixjLGQsdm9pZCAwKX19KTt9ZnVuY3Rpb24gaVMoYSl7dmFyIGI9ZnVuY3Rpb24oKXt9O3ZhciBjPW5ldyBlUyhhLmlkKSxkPWEucHJlZml4PT09Ik1DIjtiPWZ1bmN0aW9uKGUsZixnLGgpe2QmJihoLmV2ZW50TWV0YWRhdGFbSC5KLmJlXT0hMCk7Yy5acyhmLGcsaCl9O2pTKGEsYyk7cmV0dXJuIGJ9CmZ1bmN0aW9uIGpTKGEsYil7dmFyIGM9Yi5LO2MuaHQoZnVuY3Rpb24oKXtaayg5LCEwKTtZQygpLmZsdXNoKCk7aWYoYy5ZaCgpPj0xRTMmJmtkKCkpe3ZhciBkPXt9LGU9e2V2ZW50SWQ6cmooKSxldmVudE1ldGFkYXRhOihkW0guSi5La109ITAsZCksZGVmZXJyYWJsZTohMH07WkMoRi5ELnlmLHt9LGEuaWQsZSl9Yi5mbHVzaCgpO2MuQ28oZnVuY3Rpb24oKXtaayg5LCExKTtjLkNvKCl9KX0pO312YXIga1M9Si5VLnFsLGxTPUouVS5ybDtmdW5jdGlvbiBtUyhhLGIpe3ZhciBjPXRrKCk7YyYmYy5pbmRleE9mKGIpPi0xJiYoYVtILkouQ2NdPSEwKX1mdW5jdGlvbiBvUyhhLGIsYyl7dmFyIGQ9dGhpczt9b1MuUD0iaW50ZXJuYWwuZ3RhZ0NvbmZpZyI7ZnVuY3Rpb24gcFMoYSxiLGMsZCl7dmFyIGU9dGhpczt9cFMuUD0iaW50ZXJuYWwuZ3RhZ0Rlc3RpbmF0aW9uQ29uZmlnIjsKZnVuY3Rpb24gclMoYSxiKXt9CnJTLnB1YmxpY05hbWU9Imd0YWdTZXQiO2Z1bmN0aW9uIHNTKCl7dmFyIGE9e307cmV0dXJuIGF9O2Z1bmN0aW9uIHRTKGEpe310Uy5QPSJpbnRlcm5hbC5pbml0aWFsaXplU2VydmljZVdvcmtlciI7ZnVuY3Rpb24gdVMoYSxiKXt9dVMucHVibGljTmFtZT0iaW5qZWN0SGlkZGVuSWZyYW1lIjtmdW5jdGlvbiB2UyhhLGIsYyxkLGUpe312Uy5QPSJpbnRlcm5hbC5pbmplY3RIdG1sIjt2YXIgQVM9e2RsOjEsaWQ6MX07CmZ1bmN0aW9uIEJTKGEsYixjLGQpe31CUy5wdWJsaWNOYW1lPSJpbmplY3RTY3JpcHQiO2Z1bmN0aW9uIENTKCl7dmFyIGE9dm0sYj0hMTtiPSEhYS5IWyI1Il07cmV0dXJuIGJ9Q1MuUD0iaW50ZXJuYWwuaXNBdXRvUGlpRWxpZ2libGUiO2Z1bmN0aW9uIERTKGEpe3ZhciBiPSEwO3JldHVybiBifURTLnB1YmxpY05hbWU9ImlzQ29uc2VudEdyYW50ZWQiO2Z1bmN0aW9uIEVTKGEpe3ZhciBiPSExO3JldHVybiBifUVTLlA9ImludGVybmFsLmlzRGVidWdNb2RlIjtmdW5jdGlvbiBGUyhhKXt2YXIgYj0hMTtyZXR1cm4gYn1GUy5QPSJpbnRlcm5hbC5pc0Rlc3RpbmF0aW9uSW5pdGlhbGl6ZWQiO2Z1bmN0aW9uIEdTKCl7cmV0dXJuIEJtKCl9R1MuUD0iaW50ZXJuYWwuaXNEbWFSZWdpb24iO2Z1bmN0aW9uIEhTKCl7cmV0dXJuIFVCKCl9SFMuUD0iaW50ZXJuYWwuaXNEb21SZWFkeSI7ZnVuY3Rpb24gSVMoYSl7dmFyIGI9ITE7cmV0dXJuIGJ9SVMuUD0iaW50ZXJuYWwuaXNFbnRpdHlJbmZyYXN0cnVjdHVyZSI7ZnVuY3Rpb24gSlMoYSl7dmFyIGI9ITE7aWYoIXFoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJudW1iZXIiXSxbYV0pO2I9TShhKTtyZXR1cm4gYn1KUy5QPSJpbnRlcm5hbC5pc0ZlYXR1cmVFbmFibGVkIjtmdW5jdGlvbiBLUygpe3ZhciBhPSExO3JldHVybiBhfUtTLlA9ImludGVybmFsLmlzRnBmZSI7ZnVuY3Rpb24gTFMoKXt2YXIgYT0hMTtyZXR1cm4gYX1MUy5QPSJpbnRlcm5hbC5pc0djcEJyb3dzZXIiO2Z1bmN0aW9uIE1TKCl7dmFyIGE9ITE7cmV0dXJuIGF9TVMuUD0iaW50ZXJuYWwuaXNMYW5kaW5nUGFnZSI7ZnVuY3Rpb24gTlMoKXt2YXIgYT0hMTtyZXR1cm4gYX1OUy5QPSJpbnRlcm5hbC5pc09ndCI7ZnVuY3Rpb24gT1MoKXt2YXIgYTtyZXR1cm4gYX1PUy5QPSJpbnRlcm5hbC5pc1NhZmFyaVBjbUVsaWdpYmxlQnJvd3NlciI7ZnVuY3Rpb24gUFMoKXt2YXIgYT1RaChmdW5jdGlvbihiKXtYRih0aGlzKS5sb2coImVycm9yIixiKX0pO2EucHVibGljTmFtZT0iSlNPTiI7cmV0dXJuIGF9O2Z1bmN0aW9uIFFTKGEpe3ZhciBiPXZvaWQgMDtyZXR1cm4gVWQoYil9UVMuUD0iaW50ZXJuYWwubGVnYWN5UGFyc2VVcmwiO2Z1bmN0aW9uIFJTKCl7cmV0dXJuITF9CnZhciBTUz17Z2V0SXRlbTpmdW5jdGlvbihhKXt2YXIgYj1udWxsO3JldHVybiBifSxzZXRJdGVtOmZ1bmN0aW9uKGEsYil7cmV0dXJuITF9LHJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7fX07ZnVuY3Rpb24gVFMoKXt9VFMucHVibGljTmFtZT0ibG9nVG9Db25zb2xlIjtmdW5jdGlvbiBVUyhhLGIpe2lmKCFsaChhKXx8IWVoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJPYmplY3QiXSxhcmd1bWVudHMpO3ZhciBjPWEsZD1UZChiLHRoaXMuVCksZT1ZQygpLGY9YkMoYywhMCk7ZiYmVEMoZS5ILGYsZCk7fVVTLlA9ImludGVybmFsLm1lcmdlUmVtb3RlQ29uZmlnIjtmdW5jdGlvbiBWUyhhLGIsYyl7Yz1jPT09dm9pZCAwPyEwOmM7dmFyIGQ9W107cmV0dXJuIFVkKGQpfVZTLlA9ImludGVybmFsLnBhcnNlQ29va2llVmFsdWVzRnJvbVN0cmluZyI7ZnVuY3Rpb24gV1MoYSl7dmFyIGI9dm9pZCAwO2lmKHR5cGVvZiBhIT09InN0cmluZyIpcmV0dXJuO2EmJlNiKGEsIi8vIikmJihhPUIubG9jYXRpb24ucHJvdG9jb2wrYSk7aWYodHlwZW9mIFVSTD09PSJmdW5jdGlvbiIpe3ZhciBjO2E6e3ZhciBkO3RyeXtkPW5ldyBVUkwoYSl9Y2F0Y2goeCl7Yz12b2lkIDA7YnJlYWsgYX1mb3IodmFyIGU9e30sZj1BcnJheS5mcm9tKGQuc2VhcmNoUGFyYW1zKSxnPTA7ZzxmLmxlbmd0aDtnKyspe3ZhciBoPWZbZ11bMF0sbD1mW2ddWzFdO2UuaGFzT3duUHJvcGVydHkoaCk/dHlwZW9mIGVbaF09PT0ic3RyaW5nIj9lW2hdPVtlW2hdLGxdOmVbaF0ucHVzaChsKTplW2hdPWx9Yz17aHJlZjpkLmhyZWYsb3JpZ2luOmQub3JpZ2luLHByb3RvY29sOmQucHJvdG9jb2wsdXNlcm5hbWU6ZC51c2VybmFtZSxwYXNzd29yZDpkLnBhc3N3b3JkLGhvc3Q6ZC5ob3N0LGhvc3RuYW1lOmQuaG9zdG5hbWUsCnBvcnQ6ZC5wb3J0LHBhdGhuYW1lOmQucGF0aG5hbWUsc2VhcmNoOmQuc2VhcmNoLHNlYXJjaFBhcmFtczplLGhhc2g6ZC5oYXNofX1yZXR1cm4gVWQoYyl9dmFyIG47dHJ5e249UmooYSl9Y2F0Y2goeCl7cmV0dXJufWlmKCFuLnByb3RvY29sfHwhbi5ob3N0KXJldHVybjt2YXIgcD17fTtpZihuLnNlYXJjaClmb3IodmFyIHE9bi5zZWFyY2gucmVwbGFjZSgiPyIsIiIpLnNwbGl0KCImIikscj0wO3I8cS5sZW5ndGg7cisrKXt2YXIgdD1xW3JdLnNwbGl0KCI9IiksdT10WzBdLHY9S2oodC5zcGxpY2UoMSkuam9pbigiPSIpKXx8IiI7dj12LnJlcGxhY2UoL1wrL2csIiAiKTtwLmhhc093blByb3BlcnR5KHUpP3R5cGVvZiBwW3VdPT09InN0cmluZyI/cFt1XT1bcFt1XSx2XTpwW3VdLnB1c2godik6cFt1XT12fW4uc2VhcmNoUGFyYW1zPXA7bi5vcmlnaW49bi5wcm90b2NvbCsiLy8iK24uaG9zdDtuLnVzZXJuYW1lPSIiO24ucGFzc3dvcmQ9IiI7Yj1VZChuKTsKcmV0dXJuIGJ9V1MucHVibGljTmFtZT0icGFyc2VVcmwiO2Z1bmN0aW9uIFhTKGEpe31YUy5QPSJpbnRlcm5hbC5wcm9jZXNzQXNOZXdFdmVudCI7ZnVuY3Rpb24gWVMoYSxiLGMpe3ZhciBkO3JldHVybiBkfVlTLlA9ImludGVybmFsLnB1c2hUb0RhdGFMYXllciI7ZnVuY3Rpb24gWlMoYSl7dmFyIGI9T2EuYXBwbHkoMSxhcmd1bWVudHMpLGM9ITE7aWYoIWxoKGEpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciXSxhcmd1bWVudHMpO2Zvcih2YXIgZD1bdGhpcyxhXSxlPW0oYiksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpZC5wdXNoKFRkKGYudmFsdWUsdGhpcy5ULDEpKTt0cnl7TC5hcHBseShudWxsLGQpLGM9ITB9Y2F0Y2goZyl7cmV0dXJuITF9cmV0dXJuIGN9WlMucHVibGljTmFtZT0icXVlcnlQZXJtaXNzaW9uIjtmdW5jdGlvbiAkUyhhKXt2YXIgYj10aGlzO30kUy5QPSJpbnRlcm5hbC5xdWV1ZUFkc1RyYW5zbWlzc2lvbiI7ZnVuY3Rpb24gYVQoYSl7dmFyIGI9dm9pZCAwO3JldHVybiBifWFULnB1YmxpY05hbWU9InJlYWRBbmFseXRpY3NTdG9yYWdlIjtmdW5jdGlvbiBiVCgpe3ZhciBhPSIiO3JldHVybiBhfWJULnB1YmxpY05hbWU9InJlYWRDaGFyYWN0ZXJTZXQiO2Z1bmN0aW9uIGNUKCl7cmV0dXJuIEUoMTkpfWNULlA9ImludGVybmFsLnJlYWREYXRhTGF5ZXJOYW1lIjtmdW5jdGlvbiBkVCgpe3ZhciBhPSIiO3JldHVybiBhfWRULnB1YmxpY05hbWU9InJlYWRUaXRsZSI7ZnVuY3Rpb24gZVQoYSxiKXt2YXIgYz10aGlzO2lmKCFsaChhKXx8IWhoKGIpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJzdHJpbmciLCJmdW5jdGlvbiJdLGFyZ3VtZW50cyk7TE0oYSxmdW5jdGlvbihkKXtiLmludm9rZShjLlQsVWQoZCxjLlQsMSkpfSk7fWVULlA9ImludGVybmFsLnJlZ2lzdGVyQ2NkQ2FsbGJhY2siO2Z1bmN0aW9uIGZUKGEsYil7aWYoIWxoKGEpfHwhZWgoYikmJiFnaChiKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsic3RyaW5nIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7aWYoQmgoWEYodGhpcykuUGIoKSkpcmV0dXJuITE7dmFyIGMsZCxlPWJDKGEsITApO2lmKCFlKXJldHVybiExO3N3aXRjaChlLnByZWZpeCl7Y2FzZSAiQVciOmM9dE47ZD1jby5pYS5jYjticmVhaztjYXNlICJEQyI6Yz1JTjtkPWNvLmlhLmNiO2JyZWFrO2Nhc2UgIkdGIjpjPU5OO2Q9Y28uaWEuZ2Q7YnJlYWs7Y2FzZSAiSEEiOmM9UE47ZD1jby5pYS5nZDticmVhaztjYXNlICJVQSI6Yz1mTztkPWNvLmlhLmdkO2JyZWFrO2Nhc2UgIk1DIjpjPWlTKGUpO2Q9Y28uaWEueGQ7YnJlYWs7Y2FzZSAiRyI6cmV0dXJuIGhTKGEpLCEwO2RlZmF1bHQ6cmV0dXJuITF9dmFyIGY9YSwKZz1jLGg9ZCxsPVRkKGIsdGhpcy5ULDEpLG49WUMoKSxwPWJDKGYsITApO3AmJm4uSC5yZWdpc3RlcihwLGcsaCxsKTtyZXR1cm4hMH1mVC5QPSJpbnRlcm5hbC5yZWdpc3RlckRlc3RpbmF0aW9uIjt2YXIgZ1Q9WyJldmVudCJdO2Z1bmN0aW9uIGhUKGEsYixjKXt9aFQuUD0iaW50ZXJuYWwucmVnaXN0ZXJHdGFnQ29tbWFuZExpc3RlbmVyIjtmdW5jdGlvbiBpVChhLGIpe3ZhciBjPSExO3JldHVybiBjfWlULlA9ImludGVybmFsLnJlbW92ZURhdGFMYXllckV2ZW50TGlzdGVuZXIiO2Z1bmN0aW9uIGpUKGEsYil7fQpqVC5QPSJpbnRlcm5hbC5yZW1vdmVGb3JtRGF0YSI7ZnVuY3Rpb24ga1QoKXt9a1QucHVibGljTmFtZT0icmVzZXREYXRhTGF5ZXIiO2Z1bmN0aW9uIGxUKGEsYixjKXt2YXIgZD12b2lkIDA7cmV0dXJuIGR9bFQuUD0iaW50ZXJuYWwuc2NydWJVcmxQYXJhbXMiO2Z1bmN0aW9uIG1UKGEpe31tVC5QPSJpbnRlcm5hbC5zZW5kQWRzSGl0IjtmdW5jdGlvbiBuVChhLGIsYyxkKXtpZihhcmd1bWVudHMubGVuZ3RoPDJ8fCFmaChkKXx8IWZoKGMpKXRocm93IEsodGhpcy5nZXROYW1lKCksWyJhbnkiLCJhbnkiLCJPYmplY3R8dW5kZWZpbmVkIiwiT2JqZWN0fHVuZGVmaW5lZCJdLGFyZ3VtZW50cyk7dmFyIGU9Yz9UZChjLHRoaXMuVCwxKTp7fSxmPVRkKGEpLGc9QXJyYXkuaXNBcnJheShmKT9mOltmXTtiPVN0cmluZyhiKTt2YXIgaD1kP1RkKGQpOnt9LGw9WEYodGhpcyk7aC5vcmlnaW5hdGluZ0VudGl0eT10RyhsKTtsLnByaW9yaXR5UXVldWUmJihoLnByaW9yaXR5UXVldWU9bC5wcmlvcml0eVF1ZXVlKTtmb3IodmFyIG49MDtuPGcubGVuZ3RoO24rKyl7dmFyIHA9Z1tuXTtpZih0eXBlb2YgcD09PSJzdHJpbmciKXt2YXIgcT17fTtFZChlLHEpO3ZhciByPXt9O0VkKGgscik7dmFyIHQ9c0MocCxiLHEpO21EKHQsCmguZXZlbnRJZHx8bC5ldmVudElkLHIpfX19blQuUD0iaW50ZXJuYWwuc2VuZEd0YWdFdmVudCI7ZnVuY3Rpb24gb1QoYSxiLGMpe31vVC5wdWJsaWNOYW1lPSJzZW5kUGl4ZWwiO2Z1bmN0aW9uIHBUKGEsYil7fXBULlA9ImludGVybmFsLnNldEFuY2hvckhyZWYiO2Z1bmN0aW9uIHFUKGEpe31xVC5QPSJpbnRlcm5hbC5zZXRDb250YWluZXJDb25zZW50RGVmYXVsdHMiO2Z1bmN0aW9uIHJUKGEsYixjLGQpe3ZhciBlPXRoaXM7ZD1kPT09dm9pZCAwPyEwOmQ7dmFyIGY9ITE7CnJldHVybiBmfXJULnB1YmxpY05hbWU9InNldENvb2tpZSI7ZnVuY3Rpb24gc1QoYSl7fXNULlA9ImludGVybmFsLnNldENvcmVQbGF0Zm9ybVNlcnZpY2VzIjtmdW5jdGlvbiB0VChhLGIpe310VC5QPSJpbnRlcm5hbC5zZXREYXRhTGF5ZXJWYWx1ZSI7ZnVuY3Rpb24gdVQoYSl7fXVULnB1YmxpY05hbWU9InNldERlZmF1bHRDb25zZW50U3RhdGUiO2Z1bmN0aW9uIHZUKGEsYil7fXZULlA9ImludGVybmFsLnNldERlbGVnYXRlZENvbnNlbnRUeXBlIjtmdW5jdGlvbiB3VChhLGIpe313VC5QPSJpbnRlcm5hbC5zZXRGb3JtQWN0aW9uIjtmdW5jdGlvbiB4VChhLGIsYyl7Yz1jPT09dm9pZCAwPyExOmM7aWYoIWxoKGEpfHwhb2goYykpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsImFueSIsImJvb2xlYW58dW5kZWZpbmVkIl0sYXJndW1lbnRzKTtpZigha20oYSkpdGhyb3cgRXJyb3IoInNldEluQ3Jvc3NDb250YWluZXJEYXRhIHJlcXVpcmVzIHZhbGlkIENyb3NzQ29udGFpbmVyU2NoZW1hIGtleS4iKTsoY3x8bm0oYSk9PT12b2lkIDApJiZtbShhLFRkKGIsdGhpcy5ULDEpKTt9eFQuUD0iaW50ZXJuYWwuc2V0SW5Dcm9zc0NvbnRhaW5lckRhdGEiO2Z1bmN0aW9uIHlUKGEsYixjKXtyZXR1cm4hMX15VC5wdWJsaWNOYW1lPSJzZXRJbldpbmRvdyI7ZnVuY3Rpb24gelQoYSxiLGMpe316VC5QPSJpbnRlcm5hbC5zZXRQcm9kdWN0U2V0dGluZ3NQYXJhbWV0ZXIiO2Z1bmN0aW9uIEFUKGEsYixjKXtpZighbGgoYSl8fCFsaChiKXx8YXJndW1lbnRzLmxlbmd0aCE9PTMpdGhyb3cgSyh0aGlzLmdldE5hbWUoKSxbInN0cmluZyIsInN0cmluZyIsImFueSJdLGFyZ3VtZW50cyk7Zm9yKHZhciBkPWIuc3BsaXQoIi4iKSxlPWVEKGEpLGY9MDtmPGQubGVuZ3RoLTE7ZisrKXtpZihlW2RbZl1dPT09dm9pZCAwKWVbZFtmXV09e307ZWxzZSBpZighQ2QoZVtkW2ZdXSkpdGhyb3cgRXJyb3IoInNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciBmYWlsZWQsIHBhdGggY29udGFpbnMgYSBub24tb2JqZWN0IHR5cGU6ICIrZFtmXSk7ZT1lW2RbZl1dfWVbZFtmXV09VGQoYyx0aGlzLlQsMSk7fUFULlA9ImludGVybmFsLnNldFJlbW90ZUNvbmZpZ1BhcmFtZXRlciI7ZnVuY3Rpb24gQlQoYSxiKXt9CkJULlA9ImludGVybmFsLnNldFRyYW5zbWlzc2lvbk1vZGUiO2Z1bmN0aW9uIENUKGEsYixjLGQpe3ZhciBlPXRoaXM7fUNULnB1YmxpY05hbWU9InNoYTI1NiI7ZnVuY3Rpb24gRFQoYSxiLGMpe30KRFQuUD0iaW50ZXJuYWwuc29ydFJlbW90ZUNvbmZpZ1BhcmFtZXRlcnMiO2Z1bmN0aW9uIEVUKGEpe31FVC5QPSJpbnRlcm5hbC5zdG9yZUFkc0JyYWlkTGFiZWxzIjtmdW5jdGlvbiBGVChhLGIpe3ZhciBjPXZvaWQgMDtyZXR1cm4gY31GVC5QPSJpbnRlcm5hbC5zdWJzY3JpYmVUb0Nyb3NzQ29udGFpbmVyRGF0YSI7ZnVuY3Rpb24gR1QoYSl7fUdULlA9ImludGVybmFsLnRhc2tTZW5kQWRzSGl0cyI7dmFyIEhUPXtnZXRJdGVtOmZ1bmN0aW9uKGEpe3ZhciBiPW51bGw7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBjPVhGKHRoaXMpLlBiKCksZD1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtkW2NdJiYoYj1kW2NdLmhhc093blByb3BlcnR5KCJndG0uIithKT9kW2NdWyJndG0uIithXTpudWxsKTtyZXR1cm4gYn0sc2V0SXRlbTpmdW5jdGlvbihhLGIpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYz1YRih0aGlzKS5QYigpLGQ9YWwoNyxmdW5jdGlvbigpe3JldHVybnt9fSk7ZFtjXT1kW2NdfHx7fTtkW2NdWyJndG0uIithXT1iO30sCnJlbW92ZUl0ZW06ZnVuY3Rpb24oYSl7TCh0aGlzLCJhY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZSIpO3ZhciBiPVhGKHRoaXMpLlBiKCksYz1hbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KTtpZighY1tiXXx8IWNbYl0uaGFzT3duUHJvcGVydHkoImd0bS4iK2EpKXJldHVybjtkZWxldGUgY1tiXVsiZ3RtLiIrYV07fSxjbGVhcjpmdW5jdGlvbigpe0wodGhpcywiYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiKTt2YXIgYT1YRih0aGlzKS5QYigpO2RlbGV0ZSBhbCg3LGZ1bmN0aW9uKCl7cmV0dXJue319KVthXTt9LApwdWJsaWNOYW1lOiJ0ZW1wbGF0ZVN0b3JhZ2UifTtmdW5jdGlvbiBJVChhLGIpe3ZhciBjPSExO3JldHVybiBjfUlULlA9ImludGVybmFsLnRlc3RSZWdleCI7ZnVuY3Rpb24gSlQoYSl7dmFyIGI7cmV0dXJuIGJ9O2Z1bmN0aW9uIEtUKGEsYil7fUtULlA9ImludGVybmFsLnRyYWNrVXNhZ2UiO2Z1bmN0aW9uIExUKGEsYil7dmFyIGM7cmV0dXJuIGN9TFQuUD0iaW50ZXJuYWwudW5zdWJzY3JpYmVGcm9tQ3Jvc3NDb250YWluZXJEYXRhIjtmdW5jdGlvbiBNVChhKXt9TVQucHVibGljTmFtZT0idXBkYXRlQ29uc2VudFN0YXRlIjtmdW5jdGlvbiBOVChhKXt2YXIgYj0hMTtyZXR1cm4gYn1OVC5QPSJpbnRlcm5hbC51c2VyRGF0YU5lZWRzRW5jcnlwdGlvbiI7dmFyIE9UPWZ1bmN0aW9uKCl7dGhpcy5IPW5ldyBhaX0sUVQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGI7dmFyIGM9UFQuSDtpZihjLmNvbnRhaW5zKGEpKWI9Yy5nZXQoYSx0aGlzKTtlbHNle3ZhciBkO2lmKGQ9Yy5ILmhhc093blByb3BlcnR5KGEpKXt2YXIgZT10aGlzLlQueGIoKTtpZihlKXt2YXIgZj0hMSxnPWUuUGIoKTtpZihnKXtCaChnKXx8KGY9ITApO31kPWZ9ZWxzZSBkPSEwfWlmKGQpe3ZhciBoPWMuSC5oYXNPd25Qcm9wZXJ0eShhKT9jLkhbYV06dm9pZCAwO2I9aH1lbHNlIHRocm93IEVycm9yKGErIiBpcyBub3QgYSB2YWxpZCBBUEkgbmFtZS4iKTt9cmV0dXJuIGJ9fSxQVDtmdW5jdGlvbiBSVChhLGIsYyl7UFR8fChQVD1uZXcgT1QpO1BULkguYWRkKGEsYixjKX1mdW5jdGlvbiBTVChhLGIpe1BUfHwoUFQ9bmV3IE9UKTt2YXIgYz1QVC5IO2lmKGMuSC5oYXNPd25Qcm9wZXJ0eShhKSl0aHJvdyBFcnJvcigiQXR0ZW1wdGluZyB0byBhZGQgYSBwcml2YXRlIGZ1bmN0aW9uIHdoaWNoIGFscmVhZHkgZXhpc3RzOiAiK2ErIi4iKTtpZihjLmNvbnRhaW5zKGEpKXRocm93IEVycm9yKCJBdHRlbXB0aW5nIHRvIGFkZCBhIHByaXZhdGUgZnVuY3Rpb24gd2l0aCBhbiBleGlzdGluZyBBUEkgbmFtZTogIithKyIuIik7Yy5IW2FdPXliKGIpP3RoKGEsYik6dWgoYSxiKX07ZnVuY3Rpb24gVFQoYSxiKXtmdW5jdGlvbiBjKGQpe2lmKCFlaChkKSl0aHJvdyBLKHRoaXMuZ2V0TmFtZSgpLFsiT2JqZWN0Il0sYXJndW1lbnRzKTt2YXIgZT1UZChkLHRoaXMuVCwxKS5yYigpO2EoZSl9Yy5QPSJpbnRlcm5hbC4iK2I7cmV0dXJuIGN9O2Z1bmN0aW9uIFVUKCl7dmFyIGE9ZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgU1QoYy5QLGMpfSxiPWZ1bmN0aW9uKGMpe3JldHVybiB2b2lkIFJUKGMucHVibGljTmFtZSxjKX07YihSRik7YihZRik7YihSRyk7YihURyk7YihVRyk7YihkSCk7YihmSCk7YihoSSk7YihQUygpKTtiKGpJKTtiKE9PKTtiKFBPKTtiKGxQKTtiKG1QKTtiKG5QKTtiKHVQKTtiKHZQKTtiKHJTKTtiKHVTKTtiKEJTKTtiKERTKTtiKFRTKTtiKFdTKTtiKFpTKTtiKGFUKTtiKGJUKTtiKGRUKTtiKG9UKTtiKHJUKTtiKHVUKTtiKHlUKTtiKENUKTtiKEhUKTtiKE1UKTtSVCgiTWF0aCIsemgoKSk7UlQoIk9iamVjdCIsWmgpO1JUKCJUZXN0SGVscGVyIixjaSgpKTtSVCgiYXNzZXJ0QXBpIix3aCk7UlQoImFzc2VydFRoYXQiLHhoKTtSVCgiZGVjb2RlVXJpIixDaCk7UlQoImRlY29kZVVyaUNvbXBvbmVudCIsRGgpO1JUKCJlbmNvZGVVcmkiLEVoKTtSVCgiZW5jb2RlVXJpQ29tcG9uZW50IixGaCk7UlQoImZhaWwiLApMaCk7UlQoImdlbmVyYXRlUmFuZG9tIixOaCk7UlQoImdldFRpbWVzdGFtcCIsT2gpO1JUKCJnZXRUaW1lc3RhbXBNaWxsaXMiLE9oKTtSVCgiZ2V0VHlwZSIsUGgpO1JUKCJtYWtlSW50ZWdlciIsUmgpO1JUKCJtYWtlTnVtYmVyIixTaCk7UlQoIm1ha2VTdHJpbmciLFRoKTtSVCgibWFrZVRhYmxlTWFwIixVaCk7UlQoIm1vY2siLFhoKTtSVCgibW9ja09iamVjdCIsWWgpO1JUKCJmcm9tQmFzZTY0IixITywhKCJhdG9iImluIEEpKTtSVCgibG9jYWxTdG9yYWdlIixTUywhUlMoKSk7UlQoInRvQmFzZTY0IixKVCwhKCJidG9hImluIEEpKTthKFFGKTthKFVGKTthKG5HKTthKHNHKTthKElHKTthKFBHKTthKFNHKTthKFZHKTthKFdHKTthKFpHKTthKCRHKTthKGFIKTthKGJIKTthKGNIKTthKGVIKTthKGdIKTthKGdJKTthKGlJKTthKGtJKTthKGxJKTthKG1JKTthKG5JKTthKG9JKTthKGZKKTthKG1KKTthKHRKKTthKHVKKTthKEFKKTthKEZKKTthKEtKKTthKFJKKTthKFdKKTthKGdLKTsKYShpSyk7YSh2Syk7YSh3Syk7YSh4Syk7YShGTyk7YShHTyk7YShJTyk7YShKTyk7YShLTyk7YShMTyk7YShNTyk7YShOTyk7YShRTyk7YShSTyk7YShTTyk7YShUTyk7YShVTyk7YShWTyk7YShXTyk7YShYTyk7YShZTyk7YShaTyk7YSgkTyk7YShhUCk7YShiUCk7YShjUCk7YShkUCk7YShlUCk7YShmUCk7YShnUCk7YShoUCk7YShpUCk7YShqUCk7YShrUCk7YShvUCk7YShwUCk7YShxUCk7YShyUCk7YShzUCk7YSh0UCk7YSh3UCk7YShvUyk7YShwUyk7YSh0Uyk7YSh2Uyk7YShDUyk7YShFUyk7YShGUyk7YShHUyk7YShIUyk7YShJUyk7YShKUyk7YShLUyk7YShMUyk7YShNUyk7YShOUyk7YShPUyk7YShRUyk7YShHRyk7YShVUyk7YShWUyk7YShYUyk7YShZUyk7YSgkUyk7YShjVCk7YShlVCk7YShmVCk7YShoVCk7YShpVCk7YShqVCk7YShsVCk7YShtVCk7YShuVCk7YShwVCk7YShxVCk7YShzVCk7YSh0VCk7YSh2VCk7YSh3VCk7YSh4VCk7YSh6VCk7YShBVCk7YShCVCk7YShEVCk7CmEoRVQpO2EoRlQpO2EoR1QpO2EoSVQpO2EoS1QpO2EoTFQpO2EoTlQpO1NUKCJpbnRlcm5hbC5JZnJhbWluZ1N0YXRlU2NoZW1hIixzUygpKTtTVCgiaW50ZXJuYWwucXVpY2tIYXNoIixNaCk7YShUVChNRiwidGFza1NldEFkc1RyYW5zbWlzc2lvblR5cGUiKSksYShUVChQRiwidGFza1NldFVuaXZlcnNhbFBhcmFtcyIpKTtQVHx8KFBUPW5ldyBPVCk7cmV0dXJuIFFUKCl9O3ZhciBKRjtmdW5jdGlvbiBWVCgpe0pGLnNkKGZ1bmN0aW9uKGEsYixjKXtsaigpO3ZhciBkPWpqO2QuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFPWQuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFfHwwO2QuSC5TQU5EQk9YRURfSlNfU0VNQVBIT1JFKys7dHJ5e3JldHVybiBhLmFwcGx5KGIsYyl9ZmluYWxseXtsaigpLGpqLkguU0FOREJPWEVEX0pTX1NFTUFQSE9SRS0tfX0pfWZ1bmN0aW9uIFdUKGEpe2lmKGEmJmEubGVuZ3RoKWZvcih2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSksYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLnJlcGxhY2UoL15fKi8sIiIpO2JbZF09WyJzYW5kYm94ZWRTY3JpcHRzIl19fQpmdW5jdGlvbiBYVChhKXtpZihhKXt2YXIgYj1hbCgyNyxmdW5jdGlvbigpe3JldHVybnt9fSk7R2IoYSxmdW5jdGlvbihjLGQpe2Zvcih2YXIgZT0wO2U8ZC5sZW5ndGg7ZSsrKXt2YXIgZj1kW2VdLnJlcGxhY2UoL15fKi8sIiIpO2JbZl09YltmXXx8W107YltmXS5wdXNoKGMpfX0pfX07ZnVuY3Rpb24gWlQoYSl7bUQocEMoImRldmVsb3Blcl9pZC4iK2EsITApLDAse30pfTtmdW5jdGlvbiAkVChhLGIpe3JldHVybiBFZChhLGJ8fG51bGwpfWZ1bmN0aW9uIFkoYSl7cmV0dXJuIHdpbmRvdy5lbmNvZGVVUklDb21wb25lbnQoYSl9ZnVuY3Rpb24gYVUoYSl7WmMoYSx2b2lkIDAsdm9pZCAwKX1mdW5jdGlvbiBiVShhKXt2YXIgYj1bInZlaW50ZXJhY3RpdmUuY29tIiwidmUtaW50ZXJhY3RpdmUuY24iXTtpZighYSlyZXR1cm4hMTt2YXIgYz1MaihSaihhKSwiaG9zdCIpO2lmKCFjKXJldHVybiExO2Zvcih2YXIgZD0wO2ImJmQ8Yi5sZW5ndGg7ZCsrKXt2YXIgZT1iW2RdJiZiW2RdLnRvTG93ZXJDYXNlKCk7aWYoZSl7dmFyIGY9Yy5sZW5ndGgtZS5sZW5ndGg7Zj4wJiZlLmNoYXJBdCgwKSE9PSIuIiYmKGYtLSxlPSIuIitlKTtpZihmPj0wJiZjLmluZGV4T2YoZSxmKT09PWYpcmV0dXJuITB9fXJldHVybiExfQpmdW5jdGlvbiBjVShhLGIsYyl7Zm9yKHZhciBkPXt9LGU9ITEsZj0wO2EmJmY8YS5sZW5ndGg7ZisrKWFbZl0mJmFbZl0uaGFzT3duUHJvcGVydHkoYikmJmFbZl0uaGFzT3duUHJvcGVydHkoYykmJihkW2FbZl1bYl1dPWFbZl1bY10sZT0hMCk7cmV0dXJuIGU/ZDpudWxsfWZ1bmN0aW9uIGRVKGEsYil7dmFyIGM9e307aWYoYSlmb3IodmFyIGQgaW4gYSlhLmhhc093blByb3BlcnR5KGQpJiYoY1tkXT1hW2RdKTtpZihiKXt2YXIgZT1jVShiLCJwYXJhbWV0ZXIiLCJwYXJhbWV0ZXJWYWx1ZSIpO2UmJihjPSRUKGUsYykpfXJldHVybiBjfWZ1bmN0aW9uIGVVKGEsYixjKXtyZXR1cm4gYT09PXZvaWQgMHx8YT09PWM/YjphfWZ1bmN0aW9uIGZVKGEsYixjKXtyZXR1cm4gVWMoYSxiLGMsdm9pZCAwKX1mdW5jdGlvbiBnVShhLGIpe0FbYV09Yn1mdW5jdGlvbiBoVShhLGIsYyl7dmFyIGQ9QTtiJiYoZFthXT09PXZvaWQgMHx8YyYmIWRbYV0pJiYoZFthXT1iKTtyZXR1cm4gZFthXX12YXIgaVU9e30salU9WC5WO3ZhciBaPXtzZWN1cml0eUdyb3Vwczp7fX07CgpaLnNlY3VyaXR5R3JvdXBzLmFjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlPVsiZ29vZ2xlIl0sWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlPWZ1bmN0aW9uKCl7cmV0dXJue2Fzc2VydDpmdW5jdGlvbigpe30sYWE6ZnVuY3Rpb24oKXtyZXR1cm57fX19fSxaLl9fYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UuTz0iYWNjZXNzX3RlbXBsYXRlX3N0b3JhZ2UiLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5pc1ZlbmRvclRlbXBsYXRlPSEwLFouX19hY2Nlc3NfdGVtcGxhdGVfc3RvcmFnZS5wcmlvcml0eU92ZXJyaWRlPTAsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlLmlzSW5mcmFzdHJ1Y3R1cmU9ITEsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlWyI1Il09ITEsWi5fX2FjY2Vzc190ZW1wbGF0ZV9zdG9yYWdlWyI2Il09ITE7CgoKClouc2VjdXJpdHlHcm91cHMucmVhZF9ldmVudF9kYXRhPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2tleTpjfX0oZnVuY3Rpb24oYil7Wi5fX3JlYWRfZXZlbnRfZGF0YT1iO1ouX19yZWFkX2V2ZW50X2RhdGEuTz0icmVhZF9ldmVudF9kYXRhIjtaLl9fcmVhZF9ldmVudF9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX3JlYWRfZXZlbnRfZGF0YS5pc0luZnJhc3RydWN0dXJlPSExO1ouX19yZWFkX2V2ZW50X2RhdGFbIjUiXT0hMTtaLl9fcmVhZF9ldmVudF9kYXRhWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9ldmVudERhdGFBY2Nlc3MsZD1iLnZ0cF9rZXlQYXR0ZXJuc3x8W10sZT1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihmLGcpe2lmKGchPW51bGwmJiF6YihnKSl0aHJvdyBlKGYse2tleTpnfSwiS2V5IG11c3QgYmUgYSBzdHJpbmcuIik7CmlmKGMhPT0iYW55Iil7dHJ5e2lmKGM9PT0ic3BlY2lmaWMiJiZnIT1udWxsJiZFZyhnLGQpKXJldHVybn1jYXRjaChoKXt0aHJvdyBlKGYse2tleTpnfSwiSW52YWxpZCBrZXkgZmlsdGVyLiIpO310aHJvdyBlKGYse2tleTpnfSwiUHJvaGliaXRlZCByZWFkIGZyb20gZXZlbnQgZGF0YS4iKTt9fSxhYTphfX0pfSgpOwoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57b3B0aW9uczp7Zml4TWlzc2luZ0FwaTohIWMuZml4TWlzc2luZ0FwaX19fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzPWI7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50cy5PPSJkZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMiO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHMuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3lvdXR1YmVfYWN0aXZpdHlfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF95b3V0dWJlX2FjdGl2aXR5X2V2ZW50c1siNSJdPSExO1ouX19kZXRlY3RfeW91dHViZV9hY3Rpdml0eV9ldmVudHNbIjYiXT0KITF9KShmdW5jdGlvbihiKXt2YXIgYz0hIWIudnRwX2FsbG93Rml4TWlzc2luZ0phdmFTY3JpcHRBcGksZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihlLGYpe2lmKCFjJiZmJiZmLmZpeE1pc3NpbmdBcGkpdGhyb3cgZChlLHt9LCJQcm9oaWJpdGVkIG9wdGlvbjogZml4TWlzc2luZ0FwaS4iKTt9LGFhOmF9fSl9KCk7CgoKCgoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1bImdvb2dsZSJdLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gYSgpe3JldHVybnt9fShmdW5jdGlvbihiKXtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50cz1iO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLk89ImRldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMiO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfaGlzdG9yeV9jaGFuZ2VfZXZlbnRzLmlzSW5mcmFzdHJ1Y3R1cmU9ITE7Wi5fX2RldGVjdF9oaXN0b3J5X2NoYW5nZV9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2hpc3RvcnlfY2hhbmdlX2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSxhYTphfX0pfSgpOwoKClouc2VjdXJpdHlHcm91cHMuZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue29wdGlvbnM6Y319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHM9YjtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzLk89ImRldGVjdF9saW5rX2NsaWNrX2V2ZW50cyI7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMucHJpb3JpdHlPdmVycmlkZT0wO1ouX19kZXRlY3RfbGlua19jbGlja19ldmVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X2xpbmtfY2xpY2tfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9saW5rX2NsaWNrX2V2ZW50c1siNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWxsb3dXYWl0Rm9yVGFncyxkPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGUsCmYpe2lmKCFjJiZmJiZmLndhaXRGb3JUYWdzKXRocm93IGQoZSx7fSwiUHJvaGliaXRlZCBvcHRpb24gd2FpdEZvclRhZ3MuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjKXtyZXR1cm57b3B0aW9uczpjfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHM9YjtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5PPSJkZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzIjtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2Zvcm1fc3VibWl0X2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfZm9ybV9zdWJtaXRfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9mb3JtX3N1Ym1pdF9ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93V2FpdEZvclRhZ3MsZD1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7CnJldHVybnthc3NlcnQ6ZnVuY3Rpb24oZSxmKXtpZighYyYmZiYmZi53YWl0Rm9yVGFncyl0aHJvdyBkKGUse30sIlByb2hpYml0ZWQgb3B0aW9uIHdhaXRGb3JUYWdzLiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5yZWFkX2NvbnRhaW5lcl9kYXRhPVsiZ29vZ2xlIl0sWi5fX3JlYWRfY29udGFpbmVyX2RhdGE9ZnVuY3Rpb24oKXtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKCl7fSxhYTpmdW5jdGlvbigpe3JldHVybnt9fX19LFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLk89InJlYWRfY29udGFpbmVyX2RhdGEiLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLmlzVmVuZG9yVGVtcGxhdGU9ITAsWi5fX3JlYWRfY29udGFpbmVyX2RhdGEucHJpb3JpdHlPdmVycmlkZT0wLFouX19yZWFkX2NvbnRhaW5lcl9kYXRhLmlzSW5mcmFzdHJ1Y3R1cmU9ITEsWi5fX3JlYWRfY29udGFpbmVyX2RhdGFbIjUiXT0hMSxaLl9fcmVhZF9jb250YWluZXJfZGF0YVsiNiJdPSExOwpaLnNlY3VyaXR5R3JvdXBzLmxpc3Rlbl9kYXRhX2xheWVyPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2V2ZW50TmFtZTpjfX0oZnVuY3Rpb24oYil7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyPWI7Wi5fX2xpc3Rlbl9kYXRhX2xheWVyLk89Imxpc3Rlbl9kYXRhX2xheWVyIjtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fbGlzdGVuX2RhdGFfbGF5ZXIucHJpb3JpdHlPdmVycmlkZT0wO1ouX19saXN0ZW5fZGF0YV9sYXllci5pc0luZnJhc3RydWN0dXJlPSExO1ouX19saXN0ZW5fZGF0YV9sYXllclsiNSJdPSExO1ouX19saXN0ZW5fZGF0YV9sYXllclsiNiJdPSExfSkoZnVuY3Rpb24oYil7dmFyIGM9Yi52dHBfYWNjZXNzVHlwZSxkPWIudnRwX2FsbG93ZWRFdmVudHN8fFtdLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnKXtpZighemIoZykpdGhyb3cgZShmLHtldmVudE5hbWU6Z30sCiJFdmVudCBuYW1lIG11c3QgYmUgYSBzdHJpbmcuIik7aWYoIShjPT09ImFueSJ8fGM9PT0ic3BlY2lmaWMiJiZkLmluZGV4T2YoZyk+PTApKXRocm93IGUoZix7ZXZlbnROYW1lOmd9LCJQcm9oaWJpdGVkIGxpc3RlbiBvbiBkYXRhIGxheWVyIGV2ZW50LiIpO30sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyl7cmV0dXJue2RhdGFTb3VyY2U6Y319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhPWI7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuTz0iZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YSI7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YS5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF91c2VyX3Byb3ZpZGVkX2RhdGEuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X3VzZXJfcHJvdmlkZWRfZGF0YVsiNSJdPSExO1ouX19kZXRlY3RfdXNlcl9wcm92aWRlZF9kYXRhWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF9jcmVhdGVQZXJtaXNzaW9uRXJyb3I7cmV0dXJue2Fzc2VydDpmdW5jdGlvbihkLAplKXtpZihlIT09ImF1dG8iJiZlIT09Im1hbnVhbCImJmUhPT0iY29kZSIpdGhyb3cgYyhkLHt9LCJVbmtub3duIHVzZXIgcHJvdmlkZWQgZGF0YSBzb3VyY2UuIik7aWYoYi52dHBfbGltaXREYXRhU291cmNlcylpZihlIT09ImF1dG8ifHxiLnZ0cF9hbGxvd0F1dG9EYXRhU291cmNlcyl7aWYoZT09PSJtYW51YWwiJiYhYi52dHBfYWxsb3dNYW51YWxEYXRhU291cmNlcyl0aHJvdyBjKGQse30sIkRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgdmlhIG1hbnVhbGx5IHNwZWNpZmllZCBDU1Mgc2VsZWN0b3JzIGlzIG5vdCBhbGxvd2VkLiIpO2lmKGU9PT0iY29kZSImJiFiLnZ0cF9hbGxvd0NvZGVEYXRhU291cmNlcyl0aHJvdyBjKGQse30sIkRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgZnJvbSBhbiBpbi1wYWdlIHZhcmlhYmxlIGlzIG5vdCBhbGxvd2VkLiIpO31lbHNlIHRocm93IGMoZCx7fSwiQXV0b21hdGljIGRldGVjdGlvbiBvZiB1c2VyIHByb3ZpZGVkIGRhdGEgaXMgbm90IGFsbG93ZWQuIik7Cn0sYWE6YX19KX0oKTsKWi5zZWN1cml0eUdyb3Vwcy5nZXRfdXJsPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkKXtyZXR1cm57Y29tcG9uZW50OmMscXVlcnlLZXk6ZH19KGZ1bmN0aW9uKGIpe1ouX19nZXRfdXJsPWI7Wi5fX2dldF91cmwuTz0iZ2V0X3VybCI7Wi5fX2dldF91cmwuaXNWZW5kb3JUZW1wbGF0ZT0hMDtaLl9fZ2V0X3VybC5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2dldF91cmwuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZ2V0X3VybFsiNSJdPSExO1ouX19nZXRfdXJsWyI2Il09ITF9KShmdW5jdGlvbihiKXt2YXIgYz1iLnZ0cF91cmxQYXJ0cz09PSJhbnkiP251bGw6W107YyYmKGIudnRwX3Byb3RvY29sJiZjLnB1c2goInByb3RvY29sIiksYi52dHBfaG9zdCYmYy5wdXNoKCJob3N0IiksYi52dHBfcG9ydCYmYy5wdXNoKCJwb3J0IiksYi52dHBfcGF0aCYmYy5wdXNoKCJwYXRoIiksYi52dHBfZXh0ZW5zaW9uJiZjLnB1c2goImV4dGVuc2lvbiIpLGIudnRwX3F1ZXJ5JiYKYy5wdXNoKCJxdWVyeSIpLGIudnRwX2ZyYWdtZW50JiZjLnB1c2goImZyYWdtZW50IikpO3ZhciBkPWMmJmIudnRwX3F1ZXJpZXNBbGxvd2VkIT09ImFueSI/Yi52dHBfcXVlcnlLZXlzfHxbXTpudWxsLGU9Yi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oZixnLGgpe2lmKGcpe2lmKCF6YihnKSl0aHJvdyBlKGYse30sIlVSTCBjb21wb25lbnQgbXVzdCBiZSBhIHN0cmluZy4iKTtpZihjJiZjLmluZGV4T2YoZyk8MCl0aHJvdyBlKGYse30sIlByb2hpYml0ZWQgVVJMIGNvbXBvbmVudDogIitnKTtpZihnPT09InF1ZXJ5IiYmZCl7aWYoIWgpdGhyb3cgZShmLHt9LCJQcm9oaWJpdGVkIGZyb20gZ2V0dGluZyBlbnRpcmUgVVJMIHF1ZXJ5IHdoZW4gcXVlcnkga2V5cyBhcmUgc3BlY2lmaWVkLiIpO2lmKCF6YihoKSl0aHJvdyBlKGYse30sIlF1ZXJ5IGtleSBtdXN0IGJlIGEgc3RyaW5nLiIpO2lmKGQuaW5kZXhPZihoKTwwKXRocm93IGUoZix7fSwKIlByb2hpYml0ZWQgcXVlcnkga2V5OiAiK2gpO319ZWxzZSBpZihjKXRocm93IGUoZix7fSwiUHJvaGliaXRlZCBmcm9tIGdldHRpbmcgZW50aXJlIFVSTCB3aGVuIGNvbXBvbmVudHMgYXJlIHNwZWNpZmllZC4iKTt9LGFhOmF9fSl9KCk7CgoKClouc2VjdXJpdHlHcm91cHMucmVhZF9kb21fZWxlbWVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnt0eXBlOmMsdmFsdWU6ZH19KGZ1bmN0aW9uKGIpe1ouX19yZWFkX2RvbV9lbGVtZW50cz1iO1ouX19yZWFkX2RvbV9lbGVtZW50cy5PPSJyZWFkX2RvbV9lbGVtZW50cyI7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX3JlYWRfZG9tX2VsZW1lbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fcmVhZF9kb21fZWxlbWVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fcmVhZF9kb21fZWxlbWVudHNbIjUiXT0hMTtaLl9fcmVhZF9kb21fZWxlbWVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2FsbG93ZWRFbGVtZW50SWRzfHwibm9uZSIsZD1iLnZ0cF9hbGxvd2VkQ3NzU2VsZWN0b3JzfHwibm9uZSIsZT1iLnZ0cF9lbGVtZW50SWRzfHxbXSxmPWIudnRwX2Nzc1NlbGVjdG9yc3x8W10sZz0KYi52dHBfY3JlYXRlUGVybWlzc2lvbkVycm9yO3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oaCxsLG4pe3N3aXRjaChsKXtjYXNlICJpZCI6aWYoYz09PSJub25lIilicmVhaztpZihjPT09ImFueSJ8fGUuaW5kZXhPZihuKT4tMSlyZXR1cm47YnJlYWs7Y2FzZSAiY3NzIjppZihkPT09Im5vbmUiKWJyZWFrO2lmKGQ9PT0iYW55Inx8Zi5pbmRleE9mKG4pPi0xKXJldHVybjticmVhaztkZWZhdWx0OnRocm93IGcoaCx7fSwiVW5rbm93biBzZWxlY3RvciB0eXBlICIrbCsiLiIpO310aHJvdyBnKGgse30sIlByb2hpYml0ZWQgc2VsZWN0b3IgdmFsdWUgIituKyIgZm9yIHNlbGVjdG9yIHR5cGUgIitsKyIuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9jbGlja19ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoYixjLGQpe3JldHVybnttYXRjaENvbW1vbkJ1dHRvbnM6Yyxjc3NTZWxlY3RvcjpkfX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9jbGlja19ldmVudHM9YjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5PPSJkZXRlY3RfY2xpY2tfZXZlbnRzIjtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc1ZlbmRvclRlbXBsYXRlPSEwO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X2NsaWNrX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfY2xpY2tfZXZlbnRzWyI1Il09ITE7Wi5fX2RldGVjdF9jbGlja19ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKGIpe3ZhciBjPWIudnRwX2NyZWF0ZVBlcm1pc3Npb25FcnJvcjtyZXR1cm57YXNzZXJ0OmZ1bmN0aW9uKGQsZSxmKXtpZihlIT09dm9pZCAwJiZ0eXBlb2YgZSE9PQoiYm9vbGVhbiIpdGhyb3cgYyhkLHt9LCJtYXRjaENvbW1vbkJ1dHRvbnMgbXVzdCBiZSBhIGJvb2xlYW4uIik7aWYoZiE9PXZvaWQgMCYmdHlwZW9mIGYhPT0ic3RyaW5nIil0aHJvdyBjKGQse30sImNzc1NlbGVjdG9yIG11c3QgYmUgYSBzdHJpbmcuIik7fSxhYTphfX0pfSgpOwpaLnNlY3VyaXR5R3JvdXBzLmRldGVjdF9zY3JvbGxfZXZlbnRzPVsiZ29vZ2xlIl0sZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7cmV0dXJue319KGZ1bmN0aW9uKGIpe1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cz1iO1ouX19kZXRlY3Rfc2Nyb2xsX2V2ZW50cy5PPSJkZXRlY3Rfc2Nyb2xsX2V2ZW50cyI7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9zY3JvbGxfZXZlbnRzLnByaW9yaXR5T3ZlcnJpZGU9MDtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHMuaXNJbmZyYXN0cnVjdHVyZT0hMTtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X3Njcm9sbF9ldmVudHNbIjYiXT0hMX0pKGZ1bmN0aW9uKCl7cmV0dXJue2Fzc2VydDpmdW5jdGlvbigpe30sYWE6YX19KX0oKTsKCgoKWi5zZWN1cml0eUdyb3Vwcy5kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHM9WyJnb29nbGUiXSxmdW5jdGlvbigpe2Z1bmN0aW9uIGEoKXtyZXR1cm57fX0oZnVuY3Rpb24oYil7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cz1iO1ouX19kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHMuTz0iZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzIjtaLl9fZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzLmlzVmVuZG9yVGVtcGxhdGU9ITA7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cy5wcmlvcml0eU92ZXJyaWRlPTA7Wi5fX2RldGVjdF9mb3JtX2ludGVyYWN0aW9uX2V2ZW50cy5pc0luZnJhc3RydWN0dXJlPSExO1ouX19kZXRlY3RfZm9ybV9pbnRlcmFjdGlvbl9ldmVudHNbIjUiXT0hMTtaLl9fZGV0ZWN0X2Zvcm1faW50ZXJhY3Rpb25fZXZlbnRzWyI2Il09ITF9KShmdW5jdGlvbigpe3JldHVybnthc3NlcnQ6ZnVuY3Rpb24oKXt9LAphYTphfX0pfSgpOwpmdW5jdGlvbiBrVSgpe3ZhciBhPXt9LGI9e2RhdGFMYXllcjp0QSxjYWxsYmFjazpmdW5jdGlvbihjKXthLmhhc093blByb3BlcnR5KGMpJiZ5YihhW2NdKSYmYVtjXSgpO2RlbGV0ZSBhW2NdfSxib290c3RyYXA6MH07cmV0dXJuIGJ9CmZ1bmN0aW9uIGxVKCl7dmFyIGE9a1UoKTtvaihhKTtDaygpO2pBKCk7dmFyIGI9YWwoMjcsZnVuY3Rpb24oKXtyZXR1cm57fX0pO1FiKGIsWi5zZWN1cml0eUdyb3Vwcyk7dmFyIGM9eWsoemsoKSksZCxlPWM9PW51bGw/dm9pZCAwOihkPWMuY29udGV4dCk9PW51bGw/dm9pZCAwOmQuc291cmNlO0tsKGUsYz09bnVsbD92b2lkIDA6Yy5wYXJlbnQpO2UhPT0yJiZlIT09NCYmZSE9PTN8fFAoMTQyKTtyZXR1cm4gYX1mdW5jdGlvbiBtVSgpe3ZhciBhPUUoNjApO2lmKGEpZm9yKHZhciBiPWEuc3BsaXQoIi4iKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY10sZT1UTDtkJiYoZS5IW2RdPSEwKX19CmZ1bmN0aW9uIG5VKCl7enAoKTtsaigpO2Zvcih2YXIgYT1kYXRhLnJlc291cmNlfHx7fSxiPWNBLGM9YS5tYWNyb3N8fFtdLGQ9MDtkPGMubGVuZ3RoO2QrKyliLm1hY3Jvcy5wdXNoKG5ldyBVeihjW2RdLGQsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBlPWEudGFnc3x8W10sZj0wO2Y8ZS5sZW5ndGg7ZisrKWIudGFncy5wdXNoKG5ldyBZeihlW2ZdLGYsYi50YWdzLGIubWFjcm9zKSk7Zm9yKHZhciBnPWEucHJlZGljYXRlc3x8W10saD0wO2g8Zy5sZW5ndGg7aCsrKWIucHJlZGljYXRlcy5wdXNoKG5ldyBWeihnW2hdLGIudGFncyxiLm1hY3JvcykpO2Zvcih2YXIgbD1hLnJ1bGVzfHxbXSxuPTA7bjxsLmxlbmd0aDtuKyspYi5ydWxlcy5wdXNoKG5ldyBXeihsW25dLG4pKTtRej1aO3ZhciBwPWRhdGEucGVybWlzc2lvbnN8fHt9LHE9WjtkZz1uZXcgZ2coRSg1KSxwLHEpO3ZhciByPWRhdGEuc2FuZGJveGVkX3NjcmlwdHMsdD1kYXRhLnNlY3VyaXR5X2dyb3Vwcyx1PWRhdGEucnVudGltZXx8CltdLHY9ZGF0YS5ydW50aW1lX2xpbmVzO0pGPW5ldyBwZjtWVCgpO1B6PUlGKCk7dmFyIHg9SkYseT1VVCgpLHo9bmV3IExkKCJyZXF1aXJlIix5KTt6LlphKCk7eC5ILkguc2V0KCJyZXF1aXJlIix6KTtkYi5zZXQoInJlcXVpcmUiLHopO2Zvcih2YXIgQz0wO0M8dS5sZW5ndGg7QysrKXt2YXIgRD11W0NdO2lmKCFBcnJheS5pc0FycmF5KEQpfHxELmxlbmd0aDwzKXtpZihELmxlbmd0aD09PTApY29udGludWU7YnJlYWt9diYmdltDXSYmdltDXS5sZW5ndGgmJlBmKEQsdltDXSk7dHJ5e0pGLmV4ZWN1dGUoRCl9Y2F0Y2gob1Upe319V1Qocik7WFQodCk7dmFyIEk9bFUoKTtpRigpO3ZtLmJpbmQoKTtpZighRGopZm9yKHZhciBHPUJtKCk/ZXAoTGYoNSkpOmVwKExmKDQpKSxOPW0oUm8pLFM9Ti5uZXh0KCk7IVMuZG9uZTtTPU4ubmV4dCgpKXt2YXIgVz1TLnZhbHVlLGVhPVcsamE9R1tXXT8iZ3JhbnRlZCI6ImRlbmllZCI7dGwoKS5pbXBsaWNpdChlYSxqYSl9aEUuYmluZCgpO1RCKCk7Ck9CKCk7Zm4uTiYmKGd6KCksZnooQUYpLGdBKCksY0I9bmV3IGJCLGZ6KGl6KSxPQygpLERGfHwoREY9bmV3IEJGKSxmQnx8KGZCPW5ldyBlQiksRkY9bmV3IEVGKTtpZihmbi5LKXtERS5iaW5kKCk7bUMuYmluZCgpO3dFLmJpbmQoKTt2YXIgZmE9QWsoKTtpZihmYSl7dmFyIHNhO2E6e3ZhciBkYSxtYT0oZGE9ZmEuc2NyaXB0RWxlbWVudCk9PW51bGw/dm9pZCAwOmRhLnNyYztpZihtYSl7dmFyIFBhO3RyeXt2YXIgRmE7UGE9KEZhPXJkKCkpPT1udWxsP3ZvaWQgMDpGYS5nZXRFbnRyaWVzQnlUeXBlKCJyZXNvdXJjZSIpfWNhdGNoKG9VKXt9aWYoUGEpe2Zvcih2YXIgcWE9LTEsaWI9bShQYSksWGI9aWIubmV4dCgpOyFYYi5kb25lO1hiPWliLm5leHQoKSl7dmFyIExjPVhiLnZhbHVlO2lmKExjLmluaXRpYXRvclR5cGU9PT0KInNjcmlwdCImJihxYSs9MSxMYy5uYW1lLnJlcGxhY2UoTkUsIiIpPT09bWEucmVwbGFjZShORSwiIikpKXtzYT1xYTticmVhayBhfX1QKDE0Nil9ZWxzZSBQKDE0NSl9c2E9dm9pZCAwfXZhciBRZD1zYTtRZCE9PXZvaWQgMCYmKGZhLmNhbm9uaWNhbENvbnRhaW5lcklkJiZVbSgicnRnIixTdHJpbmcoZmEuY2Fub25pY2FsQ29udGFpbmVySWQpKSxVbSgic2xvIixTdHJpbmcoUWQpKSxVbSgiaGxvIixmYS5odG1sTG9hZE9yZGVyfHwiLTEiKSxVbSgibHN0IixTdHJpbmcoZmEubG9hZFNjcmlwdFR5cGV8fCIwIikpKX1lbHNlIFAoMTQ0KTt2YXIgWWM7dmFyIERkPXhrKCk7aWYoRGQpaWYoRGQuY2Fub25pY2FsQ29udGFpbmVySWQpWWM9RGQuY2Fub25pY2FsQ29udGFpbmVySWQ7ZWxzZXt2YXIgamYsdmg9RGQuc2NyaXB0Q29udGFpbmVySWR8fCgoamY9RGQuZGVzdGluYXRpb25zKT09bnVsbD92b2lkIDA6amZbMF0pO1ljPXZoPyJfIit2aDp2b2lkIDB9ZWxzZSBZYz12b2lkIDA7dmFyIEpFPQpZYztKRSYmVW0oInBjaWQiLEpFKTtVbSgiYnQiLFN0cmluZyhJZig0Nyk/MjpJZig1MCk/MTowKSk7VW0oImN0IixTdHJpbmcoSWYoNDcpPzA6SWYoNTApPzE6MykpO0FFLmJpbmQoKTtmb3IodmFyIFdyPVtdLFhyPVtdLEtFPW0oT2JqZWN0LmtleXMoR0UpKSxZcj1LRS5uZXh0KCk7IVlyLmRvbmU7WXI9S0UubmV4dCgpKXt2YXIgcm09WXIudmFsdWU7aWYod2luZG93LmlzU2VjdXJlQ29udGV4dHx8IUlFW3JtXSl7dmFyIExFPUdFW3JtXSgpO2lmKHliKExFKSl7dmFyIE1FPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKExFKTtUYihNRSwieyBbbmF0aXZlIGNvZGVdIH0iKXx8VGIoTUUsIntcbiAgICBbbmF0aXZlIGNvZGVdXG59Iil8fFhyLnB1c2gocm0pfWVsc2UgV3IucHVzaChybSl9fVdyLmxlbmd0aD4wJiZVbSgianNtIixXci5qb2luKCJ+IikpO1hyLmxlbmd0aD4wJiZVbSgianNwIixYci5qb2luKCJ+IikpO0V5fHwoRXk9bmV3IER5KX1oRigpO2ltKDEpO0VHKCk7cmV0dXJuIEl9CmZ1bmN0aW9uIHVtKCl7dHJ5e2lmKCFoaygpJiYoSWYoNDcpfHwhTmsoKSkpe0lmKDY0KSYmd2ouSC5LLmFkZCgxMTg1MTc5MTcpO3pqKCk7Zm4uSCYmc3ooKTtXZls1XT0hMDt2YXIgYT1raigiZGVidWdHcm91cElkIixmdW5jdGlvbigpe3JldHVybiBTdHJpbmcoTWF0aC5mbG9vcihOdW1iZXIuTUFYX1NBRkVfSU5URUdFUipNYXRoLnJhbmRvbSgpKSl9KTtTbChhKTtrdCgpO3pGKCk7RnQoKTtQQigpO2lmKERrKCkpe0UoNSk7REcoKTtpQigpLnJlbW92ZUV4dGVybmFsUmVzdHJpY3Rpb25zKHZrKCkpO31lbHNle0ZNLlIoKTtuVSgpLmJvb3RzdHJhcD1OYigpO0lmKDUxKSYmcEUoKTsKZm4uSCYmdHooKTt0eXBlb2YgQS5uYW1lPT09InN0cmluZyImJlNiKEEubmFtZSwid2ViLXBpeGVsLXNhbmRib3gtQ1VTVE9NIikmJnNkKCk/WlQoImRNRGcwWXoiKTpBLlNob3BpZnkmJihaVCgiZE4yWmtNaiIpLHNkKCkmJlpUKCJkTlRVMFl6IikpO21VKCl9fX1jYXRjaChiKXtpbSg1KSxoeigpfX0KKGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXtuPUIuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS10YWctYXNzaXN0YW50LXByZXNlbnQiKTtnbChuKSYmKGw9aC54bSl9ZnVuY3Rpb24gYygpe2wmJktjP2cobCk6YSgpfWlmKCFBW0UoMzcpXSl7dmFyIGQ9ITE7aWYoQi5yZWZlcnJlcil7dmFyIGU9UmooQi5yZWZlcnJlcik7ZD1OaihlLCJob3N0Iik9PT1FKDM4KX1pZighZCl7dmFyIGY9Y3EoRSgzOSkpO2Q9ISghZi5sZW5ndGh8fCFmWzBdLmxlbmd0aCl9ZCYmKEFbRSgzNyldPSEwLFVjKEUoNDApKSl9dmFyIGc9ZnVuY3Rpb24odSl7dmFyIHY9IkdUTSIseD0iR1RNIjtJZig0NSkmJih2PSJPR1QiLHg9IkdUQUciKTt2YXIgeT1FKDIzKSx6PUFbeV07enx8KHo9W10sQVt5XT16LFVjKCJodHRwczovLyIrRSgzKSsiL2RlYnVnL2Jvb3RzdHJhcD9pZD0iK0UoNSkrIiZzcmM9Iit4KyImY29uZD0iK1N0cmluZyh1KSsiJmd0bT0iK2R1KCkpKTt2YXIgQz17bWVzc2FnZVR5cGU6IkNPTlRBSU5FUl9TVEFSVElORyIsCmRhdGE6e3NjcmlwdFNvdXJjZTpLYyxjb250YWluZXJQcm9kdWN0OnYsZGVidWc6ITEsaWQ6RSg1KSx0YXJnZXRSZWY6e2N0aWQ6RSg1KSxpc0Rlc3RpbmF0aW9uOnNrKCksY2Fub25pY2FsSWQ6RSg2KX0sYWxpYXNlczp3aygpLGRlc3RpbmF0aW9uczp0aygpfX0sRD1DLmRhdGE7RC5yZXN1bWU9ZnVuY3Rpb24oKXthKCl9O0QucmVzdW1lV2l0aE1lbW9zPWZ1bmN0aW9uKCl7c2woMSk7YSgpfTtJZigyKSYmKEMuZGF0YS5pbml0aWFsUHVibGlzaD0hMCk7ei5wdXNoKEMpfSxoPXtHcToxLFBtOjIsb246MyxqbDo0LHhtOjV9O2hbaC5HcV09IkdUTV9ERUJVR19MRUdBQ1lfUEFSQU0iO2hbaC5QbV09IkdUTV9ERUJVR19QQVJBTSI7aFtoLm9uXT0iUkVGRVJSRVIiO2hbaC5qbF09IkNPT0tJRSI7aFtoLnhtXT0iRVhURU5TSU9OX1BBUkFNIjt2YXIgbD12b2lkIDAsbj12b2lkIDAscD1MaihBLmxvY2F0aW9uLCJxdWVyeSIsITEsdm9pZCAwLCJndG1fZGVidWciKTtnbChwKSYmKGw9aC5QbSk7CmlmKCFsJiZCLnJlZmVycmVyKXt2YXIgcT1SaihCLnJlZmVycmVyKTtOaihxLCJob3N0Iik9PT1FKDI0KSYmKGw9aC5vbil9aWYoIWwpe3ZhciByPWNxKCJfX1RBR19BU1NJU1RBTlQiKTtyLmxlbmd0aCYmclswXS5sZW5ndGgmJihsPWguamwpfWx8fGIoKTtpZighbCYmZmwobikpe3ZhciB0PSExOyRjKEIsIlRBRGVidWdTaWduYWwiLGZ1bmN0aW9uKCl7dHx8KHQ9ITAsYigpLGMoKSl9LCExKTtBLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0fHwodD0hMCxiKCksYygpKX0sMjAwKX1lbHNlIGMoKX0pKGZ1bmN0aW9uKCl7IUlmKDQ3KXx8dG0oKVsiMCJdP3VtKCk6eG0oKX0pOwoKfSkoKQoK"}},"time_used":136,"timings":{"blocked":-1,"dns":5,"connect":16,"send":0,"wait":34,"receive":46,"ssl":35},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1958.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.607Z","timestamp":1785159268607,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1958.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2699\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 03:33:52 GMT\r\nlast-modified: Tue, 19 Oct 2021 05:33:52 GMT\r\netag: \"739797800c1ad83ba9a3cdddb9824693\"\r\ncache-control: max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 36037\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: 57eCN23snmi_qGhPJ2k2XZyYlCXfrZhFizJFntrkleJLldXvY810dg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2699,"size_decoded":3208,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"739797800c1ad83ba9a3cdddb9824693","sha1":"8fa44745cb0a87a781317153ffebcca127e4c498","sha256":"6de001279f8561ebcd5da21d426f25f0f554b5f665638e84b33876a079c56c52","sha512":"25ec9a6e68a3024e7054c566336ca457a8116c6d29c5b2a901c98ef4d1f14c0adeb8ef16f56bd8d2e07466ee81c0146adc992289efce6a9fa8c2796edd4c0fe8","ssdeep":"","tlshash":"a7511a5335d2fada77c981c3f942215cc720d62d4306a2e7b535078feb06861dba520b","first_seen":"2023-05-17T08:55:45Z","last_seen":"2026-07-29T06:14:00.312679Z","times_seen":3227,"resource_available":false,"data":"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"}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/27772.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.645Z","timestamp":1785159268645,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/27772.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1840\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 16 Dec 2025 19:42:45 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 08:00:37 GMT\r\ncache-control: public, max-age=86400\r\netag: \"ba53b6c577ea73bf426df505b732ad48\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 20032\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: iIa0oozL49yTmu_qBqYRkYzV2x00E1uUqxLObyONxwm7aDdkwBSgrw==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":1840,"size_decoded":2412,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"ba53b6c577ea73bf426df505b732ad48","sha1":"674433b4de3fa0dde8732c9031f31494dd09fc67","sha256":"b24e2e57a40eccd8224fe4ffb458555a5727a3abd3c33b78e1bc55126b72c6ef","sha512":"59ff544b7a4c87e63f093faad0c609c08a63356f09e92474e7e2ce5313d98114658f78616c626aca649f9689024e7aa376120fd0d1cf009f6fbfcaff325935f7","ssdeep":"","tlshash":"40314bcdc2e8f15f798644d80058aaa489216f75e4b84acac0ed3734c2275ec29ec074","first_seen":"2026-03-04T08:47:10.934258Z","last_seen":"2026-07-29T06:14:00.302705Z","times_seen":1356,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAG90lEQVR4XuWbW0hWSxTHt2kqlRFdDLEbBIH10nkIggpKrIcwAh8SqVNEhVBZSEhGJNXBhx40i26aGHTxoQcfksBDPUgFQURHKUjoJpwuSl7K0jLTOfs/nW8zs9bXt/fs7+In34If1LfXXrPWds/MmjWzLSu6kmyTY/OnTZVNs81Tmx6bURvxP/g3fsM16EAX9+Be2JhQkmqTa1Nn86+lB2oK7oUN2IJN2I5bybL5y6bT4oFEik7rVxtoK24k26baZtDiDkcLtIU20fa4SbpNmc2AxR2MFWgbPsCXmMofNv9Y3KHxAr7Ap6hLkk2JzZDFnRhv4BN8g49REbxm9RZvON6AjxHvEhk2f1u8sXilxfrlc0QEhlot3ki802pF4CHgVZpIf3kKfPfdHTCYTIQ+7wZi8DUwYkSlxjxTVFQkjhw54ptDhw6JwsJCsWTJEpGUlMTsG4JYjARzqu+pDg4/f/5cjI2NRYQXL16IiooKkZ2dzdryCGLxnCegz4SV5KSmporv37+zQMJlYGBAHDt2TNqnbXoAMXkaD5Ba0puNWLp0KXM+kjx48EBkZWWxdj2A2EIKFhdh5/YFBQWaw3iFT506ZUR1dbW4ffu26OnpYQ8gYHPBggWsbRcQW8gFFFZY9CZjMIipzp4/f57peGXKlCli+/bt4uXLl+whPH78WF6n97iAGIMK1tgRWdI2NDRojh44cIDpmJKRkSHq6+vZQzh79izTdQExBq0noNBAlX1x//59zcn169czHT9MmjRJXLp0SbM9PDwsli1bxnRdQKyaoNTUaXHFkGzdulXU1NQwPn36pDl57tw5cfz4cSN2794t5s6dy9pMS0sTT5480ew3NjYyPRc6LVJeQ72NKrnS2trKXslIggdZWlrK2s3LyxOjo6OO3tevX8WcOXOYnguI2REUHalCSCZPnizevn3LnI4GyArVtpOTk0VHR4emg5mH+ugCYpaCsjMqr1QhJHjiP3/+ZM5Gg6GhIZYFnjlzRtOprKxkPrqAmGXJHbV349L17Nmzxd69exn37t3THLt27ZrYtm2bEXv27BGvXr3S7Bw8eFBrf+fOndp1H+MAYkbscgOCXvTN3bt3Ncfy8/OZjhd27dql2cHgql6nyVZzczOz4QHELndh6AVXkIDMmDHDYdasWXLUfv/+veMUBiqkxenp6UZMmzZNXLlyRQvwxIkTWvtbtmzRrjc1NTEfPYDY5VYUveDKrVu3xJcvXxwGBwflnKw6Bfr7+0VfX58Rnz9/ZnZWrVqltU+zzYsXLzIfPYDY5X4cveDKmzdvmJPRoqWlhdUE8JuqU1JSwnz0AGKXm5L0QkjwymPupY5Gg7a2NrbymzdvnnzjAjroasuXL2d+egCxm88AOTk58rXHQ1D58eOH5vy3b99kMuOHZ8+eifLycjF16lTW/unTp7V2oIvcgOp5ALGzH11BTo5BkHLjxg3NMaSz9N5wwbqCPugw22E/+Obhw4eaY3TgCpc1a9aI3t5erY329na5PqC6Bph3gd+BETzgGPrlzJkzmY4f0A2OHj0qM0I1eHSxlStXMn0DZBcwHgSDgVRVde7du3esX2IkV3MHFVR3Fi5c6LB48WKZRCHlhS3VNkAavmPHDuaHIXIQ9DUNUtA3VQeRElOdRYsWsUD8gIIr0mVq3wdyGvSVCFH279+vOXn58mWms3HjRhaMKVgjrF27ltn2iUyEfKXCFLo6KysrYzo0ezOhq6tLHD58WJbGqN0wkKlwRBZDNDPbvHkz07l69aqmg0Hz9evXsuD54cMHB9QZsLGChRXm/E2bNsk1ArUXAeRiyNdyWAV5AcrUanBIlqjeo0ePNB1Ma7gXYMBMSUmR4N809Y0CznLYV0FEZfr06VpqikURnZvx/48fP2o6wWp+McQpiECMS2IqqMqqf1mkplRn/vz5YmRkxNHBqx6Dv3IonJIYxFdRNAAtTty8eZPp5ObmajooqFKdGKMVRX2VxQPQ0f3kyZNMB+UyVcfHhkYk6bSCnDr1vTFy/fp1LTjU9agOAlZ1iouLmU4MYRsjEN9bY9ijU4NbsWIF07lz546ms3r1aqYTI367NQYx3hzFtKUugpCmZmZmMr3u7m5HB4NhMJ0Y8dvNUYjx9jgWMerojhVabW2tuHDhgkNdXZ22k4PCKTZWqK0Y4Lo9DjE6ILFu3Trt1fbCOM4ArgckIEZHZDCY0QDdwA4vtRMDEFOa5VE8H5KqqqpiAboRbMMzyhgdkgqIp2NyGzZsEPv27TMCxQ5qJ8oYH5ODJPxBSchEPyqLQ9OejsaFkoQ+LB0QGMLTpI3EK3hrIxZ8QBL6g4mAJPQnM6ok7EdTqiT0Z3OqJOyHk1QS9tNZKgn78XQwQdk5rj+f/w9IgP0pU1qUfAAAAABJRU5ErkJggg=="}},"time_used":29,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":27,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.927Z","timestamp":1785159269927,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/tradingview-copyright-data-impl.27f349a1d58483f27eaa.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-dc9\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3d28b9ce9c59b069e6982a576ab5d980\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"]}],"data":{"size":3529,"size_decoded":2690,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (1999)","md5":"88cd75b972ac65ea66d51cca418cd69c","sha1":"f4df7f63194fb7a17442ba8c04e626440cdf7985","sha256":"c7c434bf3cf0f1b1f069cde14034f32a220711a98b1190aca13e5f5b85ad3971","sha512":"877ef0b222a370b5ebeef0a0b5ec62ae76954d81f00617c2c9a7f58e0c171a599cf35ae0ac615d4daec98634a6f67c438043e0b7342efc2dc6837666902e216c","ssdeep":"","tlshash":"1c712d9a2252a8cd2553d979cc3b05e5621fa8fc3a8f43e0f973cf30a0831d5a912928","first_seen":"2026-07-23T13:38:20.341671Z","last_seen":"2026-07-29T11:04:57.516744Z","times_seen":1718,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NzUwOV0sezg2NDI3NChlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zLWhhbGYtdGltZSI6Ii4zcyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsbGFiZWw6ImxhYmVsLWU5YzZkeWNWIixsb2dvV3JhcDoibG9nb1dyYXAtZTljNmR5Y1YiLHN2Z1RleHRXcmFwOiJzdmdUZXh0V3JhcC1lOWM2ZHljViIsbGFyZ2U6ImxhcmdlLWU5YzZkeWNWIn19LDcwNTc5MChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6KCk9PmF9KTt2YXIgaT1jKDkzNzc0NCkscj1jKDg2NDI3NCksbD1jKDk1OTk5MiksaD1jKDIxMjk2MSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybnsuLi57aWNvbjpsLHN2Z1RleHQ6aH0sdGhlbWU6cix1cmw6KDAsaS5nZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtKShlLHQpfX19LDkzNzc0NChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtOigpPT5sfSk7dmFyIGk9YygzNjQxODgpLHI9Yyg2MDE1ODcpO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBjPSgwLGkuZ2V0VFZIb3N0RnJvbUxvY2FsZSkoZXx8ImVuIiksbD10PygwLHIuYnVpbGRVdG1RdWVyeVN0cmluZykodCk6IiI7cmV0dXJuYGh0dHBzOi8vJHtjfSR7bD8iPyIrbDoiIn1gfX0sMzE5ODcyKGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldExvY2FsaXplZERvbWFpbjooKT0+cn0pO2NvbnN0IGk9e2FyX0FFOiJhciIsZGVfREU6ImRlIixlbjoid3d3IixlczoiZXMiLGNhX0VTOiJlcyIsZmFfSVI6Ind3dyIsZnI6ImZyIixoZV9JTDoiaWwiLGlkOiJpZCIsaW46ImluIixpdDoiaXQiLGphOiJqcCIsa3I6ImtyIixtc19NWToibXkiLHBsOiJwbCIsYnI6ImJyIixydToicnUiLHN2X1NFOiJzZSIsdGhfVEg6InRoIix0cjoidHIiLHVrOiJ1ayIsdmlfVk46InZuIix6aF9DTjoiY24iLHpoX1RXOiJ0dyJ9O2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGlbZV18fCJ3d3cifX0sMzY0MTg4KGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldFRWSG9zdEZyb21Mb2NhbGU6KCk9PnJ9KTt2YXIgaT1jKDMxOTg3Mik7ZnVuY3Rpb24gcihlKXtyZXR1cm4oMCxpLmdldExvY2FsaXplZERvbWFpbikoZSkrIi50cmFkaW5ndmlldy5jb20ifX0sOTU5OTkyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNyAxMCIgd2lkdGg9IjE3IiBoZWlnaHQ9IjEwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMTMxNzIyIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjQyIDkuMDRIOS40N2wzLjU2LTloMy45NGwtMy41NSA5Wk03IC4wNEgwdjNoNHY2aDN2LTlabTIuNSAzYTEuNSAxLjUgMCAxIDAgMC0zIDEuNSAxLjUgMCAwIDAgMCAzWiIvPjwvc3ZnPid9LDIxMjk2MShlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDcxIDEzIiB3aWR0aD0iNzEiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGQ9Ik01My4xIDJjMCAuNTctLjQ5IDEuMDMtMS4wOSAxLjAzLS41OCAwLTEuMDctLjQ2LTEuMDctMS4wMyAwLS41Ny41LTEuMDQgMS4wNy0xLjA0LjYgMCAxLjA4LjQ3IDEuMDggMS4wNFpNNTIuOSAxMGgtMS43NlYzLjY1aDEuNzZWMTBaTTI2LjQ3IDMuMDNjLjYgMCAxLjA4LS40NiAxLjA4LTEuMDMgMC0uNTctLjQ4LTEuMDMtMS4wOC0xLjAzLS41OCAwLTEuMDcuNDYtMS4wNyAxLjAzIDAgLjU3LjQ5IDEuMDMgMS4wNyAxLjAzWk0yNS41NyAxMGgxLjc0VjMuNWgtMS43NFYxMFpNNC4wNyAxMEgyLjMzVjIuNzRIMFYxaDYuNHYxLjc0SDQuMDZWMTBaTTguMTQgMTAgNi4zOSAxMFYzLjQ5aDEuNzV2MS4xYy4yLS41OC43Ny0xLjAyIDEuNDYtMS4wMmguMDJjLjE4IDAgLjM1IDAgLjU1LjA1djEuNjZhMi4zMyAyLjMzIDAgMCAwLS43Ni0uMTJjLS44IDAtMS4yNy41OC0xLjI3IDEuNTdWMTBaTTMwLjIyIDEwaC0xLjc1VjMuNWgxLjc1di41N2MuMzMtLjQ3Ljg5LS43IDEuNjktLjcgMS40OCAwIDIuMzcgMS4wNCAyLjM3IDIuNTlWMTBoLTEuNzRWNi40YzAtLjg2LS4zMy0xLjU1LTEuMDMtMS41NS0uNzggMC0xLjMuNTQtMS4zIDEuNjhWMTBaTTQ2Ljk1IDEwbDMuNi05aC0yLjAzTDQ2LjIgNy4yNyA0My41OCAxaC0yLjAzbDMuNjYgOWgxLjc0Wk02OC4yNSAxMGgtMS43bC0xLjE4LTMuNzVMNjQuMjEgMTBoLTEuN2wtMi4wOC02LjVoMS44M2wxLjE5IDQuMSAxLjI2LTQuMWgxLjMxbDEuMjggNC4xIDEuMTctNC4xaDEuODRMNjguMjUgMTBaIi8+PHBhdGggZmlsbD0iIzEzMTcyMiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy4zMiAxMC4wMmMuODggMCAxLjUtLjQ0IDEuNzktLjg1VjEwaDEuNzlWMy41SDE1LjF2LjdhMi4yIDIuMiAwIDAgMC0xLjgtLjg1Yy0xLjcgMC0zIDEuNTQtMyAzLjM0IDAgMS44IDEuMyAzLjMzIDMgMy4zM1ptLjM3LTEuNmMtLjk3IDAtMS42MS0uNzItMS42MS0xLjczcy42NC0xLjc0IDEuNi0xLjc0Yy45OCAwIDEuNjIuNzMgMS42MiAxLjc0IDAgMS0uNjQgMS43NC0xLjYxIDEuNzRaTTIyLjY2IDkuMTdjLS4zLjQtLjkuODUtMS43OS44NS0xLjcgMC0zLTEuNTMtMy0zLjMzczEuMy0zLjM0IDMtMy4zNGMuODggMCAxLjUuNDUgMS44Ljg2VjFoMS43NHY5aC0xLjc1di0uODNabS0zLjAzLTIuNDhjMCAxIC42NCAxLjc0IDEuNjEgMS43NC45NyAwIDEuNjEtLjczIDEuNjEtMS43NHMtLjY0LTEuNzQtMS42LTEuNzRjLS45OCAwLTEuNjIuNzMtMS42MiAxLjc0Wk0zOC40OCAxMi42OGMxLjk2IDAgMy40Mi0xIDMuNDItMy4zVjMuNWgtMS44di43MmEyLjEgMi4xIDAgMCAwLTEuNzgtLjg2Yy0xLjY4IDAtMy4wMiAxLjQzLTMuMDIgMy4yNCAwIDEuNzkgMS4zNCAzLjMgMy4wMiAzLjNhMi4yIDIuMiAwIDAgMCAxLjc4LS45M3YuNDRjMCAxLjAyLS42IDEuNzUtMS42NCAxLjc1LS43MiAwLTEuNDMtLjI0LTItLjhsLS45NSAxLjMxYy43Mi43IDEuODYgMS4wMiAyLjk3IDEuMDJabS4yLTQuNDZhMS42IDEuNiAwIDAgMS0xLjYyLTEuNjNjMC0uOTkuNzUtMS42NCAxLjYzLTEuNjQuODggMCAxLjYyLjY1IDEuNjIgMS42NGExLjYgMS42IDAgMCAxLTEuNjIgMS42M1pNNjAuMyA4LjU2QTMuNDcgMy40NyAwIDAgMSA1Ny4zNSAxMGMtMS45IDAtMy4zOS0xLjMxLTMuMzktMy4zMyAwLTEuOSAxLjQyLTMuMzQgMy4zNy0zLjM0IDEuNjcgMCAzLjE0IDEuMDYgMy4xNCAzLjE1di4wOWMwIC4xNSAwIC4zNS0uMDIuNTZoLTQuNzljLjEuODYuODYgMS4yOCAxLjcgMS4yOC44MSAwIDEuMzYtLjM2IDEuNjUtLjgxbDEuMy45N1ptLTMuMDQtMy44Yy0uNjUgMC0xLjM4LjM0LTEuNTQgMS4xMmgyLjk5Yy0uMTUtLjc3LS44LTEuMTEtMS40NS0xLjExWiIvPjwvc3ZnPid9fV0pOw=="}},"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":"walmartfundholdings.com/","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T13:34:27.368Z","timestamp":1785159267368,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: walmartfundholdings.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/2 200 \r\ncontent-type: text/html\r\nlast-modified: Sun, 26 Apr 2026 20:52:52 GMT\r\netag: \"7cd6-69ee7b24-85a2e481f95a8fb3;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 7988\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nalt-svc: h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\"\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"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":"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:2.1.4","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":"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":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":31958,"size_decoded":8471,"mime_type":"text/html","magic":"JavaScript source, ASCII text, with very long lines (2219)","md5":"b0418fe5761b262fa224d4c676546587","sha1":"bdde3932f494caae7e02276d8b028a1a1c09ad31","sha256":"11b7f076f09f4f2afd9af85ced2e0db050a1232dbe779ddcfbb1fafd89684436","sha512":"167e347db01547173ae081ef02731ddc9527f644d9eb37bf89fbede95588ee6e9cc6b8660ffab7d3fd2c3e9a68e4ec5d013955fb027b436031e8c014baddbf16","ssdeep":"384:eTsNNXdXXfhuYVah18mug0unyuIae/8BVpJDeZWxaos3ok3ju2:eTCNtXXJi+myQe/8BVmRo/+jh","tlshash":"50e27134a9f52137418380e1ba619b1bbfa9d107c96b9a4572fc47d85fcbd82dc03a6c","first_seen":"2026-07-27T07:08:39.371125Z","last_seen":"2026-07-27T13:35:41.637685Z","times_seen":3,"resource_available":false,"data":"PGRpdiBzdHlsZT0iaGVpZ2h0OjYycHg7IGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7IG92ZXJmbG93OmhpZGRlbjsgYm94LXNpemluZzogYm9yZGVyLWJveDsgYm9yZGVyOiAxcHggc29saWQgIzU2NjY3RjsgYm9yZGVyLXJhZGl1czogNHB4OyB0ZXh0LWFsaWduOiByaWdodDsgbGluZS1oZWlnaHQ6MTRweDsgYmxvY2stc2l6ZTo2MnB4OyBmb250LXNpemU6IDEycHg7IGZvbnQtZmVhdHVyZS1zZXR0aW5nczogbm9ybWFsOyB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyBib3gtc2hhZG93OiBpbnNldCAwIC0yMHB4IDAgMCAjNTY2NjdGO3BhZGRpbmc6MXB4O3BhZGRpbmc6IDBweDsgbWFyZ2luOiAwcHg7IHdpZHRoOiAxMDAlOyI+PGRpdiBzdHlsZT0iaGVpZ2h0OjQwcHg7IHBhZGRpbmc6MHB4OyBtYXJnaW46MHB4OyB3aWR0aDogMTAwJTsiPjxpZnJhbWUgc3JjPSJodHRwczovL3dpZGdldC5jb2lubGliLmlvL3dpZGdldD90eXBlPWhvcml6b250YWxfdjImYW1wO3RoZW1lPWxpZ2h0JmFtcDtwcmVmX2NvaW5faWQ9MTUwNSZhbXA7aW52ZXJ0X2hvdmVyPSIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMzZweCIgc2Nyb2xsaW5nPSJhdXRvIiBtYXJnaW53aWR0aD0iMCIgbWFyZ2luaGVpZ2h0PSIwIiBmcmFtZWJvcmRlcj0iMCIgYm9yZGVyPSIwIiBzdHlsZT0iYm9yZGVyOjA7bWFyZ2luOjA7cGFkZGluZzowOyI+PC9pZnJhbWU+PC9kaXY+PGRpdiBzdHlsZT0iY29sb3I6ICNGRkZGRkY7IGxpbmUtaGVpZ2h0OiAxNHB4OyBmb250LXdlaWdodDogNDAwOyBmb250LXNpemU6IDExcHg7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IHBhZGRpbmc6IDJweCA2cHg7IHdpZHRoOiAxMDAlOyBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBBcmlhbCwgc2Fucy1zZXJpZjsiPjxhIGhyZWY9Imh0dHBzOi8vY29pbmxpYi5pby8iIHRhcmdldD0iX2JsYW5rIiBzdHlsZT0iZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICNGRkZGRkY7IHRleHQtZGVjb3JhdGlvbjpub25lOyBmb250LXNpemU6MTFweCI+Q3J5cHRvY3VycmVuY3kgUHJpY2VzPC9hPiZuYnNwO2J5IENvaW5saWI8L2Rpdj48L2Rpdj4KPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CgoKPCEtLSBBZGRlZCBieSBIVFRyYWNrIC0tPjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9VVRGLTgiIC8+PCEtLSAvQWRkZWQgYnkgSFRUcmFjayAtLT4KPGhlYWQ+CjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04IiAvPgogCjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCBtYXhpbXVtLXNjYWxlPTEuMCwgdXNlci1zY2FsYWJsZT1ubyIgLz4KCjx0aXRsZT5XYWxtYXJ0ZnVuZGhvbGRpbmdzPC90aXRsZT4KIAogCiA8IS0tQmFzaWMgQm9vdHN0cmFwLS0+Cgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9ImNzcy9ib290c3RyYXAubWluLmNzcyI+Cgo8IS0tRm9udHMtLT4KPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1SYWxld2F5OndnaHRAMTAwOzMwMDs1MDA7NjAwOzcwMDs5MDAmYW1wO2Rpc3BsYXk9c3dhcCIgcmVsPSJzdHlsZXNoZWV0Ij4KPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1Nb250c2VycmF0OndnaHRAMTAwOzQwMDs1MDA7NjAwJmFtcDtkaXNwbGF5PXN3YXAiIHJlbD0ic3R5bGVzaGVldCI+CjxsaW5rIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9UG9wcGluczp3Z2h0QDEwMDs0MDA7NTAwOzYwMCZhbXA7ZGlzcGxheT1zd2FwIiByZWw9InN0eWxlc2hlZXQiPgo8IS0tRm9udCBpY29ucy0tPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9ImNzcy9ib290c3RyYXAtaWNvbnMuY3NzIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJjc3MvZm9udGF3ZXNvbWUtYWxsLmNzcyI+CjwhLS1DYXJvdXNlbCBTbGlkZXItLT4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iY3NzL293bC5jYXJvdXNlbC5taW4uY3NzIiAvPgo8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJjc3Mvb3dsLnRoZW1lLmRlZmF1bHQubWluLmNzcyIgLz4KCjxsaW5rIHJlbD0ic2hvcnRjdXQgaWNvbiIgdHlwZT0iaW1hZ2UveC1pY29uIiBocmVmPSJpbWFnZXMvZmF2LnBuZyI+Cgo8IS0tVGhlbWUgQ1NTIC0tPgoKPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iY3NzL3N0eWxlLmNzcyI+Cgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgdmFyIGNvdW50cnlfbGlzdCA9IFsiQWZnaGFuaXN0YW4iLCAiQWxiYW5pYSIsICJBbGdlcmlhIiwgIkFuZG9ycmEiLCAiQW5nb2xhIiwgIkFuZ3VpbGxhIiwgIkFudGlndWEgJiBCYXJidWRhIiwgIkFyZ2VudGluYSIsICJBcm1lbmlhIiwgIkF1c3RyYWxpYSIsICJBdXN0cmlhIiwgIkF6ZXJiYWlqYW4iLCAiQmFoYW1hcyIsICJCYWhyYWluIiwgIkJhbmdsYWRlc2giLCAiQmVsYXJ1cyIsICJCZWxnaXVtIiwgICJCZW5pbiIsICJCZXJtdWRhIiwgIkJodXRhbiIsICJCb2xpdmlhIiwgIkJvc25pYSAmIEhlcnplZ292aW5hIiwgIkJvdHN3YW5hIiwgIkJyYXppbCIsICJCcml0aXNoIFZpcmdpbiBJc2xhbmRzIiwgIkJydW5laSIsICJCdWxnYXJpYSIsICJCdXJ1bmRpIiwgIkNhbWJvZGlhIiwgIkNhbWVyb29uIiwgIkNhcGUgVmVyZGUiLCAiQ2hhZCIsICJDaGlsZSIsICJDaGluYSIsICJDb2xvbWJpYSIsICJDb25nbyIsICJDb3N0YSBSaWNhIiwgIkNvdGUgRCBJdm9pcmUiLCAiQ3JvYXRpYSIsICJDdWJhIiwgIkN5cHJ1cyIsICJDemVjaCBSZXB1YmxpYyIsICJEZW5tYXJrIiwgIkRqaWJvdXRpIiwgIkRvbWluaWNhIiwgIkRvbWluaWNhbiBSZXB1YmxpYyIsICJFY3VhZG9yIiwgIkVneXB0IiwgIkVsIFNhbHZhZG9yIiwgIkVxdWF0b3JpYWwgR3VpbmVhIiwgIkVzdG9uaWEiLCAiRXRoaW9waWEiLCAiRmFsa2xhbmQgSXNsYW5kcyIsICJGYXJvZSBJc2xhbmRzIiwiRmlubGFuZCIsICJGcmFuY2UiLCAiRnJlbmNoIFBvbHluZXNpYSIsICJGcmVuY2ggV2VzdCBJbmRpZXMiLCAiR2Fib24iLCAiR2FtYmlhIiwgIkdlb3JnaWEiLCAiR2VybWFueSIsICJHaWJyYWx0YXIiLCAiR3JlZWNlIiwgIkdyZWVubGFuZCIsICJHcmVuYWRhIiwgIkd1YXRlbWFsYSIsICJHdWluZWEiLCAiSGFpdGkiLCAiSG9uZHVyYXMiLCAiSG9uZyBLb25nIiwgIkh1bmdhcnkiLCAiSWNlbGFuZCIsICJJbmRpYSIsICJJbmRvbmVzaWEiLCAiSXJhbiIsICJJcmFxIiwgIklyZWxhbmQiLCAiSXNyYWVsIiwgIkl0YWx5IiwgIkphbWFpY2EiLCAiSmFwYW4iLCAiSmVyc2V5IiwgIkpvcmRhbiIsICJLYXpha2hzdGFuIiwgIktlbnlhIiwgIkt1d2FpdCIsICAiTGF0dmlhIiwgIkxlYmFub24iLCAiTGVzb3RobyIsICJMaWJlcmlhIiwgIkxpYnlhIiwgIkxpZWNodGVuc3RlaW4iLCAiTGl0aHVhbmlhIiwgIkx1eGVtYm91cmciLCAiTWFjYXUiLCAiTWFjZWRvbmlhIiwgIk1hZGFnYXNjYXIiLCAiTWFsYXdpIiwgIk1hbGF5c2lhIiwgIk1hbGRpdmVzIiwgIk1hbGkiLCAiTWFsdGEiLCAiTWF1cml0YW5pYSIsICJNYXVyaXRpdXMiLCAiTWV4aWNvIiwgIk1vbGRvdmEiLCAiTW9uYWNvIiwgIk1vbmdvbGlhIiwgIk1vbnRlbmVncm8iLCAiTW9udHNlcnJhdCIsICJNb3JvY2NvIiwgIk1vemFtYmlxdWUiLCAiTmFtaWJpYSIsICJOZXBhbCIsICJOZXRoZXJsYW5kcyIsICJOZXRoZXJsYW5kcyBBbnRpbGxlcyIsICJOZXcgQ2FsZWRvbmlhIiwgIk5ldyBaZWFsYW5kIiwgIk5pY2FyYWd1YSIsICJOb3J3YXkiLCAiT21hbiIsICJQYWtpc3RhbiIsICJQYWxlc3RpbmUiLCAiUGFuYW1hIiwgIlBhcHVhIE5ldyBHdWluZWEiLCAiUGFyYWd1YXkiLCAiUGVydSIsICJQaGlsaXBwaW5lcyIsICJQb2xhbmQiLCAiUG9ydHVnYWwiLCAiUHVlcnRvIFJpY28iLCAiUWF0YXIiLCAiUmV1bmlvbiIsICJSb21hbmlhIiwgIlJ1c3NpYSIsICJSd2FuZGEiLCAiU2FpbnQgUGllcnJlICYgTWlxdWVsb24iLCAgIlNhbiBNYXJpbm8iLCAiU2F1ZGkgQXJhYmlhIiwgIlNlbmVnYWwiLCAiU2VyYmlhIiwgIlNleWNoZWxsZXMiLCAiU2llcnJhIExlb25lIiwgIlNpbmdhcG9yZSIsICJTbG92YWtpYSIsICJTbG92ZW5pYSIsICJTb3V0aCBBZnJpY2EiLCAiU291dGggS29yZWEiLCAiU3BhaW4iLCAiU3JpIExhbmthIiwgIlN1ZGFuIiwgIlN1cmluYW1lIiwgIlN3YXppbGFuZCIsICJTd2VkZW4iLCAiU3dpdHplcmxhbmQiLCAiU3lyaWEiLCAiVGFpd2FuIiwgIlRhamlraXN0YW4iLCAiVGFuemFuaWEiLCAiVGhhaWxhbmQiLCAiVG9nbyIsICJUb25nYSIsICJUcmluaWRhZCAmIFRvYmFnbyIsICJUdW5pc2lhIiwgIlR1cmtleSIsICJUdXJrbWVuaXN0YW4iLCAsICJVa3JhaW5lIiwgIlVuaXRlZCBBcmFiIEVtaXJhdGVzIiwgIlVuaXRlZCBLaW5nZG9tIiwgIlVydWd1YXkiLCAiVXpiZWtpc3RhbiIsICJWZW5lenVlbGEiLCAiVmlldG5hbSIsICJWaXJnaW4gSXNsYW5kcyAoVVMpIiwgIlllbWVuIl07CiAgZnVuY3Rpb24gY2hvaWNlKGFycmF5KSB7CiAgICAgIHJldHVybiBhcnJheVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBhcnJheS5sZW5ndGgpXTsKICB9CiAgZnVuY3Rpb24gcmFuZG9tTnVtYmVyKG1pbiwgbWF4KSB7CiAgICAgIHJldHVybiBNYXRoLnJhbmRvbSgpICogKG1heCAtIG1pbikgKyBtaW47CiAgfQogIGZ1bmN0aW9uIHBheWlub3V0KCkgewogICAgICB2YXIgbnUgPSBNYXRoLmZsb29yKHJhbmRvbU51bWJlcig4MDAsIDk1MDApKTsKICAgICAgdmFyIGNvbiA9IGNob2ljZShjb3VudHJ5X2xpc3QpOwogICAgICB2YXIgbW9kZSA9IGNob2ljZShbJ2RlcG9zaXRlZCcsICd3aXRoZHJldycsICdyZWludmVzdGVkJ10pOwogICAgICBzcG9wKHsKICAgICAgICAgIHRlbXBsYXRlOiAiQW4gSW52ZXN0b3IgZnJvbSAiICsgY29uICsgIiAiICsgbW9kZSArICIgJCIgKyBudSArICIgLi4uIiwKICAgICAgICAgIHBvc2l0aW9uOiAndG9wLWNlbnRlcicsCiAgICAgICAgICBzdHlsZTogJ3N1Y2Nlc3MnLAogICAgICAgICAgYXV0b2Nsb3NlIDogMTAwMDAsCiAgICAgIH0pOwogIH0KICBzZXRJbnRlcnZhbChwYXlpbm91dCwxNDAwMCk7Cgo8L3NjcmlwdD4KIAogCjwvaGVhZD4KCjwhLS0gU21hcnRzdXBwIExpdmUgQ2hhdCBzY3JpcHQgLS0+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KdmFyIF9zbWFydHN1cHAgPSBfc21hcnRzdXBwIHx8IHt9Owpfc21hcnRzdXBwLmtleSA9ICcyY2IyZTg4ZTljM2I5Zjk3ZjQxODU2ZDljYWRmMTE2M2UxOGQxNjNjJzsKd2luZG93LnNtYXJ0c3VwcHx8KGZ1bmN0aW9uKGQpIHsKICB2YXIgcyxjLG89c21hcnRzdXBwPWZ1bmN0aW9uKCl7IG8uXy5wdXNoKGFyZ3VtZW50cyl9O28uXz1bXTsKICBzPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdO2M9ZC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKICBjLnR5cGU9J3RleHQvamF2YXNjcmlwdCc7Yy5jaGFyc2V0PSd1dGYtOCc7Yy5hc3luYz10cnVlOwogIGMuc3JjPSdodHRwczovL3d3dy5zbWFydHN1cHBjaGF0LmNvbS9sb2FkZXIuanM/JztzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGMscyk7Cn0pKGRvY3VtZW50KTsKPC9zY3JpcHQ+CjwhLS0gR2V0QnV0dG9uLmlvIHdpZGdldCAtLT4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgKGZ1bmN0aW9uICgpIHsKICAgICAgICB2YXIgb3B0aW9ucyA9IHsKICAgICAgICAgICAgd2hhdHNhcHA6ICIrMTkwODU5NzU5MjMiLCAvLyBXaGF0c0FwcCBudW1iZXIKICAgICAgICAgICAgY2FsbF90b19hY3Rpb246ICJNZXNzYWdlIHVzIiwgLy8gQ2FsbCB0byBhY3Rpb24KICAgICAgICAgICAgYnV0dG9uX2NvbG9yOiAiI0ZGNjU1MCIsIC8vIENvbG9yIG9mIGJ1dHRvbgogICAgICAgICAgICBwb3NpdGlvbjogImxlZnQiLCAvLyBQb3NpdGlvbiBtYXkgYmUgJ3JpZ2h0JyBvciAnbGVmdCcKICAgICAgICB9OwogICAgICAgIHZhciBwcm90byA9ICdodHRwczonLCBob3N0ID0gImdldGJ1dHRvbi5pbyIsIHVybCA9IHByb3RvICsgJy8vc3RhdGljLicgKyBob3N0OwogICAgICAgIHZhciBzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7IHMudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnOyBzLmFzeW5jID0gdHJ1ZTsgcy5zcmMgPSB1cmwgKyAnL3dpZGdldC1zZW5kLWJ1dHRvbi9qcy9pbml0LmpzJzsKICAgICAgICBzLm9ubG9hZCA9IGZ1bmN0aW9uICgpIHsgV2hXaWRnZXRTZW5kQnV0dG9uLmluaXQoaG9zdCwgcHJvdG8sIG9wdGlvbnMpOyB9OwogICAgICAgIHZhciB4ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdOyB4LnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHMsIHgpOwogICAgfSkoKTsKPC9zY3JpcHQ+CjwhLS0gL0dldEJ1dHRvbi5pbyB3aWRnZXQgLS0+CgoKCjxib2R5Pgo8ZGl2IGNsYXNzPSJoZWFkLWJnIj4KICA8bmF2IGlkPSJuYXZiYXJfdG9wIiBjbGFzcz0ibmF2YmFyIG5hdmJhci1leHBhbmQtbGcgICBuYXZiYXItdG9nZ2xhYmxlICAgbmF2YmFyLWRhcmsgICBweS0yIG1iLTQiIGFyaWEtbGFiZWw9Im5hdmJhciI+CiAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItbG9nbyAgIGFsaWduLWl0ZW1zLWNlbnRlciAiPiA8YSBocmVmPSJpbmRleC5odG1sIiAgY2xhc3M9InRleHQtZGFyayB0ZXh0LWRlY29yYXRpb24tbm9uZSI+IDxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIyMjBweCIgaGVpZ2h0PSI1MHB4IiB2aWV3Qm94PSIwIDAgMjIwIDU1IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAyMjAgNTUiIHhtbDpzcGFjZT0icHJlc2VydmUiPgogICAgICAgIDx0ZXh0IHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIDEgNDMuMDEzNyAzNy40Njk3KSIgZmlsbD0iI0ZGRkZGRiIgZm9udC13ZWlnaHQ9ImJvbGQiIGZvbnQtZmFtaWx5PSInTW9udHNlcnJhdCciIGZvbnQtc2l6ZT0iMzAuMzU4OSI+V2FsbWFydEZIPC90ZXh0PjwvYT4gIDwvbGk+PC9saT4KICAgICAgICA8cGF0aCBmaWxsPSIjRkZGRkZGIiBkPSJNMzIuNzEzLDM0Ljc1OWw0LjI0Nyw0LjYwN2MwLDAtMTcuNjIsMTQuMDA0LTI5LjkwOC0wLjk5M2MwLDAtNy42OC04Ljg1NC0xLjk4OC0yMC45NjIKCWMwLDAsMTIuODMtMTguNDMyLDMxLjcxNC0zLjcwNWwtNC4xODcsNC43MjljMCwwLTEwLjQ4LTkuODE4LTE5LjUxNi0xLjE0NWMwLDAtMTAuNjYxLDguMzEyLDEuODY4LDE5LjYzNgoJQzE0Ljk0NCwzNi45MjcsMjQuNCw0My42NzIsMzIuNzEzLDM0Ljc1OXoiLz4KICAgICAgICA8Y2lyY2xlIGZpbGw9IiNGRkZGRkYiIGN4PSIyMi43NDQiIGN5PSIyNi44MzYiIHI9IjUuMzMiLz4KICAgICAgICA8L3N2Zz4gPC9hPgogICAgICAgIDxidXR0b24gY2xhc3M9Im5hdmJhci10b2dnbGVyIiB0eXBlPSJidXR0b24iIGRhdGEtYnMtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS1icy10YXJnZXQ9IiNtYWlubmF2aWdhdGlvbiIgYXJpYS1jb250cm9scz0ibWFpbm5hdmlnYXRpb24iIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmF2aWdhdGlvbiI+IDxzcGFuIGNsYXNzPSJuYXZiYXItdG9nZ2xlci1pY29uIj48L3NwYW4+IDwvYnV0dG9uPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29sbGFwc2UgbmF2YmFyLWNvbGxhcHNlICAganVzdGlmeS1jb250ZW50LWNlbnRlciAiIGlkPSJtYWlubmF2aWdhdGlvbiI+CiAgICAgICAgPHVsIGNsYXNzPSJuYXZiYXItbmF2ICI+CiAgICAgICAgCiAgCiAgICAgICAgCiAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4gPGEgICBocmVmPSJpbmRleC5odG1sIiBjbGFzcz0nYWN0aXZlICAgbmF2LWxpbmsgcHgtNCc+SG9tZTwvYT4gPC9saT4KICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPiA8YSAgaHJlZj0iYWJvdXQuaHRtbCIgY2xhc3M9J25vdGFjdGl2ZSBuYXYtbGluayBweC00Jz5BYm91dDwvYT4gPC9saT4KICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPiA8YSAgaHJlZj0iZmFxLmh0bWwiIGNsYXNzPSdub3RhY3RpdmUgbmF2LWxpbmsgcHgtNCc+RkFRPC9hPiA8L2xpPgogICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+IDxhICAgaHJlZj0ic3VwcG9ydC5odG1sIiBjbGFzcz0nbm90YWN0aXZlIG5hdi1saW5rIHB4LTQnPlN1cHBvcnQ8L2E+IDwvbGk+CiAgICAgICAgICAKICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+IDxhICAgaHJlZj0iaS9sb2dpbiIgY2xhc3M9J25vdGFjdGl2ZSBuYXYtbGluayBweC00Jz5Mb2dpbjwvYT4gPC9saT4KIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPiA8YSAgIGhyZWY9ImkvcmVnaXN0ZXIiIGNsYXNzPSdub3RhY3RpdmUgbmF2LWxpbmsgcHgtNCc+U2lnbnVwPC9hPiA8L2xpPgogCiA8ZGl2IGlkPSJ5dFdpZGdldCI+PC9kaXY+PHNjcmlwdCBzcmM9Imh0dHBzOi8vdHJhbnNsYXRlLnlhbmRleC5uZXQvd2Vic2l0ZS13aWRnZXQvdjEvd2lkZ2V0LmpzP3dpZGdldElkPXl0V2lkZ2V0JnBhZ2VMYW5nPWVuJndpZGdldFRoZW1lPWxpZ2h0JmF1dG9Nb2RlPXRydWUiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CgogPGxpIGNsYXNzPSJuYXYtaXRlbSI+ICAgPC9saT4KICAgICAgICAgICAKCgogICAgICAgICAgICAgICAgICAKICAgICAgICAgIAogICAgICAgIDwvdWw+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9uYXY+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC14bC02IG9mZnNldC14bC02IGNvbC1sZy0xMiI+CiAgICAgICAgPGRpdiBjbGFzcz0iYmFubmVyLWNvbnRlbnQiPgogICAgICAgICAgPGgxIGNsYXNzPSJ0ZXh0LWJsYWNrIGZ3LWJvbGRlciBtYi01Ij4gVGhlIFdvcmxkJ3M8YnI+CiAgICAgICAgICAgIEZhc3Rlc3QgYW5kIDxicj4KICAgICAgICAgICAgR3Jvd2luZyA8YnI+CiAgICAgICAgICAgIENyeXB0b2N1cnJlbmN5IENvbXBhbnkgPGJyPgogICAgICAgICAgPC9oMT4KICAgICAgICAgIDxwIGNsYXNzPSJtYi00IGZzLTUgcG9wIj4gQW1lcmljYSdzIHRlbiBsYXJnZXN0IGNvbXBhbmllcyBieSByZXZlbnVlIGhhdmUgb2ZmaWNpYWxseSBiZWVuIG5hbWVkLiBXYWxtYXJ0IGhhcyBiZWVuIHJhbmtlZCBOby4gMSBvbiB0aGUgbGlzdCBvZiB0aGUgMTIxIGxhcmdlc3QgY29tcGFuaWVzIGluIHRoZSBVbml0ZWQgU3RhdGVzIGJ5IHJldmVudWUsIGFjY29yZGluZyB0byB0aGUgRm9ydHVuZSBHbG9iYWwgNTAwIGxpc3QsIFdhbG1hcnQgZWFybmVkICQ1MTQuNDAgYmlsbGlvbiBpbiByZXZlbnVlLCBvZiB3aGljaCAkNi42NyBiaWxsaW9uIHdhcyBwcm9maXQuIFdhbG1hcnQgaXMgcmFua2VkIDE0dGggaW4gdGhlIHdvcmxkIGluIHRoZSAyMDE5IENFT1dPUkxEIG1hZ2F6aW5lJ3MgYmVzdC1wZXJmb3JtaW5nIGNvbXBhbmllcyBpbiB0aGUgd29ybGQgZm9yIDIwMTkgcmFua2luZy48L3A+CiAgICAgICAgICA8YSAgaHJlZj0iaS9yZWdpc3RlciIgICBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5Ij5HZXQgU3RhcnRlZDwvYT4gPGEgaHJlZj0iZmFxLmh0bWwiICAgY2xhc3M9ImJ0biBidG4tbGluayI+SG93IENhbiBXZSBIZWxwID88L2E+IDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KPHNlY3Rpb24gY2xhc3M9InB5LTUgaW1nLWJnMSIgPgogIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMTIiPgogICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIHRleHQtY2VudGVyIj4gPHNwYW4gY2xhc3M9InBvcCBmdy1ub3JtYWwiIHN0eWxlPSJjb2xvcjp2YXIoLS1icy10ZWFsKTsiPlNlY3VyZSAmIFNhZmU8L3NwYW4+CiAgICAgICAgICA8aDIgY2xhc3M9InRleHQtYmxhY2sgZnctYm9sZGVyIj5Ub3Agbm90Y2ggc2VjdXJpdHkgbWVhc3VyZXMsIGZvciBpbm5lciBhbmQgZXh0ZXJuYWwgdHJhbnNhY3Rpb25zIGFuZCBwZXJzb25hbCBkYXRhIGVuY3J5cHRpb24gaXMgYW4gc3RhbmRhcmQgb3B0aW9uLj88L2gyPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icm93ICAgcHQtNSByb3ctY29scy1sZy0zIHJvdy1jb2xzLW1kLTIiPgogICAgICA8ZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlcnZpY2VzIGJnLXByaW1hcnkgICB0ZXh0LWNlbnRlciBwYi0zIHB5LTMgaWNvbi1zcXVhcmUgbWItMyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1pY29uIGljb24tY2lyY2xlICBiZy13aGl0ZSBkLWlubGluZS1ibG9jayBtYi0zIj4gPGltZyBzcmM9ImltYWdlcy9zZXItaWNvMS5wbmciIGNsYXNzPSJpbWctZmx1aWQiIGFsdD0iLi4uIj4gPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1jb24iPgogICAgICAgICAgICA8aDUgY2xhc3M9ImZ3LWJvbGQgbSB0ZXh0LXdoaXRlIGZzLTUiPk1hbmFnZSBZb3VyIFRpbWU8L2g1PgogICAgICAgICAgICA8cCBjbGFzcz0iZnctbm9ybWFsIG10LTMgcHgtNCBwb3AgdGV4dC13aGl0ZSBmcy02IG9wYWNpdHktNzUiPldlIGhhdmUgaW5jb3Jwb3JhdGVkIDI0Lzcgc3VwcG9ydCBzeXN0ZW0uIENvbnRhY3QgdXMgZm9yIGFueSBhc3Npc3RhbmNlIG5lZWRlZC4gPC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlcnZpY2VzIGJnLXByaW1hcnkgICB0ZXh0LWNlbnRlciBwYi0zIHB5LTMgaWNvbi1zcXVhcmUgbWItMyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1pY29uIGljb24tY2lyY2xlICBiZy13aGl0ZSBkLWlubGluZS1ibG9jayBtYi0zIj4gPGltZyBzcmM9ImltYWdlcy9zZXItaWNvMi5wbmciIGNsYXNzPSJpbWctZmx1aWQiIGFsdD0iLi4uIj4gPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1jb24iPgogICAgICAgICAgICA8aDUgY2xhc3M9ImZ3LWJvbGQgbSB0ZXh0LXdoaXRlIGZzLTUiPkluc3RhbnQgV2l0aGRyYXdhbHM8L2g1PgogICAgICAgICAgICA8cCBjbGFzcz0iZnctbm9ybWFsIG10LTMgcHgtNCBwb3AgdGV4dC13aGl0ZSBmcy02IG9wYWNpdHktNzUiPk9uY2UgeW91IGRlY2lkZSB0byB3aXRoZHJhdywgeW91IGFyZSB3ZWxjb21lIHRvIHVzZSBvdXIgaW5zdGFudCB3aXRoZHJhd2FsIGludGVyZmFjZS4gPC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlcnZpY2VzIGJnLXByaW1hcnkgICB0ZXh0LWNlbnRlciBwYi0zIHB5LTMgaWNvbi1zcXVhcmUgbWItMyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1pY29uIGljb24tY2lyY2xlICBiZy13aGl0ZSBkLWlubGluZS1ibG9jayBtYi0zIj4gPGltZyBzcmM9ImltYWdlcy9zZXItaWNvMy5wbmciIGNsYXNzPSJpbWctZmx1aWQiIGFsdD0iLi4uIj4gPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1jb24iPgogICAgICAgICAgICA8aDUgY2xhc3M9ImZ3LWJvbGQgbSB0ZXh0LXdoaXRlIGZzLTUiPjI0LzcgTGl2ZSBTdXBwb3J0PC9oNT4KICAgICAgICAgICAgPHAgY2xhc3M9ImZ3LW5vcm1hbCBtdC0zIHB4LTQgcG9wIHRleHQtd2hpdGUgZnMtNiBvcGFjaXR5LTc1Ij5XZSBoYXZlIGluY29ycG9yYXRlZCAyNC83IHN1cHBvcnQgc3lzdGVtLiBDb250YWN0IHVzIGZvciBhbnkgYXNzaXN0YW5jZSBuZWVkZWQuIDwvcD4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2Pgo8L3NlY3Rpb24+CjxzZWN0aW9uIGNsYXNzPSJweS01IGltZy1iZzQiID4KICA8ZGl2IGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8ZGl2IGNsYXNzPSJjb2wteGwtNSBvZmZzZXQteGwtMSBjb2wtbGctMTIiPgogICAgICA8ZGl2IGNsYXNzPSJ0aXRsZSB0ZXh0LWxlZnQgbWItNSI+CiAgICAgICAgPHNwYW4gY2xhc3M9InBvcCBmdy1ub3JtYWwiIHN0eWxlPSJjb2xvcjp2YXIoLS1icy10ZWFsKTsiPkFib3V0IE91ciBDb21wYW55PC9zcGFuPgogICAgICAgIDxoMiBjbGFzcz0idGV4dC1ibGFjayBmdy1ib2xkZXIiPkdldCBTdGFydGVkIFdpdGggPGIgY2xhc3M9InRleHQtZ3JlZW4iPkJUQzwvYj4gPGJyPiBXYWxtYXJ0IEZ1bmQgSG9sZGluZ3M8L2gyPgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImctMiBweS0xIj4KICAgICAgICA8IS0tIDEgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sIGQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBtYi0zIj4KICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tY2lyY2xlIGJnLXdoaXRlIHRleHQtZGFyayBmbGV4LXNocmluay0wIG1lLTMiPgogICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL3N0YXJ0LWljbzEucG5nIiBhbHQ9ImNvaW4tYmFuIj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGg1IGNsYXNzPSJmdy1ib2xkIj5XZWxjb21lIHRvIFdhbG1hcnQgRnVuZCBIb2xkaW5nczwvaDU+CiAgICAgICAgICAgIDxwIHN0eWxlPSJjb2xvcjp2YXIoLS1icy1ncmF5LTcwMCkiIGNsYXNzPSJmcy02Ij4KICAgICAgICAgICAgICBXYWxtYXJ0IEZ1bmQgSG9sZGluZ3MgaXMgYW4gaW52ZXN0bWVudCBjb21wYW55IG1hbmFnZWQgYnkgcHJvZmVzc2lvbmFsIGNyeXB0b2N1cnJlbmN5IHRyYWRlcnMuCiAgICAgICAgICAgICAgU3VjY2Vzc2Z1bCBhY2hpZXZlbWVudHMgaW4gdGhlIG1haW4gYWN0aXZpdHkgYWxsb3dlZCB0aGUgY29tcGFueSB0byBncm93IHBhcnRuZXJzaGlwIGFzc2V0cyBhbmQgZ2FpbiBhY2Nlc3MgdG8gbmV3IG1hcmtldHMuCiAgICAgICAgICAgIDwvcD4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgoKICAgICAgICA8IS0tIDIgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sIGQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBtYi0zIj4KICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tY2lyY2xlIGJnLXdoaXRlIHRleHQtZGFyayBmbGV4LXNocmluay0wIG1lLTMiPgogICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL3N0YXJ0LWljbzIucG5nIiBhbHQ9ImNvaW4tYmFuIj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGg1IGNsYXNzPSJmdy1ib2xkIj5Xb3JsZHdpZGUgRGF0YWNlbnRlcnM8L2g1PgogICAgICAgICAgICA8cCBzdHlsZT0iY29sb3I6dmFyKC0tYnMtZ3JheS03MDApIiBjbGFzcz0iZnMtNiI+CiAgICAgICAgICAgICAgMTAwJSB1cHRpbWUgZ3VhcmFudGVlLCB0aGFua3MgdG8gb3VyIGhpZ2hseSBhZHZhbmNlZCBkYXRhIGNlbnRlciBuZXR3b3JrIGFyb3VuZCB0aGUgZ2xvYmUuCiAgICAgICAgICAgIDwvcD4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgoKICAgICAgICA8IS0tIDMgLS0+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sIGQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBtYi0zIj4KICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tY2lyY2xlIGJnLXdoaXRlIHRleHQtZGFyayBmbGV4LXNocmluay0wIG1lLTMiPgogICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL3N0YXJ0LWljbzMucG5nIiBhbHQ9ImNvaW4tYmFuIj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGg1IGNsYXNzPSJmdy1ib2xkIj5JbnN0YW50IFdpdGhkcmF3YWxzPC9oNT4KICAgICAgICAgICAgPHAgc3R5bGU9ImNvbG9yOnZhcigtLWJzLWdyYXktNzAwKSIgY2xhc3M9ImZzLTYiPgogICAgICAgICAgICAgIE9uY2UgeW91IGRlY2lkZSB0byB3aXRoZHJhdywgeW91IGFyZSB3ZWxjb21lIHRvIHVzZSBvdXIgaW5zdGFudCB3aXRoZHJhd2FsIGludGVyZmFjZS4KICAgICAgICAgICAgPC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDwhLS0gRGVwb3NpdCBJbnN0cnVjdGlvbiAodGV4dCBvbmx5LCBubyBpY29uKSAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJjb2wgbWItMyI+CiAgICAgICAgICA8aDUgY2xhc3M9ImZ3LWJvbGQgdGV4dC1ibGFjayI+RGVwb3NpdCBJbnN0cnVjdGlvbiAtIFBsZWFzZSBSZWFkIENhcmVmdWxseTwvaDU+CiAgICAgICAgICA8dWwgY2xhc3M9Imxpc3QtdW5zdHlsZWQgbWItMCIgc3R5bGU9ImNvbG9yOnZhcigtLWJzLWdyYXktNzAwKSI+CiAgICAgICAgICAgIDxsaSBjbGFzcz0ibWItMiI+CiAgICAgICAgICAgICAgPHN0cm9uZz4xLiBEZXBvc2l0IENvbXBsZXRpb24gVGltZTo8L3N0cm9uZz4gQWxsIGRlcG9zaXRzIG11c3QgYmUgY29tcGxldGVkIGFuZCBzYXZlZCB0byB5b3VyIGFjY291bnQgd2l0aGluIDxiPjEgaG91cjwvYj4gb2YgaW5pdGlhdGlvbi4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpIGNsYXNzPSJtYi0yIj4KICAgICAgICAgICAgICA8c3Ryb25nPjIuIFJlYWRpbmVzcyB0byBQcm9jZWVkOjwvc3Ryb25nPiBEbyBub3Qgc2VuZCBhbnkgZGVwb3NpdCB1bmxlc3MgeW91IGFyZSBmdWxseSBwcmVwYXJlZCB0byBjb21wbGV0ZSB0aGUgcGxhdGZvcm0gcHJvY2VzcyBpbW1lZGlhdGVseSBhZnRlciB0aGUgZGVwb3NpdCBpcyBtYWRlLgogICAgICAgICAgICA8L2xpPgogICAgICAgICAgICA8bGkgY2xhc3M9Im1iLTIiPgogICAgICAgICAgICAgIDxzdHJvbmc+My4gUmUtRGVwb3NpdCBXYXJuaW5nOjwvc3Ryb25nPiBJbmNvbXBsZXRlIG9yIGRlbGF5ZWQgcHJvY2Vzc2VzIG1heSByZXN1bHQgaW4gZGVwb3NpdCB0aW1lb3V0LCBhbmQgdGhlIHN5c3RlbSBtYXkgcmVxdWlyZSBhIHJlLWRlcG9zaXQgdG8gY29udGludWUuCiAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICA8c3Ryb25nPjQuIFNlY3VyZSBZb3VyIEFjY291bnQ6PC9zdHJvbmc+IFRvIGF2b2lkIGludGVycnVwdGlvbiBvciBkZWxheXMsIHBsZWFzZSBlbnN1cmUgeW91IGFyZSByZWFkeSB0byBwcm9jZWVkIHdpdGggdGhlIGZ1bGwgcHJvY2VzcyBiZWZvcmUgc2VuZGluZyBmdW5kcy4KICAgICAgICAgICAgPC9saT4KICAgICAgICAgIDwvdWw+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPCEtLSBCdXR0b24gLS0+CiAgICAgIDxkaXYgY2xhc3M9Im10LTQiPgogICAgICAgIDxhIGhyZWY9ImFib3V0Lmh0bWwiIGNsYXNzPSJidG4gYnRuLXByaW1hcnkiPkxlYXJuIE1vcmU8L2E+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPCEtLSBSaWdodCBJbWFnZSAtLT4KICAgIDxkaXYgY2xhc3M9ImNvbC14bC02IGQtbGctbm9uZSBkLW1kLW5vbmUgZC1zbS1ub25lIGQtbm9uZSBkLXhsLWJsb2NrIj4KICAgICAgPGltZyBjbGFzcz0iZ2V0LXN0YXJ0IGltZy1mbHVpZCIgc3JjPSJpbWFnZXMvZ2V0c3RhcnQtaW1nLmdpZiIgYWx0PSIuLi4iPgogICAgPC9kaXY+CiAgPC9kaXY+CjwvZGl2Pgo8L3NlY3Rpb24+CiA8Y2VudGVyPgogICAgICAgICAgICA8aWZyYW1lIHdpZHRoPSIzNjAiIGhlaWdodD0iMzE1IiBzcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLzZqZVBicVhKaGU4IiB0aXRsZT0iWW91VHViZSB2aWRlbyBwbGF5ZXIiIGZyYW1lYm9yZGVyPSIwIiBhbGxvdz0iYWNjZWxlcm9tZXRlcjsgYXV0b3BsYXk7IGNsaXBib2FyZC13cml0ZTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZSIgYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPgogICAgICAgIDwvY2VudGVyPgo8c2VjdGlvbiBjbGFzcz0icHktNSBpbWctYmc1IiA+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPGRpdiBjbGFzcz0iY29sLWxnLTEyIj4KICAgICAgPGRpdiBjbGFzcz0idGl0bGUgdGV4dC1jZW50ZXIiPiA8c3BhbiBjbGFzcz0icG9wIGZ3LW5vcm1hbCIgc3R5bGU9ImNvbG9yOnZhcigtLWJzLXRlYWwpOyI+UGxhbm5pbmc8L3NwYW4+CiAgICAgICAgPGgyIGNsYXNzPSJ0ZXh0LWJsYWNrIGZ3LWJvbGRlciI+SW52ZXN0bWVudCBQbGFuczwvaDI+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0iY29sLWxnLTEyIj4KICAgIDxkaXYgY2xhc3M9InJvdyAgIHB5LTMgcm93LWNvbHMtbGctNCByb3ctY29scy1tZC0yIj4KICAgIAogICAgIDxzdHlsZT4KIAogLnBsYW4xIC5wbGFuLXBlciBsaTpudGgtY2hpbGQoMm4pLCAucGxhbjEgLnBsYW4tcGVyIGxpOm50aC1jaGlsZCgzbikgewoJZGlzcGxheTogbm9uZTsKfQogLnBsYW4yIC5wbGFuLXBlciBsaTpmaXJzdC1jaGlsZCwgLnBsYW4yIC5wbGFuLXBlciBsaTpudGgtY2hpbGQoM24pIHsKCWRpc3BsYXk6IG5vbmU7Cn0KCiAucGxhbjMgLnBsYW4tcGVyIGxpOmZpcnN0LWNoaWxkLCAucGxhbjMgLnBsYW4tcGVyIGxpOm50aC1jaGlsZCgybikgewoJZGlzcGxheTogbm9uZTsKfQoucGxhbi1wZXIgaDEgewoJZm9udC1zaXplOiA0NXB4Owp9CgogPC9zdHlsZT4KIAogICAgICAgIAo8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0Ij4gCmZ1bmN0aW9uIG9wZW5DYWxjdWxhdG9yKGlkKQp7CgogIHcgPSAyMjU7IGggPSA0MDA7CiAgdCA9IChzY3JlZW4uaGVpZ2h0LWgtMzApLzI7CiAgbCA9IChzY3JlZW4ud2lkdGgtdy0zMCkvMjsKICB3aW5kb3cub3BlbignP2E9Y2FsZW5kYXImdHlwZT0nICsgaWQsICdjYWxjdWxhdG9yJyArIGlkLCAidG9wPSIrdCsiLGxlZnQ9IitsKyIsd2lkdGg9Iit3KyIsaGVpZ2h0PSIraCsiLHJlc2l6YWJsZT0xLHNjcm9sbGJhcnM9MCIpOwoKCiAgCgp9CgpmdW5jdGlvbiB1cGRhdGVDb21wb3VuZCgpIHsKICB2YXIgaWQgPSAwOwogIHZhciB0dCA9IGRvY3VtZW50LnNwZW5kZm9ybS5oX2lkLnR5cGU7CiAgaWYgKHR0ICYmIHR0LnRvTG93ZXJDYXNlKCkgPT0gJ2hpZGRlbicpIHsKICAgIGlkID0gZG9jdW1lbnQuc3BlbmRmb3JtLmhfaWQudmFsdWU7CiAgfSBlbHNlIHsKICAgIGZvciAoaSA9IDA7IGkgPCBkb2N1bWVudC5zcGVuZGZvcm0uaF9pZC5sZW5ndGg7IGkrKykgewogICAgICBpZiAoZG9jdW1lbnQuc3BlbmRmb3JtLmhfaWRbaV0uY2hlY2tlZCkgewogICAgICAgIGlkID0gZG9jdW1lbnQuc3BlbmRmb3JtLmhfaWRbaV0udmFsdWU7CiAgICAgIH0KICAgIH0KICB9CgogIHZhciBjcE9iaiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb21wb3VuZF9wZXJjZW50cycpOwogIGlmIChjcE9iaikgewogICAgd2hpbGUgKGNwT2JqLm9wdGlvbnMubGVuZ3RoICE9IDApIHsKICAgICAgY3BPYmoub3B0aW9uc1swXSA9IG51bGw7CiAgICB9CiAgfQoKICBpZiAoY3BzW2lkXSAmJiBjcHNbaWRdLmxlbmd0aCA+IDApIHsKICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb3VtcG9uZF9ibG9jaycpLnN0eWxlLmRpc3BsYXkgPSAnJzsKCiAgICBmb3IgKGkgaW4gY3BzW2lkXSkgewogICAgICBjcE9iai5vcHRpb25zW2NwT2JqLm9wdGlvbnMubGVuZ3RoXSA9IG5ldyBPcHRpb24oY3BzW2lkXVtpXSk7CiAgICB9CiAgfSBlbHNlIHsKICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb3VtcG9uZF9ibG9jaycpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7CiAgfQp9CnZhciBjcHMgPSB7fTsKIDwvc2NyaXB0PiAKCgo8IS0tUGxhbiAxLS0+CjxkaXY+CiAgPGRpdiBjbGFzcz0icGxhbiBwbGFuMSI+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLXBlciI+CiAgICAgIDxoMSBjbGFzcz0idGV4dC13aGl0ZSBtYi0wIHBvcCBmdy1ib2xkIj4gPHNwYW4+ICA8bGk+IDUlPC9saT4gICA8L3NwYW4+IDwvaDE+CiAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXdoaXRlIGZ3LWJvbGQgZnMtNiI+RGFpbHk8L3NwYW4+IDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGxhbi1oZWFkIHRleHQtd2hpdGUgcHktMyBtYi0wIj4KICAgICAgPGg0IGNsYXNzPSIgZnctYm9sZCAiPkJhc2ljIFBsYW4gIDwvaDQ+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9InBsYW4tbGlzdCI+CiAgICA8dWw+CiAgICAgIDwhLS0gU3RhcnRlciBQbGFuLS0+CiAgICAgIDxsaT4gIDxsYWJlbD4kMjAwIC0gJDEwMDAgPC9sYWJlbD48L2xpPgogICAgICA8bGk+RGFpbHkgZm9yIDEgRGF5IDwvbGk+CiAgICAgIDxsaT5QcmluY2lwYWwgSW5jbHVkZWQgPC9saT4KICAgICAgPGxpPjI0LzcgU3VwcG9ydDwvbGk+CiAgICA8L3VsPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLWJvdHRvbSBweS0zIj48YSBjbGFzcz0iYnRuIGJ0bi1saWdodCBwbGFuLWJ0biIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICMxYTQwMzk7Y29sb3I6ICNmZmZmZmY7IiAgaHJlZj0iamF2YXNjcmlwdDpvcGVuQ2FsY3VsYXRvcignMScpIj5JbnZlc3Q8L2E+IDwvYT48L2Rpdj4KICA8L2Rpdj4KPC9kaXY+Cgo8IS0tUGxhbiAyLS0+CjxkaXY+CiAgPGRpdiBjbGFzcz0icGxhbiBwbGFuMSI+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLXBlciI+CiAgICAgIDxoMSBjbGFzcz0idGV4dC13aGl0ZSBtYi0wIHBvcCBmdy1ib2xkIj4gPHNwYW4+ICA8bGk+IDYlPC9saT4gICA8L3NwYW4+IDwvaDE+CiAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXdoaXRlIGZ3LWJvbGQgZnMtNiI+RGFpbHk8L3NwYW4+IDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGxhbi1oZWFkIHRleHQtd2hpdGUgcHktMyBtYi0wIj4KICAgICAgPGg0IGNsYXNzPSIgZnctYm9sZCAiPlNpbHZlciBQbGFuICA8L2g0PgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLWxpc3QiPgogICAgPHVsPgogICAgICA8IS0tIFN0YXJ0ZXIgUGxhbi0tPgogICAgICA8bGk+ICA8bGFiZWw+JDEwMDAgLSAkNTAwMCA8L2xhYmVsPjwvbGk+CiAgICAgIDxsaT5EYWlseSBmb3IgMiBEYXlzIDwvbGk+CiAgICAgIDxsaT5QcmluY2lwYWwgSW5jbHVkZWQgPC9saT4KICAgICAgPGxpPjI0LzcgU3VwcG9ydDwvbGk+CiAgICA8L3VsPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLWJvdHRvbSBweS0zIj48YSBjbGFzcz0iYnRuIGJ0bi1saWdodCBwbGFuLWJ0biIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICMxYTQwMzk7Y29sb3I6ICNmZmZmZmY7IiAgaHJlZj0iamF2YXNjcmlwdDpvcGVuQ2FsY3VsYXRvcignMScpIj5JbnZlc3Q8L2E+IDwvYT48L2Rpdj4KICA8L2Rpdj4KPC9kaXY+Cgo8IS0tUGxhbiAzLS0+CjxkaXY+CiAgPGRpdiBjbGFzcz0icGxhbiBwbGFuMSI+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLXBlciI+CiAgICAgIDxoMSBjbGFzcz0idGV4dC13aGl0ZSBtYi0wIHBvcCBmdy1ib2xkIj4gPHNwYW4+ICA8bGk+IDUlPC9saT4gICA8L3NwYW4+IDwvaDE+CiAgICAgIDxzcGFuIGNsYXNzPSJ0ZXh0LXdoaXRlIGZ3LWJvbGQgZnMtNiI+RGFpbHk8L3NwYW4+IDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGxhbi1oZWFkIHRleHQtd2hpdGUgcHktMyBtYi0wIj4KICAgICAgPGg0IGNsYXNzPSIgZnctYm9sZCAiPkdvbGQgUGxhbiAgPC9oND4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGxhbi1saXN0Ij4KICAgIDx1bD4KICAgICAgPCEtLSBTdGFydGVyIFBsYW4tLT4KICAgICAgPGxpPiAgPGxhYmVsPiQ1MDAwIC0gJDIwMDAwMCA8L2xhYmVsPjwvbGk+CiAgICAgIDxsaT4gRGFpbHkgZm9yIDQgRGF5cyA8L2xpPgogICAgICA8bGk+UHJpbmNpcGFsIEluY2x1ZGVkIDwvbGk+CiAgICAgIDxsaT4yNC83IFN1cHBvcnQ8L2xpPgogICAgPC91bD4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGxhbi1ib3R0b20gcHktMyI+PGEgY2xhc3M9ImJ0biBidG4tbGlnaHQgcGxhbi1idG4iIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiAjMWE0MDM5O2NvbG9yOiAjZmZmZmZmOyIgIGhyZWY9ImphdmFzY3JpcHQ6b3BlbkNhbGN1bGF0b3IoJzEnKSI+SW52ZXN0PC9hPiA8L2E+PC9kaXY+CiAgPC9kaXY+CjwvZGl2PgoKCjwhLS1QbGFuIDQtLT4KPGRpdj4KICA8ZGl2IGNsYXNzPSJwbGFuIHBsYW4xIj4KICAgIDxkaXYgY2xhc3M9InBsYW4tcGVyIj4KICAgICAgPGgxIGNsYXNzPSJ0ZXh0LXdoaXRlIG1iLTAgcG9wIGZ3LWJvbGQiPiA8c3Bhbj4gIDxsaT4gNyU8L2xpPiAgIDwvc3Bhbj4gPC9oMT4KICAgICAgPHNwYW4gY2xhc3M9InRleHQtd2hpdGUgZnctYm9sZCBmcy02Ij5EYWlseTwvc3Bhbj4gPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLWhlYWQgdGV4dC13aGl0ZSBweS0zIG1iLTAiPgogICAgICA8aDQgY2xhc3M9IiBmdy1ib2xkICI+UHJvbW8gUGxhbiA8L2g0PgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwbGFuLWxpc3QiPgogICAgPHVsPgogICAgICA8IS0tIFN0YXJ0ZXIgUGxhbi0tPgogICAgICA8bGk+ICA8bGFiZWw+JDIwMDAwIC0gNTAwMDAwIDwvbGFiZWw+PC9saT4KICAgICAgPGxpPkRhaWx5IGZvciA3IERheXMgPC9saT4KICAgICAgPGxpPlByaW5jaXBhbCBJbmNsdWRlZCA8L2xpPgogICAgICA8bGk+MjQvNyBTdXBwb3J0PC9saT4KICAgIDwvdWw+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9InBsYW4tYm90dG9tIHB5LTMiPjxhIGNsYXNzPSJidG4gYnRuLWxpZ2h0IHBsYW4tYnRuIiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogIzFhNDAzOTtjb2xvcjogI2ZmZmZmZjsiICBocmVmPSJqYXZhc2NyaXB0Om9wZW5DYWxjdWxhdG9yKCcxJykiPkludmVzdDwvYT4gPC9hPjwvZGl2PgogIDwvZGl2Pgo8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgCiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9zZWN0aW9uPgo8c2VjdGlvbiBjbGFzcz0icHktNSBpbWctYmcyIiA+CiAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPGRpdiBjbGFzcz0iY29sLWxnLTEyIj4KICAgICAgPGRpdiBjbGFzcz0idGl0bGUgdGV4dC1sZWZ0Ij4gPHNwYW4gY2xhc3M9InBvcCBmdy1ub3JtYWwiIHN0eWxlPSJjb2xvcjp2YXIoLS1icy10ZWFsKTsiPkZlYXR1cmVzPC9zcGFuPgogICAgICAgIDxoMiBjbGFzcz0idGV4dC1ibGFjayBmdy1ib2xkZXIiPk91ciBBd2Vzb21lIEZlYXR1cmVzPC9oMj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJyb3cgICBweS0zIHJvdy1jb2xzLWxnLTQgcm93LWNvbHMtbWQtMiI+CiAgICA8ZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcyBiZy1wcmltYXJ5IG1iLTIgIHRleHQtY2VudGVyIHBiLTMgcHktMyBpY29uLXNxdWFyZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VydmljZXMtaWNvbiAgICBkLWlubGluZS1ibG9jayBtYi0xIj4gPGltZyBzcmM9ImltYWdlcy9mZWF0LWljbzEucG5nIiBjbGFzcz0iaW1nLWZsdWlkIiBhbHQ9Ii4uLiI+IDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlcnZpY2VzLWNvbiI+CiAgICAgICAgICA8aDUgY2xhc3M9ImZ3LWJvbGQgbSB0ZXh0LXdoaXRlIGZzLTUiPkVzdGFibGlzaCBHb2FsczwvaDU+CiAgICAgICAgICA8cCBjbGFzcz0iZnctbm9ybWFsIG10LTMgcHgtNCBwb3AgdGV4dC13aGl0ZSBmcy02IG9wYWNpdHktNzUiPlJlZ2lzdGVyIGFuZCBlbmpveSBkYWlseSBlYXJuaW5ncyBvbiBldmVyeSBjYWxlbmRhciBkYXkuIDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDxkaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlcnZpY2VzIGJnLXByaW1hcnkgIG1iLTIgIHRleHQtY2VudGVyIHBiLTMgcHktMyBpY29uLXNxdWFyZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VydmljZXMtaWNvbiAgIGQtaW5saW5lLWJsb2NrIG1iLTEiPiA8aW1nIHNyYz0iaW1hZ2VzL2ZlYXQtaWNvMi5wbmciIGNsYXNzPSJpbWctZmx1aWQiIGFsdD0iLi4uIj4gPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VydmljZXMtY29uIj4KICAgICAgICAgIDxoNSBjbGFzcz0iZnctYm9sZCBtIHRleHQtd2hpdGUgZnMtNSI+QXV0aGVudGljIGFuZCBMZWdhbDwvaDU+CiAgICAgICAgICA8cCBjbGFzcz0iZnctbm9ybWFsIG10LTMgcHgtNCBwb3AgdGV4dC13aGl0ZSBmcy02IG9wYWNpdHktNzUiPldhbG1hcnQgRnVuZCBIb2xkaW5ncyBpcyBhbiBvZmZpY2lhbCBlbnRpdHkgdW5kZXIgY29tcGFuaWVzIGhvdXNlIHJlZ2lzdGVyOiAgOTE3NzE1IDwvcD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDxkaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlcnZpY2VzIGJnLXByaW1hcnkgIG1iLTIgIHRleHQtY2VudGVyIHBiLTMgcHktMyBpY29uLXNxdWFyZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VydmljZXMtaWNvbiAgICAgIGQtaW5saW5lLWJsb2NrIG1iLTEiPiA8aW1nIHNyYz0iaW1hZ2VzL2ZlYXQtaWNvMy5wbmciIGNsYXNzPSJpbWctZmx1aWQiIGFsdD0iLi4uIj4gPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VydmljZXMtY29uIj4KICAgICAgICAgIDxoNSBjbGFzcz0iZnctYm9sZCBtIHRleHQtd2hpdGUgZnMtNSI+MjQvNyBMaXZlIFN1cHBvcnQ8L2g1PgogICAgICAgICAgPHAgY2xhc3M9ImZ3LW5vcm1hbCBtdC0zIHB4LTQgcG9wIHRleHQtd2hpdGUgZnMtNiBvcGFjaXR5LTc1Ij5XZSBoYXZlIGluY29ycG9yYXRlZCAyNC83IHN1cHBvcnQgc3lzdGVtLiBDb250YWN0IHVzIGZvciBhbnkgYXNzaXN0YW5jZSBuZWVkZWQuPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VydmljZXMgYmctcHJpbWFyeSAgIG1iLTIgdGV4dC1jZW50ZXIgcGItMyBweS0zIGljb24tc3F1YXJlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZXJ2aWNlcy1pY29uICAgIGQtaW5saW5lLWJsb2NrIG1iLTEiPiA8aW1nIHNyYz0iaW1hZ2VzL2ZlYXQtaWNvNC5wbmciIGNsYXNzPSJpbWctZmx1aWQiIGFsdD0iLi4uIj4gPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VydmljZXMtY29uIj4KICAgICAgICAgIDxoNSBjbGFzcz0iZnctYm9sZCBtIHRleHQtd2hpdGUgZnMtNSI+Q29udmVyc2lvbiBSYXRlPC9oNT4KICAgICAgICAgIDxwIGNsYXNzPSJmdy1ub3JtYWwgbXQtMyBweC00IHBvcCB0ZXh0LXdoaXRlIGZzLTYgb3BhY2l0eS03NSI+SGlnaCBzcGVlZCBjb252ZXJzaW9uIHJhdGU8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+Cjwvc2VjdGlvbj4KPHNlY3Rpb24gY2xhc3M9InB5LTUgaW1nLWJnMyIgPgogIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMTIiPgogICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIHRleHQtY2VudGVyIG1iLTUiPiA8c3BhbiBjbGFzcz0icG9wIGZ3LW5vcm1hbCIgc3R5bGU9ImNvbG9yOnZhcigtLWJzLXRlYWwpOyI+UGF5bWVudDwvc3Bhbj4KICAgICAgICAgIDxoMiBjbGFzcz0idGV4dC1ibGFjayBmdy1ib2xkZXIiPk91ciBQYXltZW50IE1ldGhvZDwvaDI+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMTIiPgogICAgICAgIDxkaXYgY2xhc3M9InBheW1lbnQtaW5mbyBvd2wtY2Fyb3VzZWwiPiA8aW1nIHNyYz0iaW1hZ2VzL3BheS1pY28xLnBuZyIgY2xhc3M9ImltZy1mbHVpZCIgLz4gPGltZyBzcmM9ImltYWdlcy9wYXktaWNvMi5wbmciIGNsYXNzPSJpbWctZmx1aWQiIC8+IDxpbWcgc3JjPSJpbWFnZXMvcGF5LWljbzMucG5nIiBjbGFzcz0iaW1nLWZsdWlkIiAvPiA8aW1nIHNyYz0iaW1hZ2VzL3BheS1pY280LnBuZyIgY2xhc3M9ImltZy1mbHVpZCIgLz4gPGltZyBzcmM9ImltYWdlcy9wYXktaWNvNS5wbmciIGNsYXNzPSJpbWctZmx1aWQiIC8+IDxpbWcgc3JjPSJpbWFnZXMvcGF5LWljbzYucG5nIiBjbGFzcz0iaW1nLWZsdWlkIiAvPiA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0xMCBvZmZzZXQtbGctMSAgY29sLXNtLTEyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTQiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjZXJ0aWZpY2F0ZS1pbWcgZ3JhZC1ib3IiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNlci1pbWcgICBwb3NpdGlvbi1yZSI+IDxpbWcgc3JjPSJpbWFnZXMvY2VydGlmaWNhdGUtaW1nLmpwZyIgY2xhc3M9ImltZy1mbHVpZCI+IDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTgiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb24tcmlnaHQiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbi10aHJlZSBncmFkLWJvciBwb3NpdGlvbi1yZSAgZC1zbS1mbGV4Ij4gPGltZyBzcmM9ImltYWdlcy9jb24taWNvMS5wbmciIGNsYXNzPSJpbWctZmx1aWQgbWUtMiBtYi0yIiBoZWlnaHQ9IjU3cHgiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29uLWNvbiBtYi0yIj4KICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJ0ZXh0LWJsYWNrIGZ3LWJvbGQiICAgPk91ciBMb2NhdGlvbiA8L2g1PgogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC1ibGFjayBwb3AiPiAxOTcgR2lzbGFzb24gTG9ja3MsIFdlc3QgRWRtb25kLCBBcml6b25hLCBVbml0ZWQgU3RhdGVzLiA8L3NwYW4+IDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbi10aHJlZSBncmFkLWJvciBwb3NpdGlvbi1yZSAgIGQtc20tZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiAiID4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImQtc20tZmxleCI+IDxpbWcgc3JjPSJpbWFnZXMvY29uLWljbzIucG5nIiBjbGFzcz0iaW1nLWZsdWlkIG1lLTIgbWItMiI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbi1jb24gbWItMiI+CiAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJ0ZXh0LWJsYWNrIGZ3LWJvbGQiID5FLW1haWwgQWRkcmVzczogPC9oNT4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC1ibGFjayBwb3AiPiBzdXBwb3J0QHdhbG1hcnRmdW5kaG9sZGluZ3MuY29tPC9zcGFuPiA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29uLXRocmVlLXJpZ2h0Ij4gPGEgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSIgaHJlZj0ibWFpbHRvOmNvbnRhY3RAd2FsbWFydGZ1bmRob2xkaW5ncy5jb20iPlNlbmQgTWFpbDwvYT4gPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb24tdGhyZWUgZ3JhZC1ib3IgcG9zaXRpb24tcmUgICBkLXNtLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gIiA+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkLXNtLWZsZXgiPiA8aW1nIHNyYz0iaW1hZ2VzL2Nvbi1pY28zLnBuZyIgY2xhc3M9ImltZy1mbHVpZCBtZS0yIG1iLTIiPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb24tY29uIG1iLTIiPgogICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGV4dC1ibGFjayBmdy1ib2xkIiA+Q29tcGFueSBOdW1iZXIgPC9oNT4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGV4dC1ibGFjayBwb3AiPiAjOTE3NzE1PC9zcGFuPiA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29uLXRocmVlLXJpZ2h0Ij4gPGEgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSIgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9IiMiPk1vcmUgRGV0YWlsczwvYT4gPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIAogICAgPGJyPgogICAgCiAgICA8IS0tIGZvcmV4IGNoYXJ0IEJFR0lOIC0tPgogICAgICAgIDxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb250YWluZXIiPgoKICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9zMy50cmFkaW5ndmlldy5jb20vZXh0ZXJuYWwtZW1iZWRkaW5nL2VtYmVkLXdpZGdldC1mb3JleC1jcm9zcy1yYXRlcy5qcyIgYXN5bmM+CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJ3aWR0aCI6ICIxMDAlIiwKICAgICAgICAgICAgICAgICAgImhlaWdodCI6ICI0MDAiLAogICAgICAgICAgICAgICAgICAiY3VycmVuY2llcyI6IFsKICAgICAgICAgICAgICAgICAgICAiRVVSIiwKICAgICAgICAgICAgICAgICAgICAiVVNEIiwKICAgICAgICAgICAgICAgICAgICAiSlBZIiwKICAgICAgICAgICAgICAgICAgICAiR0JQIiwKICAgICAgICAgICAgICAgICAgICAiQ0hGIiwKICAgICAgICAgICAgICAgICAgICAiQVVEIiwKICAgICAgICAgICAgICAgICAgICAiQ0FEIiwKICAgICAgICAgICAgICAgICAgICAiTlpEIiwKICAgICAgICAgICAgICAgICAgICAiQ05ZIgogICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgICAiaXNUcmFuc3BhcmVudCI6IGZhbHNlLAogICAgICAgICAgICAgICAgICAiY29sb3JUaGVtZSI6ICJsaWdodCIsCiAgICAgICAgICAgICAgICAgICJsb2NhbGUiOiAiZW4iLAogICAgICAgICAgICAgICAgICAibGFyZ2VDaGFydFVybCI6ICIiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICA8L3NjcmlwdD4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPCEtLS0tLS0tLS0tLS0gQWR2YW50YWdlIHNlY3Rpb24gLS0tLS0tLS0tLS0tPgogCiAgICAgICAgICAKICAgICAgICAKICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICAgCjwvc2VjdGlvbj4KPGZvb3RlciBjbGFzcz0iZm9vdGVyLWJnIHB5LTQiPgogIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMyBjb2wtbWQtNiI+IDxhIGhyZWY9ImluZGV4Lmh0bWwiICA+PHN2ZyBjbGFzcz0ibWItMyIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiCgkgd2lkdGg9IjIyMHB4IiBoZWlnaHQ9IjU1cHgiIHZpZXdCb3g9IjAgMCAyMjAgNTUiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDIyMCA1NSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CiAgICAgICAgPHRleHQgdHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgMSA0My4wMTM3IDM3LjQ2OTcpIiBmaWxsPSIjRkZGRkZGIiBmb250LXdlaWdodD0iYm9sZCIgZm9udC1mYW1pbHk9IidNb250c2VycmF0JyIgZm9udC1zaXplPSIzMC4zNTg5Ij5XYWxtYXJ0Rkg8L3RleHQ+CiAgICAgICAgCiAgICAgICAgPC9zdmc+PC9hPgogICAgICAgIDxwIGNsYXNzPSJ0ZXh0LXdoaXRlIGZzLTYgIj5XYWxtYXJ0IEZ1bmQgSG9sZGluZ3MgaXMgYW4gaW52ZXN0bWVudCBjb21wYW55IG1hbmFnaW5nIGJ5IHByb2Zlc3Npb25hbHMgY3J5cHRvIGN1cnJlbmN5IHRyYWRlcnMuIFN1Y2Nlc3NmdWwgYWNoaWV2ZW1lbnRzIGluIG1haW4gYWN0aXZpdHkgYWxsb3dlZCB0aGUgY29tcGFueSB0byBncm93IHBhcnRuZXJzaGlwIGFzc2V0cyB0byBnZXQgYWNjZXNzIGludG8gbmV3IG1hcmtldHMuPC9wPgogICAgICAgIDx1bCBjbGFzcz0iZm9vdGVyLXNvY2lhbCBtdC00Ij4KICAgICAgICAgIDxsaT48YSBocmVmPSIjIj4gPGkgY2xhc3M9ImJpIGJpLWZhY2Vib29rIj48L2k+IDwvYT4gPC9saT4KICAgICAgICAgIDxsaT4gPGEgaHJlZj0iIyI+PGkgY2xhc3M9IiBiaSBiaS10d2l0dGVyIj48L2k+IDwvYT4gPC9saT4KICAgICAgICAgIDxsaT4gPGEgaHJlZj0iIyI+PGkgY2xhc3M9IiBiaSBiaS1pbnN0YWdyYW0iPjwvaT4gPC9hPiA8L2xpPgogICAgICAgICAgPGxpPiA8YSBocmVmPSIjIj48aSBjbGFzcz0iIGJpIGJpLXlvdXR1YmUiPjwvaT4gPC9hPiA8L2xpPgogICAgICAgIDwvdWw+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJjb2wtbGctMyBjb2wtbWQtNiI+CiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyLWxpbmtzIj4KICAgICAgICAgIDxoNCBjbGFzcz0idGV4dC1ncmVlbiBmdy1ib2xkIG1iLTMiPlF1aWNrIExpbmtzPC9oND4KICAgICAgICAgIDx1bCBjbGFzcz0icG9wIj4KICAgICAgICAgIAogICAgICAgICAgCiAgICAKICAgICAgICAgIAogICAgICAgICAgICA8bGk+IDxhIGhyZWY9ImFib3V0Lmh0bWwiPiBBYm91dCBVcyA8L2E+PC9saT4KICAgICAgICAgICAgPGxpPiA8YSBocmVmPSJuZXdzLmh0bWwiPiBOZXdzIDwvYT4gPC9saT4KICAgICAgICAgICAgPGxpPiA8YSBocmVmPSJydWxlcy5odG1sIj4gUnVsZXMgPC9hPiA8L2xpPgogICAgICAgICAgICA8bGk+IDxhIGhyZWY9ImZhcS5odG1sIj4gRmFxIDwvYT4gPC9saT4KICAgICAgICAgICAgPGxpPiA8YSBocmVmPSJzdXBwb3J0Lmh0bWwiPiBDb250YWN0IFVzIDwvYT4gPC9saT4KICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgPC91bD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1sZy0zIGNvbC1tZC02Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXItbGlua3MiPgogICAgICAgICAgPGg0IGNsYXNzPSJ0ZXh0LWdyZWVuIGZ3LWJvbGQgbWItMyI+T3RoZXIgTGlua3M8L2g0PgogICAgICAgICAgPHVsIGNsYXNzPSJwb3AiPgogICAgICAgICAgCiAgICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICAgICAgCiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj0iIyI+IExhc3QgMTAgSW52ZXN0b3JzIDwvYT4gPC9saT4KICAgICAgICAgICAgPGRpdiBpZD0iZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Ij48L2Rpdj48c2NyaXB0IGRhdGEtY2Zhc3luYz0iZmFsc2UiIHNyYz0iL2Nkbi1jZ2kvc2NyaXB0cy81YzVkZDcyOC9jbG91ZGZsYXJlLXN0YXRpYy9lbWFpbC1kZWNvZGUubWluLmpzIj48L3NjcmlwdD48c2NyaXB0PgoKZnVuY3Rpb24gZ29vZ2xlVHJhbnNsYXRlRWxlbWVudEluaXQoKSB7CgpuZXcgZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50KHsKCnBhZ2VMYW5ndWFnZTogJ2VuJwoKfSwgJ2dvb2dsZV90cmFuc2xhdGVfZWxlbWVudCcpOwoKfQoKPC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii8vdHJhbnNsYXRlLmdvb2dsZS5jb20vdHJhbnNsYXRlX2EvZWxlbWVudC5qcz9jYj1nb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCI+PC9zY3JpcHQ+CjwhRE9DVFlQRSBodG1sPgo8aHRtbCBsYW5nPSJlbiI+CiAgICAgICAgICAgIDxsaT4gPGEgaHJlZj0iIyI+IFJlZmVycmFsIExpbmtzIDwvYT4gPC9saT4KICAgICAgICAgICAgPGxpPiA8YSBocmVmPSIjIj4gUGFpZG91dCBIaXN0b3J5IDwvYT4gPC9saT4KICAgICAgICAgICAgCiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29sLWxnLTMgY29sLW1kLTYiPgogICAgICAgIDxkaXYgY2xhc3M9ImFkZHJlc3MiPgogICAgICAgICAgPGg0IGNsYXNzPSJ0ZXh0LWdyZWVuIGZ3LWJvbGQgbWItMyI+Q29udGFjdDwvaDQ+CiAgICAgICAgICA8dWwgY2xhc3M9InBvcCI+CiAgICAgICAgICAgIDxsaT4gMTk3IEdpc2xhc29uIExvY2tzLCBXZXN0IEVkbW9uZCwgQXJpem9uYSwgVW5pdGVkIFN0YXRlcy48YnI+CiAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgPGxpPiA8L2xpPgogICAgICAgICAgICA8bGk+IHdhbG1hcnRmdW5kaG9sZGluZ3MuY29tIDwvbGk+CiAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTEyIHRleHQtY2VudGVyIG10LTQiPiA8c3BhbiBjbGFzcz0idGV4dC13aGl0ZSI+Q29weXJpZ2h0IDIwMjQgPGEgY2xhc3M9InRleHQtZ3JlZW4iIGhyZWY9ImluZGV4Lmh0bWwiPiB3YWxtYXJ0ZnVuZGhvbGRpbmdzLmNvbSA8L2E+IEFsbFJpZ2h0cyBSZXNlcnZlZC48L3NwYW4+IDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CjwvZm9vdGVyPgoKPHNjcmlwdCBzcmM9ImpzL2pxdWVyeS0yLjEuNC5taW4uanMiPjwvc2NyaXB0PiAKPHNjcmlwdCBzcmM9ImpzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PiAKPHNjcmlwdCBzcmM9ImpzL293bC5jYXJvdXNlbC5taW4uanMiPjwvc2NyaXB0PiAKPHNjcmlwdCBzcmM9ImpzL3NjcmlwdC5qcyI+PC9zY3JpcHQ+IAogCjxzY3JpcHQ+CmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLCBmdW5jdGlvbigpewogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKHdpbmRvdy5zY3JvbGxZID4gNTApIHsKICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbmF2YmFyX3RvcCcpLmNsYXNzTGlzdC5hZGQoJ2ZpeGVkLXRvcCcpOwogICAgICAgIC8vIGFkZCBwYWRkaW5nIHRvcCB0byBzaG93IGNvbnRlbnQgYmVoaW5kIG5hdmJhcgogICAgICAgIG5hdmJhcl9oZWlnaHQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcubmF2YmFyJykub2Zmc2V0SGVpZ2h0OwogICAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUucGFkZGluZ1RvcCA9IG5hdmJhcl9oZWlnaHQgKyAncHgnOwogICAgICB9IGVsc2UgewogICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduYXZiYXJfdG9wJykuY2xhc3NMaXN0LnJlbW92ZSgnZml4ZWQtdG9wJyk7CiAgICAgICAgIC8vIHJlbW92ZSBwYWRkaW5nIHRvcCBmcm9tIGJvZHkKICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdUb3AgPSAnMCc7CiAgICAgIH0gCiAgfSk7Cn0pOyAKCjwvc2NyaXB0PiAKPCEtLSBTbWFydHN1cHAgTGl2ZSBDaGF0IHNjcmlwdCAtLT4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgp2YXIgX3NtYXJ0c3VwcCA9IF9zbWFydHN1cHAgfHwge307Cl9zbWFydHN1cHAua2V5ID0gJzhhNDBkODJkYWFhYmJjMGQ4MDMwOThmM2UwZjRiMDM2ZTUyZTgxYTYnOwp3aW5kb3cuc21hcnRzdXBwfHwoZnVuY3Rpb24oZCkgewogIHZhciBzLGMsbz1zbWFydHN1cHA9ZnVuY3Rpb24oKXsgby4ucHVzaChhcmd1bWVudHMpfTtvLj1bXTsKICBzPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdO2M9ZC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKICBjLnR5cGU9J3RleHQvamF2YXNjcmlwdCc7Yy5jaGFyc2V0PSd1dGYtOCc7Yy5hc3luYz10cnVlOwogIGMuc3JjPSdodHRwczovL3d3dy5zbWFydHN1cHBjaGF0LmNvbS9sb2FkZXIuanM/JztzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGMscyk7Cn0pKGRvY3VtZW50KTsKPC9zY3JpcHQ+CjwvYm9keT4KCiAKCjwvaHRtbD4="}},"time_used":170,"timings":{"blocked":-1,"dns":68,"connect":22,"send":0,"wait":24,"receive":0,"ssl":56},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/pay-ico4.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.985Z","timestamp":1785159267985,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/pay-ico4.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"f8f-66136805-950eb54fd602b07d;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3983\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3983,"size_decoded":4308,"mime_type":"image/png","magic":"PNG image data, 162 x 41, 8-bit/color RGBA, non-interlaced","md5":"da9baf60b0858d662d12e65622120f2d","sha1":"7c89357f6e6aacb72971fe309a23efc6ee58a276","sha256":"b217e4f2ce735c3c9aeb64ecc9910f45527347357fb76a68ec8298c2cbdac54f","sha512":"97d67ab7906149e3ad4d3cc6484750f1f0eacdcdb3b75eed6b9ec8fbce7c0348e02497b77e34b5c5bb8dca91c6a48732f58127a68b7e8a0e3e610529d815e8bb","ssdeep":"","tlshash":"24815cc6f1a3bc4190432aa65de3d6620547c2a4d1eeed3c7c1f81d9f9e05aa44917cf","first_seen":"2026-03-30T05:38:35.794622Z","last_seen":"2026-07-27T13:35:41.595538Z","times_seen":4,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAKIAAAApCAYAAAC2hfIAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDFDQUI0ODIxQjhGMTFFQzk3Q0VENUI3NUJEQTFFNjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDFDQUI0ODMxQjhGMTFFQzk3Q0VENUI3NUJEQTFFNjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEMUNBQjQ4MDFCOEYxMUVDOTdDRUQ1Qjc1QkRBMUU2OCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpEMUNBQjQ4MTFCOEYxMUVDOTdDRUQ1Qjc1QkRBMUU2OCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqXW1B8AAAwDSURBVHja7FwNlFVVFT7vzYwgzMBMQSCIgoQKpUUj/i0LSl1LovxZJZnZDwnl6hdrkbVMrQyWZi6KtTIdW1MZhiZkFpH5Q4SuUAl/EBnyD2YcHBzAYWaEmWGG99qf77tx5nDu77v3PRreXmuvmXn33XvP3ec7e39773Mnlc1mlZ8Mm1abVslJlgpJUQslGd7vPNEbRE8TvVf0OtEm0bQaWAI7H6X9jWc/QE1EOtZvyAT5XnkRjZLxAWWhQHCJaJ3oO/n350RPFL1UtHkAgRH2Hi26QHQI7Yz53yP6C9HGYj5reRGNgoeuFZ0iOkm0V3SL6EbRBu07SY5hhOgiDYSOnCn6RdEfDTCPWCP6NcMrQlYSiOpIAmKG4Jsv+lHRscZxgHC56GLRtoTB+A7Rk1yOvVfz0qkBAsQ+0b0GEDtF9xd7YOkigPB08rB5FhBCJpOj/Vp0vEsIj0taRTe4HNus8aiSDCAgZhiCf6V5Gy+5SPSHopUJgTFNfnSzaLdxbJXo7SV4DLzQ7CQgV4meEuK8K8hf7ksoROJ6K0gBZpMrbhL9peiOAZg1l4DIMHx+BK8FHrmyY/2GrmHTapMAIsb2iOij/DtTJNpSAmKB5H2iYyKcdwbLDltjWAy2eqX+ezYGAOr3SQLQ5vULXXvtVxuMq8ZcSCCidDAkwnnDRQcHMYopMJJzXH43JzOlcVcbjUj7AMD03BkPbhwUMJkI1y9I7dXNznGBspBA3McywdEhz+th2cE6CfLwSGY+IFrBCcHPXeB6YqQeOQ4gnyV6quhxfOZlov8kMMAL3294xHbRZ7TJd647FfZWuU5EOUsfz/HZhopOJwcGDSljVo7a6GOir/t4XBw7loncfg28L4q+xr9x7WkqV3LCODp4HJn/s+pgpyhOD5mlnSt4b9jgBM7jbtEXRJ8UW28FKKOCMSoQMx6cy80ISAJ20sOFkec5obbVCAMBXOiMVNNoAMCDol+WY8i8F3DiRminNhCIWZaL7jY85WZy024CJ0tvfpPK1UAzvM9mJmCoBlxNsJvF8b0E4z2iv+EiMe3kAOgy0Wu0hYfP5hNk3xU9W3SCMW/4biPBiNrrEzFRDH2eL4Q9uRDGWRzMy2JrcOxbZU62k8unkgSiEwYGkfOdypUB464T3eZiBAzqZdF/iL475D0BqnaPRKWcnmSo9hkMtoQGfJflnB3a7wDUKOP4Gy73GmVcD/z1Xk5Ojcs5GFct7TWLwHrOMlGOdx5hfH69yhWgJ3o8/0Tqh0R/zKw/385Uhve9UfRLXOg2GUIcQM+VebpawLiaVCgwGNMhB5ZifW8NM030KG8VrRd9ip5pgsVjOtlpvcck22S16J+0a7iNq8f4DECc6wLCXgOIGct4u10WodmBGMwJqAm46GeoXNdouktUsVGQyR4gNGU0veK3NJtHBSFC8S2MKNUBoyJsUS8gnI5oFeb+gYBIQnoUVyfqbujFVvGzCk7ISJXrlvxV9IMuA32CXjNoSEaYaomwssuMv7tICxDi/0MPnhQP3kWgv+liA0QEFOqPUdEK9e1czDt5P1MwHwtVbtNGFCA69GSO6FcNB9BDhwOwY7fS7erQHvXxoosEjGMJxthD81W8uZ9MZmiYpew7OrIBDP0v0e+LPp0n8Yb3+7voXwhsJ1nanqfHsCVUa8kDX+IzjCSn+zRtogs84jf4jEG3YGEB3U8K1MzFP4nXP9eYSziI68iD3wi5kLPk1N82FnQ7HdGdqOlqmTKeDd2pj2vfxXPPkWMLg4IxEBDlguNJloPKe0R/IvpZI5zNsIQZZKdNDIfwlk/Sq+7Pk+N0ky8tFmPsM8o3SktC8pVO3meJJaQ/SvDg2IeNY58R/T0XiJ+spSNoMD7HgkXX6Xui31H9NzNMIT1ZGOI5nSTsYpXbCqfLzWLHJZZo2SC2/QrndYp2aB6Ts+Y4PeIVDCVhZDYzxqUMIyixXEtP4XirOrr5bRbPkG/Wt0yMtDDOoquL3MlF5zbmTQxxawzOigTnnABARNnnSiZ7tmx0H0P9RHpH3X7wUj/jPISp937C+Awlop96ULdmsfF9RsQ8jklarECcG3GS5rAM0smB6St2HYlwV8wAdEomvyMIk+w6YAHd5TPuFD3ZUiYRupxOr9HlcY+7PEDoXB9JDjaTnKctdMV65kmkOEFlvFZX1TP/O8SWZS5jOGB4Q0c+JvpAnEAclsdkjbKURxAq/s0JSMJbdTBZCFVCiCAvWcKlcqkYrGKtUR8POF6lBxAxwQ/5PIdz/WfJI3UgVkcA4mgmPMoA9JwI9rmQITq28k2+27AyLjUz51g2ZoBkLZlzEvKWCr6pdKcL/Uj5LKimgNd/k/dQRtIStoEQp90Ct3SDesRVTDzCSgtdcwszxXO08PwRloGcTkBRG/kRJRVygm1F7JTP/FTkOcYDMS243RFs0xo3EJdGACJI9uUsITgDA6n/Jo07jtetI6Fv4wNvI6eMq02VpIxQB3u+QbiXrb7Z53FOFbnXloAUaIwlkWkN+Uy2Yv6DLOeE2ROaUoc2GvIG4uP0bBeFeKAFBGFaC8GLSGBP5mcTWYNyJmUXyzdomy1Xyb9Ala8AJGjzPewxSY6nty3kp1mf85JPiv4xwPWRqJibjndzkYeRRo5puMEbm4O+GhpFgnZW9nFFbAh4XQBumcVwbcq9q3E0vSQM/1uV22BQpZJ9ZyVfwctXX+c4bS0th/9ewuqBGTLX+nhEyMV0AFll37LmbDqeb+FkW1TwTpYjzVoUc+QMJh5vl8Js+r+sNpdZv12tCFM2C/RFlkBeUbki7HIfcr2AdS3bCh6p7P1fG8m9huBXCSQzccosLpxTNLDo/Wu8lopC8CDjvPX0/n6CBYqe/hcY2vXr4374pwD1/GmG2KUEfFBApEiPlhmfg0qhbTcVXtGmxAl26NwjPyeF7TWXhxigYnngStbozmeyMZx1LoRvdEQ2evC7T5ErBRW0wdCdeKwApZh8ogo8Hgr2a+iF2rngkJydbfFUiDA/Vwfbb35efyzBOI92xv7EwaQGMxk6TUFrc0VImzmloIfICy/QjqGVd7+ArI7UqZneHPM/lQsOnhs1x2qAUsD4atxA1DM8eL0/M5N2Nj10s4zhtlM4Q8PNVoe+3O0lNQzV6+Sh+hIuTucraPZ/XvNWaZfFmCGo/hChFAJQn0Uvl/IotQAA6DX3RuDYaZaCrqXTONl4xhsZ9RrpPY9hkqTvogdfrZP5ulzmrTVuIJrh/IDqv/sj5fPQp6ng25l0OZMZ4fbDEHw2+pH2sAMWKzaE/CCPRCzlM28vMmo9n2eih0QKBfjFBhhxzWrlvj9R0dNjm+DeJDyiClkDM2WMitahQViq9KnPmUXb6hDPVmGZsOEBn62NkeEEeisvQRfmNnrDMJ7qKVKfS31qinsYqZDkNbiMv8wyB1UWWzkbQhCem+gdZyr/fZcAHjZi3CKe8OEwk1xeYO8RRfp8zu0gF6rSPNQeahBBGPqb6v+G3ysBs/UeJiKomYKoz1C5XStDef5OhsnVBOzGMEmiltTMJ1eeyaRoNEGFkhfebnyG11/p42n3GrZy/slAq4ej2UzKcQETM3DhY3kNh6o1Efzglg9or/6mDsf/BraVHqQy5Hmv8jy3bB5GmKv6vx4K2hDkPWgcx8s/l1nAH8RrDWIJB2C5nnxpAjPdLEHepPr3vcPy3EqOp55Z8ImsPpSRm7+m+m9O9dp88brFVr28TsqDivUJoADylWLT47kQnHkET2yR403avISmBIUE4kaurnEhz3tEubeXsOIAuk4XkAYBYi81SmnLLFG0UCOXynwiCTjmpojXdxZoZwSahVqhYqmmUbn857D/h9dJ0zTiHcz6gnJFeCu8s+L6mmIMew3TMT5jkhJH/z2vMSa5r7OQ7bMUQXWb8u8mKPKWG+hFS/+Ra4BLoYGYJbigOzxC0Qsk/yu0c0sygKW8CMBHiEYvei1LErValokMDmn/3SThqRIIS0BMEozweo9Ta8gZsyx3dBXBW5fkCASiTrwzLM20xUzKS1IC4mHLUeNYPGnL+NMx38OUshIQS6ILvDf2UqKTgAJwBTP77hjv8Rav16EBfc+RYNz/CjAA1q5speu+020AAAAASUVORK5CYII="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","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://walmartfundholdings.com/","date":"2026-07-27T13:34:28.155Z","timestamp":1785159268155,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover= 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://walmartfundholdings.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: 352158\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 13:34:28 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::25pf2-1785159268214-380048637984\r\nx-xss-protection: 1; mode=block\r\ncf-cache-status: DYNAMIC\r\nserver-timing: cfCacheStatus;desc=\"DYNAMIC\", cfEdge;dur=13,cfOrigin;dur=66, cfExtPri\r\ncontent-encoding: zstd\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=lmAomxwyScbAv2QG7eW2fxhsXLzuh2PKU4yTNok0qeEAnpZk%2FG1raXQ%2F9holpaDurJOtt0dFXCF6bs9WAuFiJpUgxgRbptECRIUBfw0h4lhxxE5ulau475UYnXMw\"}]}\r\ncf-ray: a21c0592093856a3-OSL\r\nalt-svc: h3=\":443\"; ma=86400\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":"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":"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":33853,"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":102,"timings":{"blocked":-1,"dns":5,"connect":2,"send":0,"wait":89,"receive":8,"ssl":0},"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"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.315Z","timestamp":1785159268315,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 5044456\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 13:34:28 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=tEsfrI75DXJQtVESKDnjF5sU2IENx1dfR8F%2FSrowlwf3mHTyoVYUYxXkfFqW%2FQSIjIykJnKSUg%2BFM1ZCdHBHU%2BGGQHwrjcxiy6DQ1te3htVJxhNXV0UDkS3W8zUo\"}]}\r\ncf-cache-status: HIT\r\ncontent-encoding: zstd\r\netag: W/\"992603cebc96287b9bf186c47928c4d2\"\r\ncf-ray: a21c0593094256a3-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":282,"size_decoded":2359,"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-07-30T06:07:43.484238Z","times_seen":2855,"resource_available":true,"data":"KGdsb2JhbFRoaXMuVFVSQk9QQUNLfHwoZ2xvYmFsVGhpcy5UVVJCT1BBQ0s9W10pKS5wdXNoKFsib2JqZWN0Ij09dHlwZW9mIGRvY3VtZW50P2RvY3VtZW50LmN1cnJlbnRTY3JpcHQ6dm9pZCAwLDkxOTQ3LChlLHQscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJ3YXJuT25jZSIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIG59fSk7bGV0IG49ZT0+e319XSk7"}},"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":"fonts.gstatic.com/s/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.443Z","timestamp":1785159268443,"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/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.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://walmartfundholdings.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: 48264\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: Tue, 09 Sep 2025 19:08:31 GMT\r\ncontent-type: font/woff2\r\nage: 433449\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":48264,"size_decoded":49077,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48264, version 1.0","md5":"e401cae7a12911a5c9752dc7a62f9dd7","sha1":"5685dd613a8a8211bf60b4b10753a47587bd0b60","sha256":"b1bef1f03a77a36fc257c5525e32a1dd621bb6f935b743a419da7ed0b18dc8f5","sha512":"dc8b6f28bc048efb508b482199c958ffaeddf15431aad34544f5b9972fd8c19e0315f74499d5549b30e15a03e41bfaf2a30613b6889b9a693a9c87c4e872e1f3","ssdeep":"768:AWHBpvVWVHIgyYwXiDAOa6GWeFGaCfLBc/qiufIdQRuEl4ofxl8VKme:AWbEIgmi8uAFCfS/OfUYuRExl8VFe","tlshash":"1123f2e56c6a826bd88c882945ee21c1f3d7f4927713d149e8fa5df8c432c05ed5066b","first_seen":"2025-05-29T19:02:42.430777Z","last_seen":"2026-07-30T06:06:44.959375Z","times_seen":62401,"resource_available":false,"data":"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"}},"time_used":22,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/translate_static/img/te_ctrl3.gif","fqdn":"translate.googleapis.com","domain":"translate.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":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.890Z","timestamp":1785159269890,"http_version":"HTTP/3","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 /translate_static/img/te_ctrl3.gif HTTP/1.1\r\nHost: translate.googleapis.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 1412\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 02:32:24 GMT\r\nexpires: Fri, 23 Jul 2027 02:32:24 GMT\r\ncache-control: public, max-age=31536000\r\nage: 385325\r\nlast-modified: Thu, 03 Oct 2019 10:15:00 GMT\r\ncontent-type: image/gif\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":1412,"size_decoded":2072,"mime_type":"image/gif","magic":"GIF image data, version 89a, 84 x 19","md5":"9afe50090c0bc612953d081295eab5b1","sha1":"71a4da2a622879c29176ecfa5afe1bbe3e8cfa40","sha256":"d228d0256370863119c043f1e5ca8f3930f6999bd9f250434b6d8935f45dc171","sha512":"d7290b951cec51994f3480c32b70de0faeca433b5d99209b044e1d4c12327768de8c344b6bded806d993251e0ee6f98f0dd64f4480e999fbc06abfe3dd8056fa","ssdeep":"","tlshash":"042182b5cc99114a5be1bd27a334899da8b12c56c38d74595436bdb43470f098422812","first_seen":"2023-04-05T08:27:37Z","last_seen":"2026-07-30T06:06:45.047113Z","times_seen":16100,"resource_available":false,"data":"R0lGODlhVAATAOePAAAAyxZBmhdFrBhHrhpMyB1Uxh1Vzh5X0R9ZzR9awSFf1SNk2CYW0SZq2yZs4Cka2yt45TB9ITJ11TODHjODIDWKGzdgrDmUGjuaRTybGT1svj6hGUClGEF1tEGnFkGpGUKrFUNnrkWjYUWoUkZtskdww0dxy0l/EkmP5EqlLUtLS0uxFFCmLlGY6lON3la4E1e0GFhYD1uxRlu5EVyyU1+vLGW8FGef5mmTx22p7W6PEW+d32+e4XKa2Hp6en6p5H9lE4eHh4i06YurxYyqyYyufoy8iI29ho7AhpCz55DEhJW55ZaT15jClqGm9afE2KgeFavK7LDN47rV7b7J4cTa9cXi0MjX8Mrd9c0lGs3l/9QmGtbW1tfq/9jl9djl+NmcANns0dnt4NonG9otM9yGft4pG9/x4OCrIuG3I+Hv/+Lfz+Px4eRWTOSaAeSyNuUpHOWIgOalAOby/+c5P+egD+exAefJcOhYXuqjAOq3Tuq9YOtqbuvHG+vz++xYTOy8AO2sAe6xAO7x9+/Ecu/SaPDYaPD2//D47/KzAPS7APfpy/ng3fzp7P347f///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAP8ALAAAAABUABMAAAj+AP+pGEiw4MB//4goXMhQ4b8gECNKnIiwosWLGBE+2sjxkaNGIB115KjCB5eTKFP6UEEkypyXMGNGIRJkpM2NQSwO2bkzI8aRjOL8oUP0TxxGI1WkXIqSZcynMGnetJnz386OanpWxNGhKw6NHOMQHUs2jsiNSpkudQr1qVScI2vitLpRTZe7XdRoGYKQ65K/Hb5yxEO2MJ0/HdNyYQCgMQAGTYnAfOAYwIOociNy1Pwo55BHXZZ07XC3Ct9/HZZUFP1vo9ixfNYsWsOHDp6kKJlUZhIZppPKTjBvhtiZOM7PdlN34Xp3Ct/Uqzu0XjT2z5qRaxrhRsn4cUq2Lyn+W475FqfEjkE+4+0yhXkXKUNGy+/6yFAdotc7HrqpmItuALz15ltjwQmHnnGbqddcV3jBl9pfEIrmSB+KKILYVNtxB9l3ksX0wGXkyWUeZ8eBdheDDcY332iOVKiIIR0tgcKMNKKQwyP9+ReggL4VaGBxNZGYnl3r4TXFE/FFCGEHLVa4SEdR1EhjDofkqBZ4bb30lpDGeUYkiu89t2JXTb4Yo5Qz3mglU1hmWZ6IcM01hBZVrDeFFEiipiRgE1ZYREdzaCGoFi3MKASOJql10kotZfnSTHBiWNVOd0qBp1Zj0mdIGiOMYMVNVdAYxSMCGWQqQg2lSsRDGKKnE09jp/lU0SNhdDqCCJ929EWhKLTQBamyBuvTRMRKJKywGxlh6whGWOGsESLQeCiwx1Zr7bWyckTDstxi0MENHGEr7rjWdqQst7Ya0RG57LZ70UhWQGurCM2O5O697N6EyL773hQQADs="}},"time_used":16,"timings":{"blocked":0,"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/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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.312Z","timestamp":1785159268312,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 3846784\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 13:34:28 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=uy3rtKpDAlDIEn5DeVoHuIWD9Q5LS8K2lVpqhiJtO4RpPUy20q2NL5QfA%2FsC7mdD3bo2T8Y%2BGkmxcSYUdj0BxJtaufSHuArxEe0n8VcaWXcqOjoDuzKAftE4Rfnj\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0593094156a3-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":49883,"size_decoded":17718,"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-07-30T06:07:43.516728Z","times_seen":1706,"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":13,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":9,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css","fqdn":"www.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":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.461Z","timestamp":1785159268461,"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":"*.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 /_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css HTTP/1.1\r\nHost: www.gstatic.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://walmartfundholdings.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\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/rosetta\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"rosetta\"\r\nreport-to: {\"group\":\"rosetta\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/rosetta\"}]}\r\ncontent-length: 3967\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:44 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:44 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 09 Apr 2026 01:12:55 GMT\r\ncontent-type: text/css; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 433424\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":null,"data":{"size":20284,"size_decoded":4819,"mime_type":"text/css; charset=UTF-8","magic":"ASCII text, with very long lines (20284), with no line terminators","md5":"fde4f72b90fe807270db3c332dd058df","sha1":"7ef4d70af01c38a7f80a7650be25f63aff4ba751","sha256":"ab31c9be358d2107fc1158434c7aeaaf15f82e3e405ed67ab236b5ac232ed159","sha512":"9bef39350af557afeb10cb71068426ab28befaf5295359954787be06a5ce0993d69e8f5018a5a17c44311d294dd1a87a6f82edd0f5743df0149b8e4e53061695","ssdeep":"192:nvqx/EhZINcrXsfg0SgG8CqA3uku9SJFzvQVMbnUIfIxIVVpTrecfzPtcmt4v78l:gMF8Sb3i0JFzourUqWMVpTrdfzPtcBG","tlshash":"c492872057aed01967efa82364d36dff71d444db90123eeaaf5a7352cd821f231ea214","first_seen":"2026-04-13T20:43:22.641436Z","last_seen":"2026-07-30T05:46:25.805952Z","times_seen":18468,"resource_available":false,"data":"LlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2R7bGVmdDowO3RvcDowO2hlaWdodDozOXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxMDAwMDAwMTtwb3NpdGlvbjpmaXhlZDtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNkI5MERBO21hcmdpbjowO2JveC1zaGFkb3c6MCAwIDhweCAxcHggIzk5OX0uVklwZ0pkLVpWaTlvZC14bDA3T2ItT0VWbWNke3otaW5kZXg6MTAwMDAwMDI7Ym9yZGVyOm5vbmU7cG9zaXRpb246Zml4ZWQ7Ym94LXNoYWRvdzowIDNweCA4cHggMnB4ICM5OTl9LlZJcGdKZC1aVmk5b2QtU21mWi1PRVZtY2R7ei1pbmRleDoxMDAwMDAwMDtib3JkZXI6bm9uZTttYXJnaW46MH0uZ29vZy10ZS1nYWRnZXR7Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2Njt3aGl0ZS1zcGFjZTpub3dyYXB9Lmdvb2ctdGUtZ2FkZ2V0IGltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ym9yZGVyOm5vbmV9Lmdvb2ctdGUtZ2FkZ2V0LXNpbXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNENUQ1RDU7Ym9yZGVyLXRvcDoxcHggc29saWQgIzlCOUI5Qjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRThFOEU4O2JvcmRlci1yaWdodDoxcHggc29saWQgI0Q1RDVENTtmb250LXNpemU6MTBwdDtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nLXRvcDoxcHg7cGFkZGluZy1ib3R0b206MnB4O2N1cnNvcjpwb2ludGVyfS5nb29nLXRlLWdhZGdldC1pY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4O3dpZHRoOjE5cHg7aGVpZ2h0OjE5cHg7Ym9yZGVyOm5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWNvbWJve21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5nb29nLXRlLWdhZGdldCAuZ29vZy10ZS1jb21ib3ttYXJnaW46NHB4IDB9LlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDphY3RpdmUsLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkOmhvdmVyLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDpsaW5rLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDp2aXNpdGVke2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojNDQ0O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGR7ZGlzcGxheTpibG9jazttYXJnaW46MCAxMHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1Bke3BhZGRpbmctdG9wOjJweDtwYWRkaW5nLWxlZnQ6NHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgKiwuVklwZ0pkLVpWaTlvZC1TbWZaICosLlZJcGdKZC1aVmk5b2QtbDl4a3RmICosLlZJcGdKZC1aVmk5b2QtdkgxR21mICosLlZJcGdKZC1aVmk5b2QteGwwN09iICosLmdvb2ctdGUtY29tYm97Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjEwcHR9LlZJcGdKZC1aVmk5b2QtT1JIYnttYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNFNEVGRkI7b3ZlcmZsb3c6aGlkZGVufS5WSXBnSmQtWlZpOW9kLU9SSGIgaW1ne2JvcmRlcjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGItYk45N1Bje2NvbG9yOiMwMDB9LlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMgaW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1PUkhiLVRzd3YxYntjb2xvcjojNjY2O3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW4tdG9wOjA7Zm9udC1zaXplOjdwdH0uVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZXt3aWR0aDo4cHh9LlZJcGdKZC1aVmk5b2QtTGdic1Nle2JvcmRlci1jb2xvcjojRTdFN0U3O2JvcmRlci1zdHlsZTpub25lIHNvbGlkIHNvbGlkIG5vbmU7Ym9yZGVyLXdpZHRoOjAgMXB4IDFweCAwfS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBkaXZ7Ym9yZGVyLWNvbG9yOiNDQ0MgIzk5OSAjOTk5ICNDQ0M7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjOTk5O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2hlaWdodDoyMHB4fS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBidXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luOjA7dmVydGljYWwtYWxpZ246dG9wO3doaXRlLXNwYWNlOm5vd3JhcH0uVklwZ0pkLVpWaTlvZC1MZ2JzU2UgYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ30uVklwZ0pkLVpWaTlvZC1TbWZae21hcmdpbjowO2JhY2tncm91bmQtY29sb3I6I0ZGRjt3aGl0ZS1zcGFjZTpub3dyYXB9LlZJcGdKZC1aVmk5b2QtU21mWi1oU1JHUGR7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZToxMHB0O2JvcmRlcjoxcHggb3V0c2V0ICM4ODg7cGFkZGluZzo2cHggMTBweDt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1BkIGltZ3ttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0OjJweDt3aWR0aDoxOXB4O2hlaWdodDoxOXB4O2JvcmRlcjpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCBzcGFue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDoycHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWZsb2F0LXRvcCAuVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZHtwYWRkaW5nOjJweDtib3JkZXItdG9wLXdpZHRoOjB9Lmdvb2ctdGUtZmxvYXQtYm90dG9tIC5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1Bke3BhZGRpbmc6MnB4O2JvcmRlci1ib3R0b20td2lkdGg6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVke3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMwMEM7d2hpdGUtc3BhY2U6bm93cmFwO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4fS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgc3Bhbnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgaW1ne21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZHtjb2xvcjojMDAwfS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZCBzcGFue3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYntiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjQzNEOUZGO292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItaWJuQzZie3BhZGRpbmc6M3B4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmIsLlZJcGdKZC1aVmk5b2QteGwwN09iLWlibkM2YjpsaW5re2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6dmlzaXRlZHtjb2xvcjojNTUxQThCfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6aG92ZXJ7YmFja2dyb3VuZDojQzNEOUZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6YWN0aXZle2NvbG9yOiMwMEN9LlZJcGdKZC1aVmk5b2QtdkgxR21me2JhY2tncm91bmQtY29sb3I6I0ZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTtib3JkZXI6MXB4IHNvbGlkICM2QjkwREE7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1LcmhQTmJ7d2lkdGg6MTZweH0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaGdEVXdle21hcmdpbjo2cHggMDtoZWlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2FhYTtvdmVyZmxvdzpoaWRkZW59LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgZGl2e3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIgLnVERUZnZXtkaXNwbGF5Om5vbmV9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgLmZtY21Te3BhZGRpbmctbGVmdDo0cHg7cGFkZGluZy1yaWdodDo0cHh9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZHt0ZXh0LWRlY29yYXRpb246bm9uZX0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOmFjdGl2ZSBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YjpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOnZpc2l0ZWQgZGl2e2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmI6aG92ZXIgZGl2e2NvbG9yOiNGRkY7YmFja2dyb3VuZDojMzZDfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDphY3RpdmUgZGl2LC5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kOmhvdmVyIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDp2aXNpdGVkIGRpdntjb2xvcjojMDAwO2ZvbnQtd2VpZ2h0OjcwMH0uVklwZ0pkLVpWaTlvZC1sOXhrdGZ7YmFja2dyb3VuZC1jb2xvcjojRkZGO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHh9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLU9FVm1jZHtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyOjFweCBzb2xpZCAjNkI5MERBO2JveC1zaGFkb3c6MCAzcHggOHB4IDJweCAjOTk5O2JvcmRlci1yYWRpdXM6OHB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0ZiBpbWd7Ym9yZGVyOm5vbmV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLWZtY21Te21hcmdpbi10b3A6NnB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGN7bWFyZ2luLXRvcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGMgKnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuRFVHSmlle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X21pbnVzX3NtLmdpZil9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuVGR5VERle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X3BsdXNfc20uZ2lmKX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtVmd3SmxjIHNwYW57Y29sb3I6IzAwQzt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2N1cnNvcjpwb2ludGVyO21hcmdpbjowIDRweH0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtSTlHTHB7bWFyZ2luOjZweCAwIDB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm17bWFyZ2luOjB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm0gdGV4dGFyZWF7bWFyZ2luLWJvdHRvbTo0cHg7d2lkdGg6MTAwJX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYteWVQZTVje21hcmdpbjo2cHggMCA0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15Znt6LWluZGV4OjEwMDA7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbi1kZWxheTouNnM7bGVmdDotMTAwMHB4O3RvcDotMTAwMHB4fS5WSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdje3RyYW5zaXRpb24tZGVsYXk6MHM7bGVmdDotMTRweDt0b3A6LTE0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDRweDtoZWlnaHQ6MTA0cHg7Ym9yZGVyLXJhZGl1czo1MHB4O2JhY2tncm91bmQ6I0ZGRiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMngvdHJhbnNsYXRlXzI0ZHAucG5nKSA1MCUgNTAlIG5vLXJlcGVhdDt0cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXQ7dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHY3t0cmFuc2Zvcm06c2NhbGUoLjUpO29wYWNpdHk6MX0uVklwZ0pkLVpWaTlvZC1hWjJ3RWV7bWFyZ2luOjJweCAwIDAgMnB4O2FuaW1hdGlvbjpzcGlubmVyLXJvdGF0b3IgMS40cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBzcGlubmVyLXJvdGF0b3J7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9fS5WSXBnSmQtWlZpOW9kLWFaMndFZS1KdDVjS3tzdHJva2UtZGFzaGFycmF5OjE4NztzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZTojNDI4NUY0O3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2FuaW1hdGlvbjpzcGlubmVyLWRhc2ggMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW5uZXItZGFzaHswJXtzdHJva2UtZGFzaG9mZnNldDoxODd9NTAle3N0cm9rZS1kYXNob2Zmc2V0OjQ2Ljc1O3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX10b3tzdHJva2UtZGFzaG9mZnNldDoxODc7dHJhbnNmb3JtOnJvdGF0ZSg0NTBkZWcpfX0uVklwZ0pkLXlBV05FYi1MN2xia2IgYSwuVklwZ0pkLXlBV05FYi1MN2xia2IgYm9keSwuVklwZ0pkLXlBV05FYi1MN2xia2IgZGl2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBmb3JtLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoMSwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDIsLlZJcGdKZC15QVdORWItTDdsYmtiIGgzLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoNCwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDUsLlZJcGdKZC15QVdORWItTDdsYmtiIGg2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBodG1sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBpZnJhbWUsLlZJcGdKZC15QVdORWItTDdsYmtiIGltZywuVklwZ0pkLXlBV05FYi1MN2xia2IgbGksLlZJcGdKZC15QVdORWItTDdsYmtiIG9sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBwLC5WSXBnSmQteUFXTkViLUw3bGJrYiBzcGFuLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0YWJsZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgdGJvZHksLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0ciwuVklwZ0pkLXlBV05FYi1MN2xia2IgdWx7YWxsOnVuc2V0O2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0Om5vcm1hbH0uVklwZ0pkLXlBV05FYi1MN2xia2Igb2wsLlZJcGdKZC15QVdORWItTDdsYmtiIHVse2xpc3Qtc3R5bGU6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgdGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9LlZJcGdKZC15QVdORWItTDdsYmtiIGNhcHRpb24sLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0aHt0ZXh0LWFsaWduOmxlZnQ7Zm9udC13ZWlnaHQ6NDAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiBpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH1kaXY+LlZJcGdKZC15QVdORWItTDdsYmtie3BhZGRpbmc6MTBweCAxNHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYntjb2xvcjojMjIyO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlZWU7Ym94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy1tb3otYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy13ZWJraXQtYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpO2Rpc3BsYXk6bm9uZTtmb250LWZhbWlseTphcmlhbDtmb250LXNpemU6MTBwdDt3aWR0aDo0MjBweDtwYWRkaW5nOjEycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TLC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NsZWFyOmJvdGg7Zm9udC1zaXplOjEwcHQ7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpqdXN0aWZ5O3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXI0bmtle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46NHB4IDA7dGV4dC1hbGlnbjpsZWZ0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UdkQ5UGMtTGdic1Nle2Rpc3BsYXk6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbDRlSFh7ZmxvYXQ6bGVmdDttYXJnaW46MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLVBMRGJiZntkaXNwbGF5OmlubGluZS1ibG9ja30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItZnc0MlplLVowQXJxZi1oYUFjbGZ7ZGlzcGxheTpub25lO3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1IOXREdHttYXJnaW4tdG9wOjIwcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUxLNXl1e2Zsb2F0OmxlZnR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXF3VThNZXtmbG9hdDpyaWdodH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItY0dNSTJie21pbi1oZWlnaHQ6MTVweDtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MSV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLWpPZmtNYi1OZTNzRmZ7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjMjk5MTBkIDAsIzIwYWYwZSAxMDAlKTtiYWNrZ3JvdW5kOiMyOTkxMGQ7Ym9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6aW5zZXQgMCAycHggMnB4ICMxZTY2MDk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDJweCAjMWU2NjA5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDJweCAycHggIzFlNjYwOTtjb2xvcjp3aGl0ZTtmb250LXNpemU6OXB0O2ZvbnQtd2VpZ2h0OmJvbGRlcjttYXJnaW4tdG9wOjEycHg7cGFkZGluZzo2cHg7dGV4dC1zaGFkb3c6MXB4IDFweCAxcHggIzFlNjYwOX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLWhTUkdQZHtjb2xvcjojMTVjO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OmFyaWFsO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi1yaWdodDoxNXB4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYj50ZXh0YXJlYXtmb250LWZhbWlseTphcmlhbDtyZXNpemU6dmVydGljYWw7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLXJhZGl1czoxcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkIHNpbHZlcjtmb250LXNpemU6MTNweDtoZWlnaHQ6YXV0bztvdmVyZmxvdy15OmF1dG87cGFkZGluZzoxcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIHRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTtvdXRsaW5lOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1JYkUwU3ttYXJnaW4tcmlnaHQ6MTBweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwe21pbi1oZWlnaHQ6MjVweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZy10b3A6OHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwe21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1ib3R0b206MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dHtkaXNwbGF5OmlubGluZS1ibG9jazttaW4td2lkdGg6NTRweDsqbWluLXdpZHRoOjcwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZGNkY2RjO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6IzQ0NDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI3cHg7b3V0bGluZTowO3BhZGRpbmc6MCA4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2xpbmUtaGVpZ2h0OjI3cHg7bWFyZ2luOjAgMTZweCAwIDA7Ym94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246YWxsIC4yMThzO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y1ZjVmNSwjZjFmMWYxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lO2N1cnNvcjpkZWZhdWx0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmhvdmVye2JvcmRlcjoxcHggc29saWQgI2M2YzZjNjtjb2xvcjojMjIyO3RyYW5zaXRpb246YWxsIDBzO2JhY2tncm91bmQtY29sb3I6I2Y4ZjhmODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y4ZjhmOCwjZjFmMWYxKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmV7Ym9yZGVyOjFweCBzb2xpZCAjYzZjNmM2O2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZjZmNmY2O2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmZvY3VzIC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LkFIbXV3ZSAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXM6YWN0aXZle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjUpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwyNTUsMjU1LC41KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dC5BSG11d2UsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTt6LWluZGV4OjQhaW1wb3J0YW50fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LmdrNlNNZHtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCNlZWUsI2UwZTBlMCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSk7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2NvbG9yOiMzMzN9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZntjb2xvcjp3aGl0ZTtib3JkZXItY29sb3I6IzMwNzllZDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZDkwZmU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzQ3ODdlZCl9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZi5BSG11d2UgLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjpob3ZlciAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3Vze2JvcmRlci1jb2xvcjojMzA3OWVkO2JhY2tncm91bmQtY29sb3I6IzM1N2FlODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmhvdmVye2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNmZmYsMCAxcHggMXB4IHJnYmEoMCwwLDAsLjEpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZiwwIDFweCAxcHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjZmZmLDAgMXB4IDFweCByZ2JhKDAsMCwwLC4xKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmLkFIbXV3ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3VzLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0IC5WSXBnSmQteUFXTkViLVowQXJxZi1zRmVCcWY6aG92ZXIsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQuQUhtdXdlLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpmb2N1cywuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpob3Zlcntib3JkZXItY29sb3I6IzMwNzllZH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbXJ4UGdle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZn0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLVcwdkpvLWZtY21Te2NvbG9yOiM5OTk7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46MTVweCAwIDVweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXUwcGpvZS1mbWNtU3tjb2xvcjojODAwO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6OXB0fS5WSXBnSmQteUFXTkViLVZJcGdKZC1mbWNtUy1zbjU0UXtiYWNrZ3JvdW5kLWNvbG9yOiNjOWQ3ZjE7Ym94LXNoYWRvdzoycHggMnB4IDRweCAjOTlhO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjpyZWxhdGl2ZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQteGwwN09ie2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7Ym94LXNoYWRvdzowIDJweCA0cHggIzk5YTttaW4td2lkdGg6MDtvdXRsaW5lOm5vbmU7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MjAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQtajdMRmxie2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MnB4IDVweCA1cHg7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXN0eWxlOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYjpob3ZlcntiYWNrZ3JvdW5kOiNkZGR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYiBoMXtmb250LXNpemU6MTAwJTtmb250LXdlaWdodDo3MDA7bWFyZ2luOjRweCAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQteGwwN09iIC5WSXBnSmQteUFXTkViLVZJcGdKZC1qN0xGbGIgc3Ryb25ne2NvbG9yOiMzNDVhYWR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVZJcGdKZC1lS201RmMtaEZzYm97dGV4dC1hbGlnbjpyaWdodDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2xlZnQ6YXV0b30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYi1TSXNyVGQgLlZJcGdKZC15QVdORWItVklwZ0pkLWVLbTVGYy1oRnNib3t0ZXh0LWFsaWduOmxlZnQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OmF1dG99LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVRWTHc5Yy1wcEhscmYtc241NFEsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtZm1jbVN7YmFja2dyb3VuZC1jb2xvcjojZjFlYTAwO2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3gtc2hhZG93OjNweCAzcHggNHB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojZjFlYTAwO2N1cnNvcjpwb2ludGVyO21hcmdpbjotMnB4IC0ycHggLTJweCAtM3B4O3BhZGRpbmc6MnB4IDJweCAycHggM3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2NvbG9yOiMyMjJ9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NvbG9yOndoaXRlO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2JhY2tncm91bmQtY29sb3I6I2M5ZDdmMTtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Ym94LXNoYWRvdzozcHggM3B4IDRweCByZ2JhKDAsMCwwLC41KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOi0ycHggLTJweCAtMnB4IC0zcHg7cGFkZGluZzoycHggMnB4IDNweCAzcHg7cG9zaXRpb246cmVsYXRpdmV9LlZJcGdKZC15QVdORWItTDdsYmtiIHNwYW46Zm9jdXN7b3V0bGluZTpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtRHlWREF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmU7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO21hcmdpbjotMnB4O3BhZGRpbmc6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi15QVdORWItVFZMdzljLXNuNTRRLUx6WDNlZntib3JkZXItbGVmdDoycHggc29saWQgcmVkO21hcmdpbi1sZWZ0Oi0ycHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1UVkx3OWMtc241NFEtWUlBaUlie2JvcmRlci1yaWdodDoycHggc29saWQgcmVkO21hcmdpbi1yaWdodDotMnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJme3BhZGRpbmc6MnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21Te2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDJweCAzcHg7bWFyZ2luOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMzMzM7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkICNjMGMwYzA7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wO2hlaWdodDoyMXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJvcmRlci1yYWRpdXM6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmhvdmVye2JvcmRlcjoxcHggc29saWQgI2I5YjliOTtib3JkZXItdG9wOjFweCBzb2xpZCAjYTBhMGEwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC1ZUHFqYmYtc0ZlQnFme2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDZweCAzcHg7bWFyZ2luOjAgMCAwIDJweDtoZWlnaHQ6MjFweH0uVklwZ0pkLXlBV05FYi1MN2xia2I+ZGl2e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LWZhbWlseTpHb29nbGUgU2FucyxBcmlhbCxzYW5zLXNlcmlmfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVWQ3ZnJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmVuZDttYXJnaW46MTRweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGR7bWFyZ2luLXJpZ2h0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtaTNqTThje21hcmdpbi1sZWZ0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1rNzdJaWZ7bWFyZ2luOjAgMTZweCAxNnB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYXhBVjF7d2lkdGg6YXV0bztjb2xvcjojMWYxZjFmO2ZvbnQtc2l6ZToxNnB4O3RleHQtYWxpZ246aW5pdGlhbH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWF4QVYxIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweDttYXJnaW46MDtiYWNrZ3JvdW5kOiNmMWY0Zjk7cG9zaXRpb246cmVsYXRpdmU7bWluLWhlaWdodDo1MHB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkLUI3STRPZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47d2lkdGg6NzclO3BhZGRpbmc6MTJweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLU43RXFpZC1CN0k0T2QgLlZJcGdKZC15QVdORWItU0lzclRke3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2J7Y29sb3I6IzFmMWYxZjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVVR1akNie3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2V7Y29sb3I6IzQ0NDc0Njtmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtZU85bUtle3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NSAuVklwZ0pkLXlBV05FYi1TSXNyVGR7bGVmdDo1cHg7cmlnaHQ6YXV0b30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYntmaWxsOiMwYjU3ZDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2Z7bWFyZ2luOi00cHggMnB4IDAgMDtwYWRkaW5nOjJweCAwIDA7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjI0cHg7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDpub25lfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYmdtNnNmOmhvdmVye2JhY2tncm91bmQ6I2U4ZWJlY30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWFYWVRjZXtkaXNwbGF5Om5vbmV9c2VudGluZWx7fQ=="}},"time_used":69,"timings":{"blocked":-1,"dns":3,"connect":17,"send":0,"wait":16,"receive":0,"ssl":33},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/65862.95764752c09f3f18f890.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.283Z","timestamp":1785159269283,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/65862.95764752c09f3f18f890.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-8593\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b9a0b867aed157a2984e6039d15707fc\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"]}],"data":{"size":34195,"size_decoded":11853,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (13834)","md5":"d5f37343643dde0b01c1d10dbbdb91df","sha1":"acf466d1f2aaa1c4e577a663cc0c197647ff1b0c","sha256":"ad4421c24189dacdd5b62aa07485176e838543c7e572a23a90b2e5d70b28c982","sha512":"b6fba60ec4a7056bdda7602c545749c4b49d93c597e471e20f312b470a5c949b390f959900f2267b02646d6ce1c6f9fcd1ebddb7b4fbc2383344305b5179923d","ssdeep":"768:8HXyKsaOA/R4POygg6FUOaovTBa81zNh3h6kIRdnNy84MnxbDE3xZwDZscCDjvFR:OWgDagTBa0zNhRIRdnNy84y4BZw1FCHz","tlshash":"41e2e892aa135c331ed5176ad87b3902d1d80679f5863c68bdf858de0d8dac070f355e","first_seen":"2026-07-24T11:36:47.857631Z","last_seen":"2026-07-28T07:05:00.680835Z","times_seen":1734,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNjU4NjJdLHszNzcyMjYoZSx0LG8pe28uZCh0LHtvbldpZGdldDooKT0+c30pO2NvbnN0IHI9bmV3IE1hcDtmdW5jdGlvbiBzKCl7Y29uc3QgZT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsdD13aW5kb3cubG9jYXRpb24uaG9zdCxvPWAke3R9JHtlfWA7cmV0dXJuIHIuaGFzKG8pfHxyLnNldChvLGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1bIl53aWRnZXQtZG9jcyJdO2Zvcihjb25zdCBlIG9mIG8paWYobmV3IFJlZ0V4cChlKS50ZXN0KHQpKXJldHVybiEwO2NvbnN0IHI9WyJed2lkZ2V0ZW1iZWQvPyQiLCJeY21ld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRzdGF0aWMvPyQiLCJeKFswLTlhLXpBLVotXSspPy8/bWVkaXVtd2lkZ2V0ZW1iZWQvPyQiLCJedHdpdHRlci1jaGFydC8/JCIsIl50ZWxlZ3JhbS9jaGFydC8/JCIsIl5lbWJlZC8oWzAtOWEtekEtWl17OH0pLz8kIiwiXndpZGdldHBvcHVwLz8kIiwiXmV4dGVuc2lvbi8/JCIsIl5pZGVhLXBvcHVwLz8kIiwiXmhvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL2hvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl5ldmVudHN3aWRnZXRlbWJlZC8/JCIsIl50aWNrZXJzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhjcm9zc3JhdGVzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhoZWF0bWFwd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJec2NyZWVuZXJ3aWRnZXQvPyQiLCJeY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL2NyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl50ZWNobmljYWwtYW5hbHlzaXMtd2lkZ2V0LWVtYmVkLyQiLCJec2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvc2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl5lbWJlZC13aWRnZXQvKFswLTlhLXpBLVotXSspLygoWzAtOWEtekEtWi1dKykvKT8kIiwiXndpZGdldC1kb2NzLyhbMC05YS16QS1aLV0rKS8oWzAtOWEtekEtWi0vXSspPyQiXSxzPWUucmVwbGFjZSgvXlwvLywiIik7bGV0IF87Zm9yKGxldCBlPXIubGVuZ3RoLTE7ZT49MDtlLS0paWYoXz1uZXcgUmVnRXhwKHJbZV0pLF8udGVzdChzKSlyZXR1cm4hMDtyZXR1cm4hMX0oZSx0KSksci5nZXQobyk/PyExfX0sMzAwMjg2KGUsdCxvKXsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbmV3IGNsYXNze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fdGVzdD1lW3RdPXt9fXByb3ZpZGUoZSx0KXt0aGlzLl90ZXN0W2VdPXR9fSh3aW5kb3csInFhR2xvYmFscyIpfSw1ODc0MzYoZSx0LG8pe2Z1bmN0aW9uIHIoZSx0LG8scixzKXtsZXQgXz0iIjtpZihyPXI/IjsgcGF0aD0iK3I6IiIscz1zPyI7IGRvbWFpbj0iK3M6IiIsbyl7Y29uc3QgZT1uZXcgRGF0ZTtlLnNldFRpbWUoZS5nZXRUaW1lKCkrMjQqbyo2MCo2MCoxZTMpLF89IjsgZXhwaXJlcz0iK2UudG9VVENTdHJpbmcoKX1lbHNlIF89IiI7ZG9jdW1lbnQuY29va2llPWUrIj0iK3QrXytzK3J9ZnVuY3Rpb24gcyhlKXtjb25zdCB0PWUrIj0iLG89ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxvLmxlbmd0aDtlKyspe2xldCByPW9bZV07Zm9yKDsiICI9PT1yLmNoYXJBdCgwKTspcj1yLnN1YnN0cmluZygxLHIubGVuZ3RoKTtpZigwPT09ci5pbmRleE9mKHQpKXJldHVybiByLnN1YnN0cmluZyh0Lmxlbmd0aCxyLmxlbmd0aCl9cmV0dXJuIG51bGx9by5kKHQse2dldDooKT0+cyxzZXQ6KCk9PnJ9KX0sOTQ4MzgwKGUsdCxvKXtvLmQodCx7RGVsZWdhdGU6KCk9Pl99KTtjb25zdCByPSgwLG8oMjIxMDYxKS5nZXRMb2dnZXIpKCJDb21tb24uRGVsZWdhdGUiKTtmdW5jdGlvbiBzKGUpe3JldHVybiFlLnNpbmdsZVNob3R9Y2xhc3MgX3tjb25zdHJ1Y3Rvcigpe3RoaXMuZmlyZT10aGlzLl9maXJlSW1wbC5iaW5kKHRoaXMpLHRoaXMuX2xpc3RlbmVycz1bXX1zdWJzY3JpYmUoZSx0LG8pe3RoaXMuX2xpc3RlbmVycy5wdXNoKHtvYmplY3Q6ZSxtZW1iZXI6dCxzaW5nbGVTaG90OiEhbyxza2lwOiExfSl9dW5zdWJzY3JpYmUoZSx0KXtmb3IobGV0IG89MDtvPHRoaXMuX2xpc3RlbmVycy5sZW5ndGg7KytvKXtjb25zdCByPXRoaXMuX2xpc3RlbmVyc1tvXTtpZihyLm9iamVjdD09PWUmJnIubWVtYmVyPT09dCl7ci5za2lwPSEwLHRoaXMuX2xpc3RlbmVycy5zcGxpY2UobywxKTticmVha319fXVuc3Vic2NyaWJlQWxsKGUpe2ZvcihsZXQgdD10aGlzLl9saXN0ZW5lcnMubGVuZ3RoLTE7dD49MDstLXQpe2NvbnN0IG89dGhpcy5fbGlzdGVuZXJzW3RdO28ub2JqZWN0PT09ZSYmKG8uc2tpcD0hMCx0aGlzLl9saXN0ZW5lcnMuc3BsaWNlKHQsMSkpfX1kZXN0cm95KCl7dGhpcy5fbGlzdGVuZXJzPVtdfV9maXJlSW1wbCguLi5lKXtjb25zdCB0PXRoaXMuX2xpc3RlbmVyczt0aGlzLl9saXN0ZW5lcnM9dGhpcy5fbGlzdGVuZXJzLmZpbHRlcihzKTtjb25zdCBvPXQubGVuZ3RoO2ZvcihsZXQgcz0wO3M8bzsrK3Mpe2NvbnN0IG89dFtzXTtpZighby5za2lwKXRyeXtvLm1lbWJlci5hcHBseShvLm9iamVjdHx8bnVsbCxlKX1jYXRjaChlKXtyLmxvZ0Vycm9yKGAke2UmJihlLnN0YWNrfHxlLm1lc3NhZ2UpfWApfX19fX0sNTM0NDQwKGUsdCxvKXtvLmQodCx7bnVtT2ZEZWNpbWFsUGxhY2VzOigpPT5ffSk7dmFyIHI9byg3MTI3NDUpLHM9by5uKHIpO2Z1bmN0aW9uIF8oZSl7cmV0dXJuKG5ldyhzKCkpKGUpLnRvRml4ZWQoKS5zcGxpdCgiLiIpWzFdfHwiIikubGVuZ3RofX0sMjMyMzY0KGUsdCxvKXtvLmQodCx7V2F0Y2hlZFZhbHVlOigpPT5ffSk7Y29uc3Qgcj0oMCwKbygyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5XYXRjaGVkVmFsdWUiKTtmdW5jdGlvbiBzKGUpe3IubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9Y2xhc3MgX3tjb25zdHJ1Y3RvciguLi5lKXt0aGlzLl9saXN0ZW5lcnM9W10sZS5sZW5ndGg+MD90aGlzLl92YWx1ZT1lWzBdOmRlbGV0ZSB0aGlzLl92YWx1ZX1kZXN0cm95KCl7dGhpcy51bnN1YnNjcmliZSgpfXZhbHVlKCl7cmV0dXJuIHRoaXMuX293bmVyP3RoaXMuX293bmVyLl92YWx1ZTp0aGlzLl92YWx1ZX1zZXRWYWx1ZShlLHQpe2NvbnN0IG89dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpcztpZihvLndyaXRlTG9jaylyZXR1cm47Y29uc3Qgcj1vLl92YWx1ZT09PWV8fE51bWJlci5pc05hTihvLl92YWx1ZSkmJk51bWJlci5pc05hTihlKTtpZighdCYmciYmby5oYXNPd25Qcm9wZXJ0eSgiX3ZhbHVlIikpcmV0dXJuO28uX3ZhbHVlPWU7Y29uc3QgXz1vLl9saXN0ZW5lcnMuc2xpY2UoKTtsZXQgaT0wO2ZvcihsZXQgdD0wO3Q8Xy5sZW5ndGg7dCsrKXtfW3RdLm9uY2UmJihvLl9saXN0ZW5lcnMuc3BsaWNlKHQtaSwxKSxpKyspO3RyeXtfW3RdLmNiKGUpfWNhdGNoKGUpe3MoZSl9fX1kZWxldGVWYWx1ZSgpe3RoaXMuc2V0VmFsdWUodm9pZCAwKX1zdWJzY3JpYmUoZSx0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJjYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24iKTtjb25zdCBvPSEhdCYmISF0Lm9uY2Uscj0hIXQmJiEhdC5jYWxsV2l0aExhc3QsXz10aGlzLl9vd25lcj90aGlzLl9vd25lcjp0aGlzO2lmKHImJl8uaGFzT3duUHJvcGVydHkoIl92YWx1ZSIpKXt0cnl7ZShfLl92YWx1ZSl9Y2F0Y2goZSl7cyhlKX1pZihvKXJldHVybn1fLl9saXN0ZW5lcnMucHVzaCh7Y2I6ZSxvd25lcjp0aGlzLG9uY2U6ISF0JiYhIXQub25jZX0pfXVuc3Vic2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5fb3duZXI/dGhpcy5fb3duZXI6dGhpczt2b2lkIDA9PT1lJiYoZT1udWxsKTtjb25zdCBvPXQuX2xpc3RlbmVycztmb3IobGV0IHI9by5sZW5ndGg7ci0tOylvW3JdLm93bmVyIT09dGhpcyYmdCE9PXRoaXN8fG9bcl0uY2IhPT1lJiZudWxsIT09ZXx8by5zcGxpY2UociwxKX1yZWFkb25seSgpe2lmKHRoaXMuX3JlYWRvbmx5SW5zdGFuY2UpcmV0dXJuIHRoaXMuX3JlYWRvbmx5SW5zdGFuY2U7Y29uc3QgZT17c3Vic2NyaWJlOnRoaXMuc3Vic2NyaWJlLmJpbmQodGhpcyksdW5zdWJzY3JpYmU6dGhpcy51bnN1YnNjcmliZS5iaW5kKHRoaXMpLHZhbHVlOnRoaXMudmFsdWUuYmluZCh0aGlzKSx3aGVuOnRoaXMud2hlbi5iaW5kKHRoaXMpLG93bmVyc2hpcDp0aGlzLm93bmVyc2hpcC5iaW5kKHRoaXMpLHNwYXduT3duZXJzaGlwOnRoaXMuc3Bhd25Pd25lcnNoaXAuYmluZCh0aGlzKSx3ZWFrUmVmZXJlbmNlOnRoaXMud2Vha1JlZmVyZW5jZS5iaW5kKHRoaXMpLHNwYXduOmU9PnRoaXMuc3Bhd24oZSkucmVhZG9ubHkoKSxkZXN0cm95OnRoaXMuZGVzdHJveS5iaW5kKHRoaXMpfTtyZXR1cm4gdGhpcy5fcmVhZG9ubHlJbnN0YW5jZT1lLGV9c3Bhd24oZSl7cmV0dXJuIHRoaXMuX3NwYXduKGUpfXdoZW4oZSl7IWZ1bmN0aW9uKGUsdCxvKXtpZih0KGUudmFsdWUoKSkpcmV0dXJuIHZvaWQgbygpO2NvbnN0IHI9cz0+e3QocykmJihlLnVuc3Vic2NyaWJlKHIpLG8oKSl9O2Uuc3Vic2NyaWJlKHIse2NhbGxXaXRoTGFzdDohMH0pfSh0aGlzLChlPT5Cb29sZWFuKGUpKSwoKCk9Pnt0cnl7ZSh0aGlzLnZhbHVlKCkpfWNhdGNoKGUpe3MoZSl9fSkpfWFzc2VydE5vU3Vic2NyaXB0aW9ucygpezB9b3duZXJzaGlwKCl7cmV0dXJuIHRoaXN9cmVsZWFzZSgpe3RoaXMuZGVzdHJveSgpfXNwYXduT3duZXJzaGlwKCl7cmV0dXJuIHRoaXMuX3NwYXduKCl9d2Vha1JlZmVyZW5jZSgpe3JldHVybiB0aGlzLl9zcGF3bih2b2lkIDAsITApfV9zcGF3bihlLHQpe3JldHVybiBuZXcgaSh0aGlzLl9vd25lcnx8dGhpcyxlLHQpfX1jbGFzcyBpIGV4dGVuZHMgX3tjb25zdHJ1Y3RvcihlLHQsbyl7c3VwZXIoKSxkZWxldGUgdGhpcy5fbGlzdGVuZXJzLHRoaXMuX293bmVyPWUsdGhpcy5fb25EZXN0cm95PXQsdGhpcy5fd2Vha1JlZmVyZW5jZT0hIW99ZGVzdHJveSgpe3RyeXt0aGlzLl9vbkRlc3Ryb3k/LigpfWNhdGNoKGUpe3MoZSl9c3VwZXIuZGVzdHJveSgpfXJlYWRvbmx5KCl7cmV0dXJuIHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZXx8KHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZT17Li4uc3VwZXIucmVhZG9ubHkoKSxkZXN0cm95OigpPT50aGlzLmRlc3Ryb3koKSxyZWFkb25seSgpe3JldHVybiB0aGlzfX0pLHRoaXMuX3JlYWRvbmx5U3Bhd25JbnN0YW5jZX1yZWxlYXNlKCl7dGhpcy5fd2Vha1JlZmVyZW5jZXx8c3VwZXIucmVsZWFzZSgpfX19LDU5ODkyMihlLHQsbyl7by5kKHQse2Zvcm1hdE51bWJlcjooKT0+aSxwYXJzZU51bWJlcjooKT0+bn0pO3ZhciByPW8oNzEyNzQ1KSxzPW8oNjYzMDQ2KSxfPW8oMTE1MjkzKTtmdW5jdGlvbiBpKGUsdCxvLHMsXyl7aWYoIU51bWJlci5pc0Zpbml0ZShlKSlyZXR1cm5gJHtlfWA7Y29uc3QgaT0tMT09PU1hdGguc2lnbihlKT8iLSI6IiI7ZT1NYXRoLmFicyhlKTtsZXQgYT12b2lkIDA9PT1vP2UudG9TdHJpbmcoKTplLnRvRml4ZWQobyk7aWYoYS5pbmNsdWRlcygiZSIpKXtpZighcylyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gO3tjb25zdCBvPW5ldyByLkJpZyhlKTtpZihhPW8ubHQoMSk/by50b0ZpeGVkKCk6by50b1N0cmluZygpLGEuaW5jbHVkZXMoImUiKSlyZXR1cm5gJHtpfSR7YS5yZXBsYWNlKCIuIix0LmRlY2ltYWxTaWduKX1gfX1jb25zdCBuPWEuc3BsaXQoIi4iKSxsPW5bMF07bGV0IGM9blsxXTtjb25zdCBkPWZ1bmN0aW9uKGUsdCl7bGV0IG89ZS5sZW5ndGg7Y29uc3Qgcj1bXTtmb3IoO28+MDspci51bnNoaWZ0KGUuc2xpY2UoTWF0aC5tYXgoby0zLDApLG8pKSxvLT0zO3JldHVybiByLmpvaW4odCl9KGwsdC5ncm91cGluZ1NlcGFyYXRvcikKO3JldHVybiB2b2lkIDAhPT1vJiYoYz0wPT09bz92b2lkIDA6ZS50b0ZpeGVkKG8pLnNsaWNlKC1vKSksdm9pZCAwIT09XyYmdm9pZCAwIT09YyYmKGM9ZnVuY3Rpb24oZSx0KXtsZXQgbz1lLmxlbmd0aC0xO2ZvcihsZXQgcj1vO3I+PXQmJiIwIj09PWVbcl07ci09MSlvLT0xO3JldHVybiBlLnNsaWNlKDAsbysxKX0oYyxfKSksYz9gJHtpfSR7ZH0ke3QuZGVjaW1hbFNpZ259JHtjfWA6YCR7aX0ke2R9YH1jb25zdCBhPSgwLHMuZGVmYXVsdCkoKGU9Pntjb25zdCB0PWUucmVwbGFjZSgvWy1bXF17fSgpKis/LixcXF4kfCNcc10vZywiXFwkJiIpO3JldHVybiBuZXcgUmVnRXhwKHQsImdtIil9KSk7ZnVuY3Rpb24gbihlLHQpe2lmKC9eKE5hTnxbK3wtXT9JbmZpbml0eSkkLy50ZXN0KGUpKXJldHVybiBwYXJzZUZsb2F0KGUpO2U9KDAsXy5zdHJpcExUUk1hcmtzKShlKTtjb25zdCBvPWEodC5ncm91cGluZ1NlcGFyYXRvcik7cmV0dXJuIG8mJihlPWUucmVwbGFjZShvLCIiKSksZT1lLnJlcGxhY2UodC5kZWNpbWFsU2lnbiwiLiIpLC9eKFwrfC0pP1xkKyhcLlxkK3xcLik/KGUoXCt8LSk/XGQrKT8kLy50ZXN0KGUpP3BhcnNlRmxvYXQoZSk6TmFOfX0sNTQ2NDg1KGUsdCxvKXtvLmQodCx7Z2V0TnVtYmVyRm9ybWF0OigpPT5kfSk7bGV0IHI9bnVsbDt2YXIgcz1vKDg1NjMyNCk7ZnVuY3Rpb24gXyhlLHQpe3JldHVybntncm91cGluZ1NlcGFyYXRvcjplLGRlY2ltYWxTaWduOnR9fWNvbnN0IGk9XygiLCIsIi4iKSxhPV8oIi4iLCIsIiksbj1fKCLigK8iLCIsIiksbD1fKCIiLCIuIiksYz1uZXcgTWFwKFtbImVuIixpXSxbInRoIixpXSxbImphIixpXSxbImtvIixpXSxbInpoIixpXSxbInpoX1RXIixpXSxbImFyIixpXSxbImhlX0lMIixpXSxbIm1zX01ZIixpXSxbInZpIixpXSxbImRlIixhXSxbImVzIixhXSxbIml0IixhXSxbInRyIixhXSxbInB0IixhXSxbImlkX0lEIixhXSxbImZyIixuXSxbInBsIixuXSxbInJ1IixuXV0pO2Z1bmN0aW9uIGQoZSl7cmV0dXJuIGU/bDoodD1jLmdldCgoMCxzLmdldExhbmd1YWdlKSgpKXx8bCxyP3IodCk6dCk7dmFyIHR9fSw3NTU2MjcoZSx0LG8pe28uZCh0LHtQcmljZUZvcm1hdHRlcjooKT0+eX0pO3ZhciByPW8oNjAxODQxKTtmdW5jdGlvbiBzKGUsdCxvLHIpe2xldCBzPTA7aWYoZT4wJiZ0PjApe2xldCB0PWU7Zm9yKG8mJnImJih0Lz1yKTt0PjE7KXQvPTEwLHMrK31yZXR1cm4gc312YXIgXz1vKDcxMjc0NSksaT1vKDgyMjQzMSksYT1vKDU5ODkyMiksbj1vKDU0NjQ4NSksbD1vKDc4MzI1NCksYz1vKDEzODYzOCksZD1vKDExNTI5MyksdT1vKDUzNTMwKTtmdW5jdGlvbiBtKGUsdCxvKXtjb25zdCByPSgwLGMuZW5zdXJlTm90TnVsbCkoKDAsdS5nZXRNaW5UaWNrRGF0YSkoe3ByaWNlOm8sbWluVGljazpudWxsLHZhcmlhYmxlTWluVGlja0RhdGE6dCxzaG91bGRDaGVja0ZvckVxdWFsaXR5OiEwfSkpLHtwcmljZVNjYWxlOl8sbWluTW92ZTppLG1pbk1vdmUyOmF9PXI7cmV0dXJue3ByaWNlU2NhbGU6XyxtaW5Nb3ZlOmksZnJhY3Rpb25hbExlbmd0aDpzKF8saSxlLGEpfX1jbGFzcyBoe2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Zvcm1hdHRlckVycm9ycz17Y3VzdG9tOmwudChudWxsLHZvaWQgMCxvKDYxNjE4KSksZnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oOTY4ODE1KSksc2Vjb25kRnJhY3Rpb246bC50KG51bGwsdm9pZCAwLG8oODUwMjk4KSl9O2NvbnN0e3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6cyxpZ25vcmVNaW5Nb3ZlOl8sdmFyaWFibGVNaW5UaWNrOmksZnJhY3Rpb25hbExlbmd0aDphfT1lO3RoaXMuX3ByaWNlU2NhbGU9dCx0aGlzLl9taW5Nb3ZlPXIsdGhpcy5fbWluTW92ZTI9cyx0aGlzLl9pZ25vcmVNaW5Nb3ZlPV8sdGhpcy5fZnJhY3Rpb25hbExlbmd0aD1hLHRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGE9dm9pZCAwPT09aT92b2lkIDA6KDAsdS5tYWtlVmFyaWFibGVNaW5UaWNrRGF0YSkoe3ByaWNlU2NhbGU6dCxtaW5Nb3ZlOnIsbWluTW92ZTI6c30saSl9Zm9ybWF0SW1wbChlLHQ9e30pe2NvbnN0e3NpZ25Qb3NpdGl2ZTpvLHNpZ25OZWdhdGl2ZTpyPSEwLHRhaWxTaXplOnMsY3V0RnJhY3Rpb25hbEJ5UHJlY2lzaW9uOl89ITEsdXNlUnRsRm9ybWF0Omk9ITAsdmFyaWFibGVNaW5UaWNrRGF0YVByaWNlOmEsaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Om4sbm9FeHBvbmVudGlhbEZvcm06bCxyZW1vdmVBbGxFbmRpbmdaZXJvczpjfT10O2xldCB1PSIiO2U8MD91PSExPT09cj8iIjoi4oiSIjplJiYhMD09PW8mJih1PSIrIik7Y29uc3QgbT10aGlzLl9mb3JtYXRVbnNpZ25lZChNYXRoLmFicyhlKSx7dGFpbFNpemU6cyxjdXRGcmFjdGlvbmFsQnlQcmVjaXNpb246Xyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6YSxpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bixub0V4cG9uZW50aWFsRm9ybTpsLHJlbW92ZUFsbEVuZGluZ1plcm9zOmN9KSxoPSIwIj09PW0/bTp1K207cmV0dXJuIGk/KDAsZC5mb3JjZUxUUlN0cikoaCk6aH1wYXJzZShlLHQpe3JldHVybiIrIj09PShlPShlPSgwLGQuc3RyaXBMVFJNYXJrcykoZSkpLnJlcGxhY2UoIuKIkiIsIi0iKSlbMF0mJihlPWUuc3Vic3RyaW5nKDEpKSx0aGlzLl9wYXJzZVVuc2lnbmVkKGUsdCl9X3JlbW92ZUVuZGluZ1plcm9zKGUsdCl7Zm9yKGxldCBvPTA7bzx0JiYiMCI9PT1lW2UubGVuZ3RoLTFdO28rKyllPWUuc3Vic3RyaW5nKDAsZS5sZW5ndGgtMSk7cmV0dXJuIGV9fWNsYXNzIGcgZXh0ZW5kcyBoe2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpO2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0LG5vRXhwb25lbnRpYWxGb3JtOm99PWU7dGhpcy5faWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0PXQsdGhpcy5fbm9FeHBvbmVudGlhbEZvcm09b31oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4gMTA9PT10aGlzLl9taW5Nb3ZlMn1fcGFyc2VVbnNpZ25lZChlLHQpe3JldHVybiB0aGlzLl9wYXJzZUFzRGVjaW1hbChlLHQpfV9mb3JtYXRVbnNpZ25lZChlLHQpewpjb25zdHt0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyPSExLHZhcmlhYmxlTWluVGlja0RhdGFQcmljZTpzLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YT0hMX09dCxuPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLGZyYWN0aW9uYWxMZW5ndGg6dGhpcy5fZnJhY3Rpb25hbExlbmd0aCx0YWlsU2l6ZTpvLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpyLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpfLG5vRXhwb25lbnRpYWxGb3JtOmkscmVtb3ZlQWxsRW5kaW5nWmVyb3M6YX07cmV0dXJuIHZvaWQgMCE9PXRoaXMuX3ZhcmlhYmxlTWluVGlja0RhdGEmJihPYmplY3QuYXNzaWduKG4sbSghMSx0aGlzLl92YXJpYWJsZU1pblRpY2tEYXRhLHM/P24ucHJpY2UpKSx0aGlzLl9pZ25vcmVNaW5Nb3ZlJiYobi5taW5Nb3ZlPTEpKSx0aGlzLl9mb3JtYXRBc0RlY2ltYWwobil9X2Zvcm1hdEFzRGVjaW1hbChlKXtjb25zdHtwcmljZTp0LHByaWNlU2NhbGU6byxtaW5Nb3ZlOnIsZnJhY3Rpb25hbExlbmd0aDpzPTAsdGFpbFNpemU6bD0wLGN1dEZyYWN0aW9uYWxCeVByZWNpc2lvbjpjLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDpkPXRoaXMuX2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdCxub0V4cG9uZW50aWFsRm9ybTp1PXRoaXMuX25vRXhwb25lbnRpYWxGb3JtLHJlbW92ZUFsbEVuZGluZ1plcm9zOm19PWUsaD0oMCxuLmdldE51bWJlckZvcm1hdCkoZCk7aWYodD49MWUyMSYmIXUpcmV0dXJuIHQudG9TdHJpbmcoKS5yZXBsYWNlKCIuIixoLmRlY2ltYWxTaWduKTtjb25zdCBnPU1hdGgucG93KDEwLGwpKm8vKGM/MTpyKSxwPTEvZztsZXQgYjtpZihnPjEpYj1NYXRoLmZsb29yKHQpO2Vsc2V7Y29uc3QgZT1NYXRoLnJvdW5kKHQvcCkqcDtiPTA9PT1NYXRoLnJvdW5kKCh0LWUpL3ApP2U6ZStwfWxldCB3PSIiO2lmKGc+MSl7bGV0IGU9Yz9uZXcgXy5CaWcodCkubXVsKGcpLnJvdW5kKHZvaWQgMCwwKS5taW51cyhuZXcgXy5CaWcoYikubXVsKGcpKS50b051bWJlcigpOnBhcnNlRmxvYXQoKE1hdGgucm91bmQodCpnKS1iKmcpLnRvRml4ZWQocykpO2U+PWcmJihlLT1nLGIrPTEpLGU9Yz9uZXcgXy5CaWcoZSkucm91bmQocywwKS50b051bWJlcigpOnBhcnNlRmxvYXQoZS50b0ZpeGVkKHMpKSpyO2NvbnN0IG89KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoZSxzK2wpO2lmKCF1JiZ0PDEmJnM+PTEwJiZvLnN0YXJ0c1dpdGgoIjAwMDAiKSl7bGV0IGU9NDtmb3IobGV0IHQ9ZTt0PG8ubGVuZ3RoJiYiMCI9PT1vW3RdO3QrKyllKys7Y29uc3QgdD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLnNsaWNlKGUpLHMpO3JldHVybiIiPT09dD8iMCI6YDAke2guZGVjaW1hbFNpZ259JHt0fWUtJHtlfWB9Y29uc3QgYT10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhvLG0/by5sZW5ndGg6bCk7dz1hP2guZGVjaW1hbFNpZ24rYTphfWNvbnN0IHk9KDAsYS5mb3JtYXROdW1iZXIpKGIsaCx2b2lkIDAsdSk7cmV0dXJuIHkuaW5jbHVkZXMoImUiKT95Onkrd31fcGFyc2VBc0RlY2ltYWwoZSx0PXt9KXtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6b309dCxyPSgwLG4uZ2V0TnVtYmVyRm9ybWF0KSh0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXR8fG8pLHM9KDAsYS5wYXJzZU51bWJlcikoZSxyKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKHMpP3t2YWx1ZTpzLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChzKX06e2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX19Y29uc3QgcD0iJyIsYj1uZXcgUmVnRXhwKC9eKC0/KVswLTldKyQvKTtjbGFzcyB3IGV4dGVuZHMgaHtoYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKXtyZXR1cm4hMX1fcGFyc2VVbnNpZ25lZChlKXtyZXR1cm4gdGhpcy5fbWluTW92ZTI/dGhpcy5fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSk6dGhpcy5fcGFyc2VBc1NpbmdsZUZyYWN0aW9uYWwoZSl9X2Zvcm1hdFVuc2lnbmVkKGUsdCl7Y29uc3R7dGFpbFNpemU6byx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6cn09dCxzPXtwcmljZTpNYXRoLmFicyhlKSxwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsbWluTW92ZTp0aGlzLl9taW5Nb3ZlLG1pbk1vdmUyOnRoaXMuX21pbk1vdmUyLGZyYWN0aW9uYWxMZW5ndGg6KDAsYy5lbnN1cmVEZWZpbmVkKSh0aGlzLl9mcmFjdGlvbmFsTGVuZ3RoKSx0YWlsU2l6ZTpvfTtyZXR1cm4gdm9pZCAwIT09dGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSYmT2JqZWN0LmFzc2lnbihzLG0oITAsdGhpcy5fdmFyaWFibGVNaW5UaWNrRGF0YSxyPz9zLnByaWNlKSksdGhpcy5fZm9ybWF0QXNGcmFjdGlvbmFsKHMpfV9wYXJzZUFzU2luZ2xlRnJhY3Rpb25hbChlKXtsZXQgdD1iLmV4ZWMoZSk7aWYodCl7Y29uc3QgdD1wYXJzZUZsb2F0KGUpO3JldHVybnt2YWx1ZTp0LHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbCh0KX19aWYodD1uZXcgUmVnRXhwKCJeKC0/KShbMC05XSspXFwnKFswLTldKykkIikuZXhlYyhlKSx0KXtjb25zdCBlPSEhdFsxXSxvPXBhcnNlSW50KHRbMl0pLHI9dGhpcy5fcHJpY2VTY2FsZSxzPXRoaXMuX3BhdGNoRnJhY3RQYXJ0KHBhcnNlSW50KHRbM10pLDEscik7aWYocz49cnx8czwwKXJldHVybntlcnJvcjp0aGlzLl9mb3JtYXR0ZXJFcnJvcnMuZnJhY3Rpb24scmVzOiExfTtsZXQgXz1vK3MvcjtyZXR1cm4gZSYmKF89LV8pLHt2YWx1ZTpfLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChfKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGFyc2VBc0RvdWJsZUZyYWN0aW9uYWwoZSl7bGV0IHQ9Yi5leGVjKGUpO2lmKHQpe2NvbnN0IHQ9cGFyc2VGbG9hdChlKTtyZXR1cm57dmFsdWU6dCxyZXM6ITAsc3VnZ2VzdDp0aGlzLmZvcm1hdEltcGwodCl9fQppZih0PW5ldyBSZWdFeHAoIl4oLT8pKFswLTldKylcXCcoWzAtOV0rKVxcJyhbMC05XSspJCIpLmV4ZWMoZSksdCl7Y29uc3QgZT0hIXRbMV0sbz1wYXJzZUludCh0WzJdKSxyPXZvaWQgMCE9PXRoaXMuX21pbk1vdmUyJiZudWxsIT09dGhpcy5fbWluTW92ZTI/dGhpcy5fbWluTW92ZTI6TmFOLHM9dGhpcy5fcHJpY2VTY2FsZS9yLF89dGhpcy5fbWluTW92ZTIsaT10aGlzLl9wYXRjaEZyYWN0UGFydChwYXJzZUludCh0WzNdKSwxLHMpLGE9dGhpcy5fcGF0Y2hGcmFjdFBhcnQocGFyc2VJbnQodFs0XSksMixfKTtpZihpPj1zfHxpPDApcmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5mcmFjdGlvbixyZXM6ITF9O2lmKG51bGwhPV8mJmE+PV98fGE8MClyZXR1cm57ZXJyb3I6dGhpcy5fZm9ybWF0dGVyRXJyb3JzLnNlY29uZEZyYWN0aW9uLHJlczohMX07bGV0IG49bnVsbCE9Xz9vK2kvcythLyhzKl8pOk5hTjtyZXR1cm4gZSYmKG49LW4pLHt2YWx1ZTpuLHJlczohMCxzdWdnZXN0OnRoaXMuZm9ybWF0SW1wbChuKX19cmV0dXJue2Vycm9yOnRoaXMuX2Zvcm1hdHRlckVycm9ycy5jdXN0b20scmVzOiExfX1fcGF0Y2hGcmFjdFBhcnQoZSx0LG8pe2NvbnN0IHI9ezA6MCw1OjF9LHM9ezA6MCwyOjEsNToyLDc6M30sXz17MDowLDE6MSwyOjIsMzozLDU6NCw2OjUsNzo2LDg6N307cmV0dXJuIDI9PT1vP3ZvaWQgMD09PXJbZV0/LTE6cltlXTo0PT09bz92b2lkIDA9PT1zW2VdPy0xOnNbZV06OD09PW8mJjI9PT10P3ZvaWQgMD09PV9bZV0/LTE6X1tlXTplfV9mb3JtYXRBc0ZyYWN0aW9uYWwoZSl7Y29uc3R7cHJpY2U6dCx0YWlsU2l6ZTpvLHByaWNlU2NhbGU6cixtaW5Nb3ZlOnMsbWluTW92ZTI6XyxmcmFjdGlvbmFsTGVuZ3RoOmF9PWUsbj1yL3M7bGV0IGw9TWF0aC5mbG9vcih0KSxjPW8/TWF0aC5mbG9vcih0Km4pLWwqbjpNYXRoLnJvdW5kKHQqbiktbCpuO2M9PT1uJiYoYz0wLGwrPTEpO2xldCBkPSIiO2lmKG8pe2xldCBlPSh0LWwtYy9uKSpuO2U9TWF0aC5yb3VuZChlKk1hdGgucG93KDEwLG8pKSxkPSgwLGkubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGUsbyksZD10aGlzLl9yZW1vdmVFbmRpbmdaZXJvcyhkLG8pfWlmKCFhKXRocm93IG5ldyBFcnJvcigiX2ZyYWN0aW9uYWxMZW5ndGggaXMgbm90IGNhbGN1bGF0ZWQiKTtsZXQgdT0iIjtpZihfKXtjb25zdCBlPWMlXztjPShjLWUpL187Y29uc3QgdD0oMCxpLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjLGEpLG89dGhpcy5fZ2V0RnJhY3RQYXJ0KGUsMixfKTt1PXQrcCtvfWVsc2UgYz10aGlzLl9nZXRGcmFjdFBhcnQoYywxLHIpLHU9KDAsaS5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoYypzLGEpO3JldHVybiBsLnRvU3RyaW5nKCkrcCt1K2R9X2dldEZyYWN0UGFydChlLHQsbyl7Y29uc3Qgcj1bMCw1XSxzPVswLDIsNSw3XSxfPVswLDEsMiwzLDUsNiw3LDhdO3JldHVybiAyPT09bz92b2lkIDA9PT1yW2VdPy0xOnJbZV06ND09PW8/dm9pZCAwPT09c1tlXT8tMTpzW2VdOjg9PT1vJiYyPT09dD92b2lkIDA9PT1fW2VdPy0xOl9bZV06ZX19Y2xhc3MgeXtjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLnR5cGU9InByaWNlIjtjb25zdHttaW5Nb3ZlMjp0LGZyYWN0aW9uYWw6byx2YXJpYWJsZU1pblRpY2s6XyxpZ25vcmVNaW5Nb3ZlOmksaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmF9PWUsbj0oMCxyLmlzTnVtYmVyKShlLnByaWNlU2NhbGUpJiYoMCxyLmlzSW50ZWdlcikoZS5wcmljZVNjYWxlKT9lLnByaWNlU2NhbGU6MTAwO2lmKG48MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGJhc2UiKTtjb25zdCBsPSFlLm1pbk1vdmV8fGk/MTplLm1pbk1vdmUsYz1zKG4sbCxvLHQpLGQ9ey4uLmUsbWluTW92ZTpsLHByaWNlU2NhbGU6bixmcmFjdGlvbmFsTGVuZ3RoOmN9O3RoaXMuX3ByaWNlU2NhbGU9bix0aGlzLl9taW5Nb3ZlPWwsdGhpcy5fbWluTW92ZTI9dCx0aGlzLl9mcmFjdGlvbmFsPW8sdGhpcy5fdmFyaWFibGVNaW5UaWNrPV8sdGhpcy5faWdub3JlTWluTW92ZT1pLHRoaXMuX2ZyYWN0aW9uYWxMZW5ndGg9Yyx0aGlzLl9pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ9YSx0aGlzLl9ub0V4cG9uZW50aWFsRm9ybT1lLm5vRXhwb25lbnRpYWxGb3JtLHRoaXMuX2ltcGxlbWVudGF0aW9uPW8/bmV3IHcoZCk6bmV3IGcoZCl9aXNGcmFjdGlvbmFsKCl7cmV0dXJuISF0aGlzLl9mcmFjdGlvbmFsfXN0YXRlKCl7cmV0dXJue21pbk1vdmU6dGhpcy5fbWluTW92ZSxtaW5Nb3ZlMjp0aGlzLl9taW5Nb3ZlMixwcmljZVNjYWxlOnRoaXMuX3ByaWNlU2NhbGUsdmFyaWFibGVNaW5UaWNrOnRoaXMuX3ZhcmlhYmxlTWluVGljayxpZ25vcmVNaW5Nb3ZlOnRoaXMuX2lnbm9yZU1pbk1vdmUsZnJhY3Rpb25hbDp0aGlzLl9mcmFjdGlvbmFsLG5vRXhwb25lbnRpYWxGb3JtOnRoaXMuX25vRXhwb25lbnRpYWxGb3JtfX1mb3JtYXRDaGFuZ2UoZSx0LG8pe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5mb3JtYXRJbXBsKGUtdCx7Li4ubyx2YXJpYWJsZU1pblRpY2tEYXRhUHJpY2U6TWF0aC5taW4oTWF0aC5hYnMoZSksTWF0aC5hYnModCkpfSl9Zm9ybWF0KGUsdCl7cmV0dXJuIHRoaXMuX2ltcGxlbWVudGF0aW9uLmZvcm1hdEltcGwoZSx0KX1wYXJzZShlLHQpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5wYXJzZShlLHQpfWhhc0ZvcmV4QWRkaXRpb25hbFByZWNpc2lvbigpe3JldHVybiB0aGlzLl9pbXBsZW1lbnRhdGlvbi5oYXNGb3JleEFkZGl0aW9uYWxQcmVjaXNpb24oKX1zdGF0aWMgc2VyaWFsaXplKGUpe3JldHVybiBlLnN0YXRlKCl9c3RhdGljIGRlc2VyaWFsaXplKGUpe3JldHVybiBuZXcgeShlKX19fSw3ODMyNTQoZSx0LG8pe28uZCh0LHt0OigpPT5yfSk7Y29uc3Qgcj1vLmkxOG5leHR9LDYyMDM1NChlLHQsbyl7dmFyIHI7by5kKHQse0xvZ29TaXplOigpPT5yfSksZnVuY3Rpb24oZSl7ZVtlLk1lZGl1bT0wXT0iTWVkaXVtIixlW2UuTGFyZ2U9MV09IkxhcmdlIn0ocnx8KHI9e30pKX0sNzQ5NjQ4KGUsdCxvKXtmdW5jdGlvbiByKGUsdD0hMSl7CiJsb2FkaW5nIiE9PWRvY3VtZW50LnJlYWR5U3RhdGU/dD9zZXRUaW1lb3V0KCgoKT0+ZSgpKSwxKTplKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKCgpPT5lKCkpKX1vLmQodCx7d2hlbkRvY3VtZW50UmVhZHk6KCk9PnJ9KTtuZXcgUHJvbWlzZSgoZT0+e3IoZSl9KSl9LDYzNTE4KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyIxNDg1MSI6e30sImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiOnt9LCJjb3VudGRvd24iOnt9LCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiI6e30sInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiOnt9LCJncmF5aW5nX2Rpc2FibGVkX3Rvb2xzX2VuYWJsZWQiOnt9LCJ1cGRhdGVfc3R1ZHlfZm9ybWF0dGVyX29uX3N5bWJvbF9yZXNvbHZlIjp7fSwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50Ijp7fSwicGhvbmVfdmVyaWZpY2F0aW9uIjp7fSwic2hvd190cmFkaW5nX25vdGlmaWNhdGlvbnNfaGlzdG9yeSI6e30sInNob3dfaW50ZXJ2YWxfZGlhbG9nX29uX2tleV9wcmVzcyI6e30sImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIjp7InN1YnNldHMiOlsic2hvd19pbnRlcnZhbF9kaWFsb2dfb25fa2V5X3ByZXNzIl19LCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iOnt9LCJoZWFkZXJfc3ltYm9sX3NlYXJjaCI6e30sInN5bWJvbF9zZWFyY2hfaG90X2tleSI6e30sImhlYWRlcl9yZXNvbHV0aW9ucyI6eyJzdWJzZXRzIjpbImhlYWRlcl9pbnRlcnZhbF9kaWFsb2dfYnV0dG9uIl19LCJoZWFkZXJfY2hhcnRfdHlwZSI6e30sImhlYWRlcl9zZXR0aW5ncyI6e30sImhlYWRlcl9pbmRpY2F0b3JzIjp7fSwiaGVhZGVyX2NvbXBhcmUiOnt9LCJoZWFkZXJfdW5kb19yZWRvIjp7fSwiaGVhZGVyX3F1aWNrX3NlYXJjaCI6e30sImhlYWRlcl9zY3JlZW5zaG90Ijp7fSwiaGVhZGVyX3NhdmVsb2FkIjp7fSwic3R1ZHlfb25fc3R1ZHkiOnt9LCJzY2FsZXNfZGF0ZV9mb3JtYXQiOnt9LCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiOnt9LCJoZWFkZXJfd2lkZ2V0Ijp7InN1YnNldHMiOlsiaGVhZGVyX3dpZGdldF9kb21fbm9kZSIsImhlYWRlcl9zeW1ib2xfc2VhcmNoIiwiaGVhZGVyX3Jlc29sdXRpb25zIiwiaGVhZGVyX2NoYXJ0X3R5cGUiLCJoZWFkZXJfc2V0dGluZ3MiLCJoZWFkZXJfaW5kaWNhdG9ycyIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX3VuZG9fcmVkbyIsImhlYWRlcl9xdWlja19zZWFyY2giLCJoZWFkZXJfZnVsbHNjcmVlbl9idXR0b24iLCJjb21wYXJlX3N5bWJvbCIsImhlYWRlcl9zY3JlZW5zaG90Il19LCJsZWdlbmRfd2lkZ2V0Ijp7fSwiY29tcGFyZV9zeW1ib2wiOnsic3Vic2V0cyI6WyJoZWFkZXJfY29tcGFyZSJdfSwicHJvcGVydHlfcGFnZXMiOnsic3Vic2V0cyI6WyJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiLCJjaGFydF9wcm9wZXJ0eV9wYWdlIl19LCJzaG93X2NoYXJ0X3Byb3BlcnR5X3BhZ2UiOnt9LCJjaGFydF9wcm9wZXJ0eV9wYWdlIjp7InN1YnNldHMiOlsiY2hhcnRfcHJvcGVydHlfcGFnZV9zY2FsZXMiLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3RyYWRpbmciLCJjaGFydF9wcm9wZXJ0eV9wYWdlX3JpZ2h0X21hcmdpbl9lZGl0b3IiXX0sImxlZnRfdG9vbGJhciI6e30sInJpZ2h0X3Rvb2xiYXIiOnt9LCJoaWRlX2xlZnRfdG9vbGJhcl9ieV9kZWZhdWx0Ijp7fSwiY29udHJvbF9iYXIiOnt9LCJ3aWRnZXRfbG9nbyI6e30sInRpbWVmcmFtZXNfdG9vbGJhciI6e30sImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiOnsic3Vic2V0cyI6WyJzaG93X2hpZGVfYnV0dG9uX2luX2xlZ2VuZCIsImZvcm1hdF9idXR0b25faW5fbGVnZW5kIiwic3R1ZHlfYnV0dG9uc19pbl9sZWdlbmQiLCJkZWxldGVfYnV0dG9uX2luX2xlZ2VuZCIsImxlZ2VuZF9pbnBsYWNlX2VkaXQiXX0sInNob3dfaGlkZV9idXR0b25faW5fbGVnZW5kIjp7fSwib2JqZWN0X3RyZWVfbGVnZW5kX21vZGUiOnt9LCJmb3JtYXRfYnV0dG9uX2luX2xlZ2VuZCI6e30sInN0dWR5X2J1dHRvbnNfaW5fbGVnZW5kIjp7fSwiZGVsZXRlX2J1dHRvbl9pbl9sZWdlbmQiOnt9LCJsZWdlbmRfaW5wbGFjZV9lZGl0Ijp7fSwiYnJva2VyX2J1dHRvbiI6e30sImJ1eV9zZWxsX2J1dHRvbnMiOnsic3Vic2V0cyI6WyJicm9rZXJfYnV0dG9uIl19LCJzaG93X2J1eV9zZWxsX2J1dHRvbnNfb25fdW5zdXBwb3J0ZWRfcmVzb2x1dGlvbiI6e30sInBhbmVfY29udGV4dF9tZW51Ijp7fSwic2NhbGVzX2NvbnRleHRfbWVudSI6e30sImxlZ2VuZF9jb250ZXh0X21lbnUiOnt9LCJjb250ZXh0X21lbnVzIjp7InN1YnNldHMiOlsicGFuZV9jb250ZXh0X21lbnUiLCJzY2FsZXNfY29udGV4dF9tZW51IiwibGVnZW5kX2NvbnRleHRfbWVudSIsIm9iamVjdHNfdHJlZV9jb250ZXh0X21lbnUiXX0sIml0ZW1zX2Zhdm9yaXRpbmciOnt9LCJzYXZlX2NoYXJ0X3Byb3BlcnRpZXNfdG9fbG9jYWxfc3RvcmFnZSI6e30sInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIjp7InN1YnNldHMiOlsiaXRlbXNfZmF2b3JpdGluZyIsInNhdmVfY2hhcnRfcHJvcGVydGllc190b19sb2NhbF9zdG9yYWdlIl19LCJoYW5kbGVfc2NhbGUiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY2FsZSIsInBpbmNoX3NjYWxlIiwiYXhpc19wcmVzc2VkX21vdXNlX21vdmVfc2NhbGUiXX0sImhhbmRsZV9zY3JvbGwiOnsic3Vic2V0cyI6WyJtb3VzZV93aGVlbF9zY3JvbGwiLCJwcmVzc2VkX21vdXNlX21vdmVfc2Nyb2xsIiwiaG9yel90b3VjaF9kcmFnX3Njcm9sbCIsInZlcnRfdG91Y2hfZHJhZ19zY3JvbGwiXX0sInBsYWluX3N0dWR5bWFya2V0Ijp7fSwiZGlzYWJsZV9yZXNvbHV0aW9uX3JlYnVpbGQiOnt9LCJib3JkZXJfYXJvdW5kX3RoZV9jaGFydCI6e30sImNoYXJ0aW5nX2xpYnJhcnlfZGVidWdfbW9kZSI6e30sInNhdmVsb2FkX3JlcXVpcmVzX2F1dGhlbnRpY2F0aW9uIjp7fSwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIjp7fSwidm9sdW1lX2ZvcmNlX292ZXJsYXkiOnt9LCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0Ijp7fSwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdF9vbmNlIjp7fSwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIjp7fSwibGVhbl9jaGFydF9sb2FkIjp7fSwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0Ijp7fSwic3Rhcl9zb21lX2ludGVydmFsc19ieV9kZWZhdWx0Ijp7fSwibW92ZV9sb2dvX3RvX21haW5fcGFuZSI6e30sInNob3dfYW5pbWF0ZWRfbG9nbyI6e30sImxpbmtfdG9fdHJhZGluZ3ZpZXciOnt9LCJsb2dvX3dpdGhvdXRfbGluayI6e30sImxvZ29fYWx3YXlzX21heGltaXplZCI6e30sInJpZ2h0X2Jhcl9zdGF5c19vbl9zY3JvbGwiOnt9LCJjaGFydF9jb250ZW50X292ZXJyaWRlc19ieV9kZWZhdWx0cyI6e30sInNuYXBzaG90X3RyYWRpbmdfZHJhd2luZ3MiOnt9LCJhbGxvd19zdXBwb3J0ZWRfcmVzb2x1dGlvbnNfc2V0X29ubHkiOnt9LCJ3aWRnZXRiYXJfdGFicyI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sInNob3dfb2JqZWN0X3RyZWUiOnsic3Vic2V0cyI6WyJyaWdodF90b29sYmFyIl19LCJkb21fd2lkZ2V0Ijp7InN1YnNldHMiOlsicmlnaHRfdG9vbGJhciJdfSwiY29sbGFwc2libGVfaGVhZGVyIjp7fSwic3R1ZHlfdGVtcGxhdGVzIjp7fSwia2VlcF9zZWxlY3RlZF9ncm91cF9vbl90b29sX2NyZWF0aW9uIjp7fSwic2lkZV90b29sYmFyX2luX2Z1bGxzY3JlZW5fbW9kZSI6e30sImhlYWRlcl9pbl9mdWxsc2NyZWVuX21vZGUiOnt9LCJyZW1vdmVfbGlicmFyeV9jb250YWluZXJfYm9yZGVyIjp7fSwid2hvdHJhZGVzX2F1dGhfb25seSI6e30sInN1cHBvcnRfbXVsdGljaGFydHMiOnt9LCJkaXNwbGF5X21hcmtldF9zdGF0dXMiOnt9LCJkaXNwbGF5X2RhdGFfbW9kZSI6e30sImRhdGFzb3VyY2VfY29weXBhc3RlIjp7fSwiZHJhd2luZ190ZW1wbGF0ZXMiOnsic3Vic2V0cyI6WyJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIl19LCJleHBhbmRfc3ltYm9sc2VhcmNoX2l0ZW1zIjp7fSwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyI6e30sInN5bWJvbF9zZWFyY2hfZmxhZ3MiOnt9LCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIjp7fSwiYnVncmVwb3J0X2J1dHRvbiI6eyJzdWJzZXRzIjpbInJpZ2h0X3Rvb2xiYXIiXX0sImhlYWRlcl90cmFkZV9idXR0b24iOnt9LCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIjp7fSwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iOnt9LCJ0ZXh0X25vdGVzIjp7fSwic2hvd19zb3VyY2VfY29kZSI6e30sInN5bWJvbF9pbmZvIjp7fSwibm9fYmFyc19zdGF0dXMiOnt9LCJjbGVhcl9iYXJzX29uX3Nlcmllc19lcnJvciI6e30sImhpZGVfbG9hZGluZ19zY3JlZW5fb25fc2VyaWVzX2Vycm9yIjp7fSwic2Vjb25kc19yZXNvbHV0aW9uIjp7fSwiZG9udF9zaG93X2Jvb2xlYW5fc3R1ZHlfYXJndW1lbnRzIjp7fSwiaGlkZV9sYXN0X25hX3N0dWR5X291dHB1dCI6e30sInByaWNlX3NjYWxlX2Fsd2F5c19sYXN0X2Jhcl92YWx1ZSI6e30sInN0dWR5X2RpYWxvZ19mdW5kYW1lbnRhbHNfZWNvbm9teV9hZGRvbnMiOnt9LCJ1cHBlcmNhc2VfaW5zdHJ1bWVudF9uYW1lcyI6e30sInRyYWRpbmdfbm90aWZpY2F0aW9ucyI6e30sImNoYXJ0X2Nyb3NzaGFpcl9tZW51Ijp7fSwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIjp7fSwiaGlkZV9zZXJpZXNfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X292ZXJsYXlfbGVnZW5kX2l0ZW0iOnt9LCJoaWRlX3N0dWR5X2NvbXBhcmVfbGVnZW5kX2l0ZW0iOnt9LCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIjp7fSwidXNlX292ZXJyaWRlc19mb3Jfb3ZlcmxheSI6e30sInRpbWV6b25lX21lbnUiOnt9LCJtYWluX3Nlcmllc19zY2FsZV9tZW51Ijp7fSwic2hvd19sb2dpbl9kaWFsb2ciOnt9LCJyZW1vdmVfaW1nX2Zyb21fcnNzIjp7fSwiYmFyc19tYXJrcyI6e30sImNoYXJ0X3Njcm9sbCI6e30sImNoYXJ0X3pvb20iOnt9LCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiOnt9LCJsb3dfZGVuc2l0eV9iYXJzIjp7fSwiZW5kX29mX3BlcmlvZF90aW1lc2NhbGVfbWFya3MiOnt9LCJvcGVuX2FjY291bnRfbWFuYWdlciI6e30sInNob3dfb3JkZXJfcGFuZWxfb25fc3RhcnQiOnt9LCJvcmRlcl9wYW5lbCI6eyJzdWJzZXRzIjpbIm9yZGVyX3BhbmVsX2Nsb3NlX2J1dHRvbiIsIm9yZGVyX3BhbmVsX3VuZG9jayIsInJpZ2h0X3Rvb2xiYXIiLCJvcmRlcl9pbmZvIl19LCJtdWx0aXBsZV93YXRjaGxpc3RzIjp7fSwid2F0Y2hsaXN0X2ltcG9ydF9leHBvcnQiOnt9LCJzdHVkeV9vdmVybGF5X2NvbXBhcmVfbGVnZW5kX29wdGlvbiI6e30sIm1vYmlsZV9hcHBfYWN0aW9uX29wZW5fZGV0YWlsc193ZWJ2aWV3Ijp7fSwiY3VzdG9tX3Jlc29sdXRpb25zIjp7fSwicmVmZXJyYWxfcHJvZ3JhbV9mb3Jfd2lkZ2V0X293bmVycyI6e30sIm1vYmlsZV90cmFkaW5nIjp7fSwicmVhbF9icm9rZXJzIjp7fSwicXVpY2tfdHJhZGluZ19wYW5lbCI6e30sIm5hdGl2ZV9tb2JpbGVfYnJva2Vyc19saXN0Ijp7fSwibm9fbWluX2NoYXJ0X3dpZHRoIjp7fSwibG9ja192aXNpYmxlX3RpbWVfcmFuZ2Vfb25fcmVzaXplIjp7fSwicHJpY2VzY2FsZV9jdXJyZW5jeSI6e30sImNyb3BwZWRfdGlja19tYXJrcyI6e30sInRyYWRpbmdfYWNjb3VudF9tYW5hZ2VyIjp7fSwiZGlzYWJsZV9zYW1laW50ZXJ2YWxfYWxpZ25pbmciOnt9LCJkaXNwbGF5X2xlZ2VuZF9vbl9hbGxfY2hhcnRzIjp7fSwiY2hhcnRfc3R5bGVfaGlsbyI6e30sImNoYXJ0X3N0eWxlX2hpbG9fbGFzdF9wcmljZSI6e30sInByaWNlc2NhbGVfdW5pdCI6e30sInNob3dfc3ByZWFkX29wZXJhdG9ycyI6e30sImhpZGVfZXhwb25lbnRpYXRpb25fc3ByZWFkX29wZXJhdG9yIjp7fSwiaGlkZV9yZWNpcHJvY2FsX3NwcmVhZF9vcGVyYXRvciI6e30sImNvbXBhcmVfc3ltYm9sX3NlYXJjaF9zcHJlYWRfb3BlcmF0b3JzIjp7fSwic3R1ZGllc19zeW1ib2xfc2VhcmNoX3NwcmVhZF9vcGVyYXRvcnMiOnt9LCJoaWRlX3Jlc29sdXRpb25faW5fbGVnZW5kIjp7fSwiaGlkZV91bnJlc29sdmVkX3N5bWJvbHNfaW5fbGVnZW5kIjp7fSwiZml4X2xlZnRfZWRnZSI6e30sInN0dWR5X3N5bWJvbF90aWNrZXJfZGVzY3JpcHRpb24iOnt9LCJ0d29fY2hhcmFjdGVyX2Jhcl9tYXJrc19sYWJlbHMiOnt9LCJwaW5fYmFyX21hcmtfdG9vbHRpcHNfb25fY2xpY2siOnt9LCJ0aWNrX3Jlc29sdXRpb24iOnt9LCJzZWNvbmRhcnlfc2VyaWVzX2V4dGVuZF90aW1lX3NjYWxlIjp7fSwiaGlkZV92b2x1bWVfbWEiOnt9LCJzbWFsbF9ub19kaXNwbGF5Ijp7fSwiY2hhcnRpbmdfbGlicmFyeV9zaW5nbGVfc3ltYm9sX3JlcXVlc3QiOnt9LCJ1c2VfdGlja2VyX29uX3N5bWJvbF9pbmZvX3VwZGF0ZSI6e30sInNob3dfem9vbV9hbmRfbW92ZV9idXR0b25zX29uX3RvdWNoIjp7fSwiaGlkZV9tYWluX3Nlcmllc19zeW1ib2xfZnJvbV9pbmRpY2F0b3JfbGVnZW5kIjp7fSwiY2hhcnRfaGlkZV9jbG9zZV9wb3NpdGlvbl9idXR0b24iOnt9LCJjaGFydF9oaWRlX2Nsb3NlX29yZGVyX2J1dHRvbiI6e30sImhpZGVfcHJpY2Vfc2NhbGVfZ2xvYmFsX2xhc3RfYmFyX3ZhbHVlIjp7InN1YnNldHMiOlsidXNlX2xhc3RfdmlzaWJsZV9iYXJfdmFsdWVfaW5fbGVnZW5kIl19LCJrZWVwX29iamVjdF90cmVlX3dpZGdldF9pbl9yaWdodF90b29sYmFyIjp7fSwic2hvd19hdmVyYWdlX2Nsb3NlX3ByaWNlX2xpbmVfYW5kX2xhYmVsIjp7fSwiaGlkZV9pbWFnZV9pbnZhbGlkX3N5bWJvbCI6e30sImhpZGVfb2JqZWN0X3RyZWVfYW5kX3ByaWNlX3NjYWxlX2V4Y2hhbmdlX2xhYmVsIjp7fSwiY29uZmlybV9vdmVyd3JpdGVfaWZfY2hhcnRfbGF5b3V0X3dpdGhfbmFtZV9leGlzdHMiOnt9LCJkZXRlcm1pbmVfZmlyc3RfZGF0YV9yZXF1ZXN0X3NpemVfdXNpbmdfdmlzaWJsZV9yYW5nZSI6e30sInVzZV9uYV9zdHJpbmdfZm9yX25vdF9hdmFpbGFibGVfdmFsdWVzIjp7fSwic2hvd19sYXN0X3ByaWNlX2FuZF9jaGFuZ2Vfb25seV9pbl9zZXJpZXNfbGVnZW5kIjp7fSwibGVnZW5kX2xhc3RfZGF5X2NoYW5nZSI6e30sImlmcmFtZV9sb2FkaW5nX2NvbXBhdGliaWxpdHlfbW9kZSI6e30sInNob3dfcGVyY2VudF9vcHRpb25fZm9yX3JpZ2h0X21hcmdpbiI6e30sIndhdGNobGlzdF9jb250ZXh0X21lbnUiOnt9LCJhY2Nlc3NpYmxlX2tleWJvYXJkX3Nob3J0Y3V0cyI6e30sImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyI6e30sImFwcF9waG9uZSI6e30sImFwcF90YWJsZXQiOnt9LCJtb2JpbGVfYXBwX2hpZGVfcmVwbGF5X3Rvb2xiYXIiOnt9LCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fdGFwX2luX2xlZ2VuZCI6e30sInNob3dfbmF0aXZlX3N5bWJvbF9zZWFyY2hfb25fbm9uX3RyYWRhYmxlIjp7fSwic2hvd19uZXdfbWVudV9pdGVtc19pbl9jaGFydF9tZW51cyI6e30sInByZV9wb3N0X21hcmtldF9wcmljZV9saW5lIjp7fSwicHJlX3Bvc3RfbWFya2V0X3Nlc3Npb25zIjp7fSwic3R1ZGllc19leHRlbmRfdGltZV9zY2FsZSI6e30sImluYWN0aXZpdHlfZ2FwcyI6e30sImFsaWduX2R3bV9iYXJzX3RvX21haW5fc2VyaWVzIjp7fSwicmVxdWVzdF9vbmx5X3Zpc2libGVfcmFuZ2Vfb25fcmVzZXQiOnt9LCJleHRlbmRlZF9leHRyYXBvbGF0aW9uX2xpbWl0Ijp7fSwidHZfcHJvZHVjdGlvbiI6eyJzdWJzZXRzIjpbIndhdGNobGlzdF9zZWN0aW9ucyIsImFkdmFuY2VkX2Vtb2ppX2luX3RpdGxlcyIsImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsImhlYWRlcl9mdWxsc2NyZWVuX2J1dHRvbiIsImhlYWRlcl93aWRnZXQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwiYnV5X3NlbGxfYnV0dG9ucyIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwidXNlX2xvY2Fsc3RvcmFnZV9mb3Jfc2V0dGluZ3MiLCJzYXZlbG9hZF9yZXF1aXJlc19hdXRoZW50aWNhdGlvbiIsInZvbHVtZV9mb3JjZV9vdmVybGF5Iiwic2F2ZWRfY2hhcnRzX2NvdW50X3Jlc3RyaWN0aW9uIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHRfb25jZSIsImNoYXJ0c19hdXRvX3NhdmUiLCJzYXZlX29sZF9jaGFydF9iZWZvcmVfc2F2ZV9hcyIsImNoYXJ0X2NvbnRlbnRfb3ZlcnJpZGVzX2J5X2RlZmF1bHRzIiwiYWxlcnRzIiwiaGVhZGVyX3NhdmVsb2FkIiwiaGVhZGVyX2xheW91dHRvZ2dsZSIsImRhdGFzb3VyY2VfY29weXBhc3RlIiwic2hvd19zYXZlZF93YXRjaGxpc3RzIiwid2F0Y2hsaXN0c19mcm9tX3RvX2ZpbGUiLCJhZGRfdG9fd2F0Y2hsaXN0IiwicHJvcGVydHlfcGFnZXMiLCJzdXBwb3J0X211bHRpY2hhcnRzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZGlzcGxheV9kYXRhX21vZGUiLCJzaG93X2NoYXJ0X3dhcm5fbWVzc2FnZSIsInN1cHBvcnRfbWFuYWdlX2RyYXdpbmdzIiwid2lkZ2V0YmFyX3RhYnMiLCJzdHVkeV90ZW1wbGF0ZXMiLCJjb2xsYXBzaWJsZV9oZWFkZXIiLCJkcmF3aW5nX3RlbXBsYXRlcyIsImhlYWRlcl90cmFkZV9idXR0b24iLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIiwiZm9vdGVyX3B1Ymxpc2hfaWRlYV9idXR0b24iLCJ0ZXh0X25vdGVzIiwic2hvd19zb3VyY2VfY29kZSIsInN5bWJvbF9pbmZvIiwibGluZXRvb2xwcm9wZXJ0aWVzd2lkZ2V0X3RlbXBsYXRlX2J1dHRvbiIsInRyYWRpbmdfbm90aWZpY2F0aW9ucyIsInN5bWJvbF9zZWFyY2hfdGhyZWVfY29sdW1uc19leGNoYW5nZXMiLCJzeW1ib2xfc2VhcmNoX2ZsYWdzIiwic3ltYm9sX3NlYXJjaF9saW1pdGVkX2V4Y2hhbmdlcyIsInBob25lX3ZlcmlmaWNhdGlvbiIsImN1c3RvbV9yZXNvbHV0aW9ucyIsImNvbXBhcmVfc3ltYm9sIiwic3R1ZHlfb25fc3R1ZHkiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJzaG93X2xvZ2luX2RpYWxvZyIsImRvbV93aWRnZXQiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNob3dfdHJhZGluZ19ub3RpZmljYXRpb25zX2hpc3RvcnkiLCJzb3VyY2Vfc2VsZWN0aW9uX21hcmtlcnMiLCJzdHVkeV9kaWFsb2dfZnVuZGFtZW50YWxzX2Vjb25vbXlfYWRkb25zIiwibXVsdGlwbGVfd2F0Y2hsaXN0cyIsIm1hcmtlZF9zeW1ib2xzIiwib3JkZXJfcGFuZWwiLCJwcmljZXNjYWxlX2N1cnJlbmN5Iiwic2hvd19hbmltYXRlZF9sb2dvIiwicHJpY2VzY2FsZV9jdXJyZW5jeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsInNjYWxlc19kYXRlX2Zvcm1hdCIsInNjYWxlc190aW1lX2hvdXJzX2Zvcm1hdCIsInBvcHVwX2hpbnRzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX29wdGlvbl9jaGFpbl9zZWxlY3RvciIsInNob3dfbmV3X21lbnVfaXRlbXNfaW5fY2hhcnRfbWVudXMiLCJrZWVwX3NlbGVjdGVkX2dyb3VwX29uX3Rvb2xfY3JlYXRpb24iXX0sIndpZGdldCI6eyJzdWJzZXRzIjpbImF1dG9fZW5hYmxlX3N5bWJvbF9sYWJlbHMiLCJzeW1ib2xfc2VhcmNoX3BhcnNlcl9taXhpbiIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwibGVmdF90b29sYmFyIiwicmlnaHRfdG9vbGJhciIsImNvbnRyb2xfYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwiY29udGV4dF9tZW51cyIsImVkaXRfYnV0dG9uc19pbl9sZWdlbmQiLCJvYmplY3RfdHJlZV9sZWdlbmRfbW9kZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwic2F2ZWxvYWRfcmVxdWlyZXNfYXV0aGVudGljYXRpb24iLCJ2b2x1bWVfZm9yY2Vfb3ZlcmxheSIsImNyZWF0ZV92b2x1bWVfaW5kaWNhdG9yX2J5X2RlZmF1bHQiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJoZWFkZXJfd2lkZ2V0X2RvbV9ub2RlIiwiaGVhZGVyX3N5bWJvbF9zZWFyY2giLCJoZWFkZXJfcmVzb2x1dGlvbnMiLCJoZWFkZXJfY2hhcnRfdHlwZSIsImhlYWRlcl9jb21wYXJlIiwiaGVhZGVyX2luZGljYXRvcnMiLCJzdGFyX3NvbWVfaW50ZXJ2YWxzX2J5X2RlZmF1bHQiLCJkaXNwbGF5X21hcmtldF9zdGF0dXMiLCJkaXNwbGF5X2RhdGFfbW9kZSIsInNob3dfY2hhcnRfd2Fybl9tZXNzYWdlIiwic3ltYm9sX2luZm8iLCJsaW5ldG9vbHByb3BlcnRpZXN3aWRnZXRfdGVtcGxhdGVfYnV0dG9uIiwic3ltYm9sX3NlYXJjaF90aHJlZV9jb2x1bW5zX2V4Y2hhbmdlcyIsInN5bWJvbF9zZWFyY2hfZmxhZ3MiLCJzeW1ib2xfc2VhcmNoX2xpbWl0ZWRfZXhjaGFuZ2VzIiwid2lkZ2V0YmFyX3RhYnMiLCJjb21wYXJlX3N5bWJvbCIsInNob3dfbG9naW5fZGlhbG9nIiwicGxhaW5fc3R1ZHltYXJrZXQiLCJqYXBhbmVzZV9jaGFydF9zdHlsZXMiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwic2hvd19yaWdodF93aWRnZXRzX3BhbmVsX2J5X2RlZmF1bHQiLCJjaGFydF9zdHlsZV9oaWxvX2xhc3RfcHJpY2UiLCJzeW1ib2xfc2VhcmNoX2hpZ2hsaWdodF9hY3RpdmVfc3ltYm9sIl19LCJib3Zlc3BhX3dpZGdldCI6eyJzdWJzZXRzIjpbIndpZGdldCIsImhlYWRlcl9zZXR0aW5ncyIsImxpbmV0b29scHJvcGVydGllc3dpZGdldF90ZW1wbGF0ZV9idXR0b24iLCJjb21wYXJlX3JlY2VudF9zeW1ib2xzX2VuYWJsZWQiXX0sImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSI6eyJzdWJzZXRzIjpbIjE0ODUxIiwiYWxsb3dfc3VwcG9ydGVkX3Jlc29sdXRpb25zX3NldF9vbmx5IiwiYXV0b19lbmFibGVfc3ltYm9sX2xhYmVscyIsImJvcmRlcl9hcm91bmRfdGhlX2NoYXJ0IiwiY29sbGFwc2libGVfaGVhZGVyIiwiY29uc3RyYWludF9kaWFsb2dzX21vdmVtZW50IiwiY29udGV4dF9tZW51cyIsImNvbnRyb2xfYmFyIiwiY3JlYXRlX3ZvbHVtZV9pbmRpY2F0b3JfYnlfZGVmYXVsdCIsImN1c3RvbV9pdGVtc19pbl9jb250ZXh0X21lbnUiLCJkYXRhc291cmNlX2NvcHlwYXN0ZSIsInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIiwiZGlzcGxheV9tYXJrZXRfc3RhdHVzIiwiZWRpdF9idXR0b25zX2luX2xlZ2VuZCIsIm9iamVjdF90cmVlX2xlZ2VuZF9tb2RlIiwiZ3JheWluZ19kaXNhYmxlZF90b29sc19lbmFibGVkIiwiaGVhZGVyX3dpZGdldCIsImxlZ2VuZF93aWRnZXQiLCJoZWFkZXJfc2F2ZWxvYWQiLCJkb250X3Nob3dfYm9vbGVhbl9zdHVkeV9hcmd1bWVudHMiLCJsZWFuX2NoYXJ0X2xvYWQiLCJsZWZ0X3Rvb2xiYXIiLCJyaWdodF90b29sYmFyIiwibGlua190b190cmFkaW5ndmlldyIsInBheV9hdHRlbnRpb25fdG9fdGlja2VyX25vdF9zeW1ib2wiLCJwbGFpbl9zdHVkeW1hcmtldCIsInJlZnJlc2hfc2F2ZWRfY2hhcnRzX2xpc3Rfb25fZGlhbG9nX3Nob3ciLCJyaWdodF9iYXJfc3RheXNfb25fc2Nyb2xsIiwic2F2ZWxvYWRfc3RvcmFnZV9jdXN0b21pemF0aW9uIiwic3RvcF9zdHVkeV9vbl9yZXN0YXJ0IiwidGltZWZyYW1lc190b29sYmFyIiwic3ltYm9sX3NlYXJjaF9ob3Rfa2V5IiwidXBkYXRlX3N0dWR5X2Zvcm1hdHRlcl9vbl9zeW1ib2xfcmVzb2x2ZSIsInVwZGF0ZV90aW1lZnJhbWVzX3NldF9vbl9zeW1ib2xfcmVzb2x2ZSIsInVzZV9sb2NhbHN0b3JhZ2VfZm9yX3NldHRpbmdzIiwidm9sdW1lX2ZvcmNlX292ZXJsYXkiLCJ3aWRnZXRfbG9nbyIsImNvdW50ZG93biIsInVzZV9vdmVycmlkZXNfZm9yX292ZXJsYXkiLCJ0cmFkaW5nX25vdGlmaWNhdGlvbnMiLCJjb21wYXJlX3N5bWJvbCIsInN5bWJvbF9pbmZvIiwidGltZXpvbmVfbWVudSIsIm1haW5fc2VyaWVzX3NjYWxlX21lbnUiLCJjcmVhdGVfdm9sdW1lX2luZGljYXRvcl9ieV9kZWZhdWx0X29uY2UiLCJiYXJzX21hcmtzIiwiY2hhcnRfc2Nyb2xsIiwiY2hhcnRfem9vbSIsInNvdXJjZV9zZWxlY3Rpb25fbWFya2VycyIsInByb3BlcnR5X3BhZ2VzIiwiZ29fdG9fZGF0ZSIsImFkYXB0aXZlX2xvZ28iLCJzaG93X2FuaW1hdGVkX2xvZ28iLCJoYW5kbGVfc2NhbGUiLCJoYW5kbGVfc2Nyb2xsIiwic2hpZnRfdmlzaWJsZV9yYW5nZV9vbl9uZXdfYmFyIiwiY2hhcnRfY29udGVudF9vdmVycmlkZXNfYnlfZGVmYXVsdHMiLCJjcm9wcGVkX3RpY2tfbWFya3MiLCJzY2FsZXNfZGF0ZV9mb3JtYXQiLCJzY2FsZXNfdGltZV9ob3Vyc19mb3JtYXQiLCJwb3B1cF9oaW50cyIsInNhdmVfc2hvcnRjdXQiLCJzaG93X3JpZ2h0X3dpZGdldHNfcGFuZWxfYnlfZGVmYXVsdCIsInNob3dfb2JqZWN0X3RyZWUiLCJpbnNlcnRfaW5kaWNhdG9yX2RpYWxvZ19zaG9ydGN1dCIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsImhpZGVfbWFpbl9zZXJpZXNfc3ltYm9sX2Zyb21faW5kaWNhdG9yX2xlZ2VuZCIsImNoYXJ0X3N0eWxlX2hpbG8iLCJyZXF1ZXN0X29ubHlfdmlzaWJsZV9yYW5nZV9vbl9yZXNldCIsImNsZWFyX3ByaWNlX3NjYWxlX29uX2Vycm9yX29yX2VtcHR5X2JhcnMiLCJzaG93X3N5bWJvbF9sb2dvX2luX2xlZ2VuZCIsInNob3dfc3ltYm9sX2xvZ29fZm9yX2NvbXBhcmVfc3R1ZGllcyIsImxpYnJhcnlfY3VzdG9tX2NvbG9yX3RoZW1lcyIsImxvbmdfcHJlc3NfZmxvYXRpbmdfdG9vbHRpcCIsInN5bWJvbF9zZWFyY2hfaGlnaGxpZ2h0X2FjdGl2ZV9zeW1ib2wiXX0sImNoYXJ0aW5nX2xpYnJhcnkiOnsic3Vic2V0cyI6WyJjaGFydGluZ19saWJyYXJ5X2Jhc2UiXX0sInN0YXRpY19jaGFydHNfc2VydmljZSI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnkiLCJkaXNhYmxlX3Jlc29sdXRpb25fcmVidWlsZCJdfSwidHJhZGluZ190ZXJtaW5hbCI6eyJzdWJzZXRzIjpbImNoYXJ0aW5nX2xpYnJhcnlfYmFzZSIsInN1cHBvcnRfbXVsdGljaGFydHMiLCJoZWFkZXJfbGF5b3V0dG9nZ2xlIiwiamFwYW5lc2VfY2hhcnRfc3R5bGVzIiwiY2hhcnRfcHJvcGVydHlfcGFnZV90cmFkaW5nIiwiYWRkX3RvX3dhdGNobGlzdCIsIm9wZW5fYWNjb3VudF9tYW5hZ2VyIiwic2hvd19kb21fZmlyc3RfdGltZSIsIm9yZGVyX3BhbmVsIiwiYnV5X3NlbGxfYnV0dG9ucyIsIm11bHRpcGxlX3dhdGNobGlzdHMiLCJzaG93X3RyYWRpbmdfbm90aWZpY2F0aW9uc19oaXN0b3J5IiwiYWx3YXlzX3Bhc3NfY2FsbGVkX29yZGVyX3RvX21vZGlmeSIsInNob3dfb2JqZWN0X3RyZWUiLCJ3YXRjaGxpc3RfaW1wb3J0X2V4cG9ydCIsImRyYXdpbmdfdGVtcGxhdGVzIiwidHJhZGluZ19hY2NvdW50X21hbmFnZXIiLCJjaGFydF9jcm9zc2hhaXJfbWVudSIsImNvbXBhcmVfcmVjZW50X3N5bWJvbHNfZW5hYmxlZCIsIndhdGNobGlzdF9jb250ZXh0X21lbnUiLCJzaG93X3N5bWJvbF9sb2dvX2luX2FjY291bnRfbWFuYWdlciIsInNob3dfc3ltYm9sX2xvZ29faW5fY2xvc2VfcG9zaXRpb25fZGlhbG9nIiwic2hvd19zeW1ib2xfbG9nb19pbl9jYW5jZWxfb3JkZXJfZGlhbG9nIiwid2F0Y2hsaXN0X3NlY3Rpb25zIiwicHJlZmVyX3F1b3RlX3Nob3J0X25hbWUiLCJlbmFibGVfZG9tX2RhdGFfZm9yX3VudHJhZGFibGVfc3ltYm9scyIsInByZWZlcl9zeW1ib2xfbmFtZV9vdmVyX2Z1bGxuYW1lIiwid2F0Y2hsaXN0X2Nyb3NzX3RhYl9zeW5jIl19fScpCn0sNzQ2OTQ5KGUpewplLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJhZHgiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZHgiLCJhZHhEIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWR4RCIsImFnZW5jaWFsYm1jb21iciI6IndpZGdldF91c2VyX3Rva2VuLWFnZW5jaWFsYm1jb21iciIsImFsamF6aXJhY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxEIiwiYWxqYXppcmFjYXBpdGFsUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbGphemlyYWNhcGl0YWxSVCIsImFscmFqaGljYXBpdGFsY29tRCI6IndpZGdldF91c2VyX3Rva2VuLWFscmFqaGljYXBpdGFsY29tRCIsImFscmFqaGljYXBpdGFsY29tUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbHJhamhpY2FwaXRhbGNvbVJUIiwiYW1iaXRvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYW1iaXRvIiwiYXJlbmF4dHJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tYXJlbmF4dHJvIiwiYXJ0ZWNoZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLUFydGVjaGVEIiwiYXRsY2FwaXRhbCI6IndpZGdldF91c2VyX3Rva2VuLWF0bGNhcGl0YWwiLCJiYW5raXJvc3J1Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYmFua2lyb3NydSIsImJidmFjaCI6IndpZGdldF91c2VyX3Rva2VuLWJidmFjaCIsImJlZWtzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1iZWVrc2dyb3VwIiwiYmVsdWdhZ3JvdXBydSI6IndpZGdldF91c2VyX3Rva2VuLWJlbHVnYWdyb3VwcnUiLCJiaXZhY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tYml2YWNvbSIsImJsdWVmaWVsZCI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVmaWVsZCIsImJsdWVsaW5lZnV0dXJlcyI6IndpZGdldF91c2VyX3Rva2VuLWJsdWVsaW5lZnV0dXJlcyIsImJvdmVzcGEiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibWZib3Zlc3BhY29tYnIiLCJidmJybyI6IndpZGdldF91c2VyX3Rva2VuLWJ2YnJvIiwiYnl0ZXRyYXZlbCI6IndpZGdldF91c2VyX3Rva2VuLWJ5dGV0cmF2ZWwiLCJjYm9lY2FuYWRhIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2JvZWNhbmFkYSIsImNoYW1waW9ubmF0Ym91cnNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2hhbXBpb25uYXRib3Vyc2UiLCJjaW5jb2RpYXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jaW5jb2RpYXMiLCJjZW9jYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1jZW9jYUQiLCJjZW9jYVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2VvY2FSVCIsImNtY21hcmtldHMiOiJ3aWRnZXRfdXNlcl90b2tlbi1jbWNtYXJrZXRzIiwiY29wZWVzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY29wZWVzIiwiY3NlbGsiOiJ3aWRnZXRfdXNlcl90b2tlbi1jc2VsayIsImRhaWx5ZngiOiJ3aWRnZXRfdXNlcl90b2tlbi1kYWlseWZ4IiwiZGVlcHNlYXJjaCI6IndpZGdldF91c2VyX3Rva2VuLWRlZXBzZWFyY2giLCJkZXJheWFoY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGVyYXlhaGNvbSIsImRmbWFlRCI6IndpZGdldF91c2VyX3Rva2VuLWRmbWFlRCIsImRmbWFlUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kZm1hZVJUIiwiZGluYXJzYUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kaW5hcnNhRCIsImRpbmFyc2FSVCI6IndpZGdldF91c2VyX3Rva2VuLWRpbmFyc2FSVCIsImRvbGFyaG95Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZG9sYXJob3kiLCJlYXN5bnZlc3Rjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWVhc3ludmVzdGNvbWJyIiwiZWRhaWx5Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZWRhaWx5IiwiZWxlc3Bhbm9sY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxlc3Bhbm9sY29tIiwiZWxvYnJlcm9lcyI6IndpZGdldF91c2VyX3Rva2VuLWVsb2JyZXJvZXMiLCJlbG5hY2lvbmFsRCI6IndpZGdldF91c2VyX3Rva2VuLUVsTmFjaW9uYWxEIiwiZWxwYWlzZmluYW5jaWVybyI6IndpZGdldF91c2VyX3Rva2VuLWVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIjoid2lkZ2V0X3VzZXJfdG9rZW4tZWxwZXJpb2RpY29kZWxhZW5lcmdpYSIsImV1cXVlcm9pbnZlc3RpciI6IndpZGdldF91c2VyX3Rva2VuLWV1cXVlcm9pbnZlc3RpcmNvbSIsImV1cmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZXVyZXgiLCJldXJvZmlucyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9maW5zIiwiZXBlIjoid2lkZ2V0X3VzZXJfdG9rZW4tZXBlIiwiZXVyb3BhcHJlc3NlcyI6IndpZGdldF91c2VyX3Rva2VuLWV1cm9wYXByZXNzZXMiLCJmaW5hbnphc0QiOiJ3aWRnZXRfdXNlcl90b2tlbi1GaW5hbnphc0QiLCJmb3JiZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLWZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyI6IndpZGdldF91c2VyX3Rva2VuLWdlbmlhbGludmVzdGltZW50b3MiLCJoZWFsdGhpdGFsaWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1oZWFsdGhpdGFsaWEiLCJoZWduYXJubyI6IndpZGdldF91c2VyX3Rva2VuLWhlZ25hcm5vIiwiaGlwb3RlY2FyaW9jb21hciI6IndpZGdldF91c2VyX3Rva2VuLWhpcG90ZWNhcmlvY29tYXIiLCJpZ2NvbSI6IndpZGdldF91c2VyX3Rva2VuLWlnY29tIiwiaW52ZXN0ZWdhdGVjb3VrIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0ZWdhdGVjb3VrIiwiaW52ZXN0b3BlZGlhIjoid2lkZ2V0X3VzZXJfdG9rZW4taW52ZXN0b3BlZGlhIiwiaW50ZWdyYWx5YXRpcmltIjoid2lkZ2V0X3VzZXJfdG9rZW4taW50ZWdyYWx5YXRpcmltIiwiaXZzZ3JvdXAiOiJ3aWRnZXRfdXNlcl90b2tlbi1pdnNncm91cCIsImpzZWNvemEiOiJ3aWRnZXRfdXNlcl90b2tlbi1qc2Vjb3phIiwiYm9lcnNlbnplaXR1bmciOiJ3aWRnZXRfdXNlcl90b2tlbi1ib2Vyc2VuemVpdHVuZyIsImxhaW5mb3JtYWNpb25jb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1sYWluZm9ybWFjaW9uY29tIiwibWFyY29wb2xvY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1tYXJjb3BvbG9jb21iciIsIm1lcmNhZG9maW5hbmNpZXJvY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbWVyY2Fkb2ZpbmFuY2llcm9jb20iLCJtb2V4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tbW9leCIsIm1vbmV5dGltZXNjb21iciI6IndpZGdldF91c2VyX3Rva2VuLW1vbmV5dGltZXNjb21iciIsIm1vbml0b3Jkb21lcmNhZG9EIjoid2lkZ2V0X3VzZXJfdG9rZW4tbW9uaXRvcmRvbWVyY2Fkb0QiLCJteW5ldGNvbSI6IndpZGdldF91c2VyX3Rva2VuLW15bmV0Y29tIiwibmVnb2Npb3MiOiJ3aWRnZXRfdXNlcl90b2tlbi1uZWdvY2lvcyIsIk5HWCI6IndpZGdldF91c2VyX3Rva2VuLU5HWCIsIk5vdGljaWFzYWdyaWNvbGFEIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm90aWNpYXNhZ3JpY29sYUQiLCJub21tb21hIjoid2lkZ2V0X3VzZXJfdG9rZW4tbm9tbW9tYSIsIm5zZWNva3IiOiJ3aWRnZXRfdXNlcl90b2tlbi1uc2Vjb2tyIiwib2tkaWFyaW8iOiJ3aWRnZXRfdXNlcl90b2tlbi1va2RpYXJpbyIsInBhbmFmcmljYW5yZXNvdXJjZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1wYW5hZnJpY2FucmVzb3VyY2VzY29tIiwicHNlIjoid2lkZ2V0X3VzZXJfdG9rZW4tcHNlIiwicG9kZXIzNjAiOiJ3aWRnZXRfdXNlcl90b2tlbi1wb2RlcjM2MCIsInBzZUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1wc2VEIiwicml5YWRoY2FwaXRhbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1yaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCI6IndpZGdldF91c2VyX3Rva2VuLXJpeWFkaGNhcGl0YWxSVCIsInFlY29tcWEiOiJ3aWRnZXRfdXNlcl90b2tlbi1xZWNvbXFhIiwic2Ftb2xldCI6IndpZGdldF91c2VyX3Rva2VuLXNhbW9sZXQiLCJzZWVpbmdtYWNoaW5lc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXNlZWluZ21hY2hpbmVzY29tIiwic2V1ZGluaGVpcm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1zZXVkaW5oZWlybyIsInNvZnR3YXJlYWciOiJ3aWRnZXRfdXNlcl90b2tlbi1zb2Z0d2FyZWFnIiwic29nZWNsYWlyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc29nZWNsYWlyIiwic2djb21wYW55aXQiOiJ3aWRnZXRfdXNlcl90b2tlbi1zZ2NvbXBhbnlpdCIsInNoYXJlanVuY3Rpb24iOiJ3aWRnZXRfdXNlcl90b2tlbi1zaGFyZWp1bmN0aW9uIiwic21hcnRsYWItY3VzdG9tIjoid2lkZ2V0X3VzZXJfdG9rZW4tc21hcnRsYWIiLCJzbWFydGxhYiI6IndpZGdldF91c2VyX3Rva2VuLXNtYXJ0bGFiIiwic3BhY2Vtb25leWNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3BhY2Vtb25leWNvbWJyIiwic3RvbmV4d2RnIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4wqMtIXd3dy5zdG9uZXguY29tIiwic3RveGlvIjoid2lkZ2V0X3VzZXJfdG9rZW4tc3RveGlvIiwic3RvbmV4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc3RvbmV4IiwidG9yb2ludmVzdGltZW50b3Njb20iOiJ3aWRnZXRfdXNlcl90b2tlbi10b3JvaW52ZXN0aW1lbnRvc2NvbSIsInRoZWNzZWNvbSI6IndpZGdldF91c2VyX3Rva2VuLXRoZWNzZWNvbSIsInRyYWRlcnNjbHViYnJhc2lsIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkZXJzY2x1YmJyYXNpbEQiLCJ0cmFkaW5ndmlldyI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRpbmd2aWV3IiwieHRvb2xzIjoid2lkZ2V0X3VzZXJfdG9rZW4teHRvb2xzIiwidHdpdHRlciI6IndpZGdldF91c2VyX3Rva2VuLXR3aXR0ZXIiLCJ2ZWxvY2l0eWNvbXBvc2l0ZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi12ZWxvY2l0eWNvbXBvc2l0ZXNjb20iLCJ2b2Nlc2FhYnJpbGNvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tdm9jZXNhYWJyaWxjb21iciIsIndlYWx0aHNpbXBsZSI6IndpZGdldF91c2VyX3Rva2VuLXdlYWx0aHNpbXBsZcKjLSFteS53ZWFsdGhzaW1wbGUuY29tIiwid29ybGRjaGVzc2NvbSI6IndpZGdldF91c2VyX3Rva2VuLXdvcmxkY2hlc3Njb20iLCJ4Q3J0eUprc3AiOiJ3aWRnZXRfdXNlcl90b2tlbi14Q3J0eUprc3AiLCJ4cGljb21iciI6IndpZGdldF91c2VyX3Rva2VuLXhwaWNvbWJyIn0nKQp9fV0pOw=="}},"time_used":4,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/CH.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.435Z","timestamp":1785159269435,"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 /country/CH.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"d490c6879d1a4b832c5fd71de4b4bd38\"\r\nlast-modified: Wed, 20 Dec 2023 06:30:39 GMT\r\ncdn-cachedat: 08/14/2025 09:10:20\r\nx-amz-id-2: +pgOhMBEo1bT/EoeDaU/vJ7iYiRTuqoJjrasc1Ax8y0E+aviBoNB+Oh9lnd5HpM0M0T99zENl0o=\r\nx-amz-request-id: 79R00Z2WARKZCTCQ\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: d490c6879d1a4b832c5fd71de4b4bd38\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b352b483e91d5677bc9af3bab5a98f20\r\ncdn-cache: HIT\r\nX-Firefox-Spdy: h2\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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":323,"size_decoded":1103,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (323), with no line terminators","md5":"d490c6879d1a4b832c5fd71de4b4bd38","sha1":"2faf3c6bb3f17594b06fc3a8c7b0a9b4b52d59c0","sha256":"3e5657d1033fd76d680853cb65e85338623961ca92b1e768cb902aa995a81a99","sha512":"a03bc306dddec855aae306318edf5429cbcb8142faf7420677a459a7b1df5002ec22996602071373c3b721e1c25b3f0baf83f45b6530fa89f4ccb9b09cdedce8","ssdeep":"","tlshash":"cae0d87951385008a411c3b5a8bc945b208e60cbf29c12d9b5403106181a1f79f14a98","first_seen":"2023-12-23T23:42:09Z","last_seen":"2026-07-30T06:08:06.361401Z","times_seen":2609,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDBoMTh2MThIMFYweiIgZmlsbD0iI0VGNTM1MCIgc2hhcGUtcmVuZGVyaW5nPSJjcmlzcEVkZ2VzIi8+PHBhdGggZD0iTTMgN2gxMnY0SDNWN3oiIGZpbGw9IiNGOEY5RkQiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxwYXRoIGQ9Ik03IDNoNHYxMkg3VjN6IiBmaWxsPSIjRjhGOUZEIiBzaGFwZS1yZW5kZXJpbmc9ImNyaXNwRWRnZXMiLz48L3N2Zz4="}},"time_used":100,"timings":{"blocked":-1,"dns":46,"connect":27,"send":0,"wait":4,"receive":-1,"ssl":18},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"jnn-pa.googleapis.com/$rpc/google.internal.waa.v1.Waa/GenerateIT","fqdn":"jnn-pa.googleapis.com","domain":"jnn-pa.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"172.217.115.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://www.youtube.com/embed/6jePbqXJhe8","date":"2026-07-27T13:34:30.175Z","timestamp":1785159270175,"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":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:20 GMT","end":"Mon, 21 Sep 2026 08:39:19 GMT"},"fingerprint":{"sha1":"2A:E6:04:0E:76:A4:02:27:67:28:31:4D:E5:61:19:26:CA:0E:32:84","sha256":"D4:ED:C4:F8:DB:31:8A:2D:35:15:01:14:C0:49:CB:47:FF:5B:CC:17:14:82:63:9B:A8:6F:61:4D:AA:E5:96:94"}}},"request":{"raw":"POST /$rpc/google.internal.waa.v1.Waa/GenerateIT HTTP/1.1\r\nHost: jnn-pa.googleapis.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\nX-Goog-Api-Key: AIzaSyDyT5W0Jh49F30Pqqtyfdf7pDLFKLJoAnw\r\nContent-Type: application/json+protobuf\r\nContent-Length: 1788\r\nOrigin: https://www.youtube.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.youtube.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: 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":"POST","post_data":{"size":1788,"data":"[\"O43z0dpjhgX20SCx4KAo\",\"$X8A5wKRRAAYuiqQtDoreipcTaTslxHenAEABEArZ1HvB5bk_ktLFjOH7EWjA52FEZSZDGX3DJO7SvKzS5L73V2a-0wpcYp-TaE95YFrjDCpCwoysm4Eqh15fngAAANLOAAAADPQBB-IAUqv0SzpVBhn_BJQeefu30a6lsXce10oqB4dEN7BoWwKJROQdZzK8X49X10URj3-gxO_o0_4fVFdKvUQ4qqg-_DlOHpTR7wRO2pToDldvTNb6dWEFBGleEQ0jrQvzucnKRwkeyQKW89tFq3aUgdoyqougg5AFPLDP72zCApjwgv16XyBAbqXW8oBtfyp4zDUFhyNttbUhISzqc1WBqV_gwSnz6CaWXyUJu-LLcWIXp5uYlsleJGWGQTea0MGxOb3Cpur-2qpqZaRq-3VNX0AkZPOFZgsY9ex7nQen2CKPu3tydRBeg3Z82IC4_XLBQMfVq2P-zz2SvVhbL_HRAkqmAUljd0lj6MpudtnM3k-8k2iQHkSv15zyh3nU-Jytnir0BbUdYlZIKhwfhirNaXlLAPY8cHkBxWkQp0UculUgmIuqSLmfnRGPHcffYPWsd42ajZwQDSthiqCsLWOfuD3mQH7Ir69bi9L4hi-QCRNFcErXodI0tuifo5XR7WX-vn6WU9wpZIdLa-lwVXugRWV23epu3ykfBChtagMW6JKPRtXXjr7_xsoZ7thONQvtf-Dlan1b3pEk2YtLa_V1Jqg8rssrYOs_BxnWmUjJrApw-kWJubEqPUBJLKM_yN2D0tE8N8zyRrARPMLVPChj7qvE0_b73a5CwImecAHpWnBLyNkXZjXQv0SmvtJUS_svgJlLNYhDFdpz5aZI7b3ndQu5-AvMVMQbYTt_H4LoZd26H8r50cyx7izikZrhSXmWptvQNNSc50_TAr25fJbFk0lLFWcYdWGCPoTU8zkpyqBWTApxfuxGwey4_fPIxcmZILCI4eSRIYEs2Kl3UaH2xKUaTm1HaORazhcaKlh4dt8ygBjCiT9yj4Tz2iCpHQBiCdtGcmDB9iSrKLVwuoBzmm_z5A5U0KJ8iFMFC5eqNV3HKfh0pTCJ8V-382eZaS2H-fl0xcFNZuUdV5xr5QUgK4YMsOiLA7A_LbJ5hh7TZI629CTgFdztIBywSybA0rR15n1UC3gFv829YuXrfhqNKB65FxtJ4aEnS_KiPplLn-uY2GHJ9f4lihyI1EnxurSsV1Asx_iFbGw3_Z5yrHEdo41EpGoKJWKQ7mauASEhQ9QrpSBoic3nY-Iwal4btkdUiyUAUp_KUwssP-UI-HpRAAR8ZW6H8sIByyNyvyRgIyV3LZahu9DOzHWbT8xBlcxIk82mqCAvDQCEy9QdVqiidNQsh3LssKgWykMQk_gHJZ2X1e6j9VGXk4Jo2-NRBWVX4j9wcZg0RAt1VQi7JW2zRwW9reLtAHQwJHm4IW5f5Sj6ShFp-RbIlibUtHcNn20MlUFSJuWtD8JRkuVjlKYX1sVFAYSPwADYEBqhF0wrM8hmqlXpHUGiObfh_n3GSYSO3z5g6ugzJpw1aFQw9CwUp06ukf-ZTkFodF5gUG7uyYn0mUHSFiHT58eH6nHgS1X0BInHmcMQafbMjYaLoYgkA-5fP2Uum0Y7XeC9uoYsrg_ntv1shg85m8oXLGTNT7FaCZXHmv4_Ugy_RIbHX4vKg1-SME2K3XjJBypqytqs5UvKWCDbZgea5Bh3EXFxeW1s2K0aTaAis1CM2nHvCFwBLXLW\"]"}},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/json+protobuf; charset=UTF-8\r\nvary: Origin, X-Origin, Referer\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 13:34:30 GMT\r\nserver: ESF\r\ncontent-length: 118\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\naccess-control-allow-origin: https://www.youtube.com\r\naccess-control-allow-credentials: true\r\naccess-control-expose-headers: vary,vary,vary,content-encoding,date,server,content-length\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":null,"data":{"size":98,"size_decoded":662,"mime_type":"application/json+protobuf; charset=UTF-8","magic":"JSON text data","md5":"7d0ec5dcf013c5d7f869d2a75e5f7f9c","sha1":"2299fe3aa6d29693ec5b9161408890a19d982cb6","sha256":"2c657996b14bc15e4c84aa312ff983b07b28a523c2b8dab2c7de93d8a5b9e07d","sha512":"cc5cdc9fd04e1e5443600d37b1a38b3164b0cba1d79ec182b6f2d2093586c7d00a8509bdc42af7a7c448a6f6ea374be045bf7b3d36d8cbe3013165ce14122c78","ssdeep":"","tlshash":"44b012c40c853ce0082160409e422cec380305a12c034292c0331589d4e444fa30fd0f","first_seen":"2026-07-27T13:35:15.311415Z","last_seen":"2026-07-27T13:35:15.311415Z","times_seen":1,"resource_available":false,"data":"WyJVMEVQR2dBQ0h5RzUyVHNMdzV2ZE9icWpIMHErRlBwMHBUOUtNc1RsOUl0ZzVoZ3A4aUExK3FLeXpqY2d1MGU3SHlpbTc2UU10TXB3ZGswY3p2WnAiLDQzMjAwLDEwMF0="}},"time_used":23,"timings":{"blocked":0,"dns":0,"connect":0,"send":1,"wait":22,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/js/owl.carousel.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.928Z","timestamp":1785159267928,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /js/owl.carousel.min.js HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"ad52-66136805-9cbe5ec76fd7e4ed;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 11154\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":44370,"size_decoded":11532,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (31997), with CRLF line terminators","md5":"dc33f40904c568db5a77a019b31f854e","sha1":"a227ef65815ce6bb7b99004cdc52c05987bda091","sha256":"ebb46809148b36344b14b249a0e89ff366936c5bf9eaa97439db3882527ccbf9","sha512":"08cc2fd07269dbccaae884991e0d9eb6b54763aadae25467e6ce6360ceb49cc093d83166ecb4718ad853644a4b7bb58dd1786de699a249d4741d3b8a7a4be304","ssdeep":"768:RCI7dmuMFAAJG4dlQKNORpnXGAtep2lcwJeL+wr2RSNc7UuHjRUQuFBt3N:AITMFC4dbMVRSNcgRDz","tlshash":"4b137346b3202d2a869b61a0663f160bb23a241ce414547d7d79e6de6d7dc8c213ffbc","first_seen":"2026-07-27T07:08:39.276882Z","last_seen":"2026-07-27T13:35:41.721892Z","times_seen":3,"resource_available":true,"data":"LyoqDQogKiBPd2wgQ2Fyb3VzZWwgdjIuMy40DQogKiBDb3B5cmlnaHQgMjAxMy0yMDE4IERhdmlkIERldXRzY2gNCiAqIExpY2Vuc2VkIHVuZGVyOiBTRUUgTElDRU5TRSBJTiBodHRwczovL2dpdGh1Yi5jb20vT3dsQ2Fyb3VzZWwyL093bENhcm91c2VsMi9ibG9iL21hc3Rlci9MSUNFTlNFDQogKi8NCiFmdW5jdGlvbihhLGIsYyxkKXtmdW5jdGlvbiBlKGIsYyl7dGhpcy5zZXR0aW5ncz1udWxsLHRoaXMub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLGMpLHRoaXMuJGVsZW1lbnQ9YShiKSx0aGlzLl9oYW5kbGVycz17fSx0aGlzLl9wbHVnaW5zPXt9LHRoaXMuX3N1cHJlc3M9e30sdGhpcy5fY3VycmVudD1udWxsLHRoaXMuX3NwZWVkPW51bGwsdGhpcy5fY29vcmRpbmF0ZXM9W10sdGhpcy5fYnJlYWtwb2ludD1udWxsLHRoaXMuX3dpZHRoPW51bGwsdGhpcy5faXRlbXM9W10sdGhpcy5fY2xvbmVzPVtdLHRoaXMuX21lcmdlcnM9W10sdGhpcy5fd2lkdGhzPVtdLHRoaXMuX2ludmFsaWRhdGVkPXt9LHRoaXMuX3BpcGU9W10sdGhpcy5fZHJhZz17dGltZTpudWxsLHRhcmdldDpudWxsLHBvaW50ZXI6bnVsbCxzdGFnZTp7c3RhcnQ6bnVsbCxjdXJyZW50Om51bGx9LGRpcmVjdGlvbjpudWxsfSx0aGlzLl9zdGF0ZXM9e2N1cnJlbnQ6e30sdGFnczp7aW5pdGlhbGl6aW5nOlsiYnVzeSJdLGFuaW1hdGluZzpbImJ1c3kiXSxkcmFnZ2luZzpbImludGVyYWN0aW5nIl19fSxhLmVhY2goWyJvblJlc2l6ZSIsIm9uVGhyb3R0bGVkUmVzaXplIl0sYS5wcm94eShmdW5jdGlvbihiLGMpe3RoaXMuX2hhbmRsZXJzW2NdPWEucHJveHkodGhpc1tjXSx0aGlzKX0sdGhpcykpLGEuZWFjaChlLlBsdWdpbnMsYS5wcm94eShmdW5jdGlvbihhLGIpe3RoaXMuX3BsdWdpbnNbYS5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKSthLnNsaWNlKDEpXT1uZXcgYih0aGlzKX0sdGhpcykpLGEuZWFjaChlLldvcmtlcnMsYS5wcm94eShmdW5jdGlvbihiLGMpe3RoaXMuX3BpcGUucHVzaCh7ZmlsdGVyOmMuZmlsdGVyLHJ1bjphLnByb3h5KGMucnVuLHRoaXMpfSl9LHRoaXMpKSx0aGlzLnNldHVwKCksdGhpcy5pbml0aWFsaXplKCl9ZS5EZWZhdWx0cz17aXRlbXM6Myxsb29wOiExLGNlbnRlcjohMSxyZXdpbmQ6ITEsY2hlY2tWaXNpYmlsaXR5OiEwLG1vdXNlRHJhZzohMCx0b3VjaERyYWc6ITAscHVsbERyYWc6ITAsZnJlZURyYWc6ITEsbWFyZ2luOjAsc3RhZ2VQYWRkaW5nOjAsbWVyZ2U6ITEsbWVyZ2VGaXQ6ITAsYXV0b1dpZHRoOiExLHN0YXJ0UG9zaXRpb246MCxydGw6ITEsc21hcnRTcGVlZDoyNTAsZmx1aWRTcGVlZDohMSxkcmFnRW5kU3BlZWQ6ITEscmVzcG9uc2l2ZTp7fSxyZXNwb25zaXZlUmVmcmVzaFJhdGU6MjAwLHJlc3BvbnNpdmVCYXNlRWxlbWVudDpiLGZhbGxiYWNrRWFzaW5nOiJzd2luZyIsc2xpZGVUcmFuc2l0aW9uOiIiLGluZm86ITEsbmVzdGVkSXRlbVNlbGVjdG9yOiExLGl0ZW1FbGVtZW50OiJkaXYiLHN0YWdlRWxlbWVudDoiZGl2IixyZWZyZXNoQ2xhc3M6Im93bC1yZWZyZXNoIixsb2FkZWRDbGFzczoib3dsLWxvYWRlZCIsbG9hZGluZ0NsYXNzOiJvd2wtbG9hZGluZyIscnRsQ2xhc3M6Im93bC1ydGwiLHJlc3BvbnNpdmVDbGFzczoib3dsLXJlc3BvbnNpdmUiLGRyYWdDbGFzczoib3dsLWRyYWciLGl0ZW1DbGFzczoib3dsLWl0ZW0iLHN0YWdlQ2xhc3M6Im93bC1zdGFnZSIsc3RhZ2VPdXRlckNsYXNzOiJvd2wtc3RhZ2Utb3V0ZXIiLGdyYWJDbGFzczoib3dsLWdyYWIifSxlLldpZHRoPXtEZWZhdWx0OiJkZWZhdWx0IixJbm5lcjoiaW5uZXIiLE91dGVyOiJvdXRlciJ9LGUuVHlwZT17RXZlbnQ6ImV2ZW50IixTdGF0ZToic3RhdGUifSxlLlBsdWdpbnM9e30sZS5Xb3JrZXJzPVt7ZmlsdGVyOlsid2lkdGgiLCJzZXR0aW5ncyJdLHJ1bjpmdW5jdGlvbigpe3RoaXMuX3dpZHRoPXRoaXMuJGVsZW1lbnQud2lkdGgoKX19LHtmaWx0ZXI6WyJ3aWR0aCIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oYSl7YS5jdXJyZW50PXRoaXMuX2l0ZW1zJiZ0aGlzLl9pdGVtc1t0aGlzLnJlbGF0aXZlKHRoaXMuX2N1cnJlbnQpXX19LHtmaWx0ZXI6WyJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKCl7dGhpcy4kc3RhZ2UuY2hpbGRyZW4oIi5jbG9uZWQiKS5yZW1vdmUoKX19LHtmaWx0ZXI6WyJ3aWR0aCIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5zZXR0aW5ncy5tYXJnaW58fCIiLGM9IXRoaXMuc2V0dGluZ3MuYXV0b1dpZHRoLGQ9dGhpcy5zZXR0aW5ncy5ydGwsZT17d2lkdGg6ImF1dG8iLCJtYXJnaW4tbGVmdCI6ZD9iOiIiLCJtYXJnaW4tcmlnaHQiOmQ/IiI6Yn07IWMmJnRoaXMuJHN0YWdlLmNoaWxkcmVuKCkuY3NzKGUpLGEuY3NzPWV9fSx7ZmlsdGVyOlsid2lkdGgiLCJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKGEpe3ZhciBiPSh0aGlzLndpZHRoKCkvdGhpcy5zZXR0aW5ncy5pdGVtcykudG9GaXhlZCgzKS10aGlzLnNldHRpbmdzLm1hcmdpbixjPW51bGwsZD10aGlzLl9pdGVtcy5sZW5ndGgsZT0hdGhpcy5zZXR0aW5ncy5hdXRvV2lkdGgsZj1bXTtmb3IoYS5pdGVtcz17bWVyZ2U6ITEsd2lkdGg6Yn07ZC0tOyljPXRoaXMuX21lcmdlcnNbZF0sYz10aGlzLnNldHRpbmdzLm1lcmdlRml0JiZNYXRoLm1pbihjLHRoaXMuc2V0dGluZ3MuaXRlbXMpfHxjLGEuaXRlbXMubWVyZ2U9Yz4xfHxhLml0ZW1zLm1lcmdlLGZbZF09ZT9iKmM6dGhpcy5faXRlbXNbZF0ud2lkdGgoKTt0aGlzLl93aWR0aHM9Zn19LHtmaWx0ZXI6WyJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKCl7dmFyIGI9W10sYz10aGlzLl9pdGVtcyxkPXRoaXMuc2V0dGluZ3MsZT1NYXRoLm1heCgyKmQuaXRlbXMsNCksZj0yKk1hdGguY2VpbChjLmxlbmd0aC8yKSxnPWQubG9vcCYmYy5sZW5ndGg/ZC5yZXdpbmQ/ZTpNYXRoLm1heChlLGYpOjAsaD0iIixpPSIiO2ZvcihnLz0yO2c+MDspYi5wdXNoKHRoaXMubm9ybWFsaXplKGIubGVuZ3RoLzIsITApKSxoKz1jW2JbYi5sZW5ndGgtMV1dWzBdLm91dGVySFRNTCxiLnB1c2godGhpcy5ub3JtYWxpemUoYy5sZW5ndGgtMS0oYi5sZW5ndGgtMSkvMiwhMCkpLGk9Y1tiW2IubGVuZ3RoLTFdXVswXS5vdXRlckhUTUwraSxnLT0xO3RoaXMuX2Nsb25lcz1iLGEoaCkuYWRkQ2xhc3MoImNsb25lZCIpLmFwcGVuZFRvKHRoaXMuJHN0YWdlKSxhKGkpLmFkZENsYXNzKCJjbG9uZWQiKS5wcmVwZW5kVG8odGhpcy4kc3RhZ2UpfX0se2ZpbHRlcjpbIndpZHRoIiwiaXRlbXMiLCJzZXR0aW5ncyJdLHJ1bjpmdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLnNldHRpbmdzLnJ0bD8xOi0xLGI9dGhpcy5fY2xvbmVzLmxlbmd0aCt0aGlzLl9pdGVtcy5sZW5ndGgsYz0tMSxkPTAsZT0wLGY9W107KytjPGI7KWQ9ZltjLTFdfHwwLGU9dGhpcy5fd2lkdGhzW3RoaXMucmVsYXRpdmUoYyldK3RoaXMuc2V0dGluZ3MubWFyZ2luLGYucHVzaChkK2UqYSk7dGhpcy5fY29vcmRpbmF0ZXM9Zn19LHtmaWx0ZXI6WyJ3aWR0aCIsIml0ZW1zIiwic2V0dGluZ3MiXSxydW46ZnVuY3Rpb24oKXt2YXIgYT10aGlzLnNldHRpbmdzLnN0YWdlUGFkZGluZyxiPXRoaXMuX2Nvb3JkaW5hdGVzLGM9e3dpZHRoOk1hdGguY2VpbChNYXRoLmFicyhiW2IubGVuZ3RoLTFdKSkrMiphLCJwYWRkaW5nLWxlZnQiOmF8fCIiLCJwYWRkaW5nLXJpZ2h0IjphfHwiIn07dGhpcy4kc3RhZ2UuY3NzKGMpfX0se2ZpbHRlcjpbIndpZHRoIiwiaXRlbXMiLCJzZXR0aW5ncyJdLHJ1bjpmdW5jdGlvbihhKXt2YXIgYj10aGlzLl9jb29yZGluYXRlcy5sZW5ndGgsYz0hdGhpcy5zZXR0aW5ncy5hdXRvV2lkdGgsZD10aGlzLiRzdGFnZS5jaGlsZHJlbigpO2lmKGMmJmEuaXRlbXMubWVyZ2UpZm9yKDtiLS07KWEuY3NzLndpZHRoPXRoaXMuX3dpZHRoc1t0aGlzLnJlbGF0aXZlKGIpXSxkLmVxKGIpLmNzcyhhLmNzcyk7ZWxzZSBjJiYoYS5jc3Mud2lkdGg9YS5pdGVtcy53aWR0aCxkLmNzcyhhLmNzcykpfX0se2ZpbHRlcjpbIml0ZW1zIl0scnVuOmZ1bmN0aW9uKCl7dGhpcy5fY29vcmRpbmF0ZXMubGVuZ3RoPDEmJnRoaXMuJHN0YWdlLnJlbW92ZUF0dHIoInN0eWxlIil9fSx7ZmlsdGVyOlsid2lkdGgiLCJpdGVtcyIsInNldHRpbmdzIl0scnVuOmZ1bmN0aW9uKGEpe2EuY3VycmVudD1hLmN1cnJlbnQ/dGhpcy4kc3RhZ2UuY2hpbGRyZW4oKS5pbmRleChhLmN1cnJlbnQpOjAsYS5jdXJyZW50PU1hdGgubWF4KHRoaXMubWluaW11bSgpLE1hdGgubWluKHRoaXMubWF4aW11bSgpLGEuY3VycmVudCkpLHRoaXMucmVzZXQoYS5jdXJyZW50KX19LHtmaWx0ZXI6WyJwb3NpdGlvbiJdLHJ1bjpmdW5jdGlvbigpe3RoaXMuYW5pbWF0ZSh0aGlzLmNvb3JkaW5hdGVzKHRoaXMuX2N1cnJlbnQpKX19LHtmaWx0ZXI6WyJ3aWR0aCIsInBvc2l0aW9uIiwiaXRlbXMiLCJzZXR0aW5ncyJdLHJ1bjpmdW5jdGlvbigpe3ZhciBhLGIsYyxkLGU9dGhpcy5zZXR0aW5ncy5ydGw/MTotMSxmPTIqdGhpcy5zZXR0aW5ncy5zdGFnZVBhZGRpbmcsZz10aGlzLmNvb3JkaW5hdGVzKHRoaXMuY3VycmVudCgpKStmLGg9Zyt0aGlzLndpZHRoKCkqZSxpPVtdO2ZvcihjPTAsZD10aGlzLl9jb29yZGluYXRlcy5sZW5ndGg7YzxkO2MrKylhPXRoaXMuX2Nvb3JkaW5hdGVzW2MtMV18fDAsYj1NYXRoLmFicyh0aGlzLl9jb29yZGluYXRlc1tjXSkrZiplLCh0aGlzLm9wKGEsIjw9IixnKSYmdGhpcy5vcChhLCI+IixoKXx8dGhpcy5vcChiLCI8IixnKSYmdGhpcy5vcChiLCI+IixoKSkmJmkucHVzaChjKTt0aGlzLiRzdGFnZS5jaGlsZHJlbigiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSx0aGlzLiRzdGFnZS5jaGlsZHJlbigiOmVxKCIraS5qb2luKCIpLCA6ZXEoIikrIikiKS5hZGRDbGFzcygiYWN0aXZlIiksdGhpcy4kc3RhZ2UuY2hpbGRyZW4oIi5jZW50ZXIiKS5yZW1vdmVDbGFzcygiY2VudGVyIiksdGhpcy5zZXR0aW5ncy5jZW50ZXImJnRoaXMuJHN0YWdlLmNoaWxkcmVuKCkuZXEodGhpcy5jdXJyZW50KCkpLmFkZENsYXNzKCJjZW50ZXIiKX19XSxlLnByb3RvdHlwZS5pbml0aWFsaXplU3RhZ2U9ZnVuY3Rpb24oKXt0aGlzLiRzdGFnZT10aGlzLiRlbGVtZW50LmZpbmQoIi4iK3RoaXMuc2V0dGluZ3Muc3RhZ2VDbGFzcyksdGhpcy4kc3RhZ2UubGVuZ3RofHwodGhpcy4kZWxlbWVudC5hZGRDbGFzcyh0aGlzLm9wdGlvbnMubG9hZGluZ0NsYXNzKSx0aGlzLiRzdGFnZT1hKCI8Iit0aGlzLnNldHRpbmdzLnN0YWdlRWxlbWVudCsiPiIse2NsYXNzOnRoaXMuc2V0dGluZ3Muc3RhZ2VDbGFzc30pLndyYXAoYSgiPGRpdi8+Iix7Y2xhc3M6dGhpcy5zZXR0aW5ncy5zdGFnZU91dGVyQ2xhc3N9KSksdGhpcy4kZWxlbWVudC5hcHBlbmQodGhpcy4kc3RhZ2UucGFyZW50KCkpKX0sZS5wcm90b3R5cGUuaW5pdGlhbGl6ZUl0ZW1zPWZ1bmN0aW9uKCl7dmFyIGI9dGhpcy4kZWxlbWVudC5maW5kKCIub3dsLWl0ZW0iKTtpZihiLmxlbmd0aClyZXR1cm4gdGhpcy5faXRlbXM9Yi5nZXQoKS5tYXAoZnVuY3Rpb24oYil7cmV0dXJuIGEoYil9KSx0aGlzLl9tZXJnZXJzPXRoaXMuX2l0ZW1zLm1hcChmdW5jdGlvbigpe3JldHVybiAxfSksdm9pZCB0aGlzLnJlZnJlc2goKTt0aGlzLnJlcGxhY2UodGhpcy4kZWxlbWVudC5jaGlsZHJlbigpLm5vdCh0aGlzLiRzdGFnZS5wYXJlbnQoKSkpLHRoaXMuaXNWaXNpYmxlKCk/dGhpcy5yZWZyZXNoKCk6dGhpcy5pbnZhbGlkYXRlKCJ3aWR0aCIpLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmxvYWRpbmdDbGFzcykuYWRkQ2xhc3ModGhpcy5vcHRpb25zLmxvYWRlZENsYXNzKX0sZS5wcm90b3R5cGUuaW5pdGlhbGl6ZT1mdW5jdGlvbigpe2lmKHRoaXMuZW50ZXIoImluaXRpYWxpemluZyIpLHRoaXMudHJpZ2dlcigiaW5pdGlhbGl6ZSIpLHRoaXMuJGVsZW1lbnQudG9nZ2xlQ2xhc3ModGhpcy5zZXR0aW5ncy5ydGxDbGFzcyx0aGlzLnNldHRpbmdzLnJ0bCksdGhpcy5zZXR0aW5ncy5hdXRvV2lkdGgmJiF0aGlzLmlzKCJwcmUtbG9hZGluZyIpKXt2YXIgYSxiLGM7YT10aGlzLiRlbGVtZW50LmZpbmQoImltZyIpLGI9dGhpcy5zZXR0aW5ncy5uZXN0ZWRJdGVtU2VsZWN0b3I/Ii4iK3RoaXMuc2V0dGluZ3MubmVzdGVkSXRlbVNlbGVjdG9yOmQsYz10aGlzLiRlbGVtZW50LmNoaWxkcmVuKGIpLndpZHRoKCksYS5sZW5ndGgmJmM8PTAmJnRoaXMucHJlbG9hZEF1dG9XaWR0aEltYWdlcyhhKX10aGlzLmluaXRpYWxpemVTdGFnZSgpLHRoaXMuaW5pdGlhbGl6ZUl0ZW1zKCksdGhpcy5yZWdpc3RlckV2ZW50SGFuZGxlcnMoKSx0aGlzLmxlYXZlKCJpbml0aWFsaXppbmciKSx0aGlzLnRyaWdnZXIoImluaXRpYWxpemVkIil9LGUucHJvdG90eXBlLmlzVmlzaWJsZT1mdW5jdGlvbigpe3JldHVybiF0aGlzLnNldHRpbmdzLmNoZWNrVmlzaWJpbGl0eXx8dGhpcy4kZWxlbWVudC5pcygiOnZpc2libGUiKX0sZS5wcm90b3R5cGUuc2V0dXA9ZnVuY3Rpb24oKXt2YXIgYj10aGlzLnZpZXdwb3J0KCksYz10aGlzLm9wdGlvbnMucmVzcG9uc2l2ZSxkPS0xLGU9bnVsbDtjPyhhLmVhY2goYyxmdW5jdGlvbihhKXthPD1iJiZhPmQmJihkPU51bWJlcihhKSl9KSxlPWEuZXh0ZW5kKHt9LHRoaXMub3B0aW9ucyxjW2RdKSwiZnVuY3Rpb24iPT10eXBlb2YgZS5zdGFnZVBhZGRpbmcmJihlLnN0YWdlUGFkZGluZz1lLnN0YWdlUGFkZGluZygpKSxkZWxldGUgZS5yZXNwb25zaXZlLGUucmVzcG9uc2l2ZUNsYXNzJiZ0aGlzLiRlbGVtZW50LmF0dHIoImNsYXNzIix0aGlzLiRlbGVtZW50LmF0dHIoImNsYXNzIikucmVwbGFjZShuZXcgUmVnRXhwKCIoIit0aGlzLm9wdGlvbnMucmVzcG9uc2l2ZUNsYXNzKyItKVxcUytcXHMiLCJnIiksIiQxIitkKSkpOmU9YS5leHRlbmQoe30sdGhpcy5vcHRpb25zKSx0aGlzLnRyaWdnZXIoImNoYW5nZSIse3Byb3BlcnR5OntuYW1lOiJzZXR0aW5ncyIsdmFsdWU6ZX19KSx0aGlzLl9icmVha3BvaW50PWQsdGhpcy5zZXR0aW5ncz1lLHRoaXMuaW52YWxpZGF0ZSgic2V0dGluZ3MiKSx0aGlzLnRyaWdnZXIoImNoYW5nZWQiLHtwcm9wZXJ0eTp7bmFtZToic2V0dGluZ3MiLHZhbHVlOnRoaXMuc2V0dGluZ3N9fSl9LGUucHJvdG90eXBlLm9wdGlvbnNMb2dpYz1mdW5jdGlvbigpe3RoaXMuc2V0dGluZ3MuYXV0b1dpZHRoJiYodGhpcy5zZXR0aW5ncy5zdGFnZVBhZGRpbmc9ITEsdGhpcy5zZXR0aW5ncy5tZXJnZT0hMSl9LGUucHJvdG90eXBlLnByZXBhcmU9ZnVuY3Rpb24oYil7dmFyIGM9dGhpcy50cmlnZ2VyKCJwcmVwYXJlIix7Y29udGVudDpifSk7cmV0dXJuIGMuZGF0YXx8KGMuZGF0YT1hKCI8Iit0aGlzLnNldHRpbmdzLml0ZW1FbGVtZW50KyIvPiIpLmFkZENsYXNzKHRoaXMub3B0aW9ucy5pdGVtQ2xhc3MpLmFwcGVuZChiKSksdGhpcy50cmlnZ2VyKCJwcmVwYXJlZCIse2NvbnRlbnQ6Yy5kYXRhfSksYy5kYXRhfSxlLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oKXtmb3IodmFyIGI9MCxjPXRoaXMuX3BpcGUubGVuZ3RoLGQ9YS5wcm94eShmdW5jdGlvbihhKXtyZXR1cm4gdGhpc1thXX0sdGhpcy5faW52YWxpZGF0ZWQpLGU9e307YjxjOykodGhpcy5faW52YWxpZGF0ZWQuYWxsfHxhLmdyZXAodGhpcy5fcGlwZVtiXS5maWx0ZXIsZCkubGVuZ3RoPjApJiZ0aGlzLl9waXBlW2JdLnJ1bihlKSxiKys7dGhpcy5faW52YWxpZGF0ZWQ9e30sIXRoaXMuaXMoInZhbGlkIikmJnRoaXMuZW50ZXIoInZhbGlkIil9LGUucHJvdG90eXBlLndpZHRoPWZ1bmN0aW9uKGEpe3N3aXRjaChhPWF8fGUuV2lkdGguRGVmYXVsdCl7Y2FzZSBlLldpZHRoLklubmVyOmNhc2UgZS5XaWR0aC5PdXRlcjpyZXR1cm4gdGhpcy5fd2lkdGg7ZGVmYXVsdDpyZXR1cm4gdGhpcy5fd2lkdGgtMip0aGlzLnNldHRpbmdzLnN0YWdlUGFkZGluZyt0aGlzLnNldHRpbmdzLm1hcmdpbn19LGUucHJvdG90eXBlLnJlZnJlc2g9ZnVuY3Rpb24oKXt0aGlzLmVudGVyKCJyZWZyZXNoaW5nIiksdGhpcy50cmlnZ2VyKCJyZWZyZXNoIiksdGhpcy5zZXR1cCgpLHRoaXMub3B0aW9uc0xvZ2ljKCksdGhpcy4kZWxlbWVudC5hZGRDbGFzcyh0aGlzLm9wdGlvbnMucmVmcmVzaENsYXNzKSx0aGlzLnVwZGF0ZSgpLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLnJlZnJlc2hDbGFzcyksdGhpcy5sZWF2ZSgicmVmcmVzaGluZyIpLHRoaXMudHJpZ2dlcigicmVmcmVzaGVkIil9LGUucHJvdG90eXBlLm9uVGhyb3R0bGVkUmVzaXplPWZ1bmN0aW9uKCl7Yi5jbGVhclRpbWVvdXQodGhpcy5yZXNpemVUaW1lciksdGhpcy5yZXNpemVUaW1lcj1iLnNldFRpbWVvdXQodGhpcy5faGFuZGxlcnMub25SZXNpemUsdGhpcy5zZXR0aW5ncy5yZXNwb25zaXZlUmVmcmVzaFJhdGUpfSxlLnByb3RvdHlwZS5vblJlc2l6ZT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5faXRlbXMubGVuZ3RoJiYodGhpcy5fd2lkdGghPT10aGlzLiRlbGVtZW50LndpZHRoKCkmJighIXRoaXMuaXNWaXNpYmxlKCkmJih0aGlzLmVudGVyKCJyZXNpemluZyIpLHRoaXMudHJpZ2dlcigicmVzaXplIikuaXNEZWZhdWx0UHJldmVudGVkKCk/KHRoaXMubGVhdmUoInJlc2l6aW5nIiksITEpOih0aGlzLmludmFsaWRhdGUoIndpZHRoIiksdGhpcy5yZWZyZXNoKCksdGhpcy5sZWF2ZSgicmVzaXppbmciKSx2b2lkIHRoaXMudHJpZ2dlcigicmVzaXplZCIpKSkpKX0sZS5wcm90b3R5cGUucmVnaXN0ZXJFdmVudEhhbmRsZXJzPWZ1bmN0aW9uKCl7YS5zdXBwb3J0LnRyYW5zaXRpb24mJnRoaXMuJHN0YWdlLm9uKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCsiLm93bC5jb3JlIixhLnByb3h5KHRoaXMub25UcmFuc2l0aW9uRW5kLHRoaXMpKSwhMSE9PXRoaXMuc2V0dGluZ3MucmVzcG9uc2l2ZSYmdGhpcy5vbihiLCJyZXNpemUiLHRoaXMuX2hhbmRsZXJzLm9uVGhyb3R0bGVkUmVzaXplKSx0aGlzLnNldHRpbmdzLm1vdXNlRHJhZyYmKHRoaXMuJGVsZW1lbnQuYWRkQ2xhc3ModGhpcy5vcHRpb25zLmRyYWdDbGFzcyksdGhpcy4kc3RhZ2Uub24oIm1vdXNlZG93bi5vd2wuY29yZSIsYS5wcm94eSh0aGlzLm9uRHJhZ1N0YXJ0LHRoaXMpKSx0aGlzLiRzdGFnZS5vbigiZHJhZ3N0YXJ0Lm93bC5jb3JlIHNlbGVjdHN0YXJ0Lm93bC5jb3JlIixmdW5jdGlvbigpe3JldHVybiExfSkpLHRoaXMuc2V0dGluZ3MudG91Y2hEcmFnJiYodGhpcy4kc3RhZ2Uub24oInRvdWNoc3RhcnQub3dsLmNvcmUiLGEucHJveHkodGhpcy5vbkRyYWdTdGFydCx0aGlzKSksdGhpcy4kc3RhZ2Uub24oInRvdWNoY2FuY2VsLm93bC5jb3JlIixhLnByb3h5KHRoaXMub25EcmFnRW5kLHRoaXMpKSl9LGUucHJvdG90eXBlLm9uRHJhZ1N0YXJ0PWZ1bmN0aW9uKGIpe3ZhciBkPW51bGw7MyE9PWIud2hpY2gmJihhLnN1cHBvcnQudHJhbnNmb3JtPyhkPXRoaXMuJHN0YWdlLmNzcygidHJhbnNmb3JtIikucmVwbGFjZSgvLipcKHxcKXwgL2csIiIpLnNwbGl0KCIsIiksZD17eDpkWzE2PT09ZC5sZW5ndGg/MTI6NF0seTpkWzE2PT09ZC5sZW5ndGg/MTM6NV19KTooZD10aGlzLiRzdGFnZS5wb3NpdGlvbigpLGQ9e3g6dGhpcy5zZXR0aW5ncy5ydGw/ZC5sZWZ0K3RoaXMuJHN0YWdlLndpZHRoKCktdGhpcy53aWR0aCgpK3RoaXMuc2V0dGluZ3MubWFyZ2luOmQubGVmdCx5OmQudG9wfSksdGhpcy5pcygiYW5pbWF0aW5nIikmJihhLnN1cHBvcnQudHJhbnNmb3JtP3RoaXMuYW5pbWF0ZShkLngpOnRoaXMuJHN0YWdlLnN0b3AoKSx0aGlzLmludmFsaWRhdGUoInBvc2l0aW9uIikpLHRoaXMuJGVsZW1lbnQudG9nZ2xlQ2xhc3ModGhpcy5vcHRpb25zLmdyYWJDbGFzcywibW91c2Vkb3duIj09PWIudHlwZSksdGhpcy5zcGVlZCgwKSx0aGlzLl9kcmFnLnRpbWU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdGhpcy5fZHJhZy50YXJnZXQ9YShiLnRhcmdldCksdGhpcy5fZHJhZy5zdGFnZS5zdGFydD1kLHRoaXMuX2RyYWcuc3RhZ2UuY3VycmVudD1kLHRoaXMuX2RyYWcucG9pbnRlcj10aGlzLnBvaW50ZXIoYiksYShjKS5vbigibW91c2V1cC5vd2wuY29yZSB0b3VjaGVuZC5vd2wuY29yZSIsYS5wcm94eSh0aGlzLm9uRHJhZ0VuZCx0aGlzKSksYShjKS5vbmUoIm1vdXNlbW92ZS5vd2wuY29yZSB0b3VjaG1vdmUub3dsLmNvcmUiLGEucHJveHkoZnVuY3Rpb24oYil7dmFyIGQ9dGhpcy5kaWZmZXJlbmNlKHRoaXMuX2RyYWcucG9pbnRlcix0aGlzLnBvaW50ZXIoYikpO2EoYykub24oIm1vdXNlbW92ZS5vd2wuY29yZSB0b3VjaG1vdmUub3dsLmNvcmUiLGEucHJveHkodGhpcy5vbkRyYWdNb3ZlLHRoaXMpKSxNYXRoLmFicyhkLngpPE1hdGguYWJzKGQueSkmJnRoaXMuaXMoInZhbGlkIil8fChiLnByZXZlbnREZWZhdWx0KCksdGhpcy5lbnRlcigiZHJhZ2dpbmciKSx0aGlzLnRyaWdnZXIoImRyYWciKSl9LHRoaXMpKSl9LGUucHJvdG90eXBlLm9uRHJhZ01vdmU9ZnVuY3Rpb24oYSl7dmFyIGI9bnVsbCxjPW51bGwsZD1udWxsLGU9dGhpcy5kaWZmZXJlbmNlKHRoaXMuX2RyYWcucG9pbnRlcix0aGlzLnBvaW50ZXIoYSkpLGY9dGhpcy5kaWZmZXJlbmNlKHRoaXMuX2RyYWcuc3RhZ2Uuc3RhcnQsZSk7dGhpcy5pcygiZHJhZ2dpbmciKSYmKGEucHJldmVudERlZmF1bHQoKSx0aGlzLnNldHRpbmdzLmxvb3A/KGI9dGhpcy5jb29yZGluYXRlcyh0aGlzLm1pbmltdW0oKSksYz10aGlzLmNvb3JkaW5hdGVzKHRoaXMubWF4aW11bSgpKzEpLWIsZi54PSgoZi54LWIpJWMrYyklYytiKTooYj10aGlzLnNldHRpbmdzLnJ0bD90aGlzLmNvb3JkaW5hdGVzKHRoaXMubWF4aW11bSgpKTp0aGlzLmNvb3JkaW5hdGVzKHRoaXMubWluaW11bSgpKSxjPXRoaXMuc2V0dGluZ3MucnRsP3RoaXMuY29vcmRpbmF0ZXModGhpcy5taW5pbXVtKCkpOnRoaXMuY29vcmRpbmF0ZXModGhpcy5tYXhpbXVtKCkpLGQ9dGhpcy5zZXR0aW5ncy5wdWxsRHJhZz8tMSplLngvNTowLGYueD1NYXRoLm1heChNYXRoLm1pbihmLngsYitkKSxjK2QpKSx0aGlzLl9kcmFnLnN0YWdlLmN1cnJlbnQ9Zix0aGlzLmFuaW1hdGUoZi54KSl9LGUucHJvdG90eXBlLm9uRHJhZ0VuZD1mdW5jdGlvbihiKXt2YXIgZD10aGlzLmRpZmZlcmVuY2UodGhpcy5fZHJhZy5wb2ludGVyLHRoaXMucG9pbnRlcihiKSksZT10aGlzLl9kcmFnLnN0YWdlLmN1cnJlbnQsZj1kLng+MF50aGlzLnNldHRpbmdzLnJ0bD8ibGVmdCI6InJpZ2h0IjthKGMpLm9mZigiLm93bC5jb3JlIiksdGhpcy4kZWxlbWVudC5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMuZ3JhYkNsYXNzKSwoMCE9PWQueCYmdGhpcy5pcygiZHJhZ2dpbmciKXx8IXRoaXMuaXMoInZhbGlkIikpJiYodGhpcy5zcGVlZCh0aGlzLnNldHRpbmdzLmRyYWdFbmRTcGVlZHx8dGhpcy5zZXR0aW5ncy5zbWFydFNwZWVkKSx0aGlzLmN1cnJlbnQodGhpcy5jbG9zZXN0KGUueCwwIT09ZC54P2Y6dGhpcy5fZHJhZy5kaXJlY3Rpb24pKSx0aGlzLmludmFsaWRhdGUoInBvc2l0aW9uIiksdGhpcy51cGRhdGUoKSx0aGlzLl9kcmFnLmRpcmVjdGlvbj1mLChNYXRoLmFicyhkLngpPjN8fChuZXcgRGF0ZSkuZ2V0VGltZSgpLXRoaXMuX2RyYWcudGltZT4zMDApJiZ0aGlzLl9kcmFnLnRhcmdldC5vbmUoImNsaWNrLm93bC5jb3JlIixmdW5jdGlvbigpe3JldHVybiExfSkpLHRoaXMuaXMoImRyYWdnaW5nIikmJih0aGlzLmxlYXZlKCJkcmFnZ2luZyIpLHRoaXMudHJpZ2dlcigiZHJhZ2dlZCIpKX0sZS5wcm90b3R5cGUuY2xvc2VzdD1mdW5jdGlvbihiLGMpe3ZhciBlPS0xLGY9MzAsZz10aGlzLndpZHRoKCksaD10aGlzLmNvb3JkaW5hdGVzKCk7cmV0dXJuIHRoaXMuc2V0dGluZ3MuZnJlZURyYWd8fGEuZWFjaChoLGEucHJveHkoZnVuY3Rpb24oYSxpKXtyZXR1cm4ibGVmdCI9PT1jJiZiPmktZiYmYjxpK2Y/ZT1hOiJyaWdodCI9PT1jJiZiPmktZy1mJiZiPGktZytmP2U9YSsxOnRoaXMub3AoYiwiPCIsaSkmJnRoaXMub3AoYiwiPiIsaFthKzFdIT09ZD9oW2ErMV06aS1nKSYmKGU9ImxlZnQiPT09Yz9hKzE6YSksLTE9PT1lfSx0aGlzKSksdGhpcy5zZXR0aW5ncy5sb29wfHwodGhpcy5vcChiLCI+IixoW3RoaXMubWluaW11bSgpXSk/ZT1iPXRoaXMubWluaW11bSgpOnRoaXMub3AoYiwiPCIsaFt0aGlzLm1heGltdW0oKV0pJiYoZT1iPXRoaXMubWF4aW11bSgpKSksZX0sZS5wcm90b3R5cGUuYW5pbWF0ZT1mdW5jdGlvbihiKXt2YXIgYz10aGlzLnNwZWVkKCk+MDt0aGlzLmlzKCJhbmltYXRpbmciKSYmdGhpcy5vblRyYW5zaXRpb25FbmQoKSxjJiYodGhpcy5lbnRlcigiYW5pbWF0aW5nIiksdGhpcy50cmlnZ2VyKCJ0cmFuc2xhdGUiKSksYS5zdXBwb3J0LnRyYW5zZm9ybTNkJiZhLnN1cHBvcnQudHJhbnNpdGlvbj90aGlzLiRzdGFnZS5jc3Moe3RyYW5zZm9ybToidHJhbnNsYXRlM2QoIitiKyJweCwwcHgsMHB4KSIsdHJhbnNpdGlvbjp0aGlzLnNwZWVkKCkvMWUzKyJzIisodGhpcy5zZXR0aW5ncy5zbGlkZVRyYW5zaXRpb24/IiAiK3RoaXMuc2V0dGluZ3Muc2xpZGVUcmFuc2l0aW9uOiIiKX0pOmM/dGhpcy4kc3RhZ2UuYW5pbWF0ZSh7bGVmdDpiKyJweCJ9LHRoaXMuc3BlZWQoKSx0aGlzLnNldHRpbmdzLmZhbGxiYWNrRWFzaW5nLGEucHJveHkodGhpcy5vblRyYW5zaXRpb25FbmQsdGhpcykpOnRoaXMuJHN0YWdlLmNzcyh7bGVmdDpiKyJweCJ9KX0sZS5wcm90b3R5cGUuaXM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuX3N0YXRlcy5jdXJyZW50W2FdJiZ0aGlzLl9zdGF0ZXMuY3VycmVudFthXT4wfSxlLnByb3RvdHlwZS5jdXJyZW50PWZ1bmN0aW9uKGEpe2lmKGE9PT1kKXJldHVybiB0aGlzLl9jdXJyZW50O2lmKDA9PT10aGlzLl9pdGVtcy5sZW5ndGgpcmV0dXJuIGQ7aWYoYT10aGlzLm5vcm1hbGl6ZShhKSx0aGlzLl9jdXJyZW50IT09YSl7dmFyIGI9dGhpcy50cmlnZ2VyKCJjaGFuZ2UiLHtwcm9wZXJ0eTp7bmFtZToicG9zaXRpb24iLHZhbHVlOmF9fSk7Yi5kYXRhIT09ZCYmKGE9dGhpcy5ub3JtYWxpemUoYi5kYXRhKSksdGhpcy5fY3VycmVudD1hLHRoaXMuaW52YWxpZGF0ZSgicG9zaXRpb24iKSx0aGlzLnRyaWdnZXIoImNoYW5nZWQiLHtwcm9wZXJ0eTp7bmFtZToicG9zaXRpb24iLHZhbHVlOnRoaXMuX2N1cnJlbnR9fSl9cmV0dXJuIHRoaXMuX2N1cnJlbnR9LGUucHJvdG90eXBlLmludmFsaWRhdGU9ZnVuY3Rpb24oYil7cmV0dXJuInN0cmluZyI9PT1hLnR5cGUoYikmJih0aGlzLl9pbnZhbGlkYXRlZFtiXT0hMCx0aGlzLmlzKCJ2YWxpZCIpJiZ0aGlzLmxlYXZlKCJ2YWxpZCIpKSxhLm1hcCh0aGlzLl9pbnZhbGlkYXRlZCxmdW5jdGlvbihhLGIpe3JldHVybiBifSl9LGUucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKGEpeyhhPXRoaXMubm9ybWFsaXplKGEpKSE9PWQmJih0aGlzLl9zcGVlZD0wLHRoaXMuX2N1cnJlbnQ9YSx0aGlzLnN1cHByZXNzKFsidHJhbnNsYXRlIiwidHJhbnNsYXRlZCJdKSx0aGlzLmFuaW1hdGUodGhpcy5jb29yZGluYXRlcyhhKSksdGhpcy5yZWxlYXNlKFsidHJhbnNsYXRlIiwidHJhbnNsYXRlZCJdKSl9LGUucHJvdG90eXBlLm5vcm1hbGl6ZT1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuX2l0ZW1zLmxlbmd0aCxlPWI/MDp0aGlzLl9jbG9uZXMubGVuZ3RoO3JldHVybiF0aGlzLmlzTnVtZXJpYyhhKXx8YzwxP2E9ZDooYTwwfHxhPj1jK2UpJiYoYT0oKGEtZS8yKSVjK2MpJWMrZS8yKSxhfSxlLnByb3RvdHlwZS5yZWxhdGl2ZT1mdW5jdGlvbihhKXtyZXR1cm4gYS09dGhpcy5fY2xvbmVzLmxlbmd0aC8yLHRoaXMubm9ybWFsaXplKGEsITApfSxlLnByb3RvdHlwZS5tYXhpbXVtPWZ1bmN0aW9uKGEpe3ZhciBiLGMsZCxlPXRoaXMuc2V0dGluZ3MsZj10aGlzLl9jb29yZGluYXRlcy5sZW5ndGg7aWYoZS5sb29wKWY9dGhpcy5fY2xvbmVzLmxlbmd0aC8yK3RoaXMuX2l0ZW1zLmxlbmd0aC0xO2Vsc2UgaWYoZS5hdXRvV2lkdGh8fGUubWVyZ2Upe2lmKGI9dGhpcy5faXRlbXMubGVuZ3RoKWZvcihjPXRoaXMuX2l0ZW1zWy0tYl0ud2lkdGgoKSxkPXRoaXMuJGVsZW1lbnQud2lkdGgoKTtiLS0mJiEoKGMrPXRoaXMuX2l0ZW1zW2JdLndpZHRoKCkrdGhpcy5zZXR0aW5ncy5tYXJnaW4pPmQpOyk7Zj1iKzF9ZWxzZSBmPWUuY2VudGVyP3RoaXMuX2l0ZW1zLmxlbmd0aC0xOnRoaXMuX2l0ZW1zLmxlbmd0aC1lLml0ZW1zO3JldHVybiBhJiYoZi09dGhpcy5fY2xvbmVzLmxlbmd0aC8yKSxNYXRoLm1heChmLDApfSxlLnByb3RvdHlwZS5taW5pbXVtPWZ1bmN0aW9uKGEpe3JldHVybiBhPzA6dGhpcy5fY2xvbmVzLmxlbmd0aC8yfSxlLnByb3RvdHlwZS5pdGVtcz1mdW5jdGlvbihhKXtyZXR1cm4gYT09PWQ/dGhpcy5faXRlbXMuc2xpY2UoKTooYT10aGlzLm5vcm1hbGl6ZShhLCEwKSx0aGlzLl9pdGVtc1thXSl9LGUucHJvdG90eXBlLm1lcmdlcnM9ZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT1kP3RoaXMuX21lcmdlcnMuc2xpY2UoKTooYT10aGlzLm5vcm1hbGl6ZShhLCEwKSx0aGlzLl9tZXJnZXJzW2FdKX0sZS5wcm90b3R5cGUuY2xvbmVzPWZ1bmN0aW9uKGIpe3ZhciBjPXRoaXMuX2Nsb25lcy5sZW5ndGgvMixlPWMrdGhpcy5faXRlbXMubGVuZ3RoLGY9ZnVuY3Rpb24oYSl7cmV0dXJuIGElMj09MD9lK2EvMjpjLShhKzEpLzJ9O3JldHVybiBiPT09ZD9hLm1hcCh0aGlzLl9jbG9uZXMsZnVuY3Rpb24oYSxiKXtyZXR1cm4gZihiKX0pOmEubWFwKHRoaXMuX2Nsb25lcyxmdW5jdGlvbihhLGMpe3JldHVybiBhPT09Yj9mKGMpOm51bGx9KX0sZS5wcm90b3R5cGUuc3BlZWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPT1kJiYodGhpcy5fc3BlZWQ9YSksdGhpcy5fc3BlZWR9LGUucHJvdG90eXBlLmNvb3JkaW5hdGVzPWZ1bmN0aW9uKGIpe3ZhciBjLGU9MSxmPWItMTtyZXR1cm4gYj09PWQ/YS5tYXAodGhpcy5fY29vcmRpbmF0ZXMsYS5wcm94eShmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmNvb3JkaW5hdGVzKGIpfSx0aGlzKSk6KHRoaXMuc2V0dGluZ3MuY2VudGVyPyh0aGlzLnNldHRpbmdzLnJ0bCYmKGU9LTEsZj1iKzEpLGM9dGhpcy5fY29vcmRpbmF0ZXNbYl0sYys9KHRoaXMud2lkdGgoKS1jKyh0aGlzLl9jb29yZGluYXRlc1tmXXx8MCkpLzIqZSk6Yz10aGlzLl9jb29yZGluYXRlc1tmXXx8MCxjPU1hdGguY2VpbChjKSl9LGUucHJvdG90eXBlLmR1cmF0aW9uPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gMD09PWM/MDpNYXRoLm1pbihNYXRoLm1heChNYXRoLmFicyhiLWEpLDEpLDYpKk1hdGguYWJzKGN8fHRoaXMuc2V0dGluZ3Muc21hcnRTcGVlZCl9LGUucHJvdG90eXBlLnRvPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5jdXJyZW50KCksZD1udWxsLGU9YS10aGlzLnJlbGF0aXZlKGMpLGY9KGU+MCktKGU8MCksZz10aGlzLl9pdGVtcy5sZW5ndGgsaD10aGlzLm1pbmltdW0oKSxpPXRoaXMubWF4aW11bSgpO3RoaXMuc2V0dGluZ3MubG9vcD8oIXRoaXMuc2V0dGluZ3MucmV3aW5kJiZNYXRoLmFicyhlKT5nLzImJihlKz0tMSpmKmcpLGE9YytlLChkPSgoYS1oKSVnK2cpJWcraCkhPT1hJiZkLWU8PWkmJmQtZT4wJiYoYz1kLWUsYT1kLHRoaXMucmVzZXQoYykpKTp0aGlzLnNldHRpbmdzLnJld2luZD8oaSs9MSxhPShhJWkraSklaSk6YT1NYXRoLm1heChoLE1hdGgubWluKGksYSkpLHRoaXMuc3BlZWQodGhpcy5kdXJhdGlvbihjLGEsYikpLHRoaXMuY3VycmVudChhKSx0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLnVwZGF0ZSgpfSxlLnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKGEpe2E9YXx8ITEsdGhpcy50byh0aGlzLnJlbGF0aXZlKHRoaXMuY3VycmVudCgpKSsxLGEpfSxlLnByb3RvdHlwZS5wcmV2PWZ1bmN0aW9uKGEpe2E9YXx8ITEsdGhpcy50byh0aGlzLnJlbGF0aXZlKHRoaXMuY3VycmVudCgpKS0xLGEpfSxlLnByb3RvdHlwZS5vblRyYW5zaXRpb25FbmQ9ZnVuY3Rpb24oYSl7aWYoYSE9PWQmJihhLnN0b3BQcm9wYWdhdGlvbigpLChhLnRhcmdldHx8YS5zcmNFbGVtZW50fHxhLm9yaWdpbmFsVGFyZ2V0KSE9PXRoaXMuJHN0YWdlLmdldCgwKSkpcmV0dXJuITE7dGhpcy5sZWF2ZSgiYW5pbWF0aW5nIiksdGhpcy50cmlnZ2VyKCJ0cmFuc2xhdGVkIil9LGUucHJvdG90eXBlLnZpZXdwb3J0PWZ1bmN0aW9uKCl7dmFyIGQ7cmV0dXJuIHRoaXMub3B0aW9ucy5yZXNwb25zaXZlQmFzZUVsZW1lbnQhPT1iP2Q9YSh0aGlzLm9wdGlvbnMucmVzcG9uc2l2ZUJhc2VFbGVtZW50KS53aWR0aCgpOmIuaW5uZXJXaWR0aD9kPWIuaW5uZXJXaWR0aDpjLmRvY3VtZW50RWxlbWVudCYmYy5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg/ZD1jLmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aDpjb25zb2xlLndhcm4oIkNhbiBub3QgZGV0ZWN0IHZpZXdwb3J0IHdpZHRoLiIpLGR9LGUucHJvdG90eXBlLnJlcGxhY2U9ZnVuY3Rpb24oYil7dGhpcy4kc3RhZ2UuZW1wdHkoKSx0aGlzLl9pdGVtcz1bXSxiJiYoYj1iIGluc3RhbmNlb2YgalF1ZXJ5P2I6YShiKSksdGhpcy5zZXR0aW5ncy5uZXN0ZWRJdGVtU2VsZWN0b3ImJihiPWIuZmluZCgiLiIrdGhpcy5zZXR0aW5ncy5uZXN0ZWRJdGVtU2VsZWN0b3IpKSxiLmZpbHRlcihmdW5jdGlvbigpe3JldHVybiAxPT09dGhpcy5ub2RlVHlwZX0pLmVhY2goYS5wcm94eShmdW5jdGlvbihhLGIpe2I9dGhpcy5wcmVwYXJlKGIpLHRoaXMuJHN0YWdlLmFwcGVuZChiKSx0aGlzLl9pdGVtcy5wdXNoKGIpLHRoaXMuX21lcmdlcnMucHVzaCgxKmIuZmluZCgiW2RhdGEtbWVyZ2VdIikuYWRkQmFjaygiW2RhdGEtbWVyZ2VdIikuYXR0cigiZGF0YS1tZXJnZSIpfHwxKX0sdGhpcykpLHRoaXMucmVzZXQodGhpcy5pc051bWVyaWModGhpcy5zZXR0aW5ncy5zdGFydFBvc2l0aW9uKT90aGlzLnNldHRpbmdzLnN0YXJ0UG9zaXRpb246MCksdGhpcy5pbnZhbGlkYXRlKCJpdGVtcyIpfSxlLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYixjKXt2YXIgZT10aGlzLnJlbGF0aXZlKHRoaXMuX2N1cnJlbnQpO2M9Yz09PWQ/dGhpcy5faXRlbXMubGVuZ3RoOnRoaXMubm9ybWFsaXplKGMsITApLGI9YiBpbnN0YW5jZW9mIGpRdWVyeT9iOmEoYiksdGhpcy50cmlnZ2VyKCJhZGQiLHtjb250ZW50OmIscG9zaXRpb246Y30pLGI9dGhpcy5wcmVwYXJlKGIpLDA9PT10aGlzLl9pdGVtcy5sZW5ndGh8fGM9PT10aGlzLl9pdGVtcy5sZW5ndGg/KDA9PT10aGlzLl9pdGVtcy5sZW5ndGgmJnRoaXMuJHN0YWdlLmFwcGVuZChiKSwwIT09dGhpcy5faXRlbXMubGVuZ3RoJiZ0aGlzLl9pdGVtc1tjLTFdLmFmdGVyKGIpLHRoaXMuX2l0ZW1zLnB1c2goYiksdGhpcy5fbWVyZ2Vycy5wdXNoKDEqYi5maW5kKCJbZGF0YS1tZXJnZV0iKS5hZGRCYWNrKCJbZGF0YS1tZXJnZV0iKS5hdHRyKCJkYXRhLW1lcmdlIil8fDEpKToodGhpcy5faXRlbXNbY10uYmVmb3JlKGIpLHRoaXMuX2l0ZW1zLnNwbGljZShjLDAsYiksdGhpcy5fbWVyZ2Vycy5zcGxpY2UoYywwLDEqYi5maW5kKCJbZGF0YS1tZXJnZV0iKS5hZGRCYWNrKCJbZGF0YS1tZXJnZV0iKS5hdHRyKCJkYXRhLW1lcmdlIil8fDEpKSx0aGlzLl9pdGVtc1tlXSYmdGhpcy5yZXNldCh0aGlzLl9pdGVtc1tlXS5pbmRleCgpKSx0aGlzLmludmFsaWRhdGUoIml0ZW1zIiksdGhpcy50cmlnZ2VyKCJhZGRlZCIse2NvbnRlbnQ6Yixwb3NpdGlvbjpjfSl9LGUucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihhKXsoYT10aGlzLm5vcm1hbGl6ZShhLCEwKSkhPT1kJiYodGhpcy50cmlnZ2VyKCJyZW1vdmUiLHtjb250ZW50OnRoaXMuX2l0ZW1zW2FdLHBvc2l0aW9uOmF9KSx0aGlzLl9pdGVtc1thXS5yZW1vdmUoKSx0aGlzLl9pdGVtcy5zcGxpY2UoYSwxKSx0aGlzLl9tZXJnZXJzLnNwbGljZShhLDEpLHRoaXMuaW52YWxpZGF0ZSgiaXRlbXMiKSx0aGlzLnRyaWdnZXIoInJlbW92ZWQiLHtjb250ZW50Om51bGwscG9zaXRpb246YX0pKX0sZS5wcm90b3R5cGUucHJlbG9hZEF1dG9XaWR0aEltYWdlcz1mdW5jdGlvbihiKXtiLmVhY2goYS5wcm94eShmdW5jdGlvbihiLGMpe3RoaXMuZW50ZXIoInByZS1sb2FkaW5nIiksYz1hKGMpLGEobmV3IEltYWdlKS5vbmUoImxvYWQiLGEucHJveHkoZnVuY3Rpb24oYSl7Yy5hdHRyKCJzcmMiLGEudGFyZ2V0LnNyYyksYy5jc3MoIm9wYWNpdHkiLDEpLHRoaXMubGVhdmUoInByZS1sb2FkaW5nIiksIXRoaXMuaXMoInByZS1sb2FkaW5nIikmJiF0aGlzLmlzKCJpbml0aWFsaXppbmciKSYmdGhpcy5yZWZyZXNoKCl9LHRoaXMpKS5hdHRyKCJzcmMiLGMuYXR0cigic3JjIil8fGMuYXR0cigiZGF0YS1zcmMiKXx8Yy5hdHRyKCJkYXRhLXNyYy1yZXRpbmEiKSl9LHRoaXMpKX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3RoaXMuJGVsZW1lbnQub2ZmKCIub3dsLmNvcmUiKSx0aGlzLiRzdGFnZS5vZmYoIi5vd2wuY29yZSIpLGEoYykub2ZmKCIub3dsLmNvcmUiKSwhMSE9PXRoaXMuc2V0dGluZ3MucmVzcG9uc2l2ZSYmKGIuY2xlYXJUaW1lb3V0KHRoaXMucmVzaXplVGltZXIpLHRoaXMub2ZmKGIsInJlc2l6ZSIsdGhpcy5faGFuZGxlcnMub25UaHJvdHRsZWRSZXNpemUpKTtmb3IodmFyIGQgaW4gdGhpcy5fcGx1Z2lucyl0aGlzLl9wbHVnaW5zW2RdLmRlc3Ryb3koKTt0aGlzLiRzdGFnZS5jaGlsZHJlbigiLmNsb25lZCIpLnJlbW92ZSgpLHRoaXMuJHN0YWdlLnVud3JhcCgpLHRoaXMuJHN0YWdlLmNoaWxkcmVuKCkuY29udGVudHMoKS51bndyYXAoKSx0aGlzLiRzdGFnZS5jaGlsZHJlbigpLnVud3JhcCgpLHRoaXMuJHN0YWdlLnJlbW92ZSgpLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLnJlZnJlc2hDbGFzcykucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmxvYWRpbmdDbGFzcykucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmxvYWRlZENsYXNzKS5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMucnRsQ2xhc3MpLnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5kcmFnQ2xhc3MpLnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5ncmFiQ2xhc3MpLmF0dHIoImNsYXNzIix0aGlzLiRlbGVtZW50LmF0dHIoImNsYXNzIikucmVwbGFjZShuZXcgUmVnRXhwKHRoaXMub3B0aW9ucy5yZXNwb25zaXZlQ2xhc3MrIi1cXFMrXFxzIiwiZyIpLCIiKSkucmVtb3ZlRGF0YSgib3dsLmNhcm91c2VsIil9LGUucHJvdG90eXBlLm9wPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10aGlzLnNldHRpbmdzLnJ0bDtzd2l0Y2goYil7Y2FzZSI8IjpyZXR1cm4gZD9hPmM6YTxjO2Nhc2UiPiI6cmV0dXJuIGQ/YTxjOmE+YztjYXNlIj49IjpyZXR1cm4gZD9hPD1jOmE+PWM7Y2FzZSI8PSI6cmV0dXJuIGQ/YT49YzphPD1jfX0sZS5wcm90b3R5cGUub249ZnVuY3Rpb24oYSxiLGMsZCl7YS5hZGRFdmVudExpc3RlbmVyP2EuYWRkRXZlbnRMaXN0ZW5lcihiLGMsZCk6YS5hdHRhY2hFdmVudCYmYS5hdHRhY2hFdmVudCgib24iK2IsYyl9LGUucHJvdG90eXBlLm9mZj1mdW5jdGlvbihhLGIsYyxkKXthLnJlbW92ZUV2ZW50TGlzdGVuZXI/YS5yZW1vdmVFdmVudExpc3RlbmVyKGIsYyxkKTphLmRldGFjaEV2ZW50JiZhLmRldGFjaEV2ZW50KCJvbiIrYixjKX0sZS5wcm90b3R5cGUudHJpZ2dlcj1mdW5jdGlvbihiLGMsZCxmLGcpe3ZhciBoPXtpdGVtOntjb3VudDp0aGlzLl9pdGVtcy5sZW5ndGgsaW5kZXg6dGhpcy5jdXJyZW50KCl9fSxpPWEuY2FtZWxDYXNlKGEuZ3JlcChbIm9uIixiLGRdLGZ1bmN0aW9uKGEpe3JldHVybiBhfSkuam9pbigiLSIpLnRvTG93ZXJDYXNlKCkpLGo9YS5FdmVudChbYiwib3dsIixkfHwiY2Fyb3VzZWwiXS5qb2luKCIuIikudG9Mb3dlckNhc2UoKSxhLmV4dGVuZCh7cmVsYXRlZFRhcmdldDp0aGlzfSxoLGMpKTtyZXR1cm4gdGhpcy5fc3VwcmVzc1tiXXx8KGEuZWFjaCh0aGlzLl9wbHVnaW5zLGZ1bmN0aW9uKGEsYil7Yi5vblRyaWdnZXImJmIub25UcmlnZ2VyKGopfSksdGhpcy5yZWdpc3Rlcih7dHlwZTplLlR5cGUuRXZlbnQsbmFtZTpifSksdGhpcy4kZWxlbWVudC50cmlnZ2VyKGopLHRoaXMuc2V0dGluZ3MmJiJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLnNldHRpbmdzW2ldJiZ0aGlzLnNldHRpbmdzW2ldLmNhbGwodGhpcyxqKSksan0sZS5wcm90b3R5cGUuZW50ZXI9ZnVuY3Rpb24oYil7YS5lYWNoKFtiXS5jb25jYXQodGhpcy5fc3RhdGVzLnRhZ3NbYl18fFtdKSxhLnByb3h5KGZ1bmN0aW9uKGEsYil7dGhpcy5fc3RhdGVzLmN1cnJlbnRbYl09PT1kJiYodGhpcy5fc3RhdGVzLmN1cnJlbnRbYl09MCksdGhpcy5fc3RhdGVzLmN1cnJlbnRbYl0rK30sdGhpcykpfSxlLnByb3RvdHlwZS5sZWF2ZT1mdW5jdGlvbihiKXthLmVhY2goW2JdLmNvbmNhdCh0aGlzLl9zdGF0ZXMudGFnc1tiXXx8W10pLGEucHJveHkoZnVuY3Rpb24oYSxiKXt0aGlzLl9zdGF0ZXMuY3VycmVudFtiXS0tfSx0aGlzKSl9LGUucHJvdG90eXBlLnJlZ2lzdGVyPWZ1bmN0aW9uKGIpe2lmKGIudHlwZT09PWUuVHlwZS5FdmVudCl7aWYoYS5ldmVudC5zcGVjaWFsW2IubmFtZV18fChhLmV2ZW50LnNwZWNpYWxbYi5uYW1lXT17fSksIWEuZXZlbnQuc3BlY2lhbFtiLm5hbWVdLm93bCl7dmFyIGM9YS5ldmVudC5zcGVjaWFsW2IubmFtZV0uX2RlZmF1bHQ7YS5ldmVudC5zcGVjaWFsW2IubmFtZV0uX2RlZmF1bHQ9ZnVuY3Rpb24oYSl7cmV0dXJuIWN8fCFjLmFwcGx5fHxhLm5hbWVzcGFjZSYmLTEhPT1hLm5hbWVzcGFjZS5pbmRleE9mKCJvd2wiKT9hLm5hbWVzcGFjZSYmYS5uYW1lc3BhY2UuaW5kZXhPZigib3dsIik+LTE6Yy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LGEuZXZlbnQuc3BlY2lhbFtiLm5hbWVdLm93bD0hMH19ZWxzZSBiLnR5cGU9PT1lLlR5cGUuU3RhdGUmJih0aGlzLl9zdGF0ZXMudGFnc1tiLm5hbWVdP3RoaXMuX3N0YXRlcy50YWdzW2IubmFtZV09dGhpcy5fc3RhdGVzLnRhZ3NbYi5uYW1lXS5jb25jYXQoYi50YWdzKTp0aGlzLl9zdGF0ZXMudGFnc1tiLm5hbWVdPWIudGFncyx0aGlzLl9zdGF0ZXMudGFnc1tiLm5hbWVdPWEuZ3JlcCh0aGlzLl9zdGF0ZXMudGFnc1tiLm5hbWVdLGEucHJveHkoZnVuY3Rpb24oYyxkKXtyZXR1cm4gYS5pbkFycmF5KGMsdGhpcy5fc3RhdGVzLnRhZ3NbYi5uYW1lXSk9PT1kfSx0aGlzKSkpfSxlLnByb3RvdHlwZS5zdXBwcmVzcz1mdW5jdGlvbihiKXthLmVhY2goYixhLnByb3h5KGZ1bmN0aW9uKGEsYil7dGhpcy5fc3VwcmVzc1tiXT0hMH0sdGhpcykpfSxlLnByb3RvdHlwZS5yZWxlYXNlPWZ1bmN0aW9uKGIpe2EuZWFjaChiLGEucHJveHkoZnVuY3Rpb24oYSxiKXtkZWxldGUgdGhpcy5fc3VwcmVzc1tiXX0sdGhpcykpfSxlLnByb3RvdHlwZS5wb2ludGVyPWZ1bmN0aW9uKGEpe3ZhciBjPXt4Om51bGwseTpudWxsfTtyZXR1cm4gYT1hLm9yaWdpbmFsRXZlbnR8fGF8fGIuZXZlbnQsYT1hLnRvdWNoZXMmJmEudG91Y2hlcy5sZW5ndGg/YS50b3VjaGVzWzBdOmEuY2hhbmdlZFRvdWNoZXMmJmEuY2hhbmdlZFRvdWNoZXMubGVuZ3RoP2EuY2hhbmdlZFRvdWNoZXNbMF06YSxhLnBhZ2VYPyhjLng9YS5wYWdlWCxjLnk9YS5wYWdlWSk6KGMueD1hLmNsaWVudFgsYy55PWEuY2xpZW50WSksY30sZS5wcm90b3R5cGUuaXNOdW1lcmljPWZ1bmN0aW9uKGEpe3JldHVybiFpc05hTihwYXJzZUZsb2F0KGEpKX0sZS5wcm90b3R5cGUuZGlmZmVyZW5jZT1mdW5jdGlvbihhLGIpe3JldHVybnt4OmEueC1iLngseTphLnktYi55fX0sYS5mbi5vd2xDYXJvdXNlbD1mdW5jdGlvbihiKXt2YXIgYz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBkPWEodGhpcyksZj1kLmRhdGEoIm93bC5jYXJvdXNlbCIpO2Z8fChmPW5ldyBlKHRoaXMsIm9iamVjdCI9PXR5cGVvZiBiJiZiKSxkLmRhdGEoIm93bC5jYXJvdXNlbCIsZiksYS5lYWNoKFsibmV4dCIsInByZXYiLCJ0byIsImRlc3Ryb3kiLCJyZWZyZXNoIiwicmVwbGFjZSIsImFkZCIsInJlbW92ZSJdLGZ1bmN0aW9uKGIsYyl7Zi5yZWdpc3Rlcih7dHlwZTplLlR5cGUuRXZlbnQsbmFtZTpjfSksZi4kZWxlbWVudC5vbihjKyIub3dsLmNhcm91c2VsLmNvcmUiLGEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJmEucmVsYXRlZFRhcmdldCE9PXRoaXMmJih0aGlzLnN1cHByZXNzKFtjXSksZltjXS5hcHBseSh0aGlzLFtdLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpKSx0aGlzLnJlbGVhc2UoW2NdKSl9LGYpKX0pKSwic3RyaW5nIj09dHlwZW9mIGImJiJfIiE9PWIuY2hhckF0KDApJiZmW2JdLmFwcGx5KGYsYyl9KX0sYS5mbi5vd2xDYXJvdXNlbC5Db25zdHJ1Y3Rvcj1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1mdW5jdGlvbihiKXt0aGlzLl9jb3JlPWIsdGhpcy5faW50ZXJ2YWw9bnVsbCx0aGlzLl92aXNpYmxlPW51bGwsdGhpcy5faGFuZGxlcnM9eyJpbml0aWFsaXplZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJnRoaXMuX2NvcmUuc2V0dGluZ3MuYXV0b1JlZnJlc2gmJnRoaXMud2F0Y2goKX0sdGhpcyl9LHRoaXMuX2NvcmUub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLHRoaXMuX2NvcmUub3B0aW9ucyksdGhpcy5fY29yZS4kZWxlbWVudC5vbih0aGlzLl9oYW5kbGVycyl9O2UuRGVmYXVsdHM9e2F1dG9SZWZyZXNoOiEwLGF1dG9SZWZyZXNoSW50ZXJ2YWw6NTAwfSxlLnByb3RvdHlwZS53YXRjaD1mdW5jdGlvbigpe3RoaXMuX2ludGVydmFsfHwodGhpcy5fdmlzaWJsZT10aGlzLl9jb3JlLmlzVmlzaWJsZSgpLHRoaXMuX2ludGVydmFsPWIuc2V0SW50ZXJ2YWwoYS5wcm94eSh0aGlzLnJlZnJlc2gsdGhpcyksdGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvUmVmcmVzaEludGVydmFsKSl9LGUucHJvdG90eXBlLnJlZnJlc2g9ZnVuY3Rpb24oKXt0aGlzLl9jb3JlLmlzVmlzaWJsZSgpIT09dGhpcy5fdmlzaWJsZSYmKHRoaXMuX3Zpc2libGU9IXRoaXMuX3Zpc2libGUsdGhpcy5fY29yZS4kZWxlbWVudC50b2dnbGVDbGFzcygib3dsLWhpZGRlbiIsIXRoaXMuX3Zpc2libGUpLHRoaXMuX3Zpc2libGUmJnRoaXMuX2NvcmUuaW52YWxpZGF0ZSgid2lkdGgiKSYmdGhpcy5fY29yZS5yZWZyZXNoKCkpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGEsYztiLmNsZWFySW50ZXJ2YWwodGhpcy5faW50ZXJ2YWwpO2ZvcihhIGluIHRoaXMuX2hhbmRsZXJzKXRoaXMuX2NvcmUuJGVsZW1lbnQub2ZmKGEsdGhpcy5faGFuZGxlcnNbYV0pO2ZvcihjIGluIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHRoaXMpKSJmdW5jdGlvbiIhPXR5cGVvZiB0aGlzW2NdJiYodGhpc1tjXT1udWxsKX0sYS5mbi5vd2xDYXJvdXNlbC5Db25zdHJ1Y3Rvci5QbHVnaW5zLkF1dG9SZWZyZXNoPWV9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpLGZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWZ1bmN0aW9uKGIpe3RoaXMuX2NvcmU9Yix0aGlzLl9sb2FkZWQ9W10sdGhpcy5faGFuZGxlcnM9eyJpbml0aWFsaXplZC5vd2wuY2Fyb3VzZWwgY2hhbmdlLm93bC5jYXJvdXNlbCByZXNpemVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihiKXtpZihiLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncyYmdGhpcy5fY29yZS5zZXR0aW5ncy5sYXp5TG9hZCYmKGIucHJvcGVydHkmJiJwb3NpdGlvbiI9PWIucHJvcGVydHkubmFtZXx8ImluaXRpYWxpemVkIj09Yi50eXBlKSl7dmFyIGM9dGhpcy5fY29yZS5zZXR0aW5ncyxlPWMuY2VudGVyJiZNYXRoLmNlaWwoYy5pdGVtcy8yKXx8Yy5pdGVtcyxmPWMuY2VudGVyJiYtMSplfHwwLGc9KGIucHJvcGVydHkmJmIucHJvcGVydHkudmFsdWUhPT1kP2IucHJvcGVydHkudmFsdWU6dGhpcy5fY29yZS5jdXJyZW50KCkpK2YsaD10aGlzLl9jb3JlLmNsb25lcygpLmxlbmd0aCxpPWEucHJveHkoZnVuY3Rpb24oYSxiKXt0aGlzLmxvYWQoYil9LHRoaXMpO2ZvcihjLmxhenlMb2FkRWFnZXI+MCYmKGUrPWMubGF6eUxvYWRFYWdlcixjLmxvb3AmJihnLT1jLmxhenlMb2FkRWFnZXIsZSsrKSk7ZisrPGU7KXRoaXMubG9hZChoLzIrdGhpcy5fY29yZS5yZWxhdGl2ZShnKSksaCYmYS5lYWNoKHRoaXMuX2NvcmUuY2xvbmVzKHRoaXMuX2NvcmUucmVsYXRpdmUoZykpLGkpLGcrK319LHRoaXMpfSx0aGlzLl9jb3JlLm9wdGlvbnM9YS5leHRlbmQoe30sZS5EZWZhdWx0cyx0aGlzLl9jb3JlLm9wdGlvbnMpLHRoaXMuX2NvcmUuJGVsZW1lbnQub24odGhpcy5faGFuZGxlcnMpfTtlLkRlZmF1bHRzPXtsYXp5TG9hZDohMSxsYXp5TG9hZEVhZ2VyOjB9LGUucHJvdG90eXBlLmxvYWQ9ZnVuY3Rpb24oYyl7dmFyIGQ9dGhpcy5fY29yZS4kc3RhZ2UuY2hpbGRyZW4oKS5lcShjKSxlPWQmJmQuZmluZCgiLm93bC1sYXp5Iik7IWV8fGEuaW5BcnJheShkLmdldCgwKSx0aGlzLl9sb2FkZWQpPi0xfHwoZS5lYWNoKGEucHJveHkoZnVuY3Rpb24oYyxkKXt2YXIgZSxmPWEoZCksZz1iLmRldmljZVBpeGVsUmF0aW8+MSYmZi5hdHRyKCJkYXRhLXNyYy1yZXRpbmEiKXx8Zi5hdHRyKCJkYXRhLXNyYyIpfHxmLmF0dHIoImRhdGEtc3Jjc2V0Iik7dGhpcy5fY29yZS50cmlnZ2VyKCJsb2FkIix7ZWxlbWVudDpmLHVybDpnfSwibGF6eSIpLGYuaXMoImltZyIpP2Yub25lKCJsb2FkLm93bC5sYXp5IixhLnByb3h5KGZ1bmN0aW9uKCl7Zi5jc3MoIm9wYWNpdHkiLDEpLHRoaXMuX2NvcmUudHJpZ2dlcigibG9hZGVkIix7ZWxlbWVudDpmLHVybDpnfSwibGF6eSIpfSx0aGlzKSkuYXR0cigic3JjIixnKTpmLmlzKCJzb3VyY2UiKT9mLm9uZSgibG9hZC5vd2wubGF6eSIsYS5wcm94eShmdW5jdGlvbigpe3RoaXMuX2NvcmUudHJpZ2dlcigibG9hZGVkIix7ZWxlbWVudDpmLHVybDpnfSwibGF6eSIpfSx0aGlzKSkuYXR0cigic3Jjc2V0IixnKTooZT1uZXcgSW1hZ2UsZS5vbmxvYWQ9YS5wcm94eShmdW5jdGlvbigpe2YuY3NzKHsiYmFja2dyb3VuZC1pbWFnZSI6J3VybCgiJytnKyciKScsb3BhY2l0eToiMSJ9KSx0aGlzLl9jb3JlLnRyaWdnZXIoImxvYWRlZCIse2VsZW1lbnQ6Zix1cmw6Z30sImxhenkiKX0sdGhpcyksZS5zcmM9Zyl9LHRoaXMpKSx0aGlzLl9sb2FkZWQucHVzaChkLmdldCgwKSkpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGEsYjtmb3IoYSBpbiB0aGlzLmhhbmRsZXJzKXRoaXMuX2NvcmUuJGVsZW1lbnQub2ZmKGEsdGhpcy5oYW5kbGVyc1thXSk7Zm9yKGIgaW4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGhpcykpImZ1bmN0aW9uIiE9dHlwZW9mIHRoaXNbYl0mJih0aGlzW2JdPW51bGwpfSxhLmZuLm93bENhcm91c2VsLkNvbnN0cnVjdG9yLlBsdWdpbnMuTGF6eT1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1mdW5jdGlvbihjKXt0aGlzLl9jb3JlPWMsdGhpcy5fcHJldmlvdXNIZWlnaHQ9bnVsbCx0aGlzLl9oYW5kbGVycz17ImluaXRpYWxpemVkLm93bC5jYXJvdXNlbCByZWZyZXNoZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9IZWlnaHQmJnRoaXMudXBkYXRlKCl9LHRoaXMpLCJjaGFuZ2VkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvSGVpZ2h0JiYicG9zaXRpb24iPT09YS5wcm9wZXJ0eS5uYW1lJiZ0aGlzLnVwZGF0ZSgpfSx0aGlzKSwibG9hZGVkLm93bC5sYXp5IjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9IZWlnaHQmJmEuZWxlbWVudC5jbG9zZXN0KCIuIit0aGlzLl9jb3JlLnNldHRpbmdzLml0ZW1DbGFzcykuaW5kZXgoKT09PXRoaXMuX2NvcmUuY3VycmVudCgpJiZ0aGlzLnVwZGF0ZSgpfSx0aGlzKX0sdGhpcy5fY29yZS5vcHRpb25zPWEuZXh0ZW5kKHt9LGUuRGVmYXVsdHMsdGhpcy5fY29yZS5vcHRpb25zKSx0aGlzLl9jb3JlLiRlbGVtZW50Lm9uKHRoaXMuX2hhbmRsZXJzKSx0aGlzLl9pbnRlcnZhbElkPW51bGw7dmFyIGQ9dGhpczthKGIpLm9uKCJsb2FkIixmdW5jdGlvbigpe2QuX2NvcmUuc2V0dGluZ3MuYXV0b0hlaWdodCYmZC51cGRhdGUoKX0pLGEoYikucmVzaXplKGZ1bmN0aW9uKCl7ZC5fY29yZS5zZXR0aW5ncy5hdXRvSGVpZ2h0JiYobnVsbCE9ZC5faW50ZXJ2YWxJZCYmY2xlYXJUaW1lb3V0KGQuX2ludGVydmFsSWQpLGQuX2ludGVydmFsSWQ9c2V0VGltZW91dChmdW5jdGlvbigpe2QudXBkYXRlKCl9LDI1MCkpfSl9O2UuRGVmYXVsdHM9e2F1dG9IZWlnaHQ6ITEsYXV0b0hlaWdodENsYXNzOiJvd2wtaGVpZ2h0In0sZS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKCl7dmFyIGI9dGhpcy5fY29yZS5fY3VycmVudCxjPWIrdGhpcy5fY29yZS5zZXR0aW5ncy5pdGVtcyxkPXRoaXMuX2NvcmUuc2V0dGluZ3MubGF6eUxvYWQsZT10aGlzLl9jb3JlLiRzdGFnZS5jaGlsZHJlbigpLnRvQXJyYXkoKS5zbGljZShiLGMpLGY9W10sZz0wO2EuZWFjaChlLGZ1bmN0aW9uKGIsYyl7Zi5wdXNoKGEoYykuaGVpZ2h0KCkpfSksZz1NYXRoLm1heC5hcHBseShudWxsLGYpLGc8PTEmJmQmJnRoaXMuX3ByZXZpb3VzSGVpZ2h0JiYoZz10aGlzLl9wcmV2aW91c0hlaWdodCksdGhpcy5fcHJldmlvdXNIZWlnaHQ9Zyx0aGlzLl9jb3JlLiRzdGFnZS5wYXJlbnQoKS5oZWlnaHQoZykuYWRkQ2xhc3ModGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvSGVpZ2h0Q2xhc3MpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGEsYjtmb3IoYSBpbiB0aGlzLl9oYW5kbGVycyl0aGlzLl9jb3JlLiRlbGVtZW50Lm9mZihhLHRoaXMuX2hhbmRsZXJzW2FdKTtmb3IoYiBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tiXSYmKHRoaXNbYl09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5BdXRvSGVpZ2h0PWV9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpLGZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWZ1bmN0aW9uKGIpe3RoaXMuX2NvcmU9Yix0aGlzLl92aWRlb3M9e30sdGhpcy5fcGxheWluZz1udWxsLHRoaXMuX2hhbmRsZXJzPXsiaW5pdGlhbGl6ZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnJlZ2lzdGVyKHt0eXBlOiJzdGF0ZSIsbmFtZToicGxheWluZyIsdGFnczpbImludGVyYWN0aW5nIl19KX0sdGhpcyksInJlc2l6ZS5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJnRoaXMuX2NvcmUuc2V0dGluZ3MudmlkZW8mJnRoaXMuaXNJbkZ1bGxTY3JlZW4oKSYmYS5wcmV2ZW50RGVmYXVsdCgpfSx0aGlzKSwicmVmcmVzaGVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5pcygicmVzaXppbmciKSYmdGhpcy5fY29yZS4kc3RhZ2UuZmluZCgiLmNsb25lZCAub3dsLXZpZGVvLWZyYW1lIikucmVtb3ZlKCl9LHRoaXMpLCJjaGFuZ2VkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmInBvc2l0aW9uIj09PWEucHJvcGVydHkubmFtZSYmdGhpcy5fcGxheWluZyYmdGhpcy5zdG9wKCl9LHRoaXMpLCJwcmVwYXJlZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYil7aWYoYi5uYW1lc3BhY2Upe3ZhciBjPWEoYi5jb250ZW50KS5maW5kKCIub3dsLXZpZGVvIik7Yy5sZW5ndGgmJihjLmNzcygiZGlzcGxheSIsIm5vbmUiKSx0aGlzLmZldGNoKGMsYShiLmNvbnRlbnQpKSl9fSx0aGlzKX0sdGhpcy5fY29yZS5vcHRpb25zPWEuZXh0ZW5kKHt9LGUuRGVmYXVsdHMsdGhpcy5fY29yZS5vcHRpb25zKSx0aGlzLl9jb3JlLiRlbGVtZW50Lm9uKHRoaXMuX2hhbmRsZXJzKSx0aGlzLl9jb3JlLiRlbGVtZW50Lm9uKCJjbGljay5vd2wudmlkZW8iLCIub3dsLXZpZGVvLXBsYXktaWNvbiIsYS5wcm94eShmdW5jdGlvbihhKXt0aGlzLnBsYXkoYSl9LHRoaXMpKX07ZS5EZWZhdWx0cz17dmlkZW86ITEsdmlkZW9IZWlnaHQ6ITEsdmlkZW9XaWR0aDohMX0sZS5wcm90b3R5cGUuZmV0Y2g9ZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbigpe3JldHVybiBhLmF0dHIoImRhdGEtdmltZW8taWQiKT8idmltZW8iOmEuYXR0cigiZGF0YS12emFhci1pZCIpPyJ2emFhciI6InlvdXR1YmUifSgpLGQ9YS5hdHRyKCJkYXRhLXZpbWVvLWlkIil8fGEuYXR0cigiZGF0YS15b3V0dWJlLWlkIil8fGEuYXR0cigiZGF0YS12emFhci1pZCIpLGU9YS5hdHRyKCJkYXRhLXdpZHRoIil8fHRoaXMuX2NvcmUuc2V0dGluZ3MudmlkZW9XaWR0aCxmPWEuYXR0cigiZGF0YS1oZWlnaHQiKXx8dGhpcy5fY29yZS5zZXR0aW5ncy52aWRlb0hlaWdodCxnPWEuYXR0cigiaHJlZiIpO2lmKCFnKXRocm93IG5ldyBFcnJvcigiTWlzc2luZyB2aWRlbyBVUkwuIik7aWYoZD1nLm1hdGNoKC8oaHR0cDp8aHR0cHM6fClcL1wvKHBsYXllci58d3d3LnxhcHAuKT8odmltZW9cLmNvbXx5b3V0dShiZVwuY29tfFwuYmV8YmVcLmdvb2dsZWFwaXNcLmNvbXxiZVwtbm9jb29raWVcLmNvbSl8dnphYXJcLmNvbSlcLyh2aWRlb1wvfHZpZGVvc1wvfGVtYmVkXC98Y2hhbm5lbHNcLy4rXC98Z3JvdXBzXC8uK1wvfHdhdGNoXD92PXx2XC8pPyhbQS1aYS16MC05Ll8lLV0qKShcJlxTKyk/LyksZFszXS5pbmRleE9mKCJ5b3V0dSIpPi0xKWM9InlvdXR1YmUiO2Vsc2UgaWYoZFszXS5pbmRleE9mKCJ2aW1lbyIpPi0xKWM9InZpbWVvIjtlbHNle2lmKCEoZFszXS5pbmRleE9mKCJ2emFhciIpPi0xKSl0aHJvdyBuZXcgRXJyb3IoIlZpZGVvIFVSTCBub3Qgc3VwcG9ydGVkLiIpO2M9InZ6YWFyIn1kPWRbNl0sdGhpcy5fdmlkZW9zW2ddPXt0eXBlOmMsaWQ6ZCx3aWR0aDplLGhlaWdodDpmfSxiLmF0dHIoImRhdGEtdmlkZW8iLGcpLHRoaXMudGh1bWJuYWlsKGEsdGhpcy5fdmlkZW9zW2ddKX0sZS5wcm90b3R5cGUudGh1bWJuYWlsPWZ1bmN0aW9uKGIsYyl7dmFyIGQsZSxmLGc9Yy53aWR0aCYmYy5oZWlnaHQ/IndpZHRoOiIrYy53aWR0aCsicHg7aGVpZ2h0OiIrYy5oZWlnaHQrInB4OyI6IiIsaD1iLmZpbmQoImltZyIpLGk9InNyYyIsaj0iIixrPXRoaXMuX2NvcmUuc2V0dGluZ3MsbD1mdW5jdGlvbihjKXtlPSc8ZGl2IGNsYXNzPSJvd2wtdmlkZW8tcGxheS1pY29uIj48L2Rpdj4nLGQ9ay5sYXp5TG9hZD9hKCI8ZGl2Lz4iLHtjbGFzczoib3dsLXZpZGVvLXRuICIraixzcmNUeXBlOmN9KTphKCI8ZGl2Lz4iLHtjbGFzczoib3dsLXZpZGVvLXRuIixzdHlsZToib3BhY2l0eToxO2JhY2tncm91bmQtaW1hZ2U6dXJsKCIrYysiKSJ9KSxiLmFmdGVyKGQpLGIuYWZ0ZXIoZSl9O2lmKGIud3JhcChhKCI8ZGl2Lz4iLHtjbGFzczoib3dsLXZpZGVvLXdyYXBwZXIiLHN0eWxlOmd9KSksdGhpcy5fY29yZS5zZXR0aW5ncy5sYXp5TG9hZCYmKGk9ImRhdGEtc3JjIixqPSJvd2wtbGF6eSIpLGgubGVuZ3RoKXJldHVybiBsKGguYXR0cihpKSksaC5yZW1vdmUoKSwhMTsieW91dHViZSI9PT1jLnR5cGU/KGY9Ii8vaW1nLnlvdXR1YmUuY29tL3ZpLyIrYy5pZCsiL2hxZGVmYXVsdC5qcGciLGwoZikpOiJ2aW1lbyI9PT1jLnR5cGU/YS5hamF4KHt0eXBlOiJHRVQiLHVybDoiLy92aW1lby5jb20vYXBpL3YyL3ZpZGVvLyIrYy5pZCsiLmpzb24iLGpzb25wOiJjYWxsYmFjayIsZGF0YVR5cGU6Impzb25wIixzdWNjZXNzOmZ1bmN0aW9uKGEpe2Y9YVswXS50aHVtYm5haWxfbGFyZ2UsbChmKX19KToidnphYXIiPT09Yy50eXBlJiZhLmFqYXgoe3R5cGU6IkdFVCIsdXJsOiIvL3Z6YWFyLmNvbS9hcGkvdmlkZW9zLyIrYy5pZCsiLmpzb24iLGpzb25wOiJjYWxsYmFjayIsZGF0YVR5cGU6Impzb25wIixzdWNjZXNzOmZ1bmN0aW9uKGEpe2Y9YS5mcmFtZWdyYWJfdXJsLGwoZil9fSl9LGUucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLl9jb3JlLnRyaWdnZXIoInN0b3AiLG51bGwsInZpZGVvIiksdGhpcy5fcGxheWluZy5maW5kKCIub3dsLXZpZGVvLWZyYW1lIikucmVtb3ZlKCksdGhpcy5fcGxheWluZy5yZW1vdmVDbGFzcygib3dsLXZpZGVvLXBsYXlpbmciKSx0aGlzLl9wbGF5aW5nPW51bGwsdGhpcy5fY29yZS5sZWF2ZSgicGxheWluZyIpLHRoaXMuX2NvcmUudHJpZ2dlcigic3RvcHBlZCIsbnVsbCwidmlkZW8iKX0sZS5wcm90b3R5cGUucGxheT1mdW5jdGlvbihiKXt2YXIgYyxkPWEoYi50YXJnZXQpLGU9ZC5jbG9zZXN0KCIuIit0aGlzLl9jb3JlLnNldHRpbmdzLml0ZW1DbGFzcyksZj10aGlzLl92aWRlb3NbZS5hdHRyKCJkYXRhLXZpZGVvIildLGc9Zi53aWR0aHx8IjEwMCUiLGg9Zi5oZWlnaHR8fHRoaXMuX2NvcmUuJHN0YWdlLmhlaWdodCgpO3RoaXMuX3BsYXlpbmd8fCh0aGlzLl9jb3JlLmVudGVyKCJwbGF5aW5nIiksdGhpcy5fY29yZS50cmlnZ2VyKCJwbGF5IixudWxsLCJ2aWRlbyIpLGU9dGhpcy5fY29yZS5pdGVtcyh0aGlzLl9jb3JlLnJlbGF0aXZlKGUuaW5kZXgoKSkpLHRoaXMuX2NvcmUucmVzZXQoZS5pbmRleCgpKSxjPWEoJzxpZnJhbWUgZnJhbWVib3JkZXI9IjAiIGFsbG93ZnVsbHNjcmVlbiBtb3phbGxvd2Z1bGxzY3JlZW4gd2Via2l0QWxsb3dGdWxsU2NyZWVuID48L2lmcmFtZT4nKSxjLmF0dHIoImhlaWdodCIsaCksYy5hdHRyKCJ3aWR0aCIsZyksInlvdXR1YmUiPT09Zi50eXBlP2MuYXR0cigic3JjIiwiLy93d3cueW91dHViZS5jb20vZW1iZWQvIitmLmlkKyI/YXV0b3BsYXk9MSZyZWw9MCZ2PSIrZi5pZCk6InZpbWVvIj09PWYudHlwZT9jLmF0dHIoInNyYyIsIi8vcGxheWVyLnZpbWVvLmNvbS92aWRlby8iK2YuaWQrIj9hdXRvcGxheT0xIik6InZ6YWFyIj09PWYudHlwZSYmYy5hdHRyKCJzcmMiLCIvL3ZpZXcudnphYXIuY29tLyIrZi5pZCsiL3BsYXllcj9hdXRvcGxheT10cnVlIiksYShjKS53cmFwKCc8ZGl2IGNsYXNzPSJvd2wtdmlkZW8tZnJhbWUiIC8+JykuaW5zZXJ0QWZ0ZXIoZS5maW5kKCIub3dsLXZpZGVvIikpLHRoaXMuX3BsYXlpbmc9ZS5hZGRDbGFzcygib3dsLXZpZGVvLXBsYXlpbmciKSl9LGUucHJvdG90eXBlLmlzSW5GdWxsU2NyZWVuPWZ1bmN0aW9uKCl7dmFyIGI9Yy5mdWxsc2NyZWVuRWxlbWVudHx8Yy5tb3pGdWxsU2NyZWVuRWxlbWVudHx8Yy53ZWJraXRGdWxsc2NyZWVuRWxlbWVudDtyZXR1cm4gYiYmYShiKS5wYXJlbnQoKS5oYXNDbGFzcygib3dsLXZpZGVvLWZyYW1lIil9LGUucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgYSxiO3RoaXMuX2NvcmUuJGVsZW1lbnQub2ZmKCJjbGljay5vd2wudmlkZW8iKTtmb3IoYSBpbiB0aGlzLl9oYW5kbGVycyl0aGlzLl9jb3JlLiRlbGVtZW50Lm9mZihhLHRoaXMuX2hhbmRsZXJzW2FdKTtmb3IoYiBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tiXSYmKHRoaXNbYl09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5WaWRlbz1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1mdW5jdGlvbihiKXt0aGlzLmNvcmU9Yix0aGlzLmNvcmUub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLHRoaXMuY29yZS5vcHRpb25zKSx0aGlzLnN3YXBwaW5nPSEwLHRoaXMucHJldmlvdXM9ZCx0aGlzLm5leHQ9ZCx0aGlzLmhhbmRsZXJzPXsiY2hhbmdlLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmInBvc2l0aW9uIj09YS5wcm9wZXJ0eS5uYW1lJiYodGhpcy5wcmV2aW91cz10aGlzLmNvcmUuY3VycmVudCgpLHRoaXMubmV4dD1hLnByb3BlcnR5LnZhbHVlKX0sdGhpcyksImRyYWcub3dsLmNhcm91c2VsIGRyYWdnZWQub3dsLmNhcm91c2VsIHRyYW5zbGF0ZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiYodGhpcy5zd2FwcGluZz0idHJhbnNsYXRlZCI9PWEudHlwZSl9LHRoaXMpLCJ0cmFuc2xhdGUub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLnN3YXBwaW5nJiYodGhpcy5jb3JlLm9wdGlvbnMuYW5pbWF0ZU91dHx8dGhpcy5jb3JlLm9wdGlvbnMuYW5pbWF0ZUluKSYmdGhpcy5zd2FwKCl9LHRoaXMpfSx0aGlzLmNvcmUuJGVsZW1lbnQub24odGhpcy5oYW5kbGVycyl9O2UuRGVmYXVsdHM9e2FuaW1hdGVPdXQ6ITEsDQphbmltYXRlSW46ITF9LGUucHJvdG90eXBlLnN3YXA9ZnVuY3Rpb24oKXtpZigxPT09dGhpcy5jb3JlLnNldHRpbmdzLml0ZW1zJiZhLnN1cHBvcnQuYW5pbWF0aW9uJiZhLnN1cHBvcnQudHJhbnNpdGlvbil7dGhpcy5jb3JlLnNwZWVkKDApO3ZhciBiLGM9YS5wcm94eSh0aGlzLmNsZWFyLHRoaXMpLGQ9dGhpcy5jb3JlLiRzdGFnZS5jaGlsZHJlbigpLmVxKHRoaXMucHJldmlvdXMpLGU9dGhpcy5jb3JlLiRzdGFnZS5jaGlsZHJlbigpLmVxKHRoaXMubmV4dCksZj10aGlzLmNvcmUuc2V0dGluZ3MuYW5pbWF0ZUluLGc9dGhpcy5jb3JlLnNldHRpbmdzLmFuaW1hdGVPdXQ7dGhpcy5jb3JlLmN1cnJlbnQoKSE9PXRoaXMucHJldmlvdXMmJihnJiYoYj10aGlzLmNvcmUuY29vcmRpbmF0ZXModGhpcy5wcmV2aW91cyktdGhpcy5jb3JlLmNvb3JkaW5hdGVzKHRoaXMubmV4dCksZC5vbmUoYS5zdXBwb3J0LmFuaW1hdGlvbi5lbmQsYykuY3NzKHtsZWZ0OmIrInB4In0pLmFkZENsYXNzKCJhbmltYXRlZCBvd2wtYW5pbWF0ZWQtb3V0IikuYWRkQ2xhc3MoZykpLGYmJmUub25lKGEuc3VwcG9ydC5hbmltYXRpb24uZW5kLGMpLmFkZENsYXNzKCJhbmltYXRlZCBvd2wtYW5pbWF0ZWQtaW4iKS5hZGRDbGFzcyhmKSl9fSxlLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbihiKXthKGIudGFyZ2V0KS5jc3Moe2xlZnQ6IiJ9KS5yZW1vdmVDbGFzcygiYW5pbWF0ZWQgb3dsLWFuaW1hdGVkLW91dCBvd2wtYW5pbWF0ZWQtaW4iKS5yZW1vdmVDbGFzcyh0aGlzLmNvcmUuc2V0dGluZ3MuYW5pbWF0ZUluKS5yZW1vdmVDbGFzcyh0aGlzLmNvcmUuc2V0dGluZ3MuYW5pbWF0ZU91dCksdGhpcy5jb3JlLm9uVHJhbnNpdGlvbkVuZCgpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGEsYjtmb3IoYSBpbiB0aGlzLmhhbmRsZXJzKXRoaXMuY29yZS4kZWxlbWVudC5vZmYoYSx0aGlzLmhhbmRsZXJzW2FdKTtmb3IoYiBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tiXSYmKHRoaXNbYl09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5BbmltYXRlPWV9KHdpbmRvdy5aZXB0b3x8d2luZG93LmpRdWVyeSx3aW5kb3csZG9jdW1lbnQpLGZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWZ1bmN0aW9uKGIpe3RoaXMuX2NvcmU9Yix0aGlzLl9jYWxsPW51bGwsdGhpcy5fdGltZT0wLHRoaXMuX3RpbWVvdXQ9MCx0aGlzLl9wYXVzZWQ9ITAsdGhpcy5faGFuZGxlcnM9eyJjaGFuZ2VkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmInNldHRpbmdzIj09PWEucHJvcGVydHkubmFtZT90aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5P3RoaXMucGxheSgpOnRoaXMuc3RvcCgpOmEubmFtZXNwYWNlJiYicG9zaXRpb24iPT09YS5wcm9wZXJ0eS5uYW1lJiZ0aGlzLl9wYXVzZWQmJih0aGlzLl90aW1lPTApfSx0aGlzKSwiaW5pdGlhbGl6ZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmF1dG9wbGF5JiZ0aGlzLnBsYXkoKX0sdGhpcyksInBsYXkub3dsLmF1dG9wbGF5IjphLnByb3h5KGZ1bmN0aW9uKGEsYixjKXthLm5hbWVzcGFjZSYmdGhpcy5wbGF5KGIsYyl9LHRoaXMpLCJzdG9wLm93bC5hdXRvcGxheSI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5zdG9wKCl9LHRoaXMpLCJtb3VzZW92ZXIub3dsLmF1dG9wbGF5IjphLnByb3h5KGZ1bmN0aW9uKCl7dGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvcGxheUhvdmVyUGF1c2UmJnRoaXMuX2NvcmUuaXMoInJvdGF0aW5nIikmJnRoaXMucGF1c2UoKX0sdGhpcyksIm1vdXNlbGVhdmUub3dsLmF1dG9wbGF5IjphLnByb3h5KGZ1bmN0aW9uKCl7dGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvcGxheUhvdmVyUGF1c2UmJnRoaXMuX2NvcmUuaXMoInJvdGF0aW5nIikmJnRoaXMucGxheSgpfSx0aGlzKSwidG91Y2hzdGFydC5vd2wuY29yZSI6YS5wcm94eShmdW5jdGlvbigpe3RoaXMuX2NvcmUuc2V0dGluZ3MuYXV0b3BsYXlIb3ZlclBhdXNlJiZ0aGlzLl9jb3JlLmlzKCJyb3RhdGluZyIpJiZ0aGlzLnBhdXNlKCl9LHRoaXMpLCJ0b3VjaGVuZC5vd2wuY29yZSI6YS5wcm94eShmdW5jdGlvbigpe3RoaXMuX2NvcmUuc2V0dGluZ3MuYXV0b3BsYXlIb3ZlclBhdXNlJiZ0aGlzLnBsYXkoKX0sdGhpcyl9LHRoaXMuX2NvcmUuJGVsZW1lbnQub24odGhpcy5faGFuZGxlcnMpLHRoaXMuX2NvcmUub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLHRoaXMuX2NvcmUub3B0aW9ucyl9O2UuRGVmYXVsdHM9e2F1dG9wbGF5OiExLGF1dG9wbGF5VGltZW91dDo1ZTMsYXV0b3BsYXlIb3ZlclBhdXNlOiExLGF1dG9wbGF5U3BlZWQ6ITF9LGUucHJvdG90eXBlLl9uZXh0PWZ1bmN0aW9uKGQpe3RoaXMuX2NhbGw9Yi5zZXRUaW1lb3V0KGEucHJveHkodGhpcy5fbmV4dCx0aGlzLGQpLHRoaXMuX3RpbWVvdXQqKE1hdGgucm91bmQodGhpcy5yZWFkKCkvdGhpcy5fdGltZW91dCkrMSktdGhpcy5yZWFkKCkpLHRoaXMuX2NvcmUuaXMoImludGVyYWN0aW5nIil8fGMuaGlkZGVufHx0aGlzLl9jb3JlLm5leHQoZHx8dGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvcGxheVNwZWVkKX0sZS5wcm90b3R5cGUucmVhZD1mdW5jdGlvbigpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpLXRoaXMuX3RpbWV9LGUucHJvdG90eXBlLnBsYXk9ZnVuY3Rpb24oYyxkKXt2YXIgZTt0aGlzLl9jb3JlLmlzKCJyb3RhdGluZyIpfHx0aGlzLl9jb3JlLmVudGVyKCJyb3RhdGluZyIpLGM9Y3x8dGhpcy5fY29yZS5zZXR0aW5ncy5hdXRvcGxheVRpbWVvdXQsZT1NYXRoLm1pbih0aGlzLl90aW1lJSh0aGlzLl90aW1lb3V0fHxjKSxjKSx0aGlzLl9wYXVzZWQ/KHRoaXMuX3RpbWU9dGhpcy5yZWFkKCksdGhpcy5fcGF1c2VkPSExKTpiLmNsZWFyVGltZW91dCh0aGlzLl9jYWxsKSx0aGlzLl90aW1lKz10aGlzLnJlYWQoKSVjLWUsdGhpcy5fdGltZW91dD1jLHRoaXMuX2NhbGw9Yi5zZXRUaW1lb3V0KGEucHJveHkodGhpcy5fbmV4dCx0aGlzLGQpLGMtZSl9LGUucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oKXt0aGlzLl9jb3JlLmlzKCJyb3RhdGluZyIpJiYodGhpcy5fdGltZT0wLHRoaXMuX3BhdXNlZD0hMCxiLmNsZWFyVGltZW91dCh0aGlzLl9jYWxsKSx0aGlzLl9jb3JlLmxlYXZlKCJyb3RhdGluZyIpKX0sZS5wcm90b3R5cGUucGF1c2U9ZnVuY3Rpb24oKXt0aGlzLl9jb3JlLmlzKCJyb3RhdGluZyIpJiYhdGhpcy5fcGF1c2VkJiYodGhpcy5fdGltZT10aGlzLnJlYWQoKSx0aGlzLl9wYXVzZWQ9ITAsYi5jbGVhclRpbWVvdXQodGhpcy5fY2FsbCkpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGEsYjt0aGlzLnN0b3AoKTtmb3IoYSBpbiB0aGlzLl9oYW5kbGVycyl0aGlzLl9jb3JlLiRlbGVtZW50Lm9mZihhLHRoaXMuX2hhbmRsZXJzW2FdKTtmb3IoYiBpbiBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzKSkiZnVuY3Rpb24iIT10eXBlb2YgdGhpc1tiXSYmKHRoaXNbYl09bnVsbCl9LGEuZm4ub3dsQ2Fyb3VzZWwuQ29uc3RydWN0b3IuUGx1Z2lucy5hdXRvcGxheT1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXsidXNlIHN0cmljdCI7dmFyIGU9ZnVuY3Rpb24oYil7dGhpcy5fY29yZT1iLHRoaXMuX2luaXRpYWxpemVkPSExLHRoaXMuX3BhZ2VzPVtdLHRoaXMuX2NvbnRyb2xzPXt9LHRoaXMuX3RlbXBsYXRlcz1bXSx0aGlzLiRlbGVtZW50PXRoaXMuX2NvcmUuJGVsZW1lbnQsdGhpcy5fb3ZlcnJpZGVzPXtuZXh0OnRoaXMuX2NvcmUubmV4dCxwcmV2OnRoaXMuX2NvcmUucHJldix0bzp0aGlzLl9jb3JlLnRvfSx0aGlzLl9oYW5kbGVycz17InByZXBhcmVkLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihiKXtiLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy5kb3RzRGF0YSYmdGhpcy5fdGVtcGxhdGVzLnB1c2goJzxkaXYgY2xhc3M9IicrdGhpcy5fY29yZS5zZXR0aW5ncy5kb3RDbGFzcysnIj4nK2EoYi5jb250ZW50KS5maW5kKCJbZGF0YS1kb3RdIikuYWRkQmFjaygiW2RhdGEtZG90XSIpLmF0dHIoImRhdGEtZG90IikrIjwvZGl2PiIpfSx0aGlzKSwiYWRkZWQub3dsLmNhcm91c2VsIjphLnByb3h5KGZ1bmN0aW9uKGEpe2EubmFtZXNwYWNlJiZ0aGlzLl9jb3JlLnNldHRpbmdzLmRvdHNEYXRhJiZ0aGlzLl90ZW1wbGF0ZXMuc3BsaWNlKGEucG9zaXRpb24sMCx0aGlzLl90ZW1wbGF0ZXMucG9wKCkpfSx0aGlzKSwicmVtb3ZlLm93bC5jYXJvdXNlbCI6YS5wcm94eShmdW5jdGlvbihhKXthLm5hbWVzcGFjZSYmdGhpcy5fY29yZS5zZXR0aW5ncy5kb3RzRGF0YSYmdGhpcy5fdGVtcGxhdGVzLnNwbGljZShhLnBvc2l0aW9uLDEpfSx0aGlzKSwiY2hhbmdlZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJiJwb3NpdGlvbiI9PWEucHJvcGVydHkubmFtZSYmdGhpcy5kcmF3KCl9LHRoaXMpLCJpbml0aWFsaXplZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJiF0aGlzLl9pbml0aWFsaXplZCYmKHRoaXMuX2NvcmUudHJpZ2dlcigiaW5pdGlhbGl6ZSIsbnVsbCwibmF2aWdhdGlvbiIpLHRoaXMuaW5pdGlhbGl6ZSgpLHRoaXMudXBkYXRlKCksdGhpcy5kcmF3KCksdGhpcy5faW5pdGlhbGl6ZWQ9ITAsdGhpcy5fY29yZS50cmlnZ2VyKCJpbml0aWFsaXplZCIsbnVsbCwibmF2aWdhdGlvbiIpKX0sdGhpcyksInJlZnJlc2hlZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYSl7YS5uYW1lc3BhY2UmJnRoaXMuX2luaXRpYWxpemVkJiYodGhpcy5fY29yZS50cmlnZ2VyKCJyZWZyZXNoIixudWxsLCJuYXZpZ2F0aW9uIiksdGhpcy51cGRhdGUoKSx0aGlzLmRyYXcoKSx0aGlzLl9jb3JlLnRyaWdnZXIoInJlZnJlc2hlZCIsbnVsbCwibmF2aWdhdGlvbiIpKX0sdGhpcyl9LHRoaXMuX2NvcmUub3B0aW9ucz1hLmV4dGVuZCh7fSxlLkRlZmF1bHRzLHRoaXMuX2NvcmUub3B0aW9ucyksdGhpcy4kZWxlbWVudC5vbih0aGlzLl9oYW5kbGVycyl9O2UuRGVmYXVsdHM9e25hdjohMSxuYXZUZXh0OlsnPHNwYW4gYXJpYS1sYWJlbD0iUHJldmlvdXMiPiYjeDIwMzk7PC9zcGFuPicsJzxzcGFuIGFyaWEtbGFiZWw9Ik5leHQiPiYjeDIwM2E7PC9zcGFuPiddLG5hdlNwZWVkOiExLG5hdkVsZW1lbnQ6J2J1dHRvbiB0eXBlPSJidXR0b24iIHJvbGU9InByZXNlbnRhdGlvbiInLG5hdkNvbnRhaW5lcjohMSxuYXZDb250YWluZXJDbGFzczoib3dsLW5hdiIsbmF2Q2xhc3M6WyJvd2wtcHJldiIsIm93bC1uZXh0Il0sc2xpZGVCeToxLGRvdENsYXNzOiJvd2wtZG90Iixkb3RzQ2xhc3M6Im93bC1kb3RzIixkb3RzOiEwLGRvdHNFYWNoOiExLGRvdHNEYXRhOiExLGRvdHNTcGVlZDohMSxkb3RzQ29udGFpbmVyOiExfSxlLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKCl7dmFyIGIsYz10aGlzLl9jb3JlLnNldHRpbmdzO3RoaXMuX2NvbnRyb2xzLiRyZWxhdGl2ZT0oYy5uYXZDb250YWluZXI/YShjLm5hdkNvbnRhaW5lcik6YSgiPGRpdj4iKS5hZGRDbGFzcyhjLm5hdkNvbnRhaW5lckNsYXNzKS5hcHBlbmRUbyh0aGlzLiRlbGVtZW50KSkuYWRkQ2xhc3MoImRpc2FibGVkIiksdGhpcy5fY29udHJvbHMuJHByZXZpb3VzPWEoIjwiK2MubmF2RWxlbWVudCsiPiIpLmFkZENsYXNzKGMubmF2Q2xhc3NbMF0pLmh0bWwoYy5uYXZUZXh0WzBdKS5wcmVwZW5kVG8odGhpcy5fY29udHJvbHMuJHJlbGF0aXZlKS5vbigiY2xpY2siLGEucHJveHkoZnVuY3Rpb24oYSl7dGhpcy5wcmV2KGMubmF2U3BlZWQpfSx0aGlzKSksdGhpcy5fY29udHJvbHMuJG5leHQ9YSgiPCIrYy5uYXZFbGVtZW50KyI+IikuYWRkQ2xhc3MoYy5uYXZDbGFzc1sxXSkuaHRtbChjLm5hdlRleHRbMV0pLmFwcGVuZFRvKHRoaXMuX2NvbnRyb2xzLiRyZWxhdGl2ZSkub24oImNsaWNrIixhLnByb3h5KGZ1bmN0aW9uKGEpe3RoaXMubmV4dChjLm5hdlNwZWVkKX0sdGhpcykpLGMuZG90c0RhdGF8fCh0aGlzLl90ZW1wbGF0ZXM9W2EoJzxidXR0b24gcm9sZT0iYnV0dG9uIj4nKS5hZGRDbGFzcyhjLmRvdENsYXNzKS5hcHBlbmQoYSgiPHNwYW4+IikpLnByb3AoIm91dGVySFRNTCIpXSksdGhpcy5fY29udHJvbHMuJGFic29sdXRlPShjLmRvdHNDb250YWluZXI/YShjLmRvdHNDb250YWluZXIpOmEoIjxkaXY+IikuYWRkQ2xhc3MoYy5kb3RzQ2xhc3MpLmFwcGVuZFRvKHRoaXMuJGVsZW1lbnQpKS5hZGRDbGFzcygiZGlzYWJsZWQiKSx0aGlzLl9jb250cm9scy4kYWJzb2x1dGUub24oImNsaWNrIiwiYnV0dG9uIixhLnByb3h5KGZ1bmN0aW9uKGIpe3ZhciBkPWEoYi50YXJnZXQpLnBhcmVudCgpLmlzKHRoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZSk/YShiLnRhcmdldCkuaW5kZXgoKTphKGIudGFyZ2V0KS5wYXJlbnQoKS5pbmRleCgpO2IucHJldmVudERlZmF1bHQoKSx0aGlzLnRvKGQsYy5kb3RzU3BlZWQpfSx0aGlzKSk7Zm9yKGIgaW4gdGhpcy5fb3ZlcnJpZGVzKXRoaXMuX2NvcmVbYl09YS5wcm94eSh0aGlzW2JdLHRoaXMpfSxlLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dmFyIGEsYixjLGQsZTtlPXRoaXMuX2NvcmUuc2V0dGluZ3M7Zm9yKGEgaW4gdGhpcy5faGFuZGxlcnMpdGhpcy4kZWxlbWVudC5vZmYoYSx0aGlzLl9oYW5kbGVyc1thXSk7Zm9yKGIgaW4gdGhpcy5fY29udHJvbHMpIiRyZWxhdGl2ZSI9PT1iJiZlLm5hdkNvbnRhaW5lcj90aGlzLl9jb250cm9sc1tiXS5odG1sKCIiKTp0aGlzLl9jb250cm9sc1tiXS5yZW1vdmUoKTtmb3IoZCBpbiB0aGlzLm92ZXJpZGVzKXRoaXMuX2NvcmVbZF09dGhpcy5fb3ZlcnJpZGVzW2RdO2ZvcihjIGluIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHRoaXMpKSJmdW5jdGlvbiIhPXR5cGVvZiB0aGlzW2NdJiYodGhpc1tjXT1udWxsKX0sZS5wcm90b3R5cGUudXBkYXRlPWZ1bmN0aW9uKCl7dmFyIGEsYixjLGQ9dGhpcy5fY29yZS5jbG9uZXMoKS5sZW5ndGgvMixlPWQrdGhpcy5fY29yZS5pdGVtcygpLmxlbmd0aCxmPXRoaXMuX2NvcmUubWF4aW11bSghMCksZz10aGlzLl9jb3JlLnNldHRpbmdzLGg9Zy5jZW50ZXJ8fGcuYXV0b1dpZHRofHxnLmRvdHNEYXRhPzE6Zy5kb3RzRWFjaHx8Zy5pdGVtcztpZigicGFnZSIhPT1nLnNsaWRlQnkmJihnLnNsaWRlQnk9TWF0aC5taW4oZy5zbGlkZUJ5LGcuaXRlbXMpKSxnLmRvdHN8fCJwYWdlIj09Zy5zbGlkZUJ5KWZvcih0aGlzLl9wYWdlcz1bXSxhPWQsYj0wLGM9MDthPGU7YSsrKXtpZihiPj1ofHwwPT09Yil7aWYodGhpcy5fcGFnZXMucHVzaCh7c3RhcnQ6TWF0aC5taW4oZixhLWQpLGVuZDphLWQraC0xfSksTWF0aC5taW4oZixhLWQpPT09ZilicmVhaztiPTAsKytjfWIrPXRoaXMuX2NvcmUubWVyZ2Vycyh0aGlzLl9jb3JlLnJlbGF0aXZlKGEpKX19LGUucHJvdG90eXBlLmRyYXc9ZnVuY3Rpb24oKXt2YXIgYixjPXRoaXMuX2NvcmUuc2V0dGluZ3MsZD10aGlzLl9jb3JlLml0ZW1zKCkubGVuZ3RoPD1jLml0ZW1zLGU9dGhpcy5fY29yZS5yZWxhdGl2ZSh0aGlzLl9jb3JlLmN1cnJlbnQoKSksZj1jLmxvb3B8fGMucmV3aW5kO3RoaXMuX2NvbnRyb2xzLiRyZWxhdGl2ZS50b2dnbGVDbGFzcygiZGlzYWJsZWQiLCFjLm5hdnx8ZCksYy5uYXYmJih0aGlzLl9jb250cm9scy4kcHJldmlvdXMudG9nZ2xlQ2xhc3MoImRpc2FibGVkIiwhZiYmZTw9dGhpcy5fY29yZS5taW5pbXVtKCEwKSksdGhpcy5fY29udHJvbHMuJG5leHQudG9nZ2xlQ2xhc3MoImRpc2FibGVkIiwhZiYmZT49dGhpcy5fY29yZS5tYXhpbXVtKCEwKSkpLHRoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZS50b2dnbGVDbGFzcygiZGlzYWJsZWQiLCFjLmRvdHN8fGQpLGMuZG90cyYmKGI9dGhpcy5fcGFnZXMubGVuZ3RoLXRoaXMuX2NvbnRyb2xzLiRhYnNvbHV0ZS5jaGlsZHJlbigpLmxlbmd0aCxjLmRvdHNEYXRhJiYwIT09Yj90aGlzLl9jb250cm9scy4kYWJzb2x1dGUuaHRtbCh0aGlzLl90ZW1wbGF0ZXMuam9pbigiIikpOmI+MD90aGlzLl9jb250cm9scy4kYWJzb2x1dGUuYXBwZW5kKG5ldyBBcnJheShiKzEpLmpvaW4odGhpcy5fdGVtcGxhdGVzWzBdKSk6YjwwJiZ0aGlzLl9jb250cm9scy4kYWJzb2x1dGUuY2hpbGRyZW4oKS5zbGljZShiKS5yZW1vdmUoKSx0aGlzLl9jb250cm9scy4kYWJzb2x1dGUuZmluZCgiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSx0aGlzLl9jb250cm9scy4kYWJzb2x1dGUuY2hpbGRyZW4oKS5lcShhLmluQXJyYXkodGhpcy5jdXJyZW50KCksdGhpcy5fcGFnZXMpKS5hZGRDbGFzcygiYWN0aXZlIikpfSxlLnByb3RvdHlwZS5vblRyaWdnZXI9ZnVuY3Rpb24oYil7dmFyIGM9dGhpcy5fY29yZS5zZXR0aW5ncztiLnBhZ2U9e2luZGV4OmEuaW5BcnJheSh0aGlzLmN1cnJlbnQoKSx0aGlzLl9wYWdlcyksY291bnQ6dGhpcy5fcGFnZXMubGVuZ3RoLHNpemU6YyYmKGMuY2VudGVyfHxjLmF1dG9XaWR0aHx8Yy5kb3RzRGF0YT8xOmMuZG90c0VhY2h8fGMuaXRlbXMpfX0sZS5wcm90b3R5cGUuY3VycmVudD1mdW5jdGlvbigpe3ZhciBiPXRoaXMuX2NvcmUucmVsYXRpdmUodGhpcy5fY29yZS5jdXJyZW50KCkpO3JldHVybiBhLmdyZXAodGhpcy5fcGFnZXMsYS5wcm94eShmdW5jdGlvbihhLGMpe3JldHVybiBhLnN0YXJ0PD1iJiZhLmVuZD49Yn0sdGhpcykpLnBvcCgpfSxlLnByb3RvdHlwZS5nZXRQb3NpdGlvbj1mdW5jdGlvbihiKXt2YXIgYyxkLGU9dGhpcy5fY29yZS5zZXR0aW5ncztyZXR1cm4icGFnZSI9PWUuc2xpZGVCeT8oYz1hLmluQXJyYXkodGhpcy5jdXJyZW50KCksdGhpcy5fcGFnZXMpLGQ9dGhpcy5fcGFnZXMubGVuZ3RoLGI/KytjOi0tYyxjPXRoaXMuX3BhZ2VzWyhjJWQrZCklZF0uc3RhcnQpOihjPXRoaXMuX2NvcmUucmVsYXRpdmUodGhpcy5fY29yZS5jdXJyZW50KCkpLGQ9dGhpcy5fY29yZS5pdGVtcygpLmxlbmd0aCxiP2MrPWUuc2xpZGVCeTpjLT1lLnNsaWRlQnkpLGN9LGUucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24oYil7YS5wcm94eSh0aGlzLl9vdmVycmlkZXMudG8sdGhpcy5fY29yZSkodGhpcy5nZXRQb3NpdGlvbighMCksYil9LGUucHJvdG90eXBlLnByZXY9ZnVuY3Rpb24oYil7YS5wcm94eSh0aGlzLl9vdmVycmlkZXMudG8sdGhpcy5fY29yZSkodGhpcy5nZXRQb3NpdGlvbighMSksYil9LGUucHJvdG90eXBlLnRvPWZ1bmN0aW9uKGIsYyxkKXt2YXIgZTshZCYmdGhpcy5fcGFnZXMubGVuZ3RoPyhlPXRoaXMuX3BhZ2VzLmxlbmd0aCxhLnByb3h5KHRoaXMuX292ZXJyaWRlcy50byx0aGlzLl9jb3JlKSh0aGlzLl9wYWdlc1soYiVlK2UpJWVdLnN0YXJ0LGMpKTphLnByb3h5KHRoaXMuX292ZXJyaWRlcy50byx0aGlzLl9jb3JlKShiLGMpfSxhLmZuLm93bENhcm91c2VsLkNvbnN0cnVjdG9yLlBsdWdpbnMuTmF2aWdhdGlvbj1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXsidXNlIHN0cmljdCI7dmFyIGU9ZnVuY3Rpb24oYyl7dGhpcy5fY29yZT1jLHRoaXMuX2hhc2hlcz17fSx0aGlzLiRlbGVtZW50PXRoaXMuX2NvcmUuJGVsZW1lbnQsdGhpcy5faGFuZGxlcnM9eyJpbml0aWFsaXplZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYyl7Yy5uYW1lc3BhY2UmJiJVUkxIYXNoIj09PXRoaXMuX2NvcmUuc2V0dGluZ3Muc3RhcnRQb3NpdGlvbiYmYShiKS50cmlnZ2VyKCJoYXNoY2hhbmdlLm93bC5uYXZpZ2F0aW9uIil9LHRoaXMpLCJwcmVwYXJlZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYil7aWYoYi5uYW1lc3BhY2Upe3ZhciBjPWEoYi5jb250ZW50KS5maW5kKCJbZGF0YS1oYXNoXSIpLmFkZEJhY2soIltkYXRhLWhhc2hdIikuYXR0cigiZGF0YS1oYXNoIik7aWYoIWMpcmV0dXJuO3RoaXMuX2hhc2hlc1tjXT1iLmNvbnRlbnR9fSx0aGlzKSwiY2hhbmdlZC5vd2wuY2Fyb3VzZWwiOmEucHJveHkoZnVuY3Rpb24oYyl7aWYoYy5uYW1lc3BhY2UmJiJwb3NpdGlvbiI9PT1jLnByb3BlcnR5Lm5hbWUpe3ZhciBkPXRoaXMuX2NvcmUuaXRlbXModGhpcy5fY29yZS5yZWxhdGl2ZSh0aGlzLl9jb3JlLmN1cnJlbnQoKSkpLGU9YS5tYXAodGhpcy5faGFzaGVzLGZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT1kP2I6bnVsbH0pLmpvaW4oKTtpZighZXx8Yi5sb2NhdGlvbi5oYXNoLnNsaWNlKDEpPT09ZSlyZXR1cm47Yi5sb2NhdGlvbi5oYXNoPWV9fSx0aGlzKX0sdGhpcy5fY29yZS5vcHRpb25zPWEuZXh0ZW5kKHt9LGUuRGVmYXVsdHMsdGhpcy5fY29yZS5vcHRpb25zKSx0aGlzLiRlbGVtZW50Lm9uKHRoaXMuX2hhbmRsZXJzKSxhKGIpLm9uKCJoYXNoY2hhbmdlLm93bC5uYXZpZ2F0aW9uIixhLnByb3h5KGZ1bmN0aW9uKGEpe3ZhciBjPWIubG9jYXRpb24uaGFzaC5zdWJzdHJpbmcoMSksZT10aGlzLl9jb3JlLiRzdGFnZS5jaGlsZHJlbigpLGY9dGhpcy5faGFzaGVzW2NdJiZlLmluZGV4KHRoaXMuX2hhc2hlc1tjXSk7ZiE9PWQmJmYhPT10aGlzLl9jb3JlLmN1cnJlbnQoKSYmdGhpcy5fY29yZS50byh0aGlzLl9jb3JlLnJlbGF0aXZlKGYpLCExLCEwKX0sdGhpcykpfTtlLkRlZmF1bHRzPXtVUkxoYXNoTGlzdGVuZXI6ITF9LGUucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt2YXIgYyxkO2EoYikub2ZmKCJoYXNoY2hhbmdlLm93bC5uYXZpZ2F0aW9uIik7Zm9yKGMgaW4gdGhpcy5faGFuZGxlcnMpdGhpcy5fY29yZS4kZWxlbWVudC5vZmYoYyx0aGlzLl9oYW5kbGVyc1tjXSk7Zm9yKGQgaW4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGhpcykpImZ1bmN0aW9uIiE9dHlwZW9mIHRoaXNbZF0mJih0aGlzW2RdPW51bGwpfSxhLmZuLm93bENhcm91c2VsLkNvbnN0cnVjdG9yLlBsdWdpbnMuSGFzaD1lfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KSxmdW5jdGlvbihhLGIsYyxkKXtmdW5jdGlvbiBlKGIsYyl7dmFyIGU9ITEsZj1iLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpK2Iuc2xpY2UoMSk7cmV0dXJuIGEuZWFjaCgoYisiICIraC5qb2luKGYrIiAiKStmKS5zcGxpdCgiICIpLGZ1bmN0aW9uKGEsYil7aWYoZ1tiXSE9PWQpcmV0dXJuIGU9IWN8fGIsITF9KSxlfWZ1bmN0aW9uIGYoYSl7cmV0dXJuIGUoYSwhMCl9dmFyIGc9YSgiPHN1cHBvcnQ+IikuZ2V0KDApLnN0eWxlLGg9IldlYmtpdCBNb3ogTyBtcyIuc3BsaXQoIiAiKSxpPXt0cmFuc2l0aW9uOntlbmQ6e1dlYmtpdFRyYW5zaXRpb246IndlYmtpdFRyYW5zaXRpb25FbmQiLE1velRyYW5zaXRpb246InRyYW5zaXRpb25lbmQiLE9UcmFuc2l0aW9uOiJvVHJhbnNpdGlvbkVuZCIsdHJhbnNpdGlvbjoidHJhbnNpdGlvbmVuZCJ9fSxhbmltYXRpb246e2VuZDp7V2Via2l0QW5pbWF0aW9uOiJ3ZWJraXRBbmltYXRpb25FbmQiLE1vekFuaW1hdGlvbjoiYW5pbWF0aW9uZW5kIixPQW5pbWF0aW9uOiJvQW5pbWF0aW9uRW5kIixhbmltYXRpb246ImFuaW1hdGlvbmVuZCJ9fX0saj17Y3NzdHJhbnNmb3JtczpmdW5jdGlvbigpe3JldHVybiEhZSgidHJhbnNmb3JtIil9LGNzc3RyYW5zZm9ybXMzZDpmdW5jdGlvbigpe3JldHVybiEhZSgicGVyc3BlY3RpdmUiKX0sY3NzdHJhbnNpdGlvbnM6ZnVuY3Rpb24oKXtyZXR1cm4hIWUoInRyYW5zaXRpb24iKX0sY3NzYW5pbWF0aW9uczpmdW5jdGlvbigpe3JldHVybiEhZSgiYW5pbWF0aW9uIil9fTtqLmNzc3RyYW5zaXRpb25zKCkmJihhLnN1cHBvcnQudHJhbnNpdGlvbj1uZXcgU3RyaW5nKGYoInRyYW5zaXRpb24iKSksYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kPWkudHJhbnNpdGlvbi5lbmRbYS5zdXBwb3J0LnRyYW5zaXRpb25dKSxqLmNzc2FuaW1hdGlvbnMoKSYmKGEuc3VwcG9ydC5hbmltYXRpb249bmV3IFN0cmluZyhmKCJhbmltYXRpb24iKSksYS5zdXBwb3J0LmFuaW1hdGlvbi5lbmQ9aS5hbmltYXRpb24uZW5kW2Euc3VwcG9ydC5hbmltYXRpb25dKSxqLmNzc3RyYW5zZm9ybXMoKSYmKGEuc3VwcG9ydC50cmFuc2Zvcm09bmV3IFN0cmluZyhmKCJ0cmFuc2Zvcm0iKSksYS5zdXBwb3J0LnRyYW5zZm9ybTNkPWouY3NzdHJhbnNmb3JtczNkKCkpfSh3aW5kb3cuWmVwdG98fHdpbmRvdy5qUXVlcnksd2luZG93LGRvY3VtZW50KTsvLyBKYXZhU2NyaXB0IERvY3VtZW50"}},"time_used":87,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":58,"receive":29,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/34387.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.660Z","timestamp":1785159268660,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/34387.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 995\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 00:55:10 GMT\r\nlast-modified: Tue, 03 Dec 2024 12:34:09 GMT\r\netag: \"fb99efdd147ed3f3dcaf18ee5ba11bc1\"\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 45559\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: 63eqhiVBZ0shqbMLPqeIZglcs5EEjlHLk-QMjW23Iih-Tcteh9g2sg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":995,"size_decoded":1511,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"fb99efdd147ed3f3dcaf18ee5ba11bc1","sha1":"ba52b8959b90666d0fb7eadc44b2eadd65b48541","sha256":"7a46b95ed1f657ff278a9ae67bc785517bca31fcda15ef4db00a01716b13bf14","sha512":"46210d5aac569cf100275ed9d3a7ef6078426703690b70f670313fe52e3acf1750b3c5e3be93a6fc56dce856429e1afc6ab8bc2b4957c2f95f0f5a914f1925c8","ssdeep":"","tlshash":"131108abf71a0cf8883100bf41236070e71883eb8b1a492b8446687ee02e6e40260b0a","first_seen":"2025-09-03T04:31:34.21391Z","last_seen":"2026-07-29T06:14:00.396954Z","times_seen":1348,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADqklEQVR4XuWbMWgUQRSG1wQLQUknNhb2FoJa2Vgq2FjExkqQxLuLBL3AFSIoguRAsNGApLCIFmqhFhY2AcFCA4KCCkJQEYkRonhHcpig95y3c6d3783ezuzc7O45P3wEsjNv583tvHkzOxsEaWgMNgdFmBLMBwVYFH9rAiDUWtfmw7JYZzAFm4ILMCScqArqCkdNQRvV0Cbazq1GYTiQv3JT4US/QNtT4b1yI/xlCjCjaKxb8J7hU5GlijDJGpY+k7RZ7iWDWkPRmKxopBc0S3BE0YB8gG1zJxGBS/CQ3TRvYBv7PlvIaY3fLM/0LUDK6Y3fYBCwny7Fo0SNDhpWw2EQxnwcYUxIojxHe1OMZ4csx31BMCY42WJcUSYJRvGgCGvMgGuE49OPAX43gendMsCW07IMq6fPGnVTrQzS26ESwMYv6jbXp++8riEaaTOv5JYCdbO3lmuyDrOjS0+lvao7BfDxG3UxXpX7Clu6oI9KZZDtnZijrukLO4/a00aZJRahzAq6xPDRp9p1XmFTnzLxPsz4XO7kcCw74PA1hU19mt0ZYgaPv3UHXFfYNKFrGMgNTF7IJZYdcPCqwqYJJbjY2QH92L015v0KdUtfW89we4bUOzuAXjTmwBWAuy/ktDb3HGDnOV6GsucydUtfVrlAG+sOEI148JI27Z+aIq0dnZXlWN1W/aeLtFa89lUVtpLQch738vnFOMQ8/HODNk2tV58hshN2VGjp3rq1wG1YMIUdgK+i6IXeCGe+1mnTeuv2gsIOMk5LRmvijqK+HfOY/uL7OHqhJ8dmadP0tPsSsSU68tFrWqpbtQbAIZzzbTK/KND3QP2iMhrL6ev4TWlneEI6R7WyCrANIzwOmYhh00dq5gHQ4JE1VWMd0nC6G/aPGEbO0mb3TzNP+P2cw/4Rg/cd8D8OgVSD4NEb0g4GwaUf9GoWQTDBNIhL0SRKMg2urrufBlNJhHB9wOwgBkPKTSLkfSpsuRjCBkVJZzH07AOtFa/9VYWtJFivBjvYOw1wTyyH3yzJx317hZeh5Gk5PHAbIiNlbs+Qrg0R/7bE0Oe/8n5T1PttcZTfL0aCTIZBvl6Nobx+OdoWreAaw6Hg9vU4yvsDEqicHZF5+yXNIzIo7w9Jobw+JteW1wclQ/l+VBaVZTywxXjcRymDLNGayGwvsXz+YKJTeZ4dEkd7U3n90VSnMkibFWimt67k9YeTnfL201kmBx9P45m+8Nd2Gd1dKsefz/8BVrZ7wl05T0oAAAAASUVORK5CYII="}},"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":"s3.tradingview.com/external-embedding/embed-widget-forex-cross-rates.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://walmartfundholdings.com/","date":"2026-07-27T13:34:27.921Z","timestamp":1785159267921,"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-forex-cross-rates.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://walmartfundholdings.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 13:34: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: \"6ff9630986d3855842b586b326474dae\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:24 GMT\r\nx-amz-id-2: gOMHE79Zn7yZ7yeqnhc2FK+gr/LdIPQnKT1/sqspzs6732OIPvuk0br9ZUw50iTxC4qxwwtAi+UBCvBVhRKB+q2k+kfN0z4K\r\nx-amz-request-id: 39DAMT3KYR5Z64HK\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: 9fupqI4xxEHAneKy4exkfX_7FVRNO7mI\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/24/2026 10:52:19\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: ff0babed4530d6392e73a0d56b717001\r\ncdn-cache: REVALIDATED\r\nX-Firefox-Spdy: h2\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":"Bunny","description":"","website":"https://bunny.net","common_platform_enumeration":"","icon":"Bunny.svg","categories":["CDN"]}],"data":{"size":12720,"size_decoded":5891,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"6ff9630986d3855842b586b326474dae","sha1":"69f83fc5e5e46f4ae60db6c9a2c7a0624f2b971d","sha256":"2eb114ab8c6de3b23037ae8feb4df46fc8d082acfe985a7086ad2744b49f2618","sha512":"7aea1b79bb1426698dcc337f9814dddffd5bcbddf75914dd5e73e107f13b378656aacca54997eb6dffbbeabb0c071c3b1a30d5e3d6eff3e117964eac45090f24","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6OrmaRMViZMEa:uD5Unb26nD6OrmaRkFEa","tlshash":"5b42d7aab660dcbd919945dba07a2321b61d3944b203eca4b5ace4c510fdccca531f7e","first_seen":"2026-07-16T22:06:47.112342Z","last_seen":"2026-07-30T06:08:06.388052Z","times_seen":913,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3QgaT1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIHIsczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHJ8fChyPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gaVt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30saT17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0scj1PYmplY3Qua2V5cyhpKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIHIuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1pW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KGkpe2NvbnN0e3NjcmlwdFVSTDpyLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PWksaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsoaT10Lmhvc3Qscj0zLGkuc3BsaXQoIi4iKS5zbGljZSgtcikuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIGkscjtyZXR1cm4gZS53aWRnZXRIb3N0fShyKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxpPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLHI9ZXx8aTtyZXR1cm4gciYmdC5yZW1vdmVDaGlsZChyKSxyfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxiPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxTPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1TJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Uyksdm9pZCAwIT09YiYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1iKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixDPWxvY2F0aW9uLmhvc3RuYW1lLFQ9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsXz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Qyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1fLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoQyxULF8pO2NvbnN0IEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxBLGspLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgRT10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoRT8odChFLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxFKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUsaSl7Y29uc3Qgcj1lLmNvbnRlbnRXaW5kb3c7aWYoIXIpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09ciYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZpKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1TJiYodC5zdHlsZS53aWR0aD1TKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IGk9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChpKT9wYXJzZUludChpKTovXihcZCslfGF1dG8pJC8udGVzdChpKT9pOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxpPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1pJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PWksITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSksaT1mdW5jdGlvbih0LGUpe2NvbnN0IGk9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCByIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihpW3JdPXRbcl0pO3JldHVybiBpfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLHJdb2YgT2JqZWN0LmVudHJpZXMoaSkpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUscil9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCBpPXt9O2UmJihpLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoaVt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoaVsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKGkpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShpKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUsaSxyLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7aSYmKG4uaWQ9aSksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLGkpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1yLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IGk9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsaS5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLGkpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3Qgcj10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO3ImJnIuZm9yRWFjaCgocj0+e2NvbnN0IHM9ci5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixpKSxyLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19bmV3IGNsYXNzIGV4dGVuZHMgZHtnZXQgd2lkZ2V0SWQoKXtyZXR1cm4iZm9yZXgtY3Jvc3MtcmF0ZXMifWdldCB1c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0KCl7cmV0dXJuITB9Z2V0IHByb3BlcnRpZXNUb1dvcmtXaXRoKCl7cmV0dXJuWyJjb2xvclRoZW1lIiwiY3VycmVuY2llcyIsImN1c3RvbWVyIiwiZGlzYWJsZUNyb3NzQ2xpY2tIcmVmIiwiaGVpZ2h0IiwibGFyZ2VDaGFydFVybCIsImxvY2FsZSIsIndpZHRoIiwiYmFja2dyb3VuZENvbG9yIl19fX0pKCk7"}},"time_used":283,"timings":{"blocked":-1,"dns":87,"connect":54,"send":0,"wait":134,"receive":-1,"ssl":7},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1839.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.599Z","timestamp":1785159268599,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1839.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1387\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Thu, 17 Feb 2022 08:19:34 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 02:10:47 GMT\r\netag: \"aef8727bea8367cd9fd252c025b45887\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 41022\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: E3vyrhd_60iekQinU9sSAzZRJc4bnW3P8BjIhuNyRZy-03fRG9oM-A==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":1387,"size_decoded":1883,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"aef8727bea8367cd9fd252c025b45887","sha1":"c2ab9d909455bff35181dfd92bcc7baba930867f","sha256":"ce5a07d36768bcb5524044a9e92a606ae6effe1cb0913dfa418703461db62fe3","sha512":"5f97e368e23aa5e501e57917aea9426704ac3c4068b34d803f44944663bab45131170fec2872fb868a5faceb6856ce4d9f8870053aba7e8d08455989a731984d","ssdeep":"","tlshash":"5321085f5b644577dda94dbede05a54b29e30d208d978bc2c404ec1534598a643608ad","first_seen":"2023-05-06T05:54:57Z","last_seen":"2026-07-30T06:07:43.508974Z","times_seen":15935,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAFMklEQVR4XtVbvW4TQRhMSWwipYYngCeACsp0pEsJFZTp8gapaXgD6F0gETsIWaRIARIopAAJJAcJCgq4s5M4/zE3l6y1nv253fXe2R5plOR2787f7PfN7u05c3MVIGksLiYbNx92W/XnaavWSFv1TrpZT7Kfg5xXv3fQhj7oi3P4OjOD7ub8ahZUexjguGzW271W/THfZ+qAkYsauMJaI3mzsMz3nThG0rky1jr8OSpHPuJ57fKHq4q1zkRKI9moP5nMqJtYoRBwZ/UDTAdLnzmma9RNLMkb8rRXbjadjF4OfINZIccRhFkaeebYmZCWNMV1390enOy9GAgc7j5T+kRkwnE5oUy3vzxLh8ELXPR/Kv1i0Xt2KCPte1t3OWYtyhLCqxzSyKl//GNdO+omQIQSysKtFGKO/tm/LY5tBEff1wenf17z4REcZ17B1w0llu4cr4I0wuizyelw9ndr2P+iv8fNI4iXDQWLpDRC8KApoMuzZND/uqb0Fzz59ZJPGSJiJphLQdM5mP3dpxxDlhm3lH7M3vs7fNpg/8OS0m8cctw5ktbCMnd0YT9LT8Dk3giIj4EHH5eGAeqEwXm64ygvAcws3O5CrRdc79UpnW1kkzvv7Th9KPYHV9c/+ramzCZBpdGst0eC93V+Dpyxv31POQfEqNrq3OYPmDFsOMxKjs+xsducXx0K4LuPZxKgyOQEdSbpMpI28XwFGMkCpbGALMB5d0c76vAHpCwWQrp6xqgeflpRju9v38/vgTWCrqRgsFwK3gK0JDPkhiKyAEdZgNxHNjnAZJJM2eQEdCJwFgULkLT9H3psAmCki6ALiAXTQe4fQ4D8Iel6Z1dptPEoq3MZsgAuDz3IBlxDnMOCmiB/BlkA/G6abm3Mp8Or11VqowsPPq/kN/cVIBTyvXFfmKLOW1yJ2IPmfyZMSfxelQCnWfD8ObzZrDWC1v+oVz4mWJUAMmGcOl8pZvZwFLLVjZrFqo+Pgy4mGAq+lyCmxBATTPFgpDlYSNm0TNOb7qEmBFhc8bVBni4DBRiMLQCgWweAwiRDgdWhyeSQgTLCBQgsARkmAQSLngEYLsGwsC7naJiXQEfTYKVNAJiR6ckOu0BFwPKYzxM7TPKxOALABAOmwSIBBE5+vxpxZ90mCUO+D2Yb+V5yWxQBMA2GLIRcBQBkk/QVgCG3xRAgXwiFLIV9BABE27QJsL9540H0h6FZEmD4xogbimgTAMTUJe/giOOhAug2RWMIEG0/AGbHfUAx9Ym/fQXAIkg3KyDL4m6IRNoSY9dn+grAxKwAU9XBWwB5Syz/YiN3sNAkgIBp9TaOANgms8FXAOVlqW8WgEUwZQPXLyC/KpOJrXAbcC0+p5CY/xkh06HLEtfkD7JJ6kwOPO9+ka6kQucPLuy9rT3i+HNwRx/a0pv7utIEk2Cu5LiHCHkwkmnKBtGOOjaVBcgbLQyku2+tq6zgDTGyQa5z+fhVIKOvwuQvUMjXEYA/hGx6qiwIHgjxAhMFxN9cJsgG8XJVgM8PMjkDFec3YdxSMJEF0IHPiUeH0RfwfVnqykkK4Dz6AiEPSS607RWaFlDj0vtrcgJlloJskjA53cvVOPRIfR3KKgfQ9C2QWPROexP4wrNCjmMslJkJsRlt5BlphEVS6dy0fA0uBsqaHWIw2O19cV0OHf4AE2M26qWlvQ2TF6LWyXd2J410EiKUXeshwEZDyJsmZzbr7akY8SJc/2NlWwkglFng2Lfk+8wM4M4YuW7T4d/nsz7oW5Wj/wdXGukMTSgLegAAAABJRU5ErkJggg=="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_42x16dp.png","fqdn":"www.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":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.501Z","timestamp":1785159269501,"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 /images/branding/googlelogo/1x/googlelogo_color_42x16dp.png HTTP/1.1\r\nHost: www.gstatic.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 910\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:14 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:14 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 02 Nov 2023 22:48:00 GMT\r\ncontent-type: image/png\r\nvary: Origin\r\nage: 433455\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":910,"size_decoded":1583,"mime_type":"image/png","magic":"PNG image data, 42 x 16, 8-bit/color RGBA, non-interlaced","md5":"efa6bb2bfe459bc6f4bdafa3db0383f6","sha1":"52d15ce52fe50643e542c17812de43f4ed1b6ee0","sha256":"6318394f737c66f0e2ccfcd88e3935c6667633a1b95fa29fba2b75431d55eef2","sha512":"e23c04d8997f5c2f92070e09261b7ee50d9df8753f45cf66f604f0874ffa8d99e947c97c528ec02a2c3fbe8e43d840b343a7d0225532980d5da95031216415b7","ssdeep":"","tlshash":"491184a73cd1dc6854a47a87aa91b864ec250f1b91a220981237b42277313444fdc8f7","first_seen":"2023-04-05T07:39:29Z","last_seen":"2026-07-30T06:08:30.8939Z","times_seen":55641,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAACoAAAAQCAYAAABgIu2QAAADVUlEQVR4AcxUA9AdPRRNbdu2+7K//+4mW9vWqNbYU2z21bZt27Zt+6nK5lUftrkPO7V1Zu7iZnJycoUc2HYC4hZVKROjqCnmEdMaoDJRHv1g4HmNKuCFjVX0OajeO5CWML5eCrSlnaGMr5VCr4X+mdXrhwpd0GgKXtDgAPoUIJIgTDPFE42JalF37952QspE+6rG0zy/hVDdsDSInHy3Qp8Jr6pk99A/s7333ttRdrD3ramDRHbd/STTp4QG6F+5fNUq5kCvg5qWmxr8qWuincTxsWAu1bRKR42avCT4H1TFeXxU2ePTFRvMo7t2AmlI4ObkeWM2J9kTsyWJDSa/d8ZvSRFaU3vzzJohNkFA5Fnx8sz9mmGJt4XeVV2ZvTreFuWXZy29rqrJEYAwMUYKuYccgM+aAKRR0wweayOUwEdc++Tm034dK/e1in96CT7nocoO20YJpLh9MVsSnX65ObHyclviP+X3ORAbvri1kjJ+mxi8EmWiIjHFKeB9W6hXV+Z7iXITuMF8RBHyPDeKkHSDTeqAYO7XU6SavDgYYWKEjEYgoP6RG27pp7iOUwI6bgQ+MShn+XAkkzprMZuTNgLfxlmNC0AUNca7OIEwecP3CZXCglLsCMk7xEtcDyAwcAYC/GfyLHKTRQ2xEBoIvYbave2U0n8exhWkPZKS2o7Qyrgh+F70z1khnO5EzlrMpqQNwbdhVuvC4cwEO0bXNBas9yGhYF6qTPRWUd4ZjRDVJprJ42TktgEJzE/ZXM3k/0kp9CExHheC1Huo67CPuo7fr4JLy2YqC2Ughe6NpP6wTPfxFxuTlH6xJUlZKAOoWeCH0QfjTmVBHM4SP/Zeoboy20OUu16C//GSioW8FM/1UNwavQ4pVKUmP/x6bRJTbAdiFAFslkTHosXuJcqhe6RCPlh7tjlZwZhNiY46zbQpycH4rcnzRUuJGmKPw834ifcJffzffxl8FG8A7ohd9tGKFdEHR0g/q4wzRt5CKLI6LggG36+vQWRB8LONyQrAt8PZ25ta7/+sIBhMFBnd7pAp9AFAP/gJLmb3RgnRz4QUNhm6HsqKuIN1iclvUWZNQ78b/hnoT0MMMVsz+Qtq8JfQuGrvR+nR74omi+xEYOjVBgEYBQDoQD6ep9ySZwAAAABJRU5ErkJggg=="}},"time_used":18,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":18,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/37263.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.624Z","timestamp":1785159268624,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/37263.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 883\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 01:05:15 GMT\r\nlast-modified: Wed, 05 Nov 2025 15:32:22 GMT\r\netag: \"a60b84a23311e94dc9543f6771260fa7\"\r\nx-amz-server-side-encryption: AES256\r\ncache-control: public, max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 44954\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: gveo5foEEU1oc-RuA92kt59cHFkoe0C7Fvl73ZULf7zO2ZIVfrS30w==\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":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":883,"size_decoded":1437,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"a60b84a23311e94dc9543f6771260fa7","sha1":"e03b7af49201253d5e48542bfb0798ba71081069","sha256":"5eca3513dd3837f14f06e5603655876ac742f3f3663a99d27f6c10e22fdb9945","sha512":"54ae626d5b2b00c62327adbf6b8dded0e541e922c355df193ea5ae6866b93b000aee91962ca0537b5646708c09e1b3af53342cbd6258bb4492d99065ec4a4f64","ssdeep":"","tlshash":"8d11e6e3ebd044a2327574c2b7293d22691388be6d9333ccb0449fb301b9328da8e480","first_seen":"2026-03-04T08:47:10.827995Z","last_seen":"2026-07-29T06:14:00.308687Z","times_seen":1381,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADOklEQVR4XtWbsW5TQRBFI5CoKSkJJTUlEuIHQHwAAr4AeioKWuiwqcKf5CtS09BbgCXKJWvpWevjmd2Z3X3P6ysdKRrvzNw7SkEUcnGxoP6GVbDAvrNUCFf3GayWOIvzhxXN94b7hhGNzg33n0w0tjT0s5ho5NTQ36zi8lGgz+76F1YPuXQ0okf67iIuquXunXsHX0+wxj4v9N8kDq8hDSsF1mqv3z09mmWFOarEoR5ywbS6VEvrXpjHpW1Yv+dAD1IALVipxs+sbMP3N8xlFodZ0UJINa0u1fiZFeYyiUOsSEZLNa0u1fiZFebLis0eLh89EI2WajVwdwnmVMVGC9HQzc/Pu69HPQJzimKThdSQ5wi9oJ8czHugP2H1lg05UgOpodwRaL4X9KbxO3z7wNx78XEOaXla044wJ/Sowdx78aEGF6fL09qoR2DunfhIIxdmepPW4hH47sWrJ0dzpV4vnJWD+c0HkBaWal5zKZwj8fHTy6O+Es3hGUyrcUYt3NsSfsJ1AOlbWQrMWk+4tyV8xHUALifSO87oRY/wka4H4BHYPyLN4aXP2Ds6zQeQPmf/yDQdQDsC+0em+QDSEdg/Ml0OwCOwf2S6HeDcgk80H4Cfs3d0mg9w7kfodoD0HftHpssBeAT2j0y3A5xb8AnTASIMq8G+0Wn+eUCCvaPS/afBJY7w7PnjbjtcB4gwZAn2t8L5rTvcB/i1+XJkoARn1MK5PXbsD+A5Apdb4RwrnKPBvhIH4T0HiHB5DZwZqfkOK83UYP7bA6yv+SgHl48CfSpcM/9OwsMsXN4b7x7602DuvfjQAk30xrqHvnIw94H42ALNtCDNK+2hnxzMeyTvr8gnaKoWbV6pbiFmY15RbLRCUzQrIb2ValKd+0swZ1ZstkJzuQC5ulSrCT3BfEVtwtfqv/igWSmAFqxUqznCpvYvTjjIA81KAbRguRr3WGAulzjMixRCq2l1zvTAPFXiUC/Tf5WJSMFyR+AsD8zRJA5vQQs7kR6sFvrvIi4ZFfruqs3AfzUSvdHvbOLyU0N/i+j2n5Y/aGRptmF9RV+Li6aWgj5OLhqcC+4dUjTdCuefnRioBPvn0n82a2XLrkAq2gAAAABJRU5ErkJggg=="}},"time_used":37,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/6535.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.648Z","timestamp":1785159268648,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/6535.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1806\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Mon, 08 May 2023 03:42:18 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Sun, 26 Jul 2026 16:40:14 GMT\r\netag: \"de7112f39c6623341a6f2e9d89ab31e6\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 75255\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: eeIgS7CqZHoWzq1zGb-cGJWMe3wn6x79rA0L-42gnbyowyfSDSUsqA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":1806,"size_decoded":2340,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"de7112f39c6623341a6f2e9d89ab31e6","sha1":"fa9dd8e57b43b4f0e041a86fdcae6f9d93db1a7a","sha256":"ddc134f6755b95cfa468aebe1528788a4cb82af807a7e887ad88c986e5a3f770","sha512":"2e9f9ff3bcb43c1a828a13ce4e8ae0d42152a1a3b6fd18eb6dcb6bfa8f20aff6a088c252580d9396ad95ba018a2552200f9fc30670254cf68030ae3021cc7367","ssdeep":"","tlshash":"59312bdb4fc71fb05d640aa848041b83e60f09dfcbbb159d41a094dd86c1be253e216b","first_seen":"2023-07-14T07:00:22Z","last_seen":"2026-07-29T06:14:00.37457Z","times_seen":1384,"resource_available":false,"data":"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"}},"time_used":27,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":25,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80594.e87444e26f9e12545231.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.291Z","timestamp":1785159269291,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/80594.e87444e26f9e12545231.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-a338\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:48\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8e60a18f217d693cf6d200d2d1035a2b\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"]}],"data":{"size":41784,"size_decoded":13916,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (8882)","md5":"75148ecd9563758ef37fbf710fa1ed9c","sha1":"de1a10ecd54ec0decbb03a8cd557426111cea6d0","sha256":"cf8c7a93d59e717ec020cee201f3d4cc1c2abdd9d284d8c741acd1489c03835c","sha512":"f58c5f5e173f73a99e68100eddfff45b2ea08d85d707f75a9b525aed76766a2a71017d55a717a9392da38d5c5ae394e073d0e7784e029bda8c8aae2a167f353d","ssdeep":"768:E+Rr6eBG5q/FjGgPqzEthfn9evRIZ3XQl0m0FSCUSxlfHiTzJuqgyLDNZGItbNb6:spKxt59evRIZXxQy8NbNANtfJiO","tlshash":"5f13c83df5d1956372eb84ff4f66f6435a266402b26b6fe0b135d3c0244ac8b1222e6d","first_seen":"2026-07-23T13:38:20.394325Z","last_seen":"2026-07-28T07:05:00.704151Z","times_seen":1503,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjk2NSw4MDU5NCw4MDkzOV0sezgwNDYxOShvKXtvLmV4cG9ydHM9e319LDExNDA2OChvKXtvLmV4cG9ydHM9eyJjb21tb24tdG9vbHRpcCI6ImNvbW1vbi10b29sdGlwLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWhpZGRlbiI6ImNvbW1vbi10b29sdGlwLS1oaWRkZW4tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC0taG9yaXpvbnRhbCI6ImNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC0tZmFydGhlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbCI6ImNvbW1vbi10b29sdGlwLS12ZXJ0aWNhbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLWZhcnRoZXIiOiJjb21tb24tdG9vbHRpcC1mYXJ0aGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiOiJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5IjoiY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciI6ImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMiOiJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19idXR0b24iOiJjb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZCI6ImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlciI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93IjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlIjoiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFib3ZlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZSI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXIiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXkiOiJjb21tb24tdG9vbHRpcF9fYm9keS0td2l0aC1ob3RrZXktRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF93aWRlLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX25hcnJvdyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZyI6ImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jayI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jay0tZGl2aWRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dCI6ImNvbW1vbi10b29sdGlwX19ob3RrZXktdGV4dC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24tRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fcGx1cy1zaWduIjoiY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WCJ9fSw1NjkzOTgobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7aXNGZWF0dXJlRW5hYmxlZDooKT0+Z30pO3ZhciByPXQoOTQ4MzgwKSxsPXQoMzc3MjI2KSxjPXQoODU2MTk2KSxuPXQoOTMyMzY1KTtjb25zdCBhPW5ldyByLkRlbGVnYXRlLGk9ImZvcmNlZmVhdHVyZXRvZ2dsZS4iO2NvbnN0IHM9bmV3IGNsYXNze2VuYWJsZUZlYXR1cmUobyl7bi5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGkrbywidHJ1ZSIpLGEuZmlyZShvKX1kaXNhYmxlRmVhdHVyZShvKXtuLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0oaStvLCJmYWxzZSIpLGEuZmlyZShvKX1yZXNldEZlYXR1cmUobyl7bi5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGkrbyksYS5maXJlKG8pfW9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQoKXtyZXR1cm4gYX19O2Z1bmN0aW9uIGQobyxlKXtyZXR1cm4oIW9bZV18fC0xIT09b1tlXSkmJighISgidHJ1ZSI9PT1uLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oaStlKXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJ0cnVlIj09PXdpbmRvdy51c2VyPy5zZXR0aW5ncz8uW2krZV0pfHwhKCJmYWxzZSI9PT1uLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oaStlKXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJmYWxzZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltpK2VdKSYmKCEhb1tlXSYmKDE9PT1vW2VdfHwoMCxjLnNob3VsZEFmZmVjdFVzZXIpKGUsb1tlXSkpKSl9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e30sd2luZG93LlRyYWRpbmdWaWV3LkZlYXR1cmVUb2dnbGU9cztjb25zdCBnPSh1PXdpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGV8fHt9LCgwLGwub25XaWRnZXQpKCl8fFByb21pc2UuYWxsKFt0LmUoODU0MzQpLHQuZSg3Mjg1KSx0LmUoMTM5OTMpXSkudGhlbih0LmJpbmQodCw1MDcyODUpKS50aGVuKChvPT57by5wdXNoU3RyZWFtTXVsdGlwbGV4ZXIub24oImZlYXR1cmV0b2dnbGUiLChvPT57Y29uc3QgZT1kKHUsby5uYW1lKTt1W28ubmFtZV09by5zdGF0ZSxlIT09ZCh1LG8ubmFtZSkmJmEuZmlyZShvLm5hbWUpfSkpfSkpLApkLmJpbmQobnVsbCx1KSk7dmFyIHU7d2luZG93LlRyYWRpbmdWaWV3LmlzRmVhdHVyZUVuYWJsZWQ9Z30sNzkyNjEyKG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse2dldEluaXREYXRhOigpPT5sfSk7KDAsdCgyMjEwNjEpLmdldExvZ2dlcikoIkNvbW1vbi5Jbml0RGF0YSIpO2NvbnN0IHI9d2luZG93LmluaXREYXRhfHx7fTtmdW5jdGlvbiBsKCl7cmV0dXJuIHJ9fSw5MzIzNjUobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7VFZMb2NhbFN0b3JhZ2U6KCk9PmN9KTtjb25zdCByPSgwLHQoMjIxMDYxKS5nZXRMb2dnZXIpKCJUVkxvY2FsU3RvcmFnZSIpO3ZhciBsPWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaXNBdmFpbGFibGU9ITAsdGhpcy5sb2NhbFN0b3JhZ2U9d2luZG93LmxvY2FsU3RvcmFnZSx0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ0dmxvY2Fsc3RvcmFnZS5hdmFpbGFibGUiLCJ0cnVlIil9Y2F0Y2gobyl7ZGVsZXRlIHRoaXMuaXNBdmFpbGFibGUsZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlfXRoaXMuX3VwZGF0ZUxlbmd0aCgpO3RyeXt0aGlzLl9yZXBvcnQoKX1jYXRjaChvKXt9fTtsLnByb3RvdHlwZS5fcmVwb3J0PWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl7Y29uc3Qgbz0xMCxlPVtdO2ZvcihsZXQgbz0wO288dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO28rKyl7Y29uc3QgdD10aGlzLmtleShvKTtlLnB1c2goe2tleTp0LGxlbmd0aDpTdHJpbmcodGhpcy5nZXRJdGVtKHQpKS5sZW5ndGh9KX1lLnNvcnQoKChvLGUpPT5lLmxlbmd0aC1vLmxlbmd0aCkpO2NvbnN0IHQ9ZS5zbGljZSgwLG8pO2Uuc29ydCgoKG8sZSk9PmUua2V5Lmxlbmd0aC1vLmtleS5sZW5ndGgpKTtjb25zdCBsPWUuc2xpY2UoMCxvKTtyLmxvZ05vcm1hbChgVG90YWwgYW1vdW50IG9mIGtleXMgaW4gTG9jYWwgU3RvcmFnZTogJHt0aGlzLmxlbmd0aH1gKSxyLmxvZ05vcm1hbChgVG9wICR7b30ga2V5cyB3aXRoIGxvbmdlc3QgdmFsdWVzOiAke0pTT04uc3RyaW5naWZ5KHQpfWApLHIubG9nTm9ybWFsKGBUb3AgJHtvfSBsb25nZXN0IGtleSBuYW1lczogJHtKU09OLnN0cmluZ2lmeShsKX1gKTt0cnl7bmF2aWdhdG9yLnN0b3JhZ2UuZXN0aW1hdGUoKS50aGVuKChvPT57ci5sb2dOb3JtYWwoYFN0b3JhZ2UgZXN0aW1hdGU6ICR7SlNPTi5zdHJpbmdpZnkobyl9YCl9KSl9Y2F0Y2gobyl7fX19LGwucHJvdG90eXBlLmxlbmd0aD0wLGwucHJvdG90eXBlLmlzQXZhaWxhYmxlPSExLGwucHJvdG90eXBlLmxvY2FsU3RvcmFnZT17InR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSI6ImZhbHNlIn0sbC5wcm90b3R5cGUuX3VwZGF0ZUxlbmd0aD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBdmFpbGFibGUpdGhpcy5sZW5ndGg9dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2Vsc2V7dmFyIG8sZT0wO2ZvcihvIGluIHRoaXMubG9jYWxTdG9yYWdlKXRoaXMubG9jYWxTdG9yYWdlLmhhc093blByb3BlcnR5KG8pJiZlKys7dGhpcy5sZW5ndGg9ZX19LGwucHJvdG90eXBlLmtleT1mdW5jdGlvbihvKXtyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5rZXkobyk6T2JqZWN0LmtleXModGhpcy5sb2NhbFN0b3JhZ2UpW29dfSxsLnByb3RvdHlwZS5nZXRJdGVtPWZ1bmN0aW9uKG8pe3JldHVybiB0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmdldEl0ZW0obyk6dm9pZCAwPT09dGhpcy5sb2NhbFN0b3JhZ2Vbb10/bnVsbDp0aGlzLmxvY2FsU3RvcmFnZVtvXX0sbC5wcm90b3R5cGUuc2V0SXRlbT1mdW5jdGlvbihvLGUpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShvLGUpOnRoaXMubG9jYWxTdG9yYWdlW29dPWUsdGhpcy5fdXBkYXRlTGVuZ3RoKCl9LGwucHJvdG90eXBlLnJlbW92ZUl0ZW09ZnVuY3Rpb24obyl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG8pOmRlbGV0ZSB0aGlzLmxvY2FsU3RvcmFnZVtvXSx0aGlzLl91cGRhdGVMZW5ndGgoKX0sbC5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmNsZWFyKCk6dGhpcy5sb2NhbFN0b3JhZ2U9e30sdGhpcy5fdXBkYXRlTGVuZ3RoKCl9O2NvbnN0IGM9bmV3IGw7d2luZG93LlRWTG9jYWxTdG9yYWdlPWN9LDExNzMxMyhvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtpc09uTW9iaWxlQXBwUGFnZTooKT0+bH0pO3ZhciByPXQoNTg3NDM2KTtmdW5jdGlvbiBsKG8sZT0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOnR9PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IGw9InRydWUiPT09dC5nZXQoIm1vYmlsZWFwcF9uZXciKSxjPSJ0cnVlIj09PXQuZ2V0KCJtb2JpbGVhcHAiKTtpZighZSl7Y29uc3Qgbz1yLmdldCgidHZfYXBwIil8fCIiO2x8fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKG8pLGN8fD0iaW9zIj09PW99cmV0dXJuISgibmV3IiE9PW8mJiJhbnkiIT09b3x8IWwpfHwhKCJuZXciPT09b3x8IWMpfX0sNzc5Mzg5KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse0FjdGlvbkdyb3VwOigpPT5sfSk7dmFyIHI9dCg5OTI4MDMpO2NsYXNzIGx7Y29uc3RydWN0b3IobyxlKXt0aGlzLl9hY3Rpb25zPW5ldyBNYXAsdGhpcy5fbWFuYWdlcj1vLHRoaXMub3JkZXI9ZT8ub3JkZXI/PzAsdGhpcy5tb2RhbD0hKCFlfHwhZS5tb2RhbCksZSYmKHRoaXMuZGVzYz1lLmRlc2MpLGUmJmUuaXNEaXNhYmxlZD8iZnVuY3Rpb24iPT10eXBlb2YgZS5pc0Rpc2FibGVkP3RoaXMuaXNEaXNhYmxlZD1lLmlzRGlzYWJsZWQ6dGhpcy5pc0Rpc2FibGVkPSgpPT4hMDp0aGlzLmlzRGlzYWJsZWQ9KCk9PiExLHRoaXMuX21hbmFnZXIucmVnaXN0ZXJHcm91cCh0aGlzKX1hZGQobyl7bGV0IGU9dGhpcy5fYWN0aW9ucy5nZXQoby5ob3RrZXkpO2V8fChlPVtdLHRoaXMuX2FjdGlvbnMuc2V0KG8uaG90a2V5LGUpKTtjb25zdCB0PW5ldyByLkFjdGlvbih0aGlzLG8pO3JldHVybiBlLnB1c2godCksdH1yZW1vdmUobyl7Y29uc3QgZT10aGlzLl9hY3Rpb25zLmdldChvLmhvdGtleSk7aWYoIWUpcmV0dXJuCjtjb25zdCB0PWUuZmluZEluZGV4KChlPT5lPT09bykpO3Q+PTAmJigxPT09ZS5sZW5ndGg/dGhpcy5fYWN0aW9ucy5kZWxldGUoby5ob3RrZXkpOmUuc3BsaWNlKHQsMSkpfWhhbmRsZUhvdGtleShvLGUpe2NvbnN0IHQ9dGhpcy5fYWN0aW9ucy5nZXQobyk7aWYoIXQpcmV0dXJuITE7Zm9yKGNvbnN0IHIgb2YgdClpZigoIXIuZWxlbWVudHx8ZS50YXJnZXQmJnIuZWxlbWVudC5jb250YWlucyhlLnRhcmdldCkpJiYhci5pc0Rpc2FibGVkKGUpKXJldHVybiBlLnJlcGVhdCYmIXIuaXNSZXBlYXRBY2NlcHRlZHx8KHIuaGFuZGxlcihlKSx0aGlzLl9jYWxsTWF0Y2hlZEhvdGtleUhhbmRsZXIobykpLGUucHJldmVudERlZmF1bHQoKSwhMDtyZXR1cm4hMX1wcm9tb3RlKCl7dGhpcy5fbWFuYWdlci5wcm9tb3RlR3JvdXAodGhpcyl9ZGVzdHJveSgpe2Zvcihjb25zdFssb11vZiB0aGlzLl9hY3Rpb25zKWZvcihjb25zdCBlIG9mIG8pZS5kZXN0cm95KCk7dGhpcy5fYWN0aW9ucy5jbGVhcigpLHRoaXMuX21hbmFnZXIudW5yZWdpc3Rlckdyb3VwKHRoaXMpfXN0YXRpYyBzZXRNYXRjaGVkSG90a2V5SGFuZGxlcihvKXtsLl9tYXRjaGVkSG90a2V5SGFuZGxlcj1vfV9jYWxsTWF0Y2hlZEhvdGtleUhhbmRsZXIobyl7bC5fbWF0Y2hlZEhvdGtleUhhbmRsZXImJmwuX21hdGNoZWRIb3RrZXlIYW5kbGVyKG8pfX19LDI5MTM0MShvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtBY3Rpb25NYW5hZ2VyOigpPT5pfSk7dmFyIHI9dCgyMzIzNjQpLGw9dCgyMzU3MjQpLGM9dCg3MjEzNjkpLG49dCg2OTYyMDgpO2NsYXNzIGEgZXh0ZW5kcyByLldhdGNoZWRWYWx1ZXtzZXRWYWx1ZShvLGUpe2NvbnN0IHQ9dGhpcy52YWx1ZSgpOyhlfHx2b2lkIDA9PT10fHx0LmNvZGUhPT1vLmNvZGV8fHQubW9kaWZpZXJzIT09by5tb2RpZmllcnMpJiZzdXBlci5zZXRWYWx1ZShvKX19Y2xhc3MgaXtjb25zdHJ1Y3Rvcigpe3RoaXMuX2dyb3Vwcz1bXSx0aGlzLl9wcmVzc2VkS2V5cz1uZXcgci5XYXRjaGVkVmFsdWUoMCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlPW5ldyBhKG5ldyBuLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgwKSksdGhpcy5fa2V5RG93bkxpc3RlbmVyPW89PntpZihvLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2NvbnN0IGU9KDAsbC5oYXNoRnJvbUV2ZW50KShvKTtpZih0aGlzLl9wcmVzc2VkS2V5cy5zZXRWYWx1ZShlKSx0aGlzLl9rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUuc2V0VmFsdWUobmV3IG4uS2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCgwLGwubW9kaWZpZXJzRnJvbUV2ZW50KShvKSxvLmNvZGUpKSwhKDAsYy5pc05hdGl2ZVVJSW50ZXJhY3Rpb24pKGUsby50YXJnZXQpKWZvcihsZXQgdD10aGlzLl9ncm91cHMubGVuZ3RoO3QtLSA+MDspe2NvbnN0IHI9dGhpcy5fZ3JvdXBzW3RdO2lmKCFyLmlzRGlzYWJsZWQoKSl7aWYoci5oYW5kbGVIb3RrZXkoZSxvKSlyZXR1cm47aWYoci5tb2RhbClyZXR1cm59fX0sdGhpcy5fa2V5VXBMaXN0ZW5lcj1vPT57Y29uc3QgZT0oMCxsLmhhc2hGcm9tRXZlbnQpKG8pO3RoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKGUpLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgbi5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKDAsbC5tb2RpZmllcnNGcm9tRXZlbnQpKG8pLCIiKSl9LHRoaXMuX2JsdXJFdmVudD0oKT0+e3RoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKDApLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgbi5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoMCwiIikpfSx0aGlzLl9tb3VzZUV2ZW50PW89Pntjb25zdCBlPSgwLGwubW9kaWZpZXJzRnJvbUV2ZW50KShvKSx0PTI1NSYodGhpcy5fcHJlc3NlZEtleXMudmFsdWUoKT8/MCk7dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUoZXx0KX19bGlzdGVuKG8pe28uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fa2V5RG93bkxpc3RlbmVyKSxvLmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9rZXlVcExpc3RlbmVyKSxvLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX2JsdXJFdmVudCksby5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuX21vdXNlRXZlbnQpfXVubGlzdGVuKG8pe28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fa2V5RG93bkxpc3RlbmVyKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9rZXlVcExpc3RlbmVyKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLHRoaXMuX2JsdXJFdmVudCksby5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuX21vdXNlRXZlbnQpfXJlZ2lzdGVyR3JvdXAobyl7dGhpcy5fZ3JvdXBzLnB1c2gobyksdGhpcy5zb3J0R3JvdXBzKCl9dW5yZWdpc3Rlckdyb3VwKG8pe2ZvcihsZXQgZT10aGlzLl9ncm91cHMubGVuZ3RoO2UtLTspdGhpcy5fZ3JvdXBzW2VdPT09byYmdGhpcy5fZ3JvdXBzLnNwbGljZShlLDEpfXByb21vdGVHcm91cChvKXtjb25zdCBlPXRoaXMuX2dldE1vZGFsT3JkZXJFcG9jaCgpLHQ9cyhvLGUpO2xldCByPXRoaXMuX2dyb3Vwcy5maW5kSW5kZXgoKG89PnMobyxlKT09PXQpKSxsPTA7Zm9yKDtyPHRoaXMuX2dyb3Vwcy5sZW5ndGgmJnModGhpcy5fZ3JvdXBzW3JdLGUpPT09dDspe2NvbnN0IGM9dGhpcy5fZ3JvdXBzW3JdO2M9PT1vP2w9MTpzKGMsZSk9PT10JiYodGhpcy5fZ3JvdXBzW3ItbF09YykscisrfXRoaXMuX2dyb3Vwc1tyLWxdPW99cHJlc3NlZEtleXMoKXtyZXR1cm4gdGhpcy5fcHJlc3NlZEtleXMucmVhZG9ubHkoKX1rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKXtyZXR1cm4gdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnJlYWRvbmx5KCl9c29ydEdyb3Vwcygpe2NvbnN0IG89dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCk7dGhpcy5fZ3JvdXBzLnNvcnQoKChlLHQpPT5zKHQsbyktcyhlLG8pKSl9X2dldE1pbk9yZGVyKCl7cmV0dXJuIHRoaXMuX2dyb3Vwcy5yZWR1Y2UoKChvLGUpPT5NYXRoLm1pbihvLGUub3JkZXIpKSwwKX0KX2dldE1vZGFsT3JkZXJFcG9jaCgpe3JldHVybi0yKihNYXRoLmFicyh0aGlzLl9nZXRNaW5PcmRlcigpKS0xKX19ZnVuY3Rpb24gcyhvLGUpe3JldHVybiBvLm9yZGVyKyhvLm1vZGFsP2U6MCl9fSw5OTI4MDMobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7QWN0aW9uOigpPT5yfSk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihvLGUpe3RoaXMuX2dyb3VwPW87Y29uc3R7aG90a2V5OnQsaGFuZGxlcjpyLGRlc2M6bCxpc0Rpc2FibGVkOmMsZWxlbWVudDpuPW51bGwsaXNSZXBlYXRBY2NlcHRlZDphPSExfT1lO3RoaXMuaG90a2V5PXQsdGhpcy5oYW5kbGVyPXIsdGhpcy5kZXNjPWwsdGhpcy5lbGVtZW50PW4sdGhpcy5pc1JlcGVhdEFjY2VwdGVkPWEsdGhpcy5pc0Rpc2FibGVkPWM/ImZ1bmN0aW9uIj09dHlwZW9mIGM/YzooKT0+ITA6KCk9PiExfWRlc3Ryb3koKXt0aGlzLl9ncm91cCYmKHRoaXMuX2dyb3VwLnJlbW92ZSh0aGlzKSx0aGlzLl9ncm91cD1udWxsKX19fSw3MjcwOShvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVHcm91cDooKT0+bn0pO3ZhciByPXQoMjkxMzQxKSxsPXQoNzc5Mzg5KTtjb25zdCBjPW5ldyByLkFjdGlvbk1hbmFnZXI7Yy5wcmVzc2VkS2V5cygpLGMua2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKCk7ZnVuY3Rpb24gbihvKXtyZXR1cm4gbmV3IGwuQWN0aW9uR3JvdXAoYyxvKX19LDY5NjIwOChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtLZXlib2FyZFByZXNzZWRLZXlzU3RhdGU6KCk9Pmx9KTt2YXIgcj10KDIzNTcyNCk7Y2xhc3MgbHtjb25zdHJ1Y3RvcihvLGUpe3RoaXMubW9kaWZpZXJzPW8sdGhpcy5jb2RlPWV9YWx0T3JPcHRpb25Db2RlKCl7cmV0dXJuIkFsdExlZnQiPT09dGhpcy5jb2RlfHwiQWx0UmlnaHQiPT09dGhpcy5jb2RlfWNvbnRyb2xPck1ldGFDb2RlKCl7cmV0dXJuIHIuaXNNYWNLZXlib2FyZD8iTWV0YUxlZnQiPT09dGhpcy5jb2RlfHwiTWV0YVJpZ2h0Ij09PXRoaXMuY29kZXx8Ik9TTGVmdCI9PT10aGlzLmNvZGV8fCJPU1JpZ2h0Ij09PXRoaXMuY29kZToiQ29udHJvbExlZnQiPT09dGhpcy5jb2RlfHwiQ29udHJvbFJpZ2h0Ij09PXRoaXMuY29kZX19fSwzODcyMzEobyxlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKG8sZSx0PXt9KXtyZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxvLGZ1bmN0aW9uKG8sZSx0PXt9KXtjb25zdCByPU9iamVjdC5hc3NpZ24oe30sZSk7Zm9yKGNvbnN0IGwgb2YgT2JqZWN0LmtleXMoZSkpe2NvbnN0IGM9dFtsXXx8bDtjIGluIG8mJihyW2xdPVtvW2NdLGVbbF1dLmpvaW4oIiAiKSl9cmV0dXJuIHJ9KG8sZSx0KSl9dC5kKGUse21lcmdlVGhlbWVzOigpPT5yfSl9LDQ5MjY3NyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyl7Y29uc3QgZT1bXTtmb3IoY29uc3QgdCBpbiBvKWlmKG8uaGFzT3duUHJvcGVydHkodCkmJm51bGwhPW9bdF0pe2NvbnN0IHI9b1t0XSxsPSJvYmplY3QiPT10eXBlb2Ygcj9KU09OLnN0cmluZ2lmeShyKTpTdHJpbmcocik7ZS5wdXNoKHtrZXk6dCxwYWlyOmVuY29kZVVSSUNvbXBvbmVudCh0KSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGwpfSl9cmV0dXJuIGUuc29ydCgoKG8sZSk9Pm8ua2V5PmUua2V5PzE6by5rZXk8ZS5rZXk/LTE6MCkpLm1hcCgobz0+by5wYWlyKSkuam9pbigiJiIpfXQuZChlLHtjcmVhdGVVcmxQYXJhbXM6KCk9PnJ9KX0sMTA3MDQ1KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse051bWVyaWNGb3JtYXR0ZXI6KCk9PmN9KTt2YXIgcj10KDU5ODkyMiksbD10KDU0NjQ4NSk7Y2xhc3MgY3tjb25zdHJ1Y3RvcihvPXt9KXt0aGlzLl9vcHRpb25zPW99Zm9ybWF0KG8sZT17fSl7aWYoIU51bWJlci5pc0Zpbml0ZShvKSlyZXR1cm4gU3RyaW5nKG8pO2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0PXRoaXMuX29wdGlvbnMuaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0LG5vRXhwb25lbnRpYWxGb3JtOm49dGhpcy5fb3B0aW9ucy5ub0V4cG9uZW50aWFsRm9ybX09ZSx7bWluUHJlY2lzaW9uOmEscHJlY2lzaW9uOml9PXRoaXMuX29wdGlvbnMscz0oMCxsLmdldE51bWJlckZvcm1hdCkodCk7cmV0dXJuIHZvaWQgMD09PWk/Yy5fZm9ybWF0Tm9FSW1wbChvLHMsaSxhKTooMCxyLmZvcm1hdE51bWJlcikobyxzLGksbixhKX1wYXJzZShvLGUpe2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0LHByZWNpc2lvbjpjfT10aGlzLl9vcHRpb25zLG49KDAsbC5nZXROdW1iZXJGb3JtYXQpKHR8fGU/Lmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCk7bGV0IGE9KDAsci5wYXJzZU51bWJlcikobyxuKTtyZXR1cm4gTnVtYmVyLmlzRmluaXRlKGEpPyhjJiYoYT0rYS50b0ZpeGVkKGMpKSx7cmVzOiEwLHZhbHVlOmF9KTp7cmVzOiExfX1zdGF0aWMgZm9ybWF0Tm9FKG8sZSl7cmV0dXJuIHRoaXMuX2Zvcm1hdE5vRUltcGwobyxlKX1zdGF0aWMgX2Zvcm1hdE5vRUltcGwobyxlLHQsbCl7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShvKT8oZT1lPz97Z3JvdXBpbmdTZXBhcmF0b3I6IiIsZGVjaW1hbFNpZ246Ii4ifSwoMCxyLmZvcm1hdE51bWJlcikobyxlLHQsITAsbCkpOlN0cmluZyhvKX19fSw5MDEwMjIobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7U0VQQVJBVE9SX1BSRUZJWDooKT0+cn0pO2NvbnN0IHI9IiMjIyJ9LDM1NjM4MChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtnZXRUb29sdGlwRGF0YTooKT0+bCxzZXRUb29sdGlwRGF0YTooKT0+Y30pO2NvbnN0IHI9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gbChvLGUpe2NvbnN0IHQ9ci5nZXQobyk7cmV0dXJuIHQgaW5zdGFuY2VvZiBGdW5jdGlvbj90KGUpOnQmJnRbZV19ZnVuY3Rpb24gYyhvLGUsdCl7aWYodCBpbnN0YW5jZW9mIEZ1bmN0aW9uKXJldHVybiB2b2lkIHIuc2V0KG8sdCk7Y29uc3QgbD1yLmdldChvKSxjPXZvaWQgMD09PWx8fGwgaW5zdGFuY2VvZiBGdW5jdGlvbj97fTpsO2NbZV09dCxyLnNldChvLGMpfX0sNDkwMzc4KG8sZSx0KXsidXNlIHN0cmljdCI7dC5kKGUse2dldERhdGFGcm9tVGFyZ2V0OigpPT5tLGdldFRvb2x0aXA6KCk9PmgsaGlkZVRvb2x0aXA6KCk9PmYsCnNldFN0eWxlOigpPT5iLHNob3dUb29sdGlwOigpPT55fSk7dmFyIHIsbD10KDEzODYzOCksYz10KDQ0MzU1Nyksbj10KDk2OTE2OCksYT0odCg4MjkxODApLHQoNTE4NzUpKSxpPXQoNjQwNzQ0KSxzPXQoMzE4OTc0KSxkPXQoNjg2NjUwKSxnPXQoMzU2MzgwKSx1PXQoMzQ1MTUxKSxwPXQoMTE0MDY4KTtmdW5jdGlvbiBtKG8pe2NvbnN0IGU9ZnVuY3Rpb24obyl7Y29uc3QgZT1vLmhhc0F0dHJpYnV0ZSgiZGF0YS10b29sdGlwIik/by5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcCIpOm8uZ2V0QXR0cmlidXRlKCJ0aXRsZSIpO3JldHVybiBlJiYoKDAsZy5zZXRUb29sdGlwRGF0YSkobywidGV4dCIsZSksby5yZW1vdmVBdHRyaWJ1dGUoInRpdGxlIikpLCgwLGcuZ2V0VG9vbHRpcERhdGEpKG8sInRleHQiKXx8IiJ9KG8pLHQ9by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxyPXtoOnQuaGVpZ2h0LHc6dC53aWR0aCx4OnQubGVmdCx5OnQudG9wfSxsPW8uZ2V0QXR0cmlidXRlKCJkYXRhLWNvbG9yLXRoZW1lIil8fCIiLGM9by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLWh0bWwiKSxuPXBhcnNlSW50KG8uZ2V0QXR0cmlidXRlKCJkYXRhLXRvb2x0aXAtZGVsYXkiKXx8IiIpLGE9cGFyc2VJbnQoby5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcC1kZWJvdW5jZSIpfHwiIik7bGV0IGk9e3R5cGU6Im5vbmUifTtyZXR1cm4gZSYmKGk9e3R5cGU6Yz8iaHRtbCI6InRleHQiLGRhdGE6ZX0pLHthYm92ZTpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtYWJvdmUiKSxiZWxvdzpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtYmVsb3ciKSxvdGw6by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLW90bCIpLG90cjpvLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtb3RyIiksdmVydGljYWw6by5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLXZlcnRpY2FsIiksaG90a2V5Om8uZ2V0QXR0cmlidXRlKCJkYXRhLXRvb2x0aXAtaG90a2V5IiksbmFycm93Om8uY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1uYXJyb3ciKSx3aWRlOm8uY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC13aWRlIiksY29sb3JUaGVtZTpsLHRvb2x0aXBEZWxheTpuLHRvb2x0aXBEZWJvdW5jZTphLHJlY3Q6cixjb250ZW50OmksdGFyZ2V0Om99fWZ1bmN0aW9uIGgobyl7Y29uc3QgZT0oMCxsLmVuc3VyZU5vdE51bGwpKEYpLmNsb25lTm9kZSghMCksdD1EKGUpLHtjb250ZW50OnJ9PW87c3dpdGNoKHIudHlwZSl7Y2FzZSJlbGVtZW50Ijp0LmlubmVySFRNTD0iIix0LmFwcGVuZENoaWxkKHIuZGF0YSk7YnJlYWs7Y2FzZSJodG1sIjp0LmlubmVySFRNTD1yLmRhdGE7YnJlYWs7Y2FzZSJ0ZXh0IjppZihvLmhvdGtleSl7Y29uc3Qgbz0oMCxsLmVuc3VyZU5vdE51bGwpKEMpLmNsb25lTm9kZSghMCk7by5pbm5lclRleHQ9ci5kYXRhLHQuYXBwZW5kQ2hpbGQobyl9ZWxzZSB0LmlubmVyVGV4dD1yLmRhdGF9aWYoby5ob3RrZXkpe2NvbnN0IGU9Im5vbmUiIT09ci50eXBlLGM9KDAsbC5lbnN1cmVOb3ROdWxsKShFKS5jbG9uZU5vZGUoITApLG49KDAsdS5ob3RLZXlEZXNlcmlhbGl6ZSkoby5ob3RrZXkpLGE9bi5rZXlzLm1hcCgobz0+YDxzcGFuIGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uIl19Ij4ke299PC9zcGFuPmApKTtjLmlubmVySFRNTD1mdW5jdGlvbihvLGUpe2NvbnN0IHQ9L3tcZH18e2hvdGtleV9cZH0vZ2k7cmV0dXJuIG8ucmVwbGFjZSh0LChvPT57Y29uc3QgdD1OdW1iZXIoby5tYXRjaCgvXGQvKSk7cmV0dXJuIGVbdF19KSl9KG4udGV4dCxhKS5yZXBsYWNlKC9cc1wrXHMvZyxgPHNwYW4gY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbiJdfSI+Kzwvc3Bhbj5gKSx0LmNsYXNzTGlzdC5hZGQocFsiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5Il0pLGUmJmMuY2xhc3NMaXN0LmFkZChwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIl0pLHQuYXBwZW5kQ2hpbGQoYyl9cmV0dXJuIGUuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGEucHJldmVudERlZmF1bHQpLGV9ZnVuY3Rpb24gYihvLGUpe2NvbnN0IHQ9ZS5yZWN0O2lmKCF0KXJldHVybjsoMCxkLnNldFRvb2x0aXBDb2xvclRoZW1lKShvLGUuY29sb3JUaGVtZXx8ImRlZmF1bHQiKTtjb25zdCByPUQobyksbD1vLnF1ZXJ5U2VsZWN0b3IoYC4ke3BbImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyIl19YCk7ZS5hZGRDbGFzcyYmby5jbGFzc0xpc3QuYWRkKGUuYWRkQ2xhc3MpLGUuYWRkQm9keUNsYXNzJiZyLmNsYXNzTGlzdC5hZGQoZS5hZGRCb2R5Q2xhc3MpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSJdLEJvb2xlYW4oZS53aWRlKSksci5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nIl0sQm9vbGVhbihlLm5vUGFkZGluZykpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfbmFycm93Il0sQm9vbGVhbihlLm5hcnJvdykpLHIuY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucyJdLCEwKSxyLnN0eWxlLmxlZnQ9digwKSxyLnN0eWxlLndpZHRoPXYoci5jbGllbnRXaWR0aCsoQm9vbGVhbihlLm5vUGFkZGluZyk/MDoyKSk7Y29uc3QgYz1kb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoLGE9cy5DaGVja01vYmlsZS5pT1MoKXx8cy5DaGVja01vYmlsZS5BbmRyb2lkKCl8fCgwLHMuc3VwcG9ydFRvdWNoKSgpJiYoMCxzLmlzTWFjKSgpP3dpbmRvdy5pbm5lckhlaWdodDpkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCxnPWUudmVydGljYWwsdT1lLmV4dGVuZE1hcmdpbnx8ZyYmdC53PDIwfHwhZyYmdC5oPDIwO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZmFydGhlciJdLHUpLApvLmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXAtLXZlcnRpY2FsIl0sZyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsIl0sIWcpO2NvbnN0IG09ZnVuY3Rpb24obyl7cmV0dXJuIG8ucXVlcnlTZWxlY3RvcihgLiR7cFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXIiXX1gKX0obyksaD1vLm9mZnNldEhlaWdodDtpZihnKXtjb25zdCBzPTEwLGQ9YS0xMCxnPTEyLHU9cytnLGI9ZC1nLHk9KDAsaS5jbGFtcCkodC55K3QuaC8yLHUsYiktaC8yLGY9eStoO28uc3R5bGUubGVmdD12KHQueCt0LncpLG8uc3R5bGUudG9wPXYoeSkseTxzP3Iuc3R5bGUudG9wPWwuc3R5bGUudG9wPXYocy15KTpmPmQmJihyLnN0eWxlLnRvcD1sLnN0eWxlLnRvcD12KGQtZikpO2NvbnN0e3JpZ2h0Ond9PShvLnF1ZXJ5U2VsZWN0b3IoIjpsYXN0LWNoaWxkIil8fHIpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLF89dysxMD5jO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkIl0sXyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIl0sIV8pO2xldCBrPV8/ImFmdGVyIjoiYmVmb3JlIjsoMCxuLmlzUnRsKSgpPyhrPWUub3RyPyJhZnRlciI6ayxrPWUub3RsPyJiZWZvcmUiOmspOihrPWUub3RyPyJiZWZvcmUiOmssaz1lLm90bD8iYWZ0ZXIiOmspLG0uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVmb3JlIl0sImJlZm9yZSI9PT1rKSxtLmNsYXNzTGlzdC50b2dnbGUocFsiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyIl0sImFmdGVyIj09PWspLCJhZnRlciI9PT1rJiYoby5zdHlsZS5sZWZ0PSJhdXRvIixvLnN0eWxlLnJpZ2h0PXYoYy10LngpKX1lbHNle2NvbnN0IG49dC54LShyLm9mZnNldFdpZHRoLXQudykvMixpPWMtby5vZmZzZXRXaWR0aC0yMDw9MD8oYy1vLm9mZnNldFdpZHRoKS8yOjEwLHM9Yy1pLW8ub2Zmc2V0V2lkdGgsZD1NYXRoLm1heChpLE1hdGgubWluKG4scykpO28uc3R5bGUubGVmdD12KGQpO2NvbnN0IGc9czxuO28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkIl0sZyksby5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIl0sIWcpO2NvbnN0IHU9ZnVuY3Rpb24obyxlLHQscil7aWYoby5hYm92ZSlyZXR1cm4gTChlLHIpPyJhYm92ZSI6ImJlbG93IjtpZihvLmJlbG93KXJldHVybiBmdW5jdGlvbihvLGUsdCl7cmV0dXJuIHQueSt0LmgrZSsxMDxvfShlLHQscik/ImJlbG93IjoiYWJvdmUiO3JldHVybiBMKHQscik/ImFib3ZlIjoiYmVsb3cifShlLGEsaCx0KTsiYWJvdmUiPT09dT9vLnN0eWxlLmJvdHRvbT12KGEtdC55KTpvLnN0eWxlLnRvcD12KHQueSt0LmgpLG0uY2xhc3NMaXN0LmFkZCgiYWJvdmUiPT09dT9wWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUiXTpwWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ciXSk7Y29uc3R7bGVmdDpifT1yLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2xldCB5PU1hdGgudHJ1bmModC54K3Qudy8yLShiK3IuY2xpZW50V2lkdGgvMikpO28uc3R5bGUubGVmdD12KGQreSksby5zdHlsZS53aWR0aD12KHIuY2xpZW50V2lkdGgrbC5jbGllbnRXaWR0aCkseT1nP01hdGgubWF4KDAseSk6TWF0aC5taW4oMCx5KSxsLnN0eWxlLmxlZnQ9digteSksci5zdHlsZS5sZWZ0PXYoLXkpfX1mdW5jdGlvbiB5KG8pe28uY2xhc3NMaXN0LnRvZ2dsZShwWyJjb21tb24tdG9vbHRpcC0taGlkZGVuIl0sITEpfWZ1bmN0aW9uIGYobyl7by5jbGFzc0xpc3QudG9nZ2xlKHBbImNvbW1vbi10b29sdGlwLS1oaWRkZW4iXSwhMCl9ZnVuY3Rpb24gdihvKXtyZXR1cm5gJHtNYXRoLmZsb29yKG8pfXB4YH0hZnVuY3Rpb24obyl7b1tvLlZpZXdwb3J0UGFkZGluZz0xMF09IlZpZXdwb3J0UGFkZGluZyJ9KHJ8fChyPXt9KSk7Y29uc3Qgdz1gXG5cdDxkaXYgaWQ9ImNvbW1vbi10b29sdGlwLXdyYXBwZXIiIGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwIl19Ij5cblx0XHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyIl19IiA+XG5cdFx0XHQ8ZGl2IGNsYXNzPSIke3BbImNvbW1vbi10b29sdGlwX19ib2R5Il19IGpzLXRvb2x0aXAtYm9keSI+PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciJdfSI+PC9kaXY+XG5cdDwvZGl2PlxuYCxfPWBcblx0PGRpdiBjbGFzcz0iJHtwWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrIl19Ij48L2Rpdj5cbmAsaz1gXG5cdDxkaXYgY2xhc3M9IiR7cFsiY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0Il19Ij48L2Rpdj5cbmAsRj0oMCxjLnBhcnNlSHRtbEVsZW1lbnQpKHcpLEU9KDAsYy5wYXJzZUh0bWxFbGVtZW50KShfKSxDPSgwLGMucGFyc2VIdG1sRWxlbWVudCkoayk7ZnVuY3Rpb24gRChvKXtyZXR1cm4gby5xdWVyeVNlbGVjdG9yKGAuJHtwWyJjb21tb24tdG9vbHRpcF9fYm9keSJdfWApfWZ1bmN0aW9uIEwobyxlKXtyZXR1cm4gMTArbzxlLnl9fSwxNjc4OTYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7ZW1wdHk6KCk9Pm4sc2V0VG9vbHRpcDooKT0+YX0pO2NvbnN0IHI9InRvb2x0aXAtcm9vdC1lbGVtZW50IjtsZXQgbDtmdW5jdGlvbiBjKCl7Y29uc3Qgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChyKTtvP2w9bzoobD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxsLmlkPXIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsKSl9ZnVuY3Rpb24gbigpe2wmJihsLmlubmVySFRNTD0iIil9ZnVuY3Rpb24gYShvKXtuKCksbHx8YygpLGwuYXBwZW5kQ2hpbGQobyl9ImludGVyYWN0aXZlIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/YygpOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGMpfSw2NTg5OTUobyxlLHQpeyJ1c2Ugc3RyaWN0Igo7dC5kKGUse2NsZWFyU2NoZWR1bGU6KCk9Pm4sc2NoZWR1bGVIaWRlOigpPT5pLHNjaGVkdWxlUmVtb3ZlOigpPT5hLHNjaGVkdWxlUmVuZGVyOigpPT5zfSk7bGV0IHI9MCxsPTAsYz0wO2Z1bmN0aW9uIG4oKXtjbGVhclRpbWVvdXQociksY2xlYXJUaW1lb3V0KGwpLGNsZWFyVGltZW91dChjKX1mdW5jdGlvbiBhKG8sZSl7Yz1zZXRUaW1lb3V0KG8sZSl9ZnVuY3Rpb24gaShvLGUpe2w9c2V0VGltZW91dChvLGUpfWZ1bmN0aW9uIHMobyxlKXtyPXNldFRpbWVvdXQobyxlKX19LDY4NjY1MChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtzZXRUb29sdGlwQ29sb3JUaGVtZTooKT0+Y30pO2NvbnN0IHI9e2RlZmF1bHQ6IiIsd2hpdGU6InRoZW1lLXdoaXRlIixjaGFydDoidGhlbWUtY2hhcnQiLG5ld3M6InRoZW1lLW5ld3MiLCJyb3VuZC1zaGFkb3ciOiJ0aGVtZS1yb3VuZC1zaGFkb3cifSxsPU9iamVjdC5rZXlzKHIpO2Z1bmN0aW9uIGMobyxlKXtjb25zdCB0PWwuaW5jbHVkZXMoZSk/cltlXToiIjtvLmNsYXNzTGlzdC5yZW1vdmUoLi4ubC5tYXAoKG89PnJbb10pKS5maWx0ZXIoKG89PiEhbykpKSx0JiYhby5jbGFzc0xpc3QuY29udGFpbnModCkmJm8uY2xhc3NMaXN0LmFkZCh0KX19LDc0MjU3NyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyxlKXtyZXR1cm4gbyYmby51dG1fY2FtcGFpZ24mJihvLnV0bV9jYW1wYWlnbis9YC0ke2V9YCksb31hc3luYyBmdW5jdGlvbiBsKG8sZSxyLGwpe2lmKCJsZW50YXJ1Ij09PW8pe2NvbnN0e2dldExlbnRhQ29weXJpZ2h0RGF0YTpvfT1hd2FpdCBQcm9taXNlLmFsbChbdC5lKDQ0MjUzKSx0LmUoODUwMzgpXSkudGhlbih0LmJpbmQodCwyODQwNDEpKTtyZXR1cm4gbygpfWlmKCJjbW9uZXljb210dyI9PT1vKXtjb25zdHtnZXRDbW9uZXljb210d0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg1OTk0MSksdC5lKDY0NDUpLHQuZSg3MTM5NCldKS50aGVuKHQuYmluZCh0LDc3Nzc2OSkpO3JldHVybiBvKGUscil9aWYoIm5ldyI9PT1sKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg5Nzc5NyksdC5lKDc2MDQwKV0pLnRoZW4odC5iaW5kKHQsOTgxMTU3KSk7cmV0dXJuIG8oZSxyKX1pZigid2l0aF9ib3JkZXIiPT09bCl7Y29uc3R7Z2V0VHJhZGluZ1ZpZXdDb3B5cmlnaHREYXRhOm99PWF3YWl0IFByb21pc2UuYWxsKFt0LmUoNTM1MjEpLHQuZSgxNjgxMyldKS50aGVuKHQuYmluZCh0LDg1MjY2OSkpO3JldHVybiBvKGUscil9aWYoImxhcmdlX3RyYWRlIj09PWwpe2NvbnN0e2dldFRyYWRpbmdWaWV3Q29weXJpZ2h0RGF0YTpvfT1hd2FpdCBQcm9taXNlLmFsbChbdC5lKDc0MDExKSx0LmUoNzkwNDEpXSkudGhlbih0LmJpbmQodCw0OTM1NTkpKTtyZXR1cm4gbyhlLHIpfXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6b309YXdhaXQgUHJvbWlzZS5hbGwoW3QuZSg1OTk0MSksdC5lKDk3NTA5KV0pLnRoZW4odC5iaW5kKHQsNzA1NzkwKSk7cmV0dXJuIG8oZSxyKX19dC5kKGUse2FkZFV0bUNhbXBhaWduU291cmNlOigpPT5yLGdldEN1c3RvbWVyQ29weXJpZ2h0RGF0YTooKT0+bH0pfSw3NDgwMDIobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7Z2V0V2lkZ2V0U2hlcmlmZkFjdGlvbnM6KCk9PnN9KTt2YXIgcj10KDIyMTA2MSksbD10KDM4NDAxNyksYz10KDUyODg2NCk7Y29uc3Qgbj13aW5kb3cuV0lER0VUX1NIRVJJRkZfSE9TVHx8Imh0dHBzOi8vd2lkZ2V0LXNoZXJpZmYueHN0YWdpbmctd2lkZ2V0LnR2IixhPSgwLHIuZ2V0TG9nZ2VyKSgiV2lkZ2V0U2hlcmlmZi5XaWRnZXQiKTtsZXQgaT1udWxsO2FzeW5jIGZ1bmN0aW9uIHMoKXtyZXR1cm4gbnVsbD09PWkmJihpPWF3YWl0IGFzeW5jIGZ1bmN0aW9uKCl7Y29uc3Qgbz1mdW5jdGlvbigpe2lmKGRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucyYmZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zLmxlbmd0aClyZXR1cm4gZG9jdW1lbnQubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zW2RvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGgtMV07dHJ5e3JldHVybiBuZXcgVVJMKGRvY3VtZW50LnJlZmVycmVyKS5vcmlnaW59Y2F0Y2gobyl7cmV0dXJuIGRvY3VtZW50LmxvY2F0aW9uLm9yaWdpbnx8bnVsbH19KCk7aWYobnVsbD09PW8pcmV0dXJuIGEubG9nV2FybigiYW5jZXN0b3JPcmlnaW4gaXMgdW5kZWZpbmVkIiksUHJvbWlzZS5yZXNvbHZlKFtdKTtjb25zdCBlPW5ldyBVUkwoIi9zaGVyaWZmL2FwaS92MS9ydWxlcy9zZWFyY2giLG4pO2Uuc2VhcmNoUGFyYW1zLmFwcGVuZCgib3JpZ2luIixvKTtyZXR1cm4oYXdhaXQoMCxsLmZldGNoKShlLnRvSlNPTigpKS50aGVuKChvPT57aWYoIW8ub2spdGhyb3cgbmV3IEVycm9yKCJHdWFyZCByZXF1ZXN0IGVycm9yIG9jY3VyZWQiKTtyZXR1cm4gMjA0PT09by5zdGF0dXM/UHJvbWlzZS5yZXNvbHZlKHthY3Rpb25zOltdfSk6by5qc29uKCl9KSkuY2F0Y2goKG89PihhLmxvZ1dhcm4oby5tZXNzYWdlKSxQcm9taXNlLnJlc29sdmUoe2FjdGlvbnM6W119KSkpKSkuYWN0aW9ucy5maWx0ZXIoKG89PmMud2lkZ2V0U2hlcmlmZkFjdGlvbnMuaGFzKG8pKSl9KCkpLFByb21pc2UucmVzb2x2ZShpKX19LDI2NTEwOChvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9Pml9KTt2YXIgcj10KDEzODYzOCksbD10KDc0ODAwMiksYz10KDY1MzgxNyksbj10KDc0MjU3NyksYT10KDUyODg2NCk7ZnVuY3Rpb24gaShvLGUsdCxpPXt9KXtpZihudWxsPT09by5wYXJlbnRFbGVtZW50KXJldHVybiBjb25zb2xlLndhcm4oIkNhbiBub3Qgd3JhcCAnZWxXaWRnZXRDb250YWluZXInIGJlY2F1c2UgaXQgaGFzIG5vIHBhcmVudEVsZW1lbnQiKSxvO2xldCBzPW51bGwsZD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWJvZHkiKTtjb25zdCBnPW51bGwhPT1kO2lmKGcpe2Q9KDAsci5lbnN1cmVOb3ROdWxsKShkKSxzPSgwLApyLmVuc3VyZU5vdE51bGwpKGQucGFyZW50RWxlbWVudCk7bGV0IG89ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmpzLWVtYmVkLXdpZGdldC1oZWFkIik7bnVsbD09PW8mJihvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8uY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlciIpLG8uY2xhc3NMaXN0LmFkZCgianMtZW1iZWQtd2lkZ2V0LWhlYWQiKSxzLmluc2VydEJlZm9yZShvLGQpKX1lbHNlIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iikscy5jbGFzc0xpc3QuYWRkKCJ0di1lbWJlZC13aWRnZXQtd3JhcHBlciIpLHMuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIGpzLWVtYmVkLXdpZGdldC1oZWFkIj48L2Rpdj48ZGl2IGNsYXNzPSJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keSBqcy1lbWJlZC13aWRnZXQtYm9keSI+PC9kaXY+JyxkPXMucXVlcnlTZWxlY3RvcigiLmpzLWVtYmVkLXdpZGdldC1ib2R5Iik7aWYoaS5vdmVyZmxvd0F1dG8mJmQuY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHktLW92ZXJmbG93X2F1dG8iKSxpLnNob3dCb3JkZXJPblRyYW5zcGFyZW50JiZkLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1ib3JkZXItb24tdHJhbnNwYXJlbnQiKSwhaS5pc1doaXRlTGFiZWwpeyFhc3luYyBmdW5jdGlvbihvLGUsdCxpLHM9e30pe2NvbnN0IGQ9cy5pc1NoZXJpZmZEaXNhYmxlZD9bXTphd2FpdCgwLGwuZ2V0V2lkZ2V0U2hlcmlmZkFjdGlvbnMpKCksZz1kLmluY2x1ZGVzKGEuS25vd25BY3Rpb24uTGFyZ2VUcmFkZUxvZ28pLHU9ZnVuY3Rpb24obyl7cmV0dXJuWyJjcnlwdG8tY29pbnMtaGVhdG1hcCIsImZvcmV4LWNyb3NzLXJhdGVzIiwibWFya2V0LW92ZXJ2aWV3Iiwic3ltYm9sLW92ZXJ2aWV3IiwibWFya2V0LXF1b3RlcyIsInN0b2NrLWhlYXRtYXAiLCJzY3JlZW5lciIsImZvcmV4LWhlYXQtbWFwIiwiY3J5cHRvLW1rdC1zY3JlZW5lciIsImV2ZW50cyIsImhvdGxpc3RzIl0uaW5jbHVkZXMobyl9KGUpLHA9ZyYmdT8ibGFyZ2VfdHJhZGUiOnZvaWQgMCxtPWF3YWl0KDAsbi5nZXRDdXN0b21lckNvcHlyaWdodERhdGEpKHMuY3VzdG9tZXIscy5sb2NhbGUsKDAsbi5hZGRVdG1DYW1wYWlnblNvdXJjZSkoey4uLml9LCJsb2dvIikscCksaD1wPz9zLmNvcHlyaWdodE9wdGlvbnM/Lm1vZGU/PyJzbWFsbF9vbGQiOygwLHIuZW5zdXJlTm90TnVsbCkobykuYXBwZW5kQ2hpbGQoKDAsYy5jcmVhdGVDb3B5cmlnaHRMYWJlbCkoe3NoZXJpZmZPcHRpb25zOmQsc25hcFRvRWRnZTp0LC4uLnMuY29weXJpZ2h0T3B0aW9ucywuLi5tLG1vZGU6aH0pKX0oZCxlLCFkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCJpcy10cmFuc3BhcmVudCIpfHxCb29sZWFuKGkuc2hvd0JvcmRlck9uVHJhbnNwYXJlbnQpLHQsaSl9cmV0dXJuIGd8fChvLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKHMsbyksZC5hcHBlbmRDaGlsZChvKSksb319LDc1MTU1NyhvLGUsdCl7InVzZSBzdHJpY3QiO3QuZChlLHtjcmVhdGVFbWJlZFdpZGdldFdyYXBwZXI6KCk9PnIuY3JlYXRlRW1iZWRXaWRnZXRXcmFwcGVyfSk7dCg4MDQ2MTkpO3ZhciByPXQoMjY1MTA4KX0sNDI5NjYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LnIoZSk7dmFyIHI9dCg4NTYzMjQpLGw9dCg5NjMwOTgpOygwLHIucmVnaXN0ZXJMYW5ndWFnZUdldHRlcikoKCgpPT53aW5kb3cubGFuZ3VhZ2V8fCIiKSksKDAsci5yZWdpc3Rlckxhbmd1YWdlQ29kZU1hcHBlcikobC5nZXRJc29MYW5ndWFnZUNvZGVGcm9tTGFuZ3VhZ2UpfSw2MzE2MzQobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7Z2V0SW5pdERhdGE6KCk9Pmx9KTt2YXIgcj10KDc5MjYxMik7ZnVuY3Rpb24gbCgpe3JldHVybigwLHIuZ2V0SW5pdERhdGEpKCl9fSw0MDAxODEobyxlLHQpeyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiByKCl7Y29uc3R7Z2V0VHJhY2tlckluc3RhbmNlOm99PWF3YWl0IFByb21pc2UuYWxsKFt0LmUoNzA2NDQpLHQuZSg5NTIwNyldKS50aGVuKHQuYmluZCh0LDQ3NzE1MCkpO3JldHVybiBvKCl9dC5kKGUse2dldFRyYWNrZXI6KCk9PnJ9KX0sMTU2ODI5KG8sZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihvKXtyZXR1cm4gdm9pZCAwIT09byYmby5pbmNsdWRlcygiY3J5cHRvIil9dC5kKGUse2hhc0NyeXB0b1R5cGVzcGVjOigpPT5yfSl9LDc5NTM4MyhvLGUsdCl7dCgzNjMyNjkpLnNldENsYXNzZXMoKSx0KDQyOTY2KSx0KDYxMDI2OCk7dmFyIHI9dCg3NDk2NDgpLndoZW5Eb2N1bWVudFJlYWR5LGw9dCg5MzExOTgpLmhhbmRsZVRWTGlua3NDbGljaztyKCgoKT0+e2woKX0pKX0sNjEwMjY4KG8sZSx0KXsidXNlIHN0cmljdCI7dC5yKGUpLCgwLHQoMTE1MjkzKS5zZXREb2N1bWVudERpckdldHRlcikoKCgpPT53aW5kb3cuZG9jdW1lbnQuZGlyKSl9LDI0MTkzNyhvLGUsdCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIobyxlKXtjb25zdCB0PWV8fHdpbmRvdy5sb2NhbGV8fCJlbiI7bGV0IHI9b1t0XT9vW3RdOm8uZW47cmV0dXJuIHI9InRyYWRpbmd2aWV3LmNvbSI9PT1yPyJ3d3cudHJhZGluZ3ZpZXcuY29tIjpyLHI/ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wrIi8vIityOiIifXQuZChlLHtkZXRlcm1pbmVCYXNlVXJsOigpPT5yfSl9LDk2MzkwMChvLGUsdCl7InVzZSBzdHJpY3QiO3ZhciByOyFmdW5jdGlvbihvKXtvLkVtcHR5PSIiLG8uVGVjaG5pY2Fsc1BhdGg9InRlY2huaWNhbHMvIixvLkZpbmFuY2lhbHNPdmVydmlld1BhdGg9ImZpbmFuY2lhbHMtb3ZlcnZpZXcvIixvLlRpbWVsaW5lUGF0aD0iaGlzdG9yeS10aW1lbGluZS8iLG8uTmV3c1BhdGg9Im5ld3MvIixvLk9wdGlvbnNQYXRoPSJvcHRpb25zLyIsby5Qcm9maWxlUGF0aD0icHJvZmlsZS8iLG8uSG9sZGluZ3NQYXRoPSJob2xkaW5ncy8ifShyfHwocj17fSkpfSw1MjgzOTYobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7CmdldFRyYW5zbGF0ZWRTeW1ib2xEZXNjcmlwdGlvbjooKT0+Y30pO3ZhciByPXQoMTg1MjcxKTtmdW5jdGlvbiBsKG8pe2NvbnN0IGU9YCMke299LXN5bWJvbC1kZXNjcmlwdGlvbmAsbD1yLnQoZSx2b2lkIDAsdCgyNTg2NjcpKTtyZXR1cm4gbD09PWU/bnVsbDpsfWZ1bmN0aW9uIGMobyl7aWYodm9pZCAwIT09by5wcm9fbmFtZSl7Y29uc3QgZT1sKG8ucHJvX25hbWUpO2lmKG51bGwhPT1lKXJldHVybiBlO2lmKHZvaWQgMCE9PW8uc2hvcnRfbmFtZSl7Y29uc3QgZT1sKG8uc2hvcnRfbmFtZSk7aWYobnVsbCE9PWUpcmV0dXJuIGV9fXJldHVybiJlbiIhPT1vLmxhbmd1YWdlJiZ2b2lkIDAhPT1vLmxvY2FsX2Rlc2NyaXB0aW9uJiZvLmxhbmd1YWdlPT09d2luZG93Lmxhbmd1YWdlfHwiZW4iPT09by5sYW5ndWFnZSYmdm9pZCAwIT09by5sb2NhbF9kZXNjcmlwdGlvbiYmby5sYW5ndWFnZT09PXdpbmRvdy5sYW5ndWFnZT9vLmxvY2FsX2Rlc2NyaXB0aW9uOm8uZGVzY3JpcHRpb258fCIifX0sNzMwNjQ1KG8sZSx0KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihvKXtjb25zdCBlPW5ldyBVUkwobyxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm4gYyhlKSYmbChlKX10LmQoZSx7aXNJbnRlcm5hbEhvc3Q6KCk9Pm4saXNTYWZlVXJsOigpPT5yfSk7Y29uc3QgbD1vPT4hby51c2VybmFtZSxjPW89PiJodHRwOiI9PT1vLnByb3RvY29sfHwiaHR0cHM6Ij09PW8ucHJvdG9jb2w7ZnVuY3Rpb24gbihvLGU9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKXtjb25zdCB0PSIuIj09PWUuc2xpY2UoLTEpPzM6MixyPWUudG9Mb3dlckNhc2UoKS5zcGxpdCgiLiIpLnNsaWNlKC10KSxsPW8udG9Mb3dlckNhc2UoKS5zcGxpdCgiLiIpLnNsaWNlKC1yLmxlbmd0aCk7cmV0dXJuIHIuam9pbigiLiIpPT09bC5qb2luKCIuIil9fSw3Mzg0NTgobyxlLHQpeyJ1c2Ugc3RyaWN0Ijt0LmQoZSx7aXNBbmRyb2lkOigpPT51LGlzQW55TW9iaWxlOigpPT55LGlzQmxhY2tCZXJyeTooKT0+cCxpc0Nocm9tZTooKT0+YSxpc0VkZ2U6KCk9PnMsaXNGRjooKT0+aSxpc0lPUzooKT0+bSxpc0lQYWQ6KCk9PmIsaXNNYWM6KCk9PmcsaXNPcGVyYU1pbmk6KCk9PmgsaXNTYWZhcmk6KCk9PmQsbW9iaWxldG91Y2g6KCk9PmMsdG91Y2g6KCk9Pm59KTtjb25zdCByPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcixsPXImJiJvbnRvdWNoc3RhcnQiaW4gd2luZG93LGM9ciYmbCYmIm9ub3JpZW50YXRpb25jaGFuZ2UiaW4gd2luZG93LG49ciYmKGx8fCEhbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzKSxhPXImJndpbmRvdy5jaHJvbWUmJndpbmRvdy5jaHJvbWUucnVudGltZSxpPXImJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpPi0xLHM9ciYmL1xzRWRnZVwvXGRcZFxiLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGQ9ciYmQm9vbGVhbihuYXZpZ2F0b3IudmVuZG9yKSYmbmF2aWdhdG9yLnZlbmRvci5pbmRleE9mKCJBcHBsZSIpPi0xJiYtMT09PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiQ3JpT1MiKSYmLTE9PT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksZz1yJiYvbWFjL2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHU9KHImJi9XaW4zMnxXaW42NC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxyJiYvTGludXgvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksciYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSxwPXImJi9CbGFja0JlcnJ5L2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxtPXImJi9pUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksaD1yJiYvT3BlcmEgTWluaS9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksYj1yJiYoIk1hY0ludGVsIj09PW5hdmlnYXRvci5wbGF0Zm9ybSYmbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzPjF8fC9pUGFkLy50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkpLHk9dXx8cHx8bXx8aH0sMzE3NjYzKG8peyJ1c2Ugc3RyaWN0Igo7by5leHBvcnRzPUpTT04ucGFyc2UoJ3siY29sb3Itd2hpdGUiOiIjZmZmZmZmIiwiY29sb3ItYmxhY2siOiIjMDAwMDAwIiwiY29sb3ItdHJhbnNwYXJlbnQiOiIjMDAwMDAwMDAiLCJjb2xvci1jb2xkLWdyYXktNTAiOiIjRjlGOUY5IiwiY29sb3ItY29sZC1ncmF5LTEwMCI6IiNGMkYyRjIiLCJjb2xvci1jb2xkLWdyYXktMTUwIjoiI0VCRUJFQiIsImNvbG9yLWNvbGQtZ3JheS0yMDAiOiIjREJEQkRCIiwiY29sb3ItY29sZC1ncmF5LTI1MCI6IiNDOUM5QzkiLCJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0I4QjhCOCIsImNvbG9yLWNvbGQtZ3JheS0zNTAiOiIjQThBOEE4IiwiY29sb3ItY29sZC1ncmF5LTQwMCI6IiM5QzlDOUMiLCJjb2xvci1jb2xkLWdyYXktNDUwIjoiIzhDOEM4QyIsImNvbG9yLWNvbGQtZ3JheS01MDAiOiIjODA4MDgwIiwiY29sb3ItY29sZC1ncmF5LTU1MCI6IiM3MDcwNzAiLCJjb2xvci1jb2xkLWdyYXktNjAwIjoiIzYzNjM2MyIsImNvbG9yLWNvbGQtZ3JheS02NTAiOiIjNTc1NzU3IiwiY29sb3ItY29sZC1ncmF5LTcwMCI6IiM0QTRBNEEiLCJjb2xvci1jb2xkLWdyYXktNzUwIjoiIzNEM0QzRCIsImNvbG9yLWNvbGQtZ3JheS04MDAiOiIjMkUyRTJFIiwiY29sb3ItY29sZC1ncmF5LTg1MCI6IiMxRjFGMUYiLCJjb2xvci1jb2xkLWdyYXktOTAwIjoiIzBGMEYwRiIsImNvbG9yLWNvbGQtZ3JheS05NTAiOiIjMDAwMDAwIiwiY29sb3ItcmlwZS1yZWQtNTAiOiIjRkZFQkVDIiwiY29sb3ItcmlwZS1yZWQtMTAwIjoiI0ZDQ0JDRCIsImNvbG9yLXJpcGUtcmVkLTIwMCI6IiNGQUExQTQiLCJjb2xvci1yaXBlLXJlZC0zMDAiOiIjRjc3QzgwIiwiY29sb3ItcmlwZS1yZWQtNDAwIjoiI0Y3NTI1RiIsImNvbG9yLXJpcGUtcmVkLTUwMCI6IiNGMjM2NDUiLCJjb2xvci1yaXBlLXJlZC02MDAiOiIjQ0MyRjNDIiwiY29sb3ItcmlwZS1yZWQtNzAwIjoiI0IyMjgzMyIsImNvbG9yLXJpcGUtcmVkLTgwMCI6IiM5OTFGMjkiLCJjb2xvci1yaXBlLXJlZC05MDAiOiIjODAxOTIyIiwiY29sb3ItcmlwZS1yZWQtYTEwMCI6IiNGRjgwODAiLCJjb2xvci1yaXBlLXJlZC1hMjAwIjoiI0ZGNTI1MiIsImNvbG9yLXJpcGUtcmVkLWE0MDAiOiIjRkYzMzMzIiwiY29sb3ItcmlwZS1yZWQtYTYwMCI6IiNDQzI5MjkiLCJjb2xvci1yaXBlLXJlZC1hNzAwIjoiIzgwMjAyOCIsImNvbG9yLXJpcGUtcmVkLWE4MDAiOiIjNEQxOTFEIiwiY29sb3ItcmlwZS1yZWQtYTkwMCI6IiMzMzFGMjAiLCJjb2xvci10YW4tb3JhbmdlLTUwIjoiI0ZGRjNFMCIsImNvbG9yLXRhbi1vcmFuZ2UtMTAwIjoiI0ZGRTBCMiIsImNvbG9yLXRhbi1vcmFuZ2UtMjAwIjoiI0ZGQ0M4MCIsImNvbG9yLXRhbi1vcmFuZ2UtMzAwIjoiI2ZmYjc0ZCIsImNvbG9yLXRhbi1vcmFuZ2UtNDAwIjoiI0ZGQTcyNiIsImNvbG9yLXRhbi1vcmFuZ2UtNTAwIjoiI0ZGOTgwMCIsImNvbG9yLXRhbi1vcmFuZ2UtNjAwIjoiI0ZCOEMwMCIsImNvbG9yLXRhbi1vcmFuZ2UtNzAwIjoiI0Y1N0MwMCIsImNvbG9yLXRhbi1vcmFuZ2UtODAwIjoiI0VGNkMwMCIsImNvbG9yLXRhbi1vcmFuZ2UtOTAwIjoiI2U2NTEwMCIsImNvbG9yLXRhbi1vcmFuZ2UtYTEwMCI6IiNGRkQxODAiLCJjb2xvci10YW4tb3JhbmdlLWEyMDAiOiIjZmZhYjQwIiwiY29sb3ItdGFuLW9yYW5nZS1hNDAwIjoiI0ZGOTEwMCIsImNvbG9yLXRhbi1vcmFuZ2UtYTUwMCI6IiNFNTdFMTciLCJjb2xvci10YW4tb3JhbmdlLWE2MDAiOiIjQ0M3MDE0IiwiY29sb3ItdGFuLW9yYW5nZS1hNzAwIjoiIzhDNTQxQyIsImNvbG9yLXRhbi1vcmFuZ2UtYTgwMCI6IiM1OTNBMUIiLCJjb2xvci10YW4tb3JhbmdlLWE5MDAiOiIjMzMyNjFBIiwiY29sb3ItaWd1YW5hLWdyZWVuLTUwIjoiI0U4RjVFOSIsImNvbG9yLWlndWFuYS1ncmVlbi0xMDAiOiIjQzhFNkM5IiwiY29sb3ItaWd1YW5hLWdyZWVuLTIwMCI6IiNBNUQ2QTciLCJjb2xvci1pZ3VhbmEtZ3JlZW4tMzAwIjoiIzgxYzc4NCIsImNvbG9yLWlndWFuYS1ncmVlbi00MDAiOiIjNjZCQjZBIiwiY29sb3ItaWd1YW5hLWdyZWVuLTUwMCI6IiM0Y2FmNTAiLCJjb2xvci1pZ3VhbmEtZ3JlZW4tNjAwIjoiIzQzYTA0NyIsImNvbG9yLWlndWFuYS1ncmVlbi03MDAiOiIjMzg4ZTNjIiwiY29sb3ItaWd1YW5hLWdyZWVuLTgwMCI6IiMyRTdEMzIiLCJjb2xvci1pZ3VhbmEtZ3JlZW4tOTAwIjoiIzFCNUUyMCIsImNvbG9yLWlndWFuYS1ncmVlbi1hMTAwIjoiI0I5RjZDQSIsImNvbG9yLWlndWFuYS1ncmVlbi1hMjAwIjoiIzY5RjBBRSIsImNvbG9yLWlndWFuYS1ncmVlbi1hNDAwIjoiIzAwRTY3NiIsImNvbG9yLWlndWFuYS1ncmVlbi1hNzAwIjoiIzAwYzg1MyIsImNvbG9yLWJhbmFuYS15ZWxsb3ctNTAiOiIjRkZGREU3IiwiY29sb3ItYmFuYW5hLXllbGxvdy0xMDAiOiIjRkZGOUM0IiwiY29sb3ItYmFuYW5hLXllbGxvdy0yMDAiOiIjRkZGNTlEIiwiY29sb3ItYmFuYW5hLXllbGxvdy0zMDAiOiIjRkZGMTc2IiwiY29sb3ItYmFuYW5hLXllbGxvdy00MDAiOiIjZmZlZTU4IiwiY29sb3ItYmFuYW5hLXllbGxvdy01MDAiOiIjZmZlYjNiIiwiY29sb3ItYmFuYW5hLXllbGxvdy02MDAiOiIjZmRkODM1IiwiY29sb3ItYmFuYW5hLXllbGxvdy03MDAiOiIjZmJjMDJkIiwiY29sb3ItYmFuYW5hLXllbGxvdy04MDAiOiIjZjlhODI1IiwiY29sb3ItYmFuYW5hLXllbGxvdy05MDAiOiIjRjU3RjE3IiwiY29sb3ItYmFuYW5hLXllbGxvdy1hMTAwIjoiI0ZGRkY4RCIsImNvbG9yLWJhbmFuYS15ZWxsb3ctYTIwMCI6IiNGRkZGMDAiLCJjb2xvci1iYW5hbmEteWVsbG93LWE0MDAiOiIjZmZlYTAwIiwiY29sb3ItYmFuYW5hLXllbGxvdy1hNzAwIjoiI0VFREEwMSIsImNvbG9yLXR2LWJsdWUtNTAiOiIjRTNFRkZEIiwiY29sb3ItdHYtYmx1ZS0xMDAiOiIjQkJEOUZCIiwiY29sb3ItdHYtYmx1ZS0yMDAiOiIjOTBCRkY5IiwiY29sb3ItdHYtYmx1ZS0zMDAiOiIjNUI5Q0Y2IiwiY29sb3ItdHYtYmx1ZS00MDAiOiIjMzE3OUY1IiwiY29sb3ItdHYtYmx1ZS01MDAiOiIjMjk2MkZGIiwiY29sb3ItdHYtYmx1ZS02MDAiOiIjMUU1M0U1IiwiY29sb3ItdHYtYmx1ZS03MDAiOiIjMTg0OENDIiwiY29sb3ItdHYtYmx1ZS04MDAiOiIjMTQzRUIyIiwiY29sb3ItdHYtYmx1ZS05MDAiOiIjMEMzMjk5IiwiY29sb3ItdHYtYmx1ZS1hMTAwIjoiIzgyYjFmZiIsImNvbG9yLXR2LWJsdWUtYTIwMCI6IiM0NDhhZmYiLCJjb2xvci10di1ibHVlLWE0MDAiOiIjMjk3OWZmIiwiY29sb3ItdHYtYmx1ZS1hNjAwIjoiIzI5NjJGRiIsImNvbG9yLXR2LWJsdWUtYTcwMCI6IiMxNDNBODciLCJjb2xvci10di1ibHVlLWE4MDAiOiIjMTQyRTYxIiwiY29sb3ItdHYtYmx1ZS1hOTAwIjoiIzEzMjA0MiIsImNvbG9yLWRlZXAtYmx1ZS01MCI6IiNFREU3RjYiLCJjb2xvci1kZWVwLWJsdWUtMTAwIjoiI0QxQzRFOSIsImNvbG9yLWRlZXAtYmx1ZS0yMDAiOiIjQjM5RERCIiwiY29sb3ItZGVlcC1ibHVlLTMwMCI6IiM5NTc1Y2QiLCJjb2xvci1kZWVwLWJsdWUtNDAwIjoiIzdlNTdjMiIsImNvbG9yLWRlZXAtYmx1ZS01MDAiOiIjNjczYWI3IiwiY29sb3ItZGVlcC1ibHVlLTYwMCI6IiM1RTM1QjEiLCJjb2xvci1kZWVwLWJsdWUtNzAwIjoiIzUxMmRhOCIsImNvbG9yLWRlZXAtYmx1ZS04MDAiOiIjNDUyN0EwIiwiY29sb3ItZGVlcC1ibHVlLTkwMCI6IiMzMTFCOTIiLCJjb2xvci1kZWVwLWJsdWUtYTEwMCI6IiNiMzg4ZmYiLCJjb2xvci1kZWVwLWJsdWUtYTIwMCI6IiM3QzRERkYiLCJjb2xvci1kZWVwLWJsdWUtYTQwMCI6IiM2NTFGRkYiLCJjb2xvci1kZWVwLWJsdWUtYTcwMCI6IiM2MjAwRUEiLCJjb2xvci1taW50eS1ncmVlbi01MCI6IiNEQUYyRUUiLCJjb2xvci1taW50eS1ncmVlbi0xMDAiOiIjQUNFNURDIiwiY29sb3ItbWludHktZ3JlZW4tMjAwIjoiIzcwQ0NCRCIsImNvbG9yLW1pbnR5LWdyZWVuLTMwMCI6IiM0MkJEQTgiLCJjb2xvci1taW50eS1ncmVlbi00MDAiOiIjMjJBQjk0IiwiY29sb3ItbWludHktZ3JlZW4tNTAwIjoiIzA4OTk4MSIsImNvbG9yLW1pbnR5LWdyZWVuLTYwMCI6IiMwNjgwNkIiLCJjb2xvci1taW50eS1ncmVlbi03MDAiOiIjMDU2NjU2IiwiY29sb3ItbWludHktZ3JlZW4tODAwIjoiIzAwNEQ0MCIsImNvbG9yLW1pbnR5LWdyZWVuLTkwMCI6IiMwMDMzMkEiLCJjb2xvci1taW50eS1ncmVlbi1hMTAwIjoiI0E3RkZGMCIsImNvbG9yLW1pbnR5LWdyZWVuLWEyMDAiOiIjNDVFNUNCIiwiY29sb3ItbWludHktZ3JlZW4tYTQwMCI6IiMyQkQ5QkMiLCJjb2xvci1taW50eS1ncmVlbi1hNjAwIjoiIzI0QjI5QiIsImNvbG9yLW1pbnR5LWdyZWVuLWE3MDAiOiIjMUI3NjY3IiwiY29sb3ItbWludHktZ3JlZW4tYTgwMCI6IiMxMDQ0M0IiLCJjb2xvci1taW50eS1ncmVlbi1hOTAwIjoiIzA4MjYyMSIsImNvbG9yLWdyYXBlcy1wdXJwbGUtNTAiOiIjRjNFNUY1IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0xMDAiOiIjRTFCRUU3IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0yMDAiOiIjQ0U5M0Q4IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS0zMDAiOiIjYmE2OGM4IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS00MDAiOiIjYWI0N2JjIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS01MDAiOiIjOWMyN2IwIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS02MDAiOiIjOGUyNGFhIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS03MDAiOiIjN2IxZmEyIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS04MDAiOiIjNkExQjlBIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS05MDAiOiIjNEExNDhDIiwiY29sb3ItZ3JhcGVzLXB1cnBsZS1hMTAwIjoiI0VBODBGQyIsImNvbG9yLWdyYXBlcy1wdXJwbGUtYTIwMCI6IiNFMDQwRkIiLCJjb2xvci1ncmFwZXMtcHVycGxlLWE0MDAiOiIjRDUwMEY5IiwiY29sb3ItZ3JhcGVzLXB1cnBsZS1hNzAwIjoiI2FhMDBmZiIsImNvbG9yLWJlcnJ5LXBpbmstNTAiOiIjRkNFNEVDIiwiY29sb3ItYmVycnktcGluay0xMDAiOiIjRjhCQkQwIiwiY29sb3ItYmVycnktcGluay0yMDAiOiIjZjQ4ZmIxIiwiY29sb3ItYmVycnktcGluay0zMDAiOiIjZjA2MjkyIiwiY29sb3ItYmVycnktcGluay00MDAiOiIjZWM0MDdhIiwiY29sb3ItYmVycnktcGluay01MDAiOiIjZTkxZTYzIiwiY29sb3ItYmVycnktcGluay02MDAiOiIjRDgxQjYwIiwiY29sb3ItYmVycnktcGluay03MDAiOiIjQzIxODVCIiwiY29sb3ItYmVycnktcGluay04MDAiOiIjQUQxNDU3IiwiY29sb3ItYmVycnktcGluay05MDAiOiIjODgwRTRGIiwiY29sb3ItYmVycnktcGluay1hMTAwIjoiI2ZmODBhYiIsImNvbG9yLWJlcnJ5LXBpbmstYTIwMCI6IiNmZjQwODEiLCJjb2xvci1iZXJyeS1waW5rLWE0MDAiOiIjZjUwMDU3IiwiY29sb3ItYmVycnktcGluay1hNzAwIjoiI2M1MTE2MiIsImNvbG9yLXNreS1ibHVlLTUwIjoiI0UwRjdGQSIsImNvbG9yLXNreS1ibHVlLTEwMCI6IiNCMkVCRjIiLCJjb2xvci1za3ktYmx1ZS0yMDAiOiIjODBERUVBIiwiY29sb3Itc2t5LWJsdWUtMzAwIjoiIzRkZDBlMSIsImNvbG9yLXNreS1ibHVlLTQwMCI6IiMyNmM2ZGEiLCJjb2xvci1za3ktYmx1ZS01MDAiOiIjMDBiY2Q0IiwiY29sb3Itc2t5LWJsdWUtNjAwIjoiIzAwYWNjMSIsImNvbG9yLXNreS1ibHVlLTcwMCI6IiMwMDk3QTciLCJjb2xvci1za3ktYmx1ZS04MDAiOiIjMDA4MzhGIiwiY29sb3Itc2t5LWJsdWUtOTAwIjoiIzAwNjA2NCIsImNvbG9yLXNreS1ibHVlLWExMDAiOiIjODRGRkZGIiwiY29sb3Itc2t5LWJsdWUtYTIwMCI6IiMxOEZGRkYiLCJjb2xvci1za3ktYmx1ZS1hNDAwIjoiIzAwZTVmZiIsImNvbG9yLXNreS1ibHVlLWE3MDAiOiIjMDBCOEQ0IiwiY29sb3ItZm9yZXN0LWdyZWVuLTUwIjoiI0RBRjJFNiIsImNvbG9yLWZvcmVzdC1ncmVlbi0xMDAiOiIjQUNFNUM5IiwiY29sb3ItZm9yZXN0LWdyZWVuLTIwMCI6IiM3MENDOUUiLCJjb2xvci1mb3Jlc3QtZ3JlZW4tMzAwIjoiIzQyQkQ3RiIsImNvbG9yLWZvcmVzdC1ncmVlbi00MDAiOiIjMjJBQjY3IiwiY29sb3ItZm9yZXN0LWdyZWVuLTUwMCI6IiMwODk5NTAiLCJjb2xvci1mb3Jlc3QtZ3JlZW4tNjAwIjoiIzA2ODA0MyIsImNvbG9yLWZvcmVzdC1ncmVlbi03MDAiOiIjMDU2NjM2IiwiY29sb3ItZm9yZXN0LWdyZWVuLTgwMCI6IiMwMDREMjciLCJjb2xvci1mb3Jlc3QtZ3JlZW4tOTAwIjoiIzFBMzMyNiIsImNvbG9yLWZhY2Vib29rIjoiIzE4NzdGMiIsImNvbG9yLWRlZXAtZmFjZWJvb2siOiIjMTU2NENBIiwiY29sb3ItdHdpdHRlciI6IiMxREExRjIiLCJjb2xvci1kZWVwLXR3aXR0ZXIiOiIjMTg4Q0QzIiwiY29sb3IteW91dHViZSI6IiNGRjAwMDAiLCJjb2xvci1saW5rZWRpbiI6IiMwMDdCQjUiLCJjb2xvci1zZWVraW5nLWFscGhhLWJyYW5kIjoiI2ZmNzIwMCJ9JykKfSw4Njc1MjIobyl7InVzZSBzdHJpY3QiCjtvLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJjb2xvci1oZWFkZXItYmciOiJjb2xvci13aGl0ZSIsImNvbG9yLWJvZHktYmciOiJjb2xvci13aGl0ZSIsImNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLWJnLXByaW1hcnkiOiJjb2xvci13aGl0ZSIsImNvbG9yLWJnLXByaW1hcnktaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItYmctc2Vjb25kYXJ5IjoiY29sb3Itd2hpdGUiLCJjb2xvci1iZy1oaWdobGlnaHQiOiJjb2xvci1jb2xkLWdyYXktNTAiLCJjb2xvci1iZy1zY3JvbGwtYnV0dG9ucyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1sZWdhY3ktYmctc2Nyb2xsLWJ1dHRvbnMiOiJjb2xvci1jb2xkLWdyYXktODUwIiwiY29sb3ItbGVnYWN5LWJnLXdpZGdldCI6ImNvbG9yLXdoaXRlIiwiY29sb3ItdGV4dC1wcmltYXJ5IjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXRleHQtc2Vjb25kYXJ5IjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXRleHQtdGVydGlhcnkiOiJjb2xvci1jb2xkLWdyYXktNDAwIiwiY29sb3ItdGV4dC1kaXNhYmxlZCI6ImNvbG9yLWNvbGQtZ3JheS0zMDAiLCJjb2xvci1hY2NlbnQtY29udGVudCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1ib3gtc2hhZG93IjoiY29sb3ItY29sZC1ncmF5LTMwMCIsImNvbG9yLWRpdmlkZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItZGl2aWRlci1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1kaXZpZGVyLXNlY29uZGFyeSI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1hY3RpdmUtaG92ZXItdGV4dCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1hbGVydC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLWJvcmRlci10YWJsZSI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1icmFuZCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItYnJhbmQtYWN0aXZlIjoiY29sb3ItdHYtYmx1ZS03MDAiLCJjb2xvci1icmFuZC1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtNjAwIiwiY29sb3ItY2hhcnQtcGFnZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jb21tb24tdG9vbHRpcC1iZyI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1kYW5nZXIiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1kYW5nZXItaG92ZXIiOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1kYW5nZXItYWN0aXZlIjoiY29sb3ItcmlwZS1yZWQtNjAwIiwiY29sb3ItZGVwdGhyZW5kZXJlci1zdHJva2Utc3R5bGUiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItaGlnaGxpZ2h0LW5ldyI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAiLCJjb2xvci1pbnB1dC1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItaW5wdXQtcHVibGlzaC1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItbGluayI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItbGluay1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtNjAwIiwiY29sb3ItbGluay1hY3RpdmUiOiJjb2xvci10di1ibHVlLTcwMCIsImNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnIjoiY29sb3ItY29sZC1ncmF5LTUwIiwiY29sb3ItcGFuZS1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3ItcGFuZS1zZWNvbmRhcnktYmciOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItcG9wdXAtbWVudS1pdGVtLWhvdmVyLWJnIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLXByaW1hcnktc3ltYm9sIjoiY29sb3Itc2t5LWJsdWUtNTAwIiwiY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb24iOiJjb2xvci1jb2xkLWdyYXktNjUwIiwiY29sb3Itc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLXN1Y2Nlc3MtaG92ZXIiOiJjb2xvci1taW50eS1ncmVlbi02MDAiLCJjb2xvci1zdWNjZXNzLWFjdGl2ZSI6ImNvbG9yLW1pbnR5LWdyZWVuLTcwMCIsImNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZSI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1hY3RpdmUtaG92ZXIiOiJjb2xvci10di1ibHVlLTYwMCIsImNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUiOiJjb2xvci10di1ibHVlLTUwIiwiY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUtaG92ZXIiOiJjb2xvci10di1ibHVlLTEwMCIsImNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZSI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS02MDAiLCJjb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24taWNvbiI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWwiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItdG9vbGJhci1vcGVuZWQtZWxlbWVudC1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci10b29sYmFyLWRpdmlkZXItYmFja2dyb3VuZCI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1wb3B1cC1iYWNrZ3JvdW5kIjoiY29sb3Itd2hpdGUiLCJjb2xvci1wb3B1cC1lbGVtZW50LXRleHQiOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1wb3B1cC1lbGVtZW50LXNlY29uZGFyeS10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtaGludC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTQwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1hY3RpdmUiOiJjb2xvci13aGl0ZSIsImNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTUwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWFjdGl2ZS1ob3ZlciI6ImNvbG9yLXR2LWJsdWUtMjAwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS03MDAiLCJjb2xvci10b29sdGlwLWJnIjoiY29sb3ItY29sZC1ncmF5LTgwMCIsImNvbG9yLXR2LWRpYWxvZy1jYXB0aW9uIjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmciOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3ItdW5kZXJsaW5lZC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXdpZGdldC1wYWdlcy1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3Itd2FybmluZyI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAwIiwiY29sb3ItZ3Jvd2luZyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLWZhbGxpbmciOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1mb3JleC1pY29uIjoiY29sb3ItY29sZC1ncmF5LTc1MCIsImNvbG9yLWxpc3QtaXRlbS1hY3RpdmUtYmciOiJjb2xvci10di1ibHVlLTQwMCIsImNvbG9yLWxpc3QtaXRlbS1ob3Zlci1iZyI6ImNvbG9yLXR2LWJsdWUtNTAiLCJjb2xvci1saXN0LWl0ZW0tdGV4dCI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1wcmljZS1heGlzLWxhYmVsLWJhY2siOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItcHJpY2UtYXhpcy1sYWJlbC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLXByaWNlLWF4aXMtZ2VhciI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1wcmljZS1heGlzLWdlYXItaG92ZXIiOiJjb2xvci1ibGFjayIsImNvbG9yLXByaWNlLWF4aXMtaGlnaGxpZ2h0IjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJpZCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3ItYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJvcmRlci1jaGF0LWZpZWxkcyI6ImNvbG9yLWNvbGQtZ3JheS0yNTAiLCJjb2xvci1ib3JkZXItaG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMjUwIiwiY29sb3ItYnV0dG9uLWhvdmVyLWJnIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWRlcHRocmVuZGVyZXItZmlsbC1zdHlsZSI6ImNvbG9yLWNvbGQtZ3JheS02NTAiLCJjb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWRpc2FibGVkLWlucHV0IjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWVtcHR5LWNvbnRhaW5lci1tZXNzYWdlIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLWljb25zIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLWlucHV0LXRleHRhcmVhLXJlYWRvbmx5IjoiY29sb3ItY29sZC1ncmF5LTY1MCIsImNvbG9yLWlucHV0LXBsYWNlaG9sZGVyLXRleHQiOiJjb2xvci1jb2xkLWdyYXktMzUwIiwiY29sb3ItaXRlbS1hY3RpdmUtYmx1ZSI6ImNvbG9yLXR2LWJsdWUtNTAiLCJjb2xvci1pdGVtLWhvdmVyLWFjdGl2ZS1iZyI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItaXRlbS1ob3Zlci1iZyI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItaXRlbS1ob3Zlci1ibHVlIjoiY29sb3ItdHYtYmx1ZS0xMDAiLCJjb2xvci1pdGVtLXNlbGVjdGVkLWJsdWUiOiJjb2xvci10di1ibHVlLTUwIiwiY29sb3ItaXRlbS1hY3RpdmUtdGV4dCI6ImNvbG9yLXdoaXRlIiwiY29sb3ItaXRlbS1hY3RpdmUtYmciOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLWxpc3QtaXRlbSI6ImNvbG9yLWNvbGQtZ3JheS01NTAiLCJjb2xvci1uZXdzLWhpZ2hsaWdodCI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItcGxhY2Vob2xkZXIiOiJjb2xvci1jb2xkLWdyYXktMzUwIiwiY29sb3Itcm93LWhvdmVyLWFjdGl2ZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0xMDAiLCJjb2xvci1zYi1zY3JvbGxiYXItYm9keS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci1zZWN0aW9uLXNlcGFyYXRvci1ib3JkZXIiOiJjb2xvci1jb2xkLWdyYXktMzAwIiwiY29sb3Itc2VwYXJhdG9yLXRhYmxlLWNoYXQiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdGFnLWFjdGl2ZS1iZyI6ImNvbG9yLWNvbGQtZ3JheS0yMDAiLCJjb2xvci10YWctaG92ZXItYmciOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItdGV4dC1yZWd1bGFyIjoiY29sb3ItY29sZC1ncmF5LTcwMCIsImNvbG9yLXR2LWJ1dHRvbi1jaGVja2VkIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXNjcm9sbC1iZyI6ImNvbG9yLWNvbGQtZ3JheS00MDAiLCJjb2xvci1zY3JvbGwtYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXdpZGdldC1ib3JkZXIiOiJjb2xvci1jb2xkLWdyYXktMTAwIiwiY29sb3Itc2Nyb2xsLWJ1dHRvbnMtYXJyb3ciOiJjb2xvci13aGl0ZSIsImNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQiOiJjb2xvci1jb2xkLWdyYXktMjAwIiwiY29sb3ItY29udHJvbC1pbnRlbnQtc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LXByaW1hcnkiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LXdhcm5pbmciOiJjb2xvci10YW4tb3JhbmdlLTUwMCIsImNvbG9yLWNvbnRyb2wtaW50ZW50LWRhbmdlciI6ImNvbG9yLXJpcGUtcmVkLTUwMCIsImNvbG9yLWdvdG8tbGFiZWwtYmFja2dyb3VuZCI6ImNvbG9yLWNvbGQtZ3JheS04MDAiLCJjb2xvci1wcmUtbWFya2V0IjoiY29sb3ItdGFuLW9yYW5nZS02MDAiLCJjb2xvci1wb3N0LW1hcmtldCI6ImNvbG9yLXR2LWJsdWUtNTAwIiwiY29sb3Itbm90YWNjdXJhdGUtbW9kZSI6ImNvbG9yLWJlcnJ5LXBpbmstNjAwIiwiY29sb3ItZGVsYXktbW9kZSI6ImNvbG9yLXRhbi1vcmFuZ2UtNzAwIiwiY29sb3ItZGVsYXktbW9kZS1iZyI6ImNvbG9yLXRhbi1vcmFuZ2UtNDAwIiwiY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkIjoiY29sb3ItdHYtYmx1ZS01MCIsImNvbG9yLWxpc3QtaXRlbS1iZy1zZWxlY3RlZCI6ImNvbG9yLXR2LWJsdWUtMTAwIiwiY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS0xMDAiLCJjb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXIiOiJjb2xvci10di1ibHVlLTIwMCIsImNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZyI6ImNvbG9yLXdoaXRlIiwiY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLW1hcmtlci1mbGFnZ2VkIjoiY29sb3ItcmlwZS1yZWQtNDAwIiwiY29sb3ItbWFya2VyLWZsYWdnZWQtaG92ZXJlZCI6ImNvbG9yLXJpcGUtcmVkLTYwMCIsImNvbG9yLWFzayI6ImNvbG9yLXJpcGUtcmVkLTQwMCIsImNvbG9yLXNlbGwiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1idXkiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLW5ldXRyYWwiOiJjb2xvci1jb2xkLWdyYXktNTUwIiwiY29sb3ItcHJvIjoiY29sb3ItbWludHktZ3JlZW4tNDAwIiwiY29sb3ItcHJvLWhvdmVyIjoiY29sb3ItbWludHktZ3JlZW4tNjAwIiwiY29sb3ItcHJvLXBsdXMiOiJjb2xvci10di1ibHVlLTUwMCIsImNvbG9yLXByby1wbHVzLWhvdmVyIjoiY29sb3ItdHYtYmx1ZS02MDAiLCJjb2xvci1wcm8tcHJlbWl1bSI6ImNvbG9yLXRhbi1vcmFuZ2UtNTAwIiwiY29sb3ItcHJvLXByZW1pdW0taG92ZXIiOiJjb2xvci10YW4tb3JhbmdlLTcwMCIsImNvbG9yLXRyaWFsIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLXRyaWFsLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTU1MCIsImNvbG9yLW1vZCI6ImNvbG9yLXJpcGUtcmVkLTQwMCIsImNvbG9yLW1vZC1ob3ZlciI6ImNvbG9yLXJpcGUtcmVkLTYwMCIsImNvbG9yLWFkIjoiY29sb3ItdGFuLW9yYW5nZS01MDAiLCJjb2xvci1icm9rZXItZmVhdHVyZWQiOiJjb2xvci1taW50eS1ncmVlbi00MDAiLCJjb2xvci1icm9rZXItZmVhdHVyZWQtaG92ZXIiOiJjb2xvci1taW50eS1ncmVlbi02MDAiLCJjb2xvci1hbGVydC1zdGF0dXMtYWN0aXZlIjoiY29sb3ItbWludHktZ3JlZW4tNTAwIiwiY29sb3ItYWxlcnQtc3RhdHVzLXN0b3BwZWQiOiJjb2xvci1yaXBlLXJlZC01MDAiLCJjb2xvci1hbGVydC1zdGF0dXMtdHJpZ2dlcmVkIjoiY29sb3ItdGFuLW9yYW5nZS01MDAiLCJjb2xvci1vdmVybGF5IjoiY29sb3ItY29sZC1ncmF5LTQwMCIsImNvbG9yLXNlYXJjaC1idXR0b24taG92ZXIiOiJjb2xvci1jb2xkLWdyYXktMTUwIiwiY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtc2VsZWN0ZWQiOiJjb2xvci10di1ibHVlLTYwMCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1jb250ZW50LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTkwMCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1iZy1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTE1MCIsImNvbG9yLWJvb3N0LWJ1dHRvbi1ib3JkZXItZGVmYXVsdCI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jb21tb24tdG9vbHRpcC10ZXh0IjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXJlcGxheS1kYXRhLW1vZGUiOiJjb2xvci1yaXBlLXJlZC00MDAiLCJjb2xvci1sZWdhY3ktc3VjY2VzcyI6ImNvbG9yLW1pbnR5LWdyZWVuLTMwMCIsImNvbG9yLWNvbGxhcHNlLXRhYnMtYm9yZGVyIjoiY29sb3ItY29sZC1ncmF5LTEwMCIsImNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTUwIiwiY29sb3ItYXR0ZW50aW9uIjoiY29sb3ItYmFuYW5hLXllbGxvdy03MDAiLCJjb2xvci14LXR3aXR0ZXItY29udGVudCI6ImNvbG9yLWNvbGQtZ3JheS05MDAiLCJjb2xvci1jYXJkLWJvcmRlciI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1jYXJkLWJvcmRlci1ob3ZlciI6ImNvbG9yLWNvbGQtZ3JheS0zMDAiLCJjb2xvci1iYWNrZ3JvdW5kLXNwZWNpYWwtcHJpbWFyeSI6ImNvbG9yLXdoaXRlIiwiY29sb3Itc3Ryb2tlLXNwZWNpYWwtcHJpbWFyeSI6ImNvbG9yLWNvbGQtZ3JheS0xNTAiLCJjb2xvci1zZWxlY3Rpb24tYmciOiJjb2xvci10di1ibHVlLTEwMCIsImNvbG9yLWRlZmF1bHQtZ3JheSI6ImNvbG9yLWNvbGQtZ3JheS01NTAiLCJjb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmciOiJjb2xvci1jb2xkLWdyYXktOTAwIiwiY29sb3ItZmVhdHVyZWQtYnJva2VyLWJhZGdlLWJnLWhvdmVyIjoiY29sb3ItY29sZC1ncmF5LTgwMCIsImNvbG9yLWZlYXR1cmVkLWJyb2tlci1iYWRnZS10ZXh0IjoiY29sb3Itd2hpdGUifScpCn19XSk7"}},"time_used":2,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":2,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/generate_204?9BMvUQ","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.152.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://www.youtube.com/embed/6jePbqXJhe8","date":"2026-07-27T13:34:30.145Z","timestamp":1785159270145,"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 /generate_204?9BMvUQ 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: 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://www.youtube.com/embed/6jePbqXJhe8\r\nCookie: __Secure-YNID=20.YT=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; YSC=KVevwPvGbos; __Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; VISITOR_INFO1_LIVE=mydA6aM0K4I; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%3D%3D\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 204 \r\ncontent-length: 0\r\ncross-origin-resource-policy: cross-origin\r\ndate: Mon, 27 Jul 2026 13:34:30 GMT\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"204","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":172,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":""}},"time_used":11,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":11,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.922Z","timestamp":1785159267922,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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 404 \r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\ncontent-type: text/html\r\ncontent-length: 1251\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1477,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-07-30T06:08:39.193651Z","times_seen":144746,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":25,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/plan-head-left.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.435Z","timestamp":1785159268435,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/plan-head-left.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/style.css\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":"HTTP/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"520-66136805-6e4cbc65a5c0a4b1;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 1312\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1312,"size_decoded":1637,"mime_type":"image/png","magic":"PNG image data, 23 x 64, 8-bit/color RGBA, non-interlaced","md5":"d743f266fe5cac1bb8cdb7396ef7a1aa","sha1":"670659faf621af3672b722718caf2228811c0caf","sha256":"a80a521854943885636766d2f63f4d41bbbe9587dfbb31fd95ddf07dca4277ff","sha512":"eb82c1c8dfb7063ebb3684aa2ab344f36a064b55fd7e6912d33544b1f278559263af01bd0ba7234c40b2b8c95c6dcd380f5bce7c25e91649a7c363119bf201d7","ssdeep":"","tlshash":"93217547fa45b0409258d4fb34e6e216c962cac0da90d099a88de543eab80b569ec5eb","first_seen":"2026-07-27T07:08:39.347888Z","last_seen":"2026-07-27T13:35:41.673592Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAABcAAABACAYAAADxoezvAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDcxRjA2OEMxQkFBMTFFQzlBRTFBMjdEODVCNEQ1NjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDcxRjA2OEQxQkFBMTFFQzlBRTFBMjdEODVCNEQ1NjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NzFGMDY4QTFCQUExMUVDOUFFMUEyN0Q4NUI0RDU2OCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0NzFGMDY4QjFCQUExMUVDOUFFMUEyN0Q4NUI0RDU2OCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoUKicYAAAGUSURBVHja1Fg9T8MwEL2YIKDlc6jUAUYGhBiQkGCAqnV+Bb+2TnZWpo79EWzhXJ2Fa9UB4XtDT3qNm0TPr8/22b3q+P2NJM4ZJ4wx41LaI2mPBP6dM3l2yriI3ruK2v7+uOaPT8YdAcJQTx8MQsDwpSNQePIlknzFWIM8Z3P63slVFUY6gfheb0YW5HtQDvHdRG2nTl6xLYIuaqsgVr5ELP+wXFeMtfLy37rjNJOLSb532omLUL6nylV9Nzs6dCjlHu1eKK836XE7Qp651swt6upNxq8W5Tlcucp8NwMp0ymk3GzXbanpYQ+F+G4GnhXvq+aXX+YQUzFEq3Fugfi+K7fE8YUaUB8WaYvdS+W3jJsy8jy7LV2hdZVXvtA6n6dRaSjPDegDY4JSXmzJkPIGdbQ4YMxQyp+kMEAIz1X8zim3WuSp8iPGK0r5ixRkIMobUow0cS10yX+4fW3rGfX33C+cQ1XlUcpVtSRVblHkvib4iCrmzP+wWf9beUOACCl3jipDTRn3KHJLoICS+9kCI/8WYABMRIRKXMDgSQAAAABJRU5ErkJggg=="}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/33793.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.634Z","timestamp":1785159268634,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/33793.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1111\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Mon, 04 Nov 2024 09:19:40 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:12:53 GMT\r\netag: \"788ee50bb0546f0424b1a69d0261366b\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 37296\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: gGeF-80ZQzr2KKgzWPltaEBJYScF6B7eiXAV8QT5B1lZKzlQDs35TA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":1111,"size_decoded":1645,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"788ee50bb0546f0424b1a69d0261366b","sha1":"2604f3f320abe86452e5e2b95d75a69da69fa17d","sha256":"acaa78a48c7e360e07aaa47bae9524f0cdcc600c2d032aabcfaa4b4e540862b3","sha512":"3a697f6c1db55971f4df1b890dfca7c8b4648f405c9a146dc1b046a222b0bcd4a8845517f81464a8b9c0608019532c2ce870ec39eae9377cb4dd80763d4bcd6e","ssdeep":"","tlshash":"9621f9675554cbbc530680b2940bbce731dec21caf114199d8c26126101188c7a1e2c5","first_seen":"2026-03-04T08:47:10.82974Z","last_seen":"2026-07-29T06:14:00.311185Z","times_seen":1357,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAEHklEQVR4Xu2bv2sUURDH8yfExMJGCdhoI3enjbHZImkSEAU1jaBWEhEUrxZtQqxMOgWFaJPGIimsBEkjWKa2SuEfcH9C3Hd4y97nzb6d92M3G8jAp7md+c7Mu9u3+3bfzcy0ZINs7mU/mxvlHNcwyn3fMv7U2SA7vyU0F8Qgm9+hfmeNxaeG+TphvWxhloU2TS+7sMA6Wrd+Nn/AwtomPz32WFcrxkJOGtbXmOUzdLLJLTVm4mW9Se16NveCSbtG/gW9Yd1JLBc/ZDJflu5dPP5++OT499/nIubY2vpVKy6AQ9YfZbngkZBExdcfD6xGtZgBoZ4HR+wjyPoB3/yt1QtWM7EE/jLifgnmfBJEnbDw1DBfHeYWnH2pzHe2Z6FNw/wugq4OFHHB4tqCdbhgf05jcBVNnOu+LN2/ZNVVBfsUbZCd22OgRBean6AfhPkD9muZHSTDIlJiLp3MV5eTvlWw3ykzKywGSDB5KtbWr1i5iOtGir4SZuXKvgujs8TPP0+txLEM39208rhgfBn6SrDvwugowYSxUF/D4kr1/ENfCfY9NjpJMFkM1PaFer7a7L/VAaBuCNQso7ltnmrePHSkA2GSUKgbCnUJ/Une83YxADwowQQhUDMGahP6S6gH4P3uqpXAF2rGQn2iWUqrB4DivlAvBcwhwRgybt68heEBQmEfzFMg6sVibn2ZR4JxZLxU7iteV1FYy8bnZUsrBdqbsduPLluxYFT789/4tGwJa9jaXbG0UsFcVajmAX5AtKNNqJMK3wmZ8aR2ACiogRpd5mwA+AFhc3UwvuucDQA/IK4HECRm5qdWKpiH1A6Az2WQsT5QKwVVj9bKJL0RYpwv1IvFPLhlDjCabF7iAe/CNGtwLT6nnQvqkmIzFg8QCkswJgXM4Qv1iHo1ONxctMQJY2Khvi8f9+9YmkQ9AAYmIPSPgdohUFOiGID8XNjmQcIEhP6hUDcU6pK8551iAIzRQYJJfBJqoGYommcQU813YQCoFwO1Jdj/2OgkwWQThpt+b3fq9EKhvgT7LoyOEt9+PbSS+iSf8GH/rhUfi3l2wTwS7LuwXjar2vLKxGXoS8xjMsakgrkk8h4X2PeUMaAKJi/zKr9vKPs+Hl6zfFLD+qpgv5b57P9lEScF66pCva+YgS5YTNuwHhfs02kMdsGi2oJ1uGB/taa5OyyTagWnQfO4u0yv/CLUx3qKpTJhsalhvjp6sf8/6gdslTWw8FioryRuq+zE+hGbpZ+9vmE1o8Usw6nnwRH7iLJ+4C+BmKaku0lzXkc2XCbNN08z55OQrFOYeYt1JzXfq0ObBM/2IcbkJw3ra8W0+4qbRbH/t2kzKyy7sGYxK1fW0Qljoalhvs5aXuwXFh+KmXipf+rs/2as2tdwxqfxS1nJ/gEsT1LO5BS32AAAAABJRU5ErkJggg=="}},"time_used":35,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":32,"receive":3,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/con-ico2.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.003Z","timestamp":1785159268003,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/con-ico2.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"805-66136805-f390c4a31409ccc7;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2053\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2053,"size_decoded":2378,"mime_type":"image/png","magic":"PNG image data, 63 x 43, 8-bit/color RGBA, non-interlaced","md5":"d43af37b0c538d39bbc73ef274eb3cac","sha1":"229fe693a31f5aacedb22edb6bad8538d31d7e0e","sha256":"d3684d7447ad9cb6886842b1194b72e05a88e3b7a2c5d37a1cc507e7d130eb19","sha512":"ffc148ce2df8494587f1a0def3a4ed74c61bdf137d5290cf1e6474a4f1d5b2731d877c1f0478c9f31f48ee31669aed1448d1b9d75995bab886918068b68068be","ssdeep":"","tlshash":"6541f8c5e49c9c80e206e83318c3142ad5b10a418ad0e876b488c0279da62be557c3ff","first_seen":"2026-07-27T07:08:39.228852Z","last_seen":"2026-07-27T13:35:41.724899Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAD8AAAArCAYAAADPGFBSAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEQxODczQTUxQjk1MTFFQzk1NjA4RDNFRUM5MDE1OTgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEQxODczQTYxQjk1MTFFQzk1NjA4RDNFRUM5MDE1OTgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowRDE4NzNBMzFCOTUxMUVDOTU2MDhEM0VFQzkwMTU5OCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowRDE4NzNBNDFCOTUxMUVDOTU2MDhEM0VFQzkwMTU5OCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuCPYe8AAAR5SURBVHjazJppSFRRFMdn1NI2zXYpE6LUiiJaSRRpt6JNPwQJ9SUsqE8WQRZJBRGEIUaGLUho9aUgoaCFwpJCos2WMdttXz+02mavc+TcuBzfjG+58+5c+I048+7yv+s55z6/L7JSN2AOMBcYBcQBn4AG4CxwHPgrZzAMo+2v3++PhT8ZwBggmX5+AdwG6uC5H74ITtOAu6gnBOeAPibisbOuh8jXCKzBzsTnBZGSlgBfOxAuuMw6oNhiPoNmT/dIEr/JRuMFtUA0sMNB3ktAQiSIn+eg8YKVwGuHeXfpFu8HLroQ/4k2Pyd5cfNLj9YoHnf19S7yx1IHOkkxQFSURvELNC+58TrFD9csvmcM+wKXQR4wlNaFqoSdfBh4Jf3fS7P4rvixFoiXpwPw0sVGFIxcVnl9GOqwQzOOQCFwFEikRl0FJgMPFPd0Kvv/seaR/4YfAeqJmzTd5TV5UWFP17HdOV/zyB+TxRtkWw9jjkaNosr+kNMhUgI5HrrEL+LikUfAWKmRceRQqKjwAJt6FZqE3yE7oZ145COZniL1A6oVVPoTyJTKHUwup5fC0YHKEuZtIMRD89lI7VBQOe4jnaUy04E3HopfIXt1gRAPtgBLWQfsVNCAvazMDJpt4RZ+iPvzAQuZ1kkN7QRsUdCQ/bShipQVJvtCLLdis2BGwGIBxWy0CoDfLhu1mZWJS+CWYuEfgBxZtBPxSBmZpiKtcNGozxS64qk/cFKR8Hu4pMyEOxGPHBHHBKVl5FvbKeMaMIEZVKnM7i5x4a/jZl2E4a5gwp2KNyiK2kNqbDbwzkYMrq+UdyJFZHCUhrBZgIbIWwejPTWUaLfixZHVj21YLR3kaaKzXaRMWpP/nQ1gOusADGHft9imcqC3FeFuxSMXpBi5iM40Bnn2BBtZnC3PgoSYNjA/YABQCnwJUjaGrXOtilYl3qBRmSQ1NNHEGlzHQkgr6fjpyPFIYrNgHPBQeuY7sJEfYV6KbzMe2CmAaQ8ZLgXs+yQbFh127AyWP5n2HFwu2U5EqxRfzoIh8nRNYQFHkUZT7N1K+S102xLPIkPJ4sZGl/jtbFTK6FYkhX0/E7hBITK5M87YqKuBOUU+neK3snYUSr89BUbS9wspaiI2s9nMW6y1UWc7X8Nr8WhArGYjuM0sRgZUmhgq74HFUv7u5OjYaUMlHYGeiv9N4SfZEnMa6SliM8eus7TPS/HfWAQWN7aDbn1rVl6pzY3WE/Hoas6SGoox9yoFR+QvYBWbAUUWLEXPxDeL9UVpUBhCT1XsKMSXDVp1i0dTNY2NeK0vPAGHCjYD8smC0yL+Cjuv0zy4ZSlh0Z25IaI7YRN/mt2lTfEoxiZc3oEsuvPaK/HoUHSRKh8BPPc4vFzP2jDaxK1VLv4ABSjlN6R03arUMK9uCM0KpeKbqLBtJgHKVp/e+7RmivTIt0dnVIp/YmKn59HdmhEBvGX3h/F0fVbtVjxaVTnAKcnKQg9sN9ncrRHwqloMhbOX00xoe6uC7hPPu3mr6p8AAwCKmGCMIHPEOwAAAABJRU5ErkJggg=="}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":26,"receive":12,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.594Z","timestamp":1785159268594,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2691\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:32:33 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:09:15 GMT\r\ncache-control: max-age=86400\r\netag: \"2edf1ef8b333c40979976d1a49bc234c\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 37514\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: 9nLadrYf2RZ5WF1kWz1r9DX-e5VKE8ma4vNFwz8iGoTSkAlHzh-auQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2691,"size_decoded":3217,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"2edf1ef8b333c40979976d1a49bc234c","sha1":"d75ac12795b4a9575c874e1b190712cd62a87afc","sha256":"50a1901684f223bf26594dd3415b1e50f184820a16daa810cc5452911e9117a9","sha512":"f697a1fa0786316fc01003f72621920932e2657e4acf5a471e35d02717c42c9db5a12df311895a776a563dcae9b8fc0b6721833529a054b9dbfff4c52fc564d3","ssdeep":"","tlshash":"2b515ee60252267980d32438616db1e178beabb2c3021ded6c1444954acc4b62555cfa","first_seen":"2023-05-01T18:49:36Z","last_seen":"2026-07-30T06:07:43.502506Z","times_seen":25698,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAADAFBMVEVHcEz/fwD2kxr/AAD2khr0dQD3kxr//wD/qgD2kxr2khr2khr1khr2khr6lhr1khr2khn6lRn4kxr1khb2khn3kxr3kBi/fwD3kxr4khn3kxn3kRjzkBf4khr/VQD6lRn6lhr7lxv6lRr9mBv4lRn2khn6lhrMmQD5lRn4kxr3kxr3kxn3kxn2khn3kxn5lBn4lBn3kxn3lBr4lBkAZwD6lhr1khj5lRr4lBn5kRj3lBn3kxr2khr3kxn4lBn3khn1kRqqVQD8lhr3kxr3kxr2kBr0jxr7lhr3khn7lhr4lBn5lRr3kxr1kRv7lRr2kxn5lBn3khrykRj2kRj3lBn4khr2khn6lxr4lBj5lBrykhn2khn3kxr//////v33lBz///73lR33lB33kxv/nRz3lR7/mRv//fv//fz/nhz//vz2jAr3jQz//v73khj3lBv/mxv3jhD3kRX3kxn3kBT4lBr7lRr3jAz3jQ7//Pn3kRb/nxz/mBv+lxv5lBr3jxH//fr3jg/2iwr2jQz4njH80p/3khf+mRv/nBz3kBP/+/f816v//Pj5lRv7lhv/+vX5s137zpb4liH3jAr5qEf806H6t2b/+/b81ab6t2f82K34nS/7zJH4oTj4nC33iwn7wn3/mxz6w3/937r2jAz96M75tWH7zpj97Nf958z2iQX82rH7yo33lR/4myv+8N/4mCT6lRr6u2/+6tP3jg7969T4ojn5sFf+7tr++PD6v3j4ozz+9u36uWr2igb+69T82rD6uWz+8+b2iwj+7tz6vXL5pD72jQ75slr4pUD+797/+PD5sFj3liD96dD94sL4nzT+79z95sv//Pr3jxD5tmP+8+X948P93LX3myr7yo/5rlL94sP4qUj94L34pUH5tF/7wn/+7dj7xYX81KP/+fL5qkr6uGn81qj2hQD97Nj///37x4n6xYT95cf3mSf96tL7zZb2hwD+8eH5q03/mhv5rlT6wHn3lyP95cj8z5r7yYz+9Oj4oTf3hwD83LSsdU1lAAAAXHRSTlMABP4B/gL7AQP9/Pv++vX89476GJDqFgT9KI4pLWIDbfz9/v532NMFQY/W1fhe912nqa3sAeeHhu0V97m6zo2oawO/xGthYMLH6++F/Bzq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"}},"time_used":73,"timings":{"blocked":-1,"dns":20,"connect":17,"send":0,"wait":26,"receive":9,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/32196.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.608Z","timestamp":1785159268608,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/32196.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 1131\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Fri, 12 Jul 2024 09:20:18 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 05:45:46 GMT\r\netag: \"4d5fec04d4a1bc91ff0237e3cd86559f\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 28122\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: FlE60rq2vQVAmV1OLNsGNftL1LP3AmjQUsl2ZH9mJF6eI9p6cMBx-A==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":1131,"size_decoded":1665,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"4d5fec04d4a1bc91ff0237e3cd86559f","sha1":"f348dc97c0843bbe323c1ab1051a70431ab2889b","sha256":"58ee891d33bb2f515cd133e01f8f17636037693798a453484fe8178a5e17f8ce","sha512":"73dbfc6181daf57a1e09c3174cc825fc3067d2076d8b8ba96f3728e1038355fc3ed5bc8b31e0b0ed7a720d24f178e4a3db1bb319c9a961ccdcdf7e4fdc076d2f","ssdeep":"","tlshash":"f921f9c20bb4c834ceacb5a76409f40ec5307c4adc4ce0421d15c989ba05f60aa34dd6","first_seen":"2025-05-17T13:51:35.295628Z","last_seen":"2026-07-29T06:14:00.352632Z","times_seen":1475,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAEMklEQVR4Xu2bv2/TQBTHu0FTmnjtBIIBCqR1k4YmRRWFAcYOLAxIVVc6dKhE/wDo2oqJoQhGBrrBwtQNBip1ZS1iJv8AUsi75qLL9872u7Njn0We9JGqxu/H9519ti+XqakcbObe0mKt0+jWOs0ej0aXfDBOqazWbp6gsEr9Vu/SzRux0DHo1+cM43tp1ZVwRy0cxbmixpxth5uYt3C70ll6MBzlu8mj7EplYX7YiMurS1exjkIs69HmIvNiPblZUcKR3BsRrIeBuBZbi1oxRUG1UE1UG9abqVXbjQ/iOl+8rRVRNDP9mqi26krjEOvOxOR9HBP7xuCS6GL9qcyX651LpvNCWUYeyeRMqHYah2UULxFzQn/eQl0sk7M9Bi0bzncHX2d7W+TdAfXFGjn4dJ9Pi3xOQJ2R5tupf+f5097bv79HwGOSYDfAN/H75z808a6NSGxC0A6v+dSAJPGS6xtPNF8TpI3eXFH30HwSv/XpSBMaR7DMm7MizwJaaPCpASiQA8YwIZ4NVpo7qP/itrcwrzkUAQqzAWMhcskN9Vuf/s/eH/Z2v30WMzR+lhYUZQPGMqE1oP+PM24DoiYm7jWYxNrLbS22LRgTIa20aKs2QDvIBCZCDv781HxswZguYEwTI2cBpwFzD+9riUzQ7I2+XDCWK1QrxkaGDQhWw5DTAEwSh+vlgHHSgLER0hy0wpBGn/W+jwmSQP8k0D8tGB8R8wCtF9Af0wnf2NCMjwk4YJwo0C8LMAdC31+Iy2Aco69CszrGyyp2HJjHRC4NUFnb2xZE3UqzBDWYyL0BeYIaTEwaMGnApAGTBuTagMev98RdYPf7F+2zrEENJoYNSHoQevH1o5bABoyngsdmBeZB1AehsTwKc4qQ7J+far5pwRwIaSbtY3kZIg66dq/G6J8GutQwPkKaxcsQ93UYkySB/hwwhisY14Q4/W3WAwhMFAX62YCxXMCYJkYbMNjThwchmMgE+tji+uYpmXvEWwyp4d5DTgMITKiy8eaVdrwLGNcGjGViZPTVBkwz9/hhUmLr2H0pDKHVZozPgTP6lfrFXkPUP0VfFnDPAoKS7f86FeBnWYDiOGAME6Rxtt3cRP3CbBqQBygwDvSNwjj60uSWV3QqEhRqAn2iIG2JW2x9awCBgiX0ToHHxhE7+qr52ASCnvC2jt+x1v0RtngyMVE4ru37CGmxagAZOVQWyr9JijZ6WYsn+++3yZHJzdEYtCxQ7bTZE3VZWY25XuAbVDPVjnqcbBBMS+Irsl7UkcrKciZkOvJocvO0j3cHOds7b47m2vAnMx49J8j7vPNs72K+zAtjud5trKhGFC5cNbnFVswP9fHtNZRr+eJ0by+vYx2FGy00yAKzPCvUmMZdnj5abfVi76EK52e16igrnGD8UlnQatGXLxY/n292yQfjjMP+AfgdCCcpRgjcAAAAAElFTkSuQmCC"}},"time_used":22,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/#","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.696Z","timestamp":1785159269696,"http_version":"","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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-07-30T06:24:56.209576Z","times_seen":17611926,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/feat-ico2.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.968Z","timestamp":1785159267968,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/feat-ico2.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"b11-66136805-5eabdaa85ad208df;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2833\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2833,"size_decoded":3158,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"50f4dd738a200a3e07cb7e8b4fe7e9fb","sha1":"4ac8c89ff63eb7718f3e7582458b0d5d8881b5cd","sha256":"84661b826b4b4254573e86694ce584adc2071b62fd97f0948f3d8ac63986d476","sha512":"195869ef14582550a8493d167ac815611fcdb881edf1fb42527de6f98f2770b6583727dca4f1b7933200f01f358eb2d1cd592d18bf85f1db094f234b3eff6158","ssdeep":"","tlshash":"03515e857d4000078a45bcc2bad1100ef533b1e05474f0dafc56c99d197a7f2945bacb","first_seen":"2026-07-27T07:08:39.268796Z","last_seen":"2026-07-27T13:35:41.601445Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QjdBMTg5QjUxQjhEMTFFQ0I1Rjk5QjE1Q0ZDQ0Q4MEQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QjdBMTg5QjYxQjhEMTFFQ0I1Rjk5QjE1Q0ZDQ0Q4MEQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCN0ExODlCMzFCOEQxMUVDQjVGOTlCMTVDRkNDRDgwRCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCN0ExODlCNDFCOEQxMUVDQjVGOTlCMTVDRkNDRDgwRCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PtLgYUAAAAeFSURBVHja7Jt5bFVF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"}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"translate.yandex.net/website-widget/v1/widget.js?widgetId=ytWidget\u0026pageLang=en\u0026widgetTheme=light\u0026autoMode=true","fqdn":"translate.yandex.net","domain":"yandex.net","tld":"net"},"ip":{"addr":"213.180.204.194","port":443,"asn":13238,"as":"YANDEX LLC","country":"Russia","country_code":"RU"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.297Z","timestamp":1785159268297,"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":"translate.yandex.net","organization":""},"issuer":{"commonName":"GlobalSign RSA OV SSL CA 2018","organization":"GlobalSign nv-sa"},"validity":{"start":"Sat, 11 Apr 2026 21:23:26 GMT","end":"Tue, 15 Sep 2026 20:59:59 GMT"},"fingerprint":{"sha1":"87:3A:4E:3C:AB:F3:8C:5D:84:59:2F:84:92:40:7F:98:5D:1E:5D:6B","sha256":"5B:BD:7F:E4:2A:2A:A5:13:04:EC:78:2E:67:68:D7:4B:22:7A:0F:7C:ED:C4:E8:B5:68:2E:05:D0:64:40:3B:9F"}}},"request":{"raw":"GET /website-widget/v1/widget.js?widgetId=ytWidget\u0026pageLang=en\u0026widgetTheme=light\u0026autoMode=true HTTP/1.1\r\nHost: translate.yandex.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://walmartfundholdings.com/\r\nCookie: bh=YOS8ndMGahfcyuH/CJLYobEDn8/14QzlyPCOA5S2Ag==; _yasc=7KIkGfrTkC9lusQR2ZGLk3dv+sTU/hG7KHyUW6xDNrUJgRaNcLBDAtPbjyUmudJfaLA=\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 429 \r\naccept-ch: Sec-CH-UA-Full-Version-List, Sec-CH-UA-Platform-Version, Sec-CH-UA-Arch, Sec-CH-UA-Model, Sec-CH-UA-Bitness\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"429","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"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":"s2.coinmarketcap.com/static/img/coins/64x64/5426.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.606Z","timestamp":1785159268606,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/5426.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 3759\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Thu, 25 Jan 2024 08:50:23 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 04:08:27 GMT\r\ncache-control: public, max-age=86400\r\netag: \"8634cee42b68c501da8d76beee00bf86\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 33962\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: 9rD2seokGqay2uuuLIyCrNfhbPhMMzJspY0AElNobzG30IxYyye_DQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":3759,"size_decoded":4331,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"8634cee42b68c501da8d76beee00bf86","sha1":"346a50344174ec7c53cdd48080a55f7cd3a7c164","sha256":"890b9f9ed3f5ab8390b86f93b5b8ba0c2d5d50a5dc21668734b3537bc3a65f53","sha512":"405e62a3f1c24476041f90ddb5e50801693578a1b3e108919edcde05bb429bad77fc60b0096adbaa9a2704835ebd7dc165720ad0a14ada9498b3234d361ef259","ssdeep":"","tlshash":"fa715be58e8349f8b5ce461d652892f55cc24943d9f987101ee467921800a82f0a90e2","first_seen":"2024-01-31T18:12:49Z","last_seen":"2026-07-29T06:14:00.424651Z","times_seen":3241,"resource_available":false,"data":"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"}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":3,"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.152.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/6jePbqXJhe8","date":"2026-07-27T13:34:28.827Z","timestamp":1785159268827,"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/6jePbqXJhe8\r\nCookie: __Secure-YNID=20.YT=cI_fL1Oca_6FWKH1DhR7fPxxq4TulpaIdgTgg2DvDo9lKxOqe1OHTdMHxC1EU3dIi2vKpjiu7DXVwc2yx8uFi-rNw5Y2HRBQZAHDqZNnItRGHjfZMBUDAfh9CQNWQU4xDcgeFeSyge3CL8N017XOHEeNEBtQ_sCWjTBVNx19EgumEd8o4sCISarTJG9FpWdb7mBShbnaP8bjeQGkLBKzHe3e2sAuDBkYwFItleIXXr3-ZEP9Aaq8VmLwG4cAbvigA3Y3Ras2BPZf7hoI5P8IKft82xlwLy8ZIgEY6yyn3bj1yzZdWPtaWUvgVzDOjzT8wiBp36Yfm76gLhGLLXrLGg; YSC=KVevwPvGbos; __Secure-ROLLOUT_TOKEN=CPSp16mn0Mn6MBDO47_A_PKVAxjO47_A_PKVAw%3D%3D; VISITOR_INFO1_LIVE=mydA6aM0K4I; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgXg%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: 261501\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":39,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":11,"receive":28,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/pay-ico6.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.997Z","timestamp":1785159267997,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/pay-ico6.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"eee-66136805-f11f3fc9f7546e12;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3822\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3822,"size_decoded":4147,"mime_type":"image/png","magic":"PNG image data, 162 x 41, 8-bit/color RGBA, non-interlaced","md5":"1db204046c772709d681299c492879a9","sha1":"e7841e1fa41b99e181e1d707a2cc362ea51e1281","sha256":"12a2c92a187e501f8f3068ba8a0dcad4c7688bee30321cca1ebd12fd72c362cb","sha512":"44f3c3742b97bedc31e4558a1edcd98866a1f76e51102f65c79217f0a78ce57f78bbef011ad4e13187eb53ab80cca663c5856df889890cb6c31021fadf095e3a","ssdeep":"","tlshash":"17717d0ee460d8329e8c482206ca503ff5a206255c82c327efdedc0669fc6f1dda61d7","first_seen":"2026-03-30T05:38:35.979779Z","last_seen":"2026-07-27T13:35:41.63349Z","times_seen":4,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAKIAAAApCAYAAAC2hfIAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RENBOUVDRDMxQjhGMTFFQzg3M0RCMjFGQURGOUQ0QTEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RENBOUVDRDQxQjhGMTFFQzg3M0RCMjFGQURGOUQ0QTEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEQ0E5RUNEMTFCOEYxMUVDODczREIyMUZBREY5RDRBMSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpEQ0E5RUNEMjFCOEYxMUVDODczREIyMUZBREY5RDRBMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pilac14AAAtiSURBVHja7F0LlFVVGd7nzjDDDAwyjIwwBPIQ4pGCA2gPKl0rg0LN1CyXplJYtFCQhCIEDKOpKLWUggWksMJlmiVIZWm1quUreSo2UjMROTEKyDDAOMwMM3P7f+63m9/NPufsc2eiWux/rW/de889Z599/v0/v3PuTJBOp5UXL/9tSXkVePlfkKBoQnk2x51DGEsYRRhCeAe27yNUE6oIWwl/9Sr2EiVHNm898Zqb4JgzCZ8iXEOYSOges38z4RXCjwmPEGq82r10JjX3JMxDhLuf8H4HI2TJJ4wnfJuwg/ANQh+vci/ZGOIkwjOEZYRBnTgPG+B8wouEqV7tXpIY4s2Ep1ELdpUMI2wifMWr3ouLIS4mrHJMwYkbJEIFYalXv5coQ5xOWHIKzn0HYZFfAi82Q5yEhuRUyV2EK/wyeJH0TSFhuUM6/jLhzzg2baRc7rCHqgy9w911b4c5sOE/rzIcpBdviGqWY2PylMrQMXFyNuEzhNsIvSL2YzJ8AWG245zZUS4nlMB5usMhjhHq4CSVhMaEmWEC4XyM2054U2Uoq+0JxslTGcrqPEIxIYfQQPgbYRuh1ti/gPBxlaG6juI6CrEuDZhHd4z7HOEvIecdSHgPdFkIXdTAwaP42xJkwWE4jnW2G+faH3HcuxBsDqH5bBP29CHCGRgjjjsu7zVx/Gh6rdZ3Vpis3kno56BsnvizIq23WxY1LaLlOJUhtEdEjNmMi6t2NPA9Mfv8Hee8j/B6zL6XoER4d8j3f0A9+2zMODcQvhjhzPWEjYQZhCZs4ztUVY5G/nXCQmPbAMI34Zg2Zz8CQ/k84S0j+81HP9DfctwBwgNoKBss399DmANnHSzG7gmnKyVsJlwUExA4G97COtYR8VpHI7RFkmKk5TQm3WzUnxw9P4YFLQ0ZhyPCTRZF2ySN6FGkMrzkdpyrEJ59rsrcdmRFX0/4NOH3IWPdBqUG+LwTUacbYQwM5YOE38KA1oawAKsJn8Vnjg58R+lVRCZ2nJGEMixai3EtLYh4m3FMHtail5gXv/7DEpU2ohRScDie+2s4Fzv+IASCZnEcl0s/QeRSyCKswzdwXs4KfVGCcZS9knDQOLe+hkZLn3EMrxPhJLMi1lI7ZEsuBrougfGlRSQsRqQoxvbD+LwCig0w/i5EldUR414DWqfR8fwKhrHC+H4wHGsuUtUGwmTCn4z9LiPci/e8gDNhsG2iBJhC+D4WdhUMxRxngTDCX4IJ2Gbs0xsRc4+RQeS18PhrHNeAjXQ9jJAX804cWyf24eh0FYymVRj0GmGE9wB7xXFliHasvw8QHkT50GaZ93Extt4ur+9W2MMjEVTeieNSWLhxneAE+yHSnQUvnIaTzzAUzYqLeghieBbzyBfRN4X58GLz7cSpqGG4XllpNGEF2EchgnwEUa8NYwRY4A0w2HpEyWVGBOBItxjvfwcGYFtIWuYy4QmHa3ERWQLMwbzqjH04O60jPCy2XQHjZLmbcDuMMBD64zp2HkoB7bCfzMI2juN1BdY2NrWOT6iEwPjcatmnGyLJxfCQFBZ2Y8zYE7I4v/mdNsoXhJGwgV8q9puM1MvyNdSU0pjlONtwLQoRotyoC/OQ+uYK5WerSxfpgSZQITqvTHDsTLzWqI4bCimjBNCOViHq1+kh805ZriEHAegG1IvFqDfzo7JbSixINtxjKoLu4e++ZJzwuZixz+9iVmC9oIWuFNunikj1c4dxHhMON1kofArev5Swu7ZJm+N+Y9ElszyaYPxS4eibcO2piLVrRKmhA0T/ENYlx2KgAerkz4kGd2mcUbk8zNAKWuRlo4tqRcTYie8qjQh5IQrftOhm22OU5VqjukSbekE1jRGKHyrm48Jf7kGHqET330sYxJYsjU9eSx+UOQNRLnGjdAGapTKx3yjx/sUE5xqOMkWhfncRrbsizMdWI7aF1IhDUK4sw+e5aFpDecQyhwlxO/9e0AEpsaD1UFSACZTAE3QHfgZqxwOibmlFOrNJYRdGQ93JvykWOh9p9Gxsq8U+cSmySXSePcS1FRjdX5QUQd/NIQ3ZXWg6csWi6mgzGzWmMmiawwn0IW8uHHI85qhREtgcKR3iXDqCLkJp9GE0ZDssDMDbjMp1cYOIVB1Y9u9M/dkVdVW75djchNE1ZUmhqYRzWYmMsTTkWvYixe9AF38IpPJ+BIDO1JXZZpVUyDFBiD3Iz+2C6rkZ9FIpOuhCc21y1clsv004vT6PA28UnWEfNCC98V03kOOyc6oXn/OMmsKUxi6MiGkRuXTUasH2GkTFMhE5g5ho1lOQxDpaNEGpOQ7z0ak37OHgbxF+IOrPArG4TSFRsCiBPuQ6FDse01/osi6kKXW5dmYmvgAW4kJQRjMkp5pCnRQnbLCjQaIWGh3SOGw/D/WLvG3IXdc/xecBMRPf38WG2EPQHNUoC9LgA3Udc5bDWKOFAb0s0lut+N6VznBpStpQxjTA4GU3vku8T/KDo2rhRBc4OvEkvB5U9rtexxM0WRtBGbHwnZ5LRNl0whArO5Hq0jH10SrURClHxe1IEOlc5BOiHnxSbP+FiAyXOpxrOiITX8vTolH7o1iwYQn0FpXuXBoIfQ/3qgS62CealMtEFgu77kEwFs12HLLM26wR0zHrswi0GssPJT/JBrLVsdi2KSxAeLbJOpCZgZhc3M8EXuhE9NMdmwZTDpq05qj8kNj/KbAAWjlDxXFp4/11QmGPGhFpDaJCgTqZ7A6LiJ11sLfAy7FcZOH4lIXX06L5UO7MFwoHMa+b1/R7osG5L0HPEOVQx8CBHlYdD2r82xD3oEjO1gDegLftQ8H9G5W5v3sTlK8Nkcng90WMVeUYEQPL4mpDzEN5wET2r0X3Pku9/X4pK2Qe3rPn/wqRsVAYxAAs1gNYTE7DC4y5bFcdtxiZp/wZuFCz/BiK8aKau3TItaZgGJJpuFvoajmcaaBx7EBc41qxbQPmyHI7DGy4WKM8pG1Oo/o50e+qzF0n2xp0C+ERo+RVZXnSKhce8BCKyCSSQgEsjavFaPlTGJ8L/Xtj6sOfJojM+oJvQVTQhXVfLLquU1+HET5uGeNJfPcdLMYmOGUdjh8kIgIX21cb9a6W+Wh6rgZPdjmipm688pG2C4QT2DrThSCAA4EcvOaiWbxRNErXwrDeCepnLup9TY8NEQ3WEtR4bGzT4HBMxt+KjrYKTt0D42n5Ea4vTP9tlhoxcDDKdaD9pul99YI9DG/v5xgFZd1zMCRc6zDPi/lgTH3YgsklLQ9GAmahvx1evTqGFbgf+y5GxB4MSP70cSxkbUS64Qc2+JbWTJQEoyz78X32x9TJT8DrOq0shtPda3zehTnzul0PDtd8BO0lRETZBB6Bw8xG06CfWJLruwXRcn2MDUTVvXFNzBxkD2520/IvPfAv6yocjKBcud3O4rD9UZW5l3tuzL7L4Z3Kcdyx8PjeIsq2InLtBtoTRvhzoJQSjFWFNHIgYZZgxxiDuQWo6V4BN2hGfI6WI4w6OjAWNBBRMIzhKFUdj7+lENUrcc4ogyjEcWOg18OYa2WM/sqQfVpwjnZRj47AWDUqnjjvi0x2VBqifr5vZMzB7IE7RdowPftMGMrFDgao02c5ak0vp5nY/uTIUdXxW+ao361UdPFcZnoj9GLSDc+gAThVcmdII+HlNDdETTR+9RScuwLdnhcvoQTsElAJTf+h894BePESaYgK1McUlT3ZbZPdoA4qvOq9uBoiC//yju+jMqlZ24nzMJ3AT5cwa/+EV7sXU1z+UGcDjGityhC3DKZb4h5iZY5J/qHO17y6vYRJtn+6mG+jMSvOjz/xXYQSbGfWnh8m4LsIW5T/08VeYkTziIH/rwJe/h9qRC9evCF6OX3kXwIMAIbcuG/uFfvbAAAAAElFTkSuQmCC"}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.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.99","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/6jePbqXJhe8","date":"2026-07-27T13:34:28.985Z","timestamp":1785159268985,"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: 386241\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-07-30T06:23:10.672189Z","times_seen":949769,"resource_available":false,"data":"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"}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":18,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"wss","addr":"wss://widgetdata.tradingview.com/socket.io/websocket?from=embed-widget%2Fforex-cross-rates%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=walmartfundholdings.com%2F\u0026ancestor-origin=walmartfundholdings.com\u0026api_key=tradingview","fqdn":"widgetdata.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"92.38.154.216","port":443,"asn":202422,"as":"G-Core Labs S.A.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.375Z","timestamp":1785159269375,"http_version":"HTTP/1.1","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.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":"Wed, 18 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"96:06:76:35:9F:2C:2D:1C:89:55:E8:92:7C:4F:4B:FD:E9:F6:FF:1A","sha256":"BC:FA:33:CE:19:85:7A:43:44:BA:17:CE:87:15:42:E2:02:0C:7A:4E:83:42:1F:58:8F:59:B4:20:BF:4B:35:00"}}},"request":{"raw":"GET /socket.io/websocket?from=embed-widget%2Fforex-cross-rates%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=walmartfundholdings.com%2F\u0026ancestor-origin=walmartfundholdings.com\u0026api_key=tradingview HTTP/1.1\r\nHost: widgetdata.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-WebSocket-Version: 13\r\nOrigin: https://www.tradingview-widget.com\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: AxdQ60FWUUNFmHEyALoU6A==\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":"HTTP/1.1 101 Switching Protocols\r\nDate: Mon, 27 Jul 2026 13:34:29 GMT\r\nConnection: upgrade\r\nsec-websocket-accept: XgHSQzJiskUUmo4MbWm8TIP5k4U=\r\nsec-websocket-extensions: permessage-deflate\r\nupgrade: websocket\r\nServer: tv\r\n\r\n","headers":null,"cookies":null,"status_code":"101","status_text":"Switching Protocols","fingerprints":null,"data":{"size":0,"size_decoded":224,"mime_type":"text/plain","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":""}},"time_used":91,"timings":{"blocked":0,"dns":6,"connect":19,"send":0,"wait":23,"receive":0,"ssl":43},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.gstatic.com/_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css","fqdn":"www.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":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.709Z","timestamp":1785159269709,"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 /_/translate_http/_/ss/k=translate_http.tr.B7Dih9Jyjnw.L.F4.O/am=BIAABw/d=0/rs=AN8SPfpC04vrrzQXgs_TCM5EtruwfPzNtQ/m=el_main_css HTTP/1.1\r\nHost: www.gstatic.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://walmartfundholdings.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\naccept-ranges: bytes\r\ncontent-encoding: gzip\r\naccess-control-allow-origin: *\r\ncontent-security-policy-report-only: require-trusted-types-for 'script'; report-uri https://csp.withgoogle.com/csp/rosetta\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy: same-origin; report-to=\"rosetta\"\r\nreport-to: {\"group\":\"rosetta\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/rosetta\"}]}\r\ncontent-length: 3967\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Wed, 22 Jul 2026 13:10:44 GMT\r\nexpires: Thu, 22 Jul 2027 13:10:44 GMT\r\ncache-control: public, max-age=31536000\r\nlast-modified: Thu, 09 Apr 2026 01:12:55 GMT\r\ncontent-type: text/css; charset=UTF-8\r\nvary: Accept-Encoding\r\nage: 433425\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":20284,"size_decoded":4799,"mime_type":"text/css; charset=UTF-8","magic":"ASCII text, with very long lines (20284), with no line terminators","md5":"fde4f72b90fe807270db3c332dd058df","sha1":"7ef4d70af01c38a7f80a7650be25f63aff4ba751","sha256":"ab31c9be358d2107fc1158434c7aeaaf15f82e3e405ed67ab236b5ac232ed159","sha512":"9bef39350af557afeb10cb71068426ab28befaf5295359954787be06a5ce0993d69e8f5018a5a17c44311d294dd1a87a6f82edd0f5743df0149b8e4e53061695","ssdeep":"192:nvqx/EhZINcrXsfg0SgG8CqA3uku9SJFzvQVMbnUIfIxIVVpTrecfzPtcmt4v78l:gMF8Sb3i0JFzourUqWMVpTrdfzPtcBG","tlshash":"c492872057aed01967efa82364d36dff71d444db90123eeaaf5a7352cd821f231ea214","first_seen":"2026-04-13T20:43:22.641436Z","last_seen":"2026-07-30T05:46:25.805952Z","times_seen":18468,"resource_available":false,"data":"LlZJcGdKZC1aVmk5b2QtT1JIYi1PRVZtY2R7bGVmdDowO3RvcDowO2hlaWdodDozOXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxMDAwMDAwMTtwb3NpdGlvbjpmaXhlZDtib3JkZXI6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNkI5MERBO21hcmdpbjowO2JveC1zaGFkb3c6MCAwIDhweCAxcHggIzk5OX0uVklwZ0pkLVpWaTlvZC14bDA3T2ItT0VWbWNke3otaW5kZXg6MTAwMDAwMDI7Ym9yZGVyOm5vbmU7cG9zaXRpb246Zml4ZWQ7Ym94LXNoYWRvdzowIDNweCA4cHggMnB4ICM5OTl9LlZJcGdKZC1aVmk5b2QtU21mWi1PRVZtY2R7ei1pbmRleDoxMDAwMDAwMDtib3JkZXI6bm9uZTttYXJnaW46MH0uZ29vZy10ZS1nYWRnZXR7Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjExcHg7Y29sb3I6IzY2Njt3aGl0ZS1zcGFjZTpub3dyYXB9Lmdvb2ctdGUtZ2FkZ2V0IGltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ym9yZGVyOm5vbmV9Lmdvb2ctdGUtZ2FkZ2V0LXNpbXBsZXtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkICNENUQ1RDU7Ym9yZGVyLXRvcDoxcHggc29saWQgIzlCOUI5Qjtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjRThFOEU4O2JvcmRlci1yaWdodDoxcHggc29saWQgI0Q1RDVENTtmb250LXNpemU6MTBwdDtkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nLXRvcDoxcHg7cGFkZGluZy1ib3R0b206MnB4O2N1cnNvcjpwb2ludGVyfS5nb29nLXRlLWdhZGdldC1pY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4O3dpZHRoOjE5cHg7aGVpZ2h0OjE5cHg7Ym9yZGVyOm5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWNvbWJve21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS5nb29nLXRlLWdhZGdldCAuZ29vZy10ZS1jb21ib3ttYXJnaW46NHB4IDB9LlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDphY3RpdmUsLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkOmhvdmVyLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDpsaW5rLC5WSXBnSmQtWlZpOW9kLWw0ZUhYLWhTUkdQZDp2aXNpdGVke2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojNDQ0O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1BkLC5WSXBnSmQtWlZpOW9kLVR2RDlQYy1oU1JHUGR7ZGlzcGxheTpibG9jazttYXJnaW46MCAxMHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgLlZJcGdKZC1aVmk5b2QtbDRlSFgtaFNSR1Bke3BhZGRpbmctdG9wOjJweDtwYWRkaW5nLWxlZnQ6NHB4fS5WSXBnSmQtWlZpOW9kLU9SSGIgKiwuVklwZ0pkLVpWaTlvZC1TbWZaICosLlZJcGdKZC1aVmk5b2QtbDl4a3RmICosLlZJcGdKZC1aVmk5b2QtdkgxR21mICosLlZJcGdKZC1aVmk5b2QteGwwN09iICosLmdvb2ctdGUtY29tYm97Zm9udC1mYW1pbHk6YXJpYWw7Zm9udC1zaXplOjEwcHR9LlZJcGdKZC1aVmk5b2QtT1JIYnttYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNFNEVGRkI7b3ZlcmZsb3c6aGlkZGVufS5WSXBnSmQtWlZpOW9kLU9SSGIgaW1ne2JvcmRlcjpub25lfS5WSXBnSmQtWlZpOW9kLU9SSGItYk45N1Bje2NvbG9yOiMwMDB9LlZJcGdKZC1aVmk5b2QtT1JIYi1iTjk3UGMgaW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1PUkhiLVRzd3YxYntjb2xvcjojNjY2O3ZlcnRpY2FsLWFsaWduOnRvcDttYXJnaW4tdG9wOjA7Zm9udC1zaXplOjdwdH0uVklwZ0pkLVpWaTlvZC1PUkhiLUtFNnZxZXt3aWR0aDo4cHh9LlZJcGdKZC1aVmk5b2QtTGdic1Nle2JvcmRlci1jb2xvcjojRTdFN0U3O2JvcmRlci1zdHlsZTpub25lIHNvbGlkIHNvbGlkIG5vbmU7Ym9yZGVyLXdpZHRoOjAgMXB4IDFweCAwfS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBkaXZ7Ym9yZGVyLWNvbG9yOiNDQ0MgIzk5OSAjOTk5ICNDQ0M7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCAjOTk5O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2hlaWdodDoyMHB4fS5WSXBnSmQtWlZpOW9kLUxnYnNTZSBidXR0b257YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luOjA7dmVydGljYWwtYWxpZ246dG9wO3doaXRlLXNwYWNlOm5vd3JhcH0uVklwZ0pkLVpWaTlvZC1MZ2JzU2UgYnV0dG9uOmFjdGl2ZXtiYWNrZ3JvdW5kOm5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0NDQ30uVklwZ0pkLVpWaTlvZC1TbWZae21hcmdpbjowO2JhY2tncm91bmQtY29sb3I6I0ZGRjt3aGl0ZS1zcGFjZTpub3dyYXB9LlZJcGdKZC1aVmk5b2QtU21mWi1oU1JHUGR7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZToxMHB0O2JvcmRlcjoxcHggb3V0c2V0ICM4ODg7cGFkZGluZzo2cHggMTBweDt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowfS5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1BkIGltZ3ttYXJnaW4tbGVmdDoycHg7bWFyZ2luLXJpZ2h0OjJweDt3aWR0aDoxOXB4O2hlaWdodDoxOXB4O2JvcmRlcjpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZCBzcGFue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDoycHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5nb29nLXRlLWZsb2F0LXRvcCAuVklwZ0pkLVpWaTlvZC1TbWZaLWhTUkdQZHtwYWRkaW5nOjJweDtib3JkZXItdG9wLXdpZHRoOjB9Lmdvb2ctdGUtZmxvYXQtYm90dG9tIC5WSXBnSmQtWlZpOW9kLVNtZlotaFNSR1Bke3BhZGRpbmc6MnB4O2JvcmRlci1ib3R0b20td2lkdGg6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItbFRCeGVke3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMwMEM7d2hpdGUtc3BhY2U6bm93cmFwO21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6NHB4fS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgc3Bhbnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1sVEJ4ZWQgaW1ne21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZHtjb2xvcjojMDAwfS5nb29nLXRlLWdhZGdldC1zaW1wbGUgLlZJcGdKZC1aVmk5b2QteGwwN09iLWxUQnhlZCBzcGFue3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYntiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Ym9yZGVyOjJweCBzb2xpZCAjQzNEOUZGO292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MH0uVklwZ0pkLVpWaTlvZC14bDA3T2ItaWJuQzZie3BhZGRpbmc6M3B4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmIsLlZJcGdKZC1aVmk5b2QteGwwN09iLWlibkM2YjpsaW5re2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6dmlzaXRlZHtjb2xvcjojNTUxQThCfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6aG92ZXJ7YmFja2dyb3VuZDojQzNEOUZGfS5WSXBnSmQtWlZpOW9kLXhsMDdPYi1pYm5DNmI6YWN0aXZle2NvbG9yOiMwMEN9LlZJcGdKZC1aVmk5b2QtdkgxR21me2JhY2tncm91bmQtY29sb3I6I0ZGRjt0ZXh0LWRlY29yYXRpb246bm9uZTtib3JkZXI6MXB4IHNvbGlkICM2QjkwREE7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1LcmhQTmJ7d2lkdGg6MTZweH0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaGdEVXdle21hcmdpbjo2cHggMDtoZWlnaHQ6MXB4O2JhY2tncm91bmQtY29sb3I6I2FhYTtvdmVyZmxvdzpoaWRkZW59LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgZGl2e3BhZGRpbmc6NHB4fS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmIgLnVERUZnZXtkaXNwbGF5Om5vbmV9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2Yi1nazZTTWQgLmZtY21Te3BhZGRpbmctbGVmdDo0cHg7cGFkZGluZy1yaWdodDo0cHh9LlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZHt0ZXh0LWRlY29yYXRpb246bm9uZX0uVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOmFjdGl2ZSBkaXYsLlZJcGdKZC1aVmk5b2QtdkgxR21mLWlibkM2YjpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiOnZpc2l0ZWQgZGl2e2NvbG9yOiMwMEM7YmFja2dyb3VuZDojRkZGfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmI6aG92ZXIgZGl2e2NvbG9yOiNGRkY7YmFja2dyb3VuZDojMzZDfS5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDphY3RpdmUgZGl2LC5WSXBnSmQtWlZpOW9kLXZIMUdtZi1pYm5DNmItZ2s2U01kOmhvdmVyIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDpsaW5rIGRpdiwuVklwZ0pkLVpWaTlvZC12SDFHbWYtaWJuQzZiLWdrNlNNZDp2aXNpdGVkIGRpdntjb2xvcjojMDAwO2ZvbnQtd2VpZ2h0OjcwMH0uVklwZ0pkLVpWaTlvZC1sOXhrdGZ7YmFja2dyb3VuZC1jb2xvcjojRkZGO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHh9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLU9FVm1jZHtiYWNrZ3JvdW5kLWNvbG9yOiNGRkY7Ym9yZGVyOjFweCBzb2xpZCAjNkI5MERBO2JveC1zaGFkb3c6MCAzcHggOHB4IDJweCAjOTk5O2JvcmRlci1yYWRpdXM6OHB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0ZiBpbWd7Ym9yZGVyOm5vbmV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLWZtY21Te21hcmdpbi10b3A6NnB4fS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGN7bWFyZ2luLXRvcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5WSXBnSmQtWlZpOW9kLWw5eGt0Zi1WZ3dKbGMgKnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuRFVHSmlle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X21pbnVzX3NtLmdpZil9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLVZnd0psYyAuVGR5VERle2JhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vd3d3Jmdvb2dsZS5jb20vaW1hZ2VzL3ppcHB5X3BsdXNfc20uZ2lmKX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtVmd3SmxjIHNwYW57Y29sb3I6IzAwQzt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2N1cnNvcjpwb2ludGVyO21hcmdpbjowIDRweH0uVklwZ0pkLVpWaTlvZC1sOXhrdGYtSTlHTHB7bWFyZ2luOjZweCAwIDB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm17bWFyZ2luOjB9LlZJcGdKZC1aVmk5b2QtbDl4a3RmLUk5R0xwIGZvcm0gdGV4dGFyZWF7bWFyZ2luLWJvdHRvbTo0cHg7d2lkdGg6MTAwJX0uVklwZ0pkLVpWaTlvZC1sOXhrdGYteWVQZTVje21hcmdpbjo2cHggMCA0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLXdPSE15Znt6LWluZGV4OjEwMDA7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbi1kZWxheTouNnM7bGVmdDotMTAwMHB4O3RvcDotMTAwMHB4fS5WSXBnSmQtWlZpOW9kLWFaMndFZS13T0hNeWYtdGk2aEdje3RyYW5zaXRpb24tZGVsYXk6MHM7bGVmdDotMTRweDt0b3A6LTE0cHh9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDRweDtoZWlnaHQ6MTA0cHg7Ym9yZGVyLXJhZGl1czo1MHB4O2JhY2tncm91bmQ6I0ZGRiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2JyYW5kaW5nL3Byb2R1Y3QvMngvdHJhbnNsYXRlXzI0ZHAucG5nKSA1MCUgNTAlIG5vLXJlcGVhdDt0cmFuc2l0aW9uOmFsbCAuNnMgZWFzZS1pbi1vdXQ7dHJhbnNmb3JtOnNjYWxlKC40KTtvcGFjaXR5OjB9LlZJcGdKZC1aVmk5b2QtYVoyd0VlLU9paUNPLXRpNmhHY3t0cmFuc2Zvcm06c2NhbGUoLjUpO29wYWNpdHk6MX0uVklwZ0pkLVpWaTlvZC1hWjJ3RWV7bWFyZ2luOjJweCAwIDAgMnB4O2FuaW1hdGlvbjpzcGlubmVyLXJvdGF0b3IgMS40cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBzcGlubmVyLXJvdGF0b3J7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDI3MGRlZyl9fS5WSXBnSmQtWlZpOW9kLWFaMndFZS1KdDVjS3tzdHJva2UtZGFzaGFycmF5OjE4NztzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZTojNDI4NUY0O3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2FuaW1hdGlvbjpzcGlubmVyLWRhc2ggMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW5uZXItZGFzaHswJXtzdHJva2UtZGFzaG9mZnNldDoxODd9NTAle3N0cm9rZS1kYXNob2Zmc2V0OjQ2Ljc1O3RyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKX10b3tzdHJva2UtZGFzaG9mZnNldDoxODc7dHJhbnNmb3JtOnJvdGF0ZSg0NTBkZWcpfX0uVklwZ0pkLXlBV05FYi1MN2xia2IgYSwuVklwZ0pkLXlBV05FYi1MN2xia2IgYm9keSwuVklwZ0pkLXlBV05FYi1MN2xia2IgZGl2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBmb3JtLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoMSwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDIsLlZJcGdKZC15QVdORWItTDdsYmtiIGgzLC5WSXBnSmQteUFXTkViLUw3bGJrYiBoNCwuVklwZ0pkLXlBV05FYi1MN2xia2IgaDUsLlZJcGdKZC15QVdORWItTDdsYmtiIGg2LC5WSXBnSmQteUFXTkViLUw3bGJrYiBodG1sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBpZnJhbWUsLlZJcGdKZC15QVdORWItTDdsYmtiIGltZywuVklwZ0pkLXlBV05FYi1MN2xia2IgbGksLlZJcGdKZC15QVdORWItTDdsYmtiIG9sLC5WSXBnSmQteUFXTkViLUw3bGJrYiBwLC5WSXBnSmQteUFXTkViLUw3bGJrYiBzcGFuLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0YWJsZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgdGJvZHksLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0ciwuVklwZ0pkLXlBV05FYi1MN2xia2IgdWx7YWxsOnVuc2V0O2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0Om5vcm1hbH0uVklwZ0pkLXlBV05FYi1MN2xia2Igb2wsLlZJcGdKZC15QVdORWItTDdsYmtiIHVse2xpc3Qtc3R5bGU6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgdGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9LlZJcGdKZC15QVdORWItTDdsYmtiIGNhcHRpb24sLlZJcGdKZC15QVdORWItTDdsYmtiIHRkLC5WSXBnSmQteUFXTkViLUw3bGJrYiB0aHt0ZXh0LWFsaWduOmxlZnQ7Zm9udC13ZWlnaHQ6NDAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiBpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH1kaXY+LlZJcGdKZC15QVdORWItTDdsYmtie3BhZGRpbmc6MTBweCAxNHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYntjb2xvcjojMjIyO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNlZWU7Ym94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy1tb3otYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpOy13ZWJraXQtYm94LXNoYWRvdzowIDRweCAxNnB4IHJnYmEoMCwwLDAsLjIpO2Rpc3BsYXk6bm9uZTtmb250LWZhbWlseTphcmlhbDtmb250LXNpemU6MTBwdDt3aWR0aDo0MjBweDtwYWRkaW5nOjEycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItblZNZmNkLWZtY21TLC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NsZWFyOmJvdGg7Zm9udC1zaXplOjEwcHQ7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpqdXN0aWZ5O3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXI0bmtle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46NHB4IDA7dGV4dC1hbGlnbjpsZWZ0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UdkQ5UGMtTGdic1Nle2Rpc3BsYXk6bm9uZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbDRlSFh7ZmxvYXQ6bGVmdDttYXJnaW46MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLVBMRGJiZntkaXNwbGF5OmlubGluZS1ibG9ja30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItZnc0MlplLVowQXJxZi1oYUFjbGZ7ZGlzcGxheTpub25lO3dpZHRoOjEwMCV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1IOXREdHttYXJnaW4tdG9wOjIwcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUxLNXl1e2Zsb2F0OmxlZnR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXF3VThNZXtmbG9hdDpyaWdodH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItY0dNSTJie21pbi1oZWlnaHQ6MTVweDtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MSV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLWpPZmtNYi1OZTNzRmZ7YmFja2dyb3VuZDotbXMtbGluZWFyLWdyYWRpZW50KHRvcCwjMjk5MTBkIDAsIzIwYWYwZSAxMDAlKTtiYWNrZ3JvdW5kOiMyOTkxMGQ7Ym9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4O2JveC1zaGFkb3c6aW5zZXQgMCAycHggMnB4ICMxZTY2MDk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDJweCAjMWU2NjA5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDJweCAycHggIzFlNjYwOTtjb2xvcjp3aGl0ZTtmb250LXNpemU6OXB0O2ZvbnQtd2VpZ2h0OmJvbGRlcjttYXJnaW4tdG9wOjEycHg7cGFkZGluZzo2cHg7dGV4dC1zaGFkb3c6MXB4IDFweCAxcHggIzFlNjYwOX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItWjBBcnFmLWhTUkdQZHtjb2xvcjojMTVjO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OmFyaWFsO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi1yaWdodDoxNXB4O3RleHQtZGVjb3JhdGlvbjpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYj50ZXh0YXJlYXtmb250LWZhbWlseTphcmlhbDtyZXNpemU6dmVydGljYWw7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjEwcHg7Ym9yZGVyLXJhZGl1czoxcHg7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkIHNpbHZlcjtmb250LXNpemU6MTNweDtoZWlnaHQ6YXV0bztvdmVyZmxvdy15OmF1dG87cGFkZGluZzoxcHh9LlZJcGdKZC15QVdORWItTDdsYmtiIHRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTtvdXRsaW5lOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVowQXJxZi1JYkUwU3ttYXJnaW4tcmlnaHQ6MTBweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwe21pbi1oZWlnaHQ6MjVweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cGFkZGluZy10b3A6OHB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwe21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1ib3R0b206MH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dHtkaXNwbGF5OmlubGluZS1ibG9jazttaW4td2lkdGg6NTRweDsqbWluLXdpZHRoOjcwcHg7Ym9yZGVyOjFweCBzb2xpZCAjZGNkY2RjO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwuMSk7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6IzQ0NDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7aGVpZ2h0OjI3cHg7b3V0bGluZTowO3BhZGRpbmc6MCA4cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2xpbmUtaGVpZ2h0OjI3cHg7bWFyZ2luOjAgMTZweCAwIDA7Ym94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDJweCByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246YWxsIC4yMThzO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y1ZjVmNSwjZjFmMWYxKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lO2N1cnNvcjpkZWZhdWx0fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmhvdmVye2JvcmRlcjoxcHggc29saWQgI2M2YzZjNjtjb2xvcjojMjIyO3RyYW5zaXRpb246YWxsIDBzO2JhY2tncm91bmQtY29sb3I6I2Y4ZjhmODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsI2Y4ZjhmOCwjZjFmMWYxKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmV7Ym9yZGVyOjFweCBzb2xpZCAjYzZjNmM2O2NvbG9yOiMzMzM7YmFja2dyb3VuZC1jb2xvcjojZjZmNmY2O2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwjZjZmNmY2LCNmMWYxZjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmZvY3VzIC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LkFIbXV3ZSAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXM6YWN0aXZle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsLjUpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwuNSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwyNTUsMjU1LC41KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dC5BSG11d2UsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlcjoxcHggc29saWQgIzRkOTBmZTt6LWluZGV4OjQhaW1wb3J0YW50fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0LmdrNlNNZHtiYWNrZ3JvdW5kLWNvbG9yOiNlZWU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCNlZWUsI2UwZTBlMCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSk7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2NvbG9yOiMzMzN9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZntjb2xvcjp3aGl0ZTtib3JkZXItY29sb3I6IzMwNzllZDtiYWNrZ3JvdW5kLWNvbG9yOiM0ZDkwZmU7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCM0ZDkwZmUsIzQ3ODdlZCl9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZi5BSG11d2UgLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjphY3RpdmUsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQgLlZJcGdKZC15QVdORWItWjBBcnFmLXNGZUJxZjpob3ZlciAuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3Vze2JvcmRlci1jb2xvcjojMzA3OWVkO2JhY2tncm91bmQtY29sb3I6IzM1N2FlODtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsIzRkOTBmZSwjMzU3YWU4KX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmhvdmVye2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNmZmYsMCAxcHggMXB4IHJnYmEoMCwwLDAsLjEpOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZiwwIDFweCAxcHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjZmZmLDAgMXB4IDFweCByZ2JhKDAsMCwwLC4xKX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmLkFIbXV3ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dCAuVklwZ0pkLXlBV05FYi1aMEFycWYtc0ZlQnFmOmZvY3VzLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0IC5WSXBnSmQteUFXTkViLVowQXJxZi1zRmVCcWY6aG92ZXIsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUw0Tm41ZS1JOUdMcCAuVklwZ0pkLXlBV05FYi1aMEFycWYtSTlHTHAgaW5wdXQuQUhtdXdlLC5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1MNE5uNWUtSTlHTHAgLlZJcGdKZC15QVdORWItWjBBcnFmLUk5R0xwIGlucHV0OmFjdGl2ZSwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpmb2N1cywuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItTDRObjVlLUk5R0xwIC5WSXBnSmQteUFXTkViLVowQXJxZi1JOUdMcCBpbnB1dDpob3Zlcntib3JkZXItY29sb3I6IzMwNzllZH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItbXJ4UGdle2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZn0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLVcwdkpvLWZtY21Te2NvbG9yOiM5OTk7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjttYXJnaW46MTVweCAwIDVweH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXUwcGpvZS1mbWNtU3tjb2xvcjojODAwO2Rpc3BsYXk6bm9uZTtmb250LXNpemU6OXB0fS5WSXBnSmQteUFXTkViLVZJcGdKZC1mbWNtUy1zbjU0UXtiYWNrZ3JvdW5kLWNvbG9yOiNjOWQ3ZjE7Ym94LXNoYWRvdzoycHggMnB4IDRweCAjOTlhO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjpyZWxhdGl2ZX0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQteGwwN09ie2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7Ym94LXNoYWRvdzowIDJweCA0cHggIzk5YTttaW4td2lkdGg6MDtvdXRsaW5lOm5vbmU7cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MjAwMH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItSUZkS3lkLXhsMDdPYiAuVklwZ0pkLXlBV05FYi1WSXBnSmQtajdMRmxie2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MnB4IDVweCA1cHg7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXN0eWxlOm5vbmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYjpob3ZlcntiYWNrZ3JvdW5kOiNkZGR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC14bDA3T2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYiBoMXtmb250LXNpemU6MTAwJTtmb250LXdlaWdodDo3MDA7bWFyZ2luOjRweCAwfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQteGwwN09iIC5WSXBnSmQteUFXTkViLVZJcGdKZC1qN0xGbGIgc3Ryb25ne2NvbG9yOiMzNDVhYWR9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVZJcGdKZC1lS201RmMtaEZzYm97dGV4dC1hbGlnbjpyaWdodDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowO2xlZnQ6YXV0b30uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVklwZ0pkLWo3TEZsYi1TSXNyVGQgLlZJcGdKZC15QVdORWItVklwZ0pkLWVLbTVGYy1oRnNib3t0ZXh0LWFsaWduOmxlZnQ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OmF1dG99LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLVRWTHc5Yy1wcEhscmYtc241NFEsLlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtZm1jbVN7YmFja2dyb3VuZC1jb2xvcjojZjFlYTAwO2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3gtc2hhZG93OjNweCAzcHggNHB4IHJnYmEoMCwwLDAsLjUpO2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjojZjFlYTAwO2N1cnNvcjpwb2ludGVyO21hcmdpbjotMnB4IC0ycHggLTJweCAtM3B4O3BhZGRpbmc6MnB4IDJweCAycHggM3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2NvbG9yOiMyMjJ9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1WeTJBcWMtcGJUVFlle2NvbG9yOndoaXRlO3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudH0uVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiwuVklwZ0pkLXlBV05FYi1MN2xia2IgLlZJcGdKZC15QVdORWItVFZMdzljLXBwSGxyZiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtcHBIbHJmLXNuNTRRe2JhY2tncm91bmQtY29sb3I6I2M5ZDdmMTtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Ym94LXNoYWRvdzozcHggM3B4IDRweCByZ2JhKDAsMCwwLC41KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOi0ycHggLTJweCAtMnB4IC0zcHg7cGFkZGluZzoycHggMnB4IDNweCAzcHg7cG9zaXRpb246cmVsYXRpdmV9LlZJcGdKZC15QVdORWItTDdsYmtiIHNwYW46Zm9jdXN7b3V0bGluZTpub25lfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1UVkx3OWMtRHlWREF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmU7Ym9yZGVyLXJhZGl1czowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO21hcmdpbjotMnB4O3BhZGRpbmc6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi15QVdORWItVFZMdzljLXNuNTRRLUx6WDNlZntib3JkZXItbGVmdDoycHggc29saWQgcmVkO21hcmdpbi1sZWZ0Oi0ycHh9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLXlBV05FYi1UVkx3OWMtc241NFEtWUlBaUlie2JvcmRlci1yaWdodDoycHggc29saWQgcmVkO21hcmdpbi1yaWdodDotMnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJme3BhZGRpbmc6MnB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21Te2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDJweCAzcHg7bWFyZ2luOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMzMzM7Ym9yZGVyOjFweCBzb2xpZCAjZDlkOWQ5O2JvcmRlci10b3A6MXB4IHNvbGlkICNjMGMwYzA7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246dG9wO2hlaWdodDoyMXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDstd2Via2l0LWJvcmRlci1yYWRpdXM6MXB4fS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmhvdmVye2JvcmRlcjoxcHggc29saWQgI2I5YjliOTtib3JkZXItdG9wOjFweCBzb2xpZCAjYTBhMGEwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpfS5WSXBnSmQteUFXTkViLUw3bGJrYiAuVklwZ0pkLXlBV05FYi1JRmRLeWQtWVBxamJmLWZtY21TOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjMpO291dGxpbmU6bm9uZTtib3JkZXI6MXB4IHNvbGlkICM0ZDkwZmV9LlZJcGdKZC15QVdORWItTDdsYmtiIC5WSXBnSmQteUFXTkViLUlGZEt5ZC1ZUHFqYmYtc0ZlQnFme2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDZweCAzcHg7bWFyZ2luOjAgMCAwIDJweDtoZWlnaHQ6MjFweH0uVklwZ0pkLXlBV05FYi1MN2xia2I+ZGl2e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmb250LWZhbWlseTpHb29nbGUgU2FucyxBcmlhbCxzYW5zLXNlcmlmfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVWQ3ZnJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmVuZDttYXJnaW46MTRweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLUl1aXpXYy1TSXNyVGR7bWFyZ2luLXJpZ2h0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1JdWl6V2MtaTNqTThje21hcmdpbi1sZWZ0OjE0cHg7Y29sb3I6Izc0Nzc3NTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1rNzdJaWZ7bWFyZ2luOjAgMTZweCAxNnB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYXhBVjF7d2lkdGg6YXV0bztjb2xvcjojMWYxZjFmO2ZvbnQtc2l6ZToxNnB4O3RleHQtYWxpZ246aW5pdGlhbH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWF4QVYxIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweDttYXJnaW46MDtiYWNrZ3JvdW5kOiNmMWY0Zjk7cG9zaXRpb246cmVsYXRpdmU7bWluLWhlaWdodDo1MHB4fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkIC5WSXBnSmQteUFXTkViLVNJc3JUZHt0ZXh0LWFsaWduOnJpZ2h0fS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtTjdFcWlkLUI3STRPZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47d2lkdGg6NzclO3BhZGRpbmc6MTJweH0uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLU43RXFpZC1CN0k0T2QgLlZJcGdKZC15QVdORWItU0lzclRke3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1VVHVqQ2J7Y29sb3I6IzFmMWYxZjtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1MDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtVVR1akNie3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1lTzltS2V7Y29sb3I6IzQ0NDc0Njtmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDo0cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1ON0VxaWQtQjdJNE9kIC5WSXBnSmQteUFXTkViLVNJc3JUZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtZU85bUtle3RleHQtYWxpZ246cmlnaHR9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDtyaWdodDo1cHh9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC14Z292NSAuVklwZ0pkLXlBV05FYi1TSXNyVGR7bGVmdDo1cHg7cmlnaHQ6YXV0b30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLVRISTZWYntmaWxsOiMwYjU3ZDB9LlZJcGdKZC15QVdORWItaHZoZ05kIC5WSXBnSmQteUFXTkViLWh2aGdOZC1iZ202c2Z7bWFyZ2luOi00cHggMnB4IDAgMDtwYWRkaW5nOjJweCAwIDA7d2lkdGg6NDhweDtoZWlnaHQ6NDhweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjI0cHg7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDpub25lfS5WSXBnSmQteUFXTkViLWh2aGdOZCAuVklwZ0pkLXlBV05FYi1odmhnTmQtYmdtNnNmOmhvdmVye2JhY2tncm91bmQ6I2U4ZWJlY30uVklwZ0pkLXlBV05FYi1odmhnTmQgLlZJcGdKZC15QVdORWItaHZoZ05kLWFYWVRjZXtkaXNwbGF5Om5vbmV9c2VudGluZWx7fQ=="}},"time_used":16,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/images/cleardot.gif","fqdn":"www.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.251.154.119","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.715Z","timestamp":1785159269715,"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 /images/cleardot.gif HTTP/1.1\r\nHost: www.google.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncontent-type: image/gif\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 43\r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\npragma: no-cache\r\nexpires: Fri, 01 Jan 1990 00:00:00 GMT\r\ncache-control: no-cache, no-store, must-revalidate\r\nlast-modified: Tue, 22 Oct 2019 18:30:00 GMT\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\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":43,"size_decoded":717,"mime_type":"image/gif","magic":"GIF image data, version 89a, 1 x 1","md5":"fc94fb0c3ed8a8f909dbc7630a0987ff","sha1":"56d45f8a17f5078a20af9962c992ca4678450765","sha256":"2dfe28cbdb83f01c940de6a88ab86200154fd772d568035ac568664e52068363","sha512":"c87bf81fd70cf6434ca3a6c05ad6e9bd3f1d96f77dddad8d45ee043b126b2cb07a5cf23b4137b9d8462cd8a9adf2b463ab6de2b38c93db72d2d511ca60e3b57e","ssdeep":"","tlshash":"cb900003cac8c022c2a2c0300a0c03002bbaa8300228030ec0bc30fcec2a3a38c02000","first_seen":"2023-04-05T02:54:04Z","last_seen":"2026-07-30T06:08:30.898081Z","times_seen":81474,"resource_available":true,"data":"R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="}},"time_used":42,"timings":{"blocked":0,"dns":2,"connect":22,"send":0,"wait":18,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/328.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.618Z","timestamp":1785159268618,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/328.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2396\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 19 Oct 2021 05:34:20 GMT\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:33:28 GMT\r\ncache-control: max-age=86400\r\netag: \"940a2a3c47a31e6b927db48b93f606d8\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 36061\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: Uz6ankH0uSAVPTIW46BVX5ilBRmiTJitetfODYbzwU5rfUK_H2BR4Q==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":2396,"size_decoded":2922,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"940a2a3c47a31e6b927db48b93f606d8","sha1":"ae6baf0aa2414befc57305ef288e49604695b1c4","sha256":"aeb35390525c9a2ff55b35bceabd869925940837d658ac837fd1603db2c1455f","sha512":"d3323594bb4300b34c24a498000eccceee9fd9b827ea35f5de5be4751342710ca6c60278239fd94c1729be27832e93b16fba61a8325edca7b218a76b3f094aad","ssdeep":"","tlshash":"99411ae2a4072c7ed205972d014c4bb99f60d922a111674d1e7026984e383f2adf84bf","first_seen":"2023-05-25T22:55:54Z","last_seen":"2026-07-29T06:14:00.350317Z","times_seen":1544,"resource_available":false,"data":"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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/33251.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.655Z","timestamp":1785159268655,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/33251.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 670\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Mon, 01 Sep 2025 11:02:49 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 07:59:32 GMT\r\ncache-control: public, max-age=86400\r\netag: \"ec9dd93a241b707c75a67b74596e9b5e\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 33792\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: 5XrB9QvBJpQJaEgIcHxcA8r__NLrg2JAFSOLNGk3t7NBrZad-ZhVfA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":670,"size_decoded":1241,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"ec9dd93a241b707c75a67b74596e9b5e","sha1":"ccb63f92f95d2d2a3a79e0a1af4a5c4ae8163b3a","sha256":"3929c3a945e23b6246a734d12e96c3d0b8dfe5786d4c25b7b1891a3692f780a5","sha512":"7edb6748d2be6e6b80a20638bb1deded70e45a5c32fcdd8c63059753227817ebcc0c1dbb59b79bed61178ef406b364f06e1b4a9a6fffa759e98060b86f6c200d","ssdeep":"","tlshash":"ce0188ce03224c20dd972397b2d0e491f002f209575a04c4530d44d84147606e9dcf03","first_seen":"2025-09-21T19:23:24.386227Z","last_seen":"2026-07-29T06:14:00.407872Z","times_seen":1401,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAACZUlEQVR4Xu2aO07DQBRFUwIKhfNRsgNasgFgKalpqZFYAdBCSUWBFHYQCTbABhA9mwAGYeOcmXHG9nh+zpWOFMXz3tz7DFKczGDgSLPJeDWbjL7MGK9ZH53kUO1g/yA1n0zOaNw28+l4yX29azYdfdBo5/zsSR9eJBlzDP04E434hv46FTcPBfq0Lm4YKvRtRdwkdOi/ldg8Fpijkdg0NpinltgsVpjLWGwUK8xlJDaJHearFItTgTm1YmEqMKdSLEoN5t2Ql6c611Q9RUqLE4W5fyW+aODCVBFf3DB/b+5+DvP3ewC82Bd2A9gNwGAAn097BbwWKo+XQyPPf+HHa15QUR5ESEOhn3resufKu6/j5eZA2qzM6SKTamzAfQjXm9BoAALVpjSU83a3L9WbwD451+fDYo14rfJiSuMBCGisbITv1THJmpzXW/VfHuvr0GoA5OQ4k8ypYF0O16m4v/i/+zawOgBdSIbgmqvloXRtWw/u3RSrAxDQqAl167hnG6wPoMziyOxfohyM79kOTDodgA4GdBVWhfMBMLAO1nWFswEwIFGtY48uEB+Faxxeqg+DEq53yTw/jMULtiiH1L32idHTYBN4h3WvfWN9AOXg7w/7lYMIAesDiI1iAH0cwkb43QAGbk55hoL2tCkXpgpzF+r9j6NCUkFiMK9SLEoF5tSKhanAnJVicewwn5HYJFaYy1hsFCvMVUtsFhvM00hsGgvM0UpsHjr0b0XcJFTo27q4YSjQZ6fi5r6hP2eiEdfQjxd5eYrc9lTnQy5OmypPeYYoGm8L+0cn8SsMQ+nJVqzvSt+FCLb7X+qEIQAAAABJRU5ErkJggg=="}},"time_used":21,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":21,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/36341.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.656Z","timestamp":1785159268656,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/36341.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2140\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Fri, 25 Apr 2025 06:46:12 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:51:25 GMT\r\netag: \"8305fed86a2e2e09d8372e143ede512e\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 34984\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: FRLYiM6EYG0_7MgW4MjkHgtWTGeyyouW2TjUye03O4JxXwJf9WBi9Q==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.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"]},{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.svg","categories":["CDN"]}],"data":{"size":2140,"size_decoded":2674,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"8305fed86a2e2e09d8372e143ede512e","sha1":"6eb7a928467cc34b354b0dcfdab2a5d802162677","sha256":"3b34f8a08b1b5170133d59cf6a13370ddfe19aa8fcfd262dc6577c40a9a85502","sha512":"e6d028ae347fbaedc5f8bb022e87bdf2221fe600a0c4f9c6956f097e394a9e82272501135ac42b2f20c02641ab14fb2c53a2646cc70ecf30236e26ad02f1aebd","ssdeep":"","tlshash":"754109e5a87b96a1d9af6468b8278849bfdf04a0d9f3725d2e068405492e601a300dc7","first_seen":"2025-09-24T03:26:09.454336Z","last_seen":"2026-07-29T06:14:00.402587Z","times_seen":1353,"resource_available":false,"data":"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"}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":20,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/JP.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.432Z","timestamp":1785159269432,"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 /country/JP.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000,s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"8e5eebf19774ef3286f456604a61341f\"\r\nlast-modified: Thu, 11 Jun 2026 10:27:08 GMT\r\nx-amz-id-2: /WXHyT46myy4dZNzgAk4wInR45HMVmjn4dVtGs9MF2t0P+/+DaqmWFeb1xEWn1n3iP2/vLWmO/2RHUq0noiz9wVQrxVwl/+Z\r\nx-amz-request-id: D2K98G9JT7F7F65J\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 8e5eebf19774ef3286f456604a61341f\r\nx-amz-version-id: dMuak.3I5pdwc2MkdnGbv8PiXot7QaqT\r\ncdn-proxyver: 1.55\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/11/2026 12:25:45\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2695b1263d405a2126a9ac0bb2d59377\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":343,"size_decoded":1217,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (343), with no line terminators","md5":"8e5eebf19774ef3286f456604a61341f","sha1":"4a1dace3065eacb2060b46a9c2e27f3980b1d1d7","sha256":"5f3493794d3ba827510c6ccad5840ad7ee6735fb7ad48cdf9ac2b6f397c4376c","sha512":"4bec5f06fb6d21de411b5698bf8d5290111118fb438a717192e709fe7b697ffb8aa0d668dd9796d0ab245962679f55405497b4d94528bdc27bb6b610fe4eb30b","ssdeep":"","tlshash":"7ae0d8b8a22cd51d98578b7816581091535d50f7b08404f57d4d5a3161061dbf857d84","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-30T06:08:06.401475Z","times_seen":2896,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDE4aDE4VjBIMHYxOFoiIGZpbGw9IiNGMEYzRkEiLz48cGF0aCBkPSJNOSA1YTQgNCAwIDEgMSAwIDggNCA0IDAgMCAxIDAtOFoiIGZpbGw9IiNGNzUyNUYiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05IDE3LjVhOC41IDguNSAwIDEgMCAwLTE3IDguNSA4LjUgMCAwIDAgMCAxN1ptMCAuNUE5IDkgMCAxIDAgOSAwYTkgOSAwIDAgMCAwIDE4WiIgZmlsbD0iI0UwRTNFQiIvPjwvc3ZnPg=="}},"time_used":108,"timings":{"blocked":-1,"dns":51,"connect":28,"send":0,"wait":2,"receive":-1,"ssl":18},"alerts":{"ids":null,"analyzer":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.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.446Z","timestamp":1785159268446,"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://walmartfundholdings.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: 383325\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-07-30T06:27:50.944378Z","times_seen":269571,"resource_available":true,"data":"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"}},"time_used":20,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":19,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/3408.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.601Z","timestamp":1785159268601,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/3408.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2357\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Fri, 06 Feb 2026 07:18:54 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 03:43:02 GMT\r\ncache-control: public, max-age=86400\r\netag: \"e745bf550d209084227adac42e9ec7df\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 35487\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: kXejRswa-_cjng-cgAeRA_Td2NYq9YbHhSWCNjaoRx1vZ-Tc24mQLg==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2357,"size_decoded":2929,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"e745bf550d209084227adac42e9ec7df","sha1":"d335544c68c51d8ae72314406109b7cd06b5668d","sha256":"6f2390c4bf94ba36584793958432d5069f2bec31dfa7cb9b93c0c76cf965a901","sha512":"cf24459f5841a89b0ac17a689b0b5fe241a66b117d0abc94c95502e1664e0e25011d41f249c3645173a122622ad17bad5f1f9558785155184a6fde91920e58b7","ssdeep":"","tlshash":"12413a80ab21b72a88210d32530a056fe5b7ec49c711b6a5a97a3c117a9bbef149315f","first_seen":"2026-02-08T21:55:57.588725Z","last_seen":"2026-07-30T06:07:43.531219Z","times_seen":1542,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAI/ElEQVR4XuVbaWxVRRQu4Y/QFoWgRoyIRqyJidEfGkPkh4lb1PiDvkdxYdOwyKIxQhEBFSO0ENGCaEFFCyoqCugfqRH7XmtpQZYCBQp0r3YB07J0p8s437y+l7ln7jL3vj5a45d8afPumTNn5s5yzsy5cXExxjD/b2MTJgVS4n3B1QnJgd3xyYEiznrONs7ePvL/g3V41ieThjLDpuTeQvX9B8CGJPr2TuSNyOCNKeV/WTSEDs6MRF9wInTT2gYNRvizR8X7AksSkoPltBH9RaHbF0xFXbT+AYNoeHIgnb+lZmpwrMjrusz/po3wFwxgR/h3DOWGLOBzt5EaePUYbIQNsIWaF1Mk+nOS4n05B1SDBoa8EwphE7UzJuAVTudzvYUaMfDMaeV/p1N7+w9+NpQPufVqxYOMvuD6/p8SMwLX8BUY+7NaoQbHzy5gY6b9ofxuRciOn1Wg/K5L2AqbaTO8gSviQ34PrcSJt87MZ0uzylhR+WUGPLr8iCJjRcj28jIou3RrmdBFZRzJbY6+E8RK7+7N38nf9ue/1rL2zh7R8DDcdoCM9is97LPsWqGbytpRjAQ+dWmztIH5RJVacdSUXPbed5WsjTQ8jGg6IAzoXvV9JRvJ66JlrDjcl7OBtksL8VjtTRSa8YHX/mQnqluovRF0dfeyiamHlHJWfIjLoowVTvK6UCctZ0N3u4PY50PbClWkcOq6k6y1w/ytV9S3sdQvSz3NYZRJ/aKUVTS0UbUCqBN103Km5Nu2vp8Q8vAKFSUmXMwN7DV5UQ0XOtnLH59m104OKmXccoQ/yOZyXdBJ0cPrhg20jCm546a1PYbcWxMFhKjYDF8H6tmYqfpbni6xNUK3GXQ7QbjNdkBwoePbY+ih92V0dvWIN0Vl+5uoA3XJwCjUmw7BRttIkgulqYWMxOJD53xLRzd7euVRRTZWRF2oUwZs0lwY02m7BdAzfWEmLRAhth+swDI6u3o9NZ6CPnci6kTdMrATYTumsjIRtpuOAhw0UGFK7MEU8z7xNuwp6HMdom4K+CJUTqEvsMTYesaGOJ3kwAujTs72YIMip0sK+lyX3+Y2GPTAxiQHjxFtNRyv4byNClHCFZVx7mInu9lFgAM+8VaRcJNPVKlO066C82xmxil2XYq7rRM2nLt4xaALdVA5SpxbRjqA/5BBBWTCKem4Ynz7CzedUeSseAeP7ALHmgzlrVDOnaeHlx5WdNhxQeYZgw7EIU7OFw5aIx3gdHr7Jo/IZFSfb9d+U2O5IZXn2g3lnYAGPLJMP3aAwwWbZMBmKicTbRaNx9k7fUh5tKLZoHzZtnJFxopZe+sMZYHDZZfZhz/VsBVflbO1O6tZ3okLVITV/NPBRj9rv6LLpC+pqLxZkaHEnUWcuLQweRhm0pwCg+Ju7gHd/tI+Rc6MaABdOBdtOavIgZNWHVem2YJM/R0GNsE2GbCdyslE2x2dn1kbSgxKC0suKjJWfPD1g4aymAoJPlUuzIyfawzy2YcbFRk7wjYZsJ3KGOgLrsb8tz3w2LTnb4PS9B+qFBkrIgSWUfJXqyIjc8Kig+xMbWuEmBpUxo6wTcZmbjuVkYm2YwTgrk55GGZusXF+Tk4vVmSsiAWQRotudg+3hG0ycp07sCiu71KSPoiwiqzg971yQJGxY/5JdYE7ePaSiODu574790GUMl4J22RgylEZwnqMANzS0gcRtrQbg46bXIa6ExYfUs4HZVxq7WaB400sbUcVe2z5ERH/Ux26hG0yYDuVIWxDB+B6mj6IkA7hRA8GPr6iiNU2dhgVWaC+qZOt3F7BRj+Xp+hxIkaTDNhOZQh73XeAxyF7w/N57I2sMnaqRnWDzXCaL5h3zSlU9NgRL0eGbgfEdAqY8Z75+8ViiECGrjEyjnBnxs2I8zoFkK1BH0RI3Vi3i6AO7563X1yA1JxXp0ny6uOKvBXpIojOpTJGBuuct0HiprrZBjH3cXAR5sgUe9f2xhfyhJss4/1d1YqcFZVtsFhjG3RyhOBMyHDjCMHxkfHUO84nR69uNkZ2OqFtmGnEEdr0i44jxN1B+kBmNK7wdnJYoePaIkiSseZH/Q4vcOsK8zDAUzB0m2YwhPlLkcnfyvUWW1zKmmLFZ3jm3WOKnBk9B0MICekDSoSWMpxi7TAR+Ow7ZXwrQFNzlzgBWsfnNxwgDHN62AoUV7VoO0YI0WUghKcylJE0PLcHIlhddW99cJZot9VZAZ2kecwtDmc8H4gA8RpHYnRozs/UD2rGvbiP7eZvXBf7T19i9y7U327hU8jAuYKrI7G+xEZFSCaGqQzc1bnJ+gAR/KzdWcXyTabFscpm9ml2LXvy7aO2ZwaUoUNR470hDnCpHGUo8TIC52NxLCj0dOebQL0ip0sK+lyXOJqXARudEinEsTgjWae4LKCClLh0oJi7Uf/YSiYFfa5Ds4sRXN5QOYXKxUhc5GrMNtsT1040EQIXlToODiUFfe5Es6sx7CRO2SO4/jO9GgO4QDotQGl2OdrMgw7MXSobK6LDo7gcTaPtjiCU96t3PU7DZKy8sz9y9Lyiptn1OPyfaR/oXo875BdHmyCx7ff6fgmZKZF0YZUggTQcKm9GxwQJAf+Oobp5wOgEmigB1DV1sjkbS7S9ODvC4UK6jVmKDEYh8ohoGTPyxhdqpcgAif78JN18YLskqbL6NrZoSykbO8PeKTGjSJLibxaJVmZwlSSVnNOqnyTVh/jk3OmqInNi8THz5cNAyhtS32g5K+I+YUDT5MIYPilng4kyU2L7wR5MnaUw+itREr6IUxaIgUie9gw/85QqC1eU3vNF0wGIQ+CKOyU+UIZSZTXnvRXGRZMsvTWULI3B7KUDRLJ0lvdkadhO2+MJUOR2JMhEurybbBLIogz9XZewtd8aH4HYHvWTpweKIjk6mgxxJ8SLJGq9POKrSrFt53pb7d0CeyocC8WIgSJ33OC7UDtji//zZ3MyQvnFuWkIM1UDY8O+sD3dMqwdCFy9T2cDSwZVwxUwfDwtEi/75+Npn9CREUpsHMQfT1sBZ+99ly+YJjafz4vfjJ/PI40txvgXDtQRluxs1HwAAAAASUVORK5CYII="}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":23,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/38837.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.668Z","timestamp":1785159268668,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/38837.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 6110\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 02:00:18 GMT\r\nlast-modified: Fri, 31 Oct 2025 08:53:27 GMT\r\netag: \"5559cc796503c56d38b1f1358138881a\"\r\nx-amz-server-side-encryption: AES256\r\ncache-control: public, max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 41651\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: bOKQRmD6hYQhkkvFbxRnPOmFDM1GM-H3adSQ-K7eVYvZS_JGXaF9kA==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":6110,"size_decoded":6665,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"5559cc796503c56d38b1f1358138881a","sha1":"fed316351c978f45c3a78921f7ba06f47075d779","sha256":"a76d38f823e1b0863ca9cde887559a5eadabf97b57c2b4704d4be41a4e2f63fe","sha512":"f6359dd398235e064fc67555a354d75baa5db6740e1162a8b7d70d187474ddb20af683f198cefe4645593f692ede1f1ea8308543504a213ae5c28ca139d72213","ssdeep":"96:CJj23y5li7vLnG/TZhQVSkQ2Yu/12gpcCrIPm4uyoh98fN7oMxQaM+U6:Wj2igjkTZakkQ2YunmCrI+4u0fBoMxQw","tlshash":"ccc1af2bb78f36d6c39c341c838e02014595576cacbb3698d3da4204fbb6573d82a926","first_seen":"2026-04-12T22:00:40.821318Z","last_seen":"2026-07-29T06:14:00.447511Z","times_seen":199,"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":"www.tradingview-widget.com/static/bundles/embed/embed_forex_cross_rates_widget.777cea271d0c0d67c09e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.296Z","timestamp":1785159269296,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/embed_forex_cross_rates_widget.777cea271d0c0d67c09e.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-b0fd\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:44:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 067cc32fbea78ed87114a723e3d8a90a\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"]}],"data":{"size":45309,"size_decoded":16751,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"686875cf199c7af0be3de2a5a2bffc57","sha1":"67f4e29b649a6641be9ad6f99db217ae6a30121c","sha256":"e62fb06f3628b281bc3f17bd41735a65af72ec9a545d1404885fff36cb5f80df","sha512":"9eb81f5be62b7352d397604220c39f01461801d232e6409ed60f8cedced7080c3d80da4f305d313d5dc053557b1e55f42dc7d15b41179de3265e8886984bf523","ssdeep":"768:OG4E1H6Xn6hVwEfGAM3r+ddH3NC2p7nHBiJMNg3v5c1W0U9z51qKrDIwPzPAIF7x:DH6X6hVwrA17BiJMW3v5c1W0U9z51qKn","tlshash":"0b13e64ab19064a362db40a7807b100bfa3f6aecb405857db578ccdd27add487267b3d","first_seen":"2026-07-23T13:38:20.430637Z","last_seen":"2026-07-28T04:59:54.43658Z","times_seen":255,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3ODA3LDY0NjQ0XSx7MTQwMDE3KGUpe2UuZXhwb3J0cz17bG9nbzoibG9nby1WQ05LdWJXcSIsaGlkZGVuOiJoaWRkZW4tVkNOS3ViV3EiLHh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMzoieHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLVZDTkt1YldxIix4eHhzbWFsbDoieHh4c21hbGwtVkNOS3ViV3EiLHh4c21hbGw6Inh4c21hbGwtVkNOS3ViV3EiLHhzbWFsbDoieHNtYWxsLVZDTkt1YldxIixzbWFsbDoic21hbGwtVkNOS3ViV3EiLG1lZGl1bToibWVkaXVtLVZDTkt1YldxIixsYXJnZToibGFyZ2UtVkNOS3ViV3EiLHhsYXJnZToieGxhcmdlLVZDTkt1YldxIix4eGxhcmdlOiJ4eGxhcmdlLVZDTkt1YldxIix4eHhsYXJnZToieHh4bGFyZ2UtVkNOS3ViV3EiLHNrZWxldG9uOiJza2VsZXRvbi1WQ05LdWJXcSIsbGV0dGVyOiJsZXR0ZXItVkNOS3ViV3EifX0sOTcxMDcyKGUpe2UuZXhwb3J0cz17Y29udGFpbmVyOiJjb250YWluZXItRkFQVzJVTmgiLGNvbnRlbnQ6ImNvbnRlbnQtRkFQVzJVTmgifX0sNDg5OTA4KGUpe2UuZXhwb3J0cz17Y29udGFpbmVyOiJjb250YWluZXItZ1R4M1JaUG4iLHdpZGdldDoid2lkZ2V0LWdUeDNSWlBuIiwiZm9yY2UtZGVmYXVsdC1jb2xvcnMiOiJmb3JjZS1kZWZhdWx0LWNvbG9ycy1nVHgzUlpQbiIsdGFibGU6InRhYmxlLWdUeDNSWlBuIixwcmV2ZW50QW5pbWF0aW9uOiJwcmV2ZW50QW5pbWF0aW9uLWdUeDNSWlBuIix0YWJsZUJvZHlSb3c6InRhYmxlQm9keVJvdy1nVHgzUlpQbiJ9fSwyNDA1ODIoZSl7ZS5leHBvcnRzPXtjdXJyZW5jeUJsb2NrOiJjdXJyZW5jeUJsb2NrLWRTc2NmNXB6In19LDIzMjk3NyhlKXtlLmV4cG9ydHM9e3RhYmxlRGF0YUNlbGw6InRhYmxlRGF0YUNlbGwtcWVjOFE0NEsiLHRhYmxlRGF0YUNlbGxDb250ZW50OiJ0YWJsZURhdGFDZWxsQ29udGVudC1xZWM4UTQ0SyIsZ3Jvd2luZzoiZ3Jvd2luZy1xZWM4UTQ0SyIsZmFsbGluZzoiZmFsbGluZy1xZWM4UTQ0SyIsbm9EYXRhOiJub0RhdGEtcWVjOFE0NEsifX0sMzY5MDAzKGUpe2UuZXhwb3J0cz17fX0sNTA3NTAoZSl7ZS5leHBvcnRzPXt9fSwyMzU3MjQoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7TW9kaWZpZXJzOigpPT5yLGhhc2hGcm9tRXZlbnQ6KCk9PmwsaXNNYWNLZXlib2FyZDooKT0+aSxtb2RpZmllcnNGcm9tRXZlbnQ6KCk9PmF9KTt2YXIgbixvPXMoNzM4NDU4KTshZnVuY3Rpb24oZSl7ZVtlLktleUNvZGU9MjU1XT0iS2V5Q29kZSIsZVtlLkNvbnRyb2w9MjU2XT0iQ29udHJvbCIsZVtlLkFsdD01MTJdPSJBbHQiLGVbZS5TaGlmdD0xMDI0XT0iU2hpZnQiLGVbZS5NZXRhPTIwNDhdPSJNZXRhIn0obnx8KG49e30pKTtjb25zdCBpPW8uaXNNYWN8fG8uaXNJT1M7dmFyIHI7ZnVuY3Rpb24gYShlKXtsZXQgdD0wO3JldHVybiBlLnNoaWZ0S2V5JiYodCs9MTAyNCksZS5hbHRLZXkmJih0Kz01MTIpLGUuY3RybEtleSYmKHQrPTI1NiksZS5tZXRhS2V5JiYodCs9MjA0OCksdH1mdW5jdGlvbiBsKGUpe3JldHVybiBhKGUpfGUua2V5Q29kZX0hZnVuY3Rpb24oZSl7ZVtlLk5vbmU9MF09Ik5vbmUiLGVbZS5BbHQ9NTEyXT0iQWx0IixlW2UuU2hpZnQ9MTAyNF09IlNoaWZ0IixlW2UuTW9kPWk/MjA0ODoyNTZdPSJNb2QiLGVbZS5Db250cm9sPTI1Nl09IkNvbnRyb2wiLGVbZS5NZXRhPTIwNDhdPSJNZXRhIn0ocnx8KHI9e30pKTtjb25zdCBjPXs5OiLih6UiLDEzOiLihrUiLDI3OiJFc2MiLDg6aT8i4oyrIjoiQmFja3NwYWNlIiwzMjoiU3BhY2UiLDM1OiJFbmQiLDM2OiJIb21lIiwzNzoi4oaQIiwzODoi4oaRIiwzOToi4oaSIiw0MDoi4oaTIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiRG90IiwxOTE6Ii8ifSx1PXs5OiJUYWIiLDEzOiJFbnRlciIsMjc6IkVzYyIsODoiQmFja3NwYWNlIiwzMjoiU3BhY2UiLDM1OiJFbmQiLDM2OiJIb21lIiwzNzoiQXJyb3dMZWZ0IiwzODoiQXJyb3dVcCIsMzk6IkFycm93UmlnaHQiLDQwOiJBcnJvd0Rvd24iLDQ1OiJJbnMiLDQ2OiJEZWwiLDE4ODoiLCIsMTkwOiIuIiwxOTE6Ii8ifTtmb3IobGV0IGU9MTtlPD0xNjtlKyspY1tlKzExMV09YEYke2V9YCx1W2UrMTExXT1gRiR7ZX1gfSwyMTYxMShlLHQscyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSl7aWYobnVsbCE9ZSYmImJvb2xlYW4iIT10eXBlb2YgZSYmIWlzTmFOKE51bWJlcihlKSkpcmV0dXJuIE51bWJlcihlKX1zLmQodCx7dG9OdW1iZXJPclVuZGVmaW5lZDooKT0+bn0pfSw1MTg3NShlLHQscyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpfXMuZCh0LHtwcmV2ZW50RGVmYXVsdDooKT0+bixwcmV2ZW50RGVmYXVsdEZvckNvbnRleHRNZW51OigpPT5pfSk7Y29uc3Qgbz1bImlucHV0Om5vdChbdHlwZV0pIiwnaW5wdXRbdHlwZT0idGV4dCJdJywnaW5wdXRbdHlwZT0iZW1haWwiXScsJ2lucHV0W3R5cGU9InBhc3N3b3JkIl0nLCdpbnB1dFt0eXBlPSJzZWFyY2giXScsJ2lucHV0W3R5cGU9Im51bWJlciJdJywnaW5wdXRbdHlwZT0idXJsIl0nLCJ0ZXh0YXJlYSIsImFbaHJlZl0iLCcqW2NvbnRlbnRlZGl0YWJsZT0idHJ1ZSJdJywiW2RhdGEtYWxsb3ctY29udGV4dC1tZW51XSJdO2Z1bmN0aW9uIGkoZSl7Y29uc3QgdD1lLnRhcmdldDt0JiYhdC5jbG9zZXN0KG8uam9pbigiLCAiKSkmJmUucHJldmVudERlZmF1bHQoKX19LDYxNjMxMShlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHt1c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0OigpPT5vfSk7dmFyIG49cyg3Nzk0NzQpO2Z1bmN0aW9uIG8oZSx0KXsoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3c/bi51c2VFZmZlY3Q6bi51c2VMYXlvdXRFZmZlY3QpKGUsdCl9fSw2MDE4NDEoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7Y2xvbmU6KCk9Pm8saXNBcnJheTooKT0+cixpc0ludGVnZXI6KCk9PmEsaXNOdW1iZXI6KCk9Pm4saXNPYmplY3Q6KCk9Pml9KTtuZXcgU2V0KFsiX19wcm90b19fIiwicHJvdG90eXBlIiwiY29uc3RydWN0b3IiXSkKO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlJiZpc0Zpbml0ZShlKX1mdW5jdGlvbiBvKGUpe2lmKCFlfHwib2JqZWN0IiE9dHlwZW9mIGUpcmV0dXJuIGU7bGV0IHQ7dD1BcnJheS5pc0FycmF5KGUpP1tdOnt9O2Zvcihjb25zdCBzIGluIGUpaWYoZS5oYXNPd25Qcm9wZXJ0eShzKSl7Y29uc3Qgbj1lW3NdO3Rbc109biYmIm9iamVjdCI9PXR5cGVvZiBuP28obik6bn1yZXR1cm4gdH1mdW5jdGlvbiBpKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWV9Y29uc3Qgcj1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfTtmdW5jdGlvbiBhKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZSYmZSUxPT0wfU51bWJlci5pc05hTj1OdW1iZXIuaXNOYU58fGZ1bmN0aW9uKGUpe3JldHVybiBlIT1lfX0sOTg0Mzc2KGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse1BMQUNFX0hPTERFUjooKT0+cixWb2x1bWVGb3JtYXR0ZXI6KCk9PmN9KTt2YXIgbj1zKDc4MzI1NCksbz1zKDYwMTg0MSksaT1zKDEwNzA0NSk7Y29uc3Qgcj0iLS0tIixhPVt7dmFsdWU6MyxsZXR0ZXI6IksifSx7dmFsdWU6NixsZXR0ZXI6Ik0ifSx7dmFsdWU6OSxsZXR0ZXI6IkIifSx7dmFsdWU6MTIsbGV0dGVyOiJUIn1dO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBzPWUtdDtyZXR1cm4gYS5maW5kKChlPT5lLnZhbHVlPj1zKSk/P2FbYS5sZW5ndGgtMV19Y2xhc3MgY3tjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLnR5cGU9InZvbHVtZSI7Y29uc3R7cHJlY2lzaW9uOnQ9MCxtaW5QcmVjaXNpb246cz0wLGRpbWVuc2lvblByZWNpc2lvbjpuPTIsZGltZW5zaW9uTWluUHJlY2lzaW9uOm89MCxzaWduaWZpY2FudERpZ2l0czpyPTMsaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEsbm9FeHBvbmVudGlhbEZvcm06bCxyZW1vdmVTcGFjZUJlZm9yZURpbWVuc2lvbjpjfT1lO3RoaXMuX3ByZWNpc2lvbj10LHRoaXMuX2Zvcm1hdHRlcj1uZXcgaS5OdW1lcmljRm9ybWF0dGVyKHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6YSxwcmVjaXNpb246dGhpcy5fcHJlY2lzaW9uLG1pblByZWNpc2lvbjpzLG5vRXhwb25lbnRpYWxGb3JtOmx9KSx0aGlzLl9kaW1lbnNpb25QcmVjaXNpb249bix0aGlzLl9kaW1lbnNpb25Gb3JtYXR0ZXI9bmV3IGkuTnVtZXJpY0Zvcm1hdHRlcih7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEscHJlY2lzaW9uOnRoaXMuX2RpbWVuc2lvblByZWNpc2lvbixtaW5QcmVjaXNpb246byxub0V4cG9uZW50aWFsRm9ybTpsfSksdGhpcy5fc2lnbmlmaWNhbnREaWdpdHM9cix0aGlzLl9mcmFjdGlvbmFsVmFsdWVzPXZvaWQgMCE9PXQmJnQ+MCx0aGlzLl9zcGFjZUJlZm9yZURpbWVuc2lvbj1jPyIiOiLigK8iLHRoaXMuX29wdGlvbnM9ZX1zdGF0ZSgpe2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDplLC4uLnR9PXRoaXMuX29wdGlvbnM7cmV0dXJuIHR9Zm9ybWF0KGUsdCl7aWYoISgwLG8uaXNOdW1iZXIpKGUpKXJldHVybiByO2lmKE1hdGguYWJzKGUpPj0xZTEwMClyZXR1cm4gbi50KG51bGwse2NvbnRleHQ6InZvbHVtZS1mb3JtYXR0ZXIifSxzKDU3MDYyKSk7bGV0IGk9IiI7TWF0aC5hYnMoZSk8MSYmKGU9K2UudG9GaXhlZCh0aGlzLl9wcmVjaXNpb24pKSxlPDA/aT0i4oiSIjplPjAmJnQ/LnNpZ25Qb3NpdGl2ZSYmKGk9IisiKSxlPU1hdGguYWJzKGUpO2NvbnN0IGE9ISEodD8uaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Pz90aGlzLl9vcHRpb25zLmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCk7bGV0IGMsdSxoPU1hdGguZmxvb3IoTWF0aC5sb2cxMChlKSkrMTtpZihoPD10aGlzLl9zaWduaWZpY2FudERpZ2l0cyYmKGU9K2UudG9GaXhlZCh0aGlzLl9wcmVjaXNpb24pLGg9TWF0aC5mbG9vcihNYXRoLmxvZzEwKGUpKSsxKSxoPD10aGlzLl9zaWduaWZpY2FudERpZ2l0cyljPXRoaXMuX2Zvcm1hdE51bWJlcihlLGEsdGhpcy5fZm9ybWF0dGVyKTtlbHNle2xldCB0PWwoaCx0aGlzLl9zaWduaWZpY2FudERpZ2l0cyk7Y29uc3Qgcz1NYXRoLnBvdygxMCx0LnZhbHVlKTtlPSsoZS9zKS50b0ZpeGVkKHRoaXMuX2RpbWVuc2lvblByZWNpc2lvbikqcyx0PWwoTWF0aC5mbG9vcihNYXRoLmxvZzEwKGUpKSsxLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzKSxjPXRoaXMuX2Zvcm1hdE51bWJlcihlL01hdGgucG93KDEwLHQudmFsdWUpLGEsdGhpcy5fZGltZW5zaW9uRm9ybWF0dGVyKSx1PXQubGV0dGVyfXJldHVybiB1P2Ake2l9JHtjfSR7dGhpcy5fc3BhY2VCZWZvcmVEaW1lbnNpb259JHt1fWA6YCR7aX0ke2N9YH1wYXJzZShlLHQpe2lmKGU9PT1yKXJldHVybntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfTtjb25zdCBzPXtLOjFlMyxNOjFlNixCOjFlOSxUOjFlMTJ9LG49KGU9ZS5yZXBsYWNlKCLiiJIiLCItIikpLnNsaWNlKC0xKTtpZihzLmhhc093blByb3BlcnR5KG4pKXtjb25zdCBpPXRoaXMuX2Zvcm1hdHRlci5wYXJzZShlLnNsaWNlKDAsLTEpLnRyaW0oKSx0KSxyPWkucmVzP2kudmFsdWU6TmFOO3JldHVybigwLG8uaXNOdW1iZXIpKHIpP3tyZXM6ITAsdmFsdWU6cipzW25dfTp7ZXJyb3I6Im5vdCBhIG51bWJlciIscmVzOiExLHZhbHVlOk5hTn19e2NvbnN0IHM9dGhpcy5fZm9ybWF0dGVyLnBhcnNlKGUudHJpbSgpLHQpO2xldCBuPXMucmVzP3MudmFsdWU6TmFOO3JldHVybi0wPT09biYmKG49MCksKDAsby5pc051bWJlcikobik/e3JlczohMCx2YWx1ZTpufTp7ZXJyb3I6Im5vdCBhIG51bWJlciIscmVzOiExLHZhbHVlOk5hTn19fXN0YXRpYyBzZXJpYWxpemUoZSl7cmV0dXJuIGUuc3RhdGUoKX1zdGF0aWMgZGVzZXJpYWxpemUoZSl7cmV0dXJuIG5ldyBjKGUpfV9mb3JtYXROdW1iZXIoZSx0LHMpe2lmKHRoaXMuX2ZyYWN0aW9uYWxWYWx1ZXMmJjAhPT1lKXtjb25zdCB0PTE0LU1hdGguY2VpbChNYXRoLmxvZzEwKGUpKSxzPU1hdGgucG93KDEwLHQpO2U9TWF0aC5yb3VuZChlKnMpL3N9cmV0dXJuIHMuZm9ybWF0KGUse2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0fSl9Cn19LDY0MTU5MyhlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtkZWNvZGVIVE1MRW50aXRpZXM6KCk9PmwsZ2V0Rmlyc3RTZWdtZW50T3JDb2RlUG9pbnRTdHJpbmc6KCk9PnUsaHRtbEVzY2FwZTooKT0+Y30pO2NvbnN0IG49L1s8IicmPl0vZyxvPWU9PmAmIyR7ZS5jaGFyQ29kZUF0KDApfTtgLGk9eyImbHQ7IjoiPCIsIiZndDsiOiI+IiwiJnF1b3Q7IjonIicsIiZhcG9zOyI6IiciLCImYW1wOyI6IiYiLCImIzYwOyI6IjwiLCImIzYyOyI6Ij4iLCImIzM0OyI6JyInLCImIzM5OyI6IiciLCImIzAzOTsiOiInIiwiJiMzODsiOiImIn0scj1PYmplY3QuYXNzaWduKHt9LC4uLk9iamVjdC5lbnRyaWVzKGkpLm1hcCgoKFtlLHRdKT0+KHtbdF06ZX0pKSkpLGE9bmV3IFJlZ0V4cChPYmplY3Qua2V5cyhpKS5qb2luKCJ8IiksImciKTtuZXcgUmVnRXhwKE9iamVjdC5rZXlzKHIpLmpvaW4oInwiKSwiZyIpO2Z1bmN0aW9uIGwoZSl7cmV0dXJuIGUucmVwbGFjZShhLChlPT5pW2VdfHxlKSl9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZS5yZXBsYWNlKG4sbyl9ZnVuY3Rpb24gdShlKXtjb25zdCB0PUludGwuU2VnbWVudGVyO2lmKHQpe2NvbnN0IHM9bmV3IHQodm9pZCAwLHtncmFudWxhcml0eToiZ3JhcGhlbWUifSksW3tzZWdtZW50Om59PXtzZWdtZW50Om51bGx9XT1zLnNlZ21lbnQoZSk7cmV0dXJuIG4/LnRvVXBwZXJDYXNlKCk/P251bGx9e2NvbnN0IHQ9ZS5jb2RlUG9pbnRBdCgwKTtyZXR1cm4gdD9TdHJpbmcuZnJvbUNvZGVQb2ludCh0KS50b1VwcGVyQ2FzZSgpOm51bGx9fX0sMzQ1MTUxKGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse2hvdEtleURlc2VyaWFsaXplOigpPT5vfSk7dmFyIG49cyg2NDE1OTMpO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIEpTT04ucGFyc2UoKDAsbi5kZWNvZGVIVE1MRW50aXRpZXMpKGUpKX19LDM0NDc4NShlLHQscyl7InVzZSBzdHJpY3QiO3ZhciBuPXMoMzYzMjY5KSxvPXMoMTM4NjM4KSxpPXMoNzI3MDkpLHI9cyg2NTg5OTUpLGE9cygxNjc4OTYpLGw9cyg0OTAzNzgpO2xldCBjPSExLHU9bnVsbCxoPW51bGw7bi5tb2JpbGV0b3VjaHx8KGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3ZlciIscCwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLChmdW5jdGlvbihlKXtjb25zdCB0PWUudGFyZ2V0O2lmKCEodCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZ0LmNsb3Nlc3QoJ1tkYXRhLXRvb2x0aXAtc2hvdy1vbi1mb2N1cz0idHJ1ZSJdJykmJnQubWF0Y2hlcygiOmZvY3VzLXZpc2libGUiKSkpcmV0dXJuO3AoZSwhMCl9KSx7Y2FwdHVyZTohMH0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWZvY3VzIiwoZnVuY3Rpb24oZSl7ZS50YXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmcChlLCEwKX0pLHtjYXB0dXJlOiEwfSkpO2NvbnN0IG09bmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCgpPT57aWYodSYmdS5vcHRpb25zLnRhcmdldCl7bGV0IGU7ZT0iaXNDb25uZWN0ZWQiaW4gdS5vcHRpb25zLnRhcmdldD91Lm9wdGlvbnMudGFyZ2V0LmlzQ29ubmVjdGVkOmRvY3VtZW50LmJvZHkuY29udGFpbnModS5vcHRpb25zLnRhcmdldCksZXx8ZygpfX0pKSxkPShlLHQ9e30pPT57Y29uc3R7Y29udGVudDpzLC4uLm59PXYodCksbz1sLmdldERhdGFGcm9tVGFyZ2V0KGUpLGk9T2JqZWN0LmFzc2lnbihvLG4pO3JldHVybiJub25lIiE9PXMudHlwZSYmKGkuY29udGVudD1zKSwhKCJub25lIj09PWkuY29udGVudC50eXBlJiYhaS5ob3RrZXkpJiYoaS50YXJnZXQ9ZSxmKGkpLCEwKX0sZj1lPT57Y29uc3QgdD12KGUpLHM9bC5nZXRUb29sdGlwKHQpO2lmKHU9e29wdGlvbnM6dCxlbGVtZW50OnN9LCgwLGEuc2V0VG9vbHRpcCkocyksKDAsci5jbGVhclNjaGVkdWxlKSgpLCFjKXJldHVybiBsLmhpZGVUb29sdGlwKHMpLHZvaWQoMCxyLnNjaGVkdWxlUmVuZGVyKSgoKCk9PnkocykpLGZ1bmN0aW9uKGUpe3JldHVybiJudW1iZXIiIT10eXBlb2YgZS50b29sdGlwRGVsYXl8fGlzTmFOKGUudG9vbHRpcERlbGF5KT81MDA6ZS50b29sdGlwRGVsYXl9KHQpKTtjb25zdHt0b29sdGlwRGVib3VuY2U6bn09ZTsibnVtYmVyIiE9dHlwZW9mIG58fGlzTmFOKG4pP3kocyk6KDAsci5zY2hlZHVsZVJlbmRlcikoKCgpPT55KHMpKSxuKX07ZnVuY3Rpb24gcChlLHQpe2lmKCJzb3VyY2VDYXBhYmlsaXRpZXMiaW4gZSYmZS5zb3VyY2VDYXBhYmlsaXRpZXM/LmZpcmVzVG91Y2hFdmVudHMpcmV0dXJuO2NvbnN0IHM9ZnVuY3Rpb24oZSx0LHMpe2NvbnN0IG49W107Zm9yKDtlJiZlIT09dDspZS5jbGFzc0xpc3QmJmUuY2xhc3NMaXN0LmNvbnRhaW5zKHMpJiZuLnB1c2goZSksZT1lLnBhcmVudEVsZW1lbnR8fGIoZS5wYXJlbnROb2RlKTtyZXR1cm4gbn0oZS50YXJnZXQsZS5jdXJyZW50VGFyZ2V0LCJhcHBseS1jb21tb24tdG9vbHRpcCIpO2Zvcihjb25zdCBuIG9mIHMpe2lmKGUgaW5zdGFuY2VvZiBNb3VzZUV2ZW50KWlmKCJidXR0b25zImluIGUpe2lmKDEmZS5idXR0b25zKWNvbnRpbnVlfWVsc2UgaWYoMT09PWUud2hpY2gpY29udGludWU7Y29uc3Qgcz0oKT0+ZChuKTtpZihzKCkpe2NvbnN0IGU9ZT0+byhudWxsLCEwKSxvPShpLHI9ITEpPT57bi5yZW1vdmVFdmVudExpc3RlbmVyKCJjb21tb24tdG9vbHRpcC11cGRhdGUiLHMpLG4ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsbyksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLG8pLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsZSx7Y2FwdHVyZTohMH0pLHQmJihuLnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLG8pLG4ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIsbykpLGgmJihoLmRlc3Ryb3koKSxoPW51bGwpLGcocil9O24uYWRkRXZlbnRMaXN0ZW5lcigiY29tbW9uLXRvb2x0aXAtdXBkYXRlIixzKSxuLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLG8pLG4uYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixvKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGUsewpjYXB0dXJlOiEwfSksdCYmKG4uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsbyksbi5hZGRFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1ibHVyIixvKSksbnVsbD09PWgmJihoPSgwLGkuY3JlYXRlR3JvdXApKHtkZXNjOiJUb29sdGlwIn0pLGguYWRkKHtkZXNjOiJIaWRlIixob3RrZXk6MjcsaGFuZGxlcjpvfSkpO2JyZWFrfX19ZnVuY3Rpb24gXygpeygwLGEuZW1wdHkpKCksYz0hMSx1PW51bGx9Y29uc3QgZz0oZSx0KT0+e2lmKCgwLHIuY2xlYXJTY2hlZHVsZSkoKSwoMCxvLmVuc3VyZU5vdE51bGwpKG0pLmRpc2Nvbm5lY3QoKSwhdSlyZXR1cm47aWYoIWUmJiFjKXJldHVybjtjb25zdHtlbGVtZW50OnMsb3B0aW9uczpufT11LGk9KCk9PntzLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGkpLGwuaGlkZVRvb2x0aXAocyksZT9fKCk6KDAsci5zY2hlZHVsZVJlbW92ZSkoKCgpPT57XygpfSksMjUwKSx0Py4oKX07bi50b29sdGlwSGlkZURlbGF5PygwLHIuc2NoZWR1bGVIaWRlKSgoKCk9PntzLnF1ZXJ5U2VsZWN0b3IoIjpob3ZlciIpP3MuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsaSk6aSgpfSksbi50b29sdGlwSGlkZURlbGF5KTppKCl9O2Z1bmN0aW9uIHkoZSl7Y29uc3R7b3B0aW9uczp0fT0oMCxvLmVuc3VyZU5vdE51bGwpKHUpO2lmKGwuc2V0U3R5bGUoZSx0KSxsLnNob3dUb29sdGlwKGUpLCgwLG8uZW5zdXJlTm90TnVsbCkobSkub2JzZXJ2ZShkb2N1bWVudCx7Y2hpbGRMaXN0OiEwLHN1YnRyZWU6ITB9KSxjPSEwLHQuZm9yY2VIaWRlT25Nb3ZlKXtjb25zdCBlPSgpPT57ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixlKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGUpLGcoKX07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixlKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGUpfX1mdW5jdGlvbiBiKGUpe3JldHVybiBlJiYoZS5ub2RlVHlwZT09PU5vZGUuRUxFTUVOVF9OT0RFP2U6bnVsbCl9ZnVuY3Rpb24gdihlKXtpZihmdW5jdGlvbihlKXtyZXR1cm4iY29udGVudCJpbiBlfShlKSlyZXR1cm4gZTtjb25zdHtpbm5lcjp0LGh0bWw6cyx0ZXh0Om4sLi4ub309ZTtsZXQgaT17dHlwZToibm9uZSJ9O3JldHVybiB0JiYoaT17dHlwZToiZWxlbWVudCIsZGF0YTp0fSksbiYmKGk9e3R5cGU6cz8iaHRtbCI6InRleHQiLGRhdGE6bn0pLHtjb250ZW50OmksLi4ub319fSwzNjMyNjkoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7bW9iaWxldG91Y2g6KCk9Pm8sc2V0Q2xhc3NlczooKT0+aX0pO3ZhciBuPXMoNzM4NDU4KTtjb25zdCBvPW4ubW9iaWxldG91Y2g7bi50b3VjaDtmdW5jdGlvbiBpKCl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQobi50b3VjaD8iZmVhdHVyZS10b3VjaCI6ImZlYXR1cmUtbm8tdG91Y2giLG4ubW9iaWxldG91Y2g/ImZlYXR1cmUtbW9iaWxldG91Y2giOiJmZWF0dXJlLW5vLW1vYmlsZXRvdWNoIil9fSwzMTg5NzQoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7Q2hlY2tNb2JpbGU6KCk9PmMsaXNEZXNrdG9wQXBwOigpPT5hLGlzTWFjOigpPT5yLGlzU3ltcGhvbnlFbWJlZDooKT0+bCxvbldpZGdldDooKT0+by5vbldpZGdldCxzdXBwb3J0VG91Y2g6KCk9PnV9KTt2YXIgbj1zKDczODQ1OCksbz1zKDM3NzIyNik7Y29uc3QgaT13aW5kb3cuVHJhZGluZ1ZpZXc9d2luZG93LlRyYWRpbmdWaWV3fHx7fTtmdW5jdGlvbiByKCl7cmV0dXJuIG4uaXNNYWN9ZnVuY3Rpb24gYSgpe3JldHVybi9UVkRlc2t0b3AvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpfWZ1bmN0aW9uIGwoKXtyZXR1cm4gaS5pc1N5bXBob255fHwhMX1jb25zdCBjPXtBbmRyb2lkOigpPT5uLmlzQW5kcm9pZCxCbGFja0JlcnJ5OigpPT5uLmlzQmxhY2tCZXJyeSxpT1M6KCk9Pm4uaXNJT1MsT3BlcmE6KCk9Pm4uaXNPcGVyYU1pbmksaXNJUGFkOigpPT5uLmlzSVBhZCxhbnk6KCk9Pm4uaXNBbnlNb2JpbGV9O2Z1bmN0aW9uIHUoKXtyZXR1cm4gbi5tb2JpbGV0b3VjaHx8bi50b3VjaHx8bi5pc0FueU1vYmlsZX1pLmlzTW9iaWxlPWMsaS5vbldpZGdldD1vLm9uV2lkZ2V0O24uaXNDaHJvbWUsbi5pc0ZGLG4uaXNFZGdlLG4uaXNTYWZhcml9LDEyOTM2NShlLHQscyl7InVzZSBzdHJpY3QiOyFmdW5jdGlvbiBlKCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRShlKX1jYXRjaChlKXtjb25zb2xlLmVycm9yKGUpfX0oKSxlLmV4cG9ydHM9cyg1MzIzODcpfSwxMjI3NDkoZSx0KXsidXNlIHN0cmljdCI7dmFyIHM9U3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpLG49U3ltYm9sLmZvcigicmVhY3QucG9ydGFsIiksbz1TeW1ib2wuZm9yKCJyZWFjdC5mcmFnbWVudCIpLGk9U3ltYm9sLmZvcigicmVhY3Quc3RyaWN0X21vZGUiKSxyPVN5bWJvbC5mb3IoInJlYWN0LnByb2ZpbGVyIiksYT1TeW1ib2wuZm9yKCJyZWFjdC5wcm92aWRlciIpLGw9U3ltYm9sLmZvcigicmVhY3QuY29udGV4dCIpLGM9U3ltYm9sLmZvcigicmVhY3QuZm9yd2FyZF9yZWYiKSx1PVN5bWJvbC5mb3IoInJlYWN0LnN1c3BlbnNlIiksaD1TeW1ib2wuZm9yKCJyZWFjdC5tZW1vIiksbT1TeW1ib2wuZm9yKCJyZWFjdC5sYXp5IiksZD1TeW1ib2wuaXRlcmF0b3I7dmFyIGY9e2lzTW91bnRlZDpmdW5jdGlvbigpe3JldHVybiExfSxlbnF1ZXVlRm9yY2VVcGRhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVSZXBsYWNlU3RhdGU6ZnVuY3Rpb24oKXt9LGVucXVldWVTZXRTdGF0ZTpmdW5jdGlvbigpe319LHA9T2JqZWN0LmFzc2lnbixfPXt9O2Z1bmN0aW9uIGcoZSx0LHMpe3RoaXMucHJvcHM9ZSx0aGlzLmNvbnRleHQ9dCx0aGlzLnJlZnM9Xyx0aGlzLnVwZGF0ZXI9c3x8Zn1mdW5jdGlvbiB5KCl7fWZ1bmN0aW9uIGIoZSx0LHMpewp0aGlzLnByb3BzPWUsdGhpcy5jb250ZXh0PXQsdGhpcy5yZWZzPV8sdGhpcy51cGRhdGVyPXN8fGZ9Zy5wcm90b3R5cGUuaXNSZWFjdENvbXBvbmVudD17fSxnLnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihlLHQpe2lmKCJvYmplY3QiIT10eXBlb2YgZSYmImZ1bmN0aW9uIiE9dHlwZW9mIGUmJm51bGwhPWUpdGhyb3cgRXJyb3IoInNldFN0YXRlKC4uLik6IHRha2VzIGFuIG9iamVjdCBvZiBzdGF0ZSB2YXJpYWJsZXMgdG8gdXBkYXRlIG9yIGEgZnVuY3Rpb24gd2hpY2ggcmV0dXJucyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzLiIpO3RoaXMudXBkYXRlci5lbnF1ZXVlU2V0U3RhdGUodGhpcyxlLHQsInNldFN0YXRlIil9LGcucHJvdG90eXBlLmZvcmNlVXBkYXRlPWZ1bmN0aW9uKGUpe3RoaXMudXBkYXRlci5lbnF1ZXVlRm9yY2VVcGRhdGUodGhpcyxlLCJmb3JjZVVwZGF0ZSIpfSx5LnByb3RvdHlwZT1nLnByb3RvdHlwZTt2YXIgdj1iLnByb3RvdHlwZT1uZXcgeTt2LmNvbnN0cnVjdG9yPWIscCh2LGcucHJvdG90eXBlKSx2LmlzUHVyZVJlYWN0Q29tcG9uZW50PSEwO3ZhciBDPUFycmF5LmlzQXJyYXksTj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LHg9e2N1cnJlbnQ6bnVsbH0sRT17a2V5OiEwLHJlZjohMCxfX3NlbGY6ITAsX19zb3VyY2U6ITB9O2Z1bmN0aW9uIFMoZSx0LG4pe3ZhciBvLGk9e30scj1udWxsLGE9bnVsbDtpZihudWxsIT10KWZvcihvIGluIHZvaWQgMCE9PXQucmVmJiYoYT10LnJlZiksdm9pZCAwIT09dC5rZXkmJihyPSIiK3Qua2V5KSx0KU4uY2FsbCh0LG8pJiYhRS5oYXNPd25Qcm9wZXJ0eShvKSYmKGlbb109dFtvXSk7dmFyIGw9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1sKWkuY2hpbGRyZW49bjtlbHNlIGlmKDE8bCl7Zm9yKHZhciBjPUFycmF5KGwpLHU9MDt1PGw7dSsrKWNbdV09YXJndW1lbnRzW3UrMl07aS5jaGlsZHJlbj1jfWlmKGUmJmUuZGVmYXVsdFByb3BzKWZvcihvIGluIGw9ZS5kZWZhdWx0UHJvcHMpdm9pZCAwPT09aVtvXSYmKGlbb109bFtvXSk7cmV0dXJueyQkdHlwZW9mOnMsdHlwZTplLGtleTpyLHJlZjphLHByb3BzOmksX293bmVyOnguY3VycmVudH19ZnVuY3Rpb24gdyhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lJiZlLiQkdHlwZW9mPT09c312YXIgVD0vXC8rL2c7ZnVuY3Rpb24gUChlLHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWUmJm51bGwhPWUua2V5P2Z1bmN0aW9uKGUpe3ZhciB0PXsiPSI6Ij0wIiwiOiI6Ij0yIn07cmV0dXJuIiQiK2UucmVwbGFjZSgvWz06XS9nLChmdW5jdGlvbihlKXtyZXR1cm4gdFtlXX0pKX0oIiIrZS5rZXkpOnQudG9TdHJpbmcoMzYpfWZ1bmN0aW9uIGsoZSx0LG8saSxyKXt2YXIgYT10eXBlb2YgZTsidW5kZWZpbmVkIiE9PWEmJiJib29sZWFuIiE9PWF8fChlPW51bGwpO3ZhciBsPSExO2lmKG51bGw9PT1lKWw9ITA7ZWxzZSBzd2l0Y2goYSl7Y2FzZSJzdHJpbmciOmNhc2UibnVtYmVyIjpsPSEwO2JyZWFrO2Nhc2Uib2JqZWN0Ijpzd2l0Y2goZS4kJHR5cGVvZil7Y2FzZSBzOmNhc2UgbjpsPSEwfX1pZihsKXJldHVybiByPXIobD1lKSxlPSIiPT09aT8iLiIrUChsLDApOmksQyhyKT8obz0iIixudWxsIT1lJiYobz1lLnJlcGxhY2UoVCwiJCYvIikrIi8iKSxrKHIsdCxvLCIiLChmdW5jdGlvbihlKXtyZXR1cm4gZX0pKSk6bnVsbCE9ciYmKHcocikmJihyPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOnMsdHlwZTplLnR5cGUsa2V5OnQscmVmOmUucmVmLHByb3BzOmUucHJvcHMsX293bmVyOmUuX293bmVyfX0ocixvKyghci5rZXl8fGwmJmwua2V5PT09ci5rZXk/IiI6KCIiK3Iua2V5KS5yZXBsYWNlKFQsIiQmLyIpKyIvIikrZSkpLHQucHVzaChyKSksMTtpZihsPTAsaT0iIj09PWk/Ii4iOmkrIjoiLEMoZSkpZm9yKHZhciBjPTA7YzxlLmxlbmd0aDtjKyspe3ZhciB1PWkrUChhPWVbY10sYyk7bCs9ayhhLHQsbyx1LHIpfWVsc2UgaWYodT1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWV8fCJvYmplY3QiIT10eXBlb2YgZT9udWxsOiJmdW5jdGlvbiI9PXR5cGVvZihlPWQmJmVbZF18fGVbIkBAaXRlcmF0b3IiXSk/ZTpudWxsfShlKSwiZnVuY3Rpb24iPT10eXBlb2YgdSlmb3IoZT11LmNhbGwoZSksYz0wOyEoYT1lLm5leHQoKSkuZG9uZTspbCs9ayhhPWEudmFsdWUsdCxvLHU9aStQKGEsYysrKSxyKTtlbHNlIGlmKCJvYmplY3QiPT09YSl0aHJvdyB0PVN0cmluZyhlKSxFcnJvcigiT2JqZWN0cyBhcmUgbm90IHZhbGlkIGFzIGEgUmVhY3QgY2hpbGQgKGZvdW5kOiAiKygiW29iamVjdCBPYmplY3RdIj09PXQ/Im9iamVjdCB3aXRoIGtleXMgeyIrT2JqZWN0LmtleXMoZSkuam9pbigiLCAiKSsifSI6dCkrIikuIElmIHlvdSBtZWFudCB0byByZW5kZXIgYSBjb2xsZWN0aW9uIG9mIGNoaWxkcmVuLCB1c2UgYW4gYXJyYXkgaW5zdGVhZC4iKTtyZXR1cm4gbH1mdW5jdGlvbiBEKGUsdCxzKXtpZihudWxsPT1lKXJldHVybiBlO3ZhciBuPVtdLG89MDtyZXR1cm4gayhlLG4sIiIsIiIsKGZ1bmN0aW9uKGUpe3JldHVybiB0LmNhbGwocyxlLG8rKyl9KSksbn1mdW5jdGlvbiBGKGUpe2lmKC0xPT09ZS5fc3RhdHVzKXt2YXIgdD1lLl9yZXN1bHQ7KHQ9dCgpKS50aGVuKChmdW5jdGlvbih0KXswIT09ZS5fc3RhdHVzJiYtMSE9PWUuX3N0YXR1c3x8KGUuX3N0YXR1cz0xLGUuX3Jlc3VsdD10KX0pLChmdW5jdGlvbih0KXswIT09ZS5fc3RhdHVzJiYtMSE9PWUuX3N0YXR1c3x8KGUuX3N0YXR1cz0yLGUuX3Jlc3VsdD10KX0pKSwtMT09PWUuX3N0YXR1cyYmKGUuX3N0YXR1cz0wLGUuX3Jlc3VsdD10KX1pZigxPT09ZS5fc3RhdHVzKXJldHVybiBlLl9yZXN1bHQuZGVmYXVsdDt0aHJvdyBlLl9yZXN1bHR9dmFyIEw9e2N1cnJlbnQ6bnVsbH0sSD17dHJhbnNpdGlvbjpudWxsfSxPPXtSZWFjdEN1cnJlbnREaXNwYXRjaGVyOkwsUmVhY3RDdXJyZW50QmF0Y2hDb25maWc6SCxSZWFjdEN1cnJlbnRPd25lcjp4fTt0LkNoaWxkcmVuPXttYXA6RCxmb3JFYWNoOmZ1bmN0aW9uKGUsdCxzKXtEKGUsKGZ1bmN0aW9uKCl7CnQuYXBwbHkodGhpcyxhcmd1bWVudHMpfSkscyl9LGNvdW50OmZ1bmN0aW9uKGUpe3ZhciB0PTA7cmV0dXJuIEQoZSwoZnVuY3Rpb24oKXt0Kyt9KSksdH0sdG9BcnJheTpmdW5jdGlvbihlKXtyZXR1cm4gRChlLChmdW5jdGlvbihlKXtyZXR1cm4gZX0pKXx8W119LG9ubHk6ZnVuY3Rpb24oZSl7aWYoIXcoZSkpdGhyb3cgRXJyb3IoIlJlYWN0LkNoaWxkcmVuLm9ubHkgZXhwZWN0ZWQgdG8gcmVjZWl2ZSBhIHNpbmdsZSBSZWFjdCBlbGVtZW50IGNoaWxkLiIpO3JldHVybiBlfX0sdC5Db21wb25lbnQ9Zyx0LkZyYWdtZW50PW8sdC5Qcm9maWxlcj1yLHQuUHVyZUNvbXBvbmVudD1iLHQuU3RyaWN0TW9kZT1pLHQuU3VzcGVuc2U9dSx0Ll9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEPU8sdC5jbG9uZUVsZW1lbnQ9ZnVuY3Rpb24oZSx0LG4pe2lmKG51bGw9PWUpdGhyb3cgRXJyb3IoIlJlYWN0LmNsb25lRWxlbWVudCguLi4pOiBUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkICIrZSsiLiIpO3ZhciBvPXAoe30sZS5wcm9wcyksaT1lLmtleSxyPWUucmVmLGE9ZS5fb3duZXI7aWYobnVsbCE9dCl7aWYodm9pZCAwIT09dC5yZWYmJihyPXQucmVmLGE9eC5jdXJyZW50KSx2b2lkIDAhPT10LmtleSYmKGk9IiIrdC5rZXkpLGUudHlwZSYmZS50eXBlLmRlZmF1bHRQcm9wcyl2YXIgbD1lLnR5cGUuZGVmYXVsdFByb3BzO2ZvcihjIGluIHQpTi5jYWxsKHQsYykmJiFFLmhhc093blByb3BlcnR5KGMpJiYob1tjXT12b2lkIDA9PT10W2NdJiZ2b2lkIDAhPT1sP2xbY106dFtjXSl9dmFyIGM9YXJndW1lbnRzLmxlbmd0aC0yO2lmKDE9PT1jKW8uY2hpbGRyZW49bjtlbHNlIGlmKDE8Yyl7bD1BcnJheShjKTtmb3IodmFyIHU9MDt1PGM7dSsrKWxbdV09YXJndW1lbnRzW3UrMl07by5jaGlsZHJlbj1sfXJldHVybnskJHR5cGVvZjpzLHR5cGU6ZS50eXBlLGtleTppLHJlZjpyLHByb3BzOm8sX293bmVyOmF9fSx0LmNyZWF0ZUNvbnRleHQ9ZnVuY3Rpb24oZSl7cmV0dXJuKGU9eyQkdHlwZW9mOmwsX2N1cnJlbnRWYWx1ZTplLF9jdXJyZW50VmFsdWUyOmUsX3RocmVhZENvdW50OjAsUHJvdmlkZXI6bnVsbCxDb25zdW1lcjpudWxsLF9kZWZhdWx0VmFsdWU6bnVsbCxfZ2xvYmFsTmFtZTpudWxsfSkuUHJvdmlkZXI9eyQkdHlwZW9mOmEsX2NvbnRleHQ6ZX0sZS5Db25zdW1lcj1lfSx0LmNyZWF0ZUVsZW1lbnQ9Uyx0LmNyZWF0ZUZhY3Rvcnk9ZnVuY3Rpb24oZSl7dmFyIHQ9Uy5iaW5kKG51bGwsZSk7cmV0dXJuIHQudHlwZT1lLHR9LHQuY3JlYXRlUmVmPWZ1bmN0aW9uKCl7cmV0dXJue2N1cnJlbnQ6bnVsbH19LHQuZm9yd2FyZFJlZj1mdW5jdGlvbihlKXtyZXR1cm57JCR0eXBlb2Y6YyxyZW5kZXI6ZX19LHQuaXNWYWxpZEVsZW1lbnQ9dyx0Lmxhenk9ZnVuY3Rpb24oZSl7cmV0dXJueyQkdHlwZW9mOm0sX3BheWxvYWQ6e19zdGF0dXM6LTEsX3Jlc3VsdDplfSxfaW5pdDpGfX0sdC5tZW1vPWZ1bmN0aW9uKGUsdCl7cmV0dXJueyQkdHlwZW9mOmgsdHlwZTplLGNvbXBhcmU6dm9pZCAwPT09dD9udWxsOnR9fSx0LnN0YXJ0VHJhbnNpdGlvbj1mdW5jdGlvbihlKXt2YXIgdD1ILnRyYW5zaXRpb247SC50cmFuc2l0aW9uPXt9O3RyeXtlKCl9ZmluYWxseXtILnRyYW5zaXRpb249dH19LHQudW5zdGFibGVfYWN0PWZ1bmN0aW9uKCl7dGhyb3cgRXJyb3IoImFjdCguLi4pIGlzIG5vdCBzdXBwb3J0ZWQgaW4gcHJvZHVjdGlvbiBidWlsZHMgb2YgUmVhY3QuIil9LHQudXNlQ2FsbGJhY2s9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gTC5jdXJyZW50LnVzZUNhbGxiYWNrKGUsdCl9LHQudXNlQ29udGV4dD1mdW5jdGlvbihlKXtyZXR1cm4gTC5jdXJyZW50LnVzZUNvbnRleHQoZSl9LHQudXNlRGVidWdWYWx1ZT1mdW5jdGlvbigpe30sdC51c2VEZWZlcnJlZFZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiBMLmN1cnJlbnQudXNlRGVmZXJyZWRWYWx1ZShlKX0sdC51c2VFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gTC5jdXJyZW50LnVzZUVmZmVjdChlLHQpfSx0LnVzZUlkPWZ1bmN0aW9uKCl7cmV0dXJuIEwuY3VycmVudC51c2VJZCgpfSx0LnVzZUltcGVyYXRpdmVIYW5kbGU9ZnVuY3Rpb24oZSx0LHMpe3JldHVybiBMLmN1cnJlbnQudXNlSW1wZXJhdGl2ZUhhbmRsZShlLHQscyl9LHQudXNlSW5zZXJ0aW9uRWZmZWN0PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIEwuY3VycmVudC51c2VJbnNlcnRpb25FZmZlY3QoZSx0KX0sdC51c2VMYXlvdXRFZmZlY3Q9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gTC5jdXJyZW50LnVzZUxheW91dEVmZmVjdChlLHQpfSx0LnVzZU1lbW89ZnVuY3Rpb24oZSx0KXtyZXR1cm4gTC5jdXJyZW50LnVzZU1lbW8oZSx0KX0sdC51c2VSZWR1Y2VyPWZ1bmN0aW9uKGUsdCxzKXtyZXR1cm4gTC5jdXJyZW50LnVzZVJlZHVjZXIoZSx0LHMpfSx0LnVzZVJlZj1mdW5jdGlvbihlKXtyZXR1cm4gTC5jdXJyZW50LnVzZVJlZihlKX0sdC51c2VTdGF0ZT1mdW5jdGlvbihlKXtyZXR1cm4gTC5jdXJyZW50LnVzZVN0YXRlKGUpfSx0LnVzZVN5bmNFeHRlcm5hbFN0b3JlPWZ1bmN0aW9uKGUsdCxzKXtyZXR1cm4gTC5jdXJyZW50LnVzZVN5bmNFeHRlcm5hbFN0b3JlKGUsdCxzKX0sdC51c2VUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7cmV0dXJuIEwuY3VycmVudC51c2VUcmFuc2l0aW9uKCl9LHQudmVyc2lvbj0iMTguMi4wIn0sNzc5NDc0KGUsdCxzKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPXMoMTIyNzQ5KX0sNjQ0NDk5KGUsdCxzKXsidXNlIHN0cmljdCI7cyg3OTUzODMpLHMoNzIyNTcxKTt2YXIgbj1zKDc1MTU1Nyksbz1zKDc3OTQ3NCksaT1zKDEyOTM2NSkscj1zKDYwMTU4NyksYT1zKDkxMTMyNyksbD1zKDk2NDQ4NiksYz1zKDIyMTA2MSksdT1zKDYwMTg0MSksaD1zKDExNTI5MyksbT1zKDc1NTYyNyk7Y2xhc3MgZCBleHRlbmRzIG0uUHJpY2VGb3JtYXR0ZXJ7Y29uc3RydWN0b3IoZT17fSl7dm9pZCAwIT09ZS5kZWNpbWFsUGxhY2VzJiYoZS5wcmljZVNjYWxlPU1hdGgucG93KDEwLGUuZGVjaW1hbFBsYWNlcykpLHN1cGVyKGUpLAp0aGlzLnR5cGU9InBlcmNlbnRhZ2UifXN0YXRlKCl7cmV0dXJuey4uLnN1cGVyLnN0YXRlKCkscGVyY2VudDohMH19cGFyc2UoZSx0KXtyZXR1cm4gZT1lLnJlcGxhY2UoIiUiLCIiKSxzdXBlci5wYXJzZShlLHQpfWZvcm1hdChlLHQ9e30pe2NvbnN0e3VzZVJ0bEZvcm1hdDpzPSEwfT10LG49c3VwZXIuZm9ybWF0KGUsey4uLnQsdXNlUnRsRm9ybWF0OiExfSkrIiUiO3JldHVybiBzPygwLGguZm9yY2VMVFJTdHIpKG4pOm59c3RhdGljIHNlcmlhbGl6ZShlKXtyZXR1cm4gZS5zdGF0ZSgpfXN0YXRpYyBkZXNlcmlhbGl6ZShlKXtyZXR1cm4gbmV3IGQoZSl9fXZhciBmPXMoODkxNzc4KSxwPXMoOTg0Mzc2KSxfPXMoNTYzOTE4KSxnPXMoMzA2OTApLHk9cyg1MjgzOTYpLGI9cygxODUyNzEpO2Z1bmN0aW9uIHYoZSl7bGV0IHQ9W107Y29uc3Qgbj1mdW5jdGlvbihlKXtzd2l0Y2goZSl7Y2FzZSJQQ1QiOmNhc2UiUENUUEFSIjpyZXR1cm4iJSI7Y2FzZSJQQ1RHRFAiOnJldHVybiBiLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNTU4NDEyKSk7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtkZWZhdWx0OnJldHVybiBlfX0oZS5jdXJyZW5jeV9jb2RlfHxlLnZhbHVlX3VuaXRfaWR8fCIiKTtzd2l0Y2goZS5tZWFzdXJlKXtjYXNlInByaWNlIjpjYXNlInVuaXQiOnQ9W24sZS51bml0X2lkXTticmVhaztkZWZhdWx0OnQ9W25dfXJldHVybiB0LmZpbHRlcihCb29sZWFuKS5qb2luKCLigIkv4oCJIil9dmFyIEM9cygxNTk1MTMpLE49cyg5NzMxMTkpLHg9cyg2MDI4NyksRT1zKDc4Njc2MCksUz1zKDEwMTcxMik7Y29uc3Qgdz0oMCxjLmdldExvZ2dlcikoIlF1b3RlVGlja2VyIiksVD17YWRkRGVzY3JpcHRpb25UaXRsZTohMCxjaGFuZ2VEaXJlY3Rpb25Eb3duQ2xhc3M6ImRvd24iLGNoYW5nZURpcmVjdGlvblVwQ2xhc3M6InVwIixjaGFuZ2VEaXJlY3Rpb25OZXV0cmFsQ2xhc3M6Im5ldXRyYWwiLGNoYW5nZUluQnJhY2tldHM6ITEsY2hhbmdlUGVyY2VudEluQnJhY2tldHM6ITEsbGFzdFByaWNlVGltZUluQnJhY2tldHM6ITAsbGFzdFJlbGVhc2VEYXRlVGltZUluQnJhY2tldHM6ITAscnRjVGltZUluQnJhY2tldHM6ITAsY2xpZW50TmFtZToicXVvdGUtdGlja2VyIixkb250RHllUHJpY2U6ITEsZmFsbGluZ0JnOm51bGwsZ3Jvd2luZ0JnOm51bGwsbGFzdEZhbGxpbmdDbGFzczoiZmFsbGluZyIsbGFzdEdyb3dpbmdDbGFzczoiZ3Jvd2luZyIscXVvdGVTZXNzaW9uOm51bGwsc2lnbk5lZ2F0aXZlOiEwLHNpZ25Qb3NpdGl2ZTohMSxjdXN0b21QcmljZUZvcm1hdHRlcjpudWxsLGN1c3RvbVRpbWVGb3JtYXR0ZXI6bnVsbCxzZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXg6Ii0tZm9yLXRpY2tlciIsZGF0YU1vZGVDbGFzc1N1ZmZpeDoiLS1mb3ItdGlja2VyIixzaG93SW52YWxpZFN5bWJvbFN0YXR1czohMSxpbmRpY2F0b3JzVG9vbHRpcFR5cGU6ImN1c3RvbSIsbGFzdFByaWNlTGFzdENoYXJTdXA6ITEsbGFzdFByaWNlSGlnaGxpZ2h0RGlmZk9ubHk6ITEsaW5pdGVkSG9vazp2b2lkIDAsc2V0U3RhdGVIb29rOnZvaWQgMCxwZXJtaXNzaW9uRGVuaWVkSG9vazp2b2lkIDAsbm9TdWNoU3ltYm9sSG9vazp2b2lkIDB9LFA9L1tLTUJUXS87ZnVuY3Rpb24gayhlLHQscz17fSl7dGhpcy5lbmFibGVkPSEwLHRoaXMuX3N5bWJvbD1lLHRoaXMuX3N5bWJvbE9yaWdpbmFsPW51bGwsdGhpcy5fb3B0aW9ucz0oMCxsLmRlZXBFeHRlbmQpKHt9LFQscyksITEhPT10aGlzLl9vcHRpb25zLnNpZ25OZWdhdGl2ZSYmITAhPT10aGlzLl9vcHRpb25zLnNpZ25OZWdhdGl2ZSYmZGVsZXRlIHRoaXMuX29wdGlvbnMuc2lnbk5lZ2F0aXZlLHMuY3VzdG9tUHJpY2VGb3JtYXR0ZXImJih0aGlzLl9jdXN0b21QcmljZUZvcm1hdHRlcj1zLmN1c3RvbVByaWNlRm9ybWF0dGVyKSxzLmN1c3RvbVRpbWVGb3JtYXR0ZXImJih2b2lkIDAhPT1zLmN1c3RvbVRpbWVGb3JtYXR0ZXIubGFzdFByaWNlfHx2b2lkIDAhPT1zLmN1c3RvbVRpbWVGb3JtYXR0ZXIucnRjP3RoaXMuX3RpbWVGb3JtYXR0ZXI9cy5jdXN0b21UaW1lRm9ybWF0dGVyOnRoaXMuX3RpbWVGb3JtYXR0ZXI9e2xhc3RQcmljZTpzLmN1c3RvbVByaWNlRm9ybWF0dGVyLHJ0YzpzLmN1c3RvbVByaWNlRm9ybWF0dGVyfSksdGhpcy5fcGVyY2VudEZvcm1hdHRlcj1uZXcgZCx0aGlzLl9kZWZhdWx0UHJpY2VGb3JtYXR0ZXI9bmV3IG0uUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6MTAwfSksdGhpcy5fcHJpY2VGb3JtYXR0ZXI9dGhpcy5fY3VzdG9tUHJpY2VGb3JtYXR0ZXJ8fHRoaXMuX2RlZmF1bHRQcmljZUZvcm1hdHRlcix0aGlzLl92b2x1bWVGb3JtYXR0ZXI9bmV3IHAuVm9sdW1lRm9ybWF0dGVyKHtwcmVjaXNpb246Mn0pLHRoaXMuX2NhY2hlPXt9LHRoaXMuX2xhc3RQcmljZT1udWxsLHRoaXMuX2xhc3RQcmljZUZvcm1hdHRlZD0iIix0aGlzLl9sYXN0TWluTW92ZT0wLHRoaXMuX2VsZW1lbnRzPXt9LHRoaXMuX3RleHROb2Rlcz17fSx0aGlzLl9jaGFuZ2VWb2x1bWVMZXR0ZXI9dGhpcy5fZ2V0Q2hhbmdlVm9sdW1lTGV0dGVyQ2FsbGJhY2soKSx0aGlzLl9zZXRFbGVtZW50cyh0KSx0aGlzLl9oaWdobGlnaHRlcnM9e30sdGhpcy5faW5pdEhpZ2hsaWdodGVycygpLHRoaXMuX29wdGlvbnMuc2V0U3RhdGVIb29rJiZ0aGlzLnNldFN0YXRlSG9vayh0aGlzLl9vcHRpb25zLnNldFN0YXRlSG9vayksdGhpcy5xdW90ZVNlc3Npb249dGhpcy5fb3B0aW9ucy5xdW90ZVNlc3Npb258fCgwLEMuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSx0aGlzLl9xdW90ZVNlc3Npb25FdmVudEhhbmRsZXI9dGhpcy5vbkRhdGEuYmluZCh0aGlzKSx0aGlzLl9jb25uZWN0VGltZW91dElkPXNldFRpbWVvdXQodGhpcy5jb25uZWN0LmJpbmQodGhpcyksMCl9ZnVuY3Rpb24gRChlKXtjb25zdCB0PWUuc2VhcmNoKFApLHM9dD49MD9lLnNsaWNlKHQpOiIiO3JldHVyblt0PjA/ZS5zdWJzdHJpbmcodCwwKTowPT09dD8iIjplLHNdfWZ1bmN0aW9uIEYoZSx0LHMsbixvKXt2YXIgaSxyPW51bGw7ZnVuY3Rpb24gYSgpe2lmKGkmJihjbGVhclRpbWVvdXQoaSksaT12b2lkIDApLApzfHx0KWZvcih2YXIgcj0wO3I8ZS5sZW5ndGg7cisrKWVbcl0uc3R5bGUuYmFja2dyb3VuZD0iIjtpZighc3x8IXQpZm9yKHI9MDtyPGUubGVuZ3RoO3IrKyluJiZlW3JdLmNsYXNzTGlzdC5yZW1vdmUobiksbyYmZVtyXS5jbGFzc0xpc3QucmVtb3ZlKG8pfXJldHVybntzaG93OmZ1bmN0aW9uKGwpe3ZhciBjPTA7aWYobCE9PXIpe2lmKG51bGwhPT1yJiZudWxsIT09bCYmKGM9bC1yKSxhKCksaT1zZXRUaW1lb3V0KGEsNzUwKSwwPGMpe2lmKHQpZm9yKHZhciB1PTA7dTxlLmxlbmd0aDt1KyspZVt1XS5zdHlsZS5iYWNrZ3JvdW5kPXQ7ZWxzZSBpZihuKWZvcih1PTA7dTxlLmxlbmd0aDt1KyspZVt1XS5jbGFzc0xpc3QuYWRkKG4pfWVsc2UgaWYoYzwwKWlmKHMpZm9yKHU9MDt1PGUubGVuZ3RoO3UrKyllW3VdLnN0eWxlLmJhY2tncm91bmQ9cztlbHNlIGlmKG8pZm9yKHU9MDt1PGUubGVuZ3RoO3UrKyllW3VdLmNsYXNzTGlzdC5hZGQobyk7bnVsbCE9PWwmJihyPWwpfX0saGlkZTphfX1rLnByb3RvdHlwZS5fc2V0RWxlbWVudHM9ZnVuY3Rpb24oZSl7dGhpcy5fY29udGFpbmVyPWUsdGhpcy5fZWxlbWVudHMuY2hhbmdlPXRoaXMuX2ZpbmRFbGVtZW50cyhlLFsianMtc3ltYm9sLWNoYW5nZSIsInN5bWJvbC1jaGFuZ2UiXSksdGhpcy5fZWxlbWVudHMuY2hhbmdlRGlyZWN0aW9uPXRoaXMuX2ZpbmRFbGVtZW50cyhlLFsianMtc3ltYm9sLWNoYW5nZS1kaXJlY3Rpb24iLCJzeW1ib2wtY2hhbmdlLWRpcmVjdGlvbiJdKSx0aGlzLl9lbGVtZW50cy5leHRIcnNDaGFuZ2VEaXJlY3Rpb249dGhpcy5fZmluZEVsZW1lbnRzKGUsWyJqcy1zeW1ib2wtZXh0LWhycy1jaGFuZ2UtZGlyZWN0aW9uIl0pLHRoaXMuX2VsZW1lbnRzLmNoYW5nZVBlcmNlbnQ9dGhpcy5fZmluZEVsZW1lbnRzKGUsWyJqcy1zeW1ib2wtY2hhbmdlLXB0Iiwic3ltYm9sLWNoYW5nZS1wdCJdKSx0aGlzLl9lbGVtZW50cy5kZXNjcmlwdGlvbj10aGlzLl9maW5kRWxlbWVudHMoZSxbImpzLXN5bWJvbC1kZXNjcmlwdGlvbi1uYW1lIiwic3ltYm9sLWRlc2NyaXB0aW9uLW5hbWUiXSksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlPXRoaXMuX2ZpbmRFbGVtZW50cyhlLCJqcy1zeW1ib2wtZXh0LWhycy1jaGFuZ2UiKSx0aGlzLl9lbGVtZW50cy5leHRIcnNDaGFuZ2VQZXJjZW50PXRoaXMuX2ZpbmRFbGVtZW50cyhlLCJqcy1zeW1ib2wtZXh0LWhycy1jaGFuZ2UtcHQiKSx0aGlzLl9lbGVtZW50cy5leHRIcnNDbG9zZT10aGlzLl9maW5kRWxlbWVudHMoZSwianMtc3ltYm9sLWV4dC1ocnMtY2xvc2UiKSx0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZURpcmVjdGlvbj10aGlzLl9maW5kRWxlbWVudHMoZSxbImpzLXN5bWJvbC1uaWdodC1jaGFuZ2UtZGlyZWN0aW9uIl0pLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlPXRoaXMuX2ZpbmRFbGVtZW50cyhlLCJqcy1zeW1ib2wtbmlnaHQtY2hhbmdlIiksdGhpcy5fZWxlbWVudHMubmlnaHRDaGFuZ2VQZXJjZW50PXRoaXMuX2ZpbmRFbGVtZW50cyhlLCJqcy1zeW1ib2wtbmlnaHQtY2hhbmdlLXB0IiksdGhpcy5fZWxlbWVudHMubmlnaHRDbG9zZT10aGlzLl9maW5kRWxlbWVudHMoZSwianMtc3ltYm9sLW5pZ2h0LWNsb3NlIiksdGhpcy5fZWxlbWVudHMuaW5kdXN0cnk9dGhpcy5fZmluZEVsZW1lbnRzKGUsWyJqcy1zeW1ib2wtaW5kdXN0cnkiLCJzeW1ib2wtaW5kdXN0cnkiXSksdGhpcy5fZWxlbWVudHMubGFzdD10aGlzLl9maW5kRWxlbWVudHMoZSxbImpzLXN5bWJvbC1sYXN0Iiwic3ltYm9sLWxhc3QiXSksdGhpcy5fZWxlbWVudHMuc2VjdG9yPXRoaXMuX2ZpbmRFbGVtZW50cyhlLFsianMtc3ltYm9sLXNlY3RvciIsInN5bWJvbC1zZWN0b3IiXSksdGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cz10aGlzLl9maW5kRWxlbWVudHMoZSwianMtc3ltYm9sLXNlc3Npb24tc3RhdHVzIiksdGhpcy5fZWxlbWVudHMuc2hvcnROYW1lPXRoaXMuX2ZpbmRFbGVtZW50cyhlLFsianMtc3ltYm9sLXNob3J0LW5hbWUiLCJzeW1ib2wtc2hvcnQtbmFtZSJdKSx0aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlPXRoaXMuX2ZpbmRFbGVtZW50cyhlLCJqcy1kYXRhLW1vZGUiKSx0aGlzLl9lbGVtZW50cy5sYXN0UGVyaW9kPXRoaXMuX2ZpbmRFbGVtZW50cyhlLCJqcy1zeW1ib2wtbGFzdC1wZXJpb2QiKSx0aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlLmZvckVhY2goKGU9PmUuY2xhc3NMaXN0LmFkZCgiaS1oaWRkZW4iKSkpLHRoaXMuX3RleHROb2Rlcy5jaGFuZ2U9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMuY2hhbmdlKSx0aGlzLl90ZXh0Tm9kZXMuY2hhbmdlUGVyY2VudD10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5jaGFuZ2VQZXJjZW50KSx0aGlzLl90ZXh0Tm9kZXMuZXh0SHJzQ2hhbmdlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZSksdGhpcy5fdGV4dE5vZGVzLmV4dEhyc0NoYW5nZVBlcmNlbnQ9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlUGVyY2VudCksdGhpcy5fdGV4dE5vZGVzLmV4dEhyc0Nsb3NlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0Nsb3NlKSx0aGlzLl90ZXh0Tm9kZXMubmlnaHRDaGFuZ2U9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubmlnaHRDaGFuZ2UpLHRoaXMuX3RleHROb2Rlcy5uaWdodENoYW5nZVBlcmNlbnQ9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubmlnaHRDaGFuZ2VQZXJjZW50KSx0aGlzLl90ZXh0Tm9kZXMubmlnaHRDbG9zZT10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5uaWdodENsb3NlKSx0aGlzLl90ZXh0Tm9kZXMubGFzdD10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5sYXN0KSx0aGlzLl90ZXh0Tm9kZXMub3Blbj10aGlzLl9maW5kVGV4dE5vZGVzKGUsImpzLXN5bWJvbC1vcGVuIiksCnRoaXMuX3RleHROb2Rlcy5lcHM9dGhpcy5fZmluZFRleHROb2RlcyhlLCJqcy1zeW1ib2wtZXBzIiksdGhpcy5fdGV4dE5vZGVzLm1hcmtldENhcD10aGlzLl9maW5kVGV4dE5vZGVzKGUsImpzLXN5bWJvbC1tYXJrZXQtY2FwIiksdGhpcy5fdGV4dE5vZGVzLnByZXZDbG9zZT10aGlzLl9maW5kVGV4dE5vZGVzKGUsImpzLXN5bWJvbC1wcmV2LWNsb3NlIiksdGhpcy5fdGV4dE5vZGVzLmRpdmlkZW5kcz10aGlzLl9maW5kVGV4dE5vZGVzKGUsImpzLXN5bWJvbC1kaXZpZGVuZHMiKSx0aGlzLl90ZXh0Tm9kZXMucHJpY2VFYXJuaW5ncz10aGlzLl9maW5kVGV4dE5vZGVzKGUsImpzLXN5bWJvbC1wZSIpLHRoaXMuX3RleHROb2Rlcy52b2x1bWU9dGhpcy5fZmluZFRleHROb2RlcyhlLCJqcy1zeW1ib2wtdm9sdW1lIiksdGhpcy5fdGV4dE5vZGVzLmhpZ2g9dGhpcy5fZmluZFRleHROb2RlcyhlLCJqcy1zeW1ib2wtaGlnaCIpLHRoaXMuX3RleHROb2Rlcy5sb3c9dGhpcy5fZmluZFRleHROb2RlcyhlLCJqcy1zeW1ib2wtbG93IiksdGhpcy5fdGV4dE5vZGVzLmN1cnJlbmN5PXRoaXMuX2ZpbmRUZXh0Tm9kZXMoZSwianMtc3ltYm9sLWN1cnJlbmN5IiksdGhpcy5fdGV4dE5vZGVzLmxhc3RQcmljZVRpbWU9dGhpcy5fZmluZFRleHROb2RlcyhlLCJqcy1zeW1ib2wtbHAtdGltZSIpLHRoaXMuX3RleHROb2Rlcy5sYXN0UmVsZWFzZURhdGU9dGhpcy5fZmluZFRleHROb2RlcyhlLCJqcy1zeW1ib2wtbGFzdC1yZWxlYXNlLWRhdGUiKSx0aGlzLl90ZXh0Tm9kZXMucnRjVGltZT10aGlzLl9maW5kVGV4dE5vZGVzKGUsImpzLXN5bWJvbC1ydGMtdGltZSIpLHRoaXMuX3RleHROb2Rlcy5udGNUaW1lPXRoaXMuX2ZpbmRUZXh0Tm9kZXMoZSwianMtc3ltYm9sLW50Yy10aW1lIiksdGhpcy5fZWxlbWVudHMubGFzdEhpZ2hsaWdodD10aGlzLl9vcHRpb25zLmxhc3RQcmljZUhpZ2hsaWdodERpZmZPbmx5P3RoaXMuX2VsZW1lbnRzLmxhc3QubWFwKChlPT50aGlzLl9hcHBlbmRBbmRHZXROZXdFbGVtZW50KGUsInNwYW4iKSkpOnRoaXMuX2VsZW1lbnRzLmxhc3QsdGhpcy5fdGV4dE5vZGVzLmxhc3RIaWdobGlnaHQ9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubGFzdEhpZ2hsaWdodCksdGhpcy5fZWxlbWVudHMubGFzdFN1cD10aGlzLl9vcHRpb25zLmxhc3RQcmljZUxhc3RDaGFyU3VwP3RoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQubWFwKChlPT50aGlzLl9hcHBlbmRBbmRHZXROZXdFbGVtZW50KGUsInN1cCIpKSk6W10sdGhpcy5fdGV4dE5vZGVzLmxhc3RTdXA9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubGFzdFN1cCl9LGsucHJvdG90eXBlLl9maW5kRWxlbWVudHM9ZnVuY3Rpb24oZSx0KXt2YXIgcz0oMCx1LmlzQXJyYXkpKHQpP3Q6W3RdO3JldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLHMubWFwKCh0PT5BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChlLmdldEVsZW1lbnRzQnlDbGFzc05hbWUodCkpKSkpfSxrLnByb3RvdHlwZS5fZmluZFRleHROb2Rlcz1mdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9maW5kRWxlbWVudHMoZSx0KSl9LGsucHJvdG90eXBlLl9nZXRPckNyZWF0ZVRleHROb2Rlcz1mdW5jdGlvbihlKXtyZXR1cm4gZS5tYXAoKGU9Pnt2YXIgdD10aGlzLl9nZXRGaXJzdFRleHROb2RlKGUpO3JldHVybiB0fHwodD1lLm93bmVyRG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpLGUuYXBwZW5kQ2hpbGQodCkpLHR9KSl9LGsucHJvdG90eXBlLl9hcHBlbmRBbmRHZXROZXdFbGVtZW50PWZ1bmN0aW9uKGUsdCl7Y29uc3Qgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KHQpO3JldHVybiBlLmFwcGVuZENoaWxkKHMpLHN9LGsucHJvdG90eXBlLl9nZXRGaXJzdFRleHROb2RlPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1lLmNoaWxkTm9kZXMscz10Lmxlbmd0aC0xO3M+PTA7cy0tKWlmKDM9PT10Lml0ZW0ocykubm9kZVR5cGUpcmV0dXJuIHQuaXRlbShzKTtyZXR1cm4gbnVsbH0say5wcm90b3R5cGUuY29ubmVjdD1mdW5jdGlvbihlKXt0aGlzLl9zdWJzY3JpYmVkfHwodGhpcy5fc3Vic2NyaWJlZFN5bWJvbD1lfHx0aGlzLl9zeW1ib2wsdGhpcy5xdW90ZVNlc3Npb24uc3Vic2NyaWJlKHRoaXMuX29wdGlvbnMuY2xpZW50TmFtZSx0aGlzLl9zdWJzY3JpYmVkU3ltYm9sLHRoaXMuX3F1b3RlU2Vzc2lvbkV2ZW50SGFuZGxlciksdGhpcy5fc3Vic2NyaWJlZD0hMCl9LGsucHJvdG90eXBlLmRpc2Nvbm5lY3Q9ZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQodGhpcy5fY29ubmVjdFRpbWVvdXRJZCksdGhpcy5fc3Vic2NyaWJlZCYmKHRoaXMucXVvdGVTZXNzaW9uLnVuc3Vic2NyaWJlKHRoaXMuX29wdGlvbnMuY2xpZW50TmFtZSx0aGlzLl9zdWJzY3JpYmVkU3ltYm9sLHRoaXMuX3F1b3RlU2Vzc2lvbkV2ZW50SGFuZGxlciksdGhpcy5fc3Vic2NyaWJlZD0hMSl9LGsucHJvdG90eXBlLm9uRGF0YT1mdW5jdGlvbihlLHQpe3RoaXMuZW5hYmxlZCYmKCJvayI9PT1lLnN0YXR1cz90aGlzLnN1Y2Nlc3NEYXRhKGUsdCk6InBlcm1pc3Npb25fZGVuaWVkIj09PWUuc3RhdHVzP3RoaXMub25QZXJtaXNzaW9uRGVuaWVkKGUpOiJlcnJvciI9PT1lLnN0YXR1cyYmdGhpcy5lcnJvckRhdGEoZSkpfSxrLnByb3RvdHlwZS5zdWNjZXNzRGF0YT1mdW5jdGlvbihlLHQpe2UudmFsdWVzJiZ0aGlzLnNldFN0YXRlKGUudmFsdWVzLGUsdCl9LGsucHJvdG90eXBlLm9uUGVybWlzc2lvbkRlbmllZD1mdW5jdGlvbihlKXsoMCxTLmlzU2ZRdW90ZURhdGEpKGUpfHwoMCxFLmlzTWN4UXVvdGVEYXRhKShlKT90aGlzLl9vcHRpb25zLnBlcm1pc3Npb25EZW5pZWRIb29rP3RoaXMuX29wdGlvbnMucGVybWlzc2lvbkRlbmllZEhvb2soZSx0aGlzLl9zeW1ib2xPcmlnaW5hbHx8dGhpcy5fc3ltYm9sKTp0aGlzLmVycm9yRGF0YShlKTp0aGlzLmRvd25ncmFkZURhdGEoZSl9LGsucHJvdG90eXBlLmVycm9yRGF0YT1mdW5jdGlvbihlKXsKdGhpcy5fb3B0aW9ucy5zaG93SW52YWxpZFN5bWJvbFN0YXR1cyYmKHRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbCksdGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cy5tYXAoKGU9Pm5ldyBfLk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXgsZWw6ZSxkYXRhOnt2YWx1ZXM6e2N1cnJlbnRfc2Vzc2lvbjoiaW52YWxpZCJ9fSx0b29sdGlwVHlwZTp0aGlzLl9vcHRpb25zLmluZGljYXRvcnNUb29sdGlwVHlwZX0pKSkpLHRoaXMuX29wdGlvbnMubm9TdWNoU3ltYm9sSG9vaz8odGhpcy5fc3ltYm9sT3JpZ2luYWwmJnRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbE9yaWdpbmFsKSx0aGlzLl9vcHRpb25zLm5vU3VjaFN5bWJvbEhvb2suY2FsbCh0aGlzLGUsdGhpcy5fc3ltYm9sT3JpZ2luYWx8fHRoaXMuX3N5bWJvbCkpOncubG9nV2FybigiTm8gZGF0YSBmb3I6ICIrdGhpcy5fc3ltYm9sKX0say5wcm90b3R5cGUuZG93bmdyYWRlRGF0YT1mdW5jdGlvbihlKXt7Y29uc3QgdD1lJiZlLnZhbHVlcyYmZS52YWx1ZXMuYWx0ZXJuYXRpdmUscz10aGlzLl9zeW1ib2w9PT10O2lmKCEodCYmLTEhPT10LmluZGV4T2YoIjoiKSl8fHMpcmV0dXJuIHZvaWQgdGhpcy5lcnJvckRhdGEoZSk7dGhpcy5fc3ltYm9sT3JpZ2luYWw9dGhpcy5fc3ltYm9sLHRoaXMuX3N5bWJvbD10LHRoaXMuX3N1YnNjcmliZWQ9ITEsdGhpcy5jb25uZWN0KCl9fSxrLnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihlLHQsbil7Y29uc3Qgbz1uLnZhbHVlczt0aGlzLl9pc1ZvbHVtZUZvcm1hdD0idm9sdW1lIj09PWUuZm9ybWF0LG51bGw9PW8ucHJpY2VzY2FsZSYmbnVsbD09by5taW5tb3YmJm51bGw9PW8uZnJhY3Rpb25hbCYmbnVsbD09by5taW5tb3ZlMnx8KHRoaXMuX3ByaWNlRm9ybWF0dGVyPXRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyfHx0aGlzLl9pc1ZvbHVtZUZvcm1hdCYmdGhpcy5fdm9sdW1lRm9ybWF0dGVyfHxuZXcgbS5QcmljZUZvcm1hdHRlcih7cHJpY2VTY2FsZTplLnByaWNlc2NhbGV8fDEwMCxtaW5Nb3ZlOmUubWlubW92fHwxLGZyYWN0aW9uYWw6ZS5mcmFjdGlvbmFsLG1pbk1vdmUyOmUubWlubW92ZTJ9KSk7Y29uc3QgaT10aGlzLl9vcHRpb25zLHI9dGhpcy5fcGVyY2VudEZvcm1hdHRlcixhPXRoaXMuX3ByaWNlRm9ybWF0dGVyLGw9dGhpcy5fZGVmYXVsdFByaWNlRm9ybWF0dGVyLGM9dGhpcy5fdm9sdW1lRm9ybWF0dGVyLHU9KGUsdD0hMCk9PnQ/YCgke2V9KWA6ZSxoPXZvaWQgMCE9PWkuc2lnblBvc2l0aXZlQ2hhbmdlP2kuc2lnblBvc2l0aXZlQ2hhbmdlOmkuc2lnblBvc2l0aXZlLGQ9ZT0+KDAsTi5xdW90ZVRpY2tlckZvcm1hdENoYW5nZSkoZSxvLGkpLGY9ZT0+e2NvbnN0IHQ9ci5mb3JtYXQoZSx7c2lnblBvc2l0aXZlOmgsc2lnbk5lZ2F0aXZlOmkuc2lnbk5lZ2F0aXZlfSk7cmV0dXJuIHUodCxpLmNoYW5nZVBlcmNlbnRJbkJyYWNrZXRzKX0sYj1hLmZvcm1hdC5iaW5kKGEpLEM9bC5mb3JtYXQuYmluZChsKSxFPWMuZm9ybWF0LmJpbmQoYyksUz1lPT5udWxsPT1lP3AuUExBQ0VfSE9MREVSOkMoZSk7aS5kaXNhYmxlQ2hhbmdlfHwodGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuY2hhbmdlLG8uY2hhbmdlLGQpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmNoYW5nZVBlcmNlbnQsby5jaGFuZ2VfcGVyY2VudCxmKSxudWxsIT1vLmNoYW5nZSYmKGkuZG9udER5ZVByaWNlfHx0aGlzLl9zZXRDaGFuZ2VGb250Q29sb3IoW10uY29uY2F0KHRoaXMuX2VsZW1lbnRzLmNoYW5nZSx0aGlzLl9lbGVtZW50cy5jaGFuZ2VQZXJjZW50KSxvLmNoYW5nZSxpLmNoYW5nZVVwRm9udENvbG9yLGkuY2hhbmdlRG93bkZvbnRDb2xvcixpLmNoYW5nZU5ldXRyYWxGb250Q29sb3IpLHRoaXMuX3NldENoYW5nZURpcmVjdGlvbih0aGlzLl9lbGVtZW50cy5jaGFuZ2VEaXJlY3Rpb24sby5jaGFuZ2UpKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5leHRIcnNDaGFuZ2Usby5yY2gsZCksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZXh0SHJzQ2hhbmdlUGVyY2VudCxvLnJjaHAsZiksbnVsbCE9by5yY2gmJihpLmRvbnREeWVQcmljZXx8dGhpcy5fc2V0Q2hhbmdlRm9udENvbG9yKFtdLmNvbmNhdCh0aGlzLl9lbGVtZW50cy5leHRIcnNDaGFuZ2UsdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlUGVyY2VudCksby5yY2gsaS5jaGFuZ2VVcEZvbnRDb2xvcixpLmNoYW5nZURvd25Gb250Q29sb3IsaS5jaGFuZ2VOZXV0cmFsRm9udENvbG9yKSx0aGlzLl9zZXRDaGFuZ2VEaXJlY3Rpb24odGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlRGlyZWN0aW9uLG8ucmNoKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubmlnaHRDaGFuZ2Usby5uY2gsZCksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubmlnaHRDaGFuZ2VQZXJjZW50LG8ubmNocCxmKSxudWxsIT1vLm5jaCYmKGkuZG9udER5ZVByaWNlfHx0aGlzLl9zZXRDaGFuZ2VGb250Q29sb3IoW10uY29uY2F0KHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlUGVyY2VudCksby5uY2gsaS5jaGFuZ2VVcEZvbnRDb2xvcixpLmNoYW5nZURvd25Gb250Q29sb3IsaS5jaGFuZ2VOZXV0cmFsRm9udENvbG9yKSx0aGlzLl9zZXRDaGFuZ2VEaXJlY3Rpb24odGhpcy5fZWxlbWVudHMubmlnaHRDaGFuZ2VEaXJlY3Rpb24sby5uY2gpKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMucHJldkNsb3NlLG8ucHJldl9jbG9zZV9wcmljZSxiKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5kaXZpZGVuZHMsZS5kaXZpZGVuZHNfeWllbGQsKGU9Pm51bGw9PWU/cC5QTEFDRV9IT0xERVI6ci5mb3JtYXQoZSx7c2lnblBvc2l0aXZlOmkuc2lnblBvc2l0aXZlLHNpZ25OZWdhdGl2ZTppLnNpZ25OZWdhdGl2ZX0pKSwhMCk7bGV0IFQ9KDAseS5nZXRUcmFuc2xhdGVkU3ltYm9sRGVzY3JpcHRpb24pKG8pCjtpZihUJiYoVD10aGlzLl9wcmVwYXJlU3ltYm9sRGVzY3JpcHRpb24oVCksdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uLFQpLHRoaXMuX29wdGlvbnMuYWRkRGVzY3JpcHRpb25UaXRsZSkpZm9yKHZhciBQPTA7UDx0aGlzLl9lbGVtZW50cy5kZXNjcmlwdGlvbi5sZW5ndGg7UCsrKXRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uW1BdLnNldEF0dHJpYnV0ZSgidGl0bGUiLFQpO2lmKChudWxsIT1vLnNob3J0X25hbWV8fG51bGwhPW8uZXhjaGFuZ2UpJiZlLnNob3J0X25hbWUpe3ZhciBrPWUuc2hvcnRfbmFtZTsiUVVBTkRMIj09PWUuZXhjaGFuZ2UmJnZvaWQgMCE9PWUuc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzFdJiYoaz1lLnNob3J0X25hbWUuc3BsaXQoIi8iKVsxXSsiLCAiK2Uuc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzBdKSx0aGlzLnNldFNob3J0TmFtZShrKX1lWyJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiXSYmdGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZC5sZW5ndGgmJlByb21pc2UuYWxsKFtzLmUoMjM1NjcpLHMuZSg3Mzk3KV0pLnRoZW4ocy5iaW5kKHMsMjE1NTc5KSkudGhlbigodD0+e3RoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5sYXN0UGVyaW9kLHQucGVyaW9kRm9ybWF0dGVyKGVbInJlZmVyZW5jZS1sYXN0LXBlcmlvZCJdKSl9KSksdGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZC5sZW5ndGgmJnZvaWQgMD09PWVbInJlZmVyZW5jZS1sYXN0LXBlcmlvZCJdJiZ0aGlzLl9zZXRUZXh0c0NvbnRlbnQodGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZCwi4oCUIiksdGhpcy5fc2V0TGFzdFZhbHVlKG8ubGFzdF9wcmljZSxvLm1pbm1vdmUyLGIpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmV4dEhyc0Nsb3NlLG8ucnRjLGIpLG8ucnRjJiZ0aGlzLl9oaWdobGlnaHRlcnMuZXh0SHJzQ2xvc2Uuc2hvdyhvLnJ0YyksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubmlnaHRDbG9zZSxvLm50YyxiKSxvLm50YyYmdGhpcy5faGlnaGxpZ2h0ZXJzLm5pZ2h0Q2xvc2Uuc2hvdyhvLm50Yyksby5pbmR1c3RyeSYmdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmluZHVzdHJ5LGUuaW5kdXN0cnksKGU9PmUpKSxvLnNlY3RvciYmdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLnNlY3RvcixlLnNlY3RvciksdGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cyYmby5jdXJyZW50X3Nlc3Npb24mJih0aGlzLl9zZXNzaW9uU3RhdHVzSW5zdGFuY2VzP3RoaXMuX3Nlc3Npb25TdGF0dXNJbnN0YW5jZXMuZm9yRWFjaCgoZT0+ZS5zZXRTdGF0dXMoby5jdXJyZW50X3Nlc3Npb24pKSk6dGhpcy5fc2Vzc2lvblN0YXR1c0luc3RhbmNlcz10aGlzLl9lbGVtZW50cy5zZXNzaW9uU3RhdHVzLm1hcCgodD0+bmV3IF8uTWFya2V0U3RhdHVzSW5kaWNhdG9yKHtjbGFzc1N1ZmZpeDp0aGlzLl9vcHRpb25zLnNlc3Npb25TdGF0dXNDbGFzc1N1ZmZpeCxlbDp0LHNob3J0OiEwLGRhdGE6e3ZhbHVlczpvfSxxdW90ZVNlc3Npb246dGhpcy5xdW90ZVNlc3Npb24sc3ltYm9sOmUub3JpZ2luYWxfbmFtZSxtYW51YWxVcGRhdGU6ITAsdG9vbHRpcFR5cGU6dGhpcy5fb3B0aW9ucy5pbmRpY2F0b3JzVG9vbHRpcFR5cGUsc2Vzc2lvblN0YXR1c0ljb246dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzSWNvbn0pKSkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm9wZW4sby5vcGVuX3ByaWNlLGIpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmhpZ2gsby5oaWdoX3ByaWNlLGIpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmxvdyxvLmxvd19wcmljZSxiKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5lcHMsZS5lYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtLFMsITApLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLnByaWNlRWFybmluZ3MsZS5wcmljZV9lYXJuaW5nc190dG0sUywhMCksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubWFya2V0Q2FwLGUubWFya2V0X2NhcF9iYXNpYyxFLCEwKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy52b2x1bWUsZS52b2x1bWUsRSwhMCk7Y29uc3QgRD12KG8pO2lmKEQmJnRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmN1cnJlbmN5LEQseC5xdW90ZVRpY2tlckZvcm1hdEN1cnJlbmN5LCEwKSwoby5scF90aW1lfHxlLmxwX3RpbWUpJiZ0aGlzLl90ZXh0Tm9kZXMubGFzdFByaWNlVGltZS5sZW5ndGgmJih0aGlzLl90aW1lRm9ybWF0dGVyJiZ0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RQcmljZT90aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sYXN0UHJpY2VUaW1lLHUodGhpcy5fdGltZUZvcm1hdHRlci5sYXN0UHJpY2UoZS5scF90aW1lLGUuY3VycmVudF9zZXNzaW9uKSx0aGlzLl9vcHRpb25zLmxhc3RQcmljZVRpbWVJbkJyYWNrZXRzKSk6dy5sb2dFcnJvcigibGFzdCBwcmljZSB0aW1lIGZpZWxkIHJlcXVlc3RlZCB3aXRoIG5vIGZvcm1hdHRlciBwcm92aWRlZCIpKSwoby5sYXN0X3JlbGVhc2VfZGF0ZXx8ZS5sYXN0X3JlbGVhc2VfZGF0ZSkmJnRoaXMuX3RleHROb2Rlcy5sYXN0UmVsZWFzZURhdGUubGVuZ3RoJiYodGhpcy5fdGltZUZvcm1hdHRlciYmdGhpcy5fdGltZUZvcm1hdHRlci5sYXN0UmVsZWFzZURhdGU/dGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdFJlbGVhc2VEYXRlLHUodGhpcy5fdGltZUZvcm1hdHRlci5sYXN0UmVsZWFzZURhdGUoZS5sYXN0X3JlbGVhc2VfZGF0ZSxlLmN1cnJlbnRfc2Vzc2lvbiksdGhpcy5fb3B0aW9ucy5sYXN0UmVsZWFzZURhdGVUaW1lSW5CcmFja2V0cykpOncubG9nRXJyb3IoImxhc3RSZWxlYXNlRGF0ZSB0aW1lIGZpZWxkIHJlcXVlc3RlZCB3aXRoIG5vIGZvcm1hdHRlciBwcm92aWRlZCIpKSwKKG8ucnRjX3RpbWV8fGUucnRjX3RpbWUpJiZ0aGlzLl90ZXh0Tm9kZXMucnRjVGltZS5sZW5ndGgmJih0aGlzLl90aW1lRm9ybWF0dGVyJiZ0aGlzLl90aW1lRm9ybWF0dGVyLnJ0Yz90aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5ydGNUaW1lLHUodGhpcy5fdGltZUZvcm1hdHRlci5ydGMoZS5ydGNfdGltZSxlLmN1cnJlbnRfc2Vzc2lvbiksdGhpcy5fb3B0aW9ucy5ydGNUaW1lSW5CcmFja2V0cykpOncubG9nRXJyb3IoInJ0YyB0aW1lIGZpZWxkIHJlcXVlc3RlZCB3aXRoIG5vIGZvcm1hdHRlciBwcm92aWRlZCIpKSwoby5udGNfdGltZXx8ZS5udGNfdGltZSkmJnRoaXMuX3RleHROb2Rlcy5udGNUaW1lLmxlbmd0aCYmKHRoaXMuX3RpbWVGb3JtYXR0ZXImJnRoaXMuX3RpbWVGb3JtYXR0ZXIucnRjP3RoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm50Y1RpbWUsdSh0aGlzLl90aW1lRm9ybWF0dGVyLnJ0YyhlLm50Y190aW1lLGUuY3VycmVudF9zZXNzaW9uKSx0aGlzLl9vcHRpb25zLnJ0Y1RpbWVJbkJyYWNrZXRzKSk6dy5sb2dFcnJvcigibnRjIHRpbWUgZmllbGQgcmVxdWVzdGVkIHdpdGggbm8gZm9ybWF0dGVyIHByb3ZpZGVkIikpLG51bGwhPW8ubGFzdF9wcmljZSlmb3IoUD0wO1A8dGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZS5sZW5ndGg7UCsrKXRoaXMuX2VsZW1lbnRzLnVwZGF0ZU1vZGVbUF0uY2xhc3NMaXN0LnJlbW92ZSgiaS1oaWRkZW4iKTt0aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlJiYoby51cGRhdGVfbW9kZXx8by51cGRhdGVfbW9kZV9zZWNvbmRzKSYmKHRoaXMuX3VwZGF0ZU1vZGVJbnN0YW5jZXM/dGhpcy5fdXBkYXRlTW9kZUluc3RhbmNlcy5mb3JFYWNoKCh0PT50LnVwZGF0ZSh7dmFsdWVzOmV9KSkpOnRoaXMuX3VwZGF0ZU1vZGVJbnN0YW5jZXM9dGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZS5tYXAoKHQ9Pm5ldyBnLkRhdGFNb2RlSW5kaWNhdG9yKHtjbGFzc1N1ZmZpeDp0aGlzLl9vcHRpb25zLmRhdGFNb2RlQ2xhc3NTdWZmaXgsZWw6dCxkYXRhOnt2YWx1ZXM6ZX0sbW9kZUludGVydmFsOmUudXBkYXRlX21vZGVfc2Vjb25kcyxzaG9ydDohMCx0b29sdGlwVHlwZTp0aGlzLl9vcHRpb25zLmluZGljYXRvcnNUb29sdGlwVHlwZX0pKSkpLHRoaXMuX3NldFN0YXRlSG9vayYmdGhpcy5fc2V0U3RhdGVIb29rKHQudmFsdWVzLG4udmFsdWVzLHQuY29tcGxldGUsdGhpcy5nZXRPcHRpb25zKCkpLHRoaXMuX2xhc3RQcmljZT90aGlzLl9oaWdobGlnaHRlcnMubGFzdC5zaG93KGUubGFzdF9wcmljZSk6bnVsbD09PXRoaXMuX2xhc3RQcmljZSYmKHRoaXMuX2NvbnRhaW5lci5jbGFzc0xpc3QuYWRkKCJxdW90ZS10aWNrZXItaW5pdGVkIiksImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuX29wdGlvbnMuaW5pdGVkSG9vayYmdGhpcy5fb3B0aW9ucy5pbml0ZWRIb29rKCJsYXN0X3ByaWNlImluIGUpKSx0aGlzLl9sYXN0UHJpY2U9ZS5sYXN0X3ByaWNlfSxrLnByb3RvdHlwZS5fc2V0Tm9kZXNWYWx1ZT1mdW5jdGlvbihlLHQscyxuKXtpZihudWxsIT10fHxuKWZvcih2YXIgbz0iZnVuY3Rpb24iPT10eXBlb2Ygcz9zKHQpOnQsaT0wO2k8ZS5sZW5ndGg7aSsrKWVbaV0ubm9kZVZhbHVlPW99LGsucHJvdG90eXBlLl9zZXRUZXh0c0NvbnRlbnQ9ZnVuY3Rpb24oZSx0LHMpe2lmKGUmJmUubGVuZ3RoJiZ0KWZvcih2YXIgbj0iZnVuY3Rpb24iPT10eXBlb2Ygcz9zKHQpOnQsbz0wO288ZS5sZW5ndGg7bysrKWVbb10udGV4dENvbnRlbnQ9bn0say5wcm90b3R5cGUuX3NldExhc3RWYWx1ZT1mdW5jdGlvbihlLHQscyl7aWYobnVsbD09ZSlyZXR1cm47Y29uc3Qgbj0iZnVuY3Rpb24iPT10eXBlb2Ygcz9zKGUpOlN0cmluZyhlKTtpZihuPT09dGhpcy5fbGFzdFByaWNlRm9ybWF0dGVkKXJldHVybjtjb25zdFtvLGkscl09dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VIaWdobGlnaHREaWZmT25seT90aGlzLl9nZXRMYXN0VmFsdWVTdHJpbmdEaWZmKHRoaXMuX2xhc3RQcmljZUZvcm1hdHRlZCxuKTpbIiIsbiwiIl0sYT1vLGw9dGhpcy5fY2FsY3VsYXRlUGlwZXR0ZURpZ2l0cyh0KSxbYyx1XT10aGlzLl9vcHRpb25zLmxhc3RQcmljZUxhc3RDaGFyU3VwJiZsP1tpLnNsaWNlKDAsLWwpLGkuc2xpY2UoLWwpXTpbaSwiIl07dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VIaWdobGlnaHREaWZmT25seSYmKHRoaXMuX2lzVm9sdW1lRm9ybWF0JiZ0aGlzLl9jaGFuZ2VWb2x1bWVMZXR0ZXIuY2FsbCh0aGlzLHIpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmxhc3QsYSkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmxhc3RIaWdobGlnaHQsYyksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdFN1cCx1KSx0aGlzLl9sYXN0UHJpY2VGb3JtYXR0ZWQ9bn0say5wcm90b3R5cGUuX2dldENoYW5nZVZvbHVtZUxldHRlckNhbGxiYWNrPWZ1bmN0aW9uKCl7bGV0IGU7cmV0dXJuIGZ1bmN0aW9uKHQpe3QhPT1lJiYoZT10LHRoaXMuX2VsZW1lbnRzLmxhc3QuZm9yRWFjaCgodD0+ezMhPT10LmNoaWxkTm9kZXMubGVuZ3RoP3QuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoZSkpOnQuY2hpbGROb2Rlc1syXS5ub2RlVmFsdWU9ZX0pKSl9fSxrLnByb3RvdHlwZS5fZ2V0TGFzdFZhbHVlU3RyaW5nRGlmZj1mdW5jdGlvbihlLHQpe2lmKGU9PT10KXtjb25zdFtlLHNdPUQodCk7cmV0dXJuW2UsIiIsc119bGV0IHM9MDtmb3IoO2Vbc109PT10W3NdOylzKys7Y29uc3RbbixvXT1EKHQuc2xpY2UocykpO3JldHVyblt0LnNsaWNlKDAscyksbixvXX0say5wcm90b3R5cGUuX2NhbGN1bGF0ZVBpcGV0dGVEaWdpdHM9ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJmUhPT10aGlzLl9sYXN0TWluTW92ZSYmKHRoaXMuX2xhc3RNaW5Nb3ZlPWUpLHRoaXMuX2xhc3RNaW5Nb3ZlPygiIit0aGlzLl9sYXN0TWluTW92ZSkubGVuZ3RoLTE6MH0say5wcm90b3R5cGUuX3NldENoYW5nZUZvbnRDb2xvcj1mdW5jdGlvbihlLHQscyxuLG8pe2Zvcih2YXIgaT1mLlByaWNlQ29sb3Jlci5mb3JtYXRTaWduKHQse3VwOnMsZG93bjpuLApuZXV0cmFsOm99KSxyPTA7cjxlLmxlbmd0aDtyKyspZVtyXS5zdHlsZS5jb2xvcj1pfSxrLnByb3RvdHlwZS5fc2V0Q2hhbmdlRGlyZWN0aW9uPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBzPTA7czxlLmxlbmd0aDtzKyspe3ZhciBuPWVbc10uY2xhc3NMaXN0O24udG9nZ2xlKHRoaXMuX29wdGlvbnMuY2hhbmdlRGlyZWN0aW9uVXBDbGFzcyx0PjApLG4udG9nZ2xlKHRoaXMuX29wdGlvbnMuY2hhbmdlRGlyZWN0aW9uRG93bkNsYXNzLHQ8MCksbi50b2dnbGUodGhpcy5fb3B0aW9ucy5jaGFuZ2VEaXJlY3Rpb25OZXV0cmFsQ2xhc3MsMD09PXQpfX0say5wcm90b3R5cGUuc2V0U2hvcnROYW1lPWZ1bmN0aW9uKGU9IiIpe3RoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5zaG9ydE5hbWUsZSl9LGsucHJvdG90eXBlLl9wcmVwYXJlU3ltYm9sRGVzY3JpcHRpb249ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5fZ2V0Q2FjaGUoInN5bWJvbC1kZXNjcmlwdGlvbjoiK2UpO3JldHVybiB0fHwodD1lLHRoaXMuX3NldENhY2hlKCJzeW1ib2wtZGVzY3JpcHRpb246IitlLHQpLHQpfSxrLnByb3RvdHlwZS5faW5pdEhpZ2hsaWdodGVycz1mdW5jdGlvbigpe3RoaXMuX2hpZ2hsaWdodGVycy5sYXN0PW5ldyBGKHRoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQsdGhpcy5fb3B0aW9ucy5ncm93aW5nQmcsdGhpcy5fb3B0aW9ucy5mYWxsaW5nQmcsdGhpcy5fb3B0aW9ucy5sYXN0R3Jvd2luZ0NsYXNzLHRoaXMuX29wdGlvbnMubGFzdEZhbGxpbmdDbGFzcyksdGhpcy5faGlnaGxpZ2h0ZXJzLmV4dEhyc0Nsb3NlPW5ldyBGKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0Nsb3NlLHRoaXMuX29wdGlvbnMuZ3Jvd2luZ0JnLHRoaXMuX29wdGlvbnMuZmFsbGluZ0JnLHRoaXMuX29wdGlvbnMubGFzdEdyb3dpbmdDbGFzcyx0aGlzLl9vcHRpb25zLmxhc3RGYWxsaW5nQ2xhc3MpLHRoaXMuX2hpZ2hsaWdodGVycy5uaWdodENsb3NlPW5ldyBGKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2xvc2UsdGhpcy5fb3B0aW9ucy5ncm93aW5nQmcsdGhpcy5fb3B0aW9ucy5mYWxsaW5nQmcsdGhpcy5fb3B0aW9ucy5sYXN0R3Jvd2luZ0NsYXNzLHRoaXMuX29wdGlvbnMubGFzdEZhbGxpbmdDbGFzcyl9LGsucHJvdG90eXBlLmRpc2FibGU9ZnVuY3Rpb24oKXt0aGlzLmVuYWJsZWQ9ITEsdGhpcy5kaXNjb25uZWN0KCl9LGsucHJvdG90eXBlLmVuYWJsZT1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMCx0aGlzLmNvbm5lY3QoKX0say5wcm90b3R5cGUuc2V0U3RhdGVIb29rPWZ1bmN0aW9uKGUpe251bGw9PT1lJiZ0aGlzLl9zZXRTdGF0ZUhvb2s/ZGVsZXRlIHRoaXMuX3NldFN0YXRlSG9vazoiZnVuY3Rpb24iPT10eXBlb2YgZSYmKHRoaXMuX3NldFN0YXRlSG9vaz1lKX0say5wcm90b3R5cGUuX3NldENhY2hlPWZ1bmN0aW9uKGUsdCl7bnVsbD09dD9kZWxldGUgdGhpcy5fY2FjaGVbZV06dGhpcy5fY2FjaGVbZV09dH0say5wcm90b3R5cGUuX2dldENhY2hlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLl9jYWNoZSYmdGhpcy5fY2FjaGVbZV19LGsucHJvdG90eXBlLmdldE9wdGlvbnM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fb3B0aW9uc307dmFyIEw9cyg5MTQ0ODcpLEg9cy5uKEwpLE89cyg5NzEwNzIpO2NvbnN0IE09KDAsby5mb3J3YXJkUmVmKSgoKGUsdCk9Pntjb25zdHtjaGlsZHJlbjpzLG9uQ2xpY2s6bixvbkNlbGxIb3ZlcjppLG9uQ2VsbExlYXZlOnIsY2xhc3NOYW1lOmEsY2xhc3NOYW1lQ29udGVudDpsfT1lO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoInRkIix7cmVmOnQsY2xhc3NOYW1lOkgoKShPLmNvbnRhaW5lcixhKSxvbkNsaWNrOm4sb25Nb3VzZUVudGVyOmksb25Nb3VzZUxlYXZlOnJ9LG8uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpIKCkoTy5jb250ZW50LGwpfSxzfHwiLSIpKX0pKTtNLmRpc3BsYXlOYW1lPSJDcm9zc1RhYmxlQ2VsbCI7cyg1MDc1MCk7Y29uc3QgVj1be21pbnZhbHVlOjcsdHJlbmQ6InBvc2l0aXZlLXhsIn0se21pbnZhbHVlOjQsdHJlbmQ6InBvc2l0aXZlLWwifSx7bWludmFsdWU6Mi41LHRyZW5kOiJwb3NpdGl2ZS1tIn0se21pbnZhbHVlOi4xLHRyZW5kOiJwb3NpdGl2ZS1zIn0se21pbnZhbHVlOjAsdHJlbmQ6Im5ldXRyYWwifSx7bWludmFsdWU6LS4xLHRyZW5kOiJuZWdhdGl2ZS1zIn0se21pbnZhbHVlOi0xLjUsdHJlbmQ6Im5lZ2F0aXZlLW0ifSx7bWludmFsdWU6LTMuNSx0cmVuZDoibmVnYXRpdmUtbCJ9LHttaW52YWx1ZTotMS8wLHRyZW5kOiJuZWdhdGl2ZS14bCJ9XTt2YXIgaj1zKDIzMjk3Nyk7ZnVuY3Rpb24gUihlKXtjb25zdHtzaG9ydE5hbWU6dCxjdXN0b21QcmljZUZvcm1hdHRlcjpzLGlzVGlja2VyQWN0aXZlOm49ITAsb25DbGljazppLG9uQ2VsbEhvdmVyOnIsb25DZWxsTGVhdmU6YX09ZSxsPSgwLG8udXNlUmVmKShudWxsKSxjPSgwLG8udXNlUmVmKSghMSk7cmV0dXJuKDAsby51c2VFZmZlY3QpKCgoKT0+e2lmKCFsLmN1cnJlbnQpcmV0dXJuO2lmKCFuKXJldHVybjtjb25zdCBlPWBGWF9JREM6JHt0fWAsbz1uZXcgayhlLGwuY3VycmVudCx7bGFzdEdyb3dpbmdDbGFzczpqLmdyb3dpbmcsbGFzdEZhbGxpbmdDbGFzczpqLmZhbGxpbmcscXVvdGVTZXNzaW9uOigwLEMuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSxjdXN0b21QcmljZUZvcm1hdHRlcjpzLG5vU3VjaFN5bWJvbEhvb2s6cz0+e3Muc3ltYm9sbmFtZT09PWU/KG8uZGlzY29ubmVjdCgpLG8uY29ubmVjdCh0KSk6bC5jdXJyZW50Py5jbGFzc0xpc3QuYWRkKGoubm9EYXRhLGZ1bmN0aW9uKGUsdD1WKXtjb25zdCBzPU51bWJlcihlKTtpZigiIj09PWV8fG51bGw9PT1lfHxpc05hTihzKSlyZXR1cm4idHYtY3Jvc3MtdGFibGUtLWVtcHR5Ijtjb25zdCBuPXQuZmluZCgoZT0+cz49TnVtYmVyKGUubWludmFsdWUpKSk7cmV0dXJuIG4/YHR2LWNyb3NzLXRhYmxlLS0ke24udHJlbmR9YDoidHYtY3Jvc3MtdGFibGUtLWVtcHR5In0odm9pZCAwKSl9LHNldFN0YXRlSG9vazp1fSk7cmV0dXJuKCk9Pm8uZGlzY29ubmVjdCgpfSksW10pLG8uY3JlYXRlRWxlbWVudChNLHsKb25DbGljazpmdW5jdGlvbigpe2MuY3VycmVudCYmaSh0KX0sb25DZWxsSG92ZXI6cixvbkNlbGxMZWF2ZTphLHJlZjpsLGNsYXNzTmFtZUNvbnRlbnQ6ImpzLXN5bWJvbC1sYXN0In0pO2Z1bmN0aW9uIHUoZSx0LHMpe3MmJiFjLmN1cnJlbnQmJihjLmN1cnJlbnQ9ITApfX1mdW5jdGlvbiBJKGUsdCxzKXtyZXR1cm4gbj0+by5jcmVhdGVFbGVtZW50KFIsey4uLm4saXNUaWNrZXJBY3RpdmU6dCxvbkNsaWNrOmUsY3VzdG9tUHJpY2VGb3JtYXR0ZXI6c30pfXZhciBBPXMoNzk0MTg3KSxxPXMoMTQwMDE3KTtzLm4ocSkoKS5oaWRkZW47ZnVuY3Rpb24gQihlKXtjb25zdCB0PSgwLEEuaXNDaXJjbGVMb2dvV2l0aFVybFByb3BzKShlKSxbcyxuXT0oMCxvLnVzZVN0YXRlKSgwKSxpPSgwLG8udXNlUmVmKShudWxsKSxyPSgwLEEuZ2V0U3R5bGVDbGFzc2VzKShlLnNpemUscyxlLmNsYXNzTmFtZSksYT1lLmFsdD8/ZS50aXRsZT8/IiIsbD10P2FbMF06ZS5wbGFjZWhvbGRlckxldHRlcjtyZXR1cm4oMCxvLnVzZUVmZmVjdCkoKCgpPT5uKGkuY3VycmVudD8uY29tcGxldGU/PyF0PzI6MSkpLFt0XSksdCYmMyE9PXM/by5jcmVhdGVFbGVtZW50KCJpbWciLHtyZWY6aSxjbGFzc05hbWU6cixjcm9zc09yaWdpbjoiIixzcmM6ZS5sb2dvVXJsLGFsdDphLHRpdGxlOmUudGl0bGUsbG9hZGluZzplLmxvYWRpbmcsb25Mb2FkOigpPT5uKDIpLG9uRXJyb3I6KCk9Pm4oMyksImFyaWEtbGFiZWwiOmVbImFyaWEtbGFiZWwiXSwiYXJpYS1oaWRkZW4iOmVbImFyaWEtaGlkZGVuIl19KTpvLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cix0aXRsZTplLnRpdGxlLCJhcmlhLWxhYmVsIjplWyJhcmlhLWxhYmVsIl0sImFyaWEtaGlkZGVuIjplWyJhcmlhLWhpZGRlbiJdfSxsKX12YXIgJD1zKDQ1NzA3OSksVz1zKDI0MDU4Mik7ZnVuY3Rpb24gSyhlKXtjb25zdHtjdXJyZW5jeTp0LGxvZ29TaXplOnM9Inh4eHNtYWxsIn09ZTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJzcGFuIix7dGl0bGU6KDAsJC5nZXRDdXJyZW5jeU5hbWUpKHQpLGNsYXNzTmFtZTpgYXBwbHktY29tbW9uLXRvb2x0aXAgJHtXLmN1cnJlbmN5QmxvY2t9YH0sby5jcmVhdGVFbGVtZW50KEIse3NpemU6cyxsb2dvVXJsOigwLCQuZ2V0Q3VycmVuY3lGbGFnKSh0KX0pLHQpfWZ1bmN0aW9uIFUoZSl7Y29uc3R7VGFibGVEYXRhQ2VsbDp0LGN1cnJlbmNpZXM6cyxyb3dDdXJyZW5jeTpuLHJvd0NvdW50Omksb25DZWxsSG92ZXI6cixvbkNlbGxMZWF2ZTphLGxvZ29TaXplOmx9PWU7cmV0dXJuIG8uY3JlYXRlRWxlbWVudCgidHIiLG51bGwsby5jcmVhdGVFbGVtZW50KCJ0aCIsbnVsbCxvLmNyZWF0ZUVsZW1lbnQoSyx7Y3VycmVuY3k6c1tpXSxsb2dvU2l6ZTpsfSkpLHMubWFwKCgoZSxzKT0+e2NvbnN0IGk9bitlLGw9cysxLGM9KCk9PnImJnIobCksdT0oKT0+YSYmYShsKTtyZXR1cm4gZT09PW4/by5jcmVhdGVFbGVtZW50KCJ0ZCIse2tleTppLG9uTW91c2VFbnRlcjpjLG9uTW91c2VMZWF2ZTp1fSk6by5jcmVhdGVFbGVtZW50KHQse2tleTppLHNob3J0TmFtZTppLG9uQ2xpY2s6KCk9Pnt9LG9uQ2VsbEhvdmVyOmMsb25DZWxsTGVhdmU6dX0pfSkpKX12YXIgej1zKDYxNjMxMSk7dmFyIEcsUT1zKDIzMjM2NCk7IWZ1bmN0aW9uKGUpe2UuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0oR3x8KEc9e30pKTtjb25zdCBaPW5ldyBRLldhdGNoZWRWYWx1ZTtmdW5jdGlvbiBYKCl7cmV0dXJuKChlLHQ9ITEscz1bXSk9Pntjb25zdCBuPSJ3YXRjaGVkVmFsdWUiaW4gZT9lLndhdGNoZWRWYWx1ZTp2b2lkIDAsaT0iZGVmYXVsdFZhbHVlImluIGU/ZS5kZWZhdWx0VmFsdWU6ZS53YXRjaGVkVmFsdWUudmFsdWUoKSxbcixhXT0oMCxvLnVzZVN0YXRlKShuP24udmFsdWUoKTppKTtyZXR1cm4odD96LnVzZUlzb21vcnBoaWNMYXlvdXRFZmZlY3Q6by51c2VFZmZlY3QpKCgoKT0+e2lmKG4pe2Eobi52YWx1ZSgpKTtjb25zdCBlPWU9PmEoZSk7cmV0dXJuIG4uc3Vic2NyaWJlKGUpLCgpPT5uLnVuc3Vic2NyaWJlKGUpfXJldHVybigpPT57fX0pLFtuLC4uLnNdKSxyfSkoe3dhdGNoZWRWYWx1ZTpafSl9Wi5zdWJzY3JpYmUoKGU9PnshZnVuY3Rpb24oZSx0PXdpbmRvdyl7Y29uc3Qgcz0idGhlbWUtIitlLG49dC5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0O2Zvcihjb25zdCBlIG9mIEFycmF5LmZyb20obikpZS5zdGFydHNXaXRoKCJ0aGVtZS0iKSYmZSE9PXMmJm4ucmVtb3ZlKGUpO24uYWRkKHMpLHQuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQudGhlbWU9ZX0oZSx3aW5kb3cpfSkpO3ZhciBKPXMoNDg5OTA4KTtjb25zdCBZPSgwLG8uZm9yd2FyZFJlZikoKChlLHQpPT57Y29uc3R7Ym9keVJvd3M6cyxoZWFkZXJDZWxsczpuLGVtcHR5SGVhZGVyQ2VsbDppLGlzV2lkZ2V0OnIsZm9yY2VEZWZhdWx0Q29sb3JzOmF9PWUsW2wsY109KDAsby51c2VTdGF0ZSkoITEpLHU9WCgpO3JldHVybigwLG8udXNlRWZmZWN0KSgoKCk9PntjKCEwKTtjb25zdCBlPXNldFRpbWVvdXQoKCgpPT5jKCExKSksNTApO3JldHVybigpPT57Y2xlYXJUaW1lb3V0KGUpfX0pLFt1XSksby5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6SCgpKEouY29udGFpbmVyLHImJkoud2lkZ2V0LGEmJkpbImZvcmNlLWRlZmF1bHQtY29sb3JzIl0pfSxvLmNyZWF0ZUVsZW1lbnQoInRhYmxlIix7Y2xhc3NOYW1lOkgoKShKLnRhYmxlLGwmJkoucHJldmVudEFuaW1hdGlvbikscmVmOnR9LG8uY3JlYXRlRWxlbWVudCgidGJvZHkiLHtjbGFzc05hbWU6Si50YWJsZUJvZHlSb3d9LG8uY3JlYXRlRWxlbWVudCgidHIiLG51bGwsby5jcmVhdGVFbGVtZW50KCJ0aCIse2NsYXNzTmFtZTpKLnRhYmxlSGVhZGVyQ2VsbH0saSksLi4ubiksLi4ucykpKX0pKTtmdW5jdGlvbiBlZShlKXtjb25zdHtzZXR0aW5nczp0LGN1c3RvbVByaWNlRm9ybWF0dGVyOnMsYXJlVGlja2Vyc0FjdGl2ZTpuPSEwLGxvZ29TaXplOmksaXNXaWRnZXQ6bD0hMX09ZSxjPSgwLApvLnVzZVJlZikobnVsbCkse29uQ2VsbEhvdmVyOnUsb25DZWxsTGVhdmU6aH09ZnVuY3Rpb24oZSx0PSJ0YWJsZUhlYWRlckNlbGxIb3ZlciIpe3JldHVybntvbkNlbGxIb3ZlcjpmdW5jdGlvbihlKXtzKGUsITApfSxvbkNlbGxMZWF2ZTpmdW5jdGlvbihlKXtzKGUsITEpfX07ZnVuY3Rpb24gcyhzLG4pe2UuY3VycmVudD8ucm93c1swXT8uY2hpbGRyZW5bc10uY2xhc3NMaXN0LnRvZ2dsZSh0LG4pfX0oYyksbT0ibGlnaHQiPT09dC5jb2xvclRoZW1lPyIjZmZmZmYiOiIjMDAwMDAwIixkPUJvb2xlYW4odC5iYWNrZ3JvdW5kQ29sb3ImJiEwIT09dC5pc1RyYW5zcGFyZW50JiZ0LmJhY2tncm91bmRDb2xvci50b0xvd2VyQ2FzZSgpPT09bSksZj1bXSxwPVtdO3JldHVybigwLG8udXNlRWZmZWN0KSgoKCk9PntjLmN1cnJlbnQmJmwmJih0LmJhY2tncm91bmRDb2xvcj90LmJhY2tncm91bmRDb2xvciYmYy5jdXJyZW50LnN0eWxlLnNldFByb3BlcnR5KCItLXdpZGdldC1iZy1jb2xvciIsdC5iYWNrZ3JvdW5kQ29sb3IpOmMuY3VycmVudC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS13aWRnZXQtYmctY29sb3IiLCJsaWdodCI9PT10LmNvbG9yVGhlbWU/IiNmZmYiOiIjMDAwIiksYy5jdXJyZW50LnN0eWxlLnNldFByb3BlcnR5KCItLWNyb3NzLXRhYmxlLWhlYWRlci1wb3NpdGlvbiIsInJlbGF0aXZlIikpfSksW2NdKSx0LmN1cnJlbmNpZXMuZm9yRWFjaCgoKGUscik9PntmLnB1c2goby5jcmVhdGVFbGVtZW50KCJ0aCIse2tleTplfSxvLmNyZWF0ZUVsZW1lbnQoSyx7Y3VycmVuY3k6ZSxsb2dvU2l6ZTppfSkpKSxwLnB1c2goby5jcmVhdGVFbGVtZW50KFUse2tleTplLGxvZ29TaXplOmksY3VycmVuY2llczp0LmN1cnJlbmNpZXMscm93Q3VycmVuY3k6ZSxyb3dDb3VudDpyLG9uQ2VsbEhvdmVyOnUsb25DZWxsTGVhdmU6aCxUYWJsZURhdGFDZWxsOkkoXyxuLHMpfSkpfSkpLG8uY3JlYXRlRWxlbWVudChZLHtoZWFkZXJDZWxsczpmLGJvZHlSb3dzOnAscmVmOmMsaXNXaWRnZXQ6bCxmb3JjZURlZmF1bHRDb2xvcnM6ZH0pO2Z1bmN0aW9uIF8oZSl7aWYodC5vbkNyb3NzQ2xpY2smJnQub25Dcm9zc0NsaWNrKGUpLCF0LmRpc2FibGVDcm9zc0NsaWNrSHJlZil7Y29uc3Qgcz1mdW5jdGlvbihlLHQpe2NvbnN0IHM9dC5sYXJnZUNoYXJ0VXJsPygwLGEubWFrZVRlbXBsYXRlU3ltYm9sVXJsKSh0LmxhcmdlQ2hhcnRVcmwsZSk6KDAsYS5tYWtlU3ltYm9sUGFnZVVybCkoZSwoMCxyLmZpbHRlclV0bUluZm8pKHQpKTtyZXR1cm5gJHtzfT9leGNoYW5nZT1GWF9JRENgfSh7c2hvcnROYW1lOmV9LHQpLG49d2luZG93Lm9wZW4ocywiX2JsYW5rIik7biYmKG4ub3BlbmVyPW51bGwpfX19WS5kaXNwbGF5TmFtZT0iQ3Jvc3NUYWJsZSI7dmFyIHRlPXMoMjQxOTM3KSxzZT1zKDczMjExOCksbmU9cygyMzQzMSksb2U9cyg5MDIxMDApLGllPXMoNDAzMzcwKSxyZT1zKDkzMTE5OCk7cygzNjkwMDMpO2NvbnN0IGFlPSgwLG9lLmV4dHJhY3RXaWRnZXRTZXR0aW5ncykod2luZG93LmluaXREYXRhLndpZGdldERlZmF1bHRzKSxsZT0oMCxyLmZpbHRlclV0bUluZm8pKGFlKSxjZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjd2lkZ2V0LWZvcmV4LWNyb3NzLXJhdGVzLWNvbnRhaW5lciIpLHVlPSgwLG4uY3JlYXRlRW1iZWRXaWRnZXRXcmFwcGVyKShjZSwiZm9yZXgtY3Jvc3MtcmF0ZXMiLGxlLHtsb2NhbGU6YWUubG9jYWxlfHwiZW4iLGlzV2hpdGVMYWJlbDohIWFlLndoaXRlbGFiZWwsc2hvd0JvcmRlck9uVHJhbnNwYXJlbnQ6ITB9KSxoZT1hZS5mcmFtZUVsZW1lbnRJZDthZS5iYXNlVXJsPSgwLHRlLmRldGVybWluZUJhc2VVcmwpKHdpbmRvdy5sb2NhbGVfZG9tYWlucyxhZS5sb2NhbGUpLGFlLm9uQ3Jvc3NDbGljaz1lPT57aWYoIWFlLmRpc2FibGVDcm9zc0NsaWNrSHJlZil7Y29uc3QgdD0oMCxpZS5tYWtlV2lkZ2V0U3ltYm9sTGluaykoe3N5bWJvbDplLGN1c3RvbVVybDphZS5sYXJnZUNoYXJ0VXJsLHV0bUluZm86bGV9KTsoMCxyZS5zZW5kV2lkZ2V0VHJhY2tEYXRhKSh0LG51bGwpfSgwLHNlLmRpc3BhdGNoRXZlbnRUb1BhcmVudCkobmUuSUZyYW1lRXZlbnRzLk5hbWVzLlN5bWJvbENsaWNrLGhlLHtzeW1ib2w6ZX0pfSxmdW5jdGlvbihlLHQscyl7aS5yZW5kZXIoby5jcmVhdGVFbGVtZW50KGVlLHtzZXR0aW5nczp0LGN1c3RvbVByaWNlRm9ybWF0dGVyOnMsaXNXaWRnZXQ6ITB9KSxlKX0odWUsYWUsdm9pZCAwKSwoMCxzZS5kaXNwYXRjaEV2ZW50VG9QYXJlbnQpKG5lLklGcmFtZUV2ZW50cy5OYW1lcy5XaWRnZXRMb2FkLGhlLHZvaWQgMCl9LDk2OTE2OChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtpc1J0bDooKT0+bi5pc1J0bH0pO3MoNjEwMjY4KTt2YXIgbj1zKDExNTI5Myl9fSxlPT57ZS5PKDAsWzU4NjY3LDM5MTQ3LDQ2OTA3LDQzMzI1LDM5MDUsMTU5MzIsNTE1MDgsODQwOCw4MTgwOSwzMjM4NywxMzE0OCw0OTI2NSw4MDcwNiw2NTg2Miw1MTAzMSw5NDcwOCwzNTUyLDgwNTk0LDc5MjA3LDIwMDYxLDE2MDY3XSwoKCk9PntyZXR1cm4gdD02NDQ0OTksZShlLnM9dCk7dmFyIHR9KSk7ZS5PKCl9XSk7"}},"time_used":3,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":3,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.googleapis.com/translate_static/img/loading.gif","fqdn":"translate.googleapis.com","domain":"translate.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":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.716Z","timestamp":1785159269716,"http_version":"HTTP/3","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 /translate_static/img/loading.gif HTTP/1.1\r\nHost: translate.googleapis.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, 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\naccept-ranges: bytes\r\ncross-origin-resource-policy: cross-origin\r\ncross-origin-opener-policy-report-only: same-origin; report-to=\"static-on-bigtable\"\r\nreport-to: {\"group\":\"static-on-bigtable\",\"max_age\":2592000,\"endpoints\":[{\"url\":\"https://csp.withgoogle.com/csp/report-to/static-on-bigtable\"}]}\r\ncontent-length: 702\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 21:36:56 GMT\r\nexpires: Sat, 24 Jul 2027 21:36:56 GMT\r\ncache-control: public, max-age=31536000\r\nage: 230253\r\nlast-modified: Thu, 03 Oct 2019 10:15:00 GMT\r\ncontent-type: image/gif\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":702,"size_decoded":1361,"mime_type":"image/gif","magic":"GIF image data, version 89a, 16 x 16","md5":"eefaa072b284a305c12c06608333abc2","sha1":"58272721ccc1efda26eaa22354022c7c793edbb6","sha256":"fb6b7bcc1ab09f27db17bcbdf5239ce1d52af34f1fc5125b3fc8528a07848d21","sha512":"c5ccfdcd9ce76de85f043a1733c9f0b620e15babbaf2a5639684c7b2bb8e5a66473c9a83f14cb48d9cb6c6a1c6b36f2c5a28e25abaf131fb85ec5eedecbae4ac","ssdeep":"","tlshash":"5d01dd13f3d50473f66d0075a20cc57f010635daaadad7089a48117cfe1983c5239b82","first_seen":"2023-04-05T11:18:23Z","last_seen":"2026-07-30T06:08:30.87469Z","times_seen":18444,"resource_available":false,"data":"R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/h1CdWlsdCB3aXRoIEdJRiBNb3ZpZSBHZWFyIDQuMAAh/hVNYWRlIGJ5IEFqYXhMb2FkLmluZm8AIfkECQoAAAAsAAAAABAAEAAAAzMIutz+MMpJaxNjCDoIGZwHTphmCUWxMcK6FJnBti5gxMJx0C1bGDndpgc5GAwHSmvnSAAAIfkECQoAAAAsAAAAABAAEAAAAzQIutz+TowhIBuEDLuw5opEcUJRVGAxGSBgTEVbGqh8HLV13+1hGAeAINcY4oZDGbIlJCoSACH5BAkKAAAALAAAAAAQABAAAAM2CLoyIyvKQciQzJRWLwaFYxwO9BlO8UlCYZircBzwCsyzvRzGqCsCWe0X/AGDww8yqWQan78EACH5BAkKAAAALAAAAAAQABAAAAMzCLpiJSvKMoaR7JxWX4WLpgmFIQwEMUSHYRwRqkaCsNEfA2JSXfM9HzA4LBqPyKRyOUwAACH5BAkKAAAALAAAAAAQABAAAAMyCLpyJytK52QU8BjzTIEMJnbDYFxiVJSFhLkeaFlCKc/KQBADHuk8H8MmLBqPyKRSkgAAIfkECQoAAAAsAAAAABAAEAAAAzMIuiDCkDkX43TnvNqeMBnHHOAhLkK2ncpXrKIxDAYLFHNhu7A195UBgTCwCYm7n20pSgAAIfkECQoAAAAsAAAAABAAEAAAAzIIutz+8AkR2ZxVXZoB7tpxcJVgiN1hnN00loVBRsUwFJBgm7YBDQTCQBCbMYDC1s6RAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P4wykmrZULUnCnXHggIwyCOx3EOBDEwqcqwrlAYwmEYB1bapQIgdWIYgp5bEZAAADsAAAAAAAAAAAAK"}},"time_used":16,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":16,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate.google.com/gen204?sl=en\u0026nca=te_ap\u0026client=te\u0026logld=vTE_20260722","fqdn":"translate.google.com","domain":"google.com","tld":"com"},"ip":{"addr":"142.250.178.110","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:29.713Z","timestamp":1785159269713,"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":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:37:35 GMT","end":"Mon, 21 Sep 2026 08:37:34 GMT"},"fingerprint":{"sha1":"2F:20:3B:91:88:65:20:CD:06:9D:0C:58:4D:17:6F:FC:9D:EC:41:83","sha256":"0C:7B:D3:23:E9:5B:D6:6B:F2:5C:71:91:4D:41:CE:E6:D7:1F:A2:F2:63:BA:25:70:1D:00:F3:C0:72:21:51:6D"}}},"request":{"raw":"GET /gen204?sl=en\u0026nca=te_ap\u0026client=te\u0026logld=vTE_20260722 HTTP/1.1\r\nHost: translate.google.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://walmartfundholdings.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6, i\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 204 \r\ncontent-type: image/gif; charset=utf-8\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 13:34:29 GMT\r\ncross-origin-resource-policy: cross-origin\r\np3p: CP=\"This is not a P3P policy! See g.co/p3phelp for more info.\"\r\ncontent-security-policy: require-trusted-types-for 'script';report-uri /_/TranslateApiHttp/cspreport, script-src 'nonce-xCRQIvcwoAS4eyaCXuZK5Q' 'unsafe-inline';object-src 'none';base-uri 'self';report-uri /_/TranslateApiHttp/cspreport;worker-src 'self'\r\naccept-ch: Sec-CH-UA-Arch, Sec-CH-UA-Bitness, Sec-CH-UA-Full-Version, Sec-CH-UA-Full-Version-List, Sec-CH-UA-Model, Sec-CH-UA-WoW64, Sec-CH-UA-Form-Factors, Sec-CH-UA-Platform, Sec-CH-UA-Platform-Version\r\ncross-origin-opener-policy: same-origin\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\nreporting-endpoints: default=\"/_/TranslateApiHttp/web-reports?context=eJzj4tDikmJw15BiEOLheLpn7mU2gQOPf05gVlJKyi-MLylKzCvOSSxJLU4tKkstijcyMDIzMDcy0jMwji8wAAAzqxM0\"\r\nserver: ESF\r\ncontent-length: 0\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nset-cookie: __Secure-ENID=35.SE=JmkDfcGIbJ1JPtNv156o9dNClH3pyjFWVVXbV2DnICXG8GLRSO8IjopdA5xz0QKNaqGdcePloxCNm5kH6dSOFuEq_iGsvPFqcwmjl7woZsBkgfPwcDA8aR1_r065-9aVyqsUHLRXPdJKldrubVW2_f-nuL9jqTRInKOY_ghzY-NZsXjOOlpzY1YqH2m88KLh8gtnr4wpYW_OTzG1vyukllueACbFbVdGkPsaAo7zbTus; expires=Fri, 27-Aug-2027 05:52:47 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax\r\nalt-svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000\r\n\r\n","headers":null,"cookies":null,"status_code":"204","status_text":"","fingerprints":null,"data":{"size":0,"size_decoded":0,"mime_type":"image/gif; charset=utf-8","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-30T06:24:56.209576Z","times_seen":17611926,"resource_available":true,"data":null}},"time_used":0,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":0,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.99","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.447Z","timestamp":1785159268447,"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/raleway/v37/1Ptug8zYS_SKggPNyC0ITw.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://walmartfundholdings.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: 48264\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: Tue, 09 Sep 2025 19:08:31 GMT\r\ncontent-type: font/woff2\r\nage: 433449\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":48264,"size_decoded":49077,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 48264, version 1.0","md5":"e401cae7a12911a5c9752dc7a62f9dd7","sha1":"5685dd613a8a8211bf60b4b10753a47587bd0b60","sha256":"b1bef1f03a77a36fc257c5525e32a1dd621bb6f935b743a419da7ed0b18dc8f5","sha512":"dc8b6f28bc048efb508b482199c958ffaeddf15431aad34544f5b9972fd8c19e0315f74499d5549b30e15a03e41bfaf2a30613b6889b9a693a9c87c4e872e1f3","ssdeep":"768:AWHBpvVWVHIgyYwXiDAOa6GWeFGaCfLBc/qiufIdQRuEl4ofxl8VKme:AWbEIgmi8uAFCfS/OfUYuRExl8VFe","tlshash":"1123f2e56c6a826bd88c882945ee21c1f3d7f4927713d149e8fa5df8c432c05ed5066b","first_seen":"2025-05-29T19:02:42.430777Z","last_seen":"2026-07-30T06:06:44.959375Z","times_seen":62401,"resource_available":false,"data":"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"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":19,"receive":4,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.308Z","timestamp":1785159268308,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 7770674\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 13:34:28 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=Z7kqHASLDvKUXw8h21A%2B5tPak%2B1g%2FpxkkyZPdK55bQOOYgPAZ672QJTmVN4oaYhIqmDIX1%2BeV9WY76E0yXXqO4gQ4iW6SSbIfiKaotNtI2j27Ef66DlIn%2BwnJbYi\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0592f93e56a3-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-07-30T06:07:43.511426Z","times_seen":2104,"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":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/3635.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.644Z","timestamp":1785159268644,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/3635.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2898\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Thu, 16 Mar 2023 13:04:10 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 06:53:09 GMT\r\netag: \"0383d666db05fd337b9c48f5cca099b5\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 24080\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: 7bgzu-U2wyU6rXvqW7wEdZrxsbtbczVnZFUjFWVlkn6W3vrhcMVkPw==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2898,"size_decoded":3432,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"0383d666db05fd337b9c48f5cca099b5","sha1":"8753fdae53ff0316cdae36277df48fd191899308","sha256":"6df892e8987e5a31eb490ccf4d625a34c1adc00f479831dbc70773ccc07a274f","sha512":"be5d557758477558c00b6e688553130f2422cc4537b70f7a97d3e9bcdd22573b9a0954c79c047d6c9196f2b351cd32bb750ef445bc40c7401bb91c589212baf3","ssdeep":"","tlshash":"15513b5a40a83888d7406ba7e170ce1ca3e38062ea8e6b07d5c3ba6699725102e534f7","first_seen":"2023-12-05T12:10:14Z","last_seen":"2026-07-29T06:14:00.414218Z","times_seen":1379,"resource_available":false,"data":"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"}},"time_used":31,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":29,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-sheriff.tradingview-widget.com/sheriff/api/v1/rules/search?origin=https%3A%2F%2Fwalmartfundholdings.com","fqdn":"widget-sheriff.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"143.204.238.89","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"fetch","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.421Z","timestamp":1785159269421,"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":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sat, 27 Dec 2025 00:00:00 GMT","end":"Sun, 24 Jan 2027 23:59:59 GMT"},"fingerprint":{"sha1":"0A:93:73:BB:95:EC:D1:52:11:5B:CC:2D:92:43:D4:FD:5A:2E:BE:A4","sha256":"70:E8:96:A5:F6:09:13:92:CB:0D:3F:A5:37:C4:A1:0D:4A:F7:52:C0:C1:B6:21:DB:D5:92:33:3F:B5:7D:EE:0F"}}},"request":{"raw":"GET /sheriff/api/v1/rules/search?origin=https%3A%2F%2Fwalmartfundholdings.com HTTP/1.1\r\nHost: widget-sheriff.tradingview-widget.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://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-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/2 200 \r\ncontent-type: application/json\r\ncontent-length: 28\r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\naccess-control-allow-methods: GET, HEAD, POST, OPTIONS\r\ncache-control: public, max-age=3600, s-maxage=3600\r\nserver: tv\r\nvia: 443, 1.1 217e7e1681602f97edd05a1be6d5e5bc.cloudfront.net (CloudFront)\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\ncross-origin-resource-policy: same-site\r\naccess-control-max-age: 86400\r\nvary: Origin\r\nx-cache: Miss from cloudfront\r\nx-amz-cf-pop: ARN53-P4\r\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: SDwSvL1nt32N6bor7WyNe5AKcjHQmNVLfCW4sjO2IBhUo_kbVQ_4xw==\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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":28,"size_decoded":655,"mime_type":"application/json","magic":"JSON text data","md5":"14420c6bf164d5d90dde9fab536d1d9f","sha1":"e673e7885c39527b16340abb66efb0205ec0733e","sha256":"e1059a397e40424c0bf21c55b9db9a89f7cd1dffca2f4d7caa3d9c9cdc0380b9","sha512":"06ecb8a9bf764face6544b130d39799a9c855e66a3bf2dea1664d0e71637fbf630130d5fcd595f357cd64b03a6e03d9431b351ea304c0d579197bc73e1ed3d88","ssdeep":"","tlshash":"7280002aa0082f202a0a00882e830a3a0022820a20a8203008222002ab2008b282328c","first_seen":"2023-11-20T15:30:50Z","last_seen":"2026-07-28T23:12:55.232529Z","times_seen":438,"resource_available":false,"data":"eyJhY3Rpb25zIjpbImV4cGFuZC1sb2dvIl19Cg=="}},"time_used":484,"timings":{"blocked":-1,"dns":3,"connect":8,"send":0,"wait":457,"receive":0,"ssl":15},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/css/owl.theme.default.min.css","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.906Z","timestamp":1785159267906,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /css/owl.theme.default.min.css HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"3f5-66136805-fa18da402c532c60;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 375\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1013,"size_decoded":736,"mime_type":"text/css","magic":"ASCII text, with very long lines (846)","md5":"594b81805a98b267e47c70a8fad30d9f","sha1":"684d84ec40b305ca14efc88c91f12972cb6342b4","sha256":"924b0dc630d1c5dff9fa31aead9509775b1d476bfe0a5ac2977b2f11205a26ac","sha512":"b0c5ed30d2f5cd1ce894760a12e8ccd80a822d447d1760b8ff4e5c75bc638cb491bcc40872210f090668fbe9e4ee0a3706d4ae2bd91f6bfb3e6b87f88b9a4b93","ssdeep":"","tlshash":"4d11abc5f189221d301781904aa842cb6b1e687e529d0ef5f8ee8160c22dd053a6fbf9","first_seen":"2023-04-05T06:03:14Z","last_seen":"2026-07-30T06:56:38.263625Z","times_seen":26734,"resource_available":false,"data":"LyoqCiAqIE93bCBDYXJvdXNlbCB2Mi4zLjQKICogQ29weXJpZ2h0IDIwMTMtMjAxOCBEYXZpZCBEZXV0c2NoCiAqIExpY2Vuc2VkIHVuZGVyOiBTRUUgTElDRU5TRSBJTiBodHRwczovL2dpdGh1Yi5jb20vT3dsQ2Fyb3VzZWwyL093bENhcm91c2VsMi9ibG9iL21hc3Rlci9MSUNFTlNFCiAqLwoub3dsLXRoZW1lIC5vd2wtZG90cywub3dsLXRoZW1lIC5vd2wtbmF2e3RleHQtYWxpZ246Y2VudGVyOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0ub3dsLXRoZW1lIC5vd2wtbmF2e21hcmdpbi10b3A6MTBweH0ub3dsLXRoZW1lIC5vd2wtbmF2IFtjbGFzcyo9b3dsLV17Y29sb3I6I0ZGRjtmb250LXNpemU6MTRweDttYXJnaW46NXB4O3BhZGRpbmc6NHB4IDdweDtiYWNrZ3JvdW5kOiNENkQ2RDY7ZGlzcGxheTppbmxpbmUtYmxvY2s7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czozcHh9Lm93bC10aGVtZSAub3dsLW5hdiBbY2xhc3MqPW93bC1dOmhvdmVye2JhY2tncm91bmQ6Izg2OTc5MTtjb2xvcjojRkZGO3RleHQtZGVjb3JhdGlvbjpub25lfS5vd2wtdGhlbWUgLm93bC1uYXYgLmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOmRlZmF1bHR9Lm93bC10aGVtZSAub3dsLW5hdi5kaXNhYmxlZCsub3dsLWRvdHN7bWFyZ2luLXRvcDoxMHB4fS5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3pvb206MX0ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCBzcGFue3dpZHRoOjEwcHg7aGVpZ2h0OjEwcHg7bWFyZ2luOjVweCA3cHg7YmFja2dyb3VuZDojRDZENkQ2O2Rpc3BsYXk6YmxvY2s7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGU7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO2JvcmRlci1yYWRpdXM6MzBweH0ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgc3Bhbiwub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdDpob3ZlciBzcGFue2JhY2tncm91bmQ6Izg2OTc5MX0="}},"time_used":22,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/13502.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.671Z","timestamp":1785159268671,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/13502.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 847\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Mon, 24 Jul 2023 06:55:18 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 04:09:42 GMT\r\netag: \"0c8f6da4c5d03b754a4df9ebea16f241\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 33887\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: eyypJGzJoK2xy6tPuVxUamJBLe4qbGLGRR8CvOn1Egt5j4OMz9Kv0A==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":847,"size_decoded":1380,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"0c8f6da4c5d03b754a4df9ebea16f241","sha1":"a2c42f2f1e6e5a38f636ea4760069a0fab9bcb49","sha256":"9688dadf1285bb7105ace26c57f29a17b5c95f3fa993efd9c303809f7435e631","sha512":"df1fba179044b01e8c56a3b117cee577072dadfdd2c89a9efa25c5ee9d39dc42b0fffbccfd3704cbae11461ed7c23178e8ee27b0781f975bc7f6c1503d020ae8","ssdeep":"","tlshash":"5a01d675ad492970991ada2f098702fecb73027e138880347e33b5c0bd7c0a23873883","first_seen":"2023-11-19T03:02:16Z","last_seen":"2026-07-29T00:38:47.371761Z","times_seen":1203,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAADFklEQVR4XuWYbXXkMAxFH4RCCIRCMISFEAgLYSEUQiAUwkJYCIZQBt2qZ5xxnxJbnsQfc3LPuX8cSZYTZ5IJ0IaXL5cvP41K7NPzDr2wR5VaT4FcaW7+bGWO4XDQjdbWYQA8dGOt9ehAi61e6oRG/IOe3KLkOeRxODZHVRboSVPOknSQGbpuykWSavABPdmeteB59pReT8W6eHeLr4mDnnfL006CZfE+BDfEQ/fBHj4JC3RR9jUEd0Dm5n7YJQSXkvslPnx2TyS3S4ufDhN0kUMFG5C7YC/30DycHHv0yr9B12ylCQ+dWFyEmKDr9NDDACfFFm0jjPnKnMRBJwT9GmUj98PUS4cEHBxbAueO5iap7Trdw7Jw7ohu3socFGuF8/b8HRIqw/PGKjhgN3AHyz3vQnBDuIfNdb1HB1gLE3Qe2wvuIyhrzgb9ioMScF5s77fGGbqn4AofUAEJHHReaY3acE8/ekv9+lvgnNL8FnBfwe+nwbJxQPwrBw1wXvA1DuqM3Ibcn7jIQR4sWcAf6LzgSDjo/tY+eaBkAZwTtP54toR7XNfJA1dTDVxNNXA11cDVVANXUw1cTTWwHjDAOUEXxYwC97iukwdKFiH/6zlvLTwQDrq/tc9lY1D0ctAA5wWnKKY3yVfhK/8ZsgckcNB5pTVqwz2p3vhAcI5iUnBe7FN8EDn6SSx1G5XUqQH3EfzxSUzggNLGP6BzWReCG8I97K6LA5LBO3DenvMtvjY8b6witY3dPSwL547o96ewLTgwtgTOHc1dHHRw0K9RNjx0jRF0yMAJsdM9zETqtuplFg+dVFRggwm6Tg89jHBirDzujvAGXbOVZnJbt/fb3RZ7f3iC0xppJFfw6E44Ew/dX+zDF2yBLsZOt9ge5HaquITgR7G84voQ3JDcDhVP26WWkyC6W3xNJuh5tzxt8QHrSRBrwfPsefriAwv0ZClnSTrIDF035SJJNbHce1tKnkMeh2NzNGGCnry38kRojodupLUeA+CgG6utw4BYXkyO2mWrP8I7dPOPKrWengV6YXtKbJMr/R/9MHMSOJNdKwAAAABJRU5ErkJggg=="}},"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.tradingview-widget.com/static/bundles/embed/94708.73d2bca37207c67a41f4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.288Z","timestamp":1785159269288,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/94708.73d2bca37207c67a41f4.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a61b1a8-8b98\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:16:08 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/23/2026 10:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 86d851bd98790da46cbd9f79b45389cd\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"]}],"data":{"size":35736,"size_decoded":12654,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3065)","md5":"eb8c592becd98b3361efe0b94719d5c6","sha1":"a0d1ee8521cfba7aa407ac50937aedd5f39bf878","sha256":"647fb8708ead9f5ba58a75d3b5e6d45f3df1f26a67f068d19a46752de40e327d","sha512":"27e850e1b55df1bfb523a33007db88c5bf3fca11c34b9f448fad508275031d48062410c7e49cd891d38f4058b2dad657828a8ce9f5a047b24a8804c477a90feb","ssdeep":"768:Qy2uEBDBP0oAifg+OMQjn3FMjhYVwPn9/meP+Tjwqcq8xGQKpb5dg+xU7wbwpEvK:k950TT3WOOP9AsqcK555x/dMDjcXRdH6","tlshash":"f4f2f917f1a7b46693db809ae4724213a33c18013d05486dbabc9ddd2a3f942b663f7d","first_seen":"2026-07-23T13:38:20.417189Z","last_seen":"2026-07-28T07:05:00.7004Z","times_seen":1555,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbOTQ3MDhdLHs5MzAyMzEoZSx0LHMpe3MuZCh0LHtpc0ZlYXR1cmVzZXRFbmFibGVkOigpPT5hfSk7dmFyIG49cyg2MzUxOCk7Y29uc3QgaT1uZXcgTWFwLG89bmV3IE1hcCxyPW5ldyBTZXQ7ZnVuY3Rpb24gYShlKXtjb25zdCB0PWkuZ2V0KGUpO2lmKHZvaWQgMCE9PXQpcmV0dXJuIHQ7Y29uc3Qgcz1vLmdldChlKTtyZXR1cm4hIXMmJnMuc29tZShhKX1mdW5jdGlvbiBkKGUsdCl7aS5zZXQoU3RyaW5nKGUpLEJvb2xlYW4odCkpfSFmdW5jdGlvbigpe2Zvcihjb25zdFtlLHRdb2YgT2JqZWN0LmVudHJpZXMobikpaWYoci5hZGQoZSksInN1YnNldHMiaW4gdClmb3IoY29uc3QgcyBvZiB0LnN1YnNldHMpe3IuYWRkKHMpO2xldCB0PW8uZ2V0KHMpO3ZvaWQgMD09PXQmJih0PVtdLG8uc2V0KHMsdCkpLHQucHVzaChlKX19KCksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzJiZBcnJheS5pc0FycmF5KF9faW5pdGlhbERpc2FibGVkRmVhdHVyZXNldHMpJiZfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2QoZSwhMSl9KSksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMmJkFycmF5LmlzQXJyYXkoX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzKSYmX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2QoZSwhMCl9KSl9LDg1NjE5NihlLHQscyl7cy5kKHQse3Nob3VsZEFmZmVjdFVzZXI6KCk9PmR9KTt2YXIgbj1zKDEwMDU5NSksaT1zLm4obiksbz1zKDkzMjM2NSk7Y29uc3Qgcj0iZmVhdHVyZXRvZ2dsZV9zZWVkIjtmdW5jdGlvbiBhKGUpe3RyeXtjb25zdCB0PWkoKShlK2Z1bmN0aW9uKCl7aWYod2luZG93LnVzZXImJndpbmRvdy51c2VyLmlkKXJldHVybiB3aW5kb3cudXNlci5pZDtjb25zdCBlPW8uVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShyKTtpZihudWxsIT09ZSlyZXR1cm4gZTtjb25zdCB0PU1hdGguZmxvb3IoMWU2Kk1hdGgucmFuZG9tKCkpO3JldHVybiBvLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0ocixgJHt0fWApLHR9KCkpLHM9bmV3IERhdGFWaWV3KHQpO3JldHVybiBzLmdldFVpbnQzMigwLCEwKS80Mjk0OTY3Mjk2fWNhdGNoKGUpe3JldHVybi41fX1mdW5jdGlvbiBkKGUsdCl7cmV0dXJuIGEoZSk8PXR9fSwxNTk1MTMoZSx0LHMpe3MuZCh0LHtnZXRRdW90ZVNlc3Npb25JbnN0YW5jZTooKT0+YX0pO3ZhciBuPXMoOTI3NTkzKSxpPXMoNzU1NjI3KSxvPXMoMTUwMTUwKTtjb25zdCByPXt9O2Z1bmN0aW9uIGEoZT0iZnVsbCIpe3JldHVybiByW2VdfHxmdW5jdGlvbihlPSJmdWxsIix0KXtyW2VdPXR9KGUsbmV3IG4uUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIoe25hbWU6ZSxhcGk6d2luZG93LkNoYXJ0QXBpSW5zdGFuY2UsZmllbGRzOmRbZV0sZXh0ZW5zaW9uczp7Zm9ybWF0dGVyOmU9Pm5ldyB1KGUpLmZvcm1hdHRlcixzbmFwc2hvdDplPT5uZXcgYyhlKS5zbmFwc2hvdH19KSkscltlXX1jb25zdCBkPXtzaW1wbGU6WyJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJjaCIsImNocCIsImN1cnJlbmN5LWxvZ29pZCIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImJhc2VfY3VycmVuY3lfaWQiLCJjdXJyZW50X3Nlc3Npb24iLCJkZXNjcmlwdGlvbiIsImV4Y2hhbmdlIiwiZm9ybWF0IiwiZnJhY3Rpb25hbCIsImlzX3RyYWRhYmxlIiwibGFuZ3VhZ2UiLCJsb2NhbF9kZXNjcmlwdGlvbiIsImxpc3RlZF9leGNoYW5nZSIsImxvZ29pZCIsImxwIiwibHBfdGltZSIsIm1pbm1vdiIsIm1pbm1vdmUyIiwib3JpZ2luYWxfbmFtZSIsInByaWNlc2NhbGUiLCJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIiwidXBkYXRlX21vZGUiLCJ2b2x1bWUiLCJ2YXJpYWJsZV90aWNrX3NpemUiLCJ2YWx1ZV91bml0X2lkIiwidW5pdF9pZCIsIm1lYXN1cmUiXX07ZC5zaW1wbGVEZXRhaWxlZD1bLi4uZC5zaW1wbGUsImFzayIsImJpZCIsImZ1bmRhbWVudGFscyIsImhpZ2hfcHJpY2UiLCJpc190cmFkYWJsZSIsImxvd19wcmljZSIsIm9wZW5fcHJpY2UiLCJwcmV2X2Nsb3NlX3ByaWNlIiwicmNoIiwicmNocCIsInJ0YyIsInJ0Y190aW1lIiwic3RhdHVzIiwiYmFzaWNfZXBzX25ldF9pbmNvbWUiLCJiZXRhXzFfeWVhciIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJpbmR1c3RyeSIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJzZWN0b3IiLCJ2b2x1bWUiLCJkaXZpZGVuZHNfeWllbGQiLCJ0aW1lem9uZSJdLGQuZnVsbD1bXSxkLndhdGNobGlzdD1bLi4uZC5zaW1wbGUsInJjaHAiLCJuY2hwIiwicnRjIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJkaXZpZGVuZHNfYXZhaWxhYmlsaXR5IiwiZmluYW5jaWFsc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiXSwKZC5wb3J0Zm9saW89WyJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJleGNoYW5nZSIsImxpc3RlZF9leGNoYW5nZSIsImRlc2NyaXB0aW9uIiwibG9jYWxfZGVzY3JpcHRpb24iLCJsYW5ndWFnZSIsInNlY3RvciIsInR5cGUiLCJ0eXBlc3BlY3MiLCJpbmR1c3RyeSIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImNoIiwiY2hwIiwibG9nbyIsImxvZ29pZCIsImN1cnJlbmN5LWxvZ29pZCIsImJhc2UtY3VycmVuY3ktbG9nb2lkIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImxwIiwiZnJhY3Rpb25hbCIsIm1pbm1vdiIsIm1pbm1vdmUyIiwicHJpY2VzY2FsZSIsInZvbHVtZSIsImF2ZXJhZ2Vfdm9sdW1lIiwibWFya2V0X2NhcF9jYWxjIiwibWFya2V0X2NhcF9iYXNpYyIsInRvdGFsX3JldmVudWUiLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwicHJpY2VfZWFybmluZ3NfdHRtIiwiYmV0YV8xX3llYXIiLCJkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnkiLCJkaXZpZGVuZHNfeWllbGQiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIiwicmF0ZXNfbWMiLCJyYXRlc19meSIsInJhdGVzX3R0bSIsImZvcm1hdCIsInZhbHVlX3VuaXRfaWQiLCJ1bml0X2lkIiwibWVhc3VyZSJdLGQubm90ZXM9WyJzaG9ydF9uYW1lIiwicHJvX25hbWUiLCJsb2dvaWQiLCJjdXJyZW5jeS1sb2dvaWQiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJzeW1ib2wtcHJpbWFyeW5hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIl0sZC5lc3RpbWF0ZXM9WyJmdW5kYW1lbnRhbF9kYXRhIiwidHlwZSIsInR5cGVzcGVjcyIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X3N5bWJvbF9jdXJyZW5jeV9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9hbGlnbmVkX2RhdGUiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfY2FsZW5kYXJfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIl0sZC5lY29ub21pYz1bInJlZmVyZW5jZS1sYXN0LXBlcmlvZCIsImxwIiwiY3VycmVuY3lfY29kZSIsInZhbHVlX3VuaXRfaWQiLCJ1bml0X2lkIiwibWVhc3VyZSJdLGQub3B0aW9ucz1bImFzayIsImJpZCIsImxwIiwidm9sdW1lIiwiY2giLCJjaHAiXTtjbGFzcyB1e2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Zvcm1hdHRlclZhbHVlc0NhY2hlPXt9LHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzPXt9LHRoaXMuZm9ybWF0dGVyPShlLHQpPT57aWYodGhpcy5fd2FpdGluZ0ZvckZvcm1hdHRlcnNbZV0pcmV0dXJuIHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdO2Z1bmN0aW9uIHMoZSl7Y29uc3Qgcz10JiYhZS5mcmFjdGlvbmFsPzE6ZS5taW5tb3Y7cmV0dXJuIG5ldyBpLlByaWNlRm9ybWF0dGVyKHtwcmljZVNjYWxlOmUucHJpY2VzY2FsZSxtaW5Nb3ZlOnMsZnJhY3Rpb25hbDplLmZyYWN0aW9uYWwsbWluTW92ZTI6ZS5taW5tb3ZlMn0pfWNvbnN0IG49bmV3IFByb21pc2UoKCh0LG4pPT57aWYodGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV0pdChzKHRoaXMuX2Zvcm1hdHRlclZhbHVlc0NhY2hlW2VdKSk7ZWxzZXtjb25zdCBpPSgwLG8uZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUoaSxbZV0sKG89PnsiZXJyb3IiPT09by5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1udWxsLG4oIlF1b3RlcyBzbmFwc2hvdCBpcyBub3QgcmVjZWl2ZWQiKSksZnVuY3Rpb24oZSl7cmV0dXJuIGUmJm51bGwhPWUucHJpY2VzY2FsZSYmbnVsbCE9ZS5taW5tb3Z9KG8udmFsdWVzKSYmKHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdPW51bGwsdGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV09by52YWx1ZXMsdChzKG8udmFsdWVzKSksdGhpcy5fbXVsdGlwbGV4ZXIudW5zdWJzY3JpYmUoaSxlKSl9KSl9fSkpO3JldHVybiB0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1uLG59LHRoaXMuX211bHRpcGxleGVyPWV9fWNsYXNzIGN7Y29uc3RydWN0b3IoZSl7dGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZT17fSx0aGlzLl93YWl0aW5nRm9yU25hcHNob3Q9e30sdGhpcy5zbmFwc2hvdD1lPT57aWYodGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdKXJldHVybiB0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV07Y29uc3QgdD1uZXcgUHJvbWlzZSgoKHQscyk9PntpZih0aGlzLl9zbmFwc2hvdFZhbHVlc0NhY2hlW2VdKXQodGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZVtlXSk7ZWxzZXtjb25zdCBuPSgwLG8uZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUobixbZV0sKGk9PnsiZXJyb3IiPT09aS5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV09bnVsbCxzKCJRdW90ZXMgc25hcHNob3QgaXMgbm90IHJlY2VpdmVkIikpO2NvbnN0IG89aS52YWx1ZXM7byYmby5taW5tb3YmJm8ucHJpY2VzY2FsZSYmby5kZXNjcmlwdGlvbiYmKHRoaXMuX3dhaXRpbmdGb3JTbmFwc2hvdFtlXT1udWxsLHRoaXMuX3NuYXBzaG90VmFsdWVzQ2FjaGVbZV09byx0KG8pLHRoaXMuX211bHRpcGxleGVyLnVuc3Vic2NyaWJlKG4sZSkpfSkpfX0pKTtyZXR1cm4gdGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdPXQsdH0sdGhpcy5fbXVsdGlwbGV4ZXI9ZX19InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih3aW5kb3cuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2U9YSl9LDUzNTMwKGUsdCxzKXtzLmQodCx7Z2V0TWluVGlja0RhdGE6KCk9PmQsbWFrZVZhcmlhYmxlTWluVGlja0RhdGE6KCk9PmN9KTt2YXIgbj1zKDcxMjc0NSksaT1zKDYwMTg0MSksbz1zKDUzNDQ0MCkscj1zKDY0MDc0NCk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gZT8oMCxuLkJpZykoZS5taW5Nb3ZlKS5kaXYoZS5wcmljZVNjYWxlKS50b051bWJlcigpOk5hTn1mdW5jdGlvbiBkKGUpe2NvbnN0e21pblRpY2s6dCxwcmljZTpzLHZhcmlhYmxlTWluVGlja0RhdGE6bixzaG91bGRDaGVja0ZvckVxdWFsaXR5Om99PWUscj0oMCwKaS5pc051bWJlcikodCk/dSh0KTp0O3JldHVybiB2b2lkIDA9PT1uP3I6ZnVuY3Rpb24oZSx0LHM9ITEpe2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtpZihlPHRbbl0ucHJpY2UpcmV0dXJuIHRbbl0ubWluVGljaztpZihzJiZlPT09dFtuXS5wcmljZSlyZXR1cm4gdFtuXS5taW5UaWNrfXJldHVybiB0W3QubGVuZ3RoLTFdLm1pblRpY2t9KHMsbixvKX1mdW5jdGlvbiB1KGUpe2NvbnN0IHQ9KDAsby5udW1PZkRlY2ltYWxQbGFjZXMpKGUpLHM9TWF0aC5wb3coMTAsdCk7cmV0dXJue3ByaWNlU2NhbGU6cyxtaW5Nb3ZlOigwLG4uQmlnKShlKS5tdWwocykudG9OdW1iZXIoKX19ZnVuY3Rpb24gYyhlLHQpe2NvbnN0IHM9W3ttaW5UaWNrOigwLGkuaXNOdW1iZXIpKGUpP3UoZSk6ZSxwcmljZToxLzAsbWF4SW5kZXg6MS8wfV07dHJ5e2NvbnN0IGU9dC5zcGxpdCgiICIpLm1hcCgoKGUsdCk9PigwLHIuaXNFdmVuKSh0KT9mdW5jdGlvbihlKXtjb25zdCB0PU51bWJlcihlKTtpZihOdW1iZXIuaXNGaW5pdGUodCkpcmV0dXJuIHUodCk7e2NvbnN0IHQ9ZS5zcGxpdCgiLyIpO2lmKHQubGVuZ3RoPDJ8fHQubGVuZ3RoPjMpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIG1pbnRpY2s6ICR7ZX1gKTtjb25zdCBzPU51bWJlcih0WzFdKSxuPU51bWJlcih0WzBdKTtpZighTnVtYmVyLmlzRmluaXRlKHMpfHwhTnVtYmVyLmlzRmluaXRlKG4pKXRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBtaW50aWNrOiAke2V9YCk7Y29uc3QgaT0zPT09dC5sZW5ndGg/TnVtYmVyKHRbMl0pOnZvaWQgMDtpZih2b2lkIDAhPT1pJiYhTnVtYmVyLmlzRmluaXRlKGkpKXRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBtaW50aWNrOiAke2V9YCk7Y29uc3Qgbz17cHJpY2VTY2FsZTpzLG1pbk1vdmU6bn07cmV0dXJuIHZvaWQgMCE9PWkmJihvLm1pbk1vdmUyPWkpLG99fShlKTpmdW5jdGlvbihlKXtjb25zdCB0PU51bWJlcihlKTtpZihOdW1iZXIuaXNOYU4odCkpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIHByaWNlIGxpbWl0OiAke2V9YCk7cmV0dXJuIHR9KGUpKSk7aWYoKDAsci5pc0V2ZW4pKGUubGVuZ3RoKSl0aHJvdyBuZXcgRXJyb3IoIlRoZW1lIG11c3Qgbm90IGJlIGV2ZW50IG51bWJlciBvZiBlbGVtZW50cyIpO2NvbnN0IHM9W107Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kz0yKXtjb25zdCBpPWVbdCsxXT8/MS8wLG89c1tzLmxlbmd0aC0xXT8ucHJpY2U/PzAscj1zW3MubGVuZ3RoLTFdPy5tYXhJbmRleD8/MCxkPWk9PT0xLzA/MS8wOm5ldyBuLkJpZyhpKS5taW51cyhvKS5kaXYoYShlW3RdKSkucGx1cyhyKS50b051bWJlcigpO3MucHVzaCh7bWluVGljazplW3RdLHByaWNlOmksbWF4SW5kZXg6ZH0pfXJldHVybiBzfWNhdGNoe3JldHVybiBzfX19LDgyMjQzMShlLHQscyl7cy5kKHQse251bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvOigpPT5pfSk7dmFyIG49cyg2MDE4NDEpO2Z1bmN0aW9uIGkoZSx0KXtpZighKDAsbi5pc051bWJlcikoZSkpcmV0dXJuIm4vYSI7aWYoISgwLG4uaXNJbnRlZ2VyKSh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKHQ8MHx8dD4yNCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKDA9PT10KXJldHVybiBlLnRvU3RyaW5nKCk7cmV0dXJuKCIwMDAwMDAwMDAwMDAwMDAwMDAwMCIrZS50b1N0cmluZygpKS5zbGljZSgtdCl9fSwzNjc5NDYoZSx0LHMpe2Z1bmN0aW9uIG4oZSl7Y29uc3QgdD1mdW5jdGlvbihlKXtpZih2b2lkIDA9PT1lKXJldHVybiBudWxsO2NvbnN0IHQ9ZS5tYXRjaCgvKGRlbGF5ZWRfc3RyZWFtaW5nKV8oXGQrKS8pO3JldHVybiBudWxsPT09dD9udWxsOnttb2RlOnRbMV0saW50ZXJ2YWw6cGFyc2VJbnQodFsyXSl9fShlLnVwZGF0ZV9tb2RlKTtyZXR1cm4gbnVsbD09PXR8fChlLnVwZGF0ZV9tb2RlPXQubW9kZSxlLnVwZGF0ZV9tb2RlX3NlY29uZHM9dC5pbnRlcnZhbCksZX1zLmQodCx7bm9ybWFsaXplVXBkYXRlTW9kZTooKT0+bn0pfSw3MjI1NzEoZSx0LHMpe3ZhciBuPXMoMjAzNjgxKSxpPXMoNTQ3ODUxKSxvPXMoMjA2NjczKSxyPXMoMzA0MjIxKSxhPXMoODE3MzUwKSxkPXMoMTM4NjM4KSx1PXMoNjAxODQxKSxjPXMoMjMyMzY0KSxsPXMoMjIxMDYxKSxoPXMoNzgwOTc1KSxfPXMoNzczMDg4KSxtPXMoOTMwMjMxKSxmPXMoNjA2MTApLHA9cyg0MDM2KSxnPXMoNTIxMzMzKSx5PXMoMjE3NTI3KSxiPXMoNzQ2OTQ5KSx3PXMoNjYxODU4KSxDPXMoMzg0MDE3KSxrPXMoODg5NTE1KSx2PXMoNzY4NzYwKSxTPXMoNTg5NzQ5KSxNPXMoMTE2MzEwKSxSPXMoNDc5MzQpLFQ9cyg1NjkzOTgpLHE9cyg4NjIyMTMpLE49cygxMTczMTMpLEQ9cygxNTY4NTApLEk9cyg2NDA3NDQpLFA9cyg3ODMzNDApLEU9cyg5MzAwNDUpLEY9cyg0NjM0NDcpO2NvbnN0IHg9KDAsbC5nZXRMb2dnZXIpKCJDaGFydC5TdHVkaWVzLlN0dWR5TWV0YUluZm9SZXBvc2l0b3J5Iix7Y29sb3I6IiM2MDYifSksSD0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLlRyYWZmaWNNZXRlciIse21heENvdW50OjIwLGNvbG9yOiIjMjY4In0pLEE9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5Db3JlIix7Y29sb3I6IiM3MDYifSksQj0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse2NvbG9yOiIjNzA2In0pLEw9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5DaGFydFNlc3Npb24iLHtoaWdoUmF0ZTohMCxtYXhDb3VudDoxMDAsY29sb3I6IiM3MDYifSksTz0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse21heENvdW50OjAsY29sb3I6IiM3MDYifSksUT0oMCxsLmdldExvZ2dlcikoIkNoYXJ0QXBpLkNoYXJ0U2Vzc2lvbiIse21heENvdW50OjUwLGNvbG9yOiIjNzA2In0pLFY9KDAsbC5nZXRMb2dnZXIpKCJDaGFydEFwaS5RdW90ZVNlc3Npb24iLHttYXhDb3VudDo1MCxjb2xvcjoiIzY2MCJ9KSwkPSgwLGwuZ2V0TG9nZ2VyKSgiQ2hhcnRBcGkuUXVvdGVTZXNzaW9uIix7aGlnaFJhdGU6ITAsbWF4Q291bnQ6MTAsY29sb3I6IiM2NjAifSksVT0hKDAsCk4uaXNPbk1vYmlsZUFwcFBhZ2UpKCJhbnkiKSxXPSgwLFQuaXNGZWF0dXJlRW5hYmxlZCkoImJyb2tlcl9pZF9zZXNzaW9uIiksaj0oMCxULmlzRmVhdHVyZUVuYWJsZWQpKCJjaGVja19hdXRoX3Rva2VuX2V4cGlyYXRpb25fb25fZXZlcnlfcmVxdWVzdCIpO2xldCB6PSExLEo9ITEsRz0hMTtjb25zdCBZPVsiIiwiS0IiLCJNQiIsIkdCIiwiVEIiXTtmdW5jdGlvbiBLKGUpe2lmKDA9PT1lKXJldHVybiIwIjtjb25zdCB0PSgwLEkudG9JbnQpKE1hdGguZmxvb3IoTWF0aC5sb2coZSkvTWF0aC5sb2coMTAyNCkpKTtyZXR1cm4oZS9NYXRoLnBvdygxMDI0LHQpKS50b0ZpeGVkKDIpK1lbdF19ZnVuY3Rpb24gWihlLHQpe3JldHVybmAke2V9X18ke3R9YH1mdW5jdGlvbiBYKGUsdCxzKXtjb25zdCBuPXRbc10/PzA7dFtzXT1uK2V9Y29uc3QgZWU9WC5iaW5kKG51bGwsMSksdGU9WC5iaW5kKG51bGwsLTEpLHNlPSgwLG0uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpPyJzdHVkaWVzX21ldGFkYXRhX3dpZGdldCI6InN0dWRpZXNfbWV0YWRhdGEiLG5lPSIvY2hhcnQtYXBpL3Byb19oYXNoIixpZT0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKT8iL2NoYXJ0LWFwaS9zdHVkaWVzX21ldGFkYXRhX3dpZGdldCI6Ii9jaGFydC1hcGkvc3R1ZGllc19tZXRhZGF0YSI7bGV0IG9lPW51bGw7ZnVuY3Rpb24gcmUoKXtpZihudWxsPT09b2Upe2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbGlua1tyZWx+PSJjb252ZXJzaW9ucy1jb25maWciXScpLHQ9bmV3IFVSTCgoMCxkLmVuc3VyZU5vdE51bGwpKGUpLmhyZWYpO29lPSgwLEMuZmV0Y2gpKHQudG9TdHJpbmcoKSx7bWV0aG9kOiJHRVQifSkudGhlbigoZT0+e2lmKCFlLm9rKXRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGxvYWQgY29udmVyc2lvbnMgY29uZmlnIGZyb20gJHtlLnVybH0gd2l0aCBzdGF0dXMgJHtlLnN0YXR1c30gYW5kIHN0YXR1c1RleHQgJHtlLnN0YXR1c1RleHR9LmApO3JldHVybiBlLmpzb24oKX0pKS50aGVuKChlPT57Y29uc3QgdD0oMCxxLmdldExvZ29VcmxSZXNvbHZlcikoKTtyZXR1cm4gZS5jdXJyZW5jaWVzLmZvckVhY2goKGU9Pnt2b2lkIDAhPT1lLmxvZ29pZCYmKGUubG9nb1VybD10LmdldFN5bWJvbExvZ29VcmwoZS5sb2dvaWQscS5Mb2dvU2l6ZS5NZWRpdW0pKX0pKSxlfSkpfXJldHVybiBvZX1sZXQgYWU9bnVsbDtjbGFzcyBkZXtjb25zdHJ1Y3RvcihlKXt0aGlzLnNlc3Npb25pZD1udWxsLHRoaXMuX2JhbkluZm89bmV3IGMuV2F0Y2hlZFZhbHVlKG51bGwpLHRoaXMuX2lzQXV0aFRva2VuTG9hZGVkPSExLHRoaXMuX2F1dGhUb2tlbkRmZD1udWxsLHRoaXMuX3NlcnZlclRpbWVCYXNlUG9pbnQ9RGF0ZS5ub3coKS1wZXJmb3JtYW5jZS5ub3coKSx0aGlzLl9pbml0Q2FjaGVQcm9taXNlPSgwLE0uY3JlYXRlSnNvblNlcmlhbGl6YWJsZUNhY2hlKSgiVFZDaGFydEFwaSIpLHRoaXMuX3RyYWZmaWNTdGF0cz17dG90YWw6MCxzaW5jZUNvbm5lY3Q6MCxsYXN0Q2h1bms6MH0sdGhpcy5fbG93UXVhbGl0eUVuYWJsZWQ9ITEsdGhpcy5fYnJva2VySWQ9IiIsdGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQ9MCx0aGlzLl9tb2RpZnlTdHVkeU1hcD1uZXcgTWFwLHRoaXMuX2Rpc2Nvbm5lY3RDb3VudD0wLHRoaXMuX2lzQ29ubmVjdGVkPSExLHRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlPW51bGwsdGhpcy5fZGF0YUhhbmRsZU1vZHVsZT1uZXcgRS5KU09ORGF0YUhhbmRsZXIsdGhpcy5fc2Vzc2lvbnM9e30sdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnM9e30sdGhpcy5fcGVuZGluZ01lc3NhZ2VzUXVldWU9W10sdGhpcy5fbG9hZE5ld0JhcnM9ITEsdGhpcy5fbWV0YWRhdGFSZXF1ZXN0TmV4dE51bWJlcj0xLHRoaXMuX2Z1bmRhbWVudGFsQ291bnRlcj17fSx0aGlzLl9zdHVkeUNvdW50ZXI9e30sdGhpcy5fY2hpbGRTdHVkeUNvdW50ZXI9e30sdGhpcy5fc3R1ZHlTcGVjcz1uZXcgTWFwLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkPW5ldyBjLldhdGNoZWRWYWx1ZSghMSksdGhpcy5fc2VudE1ldGhvZHNDb3VudGVycz1uZXcgTWFwLHRoaXMuX3JlY2VpdmVkTWV0aG9kc0NvdW50ZXJzPW5ldyBNYXAsdGhpcy5fcmVxdWVzdERhdGFQcm9ibGVtc1Byb21pc2U9bnVsbCx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uPWUsdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5vblJlY29ubmVjdCh0aGlzLl9iaW5kU29ja2V0RXZlbnRzLmJpbmQodGhpcykpLHRoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24uc2V0TG9nZ2VyKEEsbC5nZXRMb2dIaXN0b3J5KSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLnNldFRlbGVtZXRyeShELnRlbGVtZXRyeSksdGhpcy5fYmluZFNvY2tldEV2ZW50cygpLHRoaXMuX2lzTm9uQ291bnRlZFN0dWR5PSgpPT4hMCx3aW5kb3c/LlRyYWRpbmdWaWV3Py5vbkNoYXJ0UGFnZXx8dGhpcy5fZW5hYmxlTG93UXVhbGl0eU1vZGUoKSxzZXRJbnRlcnZhbCgoKCk9PntILmxvZ05vcm1hbCgiTGFzdCAzMCBzZWNvbmRzOiIrSyh0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rKSsiIFNpbmNlIGxhc3QgY29ubmVjdDoiK0sodGhpcy5fdHJhZmZpY1N0YXRzLnNpbmNlQ29ubmVjdCkrIiBUb3RhbCB0cmFmZmljOiIrSyh0aGlzLl90cmFmZmljU3RhdHMudG90YWwpKSx0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rPTB9KSwzZTQpLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkLnN1YnNjcmliZSgoZT0+e2UmJnRoaXMuZGlzY29ubmVjdCgpfSkpfWNvbm5lY3QoZSl7dGhpcy5fY29ubmVjdE9ubHlPcHRpb25zPWUsdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5pc0Nvbm5lY3RlZCgpfHx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmlzQ29ubmVjdGluZygpfHx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmNvbm5lY3QoKX1kaXNjb25uZWN0KCl7dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5kaXNjb25uZWN0KCl9c2VudE1ldGhvZHNDb3VudGVycygpe3JldHVybiB0aGlzLl9zZW50TWV0aG9kc0NvdW50ZXJzfXJlY2VpdmVkTWV0aG9kc0NvdW50ZXJzKCl7CnJldHVybiB0aGlzLl9yZWNlaXZlZE1ldGhvZHNDb3VudGVyc31kZWZhdWx0UmVzb2x1dGlvbnMoKXtyZXR1cm4oMCxnLmdldERlZmF1bHRSZXNvbHV0aW9ucykoKX1hdmFpbGFibGVDdXJyZW5jaWVzKCl7cmV0dXJuIHJlKCkudGhlbigoZT0+ZS5jdXJyZW5jaWVzKSl9YXZhaWxhYmxlVW5pdHMoKXtyZXR1cm4gcmUoKS50aGVuKChlPT57Y29uc3QgdD17fTtmb3IoY29uc3QgcyBvZiBlLnVuaXRzKXRbcy50eXBlXXx8KHRbcy50eXBlXT1bXSksdFtzLnR5cGVdLnB1c2gocyk7cmV0dXJuIHR9KSl9YXN5bmMgYXZhaWxhYmxlTWV0cmljcygpe3JldHVybiBmdW5jdGlvbigpe2lmKG51bGw9PT1hZSl7Y29uc3QgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdsaW5rW3JlbH49Im1ldHJpY3MtY29uZmlnIl0nKSx0PW5ldyBVUkwoKDAsZC5lbnN1cmVOb3ROdWxsKShlKS5ocmVmKTthZT0oMCxDLmZldGNoKSh0LnRvU3RyaW5nKCkse21ldGhvZDoiR0VUIn0pLnRoZW4oKGFzeW5jIGU9PntpZighZS5vayl0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkIG1ldHJpY3MgY29uZmlnIGZyb20gJHtlLnVybH0gd2l0aCBzdGF0dXMgJHtlLnN0YXR1c30gYW5kIHN0YXR1c1RleHQgJHtlLnN0YXR1c1RleHR9LmApO2NvbnN0IHQ9YXdhaXQgZS5qc29uKCk7cmV0dXJuIHQubWV0cmljc19mdWxsX25hbWU/LmZvckVhY2goKGU9Pntjb25zdCBzPXQubWV0cmljcy5maW5kKCh0PT50LmlkPT09ZS5pZCkpO3MmJihzLmRlc2NyaXB0aW9uPWUubmFtZSl9KSksdH0pKX1yZXR1cm4gYWV9KCkudGhlbigoZT0+ZS5tZXRyaWNzKSl9YXZhaWxhYmxlUHJpY2VTb3VyY2VzKCl7cmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSl9c3VwcG9ydGVkU3ltYm9sc1R5cGVzKCl7Y29uc3QgZT13aW5kb3cuVHJhZGluZ1ZpZXc/LndpZGdldEN1c3RvbWVyPz8iIjtyZXR1cm4iYm92ZXNwYSI9PT1lP3cuZmlsdGVyKChlPT5bIiIsInN0b2NrIiwiZnV0dXJlcyIsImluZGV4Il0uaW5jbHVkZXMoZS52YWx1ZSkpKToiY21lIj09PWU/dy5maWx0ZXIoKGU9PmUudmFsdWUhPT15LnR5cGVzLlFVQU5ETCkpOnd9c3ltYm9sc0dyb3VwaW5nKCl7cmV0dXJue2Z1dHVyZXM6L14oLis/KShbMTJdIXxcd1xkezR9KT8kL319Y29ubmVjdGVkKCl7cmV0dXJuISF0aGlzLl9pc0Nvbm5lY3RlZH1hdXRoVG9rZW5NYW5hZ2VyKCl7cmV0dXJuKDAsZC5lbnN1cmVEZWZpbmVkKSh0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyKX1jcmVhdGVTZXNzaW9uKGUsdCl7dGhpcy5fc2Vzc2lvbnNbZV09dCx0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXT17fSx0aGlzLmNvbm5lY3RlZCgpJiZ0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZCYmdC5vbk1lc3NhZ2Uoe21ldGhvZDpoLkNoYXJ0QXBpTWVzc2FnZU1ldGhvZC5Db25uZWN0ZWQscGFyYW1zOltdfSl9cmVtb3ZlU2Vzc2lvbihlKXtkZWxldGUgdGhpcy5fc2Vzc2lvbnNbZV0sZGVsZXRlIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdfWRpc2Nvbm5lY3RDb3VudCgpe3JldHVybiB0aGlzLl9kaXNjb25uZWN0Q291bnR8fDB9Z2V0UGluZ0luZm8oKXtyZXR1cm4gdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRQaW5nSW5mbygpfWNvbm5lY3Rpb25CYW5JbmZvKCl7cmV0dXJuIHRoaXMuX2JhbkluZm8ucmVhZG9ubHkoKX1jb25uZWN0aW9uc0xpbWl0UmVhY2hlZCgpe3JldHVybiB0aGlzLl9jb25uZWN0aW9uc0xpbWl0UmVhY2hlZC5yZWFkb25seSgpfXNlcnZlclRpbWUoKXtyZXR1cm4gTWF0aC5yb3VuZCh0aGlzLl9zZXJ2ZXJUaW1lQmFzZVBvaW50K3BlcmZvcm1hbmNlLm5vdygpKX1jb21wZW5zYXRlQ29ubmVjdGlvbkxhZyhlKXtjb25zdCB0PXRoaXMuc2VydmVyVGltZSgpLHM9TWF0aC5mbG9vcihlLXQpO3M+MCYmKHRoaXMuX3NlcnZlclRpbWVCYXNlUG9pbnQrPXMpfXNldEJyb2tlcihlKXtyZXR1cm4gZT09PXRoaXMuX2Jyb2tlcklkfHwodGhpcy5fYnJva2VySWQ9ZSx0aGlzLl9zZW5kQnJva2VySWRUb1Nlc3Npb24odGhpcy5fYnJva2VySWQpKX1jaGFydENyZWF0ZVNlc3Npb24oZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoImNoYXJ0X2NyZWF0ZV9zZXNzaW9uIixbZSx0XSl9Y2hhcnREZWxldGVTZXNzaW9uKGUpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiY2hhcnRfZGVsZXRlX3Nlc3Npb24iLFtlXSl9c3dpdGNoVGltZXpvbmUoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInN3aXRjaF90aW1lem9uZSIsW2UsdF0pfXJlc29sdmVTeW1ib2woZSx0LHMsbil7cmV0dXJuIEQudGVsZW1ldHJ5LnRpbWVDb3VudGVycy5zZXJpZXNbInJlc29sdmVfc3ltYm9sXyIrZV09d2luZG93LnBlcmZvcm1hbmNlLm5vdygpLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKG4sdCwhMCksdGhpcy5fc2VuZFJlcXVlc3QoInJlc29sdmVfc3ltYm9sIixbZSx0LHNdKX1yZXF1ZXN0Rmlyc3RCYXJUaW1lKGUsdCxzLG4pe3JldHVybiB0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhuLHQsITApLHRoaXMuX3NlbmRSZXF1ZXN0KCJnZXRfZmlyc3RfYmFyX3RpbWUiLFtlLHQsc10pfWNyZWF0ZVNlcmllcyhlLHQscyxuLGksbyxyLGEpe0QudGVsZW1ldHJ5LnRpbWVDb3VudGVycy5zZXJpZXMubWFya3MucHVzaCgiY3JlYXRlX3Nlcmllc18iK2UpLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKGEsdCk7Y29uc3QgZD1udWxsPT09cj8iIjooMCxfLmNvbnZlcnRUaW1lRnJhbWVUb1N0cikociwhMCk7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfc2VyaWVzIixbZSx0LHMsbixpLG8sZF0pfXJlbW92ZVNlcmllcyhlLHQpe3JldHVybiBkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9zZXJpZXMiLFtlLHRdKX1tb2RpZnlTZXJpZXMoZSx0LHMsbixpLG8scixhKXt0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhhLHQpO2NvbnN0IGQ9bnVsbD09PXI/IiI6KDAsCl8uY29udmVydFRpbWVGcmFtZVRvU3RyKShyLCEwKTtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoIm1vZGlmeV9zZXJpZXMiLFtlLHQscyxuLGksZF0pfWdldFN0dWR5Q291bnRlcihlKXtyZXR1cm4gdGhpcy5fc3R1ZHlDb3VudGVyW2VdPz8wfWdldEZ1bmRhbWVudGFsQ291bnRlcihlKXtyZXR1cm4gdGhpcy5fZnVuZGFtZW50YWxDb3VudGVyW2VdPz8wfWdldENoaWxkU3R1ZHlDb3VudGVyKGUpe3JldHVybiB0aGlzLl9jaGlsZFN0dWR5Q291bnRlcltlXT8/MH1yZXF1ZXN0TW9yZURhdGEoZSx0LHMsbil7aWYodm9pZCAwPT09c3x8dm9pZCAwPT09bil0aHJvdyBuZXcgRXJyb3IoInVuc3VwcG9ydGVkIHJlcXVlc3QgdG8gbG9hZCBtb3JlIGRhdGEsIGJhcnM9IitzKTtjb25zdCBpPXQ7cmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW2ldPW5ldyBGLkhhbmRsZXJJbmZvKG4saSksdGhpcy5fc2VuZFJlcXVlc3QoInJlcXVlc3RfbW9yZV9kYXRhIixbZSxpLHNdKX1yZXF1ZXN0TW9yZVRpY2ttYXJrcyhlLHQscyxuKXtyZXR1cm4gbiYmKHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKG4sdCkpLHRoaXMuX3NlbmRSZXF1ZXN0KCJyZXF1ZXN0X21vcmVfdGlja21hcmtzIixbZSx0LHNdKX1zZXRGdXR1cmVUaWNrbWFya3NNb2RlKGUsdCl7dGhpcy5fc2VuZFJlcXVlc3QoInNldF9mdXR1cmVfdGlja21hcmtzX21vZGUiLFtlLHRdKX1yZXF1ZXN0RGF0YVByb2JsZW1zKCl7cmV0dXJuIHRoaXMuX3JlcXVlc3REYXRhUHJvYmxlbXNQcm9taXNlfHwodGhpcy5fcmVxdWVzdERhdGFQcm9ibGVtc1Byb21pc2U9dGhpcy5jb25uZWN0RGZkLnRoZW4oKCgpPT5uZXcgUHJvbWlzZSgoKGUsdCk9Pnt0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VFcnJiYWNrPXQsdGhpcy5fc2VuZFJlcXVlc3QoInJlcXVlc3RfZGF0YV9wcm9ibGVtcyIsW10pP3RoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUNiPWU6dCgpfSkpKSkuZmluYWxseSgoKCk9Pnt0aGlzLl9yZXF1ZXN0RGF0YVByb2JsZW1zUHJvbWlzZT1udWxsfSkpKSx0aGlzLl9yZXF1ZXN0RGF0YVByb2JsZW1zUHJvbWlzZX1hc3luYyByZXF1ZXN0TWV0YWRhdGEoKXtyZXR1cm4gbnVsbD09PXRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlJiYodGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2U9KDAsdi5jcmVhdGVEZWZlcnJlZFByb21pc2UpKCksdGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2UucHJvbWlzZS5maW5hbGx5KCgoKT0+e3RoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlPW51bGx9KSksdGhpcy5fcmVxdWVzdE1ldGFkYXRhKCkpLHRoaXMuX21ldGFkYXRhRGVmZXJyZWRQcm9taXNlLnByb21pc2V9YWxsU3R1ZGllc01ldGFkYXRhKCl7dGhyb3cgbmV3IEVycm9yKCJUaGlzIG1ldGhvZCBpcyBub3QgaW1wbGVtZW50ZWQiKX1zZXRMb2FkTmV3KGUpe3RoaXMuX2xvYWROZXdCYXJzPSEhZX1zZXRJc05vbkNvdW50ZWRTdHVkeUZuKGUpe3RoaXMuX2lzTm9uQ291bnRlZFN0dWR5PWV9Y2FuQ3JlYXRlU3R1ZHkoZSx0LHMpe2NvbnN0e2lkOm4sY2hpbGQ6aSxmdW5kYW1lbnRhbDpvLGZvcmVjYXN0OnIsc3R1YlRpdGxlOmF9PXQsdT0oMCxkLmVuc3VyZU5vdE51bGwpKCgwLFIuZ2V0Q29uZmlnKSgiU1RVRFlfT05fU1RVRFkiKSkuY2hpbGRfbGltaXQ7aWYoaSYmKCEoMCxSLmVuYWJsZWQpKCJTVFVEWV9PTl9TVFVEWSIpfHwodGhpcy5fY2hpbGRTdHVkeUNvdW50ZXJbZV0/PzApPj11KSlyZXR1cm57c3VjY2VzczohMSxyZWFzb246ImNoaWxkIixsaW1pdFZhbHVlOnV9O2lmKHMpcmV0dXJue3N1Y2Nlc3M6ITB9O2lmKHImJiEoMCxSLmVuYWJsZWQpKCJGVU5EQU1FTlRBTFNfRk9SRUNBU1QiKSlyZXR1cm57c3VjY2VzczohMSxyZWFzb246ImZvcmVjYXN0IixzY3JpcHROYW1lOmF9O2NvbnN0IGM9KDAsZC5lbnN1cmVOb3ROdWxsKSgoMCxSLmdldENvbmZpZykoIkZVTkRBTUVOVEFMU19PTl9DSEFSVCIpKS5saW1pdDtpZihvJiYoISgwLFIuZW5hYmxlZCkoIkZVTkRBTUVOVEFMU19PTl9DSEFSVCIpfHx0aGlzLmdldEZ1bmRhbWVudGFsQ291bnRlcihlKT49YykpcmV0dXJue3N1Y2Nlc3M6ITEscmVhc29uOiJmdW5kYW1lbnRhbCIsbGltaXRWYWx1ZTpjfTtjb25zdCBsPSgwLGQuZW5zdXJlTm90TnVsbCkoKDAsUi5nZXRDb25maWcpKCJJTkRJQ0FUT1JTX09OX0NIQVJUIikpLmxpbWl0O3JldHVybiBvfHx0aGlzLl9pc05vbkNvdW50ZWRTdHVkeShuKXx8KDAsUi5lbmFibGVkKSgiSU5ESUNBVE9SU19PTl9DSEFSVCIpJiYhKHRoaXMuZ2V0U3R1ZHlDb3VudGVyKGUpPj1sKT97c3VjY2VzczohMH06e3N1Y2Nlc3M6ITEscmVhc29uOiJnZW5lcmFsIixsaW1pdFZhbHVlOmx9fWNyZWF0ZVN0dWR5KGUsdCxzLG4saSxvLHIsYSl7Y29uc3QgZD10aGlzLmNhbkNyZWF0ZVN0dWR5KGUsYSk7cmV0dXJuIGQuc3VjY2Vzc3x8ImNoaWxkIiE9PWQucmVhc29uPyh0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhyLHQpLHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfc3R1ZHkiLFtlLHQscyxuLGksb10pLGEuZnVuZGFtZW50YWw/ZWUodGhpcy5fZnVuZGFtZW50YWxDb3VudGVyLGUpOnRoaXMuX2lzTm9uQ291bnRlZFN0dWR5KGEuaWQpfHxlZSh0aGlzLl9zdHVkeUNvdW50ZXIsZSksYS5jaGlsZCYmZWUodGhpcy5fY2hpbGRTdHVkeUNvdW50ZXIsZSksdGhpcy5fc3R1ZHlTcGVjcy5zZXQoWihlLHQpLGEpLCEwKTooKDAsay5zaG93VG9vTWFueVN0dWRpZXNOb3RpY2UpKGQubGltaXRWYWx1ZSksITEpfW1vZGlmeVN0dWR5KGUsdCxzLG4sbyxyKXtYKHI9cj8/MCx0aGlzLl9jaGlsZFN0dWR5Q291bnRlcixlKSwwIT09ciYmKCgwLGQuZW5zdXJlRGVmaW5lZCkodGhpcy5fc3R1ZHlTcGVjcy5nZXQoWihlLHQpKSkuY2hpbGQ9cj4wKSx0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhvLHQpO2NvbnN0IGE9ZSt0O2lmKHRoaXMuX21vZGlmeVN0dWR5TWFwLmhhcyhhKSl7cmV0dXJuKDAsCmQuZW5zdXJlRGVmaW5lZCkodGhpcy5fbW9kaWZ5U3R1ZHlNYXAuZ2V0KGEpKShlLHQscyxuKT8/ITB9e2NvbnN0IG89KDAsaS5kZWZhdWx0KSgoKGUsdCxzLG4pPT50aGlzLl9zZW5kUmVxdWVzdCgibW9kaWZ5X3N0dWR5IixbZSx0LHMsbl0pKSw1MDAse21heFdhaXQ6NTUwfSk7cmV0dXJuIHRoaXMuX21vZGlmeVN0dWR5TWFwLnNldChhLG8pLG8oZSx0LHMsbik/PyEwfX1ub3RpZnlTdHVkeShlLHQscyxuKXtyZXR1cm4gQS5sb2dOb3JtYWwoYFNlbmQgbm90aWZ5X3N0dWR5LCBbJHtlfSwgJHt0fSwgJHtzfSwgJHtKU09OLnN0cmluZ2lmeShuKX1dYCksdGhpcy5fc2VuZFJlcXVlc3QoIm5vdGlmeV9zdHVkeSIsW2UsdCxzLEpTT04uc3RyaW5naWZ5KG4pXSl9cmVtb3ZlU3R1ZHkoZSx0KXtjb25zdCBzPWUrdDtkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fbW9kaWZ5U3R1ZHlNYXAuZ2V0KHMpPy5mbHVzaCgpO2NvbnN0IG49dGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9zdHVkeSIsW2UsdF0pO2lmKCExPT09bilyZXR1cm4hMTt0aGlzLl9tb2RpZnlTdHVkeU1hcC5kZWxldGUocyk7Y29uc3QgaT1aKGUsdCksbz0oMCxkLmVuc3VyZURlZmluZWQpKHRoaXMuX3N0dWR5U3BlY3MuZ2V0KGkpKTtyZXR1cm4gdGhpcy5fc3R1ZHlTcGVjcy5kZWxldGUoaSksby5mdW5kYW1lbnRhbD90ZSh0aGlzLl9mdW5kYW1lbnRhbENvdW50ZXIsZSk6dGhpcy5faXNOb25Db3VudGVkU3R1ZHkoby5pZCl8fHRlKHRoaXMuX3N0dWR5Q291bnRlcixlKSxvLmNoaWxkJiZ0ZSh0aGlzLl9jaGlsZFN0dWR5Q291bnRlcixlKSxufWNyZWF0ZVBvaW50c2V0KGUsdCxzLG4saSxvLHIpe3JldHVybiB0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XT1uZXcgRi5IYW5kbGVySW5mbyhyLHQpLHRoaXMuX3NlbmRSZXF1ZXN0KCJjcmVhdGVfcG9pbnRzZXQiLFtlLHQscyxuLGksb10pfW1vZGlmeVBvaW50c2V0KGUsdCxzLG4saSl7cmV0dXJuIHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzW2VdW3RdPW5ldyBGLkhhbmRsZXJJbmZvKGksdCksdGhpcy5fc2VuZFJlcXVlc3QoIm1vZGlmeV9wb2ludHNldCIsW2UsdCxzLG5dKX1yZW1vdmVQb2ludHNldChlLHQpe3JldHVybiBkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sdGhpcy5fc2VuZFJlcXVlc3QoInJlbW92ZV9wb2ludHNldCIsW2UsdF0pfWdldE1hcmtzKGUsdCxzLG4saSl7dGhyb3cgRXJyb3IoIlRoaXMgbWV0aG9kIGlzIG5vdCBpbXBsZW1lbnRlZCIpfWdldFRpbWVzY2FsZU1hcmtzKGUsdCxzLG4saSl7dGhyb3cgRXJyb3IoIlRoaXMgbWV0aG9kIGlzIG5vdCBpbXBsZW1lbnRlZCIpfXF1b3RlQ3JlYXRlU2Vzc2lvbihlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2NyZWF0ZV9zZXNzaW9uIixbZV0pfXF1b3RlRGVsZXRlU2Vzc2lvbihlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2RlbGV0ZV9zZXNzaW9uIixbZV0pfXF1b3RlQWRkU3ltYm9scyhlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgicXVvdGVfYWRkX3N5bWJvbHMiLFtlLHRdKX1xdW90ZVJlbW92ZVN5bWJvbHMoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX3JlbW92ZV9zeW1ib2xzIixbZSx0XSl9cXVvdGVGYXN0U3ltYm9scyhlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgicXVvdGVfZmFzdF9zeW1ib2xzIixbZSx0XSl9cXVvdGVTZXRGaWVsZHMoZSx0KXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX3NldF9maWVsZHMiLFtlLHRdKX1xdW90ZUhpYmVybmF0ZUFsbChlKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoInF1b3RlX2hpYmVybmF0ZV9hbGwiLFtlXSl9ZGVwdGhDcmVhdGVTZXNzaW9uKGUsdCxzKXtyZXR1cm4gdGhpcy5fc2VuZFJlcXVlc3QoImRlcHRoX2NyZWF0ZV9zZXNzaW9uIixbZSx0LHNdKX1kZXB0aERlbGV0ZVNlc3Npb24oZSl7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJkZXB0aF9kZWxldGVfc2Vzc2lvbiIsW2VdKX1kZXB0aFNldFN5bWJvbChlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiZGVwdGhfc2V0X3N5bWJvbCIsW2UsdF0pfWRlcHRoQ2xlYXJTeW1ib2woZSl7cmV0dXJuIHRoaXMuX3NlbmRSZXF1ZXN0KCJkZXB0aF9jbGVhcl9zeW1ib2wiLFtlXSl9ZGVwdGhTZXRTY2FsZShlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdCgiZGVwdGhfc2V0X3NjYWxlIixbZSx0XSl9dW5wYWNrKGUpe3JldHVybiB0aGlzLl9kYXRhSGFuZGxlTW9kdWxlLnVucGFjayhlKX1zZW5kUmVxdWVzdChlLHQpe3JldHVybiB0aGlzLl9zZW5kUmVxdWVzdChlLHQpfXNldFZpc2libGVUaW1lUmFuZ2UoKXt0aHJvdyBuZXcgRXJyb3IoInNldFZpc2libGVUaW1lUmFuZ2UgaXMgZGVwcmVjYXRlZCBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIil9X2luaXQoKXt0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVycz17fSx0aGlzLl9zdHVkeUNvdW50ZXI9e30sdGhpcy5fY2hpbGRTdHVkeUNvdW50ZXI9e30sdGhpcy5fZnVuZGFtZW50YWxDb3VudGVyPXt9LHRoaXMuX21vZGlmeVN0dWR5TWFwPW5ldyBNYXB9X2NoZWNrQXV0aFRva2VuRXhwaXJhdGlvbihlKXswPT09dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQmJnRoaXMuX2F1dGhUb2tlbk1hbmFnZXImJiF0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyLmN1cnJlbnRUb2tlbklzVmFsaWQoKSYmKEEubG9nSW5mbyhlKSx0aGlzLl9hdXRoVG9rZW5NYW5hZ2VyLnJlc2V0KCkpfV9zZW5kUmVxdWVzdChlLHQpe3JldHVybiBqJiZ0aGlzLl9jaGVja0F1dGhUb2tlbkV4cGlyYXRpb24oIkF1dGhUb2tlbiBpbnZhbGlkYXRpb24gZGV0ZWN0ZWQgb24gc2VuZGluZyBhIG1lc3NhZ2UsIHJlcXVlc3RpbmcgbmV3IHRva2VuIiksMCE9PXRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50Pyh0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZS5wdXNoKHttZXRob2Q6ZSxhcmdzOnR9KSwhMCk6dGhpcy5fc2VuZFJlcXVlc3RJbXBsKGUsdCl9X3NlbmRSZXF1ZXN0SW1wbChlLHQpewpjb25zdCBzPXRoaXMuX3NlbnRNZXRob2RzQ291bnRlcnMuZ2V0KGUpPz8wO3RoaXMuX3NlbnRNZXRob2RzQ291bnRlcnMuc2V0KGUscysxKTtjb25zdCBpPXRoaXMuX2RhdGFIYW5kbGVNb2R1bGVbZV0uYXBwbHkodGhpcy5fZGF0YUhhbmRsZU1vZHVsZSx0KSxkPXttOmUscDooMCxuLmRlZmF1bHQpKGkpfSxjPWQubS5pbmNsdWRlcygic3R1ZHkiKSYmZC5wWzVdO2MmJmZ1bmN0aW9uKGUpe2lmKCEoMCx1LmlzT2JqZWN0KShlKSlyZXR1cm4hMTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhlKSl7Y29uc3Qgcz1lW3RdO2lmKCEoKDAsdS5pc09iamVjdCkocyl8fCgwLHIuZGVmYXVsdCkocyl8fCgwLG8uZGVmYXVsdCkocyl8fCgwLGEuZGVmYXVsdCkocykpKXJldHVybiExfXJldHVybiEwfShjKSYmInRleHQiaW4gYyYmKGMudGV4dD1jLnRleHQuc2xpY2UoMCwxMCkpO2NvbnN0IGw9SlNPTi5zdHJpbmdpZnkoZCk7aWYoaS5sZW5ndGg+MCl7Y29uc3QgZT1pWzBdO2Uuc3RhcnRzV2l0aCgicXNfIik/Vi5sb2dOb3JtYWwoInNlbmQ6ICIrbCk6ZS5zdGFydHNXaXRoKCJjc18iKSYmQi5sb2dOb3JtYWwoInNlbmQ6ICIrbCw0MDk2KX1lbHNlIEEubG9nTm9ybWFsKCJzZW5kOiAiK2wpO2NvbnN0IGg9dGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5wcmVwYXJlRW5jb2RlTWVzc2FnZShlLGkpO3JldHVybiB0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLnNlbmQoaCl9X29uQ29ubmVjdCgpe2lmKHRoaXMuY29ubmVjdGVkKCkpcmV0dXJuO2lmKHRoaXMuX3RyYWZmaWNTdGF0cy5zaW5jZUNvbm5lY3Q9MCx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMSx0aGlzLl9jb25uZWN0T25seU9wdGlvbnM9dGhpcy5fY29ubmVjdE9ubHlPcHRpb25zfHx7fSx0aGlzLl9hdXRoVG9rZW5EZmQ9dGhpcy5fZ2V0QXV0aFRva2VuRGZkKHRoaXMuX2Nvbm5lY3RPbmx5T3B0aW9ucy50b2tlbkdyYWJTZXNzaW9uKSx0aGlzLl9jb25uZWN0T25seU9wdGlvbnM9e30sdGhpcy5zZXNzaW9uaWQ9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRTZXNzaW9uSWQoKSwhdGhpcy5zZXNzaW9uaWR8fHRoaXMuX2lzQ29ubmVjdGVkKXJldHVybjt0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZT1bXSx0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudD0wLHRoaXMuX3N0dWR5Q291bnRlcj17fSx0aGlzLl9jaGlsZFN0dWR5Q291bnRlcj17fSx0aGlzLl9mdW5kYW1lbnRhbENvdW50ZXI9e30sdGhpcy5fc3R1ZHlTcGVjcy5jbGVhcigpLHRoaXMuX2lzQ29ubmVjdGVkPSEwLHRoaXMuX2JhbkluZm8uc2V0VmFsdWUobnVsbCksdGhpcy5fY29ubmVjdGlvbnNMaW1pdFJlYWNoZWQuc2V0VmFsdWUoITEpO2NvbnN0IGU9SlNPTi5wYXJzZSh0aGlzLnNlc3Npb25pZCk7dGhpcy5fc2VuZExvd1F1YWxpdHlNb2RlSWZFbmFibGVkKCksdGhpcy5fbWV0YWRhdGFTZXJ2ZXJIYXNoPWUuc3R1ZGllc19tZXRhZGF0YV9oYXNofHxudWxsO2NvbnN0IHQ9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRDb25uZWN0aW9uRXN0YWJsaXNoZWQoKTt0cnl7dGhpcy5fc2VydmVyVGltZUJhc2VQb2ludD1NYXRoLnJvdW5kKGUudGltZXN0YW1wTXMtdCl9Y2F0Y2goZSl7dGhpcy5fc2VydmVyVGltZUJhc2VQb2ludD1EYXRlLm5vdygpLXBlcmZvcm1hbmNlLm5vdygpfWlmKEEubG9nSW5mbygiVGltZSBzaGlmdCB3aXRoIHNlcnZlcjogIit0aGlzLl9mb3JtYXRUaW1lKHRoaXMuc2VydmVyVGltZSgpLURhdGUubm93KCkpKSx0aGlzLl9hdXRoVG9rZW5EZmQpe3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50Kz0xLEEubG9nSW5mbygiV2FpdCBmb3IgYXV0aCB0b2tlbiBiZWZvcmUgc2VuZCBtZXNzYWdlcyIpO2NvbnN0IGU9dGhpcy5fYXV0aFRva2VuRGZkO2UudGhlbigodD0+e2lmKG51bGwhPT10aGlzLl9hdXRoVG9rZW5EZmQmJnRoaXMuX2F1dGhUb2tlbkRmZD09PWUpe2lmKEEubG9nTm9ybWFsKCJBdXRoIHRva2VuIHJlcXVlc3QgaXMgZmluaXNoZWQsIHRva2VuOiAiK0Jvb2xlYW4odCkpLHRoaXMuX2F1dGhUb2tlbkRmZD1udWxsLHQpe2NvbnN0IGU9W3ttZXRob2Q6InNldF9hdXRoX3Rva2VuIixhcmdzOlt0XX1dO2lmKFUpe2NvbnN0IHQ9d2luZG93LmluaXREYXRhJiZ3aW5kb3cuaW5pdERhdGEuY3VycmVudExvY2FsZUluZm87dCYmZS5wdXNoKHttZXRob2Q6InNldF9sb2NhbGUiLGFyZ3M6W3QuaXNvLHQuZmxhZy50b1VwcGVyQ2FzZSgpXX0pfXRoaXMuX3BlbmRpbmdNZXNzYWdlc1F1ZXVlLnVuc2hpZnQoLi4uZSl9dGhpcy5fb25TZW5kaW5nUXVldWVSZXF1ZXN0RmluaXNoZWQoKSx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMCx0aGlzLl9ub3RpZnlTZXNzaW9ucyh7bWV0aG9kOmguQ2hhcnRBcGlNZXNzYWdlTWV0aG9kLkNvbm5lY3RlZCxwYXJhbXM6W119KX1lbHNlIEEubG9nTm9ybWFsKCJDb21lcyBhdXRoIHRva2VuIGFmdGVyIHJlcXVlc3RpbmcgbmV3IHRva2VuIG9yIGFmdGVyIHNvY2tldCBkaXNjb25uZWN0ZWQiKX0pKS5jYXRjaCgoZT0+e0EubG9nTm9ybWFsKCgwLFMuZXJyb3JUb1N0cmluZykoZSkpfSkpfWVsc2UgQS5sb2dXYXJuKCJEZWZlcnJlZCBhdXRoIHRva2VuIG9iamVjdCBpcyBub3QgdmFsaWQiKSx0aGlzLl9pc0F1dGhUb2tlbkxvYWRlZD0hMDsiIiE9PXRoaXMuX2Jyb2tlcklkJiZ0aGlzLl9zZW5kQnJva2VySWRUb1Nlc3Npb24odGhpcy5fYnJva2VySWQpO2NvbnN0IHM9dGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5nZXRDb25uZWN0aW9uU3RhcnQoKTtELnRlbGVtZXRyeS5zZXRTZXNzaW9uSW5mbyh0aGlzLnNlc3Npb25pZCksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJ3ZWJzb2NrZXRfY29ubmVjdGVkIiksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJ3ZWJzb2NrZXRfY29ubmVjdGlvbl90aW1lX2ZyYW1lIix7dmFsdWU6dC1zfSksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWNvbm5lY3RfY291bnRfZnJhbWUiLHt2YWx1ZTp0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmdldFJlY29ubmVjdENvdW50KCl9KSwKRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWRpcmVjdF9jb3VudF9mcmFtZSIse3ZhbHVlOnRoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24uZ2V0UmVkaXJlY3RDb3VudCgpfSksenx8KHo9ITAsRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJiZWZvcmVfd2Vic29ja2V0X2Nvbm5lY3Rpb25fdGltZV9mcmFtZSIse3ZhbHVlOnN9KSksdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5yZXNldENvdW50ZXJzKCksY2xlYXJUaW1lb3V0KHRoaXMuX3RlbGVtZXRyeURpc2Nvbm5lY3RUaW1lb3V0KX1fZm9ybWF0VGltZShlKXtyZXR1cm5gJHsoZS8xZTMpLnRvRml4ZWQoMil9IHNlY29uZHMuYH1fZGlzcGF0Y2hOb3RpZmljYXRpb24oZSx0KXtpZigicmVxdWVzdF9kYXRhX3Byb2JsZW1zIj09PWUubWV0aG9kJiZ0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VDYilyZXR1cm4gdm9pZCB0aGlzLl9vbkRhdGFQcm9ibGVtc1Byb21pc2VDYihlLnBhcmFtcyk7aWYoZS5tZXRob2Q9PT1QLldlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2QuU3R1ZGllc01ldGFkYXRhJiZudWxsIT09dGhpcy5fbWV0YWRhdGFEZWZlcnJlZFByb21pc2UpcmV0dXJuIHZvaWQgdGhpcy5fcHJvY2Vzc2VkTWV0YWRhdGEoZSk7Y29uc3Qgcz1lLnBhcmFtcy5zaGlmdCgpO2lmKCF0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tzXSlyZXR1cm47aWYoInN5bWJvbF9yZXNvbHZlZCI9PT1lLm1ldGhvZCl7Y29uc3QgdD1lLnBhcmFtc1sxXS5mdWxsX25hbWU7RC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJzeW1ib2xfcmVzb2x2ZWQiLHtjb3VudDoxLGFkZGl0aW9uYWw6e3N5bWJvbDp0fX0pO2NvbnN0IG49RC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllc1sicmVzb2x2ZV9zeW1ib2xfIitzXTsibnVtYmVyIj09dHlwZW9mIG4mJkQudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgic3ltYm9sX3Jlc29sdmVfdGltZV9mcmFtZSIse3ZhbHVlOndpbmRvdy5wZXJmb3JtYW5jZS5ub3coKS1uLGFkZGl0aW9uYWw6e3N5bWJvbDp0fX0pfWlmKFsic2VyaWVzX2Vycm9yIiwic2VyaWVzX2NvbXBsZXRlZCJdLmluY2x1ZGVzKGUubWV0aG9kKSYmRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcy5sZW5ndGg+MCl7Y29uc3QgZT0iY3JlYXRlX3Nlcmllc18iK3MsdD1ELnRlbGVtZXRyeS50aW1lQ291bnRlcnMuc2VyaWVzLm1hcmtzLmluZGV4T2YoZSk7dD49MCYmRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcy5zcGxpY2UodCwxKX1HfHwic2VyaWVzX2Vycm9yIiE9PWUubWV0aG9kfHwoRz0hMCk7Y29uc3Qgbj10aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmdldENvbm5lY3Rpb25Fc3RhYmxpc2hlZCgpO2lmKG51bGwhPT1uJiYic2VyaWVzX2NvbXBsZXRlZCI9PT1lLm1ldGhvZCYmKEd8fChHPSEwLEQudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgiZmlyc3Rfc2VyaWVzX2Z1bGxfdGltZV9mcmFtZSIse3ZhbHVlOndpbmRvdy5wZXJmb3JtYW5jZS5ub3coKS1ufSksRC50ZWxlbWV0cnkudGltZUNvdW50ZXJzLnNlcmllcy5tYXJrcz1bXSksSnx8KEo9ITAsRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJwYWdlX2Z1bGxfbG9hZF90aW1lX2ZyYW1lIix7dmFsdWU6d2luZG93LnBlcmZvcm1hbmNlLm5vdygpfSkpKSxzLnN0YXJ0c1dpdGgoImNzXyIpKXtsZXQgcz0icmVjdjogIit0OyJkYXRhX3VwZGF0ZSI9PT1lLm1ldGhvZD8ocz0oMCxsLmlzSGlnaFJhdGVFbmFibGVkKSgpP3M6cy5zbGljZSgwLDUwMCksTC5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKSk6InN0dWR5X2xvYWRpbmciPT09ZS5tZXRob2Q/Ty5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKToidGlja21hcmtfdXBkYXRlIj09PWUubWV0aG9kP1EubG9nTm9ybWFsKHRoaXMuX2FwcGVuZER1cmF0aW9uKHMsZS50aW1lKSk6Qi5sb2dOb3JtYWwodGhpcy5fYXBwZW5kRHVyYXRpb24ocyxlLnRpbWUpKX1pZihzLnN0YXJ0c1dpdGgoInFzXyIpKXsoInF1b3RlX3N5bWJvbF9kYXRhIj09PWUubWV0aG9kPyQubG9nTm9ybWFsOlYubG9nTm9ybWFsKSgicmVjdjogIit0KX1zd2l0Y2goZS5tZXRob2Qpe2Nhc2UgUC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlRpbWVTY2FsZVVwZGF0ZTp7Y29uc3QgdD10aGlzLl9kYXRhSGFuZGxlTW9kdWxlLmdldFRpbWVzY2FsZU9iamVjdHMoZSksbj10aGlzLl9kYXRhSGFuZGxlTW9kdWxlLmdldFRpbWVzY2FsZUNoYW5nZXNldChlKSxpPXRoaXMuX2NvbnZlcnRUaW1lc2NhbGVSZXNwb25zZShuKTt0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2Uoe21ldGhvZDpQLldlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2QuVGltZVNjYWxlVXBkYXRlLHBhcmFtczppfSksdGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5wcmVwYXJlRGF0YVVwZGF0ZU9iamVjdHMocyx0LCgoZSx0LHMpPT57dGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihlLHQscyl9KSk7YnJlYWt9Y2FzZSJ0aWNrbWFya191cGRhdGUiOmNvbnN0IHQ9ey4uLnRoaXMuX2NvbnZlcnRUaW1lc2NhbGVSZXNwb25zZShlLnBhcmFtc1swXSksY2hhbmdlczpbXX07dGhpcy5fc2Vzc2lvbnNbc10ub25NZXNzYWdlKHttZXRob2Q6UC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlRpbWVTY2FsZVVwZGF0ZSxwYXJhbXM6dH0pO2JyZWFrO2Nhc2UgUC5XZWJjaGFydENoYXJ0U2Vzc2lvblJlc3BvbnNlTWV0aG9kLkRhdGFVcGRhdGU6e2NvbnN0IHQ9dGhpcy5fZGF0YUhhbmRsZU1vZHVsZS5nZXREYXRhVXBkYXRlT2JqZWN0cyhlKTt0aGlzLl9kYXRhSGFuZGxlTW9kdWxlLnByZXBhcmVEYXRhVXBkYXRlT2JqZWN0cyhzLHQsKChlLHQscyk9Pnt0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKGUsdCxzKX0pKTticmVha31jYXNlImluZGV4X3VwZGF0ZSI6Zm9yKGNvbnN0IHQgaW4gZS5wYXJhbXNbMF0paWYoZS5wYXJhbXNbMF0uaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IG49e21ldGhvZDoiaW5kZXhfdXBkYXRlIiwKcGFyYW1zOmUucGFyYW1zWzBdW3RdfTt0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKHMsdCxuKX1icmVhaztjYXNlIFAuV2ViY2hhcnRSZXNwb25zZU1ldGhvZC5Dcml0aWNhbEVycm9yOkEubG9nSW5mbyhuZXcgRGF0ZSsiIGNyaXRpY2FsX2Vycm9yIHNlc3Npb246Iit0aGlzLnNlc3Npb25pZCsiIHJlYXNvbjoiK2UucGFyYW1zWzBdKSxELnRlbGVtZXRyeS5zZW5kQ2hhcnRSZXBvcnQoImNyaXRpY2FsX2Vycm9yIiksdGhpcy5fc2Vzc2lvbnNbc10ub25NZXNzYWdlKHttZXRob2Q6UC5XZWJjaGFydFJlc3BvbnNlTWV0aG9kLkNyaXRpY2FsRXJyb3IscGFyYW1zOmUucGFyYW1zfSk7YnJlYWs7Y2FzZSJ0aW1lc2NhbGVfY29tcGxldGVkIjpjYXNlInF1b3RlX3N5bWJvbF9kYXRhIjpjYXNlInF1b3RlX2xpc3RfZmllbGRzIjpjYXNlInF1b3RlX2NvbXBsZXRlZCI6Y2FzZSJkZXB0aF9zeW1ib2xfZXJyb3IiOmNhc2UiZGVwdGhfc3ltYm9sX3N1Y2Nlc3MiOmNhc2UiZGQiOmNhc2UiZHB1IjpjYXNlImRlcHRoX2Jhcl9sYXN0X3ZhbHVlIjp0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2Uoe21ldGhvZDplLm1ldGhvZCxwYXJhbXM6ZS5wYXJhbXN9KTticmVhaztjYXNlImNsZWFyX2RhdGEiOmZvcihjb25zdCB0IGluIGUucGFyYW1zWzBdKWUucGFyYW1zWzBdLmhhc093blByb3BlcnR5KHQpJiZ0aGlzLl9pbnZva2VOb3RpZmljYXRpb25IYW5kbGVyKHMsdCx7bWV0aG9kOlAuV2ViY2hhcnRDaGFydFNlc3Npb25SZXNwb25zZU1ldGhvZC5DbGVhckRhdGEscGFyYW1zOmUucGFyYW1zWzBdW3RdfSk7YnJlYWs7Y2FzZSBQLldlYmNoYXJ0UmVwbGF5U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlJlcGxheVBvaW50OmNhc2UgUC5XZWJjaGFydFJlcGxheVNlc3Npb25SZXNwb25zZU1ldGhvZC5SZXBsYXlSZXNvbHV0aW9uczpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5RGF0YUVuZDpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5SW5zdGFuY2VJZDpjYXNlIFAuV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2QuUmVwbGF5RGVwdGg6Y2FzZSBQLldlYmNoYXJ0UmVwbGF5U2Vzc2lvblJlc3BvbnNlTWV0aG9kLlJlcGxheUVycm9yOmNhc2UgUC5XZWJjaGFydFJlcGxheVNlc3Npb25SZXNwb25zZU1ldGhvZC5SZXBsYXlPazp0aGlzLl9zZXNzaW9uc1tzXS5vbk1lc3NhZ2UoZSk7YnJlYWs7Y2FzZSJzZXJpZXNfdGltZWZyYW1lIjpjb25zdCBuPWUucGFyYW1zWzRdO2UucGFyYW1zWzRdPW51bGw9PW4/bnVsbDooMCxfLmNvbnZlcnRTdHJUb1RpbWVGcmFtZSkobiksdGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpO2JyZWFrO2Nhc2Uic3ltYm9sX3Jlc29sdmVkIjohZnVuY3Rpb24oZSl7aWYodm9pZCAwPT09ZS5jb3JyZWN0aW9ucyl7Y29uc3QgdD0oZS5zdWJzZXNzaW9ucz8/W10pLmZpbmQoKHQ9PnQuaWQ9PT1lLnN1YnNlc3Npb25faWQpKTt2b2lkIDAhPT10JiYoZS5jb3JyZWN0aW9ucz10WyJzZXNzaW9uLWNvcnJlY3Rpb24iXSl9fShlLnBhcmFtc1sxXSksdGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpO2JyZWFrO2RlZmF1bHQ6dGhpcy5faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihzLGUucGFyYW1zWzBdLGUpfX1fbm90aWZ5U2Vzc2lvbnMoZSl7Zm9yKGNvbnN0IHQgaW4gdGhpcy5fc2Vzc2lvbnMpaWYodGhpcy5fc2Vzc2lvbnMuaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IHM9dGhpcy5fc2Vzc2lvbnNbdF07ImZ1bmN0aW9uIj09dHlwZW9mIHMub25NZXNzYWdlJiZzLm9uTWVzc2FnZShlKX19X29uTWVzc2FnZShlKXtqJiZ0aGlzLl9jaGVja0F1dGhUb2tlbkV4cGlyYXRpb24oIkF1dGhUb2tlbiBpbnZhbGlkYXRpb24gZGV0ZWN0ZWQgb24gcmVjZWl2aW5nIGEgbWVzc2FnZSwgcmVxdWVzdGluZyBuZXcgdG9rZW4iKSx0aGlzLl9jYWxjVHJhZmZpY1N0YXRzKGUpO2NvbnN0IHQ9dGhpcy51bnBhY2soZSk7dGhpcy5fcmVjZWl2ZWRNZXRob2RzQ291bnRlcnMuc2V0KHQubWV0aG9kLCh0aGlzLl9yZWNlaXZlZE1ldGhvZHNDb3VudGVycy5nZXQodC5tZXRob2QpPz8wKSsxKSwidF9tcyJpbiB0JiYoMCxvLmRlZmF1bHQpKHQudF9tcykmJndpbmRvdy5DaGFydEFwaUluc3RhbmNlLmNvbXBlbnNhdGVDb25uZWN0aW9uTGFnKHQudF9tcyksInByb3RvY29sX3N3aXRjaGVkIiE9PXQubWV0aG9kPyJwcm90b2NvbF9lcnJvciIhPT10Lm1ldGhvZD90aGlzLl9kaXNwYXRjaE5vdGlmaWNhdGlvbih0LGUpOnRoaXMuX3Byb2Nlc3NQcm90b2NvbEVycm9yKHQpOkEubG9nRXJyb3IoIlVuZXhwZWN0ZWQgcHJvdG9jb2wgY2hhbmdpbmcgcmVxdWVzdCwgdHJ5IHNraXBwaW5nLiBSZXF1ZXN0ZWQgcHJvdG9jb2w6Iit0LnBhcmFtc1swXSl9YXN5bmMgX3Byb2Nlc3NlZE1ldGFkYXRhKGUpe2NvbnN0IHQ9KDAsZC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZSkscz1hd2FpdCB0aGlzLl9pbml0Q2FjaGVQcm9taXNlLGk9d2luZG93LnByby5oYXNoKCksbz0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKTt0cnl7YXdhaXQgcy5zZXRWYWx1ZShpZSwoMCxuLmRlZmF1bHQpKGUpKTtjb25zdCByPUFycmF5LmZyb20obmV3IFNldChlLnBhcmFtc1sxXS5tZXRhaW5mby5tYXAoKGU9PntyZXR1cm5gJHsodD0oMCxwLnBhcnNlSWRTdHJpbmcpKGUuaWQpKS5wYWNrYWdlSWR9LSR7dC52ZXJzaW9ufWA7dmFyIHR9KSkpKTtpZihBLmxvZ05vcm1hbChgVXBkYXRlZCBzdHVkaWVzX21ldGFkYXRhIGNhY2hlLCB1bmlxdWUgcGFja2FnZSBpZHM6ICR7ci5qb2luKCIsICIpfWApLCFvKXRyeXthd2FpdCBzLnNldFZhbHVlKG5lLCgwLG4uZGVmYXVsdCkoaSkpLEEubG9nTm9ybWFsKCJVcGRhdGVkIHByb19oYXNoIGNhY2hlIil9Y2F0Y2goZSl7dC5yZWplY3QoKSxBLmxvZ0Vycm9yKCJDYW5ub3QgdXBkYXRlIHByb19oYXNoIGNhY2hlLCByZWFzb246ICIrZSl9fWNhdGNoKGUpe3QucmVqZWN0KCksCkEubG9nRXJyb3IoIkNhbm5vdCB1cGRhdGUgc3R1ZGllc19tZXRhZGF0YSBjYWNoZSwgcmVhc29uOiAiK2UpfXQucmVzb2x2ZSgoMCxuLmRlZmF1bHQpKGUpKX1faW52b2tlTm90aWZpY2F0aW9uSGFuZGxlcihlLHQscyl7aWYodm9pZCAwPT09dClyZXR1cm47Y29uc3Qgbj10aGlzLl9ub3RpZmljYXRpb25IYW5kbGVyc1tlXVt0XTt2b2lkIDAhPT1uJiYobi5zaW5nbGVTaG90JiZkZWxldGUgdGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnNbZV1bdF0sbi5oYW5kbGVyPy4ocykpfV9jb252ZXJ0VGltZXNjYWxlUmVzcG9uc2UoZSl7cmV0dXJuIHRoaXMuX2RhdGFIYW5kbGVNb2R1bGUuY29udmVydFRpbWVzY2FsZVJlc3BvbnNlKGUpfV9hcHBlbmREdXJhdGlvbihlLHQpe3JldHVybiB0P2Ake2V9LCBkdXJhdGlvbjogJHt0aGlzLl9mb3JtYXRUaW1lKHRoaXMuc2VydmVyVGltZSgpLTFlMyp0KX1gOmV9YXN5bmMgX3JlcXVlc3RNZXRhZGF0YSgpe2NvbnN0IGU9dGhpcy5fbWFrZU5leHRSZXF1ZXN0SWQoKTt4LmxvZ05vcm1hbChgUmVxdWVzdGluZyBtZXRhaW5mbyAjJHtlfWApO2NvbnN0IHQ9KDAsZC5lbnN1cmVOb3ROdWxsKSh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZSkscz13aW5kb3cucHJvLGk9cy5oYXNoKCksbz0oMCxtLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKTtBLmxvZ05vcm1hbCgiUmVxdWVzdGluZyBwcm8gaGFzaCIpO3RyeXtjb25zdCByPWF3YWl0IHRoaXMuX2luaXRDYWNoZVByb21pc2U7YXdhaXQgci5taWdyYXRlVmFsdWUoInByb19oYXNoIixuZSksYXdhaXQgci5taWdyYXRlVmFsdWUoc2UsaWUpO2NvbnN0IGE9YXdhaXQgci5nZXRWYWx1ZShuZSk7aWYobnVsbCE9PWEmJmE9PT1pfHxvKXtBLmxvZ05vcm1hbCgiUHJvIGhhc2ggaGFzIG5vdCBjaGFuZ2VkLCByZXF1ZXN0aW5nIGZyb20gbG9jYWwiKTtjb25zdCBvPWF3YWl0IHIuZ2V0VmFsdWUoaWUpLGE9bnVsbCE9PW8mJm8ucGFyYW1zWzFdLmhhc2h8fG51bGw7aWYobnVsbD09PWF8fG51bGw9PT10aGlzLl9tZXRhZGF0YVNlcnZlckhhc2h8fHRoaXMuX21ldGFkYXRhU2VydmVySGFzaCE9PWEpQS5sb2dOb3JtYWwoYE1ldGFkYXRhIGhhc2ggaGFzIGNoYW5nZWQgKGNhY2hlZDogJyR7YX0nLCBzZXJ2ZXI6ICcke3RoaXMuX21ldGFkYXRhU2VydmVySGFzaH0nKWApLHRoaXMuX3JlcXVlc3RNZXRhZGF0YUZyb21TZXJ2ZXIoZSk7ZWxzZXtpZighcy5oYXNQYWNrYWdlKCJ0di12b2x1bWVieXByaWNlIil8fHZvaWQgMCE9PW8ucGFyYW1zWzFdLm1ldGFpbmZvLmZpbmQoKGU9PmUuaWQuaW5jbHVkZXMoIkB0di12b2x1bWVieXByaWNlIikpKSlyZXR1cm4gQS5sb2dOb3JtYWwoIlVzaW5nIHN0dWRpZXNfbWV0YWRhdGEgZnJvbSBicm93c2VyIGNhY2hlIiksdm9pZCB0LnJlc29sdmUoKDAsbi5kZWZhdWx0KShvKSk7QS5sb2dOb3JtYWwoYERlLXN5bmMgZGV0ZWN0ZWQhIHByby5oYXNoIGNvbnRhaW5zIFZiUFIgc3R1ZGllcywgYnV0IGRhdGEgZnJvbSBjYWNoZSBkb2Vzbid0IGFuZCBwcm8uaGFzaCBpc24ndCBjaGFuZ2VkLCBwcm8uaGFzaD0ke2l9YCksdGhpcy5fcmVxdWVzdE1ldGFkYXRhRnJvbVNlcnZlcihlKX19ZWxzZSBBLmxvZ05vcm1hbChgUHJvIGhhc2ggaGFzIGNoYW5nZWQgKGNhY2hlZDogJyR7YX0nLCBjdXJyZW50OiAnJHtpfScpYCksdGhpcy5fcmVxdWVzdE1ldGFkYXRhRnJvbVNlcnZlcihlKX1jYXRjaCh0KXtBLmxvZ0Vycm9yKCJDYW5ub3QgZ2V0IHN0dWRpZXNfbWV0YWRhdGEsIHJlYXNvbjogIit0KSx0aGlzLl9yZXF1ZXN0TWV0YWRhdGFGcm9tU2VydmVyKGUpfWZpbmFsbHl7eC5sb2dOb3JtYWwoYFJlcXVlc3Rpbmcgc3R1ZGllcyBtZXRhZGF0YSAjJHtlfSBmaW5pc2hlZGApfX1fbWFrZU5leHRSZXF1ZXN0SWQoKXtyZXR1cm4ibWV0YWRhdGFfIit0aGlzLl9tZXRhZGF0YVJlcXVlc3ROZXh0TnVtYmVyKyt9X3Byb2Nlc3NQcm90b2NvbEVycm9yKGUpe2NvbnN0IHQ9ZS5wYXJhbXNbMF07QS5sb2dFcnJvcihgUHJvdG9jb2wgZXJyb3IuIFJlYXNvbj0ke3R9LmApLCJiYW5uZWQiIT09dCYmImJhbm5lZCBieSB1c2VyX2lkIiE9PXQmJiJiYW5uZWQgYnkgaXAiIT09dHx8KHRoaXMuX2JhbkluZm8uc2V0VmFsdWUoe3JlYXNvbjp0fSksdGhpcy5kaXNjb25uZWN0KCkpLHRoaXMuX2Nvbm5lY3Rpb25zTGltaXRSZWFjaGVkLnNldFZhbHVlKCJ1c2VyIGNvbm5lY3Rpb25zIGxpbWl0IHJlYWNoZWQiPT09dCl9X3JlcXVlc3RNZXRhZGF0YUZyb21TZXJ2ZXIoZSl7cmV0dXJuIEEubG9nTm9ybWFsKCJSZXF1ZXN0IHN0dWRpZXNfbWV0YWRhdGEgZnJvbSBzZXJ2ZXIiKSx0aGlzLl9zZW5kUmVxdWVzdCgicmVxdWVzdF9zdHVkaWVzX21ldGFkYXRhIixbZV0pfV9iaW5kU29ja2V0RXZlbnRzKCl7dGhpcy5jb25uZWN0RGZkPW5ldyBQcm9taXNlKCgoZSx0KT0+e3RoaXMuX3dzQmFja2VuZENvbm5lY3Rpb24ub24oImNvbm5lY3QiLCgoKT0+e3RoaXMuX29uQ29ubmVjdCgpLGUoKX0pKSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLm9uKCJtZXNzYWdlIix0aGlzLl9vbk1lc3NhZ2UuYmluZCh0aGlzKSksdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5vbigiZGlzY29ubmVjdCIsKCgpPT57dGhpcy5fYXV0aFRva2VuRGZkJiYodGhpcy5fYXV0aFRva2VuRGZkPW51bGwpLHRoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUVycmJhY2smJnRoaXMuX29uRGF0YVByb2JsZW1zUHJvbWlzZUVycmJhY2soKSx0aGlzLl9pc0Nvbm5lY3RlZD0hMSx0aGlzLl9ub3RpZnlTZXNzaW9ucyh7bWV0aG9kOmguQ2hhcnRBcGlNZXNzYWdlTWV0aG9kLkRpc2Nvbm5lY3RlZCxwYXJhbXM6W119KSx0aGlzLl9iYW5JbmZvLnZhbHVlKCl8fCh0aGlzLl9tZXRhZGF0YURlZmVycmVkUHJvbWlzZT1udWxsKSx0aGlzLl9kaXNjb25uZWN0Q291bnQ9KHRoaXMuX2Rpc2Nvbm5lY3RDb3VudHx8MCkrMSx0aGlzLl93c0JhY2tlbmRDb25uZWN0aW9uLmlzQ29ubmVjdGVkKCkmJih0aGlzLl90ZWxlbWV0cnlEaXNjb25uZWN0VGltZW91dD1zZXRUaW1lb3V0KCgoKT0+e0QudGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydCgiZGlzY29ubmVjdCIpfSksNWUzKSwKdGhpcy5fd3NCYWNrZW5kQ29ubmVjdGlvbi5pc01heFJlY29ubmVjdHMoKSYmKHRoaXMuX25vdGlmeVNlc3Npb25zKHttZXRob2Q6aC5DaGFydEFwaU1lc3NhZ2VNZXRob2QuUmVjb25uZWN0QmFpbG91dCxwYXJhbXM6W119KSx0KCksRC50ZWxlbWV0cnkuc2VuZENoYXJ0UmVwb3J0KCJyZWNvbm5lY3RfYmFpbG91dCIpKSl9KSl9KSl9X2NhbGNUcmFmZmljU3RhdHMoZSl7Y29uc3QgdD1lLmxlbmd0aDt0aGlzLl90cmFmZmljU3RhdHMudG90YWwrPXQsdGhpcy5fdHJhZmZpY1N0YXRzLnNpbmNlQ29ubmVjdCs9dCx0aGlzLl90cmFmZmljU3RhdHMubGFzdENodW5rKz10fV9zZW5kQnJva2VySWRUb1Nlc3Npb24oZSl7cmV0dXJuIVd8fHRoaXMuX3NlbmRSZXF1ZXN0KCJzZXRfYnJva2VyIixbZV0pfV9lbmFibGVMb3dRdWFsaXR5TW9kZSgpe0EubG9nTm9ybWFsKCJsb3cgcXVhbGl0eSBtb2RlIGlzIGVuYWJsZWQiKSx0aGlzLl9sb3dRdWFsaXR5RW5hYmxlZD0hMCx0aGlzLl9zZW5kTG93UXVhbGl0eU1vZGVJZkVuYWJsZWQoKX1fc2VuZExvd1F1YWxpdHlNb2RlSWZFbmFibGVkKCl7dGhpcy5fbG93UXVhbGl0eUVuYWJsZWQmJnRoaXMuY29ubmVjdGVkKCkmJnRoaXMuX3NlbmRSZXF1ZXN0KCJzZXRfZGF0YV9xdWFsaXR5IixbXSl9X2dldEF1dGhUb2tlbkRmZChlKXtpZih0aGlzLl9sb2FkTmV3QmFycylyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJsb2FkX25ld190b2tlbiIpO2lmKCgwLG0uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpfHwtMSE9PXdpbmRvdy5sb2NhdGlvbi5zZWFyY2guaW5kZXhPZigid2lkZ2V0X3Rva2VuIil8fC0xIT09d2luZG93LmxvY2F0aW9uLmhhc2guaW5kZXhPZigid2lkZ2V0X3Rva2VuIikpe2NvbnN0IGU9d2luZG93LlRyYWRpbmdWaWV3JiZ3aW5kb3cuVHJhZGluZ1ZpZXcud2lkZ2V0Q3VzdG9tZXJ8fCIiO3JldHVybiBQcm9taXNlLnJlc29sdmUoYltlXXx8IndpZGdldF91c2VyX3Rva2VuIil9aWYoIXdpbmRvdy5pc19hdXRoZW50aWNhdGVkKXJldHVybiBQcm9taXNlLnJlc29sdmUoInVuYXV0aG9yaXplZF91c2VyX3Rva2VuIik7aWYoIXRoaXMuX2F1dGhUb2tlbk1hbmFnZXIpe2NvbnN0IGU9dGhpcy5fYXV0aFRva2VuTWFuYWdlcj1uZXcgZi5BdXRoVG9rZW47ZS5pbnZhbGlkYXRlZC5zdWJzY3JpYmUobnVsbCwoYXN5bmMoKT0+e3RyeXt0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudCs9MTtjb25zdCB0PWF3YWl0IGUuZ2V0KCk7aWYoIXQpcmV0dXJuIHZvaWQgQS5sb2dJbmZvKCJBdXRoVG9rZW4gaW52YWxpZGF0ZWQsIGJ1dCBuZXcgdG9rZW4gaXMgZW1wdHkiKTtpZighdGhpcy5jb25uZWN0ZWQoKSlyZXR1cm4gdm9pZCBBLmxvZ0luZm8oYEF1dGhUb2tlbiBpbnZhbGlkYXRlZCwgYnV0IHNvY2tldCBpcyBub3QgY29ubmVjdGVkLiBUb2tlbjogJHt0fWApO0EubG9nSW5mbygiQXV0aFRva2VuIGludmFsaWRhdGVkLCByZWZyZXNoaW5nIHRva2VuIGFuZCByZXNlbmRpbmcgdG8gc2Vzc2lvbiIpLHRoaXMuX3NlbmRSZXF1ZXN0SW1wbCgic2V0X2F1dGhfdG9rZW4iLFt0XSl9Y2F0Y2goZSl7dGhyb3cgQS5sb2dFcnJvcihgRmFpbGVkIHRvIHJlZnJlc2ggYXV0aCB0b2tlbiBhZnRlciBpbnZhbGlkYXRpb246ICR7KDAsUy5lcnJvclRvU3RyaW5nKShlKX1gKSxlfWZpbmFsbHl7dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQtPTEsMD09PXRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50JiZlLmN1cnJlbnRUb2tlbklzVmFsaWQoKSYmdGhpcy5fZmx1c2hQZW5kaW5nTWVzc2FnZXMoKX19KSl9cmV0dXJuIHRoaXMuX2F1dGhUb2tlbk1hbmFnZXIuZ2V0KGUpfV9vblNlbmRpbmdRdWV1ZVJlcXVlc3RGaW5pc2hlZCgpe3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50LT0xLEEubG9nSW5mbyhgU2VuZGluZyBxdWV1ZSByZXF1ZXN0IGZpbmlzaGVkLiBSZW1haW5pbmcgcGVuZGluZyByZXF1ZXN0cz0ke3RoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50fWApLHRoaXMuX3NlbmRpbmdRdWV1ZWRSZXF1ZXN0c0NvdW50PDAmJkEubG9nRXJyb3IoYEludmFsaWQgcXVldWUgc3RhdGU9JHt0aGlzLl9zZW5kaW5nUXVldWVkUmVxdWVzdHNDb3VudH1gKSwwPT09dGhpcy5fc2VuZGluZ1F1ZXVlZFJlcXVlc3RzQ291bnQmJnRoaXMuX2ZsdXNoUGVuZGluZ01lc3NhZ2VzKCl9X2ZsdXNoUGVuZGluZ01lc3NhZ2VzKCl7QS5sb2dJbmZvKGBGbHVzaCBwZW5kaW5nIG1lc3NhZ2VzLiBDb3VudD0ke3RoaXMuX3BlbmRpbmdNZXNzYWdlc1F1ZXVlLmxlbmd0aH1gKSx0aGlzLl9wZW5kaW5nTWVzc2FnZXNRdWV1ZS5mb3JFYWNoKChlPT50aGlzLl9zZW5kUmVxdWVzdChlLm1ldGhvZCxlLmFyZ3MpKSksdGhpcy5fcGVuZGluZ01lc3NhZ2VzUXVldWU9W119fSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYod2luZG93LkNoYXJ0QXBpSW5zdGFuY2U9bmV3IGRlKHdpbmRvdy5XU0JhY2tlbmRDb25uZWN0aW9uKSl9LDg4OTUxNShlLHQscyl7cy5kKHQse3Nob3dUb29NYW55U3R1ZGllc05vdGljZTooKT0+b30pO3ZhciBuPXMoMTg1MjcxKSxpPXMoMjM0OTY0KTtmdW5jdGlvbiBvKGUpeygwLGkuc2hvd1dhcm5pbmcpKHt0aXRsZTpuLnQobnVsbCx2b2lkIDAscyg5MzcwMTcpKSx0ZXh0Om4udChudWxsLHtyZXBsYWNlOntudW1iZXI6YCR7ZX1gfX0scyg5OTIzNjIpKX0pfX19XSk7"}},"time_used":5,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/certificate-img.jpg","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.000Z","timestamp":1785159268000,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/certificate-img.jpg HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/jpeg\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"78ded-66136805-33537058d5aa53ea;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 495085\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":495085,"size_decoded":495415,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, big-endian, direntries=12, height=1269, bps=0, PhotometricInterpretation=RGB, orientation=upper-left, width=900], baseline, precision 8, 900x1269, components 3","md5":"dca349ba4bc46299368bb77875583d2e","sha1":"a6dc81265e6562da807a035ccfe8839216dfc848","sha256":"c8bed21b2a821eea5e1460b5bcedadfa0692cec3d53b56ad7a94ed4f4bbd82c0","sha512":"991bcc6530152b0d53fb33956bdc737951325123a8ac86a8f846a326b9e36bbce418092fdb4d8e52512b2a55d0421cd3b749fb95c2510b5aa15027d5b34ce8e5","ssdeep":"12288:RVSG7PN/tvkGu2MfR2fLsS0kREdjgBIRD/0kbMELwZA:37l/eEA2RCgCV0ItwC","tlshash":"b1b423907d31ccd2f587f233c181988277769e78e66bb074fc6c75a167290b68e86e06","first_seen":"2026-07-27T07:08:39.328703Z","last_seen":"2026-07-27T13:35:41.746928Z","times_seen":3,"resource_available":false,"data":"/9j/4RJBRXhpZgAATU0AKgAAAAgADAEAAAMAAAABA4QAAAEBAAMAAAABBPUAAAECAAMAAAADAAAAngEGAAMAAAABAAIAAAESAAMAAAABAAEAAAEVAAMAAAABAAMAAAEaAAUAAAABAAAApAEbAAUAAAABAAAArAEoAAMAAAABAAIAAAExAAIAAAAfAAAAtAEyAAIAAAAUAAAA04dpAAQAAAABAAAA6AAAASAACAAIAAgALcbAAAAnEAAtxsAAACcQQWRvYmUgUGhvdG9zaG9wIDIyLjAgKFdpbmRvd3MpADIwMjI6MTA6MDkgMjM6MDY6MDQAAAAEkAAABwAAAAQwMjIxoAEAAwAAAAH//wAAoAIABAAAAAEAAAOEoAMABAAAAAEAAAT1AAAAAAAAAAYBAwADAAAAAQAGAAABGgAFAAAAAQAAAW4BGwAFAAAAAQAAAXYBKAADAAAAAQACAAACAQAEAAAAAQAAAX4CAgAEAAAAAQAAELsAAAAAAAAASAAAAAEAAABIAAAAAf/Y/+0ADEFkb2JlX0NNAAL/7gAOQWRvYmUAZIAAAAAB/9sAhAAMCAgICQgMCQkMEQsKCxEVDwwMDxUYExMVExMYEQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQ0LCw0ODRAODhAUDg4OFBQODg4OFBEMDAwMDBERDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wAARCACfAHEDASIAAhEBAxEB/90ABAAI/8QBPwAAAQUBAQEBAQEAAAAAAAAAAwABAgQFBgcICQoLAQABBQEBAQEBAQAAAAAAAAABAAIDBAUGBwgJCgsQAAEEAQMCBAIFBwYIBQMMMwEAAhEDBCESMQVBUWETInGBMgYUkaGxQiMkFVLBYjM0coLRQwclklPw4fFjczUWorKDJkSTVGRFwqN0NhfSVeJl8rOEw9N14/NGJ5SkhbSVxNTk9KW1xdXl9VZmdoaWprbG1ub2N0dXZ3eHl6e3x9fn9xEAAgIBAgQEAwQFBgcHBgU1AQACEQMhMRIEQVFhcSITBTKBkRShsUIjwVLR8DMkYuFygpJDUxVjczTxJQYWorKDByY1wtJEk1SjF2RFVTZ0ZeLys4TD03Xj80aUpIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm9ic3R1dnd4eXp7fH/9oADAMBAAIRAxEAPwDvtx1c50CeSYHKf1a/9I3/ADh/5JRdoGkane3T5ooJiTz4KCze7JQYepX/AKRp/tj/AMkkLKz/AIRv+cP/ACShlZ+Lhekcp5qZe8VMsLT6Ye76DbrQNlHq/Qqdb7HvSyeoYWJZVXkW+mbrPRa4glgsOrKr7B7MZ93+B9fZ6qdUj3RolD6/9I3/ADx/5JOH1f6Rp/tD/wAkp66g6eXdOhZ7q0Yb6f32/wCf/wCZJw+j99v+cP8AySmNJT8pWe6tEe+j99v+eP8AySbfT++3/OH/AJJFTFqVnurRFvpnV7f84f8Akk++n/SN/wA4f+SRI+9KErPdWiLfT++3/PH/AJJMSCJa6R4gyj/NAj3Wf1v++sSJPdWit7vFJRSU6x//0O9PLfN7fyqOXbmVhn2Wuqyd3qeqXjaBtDSz0mu3/T+gp/uf12/lRhoFCN2Qua5/UcimzHysPHtqtAY+txfsc0u2ZNdoe1/5rLvQ2fo9/pPs/RJv2bhOLycGh9VtQxXFwfusoA30VXtt/nPTZt/nN/p/Q9Suz9EtSZ7pc6jlHi7aLaaddmTTUGMqrFdI2c2EgMHbc3c/axvs936T/SKzS97muLwAWvc3QEaD6PP8lTn70/KRKV+U6YJIKZJpSShJSkil+BSKSluyFpus/rD/AKhiKQhfnWf1h/1LECoMUkySsLH/0e/kQ3+u38qOIhAH5v8AXb+VHUPUr2Li1oLnENaNXEmAPMuKA1735bCx4sx9jTFT2yDvO+y1uvq0Pr9lez/CV2/8Yp5RAxby76PpWT3/ADXdlhYmJbbR0t+G4UdSwumY7scva5rSR+jycDJ0/mciPTtb/OYtvpZXp76E6IsLSdabptzhhUP+0sFpu99jrq9r2hrv0Nby59bn79n9v/BemrbvX9bJbXedzbqnMrNjZbSDS/K3MPur9v2hvv8AzHrDyJ+x05VbHY2T9nyf1DMxzbTey66x9vTbG1e6vN3tr/mP53f/ADGXV/N6FGTVg9ZycjMrdisysXDNftc8F1P2ht+L6lLX78ij1a/0X07P8EnGP8vqi21XbZuqLspjvUyXO2+owzQTkNoa33fpf+0/sq/0f7+/e+3qjcJrQf10bS91j2ljnsG6yuvj06suxvof8FXb6npVrC6lhZVlWHhU0NN56RfRZQ9msPfhufjVv/mKs11VWR9l9b9F69Pv/Rq71Au6phNq6a7XDoZl1WZBexwvrO7B9Tezc+yn0LfttNv+mr9RLhGm2pVe7o2szC7KbTc7fuqdQwvaS2slhvlkt2fRuYz3f8XYll32/ZKrqbmMrgtss9VjTvLNtJ9d26l2zI/nmf4T/hf5m2hZu6nlUdR6dOPn1YjL8ZtrXM+k+z7T03L0/m7vZVd+fjXMpy62fokHCd6WdhZmZQ+jEfj3DGFrD+rZD7323syWta5mPddjuZVXkO/R/obqvV/T/pUI+WnRV/i61Nxrsttysqr03hhpixoYW7K/UtZL/wCbdey7Z/1f7lwEEAgyCNCOCFz+XZjuz8GzCLMWv7Pnht1tDnVh1lmN7/T/AEez7RdXfdVv/n9ln6NbeK6l2NS7HZ6dBY30WFpZDI/Rt9Jwa6v2f4PamyGx7pieiUoXew/yh/1LEVB/Os/rf99YmFeGKSSSsMb/AP/S74fm/wBdv5VYVbgt/rt/KrI4UHdergyqzn2F5aXGJmDr/wB+VgoNohwd96UkhM02xo74wD+PuTt9UcOifIj/AL8quRi15YDHue3RzQa3FhHqN9J3ub+7/g/3HqjTk9Mspe5j8stsrEiLN20+td7GR/O/ql3/ABnsp/w9aIF91pNdnZDbYidPCDH/AFSlFpj3Hy0P/kllPb04+pc6zJLWvsY9oL/pW7cl0Vbd21n2f9W/0f8Agv55J7umy8+pky5w3GXge57cdrWyNvpepkM/ken/ADv6NHh81cXk6hFpH0p+R/8AJJotBndHnH/mSzHuwLK/tDrMotdZYARvlppe3KtYGx/MbsT9H/g/TfbT/hVdoqqL/tbHWH127tr3O2w/bZ/Mu/m3af2EiFAp5s/f58j/AOSS76pJEaaIJWI8EL86z+t/31iN2QfzrP6w/wCpYgUhgknSU7G//9PvT+b/AF2/lRQ6AgmZaP5bfyoqg6lkZGxo5nVRcQ8bW8nhMfou0kgaDjUDT3fmqn63Uw724lRAEg+uASf3YDHbUatBNMmdW6Y9rnNyWEMHv5EHbXZs9wH6XbfX+h/nf8H/ADlVuwzerdPLC77ZSWtkF3qsgFo3PDvf7drfprPdgMdoel45Fjt9sXbdQ6x4c6Gs9T+k5Lv+vJDp4Dm2t6VjNtrg1uGRoCzdZUNsbfZZ/mPf6qfUPH7YrLl4f850B1jp7vQLclrxlOeyh7SXNcaztu/SN9jPTf8AS3Ireo4brGVMya7LbHOYxjHh53MabLW7WF2306/p7v8Av6oWsyCX1/Yqns97Gn1ollx9TInT9H6r27/b+eoY2F9nsa+jptFT6hta9l5EtPqAy0j3PZ9ou/nf9Pd+k/SIVH+Riq5eH2Fus6102wBzMph3FoBnXVrLW8/mtZbW57/8D/hU9XVemWsFrcukNIDve9rDDtxY5zLC13v2P2Khb08ENc3pOMbGsYABkBoGwenW1sMb/Msb+gu2+p/xaD+y6XNDjgVUvpJextd+tjj9KrIt27/Sf6GLY73/AM4z/gf0hqHj9sVXPw/F3mua5oe0hzXAOa4agg6tIIUlQovzm1sqrwqmV1hrGj1wdrWja0cfmwrlTrHVtNrQyw/Sa129oM/mvhu5NIXAs0L86z+sP+pYi9oQvzrP6w/6liaVwRpJ0lYY3//U7wzp/Xb+VECFuBIE6iwSPmixCg7sitYJAmPD8iH6thgHGuE94Zpp5WJ311P91rQ4MkidY093/RQA/pW12309hIDwGuiWlxbu9v5v6RIISF9oH9HtJ/dAbPf/AITb+aiMveNDRYfAQ2T971RcMQsJcMXbHv8AZYRMtHP9Z9Sf9W2ls42piNtsfyt0JyG9ZY4gfq9szEgN0/6aG6y1joGPadeQGR+NirH7PWbC37O0AOayG28fRsbZs9v0P3E+3HZuL/s42SHENtABdo8Hn6dbbElN1t9jmz9nsDh2hsn/AKaZ5e8gjHtBPJhsf9F6pivFDgXjGEt9pa22dsAt/wDAnqc0vcd5xiXkmdturo97tT5pUq0otta6W49unk3XyjerbHbmhwBbPIPIVGekWkOd6ZfYffDX+535/Lf3n/nKxj04gi/HaPeCN7Z1AOujv5YSUE5KFPus/rD/AKhik5wGnKrucSbP63H9liaVwZpJ0lYY3//V7Vw/SbhoRYNfmjsfOh0KE+N39sflTqDuyJ2mCPJR9F8f0i86nXeJ1/sfmpmWdnff/ei8JKQ2Mua0OZZfY4TDWvY0mfN7Qz2fmKG3KA/7VOnt6tcj83/zNWUgCTprPZK0UgaMmTIyPKbKjz7e0fRncpFuSRE5OsGRbVIP7vCpZXW2Mvdi4NX2q6sxa4fzbCfzXP3Mbu/66z/g/VUB1fqFettVRHcGWf8Ag7Lcmtn/AF6tDjiDS725EXTpu+0Fz4GRB4ItrA0O32D83du9T3JVV3Oa7fZkVkyAHWMcYI+m01hzfaljZlGVQ2+rcASWuY4Q9jmnbZVa3817Hf8Ak1MvcfIeCda2mL6j/wByciYA0eO39hSLnHkkx37n+smSSUooJ1c8+f8A31iKhfnWD+UP+pagUhKkkkrDG//W7V59/wD1wflUjKg4+/8A64P+qSre54kiOPHv29wH0VX6sjMEIjH7dDq38iENdJTSeyKm2CPiFQ65mvwum3Xs+ltdrMaNY+13+f6fpf8AXEdlhafyhNmY9OdiWY1g9lgI17SC3/qXJpujSRQIvZxqWV4lVOF+eGyXxAssPuudu/0r3+7Z+4onIZ6jW8tedoeCCwu/OqLp/nP5DlEEsDcHqQAyKwGnfo23bozIpcfz3f4Rn85VZ/waJacKuTYGl1xE1NG6ywj6O2lvvsf/AK+oq5ttAhfAvfjdYZSD+jvecexvY/ovtWLZ/wAbTD8ff/3H/qLoZ0XO9Ex7czqH7RsEUY5e5rgdzX3vb9n9Op/+Fq6djN9Ky9v6O3Lsf6X82uhVjHfCLa+WuLT6+a8p1FLVPY2RQTzZHj/31iIShzq/+t/31iBSEqSSSsMb/9fsnaWfGz/vyEHN2DUcCDI5gfyt+/1ER5/S/wDXP+/KIsO0Elx0BJ3O8A530Gu8VWluyhMDr805goTHEEzJnQCS7XcW6f1kRrwTEEHUiR4I2hcBSBjWYTTqhluQHkixoZJIBbw3TQu/k/6/6VFSWwY2Qw13ta9v7rtVXHSOkNLh6LdrtHMkhrv5Nja9nqN/kWKBynNhgyKzY4FzdGgkAOnY2x1W/a/3b2b/AKHpp/2pVbWbaL2AfRZTE2EkvpY8NHqfTsLHt/4r+Wlwg719ihIjYlvs2hrWsgMAAaGiAANGtY1vta1qkg7Mre0mxu0OBc3bqW/nM3fv/wDCMRUULpFKYSnxSUooR5sPn/31iexxcIE6HWA4AwD7d1YUW/RdrumPd4+xnuTSkJ0kklZY3//Q66x4FhJ0As1Pb6Sg1zC0SWkbR+eB2AII1/dSfXZ6thaR9J3Dh4lTDbJ7feFWIJP9jNooOafzm/58kyS52sfyk7XAcPY3Tnc0fuD81vt9jFJrH6wR96ltf4j70uE/yCFNtZthz2kyfzge/t1T+rU4EFzS0iCCQQQmDX+X3pw1/iPvRo/yCtGD/R2BrBWWEg2VAsbvaJ9h/N+n+k2WeyxSrs/RkWPaC9znOZuDgA5xc2s/mv2tUof5fen2v8vvS1/kEaLstrbpvb/nD+9E9av99v8AnD+9C2u8R96k0WDwIR1/kFaM/Vq/0jf84KFlk/Qe0GD+e0a/m87lL3Je5Ag/yCtEbizeXSwjdI9zeN3qN+l7mJ6z7CAQYgSDIkMYFP3pnByVHx+xKdJPCSssT//Z/+0auFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAA3HAFaAAMbJUccAVoAAxslRxwBWgADGyVHHAFaAAMbJUccAVoAAxslRxwBWgADGyVHHAIAAAIAAAA4QklNBCUAAAAAABAyH7r+ABV1qsv7CVJb27bROEJJTQQ6AAAAAAERAAAAEAAAAAEAAAAAAAtwcmludE91dHB1dAAAAAUAAAAAUHN0U2Jvb2wBAAAAAEludGVlbnVtAAAAAEludGUAAAAAQ2xybQAAAA9wcmludFNpeHRlZW5CaXRib29sAAAAAAtwcmludGVyTmFtZVRFWFQAAAAXAE0AaQBjAHIAbwBzAG8AZgB0ACAAUAByAGkAbgB0ACAAdABvACAAUABEAEYAAAAAAA9wcmludFByb29mU2V0dXBPYmpjAAAADABQAHIAbwBvAGYAIABTAGUAdAB1AHAAAAAAAApwcm9vZlNldHVwAAAAAQAAAABCbHRuZW51bQAAAAxidWlsdGluUHJvb2YAAAAJcHJvb2ZDTVlLADhCSU0EOwAAAAACLQAAABAAAAABAAAAAAAScHJpbnRPdXRwdXRPcHRpb25zAAAAFwAAAABDcHRuYm9vbAAAAAAAQ2xicmJvb2wAAAAAAFJnc01ib29sAAAAAABDcm5DYm9vbAAAAAAAQ250Q2Jvb2wAAAAAAExibHNib29sAAAAAABOZ3R2Ym9vbAAAAAAARW1sRGJvb2wAAAAAAEludHJib29sAAAAAABCY2tnT2JqYwAAAAEAAAAAAABSR0JDAAAAAwAAAABSZCAgZG91YkBv4AAAAAAAAAAAAEdybiBkb3ViQG/gAAAAAAAAAAAAQmwgIGRvdWJAb+AAAAAAAAAAAABCcmRUVW50RiNSbHQAAAAAAAAAAAAAAABCbGQgVW50RiNSbHQAAAAAAAAAAAAAAABSc2x0VW50RiNQeGxAcsAAAAAAAAAAAAp2ZWN0b3JEYXRhYm9vbAEAAAAAUGdQc2VudW0AAAAAUGdQcwAAAABQZ1BDAAAAAExlZnRVbnRGI1JsdAAAAAAAAAAAAAAAAFRvcCBVbnRGI1JsdAAAAAAAAAAAAAAAAFNjbCBVbnRGI1ByY0BZAAAAAAAAAAAAEGNyb3BXaGVuUHJpbnRpbmdib29sAAAAAA5jcm9wUmVjdEJvdHRvbWxvbmcAAAAAAAAADGNyb3BSZWN0TGVmdGxvbmcAAAAAAAAADWNyb3BSZWN0UmlnaHRsb25nAAAAAAAAAAtjcm9wUmVjdFRvcGxvbmcAAAAAADhCSU0D7QAAAAAAEAEsAAAAAQABASwAAAABAAE4QklNBCYAAAAAAA4AAAAAAAAAAAAAP4AAADhCSU0D8gAAAAAACgAA////////AAA4QklNBA0AAAAAAAQAAABaOEJJTQQZAAAAAAAEAAAAHjhCSU0D8wAAAAAACQAAAAAAAAAAAQA4QklNJxAAAAAAAAoAAQAAAAAAAAABOEJJTQP1AAAAAABIAC9mZgABAGxmZgAGAAAAAAABAC9mZgABAKGZmgAGAAAAAAABADIAAAABAFoAAAAGAAAAAAABADUAAAABAC0AAAAGAAAAAAABOEJJTQP4AAAAAABwAAD/////////////////////////////A+gAAAAA/////////////////////////////wPoAAAAAP////////////////////////////8D6AAAAAD/////////////////////////////A+gAADhCSU0EAAAAAAAAAgAJOEJJTQQCAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOEJJTQQwAAAAAAASAQEBAQEBAQEBAQEBAQEBAQEBOEJJTQQtAAAAAAAGAAEAAABbOEJJTQQIAAAAAAAQAAAAAQAAAkAAAAJAAAAAADhCSU0EHgAAAAAABAAAAAA4QklNBBoAAAAAA08AAAAGAAAAAAAAAAAAAAT1AAADhAAAAA0AaQBuAHMAdQByAGEAbgBjAGUAYwBlAHIAdAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAADhAAABPUAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAQ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MDY6NTMgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIwLTA4LTA0VDA4OjI2OjExKzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIyLTEwLTA5VDIzOjA2OjA0KzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMi0xMC0wOVQyMzowNjowNCswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9qcGVnIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjUyZjBiOTc4LWEyMmQtMjY0ZS1hNjZmLTJkODM4NDY4NzMzZiIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjY3MDdkNmJhLWYzZTgtNDU0ZC04NTUzLWEzMjRiMDhiMmE2YSIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOmI0ZTUwMWRiLTkyMzAtYTM0YS04ZDUyLTA4ODE4YjE1YjY5ZSIgcGhvdG9zaG9wOkxlZ2FjeUlQVENEaWdlc3Q9IkQzQzk5RjRCM0Q4REVBMjg4NTQ4MzU2QTg0MTU5QzJCIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0iIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpiNGU1MDFkYi05MjMwLWEzNGEtOGQ1Mi0wODgxOGIxNWI2OWUiIHN0RXZ0OndoZW49IjIwMjAtMDgtMDRUMDg6MjY6MTErMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cykiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmNmZTkzZTQyLTgxZjYtNmY0OC1hOTg4LTZlNTM1MTA3ZGM1OCIgc3RFdnQ6d2hlbj0iMjAyMC0wOC0wNFQwODoyNjozOSswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6Y2I1YWE3YzUtMTBmYy0wMjQwLWIxNzQtNmI0YTc3ZmEwY2U4IiBzdEV2dDp3aGVuPSIyMDIxLTAyLTE3VDEyOjUxOjQ4KzAxOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9qcGVnIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL2pwZWciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjMxMGZhZTE5LWFmYTAtYzk0Ni05YWQ3LTczOWU3YTkyMWQ3NCIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0xN1QxMjo1MTo0OCswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YmQyYzBlMjMtODhmYS1lMzQwLThmN2YtYTMzYzkyNDIwNzI4IiBzdEV2dDp3aGVuPSIyMDIxLTA3LTI0VDE2OjUwOjUwKzAxOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBpbWFnZS9qcGVnIHRvIGFwcGxpY2F0aW9uL3ZuZC5hZG9iZS5waG90b3Nob3AiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImRlcml2ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImNvbnZlcnRlZCBmcm9tIGltYWdlL2pwZWcgdG8gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6Yjc0Y2Y3NmMtM2M4Yi02ODQ2LTgyYTctNDc1ZTJkYjRjYmUwIiBzdEV2dDp3aGVuPSIyMDIxLTA3LTI0VDE2OjUwOjUwKzAxOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmJjNWFmN2QwLTQ3ZDQtZTA0Ny04ODk0LWZiNzNlZjY0Mjg4NSIgc3RFdnQ6d2hlbj0iMjAyMi0xMC0wOVQyMzowNjowNCswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIyLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjb252ZXJ0ZWQiIHN0RXZ0OnBhcmFtZXRlcnM9ImZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9qcGVnIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL2pwZWciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjUyZjBiOTc4LWEyMmQtMjY0ZS1hNjZmLTJkODM4NDY4NzMzZiIgc3RFdnQ6d2hlbj0iMjAyMi0xMC0wOVQyMzowNjowNCswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIyLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpiYzVhZjdkMC00N2Q0LWUwNDctODg5NC1mYjczZWY2NDI4ODUiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5ODM3MWViNy1iZWUyLTBkNGEtYjg0Ny1kYjAyZDAyMjk5ZTUiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpiNGU1MDFkYi05MjMwLWEzNGEtOGQ1Mi0wODgxOGIxNWI2OWUiLz4gPHBob3Rvc2hvcDpUZXh0TGF5ZXJzPiA8cmRmOkJhZz4gPHJkZjpsaSBwaG90b3Nob3A6TGF5ZXJOYW1lPSJEWCBGSU5BTkNFIiBwaG90b3Nob3A6TGF5ZXJUZXh0PSJEWCBGSU5BTkNFIi8+IDxyZGY6bGkgcGhvdG9zaG9wOkxheWVyTmFtZT0iQXVzdHJhbGlhbiBSZWdpc3RlcmVkIEJvZHkgTnVtYmVyICAyMCA2NDMgNTY4IDE4IiBwaG90b3Nob3A6TGF5ZXJUZXh0PSJBdXN0cmFsaWFuIFJlZ2lzdGVyZWQgQm9keSBOdW1iZXIgIDIwIDY0MyA1NjggMTgiLz4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpUZXh0TGF5ZXJzPiA8cGhvdG9zaG9wOkRvY3VtZW50QW5jZXN0b3JzPiA8cmRmOkJhZz4gPHJkZjpsaT41QUJGMzgxRjQ0NzQ3QTcxNUUzQkE5OEM4NkJDMEYwQzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDozZjUxY2UwYi1mOGU4LTBiNDAtODBjNi0yY2U3ZTAwN2FmOTk8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6Yjk3NDg3NmMtYjAwMy0xMWU4LTg5YjMtYjZiYzdiMjUzZjZlPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmMxZWFhNjRkLWM1NDItMmI0OC1iZGNmLTcxYzMwOWViMWM3OTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpkNzYyOTU4MC0yNTY2LTExZGMtYTY2NS1jNGFmM2YxYmIyYTM8L3JkZjpsaT4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg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"}},"time_used":66,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":42,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.317Z","timestamp":1785159268317,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 4439674\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 13:34:28 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=tXvKReWkQG3Jj7Y5UFzqN1OhK%2FUzm56n%2FVmd9iZMe2GvO1qqct5Rpqfa%2FiFw6jMaC0JKLZfgzQegIFy%2FBQkk3EIGWZxP1vUJ4KUx9iihlblxz9TzB6tWpq8ugHnH\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0593094656a3-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":30684,"size_decoded":9883,"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-07-30T06:07:43.488015Z","times_seen":1988,"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":12,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":12,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/46907.c5af8aa7b5082b1875a5.css","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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":"stylesheet","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.265Z","timestamp":1785159269265,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/46907.c5af8aa7b5082b1875a5.css HTTP/1.1\r\nHost: www.tradingview-widget.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\nReferer: https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: style\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/2 200 \r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\ncontent-type: text/css; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a58ab11-6bc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 16 Jul 2026 09:57:37 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/16/2026 11:03:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 39108743810e520ee7b98572a107267e\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"]}],"data":{"size":1724,"size_decoded":1396,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1724), with no line terminators","md5":"8212d60d44748bb18233778e23b8f7b2","sha1":"35debdd9067ec06aa3648e5d7a9cddde39873397","sha256":"cc31664050fc2b670129f7e7d1a11bda8d20efa47a713598bbb96d4da6e297ba","sha512":"3f0235fe9fb761707020a01990077cf65fd4d774216e7d49fe218ea8e4ffa73a0d3d662536e662eb978f3d790446e7ee75ab139468bc6a0371653a48512aa994","ssdeep":"","tlshash":"d931cc75936ad2387a770b376241558a3199f64773730239e680bda881e16ba3b333c4","first_seen":"2026-07-16T11:36:17.893966Z","last_seen":"2026-07-30T06:08:06.485862Z","times_seen":2286,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtQUVROTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLUFFUTk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LndyYXBwZXItaGN0MnlKdkt7Y29sb3I6dmFyKC0tXzAtQUVROSl9LmFuaW1hdGVkLWhjdDJ5SnZLe2FuaW1hdGlvbjoxcyBlYXNlLWluLW91dCAwcyBpbmZpbml0ZSBhbHRlcm5hdGUgbm9uZSBydW5uaW5nO2FuaW1hdGlvbi1uYW1lOnB1bHNhdGlvbi1oY3QyeUp2S31Aa2V5ZnJhbWVzIHB1bHNhdGlvbi1oY3QyeUp2S3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTouNH19W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtX19ycTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1fX3JxOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtX19ycTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8xLV9fcnE6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LmxvZ28tVkNOS3ViV3F7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubG9nby1WQ05LdWJXcTpub3QoaW1nKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLV9fcnEpfS5oaWRkZW4tVkNOS3ViV3F7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlfS54eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMtVkNOS3ViV3F7Zm9udC1zaXplOjEwcHg7aGVpZ2h0OjEycHg7bGluZS1oZWlnaHQ6MTBweDttaW4td2lkdGg6MTJweDt3aWR0aDoxMnB4fS54eHhzbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTFweDtoZWlnaHQ6MThweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoxOHB4O3dpZHRoOjE4cHh9Lnh4c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjIwcHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjBweDt3aWR0aDoyMHB4fS54c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjRweDt3aWR0aDoyNHB4fS5zbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTRweDtoZWlnaHQ6MjhweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoyOHB4O3dpZHRoOjI4cHh9Lm1lZGl1bS1WQ05LdWJXcXtmb250LXNpemU6MTZweDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDozNnB4O3dpZHRoOjM2cHh9LmxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToyNHB4O2hlaWdodDo0OHB4O2xpbmUtaGVpZ2h0OjMycHg7bWluLXdpZHRoOjQ4cHg7d2lkdGg6NDhweH0ueGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZTo0MHB4O2hlaWdodDo1NnB4O2xpbmUtaGVpZ2h0OjQwcHg7bWluLXdpZHRoOjU2cHg7d2lkdGg6NTZweH0ueHhsYXJnZS1WQ05LdWJXcXtmb250LXNpemU6ODBweDtoZWlnaHQ6MTEycHg7bGluZS1oZWlnaHQ6ODBweDttaW4td2lkdGg6MTEycHg7d2lkdGg6MTEycHh9Lnh4eGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToxNjBweDtoZWlnaHQ6MTY4cHg7bGluZS1oZWlnaHQ6MTYwcHg7bWluLXdpZHRoOjE2OHB4O3dpZHRoOjE2OHB4fS5za2VsZXRvbi1WQ05LdWJXcXtiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcn0ubGV0dGVyLVZDTkt1Yldxe2NvbG9yOnZhcigtLV8wLV9fcnEpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMH0="}},"time_used":30,"timings":{"blocked":-1,"dns":13,"connect":2,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/css/bootstrap-icons.css","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.900Z","timestamp":1785159267900,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /css/bootstrap-icons.css HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: text/css\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"100aa-66136805-1eb291840d6b5144;br\"\r\naccept-ranges: bytes\r\ncontent-encoding: br\r\nvary: Accept-Encoding,User-Agent\r\ncontent-length: 8232\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":65706,"size_decoded":8596,"mime_type":"text/css","magic":"ASCII text","md5":"7e0a5b88cb7834f6c5b4fd0857ad7212","sha1":"81544433187e63c30bbbf9e3d7365af7ef128c0c","sha256":"1d07e4f16c610749b0ad38403a90d42b55086c4f311a7a4269e615d72229bde0","sha512":"c8db6d971fba2f5476e98294b69f3680575892f995cdb7a6ae0c3afd409bba875bbe65d6982474ac5fc8db9db2d27c586b12a99129151b0da8e1c7c5c62e038e","ssdeep":"384:7WqJVm8OAL1M+hQokEYm47U7yH2CuwZwmiQObdNJew4vM4+jQRe2p85seIwTcSx5:qqnm8OAL1Mzocm4KyH2CuwZwmij34k4M","tlshash":"6f53ddbad18f05f59341e4d92743674297a9ba7ce1813c7ad342399ee3c06188ad73ec","first_seen":"2026-07-27T07:08:39.355233Z","last_seen":"2026-07-27T13:35:41.680803Z","times_seen":3,"resource_available":false,"data":"QGZvbnQtZmFjZSB7CiAgZm9udC1mYW1pbHk6ICJib290c3RyYXAtaWNvbnMiOwogIHNyYzogdXJsKCIuLi9mb250cy9ib290c3RyYXAtaWNvbnM2M2YzLndvZmYyPzg1NjAwOGNhYTVlYjY2ZGY2ODU5NWU3MzRlNTk1ODBkIikgZm9ybWF0KCJ3b2ZmMiIpLAp1cmwoIi4uL2ZvbnRzL2Jvb3RzdHJhcC1pY29uczYzZjMud29mZj84NTYwMDhjYWE1ZWI2NmRmNjg1OTVlNzM0ZTU5NTgwZCIpIGZvcm1hdCgid29mZiIpOwp9CgpbY2xhc3NePSJiaS0iXTo6YmVmb3JlLApbY2xhc3MqPSIgYmktIl06OmJlZm9yZSB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIGZvbnQtZmFtaWx5OiBib290c3RyYXAtaWNvbnMgIWltcG9ydGFudDsKICBmb250LXN0eWxlOiBub3JtYWw7CiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50OwogIGZvbnQtdmFyaWFudDogbm9ybWFsOwogIHRleHQtdHJhbnNmb3JtOiBub25lOwogIGxpbmUtaGVpZ2h0OiAxOwogIHZlcnRpY2FsLWFsaWduOiAtLjEyNWVtOwogIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOwogIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7Cn0KCi5iaS1hbGFybS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMDEiOyB9Ci5iaS1hbGFybTo6YmVmb3JlIHsgY29udGVudDogIlxmMTAyIjsgfQouYmktYWxpZ24tYm90dG9tOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMDMiOyB9Ci5iaS1hbGlnbi1jZW50ZXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwNCI7IH0KLmJpLWFsaWduLWVuZDo6YmVmb3JlIHsgY29udGVudDogIlxmMTA1IjsgfQouYmktYWxpZ24tbWlkZGxlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMDYiOyB9Ci5iaS1hbGlnbi1zdGFydDo6YmVmb3JlIHsgY29udGVudDogIlxmMTA3IjsgfQouYmktYWxpZ24tdG9wOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMDgiOyB9Ci5iaS1hbHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwOSI7IH0KLmJpLWFwcC1pbmRpY2F0b3I6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEwYSI7IH0KLmJpLWFwcDo6YmVmb3JlIHsgY29udGVudDogIlxmMTBiIjsgfQouYmktYXJjaGl2ZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMGMiOyB9Ci5iaS1hcmNoaXZlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMGQiOyB9Ci5iaS1hcnJvdy05MGRlZy1kb3duOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMGUiOyB9Ci5iaS1hcnJvdy05MGRlZy1sZWZ0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMGYiOyB9Ci5iaS1hcnJvdy05MGRlZy1yaWdodDo6YmVmb3JlIHsgY29udGVudDogIlxmMTEwIjsgfQouYmktYXJyb3ctOTBkZWctdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjExMSI7IH0KLmJpLWFycm93LWJhci1kb3duOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMTIiOyB9Ci5iaS1hcnJvdy1iYXItbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMTEzIjsgfQouYmktYXJyb3ctYmFyLXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMTQiOyB9Ci5iaS1hcnJvdy1iYXItdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjExNSI7IH0KLmJpLWFycm93LWNsb2Nrd2lzZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTE2IjsgfQouYmktYXJyb3ctY291bnRlcmNsb2Nrd2lzZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTE3IjsgfQouYmktYXJyb3ctZG93bi1jaXJjbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTE4IjsgfQouYmktYXJyb3ctZG93bi1jaXJjbGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjExOSI7IH0KLmJpLWFycm93LWRvd24tbGVmdC1jaXJjbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTFhIjsgfQouYmktYXJyb3ctZG93bi1sZWZ0LWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTFiIjsgfQouYmktYXJyb3ctZG93bi1sZWZ0LXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMWMiOyB9Ci5iaS1hcnJvdy1kb3duLWxlZnQtc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMWQiOyB9Ci5iaS1hcnJvdy1kb3duLWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjExZSI7IH0KLmJpLWFycm93LWRvd24tcmlnaHQtY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjExZiI7IH0KLmJpLWFycm93LWRvd24tcmlnaHQtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMjAiOyB9Ci5iaS1hcnJvdy1kb3duLXJpZ2h0LXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMjEiOyB9Ci5iaS1hcnJvdy1kb3duLXJpZ2h0LXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTIyIjsgfQouYmktYXJyb3ctZG93bi1yaWdodDo6YmVmb3JlIHsgY29udGVudDogIlxmMTIzIjsgfQouYmktYXJyb3ctZG93bi1zaG9ydDo6YmVmb3JlIHsgY29udGVudDogIlxmMTI0IjsgfQouYmktYXJyb3ctZG93bi1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTI1IjsgfQouYmktYXJyb3ctZG93bi1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEyNiI7IH0KLmJpLWFycm93LWRvd24tdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEyNyI7IH0KLmJpLWFycm93LWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEyOCI7IH0KLmJpLWFycm93LWxlZnQtY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEyOSI7IH0KLmJpLWFycm93LWxlZnQtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMmEiOyB9Ci5iaS1hcnJvdy1sZWZ0LXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMmIiOyB9Ci5iaS1hcnJvdy1sZWZ0LXNob3J0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMmMiOyB9Ci5iaS1hcnJvdy1sZWZ0LXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMmQiOyB9Ci5iaS1hcnJvdy1sZWZ0LXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTJlIjsgfQouYmktYXJyb3ctbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMTJmIjsgfQouYmktYXJyb3ctcmVwZWF0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMzAiOyB9Ci5iaS1hcnJvdy1yZXR1cm4tbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMTMxIjsgfQouYmktYXJyb3ctcmV0dXJuLXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMzIiOyB9Ci5iaS1hcnJvdy1yaWdodC1jaXJjbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTMzIjsgfQouYmktYXJyb3ctcmlnaHQtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMzQiOyB9Ci5iaS1hcnJvdy1yaWdodC1zaG9ydDo6YmVmb3JlIHsgY29udGVudDogIlxmMTM1IjsgfQouYmktYXJyb3ctcmlnaHQtc3F1YXJlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEzNiI7IH0KLmJpLWFycm93LXJpZ2h0LXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTM3IjsgfQouYmktYXJyb3ctcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEzOCI7IH0KLmJpLWFycm93LXVwLWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxMzkiOyB9Ci5iaS1hcnJvdy11cC1jaXJjbGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEzYSI7IH0KLmJpLWFycm93LXVwLWxlZnQtY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjEzYiI7IH0KLmJpLWFycm93LXVwLWxlZnQtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxM2MiOyB9Ci5iaS1hcnJvdy11cC1sZWZ0LXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxM2QiOyB9Ci5iaS1hcnJvdy11cC1sZWZ0LXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTNlIjsgfQouYmktYXJyb3ctdXAtbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMTNmIjsgfQouYmktYXJyb3ctdXAtcmlnaHQtY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE0MCI7IH0KLmJpLWFycm93LXVwLXJpZ2h0LWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTQxIjsgfQouYmktYXJyb3ctdXAtcmlnaHQtc3F1YXJlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE0MiI7IH0KLmJpLWFycm93LXVwLXJpZ2h0LXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTQzIjsgfQouYmktYXJyb3ctdXAtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE0NCI7IH0KLmJpLWFycm93LXVwLXNob3J0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNDUiOyB9Ci5iaS1hcnJvdy11cC1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTQ2IjsgfQouYmktYXJyb3ctdXAtc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNDciOyB9Ci5iaS1hcnJvdy11cDo6YmVmb3JlIHsgY29udGVudDogIlxmMTQ4IjsgfQouYmktYXJyb3dzLWFuZ2xlLWNvbnRyYWN0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNDkiOyB9Ci5iaS1hcnJvd3MtYW5nbGUtZXhwYW5kOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNGEiOyB9Ci5iaS1hcnJvd3MtY29sbGFwc2U6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE0YiI7IH0KLmJpLWFycm93cy1leHBhbmQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE0YyI7IH0KLmJpLWFycm93cy1mdWxsc2NyZWVuOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNGQiOyB9Ci5iaS1hcnJvd3MtbW92ZTo6YmVmb3JlIHsgY29udGVudDogIlxmMTRlIjsgfQouYmktYXNwZWN0LXJhdGlvLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE0ZiI7IH0KLmJpLWFzcGVjdC1yYXRpbzo6YmVmb3JlIHsgY29udGVudDogIlxmMTUwIjsgfQouYmktYXN0ZXJpc2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE1MSI7IH0KLmJpLWF0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNTIiOyB9Ci5iaS1hd2FyZC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNTMiOyB9Ci5iaS1hd2FyZDo6YmVmb3JlIHsgY29udGVudDogIlxmMTU0IjsgfQouYmktYmFjazo6YmVmb3JlIHsgY29udGVudDogIlxmMTU1IjsgfQouYmktYmFja3NwYWNlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE1NiI7IH0KLmJpLWJhY2tzcGFjZS1yZXZlcnNlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE1NyI7IH0KLmJpLWJhY2tzcGFjZS1yZXZlcnNlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNTgiOyB9Ci5iaS1iYWNrc3BhY2U6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE1OSI7IH0KLmJpLWJhZGdlLTNkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE1YSI7IH0KLmJpLWJhZGdlLTNkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNWIiOyB9Ci5iaS1iYWRnZS00ay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNWMiOyB9Ci5iaS1iYWRnZS00azo6YmVmb3JlIHsgY29udGVudDogIlxmMTVkIjsgfQouYmktYmFkZ2UtOGstZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTVlIjsgfQouYmktYmFkZ2UtOGs6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE1ZiI7IH0KLmJpLWJhZGdlLWFkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE2MCI7IH0KLmJpLWJhZGdlLWFkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNjEiOyB9Ci5iaS1iYWRnZS1hci1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNjIiOyB9Ci5iaS1iYWRnZS1hcjo6YmVmb3JlIHsgY29udGVudDogIlxmMTYzIjsgfQouYmktYmFkZ2UtY2MtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTY0IjsgfQouYmktYmFkZ2UtY2M6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE2NSI7IH0KLmJpLWJhZGdlLWhkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE2NiI7IH0KLmJpLWJhZGdlLWhkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNjciOyB9Ci5iaS1iYWRnZS10bS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNjgiOyB9Ci5iaS1iYWRnZS10bTo6YmVmb3JlIHsgY29udGVudDogIlxmMTY5IjsgfQouYmktYmFkZ2Utdm8tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTZhIjsgfQouYmktYmFkZ2Utdm86OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE2YiI7IH0KLmJpLWJhZGdlLXZyLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE2YyI7IH0KLmJpLWJhZGdlLXZyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNmQiOyB9Ci5iaS1iYWRnZS13Yy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNmUiOyB9Ci5iaS1iYWRnZS13Yzo6YmVmb3JlIHsgY29udGVudDogIlxmMTZmIjsgfQouYmktYmFnLWNoZWNrLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE3MCI7IH0KLmJpLWJhZy1jaGVjazo6YmVmb3JlIHsgY29udGVudDogIlxmMTcxIjsgfQouYmktYmFnLWRhc2gtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTcyIjsgfQouYmktYmFnLWRhc2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE3MyI7IH0KLmJpLWJhZy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNzQiOyB9Ci5iaS1iYWctcGx1cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxNzUiOyB9Ci5iaS1iYWctcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmMTc2IjsgfQouYmktYmFnLXgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTc3IjsgfQouYmktYmFnLXg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE3OCI7IH0KLmJpLWJhZzo6YmVmb3JlIHsgY29udGVudDogIlxmMTc5IjsgfQouYmktYmFyLWNoYXJ0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE3YSI7IH0KLmJpLWJhci1jaGFydC1saW5lLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE3YiI7IH0KLmJpLWJhci1jaGFydC1saW5lOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxN2MiOyB9Ci5iaS1iYXItY2hhcnQtc3RlcHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE3ZCI7IH0KLmJpLWJhci1jaGFydDo6YmVmb3JlIHsgY29udGVudDogIlxmMTdlIjsgfQouYmktYmFza2V0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE3ZiI7IH0KLmJpLWJhc2tldDo6YmVmb3JlIHsgY29udGVudDogIlxmMTgwIjsgfQouYmktYmFza2V0Mi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxODEiOyB9Ci5iaS1iYXNrZXQyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxODIiOyB9Ci5iaS1iYXNrZXQzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE4MyI7IH0KLmJpLWJhc2tldDM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE4NCI7IH0KLmJpLWJhdHRlcnktY2hhcmdpbmc6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE4NSI7IH0KLmJpLWJhdHRlcnktZnVsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTg2IjsgfQouYmktYmF0dGVyeS1oYWxmOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxODciOyB9Ci5iaS1iYXR0ZXJ5OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxODgiOyB9Ci5iaS1iZWxsLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE4OSI7IH0KLmJpLWJlbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE4YSI7IH0KLmJpLWJlemllcjo6YmVmb3JlIHsgY29udGVudDogIlxmMThiIjsgfQouYmktYmV6aWVyMjo6YmVmb3JlIHsgY29udGVudDogIlxmMThjIjsgfQouYmktYmljeWNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmMThkIjsgfQouYmktYmlub2N1bGFycy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOGUiOyB9Ci5iaS1iaW5vY3VsYXJzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOGYiOyB9Ci5iaS1ibG9ja3F1b3RlLWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE5MCI7IH0KLmJpLWJsb2NrcXVvdGUtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE5MSI7IH0KLmJpLWJvb2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMTkyIjsgfQouYmktYm9vay1oYWxmOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOTMiOyB9Ci5iaS1ib29rOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOTQiOyB9Ci5iaS1ib29rbWFyay1jaGVjay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOTUiOyB9Ci5iaS1ib29rbWFyay1jaGVjazo6YmVmb3JlIHsgY29udGVudDogIlxmMTk2IjsgfQouYmktYm9va21hcmstZGFzaC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOTciOyB9Ci5iaS1ib29rbWFyay1kYXNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOTgiOyB9Ci5iaS1ib29rbWFyay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOTkiOyB9Ci5iaS1ib29rbWFyay1oZWFydC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOWEiOyB9Ci5iaS1ib29rbWFyay1oZWFydDo6YmVmb3JlIHsgY29udGVudDogIlxmMTliIjsgfQouYmktYm9va21hcmstcGx1cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOWMiOyB9Ci5iaS1ib29rbWFyay1wbHVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxOWQiOyB9Ci5iaS1ib29rbWFyay1zdGFyLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE5ZSI7IH0KLmJpLWJvb2ttYXJrLXN0YXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjE5ZiI7IH0KLmJpLWJvb2ttYXJrLXgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWEwIjsgfQouYmktYm9va21hcmsteDo6YmVmb3JlIHsgY29udGVudDogIlxmMWExIjsgfQouYmktYm9va21hcms6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFhMiI7IH0KLmJpLWJvb2ttYXJrcy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYTMiOyB9Ci5iaS1ib29rbWFya3M6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFhNCI7IH0KLmJpLWJvb2tzaGVsZjo6YmVmb3JlIHsgY29udGVudDogIlxmMWE1IjsgfQouYmktYm9vdHN0cmFwLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFhNiI7IH0KLmJpLWJvb3RzdHJhcC1yZWJvb3Q6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFhNyI7IH0KLmJpLWJvb3RzdHJhcDo6YmVmb3JlIHsgY29udGVudDogIlxmMWE4IjsgfQouYmktYm9yZGVyLWFsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWE5IjsgfQouYmktYm9yZGVyLWJvdHRvbTo6YmVmb3JlIHsgY29udGVudDogIlxmMWFhIjsgfQouYmktYm9yZGVyLWNlbnRlcjo6YmVmb3JlIHsgY29udGVudDogIlxmMWFiIjsgfQouYmktYm9yZGVyLWlubmVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYWMiOyB9Ci5iaS1ib3JkZXItbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMWFkIjsgfQouYmktYm9yZGVyLW1pZGRsZTo6YmVmb3JlIHsgY29udGVudDogIlxmMWFlIjsgfQouYmktYm9yZGVyLW91dGVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYWYiOyB9Ci5iaS1ib3JkZXItcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFiMCI7IH0KLmJpLWJvcmRlci1zdHlsZTo6YmVmb3JlIHsgY29udGVudDogIlxmMWIxIjsgfQouYmktYm9yZGVyLXRvcDo6YmVmb3JlIHsgY29udGVudDogIlxmMWIyIjsgfQouYmktYm9yZGVyLXdpZHRoOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYjMiOyB9Ci5iaS1ib3JkZXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFiNCI7IH0KLmJpLWJvdW5kaW5nLWJveC1jaXJjbGVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYjUiOyB9Ci5iaS1ib3VuZGluZy1ib3g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFiNiI7IH0KLmJpLWJveC1hcnJvdy1kb3duLWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFiNyI7IH0KLmJpLWJveC1hcnJvdy1kb3duLXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYjgiOyB9Ci5iaS1ib3gtYXJyb3ctZG93bjo6YmVmb3JlIHsgY29udGVudDogIlxmMWI5IjsgfQouYmktYm94LWFycm93LWluLWRvd24tbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMWJhIjsgfQouYmktYm94LWFycm93LWluLWRvd24tcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFiYiI7IH0KLmJpLWJveC1hcnJvdy1pbi1kb3duOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYmMiOyB9Ci5iaS1ib3gtYXJyb3ctaW4tbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMWJkIjsgfQouYmktYm94LWFycm93LWluLXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYmUiOyB9Ci5iaS1ib3gtYXJyb3ctaW4tdXAtbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMWJmIjsgfQouYmktYm94LWFycm93LWluLXVwLXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYzAiOyB9Ci5iaS1ib3gtYXJyb3ctaW4tdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFjMSI7IH0KLmJpLWJveC1hcnJvdy1sZWZ0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYzIiOyB9Ci5iaS1ib3gtYXJyb3ctcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFjMyI7IH0KLmJpLWJveC1hcnJvdy11cC1sZWZ0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYzQiOyB9Ci5iaS1ib3gtYXJyb3ctdXAtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFjNSI7IH0KLmJpLWJveC1hcnJvdy11cDo6YmVmb3JlIHsgY29udGVudDogIlxmMWM2IjsgfQouYmktYm94LXNlYW06OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFjNyI7IH0KLmJpLWJveDo6YmVmb3JlIHsgY29udGVudDogIlxmMWM4IjsgfQouYmktYnJhY2VzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxYzkiOyB9Ci5iaS1icmlja3M6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFjYSI7IH0KLmJpLWJyaWVmY2FzZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxY2IiOyB9Ci5iaS1icmllZmNhc2U6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFjYyI7IH0KLmJpLWJyaWdodG5lc3MtYWx0LWhpZ2gtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWNkIjsgfQouYmktYnJpZ2h0bmVzcy1hbHQtaGlnaDo6YmVmb3JlIHsgY29udGVudDogIlxmMWNlIjsgfQouYmktYnJpZ2h0bmVzcy1hbHQtbG93LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFjZiI7IH0KLmJpLWJyaWdodG5lc3MtYWx0LWxvdzo6YmVmb3JlIHsgY29udGVudDogIlxmMWQwIjsgfQouYmktYnJpZ2h0bmVzcy1oaWdoLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFkMSI7IH0KLmJpLWJyaWdodG5lc3MtaGlnaDo6YmVmb3JlIHsgY29udGVudDogIlxmMWQyIjsgfQouYmktYnJpZ2h0bmVzcy1sb3ctZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWQzIjsgfQouYmktYnJpZ2h0bmVzcy1sb3c6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFkNCI7IH0KLmJpLWJyb2FkY2FzdC1waW46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFkNSI7IH0KLmJpLWJyb2FkY2FzdDo6YmVmb3JlIHsgY29udGVudDogIlxmMWQ2IjsgfQouYmktYnJ1c2gtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWQ3IjsgfQouYmktYnJ1c2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFkOCI7IH0KLmJpLWJ1Y2tldC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZDkiOyB9Ci5iaS1idWNrZXQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFkYSI7IH0KLmJpLWJ1Zy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZGIiOyB9Ci5iaS1idWc6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFkYyI7IH0KLmJpLWJ1aWxkaW5nOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZGQiOyB9Ci5iaS1idWxsc2V5ZTo6YmVmb3JlIHsgY29udGVudDogIlxmMWRlIjsgfQouYmktY2FsY3VsYXRvci1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZGYiOyB9Ci5iaS1jYWxjdWxhdG9yOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZTAiOyB9Ci5iaS1jYWxlbmRhci1jaGVjay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZTEiOyB9Ci5iaS1jYWxlbmRhci1jaGVjazo6YmVmb3JlIHsgY29udGVudDogIlxmMWUyIjsgfQouYmktY2FsZW5kYXItZGF0ZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZTMiOyB9Ci5iaS1jYWxlbmRhci1kYXRlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZTQiOyB9Ci5iaS1jYWxlbmRhci1kYXktZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWU1IjsgfQouYmktY2FsZW5kYXItZGF5OjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZTYiOyB9Ci5iaS1jYWxlbmRhci1ldmVudC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZTciOyB9Ci5iaS1jYWxlbmRhci1ldmVudDo6YmVmb3JlIHsgY29udGVudDogIlxmMWU4IjsgfQouYmktY2FsZW5kYXItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWU5IjsgfQouYmktY2FsZW5kYXItbWludXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWVhIjsgfQouYmktY2FsZW5kYXItbWludXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFlYiI7IH0KLmJpLWNhbGVuZGFyLW1vbnRoLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFlYyI7IH0KLmJpLWNhbGVuZGFyLW1vbnRoOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZWQiOyB9Ci5iaS1jYWxlbmRhci1wbHVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFlZSI7IH0KLmJpLWNhbGVuZGFyLXBsdXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFlZiI7IH0KLmJpLWNhbGVuZGFyLXJhbmdlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmMCI7IH0KLmJpLWNhbGVuZGFyLXJhbmdlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZjEiOyB9Ci5iaS1jYWxlbmRhci13ZWVrLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmMiI7IH0KLmJpLWNhbGVuZGFyLXdlZWs6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmMyI7IH0KLmJpLWNhbGVuZGFyLXgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMWY0IjsgfQouYmktY2FsZW5kYXIteDo6YmVmb3JlIHsgY29udGVudDogIlxmMWY1IjsgfQouYmktY2FsZW5kYXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmNiI7IH0KLmJpLWNhbGVuZGFyMi1jaGVjay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZjciOyB9Ci5iaS1jYWxlbmRhcjItY2hlY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmOCI7IH0KLmJpLWNhbGVuZGFyMi1kYXRlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmOSI7IH0KLmJpLWNhbGVuZGFyMi1kYXRlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZmEiOyB9Ci5iaS1jYWxlbmRhcjItZGF5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmYiI7IH0KLmJpLWNhbGVuZGFyMi1kYXk6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmYyI7IH0KLmJpLWNhbGVuZGFyMi1ldmVudC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZmQiOyB9Ci5iaS1jYWxlbmRhcjItZXZlbnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjFmZSI7IH0KLmJpLWNhbGVuZGFyMi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYxZmYiOyB9Ci5iaS1jYWxlbmRhcjItbWludXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjAwIjsgfQouYmktY2FsZW5kYXIyLW1pbnVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMDEiOyB9Ci5iaS1jYWxlbmRhcjItbW9udGgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjAyIjsgfQouYmktY2FsZW5kYXIyLW1vbnRoOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMDMiOyB9Ci5iaS1jYWxlbmRhcjItcGx1cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMDQiOyB9Ci5iaS1jYWxlbmRhcjItcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmMjA1IjsgfQouYmktY2FsZW5kYXIyLXJhbmdlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIwNiI7IH0KLmJpLWNhbGVuZGFyMi1yYW5nZTo6YmVmb3JlIHsgY29udGVudDogIlxmMjA3IjsgfQouYmktY2FsZW5kYXIyLXdlZWstZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjA4IjsgfQouYmktY2FsZW5kYXIyLXdlZWs6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIwOSI7IH0KLmJpLWNhbGVuZGFyMi14LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIwYSI7IH0KLmJpLWNhbGVuZGFyMi14OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMGIiOyB9Ci5iaS1jYWxlbmRhcjI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIwYyI7IH0KLmJpLWNhbGVuZGFyMy1ldmVudC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMGQiOyB9Ci5iaS1jYWxlbmRhcjMtZXZlbnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIwZSI7IH0KLmJpLWNhbGVuZGFyMy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMGYiOyB9Ci5iaS1jYWxlbmRhcjMtcmFuZ2UtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjEwIjsgfQouYmktY2FsZW5kYXIzLXJhbmdlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMTEiOyB9Ci5iaS1jYWxlbmRhcjMtd2Vlay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMTIiOyB9Ci5iaS1jYWxlbmRhcjMtd2Vlazo6YmVmb3JlIHsgY29udGVudDogIlxmMjEzIjsgfQouYmktY2FsZW5kYXIzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMTQiOyB9Ci5iaS1jYWxlbmRhcjQtZXZlbnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIxNSI7IH0KLmJpLWNhbGVuZGFyNC1yYW5nZTo6YmVmb3JlIHsgY29udGVudDogIlxmMjE2IjsgfQouYmktY2FsZW5kYXI0LXdlZWs6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIxNyI7IH0KLmJpLWNhbGVuZGFyNDo6YmVmb3JlIHsgY29udGVudDogIlxmMjE4IjsgfQouYmktY2FtZXJhLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIxOSI7IH0KLmJpLWNhbWVyYS1yZWVscy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMWEiOyB9Ci5iaS1jYW1lcmEtcmVlbHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIxYiI7IH0KLmJpLWNhbWVyYS12aWRlby1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMWMiOyB9Ci5iaS1jYW1lcmEtdmlkZW8tb2ZmLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIxZCI7IH0KLmJpLWNhbWVyYS12aWRlby1vZmY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIxZSI7IH0KLmJpLWNhbWVyYS12aWRlbzo6YmVmb3JlIHsgY29udGVudDogIlxmMjFmIjsgfQouYmktY2FtZXJhOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMjAiOyB9Ci5iaS1jYW1lcmEyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMjEiOyB9Ci5iaS1jYXBzbG9jay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMjIiOyB9Ci5iaS1jYXBzbG9jazo6YmVmb3JlIHsgY29udGVudDogIlxmMjIzIjsgfQouYmktY2FyZC1jaGVja2xpc3Q6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIyNCI7IH0KLmJpLWNhcmQtaGVhZGluZzo6YmVmb3JlIHsgY29udGVudDogIlxmMjI1IjsgfQouYmktY2FyZC1pbWFnZTo6YmVmb3JlIHsgY29udGVudDogIlxmMjI2IjsgfQouYmktY2FyZC1saXN0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMjciOyB9Ci5iaS1jYXJkLXRleHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIyOCI7IH0KLmJpLWNhcmV0LWRvd24tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjI5IjsgfQouYmktY2FyZXQtZG93bi1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjJhIjsgfQouYmktY2FyZXQtZG93bi1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIyYiI7IH0KLmJpLWNhcmV0LWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIyYyI7IH0KLmJpLWNhcmV0LWxlZnQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjJkIjsgfQouYmktY2FyZXQtbGVmdC1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjJlIjsgfQouYmktY2FyZXQtbGVmdC1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIyZiI7IH0KLmJpLWNhcmV0LWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIzMCI7IH0KLmJpLWNhcmV0LXJpZ2h0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIzMSI7IH0KLmJpLWNhcmV0LXJpZ2h0LXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMzIiOyB9Ci5iaS1jYXJldC1yaWdodC1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIzMyI7IH0KLmJpLWNhcmV0LXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMzQiOyB9Ci5iaS1jYXJldC11cC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMzUiOyB9Ci5iaS1jYXJldC11cC1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjM2IjsgfQouYmktY2FyZXQtdXAtc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMzciOyB9Ci5iaS1jYXJldC11cDo6YmVmb3JlIHsgY29udGVudDogIlxmMjM4IjsgfQouYmktY2FydC1jaGVjay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyMzkiOyB9Ci5iaS1jYXJ0LWNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyM2EiOyB9Ci5iaS1jYXJ0LWRhc2gtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjNiIjsgfQouYmktY2FydC1kYXNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyM2MiOyB9Ci5iaS1jYXJ0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIzZCI7IH0KLmJpLWNhcnQtcGx1cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyM2UiOyB9Ci5iaS1jYXJ0LXBsdXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjIzZiI7IH0KLmJpLWNhcnQteC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNDAiOyB9Ci5iaS1jYXJ0LXg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0MSI7IH0KLmJpLWNhcnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0MiI7IH0KLmJpLWNhcnQyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNDMiOyB9Ci5iaS1jYXJ0Mzo6YmVmb3JlIHsgY29udGVudDogIlxmMjQ0IjsgfQouYmktY2FydDQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0NSI7IH0KLmJpLWNhc2gtc3RhY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0NiI7IH0KLmJpLWNhc2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0NyI7IH0KLmJpLWNhc3Q6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0OCI7IH0KLmJpLWNoYXQtZG90cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNDkiOyB9Ci5iaS1jaGF0LWRvdHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0YSI7IH0KLmJpLWNoYXQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjRiIjsgfQouYmktY2hhdC1sZWZ0LWRvdHMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjRjIjsgfQouYmktY2hhdC1sZWZ0LWRvdHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI0ZCI7IH0KLmJpLWNoYXQtbGVmdC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNGUiOyB9Ci5iaS1jaGF0LWxlZnQtcXVvdGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjRmIjsgfQouYmktY2hhdC1sZWZ0LXF1b3RlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNTAiOyB9Ci5iaS1jaGF0LWxlZnQtdGV4dC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNTEiOyB9Ci5iaS1jaGF0LWxlZnQtdGV4dDo6YmVmb3JlIHsgY29udGVudDogIlxmMjUyIjsgfQouYmktY2hhdC1sZWZ0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNTMiOyB9Ci5iaS1jaGF0LXF1b3RlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI1NCI7IH0KLmJpLWNoYXQtcXVvdGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI1NSI7IH0KLmJpLWNoYXQtcmlnaHQtZG90cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNTYiOyB9Ci5iaS1jaGF0LXJpZ2h0LWRvdHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI1NyI7IH0KLmJpLWNoYXQtcmlnaHQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjU4IjsgfQouYmktY2hhdC1yaWdodC1xdW90ZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNTkiOyB9Ci5iaS1jaGF0LXJpZ2h0LXF1b3RlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNWEiOyB9Ci5iaS1jaGF0LXJpZ2h0LXRleHQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjViIjsgfQouYmktY2hhdC1yaWdodC10ZXh0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNWMiOyB9Ci5iaS1jaGF0LXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNWQiOyB9Ci5iaS1jaGF0LXNxdWFyZS1kb3RzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI1ZSI7IH0KLmJpLWNoYXQtc3F1YXJlLWRvdHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI1ZiI7IH0KLmJpLWNoYXQtc3F1YXJlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI2MCI7IH0KLmJpLWNoYXQtc3F1YXJlLXF1b3RlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI2MSI7IH0KLmJpLWNoYXQtc3F1YXJlLXF1b3RlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNjIiOyB9Ci5iaS1jaGF0LXNxdWFyZS10ZXh0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI2MyI7IH0KLmJpLWNoYXQtc3F1YXJlLXRleHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI2NCI7IH0KLmJpLWNoYXQtc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNjUiOyB9Ci5iaS1jaGF0LXRleHQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjY2IjsgfQouYmktY2hhdC10ZXh0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNjciOyB9Ci5iaS1jaGF0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNjgiOyB9Ci5iaS1jaGVjay1hbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI2OSI7IH0KLmJpLWNoZWNrLWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNmEiOyB9Ci5iaS1jaGVjay1jaXJjbGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI2YiI7IH0KLmJpLWNoZWNrLXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNmMiOyB9Ci5iaS1jaGVjay1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI2ZCI7IH0KLmJpLWNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNmUiOyB9Ci5iaS1jaGVjazItYWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNmYiOyB9Ci5iaS1jaGVjazItY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNzAiOyB9Ci5iaS1jaGVjazItc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNzEiOyB9Ci5iaS1jaGVjazI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI3MiI7IH0KLmJpLWNoZXZyb24tYmFyLWNvbnRyYWN0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNzMiOyB9Ci5iaS1jaGV2cm9uLWJhci1kb3duOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNzQiOyB9Ci5iaS1jaGV2cm9uLWJhci1leHBhbmQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI3NSI7IH0KLmJpLWNoZXZyb24tYmFyLWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI3NiI7IH0KLmJpLWNoZXZyb24tYmFyLXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyNzciOyB9Ci5iaS1jaGV2cm9uLWJhci11cDo6YmVmb3JlIHsgY29udGVudDogIlxmMjc4IjsgfQouYmktY2hldnJvbi1jb21wYWN0LWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI3OSI7IH0KLmJpLWNoZXZyb24tY29tcGFjdC1sZWZ0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyN2EiOyB9Ci5iaS1jaGV2cm9uLWNvbXBhY3QtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI3YiI7IH0KLmJpLWNoZXZyb24tY29tcGFjdC11cDo6YmVmb3JlIHsgY29udGVudDogIlxmMjdjIjsgfQouYmktY2hldnJvbi1jb250cmFjdDo6YmVmb3JlIHsgY29udGVudDogIlxmMjdkIjsgfQouYmktY2hldnJvbi1kb3VibGUtZG93bjo6YmVmb3JlIHsgY29udGVudDogIlxmMjdlIjsgfQouYmktY2hldnJvbi1kb3VibGUtbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmMjdmIjsgfQouYmktY2hldnJvbi1kb3VibGUtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI4MCI7IH0KLmJpLWNoZXZyb24tZG91YmxlLXVwOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyODEiOyB9Ci5iaS1jaGV2cm9uLWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI4MiI7IH0KLmJpLWNoZXZyb24tZXhwYW5kOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyODMiOyB9Ci5iaS1jaGV2cm9uLWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI4NCI7IH0KLmJpLWNoZXZyb24tcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI4NSI7IH0KLmJpLWNoZXZyb24tdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI4NiI7IH0KLmJpLWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyODciOyB9Ci5iaS1jaXJjbGUtaGFsZjo6YmVmb3JlIHsgY29udGVudDogIlxmMjg4IjsgfQouYmktY2lyY2xlLXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmMjg5IjsgfQouYmktY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOGEiOyB9Ci5iaS1jbGlwYm9hcmQtY2hlY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI4YiI7IH0KLmJpLWNsaXBib2FyZC1kYXRhOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOGMiOyB9Ci5iaS1jbGlwYm9hcmQtbWludXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI4ZCI7IH0KLmJpLWNsaXBib2FyZC1wbHVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOGUiOyB9Ci5iaS1jbGlwYm9hcmQteDo6YmVmb3JlIHsgY29udGVudDogIlxmMjhmIjsgfQouYmktY2xpcGJvYXJkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOTAiOyB9Ci5iaS1jbG9jay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOTEiOyB9Ci5iaS1jbG9jay1oaXN0b3J5OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOTIiOyB9Ci5iaS1jbG9jazo6YmVmb3JlIHsgY29udGVudDogIlxmMjkzIjsgfQouYmktY2xvdWQtYXJyb3ctZG93bi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOTQiOyB9Ci5iaS1jbG91ZC1hcnJvdy1kb3duOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOTUiOyB9Ci5iaS1jbG91ZC1hcnJvdy11cC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOTYiOyB9Ci5iaS1jbG91ZC1hcnJvdy11cDo6YmVmb3JlIHsgY29udGVudDogIlxmMjk3IjsgfQouYmktY2xvdWQtY2hlY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMjk4IjsgfQouYmktY2xvdWQtY2hlY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI5OSI7IH0KLmJpLWNsb3VkLWRvd25sb2FkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI5YSI7IH0KLmJpLWNsb3VkLWRvd25sb2FkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOWIiOyB9Ci5iaS1jbG91ZC1kcml6emxlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI5YyI7IH0KLmJpLWNsb3VkLWRyaXp6bGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI5ZCI7IH0KLmJpLWNsb3VkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjI5ZSI7IH0KLmJpLWNsb3VkLWZvZy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyOWYiOyB9Ci5iaS1jbG91ZC1mb2c6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJhMCI7IH0KLmJpLWNsb3VkLWZvZzItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmExIjsgfQouYmktY2xvdWQtZm9nMjo6YmVmb3JlIHsgY29udGVudDogIlxmMmEyIjsgfQouYmktY2xvdWQtaGFpbC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYTMiOyB9Ci5iaS1jbG91ZC1oYWlsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYTQiOyB9Ci5iaS1jbG91ZC1oYXplLTE6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJhNSI7IH0KLmJpLWNsb3VkLWhhemUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmE2IjsgfQouYmktY2xvdWQtaGF6ZTo6YmVmb3JlIHsgY29udGVudDogIlxmMmE3IjsgfQouYmktY2xvdWQtaGF6ZTItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmE4IjsgfQouYmktY2xvdWQtbGlnaHRuaW5nLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJhOSI7IH0KLmJpLWNsb3VkLWxpZ2h0bmluZy1yYWluLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJhYSI7IH0KLmJpLWNsb3VkLWxpZ2h0bmluZy1yYWluOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYWIiOyB9Ci5iaS1jbG91ZC1saWdodG5pbmc6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJhYyI7IH0KLmJpLWNsb3VkLW1pbnVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJhZCI7IH0KLmJpLWNsb3VkLW1pbnVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYWUiOyB9Ci5iaS1jbG91ZC1tb29uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJhZiI7IH0KLmJpLWNsb3VkLW1vb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJiMCI7IH0KLmJpLWNsb3VkLXBsdXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmIxIjsgfQouYmktY2xvdWQtcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmMmIyIjsgfQouYmktY2xvdWQtcmFpbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYjMiOyB9Ci5iaS1jbG91ZC1yYWluLWhlYXZ5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJiNCI7IH0KLmJpLWNsb3VkLXJhaW4taGVhdnk6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJiNSI7IH0KLmJpLWNsb3VkLXJhaW46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJiNiI7IH0KLmJpLWNsb3VkLXNsYXNoLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJiNyI7IH0KLmJpLWNsb3VkLXNsYXNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYjgiOyB9Ci5iaS1jbG91ZC1zbGVldC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYjkiOyB9Ci5iaS1jbG91ZC1zbGVldDo6YmVmb3JlIHsgY29udGVudDogIlxmMmJhIjsgfQouYmktY2xvdWQtc25vdy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYmIiOyB9Ci5iaS1jbG91ZC1zbm93OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYmMiOyB9Ci5iaS1jbG91ZC1zdW4tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmJkIjsgfQouYmktY2xvdWQtc3VuOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYmUiOyB9Ci5iaS1jbG91ZC11cGxvYWQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmJmIjsgfQouYmktY2xvdWQtdXBsb2FkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyYzAiOyB9Ci5iaS1jbG91ZDo6YmVmb3JlIHsgY29udGVudDogIlxmMmMxIjsgfQouYmktY2xvdWRzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjMiI7IH0KLmJpLWNsb3Vkczo6YmVmb3JlIHsgY29udGVudDogIlxmMmMzIjsgfQouYmktY2xvdWR5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjNCI7IH0KLmJpLWNsb3VkeTo6YmVmb3JlIHsgY29udGVudDogIlxmMmM1IjsgfQouYmktY29kZS1zbGFzaDo6YmVmb3JlIHsgY29udGVudDogIlxmMmM2IjsgfQouYmktY29kZS1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjNyI7IH0KLmJpLWNvZGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjOCI7IH0KLmJpLWNvbGxlY3Rpb24tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmM5IjsgfQouYmktY29sbGVjdGlvbi1wbGF5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjYSI7IH0KLmJpLWNvbGxlY3Rpb24tcGxheTo6YmVmb3JlIHsgY29udGVudDogIlxmMmNiIjsgfQouYmktY29sbGVjdGlvbjo6YmVmb3JlIHsgY29udGVudDogIlxmMmNjIjsgfQouYmktY29sdW1ucy1nYXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjZCI7IH0KLmJpLWNvbHVtbnM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjZSI7IH0KLmJpLWNvbW1hbmQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJjZiI7IH0KLmJpLWNvbXBhc3MtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmQwIjsgfQouYmktY29tcGFzczo6YmVmb3JlIHsgY29udGVudDogIlxmMmQxIjsgfQouYmktY29uZS1zdHJpcGVkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZDIiOyB9Ci5iaS1jb25lOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZDMiOyB9Ci5iaS1jb250cm9sbGVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZDQiOyB9Ci5iaS1jcHUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmQ1IjsgfQouYmktY3B1OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZDYiOyB9Ci5iaS1jcmVkaXQtY2FyZC0yLWJhY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmQ3IjsgfQouYmktY3JlZGl0LWNhcmQtMi1iYWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZDgiOyB9Ci5iaS1jcmVkaXQtY2FyZC0yLWZyb250LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJkOSI7IH0KLmJpLWNyZWRpdC1jYXJkLTItZnJvbnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJkYSI7IH0KLmJpLWNyZWRpdC1jYXJkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJkYiI7IH0KLmJpLWNyZWRpdC1jYXJkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZGMiOyB9Ci5iaS1jcm9wOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZGQiOyB9Ci5iaS1jdXAtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmRlIjsgfQouYmktY3VwLXN0cmF3OjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZGYiOyB9Ci5iaS1jdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJlMCI7IH0KLmJpLWN1cnNvci1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZTEiOyB9Ci5iaS1jdXJzb3ItdGV4dDo6YmVmb3JlIHsgY29udGVudDogIlxmMmUyIjsgfQouYmktY3Vyc29yOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZTMiOyB9Ci5iaS1kYXNoLWNpcmNsZS1kb3R0ZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJlNCI7IH0KLmJpLWRhc2gtY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJlNSI7IH0KLmJpLWRhc2gtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZTYiOyB9Ci5iaS1kYXNoLXNxdWFyZS1kb3R0ZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJlNyI7IH0KLmJpLWRhc2gtc3F1YXJlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJlOCI7IH0KLmJpLWRhc2gtc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZTkiOyB9Ci5iaS1kYXNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZWEiOyB9Ci5iaS1kaWFncmFtLTItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmViIjsgfQouYmktZGlhZ3JhbS0yOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZWMiOyB9Ci5iaS1kaWFncmFtLTMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMmVkIjsgfQouYmktZGlhZ3JhbS0zOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZWUiOyB9Ci5iaS1kaWFtb25kLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJlZiI7IH0KLmJpLWRpYW1vbmQtaGFsZjo6YmVmb3JlIHsgY29udGVudDogIlxmMmYwIjsgfQouYmktZGlhbW9uZDo6YmVmb3JlIHsgY29udGVudDogIlxmMmYxIjsgfQouYmktZGljZS0xLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJmMiI7IH0KLmJpLWRpY2UtMTo6YmVmb3JlIHsgY29udGVudDogIlxmMmYzIjsgfQouYmktZGljZS0yLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJmNCI7IH0KLmJpLWRpY2UtMjo6YmVmb3JlIHsgY29udGVudDogIlxmMmY1IjsgfQouYmktZGljZS0zLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJmNiI7IH0KLmJpLWRpY2UtMzo6YmVmb3JlIHsgY29udGVudDogIlxmMmY3IjsgfQouYmktZGljZS00LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJmOCI7IH0KLmJpLWRpY2UtNDo6YmVmb3JlIHsgY29udGVudDogIlxmMmY5IjsgfQouYmktZGljZS01LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJmYSI7IH0KLmJpLWRpY2UtNTo6YmVmb3JlIHsgY29udGVudDogIlxmMmZiIjsgfQouYmktZGljZS02LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjJmYyI7IH0KLmJpLWRpY2UtNjo6YmVmb3JlIHsgY29udGVudDogIlxmMmZkIjsgfQouYmktZGlzYy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZmUiOyB9Ci5iaS1kaXNjOjpiZWZvcmUgeyBjb250ZW50OiAiXGYyZmYiOyB9Ci5iaS1kaXNjb3JkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMDAiOyB9Ci5iaS1kaXNwbGF5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMwMSI7IH0KLmJpLWRpc3BsYXk6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMwMiI7IH0KLmJpLWRpc3RyaWJ1dGUtaG9yaXpvbnRhbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzAzIjsgfQouYmktZGlzdHJpYnV0ZS12ZXJ0aWNhbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzA0IjsgfQouYmktZG9vci1jbG9zZWQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzA1IjsgfQouYmktZG9vci1jbG9zZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMwNiI7IH0KLmJpLWRvb3Itb3Blbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMDciOyB9Ci5iaS1kb29yLW9wZW46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMwOCI7IH0KLmJpLWRvdDo6YmVmb3JlIHsgY29udGVudDogIlxmMzA5IjsgfQouYmktZG93bmxvYWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMwYSI7IH0KLmJpLWRyb3BsZXQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzBiIjsgfQouYmktZHJvcGxldC1oYWxmOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMGMiOyB9Ci5iaS1kcm9wbGV0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMGQiOyB9Ci5iaS1lYXJidWRzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMGUiOyB9Ci5iaS1lYXNlbC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMGYiOyB9Ci5iaS1lYXNlbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzEwIjsgfQouYmktZWdnLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMxMSI7IH0KLmJpLWVnZy1mcmllZDo6YmVmb3JlIHsgY29udGVudDogIlxmMzEyIjsgfQouYmktZWdnOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMTMiOyB9Ci5iaS1lamVjdC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMTQiOyB9Ci5iaS1lamVjdDo6YmVmb3JlIHsgY29udGVudDogIlxmMzE1IjsgfQouYmktZW1vamktYW5ncnktZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzE2IjsgfQouYmktZW1vamktYW5ncnk6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMxNyI7IH0KLmJpLWVtb2ppLWRpenp5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMxOCI7IH0KLmJpLWVtb2ppLWRpenp5OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMTkiOyB9Ci5iaS1lbW9qaS1leHByZXNzaW9ubGVzcy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMWEiOyB9Ci5iaS1lbW9qaS1leHByZXNzaW9ubGVzczo6YmVmb3JlIHsgY29udGVudDogIlxmMzFiIjsgfQouYmktZW1vamktZnJvd24tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzFjIjsgfQouYmktZW1vamktZnJvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMxZCI7IH0KLmJpLWVtb2ppLWhlYXJ0LWV5ZXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzFlIjsgfQouYmktZW1vamktaGVhcnQtZXllczo6YmVmb3JlIHsgY29udGVudDogIlxmMzFmIjsgfQouYmktZW1vamktbGF1Z2hpbmctZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzIwIjsgfQouYmktZW1vamktbGF1Z2hpbmc6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMyMSI7IH0KLmJpLWVtb2ppLW5ldXRyYWwtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzIyIjsgfQouYmktZW1vamktbmV1dHJhbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzIzIjsgfQouYmktZW1vamktc21pbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzI0IjsgfQouYmktZW1vamktc21pbGUtdXBzaWRlLWRvd24tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzI1IjsgfQouYmktZW1vamktc21pbGUtdXBzaWRlLWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMyNiI7IH0KLmJpLWVtb2ppLXNtaWxlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMjciOyB9Ci5iaS1lbW9qaS1zdW5nbGFzc2VzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMyOCI7IH0KLmJpLWVtb2ppLXN1bmdsYXNzZXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMyOSI7IH0KLmJpLWVtb2ppLXdpbmstZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzJhIjsgfQouYmktZW1vamktd2luazo6YmVmb3JlIHsgY29udGVudDogIlxmMzJiIjsgfQouYmktZW52ZWxvcGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzJjIjsgfQouYmktZW52ZWxvcGUtb3Blbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMmQiOyB9Ci5iaS1lbnZlbG9wZS1vcGVuOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMmUiOyB9Ci5iaS1lbnZlbG9wZTo6YmVmb3JlIHsgY29udGVudDogIlxmMzJmIjsgfQouYmktZXJhc2VyLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMzMCI7IH0KLmJpLWVyYXNlcjo6YmVmb3JlIHsgY29udGVudDogIlxmMzMxIjsgfQouYmktZXhjbGFtYXRpb24tY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMzMiI7IH0KLmJpLWV4Y2xhbWF0aW9uLWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmMzMzIjsgfQouYmktZXhjbGFtYXRpb24tZGlhbW9uZC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMzQiOyB9Ci5iaS1leGNsYW1hdGlvbi1kaWFtb25kOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMzUiOyB9Ci5iaS1leGNsYW1hdGlvbi1vY3RhZ29uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMzNiI7IH0KLmJpLWV4Y2xhbWF0aW9uLW9jdGFnb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMzNyI7IH0KLmJpLWV4Y2xhbWF0aW9uLXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzMzgiOyB9Ci5iaS1leGNsYW1hdGlvbi1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMzOSI7IH0KLmJpLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMzYSI7IH0KLmJpLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzM2IiOyB9Ci5iaS1leGNsYW1hdGlvbjo6YmVmb3JlIHsgY29udGVudDogIlxmMzNjIjsgfQouYmktZXhjbHVkZTo6YmVmb3JlIHsgY29udGVudDogIlxmMzNkIjsgfQouYmktZXllLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjMzZSI7IH0KLmJpLWV5ZS1zbGFzaC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzM2YiOyB9Ci5iaS1leWUtc2xhc2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM0MCI7IH0KLmJpLWV5ZTo6YmVmb3JlIHsgY29udGVudDogIlxmMzQxIjsgfQouYmktZXllZHJvcHBlcjo6YmVmb3JlIHsgY29udGVudDogIlxmMzQyIjsgfQouYmktZXllZ2xhc3Nlczo6YmVmb3JlIHsgY29udGVudDogIlxmMzQzIjsgfQouYmktZmFjZWJvb2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM0NCI7IH0KLmJpLWZpbGUtYXJyb3ctZG93bi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNDUiOyB9Ci5iaS1maWxlLWFycm93LWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM0NiI7IH0KLmJpLWZpbGUtYXJyb3ctdXAtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzQ3IjsgfQouYmktZmlsZS1hcnJvdy11cDo6YmVmb3JlIHsgY29udGVudDogIlxmMzQ4IjsgfQouYmktZmlsZS1iYXItZ3JhcGgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzQ5IjsgfQouYmktZmlsZS1iYXItZ3JhcGg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM0YSI7IH0KLmJpLWZpbGUtYmluYXJ5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM0YiI7IH0KLmJpLWZpbGUtYmluYXJ5OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNGMiOyB9Ci5iaS1maWxlLWJyZWFrLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM0ZCI7IH0KLmJpLWZpbGUtYnJlYWs6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM0ZSI7IH0KLmJpLWZpbGUtY2hlY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzRmIjsgfQouYmktZmlsZS1jaGVjazo6YmVmb3JlIHsgY29udGVudDogIlxmMzUwIjsgfQouYmktZmlsZS1jb2RlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM1MSI7IH0KLmJpLWZpbGUtY29kZTo6YmVmb3JlIHsgY29udGVudDogIlxmMzUyIjsgfQouYmktZmlsZS1kaWZmLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM1MyI7IH0KLmJpLWZpbGUtZGlmZjo6YmVmb3JlIHsgY29udGVudDogIlxmMzU0IjsgfQouYmktZmlsZS1lYXJtYXJrLWFycm93LWRvd24tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzU1IjsgfQouYmktZmlsZS1lYXJtYXJrLWFycm93LWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM1NiI7IH0KLmJpLWZpbGUtZWFybWFyay1hcnJvdy11cC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNTciOyB9Ci5iaS1maWxlLWVhcm1hcmstYXJyb3ctdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM1OCI7IH0KLmJpLWZpbGUtZWFybWFyay1iYXItZ3JhcGgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzU5IjsgfQouYmktZmlsZS1lYXJtYXJrLWJhci1ncmFwaDo6YmVmb3JlIHsgY29udGVudDogIlxmMzVhIjsgfQouYmktZmlsZS1lYXJtYXJrLWJpbmFyeS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNWIiOyB9Ci5iaS1maWxlLWVhcm1hcmstYmluYXJ5OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNWMiOyB9Ci5iaS1maWxlLWVhcm1hcmstYnJlYWstZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzVkIjsgfQouYmktZmlsZS1lYXJtYXJrLWJyZWFrOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNWUiOyB9Ci5iaS1maWxlLWVhcm1hcmstY2hlY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzVmIjsgfQouYmktZmlsZS1lYXJtYXJrLWNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNjAiOyB9Ci5iaS1maWxlLWVhcm1hcmstY29kZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNjEiOyB9Ci5iaS1maWxlLWVhcm1hcmstY29kZTo6YmVmb3JlIHsgY29udGVudDogIlxmMzYyIjsgfQouYmktZmlsZS1lYXJtYXJrLWRpZmYtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzYzIjsgfQouYmktZmlsZS1lYXJtYXJrLWRpZmY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM2NCI7IH0KLmJpLWZpbGUtZWFybWFyay1lYXNlbC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNjUiOyB9Ci5iaS1maWxlLWVhcm1hcmstZWFzZWw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM2NiI7IH0KLmJpLWZpbGUtZWFybWFyay1leGNlbC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNjciOyB9Ci5iaS1maWxlLWVhcm1hcmstZXhjZWw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM2OCI7IH0KLmJpLWZpbGUtZWFybWFyay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNjkiOyB9Ci5iaS1maWxlLWVhcm1hcmstZm9udC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNmEiOyB9Ci5iaS1maWxlLWVhcm1hcmstZm9udDo6YmVmb3JlIHsgY29udGVudDogIlxmMzZiIjsgfQouYmktZmlsZS1lYXJtYXJrLWltYWdlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM2YyI7IH0KLmJpLWZpbGUtZWFybWFyay1pbWFnZTo6YmVmb3JlIHsgY29udGVudDogIlxmMzZkIjsgfQouYmktZmlsZS1lYXJtYXJrLWxvY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzZlIjsgfQouYmktZmlsZS1lYXJtYXJrLWxvY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM2ZiI7IH0KLmJpLWZpbGUtZWFybWFyay1sb2NrMi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNzAiOyB9Ci5iaS1maWxlLWVhcm1hcmstbG9jazI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM3MSI7IH0KLmJpLWZpbGUtZWFybWFyay1tZWRpY2FsLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM3MiI7IH0KLmJpLWZpbGUtZWFybWFyay1tZWRpY2FsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNzMiOyB9Ci5iaS1maWxlLWVhcm1hcmstbWludXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzc0IjsgfQouYmktZmlsZS1lYXJtYXJrLW1pbnVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNzUiOyB9Ci5iaS1maWxlLWVhcm1hcmstbXVzaWMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzc2IjsgfQouYmktZmlsZS1lYXJtYXJrLW11c2ljOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzNzciOyB9Ci5iaS1maWxlLWVhcm1hcmstcGVyc29uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM3OCI7IH0KLmJpLWZpbGUtZWFybWFyay1wZXJzb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM3OSI7IH0KLmJpLWZpbGUtZWFybWFyay1wbGF5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM3YSI7IH0KLmJpLWZpbGUtZWFybWFyay1wbGF5OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzN2IiOyB9Ci5iaS1maWxlLWVhcm1hcmstcGx1cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzN2MiOyB9Ci5iaS1maWxlLWVhcm1hcmstcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmMzdkIjsgfQouYmktZmlsZS1lYXJtYXJrLXBvc3QtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzdlIjsgfQouYmktZmlsZS1lYXJtYXJrLXBvc3Q6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM3ZiI7IH0KLmJpLWZpbGUtZWFybWFyay1wcHQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzgwIjsgfQouYmktZmlsZS1lYXJtYXJrLXBwdDo6YmVmb3JlIHsgY29udGVudDogIlxmMzgxIjsgfQouYmktZmlsZS1lYXJtYXJrLXJpY2h0ZXh0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM4MiI7IH0KLmJpLWZpbGUtZWFybWFyay1yaWNodGV4dDo6YmVmb3JlIHsgY29udGVudDogIlxmMzgzIjsgfQouYmktZmlsZS1lYXJtYXJrLXJ1bGVkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM4NCI7IH0KLmJpLWZpbGUtZWFybWFyay1ydWxlZDo6YmVmb3JlIHsgY29udGVudDogIlxmMzg1IjsgfQouYmktZmlsZS1lYXJtYXJrLXNsaWRlcy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzODYiOyB9Ci5iaS1maWxlLWVhcm1hcmstc2xpZGVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzODciOyB9Ci5iaS1maWxlLWVhcm1hcmstc3ByZWFkc2hlZXQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzg4IjsgfQouYmktZmlsZS1lYXJtYXJrLXNwcmVhZHNoZWV0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzODkiOyB9Ci5iaS1maWxlLWVhcm1hcmstdGV4dC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzOGEiOyB9Ci5iaS1maWxlLWVhcm1hcmstdGV4dDo6YmVmb3JlIHsgY29udGVudDogIlxmMzhiIjsgfQouYmktZmlsZS1lYXJtYXJrLXdvcmQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzhjIjsgfQouYmktZmlsZS1lYXJtYXJrLXdvcmQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM4ZCI7IH0KLmJpLWZpbGUtZWFybWFyay14LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM4ZSI7IH0KLmJpLWZpbGUtZWFybWFyay14OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzOGYiOyB9Ci5iaS1maWxlLWVhcm1hcmstemlwLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM5MCI7IH0KLmJpLWZpbGUtZWFybWFyay16aXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM5MSI7IH0KLmJpLWZpbGUtZWFybWFyazo6YmVmb3JlIHsgY29udGVudDogIlxmMzkyIjsgfQouYmktZmlsZS1lYXNlbC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzOTMiOyB9Ci5iaS1maWxlLWVhc2VsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzOTQiOyB9Ci5iaS1maWxlLWV4Y2VsLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM5NSI7IH0KLmJpLWZpbGUtZXhjZWw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM5NiI7IH0KLmJpLWZpbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzk3IjsgfQouYmktZmlsZS1mb250LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM5OCI7IH0KLmJpLWZpbGUtZm9udDo6YmVmb3JlIHsgY29udGVudDogIlxmMzk5IjsgfQouYmktZmlsZS1pbWFnZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzOWEiOyB9Ci5iaS1maWxlLWltYWdlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzOWIiOyB9Ci5iaS1maWxlLWxvY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmMzljIjsgfQouYmktZmlsZS1sb2NrOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzOWQiOyB9Ci5iaS1maWxlLWxvY2syLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM5ZSI7IH0KLmJpLWZpbGUtbG9jazI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjM5ZiI7IH0KLmJpLWZpbGUtbWVkaWNhbC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYTAiOyB9Ci5iaS1maWxlLW1lZGljYWw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNhMSI7IH0KLmJpLWZpbGUtbWludXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2EyIjsgfQouYmktZmlsZS1taW51czo6YmVmb3JlIHsgY29udGVudDogIlxmM2EzIjsgfQouYmktZmlsZS1tdXNpYy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYTQiOyB9Ci5iaS1maWxlLW11c2ljOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYTUiOyB9Ci5iaS1maWxlLXBlcnNvbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYTYiOyB9Ci5iaS1maWxlLXBlcnNvbjo6YmVmb3JlIHsgY29udGVudDogIlxmM2E3IjsgfQouYmktZmlsZS1wbGF5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNhOCI7IH0KLmJpLWZpbGUtcGxheTo6YmVmb3JlIHsgY29udGVudDogIlxmM2E5IjsgfQouYmktZmlsZS1wbHVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNhYSI7IH0KLmJpLWZpbGUtcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmM2FiIjsgfQouYmktZmlsZS1wb3N0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNhYyI7IH0KLmJpLWZpbGUtcG9zdDo6YmVmb3JlIHsgY29udGVudDogIlxmM2FkIjsgfQouYmktZmlsZS1wcHQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2FlIjsgfQouYmktZmlsZS1wcHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNhZiI7IH0KLmJpLWZpbGUtcmljaHRleHQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2IwIjsgfQouYmktZmlsZS1yaWNodGV4dDo6YmVmb3JlIHsgY29udGVudDogIlxmM2IxIjsgfQouYmktZmlsZS1ydWxlZC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYjIiOyB9Ci5iaS1maWxlLXJ1bGVkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYjMiOyB9Ci5iaS1maWxlLXNsaWRlcy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYjQiOyB9Ci5iaS1maWxlLXNsaWRlczo6YmVmb3JlIHsgY29udGVudDogIlxmM2I1IjsgfQouYmktZmlsZS1zcHJlYWRzaGVldC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYjYiOyB9Ci5iaS1maWxlLXNwcmVhZHNoZWV0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYjciOyB9Ci5iaS1maWxlLXRleHQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2I4IjsgfQouYmktZmlsZS10ZXh0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYjkiOyB9Ci5iaS1maWxlLXdvcmQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2JhIjsgfQouYmktZmlsZS13b3JkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYmIiOyB9Ci5iaS1maWxlLXgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2JjIjsgfQouYmktZmlsZS14OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYmQiOyB9Ci5iaS1maWxlLXppcC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYmUiOyB9Ci5iaS1maWxlLXppcDo6YmVmb3JlIHsgY29udGVudDogIlxmM2JmIjsgfQouYmktZmlsZTo6YmVmb3JlIHsgY29udGVudDogIlxmM2MwIjsgfQouYmktZmlsZXMtYWx0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYzEiOyB9Ci5iaS1maWxlczo6YmVmb3JlIHsgY29udGVudDogIlxmM2MyIjsgfQouYmktZmlsbTo6YmVmb3JlIHsgY29udGVudDogIlxmM2MzIjsgfQouYmktZmlsdGVyLWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYzQiOyB9Ci5iaS1maWx0ZXItY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYzUiOyB9Ci5iaS1maWx0ZXItbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmM2M2IjsgfQouYmktZmlsdGVyLXJpZ2h0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzYzciOyB9Ci5iaS1maWx0ZXItc3F1YXJlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNjOCI7IH0KLmJpLWZpbHRlci1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNjOSI7IH0KLmJpLWZpbHRlcjo6YmVmb3JlIHsgY29udGVudDogIlxmM2NhIjsgfQouYmktZmxhZy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzY2IiOyB9Ci5iaS1mbGFnOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzY2MiOyB9Ci5iaS1mbG93ZXIxOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzY2QiOyB9Ci5iaS1mbG93ZXIyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzY2UiOyB9Ci5iaS1mbG93ZXIzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzY2YiOyB9Ci5iaS1mb2xkZXItY2hlY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNkMCI7IH0KLmJpLWZvbGRlci1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZDEiOyB9Ci5iaS1mb2xkZXItbWludXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNkMiI7IH0KLmJpLWZvbGRlci1wbHVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZDMiOyB9Ci5iaS1mb2xkZXItc3ltbGluay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZDQiOyB9Ci5iaS1mb2xkZXItc3ltbGluazo6YmVmb3JlIHsgY29udGVudDogIlxmM2Q1IjsgfQouYmktZm9sZGVyLXg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNkNiI7IH0KLmJpLWZvbGRlcjo6YmVmb3JlIHsgY29udGVudDogIlxmM2Q3IjsgfQouYmktZm9sZGVyMi1vcGVuOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZDgiOyB9Ci5iaS1mb2xkZXIyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZDkiOyB9Ci5iaS1mb250czo6YmVmb3JlIHsgY29udGVudDogIlxmM2RhIjsgfQouYmktZm9yd2FyZC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZGIiOyB9Ci5iaS1mb3J3YXJkOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZGMiOyB9Ci5iaS1mcm9udDo6YmVmb3JlIHsgY29udGVudDogIlxmM2RkIjsgfQouYmktZnVsbHNjcmVlbi1leGl0OjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZGUiOyB9Ci5iaS1mdWxsc2NyZWVuOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZGYiOyB9Ci5iaS1mdW5uZWwtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2UwIjsgfQouYmktZnVubmVsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZTEiOyB9Ci5iaS1nZWFyLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNlMiI7IH0KLmJpLWdlYXItd2lkZS1jb25uZWN0ZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNlMyI7IH0KLmJpLWdlYXItd2lkZTo6YmVmb3JlIHsgY29udGVudDogIlxmM2U0IjsgfQouYmktZ2Vhcjo6YmVmb3JlIHsgY29udGVudDogIlxmM2U1IjsgfQouYmktZ2VtOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZTYiOyB9Ci5iaS1nZW8tYWx0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNlNyI7IH0KLmJpLWdlby1hbHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNlOCI7IH0KLmJpLWdlby1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZTkiOyB9Ci5iaS1nZW86OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNlYSI7IH0KLmJpLWdpZnQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2ViIjsgfQouYmktZ2lmdDo6YmVmb3JlIHsgY29udGVudDogIlxmM2VjIjsgfQouYmktZ2l0aHViOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZWQiOyB9Ci5iaS1nbG9iZTo6YmVmb3JlIHsgY29udGVudDogIlxmM2VlIjsgfQouYmktZ2xvYmUyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZWYiOyB9Ci5iaS1nb29nbGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNmMCI7IH0KLmJpLWdyYXBoLWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNmMSI7IH0KLmJpLWdyYXBoLXVwOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZjIiOyB9Ci5iaS1ncmlkLTF4Mi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZjMiOyB9Ci5iaS1ncmlkLTF4Mjo6YmVmb3JlIHsgY29udGVudDogIlxmM2Y0IjsgfQouYmktZ3JpZC0zeDItZ2FwLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNmNSI7IH0KLmJpLWdyaWQtM3gyLWdhcDo6YmVmb3JlIHsgY29udGVudDogIlxmM2Y2IjsgfQouYmktZ3JpZC0zeDI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNmNyI7IH0KLmJpLWdyaWQtM3gzLWdhcC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZjgiOyB9Ci5iaS1ncmlkLTN4My1nYXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNmOSI7IH0KLmJpLWdyaWQtM3gzOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZmEiOyB9Ci5iaS1ncmlkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNmYiI7IH0KLmJpLWdyaWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjNmYyI7IH0KLmJpLWdyaXAtaG9yaXpvbnRhbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2ZkIjsgfQouYmktZ3JpcC12ZXJ0aWNhbDo6YmVmb3JlIHsgY29udGVudDogIlxmM2ZlIjsgfQouYmktaGFtbWVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGYzZmYiOyB9Ci5iaS1oYW5kLWluZGV4LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQwMCI7IH0KLmJpLWhhbmQtaW5kZXgtdGh1bWItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDAxIjsgfQouYmktaGFuZC1pbmRleC10aHVtYjo6YmVmb3JlIHsgY29udGVudDogIlxmNDAyIjsgfQouYmktaGFuZC1pbmRleDo6YmVmb3JlIHsgY29udGVudDogIlxmNDAzIjsgfQouYmktaGFuZC10aHVtYnMtZG93bi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MDQiOyB9Ci5iaS1oYW5kLXRodW1icy1kb3duOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MDUiOyB9Ci5iaS1oYW5kLXRodW1icy11cC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MDYiOyB9Ci5iaS1oYW5kLXRodW1icy11cDo6YmVmb3JlIHsgY29udGVudDogIlxmNDA3IjsgfQouYmktaGFuZGJhZy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MDgiOyB9Ci5iaS1oYW5kYmFnOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MDkiOyB9Ci5iaS1oYXNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MGEiOyB9Ci5iaS1oZGQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDBiIjsgfQouYmktaGRkLW5ldHdvcmstZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDBjIjsgfQouYmktaGRkLW5ldHdvcms6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQwZCI7IH0KLmJpLWhkZC1yYWNrLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQwZSI7IH0KLmJpLWhkZC1yYWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MGYiOyB9Ci5iaS1oZGQtc3RhY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDEwIjsgfQouYmktaGRkLXN0YWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MTEiOyB9Ci5iaS1oZGQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxMiI7IH0KLmJpLWhlYWRwaG9uZXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxMyI7IH0KLmJpLWhlYWRzZXQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxNCI7IH0KLmJpLWhlYXJ0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxNSI7IH0KLmJpLWhlYXJ0LWhhbGY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxNiI7IH0KLmJpLWhlYXJ0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MTciOyB9Ci5iaS1oZXB0YWdvbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MTgiOyB9Ci5iaS1oZXB0YWdvbi1oYWxmOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MTkiOyB9Ci5iaS1oZXB0YWdvbjo6YmVmb3JlIHsgY29udGVudDogIlxmNDFhIjsgfQouYmktaGV4YWdvbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MWIiOyB9Ci5iaS1oZXhhZ29uLWhhbGY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxYyI7IH0KLmJpLWhleGFnb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxZCI7IH0KLmJpLWhvdXJnbGFzcy1ib3R0b206OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQxZSI7IH0KLmJpLWhvdXJnbGFzcy1zcGxpdDo6YmVmb3JlIHsgY29udGVudDogIlxmNDFmIjsgfQouYmktaG91cmdsYXNzLXRvcDo6YmVmb3JlIHsgY29udGVudDogIlxmNDIwIjsgfQouYmktaG91cmdsYXNzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MjEiOyB9Ci5iaS1ob3VzZS1kb29yLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyMiI7IH0KLmJpLWhvdXNlLWRvb3I6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyMyI7IH0KLmJpLWhvdXNlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyNCI7IH0KLmJpLWhvdXNlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MjUiOyB9Ci5iaS1ocjo6YmVmb3JlIHsgY29udGVudDogIlxmNDI2IjsgfQouYmktaHVycmljYW5lOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MjciOyB9Ci5iaS1pbWFnZS1hbHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyOCI7IH0KLmJpLWltYWdlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyOSI7IH0KLmJpLWltYWdlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MmEiOyB9Ci5iaS1pbWFnZXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyYiI7IH0KLmJpLWluYm94LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyYyI7IH0KLmJpLWluYm94OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MmQiOyB9Ci5iaS1pbmJveGVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyZSI7IH0KLmJpLWluYm94ZXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQyZiI7IH0KLmJpLWluZm8tY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQzMCI7IH0KLmJpLWluZm8tY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MzEiOyB9Ci5iaS1pbmZvLXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MzIiOyB9Ci5iaS1pbmZvLXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmNDMzIjsgfQouYmktaW5mbzo6YmVmb3JlIHsgY29udGVudDogIlxmNDM0IjsgfQouYmktaW5wdXQtY3Vyc29yLXRleHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQzNSI7IH0KLmJpLWlucHV0LWN1cnNvcjo6YmVmb3JlIHsgY29udGVudDogIlxmNDM2IjsgfQouYmktaW5zdGFncmFtOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0MzciOyB9Ci5iaS1pbnRlcnNlY3Q6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQzOCI7IH0KLmJpLWpvdXJuYWwtYWxidW06OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQzOSI7IH0KLmJpLWpvdXJuYWwtYXJyb3ctZG93bjo6YmVmb3JlIHsgY29udGVudDogIlxmNDNhIjsgfQouYmktam91cm5hbC1hcnJvdy11cDo6YmVmb3JlIHsgY29udGVudDogIlxmNDNiIjsgfQouYmktam91cm5hbC1ib29rbWFyay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0M2MiOyB9Ci5iaS1qb3VybmFsLWJvb2ttYXJrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0M2QiOyB9Ci5iaS1qb3VybmFsLWNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0M2UiOyB9Ci5iaS1qb3VybmFsLWNvZGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQzZiI7IH0KLmJpLWpvdXJuYWwtbWVkaWNhbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDQwIjsgfQouYmktam91cm5hbC1taW51czo6YmVmb3JlIHsgY29udGVudDogIlxmNDQxIjsgfQouYmktam91cm5hbC1wbHVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NDIiOyB9Ci5iaS1qb3VybmFsLXJpY2h0ZXh0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NDMiOyB9Ci5iaS1qb3VybmFsLXRleHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ0NCI7IH0KLmJpLWpvdXJuYWwteDo6YmVmb3JlIHsgY29udGVudDogIlxmNDQ1IjsgfQouYmktam91cm5hbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDQ2IjsgfQouYmktam91cm5hbHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ0NyI7IH0KLmJpLWpveXN0aWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NDgiOyB9Ci5iaS1qdXN0aWZ5LWxlZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ0OSI7IH0KLmJpLWp1c3RpZnktcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ0YSI7IH0KLmJpLWp1c3RpZnk6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ0YiI7IH0KLmJpLWthbmJhbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NGMiOyB9Ci5iaS1rYW5iYW46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ0ZCI7IH0KLmJpLWtleS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NGUiOyB9Ci5iaS1rZXk6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ0ZiI7IH0KLmJpLWtleWJvYXJkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ1MCI7IH0KLmJpLWtleWJvYXJkOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NTEiOyB9Ci5iaS1sYWRkZXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ1MiI7IH0KLmJpLWxhbXAtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDUzIjsgfQouYmktbGFtcDo6YmVmb3JlIHsgY29udGVudDogIlxmNDU0IjsgfQouYmktbGFwdG9wLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ1NSI7IH0KLmJpLWxhcHRvcDo6YmVmb3JlIHsgY29udGVudDogIlxmNDU2IjsgfQouYmktbGF5ZXItYmFja3dhcmQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ1NyI7IH0KLmJpLWxheWVyLWZvcndhcmQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ1OCI7IH0KLmJpLWxheWVycy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NTkiOyB9Ci5iaS1sYXllcnMtaGFsZjo6YmVmb3JlIHsgY29udGVudDogIlxmNDVhIjsgfQouYmktbGF5ZXJzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NWIiOyB9Ci5iaS1sYXlvdXQtc2lkZWJhci1pbnNldC1yZXZlcnNlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NWMiOyB9Ci5iaS1sYXlvdXQtc2lkZWJhci1pbnNldDo6YmVmb3JlIHsgY29udGVudDogIlxmNDVkIjsgfQouYmktbGF5b3V0LXNpZGViYXItcmV2ZXJzZTo6YmVmb3JlIHsgY29udGVudDogIlxmNDVlIjsgfQouYmktbGF5b3V0LXNpZGViYXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ1ZiI7IH0KLmJpLWxheW91dC1zcGxpdDo6YmVmb3JlIHsgY29udGVudDogIlxmNDYwIjsgfQouYmktbGF5b3V0LXRleHQtc2lkZWJhci1yZXZlcnNlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NjEiOyB9Ci5iaS1sYXlvdXQtdGV4dC1zaWRlYmFyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NjIiOyB9Ci5iaS1sYXlvdXQtdGV4dC13aW5kb3ctcmV2ZXJzZTo6YmVmb3JlIHsgY29udGVudDogIlxmNDYzIjsgfQouYmktbGF5b3V0LXRleHQtd2luZG93OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NjQiOyB9Ci5iaS1sYXlvdXQtdGhyZWUtY29sdW1uczo6YmVmb3JlIHsgY29udGVudDogIlxmNDY1IjsgfQouYmktbGF5b3V0LXd0Zjo6YmVmb3JlIHsgY29udGVudDogIlxmNDY2IjsgfQouYmktbGlmZS1wcmVzZXJ2ZXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ2NyI7IH0KLmJpLWxpZ2h0YnVsYi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NjgiOyB9Ci5iaS1saWdodGJ1bGItb2ZmLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ2OSI7IH0KLmJpLWxpZ2h0YnVsYi1vZmY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ2YSI7IH0KLmJpLWxpZ2h0YnVsYjo6YmVmb3JlIHsgY29udGVudDogIlxmNDZiIjsgfQouYmktbGlnaHRuaW5nLWNoYXJnZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NmMiOyB9Ci5iaS1saWdodG5pbmctY2hhcmdlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NmQiOyB9Ci5iaS1saWdodG5pbmctZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDZlIjsgfQouYmktbGlnaHRuaW5nOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NmYiOyB9Ci5iaS1saW5rLTQ1ZGVnOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NzAiOyB9Ci5iaS1saW5rOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0NzEiOyB9Ci5iaS1saW5rZWRpbjo6YmVmb3JlIHsgY29udGVudDogIlxmNDcyIjsgfQouYmktbGlzdC1jaGVjazo6YmVmb3JlIHsgY29udGVudDogIlxmNDczIjsgfQouYmktbGlzdC1uZXN0ZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ3NCI7IH0KLmJpLWxpc3Qtb2w6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ3NSI7IH0KLmJpLWxpc3Qtc3RhcnM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ3NiI7IH0KLmJpLWxpc3QtdGFzazo6YmVmb3JlIHsgY29udGVudDogIlxmNDc3IjsgfQouYmktbGlzdC11bDo6YmVmb3JlIHsgY29udGVudDogIlxmNDc4IjsgfQouYmktbGlzdDo6YmVmb3JlIHsgY29udGVudDogIlxmNDc5IjsgfQouYmktbG9jay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0N2EiOyB9Ci5iaS1sb2NrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0N2IiOyB9Ci5iaS1tYWlsYm94OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0N2MiOyB9Ci5iaS1tYWlsYm94Mjo6YmVmb3JlIHsgY29udGVudDogIlxmNDdkIjsgfQouYmktbWFwLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ3ZSI7IH0KLmJpLW1hcDo6YmVmb3JlIHsgY29udGVudDogIlxmNDdmIjsgfQouYmktbWFya2Rvd24tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDgwIjsgfQouYmktbWFya2Rvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4MSI7IH0KLmJpLW1hc2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4MiI7IH0KLmJpLW1lZ2FwaG9uZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ODMiOyB9Ci5iaS1tZWdhcGhvbmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4NCI7IH0KLmJpLW1lbnUtYXBwLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4NSI7IH0KLmJpLW1lbnUtYXBwOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ODYiOyB9Ci5iaS1tZW51LWJ1dHRvbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ODciOyB9Ci5iaS1tZW51LWJ1dHRvbi13aWRlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4OCI7IH0KLmJpLW1lbnUtYnV0dG9uLXdpZGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4OSI7IH0KLmJpLW1lbnUtYnV0dG9uOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OGEiOyB9Ci5iaS1tZW51LWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4YiI7IH0KLmJpLW1lbnUtdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ4YyI7IH0KLmJpLW1pYy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OGQiOyB9Ci5iaS1taWMtbXV0ZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OGUiOyB9Ci5iaS1taWMtbXV0ZTo6YmVmb3JlIHsgY29udGVudDogIlxmNDhmIjsgfQouYmktbWljOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OTAiOyB9Ci5iaS1taW5lY2FydC1sb2FkZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ5MSI7IH0KLmJpLW1pbmVjYXJ0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OTIiOyB9Ci5iaS1tb2lzdHVyZTo6YmVmb3JlIHsgY29udGVudDogIlxmNDkzIjsgfQouYmktbW9vbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OTQiOyB9Ci5iaS1tb29uLXN0YXJzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ5NSI7IH0KLmJpLW1vb24tc3RhcnM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ5NiI7IH0KLmJpLW1vb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ5NyI7IH0KLmJpLW1vdXNlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjQ5OCI7IH0KLmJpLW1vdXNlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OTkiOyB9Ci5iaS1tb3VzZTItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDlhIjsgfQouYmktbW91c2UyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OWIiOyB9Ci5iaS1tb3VzZTMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNDljIjsgfQouYmktbW91c2UzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OWQiOyB9Ci5iaS1tdXNpYy1ub3RlLWJlYW1lZDo6YmVmb3JlIHsgY29udGVudDogIlxmNDllIjsgfQouYmktbXVzaWMtbm90ZS1saXN0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0OWYiOyB9Ci5iaS1tdXNpYy1ub3RlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YTAiOyB9Ci5iaS1tdXNpYy1wbGF5ZXItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGExIjsgfQouYmktbXVzaWMtcGxheWVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YTIiOyB9Ci5iaS1uZXdzcGFwZXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRhMyI7IH0KLmJpLW5vZGUtbWludXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGE0IjsgfQouYmktbm9kZS1taW51czo6YmVmb3JlIHsgY29udGVudDogIlxmNGE1IjsgfQouYmktbm9kZS1wbHVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRhNiI7IH0KLmJpLW5vZGUtcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmNGE3IjsgfQouYmktbnV0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRhOCI7IH0KLmJpLW51dDo6YmVmb3JlIHsgY29udGVudDogIlxmNGE5IjsgfQouYmktb2N0YWdvbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YWEiOyB9Ci5iaS1vY3RhZ29uLWhhbGY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRhYiI7IH0KLmJpLW9jdGFnb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRhYyI7IH0KLmJpLW9wdGlvbjo6YmVmb3JlIHsgY29udGVudDogIlxmNGFkIjsgfQouYmktb3V0bGV0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YWUiOyB9Ci5iaS1wYWludC1idWNrZXQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRhZiI7IH0KLmJpLXBhbGV0dGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGIwIjsgfQouYmktcGFsZXR0ZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGIxIjsgfQouYmktcGFsZXR0ZTI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRiMiI7IH0KLmJpLXBhcGVyY2xpcDo6YmVmb3JlIHsgY29udGVudDogIlxmNGIzIjsgfQouYmktcGFyYWdyYXBoOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YjQiOyB9Ci5iaS1wYXRjaC1jaGVjay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YjUiOyB9Ci5iaS1wYXRjaC1jaGVjazo6YmVmb3JlIHsgY29udGVudDogIlxmNGI2IjsgfQouYmktcGF0Y2gtZXhjbGFtYXRpb24tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGI3IjsgfQouYmktcGF0Y2gtZXhjbGFtYXRpb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRiOCI7IH0KLmJpLXBhdGNoLW1pbnVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRiOSI7IH0KLmJpLXBhdGNoLW1pbnVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YmEiOyB9Ci5iaS1wYXRjaC1wbHVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRiYiI7IH0KLmJpLXBhdGNoLXBsdXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRiYyI7IH0KLmJpLXBhdGNoLXF1ZXN0aW9uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRiZCI7IH0KLmJpLXBhdGNoLXF1ZXN0aW9uOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YmUiOyB9Ci5iaS1wYXVzZS1idG4tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGJmIjsgfQouYmktcGF1c2UtYnRuOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YzAiOyB9Ci5iaS1wYXVzZS1jaXJjbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGMxIjsgfQouYmktcGF1c2UtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YzIiOyB9Ci5iaS1wYXVzZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YzMiOyB9Ci5iaS1wYXVzZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGM0IjsgfQouYmktcGVhY2UtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGM1IjsgfQouYmktcGVhY2U6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRjNiI7IH0KLmJpLXBlbi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YzciOyB9Ci5iaS1wZW46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRjOCI7IH0KLmJpLXBlbmNpbC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0YzkiOyB9Ci5iaS1wZW5jaWwtc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0Y2EiOyB9Ci5iaS1wZW5jaWw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRjYiI7IH0KLmJpLXBlbnRhZ29uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRjYyI7IH0KLmJpLXBlbnRhZ29uLWhhbGY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRjZCI7IH0KLmJpLXBlbnRhZ29uOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0Y2UiOyB9Ci5iaS1wZW9wbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGNmIjsgfQouYmktcGVvcGxlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZDAiOyB9Ci5iaS1wZXJjZW50OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZDEiOyB9Ci5iaS1wZXJzb24tYmFkZ2UtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGQyIjsgfQouYmktcGVyc29uLWJhZGdlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZDMiOyB9Ci5iaS1wZXJzb24tYm91bmRpbmctYm94OjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZDQiOyB9Ci5iaS1wZXJzb24tY2hlY2stZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGQ1IjsgfQouYmktcGVyc29uLWNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZDYiOyB9Ci5iaS1wZXJzb24tY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZDciOyB9Ci5iaS1wZXJzb24tZGFzaC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZDgiOyB9Ci5iaS1wZXJzb24tZGFzaDo6YmVmb3JlIHsgY29udGVudDogIlxmNGQ5IjsgfQouYmktcGVyc29uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRkYSI7IH0KLmJpLXBlcnNvbi1saW5lcy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZGIiOyB9Ci5iaS1wZXJzb24tcGx1cy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZGMiOyB9Ci5iaS1wZXJzb24tcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmNGRkIjsgfQouYmktcGVyc29uLXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGRlIjsgfQouYmktcGVyc29uLXgtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGRmIjsgfQouYmktcGVyc29uLXg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRlMCI7IH0KLmJpLXBlcnNvbjo6YmVmb3JlIHsgY29udGVudDogIlxmNGUxIjsgfQouYmktcGhvbmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGUyIjsgfQouYmktcGhvbmUtbGFuZHNjYXBlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRlMyI7IH0KLmJpLXBob25lLWxhbmRzY2FwZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGU0IjsgfQouYmktcGhvbmUtdmlicmF0ZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZTUiOyB9Ci5iaS1waG9uZS12aWJyYXRlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZTYiOyB9Ci5iaS1waG9uZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGU3IjsgfQouYmktcGllLWNoYXJ0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRlOCI7IH0KLmJpLXBpZS1jaGFydDo6YmVmb3JlIHsgY29udGVudDogIlxmNGU5IjsgfQouYmktcGluLWFuZ2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRlYSI7IH0KLmJpLXBpbi1hbmdsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGViIjsgfQouYmktcGluLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRlYyI7IH0KLmJpLXBpbjo6YmVmb3JlIHsgY29udGVudDogIlxmNGVkIjsgfQouYmktcGlwLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRlZSI7IH0KLmJpLXBpcDo6YmVmb3JlIHsgY29udGVudDogIlxmNGVmIjsgfQouYmktcGxheS1idG4tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGYwIjsgfQouYmktcGxheS1idG46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRmMSI7IH0KLmJpLXBsYXktY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRmMiI7IH0KLmJpLXBsYXktY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZjMiOyB9Ci5iaS1wbGF5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRmNCI7IH0KLmJpLXBsYXk6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRmNSI7IH0KLmJpLXBsdWctZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNGY2IjsgfQouYmktcGx1Zzo6YmVmb3JlIHsgY29udGVudDogIlxmNGY3IjsgfQouYmktcGx1cy1jaXJjbGUtZG90dGVkOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZjgiOyB9Ci5iaS1wbHVzLWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZjkiOyB9Ci5iaS1wbHVzLWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGZhIjsgfQouYmktcGx1cy1zcXVhcmUtZG90dGVkOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZmIiOyB9Ci5iaS1wbHVzLXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY0ZmMiOyB9Ci5iaS1wbHVzLXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmNGZkIjsgfQouYmktcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmNGZlIjsgfQouYmktcG93ZXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjRmZiI7IH0KLmJpLXByaW50ZXItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTAwIjsgfQouYmktcHJpbnRlcjo6YmVmb3JlIHsgY29udGVudDogIlxmNTAxIjsgfQouYmktcHV6emxlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUwMiI7IH0KLmJpLXB1enpsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTAzIjsgfQouYmktcXVlc3Rpb24tY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUwNCI7IH0KLmJpLXF1ZXN0aW9uLWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTA1IjsgfQouYmktcXVlc3Rpb24tZGlhbW9uZC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MDYiOyB9Ci5iaS1xdWVzdGlvbi1kaWFtb25kOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MDciOyB9Ci5iaS1xdWVzdGlvbi1vY3RhZ29uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUwOCI7IH0KLmJpLXF1ZXN0aW9uLW9jdGFnb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUwOSI7IH0KLmJpLXF1ZXN0aW9uLXNxdWFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MGEiOyB9Ci5iaS1xdWVzdGlvbi1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUwYiI7IH0KLmJpLXF1ZXN0aW9uOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MGMiOyB9Ci5iaS1yYWluYm93OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MGQiOyB9Ci5iaS1yZWNlaXB0LWN1dG9mZjo6YmVmb3JlIHsgY29udGVudDogIlxmNTBlIjsgfQouYmktcmVjZWlwdDo6YmVmb3JlIHsgY29udGVudDogIlxmNTBmIjsgfQouYmktcmVjZXB0aW9uLTA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUxMCI7IH0KLmJpLXJlY2VwdGlvbi0xOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MTEiOyB9Ci5iaS1yZWNlcHRpb24tMjo6YmVmb3JlIHsgY29udGVudDogIlxmNTEyIjsgfQouYmktcmVjZXB0aW9uLTM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUxMyI7IH0KLmJpLXJlY2VwdGlvbi00OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MTQiOyB9Ci5iaS1yZWNvcmQtYnRuLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUxNSI7IH0KLmJpLXJlY29yZC1idG46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUxNiI7IH0KLmJpLXJlY29yZC1jaXJjbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTE3IjsgfQouYmktcmVjb3JkLWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTE4IjsgfQouYmktcmVjb3JkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUxOSI7IH0KLmJpLXJlY29yZDo6YmVmb3JlIHsgY29udGVudDogIlxmNTFhIjsgfQouYmktcmVjb3JkMi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MWIiOyB9Ci5iaS1yZWNvcmQyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MWMiOyB9Ci5iaS1yZXBseS1hbGwtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTFkIjsgfQouYmktcmVwbHktYWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MWUiOyB9Ci5iaS1yZXBseS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MWYiOyB9Ci5iaS1yZXBseTo6YmVmb3JlIHsgY29udGVudDogIlxmNTIwIjsgfQouYmktcnNzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUyMSI7IH0KLmJpLXJzczo6YmVmb3JlIHsgY29udGVudDogIlxmNTIyIjsgfQouYmktcnVsZXJzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MjMiOyB9Ci5iaS1zYXZlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUyNCI7IH0KLmJpLXNhdmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUyNSI7IH0KLmJpLXNhdmUyLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUyNiI7IH0KLmJpLXNhdmUyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MjciOyB9Ci5iaS1zY2lzc29yczo6YmVmb3JlIHsgY29udGVudDogIlxmNTI4IjsgfQouYmktc2NyZXdkcml2ZXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUyOSI7IH0KLmJpLXNlYXJjaDo6YmVmb3JlIHsgY29udGVudDogIlxmNTJhIjsgfQouYmktc2VnbWVudGVkLW5hdjo6YmVmb3JlIHsgY29udGVudDogIlxmNTJiIjsgfQouYmktc2VydmVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MmMiOyB9Ci5iaS1zaGFyZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MmQiOyB9Ci5iaS1zaGFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTJlIjsgfQouYmktc2hpZWxkLWNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MmYiOyB9Ci5iaS1zaGllbGQtZXhjbGFtYXRpb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUzMCI7IH0KLmJpLXNoaWVsZC1maWxsLWNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MzEiOyB9Ci5iaS1zaGllbGQtZmlsbC1leGNsYW1hdGlvbjo6YmVmb3JlIHsgY29udGVudDogIlxmNTMyIjsgfQouYmktc2hpZWxkLWZpbGwtbWludXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUzMyI7IH0KLmJpLXNoaWVsZC1maWxsLXBsdXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUzNCI7IH0KLmJpLXNoaWVsZC1maWxsLXg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUzNSI7IH0KLmJpLXNoaWVsZC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MzYiOyB9Ci5iaS1zaGllbGQtbG9jay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MzciOyB9Ci5iaS1zaGllbGQtbG9jazo6YmVmb3JlIHsgY29udGVudDogIlxmNTM4IjsgfQouYmktc2hpZWxkLW1pbnVzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1MzkiOyB9Ci5iaS1zaGllbGQtcGx1czo6YmVmb3JlIHsgY29udGVudDogIlxmNTNhIjsgfQouYmktc2hpZWxkLXNoYWRlZDo6YmVmb3JlIHsgY29udGVudDogIlxmNTNiIjsgfQouYmktc2hpZWxkLXNsYXNoLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUzYyI7IH0KLmJpLXNoaWVsZC1zbGFzaDo6YmVmb3JlIHsgY29udGVudDogIlxmNTNkIjsgfQouYmktc2hpZWxkLXg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjUzZSI7IH0KLmJpLXNoaWVsZDo6YmVmb3JlIHsgY29udGVudDogIlxmNTNmIjsgfQouYmktc2hpZnQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTQwIjsgfQouYmktc2hpZnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0MSI7IH0KLmJpLXNob3Atd2luZG93OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NDIiOyB9Ci5iaS1zaG9wOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NDMiOyB9Ci5iaS1zaHVmZmxlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NDQiOyB9Ci5iaS1zaWducG9zdC0yLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0NSI7IH0KLmJpLXNpZ25wb3N0LTI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0NiI7IH0KLmJpLXNpZ25wb3N0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0NyI7IH0KLmJpLXNpZ25wb3N0LXNwbGl0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0OCI7IH0KLmJpLXNpZ25wb3N0LXNwbGl0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NDkiOyB9Ci5iaS1zaWducG9zdDo6YmVmb3JlIHsgY29udGVudDogIlxmNTRhIjsgfQouYmktc2ltLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0YiI7IH0KLmJpLXNpbTo6YmVmb3JlIHsgY29udGVudDogIlxmNTRjIjsgfQouYmktc2tpcC1iYWNrd2FyZC1idG4tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTRkIjsgfQouYmktc2tpcC1iYWNrd2FyZC1idG46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0ZSI7IH0KLmJpLXNraXAtYmFja3dhcmQtY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU0ZiI7IH0KLmJpLXNraXAtYmFja3dhcmQtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NTAiOyB9Ci5iaS1za2lwLWJhY2t3YXJkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1MSI7IH0KLmJpLXNraXAtYmFja3dhcmQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1MiI7IH0KLmJpLXNraXAtZW5kLWJ0bi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NTMiOyB9Ci5iaS1za2lwLWVuZC1idG46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1NCI7IH0KLmJpLXNraXAtZW5kLWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NTUiOyB9Ci5iaS1za2lwLWVuZC1jaXJjbGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1NiI7IH0KLmJpLXNraXAtZW5kLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1NyI7IH0KLmJpLXNraXAtZW5kOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NTgiOyB9Ci5iaS1za2lwLWZvcndhcmQtYnRuLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1OSI7IH0KLmJpLXNraXAtZm9yd2FyZC1idG46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1YSI7IH0KLmJpLXNraXAtZm9yd2FyZC1jaXJjbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTViIjsgfQouYmktc2tpcC1mb3J3YXJkLWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTVjIjsgfQouYmktc2tpcC1mb3J3YXJkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU1ZCI7IH0KLmJpLXNraXAtZm9yd2FyZDo6YmVmb3JlIHsgY29udGVudDogIlxmNTVlIjsgfQouYmktc2tpcC1zdGFydC1idG4tZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTVmIjsgfQouYmktc2tpcC1zdGFydC1idG46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU2MCI7IH0KLmJpLXNraXAtc3RhcnQtY2lyY2xlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU2MSI7IH0KLmJpLXNraXAtc3RhcnQtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NjIiOyB9Ci5iaS1za2lwLXN0YXJ0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU2MyI7IH0KLmJpLXNraXAtc3RhcnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU2NCI7IH0KLmJpLXNsYWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NjUiOyB9Ci5iaS1zbGFzaC1jaXJjbGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTY2IjsgfQouYmktc2xhc2gtY2lyY2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NjciOyB9Ci5iaS1zbGFzaC1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTY4IjsgfQouYmktc2xhc2gtc3F1YXJlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NjkiOyB9Ci5iaS1zbGFzaDo6YmVmb3JlIHsgY29udGVudDogIlxmNTZhIjsgfQouYmktc2xpZGVyczo6YmVmb3JlIHsgY29udGVudDogIlxmNTZiIjsgfQouYmktc21hcnR3YXRjaDo6YmVmb3JlIHsgY29udGVudDogIlxmNTZjIjsgfQouYmktc25vdzo6YmVmb3JlIHsgY29udGVudDogIlxmNTZkIjsgfQouYmktc25vdzI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU2ZSI7IH0KLmJpLXNub3czOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NmYiOyB9Ci5iaS1zb3J0LWFscGhhLWRvd24tYWx0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NzAiOyB9Ci5iaS1zb3J0LWFscGhhLWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU3MSI7IH0KLmJpLXNvcnQtYWxwaGEtdXAtYWx0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NzIiOyB9Ci5iaS1zb3J0LWFscGhhLXVwOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NzMiOyB9Ci5iaS1zb3J0LWRvd24tYWx0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1NzQiOyB9Ci5iaS1zb3J0LWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU3NSI7IH0KLmJpLXNvcnQtbnVtZXJpYy1kb3duLWFsdDo6YmVmb3JlIHsgY29udGVudDogIlxmNTc2IjsgfQouYmktc29ydC1udW1lcmljLWRvd246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU3NyI7IH0KLmJpLXNvcnQtbnVtZXJpYy11cC1hbHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU3OCI7IH0KLmJpLXNvcnQtbnVtZXJpYy11cDo6YmVmb3JlIHsgY29udGVudDogIlxmNTc5IjsgfQouYmktc29ydC11cC1hbHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU3YSI7IH0KLmJpLXNvcnQtdXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU3YiI7IH0KLmJpLXNvdW5kd2F2ZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTdjIjsgfQouYmktc3BlYWtlci1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1N2QiOyB9Ci5iaS1zcGVha2VyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1N2UiOyB9Ci5iaS1zcGVlZG9tZXRlcjo6YmVmb3JlIHsgY29udGVudDogIlxmNTdmIjsgfQouYmktc3BlZWRvbWV0ZXIyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ODAiOyB9Ci5iaS1zcGVsbGNoZWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ODEiOyB9Ci5iaS1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTgyIjsgfQouYmktc3F1YXJlLWhhbGY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU4MyI7IH0KLmJpLXNxdWFyZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTg0IjsgfQouYmktc3RhY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU4NSI7IH0KLmJpLXN0YXItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTg2IjsgfQouYmktc3Rhci1oYWxmOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ODciOyB9Ci5iaS1zdGFyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ODgiOyB9Ci5iaS1zdGFyczo6YmVmb3JlIHsgY29udGVudDogIlxmNTg5IjsgfQouYmktc3RpY2tpZXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNThhIjsgfQouYmktc3RpY2tpZXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU4YiI7IH0KLmJpLXN0aWNreS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OGMiOyB9Ci5iaS1zdGlja3k6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU4ZCI7IH0KLmJpLXN0b3AtYnRuLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU4ZSI7IH0KLmJpLXN0b3AtYnRuOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OGYiOyB9Ci5iaS1zdG9wLWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OTAiOyB9Ci5iaS1zdG9wLWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNTkxIjsgfQouYmktc3RvcC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OTIiOyB9Ci5iaS1zdG9wOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OTMiOyB9Ci5iaS1zdG9wbGlnaHRzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU5NCI7IH0KLmJpLXN0b3BsaWdodHM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU5NSI7IH0KLmJpLXN0b3B3YXRjaC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OTYiOyB9Ci5iaS1zdG9wd2F0Y2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU5NyI7IH0KLmJpLXN1YnRyYWN0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OTgiOyB9Ci5iaS1zdWl0LWNsdWItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTk5IjsgfQouYmktc3VpdC1jbHViOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OWEiOyB9Ci5iaS1zdWl0LWRpYW1vbmQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTliIjsgfQouYmktc3VpdC1kaWFtb25kOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1OWMiOyB9Ci5iaS1zdWl0LWhlYXJ0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU5ZCI7IH0KLmJpLXN1aXQtaGVhcnQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjU5ZSI7IH0KLmJpLXN1aXQtc3BhZGUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNTlmIjsgfQouYmktc3VpdC1zcGFkZTo6YmVmb3JlIHsgY29udGVudDogIlxmNWEwIjsgfQouYmktc3VuLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVhMSI7IH0KLmJpLXN1bjo6YmVmb3JlIHsgY29udGVudDogIlxmNWEyIjsgfQouYmktc3VuZ2xhc3Nlczo6YmVmb3JlIHsgY29udGVudDogIlxmNWEzIjsgfQouYmktc3VucmlzZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YTQiOyB9Ci5iaS1zdW5yaXNlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YTUiOyB9Ci5iaS1zdW5zZXQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNWE2IjsgfQouYmktc3Vuc2V0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YTciOyB9Ci5iaS1zeW1tZXRyeS1ob3Jpem9udGFsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YTgiOyB9Ci5iaS1zeW1tZXRyeS12ZXJ0aWNhbDo6YmVmb3JlIHsgY29udGVudDogIlxmNWE5IjsgfQouYmktdGFibGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVhYSI7IH0KLmJpLXRhYmxldC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YWIiOyB9Ci5iaS10YWJsZXQtbGFuZHNjYXBlLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVhYyI7IH0KLmJpLXRhYmxldC1sYW5kc2NhcGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVhZCI7IH0KLmJpLXRhYmxldDo6YmVmb3JlIHsgY29udGVudDogIlxmNWFlIjsgfQouYmktdGFnLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVhZiI7IH0KLmJpLXRhZzo6YmVmb3JlIHsgY29udGVudDogIlxmNWIwIjsgfQouYmktdGFncy1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YjEiOyB9Ci5iaS10YWdzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YjIiOyB9Ci5iaS10ZWxlZ3JhbTo6YmVmb3JlIHsgY29udGVudDogIlxmNWIzIjsgfQouYmktdGVsZXBob25lLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjViNCI7IH0KLmJpLXRlbGVwaG9uZS1mb3J3YXJkLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjViNSI7IH0KLmJpLXRlbGVwaG9uZS1mb3J3YXJkOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YjYiOyB9Ci5iaS10ZWxlcGhvbmUtaW5ib3VuZC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YjciOyB9Ci5iaS10ZWxlcGhvbmUtaW5ib3VuZDo6YmVmb3JlIHsgY29udGVudDogIlxmNWI4IjsgfQouYmktdGVsZXBob25lLW1pbnVzLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjViOSI7IH0KLmJpLXRlbGVwaG9uZS1taW51czo6YmVmb3JlIHsgY29udGVudDogIlxmNWJhIjsgfQouYmktdGVsZXBob25lLW91dGJvdW5kLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjViYiI7IH0KLmJpLXRlbGVwaG9uZS1vdXRib3VuZDo6YmVmb3JlIHsgY29udGVudDogIlxmNWJjIjsgfQouYmktdGVsZXBob25lLXBsdXMtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNWJkIjsgfQouYmktdGVsZXBob25lLXBsdXM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjViZSI7IH0KLmJpLXRlbGVwaG9uZS14LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjViZiI7IH0KLmJpLXRlbGVwaG9uZS14OjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YzAiOyB9Ci5iaS10ZWxlcGhvbmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjMSI7IH0KLmJpLXRlcm1pbmFsLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjMiI7IH0KLmJpLXRlcm1pbmFsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1YzMiOyB9Ci5iaS10ZXh0LWNlbnRlcjo6YmVmb3JlIHsgY29udGVudDogIlxmNWM0IjsgfQouYmktdGV4dC1pbmRlbnQtbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmNWM1IjsgfQouYmktdGV4dC1pbmRlbnQtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjNiI7IH0KLmJpLXRleHQtbGVmdDo6YmVmb3JlIHsgY29udGVudDogIlxmNWM3IjsgfQouYmktdGV4dC1wYXJhZ3JhcGg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjOCI7IH0KLmJpLXRleHQtcmlnaHQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjOSI7IH0KLmJpLXRleHRhcmVhLXJlc2l6ZTo6YmVmb3JlIHsgY29udGVudDogIlxmNWNhIjsgfQouYmktdGV4dGFyZWEtdDo6YmVmb3JlIHsgY29udGVudDogIlxmNWNiIjsgfQouYmktdGV4dGFyZWE6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjYyI7IH0KLmJpLXRoZXJtb21ldGVyLWhhbGY6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjZCI7IH0KLmJpLXRoZXJtb21ldGVyLWhpZ2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVjZSI7IH0KLmJpLXRoZXJtb21ldGVyLWxvdzo6YmVmb3JlIHsgY29udGVudDogIlxmNWNmIjsgfQouYmktdGhlcm1vbWV0ZXItc25vdzo6YmVmb3JlIHsgY29udGVudDogIlxmNWQwIjsgfQouYmktdGhlcm1vbWV0ZXItc3VuOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZDEiOyB9Ci5iaS10aGVybW9tZXRlcjo6YmVmb3JlIHsgY29udGVudDogIlxmNWQyIjsgfQouYmktdGhyZWUtZG90cy12ZXJ0aWNhbDo6YmVmb3JlIHsgY29udGVudDogIlxmNWQzIjsgfQouYmktdGhyZWUtZG90czo6YmVmb3JlIHsgY29udGVudDogIlxmNWQ0IjsgfQouYmktdG9nZ2xlLW9mZjo6YmVmb3JlIHsgY29udGVudDogIlxmNWQ1IjsgfQouYmktdG9nZ2xlLW9uOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZDYiOyB9Ci5iaS10b2dnbGUyLW9mZjo6YmVmb3JlIHsgY29udGVudDogIlxmNWQ3IjsgfQouYmktdG9nZ2xlMi1vbjo6YmVmb3JlIHsgY29udGVudDogIlxmNWQ4IjsgfQouYmktdG9nZ2xlczo6YmVmb3JlIHsgY29udGVudDogIlxmNWQ5IjsgfQouYmktdG9nZ2xlczI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVkYSI7IH0KLmJpLXRvb2xzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZGIiOyB9Ci5iaS10b3JuYWRvOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZGMiOyB9Ci5iaS10cmFzaC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZGQiOyB9Ci5iaS10cmFzaDo6YmVmb3JlIHsgY29udGVudDogIlxmNWRlIjsgfQouYmktdHJhc2gyLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVkZiI7IH0KLmJpLXRyYXNoMjo6YmVmb3JlIHsgY29udGVudDogIlxmNWUwIjsgfQouYmktdHJlZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZTEiOyB9Ci5iaS10cmVlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZTIiOyB9Ci5iaS10cmlhbmdsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZTMiOyB9Ci5iaS10cmlhbmdsZS1oYWxmOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZTQiOyB9Ci5iaS10cmlhbmdsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNWU1IjsgfQouYmktdHJvcGh5LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVlNiI7IH0KLmJpLXRyb3BoeTo6YmVmb3JlIHsgY29udGVudDogIlxmNWU3IjsgfQouYmktdHJvcGljYWwtc3Rvcm06OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVlOCI7IH0KLmJpLXRydWNrLWZsYXRiZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVlOSI7IH0KLmJpLXRydWNrOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZWEiOyB9Ci5iaS10c3VuYW1pOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZWIiOyB9Ci5iaS10di1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZWMiOyB9Ci5iaS10djo6YmVmb3JlIHsgY29udGVudDogIlxmNWVkIjsgfQouYmktdHdpdGNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZWUiOyB9Ci5iaS10d2l0dGVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZWYiOyB9Ci5iaS10eXBlLWJvbGQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVmMCI7IH0KLmJpLXR5cGUtaDE6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVmMSI7IH0KLmJpLXR5cGUtaDI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVmMiI7IH0KLmJpLXR5cGUtaDM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVmMyI7IH0KLmJpLXR5cGUtaXRhbGljOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZjQiOyB9Ci5iaS10eXBlLXN0cmlrZXRocm91Z2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVmNSI7IH0KLmJpLXR5cGUtdW5kZXJsaW5lOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZjYiOyB9Ci5iaS10eXBlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZjciOyB9Ci5iaS11aS1jaGVja3MtZ3JpZDo6YmVmb3JlIHsgY29udGVudDogIlxmNWY4IjsgfQouYmktdWktY2hlY2tzOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZjkiOyB9Ci5iaS11aS1yYWRpb3MtZ3JpZDo6YmVmb3JlIHsgY29udGVudDogIlxmNWZhIjsgfQouYmktdWktcmFkaW9zOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZmIiOyB9Ci5iaS11bWJyZWxsYS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZmMiOyB9Ci5iaS11bWJyZWxsYTo6YmVmb3JlIHsgY29udGVudDogIlxmNWZkIjsgfQouYmktdW5pb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjVmZSI7IH0KLmJpLXVubG9jay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY1ZmYiOyB9Ci5iaS11bmxvY2s6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYwMCI7IH0KLmJpLXVwYy1zY2FuOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MDEiOyB9Ci5iaS11cGM6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYwMiI7IH0KLmJpLXVwbG9hZDo6YmVmb3JlIHsgY29udGVudDogIlxmNjAzIjsgfQouYmktdmVjdG9yLXBlbjo6YmVmb3JlIHsgY29udGVudDogIlxmNjA0IjsgfQouYmktdmlldy1saXN0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MDUiOyB9Ci5iaS12aWV3LXN0YWNrZWQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYwNiI7IH0KLmJpLXZpbnlsLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYwNyI7IH0KLmJpLXZpbnlsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MDgiOyB9Ci5iaS12b2ljZW1haWw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYwOSI7IH0KLmJpLXZvbHVtZS1kb3duLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYwYSI7IH0KLmJpLXZvbHVtZS1kb3duOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MGIiOyB9Ci5iaS12b2x1bWUtbXV0ZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MGMiOyB9Ci5iaS12b2x1bWUtbXV0ZTo6YmVmb3JlIHsgY29udGVudDogIlxmNjBkIjsgfQouYmktdm9sdW1lLW9mZi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MGUiOyB9Ci5iaS12b2x1bWUtb2ZmOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MGYiOyB9Ci5iaS12b2x1bWUtdXAtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNjEwIjsgfQouYmktdm9sdW1lLXVwOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MTEiOyB9Ci5iaS12cjo6YmVmb3JlIHsgY29udGVudDogIlxmNjEyIjsgfQouYmktd2FsbGV0LWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYxMyI7IH0KLmJpLXdhbGxldDo6YmVmb3JlIHsgY29udGVudDogIlxmNjE0IjsgfQouYmktd2FsbGV0Mjo6YmVmb3JlIHsgY29udGVudDogIlxmNjE1IjsgfQouYmktd2F0Y2g6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYxNiI7IH0KLmJpLXdhdGVyOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MTciOyB9Ci5iaS13aGF0c2FwcDo6YmVmb3JlIHsgY29udGVudDogIlxmNjE4IjsgfQouYmktd2lmaS0xOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MTkiOyB9Ci5iaS13aWZpLTI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYxYSI7IH0KLmJpLXdpZmktb2ZmOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MWIiOyB9Ci5iaS13aWZpOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MWMiOyB9Ci5iaS13aW5kOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MWQiOyB9Ci5iaS13aW5kb3ctZG9jazo6YmVmb3JlIHsgY29udGVudDogIlxmNjFlIjsgfQouYmktd2luZG93LXNpZGViYXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYxZiI7IH0KLmJpLXdpbmRvdzo6YmVmb3JlIHsgY29udGVudDogIlxmNjIwIjsgfQouYmktd3JlbmNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MjEiOyB9Ci5iaS14LWNpcmNsZS1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MjIiOyB9Ci5iaS14LWNpcmNsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNjIzIjsgfQouYmkteC1kaWFtb25kLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYyNCI7IH0KLmJpLXgtZGlhbW9uZDo6YmVmb3JlIHsgY29udGVudDogIlxmNjI1IjsgfQouYmkteC1vY3RhZ29uLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYyNiI7IH0KLmJpLXgtb2N0YWdvbjo6YmVmb3JlIHsgY29udGVudDogIlxmNjI3IjsgfQouYmkteC1zcXVhcmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNjI4IjsgfQouYmkteC1zcXVhcmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYyOSI7IH0KLmJpLXg6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYyYSI7IH0KLmJpLXlvdXR1YmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYyYiI7IH0KLmJpLXpvb20taW46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYyYyI7IH0KLmJpLXpvb20tb3V0OjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MmQiOyB9Ci5iaS1iYW5rOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MmUiOyB9Ci5iaS1iYW5rMjo6YmVmb3JlIHsgY29udGVudDogIlxmNjJmIjsgfQouYmktYmVsbC1zbGFzaC1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MzAiOyB9Ci5iaS1iZWxsLXNsYXNoOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MzEiOyB9Ci5iaS1jYXNoLWNvaW46OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYzMiI7IH0KLmJpLWNoZWNrLWxnOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MzMiOyB9Ci5iaS1jb2luOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MzQiOyB9Ci5iaS1jdXJyZW5jeS1iaXRjb2luOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MzUiOyB9Ci5iaS1jdXJyZW5jeS1kb2xsYXI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYzNiI7IH0KLmJpLWN1cnJlbmN5LWV1cm86OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjYzNyI7IH0KLmJpLWN1cnJlbmN5LWV4Y2hhbmdlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2MzgiOyB9Ci5iaS1jdXJyZW5jeS1wb3VuZDo6YmVmb3JlIHsgY29udGVudDogIlxmNjM5IjsgfQouYmktY3VycmVuY3kteWVuOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2M2EiOyB9Ci5iaS1kYXNoLWxnOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2M2IiOyB9Ci5iaS1leGNsYW1hdGlvbi1sZzo6YmVmb3JlIHsgY29udGVudDogIlxmNjNjIjsgfQouYmktZmlsZS1lYXJtYXJrLXBkZi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2M2QiOyB9Ci5iaS1maWxlLWVhcm1hcmstcGRmOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2M2UiOyB9Ci5iaS1maWxlLXBkZi1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2M2YiOyB9Ci5iaS1maWxlLXBkZjo6YmVmb3JlIHsgY29udGVudDogIlxmNjQwIjsgfQouYmktZ2VuZGVyLWFtYmlndW91czo6YmVmb3JlIHsgY29udGVudDogIlxmNjQxIjsgfQouYmktZ2VuZGVyLWZlbWFsZTo6YmVmb3JlIHsgY29udGVudDogIlxmNjQyIjsgfQouYmktZ2VuZGVyLW1hbGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY0MyI7IH0KLmJpLWdlbmRlci10cmFuczo6YmVmb3JlIHsgY29udGVudDogIlxmNjQ0IjsgfQouYmktaGVhZHNldC12cjo6YmVmb3JlIHsgY29udGVudDogIlxmNjQ1IjsgfQouYmktaW5mby1sZzo6YmVmb3JlIHsgY29udGVudDogIlxmNjQ2IjsgfQouYmktbWFzdG9kb246OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY0NyI7IH0KLmJpLW1lc3Nlbmdlcjo6YmVmb3JlIHsgY29udGVudDogIlxmNjQ4IjsgfQouYmktcGlnZ3ktYmFuay1maWxsOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2NDkiOyB9Ci5iaS1waWdneS1iYW5rOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2NGEiOyB9Ci5iaS1waW4tbWFwLWZpbGw6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY0YiI7IH0KLmJpLXBpbi1tYXA6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY0YyI7IH0KLmJpLXBsdXMtbGc6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY0ZCI7IH0KLmJpLXF1ZXN0aW9uLWxnOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2NGUiOyB9Ci5iaS1yZWN5Y2xlOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2NGYiOyB9Ci5iaS1yZWRkaXQ6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY1MCI7IH0KLmJpLXNhZmUtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNjUxIjsgfQouYmktc2FmZTItZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNjUyIjsgfQouYmktc2FmZTI6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY1MyI7IH0KLmJpLXNkLWNhcmQtZmlsbDo6YmVmb3JlIHsgY29udGVudDogIlxmNjU0IjsgfQouYmktc2QtY2FyZDo6YmVmb3JlIHsgY29udGVudDogIlxmNjU1IjsgfQouYmktc2t5cGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY1NiI7IH0KLmJpLXNsYXNoLWxnOjpiZWZvcmUgeyBjb250ZW50OiAiXGY2NTciOyB9Ci5iaS10cmFuc2xhdGU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY1OCI7IH0KLmJpLXgtbGc6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY1OSI7IH0KLmJpLXNhZmU6OmJlZm9yZSB7IGNvbnRlbnQ6ICJcZjY1YSI7IH0K"}},"time_used":23,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/pay-ico5.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.992Z","timestamp":1785159267992,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/pay-ico5.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"f5a-66136805-e43f66cf5dee7429;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 3930\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":3930,"size_decoded":4255,"mime_type":"image/png","magic":"PNG image data, 162 x 41, 8-bit/color RGBA, non-interlaced","md5":"fe45c5f72cda1f274ead50b42efd8f2e","sha1":"5c4e30211b8754f58872482e4c9b275736d8dc64","sha256":"4d3884ca5b465c9d436814cd6c616bd0a34d37e23d15ce622b0e58c977655209","sha512":"a03725720ff4145165ddb5d8c744b5e06e10ab625a0d5c2bd7f62f2e60660276c55948fd2f6e8f1811c5c6e6c3bf49bd4a8d156881f155552cd43231068b0ab5","ssdeep":"","tlshash":"1e813a49fa87ba5253a8ba8180f709266b121c803420c1667b4fc4d65cb0ea50dcebeb","first_seen":"2026-03-30T05:38:35.841356Z","last_seen":"2026-07-27T13:35:41.639299Z","times_seen":4,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAKIAAAApCAYAAAC2hfIAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDVFN0YyRTcxQjhGMTFFQzhCOEZEODFDQ0QzQTcyMjYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDVFN0YyRTgxQjhGMTFFQzhCOEZEODFDQ0QzQTcyMjYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpENUU3RjJFNTFCOEYxMUVDOEI4RkQ4MUNDRDNBNzIyNiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpENUU3RjJFNjFCOEYxMUVDOEI4RkQ4MUNDRDNBNzIyNiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjUHUwQAAAvOSURBVHja7JwLlFZVFcfPvBjeOCFIPLLUfBQGQkCWmFYaIBmWYRCSSCRlFqBRGA81bYkptMQMAkJqhZYLoUEIWMkjiUpEENACmXgj8ZA3w4wzTHvL7za7y733e8x8w0zcvdZ/zf2+e79z7z3nf/b+733unayKigqXijXt0vle+XON4KBgteDfgn/w+YTgXcFJQbmL7ZyyI6tWp/3b3DR+c0jQh+1B/FXiFQs2CN4WbBRsEvwLgu7nmKPxcMVWXURcDLHON9/VB919x5YJ3hGsExyAqLsE2wW7BXv5PraYiCnbHsEfBIND9h8WlApa0H5LwefYdxt/1XtuFeyElNsERXzeItgRD825ZVmpakR04s2QMciWCUYILhW0FXxY0EpwuaCdoGHI70rxtHvwmtsI7ZtBEcfEFmvE/9oaweuCDgH7Ogq+IHiIz/mCBoLzBI0FHxS04bi2tNGC0N4adOK3mvAcAQfxmJMF8+Nhj0OzgxCFhoiamBRAKCXcA5BNPeNxQQlJjkMnqtUT5EHS5oIrBBdD0MsgbIHBhey7XvANwXPx8P3/WHaaLljj+XLBMb7SZOQGwvJ7IV/wTcEkyBkWio8TjjXLnit4QjBQ8CnBJYJ5Ab9rJJgu6B8P3zlOREwFwVK2e7vTNcSbCZ3lprwzC32YrCnJtRb5RcG15vtywrNDZ04TfD0ewmrlQiuiVN0honhFDbUvCU6h7+52p+uE3xLcT9nGkTHPFnRJsul8QvpUQraaFsyHCe6A2I6QPjkie0/VcgKQnWJf5oW0k1sHiHiKaDSqzmTNJnvWzHgB2k5XWK4U7GO3esfHyZodZZpxgmcimlRyjRfcY76bIxgjeMNoy/EQ0xHeh+EhE5leZz/Ok01bueja+iHeWb3wSaREOce/ikY+aaRIX8FXXPiK0nHaKmXQHZ5fKwNaslrpUl+N0vu4WtBN0ESHhGvRc+2mzVdSaO/HOBF1Jr9M8Vp0Euqq2x5xUs/UVLLiecVNQsblDPAFDMTT7C6k5DKJBOMD7NOk41ESGGsXoRH7mO+eEow1IdnTliMo84xDM05gAKYmuOTudHZVbSV62BJRPf6X02irlMmrE+kRyJmMDRHcbspjQbZV8JpgomBFEm0WM0EfZ7JMS+E+lAMjmaQ1S0TsRQagGZptspnx6sVuo5QzlBk8lqxYvdhejruJQehg9KBm3o+5M2uHzUhkdvD7C/EGE7mfKeb8fptHUtUOb5fF34SRw/xVb7PeSA87iGp/Fczgc25AO3q+lhC3A0RqQ0jcQSIWZQVMvK8aL67kXcvv8+jfS6k8KK5hkj+WoO0L+Ov1pyaRLyfJgyuJMK1qsnxjbT6erxMlmBsFC83+fZBuCx6sIeHxo4LRgvb89Qrd6mW+LXiejPtjzLarGLSLIGM2etJm0zpAf8cLBJkuJ/4pw3LnDYhYloDY9QmlYwiFOog/EiyiPBZkSpCZ7nSdVm0XXus5tstoOw9i3E2EUeI/zDl+EjJR85EonjXmXP3o02S51PasEFHCc6mE5zkQpQkXvtB3WAmzcQPh9kMQrDBES6mH/C7Ea5RCtj2NxOZsmpewlCW41mIwgu/uol8+I/h1SDL1M0PCpZTINoecYwW4BXmkXvf7aNJZIdfdwPedXs+ztPF6EslO2glHdjV1/rMmSeluEhS/LSCJeSlCmDcn1Hc0JDxBGH6TstEsxLi1F/CsxbUgA81KUSOqLFnD50+HjIsScADbf0Mfbk6ifXUS/ZES6oGHmxDs50KuiWK7DBmfdOH14LNeR7RescjUFDUpuTXi8A3omzDtsZ9BWYzee4CZr53ZS/AJwU99RF6LZzmc5i3kIwf68bkNIbNbDRH3baSLYwIGRSovfOty532GKMnYn5mkah/Hw0WZEv1Oc03XkoC0ylQHVGd9azqJSQ46cbIv2/WTTVdjruPzOmqNW1zlEzl7XfDzi20Jwe3MIA7kN+laS8LXHrz7Z0mwKpLUR1W1Vngery/80aI9mtoRTf6SZtTSmmtnvO7MiOihIXoJ8ugFwnYvqh1DQjL77BQjQUZCs6dJvCShmyFZmDUyGfIUBv43eNaiEBLWJ5vrzOfD1BzXV4OuO24y9JbGM+bXABFvxxN6mb2fiOrF3mfKYmFO5Ub09fkB+7Wv5rLdlWpDFC8aUxG5xxBvAAlnVnV3QLURUcKzzq7fmhnVy0UvF51nEpnXkjyNhukvsV1GTXB2NfZDmRHenvdtmEECXoLMGE1fLTESxz9RsvHQ+0Pa+jxeT8egb0iCtI7tpklMMK9PplD68RKmkSDMI6aVsFT30tNcShA6e3sQTtYGHNfMpPknKbwmskEIba+DJuEdMyFRKkK2U/WyPQyRyyg9eRrw/ZRYmjGAKgvuDZEzWUk4j9b0+yFXWZ91IbXOVDPch0lWBnNf41zlgyq2tJTnKov8Z5WIu/FQQyDadaT9FQEhth7b213lI2Jhdj36pJ6pXY504YXrVC0nJNykS8JTJG2/d8FLh37bS/lmbcj+cldZgK8XcsxydPkfI8J32ySjYamvb4/T35pt9ybi/YpjCk2SmpfumGRXMxF1NvzOhLh+rvLBBX+JxtOI2xLMosupn3m67RUyyLKzVG5J1soZlBKqAHrdq/i7z6oaMvbCBBO82Oi7INtEv0RpyKtNsngs4nzbGZOe6NdGlH9GUT5TK4D4H+Fz46pM3uwMDMAaU5rpitD228WmLrUzoi0NNb9wp4vfXgfpUmFdeacln/tTL6JPId1ARj7AyJESl3h9+WXTTz3T1K3a531MeWZ7AiLqdc2AbO1M6W0QlQqHvJiJpz1clUmdCSLqzHnep+38SUtDE2LWRYTLp0z2fYAMbo2rW1aOBzrKYKkn0hrp9/AeLdhuHtHGMePprqCskqqN5lx6zpUu+v2fdzmuhHM3NfvW4wwOmoxeyXqVqwUrK37TWpe31KYrKZcFaJUGhrhBNtZVFphLEMyFGbreigwSMTvEg81DZ6l1x2tG2ZOUtXSC/tCl9qSPLu19je3VLvjJd9sP9jG1hug/a4W+euJNJGZZtUUjevYWs95LTPoFEDGbWRm0THWXr0Sgz8b9PMNeq7rJeCoB0Ssg1ztEDF09apUgoRlFu80g8Rh35vqwNW1vAmUuLzMfHZJV61ic8F1vBdqyScDxs93/PlKXUyvqiAGdXGhuuD+d52mIAuPp/HWxHpQHvGxT10rvd8k/p5cuEcOSmKwU28gyfZCI3Kq5vGcoP0l1IMpU8nwHwmi4fIjkRwmhq1r6esUtyKHpVCyGo1X3sr0oItHcHnD/XsIVZI8Sqao8iTP5CPsKwkBPxO6tdE5zI373mlnoSEomIoK9xOfOBBledRExy/RHTkC2msj7bfYR8pQhckXE76YS2tqjgRdFyBVH8rYTb9iJ37WPOP442bqSdmmC+zjiu/88xmdHhJYcT+geWBs9oufqZ1NmyaEM4CgFeK5+oxnolpRpvBetitAhh1zmrQwPnG8SI8cAJFug9X6zhXuv4L7ru+hXAIrQwwcor/RNwgvPIwv/AeTaSfLgvQOuRP4n0WQoxy5N4h5yTHnHI2K9BBNDnYQuYsyvStac6Zd65pLhqafrDMqNR/RKF7mQ0AtNRyHhalczpp75QTMAS9GkK1Joo4jscbFJwh6EGIm86hwmQ2+XfH1U230CndkNuZPnKt+C1OcO30wjydRotITPev2t0ZZRthONq//9o2M6A1Cll6f81rRL56CvH0FkZ0E2XQ9djqeYBFHHm+TkKOWMGS62umZaynn6yKrVXWtTaPZsmkla9EGIwb7wrcL6PvPdhJiEddOEgK+aMlGt84gOYt1B2Ch3lWu7BwknjY0QHx6RpcVWu4lYK5MVa1Nc5Ys9uUbQFhgSLiAkxyQ8B62miKguO+rtOV37HOYyWyuMLSbie95wSsi+jeiKt+LhiIlYE7bMnfn+h5YFhlJqiC0mYo2YFqbtvwTZRca8LB6G2LJr+HxaKNWlsGI84cJ4CGJzrub/XdpWd3o1QMs4L8bdH5tn/xFgAJJRFL7G9+iwAAAAAElFTkSuQmCC"}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.392Z","timestamp":1785159268392,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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 404 \r\ncache-control: private, no-cache, no-store, must-revalidate, max-age=0\r\npragma: no-cache\r\ncontent-type: text/html\r\ncontent-length: 1251\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"404","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":1251,"size_decoded":1477,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"8150f458ed6fb9b1db4e5cfa57a1a281","sha1":"6e5726854d28687b560d7fdcb5c782c425c7dfb9","sha256":"4c13d452dd5d49671bd93ca32f2b4f85c78e39b6ab0ad1f38d98ed267f8fd896","sha512":"4cc6a112673aef8bb8bb8a385c26791b805d43bb707b509880e894f1c83bab4e16f13de187036c5f660c3bec1d286258396b7bde65c5d7945c5019665196818c","ssdeep":"","tlshash":"c021353ec1c1560ae0271164fbc1f7a86669825291970f703b9eb176f6cd0bb56a36c8","first_seen":"2024-02-08T16:48:55Z","last_seen":"2026-07-30T06:08:39.193651Z","times_seen":144746,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48c3R5bGU+QG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXtib2R5e2JhY2tncm91bmQtY29sb3I6IzAwMCFpbXBvcnRhbnR9fTwvc3R5bGU+PC9oZWFkPgo8Ym9keSBzdHlsZT0iY29sb3I6ICM0NDQ7IG1hcmdpbjowO2ZvbnQ6IG5vcm1hbCAxNHB4LzIwcHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7Ij4KPGRpdiBzdHlsZT0iaGVpZ2h0OmF1dG87IG1pbi1oZWlnaHQ6MTAwJTsgIj4gICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgd2lkdGg6ODAwcHg7IG1hcmdpbi1sZWZ0OiAtNDAwcHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDMwJTsgbGVmdDo1MCU7Ij4KICAgICAgICA8aDEgc3R5bGU9Im1hcmdpbjowOyBmb250LXNpemU6MTUwcHg7IGxpbmUtaGVpZ2h0OjE1MHB4OyBmb250LXdlaWdodDpib2xkOyI+NDA0PC9oMT4KPGgyIHN0eWxlPSJtYXJnaW4tdG9wOjIwcHg7Zm9udC1zaXplOiAzMHB4OyI+Tm90IEZvdW5kDQo8L2gyPgo8cD5UaGUgcmVzb3VyY2UgcmVxdWVzdGVkIGNvdWxkIG5vdCBiZSBmb3VuZCBvbiB0aGlzIHNlcnZlciE8L3A+CjwvZGl2PjwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOiNmMGYwZjA7IGZvbnQtc2l6ZToxMnB4O21hcmdpbjphdXRvO3BhZGRpbmc6MHB4IDMwcHggMHB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7Y2xlYXI6Ym90aDtoZWlnaHQ6MTAwcHg7bWFyZ2luLXRvcDotMTAxcHg7YmFja2dyb3VuZC1jb2xvcjojNDc0NzQ3O2JvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTUpO2JveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIGluc2V0OyI+Cjxicj5Qcm91ZGx5IHBvd2VyZWQgYnkgTGl0ZVNwZWVkIFdlYiBTZXJ2ZXI8cD5QbGVhc2UgYmUgYWR2aXNlZCB0aGF0IExpdGVTcGVlZCBUZWNobm9sb2dpZXMgSW5jLiBpcyBub3QgYSB3ZWIgaG9zdGluZyBjb21wYW55IGFuZCwgYXMgc3VjaCwgaGFzIG5vIGNvbnRyb2wgb3ZlciBjb250ZW50IGZvdW5kIG9uIHRoaXMgc2l0ZS48L3A+PC9kaXY+PC9ib2R5PjwvaHRtbD4K"}},"time_used":22,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/fonts/bootstrap-icons63f3.woff2?856008caa5eb66df68595e734e59580d","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:28.450Z","timestamp":1785159268450,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /fonts/bootstrap-icons63f3.woff2?856008caa5eb66df68595e734e59580d HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/css/bootstrap-icons.css\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:28 GMT\r\ncontent-type: font/woff2\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"161a0-66136805-62710115540db3a4;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 90528\r\ndate: Mon, 27 Jul 2026 13:34:28 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":90528,"size_decoded":90857,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 90528, version 1.0","md5":"e07b538aa51b6fa77f32828af21cb591","sha1":"4649877868a0068ce50b105d0d2a235e8010c98f","sha256":"76506e128f2b47b7179f5037bd885a1674455ffeb6b5093cdb4c7eefbf436ce8","sha512":"e2ec08562aaee660d0ae1471e9d5659bc03b5b4f60c7d2c4a9c5a546b4ae151ed16cef58c2c798dce5d35628357b010d345ea2a3bf13bdee88adba954f6d1f54","ssdeep":"1536:5TkcgsTqc4q/40EvBlS/4inu8vyGF2OKYUayEOOgwehlS9hg8TNaSC4+NEBv6Gw/:5Iaqc4lRvBlNinqkkCyERdevM5C4+61K","tlshash":"259312792dbca3ab42d9377226a6510a788414eee7b4b1e474fdb34c5b3058e2a1f052","first_seen":"2023-04-19T00:44:58Z","last_seen":"2026-07-29T14:18:39.957998Z","times_seen":2912,"resource_available":false,"data":"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"}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/1027.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.596Z","timestamp":1785159268596,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/1027.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2780\r\nalt-svc: h3=\":443\"; ma=86400\r\ndate: Mon, 27 Jul 2026 09:13:52 GMT\r\nlast-modified: Tue, 19 Oct 2021 05:32:40 GMT\r\netag: \"856bfdb63dc0d6fad6b92fc6a29719e1\"\r\ncache-control: max-age=86400\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\nx-cache: Hit from cloudfront\r\nage: 15637\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nvary: Origin\r\nx-amz-cf-id: j_e0K0cYV0mJA1H-FVuKm9M3J2o_GMI1l2swm_v4zvRwZRnJZLop7Q==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2780,"size_decoded":3289,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit colormap, non-interlaced","md5":"856bfdb63dc0d6fad6b92fc6a29719e1","sha1":"2fed2e3409ce1bbbfb37f6da4abeecc30cefc021","sha256":"eebe29898b8b7de5c9e47daab474152be8095e3ab42d768b84b085c5a12b95c6","sha512":"a61c0a108d63c89ae62a2b03108480b5c08bda0e80049089a2a84cd7973bd9e94dcd2902e166b92e1d7ad5b7356357c9b181cb1b6051dd25913e82d2420154f0","ssdeep":"","tlshash":"51518cc7a707f33a9c866161bed44509f244d80a8160b31c0f33a7572c8a83ea4f324f","first_seen":"2023-05-01T18:49:36Z","last_seen":"2026-07-30T06:07:43.542999Z","times_seen":22990,"resource_available":false,"data":"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"}},"time_used":27,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":25,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/13148.32cc01dc01751b91682c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.279Z","timestamp":1785159269279,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/13148.32cc01dc01751b91682c.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\netag: W/\"6a06d56c-12cc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 15 May 2026 08:12:28 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/15/2026 10:19:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fd034b6ee0b84b843bd65b2cebc1c4c2\r\ncdn-cache: HIT\r\ncontent-encoding: br\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"]}],"data":{"size":4812,"size_decoded":2619,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3061)","md5":"9eb8a2729659cd900aee823198b62b43","sha1":"27c53602ca760b97d71eef345b01c1d537900aad","sha256":"3ac4b66b0a6823b837035a5dfdf7fe41b01ccf2a2ac115b143c12356080ebdac","sha512":"6c86fb2c2378e589f4353d32a048ae866196581fc0a8a7ed13c379eb47eab41fcbfc0ee44f3ffe77ff3800136be1da4fbfecfe3456524b96712a1e5cef42945f","ssdeep":"96:FRi/jMMHFeHojARuZi0DWss7UebYiWWD+WRdiaEBymSM0qRIv0nrWvW1HN6Fb0so:rEjMMlIeARmLWss77bJWWD+WRd8ymSM9","tlshash":"66a1e987b9c2f0a063d9aca5953b054ae23d6c1c711bf0e8e2e9d5d19c7b10b9112f36","first_seen":"2026-05-15T11:49:16.287975Z","last_seen":"2026-07-30T06:08:06.468221Z","times_seen":4839,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMTMxNDhdLHs3MzU5ODModCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5kfSk7Y29uc3Qgbz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9O3ZhciByPW4oOTEwNzc4KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQubGVuZ3RoO24tLTspaWYoKDAsci5kZWZhdWx0KSh0W25dWzBdLGUpKXJldHVybiBuO3JldHVybi0xfTt2YXIgcz1BcnJheS5wcm90b3R5cGUuc3BsaWNlO2NvbnN0IGM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4hKG48MCkmJihuPT1lLmxlbmd0aC0xP2UucG9wKCk6cy5jYWxsKGUsbiwxKSwtLXRoaXMuc2l6ZSwhMCl9O2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4gbjwwP3ZvaWQgMDplW25dWzFdfTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybiBhKHRoaXMuX19kYXRhX18sdCk+LTF9O2NvbnN0IGw9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fLG89YShuLHQpO3JldHVybiBvPDA/KCsrdGhpcy5zaXplLG4ucHVzaChbdCxlXSkpOm5bb11bMV09ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPW8sZi5wcm90b3R5cGUuZGVsZXRlPWMsZi5wcm90b3R5cGUuZ2V0PWksZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mfSw2OTQyMSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE2MjMxNikscj1uKDk4MTUyMyk7Y29uc3QgYT0oMCxvLmRlZmF1bHQpKHIuZGVmYXVsdCwiTWFwIil9LDcxMzE0OCh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pnp9KTtjb25zdCBvPSgwLG4oMTYyMzE2KS5kZWZhdWx0KShPYmplY3QsImNyZWF0ZSIpO2NvbnN0IHI9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW8/byhudWxsKTp7fSx0aGlzLnNpemU9MH07Y29uc3QgYT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX07dmFyIHM9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187aWYobyl7dmFyIG49ZVt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1uP3ZvaWQgMDpufXJldHVybiBzLmNhbGwoZSx0KT9lW3RdOnZvaWQgMH07dmFyIGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187cmV0dXJuIG8/dm9pZCAwIT09ZVt0XTppLmNhbGwoZSx0KX07Y29uc3QgbD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX187cmV0dXJuIHRoaXMuc2l6ZSs9dGhpcy5oYXModCk/MDoxLG5bdF09byYmdm9pZCAwPT09ZT8iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI6ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPXIsZi5wcm90b3R5cGUuZGVsZXRlPWEsZi5wcm90b3R5cGUuZ2V0PWMsZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mO3ZhciBfPW4oNzM1OTgzKSxoPW4oNjk0MjEpO2NvbnN0IHA9ZnVuY3Rpb24oKXt0aGlzLnNpemU9MCx0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBkLG1hcDpuZXcoaC5kZWZhdWx0fHxfLmRlZmF1bHQpLHN0cmluZzpuZXcgZH19O2NvbnN0IHY9ZnVuY3Rpb24odCl7dmFyIGU9dHlwZW9mIHQ7cmV0dXJuInN0cmluZyI9PWV8fCJudW1iZXIiPT1lfHwic3ltYm9sIj09ZXx8ImJvb2xlYW4iPT1lPyJfX3Byb3RvX18iIT09dDpudWxsPT09dH07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3ZhciBuPXQuX19kYXRhX187cmV0dXJuIHYoZSk/blsic3RyaW5nIj09dHlwZW9mIGU/InN0cmluZyI6Imhhc2giXTpuLm1hcH07Y29uc3QgZz1mdW5jdGlvbih0KXt2YXIgZT15KHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9O2NvbnN0IGI9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5nZXQodCl9O2NvbnN0IGo9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5oYXModCl9O2NvbnN0IE89ZnVuY3Rpb24odCxlKXt2YXIgbj15KHRoaXMsdCksbz1uLnNpemU7cmV0dXJuIG4uc2V0KHQsZSksdGhpcy5zaXplKz1uLnNpemU9PW8/MDoxLHRoaXN9O2Z1bmN0aW9uIHcodCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBvPXRbZV07dGhpcy5zZXQob1swXSxvWzFdKX19dy5wcm90b3R5cGUuY2xlYXI9cCx3LnByb3RvdHlwZS5kZWxldGU9Zyx3LnByb3RvdHlwZS5nZXQ9Yix3LnByb3RvdHlwZS5oYXM9aix3LnByb3RvdHlwZS5zZXQ9Tztjb25zdCB6PXd9LDg3Mjk5OSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPW4oOTgxNTIzKS5kZWZhdWx0LlN5bWJvbH0sMTc4NDk3KHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBvPW4oODcyOTk5KSxyPU9iamVjdC5wcm90b3R5cGUsYT1yLmhhc093blByb3BlcnR5LHM9ci50b1N0cmluZyxjPW8uZGVmYXVsdD9vLmRlZmF1bHQudG9TdHJpbmdUYWc6dm9pZCAwO2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9YS5jYWxsKHQsYyksbj10W2NdO3RyeXt0W2NdPXZvaWQgMDt2YXIgbz0hMH1jYXRjaCh0KXt9dmFyIHI9cy5jYWxsKHQpO3JldHVybiBvJiYoZT90W2NdPW46ZGVsZXRlIHRbY10pLHJ9O3ZhciB1PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3QgbD1mdW5jdGlvbih0KXtyZXR1cm4gdS5jYWxsKHQpfQo7dmFyIGY9by5kZWZhdWx0P28uZGVmYXVsdC50b1N0cmluZ1RhZzp2b2lkIDA7Y29uc3QgZD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD92b2lkIDA9PT10PyJbb2JqZWN0IFVuZGVmaW5lZF0iOiJbb2JqZWN0IE51bGxdIjpmJiZmIGluIE9iamVjdCh0KT9pKHQpOmwodCl9fSw2MDI5NDIodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz0ib2JqZWN0Ij09dHlwZW9mIG4uZyYmbi5nJiZuLmcuT2JqZWN0PT09T2JqZWN0JiZuLmd9LDE2MjMxNih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pmd9KTt2YXIgbz1uKDkyODEzMik7Y29uc3Qgcj1uKDk4MTUyMykuZGVmYXVsdFsiX19jb3JlLWpzX3NoYXJlZF9fIl07dmFyIGEscz0oYT0vW14uXSskLy5leGVjKHImJnIua2V5cyYmci5rZXlzLklFX1BST1RPfHwiIikpPyJTeW1ib2woc3JjKV8xLiIrYToiIjtjb25zdCBjPWZ1bmN0aW9uKHQpe3JldHVybiEhcyYmcyBpbiB0fTt2YXIgaT1uKDg4MDExNSksdT1uKDczMDUwMyksbD0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxmPUZ1bmN0aW9uLnByb3RvdHlwZSxkPU9iamVjdC5wcm90b3R5cGUsXz1mLnRvU3RyaW5nLGg9ZC5oYXNPd25Qcm9wZXJ0eSxwPVJlZ0V4cCgiXiIrXy5jYWxsKGgpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO2NvbnN0IHY9ZnVuY3Rpb24odCl7cmV0dXJuISghKDAsaS5kZWZhdWx0KSh0KXx8Yyh0KSkmJigoMCxvLmRlZmF1bHQpKHQpP3A6bCkudGVzdCgoMCx1LmRlZmF1bHQpKHQpKX07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsPT10P3ZvaWQgMDp0W2VdfTtjb25zdCBnPWZ1bmN0aW9uKHQsZSl7dmFyIG49eSh0LGUpO3JldHVybiB2KG4pP246dm9pZCAwfX0sOTgxNTIzKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBvPW4oNjAyOTQyKSxyPSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGY7Y29uc3QgYT1vLmRlZmF1bHR8fHJ8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9LDczMDUwMyh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnJ9KTt2YXIgbz1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3Qgcj1mdW5jdGlvbih0KXtpZihudWxsIT10KXt0cnl7cmV0dXJuIG8uY2FsbCh0KX1jYXRjaCh0KXt9dHJ5e3JldHVybiB0KyIifWNhdGNoKHQpe319cmV0dXJuIiJ9fSw5MTA3NzgodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe3JldHVybiB0PT09ZXx8dCE9dCYmZSE9ZX19LDkyODEzMih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE3ODQ5Nykscj1uKDg4MDExNSk7Y29uc3QgYT1mdW5jdGlvbih0KXtpZighKDAsci5kZWZhdWx0KSh0KSlyZXR1cm4hMTt2YXIgZT0oMCxvLmRlZmF1bHQpKHQpO3JldHVybiJbb2JqZWN0IEZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEFzeW5jRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgUHJveHldIj09ZX19LDg4MDExNSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX19XSk7"}},"time_used":6,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":6,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.310Z","timestamp":1785159268310,"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=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=\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: 7125641\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 13:34:28 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=kAL4rMLYN06h7YBVsjiNQoiAdHEsBvMNuPE6DgVIrItUQUuJEGXN7HH2nSxsT6WaErqmn%2BNkCmAqg87J%2FliXZG%2FULAA24MyRfNhiBMRFeTP3DLGjXhVgQqkdCJV0\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\nvary: accept-encoding\r\ncf-ray: a21c0592f93f56a3-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":84456,"size_decoded":25526,"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-07-30T06:07:43.530668Z","times_seen":1983,"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":18,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":13,"receive":5,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s2.coinmarketcap.com/static/img/coins/64x64/29470.png","fqdn":"s2.coinmarketcap.com","domain":"coinmarketcap.com","tld":"com"},"ip":{"addr":"143.204.238.51","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://coinlib.io/widget?type=horizontal_v2\u0026theme=light\u0026pref_coin_id=1505\u0026invert_hover=","date":"2026-07-27T13:34:28.632Z","timestamp":1785159268632,"http_version":"HTTP/3","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":"*.coinmarketcap.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 04 Jan 2026 00:00:00 GMT","end":"Mon, 01 Feb 2027 23:59:59 GMT"},"fingerprint":{"sha1":"32:EE:1B:94:2E:9E:3D:5C:B3:4B:8C:9C:32:97:7E:62:1A:36:CB:1D","sha256":"87:58:9A:9B:C4:87:B1:04:29:1A:77:63:C3:BD:4D:A6:C8:2D:D4:51:3A:17:BA:F3:97:B3:E8:A2:9A:46:A0:3A"}}},"request":{"raw":"GET /static/img/coins/64x64/29470.png HTTP/1.1\r\nHost: s2.coinmarketcap.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\nReferer: https://coinlib.io/\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\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\ncontent-type: image/png\r\ncontent-length: 2829\r\nalt-svc: h3=\":443\"; ma=86400\r\nlast-modified: Tue, 04 Jun 2024 14:26:01 GMT\r\nx-amz-server-side-encryption: AES256\r\naccept-ranges: bytes\r\nserver: AmazonS3\r\ndate: Mon, 27 Jul 2026 05:35:51 GMT\r\ncache-control: public, max-age=86400\r\netag: \"0debab46acf186ff5769f4ba0018f87f\"\r\nvary: Accept-Encoding, Origin\r\nx-cache: Hit from cloudfront\r\nage: 28718\r\nvia: 1.1 b5e67a446db8f96ec8069e6d223720ea.cloudfront.net (CloudFront)\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: pQXO0PzrfRqHiXs7CHuMBqMpzReyAbOUl-O2uSYCzR0kO065xFCcLQ==\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon CloudFront","description":"Amazon CloudFront is a fast content delivery network (CDN) service that securely delivers data, videos, applications, and APIs to customers globally with low latency, high transfer speeds.","website":"https://aws.amazon.com/cloudfront/","common_platform_enumeration":"","icon":"Amazon Cloudfront.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"]},{"name":"Amazon S3","description":"Amazon S3 or Amazon Simple Storage Service is a service offered by Amazon Web Services (AWS) that provides object storage through a web service interface.","website":"https://aws.amazon.com/s3/","common_platform_enumeration":"","icon":"Amazon S3.svg","categories":["CDN"]}],"data":{"size":2829,"size_decoded":3401,"mime_type":"image/png","magic":"PNG image data, 64 x 64, 8-bit/color RGBA, non-interlaced","md5":"0debab46acf186ff5769f4ba0018f87f","sha1":"5e2f5bcdf7a875354086424179727eb69747338c","sha256":"da62693f7f99079375e11208b7853bc6113175cbd7aabb612ac938893f57cdd4","sha512":"9e27dd815bc7279386d266c7716a75c88ffa62757325cd0e5e226201cf5f128b4a4e1b44095254b4115a0b7709cf45449f2ba50e5ed03c4074e5c1cce13da1fc","ssdeep":"","tlshash":"99514b6f90ab341de21882f3a757be278a0dc1858b1e6651cce471ba14b7eb8530256a","first_seen":"2024-11-30T20:42:41.09234Z","last_seen":"2026-07-29T06:14:00.341772Z","times_seen":1392,"resource_available":false,"data":"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"}},"time_used":36,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":22,"receive":14,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/51031.535f27b776f394c7e43a.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.284Z","timestamp":1785159269284,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview-widget.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 17 Feb 2026 00:00:00 GMT","end":"Sat, 20 Mar 2027 23:59:59 GMT"},"fingerprint":{"sha1":"23:87:1E:8E:DF:2E:DF:50:A8:DD:45:10:C1:4B:01:C9:B2:61:AA:8B","sha256":"42:09:59:71:96:C1:0E:B9:2F:9D:82:A3:0D:A5:B1:21:6A:76:72:A7:8B:19:14:80:BD:DA:CB:13:D1:7E:57:3F"}}},"request":{"raw":"GET /static/bundles/embed/51031.535f27b776f394c7e43a.js HTTP/1.1\r\nHost: www.tradingview-widget.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://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=1\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 13:34:29 GMT\r\ncontent-type: application/javascript; charset=utf-8\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 2118568\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: max-age=315360000\r\ncontent-encoding: zstd\r\netag: \"6a632877-ab54\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:19 GMT\r\nx-content-type-options: nosniff\r\nreferrer-policy: origin-when-cross-origin\r\ncontent-security-policy: default-src 'none'\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/24/2026 10:31:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fd212f47032d7729daadf4bf0ae9ecca\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"]}],"data":{"size":43860,"size_decoded":14999,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (12910)","md5":"cd701b7197ef255d09501c8c91343508","sha1":"d84cab0e7c13c5801a0a2c6df4aba3f32e6b316d","sha256":"714cb61cc6924e6d1e8241ff191fc5aeb03baebbbaa81c15949838a09fb406f6","sha512":"ae8f1406dc1e5c9e8082d922e8a0d6257582733129c26617fefb99243013fa5f0bc9eb178dd69665786b8fb7fd0b7ccdd7ed719fe60676564b82598253efca75","ssdeep":"768:CcDTi4tT8YE9xSrNtzDcsIj/XWm9hIz4dp9VUZ+n5Vz2mpehIeVeLh9zoJZemINE:hryj/XWgGET5Vz2mp9emzoJZemINyKfS","tlshash":"7e131a35652af5f79ee941ea543754829bbc00523444042876bccdec278caf9f23aef9","first_seen":"2026-07-24T11:36:48.046407Z","last_seen":"2026-07-28T07:05:00.665702Z","times_seen":1638,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s1MTAzMV0sezE1Njg1MChlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHt0ZWxlbWV0cnk6KCk9Pmh9KTt2YXIgcz1fKDk0ODM4MCksaT1fKDIyMTA2MSksbj1fKDM4NDAxNyksYT1fKDM3NzIyNikscj1fKDExNzMxMyk7XygzMDAyODYpO2NvbnN0IG89KDAsaS5nZXRMb2dnZXIpKCJDb21tb24uVGVsZW1ldHJ5IiksbD17ZGVmYXVsdDoxNWUzLHNpdGU6M2U1fSxjPVsiYmVmb3JlX3dlYnNvY2tldF9jb25uZWN0aW9uX3RpbWVfZnJhbWUiLCJ3ZWJzb2NrZXRfY29ubmVjdGlvbl90aW1lX2ZyYW1lIiwiZmlyc3Rfc2VyaWVzX2Z1bGxfdGltZV9mcmFtZSIsInBhZ2VfZnVsbF9sb2FkX3RpbWVfZnJhbWUiLCJwYWdlX2xvYWRfdGltZV9mcmFtZSJdO2NvbnN0IGg9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5yZXBvcnRTZW50PW5ldyBzLkRlbGVnYXRlLHRoaXMudGltZUNvdW50ZXJzPXtzZXJpZXM6e21hcmtzOltdfSxzdHVkeTp7fSxwaW5lOnt9fSx0aGlzLl90aW1lb3V0SWRzPXt9LHRoaXMuX2NvbW1vbkFkZGl0aW9uYWxEYXRhPXtjbHVzdGVyOm51bGwsdXNlcklkOiIwIn0sdGhpcy5fcmVwb3J0U3Rhc2g9e319c2V0U2Vzc2lvbkluZm8oZSl7Y29uc3QgdD10aGlzLl9wYXJzZUNsdXN0ZXIoZSk7bnVsbCE9PXQmJih0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YS5jbHVzdGVyPXQpfXNlbmRSZXBvcnQoZSx0LF8pe2lmKCF0aGlzLl9pc0FibGVUb1NlbmRSZXBvcnQodCkpcmV0dXJuO2NvbnN0IHM9dGhpcy5fZ2V0U3Vic2VydmljZVR5cGUoZSksaT10aGlzLl9nZXRIb3N0KGUscyk7aWYobnVsbCE9PWkpe2lmKF89dm9pZCAwPT09Xz97Y291bnQ6MX06Xyx0aGlzLl9hZGRSZXBvcnRUb1N0YXNoKF8sdCxpKSwhdGhpcy5fdGltZW91dElkc1tlXSl7Y29uc3QgdD1sW2VdPz9sLmRlZmF1bHQ7dGhpcy5fdGltZW91dElkc1tlXT1zZXRUaW1lb3V0KHRoaXMuX3NlbmRUZWxlbWV0cnlUb1NlcnZpY2UuYmluZCh0aGlzLGUsaSksdCl9fWVsc2Ugby5sb2dFcnJvcihgVW5hYmxlIHRvIGdldCBob3N0IGZvciBjb3VudGVyOiAke3R9LCBtZXRyaWMgdHlwZTogJHtlfSwgc2VyaXZjZSB0eXBlOiAke3N9YCl9c2VuZENoYXJ0UmVwb3J0KGUsdCxfPSEwKXt0aGlzLl9zZW5kU2VydmljZVNwZWNpZmllZFJlcG9ydCgiY2hhcnRzIixlLHQsXyl9c2VuZExpbmVUb29sc1N0b3JhZ2VSZXBvcnQoZSx0LF89ITApe3RoaXMuX3NlbmRTZXJ2aWNlU3BlY2lmaWVkUmVwb3J0KCJsaW5lX3Rvb2xzX3N0b3JhZ2UiLGUsdCxfKX1fc2VuZFNlcnZpY2VTcGVjaWZpZWRSZXBvcnQoZSx0LF8scz0hMCl7dGhpcy5fdXBkYXRlVXNlckluZm8oKSxfPXZvaWQgMD09PV8/e2NvdW50OjF9Ol8scyYmKF89dGhpcy5fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oXyxbImNsdXN0ZXIiLCJ1c2VySWQiXSkpLHRoaXMuc2VuZFJlcG9ydChlLHQsXyl9X3VwZGF0ZVVzZXJJbmZvKCl7Y29uc3QgZT0idXNlciJpbiB3aW5kb3cmJiJpZCJpbiB3aW5kb3cudXNlcj93aW5kb3cudXNlci5pZDoiMCI7dGhpcy5fY29tbW9uQWRkaXRpb25hbERhdGEudXNlcklkPVN0cmluZyhlKX1faXNBYmxlVG9TZW5kUmVwb3J0KGUpe2NvbnN0IHQ9d2luZG93LlRFTEVNRVRSWV9IT1NUUyxfPWMuaW5jbHVkZXMoZSkscz1Cb29sZWFuKHdpbmRvdy5UcmFkaW5nVmlldz8ub25DaGFydFBhZ2V8fCgwLGEub25XaWRnZXQpKCkpO3JldHVybiB0JiYoIV98fHMpfV9zZW5kVGVsZW1ldHJ5VG9TZXJ2aWNlKGUsdCl7aWYodGhpcy5fcmVwb3J0U3Rhc2guaGFzT3duUHJvcGVydHkodCkpe2NvbnN0IGU9dGhpcy5fY3JvcFBhcmFtcyh0aGlzLl9yZXBvcnRTdGFzaFt0XSksXz10aGlzLl9yZW5hbWVBbGxQYXJhbXMoZSkscz17ZXZlbnQ6InJlcG9ydF9zdGFzaCIscGFyYW1zOnRoaXMuX2NsZWFuQWxsUGFyYW1zKF8pfTtvLmxvZ0RlYnVnKGBSZXBvcnQgdG8gaG9zdDogJHt0fTsgc3Rhc2g6ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5fcmVwb3J0U3Rhc2hbdF0pfWApLHRoaXMucmVwb3J0U2VudC5maXJlKHRoaXMuX3JlcG9ydFN0YXNoW3RdKSxkZWxldGUgdGhpcy5fcmVwb3J0U3Rhc2hbdF0sKDAsbi5mZXRjaCkoYCR7dH0vcmVwb3J0YCx7bWV0aG9kOiJQT1NUIixib2R5OkpTT04uc3RyaW5naWZ5KHMpfSl9dGhpcy5fdGltZW91dElkc1tlXT1udWxsfV9nZXRIb3N0KGUsdCl7Y29uc3QgXz13aW5kb3cuVEVMRU1FVFJZX0hPU1RTLHM9X1tlXSYmX1tlXVt0XTtyZXR1cm4gQm9vbGVhbihzKT9zOm51bGx9X2dldFN1YnNlcnZpY2VUeXBlKGUpe2lmKCFbImNoYXJ0cyIsInNpdGUiXS5pbmNsdWRlcyhlKSlyZXR1cm4iYWxsIjtsZXQgdD0iZnJlZSI7Y29uc3QgXz13aW5kb3cudXNlci5pc19wcm87cmV0dXJuImNoYXJ0cyI9PT1lJiYoMCxyLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/dD1fPyJpb3NfcHJvIjoiaW9zX2ZyZWUiOiJjaGFydHMiPT09ZSYmKDAsci5pc09uTW9iaWxlQXBwUGFnZSkoIm5ldyIpP3Q9Xz8iYW5kcm9pZF9wcm8iOiJhbmRyb2lkX2ZyZWUiOigwLGEub25XaWRnZXQpKCk/dD0id2lkZ2V0IjpfJiYodD0icHJvIiksdH1fcGFyc2VDbHVzdGVyKGUpe2xldCB0O3RyeXt0PUpTT04ucGFyc2UoZSkuc2Vzc2lvbl9pZH1jYXRjaChlKXtyZXR1cm4gby5sb2dFcnJvcigiQ291bGQgbm90IHBhcnNlIGNsdXN0ZXIgaWQgKHNlc3Npb24gaWQpIiksbnVsbH1jb25zdCBfPS8oLipAKSguKikvZ2kuZXhlYyh0KTtyZXR1cm4gbnVsbCE9PV8mJl8ubGVuZ3RoPj0zP19bMl06bnVsbH1fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oZSx0KXtyZXR1cm4gdC5mb3JFYWNoKCh0PT57dCBpbiB0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YSYmKGUuYWRkaXRpb25hbD1lLmFkZGl0aW9uYWx8fHt9LGUuYWRkaXRpb25hbFt0XT10aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YVt0XSl9KSksZX1fY3JvcFBhcmFtcyhlKXsKZm9yKGNvbnN0IHQgaW4gZSllLmhhc093blByb3BlcnR5KHQpJiZlW3RdLmxlbmd0aD4xZTMmJihlLnRvb19tdWNoX21ldHJpY3NfZnJhbWU9ZS50b29fbXVjaF9tZXRyaWNzX2ZyYW1lPz9bXSxlLnRvb19tdWNoX21ldHJpY3NfZnJhbWUucHVzaCh7dmFsdWU6ZVt0XS5sZW5ndGgsYWRkaXRpb25hbDp7ZXZlbnQ6dH19KSxkZWxldGUgZVt0XSk7cmV0dXJuIGV9X3JlbmFtZUFsbFBhcmFtcyhlKXtjb25zdCB0PXt9O2Zvcihjb25zdCBfIGluIGUpZS5oYXNPd25Qcm9wZXJ0eShfKSYmKHRbX109W10sZVtfXS5mb3JFYWNoKChlPT57dFtfXS5wdXNoKHRoaXMuX3JlbmFtZUVudHJ5UGFyYW1zKGUpKX0pKSk7cmV0dXJuIHR9X3JlbmFtZUVudHJ5UGFyYW1zKGUpe2NvbnN0IHQ9e2NvdW50OiJjIix2YWx1ZToidiIsdGV4dDoidCIsYWRkaXRpb25hbDoiYSJ9O3JldHVybiBPYmplY3Qua2V5cyhlKS5yZWR1Y2UoKChfLHMpPT4oX1t0W3NdXT1lW3NdLF8pKSx7fSl9X2NsZWFuQWxsUGFyYW1zKGUpe2NvbnN0IHQ9e307Zm9yKGNvbnN0IF8gaW4gZSlpZihlLmhhc093blByb3BlcnR5KF8pKXt0W19dPVtdO2NvbnN0IHM9e2M6MH07ZVtfXS5mb3JFYWNoKChlPT57Y29uc3QgaT10aGlzLl9jbGVhbkVudHJ5UGFyYW1zKGUpLG49T2JqZWN0LmtleXMoaSkubGVuZ3RoOzE9PT1uJiZ2b2lkIDAhPT1pLmM/cy5jKz1pLmM6bj4wJiZ0W19dLnB1c2goaSl9KSkscy5jPjAmJnRbX10ucHVzaChzKSwwPT09dFtfXS5sZW5ndGgmJmRlbGV0ZSB0W19dfXJldHVybiB0fV9jbGVhbkVudHJ5UGFyYW1zKGUpe2NvbnN0IHQ9T2JqZWN0LmtleXMoZSkucmVkdWNlKCgodCxfKT0+ImMiIT09XyYmInQiIT09X3x8ZVtfXT8odFtfXT1lW19dLHQpOnQpLHt9KTtyZXR1cm4iYyJpbiB0fHwidiJpbiB0fHwidCJpbiB0P3Q6e319X2FkZFJlcG9ydFRvU3Rhc2goZSx0LF8pe18gaW4gdGhpcy5fcmVwb3J0U3Rhc2h8fCh0aGlzLl9yZXBvcnRTdGFzaFtfXT17fSksdCBpbiB0aGlzLl9yZXBvcnRTdGFzaFtfXXx8KHRoaXMuX3JlcG9ydFN0YXNoW19dW3RdPVtdKSxPYmplY3Qua2V5cyhlKS5sZW5ndGg+MCYmdGhpcy5fcmVwb3J0U3Rhc2hbX11bdF0ucHVzaChlKX19fSw5NjQ0ODYoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7ZGVlcEV4dGVuZDooKT0+aX0pO2NvbnN0IHM9bmV3IFNldChbIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImNvbnN0cnVjdG9yIl0pO2Z1bmN0aW9uIGkoZSwuLi50KXtyZXR1cm4gZSYmIm9iamVjdCI9PXR5cGVvZiBlPygwPT09dC5sZW5ndGh8fHQuZm9yRWFjaCgodD0+e251bGwhPXQmJiJvYmplY3QiPT10eXBlb2YgdCYmT2JqZWN0LmtleXModCkuZm9yRWFjaCgoXz0+e2lmKGZ1bmN0aW9uKGUpe3JldHVybiBzLmhhcyhlKX0oXykpcmV0dXJuO2NvbnN0IGE9ZVtfXSxyPXRbX107aWYocj09PWUpcmV0dXJuO2NvbnN0IG89QXJyYXkuaXNBcnJheShyKTtpZihyJiYobihyKXx8bykpe2xldCB0O3Q9bz9hJiZBcnJheS5pc0FycmF5KGEpP2E6W106YSYmbihhKT9hOnt9LGVbX109aSh0LHIpfWVsc2Ugdm9pZCAwIT09ciYmKGVbX109cil9KSl9KSksZSk6ZX1mdW5jdGlvbiBuKGUpe2lmKCFlfHwiW29iamVjdCBPYmplY3RdIiE9PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKSlyZXR1cm4hMTtjb25zdCB0PU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtpZighdClyZXR1cm4hMDtjb25zdCBfPU9iamVjdC5oYXNPd25Qcm9wZXJ0eS50b1N0cmluZyxzPXQuaGFzT3duUHJvcGVydHkoImNvbnN0cnVjdG9yIikmJnQuY29uc3RydWN0b3I7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHMmJl8uY2FsbChzKT09PV8uY2FsbChPYmplY3QpfX0sNzY4NzYwKGUsdCxfKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcygpe2xldCBlLHQ7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChfLHMpPT57ZT1fLHQ9c30pKSxyZWplY3Q6dCxyZXNvbHZlOmV9fV8uZCh0LHtjcmVhdGVEZWZlcnJlZFByb21pc2U6KCk9PnN9KX0sNTg5NzQ5KGUsdCxfKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcyhlKXtpZih2b2lkIDA9PT1lKXJldHVybiIiO2lmKGUgaW5zdGFuY2VvZiBFcnJvcil7bGV0IHQ9ZS5tZXNzYWdlO3JldHVybiBlLnN0YWNrJiYodCs9IiAiK2Uuc3RhY2spLHR9cmV0dXJuInN0cmluZyI9PXR5cGVvZiBlP2UudG9TdHJpbmcoKTpKU09OLnN0cmluZ2lmeShlKX1fLmQodCx7ZXJyb3JUb1N0cmluZzooKT0+c30pfSwxMTYzMTAoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7Y3JlYXRlSnNvblNlcmlhbGl6YWJsZUNhY2hlOigpPT5hfSk7dmFyIHM9XygxMzg2MzgpO2NsYXNzIGl7Y29uc3RydWN0b3IoZSl7dGhpcy5fY2FjaGU9ZX1hc3luYyBnZXRWYWx1ZShlKXtjb25zdCB0PWF3YWl0IHRoaXMuX2NhY2hlLm1hdGNoKGUpO2lmKCF0KXJldHVybiBudWxsO3JldHVybiJhcHBsaWNhdGlvbi9qc29uIj09PSgwLHMuZW5zdXJlTm90TnVsbCkodC5oZWFkZXJzLmdldCgiQ29udGVudC1UeXBlIikpP3QuanNvbigpOnQudGV4dCgpfWFzeW5jIHNldFZhbHVlKGUsdCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0P3RoaXMuX2NhY2hlLnB1dChlLG5ldyBSZXNwb25zZSh0LHtoZWFkZXJzOnsiY29udGVudC10eXBlIjoidGV4dC9wbGFpbiJ9fSkpOnRoaXMuX2NhY2hlLnB1dChlLG5ldyBSZXNwb25zZShKU09OLnN0cmluZ2lmeSh0KSx7aGVhZGVyczp7ImNvbnRlbnQtdHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifX0pKX1hc3luYyBtaWdyYXRlVmFsdWUoZSx0KXtjb25zdCBfPWF3YWl0IHRoaXMuZ2V0VmFsdWUoZSk7XyYmKGF3YWl0IHRoaXMuc2V0VmFsdWUodCxfKSxhd2FpdCB0aGlzLl9jYWNoZS5kZWxldGUoZSkpfWFzeW5jIGRlbGV0ZVZhbHVlKGUpe3JldHVybiB0aGlzLl9jYWNoZS5kZWxldGUoZSl9fWNsYXNzIG57Y29uc3RydWN0b3IoKXt0aGlzLl9kYXRhPW5ldyBNYXB9YXN5bmMgZ2V0VmFsdWUoZSl7cmV0dXJuIHRoaXMuX2RhdGEuZ2V0KGUpPz9udWxsfWFzeW5jIHNldFZhbHVlKGUsdCl7dGhpcy5fZGF0YS5zZXQoZSx0KX1hc3luYyBtaWdyYXRlVmFsdWUoZSx0KXsKdGhpcy5fZGF0YS5oYXMoZSkmJih0aGlzLl9kYXRhLnNldCh0LHRoaXMuX2RhdGEuZ2V0KGUpKSx0aGlzLl9kYXRhLmRlbGV0ZShlKSl9YXN5bmMgZGVsZXRlVmFsdWUoZSl7cmV0dXJuIHRoaXMuX2RhdGEuZGVsZXRlKGUpfX1hc3luYyBmdW5jdGlvbiBhKGUpe3RyeXtjb25zdCB0PWF3YWl0IGNhY2hlcy5vcGVuKGUpO3JldHVybiBuZXcgaSh0KX1jYXRjaHtyZXR1cm4gbmV3IG59fX0sNDAzNihlLHQsXyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHMoZSl7Y29uc3QgdD17fTtpZigtMT09PWUuaW5kZXhPZigiQCIpKXQuc2hvcnRJZD1lLHQucGFja2FnZUlkPSJ0di1iYXNpY3N0dWRpZXMiLHQuaWQ9ZSsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTE7ZWxzZXtjb25zdCBfPWUuc3BsaXQoIkAiKTt0LnNob3J0SWQ9X1swXTtjb25zdCBzPV9bMV0uc3BsaXQoIi0iKTtpZigzPT09cy5sZW5ndGgpdC5wYWNrYWdlSWQ9cy5zbGljZSgwLDIpLmpvaW4oIi0iKSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPXBhcnNlSW50KHNbMl0pO2Vsc2UgaWYoMT09PXMubGVuZ3RoJiYiZGVjaXNpb25iYXIiPT09c1swXSl0LnBhY2thZ2VJZD0ibGVzLSIrc1swXSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTE7ZWxzZXtpZigxIT09cy5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJ1bmV4cGVjdGVkIHN0dWR5IGlkOiIrZSk7dC5wYWNrYWdlSWQ9InR2LSIrc1swXSx0LmlkPXQuc2hvcnRJZCsiQCIrdC5wYWNrYWdlSWQsdC52ZXJzaW9uPTF9fWlmKHQuZnVsbElkPXQuaWQrIi0iK3QudmVyc2lvbiwidHYtc2NyaXB0aW5nIj09PXQucGFja2FnZUlkKXtjb25zdCBlPXQuc2hvcnRJZDtpZigwPT09ZS5pbmRleE9mKCJTY3JpcHQkIil8fDA9PT1lLmluZGV4T2YoIlN0cmF0ZWd5U2NyaXB0JCIpKXtjb25zdCBfPWUuaW5kZXhPZigiXyIpO3QucHJvZHVjdElkPV8+PTA/ZS5zdWJzdHJpbmcoMCxfKTp0LnBhY2thZ2VJZH1lbHNlIHQucHJvZHVjdElkPXQucGFja2FnZUlkfWVsc2UgdC5wcm9kdWN0SWQ9dC5wYWNrYWdlSWQ7cmV0dXJuIHR9Xy5kKHQse3BhcnNlSWRTdHJpbmc6KCk9PnN9KX0sNzgwOTc1KGUsdCxfKXsidXNlIHN0cmljdCI7dmFyIHM7Xy5kKHQse0NoYXJ0QXBpTWVzc2FnZU1ldGhvZDooKT0+c30pLGZ1bmN0aW9uKGUpe2UuQ29ubmVjdGVkPSJjb25uZWN0ZWQiLGUuRGlzY29ubmVjdGVkPSJkaXNjb25uZWN0ZWQiLGUuUmVjb25uZWN0QmFpbG91dD0icmVjb25uZWN0X2JhaWxvdXQifShzfHwocz17fSkpfSwzMDkwNTIoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7UVVPVEVfRklFTERTOigpPT5pLFFVT1RFX0ZJRUxEU19DQUNIRTooKT0+bn0pO3ZhciBzPV8oMTM4NjM4KQo7Y29uc3QgaT1uZXcgU2V0KFsicHJvX25hbWUiLCJiYXNlX25hbWUiLCJsb2dvIiwibG9nb2lkIiwiY3VycmVuY3ktbG9nb2lkIiwiYmFzZS1jdXJyZW5jeS1sb2dvaWQiLCJzb3VyY2UtbG9nb2lkIiwic2hvcnRfbmFtZSIsIndlYl9zaXRlX3VybCIsInByb19wZXJtIiwidGltZXpvbmUiLCJjdXJyZW50X3Nlc3Npb24iLCJzZXNzaW9uX2hvbGlkYXlzIiwibGFzdF9wcmljZSIsImxwX3RpbWUiLCJzdWJzZXNzaW9ucyIsInByZXZfY2xvc2VfcHJpY2UiLCJvcGVuX3ByaWNlIiwiaGlnaF9wcmljZSIsImxvd19wcmljZSIsInByaWNlXzUyX3dlZWtfaGlnaCIsInByaWNlXzUyX3dlZWtfbG93IiwiYXNrIiwiYXNrX3NpemUiLCJiaWQiLCJiaWRfc2l6ZSIsInJjaCIsInJjaHAiLCJydGMiLCJydGNfdGltZSIsIm5jaCIsIm5jaHAiLCJudGMiLCJudGNfdGltZSIsImRhdGFfZnJlcXVlbmN5IiwicmVmZXJlbmNlLWxhc3QtcGVyaW9kLXN0YXJ0IiwiYnVzaW5lc3NfZGVzY3JpcHRpb24iLCJ3ZWJfc2l0ZV91cmwiLCJmaWdpIiwibnVtYmVyX29mX2VtcGxveWVlcyIsImZsb2F0X3NoYXJlc19vdXRzdGFuZGluZyIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9jYWxlbmRhcl9kYXRlIiwicm9vdCIsImRlc2NyaXB0aW9uIiwiZXhjaGFuZ2UiLCJsaXN0ZWRfZXhjaGFuZ2UiLCJ0eXBlIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJpc190cmFkYWJsZSIsInNlY3RvciIsInR5cGVzcGVjcyIsInZpc2libGUtcGxvdHMtc2V0IiwiaW5kdXN0cnkiLCJjdXJyZW5jeV9pZCIsImxhc3RfcHJpY2UiLCJmcmFjdGlvbmFsIiwibWlubW92IiwibWlubW92ZTIiLCJwcmljZXNjYWxlIiwidmFyaWFibGVfdGlja19zaXplIiwiY2hhbmdlIiwiY2hhbmdlX3BlcmNlbnQiLCJ2b2x1bWUiLCJhdmVyYWdlX3ZvbHVtZSIsIm1hcmtldF9jYXBfYmFzaWMiLCJtYXJrZXRfY2FwX2NhbGMiLCJ0b3RhbF9yZXZlbnVlIiwiZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bSIsInByaWNlX2Vhcm5pbmdzX3R0bSIsImJldGFfMV95ZWFyIiwiZHBzX2NvbW1vbl9zdG9ja19wcmltX2lzc3VlX2Z5IiwiZGl2aWRlbmRzX3lpZWxkIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3B1YmxpY2F0aW9uX3R5cGVfbmV4dF9mcSIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9mcSIsImZvcmVjYXN0X3JhdyIsImxhc3RfcmVsZWFzZV9kYXRlIiwibmV4dF9yZWxlYXNlX2RhdGUiLCJyZWZlcmVuY2VfbGFzdF9wZXJpb2QiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIiwibnVtYmVyX29mX2VtcGxveWVlcyIsIndlYl9zaXRlX3VybCIsImJ1c2luZXNzX2Rlc2NyaXB0aW9uIiwiZm91bmRlZCIsImNlbyIsImZsb2F0X3NoYXJlc19vdXRzdGFuZGluZyIsInRvdGFsX3NoYXJlc19vdXRzdGFuZGluZyIsImRpdmlkZW5kX3BheW91dF9yYXRpb190dG0iLCJkaXZpZGVuZHNfeWllbGRfY3VycmVudCIsImRpdmlkZW5kX2V4X2RhdGVfdXBjb21pbmciLCJkaXZpZGVuZF9hbW91bnRfdXBjb21pbmciLCJkaXZpZGVuZF9hbW91bnRfcmVjZW50IiwiZGl2aWRlbmRfZXhfZGF0ZV9yZWNlbnQiLCJkaXZpZGVuZF9hbW91bnRfaCIsImRpdmlkZW5kX3BheW1lbnRfZGF0ZV91cGNvbWluZyIsImRpdmlkZW5kX3BheW1lbnRfZGF0ZV9yZWNlbnQiLCJ0b3RhbF9yZXZlbnVlX2ZxX2giLCJ0b3RhbF9yZXZlbnVlX2Z5X2giLCJuZXRfaW5jb21lX2Z5X2giLCJuZXRfaW5jb21lX2ZxX2giLCJ0b3RhbF9hc3NldHNfZnlfaCIsInRvdGFsX2Fzc2V0c19mcV9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnlfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZxX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19meV9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2ZxX2giLCJmaXNjYWxfcGVyaW9kX2Z5X2giLCJmaXNjYWxfcGVyaW9kX2ZxX2giLCJmaXNjYWxfcGVyaW9kX2ZoX2giLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnFfaCIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2ZxIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcV9oIiwiZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9mcV9oIiwibmV4dF9lYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxIiwiaXNfbmV4dF9lYXJuaW5nc19yZWxlYXNlX2RhdGVfZXN0aW1hdGVkIiwic3ltYm9sLXByaW1hcnluYW1lIiwiY3VycmVuY3lfY29kZSIsInJhdGVzX21jIiwicmF0ZXNfZnkiLCJyYXRlc190dG0iLCJtZWFzdXJlIiwidmFsdWVfdW5pdF9pZCIsInZhbHVlLXVuaXQtaWQiLCJ1cGRhdGVfbW9kZSIsImxhbmd1YWdlIiwibG9jYWxfZGVzY3JpcHRpb24iLCJzaG9ydF9kZXNjcmlwdGlvbiIsInNvdXJjZSIsInNvdXJjZTIiLCJmb3JtYXQiLCJyZWNvbW1lbmRhdGlvbl9tYXJrIiwibGFzdF9yZXBvcnRfZnJlcXVlbmN5IiwicHJpY2VfdGFyZ2V0X2VzdGltYXRlc19udW0iLCJwcmljZV90YXJnZXRfYXZlcmFnZSIsInVwZGF0ZV9tb2RlX3NlY29uZHMiLCJyZWNvbW1lbmRhdGlvbl90b3RhbCIsInJlY29tbWVuZGF0aW9uX2J1eSIsInJlY29tbWVuZGF0aW9uX292ZXIiLCJyZWNvbW1lbmRhdGlvbl9ob2xkIiwicmVjb21tZW5kYXRpb25fdW5kZXIiLCJyZWNvbW1lbmRhdGlvbl9zZWxsIiwicmVjb21tZW5kYXRpb25fdG90YWwiLCJwcmljZV90YXJnZXRfaGlnaCIsInByaWNlX3RhcmdldF9sb3ciLCJyYXRlc19wdCIsInJhdGVzX3B0IiwidG90YWxfcmV2ZW51ZV9meV9oIiwidG90YWxfcmV2ZW51ZV9mcV9oIiwidG90YWxfcmV2ZW51ZV9maF9oIiwibmV0X3JldmVudWVfZnlfaCIsIm5ldF9yZXZlbnVlX2ZxX2giLCJuZXRfcmV2ZW51ZV9maF9oIiwibmV0X2luY29tZV9meV9oIiwibmV0X2luY29tZV9mcV9oIiwibmV0X2luY29tZV9maF9oIiwidG90YWxfYXNzZXRzX2Z5X2giLCJ0b3RhbF9hc3NldHNfZnFfaCIsInRvdGFsX2Fzc2V0c19maF9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnlfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZxX2giLCJ0b3RhbF9saWFiaWxpdGllc19maF9oIiwiY2FzaF9mX29wZXJhdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19maF9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19maF9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19maF9oIiwiZmlzY2FsX3BlcmlvZF9meSIsImZpc2NhbF9wZXJpb2RfZnEiLCJmaXNjYWxfcGVyaW9kX2ZoIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlX2ZxX2giLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnlfaCIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZV9maF9oIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGVfZnEiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZV9meSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2ZoIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X3RpbWUiLCJlYXJuaW5nc19yZWxlYXNlX3RpbWUiLCJpc19uZXh0X2Vhcm5pbmdzX3JlbGVhc2VfZGF0ZV9lc3RpbWF0ZWQiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2Z5IiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZmgiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9meV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X2ZoX2giLCJlYXJuaW5nc19wZXJfc2hhcmVfZnFfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9meV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZoX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2Z5X2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZoX2giLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnEiLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnkiLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZmgiLCJyZXZlbnVlX2ZxX2giLCJyZXZlbnVlX2Z5X2giLCJyZXZlbnVlX2ZoX2giLCJyZXZlbnVlX2ZvcmVjYXN0X2ZxX2giLCJyZXZlbnVlX2ZvcmVjYXN0X2Z5X2giLCJyZXZlbnVlX2ZvcmVjYXN0X2ZoX2giLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZnEiLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZnkiLCJyZXZlbnVlX2ZvcmVjYXN0X25leHRfZmgiLCJyZXZlbnVlX3NlZ19ieV9idXNpbmVzc19oIiwicmV2ZW51ZV9zZWdfYnlfcmVnaW9uX2giLCJ0b3RhbF9yZXZlbnVlX2Z5IiwidG90YWxfcmV2ZW51ZV9mcSIsInRvdGFsX3JldmVudWVfZmgiLCJncm9zc19wcm9maXRfZnkiLCJncm9zc19wcm9maXRfZnEiLCJncm9zc19wcm9maXRfZmgiLCJlYml0ZGFfZnkiLCJlYml0X2Z5IiwibmV0X2luY29tZV9meSIsIm5ldF9pbmNvbWVfZnEiLCJuZXRfaW5jb21lX2ZoIiwidG90YWxfZGVidF9meV9oIiwidG90YWxfZGVidF9mcV9oIiwidG90YWxfZGVidF9maF9oIiwiZnJlZV9jYXNoX2Zsb3dfZnlfaCIsImZyZWVfY2FzaF9mbG93X2ZxX2giLCJmcmVlX2Nhc2hfZmxvd19maF9oIiwiY2FzaF9uX2VxdWl2YWxlbnRzX2Z5X2giLCJjYXNoX25fZXF1aXZhbGVudHNfZnFfaCIsImNhc2hfbl9lcXVpdmFsZW50c19maF9oIiwidG90YWxfY3VycmVudF9hc3NldHNfZnkiLCJ0b3RhbF9jdXJyZW50X2Fzc2V0c19mcSIsInRvdGFsX2N1cnJlbnRfYXNzZXRzX2ZoIiwidG90YWxfY3VycmVudF9saWFiaWxpdGllc19meSIsInRvdGFsX2N1cnJlbnRfbGlhYmlsaXRpZXNfZnEiLCJ0b3RhbF9jdXJyZW50X2xpYWJpbGl0aWVzX2ZoIiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2Z5IiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2ZxIiwidG90YWxfbm9uX2N1cnJlbnRfYXNzZXRzX2ZoIiwidG90YWxfbm9uX2N1cnJlbnRfbGlhYmlsaXRpZXNfZnkiLCJ0b3RhbF9ub25fY3VycmVudF9saWFiaWxpdGllc19mcSIsInRvdGFsX25vbl9jdXJyZW50X2xpYWJpbGl0aWVzX2ZoIiwibG9hbnNfbmV0X2Z5IiwibG9hbnNfbmV0X2Z5X2giLCJsb2Fuc19uZXRfZnFfaCIsImxvYW5zX25ldF9maF9oIiwidG90YWxfZGVwb3NpdHNfZnkiLCJ0b3RhbF9kZXBvc2l0c19meV9oIiwidG90YWxfZGVwb3NpdHNfZnFfaCIsInRvdGFsX2RlcG9zaXRzX2ZoX2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19meSIsImxvYW5fbG9zc19hbGxvd2FuY2VzX2Z5X2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19mcV9oIiwibG9hbl9sb3NzX2FsbG93YW5jZXNfZmhfaCIsInJlc2VydmVfdG9fdG90YWxfY2FwaXRhbF9meV9oIiwicmVzZXJ2ZV90b190b3RhbF9jYXBpdGFsX2ZxX2giLCJyZXNlcnZlX3RvX3RvdGFsX2NhcGl0YWxfZmhfaCIsInVuZWFybmVkX3ByZW1pdW1fdG9fdG90YWxfY2FwaXRhbF9meV9oIiwidW5lYXJuZWRfcHJlbWl1bV90b190b3RhbF9jYXBpdGFsX2ZxX2giLCJ1bmVhcm5lZF9wcmVtaXVtX3RvX3RvdGFsX2NhcGl0YWxfZmhfaCIsImluc3VyYW5jZV9yZXNlcnZlc19meV9oIiwiaW5zdXJhbmNlX3Jlc2VydmVzX2ZxX2giLCJpbnN1cmFuY2VfcmVzZXJ2ZXNfZmhfaCIsInBvbGljeV9jbGFpbXNfZnlfaCIsInBvbGljeV9jbGFpbXNfZnFfaCIsInBvbGljeV9jbGFpbXNfZmhfaCIsInByZW1pdW1zX2Vhcm5lZF9meV9oIiwicHJlbWl1bXNfZWFybmVkX2ZxX2giLCJwcmVtaXVtc19lYXJuZWRfZmhfaCIsInByaWNlX2Vhcm5pbmdzX2ZxX2giLCJwcmljZV9lYXJuaW5nc19meV9oIiwicHJpY2VfZWFybmluZ3NfZmhfaCIsInByaWNlX3NhbGVzX2ZxX2giLCJwcmljZV9zYWxlc19meV9oIiwicHJpY2Vfc2FsZXNfZmhfaCIsImRpbHV0ZWRfbmV0X2luY29tZV90dG0iLCJ0b3RhbF9yZXZlbnVlX3R0bSIsIm5ldF9yZXZlbnVlX3R0bSIsInByaWNlX2Vhcm5pbmdzX2N1cnJlbnQiLCJwcmljZV9zYWxlc19jdXJyZW50IiwiaXNpbi1kaXNwbGF5ZWQiLCJjdXNpcCIsImNmaV9jb2RlIiwiaW50ZXJlc3RfaW5jb21lX2Z5X2giLCJpbnRlcmVzdF9pbmNvbWVfZnFfaCIsImludGVyZXN0X2luY29tZV9maF9oIiwibm9uX2ludGVyZXN0X2luY29tZV9meV9oIiwibm9uX2ludGVyZXN0X2luY29tZV9mcV9oIiwibm9uX2ludGVyZXN0X2luY29tZV9maF9oIiwid2Vic2l0ZSIsImRvYyIsImV4cGxvcmVyIiwic291cmNlcyIsImNvbnRyYWN0cyIsImNyeXB0b19jb21tb25fY2F0ZWdvcmllcyIsImNyeXB0b19hc3NldCIsImNvbW11bml0eSIsImRpdmlkZW5kc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiLCJmaW5hbmNpYWxzX2F2YWlsYWJpbGl0eSIsImRvY3VtZW50cyIsImV0Zl9hc3NldF90eXBlX2V4cG9zdXJlIiwiZXRmX3JlZ2lvbl9leHBvc3VyZSIsInRvcF9ob2xkaW5ncyIsInVuaXQtaWQiLCJvcHRpb25zLWluZm8iLCJvcHRpb24tdHlwZSIsImludGVyZXN0X2luY29tZV9meSIsImludGVyZXN0X2luY29tZV9mcSIsImludGVyZXN0X2luY29tZV9maCIsIm5vbl9pbnRlcmVzdF9pbmNvbWVfZnkiLCJub25faW50ZXJlc3RfaW5jb21lX2ZxIiwibm9uX2ludGVyZXN0X2luY29tZV9maCIsImludGVyZXN0X2V4cGVuc2VfZnkiLCJpbnRlcmVzdF9leHBlbnNlX2ZxIiwiaW50ZXJlc3RfZXhwZW5zZV9maCIsImxvYW5fbG9zc19wcm92aXNpb25fZnkiLCJsb2FuX2xvc3NfcHJvdmlzaW9uX2ZxIiwibG9hbl9sb3NzX3Byb3Zpc2lvbl9maCIsIm5vbl9pbnRlcmVzdF9leHBlbnNlX2Z5Iiwibm9uX2ludGVyZXN0X2V4cGVuc2VfZnEiLCJub25faW50ZXJlc3RfZXhwZW5zZV9maCIsIm5vbl9vcGVyX2luY29tZV9meSIsIm5vbl9vcGVyX2luY29tZV9mcSIsIm5vbl9vcGVyX2luY29tZV9maCIsInVudXN1YWxfZXhwZW5zZV9pbmNfZnkiLCJ1bnVzdWFsX2V4cGVuc2VfaW5jX2ZxIiwidW51c3VhbF9leHBlbnNlX2luY19maCIsInByZXRheF9pbmNvbWVfZnkiLCJwcmV0YXhfaW5jb21lX2ZxIiwicHJldGF4X2luY29tZV9maCIsImluY29tZV90YXhfZnkiLCJpbmNvbWVfdGF4X2ZxIiwiaW5jb21lX3RheF9maCIsImFmdGVyX3RheF9vdGhlcl9pbmNvbWVfZnkiLCJhZnRlcl90YXhfb3RoZXJfaW5jb21lX2ZxIiwiYWZ0ZXJfdGF4X290aGVyX2luY29tZV9maCIsInRvdGFsX25vbl9vcGVyX2luY29tZV9meSIsInRvdGFsX25vbl9vcGVyX2luY29tZV9mcSIsInRvdGFsX25vbl9vcGVyX2luY29tZV9maCIsIm9wZXJfaW5jb21lX2Z5Iiwib3Blcl9pbmNvbWVfZnEiLCJvcGVyX2luY29tZV9maCIsIm9wZXJhdGluZ19leHBlbnNlc19meSIsIm9wZXJhdGluZ19leHBlbnNlc19mcSIsIm9wZXJhdGluZ19leHBlbnNlc19maCIsImNvc3Rfb2ZfZ29vZHNfZnkiLCJjb3N0X29mX2dvb2RzX2ZxIiwiY29zdF9vZl9nb29kc19maCIsImVxdWl0eV9pbl9lYXJuaW5nc19meSIsImVxdWl0eV9pbl9lYXJuaW5nc19mcSIsImVxdWl0eV9pbl9lYXJuaW5nc19maCIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9meSIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9mcSIsIm1pbm9yaXR5X2ludGVyZXN0X2V4cF9maCIsImRpc2NvbnRpbnVlZF9vcGVyYXRpb25zX2Z5IiwiZGlzY29udGludWVkX29wZXJhdGlvbnNfZnEiLCJkaXNjb250aW51ZWRfb3BlcmF0aW9uc19maCIsImZyb250X2NvbnRyYWN0IiwibWluX2NvbnRyYWN0IiwicG9pbnR2YWx1ZSIsInVuaXRfaWQiLCJleHBpcmF0aW9uIiwiYXVtIiwiYXNzZXRfY2xhc3MiLCJmb2N1cyIsImV4cGVuc2VfcmF0aW8iLCJsYXVuY2hfZGF0ZSIsImlzc3VlciIsImJyYW5kIiwiaG9tZXBhZ2UiLCJpbmRleF90cmFja2VkIiwiYWN0aXZlbHlfbWFuYWdlZCIsImZ1bmRfdmlld19tb2RlcyIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZnlfaCIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZnFfaCIsImNvbW1vbl9lcXVpdHlfdGllcjFfcmF0aW9fZmhfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZnlfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZnFfaCIsInRpZXIxX2NhcGl0YWxfcmF0aW9fZmhfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZnlfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZnFfaCIsInRvdGFsX2NhcGl0YWxfcmF0aW9fZmhfaCIsInByZWZlcnJlZF9zdG9ja19jYXJyeWluZ192YWx1ZV9maCIsInByZWZlcnJlZF9zdG9ja19jYXJyeWluZ192YWx1ZV9mcSIsInRvdGFsX2RlYnRfZnEiLCJtaW5vcml0eV9pbnRlcmVzdF9maCIsIm1pbm9yaXR5X2ludGVyZXN0X2ZxIiwiY2FzaF9uX3Nob3J0X3Rlcm1faW52ZXN0X2ZxIiwiY2FzaF9uX2R1ZV9mX2JhbmtzX2ZoIiwiY2FzaF9uX2R1ZV9mX2JhbmtzX2ZxIiwiZW50ZXJwcmlzZV92YWx1ZV9jdXJyZW50IiwiZXRmX2hvbGRpbmdzX2NvdW50IiwiY29udHJhY3QtZGVzY3JpcHRpb24iLCJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiLCJhbGxfdGltZV9oaWdoIiwiYWxsX3RpbWVfaGlnaF9kYXkiLCJhbGxfdGltZV9sb3ciLCJhbGxfdGltZV9sb3dfZGF5Iiwib3V0c3RhbmRpbmdfYW1vdW50Iiwibm9taW5hbF92YWx1ZSIsImRlbm9tX21pbiIsImN1cnJlbnRfY291cG9uIiwiY291cG9uX3R5cGVfZ2VuZXJhbCIsImNvdXBvbl9mcmVxdWVuY3kiLCJ5aWVsZF90b19tYXR1cml0eSIsIm1hdHVyaXR5LWRhdGUiLCJkYXlzX3RvX21hdHVyaXR5IiwiYm9uZF9pc3N1ZXIiLCJpc3N1ZV9kYXRlIiwiYm9uZF9pc3N1ZXJfc3RvY2tfc3ltYm9sIiwidG90YWxfaXNzdWVkX2Ftb3VudCIsInBhaWRfYW1vdW50IiwiYm9uZF9zbnBfcmF0aW5nX2x0X2giLCJwbGFjZW1lbnRfdHlwZSIsImR1cmF0aW9uX3R5cGUiLCJtYXR1cml0eV90eXBlIiwib2ZmZXJfdHlwZSIsInJlZGVtcHRpb25fdHlwZSIsImNvbnZlcnNpb25fb3B0aW9uIiwic2lua2luZ19mdW5kIiwib3duZXJzaGlwX2Zvcm0iLCJkYWlseS1zdW1tYXJ5LWFzdCIsImlzc3VlX3N0YXR1cyIsImNvdXBvbl9oIiwic2lua2luZ19mdW5kX25leHRfZGF0ZSIsInNpbmtpbmdfZnVuZF9taW5fYW1vdW50X25leHQiLCJjYWxsX25leHRfZGF0ZSIsInJlZGVtcHRpb25zX2giLCJjYWxsX25vdGljZV9kYXlzIiwicHV0X25leHRfZGF0ZSIsInB1dF9ub3RpY2VfZGF5c19taW4iLCJzZW5pb3JpdHlfbGV2ZWwiLCJpbmZsYXRpb25fcHJvdGVjdGlvbiIsInBsZWRnZV9zdGF0dXMiLCJib25kX2lzc3Vlcl9jb3VudHJ5X29mX3Jpc2siLCJib25kX2lzc3Vlcl9jcl9wYXJlbnQiLCJjcmVkaXRfZW5oYW5jZW1lbnRfdHlwZSIsImNyZWRpdF9lbmhhbmNlbWVudF9zdGF0dXMiLCJ1c2Vfb2ZfcHJvY2VlZHMiLCJib25kX2lzc3Vlcl9zbnBfcmF0aW5nX2x0X2giLCJib25kX2lzc3Vlcl9zbnBfcmF0aW5nX3N0X2giLCJib25kX2FnZW50c190ciIsImZpcnN0X2Jhcl90aW1lXzFkIiwiZmluYW5jaWFsLWluZGljYXRvci1pZCIsImV4Y2hhbmdlLWluZm8iLCJ1bmRlcmx5aW5nLXN5bWJvbCIsInN0cmlrZSIsImxvdHNpemUiLCJvcHRpb24tc3R5bGUiLCJoYXNfYm9uZHMiLCJvcGVuX3RpbWUiLCJoYXNfYm9uZHMiLCJkZXhfYnV5c18xNW0iLCJkZXhfc2VsbHNfMTVtIiwiZGV4X2J1eV92b2x1bWVfMTVtIiwiZGV4X3NlbGxfdm9sdW1lXzE1bSIsImRleF9idXllcnNfMTVtIiwiZGV4X3NlbGxlcnNfMTVtIiwiZGV4X2J1eXNfMWgiLCJkZXhfc2VsbHNfMWgiLCJkZXhfYnV5X3ZvbHVtZV8xaCIsImRleF9zZWxsX3ZvbHVtZV8xaCIsImRleF9idXllcnNfMWgiLCJkZXhfc2VsbGVyc18xaCIsImRleF9idXlzXzRoIiwiZGV4X3NlbGxzXzRoIiwiZGV4X2J1eV92b2x1bWVfNGgiLCJkZXhfc2VsbF92b2x1bWVfNGgiLCJkZXhfYnV5ZXJzXzRoIiwiZGV4X3NlbGxlcnNfNGgiLCJkZXhfYnV5c18xMmgiLCJkZXhfc2VsbHNfMTJoIiwiZGV4X2J1eV92b2x1bWVfMTJoIiwiZGV4X3NlbGxfdm9sdW1lXzEyaCIsImRleF9idXllcnNfMTJoIiwiZGV4X3NlbGxlcnNfMTJoIiwiZGV4X2J1eXNfMjRoIiwiZGV4X3NlbGxzXzI0aCIsImRleF9idXlfdm9sdW1lXzI0aCIsImRleF9zZWxsX3ZvbHVtZV8yNGgiLCJkZXhfYnV5ZXJzXzI0aCIsImRleF9zZWxsZXJzXzI0aCIsImRleF9jb252ZXJ0ZWRfc3ltYm9sIiwiZGV4X3RyYWRpbmdfdm9sdW1lXzI0aCIsImRleF9jcmVhdGVkX3RpbWUiLCJkZXhfY3VycmVuY3kiLCJkZXhfY3VycmVuY3lfbG9nb2lkIiwiYmxvY2tjaGFpbl9hZGRyZXNzZXNfdXJscyIsImJsb2NrY2hhaW5fYWRkcmVzc2VzIiwiYmFzZV9jdXJyZW5jeSIsImlwb19vZmZlcl9zdGF0dXMiLCJoYXNfaXBvX2RldGFpbHNfdmlzaWJsZSIsImlwb19wcmljZV9yYW5nZV91c2RfbWF4IiwiaXBvX3ByaWNlX3JhbmdlX3VzZF9taW4iLCJpcG9fb2ZmZXJfcHJpY2VfdXNkIiwiaXBvX29mZmVyZWRfc2hhcmVzIiwiaXBvX2RlYWxfYW1vdW50X3VzZCIsImlwb19hbm5vdW5jZW1lbnRfZGF0ZSIsImlwb19vZmZlcl9kYXRlIiwiYXZhaWxhYmxlX2RhdGFfcmFuZ2VfYmVnaW5fZGF0ZSIsImF2YWlsYWJsZV9kYXRhX3JhbmdlX2VuZF9kYXRlIiwiaGFzX2V0Zl9vd25lcnNoaXAiLCJzeW1ib2xfcHJpbWFyeV9saXN0aW5nIiwibWV0cmljX3l0bSIsIm1ldHJpY3MiLCJlcHNfZXN0aW1hdGVzX2Z5X2giLCJlcHNfZXN0aW1hdGVzX2ZxX2giLCJlcHNfZXN0aW1hdGVzX2ZoX2giLCJyZXZlbnVlX2VzdGltYXRlc19meV9oIiwicmV2ZW51ZV9lc3RpbWF0ZXNfZnFfaCIsInJldmVudWVfZXN0aW1hdGVzX2ZoX2giLCJkcHNfZXN0aW1hdGVzX2Z5X2giLCJkcHNfZXN0aW1hdGVzX2ZxX2giLCJkcHNfZXN0aW1hdGVzX2ZoX2giLCJjb3N0X29mX2dvb2RzX2VzdGltYXRlc19meV9oIiwiY29zdF9vZl9nb29kc19lc3RpbWF0ZXNfZnFfaCIsImNvc3Rfb2ZfZ29vZHNfZXN0aW1hdGVzX2ZoX2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2Z5X2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2ZxX2giLCJncm9zc19wcm9maXRfZXN0aW1hdGVzX2ZoX2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2Z5X2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2ZxX2giLCJzZWxsX2dlbl9hZG1pbl9leHBfdG90YWxfZXN0aW1hdGVzX2ZoX2giLCJyZXNlYXJjaF9hbmRfZGV2X2VzdGltYXRlc19meV9oIiwicmVzZWFyY2hfYW5kX2Rldl9lc3RpbWF0ZXNfZnFfaCIsInJlc2VhcmNoX2FuZF9kZXZfZXN0aW1hdGVzX2ZoX2giLCJlYml0ZGFfZXN0aW1hdGVzX2Z5X2giLCJlYml0ZGFfZXN0aW1hdGVzX2ZxX2giLCJlYml0ZGFfZXN0aW1hdGVzX2ZoX2giLCJlYml0X2VzdGltYXRlc19meV9oIiwiZWJpdF9lc3RpbWF0ZXNfZnFfaCIsImViaXRfZXN0aW1hdGVzX2ZoX2giLCJuZXRfaW5jb21lX2VzdGltYXRlc19meV9oIiwibmV0X2luY29tZV9lc3RpbWF0ZXNfZnFfaCIsIm5ldF9pbmNvbWVfZXN0aW1hdGVzX2ZoX2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2Z5X2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2ZxX2giLCJ0b3RhbF9hc3NldHNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZXN0aW1hdGVzX2ZoX2giLCJ0b3RhbF9kZWJ0X2VzdGltYXRlc19meV9oIiwidG90YWxfZGVidF9lc3RpbWF0ZXNfZnFfaCIsInRvdGFsX2RlYnRfZXN0aW1hdGVzX2ZoX2giLCJib29rX3ZhbHVlX3Blcl9zaGFyZV9lc3RpbWF0ZXNfZnlfaCIsImJvb2tfdmFsdWVfcGVyX3NoYXJlX2VzdGltYXRlc19mcV9oIiwiYm9va192YWx1ZV9wZXJfc2hhcmVfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXBpdGFsX2V4cGVuZGl0dXJlc19lc3RpbWF0ZXNfZnlfaCIsImNhcGl0YWxfZXhwZW5kaXR1cmVzX2VzdGltYXRlc19mcV9oIiwiY2FwaXRhbF9leHBlbmRpdHVyZXNfZXN0aW1hdGVzX2ZoX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZXN0aW1hdGVzX2ZoX2giLCJmcmVlX2Nhc2hfZmxvd19lc3RpbWF0ZXNfZnlfaCIsImZyZWVfY2FzaF9mbG93X2VzdGltYXRlc19mcV9oIiwiZnJlZV9jYXNoX2Zsb3dfZXN0aW1hdGVzX2ZoX2giLCJlc3RpbWF0ZXNfZmlzY2FsX3BlcmlvZF9meV9oIiwiZXN0aW1hdGVzX2Zpc2NhbF9wZXJpb2RfZnFfaCIsImVzdGltYXRlc19maXNjYWxfcGVyaW9kX2ZoX2giLCJmb3JlY2FzdF9hdmFpbGFiaWxpdHkiXSksbj1uZXcgY2xhc3N7CmNvbnN0cnVjdG9yKGUpe3RoaXMuX2NhY2hlPW5ldyBNYXAsdGhpcy5fdGltZXM9bmV3IE1hcCx0aGlzLl9maWVsZHM9Wy4uLmUuZmllbGRzXX11cGRhdGUoZSx0LF8pe2NvbnN0IGk9KDAscy5lbnN1cmVEZWZpbmVkKShlLnN5bWJvbG5hbWUpLG49RGF0ZS5ub3coKTtpZih0aGlzLl9jYWNoZS5oYXMoaSl8fHRoaXMuX2NhY2hlLnNldChpLHtzeW1ib2xuYW1lOmksc3RhdHVzOmUuc3RhdHVzLHZhbHVlczp7fX0pLHRoaXMuX3RpbWVzLmhhcyhpKXx8dGhpcy5fdGltZXMuc2V0KGksbmV3IE1hcCksImVycm9yIj09PWUuc3RhdHVzKXJldHVybjtjb25zdCBhPSgwLHMuZW5zdXJlRGVmaW5lZCkodGhpcy5fY2FjaGUuZ2V0KGkpKSxyPSgwLHMuZW5zdXJlRGVmaW5lZCkodGhpcy5fdGltZXMuZ2V0KGkpKTthLnN0YXR1cz1lLnN0YXR1cztmb3IoY29uc3QgcyBvZiB0aGlzLl9maWVsZHMpdC5oYXMocykmJihffHx2b2lkIDAhPT1lLnZhbHVlc1tzXSkmJihhLnZhbHVlc1tzXT1lLnZhbHVlc1tzXSxyLnNldChzLG4pKX1nZXQoZSl7cmV0dXJuIHRoaXMuX2NhY2hlLmdldChlKT8/bnVsbH1nZXRUaW1lcyhlKXtyZXR1cm4gdGhpcy5fdGltZXMuZ2V0KGUpPz9udWxsfWZpZWxkcygpe3JldHVybiB0aGlzLl9maWVsZHN9fSh7ZmllbGRzOml9KX0sOTI3NTkzKGUsdCxfKXsidXNlIHN0cmljdCI7Xy5kKHQse1F1b3RlU2Vzc2lvbk11bHRpcGxleGVyOigpPT5mfSk7dmFyIHM9Xyg1ODcxNjgpLGk9Xyg1NDc4NTEpLG49XygzNTI4MzcpLGE9XygxMzg2MzgpLHI9XygyMjEwNjEpLG89Xyg5NDgzODApLGw9Xyg5NjQ0ODYpLGM9XygxNTAxNTApLGg9XygzMDkwNTIpLGQ9XygzNjc5NDYpO2xldCB1PSExO3ZhciBtPV8oOTcwNzc0KTtjb25zdCBwPSgwLHIuZ2V0TG9nZ2VyKSgiV2ViY2hhcnRDbGllbnQuUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIiKTtjbGFzcyBme2NvbnN0cnVjdG9yKGUpe3RoaXMub25Db25uZWN0PW5ldyBvLkRlbGVnYXRlLHRoaXMub25EaXNjb25uZWN0PW5ldyBvLkRlbGVnYXRlLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLl9zdWJzY3JpcHRpb25zPXt9LHRoaXMuX3N5bWJvbF9kYXRhPXt9LHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHM9KDAsaS5kZWZhdWx0KSh0aGlzLl91cGRhdGVGYXN0U3ltYm9scywyNTApLHRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGE9e30sdGhpcy5fZXh0ZW5zaW9ucz17fSx0aGlzLm9wdGlvbnM9e3Rocm90dGxlVGltZW91dDoxMjUsLi4uZX0sdGhpcy5fc2Vzc2lvbj1uZXcgbS5RdW90ZVNlc3Npb24oZS5hcGksWyJtdWx0aXBsZXhlciIsZS5uYW1lLCgwLGMucmFuZG9tSGFzaCkoKV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIl8iKSksdGhpcy5vcHRpb25zLmV4dGVuc2lvbnM/LmZvcm1hdHRlciYmKHRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyPXRoaXMub3B0aW9ucy5leHRlbnNpb25zLmZvcm1hdHRlcih0aGlzKSksdGhpcy5vcHRpb25zLmV4dGVuc2lvbnM/LnNuYXBzaG90JiYodGhpcy5fZXh0ZW5zaW9ucy5zbmFwc2hvdD10aGlzLm9wdGlvbnMuZXh0ZW5zaW9ucy5zbmFwc2hvdCh0aGlzKSksdGhpcy5jb25uZWN0KCl9ZGVzdHJveSgpe3RoaXMuX3Nlc3Npb24uZGVzdHJveSgpLHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLm9uRGlzY29ubmVjdC5maXJlKCl9aW50ZXJuYWxzKCl7cmV0dXJue3Nlc3Npb246KCk9PnRoaXMuX3Nlc3Npb24sc3Vic2NyaXB0aW9uczooKT0+dGhpcy5fc3Vic2NyaXB0aW9ucyxkYXRhOigpPT50aGlzLl9zeW1ib2xfZGF0YX19Y29ubmVjdCgpe3RoaXMuX3Nlc3Npb24uY29ubmVjdCh0aGlzLnF1b3RlSGFuZGxlci5iaW5kKHRoaXMpKX1xdW90ZUhhbmRsZXIoZSl7Y29uc3R7bWV0aG9kOnQscGFyYW1zOl99PWU7c3dpdGNoKHQpe2Nhc2UiY29ubmVjdGVkIjp0aGlzLl9jb25uZWN0ZWR8fCh0aGlzLl9jb25uZWN0ZWQ9ITAsdGhpcy5vbkNvbm5lY3RlZCgpKTticmVhaztjYXNlInF1b3RlX2xpc3RfZmllbGRzIjpicmVhaztjYXNlInF1b3RlX3N5bWJvbF9kYXRhIjp0aGlzLl9jb25uZWN0ZWQmJnRoaXMub25TeW1ib2xEYXRhKF9bMF0pO2JyZWFrO2Nhc2UicXVvdGVfY29tcGxldGVkIjp0aGlzLl9jb25uZWN0ZWQmJnRoaXMub25TeW1ib2xEYXRhKHtzeW1ib2xuYW1lOl9bMF0sY29tcGxldGU6cGVyZm9ybWFuY2Uubm93KCksdmFsdWVzOnt9fSk7YnJlYWs7Y2FzZSJkaXNjb25uZWN0ZWQiOnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX2Nvbm5lY3RlZD0hMSx0aGlzLm9uRGlzY29ubmVjdC5maXJlKCkpfX1vbkNvbm5lY3RlZCgpe3RoaXMuc2V0RmllbGRzKCk7Y29uc3QgZT1PYmplY3Qua2V5cyh0aGlzLl9zeW1ib2xfZGF0YSk7ZS5sZW5ndGgmJih0aGlzLl9zZXNzaW9uLnF1b3RlQWRkU3ltYm9scyhlKSx0aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCkpLHRoaXMub25Db25uZWN0LmZpcmUoKX1zZXRGaWVsZHMoKXtjb25zdHtmaWVsZHM6ZX09dGhpcy5vcHRpb25zO2UmJmUubGVuZ3RoJiZ0aGlzLl9zZXNzaW9uLnF1b3RlU2V0RmllbGRzKGUpfW9uU3ltYm9sRGF0YShlKXt0cnl7ZS5zdGF0dXMmJmguUVVPVEVfRklFTERTX0NBQ0hFLnVwZGF0ZShlLGguUVVPVEVfRklFTERTLCExKX1jYXRjaChlKXt9Y29uc3QgdD1lLnN5bWJvbG5hbWU7bGV0IF89dGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YVt0XTt1JiYoZGVsZXRlIGUudmFsdWVzLnByZXZfY2xvc2VfcHJpY2Usdm9pZCAwIT09ZS52YWx1ZXMucmVndWxhcl9jbG9zZSYmKGUudmFsdWVzLnByZXZfY2xvc2VfcHJpY2U9ZS52YWx1ZXMucmVndWxhcl9jbG9zZSkpLF98fChfPXRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbdF09e2ZuRGlzcGF0Y2g6KDAscy5kZWZhdWx0KSh0aGlzLmRpc3BhdGNoU3ltYm9sRGF0YS5iaW5kKHRoaXMpLHRoaXMub3B0aW9ucy50aHJvdHRsZVRpbWVvdXQpfSksXy5jYWNoZT8oMCxsLmRlZXBFeHRlbmQpKF8uY2FjaGUsZSk6Xy5jYWNoZT1lLF8uZm5EaXNwYXRjaCh0KX1kaXNwYXRjaFN5bWJvbERhdGEoZSl7Y29uc3QgdD10aGlzLl9zeW1ib2xfZGF0YVtlXSxfPXRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbZV0uY2FjaGUKO2lmKGRlbGV0ZSB0aGlzLl90aHJvdHRsZWRTeW1ib2xEYXRhW2VdLmNhY2hlLHRoaXMuX3N5bWJvbF9kYXRhW2VdKXsoMCxsLmRlZXBFeHRlbmQpKHQsXyksdC52YWx1ZXMmJnRoaXMuX3BhcnNlVXBkYXRlTW9kZSh0LnZhbHVlcyk7Zm9yKGNvbnN0IHMgaW4gdGhpcy5fc3Vic2NyaXB0aW9ucyl7Y29uc3QgaT10aGlzLl9zdWJzY3JpcHRpb25zW3NdO2lmKGkuaGFzKGUpKXtbLi4uKDAsYS5lbnN1cmVEZWZpbmVkKShpLmdldChlKSldLmZvckVhY2goKGU9PntlKHQsXyl9KSl9fX19c3Vic2NyaWJlKGUsdCxfKXt0aGlzLl9zdWJzY3JpcHRpb25zW2VdPXRoaXMuX3N1YnNjcmlwdGlvbnNbZV18fG5ldyBNYXA7Y29uc3Qgcz10aGlzLl9zdWJzY3JpcHRpb25zW2VdO3Q9QXJyYXkuaXNBcnJheSh0KT9bLi4udF06W3RdO2NvbnN0IGk9W107dC5mb3JFYWNoKChlPT57dGhpcy5fc3ltYm9sX2RhdGFbZV0/cyYmcy5oYXMoZSl8fHRoaXMuX3N5bWJvbF9kYXRhW2VdLnN1YnNjcmliZXJzX2NvdW50Kys6KHRoaXMuX3N5bWJvbF9kYXRhW2VdPXtzdWJzY3JpYmVyc19jb3VudDoxfSxpLnB1c2goZSkpLHMuaGFzKGUpfHxzLnNldChlLFtdKTtjb25zdCB0PSgwLGEuZW5zdXJlRGVmaW5lZCkocy5nZXQoZSkpO3QucHVzaChfKSx0LmZhc3Q9ITAsdGhpcy5fc3ltYm9sX2RhdGFbZV0mJnRoaXMuX3N5bWJvbF9kYXRhW2VdLnZhbHVlcyYmXyh0aGlzLl9zeW1ib2xfZGF0YVtlXSx0aGlzLl9zeW1ib2xfZGF0YVtlXSl9KSksaS5sZW5ndGgmJnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX3Nlc3Npb24ucXVvdGVBZGRTeW1ib2xzKGkpLHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKSl9dW5zdWJzY3JpYmUoZSx0LF8pe3Q9QXJyYXkuaXNBcnJheSh0KT9bLi4udF06W3RdO2NvbnN0IHM9dGhpcy5fc3Vic2NyaXB0aW9uc1tlXSxpPVtdO2ZvcihsZXQgbj0wO248dC5sZW5ndGg7bisrKXtjb25zdCByPXRbbl07aWYocyYmcy5oYXMocikpe2lmKF8pe2NvbnN0IGU9KDAsYS5lbnN1cmVEZWZpbmVkKShzLmdldChyKSksdD1lLmluZGV4T2YoXyk7fnQmJmUuc3BsaWNlKHQsMSksZS5sZW5ndGh8fHMuZGVsZXRlKHIpfWVsc2Ugcy5kZWxldGUocik7MD09PXMuc2l6ZSYmZGVsZXRlIHRoaXMuX3N1YnNjcmlwdGlvbnNbZV0sdGhpcy5fc3ltYm9sX2RhdGEuaGFzT3duUHJvcGVydHkocikmJihzLmhhcyhyKXx8dGhpcy5fc3ltYm9sX2RhdGFbcl0uc3Vic2NyaWJlcnNfY291bnQtLSx0aGlzLl9zeW1ib2xfZGF0YVtyXS5zdWJzY3JpYmVyc19jb3VudHx8KGRlbGV0ZSB0aGlzLl9zeW1ib2xfZGF0YVtyXSxpLnB1c2gocikpKX1lbHNlIHAubG9nV2FybihgQ2hlY2sgeW91ciBzdWIvdW5zdWIgbG9va3MgaXQgaXMgbGVha2luZyAoY2xpZW50X2lkPSR7ZX0sIHN5bWJvbD0ke3J9KWApfWkubGVuZ3RoJiZ0aGlzLl9jb25uZWN0ZWQmJih0aGlzLl9zZXNzaW9uLnF1b3RlUmVtb3ZlU3ltYm9scyhpKSx0aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCkpfXNldEZhc3RTeW1ib2xzKGUsdCl7aWYodGhpcy5fc3Vic2NyaXB0aW9uc1tlXSl7Y29uc3QgXz10aGlzLl9zdWJzY3JpcHRpb25zW2VdLHM9QXJyYXkuZnJvbShfLmtleXMoKSk7Zm9yKGxldCBlPTA7ZTxzLmxlbmd0aDsrK2Upe2NvbnN0IGk9c1tlXTsoMCxhLmVuc3VyZURlZmluZWQpKF8uZ2V0KGkpKS5mYXN0PS0xIT09dC5pbmRleE9mKGkpfX10aGlzLl9kZWxheVVwZGF0ZUZhc3RTeW1ib2xzKCl9c25hcHNob3QoZSl7cmV0dXJuIHZvaWQgMD09PXRoaXMuX2V4dGVuc2lvbnMuc25hcHNob3Q/UHJvbWlzZS5yZWplY3QoIk5vIGZvcm1hdHRlciBleHRlbnNpb24gcHJvdmlkZWQiKTp0aGlzLl9leHRlbnNpb25zLnNuYXBzaG90KGUpfWZvcm1hdHRlcihlLHQpe3JldHVybiB2b2lkIDA9PT10aGlzLl9leHRlbnNpb25zLmZvcm1hdHRlcj9Qcm9taXNlLnJlamVjdCgiTm8gZm9ybWF0dGVyIGV4dGVuc2lvbiBwcm92aWRlZCIpOnRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyKGUsdCl9X3VwZGF0ZUZhc3RTeW1ib2xzKCl7aWYoIXRoaXMuX2Nvbm5lY3RlZClyZXR1cm47Y29uc3QgZT10aGlzLl9mYXN0U3ltYm9scygpOzA9PT1lLmxlbmd0aD90aGlzLl9zZXNzaW9uLnF1b3RlSGliZXJuYXRlQWxsKCk6dGhpcy5fc2Vzc2lvbi5xdW90ZUZhc3RTeW1ib2xzKGUpfV9mYXN0U3ltYm9scygpe2xldCBlPVtdO2Zvcihjb25zdCB0IGluIHRoaXMuX3N1YnNjcmlwdGlvbnMpe2NvbnN0IF89dGhpcy5fc3Vic2NyaXB0aW9uc1t0XSxzPUFycmF5LmZyb20oXy5rZXlzKCkpO2ZvcihsZXQgdD0wO3Q8cy5sZW5ndGg7Kyt0KXtjb25zdCBpPXNbdF07KDAsYS5lbnN1cmVEZWZpbmVkKShfLmdldChpKSkuZmFzdCYmZS5wdXNoKGkpfX1yZXR1cm4gZT0oMCxuLmRlZmF1bHQpKGUpLGV9X3BhcnNlVXBkYXRlTW9kZShlKXsoMCxkLm5vcm1hbGl6ZVVwZGF0ZU1vZGUpKGUpfX19LDk3MDc3NChlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtRdW90ZVNlc3Npb246KCk9Pml9KTt2YXIgcz1fKDE1MDE1MCk7Y2xhc3MgaXtjb25zdHJ1Y3RvcihlLHQ9KDAscy5yYW5kb21IYXNoKSgpKXt0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMSx0aGlzLl9nbG9iYWxIYW5kbGVyPW51bGwsdGhpcy5fY2hhcnRBcGk9ZSx0aGlzLl9zZXNzaW9uaWQ9InFzXyIrdH1kZXN0cm95KCl7dGhpcy5fc2Vzc2lvbnN0YXJ0ZWQmJih0aGlzLl9jaGFydEFwaS5xdW90ZURlbGV0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkKSx0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMSl9Y29ubmVjdGVkKCl7cmV0dXJuIHRoaXMuX2NoYXJ0QXBpLmNvbm5lY3RlZCgpfWNvbm5lY3QoZSl7dGhpcy5fZ2xvYmFsSGFuZGxlcj1lLHRoaXMuX2NoYXJ0QXBpLmNyZWF0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkLHRoaXMpLHRoaXMuX2NoYXJ0QXBpLmNvbm5lY3QoKX1kaXNjb25uZWN0KCl7dGhpcy5fY2hhcnRBcGkuZGlzY29ubmVjdCgpfXF1b3RlQWRkU3ltYm9scyhlKXt0aGlzLl9jaGFydEFwaS5xdW90ZUFkZFN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlUmVtb3ZlU3ltYm9scyhlKXsKdGhpcy5fY2hhcnRBcGkucXVvdGVSZW1vdmVTeW1ib2xzKHRoaXMuX3Nlc3Npb25pZCxlKX1xdW90ZUZhc3RTeW1ib2xzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlRmFzdFN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlU2V0RmllbGRzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlU2V0RmllbGRzKHRoaXMuX3Nlc3Npb25pZCxlKX1vbk1lc3NhZ2UoZSl7c3dpdGNoKGUubWV0aG9kKXtjYXNlImNvbm5lY3RlZCI6dGhpcy5fc2Vzc2lvbnN0YXJ0ZWR8fCh0aGlzLl9jaGFydEFwaS5xdW90ZUNyZWF0ZVNlc3Npb24odGhpcy5fc2Vzc2lvbmlkKSx0aGlzLl9zZXNzaW9uc3RhcnRlZD0hMCk7YnJlYWs7Y2FzZSJkaXNjb25uZWN0ZWQiOnRoaXMuX3Nlc3Npb25zdGFydGVkPSExfXRoaXMuX2dsb2JhbEhhbmRsZXI/LihlKX1xdW90ZUhpYmVybmF0ZUFsbCgpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlSGliZXJuYXRlQWxsKHRoaXMuX3Nlc3Npb25pZCl9fX0sNjYxODU4KGUsdCxfKXtlLmV4cG9ydHM9W3tuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDM1MDE0NikpLHZhbHVlOiIiLHNlYXJjaF90eXBlOiJ1bmRlZmluZWQifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg1NTU1MTApKSx2YWx1ZToic3RvY2tzIixzZWFyY2hfdHlwZToic3RvY2tzIn0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNTY0OTE3KSksdmFsdWU6ImZ1bmRzIixzZWFyY2hfdHlwZToiZnVuZHMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg1MDUwNzkpKSx2YWx1ZToiZnV0dXJlcyIsc2VhcmNoX3R5cGU6ImZ1dHVyZXMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg5Nzk5NykpLHZhbHVlOiJmb3JleCIsc2VhcmNoX3R5cGU6ImZvcmV4In0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oMzg0NTk3KSksdmFsdWU6ImNmZCIsc2VhcmNoX3R5cGU6ImNmZCJ9LHtuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDY1NTIzNSkpLHZhbHVlOiJiaXRjb2luLGNyeXB0byIsc2VhcmNoX3R5cGU6ImNyeXB0byJ9LHtuYW1lOl8uaTE4bmV4dChudWxsLHtjb250ZXh0OiJzeW1ib2xzX3R5cGUifSxfKDkyNzQxMSkpLHZhbHVlOiJpbmRleCIsc2VhcmNoX3R5cGU6ImluZGV4In0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNzY1NDQwKSksdmFsdWU6ImJvbmQiLHNlYXJjaF90eXBlOiJib25kIn0se25hbWU6Xy5pMThuZXh0KG51bGwse2NvbnRleHQ6InN5bWJvbHNfdHlwZSJ9LF8oNTQ4MzIyKSksdmFsdWU6ImVjb25vbWljIixzZWFyY2hfdHlwZToiZWNvbm9taWMifSx7bmFtZTpfLmkxOG5leHQobnVsbCx7Y29udGV4dDoic3ltYm9sc190eXBlIn0sXyg3OTYwMCkpLHZhbHVlOiJvcHRpb25zIixzZWFyY2hfdHlwZToib3B0aW9ucyJ9XX0sNjA2MTAoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7QXV0aFRva2VuOigpPT5vfSk7dmFyIHM9XygyMjEwNjEpLGk9Xyg5NDgzODApLG49XygzODQwMTcpO2NvbnN0IGE9KDAscy5nZXRMb2dnZXIpKCJDaGFydEFwaS5BdXRoVG9rZW4iLHtjb2xvcjoiIzE3MyJ9KTt2YXIgcjshZnVuY3Rpb24oZSl7ZVtlLkV4cGlyYXRpb25SZXNlcnZlPTNlNV09IkV4cGlyYXRpb25SZXNlcnZlIixlW2UuTWF4UmV0cmllcz0zXT0iTWF4UmV0cmllcyIsZVtlLlJldHJ5RGVsYXlNdWx0aXBsaWVyPTFlM109IlJldHJ5RGVsYXlNdWx0aXBsaWVyIixlW2UuRmFsbGJhY2tFeHBpcmF0aW9uPTE0NGU1XT0iRmFsbGJhY2tFeHBpcmF0aW9uIixlW2UuTWluRXhwaXJhdGlvbj0zZTVdPSJNaW5FeHBpcmF0aW9uIn0ocnx8KHI9e30pKTtjbGFzcyBve2NvbnN0cnVjdG9yKCl7dGhpcy5pbnZhbGlkYXRlZD1uZXcgaS5EZWxlZ2F0ZSx0aGlzLl90aWQ9MCx0aGlzLl9vbkdvaW5nQXV0aFRva2VuUmVxdWVzdD1udWxsLHRoaXMuX29uT25saW5lPSgpPT57YS5sb2dJbmZvKCJPbmxpbmUsIG5ldyB0b2tlbiB3aWxsIGJlIGZldGNoZWQgaWYgbmVlZGVkIiksdGhpcy5fdHJ5VG9VcGRhdGVUb2tlbigpfSx0aGlzLl9vblZpc2liaWxpdHlDaGFuZ2U9KCk9PnsidmlzaWJsZSI9PT1kb2N1bWVudC52aXNpYmlsaXR5U3RhdGUmJihhLmxvZ0luZm8oIlBhZ2UgdmlzaWJsZSwgbmV3IHRva2VuIHNob3VsZCBiZSBmZXRjaGVkIiksdGhpcy5fdHJ5VG9VcGRhdGVUb2tlbigpKX0sd2luZG93LmxvZ2luU3RhdGVDaGFuZ2V8fCh3aW5kb3cubG9naW5TdGF0ZUNoYW5nZT1uZXcgaS5EZWxlZ2F0ZSksd2luZG93LmxvZ2luU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKHRoaXMsKGU9PntlfHwodGhpcy5fc2V0KHdpbmRvdy51c2VyLmF1dGhfdG9rZW4pLHRoaXMuaW52YWxpZGF0ZWQuZmlyZSgpKX0pKSx0aGlzLl9zZXQod2luZG93LnVzZXIuYXV0aF90b2tlbiksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsdGhpcy5fb25PbmxpbmUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLHRoaXMuX29uVmlzaWJpbGl0eUNoYW5nZSl9ZGVzdHJveSgpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvbmxpbmUiLHRoaXMuX29uT25saW5lKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLl9vblZpc2liaWxpdHlDaGFuZ2UpfWdldChlKXtyZXR1cm4gd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQ/IWUmJnRoaXMuY3VycmVudFRva2VuSXNWYWxpZCgpPyhhLmxvZ0luZm8oYFVzaW5nIGNhY2hlZCB0b2tlbiAke3RoaXMuX2NhY2hlLnRva2VufWApLFByb21pc2UucmVzb2x2ZSh0aGlzLl9jYWNoZS50b2tlbikpOndpbmRvdy5uYXZpZ2F0b3Iub25MaW5lP3RoaXMuX29uR29pbmdBdXRoVG9rZW5SZXF1ZXN0fHw9dGhpcy5fZmV0Y2goQm9vbGVhbihlKSwwKS50aGVuKChlPT57CmlmKCF3aW5kb3cuaXNfYXV0aGVudGljYXRlZCl0aHJvdyBuZXcgRXJyb3IoIlVzZXIgbG9nZ2VkIG91dCB3aGlsZSB0aGUgcmVxdWVzdCB3YXMgaW4gZmxpZ2h0Iik7cmV0dXJuIHRoaXMuX3NldChlKSxlfSkpLmNhdGNoKChlPT4oYS5sb2dFcnJvcihgRXJyb3IgZmV0Y2hpbmcgbmV3IHRva2VuOiAke2UmJmUubWVzc2FnZX1gKSwiIikpKS5maW5hbGx5KCgoKT0+e3RoaXMuX29uR29pbmdBdXRoVG9rZW5SZXF1ZXN0PW51bGx9KSk6KGEubG9nV2FybigiT2ZmbGluZSwgY2Fubm90IGZldGNoIG5ldyB0b2tlbiwgdXNpbmcgY2FjaGVkIHRva2VuIiksUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2NhY2hlLnRva2VuKSk6UHJvbWlzZS5yZXNvbHZlKCIiKX1yZXNldCgpe3RoaXMuX3NldCh2b2lkIDApLHRoaXMuaW52YWxpZGF0ZWQuZmlyZSgpfWN1cnJlbnRUb2tlbklzVmFsaWQoKXtyZXR1cm4hd2luZG93LmlzX2F1dGhlbnRpY2F0ZWR8fCEhdGhpcy5fY2FjaGUmJihwZXJmb3JtYW5jZS5ub3coKTx0aGlzLl9jYWNoZS5tb25vVmFsaWRUaHJ1JiZEYXRlLm5vdygpPHRoaXMuX2NhY2hlLndhbGxWYWxpZFRocnUpfV9zZXQoZSl7aWYod2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJnZvaWQgMCE9PWUpe2NvbnN0IHQ9ZnVuY3Rpb24oZSl7aWYoIiI9PT1lKXJldHVybiAxNDRlNTt0cnl7Y29uc3QgdD1KU09OLnBhcnNlKGF0b2IoZS5zcGxpdCgiLiIpWzFdLnJlcGxhY2UoLy0vZywiKyIpLnJlcGxhY2UoL18vZywiLyIpKSksXz0xZTMqKHQuZXhwLXQuaWF0KTtpZighaXNGaW5pdGUoXykpdGhyb3cgbmV3IEVycm9yKCJpbnZhbGlkIGV4cGlyYXRpb24iKTtyZXR1cm4gTWF0aC5tYXgoXy0zZTUsM2U1KX1jYXRjaCh0KXtyZXR1cm4gYS5sb2dFcnJvcihgJHtlfSBpcyBpbnZhbGlkOiAke3QubWVzc2FnZX1gKSwxNDRlNX19KGUpO3RoaXMuX2NhY2hlPXt0b2tlbjplLG1vbm9WYWxpZFRocnU6cGVyZm9ybWFuY2Uubm93KCkrdCx3YWxsVmFsaWRUaHJ1OkRhdGUubm93KCkrdH0sY2xlYXJUaW1lb3V0KHRoaXMuX3RpZCksdGhpcy5fdGlkPXNldFRpbWVvdXQoKCgpPT57d2luZG93Lm5hdmlnYXRvci5vbkxpbmU/dGhpcy5yZXNldCgpOmEubG9nSW5mbygiT2ZmbGluZSwgY2FjaGUgd2lsbCBub3QgYmUgaW52YWxpZGF0ZWQiKX0pLHQpLGEubG9nSW5mbyhgQ2FjaGVkIGZvciAke3R9IG1zOiAke2V9YCl9ZWxzZSB0aGlzLl9jYWNoZT17dG9rZW46IiIsbW9ub1ZhbGlkVGhydTotMS8wLHdhbGxWYWxpZFRocnU6LTEvMH0sY2xlYXJUaW1lb3V0KHRoaXMuX3RpZCksYS5sb2dJbmZvKCJDYWNoZSBkcm9wcGVkIil9X2ZldGNoKGUsdCl7cmV0dXJuIGEubG9nTm9ybWFsKGBGZXRjaGluZyBhIG5ldyB0b2tlbiwgZ3JhYlNlc3Npb249JHtlfWApLCgwLG4uZmV0Y2gpKCIvcXVvdGVfdG9rZW4vIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIn0sYm9keTplPyJncmFiU2Vzc2lvbj10cnVlIjoiIn0pLnRoZW4oKGU9PntpZighZS5vayl0aHJvdyBuZXcgRXJyb3IoYFJlc3BvbnNlIHN0YXR1cyBpcyBub3Qgb2s6ICR7ZS5zdGF0dXN9YCk7cmV0dXJuIGUuanNvbigpLnRoZW4oU3RyaW5nKX0pLChfPT57aWYodD49Myl0aHJvdyBfO3JldHVybiBhLmxvZ1dhcm4oIlJlcXVlc3QgZmFpbGVkLCB3aWxsIHJldHJ5IiksZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBQcm9taXNlKCh0PT5zZXRUaW1lb3V0KHQsMWUzKmUpKSl9KHQpLnRoZW4oKCgpPT50aGlzLl9mZXRjaChlLHQrMSkpKX0pKX1hc3luYyBfdHJ5VG9VcGRhdGVUb2tlbigpe3RoaXMuX2NhY2hlLnRva2VuIT09YXdhaXQgdGhpcy5nZXQoKSYmdGhpcy5pbnZhbGlkYXRlZC5maXJlKCl9fX0sOTMwMDQ1KGUsdCxfKXsidXNlIHN0cmljdCI7Xy5kKHQse0pTT05EYXRhSGFuZGxlcjooKT0+YX0pO3ZhciBzPV8oNzgzMzQwKTtmdW5jdGlvbiBpKGUpe3JldHVybntpbmRleDplLmksdmFsdWU6ZS52fX1mdW5jdGlvbiBuKGUpe2Zvcihjb25zdCB0IG9mIE9iamVjdC5rZXlzKGUpKXtjb25zdCBfPWVbdF07Xy50JiYoXy50dXJuYXJvdW5kPWVbdF0udCksInMiaW4gZVt0XSYmZVt0XS5zJiYhXy5zZXJpZXMmJihfLnNlcmllcz1lW3RdLnMubWFwKGkpKSwic3QiaW4gZVt0XSYmZVt0XS5zdCYmIV8uc2VyaWVzJiYoXy5zZXJpZXM9ZVt0XS5zdC5tYXAoaSkpfX1jbGFzcyBhe3NldF9icm9rZXIoZSl7cmV0dXJuW2VdfXNldF9kYXRhX3F1YWxpdHkoKXtyZXR1cm5bImxvdyJdfXF1b3RlX2NyZWF0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1xdW90ZV9kZWxldGVfc2Vzc2lvbihlKXtyZXR1cm5bZV19cXVvdGVfc2V0X2ZpZWxkcyhlLHQpe3JldHVybltlXS5jb25jYXQodCl9cXVvdGVfYWRkX3N5bWJvbHMoZSx0KXtyZXR1cm5bZV0uY29uY2F0KHQpfXF1b3RlX3JlbW92ZV9zeW1ib2xzKGUsdCl7cmV0dXJuW2VdLmNvbmNhdCh0KX1xdW90ZV9mYXN0X3N5bWJvbHMoZSx0KXtyZXR1cm5bZV0uY29uY2F0KHQpfXF1b3RlX2hpYmVybmF0ZV9hbGwoZSl7cmV0dXJuW2VdfWRlcHRoX2NyZWF0ZV9zZXNzaW9uKGUsdCxfKXtyZXR1cm5bZSx0LF9dfWRlcHRoX2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1kZXB0aF9zZXRfc3ltYm9sKGUsdCl7cmV0dXJuW2UsdF19ZGVwdGhfY2xlYXJfc3ltYm9sKGUpe3JldHVybltlXX1kZXB0aF9zZXRfc2NhbGUoZSx0KXtyZXR1cm5bZSx0XX1jaGFydF9jcmVhdGVfc2Vzc2lvbihlLHQpe3JldHVybltlLHQ/ImRpc2FibGVfc3RhdGlzdGljcyI6IiJdfWNoYXJ0X2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1zZXRfYXV0aF90b2tlbihlKXtyZXR1cm5bZV19c2V0X2xvY2FsZShlLHQpe3JldHVybltlLHRdfXN3aXRjaF90aW1lem9uZShlLHQpe3JldHVybltlLHRdfXJlc29sdmVfc3ltYm9sKGUsdCxfKXtyZXR1cm5bZSx0LF9dfWNyZWF0ZV9zZXJpZXMoZSx0LF8scyxpLG4sYSl7cmV0dXJuW2UsdCxfPV98fCIiLHMsaSxuLGFdfXJlbW92ZV9zZXJpZXMoZSx0KXtyZXR1cm5bZSx0XX1tb2RpZnlfc2VyaWVzKGUsdCxfLHMsaSxuKXtyZXR1cm5bZSx0LF89X3x8IiIscyxpLG5dfQpyZXF1ZXN0X21vcmVfZGF0YShlLHQsXyl7cmV0dXJuW2UsdCxfXX1zZXRfZnV0dXJlX3RpY2ttYXJrc19tb2RlKGUsdCl7cmV0dXJuW2UsdF19cmVxdWVzdF9zdHVkaWVzX21ldGFkYXRhKGUpe3JldHVybltlXX1jcmVhdGVfc3R1ZHkoZSx0LF8scyxpLG4pe3JldHVybltlLHQsXz1ffHwiIixzLGldLmNvbmNhdChuKX1jcmVhdGVfY2hpbGRfc3R1ZHkoZSx0LF8scyxpLG4pe3JldHVybiB0aGlzLmNyZWF0ZV9zdHVkeShlLHQsXyxzLGksbil9cmVtb3ZlX3N0dWR5KGUsdCl7cmV0dXJuW2UsdF19bW9kaWZ5X3N0dWR5KGUsdCxfLHMpe3JldHVybltlLHQsXz1ffHwiIl0uY29uY2F0KHMpfW5vdGlmeV9zdHVkeShlLHQsXyxzKXtyZXR1cm5bZSx0LF89X3x8IiIsc119Y3JlYXRlX3BvaW50c2V0KGUsdCxfLHMsaSxuKXtyZXR1cm5bZSx0LF89X3x8IiIscyxpXS5jb25jYXQobil9bW9kaWZ5X3BvaW50c2V0KGUsdCxfLHMpe3JldHVybltlLHQsXz1ffHwiIl0uY29uY2F0KHMpfXJlbW92ZV9wb2ludHNldChlLHQpe3JldHVybltlLHRdfXJlcXVlc3RfbW9yZV90aWNrbWFya3MoZSx0LF8pe3JldHVybltlLHQsX119Z2V0X2ZpcnN0X2Jhcl90aW1lKGUsdCxfKXtyZXR1cm5bZSx0LF9dfXJlcGxheV9jcmVhdGVfc2Vzc2lvbihlKXtyZXR1cm5bZV19cmVwbGF5X2RlbGV0ZV9zZXNzaW9uKGUpe3JldHVybltlXX1yZXBsYXlfcmVzZXQoZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X3N0YXJ0KGUsdCxfKXtyZXR1cm5bZSx0LF9dfXJlcGxheV9zdG9wKGUsdCl7cmV0dXJuW2UsdF19cmVwbGF5X3N0ZXAoZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X2FkZF9zZXJpZXMoZSx0LF8scyl7cmV0dXJuW2UsdCxfLHNdfXJlcGxheV9yZW1vdmVfc2VyaWVzKGUsdCxfLHMpe3JldHVybltlLHQsXyxzXX1yZXBsYXlfc2V0X3Jlc29sdXRpb24oZSx0LF8pe3JldHVybltlLHQsX119cmVwbGF5X2dldF9kZXB0aChlLHQsXyxzKXtyZXR1cm5bZSx0LF8sc119Y29udmVydFRpbWVzY2FsZVJlc3BvbnNlKGUpe2NvbnN0IHQ9ZS5tYXJrcy5tYXAoKGU9Pih7c3BhbjplWzBdLHRpbWU6ZVsxXSxpbmRleDplWzJdfSkpKSxfPXZvaWQgMD09PWUuaW5kZXhfZGlmZj9bXTplLmluZGV4X2RpZmYubWFwKChlPT4oe29sZDplWzBdLG5ldzplWzFdfSkpKTtyZXR1cm57Li4uZSxtYXJrczp0LGluZGV4X2RpZmY6XyxjbGVhcjowPT09ZS5jaGFuZ2VzLmxlbmd0aCYmMD09PV8ubGVuZ3RoJiYwPT09dC5sZW5ndGh9fWdldERhdGFVcGRhdGVPYmplY3RzKGUpe3JldHVybiBlLnBhcmFtc1swXX1nZXRUaW1lc2NhbGVPYmplY3RzKGUpe3JldHVybiBlLnBhcmFtc1swXX1nZXRUaW1lc2NhbGVDaGFuZ2VzZXQoZSl7cmV0dXJuIGUucGFyYW1zWzFdfXByZXBhcmVEYXRhVXBkYXRlT2JqZWN0cyhlLHQsXyl7Zm9yKGNvbnN0W2ksbl1vZiBPYmplY3QuZW50cmllcyh0KSl7Y29uc3QgdD0icGxvdHMiaW4gbj9uLnBsb3RzOm4uc2VyaWVzLGE9e2N1c3RvbUlkOmksdHVybmFyb3VuZDpuLnR1cm5hcm91bmQscGxvdHM6dH07Im5zImluIG4mJm4ubnMmJihhLm5vbnNlcmllcz1uLm5zKSwibGJzImluIG4mJm4ubGJzJiYoYS5sYXN0QmFyPXtjbG9zZVRpbWU6bi5sYnMuYmFyX2Nsb3NlX3RpbWV9KTtmb3IoY29uc3QgZSBvZiBhLnBsb3RzKWZvcihjb25zdFt0LF9db2YgT2JqZWN0LmVudHJpZXMoZS52YWx1ZSkpXyYmTWF0aC5hYnMoXyk+PTFlMTAwJiYoZS52YWx1ZVsrdF09dm9pZCAwKTtfKGUsaSx7bWV0aG9kOnMuV2ViY2hhcnRDaGFydFNlc3Npb25SZXNwb25zZU1ldGhvZC5EYXRhVXBkYXRlLHBhcmFtczphfSl9fXVucGFjayhlKXtjb25zdCB0PUpTT04ucGFyc2UoZSk7dC5tJiZ0LnAmJih0Lm1ldGhvZD10Lm0sdC5wYXJhbXM9dC5wLHQudGltZT10LnQpO2NvbnN0IF89dC5wYXJhbXNbMV07c3dpdGNoKHQubWV0aG9kKXtjYXNlInFzZCI6dC5tZXRob2Q9InF1b3RlX3N5bWJvbF9kYXRhIixfLnN5bWJvbG5hbWU9Xy5uLF8uc3RhdHVzPV8ucyxfLnZhbHVlcz1fLnYsXy52YWx1ZXMuY2hhbmdlPV8udi5jaCxfLnZhbHVlcy5sYXN0X3ByaWNlPV8udi5scCxfLnZhbHVlcy5jaGFuZ2VfcGVyY2VudD1fLnYuY2hwLGRlbGV0ZSBfLm4sZGVsZXRlIF8ucyxkZWxldGUgXy52LGRlbGV0ZSBfLnZhbHVlcy5jaCxkZWxldGUgXy52YWx1ZXMubHAsZGVsZXRlIF8udmFsdWVzLmNocDticmVhaztjYXNlImR1Ijp0Lm1ldGhvZD0iZGF0YV91cGRhdGUiLG4oXyk7YnJlYWs7Y2FzZSJjbGVhcl9kYXRhIjpmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyhfKSlfW2VdLnR1cm5hcm91bmQ9X1tlXS50O2JyZWFrO2Nhc2UidGltZXNjYWxlX3VwZGF0ZSI6bihfKX1yZXR1cm4gdH1wcmVwYXJlRW5jb2RlTWVzc2FnZShlLHQpe3JldHVybiBKU09OLnN0cmluZ2lmeSh7bTplLHA6dH0pfXJlcXVlc3RfZGF0YV9wcm9ibGVtcygpe3JldHVybltdfX19LDQ2MzQ0NyhlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtIYW5kbGVySW5mbzooKT0+c30pO2NsYXNzIHN7Y29uc3RydWN0b3IoZSx0LF8pe3RoaXMuaGFuZGxlcj1lLHRoaXMuY3VzdG9tSWQ9dCx0aGlzLnNpbmdsZVNob3Q9X319fSw3ODMzNDAoZSx0LF8peyJ1c2Ugc3RyaWN0Ijt2YXIgcyxpLG47Xy5kKHQse1dlYmNoYXJ0Q2hhcnRTZXNzaW9uUmVzcG9uc2VNZXRob2Q6KCk9PmksV2ViY2hhcnRSZXBsYXlTZXNzaW9uUmVzcG9uc2VNZXRob2Q6KCk9Pm4sV2ViY2hhcnRSZXNwb25zZU1ldGhvZDooKT0+c30pLGZ1bmN0aW9uKGUpe2UuUmVxdWVzdERhdGFQcm9ibGVtcz0icmVxdWVzdF9kYXRhX3Byb2JsZW1zIixlLlByb3RvY29sRXJyb3I9InByb3RvY29sX2Vycm9yIixlLlByb3RvY29sU3dpdGNoZWQ9InByb3RvY29sX3N3aXRjaGVkIixlLkNyaXRpY2FsRXJyb3I9ImNyaXRpY2FsX2Vycm9yIn0oc3x8KHM9e30pKSxmdW5jdGlvbihlKXtlLlN0dWRpZXNNZXRhZGF0YT0ic3R1ZGllc19tZXRhZGF0YSIsZS5UaW1lU2NhbGVVcGRhdGU9InRpbWVzY2FsZV91cGRhdGUiLGUuVGlja01hcmtVcGRhdGU9InRpY2ttYXJrX3VwZGF0ZSIsZS5EVT0iZHUiLGUuRGF0YVVwZGF0ZT0iZGF0YV91cGRhdGUiLAplLkluZGV4VXBkYXRlPSJpbmRleF91cGRhdGUiLGUuVGltZVNjYWxlQ29tcGxldGVkPSJ0aW1lc2NhbGVfY29tcGxldGVkIixlLlFTRD0icXNkIixlLlF1b3RlTGlzdEZpZWxkPSJxdW90ZV9saXN0X2ZpZWxkcyIsZS5RdW90ZVN5bWJvbERhdGE9InF1b3RlX3N5bWJvbF9kYXRhIixlLlF1b3RlQ29tcGxldGVkPSJxdW90ZV9jb21wbGV0ZWQiLGUuRGVwdGhTeW1ib2xFcnJvcj0iZGVwdGhfc3ltYm9sX2Vycm9yIixlLkRlcHRoU3ltYm9sU3VjY2Vzcz0iZGVwdGhfc3ltYm9sX3N1Y2Nlc3MiLGUuRGVwdGhEYXRhPSJkZCIsZS5EZXB0aERhdGFVcGRhdGU9ImRwdSIsZS5EZXB0aEJhckxhc3RWYWx1ZT0iZGVwdGhfYmFyX2xhc3RfdmFsdWUiLGUuQ2xlYXJEYXRhPSJjbGVhcl9kYXRhIixlLlNlcmllc1RpbWVGcmFtZT0ic2VyaWVzX3RpbWVmcmFtZSIsZS5TeW1ib2xSZXNvbHZlZD0ic3ltYm9sX3Jlc29sdmVkIixlLlNlcmllc0Vycm9yPSJzZXJpZXNfZXJyb3IiLGUuU2VyaWVzQ29tcGxldGVkPSJzZXJpZXNfY29tcGxldGVkIixlLlN0dWR5TG9hZGluZz0ic3R1ZHlfbG9hZGluZyJ9KGl8fChpPXt9KSksZnVuY3Rpb24oZSl7ZS5SZXBsYXlFcnJvcj0icmVwbGF5X2Vycm9yIixlLlJlcGxheVBvaW50PSJyZXBsYXlfcG9pbnQiLGUuUmVwbGF5T2s9InJlcGxheV9vayIsZS5SZXBsYXlSZXNvbHV0aW9ucz0icmVwbGF5X3Jlc29sdXRpb25zIixlLlJlcGxheURhdGFFbmQ9InJlcGxheV9kYXRhX2VuZCIsZS5SZXBsYXlJbnN0YW5jZUlkPSJyZXBsYXlfaW5zdGFuY2VfaWQiLGUuUmVwbGF5RGVwdGg9InJlcGxheV9kZXB0aCJ9KG58fChuPXt9KSl9LDUyMTMzMyhlLHQsXyl7InVzZSBzdHJpY3QiO18uZCh0LHtnZXREZWZhdWx0UmVzb2x1dGlvbnM6KCk9Pm59KTt2YXIgcz1fKDkzMDIzMSksaT1fKDYxOTk5Mik7ZnVuY3Rpb24gbigpe2NvbnN0IGU9WyIxIiwiMyIsIjUiLCIxNSIsIjMwIiwiNDUiLCI2MCIsIjEyMCIsIjE4MCIsIjI0MCIsIjFEIiwiMVciLCIxTSIsIjNNIiwiNk0iLCIxMk0iLCIxUiIsIjEwUiIsIjEwMFIiLCIxMDAwUiJdO2lmKCEoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKSl7bGV0IHQ9WyIxUyIsIjVTIiwiMTBTIiwiMTVTIiwiMzBTIiwiNDVzIl07cmV0dXJuKDAsaS5pc1RpY2tzRW5hYmxlZCkoKSYmKHQ9WyIxVCIsIjEwVCIsIjEwMFQiLCIxMDAwVCJdLmNvbmNhdCh0KSksdC5jb25jYXQoZSl9cmV0dXJuIGV9fSwyMTc1MjcoZSx0LF8peyJ1c2Ugc3RyaWN0IjtfLmQodCx7dHlwZXM6KCk9PnN9KTtjb25zdCBzPXtFQ09OT01JQzoiZWNvbm9taWMiLFFVQU5ETDoicXVhbmRsIn19LDEyNzcxMShlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siY21lIjp7IklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjk5OTk5fX0sImJvdmVzcGEiOnsiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6OTk5OTl9fSwicWVjb21xYSI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19LCJzYW50YW5kZXJjb21hciI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19fScpfSw1MDI1ODcoZSl7InVzZSBzdHJpY3QiCjtlLmV4cG9ydHM9SlNPTi5wYXJzZSgneyJmcmVlIjp7IkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo1LCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6MX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6MX0sIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjJ9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjF9LCJISVNUT1JJQ0FMX0JBUlMiOnsibGltaXQiOjV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6MX0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0Ijo1MCwibGltaXQiOjMsImNvbXBsZXhfbGltaXQiOjAsInByaW1pdGl2ZV9saW1pdCI6M30sIlNDUkVFTkVSX0lOVEVSVkFMUyI6eyJpbnRlcnZhbCI6WyIxRCIsIjFXIiwiMU0iXX0sIlNUVURZX1RFTVBMQVRFUyI6eyJsaW1pdCI6MX0sIlNJTVVMVEFORU9VU19DT05ORUNUSU9OUyI6eyJsaW1pdCI6MX0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjJ9LCJJREVBX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIlR3aXR0ZXIiLCJZb3V0dWJlIl19LCJNVUxUSUNPTE9SX0ZMQUdHRURfU1lNQk9MUyI6eyJsaW1pdCI6MX0sIldBVENITElTVF9TWU1CT0xTIjp7ImxpbWl0IjozMH0sIlZJREVPX0lERUFTX0xFTkdUSCI6eyJsaW1pdCI6MjB9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0IjoxfSwiUE9SVEZPTElPX1RSQU5TQUNUSU9OUyI6eyJsaW1pdCI6MjAwMH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6MjB9fSwicHJvIjp7IkRSQVdJTkdTIjp7fSwiQkFDS1RFU1RJTkdfQ0hBUlRfRVhQQU5EIjp7fSwiQkFDS1RFU1RJTkdfRVhURU5ERURfTUVUUklDUyI6e30sIkJBQ0tURVNUSU5HX0VYUE9SVF9YTFNYIjp7fSwiQkFDS1RFU1RJTkdfRVhQT1JUX0NTViI6e30sIkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo1LCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiUEVSU09OQUxfU1VQUE9SVCI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6NX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6Mn0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6MiwicHJpbWl0aXZlX2xpbWl0IjoyfSwiQ1VTVE9NX0lOVEVSVkFMUyI6e30sIk1VTFRJUExFX1dBVENITElTVFMiOnt9LCJJTVBPUlRfV0FUQ0hMSVNUUyI6e30sIkVYUE9SVF9XQVRDSExJU1RTIjp7fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6NX0sIkZVTkRBTUVOVEFMU19GT1JFQ0FTVCI6e30sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6NH0sIlRWX1BST1NUVURJRVMiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtY2hhcnRwYXR0ZXJucyJdfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0IjoxMH0sIlRWX1ZPTFVNRUJZUFJJQ0UiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtdm9sdW1lYnlwcmljZSJdfSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjF9LCJUSUNLX0JZX1RJQ0tfUFVTSF9EQVRBIjp7fSwiU0VSVkVSX1NJREVfQUxFUlRTIjp7Im92ZXJhbGxfbGltaXQiOjIwMDAsImxpbWl0IjoyMCwiY29tcGxleF9saW1pdCI6MjAsInByaW1pdGl2ZV9saW1pdCI6MjB9LCJTQ1JFRU5FUl9BVVRPX1JFRlJFU0giOnt9LCJTQ1JFRU5FUl9ORVdfQVVUT19SRUZSRVNIIjp7fSwiU0NSRUVORVJfTkVXX0VYUE9SVF9DU1ZfREFUQSI6e30sIlNDUkVFTkVSX05FV19TSE9XX1JFU1RSSUNURURfREFUQSI6e30sIlNIT1dfQk9ORFNfUkVTVFJJQ1RFRF9EQVRBIjp7fSwiUE9SVEZPTElPX0RBVEFfTElNSVQiOnt9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0IjozfSwiUE9SVEZPTElPX1RSQU5TQUNUSU9OUyI6eyJsaW1pdCI6NTAwMH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6NTB9LCJTQ1JFRU5FUl9JTlRFUlZBTFMiOnsiaW50ZXJ2YWwiOlsiMW0iLCI1bSIsIjE1bSIsIjMwbSIsIjFoIiwiMmgiLCI0aCIsIjFEIiwiMVciLCIxTSJdfSwiTk9fU1BPTlNPUkVEX0FEUyI6eyJkaXNhYmxlX29uX2xpdGVfcGxhbiI6ImV4Y2x1ZGVfbW9iaWxlIn0sIlNUVURZX1RFTVBMQVRFUyI6eyJsaW1pdCI6OTk5OTl9LCJTSU1VTFRBTkVPVVNfQ09OTkVDVElPTlMiOnsibGltaXQiOjF9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoxMH0sIklEQ19BVkFJTEFCTEVfREVMQVkiOnt9LCJTVEFUVVMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkJBUl9SRVBMQVlfSU5UUkFEQVkiOnsibGltaXQiOjF9LCJNVUxUSUZMQUdHRURfU1lNQk9MU19MSVNUUyI6e30sIlNIT1dTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJBTEVSVFNfV0VCSE9PSyI6e30sIkFMRVJUU19PTl9FQVJOSU5HUyI6e30sIkFMRVJUU19PTl9GVU5EQU1FTlRBTF9NRVRSSUNTIjp7fSwiREVFUF9GVU5EQU1FTlRBTFNfSElTVE9SWSI6e30sIlBVQkxJU0hfUFJPVEVDVEVEX1NDUklQVFMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIklERUFfU09DSUFMX0xJTktTIjp7InNvY2lhbHMiOlsiVHdpdHRlciIsIllvdXR1YmUiXX0sIkVYVEVOREVEX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIkZhY2Vib29rIiwiSW5zdGFncmFtIl0sImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJNVUxUSV9NT05JVE9SIjp7fSwiTVVMVElDT0xPUl9GTEFHR0VEX1NZTUJPTFMiOnsibGltaXQiOjd9LCJJTlRSQURBWV9FWENIQU5HRSI6e30sIlZPTFVNRV9QUk9GSUxFIjp7fSwiU1RSRUFNU19BQ0NFU1MiOnsiZm9sbG93ZXJzIjoxMH0sIlNNU18yRkFfVkVSSUZJQ0FUSU9OIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJTT0NJQUxfQUNUSVZJVFkiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIldBVENITElTVF9TWU1CT0xTIjp7ImxpbWl0IjoxMDAwfSwiRklFTERTX1BFUk1JU1NJT05TIjp7Iml0ZW1zIjpbInJlZmJvbmRzIl19LCJDVVNUT01fUkFOR0VfQkFSUyI6e30sIkZBU1RFU1RfREFUQV9GTE9XIjp7fSwiU0VTU0lPTl9WT0xVTUVfUFJPRklMRSI6e30sIlNIT1dfRVRGX0hPTERJTkdTX0RBVEEiOnt9fSwicHJvX3JlYWx0aW1lIjp7ImV4dGVuZHMiOiJwcm8iLCJDSEFSVF9TVE9SQUdFIjp7ImxpbWl0IjoxMH0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6NH0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6NCwicHJpbWl0aXZlX2xpbWl0Ijo0fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6MTB9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjd9LCJUVl9QUk9TVFVESUVTIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LXByb3N0dWRpZXMiLCJ0di1jaGFydHBhdHRlcm5zIl19LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6OX0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6MTAwLCJjb21wbGV4X2xpbWl0IjoxMDAsInByaW1pdGl2ZV9saW1pdCI6MTAwfSwiQUxFUlRTX01VTFRJQ09ORElUSU9OUyI6eyJjb25kaXRpb25fbGltaXQiOjV9LCJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6NSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNBTl9FRElUX1BVQkxJQ19DSEFUUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6MjB9LCJFWFBPUlRfQ0hBUlRfREFUQSI6e30sIkNVU1RPTV9GT1JNVUxBUyI6e30sIklOVFJBREFZX0VYT1RJQ19DSEFSVFMiOnt9LCJLQUdJX1JFTktPIjp7fSwiSU5UUkFEQVlfU1BSRUFEIjp7fSwiQ1VTVE9NX0NIQVRTIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6NH0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6NzV9fSwicHJvX3ByZW1pdW0iOnsiZXh0ZW5kcyI6InByb19yZWFsdGltZSIsIkJBUl9ERVRBTElaQVRJT04iOnt9LCJTQ1JJUFRfRVhFQ1VUSU9OX09OX0hJU1RPUllfQkFSUyI6e30sIkNIQVJUX1NUT1JBR0UiOnsibGltaXQiOjk5OTk5fSwiTVVMVElQTEVfQ0hBUlRTIjp7ImxpbWl0Ijo4fSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0Ijo2LCJwcmltaXRpdmVfbGltaXQiOjZ9LCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjoyNX0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MTB9LCJGVU5EQU1FTlRBTF9HUkFQSFNfTEFSR0VfVElNRV9SQU5HRSI6e30sIkNIQVRfQVNTSVNUQU5UIjp7ImxpbWl0Ijo5OTk5OSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNIQVJUX1BBVFRFUk5TIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LWNoYXJ0cGF0dGVybnMiLCJ0di1jaGFydF9wYXR0ZXJucyJdfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0IjoyMH0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0IjoyNH0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6NDAwLCJjb21wbGV4X2xpbWl0Ijo0MDAsInByaW1pdGl2ZV9saW1pdCI6NDAwLCJ3YXRjaGxpc3RfbGltaXQiOjIsIm92ZXJhbGxfd2F0Y2hsaXN0X2xpbWl0Ijo1fSwiU0lNVUxUQU5FT1VTX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6NTB9LCJJREVBX1NJR05BVFVSRSI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiUFJPRklMRV9XRUJTSVRFX0ZJRUxEIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0Ijo0fSwiQkFSX1JFUExBWV8xUyI6e30sIkFMRVJUU19OT19FWFBJUkFUSU9OIjp7fSwiUFVCTElTSF9JTlZJVEVfT05MWV9TQ1JJUFRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJFWFBPUlRfQ0hBUlRfREFUQSI6e30sIkRFRVBfSElTVE9SWV9CQUNLVEVTVCI6e30sIkFMRVJUU19PTl9TRUNPTkRTIjp7fSwiUEVSTUFORU5UX1NUUkVBTV9SRUNPUkRTIjp7fSwiRVhURU5ERURfU09DSUFMX0xJTktTIjp7InNvY2lhbHMiOlsiRmFjZWJvb2siLCJJbnN0YWdyYW0iLCJXZWJzaXRlIl0sImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJTRUNPTkRTX0lOVEVSVkFMUyI6e30sIlRQT19QRVJJT0RJQyI6eyJzdHVkeV9wYWNrYWdlcyI6WyJ0di12b2x1bWVieXByaWNlIl19LCJUUE9fQ0hBUlRfU1RZTEUiOnt9LCJWT0xVTUVfQ0FORExFUyI6e30sIlZJREVPX0lERUFTX0xFTkdUSCI6eyJsaW1pdCI6NjB9LCJWT0xVTUVfRk9PVFBSSU5UIjp7fSwiUElORV9TQ1JFRU5FUiI6e30sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjV9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjEwMH0sIlNPQ0lBTF9UUlVTVEVEX1VTRVIiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkZPTExPV0VSU19PTkxZX01JTkRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9fSwicHJvX2V4cGVydCI6eyJleHRlbmRzIjoicHJvX3ByZW1pdW0iLCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjozMH0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MTV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6Mjl9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjEwfSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0IjoxMiwicHJpbWl0aXZlX2xpbWl0IjoxMn0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6MjV9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6MjAwMCwibGltaXQiOjYwMCwiY29tcGxleF9saW1pdCI6NjAwLCJwcmltaXRpdmVfbGltaXQiOjYwMCwid2F0Y2hsaXN0X2xpbWl0IjoxMCwib3ZlcmFsbF93YXRjaGxpc3RfbGltaXQiOjIwfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6ODB9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0Ijo2fSwiQkFSX1JFUExBWV8xUyI6e30sIkJBUl9SRVBMQVlfMVQiOnt9LCJFWFBPUlRfRklOQU5DSUFMU19EQVRBIjp7fSwiVElDS19JTlRFUlZBTFMiOnt9LCJGSVJTVF9QUklPUklUWV9TVVBQT1JUIjp7fSwiQlVZX1BST19EQVRBIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6Nn0sIlBPUlRGT0xJT19IT0xESU5HUyI6eyJsaW1pdCI6MTI1fX0sInByb19wcmVtaXVtX2V4cGVydCI6eyJleHRlbmRzIjoicHJvX2V4cGVydCIsIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjUwfSwiRlVOREFNRU5UQUxTX09OX0NIQVJUIjp7ImxpbWl0IjoyNX0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0Ijo0OX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6MTZ9LCJNQVJLRVRfREFUQV9MSU1JVFMiOnsibGltaXQiOjk5OTk5LCJwcmltaXRpdmVfbGltaXQiOjI1fSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0Ijo0MH0sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0Ijo0MDAwLCJsaW1pdCI6MTAwMCwiY29tcGxleF9saW1pdCI6MTAwMCwicHJpbWl0aXZlX2xpbWl0IjoxMDAwLCJ3YXRjaGxpc3RfbGltaXQiOjE1LCJvdmVyYWxsX3dhdGNobGlzdF9saW1pdCI6MzB9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyMDB9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0IjoxMH0sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjd9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjE1MH19fScpCn19XSk7"}},"time_used":4,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/country/US.svg","fqdn":"s3-symbol-logo.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":"img","requested_by":"https://www.tradingview-widget.com/embed-widget/forex-cross-rates/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A400%2C%22currencies%22%3A%5B%22EUR%22%2C%22USD%22%2C%22JPY%22%2C%22GBP%22%2C%22CHF%22%2C%22AUD%22%2C%22CAD%22%2C%22NZD%22%2C%22CNY%22%5D%2C%22colorTheme%22%3A%22light%22%2C%22largeChartUrl%22%3A%22%22%2C%22utm_source%22%3A%22walmartfundholdings.com%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22forex-cross-rates%22%2C%22page-uri%22%3A%22walmartfundholdings.com%2F%22%7D","date":"2026-07-27T13:34:29.430Z","timestamp":1785159269430,"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 /country/US.svg HTTP/1.1\r\nHost: s3-symbol-logo.tradingview.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\nOrigin: https://www.tradingview-widget.com\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: image\r\nSec-Fetch-Mode: 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 13:34:29 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=2592000, s-maxage=3600\r\ncontent-encoding: zstd\r\netag: \"2b343664b411ee3b87b4a37c15f4dfb9\"\r\nlast-modified: Fri, 25 Apr 2025 20:10:41 GMT\r\ncdn-cachedat: 08/14/2025 09:10:06\r\nx-amz-id-2: nFuFH78hWf/RuyE6sOEP+F9L63kS25o7rnmt39r9N6/xkz0Scv+C4OtWSoMFsuyMhB00in1nZsX8Sh51IXRPU3FuDp9hOipkZvRpvtL7hQk=\r\nx-amz-request-id: GMKTFDY2GEW3BMHT\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 2b343664b411ee3b87b4a37c15f4dfb9\r\ncdn-proxyver: 1.33\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 106637c208aafe89a63a844c809f07f3\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":2910,"size_decoded":1337,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2910), with no line terminators","md5":"2b343664b411ee3b87b4a37c15f4dfb9","sha1":"0bbfacaf518424005de9debac0618b2d385f73eb","sha256":"71bfd6b1db0f03e8ad00d7951a2ec80d684450490bae344b9a0e33141e9264b0","sha512":"9f919e0006556b02b85110cffca18cf69613d63530fd055b4e2a2c27166c8e27401d7aca3482e568802eab205eefc5f98b6ae545c1dc476fb41a9b614ab0825c","ssdeep":"","tlshash":"97518f2a941d951c2846e60dc77f8882738e2d0771a5a2d81dfcf3a4e20f7e5fb47880","first_seen":"2025-04-26T10:53:44.17511Z","last_seen":"2026-07-30T06:08:06.32193Z","times_seen":5925,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxRTg4RTkiIGQ9Ik0wIDBIMTFWMTFIMHoiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyIvPjxwYXRoIGZpbGw9IiNFRjUzNTAiIGQ9Ik0xMSAwdjRIMTh2LTR6TTExIDd2NEgxOHYtNHpNMCAxNHY0SDE4di00eiIgc2hhcGUtcmVuZGVyaW5nPSJjcmlzcEVkZ2VzIi8+PHBhdGggZmlsbD0iI0Y4RjlGRCIgZD0iTTExIDR2M0gxOHYtM3pNMCAxMXYzSDE4di0zeiIgc2hhcGUtcmVuZGVyaW5nPSJjcmlzcEVkZ2VzIi8+PHBhdGggZmlsbD0iI0Y4RjlGRCIgZD0iTTIuNDIgMS4yMmEuMDkuMDkgMCAwIDEgLjE2IDBsLjI3LjcxYy4wMS4wNC4wNS4wNi4wOC4wNmwuNzYuMDRjLjA4IDAgLjExLjEuMDUuMTZsLS42LjQ3YS4wOS4wOSAwIDAgMC0uMDIuMWwuMi43MmEuMDkuMDkgMCAwIDEtLjE0LjFsLS42My0uNDFhLjA5LjA5IDAgMCAwLS4xIDBsLS42My40MWEuMDkuMDkgMCAwIDEtLjE0LS4xbC4yLS43M2EuMDkuMDkgMCAwIDAtLjAzLS4xbC0uNTktLjQ2YS4wOS4wOSAwIDAgMSAuMDUtLjE2bC43Ni0uMDRjLjAzIDAgLjA3LS4wMi4wOC0uMDZsLjI3LS43ek0yLjQyIDQuMjJhLjA5LjA5IDAgMCAxIC4xNiAwbC4yNy43MWMuMDEuMDQuMDUuMDYuMDguMDZsLjc2LjA0Yy4wOCAwIC4xMS4xLjA1LjE2bC0uNi40N2EuMDkuMDkgMCAwIDAtLjAyLjFsLjIuNzJhLjA5LjA5IDAgMCAxLS4xNC4xbC0uNjMtLjQxYS4wOS4wOSAwIDAgMC0uMSAwbC0uNjMuNDFhLjA5LjA5IDAgMCAxLS4xNC0uMWwuMi0uNzNhLjA5LjA5IDAgMCAwLS4wMy0uMWwtLjU5LS40NmEuMDkuMDkgMCAwIDEgLjA1LS4xNmwuNzYtLjA0Yy4wMyAwIC4wNy0uMDIuMDgtLjA2bC4yNy0uN3pNMi40MiA3LjIyYS4wOS4wOSAwIDAgMSAuMTYgMGwuMjcuNzFjLjAxLjA0LjA1LjA2LjA4LjA2bC43Ni4wNGMuMDggMCAuMTEuMS4wNS4xNmwtLjYuNDdhLjA5LjA5IDAgMCAwLS4wMi4xbC4yLjcyYS4wOS4wOSAwIDAgMS0uMTQuMWwtLjYzLS40MWEuMDkuMDkgMCAwIDAtLjEgMGwtLjYzLjQxYS4wOS4wOSAwIDAgMS0uMTQtLjFsLjItLjczYS4wOS4wOSAwIDAgMC0uMDMtLjFsLS41OS0uNDZhLjA5LjA5IDAgMCAxIC4wNS0uMTZsLjc2LS4wNGMuMDMgMCAuMDctLjAyLjA4LS4wNmwuMjctLjd6TTUuNDIgMS4yMmEuMDkuMDkgMCAwIDEgLjE2IDBsLjI3LjcxYy4wMS4wNC4wNS4wNi4wOC4wNmwuNzYuMDRjLjA4IDAgLjExLjEuMDUuMTZsLS42LjQ3YS4wOS4wOSAwIDAgMC0uMDIuMWwuMi43MmEuMDkuMDkgMCAwIDEtLjE0LjFsLS42My0uNDFhLjA5LjA5IDAgMCAwLS4xIDBsLS42My40MWEuMDkuMDkgMCAwIDEtLjE0LS4xbC4yLS43M2EuMDkuMDkgMCAwIDAtLjAzLS4xbC0uNTktLjQ2YS4wOS4wOSAwIDAgMSAuMDUtLjE2bC43Ni0uMDRjLjAzIDAgLjA3LS4wMi4wOC0uMDZsLjI3LS43ek01LjQyIDQuMjJhLjA5LjA5IDAgMCAxIC4xNiAwbC4yNy43MWMuMDEuMDQuMDUuMDYuMDguMDZsLjc2LjA0Yy4wOCAwIC4xMS4xLjA1LjE2bC0uNi40N2EuMDkuMDkgMCAwIDAtLjAyLjFsLjIuNzJhLjA5LjA5IDAgMCAxLS4xNC4xbC0uNjMtLjQxYS4wOS4wOSAwIDAgMC0uMSAwbC0uNjMuNDFhLjA5LjA5IDAgMCAxLS4xNC0uMWwuMi0uNzNhLjA5LjA5IDAgMCAwLS4wMy0uMWwtLjU5LS40NmEuMDkuMDkgMCAwIDEgLjA1LS4xNmwuNzYtLjA0Yy4wMyAwIC4wNy0uMDIuMDgtLjA2bC4yNy0uN3pNNS40MiA3LjIyYS4wOS4wOSAwIDAgMSAuMTYgMGwuMjcuNzFjLjAxLjA0LjA1LjA2LjA4LjA2bC43Ni4wNGMuMDggMCAuMTEuMS4wNS4xNmwtLjYuNDdhLjA5LjA5IDAgMCAwLS4wMi4xbC4yLjcyYS4wOS4wOSAwIDAgMS0uMTQuMWwtLjYzLS40MWEuMDkuMDkgMCAwIDAtLjEgMGwtLjYzLjQxYS4wOS4wOSAwIDAgMS0uMTQtLjFsLjItLjczYS4wOS4wOSAwIDAgMC0uMDMtLjFsLS41OS0uNDZhLjA5LjA5IDAgMCAxIC4wNS0uMTZsLjc2LS4wNGMuMDMgMCAuMDctLjAyLjA4LS4wNmwuMjctLjd6TTguNDIgMS4yMmEuMDkuMDkgMCAwIDEgLjE2IDBsLjI3LjcxYy4wMS4wNC4wNS4wNi4wOC4wNmwuNzYuMDRjLjA4IDAgLjExLjEuMDUuMTZsLS42LjQ3YS4wOS4wOSAwIDAgMC0uMDIuMWwuMi43MmEuMDkuMDkgMCAwIDEtLjE0LjFsLS42My0uNDFhLjA5LjA5IDAgMCAwLS4xIDBsLS42My40MWEuMDkuMDkgMCAwIDEtLjE0LS4xbC4yLS43M2EuMDkuMDkgMCAwIDAtLjAzLS4xbC0uNTktLjQ2YS4wOS4wOSAwIDAgMSAuMDUtLjE2bC43Ni0uMDRjLjAzIDAgLjA3LS4wMi4wOC0uMDZsLjI3LS43ek04LjQyIDQuMjJhLjA5LjA5IDAgMCAxIC4xNiAwbC4yNy43MWMuMDEuMDQuMDUuMDYuMDguMDZsLjc2LjA0Yy4wOCAwIC4xMS4xLjA1LjE2bC0uNi40N2EuMDkuMDkgMCAwIDAtLjAyLjFsLjIuNzJhLjA5LjA5IDAgMCAxLS4xNC4xbC0uNjMtLjQxYS4wOS4wOSAwIDAgMC0uMSAwbC0uNjMuNDFhLjA5LjA5IDAgMCAxLS4xNC0uMWwuMi0uNzNhLjA5LjA5IDAgMCAwLS4wMy0uMWwtLjU5LS40NmEuMDkuMDkgMCAwIDEgLjA1LS4xNmwuNzYtLjA0Yy4wMyAwIC4wNy0uMDIuMDgtLjA2bC4yNy0uN3pNOC40MiA3LjIyYS4wOS4wOSAwIDAgMSAuMTYgMGwuMjcuNzFjLjAxLjA0LjA1LjA2LjA4LjA2bC43Ni4wNGMuMDggMCAuMTEuMS4wNS4xNmwtLjYuNDdhLjA5LjA5IDAgMCAwLS4wMi4xbC4yLjcyYS4wOS4wOSAwIDAgMS0uMTQuMWwtLjYzLS40MWEuMDkuMDkgMCAwIDAtLjEgMGwtLjYzLjQxYS4wOS4wOSAwIDAgMS0uMTQtLjFsLjItLjczYS4wOS4wOSAwIDAgMC0uMDMtLjFsLS41OS0uNDZhLjA5LjA5IDAgMCAxIC4wNS0uMTZsLjc2LS4wNGMuMDMgMCAuMDctLjAyLjA4LS4wNmwuMjctLjd6Ii8+PC9zdmc+"}},"time_used":104,"timings":{"blocked":-1,"dns":50,"connect":27,"send":0,"wait":4,"receive":-1,"ssl":19},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"translate-pa.googleapis.com/v1/supportedLanguages?client=te\u0026display_language=no\u0026key=AIzaSyBWDj0QJvVIx8XOhRegXX5_SrRWxhT5Hs4\u0026callback=callback","fqdn":"translate-pa.googleapis.com","domain":"translate-pa.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"172.217.117.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"moz-nullprincipal:{ae47f6b2-f504-48eb-9a26-7ec88b9b96b4}?https://walmartfundholdings.com","date":"2026-07-27T13:34:29.606Z","timestamp":1785159269606,"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":"WR2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:20 GMT","end":"Mon, 21 Sep 2026 08:39:19 GMT"},"fingerprint":{"sha1":"2A:E6:04:0E:76:A4:02:27:67:28:31:4D:E5:61:19:26:CA:0E:32:84","sha256":"D4:ED:C4:F8:DB:31:8A:2D:35:15:01:14:C0:49:CB:47:FF:5B:CC:17:14:82:63:9B:A8:6F:61:4D:AA:E5:96:94"}}},"request":{"raw":"GET /v1/supportedLanguages?client=te\u0026display_language=no\u0026key=AIzaSyBWDj0QJvVIx8XOhRegXX5_SrRWxhT5Hs4\u0026callback=callback HTTP/1.1\r\nHost: translate-pa.googleapis.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://walmartfundholdings.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\np3p: CP=\"This is not a P3P policy! See g.co/p3phelp for more info.\"\r\ncross-origin-resource-policy: cross-origin\r\ncontent-type: text/javascript; charset=UTF-8\r\nvary: Origin, X-Origin, Referer\r\ncontent-encoding: gzip\r\ndate: Mon, 27 Jul 2026 13:34:29 GMT\r\nserver: ESF\r\ncontent-length: 2635\r\nx-xss-protection: 0\r\nx-frame-options: SAMEORIGIN\r\nx-content-type-options: nosniff\r\nset-cookie: NID=533=ZeA1cc0i66TMhRR3AQrgrOiZZg58cqtAEbcdi1pLImRNXaRSngs_tpxWZb_AaoEenpgQ8XlAm3RbKeM-kzMnTX0p6XETRac-L-Ak-sC26uKzASOedLxAzZpX9p-HTn3nTbIYcEEc-hTMV10_nn3nbjuQDxXo9qqsHRlWhntUAa-h1INwpf9ErnHEVfJE2Tu_ElfX-71ozKswhvp0Q33uJKaRFNR9ECt0; expires=Tue, 26-Jan-2027 13:34:29 GMT; path=/; domain=.translate-pa.googleapis.com; HttpOnly\r\nexpires: Mon, 27 Jul 2026 13:34:29 GMT\r\ncache-control: private\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":null,"data":{"size":31482,"size_decoded":3502,"mime_type":"text/javascript; charset=UTF-8","magic":"Unicode text, UTF-8 text","md5":"91115de97ad1a90076e130223cdd90ad","sha1":"f3ad22e4fa892dfbff0d083bc0465fc3a2240317","sha256":"816e9881b1955d8beff3011d93481dad4c4de71bbd80b50ac267e7e45d4c3bad","sha512":"fbca69c3431240ab374b9ccfb06d76074059cdfe2f153743b292020271a8a3a36885189594a97fd74b43249b1f6359af62dfd0731e7b50e024f37faebdccf620","ssdeep":"192:Z6STcB9aqiD0+52DdKXrWryLxizUSTcB9aqdD0+52DdKXrWryLxG:JTcbaU3KXiMxidTcbah3KXiMxG","tlshash":"d0e267bae8b50d9b6a5e65b416fa2a03306041db4edc3c053b1c1e4c6fdec1e6c7169e","first_seen":"2025-09-02T05:12:23.753308Z","last_seen":"2026-07-30T06:08:30.838296Z","times_seen":8416,"resource_available":true,"data":"Ly8gQVBJIGNhbGxiYWNrCmNhbGxiYWNrKHsKICAic291cmNlTGFuZ3VhZ2VzIjogWwogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXV0byIsCiAgICAgICJuYW1lIjogIkdqZW5ramVubiBzcHLDpWsiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWIiLAogICAgICAibmFtZSI6ICJhYmtoYXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWNlIiwKICAgICAgIm5hbWUiOiAiYWNlaG5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhY2giLAogICAgICAibmFtZSI6ICJhY2hvbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWEiLAogICAgICAibmFtZSI6ICJhZmFyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFmIiwKICAgICAgIm5hbWUiOiAiYWZyaWthYW5zIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNxIiwKICAgICAgIm5hbWUiOiAiYWxiYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhbHoiLAogICAgICAibmFtZSI6ICJhbHVyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFtIiwKICAgICAgIm5hbWUiOiAiYW1oYXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXIiLAogICAgICAibmFtZSI6ICJhcmFiaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh5IiwKICAgICAgIm5hbWUiOiAiYXJtZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJheiIsCiAgICAgICJuYW1lIjogImFzZXJiYWpkc2phbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFzIiwKICAgICAgIm5hbWUiOiAiYXNzYW1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhdiIsCiAgICAgICJuYW1lIjogImF2YXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXdhIiwKICAgICAgIm5hbWUiOiAiYXdhZGhpIgogICAgfSwKICAgIHsKICAgICAibGFuZ3VhZ2UiOiAiYXkiLAogICAgICAibmFtZSI6ICJheW1hcmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmFuIiwKICAgICAgIm5hbWUiOiAiYmFsaW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYWwiLAogICAgICAibmFtZSI6ICJiYWx1dHNqaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibSIsCiAgICAgICJuYW1lIjogImJhbWJhcmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmNpIiwKICAgICAgIm5hbWUiOiAiYmFvdWzDqSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYSIsCiAgICAgICJuYW1lIjogImJhc2praXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJldSIsCiAgICAgICJuYW1lIjogImJhc2tpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnR4IiwKICAgICAgIm5hbWUiOiAiYmF0YWsga2FybyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJidHMiLAogICAgICAibmFtZSI6ICJiYXRhayBzaW1hbHVuZ3VuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJiYyIsCiAgICAgICJuYW1lIjogImJhdGFrIHRvYmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVtIiwKICAgICAgIm5hbWUiOiAiYmVtYmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYm4iLAogICAgICAibmFtZSI6ICJiZW5nYWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJldyIsCiAgICAgICJuYW1lIjogImJldGF3aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiaG8iLAogICAgICAibmFtZSI6ICJiaG9qcHVyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiaWsiLAogICAgICAibmFtZSI6ICJiaWtvbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJicyIsCiAgICAgICJuYW1lIjogImJvc25pc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnIiLAogICAgICAibmFtZSI6ICJicmV0b25zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZyIsCiAgICAgICJuYW1lIjogImJ1bGdhcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJ1YSIsCiAgICAgICJuYW1lIjogImJ1cmphdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJteSIsCiAgICAgICJuYW1lIjogImJ1cm1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZWIiLAogICAgICAibmFtZSI6ICJjZWJ1YW5vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNoIiwKICAgICAgIm5hbWUiOiAiY2hhbW9ycm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnkiLAogICAgICAibmFtZSI6ICJjaGljaGV3YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkYSIsCiAgICAgICJuYW1lIjogImRhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZhLUFGIiwKICAgICAgIm5hbWUiOiAiZGFyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkdiIsCiAgICAgICJuYW1lIjogImRoaXZlaGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZGluIiwKICAgICAgIm5hbWUiOiAiZGlua2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZG9pIiwKICAgICAgIm5hbWUiOiAiZG9ncmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZG92IiwKICAgICAgIm5hbWUiOiAiZG9tYmUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZHl1IiwKICAgICAgIm5hbWUiOiAiRHl1bGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZHoiLAogICAgICAibmFtZSI6ICJkem9uZ2toYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbiIsCiAgICAgICJuYW1lIjogImVuZ2Vsc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZW8iLAogICAgICAibmFtZSI6ICJlc3BlcmFudG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZXQiLAogICAgICAibmFtZSI6ICJlc3Rpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZWUiLAogICAgICAibmFtZSI6ICJld2UiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmEiLAogICAgICAibmFtZSI6ICJmYXJzaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmaiIsCiAgICAgICJuYW1lIjogImZpamlhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZpIiwKICAgICAgIm5hbWUiOiAiZmluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZm9uIiwKICAgICAgIm5hbWUiOiAiZm9uIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZyIiwKICAgICAgIm5hbWUiOiAiZnJhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZyLUNBIiwKICAgICAgIm5hbWUiOiAiRnJhbnNrIChDYW5hZGEpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZ5IiwKICAgICAgIm5hbWUiOiAiZnJpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmdXIiLAogICAgICAibmFtZSI6ICJmcml1bGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmZiIsCiAgICAgICJuYW1lIjogImZ1bGZ1bGRlIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZvIiwKICAgICAgIm5hbWUiOiAiZsOmcsO4eXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdsIiwKICAgICAgIm5hbWUiOiAiZ2FsaXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2EiLAogICAgICAibmFtZSI6ICJnZW9yZ2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbCIsCiAgICAgICJuYW1lIjogImdyZXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImduIiwKICAgICAgIm5hbWUiOiAiZ3VhcmFuw60iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ3UiLAogICAgICAibmFtZSI6ICJndWphcmF0aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnYWEiLAogICAgICAibmFtZSI6ICJnYWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY25oIiwKICAgICAgIm5hbWUiOiAiaGFraGEgY2hpbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoYSIsCiAgICAgICJuYW1lIjogImhhdXNhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhhdyIsCiAgICAgICJuYW1lIjogImhhd2FpaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIml3IiwKICAgICAgIm5hbWUiOiAiaGVicmFpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaGlsIiwKICAgICAgIm5hbWUiOiAiaGlsaWdheW5vbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoaSIsCiAgICAgICJuYW1lIjogImhpbmRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhtbiIsCiAgICAgICJuYW1lIjogImhtb25nIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhyeCIsCiAgICAgICJuYW1lIjogImh1bnNyaWsiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmUiLAogICAgICAibmFtZSI6ICJodml0ZXJ1c3Npc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaWJhIiwKICAgICAgIm5hbWUiOiAiaWJhbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpZyIsCiAgICAgICJuYW1lIjogImlnYm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaWxvIiwKICAgICAgIm5hbWUiOiAiaWxva2FubyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpZCIsCiAgICAgICJuYW1lIjogImluZG9uZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXUtTGF0biIsCiAgICAgICJuYW1lIjogIkludWt0aXR1dCAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXUiLAogICAgICAibmFtZSI6ICJJbnVrdGl0dXQgKHN0YXZlbHNlKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnYSIsCiAgICAgICJuYW1lIjogImlyc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXMiLAogICAgICAibmFtZSI6ICJpc2xhbmRzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdCIsCiAgICAgICJuYW1lIjogIml0YWxpZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYWgiLAogICAgICAibmFtZSI6ICJqYWt1dGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqYW0iLAogICAgICAibmFtZSI6ICJqYW1haWNhbnNrIHBhdG9pcyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqYSIsCiAgICAgICJuYW1lIjogImphcGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAianciLAogICAgICAibmFtZSI6ICJqYXZhbmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInlpIiwKICAgICAgIm5hbWUiOiAiamlkZGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrYWMiLAogICAgICAibmFtZSI6ICJqaW5ncG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieW8iLAogICAgICAibmFtZSI6ICJqb3J1YmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2wiLAogICAgICAibmFtZSI6ICJrYWxhYWxsaXN1dCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrbiIsCiAgICAgICJuYW1lIjogImthbm5hZGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieXVlIiwKICAgICAgIm5hbWUiOiAia2FudG9uZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3IiLAogICAgICAibmFtZSI6ICJrYW51cmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGFtIiwKICAgICAgIm5hbWUiOiAia2FwYW1wYW5nYW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2siLAogICAgICAibmFtZSI6ICJrYXNha2hpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2EiLAogICAgICAibmFtZSI6ICJrYXRhbGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2VrIiwKICAgICAgIm5hbWUiOiAia2VrY2hpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtoYSIsCiAgICAgICJuYW1lIjogImtoYXNpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImttIiwKICAgICAgIm5hbWUiOiAia2htZXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2dnIiwKICAgICAgIm5hbWUiOiAia2lnYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrZyIsCiAgICAgICJuYW1lIjogImtpa29uZ28iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiemgtQ04iLAogICAgICAibmFtZSI6ICJraW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJydyIsCiAgICAgICJuYW1lIjogImtpbnlhcndhbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt5IiwKICAgICAgIm5hbWUiOiAia2lyZ2lzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJuIiwKICAgICAgIm5hbWUiOiAia2lydW5kaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrdHUiLAogICAgICAibmFtZSI6ICJraXR1YmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHJwIiwKICAgICAgIm5hbWUiOiAia29rYm9yb2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3YiLAogICAgICAibmFtZSI6ICJrb21pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdvbSIsCiAgICAgICJuYW1lIjogImtvbmthbmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia28iLAogICAgICAibmFtZSI6ICJrb3JlYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjbyIsCiAgICAgICJuYW1lIjogImtvcnNpa2Fuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHQiLAogICAgICAibmFtZSI6ICJrcmVvbCAoSGFpdGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNycyIsCiAgICAgICJuYW1lIjogImtyZW9sIChTZXljaGVsbGVuZSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3JoIiwKICAgICAgIm5hbWUiOiAiS3JpbXRhdGFyaXNrIChreXJpbGxpc2spIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNyaC1MYXRuIiwKICAgICAgIm5hbWUiOiAiS3JpbXRhdGFyaXNrIChsYXRpbnNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrcmkiLAogICAgICAibmFtZSI6ICJrcmlvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhyIiwKICAgICAgIm5hbWUiOiAia3JvYXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3UiLAogICAgICAibmFtZSI6ICJrdXJkaXNrIChrdXJtYW5qaSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2tiIiwKICAgICAgIm5hbWUiOiAia3VyZGlzayAoc29yYW5pKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbyIsCiAgICAgICJuYW1lIjogImxhb3Rpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHRnIiwKICAgICAgIm5hbWUiOiAibGF0Z2FsaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxhIiwKICAgICAgIm5hbWUiOiAibGF0aW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHYiLAogICAgICAibmFtZSI6ICJsYXR2aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxpaiIsCiAgICAgICJuYW1lIjogImxpZ3VyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxpIiwKICAgICAgIm5hbWUiOiAibGltYnVyZ3NrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxuIiwKICAgICAgIm5hbWUiOiAibGluZ2FsYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdCIsCiAgICAgICJuYW1lIjogImxpdGF1aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxtbyIsCiAgICAgICJuYW1lIjogImxvbWJhcmRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibGciLAogICAgICAibmFtZSI6ICJsdWdhbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx1byIsCiAgICAgICJuYW1lIjogImx1byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsYiIsCiAgICAgICJuYW1lIjogImx1eGVtYm91cmdzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtZyIsCiAgICAgICJuYW1lIjogIm1hZGFnYXNzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hZCIsCiAgICAgICJuYW1lIjogIm1hZHVyZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWFpIiwKICAgICAgIm5hbWUiOiAibWFpdGhpbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWFrIiwKICAgICAgIm5hbWUiOiAiTWFrYXNzYXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWsiLAogICAgICAibmFtZSI6ICJtYWtlZG9uc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWwiLAogICAgICAibmFtZSI6ICJtYWxheWFsYW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXMiLAogICAgICAibmFtZSI6ICJtYWxheWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtcy1BcmFiIiwKICAgICAgIm5hbWUiOiAibWFsYXlpc2sgKGphd2kpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm10IiwKICAgICAgIm5hbWUiOiAibWFsdGVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hbSIsCiAgICAgICJuYW1lIjogIm1hbSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJndiIsCiAgICAgICJuYW1lIjogIm1hbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1pIiwKICAgICAgIm5hbWUiOiAibWFvcmkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXIiLAogICAgICAibmFtZSI6ICJtYXJhdGhpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1oIiwKICAgICAgIm5hbWUiOiAibWFyc2hhbGxlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtd3IiLAogICAgICAibmFtZSI6ICJtYXJ3YWRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1mZSIsCiAgICAgICJuYW1lIjogIm1hdXJpdGlzayBrcmVvbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtbmktTXRlaSIsCiAgICAgICJuYW1lIjogIm1laXRlaWxvbiAobWFuaXB1cmkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1pbiIsCiAgICAgICJuYW1lIjogIm1pbmFuZyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdXMiLAogICAgICAibmFtZSI6ICJtaXpvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1uIiwKICAgICAgIm5hbWUiOiAibW9uZ29sc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibmhlIiwKICAgICAgIm5hbWUiOiAibmFodWF0bCAow7hzdGxpZ2UgSHVhc3RlY2EpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5kYy1aVyIsCiAgICAgICJuYW1lIjogIm5kYXUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnIiLAogICAgICAibmFtZSI6ICJuZGViZWxlIChzw7hyKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJubCIsCiAgICAgICJuYW1lIjogIm5lZGVybGFuZHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5ldyIsCiAgICAgICJuYW1lIjogIk5lcGFsIGJoYXNhIChuZXdhcmkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5lIiwKICAgICAgIm5hbWUiOiAibmVwYWxzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibS1Oa29vIiwKICAgICAgIm5hbWUiOiAiTktvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5vIiwKICAgICAgIm5hbWUiOiAibm9yc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnVzIiwKICAgICAgIm5hbWUiOiAibnVlciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvYyIsCiAgICAgICJuYW1lIjogIm9rc2l0YW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvciIsCiAgICAgICJuYW1lIjogIm9yaXlhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm9tIiwKICAgICAgIm5hbWUiOiAib3JvbW8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib3MiLAogICAgICAibmFtZSI6ICJvc3NldGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYWciLAogICAgICAibmFtZSI6ICJwYW5nYXNpbmFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhIiwKICAgICAgIm5hbWUiOiAiUGFuamFiaSAoZ3VybXVraGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhLUFyYWIiLAogICAgICAibmFtZSI6ICJwYW5qYWJpIChzaGFobXVraGkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBhcCIsCiAgICAgICJuYW1lIjogInBhcGlhbWVudG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicHMiLAogICAgICAibmFtZSI6ICJwYXNodG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGwiLAogICAgICAibmFtZSI6ICJwb2xzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwdCIsCiAgICAgICJuYW1lIjogInBvcnR1Z2lzaXNrIChCcmFzaWwpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInB0LVBUIiwKICAgICAgIm5hbWUiOiAicG9ydHVnaXNpc2sgKFBvcnR1Z2FsKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJxdSIsCiAgICAgICJuYW1lIjogInF1ZWNodWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicm9tIiwKICAgICAgIm5hbWUiOiAicm9tYW5pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJvIiwKICAgICAgIm5hbWUiOiAicnVtZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJydSIsCiAgICAgICJuYW1lIjogInJ1c3Npc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2UiLAogICAgICAibmFtZSI6ICJzYW1pc2sgKG5vcmQpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNtIiwKICAgICAgIm5hbWUiOiAic2Ftb2Fuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2ciLAogICAgICAibmFtZSI6ICJzYW5nbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYSIsCiAgICAgICJuYW1lIjogInNhbnNrcml0IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhdC1MYXRuIiwKICAgICAgIm5hbWUiOiAiU2FudGFsaSAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2F0IiwKICAgICAgIm5hbWUiOiAiU2FudGFsaSAob2wgY2hpa2kpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN6bCIsCiAgICAgICJuYW1lIjogInNjaGxlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuc28iLAogICAgICAibmFtZSI6ICJzZXBlZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3IiLAogICAgICAibmFtZSI6ICJzZXJiaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNobiIsCiAgICAgICJuYW1lIjogInNoYW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic24iLAogICAgICAibmFtZSI6ICJzaG9uYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzY24iLAogICAgICAibmFtZSI6ICJzaWNpbGlhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNkIiwKICAgICAgIm5hbWUiOiAic2luZGhpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNpIiwKICAgICAgIm5hbWUiOiAic2luZ2FsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ2QiLAogICAgICAibmFtZSI6ICJza290c2sgZ8OmbGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzayIsCiAgICAgICJuYW1lIjogInNsb3Zha2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbCIsCiAgICAgICJuYW1lIjogInNsb3ZlbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNvIiwKICAgICAgIm5hbWUiOiAic29tYWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN0IiwKICAgICAgIm5hbWUiOiAic290aG8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZXMiLAogICAgICAibmFtZSI6ICJzcGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3UiLAogICAgICAibmFtZSI6ICJzdW5kYW5lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdXMiLAogICAgICAibmFtZSI6ICJzdXN1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN2IiwKICAgICAgIm5hbWUiOiAic3ZlbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN3IiwKICAgICAgIm5hbWUiOiAic3dhaGlsaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzcyIsCiAgICAgICJuYW1lIjogInN3YXRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRnIiwKICAgICAgIm5hbWUiOiAidGFkc2ppa2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0bCIsCiAgICAgICJuYW1lIjogInRhZ2Fsb2ciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHkiLAogICAgICAibmFtZSI6ICJ0YWhpdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZXItTGF0biIsCiAgICAgICJuYW1lIjogInRhbWF6aWdodCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZXIiLAogICAgICAibmFtZSI6ICJ0YW1hemlnaHQgKHRpZmluYWdoKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0YSIsCiAgICAgICJuYW1lIjogInRhbWlsIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR0IiwKICAgICAgIm5hbWUiOiAidGF0YXJpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGUiLAogICAgICAibmFtZSI6ICJ0ZWx1Z3UiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGV0IiwKICAgICAgIm5hbWUiOiAidGV0dW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGgiLAogICAgICAibmFtZSI6ICJ0aGFpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJvIiwKICAgICAgIm5hbWUiOiAidGliZXRhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRpIiwKICAgICAgIm5hbWUiOiAidGlncmluamEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGl2IiwKICAgICAgIm5hbWUiOiAidGl2IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRwaSIsCiAgICAgICJuYW1lIjogInRvayBwaXNpbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0byIsCiAgICAgICJuYW1lIjogInRvbmdhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx1YSIsCiAgICAgICJuYW1lIjogInRzaGlsdWJhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNzIiwKICAgICAgIm5hbWUiOiAidHNqZWtraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNlIiwKICAgICAgIm5hbWUiOiAidHNqZXRzamVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2hrIiwKICAgICAgIm5hbWUiOiAidHNqdWt0c2ppc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3YiLAogICAgICAibmFtZSI6ICJ0c2p1dmFzamlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0cyIsCiAgICAgICJuYW1lIjogInRzb25nYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0biIsCiAgICAgICJuYW1lIjogInRzd2FuYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0Y3kiLAogICAgICAibmFtZSI6ICJ0dWx1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR1bSIsCiAgICAgICJuYW1lIjogInR1bWJ1a2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGsiLAogICAgICAibmFtZSI6ICJ0dXJrbWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHl2IiwKICAgICAgIm5hbWUiOiAidHV2aW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhayIsCiAgICAgICJuYW1lIjogInR3aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0ciIsCiAgICAgICJuYW1lIjogInR5cmtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZGUiLAogICAgICAibmFtZSI6ICJ0eXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVkbSIsCiAgICAgICJuYW1lIjogInVkbXVydGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ZyIsCiAgICAgICJuYW1lIjogInVpZ3VyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVrIiwKICAgICAgIm5hbWUiOiAidWtyYWluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHUiLAogICAgICAibmFtZSI6ICJ1bmdhcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInVyIiwKICAgICAgIm5hbWUiOiAidXJkdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1eiIsCiAgICAgICJuYW1lIjogInVzYmVraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInZlIiwKICAgICAgIm5hbWUiOiAidmVuZGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidmVjIiwKICAgICAgIm5hbWUiOiAidmVuZXRpYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ2aSIsCiAgICAgICJuYW1lIjogInZpZXRuYW1lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjeSIsCiAgICAgICJuYW1lIjogIndhbGlzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIndhciIsCiAgICAgICJuYW1lIjogIndhcmF5LXdhcmF5IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIndvIiwKICAgICAgIm5hbWUiOiAid29sb2YiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieGgiLAogICAgICAibmFtZSI6ICJ4aG9zYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5dWEiLAogICAgICAibmFtZSI6ICJ5dWthdGFuc2sgbWF5YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6YXAiLAogICAgICAibmFtZSI6ICJ6YXBvdGVjIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInp1IiwKICAgICAgIm5hbWUiOiAienVsdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjaG0iLAogICAgICAibmFtZSI6ICLDuHN0bWFyaXNrIgogICAgfQogIF0sCiAgInRhcmdldExhbmd1YWdlcyI6IFsKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFiIiwKICAgICAgIm5hbWUiOiAiYWJraGFzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFjZSIsCiAgICAgICJuYW1lIjogImFjZWhuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWNoIiwKICAgICAgIm5hbWUiOiAiYWNob2xpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFhIiwKICAgICAgIm5hbWUiOiAiYWZhciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhZiIsCiAgICAgICJuYW1lIjogImFmcmlrYWFucyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzcSIsCiAgICAgICJuYW1lIjogImFsYmFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWx6IiwKICAgICAgIm5hbWUiOiAiYWx1ciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhbSIsCiAgICAgICJuYW1lIjogImFtaGFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImFyIiwKICAgICAgIm5hbWUiOiAiYXJhYmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoeSIsCiAgICAgICJuYW1lIjogImFybWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXoiLAogICAgICAibmFtZSI6ICJhc2VyYmFqZHNqYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJhcyIsCiAgICAgICJuYW1lIjogImFzc2FtZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYXYiLAogICAgICAibmFtZSI6ICJhdmFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImF3YSIsCiAgICAgICJuYW1lIjogImF3YWRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJheSIsCiAgICAgICJuYW1lIjogImF5bWFyYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiYW4iLAogICAgICAibmFtZSI6ICJiYWxpbmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJhbCIsCiAgICAgICJuYW1lIjogImJhbHV0c2ppIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJtIiwKICAgICAgIm5hbWUiOiAiYmFtYmFyYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiY2kiLAogICAgICAibmFtZSI6ICJiYW91bMOpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJhIiwKICAgICAgIm5hbWUiOiAiYmFzamtpcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImV1IiwKICAgICAgIm5hbWUiOiAiYmFza2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJidHgiLAogICAgICAibmFtZSI6ICJiYXRhayBrYXJvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJ0cyIsCiAgICAgICJuYW1lIjogImJhdGFrIHNpbWFsdW5ndW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmJjIiwKICAgICAgIm5hbWUiOiAiYmF0YWsgdG9iYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZW0iLAogICAgICAibmFtZSI6ICJiZW1iYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibiIsCiAgICAgICJuYW1lIjogImJlbmdhbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmV3IiwKICAgICAgIm5hbWUiOiAiYmV0YXdpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJobyIsCiAgICAgICJuYW1lIjogImJob2pwdXJpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJpayIsCiAgICAgICJuYW1lIjogImJpa29sIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJzIiwKICAgICAgIm5hbWUiOiAiYm9zbmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiciIsCiAgICAgICJuYW1lIjogImJyZXRvbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImJnIiwKICAgICAgIm5hbWUiOiAiYnVsZ2Fyc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYnVhIiwKICAgICAgIm5hbWUiOiAiYnVyamF0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm15IiwKICAgICAgIm5hbWUiOiAiYnVybWVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNlYiIsCiAgICAgICJuYW1lIjogImNlYnVhbm8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2giLAogICAgICAibmFtZSI6ICJjaGFtb3JybyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJueSIsCiAgICAgICJuYW1lIjogImNoaWNoZXdhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImRhIiwKICAgICAgIm5hbWUiOiAiZGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmEtQUYiLAogICAgICAibmFtZSI6ICJkYXJpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImR2IiwKICAgICAgIm5hbWUiOiAiZGhpdmVoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkaW4iLAogICAgICAibmFtZSI6ICJkaW5rYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkb2kiLAogICAgICAibmFtZSI6ICJkb2dyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkb3YiLAogICAgICAibmFtZSI6ICJkb21iZSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkeXUiLAogICAgICAibmFtZSI6ICJEeXVsYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJkeiIsCiAgICAgICJuYW1lIjogImR6b25na2hhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVuIiwKICAgICAgIm5hbWUiOiAiZW5nZWxzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlbyIsCiAgICAgICJuYW1lIjogImVzcGVyYW50byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJldCIsCiAgICAgICJuYW1lIjogImVzdGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJlZSIsCiAgICAgICJuYW1lIjogImV3ZSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmYSIsCiAgICAgICJuYW1lIjogImZhcnNpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZqIiwKICAgICAgIm5hbWUiOiAiZmlqaWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZmkiLAogICAgICAibmFtZSI6ICJmaW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJmb24iLAogICAgICAibmFtZSI6ICJmb24iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnIiLAogICAgICAibmFtZSI6ICJmcmFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnItQ0EiLAogICAgICAibmFtZSI6ICJGcmFuc2sgKENhbmFkYSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZnkiLAogICAgICAibmFtZSI6ICJmcmlzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZ1ciIsCiAgICAgICJuYW1lIjogImZyaXVsaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImZmIiwKICAgICAgIm5hbWUiOiAiZnVsZnVsZGUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZm8iLAogICAgICAibmFtZSI6ICJmw6Zyw7h5c2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ2wiLAogICAgICAibmFtZSI6ICJnYWxpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrYSIsCiAgICAgICJuYW1lIjogImdlb3JnaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVsIiwKICAgICAgIm5hbWUiOiAiZ3Jlc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ24iLAogICAgICAibmFtZSI6ICJndWFyYW7DrSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJndSIsCiAgICAgICJuYW1lIjogImd1amFyYXRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdhYSIsCiAgICAgICJuYW1lIjogImdhYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjbmgiLAogICAgICAibmFtZSI6ICJoYWtoYSBjaGluIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhhIiwKICAgICAgIm5hbWUiOiAiaGF1c2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaGF3IiwKICAgICAgIm5hbWUiOiAiaGF3YWlpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaXciLAogICAgICAibmFtZSI6ICJoZWJyYWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJoaWwiLAogICAgICAibmFtZSI6ICJoaWxpZ2F5bm9uIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImhpIiwKICAgICAgIm5hbWUiOiAiaGluZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaG1uIiwKICAgICAgIm5hbWUiOiAiaG1vbmciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiaHJ4IiwKICAgICAgIm5hbWUiOiAiaHVuc3JpayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJiZSIsCiAgICAgICJuYW1lIjogImh2aXRlcnVzc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpYmEiLAogICAgICAibmFtZSI6ICJpYmFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImlnIiwKICAgICAgIm5hbWUiOiAiaWdibyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpbG8iLAogICAgICAibmFtZSI6ICJpbG9rYW5vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImlkIiwKICAgICAgIm5hbWUiOiAiaW5kb25lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdS1MYXRuIiwKICAgICAgIm5hbWUiOiAiSW51a3RpdHV0IChsYXRpbnNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpdSIsCiAgICAgICJuYW1lIjogIkludWt0aXR1dCAoc3RhdmVsc2UpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdhIiwKICAgICAgIm5hbWUiOiAiaXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJpcyIsCiAgICAgICJuYW1lIjogImlzbGFuZHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIml0IiwKICAgICAgIm5hbWUiOiAiaXRhbGllbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhaCIsCiAgICAgICJuYW1lIjogImpha3V0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImphbSIsCiAgICAgICJuYW1lIjogImphbWFpY2Fuc2sgcGF0b2lzIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImphIiwKICAgICAgIm5hbWUiOiAiamFwYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJqdyIsCiAgICAgICJuYW1lIjogImphdmFuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieWkiLAogICAgICAibmFtZSI6ICJqaWRkaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImthYyIsCiAgICAgICJuYW1lIjogImppbmdwbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5byIsCiAgICAgICJuYW1lIjogImpvcnViYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrbCIsCiAgICAgICJuYW1lIjogImthbGFhbGxpc3V0IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtuIiwKICAgICAgIm5hbWUiOiAia2FubmFkYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ5dWUiLAogICAgICAibmFtZSI6ICJrYW50b25lc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrciIsCiAgICAgICJuYW1lIjogImthbnVyaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYW0iLAogICAgICAibmFtZSI6ICJrYXBhbXBhbmdhbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrayIsCiAgICAgICJuYW1lIjogImthc2FraGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjYSIsCiAgICAgICJuYW1lIjogImthdGFsYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJrZWsiLAogICAgICAibmFtZSI6ICJrZWtjaGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia2hhIiwKICAgICAgIm5hbWUiOiAia2hhc2kiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia20iLAogICAgICAibmFtZSI6ICJraG1lciIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZ2ciLAogICAgICAibmFtZSI6ICJraWdhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtnIiwKICAgICAgIm5hbWUiOiAia2lrb25nbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6aC1DTiIsCiAgICAgICJuYW1lIjogImtpbmVzaXNrIChmb3JlbmtsZXQpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInpoLVRXIiwKICAgICAgIm5hbWUiOiAia2luZXNpc2sgKHRyYWRpc2pvbmVsbCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicnciLAogICAgICAibmFtZSI6ICJraW55YXJ3YW5kYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJreSIsCiAgICAgICJuYW1lIjogImtpcmdpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJybiIsCiAgICAgICJuYW1lIjogImtpcnVuZGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3R1IiwKICAgICAgIm5hbWUiOiAia2l0dWJhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRycCIsCiAgICAgICJuYW1lIjogImtva2Jvcm9rIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt2IiwKICAgICAgIm5hbWUiOiAia29taSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJnb20iLAogICAgICAibmFtZSI6ICJrb25rYW5pIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImtvIiwKICAgICAgIm5hbWUiOiAia29yZWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY28iLAogICAgICAibmFtZSI6ICJrb3JzaWthbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh0IiwKICAgICAgIm5hbWUiOiAia3Jlb2wgKEhhaXRpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcnMiLAogICAgICAibmFtZSI6ICJrcmVvbCAoU2V5Y2hlbGxlbmUpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNyaCIsCiAgICAgICJuYW1lIjogIktyaW10YXRhcmlzayAoa3lyaWxsaXNrKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcmgtTGF0biIsCiAgICAgICJuYW1lIjogIktyaW10YXRhcmlzayAobGF0aW5zaykiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAia3JpIiwKICAgICAgIm5hbWUiOiAia3JpbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJociIsCiAgICAgICJuYW1lIjogImtyb2F0aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImt1IiwKICAgICAgIm5hbWUiOiAia3VyZGlzayAoa3VybWFuamkpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNrYiIsCiAgICAgICJuYW1lIjogImt1cmRpc2sgKHNvcmFuaSkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibG8iLAogICAgICAibmFtZSI6ICJsYW90aXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx0ZyIsCiAgICAgICJuYW1lIjogImxhdGdhbGlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsYSIsCiAgICAgICJuYW1lIjogImxhdGluIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImx2IiwKICAgICAgIm5hbWUiOiAibGF0dmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsaWoiLAogICAgICAibmFtZSI6ICJsaWd1cmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsaSIsCiAgICAgICJuYW1lIjogImxpbWJ1cmdzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbiIsCiAgICAgICJuYW1lIjogImxpbmdhbGEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHQiLAogICAgICAibmFtZSI6ICJsaXRhdWlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsbW8iLAogICAgICAibmFtZSI6ICJsb21iYXJkaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImxnIiwKICAgICAgIm5hbWUiOiAibHVnYW5kYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdW8iLAogICAgICAibmFtZSI6ICJsdW8iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibGIiLAogICAgICAibmFtZSI6ICJsdXhlbWJvdXJnc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibWciLAogICAgICAibmFtZSI6ICJtYWRhZ2Fzc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtYWQiLAogICAgICAibmFtZSI6ICJtYWR1cmVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1haSIsCiAgICAgICJuYW1lIjogIm1haXRoaWxpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1hayIsCiAgICAgICJuYW1lIjogIk1ha2Fzc2FyIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1rIiwKICAgICAgIm5hbWUiOiAibWFrZWRvbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1sIiwKICAgICAgIm5hbWUiOiAibWFsYXlhbGFtIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1zIiwKICAgICAgIm5hbWUiOiAibWFsYXlpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXMtQXJhYiIsCiAgICAgICJuYW1lIjogIm1hbGF5aXNrIChqYXdpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtdCIsCiAgICAgICJuYW1lIjogIm1hbHRlc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtYW0iLAogICAgICAibmFtZSI6ICJtYW0iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiZ3YiLAogICAgICAibmFtZSI6ICJtYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaSIsCiAgICAgICJuYW1lIjogIm1hb3JpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm1yIiwKICAgICAgIm5hbWUiOiAibWFyYXRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaCIsCiAgICAgICJuYW1lIjogIm1hcnNoYWxsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibXdyIiwKICAgICAgIm5hbWUiOiAibWFyd2FkaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtZmUiLAogICAgICAibmFtZSI6ICJtYXVyaXRpc2sga3Jlb2wiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibW5pLU10ZWkiLAogICAgICAibmFtZSI6ICJtZWl0ZWlsb24gKG1hbmlwdXJpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtaW4iLAogICAgICAibmFtZSI6ICJtaW5hbmciCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibHVzIiwKICAgICAgIm5hbWUiOiAibWl6byIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJtbiIsCiAgICAgICJuYW1lIjogIm1vbmdvbHNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5oZSIsCiAgICAgICJuYW1lIjogIm5haHVhdGwgKMO4c3RsaWdlIEh1YXN0ZWNhKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZGMtWlciLAogICAgICAibmFtZSI6ICJuZGF1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm5yIiwKICAgICAgIm5hbWUiOiAibmRlYmVsZSAoc8O4cikiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibmwiLAogICAgICAibmFtZSI6ICJuZWRlcmxhbmRzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZXciLAogICAgICAibmFtZSI6ICJOZXBhbCBiaGFzYSAobmV3YXJpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJuZSIsCiAgICAgICJuYW1lIjogIm5lcGFsc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYm0tTmtvbyIsCiAgICAgICJuYW1lIjogIk5LbyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJubyIsCiAgICAgICJuYW1lIjogIm5vcnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm51cyIsCiAgICAgICJuYW1lIjogIm51ZXIiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib2MiLAogICAgICAibmFtZSI6ICJva3NpdGFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAib3IiLAogICAgICAibmFtZSI6ICJvcml5YSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJvbSIsCiAgICAgICJuYW1lIjogIm9yb21vIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogIm9zIiwKICAgICAgIm5hbWUiOiAib3NzZXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicGFnIiwKICAgICAgIm5hbWUiOiAicGFuZ2FzaW5hbiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYSIsCiAgICAgICJuYW1lIjogIlBhbmphYmkgKGd1cm11a2hpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYS1BcmFiIiwKICAgICAgIm5hbWUiOiAicGFuamFiaSAoc2hhaG11a2hpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwYXAiLAogICAgICAibmFtZSI6ICJwYXBpYW1lbnRvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBzIiwKICAgICAgIm5hbWUiOiAicGFzaHRvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInBsIiwKICAgICAgIm5hbWUiOiAicG9sc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicHQiLAogICAgICAibmFtZSI6ICJwb3J0dWdpc2lzayAoQnJhc2lsKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJwdC1QVCIsCiAgICAgICJuYW1lIjogInBvcnR1Z2lzaXNrIChQb3J0dWdhbCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicXUiLAogICAgICAibmFtZSI6ICJxdWVjaHVhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInJvbSIsCiAgICAgICJuYW1lIjogInJvbWFuaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJybyIsCiAgICAgICJuYW1lIjogInJ1bWVuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAicnUiLAogICAgICAibmFtZSI6ICJydXNzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNlIiwKICAgICAgIm5hbWUiOiAic2FtaXNrIChub3JkKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbSIsCiAgICAgICJuYW1lIjogInNhbW9hbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNnIiwKICAgICAgIm5hbWUiOiAic2FuZ28iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2EiLAogICAgICAibmFtZSI6ICJzYW5za3JpdCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzYXQtTGF0biIsCiAgICAgICJuYW1lIjogIlNhbnRhbGkgKGxhdGluc2spIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNhdCIsCiAgICAgICJuYW1lIjogIlNhbnRhbGkgKG9sIGNoaWtpKSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzemwiLAogICAgICAibmFtZSI6ICJzY2hsZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAibnNvIiwKICAgICAgIm5hbWUiOiAic2VwZWRpIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNyIiwKICAgICAgIm5hbWUiOiAic2VyYmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzaG4iLAogICAgICAibmFtZSI6ICJzaGFuIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInNuIiwKICAgICAgIm5hbWUiOiAic2hvbmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2NuIiwKICAgICAgIm5hbWUiOiAic2ljaWxpYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzZCIsCiAgICAgICJuYW1lIjogInNpbmRoaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzaSIsCiAgICAgICJuYW1lIjogInNpbmdhbGVzaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImdkIiwKICAgICAgIm5hbWUiOiAic2tvdHNrIGfDpmxpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2siLAogICAgICAibmFtZSI6ICJzbG92YWtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic2wiLAogICAgICAibmFtZSI6ICJzbG92ZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzbyIsCiAgICAgICJuYW1lIjogInNvbWFsaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdCIsCiAgICAgICJuYW1lIjogInNvdGhvIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImVzIiwKICAgICAgIm5hbWUiOiAic3BhbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInN1IiwKICAgICAgIm5hbWUiOiAic3VuZGFuZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3VzIiwKICAgICAgIm5hbWUiOiAic3VzdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdiIsCiAgICAgICJuYW1lIjogInN2ZW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJzdyIsCiAgICAgICJuYW1lIjogInN3YWhpbGkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAic3MiLAogICAgICAibmFtZSI6ICJzd2F0aSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0ZyIsCiAgICAgICJuYW1lIjogInRhZHNqaWtpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGwiLAogICAgICAibmFtZSI6ICJ0YWdhbG9nIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR5IiwKICAgICAgIm5hbWUiOiAidGFoaXRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVyLUxhdG4iLAogICAgICAibmFtZSI6ICJ0YW1hemlnaHQiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYmVyIiwKICAgICAgIm5hbWUiOiAidGFtYXppZ2h0ICh0aWZpbmFnaCkiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGEiLAogICAgICAibmFtZSI6ICJ0YW1pbCIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0dCIsCiAgICAgICJuYW1lIjogInRhdGFyaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRlIiwKICAgICAgIm5hbWUiOiAidGVsdWd1IgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRldCIsCiAgICAgICJuYW1lIjogInRldHVtIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRoIiwKICAgICAgIm5hbWUiOiAidGhhaSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJibyIsCiAgICAgICJuYW1lIjogInRpYmV0YW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0aSIsCiAgICAgICJuYW1lIjogInRpZ3JpbmphIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRpdiIsCiAgICAgICJuYW1lIjogInRpdiIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0cGkiLAogICAgICAibmFtZSI6ICJ0b2sgcGlzaW4iCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidG8iLAogICAgICAibmFtZSI6ICJ0b25nYW5zayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJsdWEiLAogICAgICAibmFtZSI6ICJ0c2hpbHViYSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjcyIsCiAgICAgICJuYW1lIjogInRzamVra2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJjZSIsCiAgICAgICJuYW1lIjogInRzamV0c2plbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImNoayIsCiAgICAgICJuYW1lIjogInRzanVrdHNqaXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImN2IiwKICAgICAgIm5hbWUiOiAidHNqdXZhc2ppc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHMiLAogICAgICAibmFtZSI6ICJ0c29uZ2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidG4iLAogICAgICAibmFtZSI6ICJ0c3dhbmEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidGN5IiwKICAgICAgIm5hbWUiOiAidHVsdSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ0dW0iLAogICAgICAibmFtZSI6ICJ0dW1idWthIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInRrIiwKICAgICAgIm5hbWUiOiAidHVya21lbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInR5diIsCiAgICAgICJuYW1lIjogInR1dmluc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiYWsiLAogICAgICAibmFtZSI6ICJ0d2kiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidHIiLAogICAgICAibmFtZSI6ICJ0eXJraXNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImRlIiwKICAgICAgIm5hbWUiOiAidHlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ZG0iLAogICAgICAibmFtZSI6ICJ1ZG11cnRpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidWciLAogICAgICAibmFtZSI6ICJ1aWd1cmlzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ayIsCiAgICAgICJuYW1lIjogInVrcmFpbnNrIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogImh1IiwKICAgICAgIm5hbWUiOiAidW5nYXJzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ1ciIsCiAgICAgICJuYW1lIjogInVyZHUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidXoiLAogICAgICAibmFtZSI6ICJ1c2Jla2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ2ZSIsCiAgICAgICJuYW1lIjogInZlbmRhIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInZlYyIsCiAgICAgICJuYW1lIjogInZlbmV0aWFuc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAidmkiLAogICAgICAibmFtZSI6ICJ2aWV0bmFtZXNpc2siCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY3kiLAogICAgICAibmFtZSI6ICJ3YWxpc2lzayIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ3YXIiLAogICAgICAibmFtZSI6ICJ3YXJheS13YXJheSIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ3byIsCiAgICAgICJuYW1lIjogIndvbG9mIgogICAgfSwKICAgIHsKICAgICAgImxhbmd1YWdlIjogInhoIiwKICAgICAgIm5hbWUiOiAieGhvc2EiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAieXVhIiwKICAgICAgIm5hbWUiOiAieXVrYXRhbnNrIG1heWEiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiemFwIiwKICAgICAgIm5hbWUiOiAiemFwb3RlYyIKICAgIH0sCiAgICB7CiAgICAgICJsYW5ndWFnZSI6ICJ6dSIsCiAgICAgICJuYW1lIjogInp1bHUiCiAgICB9LAogICAgewogICAgICAibGFuZ3VhZ2UiOiAiY2htIiwKICAgICAgIm5hbWUiOiAiw7hzdG1hcmlzayIKICAgIH0KICBdCn0KKTs="}},"time_used":60,"timings":{"blocked":0,"dns":4,"connect":9,"send":0,"wait":26,"receive":0,"ssl":21},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"walmartfundholdings.com/images/ser-ico3.png","fqdn":"walmartfundholdings.com","domain":"walmartfundholdings.com","tld":"com"},"ip":{"addr":"45.87.42.74","port":443,"asn":62068,"as":"SpectraIP B.V.","country":"The Netherlands","country_code":"NL"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://walmartfundholdings.com/","date":"2026-07-27T13:34:27.938Z","timestamp":1785159267938,"http_version":"HTTP/3","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_128_GCM_SHA256","key_group_name":"x25519","signature_name":"ECDSA-P384-SHA384","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.walmartfundholdings.com","organization":""},"issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validity":{"start":"Sun, 12 Jul 2026 09:48:51 GMT","end":"Sat, 10 Oct 2026 09:48:50 GMT"},"fingerprint":{"sha1":"35:B5:39:E2:6F:DF:A9:5D:E9:71:3E:2B:40:1B:D3:C5:3D:05:C5:0B","sha256":"FF:0C:6D:47:BF:AB:88:AC:B4:58:51:1E:AE:67:3E:6A:41:6C:A3:F5:58:7D:89:E3:E4:57:98:A5:AD:F3:0F:B7"}}},"request":{"raw":"GET /images/ser-ico3.png HTTP/1.1\r\nHost: walmartfundholdings.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://walmartfundholdings.com/\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/3 200 \r\ncache-control: public, max-age=604800\r\nexpires: Mon, 03 Aug 2026 13:34:27 GMT\r\ncontent-type: image/png\r\nlast-modified: Mon, 08 Apr 2024 03:44:05 GMT\r\netag: \"95f-66136805-db76861ad89eb9bb;;;\"\r\naccept-ranges: bytes\r\ncontent-length: 2399\r\ndate: Mon, 27 Jul 2026 13:34:27 GMT\r\nserver: LiteSpeed\r\nvary: User-Agent\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"LiteSpeed","description":"LiteSpeed is a high-scalability web server.","website":"https://litespeedtech.com","common_platform_enumeration":"cpe:2.3:a:litespeedtech:litespeed_web_server:*:*:*:*:*:*:*:*","icon":"LiteSpeed.svg","categories":["Web servers"]}],"data":{"size":2399,"size_decoded":2724,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGBA, non-interlaced","md5":"b416369d90777f25e6c54017f1aeef55","sha1":"2f4d379d3caf6378d7b95f37e044360c9058be79","sha256":"606c33cbb373197256a54a60233f00c48f4f46618fdd24a2b1bee87c677c1df6","sha512":"0f1c4f0f73f92f956cdf3dbc63cdccfcc95d633c74be64005b473581c31a44ac38053efaeaa3cff5099bef52e8e496f69ef2646eee7d0067d3d358ba3ff9d173","ssdeep":"","tlshash":"f4410a99ea80bea74289ee5160d6411305970cc1aa97f4e835cecc5a1a3b1777c2e3e7","first_seen":"2026-07-27T07:08:39.287603Z","last_seen":"2026-07-27T13:35:41.676908Z","times_seen":3,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEkAAABJCAYAAABxcwvcAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MUU0N0Y4NjcxQjc4MTFFQ0E5N0FCNDFCRjQ4NUY5QUEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MUU0N0Y4NjgxQjc4MTFFQ0E5N0FCNDFCRjQ4NUY5QUEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxRTQ3Rjg2NTFCNzgxMUVDQTk3QUI0MUJGNDg1RjlBQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxRTQ3Rjg2NjFCNzgxMUVDQTk3QUI0MUJGNDg1RjlBQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PtB8/cAAAAXTSURBVHja7JprbBRV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"}},"time_used":38,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":38,"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":"walmartfundholdings.com","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}}]}
